--- linux-3.13.0.orig/Documentation/devices.txt +++ linux-3.13.0/Documentation/devices.txt @@ -353,6 +353,7 @@ 133 = /dev/exttrp External device trap 134 = /dev/apm_bios Advanced Power Management BIOS 135 = /dev/rtc Real Time Clock + 137 = /dev/vhci Bluetooth virtual HCI driver 139 = /dev/openprom SPARC OpenBoot PROM 140 = /dev/relay8 Berkshire Products Octal relay card 141 = /dev/relay16 Berkshire Products ISO-16 relay card --- linux-3.13.0.orig/Documentation/devicetree/bindings/ata/ahci-platform.txt +++ linux-3.13.0/Documentation/devicetree/bindings/ata/ahci-platform.txt @@ -10,6 +10,8 @@ Optional properties: - dma-coherent : Present if dma operations are coherent +- clocks : a list of phandle + clock specifier pairs +- target-supply : regulator for SATA target power Example: sata@ffe08000 { --- linux-3.13.0.orig/Documentation/devicetree/bindings/ata/apm-xgene.txt +++ linux-3.13.0/Documentation/devicetree/bindings/ata/apm-xgene.txt @@ -0,0 +1,76 @@ +* APM X-Gene 6.0 Gb/s SATA host controller nodes + +SATA host controller nodes are defined to describe on-chip Serial ATA +controllers. Each SATA controller (pair of ports) have its own node. + +Required properties: +- compatible : Shall contain: + * "apm,xgene-ahci" +- reg : First memory resource shall be the AHCI memory + resource. + Second memory resource shall be the host controller + core memory resource. + Third memory resource shall be the host controller + diagnostic memory resource. + 4th memory resource shall be the host controller + AXI memory resource. + 5th optional memory resource shall be the host + controller MUX memory resource if required. +- interrupts : Interrupt-specifier for SATA host controller IRQ. +- clocks : Reference to the clock entry. +- phys : A list of phandles + phy-specifiers, one for each + entry in phy-names. +- phy-names : Should contain: + * "sata-phy" for the SATA 6.0Gbps PHY + +Optional properties: +- status : Shall be "ok" if enabled or "disabled" if disabled. + Default is "ok". + +Example: + sataclk: sataclk { + compatible = "fixed-clock"; + #clock-cells = <1>; + clock-frequency = <100000000>; + clock-output-names = "sataclk"; + }; + + phy2: phy@1f22a000 { + compatible = "apm,xgene-phy"; + reg = <0x0 0x1f22a000 0x0 0x100>; + #phy-cells = <1>; + }; + + phy3: phy@1f23a000 { + compatible = "apm,xgene-phy"; + reg = <0x0 0x1f23a000 0x0 0x100>; + #phy-cells = <1>; + }; + + sata2: sata@1a400000 { + compatible = "apm,xgene-ahci"; + reg = <0x0 0x1a400000 0x0 0x1000>, + <0x0 0x1f220000 0x0 0x1000>, + <0x0 0x1f22d000 0x0 0x1000>, + <0x0 0x1f22e000 0x0 0x1000>, + <0x0 0x1f227000 0x0 0x1000>; + interrupts = <0x0 0x87 0x4>; + status = "ok"; + clocks = <&sataclk 0>; + phys = <&phy2 0>; + phy-names = "sata-phy"; + }; + + sata3: sata@1a800000 { + compatible = "apm,xgene-ahci-pcie"; + reg = <0x0 0x1a800000 0x0 0x1000>, + <0x0 0x1f230000 0x0 0x1000>, + <0x0 0x1f23d000 0x0 0x1000>, + <0x0 0x1f23e000 0x0 0x1000>, + <0x0 0x1f237000 0x0 0x1000>; + interrupts = <0x0 0x88 0x4>; + status = "ok"; + clocks = <&sataclk 0>; + phys = <&phy3 0>; + phy-names = "sata-phy"; + }; --- linux-3.13.0.orig/Documentation/devicetree/bindings/ata/marvell.txt +++ linux-3.13.0/Documentation/devicetree/bindings/ata/marvell.txt @@ -1,7 +1,7 @@ * Marvell Orion SATA Required Properties: -- compatibility : "marvell,orion-sata" +- compatibility : "marvell,orion-sata" or "marvell,armada-370-sata" - reg : Address range of controller - interrupts : Interrupt controller is using - nr-ports : Number of SATA ports in use. --- linux-3.13.0.orig/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt +++ linux-3.13.0/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt @@ -5,7 +5,11 @@ - reg : Offset and length of the register set for the device - compatible : Should be "marvell,mv64xxx-i2c" or "allwinner,sun4i-i2c" - or "marvell,mv78230-i2c" + or "marvell,mv78230-i2c" or "marvell,mv78230-a0-i2c" + Note: Only use "marvell,mv78230-a0-i2c" for a very rare, + initial version of the SoC which had broken offload + support. Linux auto-detects this and sets it + appropriately. - interrupts : The interrupt number Optional properties : --- linux-3.13.0.orig/Documentation/devicetree/bindings/misc/apm-xgene-qmtm.txt +++ linux-3.13.0/Documentation/devicetree/bindings/misc/apm-xgene-qmtm.txt @@ -0,0 +1,51 @@ +* APM X-Gene SoC Queue Manager/Traffic Manager nodes + +QMTM nodes are defined to describe on-chip Queue Managers in APM X-Gene SoC. +APM X-Gene SoC Ethernet, PktDMA (XOR Engine), and Security Engine subsystems +communicate with a central Queue Manager using messages which include +information about the work to be performed and the location of the associated +data buffers. There are multiple instances of QMTM. Each QMTM instance has its +own node. Its corresponding clock nodes are shown below. + +Required properties: +- compatible : Shall be "apm,xgene-qmtm-lite" for QMLite instance +- reg : First memory resource shall be the QMTM CSR memory + resource. + Second memory resource shall be the QMTM IO-Fabric + memory resource. +- slave-name : Shall be "CPU_QMTM3" which is receiver for ingress + work messages for the QMTM. Here receiver is CPU. +- interrupts : First interrupt resource shall be the QMTM Error + interrupt. + Remaining interrupt resources shall be the Ingress + work message interrupt mapping for receiver, + receiving work messages for the QMTM. +- clocks : Reference to the clock entry. + +Optional properties: +- status : Shall be "ok" if enabled or "disabled" if disabled. + Default is "ok". + +Example: + qmlclk: qmlclk { + compatible = "apm,xgene-device-clock"; + #clock-cells = <1>; + clock-names = "socplldiv2"; + status = "ok"; + csr-offset = <0x0>; + csr-mask = <0x3>; + enable-offset = <0x8>; + enable-mask = <0x3>; + }; + + qmlite: qmtm@17030000 { + compatible = "apm,xgene-qmtm-lite"; + reg = <0x0 0x17030000 0x0 0x10000>, + <0x0 0x10000000 0x0 0x400000>; + slave-name = "CPU_QMTM3"; + interrupts = <0x0 0x40 0x4>, + <0x0 0x3c 0x4>; + status = "ok"; + #clock-cells = <1>; + clocks = <&qmlclk 0>; + }; --- linux-3.13.0.orig/Documentation/devicetree/bindings/net/apm-xgene-enet.txt +++ linux-3.13.0/Documentation/devicetree/bindings/net/apm-xgene-enet.txt @@ -0,0 +1,67 @@ +APM X-Gene SoC Ethernet nodes + +Ethernet nodes are defined to describe on-chip ethernet interfaces in +APM X-Gene SoC. Ethernet subsystem communicates with a central Queue Manager +(QMTM) using messages for transmit, receive and allocating data buffers. +There are multiple ethernet interfaces in APM X-Gene SoC. Each ethernet +interface has its own node. Its corresponding clock nodes are shown below. + +Required properties: +- compatible : Shall be "apm,xgene-enet" +- reg : First memory resource shall be the Ethernet CSR + memory resource for indirect MAC access. + Second memory resource shall be the Ethernet CSR + memory resource. + Third memory resource shall be the Ethernet CSR + memory resource for indirect MII access. +- slave-name : Shall be QMTM slave name. +- interrupts : First interrupt resource shall be the Ethernet global + Error interrupt. + : Second interrupt resource shall be the Ethernet MAC + Error interrupt. + : Third interrupt resource shall be the Ethernet QM + interface interrupt. +- clocks : Reference to the clock entry. +- local-mac-address : Shall be ethernet mac address. +- max-frame-size : Shall be maximum ethernet frame size. +- devid : Shall be ethernet interface number. +- phyid : Shall be ethernet MII phy address. +- phy-mode : Shall be ethernet MII mode. + +Optional properties: +- status : Shall be "ok" if enabled or "disabled" if disabled. + Default is "ok". + +Example: + eth8clk: eth8clk { + compatible = "apm,xgene-device-clock"; + clock-names = "eth8clk"; + status = "ok"; + }; + + menet: ethernet@17020000 { + compatible = "apm,xgene-enet"; + status = "disabled"; + reg = <0x0 0x17020000 0x0 0x30>, + <0x0 0x17020000 0x0 0x10000>, + <0x0 0x17020000 0x0 0x20>; + slave-name = "RGMII"; + interrupts = <0x0 0x38 0x4>, + <0x0 0x39 0x4>, + <0x0 0x3a 0x4>; + clocks = <ð8clk 0>; + local-mac-address = <0x0 0x11 0x3a 0x8a 0x5a 0x78>; + max-frame-size = <0x233a>; + devid = <8>; + phyid = <3>; + phy-mode = "rgmii"; + }; + +/* Board-specific peripheral configurations */ +aliases { + ethernet0 = &menet; +}; + +&menet { + status = "ok"; +}; --- linux-3.13.0.orig/Documentation/devicetree/bindings/net/micrel-ks8851.txt +++ linux-3.13.0/Documentation/devicetree/bindings/net/micrel-ks8851.txt @@ -7,3 +7,4 @@ Optional properties: - local-mac-address : Ethernet mac address to use +- vdd-supply: supply for Ethernet mac --- linux-3.13.0.orig/Documentation/devicetree/bindings/pci/xgene-pci.txt +++ linux-3.13.0/Documentation/devicetree/bindings/pci/xgene-pci.txt @@ -0,0 +1,52 @@ +* AppliedMicro X-Gene PCIe interface + +Required properties: +- device_type: set to "pci" +- compatible: should contain "xgene,pcie" to identify the core. +- reg: A list of physical base address and length for each set of controller + registers. Must contain an entry for each entry in the reg-names + property. +- reg-names: Must include the following entries: + "csr": controller configuration registers. + "cfg": pcie configuration space registers. +- #address-cells: set to <3> +- #size-cells: set to <2> +- ranges: ranges for the outbound memory, I/O regions. +- dma-ranges: ranges for the inbound memory regions. +- #interrupt-cells: set to <1> +- interrupt-map-mask and interrupt-map: standard PCI properties + to define the mapping of the PCIe interface to interrupt + numbers. +- clocks: from common clock binding: handle to pci clock. + +Optional properties: +- status: Either "ok" or "disabled". + +Example: + +SoC specific DT Entry: + pcie0: pcie@1f2b0000 { + status = "disabled"; + device_type = "pci"; + compatible = "apm,xgene-pcie"; + #interrupt-cells = <1>; + #size-cells = <2>; + #address-cells = <3>; + reg = < 0x00 0x1f2b0000 0x0 0x00010000 /* Controller registers */ + 0xe0 0xd0000000 0x0 0x00200000>; /* PCI config space */ + reg-names = "csr", "cfg"; + ranges = <0x01000000 0x00 0x00000000 0xe0 0x00000000 0x00 0x00010000 /* io */ + 0x02000000 0x00 0x10000000 0xe0 0x10000000 0x00 0x80000000>; /* mem */ + dma-ranges = <0x42000000 0x40 0x00000000 0x40 0x00000000 0x40 0x00000000>; + interrupt-map-mask = <0x0 0x0 0x0 0x7>; + interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xc2 0x1 + 0x0 0x0 0x0 0x2 &gic 0x0 0xc3 0x1 + 0x0 0x0 0x0 0x3 &gic 0x0 0xc4 0x1 + 0x0 0x0 0x0 0x4 &gic 0x0 0xc5 0x1>; + clocks = <&pcie0clk 0>; + }; + +Board specific DT Entry: + &pcie0 { + status = "ok"; + }; --- linux-3.13.0.orig/Documentation/devicetree/bindings/phy/apm-xgene-phy.txt +++ linux-3.13.0/Documentation/devicetree/bindings/phy/apm-xgene-phy.txt @@ -0,0 +1,79 @@ +* APM X-Gene 15Gbps Multi-purpose PHY nodes + +PHY nodes are defined to describe on-chip 15Gbps Multi-purpose PHY. Each +PHY (pair of lanes) has its own node. + +Required properties: +- compatible : Shall be "apm,xgene-phy". +- reg : PHY memory resource is the SDS PHY access resource. +- #phy-cells : Shall be 1 as it expects one argument for setting + the mode of the PHY. Possible values are 0 (SATA), + 1 (SGMII), 2 (PCIe), 3 (USB), and 4 (XFI). + +Optional properties: +- status : Shall be "ok" if enabled or "disabled" if disabled. + Default is "ok". +- clocks : Reference to the clock entry. +- apm,tx-eye-tuning : Manual control to fine tune the capture of the serial + bit lines from the automatic calibrated position. + Two set of 3-tuple setting for each (up to 3) + supported link speed on the host. Range from 0 to + 127 in unit of one bit period. Default is 10. +- apm,tx-eye-direction : Eye tuning manual control direction. 0 means sample + data earlier than the nominal sampling point. 1 means + sample data later than the nominal sampling point. + Two set of 3-tuple setting for each (up to 3) + supported link speed on the host. Default is 0. +- apm,tx-boost-gain : Frequency boost AC (LSB 3-bit) and DC (2-bit) + gain control. Two set of 3-tuple setting for each + (up to 3) supported link speed on the host. Range is + between 0 to 31 in unit of dB. Default is 3. +- apm,tx-amplitude : Amplitude control. Two set of 3-tuple setting for + each (up to 3) supported link speed on the host. + Range is between 0 to 199500 in unit of uV. + Default is 199500 uV. +- apm,tx-pre-cursor1 : 1st pre-cursor emphasis taps control. Two set of + 3-tuple setting for each (up to 3) supported link + speed on the host. Range is 0 to 273000 in unit of + uV. Default is 0. +- apm,tx-pre-cursor2 : 2st pre-cursor emphasis taps control. Two set of + 3-tuple setting for each (up to 3) supported link + speed on the host. Range is 0 to 127400 in unit uV. + Default is 0x0. +- apm,tx-post-cursor : Post-cursor emphasis taps control. Two set of + 3-tuple setting for Gen1, Gen2, and Gen3. Range is + between 0 to 0x1f in unit of 18.2mV. Default is 0xf. +- apm,tx-speed : Tx operating speed. One set of 3-tuple for each + supported link speed on the host. + 0 = 1-2Gbps + 1 = 2-4Gbps (1st tuple default) + 2 = 4-8Gbps + 3 = 8-15Gbps (2nd tuple default) + 4 = 2.5-4Gbps + 5 = 4-5Gbps + 6 = 5-6Gbps + 7 = 6-16Gbps (3rd tuple default) + +NOTE: PHY override parameters are board specific setting. + +Example: + phy1: phy@1f21a000 { + compatible = "apm,xgene-phy"; + reg = <0x0 0x1f21a000 0x0 0x100>; + #phy-cells = <1>; + status = "disabled"; + }; + + phy2: phy@1f22a000 { + compatible = "apm,xgene-phy"; + reg = <0x0 0x1f22a000 0x0 0x100>; + #phy-cells = <1>; + status = "ok"; + }; + + phy3: phy@1f23a000 { + compatible = "apm,xgene-phy"; + reg = <0x0 0x1f23a000 0x0 0x100>; + #phy-cells = <1>; + status = "ok"; + }; --- linux-3.13.0.orig/Documentation/devicetree/bindings/spi/efm32-spi.txt +++ linux-3.13.0/Documentation/devicetree/bindings/spi/efm32-spi.txt @@ -3,7 +3,7 @@ Required properties: - #address-cells: see spi-bus.txt - #size-cells: see spi-bus.txt -- compatible: should be "efm32,spi" +- compatible: should be "energymicro,efm32-spi" - reg: Offset and length of the register set for the controller - interrupts: pair specifying rx and tx irq - clocks: phandle to the spi clock @@ -15,7 +15,7 @@ spi1: spi@0x4000c400 { /* USART1 */ #address-cells = <1>; #size-cells = <0>; - compatible = "efm32,spi"; + compatible = "energymicro,efm32-spi"; reg = <0x4000c400 0x400>; interrupts = <15 16>; clocks = <&cmu 20>; --- linux-3.13.0.orig/Documentation/filesystems/Locking +++ linux-3.13.0/Documentation/filesystems/Locking @@ -65,6 +65,7 @@ struct file *, unsigned open_flag, umode_t create_mode, int *opened); int (*tmpfile) (struct inode *, struct dentry *, umode_t); + int (*dentry_open)(struct dentry *, struct file *, const struct cred *); locking rules: all may block @@ -93,6 +94,7 @@ update_time: no atomic_open: yes tmpfile: no +dentry_open: no Additionally, ->rmdir(), ->unlink() and ->rename() have ->i_mutex on victim. --- linux-3.13.0.orig/Documentation/filesystems/overlayfs.txt +++ linux-3.13.0/Documentation/filesystems/overlayfs.txt @@ -0,0 +1,199 @@ +Written by: Neil Brown + +Overlay Filesystem +================== + +This document describes a prototype for a new approach to providing +overlay-filesystem functionality in Linux (sometimes referred to as +union-filesystems). An overlay-filesystem tries to present a +filesystem which is the result over overlaying one filesystem on top +of the other. + +The result will inevitably fail to look exactly like a normal +filesystem for various technical reasons. The expectation is that +many use cases will be able to ignore these differences. + +This approach is 'hybrid' because the objects that appear in the +filesystem do not all appear to belong to that filesystem. In many +cases an object accessed in the union will be indistinguishable +from accessing the corresponding object from the original filesystem. +This is most obvious from the 'st_dev' field returned by stat(2). + +While directories will report an st_dev from the overlay-filesystem, +all non-directory objects will report an st_dev from the lower or +upper filesystem that is providing the object. Similarly st_ino will +only be unique when combined with st_dev, and both of these can change +over the lifetime of a non-directory object. Many applications and +tools ignore these values and will not be affected. + +Upper and Lower +--------------- + +An overlay filesystem combines two filesystems - an 'upper' filesystem +and a 'lower' filesystem. When a name exists in both filesystems, the +object in the 'upper' filesystem is visible while the object in the +'lower' filesystem is either hidden or, in the case of directories, +merged with the 'upper' object. + +It would be more correct to refer to an upper and lower 'directory +tree' rather than 'filesystem' as it is quite possible for both +directory trees to be in the same filesystem and there is no +requirement that the root of a filesystem be given for either upper or +lower. + +The lower filesystem can be any filesystem supported by Linux and does +not need to be writable. The lower filesystem can even be another +overlayfs. The upper filesystem will normally be writable and if it +is it must support the creation of trusted.* extended attributes, and +must provide valid d_type in readdir responses, at least for symbolic +links - so NFS is not suitable. + +A read-only overlay of two read-only filesystems may use any +filesystem type. + +Directories +----------- + +Overlaying mainly involves directories. If a given name appears in both +upper and lower filesystems and refers to a non-directory in either, +then the lower object is hidden - the name refers only to the upper +object. + +Where both upper and lower objects are directories, a merged directory +is formed. + +At mount time, the two directories given as mount options are combined +into a merged directory: + + mount -t overlayfs overlayfs -olowerdir=/lower,upperdir=/upper /overlay + +Then whenever a lookup is requested in such a merged directory, the +lookup is performed in each actual directory and the combined result +is cached in the dentry belonging to the overlay filesystem. If both +actual lookups find directories, both are stored and a merged +directory is created, otherwise only one is stored: the upper if it +exists, else the lower. + +Only the lists of names from directories are merged. Other content +such as metadata and extended attributes are reported for the upper +directory only. These attributes of the lower directory are hidden. + +whiteouts and opaque directories +-------------------------------- + +In order to support rm and rmdir without changing the lower +filesystem, an overlay filesystem needs to record in the upper filesystem +that files have been removed. This is done using whiteouts and opaque +directories (non-directories are always opaque). + +The overlay filesystem uses extended attributes with a +"trusted.overlay." prefix to record these details. + +A whiteout is created as a symbolic link with target +"(overlay-whiteout)" and with xattr "trusted.overlay.whiteout" set to "y". +When a whiteout is found in the upper level of a merged directory, any +matching name in the lower level is ignored, and the whiteout itself +is also hidden. + +A directory is made opaque by setting the xattr "trusted.overlay.opaque" +to "y". Where the upper filesystem contains an opaque directory, any +directory in the lower filesystem with the same name is ignored. + +readdir +------- + +When a 'readdir' request is made on a merged directory, the upper and +lower directories are each read and the name lists merged in the +obvious way (upper is read first, then lower - entries that already +exist are not re-added). This merged name list is cached in the +'struct file' and so remains as long as the file is kept open. If the +directory is opened and read by two processes at the same time, they +will each have separate caches. A seekdir to the start of the +directory (offset 0) followed by a readdir will cause the cache to be +discarded and rebuilt. + +This means that changes to the merged directory do not appear while a +directory is being read. This is unlikely to be noticed by many +programs. + +seek offsets are assigned sequentially when the directories are read. +Thus if + - read part of a directory + - remember an offset, and close the directory + - re-open the directory some time later + - seek to the remembered offset + +there may be little correlation between the old and new locations in +the list of filenames, particularly if anything has changed in the +directory. + +Readdir on directories that are not merged is simply handled by the +underlying directory (upper or lower). + + +Non-directories +--------------- + +Objects that are not directories (files, symlinks, device-special +files etc.) are presented either from the upper or lower filesystem as +appropriate. When a file in the lower filesystem is accessed in a way +the requires write-access, such as opening for write access, changing +some metadata etc., the file is first copied from the lower filesystem +to the upper filesystem (copy_up). Note that creating a hard-link +also requires copy_up, though of course creation of a symlink does +not. + +The copy_up may turn out to be unnecessary, for example if the file is +opened for read-write but the data is not modified. + +The copy_up process first makes sure that the containing directory +exists in the upper filesystem - creating it and any parents as +necessary. It then creates the object with the same metadata (owner, +mode, mtime, symlink-target etc.) and then if the object is a file, the +data is copied from the lower to the upper filesystem. Finally any +extended attributes are copied up. + +Once the copy_up is complete, the overlay filesystem simply +provides direct access to the newly created file in the upper +filesystem - future operations on the file are barely noticed by the +overlay filesystem (though an operation on the name of the file such as +rename or unlink will of course be noticed and handled). + + +Non-standard behavior +--------------------- + +The copy_up operation essentially creates a new, identical file and +moves it over to the old name. The new file may be on a different +filesystem, so both st_dev and st_ino of the file may change. + +Any open files referring to this inode will access the old data and +metadata. Similarly any file locks obtained before copy_up will not +apply to the copied up file. + +On a file opened with O_RDONLY fchmod(2), fchown(2), futimesat(2) and +fsetxattr(2) will fail with EROFS. + +If a file with multiple hard links is copied up, then this will +"break" the link. Changes will not be propagated to other names +referring to the same inode. + +Symlinks in /proc/PID/ and /proc/PID/fd which point to a non-directory +object in overlayfs will not contain valid absolute paths, only +relative paths leading up to the filesystem's root. This will be +fixed in the future. + +Some operations are not atomic, for example a crash during copy_up or +rename will leave the filesystem in an inconsistent state. This will +be addressed in the future. + +Changes to underlying filesystems +--------------------------------- + +Offline changes, when the overlay is not mounted, are allowed to either +the upper or the lower trees. + +Changes to the underlying filesystems while part of a mounted overlay +filesystem are not allowed. If the underlying filesystem is changed, +the behavior of the overlay is undefined, though it will not result in +a crash or deadlock. --- linux-3.13.0.orig/Documentation/filesystems/proc.txt +++ linux-3.13.0/Documentation/filesystems/proc.txt @@ -1377,8 +1377,8 @@ For example, if a task is using all allowed memory, its badness score will be 1000. If it is using half of its allowed memory, its score will be 500. -There is an additional factor included in the badness score: root -processes are given 3% extra memory over other tasks. +There is an additional factor included in the badness score: the current memory +and swap usage is discounted by 3% for root processes. The amount of "allowed" memory depends on the context in which the oom killer was called. If it is due to the memory assigned to the allocating task's cpuset --- linux-3.13.0.orig/Documentation/filesystems/vfs.txt +++ linux-3.13.0/Documentation/filesystems/vfs.txt @@ -362,6 +362,7 @@ int (*atomic_open)(struct inode *, struct dentry *, struct file *, unsigned open_flag, umode_t create_mode, int *opened); int (*tmpfile) (struct inode *, struct dentry *, umode_t); + int (*dentry_open)(struct dentry *, struct file *, const struct cred *); }; Again, all methods are called without any locks being held, unless @@ -681,6 +682,12 @@ but instead uses bmap to find out where the blocks in the file are and uses those addresses directly. + dentry_open: this is an alternative to f_op->open(), the difference is that + this method may open a file not necessarily originating from the same + filesystem as the one i_op->open() was called on. It may be + useful for stacking filesystems which want to allow native I/O directly + on underlying files. + invalidatepage: If a page has PagePrivate set, then invalidatepage will be called when part or all of the page is to be removed --- linux-3.13.0.orig/Documentation/i2c/busses/i2c-piix4 +++ linux-3.13.0/Documentation/i2c/busses/i2c-piix4 @@ -13,7 +13,7 @@ * AMD SP5100 (SB700 derivative found on some server mainboards) Datasheet: Publicly available at the AMD website http://support.amd.com/us/Embedded_TechDocs/44413.pdf - * AMD Hudson-2, CZ + * AMD Hudson-2, ML, CZ Datasheet: Not publicly available * Standard Microsystems (SMSC) SLC90E66 (Victory66) southbridge Datasheet: Publicly available at the SMSC website http://www.smsc.com --- linux-3.13.0.orig/Documentation/kernel-parameters.txt +++ linux-3.13.0/Documentation/kernel-parameters.txt @@ -652,6 +652,10 @@ /proc//coredump_filter. See also Documentation/filesystems/proc.txt. + cpufreq_driver= [X86] Allow only the named cpu frequency scaling driver + to register. Example: cpufreq_driver=powernow-k8 + Format: { none | STRING } + cpuidle.off=1 [CPU_IDLE] disable the cpuidle sub-system @@ -890,6 +894,12 @@ edd= [EDD] Format: {"off" | "on" | "skip[mbr]"} + efi= [EFI] + Format: { "old_map" } + old_map [X86-64]: switch to the old ioremap-based EFI + runtime services mapping. 32-bit still uses this one by + default. + efi_no_storage_paranoia [EFI; X86] Using this parameter you can use more than 50% of your efi variable storage. Use this parameter only if @@ -962,6 +972,13 @@ parameter will force ia64_sal_cache_flush to call ia64_pal_cache_flush instead of SAL_CACHE_FLUSH. + forcepae [X86-32] + Forcefully enable Physical Address Extension (PAE). + Many Pentium M systems disable PAE but may have a + functionally usable PAE implementation. + Note: This parameter is unsupported, may cause unknown + problems, and will taint the kernel. + ftrace=[tracer] [FTRACE] will set and start the specified tracer as early as possible in order to facilitate early --- linux-3.13.0.orig/Documentation/misc-devices/apm-xgene-qmtm +++ linux-3.13.0/Documentation/misc-devices/apm-xgene-qmtm @@ -0,0 +1,149 @@ +AppliedMicro X-Gene SOC Queue Manager/Traffic Manager Document + +Copyright (c) 2013 Applied Micro Circuits Corporation. +Author: Ravi Patel + +This program is free software; you can redistribute it and/or modify it +under the terms of the GNU General Public License version 2 as published by +the Free Software Foundation. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + + +Overview: +QMTM is a device which interacts with CPU, Ethernet, PktDMA and Security +subsystems through AXI BUS. Its centralized resource manager/driver exports +APIs for CPU, Ethernet, PktDMA and Security subsystems to +1. Initialize & allocate queue & pbn. +2. Read queue state so that subsystems driver knows how much more work it can + offload to its subsystem. +3. Apply QoS for subsystems on their queues. + +Layout: +The layout represents run-time flow of messages between Ethernet subsystem, CPU +and QMTM in APM X-Gene SOC. PktDMA and Security subsystems interfaces with QMTM +in the same way as Ethernet. + + + CPU + o-------------------------o + | | + +----|[2] {5}|----+ + | | [1] {4} | | +Register | o------+-----------+------o | Register +Write | CPU WR | | CPU RD | Write +to start v MSG v ^ MSG v to notify +packet | | DDR | | packet +transmit | o--------+-----o-----+--------o | received + | | Q0 M . M M | M M . M Q1 | | + | | for S . S S | S S . S for | | + | | ETH G . G G | G G . G ETH | | + | | TX n . 2 1 | 1 2 . n RX | | + | o----------+---o---+----------o | + | | | | + v v ^ v + | | | | +o--------|-------------|-------|-------------|--------o +| | | | | | Coherent +| v v ^ v | I/O +| | | | | | BUS +o--------|-------------|-------|-------------|--------o + | [3] | | {3} | + v QMTM RD v ^ QMTM WR v + | MSG | | MSG | + o----+----o--------+---o---+--------o----+----o + | Queue 0 | | | Queue 1 | + | Command o ETH PBN 0 o CPU PBN 0 o Command | Queue Manager/ + | Register| | |Register | Traffic Manager + o---------o---+--------o--------+---o---------o + | | + v ^ +Ethernet RD MSG | [4] ETH {2} | Ethernet WR MSG +from its PBN o---+-----------------+---o to CPU PBN + | | + | Egress MAC Ingress MAC | + | [5] {1} | + o------|-----------|------o + v ^ + | | + TX Data RX Data + +Transmit Flow +[1] CPU (Ethernet driver) prepares 32 byte Ethernet egress work message and + enqueues the message to the queue in DDR. +[2] CPU (Ethernet driver) notifies QMTM that there is a message enqueued in + Ethernet transmit queue (e.g. Q0). +[3] QMTM prefetches the Ethernet egress work messages into Ethernet PBN + (e.g. ETH PBN 0). +[4] Ethernet reads work messages from its PBN. +[5] Ethernet DMAs payload from DDR to its egress FIFO and transmits data out. + +Receive Flow +{1} Ethernet receives data and DMAs payload from its ingress FIFO to DDR and + prepares a Ethernet ingress work message. +{2} Ethernet pushes work message to QMTM. +{3} QMTM prefetches the Ethernet ingress work messages into CPU PBN + (e.g. CPU PBN 0) and then interrupts CPU. +{4} CPU (Ethernet driver) dequeues the 32 bytes Ethernet ingress work message + from the queue in DDR. +{5} CPU (Ethernet driver) notifies QMTM that it dequeued a message from + Ethernet receive queue (e.g. Q1). + + +Definition: +1. QMTM (Queue/Traffic Manager) + QMTM manages queues and pbns for CPU, Ethernet, PktDMA and Security + Subsystems. It also performs flow control and QoS on queues. + +2. Slave/Client/Agent + Ethernet, PktDMA (XOR Engine) and Security Engine Subsystems & CPU whose + queues and pbn are managed by QMTM are called slave/client/agent. + +3. Queue + Queue is circular FIFO memory for QMTM hardware in which a 16 bytes, + 32 bytes or 64 bytes message is dequeued OR enqueued between CPU and + Ethernet, PktDMA and Security Engine Subsystems. + +4. PB + Each subsystem in the APM X-Gene SoC device has a prefetch buffer for + storing messages in order to pipeline the QMTM processing latency with the + subsystem processing latency. The number of buffers prefetched depends on + the QM/TM processing latency and the subsystem data rate. + + There are multiple PB for a subsystem, each PB is assigned a number which is + called PBN. Each subsystem and CPU can have max 32 pbns, however QMTM limits + how many pbns it supports for each subsystem. + +5. Message + The subsystems in the APM X-Gene SoC communicate with a central Queue Manager + (QM) that manages all the messages queued to the subsystems. The subsystems + communicate with the QM using messages that include information about the + work to be performed and the location of the buffers or data on which the + work is to be performed. + + A message consists of 16, 32 or 64 bytes which resides in a queue. A message + which is + a. 16 bytes contains information of data buffer, length, etc. allocated by + subsystem driver. + b. 32 or 64 bytes contains information about the work to be done for a + subsystem. Each subsystem defines its own format of work message. + + Each subsystem defines their own format of work message. A message (or queue + descriptor) has attribute fields (QMTM specific) which are common for all + subsystem work messages. The remaining fields of a message are specific to + subsystem. QMTM device doesn't have any knowledge of these subsystems + specific fields and the data operation which subsystem is going to perform + using these fields. + + e.g. + 1. Ethernet work message includes data address & length which is used by + Ethernet DMA engine for copying the data to/from its internal FIFO. + 2. PktDMA work message includes multiple data addresses & lengths for + doing scatter/gather, XOR operations and result data address/es to give + back result to the CPU (driver). + 3. Security work message includes data address & length for doing encryption + or decryption, the type of encryption or decryption and result data + address to give back result to the CPU (driver). --- linux-3.13.0.orig/Documentation/misc-devices/mei/mei-amt-version.c +++ linux-3.13.0/Documentation/misc-devices/mei/mei-amt-version.c @@ -115,8 +115,6 @@ struct mei_client *cl; struct mei_connect_client_data data; - mei_deinit(me); - me->verbose = verbose; me->fd = open("/dev/mei", O_RDWR); --- linux-3.13.0.orig/Documentation/networking/fman.txt +++ linux-3.13.0/Documentation/networking/fman.txt @@ -0,0 +1,232 @@ +The FMan driver +Sysfs file description + +Author: Andrei Sorin Pistirica +Updated: 2010-12-08 + +FMAN SYSFS statistics counters +------------------------------ +The document contains statistics counters description for every type of +FMAN port and for all FMAN modules as well (FMAN, FMAN:DMA and FMAN:PCD). +Every counter is related to a specific register mapped as well. + +Port type: Tx +------------- +port_frame: FMBM_TFRC + "counts the total number of frames flowing on the Tx port, regardless of + whether they got transmitted or discarded." + +port_discard_frame: FMBM_TFDC + "counts the number of frames that were discarded due to DMA error indication + that was sensed during the process of frame payload or frame context + loading." + +port_dealloc_buf:FMBM_TBDC + "counts the number of buffer deallocate operations." + +port_enq_total:FMQM_PnETFC + "counts the number of enqueue operations preformed for this portID." + +port_length_err:FMBM_TFLEDC + "counts the number of frames that were discarded due to frame length error." + +port_unsupprted_format:FMBM_TFUFDC + "counts the number of frames that were discarded due to frame format + error - frame descriptor contains unsupported format." + +port_deq_total:FMQM_PnDTFC + "counts the total number of FDs that dequeued from the QMan for this + portID." + +port_deq_from_default:FMQM_PnDDCFQC + "counts the number of time the portID used the default confirmation FQID + from the BMI.s FMBM_TDCFQID" + +port_deq_confirm:FMQM_PnDCC + "counts the number of times the PortID got a FD from the dequeue response + that require confirmation." + +Port type: Rx +------------- +port_frame:FMBM_RFRC + "counts the total number of frames received on the Rx port." + +port_discard_frame:FMBM_RFDC + "counts the number of frames received on the Rx port that were not able + to enter the receive queue system due to WRED algorithm." + +port_dealloc_buf:FMBM_RBDC + "counts the number of buffer deallocate operations." + +port_enq_total:FMQM_PnETFC + "counts the number of enqueue operations preformed for this portID" + +port_rx_bad_frame:FMBM_RBFC + "counts the number of frames received on the Rx port with an error + indication" + +port_rx_large_frame:FMBM_RLFC + "counts the number of frames received on the Rx port with an over size + indication. Over size indication is marked when frame size exceeds the + maximum configured in the corresponding MAC configuration register" + +port_rx_out_of_buffers_discard:FMBM_RODC + "counts the number of frames received on the Rx port that were not able + to enter the receive queue system due to lack of external buffers, or + the lack of suitable buffers that cause the S/G list to grow beyond 16 + entries, or the lack of suitable buffer to hold S/G list (including + start margin), or the lack of suitable buffer to hold the frame header + (including start margin)." + +port_rx_filter_frame:FMBM_RFFC + "counts the number of frames received on the Rx port that were filtered + out by the parse and classify modules of the Fman" + +Port type: Oh +------------- +Oh ports have the same counters as RX and TX ports. The counters are listed +below and the description can be found at the other ports (above): + port_frame + port_discard_frame + port_dealloc_buf + port_enq_total + port_length_err + port_unsupprted_format + port_deq_total + port_deq_from_default + port_deq_confirm + port_rx_bad_frame + port_rx_large_frame + port_rx_out_of_buffers_discard + +Fman: +----- +enq_total_frame:FMQM_ETFC + "counts the total number of enqueue operations the QMI performed." + +deq_total_frame:FMQM_DTFC + "counts the total number of FDs that dequeued from the Qman." + +deq_0:FMQM_DC0 + "counts the number of times the QMI received a NULL FD from the QMan as a + response to a dequeue request (command)" + +deq_1:FMQM_DC1 + "counts the number of times the QMI got 1 FD from the QMan as a response + to a dequeue request (command)" + +deq_2:FMQM_DC2 + "counts the number of times the QMI got 2 FD from the QMan as a response + to a dequeue request (command)" + +deq_from_default:FMQM_DDCFQC + "counts the number of times the QMI used the default confirmation FQID + from the BMI's FMBM_TCFQID" + +deq_from_context:FMQM_CBCFQC + "counts the number of times the QMI used the override confirmation FQID + from the FD command field" + +deq_from_fd:FMQM_DFOCFQC + "counts the number of times the QMI used the override confirmation FQID + from the FD command field" + +deq_confirm:(FMQM_DCC + "counts the number of times the QMI gets an FD from the dequeue response + that requires confirmation" + +Fman: DMA +--------- +The FMAN:DMA counters are read from FMDMSR register. They reports bus error +events that are recognized by the FMan DMA controller on all of the +FMan DMA channels. + The counters are: + cmq_not_empty + bus_error + read_buf_ecc_error + write_buf_ecc_sys_error + write_buf_ecc_fm_error + +Fman: PCD +--------- +pcd_kg_total:FMKG_TPC + "count of packets passed in the keygen on all schemes" + +pcd_plcr_yellow:FMPL_YPC + "counts the total number of YELLOW packets that exit the Policer" + +pcd_plcr_red:FMPL_RPC + "counter counts the total number of RED packets that exit the Policer" + +pcd_plcr_recolored_to_red:FMPL_RRPC + "counts the number of packets that changed color to RED by the Policer" + +pcd_plcr_recolored_to_yellow:FMPL_RYPC + "counts the number of packets that changed color to YELLOW by the Policer" + +pcd_plcr_total:FMPL_TPC + "counts the total number of packets passed in the Policer" + +pcd_plcr_length_mismatch:FMPL_FLMC + "counts the number of packets with length mismatch indicated by an offset + value of 0xFF in the selected parser result entry or when the calculated + frame offset result is greater than the packet full length provided by + FD length" + +pcd_prs_parse_dispatch:FMPR_PDS + "counts the number of times the parser block was dispatched by FPM" + +pcd_prs_l2_parse_result_returned:FMPR_L2RRS + "counts the number of times L2 parse result was returned (including with + errors)" + +pcd_prs_l3_parse_result_returned:FMPR_L3RRS + "counts the number of times L3 parse result was returned (including with + errors) + +pcd_prs_l4_parse_result_returned:FMPR_L4RRS + "counts the number of times L4 parse result was returned (including with + errors)" + +pcd_prs_shim_parse_result_returned:FMPR_SRRS + "counts the number of times Shim parse result was returned (including with + errors)" + +pcd_prs_l2_parse_result_returned_with_err:FMPR_L2RRES + "counts the number of times L2 parse result was returned with errors" + +pcd_prs_l3_parse_result_returned_with_err:FMPR_L3RRES + "counts the number of times L3 parse result was returned with errors" + +pcd_prs_l4_parse_result_returned_with_err:FMPR_L4RRES + "counts the number of times L4 parse result was returned with errors" + +pcd_prs_shim_parse_result_returned_with_err:FMPR_SRRES + "counts the number of times Shim parse result was returned with errors" + +pcd_prs_soft_prs_cycles:FMPR_SPCS + "counts the number of cycles spent executing soft parser instruction + (including stall cycles)" + +pcd_prs_soft_prs_stall_cycles:FMPR_SPSCS + "counts the number of cycles stalled waiting for parser internal memory + reads while executing soft parser instruction." + +pcd_prs_hard_prs_cycle_incl_stall_cycles:FMPR_HXSCS + "counts the number of cycles spent executing hard parser (including stall + cycles)" + +pcd_prs_muram_read_cycles:FMPR_MRCS + "counts the number of cycles while performing FMan Memory read" + +pcd_prs_muram_read_stall_cycles:FMPR_MRSCS + "counts the number of cycles stalled while performing FMan Memory read" + +pcd_prs_muram_write_cycles:FMPR_MWCS + "counts the number of cycles while performing FMan Memory write" + +pcd_prs_muram_write_stall_cycles:FMPR_MWSCS + "counts the number of cycles stalled while performing FMan Memory write" + +pcd_prs_fpm_command_stall_cycles:FMPR_FCSCS + "counts the number of cycles stalled while performing a FPM command" --- linux-3.13.0.orig/Documentation/sysctl/kernel.txt +++ linux-3.13.0/Documentation/sysctl/kernel.txt @@ -33,6 +33,7 @@ - domainname - hostname - hotplug +- kexec_load_disabled - kptr_restrict - kstack_depth_to_print [ X86 only ] - l2cr [ PPC only ] @@ -287,6 +288,18 @@ ============================================================== +kexec_load_disabled: + +A toggle indicating if the kexec_load syscall has been disabled. This +value defaults to 0 (false: kexec_load enabled), but can be set to 1 +(true: kexec_load disabled). Once true, kexec can no longer be used, and +the toggle cannot be set back to false. This allows a kexec image to be +loaded before disabling the syscall, allowing a system to set up (and +later use) an image without it being altered. Generally used together +with the "modules_disabled" sysctl. + +============================================================== + kptr_restrict: This toggle indicates whether restrictions are placed on @@ -331,7 +344,7 @@ in an otherwise modular kernel. This toggle defaults to off (0), but can be set true (1). Once true, modules can be neither loaded nor unloaded, and the toggle cannot be set back -to false. +to false. Generally used with the "kexec_load_disabled" toggle. ============================================================== --- linux-3.13.0.orig/Documentation/video4linux/gspca.txt +++ linux-3.13.0/Documentation/video4linux/gspca.txt @@ -55,6 +55,7 @@ sonixj 0458:7025 Genius Eye 311Q sn9c20x 0458:7029 Genius Look 320s sonixj 0458:702e Genius Slim 310 NB +sn9c20x 0458:7045 Genius Look 1320 V2 sn9c20x 0458:704a Genius Slim 1320 sn9c20x 0458:704c Genius i-Look 1321 sn9c20x 045e:00f4 LifeCam VX-6000 (SN9C20x + OV9650) --- linux-3.13.0.orig/Documentation/virtual/kvm/api.txt +++ linux-3.13.0/Documentation/virtual/kvm/api.txt @@ -2327,7 +2327,7 @@ Capability: basic Architectures: arm, arm64 Type: vcpu ioctl -Parameters: struct struct kvm_vcpu_init (in) +Parameters: struct kvm_vcpu_init (in) Returns: 0 on success; -1 on error Errors:  EINVAL:    the target is unknown, or the combination of features is invalid. --- linux-3.13.0.orig/Documentation/x86/x86_64/mm.txt +++ linux-3.13.0/Documentation/x86/x86_64/mm.txt @@ -28,4 +28,11 @@ Current X86-64 implementations only support 40 bits of address space, but we support up to 46 bits. This expands into MBZ space in the page tables. +->trampoline_pgd: + +We map EFI runtime services in the aforementioned PGD in the virtual +range of 64Gb (arbitrarily set, can be raised if needed) + +0xffffffef00000000 - 0xffffffff00000000 + -Andi Kleen, Jul 2004 --- linux-3.13.0.orig/MAINTAINERS +++ linux-3.13.0/MAINTAINERS @@ -665,6 +665,23 @@ F: drivers/net/appletalk/ F: net/appletalk/ +APPLIEDMICRO (APM) X-GENE SOC QUEUE MANAGER/TRAFFIC MANAGER (QMTM) DRIVER +M: Ravi Patel +M: Keyur Chudgar +S: Maintained +F: drivers/misc/xgene/ +F: include/misc/xgene/xgene_qmtm.h +F: Documentation/devicetree/bindings/misc/apm-xgene-qmtm.txt +F: Documentation/misc-devices/apm-xgene-qmtm + +APPLIEDMICRO (APM) X-GENE SOC ETHERNET DRIVER +M: Keyur Chudgar +M: Iyappan Subramanian +M: Ravi Patel +S: Maintained +F: drivers/net/ethernet/apm/ +F: Documentation/devicetree/bindings/net/apm-xgene-enet.txt + APTINA CAMERA SENSOR PLL M: Laurent Pinchart L: linux-media@vger.kernel.org @@ -2158,6 +2175,11 @@ S: Supported F: drivers/net/ethernet/cisco/enic/ +CISCO VIC LOW LATENCY NIC DRIVER +M: Upinder Malhi +S: Supported +F: drivers/infiniband/hw/usnic + CIRRUS LOGIC EP93XX ETHERNET DRIVER M: Hartley Sweeten L: netdev@vger.kernel.org @@ -6345,6 +6367,13 @@ F: include/scsi/osd_* F: fs/exofs/ +OVERLAYFS FILESYSTEM +M: Miklos Szeredi +L: linux-fsdevel@vger.kernel.org +S: Supported +F: fs/overlayfs/* +F: Documentation/filesystems/overlayfs.txt + P54 WIRELESS DRIVER M: Christian Lamparter L: linux-wireless@vger.kernel.org @@ -6533,6 +6562,13 @@ S: Maintained F: drivers/pci/host/*designware* +PCI DRIVER FOR APPLIEDMICRO XGENE +M: Tanmay Inamdar +L: linux-pci@vger.kernel.org +L: linux-arm-kernel@lists.infradead.org +S: Maintained +F: drivers/pci/host/pci-xgene.c + PCMCIA SUBSYSTEM P: Linux PCMCIA Team L: linux-pcmcia@lists.infradead.org --- linux-3.13.0.orig/Makefile +++ linux-3.13.0/Makefile @@ -1,8 +1,8 @@ VERSION = 3 PATCHLEVEL = 13 -SUBLEVEL = 0 -EXTRAVERSION = -NAME = One Giant Leap for Frogkind +SUBLEVEL = 11 +EXTRAVERSION = .2 +NAME = King of Alienated Frog Porn # *DOCUMENTATION* # To see a list of typical targets execute "make help" @@ -352,6 +352,12 @@ AFLAGS_KERNEL = CFLAGS_GCOV = -fprofile-arcs -ftest-coverage +# Prefer linux-backports-modules +ifneq ($(KBUILD_SRC),) +ifneq ($(shell if test -e $(KBUILD_OUTPUT)/ubuntu-build; then echo yes; fi),yes) +UBUNTUINCLUDE := -I/usr/src/linux-headers-lbm-$(KERNELRELEASE) +endif +endif # Use USERINCLUDE when you must reference the UAPI directories only. USERINCLUDE := \ @@ -364,12 +370,16 @@ # Use LINUXINCLUDE when you must reference the include/ directory. # Needed to be compatible with the O= option LINUXINCLUDE := \ + $(UBUNTUINCLUDE) \ -I$(srctree)/arch/$(hdr-arch)/include \ -Iarch/$(hdr-arch)/include/generated \ $(if $(KBUILD_SRC), -I$(srctree)/include) \ -Iinclude \ $(USERINCLUDE) +# UBUNTU: Include our third party driver stuff too +LINUXINCLUDE += -Iubuntu/include $(if $(KBUILD_SRC),-I$(srctree)/ubuntu/include) + KBUILD_CPPFLAGS := -D__KERNEL__ KBUILD_CFLAGS := -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \ @@ -522,7 +532,7 @@ # Objects we will link into vmlinux / subdirs we need to visit init-y := init/ -drivers-y := drivers/ sound/ firmware/ +drivers-y := drivers/ sound/ firmware/ ubuntu/ net-y := net/ libs-y := lib/ core-y := usr/ @@ -940,6 +950,7 @@ $(error Headers not exportable for the $(SRCARCH) architecture)) $(Q)$(MAKE) $(hdr-inst)=include/uapi $(Q)$(MAKE) $(hdr-inst)=arch/$(hdr-arch)/include/uapi/asm $(hdr-dst) + $(Q)$(MAKE) $(hdr-inst)=ubuntu/include dst=include oldheaders= PHONY += headers_check_all headers_check_all: headers_install_all @@ -949,6 +960,7 @@ headers_check: headers_install $(Q)$(MAKE) $(hdr-inst)=include/uapi HDRCHECK=1 $(Q)$(MAKE) $(hdr-inst)=arch/$(hdr-arch)/include/uapi/asm $(hdr-dst) HDRCHECK=1 + $(Q)$(MAKE) $(hdr-inst)=ubuntu/include dst=include oldheaders= HDRCHECK=1 # --------------------------------------------------------------------------- # Modules --- linux-3.13.0.orig/arch/alpha/lib/csum_partial_copy.c +++ linux-3.13.0/arch/alpha/lib/csum_partial_copy.c @@ -378,6 +378,11 @@ __wsum csum_partial_copy_nocheck(const void *src, void *dst, int len, __wsum sum) { - return csum_partial_copy_from_user((__force const void __user *)src, - dst, len, sum, NULL); + __wsum checksum; + mm_segment_t oldfs = get_fs(); + set_fs(KERNEL_DS); + checksum = csum_partial_copy_from_user((__force const void __user *)src, + dst, len, sum, NULL); + set_fs(oldfs); + return checksum; } --- linux-3.13.0.orig/arch/arc/boot/dts/nsimosci.dts +++ linux-3.13.0/arch/arc/boot/dts/nsimosci.dts @@ -11,13 +11,16 @@ / { compatible = "snps,nsimosci"; - clock-frequency = <80000000>; /* 80 MHZ */ + clock-frequency = <20000000>; /* 20 MHZ */ #address-cells = <1>; #size-cells = <1>; interrupt-parent = <&intc>; chosen { - bootargs = "console=tty0 consoleblank=0"; + /* this is for console on PGU */ + /* bootargs = "console=tty0 consoleblank=0"; */ + /* this is for console on serial */ + bootargs = "earlycon=uart8250,mmio32,0xc0000000,115200n8 console=ttyS0,115200n8 consoleblank=0 debug"; }; aliases { @@ -44,15 +47,14 @@ }; uart0: serial@c0000000 { - compatible = "snps,dw-apb-uart"; + compatible = "ns8250"; reg = <0xc0000000 0x2000>; interrupts = <11>; - #clock-frequency = <80000000>; clock-frequency = <3686400>; baud = <115200>; reg-shift = <2>; reg-io-width = <4>; - status = "okay"; + no-loopback-test = <1>; }; pgu0: pgu@c9000000 { --- linux-3.13.0.orig/arch/arc/configs/nsimosci_defconfig +++ linux-3.13.0/arch/arc/configs/nsimosci_defconfig @@ -54,6 +54,7 @@ CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_OF_PLATFORM=y CONFIG_SERIAL_ARC=y CONFIG_SERIAL_ARC_CONSOLE=y # CONFIG_HW_RANDOM is not set --- linux-3.13.0.orig/arch/arc/mm/cache_arc700.c +++ linux-3.13.0/arch/arc/mm/cache_arc700.c @@ -282,7 +282,7 @@ #else /* if V-P const for loop, PTAG can be written once outside loop */ if (full_page_op) - write_aux_reg(ARC_REG_DC_PTAG, paddr); + write_aux_reg(aux_tag, paddr); #endif while (num_lines-- > 0) { @@ -296,7 +296,7 @@ write_aux_reg(aux_cmd, vaddr); vaddr += L1_CACHE_BYTES; #else - write_aux_reg(aux, paddr); + write_aux_reg(aux_cmd, paddr); paddr += L1_CACHE_BYTES; #endif } --- linux-3.13.0.orig/arch/arm/Kconfig +++ linux-3.13.0/arch/arm/Kconfig @@ -871,7 +871,7 @@ bool "ARMv5 based platforms (ARM926T, XSCALE, PJ1, ...)" depends on !ARCH_MULTI_V6_V7 select ARCH_MULTI_V4_V5 - select CPU_ARM926T if (!CPU_ARM946E || CPU_ARM1020 || \ + select CPU_ARM926T if !(CPU_ARM946E || CPU_ARM1020 || \ CPU_ARM1020E || CPU_ARM1022 || CPU_ARM1026 || \ CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK || CPU_FEROCEON) @@ -1543,6 +1543,7 @@ choice prompt "Memory split" + depends on MMU default VMSPLIT_3G help Select the desired split between kernel and user memory. @@ -1560,6 +1561,7 @@ config PAGE_OFFSET hex + default PHYS_OFFSET if !MMU default 0x40000000 if VMSPLIT_1G default 0x80000000 if VMSPLIT_2G default 0xC0000000 @@ -2261,6 +2263,8 @@ source "drivers/Kconfig" +source "ubuntu/Kconfig" + source "fs/Kconfig" source "arch/arm/Kconfig.debug" --- linux-3.13.0.orig/arch/arm/boot/compressed/Makefile +++ linux-3.13.0/arch/arm/boot/compressed/Makefile @@ -3,6 +3,7 @@ # # create a compressed vmlinuz image from the original vmlinux # +KBUILD_CFLAGS := $(filter-out -fstack-protector, $(KBUILD_CFLAGS)) -fno-stack-protector OBJS = --- linux-3.13.0.orig/arch/arm/boot/dts/am33xx.dtsi +++ linux-3.13.0/arch/arm/boot/dts/am33xx.dtsi @@ -422,7 +422,7 @@ ti,hwmods = "usb_otg_hs"; status = "disabled"; - usb_ctrl_mod: control@44e10000 { + usb_ctrl_mod: control@44e10620 { compatible = "ti,am335x-usb-ctrl-module"; reg = <0x44e10620 0x10 0x44e10648 0x4>; @@ -525,7 +525,7 @@ "tx14", "tx15"; }; - cppi41dma: dma-controller@07402000 { + cppi41dma: dma-controller@47402000 { compatible = "ti,am3359-cppi41"; reg = <0x47400000 0x1000 0x47402000 0x1000 --- linux-3.13.0.orig/arch/arm/boot/dts/armada-370-xp.dtsi +++ linux-3.13.0/arch/arm/boot/dts/armada-370-xp.dtsi @@ -152,7 +152,7 @@ }; sata@a0000 { - compatible = "marvell,orion-sata"; + compatible = "marvell,armada-370-sata"; reg = <0xa0000 0x5000>; interrupts = <55>; clocks = <&gateclk 15>, <&gateclk 30>; --- linux-3.13.0.orig/arch/arm/boot/dts/at91sam9g45.dtsi +++ linux-3.13.0/arch/arm/boot/dts/at91sam9g45.dtsi @@ -618,6 +618,7 @@ compatible = "atmel,hsmci"; reg = <0xfff80000 0x600>; interrupts = <11 IRQ_TYPE_LEVEL_HIGH 0>; + pinctrl-names = "default"; dmas = <&dma 1 AT91_DMA_CFG_PER_ID(0)>; dma-names = "rxtx"; #address-cells = <1>; @@ -629,6 +630,7 @@ compatible = "atmel,hsmci"; reg = <0xfffd0000 0x600>; interrupts = <29 IRQ_TYPE_LEVEL_HIGH 0>; + pinctrl-names = "default"; dmas = <&dma 1 AT91_DMA_CFG_PER_ID(13)>; dma-names = "rxtx"; #address-cells = <1>; --- linux-3.13.0.orig/arch/arm/boot/dts/exynos5250-arndale.dts +++ linux-3.13.0/arch/arm/boot/dts/exynos5250-arndale.dts @@ -286,6 +286,7 @@ regulator-name = "vdd_g3d"; regulator-min-microvolt = <1000000>; regulator-max-microvolt = <1000000>; + regulator-always-on; regulator-boot-on; op_mode = <1>; }; --- linux-3.13.0.orig/arch/arm/include/asm/cacheflush.h +++ linux-3.13.0/arch/arm/include/asm/cacheflush.h @@ -212,6 +212,7 @@ static inline void __flush_icache_all(void) { __flush_icache_preferred(); + dsb(); } /* --- linux-3.13.0.orig/arch/arm/include/asm/futex.h +++ linux-3.13.0/arch/arm/include/asm/futex.h @@ -3,11 +3,6 @@ #ifdef __KERNEL__ -#if defined(CONFIG_CPU_USE_DOMAINS) && defined(CONFIG_SMP) -/* ARM doesn't provide unprivileged exclusive memory accessors */ -#include -#else - #include #include #include @@ -164,6 +159,5 @@ return ret; } -#endif /* !(CPU_USE_DOMAINS && SMP) */ #endif /* __KERNEL__ */ #endif /* _ASM_ARM_FUTEX_H */ --- linux-3.13.0.orig/arch/arm/include/asm/kvm_mmu.h +++ linux-3.13.0/arch/arm/include/asm/kvm_mmu.h @@ -114,11 +114,34 @@ pmd_val(*pmd) |= L_PMD_S2_RDWR; } +/* Open coded p*d_addr_end that can deal with 64bit addresses */ +#define kvm_pgd_addr_end(addr, end) \ +({ u64 __boundary = ((addr) + PGDIR_SIZE) & PGDIR_MASK; \ + (__boundary - 1 < (end) - 1)? __boundary: (end); \ +}) + +#define kvm_pud_addr_end(addr,end) (end) + +#define kvm_pmd_addr_end(addr, end) \ +({ u64 __boundary = ((addr) + PMD_SIZE) & PMD_MASK; \ + (__boundary - 1 < (end) - 1)? __boundary: (end); \ +}) + struct kvm; -static inline void coherent_icache_guest_page(struct kvm *kvm, hva_t hva, - unsigned long size) +#define kvm_flush_dcache_to_poc(a,l) __cpuc_flush_dcache_area((a), (l)) + +static inline bool vcpu_has_cache_enabled(struct kvm_vcpu *vcpu) { + return (vcpu->arch.cp15[c1_SCTLR] & 0b101) == 0b101; +} + +static inline void coherent_cache_guest_page(struct kvm_vcpu *vcpu, hva_t hva, + unsigned long size) +{ + if (!vcpu_has_cache_enabled(vcpu)) + kvm_flush_dcache_to_poc((void *)hva, size); + /* * If we are going to insert an instruction page and the icache is * either VIPT or PIPT, there is a potential problem where the host @@ -139,7 +162,7 @@ } } -#define kvm_flush_dcache_to_poc(a,l) __cpuc_flush_dcache_area((a), (l)) +void stage2_flush_vm(struct kvm *kvm); #endif /* !__ASSEMBLY__ */ --- linux-3.13.0.orig/arch/arm/include/asm/memory.h +++ linux-3.13.0/arch/arm/include/asm/memory.h @@ -30,14 +30,15 @@ */ #define UL(x) _AC(x, UL) +/* PAGE_OFFSET - the virtual address of the start of the kernel image */ +#define PAGE_OFFSET UL(CONFIG_PAGE_OFFSET) + #ifdef CONFIG_MMU /* - * PAGE_OFFSET - the virtual address of the start of the kernel image * TASK_SIZE - the maximum size of a user space task. * TASK_UNMAPPED_BASE - the lower boundary of the mmap VM area */ -#define PAGE_OFFSET UL(CONFIG_PAGE_OFFSET) #define TASK_SIZE (UL(CONFIG_PAGE_OFFSET) - UL(SZ_16M)) #define TASK_UNMAPPED_BASE ALIGN(TASK_SIZE / 3, SZ_16M) @@ -104,10 +105,6 @@ #define END_MEM (UL(CONFIG_DRAM_BASE) + CONFIG_DRAM_SIZE) #endif -#ifndef PAGE_OFFSET -#define PAGE_OFFSET PLAT_PHYS_OFFSET -#endif - /* * The module can be at any place in ram in nommu mode. */ --- linux-3.13.0.orig/arch/arm/include/asm/pgtable-2level.h +++ linux-3.13.0/arch/arm/include/asm/pgtable-2level.h @@ -140,6 +140,7 @@ #define L_PTE_MT_DEV_NONSHARED (_AT(pteval_t, 0x0c) << 2) /* 1100 */ #define L_PTE_MT_DEV_WC (_AT(pteval_t, 0x09) << 2) /* 1001 */ #define L_PTE_MT_DEV_CACHED (_AT(pteval_t, 0x0b) << 2) /* 1011 */ +#define L_PTE_MT_VECTORS (_AT(pteval_t, 0x0f) << 2) /* 1111 */ #define L_PTE_MT_MASK (_AT(pteval_t, 0x0f) << 2) #ifndef __ASSEMBLY__ --- linux-3.13.0.orig/arch/arm/include/asm/pgtable-3level.h +++ linux-3.13.0/arch/arm/include/asm/pgtable-3level.h @@ -120,13 +120,16 @@ /* * 2nd stage PTE definitions for LPAE. */ -#define L_PTE_S2_MT_UNCACHED (_AT(pteval_t, 0x5) << 2) /* MemAttr[3:0] */ -#define L_PTE_S2_MT_WRITETHROUGH (_AT(pteval_t, 0xa) << 2) /* MemAttr[3:0] */ -#define L_PTE_S2_MT_WRITEBACK (_AT(pteval_t, 0xf) << 2) /* MemAttr[3:0] */ -#define L_PTE_S2_RDONLY (_AT(pteval_t, 1) << 6) /* HAP[1] */ -#define L_PTE_S2_RDWR (_AT(pteval_t, 3) << 6) /* HAP[2:1] */ +#define L_PTE_S2_MT_UNCACHED (_AT(pteval_t, 0x0) << 2) /* strongly ordered */ +#define L_PTE_S2_MT_WRITETHROUGH (_AT(pteval_t, 0xa) << 2) /* normal inner write-through */ +#define L_PTE_S2_MT_WRITEBACK (_AT(pteval_t, 0xf) << 2) /* normal inner write-back */ +#define L_PTE_S2_MT_DEV_SHARED (_AT(pteval_t, 0x1) << 2) /* device */ +#define L_PTE_S2_MT_MASK (_AT(pteval_t, 0xf) << 2) -#define L_PMD_S2_RDWR (_AT(pmdval_t, 3) << 6) /* HAP[2:1] */ +#define L_PTE_S2_RDONLY (_AT(pteval_t, 1) << 6) /* HAP[1] */ +#define L_PTE_S2_RDWR (_AT(pteval_t, 3) << 6) /* HAP[2:1] */ + +#define L_PMD_S2_RDWR (_AT(pmdval_t, 3) << 6) /* HAP[2:1] */ /* * Hyp-mode PL2 PTE definitions for LPAE. --- linux-3.13.0.orig/arch/arm/include/asm/spinlock.h +++ linux-3.13.0/arch/arm/include/asm/spinlock.h @@ -37,18 +37,9 @@ static inline void dsb_sev(void) { -#if __LINUX_ARM_ARCH__ >= 7 - __asm__ __volatile__ ( - "dsb ishst\n" - SEV - ); -#else - __asm__ __volatile__ ( - "mcr p15, 0, %0, c7, c10, 4\n" - SEV - : : "r" (0) - ); -#endif + + dsb(ishst); + __asm__(SEV); } /* --- linux-3.13.0.orig/arch/arm/kvm/mmu.c +++ linux-3.13.0/arch/arm/kvm/mmu.c @@ -145,7 +145,7 @@ pgd = pgdp + pgd_index(addr); pud = pud_offset(pgd, addr); if (pud_none(*pud)) { - addr = pud_addr_end(addr, end); + addr = kvm_pud_addr_end(addr, end); continue; } @@ -155,13 +155,13 @@ * move on. */ clear_pud_entry(kvm, pud, addr); - addr = pud_addr_end(addr, end); + addr = kvm_pud_addr_end(addr, end); continue; } pmd = pmd_offset(pud, addr); if (pmd_none(*pmd)) { - addr = pmd_addr_end(addr, end); + addr = kvm_pmd_addr_end(addr, end); continue; } @@ -176,10 +176,10 @@ */ if (kvm_pmd_huge(*pmd) || page_empty(pte)) { clear_pmd_entry(kvm, pmd, addr); - next = pmd_addr_end(addr, end); + next = kvm_pmd_addr_end(addr, end); if (page_empty(pmd) && !page_empty(pud)) { clear_pud_entry(kvm, pud, addr); - next = pud_addr_end(addr, end); + next = kvm_pud_addr_end(addr, end); } } @@ -187,6 +187,99 @@ } } +static void stage2_flush_ptes(struct kvm *kvm, pmd_t *pmd, + phys_addr_t addr, phys_addr_t end) +{ + pte_t *pte; + + pte = pte_offset_kernel(pmd, addr); + do { + if (!pte_none(*pte)) { + hva_t hva = gfn_to_hva(kvm, addr >> PAGE_SHIFT); + kvm_flush_dcache_to_poc((void*)hva, PAGE_SIZE); + } + } while (pte++, addr += PAGE_SIZE, addr != end); +} + +static void stage2_flush_pmds(struct kvm *kvm, pud_t *pud, + phys_addr_t addr, phys_addr_t end) +{ + pmd_t *pmd; + phys_addr_t next; + + pmd = pmd_offset(pud, addr); + do { + next = kvm_pmd_addr_end(addr, end); + if (!pmd_none(*pmd)) { + if (kvm_pmd_huge(*pmd)) { + hva_t hva = gfn_to_hva(kvm, addr >> PAGE_SHIFT); + kvm_flush_dcache_to_poc((void*)hva, PMD_SIZE); + } else { + stage2_flush_ptes(kvm, pmd, addr, next); + } + } + } while (pmd++, addr = next, addr != end); +} + +static void stage2_flush_puds(struct kvm *kvm, pgd_t *pgd, + phys_addr_t addr, phys_addr_t end) +{ + pud_t *pud; + phys_addr_t next; + + pud = pud_offset(pgd, addr); + do { + next = kvm_pud_addr_end(addr, end); + if (!pud_none(*pud)) { + if (pud_huge(*pud)) { + hva_t hva = gfn_to_hva(kvm, addr >> PAGE_SHIFT); + kvm_flush_dcache_to_poc((void*)hva, PUD_SIZE); + } else { + stage2_flush_pmds(kvm, pud, addr, next); + } + } + } while (pud++, addr = next, addr != end); +} + +static void stage2_flush_memslot(struct kvm *kvm, + struct kvm_memory_slot *memslot) +{ + phys_addr_t addr = memslot->base_gfn << PAGE_SHIFT; + phys_addr_t end = addr + PAGE_SIZE * memslot->npages; + phys_addr_t next; + pgd_t *pgd; + + pgd = kvm->arch.pgd + pgd_index(addr); + do { + next = kvm_pgd_addr_end(addr, end); + stage2_flush_puds(kvm, pgd, addr, next); + } while (pgd++, addr = next, addr != end); +} + +/** + * stage2_flush_vm - Invalidate cache for pages mapped in stage 2 + * @kvm: The struct kvm pointer + * + * Go through the stage 2 page tables and invalidate any cache lines + * backing memory already mapped to the VM. + */ +void stage2_flush_vm(struct kvm *kvm) +{ + struct kvm_memslots *slots; + struct kvm_memory_slot *memslot; + int idx; + + idx = srcu_read_lock(&kvm->srcu); + spin_lock(&kvm->mmu_lock); + + slots = kvm_memslots(kvm); + kvm_for_each_memslot(memslot, slots) + stage2_flush_memslot(kvm, memslot); + + spin_unlock(&kvm->mmu_lock); + srcu_read_unlock(&kvm->srcu, idx); +} + /** * free_boot_hyp_pgd - free HYP boot page tables * @@ -713,7 +806,7 @@ kvm_set_s2pmd_writable(&new_pmd); kvm_set_pfn_dirty(pfn); } - coherent_icache_guest_page(kvm, hva & PMD_MASK, PMD_SIZE); + coherent_cache_guest_page(vcpu, hva & PMD_MASK, PMD_SIZE); ret = stage2_set_pmd_huge(kvm, memcache, fault_ipa, &new_pmd); } else { pte_t new_pte = pfn_pte(pfn, PAGE_S2); @@ -721,7 +814,7 @@ kvm_set_s2pte_writable(&new_pte); kvm_set_pfn_dirty(pfn); } - coherent_icache_guest_page(kvm, hva, PAGE_SIZE); + coherent_cache_guest_page(vcpu, hva, PAGE_SIZE); ret = stage2_set_pte(kvm, memcache, fault_ipa, &new_pte, false); } --- linux-3.13.0.orig/arch/arm/mach-at91/sam9_smc.c +++ linux-3.13.0/arch/arm/mach-at91/sam9_smc.c @@ -101,7 +101,7 @@ /* Pulse register */ val = __raw_readl(base + AT91_SMC_PULSE); - config->nwe_setup = val & AT91_SMC_NWEPULSE; + config->nwe_pulse = val & AT91_SMC_NWEPULSE; config->ncs_write_pulse = (val & AT91_SMC_NCS_WRPULSE) >> 8; config->nrd_pulse = (val & AT91_SMC_NRDPULSE) >> 16; config->ncs_read_pulse = (val & AT91_SMC_NCS_RDPULSE) >> 24; --- linux-3.13.0.orig/arch/arm/mach-highbank/Makefile +++ linux-3.13.0/arch/arm/mach-highbank/Makefile @@ -1,3 +1,5 @@ +KBUILD_CFLAGS += -I$(srctree)/arch/arm/mach-highbank/include + obj-y := highbank.o system.o smc.o plus_sec := $(call as-instr,.arch_extension sec,+sec) --- linux-3.13.0.orig/arch/arm/mach-imx/Makefile +++ linux-3.13.0/arch/arm/mach-imx/Makefile @@ -100,11 +100,9 @@ obj-$(CONFIG_SOC_IMX6Q) += clk-imx6q.o mach-imx6q.o obj-$(CONFIG_SOC_IMX6SL) += clk-imx6sl.o mach-imx6sl.o -ifeq ($(CONFIG_PM),y) obj-$(CONFIG_SOC_IMX6Q) += pm-imx6q.o headsmp.o # i.MX6SL reuses i.MX6Q code obj-$(CONFIG_SOC_IMX6SL) += pm-imx6q.o headsmp.o -endif # i.MX5 based machines obj-$(CONFIG_MACH_MX51_BABBAGE) += mach-mx51_babbage.o --- linux-3.13.0.orig/arch/arm/mach-imx/clk-imx6q.c +++ linux-3.13.0/arch/arm/mach-imx/clk-imx6q.c @@ -479,6 +479,9 @@ if (IS_ENABLED(CONFIG_PCI_IMX6)) clk_set_parent(clk[lvds1_sel], clk[sata_ref]); + /* Set initial power mode */ + imx6q_set_lpm(WAIT_CLOCKED); + np = of_find_compatible_node(NULL, NULL, "fsl,imx6q-gpt"); base = of_iomap(np, 0); WARN_ON(!base); --- linux-3.13.0.orig/arch/arm/mach-imx/clk-imx6sl.c +++ linux-3.13.0/arch/arm/mach-imx/clk-imx6sl.c @@ -261,6 +261,9 @@ clk_prepare_enable(clks[IMX6SL_CLK_USBPHY2_GATE]); } + /* Set initial power mode */ + imx6q_set_lpm(WAIT_CLOCKED); + np = of_find_compatible_node(NULL, NULL, "fsl,imx6sl-gpt"); base = of_iomap(np, 0); WARN_ON(!base); --- linux-3.13.0.orig/arch/arm/mach-imx/common.h +++ linux-3.13.0/arch/arm/mach-imx/common.h @@ -143,13 +143,11 @@ void imx_cpu_die(unsigned int cpu); int imx_cpu_kill(unsigned int cpu); -#ifdef CONFIG_PM void imx6q_pm_init(void); void imx6q_pm_set_ccm_base(void __iomem *base); +#ifdef CONFIG_PM void imx5_pm_init(void); #else -static inline void imx6q_pm_init(void) {} -static inline void imx6q_pm_set_ccm_base(void __iomem *base) {} static inline void imx5_pm_init(void) {} #endif --- linux-3.13.0.orig/arch/arm/mach-imx/pm-imx6q.c +++ linux-3.13.0/arch/arm/mach-imx/pm-imx6q.c @@ -228,8 +228,6 @@ regmap_update_bits(gpr, IOMUXC_GPR1, IMX6Q_GPR1_GINT, IMX6Q_GPR1_GINT); - /* Set initial power mode */ - imx6q_set_lpm(WAIT_CLOCKED); suspend_set_ops(&imx6q_pm_ops); } --- linux-3.13.0.orig/arch/arm/mach-mvebu/Makefile +++ linux-3.13.0/arch/arm/mach-mvebu/Makefile @@ -3,7 +3,7 @@ AFLAGS_coherency_ll.o := -Wa,-march=armv7-a -obj-y += system-controller.o +obj-y += system-controller.o mvebu-soc-id.o obj-$(CONFIG_MACH_ARMADA_370_XP) += armada-370-xp.o obj-$(CONFIG_ARCH_MVEBU) += coherency.o coherency_ll.o pmsu.o obj-$(CONFIG_SMP) += platsmp.o headsmp.o --- linux-3.13.0.orig/arch/arm/mach-mvebu/armada-370-xp.c +++ linux-3.13.0/arch/arm/mach-mvebu/armada-370-xp.c @@ -21,6 +21,7 @@ #include #include #include +#include #include #include #include @@ -28,6 +29,7 @@ #include "armada-370-xp.h" #include "common.h" #include "coherency.h" +#include "mvebu-soc-id.h" static void __init armada_370_xp_map_io(void) { @@ -45,8 +47,38 @@ #endif } +static void __init i2c_quirk(void) +{ + struct device_node *np; + u32 dev, rev; + + /* + * Only revisons more recent than A0 support the offload + * mechanism. We can exit only if we are sure that we can + * get the SoC revision and it is more recent than A0. + */ + if (mvebu_get_soc_id(&rev, &dev) == 0 && dev > MV78XX0_A0_REV) + return; + + for_each_compatible_node(np, NULL, "marvell,mv78230-i2c") { + struct property *new_compat; + + new_compat = kzalloc(sizeof(*new_compat), GFP_KERNEL); + + new_compat->name = kstrdup("compatible", GFP_KERNEL); + new_compat->length = sizeof("marvell,mv78230-a0-i2c"); + new_compat->value = kstrdup("marvell,mv78230-a0-i2c", + GFP_KERNEL); + + of_update_property(np, new_compat); + } + return; +} + static void __init armada_370_xp_dt_init(void) { + if (of_machine_is_compatible("plathome,openblocks-ax3-4")) + i2c_quirk(); of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); } --- linux-3.13.0.orig/arch/arm/mach-mvebu/mvebu-soc-id.c +++ linux-3.13.0/arch/arm/mach-mvebu/mvebu-soc-id.c @@ -0,0 +1,119 @@ +/* + * ID and revision information for mvebu SoCs + * + * Copyright (C) 2014 Marvell + * + * Gregory CLEMENT + * + * This file is licensed under the terms of the GNU General Public + * License version 2. This program is licensed "as is" without any + * warranty of any kind, whether express or implied. + * + * All the mvebu SoCs have information related to their variant and + * revision that can be read from the PCI control register. This is + * done before the PCI initialization to avoid any conflict. Once the + * ID and revision are retrieved, the mapping is freed. + */ + +#define pr_fmt(fmt) "mvebu-soc-id: " fmt + +#include +#include +#include +#include +#include +#include +#include "mvebu-soc-id.h" + +#define PCIE_DEV_ID_OFF 0x0 +#define PCIE_DEV_REV_OFF 0x8 + +#define SOC_ID_MASK 0xFFFF0000 +#define SOC_REV_MASK 0xFF + +static u32 soc_dev_id; +static u32 soc_rev; +static bool is_id_valid; + +static const struct of_device_id mvebu_pcie_of_match_table[] = { + { .compatible = "marvell,armada-xp-pcie", }, + { .compatible = "marvell,armada-370-pcie", }, + {}, +}; + +int mvebu_get_soc_id(u32 *dev, u32 *rev) +{ + if (is_id_valid) { + *dev = soc_dev_id; + *rev = soc_rev; + return 0; + } else + return -1; +} + +static int __init mvebu_soc_id_init(void) +{ + struct device_node *np; + int ret = 0; + void __iomem *pci_base; + struct clk *clk; + struct device_node *child; + + np = of_find_matching_node(NULL, mvebu_pcie_of_match_table); + if (!np) + return ret; + + /* + * ID and revision are available from any port, so we + * just pick the first one + */ + child = of_get_next_child(np, NULL); + if (child == NULL) { + pr_err("cannot get pci node\n"); + ret = -ENOMEM; + goto clk_err; + } + + clk = of_clk_get_by_name(child, NULL); + if (IS_ERR(clk)) { + pr_err("cannot get clock\n"); + ret = -ENOMEM; + goto clk_err; + } + + ret = clk_prepare_enable(clk); + if (ret) { + pr_err("cannot enable clock\n"); + goto clk_err; + } + + pci_base = of_iomap(child, 0); + if (pci_base == NULL) { + pr_err("cannot map registers\n"); + ret = -ENOMEM; + goto res_ioremap; + } + + /* SoC ID */ + soc_dev_id = readl(pci_base + PCIE_DEV_ID_OFF) >> 16; + + /* SoC revision */ + soc_rev = readl(pci_base + PCIE_DEV_REV_OFF) & SOC_REV_MASK; + + is_id_valid = true; + + pr_info("MVEBU SoC ID=0x%X, Rev=0x%X\n", soc_dev_id, soc_rev); + + iounmap(pci_base); + +res_ioremap: + clk_disable_unprepare(clk); + +clk_err: + of_node_put(child); + of_node_put(np); + + return ret; +} +core_initcall(mvebu_soc_id_init); + --- linux-3.13.0.orig/arch/arm/mach-mvebu/mvebu-soc-id.h +++ linux-3.13.0/arch/arm/mach-mvebu/mvebu-soc-id.h @@ -0,0 +1,32 @@ +/* + * Marvell EBU SoC ID and revision definitions. + * + * Copyright (C) 2014 Marvell Semiconductor + * + * This file is licensed under the terms of the GNU General Public + * License version 2. This program is licensed "as is" without any + * warranty of any kind, whether express or implied. + */ + +#ifndef __LINUX_MVEBU_SOC_ID_H +#define __LINUX_MVEBU_SOC_ID_H + +/* Armada XP ID */ +#define MV78230_DEV_ID 0x7823 +#define MV78260_DEV_ID 0x7826 +#define MV78460_DEV_ID 0x7846 + +/* Armada XP Revision */ +#define MV78XX0_A0_REV 0x1 +#define MV78XX0_B0_REV 0x2 + +#ifdef CONFIG_ARCH_MVEBU +int mvebu_get_soc_id(u32 *dev, u32 *rev); +#else +static inline int mvebu_get_soc_id(u32 *dev, u32 *rev) +{ + return -1; +} +#endif + +#endif /* __LINUX_MVEBU_SOC_ID_H */ --- linux-3.13.0.orig/arch/arm/mach-omap2/common.h +++ linux-3.13.0/arch/arm/mach-omap2/common.h @@ -236,6 +236,7 @@ extern void __init gic_init_irq(void); extern void gic_dist_disable(void); +extern void gic_dist_enable(void); extern bool gic_dist_disabled(void); extern void gic_timer_retrigger(void); extern void omap_smc1(u32 fn, u32 arg); --- linux-3.13.0.orig/arch/arm/mach-omap2/cpuidle44xx.c +++ linux-3.13.0/arch/arm/mach-omap2/cpuidle44xx.c @@ -80,6 +80,7 @@ int index) { struct idle_statedata *cx = state_ptr + index; + u32 mpuss_can_lose_context = 0; /* * CPU0 has to wait and stay ON until CPU1 is OFF state. @@ -104,6 +105,9 @@ } } + mpuss_can_lose_context = (cx->mpu_state == PWRDM_POWER_RET) && + (cx->mpu_logic_state == PWRDM_POWER_OFF); + /* * Call idle CPU PM enter notifier chain so that * VFP and per CPU interrupt context is saved. @@ -118,9 +122,8 @@ * Call idle CPU cluster PM enter notifier chain * to save GIC and wakeupgen context. */ - if ((cx->mpu_state == PWRDM_POWER_RET) && - (cx->mpu_logic_state == PWRDM_POWER_OFF)) - cpu_cluster_pm_enter(); + if (mpuss_can_lose_context) + cpu_cluster_pm_enter(); } omap4_enter_lowpower(dev->cpu, cx->cpu_state); @@ -128,9 +131,23 @@ /* Wakeup CPU1 only if it is not offlined */ if (dev->cpu == 0 && cpumask_test_cpu(1, cpu_online_mask)) { + + if (IS_PM44XX_ERRATUM(PM_OMAP4_ROM_SMP_BOOT_ERRATUM_GICD) && + mpuss_can_lose_context) + gic_dist_disable(); + clkdm_wakeup(cpu_clkdm[1]); omap_set_pwrdm_state(cpu_pd[1], PWRDM_POWER_ON); clkdm_allow_idle(cpu_clkdm[1]); + + if (IS_PM44XX_ERRATUM(PM_OMAP4_ROM_SMP_BOOT_ERRATUM_GICD) && + mpuss_can_lose_context) { + while (gic_dist_disabled()) { + udelay(1); + cpu_relax(); + } + gic_timer_retrigger(); + } } /* @@ -143,8 +160,7 @@ * Call idle CPU cluster PM exit notifier chain * to restore GIC and wakeupgen context. */ - if (dev->cpu == 0 && (cx->mpu_state == PWRDM_POWER_RET) && - (cx->mpu_logic_state == PWRDM_POWER_OFF)) + if (dev->cpu == 0 && mpuss_can_lose_context) cpu_cluster_pm_exit(); fail: --- linux-3.13.0.orig/arch/arm/mach-omap2/gpmc.c +++ linux-3.13.0/arch/arm/mach-omap2/gpmc.c @@ -1339,7 +1339,7 @@ of_property_read_bool(np, "gpmc,time-para-granularity"); } -#ifdef CONFIG_MTD_NAND +#if IS_ENABLED(CONFIG_MTD_NAND) static const char * const nand_xfer_types[] = { [NAND_OMAP_PREFETCH_POLLED] = "prefetch-polled", @@ -1429,7 +1429,7 @@ } #endif -#ifdef CONFIG_MTD_ONENAND +#if IS_ENABLED(CONFIG_MTD_ONENAND) static int gpmc_probe_onenand_child(struct platform_device *pdev, struct device_node *child) { --- linux-3.13.0.orig/arch/arm/mach-omap2/irq.c +++ linux-3.13.0/arch/arm/mach-omap2/irq.c @@ -222,6 +222,7 @@ static inline void omap_intc_handle_irq(void __iomem *base_addr, struct pt_regs *regs) { u32 irqnr; + int handled_irq = 0; do { irqnr = readl_relaxed(base_addr + 0x98); @@ -249,8 +250,15 @@ if (irqnr) { irqnr = irq_find_mapping(domain, irqnr); handle_IRQ(irqnr, regs); + handled_irq = 1; } } while (irqnr); + + /* If an irq is masked or deasserted while active, we will + * keep ending up here with no irq handled. So remove it from + * the INTC with an ack.*/ + if (!handled_irq) + omap_ack_irq(NULL); } asmlinkage void __exception_irq_entry omap2_intc_handle_irq(struct pt_regs *regs) --- linux-3.13.0.orig/arch/arm/mach-omap2/omap-mpuss-lowpower.c +++ linux-3.13.0/arch/arm/mach-omap2/omap-mpuss-lowpower.c @@ -271,6 +271,9 @@ else omap_pm_ops.finish_suspend(save_state); + if (IS_PM44XX_ERRATUM(PM_OMAP4_ROM_SMP_BOOT_ERRATUM_GICD) && cpu) + gic_dist_enable(); + /* * Restore the CPUx power state to ON otherwise CPUx * power domain can transitions to programmed low power --- linux-3.13.0.orig/arch/arm/mach-omap2/omap4-common.c +++ linux-3.13.0/arch/arm/mach-omap2/omap4-common.c @@ -127,6 +127,12 @@ __raw_writel(0x0, gic_dist_base_addr + GIC_DIST_CTRL); } +void gic_dist_enable(void) +{ + if (gic_dist_base_addr) + __raw_writel(0x1, gic_dist_base_addr + GIC_DIST_CTRL); +} + bool gic_dist_disabled(void) { return !(__raw_readl(gic_dist_base_addr + GIC_DIST_CTRL) & 0x1); --- linux-3.13.0.orig/arch/arm/mach-omap2/omap_hwmod.h +++ linux-3.13.0/arch/arm/mach-omap2/omap_hwmod.h @@ -41,6 +41,7 @@ extern struct omap_hwmod_sysc_fields omap_hwmod_sysc_type1; extern struct omap_hwmod_sysc_fields omap_hwmod_sysc_type2; extern struct omap_hwmod_sysc_fields omap_hwmod_sysc_type3; +extern struct omap_hwmod_sysc_fields omap_hwmod_sysc_type4; /* * OCP SYSCONFIG bit shifts/masks TYPE1. These are for IPs compliant @@ -81,6 +82,16 @@ #define SYSC_TYPE3_MIDLEMODE_SHIFT 2 #define SYSC_TYPE3_MIDLEMODE_MASK (0x3 << SYSC_TYPE3_MIDLEMODE_SHIFT) +/* + * OCP SYSCONFIG bit shifts/masks TYPE4. + */ +#define SYSC_TYPE4_SIDLEMODE_SHIFT 2 +#define SYSC_TYPE4_SIDLEMODE_MASK (0x3 << SYSC_TYPE4_SIDLEMODE_SHIFT) +#define SYSC_TYPE4_SOFTRESET_SHIFT 1 +#define SYSC_TYPE4_SOFTRESET_MASK (1 << SYSC_TYPE4_SOFTRESET_SHIFT) +#define SYSC_TYPE4_AUTOIDLE_SHIFT 0 +#define SYSC_TYPE4_AUTOIDLE_MASK (1 << SYSC_TYPE4_AUTOIDLE_SHIFT) + /* OCP SYSSTATUS bit shifts/masks */ #define SYSS_RESETDONE_SHIFT 0 #define SYSS_RESETDONE_MASK (1 << SYSS_RESETDONE_SHIFT) --- linux-3.13.0.orig/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c +++ linux-3.13.0/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c @@ -209,6 +209,7 @@ .sysc_offs = 0x84, .syss_offs = 0x88, .sysc_flags = SYSS_HAS_RESET_STATUS, + .sysc_fields = &omap_hwmod_sysc_type4, }; static struct omap_hwmod_class am33xx_aes0_hwmod_class = { --- linux-3.13.0.orig/arch/arm/mach-omap2/omap_hwmod_44xx_data.c +++ linux-3.13.0/arch/arm/mach-omap2/omap_hwmod_44xx_data.c @@ -4783,6 +4783,59 @@ .user = OCP_USER_MPU | OCP_USER_SDMA, }; +/* + Crypto modules AES0/1 belong to: + PD_L4_PER power domain + CD_L4_SEC clock domain + On the L3, the AES modules are mapped to + L3_CLK2: Peripherals and multimedia sub clock domain +*/ + +static struct omap_hwmod_class_sysconfig omap4_aes1_sysc = { + .rev_offs = 0x80, + .sysc_offs = 0x84, + .syss_offs = 0x88, + .sysc_flags = SYSS_HAS_RESET_STATUS, + .sysc_fields = &omap_hwmod_sysc_type4, +}; + +static struct omap_hwmod_class omap4_aes1_hwmod_class = { + .name = "aes1", + .sysc = &omap4_aes1_sysc, +}; + +static struct omap_hwmod omap4_aes1_hwmod = { + .name = "aes", + .class = &omap4_aes1_hwmod_class, + .clkdm_name = "l4_secure_clkdm", + .main_clk = "aes1_fck", + .prcm = { + .omap4 = { + .clkctrl_offs = OMAP4_CM_L4SEC_AES1_CLKCTRL_OFFSET, + .context_offs = OMAP4_RM_L4SEC_AES1_CONTEXT_OFFSET, + .modulemode = MODULEMODE_SWCTRL, + }, + }, +}; + +/* l3_main_2 -> aes1 */ +static struct omap_hwmod_addr_space omap4_aes1_addrs[] = { + { + .pa_start = 0x4B500000, + .pa_end = 0x4B500000 + SZ_1M - 1, + .flags = ADDR_TYPE_RT + }, + { } +}; + +static struct omap_hwmod_ocp_if omap4_l3_main_2__aes1 = { + .master = &omap44xx_l3_main_2_hwmod, + .slave = &omap4_aes1_hwmod, + .clk = "aes1_fck", + .addr = omap4_aes1_addrs, + .user = OCP_USER_MPU | OCP_USER_SDMA, +}; + static struct omap_hwmod_ocp_if *omap44xx_hwmod_ocp_ifs[] __initdata = { &omap44xx_l3_main_1__dmm, &omap44xx_mpu__dmm, @@ -4937,6 +4990,7 @@ &omap44xx_l4_abe__wd_timer3_dma, &omap44xx_mpu__emif1, &omap44xx_mpu__emif2, + &omap4_l3_main_2__aes1, NULL, }; --- linux-3.13.0.orig/arch/arm/mach-omap2/omap_hwmod_common_data.c +++ linux-3.13.0/arch/arm/mach-omap2/omap_hwmod_common_data.c @@ -59,6 +59,16 @@ .sidle_shift = SYSC_TYPE3_SIDLEMODE_SHIFT, }; +/** + * struct omap_hwmod_sysc_type4 - TYPE4 sysconfig scheme. + * Used by some IPs on AM33xx + */ +struct omap_hwmod_sysc_fields omap_hwmod_sysc_type4 = { + .sidle_shift = SYSC_TYPE4_SIDLEMODE_SHIFT, + .srst_shift = SYSC_TYPE4_SOFTRESET_SHIFT, + .autoidle_shift = SYSC_TYPE4_AUTOIDLE_SHIFT, +}; + struct omap_dss_dispc_dev_attr omap2_3_dss_dispc_dev_attr = { .manager_count = 2, .has_framedonetv_irq = 0 --- linux-3.13.0.orig/arch/arm/mach-pxa/am300epd.c +++ linux-3.13.0/arch/arm/mach-pxa/am300epd.c @@ -30,6 +30,7 @@ #include #include +#include #include #include "generic.h" --- linux-3.13.0.orig/arch/arm/mach-pxa/include/mach/balloon3.h +++ linux-3.13.0/arch/arm/mach-pxa/include/mach/balloon3.h @@ -14,6 +14,8 @@ #ifndef ASM_ARCH_BALLOON3_H #define ASM_ARCH_BALLOON3_H +#include "irqs.h" /* PXA_NR_BUILTIN_GPIO */ + enum balloon3_features { BALLOON3_FEATURE_OHCI, BALLOON3_FEATURE_MMC, --- linux-3.13.0.orig/arch/arm/mach-pxa/include/mach/corgi.h +++ linux-3.13.0/arch/arm/mach-pxa/include/mach/corgi.h @@ -13,6 +13,7 @@ #ifndef __ASM_ARCH_CORGI_H #define __ASM_ARCH_CORGI_H 1 +#include "irqs.h" /* PXA_NR_BUILTIN_GPIO */ /* * Corgi (Non Standard) GPIO Definitions --- linux-3.13.0.orig/arch/arm/mach-pxa/include/mach/csb726.h +++ linux-3.13.0/arch/arm/mach-pxa/include/mach/csb726.h @@ -11,6 +11,8 @@ #ifndef CSB726_H #define CSB726_H +#include "irqs.h" /* PXA_GPIO_TO_IRQ */ + #define CSB726_GPIO_IRQ_LAN 52 #define CSB726_GPIO_IRQ_SM501 53 #define CSB726_GPIO_MMC_DETECT 100 --- linux-3.13.0.orig/arch/arm/mach-pxa/include/mach/gumstix.h +++ linux-3.13.0/arch/arm/mach-pxa/include/mach/gumstix.h @@ -6,6 +6,7 @@ * published by the Free Software Foundation. */ +#include "irqs.h" /* PXA_GPIO_TO_IRQ */ /* BTRESET - Reset line to Bluetooth module, active low signal. */ #define GPIO_GUMSTIX_BTRESET 7 --- linux-3.13.0.orig/arch/arm/mach-pxa/include/mach/idp.h +++ linux-3.13.0/arch/arm/mach-pxa/include/mach/idp.h @@ -23,6 +23,7 @@ * IDP hardware. */ +#include "irqs.h" /* PXA_GPIO_TO_IRQ */ #define IDP_FLASH_PHYS (PXA_CS0_PHYS) #define IDP_ALT_FLASH_PHYS (PXA_CS1_PHYS) --- linux-3.13.0.orig/arch/arm/mach-pxa/include/mach/palmld.h +++ linux-3.13.0/arch/arm/mach-pxa/include/mach/palmld.h @@ -13,6 +13,8 @@ #ifndef _INCLUDE_PALMLD_H_ #define _INCLUDE_PALMLD_H_ +#include "irqs.h" /* PXA_GPIO_TO_IRQ */ + /** HERE ARE GPIOs **/ /* GPIOs */ --- linux-3.13.0.orig/arch/arm/mach-pxa/include/mach/palmt5.h +++ linux-3.13.0/arch/arm/mach-pxa/include/mach/palmt5.h @@ -15,6 +15,8 @@ #ifndef _INCLUDE_PALMT5_H_ #define _INCLUDE_PALMT5_H_ +#include "irqs.h" /* PXA_GPIO_TO_IRQ */ + /** HERE ARE GPIOs **/ /* GPIOs */ --- linux-3.13.0.orig/arch/arm/mach-pxa/include/mach/palmtc.h +++ linux-3.13.0/arch/arm/mach-pxa/include/mach/palmtc.h @@ -16,6 +16,8 @@ #ifndef _INCLUDE_PALMTC_H_ #define _INCLUDE_PALMTC_H_ +#include "irqs.h" /* PXA_GPIO_TO_IRQ */ + /** HERE ARE GPIOs **/ /* GPIOs */ --- linux-3.13.0.orig/arch/arm/mach-pxa/include/mach/palmtx.h +++ linux-3.13.0/arch/arm/mach-pxa/include/mach/palmtx.h @@ -16,6 +16,8 @@ #ifndef _INCLUDE_PALMTX_H_ #define _INCLUDE_PALMTX_H_ +#include "irqs.h" /* PXA_GPIO_TO_IRQ */ + /** HERE ARE GPIOs **/ /* GPIOs */ --- linux-3.13.0.orig/arch/arm/mach-pxa/include/mach/pcm027.h +++ linux-3.13.0/arch/arm/mach-pxa/include/mach/pcm027.h @@ -23,6 +23,8 @@ * Definitions of CPU card resources only */ +#include "irqs.h" /* PXA_GPIO_TO_IRQ */ + /* phyCORE-PXA270 (PCM027) Interrupts */ #define PCM027_IRQ(x) (IRQ_BOARD_START + (x)) #define PCM027_BTDET_IRQ PCM027_IRQ(0) --- linux-3.13.0.orig/arch/arm/mach-pxa/include/mach/pcm990_baseboard.h +++ linux-3.13.0/arch/arm/mach-pxa/include/mach/pcm990_baseboard.h @@ -20,6 +20,7 @@ */ #include +#include "irqs.h" /* PXA_GPIO_TO_IRQ */ /* * definitions relevant only when the PCM-990 --- linux-3.13.0.orig/arch/arm/mach-pxa/include/mach/poodle.h +++ linux-3.13.0/arch/arm/mach-pxa/include/mach/poodle.h @@ -15,6 +15,8 @@ #ifndef __ASM_ARCH_POODLE_H #define __ASM_ARCH_POODLE_H 1 +#include "irqs.h" /* PXA_GPIO_TO_IRQ */ + /* * GPIOs */ --- linux-3.13.0.orig/arch/arm/mach-pxa/include/mach/spitz.h +++ linux-3.13.0/arch/arm/mach-pxa/include/mach/spitz.h @@ -15,8 +15,8 @@ #define __ASM_ARCH_SPITZ_H 1 #endif +#include "irqs.h" /* PXA_NR_BUILTIN_GPIO, PXA_GPIO_TO_IRQ */ #include -#include /* Spitz/Akita GPIOs */ --- linux-3.13.0.orig/arch/arm/mach-pxa/include/mach/tosa.h +++ linux-3.13.0/arch/arm/mach-pxa/include/mach/tosa.h @@ -13,6 +13,8 @@ #ifndef _ASM_ARCH_TOSA_H_ #define _ASM_ARCH_TOSA_H_ 1 +#include "irqs.h" /* PXA_NR_BUILTIN_GPIO */ + /* TOSA Chip selects */ #define TOSA_LCDC_PHYS PXA_CS4_PHYS /* Internel Scoop */ --- linux-3.13.0.orig/arch/arm/mach-pxa/include/mach/trizeps4.h +++ linux-3.13.0/arch/arm/mach-pxa/include/mach/trizeps4.h @@ -10,6 +10,8 @@ #ifndef _TRIPEPS4_H_ #define _TRIPEPS4_H_ +#include "irqs.h" /* PXA_GPIO_TO_IRQ */ + /* physical memory regions */ #define TRIZEPS4_FLASH_PHYS (PXA_CS0_PHYS) /* Flash region */ #define TRIZEPS4_DISK_PHYS (PXA_CS1_PHYS) /* Disk On Chip region */ --- linux-3.13.0.orig/arch/arm/mach-sa1100/include/mach/collie.h +++ linux-3.13.0/arch/arm/mach-sa1100/include/mach/collie.h @@ -13,6 +13,8 @@ #ifndef __ASM_ARCH_COLLIE_H #define __ASM_ARCH_COLLIE_H +#include "hardware.h" /* Gives GPIO_MAX */ + extern void locomolcd_power(int on); #define COLLIE_SCOOP_GPIO_BASE (GPIO_MAX + 1) --- linux-3.13.0.orig/arch/arm/mach-tegra/tegra.c +++ linux-3.13.0/arch/arm/mach-tegra/tegra.c @@ -74,10 +74,20 @@ static void __init tegra_init_cache(void) { #ifdef CONFIG_CACHE_L2X0 + static const struct of_device_id pl310_ids[] __initconst = { + { .compatible = "arm,pl310-cache", }, + {} + }; + + struct device_node *np; int ret; void __iomem *p = IO_ADDRESS(TEGRA_ARM_PERIF_BASE) + 0x3000; u32 aux_ctrl, cache_type; + np = of_find_matching_node(NULL, pl310_ids); + if (!np) + return; + cache_type = readl(p + L2X0_CACHE_TYPE); aux_ctrl = (cache_type & 0x700) << (17-8); aux_ctrl |= 0x7C400001; --- linux-3.13.0.orig/arch/arm/mm/Kconfig +++ linux-3.13.0/arch/arm/mm/Kconfig @@ -446,7 +446,6 @@ config CPU_32v6 bool - select CPU_USE_DOMAINS if CPU_V6 && MMU select TLS_REG_EMUL if !CPU_32v6K && !MMU config CPU_32v6K @@ -671,7 +670,7 @@ config SWP_EMULATE bool "Emulate SWP/SWPB instructions" - depends on !CPU_USE_DOMAINS && CPU_V7 + depends on CPU_V7 default y if SMP select HAVE_PROC_CPU if PROC_FS help --- linux-3.13.0.orig/arch/arm/mm/dma-mapping.c +++ linux-3.13.0/arch/arm/mm/dma-mapping.c @@ -1358,7 +1358,7 @@ *handle = DMA_ERROR_CODE; size = PAGE_ALIGN(size); - if (gfp & GFP_ATOMIC) + if (!(gfp & __GFP_WAIT)) return __iommu_alloc_atomic(dev, size, handle); /* --- linux-3.13.0.orig/arch/arm/mm/init.c +++ linux-3.13.0/arch/arm/mm/init.c @@ -345,10 +345,11 @@ #endif #ifdef CONFIG_BLK_DEV_INITRD /* FDT scan will populate initrd_start */ - if (initrd_start) { + if (initrd_start && !phys_initrd_size) { phys_initrd_start = __virt_to_phys(initrd_start); phys_initrd_size = initrd_end - initrd_start; } + initrd_start = initrd_end = 0; if (phys_initrd_size && !memblock_is_region_memory(phys_initrd_start, phys_initrd_size)) { pr_err("INITRD: 0x%08llx+0x%08lx is not a memory region - disabling initrd\n", --- linux-3.13.0.orig/arch/arm/mm/mm.h +++ linux-3.13.0/arch/arm/mm/mm.h @@ -38,6 +38,7 @@ struct mem_type { pteval_t prot_pte; + pteval_t prot_pte_s2; pmdval_t prot_l1; pmdval_t prot_sect; unsigned int domain; --- linux-3.13.0.orig/arch/arm/mm/mmu.c +++ linux-3.13.0/arch/arm/mm/mmu.c @@ -231,12 +231,16 @@ #endif /* ifdef CONFIG_CPU_CP15 / else */ #define PROT_PTE_DEVICE L_PTE_PRESENT|L_PTE_YOUNG|L_PTE_DIRTY|L_PTE_XN +#define PROT_PTE_S2_DEVICE PROT_PTE_DEVICE #define PROT_SECT_DEVICE PMD_TYPE_SECT|PMD_SECT_AP_WRITE static struct mem_type mem_types[] = { [MT_DEVICE] = { /* Strongly ordered / ARMv6 shared device */ .prot_pte = PROT_PTE_DEVICE | L_PTE_MT_DEV_SHARED | L_PTE_SHARED, + .prot_pte_s2 = s2_policy(PROT_PTE_S2_DEVICE) | + s2_policy(L_PTE_S2_MT_DEV_SHARED) | + L_PTE_SHARED, .prot_l1 = PMD_TYPE_TABLE, .prot_sect = PROT_SECT_DEVICE | PMD_SECT_S, .domain = DOMAIN_IO, @@ -458,7 +462,18 @@ cp = &cache_policies[cachepolicy]; vecs_pgprot = kern_pgprot = user_pgprot = cp->pte; s2_pgprot = cp->pte_s2; - hyp_device_pgprot = s2_device_pgprot = mem_types[MT_DEVICE].prot_pte; + hyp_device_pgprot = mem_types[MT_DEVICE].prot_pte; + s2_device_pgprot = mem_types[MT_DEVICE].prot_pte_s2; + + /* + * We don't use domains on ARMv6 (since this causes problems with + * v6/v7 kernels), so we must use a separate memory type for user + * r/o, kernel r/w to map the vectors page. + */ +#ifndef CONFIG_ARM_LPAE + if (cpu_arch == CPU_ARCH_ARMv6) + vecs_pgprot |= L_PTE_MT_VECTORS; +#endif /* * ARMv6 and above have extended page tables. --- linux-3.13.0.orig/arch/arm/mm/proc-macros.S +++ linux-3.13.0/arch/arm/mm/proc-macros.S @@ -112,13 +112,9 @@ * 100x 1 0 1 r/o no acc * 10x0 1 0 1 r/o no acc * 1011 0 0 1 r/w no acc - * 110x 0 1 0 r/w r/o - * 11x0 0 1 0 r/w r/o - * 1111 0 1 1 r/w r/w - * - * If !CONFIG_CPU_USE_DOMAINS, the following permissions are changed: * 110x 1 1 1 r/o r/o * 11x0 1 1 1 r/o r/o + * 1111 0 1 1 r/w r/w */ .macro armv6_mt_table pfx \pfx\()_mt_table: @@ -137,7 +133,7 @@ .long PTE_EXT_TEX(2) @ L_PTE_MT_DEV_NONSHARED .long 0x00 @ unused .long 0x00 @ unused - .long 0x00 @ unused + .long PTE_CACHEABLE | PTE_BUFFERABLE | PTE_EXT_APX @ L_PTE_MT_VECTORS .endm .macro armv6_set_pte_ext pfx @@ -158,24 +154,21 @@ tst r1, #L_PTE_USER orrne r3, r3, #PTE_EXT_AP1 -#ifdef CONFIG_CPU_USE_DOMAINS - @ allow kernel read/write access to read-only user pages tstne r3, #PTE_EXT_APX - bicne r3, r3, #PTE_EXT_APX | PTE_EXT_AP0 -#endif + + @ user read-only -> kernel read-only + bicne r3, r3, #PTE_EXT_AP0 tst r1, #L_PTE_XN orrne r3, r3, #PTE_EXT_XN - orr r3, r3, r2 + eor r3, r3, r2 tst r1, #L_PTE_YOUNG tstne r1, #L_PTE_PRESENT moveq r3, #0 -#ifndef CONFIG_CPU_USE_DOMAINS tstne r1, #L_PTE_NONE movne r3, #0 -#endif str r3, [r0] mcr p15, 0, r0, c7, c10, 1 @ flush_pte --- linux-3.13.0.orig/arch/arm/mm/proc-v6.S +++ linux-3.13.0/arch/arm/mm/proc-v6.S @@ -208,7 +208,6 @@ mcr p15, 0, r0, c7, c14, 0 @ clean+invalidate D cache mcr p15, 0, r0, c7, c5, 0 @ invalidate I cache mcr p15, 0, r0, c7, c15, 0 @ clean+invalidate cache - mcr p15, 0, r0, c7, c10, 4 @ drain write buffer #ifdef CONFIG_MMU mcr p15, 0, r0, c8, c7, 0 @ invalidate I + D TLBs mcr p15, 0, r0, c2, c0, 2 @ TTB control register @@ -218,6 +217,8 @@ ALT_UP(orr r8, r8, #TTB_FLAGS_UP) mcr p15, 0, r8, c2, c0, 1 @ load TTB1 #endif /* CONFIG_MMU */ + mcr p15, 0, r0, c7, c10, 4 @ drain write buffer and + @ complete invalidations adr r5, v6_crval ldmia r5, {r5, r6} ARM_BE8(orr r6, r6, #1 << 25) @ big-endian page tables --- linux-3.13.0.orig/arch/arm/mm/proc-v7-2level.S +++ linux-3.13.0/arch/arm/mm/proc-v7-2level.S @@ -90,21 +90,14 @@ tst r1, #L_PTE_USER orrne r3, r3, #PTE_EXT_AP1 -#ifdef CONFIG_CPU_USE_DOMAINS - @ allow kernel read/write access to read-only user pages - tstne r3, #PTE_EXT_APX - bicne r3, r3, #PTE_EXT_APX | PTE_EXT_AP0 -#endif tst r1, #L_PTE_XN orrne r3, r3, #PTE_EXT_XN tst r1, #L_PTE_YOUNG tstne r1, #L_PTE_VALID -#ifndef CONFIG_CPU_USE_DOMAINS eorne r1, r1, #L_PTE_NONE tstne r1, #L_PTE_NONE -#endif moveq r3, #0 ARM( str r3, [r0, #2048]! ) --- linux-3.13.0.orig/arch/arm/mm/proc-v7.S +++ linux-3.13.0/arch/arm/mm/proc-v7.S @@ -351,7 +351,6 @@ 4: mov r10, #0 mcr p15, 0, r10, c7, c5, 0 @ I+BTB cache invalidate - dsb #ifdef CONFIG_MMU mcr p15, 0, r10, c8, c7, 0 @ invalidate I + D TLBs v7_ttb_setup r10, r4, r8, r5 @ TTBCR, TTBRx setup @@ -360,6 +359,7 @@ mcr p15, 0, r5, c10, c2, 0 @ write PRRR mcr p15, 0, r6, c10, c2, 1 @ write NMRR #endif + dsb @ Complete invalidations #ifndef CONFIG_ARM_THUMBEE mrc p15, 0, r0, c0, c1, 0 @ read ID_PFR0 for ThumbEE and r0, r0, #(0xf << 12) @ ThumbEE enabled field --- linux-3.13.0.orig/arch/arm/plat-orion/irq.c +++ linux-3.13.0/arch/arm/plat-orion/irq.c @@ -15,8 +15,51 @@ #include #include #include +#include #include #include +#include + +#ifdef CONFIG_MULTI_IRQ_HANDLER +/* + * Compiling with both non-DT and DT support enabled, will + * break asm irq handler used by non-DT boards. Therefore, + * we provide a C-style irq handler even for non-DT boards, + * if MULTI_IRQ_HANDLER is set. + * + * Notes: + * - this is prepared for Kirkwood and Dove only, update + * accordingly if you add Orion5x or MV78x00. + * - Orion5x uses different macro names and has only one + * set of CAUSE/MASK registers. + * - MV78x00 uses the same macro names but has a third + * set of CAUSE/MASK registers. + * + */ + +static void __iomem *orion_irq_base = IRQ_VIRT_BASE; + +asmlinkage void +__exception_irq_entry orion_legacy_handle_irq(struct pt_regs *regs) +{ + u32 stat; + + stat = readl_relaxed(orion_irq_base + IRQ_CAUSE_LOW_OFF); + stat &= readl_relaxed(orion_irq_base + IRQ_MASK_LOW_OFF); + if (stat) { + unsigned int hwirq = __fls(stat); + handle_IRQ(hwirq, regs); + return; + } + stat = readl_relaxed(orion_irq_base + IRQ_CAUSE_HIGH_OFF); + stat &= readl_relaxed(orion_irq_base + IRQ_MASK_HIGH_OFF); + if (stat) { + unsigned int hwirq = 32 + __fls(stat); + handle_IRQ(hwirq, regs); + return; + } +} +#endif void __init orion_irq_init(unsigned int irq_start, void __iomem *maskaddr) { @@ -35,6 +78,10 @@ ct->chip.irq_unmask = irq_gc_mask_set_bit; irq_setup_generic_chip(gc, IRQ_MSK(32), IRQ_GC_INIT_MASK_CACHE, IRQ_NOREQUEST, IRQ_LEVEL | IRQ_NOPROBE); + +#ifdef CONFIG_MULTI_IRQ_HANDLER + set_handle_irq(orion_legacy_handle_irq); +#endif } #ifdef CONFIG_OF --- linux-3.13.0.orig/arch/arm64/Kconfig +++ linux-3.13.0/arch/arm64/Kconfig @@ -113,6 +113,8 @@ Express). config ARCH_XGENE + select PCI + select PCI_DOMAINS bool "AppliedMicro X-Gene SOC Family" help This enables support for AppliedMicro X-Gene SOC Family @@ -124,6 +126,23 @@ config ARM_AMBA bool +config PCI + bool "PCI support" + help + Find out whether you have a PCI motherboard. PCI is the name of a + bus system, i.e. the way the CPU talks to the other stuff inside + your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or + VESA. If you have PCI, say Y, otherwise N. + +config PCI_DOMAINS + bool + depends on PCI + +config PCI_SYSCALL + def_bool PCI + +source "drivers/pci/Kconfig" +source "drivers/pci/pcie/Kconfig" endmenu menu "Kernel Features" --- linux-3.13.0.orig/arch/arm64/boot/dts/apm-mustang.dts +++ linux-3.13.0/arch/arm64/boot/dts/apm-mustang.dts @@ -17,6 +17,10 @@ model = "APM X-Gene Mustang board"; compatible = "apm,mustang", "apm,xgene-storm"; + aliases { + ethernet0 = &menet; + }; + chosen { }; memory { @@ -24,3 +28,15 @@ reg = < 0x1 0x00000000 0x0 0x80000000 >; /* Updated by bootloader */ }; }; + +&menet { + status = "ok"; +}; + +&pcie0clk { + status = "ok"; +}; + +&pcie0 { + status = "ok"; +}; --- linux-3.13.0.orig/arch/arm64/boot/dts/apm-storm.dtsi +++ linux-3.13.0/arch/arm64/boot/dts/apm-storm.dtsi @@ -103,6 +103,11 @@ #size-cells = <2>; ranges; + scu: system-clk-controller@17000000 { + compatible = "apm,xgene-scu","syscon"; + reg = <0x0 0x17000000 0x0 0x400>; + }; + clocks { #address-cells = <2>; #size-cells = <2>; @@ -118,7 +123,7 @@ compatible = "apm,xgene-pcppll-clock"; #clock-cells = <1>; clocks = <&refclk 0>; - clock-names = "pcppll"; + clock-names = "refclk"; reg = <0x0 0x17000100 0x0 0x1000>; clock-output-names = "pcppll"; type = <0>; @@ -128,7 +133,7 @@ compatible = "apm,xgene-socpll-clock"; #clock-cells = <1>; clocks = <&refclk 0>; - clock-names = "socpll"; + clock-names = "refclk"; reg = <0x0 0x17000120 0x0 0x1000>; clock-output-names = "socpll"; type = <1>; @@ -141,17 +146,22 @@ clock-names = "socplldiv2"; clock-mult = <1>; clock-div = <2>; - clock-output-names = "socplldiv2"; + clock-output-names = "socpll"; }; qmlclk: qmlclk { compatible = "apm,xgene-device-clock"; #clock-cells = <1>; clocks = <&socplldiv2 0>; - clock-names = "qmlclk"; + clock-names = "socplldiv2"; reg = <0x0 0x1703C000 0x0 0x1000>; reg-names = "csr-reg"; clock-output-names = "qmlclk"; + status = "ok"; + csr-offset = <0x0>; + csr-mask = <0x3>; + enable-offset = <0x8>; + enable-mask = <0x3>; }; ethclk: ethclk { @@ -176,8 +186,294 @@ reg-names = "csr-reg"; clock-output-names = "eth8clk"; }; + + sataphy1clk: sataphy1clk@1f21c000 { + compatible = "apm,xgene-device-clock"; + #clock-cells = <1>; + clocks = <&socplldiv2 0>; + reg = <0x0 0x1f21c000 0x0 0x1000>; + reg-names = "csr-reg"; + clock-output-names = "sataphy1clk"; + status = "disabled"; + csr-offset = <0x4>; + csr-mask = <0x00>; + enable-offset = <0x0>; + enable-mask = <0x06>; + }; + + sataphy2clk: sataphy1clk@1f22c000 { + compatible = "apm,xgene-device-clock"; + #clock-cells = <1>; + clocks = <&socplldiv2 0>; + reg = <0x0 0x1f22c000 0x0 0x1000>; + reg-names = "csr-reg"; + clock-output-names = "sataphy2clk"; + status = "ok"; + csr-offset = <0x4>; + csr-mask = <0x3a>; + enable-offset = <0x0>; + enable-mask = <0x06>; + }; + + sataphy3clk: sataphy1clk@1f23c000 { + compatible = "apm,xgene-device-clock"; + #clock-cells = <1>; + clocks = <&socplldiv2 0>; + reg = <0x0 0x1f23c000 0x0 0x1000>; + reg-names = "csr-reg"; + clock-output-names = "sataphy3clk"; + status = "ok"; + csr-offset = <0x4>; + csr-mask = <0x3a>; + enable-offset = <0x0>; + enable-mask = <0x06>; + }; + + sata01clk: sata01clk@1f21c000 { + compatible = "apm,xgene-device-clock"; + #clock-cells = <1>; + clocks = <&socplldiv2 0>; + reg = <0x0 0x1f21c000 0x0 0x1000>; + reg-names = "csr-reg"; + clock-output-names = "sata01clk"; + csr-offset = <0x4>; + csr-mask = <0x05>; + enable-offset = <0x0>; + enable-mask = <0x39>; + }; + + sata23clk: sata23clk@1f22c000 { + compatible = "apm,xgene-device-clock"; + #clock-cells = <1>; + clocks = <&socplldiv2 0>; + reg = <0x0 0x1f22c000 0x0 0x1000>; + reg-names = "csr-reg"; + clock-output-names = "sata23clk"; + csr-offset = <0x4>; + csr-mask = <0x05>; + enable-offset = <0x0>; + enable-mask = <0x39>; + }; + + sata45clk: sata45clk@1f23c000 { + compatible = "apm,xgene-device-clock"; + #clock-cells = <1>; + clocks = <&socplldiv2 0>; + reg = <0x0 0x1f23c000 0x0 0x1000>; + reg-names = "csr-reg"; + clock-output-names = "sata45clk"; + csr-offset = <0x4>; + csr-mask = <0x05>; + enable-offset = <0x0>; + enable-mask = <0x39>; + }; + + rtcclk: rtcclk@17000000 { + compatible = "apm,xgene-device-clock"; + #clock-cells = <1>; + clocks = <&socplldiv2 0>; + clock-names = "socplldiv2"; + reg = <0x0 0x17000000 0x0 0x2000>; + reg-names = "csr-reg"; + csr-offset = <0xc>; + csr-mask = <0x2>; + enable-offset = <0x10>; + enable-mask = <0x2>; + clock-output-names = "rtcclk"; + }; + + pcie0clk: pcie0clk@1f2bc000 { + status = "disabled"; + compatible = "apm,xgene-device-clock"; + #clock-cells = <1>; + clocks = <&socplldiv2 0>; + reg = <0x0 0x1f2bc000 0x0 0x1000>; + reg-names = "csr-reg"; + clock-output-names = "pcie0clk"; + }; + + pcie1clk: pcie1clk@1f2cc000 { + status = "disabled"; + compatible = "apm,xgene-device-clock"; + #clock-cells = <1>; + clocks = <&socplldiv2 0>; + reg = <0x0 0x1f2cc000 0x0 0x1000>; + reg-names = "csr-reg"; + clock-output-names = "pcie1clk"; + }; + + pcie2clk: pcie2clk@1f2dc000 { + status = "disabled"; + compatible = "apm,xgene-device-clock"; + #clock-cells = <1>; + clocks = <&socplldiv2 0>; + reg = <0x0 0x1f2dc000 0x0 0x1000>; + reg-names = "csr-reg"; + clock-output-names = "pcie2clk"; + }; + + pcie3clk: pcie3clk@1f50c000 { + status = "disabled"; + compatible = "apm,xgene-device-clock"; + #clock-cells = <1>; + clocks = <&socplldiv2 0>; + reg = <0x0 0x1f50c000 0x0 0x1000>; + reg-names = "csr-reg"; + clock-output-names = "pcie3clk"; + }; + + pcie4clk: pcie4clk@1f51c000 { + status = "disabled"; + compatible = "apm,xgene-device-clock"; + #clock-cells = <1>; + clocks = <&socplldiv2 0>; + reg = <0x0 0x1f51c000 0x0 0x1000>; + reg-names = "csr-reg"; + clock-output-names = "pcie4clk"; + }; + }; + + msi: msi@79000000 { + compatible = "xgene,gic-msi"; + reg = <0x00 0x79000000 0x0 0x900000>; + msi-available-ranges = <0x0 0x1000>; + interrupts = < 0x0 0x10 0x4 + 0x0 0x11 0x4 + 0x0 0x12 0x4 + 0x0 0x13 0x4 + 0x0 0x14 0x4 + 0x0 0x15 0x4 + 0x0 0x16 0x4 + 0x0 0x17 0x4 + 0x0 0x18 0x4 + 0x0 0x19 0x4 + 0x0 0x1a 0x4 + 0x0 0x1b 0x4 + 0x0 0x1c 0x4 + 0x0 0x1d 0x4 + 0x0 0x1e 0x4 + 0x0 0x1f 0x4>; + }; + + pcie0: pcie@1f2b0000 { + status = "disabled"; + device_type = "pci"; + compatible = "apm,xgene-pcie"; + #interrupt-cells = <1>; + #size-cells = <2>; + #address-cells = <3>; + reg = < 0x00 0x1f2b0000 0x0 0x00010000 /* Controller registers */ + 0xe0 0xd0000000 0x0 0x00200000>; /* PCI config space */ + reg-names = "csr", "cfg"; + ranges = <0x01000000 0x00 0x00000000 0xe0 0x00000000 0x00 0x00010000 /* io */ + 0x02000000 0x00 0x10000000 0xe0 0x10000000 0x00 0x80000000>; /* mem */ + ib-ranges = <0x42000000 0x40 0x00000000 0x40 0x00000000 0x40 0x00000000 /* dma */ + 0x00000000 0x0 0x79000000 0x00 0x79000000 0x0 0x00800000>; /* msi */ + interrupt-map-mask = <0x0 0x0 0x0 0x7>; + interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xc2 0x1 + 0x0 0x0 0x0 0x2 &gic 0x0 0xc3 0x1 + 0x0 0x0 0x0 0x3 &gic 0x0 0xc4 0x1 + 0x0 0x0 0x0 0x4 &gic 0x0 0xc5 0x1>; + clocks = <&pcie0clk 0>; + }; + + pcie1: pcie@1f2c0000 { + status = "disabled"; + device_type = "pci"; + compatible = "apm,xgene-pcie"; + #interrupt-cells = <1>; + #size-cells = <2>; + #address-cells = <3>; + reg = < 0x00 0x1f2c0000 0x0 0x00010000 /* Controller registers */ + 0xd0 0xd0000000 0x0 0x00200000>; /* PCI config space */ + reg-names = "csr", "cfg"; + ranges = <0x01000000 0x0 0x00000000 0xd0 0x00000000 0x00 0x00010000 /* io */ + 0x02000000 0x0 0x10000000 0xd0 0x10000000 0x00 0x80000000>; /* mem */ + ib-ranges = <0x42000000 0x40 0x00000000 0x40 0x00000000 0x40 0x00000000 /* dma */ + 0x00000000 0x0 0x79000000 0x00 0x79000000 0x0 0x00800000>; /* msi */ + interrupt-map-mask = <0x0 0x0 0x0 0x7>; + interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xc8 0x1 + 0x0 0x0 0x0 0x2 &gic 0x0 0xc9 0x1 + 0x0 0x0 0x0 0x3 &gic 0x0 0xca 0x1 + 0x0 0x0 0x0 0x4 &gic 0x0 0xcb 0x1>; + clocks = <&pcie1clk 0>; + }; + + pcie2: pcie@1f2d0000 { + status = "disabled"; + device_type = "pci"; + compatible = "apm,xgene-pcie"; + #interrupt-cells = <1>; + #size-cells = <2>; + #address-cells = <3>; + reg = < 0x00 0x1f2d0000 0x0 0x00010000 /* Controller registers */ + 0x90 0xd0000000 0x0 0x00200000>; /* PCI config space */ + reg-names = "csr", "cfg"; + ranges = <0x01000000 0x0 0x00000000 0x90 0x00000000 0x0 0x00010000 /* io */ + 0x02000000 0x0 0x10000000 0x90 0x10000000 0x0 0x80000000>; /* mem */ + ib-ranges = <0x42000000 0x40 0x00000000 0x40 0x00000000 0x40 0x00000000 /* dma */ + 0x00000000 0x0 0x79000000 0x00 0x79000000 0x0 0x00800000>; /* msi */ + interrupt-map-mask = <0x0 0x0 0x0 0x7>; + interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xce 0x1 + 0x0 0x0 0x0 0x2 &gic 0x0 0xcf 0x1 + 0x0 0x0 0x0 0x3 &gic 0x0 0xd0 0x1 + 0x0 0x0 0x0 0x4 &gic 0x0 0xd1 0x1>; + clocks = <&pcie2clk 0>; + }; + + pcie3: pcie@1f500000 { + status = "disabled"; + device_type = "pci"; + compatible = "apm,xgene-pcie"; + #interrupt-cells = <1>; + #size-cells = <2>; + #address-cells = <3>; + reg = < 0x00 0x1f500000 0x0 0x00010000 /* Controller registers */ + 0xa0 0xd0000000 0x0 0x00200000>; /* PCI config space */ + reg-names = "csr", "cfg"; + ranges = <0x01000000 0x0 0x00000000 0xa0 0x00000000 0x0 0x00010000 /* io */ + 0x02000000 0x0 0x10000000 0xa0 0x10000000 0x0 0x80000000>; /* mem */ + ib-ranges = <0x42000000 0x40 0x00000000 0x40 0x00000000 0x40 0x00000000 /* dma */ + 0x00000000 0x0 0x79000000 0x00 0x79000000 0x0 0x00800000>; /* msi */ + interrupt-map-mask = <0x0 0x0 0x0 0x7>; + interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xd4 0x1 + 0x0 0x0 0x0 0x2 &gic 0x0 0xd5 0x1 + 0x0 0x0 0x0 0x3 &gic 0x0 0xd6 0x1 + 0x0 0x0 0x0 0x4 &gic 0x0 0xd7 0x1>; + clocks = <&pcie3clk 0>; }; + pcie4: pcie@1f510000 { + status = "disabled"; + device_type = "pci"; + compatible = "apm,xgene-pcie"; + #interrupt-cells = <1>; + #size-cells = <2>; + #address-cells = <3>; + reg = < 0x00 0x1f510000 0x0 0x00010000 /* Controller registers */ + 0xc0 0xd0000000 0x0 0x00200000>; /* PCI config space */ + reg-names = "csr", "cfg"; + ranges = <0x01000000 0x0 0x00000000 0xc0 0x00000000 0x0 0x00010000 /* io */ + 0x02000000 0x0 0x10000000 0xc0 0x10000000 0x0 0x80000000>; /* mem */ + ib-ranges = <0x42000000 0x40 0x00000000 0x40 0x00000000 0x40 0x00000000 /* dma */ + 0x00000000 0x0 0x79000000 0x00 0x79000000 0x0 0x00800000>; /* msi */ + interrupt-map-mask = <0x0 0x0 0x0 0x7>; + interrupt-map = <0x0 0x0 0x0 0x1 &gic 0x0 0xda 0x1 + 0x0 0x0 0x0 0x2 &gic 0x0 0xdb 0x1 + 0x0 0x0 0x0 0x3 &gic 0x0 0xdc 0x1 + 0x0 0x0 0x0 0x4 &gic 0x0 0xdd 0x1>; + clocks = <&pcie4clk 0>; + }; + + rtc: rtc@10510000 { + device_type = "rtc"; + compatible = "apm,xgene-rtc"; + reg = <0x0 0x10510000 0x0 0x400>; + interrupts = <0x0 0x46 0x4>; + #clock-cells = <1>; + clocks = <&rtcclk 0>; + }; + serial0: serial@1c020000 { device_type = "serial"; compatible = "ns16550"; @@ -187,5 +483,124 @@ interrupt-parent = <&gic>; interrupts = <0x0 0x4c 0x4>; }; + + serial1: serial@1c021000 { + status = "disabled"; + device_type = "serial"; + compatible = "ns16550a"; + reg = <0x0 0x1c021000 0x0 0x1000>; + reg-shift = <2>; + clock-frequency = <10000000>; /* Updated by bootloader */ + interrupt-parent = <&gic>; + interrupts = <0x0 0x4d 0x4>; + }; + + reboot@17000014 { + compatible = "syscon-reboot"; + regmap = <&scu>; + offset = <0x14>; + mask = <0x1>; + }; + + phy1: phy@1f21a000 { + compatible = "apm,xgene-phy"; + reg = <0x0 0x1f21a000 0x0 0x100>; + #phy-cells = <1>; + clocks = <&sataphy1clk 0>; + status = "disabled"; + apm,tx-boost-gain = <30 30 30 30 30 30>; + apm,tx-eye-tuning = <2 10 10 2 10 10>; + }; + + phy2: phy@1f22a000 { + compatible = "apm,xgene-phy"; + reg = <0x0 0x1f22a000 0x0 0x100>; + #phy-cells = <1>; + clocks = <&sataphy2clk 0>; + status = "ok"; + apm,tx-boost-gain = <30 30 30 30 30 30>; + apm,tx-eye-tuning = <1 10 10 2 10 10>; + }; + + phy3: phy@1f23a000 { + compatible = "apm,xgene-phy"; + reg = <0x0 0x1f23a000 0x0 0x100>; + #phy-cells = <1>; + clocks = <&sataphy3clk 0>; + status = "ok"; + apm,tx-boost-gain = <31 31 31 31 31 31>; + apm,tx-eye-tuning = <2 10 10 2 10 10>; + }; + + sata1: sata@1a000000 { + compatible = "apm,xgene-ahci"; + reg = <0x0 0x1a000000 0x0 0x1000>, + <0x0 0x1f210000 0x0 0x1000>, + <0x0 0x1f21d000 0x0 0x1000>, + <0x0 0x1f21e000 0x0 0x1000>, + <0x0 0x1f217000 0x0 0x1000>; + interrupts = <0x0 0x86 0x4>; + status = "disabled"; + clocks = <&sata01clk 0>; + phys = <&phy1 0>; + phy-names = "sata-phy"; + }; + + sata2: sata@1a400000 { + compatible = "apm,xgene-ahci"; + reg = <0x0 0x1a400000 0x0 0x1000>, + <0x0 0x1f220000 0x0 0x1000>, + <0x0 0x1f22d000 0x0 0x1000>, + <0x0 0x1f22e000 0x0 0x1000>, + <0x0 0x1f227000 0x0 0x1000>; + interrupts = <0x0 0x87 0x4>; + status = "ok"; + clocks = <&sata23clk 0>; + phys = <&phy2 0>; + phy-names = "sata-phy"; + }; + + sata3: sata@1a800000 { + compatible = "apm,xgene-ahci"; + reg = <0x0 0x1a800000 0x0 0x1000>, + <0x0 0x1f230000 0x0 0x1000>, + <0x0 0x1f23d000 0x0 0x1000>, + <0x0 0x1f23e000 0x0 0x1000>; + interrupts = <0x0 0x88 0x4>; + status = "ok"; + clocks = <&sata45clk 0>; + phys = <&phy3 0>; + phy-names = "sata-phy"; + }; + + qmlite: qmtm@17030000 { + compatible = "apm,xgene-qmtm-lite"; + reg = <0x0 0x17030000 0x0 0x10000>, + <0x0 0x10000000 0x0 0x400000>; + slave-name = "CPU_QMTM3"; + interrupts = <0x0 0x40 0x4>, + <0x0 0x3c 0x4>; + status = "ok"; + #clock-cells = <1>; + clocks = <&qmlclk 0>; + }; + + menet: ethernet@17020000 { + compatible = "apm,xgene-enet"; + status = "disabled"; + reg = <0x0 0x17020000 0x0 0x30>, + <0x0 0x17020000 0x0 0x10000>, + <0x0 0x17020000 0x0 0x20>; + slave-name = "RGMII"; + interrupts = <0x0 0x38 0x4>, + <0x0 0x39 0x4>, + <0x0 0x3a 0x4>; + #clock-cells = <1>; + clocks = <ð8clk 0>; + local-mac-address = <0x0 0x11 0x3a 0x8a 0x5a 0x78>; + max-frame-size = <0x233a>; + phyid = <3>; + phy-mode = "rgmii"; + }; }; }; --- linux-3.13.0.orig/arch/arm64/include/asm/atomic.h +++ linux-3.13.0/arch/arm64/include/asm/atomic.h @@ -64,7 +64,7 @@ int result; asm volatile("// atomic_add_return\n" -"1: ldaxr %w0, %2\n" +"1: ldxr %w0, %2\n" " add %w0, %w0, %w3\n" " stlxr %w1, %w0, %2\n" " cbnz %w1, 1b" @@ -72,6 +72,7 @@ : "Ir" (i) : "cc", "memory"); + smp_mb(); return result; } @@ -96,7 +97,7 @@ int result; asm volatile("// atomic_sub_return\n" -"1: ldaxr %w0, %2\n" +"1: ldxr %w0, %2\n" " sub %w0, %w0, %w3\n" " stlxr %w1, %w0, %2\n" " cbnz %w1, 1b" @@ -104,6 +105,7 @@ : "Ir" (i) : "cc", "memory"); + smp_mb(); return result; } @@ -112,17 +114,20 @@ unsigned long tmp; int oldval; + smp_mb(); + asm volatile("// atomic_cmpxchg\n" -"1: ldaxr %w1, %2\n" +"1: ldxr %w1, %2\n" " cmp %w1, %w3\n" " b.ne 2f\n" -" stlxr %w0, %w4, %2\n" +" stxr %w0, %w4, %2\n" " cbnz %w0, 1b\n" "2:" : "=&r" (tmp), "=&r" (oldval), "+Q" (ptr->counter) : "Ir" (old), "r" (new) : "cc", "memory"); + smp_mb(); return oldval; } @@ -183,7 +188,7 @@ unsigned long tmp; asm volatile("// atomic64_add_return\n" -"1: ldaxr %0, %2\n" +"1: ldxr %0, %2\n" " add %0, %0, %3\n" " stlxr %w1, %0, %2\n" " cbnz %w1, 1b" @@ -191,6 +196,7 @@ : "Ir" (i) : "cc", "memory"); + smp_mb(); return result; } @@ -215,7 +221,7 @@ unsigned long tmp; asm volatile("// atomic64_sub_return\n" -"1: ldaxr %0, %2\n" +"1: ldxr %0, %2\n" " sub %0, %0, %3\n" " stlxr %w1, %0, %2\n" " cbnz %w1, 1b" @@ -223,6 +229,7 @@ : "Ir" (i) : "cc", "memory"); + smp_mb(); return result; } @@ -231,17 +238,20 @@ long oldval; unsigned long res; + smp_mb(); + asm volatile("// atomic64_cmpxchg\n" -"1: ldaxr %1, %2\n" +"1: ldxr %1, %2\n" " cmp %1, %3\n" " b.ne 2f\n" -" stlxr %w0, %4, %2\n" +" stxr %w0, %4, %2\n" " cbnz %w0, 1b\n" "2:" : "=&r" (res), "=&r" (oldval), "+Q" (ptr->counter) : "Ir" (old), "r" (new) : "cc", "memory"); + smp_mb(); return oldval; } @@ -253,11 +263,12 @@ unsigned long tmp; asm volatile("// atomic64_dec_if_positive\n" -"1: ldaxr %0, %2\n" +"1: ldxr %0, %2\n" " subs %0, %0, #1\n" " b.mi 2f\n" " stlxr %w1, %0, %2\n" " cbnz %w1, 1b\n" +" dmb ish\n" "2:" : "=&r" (result), "=&r" (tmp), "+Q" (v->counter) : --- linux-3.13.0.orig/arch/arm64/include/asm/cacheflush.h +++ linux-3.13.0/arch/arm64/include/asm/cacheflush.h @@ -116,6 +116,7 @@ static inline void __flush_icache_all(void) { asm("ic ialluis"); + dsb(); } #define flush_dcache_mmap_lock(mapping) \ --- linux-3.13.0.orig/arch/arm64/include/asm/cmpxchg.h +++ linux-3.13.0/arch/arm64/include/asm/cmpxchg.h @@ -29,7 +29,7 @@ switch (size) { case 1: asm volatile("// __xchg1\n" - "1: ldaxrb %w0, %2\n" + "1: ldxrb %w0, %2\n" " stlxrb %w1, %w3, %2\n" " cbnz %w1, 1b\n" : "=&r" (ret), "=&r" (tmp), "+Q" (*(u8 *)ptr) @@ -38,7 +38,7 @@ break; case 2: asm volatile("// __xchg2\n" - "1: ldaxrh %w0, %2\n" + "1: ldxrh %w0, %2\n" " stlxrh %w1, %w3, %2\n" " cbnz %w1, 1b\n" : "=&r" (ret), "=&r" (tmp), "+Q" (*(u16 *)ptr) @@ -47,7 +47,7 @@ break; case 4: asm volatile("// __xchg4\n" - "1: ldaxr %w0, %2\n" + "1: ldxr %w0, %2\n" " stlxr %w1, %w3, %2\n" " cbnz %w1, 1b\n" : "=&r" (ret), "=&r" (tmp), "+Q" (*(u32 *)ptr) @@ -56,7 +56,7 @@ break; case 8: asm volatile("// __xchg8\n" - "1: ldaxr %0, %2\n" + "1: ldxr %0, %2\n" " stlxr %w1, %3, %2\n" " cbnz %w1, 1b\n" : "=&r" (ret), "=&r" (tmp), "+Q" (*(u64 *)ptr) @@ -67,6 +67,7 @@ BUILD_BUG(); } + smp_mb(); return ret; } --- linux-3.13.0.orig/arch/arm64/include/asm/dma-mapping.h +++ linux-3.13.0/arch/arm64/include/asm/dma-mapping.h @@ -26,8 +26,6 @@ #include #include -#define ARCH_HAS_DMA_GET_REQUIRED_MASK - #define DMA_ERROR_CODE (~(dma_addr_t)0) extern struct dma_map_ops *dma_ops; --- linux-3.13.0.orig/arch/arm64/include/asm/dma.h +++ linux-3.13.0/arch/arm64/include/asm/dma.h @@ -0,0 +1,18 @@ +/* + * Based on linux/arch/arm/include/asm/dma.h + */ +#ifndef __ASM_ARM_DMA_H +#define __ASM_ARM_DMA_H + +/* + * This is the maximum virtual address which can be DMA'd from. + */ +#define MAX_DMA_ADDRESS (~0ULL) + +#ifdef CONFIG_PCI +extern int isa_dma_bridge_buggy; +#else +#define isa_dma_bridge_buggy (0) +#endif + +#endif /* __ASM_ARM_DMA_H */ --- linux-3.13.0.orig/arch/arm64/include/asm/futex.h +++ linux-3.13.0/arch/arm64/include/asm/futex.h @@ -24,10 +24,11 @@ #define __futex_atomic_op(insn, ret, oldval, uaddr, tmp, oparg) \ asm volatile( \ -"1: ldaxr %w1, %2\n" \ +"1: ldxr %w1, %2\n" \ insn "\n" \ "2: stlxr %w3, %w0, %2\n" \ " cbnz %w3, 1b\n" \ +" dmb ish\n" \ "3:\n" \ " .pushsection .fixup,\"ax\"\n" \ "4: mov %w0, %w5\n" \ @@ -110,11 +111,12 @@ return -EFAULT; asm volatile("// futex_atomic_cmpxchg_inatomic\n" -"1: ldaxr %w1, %2\n" +"1: ldxr %w1, %2\n" " sub %w3, %w1, %w4\n" " cbnz %w3, 3f\n" "2: stlxr %w3, %w5, %2\n" " cbnz %w3, 1b\n" +" dmb ish\n" "3:\n" " .pushsection .fixup,\"ax\"\n" "4: mov %w0, %w6\n" --- linux-3.13.0.orig/arch/arm64/include/asm/io.h +++ linux-3.13.0/arch/arm64/include/asm/io.h @@ -118,10 +118,27 @@ #define writeq(v,c) ({ __iowmb(); writeq_relaxed((v),(c)); }) /* + * A typesafe __io() helper + */ +static inline void __iomem *__typesafe_io(unsigned long addr) +{ + return (void __iomem *)addr; +} + +/* * I/O port access primitives. */ -#define IO_SPACE_LIMIT 0xffff #define PCI_IOBASE ((void __iomem *)(MODULES_VADDR - SZ_2M)) +#if defined(CONFIG_PCI) +#define IO_SPACE_LIMIT ((resource_size_t)0xffffffff) +#define __io(a) __typesafe_io((unsigned long)PCI_IOBASE + \ + ((a) & IO_SPACE_LIMIT)) +#else +#define __io(a) __typesafe_io((a) & IO_SPACE_LIMIT) +#endif +extern void __iomem *ioport_map(unsigned long port, unsigned int nr); +extern void ioport_unmap(void __iomem *addr); +extern int pci_ioremap_io(unsigned int offset, phys_addr_t phys_addr); static inline u8 inb(unsigned long addr) { --- linux-3.13.0.orig/arch/arm64/include/asm/kvm_arm.h +++ linux-3.13.0/arch/arm64/include/asm/kvm_arm.h @@ -62,6 +62,7 @@ * RW: 64bit by default, can be overriden for 32bit VMs * TAC: Trap ACTLR * TSC: Trap SMC + * TVM: Trap VM ops (until M+C set in SCTLR_EL1) * TSW: Trap cache operations by set/way * TWE: Trap WFE * TWI: Trap WFI @@ -74,7 +75,7 @@ * SWIO: Turn set/way invalidates into set/way clean+invalidate */ #define HCR_GUEST_FLAGS (HCR_TSC | HCR_TSW | HCR_TWE | HCR_TWI | HCR_VM | \ - HCR_BSU_IS | HCR_FB | HCR_TAC | \ + HCR_TVM | HCR_BSU_IS | HCR_FB | HCR_TAC | \ HCR_AMO | HCR_IMO | HCR_FMO | \ HCR_SWIO | HCR_TIDCP | HCR_RW) #define HCR_VIRT_EXCP_MASK (HCR_VA | HCR_VI | HCR_VF) --- linux-3.13.0.orig/arch/arm64/include/asm/kvm_asm.h +++ linux-3.13.0/arch/arm64/include/asm/kvm_asm.h @@ -79,7 +79,8 @@ #define c13_TID_URW (TPIDR_EL0 * 2) /* Thread ID, User R/W */ #define c13_TID_URO (TPIDRRO_EL0 * 2)/* Thread ID, User R/O */ #define c13_TID_PRIV (TPIDR_EL1 * 2) /* Thread ID, Privileged */ -#define c10_AMAIR (AMAIR_EL1 * 2) /* Aux Memory Attr Indirection Reg */ +#define c10_AMAIR0 (AMAIR_EL1 * 2) /* Aux Memory Attr Indirection Reg */ +#define c10_AMAIR1 (c10_AMAIR0 + 1)/* Aux Memory Attr Indirection Reg */ #define c14_CNTKCTL (CNTKCTL_EL1 * 2) /* Timer Control Register (PL1) */ #define NR_CP15_REGS (NR_SYS_REGS * 2) --- linux-3.13.0.orig/arch/arm64/include/asm/kvm_host.h +++ linux-3.13.0/arch/arm64/include/asm/kvm_host.h @@ -26,7 +26,12 @@ #include #include -#define KVM_MAX_VCPUS 4 +#if defined(CONFIG_KVM_ARM_MAX_VCPUS) +#define KVM_MAX_VCPUS CONFIG_KVM_ARM_MAX_VCPUS +#else +#define KVM_MAX_VCPUS 0 +#endif + #define KVM_USER_MEM_SLOTS 32 #define KVM_PRIVATE_MEM_SLOTS 4 #define KVM_COALESCED_MMIO_PAGE_OFFSET 1 --- linux-3.13.0.orig/arch/arm64/include/asm/kvm_mmu.h +++ linux-3.13.0/arch/arm64/include/asm/kvm_mmu.h @@ -106,7 +106,6 @@ return true; } -static inline void kvm_clean_dcache_area(void *addr, size_t size) {} static inline void kvm_clean_pgd(pgd_t *pgd) {} static inline void kvm_clean_pmd_entry(pmd_t *pmd) {} static inline void kvm_clean_pte(pte_t *pte) {} @@ -122,11 +121,25 @@ pmd_val(*pmd) |= PMD_S2_RDWR; } +#define kvm_pgd_addr_end(addr, end) pgd_addr_end(addr, end) +#define kvm_pud_addr_end(addr, end) pud_addr_end(addr, end) +#define kvm_pmd_addr_end(addr, end) pmd_addr_end(addr, end) + struct kvm; -static inline void coherent_icache_guest_page(struct kvm *kvm, hva_t hva, - unsigned long size) +#define kvm_flush_dcache_to_poc(a,l) __flush_dcache_area((a), (l)) + +static inline bool vcpu_has_cache_enabled(struct kvm_vcpu *vcpu) +{ + return (vcpu_sys_reg(vcpu, SCTLR_EL1) & 0b101) == 0b101; +} + +static inline void coherent_cache_guest_page(struct kvm_vcpu *vcpu, hva_t hva, + unsigned long size) { + if (!vcpu_has_cache_enabled(vcpu)) + kvm_flush_dcache_to_poc((void *)hva, size); + if (!icache_is_aliasing()) { /* PIPT */ flush_icache_range(hva, hva + size); } else if (!icache_is_aivivt()) { /* non ASID-tagged VIVT */ @@ -135,7 +148,7 @@ } } -#define kvm_flush_dcache_to_poc(a,l) __flush_dcache_area((a), (l)) +void stage2_flush_vm(struct kvm *kvm); #endif /* __ASSEMBLY__ */ #endif /* __ARM64_KVM_MMU_H__ */ --- linux-3.13.0.orig/arch/arm64/include/asm/msi_bitmap.h +++ linux-3.13.0/arch/arm64/include/asm/msi_bitmap.h @@ -0,0 +1,36 @@ +#ifndef MSI_BITMAP_H +#define MSI_BITMAP_H + +/* + * Copyright 2008, Michael Ellerman, IBM Corporation. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; version 2 of the + * License. + * + * Borrowed from powerpc arch + */ + +#include +#include + +struct msi_bitmap { + struct device_node *of_node; + unsigned long *bitmap; + spinlock_t lock; + unsigned int irq_count; +}; + +int msi_bitmap_alloc_hwirqs(struct msi_bitmap *bmp, int num); +void msi_bitmap_free_hwirqs(struct msi_bitmap *bmp, unsigned int offset, + unsigned int num); +void msi_bitmap_reserve_hwirq(struct msi_bitmap *bmp, unsigned int hwirq); + +int msi_bitmap_reserve_dt_hwirqs(struct msi_bitmap *bmp); + +int msi_bitmap_alloc(struct msi_bitmap *bmp, unsigned int irq_count, + struct device_node *of_node); +void msi_bitmap_free(struct msi_bitmap *bmp); + +#endif /* MSI_BITMAP_H */ --- linux-3.13.0.orig/arch/arm64/include/asm/pci.h +++ linux-3.13.0/arch/arm64/include/asm/pci.h @@ -0,0 +1,74 @@ +/* + * Based on arch/arm/include/asm/pci.h + */ +#ifndef ASMARM_PCI_H +#define ASMARM_PCI_H + +#ifdef __KERNEL__ +#include +#include + +#include /* for pci_sys_data */ + +extern unsigned long pcibios_min_io; +#define PCIBIOS_MIN_IO pcibios_min_io +extern unsigned long pcibios_min_mem; +#define PCIBIOS_MIN_MEM pcibios_min_mem + +static inline int pcibios_assign_all_busses(void) +{ + return pci_has_flag(PCI_REASSIGN_ALL_RSRC); +} + +#ifdef CONFIG_PCI_DOMAINS +static inline int pci_domain_nr(struct pci_bus *bus) +{ + struct pci_sys_data *root = bus->sysdata; + + return root->domain; +} + +static inline int pci_proc_domain(struct pci_bus *bus) +{ + return pci_domain_nr(bus); +} +#endif /* CONFIG_PCI_DOMAINS */ + +static inline void pcibios_penalize_isa_irq(int irq, int active) +{ + /* We don't do dynamic PCI IRQ allocation */ +} + +/* + * The PCI address space does equal the physical memory address space. + * The networking and block device layers use this boolean for bounce + * buffer decisions. + */ +#define PCI_DMA_BUS_IS_PHYS (1) + +#ifdef CONFIG_PCI +static inline void pci_dma_burst_advice(struct pci_dev *pdev, + enum pci_dma_burst_strategy *strat, + unsigned long *strategy_parameter) +{ + *strat = PCI_DMA_BURST_INFINITY; + *strategy_parameter = ~0UL; +} +#endif + +#define HAVE_PCI_MMAP +extern int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma, + enum pci_mmap_state mmap_state, + int write_combine); + +/* + * Dummy implementation; always return 0. + */ +static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel) +{ + return 0; +} + +#endif /* __KERNEL__ */ + +#endif --- linux-3.13.0.orig/arch/arm64/include/asm/pcibios.h +++ linux-3.13.0/arch/arm64/include/asm/pcibios.h @@ -0,0 +1,98 @@ +/* + * Based on arch/arm/include/asm/mach/pci.h + * + * Copyright (C) 2000 Russell King + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#ifndef __ASM_PCIBIOS_H +#define __ASM_PCIBIOS_H + +#include + +struct pci_sys_data; +struct pci_ops; +struct pci_bus; +struct device; + +struct hw_pci { +#ifdef CONFIG_PCI_DOMAINS + int domain; +#endif + struct pci_ops *ops; + int nr_controllers; + void **private_data; + int (*setup) (int nr, struct pci_sys_data *); + struct pci_bus *(*scan) (int nr, struct pci_sys_data *); + void (*preinit) (void); + void (*postinit) (void); + u8(*swizzle) (struct pci_dev *dev, u8 *pin); + int (*map_irq) (const struct pci_dev *dev, u8 slot, u8 pin); + resource_size_t(*align_resource) (struct pci_dev *dev, + const struct resource *res, + resource_size_t start, + resource_size_t size, + resource_size_t align); + void (*add_bus) (struct pci_bus *bus); + void (*remove_bus) (struct pci_bus *bus); +}; + +/* + * Per-controller structure + */ +struct pci_sys_data { +#ifdef CONFIG_PCI_DOMAINS + int domain; +#endif + struct list_head node; + int busnr; /* primary bus number */ + u64 mem_offset; /* bus->cpu memory mapping offset */ + unsigned long io_offset; /* bus->cpu IO mapping offset */ + struct pci_bus *bus; /* PCI bus */ + struct list_head resources; /* root bus resources (apertures) */ + struct resource io_res; + char io_res_name[12]; + /* Bridge swizzling */ + u8(*swizzle) (struct pci_dev *, u8 *); + /* IRQ mapping */ + int (*map_irq) (const struct pci_dev *, u8, u8); + /* Resource alignement requirements */ + resource_size_t(*align_resource) (struct pci_dev *dev, + const struct resource *res, + resource_size_t start, + resource_size_t size, + resource_size_t align); + void (*add_bus) (struct pci_bus *bus); + void (*remove_bus) (struct pci_bus *bus); + void *private_data; /* platform controller private data */ +}; + +/* + * Call this with your hw_pci struct to initialise the PCI system. + */ +void pci_common_init_dev(struct device *, struct hw_pci *); + +/* + * Compatibility wrapper for older platforms that do not care about + * passing the parent device. + */ +static inline void pci_common_init(struct hw_pci *hw) +{ + pci_common_init_dev(NULL, hw); +} + +/* + * Setup early fixed I/O mapping. + */ +#if defined(CONFIG_PCI) +extern void pci_map_io_early(unsigned long pfn); +#else +static inline void pci_map_io_early(unsigned long pfn) +{ +} +#endif + +#endif /* __ASM_PCIBIOS_H */ --- linux-3.13.0.orig/arch/arm64/include/asm/pgtable.h +++ linux-3.13.0/arch/arm64/include/asm/pgtable.h @@ -136,10 +136,10 @@ /* * The following only work if pte_present(). Undefined behaviour otherwise. */ -#define pte_present(pte) (pte_val(pte) & (PTE_VALID | PTE_PROT_NONE)) -#define pte_dirty(pte) (pte_val(pte) & PTE_DIRTY) -#define pte_young(pte) (pte_val(pte) & PTE_AF) -#define pte_special(pte) (pte_val(pte) & PTE_SPECIAL) +#define pte_present(pte) (!!(pte_val(pte) & (PTE_VALID | PTE_PROT_NONE))) +#define pte_dirty(pte) (!!(pte_val(pte) & PTE_DIRTY)) +#define pte_young(pte) (!!(pte_val(pte) & PTE_AF)) +#define pte_special(pte) (!!(pte_val(pte) & PTE_SPECIAL)) #define pte_write(pte) (!(pte_val(pte) & PTE_RDONLY)) #define pte_exec(pte) (!(pte_val(pte) & PTE_UXN)) @@ -168,7 +168,7 @@ pte_t *ptep, pte_t pte) { if (pte_valid_user(pte)) { - if (pte_exec(pte)) + if (!pte_special(pte) && pte_exec(pte)) __sync_icache_dcache(pte, addr); if (!pte_dirty(pte)) pte = pte_wrprotect(pte); @@ -253,11 +253,11 @@ * Mark the prot value as uncacheable and unbufferable. */ #define pgprot_noncached(prot) \ - __pgprot_modify(prot, PTE_ATTRINDX_MASK, PTE_ATTRINDX(MT_DEVICE_nGnRnE)) + __pgprot_modify(prot, PTE_ATTRINDX_MASK, PTE_ATTRINDX(MT_DEVICE_nGnRnE) | PTE_PXN | PTE_UXN) #define pgprot_writecombine(prot) \ - __pgprot_modify(prot, PTE_ATTRINDX_MASK, PTE_ATTRINDX(MT_NORMAL_NC)) + __pgprot_modify(prot, PTE_ATTRINDX_MASK, PTE_ATTRINDX(MT_NORMAL_NC) | PTE_PXN | PTE_UXN) #define pgprot_dmacoherent(prot) \ - __pgprot_modify(prot, PTE_ATTRINDX_MASK, PTE_ATTRINDX(MT_NORMAL_NC)) + __pgprot_modify(prot, PTE_ATTRINDX_MASK, PTE_ATTRINDX(MT_NORMAL_NC) | PTE_PXN | PTE_UXN) #define __HAVE_PHYS_MEM_ACCESS_PROT struct file; extern pgprot_t phys_mem_access_prot(struct file *file, unsigned long pfn, --- linux-3.13.0.orig/arch/arm64/include/uapi/asm/kvm.h +++ linux-3.13.0/arch/arm64/include/uapi/asm/kvm.h @@ -55,8 +55,9 @@ #define KVM_ARM_TARGET_AEM_V8 0 #define KVM_ARM_TARGET_FOUNDATION_V8 1 #define KVM_ARM_TARGET_CORTEX_A57 2 +#define KVM_ARM_TARGET_XGENE_POTENZA 3 -#define KVM_ARM_NUM_TARGETS 3 +#define KVM_ARM_NUM_TARGETS 4 /* KVM_ARM_SET_DEVICE_ADDR ioctl id encoding */ #define KVM_ARM_DEVICE_TYPE_SHIFT 0 --- linux-3.13.0.orig/arch/arm64/kernel/Makefile +++ linux-3.13.0/arch/arm64/kernel/Makefile @@ -19,6 +19,8 @@ arm64-obj-$(CONFIG_HAVE_HW_BREAKPOINT)+= hw_breakpoint.o arm64-obj-$(CONFIG_EARLY_PRINTK) += early_printk.o +obj-$(CONFIG_PCI) += pcibios.o +obj-$(CONFIG_PCI_MSI) += msi_bitmap.o obj-y += $(arm64-obj-y) vdso/ obj-m += $(arm64-obj-m) head-y := head.o --- linux-3.13.0.orig/arch/arm64/kernel/kuser32.S +++ linux-3.13.0/arch/arm64/kernel/kuser32.S @@ -38,12 +38,13 @@ .inst 0xe92d00f0 // push {r4, r5, r6, r7} .inst 0xe1c040d0 // ldrd r4, r5, [r0] .inst 0xe1c160d0 // ldrd r6, r7, [r1] - .inst 0xe1b20e9f // 1: ldaexd r0, r1, [r2] + .inst 0xe1b20f9f // 1: ldrexd r0, r1, [r2] .inst 0xe0303004 // eors r3, r0, r4 .inst 0x00313005 // eoreqs r3, r1, r5 .inst 0x01a23e96 // stlexdeq r3, r6, [r2] .inst 0x03330001 // teqeq r3, #1 .inst 0x0afffff9 // beq 1b + .inst 0xf57ff05b // dmb ish .inst 0xe2730000 // rsbs r0, r3, #0 .inst 0xe8bd00f0 // pop {r4, r5, r6, r7} .inst 0xe12fff1e // bx lr @@ -55,11 +56,12 @@ .align 5 __kuser_cmpxchg: // 0xffff0fc0 - .inst 0xe1923e9f // 1: ldaex r3, [r2] + .inst 0xe1923f9f // 1: ldrex r3, [r2] .inst 0xe0533000 // subs r3, r3, r0 .inst 0x01823e91 // stlexeq r3, r1, [r2] .inst 0x03330001 // teqeq r3, #1 .inst 0x0afffffa // beq 1b + .inst 0xf57ff05b // dmb ish .inst 0xe2730000 // rsbs r0, r3, #0 .inst 0xe12fff1e // bx lr --- linux-3.13.0.orig/arch/arm64/kernel/msi_bitmap.c +++ linux-3.13.0/arch/arm64/kernel/msi_bitmap.c @@ -0,0 +1,134 @@ +/* + * Copyright 2006-2008, Michael Ellerman, IBM Corporation. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; version 2 of the + * License. + * + * Borrowed from powerpc arch + */ + +#include +#include +#include +#include +#include + +int msi_bitmap_alloc_hwirqs(struct msi_bitmap *bmp, int num) +{ + unsigned long flags; + int offset, order = get_count_order(num); + + spin_lock_irqsave(&bmp->lock, flags); + /* + * This is fast, but stricter than we need. We might want to add + * a fallback routine which does a linear search with no alignment. + */ + offset = bitmap_find_free_region(bmp->bitmap, bmp->irq_count, order); + spin_unlock_irqrestore(&bmp->lock, flags); + + pr_debug("msi_bitmap: allocated 0x%x (2^%d) at offset 0x%x\n", + num, order, offset); + + return offset; +} + +void msi_bitmap_free_hwirqs(struct msi_bitmap *bmp, unsigned int offset, + unsigned int num) +{ + unsigned long flags; + int order = get_count_order(num); + + pr_debug("msi_bitmap: freeing 0x%x (2^%d) at offset 0x%x\n", + num, order, offset); + + spin_lock_irqsave(&bmp->lock, flags); + bitmap_release_region(bmp->bitmap, offset, order); + spin_unlock_irqrestore(&bmp->lock, flags); +} + +void msi_bitmap_reserve_hwirq(struct msi_bitmap *bmp, unsigned int hwirq) +{ + unsigned long flags; + + pr_debug("msi_bitmap: reserving hwirq 0x%x\n", hwirq); + + spin_lock_irqsave(&bmp->lock, flags); + bitmap_allocate_region(bmp->bitmap, hwirq, 0); + spin_unlock_irqrestore(&bmp->lock, flags); +} + +/** + * msi_bitmap_reserve_dt_hwirqs - Reserve irqs specified in the device tree. + * @bmp: pointer to the MSI bitmap. + * + * Looks in the device tree to see if there is a property specifying which + * irqs can be used for MSI. If found those irqs reserved in the device tree + * are reserved in the bitmap. + * + * Returns 0 for success, < 0 if there was an error, and > 0 if no property + * was found in the device tree. + **/ +int msi_bitmap_reserve_dt_hwirqs(struct msi_bitmap *bmp) +{ + int i, j, len = 2; + u32 array[2]; + u32 *p = array; + int ret; + + if (!bmp->of_node) + return 1; + + ret = of_property_read_u32_array(bmp->of_node, + "msi-available-ranges", p, len); + if (ret) + return ret; + + bitmap_allocate_region(bmp->bitmap, 0, get_count_order(bmp->irq_count)); + + spin_lock(&bmp->lock); + + /* Format is: ( )+ */ + len /= 2 * sizeof(u32); + for (i = 0; i < len; i++, p += 2) { + for (j = 0; j < *(p + 1); j++) + bitmap_release_region(bmp->bitmap, *p + j, 0); + } + + spin_unlock(&bmp->lock); + + return 0; +} + +int msi_bitmap_alloc(struct msi_bitmap *bmp, unsigned int irq_count, + struct device_node *of_node) +{ + int size; + + if (!irq_count) + return -EINVAL; + + size = BITS_TO_LONGS(irq_count) * sizeof(long); + pr_debug("msi_bitmap: allocator bitmap size is 0x%x bytes\n", size); + + bmp->bitmap = kzalloc(size, GFP_KERNEL); + if (!bmp->bitmap) { + pr_debug("msi_bitmap: ENOMEM allocating allocator bitmap!\n"); + return -ENOMEM; + } + + /* We zalloc'ed the bitmap, so all irqs are free by default */ + spin_lock_init(&bmp->lock); + bmp->of_node = of_node_get(of_node); + bmp->irq_count = irq_count; + + return 0; +} + +void msi_bitmap_free(struct msi_bitmap *bmp) +{ + /* we can't free the bitmap we don't know if it's bootmem etc. */ + of_node_put(bmp->of_node); + bmp->bitmap = NULL; +} --- linux-3.13.0.orig/arch/arm64/kernel/pcibios.c +++ linux-3.13.0/arch/arm64/kernel/pcibios.c @@ -0,0 +1,689 @@ +/* + * Based on linux/arch/arm/kernel/bios32.c + * + * PCI bios-type initialisation for PCI machines + * + * Bits taken from various places. + */ +#include +#include +#include +#include +#include +#include +#include + +static int debug_pci; + +/* + * We can't use pci_find_device() here since we are + * called from interrupt context. + */ +static void pcibios_bus_report_status(struct pci_bus *bus, u_int status_mask, + int warn) +{ + struct pci_dev *dev; + + list_for_each_entry(dev, &bus->devices, bus_list) { + u16 status; + + /* + * ignore host bridge - we handle + * that separately + */ + if (dev->bus->number == 0 && dev->devfn == 0) + continue; + + pci_read_config_word(dev, PCI_STATUS, &status); + if (status == 0xffff) + continue; + + if ((status & status_mask) == 0) + continue; + + /* clear the status errors */ + pci_write_config_word(dev, PCI_STATUS, status & status_mask); + + if (warn) + printk("(%s: %04X) ", pci_name(dev), status); + } + + list_for_each_entry(dev, &bus->devices, bus_list) + if (dev->subordinate) + pcibios_bus_report_status(dev->subordinate, status_mask, warn); +} + +void pcibios_report_status(u_int status_mask, int warn) +{ + struct list_head *l; + + list_for_each(l, &pci_root_buses) { + struct pci_bus *bus = pci_bus_b(l); + + pcibios_bus_report_status(bus, status_mask, warn); + } +} + +/* + * We don't use this to fix the device, but initialisation of it. + * It's not the correct use for this, but it works. + * Note that the arbiter/ISA bridge appears to be buggy, specifically in + * the following area: + * 1. park on CPU + * 2. ISA bridge ping-pong + * 3. ISA bridge master handling of target RETRY + * + * Bug 3 is responsible for the sound DMA grinding to a halt. We now + * live with bug 2. + */ +static void pci_fixup_83c553(struct pci_dev *dev) +{ + /* + * Set memory region to start at address 0, and enable IO + */ + pci_write_config_dword(dev, PCI_BASE_ADDRESS_0, + PCI_BASE_ADDRESS_SPACE_MEMORY); + pci_write_config_word(dev, PCI_COMMAND, PCI_COMMAND_IO); + + dev->resource[0].end -= dev->resource[0].start; + dev->resource[0].start = 0; + + /* + * All memory requests from ISA to be channelled to PCI + */ + pci_write_config_byte(dev, 0x48, 0xff); + + /* + * Enable ping-pong on bus master to ISA bridge transactions. + * This improves the sound DMA substantially. The fixed + * priority arbiter also helps (see below). + */ + pci_write_config_byte(dev, 0x42, 0x01); + + /* + * Enable PCI retry + */ + pci_write_config_byte(dev, 0x40, 0x22); + + /* + * We used to set the arbiter to "park on last master" (bit + * 1 set), but unfortunately the CyberPro does not park the + * bus. We must therefore park on CPU. Unfortunately, this + * may trigger yet another bug in the 553. + */ + pci_write_config_byte(dev, 0x83, 0x02); + + /* + * Make the ISA DMA request lowest priority, and disable + * rotating priorities completely. + */ + pci_write_config_byte(dev, 0x80, 0x11); + pci_write_config_byte(dev, 0x81, 0x00); + + /* + * Route INTA input to IRQ 11, and set IRQ11 to be level + * sensitive. + */ + pci_write_config_word(dev, 0x44, 0xb000); + outb(0x08, 0x4d1); +} + +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_WINBOND, PCI_DEVICE_ID_WINBOND_83C553, + pci_fixup_83c553); + +static void pci_fixup_unassign(struct pci_dev *dev) +{ + dev->resource[0].end -= dev->resource[0].start; + dev->resource[0].start = 0; +} + +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_WINBOND2, PCI_DEVICE_ID_WINBOND2_89C940F, + pci_fixup_unassign); + +/* + * Prevent the PCI layer from seeing the resources allocated to this device + * if it is the host bridge by marking it as such. These resources are of + * no consequence to the PCI layer (they are handled elsewhere). + */ +static void pci_fixup_dec21285(struct pci_dev *dev) +{ + int i; + + if (dev->devfn == 0) { + dev->class &= 0xff; + dev->class |= PCI_CLASS_BRIDGE_HOST << 8; + for (i = 0; i < PCI_NUM_RESOURCES; i++) { + dev->resource[i].start = 0; + dev->resource[i].end = 0; + dev->resource[i].flags = 0; + } + } +} + +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_DEC, PCI_DEVICE_ID_DEC_21285, + pci_fixup_dec21285); + +/* + * PCI IDE controllers use non-standard I/O port decoding, respect it. + */ +static void pci_fixup_ide_bases(struct pci_dev *dev) +{ + struct resource *r; + int i; + + if ((dev->class >> 8) != PCI_CLASS_STORAGE_IDE) + return; + + for (i = 0; i < PCI_NUM_RESOURCES; i++) { + r = dev->resource + i; + if ((r->start & ~0x80) == 0x374) { + r->start |= 2; + r->end = r->start; + } + } +} + +DECLARE_PCI_FIXUP_HEADER(PCI_ANY_ID, PCI_ANY_ID, pci_fixup_ide_bases); + +/* + * Put the DEC21142 to sleep + */ +static void pci_fixup_dec21142(struct pci_dev *dev) +{ + pci_write_config_dword(dev, 0x40, 0x80000000); +} + +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_DEC, PCI_DEVICE_ID_DEC_21142, + pci_fixup_dec21142); + +/* + * The CY82C693 needs some rather major fixups to ensure that it does + * the right thing. Idea from the Alpha people, with a few additions. + * + * We ensure that the IDE base registers are set to 1f0/3f4 for the + * primary bus, and 170/374 for the secondary bus. Also, hide them + * from the PCI subsystem view as well so we won't try to perform + * our own auto-configuration on them. + * + * In addition, we ensure that the PCI IDE interrupts are routed to + * IRQ 14 and IRQ 15 respectively. + * + * The above gets us to a point where the IDE on this device is + * functional. However, The CY82C693U _does not work_ in bus + * master mode without locking the PCI bus solid. + */ +static void pci_fixup_cy82c693(struct pci_dev *dev) +{ + if ((dev->class >> 8) == PCI_CLASS_STORAGE_IDE) { + u32 base0, base1; + + if (dev->class & 0x80) { /* primary */ + base0 = 0x1f0; + base1 = 0x3f4; + } else { /* secondary */ + base0 = 0x170; + base1 = 0x374; + } + + pci_write_config_dword(dev, PCI_BASE_ADDRESS_0, + base0 | PCI_BASE_ADDRESS_SPACE_IO); + pci_write_config_dword(dev, PCI_BASE_ADDRESS_1, + base1 | PCI_BASE_ADDRESS_SPACE_IO); + + dev->resource[0].start = 0; + dev->resource[0].end = 0; + dev->resource[0].flags = 0; + + dev->resource[1].start = 0; + dev->resource[1].end = 0; + dev->resource[1].flags = 0; + } else if (PCI_FUNC(dev->devfn) == 0) { + /* + * Setup IDE IRQ routing. + */ + pci_write_config_byte(dev, 0x4b, 14); + pci_write_config_byte(dev, 0x4c, 15); + + /* + * Disable FREQACK handshake, enable USB. + */ + pci_write_config_byte(dev, 0x4d, 0x41); + + /* + * Enable PCI retry, and PCI post-write buffer. + */ + pci_write_config_byte(dev, 0x44, 0x17); + + /* + * Enable ISA master and DMA post write buffering. + */ + pci_write_config_byte(dev, 0x45, 0x03); + } +} + +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_CONTAQ, PCI_DEVICE_ID_CONTAQ_82C693, + pci_fixup_cy82c693); + +static void pci_fixup_it8152(struct pci_dev *dev) +{ + int i; + /* fixup for ITE 8152 devices */ + /* FIXME: add defines for class 0x68000 and 0x80103 */ + if ((dev->class >> 8) == PCI_CLASS_BRIDGE_HOST || + dev->class == 0x68000 || dev->class == 0x80103) { + for (i = 0; i < PCI_NUM_RESOURCES; i++) { + dev->resource[i].start = 0; + dev->resource[i].end = 0; + dev->resource[i].flags = 0; + } + } +} + +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_ITE, PCI_DEVICE_ID_ITE_8152, + pci_fixup_it8152); + +/* + * If the bus contains any of these devices, then we must not turn on + * parity checking of any kind. Currently this is CyberPro 20x0 only. + */ +static inline int pdev_bad_for_parity(struct pci_dev *dev) +{ + return ((dev->vendor == PCI_VENDOR_ID_INTERG && + (dev->device == PCI_DEVICE_ID_INTERG_2000 || + dev->device == PCI_DEVICE_ID_INTERG_2010)) || + (dev->vendor == PCI_VENDOR_ID_ITE && + dev->device == PCI_DEVICE_ID_ITE_8152)); + +} + +/* + * pcibios_fixup_bus - Called after each bus is probed, + * but before its children are examined. + */ +void pcibios_fixup_bus(struct pci_bus *bus) +{ + struct pci_dev *dev; + u16 features = + PCI_COMMAND_SERR | PCI_COMMAND_PARITY | PCI_COMMAND_FAST_BACK; + + /* + * Walk the devices on this bus, working out what we can + * and can't support. + */ + list_for_each_entry(dev, &bus->devices, bus_list) { + u16 status; + + pci_read_config_word(dev, PCI_STATUS, &status); + + /* + * If any device on this bus does not support fast back + * to back transfers, then the bus as a whole is not able + * to support them. Having fast back to back transfers + * on saves us one PCI cycle per transaction. + */ + if (!(status & PCI_STATUS_FAST_BACK)) + features &= ~PCI_COMMAND_FAST_BACK; + + if (pdev_bad_for_parity(dev)) + features &= ~(PCI_COMMAND_SERR | PCI_COMMAND_PARITY); + + switch (dev->class >> 8) { + case PCI_CLASS_BRIDGE_PCI: + pci_read_config_word(dev, PCI_BRIDGE_CONTROL, &status); + status |= + PCI_BRIDGE_CTL_PARITY | PCI_BRIDGE_CTL_MASTER_ABORT; + status &= + ~(PCI_BRIDGE_CTL_BUS_RESET | + PCI_BRIDGE_CTL_FAST_BACK); + pci_write_config_word(dev, PCI_BRIDGE_CONTROL, status); + break; + + case PCI_CLASS_BRIDGE_CARDBUS: + pci_read_config_word(dev, PCI_CB_BRIDGE_CONTROL, + &status); + status |= + PCI_CB_BRIDGE_CTL_PARITY | + PCI_CB_BRIDGE_CTL_MASTER_ABORT; + pci_write_config_word(dev, PCI_CB_BRIDGE_CONTROL, + status); + break; + } + } + + /* + * Now walk the devices again, this time setting them up. + */ + list_for_each_entry(dev, &bus->devices, bus_list) { + u16 cmd; + + pci_read_config_word(dev, PCI_COMMAND, &cmd); + cmd |= features; + pci_write_config_word(dev, PCI_COMMAND, cmd); + + pci_write_config_byte(dev, PCI_CACHE_LINE_SIZE, + L1_CACHE_BYTES >> 2); + } + + /* + * Propagate the flags to the PCI bridge. + */ + if (bus->self && bus->self->hdr_type == PCI_HEADER_TYPE_BRIDGE) { + if (features & PCI_COMMAND_FAST_BACK) + bus->bridge_ctl |= PCI_BRIDGE_CTL_FAST_BACK; + if (features & PCI_COMMAND_PARITY) + bus->bridge_ctl |= PCI_BRIDGE_CTL_PARITY; + } + + /* + * Report what we did for this bus + */ + printk(KERN_INFO "PCI: bus%d: Fast back to back transfers %sabled\n", + bus->number, (features & PCI_COMMAND_FAST_BACK) ? "en" : "dis"); +} +EXPORT_SYMBOL(pcibios_fixup_bus); + +void pcibios_add_bus(struct pci_bus *bus) +{ + struct pci_sys_data *sys = bus->sysdata; + if (sys->add_bus) + sys->add_bus(bus); +} + +void pcibios_remove_bus(struct pci_bus *bus) +{ + struct pci_sys_data *sys = bus->sysdata; + if (sys->remove_bus) + sys->remove_bus(bus); +} + +/* + * Swizzle the device pin each time we cross a bridge. If a platform does + * not provide a swizzle function, we perform the standard PCI swizzling. + * + * The default swizzling walks up the bus tree one level at a time, applying + * the standard swizzle function at each step, stopping when it finds the PCI + * root bus. This will return the slot number of the bridge device on the + * root bus and the interrupt pin on that device which should correspond + * with the downstream device interrupt. + * + * Platforms may override this, in which case the slot and pin returned + * depend entirely on the platform code. However, please note that the + * PCI standard swizzle is implemented on plug-in cards and Cardbus based + * PCI extenders, so it can not be ignored. + */ +static u8 pcibios_swizzle(struct pci_dev *dev, u8 *pin) +{ + struct pci_sys_data *sys = dev->sysdata; + int slot, oldpin = *pin; + + if (sys->swizzle) + slot = sys->swizzle(dev, pin); + else + slot = pci_common_swizzle(dev, pin); + + if (debug_pci) + printk("PCI: %s swizzling pin %d => pin %d slot %d\n", + pci_name(dev), oldpin, *pin, slot); + + return slot; +} + +/* + * Map a slot/pin to an IRQ. + */ +static int pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) +{ + struct pci_sys_data *sys = dev->sysdata; + int irq = -1; + + if (sys->map_irq) + irq = sys->map_irq(dev, slot, pin); + + if (debug_pci) + printk("PCI: %s mapping slot %d pin %d => irq %d\n", + pci_name(dev), slot, pin, irq); + + return irq; +} + +static int pcibios_init_resources(int busnr, struct pci_sys_data *sys) +{ + int ret; + struct pci_host_bridge_window *window; + + if (list_empty(&sys->resources)) { + pci_add_resource_offset(&sys->resources, + &iomem_resource, sys->mem_offset); + } + + list_for_each_entry(window, &sys->resources, list) { + if (resource_type(window->res) == IORESOURCE_IO) + return 0; + } + + sys->io_res.start = (busnr * SZ_64K) ? : pcibios_min_io; + sys->io_res.end = (busnr + 1) * SZ_64K - 1; + sys->io_res.flags = IORESOURCE_IO; + sys->io_res.name = sys->io_res_name; + sprintf(sys->io_res_name, "PCI%d I/O", busnr); + + ret = request_resource(&ioport_resource, &sys->io_res); + if (ret) { + pr_err("PCI: unable to allocate I/O port region (%d)\n", ret); + return ret; + } + pci_add_resource_offset(&sys->resources, &sys->io_res, sys->io_offset); + + return 0; +} + +static void pcibios_init_hw(struct device *parent, struct hw_pci *hw, + struct list_head *head) +{ + struct pci_sys_data *sys = NULL; + int ret; + int nr, busnr; + + for (nr = busnr = 0; nr < hw->nr_controllers; nr++) { + sys = kzalloc(sizeof(struct pci_sys_data), GFP_KERNEL); + if (!sys) + panic("PCI: unable to allocate sys data!"); + +#ifdef CONFIG_PCI_DOMAINS + sys->domain = hw->domain; +#endif + sys->busnr = busnr; + sys->swizzle = hw->swizzle; + sys->map_irq = hw->map_irq; + sys->align_resource = hw->align_resource; + sys->add_bus = hw->add_bus; + sys->remove_bus = hw->remove_bus; + INIT_LIST_HEAD(&sys->resources); + + if (hw->private_data) + sys->private_data = hw->private_data[nr]; + + ret = hw->setup(nr, sys); + + if (ret > 0) { + ret = pcibios_init_resources(nr, sys); + if (ret) { + kfree(sys); + break; + } + + if (hw->scan) + sys->bus = hw->scan(nr, sys); + else + sys->bus = pci_scan_root_bus(parent, sys->busnr, + hw->ops, sys, + &sys->resources); + + if (!sys->bus) + panic("PCI: unable to scan bus!"); + + busnr = sys->bus->busn_res.end + 1; + + list_add(&sys->node, head); + } else { + kfree(sys); + if (ret < 0) + break; + } + } +} + +void pci_common_init_dev(struct device *parent, struct hw_pci *hw) +{ + struct pci_sys_data *sys; + LIST_HEAD(head); + + pci_add_flags(PCI_REASSIGN_ALL_RSRC); + if (hw->preinit) + hw->preinit(); + pcibios_init_hw(parent, hw, &head); + if (hw->postinit) + hw->postinit(); + + pci_fixup_irqs(pcibios_swizzle, pcibios_map_irq); + + list_for_each_entry(sys, &head, node) { + struct pci_bus *bus = sys->bus; + + if (!pci_has_flag(PCI_PROBE_ONLY)) { + /* + * Size the bridge windows. + */ + pci_bus_size_bridges(bus); + + /* + * Assign resources. + */ + pci_bus_assign_resources(bus); + } + + /* + * Tell drivers about devices found. + */ + pci_bus_add_devices(bus); + } +} + +#ifndef CONFIG_PCI_HOST_ITE8152 +void pcibios_set_master(struct pci_dev *dev) +{ + /* No special bus mastering setup handling */ +} +#endif + +char *__init pcibios_setup(char *str) +{ + if (!strcmp(str, "debug")) { + debug_pci = 1; + return NULL; + } else if (!strcmp(str, "firmware")) { + pci_add_flags(PCI_PROBE_ONLY); + return NULL; + } + return str; +} + +/* + * From arch/i386/kernel/pci-i386.c: + * + * We need to avoid collisions with `mirrored' VGA ports + * and other strange ISA hardware, so we always want the + * addresses to be allocated in the 0x000-0x0ff region + * modulo 0x400. + * + * Why? Because some silly external IO cards only decode + * the low 10 bits of the IO address. The 0x00-0xff region + * is reserved for motherboard devices that decode all 16 + * bits, so it's ok to allocate at, say, 0x2800-0x28ff, + * but we want to try to avoid allocating at 0x2900-0x2bff + * which might be mirrored at 0x0100-0x03ff.. + */ +resource_size_t pcibios_align_resource(void *data, const struct resource *res, + resource_size_t size, + resource_size_t align) +{ + struct pci_dev *dev = data; + struct pci_sys_data *sys = dev->sysdata; + resource_size_t start = res->start; + + if (res->flags & IORESOURCE_IO && start & 0x300) + start = (start + 0x3ff) & ~0x3ff; + + start = (start + align - 1) & ~(align - 1); + + if (sys->align_resource) + return sys->align_resource(dev, res, start, size, align); + + return start; +} + +/** + * pcibios_enable_device - Enable I/O and memory. + * @dev: PCI device to be enabled + */ +int pcibios_enable_device(struct pci_dev *dev, int mask) +{ + u16 cmd, old_cmd; + int idx; + struct resource *r; + + pci_read_config_word(dev, PCI_COMMAND, &cmd); + old_cmd = cmd; + for (idx = 0; idx < 6; idx++) { + /* Only set up the requested stuff */ + if (!(mask & (1 << idx))) + continue; + + r = dev->resource + idx; + if (!r->start && r->end) { + printk(KERN_ERR "PCI: Device %s not available because" + " of resource collisions\n", pci_name(dev)); + return -EINVAL; + } + if (r->flags & IORESOURCE_IO) + cmd |= PCI_COMMAND_IO; + if (r->flags & IORESOURCE_MEM) + cmd |= PCI_COMMAND_MEMORY; + } + + /* + * Bridges (eg, cardbus bridges) need to be fully enabled + */ + if ((dev->class >> 16) == PCI_BASE_CLASS_BRIDGE) + cmd |= PCI_COMMAND_IO | PCI_COMMAND_MEMORY; + + if (cmd != old_cmd) { + printk("PCI: enabling device %s (%04x -> %04x)\n", + pci_name(dev), old_cmd, cmd); + pci_write_config_word(dev, PCI_COMMAND, cmd); + } + return 0; +} + +int pci_mmap_page_range(struct pci_dev *dev, struct vm_area_struct *vma, + enum pci_mmap_state mmap_state, int write_combine) +{ + struct pci_sys_data *root = dev->sysdata; + unsigned long phys; + + if (mmap_state == pci_mmap_io) + return -EINVAL; + else + phys = vma->vm_pgoff + (root->mem_offset >> PAGE_SHIFT); + + /* + * Mark this as IO + */ + vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); + + if (remap_pfn_range(vma, vma->vm_start, phys, + vma->vm_end - vma->vm_start, vma->vm_page_prot)) + return -EAGAIN; + + return 0; +} --- linux-3.13.0.orig/arch/arm64/kernel/stacktrace.c +++ linux-3.13.0/arch/arm64/kernel/stacktrace.c @@ -48,7 +48,11 @@ frame->sp = fp + 0x10; frame->fp = *(unsigned long *)(fp); - frame->pc = *(unsigned long *)(fp + 8); + /* + * -4 here because we care about the PC at time of bl, + * not where the return will go. + */ + frame->pc = *(unsigned long *)(fp + 8) - 4; return 0; } --- linux-3.13.0.orig/arch/arm64/kernel/vdso.c +++ linux-3.13.0/arch/arm64/kernel/vdso.c @@ -238,6 +238,8 @@ vdso_data->use_syscall = use_syscall; vdso_data->xtime_coarse_sec = xtime_coarse.tv_sec; vdso_data->xtime_coarse_nsec = xtime_coarse.tv_nsec; + vdso_data->wtm_clock_sec = tk->wall_to_monotonic.tv_sec; + vdso_data->wtm_clock_nsec = tk->wall_to_monotonic.tv_nsec; if (!use_syscall) { vdso_data->cs_cycle_last = tk->clock->cycle_last; @@ -245,8 +247,6 @@ vdso_data->xtime_clock_nsec = tk->xtime_nsec; vdso_data->cs_mult = tk->mult; vdso_data->cs_shift = tk->shift; - vdso_data->wtm_clock_sec = tk->wall_to_monotonic.tv_sec; - vdso_data->wtm_clock_nsec = tk->wall_to_monotonic.tv_nsec; } smp_wmb(); --- linux-3.13.0.orig/arch/arm64/kernel/vdso/Makefile +++ linux-3.13.0/arch/arm64/kernel/vdso/Makefile @@ -48,7 +48,7 @@ # Actual build commands quiet_cmd_vdsold = VDSOL $@ - cmd_vdsold = $(CC) $(c_flags) -Wl,-T $^ -o $@ + cmd_vdsold = $(CC) $(c_flags) -Wl,-n -Wl,-T $^ -o $@ quiet_cmd_vdsoas = VDSOA $@ cmd_vdsoas = $(CC) $(a_flags) -c -o $@ $< --- linux-3.13.0.orig/arch/arm64/kernel/vdso/gettimeofday.S +++ linux-3.13.0/arch/arm64/kernel/vdso/gettimeofday.S @@ -103,6 +103,8 @@ bl __do_get_tspec seqcnt_check w9, 1b + mov x30, x2 + cmp w0, #CLOCK_MONOTONIC b.ne 6f @@ -118,6 +120,9 @@ ccmp w0, #CLOCK_MONOTONIC_COARSE, #0x4, ne b.ne 8f + /* xtime_coarse_nsec is already right-shifted */ + mov x12, #0 + /* Get coarse timespec. */ adr vdso_data, _vdso_data 3: seqcnt_acquire @@ -156,7 +161,7 @@ lsr x11, x11, x12 stp x10, x11, [x1, #TSPEC_TV_SEC] mov x0, xzr - ret x2 + ret 7: mov x30, x2 8: /* Syscall fallback. */ --- linux-3.13.0.orig/arch/arm64/kvm/Kconfig +++ linux-3.13.0/arch/arm64/kvm/Kconfig @@ -36,6 +36,17 @@ ---help--- Provides host support for ARM processors. +config KVM_ARM_MAX_VCPUS + int "Number maximum supported virtual CPUs per VM" + depends on KVM_ARM_HOST + default 4 + help + Static number of max supported virtual CPUs per VM. + + If you choose a high number, the vcpu structures will be quite + large, so only choose a reasonable number that you expect to + actually use. + config KVM_ARM_VGIC bool depends on KVM_ARM_HOST && OF --- linux-3.13.0.orig/arch/arm64/kvm/guest.c +++ linux-3.13.0/arch/arm64/kvm/guest.c @@ -207,20 +207,26 @@ unsigned long implementor = read_cpuid_implementor(); unsigned long part_number = read_cpuid_part_number(); - if (implementor != ARM_CPU_IMP_ARM) - return -EINVAL; + switch (implementor) { + case ARM_CPU_IMP_ARM: + switch (part_number) { + case ARM_CPU_PART_AEM_V8: + return KVM_ARM_TARGET_AEM_V8; + case ARM_CPU_PART_FOUNDATION: + return KVM_ARM_TARGET_FOUNDATION_V8; + case ARM_CPU_PART_CORTEX_A57: + return KVM_ARM_TARGET_CORTEX_A57; + }; + break; + case ARM_CPU_IMP_APM: + switch (part_number) { + case APM_CPU_PART_POTENZA: + return KVM_ARM_TARGET_XGENE_POTENZA; + }; + break; + }; - switch (part_number) { - case ARM_CPU_PART_AEM_V8: - return KVM_ARM_TARGET_AEM_V8; - case ARM_CPU_PART_FOUNDATION: - return KVM_ARM_TARGET_FOUNDATION_V8; - case ARM_CPU_PART_CORTEX_A57: - /* Currently handled by the generic backend */ - return KVM_ARM_TARGET_CORTEX_A57; - default: - return -EINVAL; - } + return -EINVAL; } int kvm_vcpu_set_target(struct kvm_vcpu *vcpu, --- linux-3.13.0.orig/arch/arm64/kvm/handle_exit.c +++ linux-3.13.0/arch/arm64/kvm/handle_exit.c @@ -39,9 +39,6 @@ static int handle_smc(struct kvm_vcpu *vcpu, struct kvm_run *run) { - if (kvm_psci_call(vcpu)) - return 1; - kvm_inject_undefined(vcpu); return 1; } --- linux-3.13.0.orig/arch/arm64/kvm/sys_regs.c +++ linux-3.13.0/arch/arm64/kvm/sys_regs.c @@ -27,6 +27,7 @@ #include #include #include +#include #include #include #include @@ -121,6 +122,48 @@ } /* + * Generic accessor for VM registers. Only called as long as HCR_TVM + * is set. + */ +static bool access_vm_reg(struct kvm_vcpu *vcpu, + const struct sys_reg_params *p, + const struct sys_reg_desc *r) +{ + unsigned long val; + + BUG_ON(!p->is_write); + + val = *vcpu_reg(vcpu, p->Rt); + if (!p->is_aarch32) { + vcpu_sys_reg(vcpu, r->reg) = val; + } else { + vcpu_cp15(vcpu, r->reg) = val & 0xffffffffUL; + if (!p->is_32bit) + vcpu_cp15(vcpu, r->reg + 1) = val >> 32; + } + return true; +} + +/* + * SCTLR_EL1 accessor. Only called as long as HCR_TVM is set. If the + * guest enables the MMU, we stop trapping the VM sys_regs and leave + * it in complete control of the caches. + */ +static bool access_sctlr(struct kvm_vcpu *vcpu, + const struct sys_reg_params *p, + const struct sys_reg_desc *r) +{ + access_vm_reg(vcpu, p, r); + + if (vcpu_has_cache_enabled(vcpu)) { /* MMU+Caches enabled? */ + vcpu->arch.hcr_el2 &= ~HCR_TVM; + stage2_flush_vm(vcpu->kvm); + } + + return true; +} + +/* * We could trap ID_DFR0 and tell the guest we don't support performance * monitoring. Unfortunately the patch to make the kernel check ID_DFR0 was * NAKed, so it will read the PMCR anyway. @@ -185,32 +228,32 @@ NULL, reset_mpidr, MPIDR_EL1 }, /* SCTLR_EL1 */ { Op0(0b11), Op1(0b000), CRn(0b0001), CRm(0b0000), Op2(0b000), - NULL, reset_val, SCTLR_EL1, 0x00C50078 }, + access_sctlr, reset_val, SCTLR_EL1, 0x00C50078 }, /* CPACR_EL1 */ { Op0(0b11), Op1(0b000), CRn(0b0001), CRm(0b0000), Op2(0b010), NULL, reset_val, CPACR_EL1, 0 }, /* TTBR0_EL1 */ { Op0(0b11), Op1(0b000), CRn(0b0010), CRm(0b0000), Op2(0b000), - NULL, reset_unknown, TTBR0_EL1 }, + access_vm_reg, reset_unknown, TTBR0_EL1 }, /* TTBR1_EL1 */ { Op0(0b11), Op1(0b000), CRn(0b0010), CRm(0b0000), Op2(0b001), - NULL, reset_unknown, TTBR1_EL1 }, + access_vm_reg, reset_unknown, TTBR1_EL1 }, /* TCR_EL1 */ { Op0(0b11), Op1(0b000), CRn(0b0010), CRm(0b0000), Op2(0b010), - NULL, reset_val, TCR_EL1, 0 }, + access_vm_reg, reset_val, TCR_EL1, 0 }, /* AFSR0_EL1 */ { Op0(0b11), Op1(0b000), CRn(0b0101), CRm(0b0001), Op2(0b000), - NULL, reset_unknown, AFSR0_EL1 }, + access_vm_reg, reset_unknown, AFSR0_EL1 }, /* AFSR1_EL1 */ { Op0(0b11), Op1(0b000), CRn(0b0101), CRm(0b0001), Op2(0b001), - NULL, reset_unknown, AFSR1_EL1 }, + access_vm_reg, reset_unknown, AFSR1_EL1 }, /* ESR_EL1 */ { Op0(0b11), Op1(0b000), CRn(0b0101), CRm(0b0010), Op2(0b000), - NULL, reset_unknown, ESR_EL1 }, + access_vm_reg, reset_unknown, ESR_EL1 }, /* FAR_EL1 */ { Op0(0b11), Op1(0b000), CRn(0b0110), CRm(0b0000), Op2(0b000), - NULL, reset_unknown, FAR_EL1 }, + access_vm_reg, reset_unknown, FAR_EL1 }, /* PAR_EL1 */ { Op0(0b11), Op1(0b000), CRn(0b0111), CRm(0b0100), Op2(0b000), NULL, reset_unknown, PAR_EL1 }, @@ -224,17 +267,17 @@ /* MAIR_EL1 */ { Op0(0b11), Op1(0b000), CRn(0b1010), CRm(0b0010), Op2(0b000), - NULL, reset_unknown, MAIR_EL1 }, + access_vm_reg, reset_unknown, MAIR_EL1 }, /* AMAIR_EL1 */ { Op0(0b11), Op1(0b000), CRn(0b1010), CRm(0b0011), Op2(0b000), - NULL, reset_amair_el1, AMAIR_EL1 }, + access_vm_reg, reset_amair_el1, AMAIR_EL1 }, /* VBAR_EL1 */ { Op0(0b11), Op1(0b000), CRn(0b1100), CRm(0b0000), Op2(0b000), NULL, reset_val, VBAR_EL1, 0 }, /* CONTEXTIDR_EL1 */ { Op0(0b11), Op1(0b000), CRn(0b1101), CRm(0b0000), Op2(0b001), - NULL, reset_val, CONTEXTIDR_EL1, 0 }, + access_vm_reg, reset_val, CONTEXTIDR_EL1, 0 }, /* TPIDR_EL1 */ { Op0(0b11), Op1(0b000), CRn(0b1101), CRm(0b0000), Op2(0b100), NULL, reset_unknown, TPIDR_EL1 }, @@ -305,14 +348,32 @@ NULL, reset_val, FPEXC32_EL2, 0x70 }, }; -/* Trapped cp15 registers */ +/* + * Trapped cp15 registers. TTBR0/TTBR1 get a double encoding, + * depending on the way they are accessed (as a 32bit or a 64bit + * register). + */ static const struct sys_reg_desc cp15_regs[] = { + { Op1( 0), CRn( 0), CRm( 2), Op2( 0), access_vm_reg, NULL, c2_TTBR0 }, + { Op1( 0), CRn( 1), CRm( 0), Op2( 0), access_sctlr, NULL, c1_SCTLR }, + { Op1( 0), CRn( 2), CRm( 0), Op2( 0), access_vm_reg, NULL, c2_TTBR0 }, + { Op1( 0), CRn( 2), CRm( 0), Op2( 1), access_vm_reg, NULL, c2_TTBR1 }, + { Op1( 0), CRn( 2), CRm( 0), Op2( 2), access_vm_reg, NULL, c2_TTBCR }, + { Op1( 0), CRn( 3), CRm( 0), Op2( 0), access_vm_reg, NULL, c3_DACR }, + { Op1( 0), CRn( 5), CRm( 0), Op2( 0), access_vm_reg, NULL, c5_DFSR }, + { Op1( 0), CRn( 5), CRm( 0), Op2( 1), access_vm_reg, NULL, c5_IFSR }, + { Op1( 0), CRn( 5), CRm( 1), Op2( 0), access_vm_reg, NULL, c5_ADFSR }, + { Op1( 0), CRn( 5), CRm( 1), Op2( 1), access_vm_reg, NULL, c5_AIFSR }, + { Op1( 0), CRn( 6), CRm( 0), Op2( 0), access_vm_reg, NULL, c6_DFAR }, + { Op1( 0), CRn( 6), CRm( 0), Op2( 2), access_vm_reg, NULL, c6_IFAR }, + /* * DC{C,I,CI}SW operations: */ { Op1( 0), CRn( 7), CRm( 6), Op2( 2), access_dcsw }, { Op1( 0), CRn( 7), CRm(10), Op2( 2), access_dcsw }, { Op1( 0), CRn( 7), CRm(14), Op2( 2), access_dcsw }, + { Op1( 0), CRn( 9), CRm(12), Op2( 0), pm_fake }, { Op1( 0), CRn( 9), CRm(12), Op2( 1), pm_fake }, { Op1( 0), CRn( 9), CRm(12), Op2( 2), pm_fake }, @@ -326,6 +387,14 @@ { Op1( 0), CRn( 9), CRm(14), Op2( 0), pm_fake }, { Op1( 0), CRn( 9), CRm(14), Op2( 1), pm_fake }, { Op1( 0), CRn( 9), CRm(14), Op2( 2), pm_fake }, + + { Op1( 0), CRn(10), CRm( 2), Op2( 0), access_vm_reg, NULL, c10_PRRR }, + { Op1( 0), CRn(10), CRm( 2), Op2( 1), access_vm_reg, NULL, c10_NMRR }, + { Op1( 0), CRn(10), CRm( 3), Op2( 0), access_vm_reg, NULL, c10_AMAIR0 }, + { Op1( 0), CRn(10), CRm( 3), Op2( 1), access_vm_reg, NULL, c10_AMAIR1 }, + { Op1( 0), CRn(13), CRm( 0), Op2( 1), access_vm_reg, NULL, c13_CID }, + + { Op1( 1), CRn( 0), CRm( 2), Op2( 0), access_vm_reg, NULL, c2_TTBR1 }, }; /* Target specific emulation tables */ @@ -437,6 +506,8 @@ u32 hsr = kvm_vcpu_get_hsr(vcpu); int Rt2 = (hsr >> 10) & 0xf; + params.is_aarch32 = true; + params.is_32bit = false; params.CRm = (hsr >> 1) & 0xf; params.Rt = (hsr >> 5) & 0xf; params.is_write = ((hsr & 1) == 0); @@ -480,6 +551,8 @@ struct sys_reg_params params; u32 hsr = kvm_vcpu_get_hsr(vcpu); + params.is_aarch32 = true; + params.is_32bit = true; params.CRm = (hsr >> 1) & 0xf; params.Rt = (hsr >> 5) & 0xf; params.is_write = ((hsr & 1) == 0); @@ -549,6 +622,8 @@ struct sys_reg_params params; unsigned long esr = kvm_vcpu_get_hsr(vcpu); + params.is_aarch32 = false; + params.is_32bit = false; params.Op0 = (esr >> 20) & 3; params.Op1 = (esr >> 14) & 0x7; params.CRn = (esr >> 10) & 0xf; --- linux-3.13.0.orig/arch/arm64/kvm/sys_regs.h +++ linux-3.13.0/arch/arm64/kvm/sys_regs.h @@ -30,6 +30,8 @@ u8 Op2; u8 Rt; bool is_write; + bool is_aarch32; + bool is_32bit; /* Only valid if is_aarch32 is true */ }; struct sys_reg_desc { --- linux-3.13.0.orig/arch/arm64/kvm/sys_regs_generic_v8.c +++ linux-3.13.0/arch/arm64/kvm/sys_regs_generic_v8.c @@ -90,6 +90,9 @@ &genericv8_target_table); kvm_register_target_sys_reg_table(KVM_ARM_TARGET_CORTEX_A57, &genericv8_target_table); + kvm_register_target_sys_reg_table(KVM_ARM_TARGET_XGENE_POTENZA, + &genericv8_target_table); + return 0; } late_initcall(sys_reg_genericv8_init); --- linux-3.13.0.orig/arch/arm64/lib/bitops.S +++ linux-3.13.0/arch/arm64/lib/bitops.S @@ -46,11 +46,12 @@ mov x2, #1 add x1, x1, x0, lsr #3 // Get word offset lsl x4, x2, x3 // Create mask -1: ldaxr x2, [x1] +1: ldxr x2, [x1] lsr x0, x2, x3 // Save old value of bit \instr x2, x2, x4 // toggle bit stlxr w5, x2, [x1] cbnz w5, 1b + dmb ish and x0, x0, #1 3: ret ENDPROC(\name ) --- linux-3.13.0.orig/arch/arm64/mm/Makefile +++ linux-3.13.0/arch/arm64/mm/Makefile @@ -1,5 +1,5 @@ obj-y := dma-mapping.o extable.o fault.o init.o \ cache.o copypage.o flush.o \ - ioremap.o mmap.o pgd.o mmu.o \ + ioremap.o iomap.o mmap.o pgd.o mmu.o \ context.o tlb.o proc.o obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o --- linux-3.13.0.orig/arch/arm64/mm/copypage.c +++ linux-3.13.0/arch/arm64/mm/copypage.c @@ -32,3 +32,4 @@ { clear_page(kaddr); } +EXPORT_SYMBOL(__cpu_clear_user_page); --- linux-3.13.0.orig/arch/arm64/mm/iomap.c +++ linux-3.13.0/arch/arm64/mm/iomap.c @@ -0,0 +1,31 @@ +/* + * Based on linux/arch/arm/mm/iomap.c + * + * Map IO port and PCI memory spaces so that {read,write}[bwl] can + * be used to access this memory. + */ +#include +#include +#include +#include + +#ifdef __io +void __iomem *ioport_map(unsigned long port, unsigned int nr) +{ + return __io(port); +} +EXPORT_SYMBOL(ioport_map); + +void ioport_unmap(void __iomem *addr) +{ +} +EXPORT_SYMBOL(ioport_unmap); +#endif + +#ifdef CONFIG_PCI +unsigned long pcibios_min_io = 0x1000; +EXPORT_SYMBOL(pcibios_min_io); + +unsigned long pcibios_min_mem = 0x01000000; +EXPORT_SYMBOL(pcibios_min_mem); +#endif --- linux-3.13.0.orig/arch/arm64/mm/ioremap.c +++ linux-3.13.0/arch/arm64/mm/ioremap.c @@ -98,3 +98,17 @@ __builtin_return_address(0)); } EXPORT_SYMBOL(ioremap_cache); + +#ifdef CONFIG_PCI +int pci_ioremap_io(unsigned int offset, phys_addr_t phys_addr) +{ + BUG_ON(offset + SZ_64K > IO_SPACE_LIMIT); + + return ioremap_page_range((unsigned long)PCI_IOBASE + offset, + (unsigned long)PCI_IOBASE + offset + SZ_64K, + phys_addr, + __pgprot(PROT_NORMAL_NC)); +} +EXPORT_SYMBOL_GPL(pci_ioremap_io); +#endif + --- linux-3.13.0.orig/arch/arm64/mm/mmu.c +++ linux-3.13.0/arch/arm64/mm/mmu.c @@ -203,10 +203,18 @@ do { next = pmd_addr_end(addr, end); /* try section mapping first */ - if (((addr | next | phys) & ~SECTION_MASK) == 0) + if (((addr | next | phys) & ~SECTION_MASK) == 0) { + pmd_t old_pmd =*pmd; set_pmd(pmd, __pmd(phys | prot_sect_kernel)); - else + /* + * Check for previous table entries created during + * boot (__create_page_tables) and flush them. + */ + if (!pmd_none(old_pmd)) + flush_tlb_all(); + } else { alloc_init_pte(pmd, addr, next, __phys_to_pfn(phys)); + } phys += next - addr; } while (pmd++, addr = next, addr != end); } --- linux-3.13.0.orig/arch/avr32/Makefile +++ linux-3.13.0/arch/avr32/Makefile @@ -11,7 +11,7 @@ KBUILD_DEFCONFIG := atstk1002_defconfig -KBUILD_CFLAGS += -pipe -fno-builtin -mno-pic +KBUILD_CFLAGS += -pipe -fno-builtin -mno-pic -D__linux__ KBUILD_AFLAGS += -mrelax -mno-pic KBUILD_CFLAGS_MODULE += -mno-relax LDFLAGS_vmlinux += --relax --- linux-3.13.0.orig/arch/avr32/boards/mimc200/fram.c +++ linux-3.13.0/arch/avr32/boards/mimc200/fram.c @@ -11,6 +11,7 @@ #define FRAM_VERSION "1.0" #include +#include #include #include #include --- linux-3.13.0.orig/arch/m68k/Kconfig +++ linux-3.13.0/arch/m68k/Kconfig @@ -17,6 +17,7 @@ select FPU if MMU select ARCH_WANT_IPC_PARSE_VERSION select ARCH_USES_GETTIMEOFFSET if MMU && !COLDFIRE + select HAVE_FUTEX_CMPXCHG if MMU && FUTEX select HAVE_MOD_ARCH_SPECIFIC select MODULES_USE_ELF_REL select MODULES_USE_ELF_RELA --- linux-3.13.0.orig/arch/mips/include/asm/mipsregs.h +++ linux-3.13.0/arch/mips/include/asm/mipsregs.h @@ -14,6 +14,7 @@ #define _ASM_MIPSREGS_H #include +#include #include #include --- linux-3.13.0.orig/arch/mips/include/asm/syscall.h +++ linux-3.13.0/arch/mips/include/asm/syscall.h @@ -29,7 +29,7 @@ static inline unsigned long mips_get_syscall_arg(unsigned long *arg, struct task_struct *task, struct pt_regs *regs, unsigned int n) { - unsigned long usp = regs->regs[29]; + unsigned long usp __maybe_unused = regs->regs[29]; switch (n) { case 0: case 1: case 2: case 3: --- linux-3.13.0.orig/arch/mips/kvm/kvm_mips_emul.c +++ linux-3.13.0/arch/mips/kvm/kvm_mips_emul.c @@ -1571,17 +1571,17 @@ arch->gprs[rt] = kvm_read_c0_guest_userlocal(cop0); #else /* UserLocal not implemented */ - er = kvm_mips_emulate_ri_exc(cause, opc, run, vcpu); + er = EMULATE_FAIL; #endif break; default: - printk("RDHWR not supported\n"); + kvm_debug("RDHWR %#x not supported @ %p\n", rd, opc); er = EMULATE_FAIL; break; } } else { - printk("Emulate RI not supported @ %p: %#x\n", opc, inst); + kvm_debug("Emulate RI not supported @ %p: %#x\n", opc, inst); er = EMULATE_FAIL; } @@ -1590,6 +1590,7 @@ */ if (er == EMULATE_FAIL) { vcpu->arch.pc = curr_pc; + er = kvm_mips_emulate_ri_exc(cause, opc, run, vcpu); } return er; } --- linux-3.13.0.orig/arch/mips/power/hibernate.S +++ linux-3.13.0/arch/mips/power/hibernate.S @@ -43,6 +43,7 @@ bne t1, t3, 1b PTR_L t0, PBE_NEXT(t0) bnez t0, 0b + jal local_flush_tlb_all /* Avoid TLB mismatch after kernel resume */ PTR_LA t0, saved_regs PTR_L ra, PT_R31(t0) PTR_L sp, PT_R29(t0) --- linux-3.13.0.orig/arch/parisc/include/asm/cacheflush.h +++ linux-3.13.0/arch/parisc/include/asm/cacheflush.h @@ -132,7 +132,6 @@ static inline void *kmap(struct page *page) { might_sleep(); - flush_dcache_page(page); return page_address(page); } @@ -144,7 +143,6 @@ static inline void *kmap_atomic(struct page *page) { pagefault_disable(); - flush_dcache_page(page); return page_address(page); } --- linux-3.13.0.orig/arch/parisc/include/asm/page.h +++ linux-3.13.0/arch/parisc/include/asm/page.h @@ -29,7 +29,8 @@ void clear_page_asm(void *page); void copy_page_asm(void *to, void *from); #define clear_user_page(vto, vaddr, page) clear_page_asm(vto) -#define copy_user_page(vto, vfrom, vaddr, page) copy_page_asm(vto, vfrom) +void copy_user_page(void *vto, void *vfrom, unsigned long vaddr, + struct page *pg); /* #define CONFIG_PARISC_TMPALIAS */ --- linux-3.13.0.orig/arch/parisc/kernel/cache.c +++ linux-3.13.0/arch/parisc/kernel/cache.c @@ -388,6 +388,20 @@ } EXPORT_SYMBOL(flush_kernel_dcache_page_addr); +void copy_user_page(void *vto, void *vfrom, unsigned long vaddr, + struct page *pg) +{ + /* Copy using kernel mapping. No coherency is needed (all in + kunmap) for the `to' page. However, the `from' page needs to + be flushed through a mapping equivalent to the user mapping + before it can be accessed through the kernel mapping. */ + preempt_disable(); + flush_dcache_page_asm(__pa(vfrom), vaddr); + preempt_enable(); + copy_page_asm(vto, vfrom); +} +EXPORT_SYMBOL(copy_user_page); + void purge_tlb_entries(struct mm_struct *mm, unsigned long addr) { unsigned long flags; --- linux-3.13.0.orig/arch/powerpc/Kconfig +++ linux-3.13.0/arch/powerpc/Kconfig @@ -381,7 +381,7 @@ config KEXEC bool "kexec system call" - depends on (PPC_BOOK3S || FSL_BOOKE || (44x && !SMP)) + depends on (PPC_BOOK3S || FSL_BOOKE || (44x && !SMP)) || PPC_BOOK3E help kexec is a system call that implements the ability to shutdown your current kernel, and to start another kernel. It is like a reboot @@ -735,6 +735,16 @@ help Freescale General-purpose Timers support +config HAS_FSL_QBMAN + bool "Datapath Acceleration Queue and Buffer management" + help + Datapath Acceleration Queue and Buffer management + +config HAS_FSL_PME + bool + depends on HAS_FSL_QBMAN + default n + # Yes MCA RS/6000s exist but Linux-PPC does not currently support any config MCA bool @@ -1020,6 +1030,8 @@ source "drivers/Kconfig" +source "ubuntu/Kconfig" + source "fs/Kconfig" source "arch/powerpc/sysdev/qe_lib/Kconfig" --- linux-3.13.0.orig/arch/powerpc/Makefile +++ linux-3.13.0/arch/powerpc/Makefile @@ -225,7 +225,7 @@ all: zImage # With make 3.82 we cannot mix normal and wildcard targets -BOOT_TARGETS1 := zImage zImage.initrd uImage +BOOT_TARGETS1 := zImage zImage.initrd uImage vmlinux.strip BOOT_TARGETS2 := zImage% dtbImage% treeImage.% cuImage.% simpleImage.% uImage.% PHONY += $(BOOT_TARGETS1) $(BOOT_TARGETS2) --- linux-3.13.0.orig/arch/powerpc/configs/pseries_defconfig +++ linux-3.13.0/arch/powerpc/configs/pseries_defconfig @@ -353,3 +353,4 @@ CONFIG_VIRTUALIZATION=y CONFIG_KVM_BOOK3S_64=m CONFIG_KVM_BOOK3S_64_HV=y +CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y --- linux-3.13.0.orig/arch/powerpc/configs/pseries_le_defconfig +++ linux-3.13.0/arch/powerpc/configs/pseries_le_defconfig @@ -350,3 +350,4 @@ # CONFIG_CRYPTO_ANSI_CPRNG is not set CONFIG_CRYPTO_DEV_NX=y CONFIG_CRYPTO_DEV_NX_ENCRYPT=m +CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y --- linux-3.13.0.orig/arch/powerpc/include/asm/bitops.h +++ linux-3.13.0/arch/powerpc/include/asm/bitops.h @@ -46,6 +46,11 @@ #include #include +/* PPC bit number conversion */ +#define PPC_BITLSHIFT(be) (BITS_PER_LONG - 1 - (be)) +#define PPC_BIT(bit) (1UL << PPC_BITLSHIFT(bit)) +#define PPC_BITMASK(bs, be) ((PPC_BIT(bs) - PPC_BIT(be)) | PPC_BIT(bs)) + /* * clear_bit doesn't imply a memory barrier */ --- linux-3.13.0.orig/arch/powerpc/include/asm/compat.h +++ linux-3.13.0/arch/powerpc/include/asm/compat.h @@ -8,7 +8,11 @@ #include #define COMPAT_USER_HZ 100 +#ifdef __BIG_ENDIAN__ #define COMPAT_UTS_MACHINE "ppc\0\0" +#else +#define COMPAT_UTS_MACHINE "ppcle\0\0" +#endif typedef u32 compat_size_t; typedef s32 compat_ssize_t; @@ -200,10 +204,11 @@ /* * We can't access below the stack pointer in the 32bit ABI and - * can access 288 bytes in the 64bit ABI + * can access 288 bytes in the 64bit big-endian ABI, + * or 512 bytes with the new ELFv2 little-endian ABI. */ if (!is_32bit_task()) - usp -= 288; + usp -= USER_REDZONE_SIZE; return (void __user *) (usp - len); } --- linux-3.13.0.orig/arch/powerpc/include/asm/cputable.h +++ linux-3.13.0/arch/powerpc/include/asm/cputable.h @@ -90,6 +90,18 @@ * if the error is fatal, 1 if it was fully recovered and 0 to * pass up (not CPU originated) */ int (*machine_check)(struct pt_regs *regs); + + /* + * Processor specific early machine check handler which is + * called in real mode to handle SLB and TLB errors. + */ + long (*machine_check_early)(struct pt_regs *regs); + + /* + * Processor specific routine to flush tlbs. + */ + void (*flush_tlb)(unsigned long inval_selector); + }; extern struct cpu_spec *cur_cpu_spec; --- linux-3.13.0.orig/arch/powerpc/include/asm/dma-mapping.h +++ linux-3.13.0/arch/powerpc/include/asm/dma-mapping.h @@ -134,6 +134,7 @@ } extern int dma_set_mask(struct device *dev, u64 dma_mask); +extern int __dma_set_mask(struct device *dev, u64 dma_mask); #define dma_alloc_coherent(d,s,h,f) dma_alloc_attrs(d,s,h,f,NULL) --- linux-3.13.0.orig/arch/powerpc/include/asm/eeh.h +++ linux-3.13.0/arch/powerpc/include/asm/eeh.h @@ -117,6 +117,16 @@ return edev ? edev->pdev : NULL; } +/* Return values from eeh_ops::next_error */ +enum { + EEH_NEXT_ERR_NONE = 0, + EEH_NEXT_ERR_INF, + EEH_NEXT_ERR_FROZEN_PE, + EEH_NEXT_ERR_FENCED_PHB, + EEH_NEXT_ERR_DEAD_PHB, + EEH_NEXT_ERR_DEAD_IOC +}; + /* * The struct is used to trace the registered EEH operation * callback functions. Actually, those operation callback --- linux-3.13.0.orig/arch/powerpc/include/asm/exception-64e.h +++ linux-3.13.0/arch/powerpc/include/asm/exception-64e.h @@ -214,10 +214,21 @@ #define TLB_MISS_STATS_SAVE_INFO_BOLTED #endif +#ifndef CONFIG_RELOCATABLE #define SET_IVOR(vector_number, vector_offset) \ li r3,vector_offset@l; \ ori r3,r3,interrupt_base_book3e@l; \ mtspr SPRN_IVOR##vector_number,r3; +#else /* !CONFIG_RELOCATABLE */ +/* In relocatable case the value of the constant expression 'expr' is only + * offset. So instead, we should loads the address of label 'name'. + */ +#define SET_IVOR(vector_number, vector_offset) \ + LOAD_REG_ADDR(r3,interrupt_base_book3e);\ + rlwinm r3,r3,0,15,0; \ + ori r3,r3,vector_offset@l; \ + mtspr SPRN_IVOR##vector_number,r3; +#endif /* CONFIG_RELOCATABLE */ #endif /* _ASM_POWERPC_EXCEPTION_64E_H */ --- linux-3.13.0.orig/arch/powerpc/include/asm/exception-64s.h +++ linux-3.13.0/arch/powerpc/include/asm/exception-64s.h @@ -147,6 +147,14 @@ END_FTR_SECTION_NESTED(ftr,ftr,943) /* + * Set an SPR from a register if the CPU has the given feature + */ +#define OPT_SET_SPR(ra, spr, ftr) \ +BEGIN_FTR_SECTION_NESTED(943) \ + mtspr spr,ra; \ +END_FTR_SECTION_NESTED(ftr,ftr,943) + +/* * Save a register to the PACA if the CPU has the given feature */ #define OPT_SAVE_REG_TO_PACA(offset, ra, ftr) \ @@ -301,9 +309,12 @@ beq 4f; /* if from kernel mode */ \ ACCOUNT_CPU_USER_ENTRY(r9, r10); \ SAVE_PPR(area, r9, r10); \ -4: std r2,GPR2(r1); /* save r2 in stackframe */ \ - SAVE_4GPRS(3, r1); /* save r3 - r6 in stackframe */ \ - SAVE_2GPRS(7, r1); /* save r7, r8 in stackframe */ \ +4: EXCEPTION_PROLOG_COMMON_2(area) \ + EXCEPTION_PROLOG_COMMON_3(n) \ + ACCOUNT_STOLEN_TIME + +/* Save original regs values from save area to stack frame. */ +#define EXCEPTION_PROLOG_COMMON_2(area) \ ld r9,area+EX_R9(r13); /* move r9, r10 to stackframe */ \ ld r10,area+EX_R10(r13); \ std r9,GPR9(r1); \ @@ -318,11 +329,16 @@ ld r10,area+EX_CFAR(r13); \ std r10,ORIG_GPR3(r1); \ END_FTR_SECTION_NESTED(CPU_FTR_CFAR, CPU_FTR_CFAR, 66); \ + GET_CTR(r10, area); \ + std r10,_CTR(r1); + +#define EXCEPTION_PROLOG_COMMON_3(n) \ + std r2,GPR2(r1); /* save r2 in stackframe */ \ + SAVE_4GPRS(3, r1); /* save r3 - r6 in stackframe */ \ + SAVE_2GPRS(7, r1); /* save r7, r8 in stackframe */ \ mflr r9; /* Get LR, later save to stack */ \ ld r2,PACATOC(r13); /* get kernel TOC into r2 */ \ std r9,_LINK(r1); \ - GET_CTR(r10, area); \ - std r10,_CTR(r1); \ lbz r10,PACASOFTIRQEN(r13); \ mfspr r11,SPRN_XER; /* save XER in stackframe */ \ std r10,SOFTE(r1); \ @@ -332,8 +348,7 @@ li r10,0; \ ld r11,exception_marker@toc(r2); \ std r10,RESULT(r1); /* clear regs->result */ \ - std r11,STACK_FRAME_OVERHEAD-16(r1); /* mark the frame */ \ - ACCOUNT_STOLEN_TIME + std r11,STACK_FRAME_OVERHEAD-16(r1); /* mark the frame */ /* * Exception vectors. --- linux-3.13.0.orig/arch/powerpc/include/asm/hvcall.h +++ linux-3.13.0/arch/powerpc/include/asm/hvcall.h @@ -274,6 +274,12 @@ /* Platform specific hcalls, used by KVM */ #define H_RTAS 0xf000 +/* Values for 2nd argument to H_SET_MODE */ +#define H_SET_MODE_RESOURCE_SET_CIABR 1 +#define H_SET_MODE_RESOURCE_SET_DAWR 2 +#define H_SET_MODE_RESOURCE_ADDR_TRANS_MODE 3 +#define H_SET_MODE_RESOURCE_LE 4 + #ifndef __ASSEMBLY__ /** --- linux-3.13.0.orig/arch/powerpc/include/asm/iommu.h +++ linux-3.13.0/arch/powerpc/include/asm/iommu.h @@ -79,6 +79,7 @@ #ifdef CONFIG_IOMMU_API struct iommu_group *it_group; #endif + void (*set_bypass)(struct iommu_table *tbl, bool enable); }; struct scatterlist; --- linux-3.13.0.orig/arch/powerpc/include/asm/kvm_book3s.h +++ linux-3.13.0/arch/powerpc/include/asm/kvm_book3s.h @@ -271,6 +271,29 @@ return vcpu->arch.pc; } +static inline bool kvmppc_need_byteswap(struct kvm_vcpu *vcpu) +{ + return vcpu->arch.shared->msr & MSR_LE; +} + +static inline bool kvmppc_is_bigendian(struct kvm_vcpu *vcpu) +{ + return !kvmppc_need_byteswap(vcpu); +} + +static inline int kvmppc_ld32(struct kvm_vcpu *vcpu, ulong *eaddr, + u32 *ptr, bool data) +{ + int ret; + + ret = kvmppc_ld(vcpu, eaddr, sizeof(u32), ptr, data); + + if (kvmppc_need_byteswap(vcpu)) + *ptr = swab32(*ptr); + + return ret; +} + static inline u32 kvmppc_get_last_inst(struct kvm_vcpu *vcpu) { ulong pc = kvmppc_get_pc(vcpu); @@ -278,7 +301,7 @@ /* Load the instruction manually if it failed to do so in the * exit path */ if (vcpu->arch.last_inst == KVM_INST_FETCH_FAILED) - kvmppc_ld(vcpu, &pc, sizeof(u32), &vcpu->arch.last_inst, false); + kvmppc_ld32(vcpu, &pc, &vcpu->arch.last_inst, false); return vcpu->arch.last_inst; } @@ -295,7 +318,7 @@ /* Load the instruction manually if it failed to do so in the * exit path */ if (vcpu->arch.last_inst == KVM_INST_FETCH_FAILED) - kvmppc_ld(vcpu, &pc, sizeof(u32), &vcpu->arch.last_inst, false); + kvmppc_ld32(vcpu, &pc, &vcpu->arch.last_inst, false); return vcpu->arch.last_inst; } --- linux-3.13.0.orig/arch/powerpc/include/asm/kvm_booke.h +++ linux-3.13.0/arch/powerpc/include/asm/kvm_booke.h @@ -98,6 +98,11 @@ return vcpu->arch.pc; } +static inline bool kvmppc_is_bigendian(struct kvm_vcpu *vcpu) +{ + return 1; +} + static inline ulong kvmppc_get_fault_dar(struct kvm_vcpu *vcpu) { return vcpu->arch.fault_dear; --- linux-3.13.0.orig/arch/powerpc/include/asm/kvm_host.h +++ linux-3.13.0/arch/powerpc/include/asm/kvm_host.h @@ -616,6 +616,7 @@ spinlock_t tbacct_lock; u64 busy_stolen; u64 busy_preempt; + unsigned long intr_msr; #endif }; --- linux-3.13.0.orig/arch/powerpc/include/asm/kvm_ppc.h +++ linux-3.13.0/arch/powerpc/include/asm/kvm_ppc.h @@ -53,13 +53,13 @@ extern void kvmppc_dump_vcpu(struct kvm_vcpu *vcpu); extern int kvmppc_handle_load(struct kvm_run *run, struct kvm_vcpu *vcpu, - unsigned int rt, unsigned int bytes, - int is_bigendian); + unsigned int rt, unsigned int bytes, + int not_reverse); extern int kvmppc_handle_loads(struct kvm_run *run, struct kvm_vcpu *vcpu, - unsigned int rt, unsigned int bytes, - int is_bigendian); + unsigned int rt, unsigned int bytes, + int not_reverse); extern int kvmppc_handle_store(struct kvm_run *run, struct kvm_vcpu *vcpu, - u64 val, unsigned int bytes, int is_bigendian); + u64 val, unsigned int bytes, int not_reverse); extern int kvmppc_emulate_instruction(struct kvm_run *run, struct kvm_vcpu *vcpu); --- linux-3.13.0.orig/arch/powerpc/include/asm/machdep.h +++ linux-3.13.0/arch/powerpc/include/asm/machdep.h @@ -170,6 +170,9 @@ int (*system_reset_exception)(struct pt_regs *regs); int (*machine_check_exception)(struct pt_regs *regs); + /* Called during machine check exception to retrive fixup address. */ + bool (*mce_check_early_recovery)(struct pt_regs *regs); + /* Motherboard/chipset features. This is a kind of general purpose * hook used to control some machine specific features (like reset * lines, chip power control, etc...). --- linux-3.13.0.orig/arch/powerpc/include/asm/mce.h +++ linux-3.13.0/arch/powerpc/include/asm/mce.h @@ -0,0 +1,198 @@ +/* + * Machine check exception header file. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * Copyright 2013 IBM Corporation + * Author: Mahesh Salgaonkar + */ + +#ifndef __ASM_PPC64_MCE_H__ +#define __ASM_PPC64_MCE_H__ + +#include + +/* + * Machine Check bits on power7 and power8 + */ +#define P7_SRR1_MC_LOADSTORE(srr1) ((srr1) & PPC_BIT(42)) /* P8 too */ + +/* SRR1 bits for machine check (On Power7 and Power8) */ +#define P7_SRR1_MC_IFETCH(srr1) ((srr1) & PPC_BITMASK(43, 45)) /* P8 too */ + +#define P7_SRR1_MC_IFETCH_UE (0x1 << PPC_BITLSHIFT(45)) /* P8 too */ +#define P7_SRR1_MC_IFETCH_SLB_PARITY (0x2 << PPC_BITLSHIFT(45)) /* P8 too */ +#define P7_SRR1_MC_IFETCH_SLB_MULTIHIT (0x3 << PPC_BITLSHIFT(45)) /* P8 too */ +#define P7_SRR1_MC_IFETCH_SLB_BOTH (0x4 << PPC_BITLSHIFT(45)) +#define P7_SRR1_MC_IFETCH_TLB_MULTIHIT (0x5 << PPC_BITLSHIFT(45)) /* P8 too */ +#define P7_SRR1_MC_IFETCH_UE_TLB_RELOAD (0x6 << PPC_BITLSHIFT(45)) /* P8 too */ +#define P7_SRR1_MC_IFETCH_UE_IFU_INTERNAL (0x7 << PPC_BITLSHIFT(45)) + +/* SRR1 bits for machine check (On Power8) */ +#define P8_SRR1_MC_IFETCH_ERAT_MULTIHIT (0x4 << PPC_BITLSHIFT(45)) + +/* DSISR bits for machine check (On Power7 and Power8) */ +#define P7_DSISR_MC_UE (PPC_BIT(48)) /* P8 too */ +#define P7_DSISR_MC_UE_TABLEWALK (PPC_BIT(49)) /* P8 too */ +#define P7_DSISR_MC_ERAT_MULTIHIT (PPC_BIT(52)) /* P8 too */ +#define P7_DSISR_MC_TLB_MULTIHIT_MFTLB (PPC_BIT(53)) /* P8 too */ +#define P7_DSISR_MC_SLB_PARITY_MFSLB (PPC_BIT(55)) /* P8 too */ +#define P7_DSISR_MC_SLB_MULTIHIT (PPC_BIT(56)) /* P8 too */ +#define P7_DSISR_MC_SLB_MULTIHIT_PARITY (PPC_BIT(57)) /* P8 too */ + +/* + * DSISR bits for machine check (Power8) in addition to above. + * Secondary DERAT Multihit + */ +#define P8_DSISR_MC_ERAT_MULTIHIT_SEC (PPC_BIT(54)) + +/* SLB error bits */ +#define P7_DSISR_MC_SLB_ERRORS (P7_DSISR_MC_ERAT_MULTIHIT | \ + P7_DSISR_MC_SLB_PARITY_MFSLB | \ + P7_DSISR_MC_SLB_MULTIHIT | \ + P7_DSISR_MC_SLB_MULTIHIT_PARITY) + +#define P8_DSISR_MC_SLB_ERRORS (P7_DSISR_MC_SLB_ERRORS | \ + P8_DSISR_MC_ERAT_MULTIHIT_SEC) +enum MCE_Version { + MCE_V1 = 1, +}; + +enum MCE_Severity { + MCE_SEV_NO_ERROR = 0, + MCE_SEV_WARNING = 1, + MCE_SEV_ERROR_SYNC = 2, + MCE_SEV_FATAL = 3, +}; + +enum MCE_Disposition { + MCE_DISPOSITION_RECOVERED = 0, + MCE_DISPOSITION_NOT_RECOVERED = 1, +}; + +enum MCE_Initiator { + MCE_INITIATOR_UNKNOWN = 0, + MCE_INITIATOR_CPU = 1, +}; + +enum MCE_ErrorType { + MCE_ERROR_TYPE_UNKNOWN = 0, + MCE_ERROR_TYPE_UE = 1, + MCE_ERROR_TYPE_SLB = 2, + MCE_ERROR_TYPE_ERAT = 3, + MCE_ERROR_TYPE_TLB = 4, +}; + +enum MCE_UeErrorType { + MCE_UE_ERROR_INDETERMINATE = 0, + MCE_UE_ERROR_IFETCH = 1, + MCE_UE_ERROR_PAGE_TABLE_WALK_IFETCH = 2, + MCE_UE_ERROR_LOAD_STORE = 3, + MCE_UE_ERROR_PAGE_TABLE_WALK_LOAD_STORE = 4, +}; + +enum MCE_SlbErrorType { + MCE_SLB_ERROR_INDETERMINATE = 0, + MCE_SLB_ERROR_PARITY = 1, + MCE_SLB_ERROR_MULTIHIT = 2, +}; + +enum MCE_EratErrorType { + MCE_ERAT_ERROR_INDETERMINATE = 0, + MCE_ERAT_ERROR_PARITY = 1, + MCE_ERAT_ERROR_MULTIHIT = 2, +}; + +enum MCE_TlbErrorType { + MCE_TLB_ERROR_INDETERMINATE = 0, + MCE_TLB_ERROR_PARITY = 1, + MCE_TLB_ERROR_MULTIHIT = 2, +}; + +struct machine_check_event { + enum MCE_Version version:8; /* 0x00 */ + uint8_t in_use; /* 0x01 */ + enum MCE_Severity severity:8; /* 0x02 */ + enum MCE_Initiator initiator:8; /* 0x03 */ + enum MCE_ErrorType error_type:8; /* 0x04 */ + enum MCE_Disposition disposition:8; /* 0x05 */ + uint8_t reserved_1[2]; /* 0x06 */ + uint64_t gpr3; /* 0x08 */ + uint64_t srr0; /* 0x10 */ + uint64_t srr1; /* 0x18 */ + union { /* 0x20 */ + struct { + enum MCE_UeErrorType ue_error_type:8; + uint8_t effective_address_provided; + uint8_t physical_address_provided; + uint8_t reserved_1[5]; + uint64_t effective_address; + uint64_t physical_address; + uint8_t reserved_2[8]; + } ue_error; + + struct { + enum MCE_SlbErrorType slb_error_type:8; + uint8_t effective_address_provided; + uint8_t reserved_1[6]; + uint64_t effective_address; + uint8_t reserved_2[16]; + } slb_error; + + struct { + enum MCE_EratErrorType erat_error_type:8; + uint8_t effective_address_provided; + uint8_t reserved_1[6]; + uint64_t effective_address; + uint8_t reserved_2[16]; + } erat_error; + + struct { + enum MCE_TlbErrorType tlb_error_type:8; + uint8_t effective_address_provided; + uint8_t reserved_1[6]; + uint64_t effective_address; + uint8_t reserved_2[16]; + } tlb_error; + } u; +}; + +struct mce_error_info { + enum MCE_ErrorType error_type:8; + union { + enum MCE_UeErrorType ue_error_type:8; + enum MCE_SlbErrorType slb_error_type:8; + enum MCE_EratErrorType erat_error_type:8; + enum MCE_TlbErrorType tlb_error_type:8; + } u; + uint8_t reserved[2]; +}; + +#define MAX_MC_EVT 100 + +/* Release flags for get_mce_event() */ +#define MCE_EVENT_RELEASE true +#define MCE_EVENT_DONTRELEASE false + +extern void save_mce_event(struct pt_regs *regs, long handled, + struct mce_error_info *mce_err, uint64_t nip, + uint64_t addr); +extern int get_mce_event(struct machine_check_event *mce, bool release); +extern void release_mce_event(void); +extern void machine_check_queue_event(void); +extern void machine_check_print_event_info(struct machine_check_event *evt); +extern uint64_t get_mce_fault_addr(struct machine_check_event *evt); + +#endif /* __ASM_PPC64_MCE_H__ */ --- linux-3.13.0.orig/arch/powerpc/include/asm/opal.h +++ linux-3.13.0/arch/powerpc/include/asm/opal.h @@ -129,6 +129,7 @@ #define OPAL_LPC_READ 67 #define OPAL_LPC_WRITE 68 #define OPAL_RETURN_CPU 69 +#define OPAL_REINIT_CPUS 70 #define OPAL_FLASH_VALIDATE 76 #define OPAL_FLASH_MANAGE 77 #define OPAL_FLASH_UPDATE 78 @@ -599,6 +600,11 @@ uint64_t pestB[OPAL_PHB3_NUM_PEST_REGS]; }; +enum { + OPAL_REINIT_CPUS_HILE_BE = (1 << 0), + OPAL_REINIT_CPUS_HILE_LE = (1 << 1), +}; + typedef struct oppanel_line { const char * line; uint64_t line_len; @@ -719,9 +725,10 @@ uint16_t *pci_error_type, uint16_t *severity); int64_t opal_pci_poll(uint64_t phb_id); int64_t opal_return_cpu(void); +int64_t opal_reinit_cpus(uint64_t flags); -int64_t opal_xscom_read(uint32_t gcid, uint32_t pcb_addr, __be64 *val); -int64_t opal_xscom_write(uint32_t gcid, uint32_t pcb_addr, uint64_t val); +int64_t opal_xscom_read(uint32_t gcid, uint64_t pcb_addr, __be64 *val); +int64_t opal_xscom_write(uint32_t gcid, uint64_t pcb_addr, uint64_t val); int64_t opal_lpc_write(uint32_t chip_id, enum OpalLPCAddressType addr_type, uint32_t addr, uint32_t data, uint32_t sz); @@ -733,6 +740,8 @@ /* Internal functions */ extern int early_init_dt_scan_opal(unsigned long node, const char *uname, int depth, void *data); +extern int early_init_dt_scan_recoverable_ranges(unsigned long node, + const char *uname, int depth, void *data); extern int opal_get_chars(uint32_t vtermno, char *buf, int count); extern int opal_put_chars(uint32_t vtermno, const char *buf, int total_len); @@ -761,6 +770,7 @@ extern void opal_flash_init(void); extern int opal_machine_check(struct pt_regs *regs); +extern bool opal_mce_check_early_recovery(struct pt_regs *regs); extern void opal_shutdown(void); --- linux-3.13.0.orig/arch/powerpc/include/asm/paca.h +++ linux-3.13.0/arch/powerpc/include/asm/paca.h @@ -152,6 +152,15 @@ */ struct opal_machine_check_event *opal_mc_evt; #endif +#ifdef CONFIG_PPC_BOOK3S_64 + /* Exclusive emergency stack pointer for machine check exception. */ + void *mc_emergency_sp; + /* + * Flag to check whether we are in machine check early handler + * and already using emergency stack. + */ + u16 in_mce; +#endif /* Stuff for accurate time accounting */ u64 user_time; /* accumulated usermode TB ticks */ --- linux-3.13.0.orig/arch/powerpc/include/asm/page.h +++ linux-3.13.0/arch/powerpc/include/asm/page.h @@ -112,6 +112,8 @@ /* See Description below for VIRT_PHYS_OFFSET */ #ifdef CONFIG_RELOCATABLE_PPC32 #define VIRT_PHYS_OFFSET virt_phys_offset +#elif defined(CONFIG_PPC_BOOK3E_64) +#define VIRT_PHYS_OFFSET (KERNELBASE - MEMORY_START) #else #define VIRT_PHYS_OFFSET (KERNELBASE - PHYSICAL_START) #endif --- linux-3.13.0.orig/arch/powerpc/include/asm/pgtable-ppc64.h +++ linux-3.13.0/arch/powerpc/include/asm/pgtable-ppc64.h @@ -558,5 +558,19 @@ #define __HAVE_ARCH_PMDP_INVALIDATE extern void pmdp_invalidate(struct vm_area_struct *vma, unsigned long address, pmd_t *pmdp); + +#define pmd_move_must_withdraw pmd_move_must_withdraw +struct spinlock; +static inline int pmd_move_must_withdraw(struct spinlock *new_pmd_ptl, + struct spinlock *old_pmd_ptl) +{ + /* + * Archs like ppc64 use pgtable to store per pmd + * specific information. So when we switch the pmd, + * we should also withdraw and deposit the pgtable + */ + return true; +} + #endif /* __ASSEMBLY__ */ #endif /* _ASM_POWERPC_PGTABLE_PPC64_H_ */ --- linux-3.13.0.orig/arch/powerpc/include/asm/processor.h +++ linux-3.13.0/arch/powerpc/include/asm/processor.h @@ -373,6 +373,8 @@ extern int get_unalign_ctl(struct task_struct *tsk, unsigned long adr); extern int set_unalign_ctl(struct task_struct *tsk, unsigned int val); +extern void fp_enable(void); +extern void vec_enable(void); extern void load_fp_state(struct thread_fp_state *fp); extern void store_fp_state(struct thread_fp_state *fp); extern void load_vr_state(struct thread_vr_state *vr); --- linux-3.13.0.orig/arch/powerpc/include/asm/ptrace.h +++ linux-3.13.0/arch/powerpc/include/asm/ptrace.h @@ -28,11 +28,23 @@ #ifdef __powerpc64__ +/* + * Size of redzone that userspace is allowed to use below the stack + * pointer. This is 288 in the 64-bit big-endian ELF ABI, and 512 in + * the new ELFv2 little-endian ABI, so we allow the larger amount. + * + * For kernel code we allow a 288-byte redzone, in order to conserve + * kernel stack space; gcc currently only uses 288 bytes, and will + * hopefully allow explicit control of the redzone size in future. + */ +#define USER_REDZONE_SIZE 512 +#define KERNEL_REDZONE_SIZE 288 + #define STACK_FRAME_OVERHEAD 112 /* size of minimum stack frame */ #define STACK_FRAME_LR_SAVE 2 /* Location of LR in stack frame */ #define STACK_FRAME_REGS_MARKER ASM_CONST(0x7265677368657265) #define STACK_INT_FRAME_SIZE (sizeof(struct pt_regs) + \ - STACK_FRAME_OVERHEAD + 288) + STACK_FRAME_OVERHEAD + KERNEL_REDZONE_SIZE) #define STACK_FRAME_MARKER 12 /* Size of dummy stack frame allocated when calling signal handler. */ @@ -41,6 +53,8 @@ #else /* __powerpc64__ */ +#define USER_REDZONE_SIZE 0 +#define KERNEL_REDZONE_SIZE 0 #define STACK_FRAME_OVERHEAD 16 /* size of minimum stack frame */ #define STACK_FRAME_LR_SAVE 1 /* Location of LR in stack frame */ #define STACK_FRAME_REGS_MARKER ASM_CONST(0x72656773) --- linux-3.13.0.orig/arch/powerpc/include/asm/reg.h +++ linux-3.13.0/arch/powerpc/include/asm/reg.h @@ -260,6 +260,10 @@ #define SPRN_HRMOR 0x139 /* Real mode offset register */ #define SPRN_HSRR0 0x13A /* Hypervisor Save/Restore 0 */ #define SPRN_HSRR1 0x13B /* Hypervisor Save/Restore 1 */ +#define SPRN_PMICR 0x354 /* Power Management Idle Control Reg */ +#define SPRN_PMSR 0x355 /* Power Management Status Reg */ +#define SPRN_PMCR 0x374 /* Power Management Control Register */ + /* HFSCR and FSCR bit numbers are the same */ #define FSCR_TAR_LG 8 /* Enable Target Address Register */ #define FSCR_EBB_LG 7 /* Enable Event Based Branching */ --- linux-3.13.0.orig/arch/powerpc/include/asm/rtas.h +++ linux-3.13.0/arch/powerpc/include/asm/rtas.h @@ -150,19 +150,53 @@ #define RTAS_VECTOR_EXTERNAL_INTERRUPT 0x500 struct rtas_error_log { - unsigned long version:8; /* Architectural version */ - unsigned long severity:3; /* Severity level of error */ - unsigned long disposition:2; /* Degree of recovery */ - unsigned long extended:1; /* extended log present? */ - unsigned long /* reserved */ :2; /* Reserved for future use */ - unsigned long initiator:4; /* Initiator of event */ - unsigned long target:4; /* Target of failed operation */ - unsigned long type:8; /* General event or error*/ - unsigned long extended_log_length:32; /* length in bytes */ - unsigned char buffer[1]; /* Start of extended log */ + /* Byte 0 */ + uint8_t byte0; /* Architectural version */ + + /* Byte 1 */ + uint8_t byte1; + /* XXXXXXXX + * XXX 3: Severity level of error + * XX 2: Degree of recovery + * X 1: Extended log present? + * XX 2: Reserved + */ + + /* Byte 2 */ + uint8_t byte2; + /* XXXXXXXX + * XXXX 4: Initiator of event + * XXXX 4: Target of failed operation + */ + uint8_t byte3; /* General event or error*/ + __be32 extended_log_length; /* length in bytes */ + unsigned char buffer[1]; /* Start of extended log */ /* Variable length. */ }; +static inline uint8_t rtas_error_severity(const struct rtas_error_log *elog) +{ + return (elog->byte1 & 0xE0) >> 5; +} + +static inline uint8_t rtas_error_disposition(const struct rtas_error_log *elog) +{ + return (elog->byte1 & 0x18) >> 3; +} + +static inline uint8_t rtas_error_extended(const struct rtas_error_log *elog) +{ + return (elog->byte1 & 0x04) >> 2; +} + +#define rtas_error_type(x) ((x)->byte3) + +static inline +uint32_t rtas_error_extended_log_length(const struct rtas_error_log *elog) +{ + return be32_to_cpu(elog->extended_log_length); +} + #define RTAS_V6EXT_LOG_FORMAT_EVENT_LOG 14 #define RTAS_V6EXT_COMPANY_ID_IBM (('I' << 24) | ('B' << 16) | ('M' << 8)) @@ -172,32 +206,35 @@ */ struct rtas_ext_event_log_v6 { /* Byte 0 */ - uint32_t log_valid:1; /* 1:Log valid */ - uint32_t unrecoverable_error:1; /* 1:Unrecoverable error */ - uint32_t recoverable_error:1; /* 1:recoverable (correctable */ - /* or successfully retried) */ - uint32_t degraded_operation:1; /* 1:Unrecoverable err, bypassed*/ - /* - degraded operation (e.g. */ - /* CPU or mem taken off-line) */ - uint32_t predictive_error:1; - uint32_t new_log:1; /* 1:"New" log (Always 1 for */ - /* data returned from RTAS */ - uint32_t big_endian:1; /* 1: Big endian */ - uint32_t :1; /* reserved */ + uint8_t byte0; + /* XXXXXXXX + * X 1: Log valid + * X 1: Unrecoverable error + * X 1: Recoverable (correctable or successfully retried) + * X 1: Bypassed unrecoverable error (degraded operation) + * X 1: Predictive error + * X 1: "New" log (always 1 for data returned from RTAS) + * X 1: Big Endian + * X 1: Reserved + */ + /* Byte 1 */ - uint32_t :8; /* reserved */ + uint8_t byte1; /* reserved */ + /* Byte 2 */ - uint32_t powerpc_format:1; /* Set to 1 (indicating log is */ - /* in PowerPC format */ - uint32_t :3; /* reserved */ - uint32_t log_format:4; /* Log format indicator. Define */ - /* format used for byte 12-2047 */ + uint8_t byte2; + /* XXXXXXXX + * X 1: Set to 1 (indicating log is in PowerPC format) + * XXX 3: Reserved + * XXXX 4: Log format used for bytes 12-2047 + */ + /* Byte 3 */ - uint32_t :8; /* reserved */ + uint8_t byte3; /* reserved */ /* Byte 4-11 */ uint8_t reserved[8]; /* reserved */ /* Byte 12-15 */ - uint32_t company_id; /* Company ID of the company */ + __be32 company_id; /* Company ID of the company */ /* that defines the format for */ /* the vendor specific log type */ /* Byte 16-end of log */ @@ -205,6 +242,18 @@ /* Variable length. */ }; +static +inline uint8_t rtas_ext_event_log_format(struct rtas_ext_event_log_v6 *ext_log) +{ + return ext_log->byte2 & 0x0F; +} + +static +inline uint32_t rtas_ext_event_company_id(struct rtas_ext_event_log_v6 *ext_log) +{ + return be32_to_cpu(ext_log->company_id); +} + /* pSeries event log format */ /* Two bytes ASCII section IDs */ @@ -227,14 +276,26 @@ /* Vendor specific Platform Event Log Format, Version 6, section header */ struct pseries_errorlog { - uint16_t id; /* 0x00 2-byte ASCII section ID */ - uint16_t length; /* 0x02 Section length in bytes */ + __be16 id; /* 0x00 2-byte ASCII section ID */ + __be16 length; /* 0x02 Section length in bytes */ uint8_t version; /* 0x04 Section version */ uint8_t subtype; /* 0x05 Section subtype */ - uint16_t creator_component; /* 0x06 Creator component ID */ + __be16 creator_component; /* 0x06 Creator component ID */ uint8_t data[]; /* 0x08 Start of section data */ }; +static +inline uint16_t pseries_errorlog_id(struct pseries_errorlog *sect) +{ + return be16_to_cpu(sect->id); +} + +static +inline uint16_t pseries_errorlog_length(struct pseries_errorlog *sect) +{ + return be16_to_cpu(sect->length); +} + struct pseries_errorlog *get_pseries_errorlog(struct rtas_error_log *log, uint16_t section_id); --- linux-3.13.0.orig/arch/powerpc/include/asm/smp.h +++ linux-3.13.0/arch/powerpc/include/asm/smp.h @@ -207,6 +207,7 @@ extern unsigned long __secondary_hold_spinloop; extern unsigned long __secondary_hold_acknowledge; extern char __secondary_hold; +extern unsigned long __run_at_kexec; extern void __early_start(void); #endif /* __ASSEMBLY__ */ --- linux-3.13.0.orig/arch/powerpc/include/asm/thread_info.h +++ linux-3.13.0/arch/powerpc/include/asm/thread_info.h @@ -91,8 +91,7 @@ #define TIF_POLLING_NRFLAG 3 /* true if poll_idle() is polling TIF_NEED_RESCHED */ #define TIF_32BIT 4 /* 32 bit binary */ -#define TIF_PERFMON_WORK 5 /* work for pfm_handle_work() */ -#define TIF_PERFMON_CTXSW 6 /* perfmon needs ctxsw calls */ +#define TIF_RESTORE_TM 5 /* need to restore TM FP/VEC/VSX */ #define TIF_SYSCALL_AUDIT 7 /* syscall auditing active */ #define TIF_SINGLESTEP 8 /* singlestepping active */ #define TIF_NOHZ 9 /* in adaptive nohz mode */ @@ -115,8 +114,7 @@ #define _TIF_NEED_RESCHED (1<kobj); + kobject_put(cache_dir->kobj); kfree(cache_dir); --- linux-3.13.0.orig/arch/powerpc/kernel/cpu_setup_power.S +++ linux-3.13.0/arch/powerpc/kernel/cpu_setup_power.S @@ -29,7 +29,7 @@ mtspr SPRN_LPID,r0 mfspr r3,SPRN_LPCR bl __init_LPCR - bl __init_TLB + bl __init_tlb_power7 mtlr r11 blr @@ -42,7 +42,7 @@ mtspr SPRN_LPID,r0 mfspr r3,SPRN_LPCR bl __init_LPCR - bl __init_TLB + bl __init_tlb_power7 mtlr r11 blr @@ -59,7 +59,7 @@ oris r3, r3, LPCR_AIL_3@h bl __init_LPCR bl __init_HFSCR - bl __init_TLB + bl __init_tlb_power8 bl __init_PMU_HV mtlr r11 blr @@ -78,7 +78,7 @@ oris r3, r3, LPCR_AIL_3@h bl __init_LPCR bl __init_HFSCR - bl __init_TLB + bl __init_tlb_power8 bl __init_PMU_HV mtlr r11 blr @@ -134,15 +134,31 @@ mtspr SPRN_HFSCR,r3 blr -__init_TLB: - /* - * Clear the TLB using the "IS 3" form of tlbiel instruction - * (invalidate by congruence class). P7 has 128 CCs, P8 has 512 - * so we just always do 512 - */ +/* + * Clear the TLB using the specified IS form of tlbiel instruction + * (invalidate by congruence class). P7 has 128 CCs., P8 has 512. + * + * r3 = IS field + */ +__init_tlb_power7: + li r3,0xc00 /* IS field = 0b11 */ +_GLOBAL(__flush_tlb_power7) + li r6,128 + mtctr r6 + mr r7,r3 /* IS field */ + ptesync +2: tlbiel r7 + addi r7,r7,0x1000 + bdnz 2b + ptesync +1: blr + +__init_tlb_power8: + li r3,0xc00 /* IS field = 0b11 */ +_GLOBAL(__flush_tlb_power8) li r6,512 mtctr r6 - li r7,0xc00 /* IS field = 0b11 */ + mr r7,r3 /* IS field */ ptesync 2: tlbiel r7 addi r7,r7,0x1000 --- linux-3.13.0.orig/arch/powerpc/kernel/cputable.c +++ linux-3.13.0/arch/powerpc/kernel/cputable.c @@ -71,6 +71,10 @@ extern void __setup_cpu_power8(unsigned long offset, struct cpu_spec* spec); extern void __restore_cpu_power8(void); extern void __restore_cpu_a2(void); +extern void __flush_tlb_power7(unsigned long inval_selector); +extern void __flush_tlb_power8(unsigned long inval_selector); +extern long __machine_check_early_realmode_p7(struct pt_regs *regs); +extern long __machine_check_early_realmode_p8(struct pt_regs *regs); #endif /* CONFIG_PPC64 */ #if defined(CONFIG_E500) extern void __setup_cpu_e5500(unsigned long offset, struct cpu_spec* spec); @@ -440,6 +444,8 @@ .oprofile_cpu_type = "ppc64/ibm-compat-v1", .cpu_setup = __setup_cpu_power7, .cpu_restore = __restore_cpu_power7, + .flush_tlb = __flush_tlb_power7, + .machine_check_early = __machine_check_early_realmode_p7, .platform = "power7", }, { /* 2.07-compliant processor, i.e. Power8 "architected" mode */ @@ -456,6 +462,8 @@ .oprofile_cpu_type = "ppc64/ibm-compat-v1", .cpu_setup = __setup_cpu_power8, .cpu_restore = __restore_cpu_power8, + .flush_tlb = __flush_tlb_power8, + .machine_check_early = __machine_check_early_realmode_p8, .platform = "power8", }, { /* Power7 */ @@ -474,6 +482,8 @@ .oprofile_type = PPC_OPROFILE_POWER4, .cpu_setup = __setup_cpu_power7, .cpu_restore = __restore_cpu_power7, + .flush_tlb = __flush_tlb_power7, + .machine_check_early = __machine_check_early_realmode_p7, .platform = "power7", }, { /* Power7+ */ @@ -492,6 +502,8 @@ .oprofile_type = PPC_OPROFILE_POWER4, .cpu_setup = __setup_cpu_power7, .cpu_restore = __restore_cpu_power7, + .flush_tlb = __flush_tlb_power7, + .machine_check_early = __machine_check_early_realmode_p7, .platform = "power7+", }, { /* Power8E */ @@ -510,6 +522,8 @@ .oprofile_type = PPC_OPROFILE_INVALID, .cpu_setup = __setup_cpu_power8, .cpu_restore = __restore_cpu_power8, + .flush_tlb = __flush_tlb_power8, + .machine_check_early = __machine_check_early_realmode_p8, .platform = "power8", }, { /* Power8 */ @@ -528,6 +542,8 @@ .oprofile_type = PPC_OPROFILE_INVALID, .cpu_setup = __setup_cpu_power8, .cpu_restore = __restore_cpu_power8, + .flush_tlb = __flush_tlb_power8, + .machine_check_early = __machine_check_early_realmode_p8, .platform = "power8", }, { /* Cell Broadband Engine */ --- linux-3.13.0.orig/arch/powerpc/kernel/crash_dump.c +++ linux-3.13.0/arch/powerpc/kernel/crash_dump.c @@ -98,17 +98,19 @@ size_t csize, unsigned long offset, int userbuf) { void *vaddr; + phys_addr_t paddr; if (!csize) return 0; csize = min_t(size_t, csize, PAGE_SIZE); + paddr = pfn << PAGE_SHIFT; - if ((min_low_pfn < pfn) && (pfn < max_pfn)) { - vaddr = __va(pfn << PAGE_SHIFT); + if (memblock_is_region_memory(paddr, csize)) { + vaddr = __va(paddr); csize = copy_oldmem_vaddr(vaddr, buf, csize, offset, userbuf); } else { - vaddr = __ioremap(pfn << PAGE_SHIFT, PAGE_SIZE, 0); + vaddr = __ioremap(paddr, PAGE_SIZE, 0); csize = copy_oldmem_vaddr(vaddr, buf, csize, offset, userbuf); iounmap(vaddr); } --- linux-3.13.0.orig/arch/powerpc/kernel/dma.c +++ linux-3.13.0/arch/powerpc/kernel/dma.c @@ -191,12 +191,10 @@ #define PREALLOC_DMA_DEBUG_ENTRIES (1 << 16) -int dma_set_mask(struct device *dev, u64 dma_mask) +int __dma_set_mask(struct device *dev, u64 dma_mask) { struct dma_map_ops *dma_ops = get_dma_ops(dev); - if (ppc_md.dma_set_mask) - return ppc_md.dma_set_mask(dev, dma_mask); if ((dma_ops != NULL) && (dma_ops->set_dma_mask != NULL)) return dma_ops->set_dma_mask(dev, dma_mask); if (!dev->dma_mask || !dma_supported(dev, dma_mask)) @@ -204,6 +202,12 @@ *dev->dma_mask = dma_mask; return 0; } +int dma_set_mask(struct device *dev, u64 dma_mask) +{ + if (ppc_md.dma_set_mask) + return ppc_md.dma_set_mask(dev, dma_mask); + return __dma_set_mask(dev, dma_mask); +} EXPORT_SYMBOL(dma_set_mask); u64 dma_get_required_mask(struct device *dev) --- linux-3.13.0.orig/arch/powerpc/kernel/eeh_driver.c +++ linux-3.13.0/arch/powerpc/kernel/eeh_driver.c @@ -626,84 +626,90 @@ { struct eeh_pe *pe, *phb_pe; struct pci_bus *bus; - struct pci_controller *hose, *tmp; + struct pci_controller *hose; unsigned long flags; - int rc = 0; + int rc; - /* - * The return value from next_error() has been classified as follows. - * It might be good to enumerate them. However, next_error() is only - * supported by PowerNV platform for now. So it would be fine to use - * integer directly: - * - * 4 - Dead IOC 3 - Dead PHB - * 2 - Fenced PHB 1 - Frozen PE - * 0 - No error found - * - */ - rc = eeh_ops->next_error(&pe); - if (rc <= 0) - return; - - switch (rc) { - case 4: - /* Mark all PHBs in dead state */ - eeh_serialize_lock(&flags); - list_for_each_entry_safe(hose, tmp, - &hose_list, list_node) { - phb_pe = eeh_phb_pe_get(hose); - if (!phb_pe) continue; - eeh_pe_state_mark(phb_pe, - EEH_PE_ISOLATED | EEH_PE_PHB_DEAD); + do { + rc = eeh_ops->next_error(&pe); + + switch (rc) { + case EEH_NEXT_ERR_DEAD_IOC: + /* Mark all PHBs in dead state */ + eeh_serialize_lock(&flags); + + /* Purge all events */ + eeh_remove_event(NULL); + + list_for_each_entry(hose, &hose_list, list_node) { + phb_pe = eeh_phb_pe_get(hose); + if (!phb_pe) continue; + + eeh_pe_state_mark(phb_pe, + EEH_PE_ISOLATED | EEH_PE_PHB_DEAD); + } + + eeh_serialize_unlock(flags); + + break; + case EEH_NEXT_ERR_FROZEN_PE: + case EEH_NEXT_ERR_FENCED_PHB: + case EEH_NEXT_ERR_DEAD_PHB: + /* Mark the PE in fenced state */ + eeh_serialize_lock(&flags); + + /* Purge all events of the PHB */ + eeh_remove_event(pe); + + if (rc == EEH_NEXT_ERR_DEAD_PHB) + eeh_pe_state_mark(pe, + EEH_PE_ISOLATED | EEH_PE_PHB_DEAD); + else + eeh_pe_state_mark(pe, + EEH_PE_ISOLATED | EEH_PE_RECOVERING); + + eeh_serialize_unlock(flags); + + break; + case EEH_NEXT_ERR_NONE: + return; + default: + pr_warn("%s: Invalid value %d from next_error()\n", + __func__, rc); + return; } - eeh_serialize_unlock(flags); - /* Purge all events */ - eeh_remove_event(NULL); - break; - case 3: - case 2: - case 1: - /* Mark the PE in fenced state */ - eeh_serialize_lock(&flags); - if (rc == 3) - eeh_pe_state_mark(pe, - EEH_PE_ISOLATED | EEH_PE_PHB_DEAD); - else - eeh_pe_state_mark(pe, - EEH_PE_ISOLATED | EEH_PE_RECOVERING); - eeh_serialize_unlock(flags); - - /* Purge all events of the PHB */ - eeh_remove_event(pe); - break; - default: - pr_err("%s: Invalid value %d from next_error()\n", - __func__, rc); - return; - } - - /* - * For fenced PHB and frozen PE, it's handled as normal - * event. We have to remove the affected PHBs for dead - * PHB and IOC - */ - if (rc == 2 || rc == 1) - eeh_handle_normal_event(pe); - else { - list_for_each_entry_safe(hose, tmp, - &hose_list, list_node) { - phb_pe = eeh_phb_pe_get(hose); - if (!phb_pe || !(phb_pe->state & EEH_PE_PHB_DEAD)) - continue; - - bus = eeh_pe_bus_get(phb_pe); - /* Notify all devices that they're about to go down. */ - eeh_pe_dev_traverse(pe, eeh_report_failure, NULL); - pcibios_remove_pci_devices(bus); + /* + * For fenced PHB and frozen PE, it's handled as normal + * event. We have to remove the affected PHBs for dead + * PHB and IOC + */ + if (rc == EEH_NEXT_ERR_FROZEN_PE || + rc == EEH_NEXT_ERR_FENCED_PHB) { + eeh_handle_normal_event(pe); + } else { + list_for_each_entry(hose, &hose_list, list_node) { + phb_pe = eeh_phb_pe_get(hose); + if (!phb_pe || + !(phb_pe->state & EEH_PE_PHB_DEAD)) + continue; + + /* Notify all devices to be down */ + bus = eeh_pe_bus_get(phb_pe); + eeh_pe_dev_traverse(pe, + eeh_report_failure, NULL); + pcibios_remove_pci_devices(bus); + } } - } + + /* + * If we have detected dead IOC, we needn't proceed + * any more since all PHBs would have been removed + */ + if (rc == EEH_NEXT_ERR_DEAD_IOC) + break; + } while (rc != EEH_NEXT_ERR_NONE); } /** --- linux-3.13.0.orig/arch/powerpc/kernel/entry_64.S +++ linux-3.13.0/arch/powerpc/kernel/entry_64.S @@ -664,8 +664,16 @@ bl .restore_interrupts SCHEDULE_USER b .ret_from_except_lite - -2: bl .save_nvgprs +2: +#ifdef CONFIG_PPC_TRANSACTIONAL_MEM + andi. r0,r4,_TIF_USER_WORK_MASK & ~_TIF_RESTORE_TM + bne 3f /* only restore TM if nothing else to do */ + addi r3,r1,STACK_FRAME_OVERHEAD + bl .restore_tm_state + b restore +3: +#endif + bl .save_nvgprs bl .restore_interrupts addi r3,r1,STACK_FRAME_OVERHEAD bl .do_notify_resume --- linux-3.13.0.orig/arch/powerpc/kernel/exceptions-64e.S +++ linux-3.13.0/arch/powerpc/kernel/exceptions-64e.S @@ -309,8 +309,8 @@ EXCEPTION_STUB(0x300, hypercall) EXCEPTION_STUB(0x320, ehpriv) - .globl interrupt_end_book3e -interrupt_end_book3e: + .globl __end_interrupts +__end_interrupts: /* Critical Input Interrupt */ START_EXCEPTION(critical_input); @@ -494,7 +494,7 @@ beq+ 1f LOAD_REG_IMMEDIATE(r14,interrupt_base_book3e) - LOAD_REG_IMMEDIATE(r15,interrupt_end_book3e) + LOAD_REG_IMMEDIATE(r15,__end_interrupts) cmpld cr0,r10,r14 cmpld cr1,r10,r15 blt+ cr0,1f @@ -560,7 +560,7 @@ beq+ 1f LOAD_REG_IMMEDIATE(r14,interrupt_base_book3e) - LOAD_REG_IMMEDIATE(r15,interrupt_end_book3e) + LOAD_REG_IMMEDIATE(r15,__end_interrupts) cmpld cr0,r10,r14 cmpld cr1,r10,r15 blt+ cr0,1f @@ -1099,7 +1099,15 @@ * r4 = MAS0 w/TLBSEL & ESEL for the temp mapping */ /* Now we branch the new virtual address mapped by this entry */ +#ifdef CONFIG_RELOCATABLE + /* We have to find out address from lr. */ + bl 1f /* Find our address */ +1: mflr r6 + addi r6,r6,(2f - 1b) + tovirt(r6,r6) +#else LOAD_REG_IMMEDIATE(r6,2f) +#endif lis r7,MSR_KERNEL@h ori r7,r7,MSR_KERNEL@l mtspr SPRN_SRR0,r6 @@ -1350,9 +1358,17 @@ mflr r28 b 3b -_STATIC(init_core_book3e) +_GLOBAL(init_core_book3e) /* Establish the interrupt vector base */ +#ifdef CONFIG_RELOCATABLE +/* In relocatable case the value of the constant expression 'expr' is only + * offset. So instead, we should loads the address of label 'name'. + */ + tovirt(r2,r2) + LOAD_REG_ADDR(r3, interrupt_base_book3e) +#else LOAD_REG_IMMEDIATE(r3, interrupt_base_book3e) +#endif mtspr SPRN_IVPR,r3 sync blr --- linux-3.13.0.orig/arch/powerpc/kernel/exceptions-64s.S +++ linux-3.13.0/arch/powerpc/kernel/exceptions-64s.S @@ -155,8 +155,35 @@ */ HMT_MEDIUM_PPR_DISCARD SET_SCRATCH0(r13) /* save r13 */ +#ifdef CONFIG_PPC_P7_NAP +BEGIN_FTR_SECTION + /* Running native on arch 2.06 or later, check if we are + * waking up from nap. We only handle no state loss and + * supervisor state loss. We do -not- handle hypervisor + * state loss at this time. + */ + mfspr r13,SPRN_SRR1 + rlwinm. r13,r13,47-31,30,31 + OPT_GET_SPR(r13, SPRN_CFAR, CPU_FTR_CFAR) + beq 9f + + mfspr r13,SPRN_SRR1 + rlwinm. r13,r13,47-31,30,31 + /* waking up from powersave (nap) state */ + cmpwi cr1,r13,2 + /* Total loss of HV state is fatal. let's just stay stuck here */ + OPT_GET_SPR(r13, SPRN_CFAR, CPU_FTR_CFAR) + bgt cr1,. +9: + OPT_SET_SPR(r13, SPRN_CFAR, CPU_FTR_CFAR) +END_FTR_SECTION_IFSET(CPU_FTR_HVMODE | CPU_FTR_ARCH_206) +#endif /* CONFIG_PPC_P7_NAP */ EXCEPTION_PROLOG_0(PACA_EXMC) +BEGIN_FTR_SECTION + b machine_check_pSeries_early +FTR_SECTION_ELSE b machine_check_pSeries_0 +ALT_FTR_SECTION_END_IFSET(CPU_FTR_HVMODE) . = 0x300 .globl data_access_pSeries @@ -405,6 +432,64 @@ .align 7 /* moved from 0x200 */ +machine_check_pSeries_early: +BEGIN_FTR_SECTION + EXCEPTION_PROLOG_1(PACA_EXMC, NOTEST, 0x200) + /* + * Register contents: + * R13 = PACA + * R9 = CR + * Original R9 to R13 is saved on PACA_EXMC + * + * Switch to mc_emergency stack and handle re-entrancy (though we + * currently don't test for overflow). Save MCE registers srr1, + * srr0, dar and dsisr and then set ME=1 + * + * We use paca->in_mce to check whether this is the first entry or + * nested machine check. We increment paca->in_mce to track nested + * machine checks. + * + * If this is the first entry then set stack pointer to + * paca->mc_emergency_sp, otherwise r1 is already pointing to + * stack frame on mc_emergency stack. + * + * NOTE: We are here with MSR_ME=0 (off), which means we risk a + * checkstop if we get another machine check exception before we do + * rfid with MSR_ME=1. + */ + mr r11,r1 /* Save r1 */ + lhz r10,PACA_IN_MCE(r13) + cmpwi r10,0 /* Are we in nested machine check */ + bne 0f /* Yes, we are. */ + /* First machine check entry */ + ld r1,PACAMCEMERGSP(r13) /* Use MC emergency stack */ +0: subi r1,r1,INT_FRAME_SIZE /* alloc stack frame */ + addi r10,r10,1 /* increment paca->in_mce */ + sth r10,PACA_IN_MCE(r13) + std r11,GPR1(r1) /* Save r1 on the stack. */ + std r11,0(r1) /* make stack chain pointer */ + mfspr r11,SPRN_SRR0 /* Save SRR0 */ + std r11,_NIP(r1) + mfspr r11,SPRN_SRR1 /* Save SRR1 */ + std r11,_MSR(r1) + mfspr r11,SPRN_DAR /* Save DAR */ + std r11,_DAR(r1) + mfspr r11,SPRN_DSISR /* Save DSISR */ + std r11,_DSISR(r1) + std r9,_CCR(r1) /* Save CR in stackframe */ + /* Save r9 through r13 from EXMC save area to stack frame. */ + EXCEPTION_PROLOG_COMMON_2(PACA_EXMC) + mfmsr r11 /* get MSR value */ + ori r11,r11,MSR_ME /* turn on ME bit */ + ori r11,r11,MSR_RI /* turn on RI bit */ + ld r12,PACAKBASE(r13) /* get high part of &label */ + LOAD_HANDLER(r12, machine_check_handle_early) + mtspr SPRN_SRR0,r12 + mtspr SPRN_SRR1,r11 + rfid + b . /* prevent speculative execution */ +END_FTR_SECTION_IFSET(CPU_FTR_HVMODE) + machine_check_pSeries: .globl machine_check_fwnmi machine_check_fwnmi: @@ -688,30 +773,6 @@ STD_EXCEPTION_COMMON(0x100, system_reset, .system_reset_exception) - /* - * Machine check is different because we use a different - * save area: PACA_EXMC instead of PACA_EXGEN. - */ - .align 7 - .globl machine_check_common -machine_check_common: - - mfspr r10,SPRN_DAR - std r10,PACA_EXGEN+EX_DAR(r13) - mfspr r10,SPRN_DSISR - stw r10,PACA_EXGEN+EX_DSISR(r13) - EXCEPTION_PROLOG_COMMON(0x200, PACA_EXMC) - FINISH_NAP - DISABLE_INTS - ld r3,PACA_EXGEN+EX_DAR(r13) - lwz r4,PACA_EXGEN+EX_DSISR(r13) - std r3,_DAR(r1) - std r4,_DSISR(r1) - bl .save_nvgprs - addi r3,r1,STACK_FRAME_OVERHEAD - bl .machine_check_exception - b .ret_from_except - STD_EXCEPTION_COMMON_ASYNC(0x500, hardware_interrupt, do_IRQ) STD_EXCEPTION_COMMON_ASYNC(0x900, decrementer, .timer_interrupt) STD_EXCEPTION_COMMON(0x980, hdecrementer, .hdec_interrupt) @@ -1080,6 +1141,30 @@ #endif /* __DISABLED__ */ + /* + * Machine check is different because we use a different + * save area: PACA_EXMC instead of PACA_EXGEN. + */ + .align 7 + .globl machine_check_common +machine_check_common: + + mfspr r10,SPRN_DAR + std r10,PACA_EXGEN+EX_DAR(r13) + mfspr r10,SPRN_DSISR + stw r10,PACA_EXGEN+EX_DSISR(r13) + EXCEPTION_PROLOG_COMMON(0x200, PACA_EXMC) + FINISH_NAP + DISABLE_INTS + ld r3,PACA_EXGEN+EX_DAR(r13) + lwz r4,PACA_EXGEN+EX_DSISR(r13) + std r3,_DAR(r1) + std r4,_DSISR(r1) + bl .save_nvgprs + addi r3,r1,STACK_FRAME_OVERHEAD + bl .machine_check_exception + b .ret_from_except + .align 7 .globl alignment_common alignment_common: @@ -1263,6 +1348,120 @@ #endif /* CONFIG_PPC_POWERNV */ +#define MACHINE_CHECK_HANDLER_WINDUP \ + /* Clear MSR_RI before setting SRR0 and SRR1. */\ + li r0,MSR_RI; \ + mfmsr r9; /* get MSR value */ \ + andc r9,r9,r0; \ + mtmsrd r9,1; /* Clear MSR_RI */ \ + /* Move original SRR0 and SRR1 into the respective regs */ \ + ld r9,_MSR(r1); \ + mtspr SPRN_SRR1,r9; \ + ld r3,_NIP(r1); \ + mtspr SPRN_SRR0,r3; \ + ld r9,_CTR(r1); \ + mtctr r9; \ + ld r9,_XER(r1); \ + mtxer r9; \ + ld r9,_LINK(r1); \ + mtlr r9; \ + REST_GPR(0, r1); \ + REST_8GPRS(2, r1); \ + REST_GPR(10, r1); \ + ld r11,_CCR(r1); \ + mtcr r11; \ + /* Decrement paca->in_mce. */ \ + lhz r12,PACA_IN_MCE(r13); \ + subi r12,r12,1; \ + sth r12,PACA_IN_MCE(r13); \ + REST_GPR(11, r1); \ + REST_2GPRS(12, r1); \ + /* restore original r1. */ \ + ld r1,GPR1(r1) + + /* + * Handle machine check early in real mode. We come here with + * ME=1, MMU (IR=0 and DR=0) off and using MC emergency stack. + */ + .align 7 + .globl machine_check_handle_early +machine_check_handle_early: + std r0,GPR0(r1) /* Save r0 */ + EXCEPTION_PROLOG_COMMON_3(0x200) + bl .save_nvgprs + addi r3,r1,STACK_FRAME_OVERHEAD + bl .machine_check_early + ld r12,_MSR(r1) +#ifdef CONFIG_PPC_P7_NAP + /* + * Check if thread was in power saving mode. We come here when any + * of the following is true: + * a. thread wasn't in power saving mode + * b. thread was in power saving mode with no state loss or + * supervisor state loss + * + * Go back to nap again if (b) is true. + */ + rlwinm. r11,r12,47-31,30,31 /* Was it in power saving mode? */ + beq 4f /* No, it wasn;t */ + /* Thread was in power saving mode. Go back to nap again. */ + cmpwi r11,2 + bne 3f + /* Supervisor state loss */ + li r0,1 + stb r0,PACA_NAPSTATELOST(r13) +3: bl .machine_check_queue_event + MACHINE_CHECK_HANDLER_WINDUP + GET_PACA(r13) + ld r1,PACAR1(r13) + b .power7_enter_nap_mode +4: +#endif + /* + * Check if we are coming from hypervisor userspace. If yes then we + * continue in host kernel in V mode to deliver the MC event. + */ + rldicl. r11,r12,4,63 /* See if MC hit while in HV mode. */ + beq 5f + andi. r11,r12,MSR_PR /* See if coming from user. */ + bne 9f /* continue in V mode if we are. */ + +5: +#ifdef CONFIG_KVM_BOOK3S_64_HV + /* + * We are coming from kernel context. Check if we are coming from + * guest. if yes, then we can continue. We will fall through + * do_kvm_200->kvmppc_interrupt to deliver the MC event to guest. + */ + lbz r11,HSTATE_IN_GUEST(r13) + cmpwi r11,0 /* Check if coming from guest */ + bne 9f /* continue if we are. */ +#endif + /* + * At this point we are not sure about what context we come from. + * Queue up the MCE event and return from the interrupt. + * But before that, check if this is an un-recoverable exception. + * If yes, then stay on emergency stack and panic. + */ + andi. r11,r12,MSR_RI + bne 2f +1: addi r3,r1,STACK_FRAME_OVERHEAD + bl .unrecoverable_exception + b 1b +2: + /* + * Return from MC interrupt. + * Queue up the MCE event so that we can log it later, while + * returning from kernel or opal call. + */ + bl .machine_check_queue_event + MACHINE_CHECK_HANDLER_WINDUP + rfid +9: + /* Deliver the machine check to host kernel in V mode. */ + MACHINE_CHECK_HANDLER_WINDUP + b machine_check_pSeries + /* * r13 points to the PACA, r9 contains the saved CR, * r12 contain the saved SRR1, SRR0 is still ready for return --- linux-3.13.0.orig/arch/powerpc/kernel/fpu.S +++ linux-3.13.0/arch/powerpc/kernel/fpu.S @@ -81,6 +81,22 @@ #endif /* CONFIG_PPC_TRANSACTIONAL_MEM */ /* + * Enable use of the FPU, and VSX if possible, for the caller. + */ +_GLOBAL(fp_enable) + mfmsr r3 + ori r3,r3,MSR_FP +#ifdef CONFIG_VSX +BEGIN_FTR_SECTION + oris r3,r3,MSR_VSX@h +END_FTR_SECTION_IFSET(CPU_FTR_VSX) +#endif + SYNC + MTMSRD(r3) + isync /* (not necessary for arch 2.02 and later) */ + blr + +/* * Load state from memory into FP registers including FPSCR. * Assumes the caller has enabled FP in the MSR. */ --- linux-3.13.0.orig/arch/powerpc/kernel/head_64.S +++ linux-3.13.0/arch/powerpc/kernel/head_64.S @@ -91,6 +91,10 @@ __secondary_hold_acknowledge: .llong 0x0 + .globl __run_at_kexec +__run_at_kexec: + .llong 0x0 /* Flag for the secondary kernel from kexec. */ + #ifdef CONFIG_RELOCATABLE /* This flag is set to 1 by a loader if the kernel should run * at the loaded address instead of the linked address. This @@ -126,6 +130,10 @@ /* Grab our physical cpu number */ mr r24,r3 /* stash r4 for book3e */ +#ifdef CONFIG_PPC_FSL_BOOK3E + /* we need to setup initial TLB entry. */ + li r4,0 +#endif mr r25,r4 /* Tell the master cpu we're here */ @@ -418,12 +426,31 @@ /* process relocations for the final address of the kernel */ lis r25,PAGE_OFFSET@highest /* compute virtual base of kernel */ sldi r25,r25,32 +#if defined(CONFIG_PPC_BOOK3E) + tovirt(r26,r26) /* on booke, we already run at PAGE_OFFSET */ +#endif +#if defined(CONFIG_KEXEC) || defined(CONFIG_CRASH_DUMP) + /* If relocated we need to restore this flag on that relocated address. */ + ld r7,__run_at_kexec-_stext(r26) + std r7,__run_at_kexec-_stext(r26) +#endif + lwz r7,__run_at_load-_stext(r26) +#if defined(CONFIG_PPC_BOOK3E) + tophys(r26,r26) /* Restore for the remains. */ +#endif cmplwi cr0,r7,1 /* flagged to stay where we are ? */ bne 1f add r25,r25,r26 1: mr r3,r25 bl .relocate +#if defined(CONFIG_PPC_BOOK3E) + /* In relocatable case we always have to load the address of label 'name' + * to set IVPR. So after .relocate we have to update IVPR with current + * address of label. + */ + bl .init_core_book3e +#endif #endif /* @@ -438,12 +465,12 @@ tovirt(r3,r3) /* on booke, we already run at PAGE_OFFSET */ #endif mr. r4,r26 /* In some cases the loader may */ +#if defined(CONFIG_PPC_BOOK3E) + tovirt(r4,r4) +#endif beq 9f /* have already put us at zero */ li r6,0x100 /* Start offset, the first 0x100 */ /* bytes were copied earlier. */ -#ifdef CONFIG_PPC_BOOK3E - tovirt(r6,r6) /* on booke, we already run at PAGE_OFFSET */ -#endif #ifdef CONFIG_RELOCATABLE /* @@ -451,12 +478,24 @@ * variable __run_at_load, if it is set the kernel is treated as relocatable * kernel, otherwise it will be moved to PHYSICAL_START */ +#if defined(CONFIG_PPC_BOOK3E) + tovirt(r26,r26) /* on booke, we already run at PAGE_OFFSET */ +#endif lwz r7,__run_at_load-_stext(r26) +#if defined(CONFIG_PPC_BOOK3E) + tophys(r26,r26) /* Restore for the remains. */ +#endif cmplwi cr0,r7,1 bne 3f +#ifdef CONFIG_PPC_BOOK3E + LOAD_REG_ADDR(r5, __end_interrupts) + LOAD_REG_ADDR(r11, _stext) + sub r5,r5,r11 +#else /* just copy interrupts */ LOAD_REG_IMMEDIATE(r5, __end_interrupts - _stext) +#endif b 5f 3: #endif @@ -475,6 +514,9 @@ p_end: .llong _end - _stext 4: /* Now copy the rest of the kernel up to _end */ +#if defined(CONFIG_PPC_BOOK3E) + tovirt(r26,r26) +#endif addis r5,r26,(p_end - _stext)@ha ld r5,(p_end - _stext)@l(r5) /* get _end */ 5: bl .copy_and_flush /* copy the rest */ --- linux-3.13.0.orig/arch/powerpc/kernel/idle_power7.S +++ linux-3.13.0/arch/powerpc/kernel/idle_power7.S @@ -84,6 +84,7 @@ std r9,_MSR(r1) std r1,PACAR1(r13) +_GLOBAL(power7_enter_nap_mode) #ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE /* Tell KVM we're napping */ li r4,KVM_HWTHREAD_IN_NAP --- linux-3.13.0.orig/arch/powerpc/kernel/iommu.c +++ linux-3.13.0/arch/powerpc/kernel/iommu.c @@ -1088,6 +1088,14 @@ memset(tbl->it_map, 0xff, sz); iommu_clear_tces_and_put_pages(tbl, tbl->it_offset, tbl->it_size); + /* + * Disable iommu bypass, otherwise the user can DMA to all of + * our physical memory via the bypass window instead of just + * the pages that has been explicitly mapped into the iommu + */ + if (tbl->set_bypass) + tbl->set_bypass(tbl, false); + return 0; } EXPORT_SYMBOL_GPL(iommu_take_ownership); @@ -1102,6 +1110,10 @@ /* Restore bit#0 set by iommu_init_table() */ if (tbl->it_offset == 0) set_bit(0, tbl->it_map); + + /* The kernel owns the device now, we can restore the iommu bypass */ + if (tbl->set_bypass) + tbl->set_bypass(tbl, true); } EXPORT_SYMBOL_GPL(iommu_release_ownership); --- linux-3.13.0.orig/arch/powerpc/kernel/machine_kexec.c +++ linux-3.13.0/arch/powerpc/kernel/machine_kexec.c @@ -196,7 +196,9 @@ /* Values we need to export to the second kernel via the device tree. */ static phys_addr_t kernel_end; +static phys_addr_t crashk_base; static phys_addr_t crashk_size; +static unsigned long long mem_limit; static struct property kernel_end_prop = { .name = "linux,kernel-end", @@ -207,7 +209,7 @@ static struct property crashk_base_prop = { .name = "linux,crashkernel-base", .length = sizeof(phys_addr_t), - .value = &crashk_res.start, + .value = &crashk_base }; static struct property crashk_size_prop = { @@ -219,9 +221,11 @@ static struct property memory_limit_prop = { .name = "linux,memory-limit", .length = sizeof(unsigned long long), - .value = &memory_limit, + .value = &mem_limit, }; +#define cpu_to_be_ulong __PASTE(cpu_to_be, BITS_PER_LONG) + static void __init export_crashk_values(struct device_node *node) { struct property *prop; @@ -237,8 +241,9 @@ of_remove_property(node, prop); if (crashk_res.start != 0) { + crashk_base = cpu_to_be_ulong(crashk_res.start), of_add_property(node, &crashk_base_prop); - crashk_size = resource_size(&crashk_res); + crashk_size = cpu_to_be_ulong(resource_size(&crashk_res)); of_add_property(node, &crashk_size_prop); } @@ -246,6 +251,7 @@ * memory_limit is required by the kexec-tools to limit the * crash regions to the actual memory used. */ + mem_limit = cpu_to_be_ulong(memory_limit); of_update_property(node, &memory_limit_prop); } @@ -264,7 +270,7 @@ of_remove_property(node, prop); /* information needed by userspace when using default_machine_kexec */ - kernel_end = __pa(_end); + kernel_end = cpu_to_be_ulong(__pa(_end)); of_add_property(node, &kernel_end_prop); export_crashk_values(node); --- linux-3.13.0.orig/arch/powerpc/kernel/machine_kexec_64.c +++ linux-3.13.0/arch/powerpc/kernel/machine_kexec_64.c @@ -30,72 +30,6 @@ #include #include -int default_machine_kexec_prepare(struct kimage *image) -{ - int i; - unsigned long begin, end; /* limits of segment */ - unsigned long low, high; /* limits of blocked memory range */ - struct device_node *node; - const unsigned long *basep; - const unsigned int *sizep; - - if (!ppc_md.hpte_clear_all) - return -ENOENT; - - /* - * Since we use the kernel fault handlers and paging code to - * handle the virtual mode, we must make sure no destination - * overlaps kernel static data or bss. - */ - for (i = 0; i < image->nr_segments; i++) - if (image->segment[i].mem < __pa(_end)) - return -ETXTBSY; - - /* - * For non-LPAR, we absolutely can not overwrite the mmu hash - * table, since we are still using the bolted entries in it to - * do the copy. Check that here. - * - * It is safe if the end is below the start of the blocked - * region (end <= low), or if the beginning is after the - * end of the blocked region (begin >= high). Use the - * boolean identity !(a || b) === (!a && !b). - */ - if (htab_address) { - low = __pa(htab_address); - high = low + htab_size_bytes; - - for (i = 0; i < image->nr_segments; i++) { - begin = image->segment[i].mem; - end = begin + image->segment[i].memsz; - - if ((begin < high) && (end > low)) - return -ETXTBSY; - } - } - - /* We also should not overwrite the tce tables */ - for_each_node_by_type(node, "pci") { - basep = of_get_property(node, "linux,tce-base", NULL); - sizep = of_get_property(node, "linux,tce-size", NULL); - if (basep == NULL || sizep == NULL) - continue; - - low = *basep; - high = low + (*sizep); - - for (i = 0; i < image->nr_segments; i++) { - begin = image->segment[i].mem; - end = begin + image->segment[i].memsz; - - if ((begin < high) && (end > low)) - return -ETXTBSY; - } - } - - return 0; -} - #define IND_FLAGS (IND_DESTINATION | IND_INDIRECTION | IND_DONE | IND_SOURCE) static void copy_segments(unsigned long ind) @@ -367,8 +301,90 @@ /* NOTREACHED */ } +#ifdef CONFIG_PPC_BOOK3E +int default_machine_kexec_prepare(struct kimage *image) +{ + int i; + /* + * Since we use the kernel fault handlers and paging code to + * handle the virtual mode, we must make sure no destination + * overlaps kernel static data or bss. + */ + for (i = 0; i < image->nr_segments; i++) + if (image->segment[i].mem < __pa(_end)) + return -ETXTBSY; + return 0; +} +#else /* CONFIG_PPC_BOOK3E */ +int default_machine_kexec_prepare(struct kimage *image) +{ + int i; + unsigned long begin, end; /* limits of segment */ + unsigned long low, high; /* limits of blocked memory range */ + struct device_node *node; + const unsigned long *basep; + const unsigned int *sizep; + + if (!ppc_md.hpte_clear_all) + return -ENOENT; + + /* + * Since we use the kernel fault handlers and paging code to + * handle the virtual mode, we must make sure no destination + * overlaps kernel static data or bss. + */ + for (i = 0; i < image->nr_segments; i++) + if (image->segment[i].mem < __pa(_end)) + return -ETXTBSY; + + /* + * For non-LPAR, we absolutely can not overwrite the mmu hash + * table, since we are still using the bolted entries in it to + * do the copy. Check that here. + * + * It is safe if the end is below the start of the blocked + * region (end <= low), or if the beginning is after the + * end of the blocked region (begin >= high). Use the + * boolean identity !(a || b) === (!a && !b). + */ + if (htab_address) { + low = __pa(htab_address); + high = low + htab_size_bytes; + + for (i = 0; i < image->nr_segments; i++) { + begin = image->segment[i].mem; + end = begin + image->segment[i].memsz; + + if ((begin < high) && (end > low)) + return -ETXTBSY; + } + } + + /* We also should not overwrite the tce tables */ + for_each_node_by_type(node, "pci") { + basep = of_get_property(node, "linux,tce-base", NULL); + sizep = of_get_property(node, "linux,tce-size", NULL); + if (basep == NULL || sizep == NULL) + continue; + + low = *basep; + high = low + (*sizep); + + for (i = 0; i < image->nr_segments; i++) { + begin = image->segment[i].mem; + end = begin + image->segment[i].memsz; + + if ((begin < high) && (end > low)) + return -ETXTBSY; + } + } + + return 0; +} + /* Values we need to export to the second kernel via the device tree. */ static unsigned long htab_base; +static unsigned long htab_size; static struct property htab_base_prop = { .name = "linux,htab-base", @@ -379,7 +395,7 @@ static struct property htab_size_prop = { .name = "linux,htab-size", .length = sizeof(unsigned long), - .value = &htab_size_bytes, + .value = &htab_size, }; static int __init export_htab_values(void) @@ -403,11 +419,13 @@ if (prop) of_remove_property(node, prop); - htab_base = __pa(htab_address); + htab_base = cpu_to_be64(__pa(htab_address)); of_add_property(node, &htab_base_prop); + htab_size = cpu_to_be64(htab_size_bytes); of_add_property(node, &htab_size_prop); of_node_put(node); return 0; } late_initcall(export_htab_values); +#endif /* !CONFIG_PPC_BOOK3E */ --- linux-3.13.0.orig/arch/powerpc/kernel/mce.c +++ linux-3.13.0/arch/powerpc/kernel/mce.c @@ -0,0 +1,352 @@ +/* + * Machine check exception handling. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * Copyright 2013 IBM Corporation + * Author: Mahesh Salgaonkar + */ + +#undef DEBUG +#define pr_fmt(fmt) "mce: " fmt + +#include +#include +#include +#include +#include +#include + +static DEFINE_PER_CPU(int, mce_nest_count); +static DEFINE_PER_CPU(struct machine_check_event[MAX_MC_EVT], mce_event); + +/* Queue for delayed MCE events. */ +static DEFINE_PER_CPU(int, mce_queue_count); +static DEFINE_PER_CPU(struct machine_check_event[MAX_MC_EVT], mce_event_queue); + +static void machine_check_process_queued_event(struct irq_work *work); +struct irq_work mce_event_process_work = { + .func = machine_check_process_queued_event, +}; + +static void mce_set_error_info(struct machine_check_event *mce, + struct mce_error_info *mce_err) +{ + mce->error_type = mce_err->error_type; + switch (mce_err->error_type) { + case MCE_ERROR_TYPE_UE: + mce->u.ue_error.ue_error_type = mce_err->u.ue_error_type; + break; + case MCE_ERROR_TYPE_SLB: + mce->u.slb_error.slb_error_type = mce_err->u.slb_error_type; + break; + case MCE_ERROR_TYPE_ERAT: + mce->u.erat_error.erat_error_type = mce_err->u.erat_error_type; + break; + case MCE_ERROR_TYPE_TLB: + mce->u.tlb_error.tlb_error_type = mce_err->u.tlb_error_type; + break; + case MCE_ERROR_TYPE_UNKNOWN: + default: + break; + } +} + +/* + * Decode and save high level MCE information into per cpu buffer which + * is an array of machine_check_event structure. + */ +void save_mce_event(struct pt_regs *regs, long handled, + struct mce_error_info *mce_err, + uint64_t nip, uint64_t addr) +{ + uint64_t srr1; + int index = __get_cpu_var(mce_nest_count)++; + struct machine_check_event *mce = &__get_cpu_var(mce_event[index]); + + /* + * Return if we don't have enough space to log mce event. + * mce_nest_count may go beyond MAX_MC_EVT but that's ok, + * the check below will stop buffer overrun. + */ + if (index >= MAX_MC_EVT) + return; + + /* Populate generic machine check info */ + mce->version = MCE_V1; + mce->srr0 = nip; + mce->srr1 = regs->msr; + mce->gpr3 = regs->gpr[3]; + mce->in_use = 1; + + mce->initiator = MCE_INITIATOR_CPU; + if (handled) + mce->disposition = MCE_DISPOSITION_RECOVERED; + else + mce->disposition = MCE_DISPOSITION_NOT_RECOVERED; + mce->severity = MCE_SEV_ERROR_SYNC; + + srr1 = regs->msr; + + /* + * Populate the mce error_type and type-specific error_type. + */ + mce_set_error_info(mce, mce_err); + + if (!addr) + return; + + if (mce->error_type == MCE_ERROR_TYPE_TLB) { + mce->u.tlb_error.effective_address_provided = true; + mce->u.tlb_error.effective_address = addr; + } else if (mce->error_type == MCE_ERROR_TYPE_SLB) { + mce->u.slb_error.effective_address_provided = true; + mce->u.slb_error.effective_address = addr; + } else if (mce->error_type == MCE_ERROR_TYPE_ERAT) { + mce->u.erat_error.effective_address_provided = true; + mce->u.erat_error.effective_address = addr; + } else if (mce->error_type == MCE_ERROR_TYPE_UE) { + mce->u.ue_error.effective_address_provided = true; + mce->u.ue_error.effective_address = addr; + } + return; +} + +/* + * get_mce_event: + * mce Pointer to machine_check_event structure to be filled. + * release Flag to indicate whether to free the event slot or not. + * 0 <= do not release the mce event. Caller will invoke + * release_mce_event() once event has been consumed. + * 1 <= release the slot. + * + * return 1 = success + * 0 = failure + * + * get_mce_event() will be called by platform specific machine check + * handle routine and in KVM. + * When we call get_mce_event(), we are still in interrupt context and + * preemption will not be scheduled until ret_from_expect() routine + * is called. + */ +int get_mce_event(struct machine_check_event *mce, bool release) +{ + int index = __get_cpu_var(mce_nest_count) - 1; + struct machine_check_event *mc_evt; + int ret = 0; + + /* Sanity check */ + if (index < 0) + return ret; + + /* Check if we have MCE info to process. */ + if (index < MAX_MC_EVT) { + mc_evt = &__get_cpu_var(mce_event[index]); + /* Copy the event structure and release the original */ + if (mce) + *mce = *mc_evt; + if (release) + mc_evt->in_use = 0; + ret = 1; + } + /* Decrement the count to free the slot. */ + if (release) + __get_cpu_var(mce_nest_count)--; + + return ret; +} + +void release_mce_event(void) +{ + get_mce_event(NULL, true); +} + +/* + * Queue up the MCE event which then can be handled later. + */ +void machine_check_queue_event(void) +{ + int index; + struct machine_check_event evt; + + if (!get_mce_event(&evt, MCE_EVENT_RELEASE)) + return; + + index = __get_cpu_var(mce_queue_count)++; + /* If queue is full, just return for now. */ + if (index >= MAX_MC_EVT) { + __get_cpu_var(mce_queue_count)--; + return; + } + __get_cpu_var(mce_event_queue[index]) = evt; + + /* Queue irq work to process this event later. */ + irq_work_queue(&mce_event_process_work); +} + +/* + * process pending MCE event from the mce event queue. This function will be + * called during syscall exit. + */ +static void machine_check_process_queued_event(struct irq_work *work) +{ + int index; + + /* + * For now just print it to console. + * TODO: log this error event to FSP or nvram. + */ + while (__get_cpu_var(mce_queue_count) > 0) { + index = __get_cpu_var(mce_queue_count) - 1; + machine_check_print_event_info( + &__get_cpu_var(mce_event_queue[index])); + __get_cpu_var(mce_queue_count)--; + } +} + +void machine_check_print_event_info(struct machine_check_event *evt) +{ + const char *level, *sevstr, *subtype; + static const char *mc_ue_types[] = { + "Indeterminate", + "Instruction fetch", + "Page table walk ifetch", + "Load/Store", + "Page table walk Load/Store", + }; + static const char *mc_slb_types[] = { + "Indeterminate", + "Parity", + "Multihit", + }; + static const char *mc_erat_types[] = { + "Indeterminate", + "Parity", + "Multihit", + }; + static const char *mc_tlb_types[] = { + "Indeterminate", + "Parity", + "Multihit", + }; + + /* Print things out */ + if (evt->version != MCE_V1) { + pr_err("Machine Check Exception, Unknown event version %d !\n", + evt->version); + return; + } + switch (evt->severity) { + case MCE_SEV_NO_ERROR: + level = KERN_INFO; + sevstr = "Harmless"; + break; + case MCE_SEV_WARNING: + level = KERN_WARNING; + sevstr = ""; + break; + case MCE_SEV_ERROR_SYNC: + level = KERN_ERR; + sevstr = "Severe"; + break; + case MCE_SEV_FATAL: + default: + level = KERN_ERR; + sevstr = "Fatal"; + break; + } + + printk("%s%s Machine check interrupt [%s]\n", level, sevstr, + evt->disposition == MCE_DISPOSITION_RECOVERED ? + "Recovered" : "[Not recovered"); + printk("%s Initiator: %s\n", level, + evt->initiator == MCE_INITIATOR_CPU ? "CPU" : "Unknown"); + switch (evt->error_type) { + case MCE_ERROR_TYPE_UE: + subtype = evt->u.ue_error.ue_error_type < + ARRAY_SIZE(mc_ue_types) ? + mc_ue_types[evt->u.ue_error.ue_error_type] + : "Unknown"; + printk("%s Error type: UE [%s]\n", level, subtype); + if (evt->u.ue_error.effective_address_provided) + printk("%s Effective address: %016llx\n", + level, evt->u.ue_error.effective_address); + if (evt->u.ue_error.physical_address_provided) + printk("%s Physial address: %016llx\n", + level, evt->u.ue_error.physical_address); + break; + case MCE_ERROR_TYPE_SLB: + subtype = evt->u.slb_error.slb_error_type < + ARRAY_SIZE(mc_slb_types) ? + mc_slb_types[evt->u.slb_error.slb_error_type] + : "Unknown"; + printk("%s Error type: SLB [%s]\n", level, subtype); + if (evt->u.slb_error.effective_address_provided) + printk("%s Effective address: %016llx\n", + level, evt->u.slb_error.effective_address); + break; + case MCE_ERROR_TYPE_ERAT: + subtype = evt->u.erat_error.erat_error_type < + ARRAY_SIZE(mc_erat_types) ? + mc_erat_types[evt->u.erat_error.erat_error_type] + : "Unknown"; + printk("%s Error type: ERAT [%s]\n", level, subtype); + if (evt->u.erat_error.effective_address_provided) + printk("%s Effective address: %016llx\n", + level, evt->u.erat_error.effective_address); + break; + case MCE_ERROR_TYPE_TLB: + subtype = evt->u.tlb_error.tlb_error_type < + ARRAY_SIZE(mc_tlb_types) ? + mc_tlb_types[evt->u.tlb_error.tlb_error_type] + : "Unknown"; + printk("%s Error type: TLB [%s]\n", level, subtype); + if (evt->u.tlb_error.effective_address_provided) + printk("%s Effective address: %016llx\n", + level, evt->u.tlb_error.effective_address); + break; + default: + case MCE_ERROR_TYPE_UNKNOWN: + printk("%s Error type: Unknown\n", level); + break; + } +} + +uint64_t get_mce_fault_addr(struct machine_check_event *evt) +{ + switch (evt->error_type) { + case MCE_ERROR_TYPE_UE: + if (evt->u.ue_error.effective_address_provided) + return evt->u.ue_error.effective_address; + break; + case MCE_ERROR_TYPE_SLB: + if (evt->u.slb_error.effective_address_provided) + return evt->u.slb_error.effective_address; + break; + case MCE_ERROR_TYPE_ERAT: + if (evt->u.erat_error.effective_address_provided) + return evt->u.erat_error.effective_address; + break; + case MCE_ERROR_TYPE_TLB: + if (evt->u.tlb_error.effective_address_provided) + return evt->u.tlb_error.effective_address; + break; + default: + case MCE_ERROR_TYPE_UNKNOWN: + break; + } + return 0; +} +EXPORT_SYMBOL(get_mce_fault_addr); --- linux-3.13.0.orig/arch/powerpc/kernel/mce_power.c +++ linux-3.13.0/arch/powerpc/kernel/mce_power.c @@ -0,0 +1,313 @@ +/* + * Machine check exception handling CPU-side for power7 and power8 + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * Copyright 2013 IBM Corporation + * Author: Mahesh Salgaonkar + */ + +#undef DEBUG +#define pr_fmt(fmt) "mce_power: " fmt + +#include +#include +#include +#include +#include + +/* flush SLBs and reload */ +static void flush_and_reload_slb(void) +{ + struct slb_shadow *slb; + unsigned long i, n; + + /* Invalidate all SLBs */ + asm volatile("slbmte %0,%0; slbia" : : "r" (0)); + +#ifdef CONFIG_KVM_BOOK3S_HANDLER + /* + * If machine check is hit when in guest or in transition, we will + * only flush the SLBs and continue. + */ + if (get_paca()->kvm_hstate.in_guest) + return; +#endif + + /* For host kernel, reload the SLBs from shadow SLB buffer. */ + slb = get_slb_shadow(); + if (!slb) + return; + + n = min_t(u32, be32_to_cpu(slb->persistent), SLB_MIN_SIZE); + + /* Load up the SLB entries from shadow SLB */ + for (i = 0; i < n; i++) { + unsigned long rb = be64_to_cpu(slb->save_area[i].esid); + unsigned long rs = be64_to_cpu(slb->save_area[i].vsid); + + rb = (rb & ~0xFFFul) | i; + asm volatile("slbmte %0,%1" : : "r" (rs), "r" (rb)); + } +} + +static long mce_handle_derror(uint64_t dsisr, uint64_t slb_error_bits) +{ + long handled = 1; + + /* + * flush and reload SLBs for SLB errors and flush TLBs for TLB errors. + * reset the error bits whenever we handle them so that at the end + * we can check whether we handled all of them or not. + * */ + if (dsisr & slb_error_bits) { + flush_and_reload_slb(); + /* reset error bits */ + dsisr &= ~(slb_error_bits); + } + if (dsisr & P7_DSISR_MC_TLB_MULTIHIT_MFTLB) { + if (cur_cpu_spec && cur_cpu_spec->flush_tlb) + cur_cpu_spec->flush_tlb(TLBIEL_INVAL_PAGE); + /* reset error bits */ + dsisr &= ~P7_DSISR_MC_TLB_MULTIHIT_MFTLB; + } + /* Any other errors we don't understand? */ + if (dsisr & 0xffffffffUL) + handled = 0; + + return handled; +} + +static long mce_handle_derror_p7(uint64_t dsisr) +{ + return mce_handle_derror(dsisr, P7_DSISR_MC_SLB_ERRORS); +} + +static long mce_handle_common_ierror(uint64_t srr1) +{ + long handled = 0; + + switch (P7_SRR1_MC_IFETCH(srr1)) { + case 0: + break; + case P7_SRR1_MC_IFETCH_SLB_PARITY: + case P7_SRR1_MC_IFETCH_SLB_MULTIHIT: + /* flush and reload SLBs for SLB errors. */ + flush_and_reload_slb(); + handled = 1; + break; + case P7_SRR1_MC_IFETCH_TLB_MULTIHIT: + if (cur_cpu_spec && cur_cpu_spec->flush_tlb) { + cur_cpu_spec->flush_tlb(TLBIEL_INVAL_PAGE); + handled = 1; + } + break; + default: + break; + } + + return handled; +} + +static long mce_handle_ierror_p7(uint64_t srr1) +{ + long handled = 0; + + handled = mce_handle_common_ierror(srr1); + + if (P7_SRR1_MC_IFETCH(srr1) == P7_SRR1_MC_IFETCH_SLB_BOTH) { + flush_and_reload_slb(); + handled = 1; + } + return handled; +} + +static void mce_get_common_ierror(struct mce_error_info *mce_err, uint64_t srr1) +{ + switch (P7_SRR1_MC_IFETCH(srr1)) { + case P7_SRR1_MC_IFETCH_SLB_PARITY: + mce_err->error_type = MCE_ERROR_TYPE_SLB; + mce_err->u.slb_error_type = MCE_SLB_ERROR_PARITY; + break; + case P7_SRR1_MC_IFETCH_SLB_MULTIHIT: + mce_err->error_type = MCE_ERROR_TYPE_SLB; + mce_err->u.slb_error_type = MCE_SLB_ERROR_MULTIHIT; + break; + case P7_SRR1_MC_IFETCH_TLB_MULTIHIT: + mce_err->error_type = MCE_ERROR_TYPE_TLB; + mce_err->u.tlb_error_type = MCE_TLB_ERROR_MULTIHIT; + break; + case P7_SRR1_MC_IFETCH_UE: + case P7_SRR1_MC_IFETCH_UE_IFU_INTERNAL: + mce_err->error_type = MCE_ERROR_TYPE_UE; + mce_err->u.ue_error_type = MCE_UE_ERROR_IFETCH; + break; + case P7_SRR1_MC_IFETCH_UE_TLB_RELOAD: + mce_err->error_type = MCE_ERROR_TYPE_UE; + mce_err->u.ue_error_type = + MCE_UE_ERROR_PAGE_TABLE_WALK_IFETCH; + break; + } +} + +static void mce_get_ierror_p7(struct mce_error_info *mce_err, uint64_t srr1) +{ + mce_get_common_ierror(mce_err, srr1); + if (P7_SRR1_MC_IFETCH(srr1) == P7_SRR1_MC_IFETCH_SLB_BOTH) { + mce_err->error_type = MCE_ERROR_TYPE_SLB; + mce_err->u.slb_error_type = MCE_SLB_ERROR_INDETERMINATE; + } +} + +static void mce_get_derror_p7(struct mce_error_info *mce_err, uint64_t dsisr) +{ + if (dsisr & P7_DSISR_MC_UE) { + mce_err->error_type = MCE_ERROR_TYPE_UE; + mce_err->u.ue_error_type = MCE_UE_ERROR_LOAD_STORE; + } else if (dsisr & P7_DSISR_MC_UE_TABLEWALK) { + mce_err->error_type = MCE_ERROR_TYPE_UE; + mce_err->u.ue_error_type = + MCE_UE_ERROR_PAGE_TABLE_WALK_LOAD_STORE; + } else if (dsisr & P7_DSISR_MC_ERAT_MULTIHIT) { + mce_err->error_type = MCE_ERROR_TYPE_ERAT; + mce_err->u.erat_error_type = MCE_ERAT_ERROR_MULTIHIT; + } else if (dsisr & P7_DSISR_MC_SLB_MULTIHIT) { + mce_err->error_type = MCE_ERROR_TYPE_SLB; + mce_err->u.slb_error_type = MCE_SLB_ERROR_MULTIHIT; + } else if (dsisr & P7_DSISR_MC_SLB_PARITY_MFSLB) { + mce_err->error_type = MCE_ERROR_TYPE_SLB; + mce_err->u.slb_error_type = MCE_SLB_ERROR_PARITY; + } else if (dsisr & P7_DSISR_MC_TLB_MULTIHIT_MFTLB) { + mce_err->error_type = MCE_ERROR_TYPE_TLB; + mce_err->u.tlb_error_type = MCE_TLB_ERROR_MULTIHIT; + } else if (dsisr & P7_DSISR_MC_SLB_MULTIHIT_PARITY) { + mce_err->error_type = MCE_ERROR_TYPE_SLB; + mce_err->u.slb_error_type = MCE_SLB_ERROR_INDETERMINATE; + } +} + +static long mce_handle_ue_error(struct pt_regs *regs) +{ + long handled = 0; + + /* + * On specific SCOM read via MMIO we may get a machine check + * exception with SRR0 pointing inside opal. If that is the + * case OPAL may have recovery address to re-read SCOM data in + * different way and hence we can recover from this MC. + */ + + if (ppc_md.mce_check_early_recovery) { + if (ppc_md.mce_check_early_recovery(regs)) + handled = 1; + } + return handled; +} + +long __machine_check_early_realmode_p7(struct pt_regs *regs) +{ + uint64_t srr1, nip, addr; + long handled = 1; + struct mce_error_info mce_error_info = { 0 }; + + srr1 = regs->msr; + nip = regs->nip; + + /* + * Handle memory errors depending whether this was a load/store or + * ifetch exception. Also, populate the mce error_type and + * type-specific error_type from either SRR1 or DSISR, depending + * whether this was a load/store or ifetch exception + */ + if (P7_SRR1_MC_LOADSTORE(srr1)) { + handled = mce_handle_derror_p7(regs->dsisr); + mce_get_derror_p7(&mce_error_info, regs->dsisr); + addr = regs->dar; + } else { + handled = mce_handle_ierror_p7(srr1); + mce_get_ierror_p7(&mce_error_info, srr1); + addr = regs->nip; + } + + /* Handle UE error. */ + if (mce_error_info.error_type == MCE_ERROR_TYPE_UE) + handled = mce_handle_ue_error(regs); + + save_mce_event(regs, handled, &mce_error_info, nip, addr); + return handled; +} + +static void mce_get_ierror_p8(struct mce_error_info *mce_err, uint64_t srr1) +{ + mce_get_common_ierror(mce_err, srr1); + if (P7_SRR1_MC_IFETCH(srr1) == P8_SRR1_MC_IFETCH_ERAT_MULTIHIT) { + mce_err->error_type = MCE_ERROR_TYPE_ERAT; + mce_err->u.erat_error_type = MCE_ERAT_ERROR_MULTIHIT; + } +} + +static void mce_get_derror_p8(struct mce_error_info *mce_err, uint64_t dsisr) +{ + mce_get_derror_p7(mce_err, dsisr); + if (dsisr & P8_DSISR_MC_ERAT_MULTIHIT_SEC) { + mce_err->error_type = MCE_ERROR_TYPE_ERAT; + mce_err->u.erat_error_type = MCE_ERAT_ERROR_MULTIHIT; + } +} + +static long mce_handle_ierror_p8(uint64_t srr1) +{ + long handled = 0; + + handled = mce_handle_common_ierror(srr1); + + if (P7_SRR1_MC_IFETCH(srr1) == P8_SRR1_MC_IFETCH_ERAT_MULTIHIT) { + flush_and_reload_slb(); + handled = 1; + } + return handled; +} + +static long mce_handle_derror_p8(uint64_t dsisr) +{ + return mce_handle_derror(dsisr, P8_DSISR_MC_SLB_ERRORS); +} + +long __machine_check_early_realmode_p8(struct pt_regs *regs) +{ + uint64_t srr1, nip, addr; + long handled = 1; + struct mce_error_info mce_error_info = { 0 }; + + srr1 = regs->msr; + nip = regs->nip; + + if (P7_SRR1_MC_LOADSTORE(srr1)) { + handled = mce_handle_derror_p8(regs->dsisr); + mce_get_derror_p8(&mce_error_info, regs->dsisr); + addr = regs->dar; + } else { + handled = mce_handle_ierror_p8(srr1); + mce_get_ierror_p8(&mce_error_info, srr1); + addr = regs->nip; + } + + /* Handle UE error. */ + if (mce_error_info.error_type == MCE_ERROR_TYPE_UE) + handled = mce_handle_ue_error(regs); + + save_mce_event(regs, handled, &mce_error_info, nip, addr); + return handled; +} --- linux-3.13.0.orig/arch/powerpc/kernel/misc_32.S +++ linux-3.13.0/arch/powerpc/kernel/misc_32.S @@ -57,11 +57,14 @@ mtlr r0 blr +/* + * void call_do_irq(struct pt_regs *regs, struct thread_info *irqtp); + */ _GLOBAL(call_do_irq) mflr r0 stw r0,4(r1) lwz r10,THREAD+KSP_LIMIT(r2) - addi r11,r3,THREAD_INFO_GAP + addi r11,r4,THREAD_INFO_GAP stwu r1,THREAD_SIZE-STACK_FRAME_OVERHEAD(r4) mr r1,r4 stw r10,8(r1) --- linux-3.13.0.orig/arch/powerpc/kernel/misc_64.S +++ linux-3.13.0/arch/powerpc/kernel/misc_64.S @@ -481,6 +481,49 @@ #ifdef CONFIG_KEXEC +#ifdef CONFIG_PPC_BOOK3E +/* BOOK3E have no a real MMU mode so we have to setup the initial TLB + * for a core to map v:0 to p:0 as 1:1. This current implementation + * assume that 1G is enough for kexec. + */ +#include +kexec_create_tlb: + /* Invalidate all TLBs to avoid any TLB conflict. */ + PPC_TLBILX_ALL(0,R0) + sync + isync + + mfspr r10,SPRN_TLB1CFG + andi. r10,r10,TLBnCFG_N_ENTRY /* Extract # entries */ + subi r10,r10,1 /* Often its always safe to use last */ + lis r9,MAS0_TLBSEL(1)@h + rlwimi r9,r10,16,4,15 /* Setup MAS0 = TLBSEL | ESEL(r9) */ + +/* Setup a temp mapping v:0 to p:0 as 1:1 and return to it. + */ +#ifdef CONFIG_SMP +#define M_IF_SMP MAS2_M +#else +#define M_IF_SMP 0 +#endif + mtspr SPRN_MAS0,r9 + + lis r9,(MAS1_VALID|MAS1_IPROT)@h + ori r9,r9,(MAS1_TSIZE(BOOK3E_PAGESZ_1GB))@l + mtspr SPRN_MAS1,r9 + + LOAD_REG_IMMEDIATE(r9, 0x0 | M_IF_SMP) + mtspr SPRN_MAS2,r9 + + LOAD_REG_IMMEDIATE(r9, 0x0 | MAS3_SR | MAS3_SW | MAS3_SX) + mtspr SPRN_MAS3,r9 + li r9,0 + mtspr SPRN_MAS7,r9 + + tlbwe + isync + blr +#endif /* kexec_smp_wait(void) * @@ -494,6 +537,10 @@ */ _GLOBAL(kexec_smp_wait) lhz r3,PACAHWCPUID(r13) +#ifdef CONFIG_PPC_BOOK3E + /* Create a 1:1 mapping. */ + bl kexec_create_tlb +#endif bl real_mode li r4,KEXEC_STATE_REAL_MODE @@ -510,6 +557,7 @@ * don't overwrite r3 here, it is live for kexec_wait above. */ real_mode: /* assume normal blr return */ +#ifndef CONFIG_PPC_BOOK3E 1: li r9,MSR_RI li r10,MSR_DR|MSR_IR mflr r11 /* return address to SRR0 */ @@ -521,7 +569,10 @@ mtspr SPRN_SRR1,r10 mtspr SPRN_SRR0,r11 rfid - +#else + /* the real mode is nothing for book3e. */ + blr +#endif /* * kexec_sequence(newstack, start, image, control, clear_all()) @@ -564,9 +615,15 @@ lhz r25,PACAHWCPUID(r13) /* get our phys cpu from paca */ /* disable interrupts, we are overwriting kernel data next */ +#ifndef CONFIG_PPC_BOOK3E mfmsr r3 rlwinm r3,r3,0,17,15 mtmsrd r3,1 +#else + wrteei 0 + /* Create a 1:1 mapping. */ + bl kexec_create_tlb +#endif /* copy dest pages, flush whole dest image */ mr r3,r29 @@ -583,15 +640,23 @@ bl .copy_and_flush /* (dest, src, copy limit, start offset) */ 1: /* assume normal blr return */ + /* notify we're going into kexec kernel for SMP. */ + LOAD_REG_ADDR(r3,__run_at_kexec) + li r4,1 + std r4,0(r3) + sync + /* release other cpus to the new kernel secondary start at 0x60 */ mflr r5 li r6,1 stw r6,kexec_flag-1b(5) +#ifndef CONFIG_PPC_BOOK3E /* clear out hardware hash page table and tlb */ ld r5,0(r27) /* deref function descriptor */ mtctr r5 bctrl /* ppc_md.hpte_clear_all(void); */ +#endif /* * kexec image calling is: --- linux-3.13.0.orig/arch/powerpc/kernel/pci-common.c +++ linux-3.13.0/arch/powerpc/kernel/pci-common.c @@ -1483,9 +1483,15 @@ return pci_enable_resources(dev, mask); } +/* Before assuming too much here, take care to realize that we need sign + * extension from 32-bit pointers to 64-bit resource addresses to work. + */ resource_size_t pcibios_io_space_offset(struct pci_controller *hose) { - return (unsigned long) hose->io_base_virt - _IO_BASE; + long vbase = (long)hose->io_base_virt; + long io_base = _IO_BASE; + + return (resource_size_t)(vbase - io_base); } static void pcibios_setup_phb_resources(struct pci_controller *hose, --- linux-3.13.0.orig/arch/powerpc/kernel/process.c +++ linux-3.13.0/arch/powerpc/kernel/process.c @@ -74,6 +74,48 @@ struct task_struct *last_task_used_spe = NULL; #endif +#ifdef CONFIG_PPC_TRANSACTIONAL_MEM +void giveup_fpu_maybe_transactional(struct task_struct *tsk) +{ + /* + * If we are saving the current thread's registers, and the + * thread is in a transactional state, set the TIF_RESTORE_TM + * bit so that we know to restore the registers before + * returning to userspace. + */ + if (tsk == current && tsk->thread.regs && + MSR_TM_ACTIVE(tsk->thread.regs->msr) && + !test_thread_flag(TIF_RESTORE_TM)) { + tsk->thread.tm_orig_msr = tsk->thread.regs->msr; + set_thread_flag(TIF_RESTORE_TM); + } + + giveup_fpu(tsk); +} + +void giveup_altivec_maybe_transactional(struct task_struct *tsk) +{ + /* + * If we are saving the current thread's registers, and the + * thread is in a transactional state, set the TIF_RESTORE_TM + * bit so that we know to restore the registers before + * returning to userspace. + */ + if (tsk == current && tsk->thread.regs && + MSR_TM_ACTIVE(tsk->thread.regs->msr) && + !test_thread_flag(TIF_RESTORE_TM)) { + tsk->thread.tm_orig_msr = tsk->thread.regs->msr; + set_thread_flag(TIF_RESTORE_TM); + } + + giveup_altivec(tsk); +} + +#else +#define giveup_fpu_maybe_transactional(tsk) giveup_fpu(tsk) +#define giveup_altivec_maybe_transactional(tsk) giveup_altivec(tsk) +#endif /* CONFIG_PPC_TRANSACTIONAL_MEM */ + #ifdef CONFIG_PPC_FPU /* * Make sure the floating-point register state in the @@ -102,13 +144,13 @@ */ BUG_ON(tsk != current); #endif - giveup_fpu(tsk); + giveup_fpu_maybe_transactional(tsk); } preempt_enable(); } } EXPORT_SYMBOL_GPL(flush_fp_to_thread); -#endif +#endif /* CONFIG_PPC_FPU */ void enable_kernel_fp(void) { @@ -116,11 +158,11 @@ #ifdef CONFIG_SMP if (current->thread.regs && (current->thread.regs->msr & MSR_FP)) - giveup_fpu(current); + giveup_fpu_maybe_transactional(current); else giveup_fpu(NULL); /* just enables FP for kernel */ #else - giveup_fpu(last_task_used_math); + giveup_fpu_maybe_transactional(last_task_used_math); #endif /* CONFIG_SMP */ } EXPORT_SYMBOL(enable_kernel_fp); @@ -132,11 +174,11 @@ #ifdef CONFIG_SMP if (current->thread.regs && (current->thread.regs->msr & MSR_VEC)) - giveup_altivec(current); + giveup_altivec_maybe_transactional(current); else giveup_altivec_notask(); #else - giveup_altivec(last_task_used_altivec); + giveup_altivec_maybe_transactional(last_task_used_altivec); #endif /* CONFIG_SMP */ } EXPORT_SYMBOL(enable_kernel_altivec); @@ -153,7 +195,7 @@ #ifdef CONFIG_SMP BUG_ON(tsk != current); #endif - giveup_altivec(tsk); + giveup_altivec_maybe_transactional(tsk); } preempt_enable(); } @@ -182,8 +224,8 @@ void giveup_vsx(struct task_struct *tsk) { - giveup_fpu(tsk); - giveup_altivec(tsk); + giveup_fpu_maybe_transactional(tsk); + giveup_altivec_maybe_transactional(tsk); __giveup_vsx(tsk); } @@ -479,7 +521,48 @@ return false; return true; } + #ifdef CONFIG_PPC_TRANSACTIONAL_MEM +static void tm_reclaim_thread(struct thread_struct *thr, + struct thread_info *ti, uint8_t cause) +{ + unsigned long msr_diff = 0; + + /* + * If FP/VSX registers have been already saved to the + * thread_struct, move them to the transact_fp array. + * We clear the TIF_RESTORE_TM bit since after the reclaim + * the thread will no longer be transactional. + */ + if (test_ti_thread_flag(ti, TIF_RESTORE_TM)) { + msr_diff = thr->tm_orig_msr & ~thr->regs->msr; + if (msr_diff & MSR_FP) + memcpy(&thr->transact_fp, &thr->fp_state, + sizeof(struct thread_fp_state)); + if (msr_diff & MSR_VEC) + memcpy(&thr->transact_vr, &thr->vr_state, + sizeof(struct thread_vr_state)); + clear_ti_thread_flag(ti, TIF_RESTORE_TM); + msr_diff &= MSR_FP | MSR_VEC | MSR_VSX | MSR_FE0 | MSR_FE1; + } + + tm_reclaim(thr, thr->regs->msr, cause); + + /* Having done the reclaim, we now have the checkpointed + * FP/VSX values in the registers. These might be valid + * even if we have previously called enable_kernel_fp() or + * flush_fp_to_thread(), so update thr->regs->msr to + * indicate their current validity. + */ + thr->regs->msr |= msr_diff; +} + +void tm_reclaim_current(uint8_t cause) +{ + tm_enable(); + tm_reclaim_thread(¤t->thread, current_thread_info(), cause); +} + static inline void tm_reclaim_task(struct task_struct *tsk) { /* We have to work out if we're switching from/to a task that's in the @@ -502,9 +585,11 @@ /* Stash the original thread MSR, as giveup_fpu et al will * modify it. We hold onto it to see whether the task used - * FP & vector regs. + * FP & vector regs. If the TIF_RESTORE_TM flag is set, + * tm_orig_msr is already set. */ - thr->tm_orig_msr = thr->regs->msr; + if (!test_ti_thread_flag(task_thread_info(tsk), TIF_RESTORE_TM)) + thr->tm_orig_msr = thr->regs->msr; TM_DEBUG("--- tm_reclaim on pid %d (NIP=%lx, " "ccr=%lx, msr=%lx, trap=%lx)\n", @@ -512,7 +597,7 @@ thr->regs->ccr, thr->regs->msr, thr->regs->trap); - tm_reclaim(thr, thr->regs->msr, TM_CAUSE_RESCHED); + tm_reclaim_thread(thr, task_thread_info(tsk), TM_CAUSE_RESCHED); TM_DEBUG("--- tm_reclaim on pid %d complete\n", tsk->pid); @@ -588,6 +673,43 @@ tm_reclaim_task(prev); } } + +/* + * This is called if we are on the way out to userspace and the + * TIF_RESTORE_TM flag is set. It checks if we need to reload + * FP and/or vector state and does so if necessary. + * If userspace is inside a transaction (whether active or + * suspended) and FP/VMX/VSX instructions have ever been enabled + * inside that transaction, then we have to keep them enabled + * and keep the FP/VMX/VSX state loaded while ever the transaction + * continues. The reason is that if we didn't, and subsequently + * got a FP/VMX/VSX unavailable interrupt inside a transaction, + * we don't know whether it's the same transaction, and thus we + * don't know which of the checkpointed state and the transactional + * state to use. + */ +void restore_tm_state(struct pt_regs *regs) +{ + unsigned long msr_diff; + + clear_thread_flag(TIF_RESTORE_TM); + if (!MSR_TM_ACTIVE(regs->msr)) + return; + + msr_diff = current->thread.tm_orig_msr & ~regs->msr; + msr_diff &= MSR_FP | MSR_VEC | MSR_VSX; + if (msr_diff & MSR_FP) { + fp_enable(); + load_fp_state(¤t->thread.fp_state); + regs->msr |= current->thread.fpexc_mode; + } + if (msr_diff & MSR_VEC) { + vec_enable(); + load_vr_state(¤t->thread.vr_state); + } + regs->msr |= msr_diff; +} + #else #define tm_recheckpoint_new_task(new) #define __switch_to_tm(prev) @@ -927,6 +1049,15 @@ flush_altivec_to_thread(src); flush_vsx_to_thread(src); flush_spe_to_thread(src); + /* + * Flush TM state out so we can copy it. __switch_to_tm() does this + * flush but it removes the checkpointed state from the current CPU and + * transitions the CPU out of TM mode. Hence we need to call + * tm_recheckpoint_new_task() (on the same task) to restore the + * checkpointed state back and the TM mode. + */ + __switch_to_tm(src); + tm_recheckpoint_new_task(src); *dst = *src; --- linux-3.13.0.orig/arch/powerpc/kernel/prom.c +++ linux-3.13.0/arch/powerpc/kernel/prom.c @@ -737,6 +737,11 @@ spinning_secondaries = boot_cpu_count - 1; #endif +#ifdef CONFIG_PPC_POWERNV + /* Scan and build the list of machine check recoverable ranges */ + of_scan_flat_dt(early_init_dt_scan_recoverable_ranges, NULL); +#endif + DBG(" <- early_init_devtree()\n"); } --- linux-3.13.0.orig/arch/powerpc/kernel/reloc_64.S +++ linux-3.13.0/arch/powerpc/kernel/reloc_64.S @@ -69,8 +69,8 @@ * R_PPC64_RELATIVE ones. */ mtctr r8 -5: lwz r0,12(9) /* ELF64_R_TYPE(reloc->r_info) */ - cmpwi r0,R_PPC64_RELATIVE +5: ld r0,8(9) /* ELF64_R_TYPE(reloc->r_info) */ + cmpdi r0,R_PPC64_RELATIVE bne 6f ld r6,0(r9) /* reloc->r_offset */ ld r0,16(r9) /* reloc->r_addend */ @@ -81,6 +81,7 @@ 6: blr +.balign 8 p_dyn: .llong __dynamic_start - 0b p_rela: .llong __rela_dyn_start - 0b p_st: .llong _stext - 0b --- linux-3.13.0.orig/arch/powerpc/kernel/rtas.c +++ linux-3.13.0/arch/powerpc/kernel/rtas.c @@ -993,32 +993,36 @@ (struct rtas_ext_event_log_v6 *)log->buffer; struct pseries_errorlog *sect; unsigned char *p, *log_end; + uint32_t ext_log_length = rtas_error_extended_log_length(log); + uint8_t log_format = rtas_ext_event_log_format(ext_log); + uint32_t company_id = rtas_ext_event_company_id(ext_log); /* Check that we understand the format */ - if (log->extended_log_length < sizeof(struct rtas_ext_event_log_v6) || - ext_log->log_format != RTAS_V6EXT_LOG_FORMAT_EVENT_LOG || - ext_log->company_id != RTAS_V6EXT_COMPANY_ID_IBM) + if (ext_log_length < sizeof(struct rtas_ext_event_log_v6) || + log_format != RTAS_V6EXT_LOG_FORMAT_EVENT_LOG || + company_id != RTAS_V6EXT_COMPANY_ID_IBM) return NULL; - log_end = log->buffer + log->extended_log_length; + log_end = log->buffer + ext_log_length; p = ext_log->vendor_log; while (p < log_end) { sect = (struct pseries_errorlog *)p; - if (sect->id == section_id) + if (pseries_errorlog_id(sect) == section_id) return sect; - p += sect->length; + p += pseries_errorlog_length(sect); } return NULL; } +/* We assume to be passed big endian arguments */ asmlinkage int ppc_rtas(struct rtas_args __user *uargs) { struct rtas_args args; unsigned long flags; char *buff_copy, *errbuf = NULL; - int nargs; + int nargs, nret, token; int rc; if (!capable(CAP_SYS_ADMIN)) @@ -1027,10 +1031,13 @@ if (copy_from_user(&args, uargs, 3 * sizeof(u32)) != 0) return -EFAULT; - nargs = args.nargs; + nargs = be32_to_cpu(args.nargs); + nret = be32_to_cpu(args.nret); + token = be32_to_cpu(args.token); + if (nargs > ARRAY_SIZE(args.args) - || args.nret > ARRAY_SIZE(args.args) - || nargs + args.nret > ARRAY_SIZE(args.args)) + || nret > ARRAY_SIZE(args.args) + || nargs + nret > ARRAY_SIZE(args.args)) return -EINVAL; /* Copy in args. */ @@ -1038,14 +1045,14 @@ nargs * sizeof(rtas_arg_t)) != 0) return -EFAULT; - if (args.token == RTAS_UNKNOWN_SERVICE) + if (token == RTAS_UNKNOWN_SERVICE) return -EINVAL; args.rets = &args.args[nargs]; - memset(args.rets, 0, args.nret * sizeof(rtas_arg_t)); + memset(args.rets, 0, nret * sizeof(rtas_arg_t)); /* Need to handle ibm,suspend_me call specially */ - if (args.token == ibm_suspend_me_token) { + if (token == ibm_suspend_me_token) { rc = rtas_ibm_suspend_me(&args); if (rc) return rc; @@ -1062,7 +1069,7 @@ /* A -1 return code indicates that the last command couldn't be completed due to a hardware error. */ - if (args.rets[0] == -1) + if (be32_to_cpu(args.rets[0]) == -1) errbuf = __fetch_rtas_last_error(buff_copy); unlock_rtas(flags); @@ -1077,7 +1084,7 @@ /* Copy out args. */ if (copy_to_user(uargs->args + nargs, args.args + nargs, - args.nret * sizeof(rtas_arg_t)) != 0) + nret * sizeof(rtas_arg_t)) != 0) return -EFAULT; return 0; --- linux-3.13.0.orig/arch/powerpc/kernel/rtasd.c +++ linux-3.13.0/arch/powerpc/kernel/rtasd.c @@ -150,8 +150,8 @@ struct rtas_error_log *errlog = (struct rtas_error_log *)buf; printk(RTAS_DEBUG "event: %d, Type: %s, Severity: %d\n", - error_log_cnt, rtas_event_type(errlog->type), - errlog->severity); + error_log_cnt, rtas_event_type(rtas_error_type(errlog)), + rtas_error_severity(errlog)); } } @@ -159,14 +159,16 @@ { int len; struct rtas_error_log *err; + uint32_t extended_log_length; /* rtas fixed header */ len = 8; err = (struct rtas_error_log *)buf; - if (err->extended && err->extended_log_length) { + extended_log_length = rtas_error_extended_log_length(err); + if (rtas_error_extended(err) && extended_log_length) { /* extended header */ - len += err->extended_log_length; + len += extended_log_length; } if (rtas_error_log_max == 0) @@ -293,15 +295,13 @@ static void handle_rtas_event(const struct rtas_error_log *log) { - if (log->type == RTAS_TYPE_PRRN) { - /* For PRRN Events the extended log length is used to denote - * the scope for calling rtas update-nodes. - */ - if (prrn_is_enabled()) - prrn_schedule_update(log->extended_log_length); - } + if (rtas_error_type(log) != RTAS_TYPE_PRRN || !prrn_is_enabled()) + return; - return; + /* For PRRN Events the extended log length is used to denote + * the scope for calling rtas update-nodes. + */ + prrn_schedule_update(rtas_error_extended_log_length(log)); } #else --- linux-3.13.0.orig/arch/powerpc/kernel/setup_64.c +++ linux-3.13.0/arch/powerpc/kernel/setup_64.c @@ -544,7 +544,8 @@ /* * Stack space used when we detect a bad kernel stack pointer, and - * early in SMP boots before relocation is enabled. + * early in SMP boots before relocation is enabled. Exclusive emergency + * stack for machine checks. */ static void __init emergency_stack_init(void) { @@ -567,6 +568,13 @@ sp = memblock_alloc_base(THREAD_SIZE, THREAD_SIZE, limit); sp += THREAD_SIZE; paca[i].emergency_sp = __va(sp); + +#ifdef CONFIG_PPC_BOOK3S_64 + /* emergency stack for machine check exception handling. */ + sp = memblock_alloc_base(THREAD_SIZE, THREAD_SIZE, limit); + sp += THREAD_SIZE; + paca[i].mc_emergency_sp = __va(sp); +#endif } } --- linux-3.13.0.orig/arch/powerpc/kernel/signal.c +++ linux-3.13.0/arch/powerpc/kernel/signal.c @@ -203,8 +203,7 @@ #ifdef CONFIG_PPC_TRANSACTIONAL_MEM if (MSR_TM_ACTIVE(regs->msr)) { - tm_enable(); - tm_reclaim(¤t->thread, regs->msr, TM_CAUSE_SIGNAL); + tm_reclaim_current(TM_CAUSE_SIGNAL); if (MSR_TM_TRANSACTIONAL(regs->msr)) return current->thread.ckpt_regs.gpr[1]; } --- linux-3.13.0.orig/arch/powerpc/kernel/signal_32.c +++ linux-3.13.0/arch/powerpc/kernel/signal_32.c @@ -519,6 +519,13 @@ { unsigned long msr = regs->msr; + /* Remove TM bits from thread's MSR. The MSR in the sigcontext + * just indicates to userland that we were doing a transaction, but we + * don't want to return in transactional state. This also ensures + * that flush_fp_to_thread won't set TIF_RESTORE_TM again. + */ + regs->msr &= ~MSR_TS_MASK; + /* Make sure floating point registers are stored in regs */ flush_fp_to_thread(current); @@ -1056,13 +1063,6 @@ /* enter the signal handler in native-endian mode */ regs->msr &= ~MSR_LE; regs->msr |= (MSR_KERNEL & MSR_LE); -#ifdef CONFIG_PPC_TRANSACTIONAL_MEM - /* Remove TM bits from thread's MSR. The MSR in the sigcontext - * just indicates to userland that we were doing a transaction, but we - * don't want to return in transactional state: - */ - regs->msr &= ~MSR_TS_MASK; -#endif return 1; badframe: @@ -1484,13 +1484,6 @@ regs->nip = (unsigned long) ka->sa.sa_handler; /* enter the signal handler in big-endian mode */ regs->msr &= ~MSR_LE; -#ifdef CONFIG_PPC_TRANSACTIONAL_MEM - /* Remove TM bits from thread's MSR. The MSR in the sigcontext - * just indicates to userland that we were doing a transaction, but we - * don't want to return in transactional state: - */ - regs->msr &= ~MSR_TS_MASK; -#endif return 1; badframe: --- linux-3.13.0.orig/arch/powerpc/kernel/signal_64.c +++ linux-3.13.0/arch/powerpc/kernel/signal_64.c @@ -65,8 +65,8 @@ struct siginfo __user *pinfo; void __user *puc; struct siginfo info; - /* 64 bit ABI allows for 288 bytes below sp before decrementing it. */ - char abigap[288]; + /* New 64 bit little-endian ABI allows redzone of 512 bytes below sp */ + char abigap[USER_REDZONE_SIZE]; } __attribute__ ((aligned (16))); static const char fmt32[] = KERN_INFO \ @@ -192,6 +192,13 @@ BUG_ON(!MSR_TM_ACTIVE(regs->msr)); + /* Remove TM bits from thread's MSR. The MSR in the sigcontext + * just indicates to userland that we were doing a transaction, but we + * don't want to return in transactional state. This also ensures + * that flush_fp_to_thread won't set TIF_RESTORE_TM again. + */ + regs->msr &= ~MSR_TS_MASK; + flush_fp_to_thread(current); #ifdef CONFIG_ALTIVEC @@ -749,13 +756,6 @@ /* Make sure signal handler doesn't get spurious FP exceptions */ current->thread.fp_state.fpscr = 0; -#ifdef CONFIG_PPC_TRANSACTIONAL_MEM - /* Remove TM bits from thread's MSR. The MSR in the sigcontext - * just indicates to userland that we were doing a transaction, but we - * don't want to return in transactional state: - */ - regs->msr &= ~MSR_TS_MASK; -#endif /* Set up to return from userspace. */ if (vdso64_rt_sigtramp && current->mm->context.vdso_base) { --- linux-3.13.0.orig/arch/powerpc/kernel/traps.c +++ linux-3.13.0/arch/powerpc/kernel/traps.c @@ -285,6 +285,21 @@ /* What should we do here? We could issue a shutdown or hard reset. */ } + +/* + * This function is called in real mode. Strictly no printk's please. + * + * regs->nip and regs->msr contains srr0 and ssr1. + */ +long machine_check_early(struct pt_regs *regs) +{ + long handled = 0; + + if (cur_cpu_spec && cur_cpu_spec->machine_check_early) + handled = cur_cpu_spec->machine_check_early(regs); + return handled; +} + #endif /* @@ -1384,7 +1399,6 @@ TM_DEBUG("FP Unavailable trap whilst transactional at 0x%lx, MSR=%lx\n", regs->nip, regs->msr); - tm_enable(); /* We can only have got here if the task started using FP after * beginning the transaction. So, the transactional regs are just a @@ -1393,8 +1407,7 @@ * transaction, and probably retry but now with FP enabled. So the * checkpointed FP registers need to be loaded. */ - tm_reclaim(¤t->thread, current->thread.regs->msr, - TM_CAUSE_FAC_UNAV); + tm_reclaim_current(TM_CAUSE_FAC_UNAV); /* Reclaim didn't save out any FPRs to transact_fprs. */ /* Enable FP for the task: */ @@ -1403,11 +1416,19 @@ /* This loads and recheckpoints the FP registers from * thread.fpr[]. They will remain in registers after the * checkpoint so we don't need to reload them after. + * If VMX is in use, the VRs now hold checkpointed values, + * so we don't want to load the VRs from the thread_struct. */ - tm_recheckpoint(¤t->thread, regs->msr); + tm_recheckpoint(¤t->thread, MSR_FP); + + /* If VMX is in use, get the transactional values back */ + if (regs->msr & MSR_VEC) { + do_load_up_transact_altivec(¤t->thread); + /* At this point all the VSX state is loaded, so enable it */ + regs->msr |= MSR_VSX; + } } -#ifdef CONFIG_ALTIVEC void altivec_unavailable_tm(struct pt_regs *regs) { /* See the comments in fp_unavailable_tm(). This function operates @@ -1417,18 +1438,21 @@ TM_DEBUG("Vector Unavailable trap whilst transactional at 0x%lx," "MSR=%lx\n", regs->nip, regs->msr); - tm_enable(); - tm_reclaim(¤t->thread, current->thread.regs->msr, - TM_CAUSE_FAC_UNAV); + tm_reclaim_current(TM_CAUSE_FAC_UNAV); regs->msr |= MSR_VEC; - tm_recheckpoint(¤t->thread, regs->msr); + tm_recheckpoint(¤t->thread, MSR_VEC); current->thread.used_vr = 1; + + if (regs->msr & MSR_FP) { + do_load_up_transact_fpu(¤t->thread); + regs->msr |= MSR_VSX; + } } -#endif -#ifdef CONFIG_VSX void vsx_unavailable_tm(struct pt_regs *regs) { + unsigned long orig_msr = regs->msr; + /* See the comments in fp_unavailable_tm(). This works similarly, * though we're loading both FP and VEC registers in here. * @@ -1440,18 +1464,30 @@ "MSR=%lx\n", regs->nip, regs->msr); - tm_enable(); + current->thread.used_vsr = 1; + + /* If FP and VMX are already loaded, we have all the state we need */ + if ((orig_msr & (MSR_FP | MSR_VEC)) == (MSR_FP | MSR_VEC)) { + regs->msr |= MSR_VSX; + return; + } + /* This reclaims FP and/or VR regs if they're already enabled */ - tm_reclaim(¤t->thread, current->thread.regs->msr, - TM_CAUSE_FAC_UNAV); + tm_reclaim_current(TM_CAUSE_FAC_UNAV); regs->msr |= MSR_VEC | MSR_FP | current->thread.fpexc_mode | MSR_VSX; - /* This loads & recheckpoints FP and VRs. */ - tm_recheckpoint(¤t->thread, regs->msr); - current->thread.used_vsr = 1; + + /* This loads & recheckpoints FP and VRs; but we have + * to be sure not to overwrite previously-valid state. + */ + tm_recheckpoint(¤t->thread, regs->msr & ~orig_msr); + + if (orig_msr & MSR_FP) + do_load_up_transact_fpu(¤t->thread); + if (orig_msr & MSR_VEC) + do_load_up_transact_altivec(¤t->thread); } -#endif #endif /* CONFIG_PPC_TRANSACTIONAL_MEM */ void performance_monitor_exception(struct pt_regs *regs) --- linux-3.13.0.orig/arch/powerpc/kernel/vector.S +++ linux-3.13.0/arch/powerpc/kernel/vector.S @@ -37,6 +37,16 @@ #endif /* + * Enable use of VMX/Altivec for the caller. + */ +_GLOBAL(vec_enable) + mfmsr r3 + oris r3,r3,MSR_VEC@h + MTMSRD(r3) + isync + blr + +/* * Load state from memory into VMX registers including VSCR. * Assumes the caller has enabled VMX in the MSR. */ --- linux-3.13.0.orig/arch/powerpc/kvm/book3s_64_mmu_hv.c +++ linux-3.13.0/arch/powerpc/kvm/book3s_64_mmu_hv.c @@ -262,7 +262,7 @@ static void kvmppc_mmu_book3s_64_hv_reset_msr(struct kvm_vcpu *vcpu) { - kvmppc_set_msr(vcpu, MSR_SF | MSR_ME); + kvmppc_set_msr(vcpu, vcpu->arch.intr_msr); } /* @@ -544,7 +544,7 @@ * If we fail, we just return to the guest and try executing it again. */ if (vcpu->arch.last_inst == KVM_INST_FETCH_FAILED) { - ret = kvmppc_ld(vcpu, &srr0, sizeof(u32), &last_inst, false); + ret = kvmppc_ld32(vcpu, &srr0, &last_inst, false); if (ret != EMULATE_DONE || last_inst == KVM_INST_FETCH_FAILED) return RESUME_GUEST; vcpu->arch.last_inst = last_inst; --- linux-3.13.0.orig/arch/powerpc/kvm/book3s_hv.c +++ linux-3.13.0/arch/powerpc/kvm/book3s_hv.c @@ -85,10 +85,13 @@ /* CPU points to the first thread of the core */ if (cpu != me && cpu >= 0 && cpu < nr_cpu_ids) { +#ifdef CONFIG_PPC_ICP_NATIVE int real_cpu = cpu + vcpu->arch.ptid; if (paca[real_cpu].kvm_hstate.xics_phys) xics_wake_cpu(real_cpu); - else if (cpu_online(cpu)) + else +#endif + if (cpu_online(cpu)) smp_send_reschedule(cpu); } put_cpu(); @@ -537,6 +540,48 @@ vcpu->arch.dtl.dirty = true; } +static int kvmppc_h_set_mode(struct kvm_vcpu *vcpu, unsigned long mflags, + unsigned long resource, unsigned long value1, + unsigned long value2) +{ + struct kvm *kvm = vcpu->kvm; + struct kvm_vcpu *v; + int n; + + switch (resource) { + case H_SET_MODE_RESOURCE_LE: + if (value1) + return H_P3; + if (value2) + return H_P4; + + switch (mflags) { + case 0: + mutex_lock(&kvm->lock); + kvm->arch.lpcr &= ~LPCR_ILE; + kvm_for_each_vcpu(n, v, kvm) + v->arch.intr_msr &= ~MSR_LE; + mutex_unlock(&kvm->lock); + kick_all_cpus_sync(); + return H_SUCCESS; + + case 1: + mutex_lock(&kvm->lock); + kvm->arch.lpcr |= LPCR_ILE; + kvm_for_each_vcpu(n, v, kvm) + v->arch.intr_msr |= MSR_LE; + mutex_unlock(&kvm->lock); + kick_all_cpus_sync(); + return H_SUCCESS; + + default: + return H_UNSUPPORTED_FLAG_START; + } + default: + return H_P2; + } +} + int kvmppc_pseries_do_hcall(struct kvm_vcpu *vcpu) { unsigned long req = kvmppc_get_gpr(vcpu, 3); @@ -602,6 +647,12 @@ /* Send the error out to userspace via KVM_RUN */ return rc; + case H_SET_MODE: + ret = kvmppc_h_set_mode(vcpu, kvmppc_get_gpr(vcpu, 4), + kvmppc_get_gpr(vcpu, 5), + kvmppc_get_gpr(vcpu, 6), + kvmppc_get_gpr(vcpu, 7)); + break; case H_XIRR: case H_CPPR: @@ -1017,6 +1068,7 @@ spin_lock_init(&vcpu->arch.vpa_update_lock); spin_lock_init(&vcpu->arch.tbacct_lock); vcpu->arch.busy_preempt = TB_NIL; + vcpu->arch.intr_msr = MSR_SF | MSR_ME; kvmppc_mmu_book3s_hv_init(vcpu); --- linux-3.13.0.orig/arch/powerpc/kvm/book3s_hv_ras.c +++ linux-3.13.0/arch/powerpc/kvm/book3s_hv_ras.c @@ -12,6 +12,7 @@ #include #include #include +#include /* SRR1 bits for machine check on POWER7 */ #define SRR1_MC_LDSTERR (1ul << (63-42)) @@ -58,18 +59,6 @@ } } -/* POWER7 TLB flush */ -static void flush_tlb_power7(struct kvm_vcpu *vcpu) -{ - unsigned long i, rb; - - rb = TLBIEL_INVAL_SET_LPID; - for (i = 0; i < POWER7_TLB_SETS; ++i) { - asm volatile("tlbiel %0" : : "r" (rb)); - rb += 1 << TLBIEL_INVAL_SET_SHIFT; - } -} - /* * On POWER7, see if we can handle a machine check that occurred inside * the guest in real mode, without switching to the host partition. @@ -79,9 +68,7 @@ static long kvmppc_realmode_mc_power7(struct kvm_vcpu *vcpu) { unsigned long srr1 = vcpu->arch.shregs.msr; -#ifdef CONFIG_PPC_POWERNV - struct opal_machine_check_event *opal_evt; -#endif + struct machine_check_event mce_evt; long handled = 1; if (srr1 & SRR1_MC_LDSTERR) { @@ -96,7 +83,8 @@ DSISR_MC_SLB_PARITY | DSISR_MC_DERAT_MULTI); } if (dsisr & DSISR_MC_TLB_MULTI) { - flush_tlb_power7(vcpu); + if (cur_cpu_spec && cur_cpu_spec->flush_tlb) + cur_cpu_spec->flush_tlb(TLBIEL_INVAL_SET_LPID); dsisr &= ~DSISR_MC_TLB_MULTI; } /* Any other errors we don't understand? */ @@ -113,28 +101,38 @@ reload_slb(vcpu); break; case SRR1_MC_IFETCH_TLBMULTI: - flush_tlb_power7(vcpu); + if (cur_cpu_spec && cur_cpu_spec->flush_tlb) + cur_cpu_spec->flush_tlb(TLBIEL_INVAL_SET_LPID); break; default: handled = 0; } -#ifdef CONFIG_PPC_POWERNV /* - * See if OPAL has already handled the condition. - * We assume that if the condition is recovered then OPAL + * See if we have already handled the condition in the linux host. + * We assume that if the condition is recovered then linux host * will have generated an error log event that we will pick * up and log later. + * Don't release mce event now. In case if condition is not + * recovered we do guest exit and go back to linux host machine + * check handler. Hence we need make sure that current mce event + * is available for linux host to consume. */ - opal_evt = local_paca->opal_mc_evt; - if (opal_evt->version == OpalMCE_V1 && - (opal_evt->severity == OpalMCE_SEV_NO_ERROR || - opal_evt->disposition == OpalMCE_DISPOSITION_RECOVERED)) + if (!get_mce_event(&mce_evt, MCE_EVENT_DONTRELEASE)) + goto out; + + if (mce_evt.version == MCE_V1 && + (mce_evt.severity == MCE_SEV_NO_ERROR || + mce_evt.disposition == MCE_DISPOSITION_RECOVERED)) handled = 1; +out: + /* + * If we have handled the error, then release the mce event because + * we will be delivering machine check to guest. + */ if (handled) - opal_evt->in_use = 0; -#endif + release_mce_event(); return handled; } --- linux-3.13.0.orig/arch/powerpc/kvm/book3s_hv_rmhandlers.S +++ linux-3.13.0/arch/powerpc/kvm/book3s_hv_rmhandlers.S @@ -676,8 +676,7 @@ 12: mr r6,r10 mr r10,r0 mr r7,r11 - li r11,(MSR_ME << 1) | 1 /* synthesize MSR_SF | MSR_ME */ - rotldi r11,r11,63 + ld r11,VCPU_INTR_MSR(r4) b 5f 11: beq 5f mfspr r0,SPRN_DEC @@ -896,8 +895,7 @@ mtspr SPRN_SRR0, r10 mtspr SPRN_SRR1, r11 li r10, BOOK3S_INTERRUPT_EXTERNAL - li r11, (MSR_ME << 1) | 1 /* synthesize MSR_SF | MSR_ME */ - rotldi r11, r11, 63 + ld r11,VCPU_INTR_MSR(r9) 2: mr r4, r9 mtspr SPRN_LPCR, r8 b fast_guest_return @@ -1386,8 +1384,7 @@ mtspr SPRN_SRR0, r10 mtspr SPRN_SRR1, r11 li r10, BOOK3S_INTERRUPT_DATA_STORAGE - li r11, (MSR_ME << 1) | 1 /* synthesize MSR_SF | MSR_ME */ - rotldi r11, r11, 63 + ld r11,VCPU_INTR_MSR(r9) fast_interrupt_c_return: 6: ld r7, VCPU_CTR(r9) lwz r8, VCPU_XER(r9) @@ -1415,10 +1412,19 @@ lwz r8, 0(r10) mtmsrd r3 + andi. r0, r11, MSR_LE + /* Store the result */ stw r8, VCPU_LAST_INST(r9) + beq after_inst_store + + /* Swap and store the result */ + addi r4, r9, VCPU_LAST_INST + stwbrx r8, 0, r4 + /* Unset guest mode. */ +after_inst_store: li r0, KVM_GUEST_MODE_HOST_HV stb r0, HSTATE_IN_GUEST(r13) b guest_exit_cont @@ -1456,8 +1462,7 @@ 1: mtspr SPRN_SRR0, r10 mtspr SPRN_SRR1, r11 li r10, BOOK3S_INTERRUPT_INST_STORAGE - li r11, (MSR_ME << 1) | 1 /* synthesize MSR_SF | MSR_ME */ - rotldi r11, r11, 63 + ld r11,VCPU_INTR_MSR(r9) b fast_interrupt_c_return 3: ld r6, VCPU_KVM(r9) /* not relocated, use VRMA */ @@ -1783,8 +1788,7 @@ beq mc_cont /* If not, deliver a machine check. SRR0/1 are already set */ li r10, BOOK3S_INTERRUPT_MACHINE_CHECK - li r11, (MSR_ME << 1) | 1 /* synthesize MSR_SF | MSR_ME */ - rotldi r11, r11, 63 + ld r11,VCPU_INTR_MSR(r9) b fast_interrupt_c_return /* --- linux-3.13.0.orig/arch/powerpc/kvm/book3s_pr.c +++ linux-3.13.0/arch/powerpc/kvm/book3s_pr.c @@ -627,7 +627,7 @@ u32 last_inst = kvmppc_get_last_inst(vcpu); int ret; - ret = kvmppc_ld(vcpu, &srr0, sizeof(u32), &last_inst, false); + ret = kvmppc_ld32(vcpu, &srr0, &last_inst, false); if (ret == -ENOENT) { ulong msr = vcpu->arch.shared->msr; --- linux-3.13.0.orig/arch/powerpc/kvm/book3s_segment.S +++ linux-3.13.0/arch/powerpc/kvm/book3s_segment.S @@ -289,6 +289,15 @@ #endif stw r0, SVCPU_LAST_INST(r13) +#ifdef CONFIG_PPC64 + andi. r9, r4, MSR_LE + beq no_ld_last_inst + + /* swap and store the result */ + addi r9, r13, SVCPU_LAST_INST + stwbrx r0, 0, r9 +#endif + no_ld_last_inst: /* Unset guest mode */ --- linux-3.13.0.orig/arch/powerpc/kvm/e500_mmu.c +++ linux-3.13.0/arch/powerpc/kvm/e500_mmu.c @@ -127,7 +127,7 @@ } static inline void kvmppc_e500_deliver_tlb_miss(struct kvm_vcpu *vcpu, - unsigned int eaddr, int as) + gva_t eaddr, int as) { struct kvmppc_vcpu_e500 *vcpu_e500 = to_e500(vcpu); unsigned int victim, tsized; --- linux-3.13.0.orig/arch/powerpc/kvm/emulate.c +++ linux-3.13.0/arch/powerpc/kvm/emulate.c @@ -219,7 +219,6 @@ * lmw * stmw * - * XXX is_bigendian should depend on MMU mapping or MSR[LE] */ /* XXX Should probably auto-generate instruction decoding for a particular core * from opcode tables in the future. */ --- linux-3.13.0.orig/arch/powerpc/kvm/powerpc.c +++ linux-3.13.0/arch/powerpc/kvm/powerpc.c @@ -673,9 +673,13 @@ } int kvmppc_handle_load(struct kvm_run *run, struct kvm_vcpu *vcpu, - unsigned int rt, unsigned int bytes, int is_bigendian) + unsigned int rt, unsigned int bytes, int not_reverse) { int idx, ret; + int is_bigendian = not_reverse; + + if (!kvmppc_is_bigendian(vcpu)) + is_bigendian = !not_reverse; if (bytes > sizeof(run->mmio.data)) { printk(KERN_ERR "%s: bad MMIO length: %d\n", __func__, @@ -711,21 +715,25 @@ /* Same as above, but sign extends */ int kvmppc_handle_loads(struct kvm_run *run, struct kvm_vcpu *vcpu, - unsigned int rt, unsigned int bytes, int is_bigendian) + unsigned int rt, unsigned int bytes, int not_reverse) { int r; vcpu->arch.mmio_sign_extend = 1; - r = kvmppc_handle_load(run, vcpu, rt, bytes, is_bigendian); + r = kvmppc_handle_load(run, vcpu, rt, bytes, not_reverse); return r; } int kvmppc_handle_store(struct kvm_run *run, struct kvm_vcpu *vcpu, - u64 val, unsigned int bytes, int is_bigendian) + u64 val, unsigned int bytes, int not_reverse) { void *data = run->mmio.data; int idx, ret; + int is_bigendian = not_reverse; + + if (!kvmppc_is_bigendian(vcpu)) + is_bigendian = !not_reverse; if (bytes > sizeof(run->mmio.data)) { printk(KERN_ERR "%s: bad MMIO length: %d\n", __func__, --- linux-3.13.0.orig/arch/powerpc/mm/numa.c +++ linux-3.13.0/arch/powerpc/mm/numa.c @@ -31,6 +31,8 @@ #include #include #include +#include +#include #include #include #include @@ -152,9 +154,22 @@ } } -static void map_cpu_to_node(int cpu, int node) +static void reset_numa_cpu_lookup_table(void) +{ + unsigned int cpu; + + for_each_possible_cpu(cpu) + numa_cpu_lookup_table[cpu] = -1; +} + +static void update_numa_cpu_lookup_table(unsigned int cpu, int node) { numa_cpu_lookup_table[cpu] = node; +} + +static void map_cpu_to_node(int cpu, int node) +{ + update_numa_cpu_lookup_table(cpu, node); dbg("adding cpu %d to node %d\n", cpu, node); @@ -522,11 +537,24 @@ */ static int numa_setup_cpu(unsigned long lcpu) { - int nid = 0; - struct device_node *cpu = of_get_cpu_node(lcpu, NULL); + int nid; + struct device_node *cpu; + + /* + * If a valid cpu-to-node mapping is already available, use it + * directly instead of querying the firmware, since it represents + * the most recent mapping notified to us by the platform (eg: VPHN). + */ + if ((nid = numa_cpu_lookup_table[lcpu]) >= 0) { + map_cpu_to_node(lcpu, nid); + return nid; + } + + cpu = of_get_cpu_node(lcpu, NULL); if (!cpu) { WARN_ON(1); + nid = 0; goto out; } @@ -1067,6 +1095,7 @@ */ setup_node_to_cpumask_map(); + reset_numa_cpu_lookup_table(); register_cpu_notifier(&ppc64_numa_nb); cpu_numa_callback(&ppc64_numa_nb, CPU_UP_PREPARE, (void *)(unsigned long)boot_cpuid); @@ -1445,6 +1474,33 @@ return 0; } +static int update_lookup_table(void *data) +{ + struct topology_update_data *update; + + if (!data) + return -EINVAL; + + /* + * Upon topology update, the numa-cpu lookup table needs to be updated + * for all threads in the core, including offline CPUs, to ensure that + * future hotplug operations respect the cpu-to-node associativity + * properly. + */ + for (update = data; update; update = update->next) { + int nid, base, j; + + nid = update->new_nid; + base = cpu_first_thread_sibling(update->cpu); + + for (j = 0; j < threads_per_core; j++) { + update_numa_cpu_lookup_table(base + j, nid); + } + } + + return 0; +} + /* * Update the node maps and sysfs entries for each cpu whose home node * has changed. Returns 1 when the topology has changed, and 0 otherwise. @@ -1513,6 +1569,14 @@ stop_machine(update_cpu_topology, &updates[0], &updated_cpus); + /* + * Update the numa-cpu lookup table with the new mappings, even for + * offline CPUs. It is best to perform this update from the stop- + * machine context. + */ + stop_machine(update_lookup_table, &updates[0], + cpumask_of(raw_smp_processor_id())); + for (ud = &updates[0]; ud; ud = ud->next) { unregister_cpu_under_node(ud->cpu, ud->old_nid); register_cpu_under_node(ud->cpu, ud->new_nid); --- linux-3.13.0.orig/arch/powerpc/platforms/85xx/Kconfig +++ linux-3.13.0/arch/powerpc/platforms/85xx/Kconfig @@ -253,6 +253,8 @@ select ARCH_REQUIRE_GPIOLIB select GPIO_MPC8XXX select HAS_RAPIDIO + select HAS_FSL_QBMAN + select HAS_FSL_PME select PPC_EPAPR_HV_PIC help This option enables support for the FSL CoreNet based boards. --- linux-3.13.0.orig/arch/powerpc/platforms/85xx/corenet_generic.c +++ linux-3.13.0/arch/powerpc/platforms/85xx/corenet_generic.c @@ -64,6 +64,9 @@ .compatible = "simple-bus" }, { + .compatible = "fsl,dpaa" + }, + { .compatible = "fsl,srio", }, { @@ -96,6 +99,32 @@ return of_platform_bus_probe(NULL, of_device_ids, NULL); } +/* Early setup is required for large chunks of contiguous (and coarsely-aligned) + * memory. The following shoe-horns Qman/Bman "init_early" calls into the + * platform setup to let them parse their CCSR nodes early on. */ +#ifdef CONFIG_FSL_QMAN_CONFIG +void __init qman_init_early(void); +#endif +#ifdef CONFIG_FSL_BMAN_CONFIG +void __init bman_init_early(void); +#endif +#ifdef CONFIG_FSL_PME2_CTRL +void __init pme2_init_early(void); +#endif + +__init void corenet_ds_init_early(void) +{ +#ifdef CONFIG_FSL_QMAN_CONFIG + qman_init_early(); +#endif +#ifdef CONFIG_FSL_BMAN_CONFIG + bman_init_early(); +#endif +#ifdef CONFIG_FSL_PME2_CTRL + pme2_init_early(); +#endif +} + static const char * const boards[] __initconst = { "fsl,P2041RDB", "fsl,P3041DS", @@ -103,6 +132,7 @@ "fsl,P5020DS", "fsl,P5040DS", "fsl,T4240QDS", + "fsl,T4240RDB", "fsl,B4860QDS", "fsl,B4420QDS", "fsl,B4220QDS", @@ -116,6 +146,7 @@ "fsl,P5020DS-hv", "fsl,P5040DS-hv", "fsl,T4240QDS-hv", + "fsl,T4240RDB-hv", "fsl,B4860QDS-hv", "fsl,B4420QDS-hv", "fsl,B4220QDS-hv", @@ -173,6 +204,7 @@ #else .power_save = e500_idle, #endif + .init_early = corenet_ds_init_early, }; machine_arch_initcall(corenet_generic, corenet_gen_publish_devices); --- linux-3.13.0.orig/arch/powerpc/platforms/85xx/smp.c +++ linux-3.13.0/arch/powerpc/platforms/85xx/smp.c @@ -176,6 +176,9 @@ int hw_cpu = get_hard_smp_processor_id(nr); int ioremappable; int ret = 0; +#ifdef CONFIG_PPC64 + unsigned long *ptr = NULL; +#endif WARN_ON(nr < 0 || nr >= NR_CPUS); WARN_ON(hw_cpu < 0 || hw_cpu >= NR_CPUS); @@ -264,11 +267,18 @@ #else smp_generic_kick_cpu(nr); - flush_spin_table(spin_table); - out_be32(&spin_table->pir, hw_cpu); - out_be64((u64 *)(&spin_table->addr_h), - __pa((u64)*((unsigned long long *)generic_secondary_smp_init))); - flush_spin_table(spin_table); + ptr = (unsigned long *)((unsigned long)&__run_at_kexec); + /* We shouldn't access spin_table from the bootloader to up any + * secondary cpu for kexec kernel, and kexec kernel already + * know how to jump to generic_secondary_smp_init. + */ + if (!*ptr) { + flush_spin_table(spin_table); + out_be32(&spin_table->pir, hw_cpu); + out_be64((u64 *)(&spin_table->addr_h), + __pa((u64)*((unsigned long long *)generic_secondary_smp_init))); + flush_spin_table(spin_table); + } #endif local_irq_restore(flags); @@ -293,6 +303,7 @@ }; #ifdef CONFIG_KEXEC +#ifdef CONFIG_PPC32 atomic_t kexec_down_cpus = ATOMIC_INIT(0); void mpc85xx_smp_kexec_cpu_down(int crash_shutdown, int secondary) @@ -311,6 +322,14 @@ if (ppc_md.kexec_cpu_down) ppc_md.kexec_cpu_down(0,1); } +#else +void mpc85xx_smp_kexec_cpu_down(int crash_shutdown, int secondary) +{ + local_irq_disable(); + hard_irq_disable(); + mpic_teardown_this_cpu(secondary); +} +#endif static void map_and_flush(unsigned long paddr) { @@ -362,11 +381,14 @@ static void mpc85xx_smp_machine_kexec(struct kimage *image) { +#ifdef CONFIG_PPC32 int timeout = INT_MAX; int i, num_cpus = num_present_cpus(); +#endif mpc85xx_smp_flush_dcache_kexec(image); +#ifdef CONFIG_PPC32 if (image->type == KEXEC_TYPE_DEFAULT) smp_call_function(mpc85xx_smp_kexec_down, NULL, 0); @@ -384,6 +406,7 @@ if ( i == smp_processor_id() ) continue; mpic_reset_core(i); } +#endif default_machine_kexec(image); } --- linux-3.13.0.orig/arch/powerpc/platforms/powernv/Kconfig +++ linux-3.13.0/arch/powerpc/platforms/powernv/Kconfig @@ -11,6 +11,12 @@ select PPC_UDBG_16550 select PPC_SCOM select ARCH_RANDOM + select CPU_FREQ + select CPU_FREQ_GOV_PERFORMANCE + select CPU_FREQ_GOV_POWERSAVE + select CPU_FREQ_GOV_USERSPACE + select CPU_FREQ_GOV_ONDEMAND + select CPU_FREQ_GOV_CONSERVATIVE default y config POWERNV_MSI --- linux-3.13.0.orig/arch/powerpc/platforms/powernv/eeh-ioda.c +++ linux-3.13.0/arch/powerpc/platforms/powernv/eeh-ioda.c @@ -114,6 +114,7 @@ ioda_eeh_inbB_dbgfs_set, "0x%llx\n"); #endif /* CONFIG_DEBUG_FS */ + /** * ioda_eeh_post_init - Chip dependent post initialization * @hose: PCI controller @@ -221,6 +222,22 @@ return ret; } +static void ioda_eeh_phb_diag(struct pci_controller *hose) +{ + struct pnv_phb *phb = hose->private_data; + long rc; + + rc = opal_pci_get_phb_diag_data2(phb->opal_id, phb->diag.blob, + PNV_PCI_DIAG_BUF_SIZE); + if (rc != OPAL_SUCCESS) { + pr_warning("%s: Failed to get diag-data for PHB#%x (%ld)\n", + __func__, hose->global_number, rc); + return; + } + + pnv_pci_dump_phb_diag_data(hose, phb->diag.blob); +} + /** * ioda_eeh_get_state - Retrieve the state of PE * @pe: EEH PE @@ -272,6 +289,9 @@ result |= EEH_STATE_DMA_ACTIVE; result |= EEH_STATE_MMIO_ENABLED; result |= EEH_STATE_DMA_ENABLED; + } else if (!(pe->state & EEH_PE_ISOLATED)) { + eeh_pe_state_mark(pe, EEH_PE_ISOLATED); + ioda_eeh_phb_diag(hose); } return result; @@ -315,6 +335,15 @@ __func__, fstate, hose->global_number, pe_no); } + /* Dump PHB diag-data for frozen PE */ + if (result != EEH_STATE_NOT_SUPPORT && + (result & (EEH_STATE_MMIO_ACTIVE | EEH_STATE_DMA_ACTIVE)) != + (EEH_STATE_MMIO_ACTIVE | EEH_STATE_DMA_ACTIVE) && + !(pe->state & EEH_PE_ISOLATED)) { + eeh_pe_state_mark(pe, EEH_PE_ISOLATED); + ioda_eeh_phb_diag(hose); + } + return result; } @@ -490,8 +519,7 @@ static int ioda_eeh_reset(struct eeh_pe *pe, int option) { struct pci_controller *hose = pe->phb; - struct eeh_dev *edev; - struct pci_dev *dev; + struct pci_bus *bus; int ret; /* @@ -520,76 +548,17 @@ if (pe->type & EEH_PE_PHB) { ret = ioda_eeh_phb_reset(hose, option); } else { - if (pe->type & EEH_PE_DEVICE) { - /* - * If it's device PE, we didn't refer to the parent - * PCI bus yet. So we have to figure it out indirectly. - */ - edev = list_first_entry(&pe->edevs, - struct eeh_dev, list); - dev = eeh_dev_to_pci_dev(edev); - dev = dev->bus->self; - } else { - /* - * If it's bus PE, the parent PCI bus is already there - * and just pick it up. - */ - dev = pe->bus->self; - } - - /* - * Do reset based on the fact that the direct upstream bridge - * is root bridge (port) or not. - */ - if (dev->bus->number == 0) + bus = eeh_pe_bus_get(pe); + if (pci_is_root_bus(bus)) ret = ioda_eeh_root_reset(hose, option); else - ret = ioda_eeh_bridge_reset(hose, dev, option); + ret = ioda_eeh_bridge_reset(hose, bus->self, option); } return ret; } /** - * ioda_eeh_get_log - Retrieve error log - * @pe: EEH PE - * @severity: Severity level of the log - * @drv_log: buffer to store the log - * @len: space of the log buffer - * - * The function is used to retrieve error log from P7IOC. - */ -static int ioda_eeh_get_log(struct eeh_pe *pe, int severity, - char *drv_log, unsigned long len) -{ - s64 ret; - unsigned long flags; - struct pci_controller *hose = pe->phb; - struct pnv_phb *phb = hose->private_data; - - spin_lock_irqsave(&phb->lock, flags); - - ret = opal_pci_get_phb_diag_data2(phb->opal_id, - phb->diag.blob, PNV_PCI_DIAG_BUF_SIZE); - if (ret) { - spin_unlock_irqrestore(&phb->lock, flags); - pr_warning("%s: Can't get log for PHB#%x-PE#%x (%lld)\n", - __func__, hose->global_number, pe->addr, ret); - return -EIO; - } - - /* - * FIXME: We probably need log the error in somewhere. - * Lets make it up in future. - */ - /* pr_info("%s", phb->diag.blob); */ - - spin_unlock_irqrestore(&phb->lock, flags); - - return 0; -} - -/** * ioda_eeh_configure_bridge - Configure the PCI bridges for the indicated PE * @pe: EEH PE * @@ -670,167 +639,6 @@ } } -static void ioda_eeh_p7ioc_phb_diag(struct pci_controller *hose, - struct OpalIoPhbErrorCommon *common) -{ - struct OpalIoP7IOCPhbErrorData *data; - int i; - - data = (struct OpalIoP7IOCPhbErrorData *)common; - - pr_info("P7IOC PHB#%x Diag-data (Version: %d)\n\n", - hose->global_number, common->version); - - pr_info(" brdgCtl: %08x\n", data->brdgCtl); - - pr_info(" portStatusReg: %08x\n", data->portStatusReg); - pr_info(" rootCmplxStatus: %08x\n", data->rootCmplxStatus); - pr_info(" busAgentStatus: %08x\n", data->busAgentStatus); - - pr_info(" deviceStatus: %08x\n", data->deviceStatus); - pr_info(" slotStatus: %08x\n", data->slotStatus); - pr_info(" linkStatus: %08x\n", data->linkStatus); - pr_info(" devCmdStatus: %08x\n", data->devCmdStatus); - pr_info(" devSecStatus: %08x\n", data->devSecStatus); - - pr_info(" rootErrorStatus: %08x\n", data->rootErrorStatus); - pr_info(" uncorrErrorStatus: %08x\n", data->uncorrErrorStatus); - pr_info(" corrErrorStatus: %08x\n", data->corrErrorStatus); - pr_info(" tlpHdr1: %08x\n", data->tlpHdr1); - pr_info(" tlpHdr2: %08x\n", data->tlpHdr2); - pr_info(" tlpHdr3: %08x\n", data->tlpHdr3); - pr_info(" tlpHdr4: %08x\n", data->tlpHdr4); - pr_info(" sourceId: %08x\n", data->sourceId); - - pr_info(" errorClass: %016llx\n", data->errorClass); - pr_info(" correlator: %016llx\n", data->correlator); - pr_info(" p7iocPlssr: %016llx\n", data->p7iocPlssr); - pr_info(" p7iocCsr: %016llx\n", data->p7iocCsr); - pr_info(" lemFir: %016llx\n", data->lemFir); - pr_info(" lemErrorMask: %016llx\n", data->lemErrorMask); - pr_info(" lemWOF: %016llx\n", data->lemWOF); - pr_info(" phbErrorStatus: %016llx\n", data->phbErrorStatus); - pr_info(" phbFirstErrorStatus: %016llx\n", data->phbFirstErrorStatus); - pr_info(" phbErrorLog0: %016llx\n", data->phbErrorLog0); - pr_info(" phbErrorLog1: %016llx\n", data->phbErrorLog1); - pr_info(" mmioErrorStatus: %016llx\n", data->mmioErrorStatus); - pr_info(" mmioFirstErrorStatus: %016llx\n", data->mmioFirstErrorStatus); - pr_info(" mmioErrorLog0: %016llx\n", data->mmioErrorLog0); - pr_info(" mmioErrorLog1: %016llx\n", data->mmioErrorLog1); - pr_info(" dma0ErrorStatus: %016llx\n", data->dma0ErrorStatus); - pr_info(" dma0FirstErrorStatus: %016llx\n", data->dma0FirstErrorStatus); - pr_info(" dma0ErrorLog0: %016llx\n", data->dma0ErrorLog0); - pr_info(" dma0ErrorLog1: %016llx\n", data->dma0ErrorLog1); - pr_info(" dma1ErrorStatus: %016llx\n", data->dma1ErrorStatus); - pr_info(" dma1FirstErrorStatus: %016llx\n", data->dma1FirstErrorStatus); - pr_info(" dma1ErrorLog0: %016llx\n", data->dma1ErrorLog0); - pr_info(" dma1ErrorLog1: %016llx\n", data->dma1ErrorLog1); - - for (i = 0; i < OPAL_P7IOC_NUM_PEST_REGS; i++) { - if ((data->pestA[i] >> 63) == 0 && - (data->pestB[i] >> 63) == 0) - continue; - - pr_info(" PE[%3d] PESTA: %016llx\n", i, data->pestA[i]); - pr_info(" PESTB: %016llx\n", data->pestB[i]); - } -} - -static void ioda_eeh_phb3_phb_diag(struct pci_controller *hose, - struct OpalIoPhbErrorCommon *common) -{ - struct OpalIoPhb3ErrorData *data; - int i; - - data = (struct OpalIoPhb3ErrorData*)common; - pr_info("PHB3 PHB#%x Diag-data (Version: %d)\n\n", - hose->global_number, common->version); - - pr_info(" brdgCtl: %08x\n", data->brdgCtl); - - pr_info(" portStatusReg: %08x\n", data->portStatusReg); - pr_info(" rootCmplxStatus: %08x\n", data->rootCmplxStatus); - pr_info(" busAgentStatus: %08x\n", data->busAgentStatus); - - pr_info(" deviceStatus: %08x\n", data->deviceStatus); - pr_info(" slotStatus: %08x\n", data->slotStatus); - pr_info(" linkStatus: %08x\n", data->linkStatus); - pr_info(" devCmdStatus: %08x\n", data->devCmdStatus); - pr_info(" devSecStatus: %08x\n", data->devSecStatus); - - pr_info(" rootErrorStatus: %08x\n", data->rootErrorStatus); - pr_info(" uncorrErrorStatus: %08x\n", data->uncorrErrorStatus); - pr_info(" corrErrorStatus: %08x\n", data->corrErrorStatus); - pr_info(" tlpHdr1: %08x\n", data->tlpHdr1); - pr_info(" tlpHdr2: %08x\n", data->tlpHdr2); - pr_info(" tlpHdr3: %08x\n", data->tlpHdr3); - pr_info(" tlpHdr4: %08x\n", data->tlpHdr4); - pr_info(" sourceId: %08x\n", data->sourceId); - pr_info(" errorClass: %016llx\n", data->errorClass); - pr_info(" correlator: %016llx\n", data->correlator); - pr_info(" nFir: %016llx\n", data->nFir); - pr_info(" nFirMask: %016llx\n", data->nFirMask); - pr_info(" nFirWOF: %016llx\n", data->nFirWOF); - pr_info(" PhbPlssr: %016llx\n", data->phbPlssr); - pr_info(" PhbCsr: %016llx\n", data->phbCsr); - pr_info(" lemFir: %016llx\n", data->lemFir); - pr_info(" lemErrorMask: %016llx\n", data->lemErrorMask); - pr_info(" lemWOF: %016llx\n", data->lemWOF); - pr_info(" phbErrorStatus: %016llx\n", data->phbErrorStatus); - pr_info(" phbFirstErrorStatus: %016llx\n", data->phbFirstErrorStatus); - pr_info(" phbErrorLog0: %016llx\n", data->phbErrorLog0); - pr_info(" phbErrorLog1: %016llx\n", data->phbErrorLog1); - pr_info(" mmioErrorStatus: %016llx\n", data->mmioErrorStatus); - pr_info(" mmioFirstErrorStatus: %016llx\n", data->mmioFirstErrorStatus); - pr_info(" mmioErrorLog0: %016llx\n", data->mmioErrorLog0); - pr_info(" mmioErrorLog1: %016llx\n", data->mmioErrorLog1); - pr_info(" dma0ErrorStatus: %016llx\n", data->dma0ErrorStatus); - pr_info(" dma0FirstErrorStatus: %016llx\n", data->dma0FirstErrorStatus); - pr_info(" dma0ErrorLog0: %016llx\n", data->dma0ErrorLog0); - pr_info(" dma0ErrorLog1: %016llx\n", data->dma0ErrorLog1); - pr_info(" dma1ErrorStatus: %016llx\n", data->dma1ErrorStatus); - pr_info(" dma1FirstErrorStatus: %016llx\n", data->dma1FirstErrorStatus); - pr_info(" dma1ErrorLog0: %016llx\n", data->dma1ErrorLog0); - pr_info(" dma1ErrorLog1: %016llx\n", data->dma1ErrorLog1); - - for (i = 0; i < OPAL_PHB3_NUM_PEST_REGS; i++) { - if ((data->pestA[i] >> 63) == 0 && - (data->pestB[i] >> 63) == 0) - continue; - - pr_info(" PE[%3d] PESTA: %016llx\n", i, data->pestA[i]); - pr_info(" PESTB: %016llx\n", data->pestB[i]); - } -} - -static void ioda_eeh_phb_diag(struct pci_controller *hose) -{ - struct pnv_phb *phb = hose->private_data; - struct OpalIoPhbErrorCommon *common; - long rc; - - rc = opal_pci_get_phb_diag_data2(phb->opal_id, phb->diag.blob, - PNV_PCI_DIAG_BUF_SIZE); - if (rc != OPAL_SUCCESS) { - pr_warning("%s: Failed to get diag-data for PHB#%x (%ld)\n", - __func__, hose->global_number, rc); - return; - } - - common = (struct OpalIoPhbErrorCommon *)phb->diag.blob; - switch (common->ioType) { - case OPAL_PHB_ERROR_DATA_TYPE_P7IOC: - ioda_eeh_p7ioc_phb_diag(hose, common); - break; - case OPAL_PHB_ERROR_DATA_TYPE_PHB3: - ioda_eeh_phb3_phb_diag(hose, common); - break; - default: - pr_warning("%s: Unrecognized I/O chip %d\n", - __func__, common->ioType); - } -} - static int ioda_eeh_get_phb_pe(struct pci_controller *hose, struct eeh_pe **pe) { @@ -884,12 +692,12 @@ */ static int ioda_eeh_next_error(struct eeh_pe **pe) { - struct pci_controller *hose, *tmp; + struct pci_controller *hose; struct pnv_phb *phb; u64 frozen_pe_no; u16 err_type, severity; long rc; - int ret = 1; + int ret = EEH_NEXT_ERR_NONE; /* * While running here, it's safe to purge the event queue. @@ -899,7 +707,7 @@ eeh_remove_event(NULL); opal_notifier_update_evt(OPAL_EVENT_PCI_ERROR, 0x0ul); - list_for_each_entry_safe(hose, tmp, &hose_list, list_node) { + list_for_each_entry(hose, &hose_list, list_node) { /* * If the subordinate PCI buses of the PHB has been * removed, we needn't take care of it any more. @@ -938,19 +746,19 @@ switch (err_type) { case OPAL_EEH_IOC_ERROR: if (severity == OPAL_EEH_SEV_IOC_DEAD) { - list_for_each_entry_safe(hose, tmp, - &hose_list, list_node) { + list_for_each_entry(hose, &hose_list, + list_node) { phb = hose->private_data; phb->eeh_state |= PNV_EEH_STATE_REMOVED; } pr_err("EEH: dead IOC detected\n"); - ret = 4; - goto out; + ret = EEH_NEXT_ERR_DEAD_IOC; } else if (severity == OPAL_EEH_SEV_INF) { pr_info("EEH: IOC informative error " "detected\n"); ioda_eeh_hub_diag(hose); + ret = EEH_NEXT_ERR_NONE; } break; @@ -962,21 +770,20 @@ pr_err("EEH: dead PHB#%x detected\n", hose->global_number); phb->eeh_state |= PNV_EEH_STATE_REMOVED; - ret = 3; - goto out; + ret = EEH_NEXT_ERR_DEAD_PHB; } else if (severity == OPAL_EEH_SEV_PHB_FENCED) { if (ioda_eeh_get_phb_pe(hose, pe)) break; pr_err("EEH: fenced PHB#%x detected\n", hose->global_number); - ret = 2; - goto out; + ret = EEH_NEXT_ERR_FENCED_PHB; } else if (severity == OPAL_EEH_SEV_INF) { pr_info("EEH: PHB#%x informative error " "detected\n", hose->global_number); ioda_eeh_phb_diag(hose); + ret = EEH_NEXT_ERR_NONE; } break; @@ -986,13 +793,37 @@ pr_err("EEH: Frozen PE#%x on PHB#%x detected\n", (*pe)->addr, (*pe)->phb->global_number); - ret = 1; - goto out; + ret = EEH_NEXT_ERR_FROZEN_PE; + break; + default: + pr_warn("%s: Unexpected error type %d\n", + __func__, err_type); + } + + /* + * EEH core will try recover from fenced PHB or + * frozen PE. In the time for frozen PE, EEH core + * enable IO path for that before collecting logs, + * but it ruins the site. So we have to dump the + * log in advance here. + */ + if ((ret == EEH_NEXT_ERR_FROZEN_PE || + ret == EEH_NEXT_ERR_FENCED_PHB) && + !((*pe)->state & EEH_PE_ISOLATED)) { + eeh_pe_state_mark(*pe, EEH_PE_ISOLATED); + ioda_eeh_phb_diag(hose); } + + /* + * If we have no errors on the specific PHB or only + * informative error there, we continue poking it. + * Otherwise, we need actions to be taken by upper + * layer. + */ + if (ret > EEH_NEXT_ERR_INF) + break; } - ret = 0; -out: return ret; } @@ -1001,7 +832,6 @@ .set_option = ioda_eeh_set_option, .get_state = ioda_eeh_get_state, .reset = ioda_eeh_reset, - .get_log = ioda_eeh_get_log, .configure_bridge = ioda_eeh_configure_bridge, .next_error = ioda_eeh_next_error }; --- linux-3.13.0.orig/arch/powerpc/platforms/powernv/opal-wrappers.S +++ linux-3.13.0/arch/powerpc/platforms/powernv/opal-wrappers.S @@ -123,6 +123,7 @@ OPAL_CALL(opal_lpc_read, OPAL_LPC_READ); OPAL_CALL(opal_lpc_write, OPAL_LPC_WRITE); OPAL_CALL(opal_return_cpu, OPAL_RETURN_CPU); +OPAL_CALL(opal_reinit_cpus, OPAL_REINIT_CPUS); OPAL_CALL(opal_validate_flash, OPAL_FLASH_VALIDATE); OPAL_CALL(opal_manage_flash, OPAL_FLASH_MANAGE); OPAL_CALL(opal_update_flash, OPAL_FLASH_UPDATE); --- linux-3.13.0.orig/arch/powerpc/platforms/powernv/opal-xscom.c +++ linux-3.13.0/arch/powerpc/platforms/powernv/opal-xscom.c @@ -71,11 +71,11 @@ } } -static u64 opal_scom_unmangle(u64 reg) +static u64 opal_scom_unmangle(u64 addr) { /* * XSCOM indirect addresses have the top bit set. Additionally - * the reset of the top 3 nibbles is always 0. + * the rest of the top 3 nibbles is always 0. * * Because the debugfs interface uses signed offsets and shifts * the address left by 3, we basically cannot use the top 4 bits @@ -86,10 +86,13 @@ * conversion here. To leave room for further xscom address * expansion, we only clear out the top byte * + * For in-kernel use, we also support the real indirect bit, so + * we test for any of the top 5 bits + * */ - if (reg & (1ull << 59)) - reg = (reg & ~(0xffull << 56)) | (1ull << 63); - return reg; + if (addr & (0x1full << 59)) + addr = (addr & ~(0xffull << 56)) | (1ull << 63); + return addr; } static int opal_scom_read(scom_map_t map, u64 reg, u64 *value) @@ -98,8 +101,8 @@ int64_t rc; __be64 v; - reg = opal_scom_unmangle(reg); - rc = opal_xscom_read(m->chip, m->addr + reg, (__be64 *)__pa(&v)); + reg = opal_scom_unmangle(m->addr + reg); + rc = opal_xscom_read(m->chip, reg, (__be64 *)__pa(&v)); *value = be64_to_cpu(v); return opal_xscom_err_xlate(rc); } @@ -109,8 +112,8 @@ struct opal_scom_map *m = map; int64_t rc; - reg = opal_scom_unmangle(reg); - rc = opal_xscom_write(m->chip, m->addr + reg, value); + reg = opal_scom_unmangle(m->addr + reg); + rc = opal_xscom_write(m->chip, reg, value); return opal_xscom_err_xlate(rc); } --- linux-3.13.0.orig/arch/powerpc/platforms/powernv/opal.c +++ linux-3.13.0/arch/powerpc/platforms/powernv/opal.c @@ -18,9 +18,12 @@ #include #include #include +#include #include +#include #include #include +#include #include "powernv.h" @@ -30,8 +33,18 @@ struct opal { u64 base; u64 entry; + u64 size; } opal; +struct mcheck_recoverable_range { + u64 start_addr; + u64 end_addr; + u64 recover_addr; +}; + +static struct mcheck_recoverable_range *mc_recoverable_range; +static int mc_recoverable_range_len; + static struct device_node *opal_node; static DEFINE_SPINLOCK(opal_write_lock); extern u64 opal_mc_secondary_handler[]; @@ -42,28 +55,47 @@ static uint64_t last_notified_mask = 0x0ul; static atomic_t opal_notifier_hold = ATOMIC_INIT(0); +static void opal_reinit_cores(void) +{ + /* Do the actual re-init, This will clobber all FPRs, VRs, etc... + * + * It will preserve non volatile GPRs and HSPRG0/1. It will + * also restore HIDs and other SPRs to their original value + * but it might clobber a bunch. + */ +#ifdef __BIG_ENDIAN__ + opal_reinit_cpus(OPAL_REINIT_CPUS_HILE_BE); +#else + opal_reinit_cpus(OPAL_REINIT_CPUS_HILE_LE); +#endif +} + int __init early_init_dt_scan_opal(unsigned long node, const char *uname, int depth, void *data) { - const void *basep, *entryp; - unsigned long basesz, entrysz; + const void *basep, *entryp, *sizep; + unsigned long basesz, entrysz, runtimesz; if (depth != 1 || strcmp(uname, "ibm,opal") != 0) return 0; basep = of_get_flat_dt_prop(node, "opal-base-address", &basesz); entryp = of_get_flat_dt_prop(node, "opal-entry-address", &entrysz); + sizep = of_get_flat_dt_prop(node, "opal-runtime-size", &runtimesz); - if (!basep || !entryp) + if (!basep || !entryp || !sizep) return 1; opal.base = of_read_number(basep, basesz/4); opal.entry = of_read_number(entryp, entrysz/4); + opal.size = of_read_number(sizep, runtimesz/4); pr_debug("OPAL Base = 0x%llx (basep=%p basesz=%ld)\n", opal.base, basep, basesz); pr_debug("OPAL Entry = 0x%llx (entryp=%p basesz=%ld)\n", opal.entry, entryp, entrysz); + pr_debug("OPAL Entry = 0x%llx (sizep=%p runtimesz=%ld)\n", + opal.size, sizep, runtimesz); powerpc_firmware_features |= FW_FEATURE_OPAL; if (of_flat_dt_is_compatible(node, "ibm,opal-v3")) { @@ -77,6 +109,72 @@ printk("OPAL V1 detected !\n"); } + /* Reinit all cores with the right endian */ + opal_reinit_cores(); + + /* Restore some bits */ + if (cur_cpu_spec->cpu_restore) + cur_cpu_spec->cpu_restore(); + + return 1; +} + +int __init early_init_dt_scan_recoverable_ranges(unsigned long node, + const char *uname, int depth, void *data) +{ + unsigned long i, psize, size; + const __be32 *prop; + + if (depth != 1 || strcmp(uname, "ibm,opal") != 0) + return 0; + + prop = of_get_flat_dt_prop(node, "mcheck-recoverable-ranges", &psize); + + if (!prop) + return 1; + + pr_debug("Found machine check recoverable ranges.\n"); + + /* + * Calculate number of available entries. + * + * Each recoverable address range entry is (start address, len, + * recovery address), 2 cells each for start and recovery address, + * 1 cell for len, totalling 5 cells per entry. + */ + mc_recoverable_range_len = psize / (sizeof(*prop) * 5); + + /* Sanity check */ + if (!mc_recoverable_range_len) + return 1; + + /* Size required to hold all the entries. */ + size = mc_recoverable_range_len * + sizeof(struct mcheck_recoverable_range); + + /* + * Allocate a buffer to hold the MC recoverable ranges. We would be + * accessing them in real mode, hence it needs to be within + * RMO region. + */ + mc_recoverable_range =__va(memblock_alloc_base(size, __alignof__(u64), + ppc64_rma_size)); + memset(mc_recoverable_range, 0, size); + + for (i = 0; i < mc_recoverable_range_len; i++) { + mc_recoverable_range[i].start_addr = + of_read_number(prop + (i * 5) + 0, 2); + mc_recoverable_range[i].end_addr = + mc_recoverable_range[i].start_addr + + of_read_number(prop + (i * 5) + 2, 1); + mc_recoverable_range[i].recover_addr = + of_read_number(prop + (i * 5) + 3, 2); + + pr_debug("Machine check recoverable range: %llx..%llx: %llx\n", + mc_recoverable_range[i].start_addr, + mc_recoverable_range[i].end_addr, + mc_recoverable_range[i].recover_addr); + } return 1; } @@ -88,14 +186,10 @@ if (!(powerpc_firmware_features & FW_FEATURE_OPAL)) return -ENODEV; - /* Hookup some exception handlers. We use the fwnmi area at 0x7000 - * to provide the glue space to OPAL + /* Hookup some exception handlers except machine check. We use the + * fwnmi area at 0x7000 to provide the glue space to OPAL */ glue = 0x7000; - opal_register_exception_handler(OPAL_MACHINE_CHECK_HANDLER, - __pa(opal_mc_secondary_handler[0]), - glue); - glue += 128; opal_register_exception_handler(OPAL_HYPERVISOR_MAINTENANCE_HANDLER, 0, glue); glue += 128; @@ -254,119 +348,94 @@ return written; } +static int opal_recover_mce(struct pt_regs *regs, + struct machine_check_event *evt) +{ + int recovered = 0; + uint64_t ea = get_mce_fault_addr(evt); + + if (!(regs->msr & MSR_RI)) { + /* If MSR_RI isn't set, we cannot recover */ + recovered = 0; + } else if (evt->disposition == MCE_DISPOSITION_RECOVERED) { + /* Platform corrected itself */ + recovered = 1; + } else if (ea && !is_kernel_addr(ea)) { + /* + * Faulting address is not in kernel text. We should be fine. + * We need to find which process uses this address. + * For now, kill the task if we have received exception when + * in userspace. + * + * TODO: Queue up this address for hwpoisioning later. + */ + if (user_mode(regs) && !is_global_init(current)) { + _exception(SIGBUS, regs, BUS_MCEERR_AR, regs->nip); + recovered = 1; + } else + recovered = 0; + } else if (user_mode(regs) && !is_global_init(current) && + evt->severity == MCE_SEV_ERROR_SYNC) { + /* + * If we have received a synchronous error when in userspace + * kill the task. + */ + _exception(SIGBUS, regs, BUS_MCEERR_AR, regs->nip); + recovered = 1; + } + return recovered; +} + int opal_machine_check(struct pt_regs *regs) { - struct opal_machine_check_event *opal_evt = get_paca()->opal_mc_evt; - struct opal_machine_check_event evt; - const char *level, *sevstr, *subtype; - static const char *opal_mc_ue_types[] = { - "Indeterminate", - "Instruction fetch", - "Page table walk ifetch", - "Load/Store", - "Page table walk Load/Store", - }; - static const char *opal_mc_slb_types[] = { - "Indeterminate", - "Parity", - "Multihit", - }; - static const char *opal_mc_erat_types[] = { - "Indeterminate", - "Parity", - "Multihit", - }; - static const char *opal_mc_tlb_types[] = { - "Indeterminate", - "Parity", - "Multihit", - }; - - /* Copy the event structure and release the original */ - evt = *opal_evt; - opal_evt->in_use = 0; + struct machine_check_event evt; + + if (!get_mce_event(&evt, MCE_EVENT_RELEASE)) + return 0; /* Print things out */ - if (evt.version != OpalMCE_V1) { + if (evt.version != MCE_V1) { pr_err("Machine Check Exception, Unknown event version %d !\n", evt.version); return 0; } - switch(evt.severity) { - case OpalMCE_SEV_NO_ERROR: - level = KERN_INFO; - sevstr = "Harmless"; - break; - case OpalMCE_SEV_WARNING: - level = KERN_WARNING; - sevstr = ""; - break; - case OpalMCE_SEV_ERROR_SYNC: - level = KERN_ERR; - sevstr = "Severe"; - break; - case OpalMCE_SEV_FATAL: - default: - level = KERN_ERR; - sevstr = "Fatal"; - break; - } + machine_check_print_event_info(&evt); - printk("%s%s Machine check interrupt [%s]\n", level, sevstr, - evt.disposition == OpalMCE_DISPOSITION_RECOVERED ? - "Recovered" : "[Not recovered"); - printk("%s Initiator: %s\n", level, - evt.initiator == OpalMCE_INITIATOR_CPU ? "CPU" : "Unknown"); - switch(evt.error_type) { - case OpalMCE_ERROR_TYPE_UE: - subtype = evt.u.ue_error.ue_error_type < - ARRAY_SIZE(opal_mc_ue_types) ? - opal_mc_ue_types[evt.u.ue_error.ue_error_type] - : "Unknown"; - printk("%s Error type: UE [%s]\n", level, subtype); - if (evt.u.ue_error.effective_address_provided) - printk("%s Effective address: %016llx\n", - level, evt.u.ue_error.effective_address); - if (evt.u.ue_error.physical_address_provided) - printk("%s Physial address: %016llx\n", - level, evt.u.ue_error.physical_address); - break; - case OpalMCE_ERROR_TYPE_SLB: - subtype = evt.u.slb_error.slb_error_type < - ARRAY_SIZE(opal_mc_slb_types) ? - opal_mc_slb_types[evt.u.slb_error.slb_error_type] - : "Unknown"; - printk("%s Error type: SLB [%s]\n", level, subtype); - if (evt.u.slb_error.effective_address_provided) - printk("%s Effective address: %016llx\n", - level, evt.u.slb_error.effective_address); - break; - case OpalMCE_ERROR_TYPE_ERAT: - subtype = evt.u.erat_error.erat_error_type < - ARRAY_SIZE(opal_mc_erat_types) ? - opal_mc_erat_types[evt.u.erat_error.erat_error_type] - : "Unknown"; - printk("%s Error type: ERAT [%s]\n", level, subtype); - if (evt.u.erat_error.effective_address_provided) - printk("%s Effective address: %016llx\n", - level, evt.u.erat_error.effective_address); - break; - case OpalMCE_ERROR_TYPE_TLB: - subtype = evt.u.tlb_error.tlb_error_type < - ARRAY_SIZE(opal_mc_tlb_types) ? - opal_mc_tlb_types[evt.u.tlb_error.tlb_error_type] - : "Unknown"; - printk("%s Error type: TLB [%s]\n", level, subtype); - if (evt.u.tlb_error.effective_address_provided) - printk("%s Effective address: %016llx\n", - level, evt.u.tlb_error.effective_address); - break; - default: - case OpalMCE_ERROR_TYPE_UNKNOWN: - printk("%s Error type: Unknown\n", level); - break; - } - return evt.severity == OpalMCE_SEV_FATAL ? 0 : 1; + if (opal_recover_mce(regs, &evt)) + return 1; + return 0; +} + +static uint64_t find_recovery_address(uint64_t nip) +{ + int i; + + for (i = 0; i < mc_recoverable_range_len; i++) + if ((nip >= mc_recoverable_range[i].start_addr) && + (nip < mc_recoverable_range[i].end_addr)) + return mc_recoverable_range[i].recover_addr; + return 0; +} + +bool opal_mce_check_early_recovery(struct pt_regs *regs) +{ + uint64_t recover_addr = 0; + + if (!opal.base || !opal.size) + goto out; + + if ((regs->nip >= opal.base) && + (regs->nip <= (opal.base + opal.size))) + recover_addr = find_recovery_address(regs->nip); + + /* + * Setup regs->nip to rfi into fixup address. + */ + if (recover_addr) + regs->nip = recover_addr; + +out: + return !!recover_addr; } static irqreturn_t opal_interrupt(int irq, void *data) --- linux-3.13.0.orig/arch/powerpc/platforms/powernv/pci-ioda.c +++ linux-3.13.0/arch/powerpc/platforms/powernv/pci-ioda.c @@ -21,6 +21,7 @@ #include #include #include +#include #include #include @@ -460,9 +461,39 @@ return; pe = &phb->ioda.pe_array[pdn->pe_number]; + WARN_ON(get_dma_ops(&pdev->dev) != &dma_iommu_ops); set_iommu_table_base(&pdev->dev, &pe->tce32_table); } +static int pnv_pci_ioda_dma_set_mask(struct pnv_phb *phb, + struct pci_dev *pdev, u64 dma_mask) +{ + struct pci_dn *pdn = pci_get_pdn(pdev); + struct pnv_ioda_pe *pe; + uint64_t top; + bool bypass = false; + + if (WARN_ON(!pdn || pdn->pe_number == IODA_INVALID_PE)) + return -ENODEV;; + + pe = &phb->ioda.pe_array[pdn->pe_number]; + if (pe->tce_bypass_enabled) { + top = pe->tce_bypass_base + memblock_end_of_DRAM() - 1; + bypass = (dma_mask >= top); + } + + if (bypass) { + dev_info(&pdev->dev, "Using 64-bit DMA iommu bypass\n"); + set_dma_ops(&pdev->dev, &dma_direct_ops); + set_dma_offset(&pdev->dev, pe->tce_bypass_base); + } else { + dev_info(&pdev->dev, "Using 32-bit DMA via iommu\n"); + set_dma_ops(&pdev->dev, &dma_iommu_ops); + set_iommu_table_base(&pdev->dev, &pe->tce32_table); + } + return 0; +} + static void pnv_ioda_setup_bus_dma(struct pnv_ioda_pe *pe, struct pci_bus *bus) { struct pci_dev *dev; @@ -657,6 +688,56 @@ __free_pages(tce_mem, get_order(TCE32_TABLE_SIZE * segs)); } +static void pnv_pci_ioda2_set_bypass(struct iommu_table *tbl, bool enable) +{ + struct pnv_ioda_pe *pe = container_of(tbl, struct pnv_ioda_pe, + tce32_table); + uint16_t window_id = (pe->pe_number << 1 ) + 1; + int64_t rc; + + pe_info(pe, "%sabling 64-bit DMA bypass\n", enable ? "En" : "Dis"); + if (enable) { + phys_addr_t top = memblock_end_of_DRAM(); + + top = roundup_pow_of_two(top); + rc = opal_pci_map_pe_dma_window_real(pe->phb->opal_id, + pe->pe_number, + window_id, + pe->tce_bypass_base, + top); + } else { + rc = opal_pci_map_pe_dma_window_real(pe->phb->opal_id, + pe->pe_number, + window_id, + pe->tce_bypass_base, + 0); + + /* + * We might want to reset the DMA ops of all devices on + * this PE. However in theory, that shouldn't be necessary + * as this is used for VFIO/KVM pass-through and the device + * hasn't yet been returned to its kernel driver + */ + } + if (rc) + pe_err(pe, "OPAL error %lld configuring bypass window\n", rc); + else + pe->tce_bypass_enabled = enable; +} + +static void pnv_pci_ioda2_setup_bypass_pe(struct pnv_phb *phb, + struct pnv_ioda_pe *pe) +{ + /* TVE #1 is selected by PCI address bit 59 */ + pe->tce_bypass_base = 1ull << 59; + + /* Install set_bypass callback for VFIO */ + pe->tce32_table.set_bypass = pnv_pci_ioda2_set_bypass; + + /* Enable bypass by default */ + pnv_pci_ioda2_set_bypass(&pe->tce32_table, true); +} + static void pnv_pci_ioda2_setup_dma_pe(struct pnv_phb *phb, struct pnv_ioda_pe *pe) { @@ -727,6 +808,8 @@ else pnv_ioda_setup_bus_dma(pe, pe->pbus); + /* Also create a bypass window */ + pnv_pci_ioda2_setup_bypass_pe(phb, pe); return; fail: if (pe->tce32_seg >= 0) @@ -1287,6 +1370,7 @@ /* Setup TCEs */ phb->dma_dev_setup = pnv_pci_ioda_dma_dev_setup; + phb->dma_set_mask = pnv_pci_ioda_dma_set_mask; /* Setup shutdown function for kexec */ phb->shutdown = pnv_pci_ioda_shutdown; --- linux-3.13.0.orig/arch/powerpc/platforms/powernv/pci.c +++ linux-3.13.0/arch/powerpc/platforms/powernv/pci.c @@ -124,77 +124,187 @@ } #endif /* CONFIG_PCI_MSI */ -static void pnv_pci_dump_p7ioc_diag_data(struct pnv_phb *phb) +static void pnv_pci_dump_p7ioc_diag_data(struct pci_controller *hose, + struct OpalIoPhbErrorCommon *common) { - struct OpalIoP7IOCPhbErrorData *data = &phb->diag.p7ioc; + struct OpalIoP7IOCPhbErrorData *data; int i; - pr_info("PHB %d diagnostic data:\n", phb->hose->global_number); + data = (struct OpalIoP7IOCPhbErrorData *)common; + pr_info("P7IOC PHB#%d Diag-data (Version: %d)\n\n", + hose->global_number, common->version); + + if (data->brdgCtl) + pr_info(" brdgCtl: %08x\n", + data->brdgCtl); + if (data->portStatusReg || data->rootCmplxStatus || + data->busAgentStatus) + pr_info(" UtlSts: %08x %08x %08x\n", + data->portStatusReg, data->rootCmplxStatus, + data->busAgentStatus); + if (data->deviceStatus || data->slotStatus || + data->linkStatus || data->devCmdStatus || + data->devSecStatus) + pr_info(" RootSts: %08x %08x %08x %08x %08x\n", + data->deviceStatus, data->slotStatus, + data->linkStatus, data->devCmdStatus, + data->devSecStatus); + if (data->rootErrorStatus || data->uncorrErrorStatus || + data->corrErrorStatus) + pr_info(" RootErrSts: %08x %08x %08x\n", + data->rootErrorStatus, data->uncorrErrorStatus, + data->corrErrorStatus); + if (data->tlpHdr1 || data->tlpHdr2 || + data->tlpHdr3 || data->tlpHdr4) + pr_info(" RootErrLog: %08x %08x %08x %08x\n", + data->tlpHdr1, data->tlpHdr2, + data->tlpHdr3, data->tlpHdr4); + if (data->sourceId || data->errorClass || + data->correlator) + pr_info(" RootErrLog1: %08x %016llx %016llx\n", + data->sourceId, data->errorClass, + data->correlator); + if (data->p7iocPlssr || data->p7iocCsr) + pr_info(" PhbSts: %016llx %016llx\n", + data->p7iocPlssr, data->p7iocCsr); + if (data->lemFir || data->lemErrorMask || + data->lemWOF) + pr_info(" Lem: %016llx %016llx %016llx\n", + data->lemFir, data->lemErrorMask, + data->lemWOF); + if (data->phbErrorStatus || data->phbFirstErrorStatus || + data->phbErrorLog0 || data->phbErrorLog1) + pr_info(" PhbErr: %016llx %016llx %016llx %016llx\n", + data->phbErrorStatus, data->phbFirstErrorStatus, + data->phbErrorLog0, data->phbErrorLog1); + if (data->mmioErrorStatus || data->mmioFirstErrorStatus || + data->mmioErrorLog0 || data->mmioErrorLog1) + pr_info(" OutErr: %016llx %016llx %016llx %016llx\n", + data->mmioErrorStatus, data->mmioFirstErrorStatus, + data->mmioErrorLog0, data->mmioErrorLog1); + if (data->dma0ErrorStatus || data->dma0FirstErrorStatus || + data->dma0ErrorLog0 || data->dma0ErrorLog1) + pr_info(" InAErr: %016llx %016llx %016llx %016llx\n", + data->dma0ErrorStatus, data->dma0FirstErrorStatus, + data->dma0ErrorLog0, data->dma0ErrorLog1); + if (data->dma1ErrorStatus || data->dma1FirstErrorStatus || + data->dma1ErrorLog0 || data->dma1ErrorLog1) + pr_info(" InBErr: %016llx %016llx %016llx %016llx\n", + data->dma1ErrorStatus, data->dma1FirstErrorStatus, + data->dma1ErrorLog0, data->dma1ErrorLog1); - pr_info(" brdgCtl = 0x%08x\n", data->brdgCtl); + for (i = 0; i < OPAL_P7IOC_NUM_PEST_REGS; i++) { + if ((data->pestA[i] >> 63) == 0 && + (data->pestB[i] >> 63) == 0) + continue; - pr_info(" portStatusReg = 0x%08x\n", data->portStatusReg); - pr_info(" rootCmplxStatus = 0x%08x\n", data->rootCmplxStatus); - pr_info(" busAgentStatus = 0x%08x\n", data->busAgentStatus); - - pr_info(" deviceStatus = 0x%08x\n", data->deviceStatus); - pr_info(" slotStatus = 0x%08x\n", data->slotStatus); - pr_info(" linkStatus = 0x%08x\n", data->linkStatus); - pr_info(" devCmdStatus = 0x%08x\n", data->devCmdStatus); - pr_info(" devSecStatus = 0x%08x\n", data->devSecStatus); - - pr_info(" rootErrorStatus = 0x%08x\n", data->rootErrorStatus); - pr_info(" uncorrErrorStatus = 0x%08x\n", data->uncorrErrorStatus); - pr_info(" corrErrorStatus = 0x%08x\n", data->corrErrorStatus); - pr_info(" tlpHdr1 = 0x%08x\n", data->tlpHdr1); - pr_info(" tlpHdr2 = 0x%08x\n", data->tlpHdr2); - pr_info(" tlpHdr3 = 0x%08x\n", data->tlpHdr3); - pr_info(" tlpHdr4 = 0x%08x\n", data->tlpHdr4); - pr_info(" sourceId = 0x%08x\n", data->sourceId); - - pr_info(" errorClass = 0x%016llx\n", data->errorClass); - pr_info(" correlator = 0x%016llx\n", data->correlator); - - pr_info(" p7iocPlssr = 0x%016llx\n", data->p7iocPlssr); - pr_info(" p7iocCsr = 0x%016llx\n", data->p7iocCsr); - pr_info(" lemFir = 0x%016llx\n", data->lemFir); - pr_info(" lemErrorMask = 0x%016llx\n", data->lemErrorMask); - pr_info(" lemWOF = 0x%016llx\n", data->lemWOF); - pr_info(" phbErrorStatus = 0x%016llx\n", data->phbErrorStatus); - pr_info(" phbFirstErrorStatus = 0x%016llx\n", data->phbFirstErrorStatus); - pr_info(" phbErrorLog0 = 0x%016llx\n", data->phbErrorLog0); - pr_info(" phbErrorLog1 = 0x%016llx\n", data->phbErrorLog1); - pr_info(" mmioErrorStatus = 0x%016llx\n", data->mmioErrorStatus); - pr_info(" mmioFirstErrorStatus = 0x%016llx\n", data->mmioFirstErrorStatus); - pr_info(" mmioErrorLog0 = 0x%016llx\n", data->mmioErrorLog0); - pr_info(" mmioErrorLog1 = 0x%016llx\n", data->mmioErrorLog1); - pr_info(" dma0ErrorStatus = 0x%016llx\n", data->dma0ErrorStatus); - pr_info(" dma0FirstErrorStatus = 0x%016llx\n", data->dma0FirstErrorStatus); - pr_info(" dma0ErrorLog0 = 0x%016llx\n", data->dma0ErrorLog0); - pr_info(" dma0ErrorLog1 = 0x%016llx\n", data->dma0ErrorLog1); - pr_info(" dma1ErrorStatus = 0x%016llx\n", data->dma1ErrorStatus); - pr_info(" dma1FirstErrorStatus = 0x%016llx\n", data->dma1FirstErrorStatus); - pr_info(" dma1ErrorLog0 = 0x%016llx\n", data->dma1ErrorLog0); - pr_info(" dma1ErrorLog1 = 0x%016llx\n", data->dma1ErrorLog1); + pr_info(" PE[%3d] A/B: %016llx %016llx\n", + i, data->pestA[i], data->pestB[i]); + } +} - for (i = 0; i < OPAL_P7IOC_NUM_PEST_REGS; i++) { +static void pnv_pci_dump_phb3_diag_data(struct pci_controller *hose, + struct OpalIoPhbErrorCommon *common) +{ + struct OpalIoPhb3ErrorData *data; + int i; + + data = (struct OpalIoPhb3ErrorData*)common; + pr_info("PHB3 PHB#%d Diag-data (Version: %d)\n\n", + hose->global_number, common->version); + if (data->brdgCtl) + pr_info(" brdgCtl: %08x\n", + data->brdgCtl); + if (data->portStatusReg || data->rootCmplxStatus || + data->busAgentStatus) + pr_info(" UtlSts: %08x %08x %08x\n", + data->portStatusReg, data->rootCmplxStatus, + data->busAgentStatus); + if (data->deviceStatus || data->slotStatus || + data->linkStatus || data->devCmdStatus || + data->devSecStatus) + pr_info(" RootSts: %08x %08x %08x %08x %08x\n", + data->deviceStatus, data->slotStatus, + data->linkStatus, data->devCmdStatus, + data->devSecStatus); + if (data->rootErrorStatus || data->uncorrErrorStatus || + data->corrErrorStatus) + pr_info(" RootErrSts: %08x %08x %08x\n", + data->rootErrorStatus, data->uncorrErrorStatus, + data->corrErrorStatus); + if (data->tlpHdr1 || data->tlpHdr2 || + data->tlpHdr3 || data->tlpHdr4) + pr_info(" RootErrLog: %08x %08x %08x %08x\n", + data->tlpHdr1, data->tlpHdr2, + data->tlpHdr3, data->tlpHdr4); + if (data->sourceId || data->errorClass || + data->correlator) + pr_info(" RootErrLog1: %08x %016llx %016llx\n", + data->sourceId, data->errorClass, + data->correlator); + if (data->nFir || data->nFirMask || + data->nFirWOF) + pr_info(" nFir: %016llx %016llx %016llx\n", + data->nFir, data->nFirMask, + data->nFirWOF); + if (data->phbPlssr || data->phbCsr) + pr_info(" PhbSts: %016llx %016llx\n", + data->phbPlssr, data->phbCsr); + if (data->lemFir || data->lemErrorMask || + data->lemWOF) + pr_info(" Lem: %016llx %016llx %016llx\n", + data->lemFir, data->lemErrorMask, + data->lemWOF); + if (data->phbErrorStatus || data->phbFirstErrorStatus || + data->phbErrorLog0 || data->phbErrorLog1) + pr_info(" PhbErr: %016llx %016llx %016llx %016llx\n", + data->phbErrorStatus, data->phbFirstErrorStatus, + data->phbErrorLog0, data->phbErrorLog1); + if (data->mmioErrorStatus || data->mmioFirstErrorStatus || + data->mmioErrorLog0 || data->mmioErrorLog1) + pr_info(" OutErr: %016llx %016llx %016llx %016llx\n", + data->mmioErrorStatus, data->mmioFirstErrorStatus, + data->mmioErrorLog0, data->mmioErrorLog1); + if (data->dma0ErrorStatus || data->dma0FirstErrorStatus || + data->dma0ErrorLog0 || data->dma0ErrorLog1) + pr_info(" InAErr: %016llx %016llx %016llx %016llx\n", + data->dma0ErrorStatus, data->dma0FirstErrorStatus, + data->dma0ErrorLog0, data->dma0ErrorLog1); + if (data->dma1ErrorStatus || data->dma1FirstErrorStatus || + data->dma1ErrorLog0 || data->dma1ErrorLog1) + pr_info(" InBErr: %016llx %016llx %016llx %016llx\n", + data->dma1ErrorStatus, data->dma1FirstErrorStatus, + data->dma1ErrorLog0, data->dma1ErrorLog1); + + for (i = 0; i < OPAL_PHB3_NUM_PEST_REGS; i++) { if ((data->pestA[i] >> 63) == 0 && (data->pestB[i] >> 63) == 0) continue; - pr_info(" PE[%3d] PESTA = 0x%016llx\n", i, data->pestA[i]); - pr_info(" PESTB = 0x%016llx\n", data->pestB[i]); + + pr_info(" PE[%3d] A/B: %016llx %016llx\n", + i, data->pestA[i], data->pestB[i]); } } -static void pnv_pci_dump_phb_diag_data(struct pnv_phb *phb) +void pnv_pci_dump_phb_diag_data(struct pci_controller *hose, + unsigned char *log_buff) { - switch(phb->model) { - case PNV_PHB_MODEL_P7IOC: - pnv_pci_dump_p7ioc_diag_data(phb); + struct OpalIoPhbErrorCommon *common; + + if (!hose || !log_buff) + return; + + common = (struct OpalIoPhbErrorCommon *)log_buff; + switch (common->ioType) { + case OPAL_PHB_ERROR_DATA_TYPE_P7IOC: + pnv_pci_dump_p7ioc_diag_data(hose, common); + break; + case OPAL_PHB_ERROR_DATA_TYPE_PHB3: + pnv_pci_dump_phb3_diag_data(hose, common); break; default: - pr_warning("PCI %d: Can't decode this PHB diag data\n", - phb->hose->global_number); + pr_warn("%s: Unrecognized ioType %d\n", + __func__, common->ioType); } } @@ -222,7 +332,7 @@ * with the normal errors generated when probing empty slots */ if (has_diag) - pnv_pci_dump_phb_diag_data(phb); + pnv_pci_dump_phb_diag_data(phb->hose, phb->diag.blob); else pr_warning("PCI %d: No diag data available\n", phb->hose->global_number); @@ -553,6 +663,16 @@ pnv_pci_dma_fallback_setup(hose, pdev); } +int pnv_pci_dma_set_mask(struct pci_dev *pdev, u64 dma_mask) +{ + struct pci_controller *hose = pci_bus_to_host(pdev->bus); + struct pnv_phb *phb = hose->private_data; + + if (phb && phb->dma_set_mask) + return phb->dma_set_mask(phb, pdev, dma_mask); + return __dma_set_mask(&pdev->dev, dma_mask); +} + void pnv_pci_shutdown(void) { struct pci_controller *hose; --- linux-3.13.0.orig/arch/powerpc/platforms/powernv/pci.h +++ linux-3.13.0/arch/powerpc/platforms/powernv/pci.h @@ -54,7 +54,9 @@ struct iommu_table tce32_table; phys_addr_t tce_inval_reg_phys; - /* XXX TODO: Add support for additional 64-bit iommus */ + /* 64-bit TCE bypass region */ + bool tce_bypass_enabled; + uint64_t tce_bypass_base; /* MSIs. MVE index is identical for for 32 and 64 bit MSI * and -1 if not supported. (It's actually identical to the @@ -113,6 +115,8 @@ unsigned int hwirq, unsigned int virq, unsigned int is_64, struct msi_msg *msg); void (*dma_dev_setup)(struct pnv_phb *phb, struct pci_dev *pdev); + int (*dma_set_mask)(struct pnv_phb *phb, struct pci_dev *pdev, + u64 dma_mask); void (*fixup_phb)(struct pci_controller *hose); u32 (*bdfn_to_pe)(struct pnv_phb *phb, struct pci_bus *bus, u32 devfn); void (*shutdown)(struct pnv_phb *phb); @@ -177,6 +181,7 @@ unsigned char blob[PNV_PCI_DIAG_BUF_SIZE]; struct OpalIoP7IOCPhbErrorData p7ioc; struct OpalIoP7IOCErrorData hub_diag; + struct OpalIoPhb3ErrorData phb3; } diag; }; @@ -186,6 +191,8 @@ extern struct pnv_eeh_ops ioda_eeh_ops; #endif +void pnv_pci_dump_phb_diag_data(struct pci_controller *hose, + unsigned char *log_buff); int pnv_pci_cfg_read(struct device_node *dn, int where, int size, u32 *val); int pnv_pci_cfg_write(struct device_node *dn, --- linux-3.13.0.orig/arch/powerpc/platforms/powernv/powernv.h +++ linux-3.13.0/arch/powerpc/platforms/powernv/powernv.h @@ -7,12 +7,20 @@ static inline void pnv_smp_init(void) { } #endif +struct pci_dev; + #ifdef CONFIG_PCI extern void pnv_pci_init(void); extern void pnv_pci_shutdown(void); +extern int pnv_pci_dma_set_mask(struct pci_dev *pdev, u64 dma_mask); #else static inline void pnv_pci_init(void) { } static inline void pnv_pci_shutdown(void) { } + +static inline int pnv_pci_dma_set_mask(struct pci_dev *pdev, u64 dma_mask) +{ + return -ENODEV; +} #endif extern void pnv_lpc_init(void); --- linux-3.13.0.orig/arch/powerpc/platforms/powernv/setup.c +++ linux-3.13.0/arch/powerpc/platforms/powernv/setup.c @@ -26,6 +26,7 @@ #include #include #include +#include #include #include @@ -140,6 +141,13 @@ { } +static int pnv_dma_set_mask(struct device *dev, u64 dma_mask) +{ + if (dev_is_pci(dev)) + return pnv_pci_dma_set_mask(to_pci_dev(dev), dma_mask); + return __dma_set_mask(dev, dma_mask); +} + static void pnv_shutdown(void) { /* Let the PCI code clear up IODA tables */ @@ -177,6 +185,7 @@ ppc_md.power_off = pnv_power_off; ppc_md.halt = pnv_halt; ppc_md.machine_check_exception = opal_machine_check; + ppc_md.mce_check_early_recovery = opal_mce_check_early_recovery; } #ifdef CONFIG_PPC_POWERNV_RTAS @@ -225,6 +234,7 @@ .machine_shutdown = pnv_shutdown, .power_save = power7_idle, .calibrate_decr = generic_calibrate_decr, + .dma_set_mask = pnv_dma_set_mask, #ifdef CONFIG_KEXEC .kexec_cpu_down = pnv_kexec_cpu_down, #endif --- linux-3.13.0.orig/arch/powerpc/platforms/pseries/hotplug-cpu.c +++ linux-3.13.0/arch/powerpc/platforms/pseries/hotplug-cpu.c @@ -35,12 +35,7 @@ #include "offline_states.h" /* This version can't take the spinlock, because it never returns */ -static struct rtas_args rtas_stop_self_args = { - .token = RTAS_UNKNOWN_SERVICE, - .nargs = 0, - .nret = 1, - .rets = &rtas_stop_self_args.args[0], -}; +static int rtas_stop_self_token = RTAS_UNKNOWN_SERVICE; static DEFINE_PER_CPU(enum cpu_state_vals, preferred_offline_state) = CPU_STATE_OFFLINE; @@ -93,15 +88,20 @@ static void rtas_stop_self(void) { - struct rtas_args *args = &rtas_stop_self_args; + struct rtas_args args = { + .token = cpu_to_be32(rtas_stop_self_token), + .nargs = 0, + .nret = 1, + .rets = &args.args[0], + }; local_irq_disable(); - BUG_ON(args->token == RTAS_UNKNOWN_SERVICE); + BUG_ON(rtas_stop_self_token == RTAS_UNKNOWN_SERVICE); printk("cpu %u (hwid %u) Ready to die...\n", smp_processor_id(), hard_smp_processor_id()); - enter_rtas(__pa(args)); + enter_rtas(__pa(&args)); panic("Alas, I survived.\n"); } @@ -392,10 +392,10 @@ } } - rtas_stop_self_args.token = rtas_token("stop-self"); + rtas_stop_self_token = rtas_token("stop-self"); qcss_tok = rtas_token("query-cpu-stopped-state"); - if (rtas_stop_self_args.token == RTAS_UNKNOWN_SERVICE || + if (rtas_stop_self_token == RTAS_UNKNOWN_SERVICE || qcss_tok == RTAS_UNKNOWN_SERVICE) { printk(KERN_INFO "CPU Hotplug not supported by firmware " "- disabling.\n"); --- linux-3.13.0.orig/arch/powerpc/platforms/pseries/io_event_irq.c +++ linux-3.13.0/arch/powerpc/platforms/pseries/io_event_irq.c @@ -82,9 +82,9 @@ * RTAS_TYPE_IO only exists in extended event log version 6 or later. * No need to check event log version. */ - if (unlikely(elog->type != RTAS_TYPE_IO)) { - printk_once(KERN_WARNING "io_event_irq: Unexpected event type %d", - elog->type); + if (unlikely(rtas_error_type(elog) != RTAS_TYPE_IO)) { + printk_once(KERN_WARNING"io_event_irq: Unexpected event type %d", + rtas_error_type(elog)); return NULL; } --- linux-3.13.0.orig/arch/powerpc/platforms/pseries/ras.c +++ linux-3.13.0/arch/powerpc/platforms/pseries/ras.c @@ -236,7 +236,8 @@ rtas_elog = (struct rtas_error_log *)ras_log_buf; - if ((status == 0) && (rtas_elog->severity >= RTAS_SEVERITY_ERROR_SYNC)) + if (status == 0 && + rtas_error_severity(rtas_elog) >= RTAS_SEVERITY_ERROR_SYNC) fatal = 1; else fatal = 0; @@ -300,13 +301,14 @@ /* If it isn't an extended log we can use the per cpu 64bit buffer */ h = (struct rtas_error_log *)&savep[1]; - if (!h->extended) { + if (!rtas_error_extended(h)) { memcpy(&__get_cpu_var(mce_data_buf), h, sizeof(__u64)); errhdr = (struct rtas_error_log *)&__get_cpu_var(mce_data_buf); } else { - int len; + int len, error_log_length; - len = max_t(int, 8+h->extended_log_length, RTAS_ERROR_LOG_MAX); + error_log_length = 8 + rtas_error_extended_log_length(h); + len = max_t(int, error_log_length, RTAS_ERROR_LOG_MAX); memset(global_mce_data_buf, 0, RTAS_ERROR_LOG_MAX); memcpy(global_mce_data_buf, h, len); errhdr = (struct rtas_error_log *)global_mce_data_buf; @@ -350,23 +352,24 @@ static int recover_mce(struct pt_regs *regs, struct rtas_error_log *err) { int recovered = 0; + int disposition = rtas_error_disposition(err); if (!(regs->msr & MSR_RI)) { /* If MSR_RI isn't set, we cannot recover */ recovered = 0; - } else if (err->disposition == RTAS_DISP_FULLY_RECOVERED) { + } else if (disposition == RTAS_DISP_FULLY_RECOVERED) { /* Platform corrected itself */ recovered = 1; - } else if (err->disposition == RTAS_DISP_LIMITED_RECOVERY) { + } else if (disposition == RTAS_DISP_LIMITED_RECOVERY) { /* Platform corrected itself but could be degraded */ printk(KERN_ERR "MCE: limited recovery, system may " "be degraded\n"); recovered = 1; } else if (user_mode(regs) && !is_global_init(current) && - err->severity == RTAS_SEVERITY_ERROR_SYNC) { + rtas_error_severity(err) == RTAS_SEVERITY_ERROR_SYNC) { /* * If we received a synchronous error when in userspace --- linux-3.13.0.orig/arch/powerpc/xmon/xmon.c +++ linux-3.13.0/arch/powerpc/xmon/xmon.c @@ -171,7 +171,11 @@ #define REG "%.8lx" #endif +#ifdef __LITTLE_ENDIAN__ +#define GETWORD(v) (((v)[3] << 24) + ((v)[2] << 16) + ((v)[1] << 8) + (v)[0]) +#else #define GETWORD(v) (((v)[0] << 24) + ((v)[1] << 16) + ((v)[2] << 8) + (v)[3]) +#endif #define isxdigit(c) (('0' <= (c) && (c) <= '9') \ || ('a' <= (c) && (c) <= 'f') \ @@ -2051,6 +2055,10 @@ DUMP(p, stab_addr, "lx"); #endif DUMP(p, emergency_sp, "p"); +#ifdef CONFIG_PPC_BOOK3S_64 + DUMP(p, mc_emergency_sp, "p"); + DUMP(p, in_mce, "x"); +#endif DUMP(p, data_offset, "lx"); DUMP(p, hw_cpu_id, "x"); DUMP(p, cpu_start, "x"); --- linux-3.13.0.orig/arch/s390/Kconfig +++ linux-3.13.0/arch/s390/Kconfig @@ -117,6 +117,7 @@ select HAVE_FUNCTION_GRAPH_TRACER select HAVE_FUNCTION_TRACER select HAVE_FUNCTION_TRACE_MCOUNT_TEST + select HAVE_FUTEX_CMPXCHG if FUTEX select HAVE_KERNEL_BZIP2 select HAVE_KERNEL_GZIP select HAVE_KERNEL_LZ4 --- linux-3.13.0.orig/arch/s390/crypto/aes_s390.c +++ linux-3.13.0/arch/s390/crypto/aes_s390.c @@ -25,6 +25,7 @@ #include #include #include +#include #include "crypt_s390.h" #define AES_KEYLEN_128 1 @@ -32,6 +33,7 @@ #define AES_KEYLEN_256 4 static u8 *ctrblk; +static DEFINE_SPINLOCK(ctrblk_lock); static char keylen_flag; struct s390_aes_ctx { @@ -758,43 +760,67 @@ return aes_set_key(tfm, in_key, key_len); } +static unsigned int __ctrblk_init(u8 *ctrptr, unsigned int nbytes) +{ + unsigned int i, n; + + /* only use complete blocks, max. PAGE_SIZE */ + n = (nbytes > PAGE_SIZE) ? PAGE_SIZE : nbytes & ~(AES_BLOCK_SIZE - 1); + for (i = AES_BLOCK_SIZE; i < n; i += AES_BLOCK_SIZE) { + memcpy(ctrptr + i, ctrptr + i - AES_BLOCK_SIZE, + AES_BLOCK_SIZE); + crypto_inc(ctrptr + i, AES_BLOCK_SIZE); + } + return n; +} + static int ctr_aes_crypt(struct blkcipher_desc *desc, long func, struct s390_aes_ctx *sctx, struct blkcipher_walk *walk) { int ret = blkcipher_walk_virt_block(desc, walk, AES_BLOCK_SIZE); - unsigned int i, n, nbytes; - u8 buf[AES_BLOCK_SIZE]; - u8 *out, *in; + unsigned int n, nbytes; + u8 buf[AES_BLOCK_SIZE], ctrbuf[AES_BLOCK_SIZE]; + u8 *out, *in, *ctrptr = ctrbuf; if (!walk->nbytes) return ret; - memcpy(ctrblk, walk->iv, AES_BLOCK_SIZE); + if (spin_trylock(&ctrblk_lock)) + ctrptr = ctrblk; + + memcpy(ctrptr, walk->iv, AES_BLOCK_SIZE); while ((nbytes = walk->nbytes) >= AES_BLOCK_SIZE) { out = walk->dst.virt.addr; in = walk->src.virt.addr; while (nbytes >= AES_BLOCK_SIZE) { - /* only use complete blocks, max. PAGE_SIZE */ - n = (nbytes > PAGE_SIZE) ? PAGE_SIZE : - nbytes & ~(AES_BLOCK_SIZE - 1); - for (i = AES_BLOCK_SIZE; i < n; i += AES_BLOCK_SIZE) { - memcpy(ctrblk + i, ctrblk + i - AES_BLOCK_SIZE, - AES_BLOCK_SIZE); - crypto_inc(ctrblk + i, AES_BLOCK_SIZE); - } - ret = crypt_s390_kmctr(func, sctx->key, out, in, n, ctrblk); - if (ret < 0 || ret != n) + if (ctrptr == ctrblk) + n = __ctrblk_init(ctrptr, nbytes); + else + n = AES_BLOCK_SIZE; + ret = crypt_s390_kmctr(func, sctx->key, out, in, + n, ctrptr); + if (ret < 0 || ret != n) { + if (ctrptr == ctrblk) + spin_unlock(&ctrblk_lock); return -EIO; + } if (n > AES_BLOCK_SIZE) - memcpy(ctrblk, ctrblk + n - AES_BLOCK_SIZE, + memcpy(ctrptr, ctrptr + n - AES_BLOCK_SIZE, AES_BLOCK_SIZE); - crypto_inc(ctrblk, AES_BLOCK_SIZE); + crypto_inc(ctrptr, AES_BLOCK_SIZE); out += n; in += n; nbytes -= n; } ret = blkcipher_walk_done(desc, walk, nbytes); } + if (ctrptr == ctrblk) { + if (nbytes) + memcpy(ctrbuf, ctrptr, AES_BLOCK_SIZE); + else + memcpy(walk->iv, ctrptr, AES_BLOCK_SIZE); + spin_unlock(&ctrblk_lock); + } /* * final block may be < AES_BLOCK_SIZE, copy only nbytes */ @@ -802,14 +828,15 @@ out = walk->dst.virt.addr; in = walk->src.virt.addr; ret = crypt_s390_kmctr(func, sctx->key, buf, in, - AES_BLOCK_SIZE, ctrblk); + AES_BLOCK_SIZE, ctrbuf); if (ret < 0 || ret != AES_BLOCK_SIZE) return -EIO; memcpy(out, buf, nbytes); - crypto_inc(ctrblk, AES_BLOCK_SIZE); + crypto_inc(ctrbuf, AES_BLOCK_SIZE); ret = blkcipher_walk_done(desc, walk, 0); + memcpy(walk->iv, ctrbuf, AES_BLOCK_SIZE); } - memcpy(walk->iv, ctrblk, AES_BLOCK_SIZE); + return ret; } --- linux-3.13.0.orig/arch/s390/crypto/des_s390.c +++ linux-3.13.0/arch/s390/crypto/des_s390.c @@ -25,6 +25,7 @@ #define DES3_KEY_SIZE (3 * DES_KEY_SIZE) static u8 *ctrblk; +static DEFINE_SPINLOCK(ctrblk_lock); struct s390_des_ctx { u8 iv[DES_BLOCK_SIZE]; @@ -105,29 +106,35 @@ } static int cbc_desall_crypt(struct blkcipher_desc *desc, long func, - u8 *iv, struct blkcipher_walk *walk) + struct blkcipher_walk *walk) { + struct s390_des_ctx *ctx = crypto_blkcipher_ctx(desc->tfm); int ret = blkcipher_walk_virt(desc, walk); unsigned int nbytes = walk->nbytes; + struct { + u8 iv[DES_BLOCK_SIZE]; + u8 key[DES3_KEY_SIZE]; + } param; if (!nbytes) goto out; - memcpy(iv, walk->iv, DES_BLOCK_SIZE); + memcpy(param.iv, walk->iv, DES_BLOCK_SIZE); + memcpy(param.key, ctx->key, DES3_KEY_SIZE); do { /* only use complete blocks */ unsigned int n = nbytes & ~(DES_BLOCK_SIZE - 1); u8 *out = walk->dst.virt.addr; u8 *in = walk->src.virt.addr; - ret = crypt_s390_kmc(func, iv, out, in, n); + ret = crypt_s390_kmc(func, ¶m, out, in, n); if (ret < 0 || ret != n) return -EIO; nbytes &= DES_BLOCK_SIZE - 1; ret = blkcipher_walk_done(desc, walk, nbytes); } while ((nbytes = walk->nbytes)); - memcpy(walk->iv, iv, DES_BLOCK_SIZE); + memcpy(walk->iv, param.iv, DES_BLOCK_SIZE); out: return ret; @@ -179,22 +186,20 @@ struct scatterlist *dst, struct scatterlist *src, unsigned int nbytes) { - struct s390_des_ctx *ctx = crypto_blkcipher_ctx(desc->tfm); struct blkcipher_walk walk; blkcipher_walk_init(&walk, dst, src, nbytes); - return cbc_desall_crypt(desc, KMC_DEA_ENCRYPT, ctx->iv, &walk); + return cbc_desall_crypt(desc, KMC_DEA_ENCRYPT, &walk); } static int cbc_des_decrypt(struct blkcipher_desc *desc, struct scatterlist *dst, struct scatterlist *src, unsigned int nbytes) { - struct s390_des_ctx *ctx = crypto_blkcipher_ctx(desc->tfm); struct blkcipher_walk walk; blkcipher_walk_init(&walk, dst, src, nbytes); - return cbc_desall_crypt(desc, KMC_DEA_DECRYPT, ctx->iv, &walk); + return cbc_desall_crypt(desc, KMC_DEA_DECRYPT, &walk); } static struct crypto_alg cbc_des_alg = { @@ -327,22 +332,20 @@ struct scatterlist *dst, struct scatterlist *src, unsigned int nbytes) { - struct s390_des_ctx *ctx = crypto_blkcipher_ctx(desc->tfm); struct blkcipher_walk walk; blkcipher_walk_init(&walk, dst, src, nbytes); - return cbc_desall_crypt(desc, KMC_TDEA_192_ENCRYPT, ctx->iv, &walk); + return cbc_desall_crypt(desc, KMC_TDEA_192_ENCRYPT, &walk); } static int cbc_des3_decrypt(struct blkcipher_desc *desc, struct scatterlist *dst, struct scatterlist *src, unsigned int nbytes) { - struct s390_des_ctx *ctx = crypto_blkcipher_ctx(desc->tfm); struct blkcipher_walk walk; blkcipher_walk_init(&walk, dst, src, nbytes); - return cbc_desall_crypt(desc, KMC_TDEA_192_DECRYPT, ctx->iv, &walk); + return cbc_desall_crypt(desc, KMC_TDEA_192_DECRYPT, &walk); } static struct crypto_alg cbc_des3_alg = { @@ -366,54 +369,80 @@ } }; +static unsigned int __ctrblk_init(u8 *ctrptr, unsigned int nbytes) +{ + unsigned int i, n; + + /* align to block size, max. PAGE_SIZE */ + n = (nbytes > PAGE_SIZE) ? PAGE_SIZE : nbytes & ~(DES_BLOCK_SIZE - 1); + for (i = DES_BLOCK_SIZE; i < n; i += DES_BLOCK_SIZE) { + memcpy(ctrptr + i, ctrptr + i - DES_BLOCK_SIZE, DES_BLOCK_SIZE); + crypto_inc(ctrptr + i, DES_BLOCK_SIZE); + } + return n; +} + static int ctr_desall_crypt(struct blkcipher_desc *desc, long func, - struct s390_des_ctx *ctx, struct blkcipher_walk *walk) + struct s390_des_ctx *ctx, + struct blkcipher_walk *walk) { int ret = blkcipher_walk_virt_block(desc, walk, DES_BLOCK_SIZE); - unsigned int i, n, nbytes; - u8 buf[DES_BLOCK_SIZE]; - u8 *out, *in; + unsigned int n, nbytes; + u8 buf[DES_BLOCK_SIZE], ctrbuf[DES_BLOCK_SIZE]; + u8 *out, *in, *ctrptr = ctrbuf; + + if (!walk->nbytes) + return ret; - memcpy(ctrblk, walk->iv, DES_BLOCK_SIZE); + if (spin_trylock(&ctrblk_lock)) + ctrptr = ctrblk; + + memcpy(ctrptr, walk->iv, DES_BLOCK_SIZE); while ((nbytes = walk->nbytes) >= DES_BLOCK_SIZE) { out = walk->dst.virt.addr; in = walk->src.virt.addr; while (nbytes >= DES_BLOCK_SIZE) { - /* align to block size, max. PAGE_SIZE */ - n = (nbytes > PAGE_SIZE) ? PAGE_SIZE : - nbytes & ~(DES_BLOCK_SIZE - 1); - for (i = DES_BLOCK_SIZE; i < n; i += DES_BLOCK_SIZE) { - memcpy(ctrblk + i, ctrblk + i - DES_BLOCK_SIZE, - DES_BLOCK_SIZE); - crypto_inc(ctrblk + i, DES_BLOCK_SIZE); - } - ret = crypt_s390_kmctr(func, ctx->key, out, in, n, ctrblk); - if (ret < 0 || ret != n) + if (ctrptr == ctrblk) + n = __ctrblk_init(ctrptr, nbytes); + else + n = DES_BLOCK_SIZE; + ret = crypt_s390_kmctr(func, ctx->key, out, in, + n, ctrptr); + if (ret < 0 || ret != n) { + if (ctrptr == ctrblk) + spin_unlock(&ctrblk_lock); return -EIO; + } if (n > DES_BLOCK_SIZE) - memcpy(ctrblk, ctrblk + n - DES_BLOCK_SIZE, + memcpy(ctrptr, ctrptr + n - DES_BLOCK_SIZE, DES_BLOCK_SIZE); - crypto_inc(ctrblk, DES_BLOCK_SIZE); + crypto_inc(ctrptr, DES_BLOCK_SIZE); out += n; in += n; nbytes -= n; } ret = blkcipher_walk_done(desc, walk, nbytes); } - + if (ctrptr == ctrblk) { + if (nbytes) + memcpy(ctrbuf, ctrptr, DES_BLOCK_SIZE); + else + memcpy(walk->iv, ctrptr, DES_BLOCK_SIZE); + spin_unlock(&ctrblk_lock); + } /* final block may be < DES_BLOCK_SIZE, copy only nbytes */ if (nbytes) { out = walk->dst.virt.addr; in = walk->src.virt.addr; ret = crypt_s390_kmctr(func, ctx->key, buf, in, - DES_BLOCK_SIZE, ctrblk); + DES_BLOCK_SIZE, ctrbuf); if (ret < 0 || ret != DES_BLOCK_SIZE) return -EIO; memcpy(out, buf, nbytes); - crypto_inc(ctrblk, DES_BLOCK_SIZE); + crypto_inc(ctrbuf, DES_BLOCK_SIZE); ret = blkcipher_walk_done(desc, walk, 0); + memcpy(walk->iv, ctrbuf, DES_BLOCK_SIZE); } - memcpy(walk->iv, ctrblk, DES_BLOCK_SIZE); return ret; } --- linux-3.13.0.orig/arch/s390/include/asm/atomic.h +++ linux-3.13.0/arch/s390/include/asm/atomic.h @@ -15,23 +15,29 @@ #include #include +#include #include #define ATOMIC_INIT(i) { (i) } +#define __ATOMIC_NO_BARRIER "\n" + #ifdef CONFIG_HAVE_MARCH_Z196_FEATURES #define __ATOMIC_OR "lao" #define __ATOMIC_AND "lan" #define __ATOMIC_ADD "laa" +#define __ATOMIC_BARRIER "bcr 14,0\n" -#define __ATOMIC_LOOP(ptr, op_val, op_string) \ +#define __ATOMIC_LOOP(ptr, op_val, op_string, __barrier) \ ({ \ int old_val; \ \ typecheck(atomic_t *, ptr); \ asm volatile( \ + __barrier \ op_string " %0,%2,%1\n" \ + __barrier \ : "=d" (old_val), "+Q" ((ptr)->counter) \ : "d" (op_val) \ : "cc", "memory"); \ @@ -43,8 +49,9 @@ #define __ATOMIC_OR "or" #define __ATOMIC_AND "nr" #define __ATOMIC_ADD "ar" +#define __ATOMIC_BARRIER "\n" -#define __ATOMIC_LOOP(ptr, op_val, op_string) \ +#define __ATOMIC_LOOP(ptr, op_val, op_string, __barrier) \ ({ \ int old_val, new_val; \ \ @@ -82,7 +89,7 @@ static inline int atomic_add_return(int i, atomic_t *v) { - return __ATOMIC_LOOP(v, i, __ATOMIC_ADD) + i; + return __ATOMIC_LOOP(v, i, __ATOMIC_ADD, __ATOMIC_BARRIER) + i; } static inline void atomic_add(int i, atomic_t *v) @@ -94,12 +101,10 @@ : "+Q" (v->counter) : "i" (i) : "cc", "memory"); - } else { - atomic_add_return(i, v); + return; } -#else - atomic_add_return(i, v); #endif + __ATOMIC_LOOP(v, i, __ATOMIC_ADD, __ATOMIC_NO_BARRIER); } #define atomic_add_negative(_i, _v) (atomic_add_return(_i, _v) < 0) @@ -115,12 +120,12 @@ static inline void atomic_clear_mask(unsigned int mask, atomic_t *v) { - __ATOMIC_LOOP(v, ~mask, __ATOMIC_AND); + __ATOMIC_LOOP(v, ~mask, __ATOMIC_AND, __ATOMIC_NO_BARRIER); } static inline void atomic_set_mask(unsigned int mask, atomic_t *v) { - __ATOMIC_LOOP(v, mask, __ATOMIC_OR); + __ATOMIC_LOOP(v, mask, __ATOMIC_OR, __ATOMIC_NO_BARRIER); } #define atomic_xchg(v, new) (xchg(&((v)->counter), new)) @@ -157,19 +162,24 @@ #ifdef CONFIG_64BIT +#define __ATOMIC64_NO_BARRIER "\n" + #ifdef CONFIG_HAVE_MARCH_Z196_FEATURES #define __ATOMIC64_OR "laog" #define __ATOMIC64_AND "lang" #define __ATOMIC64_ADD "laag" +#define __ATOMIC64_BARRIER "bcr 14,0\n" -#define __ATOMIC64_LOOP(ptr, op_val, op_string) \ +#define __ATOMIC64_LOOP(ptr, op_val, op_string, __barrier) \ ({ \ long long old_val; \ \ typecheck(atomic64_t *, ptr); \ asm volatile( \ + __barrier \ op_string " %0,%2,%1\n" \ + __barrier \ : "=d" (old_val), "+Q" ((ptr)->counter) \ : "d" (op_val) \ : "cc", "memory"); \ @@ -181,8 +191,9 @@ #define __ATOMIC64_OR "ogr" #define __ATOMIC64_AND "ngr" #define __ATOMIC64_ADD "agr" +#define __ATOMIC64_BARRIER "\n" -#define __ATOMIC64_LOOP(ptr, op_val, op_string) \ +#define __ATOMIC64_LOOP(ptr, op_val, op_string, __barrier) \ ({ \ long long old_val, new_val; \ \ @@ -220,17 +231,32 @@ static inline long long atomic64_add_return(long long i, atomic64_t *v) { - return __ATOMIC64_LOOP(v, i, __ATOMIC64_ADD) + i; + return __ATOMIC64_LOOP(v, i, __ATOMIC64_ADD, __ATOMIC64_BARRIER) + i; +} + +static inline void atomic64_add(long long i, atomic64_t *v) +{ +#ifdef CONFIG_HAVE_MARCH_Z196_FEATURES + if (__builtin_constant_p(i) && (i > -129) && (i < 128)) { + asm volatile( + "agsi %0,%1\n" + : "+Q" (v->counter) + : "i" (i) + : "cc", "memory"); + return; + } +#endif + __ATOMIC64_LOOP(v, i, __ATOMIC64_ADD, __ATOMIC64_NO_BARRIER); } static inline void atomic64_clear_mask(unsigned long mask, atomic64_t *v) { - __ATOMIC64_LOOP(v, ~mask, __ATOMIC64_AND); + __ATOMIC64_LOOP(v, ~mask, __ATOMIC64_AND, __ATOMIC64_NO_BARRIER); } static inline void atomic64_set_mask(unsigned long mask, atomic64_t *v) { - __ATOMIC64_LOOP(v, mask, __ATOMIC64_OR); + __ATOMIC64_LOOP(v, mask, __ATOMIC64_OR, __ATOMIC64_NO_BARRIER); } #define atomic64_xchg(v, new) (xchg(&((v)->counter), new)) @@ -334,25 +360,13 @@ } while (atomic64_cmpxchg(v, old, new) != old); } -#endif /* CONFIG_64BIT */ - static inline void atomic64_add(long long i, atomic64_t *v) { -#ifdef CONFIG_HAVE_MARCH_Z196_FEATURES - if (__builtin_constant_p(i) && (i > -129) && (i < 128)) { - asm volatile( - "agsi %0,%1\n" - : "+Q" (v->counter) - : "i" (i) - : "cc", "memory"); - } else { - atomic64_add_return(i, v); - } -#else atomic64_add_return(i, v); -#endif } +#endif /* CONFIG_64BIT */ + static inline int atomic64_add_unless(atomic64_t *v, long long i, long long u) { long long c, old; --- linux-3.13.0.orig/arch/s390/include/asm/bitops.h +++ linux-3.13.0/arch/s390/include/asm/bitops.h @@ -47,14 +47,18 @@ #include #include +#include + +#define __BITOPS_NO_BARRIER "\n" #ifndef CONFIG_64BIT #define __BITOPS_OR "or" #define __BITOPS_AND "nr" #define __BITOPS_XOR "xr" +#define __BITOPS_BARRIER "\n" -#define __BITOPS_LOOP(__addr, __val, __op_string) \ +#define __BITOPS_LOOP(__addr, __val, __op_string, __barrier) \ ({ \ unsigned long __old, __new; \ \ @@ -67,7 +71,7 @@ " jl 0b" \ : "=&d" (__old), "=&d" (__new), "+Q" (*(__addr))\ : "d" (__val) \ - : "cc"); \ + : "cc", "memory"); \ __old; \ }) @@ -78,17 +82,20 @@ #define __BITOPS_OR "laog" #define __BITOPS_AND "lang" #define __BITOPS_XOR "laxg" +#define __BITOPS_BARRIER "bcr 14,0\n" -#define __BITOPS_LOOP(__addr, __val, __op_string) \ +#define __BITOPS_LOOP(__addr, __val, __op_string, __barrier) \ ({ \ unsigned long __old; \ \ typecheck(unsigned long *, (__addr)); \ asm volatile( \ + __barrier \ __op_string " %0,%2,%1\n" \ + __barrier \ : "=d" (__old), "+Q" (*(__addr)) \ : "d" (__val) \ - : "cc"); \ + : "cc", "memory"); \ __old; \ }) @@ -97,8 +104,9 @@ #define __BITOPS_OR "ogr" #define __BITOPS_AND "ngr" #define __BITOPS_XOR "xgr" +#define __BITOPS_BARRIER "\n" -#define __BITOPS_LOOP(__addr, __val, __op_string) \ +#define __BITOPS_LOOP(__addr, __val, __op_string, __barrier) \ ({ \ unsigned long __old, __new; \ \ @@ -111,7 +119,7 @@ " jl 0b" \ : "=&d" (__old), "=&d" (__new), "+Q" (*(__addr))\ : "d" (__val) \ - : "cc"); \ + : "cc", "memory"); \ __old; \ }) @@ -149,12 +157,12 @@ "oi %0,%b1\n" : "+Q" (*caddr) : "i" (1 << (nr & 7)) - : "cc"); + : "cc", "memory"); return; } #endif mask = 1UL << (nr & (BITS_PER_LONG - 1)); - __BITOPS_LOOP(addr, mask, __BITOPS_OR); + __BITOPS_LOOP(addr, mask, __BITOPS_OR, __BITOPS_NO_BARRIER); } static inline void clear_bit(unsigned long nr, volatile unsigned long *ptr) @@ -170,12 +178,12 @@ "ni %0,%b1\n" : "+Q" (*caddr) : "i" (~(1 << (nr & 7))) - : "cc"); + : "cc", "memory"); return; } #endif mask = ~(1UL << (nr & (BITS_PER_LONG - 1))); - __BITOPS_LOOP(addr, mask, __BITOPS_AND); + __BITOPS_LOOP(addr, mask, __BITOPS_AND, __BITOPS_NO_BARRIER); } static inline void change_bit(unsigned long nr, volatile unsigned long *ptr) @@ -191,12 +199,12 @@ "xi %0,%b1\n" : "+Q" (*caddr) : "i" (1 << (nr & 7)) - : "cc"); + : "cc", "memory"); return; } #endif mask = 1UL << (nr & (BITS_PER_LONG - 1)); - __BITOPS_LOOP(addr, mask, __BITOPS_XOR); + __BITOPS_LOOP(addr, mask, __BITOPS_XOR, __BITOPS_NO_BARRIER); } static inline int @@ -206,8 +214,7 @@ unsigned long old, mask; mask = 1UL << (nr & (BITS_PER_LONG - 1)); - old = __BITOPS_LOOP(addr, mask, __BITOPS_OR); - barrier(); + old = __BITOPS_LOOP(addr, mask, __BITOPS_OR, __BITOPS_BARRIER); return (old & mask) != 0; } @@ -218,8 +225,7 @@ unsigned long old, mask; mask = ~(1UL << (nr & (BITS_PER_LONG - 1))); - old = __BITOPS_LOOP(addr, mask, __BITOPS_AND); - barrier(); + old = __BITOPS_LOOP(addr, mask, __BITOPS_AND, __BITOPS_BARRIER); return (old & ~mask) != 0; } @@ -230,8 +236,7 @@ unsigned long old, mask; mask = 1UL << (nr & (BITS_PER_LONG - 1)); - old = __BITOPS_LOOP(addr, mask, __BITOPS_XOR); - barrier(); + old = __BITOPS_LOOP(addr, mask, __BITOPS_XOR, __BITOPS_BARRIER); return (old & mask) != 0; } --- linux-3.13.0.orig/arch/s390/include/asm/ccwdev.h +++ linux-3.13.0/arch/s390/include/asm/ccwdev.h @@ -219,7 +219,7 @@ #define to_ccwdev(n) container_of(n, struct ccw_device, dev) #define to_ccwdrv(n) container_of(n, struct ccw_driver, driver) -extern struct ccw_device *ccw_device_probe_console(void); +extern struct ccw_device *ccw_device_probe_console(struct ccw_driver *); extern void ccw_device_wait_idle(struct ccw_device *); extern int ccw_device_force_console(struct ccw_device *); --- linux-3.13.0.orig/arch/s390/include/asm/compat.h +++ linux-3.13.0/arch/s390/include/asm/compat.h @@ -38,7 +38,8 @@ #define PSW32_USER_BITS (PSW32_MASK_DAT | PSW32_MASK_IO | PSW32_MASK_EXT | \ PSW32_DEFAULT_KEY | PSW32_MASK_BASE | \ - PSW32_MASK_MCHECK | PSW32_MASK_PSTATE | PSW32_ASC_HOME) + PSW32_MASK_MCHECK | PSW32_MASK_PSTATE | \ + PSW32_ASC_PRIMARY) #define COMPAT_USER_HZ 100 #define COMPAT_UTS_MACHINE "s390\0\0\0\0" --- linux-3.13.0.orig/arch/s390/include/uapi/asm/statfs.h +++ linux-3.13.0/arch/s390/include/uapi/asm/statfs.h @@ -35,11 +35,11 @@ struct statfs64 { unsigned int f_type; unsigned int f_bsize; - unsigned long f_blocks; - unsigned long f_bfree; - unsigned long f_bavail; - unsigned long f_files; - unsigned long f_ffree; + unsigned long long f_blocks; + unsigned long long f_bfree; + unsigned long long f_bavail; + unsigned long long f_files; + unsigned long long f_ffree; __kernel_fsid_t f_fsid; unsigned int f_namelen; unsigned int f_frsize; --- linux-3.13.0.orig/arch/s390/kernel/head64.S +++ linux-3.13.0/arch/s390/kernel/head64.S @@ -59,7 +59,7 @@ .quad 0 # cr12: tracing off .quad 0 # cr13: home space segment table .quad 0xc0000000 # cr14: machine check handling off - .quad 0 # cr15: linkage stack operations + .quad .Llinkage_stack # cr15: linkage stack operations .Lpcmsk:.quad 0x0000000180000000 .L4malign:.quad 0xffffffffffc00000 .Lscan2g:.quad 0x80000000 + 0x20000 - 8 # 2GB + 128K - 8 @@ -67,12 +67,15 @@ .Lparmaddr: .quad PARMAREA .align 64 -.Lduct: .long 0,0,0,0,.Lduald,0,0,0 +.Lduct: .long 0,.Laste,.Laste,0,.Lduald,0,0,0 .long 0,0,0,0,0,0,0,0 +.Laste: .quad 0,0xffffffffffffffff,0,0,0,0,0,0 .align 128 .Lduald:.rept 8 .long 0x80000000,0,0,0 # invalid access-list entries .endr +.Llinkage_stack: + .long 0,0,0x89000000,0,0,0,0x8a000000,0 ENTRY(_ehead) --- linux-3.13.0.orig/arch/s390/kvm/diag.c +++ linux-3.13.0/arch/s390/kvm/diag.c @@ -121,7 +121,7 @@ * - gpr 4 contains the index on the bus (optionally) */ ret = kvm_io_bus_write_cookie(vcpu->kvm, KVM_VIRTIO_CCW_NOTIFY_BUS, - vcpu->run->s.regs.gprs[2], + vcpu->run->s.regs.gprs[2] & 0xffffffff, 8, &vcpu->run->s.regs.gprs[3], vcpu->run->s.regs.gprs[4]); @@ -137,7 +137,7 @@ int kvm_s390_handle_diag(struct kvm_vcpu *vcpu) { - int code = (vcpu->arch.sie_block->ipb & 0xfff0000) >> 16; + int code = kvm_s390_get_base_disp_rs(vcpu) & 0xffff; if (vcpu->arch.sie_block->gpsw.mask & PSW_MASK_PSTATE) return kvm_s390_inject_program_int(vcpu, PGM_PRIVILEGED_OP); --- linux-3.13.0.orig/arch/s390/kvm/kvm-s390.c +++ linux-3.13.0/arch/s390/kvm/kvm-s390.c @@ -746,7 +746,8 @@ if (rc == 0) { if (kvm_is_ucontrol(vcpu->kvm)) - rc = -EOPNOTSUPP; + /* Don't exit for host interrupts. */ + rc = vcpu->arch.sie_block->icptcode ? -EOPNOTSUPP : 0; else rc = kvm_handle_sie_intercept(vcpu); } @@ -885,7 +886,7 @@ * KVM_S390_STORE_STATUS_NOADDR: -> 0x1200 on 64 bit * KVM_S390_STORE_STATUS_PREFIXED: -> prefix */ -int kvm_s390_vcpu_store_status(struct kvm_vcpu *vcpu, unsigned long addr) +int kvm_s390_store_status_unloaded(struct kvm_vcpu *vcpu, unsigned long addr) { unsigned char archmode = 1; int prefix; @@ -903,15 +904,6 @@ } else prefix = 0; - /* - * The guest FPRS and ACRS are in the host FPRS/ACRS due to the lazy - * copying in vcpu load/put. Lets update our copies before we save - * it into the save area - */ - save_fp_ctl(&vcpu->arch.guest_fpregs.fpc); - save_fp_regs(vcpu->arch.guest_fpregs.fprs); - save_access_regs(vcpu->run->s.regs.acrs); - if (__guestcopy(vcpu, addr + offsetof(struct save_area, fp_regs), vcpu->arch.guest_fpregs.fprs, 128, prefix)) return -EFAULT; @@ -956,6 +948,20 @@ return 0; } +int kvm_s390_vcpu_store_status(struct kvm_vcpu *vcpu, unsigned long addr) +{ + /* + * The guest FPRS and ACRS are in the host FPRS/ACRS due to the lazy + * copying in vcpu load/put. Lets update our copies before we save + * it into the save area + */ + save_fp_ctl(&vcpu->arch.guest_fpregs.fpc); + save_fp_regs(vcpu->arch.guest_fpregs.fprs); + save_access_regs(vcpu->run->s.regs.acrs); + + return kvm_s390_store_status_unloaded(vcpu, addr); +} + static int kvm_vcpu_ioctl_enable_cap(struct kvm_vcpu *vcpu, struct kvm_enable_cap *cap) { --- linux-3.13.0.orig/arch/s390/kvm/kvm-s390.h +++ linux-3.13.0/arch/s390/kvm/kvm-s390.h @@ -150,8 +150,8 @@ int kvm_s390_handle_sigp(struct kvm_vcpu *vcpu); /* implemented in kvm-s390.c */ -int kvm_s390_vcpu_store_status(struct kvm_vcpu *vcpu, - unsigned long addr); +int kvm_s390_store_status_unloaded(struct kvm_vcpu *vcpu, unsigned long addr); +int kvm_s390_vcpu_store_status(struct kvm_vcpu *vcpu, unsigned long addr); void s390_vcpu_block(struct kvm_vcpu *vcpu); void s390_vcpu_unblock(struct kvm_vcpu *vcpu); void exit_sie(struct kvm_vcpu *vcpu); --- linux-3.13.0.orig/arch/s390/kvm/sigp.c +++ linux-3.13.0/arch/s390/kvm/sigp.c @@ -130,6 +130,7 @@ static int __inject_sigp_stop(struct kvm_s390_local_interrupt *li, int action) { struct kvm_s390_interrupt_info *inti; + int rc = SIGP_CC_ORDER_CODE_ACCEPTED; inti = kzalloc(sizeof(*inti), GFP_ATOMIC); if (!inti) @@ -139,6 +140,8 @@ spin_lock_bh(&li->lock); if ((atomic_read(li->cpuflags) & CPUSTAT_STOPPED)) { kfree(inti); + if ((action & ACTION_STORE_ON_STOP) != 0) + rc = -ESHUTDOWN; goto out; } list_add_tail(&inti->list, &li->list); @@ -150,7 +153,7 @@ out: spin_unlock_bh(&li->lock); - return SIGP_CC_ORDER_CODE_ACCEPTED; + return rc; } static int __sigp_stop(struct kvm_vcpu *vcpu, u16 cpu_addr, int action) @@ -174,6 +177,16 @@ unlock: spin_unlock(&fi->lock); VCPU_EVENT(vcpu, 4, "sent sigp stop to cpu %x", cpu_addr); + + if ((action & ACTION_STORE_ON_STOP) != 0 && rc == -ESHUTDOWN) { + /* If the CPU has already been stopped, we still have + * to save the status when doing stop-and-store. This + * has to be done after unlocking all spinlocks. */ + struct kvm_vcpu *dst_vcpu = kvm_get_vcpu(vcpu->kvm, cpu_addr); + rc = kvm_s390_store_status_unloaded(dst_vcpu, + KVM_S390_STORE_STATUS_NOADDR); + } + return rc; } --- linux-3.13.0.orig/arch/s390/mm/page-states.c +++ linux-3.13.0/arch/s390/mm/page-states.c @@ -12,6 +12,8 @@ #include #include #include +#include +#include #define ESSA_SET_STABLE 1 #define ESSA_SET_UNUSED 2 @@ -41,6 +43,14 @@ if (!cmma_flag) return; + /* + * Disable CMM for dump, otherwise the tprot based memory + * detection can fail because of unstable pages. + */ + if (OLDMEM_BASE || ipl_info.type == IPL_TYPE_FCP_DUMP) { + cmma_flag = 0; + return; + } asm volatile( " .insn rrf,0xb9ab0000,%1,%1,0,0\n" "0: la %0,0\n" --- linux-3.13.0.orig/arch/sh/kernel/dumpstack.c +++ linux-3.13.0/arch/sh/kernel/dumpstack.c @@ -115,7 +115,7 @@ */ static void print_trace_address(void *data, unsigned long addr, int reliable) { - printk(data); + printk("%s", (char *)data); printk_address(addr, reliable); } --- linux-3.13.0.orig/arch/sh/kernel/kgdb.c +++ linux-3.13.0/arch/sh/kernel/kgdb.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include --- linux-3.13.0.orig/arch/sparc/Kconfig +++ linux-3.13.0/arch/sparc/Kconfig @@ -26,7 +26,7 @@ select RTC_DRV_M48T59 select HAVE_DMA_ATTRS select HAVE_DMA_API_DEBUG - select HAVE_ARCH_JUMP_LABEL + select HAVE_ARCH_JUMP_LABEL if SPARC64 select GENERIC_IRQ_SHOW select ARCH_WANT_IPC_PARSE_VERSION select GENERIC_PCI_IOMAP --- linux-3.13.0.orig/arch/sparc/kernel/process_64.c +++ linux-3.13.0/arch/sparc/kernel/process_64.c @@ -58,9 +58,12 @@ { if (tlb_type != hypervisor) { touch_nmi_watchdog(); + local_irq_enable(); } else { unsigned long pstate; + local_irq_enable(); + /* The sun4v sleeping code requires that we have PSTATE.IE cleared over * the cpu sleep hypervisor call. */ @@ -82,7 +85,6 @@ : "=&r" (pstate) : "i" (PSTATE_IE)); } - local_irq_enable(); } #ifdef CONFIG_HOTPLUG_CPU --- linux-3.13.0.orig/arch/sparc/kernel/syscalls.S +++ linux-3.13.0/arch/sparc/kernel/syscalls.S @@ -189,7 +189,8 @@ mov %i0, %l5 ! IEU1 5: call %l7 ! CTI Group brk forced srl %i5, 0, %o5 ! IEU1 - ba,a,pt %xcc, 3f + ba,pt %xcc, 3f + sra %o0, 0, %o0 /* Linux native system calls enter here... */ .align 32 @@ -217,7 +218,6 @@ 3: stx %o0, [%sp + PTREGS_OFF + PT_V9_I0] ret_sys_call: ldx [%sp + PTREGS_OFF + PT_V9_TSTATE], %g3 - sra %o0, 0, %o0 mov %ulo(TSTATE_XCARRY | TSTATE_ICARRY), %g2 sllx %g2, 32, %g2 --- linux-3.13.0.orig/arch/tile/include/asm/compat.h +++ linux-3.13.0/arch/tile/include/asm/compat.h @@ -281,7 +281,6 @@ u32 dummy, u32 low, u32 high); long compat_sys_pwrite64(unsigned int fd, char __user *ubuf, size_t count, u32 dummy, u32 low, u32 high); -long compat_sys_lookup_dcookie(u32 low, u32 high, char __user *buf, size_t len); long compat_sys_sync_file_range2(int fd, unsigned int flags, u32 offset_lo, u32 offset_hi, u32 nbytes_lo, u32 nbytes_hi); --- linux-3.13.0.orig/arch/x86/Kconfig +++ linux-3.13.0/arch/x86/Kconfig @@ -2397,6 +2397,8 @@ source "drivers/Kconfig" +source "ubuntu/Kconfig" + source "drivers/firmware/Kconfig" source "fs/Kconfig" --- linux-3.13.0.orig/arch/x86/boot/cpucheck.c +++ linux-3.13.0/arch/x86/boot/cpucheck.c @@ -69,6 +69,13 @@ cpu_vendor[2] == A32('M', 'x', '8', '6'); } +static int is_intel(void) +{ + return cpu_vendor[0] == A32('G', 'e', 'n', 'u') && + cpu_vendor[1] == A32('i', 'n', 'e', 'I') && + cpu_vendor[2] == A32('n', 't', 'e', 'l'); +} + static int has_fpu(void) { u16 fcw = -1, fsw = -1; @@ -239,6 +246,24 @@ asm("wrmsr" : : "a" (eax), "d" (edx), "c" (ecx)); err = check_flags(); + } else if (err == 0x01 && + !(err_flags[0] & ~(1 << X86_FEATURE_PAE)) && + is_intel() && cpu.level == 6 && + (cpu.model == 9 || cpu.model == 13)) { + /* PAE is disabled on this Pentium M but can be forced */ + if (cmdline_find_option_bool("forcepae")) { + puts("WARNING: Forcing PAE in CPU flags\n"); + set_bit(X86_FEATURE_PAE, cpu.flags); + err = check_flags(); + } + else { + puts("ERROR: PAE is disabled on this Pentium M\n" + "(PAE can potentially be enabled with " + "kernel parameter\n" + "\"forcepae\" - this is unsupported, may " + "cause unknown\n" + "problems, and will taint the kernel)\n"); + } } if (err_flags_ptr) --- linux-3.13.0.orig/arch/x86/boot/video.h +++ linux-3.13.0/arch/x86/boot/video.h @@ -80,7 +80,7 @@ u16 xmode_n; /* Size of unprobed mode range */ }; -#define __videocard struct card_info __attribute__((section(".videocards"))) +#define __videocard struct card_info __attribute__((used,section(".videocards"))) extern struct card_info video_cards[], video_cards_end[]; int mode_defined(u16 mode); /* video.c */ --- linux-3.13.0.orig/arch/x86/crypto/ghash-clmulni-intel_asm.S +++ linux-3.13.0/arch/x86/crypto/ghash-clmulni-intel_asm.S @@ -24,10 +24,6 @@ .align 16 .Lbswap_mask: .octa 0x000102030405060708090a0b0c0d0e0f -.Lpoly: - .octa 0xc2000000000000000000000000000001 -.Ltwo_one: - .octa 0x00000001000000000000000000000001 #define DATA %xmm0 #define SHASH %xmm1 @@ -134,28 +130,3 @@ .Lupdate_just_ret: ret ENDPROC(clmul_ghash_update) - -/* - * void clmul_ghash_setkey(be128 *shash, const u8 *key); - * - * Calculate hash_key << 1 mod poly - */ -ENTRY(clmul_ghash_setkey) - movaps .Lbswap_mask, BSWAP - movups (%rsi), %xmm0 - PSHUFB_XMM BSWAP %xmm0 - movaps %xmm0, %xmm1 - psllq $1, %xmm0 - psrlq $63, %xmm1 - movaps %xmm1, %xmm2 - pslldq $8, %xmm1 - psrldq $8, %xmm2 - por %xmm1, %xmm0 - # reduction - pshufd $0b00100100, %xmm2, %xmm1 - pcmpeqd .Ltwo_one, %xmm1 - pand .Lpoly, %xmm1 - pxor %xmm1, %xmm0 - movups %xmm0, (%rdi) - ret -ENDPROC(clmul_ghash_setkey) --- linux-3.13.0.orig/arch/x86/crypto/ghash-clmulni-intel_glue.c +++ linux-3.13.0/arch/x86/crypto/ghash-clmulni-intel_glue.c @@ -30,8 +30,6 @@ void clmul_ghash_update(char *dst, const char *src, unsigned int srclen, const be128 *shash); -void clmul_ghash_setkey(be128 *shash, const u8 *key); - struct ghash_async_ctx { struct cryptd_ahash *cryptd_tfm; }; @@ -58,13 +56,23 @@ const u8 *key, unsigned int keylen) { struct ghash_ctx *ctx = crypto_shash_ctx(tfm); + be128 *x = (be128 *)key; + u64 a, b; if (keylen != GHASH_BLOCK_SIZE) { crypto_shash_set_flags(tfm, CRYPTO_TFM_RES_BAD_KEY_LEN); return -EINVAL; } - clmul_ghash_setkey(&ctx->shash, key); + /* perform multiplication by 'x' in GF(2^128) */ + a = be64_to_cpu(x->a); + b = be64_to_cpu(x->b); + + ctx->shash.a = (__be64)((b << 1) | (a >> 63)); + ctx->shash.b = (__be64)((a << 1) | (b >> 63)); + + if (a >> 63) + ctx->shash.b ^= cpu_to_be64(0xc2); return 0; } --- linux-3.13.0.orig/arch/x86/include/asm/cpufeature.h +++ linux-3.13.0/arch/x86/include/asm/cpufeature.h @@ -216,9 +216,13 @@ #define X86_FEATURE_ERMS (9*32+ 9) /* Enhanced REP MOVSB/STOSB */ #define X86_FEATURE_INVPCID (9*32+10) /* Invalidate Processor Context ID */ #define X86_FEATURE_RTM (9*32+11) /* Restricted Transactional Memory */ +#define X86_FEATURE_AVX512F (9*32+16) /* AVX-512 Foundation */ #define X86_FEATURE_RDSEED (9*32+18) /* The RDSEED instruction */ #define X86_FEATURE_ADX (9*32+19) /* The ADCX and ADOX instructions */ #define X86_FEATURE_SMAP (9*32+20) /* Supervisor Mode Access Prevention */ +#define X86_FEATURE_AVX512PF (9*32+26) /* AVX-512 Prefetch */ +#define X86_FEATURE_AVX512ER (9*32+27) /* AVX-512 Exponential and Reciprocal */ +#define X86_FEATURE_AVX512CD (9*32+28) /* AVX-512 Conflict Detection */ /* * BUG word(s) --- linux-3.13.0.orig/arch/x86/include/asm/dma-mapping.h +++ linux-3.13.0/arch/x86/include/asm/dma-mapping.h @@ -163,8 +163,6 @@ { struct dma_map_ops *ops = get_dma_ops(dev); - WARN_ON(irqs_disabled()); /* for portability */ - if (dma_release_from_coherent(dev, get_order(size), vaddr)) return; --- linux-3.13.0.orig/arch/x86/include/asm/efi.h +++ linux-3.13.0/arch/x86/include/asm/efi.h @@ -1,6 +1,24 @@ #ifndef _ASM_X86_EFI_H #define _ASM_X86_EFI_H +/* + * We map the EFI regions needed for runtime services non-contiguously, + * with preserved alignment on virtual addresses starting from -4G down + * for a total max space of 64G. This way, we provide for stable runtime + * services addresses across kernels so that a kexec'd kernel can still + * use them. + * + * This is the main reason why we're doing stable VA mappings for RT + * services. + * + * This flag is used in conjuction with a chicken bit called + * "efi=old_map" which can be used as a fallback to the old runtime + * services mapping method in case there's some b0rkage with a + * particular EFI implementation (haha, it is hard to hold up the + * sarcasm here...). + */ +#define EFI_OLD_MEMMAP EFI_ARCH_1 + #ifdef CONFIG_X86_32 #define EFI_LOADER_SIGNATURE "EL32" @@ -69,24 +87,31 @@ efi_call6((f), (u64)(a1), (u64)(a2), (u64)(a3), \ (u64)(a4), (u64)(a5), (u64)(a6)) +#define _efi_call_virtX(x, f, ...) \ +({ \ + efi_status_t __s; \ + \ + efi_sync_low_kernel_mappings(); \ + preempt_disable(); \ + __s = efi_call##x((void *)efi.systab->runtime->f, __VA_ARGS__); \ + preempt_enable(); \ + __s; \ +}) + #define efi_call_virt0(f) \ - efi_call0((efi.systab->runtime->f)) -#define efi_call_virt1(f, a1) \ - efi_call1((efi.systab->runtime->f), (u64)(a1)) -#define efi_call_virt2(f, a1, a2) \ - efi_call2((efi.systab->runtime->f), (u64)(a1), (u64)(a2)) -#define efi_call_virt3(f, a1, a2, a3) \ - efi_call3((efi.systab->runtime->f), (u64)(a1), (u64)(a2), \ - (u64)(a3)) -#define efi_call_virt4(f, a1, a2, a3, a4) \ - efi_call4((efi.systab->runtime->f), (u64)(a1), (u64)(a2), \ - (u64)(a3), (u64)(a4)) -#define efi_call_virt5(f, a1, a2, a3, a4, a5) \ - efi_call5((efi.systab->runtime->f), (u64)(a1), (u64)(a2), \ - (u64)(a3), (u64)(a4), (u64)(a5)) -#define efi_call_virt6(f, a1, a2, a3, a4, a5, a6) \ - efi_call6((efi.systab->runtime->f), (u64)(a1), (u64)(a2), \ - (u64)(a3), (u64)(a4), (u64)(a5), (u64)(a6)) + _efi_call_virtX(0, f) +#define efi_call_virt1(f, a1) \ + _efi_call_virtX(1, f, (u64)(a1)) +#define efi_call_virt2(f, a1, a2) \ + _efi_call_virtX(2, f, (u64)(a1), (u64)(a2)) +#define efi_call_virt3(f, a1, a2, a3) \ + _efi_call_virtX(3, f, (u64)(a1), (u64)(a2), (u64)(a3)) +#define efi_call_virt4(f, a1, a2, a3, a4) \ + _efi_call_virtX(4, f, (u64)(a1), (u64)(a2), (u64)(a3), (u64)(a4)) +#define efi_call_virt5(f, a1, a2, a3, a4, a5) \ + _efi_call_virtX(5, f, (u64)(a1), (u64)(a2), (u64)(a3), (u64)(a4), (u64)(a5)) +#define efi_call_virt6(f, a1, a2, a3, a4, a5, a6) \ + _efi_call_virtX(6, f, (u64)(a1), (u64)(a2), (u64)(a3), (u64)(a4), (u64)(a5), (u64)(a6)) extern void __iomem *efi_ioremap(unsigned long addr, unsigned long size, u32 type, u64 attribute); @@ -95,12 +120,19 @@ extern int add_efi_memmap; extern unsigned long x86_efi_facility; +extern struct efi_scratch efi_scratch; extern void efi_set_executable(efi_memory_desc_t *md, bool executable); extern int efi_memblock_x86_reserve_range(void); extern void efi_call_phys_prelog(void); extern void efi_call_phys_epilog(void); extern void efi_unmap_memmap(void); extern void efi_memory_uc(u64 addr, unsigned long size); +extern void __init efi_map_region(efi_memory_desc_t *md); +extern void efi_sync_low_kernel_mappings(void); +extern void efi_setup_page_tables(void); +extern void __init old_map_region(efi_memory_desc_t *md); +extern void __init runtime_code_page_mkexec(void); +extern void __init efi_runtime_mkexec(void); #ifdef CONFIG_EFI --- linux-3.13.0.orig/arch/x86/include/asm/kvm_para.h +++ linux-3.13.0/arch/x86/include/asm/kvm_para.h @@ -85,28 +85,9 @@ return ret; } -static inline uint32_t kvm_cpuid_base(void) -{ - if (boot_cpu_data.cpuid_level < 0) - return 0; /* So we don't blow up on old processors */ - - if (cpu_has_hypervisor) - return hypervisor_cpuid_base("KVMKVMKVM\0\0\0", 0); - - return 0; -} - -static inline bool kvm_para_available(void) -{ - return kvm_cpuid_base() != 0; -} - -static inline unsigned int kvm_arch_para_features(void) -{ - return cpuid_eax(KVM_CPUID_FEATURES); -} - #ifdef CONFIG_KVM_GUEST +bool kvm_para_available(void); +unsigned int kvm_arch_para_features(void); void __init kvm_guest_init(void); void kvm_async_pf_task_wait(u32 token); void kvm_async_pf_task_wake(u32 token); @@ -126,6 +107,16 @@ #define kvm_async_pf_task_wait(T) do {} while(0) #define kvm_async_pf_task_wake(T) do {} while(0) +static inline bool kvm_para_available(void) +{ + return 0; +} + +static inline unsigned int kvm_arch_para_features(void) +{ + return 0; +} + static inline u32 kvm_read_and_reset_pf_reason(void) { return 0; --- linux-3.13.0.orig/arch/x86/include/asm/pgtable_types.h +++ linux-3.13.0/arch/x86/include/asm/pgtable_types.h @@ -121,7 +121,8 @@ /* Set of bits not changed in pte_modify */ #define _PAGE_CHG_MASK (PTE_PFN_MASK | _PAGE_PCD | _PAGE_PWT | \ - _PAGE_SPECIAL | _PAGE_ACCESSED | _PAGE_DIRTY) + _PAGE_SPECIAL | _PAGE_ACCESSED | _PAGE_DIRTY | \ + _PAGE_SOFT_DIRTY) #define _HPAGE_CHG_MASK (_PAGE_CHG_MASK | _PAGE_PSE) #define _PAGE_CACHE_MASK (_PAGE_PCD | _PAGE_PWT) @@ -382,7 +383,8 @@ */ extern pte_t *lookup_address(unsigned long address, unsigned int *level); extern phys_addr_t slow_virt_to_phys(void *__address); - +extern int kernel_map_pages_in_pgd(pgd_t *pgd, u64 pfn, unsigned long address, + unsigned numpages, unsigned long page_flags); #endif /* !__ASSEMBLY__ */ #endif /* _ASM_X86_PGTABLE_DEFS_H */ --- linux-3.13.0.orig/arch/x86/include/asm/topology.h +++ linux-3.13.0/arch/x86/include/asm/topology.h @@ -119,9 +119,10 @@ extern const struct cpumask *cpu_coregroup_mask(int cpu); -#ifdef ENABLE_TOPO_DEFINES #define topology_physical_package_id(cpu) (cpu_data(cpu).phys_proc_id) #define topology_core_id(cpu) (cpu_data(cpu).cpu_core_id) + +#ifdef ENABLE_TOPO_DEFINES #define topology_core_cpumask(cpu) (per_cpu(cpu_core_map, cpu)) #define topology_thread_cpumask(cpu) (per_cpu(cpu_sibling_map, cpu)) #endif --- linux-3.13.0.orig/arch/x86/include/asm/xsave.h +++ linux-3.13.0/arch/x86/include/asm/xsave.h @@ -6,9 +6,14 @@ #define XSTATE_CPUID 0x0000000d -#define XSTATE_FP 0x1 -#define XSTATE_SSE 0x2 -#define XSTATE_YMM 0x4 +#define XSTATE_FP 0x1 +#define XSTATE_SSE 0x2 +#define XSTATE_YMM 0x4 +#define XSTATE_BNDREGS 0x8 +#define XSTATE_BNDCSR 0x10 +#define XSTATE_OPMASK 0x20 +#define XSTATE_ZMM_Hi256 0x40 +#define XSTATE_Hi16_ZMM 0x80 #define XSTATE_FPSSE (XSTATE_FP | XSTATE_SSE) @@ -23,7 +28,7 @@ /* * These are the features that the OS can handle currently. */ -#define XCNTXT_MASK (XSTATE_FP | XSTATE_SSE | XSTATE_YMM) +#define XCNTXT_MASK (XSTATE_FP | XSTATE_SSE | XSTATE_YMM | XSTATE_OPMASK | XSTATE_ZMM_Hi256 | XSTATE_Hi16_ZMM) #ifdef CONFIG_X86_64 #define REX_PREFIX "0x48, " --- linux-3.13.0.orig/arch/x86/include/uapi/asm/msr-index.h +++ linux-3.13.0/arch/x86/include/uapi/asm/msr-index.h @@ -184,6 +184,7 @@ #define MSR_AMD64_PATCH_LOADER 0xc0010020 #define MSR_AMD64_OSVW_ID_LENGTH 0xc0010140 #define MSR_AMD64_OSVW_STATUS 0xc0010141 +#define MSR_AMD64_LS_CFG 0xc0011020 #define MSR_AMD64_DC_CFG 0xc0011022 #define MSR_AMD64_BU_CFG2 0xc001102a #define MSR_AMD64_IBSFETCHCTL 0xc0011030 --- linux-3.13.0.orig/arch/x86/kernel/cpu/amd.c +++ linux-3.13.0/arch/x86/kernel/cpu/amd.c @@ -219,7 +219,7 @@ */ WARN_ONCE(1, "WARNING: This combination of AMD" " processors is not suitable for SMP.\n"); - add_taint(TAINT_UNSAFE_SMP, LOCKDEP_NOW_UNRELIABLE); + add_taint(TAINT_CPU_OUT_OF_SPEC, LOCKDEP_NOW_UNRELIABLE); } static void init_amd_k7(struct cpuinfo_x86 *c) @@ -508,6 +508,16 @@ set_cpu_cap(c, X86_FEATURE_EXTD_APICID); } #endif + + /* F16h erratum 793, CVE-2013-6885 */ + if (c->x86 == 0x16 && c->x86_model <= 0xf) { + u64 val; + + rdmsrl(MSR_AMD64_LS_CFG, val); + if (!(val & BIT(15))) + wrmsrl(MSR_AMD64_LS_CFG, val | BIT(15)); + } + } static const int amd_erratum_383[]; --- linux-3.13.0.orig/arch/x86/kernel/cpu/common.c +++ linux-3.13.0/arch/x86/kernel/cpu/common.c @@ -284,8 +284,13 @@ raw_local_save_flags(eflags); BUG_ON(eflags & X86_EFLAGS_AC); - if (cpu_has(c, X86_FEATURE_SMAP)) + if (cpu_has(c, X86_FEATURE_SMAP)) { +#ifdef CONFIG_X86_SMAP set_in_cr4(X86_CR4_SMAP); +#else + clear_in_cr4(X86_CR4_SMAP); +#endif + } } /* --- linux-3.13.0.orig/arch/x86/kernel/cpu/intel.c +++ linux-3.13.0/arch/x86/kernel/cpu/intel.c @@ -196,6 +196,14 @@ } } +static int forcepae; +static int __init forcepae_setup(char *__unused) +{ + forcepae = 1; + return 1; +} +__setup("forcepae", forcepae_setup); + static void intel_workarounds(struct cpuinfo_x86 *c) { unsigned long lo, hi; @@ -226,6 +234,17 @@ clear_cpu_cap(c, X86_FEATURE_SEP); /* + * PAE CPUID issue: many Pentium M report no PAE but may have a + * functionally usable PAE implementation. + * Forcefully enable PAE if kernel parameter "forcepae" is present. + */ + if (forcepae) { + printk(KERN_WARNING "PAE forced!\n"); + set_cpu_cap(c, X86_FEATURE_PAE); + add_taint(TAINT_CPU_OUT_OF_SPEC, LOCKDEP_NOW_UNRELIABLE); + } + + /* * P4 Xeon errata 037 workaround. * Hardware prefetcher may cause stale data to be loaded into the cache. */ @@ -628,7 +647,7 @@ tlb_flushall_shift = 5; break; case 0x63a: /* Ivybridge */ - tlb_flushall_shift = 1; + tlb_flushall_shift = 2; break; default: tlb_flushall_shift = 6; --- linux-3.13.0.orig/arch/x86/kernel/cpu/mshyperv.c +++ linux-3.13.0/arch/x86/kernel/cpu/mshyperv.c @@ -26,6 +26,7 @@ #include #include #include +#include struct ms_hyperv_info ms_hyperv; EXPORT_SYMBOL_GPL(ms_hyperv); @@ -105,6 +106,11 @@ if (ms_hyperv.features & HV_X64_MSR_TIME_REF_COUNT_AVAILABLE) clocksource_register_hz(&hyperv_cs, NSEC_PER_SEC/100); + +#ifdef CONFIG_X86_IO_APIC + no_timer_check = 1; +#endif + } const __refconst struct hypervisor_x86 x86_hyper_ms_hyperv = { --- linux-3.13.0.orig/arch/x86/kernel/cpu/perf_event.c +++ linux-3.13.0/arch/x86/kernel/cpu/perf_event.c @@ -1192,6 +1192,9 @@ for (i = 0; i < cpuc->n_events; i++) { if (event == cpuc->event_list[i]) { + if (i >= cpuc->n_events - cpuc->n_added) + --cpuc->n_added; + if (x86_pmu.put_event_constraints) x86_pmu.put_event_constraints(cpuc, event); --- linux-3.13.0.orig/arch/x86/kernel/early-quirks.c +++ linux-3.13.0/arch/x86/kernel/early-quirks.c @@ -203,18 +203,15 @@ revision = read_pci_config_byte(num, slot, func, PCI_REVISION_ID); /* - * Revision 13 of all triggering devices id in this quirk have - * a problem draining interrupts when irq remapping is enabled, - * and should be flagged as broken. Additionally revisions 0x12 - * and 0x22 of device id 0x3405 has this problem. + * Revision <= 13 of all triggering devices id in this quirk + * have a problem draining interrupts when irq remapping is + * enabled, and should be flagged as broken. Additionally + * revision 0x22 of device id 0x3405 has this problem. */ - if (revision == 0x13) + if (revision <= 0x13) set_irq_remapping_broken(); - else if ((device == 0x3405) && - ((revision == 0x12) || - (revision == 0x22))) + else if (device == 0x3405 && revision == 0x22) set_irq_remapping_broken(); - } /* --- linux-3.13.0.orig/arch/x86/kernel/ftrace.c +++ linux-3.13.0/arch/x86/kernel/ftrace.c @@ -77,8 +77,7 @@ return addr >= start && addr < end; } -static int -do_ftrace_mod_code(unsigned long ip, const void *new_code) +static unsigned long text_ip_addr(unsigned long ip) { /* * On x86_64, kernel text mappings are mapped read-only with @@ -91,7 +90,7 @@ if (within(ip, (unsigned long)_text, (unsigned long)_etext)) ip = (unsigned long)__va(__pa_symbol(ip)); - return probe_kernel_write((void *)ip, new_code, MCOUNT_INSN_SIZE); + return ip; } static const unsigned char *ftrace_nop_replace(void) @@ -123,8 +122,10 @@ if (memcmp(replaced, old_code, MCOUNT_INSN_SIZE) != 0) return -EINVAL; + ip = text_ip_addr(ip); + /* replace the text with the new text */ - if (do_ftrace_mod_code(ip, new_code)) + if (probe_kernel_write((void *)ip, new_code, MCOUNT_INSN_SIZE)) return -EPERM; sync_core(); @@ -221,37 +222,51 @@ return -EINVAL; } -int ftrace_update_ftrace_func(ftrace_func_t func) +static unsigned long ftrace_update_func; + +static int update_ftrace_func(unsigned long ip, void *new) { - unsigned long ip = (unsigned long)(&ftrace_call); - unsigned char old[MCOUNT_INSN_SIZE], *new; + unsigned char old[MCOUNT_INSN_SIZE]; int ret; - memcpy(old, &ftrace_call, MCOUNT_INSN_SIZE); - new = ftrace_call_replace(ip, (unsigned long)func); + memcpy(old, (void *)ip, MCOUNT_INSN_SIZE); + + ftrace_update_func = ip; + /* Make sure the breakpoints see the ftrace_update_func update */ + smp_wmb(); /* See comment above by declaration of modifying_ftrace_code */ atomic_inc(&modifying_ftrace_code); ret = ftrace_modify_code(ip, old, new); + atomic_dec(&modifying_ftrace_code); + + return ret; +} + +int ftrace_update_ftrace_func(ftrace_func_t func) +{ + unsigned long ip = (unsigned long)(&ftrace_call); + unsigned char *new; + int ret; + + new = ftrace_call_replace(ip, (unsigned long)func); + ret = update_ftrace_func(ip, new); + /* Also update the regs callback function */ if (!ret) { ip = (unsigned long)(&ftrace_regs_call); - memcpy(old, &ftrace_regs_call, MCOUNT_INSN_SIZE); new = ftrace_call_replace(ip, (unsigned long)func); - ret = ftrace_modify_code(ip, old, new); + ret = update_ftrace_func(ip, new); } - atomic_dec(&modifying_ftrace_code); - return ret; } static int is_ftrace_caller(unsigned long ip) { - if (ip == (unsigned long)(&ftrace_call) || - ip == (unsigned long)(&ftrace_regs_call)) + if (ip == ftrace_update_func) return 1; return 0; @@ -677,45 +692,41 @@ #ifdef CONFIG_DYNAMIC_FTRACE extern void ftrace_graph_call(void); -static int ftrace_mod_jmp(unsigned long ip, - int old_offset, int new_offset) +static unsigned char *ftrace_jmp_replace(unsigned long ip, unsigned long addr) { - unsigned char code[MCOUNT_INSN_SIZE]; + static union ftrace_code_union calc; - if (probe_kernel_read(code, (void *)ip, MCOUNT_INSN_SIZE)) - return -EFAULT; + /* Jmp not a call (ignore the .e8) */ + calc.e8 = 0xe9; + calc.offset = ftrace_calc_offset(ip + MCOUNT_INSN_SIZE, addr); - if (code[0] != 0xe9 || old_offset != *(int *)(&code[1])) - return -EINVAL; + /* + * ftrace external locks synchronize the access to the static variable. + */ + return calc.code; +} - *(int *)(&code[1]) = new_offset; +static int ftrace_mod_jmp(unsigned long ip, void *func) +{ + unsigned char *new; - if (do_ftrace_mod_code(ip, &code)) - return -EPERM; + new = ftrace_jmp_replace(ip, (unsigned long)func); - return 0; + return update_ftrace_func(ip, new); } int ftrace_enable_ftrace_graph_caller(void) { unsigned long ip = (unsigned long)(&ftrace_graph_call); - int old_offset, new_offset; - - old_offset = (unsigned long)(&ftrace_stub) - (ip + MCOUNT_INSN_SIZE); - new_offset = (unsigned long)(&ftrace_graph_caller) - (ip + MCOUNT_INSN_SIZE); - return ftrace_mod_jmp(ip, old_offset, new_offset); + return ftrace_mod_jmp(ip, &ftrace_graph_caller); } int ftrace_disable_ftrace_graph_caller(void) { unsigned long ip = (unsigned long)(&ftrace_graph_call); - int old_offset, new_offset; - - old_offset = (unsigned long)(&ftrace_graph_caller) - (ip + MCOUNT_INSN_SIZE); - new_offset = (unsigned long)(&ftrace_stub) - (ip + MCOUNT_INSN_SIZE); - return ftrace_mod_jmp(ip, old_offset, new_offset); + return ftrace_mod_jmp(ip, &ftrace_stub); } #endif /* !CONFIG_DYNAMIC_FTRACE */ --- linux-3.13.0.orig/arch/x86/kernel/head_32.S +++ linux-3.13.0/arch/x86/kernel/head_32.S @@ -544,6 +544,10 @@ /* This is global to keep gas from relaxing the jumps */ ENTRY(early_idt_handler) cld + + cmpl $2,(%esp) # X86_TRAP_NMI + je is_nmi # Ignore NMI + cmpl $2,%ss:early_recursion_flag je hlt_loop incl %ss:early_recursion_flag @@ -594,8 +598,9 @@ pop %edx pop %ecx pop %eax - addl $8,%esp /* drop vector number and error code */ decl %ss:early_recursion_flag +is_nmi: + addl $8,%esp /* drop vector number and error code */ iret ENDPROC(early_idt_handler) --- linux-3.13.0.orig/arch/x86/kernel/head_64.S +++ linux-3.13.0/arch/x86/kernel/head_64.S @@ -343,6 +343,9 @@ ENTRY(early_idt_handler) cld + cmpl $2,(%rsp) # X86_TRAP_NMI + je is_nmi # Ignore NMI + cmpl $2,early_recursion_flag(%rip) jz 1f incl early_recursion_flag(%rip) @@ -405,8 +408,9 @@ popq %rdx popq %rcx popq %rax - addq $16,%rsp # drop vector number and error code decl early_recursion_flag(%rip) +is_nmi: + addq $16,%rsp # drop vector number and error code INTERRUPT_RETURN ENDPROC(early_idt_handler) --- linux-3.13.0.orig/arch/x86/kernel/i387.c +++ linux-3.13.0/arch/x86/kernel/i387.c @@ -86,10 +86,19 @@ void __kernel_fpu_end(void) { - if (use_eager_fpu()) - math_state_restore(); - else + if (use_eager_fpu()) { + /* + * For eager fpu, most the time, tsk_used_math() is true. + * Restore the user math as we are done with the kernel usage. + * At few instances during thread exit, signal handling etc, + * tsk_used_math() is false. Those few places will take proper + * actions, so we don't need to restore the math here. + */ + if (likely(tsk_used_math(current))) + math_state_restore(); + } else { stts(); + } } EXPORT_SYMBOL(__kernel_fpu_end); --- linux-3.13.0.orig/arch/x86/kernel/kvm.c +++ linux-3.13.0/arch/x86/kernel/kvm.c @@ -500,6 +500,38 @@ #endif } +static noinline uint32_t __kvm_cpuid_base(void) +{ + if (boot_cpu_data.cpuid_level < 0) + return 0; /* So we don't blow up on old processors */ + + if (cpu_has_hypervisor) + return hypervisor_cpuid_base("KVMKVMKVM\0\0\0", 0); + + return 0; +} + +static inline uint32_t kvm_cpuid_base(void) +{ + static int kvm_cpuid_base = -1; + + if (kvm_cpuid_base == -1) + kvm_cpuid_base = __kvm_cpuid_base(); + + return kvm_cpuid_base; +} + +bool kvm_para_available(void) +{ + return kvm_cpuid_base() != 0; +} +EXPORT_SYMBOL_GPL(kvm_para_available); + +unsigned int kvm_arch_para_features(void) +{ + return cpuid_eax(kvm_cpuid_base() | KVM_CPUID_FEATURES); +} + static uint32_t __init kvm_detect(void) { return kvm_cpuid_base(); --- linux-3.13.0.orig/arch/x86/kernel/ldt.c +++ linux-3.13.0/arch/x86/kernel/ldt.c @@ -229,6 +229,17 @@ } } + /* + * On x86-64 we do not support 16-bit segments due to + * IRET leaking the high bits of the kernel stack address. + */ +#ifdef CONFIG_X86_64 + if (!ldt_info.seg_32bit) { + error = -EINVAL; + goto out_unlock; + } +#endif + fill_ldt(&ldt, &ldt_info); if (oldmode) ldt.avl = 0; --- linux-3.13.0.orig/arch/x86/kernel/pci-dma.c +++ linux-3.13.0/arch/x86/kernel/pci-dma.c @@ -100,8 +100,10 @@ flag |= __GFP_ZERO; again: page = NULL; - if (!(flag & GFP_ATOMIC)) + /* CMA can be used only in the context which permits sleeping */ + if (flag & __GFP_WAIT) page = dma_alloc_from_contiguous(dev, count, get_order(size)); + /* fallback */ if (!page) page = alloc_pages_node(dev_to_node(dev), flag, get_order(size)); if (!page) --- linux-3.13.0.orig/arch/x86/kernel/quirks.c +++ linux-3.13.0/arch/x86/kernel/quirks.c @@ -529,7 +529,7 @@ return; pci_read_config_dword(nb_ht, 0x60, &val); - node = val & 7; + node = pcibus_to_node(dev->bus) | (val & 7); /* * Some hardware may return an invalid node ID, * so check it first: --- linux-3.13.0.orig/arch/x86/kernel/reboot.c +++ linux-3.13.0/arch/x86/kernel/reboot.c @@ -385,7 +385,46 @@ DMI_MATCH(DMI_PRODUCT_NAME, "VGN-Z540N"), }, }, - + { /* Handle problems with rebooting on the Latitude E6520. */ + .callback = set_pci_reboot, + .ident = "Dell Latitude E6520", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6520"), + }, + }, + { /* Handle problems with rebooting on the OptiPlex 790. */ + .callback = set_pci_reboot, + .ident = "Dell OptiPlex 790", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 790"), + }, + }, + { /* Handle problems with rebooting on the OptiPlex 990. */ + .callback = set_pci_reboot, + .ident = "Dell OptiPlex 990", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 990"), + }, + }, + { /* Handle problems with rebooting on the Latitude E6220. */ + .callback = set_pci_reboot, + .ident = "Dell Latitude E6220", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6220"), + }, + }, + { /* Handle problems with rebooting on the OptiPlex 390. */ + .callback = set_pci_reboot, + .ident = "Dell OptiPlex 390", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 390"), + }, + }, { } }; --- linux-3.13.0.orig/arch/x86/kvm/i8254.c +++ linux-3.13.0/arch/x86/kvm/i8254.c @@ -37,6 +37,7 @@ #include "irq.h" #include "i8254.h" +#include "x86.h" #ifndef CONFIG_X86_64 #define mod_64(x, y) ((x) - (y) * div64_u64(x, y)) @@ -349,6 +350,23 @@ atomic_set(&ps->pending, 0); ps->irq_ack = 1; + /* + * Do not allow the guest to program periodic timers with small + * interval, since the hrtimers are not throttled by the host + * scheduler. + */ + if (ps->is_periodic) { + s64 min_period = min_timer_period_us * 1000LL; + + if (ps->period < min_period) { + pr_info_ratelimited( + "kvm: requested %lld ns " + "i8254 timer period limited to %lld ns\n", + ps->period, min_period); + ps->period = min_period; + } + } + hrtimer_start(&ps->timer, ktime_add_ns(ktime_get(), interval), HRTIMER_MODE_ABS); } --- linux-3.13.0.orig/arch/x86/kvm/lapic.c +++ linux-3.13.0/arch/x86/kvm/lapic.c @@ -71,9 +71,6 @@ #define VEC_POS(v) ((v) & (32 - 1)) #define REG_POS(v) (((v) >> 5) << 4) -static unsigned int min_timer_period_us = 500; -module_param(min_timer_period_us, uint, S_IRUGO | S_IWUSR); - static inline void apic_set_reg(struct kvm_lapic *apic, int reg_off, u32 val) { *((u32 *) (apic->regs + reg_off)) = val; --- linux-3.13.0.orig/arch/x86/kvm/mmu.c +++ linux-3.13.0/arch/x86/kvm/mmu.c @@ -2659,6 +2659,9 @@ int emulate = 0; gfn_t pseudo_gfn; + if (!VALID_PAGE(vcpu->arch.mmu.root_hpa)) + return 0; + for_each_shadow_entry(vcpu, (u64)gfn << PAGE_SHIFT, iterator) { if (iterator.level == level) { mmu_set_spte(vcpu, iterator.sptep, ACC_ALL, @@ -2829,6 +2832,9 @@ bool ret = false; u64 spte = 0ull; + if (!VALID_PAGE(vcpu->arch.mmu.root_hpa)) + return false; + if (!page_fault_can_be_fast(error_code)) return false; @@ -3224,6 +3230,9 @@ struct kvm_shadow_walk_iterator iterator; u64 spte = 0ull; + if (!VALID_PAGE(vcpu->arch.mmu.root_hpa)) + return spte; + walk_shadow_page_lockless_begin(vcpu); for_each_shadow_entry_lockless(vcpu, addr, iterator, spte) if (!is_shadow_present_pte(spte)) @@ -4510,6 +4519,9 @@ u64 spte; int nr_sptes = 0; + if (!VALID_PAGE(vcpu->arch.mmu.root_hpa)) + return nr_sptes; + walk_shadow_page_lockless_begin(vcpu); for_each_shadow_entry_lockless(vcpu, addr, iterator, spte) { sptes[iterator.level-1] = spte; --- linux-3.13.0.orig/arch/x86/kvm/paging_tmpl.h +++ linux-3.13.0/arch/x86/kvm/paging_tmpl.h @@ -569,6 +569,9 @@ if (FNAME(gpte_changed)(vcpu, gw, top_level)) goto out_gpte_changed; + if (!VALID_PAGE(vcpu->arch.mmu.root_hpa)) + goto out_gpte_changed; + for (shadow_walk_init(&it, vcpu, addr); shadow_walk_okay(&it) && it.level > gw->level; shadow_walk_next(&it)) { @@ -820,6 +823,11 @@ */ mmu_topup_memory_caches(vcpu); + if (!VALID_PAGE(vcpu->arch.mmu.root_hpa)) { + WARN_ON(1); + return; + } + spin_lock(&vcpu->kvm->mmu_lock); for_each_shadow_entry(vcpu, gva, iterator) { level = iterator.level; --- linux-3.13.0.orig/arch/x86/kvm/svm.c +++ linux-3.13.0/arch/x86/kvm/svm.c @@ -2989,10 +2989,8 @@ u8 cr8_prev = kvm_get_cr8(&svm->vcpu); /* instruction emulation calls kvm_set_cr8() */ r = cr_interception(svm); - if (irqchip_in_kernel(svm->vcpu.kvm)) { - clr_cr_intercept(svm, INTERCEPT_CR8_WRITE); + if (irqchip_in_kernel(svm->vcpu.kvm)) return r; - } if (cr8_prev <= kvm_get_cr8(&svm->vcpu)) return r; kvm_run->exit_reason = KVM_EXIT_SET_TPR; @@ -3554,6 +3552,8 @@ if (is_guest_mode(vcpu) && (vcpu->arch.hflags & HF_VINTR_MASK)) return; + clr_cr_intercept(svm, INTERCEPT_CR8_WRITE); + if (irr == -1) return; --- linux-3.13.0.orig/arch/x86/kvm/vmx.c +++ linux-3.13.0/arch/x86/kvm/vmx.c @@ -6644,7 +6644,7 @@ else if (is_page_fault(intr_info)) return enable_ept; else if (is_no_device(intr_info) && - !(nested_read_cr0(vmcs12) & X86_CR0_TS)) + !(vmcs12->guest_cr0 & X86_CR0_TS)) return 0; return vmcs12->exception_bitmap & (1u << (intr_info & INTR_INFO_VECTOR_MASK)); @@ -7332,8 +7332,8 @@ struct vcpu_vmx *vmx = to_vmx(vcpu); free_vpid(vmx); - free_nested(vmx); free_loaded_vmcs(vmx->loaded_vmcs); + free_nested(vmx); kfree(vmx->guest_msrs); kvm_vcpu_uninit(vcpu); kmem_cache_free(kvm_vcpu_cache, vmx); --- linux-3.13.0.orig/arch/x86/kvm/x86.c +++ linux-3.13.0/arch/x86/kvm/x86.c @@ -94,6 +94,9 @@ static bool ignore_msrs = 0; module_param(ignore_msrs, bool, S_IRUGO | S_IWUSR); +unsigned int min_timer_period_us = 500; +module_param(min_timer_period_us, uint, S_IRUGO | S_IWUSR); + bool kvm_has_tsc_control; EXPORT_SYMBOL_GPL(kvm_has_tsc_control); u32 kvm_max_guest_tsc_khz; @@ -5499,7 +5502,7 @@ goto out; } if (ops->disabled_by_bios()) { - printk(KERN_ERR "kvm: disabled by bios\n"); + printk(KERN_WARNING "kvm: disabled by bios\n"); r = -EOPNOTSUPP; goto out; } @@ -6089,6 +6092,20 @@ } if (need_resched()) { srcu_read_unlock(&kvm->srcu, vcpu->srcu_idx); +#ifdef CONFIG_X86_32 + /* + * This is a hack around a current bug on i386 + * that causes TIF_NEED_RESCHED not being propagated + * into the per-cpu counter. This causes cond_resched() + * which is what kvm_resched() calls to exit without + * actually rescheduling. We continue immediately with + * the loop but vcpu_enter_guest checks for the process + * flag and immediately exits and this loops busily + * runs forever. + */ + if (tif_need_resched()) + set_preempt_need_resched(); +#endif kvm_resched(vcpu); vcpu->srcu_idx = srcu_read_lock(&kvm->srcu); } @@ -6160,7 +6177,7 @@ frag->len -= len; } - if (vcpu->mmio_cur_fragment == vcpu->mmio_nr_fragments) { + if (vcpu->mmio_cur_fragment >= vcpu->mmio_nr_fragments) { vcpu->mmio_needed = 0; /* FIXME: return into emulator if single-stepping. */ --- linux-3.13.0.orig/arch/x86/kvm/x86.h +++ linux-3.13.0/arch/x86/kvm/x86.h @@ -125,5 +125,7 @@ #define KVM_SUPPORTED_XCR0 (XSTATE_FP | XSTATE_SSE | XSTATE_YMM) extern u64 host_xcr0; +extern unsigned int min_timer_period_us; + extern struct static_key kvm_no_apic_vcpu; #endif --- linux-3.13.0.orig/arch/x86/mm/fault.c +++ linux-3.13.0/arch/x86/mm/fault.c @@ -1001,6 +1001,12 @@ static inline bool smap_violation(int error_code, struct pt_regs *regs) { + if (!IS_ENABLED(CONFIG_X86_SMAP)) + return false; + + if (!static_cpu_has(X86_FEATURE_SMAP)) + return false; + if (error_code & PF_USER) return false; @@ -1087,11 +1093,9 @@ if (unlikely(error_code & PF_RSVD)) pgtable_bad(regs, error_code, address); - if (static_cpu_has(X86_FEATURE_SMAP)) { - if (unlikely(smap_violation(error_code, regs))) { - bad_area_nosemaphore(regs, error_code, address); - return; - } + if (unlikely(smap_violation(error_code, regs))) { + bad_area_nosemaphore(regs, error_code, address); + return; } /* --- linux-3.13.0.orig/arch/x86/mm/pageattr.c +++ linux-3.13.0/arch/x86/mm/pageattr.c @@ -30,6 +30,7 @@ */ struct cpa_data { unsigned long *vaddr; + pgd_t *pgd; pgprot_t mask_set; pgprot_t mask_clr; int numpages; @@ -322,17 +323,9 @@ return prot; } -/* - * Lookup the page table entry for a virtual address. Return a pointer - * to the entry and the level of the mapping. - * - * Note: We return pud and pmd either when the entry is marked large - * or when the present bit is not set. Otherwise we would return a - * pointer to a nonexisting mapping. - */ -pte_t *lookup_address(unsigned long address, unsigned int *level) +static pte_t *__lookup_address_in_pgd(pgd_t *pgd, unsigned long address, + unsigned int *level) { - pgd_t *pgd = pgd_offset_k(address); pud_t *pud; pmd_t *pmd; @@ -361,8 +354,31 @@ return pte_offset_kernel(pmd, address); } + +/* + * Lookup the page table entry for a virtual address. Return a pointer + * to the entry and the level of the mapping. + * + * Note: We return pud and pmd either when the entry is marked large + * or when the present bit is not set. Otherwise we would return a + * pointer to a nonexisting mapping. + */ +pte_t *lookup_address(unsigned long address, unsigned int *level) +{ + return __lookup_address_in_pgd(pgd_offset_k(address), address, level); +} EXPORT_SYMBOL_GPL(lookup_address); +static pte_t *_lookup_address_cpa(struct cpa_data *cpa, unsigned long address, + unsigned int *level) +{ + if (cpa->pgd) + return __lookup_address_in_pgd(cpa->pgd + pgd_index(address), + address, level); + + return lookup_address(address, level); +} + /* * This is necessary because __pa() does not work on some * kinds of memory, like vmalloc() or the alloc_remap() @@ -437,7 +453,7 @@ * Check for races, another CPU might have split this page * up already: */ - tmp = lookup_address(address, &level); + tmp = _lookup_address_cpa(cpa, address, &level); if (tmp != kpte) goto out_unlock; @@ -543,7 +559,8 @@ } static int -__split_large_page(pte_t *kpte, unsigned long address, struct page *base) +__split_large_page(struct cpa_data *cpa, pte_t *kpte, unsigned long address, + struct page *base) { pte_t *pbase = (pte_t *)page_address(base); unsigned long pfn, pfninc = 1; @@ -556,7 +573,7 @@ * Check for races, another CPU might have split this page * up for us already: */ - tmp = lookup_address(address, &level); + tmp = _lookup_address_cpa(cpa, address, &level); if (tmp != kpte) { spin_unlock(&pgd_lock); return 1; @@ -632,7 +649,8 @@ return 0; } -static int split_large_page(pte_t *kpte, unsigned long address) +static int split_large_page(struct cpa_data *cpa, pte_t *kpte, + unsigned long address) { struct page *base; @@ -644,15 +662,390 @@ if (!base) return -ENOMEM; - if (__split_large_page(kpte, address, base)) + if (__split_large_page(cpa, kpte, address, base)) __free_page(base); return 0; } +static bool try_to_free_pte_page(pte_t *pte) +{ + int i; + + for (i = 0; i < PTRS_PER_PTE; i++) + if (!pte_none(pte[i])) + return false; + + free_page((unsigned long)pte); + return true; +} + +static bool try_to_free_pmd_page(pmd_t *pmd) +{ + int i; + + for (i = 0; i < PTRS_PER_PMD; i++) + if (!pmd_none(pmd[i])) + return false; + + free_page((unsigned long)pmd); + return true; +} + +static bool unmap_pte_range(pmd_t *pmd, unsigned long start, unsigned long end) +{ + pte_t *pte = pte_offset_kernel(pmd, start); + + while (start < end) { + set_pte(pte, __pte(0)); + + start += PAGE_SIZE; + pte++; + } + + if (try_to_free_pte_page((pte_t *)pmd_page_vaddr(*pmd))) { + pmd_clear(pmd); + return true; + } + return false; +} + +static void __unmap_pmd_range(pud_t *pud, pmd_t *pmd, + unsigned long start, unsigned long end) +{ + if (unmap_pte_range(pmd, start, end)) + if (try_to_free_pmd_page((pmd_t *)pud_page_vaddr(*pud))) + pud_clear(pud); +} + +static void unmap_pmd_range(pud_t *pud, unsigned long start, unsigned long end) +{ + pmd_t *pmd = pmd_offset(pud, start); + + /* + * Not on a 2MB page boundary? + */ + if (start & (PMD_SIZE - 1)) { + unsigned long next_page = (start + PMD_SIZE) & PMD_MASK; + unsigned long pre_end = min_t(unsigned long, end, next_page); + + __unmap_pmd_range(pud, pmd, start, pre_end); + + start = pre_end; + pmd++; + } + + /* + * Try to unmap in 2M chunks. + */ + while (end - start >= PMD_SIZE) { + if (pmd_large(*pmd)) + pmd_clear(pmd); + else + __unmap_pmd_range(pud, pmd, start, start + PMD_SIZE); + + start += PMD_SIZE; + pmd++; + } + + /* + * 4K leftovers? + */ + if (start < end) + return __unmap_pmd_range(pud, pmd, start, end); + + /* + * Try again to free the PMD page if haven't succeeded above. + */ + if (!pud_none(*pud)) + if (try_to_free_pmd_page((pmd_t *)pud_page_vaddr(*pud))) + pud_clear(pud); +} + +static void unmap_pud_range(pgd_t *pgd, unsigned long start, unsigned long end) +{ + pud_t *pud = pud_offset(pgd, start); + + /* + * Not on a GB page boundary? + */ + if (start & (PUD_SIZE - 1)) { + unsigned long next_page = (start + PUD_SIZE) & PUD_MASK; + unsigned long pre_end = min_t(unsigned long, end, next_page); + + unmap_pmd_range(pud, start, pre_end); + + start = pre_end; + pud++; + } + + /* + * Try to unmap in 1G chunks? + */ + while (end - start >= PUD_SIZE) { + + if (pud_large(*pud)) + pud_clear(pud); + else + unmap_pmd_range(pud, start, start + PUD_SIZE); + + start += PUD_SIZE; + pud++; + } + + /* + * 2M leftovers? + */ + if (start < end) + unmap_pmd_range(pud, start, end); + + /* + * No need to try to free the PUD page because we'll free it in + * populate_pgd's error path + */ +} + +static int alloc_pte_page(pmd_t *pmd) +{ + pte_t *pte = (pte_t *)get_zeroed_page(GFP_KERNEL | __GFP_NOTRACK); + if (!pte) + return -1; + + set_pmd(pmd, __pmd(__pa(pte) | _KERNPG_TABLE)); + return 0; +} + +static int alloc_pmd_page(pud_t *pud) +{ + pmd_t *pmd = (pmd_t *)get_zeroed_page(GFP_KERNEL | __GFP_NOTRACK); + if (!pmd) + return -1; + + set_pud(pud, __pud(__pa(pmd) | _KERNPG_TABLE)); + return 0; +} + +static void populate_pte(struct cpa_data *cpa, + unsigned long start, unsigned long end, + unsigned num_pages, pmd_t *pmd, pgprot_t pgprot) +{ + pte_t *pte; + + pte = pte_offset_kernel(pmd, start); + + while (num_pages-- && start < end) { + + /* deal with the NX bit */ + if (!(pgprot_val(pgprot) & _PAGE_NX)) + cpa->pfn &= ~_PAGE_NX; + + set_pte(pte, pfn_pte(cpa->pfn >> PAGE_SHIFT, pgprot)); + + start += PAGE_SIZE; + cpa->pfn += PAGE_SIZE; + pte++; + } +} + +static int populate_pmd(struct cpa_data *cpa, + unsigned long start, unsigned long end, + unsigned num_pages, pud_t *pud, pgprot_t pgprot) +{ + unsigned int cur_pages = 0; + pmd_t *pmd; + + /* + * Not on a 2M boundary? + */ + if (start & (PMD_SIZE - 1)) { + unsigned long pre_end = start + (num_pages << PAGE_SHIFT); + unsigned long next_page = (start + PMD_SIZE) & PMD_MASK; + + pre_end = min_t(unsigned long, pre_end, next_page); + cur_pages = (pre_end - start) >> PAGE_SHIFT; + cur_pages = min_t(unsigned int, num_pages, cur_pages); + + /* + * Need a PTE page? + */ + pmd = pmd_offset(pud, start); + if (pmd_none(*pmd)) + if (alloc_pte_page(pmd)) + return -1; + + populate_pte(cpa, start, pre_end, cur_pages, pmd, pgprot); + + start = pre_end; + } + + /* + * We mapped them all? + */ + if (num_pages == cur_pages) + return cur_pages; + + while (end - start >= PMD_SIZE) { + + /* + * We cannot use a 1G page so allocate a PMD page if needed. + */ + if (pud_none(*pud)) + if (alloc_pmd_page(pud)) + return -1; + + pmd = pmd_offset(pud, start); + + set_pmd(pmd, __pmd(cpa->pfn | _PAGE_PSE | massage_pgprot(pgprot))); + + start += PMD_SIZE; + cpa->pfn += PMD_SIZE; + cur_pages += PMD_SIZE >> PAGE_SHIFT; + } + + /* + * Map trailing 4K pages. + */ + if (start < end) { + pmd = pmd_offset(pud, start); + if (pmd_none(*pmd)) + if (alloc_pte_page(pmd)) + return -1; + + populate_pte(cpa, start, end, num_pages - cur_pages, + pmd, pgprot); + } + return num_pages; +} + +static int populate_pud(struct cpa_data *cpa, unsigned long start, pgd_t *pgd, + pgprot_t pgprot) +{ + pud_t *pud; + unsigned long end; + int cur_pages = 0; + + end = start + (cpa->numpages << PAGE_SHIFT); + + /* + * Not on a Gb page boundary? => map everything up to it with + * smaller pages. + */ + if (start & (PUD_SIZE - 1)) { + unsigned long pre_end; + unsigned long next_page = (start + PUD_SIZE) & PUD_MASK; + + pre_end = min_t(unsigned long, end, next_page); + cur_pages = (pre_end - start) >> PAGE_SHIFT; + cur_pages = min_t(int, (int)cpa->numpages, cur_pages); + + pud = pud_offset(pgd, start); + + /* + * Need a PMD page? + */ + if (pud_none(*pud)) + if (alloc_pmd_page(pud)) + return -1; + + cur_pages = populate_pmd(cpa, start, pre_end, cur_pages, + pud, pgprot); + if (cur_pages < 0) + return cur_pages; + + start = pre_end; + } + + /* We mapped them all? */ + if (cpa->numpages == cur_pages) + return cur_pages; + + pud = pud_offset(pgd, start); + + /* + * Map everything starting from the Gb boundary, possibly with 1G pages + */ + while (end - start >= PUD_SIZE) { + set_pud(pud, __pud(cpa->pfn | _PAGE_PSE | massage_pgprot(pgprot))); + + start += PUD_SIZE; + cpa->pfn += PUD_SIZE; + cur_pages += PUD_SIZE >> PAGE_SHIFT; + pud++; + } + + /* Map trailing leftover */ + if (start < end) { + int tmp; + + pud = pud_offset(pgd, start); + if (pud_none(*pud)) + if (alloc_pmd_page(pud)) + return -1; + + tmp = populate_pmd(cpa, start, end, cpa->numpages - cur_pages, + pud, pgprot); + if (tmp < 0) + return cur_pages; + + cur_pages += tmp; + } + return cur_pages; +} + +/* + * Restrictions for kernel page table do not necessarily apply when mapping in + * an alternate PGD. + */ +static int populate_pgd(struct cpa_data *cpa, unsigned long addr) +{ + pgprot_t pgprot = __pgprot(_KERNPG_TABLE); + bool allocd_pgd = false; + pgd_t *pgd_entry; + pud_t *pud = NULL; /* shut up gcc */ + int ret; + + pgd_entry = cpa->pgd + pgd_index(addr); + + /* + * Allocate a PUD page and hand it down for mapping. + */ + if (pgd_none(*pgd_entry)) { + pud = (pud_t *)get_zeroed_page(GFP_KERNEL | __GFP_NOTRACK); + if (!pud) + return -1; + + set_pgd(pgd_entry, __pgd(__pa(pud) | _KERNPG_TABLE)); + allocd_pgd = true; + } + + pgprot_val(pgprot) &= ~pgprot_val(cpa->mask_clr); + pgprot_val(pgprot) |= pgprot_val(cpa->mask_set); + + ret = populate_pud(cpa, addr, pgd_entry, pgprot); + if (ret < 0) { + unmap_pud_range(pgd_entry, addr, + addr + (cpa->numpages << PAGE_SHIFT)); + + if (allocd_pgd) { + /* + * If I allocated this PUD page, I can just as well + * free it in this error path. + */ + pgd_clear(pgd_entry); + free_page((unsigned long)pud); + } + return ret; + } + cpa->numpages = ret; + return 0; +} + static int __cpa_process_fault(struct cpa_data *cpa, unsigned long vaddr, int primary) { + if (cpa->pgd) + return populate_pgd(cpa, vaddr); + /* * Ignore all non primary paths. */ @@ -697,7 +1090,7 @@ else address = *cpa->vaddr; repeat: - kpte = lookup_address(address, &level); + kpte = _lookup_address_cpa(cpa, address, &level); if (!kpte) return __cpa_process_fault(cpa, address, primary); @@ -761,7 +1154,7 @@ /* * We have to split the large page: */ - err = split_large_page(kpte, address); + err = split_large_page(cpa, kpte, address); if (!err) { /* * Do a global flush tlb after splitting the large page @@ -910,6 +1303,8 @@ int ret, cache, checkalias; unsigned long baddr = 0; + memset(&cpa, 0, sizeof(cpa)); + /* * Check, if we are requested to change a not supported * feature: @@ -1356,6 +1751,7 @@ { unsigned long tempaddr = (unsigned long) page_address(page); struct cpa_data cpa = { .vaddr = &tempaddr, + .pgd = NULL, .numpages = numpages, .mask_set = __pgprot(_PAGE_PRESENT | _PAGE_RW), .mask_clr = __pgprot(0), @@ -1374,6 +1770,7 @@ { unsigned long tempaddr = (unsigned long) page_address(page); struct cpa_data cpa = { .vaddr = &tempaddr, + .pgd = NULL, .numpages = numpages, .mask_set = __pgprot(0), .mask_clr = __pgprot(_PAGE_PRESENT | _PAGE_RW), @@ -1434,6 +1831,36 @@ #endif /* CONFIG_DEBUG_PAGEALLOC */ +int kernel_map_pages_in_pgd(pgd_t *pgd, u64 pfn, unsigned long address, + unsigned numpages, unsigned long page_flags) +{ + int retval = -EINVAL; + + struct cpa_data cpa = { + .vaddr = &address, + .pfn = pfn, + .pgd = pgd, + .numpages = numpages, + .mask_set = __pgprot(0), + .mask_clr = __pgprot(0), + .flags = 0, + }; + + if (!(__supported_pte_mask & _PAGE_NX)) + goto out; + + if (!(page_flags & _PAGE_NX)) + cpa.mask_clr = __pgprot(_PAGE_NX); + + cpa.mask_set = __pgprot(_PAGE_PRESENT | page_flags); + + retval = __change_page_attr_set_clr(&cpa, 0); + __flush_tlb_all(); + +out: + return retval; +} + /* * The testcases use internal knowledge of the implementation that shouldn't * be exposed to the rest of the kernel. Include these directly here. --- linux-3.13.0.orig/arch/x86/net/bpf_jit.S +++ linux-3.13.0/arch/x86/net/bpf_jit.S @@ -140,7 +140,7 @@ push %r9; \ push SKBDATA; \ /* rsi already has offset */ \ - mov $SIZE,%ecx; /* size */ \ + mov $SIZE,%edx; /* size */ \ call bpf_internal_load_pointer_neg_helper; \ test %rax,%rax; \ pop SKBDATA; \ --- linux-3.13.0.orig/arch/x86/platform/efi/efi.c +++ linux-3.13.0/arch/x86/platform/efi/efi.c @@ -12,6 +12,8 @@ * Bibo Mao * Chandramouli Narayanan * Huang Ying + * Copyright (C) 2013 SuSE Labs + * Borislav Petkov - runtime services VA mapping * * Copied from efi_32.c to eliminate the duplicated code between EFI * 32/64 support code. --ying 2007-10-26 @@ -436,7 +438,7 @@ * - Not within any part of the kernel * - Not the bios reserved area */ - if ((start+size >= __pa_symbol(_text) + if ((start + size > __pa_symbol(_text) && start <= __pa_symbol(_end)) || !e820_all_mapped(start, start+size, E820_RAM) || memblock_is_region_reserved(start, size)) { @@ -715,7 +717,7 @@ set_memory_nx(addr, npages); } -static void __init runtime_code_page_mkexec(void) +void __init runtime_code_page_mkexec(void) { efi_memory_desc_t *md; void *p; @@ -741,21 +743,56 @@ set_memory_uc(addr, npages); } +void __init old_map_region(efi_memory_desc_t *md) +{ + u64 start_pfn, end_pfn, end; + unsigned long size; + void *va; + + start_pfn = PFN_DOWN(md->phys_addr); + size = md->num_pages << PAGE_SHIFT; + end = md->phys_addr + size; + end_pfn = PFN_UP(end); + + if (pfn_range_is_mapped(start_pfn, end_pfn)) { + va = __va(md->phys_addr); + + if (!(md->attribute & EFI_MEMORY_WB)) + efi_memory_uc((u64)(unsigned long)va, size); + } else + va = efi_ioremap(md->phys_addr, size, + md->type, md->attribute); + + md->virt_addr = (u64) (unsigned long) va; + if (!va) + pr_err("ioremap of 0x%llX failed!\n", + (unsigned long long)md->phys_addr); +} + /* * This function will switch the EFI runtime services to virtual mode. - * Essentially, look through the EFI memmap and map every region that - * has the runtime attribute bit set in its memory descriptor and update - * that memory descriptor with the virtual address obtained from ioremap(). - * This enables the runtime services to be called without having to + * Essentially, we look through the EFI memmap and map every region that + * has the runtime attribute bit set in its memory descriptor into the + * ->trampoline_pgd page table using a top-down VA allocation scheme. + * + * The old method which used to update that memory descriptor with the + * virtual address obtained from ioremap() is still supported when the + * kernel is booted with efi=old_map on its command line. Same old + * method enabled the runtime services to be called without having to * thunk back into physical mode for every invocation. + * + * The new method does a pagetable switch in a preemption-safe manner + * so that we're in a different address space when calling a runtime + * function. For function arguments passing we do copy the PGDs of the + * kernel page table into ->trampoline_pgd prior to each call. */ void __init efi_enter_virtual_mode(void) { efi_memory_desc_t *md, *prev_md = NULL; - efi_status_t status; + void *p, *new_memmap = NULL; unsigned long size; - u64 end, systab, start_pfn, end_pfn; - void *p, *va, *new_memmap = NULL; + efi_status_t status; + u64 end, systab; int count = 0; efi.systab = NULL; @@ -764,7 +801,6 @@ * We don't do virtual mode, since we don't do runtime services, on * non-native EFI */ - if (!efi_is_native()) { efi_unmap_memmap(); return; @@ -795,6 +831,7 @@ continue; } prev_md = md; + } for (p = memmap.map; p < memmap.map_end; p += memmap.desc_size) { @@ -807,36 +844,24 @@ continue; } + efi_map_region(md); + size = md->num_pages << EFI_PAGE_SHIFT; end = md->phys_addr + size; - start_pfn = PFN_DOWN(md->phys_addr); - end_pfn = PFN_UP(end); - if (pfn_range_is_mapped(start_pfn, end_pfn)) { - va = __va(md->phys_addr); - - if (!(md->attribute & EFI_MEMORY_WB)) - efi_memory_uc((u64)(unsigned long)va, size); - } else - va = efi_ioremap(md->phys_addr, size, - md->type, md->attribute); - - md->virt_addr = (u64) (unsigned long) va; - - if (!va) { - pr_err("ioremap of 0x%llX failed!\n", - (unsigned long long)md->phys_addr); - continue; - } - systab = (u64) (unsigned long) efi_phys.systab; if (md->phys_addr <= systab && systab < end) { systab += md->virt_addr - md->phys_addr; + efi.systab = (efi_system_table_t *) (unsigned long) systab; } + new_memmap = krealloc(new_memmap, (count + 1) * memmap.desc_size, GFP_KERNEL); + if (!new_memmap) + goto err_out; + memcpy(new_memmap + (count * memmap.desc_size), md, memmap.desc_size); count++; @@ -844,6 +869,9 @@ BUG_ON(!efi.systab); + efi_setup_page_tables(); + efi_sync_low_kernel_mappings(); + status = phys_efi_set_virtual_address_map( memmap.desc_size * count, memmap.desc_size, @@ -876,8 +904,8 @@ efi.query_variable_info = virt_efi_query_variable_info; efi.update_capsule = virt_efi_update_capsule; efi.query_capsule_caps = virt_efi_query_capsule_caps; - if (__supported_pte_mask & _PAGE_NX) - runtime_code_page_mkexec(); + + efi_runtime_mkexec(); kfree(new_memmap); @@ -887,6 +915,11 @@ EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS, 0, NULL); + + return; + + err_out: + pr_err("Error reallocating memory, EFI runtime non-functional!\n"); } /* @@ -1006,3 +1039,15 @@ return EFI_SUCCESS; } EXPORT_SYMBOL_GPL(efi_query_variable_store); + +static int __init parse_efi_cmdline(char *str) +{ + if (*str == '=') + str++; + + if (!strncmp(str, "old_map", 7)) + set_bit(EFI_OLD_MEMMAP, &x86_efi_facility); + + return 0; +} +early_param("efi", parse_efi_cmdline); --- linux-3.13.0.orig/arch/x86/platform/efi/efi_32.c +++ linux-3.13.0/arch/x86/platform/efi/efi_32.c @@ -37,9 +37,16 @@ * claim EFI runtime service handler exclusively and to duplicate a memory in * low memory space say 0 - 3G. */ - static unsigned long efi_rt_eflags; +void efi_sync_low_kernel_mappings(void) {} +void efi_setup_page_tables(void) {} + +void __init efi_map_region(efi_memory_desc_t *md) +{ + old_map_region(md); +} + void efi_call_phys_prelog(void) { struct desc_ptr gdt_descr; @@ -67,3 +74,9 @@ local_irq_restore(efi_rt_eflags); } + +void __init efi_runtime_mkexec(void) +{ + if (__supported_pte_mask & _PAGE_NX) + runtime_code_page_mkexec(); +} --- linux-3.13.0.orig/arch/x86/platform/efi/efi_64.c +++ linux-3.13.0/arch/x86/platform/efi/efi_64.c @@ -38,10 +38,28 @@ #include #include #include +#include static pgd_t *save_pgd __initdata; static unsigned long efi_flags __initdata; +/* + * We allocate runtime services regions bottom-up, starting from -4G, i.e. + * 0xffff_ffff_0000_0000 and limit EFI VA mapping space to 64G. + */ +static u64 efi_va = -4 * (1UL << 30); +#define EFI_VA_END (-68 * (1UL << 30)) + +/* + * Scratch space used for switching the pagetable in the EFI stub + */ +struct efi_scratch { + u64 r15; + u64 prev_cr3; + pgd_t *efi_pgt; + bool use_pgd; +}; + static void __init early_code_mapping_set_exec(int executable) { efi_memory_desc_t *md; @@ -65,6 +83,9 @@ int pgd; int n_pgds; + if (!efi_enabled(EFI_OLD_MEMMAP)) + return; + early_code_mapping_set_exec(1); local_irq_save(efi_flags); @@ -86,6 +107,10 @@ */ int pgd; int n_pgds = DIV_ROUND_UP((max_pfn << PAGE_SHIFT) , PGDIR_SIZE); + + if (!efi_enabled(EFI_OLD_MEMMAP)) + return; + for (pgd = 0; pgd < n_pgds; pgd++) set_pgd(pgd_offset_k(pgd * PGDIR_SIZE), save_pgd[pgd]); kfree(save_pgd); @@ -94,6 +119,90 @@ early_code_mapping_set_exec(0); } +/* + * Add low kernel mappings for passing arguments to EFI functions. + */ +void efi_sync_low_kernel_mappings(void) +{ + unsigned num_pgds; + pgd_t *pgd = (pgd_t *)__va(real_mode_header->trampoline_pgd); + + if (efi_enabled(EFI_OLD_MEMMAP)) + return; + + num_pgds = pgd_index(MODULES_END - 1) - pgd_index(PAGE_OFFSET); + + memcpy(pgd + pgd_index(PAGE_OFFSET), + init_mm.pgd + pgd_index(PAGE_OFFSET), + sizeof(pgd_t) * num_pgds); +} + +void efi_setup_page_tables(void) +{ + efi_scratch.efi_pgt = (pgd_t *)(unsigned long)real_mode_header->trampoline_pgd; + + if (!efi_enabled(EFI_OLD_MEMMAP)) + efi_scratch.use_pgd = true; +} + +static void __init __map_region(efi_memory_desc_t *md, u64 va) +{ + pgd_t *pgd = (pgd_t *)__va(real_mode_header->trampoline_pgd); + unsigned long pf = 0, size; + u64 end; + + if (!(md->attribute & EFI_MEMORY_WB)) + pf |= _PAGE_PCD; + + size = md->num_pages << PAGE_SHIFT; + end = va + size; + + if (kernel_map_pages_in_pgd(pgd, md->phys_addr, va, md->num_pages, pf)) + pr_warn("Error mapping PA 0x%llx -> VA 0x%llx!\n", + md->phys_addr, va); +} + +void __init efi_map_region(efi_memory_desc_t *md) +{ + unsigned long size = md->num_pages << PAGE_SHIFT; + u64 pa = md->phys_addr; + + if (efi_enabled(EFI_OLD_MEMMAP)) + return old_map_region(md); + + /* + * Make sure the 1:1 mappings are present as a catch-all for b0rked + * firmware which doesn't update all internal pointers after switching + * to virtual mode and would otherwise crap on us. + */ + __map_region(md, md->phys_addr); + + efi_va -= size; + + /* Is PA 2M-aligned? */ + if (!(pa & (PMD_SIZE - 1))) { + efi_va &= PMD_MASK; + } else { + u64 pa_offset = pa & (PMD_SIZE - 1); + u64 prev_va = efi_va; + + /* get us the same offset within this 2M page */ + efi_va = (efi_va & PMD_MASK) + pa_offset; + + if (efi_va > prev_va) + efi_va -= PMD_SIZE; + } + + if (efi_va < EFI_VA_END) { + pr_warn(FW_WARN "VA address range overflow!\n"); + return; + } + + /* Do the VA map */ + __map_region(md, efi_va); + md->virt_addr = efi_va; +} + void __iomem *__init efi_ioremap(unsigned long phys_addr, unsigned long size, u32 type, u64 attribute) { @@ -113,3 +222,12 @@ return (void __iomem *)__va(phys_addr); } + +void __init efi_runtime_mkexec(void) +{ + if (!efi_enabled(EFI_OLD_MEMMAP)) + return; + + if (__supported_pte_mask & _PAGE_NX) + runtime_code_page_mkexec(); +} --- linux-3.13.0.orig/arch/x86/platform/efi/efi_stub_64.S +++ linux-3.13.0/arch/x86/platform/efi/efi_stub_64.S @@ -34,10 +34,47 @@ mov %rsi, %cr0; \ mov (%rsp), %rsp + /* stolen from gcc */ + .macro FLUSH_TLB_ALL + movq %r15, efi_scratch(%rip) + movq %r14, efi_scratch+8(%rip) + movq %cr4, %r15 + movq %r15, %r14 + andb $0x7f, %r14b + movq %r14, %cr4 + movq %r15, %cr4 + movq efi_scratch+8(%rip), %r14 + movq efi_scratch(%rip), %r15 + .endm + + .macro SWITCH_PGT + cmpb $0, efi_scratch+24(%rip) + je 1f + movq %r15, efi_scratch(%rip) # r15 + # save previous CR3 + movq %cr3, %r15 + movq %r15, efi_scratch+8(%rip) # prev_cr3 + movq efi_scratch+16(%rip), %r15 # EFI pgt + movq %r15, %cr3 + 1: + .endm + + .macro RESTORE_PGT + cmpb $0, efi_scratch+24(%rip) + je 2f + movq efi_scratch+8(%rip), %r15 + movq %r15, %cr3 + movq efi_scratch(%rip), %r15 + FLUSH_TLB_ALL + 2: + .endm + ENTRY(efi_call0) SAVE_XMM subq $32, %rsp + SWITCH_PGT call *%rdi + RESTORE_PGT addq $32, %rsp RESTORE_XMM ret @@ -47,7 +84,9 @@ SAVE_XMM subq $32, %rsp mov %rsi, %rcx + SWITCH_PGT call *%rdi + RESTORE_PGT addq $32, %rsp RESTORE_XMM ret @@ -57,7 +96,9 @@ SAVE_XMM subq $32, %rsp mov %rsi, %rcx + SWITCH_PGT call *%rdi + RESTORE_PGT addq $32, %rsp RESTORE_XMM ret @@ -68,7 +109,9 @@ subq $32, %rsp mov %rcx, %r8 mov %rsi, %rcx + SWITCH_PGT call *%rdi + RESTORE_PGT addq $32, %rsp RESTORE_XMM ret @@ -80,7 +123,9 @@ mov %r8, %r9 mov %rcx, %r8 mov %rsi, %rcx + SWITCH_PGT call *%rdi + RESTORE_PGT addq $32, %rsp RESTORE_XMM ret @@ -93,7 +138,9 @@ mov %r8, %r9 mov %rcx, %r8 mov %rsi, %rcx + SWITCH_PGT call *%rdi + RESTORE_PGT addq $48, %rsp RESTORE_XMM ret @@ -109,8 +156,15 @@ mov %r8, %r9 mov %rcx, %r8 mov %rsi, %rcx + SWITCH_PGT call *%rdi + RESTORE_PGT addq $48, %rsp RESTORE_XMM ret ENDPROC(efi_call6) + + .data +ENTRY(efi_scratch) + .fill 3,8,0 + .byte 0 --- linux-3.13.0.orig/arch/x86/xen/platform-pci-unplug.c +++ linux-3.13.0/arch/x86/xen/platform-pci-unplug.c @@ -69,6 +69,80 @@ return 0; } +bool xen_has_pv_devices() +{ + if (!xen_domain()) + return false; + + /* PV domains always have them. */ + if (xen_pv_domain()) + return true; + + /* And user has xen_platform_pci=0 set in guest config as + * driver did not modify the value. */ + if (xen_platform_pci_unplug == 0) + return false; + + if (xen_platform_pci_unplug & XEN_UNPLUG_NEVER) + return false; + + if (xen_platform_pci_unplug & XEN_UNPLUG_ALL) + return true; + + /* This is an odd one - we are going to run legacy + * and PV drivers at the same time. */ + if (xen_platform_pci_unplug & XEN_UNPLUG_UNNECESSARY) + return true; + + /* And the caller has to follow with xen_pv_{disk,nic}_devices + * to be certain which driver can load. */ + return false; +} +EXPORT_SYMBOL_GPL(xen_has_pv_devices); + +static bool __xen_has_pv_device(int state) +{ + /* HVM domains might or might not */ + if (xen_hvm_domain() && (xen_platform_pci_unplug & state)) + return true; + + return xen_has_pv_devices(); +} + +bool xen_has_pv_nic_devices(void) +{ + return __xen_has_pv_device(XEN_UNPLUG_ALL_NICS | XEN_UNPLUG_ALL); +} +EXPORT_SYMBOL_GPL(xen_has_pv_nic_devices); + +bool xen_has_pv_disk_devices(void) +{ + return __xen_has_pv_device(XEN_UNPLUG_ALL_IDE_DISKS | + XEN_UNPLUG_AUX_IDE_DISKS | XEN_UNPLUG_ALL); +} +EXPORT_SYMBOL_GPL(xen_has_pv_disk_devices); + +/* + * This one is odd - it determines whether you want to run PV _and_ + * legacy (IDE) drivers together. This combination is only possible + * under HVM. + */ +bool xen_has_pv_and_legacy_disk_devices(void) +{ + if (!xen_domain()) + return false; + + /* N.B. This is only ever used in HVM mode */ + if (xen_pv_domain()) + return false; + + if (xen_platform_pci_unplug & XEN_UNPLUG_UNNECESSARY) + return true; + + return false; +} +EXPORT_SYMBOL_GPL(xen_has_pv_and_legacy_disk_devices); + void xen_unplug_emulated_devices(void) { int r; --- linux-3.13.0.orig/arch/xtensa/include/asm/traps.h +++ linux-3.13.0/arch/xtensa/include/asm/traps.h @@ -22,25 +22,37 @@ static inline void spill_registers(void) { - +#if XCHAL_NUM_AREGS > 16 __asm__ __volatile__ ( - "movi a14, "__stringify((1 << PS_EXCM_BIT) | LOCKLEVEL)"\n\t" - "mov a12, a0\n\t" - "rsr a13, sar\n\t" - "xsr a14, ps\n\t" - "movi a0, _spill_registers\n\t" - "rsync\n\t" - "callx0 a0\n\t" - "mov a0, a12\n\t" - "wsr a13, sar\n\t" - "wsr a14, ps\n\t" - : : -#if defined(CONFIG_FRAME_POINTER) - : "a2", "a3", "a4", "a11", "a12", "a13", "a14", "a15", + " call12 1f\n" + " _j 2f\n" + " retw\n" + " .align 4\n" + "1:\n" + " _entry a1, 48\n" + " addi a12, a0, 3\n" +#if XCHAL_NUM_AREGS > 32 + " .rept (" __stringify(XCHAL_NUM_AREGS) " - 32) / 12\n" + " _entry a1, 48\n" + " mov a12, a0\n" + " .endr\n" +#endif + " _entry a1, 48\n" +#if XCHAL_NUM_AREGS % 12 == 0 + " mov a8, a8\n" +#elif XCHAL_NUM_AREGS % 12 == 4 + " mov a12, a12\n" +#elif XCHAL_NUM_AREGS % 12 == 8 + " mov a4, a4\n" +#endif + " retw\n" + "2:\n" + : : : "a12", "a13", "memory"); #else - : "a2", "a3", "a4", "a7", "a11", "a12", "a13", "a14", "a15", + __asm__ __volatile__ ( + " mov a12, a12\n" + : : : "memory"); #endif - "memory"); } #endif /* _XTENSA_TRAPS_H */ --- linux-3.13.0.orig/arch/xtensa/kernel/entry.S +++ linux-3.13.0/arch/xtensa/kernel/entry.S @@ -1117,6 +1117,13 @@ * We basically restore WINDOWBASE and WINDOWSTART to the condition when * we entered the spill routine and jump to the user exception handler. * + * Note that we only need to restore the bits in windowstart that have not + * been spilled yet by the _spill_register routine. Luckily, a3 contains a + * rotated windowstart with only those bits set for frames that haven't been + * spilled yet. Because a3 is rotated such that bit 0 represents the register + * frame for the current windowbase - 1, we need to rotate a3 left by the + * value of the current windowbase + 1 and move it to windowstart. + * * a0: value of depc, original value in depc * a2: trashed, original value in EXC_TABLE_DOUBLE_SAVE * a3: exctable, original value in excsave1 @@ -1131,10 +1138,15 @@ /* We need to make sure the current registers (a0-a3) are preserved. * To do this, we simply set the bit for the current window frame * in WS, so that the exception handlers save them to the task stack. + * + * Note: we use a3 to set the windowbase, so we take a special care + * of it, saving it in the original _spill_registers frame across + * the exception handler call. */ xsr a3, excsave1 # get spill-mask slli a3, a3, 1 # shift left by one + addi a3, a3, 1 # set the bit for the current window frame slli a2, a3, 32-WSBITS src a2, a3, a2 # a2 = xxwww1yyxxxwww1yy...... @@ -1794,6 +1806,43 @@ ENDPROC(system_call) +/* + * Spill live registers on the kernel stack macro. + * + * Entry condition: ps.woe is set, ps.excm is cleared + * Exit condition: windowstart has single bit set + * May clobber: a12, a13 + */ + .macro spill_registers_kernel + +#if XCHAL_NUM_AREGS > 16 + call12 1f + _j 2f + retw + .align 4 +1: + _entry a1, 48 + addi a12, a0, 3 +#if XCHAL_NUM_AREGS > 32 + .rept (XCHAL_NUM_AREGS - 32) / 12 + _entry a1, 48 + mov a12, a0 + .endr +#endif + _entry a1, 48 +#if XCHAL_NUM_AREGS % 12 == 0 + mov a8, a8 +#elif XCHAL_NUM_AREGS % 12 == 4 + mov a12, a12 +#elif XCHAL_NUM_AREGS % 12 == 8 + mov a4, a4 +#endif + retw +2: +#else + mov a12, a12 +#endif + .endm /* * Task switch. @@ -1806,21 +1855,20 @@ entry a1, 16 - mov a12, a2 # preserve 'prev' (a2) - mov a13, a3 # and 'next' (a3) + mov a10, a2 # preserve 'prev' (a2) + mov a11, a3 # and 'next' (a3) l32i a4, a2, TASK_THREAD_INFO l32i a5, a3, TASK_THREAD_INFO - save_xtregs_user a4 a6 a8 a9 a10 a11 THREAD_XTREGS_USER + save_xtregs_user a4 a6 a8 a9 a12 a13 THREAD_XTREGS_USER - s32i a0, a12, THREAD_RA # save return address - s32i a1, a12, THREAD_SP # save stack pointer + s32i a0, a10, THREAD_RA # save return address + s32i a1, a10, THREAD_SP # save stack pointer /* Disable ints while we manipulate the stack pointer. */ - movi a14, (1 << PS_EXCM_BIT) | LOCKLEVEL - xsr a14, ps + rsil a14, LOCKLEVEL rsr a3, excsave1 rsync s32i a3, a3, EXC_TABLE_FIXUP /* enter critical section */ @@ -1835,7 +1883,7 @@ /* Flush register file. */ - call0 _spill_registers # destroys a3, a4, and SAR + spill_registers_kernel /* Set kernel stack (and leave critical section) * Note: It's save to set it here. The stack will not be overwritten @@ -1851,13 +1899,13 @@ /* restore context of the task 'next' */ - l32i a0, a13, THREAD_RA # restore return address - l32i a1, a13, THREAD_SP # restore stack pointer + l32i a0, a11, THREAD_RA # restore return address + l32i a1, a11, THREAD_SP # restore stack pointer - load_xtregs_user a5 a6 a8 a9 a10 a11 THREAD_XTREGS_USER + load_xtregs_user a5 a6 a8 a9 a12 a13 THREAD_XTREGS_USER wsr a14, ps - mov a2, a12 # return 'prev' + mov a2, a10 # return 'prev' rsync retw --- linux-3.13.0.orig/arch/xtensa/platforms/xtfpga/setup.c +++ linux-3.13.0/arch/xtensa/platforms/xtfpga/setup.c @@ -194,7 +194,7 @@ * Ethernet -- OpenCores Ethernet MAC (ethoc driver) */ -static struct resource ethoc_res[] __initdata = { +static struct resource ethoc_res[] = { [0] = { /* register space */ .start = OETH_REGS_PADDR, .end = OETH_REGS_PADDR + OETH_REGS_SIZE - 1, @@ -212,7 +212,7 @@ }, }; -static struct ethoc_platform_data ethoc_pdata __initdata = { +static struct ethoc_platform_data ethoc_pdata = { /* * The MAC address for these boards is 00:50:c2:13:6f:xx. * The last byte (here as zero) is read from the DIP switches on the @@ -222,7 +222,7 @@ .phy_id = -1, }; -static struct platform_device ethoc_device __initdata = { +static struct platform_device ethoc_device = { .name = "ethoc", .id = -1, .num_resources = ARRAY_SIZE(ethoc_res), @@ -236,13 +236,13 @@ * UART */ -static struct resource serial_resource __initdata = { +static struct resource serial_resource = { .start = DUART16552_PADDR, .end = DUART16552_PADDR + 0x1f, .flags = IORESOURCE_MEM, }; -static struct plat_serial8250_port serial_platform_data[] __initdata = { +static struct plat_serial8250_port serial_platform_data[] = { [0] = { .mapbase = DUART16552_PADDR, .irq = DUART16552_INTNUM, @@ -255,7 +255,7 @@ { }, }; -static struct platform_device xtavnet_uart __initdata = { +static struct platform_device xtavnet_uart = { .name = "serial8250", .id = PLAT8250_DEV_PLATFORM, .dev = { --- linux-3.13.0.orig/block/blk-core.c +++ linux-3.13.0/block/blk-core.c @@ -2325,7 +2325,7 @@ if (!req->bio) return false; - trace_block_rq_complete(req->q, req); + trace_block_rq_complete(req->q, req, nr_bytes); /* * For fs requests, rq is just carrier of independent bio's --- linux-3.13.0.orig/block/blk-lib.c +++ linux-3.13.0/block/blk-lib.c @@ -119,6 +119,14 @@ atomic_inc(&bb.done); submit_bio(type, bio); + + /* + * We can loop for a long time in here, if someone does + * full device discards (like mkfs). Be nice and allow + * us to schedule out to avoid softlocking if preempt + * is disabled. + */ + cond_resched(); } blk_finish_plug(&plug); --- linux-3.13.0.orig/block/blk-mq-tag.c +++ linux-3.13.0/block/blk-mq-tag.c @@ -36,7 +36,8 @@ { int tag; - tag = percpu_ida_alloc(&tags->free_tags, gfp); + tag = percpu_ida_alloc(&tags->free_tags, (gfp & __GFP_WAIT) ? + TASK_UNINTERRUPTIBLE : TASK_RUNNING); if (tag < 0) return BLK_MQ_TAG_FAIL; return tag + tags->nr_reserved_tags; @@ -52,7 +53,8 @@ return BLK_MQ_TAG_FAIL; } - tag = percpu_ida_alloc(&tags->reserved_tags, gfp); + tag = percpu_ida_alloc(&tags->reserved_tags, (gfp & __GFP_WAIT) ? + TASK_UNINTERRUPTIBLE : TASK_RUNNING); if (tag < 0) return BLK_MQ_TAG_FAIL; return tag; --- linux-3.13.0.orig/block/blk-mq.c +++ linux-3.13.0/block/blk-mq.c @@ -299,7 +299,7 @@ struct bio *bio = rq->bio; unsigned int bytes = 0; - trace_block_rq_complete(rq->q, rq); + trace_block_rq_complete(rq->q, rq, blk_rq_bytes(rq)); while (bio) { struct bio *next = bio->bi_next; --- linux-3.13.0.orig/block/blk.h +++ linux-3.13.0/block/blk.h @@ -113,7 +113,7 @@ q->flush_queue_delayed = 1; return NULL; } - if (unlikely(blk_queue_dying(q)) || + if (unlikely(blk_queue_bypass(q)) || !q->elevator->type->ops.elevator_dispatch_fn(q, 0)) return NULL; } --- linux-3.13.0.orig/block/scsi_ioctl.c +++ linux-3.13.0/block/scsi_ioctl.c @@ -28,6 +28,9 @@ #include #include #include +#include +#include +#include #include #include @@ -692,8 +695,17 @@ case SG_GET_RESERVED_SIZE: case SG_SET_RESERVED_SIZE: case SG_EMULATED_HOST: + case BLKFLSBUF: + case BLKROSET: return 0; case CDROM_GET_CAPABILITY: + case CDROM_DRIVE_STATUS: + case FDGETPRM: + case RAID_VERSION: + case MTIOCGET: +#ifdef CONFIG_COMPAT + case 0x801c6d02: /* MTIOCGET32 */ +#endif /* Keep this until we remove the printk below. udev sends it * and we do not want to spam dmesg about it. CD-ROMs do * not have partitions, so we get here only for disks. --- linux-3.13.0.orig/debian.master/NOTES +++ linux-3.13.0/debian.master/NOTES @@ -0,0 +1,4 @@ +eSCO patch removed. Replaced upstream with a disable_esco module parm. +airprime: Module gone, use option driver instead +AppArmor: Patch is all there and ported. Ooops when enabled, so default + off (still can be enabled apparmor=1) --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/abiname +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/abiname @@ -0,0 +1 @@ +29 --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/amd64/generic +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/amd64/generic @@ -0,0 +1,17415 @@ +EXPORT_SYMBOL arch/x86/kvm/kvm 0x54005ac7 kvm_cpu_has_pending_timer +EXPORT_SYMBOL arch/x86/kvm/kvm 0xea58dbbd kvm_read_guest_atomic +EXPORT_SYMBOL crypto/gf128mul 0x0c2f123f gf128mul_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x1068004b gf128mul_bbe +EXPORT_SYMBOL crypto/gf128mul 0x2f2889a0 gf128mul_init_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x384ef9ce gf128mul_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x56af0dbd gf128mul_x_ble +EXPORT_SYMBOL crypto/gf128mul 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL crypto/gf128mul 0xbd17a0df gf128mul_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0xc0890413 gf128mul_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/acpi/video 0x7a45377b acpi_video_unregister +EXPORT_SYMBOL drivers/acpi/video 0x8826c13b acpi_video_register +EXPORT_SYMBOL drivers/acpi/video 0xf213f9b1 acpi_video_get_edid +EXPORT_SYMBOL drivers/atm/suni 0x8c7b048d suni_init +EXPORT_SYMBOL drivers/atm/uPD98402 0x8df6e446 uPD98402_init +EXPORT_SYMBOL drivers/bcma/bcma 0x68cba379 bcma_core_dma_translation +EXPORT_SYMBOL drivers/block/drbd/drbd 0x127a5901 drbd_set_st_err_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x35131b36 drbd_role_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x7730f22d drbd_conn_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0xaf27bebf drbd_disk_str +EXPORT_SYMBOL drivers/block/paride/paride 0x03a8ca63 pi_read_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x1c89b698 paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0x20030a5f pi_write_block +EXPORT_SYMBOL drivers/block/paride/paride 0x22b469cd pi_disconnect +EXPORT_SYMBOL drivers/block/paride/paride 0x6855032b pi_release +EXPORT_SYMBOL drivers/block/paride/paride 0x798fbeee pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0x7e3a393f pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xa7acd1e4 pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0xaa425cb7 pi_write_regr +EXPORT_SYMBOL drivers/block/paride/paride 0xb65c6a41 pi_init +EXPORT_SYMBOL drivers/block/paride/paride 0xbf4a1597 pi_read_block +EXPORT_SYMBOL drivers/block/paride/paride 0xe65ed52e paride_unregister +EXPORT_SYMBOL drivers/char/nvram 0x0f28cb91 nvram_read_byte +EXPORT_SYMBOL drivers/char/nvram 0x17ff2c1d __nvram_read_byte +EXPORT_SYMBOL drivers/char/nvram 0x2adec1e0 __nvram_check_checksum +EXPORT_SYMBOL drivers/char/nvram 0x7da28f12 nvram_check_checksum +EXPORT_SYMBOL drivers/char/nvram 0x9ce3f83f nvram_write_byte +EXPORT_SYMBOL drivers/char/nvram 0xa8813189 __nvram_write_byte +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x2daaefac dw_dma_cyclic_free +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x30c40757 dw_dma_cyclic_stop +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xbb585b9c dw_dma_cyclic_start +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xdfdcc74c dw_dma_cyclic_prep +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xe913a3a2 dw_dma_get_dst_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xeffae7e1 dw_dma_get_src_addr +EXPORT_SYMBOL drivers/dma/ioat/ioatdma 0x9a8443f7 ioat_dma_setup_interrupts +EXPORT_SYMBOL drivers/edac/edac_core 0xa1e13616 edac_mc_find +EXPORT_SYMBOL drivers/firewire/firewire-core 0x04d0f641 fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0e4bbb59 fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0f7d6af8 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x16e91e21 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0x17025fec fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1a45c5f0 fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1d3432b4 fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2b7a8212 fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3bdb67d7 fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3c56ef91 fw_workqueue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3f6cf9b5 fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4dcb7a59 fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x615e60bc fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0x645b715f fw_core_add_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x65c9438b fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6d4f7527 fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9011f404 fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x90863005 fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0x933c7692 fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x97dedd8c fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9d5c00af fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9df81301 fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa880bfaa fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa8de14e1 fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc1b09246 fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc303c075 fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd4837fd0 fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0xda18ec89 fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0xdc52ee05 fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xdc819441 fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe8b689f2 fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xec4ba70e fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf472f67e fw_bus_type +EXPORT_SYMBOL drivers/firmware/dcdbas 0xa75079d6 dcdbas_smi_request +EXPORT_SYMBOL drivers/fmc/fmc 0x208ca412 fmc_reprogram +EXPORT_SYMBOL drivers/fmc/fmc 0x515868e6 fmc_device_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0x66d6d53c fmc_driver_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0x89ba34fc fmc_driver_register +EXPORT_SYMBOL drivers/fmc/fmc 0x8cba4f70 fmc_show_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xca6cc31f fmc_device_unregister_n +EXPORT_SYMBOL drivers/fmc/fmc 0xdf7a55f0 fmc_scan_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xe7a0e638 fmc_find_sdb_device +EXPORT_SYMBOL drivers/fmc/fmc 0xeb8df9fc fmc_device_register +EXPORT_SYMBOL drivers/fmc/fmc 0xedf6ecd5 fmc_device_register_n +EXPORT_SYMBOL drivers/fmc/fmc 0xfa159d09 fmc_free_sdb_tree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00025916 drm_mode_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00667d8a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0133771d drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x026c0d6b drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0350d4a2 drm_core_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03cf41e1 drm_core_reclaim_buffers +EXPORT_SYMBOL drivers/gpu/drm/drm 0x040aefdf drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0424c52f drm_mode_create_dirty_info_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0440645f drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0603d38a drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x09376531 drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0x094caf58 drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x09a0cc8c drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ae4b94c drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0bcd5742 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12677596 drm_pci_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x128d5702 drm_agp_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12c6276a drm_buffer_read_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x142b8b35 drm_buffer_copy_from_user +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a9a178 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x150bfa83 drm_sysfs_connector_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x152e30d8 drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x170a3ab8 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x180a8f33 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x189f6401 drm_mm_debug_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x194eadaa drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19e44324 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a770ac3 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a7abfd9 drm_pci_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a8a7e61 drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1c95bae2 drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1ccecaff drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1ceb09ae drm_get_connector_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1d2d158f drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e5d7ce4 drm_rmmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20645642 drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20b37c60 drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2184f1a9 drm_agp_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x218a6651 drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22ecdaa4 drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x230ef7d1 drm_agp_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x24d4f7d3 drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25f553c0 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x26143970 drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x26d96179 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2710b78c drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0x27a31368 drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x28884058 drm_vblank_post_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a942ab2 drm_mm_insert_node_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d80be4d drm_mm_init_scan +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7a4300 drm_rgb_quant_range_selectable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7ba41d drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f8103ec drm_crtc_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x31c42734 drm_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x326fba4a drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3299f55e drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x331dcfbc drm_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x332020c3 drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36c122f2 drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36f91ef3 drm_mm_clean +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38a4f7ae drm_format_num_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ac1fef9 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ae7b2d0 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b9d009a drm_format_plane_cpp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3bf97e83 drm_mode_connector_detach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c952223 drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ce70aea drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d4b8108 drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eb37b9d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3f25d6d2 drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x40440b1b drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x41232571 drm_select_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x418c2468 drm_platform_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x41cf7973 drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x426372d9 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43384bd9 drm_buffer_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43c8b5b0 drm_ati_pcigart_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44f7222b drm_edid_to_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48a38c2e drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48f606d4 drm_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x498dcb5e drm_ut_debug_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49fabf0d drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4a2ac7b4 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4bf604d3 drm_agp_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c511235 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d79e187 drm_sysfs_connector_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ea1f5a2 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4eee1d01 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e28c07 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0x523309bd drm_core_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x526f6f71 drm_rect_calc_hscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57517a28 drm_addbufs_pci +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5878f125 drm_getsarea +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59a30fd7 drm_connector_unplug_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5a66b3cf drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d7318dc drm_global_item_ref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e2de84d drm_get_last_vbltimestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6090be61 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x617d051b drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0x629c05e1 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x640a5848 drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66803841 drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0x669e7717 drm_dev_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x68659475 drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6900d335 drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x69fb72c4 drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b6d7375 drm_timestamp_precision +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c6336b9 drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cc3c29e drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cee2e42 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e75ab7b drm_pci_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6eca7968 drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f08acc3 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x706ab9fa drm_agp_bind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x711ad614 drm_agp_unbind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x725ea741 drm_agp_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x72fb0ae5 drm_mode_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7421a443 drm_bridge_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75e21155 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7785a198 drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x78a2e7b4 drm_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a4e7297 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e2fbe15 drm_agp_bind_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e92a8b8 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80deab47 drm_vblank_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8151923d drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81ba930c drm_mm_init_scan_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81c2a73b drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81e773e4 drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x827d285a drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x84c0debc drm_compat_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x88c0863c drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x896f2ff8 drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x89beb326 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8de13715 drm_format_vert_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dfb019d drm_buffer_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8e759ada drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8eae4746 drm_mm_dump_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8eff9111 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f7df3a7 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x90e602d2 drm_get_pci_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91a6cddd drm_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x956f4713 drm_platform_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x957b6be9 drm_core_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95c6394e drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x960d178e drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9745d638 drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0x98a246fa drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9972db48 drm_rect_calc_vscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b54cee3 drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9c79fbfe drm_prime_destroy_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9c992d7f drm_rmmap_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d70fc2a drm_rnodes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e4eb0e9 drm_pcie_get_speed_cap_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9eccfe56 drm_mode_hsync +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9f8e0a93 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9f8f1f38 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1014ff4 drm_mode_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa155fbc6 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1f4e9e6 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa28078b2 drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3584f02 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3a02e8c drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5dbd572 drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa602435f drm_addmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6902f65 drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6bdee56 drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6c8e6b7 drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa72cb724 drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8ab5857 drm_calc_vbltimestamp_from_scanoutpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa96acfcb drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaab2eb47 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaad9938a drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac2870db drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad70578e drm_agp_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad75b154 drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafb0cb6f drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafd51394 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafea702d drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0155515 drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0cdf619 drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb1ce6038 drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb1faabf3 drm_get_encoder_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb2be9f41 drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb37074b2 drm_mode_group_init_legacy_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5540008 drm_global_item_unref +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb572a9f0 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5be7860 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb759ec4d drm_vblank_pre_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb95beb55 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb997dbfc drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbaaad4b0 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe001c53 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc01201e1 drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc18441a3 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4000f9f drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc414c422 drm_vblank_offdelay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc45cb77a drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc468b98a drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4f21a2a drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5a128ec drm_mode_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5ead8fd drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6f480ff drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6fd37d6 drm_framebuffer_reference +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8617666 drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8e46f4b drm_idlelock_take +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8e85743 drm_framebuffer_unreference +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca45efbc drm_format_horz_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca61b5e9 drm_global_mutex +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca93ede3 drm_vma_offset_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb6017df drm_bridge_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcc364e95 drm_prime_init_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd0fc417 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd5cfefc drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf1268a7 drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1368e0c drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd14b27d8 drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2335101 drm_fb_get_bpp_depth +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd35c58d2 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd473e97c drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd518bf6e drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd55aea8d drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd70bf024 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd8ca5ca1 drm_addbufs_agp +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd9335d3a drm_ati_pcigart_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd9367a8c drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd9c08c86 drm_idlelock_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb25563e drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbb5a9f5 drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf195c06 drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2ef97e4 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe35c7ef2 drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe4d5cbe6 drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6cc119f drm_pci_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6f46e6e drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7197773 drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe9520fbe drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea7e5215 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea95456a drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xebc0aba1 drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xebe571ed drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefdf9b69 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf08d712a drm_mode_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1dbbe89 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3eb9290 drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf446a0e2 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf4624b04 drm_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf7cd253c drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9855669 drm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9db6be2 drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfa9b8bcd drm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb497216 drm_mm_insert_node_in_range_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd063935 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe4a68c7 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe759941 drm_unplug_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffc6c87a drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x016eb036 drm_fb_helper_restore_fbdev_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0715eb27 drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x098e47d2 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0eb4e808 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f96ec70 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x163251c8 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x21d62149 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x239e7164 drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x281c1519 drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2c8e3bf4 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2fe109ac drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x30bb06a0 drm_fb_helper_fill_fix +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34871adf drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x43b1b59e drm_fb_helper_single_add_all_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x50999104 drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x534afa8d drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x538010c1 drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x62c5da5b drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x64fec08b drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x711a004a drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x72436321 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x75515d73 drm_fb_helper_fill_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x765bc0c6 drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7a99848d drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x80a51dad drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84e924ba drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x88a3c46a drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8aae2f4f drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8c987e01 drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9daf025c drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa77858bb drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8d6809d drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa9967f02 drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb4f9a366 drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcdb46e92 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd329ed81 drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd6f12fe7 i2c_dp_aux_add_bus +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xda70633e drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdca06ca8 drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf363121d drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x20c79a81 drm_get_usb_dev +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x4fcabe8e drm_usb_init +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0xa5768563 drm_usb_exit +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x03f04810 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x04531570 ttm_mem_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x061619aa ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x06c840af ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0a37710d ttm_lock_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0ae6eadf ttm_bo_synccpu_write_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0bb9104e ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0e869883 ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x15927fce ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x170e5db1 ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1725d83f ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2105e18d ttm_vt_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2212d197 ttm_agp_tt_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x29e313d9 ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2a479107 ttm_agp_tt_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b54aa9a ttm_object_file_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x32753458 ttm_vt_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x40369e4f ttm_bo_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4080f529 ttm_mem_io_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x431c5dd1 ttm_bo_synccpu_write_grab +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x472158bb ttm_bo_add_to_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x485a5bc0 ttm_ref_object_add +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x49e38864 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4e8dd264 ttm_bo_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4efa8337 ttm_prime_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x506ae74a ttm_mem_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x53d02d41 ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x564e1aee ttm_bo_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6052860c ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6210557f ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x62a20df4 ttm_mem_io_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x62c10e63 ttm_mem_io_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x632ff7e1 ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x63909b63 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x655544d6 ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x68655190 ttm_mem_io_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x699e40f3 ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6b797c25 ttm_read_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x718a56bb ttm_write_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x770fb1b8 ttm_suspend_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x79b3a431 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80d86f0e ttm_object_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8568be30 ttm_write_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x880a15ad ttm_base_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8bbf52f6 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8c2537e2 ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x92393c04 ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94894449 ttm_base_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94b01e2a ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9561d4cf ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x982cc4fa ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x998b8244 ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x998e45c0 ttm_ref_object_base_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9d3eab45 ttm_suspend_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa287b871 ttm_fbdev_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaaafd88a ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb27bf87f ttm_object_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb931e268 ttm_bo_del_sub_from_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb94c01c4 ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbc69cb84 ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc1cd1cc5 ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc4d4618d ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcbc7cf5c ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcc1a1226 ttm_read_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xce6e43a8 ttm_base_object_lookup_for_ref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcf828c8d ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd53c4702 ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd8edb115 ttm_base_object_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdd00fe11 ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe194b245 ttm_agp_tt_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe5676ea9 ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe87dc3b3 ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe98359dc ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xea98f9a0 ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf72f8d72 ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfbc2c5ec ttm_object_file_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xff476045 ttm_bo_kunmap +EXPORT_SYMBOL drivers/hv/hv_vmbus 0xd2732b3f vmbus_sendpacket +EXPORT_SYMBOL drivers/hv/hv_vmbus 0xde244432 vmbus_recvpacket +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x0903c239 vid_from_reg +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0xef1c781c vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x0e2a6864 sch56xx_read_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x0f5877d4 sch56xx_read_virtual_reg16 +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x34257f35 sch56xx_watchdog_unregister +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xade906fe sch56xx_watchdog_register +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xe5022f95 sch56xx_read_virtual_reg12 +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xed1d2a08 sch56xx_write_virtual_reg +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x69d84ba2 i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xcd0b4eed i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xefbecee8 i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x86db2481 i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0xa946f156 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0x2b53c527 amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xbff97557 st_accel_common_probe +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xfa924eed st_accel_common_remove +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x4ddc2790 hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x64c76025 hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xa7c55563 hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xbaf860d3 hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xd607275f hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x4daa589c hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xe835b58c hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x0ba5e098 st_sensors_check_device_support +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x12a52640 st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x17d62ba2 st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x2de8096b st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x2e6ecdfc st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x436675e6 st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x4d96c621 st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x56083d64 st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xa7cc2df1 st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xa9659525 st_sensors_get_buffer_element +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xae07373c st_sensors_sysfs_set_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xb415c096 st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xb67f0a97 st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xc0a27ceb st_sensors_sysfs_get_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd84f376d st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0x61f521aa st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0x100d5caf st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x63f8e86f st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0xc24a6adf st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x1fa0ffc1 adis_enable_irq +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xa674d5c5 adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/industrialio 0x08c8e4fe iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x1a256c2f iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0x1e9d81a3 iio_buffer_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x28f5b215 iio_buffer_read_length +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x329247bd iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x383b92dd iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0x48b67eca iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x4efd9baf iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x57a044ca iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0x61b421fc iio_buffer_show_enable +EXPORT_SYMBOL drivers/iio/industrialio 0x66cd0d90 iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x6e2d354e iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0x735ad604 iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0x74f5b5f9 iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0x779b806a iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0x7a320901 iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0x8fda3560 iio_buffer_register +EXPORT_SYMBOL drivers/iio/industrialio 0x9e9495e0 iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0xb2908f4a iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0xd1932a99 iio_buffer_store_enable +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xe91bf141 iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0xe9cb0567 iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0xf740d892 iio_buffer_write_length +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x2aa99342 iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x2bdd9cc5 iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x91c7d7fd iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x9f0254af iio_kfifo_free +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x421cdd9c st_magn_common_probe +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xb0f27ce7 st_magn_common_remove +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x85ab7fa2 st_press_common_remove +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xc748b18c st_press_common_probe +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x049ace30 rdma_addr_find_smac_by_sgid +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x04b8b6d7 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1c3c0ad3 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x2107de5f rdma_addr_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x273f4cca rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x446fd7c9 rdma_addr_find_dmac_by_grh +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x6f6ee97c rdma_addr_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0xe2b65276 rdma_copy_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0xf19ab26c rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x1c13e17c ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x1cd8ba06 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x30008167 ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x3d44d154 ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4a432f76 ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x67f6bcc6 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x765ceef6 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x8236adf5 ib_send_cm_apr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xa33a6630 ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xac26ce44 ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xb63e4692 ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xc00cb7d5 ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xcb246154 ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xcf072b35 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xd39c34d9 ib_send_cm_lap +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xe179ddd4 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xfa34c77f cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0365eccb ib_destroy_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x049d901f ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0540e9dc ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06c82fcf mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0a551ead ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0abcd3c7 ib_reg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c1b9ac1 ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0d143ba2 ib_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0db77912 ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x133757e4 ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14f84918 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1674638d ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x16e5d11d ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x171f99f1 ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x19531901 ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e491a04 ib_unmap_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1ff3258c ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22c048cc ib_create_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22f3cf93 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x25572ec8 ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ed6e386 ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ef3e365 ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3154e9d6 ib_query_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x331f2a71 ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x38814b9f ib_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3a3104ad ib_alloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3bcd3e36 ib_resolve_eth_l2_attrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3d5fec09 ib_dealloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x413c3dbf ib_get_dma_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x429ab88b ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x42a47b38 ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x465a7563 ib_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x47a588cf ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4c054c0d ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4fe83438 ib_fmr_pool_unmap +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50dbc447 ib_flush_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x527593bf ib_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5813ab2e ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5bb0ee69 ib_alloc_fast_reg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5c4fc0cb ib_init_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5d24555c ib_get_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x606e6dce ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x608cd144 rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x60d5d13e ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x619efa77 ib_dealloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x66895c50 ib_modify_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x68302531 ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b1acfd0 ib_alloc_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6c626000 ib_alloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6d04ecd5 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e030e26 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e77dfeb ib_fmr_pool_map_phys +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x752deac0 ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7855faf2 ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7bdbc1de ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7cea1272 ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86a70ac5 ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x88df26fe ibnl_add_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8a150c0c ib_get_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e6b600b ib_destroy_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9061ca47 ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x952291ab ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x95a16d37 ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa07533aa ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa432baf6 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaa9d01ce ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac217df9 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb5a74297 ib_find_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb60475ad ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbd0b740f ib_query_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbd5236b6 ib_dealloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbd6fcccc ib_rereg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc2518c1f ib_create_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc32b59ff ib_destroy_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc595663c ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc67f14a5 ibnl_remove_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc8d28d41 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xca58f769 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcb203375 ib_create_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xce260d5c ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd17608ce ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd4395676 ib_destroy_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd4d572f7 ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6724704 ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd9505a45 ib_destroy_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdeed06e4 ib_dereg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe1a07fc9 ib_free_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe767a5e3 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf6e4382d ib_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfc150956 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x0156eead ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x02b1d074 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x0cd1faf5 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x4382cec1 ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x5a383715 ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6f077fcf ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x70c9eee5 ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7b5d4b7a ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x8422cd24 ib_register_mad_snoop +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x946d5d27 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xa23c2256 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xb601d0a0 ib_process_mad_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xbf58132f ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xe811797a ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xf2e991a6 ib_redirect_mad_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x22f07253 ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x2fd0e42f ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x542931b6 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x576fdbac ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xc1955a3f ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xc477c5fb ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xcd2898e5 ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xcd3348fa ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xd0bd72b1 ib_init_ah_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xddc330e7 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xf80685cc ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xf96e5705 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2569d757 ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x52a6ce77 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7971c00e ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe350f2aa ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x0982fdb8 iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x0f8c0694 iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x30b140b6 iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x84fa18ff iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xac1a352e iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xafd955ca iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xc940a261 iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xe600913d iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x0c3ca2ca rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x23f60e56 rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x2e6c7003 rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x440adaa5 rdma_set_ib_paths +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x441680c6 rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4db2202c rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x607806dc rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x649a6e06 rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7f255dd3 rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x82c644ea rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x83f8252c rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x93a22bb9 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x96cc61d6 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x991c988a rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa3263ede rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xbe4fca3c rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc8b53e92 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc98767db rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd0182d44 rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd89b84d1 rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xee807245 rdma_leave_multicast +EXPORT_SYMBOL drivers/input/gameport/gameport 0x1376ff96 gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x37fc23f6 gameport_start_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x6976c7d6 gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0x86c11bf5 gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x9001626c gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x909785d0 __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xb7044bf4 __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0xcad3998d gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0xf6fff0d9 gameport_open +EXPORT_SYMBOL drivers/input/input-polldev 0x51d59773 input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x56305a97 input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x6ede4038 input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xe1b5c258 input_unregister_polled_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0xe1a7330d matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x1fe94d23 ad714x_remove +EXPORT_SYMBOL drivers/input/misc/ad714x 0x54ac2786 ad714x_enable +EXPORT_SYMBOL drivers/input/misc/ad714x 0x58a9d1d8 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/ad714x 0x6ac6b0f6 ad714x_disable +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x19978c17 cma3000_init +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x892d76b2 cma3000_resume +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x89d9444e cma3000_exit +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xca3f100a cma3000_suspend +EXPORT_SYMBOL drivers/input/sparse-keymap 0x5ce016de sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0x80707612 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0xa6006177 sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0xb4367123 sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0xdc784f8a sparse_keymap_free +EXPORT_SYMBOL drivers/input/sparse-keymap 0xdd77c73a sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x097f8348 ad7879_probe +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x573c5620 ad7879_pm_ops +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x97f83edf ad7879_remove +EXPORT_SYMBOL drivers/iommu/amd_iommu_v2 0x2fa144cf amd_iommu_free_device +EXPORT_SYMBOL drivers/iommu/amd_iommu_v2 0x3b5e3301 amd_iommu_set_invalidate_ctx_cb +EXPORT_SYMBOL drivers/iommu/amd_iommu_v2 0x5a414982 amd_iommu_init_device +EXPORT_SYMBOL drivers/iommu/amd_iommu_v2 0x9f54a485 amd_iommu_bind_pasid +EXPORT_SYMBOL drivers/iommu/amd_iommu_v2 0xc340345f amd_iommu_unbind_pasid +EXPORT_SYMBOL drivers/iommu/amd_iommu_v2 0xe58eb84d amd_iommu_set_invalid_ppr_cb +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x04403fcf unregister_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x14f2aa5a capi20_get_version +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2b8eab1f capilib_free_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2baa6586 capilib_new_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x31c24aa4 capi20_isinstalled +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x47d3fc51 capi_info2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x48acbbd6 capi20_register +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x50b33ca4 capi_cmsg2message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x523c81b0 attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6057c6f3 capi_message2cmsg +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x62e32d43 capilib_data_b3_conf +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6c4294cc capi_ctr_suspend_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x71e8d5ba capilib_data_b3_req +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7292ab34 cdebbuf_free +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x72a25a72 capi_cmsg2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7a33596c capi20_get_serial +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7e65ad92 capi20_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7e6f1307 capi20_get_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x80b2cf7c capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x8f699913 capilib_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x96971bb0 detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9f823278 register_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xaa165d27 capilib_release_appl +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xade43bbf capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb19fda8d capi_cmd2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb60e5e5f capi_cmsg_header +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc1e0ce4a capi_ctr_down +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xdf2985f9 capi_ctr_resume_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe19a11ac capi20_get_profile +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xed061606 capi20_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xedf2e64b capi20_put_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xfd552f7a capi_message2str +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x20229504 b1_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x435d7aed b1_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x63b2036e b1_parse_version +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x6bb72ede b1_load_t4file +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x763fdeca b1_alloc_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x79fff78c b1_loaded +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x85f09690 b1_irq_table +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x8df74c5f b1_free_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x98918585 b1_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xaf308a05 b1_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xba54c0d5 b1ctl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xcd642dc4 b1_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xcf363cbf avmcard_dma_free +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xd4e0be30 b1_getrevision +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xdfd28376 b1_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xf611bdd4 b1_load_config +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xf894e107 avmcard_dma_alloc +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xfa10fee4 b1_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x22e3d8c6 b1dma_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x3b5b28e6 b1dma_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x45c0b352 b1pciv4_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x46bbd322 t1pci_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x83721545 b1dma_reset +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x9a123c15 b1dma_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xa2d6a0c8 b1dma_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xad47e897 b1dmactl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xd6f9f1ea b1dma_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xe551f06a b1dma_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0x29562993 b1pcmcia_delcard +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xaec3240e b1pcmcia_addcard_m1 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xea620116 b1pcmcia_addcard_m2 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xf14bf8b1 b1pcmcia_addcard_b1 +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x2974ead1 DIVA_DIDD_Read +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x7ab59853 proc_net_eicon +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x19a89aac mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x7adf9074 mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x8516117b mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xa24129c1 mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x0b113b22 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x181c9135 mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x07f4f2ce hisax_unregister +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x148f0c99 FsmFree +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x7f29ce36 FsmInitTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x93a64734 FsmChangeState +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x94c73d4f hisax_init_pcmcia +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x9df0cd27 FsmEvent +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xe227344e FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xee93522c hisax_register +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xf0a16657 FsmNew +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xfc27303b HiSax_closecard +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xff2db2cf FsmDelTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x2912f81f isac_init +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x3b604b35 isacsx_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x3f3b323a isac_d_l2l1 +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x58613e84 isacsx_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x72e66e99 isac_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xf83d8372 isac_irq +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x23293757 isdn_ppp_unregister_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xab8dc738 register_isdn +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xf6fb9877 isdn_ppp_register_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xfa06820f isdn_register_divert +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x3b71e4fc isdnhdlc_decode +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x59cc8a7e isdnhdlc_out_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x8ee38862 isdnhdlc_rcv_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0xfd9d4c09 isdnhdlc_encode +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x03cba0bf mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x1091a4fd mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x124a7b77 recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2348cc3c mISDN_FsmFree +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2a07e5d7 get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2f3fd5cc mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x3434d50b recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x38109316 mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x45f80a37 bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x4918d968 mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x51a28ee6 mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x528f387a mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x54451388 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x614ede30 mISDN_FsmAddTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6196966d get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x78bbfeac recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x89eb817c recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8a4e99fb mISDN_clock_update +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x96309324 mISDN_FsmDelTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x97eaaa20 dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa52ea3d5 recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb8ce5a6d mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbb58add8 mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbfca70e1 queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd285995f mISDN_clock_get +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd5145151 mISDN_FsmEvent +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe4657c8f mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe54e7132 create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe87943cf mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf306905e mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf45676fc bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf9e7832f mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x01087af0 mISDN_dsp_element_unregister +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x60721da7 dsp_audio_law_to_s32 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xa215f1b2 dsp_audio_s16_to_law +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xb98308d8 mISDN_dsp_element_register +EXPORT_SYMBOL drivers/md/bcache/bcache 0x0c349c48 closure_wait +EXPORT_SYMBOL drivers/md/bcache/bcache 0x339a7f28 closure_trylock +EXPORT_SYMBOL drivers/md/bcache/bcache 0x51b73012 closure_sync +EXPORT_SYMBOL drivers/md/bcache/bcache 0x9041b0bf closure_sub +EXPORT_SYMBOL drivers/md/bcache/bcache 0xcc3ab225 closure_put +EXPORT_SYMBOL drivers/md/bcache/bcache 0xe3c17af1 __closure_wake_up +EXPORT_SYMBOL drivers/md/bcache/bcache 0xe51c2d78 __closure_lock +EXPORT_SYMBOL drivers/md/dm-log 0x2bf3ec0e dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0x77d02938 dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0x8825eefa dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0xb488f3c7 dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x1476546f dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x2d15dca8 dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0x2ea5fd39 dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0x39fb3fdf dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0xaa7db33c dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0xb476c420 dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/raid456 0x4e916809 raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x3bd52821 flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x3c20fb5e flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x4159984e flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x46afbb55 flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x6a09ca99 flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x77b63316 flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x7f8fc01c flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x8af72bc6 flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xa3a7196c flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xb7c844c0 flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xdce04269 flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xdee16710 flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xfd631204 flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x495e4b0c btcx_calc_skips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x76a096cb btcx_riscmem_alloc +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xad2fe38b btcx_sort_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xc368f8e6 btcx_align +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xcda0ded2 btcx_screen_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xdfd207e1 btcx_riscmem_free +EXPORT_SYMBOL drivers/media/common/cx2341x 0x1ca0c084 cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0x210b14c6 cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0x2f25eee2 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0x3db8be82 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cx2341x 0x5b88faf6 cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xaa6f8372 cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc184ec1e cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf76ce95 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf8b77a4 cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xdfa8988e cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0xf76ba8c5 cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0x95e8a719 cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x0976909d tveeprom_read +EXPORT_SYMBOL drivers/media/common/tveeprom 0x58465a8a tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x021494e4 dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0c651bb2 dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x17523ce7 dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1882e39c dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1a93569e dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1aa9a106 dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2b017ffa dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2b3589cb dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2f61c704 dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x398aab01 dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3ce9d3b5 dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x410ffc32 dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4a4730a8 dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x64d6d7a9 dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x68991961 dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x695508e8 dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x6c40fafc dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x731d682c dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x74a5a698 dvb_filter_pes2ts_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x789cc52d dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7c4d8996 dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80e3832d dvb_filter_get_ac3info +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x88602428 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x887caf4f dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8d0df2a1 dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x94d3b546 dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa2a65e70 dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa3501e03 dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xac4ca1b0 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xac66999e dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb9e14e29 dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc0e89834 dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xca4965f1 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd03c012d dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd68a099e timeval_usec_diff +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd69c482f dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xde89a7ea dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe15697bd dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe5ae8707 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xee552667 dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xefcef46b dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf674e5fb dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf826deb0 dvb_filter_pes2ts +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfaa4891b dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/a8293 0xb9ea150b a8293_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9013 0xbf9e7e0f af9013_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9033 0x1f5104b1 af9033_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0x93c799ca atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x1da0878a au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x3c9345a0 au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x41ba2174 au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x74af3dce au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x81c619cd au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x84345743 au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xab72d1a2 au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xe485634b au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xe5ea4a76 au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0xb33a0b2e au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0xea640941 bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0x9a3331b6 cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0x2ecf402f cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0xde4b8c58 cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x614440b5 cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0xfc5ea1ec cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0xffc246df cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x2032a15d cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xfc7d656b cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0x788c89eb cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x36deb2c5 dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x4d6c0a6e dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x69670e3f dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xb9a396fb dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xef5826e0 dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x00281220 dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x014978ae dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x06d1f424 dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x1ad8a775 dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x20258ad7 dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x5b12025b dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x601920ad dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x63109962 dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x8053dddf dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x8cefccc3 dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x92e86aa8 dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb49173c8 dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xcd4b455a dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xd2586193 dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xd2c27179 dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0x65bf95d0 dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x2e3a87e5 dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x42b16d61 dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x569f1359 dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xb303dbc9 dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xca900da1 dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xf5f5a47f dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x09734892 dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x09eac145 dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x25e05361 dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x7b3874d2 dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x0147b62a dib7090_slave_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x1045d0e4 dib7000p_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x110b7f25 dib7090_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x1b11ee59 dib7000pc_detection +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x3cba41c5 dib7090_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x47c658ec dib7000p_set_agc1_min +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x8ddb63cc dib7000p_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x8fb73faa dib7000p_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x99db033e dib7000p_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xab079357 dib7000p_get_agc_values +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xb115610b dib7000p_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xcb617147 dib7000p_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xdd0e40ce dib7090_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xe45277aa dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xe9c44020 dib7000p_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xe9cc92ff dib7000p_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x0d1fd7b5 dib8000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x1951ec4a dib8000_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x21ed6e1c dib8000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x2748f974 dib8000_pwm_agc_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x3a8a0d93 dib8000_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x5c3d7b27 dib8000_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x66a4a030 dib8000_remove_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x67a6ce12 dib8096p_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x69e7b2c9 dib8000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x75c835a3 dib8000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x7de3bb58 dib8000_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x8d2aafb3 dib8000_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x9ad5f068 dib8096p_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa79dadc9 dib8090p_get_dc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xaabd4a84 dib8000_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xae447e6a dib8000_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xbce6ff48 dib8000_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xca8f000c dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xfcd449c3 dib8000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x23da6bfe dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x96f7b28b dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xad3ad91c systime +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xf39e9e31 dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xf55eb8e3 dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xfc19b8ae dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0xc767d208 drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0xf2674ea1 drxd_config_i2c +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0xccea32fc drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0xfa078d75 ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0x98355dae dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0xc4326bff ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0x7448aab3 isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0xc6325083 isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0x8ee8d84b isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/it913x-fe 0x55d50343 it913x_fe_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0xb7c28fe0 itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0x2e2e6879 ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0x8c06703a l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0xbe193d57 lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0x4eb0f19b lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0x10514d31 lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0x1a48a93b lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x31ac80f4 lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x7d7e8b0f lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0xcb34af41 lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0x2218cfa7 m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0xf907297d mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0x9305bd00 mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0x8627960e mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0x2ddc0546 mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0xe36fb806 nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0x422b953a nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0x621554e1 or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0xdfabda0d or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0x4d6100f4 rtl2830_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0xbfc4d627 rtl2830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2832 0xc2d651d3 rtl2832_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0xbd03be7f s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0xf7efade8 s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x59373dd5 s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x6fcb6ce9 s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0xd82945f1 s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0x4ba5d2c1 si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0xe5b2c714 sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0x7d2e3ecf sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0xf74f74cd stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0x06af959a stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0x9b9406bb stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0x220d4dab stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0xc0894bff stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0x5ea1db4e stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x3aef1413 stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0xe22c342e stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0xe0a9d35a stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x9ce04fc2 stv090x_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0xdd4e4855 stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0x4ad0fa1b stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0xd4ee59d7 stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0x1a7a3f67 tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0x8307e8d0 tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0x4136e060 tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x7295b532 tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0xa2f92626 tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10071 0xa1cef708 tda10071_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0x361ffa19 tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0xa3012564 tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0x9b29068b tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0x510112f3 tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0x370775a5 tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0x7e971a89 ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0x9cbe1ed7 tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0x4e837373 ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0xb9e2d947 ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0xdb2ff6bd zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0x4835e957 zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0xf08a6f19 zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x3683b13e flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x3d6274ea flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x8d7c6ee5 flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xb80e8a27 flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xe76f5e42 flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xe8915cac flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xfd9126bd flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x0fbbcd63 bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x716631bc bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x964d8bb9 bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xd5d0bdef bt878_num +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xf53317ca bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x11dc4b6d bttv_gpio_enable +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x1b51475f bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x46a18a20 bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x719d1ab3 bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x1230f22c dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x27ab839a write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x32b23fa6 dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x6713793a rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x7b5d5443 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x919e22eb dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xa5e6b596 dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xad275aca read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xade617be dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe94b8c9c dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0x447ee19b dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x0013651e cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x72af3cd6 cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x72f451ff cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x8b07a404 cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xfa6f85d5 cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x9247b72f altera_hw_filt_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x97f08586 altera_hw_filt_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xa058f13e altera_pid_feed_control +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xb89dcfed altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x04ebad54 cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x784853c3 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x80b19497 cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xc491fe38 cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xc5d38741 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xec660110 cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xecf38c3b cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xfcb8743d cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x0ca130cd vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x1c130afe vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x01225483 cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x320cd223 cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x5857a27f cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x77d34f92 cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x184548c3 cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x1b77cd37 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x4161907b cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x9dd6953f cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xb21e366b cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xff16ea44 cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x03dbf633 cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x07dbad97 cx88_risc_stopper +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x0cd8fe3d cx88_free_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x2767e8c9 cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x2aa3a077 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x3c3c86bf cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x3ced7606 cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x3d8a358a cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4216fc84 cx88_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x46511fcb cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4706d196 cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x5081913d cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x52d38595 cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x56e8611d cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6141c8c5 cx88_tuner_callback +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6cb031af cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7642ed3c cx88_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7a144499 cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x84c18020 cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x904b8696 cx88_audio_thread +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xa4a73688 cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xa8ccb339 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xadcf4074 cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xb527877e cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xb6503eda cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd8db9ef0 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x0bbe80ec ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x0f022239 ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x15692924 ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x21770c98 ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x2c725d0b ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x3ec4b560 ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x3fca837a ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x6418d96e ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x67a648e6 ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x78b36ea7 ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x929682f3 ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x9bdc754d ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc2088e94 ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc3e325a3 ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xd3836921 ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xf4d89c66 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xf9cb29b2 ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x04e83446 saa7134_tuner_callback +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x0541d63b saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x0fac19f9 saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x11f8b3b3 saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1211df5d saa7134_devlist +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x324572b0 saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x5f584e53 saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x70a78d3f saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x71687222 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x73039031 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x7f06db7a saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xa2be4816 saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xab347e56 saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xd3c61d02 saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xf4b6cef5 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xc3e4c127 ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xd7ea6d7c ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x689efc26 videocodec_unregister +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x886b8d0e videocodec_detach +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x8c95fc3e videocodec_attach +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0xd76bd998 videocodec_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x00ad3080 soc_camera_lock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x20c6ac86 soc_camera_xlate_by_fourcc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x248a321f soc_camera_host_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x3edaed24 soc_camera_unlock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x74b1a2f2 soc_camera_power_init +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x81587e40 soc_camera_apply_board_flags +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xab52592a soc_camera_power_on +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xb7395925 soc_camera_power_off +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xec09617c soc_camera_host_unregister +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x25c52d97 soc_mbus_samples_per_pixel +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x2863728e soc_mbus_image_size +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x5f3e3558 soc_mbus_bytes_per_line +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xa9546115 soc_mbus_find_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xc8b28da5 soc_mbus_config_compatible +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xfe2c3a07 soc_mbus_get_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x572ad817 soc_camera_client_s_crop +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x95dde785 soc_camera_client_scale +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x9c3b3177 soc_camera_calc_client_output +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0xe1e8f8bc soc_camera_client_g_rect +EXPORT_SYMBOL drivers/media/radio/tea575x 0x15df5c6b snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xb21e8c80 snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0xc6274ab5 snd_tea575x_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xca570761 snd_tea575x_exit +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x04dca738 lirc_unregister_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x249ab26c lirc_dev_fop_ioctl +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x2ee39be6 lirc_register_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x5048ead8 lirc_dev_fop_open +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x8c03ea8c lirc_get_pdata +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x9dd417e0 lirc_dev_fop_read +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xa37bcbb8 lirc_dev_fop_write +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xb42b744c lirc_dev_fop_close +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xcbddca0f lirc_dev_fop_poll +EXPORT_SYMBOL drivers/media/rc/rc-core 0x418fc93c ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0x638436a7 ir_raw_handler_register +EXPORT_SYMBOL drivers/media/tuners/e4000 0x6641e188 e4000_attach +EXPORT_SYMBOL drivers/media/tuners/fc0011 0x3beaaec2 fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0x420ad43b fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x893433e1 fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xc553076f fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xf219caf7 fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc2580 0x880b7e2d fc2580_attach +EXPORT_SYMBOL drivers/media/tuners/max2165 0x33d7c548 max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0x4c4a47cd mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0xaa4703f8 mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0x81046bbc mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0x2f6844fe mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0x66138f49 mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0xc2876768 qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18212 0x83d8fdca tda18212_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0xeccedb07 tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tua9001 0xe8c37aed tua9001_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x0cb4b189 tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0x1bde0724 xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/tuner_it913x 0x4b082a4b it913x_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0x0de8ea76 xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0x15504f27 xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x2252d2cb cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xe06ea346 cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x32f59a61 dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x48907cf1 dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x51b2e378 dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x56181d79 dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x71a45484 dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x79eccc09 dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x9cf6c074 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xdd63c990 dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xe1974eeb dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x2ab72e58 dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x61b45628 dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x7a0618c9 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x9e8a7d7e dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xaee3edef dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xb058e8ff dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xbb9e0fa5 usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x13e247e0 rc_map_af9005_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x7104fd8c af9005_rc_decode +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xd4e288db rc_map_af9005_table_size +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x2ae0411f dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x3fcc1dc6 dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x54f319d2 dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x77d90bc5 dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb47559e0 rc_map_dibusb_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xc4d07051 dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xcaf495d8 dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xce4238bf dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xd670e144 dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xe24b0b59 dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xe7cf03a1 dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xed85b89a dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x07e424de em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x916c0bc4 em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x1d3401a0 gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x5267ea86 gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x61d5ca98 gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x7d4b0065 gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xa1164ab8 gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xb8ea847a gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xc2a0ccde gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xcf40d65d gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x0f7bc357 tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x180e92a0 tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x35dc9c33 tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x4488bcdb ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x6f4fbd11 ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x42c8e001 v4l2_ctrl_next +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x4adaf0f3 v4l2_ctrl_query_menu_valid_items +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x53c9394f v4l2_ctrl_query_menu +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x5f96a661 v4l2_ctrl_check +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0xabe27502 v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x8b4c848d v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xc23f8ab5 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xe1685496 v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x54b5b774 videobuf_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x999be9a2 videobuf_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x9e1e46d0 videobuf_dvb_find_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x9f802a81 videobuf_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xd7502cb3 videobuf_dvb_register_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xe10bb268 videobuf_dvb_get_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf2-core 0xfad5d35c vb2_querybuf +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x01164b2c v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x14a118b7 v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x173ea326 v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1c3e68ca video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1f3b2b41 v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x267c969c v4l2_subdev_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2b5ea1f7 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2fd0d359 video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x30ec4116 video_usercopy +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x35027d38 video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x36847d11 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3697f91a v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x38be72ef v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x393620cd v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3a092ba9 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3a673312 v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x41819cf3 __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x495426ee v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4bd8867b video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4e75e6b9 __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4f9ac71c v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5efab22b v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x60bb794e video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6111d20b v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x644c0f11 v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x685602de v4l2_subdev_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x68fca2e1 v4l2_subdev_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x719e4027 v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7a3cd015 v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7f031197 v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8739b400 v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8d75b78c v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8f9af0cb v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x983808eb v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x988931ef v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9a3caeaa v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9e54a9c9 v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa38b9eac v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa38cd99d v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa5798f26 v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb0c5a004 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb16c796f v4l2_ctrl_add_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb4c34083 v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb52040bb v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbac4a225 v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbd2ba24c v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc12cf8f8 v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc40e7313 video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc58ce9c1 v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc6ea063e v4l2_subdev_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcefd986f v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcfdfdd96 v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd4a8294a v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd4e73e52 v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd5b23b74 v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd8c259f6 v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdc641212 v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe0cae1fb v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe1ec885d v4l2_subdev_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe4edf8ca v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe6ba2578 v4l2_subdev_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe6eeda91 v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe6fce6f2 v4l2_ctrl_merge +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe94855fe v4l2_subdev_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xeba2ed25 v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xed670511 v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xefa84231 v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf0cf8aa4 v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf276a763 v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf409b575 v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf4db5a6c v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf67fddf3 v4l2_async_register_subdev +EXPORT_SYMBOL drivers/memstick/core/memstick 0x003d6539 memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x2a7c0f91 memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x33d77b62 memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x359f3c43 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5d820a02 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x7f7064dd memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0x81d5577a memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x9f35d6b6 memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xb529c37a memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xd27f9203 memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xdc07e67e memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xe864d395 memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xf42d56b0 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xfd19bbbc memstick_register_driver +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x088367c6 mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x162148cd mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1a295f35 mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2159b343 mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2284b0b3 mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x258210c8 mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3305b931 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x395689e2 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4526289b mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4efa0dad mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5b1c4611 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5e1f7f23 mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x61558692 mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6c119f69 mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x738ca155 mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x774b5f77 mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7864defe mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7fb85c07 mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8f013d94 mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x952ce8be mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9e0b5880 mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa37d6706 mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa5b83c6d mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xbb7539b8 mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xbcffe9ef mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc0e69f82 mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc1ca28d6 mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc47c22e8 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd9a92a75 mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe62098c5 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf16ec2d9 mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf5d60c96 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf84817b2 mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x033ca7d2 mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0bf68e9a mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0cbc480f mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0efae55c mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1d205c64 mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x26c09ff9 mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2f3be262 mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x31fe4a5a mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3c587f9d mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x7b9fd6eb mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x82e5c9f7 mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8319e8bb mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x89825586 mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8a1f210c mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8c2430f1 mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8d1b23b4 mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8d68f5e3 mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x99c40651 mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xab6ae9c0 mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xadf82a81 mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xaff0e4a7 mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xb94abffb mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xb9e63f58 mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xc20277cf mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xce7ebf3b mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd33a1acf mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe0906d48 mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x10b37fc7 i2o_msg_post_wait_mem +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x14d72d3e i2o_cntxt_list_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2302183d i2o_parm_table_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2a843bef i2o_dump_message +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2db945b8 i2o_cntxt_list_get_ptr +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x55320949 i2o_parm_field_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x63bee649 i2o_driver_notify_device_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x64651449 i2o_find_iop +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x686b5e64 i2o_parm_issue +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x7de7782e i2o_driver_notify_device_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x857ee33a i2o_driver_unregister +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x96506e40 i2o_event_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xa43f317b i2o_driver_notify_controller_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xa9a1e23d i2o_device_claim +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xac743076 i2o_cntxt_list_remove +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xacfc345a i2o_driver_notify_controller_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb4c00dcf i2o_controllers +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xbba5b076 i2o_device_claim_release +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xcf3db174 i2o_exec_lct_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xd46258a5 i2o_msg_get_wait +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xe962c7c8 i2o_cntxt_list_add +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xeb0f1620 i2o_status_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xf927cfb6 i2o_driver_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xfea8070e i2o_iop_find_device +EXPORT_SYMBOL drivers/mfd/cros_ec 0x3e012cc4 cros_ec_prepare_tx +EXPORT_SYMBOL drivers/mfd/cros_ec 0x45ac71c5 cros_ec_suspend +EXPORT_SYMBOL drivers/mfd/cros_ec 0x4942f2da cros_ec_resume +EXPORT_SYMBOL drivers/mfd/cros_ec 0x6242f276 cros_ec_register +EXPORT_SYMBOL drivers/mfd/cros_ec 0xc5595388 cros_ec_remove +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xa89705da pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xe6734321 pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0ac93580 mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0f6cdfd5 mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x18b36e3c mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x52570044 mc13xxx_irq_request_nounmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x5a9386d9 mc13xxx_irq_ack +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x62e0a98a mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x761a065d mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x87a92c0a mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x881b56a1 mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x8e219590 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xad7b97cf mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb97b160a mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xf67b8716 mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/tps6105x 0x08738c01 tps6105x_get +EXPORT_SYMBOL drivers/mfd/tps6105x 0x4f3d7b20 tps6105x_mask_and_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0xa51cf61b tps6105x_set +EXPORT_SYMBOL drivers/mfd/tps65010 0x02d4ad0f tps65013_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0x0c6ad2cf tps65010_config_vdcdc2 +EXPORT_SYMBOL drivers/mfd/tps65010 0x28485130 tps65010_config_vregs1 +EXPORT_SYMBOL drivers/mfd/tps65010 0x33739de7 tps65010_set_vib +EXPORT_SYMBOL drivers/mfd/tps65010 0x9fd44c69 tps65010_set_led +EXPORT_SYMBOL drivers/mfd/tps65010 0xb14080cc tps65010_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0xd5bb106d tps65010_set_vbus_draw +EXPORT_SYMBOL drivers/mfd/tps65010 0xe99b3f36 tps65010_set_gpio_out_value +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x44516e30 ad_dpot_probe +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0xff1ad72a ad_dpot_remove +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x1746ab2d altera_init +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x1d875b9b ssc_request +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x846eda8e ssc_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x0e9755b9 pwm_channel_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5a8b82f9 pwm_channel_handler +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5d5c2951 pwm_clk_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x6a5e1f70 pwm_channel_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x73330c97 pwm_clk_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0xeb7f2c6f __pwm_channel_onoff +EXPORT_SYMBOL drivers/misc/c2port/core 0x1ebc22af c2port_device_register +EXPORT_SYMBOL drivers/misc/c2port/core 0x5a12c90f c2port_device_unregister +EXPORT_SYMBOL drivers/misc/ioc4 0x2a2057b7 ioc4_register_submodule +EXPORT_SYMBOL drivers/misc/ioc4 0x38a2ada6 ioc4_unregister_submodule +EXPORT_SYMBOL drivers/misc/tifm_core 0x0df3f9c7 tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x1b2f57e1 tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x3d905562 tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x43aa0d71 tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xa6711aba tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0xa8c2ec46 tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0xac624331 tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xc4d2188e tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xc511edbd tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0xc8866cd0 tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xcfa0deec tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0xeb7814fb tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xf3b5a6ad tifm_register_driver +EXPORT_SYMBOL drivers/mmc/card/mmc_block 0xdca7c03c mmc_cleanup_queue +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x021f96b7 cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x4924f3c4 cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x8f708bab cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x3d242bea register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x4d77d49f do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x5b00d44e map_destroy +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x8fc98ade unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0xccc642b8 mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0xc6e2add3 lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0x9405dcb1 simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0x118051ab mtd_concat_create +EXPORT_SYMBOL drivers/mtd/mtd 0xba2f2c3f mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/nand/denali 0x7ab5f066 denali_remove +EXPORT_SYMBOL drivers/mtd/nand/denali 0xbdf9e845 denali_init +EXPORT_SYMBOL drivers/mtd/nand/nand 0x13544f47 nand_scan +EXPORT_SYMBOL drivers/mtd/nand/nand 0x1658b015 nand_lock +EXPORT_SYMBOL drivers/mtd/nand/nand 0x65b653a7 nand_scan_bbt +EXPORT_SYMBOL drivers/mtd/nand/nand 0x78574d63 nand_scan_tail +EXPORT_SYMBOL drivers/mtd/nand/nand 0xe65b9290 nand_scan_ident +EXPORT_SYMBOL drivers/mtd/nand/nand 0xf06867e3 nand_unlock +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x70097aa0 nand_bch_free +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x85ff3cfb nand_bch_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0xad1d48e4 nand_bch_init +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0xb46e46df nand_bch_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x3132ee65 __nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x608f8f26 nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xb4b94377 __nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xfafafa1d nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0x57a31e57 nand_flash_ids +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0xa336feb7 nand_manuf_ids +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x1fe7e14b onenand_default_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x65fdeb74 flexonenand_region +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x747db6b6 onenand_scan_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0xbb6ec8b6 onenand_addr +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x092389d0 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x20a2a75a arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x3575939f arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x5ba8011a arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x5c1242a0 arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x8c4c6f13 arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xd8b3c71e arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xe58d90bb arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xe9ac61ea arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xfa15cc73 alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x05007f7f com20020_found +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xd078a710 com20020_netdev_ops +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xeb989af7 com20020_check +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x0988d0d5 ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x3747faa0 ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x56113a39 ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x8e94bb49 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x9061eff0 ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xa1d05591 ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xaf12d072 ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xd05aa5cd ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xd1626f60 __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xfebbd86e ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x9dcc2bec cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x1b7e5427 cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x21848c44 t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x38042280 dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x88a055af cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x98d8dc53 t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x9e830aff cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa1ba67b5 cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa889b1d8 cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xb3efd31d cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xb47e0f4f cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xbf9029f1 t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xe025e161 t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xedb9ae21 cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xef9f925b t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf18f5c3f cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xfaa3a3dd cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1005e960 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x13a891f2 cxgb4_disable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x14a0383c cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x16231cac cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x198e944b cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2995678d cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2c750eb8 cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x309e6ff4 cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3c0e99d1 cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3cc6a640 cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4d5f7673 cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5208a180 cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x54ea38cb cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x58bf015a cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5c5a461f cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x655a3d23 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x67408ceb cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6e9c5b15 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x77381bde cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7a82929c cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x94b16e2f cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9a050c0f cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd00e5a36 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd4abb165 cxgb4_enable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe1577c05 cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe236ccc9 cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe542ec63 cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf23acbcd cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf6cf8a6a cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x0e712340 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x2b952b69 vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x4f650da7 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x891123a5 enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9196d804 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xac290cdf vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x2dd347c1 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x3f59de19 be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xbab62e22 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x11a1efc4 mlx4_test_interrupts +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x172cccb0 mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x235eeba0 mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x26b9a835 mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2ded699f set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x32807341 mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3993acd6 mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3b85a79f mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3c23060b mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3f22d4ec mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x475f5c65 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4ae6d3fa mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x505dc08e mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x676159c1 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x77cf8927 mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8722d490 mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x884c0c23 mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8a9e64be mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x96fa91cc mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9d61c8b5 mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb313d27f mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe2f1484e mlx4_set_stats_bitmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf5212b3e mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf8ef4389 mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x06e5863f mlx5_core_query_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x09039544 mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x09945018 mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x14a6bda3 mlx5_cmd_comp_handler +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x15cbea4c mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x19539505 mlx5_core_dump_fill_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1babeaa0 mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x245468e8 mlx5_dev_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x26ead1b2 mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x33abe761 mlx5_core_destroy_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x365065f8 mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x40a56706 mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x47a13d72 mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5cf0356a mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x65e92cb2 mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x693b4f47 mlx5_dev_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7dfb0385 mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x81426aa5 mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x85d0d3df mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8e9700e2 mlx5_core_create_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e943842 mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9f617256 mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xab657250 mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb8765531 mlx5_core_arm_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd5853923 mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xeab7483b mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xff429bc7 mlx5_core_get_srq +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x06675626 hdlcdrv_register +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x18f6130a hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x719d3691 hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xbc296e83 hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xc6d2eb3a hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x127cb36f sirdev_raw_read +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x16feb679 sirdev_set_dtr_rts +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x283e4d21 irda_register_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x45a5a3e1 sirdev_put_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x4b90c13c sirdev_get_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x7da900df irda_unregister_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x8eedad08 sirdev_receive +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xc84194a9 sirdev_set_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xc932697b sirdev_write_complete +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xdcf9871e sirdev_raw_write +EXPORT_SYMBOL drivers/net/mdio 0x22bce513 mdio_mii_ioctl +EXPORT_SYMBOL drivers/net/mdio 0x43e4defc mdio45_nway_restart +EXPORT_SYMBOL drivers/net/mdio 0x7577f992 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0xa1a29548 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0xb34a7575 mdio45_ethtool_spauseparam_an +EXPORT_SYMBOL drivers/net/mdio 0xc6b1163f mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0xddc98749 mdio45_ethtool_gset_npage +EXPORT_SYMBOL drivers/net/mii 0x3c223bce mii_check_link +EXPORT_SYMBOL drivers/net/mii 0x63f977aa mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0x64cd03e7 generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0x9da49bbb mii_check_media +EXPORT_SYMBOL drivers/net/mii 0xaf39e712 mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0xb5319b2f mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0xecd7dcfe mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0xedba2d5e mii_link_ok +EXPORT_SYMBOL drivers/net/ppp/pppox 0xb0927455 pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xd0327af3 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xea75119b register_pppox_proto +EXPORT_SYMBOL drivers/net/sungem_phy 0xe5fe2fc9 sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x1bbbcc16 team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0x29e809e8 team_mode_register +EXPORT_SYMBOL drivers/net/team/team 0x41a66f8a team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0x52f9e72a team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0x68c0efc8 team_options_register +EXPORT_SYMBOL drivers/net/team/team 0x708f1ee4 team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0x8e5378d6 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0x92032b66 team_mode_unregister +EXPORT_SYMBOL drivers/net/usb/usbnet 0xd550cef9 usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/usb/usbnet 0xe68eca9a usbnet_manage_power +EXPORT_SYMBOL drivers/net/usb/usbnet 0xf9d06589 usbnet_link_change +EXPORT_SYMBOL drivers/net/wan/hdlc 0x2e96301a alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0x4be74a78 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0x53e8b7d0 hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x62bca33d detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x74806a44 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x757fbddd hdlc_change_mtu +EXPORT_SYMBOL drivers/net/wan/hdlc 0x79e5035b hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0x7a7b2970 register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x98a10697 hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0xc0923040 unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xe1cfdc11 hdlc_open +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x809725d3 i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/airo 0x0795e931 stop_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0x79b12fbe reset_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0x9cdbfcd6 init_airo_card +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x06a2c2da dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x319c6026 ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x3ea4e9c7 ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4cc82950 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4e2481d5 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x53358ce3 ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x68812eb4 ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x72a2df1f ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xb00749e2 ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xbd7f76df ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xbdd4edca ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xc25700f8 ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xf08c1e0a ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xfb8b960a ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0daf162d ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x24358cb6 ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x28ee19b6 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x53476f01 ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x81900473 ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8246be6c ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x895f9dc2 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x95cf73b8 ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaf096710 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0199ec46 ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0587ec3b ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x27cf1694 ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x38e685d5 ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4c6ddcb4 ath6kl_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4e1380ee ath6kl_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x90e60dd1 ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xa0d8af1c ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xa1194cd3 ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xa18e9177 ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xaa59d5ed ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xc8e2d07f ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xd0528675 ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xfa4bf54a ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x0f36f32e ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x628248cf ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x91fc76f5 ath9k_hw_wow_event_to_string +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0xd7a6b73f ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x1a63ef44 ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x21837818 ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x82589169 ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xeeab87bb ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x02203d99 ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x03a29973 ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x06dbab77 ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0ad7369b ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0e467733 ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0e4e50c6 ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0ff46bfa ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x10fed780 ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x11caa38f ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x13634f54 ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x17a2ce52 ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1a1e2b5d ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1fc23708 ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x22231954 ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x22c950ea ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x237f5bda ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x24195af0 ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x25d3003a ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2b68662f ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2c6db25b ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2ca98310 ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2fc4c7ab ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x330a8df6 ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x34033c7e ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x34548562 ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x34613cdd ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x36b7bac6 ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x39b0208b ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3af0294e ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3b040b64 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3f291853 ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3f8a494e ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x40bcffaf ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x458fda8b ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x48b610fa ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x48e2f2a8 ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x496db160 ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4a434bdf ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4a6105c8 ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4c6c1a33 ath9k_hw_cfg_gpio_input +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x50c53cd0 ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x52251693 ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x54baa7a6 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5729b387 ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5a34aaaf ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5c21e161 ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5f2c2305 ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x62a066e7 ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x655c0b5c ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x68c7510b ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6c968769 ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6f1d0e1f ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x71c4fa51 ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x71e5af17 ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x73d9b0a1 ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x776a2c6a ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x77b97449 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7a5735fc ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7f0461e2 ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x81dfc990 ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x820c6e8f ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x851d52cb ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x89a08343 ath9k_hw_cfg_output +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8cbe1e00 ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8ce3b66d ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x90b57ac6 ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x94fb9b37 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x952e5a64 ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9b0b0d48 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaef4d51b ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb1a97696 ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb2add722 ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb671cf0d ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xba06dd09 ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbd4d0a33 ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc2cc2c1a ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc91943e0 ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xca8b4e8e ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcb59405b ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd026b3aa ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd2f86f2b ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd6b970d3 ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xda6b9438 ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xddd930de ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdff4ad85 ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe671824d ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe7c99214 ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xea6a4dab ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xeca0ad13 ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xee4633dc ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xef3890cc ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf2a15098 ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf65e7724 ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf6f845ea ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfa6f83ce ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfced08cf ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfdd6f157 ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfe3e35f8 ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/atmel 0xa708cfc3 atmel_open +EXPORT_SYMBOL drivers/net/wireless/atmel 0xc2d1252f init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel 0xd78d04d9 stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0x40ada62c brcmf_sdio_probe +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0xd7890f45 brcmf_sdio_remove +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x17ccd77e brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2dc227f8 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x4a54a0d1 brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x549fec0e brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x558405a6 brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x607ce92d brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x64c92e49 brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x702c096e brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x91dbdceb brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x949249e0 brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xa500f8cb brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xb3bdb712 brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xe1cb6d78 brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xeaab3976 brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x1723ac32 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x199d5f55 hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x2507d82c hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x319bf2d7 hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x34cb9780 hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x38b8fd41 hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x41967a3c hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x42758ece hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x49ef144e hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x4ddd575c prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x4e1f0ac8 hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x637e9f15 hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x71379ab0 hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x78e0936f hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x8507d717 hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x864d41b5 hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x8b51b6cf hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x93137a70 hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa12ad27f hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xaaa7fafd hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xaedfdaba hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb2a945e0 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xbb506e8d hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc4b271fb hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc5e39f38 hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xd55d2d2c hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xde03c55c hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe383f566 hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x0557732d libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x1350b6f0 libipw_change_mtu +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x1695cf16 libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x2f6fdfc7 free_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x305a34cf libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x45cd0b72 libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x51132625 libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x6150cf64 libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x772c8b64 libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x776ac2f1 libipw_rx +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x9a0ad6f6 libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xa6d7ec3b libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xaa04d4ca libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xb74f9801 libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xb8a273dd libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xc5045688 libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xc60f1986 libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xd47ec490 libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xddb8b437 libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xefca56a8 libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xf7525e9f alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x01edb74e il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0224ba6d il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x02d0abf5 il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x04cc02e6 il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x05ad3e61 il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x07a96cad il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x09b23062 il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x14315b3d _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x18d6af71 il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1b119235 il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1b6feea1 il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1eb62d2c il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x23d57c96 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x27ff0c70 il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x28eea496 il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2eca3957 il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2ee4b6bb il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x371af5ec il_pm_ops +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3a1b53d7 il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3a54be30 il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3ad7edd5 il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3b4f20c7 il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3b61f1d4 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3bb7a66c il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3cf10bee il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3d135ae0 il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x45ae45d0 il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x49dc08c2 il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4a4066ff il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4aa39103 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4ab36cd6 il_set_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4fe7fd1c il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5402ae2c il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x54cb0fd5 il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x564c6740 il_debug_level +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x598c992a il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x61c6a48d il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x645e7c0b il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x65cfcf23 il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6daee71a il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6f3470c7 il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x72c2c534 il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7564a883 il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x77d19508 il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x78bc6931 il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7c88492f il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x81f4eed9 il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x83d33ec0 il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x84184f34 il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x85ba8457 il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x86ca1230 il_free_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x881b686e il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8855e71f il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8b787e2a il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8e7b702f il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9217dbe8 il_update_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9596b6f9 il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9a4f8900 il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9bd9a3d3 il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9dc23e1f il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9f7ba62e il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa31cd39e il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa4b8f271 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xaca34178 il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xadadb261 il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb1f366da il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb45f654f il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb6fbf18c il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb80c039a il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb9235f5b il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbcaf3dfb il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc39cf12c il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc5edf1cd il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc6542b8f il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc90e8cde il_force_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xca4ca748 il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcb0b7908 il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcc82cb62 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcf46dfad il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcfb3f9cb il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd4d1b574 il_leds_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd55a64a9 il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd8911bd4 il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd8dc1c94 il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd9979da4 il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xde3f06de il_set_rate +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdf68afa1 _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe2726c66 il_apm_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe4262684 il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe435493a il_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe6704bf7 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe7011bdd il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xecd66c66 il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xed56c308 il_mac_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xedf20e8e il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf16d1b7c il_init_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf2111116 il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf27dbdba il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf2d2704f il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf501278b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf8d169ea il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf9800682 il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfda9fe2a il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x08dd8699 __tracepoint_iwlwifi_dev_rx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0c50fa2b __tracepoint_iwlwifi_dev_tx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x1ecc5465 __tracepoint_iwlwifi_err +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x2f7b7e55 __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x3b9d00d6 __tracepoint_iwlwifi_dev_ioread32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x675bcb86 __tracepoint_iwlwifi_info +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x779dd6f5 __tracepoint_iwlwifi_dev_iowrite32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x85c1bb84 __tracepoint_iwlwifi_dev_iowrite8 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x8de37664 __tracepoint_iwlwifi_dbg +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x954eb7a7 __tracepoint_iwlwifi_crit +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x963a6f8a __tracepoint_iwlwifi_dev_ucode_error +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xb8f7026f __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xe2dcc8de __tracepoint_iwlwifi_warn +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xf9ec6bdd __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x174d9b24 orinoco_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x2489485d orinoco_up +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x355e5926 orinoco_get_stats +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x4b75d4dd orinoco_down +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x77a9573d orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x7ed56c9c orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x7f8970fd orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xa1d7a36b orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xa39a81d1 orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xb10323d0 free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xb9c82997 __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xbb7ce16b __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xcd7d7745 alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xdb0cbd65 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xdc33073e orinoco_open +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xdc595633 orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xeebef735 orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/btcoexist/btcoexist 0xe54077aa rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x06fa6d03 rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1217614f rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x15fca149 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1fd523a2 rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x20adf604 rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x2daeae79 rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x366fb966 rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x38e4e1fc rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3dd85a49 rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x48c1086c rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x4bc5f3f7 _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x51af5ca2 _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x51bb9edf rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x52ff6e1c rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x62ca321a rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x631f6cab rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x6652edc9 rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x66b0dc77 rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x66bf93a8 rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x69762aeb rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x6f857199 rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x70305bda rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x735b8919 rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7575c3f7 rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x77ad980a _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7a875707 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x86cb82d3 rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x88b484a2 rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8d7033cc rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x9b597f15 rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa2621372 _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb3314d48 _rtl92c_phy_calculate_bit_shift +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc0732f29 rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc2da2103 _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc7250cd4 _rtl92c_store_pwrIndex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xdf8f76e5 rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe36f2367 rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe3f98fd6 rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe6ac3e62 _rtl92c_phy_dbm_to_txpwr_Idx +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xef291e5f _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf1e0b157 _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf22d6d16 rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x4de76e6d rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x53e80bf1 rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0xa390d10d rtl_pci_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0xd2fd65eb rtl_pci_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x09037eb0 rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x5d0b6f3f rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x74034ff5 rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0xea6a81b8 rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x15ecdcd6 rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x1e45e876 rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x207fbb70 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x23c203ff rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x6c27600e rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x6ca1a408 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x74aef5cb rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x79188a02 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x91246b1f rtl_ps_set_rf_state +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x964a2e96 rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x9e77710a rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xa3bacb69 rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xb8b116e2 rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xbafeefd8 rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xd17c8da3 rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xd2c16cc5 rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xd83b2ca1 rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xdb56d81a rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xdbf9a78d rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xe16bfa6b rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xef4415e0 rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xf949d22c efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x18326379 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x650ed6f8 wlcore_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x9c9947e1 wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xe1a15ede wl1271_free_tx_id +EXPORT_SYMBOL drivers/nfc/microread/microread 0x407b1d22 microread_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0x686912c6 microread_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x6ebe0354 pn544_hci_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xe52539d5 pn544_hci_probe +EXPORT_SYMBOL drivers/parport/parport 0x1988dd88 parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x1acaf50c parport_read +EXPORT_SYMBOL drivers/parport/parport 0x1edfd445 parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0x2817c68c parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x2dfaefdb parport_release +EXPORT_SYMBOL drivers/parport/parport 0x3bbc4bb4 parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0x3dc4aee1 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0x4467f9c8 parport_write +EXPORT_SYMBOL drivers/parport/parport 0x45dc871e parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x4c91ea1c parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x5cbec2af parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x62c6d6b5 parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0x638e30dc parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x6def6414 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x79e8500d parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x8fd215fe parport_claim +EXPORT_SYMBOL drivers/parport/parport 0x96d2c282 parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xa612fb71 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0xa8944ef0 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0xa982aa06 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0xabae87a6 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0xb316f590 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xcdc76e80 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0xd32a601a parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0xdae63da4 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0xe7194c8e parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0xed791e62 parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0xef3c7436 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xf4520e65 parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0xf947d881 parport_register_device +EXPORT_SYMBOL drivers/parport/parport_pc 0x2df7c46a parport_pc_unregister_port +EXPORT_SYMBOL drivers/parport/parport_pc 0xaba110c1 parport_pc_probe_port +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x0a35b276 pcmcia_map_mem_page +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x16408fea pcmcia_dev_present +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x25bd3822 pcmcia_request_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x321bf966 pcmcia_unregister_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x3bcc0c90 pcmcia_request_io +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x3c5c580f pcmcia_loop_config +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x61483db9 pcmcia_disable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x742f5665 pcmcia_parse_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x773968b2 pcmcia_fixup_vpp +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x88bc412f pcmcia_get_mac_from_cis +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x960370ff pcmcia_read_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x9b745926 pcmcia_fixup_iowidth +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x9b9ae2e9 pcmcia_write_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xa1fc42ce pcmcia_get_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xadbd1b64 __pcmcia_request_exclusive_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xb7d40364 pcmcia_release_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xbe2764b1 pcmcia_enable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xd9722aca pcmcia_request_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xe3801548 pcmcia_loop_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xee4c31cf pcmcia_register_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x0f57ae71 pccard_register_pcmcia +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x19c1c5bc pcmcia_socket_list_rwsem +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x212db8d2 pcmcia_socket_list +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x2880a853 pcmcia_socket_class +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x434bd31b pcmcia_register_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x43efcc7f pcmcia_put_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x5d5fe0b9 pcmcia_get_socket_by_nr +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x5dcb3153 pcmcia_reset_card +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x6b5dc80d pcmcia_unregister_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x7403688e pcmcia_parse_events +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xaa701edc pcmcia_get_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcf97f3bd dead_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xfbed4939 pcmcia_parse_uevents +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x01b12cd2 pccard_nonstatic_ops +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x661899df pccard_static_ops +EXPORT_SYMBOL drivers/platform/x86/intel_ips 0xd32b0b5b i915_bdw_enabled +EXPORT_SYMBOL drivers/platform/x86/sony-laptop 0x5bb1e117 sony_pic_camera_command +EXPORT_SYMBOL drivers/pps/pps_core 0x008f55fb pps_event +EXPORT_SYMBOL drivers/pps/pps_core 0x1af8a1fa pps_unregister_source +EXPORT_SYMBOL drivers/pps/pps_core 0x24ff3198 pps_register_source +EXPORT_SYMBOL drivers/pps/pps_core 0x2c80d124 pps_lookup_dev +EXPORT_SYMBOL drivers/ptp/ptp 0x35dcf570 ptp_clock_register +EXPORT_SYMBOL drivers/ptp/ptp 0x49ccafe4 ptp_clock_event +EXPORT_SYMBOL drivers/ptp/ptp 0x8ee635d2 ptp_clock_index +EXPORT_SYMBOL drivers/ptp/ptp 0xa4df7eaf ptp_clock_unregister +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x054442ac pch_src_uuid_lo_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x0a0dbcb5 pch_ch_event_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x0abef056 pch_rx_snap_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x3d1dec01 pch_tx_snap_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x69906c22 pch_ch_control_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x8cdaefb3 pch_ch_control_write +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x94c8e489 pch_src_uuid_hi_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0xd1ae7c4e pch_set_station_address +EXPORT_SYMBOL drivers/ptp/ptp_pch 0xf7cc8c16 pch_ch_event_write +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x86d1352c rproc_put +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x9f340868 rproc_da_to_va +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xa0880652 rproc_vq_interrupt +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xa29446ad rproc_shutdown +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xcdc2a5d0 rproc_del +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xd2029add rproc_add +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xdb5378d3 rproc_alloc +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xeb725848 rproc_boot +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xf6749ba3 rproc_report_crash +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x1048e2ec fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x10946b5f fcoe_ctlr_destroy_store +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x3a47205f fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x5f723145 fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x60706275 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x6bb9006c fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x7550b8dd fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x93d02bed fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xa07d8d2d fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xb4bf70da fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xbe72c9fe fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xfeb3524e fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x020da894 fc_change_queue_depth +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1475d14f fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1c75ca9d fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x235a895f fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x25498d33 fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3049417e fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36e5fbaf fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x371fc44e fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3793d6ef fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3b3aee75 fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3efd8592 fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4d74aa3e fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x52808430 fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x535ae2d0 fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x560ce25e fc_rport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5c8d15ba fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x623918c7 fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x64b4b560 fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6a9bd9f5 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6ee85d28 fc_change_queue_type +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6f63ca3f fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x74b6c5ef fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x771dae03 fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7a146ec9 fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7d372356 fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7d529252 fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7f453e47 fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x851d89e7 fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8a3f2529 fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8d209a5d fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x95ad734d fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x972e2825 fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9b52c0f5 fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9b888b7d fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa12134eb fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb1dadd03 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb597a4e6 fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbe6fd43d fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc06745cf fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc0fcd714 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc261bf15 fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc27dbfaf fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd340ce94 fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdd631664 fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xde6a3ac9 fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe37ecdef fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe7bd5a3e fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe8e8307f fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf18def37 fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf530f0c3 fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf8630d51 fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf987c097 libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfe133a47 fc_linkup +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x37387689 sas_wait_eh +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x65cf816d sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x81a60d53 sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8a87e724 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x9241cdc3 sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x2250c66e mraid_mm_adapter_app_handle +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x512c956d mraid_mm_unregister_adp +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0xaff679fd mraid_mm_register_adp +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x08f5509e osd_req_read_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0c17edb1 osd_sec_init_nosec_doall_caps +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x15a02047 osd_req_list_collection_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x163b04ca osd_req_read_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x167f313d osd_req_write_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x1a4fa0a4 osd_finalize_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x1bfa2d4b osd_req_list_partition_collections +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x273f807b osd_req_read_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x31c68b0b osd_req_create_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x35873052 osd_req_list_dev_partitions +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x36912c69 osd_req_write +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x3ddf8bc3 osd_execute_request_async +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x4cc0a79e osd_req_write_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x523e39d6 osd_req_add_get_attr_page +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x54e43d3d osd_req_list_partition_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x5b632b6d osd_req_decode_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x5d7b405f osd_req_set_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x63a2afce osd_req_remove_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x68a2e8e7 osd_dev_init +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x6e30ff43 osd_dev_fini +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x72e495ef osd_req_add_set_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7302f4a1 osd_req_add_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7a461ba6 osd_auto_detect_ver +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7c98e026 osd_req_format +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8abf68a3 osd_req_write_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8e5d789e osd_start_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xa518630b osd_end_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xa6c11bc3 osd_req_decode_sense_full +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xa94e4960 osd_req_read +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xca220d1d osd_req_flush_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xce76b91a osd_req_flush_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd1adefd4 osd_req_flush_obsd +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd961cafe osd_req_remove_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xf58e0c4d osd_req_flush_collection +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xf71366db osd_req_get_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xfb2082d6 osd_req_create_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xfebeed94 osd_execute_request +EXPORT_SYMBOL drivers/scsi/osd/osd 0x129a5c7d osduld_put_device +EXPORT_SYMBOL drivers/scsi/osd/osd 0x16cedb0c osduld_device_same +EXPORT_SYMBOL drivers/scsi/osd/osd 0x5f3fba76 osduld_device_info +EXPORT_SYMBOL drivers/scsi/osd/osd 0x5fc48609 osduld_unregister_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x982bfa1f osduld_info_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0xb833b961 osduld_path_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0xe5bd75f2 osduld_register_test +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x01ccaed6 qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x3b00833b qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x42443e43 qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x4634e6f9 qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x53f6e9ee qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x603dda5b qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x91a3ff6f qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x9d31640f qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xa48f7b16 qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xf3eccf87 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xf9b35087 qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x1f55cd70 qlogicfas408_ihandl +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x3d755e49 qlogicfas408_info +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x3f86b59f qlogicfas408_abort +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x3fd8cd71 qlogicfas408_detect +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x4423149c qlogicfas408_disable_ints +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x4745d23d qlogicfas408_biosparam +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x518e0757 qlogicfas408_bus_reset +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xc659b54f qlogicfas408_queuecommand +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xe76b3b20 qlogicfas408_get_chip_type +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xf2b95199 qlogicfas408_setup +EXPORT_SYMBOL drivers/scsi/raid_class 0x1496857d raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0x516f5870 raid_component_add +EXPORT_SYMBOL drivers/scsi/raid_class 0xeff76499 raid_class_release +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x16ed8784 fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x1823f7a2 fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x408a3e28 fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x42d7d1af fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x6e3be5fd fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x6e8282a6 scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7954b1ea fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x815020d6 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x86a035b0 fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x8faa4da3 fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x938990c6 scsi_is_fc_vport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xa10e7875 fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xbaa0227a fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd463fc4f fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x026cab6d sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0c0158a2 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x19d81d05 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x20b92048 sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2a2c3047 sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x37d1c376 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4b6d8f23 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4b849c0c sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x528ade55 sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5501a87f scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5dd97f53 sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5f62be3a sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x68947b21 sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x730abc47 sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x83856cd3 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x879bfdba sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x900e5342 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x90cdfee1 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x936d9bed sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa430cf4d sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa72311cd sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xaa059f46 scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc1a6a6f9 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc20407e1 sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd0168eb9 sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xdc0cd452 sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xfae4374c sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xfd4a8174 sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x12afbf60 srp_rport_put +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x662c6a99 srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x9a30d44c srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xce05bafa srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0xac7c49a4 ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0xe3532aef ufshcd_runtime_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0xe8c1d430 ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x2a4af77b ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x3a7b1542 ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x4fb2c4c0 ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0x70284643 ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0x7a5a7a38 __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0x7bed13dc ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x97b0b35b ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xacb057fd ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0xaf6945ea ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0xafae3d07 ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0xbc3c2179 ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xc0512e0f ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xc0b440ba ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0xc6c665aa ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0xcda6a441 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0xd1b175ec ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0xd481192b ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xe3f63db0 ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0xe5956b49 ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0xeb55e317 ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0xec4915ba ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0xf78e0f60 ssb_bus_pcibus_register +EXPORT_SYMBOL drivers/ssb/ssb 0xf8a490b3 ssb_device_enable +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0x3227967d fwtty_port_get +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0xef60f012 fwtty_port_put +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x606f8904 adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0xc9f186ca adt7316_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x65e405ac ade7854_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x6d3f1123 ade7854_probe +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0264d470 lnet_extract_iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0363b57a lnet_copy_iov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0bce7eef lnet_counters_get +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1366b7ac LNetSetLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x19670622 LNetNIInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1b191752 lnet_msgtyp2str +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1fe16fd5 LNetGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x204b8151 lnet_counters_reset +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2aa9953d lnet_cpt_of_nid +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2ac93e90 lnet_connect_console_error +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2f7522c2 lnet_notify +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2f8cf3a2 lnet_finalize +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x33202a6c LNetGetId +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x35cad8d0 lnet_connect +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3c779ee0 LNetPut +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3f4f5b46 LNetNIFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x44a6b24e lnet_extract_kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x44c3b114 lnet_copy_kiov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x473ad33b LNetDist +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x56203dca lnet_parse +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5811a721 LNetInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x58a1ca89 LNetMDUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5fee352c lnet_acceptor_timeout +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x61f784b2 LNetClearLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x64cdea3a LNetCtl +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x64f25b0c lnet_set_ip_niaddr +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x6f7be171 LNetEQGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x707bae29 lnet_unregister_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x722c76e5 LNetMDAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x75bf8b56 the_lnet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7d59a7fe LNetMEInsert +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x854ab844 LNetEQWait +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8735c56e lnet_copy_iov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8a3064f2 LNetSetAsync +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x92caf2f2 lnet_create_reply_msg +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9de986d3 LNetEQAlloc +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa3d61f8d lnet_iov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa8c2760b LNetFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa414970 LNetMEUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa9b477e LNetMDBind +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xadcade58 lnet_register_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb75f7953 LNetEQFree +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xba5566d2 lnet_acceptor_port +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xbf0760a2 LNetMEAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xc3a32424 lnet_kiov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xc6fde6c4 lnet_copy_kiov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xc724a58d lnet_set_reply_msg_len +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xeb88cd42 lnet_net2ni +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf1b316bf LNetSnprintHandle +EXPORT_SYMBOL drivers/staging/lustre/lnet/selftest/lnet_selftest 0x078db139 lstcon_ioctl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x09ce8cc2 seq_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x132b6b4a seq_client_alloc_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x13acb7b5 client_fid_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x1c4bb5f9 LU_OBF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x24fde5bd seq_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x375e6f8d LUSTRE_BFL_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x6f3c7b08 seq_client_get_seq +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x72a863e3 client_fid_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xae61cff5 LU_DOT_LUSTRE_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xc997a02f LUSTRE_SEQ_SPACE_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xdc774a69 seq_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xecee2727 LUSTRE_SEQ_ZERO_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x070239c1 fld_client_add_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x3fc4ba08 fld_client_del_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x884836a4 fld_client_proc_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x8ce28258 fld_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x91d577cb fld_client_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xb6302f27 fld_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xf928d39c fld_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x000c507f libcfs_debug_dumplog +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x00baf17a libcfs_kkuc_group_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x01db5172 cfs_percpt_atomic_summary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x03387ca6 cfs_curproc_groups_nr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x04d3ce6a lbug_with_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x069f9bb2 cfs_wi_schedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x06acbefe cfs_hash_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08ada613 libcfs_console_backoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0b4b1546 libcfs_lnd2modname +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0de6c369 cfs_cap_lower +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0eb410a2 cfs_percpt_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0ee3a27c cfs_hash_for_each_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0f5eff79 cfs_percpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1059cbd6 cfs_hash_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12426266 libcfs_run_lbug_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x127b745d cfs_hash_dual_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12cd873d cfs_cpt_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x150034e5 cfs_hash_dual_bd_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x162e0511 upcall_cache_flush_idle +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x16605f1c cfs_hash_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x16bef72c cfs_hash_rehash_cancel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1756d138 cfs_hash_for_each_nolock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x17ac7833 libcfs_deregister_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1a60d439 cfs_parse_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d5a3928 cfs_timer_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1e68cbe4 libcfs_sock_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2143ceb7 cfs_cpt_table_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x24f39469 cfs_cpt_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2663147a __cfs_fail_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x26b80c60 cfs_cpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x27b6d3ba cfs_ip_addr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x29bf925f cfs_hash_bd_del_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2a876a64 cfs_hash_size_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2b1e0458 cfs_get_environ +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2da017ea cfs_cpt_set_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2db9d08f cfs_hash_dual_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2dbe54b2 cfs_trimwhite +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x30986343 cfs_range_expr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x30f7eff6 upcall_cache_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x314d752a cfs_hash_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x31a4294d cfs_cpt_unset_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x31fc5082 cfs_crypto_hash_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x32cd9771 upcall_cache_get_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x346b9d41 cfs_cpt_weight +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x361e82d4 cfs_firststr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x377f93fb cfs_srand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x389ca502 libcfs_debug_mb +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x39fdcd2b libcfs_debug_set_level +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3b7129eb cfs_hash_hlist_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3c1285bd libcfs_subsystem_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3d2cce75 cfs_cpt_set_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3d5e6098 cfs_race_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3e3ae0da cfs_hash_bd_peek_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ea730c0 cfs_gettok +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ef0d90c libcfs_kkuc_group_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3fe13eaa cfs_cpt_unset_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x403dab4d libcfs_sock_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x411db754 cfs_crypto_hash_final +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x41ab33a1 libcfs_ipif_free_enumeration +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44839bbb cfs_rand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44f07cfc cfs_pause +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x47fdb4d1 cfs_timer_is_armed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x48f163c6 libcfs_str2anynid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4a99af72 cfs_clear_sigpending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4ae500f8 add_wait_queue_exclusive_head +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4bd3ea3d cfs_hash_bd_move_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4c7e3d8a cfs_hash_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4e8fbec5 cfs_cpt_table_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4f1f2fa5 cfs_crypto_hash_digest +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x50345570 libcfs_str2net +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5051b6d2 portal_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x509d38b0 libcfs_net2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x50bca709 cfs_cpt_spread_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x54fd9a71 cfs_percpt_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x56a518ce cfs_cpt_set_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x58a7ee00 libcfs_catastrophe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x58e7f03a cfs_hash_dual_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5946ec2b cfs_percpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x59f95db2 cfs_cpt_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5aee0169 cfs_percpt_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5c013b81 cfs_expr_list_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d3be65a cfs_crypto_adler32_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d655232 cfs_percpt_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d73c3e3 cfs_expr_list_free_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5dce9e80 libcfs_lnd2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62289d65 cfs_array_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62822d74 cfs_hash_dual_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62b9cb2e cfs_percpt_atomic_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6326638a cfs_percpt_lock_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x64685fef libcfs_console_min_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6564c55b libcfs_console_max_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x656e257d upcall_cache_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x65dd9f0c libcfs_run_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x66136d2d cfs_timer_arm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x66fbb44d libcfs_kkuc_msg_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x67398404 cfs_wi_sched_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x692bd054 cfs_hash_for_each_safe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c905b5f libcfs_watchdog_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6dfa9ea1 cfs_crypto_adler32_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6e242a95 cfs_hash_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6e6af71c current_is_32bit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6f928e1b libcfs_debug_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71f662a3 libcfs_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x78bd2818 libcfs_sock_listen +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a3d49ae cfs_expr_list_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7b0b748a cfs_ip_addr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c7986cf waitq_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7d11d8ec cfs_cpt_unset_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7e6f6485 cfs_ip_addr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7f99ddb6 cfs_race_waitq +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7fda989d cfs_fail_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8151c3aa cfs_cap_raised +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x83d795e4 cfs_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x857aaea7 libcfs_register_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x875e0492 cfs_hash_del_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8840f591 cfs_block_allsigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x89025bdd cfs_hash_debug_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x89ce22bb cfs_hash_cond_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c500d25 cfs_cpt_table_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c85e4e6 cfs_crypto_hash_speed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8d26cd32 upcall_cache_flush_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f12bb52 libcfs_log_goto +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f45f10d cfs_init_timer +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x91504e8b libcfs_kmemory +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x92e2ce18 libcfs_sock_getaddr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x940ed192 libcfs_stack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x95620e8c cfs_wi_deschedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x97652a15 cfs_hash_is_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x97b0b9bc cfs_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9879b229 cfs_get_random_bytes +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x98f9a807 libcfs_sock_abort_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x994ac27f cfs_cpt_table +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x99661e2b cfs_hash_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9e420643 cfs_restore_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9f82f712 cfs_trace_copyout_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa0650897 cfs_cpt_unset_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa2b68b2a cfs_array_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa3c9f30f cfs_hash_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa4bc5fb5 cfs_hash_rehash_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa6b9dee6 libcfs_kkuc_group_rem +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9088531 cfs_expr_list_values +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9dc74e2 cfs_trace_copyin_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9eae690 cfs_str2mask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xaa587cf6 cfs_hash_add_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xab887583 init_waitqueue_entry_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xad019238 cfs_str2num_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xadff0b45 libcfs_sock_getbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb192994e libcfs_sock_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb20c6ebb cfs_hash_for_each_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb2854871 upcall_cache_downcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb4e48237 cfs_cpt_online +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb972619 proc_call_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb9cb508 cfs_curproc_cap_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbd5d492e cfs_timer_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbf7a37f1 cfs_signal_pending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbfd95213 libcfs_sock_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc0ea7fc0 cfs_expr_list_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2911d96 cfs_expr_list_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2dfd791 libcfs_console_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc39fd2f9 libcfs_panic_on_lbug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc3eb614e libcfs_ipif_query +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc47433a6 cfs_capable +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc49b1c62 cfs_percpt_atomic_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc6a536cf cfs_hash_debug_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc78a69e8 cfs_crypto_hash_update_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xca9320d4 cfs_hash_findadd_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcb385db9 libcfs_debug_binary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcbab8493 schedule_timeout_and_set_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcc20e694 libcfs_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xccc45639 cfs_free_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xccd9aa58 cfs_percpt_lock_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcce5b37f cfs_hash_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcd38904c cfs_wi_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xce1a88f2 libcfs_arch_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf61bacb __cfs_fail_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcfab9ecb upcall_cache_put_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6a52be3 libcfs_printk +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6f1fc60 cfs_strncasecmp +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd8857d7a cfs_hash_rehash_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd96f406d cfs_cap_raise +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd99a44dc libcfs_sock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xde17bb8d libcfs_isknown_lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xded410c2 cfs_hash_rehash +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf26be81 cfs_hash_dual_bd_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf2789c0 cfs_curproc_cap_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdfecb98d cfs_block_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdffc951d cfs_timer_disarm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe3bf6897 cfs_percpt_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe5c5e952 cfs_wi_sched_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe63efe11 upcall_cache_flush_all +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe6555032 libcfs_ipif_enumerate +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe7b54314 libcfs_arch_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xea411f63 cfs_block_sigsinv +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeb447115 cfs_hash_getref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeb4913fd cfs_cpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xec1f56d5 libcfs_str2nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeceac781 cfs_fail_val +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeda75539 cfs_hash_bd_add_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xedf3a25a cfs_timer_deadline +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeef44867 libcfs_sock_setbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xef66c80b cfs_cpt_set_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf1872998 cfs_cpt_of_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf3a80fbc cfs_hash_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf440bb38 libcfs_kkuc_group_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8a8644b libcfs_id2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8efb8c5 waitq_timedwait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf94025d1 libcfs_str2lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfc4c70a2 cfs_cpt_bind +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfe565fa9 cfs_crypto_hash_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xff0f98a6 libcfs_debug_vmsg2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x0cb19a73 ll_direct_rw_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x4aca4118 ll_iocontrol_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x6b89402a ll_stats_ops_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xcd3cde92 ll_iocontrol_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xce4f9fbd ll_osscapa_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x00203d9d lov_device_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x1c444555 lov_stripe_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x2d84506a lov_stripe_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x6a89aa76 lov_read_and_clear_async_rc +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x8c527b93 lov_lsm_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xbc9e63d0 lov_lsm_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x05601dd7 l_dentry_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x2924a49a fsfilt_unregister_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x5547dc2a push_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x57135e5d fsfilt_register_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x640456ad lustre_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x6c50b119 pop_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x6cfccc8e lprocfs_stats_alloc_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x793fd5c4 lprocfs_counter_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xab8fc6a7 fsfilt_get_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xab91201a fsfilt_put_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xb4f8ee63 lprocfs_read_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xd0591c84 lprocfs_counter_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xf53861f8 obd_memory +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x14a47f31 it_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x9c22b84f it_open_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xb57d8447 it_set_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xf46a886f it_clear_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mgc/mgc 0xdc287f95 mgc_fsname2resid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0028a406 lu_device_type_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x00e0a278 class_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x00e7b0bd obd_llog_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01027213 class_devices_in_group +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01665e34 class_parse_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01f70b49 llog_copy_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x034490b3 cl_page_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x035852d0 lustre_swab_llog_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0363d06c cl_req_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0522fbae iattr_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05684880 dump_lniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x057f6d4b class_find_old_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x067b71c3 llog_declare_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x068d748f local_oid_storage_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x06d946d6 class_exp2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x06da5e9a cl_wait_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07aa68bb lustre_swab_lustre_cfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0837802a class_new_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x083942ff class_del_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x08d103bc cl_2queue_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0a1cd71e lprocfs_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0a935f4f class_incref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b8a44d9 lprocfs_oh_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0c24f7ce dt_declare_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0c398e4a dt_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0ceda785 lprocfs_add_vars +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0d1b7836 lprocfs_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0d1d7c27 lu_object_anon +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0d2fb52e lu_dev_add_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0e2c528f class_handle_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0e33c823 llog_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0ec9e4d3 cl_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fa2a4d2 cl_lock_hold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fe91547 obdo_to_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x100cb743 lprocfs_rd_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x10f281b6 class_new_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x112f2164 cl_page_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11407987 cl_io_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11495519 lprocfs_write_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11df2886 lustre_idmap_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x123e5b5b dt_directory_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x146db25b capa_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1491dc30 lu_context_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x15e40d60 cl_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x164bd3d8 lprocfs_alloc_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1720607f lprocfs_init_ldlm_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17260880 obdo_cpy_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x18356f84 llog_open_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1857e76f cl_page_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x188f461f lu_context_key_revive_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1898c712 cl_req_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1a2382a3 dt_lookup_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1a5a1cdf llog_exist +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1aa085af class_export_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b86127b class_process_proc_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1bbdb5b6 llog_cat_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1c087365 lprocfs_free_per_client_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1c67d2ce lprocfs_counter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1d03ac90 cl_io_loop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1da48212 class_handle_hash_back +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1dab8949 cl_locks_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1e1f8c14 llog_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1ee3c682 lustre_in_group_p +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1f012fe5 dt_index_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x207a786b lu_context_key_quiesce_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x20a207b4 lprocfs_rd_u64 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2105dbb6 cl_io_iter_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21224a22 cl_object_attr_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x217ca7fa cl_lock_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21a1f587 lprocfs_rd_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21b05a34 capa_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21e1f465 lu_object_locate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x221826f1 class_parse_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x23881432 class_name2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x23a39f06 cl_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x247da4ac cl_lock_nr_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x24df97cd cl_lock_enqueue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x251c1725 cl_page_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25403fe6 lu_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2547efae lustre_uuid_to_peer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x275cdc7a cl_env_reexit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x27967b5e dt_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x27fcf670 cl_page_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2814bcee llog_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x28158354 cl_sync_io_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2908cbd1 lu_device_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2951d949 cl_lock_extransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x296509eb cl_object_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x297cf5e0 class_handle2object +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2998a7ab cl_page_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ae1cd79 kuc_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ae8f398 lu_context_key_degister_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2b50c535 cl_page_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2c4b74d6 lprocfs_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2c6582a5 class_conn2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2c9461d1 cl_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d2d8736 class_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d77be31 lprocfs_oh_tally_log2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2edd0d6b cl_req_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2eeb1673 capa_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2f4b209e lu_ucred_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32a22b25 cl_type_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32ba7a38 dt_quota_slv_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32bd6269 llog_init_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x332409ee cl_lock_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x332ad019 lustre_idmap_lookup_gid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x33c151e3 lu_buf_realloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34bf4563 cl_io_submit_rw +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x358b324d dt_txn_hook_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x35d276b2 cl_offset +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x369463f4 class_detach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x36bf6528 dt_txn_hook_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x373a8a8b dump_lsm +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3772127c llog_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37ed6e4b at_early_margin +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38594da5 obd_devs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38af8884 dt_store_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38fb0c90 class_match_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3974e09a cl_lock_disclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x39a5155c lu_context_enter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x39c66918 cl_env_unplant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a36bc1d cl_lock_unhold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a43d2e5 lu_object_find_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a55f12d cl_io_read_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3acf3162 llog_cat_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d169604 lu_object_add_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d512306 class_manual_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d92e98a cl_page_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3da3652e class_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3e47a5a7 lu_object_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3eab7bfe LU_BUF_NULL +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3f637d85 cl_lock_state_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3f8a9118 class_config_parse_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3fc73015 lu_env_refill_by_tags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4110e41c lu_env_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x41172bd8 lustre_idmap_lookup_uid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x41d5002b lu_context_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x423ce348 class_uuid2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4383fcbf lu_object_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43881437 cl_2queue_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x438c400e llog_cat_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43b80028 cl_page_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44094d0b cl_page_find_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4429006f cl_object_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44381593 cl_sync_io_note +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44e41abb lustre_posix_acl_xattr_filter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x452f559a lu_buf_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x459f5a3d lprocfs_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x45b3b508 llog_cancel_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x46099c54 lprocfs_alloc_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x468aa7a7 local_object_unlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x470330df cl_object_has_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x474ed5bd lustre_swab_ll_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47b35f7d statfs_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48c6456e lu_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x494cfb52 lustre_acl_xattr_merge2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a0f6ea lustre_posix_acl_xattr_2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ac58713 obd_connect_flags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4b5fca09 cl_unuse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4b8ed911 cl_io_rw_advance +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4bec9846 dt_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c190aad lprocfs_find_named_value +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c4c700b obd_alloc_fail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ca93db2 llog_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4cf6340e cl_req_page_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d13458b kuc_len +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4dafff61 cl_page_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4db23f7c cl_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4e9b5291 cl_page_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4fb56d94 cl_page_list_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5091a74a obdo_from_iattr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50c7fc36 ptlrpc_put_connection_superhack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50f7f326 llog_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x51881ea7 cl_lock_modify +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x51979933 cl_object_attr_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x52230693 lu_context_key_degister +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x52791371 lu_context_key_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54885f87 ldlm_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54b0acb5 lu_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x556cc3d6 lu_context_key_revive +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x558bec27 obd_ioctl_getdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x55ac8821 lu_ucred_assert +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x55d54f8c lu_context_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x560dd989 cl_page_list_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x564e9d44 init_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x565cad7d cl_lock_closure_build +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x570d09ae lustre_swab_lu_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x57114c4f llog_osd_put_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x582b013d dt_quota_glb_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x589b2bb5 cl_env_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x58a69b9b md_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5968d395 cl_env_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x599b10c9 lprocfs_wr_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x59b9c443 cl_page_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a20d896 obd_memory_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a5a44a0 lprocfs_rd_conn_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ab18648 class_exp2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ba6eaca class_num2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bc022c5 lprocfs_dt_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d34ae0d cl_lock_mode_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d723880 class_disconnect_stale_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e5be2da capa_cpy +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ed188a9 lprocfs_add_symlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fb331b5 obd_export_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fe97b73 block_debug_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x602d5ac4 cl_lock_mutex_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60ed4e19 cl_io_commit_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6247f703 cl_page_vmpage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x62ffa83a __llog_ctxt_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631a518d mea_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631fd7b9 lustre_ext_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x63349268 local_file_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6372b721 capa_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x645aa036 cl_lock_enclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x64e0d301 class_conn2export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6502f8d3 cl_page_list_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6595e685 llog_osd_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6613456d obdo_to_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6734adbd lprocfs_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x675244fa dt_otable_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x677fd7f9 proc_lustre_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67977b42 lprocfs_remove_proc_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67a90622 la_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67dc223a lprocfs_remove +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6890d175 lustre_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x695ddffa obd_llog_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69988a83 lprocfs_rd_server_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69c42114 at_min +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6b1ef146 cl_lock_discard_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6b332477 cl_lock_descr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c21a814 class_find_client_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c52c8cc lu_kmem_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c7a5d01 cl_io_iter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6d517d1c cl_page_list_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6e0263db obdo_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f41ebbc dt_index_walk +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72011f8c lprocfs_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72079370 cl_page_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72ddee4c obdo_le_to_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x734a68ba lu_context_key_register_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x74049331 cl_lock_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x742559b1 class_unregister_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x749e9010 llog_cat_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x752f71a8 class_get_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x756a77f3 class_parse_nid_quiet +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x76453a38 lu_object_assign_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x764cb14f cl_pages_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x76682c7f cl_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x768d45e1 lustre_idmap_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77433f77 cl_page_cache_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77d2089a class_name2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77debdd2 cl_vmpage_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7802fcd7 lustre_swab_llogd_conn_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7808ce75 lu_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x789796a1 obd_zombie_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x79ec1a37 local_index_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7a135e29 lprocfs_stats_collect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7a464832 cl_io_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7ae7354f lprocfs_add_simple +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b3833e9 class_config_dump_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b4a1e35 cl_lock_is_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b4fc57b at_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7bd52e81 llog_declare_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7be3729c llog_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7be39c2c cl_page_clip +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7bee9cbb cl_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7d9bb44a class_conn2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7db425da cl_page_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7dd61c41 class_put_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7e0600a4 llog_cat_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7e962e57 dump_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7edcafa0 cl_env_reenter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7eddcecd lprocfs_free_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f7d7cd9 lu_buf_check_and_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fad7291 raw_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fe5561a obd_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8031efb8 lprocfs_dt_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x806cc497 class_add_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8088e416 class_disconnect_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x812883e9 cl_2queue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81742d89 obd_ioctl_popdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81793b13 cl_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x831f656c class_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x835850ba class_handle_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x83f1acbf obdo_from_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8406c978 cl_enqueue_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8489f086 obd_alloc_fail_rate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x849e5385 obd_update_maxusage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x84c89bd6 lprocfs_seq_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x84e307ab cl_lock_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8503c454 lu_buf_check_and_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x85a2c300 lprocfs_init_mps_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x85ea557f llog_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x866ecfc9 lprocfs_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x872dd3b7 lprocfs_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8924421c obd_export_evict_by_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x89660952 dt_txn_hook_commit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x899e04dc cl_lock_ext_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8a207487 cl_io_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8a5bdf62 cl_lock_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8a9d3a7a lu_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8aa2c358 lprocfs_dt_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8af0ebbf cl_page_gang_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b5f4057 lu_context_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ba6e479 lustre_swab_lu_seq_range +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8c0723de llog_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ca2552d llog_cat_init_and_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8cc0bfd8 lustre_register_kill_super_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8d47eb7a lprocfs_wr_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8dc662c6 cl_page_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8e10e6d6 server_name2svname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ecd6cc2 class_connected_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ef7a781 lprocfs_oh_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f67314c obd_dump_on_eviction +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x900edf2b cl_env_nested_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x90635fb8 lu_object_put_nocache +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9110ae99 local_file_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9201a15d lprocfs_free_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92e58479 obd_dump_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9348a4ac cl_page_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9370420a cl_page_list_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93b46468 lu_session_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93cf86a1 dt_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9406b115 cl_page_list_splice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x94679d2a cl_lock_hold_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x947ea118 cl_lock_mutex_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x948408ed lprocfs_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x950e8dd2 dt_locate_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9512d507 lustre_acl_xattr_merge2posix +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x955f5220 ldlm_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95735c6c at_extra +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95bef1de cl_page_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95ec998a lustre_groups_sort +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x973d533e lu_device_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9763af81 cl_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9767adce class_uuid2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x97d03783 at_history +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x98225f78 cl_env_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x98f83c45 cl_lock_descr_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9905ee1f class_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x99a30a2d class_register_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x99e12359 lprocfs_single_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9a154450 cl_req_page_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b1ed9d8 obd_jobid_var +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b77afc6 cl_lock_weigh +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b90bd1d cl_lock_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9c0266a9 llog_osd_get_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9c25c853 cl_env_implant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9c6be73f cl_io_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9cd171b8 cl_lock_closure_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9db5555b cl_2queue_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9dbb17b6 lprocfs_dt_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ed2f24c dt_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa1744335 cl_object_kill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa21c5ea1 obdo_from_la +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa28a26c2 lustre_end_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa291da34 dt_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa2da6e00 llog_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa31ea274 lu_object_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa487dd7f lu_context_key_quiesce +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa4c2a3a6 dt_try_as_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa513f7e4 lustre_groups_from_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5df1b14 cl_lock_get_trust +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5fb234f lprocfs_write_frac_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa66143f9 class_config_llog_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa674c241 kuc_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa69ec242 cl_lock_closure_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa6c2926c dt_store_resolve +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8a43d9d cl_io_rw_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa9700253 cl_2queue_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa21b7a0 lustre_register_quota_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaad41e6d class_export_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaba9a2ac cl_lock_is_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabf45922 capa_decrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac7f1596 kuc_ptr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaca8c31e cl_lock_at_pgoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xacb838a3 lprocfs_init_ops_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xad0e260b local_index_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xad82100d cl_page_is_owned +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xad91dd65 cl_page_list_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xadad861f lu_object_invariant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xade8f628 cl_lock_user_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xadea66ba lustre_idmap_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xae5f8a1d obdo_from_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaef7b7d8 lprocfs_obd_rd_max_pages_per_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaef8171c cl_sync_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xafdc3a5a cl_io_prepare_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb01963a6 class_uuid_unparse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0fb9886 cl_lvb2attr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb10a97d4 lprocfs_rd_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb12c3d39 lprocfs_free_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1873a7c lprocfs_register_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1b89b6d class_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb20ecf4b lu_device_type_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb238aa95 lu_dev_del_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb28c9c76 lprocfs_exp_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb2d37f8b local_oid_storage_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb301bb33 llog_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb3bed6e5 llog_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb41998cd lustre_cfg_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb5ac0cc2 lu_ucred +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb5b75fbd cl_lock_signal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb5d21074 llog_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb5e1f478 cl_page_list_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb635af9e dt_acct_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6ba5dd5 kuc_ispayload +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb703b007 lprocfs_at_hist_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb743ec6a dt_mode_to_dft +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb7badf90 lu_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb7e89674 lprocfs_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb80de0a2 lu_site_purge +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb8a71238 cl_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb9f0f44f cl_io_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb9fdfafa cl_page_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba985283 lustre_register_client_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbaa524d6 dt_record_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbacac922 lprocfs_write_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbb16f5c6 lu_env_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbc669f2f class_search_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbcc69bf0 obd_exports_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbd38ea6f cl_page_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbd8a9231 lu_env_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbdb8227a cl_env_nested_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbe102a0b cl_2queue_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbe1c734e lu_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbf05344d cl_lock_hold_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbf44a094 cl_conf_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbfac235c cl_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0bf7ef2 obd_debug_peer_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc1075623 cl_io_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc120a74c cl_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc18d06cf lu_buf_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc1d1b171 llog_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc1d77d0e cl_lock_user_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc232592d cl_io_submit_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc260acd3 cl_io_lock_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc2f9feb7 class_import_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc4b7abff cl_object_attr_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc51adb09 cl_lock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc5b7bac9 dt_txn_callback_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc83e80ff lprocfs_rd_connect_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8dbaa87 lustre_swab_cfg_marker +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8ddc20e lu_context_key_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc9107cca cl_io_sub_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc934feff cl_page_make_ready +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xca99eeba lprocfs_oh_sum +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcab899f2 lu_object_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb0ab67f obd_max_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcbbce8e5 class_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcc54d30f lu_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xccf7a8de obdo_cpu_to_le +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd0b28fc dt_record_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd7537ee get_devices_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd81e76d cl_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcdee5a8b dt_txn_callback_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xce7b0a6f cl_page_list_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xce82be7d cl_lock_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcedb140a obdo_cmp_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd08827c0 server_name2fsname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd10aa042 lustre_swab_llog_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd151183e dt_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1b1478b cl_attr2lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1f58645 lustre_swab_llog_hdr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2563426 llog_cat_cancel_records +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2d4852c cl_object_glimpse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd33691cd lu_site_init_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd54f3845 lprocfs_rd_num_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5a55491 lu_cdebug_printer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5c3f5be lu_site_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd70446c7 cl_page_list_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd70c7b09 lprocfs_rd_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd70fe669 lustre_swab_llogd_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7987d6c cl_lock_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bc8654 obd_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bfbc9c lprocfs_dt_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7f7b340 cl_lock_mode_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd8112617 lu_context_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd82a69bf obd_export_evict_by_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd875e5ab cl_use_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd8a97460 lprocfs_alloc_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd8f9fb9e lprocfs_rd_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd976edfe lprocfs_exp_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd996df70 cl_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd9d0b48a cl_page_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd9f12b7f lu_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda081628 llog_declare_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda5b1ced class_find_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdac644c8 lustre_posix_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb13dce1 capa_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb529347 llog_cat_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb73030f cl_env_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcc40af0 class_check_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd74e750 cl_page_unassume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd78c0c7 lu_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdddf6362 lu_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde1502be lu_object_find_slice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde7c5c4c class_unlink_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde7d985b obd_dirty_transit_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe028cf84 capa_encrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe03f5017 dt_version_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe04587ea obdo_refresh_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe20feddd class_import_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe237162c dt_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2c8afe7 lu_kmem_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2eb4470 class_get_next_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe318e275 lprocfs_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3323f5d class_handle_free_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe34815ac cl_req_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe58fd868 cl_io_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe61e0771 cl_io_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe6e5550e cl_page_list_move +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7077b23 cl_page_own_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7872126 cl_page_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7d83236 cleanup_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8221664 lprocfs_rd_numrefs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8311138 llog_obd_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8e84c32 class_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8ea1143 lprocfs_rd_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe9c341ae cl_page_is_vmlocked +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe9edb761 lustre_process_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xea9d1672 class_disconnect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xea9e3636 llog_thread_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeae94d8c llog_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb3f388a _debug_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeba9bac8 cl_io_lock_alloc_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec7d6b85 obd_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec876c71 cl_unuse_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xed406416 cl_object_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee68bc29 lu_session_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeeeb79fa do_lcfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xef76f858 block_debug_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xefe5553b cl_lock_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeff379d7 cl_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf01e2527 server_name2index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf17671bd cl_object_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf237862d cl_lock_mutex_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf255da6e lustre_register_client_fill_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2fd6695 statfs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf342a578 cl_2queue_init_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3bc5b9d dt_lfsck_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf48318b5 cat_cancel_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf490d5f9 class_del_profiles +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf498bd6d llog_cat_declare_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf54b2f0e class_fail_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf60d4659 capa_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf66774a3 lprocfs_clear_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7020831 lprocfs_dt_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf70ccd5b llog_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7425d54 class_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf75a8912 lustre_idmap_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf76291a3 cl_io_is_going +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7d3a263 cl_req_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7ff9492 lu_context_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8a8cea8 lprocfs_nid_stats_clear_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8c2df92 obdo_set_parent_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8fde98e cl_page_is_under_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf9d58eae lprocfs_rd_timeouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa6cfe43 class_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa813d06 capa_hmac +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbc2991a lprocfs_nid_stats_clear_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbea0098 lu_types_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc7f18d0 obd_pages_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfcb2811c lprocfs_obd_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfce4103b lu_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd17f59b lustre_common_put_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd68d17a class_notify_sptlrpc_conf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfdbe1557 lprocfs_write_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfe7b04d8 cl_queue_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff57e92d class_match_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xffc5ccab lprocfs_seq_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfffc1f11 lustre_swab_ost_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/osc/osc 0x5c4940c2 osc_update_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x00d95039 ptlrpcd_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01d6ef7f ldlm_pools_recalc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x043f7b52 ldlm_reprocess_all_ns +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x048b59d5 lustre_msg_set_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0515f93b RQF_FLD_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x05411351 req_capsule_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0654e55b target_print_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x06b3942b lustre_swab_lov_user_md_objects +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x071fc74a RQF_LDLM_ENQUEUE_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x07605c7d interval_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08bb2d27 lustre_swab_obd_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x095587d0 lustre_msg_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a3130b0 RMF_MDT_EPOCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0aa64469 ldlm_prep_enqueue_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac252b2 lustre_msg_set_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0bcacb5d RMF_MDS_HSM_USER_ITEM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c2d9c43 lustre_swab_lip_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0cf343dd RQF_LDLM_INTENT_BASIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0da129ec ptlrpc_disconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0f8aca0f ptlrpc_at_set_req_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x10f18f20 interval_iterate_reverse +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x115017f6 req_layout_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x11cfc8ef req_capsule_server_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12b6f5a3 ptlrpc_connection_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x13bc57f5 ptlrpc_commit_replies +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1483eca4 ldlm_lock_addref_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x14a633b3 ptlrpc_req_finished_with_imp_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x14d192db lustre_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15a3e4db RMF_GETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x16f8983b ldlm_completion_ast_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x172fb86d lustre_msg_hdr_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1747d8b3 ldlm_lockname +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x17950f60 RQF_SEC_CTX +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x18251110 ldlm_resource_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x18bb1448 ptlrpcd_alloc_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19108a0f RQF_OST_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19c08934 RQF_LDLM_INTENT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a6a3ce9 RQF_OST_GET_INFO_LAST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a9b76aa RMF_OBD_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1abd3258 RMF_SETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ace4b5f RQF_LDLM_BL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1bae0270 interval_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1be21715 lustre_msg_size_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1bf7e22f ptlrpc_deactivate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c300d8e lustre_msg_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c77507e sptlrpc_import_flush_all_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d043548 lustre_msg_set_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d0dff97 ldlm_pool_get_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d3e0265 sptlrpc_sec_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d5bc04d ldlm_lock_allow_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d922cbe sptlrpc_req_replace_dead_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1dc2051d RMF_SEQ_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1de9c288 lustre_swab_layout_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1dfd9c1f ldlm_cli_enqueue_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e3d2bc3 target_pack_pool_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e8e48a4 sptlrpc_flavor_has_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1eb2a65f RQF_OST_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee46b51 lustre_init_msg_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee9eb3c RQF_MDS_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1f0b2d1b ptlrpc_stop_all_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2096f5b5 RQF_OST_SET_GRANT_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2097866e ldlm_register_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20d6b82c RQF_LDLM_INTENT_QUOTA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x210926d7 ptlrpc_activate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2143ffc0 lustre_pack_reply_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2159dfea ldlm_cli_cancel_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x218a36ce ldlm_cli_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x223b81cf sptlrpc_cli_wrap_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2319ee03 ldlm_lock_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x233790b5 RMF_OST_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2431c8a1 __ptlrpc_free_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x244e5558 lustre_msg_get_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x24aafdba RMF_MGS_TARGET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2585a629 RMF_SEQ_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2587513c RQF_LDLM_CP_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x25a3b4f3 ldlm_cli_cancel_unused +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x269554ce RQF_LDLM_INTENT_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x26f99d16 RQF_MGS_CONFIG_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x273864d8 ldlm_namespace_new +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x280dbc47 ptlrpc_nrs_policy_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x285e5b99 lustre_msg_set_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2873a168 ptlrpc_request_alloc_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x28a9b530 ldlm_blocking_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x28d020a4 ldlm_pool_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x28fecdb8 lustre_pack_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x29e0869a sptlrpc_get_hash_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a63a472 lustre_swab_ptlrpc_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ab84ba8 ptlrpc_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2b3df547 llog_origin_handle_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c00c60d ptlrpc_sample_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ca92fa8 ldlm_lock_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ccd5b87 ldlm_cli_cancel_list_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d56f168 ptlrpc_pinger_ir_up +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d798316 RMF_MGS_CONFIG_RES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2dc7fc9d sptlrpc_cli_ctx_wakeup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4562fe RQF_LLOG_ORIGIN_HANDLE_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4ca396 RQF_LDLM_INTENT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ecd7515 lustre_msg_check_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f0e4f87 RQF_OST_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f90312c ptlrpc_init_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2fd2f737 lustre_msg_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2fd909c2 ptlrpc_pinger_del_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ff55695 target_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x301d4fcd RQF_MDS_READPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x302937e0 RQF_MDS_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3060b9c6 sptlrpc_rule_set_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31838cb4 RMF_IDX_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3192a3ee sptlrpc_cli_enlarge_reqbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x32255285 ldlm_namespace_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3261b862 RQF_OST_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x33bb7761 ldlm_typename +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x35068e3b ldlm_cli_cancel_unused_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x356706e5 ldlm_pool_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x35939a3d lustre_swab_fiemap +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x35e7be18 ptlrpc_wake_delayed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3604f8a2 __ldlm_handle2lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x37b2a0cf ldlm_cli_cancel_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3835ab4b RQF_LLOG_ORIGIN_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38519137 ptlrpc_free_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3856b108 ptlrpc_set_add_new_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3858fb94 RMF_OBD_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38c01799 RQF_LDLM_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38fce533 lustre_msg_set_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3907bc36 ldlm_pool_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39b97baf req_capsule_has_field +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39db792e ldlm_pool_get_lvf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39f60a5f RMF_OST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a1e4bcb __lustre_unpack_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ab90f6e lustre_msg_bufcount +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ac00716 lustre_swab_hsm_user_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3accabdf llog_origin_handle_next_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b16c3d9 ldlm_pool_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b6b7cba dump_ioo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bedb0c7 RMF_LLOGD_CONN_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c076918 ptlrpc_retain_replayable_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c63e62b RQF_MDS_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c734990 ldlm_namespace_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ca50f33 RQF_MDS_HSM_CT_REGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d47293c ldlm_glimpse_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d7dc5f9 ldlm_pools_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dc47695 lustre_msg_get_magic +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dddb3e2 dump_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f034caf lustre_msg_get_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f752e78 RQF_MDS_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f9d1d01 ptlrpc_unpack_rep_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x40031197 llog_origin_handle_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x406e5c38 ldlm_pool_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x41008cef RQF_LDLM_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4137126a ldlm_pool_set_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x426aad70 ptlrpc_buf_set_swabbed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x42a828a2 req_capsule_client_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43017920 ptlrpc_register_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43705ee4 RQF_LOG_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4379c5d7 lprocfs_wr_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43d7efc8 lustre_msg_set_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44036eda RQF_MDS_GET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x440c2a71 RMF_FIEMAP_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4481591d RQF_OST_SET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45d05893 lustre_swab_lustre_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45e30cea lustre_swab_ldlm_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x46fa2c99 llog_client_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47f5c1a4 ptlrpc_prep_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47f5e903 RMF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x484ee6db ptlrpc_hpreq_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x485973fd req_capsule_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x48814c9f lustre_swab_ost_lvb_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x490c6363 ldlm_destroy_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x490e3c8a ldlm_pool_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x498c03c5 lustre_msg_set_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x49ca23fb __ptlrpc_prep_bulk_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a5a2416 RMF_DLM_REQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b09ce4b lustre_swab_mdt_rec_reint +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b75158e req_capsule_extend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b908303 ptlrpc_reconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4bdeda7c ldlm_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c285386 sptlrpc_register_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c8ec098 ptlrpc_set_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d7580d0 lustre_swab_hsm_user_item +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d957837 client_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4da6c550 ldlm_lock_change_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e1706e5 lustre_msg_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e696b96 ptlrpcd_queue_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4eb03a6f ptlrpcd_destroy_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f766c3b lustre_swab_generic_32s +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f76f46e ptlrpc_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x500be0cb lock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x501f709f ldlm_resource_unlink_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x502b8f28 ptlrpc_unregister_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50443f6a ptlrpc_init_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50a08f15 ptlrpc_request_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50a7d8fa req_capsule_server_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50dd74f8 RMF_STRING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x52c62150 RMF_RCS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53411557 RMF_DLM_REP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53a4a004 bulk_sec_desc_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x54ae5021 ldlm_lock_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x54f7d3b3 sptlrpc_target_update_exp_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x555eb7fe RQF_MDS_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5672c1a1 sptlrpc_conf_target_get_rules +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x56e33059 lustre_free_reply_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x571c13d3 ptlrpc_invalidate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5730a412 lustre_pack_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x588035b4 RMF_UPDATE_REPLY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x589cd0b7 ptlrpc_set_import_active +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5934d5bb ptlrpc_fail_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5943a05b ptlrpc_obd_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x595ab175 lustre_swab_obd_quotactl +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x596582bf RMF_GETINFO_VALLEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x59ca398b ptlrpc_add_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a057439 interval_search +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5af0d02a ldlm_lock_dump_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b6ba895 lustre_packed_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c127343 req_capsule_filled_sizes +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c6a3a83 RQF_SEQ_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5caae213 ptlrpc_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5cb35a64 ptlrpc_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5d9b4195 ldlm_get_enq_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5df67d7f req_capsule_client_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e0b19b1 RMF_CLUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e2b7558 lustre_msghdr_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e616f61 ldlm_lock2handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e6f435d RQF_OST_BRW_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e80f899 RQF_LLOG_ORIGIN_HANDLE_READ_HEADER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ec3284d RQF_MDS_HSM_CT_UNREGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ef831ee lustre_msg_get_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f96ccdd ptlrpc_connection_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6042bc15 RQF_MDS_REINT_RENAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x604e2505 RMF_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x607ec932 lustre_msg_set_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6087fc0e ptlrpc_buf_need_swab +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x60cd26ad RQF_MDS_REINT_CREATE_SYM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61646e1b RQF_MDS_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6175bbb3 ptlrpc_add_rqs_to_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x618ad203 RQF_OST_GET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62192cf8 dump_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62358233 ptlrpc_register_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62aaae3f RQF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6315dd4c RMF_LLOGD_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6352a62d ldlm_get_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x63aedb8b llog_origin_handle_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x644c1048 ldlm_init_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x647b6e48 lustre_swab_ldlm_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x653723dc RMF_LOGCOOKIES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x65868cca ptlrpc_restart_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6834b95c ptlrpc_unregister_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x685eeaba RMF_DLM_GL_DESC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x686349c3 llog_origin_handle_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6890eb07 sptlrpc_cli_ctx_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68cb2541 interval_is_overlapped +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68e4facd ldlm_replay_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68f49e5e ptlrpc_expired_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6912990a RQF_OST_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x696ba811 lustre_msg_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69c9f04d RQF_MDS_REINT_LINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a3785c9 RMF_EADATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a53726b req_capsule_server_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6c328478 ldlm_cli_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6cc8e906 ldlm_namespace_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d72828c sptlrpc_conf_log_update_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d7931cc RQF_UPDATE_OBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6e072513 ldlm_pool_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6e99c485 req_capsule_client_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6eae1f1e ldlm_pool_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ed20499 ldlm_revalidate_lock_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6efa82b0 RQF_MGS_TARGET_REG +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f6da43a req_capsule_init_area +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f6dc736 lustre_swab_mdt_remote_perm +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6fb92092 sptlrpc_flavor2name_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x703538e4 lustre_swab_hsm_current_action +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x720ab316 ptlrpc_unregister_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x723d43b6 sptlrpc_rule_set_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x725a892c RQF_MDS_REINT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x72694e55 sptlrpc_import_flush_my_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x73a7f25a sptlrpc_get_bulk_checksum +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74840056 lustre_msg_set_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75a2c40d ldlm_put_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x760a791c ptlrpc_unpack_req_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x764bf38f req_capsule_server_sized_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76834d92 ptlrpc_set_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76b728e5 lustre_swab_update_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77571cc6 lustre_swab_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77840c82 sptlrpc_rule_set_choose +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x783df191 unlock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7840fe0b sptlrpc_gc_del_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78bf9136 lustre_swab_ldlm_lock_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a2848d2 client_disconnect_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a4aadc4 do_set_info_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a832f10 RMF_CONN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b158da4 lustre_swab_ldlm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7bbf8001 RMF_MDT_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7be80682 ptlrpc_prep_req_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7c4c6107 RQF_LDLM_CONVERT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7ca1c223 client_import_del_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d1ecd7f RQF_LDLM_INTENT_LAYOUT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d338bad req_capsule_field_present +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d41a8b9 RQF_QUOTA_DQACQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dc0e7cd RMF_QUOTA_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dfb3c18 lustre_msg_clear_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4925d8 interval_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4c99b1 ldlm_expired_completion_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f5a1cc7 lustre_msg_set_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f6d2357 lustre_msg_is_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80a9e8c3 lustre_msg_get_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80ecb4e3 RMF_MDS_HSM_CURRENT_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8163a7d9 client_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x817d7f1f lustre_msg_add_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x826d3c4f RQF_LDLM_GL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x82e06349 ldlm_cli_enqueue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x837efb00 RMF_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x84a6e8d1 ptlrpc_request_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x84ae3c08 ptlrpc_prep_bulk_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85135801 RMF_DLM_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8583560f sptlrpc_import_sec_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85a9e0d8 RMF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85eecf67 sptlrpc_get_hash_alg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x863db6eb RMF_HSM_USER_STATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8665d56b ldlm_blocking_ast_nocheck +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x86fa8c3b ldlm_cli_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8760beaf lustre_swab_ldlm_policy_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x876c2551 RMF_GETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87bf7b3c sptlrpc_get_next_secid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8872f3d2 RMF_SETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x88fff52d RMF_CAPA2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x89f9edf7 RQF_MDS_REINT_SETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a1ea476 lustre_swab_hsm_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a257736 RQF_MDS_HSM_STATE_GET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ac440fa ptlrpc_uuid_to_connection +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b4e80e9 ptlrpc_resend_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b854254 lustre_swab_mgs_config_res +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8bed179c ptlrpcd_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cb71d4b RQF_MDS_REINT_CREATE_SLAVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d77ea75 lustre_msg_set_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8da3fca7 lustre_msg_add_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8e9abe4d RMF_GENERIC_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ee56d9f ldlm_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f0aceac RQF_MDS_HSM_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8fa247b3 ptlrpc_set_add_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8fec0451 lustre_msg_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x919c4ce3 RMF_OBD_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91cf58d3 RQF_MDS_PIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x92695e4e ptlrpc_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x92cfe0d6 ptlrpc_request_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x937b1ee0 lustre_swab_mdt_ioepoch +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9553c633 RQF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x95d08f0c lustre_swab_mgs_target_info +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9660ace0 RMF_FLD_MDFLD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x967bfd52 RQF_OBD_PING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9798f2f1 RQF_MDS_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x980fcfdc ptlrpc_connection_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a1d8adc req_capsule_other_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a258886 RQF_MDS_GETSTATUS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a6f2f6d lustre_msg_set_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b88f6ce RMF_NIOBUF_REMOTE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9bb1466e ptlrpc_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9bb5198b RQF_MDS_CLOSE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9beea944 sptlrpc_gc_add_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9cd3ee7f ptlrpc_nrs_policy_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9d7ea314 sptlrpc_pack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9d7f2c79 req_capsule_server_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9ea5a441 ptlrpc_set_next_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9fb088f1 lustre_swab_lov_mds_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa05cbd52 lprocfs_wr_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa10dab0d ptlrpc_resend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa10f0d3d RMF_UPDATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa163f4c3 dump_rniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2244636 RQF_MDS_GETATTR_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa22c0086 ldlm_error2errno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa22d1f01 client_import_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa29d424e ptlrpc_schedule_difficult_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2add368 req_capsule_set_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2de4278 ptlrpc_pinger_add_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3639d43 ptlrpc_service_health_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3d2a6ee RMF_CAPA1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa46f5d6c sptlrpc_cli_ctx_expire +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa47787ef RMF_PTLRPC_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa48c632b ldlm_lock_fail_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4a2d089 RQF_OST_PUNCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4bc2dfd ldlm_init_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4bea5ef lustre_swab_lmv_user_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5458dad ldlm_lock_decref_and_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5880075 ldlm_errno2error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5d8c68b ldlm_lock_downgrade +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa6c436ca RQF_MDS_WRITEPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7d55cc3 RQF_MDS_REINT_CREATE_RMT_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7d5cea4 sptlrpc_gc_add_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7e360b1 RMF_OBD_IOOBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7ec567d RMF_CONNECT_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa8dcf36a req_capsule_server_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa90d4340 ldlm_destroy_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa955aa91 ptlrpc_prep_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9704f80 lustre_msg_get_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9c4658e lustre_swab_lov_user_md_v3 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9edf09d RQF_OBD_IDX_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaac21471 ldlm_cli_update_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xab1ffe22 ptlrpc_req_finished +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xabac3a95 llog_initiator_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xacc82ce1 ptlrpc_prep_fcset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaddc3979 lustre_swab_lustre_capa_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaef69d93 req_capsule_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf4e9658 RQF_MDS_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf50a0d6 RMF_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf54a99c ptlrpc_replay_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf8ab969 ptlrpcd_add_rqset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaff83363 sptlrpc_cli_unwrap_bulk_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb03ba12a ldlm_resource_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0751fa4 RQF_LLOG_ORIGIN_HANDLE_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0c50d6f req_capsule_client_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb15830dd sptlrpc_sec_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1b43d8a dump_rcs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb27c2374 lustre_msg_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb291473d lustre_msg_early_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb2b1817d lustre_swab_ost_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb3d3b328 ptlrpc_req_set_repsize +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4a7ecf3 lustre_msg_add_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb512ebc2 sptlrpc_parse_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb5506f30 lprocfs_rd_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb61cb95a RQF_MDS_GETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb68476df interval_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb6aafd03 RQF_MDS_DONE_WRITING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb72cbd66 sptlrpc_enc_pool_put_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7400731 ldlm_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7b38189 RMF_MDT_MD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7fa3cc8 RMF_LLOG_LOG_HDR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb8ee925c ldlm_namespace_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb903634e RQF_OST_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9b631cf lustre_swab_mgs_config_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9b81e4b ldlm_pool_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9fa91b5 ldlm_resource_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbaa76097 lustre_msg_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbc1370dc lustre_shrink_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd83bc44 RQF_OBD_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe47bc7e ping_evictor_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbeaac200 sptlrpc_svc_ctx_invalidate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf98b86f RQF_MDS_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbffd4313 RQF_OST_BRW_WRITE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc06c4670 lustre_msg_get_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0867da7 RMF_REC_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0cdf55e RMF_MGS_SEND_PARAM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0d71d2e ldlm_enqueue_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc143bd97 sptlrpc_unregister_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc1b7ce0d ldlm_namespace_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2986d28 lustre_swab_ldlm_res_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2b1af57 RQF_MGS_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2be922a RMF_SYMTGT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc304ff26 req_capsule_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc36406c9 ldlm_lock_allow_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc559a634 RMF_LAYOUT_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc60a60e1 RQF_OST_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc61a2221 ptlrpc_set_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc6791230 ptlrpc_pinger_sending_on_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc694be4b RQF_LLOG_ORIGIN_HANDLE_PREV_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc763fabc sptlrpc_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc79b9c67 ldlm_pools_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7ca8257 RQF_MDS_REINT_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7e47564 ptlrpc_interrupted_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8aea449 _debug_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8f586a9 ptlrpc_connection_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xca5a81ec ptlrpc_pinger_ir_down +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2cc0cf lustre_swab_lquota_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2ceaff sptlrpc_secflags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb5c04d4 ptlrpc_cleanup_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb60d9ed sptlrpc_sec_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcbd27513 ptlrpc_request_alloc_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce1a689b sptlrpc_enc_pool_add_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce86066d lustre_msg_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcec513c9 RQF_MDS_UNPIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xced015be sptlrpc_rule_set_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9963db lustre_msg_get_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9aab6a RQF_MDS_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd042b8f2 ptlrpc_request_bufs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd11ba8f6 ptlrpc_send_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd13ce5cc req_capsule_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd1ccea26 ptlrpc_cleanup_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd227df06 client_import_find_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2969b77 ldlm_lock_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2983334 lustre_swab_swap_layouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2e0d4eb lustre_msg_get_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2e28e29 ldlm_cancel_resource_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2f6bd8a sptlrpc_lprocfs_cliobd_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd3dae408 ldlm_it2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd536905a ptlrpc_lprocfs_unregister_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd537ded2 lustre_swab_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd5640a75 req_capsule_server_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd5933bff lprocfs_wr_evict_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd643e89f ldlm_resource_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd67a5d7b lustre_swab_update_reply_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd69e0a27 RQF_MDS_IS_SUBDIR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6c3ebfb RMF_FIEMAP_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6ebbf55 ldlm_extent_shift_kms +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7910326 lustre_swab_obd_statfs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8b91b3e lustre_swab_lov_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8d4fab4 ptlrpcd_wake +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8f06300 RQF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd9561861 RQF_LDLM_INTENT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda2ac111 sptlrpc_proc_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdafc6f56 ldlm_flock_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb1fb0a2 RQF_MDS_REINT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb9d5a6a lustre_swab_niobuf_remote +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdcd8a19c ldlm_namespace_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdcf910b9 lustre_swab_ost_last_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd0ffb04 sptlrpc_flavor2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd30d7bf RMF_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd6be90b ldlm_pool_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xddc40a85 lustre_msg_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde12d36b RMF_MDS_HSM_ARCHIVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde555d70 sptlrpc_enc_pool_del_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdee87192 sptlrpc_conf_log_update_begin +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf701ae7 lustre_swab_fid2path +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0bc0b11 client_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0cc694c RQF_LLOG_ORIGIN_HANDLE_NEXT_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe13293a2 sptlrpc_target_sec_part +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe203b9c4 ldlm_lock_fail_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe25215b7 ptlrpc_recover_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe2d4a51f lprocfs_wr_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe31ca1e1 ptlrpc_lprocfs_register_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe40e0a50 lustre_msg_get_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe4737487 ldlm_prep_elc_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe49dfe3d sptlrpc_conf_client_adapt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe4b040c7 ptl_send_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe57bd972 sptlrpc_current_user_desc_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe643998e RQF_OST_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6d59377 sptlrpc_cli_ctx_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6f0dc96 RQF_OST_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7062b5f RMF_U32 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7512278 ptlrpcd_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe927e282 llog_origin_handle_read_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe9b166d7 ptlrpc_request_set_replen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeaa09080 ptlrpc_init_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeab3aac0 sptlrpc_target_export_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabaa0b1 lustre_swab_mdt_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabac4fc sptlrpc_rule_set_merge +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeb6644be ptlrpc_queue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeb6727aa _ldlm_lock_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xebb64e68 req_layout_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec226f66 ping_evictor_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec2580e9 ldlm_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec939a00 RQF_MDS_REINT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecace5c1 RQF_OST_GET_INFO_GENERIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed1c10d6 ptlrpc_connection_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xedcb740d sptlrpc_name2flavor_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeed6de10 ptlrpc_lprocfs_brw +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeef7b5b3 ptlrpc_request_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xef1aeca9 RMF_FLD_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf00ee34e ptlrpc_mark_interrupted +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0229f9a sptlrpc_cli_unwrap_bulk_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0241d6e lustre_swab_hsm_progress_kernel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0d52b5f ptlrpc_pinger_suppress_pings +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf1300275 _sptlrpc_enlarge_msg_inplace +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf277c125 RQF_OST_GET_INFO_FIEMAP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf27d49dc sptlrpc_target_choose_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf2da8e07 llog_origin_handle_prev_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf35f132b lustre_swab_ldlm_resource_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3d1c934 ptlrpc_start_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3d44370 RQF_OST_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf43540b9 lustre_swab_mgs_nidtbl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf4420196 ldlm_lock2desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf45085e1 sptlrpc_conf_log_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf4b433cd ptlrpc_abort_inflight +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf55c033b RMF_MGS_CONFIG_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf584a16b sptlrpc_part2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf596e9ae sptlrpc_conf_log_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf5face45 sptlrpc_enc_pool_get_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf607fc23 sptlrpc_flavor2name_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf617ab8a lustre_msg_get_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf697b756 ldlm_dump_all_namespaces +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7408f84 lustre_swab_hsm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7ba40c0 RMF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf85cb27e sptlrpc_parse_rule +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf870fed9 RQF_LDLM_GL_DESC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9051bd6 RQF_QC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf94e41e0 deuuidify +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf973aa93 lustre_swab_lov_user_md_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9ee11e2 lustre_msg_set_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9f72dfc RMF_TGTUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa1db2a3 client_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa51688d interval_insert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfad68f5f ptlrpc_req_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb7cb016 lustre_pack_reply_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc2fa83f ptlrpc_del_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd148bf8 RMF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfe59be83 sec2target_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff02a0e9 ldlm_lock_set_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffae85b2 ptlrpc_save_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffc807e8 sptlrpc_unpack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffe29c3f RQF_LDLM_ENQUEUE +EXPORT_SYMBOL drivers/staging/media/cxd2099/cxd2099 0xabd08024 cxd2099_attach +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x3048bc34 go7007_alloc +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x4fdb20bb go7007_boot_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x667869c0 go7007_snd_init +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x6b1af0bd go7007_read_interrupt +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x6e2f5eda go7007_snd_remove +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x741ed8fc go7007_register_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x873e9184 go7007_parse_video_stream +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x8af31a38 go7007_update_board +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x8efb46bd go7007_read_addr +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x02e9cb69 HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0a230a6e rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0a235020 rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0a5b9cb0 rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0b82cbe8 rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x108e7794 rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1d7727e6 rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x24e2d505 dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2a0ab374 rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2c603624 rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2d049c88 rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x311aa91c rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x34903b0c rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x376c8a58 rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x409ae4e5 rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x432ac596 rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x45e89485 RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4f997dc7 free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5243e56c rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x54d298f5 rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5634aa2e rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x56a4e4fa alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5ccc31a8 notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5db8c9be rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x68e2186b rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7a1be9ce rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7a5a3472 rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7ecd5076 rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x806ac7e0 Dot11d_Channelmap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8c3d7f3f rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x90d30a0d rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x95822cb0 rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x969d4106 rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x972168ce rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xabdf82f3 rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb22bd3b1 rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbe1420f2 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbea8d766 rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbff1f0ee rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc02410cc rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc56875c0 rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xcbeef540 rtllib_wpa_supplicant_ioctl +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd1a6cf6d rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd3b813e1 rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xda736648 rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe6e36f6e rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe8ee85a8 rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xea9f3651 rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xeba19e7a rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xeea3a004 rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xefd3ecc3 rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0081db30 ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x08a14ba4 ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x12896b43 ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x157ab727 ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x173ae87e Dot11d_Init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1a2263c0 ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1badc2fe ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1cecd1dc ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1d82eaea ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x327e3057 ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x337323c8 ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x389578ae ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4081479d ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x46a550a8 ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x46ae6f89 ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x49ba3888 ToLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4f4e0e65 ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5510f215 HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x56655b0b ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5b49144d ieee80211_send_probe_requests_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6167868f ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x683718b8 ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6ac78b29 ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6cba5d58 ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6fe2f882 ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x773691f1 Dot11d_UpdateCountryIe +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x79c8d67c DOT11D_GetMaxTxPwrInDbm +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7e417afb ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7fac7028 ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x82758e9f ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8e227555 DOT11D_ScanComplete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x93812c79 ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x945d1aed ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x952e5f6f ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9f1dc460 notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9f7cee7c ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9fe72c59 ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa22abf2d ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xaaa1669c ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xaf441f8c ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb0dcb889 ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbcd704df ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc1f7bae7 ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc21abfbc SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc4cba93a ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc8ada91a ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd14e0880 IsLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd316a8a1 ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xdbde6b22 ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xdbf3fabb Dot11d_Reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe071372f ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe189ba28 ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe218a8f2 ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe751c998 ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf2aaa58f ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf44fb064 ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0017f35f set_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x00ea0cde set_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x06d6f244 get_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x09df8f3e set_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0a8d32c3 get_bypass_slave_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1936264c set_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1d2eb8ca get_tap_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x203af1f7 reset_bypass_wd_timer_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2070f14a set_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x27b990ef get_bypass_info_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2ba7cd35 get_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2c3f1c17 get_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2f59e636 get_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2fdb893a get_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x361cf40a get_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x45ca99c3 set_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x550a188c set_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x5cb59e92 get_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x66b60122 set_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x675208c0 set_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x692623f2 get_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x75131ec6 set_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x76c0b7d0 set_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e872825 get_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e8d701e get_wd_expire_time_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x86388b07 get_bp_disc_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x93ae4648 get_wd_set_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x95e42b0d is_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9df5f807 set_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9e21f42e set_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xa689a214 get_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xae117788 get_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xc368d30d get_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xccab5de0 get_bypass_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd3e034b3 get_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9c1ccfc get_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9d38d97 set_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xe640f06e set_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xecdaa456 set_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xedcd3c1b get_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf06d67bf set_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf57c1671 get_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf693c3a1 bp_if_scan_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf8237882 get_bypass_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xfa59240d get_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05af3c4c set_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05b08a42 set_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0b0d5ce0 get_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0fc2e83c reset_bypass_wd_timer +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x123a8133 get_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x157ec89c get_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2440f05a get_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2b01d1d4 set_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2c27a2f0 set_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2da97f4b is_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2e86c67b get_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37416370 get_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37bdab27 get_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x3da96a18 get_bypass_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4025805e get_bypass_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4940a0cc get_bypass_info +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4d21ff51 get_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5147360c get_bp_disc_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x515d4df1 get_bypass_slave +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5560267e set_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5be44d44 set_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6653590c get_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6bda14ec get_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x72c618ae set_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x76d47e6f set_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x794e3815 set_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x7c6cbc16 get_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x84a263dc set_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x8a16f22c set_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x946ff795 get_wd_set_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x94f6aff2 get_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x9d1ecf73 set_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xb1385629 set_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xbff68c45 set_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xc871c561 get_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xcee528df set_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd202dd85 get_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd787f151 get_wd_expire_time +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xdb6a39d2 get_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xebd25ae5 get_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf1e9f8c1 set_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf224abd9 get_tap_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf5a591b2 set_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf643fd4c get_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x4471bf84 xillybus_init_endpoint +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x8af98ae1 xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xbccb2709 xillybus_endpoint_remove +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xd19942dc xillybus_do_cleanup +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x02dc7ba5 iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x07ac1780 iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x18a74e67 iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2d76530a iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x34a96eae iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3539ce58 iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3e7f1c8e iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3ff2bb99 iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x51ffa065 iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x65817b4d iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x66843b1e iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x70dbb936 iscsit_handle_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7a688fef iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x80531a77 iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x84e03e92 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x88ed135f iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8f29a0a9 iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x99069c07 iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9f38b508 iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa21daa99 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa9e64a42 iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xaf2e979e iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb36f9e13 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb4ea2f67 iscsit_set_unsoliticed_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc6206917 iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xccee91e7 iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xdb022094 iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xff02280d iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x011fa21a transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x02de3b18 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x05175914 target_fabric_configfs_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x06c6efb1 core_tpg_del_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x0784f2af transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x0a83e81a transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x0c49682a transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0x0f192bc3 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x135fa7f5 sbc_execute_unmap +EXPORT_SYMBOL drivers/target/target_core_mod 0x172a55f6 core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x1b57d0bf transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0x24794951 transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0x27bfaaa5 fc_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x2bf37aa5 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x2c1e7682 sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x31651614 transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x35f394f7 transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x361c7e73 core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x38a398b1 sas_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x3ad5edaf target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x3df8fc1f transport_subsystem_release +EXPORT_SYMBOL drivers/target/target_core_mod 0x428ecb15 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0x47fa43ae transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x49bd9fdb target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x4c02b51d __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x4e9ede28 fc_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x50e9f61a target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x515c9437 spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0x516d477c sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x598d3ad8 target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0x5b2c1122 iscsi_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x5cb11320 transport_subsystem_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x5ff41576 spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0x64366831 sas_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x66ee89e7 spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x726b5dc7 transport_check_aborted_status +EXPORT_SYMBOL drivers/target/target_core_mod 0x73c38cc7 sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0x740b1963 sas_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x75e3ef31 transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x78f44305 transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x79a9edad target_fabric_configfs_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x7dbada9d transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x8172878e target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0x83b7b594 core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x85aa880c transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x86072962 core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x883f5e47 iscsi_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x8f0a640a transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x912985e9 target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0x92113416 fc_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x98194a0a target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x9b4ee4bd iscsi_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x9d89d03c transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xa0d2745f target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xa234786b core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0xa4c41e64 transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0xaf91ff10 core_tpg_clear_object_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0xb8ff7b16 spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xbdd34907 iscsi_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xc1d65295 target_put_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xc41d7a48 target_fabric_configfs_init +EXPORT_SYMBOL drivers/target/target_core_mod 0xc60c9a9e transport_init_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0xcb4ccc46 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0xce4c4f5b target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xd3660700 target_setup_cmd_from_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xd707f2eb fc_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xe009d318 target_fabric_configfs_free +EXPORT_SYMBOL drivers/target/target_core_mod 0xe8772cf8 core_tpg_add_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xeab8a9c5 core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xf01621c7 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf7c2d1d2 target_get_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xf81fcecf transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xf84f2ac5 sas_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0xff92f78c transport_free_session +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0x6ee011c2 usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0x4507ea57 unregister_gadget_item +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x344c28ed gether_get_host_addr_u8 +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x36df5b14 gether_set_gadget +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x4af46459 gether_setup_name +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x5d7d62be gether_set_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x62f166e5 gether_register_netdev +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x646fa01e gether_get_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x764d8e73 gether_get_ifname +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x869c96af gether_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x926205c5 gether_get_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xa9711374 gether_set_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xacd2979c gether_setup_name_default +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xb1e143fd gether_get_host_addr_cdc +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xdc84f9e9 gether_connect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xf4f1e065 gether_get_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xfadbec0f gether_set_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x22ce5321 rndis_rm_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3a6d4f22 rndis_free_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3ca38e3a rndis_signal_connect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x4ca90996 rndis_signal_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x5d22b406 rndis_register +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x785d494b rndis_msg_parser +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x840dd143 rndis_deregister +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x87579038 rndis_set_param_dev +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x988ad2a2 rndis_set_param_vendor +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x9acf72e4 rndis_set_param_medium +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x9b1b3c7a rndis_add_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xa90054ee rndis_uninit +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xb971ebca rndis_get_next_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xd2fe47b1 rndis_set_host_mac +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1710b539 fsg_fs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1b1cc3af store_cdrom_address +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x2933ee1d fsg_ss_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x398778e1 fsg_ss_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x423845e4 fsg_ss_bulk_in_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x457257e1 fsg_store_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x56344daf fsg_hs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x5e269d59 fsg_store_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x7256b1e7 fsg_show_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x7616c620 fsg_store_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x87243653 fsg_lun_close +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x95cffb3e fsg_hs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5cae92f fsg_ss_bulk_out_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5f99b69 fsg_fs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb1cf64a1 fsg_store_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb52ba28a fsg_intf_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb54d0d95 fsg_fs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xbc63d51c fsg_lun_fsync_sub +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xc74026a0 fsg_lun_open +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xc9899422 fsg_show_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xdee0657c fsg_show_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xdf4291bc fsg_show_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xe489cf35 fsg_store_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xe896a97c fsg_show_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xf4efc0c8 fsg_ss_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_rndis 0x1448d8ea rndis_borrow_net +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0xe9b7d65e sl811h_driver +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xa64a4cea usb_nop_xceiv_unregister +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xd0e43207 usb_nop_xceiv_register +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x015db51f usb_wwan_set_termios +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x0979770e usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x1249ef71 usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x3ce47949 usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x3dfe982f usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x5bb9c84a usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x62316b9e usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x7d37ad1f usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x83b39f2d usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x922adb61 usb_wwan_ioctl +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xa4faa70b usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xdb55e945 usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xe9b465b5 usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x21811192 usb_serial_suspend +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x41b27eb7 usb_serial_resume +EXPORT_SYMBOL drivers/vhost/vringh 0x0dda8c5a vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x1f063017 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x2eae4a2a vringh_getdesc_user +EXPORT_SYMBOL drivers/vhost/vringh 0x36dfce73 vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3b304ebb vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3eaf442a vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x3fa42e4f vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x4311cd91 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5dafbd4e vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x66af098b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x6d0e7948 vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x76bd9a5d vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x97fa07e9 vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xaf8e4a0e vringh_notify_disable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xafb47dae vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc884d704 vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc8bee0a4 vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xda4ea4cc vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0xde804bb9 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/video/backlight/generic_bl 0x366d19ef genericbl_limit_intensity +EXPORT_SYMBOL drivers/video/backlight/lcd 0x0c36491f lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0x1a6a2cba devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0x71b0b16f devm_lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0x849f1c73 lcd_device_unregister +EXPORT_SYMBOL drivers/video/cyber2000fb 0x0cc3ede5 cyber2000fb_detach +EXPORT_SYMBOL drivers/video/cyber2000fb 0x3adc04a9 cyber2000fb_attach +EXPORT_SYMBOL drivers/video/cyber2000fb 0x534b6f18 cyber2000fb_disable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xb39f68d1 cyber2000fb_enable_extregs +EXPORT_SYMBOL drivers/video/macmodes 0x233917d1 mac_vmode_to_var +EXPORT_SYMBOL drivers/video/macmodes 0x3f001067 mac_find_mode +EXPORT_SYMBOL drivers/video/macmodes 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x4e332840 matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xc6908e4f matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xfd20c3c3 g450_mnp2f +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x35fc79a4 DAC1064_global_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x51c67afe matrox_G100 +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x64645c0f matrox_mystique +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xda8fa9c2 DAC1064_global_restore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_Ti3026 0xb6994b35 matrox_millennium +EXPORT_SYMBOL drivers/video/matrox/matroxfb_accel 0xa8739fe3 matrox_cfbX_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x7404fc74 matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x740e347a matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xa1ef60b6 matroxfb_register_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xa9e3c7c1 matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x6739f86f matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x9a2c2d51 matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x1eb76932 matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x8e2c1566 matroxfb_read_pins +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x910fad62 matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xb866548d matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xda4d901f matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/mb862xx/mb862xxfb 0x00031b78 mb862xxfb_init_accel +EXPORT_SYMBOL drivers/video/output 0x3f2d1899 video_output_register +EXPORT_SYMBOL drivers/video/output 0x657c6f55 video_output_unregister +EXPORT_SYMBOL drivers/video/sis/sisfb 0x3037658e sis_malloc +EXPORT_SYMBOL drivers/video/sis/sisfb 0x454a3cf0 sis_free +EXPORT_SYMBOL drivers/video/svgalib 0x17f3f471 svga_set_default_seq_regs +EXPORT_SYMBOL drivers/video/svgalib 0x1be6dc30 svga_set_textmode_vga_regs +EXPORT_SYMBOL drivers/video/svgalib 0x1d86de13 svga_get_tilemax +EXPORT_SYMBOL drivers/video/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/svgalib 0x4e09b7ba svga_settile +EXPORT_SYMBOL drivers/video/svgalib 0x55ee6c90 svga_tilecursor +EXPORT_SYMBOL drivers/video/svgalib 0x5b420d11 svga_get_caps +EXPORT_SYMBOL drivers/video/svgalib 0x6e4adb1e svga_check_timings +EXPORT_SYMBOL drivers/video/svgalib 0x80f24d95 svga_wcrt_multi +EXPORT_SYMBOL drivers/video/svgalib 0x8de63fb4 svga_set_timings +EXPORT_SYMBOL drivers/video/svgalib 0x9091ddc7 svga_tilefill +EXPORT_SYMBOL drivers/video/svgalib 0xd1429fca svga_wseq_multi +EXPORT_SYMBOL drivers/video/svgalib 0xd22ca511 svga_set_default_atc_regs +EXPORT_SYMBOL drivers/video/svgalib 0xe28d2a49 svga_set_default_gfx_regs +EXPORT_SYMBOL drivers/video/svgalib 0xe897a47f svga_tileblit +EXPORT_SYMBOL drivers/video/svgalib 0xef774f5d svga_compute_pll +EXPORT_SYMBOL drivers/video/svgalib 0xf0473718 svga_tilecopy +EXPORT_SYMBOL drivers/video/svgalib 0xf2db5956 svga_match_format +EXPORT_SYMBOL drivers/video/syscopyarea 0x5bacb97d sys_copyarea +EXPORT_SYMBOL drivers/video/sysfillrect 0xee5ed005 sys_fillrect +EXPORT_SYMBOL drivers/video/sysimgblt 0x3f01be60 sys_imageblit +EXPORT_SYMBOL drivers/video/vgastate 0x686de290 restore_vga +EXPORT_SYMBOL drivers/video/vgastate 0xe7a2620e save_vga +EXPORT_SYMBOL drivers/vme/vme 0x00d7e722 vme_lm_count +EXPORT_SYMBOL drivers/vme/vme 0x072f901c vme_master_rmw +EXPORT_SYMBOL drivers/vme/vme 0x0c6bdc3f vme_master_read +EXPORT_SYMBOL drivers/vme/vme 0x0ec5babe vme_dma_free +EXPORT_SYMBOL drivers/vme/vme 0x1097957f vme_dma_list_free +EXPORT_SYMBOL drivers/vme/vme 0x1a1988bc vme_master_request +EXPORT_SYMBOL drivers/vme/vme 0x20df5a3d vme_dma_pci_attribute +EXPORT_SYMBOL drivers/vme/vme 0x2e200f84 vme_irq_request +EXPORT_SYMBOL drivers/vme/vme 0x2f99f240 vme_unregister_bridge +EXPORT_SYMBOL drivers/vme/vme 0x3e95083c vme_slave_get +EXPORT_SYMBOL drivers/vme/vme 0x46649cd1 vme_lm_set +EXPORT_SYMBOL drivers/vme/vme 0x48b99a13 vme_lm_free +EXPORT_SYMBOL drivers/vme/vme 0x4baf35a7 vme_master_get +EXPORT_SYMBOL drivers/vme/vme 0x4d61d46e vme_register_driver +EXPORT_SYMBOL drivers/vme/vme 0x52983a4f vme_master_write +EXPORT_SYMBOL drivers/vme/vme 0x535c8308 vme_dma_pattern_attribute +EXPORT_SYMBOL drivers/vme/vme 0x58a71b43 vme_dma_list_add +EXPORT_SYMBOL drivers/vme/vme 0x5aff4177 vme_lm_get +EXPORT_SYMBOL drivers/vme/vme 0x6db4ba0c vme_register_bridge +EXPORT_SYMBOL drivers/vme/vme 0x7788cc4a vme_unregister_driver +EXPORT_SYMBOL drivers/vme/vme 0x79a33f85 vme_get_size +EXPORT_SYMBOL drivers/vme/vme 0x7cf35220 vme_master_free +EXPORT_SYMBOL drivers/vme/vme 0x818f287c vme_dma_list_exec +EXPORT_SYMBOL drivers/vme/vme 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL drivers/vme/vme 0x97c0302c vme_slave_request +EXPORT_SYMBOL drivers/vme/vme 0x9aeb07e8 vme_lm_attach +EXPORT_SYMBOL drivers/vme/vme 0xa238fca8 vme_slot_get +EXPORT_SYMBOL drivers/vme/vme 0xa2a335bd vme_alloc_consistent +EXPORT_SYMBOL drivers/vme/vme 0xa31bdf07 vme_master_set +EXPORT_SYMBOL drivers/vme/vme 0xba8771c6 vme_lm_request +EXPORT_SYMBOL drivers/vme/vme 0xbb502996 vme_new_dma_list +EXPORT_SYMBOL drivers/vme/vme 0xbf1232f9 vme_irq_generate +EXPORT_SYMBOL drivers/vme/vme 0xca5ee09a vme_free_consistent +EXPORT_SYMBOL drivers/vme/vme 0xceff5308 vme_dma_request +EXPORT_SYMBOL drivers/vme/vme 0xd9311b6c vme_irq_handler +EXPORT_SYMBOL drivers/vme/vme 0xdd1a4d90 vme_irq_free +EXPORT_SYMBOL drivers/vme/vme 0xdff905e5 vme_slave_free +EXPORT_SYMBOL drivers/vme/vme 0xefd1624a vme_dma_free_attribute +EXPORT_SYMBOL drivers/vme/vme 0xf1d502c3 vme_bus_type +EXPORT_SYMBOL drivers/vme/vme 0xf5a10e25 vme_slave_set +EXPORT_SYMBOL drivers/vme/vme 0xfacd8e72 vme_dma_vme_attribute +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x34354f10 w1_ds2760_recall_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x482ce996 w1_ds2760_store_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xc789c1aa w1_ds2760_write +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xe653bbb9 w1_ds2760_read +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x3240b3bb w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x88362765 w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x4b29cbbf w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0xfe1f7855 w1_ds2781_io +EXPORT_SYMBOL drivers/w1/wire 0x21ae9f07 w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0x290dd3c1 w1_remove_master_device +EXPORT_SYMBOL drivers/w1/wire 0x9fef9053 w1_unregister_family +EXPORT_SYMBOL drivers/w1/wire 0xcb5e5705 w1_add_master_device +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0x04e133fc iTCO_vendor_check_noreboot_on +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xa78bd894 iTCO_vendor_pre_set_heartbeat +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xb5f20875 iTCO_vendor_pre_keepalive +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xc4f657bf iTCO_vendor_pre_stop +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xdc6effc9 iTCO_vendor_pre_start +EXPORT_SYMBOL fs/btrfs/btrfs 0x27476846 ulist_reinit +EXPORT_SYMBOL fs/btrfs/btrfs 0x41e6a9d2 ulist_init +EXPORT_SYMBOL fs/btrfs/btrfs 0x7e2ee765 ulist_free +EXPORT_SYMBOL fs/btrfs/btrfs 0xa2eec2e8 ulist_fini +EXPORT_SYMBOL fs/btrfs/btrfs 0xb1320bc8 ulist_add +EXPORT_SYMBOL fs/btrfs/btrfs 0xb42289d2 ulist_alloc +EXPORT_SYMBOL fs/btrfs/btrfs 0xc2c745db ulist_next +EXPORT_SYMBOL fs/configfs/configfs 0x0a8e61d7 config_item_put +EXPORT_SYMBOL fs/configfs/configfs 0x17ceb08a config_item_init +EXPORT_SYMBOL fs/configfs/configfs 0x3c7636ea config_group_init +EXPORT_SYMBOL fs/configfs/configfs 0x479753f1 config_item_get +EXPORT_SYMBOL fs/configfs/configfs 0x68d1fa55 config_item_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0x7bfe0e0a config_group_find_item +EXPORT_SYMBOL fs/configfs/configfs 0x84aa6100 configfs_unregister_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0x859ad9d1 configfs_register_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0x9e7089cb configfs_depend_item +EXPORT_SYMBOL fs/configfs/configfs 0x9f553d16 configfs_undepend_item +EXPORT_SYMBOL fs/configfs/configfs 0xeb9d1ba0 config_group_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0xed4aa8e1 config_item_set_name +EXPORT_SYMBOL fs/exofs/libore 0x28806871 ore_verify_layout +EXPORT_SYMBOL fs/exofs/libore 0x2fe09d1f ore_remove +EXPORT_SYMBOL fs/exofs/libore 0x3571a62c extract_attr_from_ios +EXPORT_SYMBOL fs/exofs/libore 0x3f36e3b8 ore_write +EXPORT_SYMBOL fs/exofs/libore 0x4527e170 ore_calc_stripe_info +EXPORT_SYMBOL fs/exofs/libore 0x58dc8787 ore_get_io_state +EXPORT_SYMBOL fs/exofs/libore 0x7a15073c ore_put_io_state +EXPORT_SYMBOL fs/exofs/libore 0xa3d2a634 g_attr_logical_length +EXPORT_SYMBOL fs/exofs/libore 0xb115f32b ore_create +EXPORT_SYMBOL fs/exofs/libore 0xbf7b5c4c ore_read +EXPORT_SYMBOL fs/exofs/libore 0xde41aefd ore_truncate +EXPORT_SYMBOL fs/exofs/libore 0xedb6d11c ore_check_io +EXPORT_SYMBOL fs/exofs/libore 0xfdd19521 ore_get_rw_state +EXPORT_SYMBOL fs/fscache/fscache 0x04e68aea __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0x094dc1e8 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x1502e36a __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x163860f1 fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0x18f2a442 __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0x19a73476 fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0x1ca65efc fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0x253984de fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0x2f1e7ad7 fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0x3ab6bbf8 fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0x46c0dd51 fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0x4b10e0b5 __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0x5071a908 __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x508c8297 fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0x63119174 fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x6b266a5e fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x7c72e445 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x847be86e __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0x84a2770b __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x8e5358ad __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0x94d19950 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x95a7c8ed __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0xa1d8d738 __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xadf4ed9f __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0xb6623577 __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xb806e10c fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0xbc14ddd5 fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0xbfc9a608 __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0xca9db711 __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0xcf2b577f __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0xdd7d6183 __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xe0decfa9 fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0xe74bdba6 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0xf60ab143 fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0xf7d1152b __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0xfc1770f8 __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0xfdc67596 fscache_enqueue_operation +EXPORT_SYMBOL fs/nfsd/nfsd 0x35e33c1e nfs4_acl_write_who +EXPORT_SYMBOL fs/nfsd/nfsd 0x5a157ae4 nfs4_acl_get_whotype +EXPORT_SYMBOL fs/nfsd/nfsd 0xa0f4b528 nfs4_acl_posix_to_nfsv4 +EXPORT_SYMBOL fs/nfsd/nfsd 0xb25b2957 nfs4_acl_nfsv4_to_posix +EXPORT_SYMBOL fs/nfsd/nfsd 0xe13337f0 nfs4_acl_new +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x1541d841 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x15de4c1a qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x62736d9f qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x71a2be00 qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0x93942887 qtree_read_dquot +EXPORT_SYMBOL lib/cordic 0x434bfd07 cordic_calc_iq +EXPORT_SYMBOL lib/crc-ccitt 0x1a703ba1 crc_ccitt +EXPORT_SYMBOL lib/crc-ccitt 0x75811312 crc_ccitt_table +EXPORT_SYMBOL lib/crc-itu-t 0x6d356209 crc_itu_t +EXPORT_SYMBOL lib/crc-itu-t 0xd29b009f crc_itu_t_table +EXPORT_SYMBOL lib/crc7 0x6c1f6fee crc7 +EXPORT_SYMBOL lib/crc7 0xd80c3603 crc7_syndrome_table +EXPORT_SYMBOL lib/crc8 0xab9ad613 crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xd09b2cba crc8 +EXPORT_SYMBOL lib/crc8 0xd4534d80 crc8_populate_msb +EXPORT_SYMBOL lib/libcrc32c 0x27000b29 crc32c +EXPORT_SYMBOL lib/lru_cache 0x0f0f1605 lc_del +EXPORT_SYMBOL lib/lru_cache 0x2ae6a89a lc_put +EXPORT_SYMBOL lib/lru_cache 0x3b3372b4 lc_reset +EXPORT_SYMBOL lib/lru_cache 0x41111725 lc_get +EXPORT_SYMBOL lib/lru_cache 0x44ec99ee lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0x4645c85f lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0x540b1697 lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x577252ab lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0x57ff4d61 lc_is_used +EXPORT_SYMBOL lib/lru_cache 0x5dd01edd lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x62b86d70 lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0x76b957fe lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0x7afe19c6 lc_find +EXPORT_SYMBOL lib/lru_cache 0xa977668e lc_set +EXPORT_SYMBOL lib/lru_cache 0xb2deafbf lc_destroy +EXPORT_SYMBOL lib/lru_cache 0xbcdb24bd lc_committed +EXPORT_SYMBOL lib/lru_cache 0xfcc6da8d lc_create +EXPORT_SYMBOL lib/lz4/lz4_compress 0x0c222eb5 lz4_compress +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x682a23e0 lz4hc_compress +EXPORT_SYMBOL lib/raid6/raid6_pq 0x0bd662f6 raid6_gfmul +EXPORT_SYMBOL lib/raid6/raid6_pq 0x15fe0cd3 raid6_gfexp +EXPORT_SYMBOL lib/raid6/raid6_pq 0x5ba93f9d raid6_gfinv +EXPORT_SYMBOL lib/raid6/raid6_pq 0xb0d904b7 raid6_empty_zero_page +EXPORT_SYMBOL lib/raid6/raid6_pq 0xce45a6f1 raid6_gfexi +EXPORT_SYMBOL lib/raid6/raid6_pq 0xd9e91f83 raid6_vgfmul +EXPORT_SYMBOL net/802/p8022 0x14d18dbb unregister_8022_client +EXPORT_SYMBOL net/802/p8022 0x462622bf register_8022_client +EXPORT_SYMBOL net/802/p8023 0x13197438 make_8023_client +EXPORT_SYMBOL net/802/p8023 0x60152748 destroy_8023_client +EXPORT_SYMBOL net/802/psnap 0x682f1e2b unregister_snap_client +EXPORT_SYMBOL net/802/psnap 0x93ccfa95 register_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x02632fd4 p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0x05fe69d7 p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0x07170154 p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x078c7ff6 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x09a5daba p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0x0e098386 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0x199f855e p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0x21a677e1 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x26eed1f0 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x29c318e5 p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x29fd9243 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0x30a2e32e p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x314a3c92 v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x35d1e27e p9_idpool_get +EXPORT_SYMBOL net/9p/9pnet 0x362341dc p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0x3aeaa2d6 p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x44d2c2c0 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0x4c1c7428 p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x5044c74d p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x58ea6491 p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0x5af5d1e6 p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0x5d0c7038 p9_payload_gup +EXPORT_SYMBOL net/9p/9pnet 0x675123c6 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x6ce03f36 v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0x75543f01 p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0x84a5f3cb p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0x88a72d3a p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0x8ba81c47 p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0x977a0030 p9_nr_pages +EXPORT_SYMBOL net/9p/9pnet 0x9f6a0f14 p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0xa36a57a1 p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0xab561c78 p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0xaf5c9214 p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0xb6cf9c02 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0xba64c7ab p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0xbab677c6 p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0xbdd204cd p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0xc1629271 p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0xc3fbf38c p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0xc5db54a9 p9_idpool_destroy +EXPORT_SYMBOL net/9p/9pnet 0xc9b3491a p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0xd40871c0 v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0xd86cd3b5 p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0xd9b8876d p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0xe3072df1 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xea72f4f6 p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0xec62c130 p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0xf4a111d8 p9_idpool_create +EXPORT_SYMBOL net/9p/9pnet 0xf84f2022 p9_idpool_put +EXPORT_SYMBOL net/9p/9pnet 0xfd40c79d p9_idpool_check +EXPORT_SYMBOL net/appletalk/appletalk 0x07042c16 atrtr_get_dev +EXPORT_SYMBOL net/appletalk/appletalk 0x0f5709f3 aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0x2747b91a alloc_ltalkdev +EXPORT_SYMBOL net/appletalk/appletalk 0x685bb137 atalk_find_dev_addr +EXPORT_SYMBOL net/atm/atm 0x0e8b589c vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0x1daca2ea atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x1e8cac33 vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x30555f57 deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x3b91df0c atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x4ea9c12a atm_charge +EXPORT_SYMBOL net/atm/atm 0x5d6d8660 vcc_release_async +EXPORT_SYMBOL net/atm/atm 0x90c52b4a atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0x93136f41 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0x9ab41051 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xbba23ccb atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0xcb3ed153 atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0xcda158c4 atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/atm/atm 0xfcf0eeff atm_init_aal5 +EXPORT_SYMBOL net/ax25/ax25 0x026c1368 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x0c154704 ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x3afee63e ax25_findbyuid +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x478638ba ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x48ad020f ax25_rebuild_header +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x57761602 ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x78dbc9c5 ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0x947c0622 ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xde0af56a ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0xe444e5bb ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0xf97d510e ax25_hard_header +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0b3f0f2f hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x119185d4 bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x206f50af bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2d414b3d bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x302516ef bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0x366419a2 bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3e3ce983 hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x43af4abb hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0x50ee34b1 l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0x55208e91 bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5efc6628 hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6358759e hci_recv_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x65e32d4a hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0x67056dea bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6a66d99a hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6d76c9c9 __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7c640527 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7c86bf9f __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x81bc5298 l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x821e0528 bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x837f0953 bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8658d408 bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8cb21c77 hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x91c9a325 bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x92892fd2 hci_recv_stream_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x95442b15 bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0x99cdab4d bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0xaf4a6b91 hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb31ea32a hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb61a0c3b bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb73240a3 l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc3c15e55 bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcbeb9564 l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcc1fb551 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd8c830f8 hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe7c0e328 l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xeaaf5dcf hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xebf040c1 bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0xed18be36 hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf70de821 bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0xfaa0a646 hci_unregister_cb +EXPORT_SYMBOL net/bridge/bridge 0xc8e73c76 br_should_route_hook +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x08da19b3 ebt_register_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x114f5cd6 ebt_do_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xa8fff9f4 ebt_unregister_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +EXPORT_SYMBOL net/caif/caif 0x288777f4 cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x2a09f713 cfpkt_fromnative +EXPORT_SYMBOL net/caif/caif 0x329dbd06 cfpkt_info +EXPORT_SYMBOL net/caif/caif 0x38701a7c cfcnfg_del_phy_layer +EXPORT_SYMBOL net/caif/caif 0x4a237e57 cfpkt_tonative +EXPORT_SYMBOL net/caif/caif 0x6a44fc70 cfpkt_extr_head +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x8afa84f2 caif_connect_client +EXPORT_SYMBOL net/caif/caif 0x966d7de2 cfpkt_add_head +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xb1d85e13 get_cfcnfg +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/caif/caif 0xc39f9c27 caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0xea18fea6 caif_disconnect_client +EXPORT_SYMBOL net/can/can 0x10642377 can_rx_unregister +EXPORT_SYMBOL net/can/can 0x244fa73c can_proto_register +EXPORT_SYMBOL net/can/can 0x5546d5d2 can_send +EXPORT_SYMBOL net/can/can 0x63ff5a9c can_rx_register +EXPORT_SYMBOL net/can/can 0xc05b4a5d can_ioctl +EXPORT_SYMBOL net/can/can 0xdbef2e20 can_proto_unregister +EXPORT_SYMBOL net/ceph/libceph 0x052b666e ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0x09290ab3 ceph_debugfs_init +EXPORT_SYMBOL net/ceph/libceph 0x0d61c270 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0x1475bf0d ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x197effcb ceph_osdc_release_request +EXPORT_SYMBOL net/ceph/libceph 0x20d151cb ceph_osdc_setup +EXPORT_SYMBOL net/ceph/libceph 0x2979ed6e ceph_osdc_set_request_linger +EXPORT_SYMBOL net/ceph/libceph 0x29f88637 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0x2b10d4ba ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x331b5133 ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x3abec91f ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x3de5630c ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x3df0ec7c ceph_calc_ceph_pg +EXPORT_SYMBOL net/ceph/libceph 0x3f688151 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x4205ffd7 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0x43c7135f ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0x43e458f6 ceph_file_part +EXPORT_SYMBOL net/ceph/libceph 0x43efd647 ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x47fb9c2e osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0x4a283545 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x4af1874f ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0x4dcfd020 ceph_monc_create_snapid +EXPORT_SYMBOL net/ceph/libceph 0x4fc660a2 ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0x5379cea3 ceph_caps_for_mode +EXPORT_SYMBOL net/ceph/libceph 0x55efd822 ceph_osdc_create_event +EXPORT_SYMBOL net/ceph/libceph 0x570ceb67 ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x5bcf690c osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0x5dff07c9 ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x6adab211 ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x6b2e3bcd ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x6c5d5ac1 ceph_calc_pg_primary +EXPORT_SYMBOL net/ceph/libceph 0x6f93e91d ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x70871fde ceph_client_id +EXPORT_SYMBOL net/ceph/libceph 0x7168baf8 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0x72ccee95 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0x7380a1f7 ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x77692acb ceph_msg_last_put +EXPORT_SYMBOL net/ceph/libceph 0x7a2c6f31 ceph_monc_got_mdsmap +EXPORT_SYMBOL net/ceph/libceph 0x7f3d9cd2 ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x7f5176be ceph_copy_page_vector_to_user +EXPORT_SYMBOL net/ceph/libceph 0x8085f79c ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0x81eae1b6 ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0x828bcc82 ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x8a873e30 ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x8d2b88bb ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0x8f55940c ceph_osdc_put_event +EXPORT_SYMBOL net/ceph/libceph 0x904841ac ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x96f5d620 ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0x99e36571 ceph_osdc_cleanup +EXPORT_SYMBOL net/ceph/libceph 0x9a03b083 ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x9ae9cafe ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0x9b18bc25 osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x9b1a656a osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x9bf24b92 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x9c44ba64 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0x9f534f4d ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0x9f8d01d5 ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xa0cc0d74 osd_req_op_cls_response_data +EXPORT_SYMBOL net/ceph/libceph 0xa42c26e2 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xa940e472 ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0xab79d269 osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xabad7dd6 ceph_get_direct_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xae3515ba ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb10edb57 ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0xb1a505fa ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0xb268f9d0 ceph_osdc_readpages +EXPORT_SYMBOL net/ceph/libceph 0xb46f0f2f ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb6081d6d ceph_msgr_exit +EXPORT_SYMBOL net/ceph/libceph 0xb815e634 osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0xbb020645 ceph_osdc_unregister_linger_request +EXPORT_SYMBOL net/ceph/libceph 0xbc716994 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xc4a80955 ceph_debugfs_cleanup +EXPORT_SYMBOL net/ceph/libceph 0xc55de604 ceph_parse_options +EXPORT_SYMBOL net/ceph/libceph 0xc5c61e5b __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0xc731bd76 ceph_osdc_cancel_event +EXPORT_SYMBOL net/ceph/libceph 0xc9f82b38 ceph_msgr_init +EXPORT_SYMBOL net/ceph/libceph 0xcb50a624 ceph_parse_ips +EXPORT_SYMBOL net/ceph/libceph 0xcdf99965 ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0xd2c107bb ceph_flags_to_mode +EXPORT_SYMBOL net/ceph/libceph 0xd317312f ceph_osdc_writepages +EXPORT_SYMBOL net/ceph/libceph 0xdb9ad045 osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xdf3e60dd ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0xdf77b487 ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0xdfd6ac12 ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0xe347c1aa osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0xe82c9c32 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0xea0b7978 ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0xeb2493a2 ceph_osdc_build_request +EXPORT_SYMBOL net/ceph/libceph 0xed229339 ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0xf0c93edc ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xf191e74f ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0xf2f1a150 osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0xf538b575 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0xf5774cba ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0xf77b9427 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0xf8ba4374 osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0xf9194653 osd_req_op_watch_init +EXPORT_SYMBOL net/ceph/libceph 0xfcc6a166 ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0xff1112de ceph_osdc_wait_request +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x9befee18 dccp_syn_ack_timeout +EXPORT_SYMBOL net/ieee802154/ieee802154 0x154de4ea ieee802154_nl_disassoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x1574026b ieee802154_nl_assoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x1cb7a243 wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0x30cf25de wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0x334e9ea3 ieee802154_nl_assoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x3c09543e wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0x440965fe ieee802154_nl_start_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x4edb6c5a ieee802154_nl_beacon_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x5bd550b6 ieee802154_nl_disassoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x6de08647 ieee802154_nl_scan_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x984d4a1a wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0x9ef541e7 wpan_phy_alloc +EXPORT_SYMBOL net/ieee802154/ieee802154 0xecb67656 wpan_phy_for_each +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x35687016 arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x3fde8e2a arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x8bc8317f arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x4f7d1ca0 ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xc53c4492 ipt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xca5e0a81 ipt_register_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x1e5e6101 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv4/tunnel4 0x789c1905 xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x77c506a6 ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x8ef43e4d ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x22b10bdc ip6t_do_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xb6a93c44 ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xe49ff54d ip6t_register_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x3bf6f651 xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/tunnel6 0x89b4e2a1 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x0740ad13 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xb000de10 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x10c111fd ircomm_connect_response +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x3f2796c3 ircomm_data_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x64dc5411 ircomm_close +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xbae55019 ircomm_open +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xc2f8e396 ircomm_disconnect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xde18ee2d ircomm_flow_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xf86e59d0 ircomm_control_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xfe5752ac ircomm_connect_request +EXPORT_SYMBOL net/irda/irda 0x06a3ee58 irias_new_integer_value +EXPORT_SYMBOL net/irda/irda 0x07d3647c irlmp_register_service +EXPORT_SYMBOL net/irda/irda 0x09f58a8b hashbin_lock_find +EXPORT_SYMBOL net/irda/irda 0x0c6598c2 irlmp_close_lsap +EXPORT_SYMBOL net/irda/irda 0x2036ad06 irda_param_insert +EXPORT_SYMBOL net/irda/irda 0x26e6b539 irias_add_string_attrib +EXPORT_SYMBOL net/irda/irda 0x28125850 irlmp_connect_response +EXPORT_SYMBOL net/irda/irda 0x32cad7b4 irttp_udata_request +EXPORT_SYMBOL net/irda/irda 0x33cbe2c6 proc_irda +EXPORT_SYMBOL net/irda/irda 0x38271901 irda_notify_init +EXPORT_SYMBOL net/irda/irda 0x3b6d5f65 hashbin_remove_this +EXPORT_SYMBOL net/irda/irda 0x3dead06c irttp_open_tsap +EXPORT_SYMBOL net/irda/irda 0x3ef49499 irlap_close +EXPORT_SYMBOL net/irda/irda 0x42a9904d irias_delete_object +EXPORT_SYMBOL net/irda/irda 0x448b8aaa irda_qos_bits_to_value +EXPORT_SYMBOL net/irda/irda 0x46c1c4a2 irlmp_unregister_service +EXPORT_SYMBOL net/irda/irda 0x51731f77 irlmp_data_request +EXPORT_SYMBOL net/irda/irda 0x53704871 async_unwrap_char +EXPORT_SYMBOL net/irda/irda 0x549742bc irttp_connect_response +EXPORT_SYMBOL net/irda/irda 0x579ed052 irttp_data_request +EXPORT_SYMBOL net/irda/irda 0x615ee918 irias_new_object +EXPORT_SYMBOL net/irda/irda 0x623419b6 async_wrap_skb +EXPORT_SYMBOL net/irda/irda 0x66ef7db3 irias_add_integer_attrib +EXPORT_SYMBOL net/irda/irda 0x6a32b5f5 irlmp_connect_request +EXPORT_SYMBOL net/irda/irda 0x6aa80ca7 iriap_close +EXPORT_SYMBOL net/irda/irda 0x6b043eba irda_init_max_qos_capabilies +EXPORT_SYMBOL net/irda/irda 0x6d883857 iriap_open +EXPORT_SYMBOL net/irda/irda 0x7042bc54 irlmp_register_client +EXPORT_SYMBOL net/irda/irda 0x70e2ebaa irttp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0x763e54a4 irlmp_unregister_client +EXPORT_SYMBOL net/irda/irda 0x76ef9f52 irias_insert_object +EXPORT_SYMBOL net/irda/irda 0x7957f728 irlmp_update_client +EXPORT_SYMBOL net/irda/irda 0x7dabe31e hashbin_remove +EXPORT_SYMBOL net/irda/irda 0x7fb81606 irias_add_octseq_attrib +EXPORT_SYMBOL net/irda/irda 0x86b5f4ce hashbin_delete +EXPORT_SYMBOL net/irda/irda 0x8b69b459 hashbin_get_next +EXPORT_SYMBOL net/irda/irda 0x91815586 irda_param_pack +EXPORT_SYMBOL net/irda/irda 0x993ad14b irda_param_extract_all +EXPORT_SYMBOL net/irda/irda 0x9d2ab874 irttp_flow_request +EXPORT_SYMBOL net/irda/irda 0xa4548c32 hashbin_insert +EXPORT_SYMBOL net/irda/irda 0xabfffb01 iriap_getvaluebyclass_request +EXPORT_SYMBOL net/irda/irda 0xacf703a1 irttp_close_tsap +EXPORT_SYMBOL net/irda/irda 0xad66e1db hashbin_get_first +EXPORT_SYMBOL net/irda/irda 0xaf9d1231 irda_device_set_media_busy +EXPORT_SYMBOL net/irda/irda 0xb9394173 irias_delete_value +EXPORT_SYMBOL net/irda/irda 0xbcd3ef13 irias_object_change_attribute +EXPORT_SYMBOL net/irda/irda 0xbe40ace9 irlmp_discovery_request +EXPORT_SYMBOL net/irda/irda 0xc0115206 irttp_dup +EXPORT_SYMBOL net/irda/irda 0xc310cf21 hashbin_new +EXPORT_SYMBOL net/irda/irda 0xc941bff1 irlmp_open_lsap +EXPORT_SYMBOL net/irda/irda 0xd1ae6745 irias_find_object +EXPORT_SYMBOL net/irda/irda 0xd57045a8 hashbin_find +EXPORT_SYMBOL net/irda/irda 0xd68c685e irlap_open +EXPORT_SYMBOL net/irda/irda 0xd6deeaae irda_setup_dma +EXPORT_SYMBOL net/irda/irda 0xde4c6b3c irlmp_service_to_hint +EXPORT_SYMBOL net/irda/irda 0xdfaaf998 irttp_connect_request +EXPORT_SYMBOL net/irda/irda 0xecd82704 alloc_irdadev +EXPORT_SYMBOL net/irda/irda 0xed999212 irlmp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0xedd521c2 irlmp_get_discoveries +EXPORT_SYMBOL net/l2tp/l2tp_core 0xcfc186c2 l2tp_recv_common +EXPORT_SYMBOL net/lapb/lapb 0x38019eca lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0x8154a909 lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0x8d5457e5 lapb_register +EXPORT_SYMBOL net/lapb/lapb 0x93940c86 lapb_unregister +EXPORT_SYMBOL net/lapb/lapb 0x9fc6e225 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0xaf7f7f76 lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0xb1432a6a lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0xbddd8ef4 lapb_disconnect_request +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x55ce6a18 llc_sap_find +EXPORT_SYMBOL net/llc/llc 0x57308a5f llc_sap_close +EXPORT_SYMBOL net/llc/llc 0x5e8f500e llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0x6c6cdb31 llc_sap_list_lock +EXPORT_SYMBOL net/llc/llc 0xaaab6eb4 llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0xbcbe4f99 llc_add_pack +EXPORT_SYMBOL net/llc/llc 0xc775ff9d llc_sap_open +EXPORT_SYMBOL net/llc/llc 0xdd0d92db llc_set_station_handler +EXPORT_SYMBOL net/mac80211/mac80211 0x009376f2 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x08360248 ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x0bf0951b ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x120b5e66 ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0x1290f328 ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0x17ce332b ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0x1a305b94 ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0x1a679028 ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x1bd28cea ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x1efd4260 ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x21a2ae71 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0x2a597935 ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x2c0e3a81 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x2df6dcf8 ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x2ef25ede ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x3272ee13 wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x32bcee31 ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x3305b385 ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x33d7b54d ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x38f8e59d ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x3a6a64e8 rate_control_send_low +EXPORT_SYMBOL net/mac80211/mac80211 0x3db22794 ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0x3fa733ee ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x400b97d4 ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0x428169ed ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x439555be ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x43d04635 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0x4474b938 ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x46b4380e ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x47a7fb2e rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x51ab601c ieee80211_alloc_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x545951cd ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x58beaec0 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x5aa22092 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x5b5e5c84 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x5c28cca5 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x6130ea56 ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0x695090d1 ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x721da066 ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x77baa2d0 ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x8348da0e ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0x852bc59a ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0x88a2b422 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x8e820a8e ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0x8f0d6cf0 ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0x8fc9d9fe __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x90eb38d1 ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0x9832b709 ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x9c5e6334 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0xa1fc36c4 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xa6c8ead6 ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xa7a325aa ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xa8b856de ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xa944877a ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0xaa157485 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0xb66dac44 ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0xc69b4f28 ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xc7e9782e ieee80211_get_key_tx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xc8df38b6 ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0xc94cfcfd __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xc952747a ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0xc9ef626c ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0xca0003b9 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xca9c6e58 ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xcc47b800 ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xcccafe99 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xd213faf2 ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xddb47d52 ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xe8fc7190 __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xe9b489f8 ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0xf33ab7f3 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0xf395de03 ieee80211_aes_cmac_calculate_k1_k2 +EXPORT_SYMBOL net/mac80211/mac80211 0xfa8f8d11 ieee80211_rx +EXPORT_SYMBOL net/mac802154/mac802154 0x5cf3f6c1 ieee802154_register_device +EXPORT_SYMBOL net/mac802154/mac802154 0x751133cd ieee802154_alloc_device +EXPORT_SYMBOL net/mac802154/mac802154 0x950c849d ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0xbf0004a5 ieee802154_unregister_device +EXPORT_SYMBOL net/mac802154/mac802154 0xe7855cd1 ieee802154_free_device +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x1276367e ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x31c610da ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x6c2976b0 ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x6d51c378 register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x7366f409 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x73abf3f2 ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x7a0ee8bb ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x918b052b register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x98d979cc register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xacd98aa0 ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc0d7d779 unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc9e13c3f ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd291138d unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd6e09520 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x06ada2f8 __nf_ct_ext_destroy +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x72f87ebe __nf_ct_ext_add_length +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xb478eaf9 nf_conntrack_untracked +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0x827cc6a1 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_conntrack_proto_gre 0xd26c4d7d nf_ct_gre_keymap_flush +EXPORT_SYMBOL net/netfilter/nf_nat 0x000a9d8a nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0x16e19d75 nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0x17613182 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xab4391d1 __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xb75d7b62 nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0xf553ea72 nf_nat_used_tuple +EXPORT_SYMBOL net/netfilter/x_tables 0x057eae94 xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0x08c473b7 xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0x253e8b44 xt_compat_init_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x45e1cd20 xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0x502a2fca xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0x8876687f xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x9085cb0c xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xb28f5ef1 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xb2fea71d xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0xcb5e9cc2 xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0xdf503e6a xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0xe1f8fb48 xt_find_target +EXPORT_SYMBOL net/netfilter/x_tables 0xf61aa3ca xt_register_matches +EXPORT_SYMBOL net/nfc/hci/hci 0x19815c89 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x251dbaaf nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x2d90b4dd nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0x43028a27 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x488812ca nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0x4a5eb3fb nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0x585ab5d2 nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0x6e086dd3 nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0x73857b8b nfc_hci_send_response +EXPORT_SYMBOL net/nfc/hci/hci 0x7d18831c nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0x85d7c41e nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x8957b716 nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0xb7d93bf3 nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0xbca0b4fd nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xc04cedb5 nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0xc0e30c82 nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0xc5fe2f1d nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0xd5d00f0f nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xd895fa2a nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0xe40e3105 nfc_hci_get_param +EXPORT_SYMBOL net/nfc/nci/nci 0x09269d8d nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x25cd3cf4 nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0xa665f9dc nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xc0128c4d nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0xf67ad5ad nci_recv_frame +EXPORT_SYMBOL net/nfc/nfc 0x088f6bce nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0x163bb018 nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x2ef984bd nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0x3c6403c8 nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0x3ff1e6ba nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0x622bf6ef nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x72d8f1a4 nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0x736627ac nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x74079111 nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0x8e0420f6 nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0xb94e0fd1 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0xbac4dd1e nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0xbae72840 nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0xc9bd4f33 nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0xdb92faaf nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0xdf3783f1 nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0xe5c5e287 nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0xebbaff7c nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0xf8a58562 nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0xfcc13d99 nfc_class +EXPORT_SYMBOL net/nfc/nfc_digital 0x0c54ce7b nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x1201d682 nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x7a0f8028 nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x98bcb19c nfc_digital_unregister_device +EXPORT_SYMBOL net/phonet/phonet 0x094f35c6 phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0x3b6502de pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0x3d409ec7 phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0x45343250 pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0x4a536519 pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0x5142b0e5 pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0x70c5cab0 phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0xc6d6f517 phonet_proto_register +EXPORT_SYMBOL net/rds/rds 0x7505d413 rds_str_array +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x04d07524 rxrpc_kernel_intercept_rx_messages +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x18bc9b6a rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x260f9f8f rxrpc_kernel_get_abort_code +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x5f83a72a key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x7485087f rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x83316836 rxrpc_kernel_is_data_last +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x85c7e1d1 rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xa1fce364 rxrpc_kernel_get_error_number +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xb332019e rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xb9c18def rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xc2914292 rxrpc_kernel_accept_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xcd143519 rxrpc_kernel_reject_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xd7326031 rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xe2d482a2 rxrpc_kernel_free_skb +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xe8b9496d rxrpc_kernel_data_delivered +EXPORT_SYMBOL net/sctp/sctp 0xcc8e7d31 sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x5b535b86 gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x6234a701 gss_mech_get +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x7f310bd9 gss_mech_put +EXPORT_SYMBOL net/sunrpc/sunrpc 0x8cb179c1 svc_pool_stats_open +EXPORT_SYMBOL net/wimax/wimax 0x84602291 wimax_reset +EXPORT_SYMBOL net/wimax/wimax 0xf3a5a7ba wimax_rfkill +EXPORT_SYMBOL net/wireless/cfg80211 0x0141cc4a wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x04cac9aa cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x062a529d cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x0803446e cfg80211_del_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x090f3c6c wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x09c64fbd ieee80211_frequency_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x0b7056a4 ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0x0d3466de wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x19e03378 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0x1df0ad46 cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x21a2e3de cfg80211_roamed_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x23133464 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x2517914e wiphy_new +EXPORT_SYMBOL net/wireless/cfg80211 0x2afc192d cfg80211_inform_bss_width +EXPORT_SYMBOL net/wireless/cfg80211 0x2fb6435e cfg80211_inform_bss_width_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x326a3ddd cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x3df27bc8 cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x406a8302 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x45c9b72a cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0x474a0848 cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0x4ba9ba6f cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0x4c3b5878 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x4c40b2fb ieee80211_bss_get_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x4dff25ef __ieee80211_get_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x4ecfc4bd cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x4f92e0a8 cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x529e1222 cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x5342fcd6 cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0x549ae50f ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x55a993c3 cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0x65c0634e cfg80211_rx_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x68933148 cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6bc091a9 cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0x6d6cb9ad ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x74cf3d75 cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0x78588269 cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0x7ac11f38 ieee80211_data_to_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0x7c9f6723 cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x7d2bacd3 wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7fe1a403 cfg80211_find_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x826e6f41 cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x83082259 cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x8383ca4e cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0x982e6b6d ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0x9d92377d cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xa1425906 ieee80211_channel_to_frequency +EXPORT_SYMBOL net/wireless/cfg80211 0xa197b1ff ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xa1e3a668 cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0xa4de52d6 cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0xa5343d83 ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xa6862f3a cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xa77c532e cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0xac78f052 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0xb40585cd cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0xb9b01140 cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xba722950 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0xc0884060 regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0xc15c8611 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0xc1a9eb26 cfg80211_connect_result +EXPORT_SYMBOL net/wireless/cfg80211 0xc38e5b52 cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0xc5a56bfe wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0xc63f1b81 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0xc6771838 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0xca19cecf cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0xca930188 ieee80211_data_from_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0xcf422f2e cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0xcf618a57 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0xd1fe57fa wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0xd20c0536 cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xd476e373 cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0xdb13e5cb cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xdbf5f29b cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xdc297973 cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xee0abf82 cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xee42db3c cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xf33869b1 cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0xf7b24648 cfg80211_report_obss_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xf9f4cf29 cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0xfb70f1f3 freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0xfe5cbcea cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0xfed4d591 cfg80211_find_vendor_ie +EXPORT_SYMBOL net/wireless/cfg80211 0xffccf303 cfg80211_put_bss +EXPORT_SYMBOL net/wireless/lib80211 0x1ad94b3b lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0x23d60950 lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x282d6d54 lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0x2d0f99e5 print_ssid +EXPORT_SYMBOL net/wireless/lib80211 0x4d005830 lib80211_get_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x99f94149 lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xa85826dc lib80211_crypt_info_free +EXPORT_SYMBOL sound/ac97_bus 0x314b55e2 ac97_bus_type +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1fd27557 snd_seq_kernel_client_enqueue_blocking +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6aa6723b snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7f74da2c snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xcac0a3be snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0xf193925a snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x3a57f235 snd_seq_autoload_unlock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x7d366a9d snd_seq_device_register_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x913d7828 snd_seq_device_new +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xb90668b2 snd_seq_autoload_lock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xc622fb29 snd_seq_device_unregister_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf0a1fdb3 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x01b82065 snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x0d2b74da snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x2ceec35d snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x668570c0 snd_midi_event_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x7f92860c snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xb494afee snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xc7b2b6c2 snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xe0a50454 snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0x96b6a040 snd_virmidi_new +EXPORT_SYMBOL sound/core/snd 0x071072b6 snd_card_file_add +EXPORT_SYMBOL sound/core/snd 0x0a50bed0 snd_jack_set_key +EXPORT_SYMBOL sound/core/snd 0x0caaf370 snd_power_wait +EXPORT_SYMBOL sound/core/snd 0x10c9fab1 snd_card_unref +EXPORT_SYMBOL sound/core/snd 0x1124524a snd_ctl_notify +EXPORT_SYMBOL sound/core/snd 0x18e1683f snd_dma_program +EXPORT_SYMBOL sound/core/snd 0x191e88cf snd_dma_pointer +EXPORT_SYMBOL sound/core/snd 0x1ecf3c30 snd_unregister_device +EXPORT_SYMBOL sound/core/snd 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL sound/core/snd 0x280a0cd7 snd_device_new +EXPORT_SYMBOL sound/core/snd 0x2ae3deaa release_and_free_resource +EXPORT_SYMBOL sound/core/snd 0x2c89d598 _snd_ctl_add_slave +EXPORT_SYMBOL sound/core/snd 0x2e50d10f snd_card_register +EXPORT_SYMBOL sound/core/snd 0x2f8c2618 snd_ctl_boolean_stereo_info +EXPORT_SYMBOL sound/core/snd 0x33e719e6 snd_ctl_rename_id +EXPORT_SYMBOL sound/core/snd 0x3428bcaa snd_card_set_id +EXPORT_SYMBOL sound/core/snd 0x342a2354 copy_to_user_fromio +EXPORT_SYMBOL sound/core/snd 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL sound/core/snd 0x41ac87f8 snd_pci_quirk_lookup +EXPORT_SYMBOL sound/core/snd 0x4456b428 snd_info_create_card_entry +EXPORT_SYMBOL sound/core/snd 0x483b971a snd_ctl_find_numid +EXPORT_SYMBOL sound/core/snd 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL sound/core/snd 0x4b015768 snd_iprintf +EXPORT_SYMBOL sound/core/snd 0x559dcd62 snd_register_device_for_dev +EXPORT_SYMBOL sound/core/snd 0x5bbd3dc6 snd_card_file_remove +EXPORT_SYMBOL sound/core/snd 0x61dd2a74 snd_ctl_make_virtual_master +EXPORT_SYMBOL sound/core/snd 0x639324ca snd_add_device_sysfs_file +EXPORT_SYMBOL sound/core/snd 0x68f70c66 snd_card_free_when_closed +EXPORT_SYMBOL sound/core/snd 0x6be52f8e snd_component_add +EXPORT_SYMBOL sound/core/snd 0x6cc7ce89 snd_ctl_boolean_mono_info +EXPORT_SYMBOL sound/core/snd 0x6d0d602e snd_info_create_module_entry +EXPORT_SYMBOL sound/core/snd 0x70c15ac1 snd_dma_disable +EXPORT_SYMBOL sound/core/snd 0x76c0f93d snd_info_register +EXPORT_SYMBOL sound/core/snd 0x7cb8c7f8 snd_card_proc_new +EXPORT_SYMBOL sound/core/snd 0x81b69e41 snd_ctl_enum_info +EXPORT_SYMBOL sound/core/snd 0x832386d6 snd_ctl_register_ioctl +EXPORT_SYMBOL sound/core/snd 0x83d980d4 snd_jack_new +EXPORT_SYMBOL sound/core/snd 0x8f595b11 snd_major +EXPORT_SYMBOL sound/core/snd 0x94fcdc19 snd_ctl_new1 +EXPORT_SYMBOL sound/core/snd 0x959666a8 snd_ctl_remove +EXPORT_SYMBOL sound/core/snd 0x9d740c55 snd_ctl_find_id +EXPORT_SYMBOL sound/core/snd 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL sound/core/snd 0xa0fd2427 snd_pci_quirk_lookup_id +EXPORT_SYMBOL sound/core/snd 0xa1113479 snd_cards +EXPORT_SYMBOL sound/core/snd 0xa8300306 snd_jack_report +EXPORT_SYMBOL sound/core/snd 0xa97688c5 snd_device_register +EXPORT_SYMBOL sound/core/snd 0xad8102be snd_card_free +EXPORT_SYMBOL sound/core/snd 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL sound/core/snd 0xb8bfe7e7 snd_seq_root +EXPORT_SYMBOL sound/core/snd 0xbb5e131d snd_ctl_register_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0xc0b06f38 snd_jack_set_parent +EXPORT_SYMBOL sound/core/snd 0xcbe6d9a8 snd_ctl_add +EXPORT_SYMBOL sound/core/snd 0xd3f7fef3 snd_device_free +EXPORT_SYMBOL sound/core/snd 0xd6131f04 snd_ctl_unregister_ioctl +EXPORT_SYMBOL sound/core/snd 0xdab31a4a snd_ctl_replace +EXPORT_SYMBOL sound/core/snd 0xe09901ec snd_ctl_unregister_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0xecc3feb9 snd_ctl_free_one +EXPORT_SYMBOL sound/core/snd 0xef7032fc snd_info_free_entry +EXPORT_SYMBOL sound/core/snd 0xf52a5042 snd_ctl_remove_id +EXPORT_SYMBOL sound/core/snd 0xfd332f86 snd_card_create +EXPORT_SYMBOL sound/core/snd 0xff4b61b8 snd_card_disconnect +EXPORT_SYMBOL sound/core/snd 0xfffd89db copy_from_user_toio +EXPORT_SYMBOL sound/core/snd-hwdep 0x4d42ab79 snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-page-alloc 0x06b310c9 snd_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x302ba973 snd_dma_get_reserved_buf +EXPORT_SYMBOL sound/core/snd-page-alloc 0x5898dcba snd_malloc_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x7b1ebf76 snd_dma_alloc_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x7ef5dbf8 snd_dma_reserve_buf +EXPORT_SYMBOL sound/core/snd-page-alloc 0x7f42cb7c snd_dma_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0xca34c226 snd_sgbuf_get_chunk_size +EXPORT_SYMBOL sound/core/snd-page-alloc 0xe387157c snd_dma_alloc_pages_fallback +EXPORT_SYMBOL sound/core/snd-pcm 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL sound/core/snd-pcm 0x04cda566 snd_interval_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x0a15611c snd_pcm_kernel_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x0c661698 snd_pcm_set_ops +EXPORT_SYMBOL sound/core/snd-pcm 0x0f22b8cd snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL sound/core/snd-pcm 0x14a5261d snd_pcm_set_sync +EXPORT_SYMBOL sound/core/snd-pcm 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL sound/core/snd-pcm 0x23c98f8b snd_pcm_lib_malloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x265be770 snd_pcm_notify +EXPORT_SYMBOL sound/core/snd-pcm 0x26b8b03b snd_pcm_hw_param_first +EXPORT_SYMBOL sound/core/snd-pcm 0x2e0026a0 snd_pcm_hw_rule_noresample +EXPORT_SYMBOL sound/core/snd-pcm 0x3354d60a snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL sound/core/snd-pcm 0x3e054a81 snd_pcm_hw_constraint_step +EXPORT_SYMBOL sound/core/snd-pcm 0x4931780b snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL sound/core/snd-pcm 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL sound/core/snd-pcm 0x537557bc snd_pcm_hw_rule_add +EXPORT_SYMBOL sound/core/snd-pcm 0x59d586d0 snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL sound/core/snd-pcm 0x5a215929 snd_pcm_debug_name +EXPORT_SYMBOL sound/core/snd-pcm 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL sound/core/snd-pcm 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL sound/core/snd-pcm 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL sound/core/snd-pcm 0x6be85443 snd_pcm_lib_write +EXPORT_SYMBOL sound/core/snd-pcm 0x6d97918e snd_pcm_limit_hw_rates +EXPORT_SYMBOL sound/core/snd-pcm 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL sound/core/snd-pcm 0x6f638efe snd_pcm_lib_mmap_iomem +EXPORT_SYMBOL sound/core/snd-pcm 0x7b8a5072 snd_pcm_suspend_all +EXPORT_SYMBOL sound/core/snd-pcm 0x81355418 snd_pcm_lib_writev +EXPORT_SYMBOL sound/core/snd-pcm 0x832d493d snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x834dc955 snd_pcm_format_size +EXPORT_SYMBOL sound/core/snd-pcm 0x929f3b32 snd_pcm_stop +EXPORT_SYMBOL sound/core/snd-pcm 0x92f15102 snd_pcm_sgbuf_ops_page +EXPORT_SYMBOL sound/core/snd-pcm 0x94098ff8 snd_interval_list +EXPORT_SYMBOL sound/core/snd-pcm 0x98b394ab _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x9da08215 snd_pcm_hw_refine +EXPORT_SYMBOL sound/core/snd-pcm 0xa52c83fe snd_pcm_mmap_data +EXPORT_SYMBOL sound/core/snd-pcm 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL sound/core/snd-pcm 0xa9185221 snd_pcm_suspend +EXPORT_SYMBOL sound/core/snd-pcm 0xa9adc229 snd_pcm_link_rwlock +EXPORT_SYMBOL sound/core/snd-pcm 0xac468301 snd_pcm_hw_constraint_integer +EXPORT_SYMBOL sound/core/snd-pcm 0xb0490544 snd_pcm_new_internal +EXPORT_SYMBOL sound/core/snd-pcm 0xb220ba56 snd_pcm_lib_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0xb46317d7 snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL sound/core/snd-pcm 0xb4df55f5 snd_pcm_open_substream +EXPORT_SYMBOL sound/core/snd-pcm 0xb7395a36 snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL sound/core/snd-pcm 0xbb88d99a snd_pcm_release_substream +EXPORT_SYMBOL sound/core/snd-pcm 0xc02459dc snd_pcm_period_elapsed +EXPORT_SYMBOL sound/core/snd-pcm 0xc24de759 snd_pcm_lib_readv +EXPORT_SYMBOL sound/core/snd-pcm 0xc38625cf snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xccf37796 snd_pcm_lib_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xd9e14b1a snd_pcm_new +EXPORT_SYMBOL sound/core/snd-pcm 0xda456009 snd_pcm_new_stream +EXPORT_SYMBOL sound/core/snd-pcm 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL sound/core/snd-pcm 0xe70269fb snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL sound/core/snd-pcm 0xecd3eb6e snd_pcm_lib_read +EXPORT_SYMBOL sound/core/snd-pcm 0xed900716 snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL sound/core/snd-pcm 0xf3797152 snd_interval_ratnum +EXPORT_SYMBOL sound/core/snd-pcm 0xf89187e5 snd_pcm_hw_param_last +EXPORT_SYMBOL sound/core/snd-pcm 0xf8eacc43 snd_pcm_hw_constraint_list +EXPORT_SYMBOL sound/core/snd-pcm 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0dec9ac7 snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-rawmidi 0x14eaa001 snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0x2c4f02eb snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0x3733a231 snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x4a5d0f79 snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0x54585bf9 snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x61012c2a snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0x71274bc1 snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x80656302 snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0x8d7a0823 snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0x8e64ef67 snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0xc12d6f5e snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0xdf686297 snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-rawmidi 0xe4844fdb snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0xee953525 snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf1ac48f3 snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf7de942d snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-timer 0x268c4d8b snd_timer_notify +EXPORT_SYMBOL sound/core/snd-timer 0x3126d4ca snd_timer_continue +EXPORT_SYMBOL sound/core/snd-timer 0x346c7faa snd_timer_open +EXPORT_SYMBOL sound/core/snd-timer 0x362a026a snd_timer_close +EXPORT_SYMBOL sound/core/snd-timer 0x5eae8a5b snd_timer_global_register +EXPORT_SYMBOL sound/core/snd-timer 0x78259817 snd_timer_resolution +EXPORT_SYMBOL sound/core/snd-timer 0x89e0aef4 snd_timer_global_new +EXPORT_SYMBOL sound/core/snd-timer 0x9212795b snd_timer_stop +EXPORT_SYMBOL sound/core/snd-timer 0xa289e336 snd_timer_new +EXPORT_SYMBOL sound/core/snd-timer 0xa8b67f15 snd_timer_global_free +EXPORT_SYMBOL sound/core/snd-timer 0xaf3f86bc snd_timer_pause +EXPORT_SYMBOL sound/core/snd-timer 0xb91b5ec2 snd_timer_start +EXPORT_SYMBOL sound/core/snd-timer 0xfa8c963d snd_timer_interrupt +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xeb1ae905 snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x028144b3 snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x0363a902 snd_opl3_create +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x2fc494e6 snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x70cad5b3 snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xa09334ba snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xc1016b55 snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xd4adc0a9 snd_opl3_init +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xdfaac034 snd_opl3_reset +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xe9bde805 snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x1b4c38ae snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x1f031f9e snd_vx_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x44d549d8 snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x61fe06bc snd_vx_dsp_boot +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x7016a265 snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x82d02f1f snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x9c024f48 snd_vx_resume +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xbbe8cd64 snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xed905795 snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x06c9cf95 amdtp_out_stream_start +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x07f44b89 amdtp_out_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x0c92441d amdtp_out_stream_pcm_pointer +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x2c40b81a amdtp_out_stream_set_parameters +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x2f712d7d fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x3dd33162 cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x414d5aeb cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x47412a95 amdtp_out_stream_set_pcm_format +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x497e58a6 iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x4a36dfbf amdtp_out_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x4ffc7c56 cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x6654effa cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x79056965 fw_iso_resources_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x82b41f02 amdtp_out_stream_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x8ddb4a88 fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa77535a0 amdtp_out_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa8cc5cc9 fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xaaf84ad1 cmp_connection_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xb5a6c942 fw_iso_resources_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc1fad475 fcp_avc_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc2a32baf amdtp_out_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc530257d snd_fw_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd757f0f1 amdtp_out_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe34c3883 fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xeab5b8cd iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xef7cbdc1 amdtp_out_stream_stop +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x119d041c snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x236614e8 snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x54e639e4 snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x5ceb2843 snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x7089c7ac snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x9d0aed7d snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x25a3bdfd snd_ak4117_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x803c3c3f snd_ak4117_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x8c8cc6aa snd_ak4117_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x9559fb14 snd_ak4117_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x983ee297 snd_ak4117_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xb8e3681a snd_ak4117_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x3600196c snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x438baaf6 snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xc5211f8e snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xd69b5ceb snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x06156e64 snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x837ebb84 snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x9c4f9f7d snd_cs8427_iec958_active +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xc1483139 snd_cs8427_iec958_build +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xc8441384 snd_cs8427_create +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xd54972b2 snd_cs8427_iec958_pcm +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xfa8dd86f snd_cs8427_reg_write +EXPORT_SYMBOL sound/i2c/snd-i2c 0x624fb6ab snd_i2c_readbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x7d27dd1b snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x9e92252d snd_i2c_probeaddr +EXPORT_SYMBOL sound/i2c/snd-i2c 0xc1a48038 snd_i2c_sendbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0xc5e48a3a snd_i2c_bus_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0xc755f505 snd_i2c_device_free +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x179a6440 snd_sbmixer_suspend +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x3a5383ff snd_sbmixer_add_ctl +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x43eeb078 snd_sbdsp_create +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x68dcc6d1 snd_sbmixer_write +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x6bcb8f7f snd_sbmixer_read +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x74b0590c snd_sbmixer_resume +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x9dc60a5b snd_sbdsp_get_byte +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xa7876c8a snd_sbdsp_reset +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xac3b3dd5 snd_sbdsp_command +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xe19e967c snd_sbmixer_new +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x1c59ab75 snd_sb16dsp_configure +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x492a263c snd_sb16dsp_get_pcm_ops +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x49ffde29 snd_sb16dsp_pcm +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xe0b3f690 snd_sb16dsp_interrupt +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x010d23f6 snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x0c4d4614 snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x13be26ad snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x177c6467 snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x18ff06a7 snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x3149f469 snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x60bb3f88 snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x62899c3b snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x64b50ea5 snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x6f6c4408 snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x799a6e97 snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x87ba74ee snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x9d15695f snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xa802646e snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xbaff1e4a snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xced5e2af snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xd13b02b3 snd_ac97_resume +EXPORT_SYMBOL sound/pci/asihpi/snd-asihpi 0x401eb53b hpi_send_recv +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x0b510ead snd_emu10k1_memblk_map +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x65e7ca55 snd_emu10k1_synth_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x7ac65736 snd_emu10k1_voice_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x7c148566 snd_emu10k1_ptr_write +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x7f8b03d2 snd_emu10k1_voice_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x98de43f7 snd_emu10k1_synth_copy_from_user +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xc85bc481 snd_emu10k1_synth_bzero +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xe17899a7 snd_emu10k1_ptr_read +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xf52ede84 snd_emu10k1_synth_free +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x02dfff27 snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xc6d4ca0e snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xde483335 snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x03b5f006 oxygen_pci_probe +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x0ba36879 oxygen_write32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x25364f34 oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x2dbad2cd oxygen_pci_pm +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x37aee249 oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x3be42e01 oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x419ec487 oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x53c1e86d oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x553a16dc oxygen_write_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x5840b63c oxygen_write16_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x7917f2bc oxygen_read8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x799272ed oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x87870d82 oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x9e229754 oxygen_write8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xaec3cade oxygen_write_i2c +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xbe6b62e3 oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc65a16f5 oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xcf9aa0bb oxygen_pci_remove +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xe2a2aca8 oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xf6d84d25 oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x37d9f245 snd_trident_write_voice_regs +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x4ab57179 snd_trident_alloc_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x8b46733b snd_trident_stop_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xc4b07a87 snd_trident_free_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xe09949db snd_trident_start_voice +EXPORT_SYMBOL sound/soundcore 0xa1794402 sound_class +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x1e037dc8 snd_emux_unlock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x2cba6a29 snd_emux_terminate_all +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x4513f428 snd_emux_free +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x655cb202 snd_sf_linear_to_log +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x6d7b4d64 snd_emux_new +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x8bda043f snd_emux_lock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xb04cd02e snd_emux_register +EXPORT_SYMBOL sound/synth/snd-util-mem 0x6d3d235d __snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x75923aeb snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x7f8049ae snd_util_memhdr_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x8686b011 snd_util_memhdr_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x9cb441bc snd_util_mem_avail +EXPORT_SYMBOL sound/synth/snd-util-mem 0xa83f2cc9 __snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0xcaa6a3b8 snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0xff576469 __snd_util_memblk_new +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x7cf4bba1 snd_usbmidi_create +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL vmlinux 0x00000000 __symbol_put +EXPORT_SYMBOL vmlinux 0x00000000 alloc_pages_current +EXPORT_SYMBOL vmlinux 0x00000000 current_fs_time +EXPORT_SYMBOL vmlinux 0x00000000 d_tmpfile +EXPORT_SYMBOL vmlinux 0x00000000 do_sync_read +EXPORT_SYMBOL vmlinux 0x00000000 filp_close +EXPORT_SYMBOL vmlinux 0x00000000 finish_open +EXPORT_SYMBOL vmlinux 0x00000000 generic_getxattr +EXPORT_SYMBOL vmlinux 0x00000000 generic_write_sync +EXPORT_SYMBOL vmlinux 0x00000000 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x00000000 in_group_p +EXPORT_SYMBOL vmlinux 0x00000000 inode_add_bytes +EXPORT_SYMBOL vmlinux 0x00000000 iov_shorten +EXPORT_SYMBOL vmlinux 0x00000000 iterate_fd +EXPORT_SYMBOL vmlinux 0x00000000 ns_capable +EXPORT_SYMBOL vmlinux 0x00000000 path_is_under +EXPORT_SYMBOL vmlinux 0x00000000 register_exec_domain +EXPORT_SYMBOL vmlinux 0x00000000 schedule_timeout +EXPORT_SYMBOL vmlinux 0x00000000 sock_register +EXPORT_SYMBOL vmlinux 0x00000000 sys_close +EXPORT_SYMBOL vmlinux 0x00000000 task_nice +EXPORT_SYMBOL vmlinux 0x00000000 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x00000000 vm_brk +EXPORT_SYMBOL vmlinux 0x000996a8 x86_hyper_vmware +EXPORT_SYMBOL vmlinux 0x004068de pnp_stop_dev +EXPORT_SYMBOL vmlinux 0x006fbf3a tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0x007b29fa rt6_lookup +EXPORT_SYMBOL vmlinux 0x00801678 flush_scheduled_work +EXPORT_SYMBOL vmlinux 0x009aa747 xfrm_state_update +EXPORT_SYMBOL vmlinux 0x00bd1d49 tcp_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x00bf9f91 efi +EXPORT_SYMBOL vmlinux 0x00c1d205 ll_rw_block +EXPORT_SYMBOL vmlinux 0x00c648c9 inet6_add_offload +EXPORT_SYMBOL vmlinux 0x00d41116 pci_scan_bus_parented +EXPORT_SYMBOL vmlinux 0x00e68bbf mmc_free_host +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x010c8b7e fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0x0130f13c free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x014724ab skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0x01508736 inet_addr_type +EXPORT_SYMBOL vmlinux 0x015ddbdc wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x018fc73e skb_store_bits +EXPORT_SYMBOL vmlinux 0x01902adf netpoll_trap +EXPORT_SYMBOL vmlinux 0x01aa8075 remove_arg_zero +EXPORT_SYMBOL vmlinux 0x01cef7bb max8998_bulk_write +EXPORT_SYMBOL vmlinux 0x01d6bf7e twl6040_set_bits +EXPORT_SYMBOL vmlinux 0x01dd8058 ihold +EXPORT_SYMBOL vmlinux 0x01ff6265 elv_rq_merge_ok +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x021b821d skb_find_text +EXPORT_SYMBOL vmlinux 0x0221ddfb udp_lib_unhash +EXPORT_SYMBOL vmlinux 0x023787eb pci_disable_msix +EXPORT_SYMBOL vmlinux 0x0237b57a arch_unregister_cpu +EXPORT_SYMBOL vmlinux 0x02649054 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x027bfa36 pcie_set_mps +EXPORT_SYMBOL vmlinux 0x027e8df2 dump_align +EXPORT_SYMBOL vmlinux 0x029444f0 native_read_tsc +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a6ce5a crc16_table +EXPORT_SYMBOL vmlinux 0x02c0d85d security_file_permission +EXPORT_SYMBOL vmlinux 0x02c5e1ac set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0x02deae80 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x03131ed5 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x03498156 cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x03565d31 bio_integrity_endio +EXPORT_SYMBOL vmlinux 0x03592ea0 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x036b399a agp_copy_info +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x03b8eeaf pci_assign_resource +EXPORT_SYMBOL vmlinux 0x03c06156 bitmap_fold +EXPORT_SYMBOL vmlinux 0x03db8187 gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0x03dd7fc6 padata_stop +EXPORT_SYMBOL vmlinux 0x03ebda85 dns_query +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x0422fe4a inet_csk_timer_bug_msg +EXPORT_SYMBOL vmlinux 0x0432fbf0 dquot_free_inode +EXPORT_SYMBOL vmlinux 0x0437d8ac tcf_register_action +EXPORT_SYMBOL vmlinux 0x04433820 sock_no_getname +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x046e4770 mb_cache_entry_insert +EXPORT_SYMBOL vmlinux 0x048064ea filemap_fault +EXPORT_SYMBOL vmlinux 0x0487f831 fb_find_best_display +EXPORT_SYMBOL vmlinux 0x048b4337 i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0x04901b72 pnp_activate_dev +EXPORT_SYMBOL vmlinux 0x04927208 cpu_active_mask +EXPORT_SYMBOL vmlinux 0x04a1fb79 security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x04a6223b __idr_pre_get +EXPORT_SYMBOL vmlinux 0x04d8c750 release_perfctr_nmi +EXPORT_SYMBOL vmlinux 0x04e6cc00 vlan_untag +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04ea5d10 ksize +EXPORT_SYMBOL vmlinux 0x04f852fe devm_gpio_request +EXPORT_SYMBOL vmlinux 0x050736ed put_tty_driver +EXPORT_SYMBOL vmlinux 0x050877b9 dmi_first_match +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x053eb9c3 register_shrinker +EXPORT_SYMBOL vmlinux 0x054434d6 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x055c8559 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x0569a1cb inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x0593a99b init_timer_key +EXPORT_SYMBOL vmlinux 0x0593e3b3 replace_mount_options +EXPORT_SYMBOL vmlinux 0x05ef3ee1 dm_unregister_target +EXPORT_SYMBOL vmlinux 0x05f043fa sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x061f4039 acpi_get_table_with_size +EXPORT_SYMBOL vmlinux 0x0623dbb9 __pagevec_lru_add +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x064167dd fb_pan_display +EXPORT_SYMBOL vmlinux 0x06791c78 ip_defrag +EXPORT_SYMBOL vmlinux 0x06797871 vm_stat +EXPORT_SYMBOL vmlinux 0x067d8d35 security_release_secctx +EXPORT_SYMBOL vmlinux 0x068c7263 ioremap_cache +EXPORT_SYMBOL vmlinux 0x0694ad83 freeze_super +EXPORT_SYMBOL vmlinux 0x06a3095a inode_get_bytes +EXPORT_SYMBOL vmlinux 0x06a52aed aio_complete +EXPORT_SYMBOL vmlinux 0x06ab160f dquot_file_open +EXPORT_SYMBOL vmlinux 0x06bf1222 filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0x06c0dae5 __kernel_fpu_end +EXPORT_SYMBOL vmlinux 0x06c61c01 skb_copy_datagram_iovec +EXPORT_SYMBOL vmlinux 0x06fe3b14 default_grn +EXPORT_SYMBOL vmlinux 0x071a61a1 unlock_new_inode +EXPORT_SYMBOL vmlinux 0x07202564 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x0727c4f3 iowrite8 +EXPORT_SYMBOL vmlinux 0x073dfa12 generate_resume_trace +EXPORT_SYMBOL vmlinux 0x077051a3 unlock_page +EXPORT_SYMBOL vmlinux 0x0799aca4 local_bh_enable +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07a98c28 scsi_add_device +EXPORT_SYMBOL vmlinux 0x07b6362e i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07e06db2 tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x07e745e4 devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0x07ec85c3 __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0x07f24ead ps2_drain +EXPORT_SYMBOL vmlinux 0x08138903 __vlan_find_dev_deep +EXPORT_SYMBOL vmlinux 0x08190f07 compat_ip_setsockopt +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x0838ffa2 backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x0839fb39 try_module_get +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x083f5578 blk_free_tags +EXPORT_SYMBOL vmlinux 0x0846f59a cpu_info +EXPORT_SYMBOL vmlinux 0x08539792 bio_sector_offset +EXPORT_SYMBOL vmlinux 0x0897287b acpi_disable_all_gpes +EXPORT_SYMBOL vmlinux 0x089798db pci_alloc_dev +EXPORT_SYMBOL vmlinux 0x08a6ef34 set_bh_page +EXPORT_SYMBOL vmlinux 0x08c051c2 tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0x08df8120 napi_gro_receive +EXPORT_SYMBOL vmlinux 0x08f64aa4 _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x08fc0095 agp_bind_memory +EXPORT_SYMBOL vmlinux 0x090102d3 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0x093c823f tcp_make_synack +EXPORT_SYMBOL vmlinux 0x09480cd1 dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0x098431ba acpi_get_current_resources +EXPORT_SYMBOL vmlinux 0x098b6dac proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x0992780d efi_enabled +EXPORT_SYMBOL vmlinux 0x09a1779a inet_add_protocol +EXPORT_SYMBOL vmlinux 0x09a52cbc __brelse +EXPORT_SYMBOL vmlinux 0x09a89da0 icmpv6_send +EXPORT_SYMBOL vmlinux 0x09a9a253 tcf_action_exec +EXPORT_SYMBOL vmlinux 0x09bb0037 simple_setattr +EXPORT_SYMBOL vmlinux 0x09c55cec schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09cb7268 blk_queue_invalidate_tags +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09d99d86 x86_hyper_ms_hyperv +EXPORT_SYMBOL vmlinux 0x09f3092c blk_queue_bounce +EXPORT_SYMBOL vmlinux 0x0a18ac88 eth_change_mtu +EXPORT_SYMBOL vmlinux 0x0a2487e0 unblock_all_signals +EXPORT_SYMBOL vmlinux 0x0a4f2e4b pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0x0a5358b1 sock_update_classid +EXPORT_SYMBOL vmlinux 0x0a770832 register_memory_notifier +EXPORT_SYMBOL vmlinux 0x0a83f828 keyring_clear +EXPORT_SYMBOL vmlinux 0x0a89f7d6 pci_scan_bus +EXPORT_SYMBOL vmlinux 0x0ac60e44 inet6_bind +EXPORT_SYMBOL vmlinux 0x0ac63118 pnp_request_card_device +EXPORT_SYMBOL vmlinux 0x0acb1a3c __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0x0aceca73 blk_execute_rq +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ad0e67c idr_replace +EXPORT_SYMBOL vmlinux 0x0ad4359a revalidate_disk +EXPORT_SYMBOL vmlinux 0x0adf183b skb_clone +EXPORT_SYMBOL vmlinux 0x0b0d888b icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0x0b1bcbdf call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b32a12f __seq_open_private +EXPORT_SYMBOL vmlinux 0x0b3b5011 I_BDEV +EXPORT_SYMBOL vmlinux 0x0b5d6286 put_io_context +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b84864c mb_cache_entry_release +EXPORT_SYMBOL vmlinux 0x0b9179ac vga_switcheroo_register_client +EXPORT_SYMBOL vmlinux 0x0b9690fa skb_trim +EXPORT_SYMBOL vmlinux 0x0b97442d __nla_reserve +EXPORT_SYMBOL vmlinux 0x0bba076b mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x0bbc5908 gen_estimator_active +EXPORT_SYMBOL vmlinux 0x0bbfd45d km_report +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bcc03b9 kobject_get +EXPORT_SYMBOL vmlinux 0x0bcd5aba ps2_command +EXPORT_SYMBOL vmlinux 0x0be74824 touch_buffer +EXPORT_SYMBOL vmlinux 0x0bfeebf0 phy_attach_direct +EXPORT_SYMBOL vmlinux 0x0c0b0baf pci_get_class +EXPORT_SYMBOL vmlinux 0x0c15395b uart_resume_port +EXPORT_SYMBOL vmlinux 0x0c23ead9 nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x0c45fc96 vfs_lstat +EXPORT_SYMBOL vmlinux 0x0c47e046 dev_addr_flush +EXPORT_SYMBOL vmlinux 0x0c4ce00b sock_edemux +EXPORT_SYMBOL vmlinux 0x0c58a8cd netdev_increment_features +EXPORT_SYMBOL vmlinux 0x0c65e73c scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0x0c7b7df3 swiotlb_map_sg_attrs +EXPORT_SYMBOL vmlinux 0x0c8c9e99 scsi_show_extd_sense +EXPORT_SYMBOL vmlinux 0x0c8fce96 __sock_create +EXPORT_SYMBOL vmlinux 0x0c9336f9 pci_enable_device +EXPORT_SYMBOL vmlinux 0x0ca7b7a8 acpi_check_region +EXPORT_SYMBOL vmlinux 0x0cae232b utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0x0ccbbf82 skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0x0cd98752 dev_open +EXPORT_SYMBOL vmlinux 0x0cdb7d12 __kernel_fpu_begin +EXPORT_SYMBOL vmlinux 0x0ce0c2f8 genphy_suspend +EXPORT_SYMBOL vmlinux 0x0ce900af blk_finish_plug +EXPORT_SYMBOL vmlinux 0x0cfacb1f eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0x0d10d323 read_dev_sector +EXPORT_SYMBOL vmlinux 0x0d2b6425 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0x0d3dda14 acpi_get_type +EXPORT_SYMBOL vmlinux 0x0d3ef287 wake_up_process +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d5f730d mnt_pin +EXPORT_SYMBOL vmlinux 0x0d64bb75 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x0d80b271 __f_setown +EXPORT_SYMBOL vmlinux 0x0d99381a kill_fasync +EXPORT_SYMBOL vmlinux 0x0d9e9700 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0x0da10ec3 security_sock_graft +EXPORT_SYMBOL vmlinux 0x0da271b4 scsi_mode_sense +EXPORT_SYMBOL vmlinux 0x0db3a00b bio_copy_data +EXPORT_SYMBOL vmlinux 0x0dd5e5fd genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0x0dde64fb scsi_device_get +EXPORT_SYMBOL vmlinux 0x0df95d03 ipmi_smi_watcher_unregister +EXPORT_SYMBOL vmlinux 0x0e0c0596 bitmap_endwrite +EXPORT_SYMBOL vmlinux 0x0e168999 dquot_resume +EXPORT_SYMBOL vmlinux 0x0e281c6c security_inode_readlink +EXPORT_SYMBOL vmlinux 0x0e407b7e dquot_initialize +EXPORT_SYMBOL vmlinux 0x0e524594 xfrm_register_km +EXPORT_SYMBOL vmlinux 0x0e6da44a set_normalized_timespec +EXPORT_SYMBOL vmlinux 0x0e8a31e2 vfs_writev +EXPORT_SYMBOL vmlinux 0x0e9fcb58 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x0ebe08fc scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0x0ec14e97 scsi_register +EXPORT_SYMBOL vmlinux 0x0ec5aeba agp_backend_release +EXPORT_SYMBOL vmlinux 0x0ecbb1db blk_peek_request +EXPORT_SYMBOL vmlinux 0x0ed383a2 sk_stream_write_space +EXPORT_SYMBOL vmlinux 0x0ed8cc7b acpi_evaluate_object_typed +EXPORT_SYMBOL vmlinux 0x0ee4cf74 security_path_symlink +EXPORT_SYMBOL vmlinux 0x0ef6549e netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0x0efcbb1b set_current_groups +EXPORT_SYMBOL vmlinux 0x0f4c91ed ns_to_timespec +EXPORT_SYMBOL vmlinux 0x0f50b574 bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x0f53d758 truncate_pagecache +EXPORT_SYMBOL vmlinux 0x0f56a44c filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0x0f8b6c0c xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x0fa24923 inet_stream_ops +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fd00a68 acpi_clear_event +EXPORT_SYMBOL vmlinux 0x0fed7c6f unmap_underlying_metadata +EXPORT_SYMBOL vmlinux 0x0ff2b602 slhc_compress +EXPORT_SYMBOL vmlinux 0x0ff7a6f0 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x1003a5dd inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0x10118abb __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x1023db51 eth_header_parse +EXPORT_SYMBOL vmlinux 0x1066e97b netif_receive_skb +EXPORT_SYMBOL vmlinux 0x1072a394 csum_partial_copy_from_user +EXPORT_SYMBOL vmlinux 0x108868cf datagram_poll +EXPORT_SYMBOL vmlinux 0x109e19ee __block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x10af6b0e scsi_host_put +EXPORT_SYMBOL vmlinux 0x10b3de8e start_tty +EXPORT_SYMBOL vmlinux 0x10ee20bb default_blu +EXPORT_SYMBOL vmlinux 0x1104c6e7 mmc_detect_change +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x111041e3 generic_setxattr +EXPORT_SYMBOL vmlinux 0x111d6b33 cdev_init +EXPORT_SYMBOL vmlinux 0x11267875 scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0x11426900 mpage_writepage +EXPORT_SYMBOL vmlinux 0x115add75 __bread +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x116ce2b0 block_invalidatepage +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x118bf76c mdiobus_write +EXPORT_SYMBOL vmlinux 0x119342ad input_grab_device +EXPORT_SYMBOL vmlinux 0x11bb9f32 __nlmsg_put +EXPORT_SYMBOL vmlinux 0x11c3b147 xfrm_state_add +EXPORT_SYMBOL vmlinux 0x11ccae9e acpi_pm_device_run_wake +EXPORT_SYMBOL vmlinux 0x11d3304b abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x11e2ec12 flex_array_free_parts +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x120d67d4 unregister_memory_isolate_notifier +EXPORT_SYMBOL vmlinux 0x121b8747 ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x122c6d6a dma_async_device_register +EXPORT_SYMBOL vmlinux 0x1235ce4e key_validate +EXPORT_SYMBOL vmlinux 0x1251d649 pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0x129de341 wrmsr_on_cpus +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12c4a3a9 blk_complete_request +EXPORT_SYMBOL vmlinux 0x12caf1b6 md_error +EXPORT_SYMBOL vmlinux 0x12d28e3c dev_mc_init +EXPORT_SYMBOL vmlinux 0x12dedffc sync_inodes_sb +EXPORT_SYMBOL vmlinux 0x12dfeb12 vprintk_emit +EXPORT_SYMBOL vmlinux 0x12f0ac75 scsi_unregister +EXPORT_SYMBOL vmlinux 0x12f7bb84 __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x12f8af55 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0x1305d532 ucs2_strncmp +EXPORT_SYMBOL vmlinux 0x13307fde vsscanf +EXPORT_SYMBOL vmlinux 0x1331d170 sk_free +EXPORT_SYMBOL vmlinux 0x1348760d ipmi_request_settime +EXPORT_SYMBOL vmlinux 0x13493557 agp_generic_free_by_type +EXPORT_SYMBOL vmlinux 0x134b3fa6 ioctl_by_bdev +EXPORT_SYMBOL vmlinux 0x13658c86 inode_dio_done +EXPORT_SYMBOL vmlinux 0x136b48f1 follow_down +EXPORT_SYMBOL vmlinux 0x1394ada1 tcf_hash_search +EXPORT_SYMBOL vmlinux 0x13cb1c2f ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13df59ac abort_creds +EXPORT_SYMBOL vmlinux 0x13f42152 system_entering_hibernation +EXPORT_SYMBOL vmlinux 0x13fd56c0 jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x140e9496 swiotlb_alloc_coherent +EXPORT_SYMBOL vmlinux 0x14190158 xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0x14263389 pnp_unregister_driver +EXPORT_SYMBOL vmlinux 0x14361c56 i2c_transfer +EXPORT_SYMBOL vmlinux 0x144085a0 pci_bus_put +EXPORT_SYMBOL vmlinux 0x144c8a7f blk_start_request +EXPORT_SYMBOL vmlinux 0x145b733a tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x1468380c nf_unregister_hook +EXPORT_SYMBOL vmlinux 0x146ec2ab vfs_mkdir +EXPORT_SYMBOL vmlinux 0x149eaf29 __xfrm_init_state +EXPORT_SYMBOL vmlinux 0x14b1cf34 free_xenballooned_pages +EXPORT_SYMBOL vmlinux 0x14bfca37 ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x14c3cb26 neigh_update +EXPORT_SYMBOL vmlinux 0x14d16af9 set_device_ro +EXPORT_SYMBOL vmlinux 0x14ffa7c0 ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0x150389d6 acpi_processor_power_init_bm_check +EXPORT_SYMBOL vmlinux 0x150dacd3 xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0x152462e7 km_query +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x1551dc51 bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x155267d3 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0x156ddad2 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0x158e3f60 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0x159412fc input_reset_device +EXPORT_SYMBOL vmlinux 0x15b2a860 page_readlink +EXPORT_SYMBOL vmlinux 0x15c57852 ps2_init +EXPORT_SYMBOL vmlinux 0x15cf7b0b netif_napi_del +EXPORT_SYMBOL vmlinux 0x15dd3f45 proc_set_user +EXPORT_SYMBOL vmlinux 0x15e7d068 dev_uc_sync +EXPORT_SYMBOL vmlinux 0x15f571ec blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0x160a1745 blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0x160ea4c8 sfi_disabled +EXPORT_SYMBOL vmlinux 0x160f5fb0 ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0x161163fb jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0x16305289 warn_slowpath_null +EXPORT_SYMBOL vmlinux 0x1637ff0f _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0x163d605d sock_get_timestamp +EXPORT_SYMBOL vmlinux 0x166abd69 __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x1671a74d xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x16777586 netdev_info +EXPORT_SYMBOL vmlinux 0x167c5967 print_hex_dump +EXPORT_SYMBOL vmlinux 0x167e7f9d __get_user_1 +EXPORT_SYMBOL vmlinux 0x16847be8 inode_permission +EXPORT_SYMBOL vmlinux 0x168af608 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0x168f1082 _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x16a6742f elv_dispatch_add_tail +EXPORT_SYMBOL vmlinux 0x16bb2f4f get_write_access +EXPORT_SYMBOL vmlinux 0x16c8e5da __skb_dst_set_noref +EXPORT_SYMBOL vmlinux 0x16dcec76 ipmi_set_my_address +EXPORT_SYMBOL vmlinux 0x16f1dc27 gen_replace_estimator +EXPORT_SYMBOL vmlinux 0x170c25ee acpi_get_next_object +EXPORT_SYMBOL vmlinux 0x17172681 cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0x17389751 bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x1742baec single_open +EXPORT_SYMBOL vmlinux 0x1742d5d7 xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0x174717fd agp_generic_type_to_mask_type +EXPORT_SYMBOL vmlinux 0x176dee5f register_quota_format +EXPORT_SYMBOL vmlinux 0x178116a5 __page_cache_alloc +EXPORT_SYMBOL vmlinux 0x178c46b9 inet_select_addr +EXPORT_SYMBOL vmlinux 0x1790d76b _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0x17b1125d gen_kill_estimator +EXPORT_SYMBOL vmlinux 0x17b64d09 dqstats +EXPORT_SYMBOL vmlinux 0x17b8779b __ethtool_get_settings +EXPORT_SYMBOL vmlinux 0x17be0431 dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x17e61a8f bitmap_start_sync +EXPORT_SYMBOL vmlinux 0x17f341a0 i8042_lock_chip +EXPORT_SYMBOL vmlinux 0x1810f69e input_register_handle +EXPORT_SYMBOL vmlinux 0x181c8b8a netif_rx_ni +EXPORT_SYMBOL vmlinux 0x181e859a bio_endio +EXPORT_SYMBOL vmlinux 0x182140ac pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0x183fa88b mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0x184b82fb mmc_vddrange_to_ocrmask +EXPORT_SYMBOL vmlinux 0x184e6c85 radix_tree_gang_lookup_slot +EXPORT_SYMBOL vmlinux 0x188a3dfb timespec_trunc +EXPORT_SYMBOL vmlinux 0x189868d7 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x18b72573 register_kmmio_probe +EXPORT_SYMBOL vmlinux 0x18bc981b dump_trace +EXPORT_SYMBOL vmlinux 0x18e98ba8 pci_set_mwi +EXPORT_SYMBOL vmlinux 0x18f8fdd3 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x190539e7 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x192719b2 zero_fill_bio +EXPORT_SYMBOL vmlinux 0x19444627 memcpy_fromiovecend +EXPORT_SYMBOL vmlinux 0x195b4d2d bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0x19651b91 __mem_cgroup_count_vm_event +EXPORT_SYMBOL vmlinux 0x199b1070 n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19a81ed7 generic_setlease +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19d1b5fb inet6_protos +EXPORT_SYMBOL vmlinux 0x19d6bc23 sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x19f15981 agp_generic_insert_memory +EXPORT_SYMBOL vmlinux 0x1a079ea7 pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x1a10c898 ipmi_set_maintenance_mode +EXPORT_SYMBOL vmlinux 0x1a1459a4 nf_register_sockopt +EXPORT_SYMBOL vmlinux 0x1a240b39 bio_phys_segments +EXPORT_SYMBOL vmlinux 0x1a302662 xfrm4_prepare_output +EXPORT_SYMBOL vmlinux 0x1a4030fb mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0x1a45cb6c acpi_disabled +EXPORT_SYMBOL vmlinux 0x1a4c928d dentry_unhash +EXPORT_SYMBOL vmlinux 0x1a63af34 vga_switcheroo_process_delayed_switch +EXPORT_SYMBOL vmlinux 0x1a6a71fd dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x1a7446e6 __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0x1a747870 bio_uncopy_user +EXPORT_SYMBOL vmlinux 0x1a9f644a twl6040_set_pll +EXPORT_SYMBOL vmlinux 0x1aa6abe0 security_path_rename +EXPORT_SYMBOL vmlinux 0x1ab9b5c7 key_invalidate +EXPORT_SYMBOL vmlinux 0x1aba5db8 ipmi_unregister_smi +EXPORT_SYMBOL vmlinux 0x1ac5d3cb strcspn +EXPORT_SYMBOL vmlinux 0x1aca549d pci_add_new_bus +EXPORT_SYMBOL vmlinux 0x1ace138d bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0x1ae14ef5 _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x1aeb0c4c read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x1aec8a68 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b03222f _dev_info +EXPORT_SYMBOL vmlinux 0x1b12d256 iterate_mounts +EXPORT_SYMBOL vmlinux 0x1b16e96d jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x1b1e1088 sg_nents +EXPORT_SYMBOL vmlinux 0x1b353088 clk_register_clkdevs +EXPORT_SYMBOL vmlinux 0x1b4bb3e2 __cleancache_put_page +EXPORT_SYMBOL vmlinux 0x1b53dcb3 writeback_in_progress +EXPORT_SYMBOL vmlinux 0x1b570d23 acpi_warning +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b7178b2 genphy_resume +EXPORT_SYMBOL vmlinux 0x1b78958d mmc_gpio_request_ro +EXPORT_SYMBOL vmlinux 0x1b81acaa tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x1b82fefa md_unplug +EXPORT_SYMBOL vmlinux 0x1b849d6c security_path_mkdir +EXPORT_SYMBOL vmlinux 0x1b8b95ad i8042_unlock_chip +EXPORT_SYMBOL vmlinux 0x1b9596f4 swiotlb_dma_mapping_error +EXPORT_SYMBOL vmlinux 0x1b9e0ff1 scsilun_to_int +EXPORT_SYMBOL vmlinux 0x1bdc26cf sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x1bf93948 ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x1c23e7da fb_set_var +EXPORT_SYMBOL vmlinux 0x1c2f6730 tty_mutex +EXPORT_SYMBOL vmlinux 0x1c41f0dc scsi_get_command +EXPORT_SYMBOL vmlinux 0x1c57c7c9 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x1c624e0f devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0x1c632273 jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x1c8a04b0 acpi_reset +EXPORT_SYMBOL vmlinux 0x1ca2185f poll_initwait +EXPORT_SYMBOL vmlinux 0x1cc01dc8 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x1cd30a84 loop_register_transfer +EXPORT_SYMBOL vmlinux 0x1cd65410 sock_release +EXPORT_SYMBOL vmlinux 0x1ce720e0 wait_on_page_bit +EXPORT_SYMBOL vmlinux 0x1cebf850 scsi_block_requests +EXPORT_SYMBOL vmlinux 0x1d2501ea blkdev_fsync +EXPORT_SYMBOL vmlinux 0x1d49f842 skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0x1d8f8007 scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0x1db7706b __copy_user_nocache +EXPORT_SYMBOL vmlinux 0x1dc36131 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1de74f72 acpi_execute_simple_method +EXPORT_SYMBOL vmlinux 0x1df7dc69 scsi_remove_host +EXPORT_SYMBOL vmlinux 0x1e01a880 __skb_gso_segment +EXPORT_SYMBOL vmlinux 0x1e047854 warn_slowpath_fmt +EXPORT_SYMBOL vmlinux 0x1e0c2be4 ioremap_wc +EXPORT_SYMBOL vmlinux 0x1e0d944b kernel_write +EXPORT_SYMBOL vmlinux 0x1e1e3740 inode_claim_rsv_space +EXPORT_SYMBOL vmlinux 0x1e22f69d dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x1e26be3b get_anon_bdev +EXPORT_SYMBOL vmlinux 0x1e69074a d_instantiate +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e6fbb2d dmam_alloc_coherent +EXPORT_SYMBOL vmlinux 0x1e8f7e70 agp_unbind_memory +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ec3bed9 hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0x1ec4eb34 flex_array_prealloc +EXPORT_SYMBOL vmlinux 0x1ed7720b inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0x1ee8870f get_gendisk +EXPORT_SYMBOL vmlinux 0x1f2d22ec tty_do_resize +EXPORT_SYMBOL vmlinux 0x1f41315a vm_insert_page +EXPORT_SYMBOL vmlinux 0x1f68975f ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0x1f6ce67a sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x1f73c215 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0x1f89d65e setattr_copy +EXPORT_SYMBOL vmlinux 0x1fb0d748 i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fdf9d52 xfrm_lookup +EXPORT_SYMBOL vmlinux 0x1fe1f38f simple_transaction_set +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1fe9f800 unregister_cpu_notifier +EXPORT_SYMBOL vmlinux 0x1fedf0f4 __request_region +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x2005e68a acpi_remove_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x20092385 acpi_enter_sleep_state_s4bios +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x200e392d vfs_getattr +EXPORT_SYMBOL vmlinux 0x200e7c6e ip_ct_attach +EXPORT_SYMBOL vmlinux 0x2021c348 kobject_add +EXPORT_SYMBOL vmlinux 0x2026f5ee netif_carrier_on +EXPORT_SYMBOL vmlinux 0x203aaf39 fb_set_suspend +EXPORT_SYMBOL vmlinux 0x20411ddd pm860x_page_reg_read +EXPORT_SYMBOL vmlinux 0x2044aea7 amd_iommu_pc_get_max_banks +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x208739f6 acpi_load_table +EXPORT_SYMBOL vmlinux 0x208a1ae4 xfrm_prepare_input +EXPORT_SYMBOL vmlinux 0x2092a804 pnp_unregister_card_driver +EXPORT_SYMBOL vmlinux 0x209a7e44 devfreq_add_governor +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20a9788f dma_find_channel +EXPORT_SYMBOL vmlinux 0x20abc15b acpi_processor_register_performance +EXPORT_SYMBOL vmlinux 0x20b0e6f5 agp_generic_mask_memory +EXPORT_SYMBOL vmlinux 0x20b2bb2d param_array_ops +EXPORT_SYMBOL vmlinux 0x20b7f580 inet6_add_protocol +EXPORT_SYMBOL vmlinux 0x20c55ae0 sscanf +EXPORT_SYMBOL vmlinux 0x20eadeb6 ip_compute_csum +EXPORT_SYMBOL vmlinux 0x2110e157 block_write_end +EXPORT_SYMBOL vmlinux 0x21237d1d rtnl_notify +EXPORT_SYMBOL vmlinux 0x212f081f noop_llseek +EXPORT_SYMBOL vmlinux 0x215ebd78 bitrev16 +EXPORT_SYMBOL vmlinux 0x217dda13 flex_array_get +EXPORT_SYMBOL vmlinux 0x217eb826 agp_bridge +EXPORT_SYMBOL vmlinux 0x219e5dd2 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0x21d5d5ea pci_set_dma_max_seg_size +EXPORT_SYMBOL vmlinux 0x21e0ea22 acpi_get_id +EXPORT_SYMBOL vmlinux 0x21e4633d uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x220841f6 blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x22338e07 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0x223bda42 truncate_setsize +EXPORT_SYMBOL vmlinux 0x2246f9c1 agp_create_memory +EXPORT_SYMBOL vmlinux 0x2254eaf0 sock_no_connect +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x22a38886 tty_port_put +EXPORT_SYMBOL vmlinux 0x22b133a4 send_sig +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22ccf123 mdio_bus_type +EXPORT_SYMBOL vmlinux 0x22e72571 generic_file_aio_read +EXPORT_SYMBOL vmlinux 0x22f1c23d ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x22fb08a1 bio_add_page +EXPORT_SYMBOL vmlinux 0x22fd9ad0 sleep_on_timeout +EXPORT_SYMBOL vmlinux 0x231907ed pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0x231d4001 fb_edid_add_monspecs +EXPORT_SYMBOL vmlinux 0x231eb10e bdi_register +EXPORT_SYMBOL vmlinux 0x23216dd6 pci_disable_obff +EXPORT_SYMBOL vmlinux 0x23324c80 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x23344f7e scsi_is_target_device +EXPORT_SYMBOL vmlinux 0x233d4a1a pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0x23532c4d ftrace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x23561b30 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0x2373f401 cancel_dirty_page +EXPORT_SYMBOL vmlinux 0x2386f2d2 blk_requeue_request +EXPORT_SYMBOL vmlinux 0x23a382b2 blk_queue_init_tags +EXPORT_SYMBOL vmlinux 0x23a574fd security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c8f257 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x23c9891c kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x23d68969 mark_page_accessed +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x2411b1cf pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x24137ebd skb_free_datagram +EXPORT_SYMBOL vmlinux 0x2416810d mmc_gpio_free_ro +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x242d3e71 save_mount_options +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x24598c4e misc_deregister +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x2472e513 clocksource_unregister +EXPORT_SYMBOL vmlinux 0x2482e688 vsprintf +EXPORT_SYMBOL vmlinux 0x2484adc3 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0x24851c35 generic_file_buffered_write +EXPORT_SYMBOL vmlinux 0x248c273b ida_remove +EXPORT_SYMBOL vmlinux 0x248d356d abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0x248f9b97 vfs_write +EXPORT_SYMBOL vmlinux 0x24927a0b intel_gmch_probe +EXPORT_SYMBOL vmlinux 0x2496cac1 phy_ethtool_sset +EXPORT_SYMBOL vmlinux 0x24a9dab4 pci_target_state +EXPORT_SYMBOL vmlinux 0x24f64846 blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0x24fdac79 wake_bit_function +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x25447920 inc_nlink +EXPORT_SYMBOL vmlinux 0x256d3e60 acpi_get_hp_hw_control_from_firmware +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x25827fd9 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0x25c677c4 mac_pton +EXPORT_SYMBOL vmlinux 0x25d126d9 __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0x25d4a249 blk_make_request +EXPORT_SYMBOL vmlinux 0x25dff8e5 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0x25f66bd0 tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x263122f8 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0x2631aceb pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x26423521 inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0x2650d835 sysctl_ip_early_demux +EXPORT_SYMBOL vmlinux 0x26544b1d scsi_scan_target +EXPORT_SYMBOL vmlinux 0x2665d53a key_create_or_update +EXPORT_SYMBOL vmlinux 0x26737a4f serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0x2677e770 kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0x267d9dd9 gen10g_suspend +EXPORT_SYMBOL vmlinux 0x2685c3d7 __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x26948d96 copy_user_enhanced_fast_string +EXPORT_SYMBOL vmlinux 0x26c2bb77 phy_drivers_register +EXPORT_SYMBOL vmlinux 0x26c70dd2 uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x26ce4bd7 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0x26e0fc3d amd_iommu_get_v2_domain +EXPORT_SYMBOL vmlinux 0x26e298e0 unregister_memory_notifier +EXPORT_SYMBOL vmlinux 0x26e76fb8 sysctl_udp_wmem_min +EXPORT_SYMBOL vmlinux 0x26f0453a blk_set_default_limits +EXPORT_SYMBOL vmlinux 0x2712f4f5 crc32_le_combine +EXPORT_SYMBOL vmlinux 0x2717b8f7 ___pskb_trim +EXPORT_SYMBOL vmlinux 0x2717feb8 unregister_binfmt +EXPORT_SYMBOL vmlinux 0x271cba95 acpi_bus_private_data_handler +EXPORT_SYMBOL vmlinux 0x272d394e mtrr_del +EXPORT_SYMBOL vmlinux 0x2745090d netdev_update_features +EXPORT_SYMBOL vmlinux 0x274d08dc __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0x275b65c9 xfrm_state_flush +EXPORT_SYMBOL vmlinux 0x2761b692 cpu_sibling_map +EXPORT_SYMBOL vmlinux 0x276c7094 ip6_expire_frag_queue +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x27ae7d0c ec_transaction +EXPORT_SYMBOL vmlinux 0x27b7a733 request_firmware_nowait +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27c33efe csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0x27e1a049 printk +EXPORT_SYMBOL vmlinux 0x27fd9762 dquot_disable +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x28318305 snprintf +EXPORT_SYMBOL vmlinux 0x28347d92 i2c_master_recv +EXPORT_SYMBOL vmlinux 0x2842c70f netpoll_send_skb_on_dev +EXPORT_SYMBOL vmlinux 0x285d6abf napi_get_frags +EXPORT_SYMBOL vmlinux 0x2879f241 phy_start_interrupts +EXPORT_SYMBOL vmlinux 0x2893c01c audit_log_task_info +EXPORT_SYMBOL vmlinux 0x28a2ed02 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x28abfe6e scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x28d165f1 md_finish_reshape +EXPORT_SYMBOL vmlinux 0x28d323fa i2c_del_driver +EXPORT_SYMBOL vmlinux 0x28d3e61e rtnl_unicast +EXPORT_SYMBOL vmlinux 0x28de7e8c spi_dv_device +EXPORT_SYMBOL vmlinux 0x28e8945e sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x28ef02f4 __serio_register_driver +EXPORT_SYMBOL vmlinux 0x29002eaf brioctl_set +EXPORT_SYMBOL vmlinux 0x2916e2ff end_page_writeback +EXPORT_SYMBOL vmlinux 0x29526bdf security_d_instantiate +EXPORT_SYMBOL vmlinux 0x29537c9e alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0x2981641c from_kprojid +EXPORT_SYMBOL vmlinux 0x298a3adc sock_create_lite +EXPORT_SYMBOL vmlinux 0x299596f8 sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0x29ab9bb5 xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x29b95873 mutex_lock_killable +EXPORT_SYMBOL vmlinux 0x29c6165c cdev_add +EXPORT_SYMBOL vmlinux 0x2a05f1be inet_del_offload +EXPORT_SYMBOL vmlinux 0x2a1c61d8 sock_create +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a37d074 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2a42f29e scsi_device_put +EXPORT_SYMBOL vmlinux 0x2a485c92 dev_addr_del +EXPORT_SYMBOL vmlinux 0x2a5f9b87 agp_find_bridge +EXPORT_SYMBOL vmlinux 0x2a6e6109 __init_rwsem +EXPORT_SYMBOL vmlinux 0x2a78e55d inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0x2a79ac13 clkdev_add +EXPORT_SYMBOL vmlinux 0x2a7b9c81 security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0x2a82cc30 generic_make_request +EXPORT_SYMBOL vmlinux 0x2acf0feb vfs_fstat +EXPORT_SYMBOL vmlinux 0x2ad35447 lookup_one_len +EXPORT_SYMBOL vmlinux 0x2ad86c31 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0x2b0ba2b0 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x2b110e8c __break_lease +EXPORT_SYMBOL vmlinux 0x2b2ce78b kstrtos8 +EXPORT_SYMBOL vmlinux 0x2b51837e proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x2b5eb198 jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2ba707a8 sysctl_tcp_low_latency +EXPORT_SYMBOL vmlinux 0x2bb17830 proc_set_size +EXPORT_SYMBOL vmlinux 0x2bb45aa8 generic_pipe_buf_unmap +EXPORT_SYMBOL vmlinux 0x2bb55d6e acpi_remove_notify_handler +EXPORT_SYMBOL vmlinux 0x2bc9ce39 fail_migrate_page +EXPORT_SYMBOL vmlinux 0x2becafe6 key_alloc +EXPORT_SYMBOL vmlinux 0x2bfbcfbb scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0x2bfeb410 acpi_get_handle +EXPORT_SYMBOL vmlinux 0x2c036e6c vfs_link +EXPORT_SYMBOL vmlinux 0x2c183649 would_dump +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c299d23 submit_bh +EXPORT_SYMBOL vmlinux 0x2c900d91 cpufreq_put_global_kobject +EXPORT_SYMBOL vmlinux 0x2ca319a6 wrmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x2cb71033 fsnotify_init_mark +EXPORT_SYMBOL vmlinux 0x2cb9a209 dev_close +EXPORT_SYMBOL vmlinux 0x2cdbdb11 __ip_select_ident +EXPORT_SYMBOL vmlinux 0x2ce5b3aa prepare_creds +EXPORT_SYMBOL vmlinux 0x2cf73cb7 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x2d03c10d posix_acl_create +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d144e21 rdmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x2d144e5f pci_disable_msi +EXPORT_SYMBOL vmlinux 0x2d1f2a2f agp_enable +EXPORT_SYMBOL vmlinux 0x2d21add5 tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d4770e0 sk_stop_timer +EXPORT_SYMBOL vmlinux 0x2d6208d9 __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0x2d6d1f0a vga_switcheroo_client_fb_set +EXPORT_SYMBOL vmlinux 0x2d71ef0f simple_open +EXPORT_SYMBOL vmlinux 0x2d89342a scsi_show_sense_hdr +EXPORT_SYMBOL vmlinux 0x2daaaba9 param_get_byte +EXPORT_SYMBOL vmlinux 0x2db2581e netlink_kernel_release +EXPORT_SYMBOL vmlinux 0x2db737ee pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x2db9295a blk_integrity_is_initialized +EXPORT_SYMBOL vmlinux 0x2dce1136 keyring_search +EXPORT_SYMBOL vmlinux 0x2dcec2d6 create_syslog_header +EXPORT_SYMBOL vmlinux 0x2dd16564 arch_register_cpu +EXPORT_SYMBOL vmlinux 0x2dd66bd8 fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0x2ddacd13 tty_port_hangup +EXPORT_SYMBOL vmlinux 0x2ddfd671 mmc_align_data_size +EXPORT_SYMBOL vmlinux 0x2de03313 generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0x2deda4a1 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x2dedc4c2 acpi_format_exception +EXPORT_SYMBOL vmlinux 0x2def7f76 rtc_cmos_write +EXPORT_SYMBOL vmlinux 0x2e0d2f7f queue_work_on +EXPORT_SYMBOL vmlinux 0x2e13f6a0 devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x2e1c48f4 install_exec_creds +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e2a4be7 tcf_exts_change +EXPORT_SYMBOL vmlinux 0x2e2b40d2 strncat +EXPORT_SYMBOL vmlinux 0x2e2ce9e0 sysctl_tcp_syncookies +EXPORT_SYMBOL vmlinux 0x2e43e3da pci_enable_ltr +EXPORT_SYMBOL vmlinux 0x2e48a584 mmc_gpio_free_cd +EXPORT_SYMBOL vmlinux 0x2e5a704c udp_table +EXPORT_SYMBOL vmlinux 0x2e747585 framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x2e835f7c acpi_notifier_call_chain +EXPORT_SYMBOL vmlinux 0x2e87ec43 generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x2eeceb42 sk_chk_filter +EXPORT_SYMBOL vmlinux 0x2ef63ad6 scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f064b55 allocate_resource +EXPORT_SYMBOL vmlinux 0x2f25718d pneigh_lookup +EXPORT_SYMBOL vmlinux 0x2f384db3 acpi_is_video_device +EXPORT_SYMBOL vmlinux 0x2f76cdba ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0x2f9c2ae8 skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x2fb3750c on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x2fb437ed dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2fec8fc0 dev_addr_add +EXPORT_SYMBOL vmlinux 0x2ff063b5 acpi_get_name +EXPORT_SYMBOL vmlinux 0x300502c6 __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x301939ff tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x301d3061 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0x301f9c83 blk_put_queue +EXPORT_SYMBOL vmlinux 0x30226ddf agp_device_command +EXPORT_SYMBOL vmlinux 0x30230406 blk_queue_start_tag +EXPORT_SYMBOL vmlinux 0x302eef98 ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x303d9d3a seq_bitmap_list +EXPORT_SYMBOL vmlinux 0x303e25d6 dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0x30538e95 generic_write_end +EXPORT_SYMBOL vmlinux 0x305c7063 pci_disable_ido +EXPORT_SYMBOL vmlinux 0x307c2fd0 generic_check_addressable +EXPORT_SYMBOL vmlinux 0x3094a749 i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30b6ab18 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0x30c39a3c nf_log_set +EXPORT_SYMBOL vmlinux 0x30cada8f radix_tree_next_hole +EXPORT_SYMBOL vmlinux 0x30d4988e seq_release_private +EXPORT_SYMBOL vmlinux 0x30e74134 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0x30fa01aa neigh_connected_output +EXPORT_SYMBOL vmlinux 0x30fb6d30 d_rehash +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x313c1cfd proc_symlink +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x3147857d default_red +EXPORT_SYMBOL vmlinux 0x315c65fd zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x316d736f kfree_skb_partial +EXPORT_SYMBOL vmlinux 0x316fe32a load_nls +EXPORT_SYMBOL vmlinux 0x318cadb1 reciprocal_value +EXPORT_SYMBOL vmlinux 0x319e0726 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x31a8e09a __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0x31ae5d05 vm_insert_pfn +EXPORT_SYMBOL vmlinux 0x31ae875e netdev_state_change +EXPORT_SYMBOL vmlinux 0x31b31f5c csum_partial_copy_nocheck +EXPORT_SYMBOL vmlinux 0x31e76b57 recalibrate_cpu_khz +EXPORT_SYMBOL vmlinux 0x3202435a wrmsr_safe_regs +EXPORT_SYMBOL vmlinux 0x321b3b0a kmalloc_dma_caches +EXPORT_SYMBOL vmlinux 0x321d84e0 inode_change_ok +EXPORT_SYMBOL vmlinux 0x32231426 tty_schedule_flip +EXPORT_SYMBOL vmlinux 0x322f48d4 abx500_dump_all_banks +EXPORT_SYMBOL vmlinux 0x32443553 jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0x3246c844 pci_remove_bus +EXPORT_SYMBOL vmlinux 0x325c6ae1 serio_unregister_port +EXPORT_SYMBOL vmlinux 0x32618ce2 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0x326425ca pci_unmap_biosrom +EXPORT_SYMBOL vmlinux 0x3264f2dc elv_rb_find +EXPORT_SYMBOL vmlinux 0x32696eaf serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x3278e039 phy_find_first +EXPORT_SYMBOL vmlinux 0x32a98ec8 inet_getname +EXPORT_SYMBOL vmlinux 0x32c8567c ppp_register_channel +EXPORT_SYMBOL vmlinux 0x32c90041 udp_seq_open +EXPORT_SYMBOL vmlinux 0x32d31757 ip6_xmit +EXPORT_SYMBOL vmlinux 0x32debb16 cpumask_next_and +EXPORT_SYMBOL vmlinux 0x32eb9234 skb_orphan_partial +EXPORT_SYMBOL vmlinux 0x32eeaded _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0x33146bd6 __frontswap_load +EXPORT_SYMBOL vmlinux 0x331810b8 jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x332b24f7 nf_getsockopt +EXPORT_SYMBOL vmlinux 0x333cb37c __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0x33426c98 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0x3359e77c tcf_generic_walker +EXPORT_SYMBOL vmlinux 0x33966ed3 ipmi_smi_add_proc_entry +EXPORT_SYMBOL vmlinux 0x33ab0b04 scsi_dma_map +EXPORT_SYMBOL vmlinux 0x33b84f74 copy_page +EXPORT_SYMBOL vmlinux 0x33ba5cd4 param_ops_bool +EXPORT_SYMBOL vmlinux 0x33c7435c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x33cccf8c sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x33cea4d2 mmc_hw_reset_check +EXPORT_SYMBOL vmlinux 0x33d6fc93 handle_edge_irq +EXPORT_SYMBOL vmlinux 0x33e40c87 blk_mq_insert_request +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x33fcf44a __kfifo_out_r +EXPORT_SYMBOL vmlinux 0x34037b1e compat_nf_setsockopt +EXPORT_SYMBOL vmlinux 0x3405c4dc icmp_send +EXPORT_SYMBOL vmlinux 0x340972a4 sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0x3416f8dd blk_queue_find_tag +EXPORT_SYMBOL vmlinux 0x34184afe current_kernel_time +EXPORT_SYMBOL vmlinux 0x3418a6ab force_sig +EXPORT_SYMBOL vmlinux 0x341cbed2 cpu_present_mask +EXPORT_SYMBOL vmlinux 0x34339df7 load_nls_default +EXPORT_SYMBOL vmlinux 0x343ad8c4 pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0x344e9af4 __idr_get_new_above +EXPORT_SYMBOL vmlinux 0x347013de nla_validate +EXPORT_SYMBOL vmlinux 0x347eb9bd param_set_bool +EXPORT_SYMBOL vmlinux 0x348865dd netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0x348a2892 i2c_get_adapter +EXPORT_SYMBOL vmlinux 0x348c585a i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34aec41a tty_register_ldisc +EXPORT_SYMBOL vmlinux 0x34bf54e9 i8042_install_filter +EXPORT_SYMBOL vmlinux 0x34e1db21 pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0x34e21dc0 register_sysctl +EXPORT_SYMBOL vmlinux 0x34f22f94 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34f4089a inet_shutdown +EXPORT_SYMBOL vmlinux 0x34fdffc8 simple_lookup +EXPORT_SYMBOL vmlinux 0x3508e234 sk_dst_check +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x3520ff93 tcp_hashinfo +EXPORT_SYMBOL vmlinux 0x35225ea3 down_write_trylock +EXPORT_SYMBOL vmlinux 0x3539f11b match_strlcpy +EXPORT_SYMBOL vmlinux 0x353e21e3 acpi_bios_warning +EXPORT_SYMBOL vmlinux 0x354d9e99 sk_release_kernel +EXPORT_SYMBOL vmlinux 0x3560eaf6 bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x356ee9f9 dm_register_target +EXPORT_SYMBOL vmlinux 0x35738b7c gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0x357b6a17 thaw_super +EXPORT_SYMBOL vmlinux 0x357fe7af generic_listxattr +EXPORT_SYMBOL vmlinux 0x358f1fc3 jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0x359a35d4 dcache_dir_open +EXPORT_SYMBOL vmlinux 0x35a5778a security_path_unlink +EXPORT_SYMBOL vmlinux 0x35b70658 qdisc_list_del +EXPORT_SYMBOL vmlinux 0x35c506fa acpi_pm_device_sleep_state +EXPORT_SYMBOL vmlinux 0x35defc50 iov_iter_advance +EXPORT_SYMBOL vmlinux 0x35ec3d54 d_splice_alias +EXPORT_SYMBOL vmlinux 0x35f14142 blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0x35f23782 thaw_bdev +EXPORT_SYMBOL vmlinux 0x360b1afe probe_irq_mask +EXPORT_SYMBOL vmlinux 0x360b8d16 x86_cpu_to_apicid +EXPORT_SYMBOL vmlinux 0x3612b07c register_nls +EXPORT_SYMBOL vmlinux 0x361bec75 tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0x361cf348 dma_supported +EXPORT_SYMBOL vmlinux 0x36606575 pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0x366be0e8 qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0x3686ea09 spi_print_msg +EXPORT_SYMBOL vmlinux 0x368eb4a6 kmem_cache_free +EXPORT_SYMBOL vmlinux 0x369d6041 input_release_device +EXPORT_SYMBOL vmlinux 0x369e1115 kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0x36a1071f generic_file_llseek +EXPORT_SYMBOL vmlinux 0x36a3b8eb __sk_dst_check +EXPORT_SYMBOL vmlinux 0x36bd681b groups_alloc +EXPORT_SYMBOL vmlinux 0x36ca6a49 block_read_full_page +EXPORT_SYMBOL vmlinux 0x36d0a957 sock_update_memcg +EXPORT_SYMBOL vmlinux 0x36e360e3 __hw_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x36e43fb6 inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0x3701a196 csum_partial_copy_to_user +EXPORT_SYMBOL vmlinux 0x3704a4ea gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x370ab497 i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0x37235bd6 dev_set_group +EXPORT_SYMBOL vmlinux 0x372c56b8 mmc_cache_ctrl +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x3753c1e1 jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0x37564960 pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0x376027df i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0x3799a060 vc_resize +EXPORT_SYMBOL vmlinux 0x37a37cbb tty_lock_pair +EXPORT_SYMBOL vmlinux 0x37bd69d0 lro_flush_pkt +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37c8339e netif_napi_add +EXPORT_SYMBOL vmlinux 0x37db8f19 dmi_get_date +EXPORT_SYMBOL vmlinux 0x37e3ae2c udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0x37f226b3 mmc_register_driver +EXPORT_SYMBOL vmlinux 0x38099e13 wrmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x381a0d54 fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x3820cdf6 pid_task +EXPORT_SYMBOL vmlinux 0x38238ed6 page_follow_link_light +EXPORT_SYMBOL vmlinux 0x386ce93f xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388f9128 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x389b60b4 clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0x389bfe0d rtc_lock +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38d27d68 release_firmware +EXPORT_SYMBOL vmlinux 0x38f33bed dump_fpu +EXPORT_SYMBOL vmlinux 0x3920d96e skb_push +EXPORT_SYMBOL vmlinux 0x3928efe9 __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x3955fcf6 __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x399ad043 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0x39a055f3 acpi_remove_gpe_handler +EXPORT_SYMBOL vmlinux 0x39bb372f dq_data_lock +EXPORT_SYMBOL vmlinux 0x39cc4a78 i8042_check_port_owner +EXPORT_SYMBOL vmlinux 0x39dba9e4 unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0x3a068be8 pci_get_slot +EXPORT_SYMBOL vmlinux 0x3a08475f platform_thermal_notify +EXPORT_SYMBOL vmlinux 0x3a0dbb94 pnp_is_active +EXPORT_SYMBOL vmlinux 0x3a165bcf sock_rfree +EXPORT_SYMBOL vmlinux 0x3a20ff73 __crc32c_le +EXPORT_SYMBOL vmlinux 0x3a2fbe83 proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0x3a32839e intel_gtt_chipset_flush +EXPORT_SYMBOL vmlinux 0x3a40e110 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0x3a60178a mount_pseudo +EXPORT_SYMBOL vmlinux 0x3a793f05 __scm_send +EXPORT_SYMBOL vmlinux 0x3a86f18f pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0x3a95196a alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x3a9b6fb9 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x3ac6d6dd tcp_shutdown +EXPORT_SYMBOL vmlinux 0x3b07bb04 sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0x3b15dad3 nla_reserve +EXPORT_SYMBOL vmlinux 0x3b17c636 mdiobus_read +EXPORT_SYMBOL vmlinux 0x3b1b3544 md_flush_request +EXPORT_SYMBOL vmlinux 0x3b3057a3 bio_put +EXPORT_SYMBOL vmlinux 0x3b4ceb4a up_write +EXPORT_SYMBOL vmlinux 0x3b6e96a4 devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x3b7f096e arp_send +EXPORT_SYMBOL vmlinux 0x3bb129dc alloc_disk +EXPORT_SYMBOL vmlinux 0x3bcfd070 blk_mq_alloc_single_hw_queue +EXPORT_SYMBOL vmlinux 0x3bd1b1f6 msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x3bdb0ac2 netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0x3bdb9ff8 mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0x3be39229 netlink_unicast +EXPORT_SYMBOL vmlinux 0x3be47bd2 write_inode_now +EXPORT_SYMBOL vmlinux 0x3beb690b lg_local_unlock +EXPORT_SYMBOL vmlinux 0x3bef03b9 flow_cache_lookup +EXPORT_SYMBOL vmlinux 0x3c26349b skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x3c3b432b tcf_em_register +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c857e1a pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0x3c8b89f0 fb_show_logo +EXPORT_SYMBOL vmlinux 0x3c9b39c1 blk_delay_queue +EXPORT_SYMBOL vmlinux 0x3c9d1211 string_get_size +EXPORT_SYMBOL vmlinux 0x3cb4c8df elv_rb_add +EXPORT_SYMBOL vmlinux 0x3cbce3c1 input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0x3cd01058 mapping_tagged +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3d03a72a kthread_stop +EXPORT_SYMBOL vmlinux 0x3d04bdc3 kset_unregister +EXPORT_SYMBOL vmlinux 0x3d0ec622 release_pages +EXPORT_SYMBOL vmlinux 0x3d1a53c8 led_blink_set +EXPORT_SYMBOL vmlinux 0x3d51e730 request_firmware +EXPORT_SYMBOL vmlinux 0x3d547d56 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0x3d5844b3 strnicmp +EXPORT_SYMBOL vmlinux 0x3d6b017d pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x3d7c1ed7 msrs_alloc +EXPORT_SYMBOL vmlinux 0x3d81f1da tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0x3d8461ee neigh_app_ns +EXPORT_SYMBOL vmlinux 0x3d9ee9f0 clear_page +EXPORT_SYMBOL vmlinux 0x3da171f9 pci_mem_start +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dcd6278 jbd2_journal_file_inode +EXPORT_SYMBOL vmlinux 0x3dee5354 __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x3df0311e sg_miter_stop +EXPORT_SYMBOL vmlinux 0x3df0335e __serio_register_port +EXPORT_SYMBOL vmlinux 0x3df82b01 dmam_alloc_noncoherent +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e11d5f3 request_key_async +EXPORT_SYMBOL vmlinux 0x3e13242e dev_addr_init +EXPORT_SYMBOL vmlinux 0x3e1605ef invalidate_bdev +EXPORT_SYMBOL vmlinux 0x3e19a287 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x3e1a30d8 abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0x3e2ae3a8 acpi_release_global_lock +EXPORT_SYMBOL vmlinux 0x3e443170 register_cdrom +EXPORT_SYMBOL vmlinux 0x3e4f04e3 sb_set_blocksize +EXPORT_SYMBOL vmlinux 0x3e641e01 fsnotify_get_group +EXPORT_SYMBOL vmlinux 0x3e71f228 mdiobus_scan +EXPORT_SYMBOL vmlinux 0x3e79c758 sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x3e882943 pcibios_align_resource +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3ea0773c ida_get_new_above +EXPORT_SYMBOL vmlinux 0x3ebc85ab inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0x3ebd3084 vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0x3ec9811e udp_proc_register +EXPORT_SYMBOL vmlinux 0x3ed63055 zlib_inflateReset +EXPORT_SYMBOL vmlinux 0x3f025dc0 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0x3f0546a8 ioread32_rep +EXPORT_SYMBOL vmlinux 0x3f30d6e1 security_path_chown +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f51db8b __splice_from_pipe +EXPORT_SYMBOL vmlinux 0x3f5948df dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0x3f616259 iget5_locked +EXPORT_SYMBOL vmlinux 0x3f71faa1 mempool_create +EXPORT_SYMBOL vmlinux 0x3fa943ec lock_sock_nested +EXPORT_SYMBOL vmlinux 0x3fa99ffb udp6_csum_init +EXPORT_SYMBOL vmlinux 0x3fe2ccbe memweight +EXPORT_SYMBOL vmlinux 0x3fec048f sg_next +EXPORT_SYMBOL vmlinux 0x3ff62317 local_bh_disable +EXPORT_SYMBOL vmlinux 0x3ffb998e tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0x40256835 complete_all +EXPORT_SYMBOL vmlinux 0x4028811c kernel_read +EXPORT_SYMBOL vmlinux 0x402b8281 __request_module +EXPORT_SYMBOL vmlinux 0x40310528 inet_confirm_addr +EXPORT_SYMBOL vmlinux 0x403964d5 irq_set_chip +EXPORT_SYMBOL vmlinux 0x403e8ae6 scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x4041ee4f jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0x405af52d tcf_hash_release +EXPORT_SYMBOL vmlinux 0x405c1144 get_seconds +EXPORT_SYMBOL vmlinux 0x40665b55 dma_ops +EXPORT_SYMBOL vmlinux 0x406722f6 seq_open_private +EXPORT_SYMBOL vmlinux 0x406cbe42 __ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x4097fa45 acpi_read_bit_register +EXPORT_SYMBOL vmlinux 0x409873e3 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x40a27c37 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40ac5a9d kernel_accept +EXPORT_SYMBOL vmlinux 0x40acabf9 deactivate_super +EXPORT_SYMBOL vmlinux 0x40c01859 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0x40c43571 make_kuid +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40c89d46 acpi_get_table_by_index +EXPORT_SYMBOL vmlinux 0x40ccb0cf scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40de8f7e wireless_spy_update +EXPORT_SYMBOL vmlinux 0x40f2b10c ipmi_alloc_smi_msg +EXPORT_SYMBOL vmlinux 0x40f8f53f dev_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x4110d107 drop_nlink +EXPORT_SYMBOL vmlinux 0x41331f27 lock_may_write +EXPORT_SYMBOL vmlinux 0x413c3629 key_reject_and_link +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x415435ce get_disk +EXPORT_SYMBOL vmlinux 0x415a6c01 find_get_pages_contig +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x418aae1e __kfree_skb +EXPORT_SYMBOL vmlinux 0x41af1d7f pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0x41b06f8d inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x41bec776 netdev_notice +EXPORT_SYMBOL vmlinux 0x41e958e5 mpage_readpage +EXPORT_SYMBOL vmlinux 0x420d37ff dqput +EXPORT_SYMBOL vmlinux 0x4211c3c1 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x42161df7 phy_driver_register +EXPORT_SYMBOL vmlinux 0x4224978c inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0x42350e8d ucs2_strlen +EXPORT_SYMBOL vmlinux 0x423b776a ipmi_create_user +EXPORT_SYMBOL vmlinux 0x4250e0e2 kernel_getpeername +EXPORT_SYMBOL vmlinux 0x42595e58 vgacon_text_force +EXPORT_SYMBOL vmlinux 0x4277a1da skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x4284a5d0 scsi_register_driver +EXPORT_SYMBOL vmlinux 0x42977ad4 __hw_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x42a1b208 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x42a2bb17 skb_copy_and_csum_datagram_iovec +EXPORT_SYMBOL vmlinux 0x42c5109e block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x42c8de35 ioremap_nocache +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x43261dca _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0x432f256f __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0x432fc1c0 inode_init_always +EXPORT_SYMBOL vmlinux 0x433bcb32 clk_get +EXPORT_SYMBOL vmlinux 0x4345acb5 generic_permission +EXPORT_SYMBOL vmlinux 0x4348b41f __inet_stream_connect +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x436c2179 iowrite32 +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x439944a0 input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x43ad2ee4 __get_page_tail +EXPORT_SYMBOL vmlinux 0x43cc06d4 inet_csk_accept +EXPORT_SYMBOL vmlinux 0x43f23311 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x43f6329c devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x4411c503 prandom_seed +EXPORT_SYMBOL vmlinux 0x442d0b04 dev_err +EXPORT_SYMBOL vmlinux 0x44317019 scsi_calculate_bounce_limit +EXPORT_SYMBOL vmlinux 0x444667f8 __find_get_block +EXPORT_SYMBOL vmlinux 0x4455d075 bio_advance +EXPORT_SYMBOL vmlinux 0x4476e9e2 panic_notifier_list +EXPORT_SYMBOL vmlinux 0x448eac3e kmemdup +EXPORT_SYMBOL vmlinux 0x449ad0a7 memcmp +EXPORT_SYMBOL vmlinux 0x449f0770 xfrm_init_state +EXPORT_SYMBOL vmlinux 0x44a81d5f acpi_evaluate_object +EXPORT_SYMBOL vmlinux 0x44a93c29 do_truncate +EXPORT_SYMBOL vmlinux 0x44aaf30f tsc_khz +EXPORT_SYMBOL vmlinux 0x44bcd50b vga_switcheroo_init_domain_pm_optimus_hdmi_audio +EXPORT_SYMBOL vmlinux 0x44be6e9e dump_skip +EXPORT_SYMBOL vmlinux 0x44c4f593 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0x44c95f26 devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x44e6ecc8 ida_simple_get +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x45044497 percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0x45081703 ec_get_handle +EXPORT_SYMBOL vmlinux 0x450b1ee8 clear_inode +EXPORT_SYMBOL vmlinux 0x45157c43 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0x4516298d md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x451af7b1 pm860x_set_bits +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x454c3d4c tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x455d630a gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x45627181 generic_ro_fops +EXPORT_SYMBOL vmlinux 0x456d1d06 mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x458111a2 pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0x458faf24 vga_switcheroo_register_handler +EXPORT_SYMBOL vmlinux 0x4597254e netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0x459d7d11 skb_copy_bits +EXPORT_SYMBOL vmlinux 0x45a6be13 cpufreq_sysfs_remove_file +EXPORT_SYMBOL vmlinux 0x45a765cf pci_add_resource +EXPORT_SYMBOL vmlinux 0x45b80340 nf_hook_slow +EXPORT_SYMBOL vmlinux 0x45ba5804 unregister_shrinker +EXPORT_SYMBOL vmlinux 0x45bd960a neigh_for_each +EXPORT_SYMBOL vmlinux 0x45c92723 idr_destroy +EXPORT_SYMBOL vmlinux 0x45f04dc3 vfs_statfs +EXPORT_SYMBOL vmlinux 0x4609d814 twl6040_power +EXPORT_SYMBOL vmlinux 0x461a046c cfb_fillrect +EXPORT_SYMBOL vmlinux 0x461ac773 kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x4629334c __preempt_count +EXPORT_SYMBOL vmlinux 0x463ebf1b dev_set_mac_address +EXPORT_SYMBOL vmlinux 0x4650d402 pci_find_capability +EXPORT_SYMBOL vmlinux 0x465cab34 secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0x46608fa0 getnstimeofday +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x467b918f __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0x468efe80 lro_flush_all +EXPORT_SYMBOL vmlinux 0x46a362e3 pnp_start_dev +EXPORT_SYMBOL vmlinux 0x46ac1a21 find_vma +EXPORT_SYMBOL vmlinux 0x46c47fb6 __node_distance +EXPORT_SYMBOL vmlinux 0x46feb099 dm_read_arg +EXPORT_SYMBOL vmlinux 0x47063e8c netpoll_send_udp +EXPORT_SYMBOL vmlinux 0x471072cf uart_add_one_port +EXPORT_SYMBOL vmlinux 0x4713b4ee dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x471fd310 __quota_error +EXPORT_SYMBOL vmlinux 0x47416e14 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x47599cf6 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0x475f010b acpi_purge_cached_objects +EXPORT_SYMBOL vmlinux 0x4765c2a3 skb_copy_datagram_const_iovec +EXPORT_SYMBOL vmlinux 0x4773806c search_binary_handler +EXPORT_SYMBOL vmlinux 0x477e6dcb amd_iommu_pc_get_set_reg_val +EXPORT_SYMBOL vmlinux 0x478d10b2 ht_destroy_irq +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x47978dfd find_or_create_page +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x479e9918 phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0x47b3f862 radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x47b6a10f ftrace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0x47bcf84c param_set_ulong +EXPORT_SYMBOL vmlinux 0x47c8baf4 param_ops_uint +EXPORT_SYMBOL vmlinux 0x47d6769a in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x47da3a13 swiotlb_sync_single_for_device +EXPORT_SYMBOL vmlinux 0x47ea5f4f bio_clone_bioset +EXPORT_SYMBOL vmlinux 0x47eba9a5 pci_release_regions +EXPORT_SYMBOL vmlinux 0x48034724 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x4808aa85 set_pages_uc +EXPORT_SYMBOL vmlinux 0x481502e0 ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0x48193639 acpi_lid_open +EXPORT_SYMBOL vmlinux 0x481cb9ab acpi_enter_sleep_state_prep +EXPORT_SYMBOL vmlinux 0x482a2a49 param_set_charp +EXPORT_SYMBOL vmlinux 0x482a9c67 find_lock_page +EXPORT_SYMBOL vmlinux 0x4841bdee strnchr +EXPORT_SYMBOL vmlinux 0x484292f4 do_splice_direct +EXPORT_SYMBOL vmlinux 0x4851d48b flush_old_exec +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x485abdc0 __block_write_begin +EXPORT_SYMBOL vmlinux 0x4868ea0b elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x48a2eb3a input_open_device +EXPORT_SYMBOL vmlinux 0x48acb7c7 phy_print_status +EXPORT_SYMBOL vmlinux 0x48ceed87 free_task +EXPORT_SYMBOL vmlinux 0x48d50e79 amd_iommu_register_ppr_notifier +EXPORT_SYMBOL vmlinux 0x48f18e18 simple_release_fs +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x492536ab phy_init_eee +EXPORT_SYMBOL vmlinux 0x4944a960 tcp_read_sock +EXPORT_SYMBOL vmlinux 0x494e3393 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x495c96f8 posix_acl_init +EXPORT_SYMBOL vmlinux 0x49603fb8 security_sb_copy_data +EXPORT_SYMBOL vmlinux 0x49682fe9 scsi_execute_req_flags +EXPORT_SYMBOL vmlinux 0x49790082 cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0x49b07aec tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x49b163b8 acpi_bus_scan +EXPORT_SYMBOL vmlinux 0x49d3b6cc zerocopy_sg_from_iovec +EXPORT_SYMBOL vmlinux 0x49df7f72 x86_hyper_xen_hvm +EXPORT_SYMBOL vmlinux 0x49f3314f dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x4a03e7bb textsearch_unregister +EXPORT_SYMBOL vmlinux 0x4a358252 __bitmap_subset +EXPORT_SYMBOL vmlinux 0x4a49750b elv_dispatch_sort +EXPORT_SYMBOL vmlinux 0x4a7ce016 __neigh_event_send +EXPORT_SYMBOL vmlinux 0x4a804b2a kern_path_mountpoint +EXPORT_SYMBOL vmlinux 0x4a9dc88d sk_run_filter +EXPORT_SYMBOL vmlinux 0x4aad52d7 mempool_free +EXPORT_SYMBOL vmlinux 0x4acd93d3 release_resource +EXPORT_SYMBOL vmlinux 0x4ae60948 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0x4afe9a77 scsi_partsize +EXPORT_SYMBOL vmlinux 0x4b06d2e7 complete +EXPORT_SYMBOL vmlinux 0x4b085dbf agp3_generic_configure +EXPORT_SYMBOL vmlinux 0x4b1cfe61 serio_rescan +EXPORT_SYMBOL vmlinux 0x4b5a116e tty_pair_get_tty +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b62e225 abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0x4b7efe29 igrab +EXPORT_SYMBOL vmlinux 0x4b9f8af4 compat_ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x4bb6a82c led_blink_set_oneshot +EXPORT_SYMBOL vmlinux 0x4bc30917 submit_bio +EXPORT_SYMBOL vmlinux 0x4bc961af dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x4c1182cb bitmap_scnprintf +EXPORT_SYMBOL vmlinux 0x4c2079f3 pcie_set_readrq +EXPORT_SYMBOL vmlinux 0x4c247abc i2c_use_client +EXPORT_SYMBOL vmlinux 0x4c27cdb7 tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0x4c2b6ee3 clk_add_alias +EXPORT_SYMBOL vmlinux 0x4c3a4dfa acpi_bus_get_device +EXPORT_SYMBOL vmlinux 0x4c4fef19 kernel_stack +EXPORT_SYMBOL vmlinux 0x4c7cec30 mpage_readpages +EXPORT_SYMBOL vmlinux 0x4c971bec ipmi_smi_msg_received +EXPORT_SYMBOL vmlinux 0x4c9d28b0 phys_base +EXPORT_SYMBOL vmlinux 0x4ca81008 generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0x4ca93fc0 unregister_exec_domain +EXPORT_SYMBOL vmlinux 0x4ca9669f scnprintf +EXPORT_SYMBOL vmlinux 0x4cb68554 compat_mc_getsockopt +EXPORT_SYMBOL vmlinux 0x4cbbd171 __bitmap_weight +EXPORT_SYMBOL vmlinux 0x4cbe4137 set_binfmt +EXPORT_SYMBOL vmlinux 0x4ccab818 mem_cgroup_subsys +EXPORT_SYMBOL vmlinux 0x4cdb3178 ns_to_timeval +EXPORT_SYMBOL vmlinux 0x4cfc225c __dst_free +EXPORT_SYMBOL vmlinux 0x4d0791ae get_task_io_context +EXPORT_SYMBOL vmlinux 0x4d07d687 tty_write_room +EXPORT_SYMBOL vmlinux 0x4d1023f8 mempool_resize +EXPORT_SYMBOL vmlinux 0x4d321d9b acpi_bus_get_status +EXPORT_SYMBOL vmlinux 0x4d4852c7 blk_sync_queue +EXPORT_SYMBOL vmlinux 0x4d74eaa3 alloc_anon_inode +EXPORT_SYMBOL vmlinux 0x4d8de51a tty_pair_get_pty +EXPORT_SYMBOL vmlinux 0x4d93ca79 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0x4d974b9c register_sysrq_key +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4da8c5b6 dma_set_mask +EXPORT_SYMBOL vmlinux 0x4daa360a acpi_resource_to_address64 +EXPORT_SYMBOL vmlinux 0x4dab4cfa copy_strings_kernel +EXPORT_SYMBOL vmlinux 0x4dbf45ac pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0x4dd06fbe iput +EXPORT_SYMBOL vmlinux 0x4ddbe525 tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0x4de34a07 cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x4df119fa __bitmap_parse +EXPORT_SYMBOL vmlinux 0x4dfb721b km_state_expired +EXPORT_SYMBOL vmlinux 0x4e14bf23 blk_mq_free_queue +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e43e369 d_add_ci +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e818ed8 tty_name +EXPORT_SYMBOL vmlinux 0x4e83259d scsi_finish_command +EXPORT_SYMBOL vmlinux 0x4e9033f8 iterate_supers_type +EXPORT_SYMBOL vmlinux 0x4e9315b1 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x4ea25709 dql_reset +EXPORT_SYMBOL vmlinux 0x4ea7918e eth_header_cache_update +EXPORT_SYMBOL vmlinux 0x4eb308b0 acpi_device_hid +EXPORT_SYMBOL vmlinux 0x4ebb03d3 tty_port_destroy +EXPORT_SYMBOL vmlinux 0x4edd72f7 block_all_signals +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f2f02ff dquot_get_dqinfo +EXPORT_SYMBOL vmlinux 0x4f33398f mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0x4f391d0e nla_parse +EXPORT_SYMBOL vmlinux 0x4f40907e xfrm_register_mode +EXPORT_SYMBOL vmlinux 0x4f476e96 init_cdrom_command +EXPORT_SYMBOL vmlinux 0x4f4eae06 dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0x4f68e5c9 do_gettimeofday +EXPORT_SYMBOL vmlinux 0x4f6b400b _copy_from_user +EXPORT_SYMBOL vmlinux 0x4f783f30 acpi_read +EXPORT_SYMBOL vmlinux 0x4f8b1c94 page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x4f8b5ddb _copy_to_user +EXPORT_SYMBOL vmlinux 0x4f94f1ba idr_get_next +EXPORT_SYMBOL vmlinux 0x4fa3a699 inet_recvmsg +EXPORT_SYMBOL vmlinux 0x4fa62c5c inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x4fd94098 kernel_listen +EXPORT_SYMBOL vmlinux 0x4fdee897 i8042_command +EXPORT_SYMBOL vmlinux 0x4fe2dc45 neigh_seq_start +EXPORT_SYMBOL vmlinux 0x4ff8955c sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0x4ffd63d8 dev_mc_sync +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x500d57a0 drop_super +EXPORT_SYMBOL vmlinux 0x5031966a bio_copy_user +EXPORT_SYMBOL vmlinux 0x503e9c98 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0x5047ea92 __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0x50529870 acpi_get_gpe_status +EXPORT_SYMBOL vmlinux 0x50678c56 devm_ioport_map +EXPORT_SYMBOL vmlinux 0x509b64ea acpi_has_method +EXPORT_SYMBOL vmlinux 0x50a90e8d bsearch +EXPORT_SYMBOL vmlinux 0x50baae54 netif_device_detach +EXPORT_SYMBOL vmlinux 0x50d2592d hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0x50d68377 arch_phys_wc_del +EXPORT_SYMBOL vmlinux 0x50e6da08 unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x50f17020 kmem_cache_alloc_node_trace +EXPORT_SYMBOL vmlinux 0x50f3c64e init_buffer +EXPORT_SYMBOL vmlinux 0x5112ce25 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0x5118c382 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0x511ab427 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x512b7c7f proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x515ae282 pci_clear_mwi +EXPORT_SYMBOL vmlinux 0x516ebbd7 jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0x51751da0 read_cache_page_async +EXPORT_SYMBOL vmlinux 0x517a1902 i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0x5182420f ida_pre_get +EXPORT_SYMBOL vmlinux 0x5185ba04 agp_generic_alloc_user +EXPORT_SYMBOL vmlinux 0x51d12d4e acpi_pci_disabled +EXPORT_SYMBOL vmlinux 0x51dce73b xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x51fef9c2 uart_remove_one_port +EXPORT_SYMBOL vmlinux 0x52006d56 acpi_walk_resources +EXPORT_SYMBOL vmlinux 0x52026cdf security_sb_parse_opts_str +EXPORT_SYMBOL vmlinux 0x52067c7e pci_pme_capable +EXPORT_SYMBOL vmlinux 0x52095e19 acpi_get_data +EXPORT_SYMBOL vmlinux 0x52130046 acpi_check_address_range +EXPORT_SYMBOL vmlinux 0x52163618 kthread_create_on_node +EXPORT_SYMBOL vmlinux 0x521b36b5 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0x521ee9cb swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x5226de26 dev_mc_flush +EXPORT_SYMBOL vmlinux 0x52428cc8 parent_mem_cgroup +EXPORT_SYMBOL vmlinux 0x5245f6a4 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x524f6f51 ipmi_get_my_address +EXPORT_SYMBOL vmlinux 0x525e026f acpi_os_unmap_generic_address +EXPORT_SYMBOL vmlinux 0x525f228d gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0x52813361 __dquot_free_space +EXPORT_SYMBOL vmlinux 0x52af8c2d set_pages_array_uc +EXPORT_SYMBOL vmlinux 0x52b0e311 input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x52c0725f ftrace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x52c7088d blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0x52cbb014 lockref_get +EXPORT_SYMBOL vmlinux 0x52dc65ab mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x5308af1f skb_copy +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x5312aff1 user_revoke +EXPORT_SYMBOL vmlinux 0x5318e2a3 dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x531b604e __virt_addr_valid +EXPORT_SYMBOL vmlinux 0x53326531 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x534b387f irq_to_desc +EXPORT_SYMBOL vmlinux 0x534e12ad udp_add_offload +EXPORT_SYMBOL vmlinux 0x5362531f rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0x536cc847 memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0x537732a2 sk_reset_timer +EXPORT_SYMBOL vmlinux 0x5377e556 hex2bin +EXPORT_SYMBOL vmlinux 0x5391249d fddi_change_mtu +EXPORT_SYMBOL vmlinux 0x53b1eec2 md_write_end +EXPORT_SYMBOL vmlinux 0x53b8c337 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x53c6745c mmc_fixup_device +EXPORT_SYMBOL vmlinux 0x53d70189 __skb_checksum +EXPORT_SYMBOL vmlinux 0x53f18ee2 ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0x53f6ffbc wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0x53fe79dd mntget +EXPORT_SYMBOL vmlinux 0x54003677 ipmi_register_smi +EXPORT_SYMBOL vmlinux 0x5402680b lockref_mark_dead +EXPORT_SYMBOL vmlinux 0x54059a2a amd_iommu_pc_get_max_counters +EXPORT_SYMBOL vmlinux 0x5408747c pci_vpd_truncate +EXPORT_SYMBOL vmlinux 0x5409775b free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x54129772 mmc_power_save_host +EXPORT_SYMBOL vmlinux 0x541eb114 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0x54245b39 kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0x543c5c55 elv_unregister_queue +EXPORT_SYMBOL vmlinux 0x543cfc91 dma_sync_wait +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x5441ff4a tcp_close +EXPORT_SYMBOL vmlinux 0x544b0c11 acpi_lid_notifier_register +EXPORT_SYMBOL vmlinux 0x546576fd gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0x549528d7 phy_scan_fixups +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54af6abd flush_signals +EXPORT_SYMBOL vmlinux 0x54d13d86 neigh_destroy +EXPORT_SYMBOL vmlinux 0x54e3cc3b param_get_int +EXPORT_SYMBOL vmlinux 0x54e4dd3d posix_unblock_lock +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54e8690c __locks_copy_lock +EXPORT_SYMBOL vmlinux 0x54efb5d6 cpu_number +EXPORT_SYMBOL vmlinux 0x54f10b47 blk_put_request +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x55387823 sock_wfree +EXPORT_SYMBOL vmlinux 0x554140ba __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x5541ea93 on_each_cpu +EXPORT_SYMBOL vmlinux 0x554b5846 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0x554dc641 agp_free_memory +EXPORT_SYMBOL vmlinux 0x55521edc kernel_getsockopt +EXPORT_SYMBOL vmlinux 0x555ec2a9 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0x55671680 lg_lock_init +EXPORT_SYMBOL vmlinux 0x5567c227 kernel_cpustat +EXPORT_SYMBOL vmlinux 0x556c2740 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x5573b1cb xfrm6_rcv +EXPORT_SYMBOL vmlinux 0x559484bd alloc_fddidev +EXPORT_SYMBOL vmlinux 0x5594be03 bitmap_remap +EXPORT_SYMBOL vmlinux 0x55c4bd8c da903x_query_status +EXPORT_SYMBOL vmlinux 0x55ccd4d2 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0x55d78469 i2c_master_send +EXPORT_SYMBOL vmlinux 0x55f5019b __kmalloc_node +EXPORT_SYMBOL vmlinux 0x560ffb71 tcf_hash_lookup +EXPORT_SYMBOL vmlinux 0x5614b010 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x56410712 free_user_ns +EXPORT_SYMBOL vmlinux 0x5642793a radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x5662372d blk_queue_io_min +EXPORT_SYMBOL vmlinux 0x56b37222 phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56dea02f __nla_put +EXPORT_SYMBOL vmlinux 0x56e3933d generic_pipe_buf_confirm +EXPORT_SYMBOL vmlinux 0x5703847c dev_mc_del +EXPORT_SYMBOL vmlinux 0x5716aa63 make_kgid +EXPORT_SYMBOL vmlinux 0x572e85d4 blk_lookup_devt +EXPORT_SYMBOL vmlinux 0x5746a02d __register_binfmt +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x577cbf15 jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0x5792f848 strlcpy +EXPORT_SYMBOL vmlinux 0x57a6ccd0 down_read +EXPORT_SYMBOL vmlinux 0x57b9c897 devm_clk_get +EXPORT_SYMBOL vmlinux 0x57bf2d28 dentry_open +EXPORT_SYMBOL vmlinux 0x57dc3ccd compat_sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x57fbc9cf scsi_cmd_get_serial +EXPORT_SYMBOL vmlinux 0x580d80f7 dget_parent +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x584738f9 rdmsr_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x5852b79c xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x5857b225 ioread16_rep +EXPORT_SYMBOL vmlinux 0x5860aad4 add_wait_queue +EXPORT_SYMBOL vmlinux 0x586103be acpi_setup_gpe_for_wake +EXPORT_SYMBOL vmlinux 0x587616f1 vfs_fstatat +EXPORT_SYMBOL vmlinux 0x587dc79d twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0x5887692d compat_nf_getsockopt +EXPORT_SYMBOL vmlinux 0x5890defc __inet6_hash +EXPORT_SYMBOL vmlinux 0x58a04f4f tty_unregister_device +EXPORT_SYMBOL vmlinux 0x58ef2245 inet_frag_maybe_warn_overflow +EXPORT_SYMBOL vmlinux 0x58f0ced6 serio_interrupt +EXPORT_SYMBOL vmlinux 0x58f3a0b8 from_kuid +EXPORT_SYMBOL vmlinux 0x5905dbd3 seq_open +EXPORT_SYMBOL vmlinux 0x590c0ddc mmc_get_card +EXPORT_SYMBOL vmlinux 0x5949e5dd neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x59561432 tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0x595c2852 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0x5963963d devfreq_add_device +EXPORT_SYMBOL vmlinux 0x5967c929 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x596b97c8 dst_alloc +EXPORT_SYMBOL vmlinux 0x5991219c cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x59a73158 mmc_can_erase +EXPORT_SYMBOL vmlinux 0x59bc9609 acpi_write_bit_register +EXPORT_SYMBOL vmlinux 0x59c07441 tcp_enter_memory_pressure +EXPORT_SYMBOL vmlinux 0x59caa4c3 module_layout +EXPORT_SYMBOL vmlinux 0x59cb0a2c console_stop +EXPORT_SYMBOL vmlinux 0x59e2837c request_key +EXPORT_SYMBOL vmlinux 0x59e55ce9 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x59e8b1e4 xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x5a4896a8 __put_user_2 +EXPORT_SYMBOL vmlinux 0x5a5536c2 param_ops_invbool +EXPORT_SYMBOL vmlinux 0x5a7faa64 __free_pages +EXPORT_SYMBOL vmlinux 0x5a84632f pci_disable_device +EXPORT_SYMBOL vmlinux 0x5a921311 strncmp +EXPORT_SYMBOL vmlinux 0x5ac21822 irq_stat +EXPORT_SYMBOL vmlinux 0x5ac376a5 acpi_install_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x5ae2c43c dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x5ae50279 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x5ae8f447 inode_dio_wait +EXPORT_SYMBOL vmlinux 0x5aeb145f complete_and_exit +EXPORT_SYMBOL vmlinux 0x5aec68d4 pagecache_write_end +EXPORT_SYMBOL vmlinux 0x5b18abe4 lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x5b271d86 acpi_video_dmi_promote_vendor +EXPORT_SYMBOL vmlinux 0x5b3fc2a1 elv_abort_queue +EXPORT_SYMBOL vmlinux 0x5b424341 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x5b4736ee md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0x5b56860c vm_munmap +EXPORT_SYMBOL vmlinux 0x5b64f16e bdi_setup_and_register +EXPORT_SYMBOL vmlinux 0x5b6acbcb arp_find +EXPORT_SYMBOL vmlinux 0x5b7c1e92 __pagevec_release +EXPORT_SYMBOL vmlinux 0x5b7e633b backlight_force_update +EXPORT_SYMBOL vmlinux 0x5b84998f jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0x5b9be47d __ww_mutex_lock +EXPORT_SYMBOL vmlinux 0x5bb152b1 amd_iommu_enable_device_erratum +EXPORT_SYMBOL vmlinux 0x5bc10524 printk_emit +EXPORT_SYMBOL vmlinux 0x5bc8d583 copy_from_user_overflow +EXPORT_SYMBOL vmlinux 0x5be2698b i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0x5be3fcbb scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x5bf29b8c blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0x5bfbb2ba __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0x5c0ff9ff splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0x5c3edd59 _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x5c7b9f5e scsi_print_command +EXPORT_SYMBOL vmlinux 0x5c8b5ce8 prepare_to_wait +EXPORT_SYMBOL vmlinux 0x5c99a880 cdev_alloc +EXPORT_SYMBOL vmlinux 0x5c9a9ec7 generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0x5ca75b1d from_kuid_munged +EXPORT_SYMBOL vmlinux 0x5ccc3c1a tcp_poll +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5d198abd generic_file_splice_write +EXPORT_SYMBOL vmlinux 0x5d1f1743 mount_single +EXPORT_SYMBOL vmlinux 0x5d41c87c param_ops_charp +EXPORT_SYMBOL vmlinux 0x5d428586 amd_iommu_domain_set_gcr3 +EXPORT_SYMBOL vmlinux 0x5d479b93 blk_run_queue +EXPORT_SYMBOL vmlinux 0x5d5332a1 generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x5d550c4d scsi_sd_probe_domain +EXPORT_SYMBOL vmlinux 0x5d570e8e input_allocate_device +EXPORT_SYMBOL vmlinux 0x5d5b5a16 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x5d74dbcf pnp_range_reserved +EXPORT_SYMBOL vmlinux 0x5d8551fe inet_accept +EXPORT_SYMBOL vmlinux 0x5d86830c jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x5da61bc8 mddev_congested +EXPORT_SYMBOL vmlinux 0x5dc31edf rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0x5dd20e9a inet6_ioctl +EXPORT_SYMBOL vmlinux 0x5df09c20 jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0x5e15d54c ida_init +EXPORT_SYMBOL vmlinux 0x5e186c65 vga_switcheroo_register_audio_client +EXPORT_SYMBOL vmlinux 0x5e277f3e iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0x5e30c9a0 agp_generic_destroy_page +EXPORT_SYMBOL vmlinux 0x5e3d0baa alloc_mdio_bitbang +EXPORT_SYMBOL vmlinux 0x5e41402e netif_carrier_off +EXPORT_SYMBOL vmlinux 0x5e7611e0 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0x5e80f37c ipmi_unregister_for_cmd +EXPORT_SYMBOL vmlinux 0x5e8c221b vfs_create +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5eb1900e vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ed67ba9 pcim_iomap +EXPORT_SYMBOL vmlinux 0x5f005368 kstrtou8 +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f25cc93 skb_pull +EXPORT_SYMBOL vmlinux 0x5f3c8f5c mmc_assume_removable +EXPORT_SYMBOL vmlinux 0x5f4c3dba inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0x5f509460 xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0x5f557703 acpi_evaluate_hotplug_ost +EXPORT_SYMBOL vmlinux 0x5f58f676 flex_array_get_ptr +EXPORT_SYMBOL vmlinux 0x5f5dedfa gen10g_config_advert +EXPORT_SYMBOL vmlinux 0x5f61c215 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x5f6e88ec linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x5f940612 dquot_quota_on +EXPORT_SYMBOL vmlinux 0x5fc692c3 mmc_can_discard +EXPORT_SYMBOL vmlinux 0x5fcdcc05 ipmi_get_my_LUN +EXPORT_SYMBOL vmlinux 0x5fd05305 genphy_setup_forced +EXPORT_SYMBOL vmlinux 0x5fda0227 vfs_stat +EXPORT_SYMBOL vmlinux 0x5fda637d pci_enable_obff +EXPORT_SYMBOL vmlinux 0x5fe53c0b user_path_create +EXPORT_SYMBOL vmlinux 0x5ff42b08 acpi_video_get_capabilities +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x601024b5 update_time +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x602e2a56 md_wakeup_thread +EXPORT_SYMBOL vmlinux 0x602ed00d acpi_current_gpe_count +EXPORT_SYMBOL vmlinux 0x60342e07 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x605cbb4f elevator_alloc +EXPORT_SYMBOL vmlinux 0x606d0b09 secure_tcpv6_sequence_number +EXPORT_SYMBOL vmlinux 0x608cee07 dev_change_flags +EXPORT_SYMBOL vmlinux 0x60970fe3 clear_bdi_congested +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x609f5b35 ucs2_strnlen +EXPORT_SYMBOL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL vmlinux 0x60b654b8 __napi_schedule +EXPORT_SYMBOL vmlinux 0x60bfcd90 redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0x60df1e3b posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x60f21583 __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x60fd9321 skb_dequeue +EXPORT_SYMBOL vmlinux 0x611542a9 ata_port_printk +EXPORT_SYMBOL vmlinux 0x612390ad netpoll_set_trap +EXPORT_SYMBOL vmlinux 0x6127ce5c kernel_sock_ioctl +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x61434f13 sk_filter +EXPORT_SYMBOL vmlinux 0x614383c0 acpi_get_object_info +EXPORT_SYMBOL vmlinux 0x61509f8f framebuffer_release +EXPORT_SYMBOL vmlinux 0x61538ad0 param_get_charp +EXPORT_SYMBOL vmlinux 0x6176df43 iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0x6187e45e blk_run_queue_async +EXPORT_SYMBOL vmlinux 0x618911fc numa_node +EXPORT_SYMBOL vmlinux 0x61999eb6 input_set_abs_params +EXPORT_SYMBOL vmlinux 0x619cb7dd simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61b84dc6 i2c_verify_client +EXPORT_SYMBOL vmlinux 0x61bbe233 __secpath_destroy +EXPORT_SYMBOL vmlinux 0x61cc8084 inet_twsk_deschedule +EXPORT_SYMBOL vmlinux 0x61f0c601 set_trace_device +EXPORT_SYMBOL vmlinux 0x61fa092a dev_mc_add_global +EXPORT_SYMBOL vmlinux 0x61fb248a node_states +EXPORT_SYMBOL vmlinux 0x62049256 acpi_disable +EXPORT_SYMBOL vmlinux 0x620fd6bf security_path_chmod +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x621d29a5 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0x622312e9 xfrm_cfg_mutex +EXPORT_SYMBOL vmlinux 0x6225637e md5_transform +EXPORT_SYMBOL vmlinux 0x6226b9fa machine_to_phys_mapping +EXPORT_SYMBOL vmlinux 0x622895a9 set_page_dirty +EXPORT_SYMBOL vmlinux 0x6228be03 inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x6232b4e3 input_event +EXPORT_SYMBOL vmlinux 0x6237f6b5 acpi_enable_event +EXPORT_SYMBOL vmlinux 0x623b7232 pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0x623d5947 input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0x624aac9e compat_ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x62748e70 acpi_set_current_resources +EXPORT_SYMBOL vmlinux 0x628121e9 register_sysctl_table +EXPORT_SYMBOL vmlinux 0x62827bec security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x62890100 neigh_seq_next +EXPORT_SYMBOL vmlinux 0x62a9a064 inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0x630034ef single_release +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x6326b0f5 simple_unlink +EXPORT_SYMBOL vmlinux 0x63398525 elv_rb_del +EXPORT_SYMBOL vmlinux 0x6343926c blk_init_queue_node +EXPORT_SYMBOL vmlinux 0x6346027f pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0x6359247c pcim_pin_device +EXPORT_SYMBOL vmlinux 0x6368f661 agp_generic_alloc_by_type +EXPORT_SYMBOL vmlinux 0x636a5691 acpi_register_ioapic +EXPORT_SYMBOL vmlinux 0x636b2d2e sock_init_data +EXPORT_SYMBOL vmlinux 0x63788685 amd_iommu_domain_clear_gcr3 +EXPORT_SYMBOL vmlinux 0x63a01291 acpi_leave_sleep_state_prep +EXPORT_SYMBOL vmlinux 0x63a6bcc9 acpi_map_lsapic +EXPORT_SYMBOL vmlinux 0x63d837b6 phy_detach +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63f3cae6 register_key_type +EXPORT_SYMBOL vmlinux 0x63fc232f strlen_user +EXPORT_SYMBOL vmlinux 0x6403e338 tcp_memory_pressure +EXPORT_SYMBOL vmlinux 0x6425eb3a tty_port_tty_get +EXPORT_SYMBOL vmlinux 0x6449fd41 acpi_install_address_space_handler +EXPORT_SYMBOL vmlinux 0x645eede5 send_sig_info +EXPORT_SYMBOL vmlinux 0x6478134c ec_burst_enable +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x649d9174 ipv6_select_ident +EXPORT_SYMBOL vmlinux 0x64a804f7 pnp_register_driver +EXPORT_SYMBOL vmlinux 0x64bac8fe d_prune_aliases +EXPORT_SYMBOL vmlinux 0x64bbc288 string_unescape +EXPORT_SYMBOL vmlinux 0x64c5a1ad task_tgid_nr_ns +EXPORT_SYMBOL vmlinux 0x64c6680f scsi_print_result +EXPORT_SYMBOL vmlinux 0x64d9842e nf_reinject +EXPORT_SYMBOL vmlinux 0x64eae7ad set_memory_array_wb +EXPORT_SYMBOL vmlinux 0x64f17e65 blk_get_backing_dev_info +EXPORT_SYMBOL vmlinux 0x6508ec0b kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x65282f0a dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x652ce9aa nla_memcmp +EXPORT_SYMBOL vmlinux 0x653bc418 vfs_path_lookup +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x654f1f5e max8998_bulk_read +EXPORT_SYMBOL vmlinux 0x655f1ab0 set_memory_array_wc +EXPORT_SYMBOL vmlinux 0x65776b84 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0x659aff9e mmc_flush_cache +EXPORT_SYMBOL vmlinux 0x65ad9cdb unregister_md_personality +EXPORT_SYMBOL vmlinux 0x65d260b6 blk_queue_resize_tags +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65e0d6d7 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x65e9e141 cdrom_ioctl +EXPORT_SYMBOL vmlinux 0x65f3ad9a fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x6605f97f flex_array_clear +EXPORT_SYMBOL vmlinux 0x66222e4e dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0x6636c438 simple_write_begin +EXPORT_SYMBOL vmlinux 0x663f7cd0 acpi_install_table_handler +EXPORT_SYMBOL vmlinux 0x666ec0d3 bio_integrity_free +EXPORT_SYMBOL vmlinux 0x668da8d5 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x6692965c unregister_console +EXPORT_SYMBOL vmlinux 0x66a607b5 __netif_schedule +EXPORT_SYMBOL vmlinux 0x66a67dab flex_array_shrink +EXPORT_SYMBOL vmlinux 0x66abb837 __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x66b91218 dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0x66cdcad5 seq_vprintf +EXPORT_SYMBOL vmlinux 0x66e80f0c dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0x66fd1b23 sk_stream_error +EXPORT_SYMBOL vmlinux 0x6701c236 softnet_data +EXPORT_SYMBOL vmlinux 0x672057d9 first_ec +EXPORT_SYMBOL vmlinux 0x6722a398 uart_update_timeout +EXPORT_SYMBOL vmlinux 0x6729d3df __get_user_4 +EXPORT_SYMBOL vmlinux 0x673f815e agp_bridges +EXPORT_SYMBOL vmlinux 0x675b8f61 param_get_string +EXPORT_SYMBOL vmlinux 0x675c09e4 lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x6797c028 tty_hangup +EXPORT_SYMBOL vmlinux 0x67a0306a percpu_counter_set +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67cb9784 ipmi_poll_interface +EXPORT_SYMBOL vmlinux 0x67d396b0 rwsem_down_read_failed +EXPORT_SYMBOL vmlinux 0x67d649f6 devm_clk_put +EXPORT_SYMBOL vmlinux 0x67d9a93d udp_prot +EXPORT_SYMBOL vmlinux 0x67f9ab80 pci_biosrom_size +EXPORT_SYMBOL vmlinux 0x67fb711f simple_dir_operations +EXPORT_SYMBOL vmlinux 0x67fd0ccd tty_register_device +EXPORT_SYMBOL vmlinux 0x68027d93 devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0x68565378 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0x686e1603 posix_lock_file_wait +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x68848e80 xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0x688c71a1 ndo_dflt_bridge_getlink +EXPORT_SYMBOL vmlinux 0x688cd96b atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x68a3310a simple_pin_fs +EXPORT_SYMBOL vmlinux 0x68aca4ad down +EXPORT_SYMBOL vmlinux 0x68af7b47 pagevec_lookup +EXPORT_SYMBOL vmlinux 0x68b83ac6 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x68c75289 dev_notice +EXPORT_SYMBOL vmlinux 0x68e05d57 getrawmonotonic +EXPORT_SYMBOL vmlinux 0x6908498a sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0x690b943a tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0x691001b5 acpi_evaluate_integer +EXPORT_SYMBOL vmlinux 0x693d8e1f generic_pipe_buf_map +EXPORT_SYMBOL vmlinux 0x69463936 fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x6975ca3f vga_client_register +EXPORT_SYMBOL vmlinux 0x6988d0ca cpu_dr7 +EXPORT_SYMBOL vmlinux 0x69a0ca7d iowrite16be +EXPORT_SYMBOL vmlinux 0x69a358a6 iomem_resource +EXPORT_SYMBOL vmlinux 0x69acdf38 memcpy +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69c2c8af gen_pool_add_virt +EXPORT_SYMBOL vmlinux 0x69c2cbaf lock_sock_fast +EXPORT_SYMBOL vmlinux 0x69d38ed9 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x69d600a3 sock_create_kern +EXPORT_SYMBOL vmlinux 0x69de6443 unregister_key_type +EXPORT_SYMBOL vmlinux 0x69e23cf9 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x69e27c7a bitmap_copy_le +EXPORT_SYMBOL vmlinux 0x69f70e84 ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x69fb7d11 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0x69fbc0a2 acpi_get_event_resources +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a16bbff make_kprojid +EXPORT_SYMBOL vmlinux 0x6a403bbd frontswap_register_ops +EXPORT_SYMBOL vmlinux 0x6a447559 devm_ioremap +EXPORT_SYMBOL vmlinux 0x6a46bfc0 security_mmap_file +EXPORT_SYMBOL vmlinux 0x6a47993b pnp_possible_config +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a5fa363 sigprocmask +EXPORT_SYMBOL vmlinux 0x6a62ac26 acpi_processor_notify_smm +EXPORT_SYMBOL vmlinux 0x6a76f3ac blk_iopoll_enable +EXPORT_SYMBOL vmlinux 0x6a91acf1 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0x6aac90d2 alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x6acb973d iowrite32be +EXPORT_SYMBOL vmlinux 0x6ad85887 acpi_enable_gpe +EXPORT_SYMBOL vmlinux 0x6adb800c tc_classify_compat +EXPORT_SYMBOL vmlinux 0x6add5c9a dmi_find_device +EXPORT_SYMBOL vmlinux 0x6afa1b07 inet_frags_exit_net +EXPORT_SYMBOL vmlinux 0x6b06fdce delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x6b0c4ac8 fb_get_mode +EXPORT_SYMBOL vmlinux 0x6b0dcde6 ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x6b160a47 notify_change +EXPORT_SYMBOL vmlinux 0x6b1b50d5 set_anon_super +EXPORT_SYMBOL vmlinux 0x6b1b67d3 __bdevname +EXPORT_SYMBOL vmlinux 0x6b1e5bde genphy_update_link +EXPORT_SYMBOL vmlinux 0x6b271bf8 sock_no_bind +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b314ff6 fb_validate_mode +EXPORT_SYMBOL vmlinux 0x6b640864 nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6b6a5958 simple_readpage +EXPORT_SYMBOL vmlinux 0x6b6b3fd8 jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0x6b787805 textsearch_prepare +EXPORT_SYMBOL vmlinux 0x6b7e7590 dev_disable_lro +EXPORT_SYMBOL vmlinux 0x6b8f453c pcie_port_service_register +EXPORT_SYMBOL vmlinux 0x6b92f3ab pnp_device_detach +EXPORT_SYMBOL vmlinux 0x6b9f353c abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bc9fc03 sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x6bd78d48 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0x6bdcfd99 qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x6beb2078 param_set_copystring +EXPORT_SYMBOL vmlinux 0x6bf0e148 unload_nls +EXPORT_SYMBOL vmlinux 0x6c389761 acpi_bus_get_private_data +EXPORT_SYMBOL vmlinux 0x6c50c447 ata_std_end_eh +EXPORT_SYMBOL vmlinux 0x6c5101d8 percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x6c51a836 sysctl_tcp_notsent_lowat +EXPORT_SYMBOL vmlinux 0x6c5aa231 pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c702af7 sysctl_udp_rmem_min +EXPORT_SYMBOL vmlinux 0x6c979177 proc_mkdir +EXPORT_SYMBOL vmlinux 0x6ca47f1d remove_proc_entry +EXPORT_SYMBOL vmlinux 0x6ca7ba04 ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0x6cc4207a lease_modify +EXPORT_SYMBOL vmlinux 0x6ccef127 nf_afinfo +EXPORT_SYMBOL vmlinux 0x6cd8c86b __crc32c_le_combine +EXPORT_SYMBOL vmlinux 0x6d0aba34 wait_for_completion +EXPORT_SYMBOL vmlinux 0x6d0f1f89 dm_table_get_mode +EXPORT_SYMBOL vmlinux 0x6d165c40 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0x6d20321a generic_file_fsync +EXPORT_SYMBOL vmlinux 0x6d21fb46 dev_crit +EXPORT_SYMBOL vmlinux 0x6d27ef64 __bitmap_empty +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d334118 __get_user_8 +EXPORT_SYMBOL vmlinux 0x6d340f64 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x6d3f106f inet_ioctl +EXPORT_SYMBOL vmlinux 0x6d555607 fget_light +EXPORT_SYMBOL vmlinux 0x6d567fb0 textsearch_register +EXPORT_SYMBOL vmlinux 0x6d5a5db1 elevator_init +EXPORT_SYMBOL vmlinux 0x6d6818ff gen_pool_alloc +EXPORT_SYMBOL vmlinux 0x6d6a585a fib_default_rule_add +EXPORT_SYMBOL vmlinux 0x6d74a551 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x6d765ace padata_unregister_cpumask_notifier +EXPORT_SYMBOL vmlinux 0x6d845ead mfd_add_devices +EXPORT_SYMBOL vmlinux 0x6d93200d kill_pid +EXPORT_SYMBOL vmlinux 0x6d94624d nf_log_packet +EXPORT_SYMBOL vmlinux 0x6d955b60 compat_sock_get_timestamp +EXPORT_SYMBOL vmlinux 0x6d9da20b module_put +EXPORT_SYMBOL vmlinux 0x6db5f4d8 inet_del_protocol +EXPORT_SYMBOL vmlinux 0x6db66790 udp_disconnect +EXPORT_SYMBOL vmlinux 0x6dc543e1 bio_integrity_tag_size +EXPORT_SYMBOL vmlinux 0x6dd04945 scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0x6dd28cbe tcp_recvmsg +EXPORT_SYMBOL vmlinux 0x6dd9eac0 pci_reenable_device +EXPORT_SYMBOL vmlinux 0x6def2db2 half_md4_transform +EXPORT_SYMBOL vmlinux 0x6e046ce6 phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x6e08f9a2 make_bad_inode +EXPORT_SYMBOL vmlinux 0x6e0a1c27 init_task +EXPORT_SYMBOL vmlinux 0x6e26a233 register_netdev +EXPORT_SYMBOL vmlinux 0x6e285b8a __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x6e297a62 __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x6e36d20f xfrm_find_acq +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e7d6164 dquot_commit_info +EXPORT_SYMBOL vmlinux 0x6ebc5149 param_ops_long +EXPORT_SYMBOL vmlinux 0x6ec026a1 neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x6ed2e971 kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0x6f08d8ce mark_info_dirty +EXPORT_SYMBOL vmlinux 0x6f20960a full_name_hash +EXPORT_SYMBOL vmlinux 0x6f27b20f con_is_bound +EXPORT_SYMBOL vmlinux 0x6f36c782 idr_find_slowpath +EXPORT_SYMBOL vmlinux 0x6f4c812f __percpu_counter_add +EXPORT_SYMBOL vmlinux 0x6f50d628 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0x6f556bdb acpi_get_gpe_device +EXPORT_SYMBOL vmlinux 0x6f8cb507 vm_map_ram +EXPORT_SYMBOL vmlinux 0x6fa588df vfs_read +EXPORT_SYMBOL vmlinux 0x6fb0a52e netdev_printk +EXPORT_SYMBOL vmlinux 0x6fb80e84 dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0x6fbc3782 vfs_setpos +EXPORT_SYMBOL vmlinux 0x6fc42ae4 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fd040ec generic_segment_checks +EXPORT_SYMBOL vmlinux 0x6fd3062e jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0x6feb2039 acpi_write +EXPORT_SYMBOL vmlinux 0x6ff0ccc4 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0x7008c33f inet_put_port +EXPORT_SYMBOL vmlinux 0x700cd1f9 set_nlink +EXPORT_SYMBOL vmlinux 0x7023bea8 unregister_acpi_notifier +EXPORT_SYMBOL vmlinux 0x702b6c54 udplite_table +EXPORT_SYMBOL vmlinux 0x703b4352 _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x70451d86 __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0x70523a7a __cond_resched_softirq +EXPORT_SYMBOL vmlinux 0x7054a3e4 request_dma +EXPORT_SYMBOL vmlinux 0x70778b49 lookup_bdev +EXPORT_SYMBOL vmlinux 0x707855b9 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x707f43f6 __ctzdi2 +EXPORT_SYMBOL vmlinux 0x7099fbe9 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0x709def7f __mmc_claim_host +EXPORT_SYMBOL vmlinux 0x70bc17d7 inode_wait +EXPORT_SYMBOL vmlinux 0x70c879cf blk_stop_queue +EXPORT_SYMBOL vmlinux 0x70d053fd try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x70d8ab82 acpi_acquire_global_lock +EXPORT_SYMBOL vmlinux 0x710ba86f nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x710ea314 netpoll_cleanup +EXPORT_SYMBOL vmlinux 0x71216290 blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x712b3ebc udp_del_offload +EXPORT_SYMBOL vmlinux 0x712ee3b0 pci_set_ltr +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x717fecf6 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0x718b7b7b dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0x7193f296 pci_get_device +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71abac58 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0x71c1e866 blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0x71cd2ebb dev_get_by_flags_rcu +EXPORT_SYMBOL vmlinux 0x71ce1b16 i8042_remove_filter +EXPORT_SYMBOL vmlinux 0x71d3079e proc_remove +EXPORT_SYMBOL vmlinux 0x71e3cecb up +EXPORT_SYMBOL vmlinux 0x71e41610 ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0x71f52da2 path_put +EXPORT_SYMBOL vmlinux 0x722a00f0 pci_dev_driver +EXPORT_SYMBOL vmlinux 0x7246cc6c simple_empty +EXPORT_SYMBOL vmlinux 0x724e6d22 pci_select_bars +EXPORT_SYMBOL vmlinux 0x72509c71 blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x7258aae3 tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x7261014c update_devfreq +EXPORT_SYMBOL vmlinux 0x727b7c75 blk_register_region +EXPORT_SYMBOL vmlinux 0x72a98fdb copy_user_generic_unrolled +EXPORT_SYMBOL vmlinux 0x72ae9b5b scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0x72b243d4 free_dma +EXPORT_SYMBOL vmlinux 0x72bb35a7 devm_gpiod_get +EXPORT_SYMBOL vmlinux 0x72bf2140 mtrr_add +EXPORT_SYMBOL vmlinux 0x72c45f86 sget +EXPORT_SYMBOL vmlinux 0x72cadcca elv_rb_former_request +EXPORT_SYMBOL vmlinux 0x72de4ef4 scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72f3aa32 acpi_get_physical_device_location +EXPORT_SYMBOL vmlinux 0x72f518e2 skb_append +EXPORT_SYMBOL vmlinux 0x732c164f padata_set_cpumasks +EXPORT_SYMBOL vmlinux 0x73338bc3 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x733c3b54 kasprintf +EXPORT_SYMBOL vmlinux 0x734e5e4d remove_proc_subtree +EXPORT_SYMBOL vmlinux 0x734f8762 tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0x735a0bd5 native_io_delay +EXPORT_SYMBOL vmlinux 0x735ff550 input_register_handler +EXPORT_SYMBOL vmlinux 0x7370ca16 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0x7372b9ce napi_complete +EXPORT_SYMBOL vmlinux 0x73749b20 pci_request_regions +EXPORT_SYMBOL vmlinux 0x737bb347 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0x737de5e9 radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0x73a78bc4 downgrade_write +EXPORT_SYMBOL vmlinux 0x73ba2e92 pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0x73d9f20b bio_integrity_set_tag +EXPORT_SYMBOL vmlinux 0x73dd54eb irq_fpu_usable +EXPORT_SYMBOL vmlinux 0x73e5c252 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0x740a1b95 reserve_evntsel_nmi +EXPORT_SYMBOL vmlinux 0x7449bb9a __i2c_transfer +EXPORT_SYMBOL vmlinux 0x744dbf6f jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0x7469fcfe radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x747195f0 hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x7475fc61 redraw_screen +EXPORT_SYMBOL vmlinux 0x74766374 get_agp_version +EXPORT_SYMBOL vmlinux 0x74808f30 bio_split +EXPORT_SYMBOL vmlinux 0x7485e15e unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x749ea626 get_io_context +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74e91cdf blk_rq_map_user +EXPORT_SYMBOL vmlinux 0x74fb0931 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0x75114734 vfs_readlink +EXPORT_SYMBOL vmlinux 0x75130251 page_put_link +EXPORT_SYMBOL vmlinux 0x7532588a alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x7538b132 agp_off +EXPORT_SYMBOL vmlinux 0x754d539c strlen +EXPORT_SYMBOL vmlinux 0x754dac78 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x754df503 generic_file_open +EXPORT_SYMBOL vmlinux 0x7552f2a7 sock_no_listen +EXPORT_SYMBOL vmlinux 0x75876c0b dev_remove_offload +EXPORT_SYMBOL vmlinux 0x75a28e26 kmem_cache_create +EXPORT_SYMBOL vmlinux 0x75b5f59f end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75bdea12 iommu_area_alloc +EXPORT_SYMBOL vmlinux 0x75d5757b agp_generic_alloc_pages +EXPORT_SYMBOL vmlinux 0x75e3faec register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x75fbdefd acpi_remove_address_space_handler +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x7628f3c7 this_cpu_off +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x764bd77c request_resource +EXPORT_SYMBOL vmlinux 0x764c2f8a d_alloc_name +EXPORT_SYMBOL vmlinux 0x7654970d inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x765ff474 crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x767d4e09 pci_set_dma_seg_boundary +EXPORT_SYMBOL vmlinux 0x767dd8fd acpi_get_irq_routing_table +EXPORT_SYMBOL vmlinux 0x767ddb02 set_memory_wc +EXPORT_SYMBOL vmlinux 0x767e8ae0 pci_scan_slot +EXPORT_SYMBOL vmlinux 0x76869ac8 rdmsr_on_cpus +EXPORT_SYMBOL vmlinux 0x76b2c9ea uart_write_wakeup +EXPORT_SYMBOL vmlinux 0x76bf656d __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x76c018f1 vm_iomap_memory +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76f96c53 napi_gro_frags +EXPORT_SYMBOL vmlinux 0x76fb08a7 amd_iommu_unregister_ppr_notifier +EXPORT_SYMBOL vmlinux 0x7712fa1e kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0x771cf835 dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x773a9c94 blk_iopoll_enabled +EXPORT_SYMBOL vmlinux 0x773fa409 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x77456e0a acpi_root_dir +EXPORT_SYMBOL vmlinux 0x7745c91f jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0x774f6678 misc_register +EXPORT_SYMBOL vmlinux 0x775703ad max8925_reg_write +EXPORT_SYMBOL vmlinux 0x775ff9c6 rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0x77991064 simple_transaction_release +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x779ae0a1 __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x77aaf80c sync_blockdev +EXPORT_SYMBOL vmlinux 0x77b000d5 vga_tryget +EXPORT_SYMBOL vmlinux 0x77b2d18c simple_statfs +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77c2169a blk_mq_free_single_hw_queue +EXPORT_SYMBOL vmlinux 0x77d2e074 vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x77df0847 __set_personality +EXPORT_SYMBOL vmlinux 0x77ecac9f zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x77f53abc acpi_get_vendor_resource +EXPORT_SYMBOL vmlinux 0x77ff815a bdput +EXPORT_SYMBOL vmlinux 0x780fc3a4 fb_class +EXPORT_SYMBOL vmlinux 0x780fdfd1 intel_enable_gtt +EXPORT_SYMBOL vmlinux 0x78193dce mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x7834d6a5 phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0x783b3563 wake_up_atomic_t +EXPORT_SYMBOL vmlinux 0x784213a6 pv_lock_ops +EXPORT_SYMBOL vmlinux 0x7846af3e __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x78764f4e pv_irq_ops +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78a5fdaa unregister_nls +EXPORT_SYMBOL vmlinux 0x78b0be6c is_bad_inode +EXPORT_SYMBOL vmlinux 0x78b6aeb7 inet_sendpage +EXPORT_SYMBOL vmlinux 0x78bb3e24 abort_exclusive_wait +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78fd36e7 ipmi_request_supply_msgs +EXPORT_SYMBOL vmlinux 0x79068fda acpi_install_method +EXPORT_SYMBOL vmlinux 0x7917172a inode_reclaim_rsv_space +EXPORT_SYMBOL vmlinux 0x79355a89 __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x79367798 pci_claim_resource +EXPORT_SYMBOL vmlinux 0x7939aeaf padata_remove_cpu +EXPORT_SYMBOL vmlinux 0x7957e1eb dquot_acquire +EXPORT_SYMBOL vmlinux 0x7962d5c5 devfreq_resume_device +EXPORT_SYMBOL vmlinux 0x79695b31 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0x796f35fb ip_route_me_harder +EXPORT_SYMBOL vmlinux 0x796fc5ce scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0x796feb32 seq_pad +EXPORT_SYMBOL vmlinux 0x797c2b82 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0x797c8fa9 cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x7982ef7d neigh_lookup +EXPORT_SYMBOL vmlinux 0x7984eefc key_update +EXPORT_SYMBOL vmlinux 0x7985b156 netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0x79886d05 follow_down_one +EXPORT_SYMBOL vmlinux 0x798a7288 agp_generic_create_gatt_table +EXPORT_SYMBOL vmlinux 0x79945d9f proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x79a38e61 ___ratelimit +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79bc9e36 seq_read +EXPORT_SYMBOL vmlinux 0x79d1923d __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0x79d3208a agp3_generic_tlbflush +EXPORT_SYMBOL vmlinux 0x79d37319 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0x79e83dec inet_frags_init_net +EXPORT_SYMBOL vmlinux 0x79f8edc4 tc_classify +EXPORT_SYMBOL vmlinux 0x7a03a13e __dquot_transfer +EXPORT_SYMBOL vmlinux 0x7a065f4a __pci_register_driver +EXPORT_SYMBOL vmlinux 0x7a113043 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0x7a188791 prandom_bytes +EXPORT_SYMBOL vmlinux 0x7a27c184 ewma_init +EXPORT_SYMBOL vmlinux 0x7a2ee2c5 rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0x7a38991d pci_iounmap +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a5cea78 xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0x7a82cb47 rdmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x7a8bc07f file_ns_capable +EXPORT_SYMBOL vmlinux 0x7a8c8f85 qdisc_tree_decrease_qlen +EXPORT_SYMBOL vmlinux 0x7a91726b clkdev_alloc +EXPORT_SYMBOL vmlinux 0x7a925833 cpufreq_get_global_kobject +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7ac52780 ppp_input_error +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7ad885d1 pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x7add44b5 posix_acl_valid +EXPORT_SYMBOL vmlinux 0x7ae41283 sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x7aec9089 clear_user +EXPORT_SYMBOL vmlinux 0x7af678e3 fsync_bdev +EXPORT_SYMBOL vmlinux 0x7b0057fe netpoll_rx_enable +EXPORT_SYMBOL vmlinux 0x7b069a26 setup_arg_pages +EXPORT_SYMBOL vmlinux 0x7b101b32 spi_attach_transport +EXPORT_SYMBOL vmlinux 0x7b16235f hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x7b1ac9f6 pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0x7b2aef6c __krealloc +EXPORT_SYMBOL vmlinux 0x7b338674 blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x7b42aba6 __skb_tx_hash +EXPORT_SYMBOL vmlinux 0x7b52a859 wrmsr_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x7b675c40 console_start +EXPORT_SYMBOL vmlinux 0x7b7c7c71 bh_submit_read +EXPORT_SYMBOL vmlinux 0x7b821c0e delete_from_page_cache +EXPORT_SYMBOL vmlinux 0x7b997728 pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x7b9a6116 intel_agp_enabled +EXPORT_SYMBOL vmlinux 0x7ba169eb __elv_add_request +EXPORT_SYMBOL vmlinux 0x7ba84b17 blkdev_get +EXPORT_SYMBOL vmlinux 0x7bb5b3ad mmc_start_req +EXPORT_SYMBOL vmlinux 0x7bc59ee8 blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x7bcfe7c4 alloc_xenballooned_pages +EXPORT_SYMBOL vmlinux 0x7be6ed60 inode_capable +EXPORT_SYMBOL vmlinux 0x7be9d1d4 pci_fixup_device +EXPORT_SYMBOL vmlinux 0x7c02e8b4 splice_from_pipe_next +EXPORT_SYMBOL vmlinux 0x7c10b946 __scm_destroy +EXPORT_SYMBOL vmlinux 0x7c1372e8 panic +EXPORT_SYMBOL vmlinux 0x7c2d098f krealloc +EXPORT_SYMBOL vmlinux 0x7c395336 scsi_reset_provider +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c46ebd7 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0x7c536468 nf_nat_decode_session_hook +EXPORT_SYMBOL vmlinux 0x7c55069d generic_file_splice_read +EXPORT_SYMBOL vmlinux 0x7c561771 pipe_to_file +EXPORT_SYMBOL vmlinux 0x7c61340c __release_region +EXPORT_SYMBOL vmlinux 0x7c6e4899 set_pages_wb +EXPORT_SYMBOL vmlinux 0x7c86b121 migrate_page +EXPORT_SYMBOL vmlinux 0x7c9142b2 pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0x7ca46555 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0x7cb1ae69 cpu_down +EXPORT_SYMBOL vmlinux 0x7cb2746b scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0x7cb4943c inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0x7cbf7081 gen_pool_destroy +EXPORT_SYMBOL vmlinux 0x7cc578da param_get_long +EXPORT_SYMBOL vmlinux 0x7cde1c76 bdget_disk +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7ce83365 acpi_remove_table_handler +EXPORT_SYMBOL vmlinux 0x7cf3a16b put_cmsg +EXPORT_SYMBOL vmlinux 0x7cffbc18 cleancache_register_ops +EXPORT_SYMBOL vmlinux 0x7d020d26 scm_fp_dup +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d11c268 jiffies +EXPORT_SYMBOL vmlinux 0x7d1d7e43 eth_header_cache +EXPORT_SYMBOL vmlinux 0x7d213724 netdev_change_features +EXPORT_SYMBOL vmlinux 0x7d21d71a d_alloc +EXPORT_SYMBOL vmlinux 0x7d497e53 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x7d94f746 acpi_os_write_port +EXPORT_SYMBOL vmlinux 0x7dbc2e57 mmiotrace_printk +EXPORT_SYMBOL vmlinux 0x7dc75580 splice_from_pipe_begin +EXPORT_SYMBOL vmlinux 0x7dd3bbc2 ps2_begin_command +EXPORT_SYMBOL vmlinux 0x7dd554fc unregister_kmmio_probe +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7e0506d5 input_set_keycode +EXPORT_SYMBOL vmlinux 0x7e0d21e5 blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0x7e11e053 __wake_up_bit +EXPORT_SYMBOL vmlinux 0x7e31ab4e dev_uc_add +EXPORT_SYMBOL vmlinux 0x7e3310e7 uart_match_port +EXPORT_SYMBOL vmlinux 0x7e394c4e sysctl_local_reserved_ports +EXPORT_SYMBOL vmlinux 0x7e40f0d0 elv_register_queue +EXPORT_SYMBOL vmlinux 0x7e497e7a ip_fragment +EXPORT_SYMBOL vmlinux 0x7e5a9584 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0x7e64c97d blk_rq_init +EXPORT_SYMBOL vmlinux 0x7e87b1e1 blk_queue_dma_pad +EXPORT_SYMBOL vmlinux 0x7e8c1b01 iget_failed +EXPORT_SYMBOL vmlinux 0x7eb08446 blk_alloc_queue +EXPORT_SYMBOL vmlinux 0x7ed914c9 acpi_decode_pld_buffer +EXPORT_SYMBOL vmlinux 0x7f1038fd amd_iommu_domain_direct_map +EXPORT_SYMBOL vmlinux 0x7f1e161d generic_error_remove_page +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f24e403 xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0x7f2601e6 dma_async_memcpy_buf_to_buf +EXPORT_SYMBOL vmlinux 0x7f39f630 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x7f658e80 _raw_write_lock +EXPORT_SYMBOL vmlinux 0x7f7a7273 i2c_register_driver +EXPORT_SYMBOL vmlinux 0x7f7de7aa scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x7fbab83c skb_split +EXPORT_SYMBOL vmlinux 0x7fd8083c inode_init_once +EXPORT_SYMBOL vmlinux 0x7fd968cf tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x7fddacef pci_request_region_exclusive +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fe38f48 sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x7fe490a0 key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x7fe750bc put_page +EXPORT_SYMBOL vmlinux 0x7ff5de62 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0x801e668a amd_iommu_complete_ppr +EXPORT_SYMBOL vmlinux 0x802d0e93 crc32_le +EXPORT_SYMBOL vmlinux 0x804f922a ipmi_addr_length +EXPORT_SYMBOL vmlinux 0x8087669e netdev_all_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x80b773cd nonseekable_open +EXPORT_SYMBOL vmlinux 0x80bdc32f __scsi_put_command +EXPORT_SYMBOL vmlinux 0x80c460a1 nla_append +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80cb28be skb_copy_datagram_from_iovec +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80fb76ec unregister_framebuffer +EXPORT_SYMBOL vmlinux 0x81018cf4 xfrm_init_replay +EXPORT_SYMBOL vmlinux 0x813a518e security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0x81472677 acpi_get_table +EXPORT_SYMBOL vmlinux 0x814e7730 nf_ct_destroy +EXPORT_SYMBOL vmlinux 0x814eb055 vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x81533963 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x81569025 set_disk_ro +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x815f2897 empty_zero_page +EXPORT_SYMBOL vmlinux 0x8182fedd kernel_connect +EXPORT_SYMBOL vmlinux 0x818e7750 ps2_sendbyte +EXPORT_SYMBOL vmlinux 0x81908ec1 scsi_device_set_state +EXPORT_SYMBOL vmlinux 0x8190a880 tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x819be60a cont_write_begin +EXPORT_SYMBOL vmlinux 0x81d10f5f trace_seq_putc +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81e6b37f dmi_get_system_info +EXPORT_SYMBOL vmlinux 0x81f6ca09 bio_integrity_enabled +EXPORT_SYMBOL vmlinux 0x81fe1e92 iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x8212721d xenbus_dev_request_and_reply +EXPORT_SYMBOL vmlinux 0x8228c976 __get_user_pages +EXPORT_SYMBOL vmlinux 0x824638ca blk_queue_end_tag +EXPORT_SYMBOL vmlinux 0x82477240 ida_destroy +EXPORT_SYMBOL vmlinux 0x8251bcc3 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x82585c3c audit_log +EXPORT_SYMBOL vmlinux 0x8260686f bitmap_find_next_zero_area +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x828c137f swiotlb_free_coherent +EXPORT_SYMBOL vmlinux 0x829d4e08 rwsem_down_write_failed +EXPORT_SYMBOL vmlinux 0x82acfb70 blk_iopoll_sched +EXPORT_SYMBOL vmlinux 0x82d41a81 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x82f4ccc9 __dev_remove_offload +EXPORT_SYMBOL vmlinux 0x82fb9881 genl_notify +EXPORT_SYMBOL vmlinux 0x8300e2cf fsnotify_alloc_group +EXPORT_SYMBOL vmlinux 0x830e547b ioremap_prot +EXPORT_SYMBOL vmlinux 0x8319df41 bio_integrity_get_tag +EXPORT_SYMBOL vmlinux 0x833c03aa acpi_enable_all_runtime_gpes +EXPORT_SYMBOL vmlinux 0x8343f9e8 scsi_setup_blk_pc_cmnd +EXPORT_SYMBOL vmlinux 0x83498ceb scsi_remove_device +EXPORT_SYMBOL vmlinux 0x834a8f79 fasync_helper +EXPORT_SYMBOL vmlinux 0x834d54fb __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x8362132e scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x83753706 __destroy_inode +EXPORT_SYMBOL vmlinux 0x8392de81 poll_schedule_timeout +EXPORT_SYMBOL vmlinux 0x8395dd96 writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0x83a476ce bitmap_scnlistprintf +EXPORT_SYMBOL vmlinux 0x83beccdb ip6_frag_init +EXPORT_SYMBOL vmlinux 0x83bfd457 udp_sendmsg +EXPORT_SYMBOL vmlinux 0x83d5b4d1 filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x83f3cdff gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0x8403868d blkdev_put +EXPORT_SYMBOL vmlinux 0x84060081 xen_poll_irq_timeout +EXPORT_SYMBOL vmlinux 0x84135afd ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0x84176d72 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0x8417f512 acpi_update_all_gpes +EXPORT_SYMBOL vmlinux 0x841962f8 param_get_ushort +EXPORT_SYMBOL vmlinux 0x841afac8 blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0x84216b11 ata_link_printk +EXPORT_SYMBOL vmlinux 0x84377bd0 key_link +EXPORT_SYMBOL vmlinux 0x8460812d tty_unthrottle +EXPORT_SYMBOL vmlinux 0x84748d4d ipmi_smi_watcher_register +EXPORT_SYMBOL vmlinux 0x8485cc44 kobject_set_name +EXPORT_SYMBOL vmlinux 0x8499cd33 i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0x84ffea8b idr_preload +EXPORT_SYMBOL vmlinux 0x8509c540 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0x8518eca9 param_get_short +EXPORT_SYMBOL vmlinux 0x85240692 input_set_capability +EXPORT_SYMBOL vmlinux 0x853bf7c1 param_set_int +EXPORT_SYMBOL vmlinux 0x8545862e sock_wmalloc +EXPORT_SYMBOL vmlinux 0x855967de netpoll_rx_disable +EXPORT_SYMBOL vmlinux 0x855b9bec __genl_register_family +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x856bee47 fb_is_primary_device +EXPORT_SYMBOL vmlinux 0x85855bac clear_nlink +EXPORT_SYMBOL vmlinux 0x8598da2c generic_file_remap_pages +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85c6e81f kill_block_super +EXPORT_SYMBOL vmlinux 0x85cb121a tcf_hash_check +EXPORT_SYMBOL vmlinux 0x85de87b1 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85e975a0 call_netdevice_notifiers_info +EXPORT_SYMBOL vmlinux 0x85fd1075 agp_allocate_memory +EXPORT_SYMBOL vmlinux 0x860eaccd skb_checksum +EXPORT_SYMBOL vmlinux 0x86478230 udplite_prot +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x865eba89 pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0x8663dcf2 vfs_unlink +EXPORT_SYMBOL vmlinux 0x8664f62e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x86944cea devm_gpio_free +EXPORT_SYMBOL vmlinux 0x86c24313 max8998_update_reg +EXPORT_SYMBOL vmlinux 0x86d5255f _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x870a3d2f mmc_of_parse +EXPORT_SYMBOL vmlinux 0x870bf928 radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x871c0a7e fiemap_check_flags +EXPORT_SYMBOL vmlinux 0x871d38c2 pipe_lock +EXPORT_SYMBOL vmlinux 0x872e5c24 inetdev_by_index +EXPORT_SYMBOL vmlinux 0x8751b4a4 ip_getsockopt +EXPORT_SYMBOL vmlinux 0x875f86ef set_pages_x +EXPORT_SYMBOL vmlinux 0x876bcbef mount_nodev +EXPORT_SYMBOL vmlinux 0x876d7389 bdi_destroy +EXPORT_SYMBOL vmlinux 0x876dafc3 ec_write +EXPORT_SYMBOL vmlinux 0x8779a34f param_ops_byte +EXPORT_SYMBOL vmlinux 0x878ab3ce sysctl_tcp_adv_win_scale +EXPORT_SYMBOL vmlinux 0x8790917f devm_free_irq +EXPORT_SYMBOL vmlinux 0x879ae9a5 iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0x879e78a4 __dev_get_by_index +EXPORT_SYMBOL vmlinux 0x87aaddf8 wrmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0x87aae50e f_setown +EXPORT_SYMBOL vmlinux 0x87b1e179 block_commit_write +EXPORT_SYMBOL vmlinux 0x87b23fe6 rtnl_create_link +EXPORT_SYMBOL vmlinux 0x87c58a96 smp_call_function_many +EXPORT_SYMBOL vmlinux 0x87dc469a mempool_create_node +EXPORT_SYMBOL vmlinux 0x87e361bd noop_fsync +EXPORT_SYMBOL vmlinux 0x87e66cca fifo_set_limit +EXPORT_SYMBOL vmlinux 0x881039d0 zlib_inflate +EXPORT_SYMBOL vmlinux 0x88172806 dev_alert +EXPORT_SYMBOL vmlinux 0x882178cd pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0x88233494 xfrm4_rcv +EXPORT_SYMBOL vmlinux 0x8834396c mod_timer +EXPORT_SYMBOL vmlinux 0x8843b759 eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0x88513970 param_set_byte +EXPORT_SYMBOL vmlinux 0x885f5d98 buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0x885fd08c tty_kref_put +EXPORT_SYMBOL vmlinux 0x8863af5f dmam_free_coherent +EXPORT_SYMBOL vmlinux 0x886ea96f kern_path +EXPORT_SYMBOL vmlinux 0x887b6cfa mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0x8885e1c0 nobh_write_end +EXPORT_SYMBOL vmlinux 0x8896a7b3 uart_get_divisor +EXPORT_SYMBOL vmlinux 0x8897df7d kobject_init +EXPORT_SYMBOL vmlinux 0x889cce4b km_state_notify +EXPORT_SYMBOL vmlinux 0x88b02a27 scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x88b04e39 __register_nmi_handler +EXPORT_SYMBOL vmlinux 0x88ca6051 vga_switcheroo_get_client_state +EXPORT_SYMBOL vmlinux 0x88e8f2a6 __ps2_command +EXPORT_SYMBOL vmlinux 0x88f00d18 lg_global_unlock +EXPORT_SYMBOL vmlinux 0x88f89049 tcp_parse_options +EXPORT_SYMBOL vmlinux 0x890ba884 x86_dma_fallback_dev +EXPORT_SYMBOL vmlinux 0x89248a58 kfree_put_link +EXPORT_SYMBOL vmlinux 0x892b26a0 set_memory_nx +EXPORT_SYMBOL vmlinux 0x897473df mktime +EXPORT_SYMBOL vmlinux 0x89ae373f sock_no_sendpage +EXPORT_SYMBOL vmlinux 0x89afe34e __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0x89b26160 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x89c0c104 max8925_set_bits +EXPORT_SYMBOL vmlinux 0x89c69e5b vlan_vid_del +EXPORT_SYMBOL vmlinux 0x89c9781c directly_mappable_cdev_bdi +EXPORT_SYMBOL vmlinux 0x89d5538d fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x89ff38df dev_get_by_name +EXPORT_SYMBOL vmlinux 0x8a1ab4ee timeval_to_jiffies +EXPORT_SYMBOL vmlinux 0x8a1bf6ad posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0x8a21f9e4 scsi_prep_state_check +EXPORT_SYMBOL vmlinux 0x8a2a37b6 phy_attach +EXPORT_SYMBOL vmlinux 0x8a48be55 netdev_alert +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a4b083e dquot_operations +EXPORT_SYMBOL vmlinux 0x8a51d565 quota_send_warning +EXPORT_SYMBOL vmlinux 0x8a6af65c kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x8a6d8658 dquot_destroy +EXPORT_SYMBOL vmlinux 0x8a7a5242 kernel_bind +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a80d7a5 acpi_error +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8aba68f9 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x8b0415b8 serio_open +EXPORT_SYMBOL vmlinux 0x8b1a7a66 pcie_aspm_enabled +EXPORT_SYMBOL vmlinux 0x8b226a81 acpi_video_dmi_demote_vendor +EXPORT_SYMBOL vmlinux 0x8b34b6c5 vfs_readv +EXPORT_SYMBOL vmlinux 0x8b35e873 sg_last +EXPORT_SYMBOL vmlinux 0x8b43159b register_cpu_notifier +EXPORT_SYMBOL vmlinux 0x8b5f4a2e IO_APIC_get_PCI_irq_vector +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b8216b3 pci_enable_ido +EXPORT_SYMBOL vmlinux 0x8b93cccf __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x8b982846 blk_queue_unprep_rq +EXPORT_SYMBOL vmlinux 0x8b989cf9 acpi_bus_can_wakeup +EXPORT_SYMBOL vmlinux 0x8ba48edb tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0x8bacd19e fsnotify_put_mark +EXPORT_SYMBOL vmlinux 0x8bba10d8 skb_seq_read +EXPORT_SYMBOL vmlinux 0x8bd5ee77 abx500_register_ops +EXPORT_SYMBOL vmlinux 0x8bdb3712 ip_check_defrag +EXPORT_SYMBOL vmlinux 0x8beb2cb4 file_open_root +EXPORT_SYMBOL vmlinux 0x8bf1809a dma_async_memcpy_pg_to_pg +EXPORT_SYMBOL vmlinux 0x8c01428e security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x8c183cbe iowrite16 +EXPORT_SYMBOL vmlinux 0x8c1921dd scsi_print_sense +EXPORT_SYMBOL vmlinux 0x8c29ae20 input_unregister_device +EXPORT_SYMBOL vmlinux 0x8c2ad768 fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0x8c5f1799 inet6_del_offload +EXPORT_SYMBOL vmlinux 0x8c637d43 irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x8c6a7b87 bdi_unregister +EXPORT_SYMBOL vmlinux 0x8c840509 shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x8c8ee770 ipmi_destroy_user +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8cda8029 xen_clear_irq_pending +EXPORT_SYMBOL vmlinux 0x8d187514 devfreq_interval_update +EXPORT_SYMBOL vmlinux 0x8d1dcc61 pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0x8d2e268b param_ops_ulong +EXPORT_SYMBOL vmlinux 0x8d3ad329 pv_mmu_ops +EXPORT_SYMBOL vmlinux 0x8d493881 skb_tx_error +EXPORT_SYMBOL vmlinux 0x8d551bef sysctl_tcp_rmem +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d59b24f agp_alloc_bridge +EXPORT_SYMBOL vmlinux 0x8d61e2db input_inject_event +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d7acefd simple_transaction_read +EXPORT_SYMBOL vmlinux 0x8d88e7dc security_path_mknod +EXPORT_SYMBOL vmlinux 0x8d8d96c6 acpi_get_sleep_type_data +EXPORT_SYMBOL vmlinux 0x8da1a3cb acpi_remove_interface +EXPORT_SYMBOL vmlinux 0x8da1fe12 file_update_time +EXPORT_SYMBOL vmlinux 0x8da84edd pci_enable_msix +EXPORT_SYMBOL vmlinux 0x8daf8c42 dql_init +EXPORT_SYMBOL vmlinux 0x8dbb44b2 register_framebuffer +EXPORT_SYMBOL vmlinux 0x8dcd5811 security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0x8dd93115 bdi_init +EXPORT_SYMBOL vmlinux 0x8de7fbee amd_iommu_flush_tlb +EXPORT_SYMBOL vmlinux 0x8df6c16d seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x8df92f66 memchr_inv +EXPORT_SYMBOL vmlinux 0x8dfa3020 dev_get_stats +EXPORT_SYMBOL vmlinux 0x8e002cda acpi_remove_gpe_block +EXPORT_SYMBOL vmlinux 0x8e063aa2 scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x8e3128d9 bitmap_startwrite +EXPORT_SYMBOL vmlinux 0x8e332829 flush_delayed_work +EXPORT_SYMBOL vmlinux 0x8e5221d5 __blk_end_request +EXPORT_SYMBOL vmlinux 0x8e62a92f ilookup +EXPORT_SYMBOL vmlinux 0x8e7202cc input_free_device +EXPORT_SYMBOL vmlinux 0x8e7feffd devm_gpiod_put +EXPORT_SYMBOL vmlinux 0x8e864a86 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x8ead934d blk_end_request_cur +EXPORT_SYMBOL vmlinux 0x8eaf2a5f vga_switcheroo_unregister_handler +EXPORT_SYMBOL vmlinux 0x8ec5a6eb d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0x8f132be4 devm_ioremap_nocache +EXPORT_SYMBOL vmlinux 0x8f1c714e dquot_quota_sync +EXPORT_SYMBOL vmlinux 0x8f252d5c tcf_hash_destroy +EXPORT_SYMBOL vmlinux 0x8f2703b7 wbinvd_on_all_cpus +EXPORT_SYMBOL vmlinux 0x8f30455a netdev_features_change +EXPORT_SYMBOL vmlinux 0x8f30a1c2 key_task_permission +EXPORT_SYMBOL vmlinux 0x8f428c26 scsi_register_interface +EXPORT_SYMBOL vmlinux 0x8f636608 inode_sub_rsv_space +EXPORT_SYMBOL vmlinux 0x8f64d074 iterate_dir +EXPORT_SYMBOL vmlinux 0x8f72ca3e i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0x8f94f0d7 scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x8f9c199c __get_user_2 +EXPORT_SYMBOL vmlinux 0x8faf539d block_truncate_page +EXPORT_SYMBOL vmlinux 0x8fb8ec33 blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0x8fc84780 kernel_recvmsg +EXPORT_SYMBOL vmlinux 0x8fe48b08 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x8fe55545 unmap_mapping_range +EXPORT_SYMBOL vmlinux 0x8ffedff7 inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x900de3da jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0x902ade8b kill_litter_super +EXPORT_SYMBOL vmlinux 0x902c119f gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0x904409c6 acpi_set_firmware_waking_vector +EXPORT_SYMBOL vmlinux 0x90565d3d d_instantiate_unique +EXPORT_SYMBOL vmlinux 0x90585636 posix_lock_file +EXPORT_SYMBOL vmlinux 0x90586e31 blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0x907178b3 dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0x90866db4 follow_pfn +EXPORT_SYMBOL vmlinux 0x908b53ed param_set_short +EXPORT_SYMBOL vmlinux 0x90a05548 d_invalidate +EXPORT_SYMBOL vmlinux 0x90b0e050 security_path_link +EXPORT_SYMBOL vmlinux 0x90b97e75 mpage_writepages +EXPORT_SYMBOL vmlinux 0x90bb200d dma_common_get_sgtable +EXPORT_SYMBOL vmlinux 0x90c8f208 dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0x90da5239 tty_throttle +EXPORT_SYMBOL vmlinux 0x90f8275b tcp_release_cb +EXPORT_SYMBOL vmlinux 0x9105eb4d sock_wake_async +EXPORT_SYMBOL vmlinux 0x9107d480 devm_iounmap +EXPORT_SYMBOL vmlinux 0x9144a8e2 ec_burst_disable +EXPORT_SYMBOL vmlinux 0x91463b1d kstrtos16 +EXPORT_SYMBOL vmlinux 0x91607d95 set_memory_wb +EXPORT_SYMBOL vmlinux 0x9166fada strncpy +EXPORT_SYMBOL vmlinux 0x91715312 sprintf +EXPORT_SYMBOL vmlinux 0x91774571 filemap_flush +EXPORT_SYMBOL vmlinux 0x91967e8e xen_selfballoon_init +EXPORT_SYMBOL vmlinux 0x919becbd crypto_sha512_update +EXPORT_SYMBOL vmlinux 0x91a3cdf4 down_timeout +EXPORT_SYMBOL vmlinux 0x91ac822f vscnprintf +EXPORT_SYMBOL vmlinux 0x91ced5a9 dmam_free_noncoherent +EXPORT_SYMBOL vmlinux 0x91ec834b xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0x91f2a820 names_cachep +EXPORT_SYMBOL vmlinux 0x91f90700 security_path_truncate +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x9241c1d7 dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0x924e985c genphy_read_status +EXPORT_SYMBOL vmlinux 0x925520d2 blk_start_plug +EXPORT_SYMBOL vmlinux 0x9264b29c mount_ns +EXPORT_SYMBOL vmlinux 0x926f55a4 nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x9286934c dev_remove_pack +EXPORT_SYMBOL vmlinux 0x928d6e48 phy_ethtool_gset +EXPORT_SYMBOL vmlinux 0x928ec7d0 phy_connect_direct +EXPORT_SYMBOL vmlinux 0x9291cd3b memdup_user +EXPORT_SYMBOL vmlinux 0x92a9c60c time_to_tm +EXPORT_SYMBOL vmlinux 0x92ae1f74 current_task +EXPORT_SYMBOL vmlinux 0x92b18ba9 mmc_can_reset +EXPORT_SYMBOL vmlinux 0x92be618b acpi_bus_unregister_driver +EXPORT_SYMBOL vmlinux 0x92d050df iov_pages +EXPORT_SYMBOL vmlinux 0x92d786a2 secpath_dup +EXPORT_SYMBOL vmlinux 0x92ddd08e scsi_scan_host +EXPORT_SYMBOL vmlinux 0x92edd0f5 tcp_disconnect +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x93262ba1 netdev_emerg +EXPORT_SYMBOL vmlinux 0x9327f5ce _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0x932e7a38 kern_path_create +EXPORT_SYMBOL vmlinux 0x93448c57 screen_info +EXPORT_SYMBOL vmlinux 0x9361d51e simple_link +EXPORT_SYMBOL vmlinux 0x93691328 account_page_writeback +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93ac14dc init_net +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93b89f4c mutex_trylock +EXPORT_SYMBOL vmlinux 0x93b92759 fb_set_cmap +EXPORT_SYMBOL vmlinux 0x93c209f9 udp_poll +EXPORT_SYMBOL vmlinux 0x93f3e52b acpi_extract_package +EXPORT_SYMBOL vmlinux 0x93fca811 __get_free_pages +EXPORT_SYMBOL vmlinux 0x9405f08c get_thermal_instance +EXPORT_SYMBOL vmlinux 0x9407f790 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0x94250b83 amd_northbridges +EXPORT_SYMBOL vmlinux 0x9432e15c kern_unmount +EXPORT_SYMBOL vmlinux 0x94411412 remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x945b98b9 gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0x94601923 scsi_allocate_command +EXPORT_SYMBOL vmlinux 0x947f950b xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x949654d6 netdev_notify_peers +EXPORT_SYMBOL vmlinux 0x949bfd58 alloc_disk_node +EXPORT_SYMBOL vmlinux 0x94a9bda3 ipv6_push_nfrag_opts +EXPORT_SYMBOL vmlinux 0x94defbbb pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0x9508f166 param_ops_bint +EXPORT_SYMBOL vmlinux 0x95097686 dev_printk +EXPORT_SYMBOL vmlinux 0x953413ae phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0x95395301 acpi_exception +EXPORT_SYMBOL vmlinux 0x95431691 rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x95c9998e user_path_at +EXPORT_SYMBOL vmlinux 0x95e9da74 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0x95f89a33 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x961b0ffc cdev_del +EXPORT_SYMBOL vmlinux 0x962c2441 sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x96907591 kblockd_schedule_delayed_work +EXPORT_SYMBOL vmlinux 0x969c0f35 acpi_processor_unregister_performance +EXPORT_SYMBOL vmlinux 0x96b29254 strncasecmp +EXPORT_SYMBOL vmlinux 0x96c62a92 con_copy_unimap +EXPORT_SYMBOL vmlinux 0x96cbcc81 ipmi_get_version +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96d4573c blk_init_tags +EXPORT_SYMBOL vmlinux 0x97059d9d abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0x970a8156 tcp_init_cgroup +EXPORT_SYMBOL vmlinux 0x97215838 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0x9725b589 proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0x972702e1 dquot_commit +EXPORT_SYMBOL vmlinux 0x973fa82e register_acpi_notifier +EXPORT_SYMBOL vmlinux 0x9749f023 __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x9751e140 find_get_page +EXPORT_SYMBOL vmlinux 0x9754ec10 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x97868aef __kfifo_alloc +EXPORT_SYMBOL vmlinux 0x9791e02f d_genocide +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x979ccb0d blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0x97a60e3d param_get_bool +EXPORT_SYMBOL vmlinux 0x97c5bd0a acpi_unload_parent_table +EXPORT_SYMBOL vmlinux 0x97c5e2ac tty_port_close_end +EXPORT_SYMBOL vmlinux 0x97cf3446 register_gifconf +EXPORT_SYMBOL vmlinux 0x97de0ddd acpi_install_gpe_block +EXPORT_SYMBOL vmlinux 0x97ebdc56 backlight_device_register +EXPORT_SYMBOL vmlinux 0x9815f5f6 new_inode +EXPORT_SYMBOL vmlinux 0x9820b644 warn_slowpath_fmt_taint +EXPORT_SYMBOL vmlinux 0x98276663 serio_reconnect +EXPORT_SYMBOL vmlinux 0x9829fc11 __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0x982f28dd tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0x983848b8 __blk_run_queue +EXPORT_SYMBOL vmlinux 0x983b3755 pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x984668dc __pskb_copy +EXPORT_SYMBOL vmlinux 0x985df603 generic_read_dir +EXPORT_SYMBOL vmlinux 0x986bc54c pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0x986e6135 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x98799fd9 pm860x_page_set_bits +EXPORT_SYMBOL vmlinux 0x988da6be agp_put_bridge +EXPORT_SYMBOL vmlinux 0x988ed85d set_memory_x +EXPORT_SYMBOL vmlinux 0x989e8ef8 register_console +EXPORT_SYMBOL vmlinux 0x98a0a20b jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0x98c9da15 __wait_on_buffer +EXPORT_SYMBOL vmlinux 0x98cff4e0 bdevname +EXPORT_SYMBOL vmlinux 0x98de0519 from_kgid_munged +EXPORT_SYMBOL vmlinux 0x98e4e0e4 do_splice_from +EXPORT_SYMBOL vmlinux 0x98fa21b0 mod_timer_pinned +EXPORT_SYMBOL vmlinux 0x9917c2c4 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0x99195078 vsnprintf +EXPORT_SYMBOL vmlinux 0x993f59c7 qdisc_watchdog_schedule_ns +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x99591a7a ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x99665672 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x99847377 bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0x998af7e2 scsi_target_resume +EXPORT_SYMBOL vmlinux 0x998f5092 commit_creds +EXPORT_SYMBOL vmlinux 0x9994c0ca ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x999b7f71 dst_discard +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99cdc86b sysctl_tcp_reordering +EXPORT_SYMBOL vmlinux 0x99d3a43c dm_table_get_size +EXPORT_SYMBOL vmlinux 0x99daa9bf try_offline_node +EXPORT_SYMBOL vmlinux 0x99e31a25 vfs_mknod +EXPORT_SYMBOL vmlinux 0x99eba88a __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0x99f068d5 x86_cpu_to_node_map +EXPORT_SYMBOL vmlinux 0x99f3fa7b blk_mq_init_commands +EXPORT_SYMBOL vmlinux 0x99f6f200 registered_fb +EXPORT_SYMBOL vmlinux 0x9a0432c3 dquot_enable +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a1fc4b4 jiffies_to_timeval +EXPORT_SYMBOL vmlinux 0x9a226e24 udp_lib_rehash +EXPORT_SYMBOL vmlinux 0x9a2acc5c check_submounts_and_drop +EXPORT_SYMBOL vmlinux 0x9a479a72 nf_register_hooks +EXPORT_SYMBOL vmlinux 0x9a5ffc64 __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x9a746c3b dev_change_carrier +EXPORT_SYMBOL vmlinux 0x9a7a9595 bdget +EXPORT_SYMBOL vmlinux 0x9a8fd93f dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0x9ab13ea1 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x9ab90172 nf_register_hook +EXPORT_SYMBOL vmlinux 0x9abce85c blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0x9af89f98 memcpy_fromiovec +EXPORT_SYMBOL vmlinux 0x9afc8c8e invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x9b020f55 remap_pfn_range +EXPORT_SYMBOL vmlinux 0x9b1b40f9 blk_recount_segments +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b388444 get_zeroed_page +EXPORT_SYMBOL vmlinux 0x9b629c52 ipmi_get_smi_info +EXPORT_SYMBOL vmlinux 0x9b6e3e94 create_empty_buffers +EXPORT_SYMBOL vmlinux 0x9b75cb81 _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x9b7aeae3 ip_options_compile +EXPORT_SYMBOL vmlinux 0x9b8c6bbc jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0x9b97c385 inet_dgram_ops +EXPORT_SYMBOL vmlinux 0x9b9e05f9 alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0x9ba7089d argv_split +EXPORT_SYMBOL vmlinux 0x9bad81b8 padata_start +EXPORT_SYMBOL vmlinux 0x9bc1e197 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0x9bc65fb4 nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0x9be7bde4 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x9c247f5c blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x9c2afe65 seq_release +EXPORT_SYMBOL vmlinux 0x9c313ae7 ip_cmsg_recv +EXPORT_SYMBOL vmlinux 0x9c382d43 dev_uc_del +EXPORT_SYMBOL vmlinux 0x9c3c2c50 pnp_disable_dev +EXPORT_SYMBOL vmlinux 0x9c41d70c tty_port_open +EXPORT_SYMBOL vmlinux 0x9c491f60 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x9c859f92 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cd27692 tcp_gro_receive +EXPORT_SYMBOL vmlinux 0x9cd6bdb1 netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0x9cfd56c5 scsi_print_status +EXPORT_SYMBOL vmlinux 0x9d05da80 seq_lseek +EXPORT_SYMBOL vmlinux 0x9d05f6c4 ktime_get_clocktai +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d181f46 page_symlink +EXPORT_SYMBOL vmlinux 0x9d1a5e3a __memcpy +EXPORT_SYMBOL vmlinux 0x9d33ef5e acpi_enable +EXPORT_SYMBOL vmlinux 0x9d3aa376 blk_iopoll_init +EXPORT_SYMBOL vmlinux 0x9d424a69 bio_unmap_user +EXPORT_SYMBOL vmlinux 0x9d442502 __mutex_init +EXPORT_SYMBOL vmlinux 0x9d5dd638 input_unregister_handler +EXPORT_SYMBOL vmlinux 0x9d814e54 agp_free_page_array +EXPORT_SYMBOL vmlinux 0x9da6a6d3 skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x9dd59bf6 tcp_prot +EXPORT_SYMBOL vmlinux 0x9dda6d1d scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x9dfa5012 posix_test_lock +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e1147be dev_get_by_index +EXPORT_SYMBOL vmlinux 0x9e2f8c90 lz4_decompress_unknownoutputsize +EXPORT_SYMBOL vmlinux 0x9e363b6b acpi_disable_gpe +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e64fbfe rtc_cmos_read +EXPORT_SYMBOL vmlinux 0x9e706d74 pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0x9e7d6bd0 __udelay +EXPORT_SYMBOL vmlinux 0x9e8c2e56 cad_pid +EXPORT_SYMBOL vmlinux 0x9e9f1714 __bitmap_andnot +EXPORT_SYMBOL vmlinux 0x9ea0ad49 __sg_free_table +EXPORT_SYMBOL vmlinux 0x9ebd4c04 adjust_resource +EXPORT_SYMBOL vmlinux 0x9ebe2401 pnp_release_card_device +EXPORT_SYMBOL vmlinux 0x9ed2eec7 param_set_ushort +EXPORT_SYMBOL vmlinux 0x9ed67efc jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x9eee94b6 locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x9f14c292 mutex_unlock +EXPORT_SYMBOL vmlinux 0x9f1ca3b6 seq_path +EXPORT_SYMBOL vmlinux 0x9f2bdaac __bitmap_or +EXPORT_SYMBOL vmlinux 0x9f411995 scsi_init_io +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f6e19ab mem_section +EXPORT_SYMBOL vmlinux 0x9f72f784 udp_ioctl +EXPORT_SYMBOL vmlinux 0x9f8f80e0 udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0x9f92adf4 kset_register +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9fa69095 inode_needs_sync +EXPORT_SYMBOL vmlinux 0x9fa721a9 pci_request_region +EXPORT_SYMBOL vmlinux 0x9fab8afe genphy_config_aneg +EXPORT_SYMBOL vmlinux 0x9fadda27 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0x9fc73cef d_set_d_op +EXPORT_SYMBOL vmlinux 0x9fd20713 cdrom_check_events +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0x9ffceb28 pci_disable_link_state +EXPORT_SYMBOL vmlinux 0xa0079534 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0xa0090a89 qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0xa00aca2a dql_completed +EXPORT_SYMBOL vmlinux 0xa01d3aab iget_locked +EXPORT_SYMBOL vmlinux 0xa01ee67f dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0xa02c2d80 mmc_put_card +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa04a01bd qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xa04f0d0b pskb_expand_head +EXPORT_SYMBOL vmlinux 0xa052bfe5 fb_find_mode +EXPORT_SYMBOL vmlinux 0xa05ab6ed pneigh_enqueue +EXPORT_SYMBOL vmlinux 0xa05c03df mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xa05f372e seq_printf +EXPORT_SYMBOL vmlinux 0xa07a37f0 memchr +EXPORT_SYMBOL vmlinux 0xa07ed110 xz_dec_init +EXPORT_SYMBOL vmlinux 0xa0834a47 gen_pool_free +EXPORT_SYMBOL vmlinux 0xa0a230c5 gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0ceef51 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa0ff74d6 udp_memory_allocated +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa116be11 get_fs_type +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa12decc5 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0xa14f3d8c ewma_add +EXPORT_SYMBOL vmlinux 0xa15d734a mb_cache_shrink +EXPORT_SYMBOL vmlinux 0xa162ccd7 have_submounts +EXPORT_SYMBOL vmlinux 0xa18b27f8 dquot_quota_off +EXPORT_SYMBOL vmlinux 0xa18bc56d pci_dev_put +EXPORT_SYMBOL vmlinux 0xa1987a63 mmc_erase +EXPORT_SYMBOL vmlinux 0xa19b83fe __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0xa1b759ce fb_add_videomode +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1caa76c __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0xa1d771f5 km_policy_expired +EXPORT_SYMBOL vmlinux 0xa1db7223 pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0xa1dd70bb sock_no_mmap +EXPORT_SYMBOL vmlinux 0xa1e8fa81 tty_unlock +EXPORT_SYMBOL vmlinux 0xa1eb7819 d_lookup +EXPORT_SYMBOL vmlinux 0xa202a8e5 kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0xa20ce1b8 net_msg_warn +EXPORT_SYMBOL vmlinux 0xa22a4aae security_inode_init_security +EXPORT_SYMBOL vmlinux 0xa2354cb0 amd_iommu_domain_enable_v2 +EXPORT_SYMBOL vmlinux 0xa2848c50 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0xa28a2ace ipmi_set_gets_events +EXPORT_SYMBOL vmlinux 0xa29176fc mmc_start_bkops +EXPORT_SYMBOL vmlinux 0xa29496a9 d_obtain_alias +EXPORT_SYMBOL vmlinux 0xa2a98b91 ipmi_get_maintenance_mode +EXPORT_SYMBOL vmlinux 0xa2e3efe3 mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xa2ec7ad4 get_super +EXPORT_SYMBOL vmlinux 0xa2ef34d7 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xa30ccc81 get_super_thawed +EXPORT_SYMBOL vmlinux 0xa336b6e8 locks_copy_lock +EXPORT_SYMBOL vmlinux 0xa33fc592 __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0xa350a8f8 set_memory_array_uc +EXPORT_SYMBOL vmlinux 0xa35de80f ipv4_config +EXPORT_SYMBOL vmlinux 0xa3933adf mmc_stop_bkops +EXPORT_SYMBOL vmlinux 0xa39bf518 blk_queue_softirq_done +EXPORT_SYMBOL vmlinux 0xa3a77c69 down_read_trylock +EXPORT_SYMBOL vmlinux 0xa3a8c743 lock_may_read +EXPORT_SYMBOL vmlinux 0xa3a98809 pci_map_biosrom +EXPORT_SYMBOL vmlinux 0xa3c854ff bio_map_user +EXPORT_SYMBOL vmlinux 0xa3d52d58 dquot_drop +EXPORT_SYMBOL vmlinux 0xa3de172a phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0xa3e4748a sock_setsockopt +EXPORT_SYMBOL vmlinux 0xa3f1b90f xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0xa3f46bcd vga_get +EXPORT_SYMBOL vmlinux 0xa3f96685 wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0xa3fc3d50 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0xa400159f crc32_be +EXPORT_SYMBOL vmlinux 0xa4164902 xfrm_unregister_mode +EXPORT_SYMBOL vmlinux 0xa4476905 buffer_migrate_page +EXPORT_SYMBOL vmlinux 0xa44db436 xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0xa4511467 crc16 +EXPORT_SYMBOL vmlinux 0xa45118af __sb_start_write +EXPORT_SYMBOL vmlinux 0xa4701e9e timekeeping_inject_offset +EXPORT_SYMBOL vmlinux 0xa474e029 bio_integrity_prep +EXPORT_SYMBOL vmlinux 0xa47b6163 ata_dev_printk +EXPORT_SYMBOL vmlinux 0xa47c4290 netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0xa483216e mntput +EXPORT_SYMBOL vmlinux 0xa48eece7 kill_anon_super +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa4bb3fc3 inet_sendmsg +EXPORT_SYMBOL vmlinux 0xa4bda375 balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0xa4c0efad tcp_prequeue +EXPORT_SYMBOL vmlinux 0xa4cf68fb inode_init_owner +EXPORT_SYMBOL vmlinux 0xa4d4f0e6 global_cache_flush +EXPORT_SYMBOL vmlinux 0xa4e0e781 netlink_ack +EXPORT_SYMBOL vmlinux 0xa4fd49b7 seq_bitmap +EXPORT_SYMBOL vmlinux 0xa50a111e inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0xa518452a md_write_start +EXPORT_SYMBOL vmlinux 0xa51df2b4 down_killable +EXPORT_SYMBOL vmlinux 0xa520ac90 dquot_alloc +EXPORT_SYMBOL vmlinux 0xa5355d91 generic_file_mmap +EXPORT_SYMBOL vmlinux 0xa5387eee set_groups +EXPORT_SYMBOL vmlinux 0xa54543f2 serio_close +EXPORT_SYMBOL vmlinux 0xa5483600 kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa55943f3 ps2_handle_ack +EXPORT_SYMBOL vmlinux 0xa56b58ba wait_on_sync_kiocb +EXPORT_SYMBOL vmlinux 0xa56c2692 generic_show_options +EXPORT_SYMBOL vmlinux 0xa57ce8ae inet6_register_protosw +EXPORT_SYMBOL vmlinux 0xa587fd16 blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0xa58a3166 lg_local_lock +EXPORT_SYMBOL vmlinux 0xa598e29c vesa_modes +EXPORT_SYMBOL vmlinux 0xa5a459d6 skb_queue_purge +EXPORT_SYMBOL vmlinux 0xa5bc09fd neigh_ifdown +EXPORT_SYMBOL vmlinux 0xa5e4f65c __next_cpu_nr +EXPORT_SYMBOL vmlinux 0xa5ea6d8b agp_generic_free_gatt_table +EXPORT_SYMBOL vmlinux 0xa60cae74 inet_frags_init +EXPORT_SYMBOL vmlinux 0xa6214a53 sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0xa63a2f9b param_get_ulong +EXPORT_SYMBOL vmlinux 0xa63bde37 max8925_reg_read +EXPORT_SYMBOL vmlinux 0xa63c4652 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0xa63d85ab slhc_remember +EXPORT_SYMBOL vmlinux 0xa64434d6 __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0xa660b49d build_skb +EXPORT_SYMBOL vmlinux 0xa6715115 do_settimeofday +EXPORT_SYMBOL vmlinux 0xa675804c utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0xa67d7f6f xen_biovec_phys_mergeable +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa688bbd1 mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0xa69a557b alloc_fcdev +EXPORT_SYMBOL vmlinux 0xa69caeee inet_add_offload +EXPORT_SYMBOL vmlinux 0xa6a8b8be compat_sock_get_timestampns +EXPORT_SYMBOL vmlinux 0xa6ac0773 __devm_request_region +EXPORT_SYMBOL vmlinux 0xa6bd63ca acpi_bios_error +EXPORT_SYMBOL vmlinux 0xa6c966e2 sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xa6f5814e jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0xa70e9678 request_key_async_with_auxdata +EXPORT_SYMBOL vmlinux 0xa70fabbe release_evntsel_nmi +EXPORT_SYMBOL vmlinux 0xa72a0f5b nr_online_nodes +EXPORT_SYMBOL vmlinux 0xa72a581b security_path_rmdir +EXPORT_SYMBOL vmlinux 0xa735db59 prandom_u32 +EXPORT_SYMBOL vmlinux 0xa7b81a10 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0xa7d6a5c9 pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0xa8134072 xfrm_garbage_collect +EXPORT_SYMBOL vmlinux 0xa8232c78 strtobool +EXPORT_SYMBOL vmlinux 0xa82e3a74 pnp_register_card_driver +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa845c835 simple_rmdir +EXPORT_SYMBOL vmlinux 0xa84760f3 scsi_rescan_device +EXPORT_SYMBOL vmlinux 0xa8721b97 system_state +EXPORT_SYMBOL vmlinux 0xa872b68c neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0xa8917b51 vsc824x_add_skew +EXPORT_SYMBOL vmlinux 0xa8943d7b locks_remove_posix +EXPORT_SYMBOL vmlinux 0xa896fcca pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0xa8a2b6ef mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0xa8a6f639 __check_region +EXPORT_SYMBOL vmlinux 0xa8a9fcf8 blk_fetch_request +EXPORT_SYMBOL vmlinux 0xa8ac8c16 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0xa8b79892 bio_copy_kern +EXPORT_SYMBOL vmlinux 0xa8b8b3ed truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0xa8fef7bb security_unix_may_send +EXPORT_SYMBOL vmlinux 0xa906180b acpi_gpiochip_free_interrupts +EXPORT_SYMBOL vmlinux 0xa916b694 strnlen +EXPORT_SYMBOL vmlinux 0xa91931f9 tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0xa91b5561 acpi_video_backlight_support +EXPORT_SYMBOL vmlinux 0xa91de6ca always_delete_dentry +EXPORT_SYMBOL vmlinux 0xa923aa2d ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0xa92daaf8 security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0xa9419d60 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0xa95d3cdb gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0xa9649ba3 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0xa96dbcb4 agp_alloc_page_array +EXPORT_SYMBOL vmlinux 0xa981fa2d iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0xa9a73671 genlmsg_put +EXPORT_SYMBOL vmlinux 0xa9a8e17f arch_phys_wc_add +EXPORT_SYMBOL vmlinux 0xa9b2f8cc serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0xa9b3698b pcim_iounmap +EXPORT_SYMBOL vmlinux 0xa9b657df pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0xa9ba82d0 ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0xa9bd2676 __vmalloc +EXPORT_SYMBOL vmlinux 0xa9d8f55e ida_simple_remove +EXPORT_SYMBOL vmlinux 0xa9e9b156 mmc_can_sanitize +EXPORT_SYMBOL vmlinux 0xa9f8ca93 swiotlb_dma_supported +EXPORT_SYMBOL vmlinux 0xaa0073b7 __net_get_random_once +EXPORT_SYMBOL vmlinux 0xaa434bca vga_switcheroo_unregister_client +EXPORT_SYMBOL vmlinux 0xaa59172c phy_register_fixup +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa752986 mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0xaa7d3e0e inet_bind +EXPORT_SYMBOL vmlinux 0xaa9087c0 param_ops_string +EXPORT_SYMBOL vmlinux 0xaaa3b254 mutex_lock +EXPORT_SYMBOL vmlinux 0xaac7c31e tcp_setsockopt +EXPORT_SYMBOL vmlinux 0xaace6c02 ilookup5 +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaae43b54 __generic_block_fiemap +EXPORT_SYMBOL vmlinux 0xaae8ab0e acpi_bus_power_manageable +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab1d30cf __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0xab2abddf dma_spin_lock +EXPORT_SYMBOL vmlinux 0xab33d113 mmc_request_done +EXPORT_SYMBOL vmlinux 0xab3e8a80 key_type_keyring +EXPORT_SYMBOL vmlinux 0xab3ef414 prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0xab4604fb xfrm_state_walk +EXPORT_SYMBOL vmlinux 0xab600421 probe_irq_off +EXPORT_SYMBOL vmlinux 0xab65ed80 set_memory_uc +EXPORT_SYMBOL vmlinux 0xab6bde28 sysctl_max_syn_backlog +EXPORT_SYMBOL vmlinux 0xab770678 rdmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab7c13de vfs_open +EXPORT_SYMBOL vmlinux 0xab9c5d81 tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0xaba38961 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0xabaef606 dev_add_offload +EXPORT_SYMBOL vmlinux 0xabaf162b mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0xabb18fb8 scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0xabc6dd63 cpufreq_sysfs_create_file +EXPORT_SYMBOL vmlinux 0xabcaa577 free_anon_bdev +EXPORT_SYMBOL vmlinux 0xabd0c91c rtc_time_to_tm +EXPORT_SYMBOL vmlinux 0xabeb8c3c dma_async_memcpy_buf_to_pg +EXPORT_SYMBOL vmlinux 0xabeefa30 scsi_adjust_queue_depth +EXPORT_SYMBOL vmlinux 0xabfa2fe9 acpi_bus_register_driver +EXPORT_SYMBOL vmlinux 0xac05c45d pv_cpu_ops +EXPORT_SYMBOL vmlinux 0xac0ba8c1 blk_iopoll_disable +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac22a903 netif_skb_dev_features +EXPORT_SYMBOL vmlinux 0xac3d20e2 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xac58ea5e acpi_unload_table_id +EXPORT_SYMBOL vmlinux 0xac643e23 set_bdi_congested +EXPORT_SYMBOL vmlinux 0xac91d951 jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xaccabc6a in4_pton +EXPORT_SYMBOL vmlinux 0xace1a41b dev_set_drvdata +EXPORT_SYMBOL vmlinux 0xace266d4 pcim_enable_device +EXPORT_SYMBOL vmlinux 0xace29cb8 agp_generic_destroy_pages +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xad01744f kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad13c689 acpi_os_execute +EXPORT_SYMBOL vmlinux 0xad164875 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xad19fd76 elevator_change +EXPORT_SYMBOL vmlinux 0xad297522 dev_warn +EXPORT_SYMBOL vmlinux 0xad2a8bd2 x86_bios_cpu_apicid +EXPORT_SYMBOL vmlinux 0xad3c403a kernel_setsockopt +EXPORT_SYMBOL vmlinux 0xad4b6dcd skb_kill_datagram +EXPORT_SYMBOL vmlinux 0xad4fc78e con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xad823984 insert_inode_locked +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad851e63 scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0xada77c53 mdiobus_register +EXPORT_SYMBOL vmlinux 0xadc31e1b bio_reset +EXPORT_SYMBOL vmlinux 0xae02d065 pci_dev_get +EXPORT_SYMBOL vmlinux 0xae4d23cc generic_file_direct_write +EXPORT_SYMBOL vmlinux 0xae729e59 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xae7ee164 padata_free +EXPORT_SYMBOL vmlinux 0xae9d3e8e skb_pad +EXPORT_SYMBOL vmlinux 0xae9fea95 try_to_release_page +EXPORT_SYMBOL vmlinux 0xaea976a8 acpi_check_resource_conflict +EXPORT_SYMBOL vmlinux 0xaed2ee9d mfd_remove_devices +EXPORT_SYMBOL vmlinux 0xaed84047 proc_create_data +EXPORT_SYMBOL vmlinux 0xaef2d935 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0xaeff0b66 i2c_release_client +EXPORT_SYMBOL vmlinux 0xaf0bd94f blk_mq_can_queue +EXPORT_SYMBOL vmlinux 0xaf165c54 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0xaf3d6c53 simple_transaction_get +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf500ec9 __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0xaf587b52 amd_iommu_flush_page +EXPORT_SYMBOL vmlinux 0xaf5b2481 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0xaf611eac amd_nb_misc_ids +EXPORT_SYMBOL vmlinux 0xaf64ad0d zlib_deflate +EXPORT_SYMBOL vmlinux 0xaf6ae696 kstrndup +EXPORT_SYMBOL vmlinux 0xaf72af50 eth_rebuild_header +EXPORT_SYMBOL vmlinux 0xaf84a858 nlmsg_notify +EXPORT_SYMBOL vmlinux 0xaf8ba645 init_special_inode +EXPORT_SYMBOL vmlinux 0xaf91d89f __kernel_param_lock +EXPORT_SYMBOL vmlinux 0xafad493b param_ops_ushort +EXPORT_SYMBOL vmlinux 0xafb1d525 n_tty_compat_ioctl_helper +EXPORT_SYMBOL vmlinux 0xafb8c6ff copy_user_generic_string +EXPORT_SYMBOL vmlinux 0xafd5ff2c amd_iommu_v2_supported +EXPORT_SYMBOL vmlinux 0xafe42aad generic_fillattr +EXPORT_SYMBOL vmlinux 0xaff22802 tcf_destroy_chain +EXPORT_SYMBOL vmlinux 0xb001a0f8 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0xb01b1db8 intel_gtt_insert_sg_entries +EXPORT_SYMBOL vmlinux 0xb0314b7c tcp_seq_open +EXPORT_SYMBOL vmlinux 0xb0390fbe kill_pgrp +EXPORT_SYMBOL vmlinux 0xb0403f16 vfs_fsync +EXPORT_SYMBOL vmlinux 0xb0455ede scsi_put_command +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb0608310 pci_bus_get +EXPORT_SYMBOL vmlinux 0xb06de2a2 skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0xb07a8288 gen10g_restart_aneg +EXPORT_SYMBOL vmlinux 0xb085901f __devm_release_region +EXPORT_SYMBOL vmlinux 0xb0973eaf swiotlb_map_sg +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0b847ac __bitmap_full +EXPORT_SYMBOL vmlinux 0xb0c58332 pci_read_vpd +EXPORT_SYMBOL vmlinux 0xb0d94c01 pcim_iomap_table +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0e602eb memmove +EXPORT_SYMBOL vmlinux 0xb0ffda2f blk_limits_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xb10f96fc skb_append_datato_frags +EXPORT_SYMBOL vmlinux 0xb11d8a9d do_splice_to +EXPORT_SYMBOL vmlinux 0xb121390a probe_irq_on +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb1341111 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0xb138c1af inet_listen +EXPORT_SYMBOL vmlinux 0xb138d0bf dm_ratelimit_state +EXPORT_SYMBOL vmlinux 0xb1645a2e sg_free_table +EXPORT_SYMBOL vmlinux 0xb1885321 tty_set_operations +EXPORT_SYMBOL vmlinux 0xb18d4cdc follow_up +EXPORT_SYMBOL vmlinux 0xb19760c3 bitmap_onto +EXPORT_SYMBOL vmlinux 0xb198482d scsi_free_command +EXPORT_SYMBOL vmlinux 0xb199ff47 dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0xb1b42470 idr_init +EXPORT_SYMBOL vmlinux 0xb1bc6c11 crypto_sha1_update +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1cad6c8 jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0xb1cf44df fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xb1cfad22 rdmsr_on_cpu +EXPORT_SYMBOL vmlinux 0xb1d4fc52 sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0xb1db3ff6 ipv4_specific +EXPORT_SYMBOL vmlinux 0xb1db9e4e param_get_invbool +EXPORT_SYMBOL vmlinux 0xb20ecf88 acpi_run_osc +EXPORT_SYMBOL vmlinux 0xb219d56c wbinvd_on_cpu +EXPORT_SYMBOL vmlinux 0xb21fb61d pci_unregister_driver +EXPORT_SYMBOL vmlinux 0xb226ac81 vga_switcheroo_init_domain_pm_ops +EXPORT_SYMBOL vmlinux 0xb22b4f3e sock_no_accept +EXPORT_SYMBOL vmlinux 0xb23d81e7 dev_printk_emit +EXPORT_SYMBOL vmlinux 0xb24ca2f5 vga_switcheroo_set_dynamic_switch +EXPORT_SYMBOL vmlinux 0xb25c67f3 pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0xb2682405 utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0xb279e442 dentry_update_name_case +EXPORT_SYMBOL vmlinux 0xb27f8339 skb_make_writable +EXPORT_SYMBOL vmlinux 0xb27fa16f netpoll_parse_options +EXPORT_SYMBOL vmlinux 0xb287ff70 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0xb2a77797 register_netdevice +EXPORT_SYMBOL vmlinux 0xb2b689ec seq_write +EXPORT_SYMBOL vmlinux 0xb2be6e92 netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xb2e08e7b lg_local_unlock_cpu +EXPORT_SYMBOL vmlinux 0xb2e70321 ps2_end_command +EXPORT_SYMBOL vmlinux 0xb2f74fb6 intel_gmch_remove +EXPORT_SYMBOL vmlinux 0xb2fd5ceb __put_user_4 +EXPORT_SYMBOL vmlinux 0xb305525a __neigh_create +EXPORT_SYMBOL vmlinux 0xb3115b59 vfs_rename +EXPORT_SYMBOL vmlinux 0xb316f709 default_file_splice_read +EXPORT_SYMBOL vmlinux 0xb3272fa8 path_get +EXPORT_SYMBOL vmlinux 0xb3284531 acpi_dbg_layer +EXPORT_SYMBOL vmlinux 0xb33964f0 fget_raw +EXPORT_SYMBOL vmlinux 0xb33a9cc3 tty_register_driver +EXPORT_SYMBOL vmlinux 0xb352177e find_first_bit +EXPORT_SYMBOL vmlinux 0xb3620c54 __lru_cache_add +EXPORT_SYMBOL vmlinux 0xb36c6207 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0xb3b1168f md_set_array_sectors +EXPORT_SYMBOL vmlinux 0xb3efa246 bdev_stack_limits +EXPORT_SYMBOL vmlinux 0xb3f6993a ip6_route_output +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb400cfdd netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0xb419de30 agp_generic_enable +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb426ed2d sync_inode_metadata +EXPORT_SYMBOL vmlinux 0xb431e9d8 pci_choose_state +EXPORT_SYMBOL vmlinux 0xb4709322 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0xb47189b5 reservation_ww_class +EXPORT_SYMBOL vmlinux 0xb47220ec bdgrab +EXPORT_SYMBOL vmlinux 0xb4741279 arch_debugfs_dir +EXPORT_SYMBOL vmlinux 0xb47e836f jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0xb48573b4 dput +EXPORT_SYMBOL vmlinux 0xb4b6bbb0 give_up_console +EXPORT_SYMBOL vmlinux 0xb4baa021 __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0xb4ced641 bd_set_size +EXPORT_SYMBOL vmlinux 0xb4e1230d ip_route_input_noref +EXPORT_SYMBOL vmlinux 0xb5030273 bioset_create +EXPORT_SYMBOL vmlinux 0xb5049c1d bio_integrity_split +EXPORT_SYMBOL vmlinux 0xb50a0271 dev_mc_add +EXPORT_SYMBOL vmlinux 0xb50b41d9 nf_log_register +EXPORT_SYMBOL vmlinux 0xb5219749 dev_deactivate +EXPORT_SYMBOL vmlinux 0xb524cf31 pci_iomap +EXPORT_SYMBOL vmlinux 0xb52891fb swiotlb_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0xb52ee8be intel_gtt_clear_range +EXPORT_SYMBOL vmlinux 0xb54533f7 usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xb559dfdc blk_get_queue +EXPORT_SYMBOL vmlinux 0xb56c9d99 tcp_child_process +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb57dfd0c dquot_release +EXPORT_SYMBOL vmlinux 0xb57f2457 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0xb57fb672 filemap_write_and_wait +EXPORT_SYMBOL vmlinux 0xb58a6dea skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0xb598b2b1 mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5c2226c netdev_warn +EXPORT_SYMBOL vmlinux 0xb5ca1c46 slhc_free +EXPORT_SYMBOL vmlinux 0xb5cecc97 eth_header +EXPORT_SYMBOL vmlinux 0xb5dcab5b remove_wait_queue +EXPORT_SYMBOL vmlinux 0xb5dd2ea6 pm860x_page_bulk_write +EXPORT_SYMBOL vmlinux 0xb5fc3614 bitmap_unplug +EXPORT_SYMBOL vmlinux 0xb6097d19 spi_display_xfer_agreement +EXPORT_SYMBOL vmlinux 0xb6244511 sg_init_one +EXPORT_SYMBOL vmlinux 0xb62b9649 xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0xb6394d4b param_set_bint +EXPORT_SYMBOL vmlinux 0xb63d4a46 xfrm_user_policy +EXPORT_SYMBOL vmlinux 0xb6585d7c read_code +EXPORT_SYMBOL vmlinux 0xb65a9bc5 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb67fd77e fsnotify_destroy_mark +EXPORT_SYMBOL vmlinux 0xb6822a33 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0xb686e94f __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb69dadd2 vfs_rmdir +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6b46a7c param_ops_int +EXPORT_SYMBOL vmlinux 0xb6c5a973 scsi_show_result +EXPORT_SYMBOL vmlinux 0xb6cbe886 acpi_get_node +EXPORT_SYMBOL vmlinux 0xb6d2f0bb jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0xb6d5948c d_move +EXPORT_SYMBOL vmlinux 0xb6d6097d fb_blank +EXPORT_SYMBOL vmlinux 0xb6ddc45c jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0xb70f51cc dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0xb71e64c3 phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0xb7506c3a blk_queue_free_tags +EXPORT_SYMBOL vmlinux 0xb758b225 acpi_disable_event +EXPORT_SYMBOL vmlinux 0xb758f0a0 xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xb77131b1 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0xb7a65fc1 submit_bio_wait +EXPORT_SYMBOL vmlinux 0xb7f47feb inode_sb_list_lock +EXPORT_SYMBOL vmlinux 0xb8016915 account_page_dirtied +EXPORT_SYMBOL vmlinux 0xb81b60d4 dm_get_mapinfo +EXPORT_SYMBOL vmlinux 0xb834bf14 pnp_get_resource +EXPORT_SYMBOL vmlinux 0xb835b3e4 radix_tree_prev_hole +EXPORT_SYMBOL vmlinux 0xb85327df pnp_device_attach +EXPORT_SYMBOL vmlinux 0xb85a3f52 write_cache_pages +EXPORT_SYMBOL vmlinux 0xb874b87a __clzsi2 +EXPORT_SYMBOL vmlinux 0xb878892e spi_schedule_dv_device +EXPORT_SYMBOL vmlinux 0xb8864b83 bprm_change_interp +EXPORT_SYMBOL vmlinux 0xb8b55789 inet6_release +EXPORT_SYMBOL vmlinux 0xb8b99379 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0xb8d73e97 param_set_uint +EXPORT_SYMBOL vmlinux 0xb8e7ce2c __put_user_8 +EXPORT_SYMBOL vmlinux 0xb8f6715f sock_i_uid +EXPORT_SYMBOL vmlinux 0xb8fa8c00 __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0xb907513f unpoison_memory +EXPORT_SYMBOL vmlinux 0xb9249d16 cpu_possible_mask +EXPORT_SYMBOL vmlinux 0xb9296e15 twl6040_get_pll +EXPORT_SYMBOL vmlinux 0xb95b2d39 __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0xb97f981f tty_free_termios +EXPORT_SYMBOL vmlinux 0xb986fd02 fs_bio_set +EXPORT_SYMBOL vmlinux 0xb98a0185 rtc_tm_to_time +EXPORT_SYMBOL vmlinux 0xb9910183 phy_start +EXPORT_SYMBOL vmlinux 0xb9a274ed dev_mc_del_global +EXPORT_SYMBOL vmlinux 0xb9b4e181 alloc_pages_exact_nid +EXPORT_SYMBOL vmlinux 0xb9c31481 sock_alloc_file +EXPORT_SYMBOL vmlinux 0xb9d10c8d d_delete +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xb9f5b19c xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0xb9fd2205 add_efi_memmap +EXPORT_SYMBOL vmlinux 0xba05e54d sk_alloc +EXPORT_SYMBOL vmlinux 0xba08fa00 netif_rx +EXPORT_SYMBOL vmlinux 0xba24565b __devcgroup_inode_permission +EXPORT_SYMBOL vmlinux 0xba2d8594 ec_read +EXPORT_SYMBOL vmlinux 0xba370fab sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba518978 proto_unregister +EXPORT_SYMBOL vmlinux 0xba5bec30 ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0xba63339c _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0xbaa612bb bdi_register_dev +EXPORT_SYMBOL vmlinux 0xbacc6a0b tty_unlock_pair +EXPORT_SYMBOL vmlinux 0xbad6b559 tty_devnum +EXPORT_SYMBOL vmlinux 0xbadc4b90 dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0xbaf554ce register_xen_selfballooning +EXPORT_SYMBOL vmlinux 0xbb0c1136 bioset_integrity_free +EXPORT_SYMBOL vmlinux 0xbb1766e1 account_page_redirty +EXPORT_SYMBOL vmlinux 0xbb189cad disallow_signal +EXPORT_SYMBOL vmlinux 0xbb2c2e33 __register_chrdev +EXPORT_SYMBOL vmlinux 0xbb3e860e vmap +EXPORT_SYMBOL vmlinux 0xbb40682c jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0xbb4afedb xfrm_input +EXPORT_SYMBOL vmlinux 0xbb4f4766 simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0xbb4fe2d0 qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0xbb555a55 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0xbb5d343d xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xbb6fc55f blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0xbb713e6d sk_filter_release_rcu +EXPORT_SYMBOL vmlinux 0xbb936ac9 scsi_ioctl +EXPORT_SYMBOL vmlinux 0xbb99125c get_default_font +EXPORT_SYMBOL vmlinux 0xbbab7ce3 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0xbbaeb559 memcg_socket_limit_enabled +EXPORT_SYMBOL vmlinux 0xbbc692bd tcp_rcv_established +EXPORT_SYMBOL vmlinux 0xbbce9ae6 generic_writepages +EXPORT_SYMBOL vmlinux 0xbbdaf5c9 nf_log_unregister +EXPORT_SYMBOL vmlinux 0xbbdfa4f2 bmap +EXPORT_SYMBOL vmlinux 0xbbfcaca5 bit_waitqueue +EXPORT_SYMBOL vmlinux 0xbc12dd00 may_umount +EXPORT_SYMBOL vmlinux 0xbc1a2c25 no_llseek +EXPORT_SYMBOL vmlinux 0xbc2031de acpi_processor_get_bios_limit +EXPORT_SYMBOL vmlinux 0xbc2978e9 lg_global_lock +EXPORT_SYMBOL vmlinux 0xbc62ec73 netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0xbc71f574 blk_queue_prep_rq +EXPORT_SYMBOL vmlinux 0xbc7db518 default_llseek +EXPORT_SYMBOL vmlinux 0xbc8545e7 loop_backing_file +EXPORT_SYMBOL vmlinux 0xbc8d85d0 nf_unregister_hooks +EXPORT_SYMBOL vmlinux 0xbca4eb26 neigh_seq_stop +EXPORT_SYMBOL vmlinux 0xbca7385e pagevec_lookup_tag +EXPORT_SYMBOL vmlinux 0xbcbfb36e mmc_add_host +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbcc5ada8 skb_checksum_help +EXPORT_SYMBOL vmlinux 0xbce277bb netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0xbce96526 PDE_DATA +EXPORT_SYMBOL vmlinux 0xbd02fae2 generic_write_checks +EXPORT_SYMBOL vmlinux 0xbd100793 cpu_online_mask +EXPORT_SYMBOL vmlinux 0xbd240ce5 ppp_input +EXPORT_SYMBOL vmlinux 0xbd318c45 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0xbd3832dc set_pages_nx +EXPORT_SYMBOL vmlinux 0xbd462b55 __kfifo_init +EXPORT_SYMBOL vmlinux 0xbd5a6ecd sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0xbdaf5b07 acpi_os_read_port +EXPORT_SYMBOL vmlinux 0xbdcf44fc do_sync_write +EXPORT_SYMBOL vmlinux 0xbdd29759 tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0xbddcc91f scsi_prep_return +EXPORT_SYMBOL vmlinux 0xbdddad97 proto_register +EXPORT_SYMBOL vmlinux 0xbdfb6dbb __fentry__ +EXPORT_SYMBOL vmlinux 0xbdfe9a02 compat_sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0xbe18153d try_wait_for_completion +EXPORT_SYMBOL vmlinux 0xbe1eec94 tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0xbe1f2de8 freezing_slow_path +EXPORT_SYMBOL vmlinux 0xbe209527 md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0xbe23be92 ping_prot +EXPORT_SYMBOL vmlinux 0xbe285526 fget +EXPORT_SYMBOL vmlinux 0xbe2c0274 add_timer +EXPORT_SYMBOL vmlinux 0xbe5adf7d padata_register_cpumask_notifier +EXPORT_SYMBOL vmlinux 0xbe5d1ab1 skb_insert +EXPORT_SYMBOL vmlinux 0xbe6825b2 sk_receive_skb +EXPORT_SYMBOL vmlinux 0xbe6e2527 skb_queue_head +EXPORT_SYMBOL vmlinux 0xbe94e174 agp_generic_alloc_page +EXPORT_SYMBOL vmlinux 0xbeaa1f34 dquot_quotactl_ops +EXPORT_SYMBOL vmlinux 0xbeb4128e bio_integrity_advance +EXPORT_SYMBOL vmlinux 0xbec30d05 x86_match_cpu +EXPORT_SYMBOL vmlinux 0xbec864b3 skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbf0637fe jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0xbf1c7d19 inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0xbf1f1316 mmc_release_host +EXPORT_SYMBOL vmlinux 0xbf3be088 dev_alloc_name +EXPORT_SYMBOL vmlinux 0xbf7fd2f5 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0xbf8ba54a vprintk +EXPORT_SYMBOL vmlinux 0xbf9b220e wait_for_key_construction +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfa2f3d9 alloc_buffer_head +EXPORT_SYMBOL vmlinux 0xbfb59e27 ppp_dev_name +EXPORT_SYMBOL vmlinux 0xbfb83b48 generic_readlink +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfec4f1d vlan_vid_add +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xc0010257 fsnotify_add_mark +EXPORT_SYMBOL vmlinux 0xc010e330 pci_disable_ltr +EXPORT_SYMBOL vmlinux 0xc0132106 blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0xc01cf848 _raw_read_lock +EXPORT_SYMBOL vmlinux 0xc02cf69b clkdev_drop +EXPORT_SYMBOL vmlinux 0xc05b1b8e input_register_device +EXPORT_SYMBOL vmlinux 0xc05da78f __frontswap_store +EXPORT_SYMBOL vmlinux 0xc0670054 write_one_page +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc07ca463 dst_destroy +EXPORT_SYMBOL vmlinux 0xc092d386 shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0xc097d1e7 unlock_buffer +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0b4e989 tcf_hash_insert +EXPORT_SYMBOL vmlinux 0xc0c5fd20 pci_save_state +EXPORT_SYMBOL vmlinux 0xc0c68a3d bio_get_nr_vecs +EXPORT_SYMBOL vmlinux 0xc0cfdeb4 set_security_override +EXPORT_SYMBOL vmlinux 0xc1069427 blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0xc106e9a2 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0xc1273257 scsi_setup_fs_cmnd +EXPORT_SYMBOL vmlinux 0xc14f80ba scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0xc15a9f60 bioset_free +EXPORT_SYMBOL vmlinux 0xc16d8b9b update_region +EXPORT_SYMBOL vmlinux 0xc1959dd5 pci_pme_active +EXPORT_SYMBOL vmlinux 0xc1c2dd09 __hw_addr_flush +EXPORT_SYMBOL vmlinux 0xc1d94253 scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0xc1f8898c free_mdio_bitbang +EXPORT_SYMBOL vmlinux 0xc21f8a10 __lock_buffer +EXPORT_SYMBOL vmlinux 0xc2218066 nf_ct_attach +EXPORT_SYMBOL vmlinux 0xc2280864 dump_emit +EXPORT_SYMBOL vmlinux 0xc2424641 agp3_generic_cleanup +EXPORT_SYMBOL vmlinux 0xc24a5606 inet_frag_evictor +EXPORT_SYMBOL vmlinux 0xc24baf54 mount_bdev +EXPORT_SYMBOL vmlinux 0xc24e0aab dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0xc256e762 __bitmap_equal +EXPORT_SYMBOL vmlinux 0xc263dfd6 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0xc26f5da0 __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0xc27146e2 arp_tbl +EXPORT_SYMBOL vmlinux 0xc276040b input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0xc295f416 alloc_file +EXPORT_SYMBOL vmlinux 0xc29bf967 strspn +EXPORT_SYMBOL vmlinux 0xc2b5030d ppp_register_compressor +EXPORT_SYMBOL vmlinux 0xc2c0ac1f blk_start_queue +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2f9c045 timespec_to_jiffies +EXPORT_SYMBOL vmlinux 0xc3031b03 netpoll_setup +EXPORT_SYMBOL vmlinux 0xc310b981 strnstr +EXPORT_SYMBOL vmlinux 0xc319a463 nobh_writepage +EXPORT_SYMBOL vmlinux 0xc351e0b9 d_find_any_alias +EXPORT_SYMBOL vmlinux 0xc35a6a00 seq_puts +EXPORT_SYMBOL vmlinux 0xc384b5cb vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0xc3955a21 skb_queue_tail +EXPORT_SYMBOL vmlinux 0xc3aaf0a9 __put_user_1 +EXPORT_SYMBOL vmlinux 0xc3b37961 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0xc3ee6e96 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0xc40a2b7e __lock_page +EXPORT_SYMBOL vmlinux 0xc46af8aa jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0xc48307db lz4_decompress +EXPORT_SYMBOL vmlinux 0xc4890200 sock_get_timestampns +EXPORT_SYMBOL vmlinux 0xc499ae1e kstrdup +EXPORT_SYMBOL vmlinux 0xc4aca662 kernel_sendpage +EXPORT_SYMBOL vmlinux 0xc4be65de ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0xc4d2314c vm_event_states +EXPORT_SYMBOL vmlinux 0xc4f3bd65 blk_integrity_compare +EXPORT_SYMBOL vmlinux 0xc540fdad noop_qdisc +EXPORT_SYMBOL vmlinux 0xc55050ee tcp_check_req +EXPORT_SYMBOL vmlinux 0xc5534d64 ioread16 +EXPORT_SYMBOL vmlinux 0xc558530d profile_pc +EXPORT_SYMBOL vmlinux 0xc56a65c1 xfrm_register_type +EXPORT_SYMBOL vmlinux 0xc56edf9f phy_stop_interrupts +EXPORT_SYMBOL vmlinux 0xc574011e filp_open +EXPORT_SYMBOL vmlinux 0xc5837815 consume_skb +EXPORT_SYMBOL vmlinux 0xc589e044 param_set_long +EXPORT_SYMBOL vmlinux 0xc5aa1f76 sock_no_poll +EXPORT_SYMBOL vmlinux 0xc5c010d2 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0xc5d9c46c agp_try_unsupported_boot +EXPORT_SYMBOL vmlinux 0xc5fc9d0e abx500_remove_ops +EXPORT_SYMBOL vmlinux 0xc5fdef94 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc65abeb7 agp3_generic_sizes +EXPORT_SYMBOL vmlinux 0xc666a132 crc_t10dif +EXPORT_SYMBOL vmlinux 0xc6757177 sg_miter_start +EXPORT_SYMBOL vmlinux 0xc693527b should_remove_suid +EXPORT_SYMBOL vmlinux 0xc6a66180 rwsem_wake +EXPORT_SYMBOL vmlinux 0xc6a94346 keyring_alloc +EXPORT_SYMBOL vmlinux 0xc6b368d3 acpi_gpe_count +EXPORT_SYMBOL vmlinux 0xc6cb465a __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6d6b06e sock_sendmsg +EXPORT_SYMBOL vmlinux 0xc6eec50f max8925_bulk_write +EXPORT_SYMBOL vmlinux 0xc6f821ad tcp_md5_hash_header +EXPORT_SYMBOL vmlinux 0xc715d9e0 boot_cpu_data +EXPORT_SYMBOL vmlinux 0xc72063fb simple_getattr +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc74d5291 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0xc761b8d7 bio_alloc_pages +EXPORT_SYMBOL vmlinux 0xc770d15c idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc788b55c i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7ac6b67 inet6_getname +EXPORT_SYMBOL vmlinux 0xc7c93911 sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0xc7cb4f0a __getblk +EXPORT_SYMBOL vmlinux 0xc7df9a38 pci_set_master +EXPORT_SYMBOL vmlinux 0xc7e4d972 blk_mq_end_io +EXPORT_SYMBOL vmlinux 0xc808bead skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0xc83b4d5b posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc84fb1ee override_creds +EXPORT_SYMBOL vmlinux 0xc852d971 grab_cache_page_nowait +EXPORT_SYMBOL vmlinux 0xc85f9e1f netdev_crit +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc8840f93 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0xc885ae08 pm860x_reg_read +EXPORT_SYMBOL vmlinux 0xc897c382 sg_init_table +EXPORT_SYMBOL vmlinux 0xc899bcc1 generic_pipe_buf_steal +EXPORT_SYMBOL vmlinux 0xc8a2dbed genl_unregister_family +EXPORT_SYMBOL vmlinux 0xc8b0c740 dcache_readdir +EXPORT_SYMBOL vmlinux 0xc8b57c27 autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xc8d8814f pci_match_id +EXPORT_SYMBOL vmlinux 0xc8f0c4a8 pci_platform_rom +EXPORT_SYMBOL vmlinux 0xc923cc3f gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0xc930ad5b dev_get_flags +EXPORT_SYMBOL vmlinux 0xc94ffd7e try_to_writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xc955c58f mfd_cell_disable +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc978479a xz_dec_run +EXPORT_SYMBOL vmlinux 0xc979218d unregister_qdisc +EXPORT_SYMBOL vmlinux 0xc97f6a60 security_task_getsecid +EXPORT_SYMBOL vmlinux 0xc991f835 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0xc996d097 del_timer +EXPORT_SYMBOL vmlinux 0xc9a68962 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0xc9a7e3e7 blk_stack_limits +EXPORT_SYMBOL vmlinux 0xc9c39193 devm_gpio_request_one +EXPORT_SYMBOL vmlinux 0xc9d54efe nla_put +EXPORT_SYMBOL vmlinux 0xc9e1b6ca pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0xc9ec7b69 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0xca00bbf3 cookie_check_timestamp +EXPORT_SYMBOL vmlinux 0xca0435a0 wireless_send_event +EXPORT_SYMBOL vmlinux 0xca15844a netdev_err +EXPORT_SYMBOL vmlinux 0xca164a95 __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0xca1ab808 fib_default_rule_pref +EXPORT_SYMBOL vmlinux 0xca1c3bac block_write_full_page_endio +EXPORT_SYMBOL vmlinux 0xca4ca404 gen_pool_create +EXPORT_SYMBOL vmlinux 0xca5dbc50 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xca73eadc blk_init_queue +EXPORT_SYMBOL vmlinux 0xca757df0 dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0xca85c4eb tty_port_close_start +EXPORT_SYMBOL vmlinux 0xca8acc78 acpi_dbg_level +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xcaa2954f __invalidate_device +EXPORT_SYMBOL vmlinux 0xcaa7262a __sb_end_write +EXPORT_SYMBOL vmlinux 0xcab3dd85 __blk_end_request_cur +EXPORT_SYMBOL vmlinux 0xcac07c73 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0xcaef1b77 idr_remove +EXPORT_SYMBOL vmlinux 0xcaf542e4 d_instantiate_no_diralias +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb046992 bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0xcb0c5d50 param_get_uint +EXPORT_SYMBOL vmlinux 0xcb15de17 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0xcb246eee serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0xcb419d31 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0xcb680688 ps2_handle_response +EXPORT_SYMBOL vmlinux 0xcb6eaeb6 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0xcb733bf2 acpi_bus_set_power +EXPORT_SYMBOL vmlinux 0xcb77f8e6 arp_create +EXPORT_SYMBOL vmlinux 0xcba14ce5 __idr_remove_all +EXPORT_SYMBOL vmlinux 0xcbaa4e00 blk_bio_map_sg +EXPORT_SYMBOL vmlinux 0xcbae6c7a acpi_lid_notifier_unregister +EXPORT_SYMBOL vmlinux 0xcbb9e278 scsi_cmd_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xcbbb03fb ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0xcbbf0a6f audit_log_task_context +EXPORT_SYMBOL vmlinux 0xcbc9557f unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0xcbdf2a23 blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0xcbea6889 fd_install +EXPORT_SYMBOL vmlinux 0xcbed2189 jbd2_journal_start +EXPORT_SYMBOL vmlinux 0xcc173cab acpi_walk_resource_buffer +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc36aeb2 splice_from_pipe_feed +EXPORT_SYMBOL vmlinux 0xcc37f55c blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc557e92 input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0xcc657e25 unlazy_fpu +EXPORT_SYMBOL vmlinux 0xcc7fa952 local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0xcc86c3b0 key_unlink +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccd2ed26 freeze_bdev +EXPORT_SYMBOL vmlinux 0xcd088601 acpi_match_device_ids +EXPORT_SYMBOL vmlinux 0xcd20667a kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd2d54f5 test_set_page_writeback +EXPORT_SYMBOL vmlinux 0xcd3bc598 __wait_on_bit +EXPORT_SYMBOL vmlinux 0xcd458213 dquot_transfer +EXPORT_SYMBOL vmlinux 0xcd711a79 thermal_cdev_update +EXPORT_SYMBOL vmlinux 0xcd8ec81a padata_do_serial +EXPORT_SYMBOL vmlinux 0xcd944976 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0xcd9be188 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0xcdbf51b0 dm_put_device +EXPORT_SYMBOL vmlinux 0xcdc28651 sock_recvmsg +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdc8a9c5 mmc_hw_reset +EXPORT_SYMBOL vmlinux 0xcdd2444d blk_alloc_queue_node +EXPORT_SYMBOL vmlinux 0xcdd37674 check_disk_size_change +EXPORT_SYMBOL vmlinux 0xcde172ac radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0xcdec60f0 simple_fill_super +EXPORT_SYMBOL vmlinux 0xcdf7f602 netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0xce072da8 ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0xce2143db tty_check_change +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce4904a4 acpi_leave_sleep_state +EXPORT_SYMBOL vmlinux 0xce4e47b6 __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0xce5284ae tty_port_tty_set +EXPORT_SYMBOL vmlinux 0xce58d6b4 kfree_skb_list +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce6235ac d_alloc_pseudo +EXPORT_SYMBOL vmlinux 0xce63c498 md_integrity_register +EXPORT_SYMBOL vmlinux 0xce6e2e1a neigh_event_ns +EXPORT_SYMBOL vmlinux 0xcede5082 register_md_personality +EXPORT_SYMBOL vmlinux 0xcee45fff devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0xcee50b07 dmam_pool_create +EXPORT_SYMBOL vmlinux 0xcee78e6b pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0xceeb654b uart_suspend_port +EXPORT_SYMBOL vmlinux 0xcef51982 kstrtou16 +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf11b714 agp_backend_acquire +EXPORT_SYMBOL vmlinux 0xcf21d241 __wake_up +EXPORT_SYMBOL vmlinux 0xcf5b85da blk_mq_alloc_reserved_request +EXPORT_SYMBOL vmlinux 0xcf6551fb dev_emerg +EXPORT_SYMBOL vmlinux 0xcf6cfe1f msrs_free +EXPORT_SYMBOL vmlinux 0xcf9943b1 sync_inode +EXPORT_SYMBOL vmlinux 0xcfa505c6 nobh_write_begin +EXPORT_SYMBOL vmlinux 0xcfacbc51 swiotlb_unmap_sg_attrs +EXPORT_SYMBOL vmlinux 0xcfe292c6 ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0xd00100d6 blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0xd013698f mnt_unpin +EXPORT_SYMBOL vmlinux 0xd0181f4f __bitmap_xor +EXPORT_SYMBOL vmlinux 0xd018a1d3 filemap_fdatawait +EXPORT_SYMBOL vmlinux 0xd0298b8b proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0xd03cb7dd agp_generic_remove_memory +EXPORT_SYMBOL vmlinux 0xd0668ca7 generic_removexattr +EXPORT_SYMBOL vmlinux 0xd067fc5c proc_dointvec +EXPORT_SYMBOL vmlinux 0xd069879e set_create_files_as +EXPORT_SYMBOL vmlinux 0xd0720a17 on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xd085df80 lock_rename +EXPORT_SYMBOL vmlinux 0xd08acfb4 tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0c198db sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0xd0c49748 bitmap_close_sync +EXPORT_SYMBOL vmlinux 0xd0d0aa72 acpi_processor_preregister_performance +EXPORT_SYMBOL vmlinux 0xd0d42c42 mod_timer_pending +EXPORT_SYMBOL vmlinux 0xd0ee38b8 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0xd0f0ba0b writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xd0f36f0d audit_log_format +EXPORT_SYMBOL vmlinux 0xd0fb7cd4 __tasklet_hi_schedule_first +EXPORT_SYMBOL vmlinux 0xd0fef3b2 agp_free_key +EXPORT_SYMBOL vmlinux 0xd11c0dc1 __kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xd132c72f pci_find_next_bus +EXPORT_SYMBOL vmlinux 0xd135d0bf stop_tty +EXPORT_SYMBOL vmlinux 0xd13afb9d __put_cred +EXPORT_SYMBOL vmlinux 0xd1451492 dm_get_device +EXPORT_SYMBOL vmlinux 0xd1652a93 acpi_info +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd1863c32 nf_setsockopt +EXPORT_SYMBOL vmlinux 0xd18b6eb2 acpi_unmap_lsapic +EXPORT_SYMBOL vmlinux 0xd18b7927 i2c_del_adapter +EXPORT_SYMBOL vmlinux 0xd1c12f98 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0xd1f6c5f3 smp_num_siblings +EXPORT_SYMBOL vmlinux 0xd207033c nobh_truncate_page +EXPORT_SYMBOL vmlinux 0xd21f1a89 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0xd21fe21e blk_queue_make_request +EXPORT_SYMBOL vmlinux 0xd220cf8a jiffies_to_timespec +EXPORT_SYMBOL vmlinux 0xd221e359 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0xd227892e sleep_on +EXPORT_SYMBOL vmlinux 0xd22d36ef write_dirty_buffer +EXPORT_SYMBOL vmlinux 0xd231434f dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0xd23cb42b tcp_syn_flood_action +EXPORT_SYMBOL vmlinux 0xd251d7b0 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0xd2555f19 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd25de726 __module_get +EXPORT_SYMBOL vmlinux 0xd261aa44 dev_addr_add_multiple +EXPORT_SYMBOL vmlinux 0xd2696b7a d_validate +EXPORT_SYMBOL vmlinux 0xd26f8aee put_disk +EXPORT_SYMBOL vmlinux 0xd271807c revert_creds +EXPORT_SYMBOL vmlinux 0xd278e1fe iov_iter_copy_from_user +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd2819d05 tcp_gro_complete +EXPORT_SYMBOL vmlinux 0xd2986e3c soft_cursor +EXPORT_SYMBOL vmlinux 0xd2a5454f wait_iff_congested +EXPORT_SYMBOL vmlinux 0xd2b09ce5 __kmalloc +EXPORT_SYMBOL vmlinux 0xd2b467e7 dev_activate +EXPORT_SYMBOL vmlinux 0xd2b9d514 __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0xd2bf4c93 tty_vhangup +EXPORT_SYMBOL vmlinux 0xd2d11890 mmc_set_blockcount +EXPORT_SYMBOL vmlinux 0xd2d6ae61 pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2f1b260 interruptible_sleep_on +EXPORT_SYMBOL vmlinux 0xd2fd543f scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0xd30a65c0 get_phy_device +EXPORT_SYMBOL vmlinux 0xd30c9f8a mmc_power_restore_host +EXPORT_SYMBOL vmlinux 0xd31abe19 compat_mc_setsockopt +EXPORT_SYMBOL vmlinux 0xd31f2ab0 add_disk +EXPORT_SYMBOL vmlinux 0xd330308f sock_from_file +EXPORT_SYMBOL vmlinux 0xd34762af phy_device_create +EXPORT_SYMBOL vmlinux 0xd35cd16a inet_stream_connect +EXPORT_SYMBOL vmlinux 0xd35e249a _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0xd36257ba memcpy_toiovecend +EXPORT_SYMBOL vmlinux 0xd3719d59 paravirt_ticketlocks_enabled +EXPORT_SYMBOL vmlinux 0xd38179ff __d_drop +EXPORT_SYMBOL vmlinux 0xd3862912 mfd_cell_enable +EXPORT_SYMBOL vmlinux 0xd3a2339a bitmap_end_sync +EXPORT_SYMBOL vmlinux 0xd3b111a7 unregister_filesystem +EXPORT_SYMBOL vmlinux 0xd3bd0b34 input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0xd3c0530b ppp_unit_number +EXPORT_SYMBOL vmlinux 0xd3dcab0b flex_array_alloc +EXPORT_SYMBOL vmlinux 0xd3dd87df pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0xd3ddd0ca tcf_hash_new_index +EXPORT_SYMBOL vmlinux 0xd40747a2 pci_bus_type +EXPORT_SYMBOL vmlinux 0xd4472b60 __cleancache_get_page +EXPORT_SYMBOL vmlinux 0xd4649ecc blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0xd467685d key_put +EXPORT_SYMBOL vmlinux 0xd4835ef8 dmi_check_system +EXPORT_SYMBOL vmlinux 0xd4988737 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0xd4a96c46 dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0xd4acfa1e __generic_file_aio_write +EXPORT_SYMBOL vmlinux 0xd4b08e54 wait_for_completion_io +EXPORT_SYMBOL vmlinux 0xd4c0e0c2 generic_block_bmap +EXPORT_SYMBOL vmlinux 0xd4edeb04 cpu_core_map +EXPORT_SYMBOL vmlinux 0xd50fef48 acpi_detach_data +EXPORT_SYMBOL vmlinux 0xd52bf1ce _raw_spin_lock +EXPORT_SYMBOL vmlinux 0xd5348684 mmc_can_trim +EXPORT_SYMBOL vmlinux 0xd53fe050 pcie_get_minimum_link +EXPORT_SYMBOL vmlinux 0xd5441a9d blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0xd561b0dd sk_prot_clear_portaddr_nulls +EXPORT_SYMBOL vmlinux 0xd5723643 __inode_permission +EXPORT_SYMBOL vmlinux 0xd57a8318 end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0xd5809a1d blk_get_request +EXPORT_SYMBOL vmlinux 0xd58f3888 pcie_get_mps +EXPORT_SYMBOL vmlinux 0xd5a937bf elevator_exit +EXPORT_SYMBOL vmlinux 0xd5ca9393 md_check_recovery +EXPORT_SYMBOL vmlinux 0xd5d4f182 netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0xd5f0322b napi_gro_flush +EXPORT_SYMBOL vmlinux 0xd5f2172f del_timer_sync +EXPORT_SYMBOL vmlinux 0xd611bca3 completion_done +EXPORT_SYMBOL vmlinux 0xd616683a ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0xd62ce0a5 kobject_del +EXPORT_SYMBOL vmlinux 0xd631a0b6 scsi_prep_fn +EXPORT_SYMBOL vmlinux 0xd63a8387 __scsi_alloc_queue +EXPORT_SYMBOL vmlinux 0xd648e564 fb_match_mode +EXPORT_SYMBOL vmlinux 0xd67c1b0a page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd6b33026 cpu_khz +EXPORT_SYMBOL vmlinux 0xd6ba1fe6 flock_lock_file_wait +EXPORT_SYMBOL vmlinux 0xd6bcdba5 setup_new_exec +EXPORT_SYMBOL vmlinux 0xd6c2df3d dma_common_mmap +EXPORT_SYMBOL vmlinux 0xd6ca2382 ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0xd6d07e29 dqget +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6f7bfad from_kprojid_munged +EXPORT_SYMBOL vmlinux 0xd7011fb9 tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0xd70a7e61 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0xd72ac800 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0xd7482827 qdisc_reset +EXPORT_SYMBOL vmlinux 0xd75c79df smp_call_function +EXPORT_SYMBOL vmlinux 0xd77a5aa5 __bitmap_and +EXPORT_SYMBOL vmlinux 0xd77cf3ad fput +EXPORT_SYMBOL vmlinux 0xd79b5a02 allow_signal +EXPORT_SYMBOL vmlinux 0xd7a531eb __ip_dev_find +EXPORT_SYMBOL vmlinux 0xd7cbddda memcpy_toiovec +EXPORT_SYMBOL vmlinux 0xd7dd777b reserve_perfctr_nmi +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7ea7094 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xd806fcb4 tty_unregister_driver +EXPORT_SYMBOL vmlinux 0xd80f8ff0 poll_freewait +EXPORT_SYMBOL vmlinux 0xd81603f8 phy_device_register +EXPORT_SYMBOL vmlinux 0xd8185423 blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0xd821b90e pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0xd82c20c6 __skb_get_rxhash +EXPORT_SYMBOL vmlinux 0xd82cd516 compat_ip_getsockopt +EXPORT_SYMBOL vmlinux 0xd838c334 netif_device_attach +EXPORT_SYMBOL vmlinux 0xd899ae4b kdb_current_task +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8c15a70 may_umount_tree +EXPORT_SYMBOL vmlinux 0xd8c72cf0 ifla_policy +EXPORT_SYMBOL vmlinux 0xd8cf6f32 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0xd8ded085 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xd8e484f0 register_chrdev_region +EXPORT_SYMBOL vmlinux 0xd9091363 acpi_install_notify_handler +EXPORT_SYMBOL vmlinux 0xd91a1f7f iunique +EXPORT_SYMBOL vmlinux 0xd92afabe bitmap_clear +EXPORT_SYMBOL vmlinux 0xd92c1fd0 cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0xd92e16ba csum_partial_copy_fromiovecend +EXPORT_SYMBOL vmlinux 0xd9351d1a fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0xd94322e7 acpi_evaluate_reference +EXPORT_SYMBOL vmlinux 0xd969b2c7 amd_e400_c1e_detected +EXPORT_SYMBOL vmlinux 0xd96c40e4 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd98c9f00 netpoll_print_options +EXPORT_SYMBOL vmlinux 0xd9a4d976 kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0xd9a9bb30 getname +EXPORT_SYMBOL vmlinux 0xd9ca3256 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0xd9cbde70 xfrm6_prepare_output +EXPORT_SYMBOL vmlinux 0xda2478d0 param_ops_short +EXPORT_SYMBOL vmlinux 0xda2fd106 __page_symlink +EXPORT_SYMBOL vmlinux 0xda303079 kill_bdev +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda3e43d1 _raw_spin_unlock +EXPORT_SYMBOL vmlinux 0xda7ca6cb fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xda82ae48 padata_set_cpumask +EXPORT_SYMBOL vmlinux 0xda8af7ad fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0xdab9e674 kmalloc_caches +EXPORT_SYMBOL vmlinux 0xdaea6e0d mfd_clone_cell +EXPORT_SYMBOL vmlinux 0xdaff17c9 mb_cache_entry_alloc +EXPORT_SYMBOL vmlinux 0xdb02a5eb truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0xdb1a9689 neigh_table_clear +EXPORT_SYMBOL vmlinux 0xdb30aa2b md_unregister_thread +EXPORT_SYMBOL vmlinux 0xdb4a9a84 dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0xdb4e2391 address_space_init_once +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb8f724e neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0xdb9e431c read_cache_pages +EXPORT_SYMBOL vmlinux 0xdba95182 cdrom_open +EXPORT_SYMBOL vmlinux 0xdbacf45e dev_uc_init +EXPORT_SYMBOL vmlinux 0xdbcd416e sysctl_ip_nonlocal_bind +EXPORT_SYMBOL vmlinux 0xdbf43ab1 phy_device_free +EXPORT_SYMBOL vmlinux 0xdbfb2424 inet_release +EXPORT_SYMBOL vmlinux 0xdc02ef70 textsearch_destroy +EXPORT_SYMBOL vmlinux 0xdc047fc4 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0xdc05e9fe input_close_device +EXPORT_SYMBOL vmlinux 0xdc0accc3 dev_get_drvdata +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc19fd14 twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0xdc3c41a8 __crypto_memneq +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc57f532 acpi_install_gpe_handler +EXPORT_SYMBOL vmlinux 0xdc6c12a9 audit_log_start +EXPORT_SYMBOL vmlinux 0xdc7f4b99 mmc_wait_for_app_cmd +EXPORT_SYMBOL vmlinux 0xdc8d1dde _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0xdc9e8e07 blk_end_request +EXPORT_SYMBOL vmlinux 0xdca8b1b9 mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0xdcab0d43 ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0xdd085683 __memcg_kmem_get_cache +EXPORT_SYMBOL vmlinux 0xdd275d0e mnt_set_expiry +EXPORT_SYMBOL vmlinux 0xdd3bb54a lock_fb_info +EXPORT_SYMBOL vmlinux 0xdd5263eb mdiobus_unregister +EXPORT_SYMBOL vmlinux 0xdd964bd3 prepare_binprm +EXPORT_SYMBOL vmlinux 0xddc8eb74 twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0xdde83545 intel_gtt_get +EXPORT_SYMBOL vmlinux 0xde0867d2 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0xde10eb10 param_set_invbool +EXPORT_SYMBOL vmlinux 0xde16dc16 tboot +EXPORT_SYMBOL vmlinux 0xde17de1d pci_get_subsys +EXPORT_SYMBOL vmlinux 0xde3603c9 blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0xde474c84 __pci_enable_wake +EXPORT_SYMBOL vmlinux 0xde5ea102 free_buffer_head +EXPORT_SYMBOL vmlinux 0xde6151db tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0xde6f8d84 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0xde88869a locks_free_lock +EXPORT_SYMBOL vmlinux 0xde8cc909 km_new_mapping +EXPORT_SYMBOL vmlinux 0xde8cef13 blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0xde9360ba totalram_pages +EXPORT_SYMBOL vmlinux 0xde97b13f dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0xde98c647 kobject_put +EXPORT_SYMBOL vmlinux 0xde9b17ed agp3_generic_fetch_size +EXPORT_SYMBOL vmlinux 0xdf0da3cc acpi_get_devices +EXPORT_SYMBOL vmlinux 0xdf202dc5 pci_clear_master +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf455e07 clocksource_change_rating +EXPORT_SYMBOL vmlinux 0xdf48a0eb flex_array_put +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf60cc27 __print_symbol +EXPORT_SYMBOL vmlinux 0xdf697a82 xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0xdf78b393 dm_kobject_release +EXPORT_SYMBOL vmlinux 0xdf8c695a __ndelay +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdf93c5e2 __napi_complete +EXPORT_SYMBOL vmlinux 0xdfafce4b tcp_proc_register +EXPORT_SYMBOL vmlinux 0xdfc5169b slhc_init +EXPORT_SYMBOL vmlinux 0xe000bbf4 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0xe02eca23 inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0xe033d48e __frontswap_test +EXPORT_SYMBOL vmlinux 0xe046466c cpufreq_global_kobject +EXPORT_SYMBOL vmlinux 0xe04f7caa dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xe06141e9 security_sk_clone +EXPORT_SYMBOL vmlinux 0xe06b4fe6 scsi_release_buffers +EXPORT_SYMBOL vmlinux 0xe06e4199 cpu_all_bits +EXPORT_SYMBOL vmlinux 0xe075d6eb iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xe0981c18 __module_put_and_exit +EXPORT_SYMBOL vmlinux 0xe0ac8bd2 acpi_bus_generate_netlink_event +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0d19072 free_netdev +EXPORT_SYMBOL vmlinux 0xe0fa83f2 ipmi_register_for_cmd +EXPORT_SYMBOL vmlinux 0xe0ff1624 input_flush_device +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe11cb19b compat_tcp_getsockopt +EXPORT_SYMBOL vmlinux 0xe13cd8a7 dmi_name_in_vendors +EXPORT_SYMBOL vmlinux 0xe14f2570 cdrom_media_changed +EXPORT_SYMBOL vmlinux 0xe15f42bb _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0xe1761617 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xe18b8447 pci_restore_state +EXPORT_SYMBOL vmlinux 0xe19bf557 blk_mq_map_queue +EXPORT_SYMBOL vmlinux 0xe1bfdb81 vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0xe1ca2541 dev_load +EXPORT_SYMBOL vmlinux 0xe1d2594f blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0xe1e0aba1 kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0xe200f872 secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xe2146e61 dev_trans_start +EXPORT_SYMBOL vmlinux 0xe21ea587 inet_register_protosw +EXPORT_SYMBOL vmlinux 0xe23ae481 blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe24147c2 arp_xmit +EXPORT_SYMBOL vmlinux 0xe24d3a97 jiffies_64 +EXPORT_SYMBOL vmlinux 0xe25b7a4d sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0xe2713256 ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0xe2713f51 __breadahead +EXPORT_SYMBOL vmlinux 0xe277b5af rtmsg_ifinfo +EXPORT_SYMBOL vmlinux 0xe29b04e9 acpi_set_firmware_waking_vector64 +EXPORT_SYMBOL vmlinux 0xe29e1d0e out_of_line_wait_on_atomic_t +EXPORT_SYMBOL vmlinux 0xe2a6cacd generic_block_fiemap +EXPORT_SYMBOL vmlinux 0xe2cfb038 __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe319eb24 acpi_pci_osc_control_set +EXPORT_SYMBOL vmlinux 0xe324b724 unregister_quota_format +EXPORT_SYMBOL vmlinux 0xe34caaa3 sg_miter_next +EXPORT_SYMBOL vmlinux 0xe358be5e security_inode_permission +EXPORT_SYMBOL vmlinux 0xe3a53f4c sort +EXPORT_SYMBOL vmlinux 0xe3a54fa5 blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0xe3d6f284 fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xe3e12008 __first_cpu +EXPORT_SYMBOL vmlinux 0xe3edcf2a disk_stack_limits +EXPORT_SYMBOL vmlinux 0xe40f8eaf del_gendisk +EXPORT_SYMBOL vmlinux 0xe438e5da file_remove_suid +EXPORT_SYMBOL vmlinux 0xe43faa78 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0xe4442756 phy_driver_unregister +EXPORT_SYMBOL vmlinux 0xe44b46ac neigh_direct_output +EXPORT_SYMBOL vmlinux 0xe457f0d1 max8998_read_reg +EXPORT_SYMBOL vmlinux 0xe47a2ebd inet_frags_fini +EXPORT_SYMBOL vmlinux 0xe484e35f ioread32 +EXPORT_SYMBOL vmlinux 0xe4858925 tty_port_init +EXPORT_SYMBOL vmlinux 0xe48717b6 inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0xe48e85c8 blk_queue_merge_bvec +EXPORT_SYMBOL vmlinux 0xe4944f7a neigh_parms_release +EXPORT_SYMBOL vmlinux 0xe49eedfa xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0xe4b28f04 dev_set_mtu +EXPORT_SYMBOL vmlinux 0xe4b7bbae netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0xe4e23f6d __alloc_skb +EXPORT_SYMBOL vmlinux 0xe4f4665b ipmi_validate_addr +EXPORT_SYMBOL vmlinux 0xe4ffd5f1 tcp_proc_unregister +EXPORT_SYMBOL vmlinux 0xe502d9f0 i2c_clients_command +EXPORT_SYMBOL vmlinux 0xe5122890 flow_cache_genid +EXPORT_SYMBOL vmlinux 0xe5208918 acpi_gbl_FADT +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe530d757 acpi_clear_gpe +EXPORT_SYMBOL vmlinux 0xe5474441 tcp_ioctl +EXPORT_SYMBOL vmlinux 0xe559fba2 skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0xe57878a1 in6_pton +EXPORT_SYMBOL vmlinux 0xe5798dcb jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe59c4461 blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0xe5ae06f0 unregister_cdrom +EXPORT_SYMBOL vmlinux 0xe5bc0f28 net_dma_find_channel +EXPORT_SYMBOL vmlinux 0xe5bec95c i8253_lock +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5ed5467 xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xe5fe6a13 finish_no_open +EXPORT_SYMBOL vmlinux 0xe6181aa0 bdev_read_only +EXPORT_SYMBOL vmlinux 0xe619d317 uart_register_driver +EXPORT_SYMBOL vmlinux 0xe628075a touch_atime +EXPORT_SYMBOL vmlinux 0xe63031e1 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0xe649180e sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0xe64d98fe rdmsr_safe_regs +EXPORT_SYMBOL vmlinux 0xe64dc67b __bio_clone +EXPORT_SYMBOL vmlinux 0xe6606fd2 pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0xe66ead75 request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0xe697d108 __blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe69a9df4 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0xe6a9f765 neigh_table_init +EXPORT_SYMBOL vmlinux 0xe6ab72a6 ipmi_set_my_LUN +EXPORT_SYMBOL vmlinux 0xe6b2db09 inet_frag_find +EXPORT_SYMBOL vmlinux 0xe6e3b875 down_write +EXPORT_SYMBOL vmlinux 0xe6fb675c node_to_cpumask_map +EXPORT_SYMBOL vmlinux 0xe6fbe430 can_do_mlock +EXPORT_SYMBOL vmlinux 0xe70540cd __remove_inode_hash +EXPORT_SYMBOL vmlinux 0xe714fa86 ht_create_irq +EXPORT_SYMBOL vmlinux 0xe716baed acpi_unregister_ioapic +EXPORT_SYMBOL vmlinux 0xe72d7137 netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0xe736e402 inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0xe7499dc9 processors +EXPORT_SYMBOL vmlinux 0xe74dfa87 mmc_alloc_host +EXPORT_SYMBOL vmlinux 0xe7722171 flex_array_free +EXPORT_SYMBOL vmlinux 0xe77d6cbd rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0xe7a5f8bf netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0xe7a664c4 nf_hooks +EXPORT_SYMBOL vmlinux 0xe7a81967 audit_log_secctx +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7e19f96 netlink_broadcast +EXPORT_SYMBOL vmlinux 0xe7e714e2 starget_for_each_device +EXPORT_SYMBOL vmlinux 0xe7eb76b9 vm_mmap +EXPORT_SYMBOL vmlinux 0xe7ee9ee9 skb_unlink +EXPORT_SYMBOL vmlinux 0xe803f574 jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0xe80455ee from_kgid +EXPORT_SYMBOL vmlinux 0xe80af3d4 tcf_exts_dump +EXPORT_SYMBOL vmlinux 0xe81292b0 pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0xe82d26ee tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0xe8418103 pci_map_rom +EXPORT_SYMBOL vmlinux 0xe85061c9 udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0xe85b5e75 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0xe8794ce1 slhc_toss +EXPORT_SYMBOL vmlinux 0xe8b63ace radix_tree_range_tag_if_tagged +EXPORT_SYMBOL vmlinux 0xe8bea3bc qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xe8dbafef __next_cpu +EXPORT_SYMBOL vmlinux 0xe8f00ad1 seq_escape +EXPORT_SYMBOL vmlinux 0xe905cd49 gen10g_resume +EXPORT_SYMBOL vmlinux 0xe913a765 cdrom_release +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe91acd36 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0xe932a90b x86_hyper +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe9895b02 __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0xe993c504 mmc_read_bkops_status +EXPORT_SYMBOL vmlinux 0xe997667b wrmsr_on_cpu +EXPORT_SYMBOL vmlinux 0xe9b4cfaf blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0xe9c501e7 lro_receive_frags +EXPORT_SYMBOL vmlinux 0xe9d43062 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0xe9dff136 mempool_alloc +EXPORT_SYMBOL vmlinux 0xe9e98cbe mmc_gpio_request_cd +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xea054b22 nla_policy_len +EXPORT_SYMBOL vmlinux 0xea10212a int_to_scsilun +EXPORT_SYMBOL vmlinux 0xea10655a __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xea16dd4c tcp_destroy_cgroup +EXPORT_SYMBOL vmlinux 0xea1a5c09 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0xea2c6ab0 vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0xea412ab3 vm_insert_mixed +EXPORT_SYMBOL vmlinux 0xea6f01ac register_filesystem +EXPORT_SYMBOL vmlinux 0xea7b8a44 acpi_install_interface +EXPORT_SYMBOL vmlinux 0xea90bdd3 acpi_attach_data +EXPORT_SYMBOL vmlinux 0xea98fc13 eth_type_trans +EXPORT_SYMBOL vmlinux 0xeaa9d045 netdev_lower_dev_get_private_rcu +EXPORT_SYMBOL vmlinux 0xeac73847 irq_regs +EXPORT_SYMBOL vmlinux 0xead960eb invalidate_partition +EXPORT_SYMBOL vmlinux 0xeae3dfd6 __const_udelay +EXPORT_SYMBOL vmlinux 0xeaf22dd5 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0xeaf74b2f tcp_proto_cgroup +EXPORT_SYMBOL vmlinux 0xeb1b0350 tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0xeb1df6f5 twl6040_reg_read +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb44339a free_pages_exact +EXPORT_SYMBOL vmlinux 0xeb5ecd47 set_blocksize +EXPORT_SYMBOL vmlinux 0xeb81dd73 tty_hung_up_p +EXPORT_SYMBOL vmlinux 0xeb8dd8f8 node_data +EXPORT_SYMBOL vmlinux 0xebb30d8e ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xebbd45a7 km_policy_notify +EXPORT_SYMBOL vmlinux 0xebcc47b6 scsi_remove_target +EXPORT_SYMBOL vmlinux 0xebccb33c serial8250_do_pm +EXPORT_SYMBOL vmlinux 0xebcdbfb1 d_find_alias +EXPORT_SYMBOL vmlinux 0xebcec0bd compat_tcp_setsockopt +EXPORT_SYMBOL vmlinux 0xebdbe48c radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0xec270d01 bio_integrity_clone +EXPORT_SYMBOL vmlinux 0xec47512e tty_port_close +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec4fcc55 input_unregister_handle +EXPORT_SYMBOL vmlinux 0xec730387 _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0xec749b94 swiotlb_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0xec80f979 __ht_create_irq +EXPORT_SYMBOL vmlinux 0xecaa02e5 max8925_bulk_read +EXPORT_SYMBOL vmlinux 0xeccd3e0c acpi_handle_printk +EXPORT_SYMBOL vmlinux 0xeccf03c1 pagecache_write_begin +EXPORT_SYMBOL vmlinux 0xece47de9 xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xed0342a5 led_set_brightness +EXPORT_SYMBOL vmlinux 0xed0c6487 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0xed597524 qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xed5aac97 cfb_imageblit +EXPORT_SYMBOL vmlinux 0xed8c83d2 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0xed9f9a20 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xeda27408 amd_iommu_device_info +EXPORT_SYMBOL vmlinux 0xedaf9e38 find_get_pages_tag +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedde7e9c unregister_netdev +EXPORT_SYMBOL vmlinux 0xeded09f1 fsnotify_put_group +EXPORT_SYMBOL vmlinux 0xedf60200 fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0xedf784a2 __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xee0909e9 check_disk_change +EXPORT_SYMBOL vmlinux 0xee0a055c __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0xee284ed3 agp_collect_device_status +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee46885d add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0xee6d49a3 sockfd_lookup +EXPORT_SYMBOL vmlinux 0xee77b6fb ip_setsockopt +EXPORT_SYMBOL vmlinux 0xee7eb9e1 pnp_platform_devices +EXPORT_SYMBOL vmlinux 0xee830c5a dev_driver_string +EXPORT_SYMBOL vmlinux 0xee84631a blk_init_allocated_queue +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xeea9dbaf bitmap_bitremap +EXPORT_SYMBOL vmlinux 0xeeac3d68 blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0xeeb5bd3b __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0xeecb310c fddi_type_trans +EXPORT_SYMBOL vmlinux 0xeeec26a7 queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xeef161aa groups_free +EXPORT_SYMBOL vmlinux 0xef22ec79 scsi_host_get +EXPORT_SYMBOL vmlinux 0xef424887 arp_invalidate +EXPORT_SYMBOL vmlinux 0xef746d66 d_drop +EXPORT_SYMBOL vmlinux 0xef752ee5 invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0xef98312f qdisc_destroy +EXPORT_SYMBOL vmlinux 0xef9aedfc boot_option_idle_override +EXPORT_SYMBOL vmlinux 0xefb32204 bio_map_kern +EXPORT_SYMBOL vmlinux 0xefb6b186 interruptible_sleep_on_timeout +EXPORT_SYMBOL vmlinux 0xefba93e1 mempool_destroy +EXPORT_SYMBOL vmlinux 0xefd624cb xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0xefdd70ce security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0xefe099c3 acpi_get_event_status +EXPORT_SYMBOL vmlinux 0xeff3bdb8 vfs_symlink +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf000f4b6 dcache_dir_close +EXPORT_SYMBOL vmlinux 0xf015a9cd pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0xf0187927 __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0xf0190be6 inode_add_rsv_space +EXPORT_SYMBOL vmlinux 0xf02df6c8 inet_frag_kill +EXPORT_SYMBOL vmlinux 0xf05ffa15 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0xf0619801 timekeeping_clocktai +EXPORT_SYMBOL vmlinux 0xf065f629 ioread16be +EXPORT_SYMBOL vmlinux 0xf067257c register_memory_isolate_notifier +EXPORT_SYMBOL vmlinux 0xf070989a md_done_sync +EXPORT_SYMBOL vmlinux 0xf087137d __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0xf09de776 get_random_int +EXPORT_SYMBOL vmlinux 0xf0b40ef4 max8998_write_reg +EXPORT_SYMBOL vmlinux 0xf0c52f76 iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0xf0c7c8fd d_path +EXPORT_SYMBOL vmlinux 0xf0ed2775 phy_stop +EXPORT_SYMBOL vmlinux 0xf0ef15b4 list_sort +EXPORT_SYMBOL vmlinux 0xf0f1246c kvasprintf +EXPORT_SYMBOL vmlinux 0xf0fdf6cb __stack_chk_fail +EXPORT_SYMBOL vmlinux 0xf0ffde75 unlink_framebuffer +EXPORT_SYMBOL vmlinux 0xf100416a remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xf10de535 ioread8 +EXPORT_SYMBOL vmlinux 0xf1147bdc posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0xf11543ff find_first_zero_bit +EXPORT_SYMBOL vmlinux 0xf116d4b5 copy_in_user +EXPORT_SYMBOL vmlinux 0xf12ebc5d ab3100_event_register +EXPORT_SYMBOL vmlinux 0xf13feb57 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0xf1420de3 ppp_channel_index +EXPORT_SYMBOL vmlinux 0xf147dcb2 hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0xf147ecb1 down_trylock +EXPORT_SYMBOL vmlinux 0xf153a028 dev_uc_flush +EXPORT_SYMBOL vmlinux 0xf15db25b __scsi_add_device +EXPORT_SYMBOL vmlinux 0xf174e176 get_user_pages +EXPORT_SYMBOL vmlinux 0xf18878e8 pci_write_vpd +EXPORT_SYMBOL vmlinux 0xf1899d4b tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf19ae74b release_sock +EXPORT_SYMBOL vmlinux 0xf1bea27a dev_mc_unsync +EXPORT_SYMBOL vmlinux 0xf1cc6761 swiotlb_unmap_sg +EXPORT_SYMBOL vmlinux 0xf1d766b9 tcp_connect +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1ee8c7d qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0xf202c5cb radix_tree_insert +EXPORT_SYMBOL vmlinux 0xf207a82f udp_proc_unregister +EXPORT_SYMBOL vmlinux 0xf20dabd8 free_irq +EXPORT_SYMBOL vmlinux 0xf213ed58 neigh_compat_output +EXPORT_SYMBOL vmlinux 0xf219d117 sock_no_shutdown +EXPORT_SYMBOL vmlinux 0xf222f37a tcp_gso_segment +EXPORT_SYMBOL vmlinux 0xf22449ae down_interruptible +EXPORT_SYMBOL vmlinux 0xf233f1df abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf24fb468 vlan_uses_dev +EXPORT_SYMBOL vmlinux 0xf2576cb9 ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL vmlinux 0xf25fddc3 vfs_llseek +EXPORT_SYMBOL vmlinux 0xf267af92 __bforget +EXPORT_SYMBOL vmlinux 0xf274040b gen10g_read_status +EXPORT_SYMBOL vmlinux 0xf27e9242 scm_detach_fds +EXPORT_SYMBOL vmlinux 0xf28b81c0 empty_aops +EXPORT_SYMBOL vmlinux 0xf28c7b1e dst_release +EXPORT_SYMBOL vmlinux 0xf28ed6e2 machine_to_phys_nr +EXPORT_SYMBOL vmlinux 0xf294d399 open_exec +EXPORT_SYMBOL vmlinux 0xf2997713 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0xf2a0af8f backlight_device_registered +EXPORT_SYMBOL vmlinux 0xf2b1ac8e __getnstimeofday +EXPORT_SYMBOL vmlinux 0xf2b88a5b phy_disconnect +EXPORT_SYMBOL vmlinux 0xf2bc782c locks_init_lock +EXPORT_SYMBOL vmlinux 0xf2beb4a2 alloc_pci_dev +EXPORT_SYMBOL vmlinux 0xf2fc7f65 spi_release_transport +EXPORT_SYMBOL vmlinux 0xf312cb9d ucs2_strsize +EXPORT_SYMBOL vmlinux 0xf313da4e sha_transform +EXPORT_SYMBOL vmlinux 0xf32055e7 dev_base_lock +EXPORT_SYMBOL vmlinux 0xf3246f35 pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf3346061 pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0xf33c0de0 bio_pair_release +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf37260ab _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0xf3736dc7 single_open_size +EXPORT_SYMBOL vmlinux 0xf3754051 elv_add_request +EXPORT_SYMBOL vmlinux 0xf3851314 blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf396cd21 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0xf3986b06 acpi_os_map_generic_address +EXPORT_SYMBOL vmlinux 0xf3b124e0 clocksource_register +EXPORT_SYMBOL vmlinux 0xf3ba9108 vga_put +EXPORT_SYMBOL vmlinux 0xf3bf0bce __bitmap_complement +EXPORT_SYMBOL vmlinux 0xf3c3aa80 try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xf3c713ea do_SAK +EXPORT_SYMBOL vmlinux 0xf3c91202 tcp_sync_mss +EXPORT_SYMBOL vmlinux 0xf3d0a99e dm_io +EXPORT_SYMBOL vmlinux 0xf3e86d14 cfb_copyarea +EXPORT_SYMBOL vmlinux 0xf3ead18d bioset_integrity_create +EXPORT_SYMBOL vmlinux 0xf3f2c75a key_revoke +EXPORT_SYMBOL vmlinux 0xf3f751e1 pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0xf414a34b eth_validate_addr +EXPORT_SYMBOL vmlinux 0xf4183f78 scsi_host_set_state +EXPORT_SYMBOL vmlinux 0xf4290901 mdiobus_free +EXPORT_SYMBOL vmlinux 0xf432dd3d __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xf436ad3c vc_cons +EXPORT_SYMBOL vmlinux 0xf43e0048 netdev_master_upper_dev_link_private +EXPORT_SYMBOL vmlinux 0xf441ac43 ioread8_rep +EXPORT_SYMBOL vmlinux 0xf4552f8b read_cache_page +EXPORT_SYMBOL vmlinux 0xf4884eee pci_set_power_state +EXPORT_SYMBOL vmlinux 0xf49fbb9c dentry_path_raw +EXPORT_SYMBOL vmlinux 0xf4a07032 kthread_bind +EXPORT_SYMBOL vmlinux 0xf4a5c213 avail_to_resrv_perfctr_nmi_bit +EXPORT_SYMBOL vmlinux 0xf4a82a00 blk_mq_run_queues +EXPORT_SYMBOL vmlinux 0xf4b754fd acpi_resources_are_enforced +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4c1f12c kernel_getsockname +EXPORT_SYMBOL vmlinux 0xf4dabea3 kfree_skb +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf516da58 scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0xf51ae235 touch_nmi_watchdog +EXPORT_SYMBOL vmlinux 0xf51bf88b nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xf51e802b acpi_device_set_power +EXPORT_SYMBOL vmlinux 0xf536d22e acpi_set_gpe_wake_mask +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf53e7b5c ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0xf559ab29 scsi_device_resume +EXPORT_SYMBOL vmlinux 0xf55e139c phy_start_aneg +EXPORT_SYMBOL vmlinux 0xf5739cfd skb_put +EXPORT_SYMBOL vmlinux 0xf5893abf up_read +EXPORT_SYMBOL vmlinux 0xf58b5f1d key_payload_reserve +EXPORT_SYMBOL vmlinux 0xf598be6a rwsem_downgrade_wake +EXPORT_SYMBOL vmlinux 0xf5ac6826 ip6_frag_match +EXPORT_SYMBOL vmlinux 0xf5b10e67 acpi_install_global_event_handler +EXPORT_SYMBOL vmlinux 0xf5c16b8f padata_add_cpu +EXPORT_SYMBOL vmlinux 0xf5ce272b idr_for_each +EXPORT_SYMBOL vmlinux 0xf5d99924 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0xf5eb86ea blk_verify_command +EXPORT_SYMBOL vmlinux 0xf6388c56 sysctl_ip_default_ttl +EXPORT_SYMBOL vmlinux 0xf6673ef1 set_pages_array_wc +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf68687be __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xf6a8a0eb i2c_add_adapter +EXPORT_SYMBOL vmlinux 0xf6bb4729 color_table +EXPORT_SYMBOL vmlinux 0xf6c4bcd4 scsi_nonblockable_ioctl +EXPORT_SYMBOL vmlinux 0xf6c93ca5 eth_mac_addr +EXPORT_SYMBOL vmlinux 0xf6cae0db devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0xf6ddc9b3 pipe_unlock +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf7289d14 __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0xf7406db4 netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0xf741aa33 udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0xf741c793 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xf754a748 phy_connect +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf75d66c0 pci_find_bus +EXPORT_SYMBOL vmlinux 0xf787b197 pnpacpi_protocol +EXPORT_SYMBOL vmlinux 0xf78aabea block_write_begin +EXPORT_SYMBOL vmlinux 0xf7a65686 dquot_scan_active +EXPORT_SYMBOL vmlinux 0xf7adcaf3 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0xf7b3771b sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0xf7d094d0 simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0xf7f1b963 block_write_full_page +EXPORT_SYMBOL vmlinux 0xf7f6cc91 tcp_sendpage +EXPORT_SYMBOL vmlinux 0xf803fe39 bitmap_set +EXPORT_SYMBOL vmlinux 0xf80de9ff hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf812cff6 memscan +EXPORT_SYMBOL vmlinux 0xf827cb83 free_reserved_area +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82cfd1a proc_dostring +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf8347a30 set_user_nice +EXPORT_SYMBOL vmlinux 0xf8496250 sock_kmalloc +EXPORT_SYMBOL vmlinux 0xf859e29a phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0xf88e0ee2 acpi_get_table_header +EXPORT_SYMBOL vmlinux 0xf8983de7 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0xf8c4240f sk_common_release +EXPORT_SYMBOL vmlinux 0xf8d3710e generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0xf8d50471 cap_mmap_file +EXPORT_SYMBOL vmlinux 0xf8de6324 dcb_getapp +EXPORT_SYMBOL vmlinux 0xf8e8d6f2 ata_print_version +EXPORT_SYMBOL vmlinux 0xf911a640 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0xf9159b8a dev_add_pack +EXPORT_SYMBOL vmlinux 0xf97562d8 devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0xf97749d4 scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0xf99285c2 filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0xf995838d done_path_create +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9ae1fc0 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0xf9ba60e8 mount_subtree +EXPORT_SYMBOL vmlinux 0xf9bc2ca8 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xf9c0b663 strlcat +EXPORT_SYMBOL vmlinux 0xf9ef7dce complete_request_key +EXPORT_SYMBOL vmlinux 0xf9f03add netlink_set_err +EXPORT_SYMBOL vmlinux 0xfa03f3e4 __blk_end_request_all +EXPORT_SYMBOL vmlinux 0xfa23921a generic_delete_inode +EXPORT_SYMBOL vmlinux 0xfa2cb202 input_get_keycode +EXPORT_SYMBOL vmlinux 0xfa3abcaa mmc_remove_host +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa66f77c finish_wait +EXPORT_SYMBOL vmlinux 0xfa684a33 dcb_setapp +EXPORT_SYMBOL vmlinux 0xfa7f3156 wl12xx_get_platform_data +EXPORT_SYMBOL vmlinux 0xfaaa8083 get_tz_trend +EXPORT_SYMBOL vmlinux 0xfab383b9 rename_lock +EXPORT_SYMBOL vmlinux 0xfab59791 scsi_execute +EXPORT_SYMBOL vmlinux 0xfac0bf53 acpi_gpiochip_request_interrupts +EXPORT_SYMBOL vmlinux 0xfac44333 gen_new_estimator +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfadc6642 set_pages_array_wb +EXPORT_SYMBOL vmlinux 0xfae67b1f cap_mmap_addr +EXPORT_SYMBOL vmlinux 0xfaf27927 bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0xfaf98462 bitrev32 +EXPORT_SYMBOL vmlinux 0xfafbd535 rfkill_alloc +EXPORT_SYMBOL vmlinux 0xfb0443fb acpi_get_parent +EXPORT_SYMBOL vmlinux 0xfb328dd5 simple_rename +EXPORT_SYMBOL vmlinux 0xfb331311 blk_integrity_register +EXPORT_SYMBOL vmlinux 0xfb43effe in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xfb578fc5 memset +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb7948b4 tty_lock +EXPORT_SYMBOL vmlinux 0xfb805db8 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0xfb80c7a0 acpi_walk_namespace +EXPORT_SYMBOL vmlinux 0xfb94103e __clzdi2 +EXPORT_SYMBOL vmlinux 0xfb9696b3 nf_log_unset +EXPORT_SYMBOL vmlinux 0xfb992690 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbb16525 mmc_interrupt_hpi +EXPORT_SYMBOL vmlinux 0xfbb8125a generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0xfbf330c0 sock_kfree_s +EXPORT_SYMBOL vmlinux 0xfc02b7ad sysctl_tcp_wmem +EXPORT_SYMBOL vmlinux 0xfc125246 mb_cache_create +EXPORT_SYMBOL vmlinux 0xfc16bb57 devm_gpiod_get_index +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc531fb9 tcp_init_sock +EXPORT_SYMBOL vmlinux 0xfc635ad2 blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0xfc6d3408 register_qdisc +EXPORT_SYMBOL vmlinux 0xfc86e99f dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0xfc872fd1 get_ibs_caps +EXPORT_SYMBOL vmlinux 0xfc923e9d sk_wait_data +EXPORT_SYMBOL vmlinux 0xfca873f6 inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0xfcaa04a0 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xfcac0d40 acpi_install_interface_handler +EXPORT_SYMBOL vmlinux 0xfcaf9cb7 lro_receive_skb +EXPORT_SYMBOL vmlinux 0xfcb3ba64 simple_write_end +EXPORT_SYMBOL vmlinux 0xfcb77cfd ipmi_free_recv_msg +EXPORT_SYMBOL vmlinux 0xfcb926cd kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xfcc2a43c utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0xfcc54f91 lg_local_lock_cpu +EXPORT_SYMBOL vmlinux 0xfcd14922 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0xfcd21665 ether_setup +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfcfa03ff fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0xfd04d8ca skb_copy_expand +EXPORT_SYMBOL vmlinux 0xfd05e7f9 blk_end_request_all +EXPORT_SYMBOL vmlinux 0xfd172851 padata_do_parallel +EXPORT_SYMBOL vmlinux 0xfd6293c2 boot_tvec_bases +EXPORT_SYMBOL vmlinux 0xfd99623a ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xfda0dbe8 ftrace_print_hex_seq +EXPORT_SYMBOL vmlinux 0xfdb9b629 ioread32be +EXPORT_SYMBOL vmlinux 0xfdbe0288 pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0xfdbe1742 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0xfdc12ef9 lease_get_mtime +EXPORT_SYMBOL vmlinux 0xfdca51be jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0xfdd73efb d_make_root +EXPORT_SYMBOL vmlinux 0xfde58aae tcp_splice_read +EXPORT_SYMBOL vmlinux 0xfdee7d42 _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0xfdf5b153 pci_release_region +EXPORT_SYMBOL vmlinux 0xfdfb792f amd_iommu_pc_supported +EXPORT_SYMBOL vmlinux 0xfdfc0b3b fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0xfdfd888e security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe0450ec sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0xfe047ce6 acpi_enter_sleep_state +EXPORT_SYMBOL vmlinux 0xfe26fc7c nr_node_ids +EXPORT_SYMBOL vmlinux 0xfe3062f6 unlock_rename +EXPORT_SYMBOL vmlinux 0xfe3539c3 twl6040_reg_write +EXPORT_SYMBOL vmlinux 0xfe59f4a0 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0xfe5ae3f0 scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0xfe5c30b0 pci_enable_msi_block_auto +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe7c4287 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0xfe8bcb72 sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0xfe9ebbbb acpi_osi_is_win8 +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfeebc7c4 __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0xfef96e23 __scsi_print_command +EXPORT_SYMBOL vmlinux 0xfefe324f splice_from_pipe_end +EXPORT_SYMBOL vmlinux 0xff03a8d0 padata_alloc +EXPORT_SYMBOL vmlinux 0xff041295 tcf_hash_create +EXPORT_SYMBOL vmlinux 0xff1c44a2 dma_pool_create +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff32145e bio_init +EXPORT_SYMBOL vmlinux 0xff3fbe65 inode_set_bytes +EXPORT_SYMBOL vmlinux 0xff5c84c0 mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff6bad7a pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0xff6e7b95 devm_request_and_ioremap +EXPORT_SYMBOL vmlinux 0xff7559e4 ioport_resource +EXPORT_SYMBOL vmlinux 0xff783576 module_refcount +EXPORT_SYMBOL vmlinux 0xff784133 seq_putc +EXPORT_SYMBOL vmlinux 0xff7af292 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0xff8c97ac md_register_thread +EXPORT_SYMBOL vmlinux 0xff9116a9 gen10g_config_aneg +EXPORT_SYMBOL vmlinux 0xff9ca065 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0xffb48f6b pci_enable_msi_block +EXPORT_SYMBOL vmlinux 0xffbae79c sock_i_ino +EXPORT_SYMBOL vmlinux 0xffc22e95 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0xffd5a395 default_wake_function +EXPORT_SYMBOL_GPL arch/x86/crypto/aes-x86_64 0x7060bf0a crypto_aes_encrypt_x86 +EXPORT_SYMBOL_GPL arch/x86/crypto/aes-x86_64 0xe409b491 crypto_aes_decrypt_x86 +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x13a65ecf camellia_ecb_enc_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x17bf48dc camellia_xts_dec_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x1a08ded1 camellia_xts_enc +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x47129015 camellia_xts_enc_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x7d54edc2 camellia_cbc_dec_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x7e87ef55 camellia_ecb_dec_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x8f185793 camellia_xts_dec +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x9e8086dc camellia_ctr_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x16061d06 __camellia_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x1636abdf __camellia_enc_blk +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x1da0e256 camellia_crypt_ctr +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x31bbe42b camellia_crypt_ctr_2way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x50dc55b6 __camellia_enc_blk_2way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x687250cb xts_camellia_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x930f687f camellia_decrypt_cbc_2way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x9867700c lrw_camellia_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0xa41a5ad3 camellia_dec_blk +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0xe3e4b435 lrw_camellia_exit_tfm +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0xf4521fda camellia_dec_blk_2way +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x0b634a30 glue_cbc_encrypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x2443650d glue_xts_crypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x4084e027 glue_ctr_crypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x8f02ac4d glue_xts_crypt_128bit_one +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xad02e16a glue_cbc_decrypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xe08f2ad6 glue_ecb_crypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xef118886 glue_ctr_crypt_final_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x016a957f serpent_xts_enc_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x0c5a8af6 serpent_xts_dec_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x0ff3c26d serpent_xts_dec +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x606a8162 serpent_cbc_dec_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x79ff0b7a serpent_ecb_dec_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x8b247751 lrw_serpent_exit_tfm +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x9ae34b2f serpent_xts_enc +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x9e018632 __serpent_crypt_ctr +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x9f99663c serpent_ctr_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xa84ea33d serpent_ecb_enc_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xe8653460 lrw_serpent_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xf2d6b7f0 xts_serpent_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64 0x19dc7881 twofish_dec_blk +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64 0x5e752773 twofish_enc_blk +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0x1fd77fb1 twofish_dec_blk_3way +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0x61694b97 twofish_dec_blk_cbc_3way +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0x8d75ab44 twofish_enc_blk_ctr +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0x8e856922 twofish_enc_blk_ctr_3way +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0xc25345f1 xts_twofish_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0xce3c7821 lrw_twofish_exit_tfm +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0xd8e0c661 lrw_twofish_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0xf2e80e9c __twofish_enc_blk_3way +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x006cd52c kvm_mmu_flush_tlb +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x00aaf935 kvm_disable_tdp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0c7be4a5 kvm_before_handle_nmi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0d2f1bfe kvm_mmu_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x108cdbc8 kvm_get_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x10b0de3e kvm_inject_realmode_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x10fb1cf5 kvm_vcpu_block +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x16397524 kvm_inject_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x18c5f8eb kvm_get_guest_memory_type +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1cfe78d1 kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1e14bd99 kvm_set_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1e52accb kvm_emulate_hypercall +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x20de5193 kvm_disable_largepages +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2102d38e kvm_get_cs_db_l_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x279c8932 fx_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x29c163c0 kvm_write_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2c1f952b kvm_fast_pio_out +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3025b309 kvm_clear_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x317f9e6b kvm_enable_efer_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x32758697 kvm_resched +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x334069cc kvm_arch_has_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x349abc4a kvm_is_linear_rip +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3a229470 kvm_arch_unregister_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3b5dd35e __tracepoint_kvm_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3c28ee7a x86_emulate_instruction +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3d1a4bb0 kvm_complete_insn_gp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3de08404 kvm_set_shared_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x431925fc kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4330042e kvm_apic_update_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x434a8a2d kvm_read_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x46d7ed72 kvm_clear_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4c51f664 __tracepoint_kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4e23df9b kvm_mmu_invlpg +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4e2aa18d kvm_set_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4f5c33dc gfn_to_hva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x51a57a5d gfn_to_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x524db574 handle_mmio_page_fault_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x53a2a3f7 __tracepoint_kvm_inj_virq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x59ac9421 mark_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x59e3eac1 kvm_find_cpuid_entry +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5bb4d216 kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5e31ca9e kvm_set_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x602bd937 gfn_to_pfn_async +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x60b42838 kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x62ac60f0 kvm_write_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x62d8ebd4 kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x64a34f49 __tracepoint_kvm_nested_vmexit_inject +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x661fdd7d kvm_mmu_unprotect_page_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6668960d gfn_to_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x669da1fd kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6757b96e kvm_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x684c6b8e kvm_put_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6a636c55 kvm_emulate_halt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x709cd8cb kvm_spurious_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x70c90302 kvm_inject_pending_timer_irqs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x70d9096d kvm_set_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x713d86c0 kvm_mmu_unprotect_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x720f8b4d kvm_mmu_reset_context +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x76df156b kvm_write_guest_virt_system +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7a84f718 kvm_set_cr4 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7aa64803 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7c502ab9 __tracepoint_kvm_nested_intr_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7cc58673 kvm_release_page_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7f2c1163 __tracepoint_kvm_nested_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x831327da kvm_max_guest_tsc_khz +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x83c70883 kvm_emulate_wbinvd +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x84db59da kvm_lapic_set_eoi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x88fc5b9d kvm_get_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x890e38c9 kvm_set_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8a26f7b0 __tracepoint_kvm_nested_intercepts +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8a762543 kvm_require_cpl +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8ce4f3ab kvm_enable_tdp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8d412770 kvm_set_cr0 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8da01274 kvm_get_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8e1cd06f kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8e9eefef kvm_is_visible_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9101b6f1 kvm_lmsw +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x952650b5 load_pdptrs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x97fc4690 kvm_after_handle_nmi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9979ab12 kvm_arch_register_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x99cee2e1 kvm_read_guest_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9a216313 kvm_define_shared_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9cd4d89c kvm_get_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9d504ca4 kvm_read_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9d86010e kvm_mmu_load +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9ee59155 __tracepoint_kvm_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9f526c68 kvm_get_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9fe152a3 gfn_to_pfn_prot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa0cb1a42 kvm_mmu_sync_roots +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa0ec3a0a gfn_to_hva_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa1c89d87 kvm_vcpu_cache +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa508e36b __tracepoint_kvm_skinit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa7d5c68d kvm_read_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa9afaf79 kvm_rdpmc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa9d21432 kvm_mmu_unload +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xaa5bb112 kvm_valid_efer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xaa79cab5 __tracepoint_kvm_cr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xacf7f97c gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xaf275715 __tracepoint_kvm_nested_vmrun +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xaf58d213 kvm_x86_ops +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb39a51ca kvm_apic_set_eoi_accelerated +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb76b11c4 gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb7bf4ac8 kvm_apic_write_nodecode +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb7e8df24 kvm_get_dirty_log +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb9bb81e1 kvm_set_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xba9ed435 kvm_mmu_set_mmio_spte_mask +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbaedfe81 kvm_read_guest_page_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbb9400d8 kvm_vcpu_uninit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbbd9c7d3 __kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbbe90f0c kvm_vcpu_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbf3f4bef kvm_write_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc6cf7590 kvm_inject_nmi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcb52bb5e kvm_set_cr3 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcce568d5 kvm_vcpu_kick +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xce5ee7d7 kvm_requeue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcef3fec5 __tracepoint_kvm_write_tsc_offset +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcf3a5d98 kvm_release_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd0459e67 kvm_has_tsc_control +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd0b2727a kvm_mmu_set_mask_ptes +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd1c5d6c5 kvm_task_switch +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd4ddd959 kvm_get_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd4fa1f5d kvm_emulate_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd71df59e kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdb3cf4ae kvm_init_shadow_ept_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdb86557a kvm_mmu_get_spte_hierarchy +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdeb9e564 __tracepoint_kvm_invlpga +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe15b1d07 kvm_set_xcr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe1e1b014 kvm_irq_has_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe7148b88 kvm_requeue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xea02326f kvm_queue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeafad4c3 kvm_get_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeb0444a9 kvm_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf1883822 kvm_queue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf3e57e1e kvm_cpu_has_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf4dc6507 gfn_to_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf8746cc3 gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf8a858c4 kvm_init_shadow_mmu +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x0a051525 ablk_decrypt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x19c64ba6 ablk_encrypt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x37875ad3 ablk_init_common +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x3dbec1ab __ablk_encrypt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x7b3f66e2 ablk_set_key +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x950fc609 ablk_init +EXPORT_SYMBOL_GPL crypto/ablk_helper 0xa8342948 ablk_exit +EXPORT_SYMBOL_GPL crypto/af_alg 0x289197b2 af_alg_cmsg_send +EXPORT_SYMBOL_GPL crypto/af_alg 0x28bfa2d7 af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0x32c564cd af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x3ad421cc af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x46f8a782 af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0x65eef7f4 af_alg_wait_for_completion +EXPORT_SYMBOL_GPL crypto/af_alg 0xa769c1e3 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xca3db70c af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xda07ee4a af_alg_complete +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x396fc72d async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x31b3c597 async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x487c0306 async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x311ebca5 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xc5409b7c async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x12d22dc2 __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xa48959b7 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xb25d26ba async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xc7a27a4f async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x6007c17c async_xor_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xf4e61921 async_xor +EXPORT_SYMBOL_GPL crypto/authenc 0x587ef278 crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0xc7729f92 blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x27278ca9 __cast5_encrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x4a2a3ca6 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0xca3db466 cast5_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1291971c __cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1e2c961f __cast6_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x39379bf8 cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x8f04034a __cast6_encrypt +EXPORT_SYMBOL_GPL crypto/cast_common 0x08aa6fb7 cast_s1 +EXPORT_SYMBOL_GPL crypto/cast_common 0x0c5fbf8a cast_s3 +EXPORT_SYMBOL_GPL crypto/cast_common 0xe39dd4b4 cast_s2 +EXPORT_SYMBOL_GPL crypto/cast_common 0xee83a4f3 cast_s4 +EXPORT_SYMBOL_GPL crypto/cryptd 0x012f389b cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x0e1661da cryptd_alloc_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x5ac80815 cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x7412925c cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x7560b89b cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xa769f6b3 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xbdfd5715 cryptd_ablkcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xd2f2554b cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0xd8b88e6f cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xe7fd792e cryptd_free_ablkcipher +EXPORT_SYMBOL_GPL crypto/des_generic 0xcfd9a2c0 des_ekey +EXPORT_SYMBOL_GPL crypto/lrw 0x3864eb66 lrw_free_table +EXPORT_SYMBOL_GPL crypto/lrw 0x616c1bae lrw_crypt +EXPORT_SYMBOL_GPL crypto/lrw 0xcd074900 lrw_init_table +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x5ddb33e9 __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x77b39cb4 __serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x8a1a99ad __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xc33b423f serpent_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0x6c3229bb __twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0xd11f2666 twofish_setkey +EXPORT_SYMBOL_GPL crypto/xts 0xb839310c xts_crypt +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0x1c8984c7 acpi_smbus_unregister_callback +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0x87bd07bd acpi_smbus_register_callback +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0xb9a141b0 acpi_smbus_read +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0xe1372311 acpi_smbus_write +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x4936b552 ahci_platform_suspend_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x5e9b59fa ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x63e5b185 ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x68f821ed ahci_platform_resume_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x8a57c51e ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x92f2813f ahci_platform_resume +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x977b01d4 ahci_platform_suspend +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xb25c0c63 ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xc95c74a8 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xd37ce151 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xfabcf17f ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x0aa6da55 ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x1c682d46 ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x2506a7e9 ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x287d5d42 ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x33135a12 ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x43e7bb93 ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x4500d79c ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x462106d4 ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x48bb34d1 ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x4b860c41 ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x58010229 ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5eacba1f ahci_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6907ffd4 ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x694f923e ahci_thread_fn +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6e05c4e7 ahci_hw_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x7e0c678f ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8559ec7a ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8573330b ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8ba854ac ahci_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x962daf9e ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xb733d89d ahci_shost_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xbbb712d7 ahci_sdev_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xe045ba7c ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0xb1f54bb7 __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x02ff9464 cfag12864b_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x0ecb2e5d cfag12864b_disable +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x305dc3c6 cfag12864b_isenabled +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x3389f926 cfag12864b_enable +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x9522a342 cfag12864b_getrate +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0xc48e9d95 cfag12864b_buffer +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x14102f23 ks0108_displaystate +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x48a70518 ks0108_writedata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x4f506333 ks0108_startline +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x6edae968 ks0108_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xbf4774db ks0108_writecontrol +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xedde6df2 ks0108_page +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xfee8ef7b ks0108_address +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x06730da9 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x068a60ca bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0cc805e5 bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x1d41e11f bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x1f428f7a bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x30c79c56 bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x33ff84eb bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x399c3d1f bcma_core_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x5df12d84 __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x66e18d43 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7154209c bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x76d23800 bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7c5bb85e bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8ad670d9 bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x934edccd bcma_find_core +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa1255031 bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xbe3847d4 bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc05698d5 bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc7a4629f bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd19f8428 bcma_core_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd4105876 bcma_core_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe109722d bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf5188a32 bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x1430d08a btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x238724df btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x6ef2ff1b btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x919721be btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x9aa036b1 btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xa6d8186f btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xb4f6802f btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xbdf94163 btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xce67f376 btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xd9c77fb2 btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/cpufreq/speedstep-lib 0x1b1f2bda speedstep_get_freqs +EXPORT_SYMBOL_GPL drivers/cpufreq/speedstep-lib 0x2b67f096 speedstep_get_frequency +EXPORT_SYMBOL_GPL drivers/cpufreq/speedstep-lib 0xd7ab2c0c speedstep_detect_processor +EXPORT_SYMBOL_GPL drivers/dca/dca 0x01718645 dca_add_requester +EXPORT_SYMBOL_GPL drivers/dca/dca 0x01a33ab9 dca_unregister_notify +EXPORT_SYMBOL_GPL drivers/dca/dca 0x16fa82e9 unregister_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x28831144 dca_remove_requester +EXPORT_SYMBOL_GPL drivers/dca/dca 0x31a2c8df dca_get_tag +EXPORT_SYMBOL_GPL drivers/dca/dca 0x60b5a787 free_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0xac34ecec dca_register_notify +EXPORT_SYMBOL_GPL drivers/dca/dca 0xb8e31b17 alloc_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0xe88ab855 register_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0xfa36c63b dca3_get_tag +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x2a3b2808 dw_dma_shutdown +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x76bf92d6 dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x885e590c dw_dma_resume +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xd1c1bde6 dw_dma_suspend +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xd5726a81 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/edac/amd64_edac_mod 0xf4dc0575 amd64_get_dram_hole_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x15c51daf edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x3340db5f edac_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x3ac504a3 edac_mc_del_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x3b2d3f00 edac_device_handle_ce +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x42684a27 edac_mc_add_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x4579f182 edac_pci_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x4604ddb1 edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x59b9d5cd edac_pci_reset_delay_period +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x59e0ea36 edac_mc_alloc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x5d97aa77 edac_pci_handle_npe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x69256ae1 edac_mc_free +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x69259f22 edac_mem_types +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x7ba480c2 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x7ff72098 find_mci_by_dev +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xa4305762 edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xa53a21ed edac_device_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xaecba7ba edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xbc6085bb edac_device_handle_ue +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc711ac89 edac_device_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc73c6e1a edac_device_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xdb727f8f edac_pci_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xdcdc2c12 edac_pci_handle_pe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xdd1202ee edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xea916f72 edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x14878009 amd_report_gart_errors +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x1d34e996 pp_msgs +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x21626132 amd_register_ecc_decoder +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x737912b3 amd_unregister_ecc_decoder +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0xb30b7e56 amd_decode_mce +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xf4ade51f fw_card_release +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0x013fbdac cs5535_gpio_set +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0x93f8fe67 cs5535_gpio_set_irq +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0xc0bb404a cs5535_gpio_setup_event +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0xd3bd9300 cs5535_gpio_isset +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0xe07c0954 cs5535_gpio_clear +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x47a1e964 bgpio_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x5537d866 bgpio_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x402a651a __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x5e8021b3 __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x24769fcc drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x466bcb5b drm_vm_open_locked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x5f456351 drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x05876c69 i915_gpu_busy +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x08a7896d i915_gpu_raise +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x2b2c59ae i915_release_power_well +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x402468e9 i915_gpu_lower +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x500858b9 i915_read_mch_val +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x96108893 i915_request_power_well +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0xe7237b0b i915_gpu_turbo_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x6adf436b ttm_prime_fd_to_handle +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x6bf1a90b ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x79fe32ad ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xce36343e ttm_prime_handle_to_fd +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xf03a1363 ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/hid/hid 0x00988078 hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x07a60924 hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x07bead2c hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0d2d1eff hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0e03bafd hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x10d734b5 hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1f337241 hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x208bbc1c hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2918a4e4 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x39ccada4 hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4906a967 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5719cbdd hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5bb05bb4 hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x67a2e9fb hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6bfe15e6 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6e587d58 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x78ee843f hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x79b70e2c hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x844cf293 hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x877418b7 hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x92adfe91 hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x974709c5 hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9e348d00 hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa35cd0b6 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa505349f hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa6b93bea hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa84e6a8b hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xac2fa679 hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb88388ec hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd4526cc4 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd6eb5630 hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd9cb3537 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe2498b66 hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe9a24f3b hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf5033796 hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x2f622ea1 roccat_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x85f46661 roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x8c4181ec roccat_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x3782148c roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x57a8aaa0 roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xa6b14cf0 roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xb7b2bfc2 roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xdca79ca3 roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xe50a40dc roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x3d849514 sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x46fd16b9 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x57437c7e sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x70692ff3 sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x75cc3d9b sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x9d2ba799 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xcfab1045 sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xec099615 sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x01fd453e usbhid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x9f198c88 hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x150dbc0c hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x1b34ba61 hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x1d56fe50 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2b7bb8b0 hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x45e71f33 hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x570dfb21 hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x6240f0e4 hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x74bca9a1 hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x8ec19045 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x9049b79e hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x948c30db hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xe77c8ae7 hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xf5803691 hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x06246e75 vmbus_get_outgoing_channel +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x10ca0b90 vmbus_establish_gpadl +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x358fafa5 vmbus_prep_negotiate_resp +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x37a8f14a vmbus_teardown_gpadl +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x46a417ca vmbus_proto_version +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x4b11adad vmbus_close +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x4ca95c3d vmbus_open +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x93bd9183 __vmbus_driver_register +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x9a3f5d52 vmbus_set_sc_create_callback +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xb4c37a5c vmbus_driver_unregister +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xd5864575 vmbus_are_subchannels_present +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xe5339714 vmbus_recvpacket_raw +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xf45dd651 hyperv_mmio +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xf799d08e vmbus_sendpacket_multipagebuffer +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xfecf99c5 vmbus_sendpacket_pagebuffer +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xb4365d22 adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xcea5a8d9 adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xe33f3b55 adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x0051f7cc pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x082b1692 pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x0dcff77e pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x1ffb0e38 pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x48c6e31a pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x69f5f399 pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x756d699d pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x84cbe0e0 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x858ce4dd pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xaa71eb6f pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xba69d897 pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xf9fb22f7 pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x0fcce3c9 i2c_dw_xfer +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x1e172e06 i2c_dw_clear_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x3a84c972 i2c_dw_enable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5bb1170b i2c_dw_isr +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x7d960b63 i2c_dw_disable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xc5e447b4 i2c_dw_is_enabled +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xcab290a4 i2c_dw_read_comp_param +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xdbbefdff i2c_dw_func +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xf1f452ca i2c_dw_init +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xf34808a5 i2c_dw_disable_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-nforce2 0xcf7f14fb nforce2_smbus +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x2f056bdf i2c_del_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x5a21dcb7 i2c_add_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x2a86cd44 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xf032fe83 i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x06fa5f7f ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x0c12c1fb ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x16c04e90 ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x5a167606 ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x80084175 ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x8b4b3862 ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xaf3a6b55 ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xce773e8b ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xf212b0e9 ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x198a839c adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x3fe97228 adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x5f373c88 adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x66d64104 adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x78fd8dad adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x86eab4ca adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x96364e60 adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xac74d32d adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xb0aafa1e adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xe59150c1 adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xed55e65b adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xf1285f47 adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0697c610 iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0d5846a0 iio_update_demux +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0f9e7a82 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x250dc0fa iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x267c0508 iio_channel_release_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2a1fab3c iio_channel_stop_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3cbcea30 iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x43c6c6f1 iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4651e480 iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x479ef2dc iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x50fdd69e iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x65e4ae1d iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x665a24b4 iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7631440f devm_iio_trigger_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x78f92108 iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8099dd8e iio_scan_mask_set +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9d811203 iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa67d72b8 devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb8043d81 iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xbcdca793 iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xc2689d5d iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xc7be78f6 iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xc8fedbdc iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd126ee28 iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd9024055 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd959d955 iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe17fbdff iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe441a954 iio_scan_mask_query +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe6901ba4 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xec26cd7c devm_iio_device_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xee5800c9 iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf5b16d63 devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/infiniband/hw/ipath/ib_ipath 0x1514b2b2 ipath_debug +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0xabf39849 input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x0a22e7d6 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x11db14c4 cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x47b03608 cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x95385e6a cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xc5628c44 cyttsp_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xd5c65b92 cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xf0d6e715 cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x2225d5b6 cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0xdd3c55da cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x0885b341 wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x19c21b35 wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x34be93da wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x463de7df wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x60a6a4da wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x791a12cd wm9713_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x80daf7f8 wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x9a34f7f9 wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xa80e0f09 wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xb3c5117e wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xb5b01253 wm9712_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xbee1173a wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x002eeb9f ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x057406b4 ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x23f44c42 ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x2d667ff2 ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x346fbe5a ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x57fe47b1 ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xaa2e44b4 ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xc015035b ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xccd56fa9 ipack_bus_register +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0x23359aff unregister_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0xce1414b2 register_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x04246e50 gigaset_skb_rcvd +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x060beea2 gigaset_add_event +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x2d4be62a gigaset_start +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x31d5e14f gigaset_initcs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x40f022ee gigaset_fill_inbuf +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x433a112e gigaset_blockdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x454aa44f gigaset_debuglevel +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x4c4b1846 gigaset_freecs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x5a58bdbb gigaset_skb_sent +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x5d1584cd gigaset_stop +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x6021c6f3 gigaset_handle_modem_response +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x68f67ffa gigaset_m10x_input +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x72f1c196 gigaset_m10x_send_skb +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8068127f gigaset_freedriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x93d5e9bf gigaset_initdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x9be9c06a gigaset_if_receive +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xa3151853 gigaset_dbg_buffer +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xd863e5cd gigaset_shutdown +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xe4dad2a6 gigaset_isdn_rcv_err +EXPORT_SYMBOL_GPL drivers/leds/dell-led 0x86fd1ffb dell_app_wmi_led_set +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x00fa02a1 lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x051c243c lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x0c45fea2 lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x328f6132 lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x87566939 lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xac923b16 lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xb67018b8 lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xbcea74c4 lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xbf5262c4 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xd820096a lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xed13c3b2 lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x749e05f2 ledtrig_flash_ctrl +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x7903e46e ledtrig_torch_ctrl +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x0ec17d44 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x26062738 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x40c27b88 __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x4c49fc16 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x51a15737 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x616b6217 __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6907ac0d __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7be42a1c __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7e532a71 __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x8a4afa11 __tracepoint_bcache_alloc_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x914361f4 __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x9272fb0f __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x938cc2b2 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa649dd21 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb157059f __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb317649e __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb493772a __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb834c124 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbb1fc0a4 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbc4fcb1e __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc1474d91 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc379085a __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc5aed8ad __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc7eda602 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xce055cbe __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe20fe821 __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe24daf87 __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe2ed0930 __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xea2303e0 __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xef1156ee __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfc131205 __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2332569e dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x3b36b13d dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x594c109d dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x5d0574d6 dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xa02dad51 dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb6d5c65d dm_deferred_set_add_work +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb70b342a dm_bio_prison_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xebd06eaf dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xfd4bc2aa dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xfdffad47 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6aba7f5e dm_bufio_get_block_number +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x852ca605 dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9310ba06 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9c256008 dm_bufio_get_device_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa1d2413a dm_bufio_read +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa448e19f dm_bufio_prefetch +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa82b2066 dm_bufio_write_dirty_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xafbda3f3 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc9a3422d dm_bufio_write_dirty_buffers_async +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xcbb1bae2 dm_bufio_get +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd4bddf5c dm_bufio_issue_flush +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe6024e59 dm_bufio_release +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xebcc64a4 dm_bufio_get_block_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xeca7949e dm_bufio_client_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x1a2f6b5b dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x78e401fc dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x7ddd23ea dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x91dcbcef dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xbb658b89 dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xc6c03d38 dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xd0054b67 dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x0777cd73 dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x17893b6b dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x0bb67770 dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x0de1da6e dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x35775b57 dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x38efaf5a dm_region_hash_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3a18389a dm_rh_update_states +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3ad66b5d dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x4430764e dm_rh_region_to_sector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x45ab972a dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x677b7114 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7774620f dm_rh_stop_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7d053fc5 dm_rh_start_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa53387c7 dm_rh_flush +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa68e1f06 dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa83588eb dm_rh_recovery_end +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd0418d96 dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfad9d53a dm_rh_get_region_size +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfc62ef4e dm_rh_get_region_key +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfd93482e dm_rh_recovery_in_flight +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0054f69d dm_tm_pre_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x01445176 dm_btree_find_highest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x17c36f29 dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1cac81ac dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2025e954 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2c112836 dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f40da68 dm_bm_set_read_write +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f74609d dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x32b5f546 dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x38c75c44 dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3ad0f55b dm_bm_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x40f7bd91 dm_tm_inc +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x42dbdfc3 dm_tm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x49b35849 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x55b4bd4d dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x58baad51 dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5e6aea80 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x62c1b9ee dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x68fae9d2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x72289260 dm_block_manager_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7ade1071 dm_tm_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7b047bd9 dm_tm_create_non_blocking_clone +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x80c89b3d dm_tm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x827a42f4 dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x832bf228 dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x858c8d94 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89f1e1cc dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x966a8838 dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9e798e22 dm_bm_set_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9f624559 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa0bbbb49 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa13861b4 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa87c5b4d dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaee02382 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xafeda29f dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb7bad799 dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb9a6ecf8 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbd50ebbb dm_btree_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xca40abd5 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd041d62b dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd29923fb dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe44b4b9b dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xed1e1f96 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf375d009 dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf475af48 dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf5455120 dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/raid1 0x29f68d4e md_raid1_congested +EXPORT_SYMBOL_GPL drivers/md/raid10 0xd5194d0e md_raid10_congested +EXPORT_SYMBOL_GPL drivers/md/raid456 0xbc0cc94f md_raid5_congested +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x041cad6f saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x04ee4077 saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x36b69f1b saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x3bc94a27 saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x4eb67f96 saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x8ec522e0 saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x964961df saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xc9405173 saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe4bcc624 saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xfedd7d79 saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x0e0b8527 saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x5676399f saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x574940c5 saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x886567f8 saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xb07ec7fb saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xbc8eb381 saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xd861fe80 saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x0eee90ba smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x1ac7c42e smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x22c4d45b smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x3011b1f1 smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x37d91069 smsendian_handle_tx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x4aa53676 sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x4bd45e20 smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x5081128f smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x56cc2668 smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x58ddc4f7 sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x629d9a75 smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x76bde512 smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7b0e21ca sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7c576277 smsendian_handle_message_header +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x8db8e956 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x99a81ab3 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9c2225ed smscore_translate_msg +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbb016a1b sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc46b3c22 smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xd8555d09 sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xf9e13c41 smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0x296fe16f cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0xf9516ba6 tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0xfc4cdc19 cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x0329e69f mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1cb39b1a mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1dc635fa mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x22a6d907 mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x27dcd69f mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x4d80f1d4 mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x51547024 mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x6e38a92e mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x7a2d4d3d mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x875e22ec mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x8de3b172 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x91850c01 mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x93e23260 mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xbfb70a4d mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xc2d158ae mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xee9b010e mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xf57ce447 mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x2099df06 saa7134_s_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x4e7852a1 saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x9a514a10 saa7134_g_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xcf50fadb saa7134_queryctrl +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xe432b326 saa7134_s_std_internal +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x0b583ebd ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x41088989 ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x4966b82b ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7434452a ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x78f641ce ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xbc516256 ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xc0883c1e ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x8297ead2 radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x9961d4e6 radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x0cb38dce ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x0fe3784c ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1fdd20ef rc_open +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x2af6052a ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x37c071b0 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x553efb91 rc_core_debug +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x72f53ba5 rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x752899fc rc_close +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7de496c8 rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7f404db4 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x81aac2bf rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x9b0bad8c rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xbeb76c9c rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xceb6d0f2 ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xcfc20e41 rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xdab8d23e rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xdc27894c rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xdecd4b4e rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xfca0ef36 rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xfd570516 ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0x321ca03c mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0x9d5dfe1d microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0x38607469 mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0xa3f1ae51 r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0xe9a18f00 tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0xa2274d53 tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x3d17f3b7 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x6081e67a tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x3b83bdc1 tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x123cc614 tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x5abd8509 tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x4fbef39a tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x5d622228 tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0xd8c022c8 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x06728564 is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x09fda96d cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x0bbbe162 cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x0d3c3e28 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x0e442eb8 cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x136cfc95 cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x3c694786 cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4f900f74 cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x51cd1402 cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x9e37868f cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xa0a8b694 cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xa99aea76 cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xbb10e9a9 cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xc483ccc4 cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xcceec9c8 cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd9dd94cb cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xe05d14a9 cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xe13e0051 cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xec553d87 cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0x40c779b3 mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0xc08bcf4f mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x10cb73f9 em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x1c202dfe em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x450b7c19 em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x4a39c22e em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x84e67ec1 em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x91128cf5 em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x9d63bb43 em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x9ff37975 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xa2f78a5f em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xa50f06c5 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xb2912bb3 em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xbdfb8e65 em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xcb878cea em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf816cefc em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x5bc61bab tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x6208c9b7 tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xa7754fc6 tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xbaee8ec2 tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x01c483a9 v4l2_get_timestamp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x2c201e83 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x385acc32 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x813f3de4 v4l2_find_nearest_format +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xc3644596 v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xc8f145fe v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xd2242174 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xfb49e53a v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x08982d59 v4l2_match_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x221d2fbc v4l2_enum_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x36e8756a v4l2_find_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x4103badb v4l2_print_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x53105839 v4l2_detect_cvt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6976cfe0 v4l2_valid_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6f344bb9 v4l2_calc_aspect_ratio +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x7eaf8e7a v4l2_detect_gtf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xb0891da2 v4l2_dv_timings_presets +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x15e96a1d v4l2_int_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x611e0b0c v4l2_int_ioctl_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xa5228b24 v4l2_int_device_try_attach_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xb2f96f8a v4l2_int_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xeeaa01ef v4l2_int_ioctl_0 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x06be4e03 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x17eb0eee v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x18a93590 v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x461c696a v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x475a14ac v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x49fc2d1e v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4ce8a8aa v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x52a089b7 v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x612c8d69 v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7880ba34 v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb3c86c0c v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc1912fd4 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xca1af5c5 v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd644790c v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf5487152 v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x05aee593 videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1a011e5a videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1ad75e84 videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x2ab9fb76 videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3396a601 videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x355fd63e __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x359a9e2e videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x38271dc4 videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3e9676b3 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4cce49af videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x5a7f098e videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6281c9e3 videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x62be73cf videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x8ccb56e0 videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x92a059b3 videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x93198e63 videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa7caf527 videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb07e5646 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc6c186b4 videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc710c71f videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xdcb70bf5 videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe7f5c6d1 videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xfa2ee392 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xfb7e829d videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x4500ba58 videobuf_queue_dma_contig_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x57a7db9d videobuf_to_dma_contig +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x91a77848 videobuf_dma_contig_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x38628e35 videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x38b360b0 videobuf_dma_init_user +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x553a86d0 videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x6327862b videobuf_dma_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x69f2bffd videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xb9c3d98d videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xd1d40ea6 videobuf_dma_init_overlay +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xd576bd7b videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xf177ce91 videobuf_dma_map +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xfa1c22bb videobuf_dma_init_kernel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x4076e81a videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x4fd2441d videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x7208e321 videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x0a884c50 vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x0df07a39 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x11fea9b7 vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x18b82168 vb2_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x21f26936 vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2589917e vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2964a065 vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2aae40dc vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2b3ff3a4 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x4c1b0208 vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x4f86acb2 vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x520a924f vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x5425de1d vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x5c27e320 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x5f7c419b vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x76dd3350 vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x7ae1ad77 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x800bcb28 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x84b5a89c vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x8d8effe4 vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x9095923f vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x91f83f86 vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x92c701bd vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x979d71d7 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x97f02b0b vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa3b2be1b vb2_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xac5df5bb vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xad78a62a vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb10ef1ba vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb51af8bd vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xbf47e162 vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd7073e59 vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xe9bd7912 vb2_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xea59edb1 vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0x5f26810f vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xd407b1f3 vb2_dma_contig_init_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xe57f0426 vb2_dma_contig_cleanup_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-sg 0x37afae5e vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x3e96cc80 vb2_put_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x55da267b vb2_get_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x6962f50e vb2_get_contig_userptr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x76f5f354 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-vmalloc 0xf539a960 vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0439afb2 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x051c24a6 v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0acbe373 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x261f9622 v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2a08796d v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2f3d53c4 v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x41d325ed v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x424cb5cd v4l2_compat_ioctl32 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x45d969af v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4f616a84 v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8c508eeb v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8d01e692 v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8dc98d80 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa2a14f82 v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa703f116 v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xac60ee41 v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbcf81799 v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc67ed682 v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc7434eea v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcb2e837f v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xced2747e v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcf09500b v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd4180a83 v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe1983d1f v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x724ca77a i2o_dma_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x76a9301f i2o_pool_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x9a838d5e i2o_dma_map_sg +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xabfbc448 i2o_dma_map_single +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xc28aa427 i2o_dma_realloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xcf59f3be i2o_pool_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xcfef35b5 i2o_dma_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xe4634afd i2o_sg_tablesize +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x62080d5a pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xa8778aaa pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xe1f68455 pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x317ff770 kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x5644e585 kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x68cdceff kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x6fb230f9 kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xa443c577 kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xa6844b67 kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xbcd51bf7 kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xbd3c65d9 kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xdabcf942 lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xdfe99e71 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xea865c0c lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x056847bd lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x1480b085 lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x3b7c318b lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x3f9933cb lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x53d715a9 lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xa8061609 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xab209226 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x3591af9f mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x4708c07d mc13xxx_common_cleanup +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x53c83a98 mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xa64bafe6 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xe6f1e4c6 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xf4fe11ae mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x1020108d pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x4732804a pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x4cba2493 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x7e128914 pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x8606e6d6 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x966259a4 pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x96a4599a pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x9a80e490 pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xaed5877a pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xbf0692e5 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xfba37c16 pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x4c970080 pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x746f2929 pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x8f36d8bd pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x909739b6 pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xa0928ff7 pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xb6d7e09a pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xdd0012ac pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x01a33234 retu_write +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x4fca3918 retu_read +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x26846050 rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x2a645c81 rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x36c748fb rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x3b6e150f rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x3ef01ab1 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x41c40308 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x4f74d8bc rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x5a53a474 rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x7a9ef4c3 rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x7bed8c9d rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x85406e31 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x8f62243c rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x919d4848 rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x9f144380 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xa1e098df rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xc880a498 rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xcc16e5f6 rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xcf812b4d rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xd58723f3 rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xd9575d49 rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xe2c2b8e4 rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x08b5158b si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0d9844af si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x11c82b5b si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x12fdc091 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x15e5606e si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x1ee540b0 si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x23a50d14 si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3a42ad9a si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3c99ded8 si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3ff20735 si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x42951588 si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x499bf4c2 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x57e15507 si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5cccb721 si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6349e401 si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x65447b1e si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6a80904d si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x734e2017 si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7c128067 si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x94c41113 si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9f0062f4 si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xbbae76b1 si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xbd1d7818 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc52df876 si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc557ba00 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd78d3b9d si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd94dbec9 si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xdbd2438e si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe17b4859 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe3e2293a si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe61edd28 si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe69f0f6e si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe7601d24 si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe917b663 si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x063a9523 sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x58bd3bea sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x79443cff sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x9feff246 sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xbaa9a85e sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x5887e1d3 tps65217_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xae065ec1 tps65217_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xb8ffbd5f tps65217_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xf99abdd4 tps65217_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0xffd4dc78 ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x333e69d4 cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x5912978f cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xcfe4a3d8 cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xfcdeee44 cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x27cb133b eeprom_93cx6_multiread +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x63d2ff63 eeprom_93cx6_wren +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x822222db eeprom_93cx6_write +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x98bb5a22 eeprom_93cx6_read +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x1dbc1437 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x1f1da0b6 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x4d779e7c enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x79fd7f7f enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x92ebcff4 enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xbcffcc0a enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xe92ba191 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x09f31e0b lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x45e5a3d2 lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x570c13f8 lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x5da856b8 lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x6ee6da5b lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x86780cc6 lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xe9282155 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xf1ba8f64 lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x009f0d63 mei_cl_disable_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x079d822d mei_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x1fe1dfdd mei_cl_remove_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x3033f489 mei_cl_set_drvdata +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x38288bf9 mei_stop +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x3cdf2689 mei_cl_enable_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x48c1b8f4 mei_irq_write_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x48efae56 mei_reset +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x52f1fa75 mei_cl_send +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x5d84a5b5 mei_cl_get_drvdata +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x6283c226 mei_cl_register_event_cb +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x6d294c87 mei_cl_recv +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x6e0c0545 __mei_cl_driver_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x81187caf mei_cl_driver_unregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x9fcaca1c mei_device_init +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xa1c8adee mei_start +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xa3bd0d48 mei_cl_add_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xd255cac5 mei_cancel_work +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xd36c6139 mei_deregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xe6ecab14 mei_irq_read_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xea6eb4c6 mei_restart +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xf5cedd70 mei_irq_compl_handler +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x42b7cffd st_register +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0xb2aed73d st_unregister +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x0f6680ea vmci_qpair_produce_buf_ready +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x1152e318 vmci_qpair_get_produce_indexes +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x13aa5a5d vmci_datagram_create_handle +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x1872c7af vmci_qpair_produce_free_space +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x1a195863 vmci_context_get_priv_flags +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x31f6ad8f vmci_qpair_peekv +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x3ef56cd5 vmci_qpair_alloc +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x4b630dac vmci_get_context_id +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x4ba5c46b vmci_qpair_peek +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x50a255c9 vmci_doorbell_create +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x53c20507 vmci_qpair_enquev +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x612df9ae vmci_qpair_detach +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x677c36d0 vmci_is_context_owner +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x69ef87ff vmci_datagram_destroy_handle +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x6cc1a5f7 vmci_datagram_create_handle_priv +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x722d488a vmci_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x7d540b50 vmci_qpair_consume_free_space +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x81d61eef vmci_qpair_dequeue +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x9624c58c vmci_datagram_send +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x9973b9b2 vmci_qpair_consume_buf_ready +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x9d16164a vmci_send_datagram +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xccbb53d1 vmci_doorbell_notify +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xcf5ed7ef vmci_event_subscribe +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xcff91c6e vmci_qpair_dequev +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xdac94780 vmci_qpair_get_consume_indexes +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xe67343c1 vmci_qpair_enqueue +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xe7e7c107 vmci_doorbell_destroy +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x2a59e63b sdhci_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x64c30888 sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9a305e2d sdhci_enable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9daee0f4 sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xbd3e2fea sdhci_disable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xc0dba580 sdhci_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xd0f05622 sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xd29fb599 sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xd9869bdc sdhci_send_command +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xe330835d sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xedb14d18 sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x14b82a41 sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x18537c5b sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x232ece60 sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x32b54acf sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x7111d076 sdhci_get_of_property +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x9256a651 sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x98e0fe97 sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x1ec5235c cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xdcf22322 cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xe3db06ca cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x71647adb cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x829db55d cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xfccffe8d cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x6d88f2b9 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x1832e493 cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x7d158dca cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xcd2c89e2 cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0418e12a deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0c63e236 mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0ff44846 mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1529e3bb mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x15cffb6d mtd_is_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1de1d2cc mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x219c9852 put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x276afd9d mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x281946e2 mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x298ff470 mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2f651885 mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3d0dfcca mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4344eda8 mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4b5f9ba5 mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5690d15f get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x58afe41d mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x61f04266 mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x68ab1852 mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6c545072 unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6f099816 mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x764ec4ff register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x791f583c __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7bdba034 mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7c2ef595 mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8a69020a get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9a9f7919 mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9e7803da mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9f3e9827 mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb302e051 mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb76d1e52 __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb793ae62 mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbda5ecaa mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc254efef mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc7ba60f2 kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xcc43b3c2 __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd5f5802c mount_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xdc5a2edf register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xdf740bee mtd_erase_callback +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe01bca9e mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe69824f3 mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xeeaf3180 mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x1e2b4eb3 deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x34c65185 register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x83c7a5ef del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x9a9425a2 add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xc55588e1 mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0x2a5ad7d4 nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0xad9044a7 nand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/sm_common 0xeff2d0a4 sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0x72c4a981 onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0x8e98e694 onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x13ec22eb ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x1645dae1 ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5b57eb85 ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5cfdd22d ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x6ce09997 ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x8109e67e ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x853a5d52 ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x8cd811c6 ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x9d28c3c8 ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xa2a1005f ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc116c6b7 ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xd1ce066e ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xefc54404 ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xfcda9f15 ubi_leb_read +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x27021bc0 unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x494b1985 c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x6a6078e1 c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x7c0b6559 alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xc41d89d6 register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xcfc2e737 free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x17db0887 alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x1cd051aa devm_can_led_init +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x21d3f138 can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x222c295a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x22362a18 can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2e07ecac close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x3b4d8a76 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x44644304 can_led_event +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x466bf59d can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x675fe019 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x67db67a5 alloc_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6924b1a5 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x7332b967 safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x89f9dbe5 open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x9b28957c free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb346573b can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xbfd49b3b can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xa7472fb2 unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xd0080446 alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xdbde2b3a register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xdf6febf5 free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x14a6f8c3 unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x37975f80 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x90400c58 alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xe0915200 register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x1e4bdf68 macb_set_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x2a4d291d macb_ioctl +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x62fd9387 macb_mii_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x75754d80 macb_ethtool_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x98bf116c macb_get_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xa4666cf2 macb_get_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xd2fb3684 macb_set_rx_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x020db5fd mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0cb8bf63 mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x14fc9ce4 mlx4_fmr_unmap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1585cc99 mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x18571686 mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1b72ea4f mlx4_fmr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x20bc5c6f mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x22283b47 mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x227eb67a mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x22972942 mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x26f841ec mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2b89c28c mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2bf8f8ec mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2fe1fec5 mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x32a197de mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3758ab46 mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3a58a181 mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3a676025 mlx4_fmr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x42cbb690 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4360c283 mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4372616c mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x43b23453 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x44728218 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x46fc27ab mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x499d8f7b mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x503c340f mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x50a1a60a mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x52df8a8e mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x54bde302 mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x561f2c47 mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x57a030bc mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x58cfc5a4 mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5c2d29f2 mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x61f1a798 mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x63789b75 mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x63c4a495 mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x63d6f4eb mlx4_map_phys_fmr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x66ad00b3 mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x69ee4066 mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6a0ab264 mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6a880d6e mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6fa2615b mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x74405d31 mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7a33d908 mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x841b8acc __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8a888979 mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9196dee5 mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x93be2a98 mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x960c117e mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x96678576 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x99b6eb1f mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9ac14c1e mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9bc9c15b mlx4_fmr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9c06af8e __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9eaf12db mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa274fe93 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa5753252 mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa7f8439c mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaae894ba mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xac2f72dc mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaf7e4dc1 mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb04784fe mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb0704940 mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb21e13be mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb384b21c mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb86a3f50 mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb8bbaf1c mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xba59290f mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbaa851e1 __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbb5bd85e mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbbc3533e mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbd9765ca mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbdd1545b mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbf7a0e62 mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc03ec76d mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc18ab940 mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc2611159 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcc0840da mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xce33ba0c mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd4fd9259 mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd7708073 mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xded722cf mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe1f4f1e1 mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe24b4e37 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe4048fa6 mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe78f34c8 mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeb4c9f36 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeb5c69ff __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf2872af4 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf65b706d mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf79225f6 mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf7f46dd3 mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf8c1cbb7 mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf9083195 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfb56a083 mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfc0c3164 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfd77f908 mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfdb786d7 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfe6d7608 mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xff210e68 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x110b2378 mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x152e00b9 mlx5_destroy_unmap_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1f05ddef mlx5_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x36b6e765 mlx5_core_mad_ifc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3ebbbc68 mlx5_core_xrcd_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x53a661c7 mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6db055f2 mlx5_core_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8530136d mlx5_core_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x97cd4560 mlx5_create_map_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e8b2bbb mlx5_core_eq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc3af58d7 mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc46997e7 mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd6c4ef56 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd8020bea mlx5_core_destroy_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd815e626 mlx5_core_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe6649cb6 mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfbd55e5c mlx5_core_create_qp +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x54d949f2 macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x719c2474 macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x7fcd79b9 macvlan_start_xmit +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xc3eb355e macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xcc26bc70 macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvtap 0x1fa588a2 macvtap_get_socket +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x613228b4 usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x7e6839fe usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xf1471ac1 usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xfc10986a usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x50b22364 cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x5aa83b07 cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x82ec9c5d cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xa554fc89 cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xa936bb76 cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xbba9c177 cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xd46e0298 cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xef3a7bd9 cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x04b6070f rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x0d428791 rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x134ec905 rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x189b56a8 rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x94418f42 generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xb1e37769 rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x0f8252bd usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x1483f5d5 usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x24192591 usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x25b0d388 usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x31c18337 usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x35bcc5ef usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3e097bf4 usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x43c24143 usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x469b121c usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4e936852 usbnet_get_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x57a6680d usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x58f734fd usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x59a86d3f usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x5ca0db9c usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x70311fbd usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x734be5e5 usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x73d88bb1 usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x785ca98a usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x80122e78 usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x86e650b1 usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8dcdb9ff usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9b376ae7 usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9d3b95be usbnet_set_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xaa8ce2bf usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xad97de00 usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xbcfac7f3 usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xd115f549 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xd8949587 usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xdb58cc4e usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xdf844b42 usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf24cda30 usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xfc4647b3 usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x0eaea0f1 vxlan_sock_add +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x221b5432 vxlan_sock_release +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x3ba646e6 vxlan_src_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x97aa0133 vxlan_xmit_skb +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x9db9c5cf vxlan_get_rx_port +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x0449c630 i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x31970ebb i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x466ade75 i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x4d08bcda i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x55b414b2 i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x6cb98416 i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x6fd97b62 i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x79acbdba i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x7b0b15bc i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb588761c i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xbafd99ef i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xbd839062 i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe0b1524e i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xf14ca52b i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xf33e4d44 i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xf4268d56 i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x12a682fe cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x1bb0bbfb cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x6b2d61d0 cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0xd781a847 cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ipw2x00/libipw 0xd5e88865 libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x40e94991 _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x60122920 il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xb1c58a53 il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xdcc9f853 il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xf81d8247 il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x027cbdba iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x0929c7c1 iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x096123b2 iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x0a36eb12 __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x0a96f355 iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x23b31849 iwl_notification_wait_notify +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x2c7a4550 __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x2e3bceb0 iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x50f37a3a iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5a63110f iwl_nvm_check_version +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5d0a212e iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x6151c975 iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x6165a48e iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x6424750e iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x6715334b iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8c5d5ab3 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x90f12570 __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x95795c57 iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xba6ad60e iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xbb6b594e iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xbde6e8f1 iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xcf341945 iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd1db77fe iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd5f8f32b iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd8f2e285 __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xdd3e32a4 iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xe4384383 __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xf8c6da27 iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x01da1191 lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x030a4c30 lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x34f00ee2 lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x41d69ef5 lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x4babefc5 lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x4dc0c58e lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x62699e23 lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x818b994f lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x8f2345a8 __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xa8857b6b lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xac84b786 lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xb97a8c69 lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xe2cebb49 lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xe4a59d5b lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf20a3309 lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf5c72fa3 lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x0a389366 lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x13933988 lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x444a6852 __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x5f1903ed lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x7b421b57 lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x8e182971 lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xc85e6899 lbtf_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xe77e46fd lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xfa65259e lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0x2594ebfa if_usb_prog_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0x9183c0a2 if_usb_reset_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x15c341a5 mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x1f023040 mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x3788e922 mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x39f9ce93 mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x681e5df2 mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x87f09ac6 mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x8b74f50b mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x929b0f41 mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x98f16802 mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xaa90f300 mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xb507017e mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xbc5fe11a mwifiex_deauthenticate +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xd5214b8e mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xdc1a1499 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x0498889f p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x1c0ace80 p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x4cd35f4f p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x5f14c944 p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x7a2630be p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x8a3875ca p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x90cbcd6b p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xb9b7cae6 p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xce8575fc p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x02e2d643 rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x042d85c0 rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x0c392c64 rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1882f219 rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x19e775c9 rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1a9994a1 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x23885e6c rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x24e94124 rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3b0a7238 rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x5c9c2222 rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x706449eb rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x73693558 rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x79e20e61 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7f828cbe rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x81091e47 rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x83547859 rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8421457a rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x95bf8789 rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x97769ab4 rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x9ebe1b62 rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa0efb9d8 rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa202da5c rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb018662b rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb051d898 rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb5f84b12 rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xc802eae5 rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xcdc09ae8 rt2800_get_tkip_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xce3bee85 rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xcea09c75 rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xdb9f593d rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe10ee7ca rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe2c18ae4 rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe3716a88 rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xeb32c346 rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xebc3fbd4 rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xedf68299 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xee2fb946 rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xfc9cbd46 rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x169bf2b5 rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x1c6e2e67 rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x3fb65e10 rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x49653775 rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x4de58a2f rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x510f0d15 rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x9a76ad60 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xa6f41e1f rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc12e0f1e rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc2db78b9 rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xd58de975 rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xd94cb7ac rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xdcc48611 rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x0742434a rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x0779b412 rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x11e43611 rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1d05bc2b rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x221e914a rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x25158ea1 rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x27352d5c rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x32ca3016 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x33010cdc rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3cdb38c1 rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4f7cb3c5 rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x53084de3 rt2x00mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x56217739 rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x56fc8551 rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x578ace42 rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6152ed39 rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x65d487d1 rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x69c86c1c rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6b9fc52d rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x73e0b290 rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x75652562 rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x81ec36d9 rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8b66c975 rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8bf07e37 rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8f64e660 rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8f92d7f3 rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x94f74660 rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9a5adce2 rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9b9ccd9d rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9c109303 rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa3132865 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa32410ab rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa3c7887a rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa4ba95e8 rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa709ed6c rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb56687d4 rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb665a32b rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xbd31c030 rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc4f6ea1d rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd0ac83bb rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd429942d rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd9b30888 rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe5975a27 rt2x00mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xed09b164 rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf78e5ffb rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xfad0e38d rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x7a1ee7c0 rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x86b0e447 rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x9e37ed03 rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xa5cf094e rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xdcb7e806 rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x25289fe1 rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x8f6eb6ef rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xa0293625 rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xba3bce3e rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x19aed472 rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x1c35a8f4 rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x272bf86f rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x388515cd rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x451483e9 rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x45ac1f59 rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x65474266 rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x6aba6774 rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x711ceb01 rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x9f211ea8 rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xa23ca234 rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xd8360b24 rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xd99f92e3 rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xdbee1cc0 rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xf85a3796 rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xfc635210 rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x138df007 dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x32dd109d dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd0d2c865 rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xfef97901 dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x05671f87 rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x0a797bb9 rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x0b6db6d7 rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x0cb2ddb9 rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x1223d091 rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x1d639071 rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x1faea3bb rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x205bc836 rtl8723_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x209fefb5 rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x273a895b rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x39db2a8d rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x44bd92e1 rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x5bd1f1fe rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x62dad805 rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6f60a23d rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6fee3a6c rtl8723_phy_set_sw_chnl_cmdarray +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x78add504 rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x78cef67e rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7a6c00c8 rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7cd2ec1e rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x88075e7b rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xaf4d6d94 rtl8723_phy_calculate_bit_shift +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xaf512e82 rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xcca9dad1 rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xd506909b rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xd7ecfcd4 rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xdc12728e rtl8723_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xe1e67a63 rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xebb215aa rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x10b3c177 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x1f83f0a7 rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x1fce2648 rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x1fe32a61 rtl_dbgp_flag_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x241dedc1 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x2851d2c1 rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x4bfebd3a rtl_attribute_group +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x6b4de810 rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x6e4a89a9 rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x7ada603a rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x88c353f3 rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x8dd45c17 rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x9ada6641 rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xa4a1e042 rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xa63d48a3 rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xc188ff03 rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xd2b1f48a rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xd9faa71e rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf29f8ca4 rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf643db56 rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x2b89bd72 wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xbb65df8b wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xbe3e8a9b wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x034cf815 wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x050240e3 wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0625455f wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0a25f206 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x14162498 wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x15f079b9 wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1e4cd9e5 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x25a3a019 wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x28967e83 wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x28ab3799 wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2a800cc6 wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2affbd70 wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3777b9fb wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x408ce612 wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4bba3b1a wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4f2329fd wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4fb64726 wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x51883304 wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x53dff67d wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x55e9ec98 wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6d060c95 wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x769a006e wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x79da509a wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7b476d5f wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8296e89a wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x83d537e9 wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x894d0913 wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x946cc953 wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9ccede6f wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa2d41d3a wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb1cffc46 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc7374eea wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xcfc1de5f wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd39bb505 wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd5eab9f6 wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe3c2d20a wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe95d6866 wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xea8398c0 wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf0bdaf67 wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf4d6f412 wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfaa7720c wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfd22351f wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xff70e8a4 wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x3b577068 nfc_mei_phy_disable +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x5e6c2458 mei_phy_ops +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x8b4e7b3b nfc_mei_event_cb +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0xb2fb0e66 nfc_mei_phy_alloc +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0xe82e19a5 nfc_mei_phy_enable +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0xf9f645d4 nfc_mei_phy_free +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x30934216 ntb_transport_max_size +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x32537aca ntb_transport_link_query +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x3d54dbfc ntb_transport_tx_enqueue +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x436098aa ntb_transport_link_down +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x4862ae79 ntb_register_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x77ae9ef1 ntb_register_client_dev +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x82e6c13d ntb_transport_qp_num +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x9c992c8f ntb_transport_link_up +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x9eb43bae ntb_transport_create_queue +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xbe26a225 ntb_unregister_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xc270dc24 ntb_transport_free_queue +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xc37d9036 ntb_transport_rx_remove +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xd40e7a02 ntb_transport_rx_enqueue +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xfe897ddd ntb_unregister_client_dev +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x0a418418 phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x0e3c094b phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x1063bf48 devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x1601a182 devm_phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x1fa01c96 devm_phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x23b8de60 __of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x2e325114 phy_init +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x34eff2c6 of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x3c1e4f57 devm_phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x3ea17426 of_phy_simple_xlate +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x413f44cd phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x42c5bc4c __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x5587eb4f phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x5afec848 devm_phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x73f7b6d5 phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x7f354e71 phy_pm_runtime_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xa438085f phy_power_off +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xc56e1dc3 phy_pm_runtime_allow +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xd0c33909 phy_power_on +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xda0b43aa phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xe125ca8e phy_pm_runtime_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xf439a7cb phy_exit +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xf7cd88e5 phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0xcac5ce59 asus_wmi_unregister_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0xef1726e7 asus_wmi_register_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_ips 0x46809fa9 ips_link_to_i915_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/mxm-wmi 0x232b5238 mxm_wmi_supported +EXPORT_SYMBOL_GPL drivers/platform/x86/mxm-wmi 0x61cdf799 mxm_wmi_call_mxds +EXPORT_SYMBOL_GPL drivers/platform/x86/mxm-wmi 0xe26032eb mxm_wmi_call_mxmx +EXPORT_SYMBOL_GPL drivers/platform/x86/thinkpad_acpi 0x706cdcef tpacpi_led_set +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x3ecf6cfc wmi_install_notify_handler +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x561c634a wmi_evaluate_method +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x876d29f1 wmi_get_event_data +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xb5a6ebe2 wmi_remove_notify_handler +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xc9d4d6d1 wmi_has_guid +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xda29f8b0 wmi_set_block +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xfb882fb7 wmi_query_block +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x0358575c pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x47350c39 pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0xe77d2cb3 pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x42f27e07 mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x61416800 mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xdf045c46 mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x42795ed2 wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x6713f184 wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x8edf29b5 wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xacae2264 wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xaccd6907 wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xd096ecd2 wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0x88779955 wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x038f6692 cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x040064ea cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0757850e cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0f8e4201 cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1f237588 cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x224dffb0 cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x22d0b952 cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2fd497e2 cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x33308198 cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x356fdc03 cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x37a9c333 cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3933fcb4 cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3a5c4389 cxgbi_ddp_page_size_factor +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5d2d2625 cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5e2c4bc0 cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x77fea2f0 cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7b2a0095 cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x88142836 cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8c2ba369 cxgbi_ddp_ppod_clear +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8ff24794 cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x919ec3cf cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x922c3186 cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x94606fe2 cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x96619b02 cxgbi_ddp_ppod_set +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9a2026ee cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9c29dd15 cxgbi_ddp_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9df3a436 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9e9b7ba2 cxgbi_ddp_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa18f0983 cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa6f43009 cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa7f664fd cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa9951663 cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb7877bc4 cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc1725e96 cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc7f114b9 cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd550fc1d cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd563a8bf cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd65c7ae1 cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xdc705c95 cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xde9971e0 cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xdf2d1bf7 cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe3bdc239 cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xea16ea6d cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xeb7be237 cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf6e28516 cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xfdce6dd7 cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x273f221c scsi_register_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x593a36c2 scsi_dh_handler_exist +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x62c071e4 scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x6506f6f1 scsi_dh_attach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xaad7114d scsi_dh_activate +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xac4d9cf5 scsi_unregister_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xb7652966 scsi_dh_detach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xeb4196d8 scsi_dh_set_params +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0fb51275 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x3206e61e fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x33ef410d fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x342a6528 fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x374c1e1c fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x5094105e fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x6d814316 fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x6d828535 __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x7350f142 fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x7f607e41 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x807da9c3 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x84b3d915 fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x875136d7 fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x87e70d0d fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x9c576b5d fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xad030219 fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xb24390dd fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xb9aa3392 fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xed0b57e9 fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x50afb021 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x58e28c1d iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x9fc75df1 iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xa1eb3580 iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xb4975539 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xe9eb4167 iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x18aa134a iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1b97c56d iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x23e6e313 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x283825f0 iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2bddb6d2 __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2c1524bb iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x39e87a63 iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3c027100 iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3dcfe6df iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3e58ca7e iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x46551320 iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4cd053c6 __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5e477f8a iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5e55e822 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x67a90db4 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6bd738a8 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7536bf45 iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x76f3ad52 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x798e7c2f iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x811c04f2 iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8132a591 iscsi_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8c971b27 iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8e71e88e iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x989fe249 iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9a606c6d iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9b7c2371 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa1505053 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa4590339 iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xaeddbccf iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb0539d49 iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb576ece8 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbc506cfd iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbebb3000 iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc1e2e3b4 iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc47b13ea iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdaff1aaf iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdbf9178b iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xde456c2d iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdf221b38 iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe4b9f474 iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe808f11b iscsi_eh_target_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf4c11052 iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf7ec9fb0 iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfbd41a8b iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x05782491 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x172f3b19 iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x18f88f86 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x21e655e1 iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x2abe51c8 iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x5eaa340e iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x6e91865d iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x73ccb17b iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x85fe04ef iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8c03587c iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xa09deee7 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xb4faa806 iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xbe8639a6 iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xdc815377 iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe6c52f18 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xfa54e345 iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xffc5d824 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1c692ab5 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1f60d8ee sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x26add831 sas_domain_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2bc6268e sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2ef7ba54 sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3501bf69 sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x39848f6c sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x481b8359 sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4ba2b197 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4d0f5085 sas_eh_bus_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x54308384 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x57b79c1c sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x62b8ecf4 sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7dc387a9 sas_change_queue_type +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8ceb4385 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x954e04da sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x9b20f5c5 sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa3541381 sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa43bf12c sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xaf6562d4 sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbfdd4dc9 sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe3350914 sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xebd75c74 sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xfe2cc552 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xffe6ea27 sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x0948e1e4 srp_transfer_data +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x2e6d55a2 srp_target_free +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x4fb28718 srp_iu_get +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x5deb08cf srp_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x9b461f3e srp_iu_put +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xd561d314 srp_cmd_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x069127f7 scsi_tgt_tsk_mgmt_request +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x20ba8177 scsi_tgt_alloc_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x5af553a1 scsi_tgt_it_nexus_create +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x652fb2c4 scsi_tgt_cmd_to_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x664edc49 scsi_host_put_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xb68e6bed scsi_tgt_it_nexus_destroy +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xbd04a855 scsi_tgt_free_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xe3999c82 scsi_tgt_queue_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xea964824 scsi_host_get_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x044e79ee iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0b6eb6af iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x116b0667 iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x14e2e380 iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1b11a461 iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x310cde99 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x60036546 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6472f52d iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6a93a50a iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x74ab2abc iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x75729b4e iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7685c912 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x791bb72e iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x825d997e iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8d0eee67 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8ec287e0 iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x94b13752 iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9529a902 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x95ec9d2a iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9857f657 iscsi_is_flashnode_conn_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9aa39982 iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9e50f81c iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa3db4d93 iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaedcadf6 iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb8e235a4 iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xba481fab iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xba5b83da iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbce42b84 iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc01aefba iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc43562b8 iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc95e3367 iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd0e3179c iscsi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd22fa38a iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe01b9408 iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe3f821b5 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe73ed72e iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xeae589a8 iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xefcb703d iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf8cb1898 iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfa8cd89c iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x1ece6caa sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x7f27b6fc sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x94e3ed86 sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xa79cccc6 sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x08a8975e srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x15eaa20f srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xaeca34f6 srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xc8a89110 srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xe1d088de srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xee891cc0 srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x7619bbb6 ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x85846772 ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x9101300c ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xcf70e857 ufshcd_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xecedecb1 ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xf596d4cb ufshcd_suspend +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x47410b73 spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x5c27a5ea spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x7d13ee84 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x827f327a spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x85fb7d37 spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x2dac438a dw_spi_xfer_done +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xa6158222 dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xc28911da dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xc7fe7601 dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xfafdd9c4 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0x4f26421f ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x022da051 comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x03744fd0 comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0b0dc19d comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0df84afd comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0f784e90 comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x181f66ab comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1afc2cfe comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1e655395 comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1e83ebda comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2848cb2e comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x29e4402d comedi_buf_memcpy_to +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2c7a412c comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x325a6942 comedi_buf_get +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x332a8ecb comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x333573f2 comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x39479ed6 comedi_error +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x43348de4 comedi_pcmcia_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4389389a comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x44485a9c comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4c66951b comedi_buf_memcpy_from +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x50b57274 comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x52f70a74 comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5e2c225c comedi_pcmcia_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6084a8c3 comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x64e769fe comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7871a367 comedi_pcmcia_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7e939596 comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7fd50f0f comedi_buf_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8ef731f3 comedi_pcmcia_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9287e43d __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9a9fcddb comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9bbdc64c comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9da32a11 comedi_dev_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9ffa505c comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa2ad5373 comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xaffddf20 comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb88f0a72 comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb99d3f99 comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc449e78e comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xcd7915a2 comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb0136ac comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdcff64c2 comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdd1a5c00 comedi_pcmcia_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe2f91407 comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe7f68a3a comedi_pcmcia_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe8b00058 comedi_to_pcmcia_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf5507342 comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfedd360d comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x42064773 subdev_8255_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x852df358 subdev_8255_init_irq +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x9f1de9be subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x7433d3f0 addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x29d754ad amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x8fd1410b amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xc01196cd amplc_dio200_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x2b1ed3c9 cfc_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x5eb61a25 cfc_read_array_from_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x7a374557 cfc_write_array_to_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0x03088993 das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x0c60e1bb mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x0fb570d4 mite_bytes_read_from_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x157ef395 mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x184ef1d6 mite_setup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x2a62f72a mite_bytes_written_to_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x60a87ce6 mite_setup2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x6d9bfa7b mite_dma_tcr +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x7468af3e mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x831c2508 mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x8eaba0af mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x923e524e mite_bytes_written_to_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xa6bfd272 mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb7e9d5b0 mite_bytes_read_from_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc078a28b mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc43e30c9 mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd0d9f1d1 mite_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd176c051 mite_sync_output_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd2d19daf mite_sync_input_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe20ce7ea mite_unsetup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe2ca72a9 mite_get_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xef636935 mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xeff76a87 mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc 0x7d991905 labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x19812d43 labpc_free_dma_chan +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x87efa9a3 labpc_setup_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x9174abf0 labpc_init_dma_chan +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x9c2ab481 labpc_handle_dma_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0xb2e9da36 labpc_drain_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x0289be6b ni_tio_rinsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x2abf4d4f ni_tio_winsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x5f2e8a19 ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x71308c4b ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xa6a6da1c ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xaf0bec73 ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xc2ab8a4b ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xe27cf6f2 ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x1d1d4b52 ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x47a22ef8 ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x8c9cf865 ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x967da33c ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xabe02f2c ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xac5abfd0 ni_tio_acknowledge_and_confirm +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x0287ec11 comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x2c9a8035 comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x4d1d4cef comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x647736be comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x6f5a457f comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xcbba3e3c comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xe91f2e2e comedi_close +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x2206b003 dwc2_handle_common_intr +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x31637ad0 dwc2_hcd_remove +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x3d1ddf68 dwc2_hcd_init +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xb05a818c dwc2_set_all_params +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x1a1b5249 oslec_flush +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x2feda75b oslec_hpf_tx +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x3227a28e oslec_snapshot +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x7dc9dddd oslec_adaption_mode +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xb2c66001 oslec_create +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xc8b5a524 oslec_free +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xd370f679 oslec_update +EXPORT_SYMBOL_GPL drivers/staging/iio/addac/adt7316 0x7f0181c0 adt7316_pm_ops +EXPORT_SYMBOL_GPL drivers/staging/rts5139/rts5139 0xbd5a0e51 rts5139_usb_ids +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x099596ab spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0e81c76d spk_serial_out +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x14f06fe7 spk_serial_in_nowait +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x2ba5b56e spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x39a012f7 spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x45b07dcf spk_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x475e158a synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x70fbc3ea synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x89cb26f0 spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e146195 synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8fe66c8b spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x96441930 spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9a888082 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9c398471 synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb48956f8 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc766ae09 synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc91490ae spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xcda38867 speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd1b551a2 spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xde7ae2e8 speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7e810f8 spk_serial_in +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x0640ee6e usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x1bd8896e usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x363d0389 usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x3af709c1 usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x494b1f1a usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x51fc6f99 usbip_event_happened +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x7353af62 usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x7cf25173 usbip_start_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xae3e4207 dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xb34e3dde usbip_recv +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xbaa41cf7 usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xccb82ebb sockfd_to_socket +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xd02753dc usbip_header_correct_endian +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xd71d9dbf usbip_event_add +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe1ea0586 usbip_dump_header +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x585ebaac n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/uio/uio 0x15a9099f __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x40f5a6f2 uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xa8639ca7 uio_event_notify +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x6deadee0 usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0xba579205 usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x2ff3ab23 ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x4497cccf ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x09c1b5b8 usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x182947a5 usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x1bdc2eac usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2d944825 usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e9074b0 usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3d0046a0 usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x425e74c5 usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x42a080c2 usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6196a164 usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8037ff9a usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9189e547 usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x94d7075a usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9adbb561 usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9c89ed96 usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9d6cc5af usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9e439da4 usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xa155f48a usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xa50166ea usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb5528c11 usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xbbec1a55 usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xc2dc6b8a config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xc46601ec usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xc73429db usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xc8471ed9 usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2d4c73e usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd354d2b2 usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd433cf03 usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xdd92ad28 usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x492b33fd gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x8e27d6de gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xf1981607 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xf95ad8ac gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x0eec418c usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x39bc86f3 usb_gadget_unmap_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x3b9c70ee usb_del_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x76c9d969 usb_gadget_set_state +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x77dccb13 usb_gadget_probe_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x8e08422c usb_add_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xb76d7e43 usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xca03b7a8 usb_gadget_map_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xcdf87e5f udc_attach_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x06c12331 fsg_common_set_cdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x0a5230df fsg_common_set_nluns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x141fce2a fsg_common_remove_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x1ccb58f7 fsg_common_set_num_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x2d10b6a7 fsg_common_create_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x51707c29 fsg_common_run_thread +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x6acb4179 fsg_common_set_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x7a70075e fsg_common_remove_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x7e26d4a5 fsg_common_set_sysfs +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x99023bfc fsg_common_put +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9a0221c7 fsg_common_free_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9dc025a5 fsg_common_free_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xa46e6443 fsg_common_get +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd3ae3b65 fsg_common_create_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd468f882 fsg_common_set_ops +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xe4d1591e fsg_config_from_params +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x7f2bb8fc ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x8f22aa61 ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x230f6825 usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x46783087 usb_ftdi_elan_edset_output +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x5e4b649b usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x757c8e63 usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x7ab7ad31 usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xa1feeb2a usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xc8f111e0 usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xd34f3678 usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xe2d9004e ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x72e297b5 musb_interrupt +EXPORT_SYMBOL_GPL drivers/usb/musb/tusb6010 0x6d659d05 tusb_get_revision +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x1329367b usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x40fb4a3b usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xa104c1ec usb_gen_phy_init +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0x723af280 isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x32034c66 samsung_usbphy_rate_to_clksel_64xx +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x35b915c7 samsung_usbphy_set_type +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x8e6af84d samsung_usbphy_rate_to_clksel_4x12 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xaf239de6 samsung_usbphy_cfg_sel +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xc147ae04 samsung_usbphy_set_isolation_4210 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xc37b3a75 samsung_usbphy_parse_dt +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xc3a16ac3 samsung_usbphy_get_refclk_freq +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0x497f4378 usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x0bb2779e usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x18cfded8 usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2b282d27 usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2ef239ac usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x34e2c1a5 usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x37df0525 usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x4484b92e usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x5699e049 usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x61b94a1f usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x6879792b usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x6c3aa8dd usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x6ce3ecb5 usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x7954d661 usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x7a5a26e3 usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x818ccc02 usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x9b330dc9 usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa85a7d40 usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xaa91e805 usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc2d8a74e usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xcd80dc18 usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xe8db01f4 usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x01fa7b72 usb_stor_ctrl_transfer +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x0c057d0e usb_stor_transparent_scsi_command +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x1ab4e0e9 usb_stor_post_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x1bc3edc2 usb_stor_sense_invalidCDB +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x270febae usb_stor_pre_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x2e2e673a usb_stor_suspend +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x3124145f usb_stor_control_msg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x31b8407c usb_stor_bulk_transfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x4b9f1de0 usb_stor_bulk_transfer_sg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x511e8c9d usb_stor_clear_halt +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x58ce5378 usb_stor_disconnect +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x5ab22ac0 usb_stor_CB_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x73b8fd77 usb_stor_access_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x7d16b231 usb_stor_bulk_srb +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x7fcc3766 usb_stor_set_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xb07ea657 fill_inquiry_response +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xb7aec688 usb_stor_Bulk_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xbc077e04 usb_stor_CB_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xc119fe82 usb_stor_reset_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xc4e6e2b2 usb_stor_probe1 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xe037efdc usb_stor_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xe082852f usb_stor_probe2 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xfbf860fc usb_stor_Bulk_transport +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x03272ad8 __wa_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x04fb65dc wa_urb_dequeue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x0bd816f0 wa_process_errored_transfers_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x122f15ac wa_urb_enqueue_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x1c384535 wa_urb_enqueue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x6aa8c77b rpipe_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x77185730 wa_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xb23a975c rpipe_clear_feature_stalled +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xcb55ad58 rpipe_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x0bb6bf5e wusb_cluster_id_get +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x1afc4fed wusbhc_giveback_urb +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x327f9763 wusbhc_b_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x3d96c6c9 wusbhc_handle_dn +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x41794105 wusbhc_mmcie_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x46b8d04f wusbhc_reset_all +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x53b10e85 wusbhc_mmcie_rm +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x736cd081 wusbhc_rh_status_data +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7f0b7631 wusb_dev_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x82cfffbf wusbhc_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x83534ae0 wusbhc_rh_start_port_reset +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x8fa1e495 wusbhc_chid_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xb725d128 wusb_cluster_id_put +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xce376a47 wusbhc_b_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xd0d5ff14 wusbhc_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xdd4ec241 wusbhc_rh_control +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xe3ff0d9b __wusb_dev_get_by_usb_dev +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf770a6b4 wusbd +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xfe2e17d7 wusb_et_name +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x0aab89ed i1480_cmd +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x2cba1e17 i1480_fw_upload +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x46a60413 i1480_rceb_check +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x0e57ad4c umc_device_create +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x21d36ac8 umc_driver_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x691a5385 umc_device_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x77792f90 umc_bus_type +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x7ae1af2b umc_device_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x91ef1e7a __umc_driver_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xc5b80dda umc_controller_reset +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xfca430e5 umc_match_pci_id +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x08aa398b uwb_dev_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0d78016e __uwb_addr_print +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0f9da142 uwb_rc_neh_grok +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0fc02440 uwb_est_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x1add3c8c __uwb_rc_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x1e8ca2a7 uwb_rc_reset_all +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x23613c89 uwb_est_find_size +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x2a6d6545 uwb_rc_cmd_async +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x30f2a678 uwb_rc_get_by_dev +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x3151ea95 uwb_rc_cmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x31bb492c uwb_rsv_accept +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4d57ae3c uwb_rsv_type_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5b045929 uwb_rsv_terminate +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x67235dcf uwb_rc_post_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x6dbfffd2 uwb_rsv_destroy +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x738b0cf9 uwb_rc_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x73f27397 uwb_pal_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7c61f536 uwb_rsv_get_usable_mas +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7d4ee2b9 uwb_radio_stop +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7deb066c uwb_rc_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x816b9e92 uwb_est_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x82b8b82b uwb_rc_put +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x861cf337 uwb_rc_vcmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8aeb3b6f uwb_rc_ie_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8b5c5fb8 uwb_rsv_modify +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8de5b63e uwb_radio_start +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x98413234 uwb_rsv_state_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x9c00d96a uwb_rc_pre_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa5a6cffc uwb_rc_alloc +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xac97316b uwb_ie_next +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb10dc4c9 uwb_pal_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb14390a6 uwb_rc_dev_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb5cce3ab uwb_rc_mac_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb678fd16 uwb_dev_for_each +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb7d2c5e3 uwb_pal_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xbfe803ef uwb_rc_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd3b2f0ba uwb_notifs_deregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd70caac8 uwb_rc_ie_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xda30b04a uwb_rsv_establish +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xdce9217b uwb_rc_get_by_grandpa +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xde9803dc uwb_rsv_create +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe2345592 uwb_rc_neh_error +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe8f263b0 uwb_notifs_register +EXPORT_SYMBOL_GPL drivers/uwb/whci 0xfda62646 whci_wait_for +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x507e8c65 vfio_add_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x7140246c vfio_group_get_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x7e87e8e9 vfio_device_get_from_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x87407249 vfio_del_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xb9d4eccf vfio_register_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xd7b1673a vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0128043e vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x08373cf5 vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x15797b15 vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x19dfabdd vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1bf4bd58 vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x269f7a09 vhost_dev_reset_owner_prepare +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2bbb9508 vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2e0a46ac vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3e553c02 vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3f43073a vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x53b4d42b vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x676c0d5f vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6fe8ba19 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x75f44522 vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8e0cb292 vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9119cdd5 vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x97ceaf72 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9af16d0e vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9e91a6ce vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9f09aba4 vhost_init_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa1dcbcf2 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa972c7b2 vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xacfc92d0 vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb8c4c345 vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd5eef4f1 vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xdec48490 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xdfebc682 vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe33e247c vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xed1c1fb1 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf1aec9a0 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf345fe33 vhost_work_flush +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x073e59b6 auok190x_send_command_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x09e9dcf6 auok190x_send_cmdargs_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x1c86aa6c auok190x_send_command +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x1d4fc156 auok190x_read_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x2a95aea6 auok190x_send_cmdargs_pixels_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x4142d5bd auok190x_send_cmdargs_pixels +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x6a505839 auok190x_common_probe +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x6e3674ee auok190x_send_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xd57baf84 auok190x_common_remove +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xe90642a6 auok190x_pm +EXPORT_SYMBOL_GPL drivers/video/backlight/apple_bl 0x2c63e051 apple_bl_register +EXPORT_SYMBOL_GPL drivers/video/backlight/apple_bl 0xdab0f892 apple_bl_unregister +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x02ecc92c ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x0dc31635 ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x0e3e8655 ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x1d81744b ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x2aed99cb ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x47898b9c ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xd914d927 ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/fb_ddc 0xad6197b4 fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0xc3145f90 fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0xc874cb4f fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0x59a4cb73 sis_malloc_new +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0xe67aacc6 sis_free_new +EXPORT_SYMBOL_GPL drivers/video/vermilion/vmlfb 0x016e6c20 vmlfb_unregister_subsys +EXPORT_SYMBOL_GPL drivers/video/vermilion/vmlfb 0x90c018c6 vmlfb_register_subsys +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x22a7af24 viafb_dma_copy_out_sg +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x292da7a2 viafb_irq_enable +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x30cc9311 viafb_request_dma +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x31469540 viafb_pm_unregister +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x79e6190a viafb_irq_disable +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0xb4f863e6 viafb_pm_register +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0xcaefb732 viafb_release_dma +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0xdb0acc50 viafb_find_i2c_adapter +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0xfff2dfd2 viafb_gpio_lookup +EXPORT_SYMBOL_GPL drivers/w1/wire 0x0c34cc29 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x2a422509 w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x54be33fa w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x552efcca w1_next_pullup +EXPORT_SYMBOL_GPL drivers/w1/wire 0x6c200855 w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x7c2f2afb w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x836d3276 w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0x876fecbd w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0xcafddd1d w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xe8fe2a57 w1_write_block +EXPORT_SYMBOL_GPL drivers/xen/xen-privcmd 0x884fa709 xen_privcmd_fops +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x204d702e dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x848ff9f3 dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x9321df95 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc6dc8c2f dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xd9aa770f dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xdc583c08 dlm_unlock +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x12e3f4b1 nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x1479a9f2 nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x17ce645d locks_end_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x5d76cebb nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x9b476af4 lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x9de9044b lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xdd171767 nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xdf46747f locks_in_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xec57e837 locks_start_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xfcb26267 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x019f0a62 nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0a316b4e nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0d00d5de nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0e28bd33 nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0fa7226e nfs_try_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x129b09fa nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x13a71e76 nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x15d51e29 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1ae8f74a nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1b508b6c nfs_initiate_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1c60710f nfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1e2c340a nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x20e3b300 nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x20feb1c2 nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x21cc75fc nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26f7cf82 nfs_initiate_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x27b4d31f nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x29515adb nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2c5d9e12 nfs_file_splice_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2d46b0c1 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2e484f44 nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x31b39276 nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x34a2362d nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x38d93111 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3a842cad nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ca31f35 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ea72449 nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42e3d1f4 nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x449539e7 nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4660b051 nfs_remount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x47e71a25 nfs_fill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x490f1e59 nfs_file_splice_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4ad683ef nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4af284c3 nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4b7e0222 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51c50e5a nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x541e43a6 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5546bea6 nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x576be348 nfs_pageio_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5955499d nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x59de7d25 nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5b0f40ec nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e1d863a nfs_sockaddr_match_ipaddr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e6cb742 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x63590f91 nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x67bf0eac nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x67f3d8b6 nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x68ac3052 nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x68e781a6 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6b8d713c nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6b8f602f nfs_readhdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6cf77119 nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6fdc67fd alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7021be1b nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x730156ad nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x73af0cd7 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x777db5cc nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7920dbb7 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7b0d07a4 nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c9722ba nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7e773320 nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8114cb97 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8290ca2d nfs_set_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x84143849 nfs_fs_mount_common +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x842f177f nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x843d2792 nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x84cf69e6 nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x87277cc0 nfs_setlease +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89bc5a64 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8c8bea78 nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8cea9ff7 nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8f2a9674 nfs_pageio_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8f81da67 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8fc55965 nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x903f8d66 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9127f818 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x912c2860 nfs_readdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x925cbd7a nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x930fe657 nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x93a0bab3 nfs_generic_pagein +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x95549185 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9be0cc1d nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9c89a676 nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9f77839c nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa0eaf02e nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa1066f50 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa5f3c385 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa6e70c07 nfs_file_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa7250a1f nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8ad97ae nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8d2d1ce nfs_callback_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xac6c4295 nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb271bf10 nfs_pageio_add_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb2ed994b nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb54c57c4 nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb606e716 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb777f8f2 nfs_writedata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc1f20749 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4ff1e9f nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5da9b05 nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5ef47d5 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc6d62b61 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc70a898b nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc7e8d88a nfs_writehdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcc0929c1 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcf25e95e nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcf27ef8e nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd137ac14 register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd1e40fdf unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd1e54335 nfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd2513081 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd39c18fd nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd4cd392d nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd672ac73 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd784c4c9 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdb255735 nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdd3f76ca nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xde0d5401 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xde583d2b nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdea37d83 nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdfd70e48 nfs_clone_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdfdcae69 nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe1ca83e9 nfs_generic_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe4455d58 nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe4634f29 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeaf77672 nfs_put_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xee8cf84a nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xef34db85 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xef61ee63 nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xefffccea nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf0a9a0fe nfs_destroy_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf279f921 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf28a1ac9 nfs_fs_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf7c9d9d7 nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb7ee006 nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfd02c97b nfs_file_fsync_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfed0a0b4 nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x06c36816 __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x096fc82f nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x10f6e7d1 nfs4_insert_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x11ff2a91 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x170f3ed6 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1b981735 pnfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2f04c5e6 pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x355f7c4f pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x36592626 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3dfe6fe3 __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x45e35b36 nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x471de0a9 __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x502f99c4 nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x50f935cf nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5b5cbb0c nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5c610310 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6967f84e pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x767bc011 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8ac6ad7d pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8b778b07 pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8e98d7f6 nfs4_proc_getdevicelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9e2997b0 nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9fc2902d pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xacb85db8 nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb122aae6 pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb6c140c4 pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbba7a6ad nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbe378452 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc745579d pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcd134829 nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe378a6f7 _pnfs_return_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe3c99751 nfs41_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe45ba92e pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xecb70ae8 nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xefabea74 nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf318cad4 nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf478226b pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf8c05625 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfc7b2748 nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfc9d9705 pnfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfcc159c5 pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfd4168b1 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfd970f32 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x2f6da772 nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x96a47648 nfsacl_decode +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x10708b28 o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x114a529f o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1d747ce3 o2hb_check_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36418553 o2net_send_message +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36a28a9e o2net_send_message_vec +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36ee46d2 o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36fddf2b o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x7ca5c147 o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x802ff79f o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x81a17396 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa82a8645 o2nm_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xae808bac o2net_register_handler +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xbaeb4700 o2hb_check_node_heartbeating_from_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc0f1f66b o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc3679d7b o2hb_get_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd60f2c6c o2hb_check_local_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf1a5611d o2net_unregister_handler_list +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf56c2017 mlog_not_bits +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x22a6eb23 dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x3d4bd0cb dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x5b3c5464 dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x97f027b7 dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xb5111684 dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xcc59c107 dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd7ba575e dlm_errmsg +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd8fa57a6 dlm_unregister_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xfb86b96f dlm_errname +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x025e2d69 ocfs2_cluster_connect_agnostic +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x0562c415 ocfs2_cluster_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x16b2e575 ocfs2_dlm_unlock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x36c3ceb6 ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5469ce31 ocfs2_dlm_lvb_valid +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x7083dbd5 ocfs2_dlm_dump_lksb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x89502fe7 ocfs2_cluster_connect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x95597e5b ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xb4bd060c ocfs2_dlm_lock_status +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbbc4ef97 ocfs2_stack_supports_plocks +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xc23792a9 ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xdc823ea4 ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe2bd47db ocfs2_dlm_lock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe40cffce ocfs2_stack_glue_set_max_proto_version +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe417d940 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL lib/bch 0x231d70fc encode_bch +EXPORT_SYMBOL_GPL lib/bch 0x6b770f49 decode_bch +EXPORT_SYMBOL_GPL lib/bch 0x9463ff71 init_bch +EXPORT_SYMBOL_GPL lib/bch 0xbdf512de free_bch +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0xca8e8063 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0xdb2368dc notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x1803a6ed raid6_2data_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0xe4b051cf raid6_datap_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0xfdfcb8cb raid6_call +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x201d8ea3 encode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x29fa419f decode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x300d7e57 free_rs +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x6fbb3bd9 init_rs_non_canonical +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xabda1e2e decode_rs16 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xb050f329 init_rs +EXPORT_SYMBOL_GPL net/802/garp 0x38a70bee garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0x412ebb90 garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x9c432c9a garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0xa2425dea garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0xb72c2b26 garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0xc30bfc92 garp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x249584d2 mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x3f4945c8 mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x627eae6b mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x832e95a9 mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0xabffeb68 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xe58eda99 mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/stp 0x68807c95 stp_proto_register +EXPORT_SYMBOL_GPL net/802/stp 0x6d4ae964 stp_proto_unregister +EXPORT_SYMBOL_GPL net/9p/9pnet 0x1988bda2 p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/9p/9pnet 0x935d902c p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/atm/atm 0xb09faf79 register_atmdevice_notifier +EXPORT_SYMBOL_GPL net/atm/atm 0xcfb6a3da unregister_atmdevice_notifier +EXPORT_SYMBOL_GPL net/ax25/ax25 0xac93ae05 ax25_bcast +EXPORT_SYMBOL_GPL net/ax25/ax25 0xaeb7451e ax25_defaddr +EXPORT_SYMBOL_GPL net/ax25/ax25 0xed56d104 ax25_register_pid +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x43d334cc bt_debugfs +EXPORT_SYMBOL_GPL net/dccp/dccp 0x02bd3c9b dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1d99d49a dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1e4aa36c dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1ee52ce4 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0x23b2c585 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2499c330 dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x279d2e9f dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2bd46829 dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x313ccb52 dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x37be6773 dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x424723c7 dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0x48c2c073 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4ec35231 dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x508e5e83 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5292ea00 dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5cb30ed5 compat_dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6036cbb1 dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0x614432bd dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7aee9ad9 compat_dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x88238cdd dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8e3fa29c dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8f37b810 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0x91d5d26f dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9256b567 dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x99b12cd4 dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9d137374 dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9d624835 dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9fa82b82 dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa9671ee8 dccp_insert_option_elapsed_time +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb38b37e4 dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbe84daa1 dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc138101c dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcc7dddd7 dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd336868a dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe3691b9d dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe9365b7f dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xef9fdc82 dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf16f4c82 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf3017e21 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf9bd500f dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x02ab0213 dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x3faae71b dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x61070b33 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x8049381c dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xad69f9b6 dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xef9e6dd3 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa621de56 register_switch_driver +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xcc65b521 unregister_switch_driver +EXPORT_SYMBOL_GPL net/ipv4/gre 0x17bdb03a gre_cisco_unregister +EXPORT_SYMBOL_GPL net/ipv4/gre 0x22ba5d52 gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0x37545cb9 gre_build_header +EXPORT_SYMBOL_GPL net/ipv4/gre 0xb4fe0910 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0xcb7d583e gre_cisco_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x0da30485 inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x2f52ba69 inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x5bb8197b inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x626dba5e inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x90feb43a inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xf6f3c3ab inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x189f1ecd ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x3868fb25 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x45b9e312 ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x5ed411ca ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x797fd2ea ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x845846a6 ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x84d343cb ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x907af17e ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x9c889686 ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa6ed6eda ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xb79ccc6c ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xbe42332f ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xf83f3185 ip_tunnel_delete_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xf85b59cb ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x9ac6d402 arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0xff4afeb0 ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_conntrack_ipv4 0x6d40a921 need_ipv4_conntrack +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x6b6c3d10 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_ipv4 0x4103b230 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_proto_gre 0x636b12c8 nf_nat_need_gre +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x29664cad tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x90f7ba77 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xaadcfd7b tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xd4fb76c8 tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xf127b321 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0xc822146e xfrm4_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0xec17013a xfrm4_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x1c1572ed ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x3acdbf8b ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x537c58e3 ip6_tnl_dst_check +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x5827daf1 ip6_tnl_dst_reset +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x5ba18739 ip6_tnl_dst_store +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0xf85d71eb ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x6eb85693 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_nat_ipv6 0x77615478 nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0x48cef436 xfrm6_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0x947e5f23 xfrm6_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x147ec826 l2tp_tunnel_sock_put +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x2e25965c __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x63ef2553 l2tp_session_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7df2e7b3 l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7ec070b7 l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x8a5bdaf1 l2tp_tunnel_sock_lookup +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x92eded38 l2tp_session_queue_purge +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x9666cdfc l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xaa2b3ef6 l2tp_tunnel_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb31b2e71 l2tp_session_find_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xcfff376f l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd2e67726 l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd693a605 l2tp_tunnel_closeall +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd7849111 l2tp_session_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe9bf7ad8 l2tp_tunnel_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xeda67eb0 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xf3a80d82 l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x15dad920 l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x334c64b8 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3663a36d ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3720ecfc ieee80211_iterate_active_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x400b3a51 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x41f397ee ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4bf42798 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5d38f601 ieee80211_set_key_tx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x6ecf7942 ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x82f64a2e ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xb2ac9e0d ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xb3b8ca72 ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xba580657 ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xcb929a9a ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xec4e8e02 ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf0544c20 ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x0be9a650 ip_set_nfnl_get +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x1a754b82 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3622ddf1 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x59e3a4f4 ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x63e1babf ip_set_get_ip_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x67bae5d3 ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x69285c9d ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7ee24757 ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x8ff9b69b ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa14e3543 ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa2d623f3 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc39fed4c ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc8773c47 ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xccdeeaa4 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xd261cf4f ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xe14db77b ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xe9847da9 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xef13ebbe ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf3b4d4ae ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xcb942149 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xcc9263bd ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xddb3f199 unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xf701fcba ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x012f6766 nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01f84db5 nf_conntrack_set_hashsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x022f0d16 nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x045072cd nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0dd93746 nf_conntrack_l4proto_tcp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x118e0cb0 __nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x13db9c42 nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1810b25f __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x19e1e037 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1e94040c nf_ct_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2450e85b nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x24f6c8c1 nfnetlink_parse_nat_setup_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2868c0d4 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289c3714 nf_ct_alloc_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2bd72b7b nf_ct_l3protos +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2cf86474 nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2d058fbd nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x37386cac nf_conntrack_hash_rnd +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3f5b1415 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3fb13e90 nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3fef55c4 nf_conntrack_l4proto_tcp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4168cf08 nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x432c5831 seq_print_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4374b3ad nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4982ef9c nf_ct_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x498376fd nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4c3687e2 nf_ct_l3proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x51c2a204 nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5f507ac6 nf_ct_iterate_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x608aa0bc __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62813e5c nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6338752d nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x63e778ab nf_ct_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x65d5a445 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6c957ab7 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6d3457e1 nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6e224a7a need_conntrack +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x73000e7d nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7478f0de nf_connlabel_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x765c8b0a nf_ct_get_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x779b9ea7 nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x78f9b710 nf_ct_l3proto_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x79a08f91 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x79cc7e3b nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7b216032 nf_nat_seq_adjust_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7ba1ab84 nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7bc3bc9b nf_ct_l4proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7c03327a nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7c399747 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7e7652ec nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x820f55c5 nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8253865c nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x84d93d09 nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x87e8f579 nf_conntrack_l4proto_udp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x88c8f814 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8d00a691 nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8f71df04 nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x90ff6c9f nf_ct_invert_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x934d19e3 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9356a12e nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x964d41d8 nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9a022e20 nf_ct_l4proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9e97f15c __nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab3d1f95 nf_ct_untracked_status_or +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad1bb027 nf_ct_free_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad3e1582 nf_ct_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad7bd036 __nf_conntrack_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xade4147b nf_conntrack_flush_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb0854340 nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb5de97fb nf_conntrack_l4proto_udp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb602c57e nf_ct_l3proto_module_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb858e0b9 nf_ct_l4proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc0cd71bf nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc116579c nf_ct_l3proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc3a08ddd nf_conntrack_l3proto_generic +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc415b162 nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd021a159 nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd5794ef2 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd8eef243 __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xda8c0d3a nf_ct_l3proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xddf5f912 nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe4d36fda nf_connlabel_match +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe6b4256b nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeb90f75a nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xefe57183 nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf4305910 nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf486c64a nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf8a0af9e nf_ct_l4proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfa6e965f nf_ct_l3proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfea665ad nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0xeeda9282 nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0x4bf15d09 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0x4cf786e9 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x121d5029 nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x35a68e1c set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x3f989677 set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x5de2d800 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x61335434 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x7936328a nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xcb363635 set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xd39cd630 nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xeb2f10d9 nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xf39b0551 nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0xc9fdeb96 nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x21f902df nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x295d22cd nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xd8eb4f22 nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xe887c415 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x06a974f9 nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x85ee3a3f nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x11075c3e ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x2db0f4d1 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x31daa3b2 ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x3ab38a49 ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x47acbc41 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xb6dd7323 ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xf74d5ce0 nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0x11ef40d2 nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0xbb143920 nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0581bc63 nf_nat_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0c9ddbea nf_nat_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0d9bae4b nf_nat_l4proto_nlattr_to_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x131f636c nf_nat_l4proto_in_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x171e64fb nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x1fb112bf nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x69b6c9e7 nf_nat_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x8b4e1ae1 nf_nat_l4proto_unique_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xdb5e53ee __nf_nat_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xe79b3a43 nf_nat_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x11a006b5 synproxy_check_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x568d4ffe synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x8841d39b synproxy_build_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x90298227 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb42e336a synproxy_options_size +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xef7db50c synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xefa1b468 synproxy_tstamp_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0bf99fc9 nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0fda3c99 nft_validate_output_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x179845dd nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x34dd5b21 nft_register_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3d49dab7 nft_validate_input_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x41b8fcec nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x464148ca nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x51278375 nft_do_chain_pktinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x560a9c4b nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5c267ace nft_unregister_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x621ac5b2 nft_validate_data_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7125a293 nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf0996dbd nft_unregister_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf164c3df nft_register_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf4c50480 nft_data_uninit +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x66ad7d3e nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x70f45927 nfnetlink_alloc_skb +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x80bf1ca6 nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x816ca28f nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x9163d0e9 nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xc9f9f5e9 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdbb2742f nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x21f6bba6 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbcd94ac2 nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_log 0xde56b459 nfulnl_log_packet +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x02dc0e2f xt_hook_link +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x09b7262b xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0b302d21 xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x1367c5f6 xt_compat_target_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x161d1417 xt_compat_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x3dd604eb xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4056c384 xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x40728a63 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x412a2e04 xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4441b06b xt_compat_target_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4b19a66c xt_compat_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5f82f1f7 xt_compat_flush_offsets +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x6165c097 xt_hook_unlink +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x691a6d69 xt_compat_calc_jump +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x6cc849b2 xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x767e7361 xt_compat_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x807d2b2c xt_recseq +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9a162676 xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xab1205b0 xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xad28ecf8 xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbc88cc7a xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xd1ae3f50 xt_compat_match_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe0b4971b xt_compat_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe809ee34 xt_compat_match_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xec24fd82 xt_compat_add_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xf241a359 xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x132318ac xt_rateest_lookup +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0xd7e1b517 xt_rateest_put +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x4c45773e nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x5b490ef0 nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x8d300a11 nci_spi_send +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x0bef4936 rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0x1cfdb51d rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x219c3d8c rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0x236a8cf4 rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0x2958bd2a rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0x2c5c5514 rds_message_add_rdma_dest_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x2cc38981 rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x3101936e rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3b4fc0fc rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x4aa05744 rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0x50cbe7b3 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x5290fe51 rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0x550c5744 rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x5bb18942 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x63a35153 rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0x6d1da392 rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0x73aac73d rds_message_populate_header +EXPORT_SYMBOL_GPL net/rds/rds 0x785170ae rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x7bc62829 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xa19e3e39 rds_send_get_message +EXPORT_SYMBOL_GPL net/rds/rds 0xac765686 rds_page_copy_user +EXPORT_SYMBOL_GPL net/rds/rds 0xbc19f868 rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0xc15aba7f rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc47d02b8 rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0xd350a646 rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xd8dfb89b rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0xe376cb74 rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0xf019cd3a rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0xf7e3471f rds_message_addref +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0xc27f8181 rxrpc_register_security +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0xe2f62bec rxrpc_unregister_security +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x00c52ef5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x01b181c1 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x2a29e52b gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x8d1a827e svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xb5dea7ef g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xecb1b349 gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xf8b2ff6e g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x00a6d690 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0259452a svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x02f14a14 rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0362b2f8 xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x036ec192 rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x045834e9 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x047f08de svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x059155a1 rpcauth_cred_key_to_expire +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05b57ddc rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b95dd47 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0bbd49d8 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0cb906a1 svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0de2da59 read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0e2a39d7 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f668ba9 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x10176b78 xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x106734e2 xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1186c030 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x13913a64 rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x15aa3b1c rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x18cf8d27 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x19717b43 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1adbca83 rpc_print_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1b21a2a9 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1b72340c xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1d54d1c9 rpc_lookup_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f2a9970 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x208d4d37 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x20963087 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x25f93527 xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x26c753e8 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2a4dbd70 rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2aa63d74 rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2bc0ebdf xdr_partial_copy_from_skb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2bf60fd5 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2c963f5f write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2cc0586b rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eec63c9 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x30827089 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x312606f3 rpc_lookup_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31722b6c svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31908c63 rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31af04bc rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3318fcff svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3608543b svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36924aa6 xprt_lock_and_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36caf10d svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x38e3d7e4 xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x39c2a670 __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x39fe64ca svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3bc815f1 xprt_set_retrans_timeout_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3d9b17fd xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x427e07b5 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x42d8a426 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x44e6d0a0 xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x452da876 svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4586f88b rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x48bb3479 auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4a8c3a65 rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d036385 rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d2ae40a svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d3d7c07 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x507b6fdb rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x518932ba svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x526cad6b svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5369e31e cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53811e90 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53eb8250 unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x55b7657a rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x57cddd70 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5858bc80 rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x59ab7954 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5cbf4fbd svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5cc5fb9b xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5ddead5e rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5f5017fc svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60a9b152 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x615e8530 sunrpc_cache_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x63e6722f bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6490b43c xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x67799baf rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x69f6e39d rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6f3e3112 sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x702c30e3 svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x76c4a12b xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7712dbcd rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7a36ddbd rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f38ec13 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80951b28 rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8166f4c8 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x81becaf5 xdr_buf_read_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8262dd07 xprt_set_retrans_timeout_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x838bbf65 auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x860fa255 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x881ffa41 rpc_rmdir +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8c3c22fd xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8d4ab6b0 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x90bea9f0 xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x911706cd rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x937efaf8 sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x93a0dfed rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x93d5b8ad rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x943717fb sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x95a595fb svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98b75d64 rpcauth_list_flavors +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9942f77f xdr_skb_read_bits +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9be6756d rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9dd2f529 sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa0af5d7a rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa2a4739a svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa577bf89 xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa5ee5958 xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa79fe872 rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa7f5c239 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa810a806 svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa909fa0e cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa4d9fa5 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb03628d3 xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb0623a22 svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb429cce7 rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb5ce2102 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb5fb2bb4 rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb6fc32aa rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xba7a6861 xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb3b1f53 svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbbfb9b14 rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf0f7b12 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc2c62f44 rpc_protocol +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3880471 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc4334ed6 rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc577cc66 xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc64b8230 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc6b8e69d rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc7896eff svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8fff9ed xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc919cfbd xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xca1278a9 rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xca2b7cf5 rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcb5764a3 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcba52f91 xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcc42d2c6 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xccbe6bf7 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcd1eaf9d svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcd47c376 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcef280c4 _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcf6fb43f sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcfb5200a svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcfe19d55 rpc_task_reset_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd0e04208 xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd31a7cef rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd3932c93 svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd48e78a6 rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd4dca574 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd754d3e5 xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd7d17004 rpc_get_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd7d9f5a3 rpcauth_generic_bind_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd8315222 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdb3b9b03 svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdc2217af svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdce20d83 rpcauth_key_timeout_notify +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdd293e58 rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xddd432f2 xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdffb6bb1 rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe19c471a xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1ac2bb8 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe38ab3cb xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe71cf2e4 svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe8bebb65 svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe9214c66 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe98d9bdc rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe9ea95ef sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xea011260 xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xea63cde8 cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeabceb5e xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf127f823 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf1e8230b xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf351c471 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf42b8354 svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf45bc564 rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf4d6c679 xs_swapper +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf4e9fcfb svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf60ef240 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf79d8a53 rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf7e6aacf svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf8b6e98b rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9c605c9 rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9d1164c rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfa9eca4a svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfbad0f1b xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfbc3a80d rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfc495e26 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfc5f722a xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xff00d605 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xff91c132 rpc_call_async +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x067c1dce vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0c79d5ef vm_sockets_get_local_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x15c0c57c vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2458f62a vsock_core_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x35c82f27 vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x59d943c8 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x6231cf3b vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x6c3db17f vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x6e31306d vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x790b12b3 vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7f730c80 vsock_core_exit +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x970b77bc vsock_pending_work +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xa367b172 __vsock_create +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb55ca42b vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc28dcac2 vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd11da7d1 vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe651852b vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xec99dfc4 vsock_remove_bound +EXPORT_SYMBOL_GPL net/wimax/wimax 0x3b2dd88d wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x42824e74 wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0x42fc6cf1 wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0x49ef89cf wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x64a34075 wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0x7c81cce3 wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0x81fbac6d wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0xa6d99617 wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0xb080ea83 wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0xcb122fec wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xd127b72a wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xe5b798bb wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0xf3b478de wimax_msg_send +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x0e66c190 cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x15205759 cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x66425e06 cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x6cfafc38 cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x6fc57278 cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xa1bf8574 cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xa3025c5c cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xb0aa2c5b cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xbc7cd8b6 cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xc1f1a876 cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xdb2f4e70 cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x00778770 xfrm_ealg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x056bb269 xfrm_ealg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0a575945 xfrm_count_pfkey_auth_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0b9e5852 xfrm_aead_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x28e23139 xfrm_probe_algs +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x74e1a843 xfrm_aalg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7a8ca627 xfrm_count_pfkey_enc_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7c30b8c7 xfrm_calg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x92dbc6c1 xfrm_aalg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xbc8b0f41 xfrm_calg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xce7a55c1 xfrm_ealg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xe122af95 xfrm_aalg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x29b09198 ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x556a09ac ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x8901effd ipcomp_destroy +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xa1eb5977 ipcomp_input +EXPORT_SYMBOL_GPL sound/core/snd 0x3c9e59b9 snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/core/snd 0x3ca17104 __snd_printk +EXPORT_SYMBOL_GPL sound/core/snd 0x855529a9 snd_kctl_jack_new +EXPORT_SYMBOL_GPL sound/core/snd 0x865c0806 snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL sound/core/snd 0x8b01e1ee snd_ctl_activate_id +EXPORT_SYMBOL_GPL sound/core/snd 0xa6dccc07 snd_kctl_jack_report +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x19074448 snd_compress_deregister +EXPORT_SYMBOL_GPL sound/core/snd-compress 0xb9b85bf5 snd_compress_register +EXPORT_SYMBOL_GPL sound/core/snd-compress 0xe7165dc0 snd_compress_new +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x2180bfcd snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xea455876 snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x4e4d4ba5 snd_ak4113_build +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x65bab054 snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x6ed5e941 snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xec545110 snd_ak4113_create +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xeeebaa68 snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xf693dbf3 snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x01326439 snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x020cf7dc snd_hda_check_board_codec_sid_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x02744af9 snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x028951fd snd_hda_mixer_bind_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x02f126c7 snd_hda_mixer_bind_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0392624f snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x04bb6a2d _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x054229e3 snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x066bbd4a __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x07db9a55 snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x07eab65c snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x09907246 snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0e900594 hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0e9b9bbb snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0ea0243a snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0fff0e33 snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x14af9f9d snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x15de945d snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1a22d740 snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1b5567e1 snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1cbe9fb3 snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1d50c477 snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1ecd9c48 snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x22144075 snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x22d49f88 snd_hda_mixer_bind_ctls_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x236243e8 snd_hda_bind_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x26e2d932 snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x27ada7eb snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x27c6663b snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2adfbb41 snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2e07eb05 snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2e0b1d8c snd_hda_parse_generic_codec +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2e7187dc snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x31fada4d __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x375cacd5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x378d140c snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x39404f5d snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x39774dbf snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3eb9c5bf snd_hda_bind_vol +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4020bfc2 snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x42729365 snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4305ac09 snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x44e53340 snd_hda_jack_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x45bf8528 snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4617e06a snd_hda_jack_detect_enable_callback +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x466b8cc1 snd_hda_get_sub_nodes +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4a772347 snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4aa48b9d snd_hda_codec_amp_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4b08cded snd_hda_ch_mode_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4c700cef snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4dab1f60 snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4ff037f1 snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x506592ec snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x52547317 snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x52bda058 snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x539fec91 snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x596c3544 snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x59b2c61b snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5b648b7a snd_hda_query_supported_pcm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5c25f02a snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5d9b89bb snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x609205b6 snd_hda_ch_mode_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6387a17b snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x676fa180 snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6973b123 snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6ce06498 snd_hda_queue_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6dd1c4d2 snd_hda_codec_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6f88c34a snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x718bc243 snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x73aa5771 snd_hda_delete_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x74faaf74 snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7584598a snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x75c840c3 snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7bcbc041 snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7c2aa9d6 is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7cf0d08e snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7d6292a8 snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7e67a56c snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7f97c278 snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7fb4b4ef snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x82b5309b snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x83239833 snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x837174ea snd_hda_jack_detect_state +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x844925a7 snd_hda_codec_resume_amp +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x847813f7 snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x852be82c snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x87f8a3de snd_hda_resume +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x894b709c snd_hda_is_supported_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x89543cf0 snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x89871c2d snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8e4c6826 snd_hda_calc_stream_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8f6de6c2 snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x94249641 snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9761cbad snd_hda_codec_update_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9950b120 snd_hda_mixer_bind_ctls_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x99906edd snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a335b60 snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9ecb8aed snd_hda_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa09e76db snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa0c68c1f snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa0d8e2ac snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa275eda9 snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa2827d76 snd_hda_get_jack_location +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa395d428 snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa6d4eadf snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa85bbe1e snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaa0efa22 snd_hda_bus_reboot_notify +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaaaf577a snd_hda_ch_mode_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaad48c76 snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xab1d6b8d snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xafbaef17 snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb2205fa6 snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb26a4b07 snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb3e03947 snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb415fb73 snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb56e6640 snd_hda_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb975086f snd_hda_mixer_bind_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc10a866e snd_hda_gen_spec_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc5d0627a snd_hda_codec_resume_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc652fd69 snd_hda_get_jack_connectivity +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc6bb0d03 snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc7fb59e1 snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc9cca05d snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcb301b6e snd_hda_get_jack_type +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xccf46482 snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xce3e3450 snd_hda_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd1c1ddee snd_hda_bus_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd23453b8 snd_hda_suspend +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd3492a30 snd_hda_jack_tbl_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd694d9bd snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdbbf351b snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdc60a8c9 snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdccaaae9 snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdd7beb65 snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xde7a4972 snd_hda_jack_tbl_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdfd646db snd_hda_query_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdffa9d44 snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe1e086b0 snd_hda_get_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe3014151 snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe3a73de1 query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe455fd53 snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe7edb8c2 snd_hda_override_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe9108242 snd_hda_mixer_bind_ctls_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe9edd522 snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeb094ade snd_hda_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeb894861 snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xed73d2de snd_hda_parse_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xef41040b snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf071ad0c snd_hda_codec_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf6a97c00 snd_hda_add_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf704cd58 snd_hda_sequence_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf82f274a snd_hda_check_board_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfb1e2031 snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfd85f0b1 snd_hda_codec_flush_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xff4bcb18 snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xff8d3d6f snd_hda_codec_write_cache +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x68c1d155 atmel_pcm_new +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0xe5d42a36 atmel_pcm_mmap +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0xedb84435 atmel_pcm_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x00c4afcb snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0144946b snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x022c41d8 snd_soc_codec_readable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0318dcb5 snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x03d5f9f6 snd_soc_dapm_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x06dceffb snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x086cf8e4 snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x08918075 snd_soc_info_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x09792337 snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x098de468 snd_soc_add_codec_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0e3b1db2 snd_soc_poweroff +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1047a84b snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x115e8319 snd_soc_add_platform_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1886c714 snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x194572cb snd_soc_put_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1e455899 snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x21806e2f snd_soc_new_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x219a6256 snd_soc_jack_report +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x21a2faf4 dapm_mark_io_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2296f16c snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2a90c918 snd_soc_jack_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2b0288bf snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2f2f6e01 snd_soc_add_card_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x30fe8020 snd_soc_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3449df7a snd_soc_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x37fcacd9 snd_soc_remove_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3828660b snd_soc_info_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x39f1527a snd_soc_jack_get_type +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x430d59da snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x440a9513 snd_soc_unregister_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4756ffc0 snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x48582f94 dapm_clock_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x50666490 snd_soc_unregister_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5106bc10 snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x536b9455 snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x543faf21 snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x550ea257 snd_soc_dpcm_be_get_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x577b36a8 snd_soc_debugfs_root +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x57f770fb snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5993b56a snd_soc_update_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5b59ceef snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6359fee9 snd_soc_platform_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x63ad95c0 dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x668c9f1c snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x69e7eccc snd_soc_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6b2afd51 snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6cad2f7a snd_soc_codec_writable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6eb608a2 snd_soc_unregister_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6f703449 snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7128b908 snd_soc_cache_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7137c237 snd_soc_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x72837301 snd_soc_dapm_get_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7896002a snd_soc_bytes_put +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x796b7752 snd_soc_platform_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7a373f6b snd_soc_platform_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7d49077e snd_soc_register_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e5cf037 snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8177a644 snd_soc_free_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x82053399 snd_soc_info_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x83bf23a5 snd_soc_add_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x85d31fe9 snd_soc_codec_set_cache_io +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x864dcfd9 snd_soc_get_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x873d9c7d snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8c1ad694 snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x905bb597 snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x934adfca snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x942f0740 snd_soc_unregister_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9597935a snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x96605f79 snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x977f20fa snd_soc_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x983dda5c snd_soc_codec_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9ad73e4e snd_soc_get_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9cacd6aa snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9e016969 snd_soc_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9e9d5883 snd_soc_pm_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9f2614c2 snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa1853c98 snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa2ae1d3b snd_soc_resume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa31247bf snd_soc_dapm_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa4a2109a snd_soc_dapm_kcontrol_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa5cf104c snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa5f9505f snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa7b5be07 snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xab24398c snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xae8f197f soc_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb2c7ed47 snd_soc_codec_volatile_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb46942b4 dapm_regulator_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb526d9d6 snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb5fd0c89 snd_soc_lookup_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xba2b9af4 snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbad7ee8b snd_soc_bytes_info +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbc063cb9 snd_soc_get_dai_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbd21897c snd_soc_dapm_put_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbfd32dfe snd_soc_put_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc181ce1b snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc1af5bb5 snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc4e10fae snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc9a22b88 snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc9ece74d devm_snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcb1fd7cf snd_soc_dapm_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcbf6410b snd_soc_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcc7717e5 snd_soc_register_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcc789492 snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcf206443 snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd09d2008 snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd0ba7a7f snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd2007abe snd_soc_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd4081f41 snd_soc_cnew +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd45ed14d snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd690704f snd_soc_cache_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd726b468 dapm_mark_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd75e5251 snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd8fc1618 snd_soc_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdc332dc3 snd_soc_codec_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdd56ae75 snd_soc_limit_volume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdd7dfbad snd_soc_dapm_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xde689b6b snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe0270b86 snd_soc_cache_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe0fa6eb5 snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe1004f85 snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe1a322be snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe27d9ed9 snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe80c76bd snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe94b91a9 dapm_reg_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeec0b076 snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeeeeee09 snd_soc_bytes_get +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xef27395b snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf29e05e6 snd_soc_test_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf5139821 devm_snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf92e60fb snd_soc_dpcm_be_set_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfb1337a8 snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfbd06a7b snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfc38c668 snd_soc_update_bits_locked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfd101422 snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfe242b40 snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfec1d504 snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0x118a3f6e i915_bdw_gpu_busy +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0x7381c75a i915_bdw_read_mch_val +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0x96d7119d i915_bdw_gpu_raise +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0xa17bc3aa i915_bdw_gpu_turbo_disable +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0xde54f019 i915_bdw_gpu_lower +EXPORT_SYMBOL_GPL vmlinux 0x00000000 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x00000000 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x00000000 compat_alloc_user_space +EXPORT_SYMBOL_GPL vmlinux 0x00000000 kern_mount_data +EXPORT_SYMBOL_GPL vmlinux 0x00000000 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x00000000 sigset_from_compat +EXPORT_SYMBOL_GPL vmlinux 0x00000000 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x0019dbf7 udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x002ce9ee sec_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x0034f3b6 xen_has_pv_nic_devices +EXPORT_SYMBOL_GPL vmlinux 0x0054ffa2 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x00673f96 inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x00687adc sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x006b163e tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x006bc072 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0070ef14 __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0x007978d7 shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x009304b6 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x009ad760 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0x00c4dc87 timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x00e77412 irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x00ebcb5d ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0x01010c6d klist_add_before +EXPORT_SYMBOL_GPL vmlinux 0x011cf028 regulator_suspend_finish +EXPORT_SYMBOL_GPL vmlinux 0x01716379 __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x01848a8e local_apic_timer_c2_ok +EXPORT_SYMBOL_GPL vmlinux 0x019202f5 crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x0201283b regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x02053436 usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0x02448233 wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0x026211e2 memory_failure_queue +EXPORT_SYMBOL_GPL vmlinux 0x027673fa ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x02826355 inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0x02b0c44f PageHeadHuge +EXPORT_SYMBOL_GPL vmlinux 0x02c1b1b7 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x02cb6680 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0x02dc603f usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0x02de9ae6 debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0x031f9247 __rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x032917a7 debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x0334ec6f jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x0354a7a2 debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x03aad638 ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0x03cdcf10 blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0x03dd0962 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x03e3686c ata_timing_cycle2mode +EXPORT_SYMBOL_GPL vmlinux 0x03eac16f pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x03eca9a1 btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0x04486e88 rcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x0472add4 device_add +EXPORT_SYMBOL_GPL vmlinux 0x0482f969 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0x048eca7f xen_swiotlb_sync_single_for_cpu +EXPORT_SYMBOL_GPL vmlinux 0x04926591 tpm_show_temp_deactivated +EXPORT_SYMBOL_GPL vmlinux 0x04acb23a wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x04c3f2c1 gnttab_empty_grant_references +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04ceb495 da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x04df8fbc lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0x04ec0c2d usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0x04ef0207 pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0x053494cb tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0x054e43a5 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x0551f0ce tick_nohz_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x056f0c92 cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x058f3923 bus_find_device_by_name +EXPORT_SYMBOL_GPL vmlinux 0x05a6783f xen_unmap_domain_mfn_range +EXPORT_SYMBOL_GPL vmlinux 0x05b70fa5 attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x05d85fcc subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x05e3b10b da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0x05fab630 agp_remove_bridge +EXPORT_SYMBOL_GPL vmlinux 0x0600c3f4 pinctrl_lookup_state +EXPORT_SYMBOL_GPL vmlinux 0x060d1064 set_memory_ro +EXPORT_SYMBOL_GPL vmlinux 0x062668a6 pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x062a421c tpm_open +EXPORT_SYMBOL_GPL vmlinux 0x062fc169 xen_hvm_resume_frames +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x06d549e6 pinctrl_free_gpio +EXPORT_SYMBOL_GPL vmlinux 0x06fd599e sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0x06ffd847 blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x07075033 register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0x071caccc ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x073ab9e8 pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x0750d1e5 sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0x075a40de usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0x075ddff4 pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x0762403c edac_put_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x076794d3 fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0x076e1088 anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x0777bfbc crypto_init_shash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x077cc87c ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x078f080c spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x079eb7fc rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07becf38 set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x07cd5cc4 subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x07e732bf ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0x07f9a414 subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07fc478e acpi_dev_resource_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x083db905 rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0x084a5a66 pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0x0850107e bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x085fe909 device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x0879c83c dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x0889f9b8 led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x088b9684 ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x088bfa7e cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x08a8836d pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x08b8ee65 devm_rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x08bc0870 compat_put_timespec +EXPORT_SYMBOL_GPL vmlinux 0x08d24dac __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x08f789aa led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0x090fee6c dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x094313d7 hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0x09437748 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x09469482 kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x099362ba usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x09a0b11b devres_alloc +EXPORT_SYMBOL_GPL vmlinux 0x09a53393 user_match +EXPORT_SYMBOL_GPL vmlinux 0x09f461e2 pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x09fd7d94 ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x0a5b42b6 usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x0a657a9e regmap_fields_write +EXPORT_SYMBOL_GPL vmlinux 0x0a6a5f52 acpi_ec_remove_query_handler +EXPORT_SYMBOL_GPL vmlinux 0x0a72fa9e kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0x0a928435 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0x0a9cf80f usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0x0a9fd3c5 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x0ab9a033 fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0x0acce1b0 bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x0ad040f0 regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x0add8cdb uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x0ae3944e ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0x0ae52995 rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b3e2b10 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0b52e502 apei_resources_add +EXPORT_SYMBOL_GPL vmlinux 0x0b6e3370 pci_msi_off +EXPORT_SYMBOL_GPL vmlinux 0x0b7b9554 wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0bae62b1 ktime_get_monotonic_offset +EXPORT_SYMBOL_GPL vmlinux 0x0bd55666 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0be8cb31 btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0bf3e6cf tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x0bfa3a19 rcu_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x0bfacd5a bmp085_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x0c040b68 device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x0c0c015e ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0x0c2cdbf1 synchronize_sched +EXPORT_SYMBOL_GPL vmlinux 0x0c36c9ed pci_hp_change_slot_info +EXPORT_SYMBOL_GPL vmlinux 0x0c56bc53 vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x0c59534c __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x0c75c8b2 platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0x0c75e342 __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0x0c805f93 clflush_cache_range +EXPORT_SYMBOL_GPL vmlinux 0x0c80e3fe efivar_init +EXPORT_SYMBOL_GPL vmlinux 0x0c8a317e register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x0cc1e40f crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x0cd047d0 mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0cd236ce regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0d065ca6 dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x0d904db8 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x0dbc7d06 sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0dc075bc dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x0dd11f01 hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0e0c3d19 ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0x0e13cb4d apei_resources_release +EXPORT_SYMBOL_GPL vmlinux 0x0e170b8b sec_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x0e17fc25 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x0e398d3e __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x0e4c5674 iommu_map +EXPORT_SYMBOL_GPL vmlinux 0x0e8a99c5 usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0x0ea22be2 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x0eb4800a balloon_devinfo_alloc +EXPORT_SYMBOL_GPL vmlinux 0x0eba1a0e crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0x0ec7198a rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0x0ecf823a static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x0ed9302e percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x0ee86c41 usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL vmlinux 0x0f2d7d87 mce_unregister_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0x0f51c456 key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x0f751aea input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0x0f7feeef arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x0f930597 efivar_entry_remove +EXPORT_SYMBOL_GPL vmlinux 0x0fa138de xen_hvm_need_lapic +EXPORT_SYMBOL_GPL vmlinux 0x0fc70b23 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x0fcc1969 copy_from_user_nmi +EXPORT_SYMBOL_GPL vmlinux 0x0fe2d570 xenbus_directory +EXPORT_SYMBOL_GPL vmlinux 0x0fe3bdb9 efivar_entry_set_get_size +EXPORT_SYMBOL_GPL vmlinux 0x0ff84cdb wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x0ffcf864 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0x1006d295 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x100a2427 usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x1025e578 inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x102bda26 regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x103b10e5 find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0x1068580a gpiochip_remove_pin_ranges +EXPORT_SYMBOL_GPL vmlinux 0x107ef64e sdhci_pci_o2_probe +EXPORT_SYMBOL_GPL vmlinux 0x10a1d83e fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0x10d07dea gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0x10e7a583 acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x10ea8f7a crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x110106c1 cper_severity_to_aer +EXPORT_SYMBOL_GPL vmlinux 0x111931da attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0x113b791c sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x114246e8 raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x1145356b tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0x114f1a20 balloon_stats +EXPORT_SYMBOL_GPL vmlinux 0x1157eda4 cpufreq_table_validate_and_show +EXPORT_SYMBOL_GPL vmlinux 0x1172ce54 rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0x11770bdd thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x117c7305 hwpoison_filter_dev_major +EXPORT_SYMBOL_GPL vmlinux 0x1182f38f setup_irq +EXPORT_SYMBOL_GPL vmlinux 0x118c8000 sec_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x119af014 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0x119fde05 rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x11b3701f device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x11fdcc98 extcon_unregister_interest +EXPORT_SYMBOL_GPL vmlinux 0x1212821b __inet_hash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x121ed3f3 add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0x124f2056 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x125ef767 unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x126fcd12 cgroup_taskset_cur_css +EXPORT_SYMBOL_GPL vmlinux 0x12701d03 register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x12721022 swiotlb_tbl_unmap_single +EXPORT_SYMBOL_GPL vmlinux 0x12780119 rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x12797a32 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x12a1ea54 pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x12a22636 usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x12b1b693 virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0x12ea9e7d pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x12f17d40 fuse_get_req +EXPORT_SYMBOL_GPL vmlinux 0x130bd388 check_tsc_disabled +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131be572 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x132fc939 cper_estatus_print +EXPORT_SYMBOL_GPL vmlinux 0x136c7aed pinctrl_utils_dt_free_map +EXPORT_SYMBOL_GPL vmlinux 0x138aff76 gnttab_init +EXPORT_SYMBOL_GPL vmlinux 0x13921363 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x13ad647f scatterwalk_bytes_sglen +EXPORT_SYMBOL_GPL vmlinux 0x13b89dee pinctrl_request_gpio +EXPORT_SYMBOL_GPL vmlinux 0x13ce87e8 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0x14140abf bio_clone_mddev +EXPORT_SYMBOL_GPL vmlinux 0x1416c8d6 put_compat_timeval +EXPORT_SYMBOL_GPL vmlinux 0x14353bfa stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0x14364422 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x14880cd2 device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x1492d684 ping_proc_register +EXPORT_SYMBOL_GPL vmlinux 0x1496adb2 seq_open_net +EXPORT_SYMBOL_GPL vmlinux 0x14e1118e __init_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0x14f875ce devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x14fe4faf subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x15010e1f arbitrary_virt_to_machine +EXPORT_SYMBOL_GPL vmlinux 0x1501bf65 __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0x15026a32 snmp_mib_init +EXPORT_SYMBOL_GPL vmlinux 0x150d887e pinctrl_force_sleep +EXPORT_SYMBOL_GPL vmlinux 0x151c5e87 perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x151f3977 devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x1529965f class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0x15366d22 acpi_dev_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x15485ce9 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0x15544a86 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0x157a6f0b sec_reg_update +EXPORT_SYMBOL_GPL vmlinux 0x158605f1 ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0x15892417 async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x159016ec clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0x15939100 uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0x159d1ed0 pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x15b0606e e820_any_mapped +EXPORT_SYMBOL_GPL vmlinux 0x16000a3c dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x1604d674 rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0x160e0f95 xenbus_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x162d84a2 usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x16441ed8 split_page +EXPORT_SYMBOL_GPL vmlinux 0x1650bf27 rcutorture_record_progress +EXPORT_SYMBOL_GPL vmlinux 0x1653e3b2 cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x168f5114 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x16cb21e1 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0x171a6978 ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x171d240c crypto_larval_lookup +EXPORT_SYMBOL_GPL vmlinux 0x17258d8f regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x172cc7a2 pwm_free +EXPORT_SYMBOL_GPL vmlinux 0x17329dfc perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x1739f391 regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0x1753a32f hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0x175c543c sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x1760a7c0 spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x17614bf3 apei_resources_sub +EXPORT_SYMBOL_GPL vmlinux 0x176c3418 wm8400_block_read +EXPORT_SYMBOL_GPL vmlinux 0x17891800 usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0x17b83249 devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x17d8a21a regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0x17ea87d9 rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x17efaf55 rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x17f0103a save_stack_trace_tsk +EXPORT_SYMBOL_GPL vmlinux 0x1829b9ed hwpoison_filter_memcg +EXPORT_SYMBOL_GPL vmlinux 0x182aa956 tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0x183731af usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0x183c1a94 ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0x1848d7d7 __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0x1853653c btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1853d94f tpm_show_durations +EXPORT_SYMBOL_GPL vmlinux 0x1856c38c register_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0x18582826 amd_pmu_disable_virt +EXPORT_SYMBOL_GPL vmlinux 0x1866cec2 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x186c8d49 sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x1878f62b edac_err_assert +EXPORT_SYMBOL_GPL vmlinux 0x1889563a clk_register_mux +EXPORT_SYMBOL_GPL vmlinux 0x188a95eb pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0x18b637e5 sis_info133_for_sata +EXPORT_SYMBOL_GPL vmlinux 0x18c39ff9 __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x18de2a26 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x18f83fab gnttab_grant_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0x1915a1de bsg_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x192a42bf clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x193d48e0 trace_current_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x194dd5f5 pkey_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x195a2de4 arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0x196614ce hw_breakpoint_restore +EXPORT_SYMBOL_GPL vmlinux 0x1988ff69 ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x1999fea5 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19b384a5 hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x19d3b035 need_load_eval +EXPORT_SYMBOL_GPL vmlinux 0x1a06f4b0 relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x1a082d69 max77693_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x1a0b0846 __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x1a0e9d29 page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0x1a0eb08f dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x1a1dd55b rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0x1a323362 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x1a5d22ee xen_unregister_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0x1a77cdb4 tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x1ab49e22 pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x1acef7d2 pm_freezing +EXPORT_SYMBOL_GPL vmlinux 0x1ad3059a usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x1ad83009 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0x1b04a12a balloon_mapping_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1b3c9291 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0x1b42d26b get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x1b431027 tcp_init_congestion_ops +EXPORT_SYMBOL_GPL vmlinux 0x1b816bb8 class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1b8822d8 pinctrl_gpio_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1b9aca3f jprobe_return +EXPORT_SYMBOL_GPL vmlinux 0x1ba8dcd9 pinctrl_remove_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x1bc10e45 adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1bc5eebe pinctrl_gpio_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x1bd06aab cpufreq_frequency_table_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x1be11751 css_next_descendant_post +EXPORT_SYMBOL_GPL vmlinux 0x1be51b1f rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x1bfe53fa bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0x1c3becb0 class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x1c414c81 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c6629dc class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1c8c4c14 irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0x1cbfcb40 tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0x1cdb2147 zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0x1ce1b482 rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0x1cfd95c1 wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0x1d23c2cb __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x1d459685 xstate_size +EXPORT_SYMBOL_GPL vmlinux 0x1d58ae14 lpddr2_jedec_timings +EXPORT_SYMBOL_GPL vmlinux 0x1d68093c rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1d6f8420 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x1d739e1c xen_set_callback_via +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d7bb22d virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0x1d7d15c9 debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x1d8cf6cf sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x1d8fb3bb acpi_dev_resource_address_space +EXPORT_SYMBOL_GPL vmlinux 0x1da3e271 blk_queue_flush +EXPORT_SYMBOL_GPL vmlinux 0x1dba8f88 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0x1dd5de14 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x1de2dc53 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x1dfba683 power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0x1e000879 hwpoison_filter_enable +EXPORT_SYMBOL_GPL vmlinux 0x1e10a3b1 usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x1e3a88fb trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x1e49506d crypto_init_spawn +EXPORT_SYMBOL_GPL vmlinux 0x1e4ad3c6 ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0x1e595ead wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x1e5b03dc pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e8c96b6 rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x1eb1594f gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ec42732 scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0x1edc21cb hwpoison_filter_flags_mask +EXPORT_SYMBOL_GPL vmlinux 0x1ee6d37f __mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x1f0b3b16 ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0x1f1988f7 hwpoison_filter_flags_value +EXPORT_SYMBOL_GPL vmlinux 0x1f258037 iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0x1f6ae9ae serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f8db7f9 ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x1f95f543 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0x1fa41df7 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0x1fbaa0cd dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x1fcece42 inet_twdr_twcal_tick +EXPORT_SYMBOL_GPL vmlinux 0x2045fd7e da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x205d93d7 xenbus_map_ring_valloc +EXPORT_SYMBOL_GPL vmlinux 0x2062f3da dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0x2075b054 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0x20802df6 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x2093d9be get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0x209ec764 xen_event_channel_op_compat +EXPORT_SYMBOL_GPL vmlinux 0x209f5631 thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x20b58982 irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x20bc3470 orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x20c6483f xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0x20ee03c7 pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x212aef59 serial8250_rx_dma +EXPORT_SYMBOL_GPL vmlinux 0x21572dc3 devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0x21585d42 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x221e1e7d __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x2222df9e hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0x22344a67 nf_register_afinfo +EXPORT_SYMBOL_GPL vmlinux 0x22472bee crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0x225b8ae0 usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0x225b8f9d elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x22901754 serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x2296c00d crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x22a001fc device_move +EXPORT_SYMBOL_GPL vmlinux 0x22a7868d tpm_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x22bb3ddf gpio_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x22e119f6 uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0x22f6d49d crypto_rng_type +EXPORT_SYMBOL_GPL vmlinux 0x2321b370 dma_buf_kunmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x23556e36 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0x2366a2c0 errata +EXPORT_SYMBOL_GPL vmlinux 0x23729682 stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0x2379cb3c dev_hard_start_xmit +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x238b606e ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x2397bbb3 fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0x23cb0593 xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0x23cbb590 __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x23e0ab8a crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0x23f727a7 single_release_net +EXPORT_SYMBOL_GPL vmlinux 0x23fd2451 crypto_alloc_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x24011e14 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x2401c34c usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x24065989 get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0x2433be84 usb_acpi_set_power_state +EXPORT_SYMBOL_GPL vmlinux 0x2445b4b3 fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0x2447533c ktime_get_real +EXPORT_SYMBOL_GPL vmlinux 0x2454d614 debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x245fc97c scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x24a1c545 xenbus_alloc_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x24a8d1bc usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0x24aac4d9 crypto_aes_expand_key +EXPORT_SYMBOL_GPL vmlinux 0x24c7698a xenbus_write +EXPORT_SYMBOL_GPL vmlinux 0x24d0b9a4 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x251714b1 sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0x251c93c5 crypto_lookup_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x2529d691 dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x252ea475 led_trigger_show +EXPORT_SYMBOL_GPL vmlinux 0x25310868 iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0x2537dc9a get_device +EXPORT_SYMBOL_GPL vmlinux 0x253b574e regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0x2545c170 unregister_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0x254d93b6 uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0x254fe107 sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x256a10b2 kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x2578312b bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x25a97010 hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x25b00b7f irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x25cc84db tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x25d0293b powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0x25fa839e dm_set_device_limits +EXPORT_SYMBOL_GPL vmlinux 0x2610efde swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0x26247d2e tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0x262f20a8 local_clock +EXPORT_SYMBOL_GPL vmlinux 0x2638e70e rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x26546e5b md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0x26719f70 device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x2671c513 sock_update_netprioidx +EXPORT_SYMBOL_GPL vmlinux 0x268f87ce class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x26965721 slow_virt_to_phys +EXPORT_SYMBOL_GPL vmlinux 0x26b09c83 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0x26b6a256 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0x26b71fb4 ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x26b8dae0 regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26cc02dd register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x26cd0fe0 register_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x26fb47bb __rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x2735ef9d init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x273ded3e ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0x2753079c pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x2767ec90 da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x278c0094 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0x279cb985 apei_exec_pre_map_gars +EXPORT_SYMBOL_GPL vmlinux 0x27a0a5d0 spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x27a5d89a devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x27c0c4be eventfd_ctx_read +EXPORT_SYMBOL_GPL vmlinux 0x27c1e63f usb_amd_find_chipset_info +EXPORT_SYMBOL_GPL vmlinux 0x27cb195e ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x27dbaff4 preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x27ddb33d acpi_dev_resource_io +EXPORT_SYMBOL_GPL vmlinux 0x27ea090d subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27f68a9d iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x2801370b evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x2813d86a tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0x28352c5b usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x283f4ca9 blkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x285f2840 find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x286ad945 scsi_internal_device_unblock +EXPORT_SYMBOL_GPL vmlinux 0x286b1d92 gpiochip_add +EXPORT_SYMBOL_GPL vmlinux 0x288cccf6 fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0x28a903c8 timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x28beccf6 usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0x28c241ed unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0x28c8d5e9 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x28c9a247 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0x28d600b7 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0x28e64c64 xen_has_pv_and_legacy_disk_devices +EXPORT_SYMBOL_GPL vmlinux 0x29019200 pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x292a7555 skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0x294d9220 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x29881fc8 tpm_gen_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x299efcdf usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0x299f6fdd sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x29ace86c pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x29c21a3b pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0x29efb10d platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x29f8fde0 xen_swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL_GPL vmlinux 0x29f91663 devm_pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x2a1052c3 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0x2a15c233 napi_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x2a2062db regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2a27d0a7 raw_seq_open +EXPORT_SYMBOL_GPL vmlinux 0x2a4fda80 sysfs_put +EXPORT_SYMBOL_GPL vmlinux 0x2a5e668d acpiphp_register_attention +EXPORT_SYMBOL_GPL vmlinux 0x2a63c828 __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a7964f0 pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x2a82858d key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0x2a841396 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0x2a86b039 usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x2a9185b1 spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x2a91f169 acpi_pci_find_root +EXPORT_SYMBOL_GPL vmlinux 0x2aae0cef usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0x2ab245a9 __blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x2abc1a82 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2ac96891 napi_by_id +EXPORT_SYMBOL_GPL vmlinux 0x2accaeed pinctrl_find_gpio_range_from_pin +EXPORT_SYMBOL_GPL vmlinux 0x2ad1ece4 zs_get_total_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0x2adb5b4f kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x2ae756e0 pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x2b1b6913 inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x2b238f05 percpu_ida_for_each_free +EXPORT_SYMBOL_GPL vmlinux 0x2b293c81 pci_ats_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x2b35e3b7 fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2b3c3408 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x2b7a6de8 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2b92ddb6 unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x2ba4f6d4 btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x2bd72b76 btree_update +EXPORT_SYMBOL_GPL vmlinux 0x2be432b7 fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0x2bfaef4e clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x2c06eed9 irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c2db8ba pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0x2c4fb02c tcp_fetch_timewait_stamp +EXPORT_SYMBOL_GPL vmlinux 0x2c6b6469 mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x2c7d9c64 xen_store_interface +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2caad68e relay_open +EXPORT_SYMBOL_GPL vmlinux 0x2cac3875 ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0x2cc61bde ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2ce98559 kcrypto_wq +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2d00bd89 anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2d17a0e1 cgroup_taskset_size +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d59c954 edac_handlers +EXPORT_SYMBOL_GPL vmlinux 0x2d656d3f context_tracking_enabled +EXPORT_SYMBOL_GPL vmlinux 0x2d7a9c3c driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x2d95cd93 tcp_death_row +EXPORT_SYMBOL_GPL vmlinux 0x2d95e6e6 led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0x2d9f2ce3 sched_clock_idle_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x2db1faad gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0x2dba276a __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x2dc6d53e acpi_dev_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x2e0958c1 devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x2e1da9fb probe_kernel_read +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e2f1740 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2e341ecc rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x2e418cd8 pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0x2e45e488 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x2e5317ec crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0x2e7f28ed regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0x2e909ae5 iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ec75426 pci_intx_mask_supported +EXPORT_SYMBOL_GPL vmlinux 0x2ed3f837 regmap_read +EXPORT_SYMBOL_GPL vmlinux 0x2f00333d xen_remap_domain_mfn_range +EXPORT_SYMBOL_GPL vmlinux 0x2f0b637d blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f3e17d9 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f64415f unregister_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2f857551 machine_check_poll +EXPORT_SYMBOL_GPL vmlinux 0x2fa5637c bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x2fc09350 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0x2fd8cba9 freeze_wake +EXPORT_SYMBOL_GPL vmlinux 0x2ff760d1 gnttab_unmap_refs +EXPORT_SYMBOL_GPL vmlinux 0x301a27e9 ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x304c085e __efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x30730150 print_context_stack +EXPORT_SYMBOL_GPL vmlinux 0x308b733a getboottime +EXPORT_SYMBOL_GPL vmlinux 0x30a19811 regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x3109b751 cpu_clock +EXPORT_SYMBOL_GPL vmlinux 0x310b2ce8 rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x3120854f acpi_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x3142e7ce sdhci_pci_o2_resume +EXPORT_SYMBOL_GPL vmlinux 0x31434219 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x3149b39c inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x314e5648 dm_dispatch_request +EXPORT_SYMBOL_GPL vmlinux 0x3171e364 tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0x317a262c regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x3195c972 ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0x319866d0 blk_queue_bio +EXPORT_SYMBOL_GPL vmlinux 0x31c0c2d1 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL vmlinux 0x31dcbe1b bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x31e23942 irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x31e72045 regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0x31efc5da crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x321bdbb1 compat_get_timeval +EXPORT_SYMBOL_GPL vmlinux 0x321f86e7 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0x3256ca45 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x325e677c gnttab_grant_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x327183a1 debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0x32896390 fuse_request_send +EXPORT_SYMBOL_GPL vmlinux 0x328995b5 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0x328a9411 xen_find_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0x329140cb ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x329bbbde timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x32b31a8c ktime_get_boottime +EXPORT_SYMBOL_GPL vmlinux 0x32b81c7c ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0x32bded08 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32cf386c wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0x32ddc161 crypto_ahash_type +EXPORT_SYMBOL_GPL vmlinux 0x32fd447a monotonic_to_bootbased +EXPORT_SYMBOL_GPL vmlinux 0x330d1143 apic +EXPORT_SYMBOL_GPL vmlinux 0x3310bf11 pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x3354a2ea inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x336154ca rcutorture_record_test_transition +EXPORT_SYMBOL_GPL vmlinux 0x3364ab09 regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x33655159 xen_pcpu_hotplug_sync +EXPORT_SYMBOL_GPL vmlinux 0x33834c8e of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0x338d4dca irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x3390f479 device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x33ab696f xenbus_dev_changed +EXPORT_SYMBOL_GPL vmlinux 0x33ae963f ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0x33b91603 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x33b96e5d apei_exec_write_register +EXPORT_SYMBOL_GPL vmlinux 0x33c15621 spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x33c33ef3 sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x33f7ab15 get_compat_timespec +EXPORT_SYMBOL_GPL vmlinux 0x34036a83 ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0x342535d2 dma_buf_kmap +EXPORT_SYMBOL_GPL vmlinux 0x34608e8f __rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3462c1d1 tcp_peer_is_proven +EXPORT_SYMBOL_GPL vmlinux 0x3465fce6 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0x347fd4b3 eventfd_ctx_get +EXPORT_SYMBOL_GPL vmlinux 0x349c9c6f cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0x34b9f37d crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x34c8838d sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0x34dda704 tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0x34e2afcc simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0x34e9635e register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x352650ee gnttab_batch_map +EXPORT_SYMBOL_GPL vmlinux 0x35270ad6 xenbus_dev_groups +EXPORT_SYMBOL_GPL vmlinux 0x353247cc blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0x3542d654 get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x355554e3 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x35641c18 max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x357e6c79 platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x35891244 zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x35b7bf31 dma_buf_kmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x35bbcf4d handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0x35bf05c2 crypto_aead_type +EXPORT_SYMBOL_GPL vmlinux 0x35d5ae6e sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0x35f10f43 nfq_ct_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x35f165f1 devm_reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x35f19ea2 gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x3604a6dc input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x361e2bcc save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0x3638cb05 regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x36588860 dbs_check_cpu +EXPORT_SYMBOL_GPL vmlinux 0x365cc1d0 alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0x367e4072 ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0x3681c8ab ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x368f1fea static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x3691ea55 exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36b5497e intel_iommu_enabled +EXPORT_SYMBOL_GPL vmlinux 0x36e82446 usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x36f63718 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0x3703cd40 cgroup_is_descendant +EXPORT_SYMBOL_GPL vmlinux 0x3730c360 system_trusted_keyring +EXPORT_SYMBOL_GPL vmlinux 0x375468f3 crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x37562116 usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x3781c1f9 platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0x37f1ffbf gdt_page +EXPORT_SYMBOL_GPL vmlinux 0x381a0f46 part_round_stats +EXPORT_SYMBOL_GPL vmlinux 0x382a0b04 remove_irq +EXPORT_SYMBOL_GPL vmlinux 0x38620e38 gnttab_grant_foreign_access_trans_ref +EXPORT_SYMBOL_GPL vmlinux 0x38a3bd1b usb_bus_list_lock +EXPORT_SYMBOL_GPL vmlinux 0x38a69eb2 blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0x38f890e4 ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x391924c0 md_ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x393bd17e pci_cleanup_aer_uncorrect_error_status +EXPORT_SYMBOL_GPL vmlinux 0x394773e2 ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x39ac23d4 inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0x39d6f106 bmp085_detect +EXPORT_SYMBOL_GPL vmlinux 0x39de2576 tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x39e12e59 device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x39e41d76 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0x3a1636fa bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0x3a213f7f inet_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a38dc65 memory_failure +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a5974f9 driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3ab4fe21 da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3abe44b1 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0x3ad0e201 scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x3ad8d95a fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x3ae698e0 blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0x3af18ed1 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0x3b0b0141 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0x3b0d6bae usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x3b1a59a0 ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0x3b554d04 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x3b5b92f7 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0x3b7145bb apei_exec_read_register_value +EXPORT_SYMBOL_GPL vmlinux 0x3bceb998 subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x3bfcedd5 kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x3c114257 rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x3c1bfbb9 pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0x3c341acd regmap_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x3c3c4e57 i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0x3c5ea047 xen_pci_frontend +EXPORT_SYMBOL_GPL vmlinux 0x3c6795c1 rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0x3c6b2449 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x3c8424a0 clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3c8cc367 tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0x3c9390db pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0x3cb85d0e xen_swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0x3cc72a0b n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cd09998 debugfs_remove_recursive +EXPORT_SYMBOL_GPL vmlinux 0x3cef4392 dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0x3cf06daf mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0x3cf65402 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d414b88 __get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x3d51b06a sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x3d5f392d acpi_os_unmap_memory +EXPORT_SYMBOL_GPL vmlinux 0x3d7ea99a gnttab_grant_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x3d826380 sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0x3d8d2358 xen_register_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0x3d994fac vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0x3dae6404 unregister_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x3dc7aeb9 usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x3dc916b6 crypto_fl_tab +EXPORT_SYMBOL_GPL vmlinux 0x3dca025f hwpoison_filter +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3dff9e31 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x3e1289bc sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0x3e1479ea fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0x3e23ac2f edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x3e2e543d cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x3e2fa31f wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3e4d5ee9 kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x3e5d644b __online_page_increment_counters +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e971b8d regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3ea5196d apei_osc_setup +EXPORT_SYMBOL_GPL vmlinux 0x3ec056b9 led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0x3ecccb0c max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x3ef493ed regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x3efb35c9 get_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0x3f14ee89 get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0x3f21cd4a thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x3f229c4c oops_begin +EXPORT_SYMBOL_GPL vmlinux 0x3f5fa012 pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0x3f84d4c9 gnttab_release_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x3f91cdca ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0x3fa10f84 sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0x3fc72d3d __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x3fd89f38 __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0x400a024b acpi_scan_lock_release +EXPORT_SYMBOL_GPL vmlinux 0x400f0c67 bmp085_remove +EXPORT_SYMBOL_GPL vmlinux 0x4017814e cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x4045c494 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0x4065d168 pm_print_active_wakeup_sources +EXPORT_SYMBOL_GPL vmlinux 0x406a6b94 arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0x409777de crypto_init_spawn2 +EXPORT_SYMBOL_GPL vmlinux 0x40af0dec ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x40d46b21 crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x40f6fbfc perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0x40fc5e30 pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x410c109b usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x411fded1 default_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x41200f8a subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x4127a418 __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0x412fc7c2 md_is_badblock +EXPORT_SYMBOL_GPL vmlinux 0x415013ba ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x41721113 hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x418b3da2 stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x4190969f efivar_entry_find +EXPORT_SYMBOL_GPL vmlinux 0x41d28659 irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x41d8c111 __remove_pages +EXPORT_SYMBOL_GPL vmlinux 0x41de8ac5 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x4209ee1d power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0x4213a51a efivar_entry_set_safe +EXPORT_SYMBOL_GPL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x424acc6d scatterwalk_done +EXPORT_SYMBOL_GPL vmlinux 0x424be560 inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x4279e725 sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0x427d5c68 register_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x42969937 generic_access_phys +EXPORT_SYMBOL_GPL vmlinux 0x42a6b847 xfrm_inner_extract_output +EXPORT_SYMBOL_GPL vmlinux 0x42ce9cb8 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0x42e9edf3 inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0x4303418e crypto_alloc_instance +EXPORT_SYMBOL_GPL vmlinux 0x4341818f __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x438cd4d4 regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0x43904b1c ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0x43a53735 __alloc_workqueue_key +EXPORT_SYMBOL_GPL vmlinux 0x43af034d extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x43ecbcf5 cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0x43f1474a ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x44404f11 kdb_register_repeat +EXPORT_SYMBOL_GPL vmlinux 0x44694b11 fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0x4483e318 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x448b457e dm_kill_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x44b6565c rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0x44c84c3e usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0x450fb522 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x45223954 da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0x45339658 pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0x4541fe0d mtrr_state +EXPORT_SYMBOL_GPL vmlinux 0x454c15ae __smp_call_function_single +EXPORT_SYMBOL_GPL vmlinux 0x4567b532 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0x456c3df0 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x4570cece powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x459afce7 device_attach +EXPORT_SYMBOL_GPL vmlinux 0x45bf1ff3 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x45cacf43 sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0x45d14bdf hypercall_page +EXPORT_SYMBOL_GPL vmlinux 0x45e21b14 devm_acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x460c6227 blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0x460f31aa rodata_test_data +EXPORT_SYMBOL_GPL vmlinux 0x460f7531 wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x46434934 disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x4661db2b file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0x4672e88b __crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x46d95491 wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0x47053969 rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0x470b6efb blk_queue_rq_timed_out +EXPORT_SYMBOL_GPL vmlinux 0x470fa426 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x47184cba dm_disk +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x47233905 ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x472d851d rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x4737f06c inet_hash +EXPORT_SYMBOL_GPL vmlinux 0x473c326a fuse_get_req_for_background +EXPORT_SYMBOL_GPL vmlinux 0x4760e80a __efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x476ab3ec pwm_set_polarity +EXPORT_SYMBOL_GPL vmlinux 0x477a6ec6 cpufreq_frequency_get_table +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x47978ecc inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x47a4b32a extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47c5a33b alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x47e70dba tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0x47e9bf2b ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x47f66580 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0x47fb11fc class_find_device +EXPORT_SYMBOL_GPL vmlinux 0x481486e5 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x4828e77b acpi_scan_lock_acquire +EXPORT_SYMBOL_GPL vmlinux 0x48682db9 perf_guest_get_msrs +EXPORT_SYMBOL_GPL vmlinux 0x488cae19 rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x48be2179 acpi_get_pci_dev +EXPORT_SYMBOL_GPL vmlinux 0x49031def inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x490a8df6 x86_platform +EXPORT_SYMBOL_GPL vmlinux 0x4910f379 spi_alloc_master +EXPORT_SYMBOL_GPL vmlinux 0x495d8a50 extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0x497f3322 m2p_remove_override +EXPORT_SYMBOL_GPL vmlinux 0x49800ff2 xen_swiotlb_dma_supported +EXPORT_SYMBOL_GPL vmlinux 0x498d293a trace_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x498e66d3 d_materialise_unique +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x49afca6f ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0x49b4679a pci_pri_enabled +EXPORT_SYMBOL_GPL vmlinux 0x49cf042a ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0x4a1d67ae ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x4a1f127b bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0x4a24e355 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4a3c3cf9 microcode_sanity_check +EXPORT_SYMBOL_GPL vmlinux 0x4a47e4f0 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x4a6002cf __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x4a8f9ac6 ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x4a90160e bprintf +EXPORT_SYMBOL_GPL vmlinux 0x4aa3dc61 irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0x4aa7a3ea generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0x4aadeb9a ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0x4ac3feb2 rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x4ad4daa5 ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x4ae909f0 i2c_new_device +EXPORT_SYMBOL_GPL vmlinux 0x4aed534f cgroup_taskset_next +EXPORT_SYMBOL_GPL vmlinux 0x4affd08b put_compat_timespec +EXPORT_SYMBOL_GPL vmlinux 0x4b4eca5f pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x4bab44c2 inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x4bc62a81 audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4bc8cefd rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0x4bf0d6d1 wakeup_source_prepare +EXPORT_SYMBOL_GPL vmlinux 0x4c28e21a __ip_route_output_key +EXPORT_SYMBOL_GPL vmlinux 0x4c2a472b __static_cpu_has_safe +EXPORT_SYMBOL_GPL vmlinux 0x4c2c87c3 ping_close +EXPORT_SYMBOL_GPL vmlinux 0x4c2e1f24 clk_disable +EXPORT_SYMBOL_GPL vmlinux 0x4c4248af blk_queue_dma_drain +EXPORT_SYMBOL_GPL vmlinux 0x4c602bf1 __blkg_release_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4c759827 byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x4c96a20d rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0x4ca4c9df clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x4ca507e4 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4cbdf7df ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0x4cda9bbd regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0x4d0d575d usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x4d186c73 da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x4d427fe6 sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0x4d5cec42 cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0x4d95ef75 acpi_subsys_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x4d9c1efe inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x4db171e3 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4de3e3fc od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x4de6eab6 cgroup_load_subsys +EXPORT_SYMBOL_GPL vmlinux 0x4e109192 ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0x4e242f5f pstore_cannot_block_path +EXPORT_SYMBOL_GPL vmlinux 0x4e25b9be fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0x4e57723d apei_read +EXPORT_SYMBOL_GPL vmlinux 0x4e5de514 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x4e640451 sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x4e74e625 gnttab_batch_copy +EXPORT_SYMBOL_GPL vmlinux 0x4e890d93 ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0x4ec7b8e3 tracepoint_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0x4ecdd152 fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0x4eda5887 ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0x4edc252c rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f020dee public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x4f0fd185 aead_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0x4f165d72 dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x4f170cda regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x4f1d98b0 devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x4f245c80 devres_add +EXPORT_SYMBOL_GPL vmlinux 0x4f94c9fd regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0x4fb5c54e stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x4fd4e89d ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4fd5cfb9 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4fef4b56 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0x500b6dd7 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x50142578 thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x50236c27 unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x5026585c xen_irq_from_gsi +EXPORT_SYMBOL_GPL vmlinux 0x50347bac synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x50354427 i2c_lock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x50366ba8 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x5036d44a crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x5045433c led_trigger_store +EXPORT_SYMBOL_GPL vmlinux 0x506691f1 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x50714eed iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0x507de8c6 add_memory +EXPORT_SYMBOL_GPL vmlinux 0x50828d2e __online_page_set_limits +EXPORT_SYMBOL_GPL vmlinux 0x5086ac3a alg_test +EXPORT_SYMBOL_GPL vmlinux 0x50885fdf __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x50c38485 blkio_subsys +EXPORT_SYMBOL_GPL vmlinux 0x50d1f870 pgprot_writecombine +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50ed6c31 xenbus_unmap_ring +EXPORT_SYMBOL_GPL vmlinux 0x50f21d24 sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0x50f9ea2f scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x51196306 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0x512b1d19 register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x512d0858 ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x5150cf19 wait_for_tpm_stat +EXPORT_SYMBOL_GPL vmlinux 0x51750bb1 thermal_generate_netlink_event +EXPORT_SYMBOL_GPL vmlinux 0x51755fae crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x5187ac4b xen_store_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x518c2fc6 hpet_rtc_dropped_irq +EXPORT_SYMBOL_GPL vmlinux 0x5191bd3c efivar_work +EXPORT_SYMBOL_GPL vmlinux 0x519e6880 pinctrl_add_gpio_ranges +EXPORT_SYMBOL_GPL vmlinux 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL vmlinux 0x522ad8f6 pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0x522f538b tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x5237f2b3 pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0x523f5545 cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0x525b89d5 wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0x5272d8bc __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0x52969624 devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x52a41251 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x52b92394 yield_to +EXPORT_SYMBOL_GPL vmlinux 0x52c5fee6 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x52f36ec7 sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x5305646e alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x530a60a1 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0x533f4123 tpm_release +EXPORT_SYMBOL_GPL vmlinux 0x5354693e cpufreq_frequency_table_cpuinfo +EXPORT_SYMBOL_GPL vmlinux 0x5358fc36 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x53614269 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x536986ef class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x5396cf01 crypto_alloc_ablkcipher +EXPORT_SYMBOL_GPL vmlinux 0x539f157b pci_xen_swiotlb_init_late +EXPORT_SYMBOL_GPL vmlinux 0x53a23002 nf_queue_entry_release_refs +EXPORT_SYMBOL_GPL vmlinux 0x53e19155 fat_attach +EXPORT_SYMBOL_GPL vmlinux 0x54052843 ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0x54099e4b __blk_put_request +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54215db5 visitor64 +EXPORT_SYMBOL_GPL vmlinux 0x543e8f18 debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x5460c8d8 fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x5463f069 tpm_dev_vendor_release +EXPORT_SYMBOL_GPL vmlinux 0x54740eb7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x549732cc __module_address +EXPORT_SYMBOL_GPL vmlinux 0x549d6820 ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x54aba0de wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x54cfaf1c ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x54e5ba24 wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x55526907 xen_features +EXPORT_SYMBOL_GPL vmlinux 0x5559d9e7 usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0x556d8c00 devm_usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x559b79b3 css_next_child +EXPORT_SYMBOL_GPL vmlinux 0x55cdc159 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x55d81b0d acpi_subsys_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x5600baab mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0x561d2039 raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x56398615 mark_tsc_unstable +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x5642c133 xenbus_read_otherend_details +EXPORT_SYMBOL_GPL vmlinux 0x564b901c xen_xenbus_fops +EXPORT_SYMBOL_GPL vmlinux 0x564f1dca klist_add_after +EXPORT_SYMBOL_GPL vmlinux 0x5652f2ed usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0x5654f836 erst_get_record_id_next +EXPORT_SYMBOL_GPL vmlinux 0x565b6892 uuid_le_gen +EXPORT_SYMBOL_GPL vmlinux 0x565ebb07 sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0x56862d84 m2p_add_override +EXPORT_SYMBOL_GPL vmlinux 0x56886b19 scatterwalk_map +EXPORT_SYMBOL_GPL vmlinux 0x5690743c fuse_request_send_background +EXPORT_SYMBOL_GPL vmlinux 0x5692386f gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x56947347 dmi_walk +EXPORT_SYMBOL_GPL vmlinux 0x56ab2a9b devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x56b736bb set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0x56ba5f5a page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x56d697ce cpu_up +EXPORT_SYMBOL_GPL vmlinux 0x56da7dc4 cpufreq_frequency_table_target +EXPORT_SYMBOL_GPL vmlinux 0x56e75d47 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x56e7d899 unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x57231f45 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0x57267cc3 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0x57293f36 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0x57349071 acpi_bus_trim +EXPORT_SYMBOL_GPL vmlinux 0x57520d16 cper_estatus_check_header +EXPORT_SYMBOL_GPL vmlinux 0x5758aee7 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0x575c5f94 execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0x5779d445 xenbus_exists +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x579ee14f led_classdev_register +EXPORT_SYMBOL_GPL vmlinux 0x57be050b dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0x57c2d97c iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x57c708b7 __online_page_free +EXPORT_SYMBOL_GPL vmlinux 0x57e65c7d do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x57ea673b task_xstate_cachep +EXPORT_SYMBOL_GPL vmlinux 0x57ebc111 inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x57f32397 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x57fb701e register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x583e0777 blkg_lookup_create +EXPORT_SYMBOL_GPL vmlinux 0x58413099 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x585704ab aer_recover_queue +EXPORT_SYMBOL_GPL vmlinux 0x589092a9 __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x589213ac __add_pages +EXPORT_SYMBOL_GPL vmlinux 0x589e4569 syscon_regmap_lookup_by_pdevname +EXPORT_SYMBOL_GPL vmlinux 0x589e705d blk_add_request_payload +EXPORT_SYMBOL_GPL vmlinux 0x58e2a027 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0x58fe9409 rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0x592d2cd1 skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0x593271ba sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x5947abbe max77693_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x596f7f8d serial8250_tx_dma +EXPORT_SYMBOL_GPL vmlinux 0x59a6e91d clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x59b2adbf input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x59b3af4f exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x59e2743e call_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0x59eae699 ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x5a08c16d udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5a2b1b67 gnttab_free_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x5a2cd84a dev_get_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x5a30c32e dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x5a31d1fb wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0x5a430fc3 unregister_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x5a441ebd efi_query_variable_store +EXPORT_SYMBOL_GPL vmlinux 0x5a612e19 unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x5a69dd7a devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5ab9db11 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0x5ac2727f smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x5acab58d do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x5adfed7d devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0x5af03a28 gnttab_claim_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x5af1b5cd inet6_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x5b19a782 efivars_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5b542ee0 scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x5bf60a5d da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x5c147e61 crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x5c1830af ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x5c40588d pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0x5c4d41a6 pinctrl_pm_select_idle_state +EXPORT_SYMBOL_GPL vmlinux 0x5c546c96 blkcipher_walk_virt_block +EXPORT_SYMBOL_GPL vmlinux 0x5c54f307 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0x5c66e90c efivar_run_worker +EXPORT_SYMBOL_GPL vmlinux 0x5c679c60 device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x5c917a57 get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0x5ca03ab0 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x5ca93699 tracepoint_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x5cabdced dev_pm_qos_remove_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5cbc9e12 usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x5cd907e5 tps65912_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x5cf81d10 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x5cf8a882 __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x5cfcfcf7 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x5d12e48f input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0x5d171968 acpi_dma_request_slave_chan_by_name +EXPORT_SYMBOL_GPL vmlinux 0x5d2d6e1a regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x5d366dec gnttab_cancel_free_callback +EXPORT_SYMBOL_GPL vmlinux 0x5d48a650 m2p_find_override_pfn +EXPORT_SYMBOL_GPL vmlinux 0x5d57d317 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0x5d66d8c9 hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0x5d77952d hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x5d8178a6 irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x5d9649af cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0x5dbcfa4f boot_cpu_physical_apicid +EXPORT_SYMBOL_GPL vmlinux 0x5ddd31cb iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x5deed911 ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0x5df40089 pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0x5e144330 put_device +EXPORT_SYMBOL_GPL vmlinux 0x5e296203 da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x5e3d94c0 usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x5e4a4e21 regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e75e852 usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x5e91873d xen_swiotlb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x5ec18830 usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0x5ec35734 __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x5ec39825 ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0x5ed60e3d regmap_field_write +EXPORT_SYMBOL_GPL vmlinux 0x5eede844 vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x5efbf9dc xenbus_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x5f248f72 set_timer_slack +EXPORT_SYMBOL_GPL vmlinux 0x5f2da8c4 check_tsc_unstable +EXPORT_SYMBOL_GPL vmlinux 0x5f419491 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x5f4ea841 crypto_ablkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x5f6e743a inet_csk_reqsk_queue_prune +EXPORT_SYMBOL_GPL vmlinux 0x5f79a98b __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x5f8aafe4 power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0x5f8e6369 pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x5f922d70 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0x5f9383c2 spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x5fa68d61 ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0x5fc27be9 acpi_dev_irq_flags +EXPORT_SYMBOL_GPL vmlinux 0x5fdc5f57 usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0x5fdfa2c1 amd_pmu_enable_virt +EXPORT_SYMBOL_GPL vmlinux 0x6002d9da hypervisor_kobj +EXPORT_SYMBOL_GPL vmlinux 0x60506751 unmap_kernel_range_noflush +EXPORT_SYMBOL_GPL vmlinux 0x6057c295 regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x60930d37 save_mc_for_early +EXPORT_SYMBOL_GPL vmlinux 0x6094685f wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0x6098a47b wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a4b8ad eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0x60b42876 posix_timers_register_clock +EXPORT_SYMBOL_GPL vmlinux 0x60c95350 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0x60c95b35 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0x60cd73ed pv_apic_ops +EXPORT_SYMBOL_GPL vmlinux 0x61323a92 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0x613fd25d cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x614ddd8f key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0x6157fa6a pci_intx +EXPORT_SYMBOL_GPL vmlinux 0x6183ff15 sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x6194ffea do_machine_check +EXPORT_SYMBOL_GPL vmlinux 0x61aac707 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0x61c0b80b pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x620f77d3 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x6212b05b cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0x6213a4d7 devm_acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x621f91f5 nf_unregister_afinfo +EXPORT_SYMBOL_GPL vmlinux 0x6223d719 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0x6225de9a kill_pid_info_as_cred +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x622d8da5 sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x622dacba tick_nohz_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x623803c8 hest_disable +EXPORT_SYMBOL_GPL vmlinux 0x6241f00a efivar_entry_size +EXPORT_SYMBOL_GPL vmlinux 0x625532d7 serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0x626be389 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x6275f968 replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0x6286d9da gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x629c6b81 ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x62a70073 page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x62bf6975 sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0x62d60c52 rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0x632009b5 acpi_dev_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x63205de1 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x632ac27c ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x632e5e7f securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x632f2f07 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0x6342ab7b relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0x634aed6f rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x634cade1 print_context_stack_bp +EXPORT_SYMBOL_GPL vmlinux 0x635ec980 apei_exec_post_unmap_gars +EXPORT_SYMBOL_GPL vmlinux 0x6363e54c md_new_event +EXPORT_SYMBOL_GPL vmlinux 0x638fe045 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x63b4a055 pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0x63bf7b77 debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0x63d5f68c da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x63e6f828 inet_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x6420328f platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0x64214616 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0x6427a872 raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0x64499fea __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0x646461cd br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0x6479558e tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0x647ab29f agp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x649d457b acpi_match_device +EXPORT_SYMBOL_GPL vmlinux 0x64a2f532 pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x64b7069e apei_mce_report_mem_error +EXPORT_SYMBOL_GPL vmlinux 0x6527a231 dbgp_external_startup +EXPORT_SYMBOL_GPL vmlinux 0x652c0395 vtime_guest_enter +EXPORT_SYMBOL_GPL vmlinux 0x654ee362 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x658c8186 amd_get_nb_id +EXPORT_SYMBOL_GPL vmlinux 0x659910d4 sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0x659f13b2 hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x65a97d07 crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0x65bbbc78 schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65e8a7aa pm_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0x65ff2579 get_matching_microcode +EXPORT_SYMBOL_GPL vmlinux 0x66069728 tasklet_hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x661ecfeb pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0x662089dc scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x662a0c3f x509_get_sig_params +EXPORT_SYMBOL_GPL vmlinux 0x66382260 regulator_can_change_voltage +EXPORT_SYMBOL_GPL vmlinux 0x663c16d6 gnttab_grant_foreign_access_subpage_ref +EXPORT_SYMBOL_GPL vmlinux 0x6655e749 iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0x666fd7da blkcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x669027e7 ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0x669e8fd2 crypto_attr_alg2 +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x66e17fc6 crypto_blkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x66f1ebb2 efivar_entry_set +EXPORT_SYMBOL_GPL vmlinux 0x66f40bdf iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x670fe44d ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x672390a0 scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x672cbb60 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0x672e68ee crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0x67337f63 device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x6739a503 balloon_set_new_target +EXPORT_SYMBOL_GPL vmlinux 0x674e13e1 public_key_destroy +EXPORT_SYMBOL_GPL vmlinux 0x679270c1 rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x67a89a71 skcipher_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x67d8f0b4 rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0x68087f72 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x68287c68 regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x683789ab task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x684735a1 trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x687934e9 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x687b3600 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0x68a3db53 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x68c820af unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0x690af9df cred_to_ucred +EXPORT_SYMBOL_GPL vmlinux 0x69219b40 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x6921aa34 compat_put_timeval +EXPORT_SYMBOL_GPL vmlinux 0x6923ce63 irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x69447467 ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0x69462bbd bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0x695cdd01 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x698a899f ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0x69cd0411 ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x69e9a2cb ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x69f08146 tcp_reno_min_cwnd +EXPORT_SYMBOL_GPL vmlinux 0x69fa6f30 __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x6a0a93a1 regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a5fb566 rcu_sched_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x6a6455ab hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x6a6cafd2 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6a867e16 bio_trim +EXPORT_SYMBOL_GPL vmlinux 0x6a8dde7f regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x6ab3b0c6 tpm_show_owned +EXPORT_SYMBOL_GPL vmlinux 0x6acad21f acpi_get_cpuid +EXPORT_SYMBOL_GPL vmlinux 0x6ad11209 pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x6ad2d082 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0x6b0aa416 init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x6b0f6be9 proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x6b29a1fa ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0x6b361b1d dm_requeue_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x6b449da4 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0x6b525112 sec_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x6b55d9b7 extcon_register_interest +EXPORT_SYMBOL_GPL vmlinux 0x6b93bf60 inet_twdr_twkill_work +EXPORT_SYMBOL_GPL vmlinux 0x6bbb9cc6 pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0x6bce00d2 crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0x6bea1804 gpio_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x6bf1b90d dmi_memdev_name +EXPORT_SYMBOL_GPL vmlinux 0x6c1251fd apei_exec_read_register +EXPORT_SYMBOL_GPL vmlinux 0x6c1b09ab gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x6c21f6ee usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x6c48a076 of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x6c49c4f2 clockevents_notify +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c555fac pci_reset_bridge_secondary_bus +EXPORT_SYMBOL_GPL vmlinux 0x6c655913 register_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6c73cbc0 rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x6c87942f acpi_dev_pm_detach +EXPORT_SYMBOL_GPL vmlinux 0x6ca03e52 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6cb21610 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x6cd21997 ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x6cd4ea62 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0x6cdab5a4 regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x6d0fd89f ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x6d1cc827 fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x6d2785b5 pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x6d28a311 acpi_subsys_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x6d2d1de8 i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d444c6e xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x6dd68ae5 pinctrl_select_state +EXPORT_SYMBOL_GPL vmlinux 0x6df675f2 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x6df8f4cd pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x6e04a077 usb_bind_phy +EXPORT_SYMBOL_GPL vmlinux 0x6e0f1714 inet_csk_compat_setsockopt +EXPORT_SYMBOL_GPL vmlinux 0x6e3028ff platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x6e5776c6 stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0x6e58ddf0 gnttab_end_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x6e7943ec iommu_group_id +EXPORT_SYMBOL_GPL vmlinux 0x6e85b00b local_touch_nmi +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6e8bf789 hrtimer_start +EXPORT_SYMBOL_GPL vmlinux 0x6e8fb649 driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x6e9fe305 xattr_getsecurity +EXPORT_SYMBOL_GPL vmlinux 0x6ea98361 ioremap_page_range +EXPORT_SYMBOL_GPL vmlinux 0x6eac0b61 blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x6ee24332 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0x6f1ee69e kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x6f2c5f66 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0x6f2cc8e7 pci_get_hp_params +EXPORT_SYMBOL_GPL vmlinux 0x6f5791b5 pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0x6f71b3e5 gpiochip_add_pingroup_range +EXPORT_SYMBOL_GPL vmlinux 0x6f81f90b devm_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x6f88ba2d subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x6f899c3a blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x6fa44574 tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x6fa9e2e5 usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x6fbf864f dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6fc9cf61 extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6fcc3e92 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0x6fcfb61d spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x6fda3cb1 ahash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0x6fe3d8cf ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x6ff10f94 ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6ffa9be0 pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x7025b58b xenbus_probe_node +EXPORT_SYMBOL_GPL vmlinux 0x7036bb0e sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0x70515a64 iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0x7057d0a7 sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0x706558f2 smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x707ff1bb ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x7083d3d7 debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0x70b169d7 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0x70bf9893 regulator_set_optimum_mode +EXPORT_SYMBOL_GPL vmlinux 0x70cbc20b kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x70cf032f usb_hcd_irq +EXPORT_SYMBOL_GPL vmlinux 0x7100eb0f thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x710a8478 extcon_update_state +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x711742ed PageHuge +EXPORT_SYMBOL_GPL vmlinux 0x711bcefc serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x712eb047 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0x7143c52b dma_buf_export_named +EXPORT_SYMBOL_GPL vmlinux 0x714713aa percpu_ida_free +EXPORT_SYMBOL_GPL vmlinux 0x714cfc5e inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x715a9685 each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71663e71 list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0x7169337d pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0x71ccb0eb ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0x71dc9998 crypto_il_tab +EXPORT_SYMBOL_GPL vmlinux 0x71e73952 find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x71f726f5 tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x7219f178 fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x722fcfeb crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x726f2f46 unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x72741f25 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x7279dceb sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x72893ca9 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x72ba8dcc xenbus_register_backend +EXPORT_SYMBOL_GPL vmlinux 0x72e8b42d bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0x73013896 xenbus_printf +EXPORT_SYMBOL_GPL vmlinux 0x730e1cec iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0x73130aff usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x7315d5f5 netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0x731dba7a xen_domain_type +EXPORT_SYMBOL_GPL vmlinux 0x732b4662 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0x732b9f9f spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x7338d649 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0x734278a4 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x7361809e ata_sas_port_async_suspend +EXPORT_SYMBOL_GPL vmlinux 0x739fbf73 led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73a633b6 usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x73afaa4a rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0x73c2554f __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0x73c63a1c pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x73c832f2 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x73d69364 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x73ec7e1b iommu_present +EXPORT_SYMBOL_GPL vmlinux 0x73fe5843 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x740a7943 __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x7410ae4c usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x741ac48e ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x7422c95e gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x743bd3ba sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x7443790a regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x74457e56 apei_resources_fini +EXPORT_SYMBOL_GPL vmlinux 0x74490184 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x7452adff user_return_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x74584459 devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x74617880 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x74628570 context_tracking +EXPORT_SYMBOL_GPL vmlinux 0x7464ea38 dev_pm_qos_add_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x74704daa filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0x7476f4f6 ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0x748d801a pcap_adc_sync +EXPORT_SYMBOL_GPL vmlinux 0x7494d0f4 skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x74954462 timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x74ab076c debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74c08941 kvm_async_pf_task_wake +EXPORT_SYMBOL_GPL vmlinux 0x74deb10c used_vectors +EXPORT_SYMBOL_GPL vmlinux 0x7508d6dd acpi_bind_one +EXPORT_SYMBOL_GPL vmlinux 0x75133f6e visitor128 +EXPORT_SYMBOL_GPL vmlinux 0x7521afb6 leave_mm +EXPORT_SYMBOL_GPL vmlinux 0x7521bfb2 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x755a87d1 sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x75768502 ata_sas_port_async_resume +EXPORT_SYMBOL_GPL vmlinux 0x7577f75e sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0x757b2cd8 sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x757b49d2 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0x758a3812 atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x758a782e blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x7592e486 xen_swiotlb_sync_single_for_device +EXPORT_SYMBOL_GPL vmlinux 0x75a1cd70 ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0x75c984ae virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0x75d04a9c usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x75e0c590 cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0x7631b888 securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x763f75e9 blk_rq_check_limits +EXPORT_SYMBOL_GPL vmlinux 0x765a3f13 devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x765dd3b3 gpiochip_add_pin_range +EXPORT_SYMBOL_GPL vmlinux 0x76631622 gov_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x767d7871 rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x76864605 hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0x76877d49 add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x76883b0c irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0x768ca76d netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0x76927f87 extcon_find_cable_index +EXPORT_SYMBOL_GPL vmlinux 0x7692831f transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x76c47bcc xenbus_dev_probe +EXPORT_SYMBOL_GPL vmlinux 0x76d07d6e gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x76e940b1 pwm_request +EXPORT_SYMBOL_GPL vmlinux 0x7712771a unbind_from_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x772b8f5d register_mce_write_callback +EXPORT_SYMBOL_GPL vmlinux 0x772fbcaf trace_buffer_unlock_commit_regs +EXPORT_SYMBOL_GPL vmlinux 0x77377dd8 crypto_givcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x773c34d1 pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0x774f18b6 crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0x7750a773 tpm_show_active +EXPORT_SYMBOL_GPL vmlinux 0x775a6ef5 kvm_read_and_reset_pf_reason +EXPORT_SYMBOL_GPL vmlinux 0x7778c84f disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0x77974ffd regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x77a135ee get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x77d5dd73 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0x77df1165 _submit_bh +EXPORT_SYMBOL_GPL vmlinux 0x780bca5a fat_scan +EXPORT_SYMBOL_GPL vmlinux 0x781f0f6e pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0x782adb74 hpet_rtc_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x78374ece pwm_config +EXPORT_SYMBOL_GPL vmlinux 0x786025a2 device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x78706039 pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0x787c882b lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x78a7d29e driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x78b6a14b css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x78bd3bc0 dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x78cf32e6 fat_detach +EXPORT_SYMBOL_GPL vmlinux 0x78e7617e ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x78ea227b acpi_bus_no_hotplug +EXPORT_SYMBOL_GPL vmlinux 0x78ecf26c vtime_common_account_irq_enter +EXPORT_SYMBOL_GPL vmlinux 0x78f13e12 pci_pri_status +EXPORT_SYMBOL_GPL vmlinux 0x78f442b9 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0x79000fbf pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0x79020f99 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x791d0cd3 tps65912_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x79321cc2 cgroup_add_cftypes +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x7962f29d sysfs_get +EXPORT_SYMBOL_GPL vmlinux 0x796c2d48 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x797b1d47 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x7991fd8d crash_vmclear_loaded_vmcss +EXPORT_SYMBOL_GPL vmlinux 0x799cc695 usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x79b10b1a device_reset +EXPORT_SYMBOL_GPL vmlinux 0x79b92e16 ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x79c1f25b debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0x79cdaedc tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x79e69460 intel_iommu_gfx_mapped +EXPORT_SYMBOL_GPL vmlinux 0x7a2e4b44 ezx_pcap_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x7a319404 clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x7a3e9b3b regmap_field_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x7a432731 ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x7a506267 inet6_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x7a649a54 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x7a7e6531 skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0x7a944007 rcu_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x7aa364dd sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0x7aa9c21b fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x7ab7f2cb platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0x7ac8e5b0 acpi_gsi_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x7acff4ee device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x7ad635ff sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0x7ae1ae8e cpufreq_frequency_table_put_attr +EXPORT_SYMBOL_GPL vmlinux 0x7ae26e3d ata_acpi_stm +EXPORT_SYMBOL_GPL vmlinux 0x7ae2fff8 crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7ae38166 sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x7b00e954 raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x7b0f1ab3 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7b1d544d edac_handler_set +EXPORT_SYMBOL_GPL vmlinux 0x7b292d19 static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0x7b294f9d tpm_write +EXPORT_SYMBOL_GPL vmlinux 0x7b49aa16 usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x7b79a3e8 tpm_register_hardware +EXPORT_SYMBOL_GPL vmlinux 0x7b90d1a9 bind_virq_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x7b9143bf usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x7bcc529f clk_register +EXPORT_SYMBOL_GPL vmlinux 0x7bcde371 crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x7bdfb43e regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7beea416 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x7bf2a519 irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x7bf7e171 clockevents_unbind +EXPORT_SYMBOL_GPL vmlinux 0x7c0b2532 ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0x7c227088 clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x7c309fa6 __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x7c346357 pkey_algo +EXPORT_SYMBOL_GPL vmlinux 0x7c4dc164 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x7c6a085f __put_net +EXPORT_SYMBOL_GPL vmlinux 0x7c9f3e69 __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0x7cac59a1 flush_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x7cc1b7fd max77693_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7cc7de1c x509_check_signature +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7cdcbde6 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cec7853 posix_timer_event +EXPORT_SYMBOL_GPL vmlinux 0x7cf150fb led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7cf500ca rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0x7d235fd1 rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x7d36e534 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7d397cc7 gpiod_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d7c86fc mmc_send_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0x7d8ea28c inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0x7d8f9e07 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0x7d954624 rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x7dab26b6 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7dc16c05 ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0x7dd0f94c xenbus_dev_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x7dfc0929 usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x7e1aae8c rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x7e2288b7 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x7e276c5e usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x7e383818 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x7e3aaa44 debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0x7e445577 pinctrl_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e69f65f flush_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0x7e80aa36 cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0x7e8b069b usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0x7ea1a2bc probe_kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x7ec49d08 tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x7f1df7e6 pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x7f284f1f swiotlb_tbl_sync_single +EXPORT_SYMBOL_GPL vmlinux 0x7f32e815 css_rightmost_descendant +EXPORT_SYMBOL_GPL vmlinux 0x7f52494c ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0x7f6646cc device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0x7f78c790 devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x7fa02cf0 transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0x7fd39339 usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0x7fe821fb usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x7ffbd617 tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x80156244 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x80428ee2 skb_gro_receive +EXPORT_SYMBOL_GPL vmlinux 0x8058871b acpi_pci_check_ejectable +EXPORT_SYMBOL_GPL vmlinux 0x806e502f btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x80966a7e rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0x80c68427 acpi_ec_add_query_handler +EXPORT_SYMBOL_GPL vmlinux 0x80cef271 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0x80d26915 rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x80d3927f __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80f3268f __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x810f2e4e clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x8140842a gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x8149ea54 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0x816c53fd usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x81bda0f3 virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0x81bffa70 tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x81c9bb09 acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x81dbd16d __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x81f3fee1 cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x821efbd2 usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x822c6add sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0x8259e277 cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x827c5998 ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0x82939ebd rcu_batches_completed_sched +EXPORT_SYMBOL_GPL vmlinux 0x829549ab platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0x82ba9376 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0x82c10535 rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x82c32540 unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82dbec19 erst_write +EXPORT_SYMBOL_GPL vmlinux 0x82e2b34b clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x82e3edb1 regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x82e986ea fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0x82ecf5f2 list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x8318eb66 clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x834616bb sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x838b13e7 ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0x83954da5 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0x83970f11 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0x83d158dd rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0x83d92895 pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x83db4740 ref_module +EXPORT_SYMBOL_GPL vmlinux 0x83e48ef6 inet_csk_compat_getsockopt +EXPORT_SYMBOL_GPL vmlinux 0x83fa33cd inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0x8420bccd cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0x8429a18d usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0x843d70ef acpi_is_root_bridge +EXPORT_SYMBOL_GPL vmlinux 0x846afc99 ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x84810dc0 blk_queue_bypass_start +EXPORT_SYMBOL_GPL vmlinux 0x8487a2b6 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x84899ff3 device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x84c8a35d perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x84c9ffc2 ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x84cc6975 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x84dc4fa3 __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0x85001a6e regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x85050965 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x85216155 ezx_pcap_read +EXPORT_SYMBOL_GPL vmlinux 0x8525ffdf __mmu_notifier_invalidate_range_start +EXPORT_SYMBOL_GPL vmlinux 0x85729b6c ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0x859619e4 ata_acpi_gtm +EXPORT_SYMBOL_GPL vmlinux 0x859aea9a xen_set_domain_pte +EXPORT_SYMBOL_GPL vmlinux 0x85b14d33 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x85c10896 rcu_batches_completed_bh +EXPORT_SYMBOL_GPL vmlinux 0x85c7f674 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x85cb2c45 xen_has_pv_devices +EXPORT_SYMBOL_GPL vmlinux 0x85d7edfd hpet_set_periodic_freq +EXPORT_SYMBOL_GPL vmlinux 0x85e9c0e2 pinctrl_utils_reserve_map +EXPORT_SYMBOL_GPL vmlinux 0x85f16c39 lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x85fa44ee __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x85fae91f vtime_guest_exit +EXPORT_SYMBOL_GPL vmlinux 0x8616019e xenbus_register_driver_common +EXPORT_SYMBOL_GPL vmlinux 0x8638188b rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x8649504a posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x864fbb3b ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x86623fd7 notify_remote_via_irq +EXPORT_SYMBOL_GPL vmlinux 0x86649661 acpi_subsys_prepare +EXPORT_SYMBOL_GPL vmlinux 0x866b9687 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x866c05e2 ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x869839f9 virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0x86a344da pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x86a51007 gnttab_end_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x86cebeb4 sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x86f8c910 pcap_set_ts_bits +EXPORT_SYMBOL_GPL vmlinux 0x87023515 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x8702e548 process_srcu +EXPORT_SYMBOL_GPL vmlinux 0x870e16b7 xen_test_irq_shared +EXPORT_SYMBOL_GPL vmlinux 0x872b7251 crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0x873fbaea edac_atomic_assert_error +EXPORT_SYMBOL_GPL vmlinux 0x8759620b crypto_alg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x875b38fd rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0x8767a78e pinctrl_find_and_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x877406fb ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0x8774eb6c pinctrl_utils_add_map_mux +EXPORT_SYMBOL_GPL vmlinux 0x878139ba srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0x8785706e set_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x8794cd19 btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x87af324c regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x87b514ec register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x87ca3c54 devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0x8810ad5e crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0x8814a502 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0x8820f700 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x883c2740 __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x884a4f68 usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0x885822cc blk_queue_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x88966d1c bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x88a4fd15 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x88aae532 ata_eh_qc_retry +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88ad33ef sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0x88ae5882 pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x88b5647c trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x88ba46cc tpm_store_cancel +EXPORT_SYMBOL_GPL vmlinux 0x88d3132d pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0x891a5a7f gnttab_max_grant_frames +EXPORT_SYMBOL_GPL vmlinux 0x89227ef2 devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x892b8a03 ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x89455c08 pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x89502f0c gnttab_subpage_grants_available +EXPORT_SYMBOL_GPL vmlinux 0x8956aeae apei_exec_ctx_init +EXPORT_SYMBOL_GPL vmlinux 0x8963bfae irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0x898d5e10 ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0x899100e9 device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89c04a9b unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x89caea5f ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x89d844ec xenbus_match +EXPORT_SYMBOL_GPL vmlinux 0x89db644b blk_queue_bypass_end +EXPORT_SYMBOL_GPL vmlinux 0x89e5fb57 __pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x89eaa5e7 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x89f00895 pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x8a2b14ba wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x8a4b8066 unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x8a4f1cfc efivar_entry_add +EXPORT_SYMBOL_GPL vmlinux 0x8a662e1b sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x8a78989f irq_from_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x8a7cb9c4 platform_thermal_package_rate_control +EXPORT_SYMBOL_GPL vmlinux 0x8a954edc platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0x8aa6b1b4 ata_acpi_gtm_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x8aaf9e0d blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ad531b7 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0x8ae6b445 pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0x8af4a943 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0x8b04668e bind_interdomain_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x8b3cc643 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x8b66f9e0 xen_platform_pci_unplug +EXPORT_SYMBOL_GPL vmlinux 0x8b6fe168 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0x8b7af6a4 edac_subsys +EXPORT_SYMBOL_GPL vmlinux 0x8b7c0c28 queue_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x8b844a90 __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x8b9200fd lookup_address +EXPORT_SYMBOL_GPL vmlinux 0x8bdd21d4 ping_proc_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8bf04c30 ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c06a108 xenbus_transaction_start +EXPORT_SYMBOL_GPL vmlinux 0x8c0b0d4a rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0x8c0bf672 sysfs_schedule_callback +EXPORT_SYMBOL_GPL vmlinux 0x8c299a69 inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x8c5fd7f8 security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x8c950006 pci_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x8ca8953d xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0x8cbf9831 pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x8cc70cd7 ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x8cd9f935 setup_APIC_eilvt +EXPORT_SYMBOL_GPL vmlinux 0x8cdfcd10 rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0x8ce43212 ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x8ce5ac09 vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0x8cea765f memalloc_socks +EXPORT_SYMBOL_GPL vmlinux 0x8d0c291c irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d2904a9 restore_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x8d36c088 look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0x8d454ed3 regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x8d86fd79 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8db63cdc blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0x8dd1b944 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0x8de73d2f sdhci_pci_o2_fujin2_pci_init +EXPORT_SYMBOL_GPL vmlinux 0x8dff6c30 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x8e398237 blkg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x8e54b33d regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x8e7007b7 lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0x8e9c7933 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x8edb5708 ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8edd5d60 ata_eh_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x8edfb574 injectm +EXPORT_SYMBOL_GPL vmlinux 0x8ee616e3 use_mm +EXPORT_SYMBOL_GPL vmlinux 0x8f0cda45 da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x8f1b0019 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0x8f2e475a rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x8f47db24 tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0x8f5ba146 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f7284de device_create +EXPORT_SYMBOL_GPL vmlinux 0x8f7a1f95 ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0x8f8a365c ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x8f902a2c gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x8fd134a5 inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x9003aa50 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0x9009602a acpi_bus_get_ejd +EXPORT_SYMBOL_GPL vmlinux 0x901a3176 ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0x901cde00 ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0x90228869 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x9024f4af __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0x9042a1ed bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0x9042b2fb __clk_register +EXPORT_SYMBOL_GPL vmlinux 0x904d667b ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x905140d4 extcon_set_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x9062c322 ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x90705b7f syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x9085d988 usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0x908869b6 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x90a1004a crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x90c66b90 irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x90dc29df aout_dump_debugregs +EXPORT_SYMBOL_GPL vmlinux 0x90de0452 platform_thermal_package_notify +EXPORT_SYMBOL_GPL vmlinux 0x90df4cc3 percpu_ida_alloc +EXPORT_SYMBOL_GPL vmlinux 0x90ead089 device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0x90f3d11d usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x90fb5fbd disk_get_part +EXPORT_SYMBOL_GPL vmlinux 0x91270614 pci_sriov_migration +EXPORT_SYMBOL_GPL vmlinux 0x91286982 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x912d4675 xen_swiotlb_unmap_sg_attrs +EXPORT_SYMBOL_GPL vmlinux 0x91332bee dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0x916c585e unregister_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0x9176eb51 pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x91786e5b ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0x91864e05 netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x918ad429 ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x919c7e61 nl_table +EXPORT_SYMBOL_GPL vmlinux 0x91a72bab mmput +EXPORT_SYMBOL_GPL vmlinux 0x91ac78b2 watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x91b841bc tcp_is_cwnd_limited +EXPORT_SYMBOL_GPL vmlinux 0x91c6e5b0 pcap_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x91d4a59a sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0x91dc3c3a kallsyms_on_each_symbol +EXPORT_SYMBOL_GPL vmlinux 0x91f79101 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0x920cc389 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x923cfb30 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x9275a93f stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0x92a42c7d efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0x92a7284b ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0x92b150ab tps65912_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92fb4006 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9312d80e evtchn_put +EXPORT_SYMBOL_GPL vmlinux 0x9324e78e acpi_dev_resource_memory +EXPORT_SYMBOL_GPL vmlinux 0x9331b8fa blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9351e9fd usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0x93abb1c6 btree_init +EXPORT_SYMBOL_GPL vmlinux 0x93bd9fe8 pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x93d1b3ea thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0x93db7e21 da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0x94134cf2 ata_scsi_simulate +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x9427f920 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x943fc708 xen_setup_shutdown_event +EXPORT_SYMBOL_GPL vmlinux 0x9454c675 acpi_kobj +EXPORT_SYMBOL_GPL vmlinux 0x949f7342 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x94a66b2f bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x94a68723 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x94ab8864 rtc_irq_register +EXPORT_SYMBOL_GPL vmlinux 0x94b177d9 usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0x94c318be apei_exec_collect_resources +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x94fc80fc __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0x9509c342 spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x9518a553 ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x953ab3cf fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0x954acf07 ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x959765d5 irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0x959825f3 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0x95b8850f tpm_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95d6bbc3 sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0x9621849f ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x964add15 xenbus_scanf +EXPORT_SYMBOL_GPL vmlinux 0x964d5c39 acpi_os_map_memory +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x968645c5 ata_do_eh +EXPORT_SYMBOL_GPL vmlinux 0x96895f78 usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0x9697b5b4 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0x96a22790 vmcore_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x96adb47f regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x96e71ae8 regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x96fb6b94 security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0x972a560e usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x9730c462 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x975a6312 wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x97ac9289 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0x97c539a4 power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x97d04773 adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x981c512f inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x98208753 ftrace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x9837b486 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x98403f48 cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x986d6db8 tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0x9874c1d8 __percpu_ida_init +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x987fc1c9 cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x98a8e770 usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x98ba71ce fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0x98ee35ef acpi_get_gpiod_by_index +EXPORT_SYMBOL_GPL vmlinux 0x98f6df23 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0x98f7a2cc __fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x9924c496 __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x9929e8d5 dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0x993e72f7 rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x9973add9 __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x99cfce4b fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0x99da2044 apei_get_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0x99e28f10 __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0x9a04eed3 spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0x9a066d26 extcon_get_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a2cfff6 ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0x9a312d52 relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0x9a89dbf7 lpddr2_jedec_min_tck +EXPORT_SYMBOL_GPL vmlinux 0x9a911e7e proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9ac4ba3d irq_find_host +EXPORT_SYMBOL_GPL vmlinux 0x9aca444b get_monotonic_boottime +EXPORT_SYMBOL_GPL vmlinux 0x9aea743d spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9aee46f4 pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x9b031b68 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x9b13ea94 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x9b2fad51 mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x9b3732fb pinctrl_dev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x9b3cff94 shash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0x9b3f67da usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0x9b43b3cf regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x9b458b75 bsg_request_fn +EXPORT_SYMBOL_GPL vmlinux 0x9b501e3d gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x9b6a7412 idle_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x9b8d9503 hv_register_vmbus_handler +EXPORT_SYMBOL_GPL vmlinux 0x9b9f3648 pcibios_scan_specific_bus +EXPORT_SYMBOL_GPL vmlinux 0x9ba2bb2b gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x9bb7dc8a blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x9bc8ab8c __netpoll_free_async +EXPORT_SYMBOL_GPL vmlinux 0x9bd72b78 apei_write +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9c02608d crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x9c2de449 memory_add_physaddr_to_nid +EXPORT_SYMBOL_GPL vmlinux 0x9c2e4b66 acpi_unregister_gsi +EXPORT_SYMBOL_GPL vmlinux 0x9c30d31a blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0x9c5a14a8 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x9c97d7d0 pci_restore_ats_state +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9d06688b register_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0x9d138533 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x9d3850e1 gnttab_alloc_grant_references +EXPORT_SYMBOL_GPL vmlinux 0x9d47fc51 ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x9d5dc7ef ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0x9d5f148c crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0x9d944706 sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x9d9e155d pv_info +EXPORT_SYMBOL_GPL vmlinux 0x9dafbff4 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0x9de68b72 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0x9dea8a22 device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0x9e16188d regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x9e1882a2 __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x9e2f1b6f sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0x9e2f1f78 kobj_completion_init +EXPORT_SYMBOL_GPL vmlinux 0x9e547a67 crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x9e8db326 ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0x9ea06d91 skb_segment +EXPORT_SYMBOL_GPL vmlinux 0x9ea9eb82 usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x9ed3143c leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9eebf519 sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0x9f005a8f device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x9f0664bf dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0x9f1d9e9d relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0x9f56639a efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x9fbcc77b fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0x9fccabfb vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fd72522 debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0xa038e761 percpu_ida_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa03b89f6 arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0xa058081a tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0xa096f9ff usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0xa0c3755b sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL vmlinux 0xa0d5b41f devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa0d8f7d4 usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0xa0f05e48 pin_is_valid +EXPORT_SYMBOL_GPL vmlinux 0xa0f9a742 pciserial_init_ports +EXPORT_SYMBOL_GPL vmlinux 0xa0faad5d pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0xa0fab9c1 rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0xa11216be xen_store_domain_type +EXPORT_SYMBOL_GPL vmlinux 0xa12d929d desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xa138a904 __scsi_get_command +EXPORT_SYMBOL_GPL vmlinux 0xa156a1f2 erst_get_record_id_end +EXPORT_SYMBOL_GPL vmlinux 0xa1702c53 sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0xa17751ad devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa1927bac usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0xa1bc9379 acpiphp_unregister_attention +EXPORT_SYMBOL_GPL vmlinux 0xa1ca99c3 xen_swiotlb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0xa1e215d4 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0xa1f79553 xen_create_contiguous_region +EXPORT_SYMBOL_GPL vmlinux 0xa21f90a9 pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa26e78a0 iommu_domain_has_cap +EXPORT_SYMBOL_GPL vmlinux 0xa2883bc5 inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0xa28db458 wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xa2b9c993 clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0xa2d7c3d0 shake_page +EXPORT_SYMBOL_GPL vmlinux 0xa2f37200 put_pid +EXPORT_SYMBOL_GPL vmlinux 0xa3098276 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0xa34c3fb8 skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0xa34df22c regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xa34f4501 tpm_show_pubek +EXPORT_SYMBOL_GPL vmlinux 0xa351bef5 xenbus_register_frontend +EXPORT_SYMBOL_GPL vmlinux 0xa353fffc xenbus_rm +EXPORT_SYMBOL_GPL vmlinux 0xa385b942 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3cc4a61 skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0xa3dcdfe0 nfq_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xa3e7c113 ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0xa4073b5b bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0xa41ca7cb devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xa452c297 hpet_mask_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa452f2a4 xen_pirq_from_irq +EXPORT_SYMBOL_GPL vmlinux 0xa4604f48 ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xa466de38 acpi_processor_ffh_cstate_enter +EXPORT_SYMBOL_GPL vmlinux 0xa469d986 wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa488f17a acpi_register_gsi +EXPORT_SYMBOL_GPL vmlinux 0xa49acd8a devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa4a34ca9 regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0xa4a54da9 regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0xa4baa9bd ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0xa4c470e5 xen_swiotlb_set_dma_mask +EXPORT_SYMBOL_GPL vmlinux 0xa4c6ac8f ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xa4d58669 math_state_restore +EXPORT_SYMBOL_GPL vmlinux 0xa4e08607 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0xa4f7f357 init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0xa500691f con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0xa5109485 input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0xa52d1e63 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0xa53574ba scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0xa535f8fa scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0xa56ca855 tracepoint_iter_stop +EXPORT_SYMBOL_GPL vmlinux 0xa5d51e7d palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0xa5ece39d regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa611b8d4 anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0xa617dd7b __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0xa61de15c kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xa625110d kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0xa62892c6 efivar_sysfs_list +EXPORT_SYMBOL_GPL vmlinux 0xa630ef44 usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0xa66438e8 erst_read +EXPORT_SYMBOL_GPL vmlinux 0xa68a0b67 spi_async +EXPORT_SYMBOL_GPL vmlinux 0xa6a0a273 max77693_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6e10638 led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa70b66ec aead_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0xa71441c5 devres_remove +EXPORT_SYMBOL_GPL vmlinux 0xa723148d key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xa724257f init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0xa75312bc call_rcu_sched +EXPORT_SYMBOL_GPL vmlinux 0xa75811d0 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xa7610457 regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xa76c9cc1 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0xa7723d05 adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0xa781d851 ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0xa78a8c7c usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0xa78f609c xen_swiotlb_map_sg_attrs +EXPORT_SYMBOL_GPL vmlinux 0xa7909aa0 efivars_register +EXPORT_SYMBOL_GPL vmlinux 0xa7a601a2 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0xa7ad9a47 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0xa7e04136 hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0xa7f5f5e4 tpm_show_pcrs +EXPORT_SYMBOL_GPL vmlinux 0xa7f92105 add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0xa801b359 efivar_entry_iter_begin +EXPORT_SYMBOL_GPL vmlinux 0xa82b82c5 da903x_write +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa85d4f14 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0xa86de7e4 rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0xa899e41f rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xa8a75f4c spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0xa8bf3858 device_del +EXPORT_SYMBOL_GPL vmlinux 0xa8c52be5 ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xa8ca109e extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xa8cd2e86 extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xa8f30748 arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xa9126bff hpet_set_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa923b272 pwm_enable +EXPORT_SYMBOL_GPL vmlinux 0xa925e478 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0xa92a7791 usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0xa92df4ad watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0xa980af16 RSA_public_key_algorithm +EXPORT_SYMBOL_GPL vmlinux 0xa9a82042 gnttab_trans_grants_available +EXPORT_SYMBOL_GPL vmlinux 0xa9a831b7 gnttab_map_refs +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9e8f673 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0xa9fc3f54 gnttab_grant_foreign_access_trans +EXPORT_SYMBOL_GPL vmlinux 0xaa019fcd regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xaa15e022 pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0xaa1e362d iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0xaa26c88a klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xaa30641d virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0xaa3e31ff inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0xaa4219eb pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0xaa474ba0 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0xaa5fae00 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0xaa6c0812 ahash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaac39ae4 usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xaacc69ec i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0xaae999b9 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0xab01acbe gnttab_request_free_callback +EXPORT_SYMBOL_GPL vmlinux 0xab0efdac bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0xab6a3a82 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xab6babaf pm_qos_request +EXPORT_SYMBOL_GPL vmlinux 0xab83c5c9 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xabeb0165 dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0xac11248a regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0xac1baba2 sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0xac1f1678 usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0xac2c4279 unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xac4e0e0d __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0xac978247 device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xac9ce195 kvm_async_pf_task_wait +EXPORT_SYMBOL_GPL vmlinux 0xac9d7c1c blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0xaca8fe9a hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xacaebe00 kobj_completion_del_and_wait +EXPORT_SYMBOL_GPL vmlinux 0xacafa8e7 vector_used_by_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xacbefead tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0xacdf0307 iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0xace5c0fc usb_bus_list +EXPORT_SYMBOL_GPL vmlinux 0xace6bc0e device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xace9e534 ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0xad039c54 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xad1d0f88 regmap_update_bits_check_async +EXPORT_SYMBOL_GPL vmlinux 0xad1df32a relay_flush +EXPORT_SYMBOL_GPL vmlinux 0xad221a0f list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0xad3164f6 swiotlb_tbl_map_single +EXPORT_SYMBOL_GPL vmlinux 0xad376749 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0xad41e50f regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0xad7d994f ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0xad846648 net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0xad8a357f usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xad8d8ab0 xen_physdev_op_compat +EXPORT_SYMBOL_GPL vmlinux 0xadc5a6e6 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0xadc785ec kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0xaddc534c tcp_done +EXPORT_SYMBOL_GPL vmlinux 0xaddf39e3 da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xadf07d1d tpm_show_caps +EXPORT_SYMBOL_GPL vmlinux 0xadf6aa4d tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xadfe9005 inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0xae304b81 crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0xae3c405a regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0xae3db6dc ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae6eaf93 hwpoison_filter_dev_minor +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae7c5411 ms_hyperv +EXPORT_SYMBOL_GPL vmlinux 0xaea70c1b xenbus_probe_devices +EXPORT_SYMBOL_GPL vmlinux 0xaeabe8ab bdi_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0xaeb5c1c4 adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xaecd57c2 pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0xaf4861d1 usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0xaf4facc2 devres_find +EXPORT_SYMBOL_GPL vmlinux 0xaf9c9314 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0xafccd985 dm_underlying_device_busy +EXPORT_SYMBOL_GPL vmlinux 0xaff81199 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0xb023a593 pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0xb02ac411 register_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb081dd3a user_describe +EXPORT_SYMBOL_GPL vmlinux 0xb0937f55 rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0c25983 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0xb0c96774 regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xb0d1656c gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0xb10d55bc cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0xb1175852 ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0xb140d14c ring_buffer_read +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb172ffac efivars_sysfs_init +EXPORT_SYMBOL_GPL vmlinux 0xb179aef0 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb191d25a arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xb191d405 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0xb1a7e3f6 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0xb1abeaf5 register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xb1acbcce rcu_barrier_sched +EXPORT_SYMBOL_GPL vmlinux 0xb1af2296 shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xb1b30ad2 led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1bedeb7 register_jprobe +EXPORT_SYMBOL_GPL vmlinux 0xb1c0c1c2 async_schedule_domain +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1fb384c ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0xb2182e82 rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb24c7239 cpufreq_notify_transition +EXPORT_SYMBOL_GPL vmlinux 0xb2711b8f sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0xb2843534 regmap_update_bits_check +EXPORT_SYMBOL_GPL vmlinux 0xb2b918ad uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0xb2d4e3df inet6_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0xb2d56a51 mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb31915a6 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0xb3253ed9 hpet_rtc_timer_init +EXPORT_SYMBOL_GPL vmlinux 0xb347bb2c work_busy +EXPORT_SYMBOL_GPL vmlinux 0xb353a48e spi_setup +EXPORT_SYMBOL_GPL vmlinux 0xb383c4e3 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xb3d24e29 crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0xb40275be wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb40a2096 ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0xb40d2ea5 pci_pri_stopped +EXPORT_SYMBOL_GPL vmlinux 0xb41f84b0 serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0xb42cf9bc pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xb42e9897 usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xb439ab6f pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xb439b8aa uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0xb43d8a13 ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0xb43e76dd ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xb4528028 xenbus_bind_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xb4578d6f hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xb460a3ac tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0xb4633b94 xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0xb4735586 sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0xb4759adc stop_machine +EXPORT_SYMBOL_GPL vmlinux 0xb4ae5fe9 user_read +EXPORT_SYMBOL_GPL vmlinux 0xb4b3fc65 tps65912_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4ccd7fa pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0xb4e14553 gnttab_query_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0xb4e2c06c vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0xb4e982a0 pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb5219ca3 devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0xb52cce89 usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xb53620d1 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0xb55bb86f tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0xb55decbe xen_swiotlb_sync_sg_for_device +EXPORT_SYMBOL_GPL vmlinux 0xb57a7c86 driver_register +EXPORT_SYMBOL_GPL vmlinux 0xb580bed8 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0xb582a4dd vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0xb5875636 acpi_unbind_one +EXPORT_SYMBOL_GPL vmlinux 0xb58dcfa2 synchronize_sched_expedited +EXPORT_SYMBOL_GPL vmlinux 0xb58f2ee6 trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0xb5991126 vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0xb5a0e11e lpddr2_jedec_addressing_table +EXPORT_SYMBOL_GPL vmlinux 0xb5abd9a8 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0xb5ad167a ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0xb5cb8145 hrtimer_get_res +EXPORT_SYMBOL_GPL vmlinux 0xb5e20c0a pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0xb5e9a279 ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xb5f17edf perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb6230f1f gnttab_grant_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb6270a91 rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0xb6452e26 device_schedule_callback_owner +EXPORT_SYMBOL_GPL vmlinux 0xb64b6ea5 ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0xb66421b2 acpi_str_to_uuid +EXPORT_SYMBOL_GPL vmlinux 0xb6709422 xenbus_map_ring +EXPORT_SYMBOL_GPL vmlinux 0xb67b2219 cm_suspend_again +EXPORT_SYMBOL_GPL vmlinux 0xb69e2560 perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0xb6a214b0 vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0xb6aeb661 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xb6c635af wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb6cb456a pinctrl_pm_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0xb709e339 efivar_validate +EXPORT_SYMBOL_GPL vmlinux 0xb70ba8ff cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0xb718f2f9 sfi_table_parse +EXPORT_SYMBOL_GPL vmlinux 0xb724c9ed rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xb7329678 crypto_tfm_in_queue +EXPORT_SYMBOL_GPL vmlinux 0xb75ddc77 pinctrl_dev_get_name +EXPORT_SYMBOL_GPL vmlinux 0xb765de6a locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0xb7891f6b sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xb79651f8 usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0xb7d7c12e hpet_set_alarm_time +EXPORT_SYMBOL_GPL vmlinux 0xb7ebc0d2 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xb7f77027 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0xb82d18de xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0xb84287ba spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0xb873151b device_create_vargs +EXPORT_SYMBOL_GPL vmlinux 0xb8844f82 regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xb8851735 __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0xb88bfbf5 dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xb88d81f0 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xb89007e0 tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0xb8ae6675 ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0xb8b2b1f7 mce_register_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0xb8b649e5 ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0xb8f08d3a tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0xb900cbdb usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0xb903674c scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0xb91d254e tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0xb932f7b1 spi_master_suspend +EXPORT_SYMBOL_GPL vmlinux 0xb93bd0d1 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0xb99d5837 xenbus_read +EXPORT_SYMBOL_GPL vmlinux 0xb9b0682c dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xb9b61e4e console_drivers +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9bc7286 dma_buf_kunmap +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9d7da8c pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xba1a3fbb regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0xba204980 __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xba28d6a8 ping_seq_fops +EXPORT_SYMBOL_GPL vmlinux 0xba43621e devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xba4c609c __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0xba526400 iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0xba6687e2 sdhci_pci_o2_probe_slot +EXPORT_SYMBOL_GPL vmlinux 0xba6f9279 rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0xba709cab dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xba92f9ff regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0xbaa41d1e ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0xbac2212b mddev_init +EXPORT_SYMBOL_GPL vmlinux 0xbb038ce4 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xbb0a7c21 adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb128381 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0xbb17ee8b gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0xbb21ec2c tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0xbb47ff11 md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0xbb5fcf7f udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xbbaee69c class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xbbb38239 btree_last +EXPORT_SYMBOL_GPL vmlinux 0xbbb98859 edid_info +EXPORT_SYMBOL_GPL vmlinux 0xbbcab80d cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xbbcd0e52 tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0xbbd4f657 xen_pcpu_id +EXPORT_SYMBOL_GPL vmlinux 0xbc02ae38 register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xbc03af76 debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0xbc18bfac mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0xbc2a1924 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xbc36362d i2c_unlock_adapter +EXPORT_SYMBOL_GPL vmlinux 0xbc3da600 rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xbc403af5 screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0xbc427ffc virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0xbc47fd49 __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0xbc4bb705 sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0xbc78128c ablkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xbc7e1f73 debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0xbc944c58 tpm_read +EXPORT_SYMBOL_GPL vmlinux 0xbc94def9 __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0xbcac6160 pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbcb1fd2d ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xbcb838a1 amd_flush_garts +EXPORT_SYMBOL_GPL vmlinux 0xbcb9b9e6 devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbcd518ea platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbce61304 pwm_can_sleep +EXPORT_SYMBOL_GPL vmlinux 0xbcf6b7d9 rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xbd109fff ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xbd22e2a1 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0xbd2b5279 i2c_new_probed_device +EXPORT_SYMBOL_GPL vmlinux 0xbd340cc9 sysfs_get_dirent_ns +EXPORT_SYMBOL_GPL vmlinux 0xbd506a46 unregister_hotplug_dock_device +EXPORT_SYMBOL_GPL vmlinux 0xbd5cb8b9 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0xbd73901d input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0xbd8e068d gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0xbd9bbeeb pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0xbd9f89e7 ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0xbda5d086 disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xbdaf5686 get_compat_timeval +EXPORT_SYMBOL_GPL vmlinux 0xbdb14a59 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0xbdbc87eb shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xbdd295f0 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xbdd2f42a rcu_bh_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0xbdd5f10f apei_hest_parse +EXPORT_SYMBOL_GPL vmlinux 0xbddb0f95 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0xbddea1b7 lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0xbe17face ata_sff_data_xfer_noirq +EXPORT_SYMBOL_GPL vmlinux 0xbe1887e4 ata_unpack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xbe42b07c regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0xbe5d0996 idle_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbe7aa093 md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0xbe7e7783 bus_register +EXPORT_SYMBOL_GPL vmlinux 0xbe7f0616 dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbeb6eaa1 usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0xbed20d9a __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0xbed76060 task_current_syscall +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf12faba virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0xbf1f2aee spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0xbf2dec04 rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xbf6d5898 pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0xbf82e6af synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL vmlinux 0xbfc42e32 wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xbfd244ce ping_hash +EXPORT_SYMBOL_GPL vmlinux 0xbfd5e4e8 ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0xbfdf5a07 virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0xbff81595 __get_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xc002e13c ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0xc08647ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc08cefd8 device_store_int +EXPORT_SYMBOL_GPL vmlinux 0xc0900fcf acpi_os_get_iomem +EXPORT_SYMBOL_GPL vmlinux 0xc0980869 pwm_disable +EXPORT_SYMBOL_GPL vmlinux 0xc09b6067 platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0xc0af82fc unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xc0b0e6ec btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0xc0bf6ead timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xc0d01bc0 percpu_ref_cancel_init +EXPORT_SYMBOL_GPL vmlinux 0xc0d26387 kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc0fdd294 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0xc1066796 ping_err +EXPORT_SYMBOL_GPL vmlinux 0xc10da3f4 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0xc10ddd21 pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xc113e4bf pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc11b45c6 gpiod_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xc11bd00f tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc14c2824 xenbus_probe +EXPORT_SYMBOL_GPL vmlinux 0xc16198ce crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0xc164642e xenbus_otherend_changed +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc17ad012 __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xc1a6df88 ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0xc1dc0d5d acpi_find_child +EXPORT_SYMBOL_GPL vmlinux 0xc1e09f77 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0xc1e4010d crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0xc1f81642 devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc25af782 elv_register +EXPORT_SYMBOL_GPL vmlinux 0xc26351f8 bind_evtchn_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc28efe22 aead_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0xc2c63333 regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xc2e41361 stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0xc2f6e36b usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0xc3298170 irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc34efe27 snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0xc35acbdd trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0xc37226a5 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xc37763fc dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xc381e127 usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0xc3a3de97 max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0xc3b398a1 led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0xc3b564a6 fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0xc3b617db map_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xc3d67a37 skcipher_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0xc3d93b2f crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0xc3ea47b1 wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0xc3eaf534 dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc447dd93 enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc495a4e7 pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0xc4975851 percpu_ida_free_tags +EXPORT_SYMBOL_GPL vmlinux 0xc49a6ef6 ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0xc4a95f0a regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xc5099ca0 ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0xc512626a __supported_pte_mask +EXPORT_SYMBOL_GPL vmlinux 0xc5221dec acpi_dev_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xc534877c vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0xc5397da6 xenbus_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc57a2826 input_class +EXPORT_SYMBOL_GPL vmlinux 0xc57ae91a user_instantiate +EXPORT_SYMBOL_GPL vmlinux 0xc5de3818 blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xc5e81b75 pinctrl_dev_get_devname +EXPORT_SYMBOL_GPL vmlinux 0xc5f24337 __inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0xc6002fa0 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xc60f75ec __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc6225188 ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xc63a1109 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc65d3eed ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc667061f pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc690866c irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc6c80684 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xc6d7ad42 wakeup_source_drop +EXPORT_SYMBOL_GPL vmlinux 0xc6e25e99 tracepoint_iter_start +EXPORT_SYMBOL_GPL vmlinux 0xc6fb2b53 alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xc7002ac4 evtchn_make_refcounted +EXPORT_SYMBOL_GPL vmlinux 0xc71aead9 rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0xc727e3dc crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0xc72e1233 __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xc742bebf pci_enable_pri +EXPORT_SYMBOL_GPL vmlinux 0xc7a0fcf5 __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7c397cf driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0xc7c6391c mpi_set_buffer +EXPORT_SYMBOL_GPL vmlinux 0xc7d04ca0 rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0xc7da9622 fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc7e39bca ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc7fd0e23 wm8350_device_exit +EXPORT_SYMBOL_GPL vmlinux 0xc80f0f08 blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc8416e1d ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0xc8480287 efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0xc856ad09 pci_renumber_slot +EXPORT_SYMBOL_GPL vmlinux 0xc85ad4a5 __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xc87c1f84 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xc87e487a sched_clock_idle_sleep_event +EXPORT_SYMBOL_GPL vmlinux 0xc893dd4e init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0xc899c0f2 wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0xc8add232 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0xc8b2469b class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc8cf7a8c usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xc8decb57 seq_release_net +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc91b99a5 pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xc930d5a7 usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0xc934b33a xenbus_free_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xc93f5527 usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc9641b48 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0xc965ffdd blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0xc966aa9c transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0xc96e0cb2 tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0xc97d1140 cpufreq_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0xc9889a58 da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xc9a35249 sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0xc9c3f176 hpet_register_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xc9c77286 devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xc9ee655d anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0xca181f73 tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0xca4e2b5c __pci_complete_power_transition +EXPORT_SYMBOL_GPL vmlinux 0xca67266a watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0xca7c9309 cgroup_taskset_first +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca81ea9a xenbus_transaction_end +EXPORT_SYMBOL_GPL vmlinux 0xca85d8cf tracepoint_probe_update_all +EXPORT_SYMBOL_GPL vmlinux 0xca9ee946 sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcad23ba5 pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0xcae2627f adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xcaf3545d __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0xcb09de12 bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb1ab850 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0xcb31eb4f __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xcb469d2b ddebug_add_module +EXPORT_SYMBOL_GPL vmlinux 0xcb8e75c6 skcipher_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0xcb95485f regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0xcb9b162e clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0xcbd4f3ab eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0xcbdcfc40 usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0xcbee20b2 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0xcc1f1c3d inet_twdr_hangman +EXPORT_SYMBOL_GPL vmlinux 0xcc2eda83 get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0xcc2fd54a devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xcc46dc8d wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0xcc6ab305 is_dock_device +EXPORT_SYMBOL_GPL vmlinux 0xcc85fcb6 async_schedule +EXPORT_SYMBOL_GPL vmlinux 0xcc940481 ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0xcc9a1a24 sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0xcca5971e verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xcca9a9c5 regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccea4e34 perf_get_x86_pmu_capability +EXPORT_SYMBOL_GPL vmlinux 0xcd210722 acpi_dma_request_slave_chan_by_index +EXPORT_SYMBOL_GPL vmlinux 0xcd25fcf9 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xcd7bb4bd devres_get +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcdb95c5b i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcdcc8b14 devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xce0b9b59 max77693_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xce175c14 blk_unprep_request +EXPORT_SYMBOL_GPL vmlinux 0xce2e04da regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xce46e140 ktime_get_ts +EXPORT_SYMBOL_GPL vmlinux 0xce4db7bf rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xce6a9d9a trace_current_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce6e58d9 regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0xce97d129 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0xce9afcd0 regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xce9b9407 power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0xceb1f126 mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0xcec48f42 wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcecdc56b spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcee35dd9 shash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0xceea4335 tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0xcef1dd0e perf_check_microcode +EXPORT_SYMBOL_GPL vmlinux 0xcf125ece sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0xcf136c4e register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0xcf14c4c1 i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xcf1f005e pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xcf396376 usb_string +EXPORT_SYMBOL_GPL vmlinux 0xcf44eca1 smp_ops +EXPORT_SYMBOL_GPL vmlinux 0xcf49fa60 class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf60f316 dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0xcf6ec6f6 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0xcfa39eca __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0xcfc01760 platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0xcfc62f27 xen_start_info +EXPORT_SYMBOL_GPL vmlinux 0xcfc68341 synchronize_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0xcfc900f3 xenbus_dev_error +EXPORT_SYMBOL_GPL vmlinux 0xcfd0384e dm_get_rq_mapinfo +EXPORT_SYMBOL_GPL vmlinux 0xcfde5862 __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xcfea6e81 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0xcff787b8 sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL vmlinux 0xd00764ad regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xd01a2520 max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xd02b0cee pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xd03c7700 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0xd0458ccb xenbus_strstate +EXPORT_SYMBOL_GPL vmlinux 0xd046bc7c ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd06ab922 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0xd07c5363 __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0xd090d920 regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0e8bd57 crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0xd0f8c248 pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xd113e442 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xd114464c usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0xd14a7b31 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0xd14bc4d9 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xd1507e59 erst_clear +EXPORT_SYMBOL_GPL vmlinux 0xd16712f3 crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xd17767d5 gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xd1795cba sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0xd17c95ec usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0xd1895996 cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xd18cf920 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xd1958cc9 pinctrl_utils_add_config +EXPORT_SYMBOL_GPL vmlinux 0xd1b0cdf8 ata_acpi_cbl_80wire +EXPORT_SYMBOL_GPL vmlinux 0xd1b184a8 __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0xd1b2db37 tracepoint_probe_register_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xd1cc464c crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0xd1eb955d regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0xd20ae1db dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd20e72d8 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd21ce1eb usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xd24314da cgroup_unload_subsys +EXPORT_SYMBOL_GPL vmlinux 0xd258217d clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd291f7f6 kick_process +EXPORT_SYMBOL_GPL vmlinux 0xd2a3c989 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd2a68a79 driver_attach +EXPORT_SYMBOL_GPL vmlinux 0xd2afe2b2 __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xd2c58ab2 apei_exec_noop +EXPORT_SYMBOL_GPL vmlinux 0xd2cf4956 crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0xd2f59e2f tty_prepare_flip_string_flags +EXPORT_SYMBOL_GPL vmlinux 0xd32fe193 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xd39434d1 pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0xd3b86b07 reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xd3d168ed sysfs_notify_dirent +EXPORT_SYMBOL_GPL vmlinux 0xd3f569e0 of_reset_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd426dbc4 erst_get_record_count +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd46314f3 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0xd4702ecc vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0xd471552f crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0xd49bf2e7 netlink_alloc_skb +EXPORT_SYMBOL_GPL vmlinux 0xd4a89396 inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0xd4a94b77 x86_hyper_kvm +EXPORT_SYMBOL_GPL vmlinux 0xd4ab03ba crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0xd4bf412d usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4c74d79 xenbus_dev_is_online +EXPORT_SYMBOL_GPL vmlinux 0xd4cad45e clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xd4d6ac38 acpi_processor_get_performance_info +EXPORT_SYMBOL_GPL vmlinux 0xd4d7370c hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0xd51be443 usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0xd545ab91 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd5674d82 cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd5721822 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xd58543db usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0xd5a3f9cc show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0xd5bd7dac ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0xd5c182be usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0xd5c36c40 __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0xd5cd4ec3 tpm_show_timeouts +EXPORT_SYMBOL_GPL vmlinux 0xd5e5a0d6 fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0xd6011bf5 srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0xd62d3839 call_filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0xd66a8f98 pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0xd66ddbb7 __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd675438b find_module +EXPORT_SYMBOL_GPL vmlinux 0xd67a481d crypto_init_ahash_spawn +EXPORT_SYMBOL_GPL vmlinux 0xd6934469 fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0xd698a5c1 shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0xd6b1937d ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xd6b217b5 sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0xd6ed3a8e cper_next_record_id +EXPORT_SYMBOL_GPL vmlinux 0xd6feefa5 agp_num_entries +EXPORT_SYMBOL_GPL vmlinux 0xd705b4c7 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0xd70770d9 xen_swiotlb_dma_mapping_error +EXPORT_SYMBOL_GPL vmlinux 0xd72feba2 xenbus_read_driver_state +EXPORT_SYMBOL_GPL vmlinux 0xd7399d2a efivar_entry_iter_end +EXPORT_SYMBOL_GPL vmlinux 0xd74b4dac rtc_set_mmss +EXPORT_SYMBOL_GPL vmlinux 0xd74db09e __mmu_notifier_invalidate_range_end +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd77c0bc8 klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xd77c48c1 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0xd7930901 md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0xd7a532de tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0xd7a84b2e regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xd7b7320a mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0xd7bd463f __class_create +EXPORT_SYMBOL_GPL vmlinux 0xd7d79132 put_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0xd7fad9d8 rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0xd80b3f32 user_update +EXPORT_SYMBOL_GPL vmlinux 0xd80ce92e crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0xd81de62c ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xd820c283 eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xd827333e ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0xd8296088 __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0xd82b1609 rtc_irq_set_freq +EXPORT_SYMBOL_GPL vmlinux 0xd840001c tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0xd8522c4c __class_register +EXPORT_SYMBOL_GPL vmlinux 0xd8525ea7 fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0xd85af6ae blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0xd86a62a9 shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0xd8726841 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0xd87601cc ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd8901608 xenbus_watch_pathfmt +EXPORT_SYMBOL_GPL vmlinux 0xd894f022 crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0xd8f04310 __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xd8f9fdb8 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0xd919806a amd_cache_northbridges +EXPORT_SYMBOL_GPL vmlinux 0xd91dcec5 register_hotplug_dock_device +EXPORT_SYMBOL_GPL vmlinux 0xd930e94a i2c_new_dummy +EXPORT_SYMBOL_GPL vmlinux 0xd939a340 tpm_remove_hardware +EXPORT_SYMBOL_GPL vmlinux 0xd942d353 ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0xd947734f reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd96a2de6 __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xd96e548b ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0xd98026ae tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0xd9983617 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0xd9a34035 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0xd9e989a2 iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0xd9ecb670 ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xd9ffe0d3 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0xda0dfbcc xenbus_unmap_ring_vfree +EXPORT_SYMBOL_GPL vmlinux 0xda122c63 pci_configure_slot +EXPORT_SYMBOL_GPL vmlinux 0xda1814a2 xenbus_grant_ring +EXPORT_SYMBOL_GPL vmlinux 0xda1a31ec rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xda2b98a5 iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xda44cb37 setup_charger_manager +EXPORT_SYMBOL_GPL vmlinux 0xda7b81b7 xenbus_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xda9714ca ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0xdaa4eca4 blkg_stat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0xdab50ae7 fpu_finit +EXPORT_SYMBOL_GPL vmlinux 0xdae66561 simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdb04cacc tracepoint_probe_unregister_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xdb0fdd2c iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0xdb1b673a crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0xdb3be415 device_register +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdb928abd usb_acpi_power_manageable +EXPORT_SYMBOL_GPL vmlinux 0xdba29447 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0xdbb2349d platform_bus +EXPORT_SYMBOL_GPL vmlinux 0xdbd4cfb3 crypto_lookup_aead +EXPORT_SYMBOL_GPL vmlinux 0xdbdab16d rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdbdec36f ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc14a211 xen_hvm_evtchn_do_upcall +EXPORT_SYMBOL_GPL vmlinux 0xdc1e15f1 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xdc2b2322 led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc421422 ata_eh_thaw_port +EXPORT_SYMBOL_GPL vmlinux 0xdc6699cb acpi_dev_free_resource_list +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdce542c5 alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0xdcf4d730 blkg_prfill_stat +EXPORT_SYMBOL_GPL vmlinux 0xdd0817e7 ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0xdd2efc0f ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0xdd310204 get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd4d0661 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0xdd6618ba btree_remove +EXPORT_SYMBOL_GPL vmlinux 0xdd794d33 phys_wc_to_mtrr_index +EXPORT_SYMBOL_GPL vmlinux 0xdd7f4aed acpi_preset_companion +EXPORT_SYMBOL_GPL vmlinux 0xdd96f283 dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xdd9de65c pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0xdda83692 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0xdda927f8 regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0xddd53be2 dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0xddd58dc0 ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0xde01fcc0 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0xde28aa2e relay_close +EXPORT_SYMBOL_GPL vmlinux 0xde2b4d04 crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0xde38ad34 ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0xde46c90a scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xde4e19ba klist_next +EXPORT_SYMBOL_GPL vmlinux 0xdec98410 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0xded9e875 pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0xdee6e4d3 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0xdef8f55e regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xdef9116b ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0xdf00deaf regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0xdf0162b0 tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf1882af dbgp_reset_prep +EXPORT_SYMBOL_GPL vmlinux 0xdf221e72 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0xdf66ca81 ucode_cpu_info +EXPORT_SYMBOL_GPL vmlinux 0xdf86e94a regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0xdfd35b86 xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0xdfdf9c10 __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0xe007de41 kallsyms_lookup_name +EXPORT_SYMBOL_GPL vmlinux 0xe02eb6d0 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0xe03ebf6d iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0xe050fa68 pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe089cfcc agp_memory_reserved +EXPORT_SYMBOL_GPL vmlinux 0xe0a5cf9c fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0xe0aed089 ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0xe0c77bb5 mce_notify_irq +EXPORT_SYMBOL_GPL vmlinux 0xe0d5f921 bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe0db1b23 crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xe10cd6ad erst_get_record_id_begin +EXPORT_SYMBOL_GPL vmlinux 0xe11c4ccc __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0xe155710a acpi_dev_pm_attach +EXPORT_SYMBOL_GPL vmlinux 0xe16b0d30 unregister_jprobe +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe1a0ea9a regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0xe1a95a5e fuse_put_request +EXPORT_SYMBOL_GPL vmlinux 0xe1b0cfc1 inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xe1b72e47 usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1c32794 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xe1cc2b05 ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0xe1cf1c5b blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0xe1d745d0 dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0xe208a944 transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0xe21df183 netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0xe234e507 pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0xe250782a dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0xe257ff43 xenbus_watch_path +EXPORT_SYMBOL_GPL vmlinux 0xe26087a1 irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0xe267ea49 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xe26e46f0 acpi_dev_resource_ext_address_space +EXPORT_SYMBOL_GPL vmlinux 0xe270aab5 cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0xe2784b0e crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0xe295c0ff is_hpet_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe2e7840d regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe30d3e34 posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0xe30ebdfe sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0xe328f4c8 wm8400_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xe36cc77b devm_spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0xe36f2898 device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0xe3812ca7 lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0xe3818c71 init_fpu +EXPORT_SYMBOL_GPL vmlinux 0xe384a102 usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0xe3985a22 skcipher_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0xe3ade9a1 tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xe3b637fb invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0xe3bc7fd4 hpet_unregister_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xe3ca0c52 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xe40b4268 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0xe41534ce bind_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0xe42e4ce0 pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe436c676 da903x_update +EXPORT_SYMBOL_GPL vmlinux 0xe4423323 device_find_child +EXPORT_SYMBOL_GPL vmlinux 0xe4592984 ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xe48438d5 ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0xe4c4b28f gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xe4e68bc8 apei_map_generic_address +EXPORT_SYMBOL_GPL vmlinux 0xe50f7ede xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0xe51ad0a0 xenbus_dev_cancel +EXPORT_SYMBOL_GPL vmlinux 0xe52ae762 __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xe569142f crypto_alloc_instance2 +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58fb452 aer_irq +EXPORT_SYMBOL_GPL vmlinux 0xe597f419 extcon_get_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0xe5bc665b ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0xe5c012eb cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0xe5d74d8a ata_sg_init +EXPORT_SYMBOL_GPL vmlinux 0xe623f45f __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0xe630edbc debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0xe63b46e4 fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0xe64ad8ea unregister_nmi_handler +EXPORT_SYMBOL_GPL vmlinux 0xe651f76e selinux_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe6602e9f perf_trace_buf_prepare +EXPORT_SYMBOL_GPL vmlinux 0xe6662a3b mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xe66d5ef5 tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0xe69d59c4 blk_queue_flush_queueable +EXPORT_SYMBOL_GPL vmlinux 0xe6c68334 ddebug_remove_module +EXPORT_SYMBOL_GPL vmlinux 0xe6c8b53f usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0xe6e1c5fe uuid_be_gen +EXPORT_SYMBOL_GPL vmlinux 0xe701e67a sk_unattached_filter_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe7232e0f user_return_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe75d6006 power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe774709f regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xe78322d9 __pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0xe7ad7894 rtc_irq_set_state +EXPORT_SYMBOL_GPL vmlinux 0xe7d299eb platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xe7d72762 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0xe7db2e47 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0xe7f3608a hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe8107a50 irq_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe8335bd1 usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL vmlinux 0xe84fe780 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe87a0ae2 ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0xe87d8507 skb_gso_transport_seglen +EXPORT_SYMBOL_GPL vmlinux 0xe8808b4c __netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0xe89bd243 ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe8a4983e task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0xe8b6419a dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0xe8e67798 modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xe8f8f0a4 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe932fef3 bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe9429e42 crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0xe9500b6c xen_swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0xe96a4585 pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xe96b5711 inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xe96df9a9 efivars_kobject +EXPORT_SYMBOL_GPL vmlinux 0xe9845065 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0xe98670a4 devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0xe9ac82da devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0xe9c59790 led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0xe9ce931a kvm_para_available +EXPORT_SYMBOL_GPL vmlinux 0xe9d1b7cf irq_to_pcap +EXPORT_SYMBOL_GPL vmlinux 0xe9dcf7f3 clk_register_divider +EXPORT_SYMBOL_GPL vmlinux 0xe9de842c bmp085_probe +EXPORT_SYMBOL_GPL vmlinux 0xe9ec04f6 uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0xe9f9d399 class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea1584c1 sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xea1f1352 cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0xea418e0f atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0xea4fc763 add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0xea628c20 bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0xea7b95a7 acpi_subsys_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xea987f82 pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0xeabd075d i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xeac1dbd3 generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0xead0ff70 pinctrl_utils_add_map_configs +EXPORT_SYMBOL_GPL vmlinux 0xeadf816e klist_init +EXPORT_SYMBOL_GPL vmlinux 0xeaf4b0e1 get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0xeb1a422f xenbus_dev_remove +EXPORT_SYMBOL_GPL vmlinux 0xeb1c3628 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xeb24367c crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xeb2798f7 xen_destroy_contiguous_region +EXPORT_SYMBOL_GPL vmlinux 0xeb284eec md_run +EXPORT_SYMBOL_GPL vmlinux 0xeb289f84 wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0xeb370805 __apei_exec_run +EXPORT_SYMBOL_GPL vmlinux 0xeb7a5567 crypto_nivaead_type +EXPORT_SYMBOL_GPL vmlinux 0xeb833c22 xen_has_pv_disk_devices +EXPORT_SYMBOL_GPL vmlinux 0xeba745e1 irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0xebc4adb4 crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0xebd964e5 regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xebec57c4 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xebf7aa91 devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0xec1b043e regulator_suspend_prepare +EXPORT_SYMBOL_GPL vmlinux 0xec25f967 klist_del +EXPORT_SYMBOL_GPL vmlinux 0xec36e28b crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0xec3e7ce8 __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0xec40f991 usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0xec631f34 remove_memory +EXPORT_SYMBOL_GPL vmlinux 0xec785f15 alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0xec7da4a0 xenbus_dev_fatal +EXPORT_SYMBOL_GPL vmlinux 0xeca38c7b __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xecad38f8 transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0xecbc8bff dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0xed028335 do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xed14c4f6 pci_bus_sem +EXPORT_SYMBOL_GPL vmlinux 0xed297597 kobj_completion_release +EXPORT_SYMBOL_GPL vmlinux 0xed7be35a ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0xedb4a8bf input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0xedbc6f67 gnttab_end_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0xedbd2395 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0xedd49930 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xeddb28f0 rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0xedef1e89 dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0xedf52613 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0xee13e697 set_personality_ia32 +EXPORT_SYMBOL_GPL vmlinux 0xee1b1405 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0xee33cba8 xenbus_frontend_closed +EXPORT_SYMBOL_GPL vmlinux 0xee39f802 virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0xee5b00b3 inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee84f23e pinctrl_force_default +EXPORT_SYMBOL_GPL vmlinux 0xeec8c379 rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0xeef554fa crypto_register_pcomp +EXPORT_SYMBOL_GPL vmlinux 0xef013a37 tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0xef1e2c1d dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xef1f6e23 apei_resources_request +EXPORT_SYMBOL_GPL vmlinux 0xef54eaab pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef782b88 gnttab_grant_foreign_access_subpage +EXPORT_SYMBOL_GPL vmlinux 0xef8c7850 pcap_adc_async +EXPORT_SYMBOL_GPL vmlinux 0xefa54a9d atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xefafac58 fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0xefc15561 cpufreq_governor_dbs +EXPORT_SYMBOL_GPL vmlinux 0xefdb7fbe mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0xeffa6b8f __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0xf024075e devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xf04e5914 sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xf066776d pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0xf0696401 acpi_pci_detect_ejectable +EXPORT_SYMBOL_GPL vmlinux 0xf09eb1b4 aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf0d96470 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0xf0d9e28f blkdev_aio_write +EXPORT_SYMBOL_GPL vmlinux 0xf0f5dbc2 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0xf101e8e1 regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0xf1040a32 digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0xf105b27d usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0xf10856e6 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0xf134ef9b pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0xf148565e reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xf1676392 usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xf16d5514 alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0xf179ee9d sk_unattached_filter_create +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf186c82f nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xf1951929 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0xf1aa133d balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1b551d9 ibft_addr +EXPORT_SYMBOL_GPL vmlinux 0xf1bdcdad security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0xf1c093f1 regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xf1dc5880 pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf23148a4 cper_estatus_check +EXPORT_SYMBOL_GPL vmlinux 0xf2396339 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xf2758de6 regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0xf27977e2 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0xf28266cb ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0xf29c8feb single_open_net +EXPORT_SYMBOL_GPL vmlinux 0xf2b7f185 sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xf2f077cc pkey_id_type_name +EXPORT_SYMBOL_GPL vmlinux 0xf2fca922 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0xf2ff0078 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0xf30e105d ezx_pcap_write +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf32bdc5d unregister_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf3727748 rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0xf37a95b6 fuse_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf383e36d evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0xf388e912 alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xf39ed385 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0xf39fabb4 extcon_set_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0xf3a0983e md_stop +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf4072ca5 invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0xf40e3929 usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xf42fa7d3 cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xf494f618 mmc_regulator_get_ocrmask +EXPORT_SYMBOL_GPL vmlinux 0xf499fdb2 rcu_barrier_bh +EXPORT_SYMBOL_GPL vmlinux 0xf4a86323 call_srcu +EXPORT_SYMBOL_GPL vmlinux 0xf4c95e69 usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0xf4fc2d6c __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf523bfd6 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xf52b5d8a pci_reset_pri +EXPORT_SYMBOL_GPL vmlinux 0xf54abb84 irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf5606be1 preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf5785b42 evtchn_get +EXPORT_SYMBOL_GPL vmlinux 0xf580a472 dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0xf5877e9e wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xf5945bac gnttab_free_grant_references +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5aada1c crypto_unregister_pcomp +EXPORT_SYMBOL_GPL vmlinux 0xf5b83a9b led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0xf5d6696f __clocksource_updatefreq_scale +EXPORT_SYMBOL_GPL vmlinux 0xf5edbf31 swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0xf5fef4e3 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf611f195 __efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0xf61ca7f3 sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0xf629f021 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xf62ef675 tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0xf63ba611 usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0xf63bd97f usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0xf643f70c pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0xf672eed8 ablkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0xf6748423 __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0xf6aa95b1 ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xf6b9811f raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0xf6bf90c2 fuse_conn_kill +EXPORT_SYMBOL_GPL vmlinux 0xf6ca1d69 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0xf6d07664 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf7016530 xenbus_gather +EXPORT_SYMBOL_GPL vmlinux 0xf71054aa usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0xf716d483 usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0xf7322bc8 pv_time_ops +EXPORT_SYMBOL_GPL vmlinux 0xf73ab4f2 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf73d0a40 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0xf75e6bb5 __ablkcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0xf7608cdf __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0xf7628fa8 pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0xf78c5fb6 usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xf79b08b6 blocking_notifier_chain_cond_register +EXPORT_SYMBOL_GPL vmlinux 0xf7fa14a3 crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0xf7fe420b ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0xf810a733 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0xf813b67e sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0xf816c866 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf877a0cc key_type_user +EXPORT_SYMBOL_GPL vmlinux 0xf8802492 print_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xf891631e rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0xf8951dc0 __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0xf8b4cd17 ata_base_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xf8b6c8d8 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0xf8e4fa90 kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3d0b kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0xf90554c0 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf92ce956 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf9374ce0 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xf9525d61 __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xf9598fc3 devres_release +EXPORT_SYMBOL_GPL vmlinux 0xf95f45a2 wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xf96f713a usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0xf9765833 dmi_match +EXPORT_SYMBOL_GPL vmlinux 0xf97666a0 set_memory_rw +EXPORT_SYMBOL_GPL vmlinux 0xf982d6cd spi_unregister_master +EXPORT_SYMBOL_GPL vmlinux 0xf98a3ece rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0xf98b832e ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf991db36 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0xf9924426 arch_add_memory +EXPORT_SYMBOL_GPL vmlinux 0xf997b171 ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xf99a6b52 cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9bbed48 rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xf9ca3160 ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xf9d9264e xen_have_vector_callback +EXPORT_SYMBOL_GPL vmlinux 0xfa012fe7 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa1f4662 scatterwalk_start +EXPORT_SYMBOL_GPL vmlinux 0xfa3168d3 public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0xfa450d9f device_rename +EXPORT_SYMBOL_GPL vmlinux 0xfa4a647e klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xfa514a43 mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0xfa53bec1 acpi_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xfa542921 blkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0xfa57c19d tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0xfa6e3bc3 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0xfa8b9aba pinctrl_pm_select_sleep_state +EXPORT_SYMBOL_GPL vmlinux 0xfa901b31 compat_get_timespec +EXPORT_SYMBOL_GPL vmlinux 0xfa9674da regmap_update_bits_async +EXPORT_SYMBOL_GPL vmlinux 0xfae419c0 __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xfae53a36 nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0xfae851b9 sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xfb17dec1 __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb3656a0 usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0xfb476d0b scsi_internal_device_block +EXPORT_SYMBOL_GPL vmlinux 0xfb5d0fed tpm_show_enabled +EXPORT_SYMBOL_GPL vmlinux 0xfb64b230 acpi_processor_ffh_cstate_probe +EXPORT_SYMBOL_GPL vmlinux 0xfb65cdb3 unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb829c1f tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xfb9a7e0f devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfbb71848 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0xfbd55e0b dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0xfbf570f9 scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc1a2e0c blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xfc201b66 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0xfc2efc33 class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xfc2fe322 driver_find +EXPORT_SYMBOL_GPL vmlinux 0xfc3b4246 acpi_bus_update_power +EXPORT_SYMBOL_GPL vmlinux 0xfc4f2412 __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xfc76fbd4 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0xfc778821 pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0xfc83c6d1 ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0xfc8fa639 regmap_fields_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xfc95771b sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0xfc968c8b apei_exec_write_register_value +EXPORT_SYMBOL_GPL vmlinux 0xfcb60a48 ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0xfcd33a71 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0xfcd7bc0b ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0xfcf1f643 regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0xfd02c4bb dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0xfd2ff4f7 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0xfd38cc98 inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0xfd51b281 gnttab_end_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0xfd7243c7 erst_disable +EXPORT_SYMBOL_GPL vmlinux 0xfd93c45a blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0xfdb1894e rtc_irq_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfdc59e09 srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xfdc90c6a netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0xfddeb99c dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0xfe1646c1 pinctrl_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xfe30607e bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xfe426d67 tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0xfe727411 get_phys_to_machine +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfe9bc24d sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0xfea3694e ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0xfeb7b662 sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xfeca476e perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfed3c486 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0xfed9df25 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0xfee784b7 irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xfee8a4f3 iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0xfef8a166 trace_current_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff1076fc usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xff43ec2b acpi_dev_get_resources +EXPORT_SYMBOL_GPL vmlinux 0xff57f964 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0xff5a34c5 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff5b35f8 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0xff685ae0 spi_master_resume +EXPORT_SYMBOL_GPL vmlinux 0xff90f01e dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0xffb52b59 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xffb6b002 debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0xffc9f79a smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xffdd4853 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0xfff62866 xenbus_switch_state --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/amd64/generic.compiler +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/amd64/generic.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 4.8.2-19ubuntu1) 4.8.2 --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/amd64/generic.modules +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/amd64/generic.modules @@ -0,0 +1,3938 @@ +3c574_cs +3c589_cs +3c59x +3w-9xxx +3w-sas +3w-xxxx +6lowpan +6pack +8021q +8139cp +8139too +8250_dw +8255 +8255_pci +8390 +88pm800 +88pm805 +88pm80x +88pm80x_onkey +88pm860x_battery +88pm860x_bl +88pm860x_charger +88pm860x_onkey +88pm860x-ts +9p +9pnet +9pnet_rdma +9pnet_virtio +a100u2w +a3d +a8293 +aacraid +aat2870_bl +aat2870-regulator +ab3100 +ab3100-otp +abituguru +abituguru3 +ablk_helper +ac97_bus +acard-ahci +acecad +acenic +acerhdf +acer-wmi +acpi_extlog +acpi_ipmi +acpi_pad +acpiphp_ibm +acpi_power_meter +acquirewdt +act200l-sir +act_csum +act_gact +act_ipt +actisys-sir +act_mirred +act_nat +act_pedit +act_police +act_simple +act_skbedit +ad2s1200 +ad2s1210 +ad2s90 +ad5064 +ad525x_dpot +ad525x_dpot-i2c +ad525x_dpot-spi +ad5360 +ad5380 +ad5398 +ad5421 +ad5446 +ad5449 +ad5504 +ad5624r_spi +ad5686 +ad5755 +ad5764 +ad5791 +ad5930 +ad5933 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7152 +ad7192 +ad7266 +ad7280a +ad7291 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +ad7476 +ad7606 +ad7746 +ad7780 +ad7791 +ad7793 +ad7816 +ad7877 +ad7879 +ad7879-i2c +ad7879-spi +ad7887 +ad7923 +ad799x +ad8366 +ad9523 +ad9832 +ad9834 +ad9850 +ad9852 +ad9910 +ad9951 +adcxx +addi_apci_035 +addi_apci_1032 +addi_apci_1500 +addi_apci_1516 +addi_apci_1564 +addi_apci_16xx +addi_apci_2032 +addi_apci_2200 +addi_apci_3120 +addi_apci_3501 +addi_apci_3xxx +addi_watchdog +ade7753 +ade7754 +ade7758 +ade7759 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adfs +adi +adis16060 +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16204 +adis16209 +adis16220 +adis16240 +adis16260 +adis16400 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adl_pci9118 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1275 +adm8211 +adm9240 +adp5520_bl +adp5520-keys +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +adq12b +ads1015 +ads7828 +ads7846 +ads7871 +ad_sigma_delta +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adv7170 +adv7175 +adv7180 +advansys +advantechwdt +adv_pci1710 +adv_pci1723 +adv_pci1724 +adv_pci_dio +adxl34x +adxl34x-i2c +adxl34x-spi +adxrs450 +aesni-intel +aes-x86_64 +af_802154 +af9013 +af9033 +af_alg +affs +af_key +af_packet_diag +af-rxrpc +ah4 +ah6 +aha152x_cs +ahci +ahci_platform +aic79xx +aic7xxx +aic94xx +aio_aio12_8 +aio_iiro_16 +aiptek +aircable +airo +airo_cs +ak8975 +algif_hash +algif_skcipher +ali-ircc +alim1535_wdt +alim7101_wdt +alphatrack +altera-ci +altera_jtaguart +altera_ps2 +altera-stapl +altera_uart +alx +ambassador +amc6821 +amd5536udc +amd64_edac_mod +amd76xrom +amd8111e +amd_freq_sensitivity +amd_iommu_v2 +amd-rng +amilo-rfkill +amplc_dio200 +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pc263 +amplc_pci224 +amplc_pci230 +amplc_pci263 +ams369fg06 +analog +anatop-regulator +ansi_cprng +anubis +aoe +apanel +apds9300 +apds9802als +apds990x +apple_bl +appledisplay +apple-gmux +applesmc +appletalk +appletouch +applicom +ar5523 +ar7part +arc4 +arcfb +arcmsr +arcnet +arc_ps2 +arc-rawmode +arc-rimi +arc_uart +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +arptable_filter +arp_tables +arpt_mangle +as3711_bl +as3711-regulator +as5011 +asb100 +asc7621 +asix +ast +asus_atk0110 +asus-laptop +asus-nb-wmi +asus-wmi +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at86rf230 +at91_ether +atbm8830 +aten +ath +ath10k_core +ath10k_pci +ath3k +ath5k +ath6kl_core +ath6kl_sdio +ath6kl_usb +ath9k +ath9k_common +ath9k_htc +ath9k_hw +ati_remote +ati_remote2 +atl1 +atl1c +atl1e +atl2 +atlas_btns +atm +atmel +atmel_cs +atmel_mxt_ts +atmel_pci +atmel_pwm +atmel-pwm-bl +atmel-ssc +atmtcp +atp +atp870u +atxp1 +aty128fb +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo_k1900fb +auo_k1901fb +auo_k190x +auo-pixcir-ts +authenc +authencesn +auth_rpcgss +autofs4 +avma1_cs +avm_cs +avmfritz +ax25 +ax88179_178a +axnet_cs +b1 +b1dma +b1pci +b1pcmcia +b2c2-flexcop +b2c2-flexcop-pci +b2c2-flexcop-usb +b43 +b43legacy +b44 +bas_gigaset +batman-adv +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm203x +bcm3510 +bcm5974 +bcma +bcma-hcd +bcm_wimax +bd6107 +be2iscsi +be2net +befs +belkin_sa +bfa +bfs +bfusb +bh1770glc +bh1780gli +binfmt_misc +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +blowfish-x86_64 +bluecard_cs +bluetooth +bma150 +bma180 +bmp085-i2c +bmp085-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bonding +bpa10x +bpck +bpctl_mod +bpqether +bq2415x_charger +bq24190_charger +bq24735-charger +bq27x00_battery +br2684 +brcmfmac +brcmsmac +brcmutil +bridge +broadsheetfb +bsd_comp +bt3c_cs +bt819 +bt856 +bt866 +bt878 +btcoexist +btcx-risc +btmrvl +btmrvl_sdio +btmtk_usb +btrfs +btsdio +bttv +btuart_cs +btusb +btwilink +bu21013_ts +budget +budget-av +budget-ci +budget-core +budget-patch +BusLogic +bw-qcam +bypass +c2port-duramar2150 +c4 +c67x00 +c6xdigio +cachefiles +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camellia-aesni-avx2 +camellia-aesni-avx-x86_64 +camellia_generic +camellia-x86_64 +can +can-bcm +can-dev +can-gw +can-raw +capi +capidrv +capmode +carl9170 +carminefb +cassini +cast5-avx-x86_64 +cast5_generic +cast6-avx-x86_64 +cast6_generic +cast_common +catc +cb710 +cb710-mmc +cb_das16_cs +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +cb_pcimdda +cc770 +cc770_isa +cc770_platform +c_can +c_can_pci +c_can_platform +cciss +ccm +cdc-acm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc-phonet +cdc_subset +cdc-wdm +cedusb +ceph +cfag12864b +cfag12864bfb +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +chipreg +chnl_net +chromeos_laptop +cifs +ci_hdrc +ci_hdrc_msm +ci_hdrc_pci +cirrus +cirrusfb +ck804xrom +classmate-laptop +clearpad_tm1217 +clip +clk-max77686 +clk-s2mps11 +clk-si5351 +clk-twl6040 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_fw +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm36651 +cm4000_cs +cm4040_cs +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cmtp +cnic +cobra +coda +com20020 +com20020_cs +com20020-pci +com90io +com90xx +comedi +comedi_bond +comedi_fc +comedi_parport +comedi_test +comm +compal-laptop +configfs +contec_pci_dio +cordic +core +coretemp +cp210x +cpcihp_generic +cpcihp_zt5550 +cpia2 +cpu5wdt +cpuid +cpu-notifier-error-inject +c-qcam +cramfs +cr_bllcd +crc32 +crc32-pclmul +crc7 +crc8 +crc-ccitt +crc-itu-t +crct10dif-pclmul +cros_ec +cros_ec_i2c +cros_ec_keyb +cros_ec_spi +crvml +cryptd +cryptoloop +crypto_null +crypto_user +crystalhd +cs5345 +cs53l32a +cs5535-mfd +csiostor +ct82c710 +ctr +cts +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx8800 +cx8802 +cx88-alsa +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx88xx +cxacru +cxd2099 +cxd2820r +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxt1e1 +cy8ctmg110_ts +cyapa +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +cyttsp_core +cyttsp_i2c +cyttsp_i2c_common +cyttsp_spi +da9030_battery +da9034-ts +da903x +da903x_bl +da9052-battery +da9052_bl +da9052-hwmon +da9052_onkey +da9052-regulator +da9052_tsi +da9052_wdt +da9055-hwmon +da9055_onkey +da9055-regulator +da9055_wdt +da9063-regulator +da9210-regulator +DAC960 +daqboard2000 +das08 +das08_cs +das08_isa +das08_pci +das16 +das16m1 +das1800 +das6402 +das800 +db9 +dc395x +dca +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +dccp_probe +dcdbas +ddbridge +de2104x +de4x5 +decnet +deflate +defxx +dell-laptop +dell-led +dell_rbu +dell-wmi +dell-wmi-aio +denali +denali_dt +denali_pci +des_generic +designware_i2s +dgap +dgnc +dgrp +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dibx000_common +digi_acceleport +diskonchip +divacapi +divadidd +diva_idi +diva_mnt +divas +dl2k +dlci +dlm +dm1105 +dm9601 +dm-bio-prison +dm-bufio +dm-cache +dm-cache-cleaner +dm-cache-mq +dm-crypt +dm-delay +dme1737 +dmfe +dm-flakey +dmi-sysfs +dm-log +dm-log-userspace +dmm32at +dm-mirror +dm-multipath +dm-persistent-data +dm-queue-length +dm-raid +dm-region-hash +dm-round-robin +dm-service-time +dm-snapshot +dm-switch +dm-thin-pool +dm-verity +dmx3191d +dm-zero +dnet +dn_rtmsg +docg3 +docg4 +dpt_i2o +drbd +drm +drm_kms_helper +drm_usb +drxd +drxk +ds1621 +ds1682 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds620 +dsa_core +dsbr100 +dscc4 +dss1_divert +dst +dst_ca +dstr +dt2801 +dt2811 +dt2814 +dt2815 +dt2817 +dt282x +dt3000 +dt3155v4l +dt9812 +dtl1_cs +dummy +dummy-irq +dvb-as102 +dvb-bt8xx +dvb-core +dvb-pll +dvb-ttpci +dvb-ttusb-budget +dvb-usb +dvb-usb-a800 +dvb-usb-af9005 +dvb-usb-af9005-remote +dvb-usb-af9015 +dvb-usb-af9035 +dvb-usb-anysee +dvb-usb-au6610 +dvb-usb-az6007 +dvb-usb-az6027 +dvb-usb-ce6230 +dvb-usb-cinergyT2 +dvb-usb-cxusb +dvb-usb-dib0700 +dvb-usb-dibusb-common +dvb-usb-dibusb-mb +dvb-usb-dibusb-mc +dvb-usb-digitv +dvb-usb-dtt200u +dvb-usb-dtv5100 +dvb-usb-dw2102 +dvb-usb-ec168 +dvb-usb-friio +dvb-usb-gl861 +dvb-usb-gp8psk +dvb-usb-it913x +dvb-usb-lmedm04 +dvb-usb-m920x +dvb-usb-mxl111sf +dvb-usb-nova-t-usb2 +dvb-usb-opera +dvb-usb-pctv452e +dvb-usb-rtl28xxu +dvb-usb-technisat-usb2 +dvb-usb-ttusb2 +dvb-usb-umt-010 +dvb_usb_v2 +dvb-usb-vp702x +dvb-usb-vp7045 +dwc2 +dwc2_pci +dwc2_platform +dwc3 +dwc3-pci +dw_dmac +dw_dmac_core +dw_dmac_pci +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +e4000 +e752x_edac +earth-pt1 +eata +ebt_802_3 +ebtable_broute +ebtable_filter +ebtable_nat +ebtables +ebt_among +ebt_arp +ebt_arpreply +ebt_dnat +ebt_ip +ebt_ip6 +ebt_limit +ebt_log +ebt_mark +ebt_mark_m +ebt_nflog +ebt_pkttype +ebt_redirect +ebt_snat +ebt_stp +ebt_vlan +ec100 +echo +ec_sys +edac_core +edac_mce_amd +edt-ft5x06 +eeepc-laptop +eeepc-wmi +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efi-pstore +efs +ehset +einj +elo +elsa_cs +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +emc1403 +emc2103 +emc6w201 +em_canid +em_cmp +emi26 +emi62 +em_ipset +em_meta +em_nbyte +empeg +ems_pci +ems_pcmcia +ems_usb +em_text +emu10k1-gp +em_u32 +enc28j60 +enclosure +ene_ir +eni +enic +epat +epia +epic100 +eql +esas2r +esb2rom +esd_usb2 +esi-sir +esp4 +esp6 +et131x +ethoc +eurotechwdt +evbug +exofs +extcon-adc-jack +extcon-arizona +extcon-gpio +extcon-max77693 +extcon-max8997 +extcon-palmas +ezusb +f2fs +f71805f +f71808e_wdt +f71882fg +f75375s +f81232 +fakelb +fam15h_power +fan53555 +farsync +faulty +fb_ddc +fb_sys_fops +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_cs +fealnx +ff-memless +fid +fintek-cir +firedtv +firestream +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fit2 +fit3 +fixed +fl512 +fld +floppy +fm801-gp +fmc +fmc-chardev +fmc-fakedev +fmc-trivial +fmc-write-eeprom +fm_drv +fmvj18x_cs +fnic +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +freevxfs +friq +frpw +fsa9480 +fscache +fschmd +ft1000 +ft1000_pcmcia +ftdi-elan +ftdi_sio +ftl +fujitsu-laptop +fujitsu-tablet +fujitsu_ts +fusbh200-hcd +g450_pll +g760a +g762 +g_acm_ms +gadgetfs +gamecon +gameport +garmin_gps +garp +g_audio +g_cdc +gcm +g_dbgp +gdmtty +gdmulte +gdmwm +gdth +generic +generic-adc-battery +generic_bl +gen_probe +g_ether +gf128mul +gf2k +g_ffs +gfs2 +ghash-clmulni-intel +ghash-generic +g_hid +gigaset +girbil-sir +gl518sm +gl520sm +gl620a +gluebi +glue_helper +gma500_gfx +g_mass_storage +g_midi +g_ncm +g_nokia +go7007 +go7007-loader +go7007-usb +goku_udc +goldfishfb +gp2ap002a00f +gp2ap020a00f +gpio +gpio-74x164 +gpio-addr-flash +gpio-adp5520 +gpio-adp5588 +gpio-amd8111 +gpio-arizona +gpio_backlight +gpio-charger +gpio-cs5535 +gpio-da9052 +gpio-da9055 +gpio-f7188x +gpio-fan +gpio-generic +gpio-ich +gpio-ir-recv +gpio-it8761e +gpio-janz-ttl +gpio-kempld +gpio_keys +gpio_keys_polled +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-mc33880 +gpio-mcp23s08 +gpio-ml-ioh +gpio_mouse +gpio-pca953x +gpio-pcf857x +gpio-pch +gpio-rdc321x +gpio-regulator +gpio-sch +gpio_tilt_polled +gpio-tps65912 +gpio-ts5500 +gpio-twl6040 +gpio-ucb1400 +gpio-viperboard +gpio-vx855 +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +g_printer +gre +grip +grip_mp +gsc_hpdi +g_serial +gspca_benq +gspca_conex +gspca_cpia1 +gspca_etoms +gspca_finepix +gspca_gl860 +gspca_jeilinj +gspca_jl2005bcd +gspca_kinect +gspca_konica +gspca_m5602 +gspca_main +gspca_mars +gspca_mr97310a +gspca_nw80x +gspca_ov519 +gspca_ov534 +gspca_ov534_9 +gspca_pac207 +gspca_pac7302 +gspca_pac7311 +gspca_se401 +gspca_sn9c2028 +gspca_sn9c20x +gspca_sonixb +gspca_sonixj +gspca_spca1528 +gspca_spca500 +gspca_spca501 +gspca_spca505 +gspca_spca506 +gspca_spca508 +gspca_spca561 +gspca_sq905 +gspca_sq905c +gspca_sq930x +gspca_stk014 +gspca_stk1135 +gspca_stv0680 +gspca_stv06xx +gspca_sunplus +gspca_t613 +gspca_topro +gspca_tv8532 +gspca_vc032x +gspca_vicam +gspca_xirlink_cit +gspca_zc3xx +gtco +guillemot +gunze +g_webcam +g_zero +hamachi +hampshire +hangcheck-timer +hanwang +hci +hci_uart +hci_vhci +hdaps +hdlc +hdlc_cisco +hdlcdrv +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdpvr +he +hecubafb +hexium_gemini +hexium_orion +hfc4s8s_l1 +hfcmulti +hfcpci +hfcsusb +hfc_usb +hfs +hfsplus +hgafb +hid +hid-a4tech +hid-apple +hid-appleir +hid-aureal +hid-axff +hid-belkin +hid-cherry +hid-chicony +hid-cypress +hid-dr +hid-elecom +hid-elo +hid-emsff +hid-ezkey +hid-gaff +hid-generic +hid-gyration +hid-holtekff +hid-holtek-kbd +hid-holtek-mouse +hid-huion +hid-hyperv +hid-icade +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-lenovo-tpkbd +hid-logitech +hid-logitech-dj +hid-magicmouse +hid-microsoft +hid-monterey +hid-multitouch +hid-ntrig +hid-ortek +hidp +hid-petalynx +hid-picolcd +hid-pl +hid-primax +hid-prodikeys +hid-roccat +hid-roccat-arvo +hid-roccat-common +hid-roccat-isku +hid-roccat-kone +hid-roccat-koneplus +hid-roccat-konepure +hid-roccat-kovaplus +hid-roccat-lua +hid-roccat-pyra +hid-roccat-ryos +hid-roccat-savu +hid-saitek +hid-samsung +hid-sensor-accel-3d +hid-sensor-als +hid-sensor-gyro-3d +hid-sensor-hub +hid-sensor-iio-common +hid-sensor-magn-3d +hid-sensor-trigger +hid-sjoy +hid-sony +hid-speedlink +hid-steelseries +hid-sunplus +hid-thingm +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-uclogic +hid-wacom +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hih6130 +hisax +hisax_fcpcipnp +hisax_isac +hisax_st5481 +hmc5843 +hmc6352 +hopper +horizon +hostap +hostap_cs +hostap_pci +hostap_plx +hp100 +hp_accel +hpfs +hpilo +hpsa +hptiop +hpwdt +hp-wireless +hp-wmi +hsi +hsi_char +hso +hsr +htc-pasic3 +htu21 +huawei_cdc_ncm +hv_balloon +hv_netvsc +hv_storvsc +hv_utils +hv_vmbus +hwa-hc +hwa-rc +hwmon-vid +hwpoison-inject +hx8357 +hyperv_fb +hyperv-keyboard +hysdn +i1480-dfu-usb +i1480-est +i2400m +i2400m-usb +i2c-algo-bit +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd756-s4882 +i2c-amd8111 +i2c-cbus-gpio +i2c-designware-core +i2c-designware-pci +i2c-designware-platform +i2c-dev +i2c-diolan-u2c +i2c-eg20t +i2c-gpio +i2c-hid +i2c-i801 +i2c-isch +i2c-ismt +i2c-kempld +i2c-matroxfb +i2c-mux +i2c-mux-gpio +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-mux-pinctrl +i2c-nforce2 +i2c-nforce2-s4985 +i2c-ocores +i2c-parport +i2c-parport-light +i2c-pca-platform +i2c-piix4 +i2c-scmi +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-tiny-usb +i2c-via +i2c-viapro +i2c-viperboard +i2c-xiic +i2o_block +i2o_bus +i2o_config +i2o_core +i2o_proc +i2o_scsi +i3000_edac +i3200_edac +i40e +i5000_edac +i5100_edac +i5400_edac +i5k_amb +i6300esb +i7300_edac +i7300_idle +i740fb +i7core_edac +i810 +i82092 +i82975x_edac +i8k +i915 +i915_bdw +ib700wdt +ib_addr +ib_cm +ib_core +ib_ipath +ib_ipoib +ib_iser +ib_isert +ib_mad +ibmaem +ibmasm +ibmasr +ibmpex +ibm_rtl +ib_mthca +ib_qib +ib_sa +ib_srp +ib_srpt +ib_ucm +ib_umad +ib_uverbs +ichxrom +icp_multi +ics932s401 +ideapad-laptop +ideapad_slidebar +idmouse +idt77252 +idtcps +idt_gen2 +ie6xx_wdt +ieee802154 +ifb +iforce +igb +igbvf +iguanair +iio_dummy +iio_hwmon +iio-trig-interrupt +iio-trig-periodic-rtc +iio-trig-sysfs +ii_pci20kc +ili210x +ili922x +ili9320 +imm +imon +ims-pcu +imx074 +ina209 +ina2xx +industrialio +industrialio-triggered-buffer +inet_diag +inexio +inftl +initio +input-polldev +int51x1 +intelfb +intel_ips +intel_menlow +intel_mid_dma +intel_oaktrail +intel_powerclamp +intel_rapl +intel-rng +intel-rst +intel-smartconnect +intel_vr_nor +interact +interval_tree_test +inv-mpu6050 +ioatdma +ioc4 +io_edgeport +io_ti +iowarrior +ip6_gre +ip6table_filter +ip6table_mangle +ip6table_nat +ip6table_raw +ip6_tables +ip6table_security +ip6t_ah +ip6t_eui64 +ip6t_frag +ip6t_hbh +ip6t_ipv6header +ip6t_MASQUERADE +ip6t_mh +ip6t_NPT +ip6t_REJECT +ip6t_rpfilter +ip6t_rt +ip6t_SYNPROXY +ip6_tunnel +ip6_vti +ipack +ipaq +ipcomp +ipcomp6 +ipddp +ipg +ip_gre +iphase +ipheth +ipip +ipmi_devintf +ipmi_poweroff +ipmi_si +ipmi_watchdog +ipoctal +ipr +ips +ip_set +ip_set_bitmap_ip +ip_set_bitmap_ipmac +ip_set_bitmap_port +ip_set_hash_ip +ip_set_hash_ipport +ip_set_hash_ipportip +ip_set_hash_ipportnet +ip_set_hash_net +ip_set_hash_netiface +ip_set_hash_netnet +ip_set_hash_netport +ip_set_hash_netportnet +ip_set_list_set +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +ip_tables +iptable_security +ipt_ah +ipt_CLUSTERIP +ipt_ECN +ipt_MASQUERADE +ipt_REJECT +ipt_rpfilter +ipt_SYNPROXY +ipt_ULOG +ip_tunnel +ip_vs +ip_vs_dh +ip_vs_ftp +ip_vs_lblc +ip_vs_lblcr +ip_vs_lc +ip_vs_nq +ip_vs_pe_sip +ip_vs_rr +ip_vs_sed +ip_vs_sh +ip_vs_wlc +ip_vs_wrr +ip_vti +ipw +ipw2100 +ipw2200 +ipwireless +ipx +ircomm +ircomm-tty +irda +irda-usb +ir-jvc-decoder +ir-kbd-i2c +irlan +ir-lirc-codec +ir-mce_kbd-decoder +ir-nec-decoder +irnet +ir-rc5-decoder +ir-rc5-sz-decoder +ir-rc6-decoder +ir-sanyo-decoder +ir-sony-decoder +irtty-sir +ir-usb +isci +iscsi_boot_sysfs +iscsi_ibft +iscsi_target_mod +iscsi_tcp +isdn +isdn_bsdcomp +isdnhdlc +isicom +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isofs +isp116x-hcd +isp1362-hcd +isp1704_charger +isp1760 +it87 +it8712f_wdt +it87_wdt +it913x-fe +iTCO_vendor_support +iTCO_wdt +itd1000 +ite-cir +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_c2 +iw_cm +iw_cxgb3 +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +iw_nes +ix2505v +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsm +k10temp +k8temp +kafs +kalmia +kaweth +kb3886_bl +kbic +kbtab +kcomedilib +ke_counter +kempld-core +kempld_wdt +kernelcapi +keucr +keyspan +keyspan_pda +keyspan_remote +kfifo_buf +khazad +kingsun-sir +kl5kusb105 +ko2iblnd +kobil_sct +ks0108 +ks0127 +ks8842 +ks8851 +ks8851_mll +ks959-sir +ksdazzle-sir +ksocklnd +ksz884x +ktti +kvaser_pci +kvaser_usb +kvm +kvm-amd +kvm-intel +kxsd9 +kxtj9 +kyrofb +l1oip +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +l2tp_ppp +l440gx +l4f00242t03 +l64781 +lanai +lapb +lapbether +latch-addr-flash +lattice-ecp3-config +lcd +ld9040 +ldusb +lec +leds-88pm860x +leds-adp5520 +leds-atmel-pwm +leds-bd2802 +leds-blinkm +leds-clevo-mail +leds-da903x +leds-da9052 +leds-dac124s085 +leds-gpio +leds-lm3530 +leds-lm3533 +leds-lm355x +leds-lm3642 +leds-lp3944 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lt3593 +leds-max8997 +leds-mc13783 +leds-ot200 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pca9685 +leds-pwm +leds-regulator +leds-ss4200 +leds-tca6507 +leds-wm831x-status +leds-wm8350 +ledtrig-backlight +ledtrig-camera +ledtrig-default-on +ledtrig-gpio +ledtrig-heartbeat +ledtrig-oneshot +ledtrig-timer +ledtrig-transient +legousbtower +lg2160 +lgdt3305 +lgdt330x +lgs8gxx +lg-vl600 +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libahci +libceph +libcfs +libcomposite +libcrc32c +libcxgbi +libertas +libertas_cs +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libore +libosd +libsas +libsrp +lightning +line6usb +lineage-pem +linear +lirc_bt829 +lirc_dev +lirc_igorplugusb +lirc_imon +lirc_parallel +lirc_sasem +lirc_serial +lirc_sir +lirc_zilog +lis3l02dq +lis3lv02d +lis3lv02d_i2c +litelink-sir +lkkbd +llc +llc2 +llog_test +lm25066 +lm3533-als +lm3533_bl +lm3533-core +lm3533-ctrlbank +lm3630a_bl +lm3639_bl +lm63 +lm70 +lm73 +lm75 +lm77 +lm78 +lm80 +lm83 +lm8323 +lm8333 +lm85 +lm87 +lm90 +lm92 +lm93 +lm95234 +lm95241 +lm95245 +lmc +lms283gf05 +lms501kf03 +lmv +lnbp21 +lnbp22 +lnet +lnet_selftest +lockd +lov +lp +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp8755 +lp8788_bl +lp8788-charger +lpc_ich +lpc_sch +lpddr_cmds +lpfc +lru_cache +lrw +ltc2978 +ltc4151 +ltc4215 +ltc4245 +ltc4261 +ltv350qv +lustre +lv5207lp +lvfs +lz4 +lz4_compress +lz4hc +lz4hc_compress +m25p80 +m2m-deinterlace +m52790 +m88rs2000 +ma600-sir +mac80211 +mac80211_hwsim +mac802154 +macb +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mac-gaelic +mac-greek +mac_hid +machzwd +mac-iceland +mac-inuit +macmodes +mac-roman +mac-romanian +mac-turkish +macvlan +macvtap +mag3110 +magellan +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +matrix-keymap +matrix_keypad +matroxfb_accel +matroxfb_base +matroxfb_crtc2 +matroxfb_DAC1064 +matroxfb_g450 +matroxfb_maven +matroxfb_misc +matroxfb_Ti3026 +matrox_w1 +max1111 +max11801_ts +max1363 +max1586 +max16064 +max16065 +max1619 +max1668 +max17040_battery +max17042_battery +max197 +max2165 +max3100 +max34440 +max517 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77686 +max77693 +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925_bl +max8925_onkey +max8925_power +max8925-regulator +max8952 +max8973-regulator +max8997 +max8997_charger +max8998 +max8998_charger +mb862xxfb +mb86a16 +mb86a20s +mc13783-adc +mc13783-pwrbutton +mc13783-regulator +mc13783_ts +mc13892-regulator +mc13xxx-core +mc13xxx-i2c +mc13xxx-regulator-core +mc13xxx-spi +mc44s803 +mce_amd_inj +mce-inject +mceusb +mcp2120-sir +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp4725 +mcs5000_ts +mcs7780 +mcs7830 +mcs_touchkey +mct_u232 +md4 +mdc +mdc800 +mdio +me4000 +me_daq +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mei +mei-me +mei_phy +mem2mem_testdev +memory-notifier-error-inject +memstick +mena21_wdt +metronomefb +metro-usb +meye +mfd +mga +mgc +mic_card +michael_mic +mic_host +microread +microread_i2c +microread_mei +microtek +mii +minix +mip6 +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +mite +mk712 +mkiss +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mma8450 +mmc_block +mmc_spi +mms114 +mos7720 +mos7840 +moxa +mpc624 +mpoa +mpr121_touchkey +mpt2sas +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +mrst_max3110 +ms_block +msdos +msi-laptop +msi-wmi +msp3400 +mspro_block +msr +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt29f_spinand +mt312 +mt352 +mt9m001 +mt9m111 +mt9t031 +mt9t112 +mt9v011 +mt9v022 +mtd +mtd_blkdevs +mtdblock +mtdblock_ro +mtd_dataflash +mtdoops +mtdram +mtdswap +mtip32xx +mtouch +multipath +multiq3 +musb_hdrc +mv88e6060 +mv88e6xxx_drv +mvmdio +mvsas +mv_u3d_core +mv_udc +mvumi +mwave +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxl111sf-demod +mxl111sf-tuner +mxl5005s +mxl5007t +mxm-wmi +mxser +myri10ge +n411 +nand +nand_bch +nand_ecc +nand_ids +nandsim +natsemi +nau7802 +navman +nbd +nci +ncpfs +nct6775 +ne2k-pci +neofb +net1080 +net2272 +net2280 +netconsole +netjet +netlink_diag +netprio_cgroup +netrom +netsc520 +nettel +netxen_nic +newtonkbd +nfc +nfc_digital +nf_conntrack +nf_conntrack_amanda +nf_conntrack_broadcast +nf_conntrack_ftp +nf_conntrack_h323 +nf_conntrack_ipv4 +nf_conntrack_ipv6 +nf_conntrack_irc +nf_conntrack_netbios_ns +nf_conntrack_netlink +nf_conntrack_pptp +nf_conntrack_proto_dccp +nf_conntrack_proto_gre +nf_conntrack_proto_sctp +nf_conntrack_proto_udplite +nf_conntrack_sane +nf_conntrack_sip +nf_conntrack_snmp +nf_conntrack_tftp +nfcsim +nfcwilink +nf_defrag_ipv4 +nf_defrag_ipv6 +nf_nat +nf_nat_amanda +nf_nat_ftp +nf_nat_h323 +nf_nat_ipv4 +nf_nat_ipv6 +nf_nat_irc +nf_nat_pptp +nf_nat_proto_dccp +nf_nat_proto_gre +nf_nat_proto_sctp +nf_nat_proto_udplite +nf_nat_sip +nf_nat_snmp_basic +nf_nat_tftp +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +nfnetlink_log +nfnetlink_queue +nfs +nfs_acl +nfsd +nfs_layout_nfsv41_files +nfsv2 +nfsv3 +nfsv4 +nf_synproxy_core +nf_tables +nf_tables_arp +nf_tables_bridge +nf_tables_ipv4 +nf_tables_ipv6 +nft_chain_nat_ipv4 +nft_chain_nat_ipv6 +nft_chain_route_ipv4 +nft_chain_route_ipv6 +nft_compat +nft_counter +nft_ct +nft_exthdr +nft_hash +nftl +nft_limit +nft_log +nft_meta +nft_nat +nft_rbtree +nft_reject_ipv4 +ngene +n_hdlc +ni_6527 +ni_65xx +ni_660x +ni_670x +ni_at_a2150 +ni_at_ao +ni_atmio +ni_atmio16d +nicstar +ni_daq_700 +ni_daq_dio24 +ni_labpc +ni_labpc_cs +ni_labpc_isadma +ni_labpc_pci +nilfs2 +ni_mio_cs +ni_pcidio +ni_pcimio +ni_tio +ni_tiocmd +niu +nlmon +nls_ascii +nls_cp1250 +nls_cp1251 +nls_cp1255 +nls_cp737 +nls_cp775 +nls_cp850 +nls_cp852 +nls_cp855 +nls_cp857 +nls_cp860 +nls_cp861 +nls_cp862 +nls_cp863 +nls_cp864 +nls_cp865 +nls_cp866 +nls_cp869 +nls_cp874 +nls_cp932 +nls_cp936 +nls_cp949 +nls_cp950 +nls_euc-jp +nls_iso8859-1 +nls_iso8859-13 +nls_iso8859-14 +nls_iso8859-15 +nls_iso8859-2 +nls_iso8859-3 +nls_iso8859-4 +nls_iso8859-5 +nls_iso8859-6 +nls_iso8859-7 +nls_iso8859-9 +nls_koi8-r +nls_koi8-ru +nls_koi8-u +nls_utf8 +nmclan_cs +nosy +notifier-error-inject +nouveau +nozomi +n_r3964 +ns558 +ns83820 +nsc-ircc +ntb +ntb_netdev +ntc_thermistor +ntfs +n_tracerouter +n_tracesink +null_blk +nuvoton-cir +nvidiafb +nvme +nvram +nv_tco +nxt200x +nxt6000 +obdclass +obdecho +objlayoutdriver +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stackglue +ocfs2_stack_o2cb +ocfs2_stack_user +ocrdma +old_belkin-sir +omfs +omninet +on20 +on26 +onenand +opencores-kbd +openvswitch +oprofile +opticon +option +or51132 +or51211 +orinoco +orinoco_cs +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +osc +osd +osdblk +osst +oti6858 +output +ov2640 +ov5642 +ov6650 +ov7640 +ov7670 +ov772x +ov9640 +ov9740 +overlayfs +oxu210hp-hcd +ozwpan +p4-clockmod +p54common +p54pci +p54spi +p54usb +p8022 +p8023 +padlock-aes +padlock-sha +palmas-regulator +panasonic-laptop +panel +paride +parkbd +parport +parport_ax88796 +parport_cs +parport_pc +parport_serial +pata_acpi +pata_ali +pata_amd +pata_arasan_cf +pata_artop +pata_atiixp +pata_atp867x +pata_cmd640 +pata_cmd64x +pata_cs5520 +pata_cs5530 +pata_cs5536 +pata_cypress +pata_efar +pata_hpt366 +pata_hpt37x +pata_hpt3x2n +pata_hpt3x3 +pata_it8213 +pata_it821x +pata_jmicron +pata_legacy +pata_marvell +pata_mpiix +pata_netcell +pata_ninja32 +pata_ns87410 +pata_ns87415 +pata_oldpiix +pata_opti +pata_optidma +pata_pcmcia +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sc1200 +pata_sch +pata_serverworks +pata_sil680 +pata_sl82c105 +pata_triflex +pata_via +pc300too +pc87360 +pc87413_wdt +pc87427 +pcap_keys +pcap-regulator +pcap_ts +pcbc +pcd +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_can +pch_dma +pch_gbe +pch_phub +pch_uart +pch_udc +pci +pci200syn +pcips2 +pci-stub +pcl711 +pcl724 +pcl726 +pcl730 +pcl812 +pcl816 +pcl818 +pcm3724 +pcmad +pcmcia +pcmcia_core +pcmciamtd +pcmcia_rsrc +pcmda12 +pcmmio +pcmuio +pcnet32 +pcnet_cs +pcrypt +pcspkr +pcwd_pci +pcwd_usb +pd +pd6729 +pda_power +pdc_adma +peak_pci +peak_pcmcia +peak_usb +pegasus +penmount +percpu_test +pf +pfuze100-regulator +pg +phantom +phison +phonet +phram +phy-core +phy-generic +phy-gpio-vbus-usb +phy-isp1301 +phy-rcar-usb +phy-samsung-usb +phy-samsung-usb2 +phy-samsung-usb3 +physmap +pixcir_i2c_ts +pktcdvd +pktgen +pl2303 +platform_lcd +plat_nand +plat-ram +plip +plusb +pluto2 +plx_pci +pm2fb +pm3fb +pm80xx +pmbus +pmbus_core +pmc551 +pmcraid +pm-notifier-error-inject +pn533 +pn544 +pn544_i2c +pn544_mei +pn_pep +poc +port100 +poseidon +powermate +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +pppoatm +pppoe +pppox +ppp_synctty +pps_core +pps-gpio +pps-ldisc +pps_parport +pptp +prism2_usb +ps2mult +psmouse +psnap +pt +ptlrpc +ptp +ptp_pch +pvpanic +pvrusb2 +pwc +pwm_bl +pxa27x_udc +qcaux +qcserial +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qlogic_cs +qlogicfas408 +qmi_wwan +qnx4 +qnx6 +qt1010 +qt1070 +qt2160 +quatech2 +quatech_daqp_cs +quickstart +quota_tree +quota_v1 +quota_v2 +qxl +r128 +r592 +r6040 +r8152 +r815x +r8169 +r8187se +r8188eu +r8192e_pci +r8192u_usb +r820t +r852 +r8712u +r8a66597-hcd +r8a66597-udc +radeon +radeonfb +radio-i2c-si470x +radio-keene +radio-ma901 +radio-maxiradio +radio-mr800 +radio-shark +radio-si4713 +radio-si476x +radio-tea5764 +radio-timb +radio-usb-si470x +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid6test +raid_class +ramoops +raw +ray_cs +rbd +rbtree_test +rc5t583-regulator +rc-adstech-dvb-t-pci +rc-alink-dtu-m +rc-anysee +rc-apac-viewcomp +rcar_vin +rc-asus-pc39 +rc-asus-ps3-100 +rc-ati-tv-wonder-hd-600 +rc-ati-x10 +rc-avermedia +rc-avermedia-a16d +rc-avermedia-cardbus +rc-avermedia-dvbt +rc-avermedia-m135a +rc-avermedia-m733a-rm-k6 +rc-avermedia-rm-ks +rc-avertv-303 +rc-azurewave-ad-tu700 +rc-behold +rc-behold-columbus +rc-budget-ci-old +rc-cinergy +rc-cinergy-1400 +rc-core +rc-delock-61959 +rc-dib0700-nec +rc-dib0700-rc5 +rc-digitalnow-tinytwin +rc-digittrade +rc-dm1105-nec +rc-dntv-live-dvb-t +rc-dntv-live-dvbt-pro +rc-em-terratec +rc-encore-enltv +rc-encore-enltv2 +rc-encore-enltv-fm53 +rc-evga-indtube +rc-eztv +rc-flydvb +rc-flyvideo +rc-fusionhdtv-mce +rc-gadmei-rm008z +rc-genius-tvgo-a11mce +rc-gotview7135 +rc-hauppauge +rc-imon-mce +rc-imon-pad +rc-iodata-bctv7e +rc-it913x-v1 +rc-it913x-v2 +rc-kaiomy +rc-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lirc +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +rc-msi-digivox-ii +rc-msi-digivox-iii +rc-msi-tvanywhere +rc-msi-tvanywhere-plus +rc-nebula +rc-nec-terratec-cinergy-xs +rc-norwood +rc-npgtech +rc-pctv-sedna +rc-pinnacle-color +rc-pinnacle-grey +rc-pinnacle-pctv-hd +rc-pixelview +rc-pixelview-002t +rc-pixelview-mk12 +rc-pixelview-new +rc-powercolor-real-angel +rc-proteus-2309 +rc-purpletv +rc-pv951 +rc-rc6-mce +rc-real-audio-220-32-keys +rc-reddo +rc-snapstream-firefly +rc-streamzap +rc-tbs-nec +rc-technisat-usb2 +rc-terratec-cinergy-xs +rc-terratec-slim +rc-terratec-slim-2 +rc-tevii-nec +rc-tivo +rc-total-media-in-hand +rc-total-media-in-hand-02 +rc-trekstor +rc-tt-1500 +rc-twinhan1027 +rc-videomate-m1f +rc-videomate-s350 +rc-videomate-tv-pvr +rc-winfast +rc-winfast-usbii-deluxe +rdc321x-southbridge +rdma_cm +rdma_ucm +rds +rds_rdma +rds_tcp +redboot +redrat3 +reed_solomon +reiserfs +remoteproc +renesas_usbhs +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd_ftl +rfkill-gpio +rfkill-regulator +rio500 +rionet +rio-scan +rivafb +rj54n1cb0c +rmd128 +rmd160 +rmd256 +rmd320 +rndis_host +rndis_wlan +rocket +romfs +rose +rotary_encoder +rp2 +rpcsec_gss_krb5 +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt61pci +rt73usb +rtc-88pm80x +rtc-88pm860x +rtc-ab3100 +rtc-bq32k +rtc-bq4802 +rtc-da9052 +rtc-da9055 +rtc-ds1286 +rtc-ds1305 +rtc-ds1307 +rtc-ds1374 +rtc-ds1390 +rtc-ds1511 +rtc-ds1553 +rtc-ds1672 +rtc-ds1742 +rtc-ds2404 +rtc-ds3232 +rtc-ds3234 +rtc-em3027 +rtc-fm3130 +rtc-hid-sensor-time +rtc-isl12022 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-moxart +rtc-msm6242 +rtc-palmas +rtc-pcap +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf8523 +rtc-pcf8563 +rtc-pcf8583 +rtc-r9701 +rtc-rc5t583 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3029c2 +rtc-rx4581 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtd520 +rti800 +rti802 +rtl2830 +rtl2832 +rtl8150 +rtl8180 +rtl8187 +rtl8188ee +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192se +rtl8723ae +rtl8723be +rtl8723-common +rtl8821ae +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtl_pci +rtl_usb +rtlwifi +rts5139 +rtsx_pci +rtsx_pci_ms +rtsx_pci_sdmmc +rxkad +s1d13xxxfb +s2250 +s2255drv +s2io +s3fb +s526 +s5h1409 +s5h1411 +s5h1420 +s5m8767 +s626 +s6e63m0 +s921 +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7146 +saa7146_vv +saa7164 +saa717x +saa7185 +saa7706h +safe_serial +salsa20_generic +salsa20-x86_64 +samsung-keypad +samsung-laptop +samsung-q10 +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_rcar +sata_sil +sata_sil24 +sata_sis +sata_svw +sata_sx4 +sata_uli +sata_via +sata_vsc +savage +savagefb +sb1000 +sbc60xxwdt +sbc8360 +sbc_epx_c3 +sbc_fitpc2_wdt +sbc_gxx +sbe-2t3e3 +sb_edac +sbni +sbp_target +sbs +sbs-battery +sbshc +sc1200wdt +sc520cdp +sc520_wdt +sc92031 +sca3000 +scb2_flash +sch311x_wdt +sch5627 +sch5636 +sch56xx-common +sch_atm +sch_cbq +sch_choke +sch_codel +sch_drr +sch_dsmark +sch_fq +sch_fq_codel +sch_gred +sch_hfsc +sch_htb +sch_ingress +sch_mqprio +sch_multiq +sch_netem +sch_plug +sch_prio +sch_qfq +sch_red +sch_sfb +sch_sfq +sch_tbf +sch_teql +scsi_debug +scsi_dh +scsi_dh_alua +scsi_dh_emc +scsi_dh_hp_sw +scsi_dh_rdac +scsi_tgt +scsi_transport_fc +scsi_transport_iscsi +scsi_transport_sas +scsi_transport_srp +sctp +sctp_probe +sdhci +sdhci-acpi +sdhci-pci +sdhci-pltfm +sdhci-pxav2 +sdhci-pxav3 +sdio_uart +sdricoh_cs +sdr-msi3101 +sedlbauer_cs +seed +sep_driver +seqiv +ser_gigaset +serial2002 +serial_cs +serio_raw +sermouse +serpent-avx2 +serpent-avx-x86_64 +serpent_generic +serpent-sse2-x86_64 +serport +serqt_usb2 +ses +sfc +sha1-ssse3 +sha256-ssse3 +sha512-ssse3 +shark2 +sh_eth +sh_mobile_ceu_camera +sh_mobile_csi2 +shpchp +sht15 +sht21 +sh_veu +si21xx +si4713-i2c +si476x-core +sidewinder +sierra +sierra_net +sil164 +sir-dev +sis +sis190 +sis5595 +sis900 +sis-agp +sisfb +sisusbvga +sit +sja1000 +sja1000_isa +sja1000_platform +skd +skel +skfp +skge +sky2 +sl811_cs +sl811-hcd +slcan +slicoss +slip +slram +sm501 +sm501fb +sm7xxfb +smb347-charger +smc91c92_cs +sm_common +sm_ftl +smm665 +smsc37b787_wdt +smsc47b397 +smsc47m1 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smsc-ircc2 +smscufx +smsdvb +smsmdtv +smssdio +smsusb +snd +snd-ac97-codec +snd-ad1889 +snd-ak4113 +snd-ak4114 +snd-ak4117 +snd-ak4xxx-adda +snd-ali5451 +snd-aloop +snd-als300 +snd-als4000 +snd-asihpi +snd-at73c213 +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-azt3328 +snd-bt87x +snd-ca0106 +snd-cmipci +snd-compress +snd-cs4281 +snd-cs46xx +snd-cs5530 +snd-cs5535audio +snd-cs8427 +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-emu10k1 +snd-emu10k1-synth +snd-emu10k1x +snd-emux-synth +snd-ens1370 +snd-ens1371 +snd-es1938 +snd-es1968 +snd-firewire-lib +snd-firewire-speakers +snd-fm801 +snd-gina20 +snd-gina24 +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-intel +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1712 +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel8x0 +snd-intel8x0m +snd-isight +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-lx6464es +snd-maestro3 +snd-mia +snd-mixart +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3-synth +snd-oxygen +snd-oxygen-lib +snd-page-alloc +snd-pcm +snd-pcsp +snd-pcxhr +snd-pdaudiocf +snd-portman2x4 +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-sb16-dsp +snd-sb-common +snd-scs1x +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-soc-atmel-pcm +snd-soc-core +snd-soc-si476x +snd-soc-simple-card +snd-sonicvibes +snd-timer +snd-trident +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usbmidi-lib +snd-usb-us122l +snd-usb-usx2y +snd-util-mem +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx222 +snd-vx-lib +snd-vxpocket +snd-ymfpci +soc_camera +soc_camera_platform +soc_mediabus +soc_scale_crop +softdog +softing +softing_cs +solo6x10 +solos-pci +sony-btf-mpx +sony-laptop +soundcore +sp5100_tco +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +spectrum_cs +speedfax +speedstep-lib +speedtch +spi-altera +spi-bitbang +spi-butterfly +spidev +spi-dw +spi-dw-midpci +spi-dw-mmio +spi-gpio +spi_ks8995 +spi-lm70llp +spi-oc-tiny +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-sc18is602 +spi-tle62x0 +spi-topcliff-pch +spi-xcomm +squashfs +sr9700 +ssb +ssb-hcd +ssfdc +sst25l +sstfb +ssu100 +st +st1232 +st_accel +st_accel_i2c +st_accel_spi +starfire +stb0899 +stb6000 +stb6100 +st_drv +ste_modem_rproc +stex +st_gyro +st_gyro_i2c +st_gyro_spi +stinger +stir4200 +stk1160 +stkwebcam +st_magn +st_magn_i2c +st_magn_spi +stmmac +stmpe-keypad +stmpe-ts +stowaway +stp +st_pressure +st_pressure_i2c +st_pressure_spi +streamzap +st_sensors +st_sensors_i2c +st_sensors_spi +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv6110 +stv6110x +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sur40 +svcrdma +svgalib +sx8 +sym53c500_cs +sym53c8xx +symbolserial +synaptics_i2c +synaptics_i2c_rmi4 +synaptics_usb +synclink +synclink_cs +synclink_gt +synclinkmp +syscopyarea +sysfillrect +sysimgblt +sysv +t1pci +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +tc3589x-keypad +tca6416-keypad +tca8418_keypad +tcm_fc +tcm_loop +tcm_qla2xxx +tcm_usb_gadget +tcp_bic +tcp_diag +tcp_highspeed +tcp_htcp +tcp_hybla +tcp_illinois +tcp_lp +tcp_probe +tcp_scalable +tcp_vegas +tcp_veno +tcp_westwood +tcp_yeah +tcrypt +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18271 +tda18271c2dd +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda998x +tdfx +tdfxfb +tdo24m +tea +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tef6862 +tehuti +tekram-sir +teles_cs +test-kstrtox +test_power +test-string_helpers +tg3 +tgr192 +thinkpad_acpi +thmc50 +ti-adc081c +ti_dac7512 +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +timb_dma +timberdale +timblogiw +timbuart +timeriomem-rng +tipc +ti_usb_3410_5052 +tlan +tlclk +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmem +tmiofb +tmp006 +tmp102 +tmp401 +tmp421 +tmscsim +toim3232-sir +topstar-laptop +toshiba_acpi +toshiba_bluetooth +touchit213 +touchright +touchwin +tpci200 +tpm_atmel +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_i2c_stm_st33 +tpm_infineon +tpm_nsc +tpm-rng +tps51632-regulator +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65090-charger +tps65090-regulator +tps65217 +tps65217_bl +tps65217-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps80031-regulator +trancevibrator +tranzport +tridentfb +ts2020 +ts5500_flash +ts_bm +tsc2005 +tsc2007 +tsc40 +ts_fsm +tsi568 +tsi57x +tsi721_mport +ts_kmp +tsl2550 +tsl2563 +tsl2583 +tsl2x7x_core +tsl4531 +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +tua6100 +tua9001 +tulip +tuner +tuner_it913x +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +tusb6010 +tvaudio +tveeprom +tvp5150 +tw2804 +tw9903 +tw9906 +tw9910 +twidjoy +twl6040-vibra +twofish-avx-x86_64 +twofish_common +twofish_generic +twofish-x86_64 +twofish-x86_64-3way +typhoon +u132-hcd +uartlite +ubi +ubifs +ucb1400_core +ucb1400_ts +ucd9000 +ucd9200 +uda1342 +udc-core +udf +udl +udlfb +udp_diag +ueagle-atm +u_ether +ufs +ufshcd +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_sercos3 +uli526x +umc +umem +ums-alauda +ums-cypress +ums-datafab +ums-eneub6250 +ums-freecom +ums-isd200 +ums-jumpshot +ums-karma +ums-onetouch +ums-realtek +ums-sddr09 +ums-sddr55 +ums-usbat +unioxx5 +unix_diag +upd64031a +upd64083 +uPD98402 +u_rndis +usb3503 +usb_8dev +usb8xxx +usbatm +usb_debug +usbdux +usbduxfast +usbduxsigma +usb_f_acm +usb_f_ecm +usb_f_ecm_subset +usb_f_eem +usb_f_mass_storage +usb_f_ncm +usb_f_obex +usb_f_phonet +usb_f_rndis +usb_f_serial +usb_f_ss_lb +usb_gigaset +usbhid +usbip-core +usbip-host +usbkbd +usblcd +usbled +usblp +usbmon +usbmouse +usbnet +usbserial +usb-serial-simple +usbsevseg +usb-storage +usbtest +usbtmc +usbtouchscreen +usbtv +usbvision +usb_wwan +u_serial +userspace-consumer +ushc +usnic_verbs +uss720 +uvcvideo +uvesafb +uwb +ux500 +v4l2-common +v4l2-dv-timings +v4l2-int-device +v4l2-mem2mem +vcan +vcnl4000 +ves1820 +ves1x93 +veth +vfio +vfio_iommu_type1 +vfio-pci +vga16fb +vgastate +vgg2432a4 +vhci-hcd +vhost +vhost_net +vhost_scsi +via +via686a +via-camera +via-cputemp +viafb +via-ircc +via-rhine +via-rng +via-sdmmc +via-velocity +via_wdt +video +videobuf2-core +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-memops +videobuf2-vmalloc +videobuf-core +videobuf-dma-contig +videobuf-dma-sg +videobuf-dvb +videobuf-vmalloc +videocodec +videodev +viperboard +viperboard_adc +virtio-rng +virtio_scsi +virtual +visor +vivi +vlsi_ir +vmac +vme +vme_ca91cx42 +vme_pio2 +vme_tsi148 +vme_user +vme_vmivme7805 +vmk80xx +vmlfb +vmw_balloon +vmwgfx +vmw_pvscsi +vmw_vmci +vmw_vsock_vmci_transport +vmxnet3 +vp27smpx +vpx3220 +vringh +vsock +vsxxxaa +vt1211 +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxge +vxlan +w1_bq27000 +w1_ds2408 +w1_ds2413 +w1_ds2423 +w1_ds2431 +w1_ds2433 +w1_ds2760 +w1_ds2780 +w1_ds2781 +w1_ds28e04 +w1-gpio +w1_smem +w1_therm +w35und +w5100 +w5300 +w6692 +w83627ehf +w83627hf +w83627hf_wdt +w83697hf_wdt +w83697ug_wdt +w83781d +w83791d +w83792d +w83793 +w83795 +w83877f_wdt +w83977af_ir +w83977f_wdt +w83l785ts +w83l786ng +w90p910_ts +w9966 +wacom +wacom_i2c +wacom_w8001 +wafer5823wdt +walkera0701 +wanxl +warrior +wbsd +wcn36xx +wdt_pci +whci +whci-hcd +whc-rc +whiteheat +wil6210 +wimax +winbond-840 +winbond-cir +wire +wishbone-serial +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wl3501_cs +wlags49_h25_cs +wlags49_h2_cs +wlcore +wlcore_sdio +wlcore_spi +wm831x_backup +wm831x_bl +wm831x-dcdc +wm831x-hwmon +wm831x-isink +wm831x-ldo +wm831x-on +wm831x_power +wm831x-ts +wm831x_wdt +wm8350-hwmon +wm8350_power +wm8350-regulator +wm8350_wdt +wm8400-regulator +wm8739 +wm8775 +wm8994-regulator +wm97xx-ts +wmi +wp512 +wusb-cbaf +wusbcore +wusb-wa +x25 +x25_asy +x38_edac +x86_pkg_temp_thermal +xc4000 +xc5000 +xcbc +xen-blkback +xen-evtchn +xen-fbfront +xenfs +xen-gntalloc +xen-gntdev +xen-kbdfront +xen-netback +xen-pciback +xen-pcifront +xen-privcmd +xen-tpmfront +xen_wdt +xfrm4_mode_beet +xfrm4_mode_transport +xfrm4_mode_tunnel +xfrm4_tunnel +xfrm6_mode_beet +xfrm6_mode_ro +xfrm6_mode_transport +xfrm6_mode_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_ipcomp +xfrm_user +xfs +xgifb +xgmac +xillybus_core +xillybus_pcie +xirc2ps_cs +xircom_cb +xo15-ebook +xor +xpad +xprtrdma +xsens_mt +x_tables +xt_addrtype +xt_AUDIT +xt_bpf +xt_CHECKSUM +xt_CLASSIFY +xt_cluster +xt_comment +xt_connbytes +xt_connlabel +xt_connlimit +xt_connmark +xt_CONNSECMARK +xt_conntrack +xt_cpu +xt_CT +xt_dccp +xt_devgroup +xt_dscp +xt_DSCP +xt_ecn +xt_esp +xt_hashlimit +xt_helper +xt_hl +xt_HL +xt_HMARK +xt_IDLETIMER +xt_iprange +xt_ipvs +xtkbd +xt_LED +xt_length +xt_limit +xt_LOG +xt_mac +xt_mark +xt_multiport +xt_nat +xt_NETMAP +xt_nfacct +xt_NFLOG +xt_NFQUEUE +xt_osf +xt_owner +xt_physdev +xt_pkttype +xt_policy +xt_quota +xt_rateest +xt_RATEEST +xt_realm +xt_recent +xt_REDIRECT +xts +xt_sctp +xt_SECMARK +xt_set +xt_socket +xt_state +xt_statistic +xt_string +xt_tcpmss +xt_TCPMSS +xt_TCPOPTSTRIP +xt_tcpudp +xt_TEE +xt_time +xt_TPROXY +xt_TRACE +xt_u32 +xusbatm +xz_dec_test +yam +yealink +yellowfin +yenta_socket +yurex +zatm +zaurus +zd1201 +zd1211rw +zforce_ts +zhenhua +zl10036 +zl10039 +zl10353 +zl6100 +zlib +zr36016 +zr36050 +zr36060 +zr36067 +zr364xx +zram +zte_ev --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/amd64/lowlatency +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/amd64/lowlatency @@ -0,0 +1,17429 @@ +EXPORT_SYMBOL arch/x86/kvm/kvm 0x16295374 kvm_read_guest_atomic +EXPORT_SYMBOL arch/x86/kvm/kvm 0x711f622d kvm_cpu_has_pending_timer +EXPORT_SYMBOL crypto/gf128mul 0x0c2f123f gf128mul_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x1068004b gf128mul_bbe +EXPORT_SYMBOL crypto/gf128mul 0x2f2889a0 gf128mul_init_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x384ef9ce gf128mul_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x56af0dbd gf128mul_x_ble +EXPORT_SYMBOL crypto/gf128mul 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL crypto/gf128mul 0xbd17a0df gf128mul_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0xc0890413 gf128mul_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/acpi/video 0x4123494d acpi_video_get_edid +EXPORT_SYMBOL drivers/acpi/video 0x7a45377b acpi_video_unregister +EXPORT_SYMBOL drivers/acpi/video 0x8826c13b acpi_video_register +EXPORT_SYMBOL drivers/atm/suni 0x84e0fd73 suni_init +EXPORT_SYMBOL drivers/atm/uPD98402 0x5e74b426 uPD98402_init +EXPORT_SYMBOL drivers/bcma/bcma 0x68cba379 bcma_core_dma_translation +EXPORT_SYMBOL drivers/block/drbd/drbd 0x127a5901 drbd_set_st_err_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x35131b36 drbd_role_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x7730f22d drbd_conn_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0xaf27bebf drbd_disk_str +EXPORT_SYMBOL drivers/block/paride/paride 0x03a8ca63 pi_read_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x1c89b698 paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0x20030a5f pi_write_block +EXPORT_SYMBOL drivers/block/paride/paride 0x22b469cd pi_disconnect +EXPORT_SYMBOL drivers/block/paride/paride 0x6855032b pi_release +EXPORT_SYMBOL drivers/block/paride/paride 0x798fbeee pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0x7e3a393f pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xa7acd1e4 pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0xaa425cb7 pi_write_regr +EXPORT_SYMBOL drivers/block/paride/paride 0xb65c6a41 pi_init +EXPORT_SYMBOL drivers/block/paride/paride 0xbf4a1597 pi_read_block +EXPORT_SYMBOL drivers/block/paride/paride 0xe65ed52e paride_unregister +EXPORT_SYMBOL drivers/char/nvram 0x0f28cb91 nvram_read_byte +EXPORT_SYMBOL drivers/char/nvram 0x17ff2c1d __nvram_read_byte +EXPORT_SYMBOL drivers/char/nvram 0x2adec1e0 __nvram_check_checksum +EXPORT_SYMBOL drivers/char/nvram 0x7da28f12 nvram_check_checksum +EXPORT_SYMBOL drivers/char/nvram 0x9ce3f83f nvram_write_byte +EXPORT_SYMBOL drivers/char/nvram 0xa8813189 __nvram_write_byte +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x2daaefac dw_dma_cyclic_free +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x30c40757 dw_dma_cyclic_stop +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xbb585b9c dw_dma_cyclic_start +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xdfdcc74c dw_dma_cyclic_prep +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xe913a3a2 dw_dma_get_dst_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xeffae7e1 dw_dma_get_src_addr +EXPORT_SYMBOL drivers/dma/ioat/ioatdma 0x0ff33d83 ioat_dma_setup_interrupts +EXPORT_SYMBOL drivers/edac/edac_core 0x583bd88f edac_mc_find +EXPORT_SYMBOL drivers/firewire/firewire-core 0x04d0f641 fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0e4bbb59 fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0f7d6af8 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x16e91e21 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0x17025fec fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1a45c5f0 fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1d3432b4 fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2b7a8212 fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3bdb67d7 fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3c56ef91 fw_workqueue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3f6cf9b5 fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4dcb7a59 fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x615e60bc fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0x645b715f fw_core_add_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x65c9438b fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6d4f7527 fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9011f404 fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x90863005 fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0x933c7692 fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x97dedd8c fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9d5c00af fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9df81301 fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa880bfaa fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa8de14e1 fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc1b09246 fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc303c075 fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd4837fd0 fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0xda18ec89 fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0xdc52ee05 fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xdc819441 fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe8b689f2 fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xec4ba70e fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf472f67e fw_bus_type +EXPORT_SYMBOL drivers/firmware/dcdbas 0xa75079d6 dcdbas_smi_request +EXPORT_SYMBOL drivers/fmc/fmc 0x208ca412 fmc_reprogram +EXPORT_SYMBOL drivers/fmc/fmc 0x515868e6 fmc_device_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0x66d6d53c fmc_driver_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0x89ba34fc fmc_driver_register +EXPORT_SYMBOL drivers/fmc/fmc 0x8cba4f70 fmc_show_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xca6cc31f fmc_device_unregister_n +EXPORT_SYMBOL drivers/fmc/fmc 0xdf7a55f0 fmc_scan_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xe7a0e638 fmc_find_sdb_device +EXPORT_SYMBOL drivers/fmc/fmc 0xeb8df9fc fmc_device_register +EXPORT_SYMBOL drivers/fmc/fmc 0xedf6ecd5 fmc_device_register_n +EXPORT_SYMBOL drivers/fmc/fmc 0xfa159d09 fmc_free_sdb_tree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00025916 drm_mode_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0060df6c drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00667d8a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x010ea40e drm_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0x026c0d6b drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05c2b8c7 drm_addbufs_agp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0672d9bb drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x067f94e2 drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x08ab9ffb drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x09f70021 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ae4b94c drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0dbd91cc drm_rmmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0e29b4db drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0eae1a03 drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0eaeceee drm_mode_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fc5055d drm_agp_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10001689 drm_prime_destroy_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12c6276a drm_buffer_read_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13d3adbb drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x142b8b35 drm_buffer_copy_from_user +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a9a178 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14cb6d5e drm_ati_pcigart_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16b1063f drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16d23240 drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x189f6401 drm_mm_debug_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x18c3b056 drm_select_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x194eadaa drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19e44324 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19e4b11e drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a770ac3 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1aad477b drm_compat_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1b3e7399 drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1bfa2f99 drm_agp_bind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1eafbde6 drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1faa03ec drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20645642 drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20b37c60 drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2165aa39 drm_get_pci_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x217a3ed4 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21ca56c2 drm_global_mutex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22332ea7 drm_unplug_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x241e2b2b drm_rmmap_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a942ab2 drm_mm_insert_node_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d80be4d drm_mm_init_scan +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7a4300 drm_rgb_quant_range_selectable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3025084c drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0x31a79a52 drm_connector_unplug_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x32f48105 drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3558dd1f drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36f91ef3 drm_mm_clean +EXPORT_SYMBOL drivers/gpu/drm/drm 0x376618f7 drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x37a96211 drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x37c85221 drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38a4f7ae drm_format_num_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ac1fef9 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ae7b2d0 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b561a16 drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b9d009a drm_format_plane_cpp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d4b8108 drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eb37b9d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x407d5d58 drm_sysfs_connector_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x426372d9 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43384bd9 drm_buffer_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x45041611 drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0x478f8980 drm_addmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x47fe9843 drm_edid_to_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x498dcb5e drm_ut_debug_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49fabf0d drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4a4e75fd drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4a997db8 drm_vblank_post_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c511235 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ea1f5a2 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50a124ff drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e28c07 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0x515b0474 drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x526d175d drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x526f6f71 drm_rect_calc_hscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x52e71803 drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x53de423d drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x542134bd drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54af430f drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55287027 drm_pci_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56341a52 drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56b97cbe drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56d16bc3 drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57e9771e drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x58e1cd60 drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0x593b1a97 drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x598eee83 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5b2725cf drm_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5bde292c drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d7318dc drm_global_item_ref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d9c46c2 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e3fcec0 drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6090be61 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x629c05e1 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6362338f drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6371f39f drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0x64c01862 drm_core_reclaim_buffers +EXPORT_SYMBOL drivers/gpu/drm/drm 0x64ce7951 drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x659dc3fb drm_get_last_vbltimestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66803841 drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0x672825f7 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x676e1d46 drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x68b7fdac drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6900d335 drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b6d7375 drm_timestamp_precision +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cc3c29e drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cee2e42 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e88503b drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f08acc3 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f50637f drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x721109f7 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x72730419 drm_platform_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x729e8cff drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x736b140d drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x73c167be drm_mode_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74d11b99 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75fed439 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x77064c2f drm_agp_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7806224f drm_idlelock_take +EXPORT_SYMBOL drivers/gpu/drm/drm 0x783e4ed1 drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x79f65983 drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a4e7297 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7b6b30c9 drm_pci_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7be04cff drm_framebuffer_reference +EXPORT_SYMBOL drivers/gpu/drm/drm 0x809e7cb7 drm_idlelock_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81113835 drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81ba930c drm_mm_init_scan_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81e773e4 drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x82049863 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x82297ab5 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0x82b0b281 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x843a157a drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x853ad3ce drm_get_connector_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x88a5cb6b drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x88cc5945 drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8cc8ad58 drm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d2ae46d drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8de13715 drm_format_vert_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dfb019d drm_buffer_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8eff9111 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f7df3a7 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x901c3a39 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9101c487 drm_agp_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x92b1bb35 drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x92b3da0c drm_agp_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x94acae6a drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x961d4444 drm_core_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9745d638 drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0x975fb498 drm_bridge_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x98442432 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9972db48 drm_rect_calc_vscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9cac2710 drm_getsarea +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d10ca32 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d70fc2a drm_rnodes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e83b5e2 drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9eccfe56 drm_mode_hsync +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1f4e9e6 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa21e885a drm_mm_dump_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa28078b2 drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa321c64e drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3a02e8c drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3dba259 drm_core_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4147356 drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5dbd572 drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6902f65 drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6fffe5d drm_crtc_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8a22818 drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa9210b8f drm_mode_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa9566d39 drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa96acfcb drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa9d11f41 drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa8512a1 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad00eff2 drm_framebuffer_unreference +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad92edc5 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xadf85835 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaf3394dc drm_ati_pcigart_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafb0cb6f drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafd51394 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb015d370 drm_agp_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb029d2ad drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb2006a2a drm_pci_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb3907448 drm_pci_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5540008 drm_global_item_unref +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb572a9f0 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb69d6566 drm_mode_group_init_legacy_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb95beb55 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xba180522 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xba1bd88f drm_vblank_pre_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbcb2cd14 drm_sysfs_connector_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe001c53 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbfc07165 drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc050d4a6 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc10b4e66 drm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc16bb194 drm_pcie_get_speed_cap_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc1e039b9 drm_agp_unbind +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc39b426b drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc3acb5cb drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc3ea6f21 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4000f9f drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc414c422 drm_vblank_offdelay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8d04ce1 drm_vblank_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc9ab42f6 drm_agp_bind_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca45efbc drm_format_horz_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca93ede3 drm_vma_offset_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcc529528 drm_mode_connector_detach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcc7445ea drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd0fc417 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0xce43e2dd drm_core_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf1780e0 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf1b20e5 drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd0787aef drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd149bbc2 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1592d68 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2335101 drm_fb_get_bpp_depth +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd23b9b11 drm_get_encoder_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd3c1b9c8 drm_prime_init_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd55aea8d drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd661010d drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd7f9f6a5 drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd85e60af drm_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd961efd3 drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb28056c drm_mode_create_dirty_info_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbb5a9f5 drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd92c91a drm_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe1737c0f drm_platform_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe1e1b663 drm_bridge_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe21d7b8e drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2ef97e4 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe320fb11 drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe471846f drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe5dce6e7 drm_addbufs_pci +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6f46e6e drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7197773 drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe9e6aa8f drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec0a5810 drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed6fe95e drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xef4dfb83 drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefdf9b69 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf01ba866 drm_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf06d06b0 drm_calc_vbltimestamp_from_scanoutpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf08d712a drm_mode_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf29985bf drm_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf446a0e2 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf474ecd5 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf49c225d drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf8ad4cdb drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfaa23757 drm_dev_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb497216 drm_mm_insert_node_in_range_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfcc78ea1 drm_agp_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd063935 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd25cf7e drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe4a68c7 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff01cd18 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffc6c87a drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x027025de drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x04a5998d drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x07ee4ec7 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x098e47d2 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f96ec70 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x12aa198d drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x163251c8 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1a7a1b82 drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1d9ec818 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x234ad2ec drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2fa5fed7 i2c_dp_aux_add_bus +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34871adf drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x38d72889 drm_fb_helper_restore_fbdev_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4549973c drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4b3424d3 drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x56d808c7 drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x56df6dce drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5cadc34f drm_fb_helper_fill_fix +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x63d56e1a drm_fb_helper_fill_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x64d9b72b drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7003fcea drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x711a004a drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84e924ba drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x863ebc98 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x88d9c1b0 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x90ef9277 drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9c7ef8ea drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa77858bb drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa7833e54 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa875e375 drm_fb_helper_single_add_all_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8d6809d drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb11bb682 drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb1fbb4db drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc23b4376 drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc2c13194 drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd81c8451 drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd9bd3fda drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdb81580c drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe4f56079 drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf4999447 drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x37ca05fe drm_usb_exit +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x4a7712bf drm_usb_init +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x6a9f7dc5 drm_get_usb_dev +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0168b2d0 ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x04531570 ttm_mem_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0527ac5e ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x05cf0f84 ttm_bo_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x061619aa ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0a37710d ttm_lock_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0bb9104e ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0d05065d ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1218a88f ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x12a788f6 ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1725d83f ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x18fef93f ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1a56b2ec ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x20c6d403 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2105e18d ttm_vt_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2212d197 ttm_agp_tt_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x28a39010 ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x28ebb666 ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2a479107 ttm_agp_tt_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b54aa9a ttm_object_file_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x32753458 ttm_vt_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4080f529 ttm_mem_io_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x41308ecd ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x482966de ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4830780a ttm_bo_add_to_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x485a5bc0 ttm_ref_object_add +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4e8dd264 ttm_bo_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4e944bd9 ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4efa8337 ttm_prime_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x506ae74a ttm_mem_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x53d02d41 ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x564e1aee ttm_bo_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6052860c ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6210557f ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x62a20df4 ttm_mem_io_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x62c10e63 ttm_mem_io_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x63909b63 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x68655190 ttm_mem_io_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x699e40f3 ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6a1d1231 ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6b797c25 ttm_read_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6eda8ee8 ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x718a56bb ttm_write_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x770fb1b8 ttm_suspend_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x77ab64b4 ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80d86f0e ttm_object_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8568be30 ttm_write_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8658ef47 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x880a15ad ttm_base_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94739062 ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94894449 ttm_base_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94b01e2a ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9561d4cf ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x998e45c0 ttm_ref_object_base_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9b5150c2 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9baa44f0 ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9d3eab45 ttm_suspend_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa1b06726 ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa287b871 ttm_fbdev_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa57b4b09 ttm_bo_del_sub_from_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaaafd88a ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xada3ccfd ttm_bo_synccpu_write_grab +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb27bf87f ttm_object_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb2d4d002 ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc4d4618d ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcc1a1226 ttm_read_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xce6e43a8 ttm_base_object_lookup_for_ref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcf7b186c ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd8edb115 ttm_base_object_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdfca8551 ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe194b245 ttm_agp_tt_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe2fcafc2 ttm_bo_synccpu_write_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe62a90a8 ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe87dc3b3 ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xee3a2edb ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfbc2c5ec ttm_object_file_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xff476045 ttm_bo_kunmap +EXPORT_SYMBOL drivers/hv/hv_vmbus 0x3affaceb vmbus_sendpacket +EXPORT_SYMBOL drivers/hv/hv_vmbus 0x9fb1b2ef vmbus_recvpacket +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x0903c239 vid_from_reg +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0xef1c781c vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x0e2a6864 sch56xx_read_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x0f5877d4 sch56xx_read_virtual_reg16 +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x34257f35 sch56xx_watchdog_unregister +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xb63dd366 sch56xx_watchdog_register +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xe5022f95 sch56xx_read_virtual_reg12 +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xed1d2a08 sch56xx_write_virtual_reg +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x15fe6191 i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x412a2ec3 i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x6508d9fe i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x26f85489 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x413af1d2 i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0xd2d720c3 amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xf0a871ea st_accel_common_remove +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xf8a2b542 st_accel_common_probe +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x4ddc2790 hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x64c76025 hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xa7c55563 hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xbaf860d3 hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xd607275f hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x4daa589c hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xe835b58c hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x00c674c8 st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x018e0965 st_sensors_sysfs_get_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x0cfe9c22 st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x25fb0fdb st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x4845075d st_sensors_get_buffer_element +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x61f071f5 st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x7153b8fe st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x7c810664 st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x8136cf2a st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x92031737 st_sensors_sysfs_set_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xabb8f953 st_sensors_check_device_support +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd9edd396 st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xe47e2867 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xe676377c st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xefbd0236 st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0xf1951341 st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0x15567706 st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x4fbbd8e4 st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x98012d10 st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x7c110452 adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xde03e4e8 adis_enable_irq +EXPORT_SYMBOL drivers/iio/industrialio 0x08c8e4fe iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x1a573b5c iio_buffer_register +EXPORT_SYMBOL drivers/iio/industrialio 0x1b994d68 iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0x25ff4389 iio_buffer_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x329247bd iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x47a205e1 iio_buffer_store_enable +EXPORT_SYMBOL drivers/iio/industrialio 0x57a044ca iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0x5d5df98f iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0x66cd0d90 iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x735ad604 iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0x7a320901 iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0x7d3e1765 iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0x89baa22e iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0x90787e82 iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0x9af782cd iio_buffer_show_enable +EXPORT_SYMBOL drivers/iio/industrialio 0x9e9495e0 iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0xb4e430f0 iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0xcac0e900 iio_buffer_read_length +EXPORT_SYMBOL drivers/iio/industrialio 0xd88d3d65 iio_buffer_write_length +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xe91bf141 iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0xe9cb0567 iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0xed174b50 iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xf88c6f81 iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x2aa99342 iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x2bdd9cc5 iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x00dcde4e iio_kfifo_free +EXPORT_SYMBOL drivers/iio/kfifo_buf 0xb0359d5a iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x44d24cae st_magn_common_probe +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x4d6ba670 st_magn_common_remove +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x23d2fd58 st_press_common_remove +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x4454f9fd st_press_common_probe +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x049ace30 rdma_addr_find_smac_by_sgid +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x04b8b6d7 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1c3c0ad3 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x2107de5f rdma_addr_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x273f4cca rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x446fd7c9 rdma_addr_find_dmac_by_grh +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x6f6ee97c rdma_addr_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0xba815f3e rdma_copy_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0xf19ab26c rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x178bd3f6 ib_send_cm_apr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x2a7e805b ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x34c91742 ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x43c4c3ef ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x6759b3e5 ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x89aaf164 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9b5a3c09 ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9bb524ad ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xa2b3bbb6 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xb3e8cb52 ib_send_cm_lap +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xb6861962 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xccea0432 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xcec7eeff ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xdb51e153 ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xeaff564a ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xed04daa0 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xf880e58f ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x016f4eb9 ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06c82fcf mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0868d51b ib_get_dma_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c1b9ac1 ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0fbbd48d ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x10502c93 ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14f84918 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x171f99f1 ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x17b6b74a ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x17bfece7 ib_destroy_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e491a04 ib_unmap_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1fda4a92 ib_init_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2139218e ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x21d162d3 ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22f3cf93 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x24dc9a89 ib_fmr_pool_unmap +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ad7829c ib_create_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2c1d3342 ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ed6e386 ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ef3e365 ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x32130e2c ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x33c74c39 ib_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x344387ac ib_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x35555196 ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3958a613 ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x39ccfe47 ib_alloc_fast_reg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3f1c90a6 ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x41d3a724 ib_destroy_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x43726f96 ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x44591872 ib_destroy_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x44cba7d5 ibnl_add_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x45ae5c6d ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x48d05e91 ib_free_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4a872210 ib_create_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4c679c36 ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4d527537 ib_destroy_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50dbc447 ib_flush_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x528b3228 ib_rereg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5bb61b78 ib_resolve_eth_l2_attrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5d24555c ib_get_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5dbf8142 rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61d26835 ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x688505e0 ib_dealloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x694509de ib_alloc_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x69f11152 ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6c3a8943 ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6c75fb5c ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e030e26 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8424bf5b ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x851277c9 ib_modify_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86a70ac5 ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86fd7454 ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8b749666 ib_query_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8ebeb64f ib_query_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x91f9e86c ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x92a054d5 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9722aebf ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9772ac06 ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9d6b79ff ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa07533aa ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa17823d8 ib_get_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa432baf6 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xab33d1fa ib_reg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac217df9 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xad59c505 ib_fmr_pool_map_phys +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae2e7b86 ib_alloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb09a76b9 ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb3bd2179 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb4b05b77 ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb5a74297 ib_find_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb64f2b04 ib_alloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb6d3961b ib_dealloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc32b59ff ib_destroy_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc38be268 ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc67f14a5 ibnl_remove_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc963877a ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcd4282b6 ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd427bd4f ib_dealloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd5af49b6 ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdb894c2c ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdfe6f9ab ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe27b5564 ib_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe767a5e3 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf0a18da8 ib_create_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf0da7063 ib_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf25c0f38 ib_dereg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf2723c00 ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf7ced01b ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfc150956 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfea4cfde ib_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x0156eead ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x02b1d074 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x0cd1faf5 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x4382cec1 ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x5a383715 ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6f077fcf ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x70c9eee5 ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7b5d4b7a ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x8422cd24 ib_register_mad_snoop +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x946d5d27 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xa23c2256 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xb601d0a0 ib_process_mad_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xbf58132f ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xe811797a ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xf2e991a6 ib_redirect_mad_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x22f07253 ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x2fd0e42f ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x542931b6 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x576fdbac ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xc1955a3f ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xc477c5fb ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xcd2898e5 ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xcd3348fa ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xd0bd72b1 ib_init_ah_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xddc330e7 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xf80685cc ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xf96e5705 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2569d757 ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x52a6ce77 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7971c00e ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe350f2aa ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x1cdca1ec iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x2f17f4b0 iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x8e36def8 iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xa50137b6 iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xa9e041ae iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xbb00a12a iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xc8755aa3 iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf536e0f3 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x0c551812 rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1e699a3f rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x23f852be rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x2e3019ee rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x33956675 rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3d63bf0a rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4367f29d rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4546ad36 rdma_set_ib_paths +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4a63c097 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x5bef9b93 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x705c0975 rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x72659b71 rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x765ab638 rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x87cf396a rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x8961d577 rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x9469b4a8 rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xcdec6270 rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xce30986f rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd0f9231a rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd8c03a5e rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xefb57f9f rdma_leave_multicast +EXPORT_SYMBOL drivers/input/gameport/gameport 0x4e3c304b gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0x6ee3e934 gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x8295ca7a gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x8318c956 gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0x939391a8 __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0xc2668c27 __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xc91362dc gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0xde56b51c gameport_start_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0xdef12f74 gameport_close +EXPORT_SYMBOL drivers/input/input-polldev 0x51d59773 input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x56305a97 input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x6ede4038 input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xe1b5c258 input_unregister_polled_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0xe1a7330d matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x1fe94d23 ad714x_remove +EXPORT_SYMBOL drivers/input/misc/ad714x 0x54ac2786 ad714x_enable +EXPORT_SYMBOL drivers/input/misc/ad714x 0x58a9d1d8 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/ad714x 0x6ac6b0f6 ad714x_disable +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x19978c17 cma3000_init +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x892d76b2 cma3000_resume +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x89d9444e cma3000_exit +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xca3f100a cma3000_suspend +EXPORT_SYMBOL drivers/input/sparse-keymap 0x5ce016de sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0x80707612 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0xa6006177 sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0xb4367123 sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0xdc784f8a sparse_keymap_free +EXPORT_SYMBOL drivers/input/sparse-keymap 0xdd77c73a sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x97f83edf ad7879_remove +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0xab94f451 ad7879_pm_ops +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0xffc68510 ad7879_probe +EXPORT_SYMBOL drivers/iommu/amd_iommu_v2 0x0093429d amd_iommu_bind_pasid +EXPORT_SYMBOL drivers/iommu/amd_iommu_v2 0x5fd99974 amd_iommu_set_invalidate_ctx_cb +EXPORT_SYMBOL drivers/iommu/amd_iommu_v2 0x6604e8b1 amd_iommu_free_device +EXPORT_SYMBOL drivers/iommu/amd_iommu_v2 0xc09fd447 amd_iommu_set_invalid_ppr_cb +EXPORT_SYMBOL drivers/iommu/amd_iommu_v2 0xddbccb63 amd_iommu_unbind_pasid +EXPORT_SYMBOL drivers/iommu/amd_iommu_v2 0xecad648b amd_iommu_init_device +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x04403fcf unregister_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x14f2aa5a capi20_get_version +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x15fdde7f detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2340bd1c capi_ctr_suspend_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2b8eab1f capilib_free_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2baa6586 capilib_new_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x30247a95 capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x31c24aa4 capi20_isinstalled +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x47d3fc51 capi_info2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x50b33ca4 capi_cmsg2message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6057c6f3 capi_message2cmsg +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x62e32d43 capilib_data_b3_conf +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6db4f115 capi20_register +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6fe4b5c3 capi20_put_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x71e8d5ba capilib_data_b3_req +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7292ab34 cdebbuf_free +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x72a25a72 capi_cmsg2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7a33596c capi20_get_serial +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7e6f1307 capi20_get_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x8f699913 capilib_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9c1f8745 capi20_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9f823278 register_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xa092b68f capi_ctr_down +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xaa165d27 capilib_release_appl +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb19fda8d capi_cmd2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb60e5e5f capi_cmsg_header +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xcd1cd620 capi_ctr_resume_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xcdea67e7 capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe19a11ac capi20_get_profile +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xed061606 capi20_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xf501f780 attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xfd552f7a capi_message2str +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x082e2b0b b1_parse_version +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x0d6694e6 b1_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x107a6bda b1_alloc_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x2af3adfa b1_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x3de80742 b1_getrevision +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x6272e1b2 avmcard_dma_free +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x62765bd2 b1_load_t4file +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x69413200 b1_free_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x8254fce1 b1_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x85f09690 b1_irq_table +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x9423678f b1_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x96678269 b1_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x9b4f68f2 b1_load_config +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xc75c6875 b1ctl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xdfd28376 b1_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xecbe3f6a b1_loaded +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xf20ce1be avmcard_dma_alloc +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xfa10fee4 b1_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x1bc92181 b1dma_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x23d67a19 b1dma_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x3e203a88 t1pci_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x57998561 b1dma_reset +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x7b68824d b1pciv4_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xaa37596b b1dmactl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xc8fde99a b1dma_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xc916c882 b1dma_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xd058adb2 b1dma_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xd6f9f1ea b1dma_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0x29562993 b1pcmcia_delcard +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xaec3240e b1pcmcia_addcard_m1 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xea620116 b1pcmcia_addcard_m2 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xf14bf8b1 b1pcmcia_addcard_b1 +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x2974ead1 DIVA_DIDD_Read +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x7ab59853 proc_net_eicon +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xad7694db mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xb0dafc9b mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xeb85c713 mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xf72faa1e mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x72189368 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0xf21f8b9a mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x07f4f2ce hisax_unregister +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x083da4e8 hisax_init_pcmcia +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x148f0c99 FsmFree +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x7f29ce36 FsmInitTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x93a64734 FsmChangeState +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x9df0cd27 FsmEvent +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xe227344e FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xee93522c hisax_register +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xf0a16657 FsmNew +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xfc27303b HiSax_closecard +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xff2db2cf FsmDelTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x2636e122 isac_init +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x2f6db970 isacsx_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x3f3b323a isac_d_l2l1 +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xa5212b36 isac_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xb8a18f0c isac_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xe9111f99 isacsx_setup +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xa92637d1 isdn_ppp_unregister_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xeb610880 isdn_ppp_register_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xf2a06f74 register_isdn +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xfa06820f isdn_register_divert +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x3b71e4fc isdnhdlc_decode +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x59cc8a7e isdnhdlc_out_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x8ee38862 isdnhdlc_rcv_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0xfd9d4c09 isdnhdlc_encode +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x03fdc501 bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x115954bf mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x16d9656e recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x17cab7cb mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x1da769a8 queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x200a6615 bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x21ff713b recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2348cc3c mISDN_FsmFree +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2c3de5df recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2dacecff mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2ecc60b3 mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x45f37b69 recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x54451388 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x57e5d23a mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x614ede30 mISDN_FsmAddTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8441c758 mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8a4e99fb mISDN_clock_update +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x95f619f8 mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x96309324 mISDN_FsmDelTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb62c9622 get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xba4ad84d dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbc8ac05e create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc98c66c7 mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd285995f mISDN_clock_get +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd2f39374 recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd5145151 mISDN_FsmEvent +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe5794bfa mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe87943cf mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xeacdd485 get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xee2982bc mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf9e7832f mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xfc941dfa mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x01087af0 mISDN_dsp_element_unregister +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x60721da7 dsp_audio_law_to_s32 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xa215f1b2 dsp_audio_s16_to_law +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xb98308d8 mISDN_dsp_element_register +EXPORT_SYMBOL drivers/md/bcache/bcache 0x05c6f30f __closure_lock +EXPORT_SYMBOL drivers/md/bcache/bcache 0x0e4f21d1 closure_sub +EXPORT_SYMBOL drivers/md/bcache/bcache 0x6cf3221c closure_sync +EXPORT_SYMBOL drivers/md/bcache/bcache 0xacb0b4e2 closure_put +EXPORT_SYMBOL drivers/md/bcache/bcache 0xc1433b5b closure_wait +EXPORT_SYMBOL drivers/md/bcache/bcache 0xe3c17af1 __closure_wake_up +EXPORT_SYMBOL drivers/md/bcache/bcache 0xff20aad6 closure_trylock +EXPORT_SYMBOL drivers/md/dm-log 0xaa48ce79 dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0xac679f58 dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0xb73129e1 dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-log 0xec4ec91c dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x281b675f dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0x39fb3fdf dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x46b07d2e dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x9a6b05d2 dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0xaa7db33c dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0xb476c420 dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/raid456 0x8cd1b640 raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x0904fbea flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x0cb12fde flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x118ed23d flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x33cf9cd2 flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x3cc6db7c flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x64b1d31f flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xa856c4b0 flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xb67716ed flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xb67d1ae0 flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xb794e8a3 flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xd20ad0bd flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xe3e6d478 flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xe842293d flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x495e4b0c btcx_calc_skips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x76a096cb btcx_riscmem_alloc +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xad2fe38b btcx_sort_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xc368f8e6 btcx_align +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xcda0ded2 btcx_screen_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xdfd207e1 btcx_riscmem_free +EXPORT_SYMBOL drivers/media/common/cx2341x 0x1ca0c084 cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0x2403e596 cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0x2f25eee2 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0x3db8be82 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cx2341x 0x5b88faf6 cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0x95f1f760 cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0xa8d5c083 cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc184ec1e cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf76ce95 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf8b77a4 cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xfe38ae39 cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0xf624016b cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x4808cec6 tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/common/tveeprom 0xa83243d4 tveeprom_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x021494e4 dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x040e5021 dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0774c8ce dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0c651bb2 dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x17523ce7 dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1a93569e dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1aa9a106 dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2b017ffa dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2f61c704 dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x398aab01 dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x47a3171d dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5467871f dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5c2443fb dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x64d6d7a9 dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x695508e8 dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x71abbe06 dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x731d682c dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x74a3ce05 dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x74a5a698 dvb_filter_pes2ts_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80e3832d dvb_filter_get_ac3info +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x85ab6251 dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x88602428 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x887caf4f dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8d0df2a1 dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x93d66b5e dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x957d49af dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa05dd3e8 dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa2a65e70 dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xac4ca1b0 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb3877ac7 dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb7df9dbd dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb9e14e29 dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xca4965f1 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd03c012d dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd68a099e timeval_usec_diff +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xda6318d2 dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe15697bd dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe52c9c49 dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe5ae8707 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe7e8dbbb dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xea68b0fe dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xefcef46b dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf826deb0 dvb_filter_pes2ts +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfaa4891b dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/a8293 0xb029a385 a8293_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9013 0x66f3893c af9013_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9033 0x2c4ceccd af9033_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0x81c1b726 atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x18ee800c au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x4a999b3c au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x6917f609 au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x730e52c6 au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x8e9ddaf2 au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x94d738f6 au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xab4d4200 au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xe1613bfb au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xeb037856 au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0x08273ab8 au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0xe1fd4ae5 bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0xcb1c72da cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0xa9cdea90 cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0x8f64cf34 cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x48eb2a40 cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0xf7fb751b cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0x711a33e0 cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x8222b2cb cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xc3921cbb cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0x4295c81a cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x1a372997 dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x7321217b dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x8ec49ad3 dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xc6f5b5b7 dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xf66b4b92 dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x409c401b dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x41f32d4d dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x46219c30 dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x4662c2d6 dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x4878626b dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x6adfdb6c dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x8105b993 dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x8749ec7c dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xaf9a5f73 dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xc85bdfc8 dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xe1f14e53 dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xe775f361 dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xf50ae0a2 dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xf610a57c dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xfa48d753 dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0xdb9a2d0c dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x1509a66b dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x5805d887 dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x70d743ca dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x919ef7be dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xe755cb89 dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xf6daacdf dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xa484d6a6 dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xb8ed7481 dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xbbb5933f dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xbc857d2e dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x028f7507 dib7090_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x182294f4 dib7000pc_detection +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x1cf124c2 dib7000p_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x22c5ab4a dib7000p_set_agc1_min +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x2a1992ac dib7000p_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x4940cc3a dib7000p_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x6e4ab754 dib7090_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x9d7db7db dib7000p_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x9f838e2e dib7000p_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xa49f4172 dib7000p_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xad6cb454 dib7000p_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xbfc4a177 dib7090_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xcc5d0a75 dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xd4933f90 dib7000p_get_agc_values +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xdfb1a3d3 dib7000p_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xeced49c8 dib7090_slave_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x05c95709 dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x074c7854 dib8000_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x17a1e377 dib8000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x269169b4 dib8000_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x2f12ff12 dib8000_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x4fc39e76 dib8000_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x58fac472 dib8000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x88da6dff dib8000_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x8dfeaeec dib8000_remove_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x8ed2bae1 dib8000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x99ebcdfd dib8000_pwm_agc_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x9a5336b5 dib8096p_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa1aa566d dib8000_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xb0694034 dib8000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xcf4826ba dib8000_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xd5790fdb dib8096p_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xd6b6ed74 dib8000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xecd3934a dib8090p_get_dc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xf9759a88 dib8000_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x93a457a9 dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xad3ad91c systime +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xb6f7b96b dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xc97f8297 dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xe45c37fd dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xeb2a3a76 dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x06030859 drxd_config_i2c +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x99b293f2 drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0xce1ce273 drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0x82387dbb ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0x8e05f136 dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0x6850aa25 ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0xa7a77340 isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0x38f07b59 isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0xc7ef5232 isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/it913x-fe 0x6dec6f0b it913x_fe_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0xbdcbe271 itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0x92a08265 ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0x1bb203eb l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0xa37e2ec0 lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0xf96476e0 lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0x64114cd8 lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0xd718bbf4 lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x1e3851af lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x44538368 lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0xd2a93c03 lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0xce7f5c0c m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0xca1ac101 mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0xdd1257cd mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0xb8ac7a7c mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0xa504d074 mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0x4fa9992d nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0xe0281098 nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0xced375ca or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0x3dbcb17d or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0x178e521d rtl2830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0x728e7924 rtl2830_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2832 0x274df834 rtl2832_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0x646e494c s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0x182d820d s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x05a0a29a s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x50241539 s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0x5b2dab1c s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0xcca7787e si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0xcbaf643d sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0x53339de6 sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0x161389d6 stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0x4a4e6e93 stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0x57271251 stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0x266cc06a stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0xba5120d4 stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0xbd2ae753 stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x4a66b014 stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x92a59029 stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0x9ec7e356 stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x24d1b34a stv090x_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0xa3c2d3c0 stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0xf8e17990 stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0xae3d7d6d stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0x4f2440e4 tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0x6f607b7b tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0x74d19aac tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x41263fd6 tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x914aacc2 tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10071 0xc82b41ac tda10071_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0x8a911005 tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0x9535b3e3 tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0xca0645e7 tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0x48cf3491 tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0x38af17d8 tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0xd28725e8 ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0xd05fe5de tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0x7fb99606 ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0xf7f5338a ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0x6ee2714b zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0xc0debe76 zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0x07ecde20 zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x03657a9e flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x2db6d1e4 flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x5d033563 flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x5fd75f59 flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x947f6a0a flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xaf3ae5d3 flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xe16e94ee flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x63264d83 bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x99938551 bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xc7b3871e bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xd5d0bdef bt878_num +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xe5fb32cc bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x11dc4b6d bttv_gpio_enable +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x68a7f8e4 bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x73db6ec3 bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x9cc2edd2 bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x43b57bd9 dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x5eddd6e6 dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x7a793e12 read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xa32c08f4 dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xa9bf2226 rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xce1e28d7 dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe6058e27 dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe8cc1ec1 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe94b8c9c dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xf724438f write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0x611be0de dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x3149a1a3 cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x6f2a87ae cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x8485f5b7 cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xb54f1029 cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xf0f67e27 cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x559bfc59 altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x63741fdc altera_pid_feed_control +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x9247b72f altera_hw_filt_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x9dcf7ca9 altera_hw_filt_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x784853c3 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x7f71273e cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x939eafd5 cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xa7234673 cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xaf846122 cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xba18a466 cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xc5d38741 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xfa5b1b0e cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x3388b7a3 vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0xe488ee23 vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x008c5e27 cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x4e2eb829 cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x9ba09671 cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x9e4ad050 cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x2038c9b1 cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x43c00623 cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x6d2eda4e cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x8d2b88fe cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xa9f20b45 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xb3120ecc cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x015d0ec8 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x05b65be8 cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1d73f6ae cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x35364ee3 cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4216fc84 cx88_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x43cb0ce5 cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x50458330 cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x53969084 cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x612603b7 cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6141c8c5 cx88_tuner_callback +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x65cdbb71 cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6c450560 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6e757c08 cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7642ed3c cx88_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7cd23a2e cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x904b8696 cx88_audio_thread +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x977c2376 cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x9e9f3f88 cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xac9ac492 cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xaee057a1 cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xb7b56932 cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd20145c2 cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xe23db79f cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xe4f91c68 cx88_risc_stopper +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf13c2d9d cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf569043d cx88_free_buffer +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x04ec3348 ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x09f0fcf2 ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x0dd866a0 ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x13ae76de ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x29a209f5 ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x36074a3f ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x597309f0 ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x6cba1745 ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x73c06373 ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x88d417be ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xa3b612dd ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xad38261d ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xbb692cb3 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc1af9dff ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xcbaff908 ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xd9404d8f ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xffeb6c7d ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x04e83446 saa7134_tuner_callback +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1211df5d saa7134_devlist +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x21c66ae3 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x31688eae saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x3d3a7520 saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x4cfe247e saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x56e0f6f3 saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x73039031 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x76583b20 saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x9d0cac05 saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xa0ac1f80 saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xb160e395 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xcf2761c9 saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xde1ebfa8 saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xe87fcb42 saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x0e1bde0e ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xc3e4c127 ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x689efc26 videocodec_unregister +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x886b8d0e videocodec_detach +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x8c95fc3e videocodec_attach +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0xd76bd998 videocodec_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x05eec7e3 soc_camera_lock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x1227b959 soc_camera_host_unregister +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x1cdb6126 soc_camera_apply_board_flags +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x2e6bbfca soc_camera_host_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x41840713 soc_camera_power_on +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x443927fe soc_camera_power_off +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xae14c1c9 soc_camera_unlock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xc19971a9 soc_camera_power_init +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xdc072270 soc_camera_xlate_by_fourcc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x25c52d97 soc_mbus_samples_per_pixel +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x2863728e soc_mbus_image_size +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x5f3e3558 soc_mbus_bytes_per_line +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xa9546115 soc_mbus_find_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xc8b28da5 soc_mbus_config_compatible +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xfe2c3a07 soc_mbus_get_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x27362194 soc_camera_client_scale +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x3294ab1c soc_camera_client_s_crop +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x4631ee81 soc_camera_calc_client_output +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x593c4c70 soc_camera_client_g_rect +EXPORT_SYMBOL drivers/media/radio/tea575x 0x02df35c2 snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0x14430644 snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0x75564198 snd_tea575x_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xca9d39f0 snd_tea575x_exit +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x04dca738 lirc_unregister_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x1c438796 lirc_dev_fop_open +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x3055de01 lirc_dev_fop_ioctl +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x91ef644a lirc_dev_fop_write +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xa3a52aab lirc_register_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xa78e35c4 lirc_get_pdata +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xad803cce lirc_dev_fop_poll +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xc8aabf7e lirc_dev_fop_close +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xf643daee lirc_dev_fop_read +EXPORT_SYMBOL drivers/media/rc/rc-core 0x21b44702 ir_raw_handler_register +EXPORT_SYMBOL drivers/media/rc/rc-core 0xa6a0d67d ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/tuners/e4000 0x67a2ea4f e4000_attach +EXPORT_SYMBOL drivers/media/tuners/fc0011 0x4f0e2227 fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0x93ba2a89 fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x07ee4cb3 fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x93b4db01 fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xb32d7210 fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/fc2580 0x9b62e7cf fc2580_attach +EXPORT_SYMBOL drivers/media/tuners/max2165 0x20be5caa max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0xa9d1ee2a mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0x759359b0 mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0x5ed031f4 mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0x5a92e1f2 mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0xdcc791fa mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0xb77dc264 qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18212 0x9a16dba8 tda18212_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0x5eff588c tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tua9001 0x78c5ea2f tua9001_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x0cb4b189 tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0x112a42df xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/tuner_it913x 0x649cfb10 it913x_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0xe22ac593 xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0x06fe92f7 xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x474d5b2e cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x55fcd515 cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x1c0b3fcf dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x267c3ed0 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x5bf516c3 dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x703603a1 dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x865f91a3 dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xa16510fb dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xb7c07f3d dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xc69c7c9a dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xff2e86a9 dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x81be4f3f dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x8c2ccdd3 dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x9b26b1b3 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xa0f0033b dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xaef00ad8 dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xc2f419ad usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xd220380a dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x13e247e0 rc_map_af9005_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xbf283682 af9005_rc_decode +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xd4e288db rc_map_af9005_table_size +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x36cb9be9 dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x49b4fd63 dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x5bd0b796 dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x66913c6b dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x79ce1e7b dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xa0aea6ee dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xa6916048 dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb2eb68f5 dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb47559e0 rc_map_dibusb_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xd42342af dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xd69c2eb7 dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xf6fb4ae5 dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x18ffbc02 em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0xc6ce4d95 em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x1c8326e3 gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x30f1f0c6 gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x7915398c gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9579b96c gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xc77b3b35 gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xcf500daa gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xd5233131 gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xfbdfe56e gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x624e9073 tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xa67bac47 tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xf87133eb tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x877a9fb2 ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0xacbd9e78 ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x42c8e001 v4l2_ctrl_next +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x4adaf0f3 v4l2_ctrl_query_menu_valid_items +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x53c9394f v4l2_ctrl_query_menu +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x5f96a661 v4l2_ctrl_check +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0xabe27502 v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x6ed87c6c v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x82ae9305 v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xaaaeb804 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x174d7d9c videobuf_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x5b845d9f videobuf_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x7dc08e5a videobuf_dvb_get_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x8415bfad videobuf_dvb_register_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xa2fe74f9 videobuf_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xe46a01cd videobuf_dvb_find_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf2-core 0x68510e94 vb2_querybuf +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x038bed41 v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x053e8f94 v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1ae7547a v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1d0b8fe8 v4l2_subdev_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1e978a2b v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x21f3ab9b v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2323c690 video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x24dee8e2 __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x27de7816 v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2a106619 v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2a509565 __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2f6057f6 v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x306c35bc v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x35106486 v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x36847d11 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x38c80dab v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3a48e9df video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3e54c6ee v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3e7e3f92 video_usercopy +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3eee9daf video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3eeedcf2 video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x452f311f v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x45af1194 v4l2_subdev_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x495426ee v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4d218187 v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x50fe2dcd v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x52864fd8 v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x53c29cfa v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x587b47e8 v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x637fcecd v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x653b89f9 v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6626c06e v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x694f923a v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6a57c266 v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6f8706cd v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x760cd140 v4l2_subdev_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7a3cd015 v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7a6de5d0 v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7b79f391 v4l2_ctrl_add_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7d62e4e9 v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x80ef2c8c v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8cf08d20 v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x923cb9a5 v4l2_subdev_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x96d0a19a v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9ff67969 v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa49d1aa7 v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xad3f7c67 video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb9ed4b71 v4l2_subdev_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbac4a225 v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbb30fada v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbbd6316e v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbd363047 v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbfb94d68 v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc12cf8f8 v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xca6de42d v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd11540e5 v4l2_subdev_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd41af9ff v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdad5b8a6 v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdc8acb85 v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe12fa16a v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2c295c0 v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe37cbedd v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe6fce6f2 v4l2_ctrl_merge +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xead76376 v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xeb4c5ff1 video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xecfab669 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xed1c74a5 v4l2_subdev_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xeead590f v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf1118583 v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf721960d v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf7339ddf v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf98ce7d6 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/memstick/core/memstick 0x003d6539 memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x2a7c0f91 memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x33d77b62 memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x359f3c43 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5d820a02 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x7f7064dd memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0x81d5577a memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x9f35d6b6 memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xb529c37a memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xd27f9203 memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xdc07e67e memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xe864d395 memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xf42d56b0 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xfd19bbbc memstick_register_driver +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x026f26b8 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x19866478 mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x19c550e0 mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1a0f47f8 mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x22c7ffe9 mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2bf52310 mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4526289b mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x45803654 mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x46f55f55 mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x520bf472 mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5d24bece mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6c30a1e0 mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7464af2f mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9414c931 mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x97029004 mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9d7c7c6d mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9efaeb00 mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa2a18b01 mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa5f629f3 mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa83708f8 mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xad105ad6 mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xae1bab0e mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xaf5c30d8 mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xafbb5eb1 mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb8b549c7 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xbc829baf mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xbfccc2a9 mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc0e69f82 mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc47c22e8 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd029bba1 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd9a92a75 mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe511b5b2 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xff5aed9b mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x00dbad8c mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x03f63bd9 mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x18471fe4 mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x190596a7 mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1f1d9ed8 mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3224d82f mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x36337a21 mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x49da5532 mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x534302a3 mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5975ce8f mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x59b3d7f2 mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5f2a7555 mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x62f134ba mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x68371967 mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x7d242dbb mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x80b1cb14 mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x85a1cdc0 mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8c97e007 mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xa3c2e1ab mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xb919e000 mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xb959a4be mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xc6cc25bc mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xcc02bf79 mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xea4ab14a mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xedf8d977 mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf35a2cb0 mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf8efeffe mptscsih_remove +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x20573aa7 i2o_cntxt_list_add +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2302183d i2o_parm_table_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2a843bef i2o_dump_message +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x374fad0c i2o_cntxt_list_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x4c5f00cb i2o_iop_find_device +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x55320949 i2o_parm_field_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x63bee649 i2o_driver_notify_device_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x686b5e64 i2o_parm_issue +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x76b20dff i2o_find_iop +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x7de7782e i2o_driver_notify_device_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x857ee33a i2o_driver_unregister +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xa43f317b i2o_driver_notify_controller_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xa57a4d31 i2o_cntxt_list_remove +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xa9a1e23d i2o_device_claim +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xacfc345a i2o_driver_notify_controller_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb4c00dcf i2o_controllers +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb8e87ab4 i2o_exec_lct_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xbba5b076 i2o_device_claim_release +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xbcad193f i2o_event_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xc412fef4 i2o_msg_post_wait_mem +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xc8b43ad6 i2o_msg_get_wait +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xca62242a i2o_status_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xdef523db i2o_cntxt_list_get_ptr +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xf927cfb6 i2o_driver_register +EXPORT_SYMBOL drivers/mfd/cros_ec 0x3e012cc4 cros_ec_prepare_tx +EXPORT_SYMBOL drivers/mfd/cros_ec 0x45ac71c5 cros_ec_suspend +EXPORT_SYMBOL drivers/mfd/cros_ec 0x4942f2da cros_ec_resume +EXPORT_SYMBOL drivers/mfd/cros_ec 0x6242f276 cros_ec_register +EXPORT_SYMBOL drivers/mfd/cros_ec 0xc5595388 cros_ec_remove +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xa89705da pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xe6734321 pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0ac93580 mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0f6cdfd5 mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x18b36e3c mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x52570044 mc13xxx_irq_request_nounmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x5a9386d9 mc13xxx_irq_ack +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x62e0a98a mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x761a065d mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x87a92c0a mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x881b56a1 mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x8e219590 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xad7b97cf mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb97b160a mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xf67b8716 mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/tps6105x 0x130a15fc tps6105x_mask_and_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0x592187fb tps6105x_get +EXPORT_SYMBOL drivers/mfd/tps6105x 0x8989e0c5 tps6105x_set +EXPORT_SYMBOL drivers/mfd/tps65010 0x02d4ad0f tps65013_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0x0c6ad2cf tps65010_config_vdcdc2 +EXPORT_SYMBOL drivers/mfd/tps65010 0x28485130 tps65010_config_vregs1 +EXPORT_SYMBOL drivers/mfd/tps65010 0x33739de7 tps65010_set_vib +EXPORT_SYMBOL drivers/mfd/tps65010 0x9fd44c69 tps65010_set_led +EXPORT_SYMBOL drivers/mfd/tps65010 0xb14080cc tps65010_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0xd5bb106d tps65010_set_vbus_draw +EXPORT_SYMBOL drivers/mfd/tps65010 0xe99b3f36 tps65010_set_gpio_out_value +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x44516e30 ad_dpot_probe +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0xff1ad72a ad_dpot_remove +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x1746ab2d altera_init +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x1d875b9b ssc_request +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x846eda8e ssc_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x0e9755b9 pwm_channel_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5a8b82f9 pwm_channel_handler +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5d5c2951 pwm_clk_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x6a5e1f70 pwm_channel_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x73330c97 pwm_clk_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0xeb7f2c6f __pwm_channel_onoff +EXPORT_SYMBOL drivers/misc/c2port/core 0x0b641b2d c2port_device_register +EXPORT_SYMBOL drivers/misc/c2port/core 0x90e28981 c2port_device_unregister +EXPORT_SYMBOL drivers/misc/ioc4 0x2a2057b7 ioc4_register_submodule +EXPORT_SYMBOL drivers/misc/ioc4 0x38a2ada6 ioc4_unregister_submodule +EXPORT_SYMBOL drivers/misc/tifm_core 0x0df3f9c7 tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x1b2f57e1 tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x3d905562 tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x43aa0d71 tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xa6711aba tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0xa8c2ec46 tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0xac624331 tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xc4d2188e tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xc511edbd tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0xc8866cd0 tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xcfa0deec tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0xeb7814fb tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xf3b5a6ad tifm_register_driver +EXPORT_SYMBOL drivers/mmc/card/mmc_block 0xb1623be6 mmc_cleanup_queue +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x543ab46c cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x9bd75571 cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xfafb80bf cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x3d242bea register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x4d77d49f do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x5b00d44e map_destroy +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x8fc98ade unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0x219f6b69 mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0x6393bd4a lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0x9405dcb1 simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0xc1c66a33 mtd_concat_create +EXPORT_SYMBOL drivers/mtd/mtd 0xcc5f7f95 mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/nand/denali 0x4ca3ed69 denali_remove +EXPORT_SYMBOL drivers/mtd/nand/denali 0xc28cb640 denali_init +EXPORT_SYMBOL drivers/mtd/nand/nand 0x2f746c46 nand_scan_tail +EXPORT_SYMBOL drivers/mtd/nand/nand 0x676ab8a3 nand_unlock +EXPORT_SYMBOL drivers/mtd/nand/nand 0x74005861 nand_lock +EXPORT_SYMBOL drivers/mtd/nand/nand 0x7ddbd38b nand_scan +EXPORT_SYMBOL drivers/mtd/nand/nand 0x9a3b93c4 nand_scan_bbt +EXPORT_SYMBOL drivers/mtd/nand/nand 0xd6ab0771 nand_scan_ident +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x3630f5b3 nand_bch_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x70097aa0 nand_bch_free +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x8febfbb4 nand_bch_init +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0xd6b86a63 nand_bch_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x0675b7e0 nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x3132ee65 __nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xb4b94377 __nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xe5b6cb76 nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0x57a31e57 nand_flash_ids +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0xa336feb7 nand_manuf_ids +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x2de25b20 onenand_scan_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0xb656aeaa onenand_addr +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0xc6cbeec3 flexonenand_region +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0xfb0350b7 onenand_default_bbt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x1a1833b1 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x24cd7def arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x49e356cf arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x52d161fa arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x69c249e2 alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x87a8a805 arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xaf8c7905 arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xddfad0ca arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xf7aef440 arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xf95b3d69 arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x3c2cd56c com20020_found +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xa9329dcc com20020_netdev_ops +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xe696ba2e com20020_check +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x02c8b990 ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x2f7a7155 ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x34028230 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x689d2d02 __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x7d16bbb8 ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x87269fd8 ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x98b07af3 ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xa80e123d ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xcd7636b2 ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xe64ae18b ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x9cd3ca84 cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x0bb068ea cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x0bb8cb6d cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x2304a42e t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x2e5e1ece t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x52d99407 cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x687bcfdc cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x74a07cfd cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x785a5415 dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x8171f923 cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x88dca685 cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x8ffdceb6 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xafc65643 cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xbd358662 t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xda53ae1d t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xdb358cfc cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xea2437bd t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x09b8587a cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1005e960 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1653134c cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x18b942fa cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x24898902 cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2a0b0e89 cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4523c1c2 cxgb4_enable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x49d7c319 cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4d5f7673 cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x58bf015a cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x59173979 cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5f3e94a1 cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x655a3d23 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x67408ceb cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7acc4366 cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7fe5e83e cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x92d716f7 cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9400de76 cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x97db68b3 cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x99c4e2fa cxgb4_disable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb0601149 cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb2220cc7 cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb7a85a42 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd00e5a36 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xddf5e35e cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe1577c05 cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe501e585 cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe6e8677b cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xfea3a332 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x0e712340 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x2b952b69 vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x4f650da7 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x748dc81f enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9196d804 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xac290cdf vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x2d8112d7 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x38c36d81 be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xbab62e22 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0dc17982 mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1535f9db mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x166b0189 mlx4_set_stats_bitmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x198afd4a mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x211c20ee mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x213c2fd0 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x26f3e94b mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2f00ba03 mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4cc32a6c mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x549d326c mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x571067e0 mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6a5de868 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x701e8014 mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x70ba5bd1 mlx4_test_interrupts +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7baa2928 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7d50039a mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x851a18dd mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x91632ff1 mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xab3294d0 mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb92dc28d mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc33255ad mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcc15c712 set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd2149da5 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf7465a8d mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x09453936 mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x09ca71a7 mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x136a41d2 mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x14bc2fce mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1a4417b5 mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x27c0c73f mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x297f86b3 mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2c70142c mlx5_dev_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x35dfff27 mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x389a3c30 mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x39f89380 mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3ca85f85 mlx5_core_query_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x423edcc6 mlx5_dev_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4a4a0a71 mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5d874aef mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7ec49427 mlx5_core_dump_fill_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8e17335d mlx5_core_create_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9219f254 mlx5_core_get_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9376e324 mlx5_cmd_comp_handler +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9cad810e mlx5_core_arm_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa680accf mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb0ed5c2c mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd1bb9492 mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd99562cd mlx5_core_destroy_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf5efcf42 mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfb1131a4 mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xffeebedf mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x58c132fe hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x6baa5089 hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xb37db090 hdlcdrv_register +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xd7a21e6a hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xda59db78 hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x22a79aa6 sirdev_get_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x3095d806 irda_register_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x33bc6f3c sirdev_raw_read +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x3eb77c2d sirdev_receive +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x6fc9fe60 sirdev_put_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xa9a29450 sirdev_set_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xba0409a6 sirdev_set_dtr_rts +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xddc4f0bf sirdev_raw_write +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xe9c47551 sirdev_write_complete +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xfec5e6b5 irda_unregister_dongle +EXPORT_SYMBOL drivers/net/mdio 0x22bce513 mdio_mii_ioctl +EXPORT_SYMBOL drivers/net/mdio 0x43e4defc mdio45_nway_restart +EXPORT_SYMBOL drivers/net/mdio 0x7577f992 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0xa1a29548 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0xb34a7575 mdio45_ethtool_spauseparam_an +EXPORT_SYMBOL drivers/net/mdio 0xc6b1163f mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0xddc98749 mdio45_ethtool_gset_npage +EXPORT_SYMBOL drivers/net/mii 0x077e4902 mii_link_ok +EXPORT_SYMBOL drivers/net/mii 0x0e5d9c28 mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0x126dacb2 mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0x35334ee1 mii_check_media +EXPORT_SYMBOL drivers/net/mii 0x98a35274 mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0xa0a0bccf mii_check_link +EXPORT_SYMBOL drivers/net/mii 0xae15dff2 mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0xc5ede63c generic_mii_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0x13172b28 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xd490a5c7 pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xdbaca73e register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/sungem_phy 0x6971e162 sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x03b23957 team_options_register +EXPORT_SYMBOL drivers/net/team/team 0x0c5d3167 team_mode_unregister +EXPORT_SYMBOL drivers/net/team/team 0x171562f4 team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0x200664dd team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0x735a1ec4 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0x79869c0c team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0xc899af9d team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0xe5c39b7f team_mode_register +EXPORT_SYMBOL drivers/net/usb/usbnet 0x12c2c322 usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/usb/usbnet 0x7af7d94c usbnet_link_change +EXPORT_SYMBOL drivers/net/usb/usbnet 0x8bb678a9 usbnet_manage_power +EXPORT_SYMBOL drivers/net/wan/hdlc 0x12cf3a28 register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x186b2148 hdlc_change_mtu +EXPORT_SYMBOL drivers/net/wan/hdlc 0x2525d683 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x416a0d81 alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0x5a21afdb hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0xa6e2651f unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xa8bb86ca hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0xbe5342e0 hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0xc5e0f401 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0xc689e021 hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0xeccdd1e2 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x92940215 i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/airo 0x31efe5ad reset_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0x9ac162a3 stop_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0xe7bcf93f init_airo_card +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x0e6ce701 ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x15123e71 ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x1569709b ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x28a9feab ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x297bd3bb ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x319c6026 ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4c39bf88 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4e2481d5 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x53358ce3 ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x667137ee dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x9e252b36 ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xb46744e0 ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xcf16f06c ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xe825b349 ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x05465861 ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x39d84735 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7e334e5c ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8246be6c ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x895f9dc2 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xa5a3d47c ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaf096710 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd114bf7a ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xdd6516b7 ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0199ec46 ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1c0a9f68 ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x27cf1694 ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x34255185 ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x350ad625 ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4c6ddcb4 ath6kl_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4e1380ee ath6kl_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x761e70c1 ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xba772770 ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xbee66530 ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xc6dab33b ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xe88d57af ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xeaafdd1c ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xef4ce3cb ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x0ed47144 ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x6d2312be ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x7d21be52 ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x91fc76f5 ath9k_hw_wow_event_to_string +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x20133529 ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x81ee19dc ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xc73b6dc2 ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xe8177da9 ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x00de29ed ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x02cffa41 ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x07113716 ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x07f5bb5e ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x08c8549e ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x09f48acf ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0c3cb59f ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0ce876a2 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1df9003c ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x27fcd979 ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2968631f ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x29b3053f ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2bb10039 ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2d826ac7 ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2d88f3cb ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x33b8b05a ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x33c906e4 ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x342d22c8 ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3444e92a ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3805dfc1 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x39ac30f2 ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3a13a0b3 ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3bd858cb ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3e559629 ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3ebbc3bf ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3f1b0dba ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x42f8de82 ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4355b5d3 ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x44331058 ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4b1005b8 ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4ddd38bb ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4f334c3e ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x50f99336 ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x526b48fc ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x52765fbe ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5534d241 ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x58d6816f ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5ae3942f ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5b5d7b2d ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5d45dbc2 ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5f7bd43f ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6307d547 ath9k_hw_cfg_output +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6991b74a ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x70c4af9e ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7607c25f ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x76a09225 ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7cf089f0 ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x812d29b2 ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8273f711 ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x83226e41 ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x84ae5272 ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x86385a04 ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8a3b4a4b ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8b95beb8 ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9460afd5 ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x95cfe44f ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9638ee2b ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9b240409 ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9eada180 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa1f72871 ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa25acc95 ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa2aeaf25 ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xab309132 ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb171c013 ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb342f90c ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb426a9bc ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb730a1ea ath9k_hw_cfg_gpio_input +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbefe94fd ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc128c2bf ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc42331e6 ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc5a1f05b ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc9f05feb ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcaa98b58 ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcade3707 ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcb48445f ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcc89b0b6 ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcd497c71 ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcdf5c484 ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcecf9bda ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd1b0b672 ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd1e437b7 ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd25e2263 ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd383d0a1 ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd54e4faa ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd5b07c2b ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd6046d98 ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd67d8d1f ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd7441a87 ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd86f4095 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdc028c09 ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xde00def3 ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xec51fae1 ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xecb05455 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xedc54a6c ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf1594602 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf2e62f8a ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf5428a10 ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfc4653b1 ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/atmel 0x8d31fc2b init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel 0x9906acdf stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel 0xcb2e2f89 atmel_open +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0x76fe6027 brcmf_sdio_remove +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0xd9a8ee00 brcmf_sdio_probe +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x19f60736 brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2dc227f8 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x340d10ee brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x48450557 brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x5375cba0 brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x719ee0e3 brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x851bf811 brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xa4224521 brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xa4272731 brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xb0d65088 brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xbe0a5723 brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xc9b43823 brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xcfc6f99c brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xf2c5a19d brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x0808971e hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x1723ac32 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x178f3043 hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x1915a51f hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x1ab5fc8c hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x22049179 hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x23abeac9 hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x3bb04a4e hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x3f3cd82e hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x402cd9ff hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x4b909541 hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x5686c425 hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x6ca10b31 hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x7174f387 hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x77301b27 hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x783a2ea6 hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x8237ff84 hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x86dd2ede hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x8e79334c prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa12ad27f hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb0f99e85 hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb2a945e0 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc8d3daa9 hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xd6589cf9 hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe0e8efe3 hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe6b6f57f hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe744dda4 hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xf656f594 hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x12feb869 libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x1b2ec969 libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x1eb2fec5 libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x2a27c8dc libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x2b640c52 libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x3778b3d8 libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x37e04bec free_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x47fee188 libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x48b367e4 libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x53a3a9e8 libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x56f18c5c libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x6e1b1bae libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x788a2a47 libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x86ff475c libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x964472c3 libipw_change_mtu +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xa8c0eb3f libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xbe4ec8db libipw_rx +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xdca6836c libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xe62087fe libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xf9c042a4 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xfff0cb11 libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x02035a96 il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0386e9b5 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x040bb2de il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0444af3c il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0582b877 il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x064e4019 il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x097c9744 il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0dc94600 il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0f170d63 il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x12ef3bca il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x13daab53 il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x14e555e3 il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x15d9cfbf il_pm_ops +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1987e05e il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x19fa2f26 il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1a0dd49c il_force_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1a468dd8 il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1ac445ea il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1b695c05 il_leds_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1d5185ab il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x21054d51 il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x28e796d4 il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x292c1eae il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x296184cd il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2a11c00c il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2ccf1b05 il_set_rate +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2e61af9a il_free_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x363da868 il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3ae72c73 il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3e41fed5 il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x40673edc il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x448502e2 il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x44f7486d il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x46c380d9 il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4aa39103 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4c9d2a05 il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4d14a88c il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x51ce8ecd il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x54326066 il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x54bc0faa il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x564c6740 il_debug_level +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5ab4322f il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x601b4213 il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x69c81d13 il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6dac1d77 il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x70754124 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7106c0e2 il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x71219da4 il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x72298cb1 il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x77f6f4fc il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7f4a5289 il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x83709324 il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8dd8c7a0 il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8fbc273f il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x95f5a88a il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x95fc8eca il_apm_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9722a90f il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x978a8ce5 il_init_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9a446beb il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa1e50753 il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa361f232 il_update_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa4f8f081 il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xaa5cac45 _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xab155405 il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xafab9eea il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb2a9841e il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7711940 il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7caced3 il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb833508d il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb8de7bad il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbc03d760 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc209c6a4 _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc2b50c46 il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc39cf12c il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc6193c71 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc87e2b83 il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc9a841f3 il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcaa33f6e il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcc2549f8 il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xceda1820 il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd59506ff il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd5b07c41 il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd66dcddc il_set_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd9c07d41 il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdb2c720d il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdcb2688d il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe2b595a8 il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe435493a il_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe444d365 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe789d774 il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe91ab9cf il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe99d2147 il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xeb056a1c il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xec798dd9 il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xef3be9af il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf224a068 il_mac_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf26f8731 il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf501278b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfa9d129b il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfaaeedec il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfd27ff10 il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xffa63ec0 il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xffcca989 il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x08dd8699 __tracepoint_iwlwifi_dev_rx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0c50fa2b __tracepoint_iwlwifi_dev_tx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x1ecc5465 __tracepoint_iwlwifi_err +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x2f7b7e55 __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x3b9d00d6 __tracepoint_iwlwifi_dev_ioread32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x675bcb86 __tracepoint_iwlwifi_info +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x779dd6f5 __tracepoint_iwlwifi_dev_iowrite32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x85c1bb84 __tracepoint_iwlwifi_dev_iowrite8 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x8de37664 __tracepoint_iwlwifi_dbg +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x954eb7a7 __tracepoint_iwlwifi_crit +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x963a6f8a __tracepoint_iwlwifi_dev_ucode_error +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xb8f7026f __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xe2dcc8de __tracepoint_iwlwifi_warn +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xf9ec6bdd __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x0598db29 orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x0ec65ab8 orinoco_down +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x23666873 orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x2c4f90ed orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x39120e7c orinoco_up +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x3e7e5f10 orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x4c72a5c4 alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x4ed0a6c3 orinoco_get_stats +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5597b4a9 orinoco_open +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x55cef77e orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x6d6855ac __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x6f7c36bb free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x892c893f orinoco_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x9045a7c4 orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xb115f0cc orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xdb0cbd65 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xe795a6a0 __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/btcoexist/btcoexist 0x36f7dc5c rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0bd09351 _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x12fd6e9f rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x2c4d9a64 rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x31a1a099 _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3674f1a7 rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x43253721 rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x45aced30 rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x45bce558 rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x578949ba rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x62c5562f rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x634cb593 rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x661bdd86 rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x6af4a236 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7347aec1 rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x73776c2b rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7cfa7354 rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7f1cd7af rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x831e0b33 rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8efe7dc1 rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x981c80cf _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x99836147 rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa51b28c1 _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa8368d85 rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xac4f2ff6 _rtl92c_phy_dbm_to_txpwr_Idx +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xae7faa45 rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb166bd60 _rtl92c_store_pwrIndex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb3314d48 _rtl92c_phy_calculate_bit_shift +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xbadb0a35 _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xbcfa42a1 rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc04dd52b _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc2015934 rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc2366a0b rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc9401f3e rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd4ad60e0 rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd5c2bc78 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd92a0859 rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe05bdf04 rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe510e6c5 rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xeb097962 _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf2e62afc rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf3add210 rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xfa549a67 rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x000a9943 rtl_pci_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x416e2add rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x86702e33 rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0xf4b03810 rtl_pci_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x31b62813 rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x7d4766aa rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0xd35a4e8b rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0xef1536ae rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x04fbaa18 rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x053fcc7f rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x060e0935 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x079c9fba rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x0de81f33 rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x1af86c20 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x207fbb70 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x23c87441 rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x52679947 rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x5d2eb506 rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x6a4cc315 rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x770ec562 rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x79188a02 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x89328133 rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x984d85e4 rtl_ps_set_rf_state +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xadcd5ff1 efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xae4c61a7 rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xc59eab4d rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xda4dc414 rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xe427db69 rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xeb09be4a rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xff5d939f rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x7e8c5613 wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xbd981c22 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xec49cbd7 wl1271_free_tx_id +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xedb0b828 wlcore_tx_complete +EXPORT_SYMBOL drivers/nfc/microread/microread 0x407b1d22 microread_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0x686912c6 microread_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x6ebe0354 pn544_hci_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xe52539d5 pn544_hci_probe +EXPORT_SYMBOL drivers/parport/parport 0x1988dd88 parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x1acaf50c parport_read +EXPORT_SYMBOL drivers/parport/parport 0x1edfd445 parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0x2817c68c parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x2dfaefdb parport_release +EXPORT_SYMBOL drivers/parport/parport 0x3bbc4bb4 parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0x3dc4aee1 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0x4467f9c8 parport_write +EXPORT_SYMBOL drivers/parport/parport 0x45dc871e parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x4c91ea1c parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x5cbec2af parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x62c6d6b5 parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0x638e30dc parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x6def6414 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x79e8500d parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x8fd215fe parport_claim +EXPORT_SYMBOL drivers/parport/parport 0x96d2c282 parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xa612fb71 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0xa8944ef0 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0xa982aa06 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0xabae87a6 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0xb316f590 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xcdc76e80 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0xd32a601a parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0xdae63da4 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0xe7194c8e parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0xed791e62 parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0xef3c7436 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xf4520e65 parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0xf947d881 parport_register_device +EXPORT_SYMBOL drivers/parport/parport_pc 0x44497e36 parport_pc_probe_port +EXPORT_SYMBOL drivers/parport/parport_pc 0x89fb7649 parport_pc_unregister_port +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x08af2033 pcmcia_dev_present +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x08cfb4a4 pcmcia_request_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x12304bd6 pcmcia_request_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x30ce8910 pcmcia_enable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x439e8f6f __pcmcia_request_exclusive_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x4c2eca22 pcmcia_register_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x51a420a8 pcmcia_write_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x5d07a298 pcmcia_get_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x742f5665 pcmcia_parse_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x7814ff01 pcmcia_loop_config +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x82c04800 pcmcia_read_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x82f8f7ea pcmcia_get_mac_from_cis +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x9e2cf124 pcmcia_loop_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xad80feab pcmcia_fixup_iowidth +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xb3ce219e pcmcia_release_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xc8c5fd6b pcmcia_fixup_vpp +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xcaa2fac4 pcmcia_map_mem_page +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xe6e8227e pcmcia_disable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xf785ce0e pcmcia_request_io +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xf9c391b4 pcmcia_unregister_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x015e08b2 pcmcia_register_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x19c1c5bc pcmcia_socket_list_rwsem +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x212db8d2 pcmcia_socket_list +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x2ab66fa1 pccard_register_pcmcia +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x2c4859f5 pcmcia_get_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x4262c85a pcmcia_parse_uevents +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x79ad4d74 pcmcia_socket_class +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x7a316c10 pcmcia_get_socket_by_nr +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x88a2d6f2 pcmcia_parse_events +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xa733400c pcmcia_unregister_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xc83e16e8 pcmcia_reset_card +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcf97f3bd dead_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xed728fdb pcmcia_put_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x793356d9 pccard_static_ops +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0xe5e262be pccard_nonstatic_ops +EXPORT_SYMBOL drivers/platform/x86/intel_ips 0xd32b0b5b i915_bdw_enabled +EXPORT_SYMBOL drivers/platform/x86/sony-laptop 0x5bb1e117 sony_pic_camera_command +EXPORT_SYMBOL drivers/pps/pps_core 0x4689b47e pps_register_source +EXPORT_SYMBOL drivers/pps/pps_core 0x54a39110 pps_unregister_source +EXPORT_SYMBOL drivers/pps/pps_core 0x685f124c pps_lookup_dev +EXPORT_SYMBOL drivers/pps/pps_core 0x878099b6 pps_event +EXPORT_SYMBOL drivers/ptp/ptp 0x70b5667d ptp_clock_unregister +EXPORT_SYMBOL drivers/ptp/ptp 0x764839d9 ptp_clock_index +EXPORT_SYMBOL drivers/ptp/ptp 0x7e43fe48 ptp_clock_event +EXPORT_SYMBOL drivers/ptp/ptp 0xdc6a5e6a ptp_clock_register +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x054442ac pch_src_uuid_lo_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x0a0dbcb5 pch_ch_event_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x0abef056 pch_rx_snap_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x3d1dec01 pch_tx_snap_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x69906c22 pch_ch_control_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x8cdaefb3 pch_ch_control_write +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x94c8e489 pch_src_uuid_hi_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0xd1ae7c4e pch_set_station_address +EXPORT_SYMBOL drivers/ptp/ptp_pch 0xf7cc8c16 pch_ch_event_write +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x86d1352c rproc_put +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x9f340868 rproc_da_to_va +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xa0880652 rproc_vq_interrupt +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xa29446ad rproc_shutdown +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xcdc2a5d0 rproc_del +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xd2029add rproc_add +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xdb5378d3 rproc_alloc +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xeb725848 rproc_boot +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xf6749ba3 rproc_report_crash +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x12b1dc68 fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x15e2edcb fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x1fae69a4 fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x27a103d6 fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x63e6d511 fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x7120232f fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x83ebeefb fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x88b1d275 fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x8d02cecf fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x9d15b515 fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xd18c3129 fcoe_ctlr_destroy_store +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xe976c085 fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0570e3f0 fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0580c0c2 fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x071cf18c fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x155338d4 fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1c75ca9d fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x25c31515 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2ad3c473 fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2ba4c265 fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2eede47b fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3049417e fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x366a61cd fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36e5fbaf fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x38964f8d fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x41d99000 fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x424ea720 fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4529612f fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4fbf5c50 fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x563b69e5 fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5fbc89e5 fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x63ebf318 fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6d5fae59 fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6f7fb0fb fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7556ae8c fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x77824890 fc_rport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7b2c4d6b fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x801331ae fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8a5d58c7 fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x90e200b2 fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9562ffbf fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x98acffea fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9b888b7d fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9da40c9f fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9f663939 fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa2031075 fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xaa3ccca5 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xaf370d4a fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb017884a fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb452bd13 fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc02374b7 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc06745cf fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc0fcd714 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcab0afef fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcb1dee7e fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xce1beeb4 fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd4182c91 fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xde0fdef2 fc_change_queue_depth +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe0b93c9a fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe4efad7c fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe8e8307f fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf40afd1a fc_change_queue_type +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf530f0c3 fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf8630d51 fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfc8978de libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x1da605ae sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x691fea7d sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8a87e724 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xa94b9fcb sas_wait_eh +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xea5cfa1f sas_resume_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x2250c66e mraid_mm_adapter_app_handle +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x512c956d mraid_mm_unregister_adp +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x7c397a38 mraid_mm_register_adp +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x003bfed4 osd_req_write_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x05664a85 osd_dev_fini +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0926eb9e osd_req_get_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0aebcd2d osd_req_add_set_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0c17edb1 osd_sec_init_nosec_doall_caps +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0d0a0e82 osd_req_read_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0dfc6ed2 osd_req_read_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x1c5e0535 osd_req_list_partition_collections +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x2cc55c86 osd_req_flush_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x34c49598 osd_req_create_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x62f40992 osd_execute_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x6f2fbc0d osd_req_add_get_attr_page +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x76908efd osd_req_write_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x77e348c5 osd_req_decode_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8c676e3b osd_req_flush_obsd +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9055c41d osd_req_remove_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x91efa4dd osd_req_decode_sense_full +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x96c5ae6e osd_req_add_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x99bcc414 osd_req_read_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9c2c8342 osd_req_format +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xa00f3959 osd_execute_request_async +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xad98be59 osd_dev_init +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xb498752b osd_start_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xb54a7dad osd_req_list_dev_partitions +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xb789c6f2 osd_req_write +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xb9514702 osd_end_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xbe1ce1b5 osd_req_flush_collection +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd4c51844 osd_req_write_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd592712e osd_req_list_collection_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd7111985 osd_req_set_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xdaec28f3 osd_req_read +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xe0c83155 osd_req_remove_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xe5411b81 osd_req_list_partition_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xe5ed024c osd_req_create_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xf2049150 osd_req_flush_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xf711d9c2 osd_finalize_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xf981493f osd_auto_detect_ver +EXPORT_SYMBOL drivers/scsi/osd/osd 0x3b6fc726 osduld_device_info +EXPORT_SYMBOL drivers/scsi/osd/osd 0x44ec9c0b osduld_path_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0x51b0407f osduld_register_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x5fc48609 osduld_unregister_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x8039b446 osduld_info_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0xde10cd57 osduld_put_device +EXPORT_SYMBOL drivers/scsi/osd/osd 0xe02d9f50 osduld_device_same +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x0338c707 qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x0a70ad49 qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x29af93eb qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x2b346433 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x3bd6b01b qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x3f5f52b1 qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x4d7ed6cc qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x89052324 qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x92377e42 qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xdb219d22 qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xe6fd9c98 qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x0afd9071 qlogicfas408_abort +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x1f55cd70 qlogicfas408_ihandl +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x3eed1af7 qlogicfas408_queuecommand +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x3fd8cd71 qlogicfas408_detect +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x43b21a80 qlogicfas408_biosparam +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x4e7dab88 qlogicfas408_disable_ints +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x5146d42f qlogicfas408_bus_reset +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x82e796c6 qlogicfas408_info +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xe76b3b20 qlogicfas408_get_chip_type +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xf2b95199 qlogicfas408_setup +EXPORT_SYMBOL drivers/scsi/raid_class 0x01a9e2c5 raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0x3b8b290d raid_component_add +EXPORT_SYMBOL drivers/scsi/raid_class 0x79995ee7 raid_class_release +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x289f39df scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x31d52285 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x424e2adc fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x58394d47 fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x6cd7077e fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x75c20099 fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7923ed47 fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7954b1ea fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7ffac7bb fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x8b332558 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x919c1bfa fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x9b49eda4 fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xb9ac9cf6 scsi_is_fc_vport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xf2ec02c6 fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0063dc10 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x084b9412 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x09158d70 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0c0f1f34 sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0c7b00a5 sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x16dbec3f sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x34aa7224 sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x388c2042 scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3bfac500 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x70616ffb sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x749252ef sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x75a19d41 sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7e6b4610 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa7a1734f sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa8f546d5 sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xab42a7a6 sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb5c2a8d4 sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbb894206 sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc1a94964 sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc3ddaa56 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xca3a5e1d sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xcb5635f0 sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xcbf86aa8 sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd616d268 sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xdf18d893 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe2b323f6 scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf22d50ae sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf689b5a2 sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x0387d379 srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x1b8259a2 srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x3056895e srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xb5d4e2ca srp_rport_put +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x105606b9 ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0xa3bf1f58 ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0xc65fcea2 ufshcd_runtime_resume +EXPORT_SYMBOL drivers/ssb/ssb 0x0c3ee4c0 ssb_bus_pcibus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x1882b3ec ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0x2bb5d11d ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x4552bcec ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x5c14d487 ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x6a4db766 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0x70284643 ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0x8c6a0c38 ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x8d3aea11 ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x97b0b35b ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xa0a12078 ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0xa1d0fb13 ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0xa95665de __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0xaad48f4f ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0xaf26fd9e ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xc0512e0f ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xc6c665aa ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0xcda30637 ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0xd1b175ec ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0xd481192b ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xe3f63db0 ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0xfa269c70 ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0xfd79aa6c ssb_clockspeed +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0x10ad486f fwtty_port_get +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0xa56a3182 fwtty_port_put +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x1d981664 adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0xf26ec473 adt7316_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x65e405ac ade7854_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x6d3f1123 ade7854_probe +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0264d470 lnet_extract_iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0363b57a lnet_copy_iov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0bce7eef lnet_counters_get +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1366b7ac LNetSetLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x19670622 LNetNIInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1b191752 lnet_msgtyp2str +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1fe16fd5 LNetGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x204b8151 lnet_counters_reset +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2aa9953d lnet_cpt_of_nid +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2ac93e90 lnet_connect_console_error +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x33202a6c LNetGetId +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3c779ee0 LNetPut +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3f4f5b46 LNetNIFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x42af1350 lnet_unregister_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x437fc4d9 lnet_copy_kiov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x473ad33b LNetDist +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5811a721 LNetInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x58a1ca89 LNetMDUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5fee352c lnet_acceptor_timeout +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x61f784b2 LNetClearLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x64cdea3a LNetCtl +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x6e57d147 lnet_set_reply_msg_len +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x6e690508 lnet_register_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x6f7be171 LNetEQGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x722c76e5 LNetMDAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x75226577 lnet_kiov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7d59a7fe LNetMEInsert +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x854ab844 LNetEQWait +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8a3064f2 LNetSetAsync +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8ec8c4ad lnet_connect +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x96c5dc33 lnet_parse +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9b6dcb80 lnet_extract_kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9de986d3 LNetEQAlloc +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa3d61f8d lnet_iov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa8c2760b LNetFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa414970 LNetMEUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa9b477e LNetMDBind +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb122c5a3 lnet_create_reply_msg +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb75f7953 LNetEQFree +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb7a09e0a lnet_set_ip_niaddr +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb9de6d35 lnet_net2ni +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xba5566d2 lnet_acceptor_port +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xbf0760a2 LNetMEAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xdd2e8018 lnet_finalize +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xe01e93f6 lnet_copy_iov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xe4203a34 lnet_notify +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf1b316bf LNetSnprintHandle +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf3a5c7f8 lnet_copy_kiov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xfd9ba7c1 the_lnet +EXPORT_SYMBOL drivers/staging/lustre/lnet/selftest/lnet_selftest 0x078db139 lstcon_ioctl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x04f4b9f6 client_fid_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x1c4bb5f9 LU_OBF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x375e6f8d LUSTRE_BFL_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x4a2a9db6 seq_client_alloc_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x6b51a87d seq_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x6d4ac85a seq_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x827a976f seq_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x8c12a956 client_fid_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xa62fb5a6 seq_client_get_seq +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xae61cff5 LU_DOT_LUSTRE_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xc997a02f LUSTRE_SEQ_SPACE_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xecee2727 LUSTRE_SEQ_ZERO_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x02c96d52 fld_client_proc_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x4947d593 fld_client_add_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x89edc834 fld_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xb4061544 fld_client_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xe0d66a22 fld_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xe3ae8cf4 fld_client_del_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xf486c724 fld_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x000c507f libcfs_debug_dumplog +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x01db5172 cfs_percpt_atomic_summary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x03387ca6 cfs_curproc_groups_nr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x04d3ce6a lbug_with_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x069f9bb2 cfs_wi_schedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x06acbefe cfs_hash_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x082c05c8 libcfs_sock_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08ada613 libcfs_console_backoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0979a765 libcfs_sock_getaddr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0b4b1546 libcfs_lnd2modname +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0de6c369 cfs_cap_lower +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0eb410a2 cfs_percpt_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0ee3a27c cfs_hash_for_each_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0f5eff79 cfs_percpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1059cbd6 cfs_hash_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12426266 libcfs_run_lbug_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x127b745d cfs_hash_dual_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12cd873d cfs_cpt_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x150034e5 cfs_hash_dual_bd_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x162e0511 upcall_cache_flush_idle +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x16605f1c cfs_hash_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x16bef72c cfs_hash_rehash_cancel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x16edf62a libcfs_sock_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1756d138 cfs_hash_for_each_nolock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x17ac7833 libcfs_deregister_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1a60d439 cfs_parse_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d5a3928 cfs_timer_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2143ceb7 cfs_cpt_table_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2210322f libcfs_sock_abort_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x24f39469 cfs_cpt_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2663147a __cfs_fail_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x26b80c60 cfs_cpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x27b6d3ba cfs_ip_addr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x29bf925f cfs_hash_bd_del_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2a876a64 cfs_hash_size_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2b1e0458 cfs_get_environ +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2da017ea cfs_cpt_set_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2db9d08f cfs_hash_dual_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2dbe54b2 cfs_trimwhite +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x30986343 cfs_range_expr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x30f7eff6 upcall_cache_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x314d752a cfs_hash_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x31a4294d cfs_cpt_unset_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x31fc5082 cfs_crypto_hash_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x32cd9771 upcall_cache_get_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x346b9d41 cfs_cpt_weight +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x361e82d4 cfs_firststr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x36ead360 libcfs_kkuc_group_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x377f93fb cfs_srand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x389ca502 libcfs_debug_mb +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x39fdcd2b libcfs_debug_set_level +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3b7129eb cfs_hash_hlist_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3c1285bd libcfs_subsystem_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3d2cce75 cfs_cpt_set_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3d5e6098 cfs_race_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3e3ae0da cfs_hash_bd_peek_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ea730c0 cfs_gettok +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ef0d90c libcfs_kkuc_group_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3fe13eaa cfs_cpt_unset_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x411db754 cfs_crypto_hash_final +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x41ab33a1 libcfs_ipif_free_enumeration +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44839bbb cfs_rand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44f07cfc cfs_pause +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x450d96da cfs_hash_debug_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x47fdb4d1 cfs_timer_is_armed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x48f163c6 libcfs_str2anynid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4a99af72 cfs_clear_sigpending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4ae500f8 add_wait_queue_exclusive_head +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4bd3ea3d cfs_hash_bd_move_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4c7e3d8a cfs_hash_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4e8fbec5 cfs_cpt_table_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4f1f2fa5 cfs_crypto_hash_digest +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x50345570 libcfs_str2net +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5051b6d2 portal_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x509d38b0 libcfs_net2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x50bca709 cfs_cpt_spread_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x54fd9a71 cfs_percpt_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x56a518ce cfs_cpt_set_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x56d20c34 cfs_crypto_hash_update_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x58a7ee00 libcfs_catastrophe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x58e7f03a cfs_hash_dual_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5946ec2b cfs_percpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x59f95db2 cfs_cpt_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5aee0169 cfs_percpt_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5c013b81 cfs_expr_list_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d3be65a cfs_crypto_adler32_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d655232 cfs_percpt_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d73c3e3 cfs_expr_list_free_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5dce9e80 libcfs_lnd2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62289d65 cfs_array_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62822d74 cfs_hash_dual_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62b9cb2e cfs_percpt_atomic_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6326638a cfs_percpt_lock_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x64685fef libcfs_console_min_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6564c55b libcfs_console_max_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x656e257d upcall_cache_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x65dd9f0c libcfs_run_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x66136d2d cfs_timer_arm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x67398404 cfs_wi_sched_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x692bd054 cfs_hash_for_each_safe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c905b5f libcfs_watchdog_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6dfa9ea1 cfs_crypto_adler32_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6e242a95 cfs_hash_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6e6af71c current_is_32bit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6ea9a1c9 libcfs_sock_listen +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6f928e1b libcfs_debug_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71f662a3 libcfs_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x73667cfc cfs_hash_debug_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a3d49ae cfs_expr_list_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7b0b748a cfs_ip_addr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c7986cf waitq_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7d11d8ec cfs_cpt_unset_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7e6f6485 cfs_ip_addr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7f99ddb6 cfs_race_waitq +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7fda989d cfs_fail_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8151c3aa cfs_cap_raised +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x81af8e2e libcfs_kkuc_msg_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x83d795e4 cfs_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x857aaea7 libcfs_register_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x875e0492 cfs_hash_del_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8840f591 cfs_block_allsigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x89ce22bb cfs_hash_cond_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c500d25 cfs_cpt_table_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c85e4e6 cfs_crypto_hash_speed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8d26cd32 upcall_cache_flush_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f12bb52 libcfs_log_goto +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f45f10d cfs_init_timer +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x91504e8b libcfs_kmemory +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x940ed192 libcfs_stack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x95620e8c cfs_wi_deschedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x97652a15 cfs_hash_is_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x97b0b9bc cfs_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9879b229 cfs_get_random_bytes +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x994ac27f cfs_cpt_table +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x99661e2b cfs_hash_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9e420643 cfs_restore_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9f82f712 cfs_trace_copyout_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa0650897 cfs_cpt_unset_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa2b68b2a cfs_array_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa3c9f30f cfs_hash_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa4bc5fb5 cfs_hash_rehash_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa51be8c6 libcfs_sock_setbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa6b9dee6 libcfs_kkuc_group_rem +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9088531 cfs_expr_list_values +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9dc74e2 cfs_trace_copyin_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9eae690 cfs_str2mask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xaa587cf6 cfs_hash_add_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xab887583 init_waitqueue_entry_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xad019238 cfs_str2num_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb20c6ebb cfs_hash_for_each_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb2854871 upcall_cache_downcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb4e48237 cfs_cpt_online +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb53cea11 libcfs_sock_getbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb9d788d4 libcfs_sock_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb972619 proc_call_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb9cb508 cfs_curproc_cap_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbd5d492e cfs_timer_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbf7a37f1 cfs_signal_pending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc0ea7fc0 cfs_expr_list_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2911d96 cfs_expr_list_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2dfd791 libcfs_console_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc39fd2f9 libcfs_panic_on_lbug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc3eb614e libcfs_ipif_query +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc47433a6 cfs_capable +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc49b1c62 cfs_percpt_atomic_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xca9320d4 cfs_hash_findadd_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcb385db9 libcfs_debug_binary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcbab8493 schedule_timeout_and_set_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcc20e694 libcfs_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xccc45639 cfs_free_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xccd9aa58 cfs_percpt_lock_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcce5b37f cfs_hash_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcd38904c cfs_wi_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xce1a88f2 libcfs_arch_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf61bacb __cfs_fail_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcfab9ecb upcall_cache_put_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6a52be3 libcfs_printk +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6f1fc60 cfs_strncasecmp +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd8857d7a cfs_hash_rehash_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd96f406d cfs_cap_raise +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xde17bb8d libcfs_isknown_lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xde6f9972 libcfs_sock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xded410c2 cfs_hash_rehash +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf26be81 cfs_hash_dual_bd_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf2789c0 cfs_curproc_cap_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdfecb98d cfs_block_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdffc951d cfs_timer_disarm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe3bf6897 cfs_percpt_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe5c5e952 cfs_wi_sched_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe63efe11 upcall_cache_flush_all +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe6555032 libcfs_ipif_enumerate +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe7b54314 libcfs_arch_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xea411f63 cfs_block_sigsinv +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeb447115 cfs_hash_getref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeb4913fd cfs_cpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xec1f56d5 libcfs_str2nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeceac781 cfs_fail_val +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeda75539 cfs_hash_bd_add_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xedf3a25a cfs_timer_deadline +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xef66c80b cfs_cpt_set_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf1872998 cfs_cpt_of_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf3a80fbc cfs_hash_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf440bb38 libcfs_kkuc_group_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf74cf3a1 libcfs_sock_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8a8644b libcfs_id2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8efb8c5 waitq_timedwait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf94025d1 libcfs_str2lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfc4c70a2 cfs_cpt_bind +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfe565fa9 cfs_crypto_hash_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xff0f98a6 libcfs_debug_vmsg2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x6cdb15a8 ll_stats_ops_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x879f1319 ll_direct_rw_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xa4f954b6 ll_osscapa_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xb72b98c7 ll_iocontrol_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xcd3cde92 ll_iocontrol_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x1c444555 lov_stripe_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x2d84506a lov_stripe_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xb6937392 lov_lsm_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xc276f367 lov_read_and_clear_async_rc +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xc360c154 lov_device_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xcf543fee lov_lsm_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x2c4a61d0 l_dentry_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x65347513 fsfilt_register_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x6cfccc8e lprocfs_stats_alloc_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x793fd5c4 lprocfs_counter_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x79eccf69 fsfilt_get_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x81daa98f push_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x81e0b316 lustre_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x884889bb fsfilt_unregister_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xa2518c5f fsfilt_put_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xb4f8ee63 lprocfs_read_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xd0591c84 lprocfs_counter_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xf210784e pop_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xf53861f8 obd_memory +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x14a47f31 it_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x9c22b84f it_open_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xb57d8447 it_set_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xf46a886f it_clear_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mgc/mgc 0xdc287f95 mgc_fsname2resid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0014b017 cl_object_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0110a7c5 class_export_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01131a0c cl_lock_mutex_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01665e34 class_parse_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0290660f cl_use_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x02a8e5c9 cl_wait_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x035852d0 lustre_swab_llog_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0387947d llog_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x039f69c7 class_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x03d560c2 cl_page_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x040ec652 cl_object_attr_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0446f956 llog_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x04f2d205 lu_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x04f5dc7b dt_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x057f6d4b class_find_old_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x06826dee lu_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07063bc9 lu_context_key_register_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0736410b lu_context_key_quiesce +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07563c7c cl_lock_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x076e72dd llog_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07aa68bb lustre_swab_lustre_cfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07f610be class_name2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x083942ff class_del_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x08eff228 cl_lock_mutex_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b8a44d9 lprocfs_oh_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0bdb548b lu_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0c03f891 dt_txn_hook_commit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0ce70d74 cl_page_list_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0d24b78e cl_io_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0deba37b lprocfs_seq_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0e1016cf cl_page_is_under_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0e2c528f class_handle_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0e6d24f6 dt_txn_hook_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0ef1bf6b lu_context_key_degister_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0efaf13d llog_cat_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f831f63 cl_enqueue_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fd6591b cl_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fe91547 obdo_to_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x10d5743e lu_object_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x111820d7 lu_cdebug_printer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11495519 lprocfs_write_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11c4154b llog_open_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11df2886 lustre_idmap_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x123e5b5b dt_directory_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1291c88d cl_2queue_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x12e104e5 dt_try_as_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x139f1b3c dump_lniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x14336ba4 cl_lock_state_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1491dc30 lu_context_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x15bbb9b0 lprocfs_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x15e40d60 cl_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x164bd3d8 lprocfs_alloc_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x164f8655 local_object_unlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x16cf8d70 class_uuid2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1720607f lprocfs_init_ldlm_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17260880 obdo_cpy_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1784e3e0 cl_io_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17b04937 cl_page_clip +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x187e06a5 llog_declare_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x18d5c3ad cl_page_list_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x18d9a371 cl_conf_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x190a6cbe cl_lock_closure_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x194837f3 llog_cat_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b3fecb8 cl_lock_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b863798 cl_lock_closure_build +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1c67d2ce lprocfs_counter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1cf1279e capa_cpy +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1da48212 class_handle_hash_back +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1e1b9ec1 cl_req_page_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1eb72440 lu_object_locate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1eba6f3d cl_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1ee3c682 lustre_in_group_p +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1f5c2988 class_config_parse_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1f9c2c15 cl_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1ff1b9d3 cl_page_list_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1ff94b27 cl_unuse_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x213ddd1b class_config_llog_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21b05a34 capa_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x221826f1 class_parse_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x226211ce dt_lookup_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x22a8f49b lu_dev_add_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x23faa167 class_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x24ae6afa llog_cat_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2547efae lustre_uuid_to_peer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2551f71d cl_lock_descr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2579f91a llog_copy_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x26207475 iattr_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x275cdc7a cl_env_reexit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x297cf5e0 class_handle2object +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ae1cd79 kuc_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2b9979f9 cl_io_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2bccd8f7 cl_object_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2c092d2a llog_cat_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2c1098ce cl_io_prepare_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2c6ec18a cl_req_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2c9d5b2f lprocfs_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d127b47 cl_pages_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d77be31 lprocfs_oh_tally_log2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2db410cf lprocfs_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2dc512c6 cl_lock_closure_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2dd5f80b cl_page_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2e8f0d26 class_exp2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2eeba914 cl_lock_disclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2f4b209e lu_ucred_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x30a506e5 lu_object_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x31fdf4ee lu_context_key_revive_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x329009c1 cl_page_make_ready +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32ba7a38 dt_quota_slv_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32fb2926 cl_lock_descr_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x332ad019 lustre_idmap_lookup_gid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x33c151e3 lu_buf_realloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x33ded2da llog_osd_put_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34512fdf lu_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34b0f91f cl_io_lock_alloc_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3542ee52 cl_2queue_init_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x355d3183 cl_env_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x35617324 lu_site_init_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x35c2a5b7 cl_offset +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x373a8a8b dump_lsm +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37ed6e4b at_early_margin +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x386bb6a7 lu_context_key_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38fb0c90 class_match_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a31e329 cl_io_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a3aff9f dt_locate_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a72c8e7 class_find_client_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a77f50c cl_object_has_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ad529fd cl_lock_nr_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3bfa178c cl_queue_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d264e51 obdo_refresh_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d40748c lu_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d5b4476 cl_lock_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d9c7a52 capa_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3e0771e0 cl_lock_unhold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3eab7bfe LU_BUF_NULL +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3eda11da cl_lock_mutex_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3eed6e30 class_disconnect_stale_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3f3b7fb5 lu_context_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ffaa462 dt_txn_hook_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x40ee672b dt_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x41172bd8 lustre_idmap_lookup_uid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4118d148 lu_site_purge +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43f37c14 cl_io_loop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44381593 cl_sync_io_note +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x444a187f cl_page_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x445afd06 cl_lock_user_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44685654 dt_txn_callback_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44e41abb lustre_posix_acl_xattr_filter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x452f559a lu_buf_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x45862ebe class_new_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x45b024dd class_manual_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x45eadfdf cl_2queue_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x466b60e9 llog_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x46afb303 lu_context_key_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x46de98eb cl_lock_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47171582 lprocfs_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x474ed5bd lustre_swab_ll_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47560bf4 cl_env_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47b35f7d statfs_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48d36ffe lprocfs_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x494cfb52 lustre_acl_xattr_merge2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a0f6ea lustre_posix_acl_xattr_2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4a248b40 cl_io_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4a2e29d5 lu_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4a36b4e6 class_connected_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ac58713 obd_connect_flags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ba12f06 cl_page_list_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c190aad lprocfs_find_named_value +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c4c700b obd_alloc_fail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d13458b kuc_len +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d9e24e1 lu_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4db23f7c cl_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4e848022 lu_kmem_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x505f89d6 cl_req_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50c7fc36 ptlrpc_put_connection_superhack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50f1cb97 cl_env_unplant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x52041187 llog_declare_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x536de60d cl_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x539194ac lprocfs_single_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x539c0d29 lprocfs_free_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x53b48761 lprocfs_alloc_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x53d223ff cl_lock_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x53e1c3d9 cl_lock_discard_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5409da08 lprocfs_exp_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54885f87 ldlm_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5533475f dt_version_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x558bec27 obd_ioctl_getdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x55ac8821 lu_ucred_assert +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x562662d8 lprocfs_rd_server_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x564e9d44 init_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x570d09ae lustre_swab_lu_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x573ffee3 cl_lock_hold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5808288f cl_page_cache_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x582b013d dt_quota_glb_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x58dabe28 cl_page_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a1cbf2f obd_export_evict_by_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a20d896 obd_memory_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a36d13b lu_object_put_nocache +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a9fb950 __llog_ctxt_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bc022c5 lprocfs_dt_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5c7e3388 cl_page_list_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d34ae0d cl_lock_mode_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5da12046 cl_page_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e30ecf4 class_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e3a012d cl_io_rw_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e6692e4 class_conn2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e7cce0a lustre_register_client_fill_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5eb53d0a llog_thread_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ed188a9 lprocfs_add_symlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5f5f637a lprocfs_obd_rd_max_pages_per_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5f8481c5 class_import_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fe97b73 block_debug_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60edefc4 llog_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60f2558e llog_cat_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x61177765 lprocfs_wr_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x611955e9 cl_page_list_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x62dc1996 cl_lock_hold_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x62e1b558 cl_object_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631a518d mea_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631fd7b9 lustre_ext_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x635dd2dc obd_exports_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x639d89f9 dt_index_walk +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x651231bc class_conn2export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x65a36684 cl_vmpage_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67009135 lprocfs_wr_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6734adbd lprocfs_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x675244fa dt_otable_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x677fd7f9 proc_lustre_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67977b42 lprocfs_remove_proc_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67a90622 la_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67dc223a lprocfs_remove +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6890d175 lustre_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x68cd97bc cl_page_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x68ec1279 cl_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69864bab local_index_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69c42114 at_min +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69fea02f lprocfs_exp_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a6858ec dt_store_resolve +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a7175cd local_file_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6acb2f54 cl_lock_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6bc7c1d6 cl_object_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c071618 lprocfs_rd_num_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6e107450 lprocfs_rd_u64 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6e3a22e7 obdo_from_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7174b308 cl_lock_enclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x71c73edc cl_page_list_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72ddee4c obdo_le_to_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x73a31f65 cl_page_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x742559b1 class_unregister_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x74d06198 lu_env_refill_by_tags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x752f71a8 class_get_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x756a77f3 class_parse_nid_quiet +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x768d45e1 lustre_idmap_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x76a03966 lu_kmem_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x76b35865 class_config_dump_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x76d1ea1b cl_io_submit_rw +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x76ef726f lu_context_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7766a6c7 lprocfs_free_per_client_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7766c631 lprocfs_rd_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77d2089a class_name2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7802fcd7 lustre_swab_llogd_conn_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x78776089 dt_record_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7888de18 lprocfs_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x789796a1 obd_zombie_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x78a26157 lu_context_key_degister +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x793fe18c cl_sync_io_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7a135e29 lprocfs_stats_collect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7a23e952 cl_env_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7aace0cc lprocfs_rd_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b4fc57b at_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b8244f2 cl_lock_signal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7c8340dd cl_io_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7e3e0bec class_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7e626bc9 cl_lock_is_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7eb720be lu_object_assign_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7edcafa0 cl_env_reenter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f2a0077 lprocfs_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f7d7cd9 lu_buf_check_and_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f892c55 class_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fad7291 raw_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fe5561a obd_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8031efb8 lprocfs_dt_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x806cc497 class_add_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x80c84284 cl_lock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x80e5c53c lu_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81481ca5 lprocfs_rd_timeouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81742d89 obd_ioctl_popdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x820e0259 cl_lock_modify +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x82f429fd lprocfs_alloc_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x831f656c class_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x835850ba class_handle_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x83e38740 cl_2queue_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x83e40af2 local_oid_storage_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8489f086 obd_alloc_fail_rate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x849e5385 obd_update_maxusage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x84ad7c53 class_register_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x84fa0e56 cl_page_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8503c454 lu_buf_check_and_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x858f452d cl_lock_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x85a2c300 lprocfs_init_mps_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x860444bc class_process_proc_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x86757950 cl_page_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x86b13be6 obdo_to_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x87e3c28d cl_lock_weigh +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x882d3a24 llog_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8a25ec8c cl_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8aa2c358 lprocfs_dt_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ab075ea lu_context_enter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b5f4057 lu_context_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b9a699f cl_page_list_move +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ba6e479 lustre_swab_lu_seq_range +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8e10e6d6 server_name2svname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ef7a781 lprocfs_oh_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f67314c obd_dump_on_eviction +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f9b9cba dt_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ff85023 cl_page_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ffc155f class_import_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x90b21251 llog_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92d3d346 cl_req_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92e58479 obd_dump_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9300a935 class_disconnect_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93a25848 cl_lock_user_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93b46468 lu_session_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x940e6934 obdo_from_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x948c5bf6 llog_osd_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9512d507 lustre_acl_xattr_merge2posix +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x954aff58 class_new_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x955f5220 ldlm_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95735c6c at_extra +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95d7a3cc llog_init_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95ec998a lustre_groups_sort +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9638498a class_export_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x973bd89a lprocfs_nid_stats_clear_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9767adce class_uuid2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x97d03783 at_history +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9803849f lprocfs_add_simple +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x994b0930 lu_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x999c62fb cl_2queue_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9a22080c lu_object_invariant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9aa7744c cl_2queue_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b04c2a6 class_search_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b1d1af5 cl_page_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b1ed9d8 obd_jobid_var +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9bccbcb8 lu_site_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9dbb17b6 lprocfs_dt_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9de0a0df lprocfs_seq_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9f307b04 class_detach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9f5d7dff cl_env_implant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa05dc3fd lprocfs_rd_numrefs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa0b319a4 cl_lock_is_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa0fd9ed7 cl_io_iter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa21c5ea1 obdo_from_la +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa2868ce3 cl_io_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa32330f4 llog_cat_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa3a66d20 lprocfs_at_hist_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa513f7e4 lustre_groups_from_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5dae816 lu_context_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5fb234f lprocfs_write_frac_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa674c241 kuc_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa6d12d9d class_conn2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa7532282 cl_page_gang_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa794e488 cl_page_find_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa79fb8ab llog_cat_cancel_records +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa87bd23b lu_env_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8d20003 cl_object_kill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8dcfccb cl_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa914351c cl_io_rw_advance +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa973992a lprocfs_rd_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa21b7a0 lustre_register_quota_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xab39f994 cl_page_is_owned +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xab596227 cl_req_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabf45922 capa_decrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac7f1596 kuc_ptr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xacb838a3 lprocfs_init_ops_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xad29b956 lu_object_find_slice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xadcb2261 cl_page_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaddd689f llog_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xadea66ba lustre_idmap_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xae30e7e0 cl_lock_extransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xae353548 cl_page_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xae3bcc76 cl_page_is_vmlocked +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaef8171c cl_sync_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaf092416 lprocfs_rd_connect_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaf5e6428 cl_locks_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaf9fe7b7 cl_lock_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xafa18753 dt_record_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb01963a6 class_uuid_unparse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0fb9886 cl_lvb2attr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb10dec63 capa_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb12c3d39 lprocfs_free_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1873a7c lprocfs_register_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1adbc34 cl_lock_hold_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1b89b6d class_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb22322bb cl_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb3a2e052 lu_device_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb3c75dac cl_lock_enqueue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb3d80a98 obd_devs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb41998cd lustre_cfg_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb45bdfc1 class_disconnect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb49902f1 cl_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb5012f56 cl_page_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb5ac0cc2 lu_ucred +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb635af9e dt_acct_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb63ba150 cl_page_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6ba5dd5 kuc_ispayload +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb70e1ee7 cl_io_lock_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb743ec6a dt_mode_to_dft +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb75ee991 lustre_end_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb7780f0a cl_lock_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb8f7d7eb lprocfs_obd_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb97c9b22 local_file_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb9aa59d1 cl_lock_get_trust +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb9f61902 llog_exist +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba985283 lustre_register_client_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbacac922 lprocfs_write_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbaf25d4d lustre_common_put_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbb4365a8 dump_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbb896719 llog_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbd40c8f8 lprocfs_rd_conn_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbdce6961 cl_req_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbe7c1738 cl_io_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbf137aad lu_object_find_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbf897171 cl_page_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0a6e990 cl_page_unassume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0bf7ef2 obd_debug_peer_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc18d06cf lu_buf_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc213f3a6 lu_object_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc28e9771 obd_export_evict_by_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc2c6f929 lustre_register_kill_super_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc39bd417 lu_object_add_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc3caaf31 local_oid_storage_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc3d56f17 cl_page_list_splice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc6d07fad cl_page_own_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc7b93294 lu_device_type_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc7ccf93a class_exp2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc82b6ca2 cl_page_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc82e4dd6 lprocfs_rd_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8ad8abc class_num2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8c689aa cl_io_submit_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8dbaa87 lustre_swab_cfg_marker +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc915d0d4 cl_object_glimpse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc9aa533f cl_2queue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xca901fa1 cl_io_iter_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xca99eeba lprocfs_oh_sum +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb0ab67f obd_max_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb623de3 obdo_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcc1d5413 class_unlink_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xccf7a8de obdo_cpu_to_le +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd7537ee get_devices_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcdc46500 cl_env_nested_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xce11e549 cl_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xced4946a obd_llog_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcedb140a obdo_cmp_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcf31de17 cl_page_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcf6a4083 llog_obd_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcf79892d cl_io_read_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcf7b92cd llog_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcf8d9d83 llog_cat_declare_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcfef6062 cl_page_list_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd00d38b0 llog_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd01318f9 lprocfs_nid_stats_clear_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd08827c0 server_name2fsname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd0927dde dt_declare_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1016356 lu_context_key_quiesce_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd10aa042 lustre_swab_llog_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1738972 lu_env_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1909f87 class_fail_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1a055ad lprocfs_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1b1478b cl_attr2lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1f58645 lustre_swab_llog_hdr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2de15a5 dt_txn_callback_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd360087d cl_type_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5648463 cl_io_commit_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd582fa24 llog_cat_init_and_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd6b37d22 local_index_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd70fe669 lustre_swab_llogd_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7624f39 obdo_from_iattr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bc8654 obd_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bfbc9c lprocfs_dt_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7cd270d llog_cancel_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7d17ddf class_put_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7f7b340 cl_lock_mode_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd8044c5c dt_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd9bb7f61 lu_object_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda5b1ced class_find_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdac644c8 lustre_posix_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdae137ce class_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb13dce1 capa_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcc40af0 class_check_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcf235b5 cl_page_vmpage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd78c0c7 lu_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd821f4c cl_req_page_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xddf59994 lu_object_anon +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde0c3426 cl_lock_ext_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde136caa dt_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde7d985b obd_dirty_transit_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde906e70 llog_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdec5dddf lprocfs_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xded05d1a lu_context_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdf82e5b6 llog_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdfd4c3f0 dt_index_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe028cf84 capa_encrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe0f20fdd obd_llog_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe1a0bdb5 cl_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2b11144 llog_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2eb4470 class_get_next_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe331615e cl_object_attr_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3323f5d class_handle_free_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe38d66e1 llog_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe53fcc16 cl_env_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe54ffbe8 md_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe5d96fa2 cl_io_is_going +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe62bf743 lu_device_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe798c69d lu_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7d83236 cleanup_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe81e1366 lprocfs_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8e84c32 class_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe90c882a lustre_process_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe93911af lprocfs_add_vars +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeab04903 cl_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeaf89bd4 cl_unuse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb3f388a _debug_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xebfb0692 dt_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec7d6b85 obd_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xecd9d715 llog_osd_get_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xed7cfb57 dt_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee68bc29 lu_session_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeeeb79fa do_lcfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xef76f858 block_debug_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf00ad1b2 class_devices_in_group +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf01e2527 server_name2index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf05c2bf7 dt_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf063d985 cl_page_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf0aa731c class_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf254f298 cl_object_attr_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2fd6695 statfs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3bc5b9d dt_lfsck_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf4373b03 cl_lock_at_pgoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf48de2e1 lprocfs_free_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf490d5f9 class_del_profiles +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf555a3f3 llog_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf5b9c8a5 cl_io_sub_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf60d4659 capa_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf62d7773 lu_dev_del_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf66774a3 lprocfs_clear_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7020831 lprocfs_dt_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf75a8912 lustre_idmap_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7bb1df2 cl_page_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8359675 lu_env_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8c2df92 obdo_set_parent_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8e36153 class_incref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf90923d0 lu_device_type_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf91bd811 cl_page_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa813d06 capa_hmac +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfac9359b obd_export_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb6815f6 lu_context_key_revive +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbe7f9d4 dt_store_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbea0098 lu_types_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc7f18d0 obd_pages_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfce4103b lu_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd131c57 lprocfs_rd_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd68d17a class_notify_sptlrpc_conf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfdbe1557 lprocfs_write_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfddf25e5 llog_declare_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfe0fd345 cl_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfe112b6a cat_cancel_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfeefdecd lprocfs_rd_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfef25ad1 cl_env_nested_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff3815be cl_page_list_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff57e92d class_match_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xffccb56b capa_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfffc1f11 lustre_swab_ost_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/osc/osc 0x5c4940c2 osc_update_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0056398e llog_client_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x00d95039 ptlrpcd_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x019db20c lustre_pack_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01d6ef7f ldlm_pools_recalc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x02021bee ptlrpc_request_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x048b59d5 lustre_msg_set_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0515f93b RQF_FLD_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0516be2b ptlrpc_lprocfs_register_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x063fec8a ldlm_resource_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x06b3942b lustre_swab_lov_user_md_objects +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x06d49069 ptlrpc_set_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x071fc74a RQF_LDLM_ENQUEUE_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x07322a87 ptlrpc_pinger_add_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x07605c7d interval_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x083dd81b ldlm_replay_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08bb2d27 lustre_swab_obd_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x094d758a sptlrpc_svc_ctx_invalidate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x095587d0 lustre_msg_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a3130b0 RMF_MDT_EPOCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac252b2 lustre_msg_set_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ad0e7bd ptlrpc_request_set_replen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0b18eb6e lustre_free_reply_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0b5906f3 ptlrpc_init_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0bcacb5d RMF_MDS_HSM_USER_ITEM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c2d9c43 lustre_swab_lip_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0cf343dd RQF_LDLM_INTENT_BASIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0de6b0aa req_capsule_init_area +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0fca90bd ldlm_resource_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0fceb1b2 ptlrpc_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x10f18f20 interval_iterate_reverse +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x114ca3b7 target_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x115017f6 req_layout_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12b6f5a3 ptlrpc_connection_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12ef7ab0 sptlrpc_conf_client_adapt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12f22db4 ptl_send_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1483eca4 ldlm_lock_addref_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x14d192db lustre_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15645fab sptlrpc_unregister_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15955482 req_capsule_extend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15a3e4db RMF_GETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x172fb86d lustre_msg_hdr_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1747d8b3 ldlm_lockname +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x17950f60 RQF_SEC_CTX +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x17964bd9 sptlrpc_cli_wrap_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19108a0f RQF_OST_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19c08934 RQF_LDLM_INTENT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a6a3ce9 RQF_OST_GET_INFO_LAST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a9b76aa RMF_OBD_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1abd3258 RMF_SETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ace4b5f RQF_LDLM_BL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1bae0270 interval_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1be21715 lustre_msg_size_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c300d8e lustre_msg_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1cfc7355 client_import_del_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d043548 lustre_msg_set_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d0dff97 ldlm_pool_get_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1dc2051d RMF_SEQ_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1de9c288 lustre_swab_layout_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e8e48a4 sptlrpc_flavor_has_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1eb2a65f RQF_OST_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee46b51 lustre_init_msg_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee9eb3c RQF_MDS_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1f316310 ldlm_init_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20944aa4 sptlrpc_cli_ctx_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2096f5b5 RQF_OST_SET_GRANT_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20d6b82c RQF_LDLM_INTENT_QUOTA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x218a36ce ldlm_cli_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x21f3bf0f ldlm_lock_downgrade +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x233790b5 RMF_OST_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x243c1a77 llog_origin_handle_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x244e5558 lustre_msg_get_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x24aafdba RMF_MGS_TARGET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2585a629 RMF_SEQ_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2587513c RQF_LDLM_CP_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2629b9aa lustre_pack_reply_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x26588dfd ldlm_namespace_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x268e5843 ldlm_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x269554ce RQF_LDLM_INTENT_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x26f99d16 RQF_MGS_CONFIG_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x275546fb ldlm_lock_allow_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x278cb3af target_pack_pool_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x282fab47 ldlm_pool_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x285456b2 req_capsule_field_present +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x285e5b99 lustre_msg_set_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x28d020a4 ldlm_pool_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2927a811 sptlrpc_sec_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x29e0869a sptlrpc_get_hash_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a63a472 lustre_swab_ptlrpc_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c00c60d ptlrpc_sample_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c908b59 sptlrpc_register_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ca92fa8 ldlm_lock_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ccd5b87 ldlm_cli_cancel_list_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d56f168 ptlrpc_pinger_ir_up +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d798316 RMF_MGS_CONFIG_RES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4562fe RQF_LLOG_ORIGIN_HANDLE_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4ca396 RQF_LDLM_INTENT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ecd7515 lustre_msg_check_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f0e4f87 RQF_OST_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f9d289f ldlm_cli_enqueue_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2fc3750b ldlm_resource_unlink_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2fd2f737 lustre_msg_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x301d4fcd RQF_MDS_READPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x302937e0 RQF_MDS_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3052cc56 sptlrpc_gc_add_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3060b9c6 sptlrpc_rule_set_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x30e9470e ptlrpc_abort_inflight +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31838cb4 RMF_IDX_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3223b736 _ldlm_lock_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x325c7c78 ptlrpc_unpack_req_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3261b862 RQF_OST_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x33bb7761 ldlm_typename +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3459d72e sptlrpc_req_replace_dead_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x34a0eefa ldlm_lock_fail_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x353d491c ptlrpc_obd_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x356706e5 ldlm_pool_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x358fa13b ldlm_cli_cancel_unused_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x35939a3d lustre_swab_fiemap +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3835ab4b RQF_LLOG_ORIGIN_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38519137 ptlrpc_free_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3858fb94 RMF_OBD_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38c01799 RQF_LDLM_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38f98651 sptlrpc_cli_unwrap_bulk_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38fce533 lustre_msg_set_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3907bc36 ldlm_pool_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39403dd3 sptlrpc_cli_unwrap_bulk_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39db792e ldlm_pool_get_lvf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39ed94c5 ptlrpc_fail_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39f60a5f RMF_OST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a1e4bcb __lustre_unpack_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ab90f6e lustre_msg_bufcount +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ac00716 lustre_swab_hsm_user_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3af10fe4 req_capsule_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b6b7cba dump_ioo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bd354a6 ptlrpc_save_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bedb0c7 RMF_LLOGD_CONN_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c6303ce ldlm_prep_enqueue_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c63e62b RQF_MDS_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ca50f33 RQF_MDS_HSM_CT_REGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d7dc5f9 ldlm_pools_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d91b581 __ptlrpc_prep_bulk_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dc47695 lustre_msg_get_magic +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dddb3e2 dump_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ddf221a ptlrpc_req_finished_with_imp_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3e43e262 sptlrpc_import_flush_all_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3e5b1ceb ldlm_resource_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3e5e8c04 ldlm_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3e616bf7 ptlrpc_cleanup_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f034caf lustre_msg_get_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f752e78 RQF_MDS_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3fc4477e ptlrpc_req_set_repsize +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3fdd815a ptlrpc_unregister_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x401c112b ptlrpc_set_add_new_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x406e5c38 ldlm_pool_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x407f35eb llog_origin_handle_prev_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x40e7da87 llog_origin_handle_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x41008cef RQF_LDLM_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4137126a ldlm_pool_set_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x42afa713 req_capsule_client_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x436fa7f5 lustre_pack_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43705ee4 RQF_LOG_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43d7efc8 lustre_msg_set_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44036eda RQF_MDS_GET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x440c2a71 RMF_FIEMAP_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4481591d RQF_OST_SET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x448c413e ptlrpc_request_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4548bec1 ldlm_destroy_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45d05893 lustre_swab_lustre_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45e30cea lustre_swab_ldlm_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4720af03 ldlm_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4752a706 ldlm_namespace_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47c9b5b4 ldlm_namespace_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47f5e903 RMF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x48814c9f lustre_swab_ost_lvb_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x490e3c8a ldlm_pool_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x496de895 ptlrpc_stop_all_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x498c03c5 lustre_msg_set_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a5a2416 RMF_DLM_REQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a964db4 ptlrpc_invalidate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4aada03d ldlm_prep_elc_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b09ce4b lustre_swab_mdt_rec_reint +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4bd8d71c sptlrpc_sec_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c8ec098 ptlrpc_set_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4ce3b9b5 sptlrpc_gc_add_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d7580d0 lustre_swab_hsm_user_item +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e1706e5 lustre_msg_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e696b96 ptlrpcd_queue_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4eb03a6f ptlrpcd_destroy_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f766c3b lustre_swab_generic_32s +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50443f6a ptlrpc_init_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50dd74f8 RMF_STRING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x518b0e52 ptlrpc_prep_req_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x52c62150 RMF_RCS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53411557 RMF_DLM_REP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53a4a004 bulk_sec_desc_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5497e906 do_set_info_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x54ae5021 ldlm_lock_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x555eb7fe RQF_MDS_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5635d4de ptlrpc_req_finished +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x56816e49 req_capsule_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x587916d0 sptlrpc_cli_enlarge_reqbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x588035b4 RMF_UPDATE_REPLY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x594a4405 req_capsule_server_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x595ab175 lustre_swab_obd_quotactl +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x596582bf RMF_GETINFO_VALLEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x59ca398b ptlrpc_add_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a057439 interval_search +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5af0d02a ldlm_lock_dump_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b6ba895 lustre_packed_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c2a4810 req_capsule_client_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c6a3a83 RQF_SEQ_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5caae213 ptlrpc_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5d7e9735 ptlrpc_replay_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e0b19b1 RMF_CLUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e2b7558 lustre_msghdr_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e45849e ptlrpc_unregister_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e61a7e8 llog_origin_handle_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e6f435d RQF_OST_BRW_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e80f899 RQF_LLOG_ORIGIN_HANDLE_READ_HEADER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e8eb790 req_capsule_server_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ec3284d RQF_MDS_HSM_CT_UNREGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ef831ee lustre_msg_get_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f873d0b ldlm_namespace_new +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f96ccdd ptlrpc_connection_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6042bc15 RQF_MDS_REINT_RENAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x604e2505 RMF_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x607ec932 lustre_msg_set_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6095556d sptlrpc_lprocfs_cliobd_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x60b2b634 ldlm_namespace_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x60c2fd3c ptlrpc_set_import_active +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x60cd26ad RQF_MDS_REINT_CREATE_SYM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61021192 ldlm_cli_cancel_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61646e1b RQF_MDS_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6175bbb3 ptlrpc_add_rqs_to_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x618ad203 RQF_OST_GET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62192cf8 dump_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62aaae3f RQF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6315dd4c RMF_LLOGD_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6352a62d ldlm_get_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x639828a2 ptlrpc_request_bufs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x63aa9c08 ptlrpc_reconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x647b6e48 lustre_swab_ldlm_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x649d992f ldlm_cli_enqueue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x653723dc RMF_LOGCOOKIES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6640560b ptlrpc_req_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x685eeaba RMF_DLM_GL_DESC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68cb2541 interval_is_overlapped +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68f49e5e ptlrpc_expired_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6912990a RQF_OST_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6915b7f1 ptlrpc_commit_replies +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x696ba811 lustre_msg_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69c9f04d RQF_MDS_REINT_LINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a3785c9 RMF_EADATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a8d6efa req_capsule_client_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6aba1fbd ptlrpc_request_alloc_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6b9754f1 sptlrpc_enc_pool_put_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d72828c sptlrpc_conf_log_update_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d7931cc RQF_UPDATE_OBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6eae1f1e ldlm_pool_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ed20499 ldlm_revalidate_lock_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6efa82b0 RQF_MGS_TARGET_REG +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f6dc736 lustre_swab_mdt_remote_perm +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f8e487b ldlm_namespace_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6fb92092 sptlrpc_flavor2name_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x703538e4 lustre_swab_hsm_current_action +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x70e744d6 ptlrpc_queue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x723d43b6 sptlrpc_rule_set_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x725a892c RQF_MDS_REINT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74840056 lustre_msg_set_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75324b1d sptlrpc_cli_ctx_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75a2c40d ldlm_put_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75f254f4 lprocfs_wr_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76b728e5 lustre_swab_update_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76cb6d86 lprocfs_rd_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77571cc6 lustre_swab_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77840c82 sptlrpc_rule_set_choose +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7861ede5 req_capsule_server_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x788e6b61 sptlrpc_cli_ctx_expire +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78bf9136 lustre_swab_ldlm_lock_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7965d591 ptlrpc_prep_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a832f10 RMF_CONN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7af7f016 ptlrpc_request_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b158da4 lustre_swab_ldlm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7bbf8001 RMF_MDT_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7bf755cb __ptlrpc_free_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7c4c6107 RQF_LDLM_CONVERT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7c7d898b sptlrpc_import_sec_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d1ecd7f RQF_LDLM_INTENT_LAYOUT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d41a8b9 RQF_QUOTA_DQACQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dc0e7cd RMF_QUOTA_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dfb3c18 lustre_msg_clear_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7e027336 req_capsule_server_sized_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7e5be5b6 sptlrpc_gc_del_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7e5fa1a3 req_capsule_server_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4925d8 interval_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4c99b1 ldlm_expired_completion_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f5a1cc7 lustre_msg_set_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f6d2357 lustre_msg_is_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f711157 req_capsule_filled_sizes +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7fda90a2 ptlrpc_recover_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7fecaff7 ptlrpc_send_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x805dc845 ldlm_lock2handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80a9e8c3 lustre_msg_get_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80ecb4e3 RMF_MDS_HSM_CURRENT_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x810d0ac1 ptlrpc_restart_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x817d7f1f lustre_msg_add_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x826cd77d ptlrpc_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x826d3c4f RQF_LDLM_GL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x82a9b9b5 sptlrpc_get_bulk_checksum +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x837efb00 RMF_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x83ee4419 ptlrpc_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85135801 RMF_DLM_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85a9e0d8 RMF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85bf3a61 llog_initiator_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85eecf67 sptlrpc_get_hash_alg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8603ea25 ptlrpc_hpreq_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x863db6eb RMF_HSM_USER_STATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x86fa8c3b ldlm_cli_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8760beaf lustre_swab_ldlm_policy_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x876c2551 RMF_GETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87a4386d lprocfs_wr_evict_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87bf7b3c sptlrpc_get_next_secid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x883993e2 ptlrpcd_wake +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8872f3d2 RMF_SETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x88fff52d RMF_CAPA2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x89f9edf7 RQF_MDS_REINT_SETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a11885a ptlrpc_unregister_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a1ea476 lustre_swab_hsm_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a257736 RQF_MDS_HSM_STATE_GET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ac440fa ptlrpc_uuid_to_connection +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b41e553 ldlm_lock_fail_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b854254 lustre_swab_mgs_config_res +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8bad3c1a sptlrpc_target_update_exp_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8c715e73 ptlrpc_activate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cb71d4b RQF_MDS_REINT_CREATE_SLAVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d77ea75 lustre_msg_set_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8da3fca7 lustre_msg_add_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8dac26af ldlm_blocking_ast_nocheck +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8daeebd9 ldlm_lock2desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8e5e06fc ldlm_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8e9abe4d RMF_GENERIC_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f0aceac RQF_MDS_HSM_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f6d7b94 ptlrpc_unpack_rep_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8fa247b3 ptlrpc_set_add_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8fec0451 lustre_msg_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x90c89724 client_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x90de5d4e ptlrpc_request_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x919c4ce3 RMF_OBD_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91cf58d3 RQF_MDS_PIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x937b1ee0 lustre_swab_mdt_ioepoch +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9553c633 RQF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x95d08f0c lustre_swab_mgs_target_info +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9658f67e ldlm_destroy_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9660ace0 RMF_FLD_MDFLD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x967bfd52 RQF_OBD_PING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x96fab0c3 ptlrpc_start_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9798f2f1 RQF_MDS_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x980fcfdc ptlrpc_connection_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x991f4df5 ptlrpc_pinger_sending_on_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9921c5c4 __ldlm_handle2lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x994c0621 lock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a258886 RQF_MDS_GETSTATUS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a6f2f6d lustre_msg_set_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b45ab6d ptlrpc_disconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b88f6ce RMF_NIOBUF_REMOTE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9bb5198b RQF_MDS_CLOSE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9d7ea314 sptlrpc_pack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9de66148 client_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9ea5a441 ptlrpc_set_next_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9f229dfd ptlrpc_at_set_req_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9f462d6c ldlm_extent_shift_kms +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9fb088f1 lustre_swab_lov_mds_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa08652d7 sptlrpc_cli_ctx_wakeup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa10f0d3d RMF_UPDATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa163f4c3 dump_rniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2244636 RQF_MDS_GETATTR_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa22c0086 ldlm_error2errno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2ddda63 llog_origin_handle_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3d2a6ee RMF_CAPA1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa47787ef RMF_PTLRPC_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa49f9def lustre_pack_reply_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4a2d089 RQF_OST_PUNCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4bea5ef lustre_swab_lmv_user_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5458dad ldlm_lock_decref_and_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5880075 ldlm_errno2error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa6c1f763 ptlrpc_prep_bulk_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa6c436ca RQF_MDS_WRITEPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa726e8a1 ptlrpc_resend_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7d55cc3 RQF_MDS_REINT_CREATE_RMT_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7e360b1 RMF_OBD_IOOBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7e7d4f8 client_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7ec567d RMF_CONNECT_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa955aa91 ptlrpc_prep_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9704f80 lustre_msg_get_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9a5f9ab req_capsule_has_field +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9c4658e lustre_swab_lov_user_md_v3 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9edf09d RQF_OBD_IDX_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xab099469 ldlm_reprocess_all_ns +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xac890398 ptlrpcd_alloc_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xacc82ce1 ptlrpc_prep_fcset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaddc3979 lustre_swab_lustre_capa_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xae65b077 req_capsule_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaef09d7f ldlm_cli_cancel_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf4e9658 RQF_MDS_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf50a0d6 RMF_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf5793b5 ldlm_namespace_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf8ab969 ptlrpcd_add_rqset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf9c1916 ldlm_flock_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0751fa4 RQF_LLOG_ORIGIN_HANDLE_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1022db0 ptlrpc_lprocfs_brw +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb128c777 req_capsule_client_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1b43d8a dump_rcs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb27c2374 lustre_msg_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb291473d lustre_msg_early_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb2b1817d lustre_swab_ost_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb37288a6 ptlrpc_wake_delayed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4a7ecf3 lustre_msg_add_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb512ebc2 sptlrpc_parse_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb54d34f2 ldlm_lock_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb5988ff0 client_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb61cb95a RQF_MDS_GETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb652bf67 ldlm_pool_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb66a0f7e lprocfs_wr_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb68476df interval_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb6aafd03 RQF_MDS_DONE_WRITING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7b38189 RMF_MDT_MD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7fa3cc8 RMF_LLOG_LOG_HDR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb8f45897 lprocfs_wr_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb903634e RQF_OST_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9b631cf lustre_swab_mgs_config_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9b81e4b ldlm_pool_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbaa76097 lustre_msg_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbc1370dc lustre_shrink_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd83bc44 RQF_OBD_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe1812a6 _debug_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe47bc7e ping_evictor_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf98b86f RQF_MDS_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbffd4313 RQF_OST_BRW_WRITE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc012a2c1 req_capsule_set_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc06c4670 lustre_msg_get_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0867da7 RMF_REC_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0cdf55e RMF_MGS_SEND_PARAM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0df67a3 ldlm_init_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc1019f0a ptlrpc_mark_interrupted +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2986d28 lustre_swab_ldlm_res_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2b1af57 RQF_MGS_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2be922a RMF_SYMTGT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc324b19e ptlrpc_resend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc343cf27 ptlrpc_buf_set_swabbed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc3d15ee7 sptlrpc_import_flush_my_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc4fedc2d ptlrpc_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc559a634 RMF_LAYOUT_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc60a60e1 RQF_OST_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc61a2221 ptlrpc_set_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc694be4b RQF_LLOG_ORIGIN_HANDLE_PREV_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc6c48b52 ldlm_cancel_resource_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc72ad565 ldlm_lock_change_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc763fabc sptlrpc_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc79b9c67 ldlm_pools_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7ca8257 RQF_MDS_REINT_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7e47564 ptlrpc_interrupted_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8781359 ptlrpc_buf_need_swab +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8f586a9 ptlrpc_connection_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc972f259 ptlrpc_register_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc984f214 client_import_find_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xca5a81ec ptlrpc_pinger_ir_down +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xca9c70df client_disconnect_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2cc0cf lustre_swab_lquota_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2ceaff sptlrpc_secflags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb4694d1 ldlm_lock_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcc945ef8 ptlrpc_lprocfs_unregister_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce1a689b sptlrpc_enc_pool_add_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce86066d lustre_msg_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcec513c9 RQF_MDS_UNPIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xced015be sptlrpc_rule_set_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9963db lustre_msg_get_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9aab6a RQF_MDS_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd09c0896 ldlm_get_enq_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2261f83 req_capsule_server_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2983334 lustre_swab_swap_layouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2e0d4eb lustre_msg_get_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd3dae408 ldlm_it2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd537ded2 lustre_swab_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd55e5437 ldlm_enqueue_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd66d6596 ldlm_glimpse_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd67a5d7b lustre_swab_update_reply_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd69e0a27 RQF_MDS_IS_SUBDIR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6c0bd0a ptlrpc_pinger_del_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6c3ebfb RMF_FIEMAP_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7910326 lustre_swab_obd_statfs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8b91b3e lustre_swab_lov_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8f06300 RQF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd9561861 RQF_LDLM_INTENT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda2ac111 sptlrpc_proc_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda4adb27 sptlrpc_target_export_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb06399c ldlm_resource_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb1fb0a2 RQF_MDS_REINT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb9d5a6a lustre_swab_niobuf_remote +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdbffad38 target_print_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdcb7ba7a req_capsule_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdcc05f6c ptlrpc_cleanup_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdcf910b9 lustre_swab_ost_last_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd0962ac ptlrpcd_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd0ffb04 sptlrpc_flavor2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd30d7bf RMF_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xddc40a85 lustre_msg_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde12d36b RMF_MDS_HSM_ARCHIVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde555d70 sptlrpc_enc_pool_del_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdee87192 sptlrpc_conf_log_update_begin +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf66c283 ptlrpc_retain_replayable_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf701ae7 lustre_swab_fid2path +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe046f255 ldlm_cli_cancel_unused +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0cc694c RQF_LLOG_ORIGIN_HANDLE_NEXT_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe2689a2a sec2target_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe40e0a50 lustre_msg_get_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe57bd972 sptlrpc_current_user_desc_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe643998e RQF_OST_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe678b0ae ptlrpc_request_alloc_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6c997b6 sptlrpc_sec_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6f0dc96 RQF_OST_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7062b5f RMF_U32 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe70eb2ab sptlrpc_conf_target_get_rules +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7292721 ptlrpc_deactivate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe74d2879 ptlrpc_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7512278 ptlrpcd_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7ac165d llog_origin_handle_next_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe8cb3069 llog_origin_handle_read_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe9597a72 ldlm_lock_allow_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe96916ee ptlrpc_nrs_policy_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe9b71479 ptlrpc_schedule_difficult_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeaa09080 ptlrpc_init_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabaa0b1 lustre_swab_mdt_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabac4fc sptlrpc_rule_set_merge +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeb1fa0ce req_capsule_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xebb64e68 req_layout_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec226f66 ping_evictor_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec939a00 RQF_MDS_REINT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeca470b0 ldlm_completion_ast_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecace5c1 RQF_OST_GET_INFO_GENERIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed1c10d6 ptlrpc_connection_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xedcb740d sptlrpc_name2flavor_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xef1aeca9 RMF_FLD_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0241d6e lustre_swab_hsm_progress_kernel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0d52b5f ptlrpc_pinger_suppress_pings +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf1300275 _sptlrpc_enlarge_msg_inplace +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf1c6fb8f ldlm_pool_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf277c125 RQF_OST_GET_INFO_FIEMAP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf27d49dc sptlrpc_target_choose_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf2cfefec req_capsule_server_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf35f132b lustre_swab_ldlm_resource_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3d44370 RQF_OST_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf43540b9 lustre_swab_mgs_nidtbl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf45085e1 sptlrpc_conf_log_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf4e3efb0 ldlm_cli_update_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf524c2b6 ptlrpc_register_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf55c033b RMF_MGS_CONFIG_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf584a16b sptlrpc_part2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf596e9ae sptlrpc_conf_log_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf607fc23 sptlrpc_flavor2name_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf617ab8a lustre_msg_get_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf697b756 ldlm_dump_all_namespaces +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7408f84 lustre_swab_hsm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7ba40c0 RMF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7c23059 ldlm_cli_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf85cb27e sptlrpc_parse_rule +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf870fed9 RQF_LDLM_GL_DESC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf8b1628d ldlm_register_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9051bd6 RQF_QC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf94e41e0 deuuidify +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf973aa93 lustre_swab_lov_user_md_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9a3369a ptlrpc_nrs_policy_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9ee11e2 lustre_msg_set_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9f72dfc RMF_TGTUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa51688d interval_insert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfac52451 sptlrpc_enc_pool_get_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb03d368 ptlrpc_service_health_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb612a25 client_import_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfbaa05bd unlock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc2fa83f ptlrpc_del_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd148bf8 RMF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfef6428d sptlrpc_target_sec_part +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfefdf4e1 ldlm_blocking_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff02a0e9 ldlm_lock_set_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff0c35b5 req_capsule_other_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffc807e8 sptlrpc_unpack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffe29c3f RQF_LDLM_ENQUEUE +EXPORT_SYMBOL drivers/staging/media/cxd2099/cxd2099 0x86d943be cxd2099_attach +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x117284e0 go7007_snd_remove +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x1e9f4774 go7007_register_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x33c90959 go7007_update_board +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x4308cebb go7007_boot_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x5636be1f go7007_read_addr +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x56ef2375 go7007_alloc +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x9283ce58 go7007_read_interrupt +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xae0a46f1 go7007_snd_init +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xe35bb983 go7007_parse_video_stream +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x07104417 rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x098a38f2 rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0ca6a343 rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0fcee817 rtllib_wpa_supplicant_ioctl +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1bd144cb free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1f3eb1ea rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x20dbe65a rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2b314d41 rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2c6d3083 rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2e7b30a8 RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x31fc13cf rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3af50dda rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x594ba189 rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5a923921 Dot11d_Channelmap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x63f331d6 rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x66c35f9c rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6b1c6f99 rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6be8058a rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6bf93f14 HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6fe602f5 rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x762c4bd7 rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x79528bed rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7ab4af75 notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7b0b60e3 rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x82b8da9f rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x847ea971 rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x97d537c8 rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9b61bac1 rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9f141f28 rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9fe13cc3 rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa115e5c5 rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa1d10de3 rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa24a30b0 rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa3a2fad9 rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa5c791aa rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xada3331c rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xaf6e0b7c rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb557d412 rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb893f016 rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb96bb322 rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbe1420f2 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbe7b20bb rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbee13346 rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc57979e2 rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd16f023b rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd2578bfb alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdfb6b863 rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe49b6278 rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe816dd15 dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf2606980 rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xfe791679 rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x01831f0d ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0afbf843 notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x14a563c0 ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x17d4ee97 ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x247e89d5 HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2514ca37 ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2a077f1b ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2a6c4763 ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2c731359 ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2f8aa6dc ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2fc24cd0 ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x31908ac3 ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4c048404 ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x500c09ec ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x53ea1e4c DOT11D_ScanComplete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5834ac99 SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5a1ad5b5 ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5dbc8dff ToLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x63453781 ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6385802e ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6e7458aa ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6f5fa282 ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x743de93c ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7ab929ac ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7d577b29 ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8463a66d ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x85048adb ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8b71afad ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x906b07b4 ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x987aecb6 ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x98ed8352 DOT11D_GetMaxTxPwrInDbm +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9d5be6df ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa8424490 ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa9160505 ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb1c0efa9 ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb2c397fe Dot11d_UpdateCountryIe +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb7dfb889 Dot11d_Reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb9e9815a ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbe76dc96 ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc1a241fb ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc1f7bae7 ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc2c4f3c3 ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc81f1a7a ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xce6b7638 ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd15ec088 ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd3c9d647 ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd6bef447 ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xdd099116 Dot11d_Init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe218a8f2 ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe2e087cc ieee80211_send_probe_requests_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe6a58ee1 ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe9bc8c00 IsLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xea9b54c5 ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xeadaa474 ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf0c96ae3 ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf28f1497 ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0017f35f set_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x00ea0cde set_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x06d6f244 get_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x09df8f3e set_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0a8d32c3 get_bypass_slave_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1936264c set_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1d2eb8ca get_tap_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x203af1f7 reset_bypass_wd_timer_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2070f14a set_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x27b990ef get_bypass_info_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2ba7cd35 get_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2c3f1c17 get_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2f59e636 get_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2fdb893a get_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x361cf40a get_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x45ca99c3 set_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x550a188c set_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x5cb59e92 get_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x66b60122 set_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x675208c0 set_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x692623f2 get_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x75131ec6 set_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x76c0b7d0 set_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e872825 get_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e8d701e get_wd_expire_time_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x86388b07 get_bp_disc_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x93ae4648 get_wd_set_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x95e42b0d is_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9df5f807 set_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9e21f42e set_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xa689a214 get_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xae117788 get_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xc368d30d get_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xccab5de0 get_bypass_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd3e034b3 get_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9c1ccfc get_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9d38d97 set_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xe640f06e set_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xecdaa456 set_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xedcd3c1b get_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf06d67bf set_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf57c1671 get_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf693c3a1 bp_if_scan_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf8237882 get_bypass_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xfa59240d get_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05af3c4c set_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05b08a42 set_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0b0d5ce0 get_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0fc2e83c reset_bypass_wd_timer +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x123a8133 get_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x157ec89c get_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2440f05a get_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2b01d1d4 set_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2c27a2f0 set_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2da97f4b is_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2e86c67b get_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37416370 get_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37bdab27 get_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x3da96a18 get_bypass_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4025805e get_bypass_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4940a0cc get_bypass_info +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4d21ff51 get_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5147360c get_bp_disc_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x515d4df1 get_bypass_slave +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5560267e set_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5be44d44 set_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6653590c get_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6bda14ec get_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x72c618ae set_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x76d47e6f set_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x794e3815 set_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x7c6cbc16 get_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x84a263dc set_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x8a16f22c set_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x946ff795 get_wd_set_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x94f6aff2 get_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x9d1ecf73 set_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xb1385629 set_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xbff68c45 set_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xc871c561 get_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xcee528df set_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd202dd85 get_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd787f151 get_wd_expire_time +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xdb6a39d2 get_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xebd25ae5 get_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf1e9f8c1 set_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf224abd9 get_tap_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf5a591b2 set_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf643fd4c get_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x0a600a5a xillybus_do_cleanup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x65c06d84 xillybus_init_endpoint +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xded4c702 xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xea343c6e xillybus_endpoint_remove +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x025dd69a iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0a019f58 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0bdd5a8f iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0c4ce8aa iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x12e7a219 iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x20399c37 iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x314e222a iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x33be9bcb iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x47f4e9dd iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4ffdf013 iscsit_set_unsoliticed_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5316eb9d iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5815c1fa iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x620ad052 iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x65224cba iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6e974d87 iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x78b99170 iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x94aaf2c9 iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9ba3f15e iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa0e7a72d iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa33b168d iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb6ab08be iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb77d45a0 iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb879dec3 iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc3fb5cd7 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc994914c iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xdac9925d iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xdd91e8d5 iscsit_handle_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xede9b4fa iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/target_core_mod 0x00b7ac93 target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x02de3b18 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x05fc5d7c target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x075a8210 fc_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x0b03ffeb transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0x0cf82699 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0x0feebb3c sas_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x1145bfa1 transport_init_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x2049c48b transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x207649a2 core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x2d2cbd09 transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x2d664b62 sbc_execute_unmap +EXPORT_SYMBOL drivers/target/target_core_mod 0x2daff8c0 target_get_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x378b97d7 transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x388929ff core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x39a4152d transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0x3e57b9d2 transport_subsystem_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x40c98333 target_fabric_configfs_free +EXPORT_SYMBOL drivers/target/target_core_mod 0x42ca81ce core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0x4480275f core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0x46137e74 transport_subsystem_release +EXPORT_SYMBOL drivers/target/target_core_mod 0x4dbb3808 target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x560c3d15 transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x5edd382c spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0x5f89965a transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x6ad0cf12 fc_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x6b9e2103 target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x6f2c158d fc_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x73fdad78 iscsi_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x759255c9 transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x7b332ee2 sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x7b65535d spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x7dbada9d transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x81cf223f core_tpg_del_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x85aa880c transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x85bf6079 transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x86c71982 core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x8a23d5c1 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x8ee9fcad __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x8eff4871 target_fabric_configfs_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x9301480a iscsi_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x95343f8c spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x9702ad16 target_put_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x99108645 iscsi_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x991c3a14 target_setup_cmd_from_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xa628aacf sas_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xb236a11d iscsi_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0xb27ca5c9 target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xbd81b76a sas_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xc0e55902 spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0xc524fb56 core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0xc5d50502 target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0xc89120f5 target_fabric_configfs_init +EXPORT_SYMBOL drivers/target/target_core_mod 0xcb1f09b8 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xd4f11796 transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xd60a23fe transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0xd6778eae sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0xd80ea8f5 sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0xdc2973bd transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xdea290e8 fc_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xe8dc5bbf target_fabric_configfs_register +EXPORT_SYMBOL drivers/target/target_core_mod 0xeb2b4823 sas_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0xeb91bc6b transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0xedb3cc06 target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xeeb07301 transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xf01621c7 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf16844fe transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0xf25e2f53 core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xf2c3a6d5 transport_check_aborted_status +EXPORT_SYMBOL drivers/target/target_core_mod 0xf2c3efda core_tpg_add_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xf8b35b71 target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0xf9952312 core_tpg_clear_object_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0xfb71aa5e target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0xfbe87762 transport_free_session +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0x3cf72daf usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0x4507ea57 unregister_gadget_item +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x0784581c gether_set_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x0aeaf962 gether_get_host_addr_u8 +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x1bcb8cb4 gether_connect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x22cf0017 gether_set_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x38753e50 gether_setup_name_default +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x388ca623 gether_register_netdev +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x429e5238 gether_setup_name +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x572ffb7c gether_get_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x6de624dd gether_get_host_addr_cdc +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x9d3774b9 gether_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xb9e081f9 gether_set_gadget +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xd7181d01 gether_get_ifname +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xdfc549fc gether_get_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xec4a1cce gether_set_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xf59216d2 gether_get_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3a6d4f22 rndis_free_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3ca38e3a rndis_signal_connect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x4ca90996 rndis_signal_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x5d22b406 rndis_register +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x785d494b rndis_msg_parser +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x840dd143 rndis_deregister +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x96dced66 rndis_add_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x988ad2a2 rndis_set_param_vendor +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x9acf72e4 rndis_set_param_medium +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x9c6d08ec rndis_set_param_dev +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xa90054ee rndis_uninit +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xb28196d7 rndis_rm_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xb971ebca rndis_get_next_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xd2fe47b1 rndis_set_host_mac +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1710b539 fsg_fs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1b1cc3af store_cdrom_address +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x248846ea fsg_store_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x2933ee1d fsg_ss_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x2e610892 fsg_show_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x2f3edf0a fsg_store_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x33d723dd fsg_lun_open +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x398778e1 fsg_ss_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x423845e4 fsg_ss_bulk_in_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x4ab9ee15 fsg_store_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x56344daf fsg_hs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x57132951 fsg_lun_fsync_sub +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x5cb3299f fsg_show_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x6c1a4fd3 fsg_show_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x72f628ff fsg_show_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x95cffb3e fsg_hs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5cae92f fsg_ss_bulk_out_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5f99b69 fsg_fs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa8c724c5 fsg_store_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb52ba28a fsg_intf_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb54d0d95 fsg_fs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xd3397041 fsg_show_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xefb318e3 fsg_store_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xf074d24b fsg_lun_close +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xf4efc0c8 fsg_ss_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_rndis 0xaa33aaf6 rndis_borrow_net +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0x06db58a5 sl811h_driver +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xa64a4cea usb_nop_xceiv_unregister +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xd0e43207 usb_nop_xceiv_register +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x289c0861 usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x3d6b46ed usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x59adc96b usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x79adb8b5 usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x8932ffdb usb_wwan_set_termios +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x93d7cdab usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xb903b9d5 usb_wwan_ioctl +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xb9459109 usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xbb9e9cc0 usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xca861dc8 usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xceca96e6 usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xf01b4828 usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xfc317ecb usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x8f0ce62f usb_serial_resume +EXPORT_SYMBOL drivers/usb/serial/usbserial 0xcbaed61c usb_serial_suspend +EXPORT_SYMBOL drivers/vhost/vringh 0x0dda8c5a vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x1f063017 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x2eae4a2a vringh_getdesc_user +EXPORT_SYMBOL drivers/vhost/vringh 0x36dfce73 vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3b304ebb vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3eaf442a vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x3fa42e4f vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x4311cd91 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5dafbd4e vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x66af098b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x6d0e7948 vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x76bd9a5d vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x97fa07e9 vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xaf8e4a0e vringh_notify_disable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xafb47dae vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc884d704 vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc8bee0a4 vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xda4ea4cc vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0xde804bb9 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/video/backlight/generic_bl 0x366d19ef genericbl_limit_intensity +EXPORT_SYMBOL drivers/video/backlight/lcd 0x1b32653f lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0x2587865c devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0xb4cf7009 devm_lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xcfd4f58f lcd_device_register +EXPORT_SYMBOL drivers/video/cyber2000fb 0x0122a29f cyber2000fb_attach +EXPORT_SYMBOL drivers/video/cyber2000fb 0x0cc3ede5 cyber2000fb_detach +EXPORT_SYMBOL drivers/video/cyber2000fb 0x534b6f18 cyber2000fb_disable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xb39f68d1 cyber2000fb_enable_extregs +EXPORT_SYMBOL drivers/video/macmodes 0x233917d1 mac_vmode_to_var +EXPORT_SYMBOL drivers/video/macmodes 0x7646955a mac_find_mode +EXPORT_SYMBOL drivers/video/macmodes 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x0e5c6008 matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x1c7b5233 matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x21dea9cf g450_mnp2f +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x00562ece DAC1064_global_restore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x6f340acd DAC1064_global_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x882b7adc matrox_mystique +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xc7f3efbb matrox_G100 +EXPORT_SYMBOL drivers/video/matrox/matroxfb_Ti3026 0xce81b45b matrox_millennium +EXPORT_SYMBOL drivers/video/matrox/matroxfb_accel 0x3d37df78 matrox_cfbX_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x5d176a09 matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x7795416c matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xe225e24f matroxfb_register_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xf6291a55 matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x427e900e matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x4d650228 matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x1fd883c6 matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xa1b9c1e7 matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xabc35f89 matroxfb_read_pins +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xabcfb874 matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xdefae730 matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/mb862xx/mb862xxfb 0x9f6047b3 mb862xxfb_init_accel +EXPORT_SYMBOL drivers/video/output 0x3f2d1899 video_output_register +EXPORT_SYMBOL drivers/video/output 0x657c6f55 video_output_unregister +EXPORT_SYMBOL drivers/video/sis/sisfb 0x3037658e sis_malloc +EXPORT_SYMBOL drivers/video/sis/sisfb 0x454a3cf0 sis_free +EXPORT_SYMBOL drivers/video/svgalib 0x17f3f471 svga_set_default_seq_regs +EXPORT_SYMBOL drivers/video/svgalib 0x1bbe7fc8 svga_tileblit +EXPORT_SYMBOL drivers/video/svgalib 0x1be6dc30 svga_set_textmode_vga_regs +EXPORT_SYMBOL drivers/video/svgalib 0x26f09ff6 svga_tilecursor +EXPORT_SYMBOL drivers/video/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/svgalib 0x6e4adb1e svga_check_timings +EXPORT_SYMBOL drivers/video/svgalib 0x7860fab5 svga_tilecopy +EXPORT_SYMBOL drivers/video/svgalib 0x80f24d95 svga_wcrt_multi +EXPORT_SYMBOL drivers/video/svgalib 0x8de63fb4 svga_set_timings +EXPORT_SYMBOL drivers/video/svgalib 0xbdc2da03 svga_get_caps +EXPORT_SYMBOL drivers/video/svgalib 0xc2364a0c svga_settile +EXPORT_SYMBOL drivers/video/svgalib 0xc6f63688 svga_tilefill +EXPORT_SYMBOL drivers/video/svgalib 0xd1429fca svga_wseq_multi +EXPORT_SYMBOL drivers/video/svgalib 0xd22ca511 svga_set_default_atc_regs +EXPORT_SYMBOL drivers/video/svgalib 0xe28d2a49 svga_set_default_gfx_regs +EXPORT_SYMBOL drivers/video/svgalib 0xef774f5d svga_compute_pll +EXPORT_SYMBOL drivers/video/svgalib 0xf0e09926 svga_get_tilemax +EXPORT_SYMBOL drivers/video/svgalib 0xf2db5956 svga_match_format +EXPORT_SYMBOL drivers/video/syscopyarea 0x595c43b0 sys_copyarea +EXPORT_SYMBOL drivers/video/sysfillrect 0xe1aaed7c sys_fillrect +EXPORT_SYMBOL drivers/video/sysimgblt 0xd1cd90ba sys_imageblit +EXPORT_SYMBOL drivers/video/vgastate 0x686de290 restore_vga +EXPORT_SYMBOL drivers/video/vgastate 0xe7a2620e save_vga +EXPORT_SYMBOL drivers/vme/vme 0x00d7e722 vme_lm_count +EXPORT_SYMBOL drivers/vme/vme 0x072f901c vme_master_rmw +EXPORT_SYMBOL drivers/vme/vme 0x0a523b75 vme_irq_generate +EXPORT_SYMBOL drivers/vme/vme 0x0c6bdc3f vme_master_read +EXPORT_SYMBOL drivers/vme/vme 0x0ec5babe vme_dma_free +EXPORT_SYMBOL drivers/vme/vme 0x156bc611 vme_slave_request +EXPORT_SYMBOL drivers/vme/vme 0x187f7fd9 vme_dma_list_free +EXPORT_SYMBOL drivers/vme/vme 0x20df5a3d vme_dma_pci_attribute +EXPORT_SYMBOL drivers/vme/vme 0x227cf7b3 vme_lm_request +EXPORT_SYMBOL drivers/vme/vme 0x273f407c vme_irq_free +EXPORT_SYMBOL drivers/vme/vme 0x3240d635 vme_irq_request +EXPORT_SYMBOL drivers/vme/vme 0x3e95083c vme_slave_get +EXPORT_SYMBOL drivers/vme/vme 0x41e1147c vme_unregister_driver +EXPORT_SYMBOL drivers/vme/vme 0x46649cd1 vme_lm_set +EXPORT_SYMBOL drivers/vme/vme 0x48b99a13 vme_lm_free +EXPORT_SYMBOL drivers/vme/vme 0x4baf35a7 vme_master_get +EXPORT_SYMBOL drivers/vme/vme 0x52983a4f vme_master_write +EXPORT_SYMBOL drivers/vme/vme 0x535c8308 vme_dma_pattern_attribute +EXPORT_SYMBOL drivers/vme/vme 0x5aff4177 vme_lm_get +EXPORT_SYMBOL drivers/vme/vme 0x6deadebe vme_new_dma_list +EXPORT_SYMBOL drivers/vme/vme 0x79a33f85 vme_get_size +EXPORT_SYMBOL drivers/vme/vme 0x7cf35220 vme_master_free +EXPORT_SYMBOL drivers/vme/vme 0x821a1c3e vme_bus_type +EXPORT_SYMBOL drivers/vme/vme 0x836c5dd5 vme_dma_list_add +EXPORT_SYMBOL drivers/vme/vme 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL drivers/vme/vme 0x9aeb07e8 vme_lm_attach +EXPORT_SYMBOL drivers/vme/vme 0xa2a335bd vme_alloc_consistent +EXPORT_SYMBOL drivers/vme/vme 0xa31bdf07 vme_master_set +EXPORT_SYMBOL drivers/vme/vme 0xa3844288 vme_register_driver +EXPORT_SYMBOL drivers/vme/vme 0xa6a8d386 vme_master_request +EXPORT_SYMBOL drivers/vme/vme 0xab8e55a0 vme_dma_request +EXPORT_SYMBOL drivers/vme/vme 0xac31236d vme_dma_list_exec +EXPORT_SYMBOL drivers/vme/vme 0xba6ffe06 vme_irq_handler +EXPORT_SYMBOL drivers/vme/vme 0xc9b94aed vme_unregister_bridge +EXPORT_SYMBOL drivers/vme/vme 0xca5ee09a vme_free_consistent +EXPORT_SYMBOL drivers/vme/vme 0xcc1d5d6f vme_slot_get +EXPORT_SYMBOL drivers/vme/vme 0xdff905e5 vme_slave_free +EXPORT_SYMBOL drivers/vme/vme 0xefd1624a vme_dma_free_attribute +EXPORT_SYMBOL drivers/vme/vme 0xf5a10e25 vme_slave_set +EXPORT_SYMBOL drivers/vme/vme 0xfacd8e72 vme_dma_vme_attribute +EXPORT_SYMBOL drivers/vme/vme 0xfe25bb23 vme_register_bridge +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x34354f10 w1_ds2760_recall_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x482ce996 w1_ds2760_store_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xc789c1aa w1_ds2760_write +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xe653bbb9 w1_ds2760_read +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x3240b3bb w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x88362765 w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x4b29cbbf w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0xfe1f7855 w1_ds2781_io +EXPORT_SYMBOL drivers/w1/wire 0x1e3040ea w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0x26dbaecf w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0x68831e2d w1_remove_master_device +EXPORT_SYMBOL drivers/w1/wire 0xb4dab97a w1_unregister_family +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0x04e133fc iTCO_vendor_check_noreboot_on +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xa78bd894 iTCO_vendor_pre_set_heartbeat +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xb5f20875 iTCO_vendor_pre_keepalive +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xc4f657bf iTCO_vendor_pre_stop +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xdc6effc9 iTCO_vendor_pre_start +EXPORT_SYMBOL fs/btrfs/btrfs 0x27476846 ulist_reinit +EXPORT_SYMBOL fs/btrfs/btrfs 0x41e6a9d2 ulist_init +EXPORT_SYMBOL fs/btrfs/btrfs 0x7e2ee765 ulist_free +EXPORT_SYMBOL fs/btrfs/btrfs 0xa2eec2e8 ulist_fini +EXPORT_SYMBOL fs/btrfs/btrfs 0xb1320bc8 ulist_add +EXPORT_SYMBOL fs/btrfs/btrfs 0xb42289d2 ulist_alloc +EXPORT_SYMBOL fs/btrfs/btrfs 0xc2c745db ulist_next +EXPORT_SYMBOL fs/configfs/configfs 0x0a8e61d7 config_item_put +EXPORT_SYMBOL fs/configfs/configfs 0x17ceb08a config_item_init +EXPORT_SYMBOL fs/configfs/configfs 0x3c7636ea config_group_init +EXPORT_SYMBOL fs/configfs/configfs 0x479753f1 config_item_get +EXPORT_SYMBOL fs/configfs/configfs 0x68d1fa55 config_item_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0x7bfe0e0a config_group_find_item +EXPORT_SYMBOL fs/configfs/configfs 0x84aa6100 configfs_unregister_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0x859ad9d1 configfs_register_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0x9e7089cb configfs_depend_item +EXPORT_SYMBOL fs/configfs/configfs 0x9f553d16 configfs_undepend_item +EXPORT_SYMBOL fs/configfs/configfs 0xeb9d1ba0 config_group_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0xed4aa8e1 config_item_set_name +EXPORT_SYMBOL fs/exofs/libore 0x03872d01 ore_put_io_state +EXPORT_SYMBOL fs/exofs/libore 0x257c1525 ore_create +EXPORT_SYMBOL fs/exofs/libore 0x28806871 ore_verify_layout +EXPORT_SYMBOL fs/exofs/libore 0x4527e170 ore_calc_stripe_info +EXPORT_SYMBOL fs/exofs/libore 0x52a8bb39 ore_check_io +EXPORT_SYMBOL fs/exofs/libore 0x5c020857 ore_get_rw_state +EXPORT_SYMBOL fs/exofs/libore 0x5cec9332 ore_remove +EXPORT_SYMBOL fs/exofs/libore 0x6da4cea3 extract_attr_from_ios +EXPORT_SYMBOL fs/exofs/libore 0x71927519 ore_truncate +EXPORT_SYMBOL fs/exofs/libore 0x72d67aa6 ore_get_io_state +EXPORT_SYMBOL fs/exofs/libore 0x828490f2 ore_read +EXPORT_SYMBOL fs/exofs/libore 0xa3d2a634 g_attr_logical_length +EXPORT_SYMBOL fs/exofs/libore 0xe344d94c ore_write +EXPORT_SYMBOL fs/fscache/fscache 0x01fb47c5 __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x176926b2 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x185e962f fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0x27507371 __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0x284a71ab __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0x28fa96bf __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0x2959a313 __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x2c544bf2 __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x2e294cde __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x346890be __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x476b0a6d fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0x4c50ad0b __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x4d084e17 __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x52d64f32 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0x5610c76e fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0x5cf93088 fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0x5f196bb6 fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x6ff5a76b fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x7d4cb572 fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0x7f7c674d __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x82cd19f2 fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x91c52271 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x954c22f7 fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0x9cd3bda9 __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0x9d4adff2 __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0xb88dabf8 fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0xc84f87e4 fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0xca08d4a2 fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0xd2be65af __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xd69db060 fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0xe423027f __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xe451102c __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0xe509c5b0 __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0xe74bdba6 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0xf3ca3ae7 __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0xf52556c3 fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0xf568b2bf fscache_withdraw_cache +EXPORT_SYMBOL fs/nfsd/nfsd 0x35e33c1e nfs4_acl_write_who +EXPORT_SYMBOL fs/nfsd/nfsd 0x5a157ae4 nfs4_acl_get_whotype +EXPORT_SYMBOL fs/nfsd/nfsd 0xa0f4b528 nfs4_acl_posix_to_nfsv4 +EXPORT_SYMBOL fs/nfsd/nfsd 0xb25b2957 nfs4_acl_nfsv4_to_posix +EXPORT_SYMBOL fs/nfsd/nfsd 0xe13337f0 nfs4_acl_new +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x1541d841 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x15de4c1a qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x62736d9f qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x71a2be00 qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0x93942887 qtree_read_dquot +EXPORT_SYMBOL lib/cordic 0x434bfd07 cordic_calc_iq +EXPORT_SYMBOL lib/crc-ccitt 0x1a703ba1 crc_ccitt +EXPORT_SYMBOL lib/crc-ccitt 0x75811312 crc_ccitt_table +EXPORT_SYMBOL lib/crc-itu-t 0x6d356209 crc_itu_t +EXPORT_SYMBOL lib/crc-itu-t 0xd29b009f crc_itu_t_table +EXPORT_SYMBOL lib/crc7 0x6c1f6fee crc7 +EXPORT_SYMBOL lib/crc7 0xd80c3603 crc7_syndrome_table +EXPORT_SYMBOL lib/crc8 0xab9ad613 crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xd09b2cba crc8 +EXPORT_SYMBOL lib/crc8 0xd4534d80 crc8_populate_msb +EXPORT_SYMBOL lib/libcrc32c 0x27000b29 crc32c +EXPORT_SYMBOL lib/lru_cache 0x0f0f1605 lc_del +EXPORT_SYMBOL lib/lru_cache 0x2ae6a89a lc_put +EXPORT_SYMBOL lib/lru_cache 0x3b3372b4 lc_reset +EXPORT_SYMBOL lib/lru_cache 0x41111725 lc_get +EXPORT_SYMBOL lib/lru_cache 0x44ec99ee lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0x4645c85f lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0x540b1697 lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x577252ab lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0x57ff4d61 lc_is_used +EXPORT_SYMBOL lib/lru_cache 0x5dd01edd lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x62b86d70 lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0x76b957fe lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0x7afe19c6 lc_find +EXPORT_SYMBOL lib/lru_cache 0xa977668e lc_set +EXPORT_SYMBOL lib/lru_cache 0xb2deafbf lc_destroy +EXPORT_SYMBOL lib/lru_cache 0xbcdb24bd lc_committed +EXPORT_SYMBOL lib/lru_cache 0xfcc6da8d lc_create +EXPORT_SYMBOL lib/lz4/lz4_compress 0x0c222eb5 lz4_compress +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x682a23e0 lz4hc_compress +EXPORT_SYMBOL lib/raid6/raid6_pq 0x0bd662f6 raid6_gfmul +EXPORT_SYMBOL lib/raid6/raid6_pq 0x15fe0cd3 raid6_gfexp +EXPORT_SYMBOL lib/raid6/raid6_pq 0x5ba93f9d raid6_gfinv +EXPORT_SYMBOL lib/raid6/raid6_pq 0xb0d904b7 raid6_empty_zero_page +EXPORT_SYMBOL lib/raid6/raid6_pq 0xce45a6f1 raid6_gfexi +EXPORT_SYMBOL lib/raid6/raid6_pq 0xd9e91f83 raid6_vgfmul +EXPORT_SYMBOL net/802/p8022 0x1e371714 unregister_8022_client +EXPORT_SYMBOL net/802/p8022 0x5292e7fd register_8022_client +EXPORT_SYMBOL net/802/p8023 0x076b956c make_8023_client +EXPORT_SYMBOL net/802/p8023 0x658dbbac destroy_8023_client +EXPORT_SYMBOL net/802/psnap 0x726aef08 register_snap_client +EXPORT_SYMBOL net/802/psnap 0xdc35c891 unregister_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x0590def8 p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x078c7ff6 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x0cb4f7a5 p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x0df0333f p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x16bc20f5 p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0x1bff22b1 p9_payload_gup +EXPORT_SYMBOL net/9p/9pnet 0x21558c26 p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0x24bfeb41 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x26d769ce p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0x26dae438 p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x28932b45 p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x2b1a9527 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0x2c8129af p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0x2f5655bf p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0x314a3c92 v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x35d1e27e p9_idpool_get +EXPORT_SYMBOL net/9p/9pnet 0x3aeaa2d6 p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x44d2c2c0 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0x47b94d67 p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0x5c8ac8ca p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0x666db29c p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x675123c6 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x6ce03f36 v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0x6ed36380 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0x70eed218 p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0x7816cd34 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x7c603f05 p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0x7d50d1db p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x81b9c1fd p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0x8287e8c1 p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0x8e5ae497 p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x901f0d53 p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0x9376314e p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0x977a0030 p9_nr_pages +EXPORT_SYMBOL net/9p/9pnet 0x99bb4ff1 p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0xb1a1ad8a p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0xc5db54a9 p9_idpool_destroy +EXPORT_SYMBOL net/9p/9pnet 0xc7940efc p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0xcb7ef5e0 p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0xd16ca542 p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0xd40871c0 v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0xd9231ff7 p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0xe3072df1 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xe7a9b5b3 p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0xec8aa63c p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0xed52a031 p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0xf4a111d8 p9_idpool_create +EXPORT_SYMBOL net/9p/9pnet 0xf756dbc3 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0xf84f2022 p9_idpool_put +EXPORT_SYMBOL net/9p/9pnet 0xfd40c79d p9_idpool_check +EXPORT_SYMBOL net/appletalk/appletalk 0x3d8c5aa3 atrtr_get_dev +EXPORT_SYMBOL net/appletalk/appletalk 0x4c788e8a aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0x9b3475ed atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0xa26f1f5c alloc_ltalkdev +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x4dac4f8b vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0x69dbc41b atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0x7a6949c1 atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x93136f41 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0x9bbdcb31 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0x9becd718 deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xa3eedb8c atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0xa885c645 vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xaae9cc78 atm_dev_register +EXPORT_SYMBOL net/atm/atm 0xb619d79b atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0xd3b3b52c atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0xefab3118 atm_charge +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/atm/atm 0xf6bb648c vcc_release_async +EXPORT_SYMBOL net/atm/atm 0xfd3b3f8b register_atm_ioctl +EXPORT_SYMBOL net/ax25/ax25 0x026c1368 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x0f306ae9 ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x0f416d2c ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x3afee63e ax25_findbyuid +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x4c0e5d24 ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x4f9e97e9 ax25_hard_header +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x8b24cb93 ax25_rebuild_header +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0xa6c0624a ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0xa879068f ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0xb2068a61 ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xd689d391 ax25_listen_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x07161e33 hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0a3723b3 bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0d95b8cf l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0x25f0cb8c hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0x26d4581c __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x26e908f1 bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2afb4e98 hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2f1009c0 bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x33c83c55 hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x341d01f9 bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0x376e2682 l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4520adff __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4817cbf6 hci_recv_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5194bd5e bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x55fbe958 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0x58a3b0b7 hci_recv_stream_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x58be95fe hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0x62469c6a bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6e4ba35e bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x710b9bd3 bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0x760aae99 hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7c640527 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7f5822a8 hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7fb79d92 hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8bcb12bc bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8c00e816 hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x91c9a325 bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x93f69b25 bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9cf7295e bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9d41e442 bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0xaea4e4f6 l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb61a0c3b bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb993eeaf hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc11c9dda hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc3a9eaad l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcc1fb551 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcd7c700f hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcdab926b bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdad109f4 bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdb15b0b9 l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe82c45d7 bt_procfs_cleanup +EXPORT_SYMBOL net/bridge/bridge 0xfb9b6e29 br_should_route_hook +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x020e8dba ebt_register_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x1dafd984 ebt_do_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xda213b5b ebt_unregister_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +EXPORT_SYMBOL net/caif/caif 0x2a09f713 cfpkt_fromnative +EXPORT_SYMBOL net/caif/caif 0x329dbd06 cfpkt_info +EXPORT_SYMBOL net/caif/caif 0x378a2abb caif_connect_client +EXPORT_SYMBOL net/caif/caif 0x38701a7c cfcnfg_del_phy_layer +EXPORT_SYMBOL net/caif/caif 0x4a237e57 cfpkt_tonative +EXPORT_SYMBOL net/caif/caif 0x6a44fc70 cfpkt_extr_head +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x92902d10 caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0x966d7de2 cfpkt_add_head +EXPORT_SYMBOL net/caif/caif 0x9687f06c get_cfcnfg +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/caif/caif 0xbf5ddd53 caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0xc6b97c9a cfcnfg_add_phy_layer +EXPORT_SYMBOL net/can/can 0x11e1fd8b can_rx_unregister +EXPORT_SYMBOL net/can/can 0x51d914e4 can_ioctl +EXPORT_SYMBOL net/can/can 0x68bce3d2 can_send +EXPORT_SYMBOL net/can/can 0xb2a709e0 can_proto_register +EXPORT_SYMBOL net/can/can 0xc21ced7a can_rx_register +EXPORT_SYMBOL net/can/can 0xfe18e55c can_proto_unregister +EXPORT_SYMBOL net/ceph/libceph 0x01e69fee ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0x09290ab3 ceph_debugfs_init +EXPORT_SYMBOL net/ceph/libceph 0x0933df44 ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x0d61c270 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0x0d8f59c3 ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x1082adfc osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0x1475bf0d ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x15366f5d ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0x197effcb ceph_osdc_release_request +EXPORT_SYMBOL net/ceph/libceph 0x20d151cb ceph_osdc_setup +EXPORT_SYMBOL net/ceph/libceph 0x21cb9ba9 ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0x24054d8f ceph_client_id +EXPORT_SYMBOL net/ceph/libceph 0x2b10d4ba ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x2c4476be ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0x2c9ec78f ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0x2e5c3641 osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0x300181d4 ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x31d1e30d ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0x31ebf138 ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0x37d4c822 osd_req_op_cls_response_data +EXPORT_SYMBOL net/ceph/libceph 0x3820ed05 ceph_osdc_create_event +EXPORT_SYMBOL net/ceph/libceph 0x38fd7045 osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x3a583b95 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0x3abec91f ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x3df0ec7c ceph_calc_ceph_pg +EXPORT_SYMBOL net/ceph/libceph 0x3f688151 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x3ff24dda ceph_monc_got_mdsmap +EXPORT_SYMBOL net/ceph/libceph 0x4205ffd7 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0x43e458f6 ceph_file_part +EXPORT_SYMBOL net/ceph/libceph 0x43efd647 ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0x457c65bc ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x4691371e ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0x4a283545 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x50ee70f6 ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x51518b0d ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0x5379cea3 ceph_caps_for_mode +EXPORT_SYMBOL net/ceph/libceph 0x56958c9e osd_req_op_watch_init +EXPORT_SYMBOL net/ceph/libceph 0x570ceb67 ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x57a7492e ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x593a7aed ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0x5bbba5c4 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x5d1fef9b ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x673d5daf ceph_osdc_put_event +EXPORT_SYMBOL net/ceph/libceph 0x6b2e3bcd ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x6c5d5ac1 ceph_calc_pg_primary +EXPORT_SYMBOL net/ceph/libceph 0x6e3ed15c osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0x6fa77e10 osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x7168baf8 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0x77692acb ceph_msg_last_put +EXPORT_SYMBOL net/ceph/libceph 0x81eae1b6 ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0x857eefef osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x8760df86 ceph_osdc_writepages +EXPORT_SYMBOL net/ceph/libceph 0x96479877 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x964b86b6 ceph_monc_create_snapid +EXPORT_SYMBOL net/ceph/libceph 0x98679023 ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0x9910cc46 osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x99e36571 ceph_osdc_cleanup +EXPORT_SYMBOL net/ceph/libceph 0x9e94b00c ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x9f534f4d ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xa4735b4f ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0xa72cd25e ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0xa930e31c ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xac2cb5b9 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0xae3515ba ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xae354ab9 ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb0153c2b ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0xb1eab6d9 ceph_osdc_set_request_linger +EXPORT_SYMBOL net/ceph/libceph 0xb3348c28 ceph_osdc_readpages +EXPORT_SYMBOL net/ceph/libceph 0xb35ca10e ceph_osdc_cancel_event +EXPORT_SYMBOL net/ceph/libceph 0xb48d51c2 ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb6081d6d ceph_msgr_exit +EXPORT_SYMBOL net/ceph/libceph 0xb72a5511 ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0xbb07a576 __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0xbf0b2941 osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xc0ed950a ceph_copy_page_vector_to_user +EXPORT_SYMBOL net/ceph/libceph 0xc4a80955 ceph_debugfs_cleanup +EXPORT_SYMBOL net/ceph/libceph 0xc55de604 ceph_parse_options +EXPORT_SYMBOL net/ceph/libceph 0xc943dffe ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xc9515e32 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xc9f82b38 ceph_msgr_init +EXPORT_SYMBOL net/ceph/libceph 0xcaffcec7 ceph_osdc_unregister_linger_request +EXPORT_SYMBOL net/ceph/libceph 0xcb50a624 ceph_parse_ips +EXPORT_SYMBOL net/ceph/libceph 0xce2ea627 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0xcf0fdc0a ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0xcfe80679 osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0xd1dfad95 ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0xd2c107bb ceph_flags_to_mode +EXPORT_SYMBOL net/ceph/libceph 0xdd175c84 ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0xdec8ab76 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0xe82c9c32 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0xed229339 ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0xee405e02 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0xef9f2043 ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xefc693ee ceph_get_direct_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xf4637eaf ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xf5774cba ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0xf8f2fa09 ceph_osdc_build_request +EXPORT_SYMBOL net/ceph/libceph 0xfcf5ebc7 ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xfdd81a01 ceph_osdc_start_request +EXPORT_SYMBOL net/dccp/dccp_ipv4 0xdb97beaa dccp_syn_ack_timeout +EXPORT_SYMBOL net/ieee802154/ieee802154 0x1b06cb8c ieee802154_nl_scan_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x2c43ba7b wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0x357ce66d ieee802154_nl_disassoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x66fb6aa4 wpan_phy_alloc +EXPORT_SYMBOL net/ieee802154/ieee802154 0x7eb053fb ieee802154_nl_disassoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x82921827 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0x84f85358 ieee802154_nl_assoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x8f61a9cc wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0x9cdb5495 ieee802154_nl_beacon_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0xcb009877 ieee802154_nl_start_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0xf3609df4 wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0xf5f8aeb8 wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0xf7018f1c ieee802154_nl_assoc_confirm +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x73448d19 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x77b2b2c1 arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x956e45d1 arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x5069a894 ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x694eec74 ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xf412c850 ipt_do_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x1e1d403c xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0xe028522b xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xa294cbdd ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xd56a3beb ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x077a3a80 ip6t_register_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x9f9d6dfc ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xed5a9fba ip6t_do_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x6dfe48ac xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/tunnel6 0xc30897b7 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x0a27df61 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xb5b70011 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x09d879f4 ircomm_open +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x0e59f829 ircomm_control_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x46aeba86 ircomm_disconnect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x664cb444 ircomm_close +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x8ba5ec16 ircomm_flow_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x926b827a ircomm_connect_response +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xdb53ca49 ircomm_data_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xf70915bf ircomm_connect_request +EXPORT_SYMBOL net/irda/irda 0x06a3ee58 irias_new_integer_value +EXPORT_SYMBOL net/irda/irda 0x06efdf56 irttp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0x07d3647c irlmp_register_service +EXPORT_SYMBOL net/irda/irda 0x09f1d31a irda_notify_init +EXPORT_SYMBOL net/irda/irda 0x09f58a8b hashbin_lock_find +EXPORT_SYMBOL net/irda/irda 0x0eabf1a6 irttp_connect_response +EXPORT_SYMBOL net/irda/irda 0x0fab689f irlmp_open_lsap +EXPORT_SYMBOL net/irda/irda 0x15b31999 iriap_getvaluebyclass_request +EXPORT_SYMBOL net/irda/irda 0x1e06a7a0 irttp_flow_request +EXPORT_SYMBOL net/irda/irda 0x2036ad06 irda_param_insert +EXPORT_SYMBOL net/irda/irda 0x26e6b539 irias_add_string_attrib +EXPORT_SYMBOL net/irda/irda 0x33cbe2c6 proc_irda +EXPORT_SYMBOL net/irda/irda 0x37326c08 irttp_connect_request +EXPORT_SYMBOL net/irda/irda 0x38d739b2 async_unwrap_char +EXPORT_SYMBOL net/irda/irda 0x3b6d5f65 hashbin_remove_this +EXPORT_SYMBOL net/irda/irda 0x42a9904d irias_delete_object +EXPORT_SYMBOL net/irda/irda 0x448b8aaa irda_qos_bits_to_value +EXPORT_SYMBOL net/irda/irda 0x45689ef1 irlap_close +EXPORT_SYMBOL net/irda/irda 0x46c1c4a2 irlmp_unregister_service +EXPORT_SYMBOL net/irda/irda 0x4f48480d irlmp_data_request +EXPORT_SYMBOL net/irda/irda 0x5bc5a55d async_wrap_skb +EXPORT_SYMBOL net/irda/irda 0x5ddc1144 irda_device_set_media_busy +EXPORT_SYMBOL net/irda/irda 0x615ee918 irias_new_object +EXPORT_SYMBOL net/irda/irda 0x648f4ea6 iriap_close +EXPORT_SYMBOL net/irda/irda 0x66ef7db3 irias_add_integer_attrib +EXPORT_SYMBOL net/irda/irda 0x6b043eba irda_init_max_qos_capabilies +EXPORT_SYMBOL net/irda/irda 0x7042bc54 irlmp_register_client +EXPORT_SYMBOL net/irda/irda 0x763e54a4 irlmp_unregister_client +EXPORT_SYMBOL net/irda/irda 0x76ef9f52 irias_insert_object +EXPORT_SYMBOL net/irda/irda 0x7957f728 irlmp_update_client +EXPORT_SYMBOL net/irda/irda 0x7b59597d alloc_irdadev +EXPORT_SYMBOL net/irda/irda 0x7dabe31e hashbin_remove +EXPORT_SYMBOL net/irda/irda 0x7fb81606 irias_add_octseq_attrib +EXPORT_SYMBOL net/irda/irda 0x86b5f4ce hashbin_delete +EXPORT_SYMBOL net/irda/irda 0x8768cae6 irttp_close_tsap +EXPORT_SYMBOL net/irda/irda 0x878adfbb irttp_data_request +EXPORT_SYMBOL net/irda/irda 0x8b69b459 hashbin_get_next +EXPORT_SYMBOL net/irda/irda 0x91815586 irda_param_pack +EXPORT_SYMBOL net/irda/irda 0x993ad14b irda_param_extract_all +EXPORT_SYMBOL net/irda/irda 0x9b1146c4 irlmp_connect_response +EXPORT_SYMBOL net/irda/irda 0xa227db1b irttp_open_tsap +EXPORT_SYMBOL net/irda/irda 0xa3e8a898 irlmp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0xa4548c32 hashbin_insert +EXPORT_SYMBOL net/irda/irda 0xac62e1c6 irlmp_close_lsap +EXPORT_SYMBOL net/irda/irda 0xad66e1db hashbin_get_first +EXPORT_SYMBOL net/irda/irda 0xb9394173 irias_delete_value +EXPORT_SYMBOL net/irda/irda 0xba11f690 irlmp_connect_request +EXPORT_SYMBOL net/irda/irda 0xba8e2b8c irttp_dup +EXPORT_SYMBOL net/irda/irda 0xbcd3ef13 irias_object_change_attribute +EXPORT_SYMBOL net/irda/irda 0xbe40ace9 irlmp_discovery_request +EXPORT_SYMBOL net/irda/irda 0xc310cf21 hashbin_new +EXPORT_SYMBOL net/irda/irda 0xd1ae6745 irias_find_object +EXPORT_SYMBOL net/irda/irda 0xd57045a8 hashbin_find +EXPORT_SYMBOL net/irda/irda 0xd6deeaae irda_setup_dma +EXPORT_SYMBOL net/irda/irda 0xdd29391a irlap_open +EXPORT_SYMBOL net/irda/irda 0xde4c6b3c irlmp_service_to_hint +EXPORT_SYMBOL net/irda/irda 0xedd521c2 irlmp_get_discoveries +EXPORT_SYMBOL net/irda/irda 0xf10aba6d iriap_open +EXPORT_SYMBOL net/irda/irda 0xf3932ccb irttp_udata_request +EXPORT_SYMBOL net/l2tp/l2tp_core 0x20260036 l2tp_recv_common +EXPORT_SYMBOL net/lapb/lapb 0x360948fb lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0x4e58fc0a lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0x6d428b62 lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0x837cb5e7 lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0xbc0123b9 lapb_register +EXPORT_SYMBOL net/lapb/lapb 0xc532c91d lapb_unregister +EXPORT_SYMBOL net/lapb/lapb 0xe5633b34 lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0xee8c948d lapb_data_request +EXPORT_SYMBOL net/llc/llc 0x1f3f1d88 llc_sap_close +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x6c6cdb31 llc_sap_list_lock +EXPORT_SYMBOL net/llc/llc 0x8639151c llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0x8e9aca3a llc_add_pack +EXPORT_SYMBOL net/llc/llc 0xbcd16360 llc_sap_open +EXPORT_SYMBOL net/llc/llc 0xc0396b97 llc_sap_find +EXPORT_SYMBOL net/llc/llc 0xc0f7712e llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0xeccb2fa5 llc_set_station_handler +EXPORT_SYMBOL net/mac80211/mac80211 0x009376f2 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x05f003a7 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x0bbc8e7d __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x0d6b3323 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x0f011718 ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x0fbc91f3 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0x13ae2efa ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x168d9a35 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x1d61d60a ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0x21a2ae71 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0x245aca89 ieee80211_alloc_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x254a8fd3 ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0x28f1eb37 ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x28f8dab3 ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x2bef3c6b ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0x2cee6e64 ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x307d564e ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0x3aa94628 ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0x4c1c3bee ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0x4c9f266b ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0x51efca58 ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x545951cd ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x5960ba84 ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x5a97d615 ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x5c28cca5 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x5dcd2b7a ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x5ee68397 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x5f46ac9a ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x60b2285c ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x61874dbe ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0x66578666 ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0x66fa2939 ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x6b27edfb ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x7667953c ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x771b45e8 ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x796b6727 ieee80211_rx +EXPORT_SYMBOL net/mac80211/mac80211 0x7f82fc41 ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0x800ecdbf rate_control_send_low +EXPORT_SYMBOL net/mac80211/mac80211 0x82aaa6ea ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x86434e15 ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x8887e41e ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x89fde67a ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0x8a889c0e ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0x9b235d52 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x9c5e6334 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0xa1fc36c4 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xa5aca77c ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xa6dc8a4a ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0xa79ba550 ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0xaa157485 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0xb1b65e9a ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xb3ea5f6f __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0xbac27f66 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xbe0e110b ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xc055e4ef rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xc236dc2a ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0xc5fe9efe ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0xc7e9782e ieee80211_get_key_tx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xcc5bf67a ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0xcca3df8d ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xcccafe99 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xcce05d92 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xd5b23673 ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0xd7daaf51 __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xddb47d52 ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xe0313a24 wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xe5cf6668 ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0xf395de03 ieee80211_aes_cmac_calculate_k1_k2 +EXPORT_SYMBOL net/mac80211/mac80211 0xf5c4722e ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0xfb3493ac ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0xfb964e29 ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0xfd22995c ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0xffd09e60 ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac802154/mac802154 0x8a0479b2 ieee802154_alloc_device +EXPORT_SYMBOL net/mac802154/mac802154 0xd4deddfe ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0xeb1eb9e3 ieee802154_free_device +EXPORT_SYMBOL net/mac802154/mac802154 0xebc1929e ieee802154_unregister_device +EXPORT_SYMBOL net/mac802154/mac802154 0xef24999f ieee802154_register_device +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x014dde2a ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x2247f63a ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x293487ff ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3c77b4b7 ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3c850360 ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x65fc719d register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x65fe0d1e unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x6eb885e9 ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xb98764bb register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xbceb21cb unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xbdbf7c03 ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc51d8575 register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xdce9155b ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xe688528e ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x253d6d46 __nf_ct_ext_destroy +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x71e0db76 nf_conntrack_untracked +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xc1830b40 __nf_ct_ext_add_length +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0x827cc6a1 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_conntrack_proto_gre 0xa1f4a103 nf_ct_gre_keymap_flush +EXPORT_SYMBOL net/netfilter/nf_nat 0x13fb112d nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0x16947bb0 nf_nat_used_tuple +EXPORT_SYMBOL net/netfilter/nf_nat 0x734637e4 nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0x8f5e3267 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xd127caef nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0xdd1c2474 __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/x_tables 0x00fbca23 xt_find_target +EXPORT_SYMBOL net/netfilter/x_tables 0x08c473b7 xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0x0ca2de3e xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0x0e4e3345 xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x253e8b44 xt_compat_init_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x39d0f586 xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0x3d85c191 xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x8e5fbcfa xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0x97deb5a9 xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xa4529792 xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0xb28f5ef1 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xbebc8f4c xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0xdab52081 xt_register_match +EXPORT_SYMBOL net/nfc/hci/hci 0x10ef6bd2 nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0x19815c89 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x251dbaaf nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x2d90b4dd nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0x37fa3a7b nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0x43028a27 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x488812ca nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0x4aff4554 nfc_hci_send_response +EXPORT_SYMBOL net/nfc/hci/hci 0x7d18831c nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0x85d7c41e nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x92c1e6d9 nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0xa3d42fb0 nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0xb7d93bf3 nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0xbca0b4fd nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xc04cedb5 nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0xc5fe2f1d nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0xc8d9e4e9 nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0xee9ddc22 nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0xf4ed595c nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0xf99dabaf nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/nci/nci 0x3ee7bbca nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0x5743491b nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x80d0f15f nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xd15392f4 nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0xd3f76730 nci_free_device +EXPORT_SYMBOL net/nfc/nfc 0x00b4ad33 nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0x1d52684c nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0x2a286e75 nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0x34d30a2d nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0x371e7724 nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0x3de4bb67 nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x3ff265d9 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0x494dda1a nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0x88562033 nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0xb3a06f19 nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0xc5a8c331 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0xc8cf7e35 nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0xc998c69a nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0xcd6b0924 nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0xcdd48afb nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0xdcde5f52 nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xdd6cac96 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0xe87a284f nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0xeb224bdc nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0xfa708e20 nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc_digital 0x0c54ce7b nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x1201d682 nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x7a0f8028 nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x98bcb19c nfc_digital_unregister_device +EXPORT_SYMBOL net/phonet/phonet 0x0f5df1f4 phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0x3c58e42b pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0x4f232cc9 pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0x533a379e phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0x63e586f6 phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0xb19159aa pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0xeea61374 phonet_proto_register +EXPORT_SYMBOL net/phonet/phonet 0xf6f71e2f pn_skb_send +EXPORT_SYMBOL net/rds/rds 0x7505d413 rds_str_array +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x028f5d34 rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x1dfc6ebd rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x29c42ccb rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x46c879af rxrpc_kernel_get_error_number +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x4b0f6310 rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x61672c04 rxrpc_kernel_data_delivered +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x8c0e1d24 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xba8518ad rxrpc_kernel_get_abort_code +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xbe4fdb9c rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xce17c1e1 rxrpc_kernel_free_skb +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xce87019d rxrpc_kernel_is_data_last +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xd8cf45ba rxrpc_kernel_reject_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xddee2c49 rxrpc_kernel_accept_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xe6ed63e4 rxrpc_kernel_intercept_rx_messages +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xfcb8573b rxrpc_kernel_end_call +EXPORT_SYMBOL net/sctp/sctp 0xd3f378ff sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x129d1f66 gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x85bc0154 gss_mech_get +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xa375e89f gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/sunrpc 0xcac59190 svc_pool_stats_open +EXPORT_SYMBOL net/wimax/wimax 0x5832d57d wimax_rfkill +EXPORT_SYMBOL net/wimax/wimax 0x8c04728b wimax_reset +EXPORT_SYMBOL net/wireless/cfg80211 0x05c15e55 cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x07675a0d cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x078776e9 cfg80211_rx_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x09c64fbd ieee80211_frequency_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x0add747b cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x0ddb95ff cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0x0e6092d0 wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0x0fa208de cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0x14a5336a regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x19e03378 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0x1b979e21 wiphy_new +EXPORT_SYMBOL net/wireless/cfg80211 0x1da21b49 cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x1ed0aa82 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0x1f58da7d cfg80211_del_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x1fdb443f ieee80211_data_from_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0x2042d88d cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x20824338 wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x2505bf19 cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0x26bc65f0 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0x2f86a53d cfg80211_inform_bss_width_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x3484b970 cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x38020ff1 ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0x380fbfa1 cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x39e7cec7 cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x3a00c0ab cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x406a8302 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x4983ae17 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0x4c3b5878 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x4c40b2fb ieee80211_bss_get_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x549ae50f ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x5b2c584b cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0x5c70e351 cfg80211_roamed_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x5e3ae293 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x5f92d29b cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x66b55ad3 cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6d6cb9ad ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x72cb84f7 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0x73b7a9db cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x752f9fab cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7fe1a403 cfg80211_find_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x808b2de9 cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0x822994dd cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x857490a4 wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0x89f392cb cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x96157bb7 cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x982e6b6d ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0x9a0b9311 cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0x9a8c3604 cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x9d65e1f4 ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xa1425906 ieee80211_channel_to_frequency +EXPORT_SYMBOL net/wireless/cfg80211 0xa197b1ff ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xa5274c94 cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xae9ba950 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0xb06b00ce cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0xb3fd41c9 cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xb88dbcb0 cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0xb90878b5 wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xc15c8611 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0xc1643a79 freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0xc1c8417f cfg80211_connect_result +EXPORT_SYMBOL net/wireless/cfg80211 0xc335de9c cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0xc623543a cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0xc63f1b81 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0xcce8ac92 wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0xcf618a57 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0xd0727834 cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0xd27c9d69 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xd83b54d8 ieee80211_data_to_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xdfe2c6d8 cfg80211_inform_bss_width +EXPORT_SYMBOL net/wireless/cfg80211 0xe476a470 cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0xe4e8bc4b cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xe82c40e4 cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0xee42db3c cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xee7b43ce cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0xef807445 cfg80211_report_obss_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xf0e2b891 cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0xf487f08d cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0xf812eaaa cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xfd45a7e6 __ieee80211_get_channel +EXPORT_SYMBOL net/wireless/cfg80211 0xfd4ed6fa cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xfed4d591 cfg80211_find_vendor_ie +EXPORT_SYMBOL net/wireless/cfg80211 0xffd6a292 cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/lib80211 0x1ad94b3b lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0x23d60950 lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x282d6d54 lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0x2d0f99e5 print_ssid +EXPORT_SYMBOL net/wireless/lib80211 0x4d005830 lib80211_get_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x99f94149 lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xa85826dc lib80211_crypt_info_free +EXPORT_SYMBOL sound/ac97_bus 0x314b55e2 ac97_bus_type +EXPORT_SYMBOL sound/core/seq/snd-seq 0x08783b63 snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x0bafb0cc snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6aa6723b snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x87f4d9a6 snd_seq_kernel_client_enqueue_blocking +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xcac0a3be snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x173876e0 snd_seq_device_register_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x3a57f235 snd_seq_autoload_unlock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x46742422 snd_seq_device_new +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xb90668b2 snd_seq_autoload_lock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xc622fb29 snd_seq_device_unregister_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf0a1fdb3 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x01b82065 snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x0d2b74da snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x2ceec35d snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x668570c0 snd_midi_event_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x7f92860c snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xb494afee snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xc7b2b6c2 snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xe0a50454 snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0x6a1d7f9b snd_virmidi_new +EXPORT_SYMBOL sound/core/snd 0x07d1fe39 snd_card_disconnect +EXPORT_SYMBOL sound/core/snd 0x089650d2 snd_ctl_register_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0x09c7a8af snd_ctl_notify +EXPORT_SYMBOL sound/core/snd 0x0cfdafa3 snd_card_proc_new +EXPORT_SYMBOL sound/core/snd 0x18e1683f snd_dma_program +EXPORT_SYMBOL sound/core/snd 0x191e88cf snd_dma_pointer +EXPORT_SYMBOL sound/core/snd 0x1fc0b635 snd_unregister_device +EXPORT_SYMBOL sound/core/snd 0x22de44a7 snd_card_file_add +EXPORT_SYMBOL sound/core/snd 0x23fc61b0 snd_ctl_find_id +EXPORT_SYMBOL sound/core/snd 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL sound/core/snd 0x26f2fc50 snd_ctl_register_ioctl +EXPORT_SYMBOL sound/core/snd 0x2950cf4a snd_ctl_find_numid +EXPORT_SYMBOL sound/core/snd 0x2ae3deaa release_and_free_resource +EXPORT_SYMBOL sound/core/snd 0x2c41256e snd_ctl_add +EXPORT_SYMBOL sound/core/snd 0x342a2354 copy_to_user_fromio +EXPORT_SYMBOL sound/core/snd 0x34b92cbe snd_ctl_remove +EXPORT_SYMBOL sound/core/snd 0x35a36544 snd_device_register +EXPORT_SYMBOL sound/core/snd 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL sound/core/snd 0x3cd0f113 snd_jack_set_parent +EXPORT_SYMBOL sound/core/snd 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL sound/core/snd 0x4b015768 snd_iprintf +EXPORT_SYMBOL sound/core/snd 0x4b74bd7d snd_ctl_rename_id +EXPORT_SYMBOL sound/core/snd 0x4db8a9a4 snd_add_device_sysfs_file +EXPORT_SYMBOL sound/core/snd 0x52398402 snd_ctl_replace +EXPORT_SYMBOL sound/core/snd 0x574f1295 snd_jack_new +EXPORT_SYMBOL sound/core/snd 0x58e94ddc snd_ctl_remove_id +EXPORT_SYMBOL sound/core/snd 0x59d43eec snd_info_create_card_entry +EXPORT_SYMBOL sound/core/snd 0x5b462cc4 snd_device_new +EXPORT_SYMBOL sound/core/snd 0x60420b50 snd_card_unref +EXPORT_SYMBOL sound/core/snd 0x646af69f snd_ctl_boolean_stereo_info +EXPORT_SYMBOL sound/core/snd 0x666d6f1c snd_cards +EXPORT_SYMBOL sound/core/snd 0x6fde8ef4 snd_register_device_for_dev +EXPORT_SYMBOL sound/core/snd 0x708feaea snd_info_create_module_entry +EXPORT_SYMBOL sound/core/snd 0x70c15ac1 snd_dma_disable +EXPORT_SYMBOL sound/core/snd 0x721268f8 snd_ctl_new1 +EXPORT_SYMBOL sound/core/snd 0x80175054 snd_card_free_when_closed +EXPORT_SYMBOL sound/core/snd 0x81b69e41 snd_ctl_enum_info +EXPORT_SYMBOL sound/core/snd 0x8f595b11 snd_major +EXPORT_SYMBOL sound/core/snd 0x972fc692 snd_ctl_boolean_mono_info +EXPORT_SYMBOL sound/core/snd 0x97d1c361 snd_card_create +EXPORT_SYMBOL sound/core/snd 0x9c7300b1 snd_ctl_make_virtual_master +EXPORT_SYMBOL sound/core/snd 0x9d569b44 snd_info_free_entry +EXPORT_SYMBOL sound/core/snd 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL sound/core/snd 0xa0fd2427 snd_pci_quirk_lookup_id +EXPORT_SYMBOL sound/core/snd 0xa6eac994 snd_ctl_unregister_ioctl +EXPORT_SYMBOL sound/core/snd 0xb0847329 snd_device_free +EXPORT_SYMBOL sound/core/snd 0xb0b4ecc2 snd_seq_root +EXPORT_SYMBOL sound/core/snd 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL sound/core/snd 0xb8d9ead2 snd_power_wait +EXPORT_SYMBOL sound/core/snd 0xbe3ecbbd snd_ctl_free_one +EXPORT_SYMBOL sound/core/snd 0xc1b98b9e snd_card_free +EXPORT_SYMBOL sound/core/snd 0xc765cf77 snd_jack_report +EXPORT_SYMBOL sound/core/snd 0xcb2ecc1c snd_info_register +EXPORT_SYMBOL sound/core/snd 0xd98b76f5 snd_card_file_remove +EXPORT_SYMBOL sound/core/snd 0xd9ba172c snd_ctl_unregister_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0xe54ab3cf snd_card_set_id +EXPORT_SYMBOL sound/core/snd 0xe54bbdec snd_jack_set_key +EXPORT_SYMBOL sound/core/snd 0xefb83c3f snd_component_add +EXPORT_SYMBOL sound/core/snd 0xf5b06f9b snd_card_register +EXPORT_SYMBOL sound/core/snd 0xf71a648b snd_pci_quirk_lookup +EXPORT_SYMBOL sound/core/snd 0xf78bca39 _snd_ctl_add_slave +EXPORT_SYMBOL sound/core/snd 0xfffd89db copy_from_user_toio +EXPORT_SYMBOL sound/core/snd-hwdep 0xf239392d snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-page-alloc 0x06b310c9 snd_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x302ba973 snd_dma_get_reserved_buf +EXPORT_SYMBOL sound/core/snd-page-alloc 0x5898dcba snd_malloc_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x7b1ebf76 snd_dma_alloc_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x7ef5dbf8 snd_dma_reserve_buf +EXPORT_SYMBOL sound/core/snd-page-alloc 0x7f42cb7c snd_dma_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0xca34c226 snd_sgbuf_get_chunk_size +EXPORT_SYMBOL sound/core/snd-page-alloc 0xe387157c snd_dma_alloc_pages_fallback +EXPORT_SYMBOL sound/core/snd-pcm 0x006f46b2 snd_pcm_new +EXPORT_SYMBOL sound/core/snd-pcm 0x02222d1a snd_pcm_hw_rule_noresample +EXPORT_SYMBOL sound/core/snd-pcm 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL sound/core/snd-pcm 0x04cda566 snd_interval_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x09fcfebb snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x13d8525c snd_pcm_hw_constraint_integer +EXPORT_SYMBOL sound/core/snd-pcm 0x152381c9 snd_pcm_stop +EXPORT_SYMBOL sound/core/snd-pcm 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL sound/core/snd-pcm 0x20db8865 snd_pcm_debug_name +EXPORT_SYMBOL sound/core/snd-pcm 0x21555937 snd_pcm_lib_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x2942aeac snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x34c91e40 snd_pcm_hw_constraint_step +EXPORT_SYMBOL sound/core/snd-pcm 0x36fdc44f snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL sound/core/snd-pcm 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL sound/core/snd-pcm 0x3a849514 snd_pcm_suspend +EXPORT_SYMBOL sound/core/snd-pcm 0x43bea386 _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x4ed0e7d0 snd_pcm_lib_writev +EXPORT_SYMBOL sound/core/snd-pcm 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL sound/core/snd-pcm 0x53fc241c snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL sound/core/snd-pcm 0x561c7a9f snd_pcm_hw_rule_add +EXPORT_SYMBOL sound/core/snd-pcm 0x589ebb0f snd_pcm_lib_readv +EXPORT_SYMBOL sound/core/snd-pcm 0x5b9b520e snd_pcm_mmap_data +EXPORT_SYMBOL sound/core/snd-pcm 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL sound/core/snd-pcm 0x5fafee3b snd_pcm_set_ops +EXPORT_SYMBOL sound/core/snd-pcm 0x602249f0 snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x62ca9910 snd_pcm_notify +EXPORT_SYMBOL sound/core/snd-pcm 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL sound/core/snd-pcm 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL sound/core/snd-pcm 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL sound/core/snd-pcm 0x715196f8 snd_pcm_suspend_all +EXPORT_SYMBOL sound/core/snd-pcm 0x72e53b9c snd_pcm_hw_param_first +EXPORT_SYMBOL sound/core/snd-pcm 0x80512e40 snd_pcm_set_sync +EXPORT_SYMBOL sound/core/snd-pcm 0x80e7c1b4 snd_pcm_limit_hw_rates +EXPORT_SYMBOL sound/core/snd-pcm 0x834dc955 snd_pcm_format_size +EXPORT_SYMBOL sound/core/snd-pcm 0x889b8f79 snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL sound/core/snd-pcm 0x8b4aad75 snd_pcm_lib_malloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x94098ff8 snd_interval_list +EXPORT_SYMBOL sound/core/snd-pcm 0x9db05191 snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL sound/core/snd-pcm 0xa133eb85 snd_pcm_release_substream +EXPORT_SYMBOL sound/core/snd-pcm 0xa5e1c246 snd_pcm_kernel_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL sound/core/snd-pcm 0xa849b9dc snd_pcm_sgbuf_ops_page +EXPORT_SYMBOL sound/core/snd-pcm 0xa89a44eb snd_pcm_lib_mmap_iomem +EXPORT_SYMBOL sound/core/snd-pcm 0xa9adc229 snd_pcm_link_rwlock +EXPORT_SYMBOL sound/core/snd-pcm 0xb3237d67 snd_pcm_lib_write +EXPORT_SYMBOL sound/core/snd-pcm 0xb5170931 snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL sound/core/snd-pcm 0xba534af6 snd_pcm_lib_read +EXPORT_SYMBOL sound/core/snd-pcm 0xc40f143e snd_pcm_hw_constraint_list +EXPORT_SYMBOL sound/core/snd-pcm 0xc56837db snd_pcm_open_substream +EXPORT_SYMBOL sound/core/snd-pcm 0xc8891412 snd_pcm_period_elapsed +EXPORT_SYMBOL sound/core/snd-pcm 0xd116d6ec snd_pcm_hw_param_last +EXPORT_SYMBOL sound/core/snd-pcm 0xd7db8a15 snd_pcm_lib_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL sound/core/snd-pcm 0xe97b0915 snd_pcm_new_stream +EXPORT_SYMBOL sound/core/snd-pcm 0xe9a8e0bd snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL sound/core/snd-pcm 0xf2352b0d snd_pcm_hw_refine +EXPORT_SYMBOL sound/core/snd-pcm 0xf3797152 snd_interval_ratnum +EXPORT_SYMBOL sound/core/snd-pcm 0xfb5c673d snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL sound/core/snd-pcm 0xfc8cdaff snd_pcm_new_internal +EXPORT_SYMBOL sound/core/snd-pcm 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL sound/core/snd-rawmidi 0x08acd8af snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x277406f1 snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0x2e2ec217 snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-rawmidi 0x42c404ea snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x4c316a81 snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0x76ef41e9 snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0x7b9ae495 snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0x83527ad3 snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0x8a2953cf snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0x923a2337 snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x9a6071c7 snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0xb2282681 snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-rawmidi 0xb2c745f7 snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0xdb40d847 snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0xea72e522 snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf5a2a291 snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0xfa16dd18 snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-timer 0x075b506c snd_timer_stop +EXPORT_SYMBOL sound/core/snd-timer 0x2589f636 snd_timer_interrupt +EXPORT_SYMBOL sound/core/snd-timer 0x58aa1014 snd_timer_open +EXPORT_SYMBOL sound/core/snd-timer 0x67ef1e6d snd_timer_continue +EXPORT_SYMBOL sound/core/snd-timer 0x69694625 snd_timer_close +EXPORT_SYMBOL sound/core/snd-timer 0x6983aa9f snd_timer_pause +EXPORT_SYMBOL sound/core/snd-timer 0x7bf0a2d9 snd_timer_notify +EXPORT_SYMBOL sound/core/snd-timer 0x82e26fb1 snd_timer_global_new +EXPORT_SYMBOL sound/core/snd-timer 0x96efdc36 snd_timer_start +EXPORT_SYMBOL sound/core/snd-timer 0xa344033c snd_timer_global_free +EXPORT_SYMBOL sound/core/snd-timer 0xd2df9b0b snd_timer_resolution +EXPORT_SYMBOL sound/core/snd-timer 0xd6e65f2c snd_timer_global_register +EXPORT_SYMBOL sound/core/snd-timer 0xf4869038 snd_timer_new +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x2c12511e snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x10bd9013 snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x1d5d8afa snd_opl3_init +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x31a9421a snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x366f63ec snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x45ff4ff3 snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x6a01965e snd_opl3_reset +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x7a387721 snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x989e0f10 snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xbbf85713 snd_opl3_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x005e84cf snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x31313eae snd_vx_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x759b93fa snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xb1169242 snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xc8b5eace snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xdf62f88f snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xe0aed114 snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xee3aaa85 snd_vx_resume +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xffad39d0 snd_vx_dsp_boot +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x06c9cf95 amdtp_out_stream_start +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x07f44b89 amdtp_out_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x0c92441d amdtp_out_stream_pcm_pointer +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x17c21415 cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x2c40b81a amdtp_out_stream_set_parameters +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x37e0503e fw_iso_resources_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x47412a95 amdtp_out_stream_set_pcm_format +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x497e58a6 iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x4a36dfbf amdtp_out_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x52ea865d cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x73ed4f57 fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x7b7bdabb fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x82b41f02 amdtp_out_stream_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa77535a0 amdtp_out_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc2a32baf amdtp_out_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc530257d snd_fw_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc9567812 cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xcf789e70 fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd61d9fd9 fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd672b1fe fcp_avc_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd757f0f1 amdtp_out_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xdc9fedbe fw_iso_resources_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe462da4c cmp_connection_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xeab5b8cd iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xed4fcc88 cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xef7cbdc1 amdtp_out_stream_stop +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x04988446 snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x24102776 snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x473abddb snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x7937490a snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xf47e907a snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xfb5736e9 snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x4218a713 snd_ak4117_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x8405d0a3 snd_ak4117_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xb170464b snd_ak4117_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xb52eccaf snd_ak4117_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xbb4bc3e9 snd_ak4117_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xefc8ae2b snd_ak4117_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x481a71eb snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x540cdb67 snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xe709b49f snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xe74dbb45 snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x40600910 snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x4615b980 snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x2e2a9af5 snd_cs8427_create +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x45cd70fb snd_cs8427_iec958_build +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x522b09d2 snd_cs8427_reg_write +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xdd253b3a snd_cs8427_iec958_pcm +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xe4358f1a snd_cs8427_iec958_active +EXPORT_SYMBOL sound/i2c/snd-i2c 0x33546391 snd_i2c_probeaddr +EXPORT_SYMBOL sound/i2c/snd-i2c 0x34e950b1 snd_i2c_sendbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x3a55edc6 snd_i2c_device_free +EXPORT_SYMBOL sound/i2c/snd-i2c 0x6b71ce4c snd_i2c_readbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x89ac52b7 snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0xc0e5e525 snd_i2c_bus_create +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x23ef0b1e snd_sbdsp_command +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x4ca2b2b2 snd_sbdsp_get_byte +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x6b4d25bc snd_sbdsp_create +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x8e15174c snd_sbmixer_new +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x93fb2bee snd_sbmixer_add_ctl +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xae868f03 snd_sbmixer_suspend +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xbfa79e1f snd_sbmixer_write +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xcb6de385 snd_sbdsp_reset +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xe32212ec snd_sbmixer_resume +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xec0b73c9 snd_sbmixer_read +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x71fdf016 snd_sb16dsp_configure +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xd6145f17 snd_sb16dsp_pcm +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xe0b3f690 snd_sb16dsp_interrupt +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xe8948d0d snd_sb16dsp_get_pcm_ops +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x045f4fa0 snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x1c4692cc snd_ac97_resume +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x1e04abbc snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x2b9fbe30 snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x47d9fc78 snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x484c055b snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x4e73e4a5 snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x4ea81514 snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x51a93eaa snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x529a6a06 snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x53624f62 snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x54455064 snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x6943b431 snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x85662715 snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x9b1fe377 snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xc3b7cf0d snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xd56d1315 snd_ac97_update +EXPORT_SYMBOL sound/pci/asihpi/snd-asihpi 0x401eb53b hpi_send_recv +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x2f00f08c snd_emu10k1_ptr_read +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x54194201 snd_emu10k1_voice_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x59df5352 snd_emu10k1_synth_copy_from_user +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x5aa8acda snd_emu10k1_memblk_map +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x78667b00 snd_emu10k1_synth_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x8ca23a24 snd_emu10k1_synth_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x99d646c8 snd_emu10k1_ptr_write +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xa6b51720 snd_emu10k1_synth_bzero +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xc9017751 snd_emu10k1_voice_free +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xb9847865 snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xe0179146 snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xfe5ae4ac snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x0cbfd117 oxygen_pci_pm +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x0d78580e oxygen_read8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x10f57654 oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x2dfc6f91 oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x333298cc oxygen_write_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x43379e1b oxygen_write32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x439440a0 oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x47ffbe1b oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x51f0780a oxygen_write_i2c +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x708738c6 oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x71cb3b0a oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x8898d6f2 oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x95cdc715 oxygen_pci_remove +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xa7eafc69 oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xaafda640 oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xd15c714a oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xdf9a2158 oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xe7d7de94 oxygen_pci_probe +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xf776ca99 oxygen_write16_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xfbfbf4b9 oxygen_write8 +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x18677cf7 snd_trident_alloc_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x808a9d4e snd_trident_write_voice_regs +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xc6d47d03 snd_trident_stop_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xc8533645 snd_trident_start_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xe4afbc8e snd_trident_free_voice +EXPORT_SYMBOL sound/soundcore 0xd00f3846 sound_class +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x07571cc7 snd_emux_new +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x22dfe62f snd_emux_free +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x2fe57d1f snd_emux_terminate_all +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x40285fa7 snd_emux_register +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x465e3272 snd_emux_unlock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x655cb202 snd_sf_linear_to_log +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xa30b63af snd_emux_lock_voice +EXPORT_SYMBOL sound/synth/snd-util-mem 0x20d328d1 snd_util_mem_avail +EXPORT_SYMBOL sound/synth/snd-util-mem 0x3d98126b snd_util_memhdr_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x759a07d1 __snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x7c805c1d __snd_util_memblk_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x7e4e81a4 snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0xb6ae0fcd snd_util_memhdr_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0xc11b21a0 snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0xdb2db8f3 __snd_util_mem_free +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x660e51de snd_usbmidi_create +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL vmlinux 0x00000000 __symbol_put +EXPORT_SYMBOL vmlinux 0x00000000 alloc_pages_current +EXPORT_SYMBOL vmlinux 0x00000000 current_fs_time +EXPORT_SYMBOL vmlinux 0x00000000 d_tmpfile +EXPORT_SYMBOL vmlinux 0x00000000 do_sync_read +EXPORT_SYMBOL vmlinux 0x00000000 filp_close +EXPORT_SYMBOL vmlinux 0x00000000 finish_open +EXPORT_SYMBOL vmlinux 0x00000000 generic_getxattr +EXPORT_SYMBOL vmlinux 0x00000000 generic_write_sync +EXPORT_SYMBOL vmlinux 0x00000000 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x00000000 in_group_p +EXPORT_SYMBOL vmlinux 0x00000000 inode_add_bytes +EXPORT_SYMBOL vmlinux 0x00000000 iov_shorten +EXPORT_SYMBOL vmlinux 0x00000000 iterate_fd +EXPORT_SYMBOL vmlinux 0x00000000 ns_capable +EXPORT_SYMBOL vmlinux 0x00000000 path_is_under +EXPORT_SYMBOL vmlinux 0x00000000 register_exec_domain +EXPORT_SYMBOL vmlinux 0x00000000 schedule_timeout +EXPORT_SYMBOL vmlinux 0x00000000 sock_register +EXPORT_SYMBOL vmlinux 0x00000000 sys_close +EXPORT_SYMBOL vmlinux 0x00000000 task_nice +EXPORT_SYMBOL vmlinux 0x00000000 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x00000000 vm_brk +EXPORT_SYMBOL vmlinux 0x000996a8 x86_hyper_vmware +EXPORT_SYMBOL vmlinux 0x0012263a xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0x0024baf6 jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x004068de pnp_stop_dev +EXPORT_SYMBOL vmlinux 0x004b5028 netif_rx +EXPORT_SYMBOL vmlinux 0x005a4ccc elv_dispatch_add_tail +EXPORT_SYMBOL vmlinux 0x0072ff35 tty_lock_pair +EXPORT_SYMBOL vmlinux 0x00781b01 devfreq_interval_update +EXPORT_SYMBOL vmlinux 0x00793516 i2c_del_driver +EXPORT_SYMBOL vmlinux 0x00801678 flush_scheduled_work +EXPORT_SYMBOL vmlinux 0x009634b7 security_d_instantiate +EXPORT_SYMBOL vmlinux 0x009fc23d dev_change_flags +EXPORT_SYMBOL vmlinux 0x00bf9f91 efi +EXPORT_SYMBOL vmlinux 0x00c4ef2f inode_capable +EXPORT_SYMBOL vmlinux 0x00d1000c pcie_set_readrq +EXPORT_SYMBOL vmlinux 0x00d41116 pci_scan_bus_parented +EXPORT_SYMBOL vmlinux 0x00d43aeb scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0x00d568e0 dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x00d7c90e block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0x00db91f0 agp_bind_memory +EXPORT_SYMBOL vmlinux 0x00eb8a88 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x0119e984 xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0x0126cfbf __locks_copy_lock +EXPORT_SYMBOL vmlinux 0x0129f9f2 tty_do_resize +EXPORT_SYMBOL vmlinux 0x012b47bf pci_reenable_device +EXPORT_SYMBOL vmlinux 0x01368ba5 ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x0158b70e skb_pad +EXPORT_SYMBOL vmlinux 0x015b3148 sock_sendmsg +EXPORT_SYMBOL vmlinux 0x015ddbdc wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x0160c9f7 elv_dispatch_sort +EXPORT_SYMBOL vmlinux 0x016cbf4b block_write_end +EXPORT_SYMBOL vmlinux 0x01842d8a blk_free_tags +EXPORT_SYMBOL vmlinux 0x01902adf netpoll_trap +EXPORT_SYMBOL vmlinux 0x01bcdf0a padata_free +EXPORT_SYMBOL vmlinux 0x01dcc382 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0x01e90079 cdev_init +EXPORT_SYMBOL vmlinux 0x01e984c4 inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0x01f7ebd9 __scsi_alloc_queue +EXPORT_SYMBOL vmlinux 0x02069f82 pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x0220fa30 blk_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x023618ea mmc_register_driver +EXPORT_SYMBOL vmlinux 0x023787eb pci_disable_msix +EXPORT_SYMBOL vmlinux 0x0237b57a arch_unregister_cpu +EXPORT_SYMBOL vmlinux 0x0249814e gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0x02649054 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x026cbaa4 dst_release +EXPORT_SYMBOL vmlinux 0x026eba0a i2c_master_send +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x0293cc00 __skb_dst_set_noref +EXPORT_SYMBOL vmlinux 0x029444f0 native_read_tsc +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a6ce5a crc16_table +EXPORT_SYMBOL vmlinux 0x02c5e1ac set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0x02e5c2c8 d_alloc_name +EXPORT_SYMBOL vmlinux 0x02ece494 pci_request_region +EXPORT_SYMBOL vmlinux 0x0315deed dev_set_allmulti +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x03498156 cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x0358dbd5 __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0x03592ea0 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x03630278 xfrm_state_flush +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x0369a676 vfs_setpos +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x03b2e28c netdev_warn +EXPORT_SYMBOL vmlinux 0x03bd6973 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0x03bfde7e netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0x03c06156 bitmap_fold +EXPORT_SYMBOL vmlinux 0x03db8187 gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0x03dfd0fe ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x03ebda85 dns_query +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x04038437 ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0x0422fe4a inet_csk_timer_bug_msg +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x045062b0 pci_set_master +EXPORT_SYMBOL vmlinux 0x0459be92 flush_old_exec +EXPORT_SYMBOL vmlinux 0x04763934 phy_stop_interrupts +EXPORT_SYMBOL vmlinux 0x0487f831 fb_find_best_display +EXPORT_SYMBOL vmlinux 0x04901b72 pnp_activate_dev +EXPORT_SYMBOL vmlinux 0x04927208 cpu_active_mask +EXPORT_SYMBOL vmlinux 0x049921ef dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x04a6223b __idr_pre_get +EXPORT_SYMBOL vmlinux 0x04d8c750 release_perfctr_nmi +EXPORT_SYMBOL vmlinux 0x04de4a0b simple_open +EXPORT_SYMBOL vmlinux 0x04dec530 __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04ea5d10 ksize +EXPORT_SYMBOL vmlinux 0x04eb3845 bio_integrity_split +EXPORT_SYMBOL vmlinux 0x04f852fe devm_gpio_request +EXPORT_SYMBOL vmlinux 0x0501226b pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x050877b9 dmi_first_match +EXPORT_SYMBOL vmlinux 0x051ac3c4 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0x051d6023 get_phy_device +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x053eb9c3 register_shrinker +EXPORT_SYMBOL vmlinux 0x05414af4 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x054434d6 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x055c8559 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x059020bd dev_warn +EXPORT_SYMBOL vmlinux 0x0593a99b init_timer_key +EXPORT_SYMBOL vmlinux 0x05deff4b complete_request_key +EXPORT_SYMBOL vmlinux 0x05ed3c3f mddev_congested +EXPORT_SYMBOL vmlinux 0x05f0cf11 key_type_keyring +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x061f4039 acpi_get_table_with_size +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x0649712a release_sock +EXPORT_SYMBOL vmlinux 0x06779939 tcf_register_action +EXPORT_SYMBOL vmlinux 0x06797871 vm_stat +EXPORT_SYMBOL vmlinux 0x067d8d35 security_release_secctx +EXPORT_SYMBOL vmlinux 0x068c7263 ioremap_cache +EXPORT_SYMBOL vmlinux 0x06c0dae5 __kernel_fpu_end +EXPORT_SYMBOL vmlinux 0x06c3b5a3 netdev_err +EXPORT_SYMBOL vmlinux 0x06fe3b14 default_grn +EXPORT_SYMBOL vmlinux 0x07202564 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x0727c4f3 iowrite8 +EXPORT_SYMBOL vmlinux 0x07354b43 dump_align +EXPORT_SYMBOL vmlinux 0x073dfa12 generate_resume_trace +EXPORT_SYMBOL vmlinux 0x074a5db3 backlight_device_register +EXPORT_SYMBOL vmlinux 0x075ac0c4 pci_request_regions +EXPORT_SYMBOL vmlinux 0x076c07e5 netpoll_setup +EXPORT_SYMBOL vmlinux 0x0794a19b pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x0799aca4 local_bh_enable +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07b9e5a9 i2c_use_client +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07d258b9 __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0x07d99f0a bio_map_kern +EXPORT_SYMBOL vmlinux 0x07e6875a mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0x07e745e4 devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0x08141d46 from_kuid_munged +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x082f9c67 acpi_match_device_ids +EXPORT_SYMBOL vmlinux 0x083d88f6 gen10g_suspend +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x0846f59a cpu_info +EXPORT_SYMBOL vmlinux 0x085919ee netdev_change_features +EXPORT_SYMBOL vmlinux 0x088f24be mb_cache_create +EXPORT_SYMBOL vmlinux 0x0897287b acpi_disable_all_gpes +EXPORT_SYMBOL vmlinux 0x089798db pci_alloc_dev +EXPORT_SYMBOL vmlinux 0x089d2a58 fsnotify_destroy_mark +EXPORT_SYMBOL vmlinux 0x08a0c6f0 block_truncate_page +EXPORT_SYMBOL vmlinux 0x08b8da5d scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0x08e6dc21 __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0x08f64aa4 _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x092afb4d free_xenballooned_pages +EXPORT_SYMBOL vmlinux 0x0946241a blk_get_queue +EXPORT_SYMBOL vmlinux 0x09561260 blk_mq_alloc_single_hw_queue +EXPORT_SYMBOL vmlinux 0x098431ba acpi_get_current_resources +EXPORT_SYMBOL vmlinux 0x098b6dac proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x0992780d efi_enabled +EXPORT_SYMBOL vmlinux 0x09adcdeb vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0x09b2a7a0 mmc_gpio_free_cd +EXPORT_SYMBOL vmlinux 0x09bc4192 phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0x09c55cec schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09cb216c mmc_get_card +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09d99d86 x86_hyper_ms_hyperv +EXPORT_SYMBOL vmlinux 0x09eedab0 bio_alloc_pages +EXPORT_SYMBOL vmlinux 0x0a2487e0 unblock_all_signals +EXPORT_SYMBOL vmlinux 0x0a2c944b fb_validate_mode +EXPORT_SYMBOL vmlinux 0x0a3825ec lock_rename +EXPORT_SYMBOL vmlinux 0x0a597f6f __free_pages +EXPORT_SYMBOL vmlinux 0x0a6cd200 tcf_em_register +EXPORT_SYMBOL vmlinux 0x0a770832 register_memory_notifier +EXPORT_SYMBOL vmlinux 0x0a86e25b _raw_read_unlock_irq +EXPORT_SYMBOL vmlinux 0x0a89f7d6 pci_scan_bus +EXPORT_SYMBOL vmlinux 0x0a921967 netif_carrier_on +EXPORT_SYMBOL vmlinux 0x0a92327a I_BDEV +EXPORT_SYMBOL vmlinux 0x0ab674e0 from_kuid +EXPORT_SYMBOL vmlinux 0x0ac05472 submit_bio +EXPORT_SYMBOL vmlinux 0x0ac14b40 bdget +EXPORT_SYMBOL vmlinux 0x0ac3ef9d jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0x0ac63118 pnp_request_card_device +EXPORT_SYMBOL vmlinux 0x0acb1a3c __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0acf7891 bprm_change_interp +EXPORT_SYMBOL vmlinux 0x0ad0e67c idr_replace +EXPORT_SYMBOL vmlinux 0x0adbb280 ilookup5 +EXPORT_SYMBOL vmlinux 0x0afbc682 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x0b026cd0 skb_checksum_help +EXPORT_SYMBOL vmlinux 0x0b0d888b icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0x0b10a91b md_write_end +EXPORT_SYMBOL vmlinux 0x0b196abc dev_notice +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b32a12f __seq_open_private +EXPORT_SYMBOL vmlinux 0x0b4e92e2 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x0b536f9a sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x0b54055a padata_set_cpumasks +EXPORT_SYMBOL vmlinux 0x0b5d9e73 thaw_bdev +EXPORT_SYMBOL vmlinux 0x0b6d0ba2 scsi_print_sense +EXPORT_SYMBOL vmlinux 0x0b70ef05 mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0bb63ee2 skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0x0bbc5908 gen_estimator_active +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bcc03b9 kobject_get +EXPORT_SYMBOL vmlinux 0x0bdaba42 d_lookup +EXPORT_SYMBOL vmlinux 0x0bfd872b pci_map_biosrom +EXPORT_SYMBOL vmlinux 0x0c0b0baf pci_get_class +EXPORT_SYMBOL vmlinux 0x0c16c665 cfb_copyarea +EXPORT_SYMBOL vmlinux 0x0c299e06 skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x0c45fc96 vfs_lstat +EXPORT_SYMBOL vmlinux 0x0c58a8cd netdev_increment_features +EXPORT_SYMBOL vmlinux 0x0c65e73c scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0x0c7b4ac2 dev_set_mac_address +EXPORT_SYMBOL vmlinux 0x0c8210df skb_insert +EXPORT_SYMBOL vmlinux 0x0c8c9e99 scsi_show_extd_sense +EXPORT_SYMBOL vmlinux 0x0c8fac1f proc_remove +EXPORT_SYMBOL vmlinux 0x0ca7b7a8 acpi_check_region +EXPORT_SYMBOL vmlinux 0x0cae232b utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0x0cb3c822 dev_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x0ccd1626 generic_file_mmap +EXPORT_SYMBOL vmlinux 0x0cd568b0 xfrm6_rcv +EXPORT_SYMBOL vmlinux 0x0cdb7d12 __kernel_fpu_begin +EXPORT_SYMBOL vmlinux 0x0cdc11b3 simple_lookup +EXPORT_SYMBOL vmlinux 0x0ce5cdb2 dev_activate +EXPORT_SYMBOL vmlinux 0x0ce900af blk_finish_plug +EXPORT_SYMBOL vmlinux 0x0cf74cb8 eth_header_parse +EXPORT_SYMBOL vmlinux 0x0d295b4d sock_init_data +EXPORT_SYMBOL vmlinux 0x0d3dda14 acpi_get_type +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d733f0f inet_twsk_deschedule +EXPORT_SYMBOL vmlinux 0x0d96ced6 mmc_put_card +EXPORT_SYMBOL vmlinux 0x0da10ec3 security_sock_graft +EXPORT_SYMBOL vmlinux 0x0db9fa85 vm_iomap_memory +EXPORT_SYMBOL vmlinux 0x0dd62e4d page_symlink +EXPORT_SYMBOL vmlinux 0x0de5ae08 tty_port_init +EXPORT_SYMBOL vmlinux 0x0e1cf50c tty_port_open +EXPORT_SYMBOL vmlinux 0x0e2150f4 md_error +EXPORT_SYMBOL vmlinux 0x0e2c4d23 dma_supported +EXPORT_SYMBOL vmlinux 0x0e6da44a set_normalized_timespec +EXPORT_SYMBOL vmlinux 0x0e7e5a6a security_path_truncate +EXPORT_SYMBOL vmlinux 0x0ec5aeba agp_backend_release +EXPORT_SYMBOL vmlinux 0x0ed8cc7b acpi_evaluate_object_typed +EXPORT_SYMBOL vmlinux 0x0ef3c0e5 pci_set_dma_seg_boundary +EXPORT_SYMBOL vmlinux 0x0efcbb1b set_current_groups +EXPORT_SYMBOL vmlinux 0x0f140d55 netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0x0f18b2f7 inode_get_bytes +EXPORT_SYMBOL vmlinux 0x0f1c695d dev_uc_del +EXPORT_SYMBOL vmlinux 0x0f28192e key_task_permission +EXPORT_SYMBOL vmlinux 0x0f29fd1a skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0x0f2a0473 filp_open +EXPORT_SYMBOL vmlinux 0x0f4c91ed ns_to_timespec +EXPORT_SYMBOL vmlinux 0x0f7a7ae8 dquot_file_open +EXPORT_SYMBOL vmlinux 0x0f97eabc scsi_remove_host +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fb02dd5 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0x0fd00a68 acpi_clear_event +EXPORT_SYMBOL vmlinux 0x0fe2fc25 task_tgid_nr_ns +EXPORT_SYMBOL vmlinux 0x0fe6f6df mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x0ff2b602 slhc_compress +EXPORT_SYMBOL vmlinux 0x100ce8c7 dump_trace +EXPORT_SYMBOL vmlinux 0x1036559d tty_port_close +EXPORT_SYMBOL vmlinux 0x1043dd68 bio_reset +EXPORT_SYMBOL vmlinux 0x106bd315 bd_set_size +EXPORT_SYMBOL vmlinux 0x1072a394 csum_partial_copy_from_user +EXPORT_SYMBOL vmlinux 0x10d4151a pci_clear_master +EXPORT_SYMBOL vmlinux 0x10ee20bb default_blu +EXPORT_SYMBOL vmlinux 0x10f8ecb1 dev_emerg +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x110c3636 sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0x11267875 scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0x113a8106 __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0x113edeed scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0x1148aad4 pci_dev_driver +EXPORT_SYMBOL vmlinux 0x1149764b generic_setlease +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x116b1148 block_commit_write +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x11a8f12e max8925_reg_read +EXPORT_SYMBOL vmlinux 0x11d42678 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x11de7c2a pagecache_write_begin +EXPORT_SYMBOL vmlinux 0x11e2ec12 flex_array_free_parts +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x120d67d4 unregister_memory_isolate_notifier +EXPORT_SYMBOL vmlinux 0x120efc82 dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x1238d3ab skb_queue_head +EXPORT_SYMBOL vmlinux 0x124255cc blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0x1254847e dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x125e848b dqget +EXPORT_SYMBOL vmlinux 0x127412fe __breadahead +EXPORT_SYMBOL vmlinux 0x128fb13b gen10g_config_advert +EXPORT_SYMBOL vmlinux 0x129de341 wrmsr_on_cpus +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12cf1cf5 dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x12dfeb12 vprintk_emit +EXPORT_SYMBOL vmlinux 0x12f3deb8 elv_register_queue +EXPORT_SYMBOL vmlinux 0x12f85f91 ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0x1305d532 ucs2_strncmp +EXPORT_SYMBOL vmlinux 0x132dd03c pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0x13307fde vsscanf +EXPORT_SYMBOL vmlinux 0x1330ccac phy_device_create +EXPORT_SYMBOL vmlinux 0x1348760d ipmi_request_settime +EXPORT_SYMBOL vmlinux 0x1349f7fc bio_integrity_prep +EXPORT_SYMBOL vmlinux 0x135d95eb sk_stream_error +EXPORT_SYMBOL vmlinux 0x137b54ca mount_ns +EXPORT_SYMBOL vmlinux 0x138cecc6 tcp_connect +EXPORT_SYMBOL vmlinux 0x139bb1ae security_path_mkdir +EXPORT_SYMBOL vmlinux 0x13b5fbfe tty_throttle +EXPORT_SYMBOL vmlinux 0x13bbc017 blk_integrity_register +EXPORT_SYMBOL vmlinux 0x13c0daa6 pcim_enable_device +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13df59ac abort_creds +EXPORT_SYMBOL vmlinux 0x13e791dd input_flush_device +EXPORT_SYMBOL vmlinux 0x13f42152 system_entering_hibernation +EXPORT_SYMBOL vmlinux 0x14263389 pnp_unregister_driver +EXPORT_SYMBOL vmlinux 0x14325df6 dev_addr_add +EXPORT_SYMBOL vmlinux 0x144085a0 pci_bus_put +EXPORT_SYMBOL vmlinux 0x1460923f dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x147b2fbc tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x14876860 __ethtool_get_settings +EXPORT_SYMBOL vmlinux 0x148a9a43 twl6040_set_bits +EXPORT_SYMBOL vmlinux 0x14984235 sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0x14d40aa6 dump_emit +EXPORT_SYMBOL vmlinux 0x14dfc999 gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0x14eb21d0 bdput +EXPORT_SYMBOL vmlinux 0x150389d6 acpi_processor_power_init_bm_check +EXPORT_SYMBOL vmlinux 0x1515ba08 __elv_add_request +EXPORT_SYMBOL vmlinux 0x1529d284 dquot_free_inode +EXPORT_SYMBOL vmlinux 0x15404f8f devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x1551dc51 bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x15846f7f skb_clone +EXPORT_SYMBOL vmlinux 0x158493b8 jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0x158a3a74 input_open_device +EXPORT_SYMBOL vmlinux 0x15a1aeee blk_run_queue +EXPORT_SYMBOL vmlinux 0x15b60a9f inetdev_by_index +EXPORT_SYMBOL vmlinux 0x15c346c1 tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0x15ef9f91 swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x15f571ec blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0x160ea4c8 sfi_disabled +EXPORT_SYMBOL vmlinux 0x161e8295 mpage_writepage +EXPORT_SYMBOL vmlinux 0x16305289 warn_slowpath_null +EXPORT_SYMBOL vmlinux 0x163401c6 register_console +EXPORT_SYMBOL vmlinux 0x1635dd02 da903x_query_status +EXPORT_SYMBOL vmlinux 0x1637ff0f _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0x164231c8 agp_collect_device_status +EXPORT_SYMBOL vmlinux 0x165b621b ip_check_defrag +EXPORT_SYMBOL vmlinux 0x167a2b9e framebuffer_release +EXPORT_SYMBOL vmlinux 0x167c5967 print_hex_dump +EXPORT_SYMBOL vmlinux 0x167de4e0 bitmap_endwrite +EXPORT_SYMBOL vmlinux 0x167e7f9d __get_user_1 +EXPORT_SYMBOL vmlinux 0x168af608 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0x168f1082 _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x16a5d5d9 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0x16b25696 sock_wfree +EXPORT_SYMBOL vmlinux 0x16c7c442 tcp_prot +EXPORT_SYMBOL vmlinux 0x16dcec76 ipmi_set_my_address +EXPORT_SYMBOL vmlinux 0x16e3e94d set_bdi_congested +EXPORT_SYMBOL vmlinux 0x16f1dc27 gen_replace_estimator +EXPORT_SYMBOL vmlinux 0x16fd2604 eth_header +EXPORT_SYMBOL vmlinux 0x16ff6ce7 arp_find +EXPORT_SYMBOL vmlinux 0x170277db sock_no_listen +EXPORT_SYMBOL vmlinux 0x17068f8f inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0x170c25ee acpi_get_next_object +EXPORT_SYMBOL vmlinux 0x17231de6 dquot_quota_on +EXPORT_SYMBOL vmlinux 0x1742a30a skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0x1742baec single_open +EXPORT_SYMBOL vmlinux 0x1749a230 nla_put +EXPORT_SYMBOL vmlinux 0x1766910e neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0x177cad90 page_readlink +EXPORT_SYMBOL vmlinux 0x1790d76b _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0x17912440 pci_save_state +EXPORT_SYMBOL vmlinux 0x179639dd bioset_integrity_free +EXPORT_SYMBOL vmlinux 0x17a267f5 kmalloc_dma_caches +EXPORT_SYMBOL vmlinux 0x17b07d30 lock_may_read +EXPORT_SYMBOL vmlinux 0x17b1125d gen_kill_estimator +EXPORT_SYMBOL vmlinux 0x17b64d09 dqstats +EXPORT_SYMBOL vmlinux 0x17d3bf04 mount_bdev +EXPORT_SYMBOL vmlinux 0x17d4b524 request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0x17dd1932 jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0x17df66f0 __scsi_add_device +EXPORT_SYMBOL vmlinux 0x17e7edea mark_info_dirty +EXPORT_SYMBOL vmlinux 0x17ee9afd security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x17f341a0 i8042_lock_chip +EXPORT_SYMBOL vmlinux 0x1803f1ef simple_unlink +EXPORT_SYMBOL vmlinux 0x18043daa vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0x1804b4a0 ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0x1808c45b pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0x183b9834 bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x183fa88b mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0x184b82fb mmc_vddrange_to_ocrmask +EXPORT_SYMBOL vmlinux 0x184e6c85 radix_tree_gang_lookup_slot +EXPORT_SYMBOL vmlinux 0x18727dd8 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0x18860164 __skb_tx_hash +EXPORT_SYMBOL vmlinux 0x188a3dfb timespec_trunc +EXPORT_SYMBOL vmlinux 0x18954ec5 release_pages +EXPORT_SYMBOL vmlinux 0x189868d7 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x18b72573 register_kmmio_probe +EXPORT_SYMBOL vmlinux 0x18cb1399 do_sync_write +EXPORT_SYMBOL vmlinux 0x18ccaed3 add_disk +EXPORT_SYMBOL vmlinux 0x18ea5688 gen10g_read_status +EXPORT_SYMBOL vmlinux 0x18ee97fa ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0x18f5369e scsi_mode_sense +EXPORT_SYMBOL vmlinux 0x18fd8483 agp_generic_destroy_pages +EXPORT_SYMBOL vmlinux 0x19444627 memcpy_fromiovecend +EXPORT_SYMBOL vmlinux 0x19490db6 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x19910aea kfree_skb_list +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19a6305e d_instantiate_no_diralias +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x1a02670c blk_mq_can_queue +EXPORT_SYMBOL vmlinux 0x1a10c898 ipmi_set_maintenance_mode +EXPORT_SYMBOL vmlinux 0x1a119f25 tcp_ioctl +EXPORT_SYMBOL vmlinux 0x1a37624f neigh_table_clear +EXPORT_SYMBOL vmlinux 0x1a40ed2c tcf_generic_walker +EXPORT_SYMBOL vmlinux 0x1a45cb6c acpi_disabled +EXPORT_SYMBOL vmlinux 0x1a4f4e68 security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0x1a63af34 vga_switcheroo_process_delayed_switch +EXPORT_SYMBOL vmlinux 0x1a63b65f ppp_dev_name +EXPORT_SYMBOL vmlinux 0x1a694d68 get_fs_type +EXPORT_SYMBOL vmlinux 0x1a760f4e skb_copy_bits +EXPORT_SYMBOL vmlinux 0x1a7c47af lock_sock_nested +EXPORT_SYMBOL vmlinux 0x1a929332 blk_queue_invalidate_tags +EXPORT_SYMBOL vmlinux 0x1a9bb79d abx500_remove_ops +EXPORT_SYMBOL vmlinux 0x1aa1dfbb jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0x1aa3fed9 read_cache_pages +EXPORT_SYMBOL vmlinux 0x1aba5db8 ipmi_unregister_smi +EXPORT_SYMBOL vmlinux 0x1ac5d3cb strcspn +EXPORT_SYMBOL vmlinux 0x1aca549d pci_add_new_bus +EXPORT_SYMBOL vmlinux 0x1ace138d bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0x1ae14ef5 _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x1ae71733 agp_generic_mask_memory +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b1e1088 sg_nents +EXPORT_SYMBOL vmlinux 0x1b2dcdd3 tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0x1b353088 clk_register_clkdevs +EXPORT_SYMBOL vmlinux 0x1b4bb3e2 __cleancache_put_page +EXPORT_SYMBOL vmlinux 0x1b570d23 acpi_warning +EXPORT_SYMBOL vmlinux 0x1b57c2f4 noop_fsync +EXPORT_SYMBOL vmlinux 0x1b5b8d05 scm_detach_fds +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b6368ce xfrm_state_walk +EXPORT_SYMBOL vmlinux 0x1b775a23 iunique +EXPORT_SYMBOL vmlinux 0x1b82fefa md_unplug +EXPORT_SYMBOL vmlinux 0x1b87b44e fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0x1b8b95ad i8042_unlock_chip +EXPORT_SYMBOL vmlinux 0x1b9c4f14 blk_put_queue +EXPORT_SYMBOL vmlinux 0x1b9e0ff1 scsilun_to_int +EXPORT_SYMBOL vmlinux 0x1ba2829d phy_init_eee +EXPORT_SYMBOL vmlinux 0x1bdc26cf sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x1be55709 __generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x1bf03df7 i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0x1c2a3dbe console_stop +EXPORT_SYMBOL vmlinux 0x1c3be53a sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0x1c408f69 sock_no_connect +EXPORT_SYMBOL vmlinux 0x1c41d0e0 fb_show_logo +EXPORT_SYMBOL vmlinux 0x1c8a04b0 acpi_reset +EXPORT_SYMBOL vmlinux 0x1ca9f37a jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0x1cb21baf pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0x1cc03d43 tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0x1d0b2d4b ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x1d3449ad compat_ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x1d983bb2 inet_del_protocol +EXPORT_SYMBOL vmlinux 0x1db7706b __copy_user_nocache +EXPORT_SYMBOL vmlinux 0x1db7a9bb mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0x1dc08081 security_file_permission +EXPORT_SYMBOL vmlinux 0x1dc1307f blk_bio_map_sg +EXPORT_SYMBOL vmlinux 0x1dc36131 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0x1dc37e57 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0x1dccaf1e netdev_all_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1de74f72 acpi_execute_simple_method +EXPORT_SYMBOL vmlinux 0x1df940c0 sock_release +EXPORT_SYMBOL vmlinux 0x1e047854 warn_slowpath_fmt +EXPORT_SYMBOL vmlinux 0x1e0c2be4 ioremap_wc +EXPORT_SYMBOL vmlinux 0x1e158823 netdev_features_change +EXPORT_SYMBOL vmlinux 0x1e172f90 alloc_xenballooned_pages +EXPORT_SYMBOL vmlinux 0x1e26be3b get_anon_bdev +EXPORT_SYMBOL vmlinux 0x1e296d43 inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0x1e2beddc md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e6fbb2d dmam_alloc_coherent +EXPORT_SYMBOL vmlinux 0x1e8012a0 __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ec3bed9 hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0x1ec4eb34 flex_array_prealloc +EXPORT_SYMBOL vmlinux 0x1eedb8a7 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0x1efc5779 pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0x1f0f856e submit_bio_wait +EXPORT_SYMBOL vmlinux 0x1f1ddd89 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0x1f30a848 soft_cursor +EXPORT_SYMBOL vmlinux 0x1f33d9bf register_netdev +EXPORT_SYMBOL vmlinux 0x1f6ce67a sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x1f924809 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x1f9b1af2 uart_update_timeout +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fd8fd49 dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0x1fdf48a0 get_thermal_instance +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1fe9f800 unregister_cpu_notifier +EXPORT_SYMBOL vmlinux 0x1fedf0f4 __request_region +EXPORT_SYMBOL vmlinux 0x1ff6f16c compat_sock_get_timestampns +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x2005e68a acpi_remove_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x20092385 acpi_enter_sleep_state_s4bios +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x20163fd0 twl6040_set_pll +EXPORT_SYMBOL vmlinux 0x2021c348 kobject_add +EXPORT_SYMBOL vmlinux 0x203faf40 udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0x2044aea7 amd_iommu_pc_get_max_banks +EXPORT_SYMBOL vmlinux 0x2046e628 dev_addr_del +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x204c90df agp_unbind_memory +EXPORT_SYMBOL vmlinux 0x20525378 inet_stream_connect +EXPORT_SYMBOL vmlinux 0x205e712d ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0x206d9cd0 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0x2070c966 clear_nlink +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x208739f6 acpi_load_table +EXPORT_SYMBOL vmlinux 0x2092a804 pnp_unregister_card_driver +EXPORT_SYMBOL vmlinux 0x20998ad9 search_binary_handler +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20abc15b acpi_processor_register_performance +EXPORT_SYMBOL vmlinux 0x20b2bb2d param_array_ops +EXPORT_SYMBOL vmlinux 0x20c55ae0 sscanf +EXPORT_SYMBOL vmlinux 0x20cc0e04 iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0x20cc2dfd sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0x20ce8b1b vfs_fsync +EXPORT_SYMBOL vmlinux 0x20d8e72d mntget +EXPORT_SYMBOL vmlinux 0x20eadeb6 ip_compute_csum +EXPORT_SYMBOL vmlinux 0x212c16ec xfrm_init_state +EXPORT_SYMBOL vmlinux 0x21340150 fb_set_cmap +EXPORT_SYMBOL vmlinux 0x213aecd0 blk_rq_map_user +EXPORT_SYMBOL vmlinux 0x213d6520 done_path_create +EXPORT_SYMBOL vmlinux 0x215b6b0a dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0x215d8cd7 invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0x215ebd78 bitrev16 +EXPORT_SYMBOL vmlinux 0x21684f0c truncate_setsize +EXPORT_SYMBOL vmlinux 0x2169c574 wireless_send_event +EXPORT_SYMBOL vmlinux 0x21701cc5 page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0x217dda13 flex_array_get +EXPORT_SYMBOL vmlinux 0x217eb826 agp_bridge +EXPORT_SYMBOL vmlinux 0x219e5dd2 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0x21a8a81a vfs_create +EXPORT_SYMBOL vmlinux 0x21ad2490 inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0x21e0ea22 acpi_get_id +EXPORT_SYMBOL vmlinux 0x21e19354 compat_sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x21e9ef82 blk_init_tags +EXPORT_SYMBOL vmlinux 0x21f1c7a2 vga_switcheroo_init_domain_pm_ops +EXPORT_SYMBOL vmlinux 0x220170ed inode_sub_rsv_space +EXPORT_SYMBOL vmlinux 0x22196290 sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0x221ab67e set_binfmt +EXPORT_SYMBOL vmlinux 0x22279c44 skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x223e0242 generic_file_fsync +EXPORT_SYMBOL vmlinux 0x223f14cb blk_make_request +EXPORT_SYMBOL vmlinux 0x2267ec79 mnt_unpin +EXPORT_SYMBOL vmlinux 0x22754104 follow_down +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22bfae42 kfree_skb +EXPORT_SYMBOL vmlinux 0x22e01716 inode_set_bytes +EXPORT_SYMBOL vmlinux 0x22fd9ad0 sleep_on_timeout +EXPORT_SYMBOL vmlinux 0x231b02d5 d_invalidate +EXPORT_SYMBOL vmlinux 0x231d4001 fb_edid_add_monspecs +EXPORT_SYMBOL vmlinux 0x2324f080 xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0x23295da2 mmc_flush_cache +EXPORT_SYMBOL vmlinux 0x233be7d7 key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x233e21e7 proc_mkdir +EXPORT_SYMBOL vmlinux 0x23532c4d ftrace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x235d42af __get_page_tail +EXPORT_SYMBOL vmlinux 0x236faa50 padata_set_cpumask +EXPORT_SYMBOL vmlinux 0x237297ae phy_get_eee_err +EXPORT_SYMBOL vmlinux 0x237cd235 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0x239509d5 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x23a574fd security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0x23b13cee ipmi_smi_watcher_register +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c8f257 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x23c9891c kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x23f6496b netpoll_cleanup +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x2411b1cf pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x2433c27f genphy_update_link +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x24598c4e misc_deregister +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x245cc49c neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0x2463fd53 proc_set_user +EXPORT_SYMBOL vmlinux 0x2472e513 clocksource_unregister +EXPORT_SYMBOL vmlinux 0x247e9536 udp_sendmsg +EXPORT_SYMBOL vmlinux 0x2482e688 vsprintf +EXPORT_SYMBOL vmlinux 0x2484adc3 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0x248c273b ida_remove +EXPORT_SYMBOL vmlinux 0x24927a0b intel_gmch_probe +EXPORT_SYMBOL vmlinux 0x24a9a9d4 devfreq_resume_device +EXPORT_SYMBOL vmlinux 0x24a9e18f security_mmap_file +EXPORT_SYMBOL vmlinux 0x24bf222d notify_change +EXPORT_SYMBOL vmlinux 0x24c2c018 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0x24dbfe7d netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0x24eafe47 netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0x24fdac79 wake_bit_function +EXPORT_SYMBOL vmlinux 0x25067b3f xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x2513e0df blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x2537a8c5 tty_register_driver +EXPORT_SYMBOL vmlinux 0x253fe412 __pci_register_driver +EXPORT_SYMBOL vmlinux 0x2549b24f nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x255d27db vfs_write +EXPORT_SYMBOL vmlinux 0x256402a6 pci_release_region +EXPORT_SYMBOL vmlinux 0x25768052 sock_i_uid +EXPORT_SYMBOL vmlinux 0x257caf29 unregister_console +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x25861987 pci_select_bars +EXPORT_SYMBOL vmlinux 0x25b3a605 kernel_listen +EXPORT_SYMBOL vmlinux 0x25c677c4 mac_pton +EXPORT_SYMBOL vmlinux 0x25c8cbca mutex_lock +EXPORT_SYMBOL vmlinux 0x25e3f0e6 __module_get +EXPORT_SYMBOL vmlinux 0x25e9536f remap_pfn_range +EXPORT_SYMBOL vmlinux 0x26027c8a tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0x2615a93d phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0x26170584 remove_arg_zero +EXPORT_SYMBOL vmlinux 0x263122f8 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x263d7453 xfrm_lookup +EXPORT_SYMBOL vmlinux 0x2649c86e skb_copy_expand +EXPORT_SYMBOL vmlinux 0x264b5d7c scsi_finish_command +EXPORT_SYMBOL vmlinux 0x2650d835 sysctl_ip_early_demux +EXPORT_SYMBOL vmlinux 0x265751da blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0x2665d53a key_create_or_update +EXPORT_SYMBOL vmlinux 0x2678acff sync_inode_metadata +EXPORT_SYMBOL vmlinux 0x2685c3d7 __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x26948d96 copy_user_enhanced_fast_string +EXPORT_SYMBOL vmlinux 0x26a01acd dev_addr_flush +EXPORT_SYMBOL vmlinux 0x26a100ba ipmi_smi_watcher_unregister +EXPORT_SYMBOL vmlinux 0x26bfb8f6 sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0x26c510d6 bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0x26e0fc3d amd_iommu_get_v2_domain +EXPORT_SYMBOL vmlinux 0x26e298e0 unregister_memory_notifier +EXPORT_SYMBOL vmlinux 0x26e76fb8 sysctl_udp_wmem_min +EXPORT_SYMBOL vmlinux 0x26f0453a blk_set_default_limits +EXPORT_SYMBOL vmlinux 0x26f9a0f9 handle_edge_irq +EXPORT_SYMBOL vmlinux 0x2712f4f5 crc32_le_combine +EXPORT_SYMBOL vmlinux 0x271cba95 acpi_bus_private_data_handler +EXPORT_SYMBOL vmlinux 0x2720f8a1 tc_classify +EXPORT_SYMBOL vmlinux 0x27266ba8 dentry_path_raw +EXPORT_SYMBOL vmlinux 0x2728ad0b vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0x272d394e mtrr_del +EXPORT_SYMBOL vmlinux 0x274d08dc __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0x2757b282 pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0x2761b692 cpu_sibling_map +EXPORT_SYMBOL vmlinux 0x27812585 unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x27881a24 mmc_power_save_host +EXPORT_SYMBOL vmlinux 0x278a29f9 freeze_bdev +EXPORT_SYMBOL vmlinux 0x27a04c8f ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x27ae7d0c ec_transaction +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27c33efe csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0x27e1a049 printk +EXPORT_SYMBOL vmlinux 0x27f5d482 pci_enable_obff +EXPORT_SYMBOL vmlinux 0x27ffcbd2 __blk_end_request_all +EXPORT_SYMBOL vmlinux 0x28154927 generic_write_end +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x2820252f generic_file_aio_read +EXPORT_SYMBOL vmlinux 0x28318305 snprintf +EXPORT_SYMBOL vmlinux 0x28789085 mmc_interrupt_hpi +EXPORT_SYMBOL vmlinux 0x28a2ed02 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x28abfe6e scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x28ae38c3 netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0x290d24be sget +EXPORT_SYMBOL vmlinux 0x291339fa xfrm4_prepare_output +EXPORT_SYMBOL vmlinux 0x294a39d8 set_pages_x +EXPORT_SYMBOL vmlinux 0x294c5be8 mnt_pin +EXPORT_SYMBOL vmlinux 0x29537c9e alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0x295afa0e netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0x295f5493 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0x29968bf9 serio_rescan +EXPORT_SYMBOL vmlinux 0x2a0572f6 tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0x2a0eee5c audit_log +EXPORT_SYMBOL vmlinux 0x2a13d78e prepare_binprm +EXPORT_SYMBOL vmlinux 0x2a27937f blk_queue_end_tag +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a37d074 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2a3d4be8 napi_get_frags +EXPORT_SYMBOL vmlinux 0x2a47e70e xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0x2a5f9b87 agp_find_bridge +EXPORT_SYMBOL vmlinux 0x2a6e6109 __init_rwsem +EXPORT_SYMBOL vmlinux 0x2a79ac13 clkdev_add +EXPORT_SYMBOL vmlinux 0x2a8c8bf8 _raw_spin_unlock_irq +EXPORT_SYMBOL vmlinux 0x2a939493 genl_notify +EXPORT_SYMBOL vmlinux 0x2aa72565 follow_pfn +EXPORT_SYMBOL vmlinux 0x2acf0feb vfs_fstat +EXPORT_SYMBOL vmlinux 0x2ad04e46 unregister_key_type +EXPORT_SYMBOL vmlinux 0x2ad304ee thaw_super +EXPORT_SYMBOL vmlinux 0x2ae3796e dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0x2b0ba2b0 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x2b131ba5 pci_biosrom_size +EXPORT_SYMBOL vmlinux 0x2b2ce78b kstrtos8 +EXPORT_SYMBOL vmlinux 0x2b32838c tcp_splice_read +EXPORT_SYMBOL vmlinux 0x2b51837e proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x2b66d359 blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0x2b85e35b kernel_write +EXPORT_SYMBOL vmlinux 0x2b9cd1b9 mount_pseudo +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2ba4ed00 set_page_dirty +EXPORT_SYMBOL vmlinux 0x2ba707a8 sysctl_tcp_low_latency +EXPORT_SYMBOL vmlinux 0x2bb55d6e acpi_remove_notify_handler +EXPORT_SYMBOL vmlinux 0x2bd5cd8f arp_create +EXPORT_SYMBOL vmlinux 0x2bf81650 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0x2bfeb410 acpi_get_handle +EXPORT_SYMBOL vmlinux 0x2bff96a5 mmc_power_restore_host +EXPORT_SYMBOL vmlinux 0x2c18f06f blk_start_request +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c4f7e40 dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0x2c6758d8 inet_frag_maybe_warn_overflow +EXPORT_SYMBOL vmlinux 0x2c6f123e qdisc_destroy +EXPORT_SYMBOL vmlinux 0x2c900d91 cpufreq_put_global_kobject +EXPORT_SYMBOL vmlinux 0x2c9c6d4f scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x2c9e5051 inode_init_always +EXPORT_SYMBOL vmlinux 0x2ca319a6 wrmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x2ca4363f d_alloc_pseudo +EXPORT_SYMBOL vmlinux 0x2cb36444 tty_set_operations +EXPORT_SYMBOL vmlinux 0x2cbd44e0 key_alloc +EXPORT_SYMBOL vmlinux 0x2cc279bf __dev_get_by_index +EXPORT_SYMBOL vmlinux 0x2cccff8e fget_raw +EXPORT_SYMBOL vmlinux 0x2cd9b6b7 __lock_buffer +EXPORT_SYMBOL vmlinux 0x2cdbae02 ihold +EXPORT_SYMBOL vmlinux 0x2cded860 ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x2ce5b3aa prepare_creds +EXPORT_SYMBOL vmlinux 0x2cf48a8d serio_unregister_port +EXPORT_SYMBOL vmlinux 0x2cf73cb7 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x2cff3cee vm_insert_pfn +EXPORT_SYMBOL vmlinux 0x2d03c10d posix_acl_create +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d144e21 rdmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x2d144e5f pci_disable_msi +EXPORT_SYMBOL vmlinux 0x2d1c5957 mount_subtree +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d6208d9 __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0x2d6d353a mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0x2d89342a scsi_show_sense_hdr +EXPORT_SYMBOL vmlinux 0x2d8e4b0c dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x2daaaba9 param_get_byte +EXPORT_SYMBOL vmlinux 0x2dadd625 lock_fb_info +EXPORT_SYMBOL vmlinux 0x2dc74ecf follow_down_one +EXPORT_SYMBOL vmlinux 0x2dd16564 arch_register_cpu +EXPORT_SYMBOL vmlinux 0x2deb37b7 ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x2deda4a1 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x2dedc4c2 acpi_format_exception +EXPORT_SYMBOL vmlinux 0x2def7f76 rtc_cmos_write +EXPORT_SYMBOL vmlinux 0x2e0d2f7f queue_work_on +EXPORT_SYMBOL vmlinux 0x2e127b97 md_finish_reshape +EXPORT_SYMBOL vmlinux 0x2e13ffe7 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e2b40d2 strncat +EXPORT_SYMBOL vmlinux 0x2e2ce9e0 sysctl_tcp_syncookies +EXPORT_SYMBOL vmlinux 0x2e493649 scsi_block_requests +EXPORT_SYMBOL vmlinux 0x2e5a704c udp_table +EXPORT_SYMBOL vmlinux 0x2e630b1b check_disk_change +EXPORT_SYMBOL vmlinux 0x2e6b1a35 fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x2e8ebd47 pci_write_vpd +EXPORT_SYMBOL vmlinux 0x2ecb80c1 mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x2edece45 freeze_super +EXPORT_SYMBOL vmlinux 0x2eeceb42 sk_chk_filter +EXPORT_SYMBOL vmlinux 0x2ef63ad6 scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f064b55 allocate_resource +EXPORT_SYMBOL vmlinux 0x2f15cbe0 tcp_md5_hash_header +EXPORT_SYMBOL vmlinux 0x2f384db3 acpi_is_video_device +EXPORT_SYMBOL vmlinux 0x2f60eff8 block_write_begin +EXPORT_SYMBOL vmlinux 0x2fb3750c on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fb82594 bio_uncopy_user +EXPORT_SYMBOL vmlinux 0x2fbf7932 security_path_unlink +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2fed0b2f serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0x2ff063b5 acpi_get_name +EXPORT_SYMBOL vmlinux 0x301d3061 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0x30226ddf agp_device_command +EXPORT_SYMBOL vmlinux 0x302b6c3d __page_symlink +EXPORT_SYMBOL vmlinux 0x302fe8c8 uart_remove_one_port +EXPORT_SYMBOL vmlinux 0x303d9d3a seq_bitmap_list +EXPORT_SYMBOL vmlinux 0x30608700 dev_get_by_flags_rcu +EXPORT_SYMBOL vmlinux 0x307c2fd0 generic_check_addressable +EXPORT_SYMBOL vmlinux 0x3080b1ef ipv4_specific +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30cada8f radix_tree_next_hole +EXPORT_SYMBOL vmlinux 0x30d4988e seq_release_private +EXPORT_SYMBOL vmlinux 0x30e74134 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0x30ee7d3e find_get_page +EXPORT_SYMBOL vmlinux 0x30f7978a blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x310845cc key_put +EXPORT_SYMBOL vmlinux 0x3117916c drop_super +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x3147857d default_red +EXPORT_SYMBOL vmlinux 0x314bdfec nobh_write_begin +EXPORT_SYMBOL vmlinux 0x31590f68 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0x315c65fd zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x316fe32a load_nls +EXPORT_SYMBOL vmlinux 0x3173932f blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0x318cadb1 reciprocal_value +EXPORT_SYMBOL vmlinux 0x3192b2a2 mnt_set_expiry +EXPORT_SYMBOL vmlinux 0x319e0726 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x31a8e09a __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0x31af2d2f inet_frag_find +EXPORT_SYMBOL vmlinux 0x31b31f5c csum_partial_copy_nocheck +EXPORT_SYMBOL vmlinux 0x31e76b57 recalibrate_cpu_khz +EXPORT_SYMBOL vmlinux 0x31e840cc vm_map_ram +EXPORT_SYMBOL vmlinux 0x31fee8ae mmc_of_parse +EXPORT_SYMBOL vmlinux 0x3202435a wrmsr_safe_regs +EXPORT_SYMBOL vmlinux 0x3216691a sock_setsockopt +EXPORT_SYMBOL vmlinux 0x322f48d4 abx500_dump_all_banks +EXPORT_SYMBOL vmlinux 0x3246c844 pci_remove_bus +EXPORT_SYMBOL vmlinux 0x325c20fd pm860x_set_bits +EXPORT_SYMBOL vmlinux 0x325f7a9a ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x326425ca pci_unmap_biosrom +EXPORT_SYMBOL vmlinux 0x328205d5 netpoll_rx_enable +EXPORT_SYMBOL vmlinux 0x328a68e4 nf_hook_slow +EXPORT_SYMBOL vmlinux 0x32dd209d pipe_lock +EXPORT_SYMBOL vmlinux 0x32debb16 cpumask_next_and +EXPORT_SYMBOL vmlinux 0x32eeaded _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0x331d0573 pcim_pin_device +EXPORT_SYMBOL vmlinux 0x3322938a ip6_route_output +EXPORT_SYMBOL vmlinux 0x33256970 input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0x332a87b5 pci_set_ltr +EXPORT_SYMBOL vmlinux 0x33336e55 set_blocksize +EXPORT_SYMBOL vmlinux 0x333cb37c __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0x334aee92 napi_gro_frags +EXPORT_SYMBOL vmlinux 0x33728b40 datagram_poll +EXPORT_SYMBOL vmlinux 0x33844fd1 ioctl_by_bdev +EXPORT_SYMBOL vmlinux 0x3389017b pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x33b47211 generic_file_buffered_write +EXPORT_SYMBOL vmlinux 0x33b84f74 copy_page +EXPORT_SYMBOL vmlinux 0x33ba5cd4 param_ops_bool +EXPORT_SYMBOL vmlinux 0x33c16089 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0x33c7435c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x33f9d9b1 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0x33fcf44a __kfifo_out_r +EXPORT_SYMBOL vmlinux 0x34184afe current_kernel_time +EXPORT_SYMBOL vmlinux 0x341cbed2 cpu_present_mask +EXPORT_SYMBOL vmlinux 0x342ddf2b pci_bus_type +EXPORT_SYMBOL vmlinux 0x34339df7 load_nls_default +EXPORT_SYMBOL vmlinux 0x34426d71 swiotlb_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0x344dba27 wake_up_process +EXPORT_SYMBOL vmlinux 0x344e9af4 __idr_get_new_above +EXPORT_SYMBOL vmlinux 0x3458ebf2 block_invalidatepage +EXPORT_SYMBOL vmlinux 0x347013de nla_validate +EXPORT_SYMBOL vmlinux 0x3470cd7d rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0x347eb9bd param_set_bool +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34a49761 dev_open +EXPORT_SYMBOL vmlinux 0x34bc6269 insert_inode_locked +EXPORT_SYMBOL vmlinux 0x34bf54e9 i8042_install_filter +EXPORT_SYMBOL vmlinux 0x34cd0760 jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0x34d27870 i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0x34e21dc0 register_sysctl +EXPORT_SYMBOL vmlinux 0x34f22f94 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34f7af41 scsi_remove_target +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x35225ea3 down_write_trylock +EXPORT_SYMBOL vmlinux 0x3539f11b match_strlcpy +EXPORT_SYMBOL vmlinux 0x353e21e3 acpi_bios_warning +EXPORT_SYMBOL vmlinux 0x35498c1c qdisc_tree_decrease_qlen +EXPORT_SYMBOL vmlinux 0x355cd0f6 jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0x35606beb devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0x35738b7c gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0x3595d6a6 flush_signals +EXPORT_SYMBOL vmlinux 0x3599b276 scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0x359d0b52 tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0x35c197b2 kernel_accept +EXPORT_SYMBOL vmlinux 0x35d3c14b neigh_connected_output +EXPORT_SYMBOL vmlinux 0x35defc50 iov_iter_advance +EXPORT_SYMBOL vmlinux 0x3609b6f4 bdev_stack_limits +EXPORT_SYMBOL vmlinux 0x360b1afe probe_irq_mask +EXPORT_SYMBOL vmlinux 0x360b8d16 x86_cpu_to_apicid +EXPORT_SYMBOL vmlinux 0x36124547 kthread_bind +EXPORT_SYMBOL vmlinux 0x3612b07c register_nls +EXPORT_SYMBOL vmlinux 0x361597bd __ip_select_ident +EXPORT_SYMBOL vmlinux 0x364a595b backlight_force_update +EXPORT_SYMBOL vmlinux 0x36713e29 write_cache_pages +EXPORT_SYMBOL vmlinux 0x367fe185 rt6_lookup +EXPORT_SYMBOL vmlinux 0x3686ea09 spi_print_msg +EXPORT_SYMBOL vmlinux 0x36883850 find_or_create_page +EXPORT_SYMBOL vmlinux 0x3695f8c5 pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0x369e1115 kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0x36bd681b groups_alloc +EXPORT_SYMBOL vmlinux 0x36c8f23c dcache_dir_close +EXPORT_SYMBOL vmlinux 0x36e360e3 __hw_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x36e6d553 blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0x36f8e69d unlock_page +EXPORT_SYMBOL vmlinux 0x3701a196 csum_partial_copy_to_user +EXPORT_SYMBOL vmlinux 0x370785af scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0x3728a9e6 pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0x3734e606 get_super_thawed +EXPORT_SYMBOL vmlinux 0x3744ce87 page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x37467045 inet_frags_exit_net +EXPORT_SYMBOL vmlinux 0x3772d37d vm_insert_page +EXPORT_SYMBOL vmlinux 0x37999df4 blk_mq_run_queues +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37db8f19 dmi_get_date +EXPORT_SYMBOL vmlinux 0x37e47f0a tcp_sendpage +EXPORT_SYMBOL vmlinux 0x380810cb ip_cmsg_recv +EXPORT_SYMBOL vmlinux 0x38099e13 wrmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x3815a36d dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x3823da01 mmc_read_bkops_status +EXPORT_SYMBOL vmlinux 0x3831d919 __brelse +EXPORT_SYMBOL vmlinux 0x3839221e dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0x384814be scsi_target_resume +EXPORT_SYMBOL vmlinux 0x3858dc50 secpath_dup +EXPORT_SYMBOL vmlinux 0x3867f53b lookup_one_len +EXPORT_SYMBOL vmlinux 0x388093c1 setup_arg_pages +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388cfbc9 vga_switcheroo_unregister_client +EXPORT_SYMBOL vmlinux 0x388f9128 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x389bfe0d rtc_lock +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38ddb1d7 dev_get_drvdata +EXPORT_SYMBOL vmlinux 0x38f33bed dump_fpu +EXPORT_SYMBOL vmlinux 0x38fbf6f0 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0x39140785 sock_wmalloc +EXPORT_SYMBOL vmlinux 0x3928efe9 __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x393bcc2e register_netdevice +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x394c2dcb blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0x3955fcf6 __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x39640bf2 __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0x396c0603 agp_generic_destroy_page +EXPORT_SYMBOL vmlinux 0x39704b2a lease_modify +EXPORT_SYMBOL vmlinux 0x398ebd18 max8925_bulk_read +EXPORT_SYMBOL vmlinux 0x399ad043 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0x39a055f3 acpi_remove_gpe_handler +EXPORT_SYMBOL vmlinux 0x39bb372f dq_data_lock +EXPORT_SYMBOL vmlinux 0x39cc4a78 i8042_check_port_owner +EXPORT_SYMBOL vmlinux 0x39e067c2 bdi_unregister +EXPORT_SYMBOL vmlinux 0x39f5d216 spi_dv_device +EXPORT_SYMBOL vmlinux 0x3a068be8 pci_get_slot +EXPORT_SYMBOL vmlinux 0x3a08475f platform_thermal_notify +EXPORT_SYMBOL vmlinux 0x3a0d3d6a pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0x3a0dbb94 pnp_is_active +EXPORT_SYMBOL vmlinux 0x3a0e18b3 do_SAK +EXPORT_SYMBOL vmlinux 0x3a18cd31 simple_write_begin +EXPORT_SYMBOL vmlinux 0x3a2078cd sk_stream_write_space +EXPORT_SYMBOL vmlinux 0x3a20ff73 __crc32c_le +EXPORT_SYMBOL vmlinux 0x3a2b0b20 alloc_disk +EXPORT_SYMBOL vmlinux 0x3a32839e intel_gtt_chipset_flush +EXPORT_SYMBOL vmlinux 0x3a36846c loop_register_transfer +EXPORT_SYMBOL vmlinux 0x3a43939d sk_filter +EXPORT_SYMBOL vmlinux 0x3a55f7bd tty_devnum +EXPORT_SYMBOL vmlinux 0x3a5b0633 inode_permission +EXPORT_SYMBOL vmlinux 0x3a8e74f0 names_cachep +EXPORT_SYMBOL vmlinux 0x3a9b6fb9 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x3ab72ee6 scsi_free_command +EXPORT_SYMBOL vmlinux 0x3ad6da62 elv_rq_merge_ok +EXPORT_SYMBOL vmlinux 0x3af281dd __f_setown +EXPORT_SYMBOL vmlinux 0x3b08bfc2 blk_fetch_request +EXPORT_SYMBOL vmlinux 0x3b1c972a inet_frags_fini +EXPORT_SYMBOL vmlinux 0x3b2076d1 blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0x3b4ceb4a up_write +EXPORT_SYMBOL vmlinux 0x3b5e1fa2 fput +EXPORT_SYMBOL vmlinux 0x3b661201 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x3b6b996d __dquot_transfer +EXPORT_SYMBOL vmlinux 0x3b97506d rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0x3ba33927 generic_pipe_buf_confirm +EXPORT_SYMBOL vmlinux 0x3baf0fc8 udp_proc_register +EXPORT_SYMBOL vmlinux 0x3bb40ab7 unregister_quota_format +EXPORT_SYMBOL vmlinux 0x3bc77e23 blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0x3bd1b1f6 msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x3beb690b lg_local_unlock +EXPORT_SYMBOL vmlinux 0x3bef03b9 flow_cache_lookup +EXPORT_SYMBOL vmlinux 0x3c2e7445 __sk_dst_check +EXPORT_SYMBOL vmlinux 0x3c536cd8 scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0x3c62ad81 input_reset_device +EXPORT_SYMBOL vmlinux 0x3c751d1c mmc_free_host +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c857e1a pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0x3c89b441 scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x3c9d1211 string_get_size +EXPORT_SYMBOL vmlinux 0x3c9f4278 cdrom_open +EXPORT_SYMBOL vmlinux 0x3cbce3c1 input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3cf19936 generic_file_open +EXPORT_SYMBOL vmlinux 0x3d03c7da __i2c_transfer +EXPORT_SYMBOL vmlinux 0x3d04bdc3 kset_unregister +EXPORT_SYMBOL vmlinux 0x3d1a53c8 led_blink_set +EXPORT_SYMBOL vmlinux 0x3d38d949 netdev_master_upper_dev_link_private +EXPORT_SYMBOL vmlinux 0x3d49276f __sock_create +EXPORT_SYMBOL vmlinux 0x3d5844b3 strnicmp +EXPORT_SYMBOL vmlinux 0x3d602bf0 linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x3d6b017d pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x3d7c1ed7 msrs_alloc +EXPORT_SYMBOL vmlinux 0x3d951a4a nf_log_register +EXPORT_SYMBOL vmlinux 0x3d9ee9f0 clear_page +EXPORT_SYMBOL vmlinux 0x3da171f9 pci_mem_start +EXPORT_SYMBOL vmlinux 0x3dba3bf9 kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3ddceef7 netpoll_send_udp +EXPORT_SYMBOL vmlinux 0x3dee5354 __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x3df0311e sg_miter_stop +EXPORT_SYMBOL vmlinux 0x3df82b01 dmam_alloc_noncoherent +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e2ae3a8 acpi_release_global_lock +EXPORT_SYMBOL vmlinux 0x3e4f0d29 neigh_ifdown +EXPORT_SYMBOL vmlinux 0x3e5b0b0a phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0x3e882943 pcibios_align_resource +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3ea0773c ida_get_new_above +EXPORT_SYMBOL vmlinux 0x3ed63055 zlib_inflateReset +EXPORT_SYMBOL vmlinux 0x3ede171c mpage_readpage +EXPORT_SYMBOL vmlinux 0x3eed691f skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0x3f0546a8 ioread32_rep +EXPORT_SYMBOL vmlinux 0x3f08c3a3 neigh_app_ns +EXPORT_SYMBOL vmlinux 0x3f2de4c8 bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0x3f3a460a tty_vhangup +EXPORT_SYMBOL vmlinux 0x3f3d982a sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f71faa1 mempool_create +EXPORT_SYMBOL vmlinux 0x3f9146ae agp_generic_enable +EXPORT_SYMBOL vmlinux 0x3fbaa965 generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0x3fd02afb generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x3fda35a0 blk_queue_resize_tags +EXPORT_SYMBOL vmlinux 0x3fe2ccbe memweight +EXPORT_SYMBOL vmlinux 0x3fe960ba remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x3fec048f sg_next +EXPORT_SYMBOL vmlinux 0x3ff62317 local_bh_disable +EXPORT_SYMBOL vmlinux 0x40256835 complete_all +EXPORT_SYMBOL vmlinux 0x402b8281 __request_module +EXPORT_SYMBOL vmlinux 0x40302d56 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0x403964d5 irq_set_chip +EXPORT_SYMBOL vmlinux 0x403e511d dquot_get_dqinfo +EXPORT_SYMBOL vmlinux 0x403e9280 phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0x405af52d tcf_hash_release +EXPORT_SYMBOL vmlinux 0x405c1144 get_seconds +EXPORT_SYMBOL vmlinux 0x406722f6 seq_open_private +EXPORT_SYMBOL vmlinux 0x407e712e wait_for_key_construction +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x4097fa45 acpi_read_bit_register +EXPORT_SYMBOL vmlinux 0x409873e3 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x40a27c37 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40ae2001 __vlan_find_dev_deep +EXPORT_SYMBOL vmlinux 0x40c01859 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40c89d46 acpi_get_table_by_index +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40d57bba simple_dir_operations +EXPORT_SYMBOL vmlinux 0x40df2640 read_dev_sector +EXPORT_SYMBOL vmlinux 0x40eab552 unlock_new_inode +EXPORT_SYMBOL vmlinux 0x40f270a4 drop_nlink +EXPORT_SYMBOL vmlinux 0x40f2b10c ipmi_alloc_smi_msg +EXPORT_SYMBOL vmlinux 0x40f92bf4 devfreq_add_device +EXPORT_SYMBOL vmlinux 0x40fa5a44 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0x4109ccca sock_no_bind +EXPORT_SYMBOL vmlinux 0x410ffdc6 install_exec_creds +EXPORT_SYMBOL vmlinux 0x41202681 proto_register +EXPORT_SYMBOL vmlinux 0x41462ecf ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x417e8a1a cad_pid +EXPORT_SYMBOL vmlinux 0x41865c09 kmem_cache_alloc_node_trace +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x41af4d4f update_devfreq +EXPORT_SYMBOL vmlinux 0x41d06253 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0x41e3608a nf_unregister_hooks +EXPORT_SYMBOL vmlinux 0x41f2a8cc inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x4211c3c1 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x422c2ed8 alloc_file +EXPORT_SYMBOL vmlinux 0x42350e8d ucs2_strlen +EXPORT_SYMBOL vmlinux 0x423b776a ipmi_create_user +EXPORT_SYMBOL vmlinux 0x42595e58 vgacon_text_force +EXPORT_SYMBOL vmlinux 0x427f96dd tcp_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x4289ca78 sock_kmalloc +EXPORT_SYMBOL vmlinux 0x42977ad4 __hw_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x42a1b208 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x42ba4964 dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0x42c8de35 ioremap_nocache +EXPORT_SYMBOL vmlinux 0x42de5a30 dst_destroy +EXPORT_SYMBOL vmlinux 0x42e13f64 dma_async_memcpy_buf_to_pg +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x43116416 d_rehash +EXPORT_SYMBOL vmlinux 0x43261dca _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0x4326c496 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0x43367646 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0x433bcb32 clk_get +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x435182d2 neigh_update +EXPORT_SYMBOL vmlinux 0x4355e59a security_task_getsecid +EXPORT_SYMBOL vmlinux 0x43681265 blk_recount_segments +EXPORT_SYMBOL vmlinux 0x436c2179 iowrite32 +EXPORT_SYMBOL vmlinux 0x43765266 __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x439944a0 input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x43a4d3bb __dev_get_by_name +EXPORT_SYMBOL vmlinux 0x43b0c9c3 preempt_schedule +EXPORT_SYMBOL vmlinux 0x43cdc613 blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0x43ea9674 kern_path +EXPORT_SYMBOL vmlinux 0x43f23311 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x43f96dc4 netpoll_parse_options +EXPORT_SYMBOL vmlinux 0x43fab23c bdi_register_dev +EXPORT_SYMBOL vmlinux 0x4411c503 prandom_seed +EXPORT_SYMBOL vmlinux 0x4415cd8e fsnotify_put_group +EXPORT_SYMBOL vmlinux 0x4417f89c elv_rb_former_request +EXPORT_SYMBOL vmlinux 0x446d9268 inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0x4476e9e2 panic_notifier_list +EXPORT_SYMBOL vmlinux 0x448098e4 elv_rb_find +EXPORT_SYMBOL vmlinux 0x448eac3e kmemdup +EXPORT_SYMBOL vmlinux 0x449ad0a7 memcmp +EXPORT_SYMBOL vmlinux 0x44a2f6b8 try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x44a81d5f acpi_evaluate_object +EXPORT_SYMBOL vmlinux 0x44aaf30f tsc_khz +EXPORT_SYMBOL vmlinux 0x44c4ccb1 unregister_md_personality +EXPORT_SYMBOL vmlinux 0x44e4f269 twl6040_reg_write +EXPORT_SYMBOL vmlinux 0x44e6ecc8 ida_simple_get +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x450232b4 pci_enable_ltr +EXPORT_SYMBOL vmlinux 0x45044497 percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0x45081703 ec_get_handle +EXPORT_SYMBOL vmlinux 0x453b59dc security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x456a14ba abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0x456e48af mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x456ff9f9 vmap +EXPORT_SYMBOL vmlinux 0x45715c0d posix_lock_file_wait +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x458111a2 pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0x45886977 get_gendisk +EXPORT_SYMBOL vmlinux 0x45a6be13 cpufreq_sysfs_remove_file +EXPORT_SYMBOL vmlinux 0x45a765cf pci_add_resource +EXPORT_SYMBOL vmlinux 0x45ba5804 unregister_shrinker +EXPORT_SYMBOL vmlinux 0x45c612a0 scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0x45c92723 idr_destroy +EXPORT_SYMBOL vmlinux 0x45db21f9 build_skb +EXPORT_SYMBOL vmlinux 0x45ec356d inet_confirm_addr +EXPORT_SYMBOL vmlinux 0x4608334d dm_unregister_target +EXPORT_SYMBOL vmlinux 0x46090ed6 netpoll_rx_disable +EXPORT_SYMBOL vmlinux 0x461ac773 kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x4629334c __preempt_count +EXPORT_SYMBOL vmlinux 0x465cab34 secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0x46608fa0 getnstimeofday +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x46909ffb register_filesystem +EXPORT_SYMBOL vmlinux 0x4699e04d blk_queue_unprep_rq +EXPORT_SYMBOL vmlinux 0x46a362e3 pnp_start_dev +EXPORT_SYMBOL vmlinux 0x46b267b3 __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x46c47fb6 __node_distance +EXPORT_SYMBOL vmlinux 0x46de8ab6 phy_attach_direct +EXPORT_SYMBOL vmlinux 0x46f6da8b security_path_chmod +EXPORT_SYMBOL vmlinux 0x46feb099 dm_read_arg +EXPORT_SYMBOL vmlinux 0x470e2ac0 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0x4716c5c6 compat_ip_getsockopt +EXPORT_SYMBOL vmlinux 0x47416e14 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x475b1757 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x475beafb dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x475f010b acpi_purge_cached_objects +EXPORT_SYMBOL vmlinux 0x47759345 tcp_gro_receive +EXPORT_SYMBOL vmlinux 0x477c2b79 fail_migrate_page +EXPORT_SYMBOL vmlinux 0x477e6dcb amd_iommu_pc_get_set_reg_val +EXPORT_SYMBOL vmlinux 0x4782dea4 ppp_channel_index +EXPORT_SYMBOL vmlinux 0x478d10b2 ht_destroy_irq +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x479c7ba1 register_xen_selfballooning +EXPORT_SYMBOL vmlinux 0x479d5b33 eth_header_cache_update +EXPORT_SYMBOL vmlinux 0x47b3f862 radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x47b6a10f ftrace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0x47bcf84c param_set_ulong +EXPORT_SYMBOL vmlinux 0x47c3dfed filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0x47c6e9fe napi_gro_flush +EXPORT_SYMBOL vmlinux 0x47c8baf4 param_ops_uint +EXPORT_SYMBOL vmlinux 0x47dc7155 km_report +EXPORT_SYMBOL vmlinux 0x47eaff1e scm_fp_dup +EXPORT_SYMBOL vmlinux 0x48034724 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x4803b17f elevator_alloc +EXPORT_SYMBOL vmlinux 0x48193639 acpi_lid_open +EXPORT_SYMBOL vmlinux 0x481cb9ab acpi_enter_sleep_state_prep +EXPORT_SYMBOL vmlinux 0x482a2a49 param_set_charp +EXPORT_SYMBOL vmlinux 0x48350966 filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x4841bdee strnchr +EXPORT_SYMBOL vmlinux 0x4846e4cc padata_remove_cpu +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x4868b669 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0x487f8efc input_get_keycode +EXPORT_SYMBOL vmlinux 0x48d50e79 amd_iommu_register_ppr_notifier +EXPORT_SYMBOL vmlinux 0x48dd5924 give_up_console +EXPORT_SYMBOL vmlinux 0x48dde8c2 user_path_create +EXPORT_SYMBOL vmlinux 0x48eff8a5 tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x490aec92 pci_fixup_device +EXPORT_SYMBOL vmlinux 0x49394559 udp_proc_unregister +EXPORT_SYMBOL vmlinux 0x494e3393 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x495c96f8 posix_acl_init +EXPORT_SYMBOL vmlinux 0x49603fb8 security_sb_copy_data +EXPORT_SYMBOL vmlinux 0x49674d30 pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0x49790082 cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0x49a83550 kthread_stop +EXPORT_SYMBOL vmlinux 0x49b07aec tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x49b163b8 acpi_bus_scan +EXPORT_SYMBOL vmlinux 0x49df7f72 x86_hyper_xen_hvm +EXPORT_SYMBOL vmlinux 0x49f206db iget_locked +EXPORT_SYMBOL vmlinux 0x49f35607 mount_single +EXPORT_SYMBOL vmlinux 0x4a002c3a cdev_alloc +EXPORT_SYMBOL vmlinux 0x4a03e7bb textsearch_unregister +EXPORT_SYMBOL vmlinux 0x4a25d18b iov_iter_copy_from_user +EXPORT_SYMBOL vmlinux 0x4a358252 __bitmap_subset +EXPORT_SYMBOL vmlinux 0x4a3783fd netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0x4a37ae5b i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0x4a671225 sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0x4a757687 frontswap_register_ops +EXPORT_SYMBOL vmlinux 0x4aa1d5e1 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0x4aad52d7 mempool_free +EXPORT_SYMBOL vmlinux 0x4ac818a5 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0x4acd93d3 release_resource +EXPORT_SYMBOL vmlinux 0x4ad6781a console_start +EXPORT_SYMBOL vmlinux 0x4ae56dd3 blk_mq_insert_request +EXPORT_SYMBOL vmlinux 0x4afe9a77 scsi_partsize +EXPORT_SYMBOL vmlinux 0x4b06acbb mmc_cache_ctrl +EXPORT_SYMBOL vmlinux 0x4b06d2e7 complete +EXPORT_SYMBOL vmlinux 0x4b085dbf agp3_generic_configure +EXPORT_SYMBOL vmlinux 0x4b299e2a blk_mq_map_queue +EXPORT_SYMBOL vmlinux 0x4b40ab46 register_key_type +EXPORT_SYMBOL vmlinux 0x4b4d9ece skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x4b5d6564 __getblk +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b653c8b i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0x4baa5089 scsi_cmd_get_serial +EXPORT_SYMBOL vmlinux 0x4bb62002 follow_up +EXPORT_SYMBOL vmlinux 0x4bb6a82c led_blink_set_oneshot +EXPORT_SYMBOL vmlinux 0x4bc9354f inet_register_protosw +EXPORT_SYMBOL vmlinux 0x4bed28a6 inode_reclaim_rsv_space +EXPORT_SYMBOL vmlinux 0x4bf00834 in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x4c1182cb bitmap_scnprintf +EXPORT_SYMBOL vmlinux 0x4c2b6ee3 clk_add_alias +EXPORT_SYMBOL vmlinux 0x4c47dd66 d_set_d_op +EXPORT_SYMBOL vmlinux 0x4c4fef19 kernel_stack +EXPORT_SYMBOL vmlinux 0x4c5e20f7 ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0x4c642a39 dev_err +EXPORT_SYMBOL vmlinux 0x4c709187 dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0x4c8083ef dev_remove_pack +EXPORT_SYMBOL vmlinux 0x4c9676d9 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0x4c971bec ipmi_smi_msg_received +EXPORT_SYMBOL vmlinux 0x4c9d28b0 phys_base +EXPORT_SYMBOL vmlinux 0x4ca9669f scnprintf +EXPORT_SYMBOL vmlinux 0x4cbbd171 __bitmap_weight +EXPORT_SYMBOL vmlinux 0x4cc01483 __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0x4cdb3178 ns_to_timeval +EXPORT_SYMBOL vmlinux 0x4d1023f8 mempool_resize +EXPORT_SYMBOL vmlinux 0x4d21e715 __blk_end_request +EXPORT_SYMBOL vmlinux 0x4d41b91f iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0x4d61c490 tcp_gso_segment +EXPORT_SYMBOL vmlinux 0x4d974b9c register_sysrq_key +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4daa360a acpi_resource_to_address64 +EXPORT_SYMBOL vmlinux 0x4daa7d52 neigh_destroy +EXPORT_SYMBOL vmlinux 0x4db3e02f dcb_setapp +EXPORT_SYMBOL vmlinux 0x4dbb1cec fsnotify_put_mark +EXPORT_SYMBOL vmlinux 0x4dcd9865 bio_phys_segments +EXPORT_SYMBOL vmlinux 0x4ddd49c2 sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x4de34a07 cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x4df119fa __bitmap_parse +EXPORT_SYMBOL vmlinux 0x4e046704 tcp_init_cgroup +EXPORT_SYMBOL vmlinux 0x4e0ee81e unmap_mapping_range +EXPORT_SYMBOL vmlinux 0x4e287917 nf_register_sockopt +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e44c159 posix_test_lock +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e768823 mmc_can_reset +EXPORT_SYMBOL vmlinux 0x4e781dd9 mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0x4e7bca1f __devm_request_region +EXPORT_SYMBOL vmlinux 0x4e89f71e security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0x4ea25709 dql_reset +EXPORT_SYMBOL vmlinux 0x4eb3ea87 blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0x4edd72f7 block_all_signals +EXPORT_SYMBOL vmlinux 0x4efacc33 blk_end_request_all +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f391d0e nla_parse +EXPORT_SYMBOL vmlinux 0x4f476e96 init_cdrom_command +EXPORT_SYMBOL vmlinux 0x4f579ec4 dev_set_group +EXPORT_SYMBOL vmlinux 0x4f68e5c9 do_gettimeofday +EXPORT_SYMBOL vmlinux 0x4f6b400b _copy_from_user +EXPORT_SYMBOL vmlinux 0x4f783f30 acpi_read +EXPORT_SYMBOL vmlinux 0x4f7ba83d nla_reserve +EXPORT_SYMBOL vmlinux 0x4f8ae4c6 mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0x4f8b5ddb _copy_to_user +EXPORT_SYMBOL vmlinux 0x4f9039bc put_page +EXPORT_SYMBOL vmlinux 0x4f94f1ba idr_get_next +EXPORT_SYMBOL vmlinux 0x4fdee897 i8042_command +EXPORT_SYMBOL vmlinux 0x4fec7e47 pci_enable_ido +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x500fdd25 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0x502279c0 filemap_write_and_wait +EXPORT_SYMBOL vmlinux 0x504d1a99 module_refcount +EXPORT_SYMBOL vmlinux 0x504e6f4a kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x50529870 acpi_get_gpe_status +EXPORT_SYMBOL vmlinux 0x5061ec10 key_unlink +EXPORT_SYMBOL vmlinux 0x50678c56 devm_ioport_map +EXPORT_SYMBOL vmlinux 0x506fa7be nf_reinject +EXPORT_SYMBOL vmlinux 0x50762b1f ab3100_event_register +EXPORT_SYMBOL vmlinux 0x508e69df xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0x509a73c5 check_disk_size_change +EXPORT_SYMBOL vmlinux 0x509b64ea acpi_has_method +EXPORT_SYMBOL vmlinux 0x509faf38 __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x50a90e8d bsearch +EXPORT_SYMBOL vmlinux 0x50d2592d hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0x50d68377 arch_phys_wc_del +EXPORT_SYMBOL vmlinux 0x50dd1820 netdev_update_features +EXPORT_SYMBOL vmlinux 0x50e691e5 deactivate_super +EXPORT_SYMBOL vmlinux 0x50f65fe6 get_user_pages +EXPORT_SYMBOL vmlinux 0x51010661 napi_complete +EXPORT_SYMBOL vmlinux 0x5118c382 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0x511ab427 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x512b7c7f proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x51418324 setattr_copy +EXPORT_SYMBOL vmlinux 0x516c9600 pm860x_page_bulk_write +EXPORT_SYMBOL vmlinux 0x5182420f ida_pre_get +EXPORT_SYMBOL vmlinux 0x5183bef3 max8925_bulk_write +EXPORT_SYMBOL vmlinux 0x519ed4e1 phy_disconnect +EXPORT_SYMBOL vmlinux 0x51ced794 km_policy_expired +EXPORT_SYMBOL vmlinux 0x51cf5b0d __get_user_pages +EXPORT_SYMBOL vmlinux 0x51d12d4e acpi_pci_disabled +EXPORT_SYMBOL vmlinux 0x51dce73b xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x52006d56 acpi_walk_resources +EXPORT_SYMBOL vmlinux 0x52026cdf security_sb_parse_opts_str +EXPORT_SYMBOL vmlinux 0x52095e19 acpi_get_data +EXPORT_SYMBOL vmlinux 0x52130046 acpi_check_address_range +EXPORT_SYMBOL vmlinux 0x521b36b5 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0x522bb770 simple_readpage +EXPORT_SYMBOL vmlinux 0x522c007b security_inode_init_security +EXPORT_SYMBOL vmlinux 0x52353bdb udp_lib_rehash +EXPORT_SYMBOL vmlinux 0x5242019a eth_header_cache +EXPORT_SYMBOL vmlinux 0x52428cc8 parent_mem_cgroup +EXPORT_SYMBOL vmlinux 0x5243f694 generic_file_splice_write +EXPORT_SYMBOL vmlinux 0x5245f6a4 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x5248e46b __kfree_skb +EXPORT_SYMBOL vmlinux 0x524f6f51 ipmi_get_my_address +EXPORT_SYMBOL vmlinux 0x525e026f acpi_os_unmap_generic_address +EXPORT_SYMBOL vmlinux 0x5290ce08 keyring_alloc +EXPORT_SYMBOL vmlinux 0x52952401 ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x52a2d1bf scsi_rescan_device +EXPORT_SYMBOL vmlinux 0x52b0e311 input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x52bdcced mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0x52c78e1d xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0x52cbb014 lockref_get +EXPORT_SYMBOL vmlinux 0x52d8b6f8 tcp_proc_unregister +EXPORT_SYMBOL vmlinux 0x52f3fb7b try_module_get +EXPORT_SYMBOL vmlinux 0x52f4d1a6 __skb_get_rxhash +EXPORT_SYMBOL vmlinux 0x52fcf5e9 tcp_release_cb +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x530f8c63 netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0x531b604e __virt_addr_valid +EXPORT_SYMBOL vmlinux 0x5331d7ba check_submounts_and_drop +EXPORT_SYMBOL vmlinux 0x53326531 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x5341dfbf mpage_readpages +EXPORT_SYMBOL vmlinux 0x53530dc7 tty_port_destroy +EXPORT_SYMBOL vmlinux 0x535e0280 spi_display_xfer_agreement +EXPORT_SYMBOL vmlinux 0x536be2a6 phy_find_first +EXPORT_SYMBOL vmlinux 0x536cb2e3 pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0x536cc847 memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0x5371a6fa __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x5377e556 hex2bin +EXPORT_SYMBOL vmlinux 0x539f97d9 send_sig +EXPORT_SYMBOL vmlinux 0x53b5738b agp_generic_create_gatt_table +EXPORT_SYMBOL vmlinux 0x53b8418d tcf_hash_check +EXPORT_SYMBOL vmlinux 0x53c6745c mmc_fixup_device +EXPORT_SYMBOL vmlinux 0x53ea2e00 invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x53f6ffbc wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0x5402680b lockref_mark_dead +EXPORT_SYMBOL vmlinux 0x54059a2a amd_iommu_pc_get_max_counters +EXPORT_SYMBOL vmlinux 0x5409775b free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x540c402b __bread +EXPORT_SYMBOL vmlinux 0x541dd8ea gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x54245b39 kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x544b0c11 acpi_lid_notifier_register +EXPORT_SYMBOL vmlinux 0x545a7e6e mutex_trylock +EXPORT_SYMBOL vmlinux 0x547faf8e fsnotify_init_mark +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54abe42d __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x54c3f198 mapping_tagged +EXPORT_SYMBOL vmlinux 0x54e3cc3b param_get_int +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54ecdc8a sk_release_kernel +EXPORT_SYMBOL vmlinux 0x54efb5d6 cpu_number +EXPORT_SYMBOL vmlinux 0x550aaa4d blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x550e8140 dev_set_mtu +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x55268c13 netif_skb_dev_features +EXPORT_SYMBOL vmlinux 0x552b2225 net_dma_find_channel +EXPORT_SYMBOL vmlinux 0x5541ea93 on_each_cpu +EXPORT_SYMBOL vmlinux 0x5552d98f inet6_getname +EXPORT_SYMBOL vmlinux 0x5555b665 bio_split +EXPORT_SYMBOL vmlinux 0x55671680 lg_lock_init +EXPORT_SYMBOL vmlinux 0x5567c227 kernel_cpustat +EXPORT_SYMBOL vmlinux 0x5568dab7 blk_sync_queue +EXPORT_SYMBOL vmlinux 0x556c2740 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x5582b273 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x5594be03 bitmap_remap +EXPORT_SYMBOL vmlinux 0x55c31b6e __find_get_block +EXPORT_SYMBOL vmlinux 0x55ccd4d2 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0x55d58cfc pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0x55dae706 fb_set_var +EXPORT_SYMBOL vmlinux 0x55e11dfa pskb_expand_head +EXPORT_SYMBOL vmlinux 0x55e3bdc5 ps2_drain +EXPORT_SYMBOL vmlinux 0x55f5019b __kmalloc_node +EXPORT_SYMBOL vmlinux 0x560ffb71 tcf_hash_lookup +EXPORT_SYMBOL vmlinux 0x5614b010 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x56268e6b pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x5642793a radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x5684f4c1 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0x56b47d03 dquot_resume +EXPORT_SYMBOL vmlinux 0x56b65f81 inode_init_owner +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56caffbd skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0x56edc18b kthread_create_on_node +EXPORT_SYMBOL vmlinux 0x56f232a0 eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0x570078ed simple_setattr +EXPORT_SYMBOL vmlinux 0x572e85d4 blk_lookup_devt +EXPORT_SYMBOL vmlinux 0x573be702 jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0x574a6952 pci_release_regions +EXPORT_SYMBOL vmlinux 0x57537ec0 tcp_prequeue +EXPORT_SYMBOL vmlinux 0x57558408 ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x57636443 udp_poll +EXPORT_SYMBOL vmlinux 0x5764281b empty_aops +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x5777b549 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0x5792f848 strlcpy +EXPORT_SYMBOL vmlinux 0x57a6ccd0 down_read +EXPORT_SYMBOL vmlinux 0x57b7dd3a dquot_disable +EXPORT_SYMBOL vmlinux 0x57b9c897 devm_clk_get +EXPORT_SYMBOL vmlinux 0x57bb0101 max8998_bulk_read +EXPORT_SYMBOL vmlinux 0x57bbae74 ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0x57c1df7a __d_drop +EXPORT_SYMBOL vmlinux 0x57d0b779 pci_set_mwi +EXPORT_SYMBOL vmlinux 0x58326bae dquot_commit_info +EXPORT_SYMBOL vmlinux 0x58368d3e inet6_add_protocol +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x584226ef phy_device_register +EXPORT_SYMBOL vmlinux 0x5844d9c5 touch_buffer +EXPORT_SYMBOL vmlinux 0x584738f9 rdmsr_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x5855c261 agp3_generic_tlbflush +EXPORT_SYMBOL vmlinux 0x5857b225 ioread16_rep +EXPORT_SYMBOL vmlinux 0x5860aad4 add_wait_queue +EXPORT_SYMBOL vmlinux 0x586103be acpi_setup_gpe_for_wake +EXPORT_SYMBOL vmlinux 0x5872cfaf may_umount_tree +EXPORT_SYMBOL vmlinux 0x5875686e locks_free_lock +EXPORT_SYMBOL vmlinux 0x587616f1 vfs_fstatat +EXPORT_SYMBOL vmlinux 0x58b866da skb_pull +EXPORT_SYMBOL vmlinux 0x58bb60d3 inet_release +EXPORT_SYMBOL vmlinux 0x58c076b9 compat_nf_setsockopt +EXPORT_SYMBOL vmlinux 0x58c5a2c9 dev_get_stats +EXPORT_SYMBOL vmlinux 0x58dac294 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0x58e461dc sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x5905dbd3 seq_open +EXPORT_SYMBOL vmlinux 0x592775a7 __mem_cgroup_count_vm_event +EXPORT_SYMBOL vmlinux 0x592fa646 elv_rb_del +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x595ffaa5 xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x5967c929 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x596c429a keyring_clear +EXPORT_SYMBOL vmlinux 0x59764dca nla_append +EXPORT_SYMBOL vmlinux 0x5991219c cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x599a3dd6 _raw_write_unlock_irq +EXPORT_SYMBOL vmlinux 0x59b9ac3f dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x59bc9609 acpi_write_bit_register +EXPORT_SYMBOL vmlinux 0x59ce8ec7 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0x59d213e6 ata_std_end_eh +EXPORT_SYMBOL vmlinux 0x59e41ba3 blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x59f06d20 sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x59fca191 uart_match_port +EXPORT_SYMBOL vmlinux 0x5a0c49df inode_init_once +EXPORT_SYMBOL vmlinux 0x5a387e97 grab_cache_page_nowait +EXPORT_SYMBOL vmlinux 0x5a3c0d9e fasync_helper +EXPORT_SYMBOL vmlinux 0x5a4188d7 input_free_device +EXPORT_SYMBOL vmlinux 0x5a4896a8 __put_user_2 +EXPORT_SYMBOL vmlinux 0x5a492d4e __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x5a5536c2 param_ops_invbool +EXPORT_SYMBOL vmlinux 0x5a8974ac tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0x5a921311 strncmp +EXPORT_SYMBOL vmlinux 0x5aa25934 inet_csk_accept +EXPORT_SYMBOL vmlinux 0x5ac21822 irq_stat +EXPORT_SYMBOL vmlinux 0x5ac376a5 acpi_install_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x5ac418d4 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0x5ad07ccf bio_pair_release +EXPORT_SYMBOL vmlinux 0x5ae50279 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x5aeb145f complete_and_exit +EXPORT_SYMBOL vmlinux 0x5af0cf6a jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x5b1313b9 fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0x5b1db8f8 skb_put +EXPORT_SYMBOL vmlinux 0x5b271d86 acpi_video_dmi_promote_vendor +EXPORT_SYMBOL vmlinux 0x5b2ef27f jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0x5b3961e2 __quota_error +EXPORT_SYMBOL vmlinux 0x5b424341 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x5b56860c vm_munmap +EXPORT_SYMBOL vmlinux 0x5b606f1a dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0x5b6974db blk_queue_free_tags +EXPORT_SYMBOL vmlinux 0x5b76d782 d_make_root +EXPORT_SYMBOL vmlinux 0x5bb152b1 amd_iommu_enable_device_erratum +EXPORT_SYMBOL vmlinux 0x5bc10524 printk_emit +EXPORT_SYMBOL vmlinux 0x5bc8d583 copy_from_user_overflow +EXPORT_SYMBOL vmlinux 0x5bce68a7 skb_trim +EXPORT_SYMBOL vmlinux 0x5bdc4449 tty_check_change +EXPORT_SYMBOL vmlinux 0x5c02bb32 i2c_get_adapter +EXPORT_SYMBOL vmlinux 0x5c049bd6 fd_install +EXPORT_SYMBOL vmlinux 0x5c3edd59 _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x5c63af4f inet_stream_ops +EXPORT_SYMBOL vmlinux 0x5c6bd097 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0x5c8b5ce8 prepare_to_wait +EXPORT_SYMBOL vmlinux 0x5c95b2b6 tty_name +EXPORT_SYMBOL vmlinux 0x5ceeb08a blkdev_fsync +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5cfef92e qdisc_reset +EXPORT_SYMBOL vmlinux 0x5d2f1f38 mmc_can_sanitize +EXPORT_SYMBOL vmlinux 0x5d41c87c param_ops_charp +EXPORT_SYMBOL vmlinux 0x5d428586 amd_iommu_domain_set_gcr3 +EXPORT_SYMBOL vmlinux 0x5d43451b xfrm_unregister_mode +EXPORT_SYMBOL vmlinux 0x5d459cc2 writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x5d545764 mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0x5d550c4d scsi_sd_probe_domain +EXPORT_SYMBOL vmlinux 0x5d582527 put_io_context +EXPORT_SYMBOL vmlinux 0x5d5b5a16 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x5d5dd4b6 netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0x5d5dded9 xen_biovec_phys_mergeable +EXPORT_SYMBOL vmlinux 0x5d60f72e register_quota_format +EXPORT_SYMBOL vmlinux 0x5d74dbcf pnp_range_reserved +EXPORT_SYMBOL vmlinux 0x5d865e57 locks_init_lock +EXPORT_SYMBOL vmlinux 0x5ddaa119 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x5df0c670 uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x5e15d54c ida_init +EXPORT_SYMBOL vmlinux 0x5e2261f2 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0x5e374547 elv_rb_add +EXPORT_SYMBOL vmlinux 0x5e3e377c vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x5e5b6064 ip6_frag_init +EXPORT_SYMBOL vmlinux 0x5e658ae3 __ww_mutex_lock +EXPORT_SYMBOL vmlinux 0x5e80f37c ipmi_unregister_for_cmd +EXPORT_SYMBOL vmlinux 0x5e92cafb pv_cpu_ops +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5e9e862e mmc_gpio_request_ro +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ec22e78 swiotlb_dma_supported +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ed2dcc2 dev_addr_init +EXPORT_SYMBOL vmlinux 0x5ed67ba9 pcim_iomap +EXPORT_SYMBOL vmlinux 0x5ed8ded5 eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0x5f005368 kstrtou8 +EXPORT_SYMBOL vmlinux 0x5f08d5ee dm_register_target +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f326472 fb_class +EXPORT_SYMBOL vmlinux 0x5f3c8f5c mmc_assume_removable +EXPORT_SYMBOL vmlinux 0x5f557703 acpi_evaluate_hotplug_ost +EXPORT_SYMBOL vmlinux 0x5f58f676 flex_array_get_ptr +EXPORT_SYMBOL vmlinux 0x5f5c6862 swiotlb_map_sg +EXPORT_SYMBOL vmlinux 0x5f849496 generic_writepages +EXPORT_SYMBOL vmlinux 0x5f8c992b sk_dst_check +EXPORT_SYMBOL vmlinux 0x5fae4283 unregister_binfmt +EXPORT_SYMBOL vmlinux 0x5fcdcc05 ipmi_get_my_LUN +EXPORT_SYMBOL vmlinux 0x5fd0e135 aio_complete +EXPORT_SYMBOL vmlinux 0x5fd9e5bb kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0x5fda0227 vfs_stat +EXPORT_SYMBOL vmlinux 0x5fe406cc mmc_wait_for_app_cmd +EXPORT_SYMBOL vmlinux 0x5ff42b08 acpi_video_get_capabilities +EXPORT_SYMBOL vmlinux 0x5ff9c3f2 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x600a49d3 input_set_abs_params +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x602473c4 ip_getsockopt +EXPORT_SYMBOL vmlinux 0x60284c1f dev_mc_del +EXPORT_SYMBOL vmlinux 0x6029f809 proto_unregister +EXPORT_SYMBOL vmlinux 0x602ed00d acpi_current_gpe_count +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x605dee11 dma_async_memcpy_buf_to_buf +EXPORT_SYMBOL vmlinux 0x606d0b09 secure_tcpv6_sequence_number +EXPORT_SYMBOL vmlinux 0x609d713e kfree_put_link +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x609f5b35 ucs2_strnlen +EXPORT_SYMBOL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL vmlinux 0x60b71c0a inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0x60cb499c kernel_sendpage +EXPORT_SYMBOL vmlinux 0x60d17998 md_integrity_register +EXPORT_SYMBOL vmlinux 0x60df1e3b posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x60f21583 __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x60f6a5c4 proc_set_size +EXPORT_SYMBOL vmlinux 0x60fcd9c6 __frontswap_test +EXPORT_SYMBOL vmlinux 0x612390ad netpoll_set_trap +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x613b6a45 tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x614383c0 acpi_get_object_info +EXPORT_SYMBOL vmlinux 0x61538ad0 param_get_charp +EXPORT_SYMBOL vmlinux 0x616ae7bf udp_lib_unhash +EXPORT_SYMBOL vmlinux 0x617d96d7 dquot_destroy +EXPORT_SYMBOL vmlinux 0x618911fc numa_node +EXPORT_SYMBOL vmlinux 0x618ac0c8 finish_no_open +EXPORT_SYMBOL vmlinux 0x618be44e ipv6_push_nfrag_opts +EXPORT_SYMBOL vmlinux 0x618c4370 qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x618d5d92 dev_add_offload +EXPORT_SYMBOL vmlinux 0x619cb7dd simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61bf818d inode_newsize_ok +EXPORT_SYMBOL vmlinux 0x61c10547 compat_nf_getsockopt +EXPORT_SYMBOL vmlinux 0x61d510f1 d_alloc +EXPORT_SYMBOL vmlinux 0x61f0c601 set_trace_device +EXPORT_SYMBOL vmlinux 0x61f94bb2 tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0x61fb248a node_states +EXPORT_SYMBOL vmlinux 0x62049256 acpi_disable +EXPORT_SYMBOL vmlinux 0x620587f9 do_splice_from +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x621dbd8f blk_execute_rq +EXPORT_SYMBOL vmlinux 0x6225637e md5_transform +EXPORT_SYMBOL vmlinux 0x6226b9fa machine_to_phys_mapping +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x622ac27a skb_orphan_partial +EXPORT_SYMBOL vmlinux 0x6237f6b5 acpi_enable_event +EXPORT_SYMBOL vmlinux 0x623b7232 pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0x623d5947 input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0x624910e5 mutex_lock_killable +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x62748e70 acpi_set_current_resources +EXPORT_SYMBOL vmlinux 0x628121e9 register_sysctl_table +EXPORT_SYMBOL vmlinux 0x62827bec security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x6291848e bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x62a1f44c mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x62a5d763 devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0x62b40c24 iterate_mounts +EXPORT_SYMBOL vmlinux 0x62bd3baf md_flush_request +EXPORT_SYMBOL vmlinux 0x630034ef single_release +EXPORT_SYMBOL vmlinux 0x63019dc5 xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0x630f1746 neigh_table_init +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x631e2334 fget_light +EXPORT_SYMBOL vmlinux 0x63305305 tcp_sync_mss +EXPORT_SYMBOL vmlinux 0x633217ac mem_cgroup_subsys +EXPORT_SYMBOL vmlinux 0x6342a827 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x6350e7fc mdiobus_read +EXPORT_SYMBOL vmlinux 0x636a5691 acpi_register_ioapic +EXPORT_SYMBOL vmlinux 0x636ac372 pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0x63788685 amd_iommu_domain_clear_gcr3 +EXPORT_SYMBOL vmlinux 0x63907f9b bio_clone_bioset +EXPORT_SYMBOL vmlinux 0x63a01291 acpi_leave_sleep_state_prep +EXPORT_SYMBOL vmlinux 0x63a6bcc9 acpi_map_lsapic +EXPORT_SYMBOL vmlinux 0x63cb0b1c scsi_unregister +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63fc232f strlen_user +EXPORT_SYMBOL vmlinux 0x6403e338 tcp_memory_pressure +EXPORT_SYMBOL vmlinux 0x6410566b xfrm6_prepare_output +EXPORT_SYMBOL vmlinux 0x6413d5c4 loop_backing_file +EXPORT_SYMBOL vmlinux 0x6449fd41 acpi_install_address_space_handler +EXPORT_SYMBOL vmlinux 0x644d59e9 generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0x6459965c xfrm_cfg_mutex +EXPORT_SYMBOL vmlinux 0x645af16c ll_rw_block +EXPORT_SYMBOL vmlinux 0x645f113d register_gifconf +EXPORT_SYMBOL vmlinux 0x6478134c ec_burst_enable +EXPORT_SYMBOL vmlinux 0x648d9f0d mdiobus_free +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x64a804f7 pnp_register_driver +EXPORT_SYMBOL vmlinux 0x64bbc288 string_unescape +EXPORT_SYMBOL vmlinux 0x64eae7ad set_memory_array_wb +EXPORT_SYMBOL vmlinux 0x651344a1 set_anon_super +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x6519dc07 bdget_disk +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x652ce9aa nla_memcmp +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x65464cf8 pagevec_lookup_tag +EXPORT_SYMBOL vmlinux 0x655387f5 km_state_notify +EXPORT_SYMBOL vmlinux 0x655a598b padata_stop +EXPORT_SYMBOL vmlinux 0x655ec991 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x655f1ab0 set_memory_array_wc +EXPORT_SYMBOL vmlinux 0x656ca205 netlink_ack +EXPORT_SYMBOL vmlinux 0x65cc3acd request_firmware +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65e0d6d7 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x65f3ad9a fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x6605f97f flex_array_clear +EXPORT_SYMBOL vmlinux 0x662deb0e test_set_page_writeback +EXPORT_SYMBOL vmlinux 0x663f7cd0 acpi_install_table_handler +EXPORT_SYMBOL vmlinux 0x66470dee cdrom_media_changed +EXPORT_SYMBOL vmlinux 0x66596310 __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x668da8d5 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x668ec93e scsi_device_put +EXPORT_SYMBOL vmlinux 0x669f39dc generic_file_llseek +EXPORT_SYMBOL vmlinux 0x66a67dab flex_array_shrink +EXPORT_SYMBOL vmlinux 0x66cdcad5 seq_vprintf +EXPORT_SYMBOL vmlinux 0x66de4c59 bio_advance +EXPORT_SYMBOL vmlinux 0x66ee1361 __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0x67260700 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0x6729d3df __get_user_4 +EXPORT_SYMBOL vmlinux 0x673f815e agp_bridges +EXPORT_SYMBOL vmlinux 0x675aa488 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0x675b8f61 param_get_string +EXPORT_SYMBOL vmlinux 0x675c09e4 lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x679bc0fd pci_assign_resource +EXPORT_SYMBOL vmlinux 0x67a0306a percpu_counter_set +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67cb9784 ipmi_poll_interface +EXPORT_SYMBOL vmlinux 0x67d396b0 rwsem_down_read_failed +EXPORT_SYMBOL vmlinux 0x67d649f6 devm_clk_put +EXPORT_SYMBOL vmlinux 0x67f3d68d scsi_device_set_state +EXPORT_SYMBOL vmlinux 0x67f93a73 set_disk_ro +EXPORT_SYMBOL vmlinux 0x68080fbf mfd_cell_enable +EXPORT_SYMBOL vmlinux 0x6821648c inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x683d9994 gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0x68488d3f tty_port_tty_set +EXPORT_SYMBOL vmlinux 0x686887d1 padata_alloc +EXPORT_SYMBOL vmlinux 0x686929fb alloc_mdio_bitbang +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x687e9b59 copy_strings_kernel +EXPORT_SYMBOL vmlinux 0x687fc3a4 i2c_add_adapter +EXPORT_SYMBOL vmlinux 0x688a2ffc unlink_framebuffer +EXPORT_SYMBOL vmlinux 0x688b6141 jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0x688edf73 sk_stop_timer +EXPORT_SYMBOL vmlinux 0x68aca4ad down +EXPORT_SYMBOL vmlinux 0x68b513ee nobh_truncate_page +EXPORT_SYMBOL vmlinux 0x68b83ac6 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x68c98982 pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0x68e05d57 getrawmonotonic +EXPORT_SYMBOL vmlinux 0x68fdfc03 dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0x690d1041 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0x691001b5 acpi_evaluate_integer +EXPORT_SYMBOL vmlinux 0x693ad0db ___preempt_schedule_context +EXPORT_SYMBOL vmlinux 0x693e5968 truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x694aea73 blk_queue_find_tag +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x6988d0ca cpu_dr7 +EXPORT_SYMBOL vmlinux 0x69a029da scsi_remove_device +EXPORT_SYMBOL vmlinux 0x69a0ca7d iowrite16be +EXPORT_SYMBOL vmlinux 0x69a358a6 iomem_resource +EXPORT_SYMBOL vmlinux 0x69acdf38 memcpy +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69b1ab0d dquot_quota_sync +EXPORT_SYMBOL vmlinux 0x69b58ba2 ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x69b7827a have_submounts +EXPORT_SYMBOL vmlinux 0x69c2c8af gen_pool_add_virt +EXPORT_SYMBOL vmlinux 0x69ccd5c6 elv_unregister_queue +EXPORT_SYMBOL vmlinux 0x69d38ed9 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x69e27c7a bitmap_copy_le +EXPORT_SYMBOL vmlinux 0x69e9b7aa remove_proc_subtree +EXPORT_SYMBOL vmlinux 0x69f00328 get_agp_version +EXPORT_SYMBOL vmlinux 0x69fbc0a2 acpi_get_event_resources +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a447559 devm_ioremap +EXPORT_SYMBOL vmlinux 0x6a47993b pnp_possible_config +EXPORT_SYMBOL vmlinux 0x6a4bb9d5 vfs_open +EXPORT_SYMBOL vmlinux 0x6a53cf47 security_path_rmdir +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a5fa363 sigprocmask +EXPORT_SYMBOL vmlinux 0x6a62ac26 acpi_processor_notify_smm +EXPORT_SYMBOL vmlinux 0x6a76c0f3 mount_nodev +EXPORT_SYMBOL vmlinux 0x6a76f3ac blk_iopoll_enable +EXPORT_SYMBOL vmlinux 0x6a857997 dev_uc_init +EXPORT_SYMBOL vmlinux 0x6ab09935 dquot_quotactl_ops +EXPORT_SYMBOL vmlinux 0x6ac76b61 security_path_link +EXPORT_SYMBOL vmlinux 0x6acb973d iowrite32be +EXPORT_SYMBOL vmlinux 0x6ad0b5a6 __inet6_hash +EXPORT_SYMBOL vmlinux 0x6ad50dfa kill_litter_super +EXPORT_SYMBOL vmlinux 0x6ad85887 acpi_enable_gpe +EXPORT_SYMBOL vmlinux 0x6add5c9a dmi_find_device +EXPORT_SYMBOL vmlinux 0x6addb935 consume_skb +EXPORT_SYMBOL vmlinux 0x6aecaf74 compat_mc_setsockopt +EXPORT_SYMBOL vmlinux 0x6af48064 scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0x6afe1d50 generic_file_splice_read +EXPORT_SYMBOL vmlinux 0x6b06fdce delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x6b184e57 agp_free_page_array +EXPORT_SYMBOL vmlinux 0x6b1b67d3 __bdevname +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b3f7925 registered_fb +EXPORT_SYMBOL vmlinux 0x6b640864 nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6b665d11 simple_rmdir +EXPORT_SYMBOL vmlinux 0x6b6f9bd1 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0x6b707f66 cont_write_begin +EXPORT_SYMBOL vmlinux 0x6b787805 textsearch_prepare +EXPORT_SYMBOL vmlinux 0x6b8f453c pcie_port_service_register +EXPORT_SYMBOL vmlinux 0x6b92f3ab pnp_device_detach +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bc9fc03 sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x6bd0f4bd agp_generic_alloc_user +EXPORT_SYMBOL vmlinux 0x6bd888cc udp_del_offload +EXPORT_SYMBOL vmlinux 0x6bdcfd99 qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x6bea2789 scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0x6beb2078 param_set_copystring +EXPORT_SYMBOL vmlinux 0x6bf0e148 unload_nls +EXPORT_SYMBOL vmlinux 0x6bf4b9e1 read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x6c0062cb sock_from_file +EXPORT_SYMBOL vmlinux 0x6c06f2f5 twl6040_get_pll +EXPORT_SYMBOL vmlinux 0x6c1bc10f blk_mq_free_queue +EXPORT_SYMBOL vmlinux 0x6c275bcf no_llseek +EXPORT_SYMBOL vmlinux 0x6c389761 acpi_bus_get_private_data +EXPORT_SYMBOL vmlinux 0x6c394fd1 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x6c45e483 d_instantiate_unique +EXPORT_SYMBOL vmlinux 0x6c5101d8 percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x6c51a836 sysctl_tcp_notsent_lowat +EXPORT_SYMBOL vmlinux 0x6c569ae7 __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c62fec2 bio_sector_offset +EXPORT_SYMBOL vmlinux 0x6c6c087b ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0x6c6f8a0f _raw_write_unlock +EXPORT_SYMBOL vmlinux 0x6c702af7 sysctl_udp_rmem_min +EXPORT_SYMBOL vmlinux 0x6c88ebd3 netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0x6ca2ff5a __destroy_inode +EXPORT_SYMBOL vmlinux 0x6cd8c86b __crc32c_le_combine +EXPORT_SYMBOL vmlinux 0x6ce7a7e4 dev_mc_sync +EXPORT_SYMBOL vmlinux 0x6d0aba34 wait_for_completion +EXPORT_SYMBOL vmlinux 0x6d0f1f89 dm_table_get_mode +EXPORT_SYMBOL vmlinux 0x6d165c40 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0x6d27ef64 __bitmap_empty +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d2f25f5 dev_disable_lro +EXPORT_SYMBOL vmlinux 0x6d334118 __get_user_8 +EXPORT_SYMBOL vmlinux 0x6d340f64 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x6d4c96d5 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x6d4d6cc3 tty_unthrottle +EXPORT_SYMBOL vmlinux 0x6d567fb0 textsearch_register +EXPORT_SYMBOL vmlinux 0x6d6818ff gen_pool_alloc +EXPORT_SYMBOL vmlinux 0x6d7ce3ed pci_choose_state +EXPORT_SYMBOL vmlinux 0x6d9049b7 tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0x6d95be86 __inet_stream_connect +EXPORT_SYMBOL vmlinux 0x6d9f6f84 __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0x6dad27be pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0x6db4c4cf sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0x6dc02243 set_nlink +EXPORT_SYMBOL vmlinux 0x6ddecc3c inode_change_ok +EXPORT_SYMBOL vmlinux 0x6debe179 setup_new_exec +EXPORT_SYMBOL vmlinux 0x6decec93 serio_open +EXPORT_SYMBOL vmlinux 0x6def2db2 half_md4_transform +EXPORT_SYMBOL vmlinux 0x6e08260b vc_cons +EXPORT_SYMBOL vmlinux 0x6e08f9a2 make_bad_inode +EXPORT_SYMBOL vmlinux 0x6e297a62 __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x6e32da2e mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0x6e3abb04 phy_connect +EXPORT_SYMBOL vmlinux 0x6e45d7e8 blk_alloc_queue_node +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6eace663 jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0x6ebc5149 param_ops_long +EXPORT_SYMBOL vmlinux 0x6f0e3d94 vfs_link +EXPORT_SYMBOL vmlinux 0x6f20960a full_name_hash +EXPORT_SYMBOL vmlinux 0x6f36c782 idr_find_slowpath +EXPORT_SYMBOL vmlinux 0x6f4c812f __percpu_counter_add +EXPORT_SYMBOL vmlinux 0x6f556bdb acpi_get_gpe_device +EXPORT_SYMBOL vmlinux 0x6f9942a0 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0x6fbba3cd dma_async_device_register +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fcd1d35 tty_unlock_pair +EXPORT_SYMBOL vmlinux 0x6fd040ec generic_segment_checks +EXPORT_SYMBOL vmlinux 0x6feb2039 acpi_write +EXPORT_SYMBOL vmlinux 0x700092b2 input_unregister_handler +EXPORT_SYMBOL vmlinux 0x70027fe3 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0x700a0291 skb_append +EXPORT_SYMBOL vmlinux 0x7023bea8 unregister_acpi_notifier +EXPORT_SYMBOL vmlinux 0x702497cb truncate_inode_pages +EXPORT_SYMBOL vmlinux 0x702b6c54 udplite_table +EXPORT_SYMBOL vmlinux 0x703b4352 _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x70523a7a __cond_resched_softirq +EXPORT_SYMBOL vmlinux 0x7054a3e4 request_dma +EXPORT_SYMBOL vmlinux 0x705b0b8a scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0x7079e2be blk_queue_init_tags +EXPORT_SYMBOL vmlinux 0x707f43f6 __ctzdi2 +EXPORT_SYMBOL vmlinux 0x70a590ad vga_client_register +EXPORT_SYMBOL vmlinux 0x70aa0f98 pci_unregister_driver +EXPORT_SYMBOL vmlinux 0x70bc17d7 inode_wait +EXPORT_SYMBOL vmlinux 0x70d053fd try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x70d8ab82 acpi_acquire_global_lock +EXPORT_SYMBOL vmlinux 0x70f95777 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x711017d5 skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0x71107e89 abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0x71206525 skb_seq_read +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x71549db2 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0x7164ac86 pcie_set_mps +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x7172e886 dget_parent +EXPORT_SYMBOL vmlinux 0x717b2c1b vlan_uses_dev +EXPORT_SYMBOL vmlinux 0x718d01f1 unlock_buffer +EXPORT_SYMBOL vmlinux 0x718d88d3 mmc_can_discard +EXPORT_SYMBOL vmlinux 0x7193f296 pci_get_device +EXPORT_SYMBOL vmlinux 0x7198a847 dquot_scan_active +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71b4e721 iput +EXPORT_SYMBOL vmlinux 0x71bdcf18 inet_sendmsg +EXPORT_SYMBOL vmlinux 0x71ce1b16 i8042_remove_filter +EXPORT_SYMBOL vmlinux 0x71e10e90 kernel_sock_ioctl +EXPORT_SYMBOL vmlinux 0x71e3cecb up +EXPORT_SYMBOL vmlinux 0x71f81d5f pcie_get_mps +EXPORT_SYMBOL vmlinux 0x71f954f7 fsnotify_add_mark +EXPORT_SYMBOL vmlinux 0x71fc9d2e blkdev_put +EXPORT_SYMBOL vmlinux 0x72077893 genphy_read_status +EXPORT_SYMBOL vmlinux 0x72086792 inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x724031a2 tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0x727b7c75 blk_register_region +EXPORT_SYMBOL vmlinux 0x72830dd0 new_inode +EXPORT_SYMBOL vmlinux 0x728ef37f elevator_init +EXPORT_SYMBOL vmlinux 0x729fed4d disk_stack_limits +EXPORT_SYMBOL vmlinux 0x72a98fdb copy_user_generic_unrolled +EXPORT_SYMBOL vmlinux 0x72b21162 i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0x72b243d4 free_dma +EXPORT_SYMBOL vmlinux 0x72b72310 input_unregister_handle +EXPORT_SYMBOL vmlinux 0x72b77b17 elv_abort_queue +EXPORT_SYMBOL vmlinux 0x72b90eae get_task_io_context +EXPORT_SYMBOL vmlinux 0x72bb35a7 devm_gpiod_get +EXPORT_SYMBOL vmlinux 0x72bf2140 mtrr_add +EXPORT_SYMBOL vmlinux 0x72c44d29 d_delete +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72f3aa32 acpi_get_physical_device_location +EXPORT_SYMBOL vmlinux 0x72fe533f mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x73202f98 vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x733c3b54 kasprintf +EXPORT_SYMBOL vmlinux 0x73409ef0 tcf_exts_change +EXPORT_SYMBOL vmlinux 0x734a3f18 blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x735a0bd5 native_io_delay +EXPORT_SYMBOL vmlinux 0x737de5e9 radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0x737fa4e4 truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0x73989780 vfs_readlink +EXPORT_SYMBOL vmlinux 0x739f102b __inode_permission +EXPORT_SYMBOL vmlinux 0x73a36aac ps2_handle_response +EXPORT_SYMBOL vmlinux 0x73a78bc4 downgrade_write +EXPORT_SYMBOL vmlinux 0x73d902e8 sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0x73dd1775 ip_fragment +EXPORT_SYMBOL vmlinux 0x73dd54eb irq_fpu_usable +EXPORT_SYMBOL vmlinux 0x73e5c252 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0x73e8b1dd gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0x740a1b95 reserve_evntsel_nmi +EXPORT_SYMBOL vmlinux 0x740d06e1 dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0x7469fcfe radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x747195f0 hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x747699ad get_io_context +EXPORT_SYMBOL vmlinux 0x7485e15e unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x749f3449 dump_skip +EXPORT_SYMBOL vmlinux 0x74a3a38e qdisc_watchdog_schedule_ns +EXPORT_SYMBOL vmlinux 0x74ad4103 pipe_to_file +EXPORT_SYMBOL vmlinux 0x74b43543 blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74d10abd scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x74e0e4bb pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74e7dd05 vga_switcheroo_client_fb_set +EXPORT_SYMBOL vmlinux 0x7532588a alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x7533d121 generic_fillattr +EXPORT_SYMBOL vmlinux 0x7538b132 agp_off +EXPORT_SYMBOL vmlinux 0x7547fb25 pci_disable_obff +EXPORT_SYMBOL vmlinux 0x754d539c strlen +EXPORT_SYMBOL vmlinux 0x754dac78 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x755b176d md_wakeup_thread +EXPORT_SYMBOL vmlinux 0x7564de71 account_page_writeback +EXPORT_SYMBOL vmlinux 0x7596837d simple_release_fs +EXPORT_SYMBOL vmlinux 0x75b0f677 scsi_print_command +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75bdea12 iommu_area_alloc +EXPORT_SYMBOL vmlinux 0x75d076f5 put_tty_driver +EXPORT_SYMBOL vmlinux 0x75eaa68c blkdev_get +EXPORT_SYMBOL vmlinux 0x75f1c6c6 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0x75fbdefd acpi_remove_address_space_handler +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x7628f3c7 this_cpu_off +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x764bd77c request_resource +EXPORT_SYMBOL vmlinux 0x765f114e inet_put_port +EXPORT_SYMBOL vmlinux 0x765ff474 crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x767dd8fd acpi_get_irq_routing_table +EXPORT_SYMBOL vmlinux 0x767ddb02 set_memory_wc +EXPORT_SYMBOL vmlinux 0x767e8ae0 pci_scan_slot +EXPORT_SYMBOL vmlinux 0x76869ac8 rdmsr_on_cpus +EXPORT_SYMBOL vmlinux 0x76ae557c bio_add_page +EXPORT_SYMBOL vmlinux 0x76bf656d __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76db21ca write_dirty_buffer +EXPORT_SYMBOL vmlinux 0x76fb08a7 amd_iommu_unregister_ppr_notifier +EXPORT_SYMBOL vmlinux 0x771183aa filemap_flush +EXPORT_SYMBOL vmlinux 0x771cf835 dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x773a9c94 blk_iopoll_enabled +EXPORT_SYMBOL vmlinux 0x773fa409 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x77456e0a acpi_root_dir +EXPORT_SYMBOL vmlinux 0x774f4996 skb_split +EXPORT_SYMBOL vmlinux 0x774f6678 misc_register +EXPORT_SYMBOL vmlinux 0x775c5ff0 get_disk +EXPORT_SYMBOL vmlinux 0x77866767 blk_end_request_cur +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x77b312b5 block_write_full_page_endio +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77c06e88 __block_write_begin +EXPORT_SYMBOL vmlinux 0x77d93998 __dev_remove_offload +EXPORT_SYMBOL vmlinux 0x77df0847 __set_personality +EXPORT_SYMBOL vmlinux 0x77ecac9f zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x77f53abc acpi_get_vendor_resource +EXPORT_SYMBOL vmlinux 0x77fd5cda serio_interrupt +EXPORT_SYMBOL vmlinux 0x780fdfd1 intel_enable_gtt +EXPORT_SYMBOL vmlinux 0x78199100 scsi_add_device +EXPORT_SYMBOL vmlinux 0x781b95e2 tcp_shutdown +EXPORT_SYMBOL vmlinux 0x78309dc0 pci_match_id +EXPORT_SYMBOL vmlinux 0x783b3563 wake_up_atomic_t +EXPORT_SYMBOL vmlinux 0x784213a6 pv_lock_ops +EXPORT_SYMBOL vmlinux 0x7846af3e __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x78764f4e pv_irq_ops +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78a5fdaa unregister_nls +EXPORT_SYMBOL vmlinux 0x78b0be6c is_bad_inode +EXPORT_SYMBOL vmlinux 0x78bb3e24 abort_exclusive_wait +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78fd36e7 ipmi_request_supply_msgs +EXPORT_SYMBOL vmlinux 0x79068fda acpi_install_method +EXPORT_SYMBOL vmlinux 0x790cd334 invalidate_partition +EXPORT_SYMBOL vmlinux 0x79367798 pci_claim_resource +EXPORT_SYMBOL vmlinux 0x7951ba09 i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x796fc5ce scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0x796feb32 seq_pad +EXPORT_SYMBOL vmlinux 0x79770066 generic_pipe_buf_unmap +EXPORT_SYMBOL vmlinux 0x797c8fa9 cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x7984eefc key_update +EXPORT_SYMBOL vmlinux 0x79867041 mmc_remove_host +EXPORT_SYMBOL vmlinux 0x79945d9f proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x79a38e61 ___ratelimit +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79bc9e36 seq_read +EXPORT_SYMBOL vmlinux 0x79caee65 ip_setsockopt +EXPORT_SYMBOL vmlinux 0x79d37319 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0x79e83dec inet_frags_init_net +EXPORT_SYMBOL vmlinux 0x7a188791 prandom_bytes +EXPORT_SYMBOL vmlinux 0x7a27c184 ewma_init +EXPORT_SYMBOL vmlinux 0x7a38991d pci_iounmap +EXPORT_SYMBOL vmlinux 0x7a3e66cc fifo_set_limit +EXPORT_SYMBOL vmlinux 0x7a3e95a8 mpage_writepages +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a749961 __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0x7a7c2679 netif_receive_skb +EXPORT_SYMBOL vmlinux 0x7a82cb47 rdmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x7a8b1956 neigh_lookup +EXPORT_SYMBOL vmlinux 0x7a91726b clkdev_alloc +EXPORT_SYMBOL vmlinux 0x7a925833 cpufreq_get_global_kobject +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7ad885d1 pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x7add44b5 posix_acl_valid +EXPORT_SYMBOL vmlinux 0x7aec9089 clear_user +EXPORT_SYMBOL vmlinux 0x7afc1f17 blk_put_request +EXPORT_SYMBOL vmlinux 0x7b06294c ether_setup +EXPORT_SYMBOL vmlinux 0x7b0e8255 jbd2_journal_file_inode +EXPORT_SYMBOL vmlinux 0x7b11e2a5 pneigh_enqueue +EXPORT_SYMBOL vmlinux 0x7b16235f hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x7b2aef6c __krealloc +EXPORT_SYMBOL vmlinux 0x7b52a859 wrmsr_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x7b5f3542 tty_port_close_end +EXPORT_SYMBOL vmlinux 0x7b6303fd __frontswap_load +EXPORT_SYMBOL vmlinux 0x7b759525 jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x7b8b8e94 __nlmsg_put +EXPORT_SYMBOL vmlinux 0x7b8bf1ed nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x7b998997 dentry_open +EXPORT_SYMBOL vmlinux 0x7b9a6116 intel_agp_enabled +EXPORT_SYMBOL vmlinux 0x7b9b06cb sock_no_mmap +EXPORT_SYMBOL vmlinux 0x7ba9aef3 blk_requeue_request +EXPORT_SYMBOL vmlinux 0x7be68034 arp_xmit +EXPORT_SYMBOL vmlinux 0x7bee693d bitmap_start_sync +EXPORT_SYMBOL vmlinux 0x7bfd271f ps2_sendbyte +EXPORT_SYMBOL vmlinux 0x7bfded4d framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x7c04402e xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0x7c1372e8 panic +EXPORT_SYMBOL vmlinux 0x7c224187 nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0x7c2d098f krealloc +EXPORT_SYMBOL vmlinux 0x7c36ec79 __nla_reserve +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c489958 dev_alloc_name +EXPORT_SYMBOL vmlinux 0x7c4d2432 nf_unregister_hook +EXPORT_SYMBOL vmlinux 0x7c61340c __release_region +EXPORT_SYMBOL vmlinux 0x7c6c4154 kill_bdev +EXPORT_SYMBOL vmlinux 0x7c80aa49 backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x7c85ab65 twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0x7c874563 phy_drivers_register +EXPORT_SYMBOL vmlinux 0x7c8b1121 km_policy_notify +EXPORT_SYMBOL vmlinux 0x7c93a8ed nf_setsockopt +EXPORT_SYMBOL vmlinux 0x7c93ddac xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0x7ca42644 end_page_writeback +EXPORT_SYMBOL vmlinux 0x7ca46555 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0x7cb1ae69 cpu_down +EXPORT_SYMBOL vmlinux 0x7cb4943c inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0x7cbf7081 gen_pool_destroy +EXPORT_SYMBOL vmlinux 0x7cc578da param_get_long +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7ce83365 acpi_remove_table_handler +EXPORT_SYMBOL vmlinux 0x7cf3a16b put_cmsg +EXPORT_SYMBOL vmlinux 0x7cffbc18 cleancache_register_ops +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d11c268 jiffies +EXPORT_SYMBOL vmlinux 0x7d681af1 module_layout +EXPORT_SYMBOL vmlinux 0x7d6f406f swiotlb_dma_mapping_error +EXPORT_SYMBOL vmlinux 0x7d883a49 scsi_setup_fs_cmnd +EXPORT_SYMBOL vmlinux 0x7d94f746 acpi_os_write_port +EXPORT_SYMBOL vmlinux 0x7d97190a inode_claim_rsv_space +EXPORT_SYMBOL vmlinux 0x7daa55c0 bio_put +EXPORT_SYMBOL vmlinux 0x7dba45ba blk_delay_queue +EXPORT_SYMBOL vmlinux 0x7dbab3ac scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0x7dbc2e57 mmiotrace_printk +EXPORT_SYMBOL vmlinux 0x7dd554fc unregister_kmmio_probe +EXPORT_SYMBOL vmlinux 0x7dda52b3 nobh_writepage +EXPORT_SYMBOL vmlinux 0x7dea4b12 cdrom_release +EXPORT_SYMBOL vmlinux 0x7ded2eca request_firmware_nowait +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7e0d5ea5 redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0x7e11e053 __wake_up_bit +EXPORT_SYMBOL vmlinux 0x7e35d6ae from_kgid_munged +EXPORT_SYMBOL vmlinux 0x7e394c4e sysctl_local_reserved_ports +EXPORT_SYMBOL vmlinux 0x7e482d22 ata_port_printk +EXPORT_SYMBOL vmlinux 0x7e5fb0f6 netif_rx_ni +EXPORT_SYMBOL vmlinux 0x7e8c1b01 iget_failed +EXPORT_SYMBOL vmlinux 0x7e90a323 rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x7eab351c __alloc_skb +EXPORT_SYMBOL vmlinux 0x7eb5ce5d elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x7ebc1421 vlan_vid_add +EXPORT_SYMBOL vmlinux 0x7ecf4d17 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0x7ed914c9 acpi_decode_pld_buffer +EXPORT_SYMBOL vmlinux 0x7ef15339 ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x7f0bc28a pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0x7f0fb710 blk_mq_init_commands +EXPORT_SYMBOL vmlinux 0x7f1038fd amd_iommu_domain_direct_map +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f466681 inode_dio_wait +EXPORT_SYMBOL vmlinux 0x7f56c419 qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0x7f658e80 _raw_write_lock +EXPORT_SYMBOL vmlinux 0x7f6a0ce0 dquot_initialize +EXPORT_SYMBOL vmlinux 0x7f7415b7 kmem_cache_free +EXPORT_SYMBOL vmlinux 0x7f8a98e1 d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0x7fa5d0b5 sock_update_classid +EXPORT_SYMBOL vmlinux 0x7fa67b61 tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0x7fbabf22 tty_schedule_flip +EXPORT_SYMBOL vmlinux 0x7fbbe49f serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0x7fc67ee7 tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fe38f48 sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x801d8809 scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x801e668a amd_iommu_complete_ppr +EXPORT_SYMBOL vmlinux 0x8024ee9f vga_switcheroo_get_client_state +EXPORT_SYMBOL vmlinux 0x802d0e93 crc32_le +EXPORT_SYMBOL vmlinux 0x802f1845 serio_reconnect +EXPORT_SYMBOL vmlinux 0x804e34f6 tty_unregister_driver +EXPORT_SYMBOL vmlinux 0x804f922a ipmi_addr_length +EXPORT_SYMBOL vmlinux 0x8054d08a phy_scan_fixups +EXPORT_SYMBOL vmlinux 0x80846f2d tty_port_hangup +EXPORT_SYMBOL vmlinux 0x80bca896 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x80bcd63d __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x80c74d66 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80eb778a sk_wait_data +EXPORT_SYMBOL vmlinux 0x81042ed5 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x811ec9e9 i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0x812365f2 noop_qdisc +EXPORT_SYMBOL vmlinux 0x8124764c phy_stop +EXPORT_SYMBOL vmlinux 0x812cfc11 fib_default_rule_pref +EXPORT_SYMBOL vmlinux 0x812f7a05 vfs_unlink +EXPORT_SYMBOL vmlinux 0x8134c74c directly_mappable_cdev_bdi +EXPORT_SYMBOL vmlinux 0x8137b1a6 security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x81472677 acpi_get_table +EXPORT_SYMBOL vmlinux 0x814e7730 nf_ct_destroy +EXPORT_SYMBOL vmlinux 0x81533963 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x8156b9b2 open_exec +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x815d3eb9 blk_queue_io_min +EXPORT_SYMBOL vmlinux 0x815f2897 empty_zero_page +EXPORT_SYMBOL vmlinux 0x81967026 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0x8198cd39 tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0x81b9ede1 swiotlb_map_sg_attrs +EXPORT_SYMBOL vmlinux 0x81d10f5f trace_seq_putc +EXPORT_SYMBOL vmlinux 0x81d85db5 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81e58d78 d_prune_aliases +EXPORT_SYMBOL vmlinux 0x81e6b37f dmi_get_system_info +EXPORT_SYMBOL vmlinux 0x81f8304a pci_disable_ido +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x8212721d xenbus_dev_request_and_reply +EXPORT_SYMBOL vmlinux 0x82477240 ida_destroy +EXPORT_SYMBOL vmlinux 0x8251bcc3 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x82578148 kernel_getsockname +EXPORT_SYMBOL vmlinux 0x8257dfb9 padata_start +EXPORT_SYMBOL vmlinux 0x825a0136 locks_copy_lock +EXPORT_SYMBOL vmlinux 0x8260686f bitmap_find_next_zero_area +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x828d2144 i2c_transfer +EXPORT_SYMBOL vmlinux 0x829d4e08 rwsem_down_write_failed +EXPORT_SYMBOL vmlinux 0x82acfb70 blk_iopoll_sched +EXPORT_SYMBOL vmlinux 0x82b31d0b sock_create +EXPORT_SYMBOL vmlinux 0x82b6e33f __lru_cache_add +EXPORT_SYMBOL vmlinux 0x82ca72c6 pv_mmu_ops +EXPORT_SYMBOL vmlinux 0x82cad01e tcp_poll +EXPORT_SYMBOL vmlinux 0x82d9e73d dev_change_carrier +EXPORT_SYMBOL vmlinux 0x82e07fdf neigh_seq_stop +EXPORT_SYMBOL vmlinux 0x82ee3d4f xfrm_register_km +EXPORT_SYMBOL vmlinux 0x830e547b ioremap_prot +EXPORT_SYMBOL vmlinux 0x831301cc tcp_disconnect +EXPORT_SYMBOL vmlinux 0x83322795 inet_add_protocol +EXPORT_SYMBOL vmlinux 0x833c03aa acpi_enable_all_runtime_gpes +EXPORT_SYMBOL vmlinux 0x833d618d submit_bh +EXPORT_SYMBOL vmlinux 0x8351a16a sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x83623aad __secpath_destroy +EXPORT_SYMBOL vmlinux 0x839670ac dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0x83a476ce bitmap_scnlistprintf +EXPORT_SYMBOL vmlinux 0x83bebd7c nf_nat_decode_session_hook +EXPORT_SYMBOL vmlinux 0x83d09da3 kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0x83de6ec4 blk_rq_init +EXPORT_SYMBOL vmlinux 0x83f3cdff gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0x8403a151 pipe_unlock +EXPORT_SYMBOL vmlinux 0x84060081 xen_poll_irq_timeout +EXPORT_SYMBOL vmlinux 0x8416aef1 kern_path_create +EXPORT_SYMBOL vmlinux 0x8417f512 acpi_update_all_gpes +EXPORT_SYMBOL vmlinux 0x841962f8 param_get_ushort +EXPORT_SYMBOL vmlinux 0x84266cb7 fddi_type_trans +EXPORT_SYMBOL vmlinux 0x8429daed xfrm_garbage_collect +EXPORT_SYMBOL vmlinux 0x842f3f17 sock_update_memcg +EXPORT_SYMBOL vmlinux 0x84562234 unregister_qdisc +EXPORT_SYMBOL vmlinux 0x8485cc44 kobject_set_name +EXPORT_SYMBOL vmlinux 0x84a962e5 pci_clear_mwi +EXPORT_SYMBOL vmlinux 0x84bc0a05 generic_setxattr +EXPORT_SYMBOL vmlinux 0x84ffea8b idr_preload +EXPORT_SYMBOL vmlinux 0x85006c4e create_syslog_header +EXPORT_SYMBOL vmlinux 0x8501aa12 netdev_notice +EXPORT_SYMBOL vmlinux 0x8509c540 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0x8518eca9 param_get_short +EXPORT_SYMBOL vmlinux 0x852d4317 mmc_release_host +EXPORT_SYMBOL vmlinux 0x853bf7c1 param_set_int +EXPORT_SYMBOL vmlinux 0x854cbbab buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0x855818d9 agp_alloc_page_array +EXPORT_SYMBOL vmlinux 0x8565d4cc arp_tbl +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x857721f6 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0x85a38438 dst_discard +EXPORT_SYMBOL vmlinux 0x85b262ed vga_switcheroo_set_dynamic_switch +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85cbfd40 dev_uc_add +EXPORT_SYMBOL vmlinux 0x85d08dcd skb_queue_purge +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x861adf07 blk_integrity_is_initialized +EXPORT_SYMBOL vmlinux 0x861ea276 bio_integrity_get_tag +EXPORT_SYMBOL vmlinux 0x8630d216 release_firmware +EXPORT_SYMBOL vmlinux 0x863d04a9 cdev_del +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x8650a434 vfs_mknod +EXPORT_SYMBOL vmlinux 0x865eba89 pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0x866055ef udp_ioctl +EXPORT_SYMBOL vmlinux 0x86625e94 key_revoke +EXPORT_SYMBOL vmlinux 0x8664f62e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0x867da1c9 skb_make_writable +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x8690580c unlazy_fpu +EXPORT_SYMBOL vmlinux 0x86944cea devm_gpio_free +EXPORT_SYMBOL vmlinux 0x86d5255f _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0x86f4ecb8 __register_chrdev +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x870bf928 radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x870ee29d writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0x8711ad0c generic_make_request +EXPORT_SYMBOL vmlinux 0x871c0a7e fiemap_check_flags +EXPORT_SYMBOL vmlinux 0x871c2f70 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0x87221d7c devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0x872ab683 tty_hangup +EXPORT_SYMBOL vmlinux 0x8739dcf8 pci_set_dma_max_seg_size +EXPORT_SYMBOL vmlinux 0x87476bd9 agp_create_memory +EXPORT_SYMBOL vmlinux 0x87679b86 get_tz_trend +EXPORT_SYMBOL vmlinux 0x876cdf69 mb_cache_entry_release +EXPORT_SYMBOL vmlinux 0x876dafc3 ec_write +EXPORT_SYMBOL vmlinux 0x8779a34f param_ops_byte +EXPORT_SYMBOL vmlinux 0x878800d1 put_disk +EXPORT_SYMBOL vmlinux 0x878ab3ce sysctl_tcp_adv_win_scale +EXPORT_SYMBOL vmlinux 0x8790917f devm_free_irq +EXPORT_SYMBOL vmlinux 0x8792dd28 scsi_get_command +EXPORT_SYMBOL vmlinux 0x87aaddf8 wrmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0x87c58a96 smp_call_function_many +EXPORT_SYMBOL vmlinux 0x87dc469a mempool_create_node +EXPORT_SYMBOL vmlinux 0x881039d0 zlib_inflate +EXPORT_SYMBOL vmlinux 0x882178cd pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0x8834396c mod_timer +EXPORT_SYMBOL vmlinux 0x88481cde scsi_reset_provider +EXPORT_SYMBOL vmlinux 0x88513970 param_set_byte +EXPORT_SYMBOL vmlinux 0x8863af5f dmam_free_coherent +EXPORT_SYMBOL vmlinux 0x8873e609 __skb_gso_segment +EXPORT_SYMBOL vmlinux 0x8897df7d kobject_init +EXPORT_SYMBOL vmlinux 0x889db42e ps2_begin_command +EXPORT_SYMBOL vmlinux 0x88b04e39 __register_nmi_handler +EXPORT_SYMBOL vmlinux 0x88be0448 dev_crit +EXPORT_SYMBOL vmlinux 0x88c1cf1a scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0x88deccd3 fb_is_primary_device +EXPORT_SYMBOL vmlinux 0x88f00d18 lg_global_unlock +EXPORT_SYMBOL vmlinux 0x88ffaab3 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0x892b26a0 set_memory_nx +EXPORT_SYMBOL vmlinux 0x89322a9b devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0x8947c4b8 i2c_clients_command +EXPORT_SYMBOL vmlinux 0x8958121d agp_enable +EXPORT_SYMBOL vmlinux 0x89641f3d sk_common_release +EXPORT_SYMBOL vmlinux 0x897473df mktime +EXPORT_SYMBOL vmlinux 0x8978e1ac dev_get_by_name +EXPORT_SYMBOL vmlinux 0x8983113b jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x8988599a xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x89afe34e __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0x89bc4556 from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x89cada11 __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x89cfc7f2 ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x89d5538d fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x89e8d41f register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x89e9544b max8998_read_reg +EXPORT_SYMBOL vmlinux 0x8a1ab4ee timeval_to_jiffies +EXPORT_SYMBOL vmlinux 0x8a1bf6ad posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0x8a225505 blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a51d565 quota_send_warning +EXPORT_SYMBOL vmlinux 0x8a6af65c kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a80d7a5 acpi_error +EXPORT_SYMBOL vmlinux 0x8a83495e ipmi_get_smi_info +EXPORT_SYMBOL vmlinux 0x8a8e8d06 pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8ab3e81b dev_mc_unsync +EXPORT_SYMBOL vmlinux 0x8ae6d181 brioctl_set +EXPORT_SYMBOL vmlinux 0x8b1a7a66 pcie_aspm_enabled +EXPORT_SYMBOL vmlinux 0x8b226a81 acpi_video_dmi_demote_vendor +EXPORT_SYMBOL vmlinux 0x8b265f2c i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0x8b35c202 scsi_prep_return +EXPORT_SYMBOL vmlinux 0x8b35e873 sg_last +EXPORT_SYMBOL vmlinux 0x8b43159b register_cpu_notifier +EXPORT_SYMBOL vmlinux 0x8b5c9fd1 __invalidate_device +EXPORT_SYMBOL vmlinux 0x8b5f4a2e IO_APIC_get_PCI_irq_vector +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b6eb792 compat_ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x8b74ac83 vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0x8b80f69f input_event +EXPORT_SYMBOL vmlinux 0x8b989cf9 acpi_bus_can_wakeup +EXPORT_SYMBOL vmlinux 0x8ba38543 poll_schedule_timeout +EXPORT_SYMBOL vmlinux 0x8ba84f5c stop_tty +EXPORT_SYMBOL vmlinux 0x8bd39db7 inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x8be246b4 dentry_unhash +EXPORT_SYMBOL vmlinux 0x8bfc6542 udp_prot +EXPORT_SYMBOL vmlinux 0x8bff40de scsi_allocate_command +EXPORT_SYMBOL vmlinux 0x8c0fb3ed path_put +EXPORT_SYMBOL vmlinux 0x8c183cbe iowrite16 +EXPORT_SYMBOL vmlinux 0x8c40cb88 keyring_search +EXPORT_SYMBOL vmlinux 0x8c44c599 sk_prot_clear_portaddr_nulls +EXPORT_SYMBOL vmlinux 0x8c4f6da5 km_query +EXPORT_SYMBOL vmlinux 0x8c53edb1 dquot_operations +EXPORT_SYMBOL vmlinux 0x8c5e8def __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0x8c637d43 irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x8c8ee770 ipmi_destroy_user +EXPORT_SYMBOL vmlinux 0x8ca11f56 node_data +EXPORT_SYMBOL vmlinux 0x8cb62813 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x8cbc34a2 sock_rfree +EXPORT_SYMBOL vmlinux 0x8cc18000 scsi_execute +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8cd190b4 netdev_printk +EXPORT_SYMBOL vmlinux 0x8cda8029 xen_clear_irq_pending +EXPORT_SYMBOL vmlinux 0x8cf1bcfd generic_read_dir +EXPORT_SYMBOL vmlinux 0x8d1dcc61 pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0x8d24405c read_cache_page_async +EXPORT_SYMBOL vmlinux 0x8d2e268b param_ops_ulong +EXPORT_SYMBOL vmlinux 0x8d39670e ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0x8d551bef sysctl_tcp_rmem +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d59b24f agp_alloc_bridge +EXPORT_SYMBOL vmlinux 0x8d665c94 d_splice_alias +EXPORT_SYMBOL vmlinux 0x8d714b82 elevator_change +EXPORT_SYMBOL vmlinux 0x8d7190b9 iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d76da5b set_pages_array_uc +EXPORT_SYMBOL vmlinux 0x8d825bee locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x8d8d96c6 acpi_get_sleep_type_data +EXPORT_SYMBOL vmlinux 0x8da1a3cb acpi_remove_interface +EXPORT_SYMBOL vmlinux 0x8da84edd pci_enable_msix +EXPORT_SYMBOL vmlinux 0x8dad4397 tty_kref_put +EXPORT_SYMBOL vmlinux 0x8daf8c42 dql_init +EXPORT_SYMBOL vmlinux 0x8dbe33f5 sock_create_kern +EXPORT_SYMBOL vmlinux 0x8de72102 tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0x8de7fbee amd_iommu_flush_tlb +EXPORT_SYMBOL vmlinux 0x8def5ff7 __generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x8df6c16d seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x8df92f66 memchr_inv +EXPORT_SYMBOL vmlinux 0x8e002cda acpi_remove_gpe_block +EXPORT_SYMBOL vmlinux 0x8e11895d devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x8e332829 flush_delayed_work +EXPORT_SYMBOL vmlinux 0x8e3e5987 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0x8e44e406 __bforget +EXPORT_SYMBOL vmlinux 0x8e751adf acpi_bus_unregister_driver +EXPORT_SYMBOL vmlinux 0x8e7feffd devm_gpiod_put +EXPORT_SYMBOL vmlinux 0x8e83afde alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x8e864a86 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x8e953c20 bdi_register +EXPORT_SYMBOL vmlinux 0x8e9be919 dentry_update_name_case +EXPORT_SYMBOL vmlinux 0x8eaad32f kernel_recvmsg +EXPORT_SYMBOL vmlinux 0x8eaf2a5f vga_switcheroo_unregister_handler +EXPORT_SYMBOL vmlinux 0x8f132be4 devm_ioremap_nocache +EXPORT_SYMBOL vmlinux 0x8f252d5c tcf_hash_destroy +EXPORT_SYMBOL vmlinux 0x8f2703b7 wbinvd_on_all_cpus +EXPORT_SYMBOL vmlinux 0x8f2d0b7d sock_get_timestamp +EXPORT_SYMBOL vmlinux 0x8f51f575 gen10g_resume +EXPORT_SYMBOL vmlinux 0x8f717227 xfrm_state_update +EXPORT_SYMBOL vmlinux 0x8f77957b netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0x8f8b48ac tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0x8f9c199c __get_user_2 +EXPORT_SYMBOL vmlinux 0x8fa04441 vm_mmap +EXPORT_SYMBOL vmlinux 0x8fba74d7 dev_deactivate +EXPORT_SYMBOL vmlinux 0x8fd5d2bc do_splice_direct +EXPORT_SYMBOL vmlinux 0x8fd941f3 fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0x8fe2cef2 km_state_expired +EXPORT_SYMBOL vmlinux 0x8fe48b08 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x8ff8e7da mmc_hw_reset +EXPORT_SYMBOL vmlinux 0x8ffc464f max8925_set_bits +EXPORT_SYMBOL vmlinux 0x902cf2b3 security_path_rename +EXPORT_SYMBOL vmlinux 0x902e465c i2c_del_adapter +EXPORT_SYMBOL vmlinux 0x902f6349 cdrom_check_events +EXPORT_SYMBOL vmlinux 0x904409c6 acpi_set_firmware_waking_vector +EXPORT_SYMBOL vmlinux 0x905cb568 i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0x906c7244 netif_napi_add +EXPORT_SYMBOL vmlinux 0x908b53ed param_set_short +EXPORT_SYMBOL vmlinux 0x90a50cb1 simple_fill_super +EXPORT_SYMBOL vmlinux 0x90bb200d dma_common_get_sgtable +EXPORT_SYMBOL vmlinux 0x90c329c8 blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x90d2cf3a bio_integrity_endio +EXPORT_SYMBOL vmlinux 0x90eb80b1 agp_generic_remove_memory +EXPORT_SYMBOL vmlinux 0x9107d480 devm_iounmap +EXPORT_SYMBOL vmlinux 0x91140a8d tcp_close +EXPORT_SYMBOL vmlinux 0x913fc916 vga_get +EXPORT_SYMBOL vmlinux 0x9144a8e2 ec_burst_disable +EXPORT_SYMBOL vmlinux 0x91463b1d kstrtos16 +EXPORT_SYMBOL vmlinux 0x91607d95 set_memory_wb +EXPORT_SYMBOL vmlinux 0x9166fada strncpy +EXPORT_SYMBOL vmlinux 0x91713f99 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0x91715312 sprintf +EXPORT_SYMBOL vmlinux 0x917d947f balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0x91863de6 tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x9193a5d5 mmc_request_done +EXPORT_SYMBOL vmlinux 0x91967e8e xen_selfballoon_init +EXPORT_SYMBOL vmlinux 0x919becbd crypto_sha512_update +EXPORT_SYMBOL vmlinux 0x91a3cdf4 down_timeout +EXPORT_SYMBOL vmlinux 0x91ac822f vscnprintf +EXPORT_SYMBOL vmlinux 0x91b7a32c simple_statfs +EXPORT_SYMBOL vmlinux 0x91ced5a9 dmam_free_noncoherent +EXPORT_SYMBOL vmlinux 0x91e69a43 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x920a95aa sock_no_shutdown +EXPORT_SYMBOL vmlinux 0x92365a0d inet_addr_type +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x92515a2e inet_frag_evictor +EXPORT_SYMBOL vmlinux 0x925520d2 blk_start_plug +EXPORT_SYMBOL vmlinux 0x925665ec scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x92615399 blk_get_backing_dev_info +EXPORT_SYMBOL vmlinux 0x9274e4b7 pci_disable_ltr +EXPORT_SYMBOL vmlinux 0x927c0f93 lease_get_mtime +EXPORT_SYMBOL vmlinux 0x9291cd3b memdup_user +EXPORT_SYMBOL vmlinux 0x92a9c60c time_to_tm +EXPORT_SYMBOL vmlinux 0x92d050df iov_pages +EXPORT_SYMBOL vmlinux 0x92e601b9 generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x92f2ffb9 tty_mutex +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x9327f5ce _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0x93448c57 screen_info +EXPORT_SYMBOL vmlinux 0x937665eb pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x939591d8 pci_disable_device +EXPORT_SYMBOL vmlinux 0x9398e04e dquot_quota_off +EXPORT_SYMBOL vmlinux 0x939a67a8 netif_device_detach +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93b446db inet_bind +EXPORT_SYMBOL vmlinux 0x93bd419a dcb_getapp +EXPORT_SYMBOL vmlinux 0x93c0756d skb_tx_error +EXPORT_SYMBOL vmlinux 0x93f0bae5 qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0x93f3e52b acpi_extract_package +EXPORT_SYMBOL vmlinux 0x93f5d61e register_md_personality +EXPORT_SYMBOL vmlinux 0x93fca811 __get_free_pages +EXPORT_SYMBOL vmlinux 0x93fdeaca blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0x94250b83 amd_northbridges +EXPORT_SYMBOL vmlinux 0x945e9562 alloc_anon_inode +EXPORT_SYMBOL vmlinux 0x94607092 dquot_commit +EXPORT_SYMBOL vmlinux 0x946ff4cc scsi_register +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x94998f60 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x94a451f0 d_drop +EXPORT_SYMBOL vmlinux 0x94d21d16 agp_generic_type_to_mask_type +EXPORT_SYMBOL vmlinux 0x94d2dd4e xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0x95035509 xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x9508f166 param_ops_bint +EXPORT_SYMBOL vmlinux 0x9519bbef in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x952074af poll_initwait +EXPORT_SYMBOL vmlinux 0x95395301 acpi_exception +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x954a2c25 sockfd_lookup +EXPORT_SYMBOL vmlinux 0x955a832f ___preempt_schedule +EXPORT_SYMBOL vmlinux 0x95a76112 simple_getattr +EXPORT_SYMBOL vmlinux 0x95f89a33 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x961508f8 kernel_bind +EXPORT_SYMBOL vmlinux 0x96197c32 proc_symlink +EXPORT_SYMBOL vmlinux 0x9682bb37 ps2_end_command +EXPORT_SYMBOL vmlinux 0x969c0f35 acpi_processor_unregister_performance +EXPORT_SYMBOL vmlinux 0x96b29254 strncasecmp +EXPORT_SYMBOL vmlinux 0x96c62a92 con_copy_unimap +EXPORT_SYMBOL vmlinux 0x96c7278c __serio_register_driver +EXPORT_SYMBOL vmlinux 0x96cbcc81 ipmi_get_version +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96d3092d pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0x96e62544 __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0x97149172 tcf_hash_search +EXPORT_SYMBOL vmlinux 0x9725b589 proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0x972e4028 dmam_pool_create +EXPORT_SYMBOL vmlinux 0x973fa82e register_acpi_notifier +EXPORT_SYMBOL vmlinux 0x97454898 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x9754ec10 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x977f5891 generic_file_remap_pages +EXPORT_SYMBOL vmlinux 0x97868aef __kfifo_alloc +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x97a60e3d param_get_bool +EXPORT_SYMBOL vmlinux 0x97be523b xfrm_input +EXPORT_SYMBOL vmlinux 0x97c5bd0a acpi_unload_parent_table +EXPORT_SYMBOL vmlinux 0x97cf29fe jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0x97d4fde2 bio_integrity_set_tag +EXPORT_SYMBOL vmlinux 0x97de0ddd acpi_install_gpe_block +EXPORT_SYMBOL vmlinux 0x97df4cc7 make_kgid +EXPORT_SYMBOL vmlinux 0x97f86762 udp_seq_open +EXPORT_SYMBOL vmlinux 0x9820b644 warn_slowpath_fmt_taint +EXPORT_SYMBOL vmlinux 0x98231fc7 dput +EXPORT_SYMBOL vmlinux 0x9829fc11 __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0x982b3f7c __xfrm_init_state +EXPORT_SYMBOL vmlinux 0x9837d390 neigh_seq_next +EXPORT_SYMBOL vmlinux 0x986e6135 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x9873cb14 cancel_dirty_page +EXPORT_SYMBOL vmlinux 0x988da6be agp_put_bridge +EXPORT_SYMBOL vmlinux 0x988dca1e mark_page_accessed +EXPORT_SYMBOL vmlinux 0x988ed85d set_memory_x +EXPORT_SYMBOL vmlinux 0x989e4664 fb_find_mode +EXPORT_SYMBOL vmlinux 0x98a7b209 __pskb_copy +EXPORT_SYMBOL vmlinux 0x98fa21b0 mod_timer_pinned +EXPORT_SYMBOL vmlinux 0x99195078 vsnprintf +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x99535fd4 pm860x_page_reg_read +EXPORT_SYMBOL vmlinux 0x99591a7a ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x99658395 pci_target_state +EXPORT_SYMBOL vmlinux 0x9989c73b phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0x998f5092 commit_creds +EXPORT_SYMBOL vmlinux 0x9994c0ca ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99a8fa79 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0x99a96494 __neigh_create +EXPORT_SYMBOL vmlinux 0x99c0ac58 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0x99cdc86b sysctl_tcp_reordering +EXPORT_SYMBOL vmlinux 0x99d3a43c dm_table_get_size +EXPORT_SYMBOL vmlinux 0x99d8bf9a tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0x99daa9bf try_offline_node +EXPORT_SYMBOL vmlinux 0x99e2c3c7 init_task +EXPORT_SYMBOL vmlinux 0x99f068d5 x86_cpu_to_node_map +EXPORT_SYMBOL vmlinux 0x9a065608 mutex_unlock +EXPORT_SYMBOL vmlinux 0x9a13e03a ip_route_me_harder +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a1fc4b4 jiffies_to_timeval +EXPORT_SYMBOL vmlinux 0x9a512248 alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x9a5716e2 sock_wake_async +EXPORT_SYMBOL vmlinux 0x9a5ffc64 __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x9a85e118 tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x9a8d0917 tcp_seq_open +EXPORT_SYMBOL vmlinux 0x9ad92ea0 __nla_put +EXPORT_SYMBOL vmlinux 0x9aec7184 force_sig +EXPORT_SYMBOL vmlinux 0x9af89f98 memcpy_fromiovec +EXPORT_SYMBOL vmlinux 0x9b17eb62 i2c_master_recv +EXPORT_SYMBOL vmlinux 0x9b1daf7b dev_uc_flush +EXPORT_SYMBOL vmlinux 0x9b256493 scsi_register_interface +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b388444 get_zeroed_page +EXPORT_SYMBOL vmlinux 0x9b3ce322 i2c_release_client +EXPORT_SYMBOL vmlinux 0x9b5813cd iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0x9b58c095 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0x9b680dd2 gen10g_config_aneg +EXPORT_SYMBOL vmlinux 0x9b73cf0d kernel_getsockopt +EXPORT_SYMBOL vmlinux 0x9b75cb81 _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x9b90ef94 filemap_fdatawait +EXPORT_SYMBOL vmlinux 0x9b9e05f9 alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0x9ba7089d argv_split +EXPORT_SYMBOL vmlinux 0x9bc52dd8 abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x9bd12fcf vfs_llseek +EXPORT_SYMBOL vmlinux 0x9be7bde4 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x9c061952 __netif_schedule +EXPORT_SYMBOL vmlinux 0x9c0fde8b agp_generic_free_by_type +EXPORT_SYMBOL vmlinux 0x9c2afe65 seq_release +EXPORT_SYMBOL vmlinux 0x9c2ece48 pid_task +EXPORT_SYMBOL vmlinux 0x9c3c2c50 pnp_disable_dev +EXPORT_SYMBOL vmlinux 0x9c491f60 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x9c6f105f account_page_redirty +EXPORT_SYMBOL vmlinux 0x9c995628 xfrm_register_mode +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cb04172 thermal_cdev_update +EXPORT_SYMBOL vmlinux 0x9cc74eea register_qdisc +EXPORT_SYMBOL vmlinux 0x9cc80c08 blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0x9cfd56c5 scsi_print_status +EXPORT_SYMBOL vmlinux 0x9d05da80 seq_lseek +EXPORT_SYMBOL vmlinux 0x9d05f6c4 ktime_get_clocktai +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d1a5e3a __memcpy +EXPORT_SYMBOL vmlinux 0x9d2a5714 vfs_writev +EXPORT_SYMBOL vmlinux 0x9d33ef5e acpi_enable +EXPORT_SYMBOL vmlinux 0x9d3aa376 blk_iopoll_init +EXPORT_SYMBOL vmlinux 0x9d5e46da skb_checksum +EXPORT_SYMBOL vmlinux 0x9d6c057c rtnl_notify +EXPORT_SYMBOL vmlinux 0x9d6cb81a splice_from_pipe_feed +EXPORT_SYMBOL vmlinux 0x9d7845d3 generic_show_options +EXPORT_SYMBOL vmlinux 0x9daa769a udp6_csum_init +EXPORT_SYMBOL vmlinux 0x9dbeeb85 xfrm_user_policy +EXPORT_SYMBOL vmlinux 0x9ddd5573 phy_register_fixup +EXPORT_SYMBOL vmlinux 0x9ded8430 bdi_setup_and_register +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e10ef75 kernel_setsockopt +EXPORT_SYMBOL vmlinux 0x9e2f3065 ip_route_input_noref +EXPORT_SYMBOL vmlinux 0x9e2f8c90 lz4_decompress_unknownoutputsize +EXPORT_SYMBOL vmlinux 0x9e363b6b acpi_disable_gpe +EXPORT_SYMBOL vmlinux 0x9e37407f blk_alloc_queue +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e64fbfe rtc_cmos_read +EXPORT_SYMBOL vmlinux 0x9e6c5671 sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0x9e706d74 pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0x9e7576ea __register_binfmt +EXPORT_SYMBOL vmlinux 0x9e770d02 n_tty_compat_ioctl_helper +EXPORT_SYMBOL vmlinux 0x9e7d6bd0 __udelay +EXPORT_SYMBOL vmlinux 0x9e838d91 bio_integrity_tag_size +EXPORT_SYMBOL vmlinux 0x9e910044 ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0x9e93df95 bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x9e95e55f bio_copy_kern +EXPORT_SYMBOL vmlinux 0x9e9f1714 __bitmap_andnot +EXPORT_SYMBOL vmlinux 0x9ea0ad49 __sg_free_table +EXPORT_SYMBOL vmlinux 0x9ebd4c04 adjust_resource +EXPORT_SYMBOL vmlinux 0x9ebe2401 pnp_release_card_device +EXPORT_SYMBOL vmlinux 0x9ed2eec7 param_set_ushort +EXPORT_SYMBOL vmlinux 0x9eff3a38 devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x9f1ca3b6 seq_path +EXPORT_SYMBOL vmlinux 0x9f2bdaac __bitmap_or +EXPORT_SYMBOL vmlinux 0x9f400434 flock_lock_file_wait +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f518e61 touch_atime +EXPORT_SYMBOL vmlinux 0x9f608178 blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0x9f6e19ab mem_section +EXPORT_SYMBOL vmlinux 0x9f915cec max8925_reg_write +EXPORT_SYMBOL vmlinux 0x9f92adf4 kset_register +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9f9a450c sb_set_blocksize +EXPORT_SYMBOL vmlinux 0x9f9e5f5d pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0x9fb8e625 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0x9fba6906 iterate_dir +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0x9ffc7224 netdev_lower_dev_get_private_rcu +EXPORT_SYMBOL vmlinux 0x9ffceb28 pci_disable_link_state +EXPORT_SYMBOL vmlinux 0xa00aca2a dql_completed +EXPORT_SYMBOL vmlinux 0xa03499e3 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa04484b8 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0xa04a01bd qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xa05c03df mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xa05f372e seq_printf +EXPORT_SYMBOL vmlinux 0xa07a37f0 memchr +EXPORT_SYMBOL vmlinux 0xa07ed110 xz_dec_init +EXPORT_SYMBOL vmlinux 0xa082ddae __dquot_free_space +EXPORT_SYMBOL vmlinux 0xa0834a47 gen_pool_free +EXPORT_SYMBOL vmlinux 0xa0a18f1a mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0be8a7c dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xa0c3367e vfs_path_lookup +EXPORT_SYMBOL vmlinux 0xa0ceef51 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0de534f genphy_setup_forced +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0efa2d5 jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa0fe6b3a cdev_add +EXPORT_SYMBOL vmlinux 0xa0fef049 tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0xa0ff74d6 udp_memory_allocated +EXPORT_SYMBOL vmlinux 0xa103f10b netpoll_send_skb_on_dev +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa1352aed bioset_free +EXPORT_SYMBOL vmlinux 0xa14f3d8c ewma_add +EXPORT_SYMBOL vmlinux 0xa156ea1e kern_unmount +EXPORT_SYMBOL vmlinux 0xa15e55d9 sync_blockdev +EXPORT_SYMBOL vmlinux 0xa17544f4 ip_defrag +EXPORT_SYMBOL vmlinux 0xa19437c8 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0xa1a065b7 rtmsg_ifinfo +EXPORT_SYMBOL vmlinux 0xa1b49bb6 kblockd_schedule_delayed_work +EXPORT_SYMBOL vmlinux 0xa1b759ce fb_add_videomode +EXPORT_SYMBOL vmlinux 0xa1c0533d cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0xa1c1805f netif_device_attach +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1db0747 free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0xa1f0e41c inet_accept +EXPORT_SYMBOL vmlinux 0xa202a8e5 kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0xa20bd42c phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0xa20ce1b8 net_msg_warn +EXPORT_SYMBOL vmlinux 0xa2354cb0 amd_iommu_domain_enable_v2 +EXPORT_SYMBOL vmlinux 0xa26eb81c call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0xa2848c50 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0xa28a2ace ipmi_set_gets_events +EXPORT_SYMBOL vmlinux 0xa2979cd8 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0xa2a98b91 ipmi_get_maintenance_mode +EXPORT_SYMBOL vmlinux 0xa2eab7e6 netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0xa2ef34d7 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xa2f175d4 tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0xa2f610a7 abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0xa3016b2a vga_switcheroo_init_domain_pm_optimus_hdmi_audio +EXPORT_SYMBOL vmlinux 0xa304330a set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0xa30b9541 agp_generic_free_gatt_table +EXPORT_SYMBOL vmlinux 0xa30f82cb bio_integrity_advance +EXPORT_SYMBOL vmlinux 0xa310d422 scsi_host_get +EXPORT_SYMBOL vmlinux 0xa3226703 inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0xa3377d11 kill_fasync +EXPORT_SYMBOL vmlinux 0xa33fa325 unlock_rename +EXPORT_SYMBOL vmlinux 0xa350a8f8 set_memory_array_uc +EXPORT_SYMBOL vmlinux 0xa35de80f ipv4_config +EXPORT_SYMBOL vmlinux 0xa36a710b scsi_cmd_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xa3a30816 jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0xa3a77c69 down_read_trylock +EXPORT_SYMBOL vmlinux 0xa3bf9038 posix_lock_file +EXPORT_SYMBOL vmlinux 0xa3c2ca4c tty_pair_get_pty +EXPORT_SYMBOL vmlinux 0xa3cfcf98 max8998_write_reg +EXPORT_SYMBOL vmlinux 0xa3dcd774 key_link +EXPORT_SYMBOL vmlinux 0xa3f09444 sk_send_sigurg +EXPORT_SYMBOL vmlinux 0xa3f96685 wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0xa3fc3d50 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0xa400159f crc32_be +EXPORT_SYMBOL vmlinux 0xa4068f4e free_task +EXPORT_SYMBOL vmlinux 0xa4184da2 init_special_inode +EXPORT_SYMBOL vmlinux 0xa4511467 crc16 +EXPORT_SYMBOL vmlinux 0xa459e416 iterate_supers_type +EXPORT_SYMBOL vmlinux 0xa45dd720 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0xa4701e9e timekeeping_inject_offset +EXPORT_SYMBOL vmlinux 0xa48f3f29 mmc_start_bkops +EXPORT_SYMBOL vmlinux 0xa4acfa5f dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa4bce4e2 __page_cache_alloc +EXPORT_SYMBOL vmlinux 0xa4becb71 d_move +EXPORT_SYMBOL vmlinux 0xa4d4f0e6 global_cache_flush +EXPORT_SYMBOL vmlinux 0xa4fd49b7 seq_bitmap +EXPORT_SYMBOL vmlinux 0xa4fd73a1 xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xa50a111e inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0xa5153e38 tty_pair_get_tty +EXPORT_SYMBOL vmlinux 0xa51b4536 skb_queue_tail +EXPORT_SYMBOL vmlinux 0xa51df2b4 down_killable +EXPORT_SYMBOL vmlinux 0xa520067c skb_copy +EXPORT_SYMBOL vmlinux 0xa5229b84 pci_request_region_exclusive +EXPORT_SYMBOL vmlinux 0xa5387eee set_groups +EXPORT_SYMBOL vmlinux 0xa53c85ed try_to_writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xa5504830 ppp_input_error +EXPORT_SYMBOL vmlinux 0xa5510c1d file_ns_capable +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa5571dc7 first_ec +EXPORT_SYMBOL vmlinux 0xa571b97f kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0xa57547d0 qdisc_list_del +EXPORT_SYMBOL vmlinux 0xa578c8b9 neigh_parms_release +EXPORT_SYMBOL vmlinux 0xa58a3166 lg_local_lock +EXPORT_SYMBOL vmlinux 0xa598e29c vesa_modes +EXPORT_SYMBOL vmlinux 0xa5a35310 ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0xa5cb6045 ftrace_raw_output_prep +EXPORT_SYMBOL vmlinux 0xa5e4f65c __next_cpu_nr +EXPORT_SYMBOL vmlinux 0xa63a2f9b param_get_ulong +EXPORT_SYMBOL vmlinux 0xa63d85ab slhc_remember +EXPORT_SYMBOL vmlinux 0xa6447cfd __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0xa654fd11 inet6_bind +EXPORT_SYMBOL vmlinux 0xa6715115 do_settimeofday +EXPORT_SYMBOL vmlinux 0xa675804c utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0xa6771656 blk_peek_request +EXPORT_SYMBOL vmlinux 0xa67b9453 input_register_device +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa68f83f3 security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0xa698b53b noop_llseek +EXPORT_SYMBOL vmlinux 0xa69b5ec3 set_bh_page +EXPORT_SYMBOL vmlinux 0xa6bd63ca acpi_bios_error +EXPORT_SYMBOL vmlinux 0xa6c70793 blk_queue_bounce +EXPORT_SYMBOL vmlinux 0xa6cf6154 uart_suspend_port +EXPORT_SYMBOL vmlinux 0xa6d378a9 inet_sendpage +EXPORT_SYMBOL vmlinux 0xa6e6e042 inet6_add_offload +EXPORT_SYMBOL vmlinux 0xa7033701 find_get_pages_contig +EXPORT_SYMBOL vmlinux 0xa70987d6 address_space_init_once +EXPORT_SYMBOL vmlinux 0xa70fabbe release_evntsel_nmi +EXPORT_SYMBOL vmlinux 0xa72a0f5b nr_online_nodes +EXPORT_SYMBOL vmlinux 0xa735db59 prandom_u32 +EXPORT_SYMBOL vmlinux 0xa7628731 ata_link_printk +EXPORT_SYMBOL vmlinux 0xa76b0aff tcp_syn_flood_action +EXPORT_SYMBOL vmlinux 0xa78099f3 dev_mc_init +EXPORT_SYMBOL vmlinux 0xa780e897 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0xa7924d66 pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0xa7b757e2 sock_i_ino +EXPORT_SYMBOL vmlinux 0xa7cd5716 pm860x_reg_write +EXPORT_SYMBOL vmlinux 0xa80e4354 lro_receive_frags +EXPORT_SYMBOL vmlinux 0xa8130c50 set_pages_array_wc +EXPORT_SYMBOL vmlinux 0xa81b7a0c would_dump +EXPORT_SYMBOL vmlinux 0xa8231761 bio_map_user +EXPORT_SYMBOL vmlinux 0xa8232c78 strtobool +EXPORT_SYMBOL vmlinux 0xa82e3a74 pnp_register_card_driver +EXPORT_SYMBOL vmlinux 0xa8335ffd kmalloc_caches +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa86ba7b5 padata_register_cpumask_notifier +EXPORT_SYMBOL vmlinux 0xa8721b97 system_state +EXPORT_SYMBOL vmlinux 0xa896fcca pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0xa8a0d963 vfs_rename +EXPORT_SYMBOL vmlinux 0xa8a6f639 __check_region +EXPORT_SYMBOL vmlinux 0xa8ba0e58 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0xa8c90dc0 netdev_crit +EXPORT_SYMBOL vmlinux 0xa8ed99ed tty_port_tty_get +EXPORT_SYMBOL vmlinux 0xa8fef7bb security_unix_may_send +EXPORT_SYMBOL vmlinux 0xa916b694 strnlen +EXPORT_SYMBOL vmlinux 0xa91b5561 acpi_video_backlight_support +EXPORT_SYMBOL vmlinux 0xa921c174 pci_vpd_truncate +EXPORT_SYMBOL vmlinux 0xa92c2f10 __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0xa94afbfb default_file_splice_read +EXPORT_SYMBOL vmlinux 0xa95435f9 do_truncate +EXPORT_SYMBOL vmlinux 0xa95d3cdb gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0xa960280b pm860x_page_set_bits +EXPORT_SYMBOL vmlinux 0xa9603bcf spi_release_transport +EXPORT_SYMBOL vmlinux 0xa9649ba3 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0xa981fa2d iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0xa9a8e17f arch_phys_wc_add +EXPORT_SYMBOL vmlinux 0xa9acd5cb nf_register_hooks +EXPORT_SYMBOL vmlinux 0xa9b3698b pcim_iounmap +EXPORT_SYMBOL vmlinux 0xa9bd2676 __vmalloc +EXPORT_SYMBOL vmlinux 0xa9ceee6c eth_type_trans +EXPORT_SYMBOL vmlinux 0xa9d8f55e ida_simple_remove +EXPORT_SYMBOL vmlinux 0xa9db9a8a tcf_hash_create +EXPORT_SYMBOL vmlinux 0xaa0036dc get_write_access +EXPORT_SYMBOL vmlinux 0xaa0073b7 __net_get_random_once +EXPORT_SYMBOL vmlinux 0xaa203886 acpi_bus_register_driver +EXPORT_SYMBOL vmlinux 0xaa465be7 vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0xaa5e9da1 dev_get_by_index +EXPORT_SYMBOL vmlinux 0xaa6c68c0 simple_transaction_read +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa9087c0 param_ops_string +EXPORT_SYMBOL vmlinux 0xaa91b03e __bio_clone +EXPORT_SYMBOL vmlinux 0xaaa910ac page_put_link +EXPORT_SYMBOL vmlinux 0xaab9c012 nf_register_hook +EXPORT_SYMBOL vmlinux 0xaabba132 cdrom_ioctl +EXPORT_SYMBOL vmlinux 0xaac0d135 fb_get_mode +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaad88b0e send_sig_info +EXPORT_SYMBOL vmlinux 0xaae0601a ata_dev_printk +EXPORT_SYMBOL vmlinux 0xaae8ab0e acpi_bus_power_manageable +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab2abddf dma_spin_lock +EXPORT_SYMBOL vmlinux 0xab2d9f64 netdev_emerg +EXPORT_SYMBOL vmlinux 0xab3e08cb tcp_read_sock +EXPORT_SYMBOL vmlinux 0xab600421 probe_irq_off +EXPORT_SYMBOL vmlinux 0xab622c5b __ip_dev_find +EXPORT_SYMBOL vmlinux 0xab65ed80 set_memory_uc +EXPORT_SYMBOL vmlinux 0xab6bde28 sysctl_max_syn_backlog +EXPORT_SYMBOL vmlinux 0xab753512 inet_del_offload +EXPORT_SYMBOL vmlinux 0xab770678 rdmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab7d609b neigh_direct_output +EXPORT_SYMBOL vmlinux 0xabae5259 max8998_bulk_write +EXPORT_SYMBOL vmlinux 0xabbab2c6 scsi_ioctl +EXPORT_SYMBOL vmlinux 0xabc6dd63 cpufreq_sysfs_create_file +EXPORT_SYMBOL vmlinux 0xabcaa577 free_anon_bdev +EXPORT_SYMBOL vmlinux 0xabd0c91c rtc_time_to_tm +EXPORT_SYMBOL vmlinux 0xabe9fb05 vga_switcheroo_register_client +EXPORT_SYMBOL vmlinux 0xabf2bf86 xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0xac04fbbb inode_add_rsv_space +EXPORT_SYMBOL vmlinux 0xac074211 scsi_dma_map +EXPORT_SYMBOL vmlinux 0xac0907bc __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0xac0ba8c1 blk_iopoll_disable +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac2d7fdc cap_mmap_file +EXPORT_SYMBOL vmlinux 0xac2fd216 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0xac3a529f register_framebuffer +EXPORT_SYMBOL vmlinux 0xac3d20e2 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xac53cc5f tcp_make_synack +EXPORT_SYMBOL vmlinux 0xac58ea5e acpi_unload_table_id +EXPORT_SYMBOL vmlinux 0xac85e0fa d_add_ci +EXPORT_SYMBOL vmlinux 0xaca37516 bio_integrity_trim +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacaca610 generic_pipe_buf_steal +EXPORT_SYMBOL vmlinux 0xacb2cbeb simple_write_end +EXPORT_SYMBOL vmlinux 0xaccabc6a in4_pton +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xacf9e403 pci_pme_active +EXPORT_SYMBOL vmlinux 0xad01744f kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad094734 sk_run_filter +EXPORT_SYMBOL vmlinux 0xad115989 set_pages_array_wb +EXPORT_SYMBOL vmlinux 0xad13c689 acpi_os_execute +EXPORT_SYMBOL vmlinux 0xad164875 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xad2a8bd2 x86_bios_cpu_apicid +EXPORT_SYMBOL vmlinux 0xad4dc32f ip6_xmit +EXPORT_SYMBOL vmlinux 0xad4fc78e con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xad6330ec sync_inodes_sb +EXPORT_SYMBOL vmlinux 0xad6bbe9a pnpacpi_protocol +EXPORT_SYMBOL vmlinux 0xad7450a3 kill_pid +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xadaad876 find_vma +EXPORT_SYMBOL vmlinux 0xadc57519 cfb_imageblit +EXPORT_SYMBOL vmlinux 0xadeb6a4a blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0xae11ff64 phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0xae26cb88 kdb_current_task +EXPORT_SYMBOL vmlinux 0xae290d3d clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0xae2f669d sock_no_socketpair +EXPORT_SYMBOL vmlinux 0xae3d024c dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0xae729e59 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xae972f81 fsnotify_alloc_group +EXPORT_SYMBOL vmlinux 0xaea7062b scsi_device_lookup +EXPORT_SYMBOL vmlinux 0xaea976a8 acpi_check_resource_conflict +EXPORT_SYMBOL vmlinux 0xaec35eae nlmsg_notify +EXPORT_SYMBOL vmlinux 0xaeca9e1a tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0xaeccac1a nf_log_unregister +EXPORT_SYMBOL vmlinux 0xaee916d7 pcie_get_minimum_link +EXPORT_SYMBOL vmlinux 0xaeea0d05 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xaf0401e1 bdi_init +EXPORT_SYMBOL vmlinux 0xaf0921a2 scsi_device_get +EXPORT_SYMBOL vmlinux 0xaf2da96d agp_generic_insert_memory +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf3fce0a netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0xaf41d23a netdev_state_change +EXPORT_SYMBOL vmlinux 0xaf4572f7 bdi_destroy +EXPORT_SYMBOL vmlinux 0xaf587b52 amd_iommu_flush_page +EXPORT_SYMBOL vmlinux 0xaf611eac amd_nb_misc_ids +EXPORT_SYMBOL vmlinux 0xaf64ad0d zlib_deflate +EXPORT_SYMBOL vmlinux 0xaf67cd1a dm_get_mapinfo +EXPORT_SYMBOL vmlinux 0xaf6ae696 kstrndup +EXPORT_SYMBOL vmlinux 0xaf8e887e dev_load +EXPORT_SYMBOL vmlinux 0xaf91d89f __kernel_param_lock +EXPORT_SYMBOL vmlinux 0xafad493b param_ops_ushort +EXPORT_SYMBOL vmlinux 0xafb392d3 blk_start_queue +EXPORT_SYMBOL vmlinux 0xafb8c6ff copy_user_generic_string +EXPORT_SYMBOL vmlinux 0xafd5ff2c amd_iommu_v2_supported +EXPORT_SYMBOL vmlinux 0xb01b1db8 intel_gtt_insert_sg_entries +EXPORT_SYMBOL vmlinux 0xb0275b38 agp_free_memory +EXPORT_SYMBOL vmlinux 0xb037b361 update_time +EXPORT_SYMBOL vmlinux 0xb04b17c5 end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb0608310 pci_bus_get +EXPORT_SYMBOL vmlinux 0xb06fa887 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0xb07807ae md_check_recovery +EXPORT_SYMBOL vmlinux 0xb07e1b2d sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0ad4611 __blk_run_queue +EXPORT_SYMBOL vmlinux 0xb0b847ac __bitmap_full +EXPORT_SYMBOL vmlinux 0xb0d94c01 pcim_iomap_table +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0e602eb memmove +EXPORT_SYMBOL vmlinux 0xb0ffda2f blk_limits_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xb10e0275 dma_async_memcpy_pg_to_pg +EXPORT_SYMBOL vmlinux 0xb121390a probe_irq_on +EXPORT_SYMBOL vmlinux 0xb1270bcb bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb138d0bf dm_ratelimit_state +EXPORT_SYMBOL vmlinux 0xb1397d69 twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0xb140f088 generic_block_bmap +EXPORT_SYMBOL vmlinux 0xb15bb760 icmpv6_send +EXPORT_SYMBOL vmlinux 0xb1645a2e sg_free_table +EXPORT_SYMBOL vmlinux 0xb16fda61 locks_remove_posix +EXPORT_SYMBOL vmlinux 0xb1721457 spi_schedule_dv_device +EXPORT_SYMBOL vmlinux 0xb19760c3 bitmap_onto +EXPORT_SYMBOL vmlinux 0xb1b42470 idr_init +EXPORT_SYMBOL vmlinux 0xb1b53f84 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0xb1bc6c11 crypto_sha1_update +EXPORT_SYMBOL vmlinux 0xb1c1e371 max8998_update_reg +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1c6b434 from_kprojid +EXPORT_SYMBOL vmlinux 0xb1ca547f audit_log_task_info +EXPORT_SYMBOL vmlinux 0xb1cf44df fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xb1cfad22 rdmsr_on_cpu +EXPORT_SYMBOL vmlinux 0xb1db9e4e param_get_invbool +EXPORT_SYMBOL vmlinux 0xb1e298d8 md_unregister_thread +EXPORT_SYMBOL vmlinux 0xb20ecf88 acpi_run_osc +EXPORT_SYMBOL vmlinux 0xb212633f fddi_change_mtu +EXPORT_SYMBOL vmlinux 0xb2150b05 __splice_from_pipe +EXPORT_SYMBOL vmlinux 0xb219d56c wbinvd_on_cpu +EXPORT_SYMBOL vmlinux 0xb2254486 generic_shutdown_super +EXPORT_SYMBOL vmlinux 0xb2481397 PDE_DATA +EXPORT_SYMBOL vmlinux 0xb248f23f dm_io +EXPORT_SYMBOL vmlinux 0xb25c67f3 pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0xb2682405 utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0xb297f36b unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0xb2adee7a filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0xb2b689ec seq_write +EXPORT_SYMBOL vmlinux 0xb2be6e92 netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xb2c02b3b alloc_fcdev +EXPORT_SYMBOL vmlinux 0xb2dab6bc rtnl_unicast +EXPORT_SYMBOL vmlinux 0xb2e08e7b lg_local_unlock_cpu +EXPORT_SYMBOL vmlinux 0xb2f74fb6 intel_gmch_remove +EXPORT_SYMBOL vmlinux 0xb2fd5ceb __put_user_4 +EXPORT_SYMBOL vmlinux 0xb314c69d mdio_bus_type +EXPORT_SYMBOL vmlinux 0xb3284531 acpi_dbg_layer +EXPORT_SYMBOL vmlinux 0xb3360a79 vga_tryget +EXPORT_SYMBOL vmlinux 0xb342fc1b inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0xb352177e find_first_bit +EXPORT_SYMBOL vmlinux 0xb3529f2e genphy_resume +EXPORT_SYMBOL vmlinux 0xb354ce10 dma_find_channel +EXPORT_SYMBOL vmlinux 0xb35e47c1 dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0xb361825c free_user_ns +EXPORT_SYMBOL vmlinux 0xb37c5ac0 blk_queue_make_request +EXPORT_SYMBOL vmlinux 0xb3818e6e __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xb3bc0eb9 mmc_erase +EXPORT_SYMBOL vmlinux 0xb3c8fb99 call_netdevice_notifiers_info +EXPORT_SYMBOL vmlinux 0xb3dd2bb4 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb405d3a1 dev_set_drvdata +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb428cfbc twl6040_reg_read +EXPORT_SYMBOL vmlinux 0xb4709322 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0xb47189b5 reservation_ww_class +EXPORT_SYMBOL vmlinux 0xb4741279 arch_debugfs_dir +EXPORT_SYMBOL vmlinux 0xb4816ba7 rfkill_alloc +EXPORT_SYMBOL vmlinux 0xb485b572 generic_permission +EXPORT_SYMBOL vmlinux 0xb48eb3c6 scsi_register_driver +EXPORT_SYMBOL vmlinux 0xb49d8c05 cookie_check_timestamp +EXPORT_SYMBOL vmlinux 0xb4af2dec cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0xb4cfe503 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0xb4d88abc __devm_release_region +EXPORT_SYMBOL vmlinux 0xb4e068a9 cfb_fillrect +EXPORT_SYMBOL vmlinux 0xb4f82d68 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0xb524cf31 pci_iomap +EXPORT_SYMBOL vmlinux 0xb52ee8be intel_gtt_clear_range +EXPORT_SYMBOL vmlinux 0xb54533f7 usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xb54db555 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0xb56765ac jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0xb56d540e sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb57f2457 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5ad0d82 bioset_integrity_create +EXPORT_SYMBOL vmlinux 0xb5ca1c46 slhc_free +EXPORT_SYMBOL vmlinux 0xb5dcab5b remove_wait_queue +EXPORT_SYMBOL vmlinux 0xb6244511 sg_init_one +EXPORT_SYMBOL vmlinux 0xb62e209c pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0xb6394d4b param_set_bint +EXPORT_SYMBOL vmlinux 0xb647cc11 shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0xb65f4a9d kill_anon_super +EXPORT_SYMBOL vmlinux 0xb66c8b65 scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xb672c703 revalidate_disk +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb6822a33 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0xb68fc57b dcache_dir_open +EXPORT_SYMBOL vmlinux 0xb690725c neigh_for_each +EXPORT_SYMBOL vmlinux 0xb69325ff vsc824x_add_skew +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6b46a7c param_ops_int +EXPORT_SYMBOL vmlinux 0xb6c5a973 scsi_show_result +EXPORT_SYMBOL vmlinux 0xb6cbe886 acpi_get_node +EXPORT_SYMBOL vmlinux 0xb6fe1e50 scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0xb7107073 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0xb72c034f xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0xb73523f0 __break_lease +EXPORT_SYMBOL vmlinux 0xb73ff4da pci_dev_get +EXPORT_SYMBOL vmlinux 0xb7516583 nf_log_set +EXPORT_SYMBOL vmlinux 0xb758b225 acpi_disable_event +EXPORT_SYMBOL vmlinux 0xb77131b1 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0xb7bf62cf pci_dev_put +EXPORT_SYMBOL vmlinux 0xb7c4ee7f set_pages_nx +EXPORT_SYMBOL vmlinux 0xb7f37aa0 dev_alert +EXPORT_SYMBOL vmlinux 0xb7f47feb inode_sb_list_lock +EXPORT_SYMBOL vmlinux 0xb80aeb90 acpi_pm_device_sleep_state +EXPORT_SYMBOL vmlinux 0xb812a34c inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0xb834bf14 pnp_get_resource +EXPORT_SYMBOL vmlinux 0xb835b3e4 radix_tree_prev_hole +EXPORT_SYMBOL vmlinux 0xb8385ce6 pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0xb8411589 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0xb85327df pnp_device_attach +EXPORT_SYMBOL vmlinux 0xb874b87a __clzsi2 +EXPORT_SYMBOL vmlinux 0xb8936724 bitmap_unplug +EXPORT_SYMBOL vmlinux 0xb8b3a41d tty_unlock +EXPORT_SYMBOL vmlinux 0xb8c4b812 pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0xb8d73e97 param_set_uint +EXPORT_SYMBOL vmlinux 0xb8e7ce2c __put_user_8 +EXPORT_SYMBOL vmlinux 0xb8f0cfe0 jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0xb907513f unpoison_memory +EXPORT_SYMBOL vmlinux 0xb9249d16 cpu_possible_mask +EXPORT_SYMBOL vmlinux 0xb939f545 netdev_info +EXPORT_SYMBOL vmlinux 0xb9509ced __mmc_claim_host +EXPORT_SYMBOL vmlinux 0xb96162e4 unmap_underlying_metadata +EXPORT_SYMBOL vmlinux 0xb97a36ee tty_free_termios +EXPORT_SYMBOL vmlinux 0xb9824446 mmc_can_erase +EXPORT_SYMBOL vmlinux 0xb98a0185 rtc_tm_to_time +EXPORT_SYMBOL vmlinux 0xb999b526 dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0xb9b4e181 alloc_pages_exact_nid +EXPORT_SYMBOL vmlinux 0xb9c3be69 set_device_ro +EXPORT_SYMBOL vmlinux 0xb9c88580 udp_add_offload +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xb9fd2205 add_efi_memmap +EXPORT_SYMBOL vmlinux 0xba028156 inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0xba1032b1 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0xba164058 agp_generic_alloc_page +EXPORT_SYMBOL vmlinux 0xba2d8594 ec_read +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba6288d8 block_page_mkwrite +EXPORT_SYMBOL vmlinux 0xba63339c _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0xba67cb57 scsi_setup_blk_pc_cmnd +EXPORT_SYMBOL vmlinux 0xba8a4cd6 key_invalidate +EXPORT_SYMBOL vmlinux 0xba95b342 vfs_rmdir +EXPORT_SYMBOL vmlinux 0xba9b8c42 set_create_files_as +EXPORT_SYMBOL vmlinux 0xbaa8029e rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0xbac89731 kernel_getpeername +EXPORT_SYMBOL vmlinux 0xbad9d73f lro_receive_skb +EXPORT_SYMBOL vmlinux 0xbaf516f3 _dev_info +EXPORT_SYMBOL vmlinux 0xbb189cad disallow_signal +EXPORT_SYMBOL vmlinux 0xbb2189f7 ilookup5_nowait +EXPORT_SYMBOL vmlinux 0xbb31592b pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0xbb478f8d __pagevec_lru_add +EXPORT_SYMBOL vmlinux 0xbb4e0165 compat_mc_getsockopt +EXPORT_SYMBOL vmlinux 0xbb4f0afc bio_unmap_user +EXPORT_SYMBOL vmlinux 0xbb4f4766 simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0xbb5d343d xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xbb713e6d sk_filter_release_rcu +EXPORT_SYMBOL vmlinux 0xbb99125c get_default_font +EXPORT_SYMBOL vmlinux 0xbbaeb559 memcg_socket_limit_enabled +EXPORT_SYMBOL vmlinux 0xbbc89414 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0xbbca4b63 jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0xbbcf5800 skb_kill_datagram +EXPORT_SYMBOL vmlinux 0xbbdb77e0 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0xbbf3c02e tcf_action_exec +EXPORT_SYMBOL vmlinux 0xbbfcaca5 bit_waitqueue +EXPORT_SYMBOL vmlinux 0xbc03408d d_find_any_alias +EXPORT_SYMBOL vmlinux 0xbc2031de acpi_processor_get_bios_limit +EXPORT_SYMBOL vmlinux 0xbc2978e9 lg_global_lock +EXPORT_SYMBOL vmlinux 0xbc76c97d dev_add_pack +EXPORT_SYMBOL vmlinux 0xbca7c791 __pagevec_release +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbcdf606b i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0xbce83bae phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0xbceaf3aa tty_hung_up_p +EXPORT_SYMBOL vmlinux 0xbd100793 cpu_online_mask +EXPORT_SYMBOL vmlinux 0xbd116d30 __napi_complete +EXPORT_SYMBOL vmlinux 0xbd21cc60 ilookup +EXPORT_SYMBOL vmlinux 0xbd318c45 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0xbd318f90 pci_find_capability +EXPORT_SYMBOL vmlinux 0xbd462b55 __kfifo_init +EXPORT_SYMBOL vmlinux 0xbd506336 wait_on_page_bit +EXPORT_SYMBOL vmlinux 0xbd52f62e mb_cache_destroy +EXPORT_SYMBOL vmlinux 0xbd53ee86 kernel_read +EXPORT_SYMBOL vmlinux 0xbd57da66 mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0xbd740c20 bdgrab +EXPORT_SYMBOL vmlinux 0xbd75ba99 tcp_proc_register +EXPORT_SYMBOL vmlinux 0xbd7ac3bf alloc_fddidev +EXPORT_SYMBOL vmlinux 0xbd8bee00 mmc_set_blockcount +EXPORT_SYMBOL vmlinux 0xbd91c600 input_register_handle +EXPORT_SYMBOL vmlinux 0xbdaf5b07 acpi_os_read_port +EXPORT_SYMBOL vmlinux 0xbdb01713 phy_print_status +EXPORT_SYMBOL vmlinux 0xbdbd1e63 simple_rename +EXPORT_SYMBOL vmlinux 0xbdc026e8 swiotlb_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0xbdcdb2b4 jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0xbdd987a5 bitmap_end_sync +EXPORT_SYMBOL vmlinux 0xbddd1508 inet6_register_protosw +EXPORT_SYMBOL vmlinux 0xbdfb6dbb __fentry__ +EXPORT_SYMBOL vmlinux 0xbe0df304 rtnl_create_link +EXPORT_SYMBOL vmlinux 0xbe18153d try_wait_for_completion +EXPORT_SYMBOL vmlinux 0xbe1879f4 phy_detach +EXPORT_SYMBOL vmlinux 0xbe2c0274 add_timer +EXPORT_SYMBOL vmlinux 0xbe3b4817 phy_driver_register +EXPORT_SYMBOL vmlinux 0xbe4a9512 ps2_init +EXPORT_SYMBOL vmlinux 0xbe525d43 ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0xbe68b0f1 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0xbe92a3f2 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0xbec30d05 x86_match_cpu +EXPORT_SYMBOL vmlinux 0xbedd909f inet_recvmsg +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbef6625c blk_run_queue_async +EXPORT_SYMBOL vmlinux 0xbefb6681 scsi_prep_state_check +EXPORT_SYMBOL vmlinux 0xbeffbbf1 n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0xbf04609b netlink_kernel_release +EXPORT_SYMBOL vmlinux 0xbf106046 md_write_start +EXPORT_SYMBOL vmlinux 0xbf16bcd4 set_pages_uc +EXPORT_SYMBOL vmlinux 0xbf41192e mfd_add_devices +EXPORT_SYMBOL vmlinux 0xbf78731f mmc_align_data_size +EXPORT_SYMBOL vmlinux 0xbf7fd2f5 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0xbf8ba54a vprintk +EXPORT_SYMBOL vmlinux 0xbf8da025 lro_flush_all +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfaf70ca pci_read_vpd +EXPORT_SYMBOL vmlinux 0xbfb8a804 generic_listxattr +EXPORT_SYMBOL vmlinux 0xbfbcd528 wireless_spy_update +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfc7f913 ipmi_register_smi +EXPORT_SYMBOL vmlinux 0xbfd2526b pci_set_power_state +EXPORT_SYMBOL vmlinux 0xbfde688a md_set_array_sectors +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xbff1def6 security_path_mknod +EXPORT_SYMBOL vmlinux 0xc0035d1e do_splice_to +EXPORT_SYMBOL vmlinux 0xc01cf848 _raw_read_lock +EXPORT_SYMBOL vmlinux 0xc02a7fd3 dquot_alloc +EXPORT_SYMBOL vmlinux 0xc02cf69b clkdev_drop +EXPORT_SYMBOL vmlinux 0xc03ae908 zero_fill_bio +EXPORT_SYMBOL vmlinux 0xc0562878 eth_mac_addr +EXPORT_SYMBOL vmlinux 0xc0608f5a blk_init_queue +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc07fb711 scsi_put_command +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0b3138f current_task +EXPORT_SYMBOL vmlinux 0xc0b4e989 tcf_hash_insert +EXPORT_SYMBOL vmlinux 0xc0ca9006 vc_resize +EXPORT_SYMBOL vmlinux 0xc0cfdeb4 set_security_override +EXPORT_SYMBOL vmlinux 0xc0e0ff2c __frontswap_store +EXPORT_SYMBOL vmlinux 0xc0ef5da5 jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0xc0f1c1e0 scsi_host_set_state +EXPORT_SYMBOL vmlinux 0xc106069d __skb_checksum +EXPORT_SYMBOL vmlinux 0xc10f4a57 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0xc12b1a42 unregister_cdrom +EXPORT_SYMBOL vmlinux 0xc14aaa16 mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0xc14c7987 neigh_event_ns +EXPORT_SYMBOL vmlinux 0xc18ed5bd bmap +EXPORT_SYMBOL vmlinux 0xc1aa7901 dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0xc1b943a3 generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0xc1c2dd09 __hw_addr_flush +EXPORT_SYMBOL vmlinux 0xc1dd0a78 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0xc1de26cb mb_cache_shrink +EXPORT_SYMBOL vmlinux 0xc1e0bf55 __insert_inode_hash +EXPORT_SYMBOL vmlinux 0xc1f8a6ce poll_freewait +EXPORT_SYMBOL vmlinux 0xc2087a14 ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0xc22b3bee input_close_device +EXPORT_SYMBOL vmlinux 0xc232313a neigh_compat_output +EXPORT_SYMBOL vmlinux 0xc2424641 agp3_generic_cleanup +EXPORT_SYMBOL vmlinux 0xc2543d46 pci_restore_state +EXPORT_SYMBOL vmlinux 0xc256e762 __bitmap_equal +EXPORT_SYMBOL vmlinux 0xc271a48d skb_copy_datagram_iovec +EXPORT_SYMBOL vmlinux 0xc274759c bio_copy_data +EXPORT_SYMBOL vmlinux 0xc276040b input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0xc277cb04 abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0xc2798e40 set_user_nice +EXPORT_SYMBOL vmlinux 0xc2943e07 swiotlb_unmap_sg +EXPORT_SYMBOL vmlinux 0xc29a71b1 ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0xc29bf967 strspn +EXPORT_SYMBOL vmlinux 0xc2a6d9f3 icmp_send +EXPORT_SYMBOL vmlinux 0xc2b2d48f ip_options_compile +EXPORT_SYMBOL vmlinux 0xc2b2d7c0 d_find_alias +EXPORT_SYMBOL vmlinux 0xc2b53036 __scsi_put_command +EXPORT_SYMBOL vmlinux 0xc2e0e6e1 f_setown +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2f585b9 make_kuid +EXPORT_SYMBOL vmlinux 0xc2f9c045 timespec_to_jiffies +EXPORT_SYMBOL vmlinux 0xc302c779 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0xc310b981 strnstr +EXPORT_SYMBOL vmlinux 0xc31a9d59 remove_proc_entry +EXPORT_SYMBOL vmlinux 0xc3270b30 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0xc32a6f59 vm_insert_mixed +EXPORT_SYMBOL vmlinux 0xc32e661f __blk_end_request_cur +EXPORT_SYMBOL vmlinux 0xc3561354 ip6_expire_frag_queue +EXPORT_SYMBOL vmlinux 0xc35a6a00 seq_puts +EXPORT_SYMBOL vmlinux 0xc3670ed4 scsi_adjust_queue_depth +EXPORT_SYMBOL vmlinux 0xc36733ec nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0xc371bef5 fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0xc39d8218 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0xc3a35ec8 mdiobus_register +EXPORT_SYMBOL vmlinux 0xc3a84a5b tty_register_device +EXPORT_SYMBOL vmlinux 0xc3aaf0a9 __put_user_1 +EXPORT_SYMBOL vmlinux 0xc3afa988 arp_send +EXPORT_SYMBOL vmlinux 0xc3cef7dd free_netdev +EXPORT_SYMBOL vmlinux 0xc42f4cf2 jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0xc43218d3 kfree_skb_partial +EXPORT_SYMBOL vmlinux 0xc4630b34 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0xc48307db lz4_decompress +EXPORT_SYMBOL vmlinux 0xc499ae1e kstrdup +EXPORT_SYMBOL vmlinux 0xc4a67e90 tty_port_put +EXPORT_SYMBOL vmlinux 0xc4bc1bf1 bitmap_startwrite +EXPORT_SYMBOL vmlinux 0xc4c27345 compat_ip_setsockopt +EXPORT_SYMBOL vmlinux 0xc4d2314c vm_event_states +EXPORT_SYMBOL vmlinux 0xc4d462e3 dev_close +EXPORT_SYMBOL vmlinux 0xc4d983f4 ppp_unit_number +EXPORT_SYMBOL vmlinux 0xc4e42f9c eth_rebuild_header +EXPORT_SYMBOL vmlinux 0xc507c110 dqput +EXPORT_SYMBOL vmlinux 0xc517bc6c mdiobus_write +EXPORT_SYMBOL vmlinux 0xc52cdf62 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0xc5534d64 ioread16 +EXPORT_SYMBOL vmlinux 0xc5570511 dev_printk_emit +EXPORT_SYMBOL vmlinux 0xc558530d profile_pc +EXPORT_SYMBOL vmlinux 0xc56aa54e scsi_print_result +EXPORT_SYMBOL vmlinux 0xc589e044 param_set_long +EXPORT_SYMBOL vmlinux 0xc58a1984 generic_readlink +EXPORT_SYMBOL vmlinux 0xc5c010d2 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0xc5c1e06f input_inject_event +EXPORT_SYMBOL vmlinux 0xc5d9c46c agp_try_unsupported_boot +EXPORT_SYMBOL vmlinux 0xc5fdef94 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc63735eb netdev_alert +EXPORT_SYMBOL vmlinux 0xc65abeb7 agp3_generic_sizes +EXPORT_SYMBOL vmlinux 0xc65af985 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0xc666a132 crc_t10dif +EXPORT_SYMBOL vmlinux 0xc6757177 sg_miter_start +EXPORT_SYMBOL vmlinux 0xc686b6a6 serial8250_do_pm +EXPORT_SYMBOL vmlinux 0xc697bb5a generic_pipe_buf_map +EXPORT_SYMBOL vmlinux 0xc6a66180 rwsem_wake +EXPORT_SYMBOL vmlinux 0xc6a9662b md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0xc6b368d3 acpi_gpe_count +EXPORT_SYMBOL vmlinux 0xc6cb465a __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6eb5a28 inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0xc6f5e9a3 vga_switcheroo_register_audio_client +EXPORT_SYMBOL vmlinux 0xc701e1d0 fb_blank +EXPORT_SYMBOL vmlinux 0xc710565c simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0xc712b4ee devfreq_add_governor +EXPORT_SYMBOL vmlinux 0xc715d9e0 boot_cpu_data +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc72577fc file_remove_suid +EXPORT_SYMBOL vmlinux 0xc73e87e9 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0xc742b4d4 agp_allocate_memory +EXPORT_SYMBOL vmlinux 0xc7573f01 qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0xc770d15c idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7aec36a uart_add_one_port +EXPORT_SYMBOL vmlinux 0xc7cfa16d padata_unregister_cpumask_notifier +EXPORT_SYMBOL vmlinux 0xc825f798 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0xc83b4d5b posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc84fb1ee override_creds +EXPORT_SYMBOL vmlinux 0xc857a469 vfs_read +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc8944858 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0xc897c382 sg_init_table +EXPORT_SYMBOL vmlinux 0xc8b57c27 autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xc8c61914 xfrm4_rcv +EXPORT_SYMBOL vmlinux 0xc8d35b1e phy_start_aneg +EXPORT_SYMBOL vmlinux 0xc8f0c4a8 pci_platform_rom +EXPORT_SYMBOL vmlinux 0xc9310f82 mmc_can_trim +EXPORT_SYMBOL vmlinux 0xc93aeabd i2c_put_adapter +EXPORT_SYMBOL vmlinux 0xc93e0ad7 find_get_pages_tag +EXPORT_SYMBOL vmlinux 0xc962862c key_payload_reserve +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc978479a xz_dec_run +EXPORT_SYMBOL vmlinux 0xc9884b58 __napi_schedule +EXPORT_SYMBOL vmlinux 0xc996d097 del_timer +EXPORT_SYMBOL vmlinux 0xc9a7e3e7 blk_stack_limits +EXPORT_SYMBOL vmlinux 0xc9c39193 devm_gpio_request_one +EXPORT_SYMBOL vmlinux 0xc9e1b6ca pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0xc9f149eb softnet_data +EXPORT_SYMBOL vmlinux 0xca164a95 __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0xca1aa7e4 inet_getname +EXPORT_SYMBOL vmlinux 0xca261d84 end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0xca3d6701 inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xca4ca404 gen_pool_create +EXPORT_SYMBOL vmlinux 0xca5dbc50 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xca888eb2 __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xca8acc78 acpi_dbg_level +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xca9a004a request_key +EXPORT_SYMBOL vmlinux 0xca9ce23d sock_no_accept +EXPORT_SYMBOL vmlinux 0xcab15feb mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0xcae7a321 path_get +EXPORT_SYMBOL vmlinux 0xcaef1b77 idr_remove +EXPORT_SYMBOL vmlinux 0xcaf24f43 block_write_full_page +EXPORT_SYMBOL vmlinux 0xcaf85cd8 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb0c5d50 param_get_uint +EXPORT_SYMBOL vmlinux 0xcb1acf57 sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0xcb351e81 mb_cache_entry_alloc +EXPORT_SYMBOL vmlinux 0xcb49c411 vfs_statfs +EXPORT_SYMBOL vmlinux 0xcb733bf2 acpi_bus_set_power +EXPORT_SYMBOL vmlinux 0xcb8d8e7b ps2_handle_ack +EXPORT_SYMBOL vmlinux 0xcb92be12 blk_queue_prep_rq +EXPORT_SYMBOL vmlinux 0xcba14ce5 __idr_remove_all +EXPORT_SYMBOL vmlinux 0xcbae6c7a acpi_lid_notifier_unregister +EXPORT_SYMBOL vmlinux 0xcbbf0a6f audit_log_task_context +EXPORT_SYMBOL vmlinux 0xcbc22be0 dquot_drop +EXPORT_SYMBOL vmlinux 0xcbc9557f unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0xcbd41ffd dquot_acquire +EXPORT_SYMBOL vmlinux 0xcbdf7055 neigh_resolve_output +EXPORT_SYMBOL vmlinux 0xcbe3a1bb __sb_start_write +EXPORT_SYMBOL vmlinux 0xcbf666a7 vlan_untag +EXPORT_SYMBOL vmlinux 0xcc08ce95 sock_get_timestampns +EXPORT_SYMBOL vmlinux 0xcc173cab acpi_walk_resource_buffer +EXPORT_SYMBOL vmlinux 0xcc1badc5 inc_nlink +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc34bde0 lookup_bdev +EXPORT_SYMBOL vmlinux 0xcc37f55c blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0xcc3c1b1a xfrm_init_replay +EXPORT_SYMBOL vmlinux 0xcc42a4d6 inet_listen +EXPORT_SYMBOL vmlinux 0xcc4f55c5 unregister_exec_domain +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc588c62 generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0xcc5a6eb3 tty_unregister_device +EXPORT_SYMBOL vmlinux 0xcc60f0b6 splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0xcc7fa952 local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0xcc8f37b9 nf_ct_attach +EXPORT_SYMBOL vmlinux 0xccaf01e2 jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0xccb23da7 start_tty +EXPORT_SYMBOL vmlinux 0xccb24b11 scsi_host_put +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccdf0bd6 dev_remove_offload +EXPORT_SYMBOL vmlinux 0xcce372db dev_printk +EXPORT_SYMBOL vmlinux 0xcced3bd6 phy_attach +EXPORT_SYMBOL vmlinux 0xccfaac0c udp_lib_get_port +EXPORT_SYMBOL vmlinux 0xcd1912c1 bio_integrity_free +EXPORT_SYMBOL vmlinux 0xcd20667a kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd3bc598 __wait_on_bit +EXPORT_SYMBOL vmlinux 0xcd5478cb cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0xcd5abe7f blk_complete_request +EXPORT_SYMBOL vmlinux 0xcd69304a unregister_filesystem +EXPORT_SYMBOL vmlinux 0xcd7c6ec0 make_kprojid +EXPORT_SYMBOL vmlinux 0xcd8df1d3 inode_needs_sync +EXPORT_SYMBOL vmlinux 0xcd9c4f43 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0xcdb65ad2 netdev_notify_peers +EXPORT_SYMBOL vmlinux 0xcdc30257 unregister_netdev +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdd44fee bio_integrity_clone +EXPORT_SYMBOL vmlinux 0xcddbaea2 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0xcde172ac radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0xce1936aa proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce438e2d bdev_read_only +EXPORT_SYMBOL vmlinux 0xce46dade x86_dma_fallback_dev +EXPORT_SYMBOL vmlinux 0xce4904a4 acpi_leave_sleep_state +EXPORT_SYMBOL vmlinux 0xce4e47b6 __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce7d17bd vfs_symlink +EXPORT_SYMBOL vmlinux 0xce938ca2 dma_set_mask +EXPORT_SYMBOL vmlinux 0xcebb85d5 blk_stop_queue +EXPORT_SYMBOL vmlinux 0xcec13ffc block_read_full_page +EXPORT_SYMBOL vmlinux 0xcee78e6b pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0xcef51982 kstrtou16 +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf11b714 agp_backend_acquire +EXPORT_SYMBOL vmlinux 0xcf21d241 __wake_up +EXPORT_SYMBOL vmlinux 0xcf54c0f8 blk_init_queue_node +EXPORT_SYMBOL vmlinux 0xcf6cfe1f msrs_free +EXPORT_SYMBOL vmlinux 0xcf6fe810 phy_start +EXPORT_SYMBOL vmlinux 0xcfa6f5f1 dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0xcfc0e3a4 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0xcfdea389 inet_frag_kill +EXPORT_SYMBOL vmlinux 0xcffb1320 alloc_disk_node +EXPORT_SYMBOL vmlinux 0xd0110d59 skb_push +EXPORT_SYMBOL vmlinux 0xd0181f4f __bitmap_xor +EXPORT_SYMBOL vmlinux 0xd0298b8b proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0xd03e20a4 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0xd041711d invalidate_bdev +EXPORT_SYMBOL vmlinux 0xd0469770 alloc_buffer_head +EXPORT_SYMBOL vmlinux 0xd05bf033 acpi_gpiochip_free_interrupts +EXPORT_SYMBOL vmlinux 0xd067fc5c proc_dointvec +EXPORT_SYMBOL vmlinux 0xd06bd7e2 xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xd0720a17 on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xd09a844b eth_change_mtu +EXPORT_SYMBOL vmlinux 0xd0a01036 pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0d0aa72 acpi_processor_preregister_performance +EXPORT_SYMBOL vmlinux 0xd0d42c42 mod_timer_pending +EXPORT_SYMBOL vmlinux 0xd0d5f466 compat_tcp_setsockopt +EXPORT_SYMBOL vmlinux 0xd0e7bad6 bitmap_close_sync +EXPORT_SYMBOL vmlinux 0xd0ee38b8 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0xd0f36f0d audit_log_format +EXPORT_SYMBOL vmlinux 0xd0fb7cd4 __tasklet_hi_schedule_first +EXPORT_SYMBOL vmlinux 0xd0fef3b2 agp_free_key +EXPORT_SYMBOL vmlinux 0xd10f0fda dev_mc_flush +EXPORT_SYMBOL vmlinux 0xd11c0dc1 __kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xd132c72f pci_find_next_bus +EXPORT_SYMBOL vmlinux 0xd13afb9d __put_cred +EXPORT_SYMBOL vmlinux 0xd155c78e __ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0xd1652a93 acpi_info +EXPORT_SYMBOL vmlinux 0xd166ff5a acpi_device_set_power +EXPORT_SYMBOL vmlinux 0xd16ab96b con_is_bound +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd18b6eb2 acpi_unmap_lsapic +EXPORT_SYMBOL vmlinux 0xd1a3adb1 bio_copy_user +EXPORT_SYMBOL vmlinux 0xd1aa3f4f scsi_init_io +EXPORT_SYMBOL vmlinux 0xd1b62482 blk_get_request +EXPORT_SYMBOL vmlinux 0xd1f6c5f3 smp_num_siblings +EXPORT_SYMBOL vmlinux 0xd2066aba skb_copy_datagram_const_iovec +EXPORT_SYMBOL vmlinux 0xd20daec6 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0xd215898e tcp_enter_memory_pressure +EXPORT_SYMBOL vmlinux 0xd220cf8a jiffies_to_timespec +EXPORT_SYMBOL vmlinux 0xd221e359 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0xd227892e sleep_on +EXPORT_SYMBOL vmlinux 0xd232b0fb blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0xd2336902 init_net +EXPORT_SYMBOL vmlinux 0xd23b84c3 sk_receive_skb +EXPORT_SYMBOL vmlinux 0xd251d7b0 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0xd2555f19 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd269368c user_revoke +EXPORT_SYMBOL vmlinux 0xd271807c revert_creds +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd29d6746 vga_put +EXPORT_SYMBOL vmlinux 0xd29e2068 compat_sock_get_timestamp +EXPORT_SYMBOL vmlinux 0xd2a5e83b nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0xd2b09ce5 __kmalloc +EXPORT_SYMBOL vmlinux 0xd2ba425f iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0xd2d7259b input_release_device +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2e4f312 iget5_locked +EXPORT_SYMBOL vmlinux 0xd2eb8170 free_mdio_bitbang +EXPORT_SYMBOL vmlinux 0xd2f1b260 interruptible_sleep_on +EXPORT_SYMBOL vmlinux 0xd3049a03 dm_put_device +EXPORT_SYMBOL vmlinux 0xd34a88a7 zerocopy_sg_from_iovec +EXPORT_SYMBOL vmlinux 0xd3506e29 sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0xd35e249a _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0xd36257ba memcpy_toiovecend +EXPORT_SYMBOL vmlinux 0xd36b9014 pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0xd3719d59 paravirt_ticketlocks_enabled +EXPORT_SYMBOL vmlinux 0xd382cd0c phy_device_free +EXPORT_SYMBOL vmlinux 0xd3b5a294 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0xd3bd0b34 input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0xd3cd5c2f generic_write_checks +EXPORT_SYMBOL vmlinux 0xd3cfee59 posix_unblock_lock +EXPORT_SYMBOL vmlinux 0xd3dcab0b flex_array_alloc +EXPORT_SYMBOL vmlinux 0xd3dd87df pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0xd3ddd0ca tcf_hash_new_index +EXPORT_SYMBOL vmlinux 0xd42029f9 sk_free +EXPORT_SYMBOL vmlinux 0xd4281a6e ipmi_smi_add_proc_entry +EXPORT_SYMBOL vmlinux 0xd4472b60 __cleancache_get_page +EXPORT_SYMBOL vmlinux 0xd44ae499 set_pages_wb +EXPORT_SYMBOL vmlinux 0xd44ca019 genlmsg_put +EXPORT_SYMBOL vmlinux 0xd467fd1e udplite_prot +EXPORT_SYMBOL vmlinux 0xd4748733 mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0xd4835ef8 dmi_check_system +EXPORT_SYMBOL vmlinux 0xd4a58d41 mmc_start_req +EXPORT_SYMBOL vmlinux 0xd4ad615a irq_to_desc +EXPORT_SYMBOL vmlinux 0xd4b08e54 wait_for_completion_io +EXPORT_SYMBOL vmlinux 0xd4e895ec request_key_async +EXPORT_SYMBOL vmlinux 0xd4edeb04 cpu_core_map +EXPORT_SYMBOL vmlinux 0xd50fef48 acpi_detach_data +EXPORT_SYMBOL vmlinux 0xd51bc34d dma_pool_create +EXPORT_SYMBOL vmlinux 0xd51d62a5 dst_alloc +EXPORT_SYMBOL vmlinux 0xd5227010 simple_transaction_get +EXPORT_SYMBOL vmlinux 0xd52bf1ce _raw_spin_lock +EXPORT_SYMBOL vmlinux 0xd5710c00 filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0xd595f91a generic_ro_fops +EXPORT_SYMBOL vmlinux 0xd598b59d gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0xd5ac7394 uart_register_driver +EXPORT_SYMBOL vmlinux 0xd5b32841 uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0xd5c9f7a0 create_empty_buffers +EXPORT_SYMBOL vmlinux 0xd5cc401c nf_afinfo +EXPORT_SYMBOL vmlinux 0xd5f1dd41 __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0xd5f2172f del_timer_sync +EXPORT_SYMBOL vmlinux 0xd611bca3 completion_done +EXPORT_SYMBOL vmlinux 0xd616683a ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0xd6266987 swiotlb_free_coherent +EXPORT_SYMBOL vmlinux 0xd62abc39 _raw_read_unlock +EXPORT_SYMBOL vmlinux 0xd62ce0a5 kobject_del +EXPORT_SYMBOL vmlinux 0xd648e564 fb_match_mode +EXPORT_SYMBOL vmlinux 0xd6516868 key_validate +EXPORT_SYMBOL vmlinux 0xd66a365d inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd6b33026 cpu_khz +EXPORT_SYMBOL vmlinux 0xd6c2df3d dma_common_mmap +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6f6be06 acpi_get_hp_hw_control_from_firmware +EXPORT_SYMBOL vmlinux 0xd6fa725d d_path +EXPORT_SYMBOL vmlinux 0xd70608cd __neigh_event_send +EXPORT_SYMBOL vmlinux 0xd72187ef __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0xd72b4c77 simple_transaction_set +EXPORT_SYMBOL vmlinux 0xd7397ec4 elevator_exit +EXPORT_SYMBOL vmlinux 0xd7577339 skb_append_datato_frags +EXPORT_SYMBOL vmlinux 0xd75c79df smp_call_function +EXPORT_SYMBOL vmlinux 0xd77a5aa5 __bitmap_and +EXPORT_SYMBOL vmlinux 0xd7956988 security_path_chown +EXPORT_SYMBOL vmlinux 0xd7981019 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0xd79b5a02 allow_signal +EXPORT_SYMBOL vmlinux 0xd79b8899 abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0xd7cbddda memcpy_toiovec +EXPORT_SYMBOL vmlinux 0xd7d701a3 simple_link +EXPORT_SYMBOL vmlinux 0xd7d91e0b d_obtain_alias +EXPORT_SYMBOL vmlinux 0xd7dd777b reserve_perfctr_nmi +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7ea7094 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xd7ed666e init_buffer +EXPORT_SYMBOL vmlinux 0xd83ba20a wait_iff_congested +EXPORT_SYMBOL vmlinux 0xd85ce433 netif_napi_del +EXPORT_SYMBOL vmlinux 0xd86f1108 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8a9eca9 generic_delete_inode +EXPORT_SYMBOL vmlinux 0xd8b52d9c inet_dgram_connect +EXPORT_SYMBOL vmlinux 0xd8c72cf0 ifla_policy +EXPORT_SYMBOL vmlinux 0xd8ded085 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xd8e484f0 register_chrdev_region +EXPORT_SYMBOL vmlinux 0xd9091363 acpi_install_notify_handler +EXPORT_SYMBOL vmlinux 0xd92283ea jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0xd92afabe bitmap_clear +EXPORT_SYMBOL vmlinux 0xd92e16ba csum_partial_copy_fromiovecend +EXPORT_SYMBOL vmlinux 0xd94322e7 acpi_evaluate_reference +EXPORT_SYMBOL vmlinux 0xd95f2080 nf_log_unset +EXPORT_SYMBOL vmlinux 0xd969b2c7 amd_e400_c1e_detected +EXPORT_SYMBOL vmlinux 0xd96d7aa6 abx500_register_ops +EXPORT_SYMBOL vmlinux 0xd97324f9 scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0xd9856594 blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd9a9bb30 getname +EXPORT_SYMBOL vmlinux 0xd9d7ff43 pagecache_write_end +EXPORT_SYMBOL vmlinux 0xd9db1deb ata_print_version +EXPORT_SYMBOL vmlinux 0xd9f956ea security_inode_permission +EXPORT_SYMBOL vmlinux 0xda05e328 lro_flush_pkt +EXPORT_SYMBOL vmlinux 0xda20b9d1 inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0xda2478d0 param_ops_short +EXPORT_SYMBOL vmlinux 0xda267d4a read_code +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda3e43d1 _raw_spin_unlock +EXPORT_SYMBOL vmlinux 0xda409719 netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0xda71fe72 inet_select_addr +EXPORT_SYMBOL vmlinux 0xda7ca6cb fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xda8af7ad fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0xda8f1225 nonseekable_open +EXPORT_SYMBOL vmlinux 0xdab43793 security_path_symlink +EXPORT_SYMBOL vmlinux 0xdaba39ff nf_getsockopt +EXPORT_SYMBOL vmlinux 0xdad42ff7 serio_unregister_driver +EXPORT_SYMBOL vmlinux 0xdad65ba7 scsi_scan_host +EXPORT_SYMBOL vmlinux 0xdad7a7e8 mmc_gpio_free_ro +EXPORT_SYMBOL vmlinux 0xdae14068 d_validate +EXPORT_SYMBOL vmlinux 0xdae4aa43 netlink_broadcast +EXPORT_SYMBOL vmlinux 0xdaea6e0d mfd_clone_cell +EXPORT_SYMBOL vmlinux 0xdafc9ffc tcf_exts_dump +EXPORT_SYMBOL vmlinux 0xdb0ef67e acpi_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xdb29e2a9 skb_copy_and_csum_datagram_iovec +EXPORT_SYMBOL vmlinux 0xdb482e46 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0xdb4f8783 default_llseek +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb6c8c63 blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0xdb731773 dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb811f3c fs_bio_set +EXPORT_SYMBOL vmlinux 0xdba6bade jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0xdbcd416e sysctl_ip_nonlocal_bind +EXPORT_SYMBOL vmlinux 0xdbd6d323 fb_set_suspend +EXPORT_SYMBOL vmlinux 0xdbdb4aed udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0xdbdcb08c devfreq_remove_device +EXPORT_SYMBOL vmlinux 0xdbea8185 phy_ethtool_sset +EXPORT_SYMBOL vmlinux 0xdbf8736c padata_do_parallel +EXPORT_SYMBOL vmlinux 0xdc027c00 simple_pin_fs +EXPORT_SYMBOL vmlinux 0xdc02ef70 textsearch_destroy +EXPORT_SYMBOL vmlinux 0xdc047fc4 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0xdc08c1e2 fsnotify_get_group +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc1c0629 __genl_register_family +EXPORT_SYMBOL vmlinux 0xdc1cf434 agp_generic_alloc_by_type +EXPORT_SYMBOL vmlinux 0xdc3c41a8 __crypto_memneq +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc4191b6 module_put +EXPORT_SYMBOL vmlinux 0xdc57f532 acpi_install_gpe_handler +EXPORT_SYMBOL vmlinux 0xdc676472 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0xdc6bb27a abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0xdc8d1dde _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0xdcacd90a __scm_destroy +EXPORT_SYMBOL vmlinux 0xdccbdb2d phy_start_interrupts +EXPORT_SYMBOL vmlinux 0xdcd28dc1 __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0xdcdf3973 neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0xdd62ea15 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0xdd6b235a eth_validate_addr +EXPORT_SYMBOL vmlinux 0xdd733cc9 kernel_connect +EXPORT_SYMBOL vmlinux 0xdd8c604e ip6_frag_match +EXPORT_SYMBOL vmlinux 0xdd9842a2 input_set_capability +EXPORT_SYMBOL vmlinux 0xdd9e0f74 lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0xddb6a588 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0xddbbd9a6 acpi_bus_get_device +EXPORT_SYMBOL vmlinux 0xddc5360b skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0xdde83545 intel_gtt_get +EXPORT_SYMBOL vmlinux 0xde10eb10 param_set_invbool +EXPORT_SYMBOL vmlinux 0xde16dc16 tboot +EXPORT_SYMBOL vmlinux 0xde17de1d pci_get_subsys +EXPORT_SYMBOL vmlinux 0xde4a9ead simple_transaction_release +EXPORT_SYMBOL vmlinux 0xde4d4ea2 mdiobus_scan +EXPORT_SYMBOL vmlinux 0xde6151db tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0xde63b92f skb_free_datagram +EXPORT_SYMBOL vmlinux 0xde6f8d84 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0xde9360ba totalram_pages +EXPORT_SYMBOL vmlinux 0xde98c647 kobject_put +EXPORT_SYMBOL vmlinux 0xde9b17ed agp3_generic_fetch_size +EXPORT_SYMBOL vmlinux 0xde9d54f5 i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0xdeae3231 tcp_init_sock +EXPORT_SYMBOL vmlinux 0xdeae8335 mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xdeb74b02 km_new_mapping +EXPORT_SYMBOL vmlinux 0xdec83ed0 udp_disconnect +EXPORT_SYMBOL vmlinux 0xdedf91cb mmc_stop_bkops +EXPORT_SYMBOL vmlinux 0xdf057fd9 scsi_is_target_device +EXPORT_SYMBOL vmlinux 0xdf0da3cc acpi_get_devices +EXPORT_SYMBOL vmlinux 0xdf17812e sock_kfree_s +EXPORT_SYMBOL vmlinux 0xdf19e489 fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0xdf21a9a1 uart_get_divisor +EXPORT_SYMBOL vmlinux 0xdf27d3e4 scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf32f158 pagevec_lookup +EXPORT_SYMBOL vmlinux 0xdf377ee2 freezing_slow_path +EXPORT_SYMBOL vmlinux 0xdf455e07 clocksource_change_rating +EXPORT_SYMBOL vmlinux 0xdf48a0eb flex_array_put +EXPORT_SYMBOL vmlinux 0xdf4d0949 vga_switcheroo_register_handler +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf60cc27 __print_symbol +EXPORT_SYMBOL vmlinux 0xdf6f7012 __serio_register_port +EXPORT_SYMBOL vmlinux 0xdf78b393 dm_kobject_release +EXPORT_SYMBOL vmlinux 0xdf8c695a __ndelay +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdf9fdd35 bio_get_nr_vecs +EXPORT_SYMBOL vmlinux 0xdfae869a tcp_recvmsg +EXPORT_SYMBOL vmlinux 0xdfc5169b slhc_init +EXPORT_SYMBOL vmlinux 0xdfebe487 page_follow_link_light +EXPORT_SYMBOL vmlinux 0xdffe14cc blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0xe04036af fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0xe04295f4 mmc_alloc_host +EXPORT_SYMBOL vmlinux 0xe0451bd6 dev_get_flags +EXPORT_SYMBOL vmlinux 0xe046466c cpufreq_global_kobject +EXPORT_SYMBOL vmlinux 0xe04ea239 blk_queue_merge_bvec +EXPORT_SYMBOL vmlinux 0xe04f7caa dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xe06141e9 security_sk_clone +EXPORT_SYMBOL vmlinux 0xe06854ff gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0xe06e4199 cpu_all_bits +EXPORT_SYMBOL vmlinux 0xe075d6eb iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xe07cd5db padata_add_cpu +EXPORT_SYMBOL vmlinux 0xe07ee8ad inet_ioctl +EXPORT_SYMBOL vmlinux 0xe0ac8bd2 acpi_bus_generate_netlink_event +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0b5efdb acpi_bus_get_status +EXPORT_SYMBOL vmlinux 0xe0fa83f2 ipmi_register_for_cmd +EXPORT_SYMBOL vmlinux 0xe109b9f2 skb_dequeue +EXPORT_SYMBOL vmlinux 0xe10d2162 napi_gro_receive +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe11aa295 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0xe122c3ee xfrm_input_resume +EXPORT_SYMBOL vmlinux 0xe13cd8a7 dmi_name_in_vendors +EXPORT_SYMBOL vmlinux 0xe1492616 compat_sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0xe15f42bb _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0xe1761617 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xe19df919 sock_no_sendpage +EXPORT_SYMBOL vmlinux 0xe1a5e2c4 splice_from_pipe_next +EXPORT_SYMBOL vmlinux 0xe1ba6289 scsi_prep_fn +EXPORT_SYMBOL vmlinux 0xe1e1cbc3 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0xe1fb561f buffer_migrate_page +EXPORT_SYMBOL vmlinux 0xe1fd727f pci_pme_capable +EXPORT_SYMBOL vmlinux 0xe1fdbc16 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0xe200f872 secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xe21869f8 tcp_gro_complete +EXPORT_SYMBOL vmlinux 0xe2206c9f xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0xe2276d4f mb_cache_entry_insert +EXPORT_SYMBOL vmlinux 0xe23ae481 blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe24d3a97 jiffies_64 +EXPORT_SYMBOL vmlinux 0xe26710f4 ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0xe2909db1 serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0xe292d5d1 writeback_in_progress +EXPORT_SYMBOL vmlinux 0xe29b04e9 acpi_set_firmware_waking_vector64 +EXPORT_SYMBOL vmlinux 0xe29e1d0e out_of_line_wait_on_atomic_t +EXPORT_SYMBOL vmlinux 0xe2b86727 phy_ethtool_gset +EXPORT_SYMBOL vmlinux 0xe2c9c9d5 tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0xe2cfb038 __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2e67b8b dm_get_device +EXPORT_SYMBOL vmlinux 0xe2ffa938 from_kgid +EXPORT_SYMBOL vmlinux 0xe3039ad0 ppp_input +EXPORT_SYMBOL vmlinux 0xe3125dd6 __block_page_mkwrite +EXPORT_SYMBOL vmlinux 0xe319eb24 acpi_pci_osc_control_set +EXPORT_SYMBOL vmlinux 0xe31a5b1c __ps2_command +EXPORT_SYMBOL vmlinux 0xe3248fc4 acpi_device_hid +EXPORT_SYMBOL vmlinux 0xe34ad81a bio_endio +EXPORT_SYMBOL vmlinux 0xe34caaa3 sg_miter_next +EXPORT_SYMBOL vmlinux 0xe3a53f4c sort +EXPORT_SYMBOL vmlinux 0xe3d6f284 fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xe3e12008 __first_cpu +EXPORT_SYMBOL vmlinux 0xe3e25045 register_cdrom +EXPORT_SYMBOL vmlinux 0xe42ad74a md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0xe4634024 neigh_seq_start +EXPORT_SYMBOL vmlinux 0xe484e35f ioread32 +EXPORT_SYMBOL vmlinux 0xe493fc31 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0xe496be51 agp_copy_info +EXPORT_SYMBOL vmlinux 0xe4978463 sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0xe499282d dcache_readdir +EXPORT_SYMBOL vmlinux 0xe4c750cd sb_min_blocksize +EXPORT_SYMBOL vmlinux 0xe4cc7aad scsi_device_resume +EXPORT_SYMBOL vmlinux 0xe4e3696f blk_queue_softirq_done +EXPORT_SYMBOL vmlinux 0xe4eba9f9 rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0xe4f4665b ipmi_validate_addr +EXPORT_SYMBOL vmlinux 0xe4f97e6a shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0xe50f4826 __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0xe5122890 flow_cache_genid +EXPORT_SYMBOL vmlinux 0xe51c816f inet_add_offload +EXPORT_SYMBOL vmlinux 0xe5208918 acpi_gbl_FADT +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe52c9b62 update_region +EXPORT_SYMBOL vmlinux 0xe530d757 acpi_clear_gpe +EXPORT_SYMBOL vmlinux 0xe57878a1 in6_pton +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe58fca39 jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0xe5b569b9 dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0xe5bec95c i8253_lock +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5d4b81f key_reject_and_link +EXPORT_SYMBOL vmlinux 0xe5db6733 blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0xe5dbcfbc __mutex_init +EXPORT_SYMBOL vmlinux 0xe5ed5467 xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xe5f7e4c3 xfrm_state_add +EXPORT_SYMBOL vmlinux 0xe623e64f uart_resume_port +EXPORT_SYMBOL vmlinux 0xe63031e1 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0xe6498502 mmc_detect_change +EXPORT_SYMBOL vmlinux 0xe64d4e0c fib_default_rule_add +EXPORT_SYMBOL vmlinux 0xe64d98fe rdmsr_safe_regs +EXPORT_SYMBOL vmlinux 0xe64dcf88 filemap_fault +EXPORT_SYMBOL vmlinux 0xe6542f9a sock_alloc_file +EXPORT_SYMBOL vmlinux 0xe65b8b0d twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0xe6653767 __dst_free +EXPORT_SYMBOL vmlinux 0xe66677c4 tcp_child_process +EXPORT_SYMBOL vmlinux 0xe66e474d splice_from_pipe_begin +EXPORT_SYMBOL vmlinux 0xe6701b84 bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0xe67e3e07 user_path_at +EXPORT_SYMBOL vmlinux 0xe681bcb0 sock_recvmsg +EXPORT_SYMBOL vmlinux 0xe697d108 __blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe69a9df4 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0xe69b7e81 xfrm_register_type +EXPORT_SYMBOL vmlinux 0xe6ab72a6 ipmi_set_my_LUN +EXPORT_SYMBOL vmlinux 0xe6d01e8f ppp_register_channel +EXPORT_SYMBOL vmlinux 0xe6d3040d sync_inode +EXPORT_SYMBOL vmlinux 0xe6e3b875 down_write +EXPORT_SYMBOL vmlinux 0xe6fb675c node_to_cpumask_map +EXPORT_SYMBOL vmlinux 0xe6fbe430 can_do_mlock +EXPORT_SYMBOL vmlinux 0xe714fa86 ht_create_irq +EXPORT_SYMBOL vmlinux 0xe716baed acpi_unregister_ioapic +EXPORT_SYMBOL vmlinux 0xe720d111 __scm_send +EXPORT_SYMBOL vmlinux 0xe7265bfb cdrom_mode_select +EXPORT_SYMBOL vmlinux 0xe735b26c nf_log_packet +EXPORT_SYMBOL vmlinux 0xe76211ba __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0xe7722171 flex_array_free +EXPORT_SYMBOL vmlinux 0xe7a664c4 nf_hooks +EXPORT_SYMBOL vmlinux 0xe7a80b34 acpi_gpiochip_request_interrupts +EXPORT_SYMBOL vmlinux 0xe7a81967 audit_log_secctx +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe806e372 proc_create_data +EXPORT_SYMBOL vmlinux 0xe810e1c2 simple_empty +EXPORT_SYMBOL vmlinux 0xe81ab41a udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0xe82f5659 spi_attach_transport +EXPORT_SYMBOL vmlinux 0xe8418103 pci_map_rom +EXPORT_SYMBOL vmlinux 0xe85b5e75 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0xe8706057 tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0xe8747623 genl_unregister_family +EXPORT_SYMBOL vmlinux 0xe8794ce1 slhc_toss +EXPORT_SYMBOL vmlinux 0xe88f543f inet6_del_offload +EXPORT_SYMBOL vmlinux 0xe89ecdee blk_mq_alloc_reserved_request +EXPORT_SYMBOL vmlinux 0xe8a9f820 file_update_time +EXPORT_SYMBOL vmlinux 0xe8aa2e71 xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xe8ae927f vfs_mkdir +EXPORT_SYMBOL vmlinux 0xe8b50432 dev_uc_sync +EXPORT_SYMBOL vmlinux 0xe8b63ace radix_tree_range_tag_if_tagged +EXPORT_SYMBOL vmlinux 0xe8bea3bc qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xe8dbafef __next_cpu +EXPORT_SYMBOL vmlinux 0xe8f00ad1 seq_escape +EXPORT_SYMBOL vmlinux 0xe8ffc0dd rtnl_configure_link +EXPORT_SYMBOL vmlinux 0xe9008f8e try_to_release_page +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe91f8c23 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0xe932a90b x86_hyper +EXPORT_SYMBOL vmlinux 0xe93df150 generic_removexattr +EXPORT_SYMBOL vmlinux 0xe9450e72 dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe997667b wrmsr_on_cpu +EXPORT_SYMBOL vmlinux 0xe9dff136 mempool_alloc +EXPORT_SYMBOL vmlinux 0xe9e29f77 inet_dgram_ops +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xe9fd7fed inet_shutdown +EXPORT_SYMBOL vmlinux 0xe9fd9516 wait_on_sync_kiocb +EXPORT_SYMBOL vmlinux 0xea00243c skb_copy_datagram_from_iovec +EXPORT_SYMBOL vmlinux 0xea054b22 nla_policy_len +EXPORT_SYMBOL vmlinux 0xea10212a int_to_scsilun +EXPORT_SYMBOL vmlinux 0xea10655a __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xea12e679 mmc_add_host +EXPORT_SYMBOL vmlinux 0xea16dd4c tcp_destroy_cgroup +EXPORT_SYMBOL vmlinux 0xea21bed5 pm860x_reg_read +EXPORT_SYMBOL vmlinux 0xea3ce91a jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0xea44d037 get_super +EXPORT_SYMBOL vmlinux 0xea7b8a44 acpi_install_interface +EXPORT_SYMBOL vmlinux 0xea7c9797 vfs_readv +EXPORT_SYMBOL vmlinux 0xea90bdd3 acpi_attach_data +EXPORT_SYMBOL vmlinux 0xeaa25932 input_register_handler +EXPORT_SYMBOL vmlinux 0xeab321cb file_open_root +EXPORT_SYMBOL vmlinux 0xeac73847 irq_regs +EXPORT_SYMBOL vmlinux 0xead64361 ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0xeae3dfd6 __const_udelay +EXPORT_SYMBOL vmlinux 0xeae62fa5 fget +EXPORT_SYMBOL vmlinux 0xeae94e8f lock_may_write +EXPORT_SYMBOL vmlinux 0xeaf572be md_done_sync +EXPORT_SYMBOL vmlinux 0xeaf74b2f tcp_proto_cgroup +EXPORT_SYMBOL vmlinux 0xeaf995ed write_inode_now +EXPORT_SYMBOL vmlinux 0xeaffd802 dev_mc_add +EXPORT_SYMBOL vmlinux 0xeb040b97 sock_no_poll +EXPORT_SYMBOL vmlinux 0xeb0a61a7 skb_store_bits +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb3faa77 sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0xeb44339a free_pages_exact +EXPORT_SYMBOL vmlinux 0xeb599762 __lock_page +EXPORT_SYMBOL vmlinux 0xeb74c95c may_umount +EXPORT_SYMBOL vmlinux 0xeb8090c4 __pci_enable_wake +EXPORT_SYMBOL vmlinux 0xebc1071b dev_trans_start +EXPORT_SYMBOL vmlinux 0xebc2c734 blk_end_request +EXPORT_SYMBOL vmlinux 0xebdbe48c radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0xebe20ee2 ip_ct_attach +EXPORT_SYMBOL vmlinux 0xec05f79c tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0xec2c0526 netif_carrier_off +EXPORT_SYMBOL vmlinux 0xec2f6942 bh_submit_read +EXPORT_SYMBOL vmlinux 0xec3c6fed skb_unlink +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec730387 _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0xec80f979 __ht_create_irq +EXPORT_SYMBOL vmlinux 0xec852d66 dquot_enable +EXPORT_SYMBOL vmlinux 0xecbb4854 sk_alloc +EXPORT_SYMBOL vmlinux 0xeccd3e0c acpi_handle_printk +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xecfb3dc9 inode_dio_done +EXPORT_SYMBOL vmlinux 0xed0342a5 led_set_brightness +EXPORT_SYMBOL vmlinux 0xed1ece97 sock_create_lite +EXPORT_SYMBOL vmlinux 0xed51afd7 write_one_page +EXPORT_SYMBOL vmlinux 0xed55804a gen10g_restart_aneg +EXPORT_SYMBOL vmlinux 0xed597524 qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xed9f9a20 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xeda27408 amd_iommu_device_info +EXPORT_SYMBOL vmlinux 0xedad43d8 input_grab_device +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedc6306c phy_driver_unregister +EXPORT_SYMBOL vmlinux 0xeddeb409 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0xedec8a21 netlink_set_err +EXPORT_SYMBOL vmlinux 0xedfd5d19 elv_add_request +EXPORT_SYMBOL vmlinux 0xee0a055c __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0xee24e5ad jbd2_journal_start +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee33317f mntput +EXPORT_SYMBOL vmlinux 0xee46885d add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0xee7eb9e1 pnp_platform_devices +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xeea9dbaf bitmap_bitremap +EXPORT_SYMBOL vmlinux 0xeeb4bd69 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0xeeb5bd3b __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0xeeb761c5 __module_put_and_exit +EXPORT_SYMBOL vmlinux 0xeece320e kmem_cache_create +EXPORT_SYMBOL vmlinux 0xeede11f1 tcp_check_req +EXPORT_SYMBOL vmlinux 0xeeec26a7 queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xeef161aa groups_free +EXPORT_SYMBOL vmlinux 0xef45ac39 scsi_nonblockable_ioctl +EXPORT_SYMBOL vmlinux 0xef89de04 tty_lock +EXPORT_SYMBOL vmlinux 0xef9aedfc boot_option_idle_override +EXPORT_SYMBOL vmlinux 0xefb6b186 interruptible_sleep_on_timeout +EXPORT_SYMBOL vmlinux 0xefba93e1 mempool_destroy +EXPORT_SYMBOL vmlinux 0xefdd70ce security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0xefe099c3 acpi_get_event_status +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf00c1d43 blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0xf015a9cd pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0xf0187927 __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0xf01ee805 ipv6_select_ident +EXPORT_SYMBOL vmlinux 0xf05ffa15 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0xf0619801 timekeeping_clocktai +EXPORT_SYMBOL vmlinux 0xf065f629 ioread16be +EXPORT_SYMBOL vmlinux 0xf067257c register_memory_isolate_notifier +EXPORT_SYMBOL vmlinux 0xf087137d __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0xf092f490 bio_init +EXPORT_SYMBOL vmlinux 0xf09de776 get_random_int +EXPORT_SYMBOL vmlinux 0xf0b2bece netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0xf0ef15b4 list_sort +EXPORT_SYMBOL vmlinux 0xf0f1246c kvasprintf +EXPORT_SYMBOL vmlinux 0xf0fa4015 dev_queue_xmit +EXPORT_SYMBOL vmlinux 0xf0fdf6cb __stack_chk_fail +EXPORT_SYMBOL vmlinux 0xf100416a remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xf10de535 ioread8 +EXPORT_SYMBOL vmlinux 0xf1147bdc posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0xf11543ff find_first_zero_bit +EXPORT_SYMBOL vmlinux 0xf116d4b5 copy_in_user +EXPORT_SYMBOL vmlinux 0xf118447e input_allocate_device +EXPORT_SYMBOL vmlinux 0xf128762e __starget_for_each_device +EXPORT_SYMBOL vmlinux 0xf13feb57 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0xf147dcb2 hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0xf147ecb1 down_trylock +EXPORT_SYMBOL vmlinux 0xf14f28c5 fsync_bdev +EXPORT_SYMBOL vmlinux 0xf1528cb2 xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0xf16a165c ps2_command +EXPORT_SYMBOL vmlinux 0xf16ac425 dma_sync_wait +EXPORT_SYMBOL vmlinux 0xf16d6420 kill_block_super +EXPORT_SYMBOL vmlinux 0xf171dea4 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0xf18523c9 genphy_config_aneg +EXPORT_SYMBOL vmlinux 0xf18d90b8 mmc_hw_reset_check +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf199578d scsi_host_alloc +EXPORT_SYMBOL vmlinux 0xf1c0faa6 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0xf1c50b64 blk_mq_end_io +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1ea6021 inet6_ioctl +EXPORT_SYMBOL vmlinux 0xf1f55714 d_instantiate +EXPORT_SYMBOL vmlinux 0xf202c5cb radix_tree_insert +EXPORT_SYMBOL vmlinux 0xf20dabd8 free_irq +EXPORT_SYMBOL vmlinux 0xf20de26a lock_sock_fast +EXPORT_SYMBOL vmlinux 0xf22449ae down_interruptible +EXPORT_SYMBOL vmlinux 0xf224f56d __sb_end_write +EXPORT_SYMBOL vmlinux 0xf2317498 compat_tcp_getsockopt +EXPORT_SYMBOL vmlinux 0xf23e08f1 starget_for_each_device +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf2576cb9 ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL vmlinux 0xf25c647e inet6_protos +EXPORT_SYMBOL vmlinux 0xf27b6969 tty_register_ldisc +EXPORT_SYMBOL vmlinux 0xf287ac7c dquot_transfer +EXPORT_SYMBOL vmlinux 0xf28ed6e2 machine_to_phys_nr +EXPORT_SYMBOL vmlinux 0xf2925c1d skb_find_text +EXPORT_SYMBOL vmlinux 0xf296ff35 md_register_thread +EXPORT_SYMBOL vmlinux 0xf2997713 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0xf2a0af8f backlight_device_registered +EXPORT_SYMBOL vmlinux 0xf2b1ac8e __getnstimeofday +EXPORT_SYMBOL vmlinux 0xf2b66ae8 padata_do_serial +EXPORT_SYMBOL vmlinux 0xf2beb4a2 alloc_pci_dev +EXPORT_SYMBOL vmlinux 0xf2e86a1e tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0xf3103d8f scsi_release_buffers +EXPORT_SYMBOL vmlinux 0xf312cb9d ucs2_strsize +EXPORT_SYMBOL vmlinux 0xf313da4e sha_transform +EXPORT_SYMBOL vmlinux 0xf32055e7 dev_base_lock +EXPORT_SYMBOL vmlinux 0xf32ea149 security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf33e1f8e redraw_screen +EXPORT_SYMBOL vmlinux 0xf34311df sock_no_getname +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf35c4848 tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0xf37260ab _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0xf3736dc7 single_open_size +EXPORT_SYMBOL vmlinux 0xf3741ccb ndo_dflt_bridge_getlink +EXPORT_SYMBOL vmlinux 0xf37638c1 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xf37cc3fb inet_frags_init +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf396cd21 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0xf3986b06 acpi_os_map_generic_address +EXPORT_SYMBOL vmlinux 0xf398f5dc swiotlb_unmap_sg_attrs +EXPORT_SYMBOL vmlinux 0xf3995912 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0xf3a47231 fb_pan_display +EXPORT_SYMBOL vmlinux 0xf3b124e0 clocksource_register +EXPORT_SYMBOL vmlinux 0xf3bd772a blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0xf3bf0bce __bitmap_complement +EXPORT_SYMBOL vmlinux 0xf3fb1eb7 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0xf420e22f jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0xf432dd3d __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xf441ac43 ioread8_rep +EXPORT_SYMBOL vmlinux 0xf4597a75 dev_addr_del_multiple +EXPORT_SYMBOL vmlinux 0xf473a886 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0xf4a5c213 avail_to_resrv_perfctr_nmi_bit +EXPORT_SYMBOL vmlinux 0xf4b754fd acpi_resources_are_enforced +EXPORT_SYMBOL vmlinux 0xf4b803e0 genphy_suspend +EXPORT_SYMBOL vmlinux 0xf4b8953f nobh_write_end +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4cb5a8f blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0xf4de1b70 dma_ops +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf51ae235 touch_nmi_watchdog +EXPORT_SYMBOL vmlinux 0xf51bf88b nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xf536d22e acpi_set_gpe_wake_mask +EXPORT_SYMBOL vmlinux 0xf5381e66 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf5408617 audit_log_start +EXPORT_SYMBOL vmlinux 0xf546e9ca tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0xf55cf45a input_unregister_device +EXPORT_SYMBOL vmlinux 0xf564bfdc account_page_dirtied +EXPORT_SYMBOL vmlinux 0xf56ec132 i2c_register_driver +EXPORT_SYMBOL vmlinux 0xf57ff37f d_genocide +EXPORT_SYMBOL vmlinux 0xf5893abf up_read +EXPORT_SYMBOL vmlinux 0xf591a416 scsi_scan_target +EXPORT_SYMBOL vmlinux 0xf598be6a rwsem_downgrade_wake +EXPORT_SYMBOL vmlinux 0xf5b10e67 acpi_install_global_event_handler +EXPORT_SYMBOL vmlinux 0xf5b639a9 phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0xf5ce272b idr_for_each +EXPORT_SYMBOL vmlinux 0xf5e6d121 __devcgroup_inode_permission +EXPORT_SYMBOL vmlinux 0xf5eb86ea blk_verify_command +EXPORT_SYMBOL vmlinux 0xf621b09d bioset_create +EXPORT_SYMBOL vmlinux 0xf62ada23 agp_generic_alloc_pages +EXPORT_SYMBOL vmlinux 0xf6388c56 sysctl_ip_default_ttl +EXPORT_SYMBOL vmlinux 0xf65c3280 xfrm_prepare_input +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf6852670 request_key_async_with_auxdata +EXPORT_SYMBOL vmlinux 0xf68687be __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xf695be17 netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0xf697414f inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xf6bb4729 color_table +EXPORT_SYMBOL vmlinux 0xf6cae0db devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0xf6e6433e serio_close +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf700f5f6 sk_reset_timer +EXPORT_SYMBOL vmlinux 0xf721dd3c kern_path_mountpoint +EXPORT_SYMBOL vmlinux 0xf7289d14 __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0xf741c793 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf75d66c0 pci_find_bus +EXPORT_SYMBOL vmlinux 0xf78af62b save_mount_options +EXPORT_SYMBOL vmlinux 0xf79ca502 kill_pgrp +EXPORT_SYMBOL vmlinux 0xf7a427d0 splice_from_pipe_end +EXPORT_SYMBOL vmlinux 0xf7adcaf3 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0xf7adf7f5 generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0xf7bb0ac8 blk_queue_start_tag +EXPORT_SYMBOL vmlinux 0xf7c0cdd7 blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0xf7cf867f pneigh_lookup +EXPORT_SYMBOL vmlinux 0xf7f9e78a dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0xf803fe39 bitmap_set +EXPORT_SYMBOL vmlinux 0xf809411e blk_mq_free_single_hw_queue +EXPORT_SYMBOL vmlinux 0xf80de9ff hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf812cff6 memscan +EXPORT_SYMBOL vmlinux 0xf827cb83 free_reserved_area +EXPORT_SYMBOL vmlinux 0xf82877a4 input_set_keycode +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82cfd1a proc_dostring +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf83946be netpoll_print_options +EXPORT_SYMBOL vmlinux 0xf83c17d3 devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0xf856ebe6 dev_driver_string +EXPORT_SYMBOL vmlinux 0xf85ba46b jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0xf870fa80 tty_port_close_start +EXPORT_SYMBOL vmlinux 0xf88e0ee2 acpi_get_table_header +EXPORT_SYMBOL vmlinux 0xf8983de7 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0xf89a643b scsi_calculate_bounce_limit +EXPORT_SYMBOL vmlinux 0xf8b61b6f prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0xf8b83ec3 scsi_execute_req_flags +EXPORT_SYMBOL vmlinux 0xf8dfa53c __wait_on_buffer +EXPORT_SYMBOL vmlinux 0xf8e3c0a8 processors +EXPORT_SYMBOL vmlinux 0xf8e6238d unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0xf8ecb9b7 jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0xf8f31fe3 i2c_verify_client +EXPORT_SYMBOL vmlinux 0xf90b0931 vfs_getattr +EXPORT_SYMBOL vmlinux 0xf911a640 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0xf914e3f7 igrab +EXPORT_SYMBOL vmlinux 0xf9202309 inet6_release +EXPORT_SYMBOL vmlinux 0xf94a0e9f always_delete_dentry +EXPORT_SYMBOL vmlinux 0xf9619174 phy_connect_direct +EXPORT_SYMBOL vmlinux 0xf96ce957 netlink_unicast +EXPORT_SYMBOL vmlinux 0xf99b66a8 scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9c0b663 strlcat +EXPORT_SYMBOL vmlinux 0xfa05e9e4 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0xfa140410 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0xfa4d1ca2 swiotlb_alloc_coherent +EXPORT_SYMBOL vmlinux 0xfa4d58cd __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa66f77c finish_wait +EXPORT_SYMBOL vmlinux 0xfa6b5637 mmc_gpio_request_cd +EXPORT_SYMBOL vmlinux 0xfa7f3156 wl12xx_get_platform_data +EXPORT_SYMBOL vmlinux 0xfa972081 security_inode_readlink +EXPORT_SYMBOL vmlinux 0xfaa1876e tcp_parse_options +EXPORT_SYMBOL vmlinux 0xfab383b9 rename_lock +EXPORT_SYMBOL vmlinux 0xfabd6277 migrate_page +EXPORT_SYMBOL vmlinux 0xfac44333 gen_new_estimator +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfae67b1f cap_mmap_addr +EXPORT_SYMBOL vmlinux 0xfaf98462 bitrev32 +EXPORT_SYMBOL vmlinux 0xfb0443fb acpi_get_parent +EXPORT_SYMBOL vmlinux 0xfb08c134 swiotlb_sync_single_for_device +EXPORT_SYMBOL vmlinux 0xfb141995 pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0xfb2499b8 del_gendisk +EXPORT_SYMBOL vmlinux 0xfb4d11d3 __remove_inode_hash +EXPORT_SYMBOL vmlinux 0xfb578fc5 memset +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb80c7a0 acpi_walk_namespace +EXPORT_SYMBOL vmlinux 0xfb94103e __clzdi2 +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbac28cd xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0xfbcd6eec tty_write_room +EXPORT_SYMBOL vmlinux 0xfbfef529 skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0xfc02b7ad sysctl_tcp_wmem +EXPORT_SYMBOL vmlinux 0xfc102bd0 truncate_pagecache +EXPORT_SYMBOL vmlinux 0xfc12b67c read_cache_page +EXPORT_SYMBOL vmlinux 0xfc16bb57 devm_gpiod_get_index +EXPORT_SYMBOL vmlinux 0xfc354300 bdevname +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc3c3849 jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0xfc426b51 clear_bdi_congested +EXPORT_SYMBOL vmlinux 0xfc872fd1 get_ibs_caps +EXPORT_SYMBOL vmlinux 0xfc9a1e83 dquot_release +EXPORT_SYMBOL vmlinux 0xfcaa04a0 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xfcac0d40 acpi_install_interface_handler +EXPORT_SYMBOL vmlinux 0xfcb77cfd ipmi_free_recv_msg +EXPORT_SYMBOL vmlinux 0xfcb926cd kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xfcc2a43c utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0xfcc54f91 lg_local_lock_cpu +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfcf03964 free_buffer_head +EXPORT_SYMBOL vmlinux 0xfcf7b2ae blk_queue_dma_pad +EXPORT_SYMBOL vmlinux 0xfcfa03ff fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0xfd1a25d3 clear_inode +EXPORT_SYMBOL vmlinux 0xfd2d7dbe kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0xfd4735f7 scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0xfd6293c2 boot_tvec_bases +EXPORT_SYMBOL vmlinux 0xfd65ada0 ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0xfd69dbe7 nla_put_nohdr +EXPORT_SYMBOL vmlinux 0xfd779eab acpi_pm_device_run_wake +EXPORT_SYMBOL vmlinux 0xfd80663e ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0xfd99623a ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xfda0dbe8 ftrace_print_hex_seq +EXPORT_SYMBOL vmlinux 0xfdb9b629 ioread32be +EXPORT_SYMBOL vmlinux 0xfdbddfa8 tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0xfdbe0288 pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0xfdd11783 __memcg_kmem_get_cache +EXPORT_SYMBOL vmlinux 0xfde43ff9 pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0xfde48614 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0xfdee7d42 _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0xfdf36b75 twl6040_power +EXPORT_SYMBOL vmlinux 0xfdfb792f amd_iommu_pc_supported +EXPORT_SYMBOL vmlinux 0xfdfc0b3b fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe047ce6 acpi_enter_sleep_state +EXPORT_SYMBOL vmlinux 0xfe26fc7c nr_node_ids +EXPORT_SYMBOL vmlinux 0xfe33c1b5 bio_integrity_enabled +EXPORT_SYMBOL vmlinux 0xfe497f0e ___pskb_trim +EXPORT_SYMBOL vmlinux 0xfe49a8fe replace_mount_options +EXPORT_SYMBOL vmlinux 0xfe5c30b0 pci_enable_msi_block_auto +EXPORT_SYMBOL vmlinux 0xfe5c328a blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe6ad187 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0xfe7c4287 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0xfe9ebbbb acpi_osi_is_win8 +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfee6a4da tcp_hashinfo +EXPORT_SYMBOL vmlinux 0xfeebc7c4 __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0xfef96e23 __scsi_print_command +EXPORT_SYMBOL vmlinux 0xfeff1a71 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff26e552 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0xff307fc0 find_lock_page +EXPORT_SYMBOL vmlinux 0xff4399aa blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0xff494d81 rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0xff53e077 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0xff58f439 pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0xff652810 tcf_destroy_chain +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff6e7b95 devm_request_and_ioremap +EXPORT_SYMBOL vmlinux 0xff7559e4 ioport_resource +EXPORT_SYMBOL vmlinux 0xff784133 seq_putc +EXPORT_SYMBOL vmlinux 0xff8323a7 arp_invalidate +EXPORT_SYMBOL vmlinux 0xff87ad73 blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0xff9666c4 vlan_vid_del +EXPORT_SYMBOL vmlinux 0xff9ca065 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0xffa79eae ping_prot +EXPORT_SYMBOL vmlinux 0xffb48f6b pci_enable_msi_block +EXPORT_SYMBOL vmlinux 0xffd02769 should_remove_suid +EXPORT_SYMBOL vmlinux 0xffd5a395 default_wake_function +EXPORT_SYMBOL vmlinux 0xffd799c6 pci_enable_device +EXPORT_SYMBOL vmlinux 0xffe1f9a4 tc_classify_compat +EXPORT_SYMBOL vmlinux 0xffe982c1 sock_edemux +EXPORT_SYMBOL_GPL arch/x86/crypto/aes-x86_64 0x7060bf0a crypto_aes_encrypt_x86 +EXPORT_SYMBOL_GPL arch/x86/crypto/aes-x86_64 0xe409b491 crypto_aes_decrypt_x86 +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x13a65ecf camellia_ecb_enc_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x17bf48dc camellia_xts_dec_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x1a08ded1 camellia_xts_enc +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x47129015 camellia_xts_enc_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x7d54edc2 camellia_cbc_dec_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x7e87ef55 camellia_ecb_dec_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x8f185793 camellia_xts_dec +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x9e8086dc camellia_ctr_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x16061d06 __camellia_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x1636abdf __camellia_enc_blk +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x1da0e256 camellia_crypt_ctr +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x31bbe42b camellia_crypt_ctr_2way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x50dc55b6 __camellia_enc_blk_2way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x756afdbb xts_camellia_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x930f687f camellia_decrypt_cbc_2way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0xa41a5ad3 camellia_dec_blk +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0xc84eab70 lrw_camellia_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0xecb0d859 lrw_camellia_exit_tfm +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0xf4521fda camellia_dec_blk_2way +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x02621c9f glue_ctr_crypt_final_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x6a7b3e43 glue_ecb_crypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x8f02ac4d glue_xts_crypt_128bit_one +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x98f1e521 glue_cbc_decrypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x9ee345e9 glue_xts_crypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xbca6ef8f glue_ctr_crypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xdd3d5763 glue_cbc_encrypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x016a957f serpent_xts_enc_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x0c5a8af6 serpent_xts_dec_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x0ff3c26d serpent_xts_dec +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x606a8162 serpent_cbc_dec_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x60ac6eb6 lrw_serpent_exit_tfm +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x746f87a2 xts_serpent_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x79ff0b7a serpent_ecb_dec_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x9ae34b2f serpent_xts_enc +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x9e018632 __serpent_crypt_ctr +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x9f99663c serpent_ctr_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xa84ea33d serpent_ecb_enc_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0xedcb5052 lrw_serpent_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64 0x19dc7881 twofish_dec_blk +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64 0x5e752773 twofish_enc_blk +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0x1fd77fb1 twofish_dec_blk_3way +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0x61694b97 twofish_dec_blk_cbc_3way +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0x7c31280a xts_twofish_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0x8d75ab44 twofish_enc_blk_ctr +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0x8e856922 twofish_enc_blk_ctr_3way +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0xd16fe306 lrw_twofish_exit_tfm +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0xe595fffa lrw_twofish_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0xf2e80e9c __twofish_enc_blk_3way +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x00aaf935 kvm_disable_tdp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x041281e0 kvm_clear_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x041dfc75 kvm_apic_update_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x06d8eeba kvm_write_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x09f9513f kvm_resched +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0ab6deae kvm_emulate_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x11456aa4 kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x12cf6d3f kvm_vcpu_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x14e41a21 kvm_set_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x15706ffb kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x175ff69b kvm_valid_efer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x18b0a51e kvm_init_shadow_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x195fbf38 gfn_to_hva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1a2c0348 kvm_read_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1cfe78d1 kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x20de5193 kvm_disable_largepages +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2afe5eff kvm_release_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2b1ac55e kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2c06064a kvm_after_handle_nmi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x317f9e6b kvm_enable_efer_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x318b55e9 kvm_mmu_sync_roots +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x34d115e5 kvm_set_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x35245f07 kvm_set_cr0 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x35defa76 kvm_set_cr4 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x36ecbe25 gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x37a2494e x86_emulate_instruction +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3b5dd35e __tracepoint_kvm_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3be9a36f kvm_requeue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3de08404 kvm_set_shared_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3fba0731 kvm_requeue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x437f8150 gfn_to_pfn_async +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x43b3f723 kvm_set_xcr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x450a053e kvm_arch_unregister_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x46175df6 kvm_mmu_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4c51f664 __tracepoint_kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x51c6deba kvm_get_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x53a2a3f7 __tracepoint_kvm_inj_virq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x53aa8827 handle_mmio_page_fault_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5557c042 gfn_to_pfn_prot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x556df10d kvm_set_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x55c47c5f kvm_read_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x56d6a844 kvm_get_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5749db11 kvm_get_guest_memory_type +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x588ab79f kvm_get_dirty_log +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5cd3c499 kvm_emulate_halt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x611cf0fd fx_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x646c341c kvm_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x64a34f49 __tracepoint_kvm_nested_vmexit_inject +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x669da1fd kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x67570d6f kvm_queue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x67b9977b kvm_apic_set_eoi_accelerated +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x68358b8b gfn_to_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6858b014 kvm_arch_has_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x69a923c1 gfn_to_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6a6d904f kvm_before_handle_nmi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6ce68395 load_pdptrs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x709cd8cb kvm_spurious_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x746d56be kvm_mmu_flush_tlb +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7603cb76 kvm_set_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x766070cc kvm_inject_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x76df156b kvm_write_guest_virt_system +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7aa64803 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7c001f21 kvm_find_cpuid_entry +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7c502ab9 __tracepoint_kvm_nested_intr_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7dd5c2e3 kvm_write_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7de40dbf kvm_x86_ops +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7f2c1163 __tracepoint_kvm_nested_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x82cd25f9 kvm_mmu_unprotect_page_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x831327da kvm_max_guest_tsc_khz +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8424687e kvm_vcpu_cache +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8830f92e gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x890eb509 kvm_mmu_unload +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8a26f7b0 __tracepoint_kvm_nested_intercepts +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8ae68af1 kvm_vcpu_kick +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8ce4f3ab kvm_enable_tdp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8da01274 kvm_get_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8e1cd06f kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8f478a97 kvm_is_visible_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x91ae21d8 kvm_mmu_load +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x91e5acb5 kvm_emulate_hypercall +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9339fea3 kvm_get_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x95cc594c kvm_complete_insn_gp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x97940027 kvm_inject_pending_timer_irqs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9816e30e kvm_read_guest_page_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x99cee2e1 kvm_read_guest_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9a216313 kvm_define_shared_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9eb070e0 kvm_put_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9ed59c66 kvm_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9ee59155 __tracepoint_kvm_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa04a55d9 kvm_task_switch +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa0ec3a0a gfn_to_hva_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa25f3635 kvm_lapic_set_eoi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa2a540e7 kvm_emulate_wbinvd +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa508e36b __tracepoint_kvm_skinit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa52e8ab2 kvm_mmu_invlpg +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xaa79cab5 __tracepoint_kvm_cr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xacf7f97c gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xae036653 kvm_set_cr3 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xaf275715 __tracepoint_kvm_nested_vmrun +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb1b9078b kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb77c10dc kvm_set_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb884d97f kvm_get_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xba9ed435 kvm_mmu_set_mmio_spte_mask +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbb279978 kvm_vcpu_uninit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbcd23206 kvm_irq_has_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbdb653af kvm_arch_register_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbf3ba87f kvm_mmu_unprotect_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc2b477d7 kvm_vcpu_block +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc30f9425 __kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc438c631 kvm_cpu_has_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc57e8f9d kvm_inject_nmi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xca13d549 mark_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcdbc622e kvm_rdpmc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcef3fec5 __tracepoint_kvm_write_tsc_offset +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcf403a1b kvm_read_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcfc4a58b kvm_get_cs_db_l_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd01de725 kvm_mmu_reset_context +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd0459e67 kvm_has_tsc_control +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd0b2727a kvm_mmu_set_mask_ptes +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd457d31d kvm_mmu_get_spte_hierarchy +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd835e295 kvm_init_shadow_ept_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd92d5e32 kvm_apic_write_nodecode +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdeb9e564 __tracepoint_kvm_invlpga +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdec0c522 kvm_lmsw +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe59cdde2 kvm_get_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe613b330 kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe6a139d0 gfn_to_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe8867628 kvm_set_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeb3a1fa6 kvm_release_page_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xef8cc414 kvm_fast_pio_out +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf18b7b43 kvm_queue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf2483569 kvm_write_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf2cd49e5 kvm_require_cpl +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf67126c6 kvm_is_linear_rip +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf9a895aa kvm_clear_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfa553d9e kvm_get_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfb4b1848 kvm_inject_realmode_interrupt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x0a156660 ablk_init_common +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x255a5d57 ablk_exit +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x7b33cd76 ablk_encrypt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0xa9c98712 __ablk_encrypt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0xc6208188 ablk_init +EXPORT_SYMBOL_GPL crypto/ablk_helper 0xd4a72236 ablk_set_key +EXPORT_SYMBOL_GPL crypto/ablk_helper 0xe1e83f3e ablk_decrypt +EXPORT_SYMBOL_GPL crypto/af_alg 0x05aa0fe5 af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x289197b2 af_alg_cmsg_send +EXPORT_SYMBOL_GPL crypto/af_alg 0x33c941d9 af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x61514319 af_alg_complete +EXPORT_SYMBOL_GPL crypto/af_alg 0x65eef7f4 af_alg_wait_for_completion +EXPORT_SYMBOL_GPL crypto/af_alg 0x7b470435 af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0x8ac7cc59 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xccdb7f0f af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0xf3c1e1ab af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x396fc72d async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x060d2e30 async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0xc8092989 async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x44fe9164 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xa2e0565b async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x12d22dc2 __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xa48959b7 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xb25d26ba async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xc7a27a4f async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x6007c17c async_xor_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xf4e61921 async_xor +EXPORT_SYMBOL_GPL crypto/authenc 0x587ef278 crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0xc7729f92 blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x27278ca9 __cast5_encrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x4a2a3ca6 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0xca3db466 cast5_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1291971c __cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1e2c961f __cast6_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x39379bf8 cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x8f04034a __cast6_encrypt +EXPORT_SYMBOL_GPL crypto/cast_common 0x08aa6fb7 cast_s1 +EXPORT_SYMBOL_GPL crypto/cast_common 0x0c5fbf8a cast_s3 +EXPORT_SYMBOL_GPL crypto/cast_common 0xe39dd4b4 cast_s2 +EXPORT_SYMBOL_GPL crypto/cast_common 0xee83a4f3 cast_s4 +EXPORT_SYMBOL_GPL crypto/cryptd 0x3286ab83 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x45df76e1 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x66f1fdb5 cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x9b9ea126 cryptd_free_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0xb4b362e1 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0xb62b4802 cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xb65f0cc9 cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xb9d78d46 cryptd_ablkcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xbe2878b6 cryptd_alloc_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0xd78d50f9 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/des_generic 0xcfd9a2c0 des_ekey +EXPORT_SYMBOL_GPL crypto/lrw 0x3864eb66 lrw_free_table +EXPORT_SYMBOL_GPL crypto/lrw 0x616c1bae lrw_crypt +EXPORT_SYMBOL_GPL crypto/lrw 0xcd074900 lrw_init_table +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x5ddb33e9 __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x77b39cb4 __serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x8a1a99ad __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xc33b423f serpent_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0x6c3229bb __twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0xd11f2666 twofish_setkey +EXPORT_SYMBOL_GPL crypto/xts 0xb839310c xts_crypt +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0x1c8984c7 acpi_smbus_unregister_callback +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0x87bd07bd acpi_smbus_register_callback +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0xb9a141b0 acpi_smbus_read +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0xe1372311 acpi_smbus_write +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x0ec067b7 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x1f54c843 ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x25b29137 ahci_platform_resume +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x2d9cb088 ahci_platform_suspend +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x33c37a99 ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x3c1983ec ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x7649d93e ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x79294e67 ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x7bfe3af3 ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xa5fe37de ahci_platform_resume_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xd5ed81a2 ahci_platform_suspend_host +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x01904f40 ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x059b294f ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x0dea6285 ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x4cb6a7fd ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5524da5a ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5eacba1f ahci_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x694f923e ahci_thread_fn +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6e05c4e7 ahci_hw_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x70dfd1a9 ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x776bef15 ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x7b4c520a ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8ba854ac ahci_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x93aae35a ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x9f87a4b6 ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa3264854 ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xae50549e ahci_sdev_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xb826c6ef ahci_shost_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xc6bd3723 ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd2dc82a5 ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd64da4c9 ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xe8059220 ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xe817e997 ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xf95fad22 ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0x4352675d __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x02ff9464 cfag12864b_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x0ecb2e5d cfag12864b_disable +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x305dc3c6 cfag12864b_isenabled +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x3389f926 cfag12864b_enable +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x9522a342 cfag12864b_getrate +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0xc48e9d95 cfag12864b_buffer +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x14102f23 ks0108_displaystate +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x48a70518 ks0108_writedata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x4f506333 ks0108_startline +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x6edae968 ks0108_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xbf4774db ks0108_writecontrol +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xedde6df2 ks0108_page +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xfee8ef7b ks0108_address +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x06730da9 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x068a60ca bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0cc805e5 bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x1d41e11f bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x1f428f7a bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x30c79c56 bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x33ff84eb bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x399c3d1f bcma_core_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x5df12d84 __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x66e18d43 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7154209c bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x76d23800 bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7c5bb85e bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8ad670d9 bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x934edccd bcma_find_core +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa1255031 bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xbe3847d4 bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc05698d5 bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc7a4629f bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd19f8428 bcma_core_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd4105876 bcma_core_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe109722d bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf5188a32 bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x0c7586d0 btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x120b9c0c btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x27ae759a btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x3da7fbbe btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x41f5a99b btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x42f1cf69 btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x5fff3813 btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x82c6c730 btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x9b15406b btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xfdbf8358 btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/cpufreq/speedstep-lib 0x1b1f2bda speedstep_get_freqs +EXPORT_SYMBOL_GPL drivers/cpufreq/speedstep-lib 0x2b67f096 speedstep_get_frequency +EXPORT_SYMBOL_GPL drivers/cpufreq/speedstep-lib 0xd7ab2c0c speedstep_detect_processor +EXPORT_SYMBOL_GPL drivers/dca/dca 0x01718645 dca_add_requester +EXPORT_SYMBOL_GPL drivers/dca/dca 0x01a33ab9 dca_unregister_notify +EXPORT_SYMBOL_GPL drivers/dca/dca 0x16fa82e9 unregister_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x28831144 dca_remove_requester +EXPORT_SYMBOL_GPL drivers/dca/dca 0x31a2c8df dca_get_tag +EXPORT_SYMBOL_GPL drivers/dca/dca 0x60b5a787 free_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0xac34ecec dca_register_notify +EXPORT_SYMBOL_GPL drivers/dca/dca 0xb8e31b17 alloc_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0xe88ab855 register_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0xfa36c63b dca3_get_tag +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x2a3b2808 dw_dma_shutdown +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x76bf92d6 dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x885e590c dw_dma_resume +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xd1c1bde6 dw_dma_suspend +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xd5726a81 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/edac/amd64_edac_mod 0x0771f08e amd64_get_dram_hole_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0bdfd386 edac_pci_handle_npe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x1ca76ecf edac_device_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x1ee9b486 edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x20e65b2a edac_pci_handle_pe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x2ef8864a edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x3d6d502a edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x40537a9b edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x476fce6d edac_mc_alloc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x49baccb0 edac_pci_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x61285ff0 edac_mc_del_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x63f96284 edac_device_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x644092ad edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x69259f22 edac_mem_types +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x79778e29 edac_pci_reset_delay_period +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x7cc834c6 edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x86f50809 edac_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x8d888e6d edac_device_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x8dcecd8d find_mci_by_dev +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x97509ec0 edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xa2abc6ca edac_device_handle_ue +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xb7323eb8 edac_mc_free +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xd8e7eeeb edac_mc_add_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xe2d7286e edac_pci_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xfda25c7b edac_device_handle_ce +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x14878009 amd_report_gart_errors +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x1d34e996 pp_msgs +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x21626132 amd_register_ecc_decoder +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x737912b3 amd_unregister_ecc_decoder +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0xb30b7e56 amd_decode_mce +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xf4ade51f fw_card_release +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0x013fbdac cs5535_gpio_set +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0x93f8fe67 cs5535_gpio_set_irq +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0xc0bb404a cs5535_gpio_setup_event +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0xd3bd9300 cs5535_gpio_isset +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0xe07c0954 cs5535_gpio_clear +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x47a1e964 bgpio_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x5537d866 bgpio_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x402a651a __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x5e8021b3 __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x625edd05 drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xa77fb64d drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xfbd2c887 drm_vm_open_locked +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x05876c69 i915_gpu_busy +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x08a7896d i915_gpu_raise +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x2b2c59ae i915_release_power_well +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x402468e9 i915_gpu_lower +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x500858b9 i915_read_mch_val +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x96108893 i915_request_power_well +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0xe7237b0b i915_gpu_turbo_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x0b1ade58 ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x4b67a914 ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x6adf436b ttm_prime_fd_to_handle +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x9ae71a7d ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xce36343e ttm_prime_handle_to_fd +EXPORT_SYMBOL_GPL drivers/hid/hid 0x01f90cc7 hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x060655bc hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0c3c9c88 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0cd038ec hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x12a434ec hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2918a4e4 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2a4a262b hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2bb728a1 hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4906a967 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x49feaa7e hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4a2e4060 hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5bb05bb4 hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5faa54b5 hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x657c96e6 hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x658dc752 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x688735f2 hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x86d32c6c hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x877418b7 hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa6b93bea hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa84e6a8b hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa93b5cab hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb000736d hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb5291c6b hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb83246a0 hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbc1d54bd hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc4547059 hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcbee3090 hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcef3b13d hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd1a27449 hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd4526cc4 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe2498b66 hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe5eb8c39 hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xea4c8a2e hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xeb77f29b hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf4c2024c hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x2f622ea1 roccat_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x8c4181ec roccat_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x8daf4474 roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x0c1a28bc roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x298b1a3e roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x35fb55ae roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x52a8256a roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x6f1a2fe9 roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xc0c20160 roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x3d849514 sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x46fd16b9 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x57437c7e sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x70692ff3 sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x75cc3d9b sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x9d2ba799 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xcfab1045 sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xec099615 sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x01fd453e usbhid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0xdb78cc59 hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x150dbc0c hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x1b34ba61 hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x1d56fe50 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2b7bb8b0 hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x45e71f33 hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x570dfb21 hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x6240f0e4 hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x74bca9a1 hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x8ec19045 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x9049b79e hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x948c30db hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xe77c8ae7 hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xf5803691 hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x2ffa0ead vmbus_sendpacket_multipagebuffer +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x30d8a07b vmbus_driver_unregister +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x33d9081c vmbus_set_sc_create_callback +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x358fafa5 vmbus_prep_negotiate_resp +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x46a417ca vmbus_proto_version +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x514facdb vmbus_establish_gpadl +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x6be79e85 vmbus_teardown_gpadl +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x85c5a93a vmbus_are_subchannels_present +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x85cf6b37 vmbus_sendpacket_pagebuffer +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x8f4c9ab1 vmbus_get_outgoing_channel +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x960d2819 vmbus_open +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xaf767d70 vmbus_recvpacket_raw +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xb3af25bb __vmbus_driver_register +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xd59d2638 vmbus_close +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xf45dd651 hyperv_mmio +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xb4365d22 adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xcea5a8d9 adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xe33f3b55 adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x16206db9 pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x250ebe6f pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x57d861d8 pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x58366212 pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x6ad80677 pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x73be2a58 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x7e2cfac1 pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x8fbd3c78 pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x8fd35aa7 pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xe7bca759 pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xf4732f97 pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xf8199d98 pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x47377816 i2c_dw_func +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x56375f23 i2c_dw_xfer +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5bb1170b i2c_dw_isr +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5dd9ccc3 i2c_dw_init +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x75195bd7 i2c_dw_clear_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x7b38f3b6 i2c_dw_disable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xcc97abd8 i2c_dw_enable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xce3b0391 i2c_dw_is_enabled +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xf917ae5d i2c_dw_disable_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xfb12a3de i2c_dw_read_comp_param +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-nforce2 0xa8482cee nforce2_smbus +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x4d01beb1 i2c_add_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x86e55317 i2c_del_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x6e359831 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x71ab46a1 i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x44c41b5d ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x534cf3eb ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x648b9c8b ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x81e4cb5c ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x82ba3b01 ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x93e53a95 ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xd67eed54 ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xe6f14243 ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xf2e1838d ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x3247c366 adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x39afea41 adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x3bf7ed20 adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x4b6f9244 adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x8616abcb adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x907a963c adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xdc030827 adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xdd79041c adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xe613a892 adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xe629ab2b adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xeb99864b adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xf29b9fe1 adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0697c610 iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x15bafe2b iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x250dc0fa iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x267c0508 iio_channel_release_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2a1fab3c iio_channel_stop_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2ee16540 iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x33015ef9 iio_update_demux +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4651e480 iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x479ef2dc iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4fd3705a iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x50fdd69e iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x665a24b4 iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7631440f devm_iio_trigger_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x78f92108 iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7953c138 iio_scan_mask_set +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9c904f32 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9d811203 iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa5f1260a devm_iio_device_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb6b07d92 iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xc2689d5d iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xc29df3e9 iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xc8fedbdc iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd126ee28 iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd46bf666 iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd9024055 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd959d955 iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe6901ba4 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe7e5bb2f devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xee5800c9 iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf5b16d63 devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf85d0fe1 iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xfbd75786 iio_scan_mask_query +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/infiniband/hw/ipath/ib_ipath 0x1514b2b2 ipath_debug +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0xabf39849 input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x0a22e7d6 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x3625fdcc cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x84eeb164 cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xb74195d7 cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xc5628c44 cyttsp_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xd5c65b92 cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xf0d6e715 cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x137d92db cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x1c64fe68 cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x0d2b6859 wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x16991a25 wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x1ec9f111 wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x33163990 wm9713_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x4eeda0fb wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x8bfa227d wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x8c05b633 wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xd591ff0c wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xe2022454 wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xefbccb61 wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xfa25e1fd wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xffbc390e wm9712_codec +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x002eeb9f ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x057406b4 ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x23f44c42 ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x2d667ff2 ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x346fbe5a ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x57fe47b1 ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xaa2e44b4 ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xc015035b ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xccd56fa9 ipack_bus_register +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0x23359aff unregister_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0xce1414b2 register_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x1d49d1a4 gigaset_isdn_rcv_err +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x1e425243 gigaset_m10x_input +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x1f548691 gigaset_initcs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x20bd01a6 gigaset_if_receive +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x37d2d1ef gigaset_add_event +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x454aa44f gigaset_debuglevel +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x54e24019 gigaset_start +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x5902fbd7 gigaset_freecs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x6fbac4ac gigaset_skb_sent +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x814505ba gigaset_shutdown +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x9acecae2 gigaset_blockdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xa3151853 gigaset_dbg_buffer +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xa68bc88d gigaset_freedriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xaa6ff120 gigaset_fill_inbuf +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xb8def9ff gigaset_handle_modem_response +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xcc80ccef gigaset_initdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xd7e88bc4 gigaset_stop +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xde1f331b gigaset_skb_rcvd +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xf1b1d722 gigaset_m10x_send_skb +EXPORT_SYMBOL_GPL drivers/leds/dell-led 0x86fd1ffb dell_app_wmi_led_set +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x8a41130b lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x97491b73 lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xa260c51e lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xb3cb7952 lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xc8d1ba30 lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xcb045d50 lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xcc7f4178 lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xd959126b lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xe07bad5b lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xeb23c772 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xf6dcce72 lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x749e05f2 ledtrig_flash_ctrl +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x7903e46e ledtrig_torch_ctrl +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x0ec17d44 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x26062738 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x40c27b88 __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x4c49fc16 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x51a15737 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x616b6217 __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6907ac0d __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7be42a1c __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7e532a71 __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x8a4afa11 __tracepoint_bcache_alloc_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x914361f4 __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x9272fb0f __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x938cc2b2 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa649dd21 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb157059f __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb317649e __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb493772a __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb834c124 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbb1fc0a4 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbc4fcb1e __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc1474d91 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc379085a __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc5aed8ad __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc7eda602 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xce055cbe __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe20fe821 __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe24daf87 __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe2ed0930 __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xea2303e0 __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xef1156ee __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfc131205 __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x11873616 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x20924d4d dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x4ace7e1a dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xaadaef72 dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb2002a7c dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb6d5c65d dm_deferred_set_add_work +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb70b342a dm_bio_prison_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xbcfdee79 dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xdb9eb116 dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xebd06eaf dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6aba7f5e dm_bufio_get_block_number +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9310ba06 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9c256008 dm_bufio_get_device_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa1d2413a dm_bufio_read +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa448e19f dm_bufio_prefetch +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa82b2066 dm_bufio_write_dirty_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xafbda3f3 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc9a3422d dm_bufio_write_dirty_buffers_async +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xcbb1bae2 dm_bufio_get +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd4bddf5c dm_bufio_issue_flush +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe6024e59 dm_bufio_release +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xebcc64a4 dm_bufio_get_block_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xeca7949e dm_bufio_client_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xeeb55c9b dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x15710090 dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x1ebb44e7 dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x3a891fb3 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x6006e360 dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x7ec00b05 dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x9a7292fd dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xda8e0c44 dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x2a4ffcea dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x8e5e42a0 dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x191f0350 dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x38efaf5a dm_region_hash_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3a18389a dm_rh_update_states +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x4430764e dm_rh_region_to_sector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x45ab972a dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x6ea28eed dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7774620f dm_rh_stop_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7d053fc5 dm_rh_start_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa4797b38 dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa53387c7 dm_rh_flush +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa68e1f06 dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa83588eb dm_rh_recovery_end +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xe41502a4 dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xe4a76d97 dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xe4fa88f9 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfad9d53a dm_rh_get_region_size +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfc62ef4e dm_rh_get_region_key +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfd93482e dm_rh_recovery_in_flight +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0054f69d dm_tm_pre_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x01445176 dm_btree_find_highest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x17c36f29 dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1cac81ac dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2025e954 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2c112836 dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f40da68 dm_bm_set_read_write +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f74609d dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x32b5f546 dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x38c75c44 dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3ad0f55b dm_bm_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x40f7bd91 dm_tm_inc +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x42dbdfc3 dm_tm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x49b35849 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x55b4bd4d dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5e6aea80 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x62c1b9ee dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x68fae9d2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x72289260 dm_block_manager_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7ade1071 dm_tm_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7b047bd9 dm_tm_create_non_blocking_clone +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x80c89b3d dm_tm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x827a42f4 dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x832bf228 dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x858c8d94 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89f1e1cc dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x966a8838 dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9e798e22 dm_bm_set_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9f624559 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa0bbbb49 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa13861b4 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa87c5b4d dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaee02382 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xafeda29f dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb7bad799 dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb9a6ecf8 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbd50ebbb dm_btree_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xca40abd5 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd041d62b dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd29923fb dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe44b4b9b dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xed1e1f96 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf375d009 dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf475af48 dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf5455120 dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xfa34e0a5 dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/raid1 0x46b69e34 md_raid1_congested +EXPORT_SYMBOL_GPL drivers/md/raid10 0x673e0b9c md_raid10_congested +EXPORT_SYMBOL_GPL drivers/md/raid456 0x014f8954 md_raid5_congested +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x19a2447d saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x1fbd2e74 saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x212dcdce saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x259d745c saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x25b4d949 saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x4259a735 saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x5350c9a2 saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x6ecd4b0e saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x8d1d6c96 saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xfa70eb28 saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x185b0182 saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x21c8c7b5 saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x310df67d saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x964a358d saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xa88ab95c saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xb74ff5b8 saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xf41b5502 saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x033b8ca7 smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x1345c0c7 sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x13e1b67d sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x2563934a smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x27d6a253 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x2e55e5f2 smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x329aa794 smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x37d91069 smsendian_handle_tx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x39b2d7d2 smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x3d6c72fb smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x44daedab smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x6842ffb9 smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7c576277 smsendian_handle_message_header +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x8f3340a1 smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x99a81ab3 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9c2225ed smscore_translate_msg +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa6403d1d sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xcd0fa7fd sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xf00c7087 smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xf259491a smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xf586c84a sms_board_power +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0x7840a203 cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0x05c7770b tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0xaa85f1f9 cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x0d30a103 mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x108f4525 mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1d8fc0dd mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x25100061 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x2e5f5dfe mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x2f0e185e mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x52fbdb71 mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x65eb3cd4 mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x66f90b71 mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x80ca925d mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x8b4b8958 mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xbbfa9e19 mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xc27133b5 mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xc60f5d36 mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xccc4cc37 mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xed80a442 mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xf20d8d36 mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x43363599 saa7134_g_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x82911590 saa7134_queryctrl +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x9211273a saa7134_s_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xce65fcd3 saa7134_s_std_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xe569d9c0 saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x34f4c70d ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x3bcf9ddd ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x4ba8ef9b ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x5f9314a6 ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x759918e0 ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x75a5accb ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xc2cbe55a ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x5ba0cd3c radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x798083de radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1c2b064a ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1fdd20ef rc_open +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x37c071b0 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x4299aba3 ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x553efb91 rc_core_debug +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x72f53ba5 rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x752899fc rc_close +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7de496c8 rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7f404db4 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x81aac2bf rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x9b0bad8c rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb80b7eb1 ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xbeb76c9c rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xcfc20e41 rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xdab8d23e rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xdc27894c rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xdecd4b4e rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xe758c3af ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf68124b1 ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xfca0ef36 rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0xd78709db mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0xe4cda742 microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0x0e321da2 mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0x1897a41f r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0xa4d4f43a tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0xfbdea7e6 tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x7a875d74 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x9c542d88 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x802e5228 tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x6cad1d96 tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x9ad79135 tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x5d73827a tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0xc755a4bb tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0xe0f94e80 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x197dce9e cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x1ae0a5f1 cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x1d9bd0fd cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x41b94b3d cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x431dd080 cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4c77aebf cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4ecd82da cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x79a69c8f cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x931a2dbc cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xa72c863b cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xb72fcc9f cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xbfc2e049 cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xc9facd99 cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xe652e76d cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xea586fc7 cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf6d9e8ce cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf7a25f76 cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xfa13061b is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xff9a11d0 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0xe0df3f0d mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0xa73acffa mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x068c3bae em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x1096fee0 em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x1e773d04 em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x2ec97bde em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x3037e057 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x56a3e456 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x580d3212 em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x5b8fcd3e em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x66ce2ba9 em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7bdf0065 em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x8485fd80 em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x86b59ab3 em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xcfce368b em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd4178da7 em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x6c11cfa9 tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x9b7a7709 tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xb7a3e256 tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xe89e630f tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x01c483a9 v4l2_get_timestamp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x074de844 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x6ff16dc4 v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x736c2a90 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x813f3de4 v4l2_find_nearest_format +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x85a93741 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xb54d0a35 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xbb666632 v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x08982d59 v4l2_match_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x221d2fbc v4l2_enum_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x36e8756a v4l2_find_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x4103badb v4l2_print_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x53105839 v4l2_detect_cvt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6976cfe0 v4l2_valid_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6f344bb9 v4l2_calc_aspect_ratio +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x7eaf8e7a v4l2_detect_gtf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xb0891da2 v4l2_dv_timings_presets +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x15e96a1d v4l2_int_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x611e0b0c v4l2_int_ioctl_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xa5228b24 v4l2_int_device_try_attach_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xb2f96f8a v4l2_int_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xeeaa01ef v4l2_int_ioctl_0 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x05ba3700 v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x17eb0eee v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1c5f0c53 v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x2064fd9b v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x290e25a4 v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x390df848 v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6c47fa72 v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x806a6744 v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa25c36de v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa83d78a5 v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa9a7c3fb v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xbc7c18a8 v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xbf426d9e v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc2c39337 v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe9242a56 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x0c12f9a4 videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x2064eec6 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x36f6678a videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x371e845f videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x405a8942 videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x49a89a6c videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4fafa928 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x5347f31a videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6984ad58 videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6e67fef6 videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x715df91f videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x73b38968 videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x780f10fb videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x78301f06 videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x798d53f9 videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9d2af67a __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xaa37c446 videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xbaf6ba02 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc29e60bc videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc8e8f791 videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc8fde34b videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xd1f3ccef videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf10d976c videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xffdcd9b3 videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x23ca6784 videobuf_dma_contig_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x98da1977 videobuf_queue_dma_contig_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0xc062b9d0 videobuf_to_dma_contig +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x09085e21 videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x10ccec42 videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x45daa8d9 videobuf_dma_init_overlay +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x553a86d0 videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x7dab9b98 videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x8d1a303a videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x9691c603 videobuf_dma_map +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xa5dfe045 videobuf_dma_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xc59870d9 videobuf_dma_init_user +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xcbb71f63 videobuf_dma_init_kernel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x4076e81a videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x4fd2441d videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x7208e321 videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x0747b43b vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x09bd4894 vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x16cdfdce vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x1a6daf01 vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x1d1b8014 vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x3b39cabd vb2_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x3b68ab05 vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x430d5561 vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x4359bfb4 vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x43f5ee21 vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x44680d69 vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x478d6b37 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x4d1d9ea0 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x4e6a8f30 vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x4e8894e2 vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x56a73df7 vb2_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x58c8b8fe vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x610471f9 vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x63857671 vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x6d3c93ed vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x86849ce8 vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x8b7aeb84 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x962c22a1 vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x9dd1f63d vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa7cfd195 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa81188cc vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb1217b3f vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb744bd0a vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xcce52433 vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xcd3800dc vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd6d48a9a vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd83a6d66 vb2_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd925a2b5 vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xdcffecf1 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0x1c1942c8 vb2_dma_contig_init_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xa5734b14 vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xe57f0426 vb2_dma_contig_cleanup_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-sg 0x882443e6 vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x4019cbc0 vb2_get_contig_userptr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x93f7b1ae vb2_put_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0xb3e6acdc vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0xe3eed8f5 vb2_get_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-vmalloc 0x303c1933 vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x051c24a6 v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0748bee6 v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2a3a18dd v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3d464b2b v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x45d969af v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4f616a84 v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x646e80ab v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7702246c v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x79093715 v4l2_compat_ioctl32 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7fb88c72 v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8c9dd03c v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8d01e692 v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8f6f5517 v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x98fcb118 v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa0a3c5d5 v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa4214d58 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xadbad578 v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc60fb147 v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc67ed682 v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xced2747e v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd4180a83 v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdf5e4ca5 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdfbe4a09 v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf8c07a45 v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x724ca77a i2o_dma_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x76a9301f i2o_pool_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x9a838d5e i2o_dma_map_sg +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xabfbc448 i2o_dma_map_single +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xc28aa427 i2o_dma_realloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xcf59f3be i2o_pool_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xcfef35b5 i2o_dma_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xe4634afd i2o_sg_tablesize +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x468ed08d pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x91bca2d8 pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xed61f07e pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x317ff770 kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x5644e585 kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x68cdceff kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x6fb230f9 kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xa443c577 kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xa6844b67 kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xbcd51bf7 kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xbd3c65d9 kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x75e63465 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x8e0319b6 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xcff559ce lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x056847bd lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x1480b085 lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x3b7c318b lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x3f9933cb lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x53d715a9 lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xa8061609 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xab209226 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x3591af9f mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x4708c07d mc13xxx_common_cleanup +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x53c83a98 mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xa64bafe6 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xe6f1e4c6 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xf4fe11ae mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x051f08ff pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x11067b22 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x3b884923 pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x4999d705 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x52bcd21b pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x7bb3c8af pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x991c2e6e pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xb77fa33a pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xe8609603 pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xf7f7fe37 pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xfe307e30 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x4c60ca01 pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xdbfa5f6e pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x341153b6 pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x8c94c9ae pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x9bd89c06 pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xe1c06f25 pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xe67b1f4e pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x01a33234 retu_write +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x4fca3918 retu_read +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x0190731c rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x0990fd60 rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x0e7cf414 rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x130d2b5c rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x27274c3e rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x33ff67c6 rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x6276b12a rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x7f240517 rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x84e6131a rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x85764bca rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x8d42b142 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x90e4f10f rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xa6b49581 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xafbe6df0 rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xc5ee2148 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xd6269658 rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xdec783d7 rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xe1dcb142 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xe80e3ef1 rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xeeb048dd rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xffd21c87 rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x04a88023 si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0b2cf1c1 si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0bb6a8a2 si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0e4c237c si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0f34b827 si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x172acc1e si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2006ce79 si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x25513110 si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2f667e22 si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4580156d si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5ba1d707 si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6c85df2b si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x755b06b6 si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7648a2ed si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7c85d124 si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x88f82184 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8bdc8b64 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8ff13ba9 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9223ec14 si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9efc7203 si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9fc7e5d5 si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa44b3269 si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa4cb9d09 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa59e5635 si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa5ea73c6 si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa78c064d si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xab1a081c si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xab7c98dc si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xace45c36 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xbf80312c si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc7ee6dee si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xccbd9fff si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd5cc1c6e si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe4e02fc8 si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x2a9ded2b sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x4dcd1c27 sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x5c33ea79 sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xb89202a0 sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xdd56879f sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x7ab41caa tps65217_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x9b5abbd2 tps65217_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xbea4a421 tps65217_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xca85bcd7 tps65217_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0xdb7a7a34 ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x185a88e2 cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x26516370 cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x2d237ab5 cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x87e96e02 cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x27cb133b eeprom_93cx6_multiread +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x63d2ff63 eeprom_93cx6_wren +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x822222db eeprom_93cx6_write +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x98bb5a22 eeprom_93cx6_read +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x1dbc1437 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x1f1da0b6 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x4d779e7c enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x79fd7f7f enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x92ebcff4 enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xbcffcc0a enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xe92ba191 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x0259d781 lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x14032d27 lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x2db94a76 lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x37fc6ad6 lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x5764d571 lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xb0ce41ca lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xba330f4c lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xd51a09f0 lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x0ecbb93d mei_cl_set_drvdata +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x194e3cb8 mei_cl_add_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x29e02e20 mei_irq_read_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x2d8b37f8 mei_cl_disable_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x2e288faa mei_irq_compl_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x2f71bf83 mei_device_init +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x36460257 mei_cl_enable_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x3bbb5770 mei_restart +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x702745bd mei_stop +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x7b77a200 mei_irq_write_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x7c3e7581 mei_cl_recv +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x7e574854 mei_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x80f9c92c mei_cl_get_drvdata +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x8152c925 mei_cl_register_event_cb +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x88b2526c mei_cancel_work +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x8a2a833d mei_cl_remove_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x8b7c793d mei_start +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x92d647af mei_cl_send +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xb49ba176 __mei_cl_driver_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xd04b27c3 mei_reset +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xd25bb720 mei_cl_driver_unregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xe7b10545 mei_deregister +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x42b7cffd st_register +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0xb2aed73d st_unregister +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x0f6680ea vmci_qpair_produce_buf_ready +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x1152e318 vmci_qpair_get_produce_indexes +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x13aa5a5d vmci_datagram_create_handle +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x1872c7af vmci_qpair_produce_free_space +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x1a195863 vmci_context_get_priv_flags +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x31f6ad8f vmci_qpair_peekv +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x3ef56cd5 vmci_qpair_alloc +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x4b630dac vmci_get_context_id +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x4ba5c46b vmci_qpair_peek +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x50a255c9 vmci_doorbell_create +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x53c20507 vmci_qpair_enquev +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x612df9ae vmci_qpair_detach +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x677c36d0 vmci_is_context_owner +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x69ef87ff vmci_datagram_destroy_handle +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x6cc1a5f7 vmci_datagram_create_handle_priv +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x722d488a vmci_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x7d540b50 vmci_qpair_consume_free_space +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x81d61eef vmci_qpair_dequeue +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x9624c58c vmci_datagram_send +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x9973b9b2 vmci_qpair_consume_buf_ready +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x9d16164a vmci_send_datagram +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xccbb53d1 vmci_doorbell_notify +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xcf5ed7ef vmci_event_subscribe +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xcff91c6e vmci_qpair_dequev +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xdac94780 vmci_qpair_get_consume_indexes +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xe67343c1 vmci_qpair_enqueue +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xe7e7c107 vmci_doorbell_destroy +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x355553be sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x46d0abe6 sdhci_disable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x4c4e4695 sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x56d755d2 sdhci_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x5e0d2b12 sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x880bf454 sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa0069b11 sdhci_send_command +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xae394b70 sdhci_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xdc5b5851 sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xe3c5557b sdhci_enable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xe90d4e68 sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x466b8f0d sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x546577c4 sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x9b48d547 sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x9f6cca50 sdhci_get_of_property +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xbb622aa0 sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xc71aef9d sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xdb70542c sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x0786bdd0 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xc5b1bdae cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xfa989846 cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x3b760ef4 cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x45244524 cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xc88fc172 cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x74cb6c35 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x00763a28 cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x47d0605e cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xab6705a1 cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0418e12a deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x04ffc3e9 mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x15cffb6d mtd_is_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x25008345 __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2c81eafd mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x32ab94df mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x38db487c mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3a88bacc unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x422bc713 mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x45794a48 mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4b48e0fa mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4c1e0974 mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5011dce0 mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x54abcf69 put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x58afe41d mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5bf925c1 mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5faa9380 __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x61f04266 mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6448f1d0 mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x764ec4ff register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7681402a __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7bdba034 mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x80d79291 mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x95c1ca0a get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9b117ec5 get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa571dbec mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb876a8ff mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc6590d92 mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc7ba60f2 kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xcc28cf70 mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xcfbe06fe mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd0966e60 mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd1aef2dd mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd1d30209 mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd5f5802c mount_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd68ed4e1 mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd6f0bccc mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xdf740bee mtd_erase_callback +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xdf9ca3db mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf15504a4 register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfbba2899 mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x31174795 register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x4ac370e6 add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x6e7f7c5c deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x73c0f580 del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x7c12872b mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0x179b2d84 nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0xb3816e0e nand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/sm_common 0xff87dd65 sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0x6276540d onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0x67a2ac16 onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x02b5a0c0 ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x0721bc3c ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x1fc1d1cc ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x23d03ba1 ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x4af3b27b ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5cfdd22d ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x7597ee6e ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x7858ff24 ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x78ecb256 ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x7e75d48a ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x9207b695 ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xbf938770 ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xe16b24b0 ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf3318c5c ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x0b77bcb6 register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x75d99ce6 c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x9360f99d c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x9d0c773b free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xb5d126d2 unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xe59d0e2f alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x0f541af8 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x20ff30b4 alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x222c295a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x237309e0 open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x29490b88 can_led_event +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x33ddc7e0 devm_can_led_init +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x47613346 can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x49b3cedc can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x66c8ae31 can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6e797827 can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x7a19a6ef alloc_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xa1471d86 safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xacb8f565 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb346573b can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb9b42851 close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xf303dce6 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xfd37f231 free_candev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x11394722 free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x5520a200 alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x635a4468 register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xced0301a unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x09d6672e alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x777cf7e8 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xae827065 unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xe4e373be register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x665a3304 macb_get_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x9d753642 macb_get_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x9ec01bb2 macb_set_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xac1a6b3b macb_mii_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xd04ed317 macb_set_rx_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xe6985b06 macb_ioctl +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xedc1f7e3 macb_ethtool_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0065124f mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0204a574 mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x02f79391 mlx4_fmr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x04c1549a mlx4_fmr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x08d60f88 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x098d9f67 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0c54a5a3 __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0f66cbc9 mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0fd0e458 mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1199f3af mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x135f905c mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x19b998e9 mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1dbfc943 mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x20e92ff0 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x23c0562d mlx4_fmr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x26aa6b33 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2ae6879c mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2ef81568 mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x318b8f1f mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x32aabb9d mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3d47a401 mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3de9d5ac mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x41addd05 mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x42572280 mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x42718334 mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x481eb2e8 mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4b21d35d mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4c1ca204 mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4dc02647 mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4decc799 mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4f87f193 mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x51e780c5 mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x561504f2 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x58742dae mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x593133d7 __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x59ee7ae3 mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5dddfe0f mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5e6a2850 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x60d03d13 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x616e3efc mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6397922e mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x659219a0 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x670164c9 mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x67351d22 mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x69eb42d8 mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6b7cd77f mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6cc015ed mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6f76640d mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x78f31fa6 mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7bd107f3 mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7e1c9857 mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7e249466 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7fb37739 mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x83ce6d64 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8625e71c mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x86bed2c4 mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x880ae2c5 mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x886a7e86 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8addc0c7 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x907186bd mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9638ac26 mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x970f1a11 mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x99c88419 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9a0f138a mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9acfd458 mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa09b8d2c mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa1126dba mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa766c420 mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaa594859 mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb287ef88 mlx4_map_phys_fmr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb367d4f8 mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb3b33c5c mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb439f297 mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb60dbc9b mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb8068207 mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb9464745 mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbc37887f mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbc7c1031 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbd8b95c3 mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbd9889f9 mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc623f6c0 mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc6cceb9d __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc80b11d2 mlx4_fmr_unmap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc919729d mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcc5ac7d6 mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcd719371 mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd0cfb34b mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd4ef45cf mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdbe8331a mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdbf23771 mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdfe83cdd __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe205a897 mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe539d5f9 mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe834054f mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe851ca27 mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe8775984 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xec3c7934 mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf5735e0b mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf5d01a50 mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf9bf293d mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x004ff96c mlx5_core_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x119bc729 mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x16dd8c37 mlx5_core_destroy_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4f8d4a1d mlx5_core_eq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x51056f6a mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6129af37 mlx5_core_mad_ifc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x64059c84 mlx5_destroy_unmap_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x71e345b1 mlx5_core_create_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc2b84c6e mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc69be19f mlx5_core_xrcd_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd6c4ef56 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdaa3c25e mlx5_create_map_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xddf65453 mlx5_core_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdf281584 mlx5_core_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf7e801d7 mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf9fd4e77 mlx5_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfedd0577 mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x18b1888a macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x8df6c42a macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x920ae95e macvlan_start_xmit +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xa6f37c39 macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xfdf8991e macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvtap 0xf7b44cad macvtap_get_socket +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x6d806a21 usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xd95c2a87 usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xe6972d99 usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xf753cdda usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x05378441 cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x521f8f9c cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x6521e324 cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x813b960e cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x9b7e233f cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xa229cb3d cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xe92f143c cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xfb4e0dad cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x0dac73df rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x1db038d7 generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x3a32cce6 rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x4295cf5b rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x84350e2f rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xd058f0b5 rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x24638532 usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x309c2c89 usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3f54e372 usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x41d964e0 usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4633a8df usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4af13add usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4b8f767c usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x525909b7 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x53cce1ca usbnet_set_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x61002e4f usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x682ae50d usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6e04c1b0 usbnet_get_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x75aa88c7 usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7d8aa6b0 usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8688b74d usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8c98804f usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x949a503e usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa2bad406 usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa309a452 usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa4b388d7 usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa7eb6ac4 usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb1ce33ee usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb4b409c5 usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xbb7d691f usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xcb0a75b4 usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xd903064b usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xdd234a25 usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf0204c03 usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf2e21f50 usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf6fd17cd usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf9bfe5ab usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf9f49938 usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x3c31e5aa vxlan_get_rx_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x5c612eeb vxlan_xmit_skb +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x6313e6f6 vxlan_sock_release +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xe76dd1f3 vxlan_src_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xfbed57a0 vxlan_sock_add +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x373ef38f i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x3ed4ad18 i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x4ec60e44 i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x712e4af4 i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x965c1787 i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x977a3f85 i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x9ac281c6 i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xac2145be i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb28fe5c9 i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xc1b7ce05 i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xcd15ce2c i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xcf7bf54c i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xd5381686 i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe6f899d2 i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe91f0fcb i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xfd721108 i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x356f7872 cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0xbf4ef679 cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0xcdea680e cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0xf051dc12 cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/ipw2x00/libipw 0xfd80beb1 libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x4c499a0d il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x61d97a72 _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x914e4fbc il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x9c81d747 il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xc0c58c8f il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x02c8ffa8 __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x0632f0fb __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x23b31849 iwl_notification_wait_notify +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x2489fb45 iwl_nvm_check_version +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x54305649 iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5d0a212e iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x60433221 iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x67145370 __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x6715334b iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x6a966cdc iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x6c142dba iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x6f2c3c01 iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x7413a33a iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x78f74df9 iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x7a841a04 iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8467e3e1 iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8c5d5ab3 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8fbfd073 __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x95795c57 iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xbeb36f62 iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc785443c iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xca5a9217 iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xcc1bad9c iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xcf341945 iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd1db77fe iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd608a9be __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd92ac331 iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xdd3e32a4 iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x116360d5 lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x12958cc7 lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x13fd67db lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x2501cd46 lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x276ffc67 lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x36828e4e __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x6ffdefb3 lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x7eb49aef lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x8aab74fb lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x93368930 lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xc20362b2 lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xe71cfc13 lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xe8ef2566 lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf854d4f1 lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf9242b5f lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xfb306892 lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x2181c8bd __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x663e3f9a lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x6b2f99a1 lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x9060e65b lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x9ff2c952 lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xb94d37cb lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xbbb86125 lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xc85e6899 lbtf_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xcd854c09 lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0xc9c318f1 if_usb_prog_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0xfd8df3f6 if_usb_reset_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x1650a4d5 mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x2267b7c3 mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x3dd649a8 mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x486f57d4 mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x71424237 mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x714d7b88 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x7c492ef2 mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x838c44b6 mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x8a106df9 mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x8fe90644 mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x9841ebcd mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x9e6b1088 mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xaf9ee718 mwifiex_deauthenticate +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xc1a3b5db mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x0822dd54 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x132bc5d3 p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x23473db0 p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x3e44126a p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x50dafeeb p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x6a40bf6d p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xd53b8a1d p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xebacfcea p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xfe6a4083 p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x0a49d3c9 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x195689f3 rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1fc18849 rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x23e01d29 rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x241087da rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x2e7e8181 rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x30535382 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x34afd1f6 rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3fdfe18d rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x433da091 rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x45192662 rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x465344a8 rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4b679f4f rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x5420aa5a rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x58be2fad rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x5fbc4f59 rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x66e7d00f rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x71835ac6 rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x73393d1a rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x73ff6b31 rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8a41742c rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8b2aa521 rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x97b4d164 rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x9b7b56ff rt2800_get_tkip_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa4a63c97 rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb1050b58 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb2a6165a rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xc0935213 rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xc67e622c rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xc91ef663 rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd8ff9ee2 rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe36c3f55 rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe631341b rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe80fa17f rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xefb72e69 rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf03c4331 rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf7c853f2 rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xffd5a19b rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x1377a06f rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x41defd53 rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x4d36e14c rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x64b620cb rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x7d1cd4db rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x85746edd rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x89f02a36 rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x8c32c430 rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x8e3606c8 rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc915f314 rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xcd198454 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xd5ab5be9 rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xd5dee7dd rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x071d97e0 rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x0f47cf01 rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x16f651e3 rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2aa6b135 rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3899a8de rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x39864c39 rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x401aff13 rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x40db6565 rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x41c38153 rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x444e60ad rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4c1a465f rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4c4b8776 rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x58cc21e8 rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x623d1a90 rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x62444605 rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x628dc0c9 rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x751c284f rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x7a48cb85 rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8153e3f8 rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x81d56479 rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x87b19e0d rt2x00mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x890d01c2 rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8dc2a8f3 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8fc9cc48 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x98e02353 rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9e29d476 rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb1f4ce55 rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb3e62507 rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb640d2af rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb64373e5 rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xbd8967ad rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xbde77d93 rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc0730007 rt2x00mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc53dcce4 rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc6148770 rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xcc663544 rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd4dd7aea rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd562c6e0 rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd904271e rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xdb80e405 rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe5d0e4fd rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xecac475b rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xee3c92c2 rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xefa64f1a rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf5d2348d rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xfbabfccd rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x09a9f4f2 rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x638aeca2 rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xa9919300 rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xbf998e93 rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xe877498b rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x2a8fc23a rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x901df10d rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xbd3b946f rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xeacda3d9 rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x28288db6 rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x2d0f9310 rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x3aca945a rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x5c2c5f3c rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x6606c8f5 rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x6ccb9f9e rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x6d807719 rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x71d94dbf rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x7fca1cb0 rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x9dd34c65 rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xa65f9209 rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xb3c8657a rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xbb00745e rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xbc043bbf rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xc414e180 rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xd0051779 rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x57b93314 dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa667a289 dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xcc4dee65 rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xfba2069d dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x01455f3b rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x08b4fcdc rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x1607a489 rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x1976f429 rtl8723_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x1dbefc1a rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x20abeb25 rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x21004720 rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x237e5fcd rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x2f68df73 rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x3db15213 rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x46d385f7 rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x4c0d6a41 rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x56c5d06c rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x591b7404 rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x62cea3bb rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x664bd85f rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6fcccb79 rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6fe020fb rtl8723_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6fee3a6c rtl8723_phy_set_sw_chnl_cmdarray +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x725bc304 rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x787a235f rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xa2f7ac8b rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xaf4d6d94 rtl8723_phy_calculate_bit_shift +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xc0acf164 rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xc6de05db rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xc6e0b097 rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xd19e1480 rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xd53a6360 rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xf6e43308 rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x160a24ed rtl_attribute_group +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x19aa342d rtl_dbgp_flag_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x241dedc1 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x2e2b4304 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x3a7dede1 rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x41131ec1 rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x5e7c50b3 rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x6b4de810 rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x7cd235d6 rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x7f6c658f rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x869e034c rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x9d6e6d00 rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xa39b79a6 rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xc16f4c43 rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xc6077863 rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xd2b1f48a rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf4430575 rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf527588a rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf893a9c2 rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xfa9d643e rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x093a6b86 wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x3fd9e718 wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x6154ab52 wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x093fbd11 wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x095b150a wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0b2c9f81 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0cec2c0c wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0d28e1e6 wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x123bda48 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1849b303 wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x192fdbd1 wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x22930745 wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x303f111c wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x30669bc0 wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x32597a9d wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3499f269 wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3bb188d5 wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3d4068b0 wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x43e84355 wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x440f1e10 wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4af23b33 wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x518c34f5 wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x53dff67d wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x59d0a025 wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6a565a76 wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7397c720 wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x82b5a1c2 wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8365d8c4 wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x84fefbb9 wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8a194ce0 wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x91fd4652 wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x92bfc700 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x96c00a47 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9c5e4485 wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9e0efa52 wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9f569708 wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xaacbc7bc wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb37f6951 wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb71b0289 wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc1501881 wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc3d1a121 wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xce28db94 wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd39bb505 wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd5436fce wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xda8760a8 wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xdee73bb4 wlcore_remove +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x3b577068 nfc_mei_phy_disable +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x5e6c2458 mei_phy_ops +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x8b4e7b3b nfc_mei_event_cb +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0xb2fb0e66 nfc_mei_phy_alloc +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0xe82e19a5 nfc_mei_phy_enable +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0xf9f645d4 nfc_mei_phy_free +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x30934216 ntb_transport_max_size +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x32537aca ntb_transport_link_query +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x3d54dbfc ntb_transport_tx_enqueue +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x436098aa ntb_transport_link_down +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x4862ae79 ntb_register_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x77ae9ef1 ntb_register_client_dev +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x82e6c13d ntb_transport_qp_num +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x9c992c8f ntb_transport_link_up +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x9eb43bae ntb_transport_create_queue +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xbe26a225 ntb_unregister_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xc270dc24 ntb_transport_free_queue +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xc37d9036 ntb_transport_rx_remove +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xd40e7a02 ntb_transport_rx_enqueue +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xfe897ddd ntb_unregister_client_dev +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x0a418418 phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x0e3c094b phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x1063bf48 devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x1601a182 devm_phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x1fa01c96 devm_phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x23b8de60 __of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x2e325114 phy_init +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x34eff2c6 of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x3c1e4f57 devm_phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x3ea17426 of_phy_simple_xlate +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x413f44cd phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x42c5bc4c __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x5587eb4f phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x5afec848 devm_phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x73f7b6d5 phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x7f354e71 phy_pm_runtime_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xa438085f phy_power_off +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xc56e1dc3 phy_pm_runtime_allow +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xd0c33909 phy_power_on +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xda0b43aa phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xe125ca8e phy_pm_runtime_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xf439a7cb phy_exit +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xf7cd88e5 phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0x5e1e06be asus_wmi_unregister_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0xc108feb1 asus_wmi_register_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_ips 0x46809fa9 ips_link_to_i915_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/mxm-wmi 0x232b5238 mxm_wmi_supported +EXPORT_SYMBOL_GPL drivers/platform/x86/mxm-wmi 0x61cdf799 mxm_wmi_call_mxds +EXPORT_SYMBOL_GPL drivers/platform/x86/mxm-wmi 0xe26032eb mxm_wmi_call_mxmx +EXPORT_SYMBOL_GPL drivers/platform/x86/thinkpad_acpi 0x706cdcef tpacpi_led_set +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x3ecf6cfc wmi_install_notify_handler +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x561c634a wmi_evaluate_method +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x876d29f1 wmi_get_event_data +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xb5a6ebe2 wmi_remove_notify_handler +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xc9d4d6d1 wmi_has_guid +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xda29f8b0 wmi_set_block +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xfb882fb7 wmi_query_block +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0xb4db3d6d pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0xc005df35 pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0xc497b8c6 pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x73f7292d mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x76f1e56b mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xc278209a mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x591ccd55 wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x77ec9c3f wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x894b84bc wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xbddc2c86 wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xcb037980 wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xf240b79a wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0x28ef925f wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x01087213 cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x09e72d07 cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0b6a2136 cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x11c4b35c cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x165cc1f3 cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x19106f12 cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x20107f55 cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x26caaef6 cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x28575e6c cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x288f8f88 cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2e11d0a5 cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x340a5ec7 cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x36d3f435 cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3a5c4389 cxgbi_ddp_page_size_factor +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x469a09c9 cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x482acd6a cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x486c38df cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4e45b19d cxgbi_ddp_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4eb1079f cxgbi_ddp_ppod_set +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x583db046 cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5b024784 cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x610ff3fa cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6ed279e8 cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7e2bbcc4 cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x82f94158 cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8c2ba369 cxgbi_ddp_ppod_clear +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x92785c19 cxgbi_ddp_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x97c7e2bd cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x980df410 cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x98e2bc69 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa509c037 cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xacaa077b cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xacb5d0bf cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb6bae3e6 cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xbbc9ceab cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xbd5350b2 cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc5f8ccf2 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcee854ff cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd2431684 cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd2c7eac5 cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xda9b0f76 cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xdaa9e83d cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xdce067be cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xdf795400 cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf83b5558 cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xfe7167df cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x0255fa65 scsi_register_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x0d909411 scsi_dh_attach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x0f99a737 scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x211729a8 scsi_dh_set_params +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x2cae8d94 scsi_dh_detach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x593a36c2 scsi_dh_handler_exist +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x786c5105 scsi_unregister_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x93d55e63 scsi_dh_activate +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x015614e7 fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0fb51275 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x2ccf990e fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x2d5fe432 fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x374c1e1c fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x3f4f6abd fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x434ac22a fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x4cbe09f9 fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x589eda2e fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x7062a761 fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x71a673f9 fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x84b3d915 fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x99f0c3de fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xa206c49d fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xa545892d fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xc93fe760 fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xccc4f381 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xd9861743 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf714bb27 __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x50afb021 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x58e28c1d iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x9fc75df1 iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xa1eb3580 iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xb4975539 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xe9eb4167 iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x14f04bbe iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x21da0d2c iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2521405d iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x31e5c501 iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x36cd949c iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3a92aa9c iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3e58ca7e iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4ac2f64f iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x560781d6 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5faeb42c iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x60fcda98 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x61b38bd1 iscsi_eh_target_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x65f8bbfe iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6aada392 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x74c20eee iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x764c547b iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7c35f29b iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x80b12faf iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x83d98035 iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8a0c4587 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8f2b52df iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x953c2ce5 iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9847e06f iscsi_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9d6fd647 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa19811e1 iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb1aca0d3 iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb8f91749 iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb97b005f iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc10bf7dc iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc5b4991f iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc5fe65ac iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc8764e8d iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xcaf976cc iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xcb43257c iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xce9725a5 iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd2111f84 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd6fc9460 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe08a5fbf __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe31dcc36 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe787b331 iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf28272f6 iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf62cfcfb iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf79f9ff6 __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfa757e31 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x155c036b iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x1c554c98 iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x3aa8682c iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x40e91658 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x4169c27f iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x4d1d33c0 iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x585bfe2f iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x595e545b iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x5fd4cfbc iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8c3b28cd iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x9a9284f8 iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xa859ef3f iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xaa2a5375 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xc3993737 iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd16a78f0 iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xddf40c27 iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe6870122 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x02a8fca4 sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x086d1c3e sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0cd71f4e sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0eee7546 sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x18a996da sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2537f46b sas_change_queue_type +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x427ead24 sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4b0b392b sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5550354b sas_domain_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x55cb7d52 sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5d69ffb4 sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x66d62d74 sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x66fc0347 sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x69a79cb8 sas_eh_bus_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6af4b93f sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7ce0bccd sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x95103ca1 sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa1559e78 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa544b2b1 sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbcbaf176 sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc2021694 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd8f7401f sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xdba66da6 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xdc6cff82 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xef888470 sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x4ddf5451 srp_iu_put +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x68fc1540 srp_transfer_data +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x9419048b srp_iu_get +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xca91f2d3 srp_cmd_queue +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xd2638836 srp_target_free +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xf4b0ec65 srp_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x12f9e5b2 scsi_tgt_cmd_to_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x1a49a9cf scsi_host_put_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x32010a99 scsi_tgt_alloc_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x4228b945 scsi_tgt_queue_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x7502a6ba scsi_tgt_it_nexus_destroy +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x7cd4030c scsi_tgt_it_nexus_create +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x892fd9ba scsi_host_get_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xf3607828 scsi_tgt_free_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xfce094c5 scsi_tgt_tsk_mgmt_request +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x07f4909c iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x088f42f7 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x09e601d7 iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x12b6d46d iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x14d50ae2 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x16f9e5ac iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x275e34d1 iscsi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x302c6f11 iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x37e0d6c5 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x397f0f1a iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x39f192d2 iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3cfbb93d iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5b6d8a45 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5c888a56 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5e05a6cf iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5e525a13 iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x61161041 iscsi_is_flashnode_conn_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x63819639 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x67c33657 iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x75906d18 iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x843a6aa2 iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x84cc2ce9 iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8de0e7ea iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8de4fb96 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8e997bc1 iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x94cdfbac iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x97d74f11 iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xabe8cc90 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xad5f94cb iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xae5cc28f iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb27f65ff iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb5fd85a5 iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc2958880 iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc555c57c iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc8047214 iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcd92e0b8 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd23f8ad6 iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe0dad3d9 iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xef07fa5c iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfca42436 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x118d6e13 sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x25260cfe sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x5b7ba8bb sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xc367ed08 sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x216fa636 srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x51e6b25c srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x85e2f0ff srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xd14ec7fb srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xee891cc0 srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xfcbf0e30 srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x0ccc8621 ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x44f4ff7f ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x4a420b47 ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x60fee744 ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x835a0aab ufshcd_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x94728fe4 ufshcd_resume +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x5d51e882 spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x70f4f78b spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x89841b50 spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x94b19212 spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xdbc7b222 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x257e87f7 dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x2854bbc2 dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x3966fba9 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x6b6c4b54 dw_spi_xfer_done +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xf0a1c70f dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0x4f26421f ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x022da051 comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x094c6c49 comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0b0dc19d comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0b40ca2f comedi_pcmcia_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0df84afd comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0e7276e4 comedi_error +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0f784e90 comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x11eb0cc3 comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1324c358 comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1e83ebda comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21f6be93 comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x29e4402d comedi_buf_memcpy_to +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f03fbfb comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x325a6942 comedi_buf_get +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x32b80848 comedi_pcmcia_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x332a8ecb comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4389389a comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4c66951b comedi_buf_memcpy_from +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x50b57274 comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x64e769fe comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x68797be9 comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6ab3586e comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x72735b9c comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7f141fd0 comedi_pcmcia_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7fd50f0f comedi_buf_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8048867d comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x810c4d3e comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x924b8fe1 comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x970f0c25 comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x97661803 comedi_pcmcia_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x98100bf0 comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9a9fcddb comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9bbdc64c comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa2ad5373 comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa524885a comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb45f2d17 comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb812fb95 comedi_dev_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb88f0a72 comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc06b9f27 comedi_pcmcia_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc7adfffe comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd5ff5fc5 comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xde1199bd comedi_pcmcia_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xeefe184f comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf1b97e43 comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf266b8b3 comedi_to_pcmcia_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf775f14d __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfccfc19d comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfebc3c70 comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x42064773 subdev_8255_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x852df358 subdev_8255_init_irq +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x9f1de9be subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x7433d3f0 addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x29d754ad amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x8fd1410b amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xc01196cd amplc_dio200_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x2b1ed3c9 cfc_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x5eb61a25 cfc_read_array_from_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x7a374557 cfc_write_array_to_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0x03088993 das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x0c60e1bb mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x0fb570d4 mite_bytes_read_from_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x157ef395 mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x184ef1d6 mite_setup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x2a62f72a mite_bytes_written_to_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x60a87ce6 mite_setup2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x6d9bfa7b mite_dma_tcr +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x7468af3e mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x831c2508 mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x8eaba0af mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x923e524e mite_bytes_written_to_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xa6bfd272 mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb7e9d5b0 mite_bytes_read_from_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc078a28b mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc43e30c9 mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd0d9f1d1 mite_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd176c051 mite_sync_output_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd2d19daf mite_sync_input_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe20ce7ea mite_unsetup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe2ca72a9 mite_get_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xef636935 mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xeff76a87 mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc 0x7d991905 labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x19812d43 labpc_free_dma_chan +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x87efa9a3 labpc_setup_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x9174abf0 labpc_init_dma_chan +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x9c2ab481 labpc_handle_dma_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0xb2e9da36 labpc_drain_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x0289be6b ni_tio_rinsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x2abf4d4f ni_tio_winsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x5f2e8a19 ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x71308c4b ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xa6a6da1c ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xaf0bec73 ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xc2ab8a4b ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xe27cf6f2 ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x1d1d4b52 ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x47a22ef8 ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x8c9cf865 ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x967da33c ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xabe02f2c ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xac5abfd0 ni_tio_acknowledge_and_confirm +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x8c683d10 comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x8fa42c7d comedi_close +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xa9bf390d comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xb152fc3d comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xcac36695 comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xceb4402b comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xf00e080c comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x2206b003 dwc2_handle_common_intr +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x6286afe1 dwc2_hcd_remove +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xb05a818c dwc2_set_all_params +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xb0a7f29d dwc2_hcd_init +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x1a1b5249 oslec_flush +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x2feda75b oslec_hpf_tx +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x3227a28e oslec_snapshot +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x7dc9dddd oslec_adaption_mode +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xb2c66001 oslec_create +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xc8b5a524 oslec_free +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xd370f679 oslec_update +EXPORT_SYMBOL_GPL drivers/staging/iio/addac/adt7316 0x902fa672 adt7316_pm_ops +EXPORT_SYMBOL_GPL drivers/staging/rts5139/rts5139 0xbd5a0e51 rts5139_usb_ids +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x01477cf1 synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0e81c76d spk_serial_out +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x14f06fe7 spk_serial_in_nowait +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x2b719304 synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x3ff0567d spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x475e158a synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x5f3305cf spk_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x79022cfc spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x7bb2f297 spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e146195 synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8fe66c8b spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x97e4e40a spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9a888082 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb48956f8 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc766ae09 synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc91490ae spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xcda38867 speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd1b551a2 spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xde7ae2e8 speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe3aebf5c spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7e810f8 spk_serial_in +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x06c4b724 usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x3a950c86 usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x5e0b8181 usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x5e72d132 usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x5ed9d078 sockfd_to_socket +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x8712029a usbip_event_add +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x882a54a8 usbip_start_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x8c609201 usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x92fb6da5 usbip_event_happened +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xaae07a34 dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xcfe5337f usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xd02753dc usbip_header_correct_endian +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe1ea0586 usbip_dump_header +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe60e828c usbip_recv +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xf74a8631 usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x585ebaac n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/uio/uio 0x972fcbcd __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x9cb09d94 uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xe5b58a41 uio_event_notify +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0xae7f6f3d usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0xfe0e3887 usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x7967f219 ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0xebc509ac ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x00343816 usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x09c1b5b8 usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x182947a5 usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x1bdc2eac usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x1f674e9e usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2af7af1d usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2d944825 usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x425e74c5 usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x44e6cac7 usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x54917bce usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5abd4ae5 usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5c5efa54 usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x63a43ab5 usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7698e6c0 usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x797840e4 usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8037ff9a usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8f70997f usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9189e547 usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x94d7075a usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9537535e usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x96a9d254 usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9adbb561 usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9d6cc5af usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xa3daab34 usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb5528c11 usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xba3f2245 usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xbcf0d57b config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd433cf03 usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x4e7f5f6e gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x8e27d6de gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xa819a93b gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xf1981607 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x0eec418c usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x39bc86f3 usb_gadget_unmap_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x3b9c70ee usb_del_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x76c9d969 usb_gadget_set_state +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x77dccb13 usb_gadget_probe_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x8e08422c usb_add_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xb76d7e43 usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xca03b7a8 usb_gadget_map_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xcdf87e5f udc_attach_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x0a5230df fsg_common_set_nluns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x0e0573b8 fsg_common_set_cdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x141fce2a fsg_common_remove_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x1ccb58f7 fsg_common_set_num_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x2d10b6a7 fsg_common_create_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x51707c29 fsg_common_run_thread +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x6acb4179 fsg_common_set_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x7e26d4a5 fsg_common_set_sysfs +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x8b29e355 fsg_common_remove_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x99023bfc fsg_common_put +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9a0221c7 fsg_common_free_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9dc025a5 fsg_common_free_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xa46e6443 fsg_common_get +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd3ae3b65 fsg_common_create_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd468f882 fsg_common_set_ops +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xe4d1591e fsg_config_from_params +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x0dda09f9 ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x63d4375b ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x03ba58ae usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x05bf9a50 usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x1024b92c usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x1d1952b6 ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x51c65d27 usb_ftdi_elan_edset_output +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x626c327a usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x6b8e32e1 usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xc066fd07 usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xdc121e7b usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xe7d34f57 musb_interrupt +EXPORT_SYMBOL_GPL drivers/usb/musb/tusb6010 0xfdeaec4e tusb_get_revision +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x73f5c2e7 usb_gen_phy_init +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x9471af74 usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xc687f015 usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0xd79a293c isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x1bd6196a samsung_usbphy_cfg_sel +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x61ab5c88 samsung_usbphy_set_type +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x7a834a19 samsung_usbphy_parse_dt +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x7b2101fd samsung_usbphy_rate_to_clksel_4x12 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xa3e19076 samsung_usbphy_rate_to_clksel_64xx +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xbe151496 samsung_usbphy_set_isolation_4210 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xcf7eae74 samsung_usbphy_get_refclk_freq +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0xafe1d77e usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x23739839 usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x31bd3fb1 usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x32a0c3a1 usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x34cf4bbc usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x43e64c66 usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x526d0abd usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x55b2bfa3 usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x6d75c999 usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x6de264ae usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x91295405 usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x930b22ba usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x93d8d83d usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x9bd64d64 usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa0426a32 usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xad9764ab usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xbc93ad98 usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xd16c910f usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xe069d280 usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xe56679b0 usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xe71d1d8f usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xf4b2c948 usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x0ba4cb9e usb_stor_control_msg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x1bc3edc2 usb_stor_sense_invalidCDB +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x1efd8c9e usb_stor_bulk_srb +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x27ca6dae usb_stor_pre_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x3501d48a usb_stor_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x38c35d6e usb_stor_transparent_scsi_command +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x3be700eb usb_stor_disconnect +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x46f53c35 usb_stor_access_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x5702c448 usb_stor_Bulk_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x6f8eec94 usb_stor_Bulk_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x7554e2ab usb_stor_probe2 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x81601157 usb_stor_reset_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xb0bab867 usb_stor_clear_halt +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xbbaa62ec usb_stor_bulk_transfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xbc7f9e8c usb_stor_CB_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xc38ee16d fill_inquiry_response +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xcabaf883 usb_stor_post_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xdacd3357 usb_stor_probe1 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xded20935 usb_stor_CB_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xe3b629d2 usb_stor_set_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xe40b97b4 usb_stor_ctrl_transfer +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xe42a3fea usb_stor_suspend +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xf69e472a usb_stor_bulk_transfer_sg +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x0b178936 __wa_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x0bd816f0 wa_process_errored_transfers_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x122f15ac wa_urb_enqueue_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x406c8955 wa_urb_enqueue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x7ab5156d wa_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x8659fda7 wa_urb_dequeue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xcb55ad58 rpipe_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xea8ecf9a rpipe_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xee0c9a08 rpipe_clear_feature_stalled +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x0bb6bf5e wusb_cluster_id_get +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x1438c902 wusbhc_chid_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x1a34b33d wusbhc_b_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x24df7628 wusbhc_mmcie_rm +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x27e8f4c9 wusbhc_giveback_urb +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x4101dcb9 wusbhc_handle_dn +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x541a3ac8 wusbhc_reset_all +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x64ca526a __wusb_dev_get_by_usb_dev +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7299ee6d wusbhc_b_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7f0b7631 wusb_dev_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x974226fc wusbhc_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x9fcb5ede wusbhc_rh_start_port_reset +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xa11326bb wusbhc_mmcie_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xad2bd33c wusbhc_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xb725d128 wusb_cluster_id_put +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xc8cc88a7 wusbhc_rh_control +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf641acf3 wusbhc_rh_status_data +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf770a6b4 wusbd +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xfe2e17d7 wusb_et_name +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x0aab89ed i1480_cmd +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x2cba1e17 i1480_fw_upload +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x46a60413 i1480_rceb_check +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x0e57ad4c umc_device_create +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x21d36ac8 umc_driver_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x691a5385 umc_device_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x77792f90 umc_bus_type +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x7ae1af2b umc_device_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x91ef1e7a __umc_driver_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xc5b80dda umc_controller_reset +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xfca430e5 umc_match_pci_id +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x00f3d9e0 uwb_rc_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x08aa398b uwb_dev_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x08fb3dab uwb_rc_put +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0d78016e __uwb_addr_print +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0f9da142 uwb_rc_neh_grok +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0fc02440 uwb_est_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x14309c53 uwb_rc_alloc +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x1c895262 uwb_rc_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x1e8ca2a7 uwb_rc_reset_all +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x23613c89 uwb_est_find_size +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x2a6d6545 uwb_rc_cmd_async +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x3151ea95 uwb_rc_cmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x31bb492c uwb_rsv_accept +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4b5b8ff4 uwb_rc_get_by_grandpa +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4d57ae3c uwb_rsv_type_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5b045929 uwb_rsv_terminate +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x67235dcf uwb_rc_post_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x6dbfffd2 uwb_rsv_destroy +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x73f27397 uwb_pal_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7c61f536 uwb_rsv_get_usable_mas +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7d4ee2b9 uwb_radio_stop +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x816b9e92 uwb_est_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x861cf337 uwb_rc_vcmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x88be96e9 __uwb_rc_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8aeb3b6f uwb_rc_ie_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8b5c5fb8 uwb_rsv_modify +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8de5b63e uwb_radio_start +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x98413234 uwb_rsv_state_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x9c00d96a uwb_rc_pre_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa0f8858f uwb_rc_mac_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xac97316b uwb_ie_next +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb10dc4c9 uwb_pal_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb678fd16 uwb_dev_for_each +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb7d2c5e3 uwb_pal_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xbd873ba1 uwb_rc_get_by_dev +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xbfcbfcb0 uwb_rc_dev_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd3b2f0ba uwb_notifs_deregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd70caac8 uwb_rc_ie_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xda30b04a uwb_rsv_establish +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xde9803dc uwb_rsv_create +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe2345592 uwb_rc_neh_error +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe8f263b0 uwb_notifs_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe941d201 uwb_rc_rm +EXPORT_SYMBOL_GPL drivers/uwb/whci 0xfda62646 whci_wait_for +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x156641db vfio_device_get_from_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x1ccc6b75 vfio_add_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x546e74f4 vfio_group_get_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x5cc44b43 vfio_register_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x5e0451b6 vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xb2e63ab9 vfio_del_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x00348144 vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0d6339f7 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0e102341 vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0ebbc1e5 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0ffc2974 vhost_init_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x10d134ac vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1d08736e vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x269f7a09 vhost_dev_reset_owner_prepare +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2fd81db7 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x35746004 vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x362982a1 vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5683baa2 vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5a2a11fb vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5e1bf512 vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x63fea228 vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6a8c8174 vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x738484a5 vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x74125e98 vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x798a997b vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7a16c9d1 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7c209a71 vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa1dcbcf2 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa61878db vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb0713ea5 vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb979548c vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd0653e41 vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd5d9aab7 vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd64d9630 vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe0442e4b vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe4222e06 vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xfc834537 vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x04c4ce1a auok190x_send_cmdargs_pixels_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x2db8a9f0 auok190x_send_command_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x33c1ad00 auok190x_send_command +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x4995c882 auok190x_common_probe +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x4d6d4420 auok190x_send_cmdargs_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x69635b73 auok190x_send_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x7a19bc71 auok190x_common_remove +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xa22bd978 auok190x_send_cmdargs_pixels +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xc200457d auok190x_pm +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xd381ecec auok190x_read_cmdargs +EXPORT_SYMBOL_GPL drivers/video/backlight/apple_bl 0x2c63e051 apple_bl_register +EXPORT_SYMBOL_GPL drivers/video/backlight/apple_bl 0xdab0f892 apple_bl_unregister +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x29bbc681 ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x3bc960fe ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x618abf00 ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x7169bb7b ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x7f6d39ca ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x84233770 ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xcb863a13 ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/fb_ddc 0x33688809 fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0x3ca77c10 fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0xb0562683 fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0x9fc4b458 sis_free_new +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0xba4d11d1 sis_malloc_new +EXPORT_SYMBOL_GPL drivers/video/vermilion/vmlfb 0x016e6c20 vmlfb_unregister_subsys +EXPORT_SYMBOL_GPL drivers/video/vermilion/vmlfb 0x90c018c6 vmlfb_register_subsys +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x22a7af24 viafb_dma_copy_out_sg +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x292da7a2 viafb_irq_enable +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x30cc9311 viafb_request_dma +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x31469540 viafb_pm_unregister +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x79e6190a viafb_irq_disable +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x919a56da viafb_find_i2c_adapter +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0xb4f863e6 viafb_pm_register +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0xcaefb732 viafb_release_dma +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0xfff2dfd2 viafb_gpio_lookup +EXPORT_SYMBOL_GPL drivers/w1/wire 0x0c34cc29 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x2a422509 w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x54be33fa w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x552efcca w1_next_pullup +EXPORT_SYMBOL_GPL drivers/w1/wire 0x6c200855 w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x7c2f2afb w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x836d3276 w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0x876fecbd w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0xcafddd1d w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xe8fe2a57 w1_write_block +EXPORT_SYMBOL_GPL drivers/xen/xen-privcmd 0xdfd23b92 xen_privcmd_fops +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x11c9fc1b dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x9321df95 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc20e994c dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc6dc8c2f dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xdc583c08 dlm_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xeca9b75c dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x0b62fd2b nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x17ce645d locks_end_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x3ce1ce89 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x4a996eca lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x67c85326 nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xa0a44ca2 nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xb2aa634a nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xdf46747f locks_in_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xec57e837 locks_start_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xfb7ef67f lockd_down +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0687fb7c nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x07ea2267 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x09fe9d54 nfs_generic_pagein +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0c83144a nfs_pageio_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0cd7ab44 nfs_generic_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0f6bdecb nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x102a26b8 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x12ca28b9 nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1311db7b nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x13175f6e nfs_pageio_add_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x141e287b nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1557a95a nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x176466ae nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x19b03b70 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1d3c5cf4 nfs_file_fsync_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x204f426e nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22836e72 nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22a18e27 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2348d750 nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x25dcb5b5 nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x27dc8bc2 nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2b6fda62 nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2cbd624a nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x332e0490 nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x338efead nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x35fd21b8 nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x36624062 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3749d135 nfs_remount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x38702812 nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3adc5f54 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ca31f35 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3fe4353a nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4256c94d nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x46db19b9 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x46f52eb2 nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x486c56bf nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cbbcaca nfs_try_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4f0b2efb nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x508c9fe7 nfs_file_splice_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5434f5c8 nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x585ee4fa nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x58ce2a02 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5a8b90da nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e1d863a nfs_sockaddr_match_ipaddr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e4355a3 nfs_writehdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5f320ced nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x601571f7 nfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x62949bd0 nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6309de44 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x64da3b7a nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6556611f nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6759baf7 nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x67994453 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x68d9c6ce nfs_writedata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x68dc2199 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x694469db nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6c6e2901 register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x71630670 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x724874ea nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x75df442b nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x775357f3 nfs_fs_mount_common +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7774eb27 unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x79fdb708 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c3ecbeb nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c743de4 nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c9722ba nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7faae89f nfs_clone_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x80ea8f76 nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x814468a5 nfs_file_splice_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x823b7458 nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x82935e5d nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x850dd9c3 nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x853d4d3f nfs_destroy_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8961e41e nfs_readhdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89bc5a64 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8ded5add nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9337aa4d nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x94542012 nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x947d5a07 nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x94a0651c nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x95367db0 nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x96d63fcd nfs_initiate_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98a56ad5 alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9e0d995a nfs_file_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9e5b0313 nfs_pageio_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa053f438 nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa17080e4 nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa1bb526b nfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa417bd83 nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa4cdcc1e nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa5d6e5af nfs_readdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8d2d1ce nfs_callback_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8d43296 nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaf651bc8 nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb2fb5f57 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb606e716 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb6a0cb0f nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbe353695 nfs_setlease +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc1184883 nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc1bb6e4d nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc336b52d nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3677bd9 nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc37c6a6d nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3a0c8ce nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4ff1e9f nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5ef47d5 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc6b12e1d nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc7598fbb nfs_put_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc8adb762 nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc95e3a5e nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcee56191 nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd1c92521 nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd2513081 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd2a13065 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd6cf5b3e nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdaf85780 nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdb757fc5 nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdbeac0f8 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdc2d1565 nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdd0420c7 nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xddccbf4a nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe0d81f8f nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe420ab08 nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe8409482 nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xea1992df nfs_fs_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xebb1c829 nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf070e4ac nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf0cb87bd nfs_set_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf1d12201 nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf2119237 nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf37336b6 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf4221673 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf50ae161 nfs_fill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf5daefa4 nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb197ae9 nfs_initiate_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb7ee006 nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb99d119 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x06c36816 __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0dbd131c nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x170f3ed6 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x289b4304 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2c580011 nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2c816fe0 pnfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x386ac92f nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x39bdec0e nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x39ebfdba pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3a12e585 nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3dfe6fe3 __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x471de0a9 __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x51d40b70 nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x523d7c40 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5a9343fc pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x625791fe pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x641fc040 nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x68111171 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6e52c1e7 pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x723612cc nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7413bb46 nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x77cda128 pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x78c3fb60 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8074df4e nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x855e2cd1 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8b0349b2 _pnfs_return_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8eaea23e pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x927f3081 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa0c9786f pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa20c0fc4 nfs41_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa7b5195e pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xaef2a923 nfs4_insert_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb795ffb5 nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc389c507 pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc4572b80 pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd75fdaa9 pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd824b9d1 pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd9392203 nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdae23f59 nfs4_proc_getdevicelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe41f376a nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe6331f00 pnfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf731aaa7 pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfc1e2e8c nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x2f6da772 nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x96a47648 nfsacl_decode +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1d747ce3 o2hb_check_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x213a8683 o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x2a9c6f6a o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36418553 o2net_send_message +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36a28a9e o2net_send_message_vec +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4e072039 o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x5a38e784 o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x6480d33c o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x69fe3460 o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x81a17396 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x9d16fc63 o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa82a8645 o2nm_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xae808bac o2net_register_handler +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xbaeb4700 o2hb_check_node_heartbeating_from_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc3679d7b o2hb_get_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd60f2c6c o2hb_check_local_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf1a5611d o2net_unregister_handler_list +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf56c2017 mlog_not_bits +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x03c0c597 dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x2266d2b3 dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x543549f0 dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x64c4c68f dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x9b73c542 dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd5b97b37 dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd7ba575e dlm_errmsg +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd8fa57a6 dlm_unregister_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xfb86b96f dlm_errname +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x025e2d69 ocfs2_cluster_connect_agnostic +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x0562c415 ocfs2_cluster_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x16b2e575 ocfs2_dlm_unlock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x36c3ceb6 ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5469ce31 ocfs2_dlm_lvb_valid +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x7083dbd5 ocfs2_dlm_dump_lksb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x89502fe7 ocfs2_cluster_connect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x95597e5b ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xb4bd060c ocfs2_dlm_lock_status +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbbc4ef97 ocfs2_stack_supports_plocks +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xc23792a9 ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xdc823ea4 ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe2bd47db ocfs2_dlm_lock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe40cffce ocfs2_stack_glue_set_max_proto_version +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe417d940 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL lib/bch 0x231d70fc encode_bch +EXPORT_SYMBOL_GPL lib/bch 0x6b770f49 decode_bch +EXPORT_SYMBOL_GPL lib/bch 0x9463ff71 init_bch +EXPORT_SYMBOL_GPL lib/bch 0xbdf512de free_bch +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0xca8e8063 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0xdb2368dc notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x1803a6ed raid6_2data_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0xe4b051cf raid6_datap_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0xfdfcb8cb raid6_call +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x201d8ea3 encode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x29fa419f decode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x300d7e57 free_rs +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x6fbb3bd9 init_rs_non_canonical +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xabda1e2e decode_rs16 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xb050f329 init_rs +EXPORT_SYMBOL_GPL net/802/garp 0x032c9207 garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0x5071395c garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0x62668f2d garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x85ec0a40 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0xaae9d58f garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0xdba188b6 garp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0x1d86f3e5 mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0x3523f1cf mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xad2f59ef mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0xb367314b mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0xc624c1ee mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0xea893460 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/stp 0x5321d2da stp_proto_register +EXPORT_SYMBOL_GPL net/802/stp 0xdf33a4d6 stp_proto_unregister +EXPORT_SYMBOL_GPL net/9p/9pnet 0x0a9d6582 p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/9p/9pnet 0x1dd63925 p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/atm/atm 0xb09faf79 register_atmdevice_notifier +EXPORT_SYMBOL_GPL net/atm/atm 0xcfb6a3da unregister_atmdevice_notifier +EXPORT_SYMBOL_GPL net/ax25/ax25 0x532fc92c ax25_register_pid +EXPORT_SYMBOL_GPL net/ax25/ax25 0xac93ae05 ax25_bcast +EXPORT_SYMBOL_GPL net/ax25/ax25 0xaeb7451e ax25_defaddr +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x473d534d bt_debugfs +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0db2fc9c dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1d99d49a dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2394bd2d dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x32e0da19 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x34215557 dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0x38206418 dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x39e15d9b compat_dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3ef7f43d dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x410bc895 dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x48389edb dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0x49f5270e dccp_insert_option_elapsed_time +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4ec35231 dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x53d8140f dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5be6117a dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5bfb03af dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6242c9dd dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6987ee27 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7790eede dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x96d39ee1 dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9a6ae3f3 dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9d499095 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa358397d dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa55e79ab dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0xae938fdf dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb47857f4 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb9c06fa4 dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbe876447 dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc2556013 dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc35f6ff9 dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd73e247b dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd9bf21b2 dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdb64b0fa dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe3691b9d dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe377f522 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf1e84907 dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf200b2fc dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf3017e21 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf8d55b62 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf9ffe1bf dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0xff9660aa compat_dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x0808e453 dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x0fa59e9c dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x1424a604 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x3a768746 dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x4ab0cce1 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xd4adb695 dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x7ca6001d register_switch_driver +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x82e16462 unregister_switch_driver +EXPORT_SYMBOL_GPL net/ipv4/gre 0x0154f398 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0x311d2ee1 gre_build_header +EXPORT_SYMBOL_GPL net/ipv4/gre 0x81e53f51 gre_cisco_unregister +EXPORT_SYMBOL_GPL net/ipv4/gre 0x85cfb38b gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0xd2a82180 gre_cisco_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x44aec8e4 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x6a1f1a1b inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x6d46053a inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xa96e6fd2 inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xbdefa9f5 inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xd3b22b18 inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x4861621f ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x54591013 ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x6c9a3b53 ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x6e5ede11 ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x7cd755b2 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa87aea57 ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xab3912ef ip_tunnel_delete_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xb1507a92 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xbe1fad81 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xca2c02f4 ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xd02637e5 ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xda0361d3 ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xec50f667 ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xecd06a24 ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x6cd3a15b arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0xa2db2262 ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_conntrack_ipv4 0x6d40a921 need_ipv4_conntrack +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x6b6c3d10 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_ipv4 0xd308cffe nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_proto_gre 0x636b12c8 nf_nat_need_gre +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xb4e280e6 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xb641dc0f tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xc38bf89a tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xe8df3444 tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xf9ad9322 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0x24883e20 xfrm4_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0xb29ca84f xfrm4_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x038b8b9a ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x4f0758b1 ip6_tnl_dst_check +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x6c406942 ip6_tnl_dst_store +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x8faabd86 ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xf3d454a2 ip6_tnl_dst_reset +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0xb080a920 ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x6eb85693 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_nat_ipv6 0x1e32466e nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0xc220fdfe xfrm6_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0xc257741e xfrm6_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x012de255 l2tp_tunnel_closeall +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x0495e149 l2tp_session_queue_purge +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x1d19f2dc l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x207d5a60 l2tp_tunnel_sock_put +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x20b4a1e8 l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x38bf266a l2tp_tunnel_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x3900cdca l2tp_session_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x3a92ea79 l2tp_session_find_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x3cea314c l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x4c7a98ed l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x504d9ee7 l2tp_tunnel_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x683d4cd7 l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x6d334669 l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7082b271 l2tp_session_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7ef120f0 l2tp_tunnel_sock_lookup +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa99454d6 l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xaa5d2f18 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0xfe51eed7 l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x1e536c6a ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x2fd8588a ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3663a36d ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4bf42798 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x51cb2358 ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5d38f601 ieee80211_set_key_tx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x74f6ab17 ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x75352b4b ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x82b33176 ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x91dff2da ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xcb9bb718 ieee80211_iterate_active_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd2880b51 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xe4bd9f0a ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xea0c7e08 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xfcdf74a3 ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x09b9f4dd ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x0bc2530f ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x1ae4cb14 ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x30a9c997 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x364e0c11 ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x50ec576d ip_set_get_ip_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x692d1bab ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6b7ed527 ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6c9c9db0 ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x8192c2e2 ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9221971f ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa2d623f3 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa4a2b1f6 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xb8915654 ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc2f020f2 ip_set_nfnl_get +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc7fd16e3 ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xeaa874f4 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xef13ebbe ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf3b4d4ae ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x1db5d673 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x2a8aab4a unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x449475e0 ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xf94d4762 ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x018db47d nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01f84db5 nf_conntrack_set_hashsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x020d3415 nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x041c32a1 nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x045072cd nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x05dfad6a nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x08a08634 nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0c9a7a2d __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0ee11285 __nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1028b887 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x12b8c98b nf_ct_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x18b4e66d nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289c3714 nf_ct_alloc_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x28fde761 nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2da37c45 nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3020c103 seq_print_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x354926c8 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x37386cac nf_conntrack_hash_rnd +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3a181228 __nf_conntrack_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3c6ac88b nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3f5b1415 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x401d42e8 nf_connlabel_match +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x407afef4 nf_ct_l3protos +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x43edbbb6 nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4c847614 nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4d52100e nf_ct_l3proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4e6d50d1 nf_conntrack_l4proto_udp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5160ba9e nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x54583a19 nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x59075651 nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5fa3cd3f nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x61fc2f5d nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62813e5c nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x674c096d nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6e224a7a need_conntrack +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x705d0c7a nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7252d8b7 nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x78f9b710 nf_ct_l3proto_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7b3b2e29 nf_connlabel_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7bf39d59 nf_ct_get_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7c5b3253 nf_conntrack_l4proto_udp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7f2fc50c nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x875541c4 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x888843b4 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ba23375 nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8da07b61 nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8f83049b nfnetlink_parse_nat_setup_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x90c308bd nf_conntrack_l3proto_generic +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x90ff6c9f nf_ct_invert_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9238aa77 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x92556468 nf_ct_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x93f31deb nf_ct_l4proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x94f15807 __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x95c1877a nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x95c2c769 nf_ct_l3proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x95dc17ed nf_ct_iterate_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa5d465fe __nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa955abea __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa9fa4c45 nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab3d1f95 nf_ct_untracked_status_or +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xac3cd172 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad1bb027 nf_ct_free_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xadf3b21f nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaf29739d nf_ct_l4proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb17fc1ea nf_ct_l4proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb37802b7 nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb508611c nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb602c57e nf_ct_l3proto_module_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbc93167f nf_nat_seq_adjust_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbe76ffcb nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc0cd71bf nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc7a1abaa nf_conntrack_flush_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcc554341 nf_ct_l3proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xce3d0117 nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd065acf5 nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd51b1ed5 nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd5342a4d nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd6c8a977 nf_conntrack_l4proto_tcp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd768658c nf_ct_l4proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd95df8e1 __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd9ccc346 nf_ct_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe1427259 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe4fecbf5 nf_conntrack_l4proto_tcp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xed03a988 nf_ct_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xed6eb281 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeff3a3f2 nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf33a2d97 nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf63ae832 nf_ct_l3proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf9c2accb nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfdc3b6e4 nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x75463c5b nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0xb80d1616 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0x879073c6 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x3c78ff56 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x7899bfba nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x79ce4939 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x830215ab set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x90e53f9e nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xac4ddcbb set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xc2638c2f nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xe8096b46 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xefd0359f nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xfcf14827 set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0x31eb73dc nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x0a1e619e nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x432d46d7 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x90fc3e59 nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xc0c7c311 nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x25967099 nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x6e347fdd nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x0af1ba03 ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x13cb2621 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x3a95872d ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x6d540795 ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xc0080ea8 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xd0481271 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xe4c4cf4f nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0xb397e6db nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0x8c7e4032 nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x051d9990 nf_nat_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0b911a52 nf_nat_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0d9bae4b nf_nat_l4proto_nlattr_to_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x131f636c nf_nat_l4proto_in_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x576a7d50 __nf_nat_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x657a3c07 nf_nat_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x6a8db31f nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x72306fe0 nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xa87569c3 nf_nat_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xff14f96e nf_nat_l4proto_unique_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x11a006b5 synproxy_check_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x8841d39b synproxy_build_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x90298227 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb4041aa5 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb42e336a synproxy_options_size +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xc59af5d7 synproxy_tstamp_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xef7db50c synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0c7afb29 nft_register_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0fda3c99 nft_validate_output_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x32b9ae66 nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x36002f52 nft_unregister_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3c65311d nft_register_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3d49dab7 nft_validate_input_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3e62b0c2 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x4e3d79a9 nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x54e9ad5a nft_validate_data_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6be9021e nft_data_uninit +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x71bd7faa nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x82ed8857 nft_unregister_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc8681cc2 nft_do_chain_pktinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd464e224 nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf642c5b4 nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x26f840f5 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x6ff21df9 nfnetlink_alloc_skb +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x8e311176 nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xa493b3b2 nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xa4f499d3 nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xa628955e nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xac7d0519 nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x21f6bba6 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xa0f91be2 nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_log 0x1c0ef416 nfulnl_log_packet +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x161d1417 xt_compat_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x2d2ce556 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x38790b6d xt_compat_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x3fd13f7c xt_hook_link +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x40728a63 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x47b715c9 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4881f625 xt_compat_target_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4af72542 xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x519fa0ce xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x544e651d xt_hook_unlink +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5f82f1f7 xt_compat_flush_offsets +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x6205756c xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x691a6d69 xt_compat_calc_jump +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x6ea9458f xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x72725c95 xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x72746b2b xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x807d2b2c xt_recseq +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x8aac27ff xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x8c35f41a xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x939e03f3 xt_compat_match_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x95d7b747 xt_compat_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9c291432 xt_compat_target_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xcc1750cd xt_compat_match_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xd794d05d xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe0b4971b xt_compat_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xec24fd82 xt_compat_add_offset +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x132318ac xt_rateest_lookup +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0xd7e1b517 xt_rateest_put +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x3df6f8e4 nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x5d843a92 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x71e06823 nci_spi_send +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x01bf2958 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0x0bef4936 rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0x2c460fb3 rds_page_copy_user +EXPORT_SYMBOL_GPL net/rds/rds 0x2c5c5514 rds_message_add_rdma_dest_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x2e476c7b rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x3101936e rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x314af04e rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0x31d920ee rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0x3b4fc0fc rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x4115069a rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x4a5db5b6 rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0x50cbe7b3 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x610841d4 rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0x73aac73d rds_message_populate_header +EXPORT_SYMBOL_GPL net/rds/rds 0x7794a301 rds_send_get_message +EXPORT_SYMBOL_GPL net/rds/rds 0x7bc62829 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x85762390 rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0x8a364891 rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0x90b1f741 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x9aca247c rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x9bd37fc9 rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0xb80dfc51 rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0xbdd99e94 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc37743c4 rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0xcbb5ab0b rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0xd376da32 rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0xd9217bb3 rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0xf48d5346 rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0xfbd51aa4 rds_recv_incoming +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0x32b34f67 rxrpc_unregister_security +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0x44fbb06e rxrpc_register_security +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x00c52ef5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x3b881b57 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x528a165f gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x8d1a827e svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xb5dea7ef g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xbb65f95f gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xf8b2ff6e g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x00a6d690 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x015bef67 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0295f00d svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x02f14a14 rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x045834e9 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x091879e4 rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x097db8ce xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b091618 xprt_lock_and_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b95dd47 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0de2da59 read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0eec25b5 rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f668ba9 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0fefb902 rpc_get_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x106734e2 xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x14f62724 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x15ae64de xdr_partial_copy_from_skb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x15f72e93 svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x164acc93 xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x17c30532 rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1a030e71 xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f2a9970 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f84550f rpc_lookup_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x200050f6 xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x208d4d37 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x250337b6 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x25fc215c sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2c963f5f write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2d5c83f3 xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eec63c9 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2fda6c79 rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x30600391 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x312bb3ca xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31908c63 rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x321f5b55 rpcauth_generic_bind_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x332531cb cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x351388d5 svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3525ec8c rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3700aee7 svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x37154f2e rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x38e3d7e4 xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x390c399b svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3d9b17fd xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3e9eaae8 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3ea0c3fb rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3faaa506 rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x40e8c675 rpc_lookup_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x44e6d0a0 xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x452da876 svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x45b63c0f svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4673f382 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x47cc1287 xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x47fdbcbf rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x48bb3479 auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x48eb777a rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x49657c9f rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4b5719e1 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4b717d57 sunrpc_cache_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d2bc1b6 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d3d7c07 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4eef2a02 xprt_set_retrans_timeout_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5026a8ee xs_swapper +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x510f4891 rpc_protocol +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x537f13e5 rpc_print_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x54516fe9 svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x557e6293 rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x55940a6c sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5929cbb6 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a549298 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5cc5fb9b xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5e48d94b xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5f06f1ef rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60d98529 sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x63af9173 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x640b03c6 xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x646b8e26 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x649c9b71 rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x65ff99b9 rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x671af4e6 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6f88c577 rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x70a9d041 rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x76c4a12b xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7a36ddbd rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7ce3e61e __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f44e878 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f58e598 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f996336 rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80951b28 rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8107e0a3 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x818bd437 svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x81becaf5 xdr_buf_read_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x81c9276c cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x82c859e7 xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x838bbf65 auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x85f8ab1a rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x86150550 rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x866cdd71 svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8809ead8 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x886c61c6 rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8ad3b8b9 svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8b52dfa4 rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8b8d6f6f rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8d0566b2 rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8dbd06f9 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8dc3f3a5 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9090b284 rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x90bea9f0 xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9370881d rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98b75d64 rpcauth_list_flavors +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9b9d16ab svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa040567d rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa1623e1a svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa2417700 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa42f6acd xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa4d249d1 svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa577bf89 xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa618edc5 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa91f13e8 svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa34a928 rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa8ef829 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xab5234c7 svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xab7971ed svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xacf82d17 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xae5b43af rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xae768972 bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb03628d3 xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb0d25fb6 rpc_rmdir +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb264533e svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb38ff093 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb503f202 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb73f31e5 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb766add4 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb79cf405 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb96bca5f xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xba7a6861 xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb1885c5 rpcauth_cred_key_to_expire +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb417467 rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbde21185 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf0f7b12 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3880471 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc4c72d61 rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc577cc66 xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc919cfbd xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc92c0ebb svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc982201d svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc9ca7865 svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xca3fd87c rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcab26a38 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcabc4ef5 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcb1d4929 xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcb5764a3 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcc12e65f rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcce0e541 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcde7f08b rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcef280c4 _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcefd87d8 unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd0e04208 xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd111e678 rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd49ccd81 rpc_task_reset_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd5f57d23 svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd99cdde1 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd9e41298 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdadac654 rpcauth_key_timeout_notify +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdb3b9b03 svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdbbcd4af csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdc92a7ab rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdc93fa9e rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xddd432f2 xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe0080177 xprt_set_retrans_timeout_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1988858 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1ac2bb8 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe238be1b rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe38ab3cb xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe3efa90a xdr_skb_read_bits +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe4394f9d svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe9490b4b sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xea011260 xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xea0b9181 sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeabceb5e xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xecab234d svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xed393b2b xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xed40814b put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xee23168b rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf127f823 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf15f0d18 svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf1e8230b xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf45bc564 rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf8fb75db cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9154776 svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf933da21 svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9c0f4f2 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9d1164c rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfa644c09 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfdcf78cc rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe701c82 svc_exit_thread +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x01ed632c vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x092c0a52 vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0c79d5ef vm_sockets_get_local_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x1515706f vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x15c0c57c vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2760eb2d vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x43b69833 vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x4781742c vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x53ca4ff8 vsock_core_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x59d943c8 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7a7e5982 vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7f730c80 vsock_core_exit +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x8b53ee5f vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x970b77bc vsock_pending_work +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbcd096a5 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd5fcc7cd vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xdbcd5f2b __vsock_create +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe67778c0 vsock_remove_pending +EXPORT_SYMBOL_GPL net/wimax/wimax 0x082506d5 wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0x1dc312bd wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0x2284055d wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x527fddbc wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0x86401b1d wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0x8f63e3f5 wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0xa11fd6b4 wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0xa4fe2ed4 wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xac453ad4 wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0xb0a57721 wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0xb53c7d4d wimax_msg_send +EXPORT_SYMBOL_GPL net/wimax/wimax 0xdf8dbd63 wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0xf003424b wimax_msg_data +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x01a70108 cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x19137556 cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x2a1247e4 cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x41781b71 cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x7af6409e cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x7bd60cc1 cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xb0b9218a cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xcd0a3327 cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xd6bfae65 cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xde5c2e3c cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xea658b1a cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x00778770 xfrm_ealg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x056bb269 xfrm_ealg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0a575945 xfrm_count_pfkey_auth_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0b9e5852 xfrm_aead_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x28e23139 xfrm_probe_algs +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x74e1a843 xfrm_aalg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7a8ca627 xfrm_count_pfkey_enc_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7c30b8c7 xfrm_calg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x92dbc6c1 xfrm_aalg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xbc8b0f41 xfrm_calg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xce7a55c1 xfrm_ealg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xe122af95 xfrm_aalg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x29338397 ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xa39b0ab3 ipcomp_destroy +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xeb7f37ff ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xf74d8906 ipcomp_init_state +EXPORT_SYMBOL_GPL sound/core/snd 0x2aa5c5d7 snd_kctl_jack_new +EXPORT_SYMBOL_GPL sound/core/snd 0x306e72cd snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/core/snd 0x3ca17104 __snd_printk +EXPORT_SYMBOL_GPL sound/core/snd 0x3f1d3a25 snd_ctl_activate_id +EXPORT_SYMBOL_GPL sound/core/snd 0x8a44b0e9 snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL sound/core/snd 0xca840a0b snd_kctl_jack_report +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x04c9d763 snd_compress_deregister +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x2c05b21d snd_compress_new +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x73ef99e1 snd_compress_register +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x8cebc28c snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xbd3a1a71 snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x0361edcc snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x08407299 snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x695be3c3 snd_ak4113_create +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x91bf15cb snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x96995a48 snd_ak4113_build +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xb643d3c3 snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0003b557 snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x03e7a8ac snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x044bb085 snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x051c2a72 snd_hda_codec_amp_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0c627a04 snd_hda_codec_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x10414952 snd_hda_parse_generic_codec +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x11ca0e85 snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1535c59c snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x172270c6 snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1c091355 snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1cf0a12b snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1f2c25b7 snd_hda_queue_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1f78add4 snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x206fd4fe snd_hda_mixer_bind_ctls_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x20b16666 snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x23a1de68 snd_hda_bind_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2498031a snd_hda_add_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x24a3135e snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x25f1f449 snd_hda_get_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x28511f52 snd_hda_check_board_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x28a04a93 snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x290fff76 snd_hda_codec_flush_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2ac1e329 snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x30bf018e snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x31266a3c snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x320d8cdf snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x342f45ff snd_hda_ch_mode_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x362f71ec snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x37433d86 snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x375cacd5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x37b7f1a0 snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x38050ddc snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x39eab50f snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3a3624c3 snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3b0b8803 snd_hda_codec_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3b91ba9f snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3bb67c9c snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3c616589 snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3cd52983 snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x40f27f17 snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x41fda113 snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x42a83eb9 snd_hda_jack_tbl_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x45d8b1dc snd_hda_bus_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4a1825f4 is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4aa6f563 snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4acfe473 snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4dab1f60 snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4f9b5dfb snd_hda_jack_tbl_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4fd5df36 snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5221b697 snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x56356d6d snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x57365d06 snd_hda_gen_spec_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x63314966 snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x635f9131 snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x656dd3a9 snd_hda_jack_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x657168f0 snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x66183ac9 __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x66e19644 snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x682b3b4b snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6b476fe3 snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6d34ecfc snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6eb5d64b snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6ed94163 snd_hda_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6ef83add snd_hda_get_sub_nodes +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6f1a8dba snd_hda_jack_detect_state +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6f88c9f6 snd_hda_mixer_bind_ctls_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x731c41d9 snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x737ff8c2 snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x74748800 snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x77588c96 snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x78162374 snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x78a4208e snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7994cb9a snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7a881b1f snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7dfbcfef snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x80f13316 snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8251987d snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8283555a snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x838b5396 snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x84f94a8a snd_hda_delete_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x85c2222d snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8728e166 snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x88a6febd snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x88fa9862 snd_hda_sequence_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8d009c5c snd_hda_jack_detect_enable_callback +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8e4c6826 snd_hda_calc_stream_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8e5debd6 snd_hda_codec_update_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8f755727 snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8f9a235e snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x923b4705 snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x967afe37 snd_hda_bus_reboot_notify +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x97924b3d snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x989dc99b snd_hda_codec_resume_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9da62c54 snd_hda_mixer_bind_ctls_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa1d211d7 query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa256554d hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa2827d76 snd_hda_get_jack_location +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa29ac545 snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa375bcce snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa381fabc snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa6613926 snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa72d6541 snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa9cd4348 snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaa49928c snd_hda_mixer_bind_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xad7b4b5e snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xadba2a37 snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xae9f77e5 snd_hda_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaf10c771 snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xafb5de7c snd_hda_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb07b27d0 snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb3f1f8e7 snd_hda_codec_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb6ad7132 snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb8c70011 snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xba65e9fe snd_hda_suspend +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbb6e8a3c snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbf5d6397 snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc114af9f snd_hda_override_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc56dd824 snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc652fd69 snd_hda_get_jack_connectivity +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc674e0ab snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc741e3b5 snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc7b90d0c snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc7ef659d __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc9446d2b snd_hda_codec_resume_amp +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xca9892ba snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcb301b6e snd_hda_get_jack_type +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcd192a10 snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcd8a3275 snd_hda_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcdad6d25 snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd06b15d3 snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd3018502 snd_hda_bind_vol +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd50ee062 snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd5cfa8c2 snd_hda_ch_mode_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd902db95 snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdb780e9a snd_hda_ch_mode_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdc493c74 snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdcd6b5fe snd_hda_check_board_codec_sid_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdd33c8a8 snd_hda_query_supported_pcm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdd7c30ed snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xddfc8b0a snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdf2a68a9 snd_hda_parse_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdfa7bec6 snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe5ae8f84 snd_hda_mixer_bind_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe5f93fbc snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe8d025ce snd_hda_resume +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xea7c2bb6 snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeca1f7cd snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf2f0389c snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf4bbb875 snd_hda_query_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf61547b5 snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf6b16a8e _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf909359e snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf949edcf snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf983a1c5 snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfcb8429a snd_hda_mixer_bind_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfe5cbdd3 snd_hda_is_supported_format +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x44b9f7d4 atmel_pcm_mmap +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x799be0a8 atmel_pcm_free +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x9c84102d atmel_pcm_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x01177c45 snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x03e59214 snd_soc_info_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x03e7e8ba snd_soc_bytes_get +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x06dceffb snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x07e44888 snd_soc_add_platform_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x08132680 snd_soc_cache_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0832b296 snd_soc_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0abb8cd6 snd_soc_free_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0abccab4 snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0c35418d snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0e12c325 snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0f41da32 snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1047a84b snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x108df058 snd_soc_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x10e37be2 snd_soc_codec_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x12c4d09a snd_soc_poweroff +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x143fd6e1 snd_soc_register_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x16645dad snd_soc_add_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x17d106ae snd_soc_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x19dc73d5 snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1c375d88 snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1ddd15c6 snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x217ec923 snd_soc_debugfs_root +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2978fa2b snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2989c861 dapm_clock_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2a844d8a snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2b3eed08 snd_soc_dapm_put_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2bd2fd27 snd_soc_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2bf5e6fb snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2c67a87d devm_snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2cfa7a8d snd_soc_update_bits_locked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2d836ac8 snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2f26debb snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x32b88b7b snd_soc_cnew +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x34585f52 snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4266e7fd snd_soc_jack_report +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4395680e snd_soc_add_codec_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4564cfda snd_soc_put_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x482a24da snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4a06cd28 snd_soc_new_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4c0dcee3 snd_soc_dapm_kcontrol_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4c23866f snd_soc_get_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4e5f24d8 snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4f1fae12 snd_soc_codec_volatile_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x57b5a985 snd_soc_lookup_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5bc286a0 snd_soc_cache_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5e94f2bb snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5f6b5867 snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5fd84729 snd_soc_get_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x609e73df snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x65c5ea70 snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x675f3282 snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x686e9fbf snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x69dd4d8d snd_soc_platform_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6bbec43b snd_soc_remove_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6f1ffba4 snd_soc_codec_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6fe4737e snd_soc_jack_get_type +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x71f28d8b snd_soc_dapm_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x738baf63 snd_soc_limit_volume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x739a6997 snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x77507f38 snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x77762b50 snd_soc_resume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x779b01b5 snd_soc_pm_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x798d6c09 snd_soc_test_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e85bb61 snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x801d0435 snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8073b6eb snd_soc_bytes_info +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x80e45b07 snd_soc_unregister_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x824cb49b snd_soc_dapm_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x830db56c snd_soc_unregister_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x83b2b967 snd_soc_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8417a3e5 snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x85534085 snd_soc_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x86f4db43 snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x87ef93e6 snd_soc_dpcm_be_get_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8924a5ea snd_soc_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8a44d3ae snd_soc_codec_readable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8ea409f8 snd_soc_put_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8fd86292 snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x902ad681 snd_soc_update_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x92ace096 snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x938b89b7 snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9403fc50 snd_soc_cache_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x968449d2 snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x968dcb90 dapm_regulator_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x971c3a0d soc_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x980173be snd_soc_dpcm_be_set_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9a6aa97c dapm_mark_io_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9db78479 snd_soc_get_dai_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9e152459 dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9e20859b snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9edd162d snd_soc_platform_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa556defa snd_soc_codec_writable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa770a66c snd_soc_info_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa8aaa1cb snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xab0174b1 snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xadc964af snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb06b304f snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb0b1b36e snd_soc_dapm_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb2efcb64 snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb35466b3 snd_soc_dapm_get_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb7543bbf snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb784f34a snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb999288b snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbb0cfe48 dapm_reg_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbc3d94c6 snd_soc_bytes_put +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbdc22732 snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc16680a6 snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc74514af snd_soc_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc821c913 snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc846c32d snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xca9918d3 snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcbd8808f snd_soc_dapm_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcd375437 snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xce83fe74 snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd1ec2313 snd_soc_info_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd2080494 snd_soc_unregister_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd3275caf snd_soc_unregister_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd4ab9e1d snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd4b54103 devm_snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd55e3de3 snd_soc_platform_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd6a82970 snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd732eb68 snd_soc_codec_set_cache_io +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdb08ea2b snd_soc_register_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe6921a58 snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xea08a3fa snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeaaa4a6c snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xebaff3c5 snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xec7628fc snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xecfbdd83 snd_soc_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xedf7eba2 snd_soc_jack_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xefb56ef9 snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf54369c6 snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf76380c0 dapm_mark_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfbaf6ef2 snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfe6bfd47 snd_soc_add_card_controls +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0x118a3f6e i915_bdw_gpu_busy +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0x7381c75a i915_bdw_read_mch_val +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0x96d7119d i915_bdw_gpu_raise +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0xa17bc3aa i915_bdw_gpu_turbo_disable +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0xde54f019 i915_bdw_gpu_lower +EXPORT_SYMBOL_GPL vmlinux 0x00000000 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x00000000 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x00000000 compat_alloc_user_space +EXPORT_SYMBOL_GPL vmlinux 0x00000000 kern_mount_data +EXPORT_SYMBOL_GPL vmlinux 0x00000000 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x00000000 sigset_from_compat +EXPORT_SYMBOL_GPL vmlinux 0x00000000 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x0034f3b6 xen_has_pv_nic_devices +EXPORT_SYMBOL_GPL vmlinux 0x006bc072 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0070ef14 __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0x00753327 ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0x009281b7 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x009304b6 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x0096e7cf put_device +EXPORT_SYMBOL_GPL vmlinux 0x00c2911f platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x00c4dc87 timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x00e77412 irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x00eb6098 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x00ebcb5d ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0x01010c6d klist_add_before +EXPORT_SYMBOL_GPL vmlinux 0x01056da1 ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0x0107328e ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x01148c91 sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0x011cf028 regulator_suspend_finish +EXPORT_SYMBOL_GPL vmlinux 0x011f3d21 ata_acpi_stm +EXPORT_SYMBOL_GPL vmlinux 0x017d2456 ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0x01848a8e local_apic_timer_c2_ok +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01f05985 get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0x02448233 wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0x0253e452 pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x026211e2 memory_failure_queue +EXPORT_SYMBOL_GPL vmlinux 0x0289325a usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0x02c1b1b7 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x02de9ae6 debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0x02fb585e usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x02ff31bf get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0x0302e379 regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x03135b89 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x032917a7 debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x0334ec6f jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x03453cf8 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x0354a7a2 debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x03570b7d regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0x03572e93 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0x039c487a ftrace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x03dd0962 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x03e3686c ata_timing_cycle2mode +EXPORT_SYMBOL_GPL vmlinux 0x03eac16f pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x03eca9a1 btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0x04005d58 tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0x040af2fa rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x04486e88 rcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x04567614 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0x045f71df napi_by_id +EXPORT_SYMBOL_GPL vmlinux 0x0464a758 relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x048eca7f xen_swiotlb_sync_single_for_cpu +EXPORT_SYMBOL_GPL vmlinux 0x0491271f regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x04acb23a wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x04b6b2f3 sk_unattached_filter_create +EXPORT_SYMBOL_GPL vmlinux 0x04c3f2c1 gnttab_empty_grant_references +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04ceb495 da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x04df8fbc lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0x0507436e crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0x0514b63b tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x051dc452 i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x053494cb tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0x054a2db0 PageHeadHuge +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x0551f0ce tick_nohz_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x057fc409 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x058f3923 bus_find_device_by_name +EXPORT_SYMBOL_GPL vmlinux 0x05b70fa5 attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x05c9e766 screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0x05d85fcc subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x05e3b10b da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0x05fab630 agp_remove_bridge +EXPORT_SYMBOL_GPL vmlinux 0x0600c3f4 pinctrl_lookup_state +EXPORT_SYMBOL_GPL vmlinux 0x060d1064 set_memory_ro +EXPORT_SYMBOL_GPL vmlinux 0x061ebb06 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x06284701 spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x062fc169 xen_hvm_resume_frames +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x0675c7e4 ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x06d549e6 pinctrl_free_gpio +EXPORT_SYMBOL_GPL vmlinux 0x06e2832a sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x06e3179f spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x06f5c504 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0x06f9c98b usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x06ffd847 blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x071ebdf1 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x07200677 gpio_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x073ab9e8 pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x075ddff4 pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x0762403c edac_put_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x076bce99 __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x076e1088 anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x07895ae2 uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0x079f6417 device_register +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07cd5cc4 subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x07d4a3d3 sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0x07d8422c regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x07f0944e swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0x07f9a414 subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07fc478e acpi_dev_resource_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x083db905 rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0x084a5a66 pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0x084d6e49 __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x084ee612 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x085c4234 netlink_alloc_skb +EXPORT_SYMBOL_GPL vmlinux 0x0879c83c dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x0889f9b8 led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x088bfa7e cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x08912b29 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x089a5b76 tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x08a8836d pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x08b8ee65 devm_rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x08bc0870 compat_put_timespec +EXPORT_SYMBOL_GPL vmlinux 0x08e01ebc devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x08f789aa led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0x090fee6c dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x0940dd81 dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0x094313d7 hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0x09437748 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x09469482 kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x0951e246 da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0x09552973 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x095a7d7e usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x096748e0 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x098b6fd7 fuse_put_request +EXPORT_SYMBOL_GPL vmlinux 0x09a0b11b devres_alloc +EXPORT_SYMBOL_GPL vmlinux 0x09e604b8 md_new_event +EXPORT_SYMBOL_GPL vmlinux 0x09f461e2 pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x0a149d08 ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0a192c71 skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0x0a1c7d4b unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0x0a713a33 spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0x0a72fa9e kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0x0a85f302 raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x0a9fd3c5 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x0acce1b0 bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x0ae52995 rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b25a6ea usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0x0b3c9870 put_pid +EXPORT_SYMBOL_GPL vmlinux 0x0b52e502 apei_resources_add +EXPORT_SYMBOL_GPL vmlinux 0x0b7b9554 wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0b91cdc2 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0b9ddadb rtc_irq_set_state +EXPORT_SYMBOL_GPL vmlinux 0x0bae62b1 ktime_get_monotonic_offset +EXPORT_SYMBOL_GPL vmlinux 0x0bae9721 uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x0be788a4 get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0x0be8cb31 btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0bfa3a19 rcu_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x0bfacd5a bmp085_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x0c0c015e ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0x0c133687 bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x0c222e1f scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x0c2cdbf1 synchronize_sched +EXPORT_SYMBOL_GPL vmlinux 0x0c7f073e input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0x0c805f93 clflush_cache_range +EXPORT_SYMBOL_GPL vmlinux 0x0c80e3fe efivar_init +EXPORT_SYMBOL_GPL vmlinux 0x0c8a317e register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x0c8f06c1 __rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x0ca81585 eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0x0cad36fe bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0x0cc1e40f crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x0cd236ce regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0ce19224 usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0x0cfc3832 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x0d065ca6 dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x0d39630f i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0x0d67e3df inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0x0d904db8 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x0dc075bc dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x0dd11f01 hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0de2c9f5 rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x0e068f96 m2p_add_override +EXPORT_SYMBOL_GPL vmlinux 0x0e13cb4d apei_resources_release +EXPORT_SYMBOL_GPL vmlinux 0x0e263b23 aead_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0x0e28b468 device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0e4c5674 iommu_map +EXPORT_SYMBOL_GPL vmlinux 0x0e52f81e regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0x0e566470 crypto_alloc_instance2 +EXPORT_SYMBOL_GPL vmlinux 0x0e5aa887 kick_process +EXPORT_SYMBOL_GPL vmlinux 0x0e5aace1 tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x0e5eb49c acpi_bus_trim +EXPORT_SYMBOL_GPL vmlinux 0x0e8a2e64 usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x0e94c380 sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0x0eb0c03d usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0x0eb4800a balloon_devinfo_alloc +EXPORT_SYMBOL_GPL vmlinux 0x0ece96c5 eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0x0ecf823a static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x0ed9302e percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x0ee01479 serial8250_rx_dma +EXPORT_SYMBOL_GPL vmlinux 0x0ee42ad0 devm_usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL vmlinux 0x0f26f477 pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x0f2b57fa pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0x0f2d7d87 mce_unregister_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0x0f3f86c0 call_filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0x0f51c456 key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x0f624443 inet_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x0f65785b input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0x0f6f6155 regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x0f731265 spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x0f751aea input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0x0f930597 efivar_entry_remove +EXPORT_SYMBOL_GPL vmlinux 0x0fa138de xen_hvm_need_lapic +EXPORT_SYMBOL_GPL vmlinux 0x0fa3bd7b xenbus_dev_probe +EXPORT_SYMBOL_GPL vmlinux 0x0fcc1969 copy_from_user_nmi +EXPORT_SYMBOL_GPL vmlinux 0x0fe2d570 xenbus_directory +EXPORT_SYMBOL_GPL vmlinux 0x0fe3bdb9 efivar_entry_set_get_size +EXPORT_SYMBOL_GPL vmlinux 0x0ff4a541 tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0x1006d295 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x1035afd7 wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0x10978991 pci_intx +EXPORT_SYMBOL_GPL vmlinux 0x10ba4f59 regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x10d07dea gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0x10de5575 get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x10e22540 blk_queue_flush +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x10fb477f __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0x110106c1 cper_severity_to_aer +EXPORT_SYMBOL_GPL vmlinux 0x111931da attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0x1122fc6b acpi_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x113248b3 ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x114f1a20 balloon_stats +EXPORT_SYMBOL_GPL vmlinux 0x1157eda4 cpufreq_table_validate_and_show +EXPORT_SYMBOL_GPL vmlinux 0x1172ce54 rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0x117c7305 hwpoison_filter_dev_major +EXPORT_SYMBOL_GPL vmlinux 0x119af014 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0x11c18ee1 rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x11ebc8ed tpm_show_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x11fdcc98 extcon_unregister_interest +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x121ed3f3 add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0x122c3b08 usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0x124f2056 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x12780119 rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x12a1ea54 pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x12b1b693 virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0x12d964b9 irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0x12dded24 remove_irq +EXPORT_SYMBOL_GPL vmlinux 0x12ea9e7d pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x12eac103 usb_bus_list_lock +EXPORT_SYMBOL_GPL vmlinux 0x1309fdd7 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x130bd388 check_tsc_disabled +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x132188c7 acpi_get_pci_dev +EXPORT_SYMBOL_GPL vmlinux 0x132fc939 cper_estatus_print +EXPORT_SYMBOL_GPL vmlinux 0x13385890 ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0x136037dc xenbus_read_otherend_details +EXPORT_SYMBOL_GPL vmlinux 0x13695f8e acpi_pci_check_ejectable +EXPORT_SYMBOL_GPL vmlinux 0x136c7aed pinctrl_utils_dt_free_map +EXPORT_SYMBOL_GPL vmlinux 0x138aff76 gnttab_init +EXPORT_SYMBOL_GPL vmlinux 0x13921363 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x13ab7ae4 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0x13ad647f scatterwalk_bytes_sglen +EXPORT_SYMBOL_GPL vmlinux 0x13b89dee pinctrl_request_gpio +EXPORT_SYMBOL_GPL vmlinux 0x13ce87e8 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0x13d478b1 blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0x13e6787a usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x13ea2468 sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x13f689d3 nfq_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x1413adb8 console_drivers +EXPORT_SYMBOL_GPL vmlinux 0x1416c8d6 put_compat_timeval +EXPORT_SYMBOL_GPL vmlinux 0x14353bfa stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0x14357af4 ata_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x14821ff3 driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x148387d1 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0x14a99769 tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x14dcad1c rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0x14e3f86e ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x14f875ce devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x14fe4faf subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x15010e1f arbitrary_virt_to_machine +EXPORT_SYMBOL_GPL vmlinux 0x1501bf65 __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0x15026a32 snmp_mib_init +EXPORT_SYMBOL_GPL vmlinux 0x150d887e pinctrl_force_sleep +EXPORT_SYMBOL_GPL vmlinux 0x1529965f class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0x15485ce9 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0x15892417 async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x159016ec clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0x15939e3f device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x159d1ed0 pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x15b0606e e820_any_mapped +EXPORT_SYMBOL_GPL vmlinux 0x15b9957f cpufreq_governor_dbs +EXPORT_SYMBOL_GPL vmlinux 0x15e8abe1 blk_queue_dma_drain +EXPORT_SYMBOL_GPL vmlinux 0x16000a3c dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x16486900 tty_prepare_flip_string_flags +EXPORT_SYMBOL_GPL vmlinux 0x1650bf27 rcutorture_record_progress +EXPORT_SYMBOL_GPL vmlinux 0x168f5114 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x16a0e757 tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0x16e66f18 inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x16ec3760 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x16f31e18 device_create_vargs +EXPORT_SYMBOL_GPL vmlinux 0x16fabaf1 ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1715908b tcp_fetch_timewait_stamp +EXPORT_SYMBOL_GPL vmlinux 0x171a7bff regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x171f99f7 tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x17277088 fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x172cc7a2 pwm_free +EXPORT_SYMBOL_GPL vmlinux 0x1738d995 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x1743d59e sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0x1753a32f hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0x17614bf3 apei_resources_sub +EXPORT_SYMBOL_GPL vmlinux 0x17733a02 ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x179db915 ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0x17a1894e ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0x17b83249 devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x17ea87d9 rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x17efaf55 rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x1811f1b2 crypto_unregister_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x1829b9ed hwpoison_filter_memcg +EXPORT_SYMBOL_GPL vmlinux 0x183b1561 ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0x183eac78 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0x1848d7d7 __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0x1853653c btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x18582826 amd_pmu_disable_virt +EXPORT_SYMBOL_GPL vmlinux 0x1866cec2 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x1878f62b edac_err_assert +EXPORT_SYMBOL_GPL vmlinux 0x1889563a clk_register_mux +EXPORT_SYMBOL_GPL vmlinux 0x188a95eb pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0x189459ff napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x189669b1 ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0x18d3dd4b ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x18f83fab gnttab_grant_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0x19150563 regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x1919f427 sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0x192a42bf clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x193b3bfc get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0x193d48e0 trace_current_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x19413305 pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0x194dd5f5 pkey_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x195a2de4 arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0x196614ce hw_breakpoint_restore +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19b384a5 hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x19d8fd4c blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0x1a082d69 max77693_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x1a323362 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x1a3d572d wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x1ab49e22 pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x1acef7d2 pm_freezing +EXPORT_SYMBOL_GPL vmlinux 0x1ad83009 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0x1adfd8d2 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0x1ae67d86 trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x1b04a12a balloon_mapping_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1b2fe89e __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0x1b3a0662 device_create +EXPORT_SYMBOL_GPL vmlinux 0x1b3c9291 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0x1b49ff86 devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1b4a5a3d regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x1b816bb8 class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1b8822d8 pinctrl_gpio_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1b9aca3f jprobe_return +EXPORT_SYMBOL_GPL vmlinux 0x1ba8dcd9 pinctrl_remove_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x1bc27214 sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x1bc36bea device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x1bc5eebe pinctrl_gpio_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x1bd06aab cpufreq_frequency_table_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x1bdb6d8d crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x1bf2e5d0 platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x1bfe53fa bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0x1c3becb0 class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x1c414c81 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x1c55502b device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c6629dc class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1c8c4c14 irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0x1c8c58cb unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0x1ca23222 disk_get_part +EXPORT_SYMBOL_GPL vmlinux 0x1cbebece __online_page_increment_counters +EXPORT_SYMBOL_GPL vmlinux 0x1ccfc44f sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0x1cdb2147 zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0x1ce1b482 rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0x1cfd95c1 wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0x1cfeea44 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x1d12dfdf regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0x1d23c2cb __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x1d442bfd usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x1d459685 xstate_size +EXPORT_SYMBOL_GPL vmlinux 0x1d58ae14 lpddr2_jedec_timings +EXPORT_SYMBOL_GPL vmlinux 0x1d739e1c xen_set_callback_via +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d7bb22d virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0x1d7f7c86 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0x1d8fb3bb acpi_dev_resource_address_space +EXPORT_SYMBOL_GPL vmlinux 0x1ddfb9c3 devm_acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x1dfba683 power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0x1e000879 hwpoison_filter_enable +EXPORT_SYMBOL_GPL vmlinux 0x1e3a88fb trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x1e4d3f0e xenbus_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x1e5b03dc pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e8c96b6 rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x1ea7ed08 crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0x1eb1594f gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1edc21cb hwpoison_filter_flags_mask +EXPORT_SYMBOL_GPL vmlinux 0x1ee38977 __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0x1eee696b ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0x1f1988f7 hwpoison_filter_flags_value +EXPORT_SYMBOL_GPL vmlinux 0x1f258037 iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0x1f4d89f6 add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f8a748c __ip_route_output_key +EXPORT_SYMBOL_GPL vmlinux 0x1f8db7f9 ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x1f8dd0c9 regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0x1f8f692a scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0x1f9644e6 gpiochip_add_pingroup_range +EXPORT_SYMBOL_GPL vmlinux 0x1fbaa0cd dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x1fcece42 inet_twdr_twcal_tick +EXPORT_SYMBOL_GPL vmlinux 0x1fed44e0 tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0x2022a0f3 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x2045fd7e da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x20597473 acpi_pci_find_root +EXPORT_SYMBOL_GPL vmlinux 0x205d93d7 xenbus_map_ring_valloc +EXPORT_SYMBOL_GPL vmlinux 0x2062f3da dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0x20802df6 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x208d3624 ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x209ec764 xen_event_channel_op_compat +EXPORT_SYMBOL_GPL vmlinux 0x20b49668 sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x20bc3470 orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x20ee03c7 pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x21171341 sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0x211d0cf5 netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0x21572dc3 devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0x2197b79c sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x219c8595 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0x21a9a955 acpi_subsys_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x21ad7683 rtc_irq_set_freq +EXPORT_SYMBOL_GPL vmlinux 0x21eff3cb regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0x21ff240a ahash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0x227b243e acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x2296c00d crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x22b62380 device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x22d667ad blkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0x22dc9641 tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0x2321b370 dma_buf_kunmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x2366a2c0 errata +EXPORT_SYMBOL_GPL vmlinux 0x23729682 stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x239a9309 ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0x23ad4d4a skb_gso_transport_seglen +EXPORT_SYMBOL_GPL vmlinux 0x23bc2053 default_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x23c8191a ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0x23d51134 css_rightmost_descendant +EXPORT_SYMBOL_GPL vmlinux 0x24011e14 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x243bc8e4 sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2447533c ktime_get_real +EXPORT_SYMBOL_GPL vmlinux 0x2469810f __rcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x247f2a5a sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0x24a1c545 xenbus_alloc_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x24a72f2b inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x24aac4d9 crypto_aes_expand_key +EXPORT_SYMBOL_GPL vmlinux 0x24af1295 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0x24c7698a xenbus_write +EXPORT_SYMBOL_GPL vmlinux 0x24cc745e i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x24d20f12 pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0x24e20053 task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x24ffb775 inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x252ea475 led_trigger_show +EXPORT_SYMBOL_GPL vmlinux 0x25310868 iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0x253b574e regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0x2545c170 unregister_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0x254fe107 sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x255e6858 crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0x255ee333 ata_eh_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x256a10b2 kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x2584b43c md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x25a97010 hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x25ac7396 sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0x25d0293b powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0x25e15e03 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0x25ff5a71 unregister_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0x261ea0fa iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x262f20a8 local_clock +EXPORT_SYMBOL_GPL vmlinux 0x2638e70e rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x26591d85 md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0x268f87ce class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x26965721 slow_virt_to_phys +EXPORT_SYMBOL_GPL vmlinux 0x26b71fb4 ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x26b8dae0 regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26e40fcb proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x26fb95ad acpi_dev_get_resources +EXPORT_SYMBOL_GPL vmlinux 0x26ffd88d xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0x271be5a7 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x2735ef9d init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x273f0538 ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x2767ec90 da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x2773d56e rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0x278c0094 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0x279356d4 map_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x279cb985 apei_exec_pre_map_gars +EXPORT_SYMBOL_GPL vmlinux 0x27a5d89a devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x27c0c4be eventfd_ctx_read +EXPORT_SYMBOL_GPL vmlinux 0x27c1e63f usb_amd_find_chipset_info +EXPORT_SYMBOL_GPL vmlinux 0x27ddb33d acpi_dev_resource_io +EXPORT_SYMBOL_GPL vmlinux 0x27e851a8 ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x27ea090d subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0x27f4717d __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27f68a9d iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x28169d62 irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0x28729b2c perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0x28a903c8 timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x28c8d5e9 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x28d5a7ea arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x28d600b7 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0x28def855 cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0x28e64c64 xen_has_pv_and_legacy_disk_devices +EXPORT_SYMBOL_GPL vmlinux 0x28eca400 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0x29019200 pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x290c144b xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0x294310c6 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x294d1e9c crypto_init_spawn2 +EXPORT_SYMBOL_GPL vmlinux 0x29ace86c pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x29ba393e task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x29cb06e6 set_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x29dae3c8 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x29f27147 crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0x29f8fde0 xen_swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL_GPL vmlinux 0x29f91663 devm_pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x2a036978 scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x2a1052c3 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0x2a126c27 devm_spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x2a16d816 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x2a57e749 da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a86b039 usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x2a9c6130 ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x2abb93b2 find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x2abc1a82 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2accaeed pinctrl_find_gpio_range_from_pin +EXPORT_SYMBOL_GPL vmlinux 0x2ad1ece4 zs_get_total_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0x2ad3a8b3 inet_csk_reqsk_queue_prune +EXPORT_SYMBOL_GPL vmlinux 0x2adb5b4f kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x2af3769f pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x2b22d6a4 blkg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x2b238f05 percpu_ida_for_each_free +EXPORT_SYMBOL_GPL vmlinux 0x2b27b76f skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0x2b293c81 pci_ats_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x2b2a93a8 regmap_fields_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x2b3d50a5 ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x2b3e9b17 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0x2b5ffffb sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x2b7a6de8 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2ba4f6d4 btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x2bc819c5 pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x2bd1e7db ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x2bd72b76 btree_update +EXPORT_SYMBOL_GPL vmlinux 0x2bfaef4e clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x2c06eed9 irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c21af50 usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x2c318f1c platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0x2c6d78e5 usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x2c7d9c64 xen_store_interface +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c99eacb ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0x2cd62fc2 usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x2cd8dac5 pciserial_init_ports +EXPORT_SYMBOL_GPL vmlinux 0x2ce98559 kcrypto_wq +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2d00bd89 anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2d0f7d2f i2c_unlock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x2d17a0e1 cgroup_taskset_size +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d2e8449 sysfs_get +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d59c954 edac_handlers +EXPORT_SYMBOL_GPL vmlinux 0x2d656d3f context_tracking_enabled +EXPORT_SYMBOL_GPL vmlinux 0x2d7a9c3c driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x2d82fafd thermal_generate_netlink_event +EXPORT_SYMBOL_GPL vmlinux 0x2d95e6e6 led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0x2d97312e platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x2d9f2ce3 sched_clock_idle_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x2db5b321 dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0x2dba276a __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x2deaca5e ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x2e0958c1 devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x2e1da9fb probe_kernel_read +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e2f1740 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2e341ecc rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x2e418cd8 pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0x2e45e488 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x2e5317ec crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0x2e643016 ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f64415f unregister_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2f74c7d5 pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x2f857551 machine_check_poll +EXPORT_SYMBOL_GPL vmlinux 0x2f98bbcd page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x2fa5637c bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x2fbb732b pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x2fd8cba9 freeze_wake +EXPORT_SYMBOL_GPL vmlinux 0x2fd91248 device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0x3009a3bb sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0x300c847c tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x301904a6 usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0x301dada4 crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0x303549fd regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x303e2235 sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x303e7f3d fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0x304c085e __efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x308b733a getboottime +EXPORT_SYMBOL_GPL vmlinux 0x30e15dbb debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x30fcd46b fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x310780cd __blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x3109b751 cpu_clock +EXPORT_SYMBOL_GPL vmlinux 0x310f9dfb xattr_getsecurity +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x319286a2 blk_add_request_payload +EXPORT_SYMBOL_GPL vmlinux 0x31b87620 tpm_write +EXPORT_SYMBOL_GPL vmlinux 0x31c0c2d1 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL vmlinux 0x31d079ec mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x31d8e8f7 sysfs_put +EXPORT_SYMBOL_GPL vmlinux 0x31dcbe1b bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x31f75b1a locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0x321bdbb1 compat_get_timeval +EXPORT_SYMBOL_GPL vmlinux 0x321f86e7 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0x32235854 __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0x322767c4 dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x3227f891 __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x322e9651 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x323bb11f regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x324e242b spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x3256ca45 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x325e677c gnttab_grant_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x326f96d4 replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0x327183a1 debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0x3272b540 css_next_child +EXPORT_SYMBOL_GPL vmlinux 0x32822473 ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x328995b5 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0x329bbbde timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x32a2c48a inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0x32b31a8c ktime_get_boottime +EXPORT_SYMBOL_GPL vmlinux 0x32bded08 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x32c110c1 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32ddd5b6 call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x32fd447a monotonic_to_bootbased +EXPORT_SYMBOL_GPL vmlinux 0x3301ce6f tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x330d1143 apic +EXPORT_SYMBOL_GPL vmlinux 0x3310bf11 pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x334f0c23 tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x3354a2ea inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x336154ca rcutorture_record_test_transition +EXPORT_SYMBOL_GPL vmlinux 0x33655159 xen_pcpu_hotplug_sync +EXPORT_SYMBOL_GPL vmlinux 0x336bcd6e tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x33834c8e of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0x33b96e5d apei_exec_write_register +EXPORT_SYMBOL_GPL vmlinux 0x33c689ec ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x33ed2445 gpiochip_add_pin_range +EXPORT_SYMBOL_GPL vmlinux 0x33f7ab15 get_compat_timespec +EXPORT_SYMBOL_GPL vmlinux 0x341264a1 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x342535d2 dma_buf_kmap +EXPORT_SYMBOL_GPL vmlinux 0x345f6c30 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0x3465fce6 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0x347fd4b3 eventfd_ctx_get +EXPORT_SYMBOL_GPL vmlinux 0x348e9789 fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0x349adad0 cgroup_taskset_next +EXPORT_SYMBOL_GPL vmlinux 0x349c9c6f cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0x34a549bd skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0x34b67eef max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x34b8c5cf blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0x34e9635e register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x34eb0d81 anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x34fa574b dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x3508ad53 __get_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x35096348 scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0x352650ee gnttab_batch_map +EXPORT_SYMBOL_GPL vmlinux 0x35474945 ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0x357658df evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x35868a9a unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x35b7bf31 dma_buf_kmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x35e6edd9 zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x35f10f43 nfq_ct_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x35f165f1 devm_reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x35f24dd0 regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x36133931 sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0x361e2bcc save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0x36268299 __add_pages +EXPORT_SYMBOL_GPL vmlinux 0x36474505 pci_configure_slot +EXPORT_SYMBOL_GPL vmlinux 0x365cc1d0 alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0x367af89d regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3681607f crypto_ablkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x36867cc9 crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0x368f1fea static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36b5497e intel_iommu_enabled +EXPORT_SYMBOL_GPL vmlinux 0x36c0dc7e shash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0x36c5ba5e sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x36f63718 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0x3715781e __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x371ac631 ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0x371da3ef fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x3730c360 system_trusted_keyring +EXPORT_SYMBOL_GPL vmlinux 0x373a0644 mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0x37741222 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x37849b81 crypto_alg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x37abdb47 __online_page_set_limits +EXPORT_SYMBOL_GPL vmlinux 0x37c7023a tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x37f1ffbf gdt_page +EXPORT_SYMBOL_GPL vmlinux 0x380f7628 ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0x38620e38 gnttab_grant_foreign_access_trans_ref +EXPORT_SYMBOL_GPL vmlinux 0x389cd99a blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0x38aa4561 __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x390f434d tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0x391924c0 md_ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x3931400e invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x399eb44f sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0x39a9a0a8 spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x39d6f106 bmp085_detect +EXPORT_SYMBOL_GPL vmlinux 0x39e0923a __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0x39e41d76 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0x39f87088 __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x3a1636fa bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0x3a1a581d tpm_release +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a38dc65 memory_failure +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a534442 usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a5974f9 driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3abe44b1 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0x3ac95a3e __rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x3ad0e201 scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x3aeb84f0 __scsi_get_command +EXPORT_SYMBOL_GPL vmlinux 0x3b23b40b bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x3b554d04 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x3b7145bb apei_exec_read_register_value +EXPORT_SYMBOL_GPL vmlinux 0x3b995a20 tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x3bae4559 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x3bceb998 subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x3bfcedd5 kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x3c114257 rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x3c1bfbb9 pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0x3c4413b9 __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x3c6795c1 rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0x3c6b2449 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x3c71521d device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x3c78ac0e ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x3c7944ce fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0x3c8424a0 clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3c9390db pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0x3c9d3f2d serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0x3cb85d0e xen_swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cd581e1 xenbus_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x3cef4392 dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0x3d047c08 usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x3d0a3469 relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d5f392d acpi_os_unmap_memory +EXPORT_SYMBOL_GPL vmlinux 0x3d7ea99a gnttab_grant_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x3da975dc regulator_can_change_voltage +EXPORT_SYMBOL_GPL vmlinux 0x3dae6404 unregister_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x3dc916b6 crypto_fl_tab +EXPORT_SYMBOL_GPL vmlinux 0x3dd63a95 xfrm_inner_extract_output +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3e0bb97d PageHuge +EXPORT_SYMBOL_GPL vmlinux 0x3e15e63a __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x3e23ac2f edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x3e2e543d cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x3e2fa31f wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3e3e4e8b xen_pci_frontend +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e70b88c page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x3e971b8d regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3ea5196d apei_osc_setup +EXPORT_SYMBOL_GPL vmlinux 0x3ec056b9 led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0x3ec95ff4 scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x3eca5ca0 seq_open_net +EXPORT_SYMBOL_GPL vmlinux 0x3ef493ed regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x3efb35c9 get_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0x3f0b7fc8 spi_alloc_master +EXPORT_SYMBOL_GPL vmlinux 0x3f229c4c oops_begin +EXPORT_SYMBOL_GPL vmlinux 0x3f236978 platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0x3f4f40c8 inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x3f5fa012 pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0x3f77d14b regmap_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x3f84d4c9 gnttab_release_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x3fa10f84 sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0x3fc72d3d __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x3fd38c02 usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0x3fdcb69d spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x3fe70426 register_mce_write_callback +EXPORT_SYMBOL_GPL vmlinux 0x3ff797c8 device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x40077595 netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x400a024b acpi_scan_lock_release +EXPORT_SYMBOL_GPL vmlinux 0x400f0c67 bmp085_remove +EXPORT_SYMBOL_GPL vmlinux 0x401134df usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0x4017814e cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x403c7759 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x4045c494 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0x40466ce7 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0x4065d168 pm_print_active_wakeup_sources +EXPORT_SYMBOL_GPL vmlinux 0x408cebdb ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x40af0dec ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x40c3caec mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x40d46b21 crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x41189f30 hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x41200f8a subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x412dd983 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x412fc7c2 md_is_badblock +EXPORT_SYMBOL_GPL vmlinux 0x41363c76 sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x413795cf regmap_update_bits_check_async +EXPORT_SYMBOL_GPL vmlinux 0x413a835c nf_register_afinfo +EXPORT_SYMBOL_GPL vmlinux 0x4149aa52 bio_clone_mddev +EXPORT_SYMBOL_GPL vmlinux 0x41721113 hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x417b472b rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x418b3da2 stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x4190969f efivar_entry_find +EXPORT_SYMBOL_GPL vmlinux 0x419b9750 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x41d079de __fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0x41de8ac5 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x41f86e81 sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0x41ffb7be dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0x4200330f crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0x4209ee1d power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0x4211d1e2 serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x4213a51a efivar_entry_set_safe +EXPORT_SYMBOL_GPL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x4221f741 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x424acc6d scatterwalk_done +EXPORT_SYMBOL_GPL vmlinux 0x42628768 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0x427595a4 blkg_stat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x427d5c68 register_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x42ebbaff tpm_open +EXPORT_SYMBOL_GPL vmlinux 0x430f4c7d skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0x43a53735 __alloc_workqueue_key +EXPORT_SYMBOL_GPL vmlinux 0x43af034d extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x43b52b8b __mmu_notifier_invalidate_range_start +EXPORT_SYMBOL_GPL vmlinux 0x43e985d6 sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x44404f11 kdb_register_repeat +EXPORT_SYMBOL_GPL vmlinux 0x444f509c wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x4483e318 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x44b6565c rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0x44d3b53e crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x450fb522 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x45339658 pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0x4541fe0d mtrr_state +EXPORT_SYMBOL_GPL vmlinux 0x454b71ab crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x454c15ae __smp_call_function_single +EXPORT_SYMBOL_GPL vmlinux 0x4557ec6f relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0x4570cece powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x45bf1ff3 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x45cc1ae0 ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0x45d14bdf hypercall_page +EXPORT_SYMBOL_GPL vmlinux 0x45ec7420 devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x460f31aa rodata_test_data +EXPORT_SYMBOL_GPL vmlinux 0x460f7531 wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x46434934 disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x46633a62 find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x4672e88b __crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x4676fc9f acpi_dma_request_slave_chan_by_index +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x46b77375 sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0x46cbfecf skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x46cd9193 acpi_get_gpiod_by_index +EXPORT_SYMBOL_GPL vmlinux 0x46d7f465 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0x46df3667 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x46fce8a9 cgroup_taskset_cur_css +EXPORT_SYMBOL_GPL vmlinux 0x47053969 rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0x4707d3d3 ablkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0x470fa426 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x4725e470 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0x472ed0db mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0x473d952c inet_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0x47550fcc crypto_init_spawn +EXPORT_SYMBOL_GPL vmlinux 0x4760e80a __efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x476ab3ec pwm_set_polarity +EXPORT_SYMBOL_GPL vmlinux 0x477a6ec6 cpufreq_frequency_get_table +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x47a4b32a extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47bcffc8 ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0x47cd690d ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x47fb11fc class_find_device +EXPORT_SYMBOL_GPL vmlinux 0x481486e5 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x4828e77b acpi_scan_lock_acquire +EXPORT_SYMBOL_GPL vmlinux 0x4833bb75 blkg_prfill_stat +EXPORT_SYMBOL_GPL vmlinux 0x484c117a posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0x48682db9 perf_guest_get_msrs +EXPORT_SYMBOL_GPL vmlinux 0x4892b3fb pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x48b9112a fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0x48ba94a4 acpi_dev_pm_detach +EXPORT_SYMBOL_GPL vmlinux 0x48baf14d regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x49031def inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x49092ff3 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0x490a8df6 x86_platform +EXPORT_SYMBOL_GPL vmlinux 0x4929cbc6 tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0x4937f2e4 inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0x495d8a50 extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0x49763169 ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0x49800ff2 xen_swiotlb_dma_supported +EXPORT_SYMBOL_GPL vmlinux 0x498d293a trace_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x49b4679a pci_pri_enabled +EXPORT_SYMBOL_GPL vmlinux 0x49c90557 fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0x49c98e04 dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0x49d140a1 tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0x4a24e355 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4a35c62a blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0x4a3c3cf9 microcode_sanity_check +EXPORT_SYMBOL_GPL vmlinux 0x4a6002cf __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x4a90160e bprintf +EXPORT_SYMBOL_GPL vmlinux 0x4aabaac8 pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x4aadeb9a ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0x4ac3feb2 rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x4adbae40 save_stack_trace_tsk +EXPORT_SYMBOL_GPL vmlinux 0x4af5102d ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0x4affd08b put_compat_timespec +EXPORT_SYMBOL_GPL vmlinux 0x4b0e648b sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x4b2c55c1 blk_queue_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x4bb13aca lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0x4bc62a81 audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4bc8cefd rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0x4bde082c trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x4bf0d6d1 wakeup_source_prepare +EXPORT_SYMBOL_GPL vmlinux 0x4bf53135 dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x4c0b74f9 usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0x4c2a472b __static_cpu_has_safe +EXPORT_SYMBOL_GPL vmlinux 0x4c2e1f24 clk_disable +EXPORT_SYMBOL_GPL vmlinux 0x4c602bf1 __blkg_release_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4c6edcf3 ata_acpi_gtm_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x4c74dec2 spi_unregister_master +EXPORT_SYMBOL_GPL vmlinux 0x4c759827 byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x4ca4c9df clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x4cda9bbd regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0x4cf21513 usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0x4d0d575d usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x4d14ed3a cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0x4d186c73 da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x4d5311c5 sdhci_pci_o2_probe +EXPORT_SYMBOL_GPL vmlinux 0x4d5cec42 cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0x4d7479f7 inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0x4d98441f ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0x4db171e3 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0x4dc3bcdf ata_eh_qc_retry +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4de3e3fc od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x4defe84b regmap_field_write +EXPORT_SYMBOL_GPL vmlinux 0x4e0eb19f acpi_subsys_prepare +EXPORT_SYMBOL_GPL vmlinux 0x4e109192 ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0x4e16dc51 adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x4e242f5f pstore_cannot_block_path +EXPORT_SYMBOL_GPL vmlinux 0x4e444687 crypto_tfm_in_queue +EXPORT_SYMBOL_GPL vmlinux 0x4e4a842d ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x4e57723d apei_read +EXPORT_SYMBOL_GPL vmlinux 0x4e5de514 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x4e61ac14 sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x4e6f0c7d inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0x4e74e625 gnttab_batch_copy +EXPORT_SYMBOL_GPL vmlinux 0x4e84ec60 vtime_guest_exit +EXPORT_SYMBOL_GPL vmlinux 0x4eb9123b ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0x4ec7b8e3 tracepoint_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0x4edc252c rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x4edfa4f9 pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f020dee public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x4f165d72 dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x4f1e6f73 irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x4f245c80 devres_add +EXPORT_SYMBOL_GPL vmlinux 0x4f65d314 pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0x4fa5617c pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0x4fb5c54e stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x4fd4e89d ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4fd5cfb9 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5007c15d dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0x500b6dd7 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x501db13b ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0x5026585c xen_irq_from_gsi +EXPORT_SYMBOL_GPL vmlinux 0x5032b16f relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0x50347bac synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x5045433c led_trigger_store +EXPORT_SYMBOL_GPL vmlinux 0x506691f1 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x50676e96 usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x50714eed iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0x507de8c6 add_memory +EXPORT_SYMBOL_GPL vmlinux 0x5086ac3a alg_test +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x50d1f870 pgprot_writecombine +EXPORT_SYMBOL_GPL vmlinux 0x50d78153 inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50e93c29 crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x50ed6c31 xenbus_unmap_ring +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x50fe4d89 __inet_hash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x512b1d19 register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x518007a1 ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x5184c063 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0x5187ac4b xen_store_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x5189ce6f tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0x518c2fc6 hpet_rtc_dropped_irq +EXPORT_SYMBOL_GPL vmlinux 0x51904d58 mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x5191bd3c efivar_work +EXPORT_SYMBOL_GPL vmlinux 0x519e6880 pinctrl_add_gpio_ranges +EXPORT_SYMBOL_GPL vmlinux 0x51c35d82 usb_acpi_power_manageable +EXPORT_SYMBOL_GPL vmlinux 0x5209b613 sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0x520e823c user_update +EXPORT_SYMBOL_GPL vmlinux 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL vmlinux 0x522ad8f6 pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0x522ea25b __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x522f538b tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x5237f2b3 pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0x523f5545 cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0x525b89d5 wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0x5272d8bc __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0x52969624 devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x52a41251 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x52ae4faa rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x52c5fee6 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x5305646e alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x530a60a1 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0x5354693e cpufreq_frequency_table_cpuinfo +EXPORT_SYMBOL_GPL vmlinux 0x5358fc36 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x53614269 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x536986ef class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x539f157b pci_xen_swiotlb_init_late +EXPORT_SYMBOL_GPL vmlinux 0x53ae186f acpi_dev_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x53b0a2ec regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0x53cbaf1e device_schedule_callback_owner +EXPORT_SYMBOL_GPL vmlinux 0x53d25231 pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54215db5 visitor64 +EXPORT_SYMBOL_GPL vmlinux 0x543e8f18 debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x544fbc1a xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x5460c8d8 fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x54740eb7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54aba0de wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x54c377df tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0x54c6fabf ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0x54f02a40 usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x5510aecc pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0x55351bf2 exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x55526907 xen_features +EXPORT_SYMBOL_GPL vmlinux 0x5556fd4a crypto_nivaead_type +EXPORT_SYMBOL_GPL vmlinux 0x555816fc invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0x55763d68 usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0x55771d8e disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x5587a090 regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x55a33dde acpi_dma_request_slave_chan_by_name +EXPORT_SYMBOL_GPL vmlinux 0x55bf85bc kill_pid_info_as_cred +EXPORT_SYMBOL_GPL vmlinux 0x55e9cef0 ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0x561c056b rtc_irq_register +EXPORT_SYMBOL_GPL vmlinux 0x5623892a regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x56398615 mark_tsc_unstable +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x564436df wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x564f1dca klist_add_after +EXPORT_SYMBOL_GPL vmlinux 0x5654f836 erst_get_record_id_next +EXPORT_SYMBOL_GPL vmlinux 0x565b6892 uuid_le_gen +EXPORT_SYMBOL_GPL vmlinux 0x56623e22 scsi_internal_device_block +EXPORT_SYMBOL_GPL vmlinux 0x5662c643 ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x567de393 vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0x56886b19 scatterwalk_map +EXPORT_SYMBOL_GPL vmlinux 0x5692386f gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x56947347 dmi_walk +EXPORT_SYMBOL_GPL vmlinux 0x56954c51 unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0x56a1e47e get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0x56ab2a9b devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x56b6692c ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x56d697ce cpu_up +EXPORT_SYMBOL_GPL vmlinux 0x56da7dc4 cpufreq_frequency_table_target +EXPORT_SYMBOL_GPL vmlinux 0x56e75d47 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x56e7d899 unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x57231f45 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0x57267cc3 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0x5726b446 pci_get_hp_params +EXPORT_SYMBOL_GPL vmlinux 0x572e53ab pci_msi_off +EXPORT_SYMBOL_GPL vmlinux 0x573f5db6 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x573fed0b regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0x57520d16 cper_estatus_check_header +EXPORT_SYMBOL_GPL vmlinux 0x575c5f94 execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0x575ffde5 rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x5779d445 xenbus_exists +EXPORT_SYMBOL_GPL vmlinux 0x578eb513 dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x579ee14f led_classdev_register +EXPORT_SYMBOL_GPL vmlinux 0x57be050b dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0x57c2d97c iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x57c6d31b __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0x57fb701e register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x58413099 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x584e238e ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0x585704ab aer_recover_queue +EXPORT_SYMBOL_GPL vmlinux 0x58748b84 crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0x587677c5 ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x58964739 ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0x589ccffc regmap_update_bits_async +EXPORT_SYMBOL_GPL vmlinux 0x589e4569 syscon_regmap_lookup_by_pdevname +EXPORT_SYMBOL_GPL vmlinux 0x58e2a027 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0x58fe9409 rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0x591d0b76 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0x5943c9e1 da903x_write +EXPORT_SYMBOL_GPL vmlinux 0x5947abbe max77693_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x598524f7 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5991db17 generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0x59a6e91d clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x59b2adbf input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x59e2743e call_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0x59eae699 ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x59f06e70 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0x5a07fb4e usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0x5a2b1b67 gnttab_free_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x5a2cd84a dev_get_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x5a441ebd efi_query_variable_store +EXPORT_SYMBOL_GPL vmlinux 0x5a69dd7a devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a8562a1 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0x5a919574 crypto_alloc_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x5a9a4ef6 do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x5ab4323e usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0x5ab9db11 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0x5ac2727f smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x5adfed7d devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0x5af03a28 gnttab_claim_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x5afb5fa6 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x5b19a782 efivars_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5b219126 restore_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x5b2d92cb blk_queue_rq_timed_out +EXPORT_SYMBOL_GPL vmlinux 0x5b5895c8 tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0x5b5b02d5 pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0x5b74bf3f ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0x5bdf7a1d sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0x5c05cdb0 usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x5c0dad3d input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0x5c12f1ac sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0x5c15d197 xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0x5c1830af ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x5c37b914 __init_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0x5c40588d pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0x5c4d41a6 pinctrl_pm_select_idle_state +EXPORT_SYMBOL_GPL vmlinux 0x5c54f307 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0x5c66e90c efivar_run_worker +EXPORT_SYMBOL_GPL vmlinux 0x5ca03ab0 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x5ca74fbe vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x5ca93699 tracepoint_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x5ca99962 set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0x5cabdced dev_pm_qos_remove_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5cd4cf25 perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0x5cd907e5 tps65912_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x5cf8a882 __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x5d07e1a2 fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5d0be541 smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x5d12e48f input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0x5d25a8f2 device_move +EXPORT_SYMBOL_GPL vmlinux 0x5d366dec gnttab_cancel_free_callback +EXPORT_SYMBOL_GPL vmlinux 0x5d48a650 m2p_find_override_pfn +EXPORT_SYMBOL_GPL vmlinux 0x5d49ac76 irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0x5d559d24 rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x5d66d8c9 hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0x5d77952d hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x5d8178a6 irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x5d97969c ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5dbcfa4f boot_cpu_physical_apicid +EXPORT_SYMBOL_GPL vmlinux 0x5ddd31cb iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x5dec8b99 sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0x5e0797c5 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0x5e1ced44 task_xstate_cachep +EXPORT_SYMBOL_GPL vmlinux 0x5e296203 da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e86df92 xenbus_probe_devices +EXPORT_SYMBOL_GPL vmlinux 0x5e91873d xen_swiotlb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x5ea13e3d ping_hash +EXPORT_SYMBOL_GPL vmlinux 0x5eede844 vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x5eeeb5b9 mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x5ef3bf07 dev_hard_start_xmit +EXPORT_SYMBOL_GPL vmlinux 0x5ef4eb2c spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x5ef60b01 spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x5f248f72 set_timer_slack +EXPORT_SYMBOL_GPL vmlinux 0x5f2da8c4 check_tsc_unstable +EXPORT_SYMBOL_GPL vmlinux 0x5f419491 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x5f79a98b __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x5f8aafe4 power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0x5f8e6369 pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x5f9c1265 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0x5fc27be9 acpi_dev_irq_flags +EXPORT_SYMBOL_GPL vmlinux 0x5fd6ebe7 m2p_remove_override +EXPORT_SYMBOL_GPL vmlinux 0x5fdfa2c1 amd_pmu_enable_virt +EXPORT_SYMBOL_GPL vmlinux 0x5ffd34cb __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x6002d9da hypervisor_kobj +EXPORT_SYMBOL_GPL vmlinux 0x60050be2 register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x6025e121 sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0x60364fd4 usb_string +EXPORT_SYMBOL_GPL vmlinux 0x603a0262 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0x603be5e5 usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0x60506751 unmap_kernel_range_noflush +EXPORT_SYMBOL_GPL vmlinux 0x6054b123 tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0x6091797f synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x60930d37 save_mc_for_early +EXPORT_SYMBOL_GPL vmlinux 0x6094685f wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60b4a9e3 dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x60c95350 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0x60c95b35 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0x60cd73ed pv_apic_ops +EXPORT_SYMBOL_GPL vmlinux 0x60e61350 rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0x613fd25d cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x614b686a rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x614ddd8f key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0x6183ff15 sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x619118b0 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0x6194ffea do_machine_check +EXPORT_SYMBOL_GPL vmlinux 0x61cbfc47 usb_acpi_set_power_state +EXPORT_SYMBOL_GPL vmlinux 0x61cf4c9a acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x6212b05b cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0x621bf9e5 usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x6223d719 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x622dacba tick_nohz_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x623803c8 hest_disable +EXPORT_SYMBOL_GPL vmlinux 0x62411632 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0x6241f00a efivar_entry_size +EXPORT_SYMBOL_GPL vmlinux 0x6286d9da gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x629ec0ff tcp_done +EXPORT_SYMBOL_GPL vmlinux 0x62b3a93e pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x62cb5010 __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0x62d60c52 rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0x62f4f691 ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0x62f7c485 serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x630650f1 __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x630dedee netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x6314a4c8 ata_acpi_cbl_80wire +EXPORT_SYMBOL_GPL vmlinux 0x63205de1 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x632e5e7f securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x634062e2 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x6342919c exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0x634aed6f rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x6356c683 regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0x635ec980 apei_exec_post_unmap_gars +EXPORT_SYMBOL_GPL vmlinux 0x6383266b ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0x6387e6f9 raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0x638fe045 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x6395ed77 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x639cfcd1 pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x63b4a055 pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0x63bf7b77 debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0x63c6547e crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x63d5f68c da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x647ab29f agp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x648a0302 dm_requeue_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x64982469 max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x64a2f532 pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x64ae7627 usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0x64b7069e apei_mce_report_mem_error +EXPORT_SYMBOL_GPL vmlinux 0x64bb123f lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0x64bb642c print_context_stack_bp +EXPORT_SYMBOL_GPL vmlinux 0x64c672d8 pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x64d89253 usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x64eee283 skcipher_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6527a231 dbgp_external_startup +EXPORT_SYMBOL_GPL vmlinux 0x6534560e inet6_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0x6535e40c crypto_init_ahash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x654ee362 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x658c8186 amd_get_nb_id +EXPORT_SYMBOL_GPL vmlinux 0x658ed86c preempt_schedule_context +EXPORT_SYMBOL_GPL vmlinux 0x65bbbc78 schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65e8a7aa pm_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0x65ff2579 get_matching_microcode +EXPORT_SYMBOL_GPL vmlinux 0x66069728 tasklet_hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x662320f0 xen_register_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0x662a0c3f x509_get_sig_params +EXPORT_SYMBOL_GPL vmlinux 0x662f1c6e ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0x663c16d6 gnttab_grant_foreign_access_subpage_ref +EXPORT_SYMBOL_GPL vmlinux 0x6640889d dm_kill_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x664d4c46 xenbus_register_frontend +EXPORT_SYMBOL_GPL vmlinux 0x66591593 xenbus_dev_cancel +EXPORT_SYMBOL_GPL vmlinux 0x666d11e3 usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x66a768c7 ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0x66bd954f blkcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0x66cd204c usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x66cfbd28 relay_close +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x66d8ef34 adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x66dd684f rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0x66de9f6e hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0x66ec07cf crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0x66f1ebb2 efivar_entry_set +EXPORT_SYMBOL_GPL vmlinux 0x66f40bdf iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x6700a052 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x6724e1a8 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0x67293194 sec_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x672cbb60 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0x672e68ee crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0x6739a503 balloon_set_new_target +EXPORT_SYMBOL_GPL vmlinux 0x674e13e1 public_key_destroy +EXPORT_SYMBOL_GPL vmlinux 0x67664666 ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0x679270c1 rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x67a7775e devm_acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x6803cd90 pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x68087f72 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x681d668b usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0x68287c68 regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x687934e9 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x6879d7f8 ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x687c2319 shash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0x689c59d1 fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0x68b201db device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x68f31517 platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0x690af9df cred_to_ucred +EXPORT_SYMBOL_GPL vmlinux 0x6921aa34 compat_put_timeval +EXPORT_SYMBOL_GPL vmlinux 0x6923cbbb shake_page +EXPORT_SYMBOL_GPL vmlinux 0x6923ce63 irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x6933445e crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0x69365d5f crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0x69447467 ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0x695cdd01 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x6966824a pci_reset_bridge_secondary_bus +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x698a899f ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0x69e9a2cb ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x6a088bc9 adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a4755af device_del +EXPORT_SYMBOL_GPL vmlinux 0x6a4fc008 regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a54b1bf crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0x6a5fb566 rcu_sched_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x6a6455ab hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x6a6cafd2 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6aa991d7 regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0x6ac8ed84 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x6acad21f acpi_get_cpuid +EXPORT_SYMBOL_GPL vmlinux 0x6ad2d082 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0x6b29a1fa ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0x6b55d9b7 extcon_register_interest +EXPORT_SYMBOL_GPL vmlinux 0x6b618114 ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x6b81de29 dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x6b93bf60 inet_twdr_twkill_work +EXPORT_SYMBOL_GPL vmlinux 0x6b99e4cf part_round_stats +EXPORT_SYMBOL_GPL vmlinux 0x6bbb9cc6 pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0x6bf1b90d dmi_memdev_name +EXPORT_SYMBOL_GPL vmlinux 0x6c1251fd apei_exec_read_register +EXPORT_SYMBOL_GPL vmlinux 0x6c1b09ab gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x6c48a076 of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x6c49c4f2 clockevents_notify +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c556e9b usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0x6c5fcaac modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x6c655913 register_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6c84433c ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6cd18de9 init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0x6cd21997 ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x6cd4ea62 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0x6ce79cb6 css_next_descendant_post +EXPORT_SYMBOL_GPL vmlinux 0x6d090f84 inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6d0c65e2 platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0x6d2785b5 pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6dbffbc6 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x6dd68ae5 pinctrl_select_state +EXPORT_SYMBOL_GPL vmlinux 0x6df8f4cd pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x6dfc3a75 gpio_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x6e03fd65 usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x6e04a077 usb_bind_phy +EXPORT_SYMBOL_GPL vmlinux 0x6e06f97c tpm_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x6e09eff2 tpm_show_durations +EXPORT_SYMBOL_GPL vmlinux 0x6e4cea40 usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0x6e5776c6 stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0x6e58ddf0 gnttab_end_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x6e5ef44b thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x6e6d8e0c fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0x6e77ee14 tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0x6e7943ec iommu_group_id +EXPORT_SYMBOL_GPL vmlinux 0x6e85b00b local_touch_nmi +EXPORT_SYMBOL_GPL vmlinux 0x6e8944fa platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6e8bf789 hrtimer_start +EXPORT_SYMBOL_GPL vmlinux 0x6e8fb649 driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x6ea98361 ioremap_page_range +EXPORT_SYMBOL_GPL vmlinux 0x6eb62ac0 uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x6ee24332 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0x6ee5ca96 xen_find_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0x6f127094 usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x6f1ee69e kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x6f414655 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0x6f5791b5 pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0x6f5f56be regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x6f7408c6 add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0x6f7deb8c sec_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x6f81f90b devm_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x6f88ba2d subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x6f8c6d63 crypto_ahash_type +EXPORT_SYMBOL_GPL vmlinux 0x6f91819e rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6fa9e2e5 usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x6fbf864f dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6fc9cf61 extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6fe3d8cf ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6ffa9be0 pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x7000532a regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x7014cdeb md_stop +EXPORT_SYMBOL_GPL vmlinux 0x701f4c96 acpiphp_register_attention +EXPORT_SYMBOL_GPL vmlinux 0x70515a64 iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0x707ff1bb ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x7083d3d7 debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0x70a4c759 perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x70b169d7 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0x70cf032f usb_hcd_irq +EXPORT_SYMBOL_GPL vmlinux 0x70d6d474 fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0x70d8e41d ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0x70f8c684 dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0x7109730d swiotlb_tbl_map_single +EXPORT_SYMBOL_GPL vmlinux 0x710a8478 extcon_update_state +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x710cc053 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x7143c52b dma_buf_export_named +EXPORT_SYMBOL_GPL vmlinux 0x714713aa percpu_ida_free +EXPORT_SYMBOL_GPL vmlinux 0x71496d72 adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71663e71 list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0x7169337d pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0x7183aebe fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x71ad7f8e proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0x71bac76f file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0x71cdc3bb ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0x71d5a1a8 skb_segment +EXPORT_SYMBOL_GPL vmlinux 0x71dc9998 crypto_il_tab +EXPORT_SYMBOL_GPL vmlinux 0x71edce30 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x71ff918c alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x7207cb93 dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0x721fd23f thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x722fcfeb crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x724db3c3 usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x72741f25 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x727c6c34 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0x72a04b86 usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0x72ba8dcc xenbus_register_backend +EXPORT_SYMBOL_GPL vmlinux 0x72d4d033 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x72d5613f ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x72e722c4 unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0x72e8b42d bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0x72f1b529 usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0x73013896 xenbus_printf +EXPORT_SYMBOL_GPL vmlinux 0x73073e1b ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x730e1cec iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0x731dba7a xen_domain_type +EXPORT_SYMBOL_GPL vmlinux 0x732b4662 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0x73700906 crypto_alloc_instance +EXPORT_SYMBOL_GPL vmlinux 0x739fbf73 led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73afaa4a rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0x73c2554f __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0x73c63a1c pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x73c832f2 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x73d69364 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x73e9343e inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x73ec7e1b iommu_present +EXPORT_SYMBOL_GPL vmlinux 0x740e9cb5 devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7422c95e gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x74457e56 apei_resources_fini +EXPORT_SYMBOL_GPL vmlinux 0x7452adff user_return_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x74584459 devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x74628570 context_tracking +EXPORT_SYMBOL_GPL vmlinux 0x74631339 unregister_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x7464ea38 dev_pm_qos_add_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x748c877c usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0x748d801a pcap_adc_sync +EXPORT_SYMBOL_GPL vmlinux 0x74954462 timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74c08941 kvm_async_pf_task_wake +EXPORT_SYMBOL_GPL vmlinux 0x74d63175 dm_dispatch_request +EXPORT_SYMBOL_GPL vmlinux 0x74dd29f3 blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x74deb10c used_vectors +EXPORT_SYMBOL_GPL vmlinux 0x75133f6e visitor128 +EXPORT_SYMBOL_GPL vmlinux 0x751dff43 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x7521afb6 leave_mm +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x75230caf blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x7527271d br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0x752fd452 sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x753d40fe usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0x75782fe2 tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x757b49d2 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0x758a0093 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0x758a3812 atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x758a782e blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x7592e486 xen_swiotlb_sync_single_for_device +EXPORT_SYMBOL_GPL vmlinux 0x75c984ae virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0x75e0c590 cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0x7631b888 securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x764dd64e xenbus_match +EXPORT_SYMBOL_GPL vmlinux 0x765a3f13 devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x767d7871 rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x76805ef6 usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x76927f87 extcon_find_cable_index +EXPORT_SYMBOL_GPL vmlinux 0x7692831f transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x76b5b4fb crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0x76b8c97b scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x76d07d6e gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x76e940b1 pwm_request +EXPORT_SYMBOL_GPL vmlinux 0x7700bf5e spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x7712771a unbind_from_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x771e8194 xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x772fbcaf trace_buffer_unlock_commit_regs +EXPORT_SYMBOL_GPL vmlinux 0x77490fe8 ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0x775a6ef5 kvm_read_and_reset_pf_reason +EXPORT_SYMBOL_GPL vmlinux 0x7769c57c irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x77c7e44f sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x77d5dd73 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0x77fe2c03 usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x78156915 rtc_irq_unregister +EXPORT_SYMBOL_GPL vmlinux 0x78164fbe ablkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x782adb74 hpet_rtc_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x78374ece pwm_config +EXPORT_SYMBOL_GPL vmlinux 0x785ce408 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0x786d3a3c ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x78706039 pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0x787c882b lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x789c15aa crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0x78a7d29e driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x78bd3bc0 dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x78ea227b acpi_bus_no_hotplug +EXPORT_SYMBOL_GPL vmlinux 0x78f13e12 pci_pri_status +EXPORT_SYMBOL_GPL vmlinux 0x78f442b9 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0x78fe0509 tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0x79000fbf pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0x79020f99 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x790dd04a css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x791d0cd3 tps65912_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x796c2d48 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x7991fd8d crash_vmclear_loaded_vmcss +EXPORT_SYMBOL_GPL vmlinux 0x799b7665 each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x799cc695 usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x79af79b6 input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0x79b10b1a device_reset +EXPORT_SYMBOL_GPL vmlinux 0x79b9cc36 usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0x79c1f25b debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0x79dbcfe5 register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x79dec4f1 device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x79e69460 intel_iommu_gfx_mapped +EXPORT_SYMBOL_GPL vmlinux 0x79eb69a7 tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x7a2e4b44 ezx_pcap_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x7a319404 clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x7a3eb52f palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0x7a863ff9 sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0x7a8cffa2 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x7a944007 rcu_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x7ac8e5b0 acpi_gsi_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x7acb5470 vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x7addf09b usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0x7ae1ae8e cpufreq_frequency_table_put_attr +EXPORT_SYMBOL_GPL vmlinux 0x7b0f1ab3 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7b1d544d edac_handler_set +EXPORT_SYMBOL_GPL vmlinux 0x7b292d19 static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0x7b5875a5 spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x7b6622e7 tpm_show_active +EXPORT_SYMBOL_GPL vmlinux 0x7b6f6206 ata_sff_data_xfer_noirq +EXPORT_SYMBOL_GPL vmlinux 0x7b728d67 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0x7b90d1a9 bind_virq_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x7bb77b3a platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7bf2a519 irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x7bf4093e rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0x7bf4d04c ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0x7bf7e171 clockevents_unbind +EXPORT_SYMBOL_GPL vmlinux 0x7c227088 clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x7c309fa6 __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x7c346357 pkey_algo +EXPORT_SYMBOL_GPL vmlinux 0x7c3bd387 ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x7c4dc164 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x7c698e51 find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0x7c7b1a56 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0x7c846e93 blkg_lookup_create +EXPORT_SYMBOL_GPL vmlinux 0x7c9f3e69 __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0x7cc1b7fd max77693_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7cc7de1c x509_check_signature +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7cdde12f user_match +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cf150fb led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7cf500ca rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0x7d36e534 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7d397cc7 gpiod_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d3ce4a9 bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d61bd1b usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0x7d8126a8 xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0x7d8d5bd5 udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x7d954624 rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x7dab26b6 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7dddf55a cgroup_load_subsys +EXPORT_SYMBOL_GPL vmlinux 0x7dea88cb pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x7e1aae8c rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x7e2288b7 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x7e2e869d mmput +EXPORT_SYMBOL_GPL vmlinux 0x7e3524f5 sec_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7e36f6da device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x7e445577 pinctrl_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e80aa36 cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0x7e84919e set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x7ea1a2bc probe_kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x7eb33ef9 regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x7ee1ed94 sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0x7ee20067 cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0x7ef39f1c clk_register +EXPORT_SYMBOL_GPL vmlinux 0x7f0a5a45 rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0x7f3211d5 rtc_set_mmss +EXPORT_SYMBOL_GPL vmlinux 0x7f6c2fcc vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0x7f6c7ed1 tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0x7f78c790 devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x7f79df6f usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x7fa02cf0 transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0x7fa3280f net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0x7fa72b1e da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0x80156244 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x80603455 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0x806e502f btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8073f106 device_add +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x80911d89 blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0x80966a7e rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0x809bebed gnttab_map_refs +EXPORT_SYMBOL_GPL vmlinux 0x80cef271 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0x80d3927f __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80f03249 ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0x80f3268f __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x810f2e4e clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x8112c14a cgroup_add_cftypes +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x8140842a gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x8149641c xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0x8149ea54 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0x815e1c2d usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x81611890 tpm_show_enabled +EXPORT_SYMBOL_GPL vmlinux 0x81b59864 __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x81bda0f3 virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0x81e5baed ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0x81e662c4 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x81f3fee1 cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x8213b4a2 usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x82939ebd rcu_batches_completed_sched +EXPORT_SYMBOL_GPL vmlinux 0x829df4be register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x82a9eff4 sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0x82acf95c uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0x82c10535 rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82dbec19 erst_write +EXPORT_SYMBOL_GPL vmlinux 0x82e2b34b clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x82ecf5f2 list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x8318eb66 clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x833b64a2 xenbus_probe_node +EXPORT_SYMBOL_GPL vmlinux 0x834616bb sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8380201d usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x838b13e7 ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0x83c4ace0 regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x83cadf5f do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x83d158dd rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0x83fddc9a xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0x8420bccd cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0x843d70ef acpi_is_root_bridge +EXPORT_SYMBOL_GPL vmlinux 0x844eac72 preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8487a2b6 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x84c44580 pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x84c7957f sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0x84cc6975 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x84d4114b regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0x84f72880 register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0x85001a6e regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x85050965 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x85216155 ezx_pcap_read +EXPORT_SYMBOL_GPL vmlinux 0x8522c1bb preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x852ec80e tcp_reno_min_cwnd +EXPORT_SYMBOL_GPL vmlinux 0x85480af4 vtime_common_account_irq_enter +EXPORT_SYMBOL_GPL vmlinux 0x8561595d usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0x8561b6bc da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x856bf545 usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x859aea9a xen_set_domain_pte +EXPORT_SYMBOL_GPL vmlinux 0x85a56c17 __rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x85ae78a5 ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x85af81b5 blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x85b14d33 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x85b761e1 scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0x85c10896 rcu_batches_completed_bh +EXPORT_SYMBOL_GPL vmlinux 0x85c1cdc9 ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x85c73422 fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0x85c7f674 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x85cb2c45 xen_has_pv_devices +EXPORT_SYMBOL_GPL vmlinux 0x85cffac8 platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0x85d7edfd hpet_set_periodic_freq +EXPORT_SYMBOL_GPL vmlinux 0x85dd061f crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x85e9c0e2 pinctrl_utils_reserve_map +EXPORT_SYMBOL_GPL vmlinux 0x85e9fdd2 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x85fa44ee __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x86042ee3 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0x8623e494 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x8638188b rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x865afd3b i2c_new_device +EXPORT_SYMBOL_GPL vmlinux 0x86623fd7 notify_remote_via_irq +EXPORT_SYMBOL_GPL vmlinux 0x866b9687 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x8676c568 ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x869839f9 virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0x86a1b383 wm8400_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x86a51007 gnttab_end_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x86b23d6e fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0x86b2b40e skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0x86e31511 spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x86f8c910 pcap_set_ts_bits +EXPORT_SYMBOL_GPL vmlinux 0x8702e548 process_srcu +EXPORT_SYMBOL_GPL vmlinux 0x8708a48b regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x870e16b7 xen_test_irq_shared +EXPORT_SYMBOL_GPL vmlinux 0x873fbaea edac_atomic_assert_error +EXPORT_SYMBOL_GPL vmlinux 0x87580c16 ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x8767a78e pinctrl_find_and_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x8774eb6c pinctrl_utils_add_map_mux +EXPORT_SYMBOL_GPL vmlinux 0x8794cd19 btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x87a532eb sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0x87af324c regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x87bdaa14 register_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x87d379a7 regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x8810ad5e crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0x8821dbad trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0x8826befd tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0x883c2740 __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x8844b79a spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x8856e0a4 ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x8874e881 usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x88a4fd15 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88ae5882 pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x88b5647c trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x88d3132d pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0x88fb4153 perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x891055b8 usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0x891a5a7f gnttab_max_grant_frames +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x894cf45f usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x89502f0c gnttab_subpage_grants_available +EXPORT_SYMBOL_GPL vmlinux 0x8956aeae apei_exec_ctx_init +EXPORT_SYMBOL_GPL vmlinux 0x895caded device_find_child +EXPORT_SYMBOL_GPL vmlinux 0x895f9d1c crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x8963bfae irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0x898e5467 bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89c04a9b unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x89c63547 bsg_request_fn +EXPORT_SYMBOL_GPL vmlinux 0x89fa6db9 usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x8a2b14ba wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x8a4b8066 unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x8a4f1cfc efivar_entry_add +EXPORT_SYMBOL_GPL vmlinux 0x8a5bc5fe pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x8a662e1b sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x8a78989f irq_from_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x8a7cb9c4 platform_thermal_package_rate_control +EXPORT_SYMBOL_GPL vmlinux 0x8a7ef980 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0x8a981e18 crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8abda54b device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x8ad531b7 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0x8ae6b445 pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0x8af4a943 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0x8b04668e bind_interdomain_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x8b0e064d ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x8b3cc643 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x8b66f9e0 xen_platform_pci_unplug +EXPORT_SYMBOL_GPL vmlinux 0x8b7af6a4 edac_subsys +EXPORT_SYMBOL_GPL vmlinux 0x8b8d2621 yield_to +EXPORT_SYMBOL_GPL vmlinux 0x8b9200fd lookup_address +EXPORT_SYMBOL_GPL vmlinux 0x8bd85127 sdhci_pci_o2_resume +EXPORT_SYMBOL_GPL vmlinux 0x8bfba4e6 fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c06a108 xenbus_transaction_start +EXPORT_SYMBOL_GPL vmlinux 0x8c0b0d4a rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0x8c1b83ba crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x8c3c6e96 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0x8c8296c8 shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x8c9c4360 ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0x8cc480bc regmap_field_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x8cd9f935 setup_APIC_eilvt +EXPORT_SYMBOL_GPL vmlinux 0x8cea765f memalloc_socks +EXPORT_SYMBOL_GPL vmlinux 0x8cf165f2 ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d36c088 look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0x8d522714 __rcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0x8d748ab1 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0x8d7e1a92 smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x8d80ccf7 da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x8de00204 sec_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x8de285e7 simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x8de9eec4 blk_queue_bypass_start +EXPORT_SYMBOL_GPL vmlinux 0x8e20164c xenbus_dev_remove +EXPORT_SYMBOL_GPL vmlinux 0x8e918310 wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0x8e9c7933 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x8ec25efb regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x8edfb574 injectm +EXPORT_SYMBOL_GPL vmlinux 0x8ee08955 md_run +EXPORT_SYMBOL_GPL vmlinux 0x8f1b0019 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0x8f2a1c67 iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0x8f2e475a rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x8f4437e3 crypto_alloc_ablkcipher +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f8a365c ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x8f902a2c gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x8fce16f9 ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0x8fd134a5 inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x8fee8b5e sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x9003aa50 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0x9008f1bf regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x9009602a acpi_bus_get_ejd +EXPORT_SYMBOL_GPL vmlinux 0x900c3348 crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x90228869 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x905140d4 extcon_set_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x9062c322 ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x90705b7f syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x90791918 device_rename +EXPORT_SYMBOL_GPL vmlinux 0x907c401b sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x90a1004a crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x90a581f8 exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x90bf0a75 use_mm +EXPORT_SYMBOL_GPL vmlinux 0x90c66b90 irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x90dc29df aout_dump_debugregs +EXPORT_SYMBOL_GPL vmlinux 0x90de0452 platform_thermal_package_notify +EXPORT_SYMBOL_GPL vmlinux 0x90df4cc3 percpu_ida_alloc +EXPORT_SYMBOL_GPL vmlinux 0x91270614 pci_sriov_migration +EXPORT_SYMBOL_GPL vmlinux 0x91286982 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x912d4675 xen_swiotlb_unmap_sg_attrs +EXPORT_SYMBOL_GPL vmlinux 0x9137721e tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x9176eb51 pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x917abb73 blk_queue_flush_queueable +EXPORT_SYMBOL_GPL vmlinux 0x918ad429 ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x91ac78b2 watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x91c6e5b0 pcap_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x91dc3c3a kallsyms_on_each_symbol +EXPORT_SYMBOL_GPL vmlinux 0x920cc389 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x9238c02a ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0x923cfb30 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0x9245bade sdhci_pci_o2_probe_slot +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x925184e0 crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0x9275a93f stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0x9287f885 posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x92924630 ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0x92a42c7d efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0x92b150ab tps65912_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x92b24c13 ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92ed4fc1 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9312d80e evtchn_put +EXPORT_SYMBOL_GPL vmlinux 0x9324e78e acpi_dev_resource_memory +EXPORT_SYMBOL_GPL vmlinux 0x9331b8fa blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9332bd40 sysfs_schedule_callback +EXPORT_SYMBOL_GPL vmlinux 0x9382062c sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x939a1980 ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x93abb1c6 btree_init +EXPORT_SYMBOL_GPL vmlinux 0x93bd9fe8 pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x93c52abd tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x940c5f93 spi_master_suspend +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x942852ca handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0x943fc708 xen_setup_shutdown_event +EXPORT_SYMBOL_GPL vmlinux 0x9454c675 acpi_kobj +EXPORT_SYMBOL_GPL vmlinux 0x9485bde2 crypto_lookup_aead +EXPORT_SYMBOL_GPL vmlinux 0x94940330 wait_for_tpm_stat +EXPORT_SYMBOL_GPL vmlinux 0x949f7342 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x94a66b2f bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x94a68723 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x94c318be apei_exec_collect_resources +EXPORT_SYMBOL_GPL vmlinux 0x94d1cbee uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0x94ef1916 fuse_get_req +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x94f7a408 regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x951dffe5 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x953076a8 unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x95439036 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x9561f4c9 __clk_register +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x959765d5 irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0x95b04549 sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95f93443 usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0x9600266d platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0x960ca852 tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x9621849f ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x96354645 thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x9645ec7e crypto_rng_type +EXPORT_SYMBOL_GPL vmlinux 0x964add15 xenbus_scanf +EXPORT_SYMBOL_GPL vmlinux 0x964d5c39 acpi_os_map_memory +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x965e6c30 device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0x966574ba inet_hash +EXPORT_SYMBOL_GPL vmlinux 0x96a22790 vmcore_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x96a33b9a queue_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x96b00955 inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0x96d538c5 pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x96e71ae8 regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x96ed7780 ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0x96eeb739 devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x9730c462 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x9752c1ca simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0x976542f3 serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x9765a5a3 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x97c539a4 power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x97c73757 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x97cdfb17 regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97f8f311 fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0x9827faa4 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x983b642d sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0x98403f48 cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0x9848547f xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9851d49b wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0x9874c1d8 __percpu_ida_init +EXPORT_SYMBOL_GPL vmlinux 0x9875e0d7 ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x987fc1c9 cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x9882ae86 ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0x9886ebc1 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0x98991b1d ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0x98a9c991 regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0x98d058fe fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x98d95f2d ping_err +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x991ce562 posix_timers_register_clock +EXPORT_SYMBOL_GPL vmlinux 0x9924c496 __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x99379336 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x993e72f7 rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x99517136 crypto_aead_type +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x9973add9 __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x99812218 bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x99abba6e blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0x99e28f10 __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0x99fc5749 irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x9a066d26 extcon_get_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a22e251 handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0x9a84e664 get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x9a89dbf7 lpddr2_jedec_min_tck +EXPORT_SYMBOL_GPL vmlinux 0x9aa33857 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9ac4ba3d irq_find_host +EXPORT_SYMBOL_GPL vmlinux 0x9aca444b get_monotonic_boottime +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9aee46f4 pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x9b13ea94 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x9b2ae0a7 gpiochip_add +EXPORT_SYMBOL_GPL vmlinux 0x9b316acf regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x9b3732fb pinctrl_dev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x9b5b50fd blk_rq_check_limits +EXPORT_SYMBOL_GPL vmlinux 0x9b6a7412 idle_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x9b8d9503 hv_register_vmbus_handler +EXPORT_SYMBOL_GPL vmlinux 0x9b9f3648 pcibios_scan_specific_bus +EXPORT_SYMBOL_GPL vmlinux 0x9ba2bb2b gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x9bc6613b user_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x9bd0c592 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x9bd72b78 apei_write +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9c0c050f gnttab_unmap_refs +EXPORT_SYMBOL_GPL vmlinux 0x9c2de449 memory_add_physaddr_to_nid +EXPORT_SYMBOL_GPL vmlinux 0x9c2e4b66 acpi_unregister_gsi +EXPORT_SYMBOL_GPL vmlinux 0x9c3ca45d ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0x9c97d7d0 pci_restore_ats_state +EXPORT_SYMBOL_GPL vmlinux 0x9ca265d1 regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x9ca65b74 ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9d06688b register_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0x9d138533 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x9d2d4b4f bsg_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x9d3850e1 gnttab_alloc_grant_references +EXPORT_SYMBOL_GPL vmlinux 0x9d49e5ea skcipher_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0x9d944706 sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x9d9e155d pv_info +EXPORT_SYMBOL_GPL vmlinux 0x9ddac290 acpi_ec_remove_query_handler +EXPORT_SYMBOL_GPL vmlinux 0x9e0e194b rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x9e1882a2 __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x9e207d26 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x9e2f1f78 kobj_completion_init +EXPORT_SYMBOL_GPL vmlinux 0x9e810df4 tpm_gen_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x9e918449 ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x9ec1aab2 crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9ed3143c leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9ee56ce4 tcp_is_cwnd_limited +EXPORT_SYMBOL_GPL vmlinux 0x9f03638f tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0x9f0664bf dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0x9f081e0c pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x9f1b6245 task_current_syscall +EXPORT_SYMBOL_GPL vmlinux 0x9f223c17 pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0x9f2f426f cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x9f56639a efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x9f62f709 tpm_dev_vendor_release +EXPORT_SYMBOL_GPL vmlinux 0x9f6338cf tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0x9f7208bf regmap_fields_write +EXPORT_SYMBOL_GPL vmlinux 0x9fbcc77b fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0x9fc70253 raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x9fccabfb vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fd374e9 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0x9fd72522 debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9ff323e2 ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0xa038e761 percpu_ida_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa046a14a ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0xa0634417 pci_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0xa06ec67a rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0xa099ee66 ping_close +EXPORT_SYMBOL_GPL vmlinux 0xa0a378ff sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0xa0c1e5b9 usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL vmlinux 0xa0d5b41f devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa0f05e48 pin_is_valid +EXPORT_SYMBOL_GPL vmlinux 0xa0faad5d pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0xa0fab9c1 rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0xa1100c67 vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0xa11216be xen_store_domain_type +EXPORT_SYMBOL_GPL vmlinux 0xa12d929d desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xa144f0c2 blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0xa156a1f2 erst_get_record_id_end +EXPORT_SYMBOL_GPL vmlinux 0xa17751ad devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa18c635f tpm_store_cancel +EXPORT_SYMBOL_GPL vmlinux 0xa1b2d30b pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0xa1ca99c3 xen_swiotlb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0xa1d95d95 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0xa1e95461 regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xa1f0794f tpm_show_owned +EXPORT_SYMBOL_GPL vmlinux 0xa1f79553 xen_create_contiguous_region +EXPORT_SYMBOL_GPL vmlinux 0xa23c4297 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0xa25c9aac sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0xa2638f21 regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa26e78a0 iommu_domain_has_cap +EXPORT_SYMBOL_GPL vmlinux 0xa2883bc5 inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0xa2903844 tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0xa2b9c993 clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0xa2c6a76f rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0xa2e75fca ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0xa2fbe4f4 ref_module +EXPORT_SYMBOL_GPL vmlinux 0xa2ff6bae ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xa30ac256 acpi_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0xa315b074 sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xa34df22c regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xa3509d22 pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xa353fffc xenbus_rm +EXPORT_SYMBOL_GPL vmlinux 0xa35612b3 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0xa35feb5e crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0xa3779a77 usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa39b83d5 tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3ad0763 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3c48135 fuse_request_send +EXPORT_SYMBOL_GPL vmlinux 0xa3e7c113 ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0xa41ca7cb devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xa43100c1 __remove_pages +EXPORT_SYMBOL_GPL vmlinux 0xa44b9636 smp_ops +EXPORT_SYMBOL_GPL vmlinux 0xa452ac90 ata_sas_port_async_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa452c297 hpet_mask_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa452f2a4 xen_pirq_from_irq +EXPORT_SYMBOL_GPL vmlinux 0xa45bcdc4 devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xa466de38 acpi_processor_ffh_cstate_enter +EXPORT_SYMBOL_GPL vmlinux 0xa46a235a xenbus_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa48eed1e ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0xa48f42ae rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0xa49acd8a devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa4a130c8 wm8350_device_exit +EXPORT_SYMBOL_GPL vmlinux 0xa4c470e5 xen_swiotlb_set_dma_mask +EXPORT_SYMBOL_GPL vmlinux 0xa4d58669 math_state_restore +EXPORT_SYMBOL_GPL vmlinux 0xa4d5fd3d adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0xa4eb196d adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0xa4f7f357 init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0xa4fc9adf pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0xa51edeb8 device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0xa5265cdb ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0xa53429e9 nl_table +EXPORT_SYMBOL_GPL vmlinux 0xa535ebcb __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0xa5525e4b tpm_read +EXPORT_SYMBOL_GPL vmlinux 0xa56ca855 tracepoint_iter_stop +EXPORT_SYMBOL_GPL vmlinux 0xa588fb05 serial8250_tx_dma +EXPORT_SYMBOL_GPL vmlinux 0xa5e5ecb4 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0xa5ece39d regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa617dd7b __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0xa61d3749 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0xa61de15c kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xa621c157 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0xa625110d kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0xa62892c6 efivar_sysfs_list +EXPORT_SYMBOL_GPL vmlinux 0xa62fa091 rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0xa6456fdb ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0xa66438e8 erst_read +EXPORT_SYMBOL_GPL vmlinux 0xa680a642 sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0xa69e140d ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0xa6a0a273 max77693_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6c400cc regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0xa6e10638 led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa6e84db9 tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0xa6e90bb0 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0xa6eb0b34 tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0xa6fefcd3 acpi_subsys_resume_early +EXPORT_SYMBOL_GPL vmlinux 0xa71441c5 devres_remove +EXPORT_SYMBOL_GPL vmlinux 0xa71e1c6d ata_do_eh +EXPORT_SYMBOL_GPL vmlinux 0xa723148d key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xa724257f init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0xa7265cab inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xa74394f8 usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0xa75312bc call_rcu_sched +EXPORT_SYMBOL_GPL vmlinux 0xa75811d0 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xa765bc8c cgroup_unload_subsys +EXPORT_SYMBOL_GPL vmlinux 0xa7693846 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xa76c9cc1 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0xa78f609c xen_swiotlb_map_sg_attrs +EXPORT_SYMBOL_GPL vmlinux 0xa7909aa0 efivars_register +EXPORT_SYMBOL_GPL vmlinux 0xa7aed85c crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0xa7f92105 add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0xa801b359 efivar_entry_iter_begin +EXPORT_SYMBOL_GPL vmlinux 0xa83ff035 sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa899e41f rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xa8ca109e extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xa8cd2e86 extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xa8f786c3 xenbus_dev_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xa90e29f1 vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0xa9126bff hpet_set_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa923b272 pwm_enable +EXPORT_SYMBOL_GPL vmlinux 0xa925e478 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0xa92df4ad watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0xa937ec8b __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xa980af16 RSA_public_key_algorithm +EXPORT_SYMBOL_GPL vmlinux 0xa99e9b6f da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xa9a82042 gnttab_trans_grants_available +EXPORT_SYMBOL_GPL vmlinux 0xa9c373ef debugfs_remove_recursive +EXPORT_SYMBOL_GPL vmlinux 0xa9db9674 crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9fc3f54 gnttab_grant_foreign_access_trans +EXPORT_SYMBOL_GPL vmlinux 0xaa09fd1c __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0xaa1e362d iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0xaa26c88a klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xaa30641d virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0xaa4219eb pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0xaa5433cf blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0xaa6b9e39 usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0xaaa66424 gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaab26a55 cgroup_taskset_first +EXPORT_SYMBOL_GPL vmlinux 0xaad29749 usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0xaad738bb unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0xab01acbe gnttab_request_free_callback +EXPORT_SYMBOL_GPL vmlinux 0xab6a3a82 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xab6babaf pm_qos_request +EXPORT_SYMBOL_GPL vmlinux 0xab8ebd15 sec_reg_update +EXPORT_SYMBOL_GPL vmlinux 0xabec2263 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0xac063469 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0xac10df15 __module_address +EXPORT_SYMBOL_GPL vmlinux 0xac2c4279 unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xac6645ac usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0xac9ce195 kvm_async_pf_task_wait +EXPORT_SYMBOL_GPL vmlinux 0xaca373ff uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0xacaebe00 kobj_completion_del_and_wait +EXPORT_SYMBOL_GPL vmlinux 0xacafa8e7 vector_used_by_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xacdf0307 iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0xace5c0fc usb_bus_list +EXPORT_SYMBOL_GPL vmlinux 0xacf7e9c8 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0xad039c54 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xad221a0f list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0xad25f9f5 fuse_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0xad273104 sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xad376749 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0xad41e50f regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0xad8d8ab0 xen_physdev_op_compat +EXPORT_SYMBOL_GPL vmlinux 0xad939daf inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0xadbd0b8a blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0xadc785ec kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0xadf6aa4d tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xae15c595 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0xae3fb6d4 crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae6eaf93 hwpoison_filter_dev_minor +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae7c5411 ms_hyperv +EXPORT_SYMBOL_GPL vmlinux 0xaec7a376 usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xaef64d09 wm8400_block_read +EXPORT_SYMBOL_GPL vmlinux 0xaefa43cc ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0xaf06ba47 ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0xaf1101d7 __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0xaf2b95d7 gov_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xaf35249b key_type_user +EXPORT_SYMBOL_GPL vmlinux 0xaf397ab9 usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0xaf465cf8 security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0xaf4ab5af __ablkcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0xaf4facc2 devres_find +EXPORT_SYMBOL_GPL vmlinux 0xb023a593 pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0xb0249a5a acpi_subsys_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xb02ac411 register_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb073db26 usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0c6771c dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0xb0c96774 regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xb0d1656c gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0xb10d55bc cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0xb12d8b3e tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0xb140d14c ring_buffer_read +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb150a7ea kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0xb172ffac efivars_sysfs_init +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb19164f3 crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0xb191d25a arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xb191d405 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0xb1a7e3f6 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0xb1acbcce rcu_barrier_sched +EXPORT_SYMBOL_GPL vmlinux 0xb1b2c43c __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb1b30ad2 led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1bedeb7 register_jprobe +EXPORT_SYMBOL_GPL vmlinux 0xb1c0c1c2 async_schedule_domain +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1fbbe97 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0xb2182e82 rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb2470b0d split_page +EXPORT_SYMBOL_GPL vmlinux 0xb24c7239 cpufreq_notify_transition +EXPORT_SYMBOL_GPL vmlinux 0xb25b0e8c crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0xb2711b8f sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0xb2df9274 sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb3253ed9 hpet_rtc_timer_init +EXPORT_SYMBOL_GPL vmlinux 0xb347bb2c work_busy +EXPORT_SYMBOL_GPL vmlinux 0xb35aac69 posix_timer_event +EXPORT_SYMBOL_GPL vmlinux 0xb3638041 inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xb383c4e3 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xb3b799bc tcp_init_congestion_ops +EXPORT_SYMBOL_GPL vmlinux 0xb3d2f6d2 hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0xb3d5888b rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0xb3d7fc78 blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb3db8ffb sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xb3e4eef6 apei_get_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0xb40275be wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb40d2ea5 pci_pri_stopped +EXPORT_SYMBOL_GPL vmlinux 0xb413cd0b usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0xb42e9897 usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xb42e9af1 usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0xb439ab6f pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xb4528028 xenbus_bind_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xb4578d6f hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xb4667e6a aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb4759adc stop_machine +EXPORT_SYMBOL_GPL vmlinux 0xb488768f rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0xb4b3fc65 tps65912_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4ccd7fa pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0xb4e14553 gnttab_query_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb522ce99 usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0xb53620d1 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0xb55decbe xen_swiotlb_sync_sg_for_device +EXPORT_SYMBOL_GPL vmlinux 0xb57a7c86 driver_register +EXPORT_SYMBOL_GPL vmlinux 0xb58dcfa2 synchronize_sched_expedited +EXPORT_SYMBOL_GPL vmlinux 0xb59ddf6d d_materialise_unique +EXPORT_SYMBOL_GPL vmlinux 0xb5a0e11e lpddr2_jedec_addressing_table +EXPORT_SYMBOL_GPL vmlinux 0xb5cb8145 hrtimer_get_res +EXPORT_SYMBOL_GPL vmlinux 0xb5f17edf perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb602da0e __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xb6073cfc get_device +EXPORT_SYMBOL_GPL vmlinux 0xb6230f1f gnttab_grant_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb6270a91 rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0xb62e5609 devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0xb6314434 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0xb6317062 perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0xb64c52a3 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0xb66421b2 acpi_str_to_uuid +EXPORT_SYMBOL_GPL vmlinux 0xb6709422 xenbus_map_ring +EXPORT_SYMBOL_GPL vmlinux 0xb67b2219 cm_suspend_again +EXPORT_SYMBOL_GPL vmlinux 0xb6aeb661 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xb6bfc5c2 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0xb6c635af wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb6cb456a pinctrl_pm_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0xb6d4fb90 shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xb6d8cfc2 crypto_attr_alg2 +EXPORT_SYMBOL_GPL vmlinux 0xb6eb35c7 seq_release_net +EXPORT_SYMBOL_GPL vmlinux 0xb709e339 efivar_validate +EXPORT_SYMBOL_GPL vmlinux 0xb718f2f9 sfi_table_parse +EXPORT_SYMBOL_GPL vmlinux 0xb719bdce __online_page_free +EXPORT_SYMBOL_GPL vmlinux 0xb724c9ed rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xb73e6fdb wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0xb758d5a5 usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0xb75c53f3 flush_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0xb75ddc77 pinctrl_dev_get_name +EXPORT_SYMBOL_GPL vmlinux 0xb77ed1b5 __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0xb78be7c2 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xb7a951a2 device_create_file +EXPORT_SYMBOL_GPL vmlinux 0xb7d7c12e hpet_set_alarm_time +EXPORT_SYMBOL_GPL vmlinux 0xb7ebc0d2 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xb7f77027 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0xb814f448 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0xb86e61ae usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xb88d81f0 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xb8b2b1f7 mce_register_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0xb8d84aa8 regulator_set_optimum_mode +EXPORT_SYMBOL_GPL vmlinux 0xb8ebe25f fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0xb903674c scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0xb909ba58 tpm_remove_hardware +EXPORT_SYMBOL_GPL vmlinux 0xb918ac2c acpi_dev_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0xb9206d67 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0xb93bd0d1 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0xb94c0234 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0xb98ee538 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0xb99d5837 xenbus_read +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9bc7286 dma_buf_kunmap +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9d7da8c pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xb9f17ea2 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0xba04d84c raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0xba07ce53 usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0xba34aaf8 generic_access_phys +EXPORT_SYMBOL_GPL vmlinux 0xba3b5d39 device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xba4699a9 need_load_eval +EXPORT_SYMBOL_GPL vmlinux 0xba526400 iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0xba709cab dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xba810295 platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0xba8ae73d scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0xba913288 usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xba92f9ff regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0xbae6726c scsi_internal_device_unblock +EXPORT_SYMBOL_GPL vmlinux 0xbaf0fd24 vtime_guest_enter +EXPORT_SYMBOL_GPL vmlinux 0xbb02a3ed __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xbb038ce4 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb128381 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0xbb321c2c xen_xenbus_fops +EXPORT_SYMBOL_GPL vmlinux 0xbb818aa4 print_context_stack +EXPORT_SYMBOL_GPL vmlinux 0xbbaee69c class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xbbaf3d59 ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0xbbb38239 btree_last +EXPORT_SYMBOL_GPL vmlinux 0xbbb98859 edid_info +EXPORT_SYMBOL_GPL vmlinux 0xbbcab80d cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xbbd456ee regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0xbbd4f657 xen_pcpu_id +EXPORT_SYMBOL_GPL vmlinux 0xbbf07f3c tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0xbc03af76 debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0xbc18bfac mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0xbc3da600 rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xbc427ffc virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0xbc47fd49 __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0xbc51469d thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0xbc7e1f73 debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0xbcac6160 pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbcb838a1 amd_flush_garts +EXPORT_SYMBOL_GPL vmlinux 0xbcba3f8e sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbce61304 pwm_can_sleep +EXPORT_SYMBOL_GPL vmlinux 0xbce89f79 dm_set_device_limits +EXPORT_SYMBOL_GPL vmlinux 0xbcf6b7d9 rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xbd0f1792 pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0xbd22e2a1 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0xbd340cc9 sysfs_get_dirent_ns +EXPORT_SYMBOL_GPL vmlinux 0xbd506a46 unregister_hotplug_dock_device +EXPORT_SYMBOL_GPL vmlinux 0xbd5cb8b9 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0xbd9bbeeb pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0xbda375c2 blkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xbdaf5686 get_compat_timeval +EXPORT_SYMBOL_GPL vmlinux 0xbdb1005e shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xbdb14a59 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0xbdd295f0 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xbdd2f42a rcu_bh_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0xbdd426ec dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xbdd5f10f apei_hest_parse +EXPORT_SYMBOL_GPL vmlinux 0xbddb0f95 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0xbdee4c9e usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0xbe1887e4 ata_unpack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xbe317df1 init_fpu +EXPORT_SYMBOL_GPL vmlinux 0xbe3dbd4b crypto_givcipher_type +EXPORT_SYMBOL_GPL vmlinux 0xbe42b07c regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0xbe575ec3 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0xbe5d0996 idle_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbe7e7783 bus_register +EXPORT_SYMBOL_GPL vmlinux 0xbe7f0616 dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0xbe93e76e inet_csk_compat_getsockopt +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbea6b347 blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0xbeab1857 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0xbeb8eecd __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xbec9795b ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0xbed20d9a __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0xbef841a2 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf12faba virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0xbf285d97 sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0xbf2dec04 rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xbf3562f2 fuse_get_req_for_background +EXPORT_SYMBOL_GPL vmlinux 0xbf5fca0c __inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0xbf82e6af synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0xbf8661dc regmap_read +EXPORT_SYMBOL_GPL vmlinux 0xbf8dd50b ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xbf9c3013 ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL vmlinux 0xbfc42e32 wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xbfd820eb regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xbfdf5a07 virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0xbfe0d7f3 usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0xc01a43af device_store_int +EXPORT_SYMBOL_GPL vmlinux 0xc01b41af irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xc0231c71 find_module +EXPORT_SYMBOL_GPL vmlinux 0xc08647ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc08c4a99 input_class +EXPORT_SYMBOL_GPL vmlinux 0xc0900fcf acpi_os_get_iomem +EXPORT_SYMBOL_GPL vmlinux 0xc0980869 pwm_disable +EXPORT_SYMBOL_GPL vmlinux 0xc0a42e38 inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0xc0b0e6ec btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0xc0bf6ead timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xc0d01bc0 percpu_ref_cancel_init +EXPORT_SYMBOL_GPL vmlinux 0xc0d26387 kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc113e4bf pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc11b45c6 gpiod_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xc11bd00f tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc14c2824 xenbus_probe +EXPORT_SYMBOL_GPL vmlinux 0xc164642e xenbus_otherend_changed +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc17ad012 __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xc1b62d76 crypto_init_shash_spawn +EXPORT_SYMBOL_GPL vmlinux 0xc1b78a7c serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0xc1dc0d5d acpi_find_child +EXPORT_SYMBOL_GPL vmlinux 0xc1e09f77 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0xc1f81642 devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0xc2068167 register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xc21dc20a hwpoison_filter +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc2354aed crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0xc241866d ata_base_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xc26351f8 bind_evtchn_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc29c4058 crypto_register_pcomp +EXPORT_SYMBOL_GPL vmlinux 0xc2e41361 stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0xc2f21d32 shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0xc31b2541 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xc3298170 irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc34efe27 snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0xc3576686 inet6_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0xc37226a5 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xc37763fc dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xc386d80a platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0xc38b2722 nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0xc39849a2 tpm_show_caps +EXPORT_SYMBOL_GPL vmlinux 0xc3b398a1 led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0xc3e22474 pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0xc3eb25a5 disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc447dd93 enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xc45974df fat_attach +EXPORT_SYMBOL_GPL vmlinux 0xc45c7834 usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0xc486ac21 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc495a4e7 pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0xc4975851 percpu_ida_free_tags +EXPORT_SYMBOL_GPL vmlinux 0xc49812e6 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xc4d91963 ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xc4ecc7e8 raw_seq_open +EXPORT_SYMBOL_GPL vmlinux 0xc500215d pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0xc512626a __supported_pte_mask +EXPORT_SYMBOL_GPL vmlinux 0xc5397da6 xenbus_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xc53afeb0 dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xc568741d shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc59ee319 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0xc5bf13c1 inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xc5db0d29 fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0xc5e81b75 pinctrl_dev_get_devname +EXPORT_SYMBOL_GPL vmlinux 0xc6002fa0 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xc60f75ec __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xc60f8216 __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc639cdfb acpi_register_gsi +EXPORT_SYMBOL_GPL vmlinux 0xc63a1109 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc65d3eed ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc6614c76 xen_unregister_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0xc667061f pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0xc6691631 udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc67dcba4 bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xc690866c irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc6a34e77 crypto_larval_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc6caaef7 platform_bus +EXPORT_SYMBOL_GPL vmlinux 0xc6d7ad42 wakeup_source_drop +EXPORT_SYMBOL_GPL vmlinux 0xc6e25e99 tracepoint_iter_start +EXPORT_SYMBOL_GPL vmlinux 0xc6e652b4 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0xc7002ac4 evtchn_make_refcounted +EXPORT_SYMBOL_GPL vmlinux 0xc71aead9 rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0xc72e1233 __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xc7325797 sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0xc742bebf pci_enable_pri +EXPORT_SYMBOL_GPL vmlinux 0xc76e90fc ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0xc77f7432 pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7c397cf driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0xc7c6391c mpi_set_buffer +EXPORT_SYMBOL_GPL vmlinux 0xc7cc6e8f tpm_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0xc7e12e50 usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0xc7e39bca ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc8208edd acpi_dev_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xc8480287 efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0xc856ad09 pci_renumber_slot +EXPORT_SYMBOL_GPL vmlinux 0xc85ad4a5 __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xc86306ef max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xc87c1f84 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xc87e487a sched_clock_idle_sleep_event +EXPORT_SYMBOL_GPL vmlinux 0xc8850525 __blk_put_request +EXPORT_SYMBOL_GPL vmlinux 0xc898488c blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xc899c0f2 wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0xc8add232 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0xc8b2469b class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc9078861 ahash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc927a6de __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0xc934b33a xenbus_free_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc9641b48 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0xc966aa9c transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0xc97d1140 cpufreq_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0xc98aaf83 inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0xc98f47e1 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc9c3f176 hpet_register_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xca67266a watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca81ea9a xenbus_transaction_end +EXPORT_SYMBOL_GPL vmlinux 0xca85d8cf tracepoint_probe_update_all +EXPORT_SYMBOL_GPL vmlinux 0xcaa0f78d xenbus_dev_changed +EXPORT_SYMBOL_GPL vmlinux 0xcab6db90 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcaccdfc8 usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0xcad23ba5 pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0xcae8972a lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0xcaf3545d __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0xcb09de12 bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0xcb0c3e39 spi_setup +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb31eb4f __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xcb469d2b ddebug_add_module +EXPORT_SYMBOL_GPL vmlinux 0xcb6377c8 blk_queue_bypass_end +EXPORT_SYMBOL_GPL vmlinux 0xcb68fd15 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0xcb76b645 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0xcb7a9032 fuse_request_send_background +EXPORT_SYMBOL_GPL vmlinux 0xcb96b981 cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0xcb9b162e clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0xcb9fa1a6 wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0xcbbc8fe2 regmap_update_bits_check +EXPORT_SYMBOL_GPL vmlinux 0xcbd53c06 mmc_send_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0xcbee20b2 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0xcbf2dff9 regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xcc1f1c3d inet_twdr_hangman +EXPORT_SYMBOL_GPL vmlinux 0xcc2eda83 get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0xcc2fd54a devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xcc3b2ed5 user_read +EXPORT_SYMBOL_GPL vmlinux 0xcc46dc8d wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0xcc6ab305 is_dock_device +EXPORT_SYMBOL_GPL vmlinux 0xcc85fcb6 async_schedule +EXPORT_SYMBOL_GPL vmlinux 0xcc860ede ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0xcc95a151 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcca5971e verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccea4e34 perf_get_x86_pmu_capability +EXPORT_SYMBOL_GPL vmlinux 0xcd13e954 regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xcd149358 relay_open +EXPORT_SYMBOL_GPL vmlinux 0xcd25fcf9 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xcd6c695d single_open_net +EXPORT_SYMBOL_GPL vmlinux 0xcd7bb4bd devres_get +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcda3f643 blkdev_aio_write +EXPORT_SYMBOL_GPL vmlinux 0xcdb111c5 ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcdcc8b14 devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xcde40b00 ping_proc_unregister +EXPORT_SYMBOL_GPL vmlinux 0xce0b9b59 max77693_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xce151e6a ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0xce46e140 ktime_get_ts +EXPORT_SYMBOL_GPL vmlinux 0xce4db7bf rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xce6a9d9a trace_current_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0xce6d8b82 __mmu_notifier_invalidate_range_end +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce6e58d9 regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0xce97d129 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0xce9b9407 power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0xceaf4496 ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xceb1f126 mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0xcebe2a03 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xcec48f42 wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcecdb323 sysfs_notify_dirent +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcef1dd0e perf_check_microcode +EXPORT_SYMBOL_GPL vmlinux 0xcef1f1f7 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xcf49fa60 class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf8a3db0 crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xcfa39eca __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0xcfbdf093 usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0xcfc62f27 xen_start_info +EXPORT_SYMBOL_GPL vmlinux 0xcfc68341 synchronize_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0xcfc900f3 xenbus_dev_error +EXPORT_SYMBOL_GPL vmlinux 0xcfde5862 __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xcfea6e81 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL vmlinux 0xd00ab8b6 cgroup_is_descendant +EXPORT_SYMBOL_GPL vmlinux 0xd01f5c37 blk_unprep_request +EXPORT_SYMBOL_GPL vmlinux 0xd03c7700 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0xd0458ccb xenbus_strstate +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd0695e4e flush_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0xd06ab922 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0xd090d920 regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0xd09bc7d4 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd1165de0 spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0xd14bc4d9 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xd14e0563 raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0xd1507e59 erst_clear +EXPORT_SYMBOL_GPL vmlinux 0xd16712f3 crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xd1795cba sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0xd185e316 ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0xd1895996 cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xd18da6e4 mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xd1958cc9 pinctrl_utils_add_config +EXPORT_SYMBOL_GPL vmlinux 0xd1b2db37 tracepoint_probe_register_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xd1eb955d regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0xd1f17e52 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd2231de9 md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0xd2455271 unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0xd258217d clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd2afe2b2 __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xd2c58ab2 apei_exec_noop +EXPORT_SYMBOL_GPL vmlinux 0xd32fe193 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xd336f71f setup_irq +EXPORT_SYMBOL_GPL vmlinux 0xd3479263 wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xd34d74dd arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0xd35942bb __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0xd3805423 ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0xd3815740 ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0xd38407fd hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0xd38d872c ata_eh_thaw_port +EXPORT_SYMBOL_GPL vmlinux 0xd3a2be3a pci_intx_mask_supported +EXPORT_SYMBOL_GPL vmlinux 0xd3b86b07 reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xd3cd17b9 ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0xd3d6d0fb ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0xd3e0a9b7 devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xd3f31231 pci_hp_change_slot_info +EXPORT_SYMBOL_GPL vmlinux 0xd3f569e0 of_reset_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xd400ac76 napi_hash_add +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd426dbc4 erst_get_record_count +EXPORT_SYMBOL_GPL vmlinux 0xd442972e ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd45f8219 dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0xd46314f3 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0xd465f4d5 __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0xd4702ecc vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0xd47b9634 sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xd4908846 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0xd4a94b77 x86_hyper_kvm +EXPORT_SYMBOL_GPL vmlinux 0xd4b7280d ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4c74d79 xenbus_dev_is_online +EXPORT_SYMBOL_GPL vmlinux 0xd4cad45e clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xd4d7370c hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0xd4da120b __put_net +EXPORT_SYMBOL_GPL vmlinux 0xd4f4be2d acpi_dev_pm_attach +EXPORT_SYMBOL_GPL vmlinux 0xd4f98542 kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0xd5344ac0 __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xd545ab91 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0xd5486690 acpiphp_unregister_attention +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd5674d82 cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd5953237 gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0xd5a3f9cc show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0xd5bd7dac ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0xd5c36c40 __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0xd5d996d8 usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0xd5f43ac4 regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xd5ff90f0 _submit_bh +EXPORT_SYMBOL_GPL vmlinux 0xd6011bf5 srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0xd63e485e fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0xd65031b5 usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0xd6694dc2 tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0xd6696818 dm_underlying_device_busy +EXPORT_SYMBOL_GPL vmlinux 0xd66975cc serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0xd66a8f98 pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd676dd41 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xd6934469 fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0xd6aca97d wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0xd6be0d91 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xd6e438d5 netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0xd6e6e088 user_describe +EXPORT_SYMBOL_GPL vmlinux 0xd6ed3a8e cper_next_record_id +EXPORT_SYMBOL_GPL vmlinux 0xd6feefa5 agp_num_entries +EXPORT_SYMBOL_GPL vmlinux 0xd705b4c7 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0xd70770d9 xen_swiotlb_dma_mapping_error +EXPORT_SYMBOL_GPL vmlinux 0xd70ce15a i2c_lock_adapter +EXPORT_SYMBOL_GPL vmlinux 0xd72feba2 xenbus_read_driver_state +EXPORT_SYMBOL_GPL vmlinux 0xd7399d2a efivar_entry_iter_end +EXPORT_SYMBOL_GPL vmlinux 0xd747d094 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0xd75a53e5 scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd77c0bc8 klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xd77c48c1 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0xd78a41d0 irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0xd7a938cd wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0xd7b76f71 ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0xd7b7e0ec filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0xd7bd463f __class_create +EXPORT_SYMBOL_GPL vmlinux 0xd7be3f05 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0xd7d32122 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xd7d79132 put_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0xd80e9dee nf_queue_entry_release_refs +EXPORT_SYMBOL_GPL vmlinux 0xd81de62c ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xd820c283 eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xd8522c4c __class_register +EXPORT_SYMBOL_GPL vmlinux 0xd8525ea7 fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0xd87601cc ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd8901608 xenbus_watch_pathfmt +EXPORT_SYMBOL_GPL vmlinux 0xd89fb49d tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0xd8a837e9 skb_gro_receive +EXPORT_SYMBOL_GPL vmlinux 0xd9015874 max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xd90709f8 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0xd919806a amd_cache_northbridges +EXPORT_SYMBOL_GPL vmlinux 0xd91dcec5 register_hotplug_dock_device +EXPORT_SYMBOL_GPL vmlinux 0xd942d353 ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0xd947734f reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd9626914 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0xd96a2de6 __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xd9747eaf pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xd97911b4 wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0xd9899422 pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0xd9a16fbe debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xd9a34035 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0xd9c51aa5 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0xd9e989a2 iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0xd9ecb670 ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xd9f76d1e crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0xd9ffe0d3 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0xda04c857 ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0xda0dfbcc xenbus_unmap_ring_vfree +EXPORT_SYMBOL_GPL vmlinux 0xda1814a2 xenbus_grant_ring +EXPORT_SYMBOL_GPL vmlinux 0xda1a31ec rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xda2b98a5 iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xda35c8f9 ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0xda44cb37 setup_charger_manager +EXPORT_SYMBOL_GPL vmlinux 0xda50b587 usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0xda5188cc gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xda683264 __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0xda6dd73d xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0xda6e0205 usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0xda7e338f module_mutex +EXPORT_SYMBOL_GPL vmlinux 0xda8ce6bd usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xda96618b shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xdaa6045a ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xdab50ae7 fpu_finit +EXPORT_SYMBOL_GPL vmlinux 0xdabdc4fd gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdb04cacc tracepoint_probe_unregister_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xdb0fdd2c iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0xdb10a8eb tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0xdb14f1f8 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0xdb1fbbef lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xdb2f41d0 usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0xdb411a17 register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0xdb5d34e0 rcu_batches_completed_preempt +EXPORT_SYMBOL_GPL vmlinux 0xdb6a170a tpm_show_pubek +EXPORT_SYMBOL_GPL vmlinux 0xdb6f2a4c sock_update_netprioidx +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdbb4d40a register_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0xdbccdc23 thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0xdbe13dee irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc14a211 xen_hvm_evtchn_do_upcall +EXPORT_SYMBOL_GPL vmlinux 0xdc1e15f1 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xdc2b2322 led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc40a763 xenbus_register_driver_common +EXPORT_SYMBOL_GPL vmlinux 0xdc585b90 ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0xdc6699cb acpi_dev_free_resource_list +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdce00043 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0xdce1e665 device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0xdce542c5 alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0xdce78268 ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xdd2efc0f ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd6618ba btree_remove +EXPORT_SYMBOL_GPL vmlinux 0xdd794d33 phys_wc_to_mtrr_index +EXPORT_SYMBOL_GPL vmlinux 0xdd7bf9e4 skcipher_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0xdd7c0fda srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xdd86d5b5 tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0xdd96f283 dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xdd9de65c pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0xddd53be2 dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0xddd58dc0 ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0xde0091da arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0xde01fcc0 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0xde447108 xen_unmap_domain_mfn_range +EXPORT_SYMBOL_GPL vmlinux 0xde4e19ba klist_next +EXPORT_SYMBOL_GPL vmlinux 0xde942624 device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0xded9e875 pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0xdede3cea crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0xdeecbc86 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf167b0f get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0xdf1882af dbgp_reset_prep +EXPORT_SYMBOL_GPL vmlinux 0xdf221e72 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0xdf23f9b4 ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0xdf2afd0f ata_acpi_gtm +EXPORT_SYMBOL_GPL vmlinux 0xdf45a24b rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdf5067f0 i2c_new_probed_device +EXPORT_SYMBOL_GPL vmlinux 0xdf53eaa6 debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0xdf5bec31 dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0xdf66ca81 ucode_cpu_info +EXPORT_SYMBOL_GPL vmlinux 0xdf7b78ba ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xdf837b2c fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0xdfa1ce8c usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xdfd2c9fa security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xdfda035e key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0xdfdf9c10 __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0xe007de41 kallsyms_lookup_name +EXPORT_SYMBOL_GPL vmlinux 0xe02e5dba single_release_net +EXPORT_SYMBOL_GPL vmlinux 0xe02eb6d0 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0xe03ebf6d iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0xe07c7b91 blkio_subsys +EXPORT_SYMBOL_GPL vmlinux 0xe07ea362 security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0xe089cfcc agp_memory_reserved +EXPORT_SYMBOL_GPL vmlinux 0xe0c77bb5 mce_notify_irq +EXPORT_SYMBOL_GPL vmlinux 0xe0d08358 crypto_lookup_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xe0d5f921 bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe1082749 ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0xe10cd6ad erst_get_record_id_begin +EXPORT_SYMBOL_GPL vmlinux 0xe11c4ccc __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0xe1206aff tcp_peer_is_proven +EXPORT_SYMBOL_GPL vmlinux 0xe16b0d30 unregister_jprobe +EXPORT_SYMBOL_GPL vmlinux 0xe16c758d acpi_unbind_one +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe194b3c6 pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1c32794 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xe1f54520 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0xe208a944 transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0xe2145d5a netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0xe2262261 acpi_match_device +EXPORT_SYMBOL_GPL vmlinux 0xe234e507 pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0xe24cf648 pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0xe257ff43 xenbus_watch_path +EXPORT_SYMBOL_GPL vmlinux 0xe266b4b8 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xe26e46f0 acpi_dev_resource_ext_address_space +EXPORT_SYMBOL_GPL vmlinux 0xe270aab5 cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0xe2872d43 sis_info133_for_sata +EXPORT_SYMBOL_GPL vmlinux 0xe290f8bd pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0xe295c0ff is_hpet_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe2b544af device_attach +EXPORT_SYMBOL_GPL vmlinux 0xe2de89a4 sdhci_pci_o2_fujin2_pci_init +EXPORT_SYMBOL_GPL vmlinux 0xe2e4de07 relay_flush +EXPORT_SYMBOL_GPL vmlinux 0xe2e7840d regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xe2ff7cc3 ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe309da28 spi_async +EXPORT_SYMBOL_GPL vmlinux 0xe30e91cb regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xe3234aca pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xe3488334 rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0xe36dfa32 ata_scsi_simulate +EXPORT_SYMBOL_GPL vmlinux 0xe376958e __mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0xe384a102 usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0xe3bc7fd4 hpet_unregister_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xe3c5db6d tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0xe3ca0c52 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xe3ed2543 crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0xe3fcf998 __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xe40b4268 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0xe41534ce bind_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0xe41c05e2 skcipher_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0xe42c3b90 device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe462bb6e ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0xe47d9672 cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0xe4c2c942 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0xe4c4b28f gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xe4e68bc8 apei_map_generic_address +EXPORT_SYMBOL_GPL vmlinux 0xe4edbfab platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0xe52ae762 __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xe541ee93 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0xe5489854 acpi_processor_get_performance_info +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58fb452 aer_irq +EXPORT_SYMBOL_GPL vmlinux 0xe597f419 extcon_get_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0xe59fcdbb blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0xe5c2ef8c mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0xe60c2b2e swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0xe630edbc debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0xe63b320f usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xe64ad8ea unregister_nmi_handler +EXPORT_SYMBOL_GPL vmlinux 0xe64c0fec vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0xe651f76e selinux_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe6602e9f perf_trace_buf_prepare +EXPORT_SYMBOL_GPL vmlinux 0xe66b21fe crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0xe6b88ca6 tpm_show_pcrs +EXPORT_SYMBOL_GPL vmlinux 0xe6baecd4 wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0xe6c68334 ddebug_remove_module +EXPORT_SYMBOL_GPL vmlinux 0xe6c8b53f usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0xe6caae30 ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe6ce5e9c dbs_check_cpu +EXPORT_SYMBOL_GPL vmlinux 0xe6e1c5fe uuid_be_gen +EXPORT_SYMBOL_GPL vmlinux 0xe6e60691 usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0xe6e64ae9 xen_remap_domain_mfn_range +EXPORT_SYMBOL_GPL vmlinux 0xe711cae6 scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xe71ea7c1 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0xe7232e0f user_return_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe73c1e7d platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0xe741d815 __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xe75d6006 power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0xe764d86b debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe769e0ff blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0xe78322d9 __pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0xe7af4d0a devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0xe7c9ad02 cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0xe7c9fbeb arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0xe7d5e1ca tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0xe7f3608a hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe8107a50 irq_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe834ecf7 tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0xe84012ac __netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL vmlinux 0xe85a09a4 device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe8790b7e ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0xe87a3e4c ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0xe87e11f1 md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0xe89bd243 ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe8cc78ff pci_cleanup_aer_uncorrect_error_status +EXPORT_SYMBOL_GPL vmlinux 0xe9186e4d fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0xe91ebbc4 inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xe91eee0e regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0xe932fef3 bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0xe936932f sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0xe939e103 ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe93ed80a pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0xe9455f5b ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0xe94e724b inet_csk_compat_setsockopt +EXPORT_SYMBOL_GPL vmlinux 0xe9500b6c xen_swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0xe95dcfb4 sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0xe96a4585 pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xe96df9a9 efivars_kobject +EXPORT_SYMBOL_GPL vmlinux 0xe98670a4 devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0xe9ac82da devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0xe9c59790 led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0xe9c90e83 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0xe9ce931a kvm_para_available +EXPORT_SYMBOL_GPL vmlinux 0xe9d1b7cf irq_to_pcap +EXPORT_SYMBOL_GPL vmlinux 0xe9dcf7f3 clk_register_divider +EXPORT_SYMBOL_GPL vmlinux 0xe9de842c bmp085_probe +EXPORT_SYMBOL_GPL vmlinux 0xe9ed4f48 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe9f9d399 class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xea0d01f4 spi_master_resume +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea1f1352 cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0xea3c259a bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0xea3fb564 tpm_register_hardware +EXPORT_SYMBOL_GPL vmlinux 0xea418e0f atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0xea628c20 bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0xea778554 ping_seq_fops +EXPORT_SYMBOL_GPL vmlinux 0xea987f82 pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0xea9891fb i2c_new_dummy +EXPORT_SYMBOL_GPL vmlinux 0xead0ff70 pinctrl_utils_add_map_configs +EXPORT_SYMBOL_GPL vmlinux 0xeada4aa3 rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0xeadf816e klist_init +EXPORT_SYMBOL_GPL vmlinux 0xeae047b5 crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0xeae8e6f5 elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0xeafbef65 acpi_ec_add_query_handler +EXPORT_SYMBOL_GPL vmlinux 0xeb0b5135 swiotlb_tbl_unmap_single +EXPORT_SYMBOL_GPL vmlinux 0xeb1c3628 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xeb2798f7 xen_destroy_contiguous_region +EXPORT_SYMBOL_GPL vmlinux 0xeb2c26fe elv_register +EXPORT_SYMBOL_GPL vmlinux 0xeb370805 __apei_exec_run +EXPORT_SYMBOL_GPL vmlinux 0xeb3a2499 blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0xeb3a5948 srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0xeb833c22 xen_has_pv_disk_devices +EXPORT_SYMBOL_GPL vmlinux 0xeba745e1 irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0xebaad607 __get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0xebb151ac sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0xebd7c919 sk_unattached_filter_destroy +EXPORT_SYMBOL_GPL vmlinux 0xebd964e5 regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xebec57c4 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xebecb8f1 __netpoll_free_async +EXPORT_SYMBOL_GPL vmlinux 0xebf7aa91 devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0xebfd67df n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0xec1b043e regulator_suspend_prepare +EXPORT_SYMBOL_GPL vmlinux 0xec25f967 klist_del +EXPORT_SYMBOL_GPL vmlinux 0xec631f34 remove_memory +EXPORT_SYMBOL_GPL vmlinux 0xec785f15 alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0xec7da4a0 xenbus_dev_fatal +EXPORT_SYMBOL_GPL vmlinux 0xec7e5ac4 rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xec867ad4 ping_proc_register +EXPORT_SYMBOL_GPL vmlinux 0xec86d09f spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0xec9e01c7 pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0xecad38f8 transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0xecb5d32c regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xecbc8bff dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0xed14c4f6 pci_bus_sem +EXPORT_SYMBOL_GPL vmlinux 0xed297597 kobj_completion_release +EXPORT_SYMBOL_GPL vmlinux 0xed94dcf2 aead_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0xedbc6f67 gnttab_end_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0xedd49930 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xedef1e89 dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0xedf1f577 tcp_death_row +EXPORT_SYMBOL_GPL vmlinux 0xee13e697 set_personality_ia32 +EXPORT_SYMBOL_GPL vmlinux 0xee1b1405 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0xee33b5cb usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xee33cba8 xenbus_frontend_closed +EXPORT_SYMBOL_GPL vmlinux 0xee3506a6 inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xee39f802 virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0xee50ace2 gpiochip_remove_pin_ranges +EXPORT_SYMBOL_GPL vmlinux 0xee50f1f2 aead_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0xee5f7427 crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee84f23e pinctrl_force_default +EXPORT_SYMBOL_GPL vmlinux 0xeec8c379 rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0xeee293a8 acpi_subsys_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0xeef181fc acpi_preset_companion +EXPORT_SYMBOL_GPL vmlinux 0xef1e2c1d dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xef1f6e23 apei_resources_request +EXPORT_SYMBOL_GPL vmlinux 0xef54eaab pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef782b88 gnttab_grant_foreign_access_subpage +EXPORT_SYMBOL_GPL vmlinux 0xef8b344d __pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xef8c7850 pcap_adc_async +EXPORT_SYMBOL_GPL vmlinux 0xefa54a9d atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xefc5d13c usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0xefcce0b8 ata_sas_port_async_resume +EXPORT_SYMBOL_GPL vmlinux 0xeffa6b8f __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0xf010f346 mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0xf024075e devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xf03589c0 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf0696401 acpi_pci_detect_ejectable +EXPORT_SYMBOL_GPL vmlinux 0xf07be6d6 regmap_init +EXPORT_SYMBOL_GPL vmlinux 0xf0979fba key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0xf0a092e4 register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0xf0d96470 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0xf0f5dbc2 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0xf1040a32 digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0xf104c357 acpi_dev_resume_early +EXPORT_SYMBOL_GPL vmlinux 0xf105b27d usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0xf148565e reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xf16a2406 swiotlb_tbl_sync_single +EXPORT_SYMBOL_GPL vmlinux 0xf16d5514 alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf186c82f nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xf1951929 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0xf1aa133d balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0xf1ae0553 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1b551d9 ibft_addr +EXPORT_SYMBOL_GPL vmlinux 0xf1cd8b74 regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf1ce9a0c blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xf1dc5880 pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0xf1ec7014 inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0xf20bb65c blk_queue_bio +EXPORT_SYMBOL_GPL vmlinux 0xf21004a4 bdi_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf22028a7 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0xf229fe31 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0xf23148a4 cper_estatus_check +EXPORT_SYMBOL_GPL vmlinux 0xf2396b6a i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0xf2621cc6 crypto_blkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0xf2657655 usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0xf27977e2 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0xf2c04b6e pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0xf2d3221b ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0xf2f077cc pkey_id_type_name +EXPORT_SYMBOL_GPL vmlinux 0xf2fca922 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0xf30e105d ezx_pcap_write +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf32bdc5d unregister_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf337045a xenbus_dev_groups +EXPORT_SYMBOL_GPL vmlinux 0xf3394421 ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0xf3727748 rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0xf37e4f35 unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xf388e912 alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xf39ed385 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0xf39eff2b pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xf39fabb4 extcon_set_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3eaf6da __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0xf3f58d65 ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0xf4026723 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xf408f283 init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xf42fa7d3 cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xf494f618 mmc_regulator_get_ocrmask +EXPORT_SYMBOL_GPL vmlinux 0xf499fdb2 rcu_barrier_bh +EXPORT_SYMBOL_GPL vmlinux 0xf4a86323 call_srcu +EXPORT_SYMBOL_GPL vmlinux 0xf4fc2d6c __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf521d009 regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0xf523bfd6 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xf52b5d8a pci_reset_pri +EXPORT_SYMBOL_GPL vmlinux 0xf54abb84 irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0xf54ad85d regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf54e98fb __pci_complete_power_transition +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf560c40e input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0xf5785b42 evtchn_get +EXPORT_SYMBOL_GPL vmlinux 0xf5877e9e wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xf5945bac gnttab_free_grant_references +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5b220f3 usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0xf5b83a9b led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0xf5d6696f __clocksource_updatefreq_scale +EXPORT_SYMBOL_GPL vmlinux 0xf5fef4e3 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf60be739 pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0xf611f195 __efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0xf61ca7f3 sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0xf6342eaf da903x_update +EXPORT_SYMBOL_GPL vmlinux 0xf639591c sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0xf66d19cf usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xf66ff618 regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xf6748423 __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0xf6ca1d69 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0xf6d07664 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0xf6e6d682 irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf6e913de __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xf7016530 xenbus_gather +EXPORT_SYMBOL_GPL vmlinux 0xf7322bc8 pv_time_ops +EXPORT_SYMBOL_GPL vmlinux 0xf7359820 con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0xf73ab4f2 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf7608cdf __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0xf79b08b6 blocking_notifier_chain_cond_register +EXPORT_SYMBOL_GPL vmlinux 0xf7a35657 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf7ab7ddc tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0xf7fb9c98 blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0xf8030636 ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0xf816c866 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xf81f9f01 acpi_bind_one +EXPORT_SYMBOL_GPL vmlinux 0xf827cc93 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf850cbc4 crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0xf876242c fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0xf8802492 print_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xf891631e rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0xf892fd4b da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf8951dc0 __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0xf8b6c8d8 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0xf8cd130f ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0xf8e49f23 crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xf8e4fa90 kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3d0b kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0xf90554c0 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf92ce956 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf9374ce0 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xf93a6600 tpm_show_temp_deactivated +EXPORT_SYMBOL_GPL vmlinux 0xf9518b79 fuse_conn_kill +EXPORT_SYMBOL_GPL vmlinux 0xf9598fc3 devres_release +EXPORT_SYMBOL_GPL vmlinux 0xf9765833 dmi_match +EXPORT_SYMBOL_GPL vmlinux 0xf97666a0 set_memory_rw +EXPORT_SYMBOL_GPL vmlinux 0xf988cde1 spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0xf991db36 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0xf9924426 arch_add_memory +EXPORT_SYMBOL_GPL vmlinux 0xf99a6b52 cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9b35952 anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0xf9bbed48 rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xf9c95fbd i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0xf9ca3160 ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xf9d9264e xen_have_vector_callback +EXPORT_SYMBOL_GPL vmlinux 0xf9e8a9aa dm_get_rq_mapinfo +EXPORT_SYMBOL_GPL vmlinux 0xf9f7a32e generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0xf9ffbe7b usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0xfa012fe7 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0xfa13b530 __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa1f4662 scatterwalk_start +EXPORT_SYMBOL_GPL vmlinux 0xfa3120a1 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0xfa3168d3 public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0xfa4a647e klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xfa56d147 blkcipher_walk_virt_block +EXPORT_SYMBOL_GPL vmlinux 0xfa679907 uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0xfa6e3bc3 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0xfa8b9aba pinctrl_pm_select_sleep_state +EXPORT_SYMBOL_GPL vmlinux 0xfa901b31 compat_get_timespec +EXPORT_SYMBOL_GPL vmlinux 0xfac48d92 ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0xfacf5bf3 ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0xfae51124 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xfb0efa76 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfb13e188 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xfb17dec1 __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb1ad465 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0xfb2c9d64 page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0xfb324dda get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb6424ad fat_detach +EXPORT_SYMBOL_GPL vmlinux 0xfb64b230 acpi_processor_ffh_cstate_probe +EXPORT_SYMBOL_GPL vmlinux 0xfb65cdb3 unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb8667ac crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0xfb8c1925 usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0xfbb71848 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc201b66 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0xfc2efc33 class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xfc2fe322 driver_find +EXPORT_SYMBOL_GPL vmlinux 0xfc3b4246 acpi_bus_update_power +EXPORT_SYMBOL_GPL vmlinux 0xfc87d23d i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xfc95771b sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0xfc968c8b apei_exec_write_register_value +EXPORT_SYMBOL_GPL vmlinux 0xfca0462d inet6_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0xfcb0a36c unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0xfcd33a71 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0xfcd7bc0b ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0xfcf66db2 __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0xfd215919 pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0xfd2ff4f7 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0xfd51b281 gnttab_end_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0xfd653af9 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfd7243c7 erst_disable +EXPORT_SYMBOL_GPL vmlinux 0xfd7a4824 shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0xfd99646d crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0xfdaa65c3 evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0xfdf098e3 ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0xfe1646c1 pinctrl_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xfe25338b sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0xfe30607e bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xfe3979d1 usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0xfe4bfe96 ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0xfe6ef5dc perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0xfe727411 get_phys_to_machine +EXPORT_SYMBOL_GPL vmlinux 0xfe7dbc64 do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfe9e9d84 usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0xfeb7b662 sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfed3c486 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0xfed83c68 iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0xfee8a4f3 iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0xfef8a166 trace_current_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xff03862f bio_trim +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff1076fc usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xff2889cf crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0xff45a671 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0xff56ffbb ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff5b35f8 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0xff6d9e56 __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0xff90f01e dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0xffb6b002 debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0xfff62866 xenbus_switch_state +EXPORT_SYMBOL_GPL vmlinux 0xfff896ef nf_unregister_afinfo --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/amd64/lowlatency.compiler +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/amd64/lowlatency.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 4.8.2-19ubuntu1) 4.8.2 --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/amd64/lowlatency.modules +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/amd64/lowlatency.modules @@ -0,0 +1,3937 @@ +3c574_cs +3c589_cs +3c59x +3w-9xxx +3w-sas +3w-xxxx +6lowpan +6pack +8021q +8139cp +8139too +8250_dw +8255 +8255_pci +8390 +88pm800 +88pm805 +88pm80x +88pm80x_onkey +88pm860x_battery +88pm860x_bl +88pm860x_charger +88pm860x_onkey +88pm860x-ts +9p +9pnet +9pnet_rdma +9pnet_virtio +a100u2w +a3d +a8293 +aacraid +aat2870_bl +aat2870-regulator +ab3100 +ab3100-otp +abituguru +abituguru3 +ablk_helper +ac97_bus +acard-ahci +acecad +acenic +acerhdf +acer-wmi +acpi_extlog +acpi_ipmi +acpi_pad +acpiphp_ibm +acpi_power_meter +acquirewdt +act200l-sir +act_csum +act_gact +act_ipt +actisys-sir +act_mirred +act_nat +act_pedit +act_police +act_simple +act_skbedit +ad2s1200 +ad2s1210 +ad2s90 +ad5064 +ad525x_dpot +ad525x_dpot-i2c +ad525x_dpot-spi +ad5360 +ad5380 +ad5398 +ad5421 +ad5446 +ad5449 +ad5504 +ad5624r_spi +ad5686 +ad5755 +ad5764 +ad5791 +ad5930 +ad5933 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7152 +ad7192 +ad7266 +ad7280a +ad7291 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +ad7476 +ad7606 +ad7746 +ad7780 +ad7791 +ad7793 +ad7816 +ad7877 +ad7879 +ad7879-i2c +ad7879-spi +ad7887 +ad7923 +ad799x +ad8366 +ad9523 +ad9832 +ad9834 +ad9850 +ad9852 +ad9910 +ad9951 +adcxx +addi_apci_035 +addi_apci_1032 +addi_apci_1500 +addi_apci_1516 +addi_apci_1564 +addi_apci_16xx +addi_apci_2032 +addi_apci_2200 +addi_apci_3120 +addi_apci_3501 +addi_apci_3xxx +addi_watchdog +ade7753 +ade7754 +ade7758 +ade7759 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adfs +adi +adis16060 +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16204 +adis16209 +adis16220 +adis16240 +adis16260 +adis16400 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adl_pci9118 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1275 +adm8211 +adm9240 +adp5520_bl +adp5520-keys +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +adq12b +ads1015 +ads7828 +ads7846 +ads7871 +ad_sigma_delta +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adv7170 +adv7175 +adv7180 +advansys +advantechwdt +adv_pci1710 +adv_pci1723 +adv_pci1724 +adv_pci_dio +adxl34x +adxl34x-i2c +adxl34x-spi +adxrs450 +aesni-intel +aes-x86_64 +af_802154 +af9013 +af9033 +af_alg +affs +af_key +af_packet_diag +af-rxrpc +ah4 +ah6 +aha152x_cs +ahci +ahci_platform +aic79xx +aic7xxx +aic94xx +aio_aio12_8 +aio_iiro_16 +aiptek +aircable +airo +airo_cs +ak8975 +algif_hash +algif_skcipher +ali-ircc +alim1535_wdt +alim7101_wdt +alphatrack +altera-ci +altera_jtaguart +altera_ps2 +altera-stapl +altera_uart +alx +ambassador +amc6821 +amd5536udc +amd64_edac_mod +amd76xrom +amd8111e +amd_freq_sensitivity +amd_iommu_v2 +amd-rng +amilo-rfkill +amplc_dio200 +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pc263 +amplc_pci224 +amplc_pci230 +amplc_pci263 +ams369fg06 +analog +anatop-regulator +ansi_cprng +anubis +aoe +apanel +apds9300 +apds9802als +apds990x +apple_bl +appledisplay +apple-gmux +applesmc +appletalk +appletouch +applicom +ar5523 +ar7part +arc4 +arcfb +arcmsr +arcnet +arc_ps2 +arc-rawmode +arc-rimi +arc_uart +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +arptable_filter +arp_tables +arpt_mangle +as3711_bl +as3711-regulator +as5011 +asb100 +asc7621 +asix +ast +asus_atk0110 +asus-laptop +asus-nb-wmi +asus-wmi +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at86rf230 +at91_ether +atbm8830 +aten +ath +ath10k_core +ath10k_pci +ath3k +ath5k +ath6kl_core +ath6kl_sdio +ath6kl_usb +ath9k +ath9k_common +ath9k_htc +ath9k_hw +ati_remote +ati_remote2 +atl1 +atl1c +atl1e +atl2 +atlas_btns +atm +atmel +atmel_cs +atmel_mxt_ts +atmel_pci +atmel_pwm +atmel-pwm-bl +atmel-ssc +atmtcp +atp +atp870u +atxp1 +aty128fb +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo_k1900fb +auo_k1901fb +auo_k190x +auo-pixcir-ts +authenc +authencesn +auth_rpcgss +autofs4 +avma1_cs +avm_cs +avmfritz +ax25 +ax88179_178a +axnet_cs +b1 +b1dma +b1pci +b1pcmcia +b2c2-flexcop +b2c2-flexcop-pci +b2c2-flexcop-usb +b43 +b43legacy +b44 +bas_gigaset +batman-adv +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm203x +bcm3510 +bcm5974 +bcma +bcma-hcd +bcm_wimax +bd6107 +be2iscsi +be2net +befs +belkin_sa +bfa +bfs +bfusb +bh1770glc +bh1780gli +binfmt_misc +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +blowfish-x86_64 +bluecard_cs +bluetooth +bma150 +bma180 +bmp085-i2c +bmp085-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bonding +bpa10x +bpck +bpctl_mod +bpqether +bq2415x_charger +bq24190_charger +bq24735-charger +bq27x00_battery +br2684 +brcmfmac +brcmsmac +brcmutil +bridge +broadsheetfb +bsd_comp +bt3c_cs +bt819 +bt856 +bt866 +bt878 +btcoexist +btcx-risc +btmrvl +btmrvl_sdio +btmtk_usb +btrfs +btsdio +bttv +btuart_cs +btusb +btwilink +bu21013_ts +budget +budget-av +budget-ci +budget-core +budget-patch +BusLogic +bw-qcam +bypass +c2port-duramar2150 +c4 +c67x00 +c6xdigio +cachefiles +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camellia-aesni-avx2 +camellia-aesni-avx-x86_64 +camellia_generic +camellia-x86_64 +can +can-bcm +can-dev +can-gw +can-raw +capi +capidrv +capmode +carl9170 +carminefb +cassini +cast5-avx-x86_64 +cast5_generic +cast6-avx-x86_64 +cast6_generic +cast_common +catc +cb710 +cb710-mmc +cb_das16_cs +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +cb_pcimdda +cc770 +cc770_isa +cc770_platform +c_can +c_can_pci +c_can_platform +cciss +ccm +cdc-acm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc-phonet +cdc_subset +cdc-wdm +cedusb +ceph +cfag12864b +cfag12864bfb +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +chipreg +chnl_net +chromeos_laptop +cifs +ci_hdrc +ci_hdrc_msm +ci_hdrc_pci +cirrus +cirrusfb +ck804xrom +classmate-laptop +clearpad_tm1217 +clip +clk-max77686 +clk-s2mps11 +clk-si5351 +clk-twl6040 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_fw +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm36651 +cm4000_cs +cm4040_cs +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cmtp +cnic +cobra +coda +com20020 +com20020_cs +com20020-pci +com90io +com90xx +comedi +comedi_bond +comedi_fc +comedi_parport +comedi_test +comm +compal-laptop +configfs +contec_pci_dio +cordic +core +coretemp +cp210x +cpcihp_generic +cpcihp_zt5550 +cpia2 +cpu5wdt +cpuid +cpu-notifier-error-inject +c-qcam +cramfs +cr_bllcd +crc32 +crc32-pclmul +crc7 +crc8 +crc-ccitt +crc-itu-t +crct10dif-pclmul +cros_ec +cros_ec_i2c +cros_ec_keyb +cros_ec_spi +crvml +cryptd +cryptoloop +crypto_null +crypto_user +crystalhd +cs5345 +cs53l32a +cs5535-mfd +csiostor +ct82c710 +ctr +cts +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx8800 +cx8802 +cx88-alsa +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx88xx +cxacru +cxd2099 +cxd2820r +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxt1e1 +cy8ctmg110_ts +cyapa +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +cyttsp_core +cyttsp_i2c +cyttsp_i2c_common +cyttsp_spi +da9030_battery +da9034-ts +da903x +da903x_bl +da9052-battery +da9052_bl +da9052-hwmon +da9052_onkey +da9052-regulator +da9052_tsi +da9052_wdt +da9055-hwmon +da9055_onkey +da9055-regulator +da9055_wdt +da9063-regulator +da9210-regulator +DAC960 +daqboard2000 +das08 +das08_cs +das08_isa +das08_pci +das16 +das16m1 +das1800 +das6402 +das800 +db9 +dc395x +dca +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +dccp_probe +dcdbas +ddbridge +de2104x +de4x5 +decnet +deflate +defxx +dell-laptop +dell-led +dell_rbu +dell-wmi +dell-wmi-aio +denali +denali_dt +denali_pci +des_generic +designware_i2s +dgap +dgnc +dgrp +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dibx000_common +digi_acceleport +diskonchip +divacapi +divadidd +diva_idi +diva_mnt +divas +dl2k +dlci +dlm +dm1105 +dm9601 +dm-bio-prison +dm-bufio +dm-cache +dm-cache-cleaner +dm-cache-mq +dm-crypt +dm-delay +dme1737 +dmfe +dm-flakey +dmi-sysfs +dm-log +dm-log-userspace +dmm32at +dm-mirror +dm-multipath +dm-persistent-data +dm-queue-length +dm-raid +dm-region-hash +dm-round-robin +dm-service-time +dm-snapshot +dm-switch +dm-thin-pool +dm-verity +dmx3191d +dm-zero +dnet +dn_rtmsg +docg3 +docg4 +dpt_i2o +drbd +drm +drm_kms_helper +drm_usb +drxd +drxk +ds1621 +ds1682 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds620 +dsa_core +dsbr100 +dscc4 +dss1_divert +dst +dst_ca +dstr +dt2801 +dt2811 +dt2814 +dt2815 +dt2817 +dt282x +dt3000 +dt3155v4l +dt9812 +dtl1_cs +dummy +dummy-irq +dvb-as102 +dvb-bt8xx +dvb-core +dvb-pll +dvb-ttpci +dvb-ttusb-budget +dvb-usb +dvb-usb-a800 +dvb-usb-af9005 +dvb-usb-af9005-remote +dvb-usb-af9015 +dvb-usb-af9035 +dvb-usb-anysee +dvb-usb-au6610 +dvb-usb-az6007 +dvb-usb-az6027 +dvb-usb-ce6230 +dvb-usb-cinergyT2 +dvb-usb-cxusb +dvb-usb-dib0700 +dvb-usb-dibusb-common +dvb-usb-dibusb-mb +dvb-usb-dibusb-mc +dvb-usb-digitv +dvb-usb-dtt200u +dvb-usb-dtv5100 +dvb-usb-dw2102 +dvb-usb-ec168 +dvb-usb-friio +dvb-usb-gl861 +dvb-usb-gp8psk +dvb-usb-it913x +dvb-usb-lmedm04 +dvb-usb-m920x +dvb-usb-mxl111sf +dvb-usb-nova-t-usb2 +dvb-usb-opera +dvb-usb-pctv452e +dvb-usb-rtl28xxu +dvb-usb-technisat-usb2 +dvb-usb-ttusb2 +dvb-usb-umt-010 +dvb_usb_v2 +dvb-usb-vp702x +dvb-usb-vp7045 +dwc2 +dwc2_pci +dwc2_platform +dwc3 +dwc3-pci +dw_dmac +dw_dmac_core +dw_dmac_pci +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +e4000 +e752x_edac +earth-pt1 +eata +ebt_802_3 +ebtable_broute +ebtable_filter +ebtable_nat +ebtables +ebt_among +ebt_arp +ebt_arpreply +ebt_dnat +ebt_ip +ebt_ip6 +ebt_limit +ebt_log +ebt_mark +ebt_mark_m +ebt_nflog +ebt_pkttype +ebt_redirect +ebt_snat +ebt_stp +ebt_vlan +ec100 +echo +ec_sys +edac_core +edac_mce_amd +edt-ft5x06 +eeepc-laptop +eeepc-wmi +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efi-pstore +efs +ehset +einj +elo +elsa_cs +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +emc1403 +emc2103 +emc6w201 +em_canid +em_cmp +emi26 +emi62 +em_ipset +em_meta +em_nbyte +empeg +ems_pci +ems_pcmcia +ems_usb +em_text +emu10k1-gp +em_u32 +enc28j60 +enclosure +ene_ir +eni +enic +epat +epia +epic100 +eql +esas2r +esb2rom +esd_usb2 +esi-sir +esp4 +esp6 +et131x +ethoc +eurotechwdt +evbug +exofs +extcon-adc-jack +extcon-arizona +extcon-gpio +extcon-max77693 +extcon-max8997 +extcon-palmas +ezusb +f2fs +f71805f +f71808e_wdt +f71882fg +f75375s +f81232 +fakelb +fam15h_power +fan53555 +farsync +faulty +fb_ddc +fb_sys_fops +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_cs +fealnx +ff-memless +fid +fintek-cir +firedtv +firestream +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fit2 +fit3 +fixed +fl512 +fld +floppy +fm801-gp +fmc +fmc-chardev +fmc-fakedev +fmc-trivial +fmc-write-eeprom +fm_drv +fmvj18x_cs +fnic +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +freevxfs +friq +frpw +fsa9480 +fscache +fschmd +ft1000 +ft1000_pcmcia +ftdi-elan +ftdi_sio +ftl +fujitsu-laptop +fujitsu-tablet +fujitsu_ts +fusbh200-hcd +g450_pll +g760a +g762 +g_acm_ms +gadgetfs +gamecon +gameport +garmin_gps +garp +g_audio +g_cdc +gcm +g_dbgp +gdmtty +gdmulte +gdmwm +gdth +generic +generic-adc-battery +generic_bl +gen_probe +g_ether +gf128mul +gf2k +g_ffs +gfs2 +ghash-clmulni-intel +ghash-generic +g_hid +gigaset +girbil-sir +gl518sm +gl520sm +gl620a +gluebi +glue_helper +gma500_gfx +g_mass_storage +g_midi +g_ncm +g_nokia +go7007 +go7007-loader +go7007-usb +goku_udc +goldfishfb +gp2ap002a00f +gp2ap020a00f +gpio +gpio-74x164 +gpio-addr-flash +gpio-adp5520 +gpio-adp5588 +gpio-amd8111 +gpio-arizona +gpio_backlight +gpio-charger +gpio-cs5535 +gpio-da9052 +gpio-da9055 +gpio-f7188x +gpio-fan +gpio-generic +gpio-ich +gpio-ir-recv +gpio-it8761e +gpio-janz-ttl +gpio-kempld +gpio_keys +gpio_keys_polled +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-mc33880 +gpio-mcp23s08 +gpio-ml-ioh +gpio_mouse +gpio-pca953x +gpio-pcf857x +gpio-pch +gpio-rdc321x +gpio-regulator +gpio-sch +gpio_tilt_polled +gpio-tps65912 +gpio-ts5500 +gpio-twl6040 +gpio-ucb1400 +gpio-viperboard +gpio-vx855 +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +g_printer +gre +grip +grip_mp +gsc_hpdi +g_serial +gspca_benq +gspca_conex +gspca_cpia1 +gspca_etoms +gspca_finepix +gspca_gl860 +gspca_jeilinj +gspca_jl2005bcd +gspca_kinect +gspca_konica +gspca_m5602 +gspca_main +gspca_mars +gspca_mr97310a +gspca_nw80x +gspca_ov519 +gspca_ov534 +gspca_ov534_9 +gspca_pac207 +gspca_pac7302 +gspca_pac7311 +gspca_se401 +gspca_sn9c2028 +gspca_sn9c20x +gspca_sonixb +gspca_sonixj +gspca_spca1528 +gspca_spca500 +gspca_spca501 +gspca_spca505 +gspca_spca506 +gspca_spca508 +gspca_spca561 +gspca_sq905 +gspca_sq905c +gspca_sq930x +gspca_stk014 +gspca_stk1135 +gspca_stv0680 +gspca_stv06xx +gspca_sunplus +gspca_t613 +gspca_topro +gspca_tv8532 +gspca_vc032x +gspca_vicam +gspca_xirlink_cit +gspca_zc3xx +gtco +guillemot +gunze +g_webcam +g_zero +hamachi +hampshire +hangcheck-timer +hanwang +hci +hci_uart +hci_vhci +hdaps +hdlc +hdlc_cisco +hdlcdrv +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdpvr +he +hecubafb +hexium_gemini +hexium_orion +hfc4s8s_l1 +hfcmulti +hfcpci +hfcsusb +hfc_usb +hfs +hfsplus +hgafb +hid +hid-a4tech +hid-apple +hid-appleir +hid-aureal +hid-axff +hid-belkin +hid-cherry +hid-chicony +hid-cypress +hid-dr +hid-elecom +hid-elo +hid-emsff +hid-ezkey +hid-gaff +hid-generic +hid-gyration +hid-holtekff +hid-holtek-kbd +hid-holtek-mouse +hid-huion +hid-hyperv +hid-icade +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-lenovo-tpkbd +hid-logitech +hid-logitech-dj +hid-magicmouse +hid-microsoft +hid-monterey +hid-multitouch +hid-ntrig +hid-ortek +hidp +hid-petalynx +hid-picolcd +hid-pl +hid-primax +hid-prodikeys +hid-roccat +hid-roccat-arvo +hid-roccat-common +hid-roccat-isku +hid-roccat-kone +hid-roccat-koneplus +hid-roccat-konepure +hid-roccat-kovaplus +hid-roccat-lua +hid-roccat-pyra +hid-roccat-ryos +hid-roccat-savu +hid-saitek +hid-samsung +hid-sensor-accel-3d +hid-sensor-als +hid-sensor-gyro-3d +hid-sensor-hub +hid-sensor-iio-common +hid-sensor-magn-3d +hid-sensor-trigger +hid-sjoy +hid-sony +hid-speedlink +hid-steelseries +hid-sunplus +hid-thingm +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-uclogic +hid-wacom +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hih6130 +hisax +hisax_fcpcipnp +hisax_isac +hisax_st5481 +hmc5843 +hmc6352 +hopper +horizon +hostap +hostap_cs +hostap_pci +hostap_plx +hp100 +hp_accel +hpfs +hpilo +hpsa +hptiop +hpwdt +hp-wireless +hp-wmi +hsi +hsi_char +hso +hsr +htc-pasic3 +htu21 +huawei_cdc_ncm +hv_balloon +hv_netvsc +hv_storvsc +hv_utils +hv_vmbus +hwa-hc +hwa-rc +hwmon-vid +hwpoison-inject +hx8357 +hyperv_fb +hyperv-keyboard +hysdn +i1480-dfu-usb +i1480-est +i2400m +i2400m-usb +i2c-algo-bit +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd756-s4882 +i2c-amd8111 +i2c-cbus-gpio +i2c-designware-core +i2c-designware-pci +i2c-designware-platform +i2c-dev +i2c-diolan-u2c +i2c-eg20t +i2c-gpio +i2c-hid +i2c-i801 +i2c-isch +i2c-ismt +i2c-kempld +i2c-matroxfb +i2c-mux +i2c-mux-gpio +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-mux-pinctrl +i2c-nforce2 +i2c-nforce2-s4985 +i2c-ocores +i2c-parport +i2c-parport-light +i2c-pca-platform +i2c-piix4 +i2c-scmi +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-tiny-usb +i2c-via +i2c-viapro +i2c-viperboard +i2c-xiic +i2o_block +i2o_bus +i2o_config +i2o_core +i2o_proc +i2o_scsi +i3000_edac +i3200_edac +i40e +i5000_edac +i5100_edac +i5400_edac +i5k_amb +i6300esb +i7300_edac +i7300_idle +i740fb +i7core_edac +i82092 +i82975x_edac +i8k +i915 +i915_bdw +ib700wdt +ib_addr +ib_cm +ib_core +ib_ipath +ib_ipoib +ib_iser +ib_isert +ib_mad +ibmaem +ibmasm +ibmasr +ibmpex +ibm_rtl +ib_mthca +ib_qib +ib_sa +ib_srp +ib_srpt +ib_ucm +ib_umad +ib_uverbs +ichxrom +icp_multi +ics932s401 +ideapad-laptop +ideapad_slidebar +idmouse +idt77252 +idtcps +idt_gen2 +ie6xx_wdt +ieee802154 +ifb +iforce +igb +igbvf +iguanair +iio_dummy +iio_hwmon +iio-trig-interrupt +iio-trig-periodic-rtc +iio-trig-sysfs +ii_pci20kc +ili210x +ili922x +ili9320 +imm +imon +ims-pcu +imx074 +ina209 +ina2xx +industrialio +industrialio-triggered-buffer +inet_diag +inexio +inftl +initio +input-polldev +int51x1 +intelfb +intel_ips +intel_menlow +intel_mid_dma +intel_oaktrail +intel_powerclamp +intel_rapl +intel-rng +intel-rst +intel-smartconnect +intel_vr_nor +interact +interval_tree_test +inv-mpu6050 +ioatdma +ioc4 +io_edgeport +io_ti +iowarrior +ip6_gre +ip6table_filter +ip6table_mangle +ip6table_nat +ip6table_raw +ip6_tables +ip6table_security +ip6t_ah +ip6t_eui64 +ip6t_frag +ip6t_hbh +ip6t_ipv6header +ip6t_MASQUERADE +ip6t_mh +ip6t_NPT +ip6t_REJECT +ip6t_rpfilter +ip6t_rt +ip6t_SYNPROXY +ip6_tunnel +ip6_vti +ipack +ipaq +ipcomp +ipcomp6 +ipddp +ipg +ip_gre +iphase +ipheth +ipip +ipmi_devintf +ipmi_poweroff +ipmi_si +ipmi_watchdog +ipoctal +ipr +ips +ip_set +ip_set_bitmap_ip +ip_set_bitmap_ipmac +ip_set_bitmap_port +ip_set_hash_ip +ip_set_hash_ipport +ip_set_hash_ipportip +ip_set_hash_ipportnet +ip_set_hash_net +ip_set_hash_netiface +ip_set_hash_netnet +ip_set_hash_netport +ip_set_hash_netportnet +ip_set_list_set +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +ip_tables +iptable_security +ipt_ah +ipt_CLUSTERIP +ipt_ECN +ipt_MASQUERADE +ipt_REJECT +ipt_rpfilter +ipt_SYNPROXY +ipt_ULOG +ip_tunnel +ip_vs +ip_vs_dh +ip_vs_ftp +ip_vs_lblc +ip_vs_lblcr +ip_vs_lc +ip_vs_nq +ip_vs_pe_sip +ip_vs_rr +ip_vs_sed +ip_vs_sh +ip_vs_wlc +ip_vs_wrr +ip_vti +ipw +ipw2100 +ipw2200 +ipwireless +ipx +ircomm +ircomm-tty +irda +irda-usb +ir-jvc-decoder +ir-kbd-i2c +irlan +ir-lirc-codec +ir-mce_kbd-decoder +ir-nec-decoder +irnet +ir-rc5-decoder +ir-rc5-sz-decoder +ir-rc6-decoder +ir-sanyo-decoder +ir-sony-decoder +irtty-sir +ir-usb +isci +iscsi_boot_sysfs +iscsi_ibft +iscsi_target_mod +iscsi_tcp +isdn +isdn_bsdcomp +isdnhdlc +isicom +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isofs +isp116x-hcd +isp1362-hcd +isp1704_charger +isp1760 +it87 +it8712f_wdt +it87_wdt +it913x-fe +iTCO_vendor_support +iTCO_wdt +itd1000 +ite-cir +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_c2 +iw_cm +iw_cxgb3 +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +iw_nes +ix2505v +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsm +k10temp +k8temp +kafs +kalmia +kaweth +kb3886_bl +kbic +kbtab +kcomedilib +ke_counter +kempld-core +kempld_wdt +kernelcapi +keucr +keyspan +keyspan_pda +keyspan_remote +kfifo_buf +khazad +kingsun-sir +kl5kusb105 +ko2iblnd +kobil_sct +ks0108 +ks0127 +ks8842 +ks8851 +ks8851_mll +ks959-sir +ksdazzle-sir +ksocklnd +ksz884x +ktti +kvaser_pci +kvaser_usb +kvm +kvm-amd +kvm-intel +kxsd9 +kxtj9 +kyrofb +l1oip +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +l2tp_ppp +l440gx +l4f00242t03 +l64781 +lanai +lapb +lapbether +latch-addr-flash +lattice-ecp3-config +lcd +ld9040 +ldusb +lec +leds-88pm860x +leds-adp5520 +leds-atmel-pwm +leds-bd2802 +leds-blinkm +leds-clevo-mail +leds-da903x +leds-da9052 +leds-dac124s085 +leds-gpio +leds-lm3530 +leds-lm3533 +leds-lm355x +leds-lm3642 +leds-lp3944 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lt3593 +leds-max8997 +leds-mc13783 +leds-ot200 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pca9685 +leds-pwm +leds-regulator +leds-ss4200 +leds-tca6507 +leds-wm831x-status +leds-wm8350 +ledtrig-backlight +ledtrig-camera +ledtrig-default-on +ledtrig-gpio +ledtrig-heartbeat +ledtrig-oneshot +ledtrig-timer +ledtrig-transient +legousbtower +lg2160 +lgdt3305 +lgdt330x +lgs8gxx +lg-vl600 +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libahci +libceph +libcfs +libcomposite +libcrc32c +libcxgbi +libertas +libertas_cs +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libore +libosd +libsas +libsrp +lightning +line6usb +lineage-pem +linear +lirc_bt829 +lirc_dev +lirc_igorplugusb +lirc_imon +lirc_parallel +lirc_sasem +lirc_serial +lirc_sir +lirc_zilog +lis3l02dq +lis3lv02d +lis3lv02d_i2c +litelink-sir +lkkbd +llc +llc2 +llog_test +lm25066 +lm3533-als +lm3533_bl +lm3533-core +lm3533-ctrlbank +lm3630a_bl +lm3639_bl +lm63 +lm70 +lm73 +lm75 +lm77 +lm78 +lm80 +lm83 +lm8323 +lm8333 +lm85 +lm87 +lm90 +lm92 +lm93 +lm95234 +lm95241 +lm95245 +lmc +lms283gf05 +lms501kf03 +lmv +lnbp21 +lnbp22 +lnet +lnet_selftest +lockd +lov +lp +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp8755 +lp8788_bl +lp8788-charger +lpc_ich +lpc_sch +lpddr_cmds +lpfc +lru_cache +lrw +ltc2978 +ltc4151 +ltc4215 +ltc4245 +ltc4261 +ltv350qv +lustre +lv5207lp +lvfs +lz4 +lz4_compress +lz4hc +lz4hc_compress +m25p80 +m2m-deinterlace +m52790 +m88rs2000 +ma600-sir +mac80211 +mac80211_hwsim +mac802154 +macb +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mac-gaelic +mac-greek +mac_hid +machzwd +mac-iceland +mac-inuit +macmodes +mac-roman +mac-romanian +mac-turkish +macvlan +macvtap +mag3110 +magellan +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +matrix-keymap +matrix_keypad +matroxfb_accel +matroxfb_base +matroxfb_crtc2 +matroxfb_DAC1064 +matroxfb_g450 +matroxfb_maven +matroxfb_misc +matroxfb_Ti3026 +matrox_w1 +max1111 +max11801_ts +max1363 +max1586 +max16064 +max16065 +max1619 +max1668 +max17040_battery +max17042_battery +max197 +max2165 +max3100 +max34440 +max517 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77686 +max77693 +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925_bl +max8925_onkey +max8925_power +max8925-regulator +max8952 +max8973-regulator +max8997 +max8997_charger +max8998 +max8998_charger +mb862xxfb +mb86a16 +mb86a20s +mc13783-adc +mc13783-pwrbutton +mc13783-regulator +mc13783_ts +mc13892-regulator +mc13xxx-core +mc13xxx-i2c +mc13xxx-regulator-core +mc13xxx-spi +mc44s803 +mce_amd_inj +mce-inject +mceusb +mcp2120-sir +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp4725 +mcs5000_ts +mcs7780 +mcs7830 +mcs_touchkey +mct_u232 +md4 +mdc +mdc800 +mdio +me4000 +me_daq +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mei +mei-me +mei_phy +mem2mem_testdev +memory-notifier-error-inject +memstick +mena21_wdt +metronomefb +metro-usb +meye +mfd +mga +mgc +mic_card +michael_mic +mic_host +microread +microread_i2c +microread_mei +microtek +mii +minix +mip6 +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +mite +mk712 +mkiss +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mma8450 +mmc_block +mmc_spi +mms114 +mos7720 +mos7840 +moxa +mpc624 +mpoa +mpr121_touchkey +mpt2sas +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +mrst_max3110 +ms_block +msdos +msi-laptop +msi-wmi +msp3400 +mspro_block +msr +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt29f_spinand +mt312 +mt352 +mt9m001 +mt9m111 +mt9t031 +mt9t112 +mt9v011 +mt9v022 +mtd +mtd_blkdevs +mtdblock +mtdblock_ro +mtd_dataflash +mtdoops +mtdram +mtdswap +mtip32xx +mtouch +multipath +multiq3 +musb_hdrc +mv88e6060 +mv88e6xxx_drv +mvmdio +mvsas +mv_u3d_core +mv_udc +mvumi +mwave +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxl111sf-demod +mxl111sf-tuner +mxl5005s +mxl5007t +mxm-wmi +mxser +myri10ge +n411 +nand +nand_bch +nand_ecc +nand_ids +nandsim +natsemi +nau7802 +navman +nbd +nci +ncpfs +nct6775 +ne2k-pci +neofb +net1080 +net2272 +net2280 +netconsole +netjet +netlink_diag +netprio_cgroup +netrom +netsc520 +nettel +netxen_nic +newtonkbd +nfc +nfc_digital +nf_conntrack +nf_conntrack_amanda +nf_conntrack_broadcast +nf_conntrack_ftp +nf_conntrack_h323 +nf_conntrack_ipv4 +nf_conntrack_ipv6 +nf_conntrack_irc +nf_conntrack_netbios_ns +nf_conntrack_netlink +nf_conntrack_pptp +nf_conntrack_proto_dccp +nf_conntrack_proto_gre +nf_conntrack_proto_sctp +nf_conntrack_proto_udplite +nf_conntrack_sane +nf_conntrack_sip +nf_conntrack_snmp +nf_conntrack_tftp +nfcsim +nfcwilink +nf_defrag_ipv4 +nf_defrag_ipv6 +nf_nat +nf_nat_amanda +nf_nat_ftp +nf_nat_h323 +nf_nat_ipv4 +nf_nat_ipv6 +nf_nat_irc +nf_nat_pptp +nf_nat_proto_dccp +nf_nat_proto_gre +nf_nat_proto_sctp +nf_nat_proto_udplite +nf_nat_sip +nf_nat_snmp_basic +nf_nat_tftp +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +nfnetlink_log +nfnetlink_queue +nfs +nfs_acl +nfsd +nfs_layout_nfsv41_files +nfsv2 +nfsv3 +nfsv4 +nf_synproxy_core +nf_tables +nf_tables_arp +nf_tables_bridge +nf_tables_ipv4 +nf_tables_ipv6 +nft_chain_nat_ipv4 +nft_chain_nat_ipv6 +nft_chain_route_ipv4 +nft_chain_route_ipv6 +nft_compat +nft_counter +nft_ct +nft_exthdr +nft_hash +nftl +nft_limit +nft_log +nft_meta +nft_nat +nft_rbtree +nft_reject_ipv4 +ngene +n_hdlc +ni_6527 +ni_65xx +ni_660x +ni_670x +ni_at_a2150 +ni_at_ao +ni_atmio +ni_atmio16d +nicstar +ni_daq_700 +ni_daq_dio24 +ni_labpc +ni_labpc_cs +ni_labpc_isadma +ni_labpc_pci +nilfs2 +ni_mio_cs +ni_pcidio +ni_pcimio +ni_tio +ni_tiocmd +niu +nlmon +nls_ascii +nls_cp1250 +nls_cp1251 +nls_cp1255 +nls_cp737 +nls_cp775 +nls_cp850 +nls_cp852 +nls_cp855 +nls_cp857 +nls_cp860 +nls_cp861 +nls_cp862 +nls_cp863 +nls_cp864 +nls_cp865 +nls_cp866 +nls_cp869 +nls_cp874 +nls_cp932 +nls_cp936 +nls_cp949 +nls_cp950 +nls_euc-jp +nls_iso8859-1 +nls_iso8859-13 +nls_iso8859-14 +nls_iso8859-15 +nls_iso8859-2 +nls_iso8859-3 +nls_iso8859-4 +nls_iso8859-5 +nls_iso8859-6 +nls_iso8859-7 +nls_iso8859-9 +nls_koi8-r +nls_koi8-ru +nls_koi8-u +nls_utf8 +nmclan_cs +nosy +notifier-error-inject +nouveau +nozomi +n_r3964 +ns558 +ns83820 +nsc-ircc +ntb +ntb_netdev +ntc_thermistor +ntfs +n_tracerouter +n_tracesink +null_blk +nuvoton-cir +nvidiafb +nvme +nvram +nv_tco +nxt200x +nxt6000 +obdclass +obdecho +objlayoutdriver +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stackglue +ocfs2_stack_o2cb +ocfs2_stack_user +ocrdma +old_belkin-sir +omfs +omninet +on20 +on26 +onenand +opencores-kbd +openvswitch +oprofile +opticon +option +or51132 +or51211 +orinoco +orinoco_cs +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +osc +osd +osdblk +osst +oti6858 +output +ov2640 +ov5642 +ov6650 +ov7640 +ov7670 +ov772x +ov9640 +ov9740 +overlayfs +oxu210hp-hcd +ozwpan +p4-clockmod +p54common +p54pci +p54spi +p54usb +p8022 +p8023 +padlock-aes +padlock-sha +palmas-regulator +panasonic-laptop +panel +paride +parkbd +parport +parport_ax88796 +parport_cs +parport_pc +parport_serial +pata_acpi +pata_ali +pata_amd +pata_arasan_cf +pata_artop +pata_atiixp +pata_atp867x +pata_cmd640 +pata_cmd64x +pata_cs5520 +pata_cs5530 +pata_cs5536 +pata_cypress +pata_efar +pata_hpt366 +pata_hpt37x +pata_hpt3x2n +pata_hpt3x3 +pata_it8213 +pata_it821x +pata_jmicron +pata_legacy +pata_marvell +pata_mpiix +pata_netcell +pata_ninja32 +pata_ns87410 +pata_ns87415 +pata_oldpiix +pata_opti +pata_optidma +pata_pcmcia +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sc1200 +pata_sch +pata_serverworks +pata_sil680 +pata_sl82c105 +pata_triflex +pata_via +pc300too +pc87360 +pc87413_wdt +pc87427 +pcap_keys +pcap-regulator +pcap_ts +pcbc +pcd +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_can +pch_dma +pch_gbe +pch_phub +pch_uart +pch_udc +pci +pci200syn +pcips2 +pci-stub +pcl711 +pcl724 +pcl726 +pcl730 +pcl812 +pcl816 +pcl818 +pcm3724 +pcmad +pcmcia +pcmcia_core +pcmciamtd +pcmcia_rsrc +pcmda12 +pcmmio +pcmuio +pcnet32 +pcnet_cs +pcrypt +pcspkr +pcwd_pci +pcwd_usb +pd +pd6729 +pda_power +pdc_adma +peak_pci +peak_pcmcia +peak_usb +pegasus +penmount +percpu_test +pf +pfuze100-regulator +pg +phantom +phison +phonet +phram +phy-core +phy-generic +phy-gpio-vbus-usb +phy-isp1301 +phy-rcar-usb +phy-samsung-usb +phy-samsung-usb2 +phy-samsung-usb3 +physmap +pixcir_i2c_ts +pktcdvd +pktgen +pl2303 +platform_lcd +plat_nand +plat-ram +plip +plusb +pluto2 +plx_pci +pm2fb +pm3fb +pm80xx +pmbus +pmbus_core +pmc551 +pmcraid +pm-notifier-error-inject +pn533 +pn544 +pn544_i2c +pn544_mei +pn_pep +poc +port100 +poseidon +powermate +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +pppoatm +pppoe +pppox +ppp_synctty +pps_core +pps-gpio +pps-ldisc +pps_parport +pptp +prism2_usb +ps2mult +psmouse +psnap +pt +ptlrpc +ptp +ptp_pch +pvpanic +pvrusb2 +pwc +pwm_bl +pxa27x_udc +qcaux +qcserial +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qlogic_cs +qlogicfas408 +qmi_wwan +qnx4 +qnx6 +qt1010 +qt1070 +qt2160 +quatech2 +quatech_daqp_cs +quickstart +quota_tree +quota_v1 +quota_v2 +qxl +r128 +r592 +r6040 +r8152 +r815x +r8169 +r8187se +r8188eu +r8192e_pci +r8192u_usb +r820t +r852 +r8712u +r8a66597-hcd +r8a66597-udc +radeon +radeonfb +radio-i2c-si470x +radio-keene +radio-ma901 +radio-maxiradio +radio-mr800 +radio-shark +radio-si4713 +radio-si476x +radio-tea5764 +radio-timb +radio-usb-si470x +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid6test +raid_class +ramoops +raw +ray_cs +rbd +rbtree_test +rc5t583-regulator +rc-adstech-dvb-t-pci +rc-alink-dtu-m +rc-anysee +rc-apac-viewcomp +rcar_vin +rc-asus-pc39 +rc-asus-ps3-100 +rc-ati-tv-wonder-hd-600 +rc-ati-x10 +rc-avermedia +rc-avermedia-a16d +rc-avermedia-cardbus +rc-avermedia-dvbt +rc-avermedia-m135a +rc-avermedia-m733a-rm-k6 +rc-avermedia-rm-ks +rc-avertv-303 +rc-azurewave-ad-tu700 +rc-behold +rc-behold-columbus +rc-budget-ci-old +rc-cinergy +rc-cinergy-1400 +rc-core +rc-delock-61959 +rc-dib0700-nec +rc-dib0700-rc5 +rc-digitalnow-tinytwin +rc-digittrade +rc-dm1105-nec +rc-dntv-live-dvb-t +rc-dntv-live-dvbt-pro +rc-em-terratec +rc-encore-enltv +rc-encore-enltv2 +rc-encore-enltv-fm53 +rc-evga-indtube +rc-eztv +rc-flydvb +rc-flyvideo +rc-fusionhdtv-mce +rc-gadmei-rm008z +rc-genius-tvgo-a11mce +rc-gotview7135 +rc-hauppauge +rc-imon-mce +rc-imon-pad +rc-iodata-bctv7e +rc-it913x-v1 +rc-it913x-v2 +rc-kaiomy +rc-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lirc +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +rc-msi-digivox-ii +rc-msi-digivox-iii +rc-msi-tvanywhere +rc-msi-tvanywhere-plus +rc-nebula +rc-nec-terratec-cinergy-xs +rc-norwood +rc-npgtech +rc-pctv-sedna +rc-pinnacle-color +rc-pinnacle-grey +rc-pinnacle-pctv-hd +rc-pixelview +rc-pixelview-002t +rc-pixelview-mk12 +rc-pixelview-new +rc-powercolor-real-angel +rc-proteus-2309 +rc-purpletv +rc-pv951 +rc-rc6-mce +rc-real-audio-220-32-keys +rc-reddo +rc-snapstream-firefly +rc-streamzap +rc-tbs-nec +rc-technisat-usb2 +rc-terratec-cinergy-xs +rc-terratec-slim +rc-terratec-slim-2 +rc-tevii-nec +rc-tivo +rc-total-media-in-hand +rc-total-media-in-hand-02 +rc-trekstor +rc-tt-1500 +rc-twinhan1027 +rc-videomate-m1f +rc-videomate-s350 +rc-videomate-tv-pvr +rc-winfast +rc-winfast-usbii-deluxe +rdc321x-southbridge +rdma_cm +rdma_ucm +rds +rds_rdma +rds_tcp +redboot +redrat3 +reed_solomon +reiserfs +remoteproc +renesas_usbhs +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd_ftl +rfkill-gpio +rfkill-regulator +rio500 +rionet +rio-scan +rivafb +rj54n1cb0c +rmd128 +rmd160 +rmd256 +rmd320 +rndis_host +rndis_wlan +rocket +romfs +rose +rotary_encoder +rp2 +rpcsec_gss_krb5 +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt61pci +rt73usb +rtc-88pm80x +rtc-88pm860x +rtc-ab3100 +rtc-bq32k +rtc-bq4802 +rtc-da9052 +rtc-da9055 +rtc-ds1286 +rtc-ds1305 +rtc-ds1307 +rtc-ds1374 +rtc-ds1390 +rtc-ds1511 +rtc-ds1553 +rtc-ds1672 +rtc-ds1742 +rtc-ds2404 +rtc-ds3232 +rtc-ds3234 +rtc-em3027 +rtc-fm3130 +rtc-hid-sensor-time +rtc-isl12022 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-moxart +rtc-msm6242 +rtc-palmas +rtc-pcap +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf8523 +rtc-pcf8563 +rtc-pcf8583 +rtc-r9701 +rtc-rc5t583 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3029c2 +rtc-rx4581 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtd520 +rti800 +rti802 +rtl2830 +rtl2832 +rtl8150 +rtl8180 +rtl8187 +rtl8188ee +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192se +rtl8723ae +rtl8723be +rtl8723-common +rtl8821ae +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtl_pci +rtl_usb +rtlwifi +rts5139 +rtsx_pci +rtsx_pci_ms +rtsx_pci_sdmmc +rxkad +s1d13xxxfb +s2250 +s2255drv +s2io +s3fb +s526 +s5h1409 +s5h1411 +s5h1420 +s5m8767 +s626 +s6e63m0 +s921 +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7146 +saa7146_vv +saa7164 +saa717x +saa7185 +saa7706h +safe_serial +salsa20_generic +salsa20-x86_64 +samsung-keypad +samsung-laptop +samsung-q10 +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_rcar +sata_sil +sata_sil24 +sata_sis +sata_svw +sata_sx4 +sata_uli +sata_via +sata_vsc +savage +savagefb +sb1000 +sbc60xxwdt +sbc8360 +sbc_epx_c3 +sbc_fitpc2_wdt +sbc_gxx +sbe-2t3e3 +sb_edac +sbni +sbp_target +sbs +sbs-battery +sbshc +sc1200wdt +sc520cdp +sc520_wdt +sc92031 +sca3000 +scb2_flash +sch311x_wdt +sch5627 +sch5636 +sch56xx-common +sch_atm +sch_cbq +sch_choke +sch_codel +sch_drr +sch_dsmark +sch_fq +sch_fq_codel +sch_gred +sch_hfsc +sch_htb +sch_ingress +sch_mqprio +sch_multiq +sch_netem +sch_plug +sch_prio +sch_qfq +sch_red +sch_sfb +sch_sfq +sch_tbf +sch_teql +scsi_debug +scsi_dh +scsi_dh_alua +scsi_dh_emc +scsi_dh_hp_sw +scsi_dh_rdac +scsi_tgt +scsi_transport_fc +scsi_transport_iscsi +scsi_transport_sas +scsi_transport_srp +sctp +sctp_probe +sdhci +sdhci-acpi +sdhci-pci +sdhci-pltfm +sdhci-pxav2 +sdhci-pxav3 +sdio_uart +sdricoh_cs +sdr-msi3101 +sedlbauer_cs +seed +sep_driver +seqiv +ser_gigaset +serial2002 +serial_cs +serio_raw +sermouse +serpent-avx2 +serpent-avx-x86_64 +serpent_generic +serpent-sse2-x86_64 +serport +serqt_usb2 +ses +sfc +sha1-ssse3 +sha256-ssse3 +sha512-ssse3 +shark2 +sh_eth +sh_mobile_ceu_camera +sh_mobile_csi2 +shpchp +sht15 +sht21 +sh_veu +si21xx +si4713-i2c +si476x-core +sidewinder +sierra +sierra_net +sil164 +sir-dev +sis +sis190 +sis5595 +sis900 +sis-agp +sisfb +sisusbvga +sit +sja1000 +sja1000_isa +sja1000_platform +skd +skel +skfp +skge +sky2 +sl811_cs +sl811-hcd +slcan +slicoss +slip +slram +sm501 +sm501fb +sm7xxfb +smb347-charger +smc91c92_cs +sm_common +sm_ftl +smm665 +smsc37b787_wdt +smsc47b397 +smsc47m1 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smsc-ircc2 +smscufx +smsdvb +smsmdtv +smssdio +smsusb +snd +snd-ac97-codec +snd-ad1889 +snd-ak4113 +snd-ak4114 +snd-ak4117 +snd-ak4xxx-adda +snd-ali5451 +snd-aloop +snd-als300 +snd-als4000 +snd-asihpi +snd-at73c213 +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-azt3328 +snd-bt87x +snd-ca0106 +snd-cmipci +snd-compress +snd-cs4281 +snd-cs46xx +snd-cs5530 +snd-cs5535audio +snd-cs8427 +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-emu10k1 +snd-emu10k1-synth +snd-emu10k1x +snd-emux-synth +snd-ens1370 +snd-ens1371 +snd-es1938 +snd-es1968 +snd-firewire-lib +snd-firewire-speakers +snd-fm801 +snd-gina20 +snd-gina24 +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-intel +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1712 +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel8x0 +snd-intel8x0m +snd-isight +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-lx6464es +snd-maestro3 +snd-mia +snd-mixart +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3-synth +snd-oxygen +snd-oxygen-lib +snd-page-alloc +snd-pcm +snd-pcsp +snd-pcxhr +snd-pdaudiocf +snd-portman2x4 +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-sb16-dsp +snd-sb-common +snd-scs1x +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-soc-atmel-pcm +snd-soc-core +snd-soc-si476x +snd-soc-simple-card +snd-sonicvibes +snd-timer +snd-trident +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usbmidi-lib +snd-usb-us122l +snd-usb-usx2y +snd-util-mem +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx222 +snd-vx-lib +snd-vxpocket +snd-ymfpci +soc_camera +soc_camera_platform +soc_mediabus +soc_scale_crop +softdog +softing +softing_cs +solo6x10 +solos-pci +sony-btf-mpx +sony-laptop +soundcore +sp5100_tco +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +spectrum_cs +speedfax +speedstep-lib +speedtch +spi-altera +spi-bitbang +spi-butterfly +spidev +spi-dw +spi-dw-midpci +spi-dw-mmio +spi-gpio +spi_ks8995 +spi-lm70llp +spi-oc-tiny +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-sc18is602 +spi-tle62x0 +spi-topcliff-pch +spi-xcomm +squashfs +sr9700 +ssb +ssb-hcd +ssfdc +sst25l +sstfb +ssu100 +st +st1232 +st_accel +st_accel_i2c +st_accel_spi +starfire +stb0899 +stb6000 +stb6100 +st_drv +ste_modem_rproc +stex +st_gyro +st_gyro_i2c +st_gyro_spi +stinger +stir4200 +stk1160 +stkwebcam +st_magn +st_magn_i2c +st_magn_spi +stmmac +stmpe-keypad +stmpe-ts +stowaway +stp +st_pressure +st_pressure_i2c +st_pressure_spi +streamzap +st_sensors +st_sensors_i2c +st_sensors_spi +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv6110 +stv6110x +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sur40 +svcrdma +svgalib +sx8 +sym53c500_cs +sym53c8xx +symbolserial +synaptics_i2c +synaptics_i2c_rmi4 +synaptics_usb +synclink +synclink_cs +synclink_gt +synclinkmp +syscopyarea +sysfillrect +sysimgblt +sysv +t1pci +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +tc3589x-keypad +tca6416-keypad +tca8418_keypad +tcm_fc +tcm_loop +tcm_qla2xxx +tcm_usb_gadget +tcp_bic +tcp_diag +tcp_highspeed +tcp_htcp +tcp_hybla +tcp_illinois +tcp_lp +tcp_probe +tcp_scalable +tcp_vegas +tcp_veno +tcp_westwood +tcp_yeah +tcrypt +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18271 +tda18271c2dd +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda998x +tdfx +tdfxfb +tdo24m +tea +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tef6862 +tehuti +tekram-sir +teles_cs +test-kstrtox +test_power +test-string_helpers +tg3 +tgr192 +thinkpad_acpi +thmc50 +ti-adc081c +ti_dac7512 +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +timb_dma +timberdale +timblogiw +timbuart +timeriomem-rng +tipc +ti_usb_3410_5052 +tlan +tlclk +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmem +tmiofb +tmp006 +tmp102 +tmp401 +tmp421 +tmscsim +toim3232-sir +topstar-laptop +toshiba_acpi +toshiba_bluetooth +touchit213 +touchright +touchwin +tpci200 +tpm_atmel +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_i2c_stm_st33 +tpm_infineon +tpm_nsc +tpm-rng +tps51632-regulator +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65090-charger +tps65090-regulator +tps65217 +tps65217_bl +tps65217-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps80031-regulator +trancevibrator +tranzport +tridentfb +ts2020 +ts5500_flash +ts_bm +tsc2005 +tsc2007 +tsc40 +ts_fsm +tsi568 +tsi57x +tsi721_mport +ts_kmp +tsl2550 +tsl2563 +tsl2583 +tsl2x7x_core +tsl4531 +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +tua6100 +tua9001 +tulip +tuner +tuner_it913x +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +tusb6010 +tvaudio +tveeprom +tvp5150 +tw2804 +tw9903 +tw9906 +tw9910 +twidjoy +twl6040-vibra +twofish-avx-x86_64 +twofish_common +twofish_generic +twofish-x86_64 +twofish-x86_64-3way +typhoon +u132-hcd +uartlite +ubi +ubifs +ucb1400_core +ucb1400_ts +ucd9000 +ucd9200 +uda1342 +udc-core +udf +udl +udlfb +udp_diag +ueagle-atm +u_ether +ufs +ufshcd +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_sercos3 +uli526x +umc +umem +ums-alauda +ums-cypress +ums-datafab +ums-eneub6250 +ums-freecom +ums-isd200 +ums-jumpshot +ums-karma +ums-onetouch +ums-realtek +ums-sddr09 +ums-sddr55 +ums-usbat +unioxx5 +unix_diag +upd64031a +upd64083 +uPD98402 +u_rndis +usb3503 +usb_8dev +usb8xxx +usbatm +usb_debug +usbdux +usbduxfast +usbduxsigma +usb_f_acm +usb_f_ecm +usb_f_ecm_subset +usb_f_eem +usb_f_mass_storage +usb_f_ncm +usb_f_obex +usb_f_phonet +usb_f_rndis +usb_f_serial +usb_f_ss_lb +usb_gigaset +usbhid +usbip-core +usbip-host +usbkbd +usblcd +usbled +usblp +usbmon +usbmouse +usbnet +usbserial +usb-serial-simple +usbsevseg +usb-storage +usbtest +usbtmc +usbtouchscreen +usbtv +usbvision +usb_wwan +u_serial +userspace-consumer +ushc +usnic_verbs +uss720 +uvcvideo +uvesafb +uwb +ux500 +v4l2-common +v4l2-dv-timings +v4l2-int-device +v4l2-mem2mem +vcan +vcnl4000 +ves1820 +ves1x93 +veth +vfio +vfio_iommu_type1 +vfio-pci +vga16fb +vgastate +vgg2432a4 +vhci-hcd +vhost +vhost_net +vhost_scsi +via +via686a +via-camera +via-cputemp +viafb +via-ircc +via-rhine +via-rng +via-sdmmc +via-velocity +via_wdt +video +videobuf2-core +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-memops +videobuf2-vmalloc +videobuf-core +videobuf-dma-contig +videobuf-dma-sg +videobuf-dvb +videobuf-vmalloc +videocodec +videodev +viperboard +viperboard_adc +virtio-rng +virtio_scsi +virtual +visor +vivi +vlsi_ir +vmac +vme +vme_ca91cx42 +vme_pio2 +vme_tsi148 +vme_user +vme_vmivme7805 +vmk80xx +vmlfb +vmw_balloon +vmwgfx +vmw_pvscsi +vmw_vmci +vmw_vsock_vmci_transport +vmxnet3 +vp27smpx +vpx3220 +vringh +vsock +vsxxxaa +vt1211 +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxge +vxlan +w1_bq27000 +w1_ds2408 +w1_ds2413 +w1_ds2423 +w1_ds2431 +w1_ds2433 +w1_ds2760 +w1_ds2780 +w1_ds2781 +w1_ds28e04 +w1-gpio +w1_smem +w1_therm +w35und +w5100 +w5300 +w6692 +w83627ehf +w83627hf +w83627hf_wdt +w83697hf_wdt +w83697ug_wdt +w83781d +w83791d +w83792d +w83793 +w83795 +w83877f_wdt +w83977af_ir +w83977f_wdt +w83l785ts +w83l786ng +w90p910_ts +w9966 +wacom +wacom_i2c +wacom_w8001 +wafer5823wdt +walkera0701 +wanxl +warrior +wbsd +wcn36xx +wdt_pci +whci +whci-hcd +whc-rc +whiteheat +wil6210 +wimax +winbond-840 +winbond-cir +wire +wishbone-serial +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wl3501_cs +wlags49_h25_cs +wlags49_h2_cs +wlcore +wlcore_sdio +wlcore_spi +wm831x_backup +wm831x_bl +wm831x-dcdc +wm831x-hwmon +wm831x-isink +wm831x-ldo +wm831x-on +wm831x_power +wm831x-ts +wm831x_wdt +wm8350-hwmon +wm8350_power +wm8350-regulator +wm8350_wdt +wm8400-regulator +wm8739 +wm8775 +wm8994-regulator +wm97xx-ts +wmi +wp512 +wusb-cbaf +wusbcore +wusb-wa +x25 +x25_asy +x38_edac +x86_pkg_temp_thermal +xc4000 +xc5000 +xcbc +xen-blkback +xen-evtchn +xen-fbfront +xenfs +xen-gntalloc +xen-gntdev +xen-kbdfront +xen-netback +xen-pciback +xen-pcifront +xen-privcmd +xen-tpmfront +xen_wdt +xfrm4_mode_beet +xfrm4_mode_transport +xfrm4_mode_tunnel +xfrm4_tunnel +xfrm6_mode_beet +xfrm6_mode_ro +xfrm6_mode_transport +xfrm6_mode_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_ipcomp +xfrm_user +xfs +xgifb +xgmac +xillybus_core +xillybus_pcie +xirc2ps_cs +xircom_cb +xo15-ebook +xor +xpad +xprtrdma +xsens_mt +x_tables +xt_addrtype +xt_AUDIT +xt_bpf +xt_CHECKSUM +xt_CLASSIFY +xt_cluster +xt_comment +xt_connbytes +xt_connlabel +xt_connlimit +xt_connmark +xt_CONNSECMARK +xt_conntrack +xt_cpu +xt_CT +xt_dccp +xt_devgroup +xt_dscp +xt_DSCP +xt_ecn +xt_esp +xt_hashlimit +xt_helper +xt_hl +xt_HL +xt_HMARK +xt_IDLETIMER +xt_iprange +xt_ipvs +xtkbd +xt_LED +xt_length +xt_limit +xt_LOG +xt_mac +xt_mark +xt_multiport +xt_nat +xt_NETMAP +xt_nfacct +xt_NFLOG +xt_NFQUEUE +xt_osf +xt_owner +xt_physdev +xt_pkttype +xt_policy +xt_quota +xt_rateest +xt_RATEEST +xt_realm +xt_recent +xt_REDIRECT +xts +xt_sctp +xt_SECMARK +xt_set +xt_socket +xt_state +xt_statistic +xt_string +xt_tcpmss +xt_TCPMSS +xt_TCPOPTSTRIP +xt_tcpudp +xt_TEE +xt_time +xt_TPROXY +xt_TRACE +xt_u32 +xusbatm +xz_dec_test +yam +yealink +yellowfin +yenta_socket +yurex +zatm +zaurus +zd1201 +zd1211rw +zforce_ts +zhenhua +zl10036 +zl10039 +zl10353 +zl6100 +zlib +zr36016 +zr36050 +zr36060 +zr36067 +zr364xx +zram +zte_ev --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/arm64/generic +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/arm64/generic @@ -0,0 +1,14464 @@ +EXPORT_SYMBOL crypto/gf128mul 0x0c2f123f gf128mul_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x1068004b gf128mul_bbe +EXPORT_SYMBOL crypto/gf128mul 0x2f2889a0 gf128mul_init_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x384ef9ce gf128mul_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x56af0dbd gf128mul_x_ble +EXPORT_SYMBOL crypto/gf128mul 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL crypto/gf128mul 0xbd17a0df gf128mul_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0xc0890413 gf128mul_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/atm/suni 0x907ef632 suni_init +EXPORT_SYMBOL drivers/bcma/bcma 0xade9b9c5 bcma_core_dma_translation +EXPORT_SYMBOL drivers/block/drbd/drbd 0x127a5901 drbd_set_st_err_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x35131b36 drbd_role_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x7730f22d drbd_conn_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0xaf27bebf drbd_disk_str +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x0f80a910 dw_dma_cyclic_free +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x42e1bfc1 dw_dma_cyclic_start +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x50d1b09a dw_dma_cyclic_stop +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xa7076172 dw_dma_get_src_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xbc630b61 dw_dma_get_dst_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xe946c73f dw_dma_cyclic_prep +EXPORT_SYMBOL drivers/dma/pl330 0x814ba6b4 pl330_filter +EXPORT_SYMBOL drivers/firewire/firewire-core 0x04d0f641 fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0dbb832b fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0ea4f4a6 fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0f7d6af8 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1017a173 fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x16e91e21 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0x21036b28 fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3a0182d1 fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3bba6262 fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3c56ef91 fw_workqueue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3e63818d fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4bab3a73 fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4e1079eb fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0x5bbfe542 fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x645b715f fw_core_add_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x65c9438b fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x69022b54 fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7750cda7 fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7947080a fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x80d91678 fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x891d5103 fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x8d6fc739 fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x90863005 fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa559973c fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa6363961 fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb84feeee fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc814f570 fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd694e4b5 fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd90fa034 fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe39ee6dc fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe88770a1 fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xeb6a7b34 fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0xfb79703b fw_iso_context_stop +EXPORT_SYMBOL drivers/fmc/fmc 0x0f8dfb0e fmc_free_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x1d00b769 fmc_find_sdb_device +EXPORT_SYMBOL drivers/fmc/fmc 0x2d17ee60 fmc_show_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x4a883961 fmc_device_register +EXPORT_SYMBOL drivers/fmc/fmc 0x50fc176a fmc_device_register_n +EXPORT_SYMBOL drivers/fmc/fmc 0x5c1e38cc fmc_driver_register +EXPORT_SYMBOL drivers/fmc/fmc 0x6330de03 fmc_device_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0x64ed74bd fmc_driver_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0x848f9e58 fmc_device_unregister_n +EXPORT_SYMBOL drivers/fmc/fmc 0xd5648faa fmc_scan_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xe0c67c54 fmc_reprogram +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00025916 drm_mode_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0047020a drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00667d8a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0133413c drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x026c0d6b drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03a72989 drm_rmmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03cf58ac drm_idlelock_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0507572d drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x055e961d drm_sysfs_connector_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05d2f0da drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x078dc304 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a4a2e77 drm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ae4b94c drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c12f6b7 drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c263b28 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c6f58e2 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d15f69a drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0e1cfb38 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0f0caa09 drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0f7787b5 drm_edid_to_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12c6276a drm_buffer_read_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1426623c drm_idlelock_take +EXPORT_SYMBOL drivers/gpu/drm/drm 0x142b8b35 drm_buffer_copy_from_user +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a9a178 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1607177c drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16480977 drm_core_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x17bb0c06 drm_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x189f6401 drm_mm_debug_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x194eadaa drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19e44324 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19fac29c drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a770ac3 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1b0e36ae drm_mode_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1dbf00b3 drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e056d16 drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e1d18fc drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1f98cf74 drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20645642 drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20b37c60 drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22213954 drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x251f44e4 drm_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2520e330 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x277c50ee drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x287e2d8b drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29985cce drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29bf7250 drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a942ab2 drm_mm_insert_node_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2b2f719c drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d80be4d drm_mm_init_scan +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d8b39c3 drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7a4300 drm_rgb_quant_range_selectable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f46b8bc drm_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ffc2416 drm_dev_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x32415a1a drm_calc_vbltimestamp_from_scanoutpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3284860e drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x32f9a5af drm_addmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x34054e5c drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36242304 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36a8f6a8 drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36f91ef3 drm_mm_clean +EXPORT_SYMBOL drivers/gpu/drm/drm 0x380362ec drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38a4f7ae drm_format_num_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38fc8c9e drm_crtc_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x390cbc25 drm_framebuffer_reference +EXPORT_SYMBOL drivers/gpu/drm/drm 0x39f4ff3b drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ac1fef9 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ae7b2d0 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b9d009a drm_format_plane_cpp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d4b8108 drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d6d8e07 drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eb1c6c5 drm_bridge_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eb37b9d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4083c57e drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x40ef3862 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x419e6d90 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x432be4ce drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43384bd9 drm_buffer_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44860780 drm_vblank_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44f76529 drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x46932bba drm_prime_init_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x483e7126 drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x498dcb5e drm_ut_debug_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49fabf0d drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b14da9b drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b982bc3 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4be9f8c7 drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c511235 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ea1f5a2 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e28c07 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0x526f6f71 drm_rect_calc_hscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x52ed0489 drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54aff38d drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55618167 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57dbc274 drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5ab5bb6b drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c31e6c1 drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d7318dc drm_global_item_ref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6090be61 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x629c05e1 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66803841 drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66ac412b drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x676d6488 drm_platform_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6900d335 drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x691802ff drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b6d7375 drm_timestamp_precision +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c9b6271 drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cc3c29e drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cee2e42 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6d3a62f9 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x70464ff6 drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7261bc37 drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x727bf0e7 drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7296edb4 drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x72f49d3d drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x76ca4b35 drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7735b051 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x778c4360 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x783006e8 drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x78993f9b drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x78b52600 drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a0aa399 drm_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a4e7297 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a7f4f60 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7b6dd25b drm_connector_unplug_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7bafa677 drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d43bcfb drm_mode_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7de4cb2d drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7f9ffc6b drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81ba930c drm_mm_init_scan_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81e773e4 drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x82e5830c drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83d9863d drm_mm_dump_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8608d961 drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8758e767 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x87f4d4ff drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x892e0899 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a81c04e drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d94b426 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8de13715 drm_format_vert_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dfb019d drm_buffer_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8e41bbbf drm_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8eff9111 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f7df3a7 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x90ef3467 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9424ff76 drm_pci_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95ddf7f7 drm_mode_group_init_legacy_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9745d638 drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9871cfc8 drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0x98bd8e98 drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9972db48 drm_rect_calc_vscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a31c83b drm_sysfs_connector_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9ab6c60d drm_compat_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9bb7cc8f drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9becbc27 drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d70fc2a drm_rnodes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d760051 drm_addbufs_pci +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9eb90b21 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9eccfe56 drm_mode_hsync +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa0977191 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1f4e9e6 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa28078b2 drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa287dd56 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3a02e8c drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3fa1d5b drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5dbd572 drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa61b584b drm_platform_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa74d1a08 drm_unplug_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa9624745 drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa96acfcb drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa97ddd92 drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa968691 drm_select_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac269f46 drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaddc71bd drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafb0cb6f drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafc2ad1c drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb1fce16f drm_mode_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb228913d drm_pci_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb49df26f drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5540008 drm_global_item_unref +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb572a9f0 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb650aeed drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb78c38fa drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb7f3ac53 drm_mode_create_dirty_info_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8585762 drm_vblank_post_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb938a131 drm_getsarea +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb93d388d drm_vma_offset_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb95b08d4 drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb95beb55 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xba1da649 drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbbedafd3 drm_mode_connector_detach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe001c53 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbebcb7ca drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc08aa7b2 drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc23cbd94 drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc29f4359 drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc306e2b0 drm_vblank_pre_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4000f9f drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc414c422 drm_vblank_offdelay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc591736d drm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc601d861 drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc825da68 drm_bridge_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8301810 drm_core_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc9545897 drm_framebuffer_unreference +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca45efbc drm_format_horz_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca8ace9a drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xccf38211 drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd0fc417 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2335101 drm_fb_get_bpp_depth +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2855dd5 drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd3709131 drm_core_reclaim_buffers +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd7df2598 drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0xda85218e drm_prime_destroy_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbb5a9f5 drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc5b853f drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe1cd408a drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe21e1cc1 drm_get_encoder_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2ef97e4 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe30d07ae drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe3315d8c drm_get_pci_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe51c63ba drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe5bed01d drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6f46e6e drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7197773 drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7e68c7b drm_global_mutex +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb44d82e drm_core_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec8af3cf drm_get_last_vbltimestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0xecf5f354 drm_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee5c871e drm_ati_pcigart_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefdf9b69 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf08d712a drm_mode_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf09846d9 drm_rmmap_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf2123906 drm_ati_pcigart_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf2eabb3c drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf446a0e2 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf55336a4 drm_get_connector_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf8b5b0ee drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9aa7e8e drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9e34d44 drm_pci_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfab0b6fa drm_pci_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb497216 drm_mm_insert_node_in_range_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfca65519 drm_pcie_get_speed_cap_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd063935 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfdc291bc drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfdd0e936 drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe4a68c7 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffc6c87a drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x094b2ba1 drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x098e47d2 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0e9d8444 drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f40746c drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f96ec70 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x163251c8 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1aac1604 i2c_dp_aux_add_bus +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1ff0c06d drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x25a966b8 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34871adf drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x362414b6 drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x42df7a6f drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5f02451f drm_fb_helper_fill_fix +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5f80de27 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6156aa0b drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x61936650 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x61b4c1b3 drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x61f061ce drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x70e816a6 drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x711a004a drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7759f809 drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7ee10762 drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7ff7eb53 drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x844ce71b drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84e924ba drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x925794fa drm_fb_helper_fill_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9468e9d0 drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x949b5a66 drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9969d145 drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa77858bb drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8d6809d drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb32c460d drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc3c300ed drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcaa0c607 drm_fb_helper_restore_fbdev_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd3d18371 drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd615c272 drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe69c55d1 drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe9150fb3 drm_fb_helper_single_add_all_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe9ee0503 drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf63f024b drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x06e8d967 ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0b2238e3 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0bb4c21a ttm_mem_io_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x163fbf32 ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x19e33367 ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1e56516c ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x25f646fd ttm_bo_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x263756e0 ttm_vt_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x26831e8e ttm_mem_io_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x29b106ba ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x29fe1440 ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b54aa9a ttm_object_file_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2c1fc621 ttm_read_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3136eb7b ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x321beb15 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x33dabcbe ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x38ae96c9 ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3e07a2aa ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x42538c98 ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x47312bdd ttm_mem_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x485a5bc0 ttm_ref_object_add +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4a04ab1d ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4a0750f2 ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4a4ce7a1 ttm_bo_synccpu_write_grab +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4c765adc ttm_fbdev_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4e8dd264 ttm_bo_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5425d968 ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x55425c50 ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5570c7f7 ttm_read_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x564e1aee ttm_bo_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x56a5386e ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x57d3c07c ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x591d7b41 ttm_write_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5ee757e7 ttm_vt_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5f0c2c70 ttm_mem_io_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6052860c ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6468bc84 ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6fa23711 ttm_suspend_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6fd81594 ttm_bo_synccpu_write_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x75039829 ttm_mem_io_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7be16bd6 ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80d86f0e ttm_object_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x81c3645b ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8332e88d ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x880a15ad ttm_base_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8ecfe467 ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94894449 ttm_base_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x95d2ff0e ttm_lock_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x998e45c0 ttm_ref_object_base_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9da48f82 ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa0e1f89b ttm_write_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa28d2104 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa4606e09 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa5d6c499 ttm_bo_add_to_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa74d4a2d ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xad6e1a38 ttm_object_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xae038a23 ttm_mem_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xae87b61d ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb47f3e6e ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb490f749 ttm_prime_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb81b0904 ttm_bo_del_sub_from_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc4887450 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc4fa7e98 ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcb5b3620 ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcd0840cc ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xce6e43a8 ttm_base_object_lookup_for_ref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd64c2283 ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd8edb115 ttm_base_object_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdb822e74 ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe6ec87f5 ttm_suspend_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf5eb29ca ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf9ad5511 ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfbc2c5ec ttm_object_file_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfc138e8a ttm_bo_kunmap +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x0903c239 vid_from_reg +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0xef1c781c vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x0e2a6864 sch56xx_read_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x0f5877d4 sch56xx_read_virtual_reg16 +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x34257f35 sch56xx_watchdog_unregister +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x6bf75962 sch56xx_watchdog_register +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xe5022f95 sch56xx_read_virtual_reg12 +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xed1d2a08 sch56xx_write_virtual_reg +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x08c79613 i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x14ba1b2d i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x15c709c4 i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x68e63e30 i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0xb7506400 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0xd6b92f9e amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x407e141b st_accel_common_remove +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x74633f00 st_accel_common_probe +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x02fad7bc hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x19545781 hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x2326ea9d hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x892273bb hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xf08df012 hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x18f36cba hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x5a5edbc6 hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x138e60a0 st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x212cb660 st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x4657b7ed st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x5edebc19 st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x6bee8ff0 st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x72eb7474 st_sensors_sysfs_set_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x90d52e58 st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xaad7a6d3 st_sensors_sysfs_get_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xad6a1c81 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xc5710bd5 st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd8adc45e st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xda5a16ae st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xe41d65f2 st_sensors_check_device_support +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xef00eee5 st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xfc91d194 st_sensors_get_buffer_element +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0xe696be7b st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0xb6051ac5 st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x905e63cf st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x9b2e4000 st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x19559e39 adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x32a50db3 adis_enable_irq +EXPORT_SYMBOL drivers/iio/industrialio 0x00aa0c0d iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x00dd2204 iio_buffer_store_enable +EXPORT_SYMBOL drivers/iio/industrialio 0x04f16cc5 iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0x0c87c814 iio_buffer_show_enable +EXPORT_SYMBOL drivers/iio/industrialio 0x10a9faef iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0x1ce7bd1d iio_buffer_read_length +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x308fe181 iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0x30e5a850 iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0x31797a24 iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x3f7f4ee6 iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0x43626488 iio_buffer_register +EXPORT_SYMBOL drivers/iio/industrialio 0x4cf89fb2 iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0x53332228 iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x5db925dc iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0x699e2a7b iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0x6a522d52 iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0x6bd0903f iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0x94419fb6 iio_buffer_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x94b0169f iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0xd530e326 iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0xd629aeee iio_buffer_write_length +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xeb1bed5f iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xefd694cc iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x6bb8b418 iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x70791cd6 iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x38399bbb iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/kfifo_buf 0xcb16f349 iio_kfifo_free +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xd8422a4f st_magn_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xeb6c6212 st_magn_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x3a485236 st_press_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x5b0c1f06 st_press_common_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x049ace30 rdma_addr_find_smac_by_sgid +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x04b8b6d7 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1641d3c7 rdma_copy_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1c3c0ad3 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x273f4cca rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x446fd7c9 rdma_addr_find_dmac_by_grh +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x4c33e170 rdma_addr_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x4fa3893d rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0xfe6e58a5 rdma_addr_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x067fa96e ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x07a4cb15 ib_send_cm_lap +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x194381b3 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x26925dba ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x2d7c8ba1 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x7d39dcdb ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x7f2a0458 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x830721f8 ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x937ad88f ib_send_cm_apr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9d795ddc ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xa3c0d01a ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xb0be31bf ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xb37a3374 ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xb997c7ce ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xc158e4c8 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xd294e018 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xde221f91 ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x012cb5ac ib_alloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x01f62344 ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06c82fcf mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x07fd538b ib_init_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c1b9ac1 ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c74278f ib_get_dma_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14f84918 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x16bed28f ib_destroy_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x171f99f1 ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x195fa868 ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e491a04 ib_unmap_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1edf34f1 ib_destroy_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1f9e0219 ib_fmr_pool_unmap +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x20fb2604 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22f3cf93 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2701e56a ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x278f6925 ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2cc19f37 ib_dealloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2e1d03b4 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ed6e386 ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3c0979cb ib_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3cff8d8c ib_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3dbc8499 ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3f94197a ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3ffba9a8 ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x418fdf53 ib_reg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x425a8d70 ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x42936a27 ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4aea9f00 ib_create_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4cddd38c ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4d46f4e7 ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50117e97 ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5063f9ae ib_alloc_fast_reg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50dbc447 ib_flush_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x56dd9b9a ib_alloc_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x589d2173 ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5b2e0ad5 ibnl_add_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x634271fc ib_free_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x654550fe ib_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x69563b1f ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6a6d7373 ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6ab242d7 ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e030e26 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x70b50ea4 ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x71bc8177 ib_fmr_pool_map_phys +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x72013a18 ib_find_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7222a4d7 ib_modify_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x755f1b6a ib_resolve_eth_l2_attrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x79d9435c ib_destroy_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7fc4b918 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x815d86ed ib_get_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x85357552 ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x91d2a21e ib_query_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x975a1597 ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9db555a1 ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa25c7a7b ib_destroy_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa432baf6 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa6918f42 ib_get_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaa71ddfa ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac121b7f ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac217df9 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb07d5b66 ib_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb365208d ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb5969da6 ib_dereg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7d06146 ib_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb8b18260 ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbae035e6 ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbf92b3ab rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc32b59ff ib_destroy_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc67f14a5 ibnl_remove_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcb5914bb ib_rereg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcbadbf89 ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcca49b0f ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd01847da ib_dealloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd0bed3f7 ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd31772ea ib_query_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd99f46ac ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda1d718f ib_create_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdac70524 ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdb898818 ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdbf387a6 ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xde7b7f99 ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe44da839 ib_dealloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe567728b ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf1264a13 ib_create_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf249ec60 ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf412067d ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf898e9bd ib_alloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfbf9ea2f ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfc150956 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x04ae1538 ib_register_mad_snoop +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x170074aa ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x27d8fe9b ib_process_mad_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x4451cf10 ib_redirect_mad_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6b7abd22 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6f077fcf ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x72d41ac1 ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7b5d4b7a ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x870acb28 ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x925bfc11 ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x946d5d27 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xb02ec69d ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xb4092a23 ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xcc3505b1 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xd7465a78 ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x17d7368e ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x22f07253 ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x439614a9 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x44076a69 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x576fdbac ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x6f7e97ab ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x7cd1e0f8 ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x89f9534d ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x8ed9af46 ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xd55f86b0 ib_init_ah_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xddc330e7 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xf8da7410 ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2569d757 ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x52a6ce77 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7971c00e ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe350f2aa ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x31557fe2 iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x5d1a0fca iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x5f53d2ec iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x640556f6 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x7e47588d iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x824b6a5d iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xac115fa8 iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xfea317e2 iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x0016a049 rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x12cc306d rdma_set_ib_paths +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1f7bb41c rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x21863d0a rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3c7e01ae rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x65be8fa1 rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7539e1fc rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7c7dcbd8 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x81f78f25 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x8e027fbe rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x9c77b762 rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x9e9c266e rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa93ded4a rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xaa643795 rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc8dd7134 rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xce634c75 rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xddabce2f rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe1cd8aec rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf0e98e23 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf79bb5f1 rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf87893ae rdma_listen +EXPORT_SYMBOL drivers/input/gameport/gameport 0x0263694b gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0x25c2908c gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0x28f29c91 gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0x5da94fa8 gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x757e9a8f __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x795f5767 gameport_start_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x9f4ff79e __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xa54545af gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0xb4fd2a30 gameport_unregister_driver +EXPORT_SYMBOL drivers/input/input-polldev 0x439fe485 input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x65d742ed input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x889838db input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xbb210dbc input_unregister_polled_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0x2a27701b matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x7fb1a5c9 ad714x_remove +EXPORT_SYMBOL drivers/input/misc/ad714x 0xb5d8c0e0 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x65139f7e cma3000_init +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x892d76b2 cma3000_resume +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x89d9444e cma3000_exit +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xca3f100a cma3000_suspend +EXPORT_SYMBOL drivers/input/sparse-keymap 0x0ea35f84 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x23f5c1c3 sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/sparse-keymap 0x5bc954a9 sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0x86fe19c1 sparse_keymap_free +EXPORT_SYMBOL drivers/input/sparse-keymap 0xa166546e sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0xfc1a80db sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x97f83edf ad7879_remove +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0xe82bf2d3 ad7879_pm_ops +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0xfcb2bbc1 ad7879_probe +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x04403fcf unregister_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x14f2aa5a capi20_get_version +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2b8eab1f capilib_free_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2baa6586 capilib_new_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2d720848 attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x31c24aa4 capi20_isinstalled +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x38e537c0 capi20_register +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x47d3fc51 capi_info2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x50b33ca4 capi_cmsg2message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x56cfb5d8 capi20_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x5ca12d87 capi_ctr_resume_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6057c6f3 capi_message2cmsg +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x60da7a00 capi20_put_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x62e32d43 capilib_data_b3_conf +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x71e8d5ba capilib_data_b3_req +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7292ab34 cdebbuf_free +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x72a25a72 capi_cmsg2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x734c0d2d capi_ctr_down +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7a33596c capi20_get_serial +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7e6f1307 capi20_get_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x8f699913 capilib_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x932fd883 capi_ctr_suspend_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9f823278 register_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xaa165d27 capilib_release_appl +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb19fda8d capi_cmd2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb60e5e5f capi_cmsg_header +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc0edb89a detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xdd6d2804 capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe19a11ac capi20_get_profile +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xed061606 capi20_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xf8a8e33e capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xfd552f7a capi_message2str +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x0a748135 avmcard_dma_alloc +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x12da78a9 b1_getrevision +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x1e11bd26 b1_loaded +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x2292ae7b b1_parse_version +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x4cfd88ad b1_load_t4file +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x55617e2c avmcard_dma_free +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x5aab80d2 b1_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x7202607c b1_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x7206cb6d b1_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x85f09690 b1_irq_table +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x8e4ae48b b1ctl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xa7219945 b1_free_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xbe22ff35 b1_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xce6087c3 b1_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xdfd28376 b1_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xed742327 b1_alloc_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xf555b5f5 b1_load_config +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xfa10fee4 b1_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x1e6d9857 b1pciv4_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x259d649c t1pci_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x3d6fb819 b1dmactl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x78ae9650 b1dma_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x7a7ab465 b1dma_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x85153009 b1dma_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xd6f9f1ea b1dma_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xefeb87e2 b1dma_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xf6bc54b1 b1dma_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xff02f58e b1dma_reset +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x2974ead1 DIVA_DIDD_Read +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x7ab59853 proc_net_eicon +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x083b370e mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x6bc61de8 mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x8d5f312c mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x95482fc3 mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x61a11b3c mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x7e8d40c9 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x07f4f2ce hisax_unregister +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x148f0c99 FsmFree +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x7f29ce36 FsmInitTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x93a64734 FsmChangeState +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x9df0cd27 FsmEvent +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xd49fc6b2 hisax_init_pcmcia +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xe227344e FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xee93522c hisax_register +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xf0a16657 FsmNew +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xfc27303b HiSax_closecard +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xff2db2cf FsmDelTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x03ade283 isac_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x08c85a6c isac_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x3f3b323a isac_d_l2l1 +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xa70535a8 isacsx_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xc3e42974 isac_init +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xc7369865 isacsx_irq +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x09f3e4d4 register_isdn +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x0ac8afee isdn_ppp_register_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xd8534458 isdn_ppp_unregister_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xfa06820f isdn_register_divert +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x3b71e4fc isdnhdlc_decode +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x59cc8a7e isdnhdlc_out_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x8ee38862 isdnhdlc_rcv_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0xfd9d4c09 isdnhdlc_encode +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x1db4349a recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2348cc3c mISDN_FsmFree +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2ce57600 mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x3327c522 mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x3f36c3b6 create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x3f3c39ff get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x41e92605 mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x43392420 bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x5083c3d8 recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x54451388 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x610c75ec mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x614ede30 mISDN_FsmAddTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x623cd06d mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6ace7207 mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x85ae3802 mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8a4e99fb mISDN_clock_update +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x92f1941e dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9398b5e3 mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x96309324 mISDN_FsmDelTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa2b7a8c2 mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xabb55f9a mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xadb25692 mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xae408c83 get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbcf2e7a8 queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc51e4557 recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd285995f mISDN_clock_get +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd500e433 recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd5145151 mISDN_FsmEvent +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe87943cf mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf3abf1d2 bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf9e7832f mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xff8fdb44 recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x01087af0 mISDN_dsp_element_unregister +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x60721da7 dsp_audio_law_to_s32 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xa215f1b2 dsp_audio_s16_to_law +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xb98308d8 mISDN_dsp_element_register +EXPORT_SYMBOL drivers/md/bcache/bcache 0x192915fc closure_put +EXPORT_SYMBOL drivers/md/bcache/bcache 0x2f67c905 closure_trylock +EXPORT_SYMBOL drivers/md/bcache/bcache 0x3b250e8f closure_wait +EXPORT_SYMBOL drivers/md/bcache/bcache 0x6d9806f1 closure_sub +EXPORT_SYMBOL drivers/md/bcache/bcache 0x6e6426c2 closure_sync +EXPORT_SYMBOL drivers/md/bcache/bcache 0xda3dbd18 __closure_lock +EXPORT_SYMBOL drivers/md/bcache/bcache 0xe3c17af1 __closure_wake_up +EXPORT_SYMBOL drivers/md/dm-log 0x5ede63c7 dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0x7bde8c61 dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-log 0xb081ee47 dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0xb4f6c3f5 dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x11775290 dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x3a8b94f8 dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x62be6160 dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x699d8108 dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0x69d667d7 dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0x8e07e692 dm_snap_cow +EXPORT_SYMBOL drivers/md/raid456 0x06f62796 raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x04794296 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x15449deb flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x182ed8a8 flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x2c66691e flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x2ea576b6 flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x465bdbbf flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x48040239 flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x61859480 flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x82ad3919 flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x9e43058b flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xca50d628 flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xdf759038 flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xe82e5625 flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x495e4b0c btcx_calc_skips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x76816144 btcx_riscmem_alloc +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xad2fe38b btcx_sort_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xba1fc42e btcx_riscmem_free +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xc368f8e6 btcx_align +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xcda0ded2 btcx_screen_clips +EXPORT_SYMBOL drivers/media/common/cx2341x 0x0aa812dc cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0x10192026 cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0x1ca0c084 cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0x2f25eee2 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0x3db8be82 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cx2341x 0x4d2e178d cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0x5b88faf6 cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc184ec1e cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf76ce95 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf8b77a4 cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xe4e91374 cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/tveeprom 0x1180cea1 tveeprom_read +EXPORT_SYMBOL drivers/media/common/tveeprom 0x55296d85 tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0b3c9ae6 dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0e19663d dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0f41660f dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1254a145 dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x17523ce7 dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1ec0d0ed dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x23f9eeb9 dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x26b5b763 dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2975b9bd dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2b9ceff3 dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2cd2a82c dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4b96de00 dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5ab4496e dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5c334873 dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5d8241a3 dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5fc048d3 dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x6162bb45 dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x6704cb40 dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x6b7b3117 dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x6e5ce4ae dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x74a5a698 dvb_filter_pes2ts_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7b943aaa dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7caa224e dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80e3832d dvb_filter_get_ac3info +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8a744ecc dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9510a851 dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9d618a63 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa10e976c dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa257994a dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa55023d1 dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xab56e804 dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xac4ca1b0 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xae74053c dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xaf709b01 dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb51df18a dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc3c77f8d dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd68a099e timeval_usec_diff +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe5ae8707 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe60d865f dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf13ca57e dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf23a08e3 dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf826deb0 dvb_filter_pes2ts +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf902ccf5 dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfc029105 dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0x4bbff9c3 bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0x97dca1ae cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0x599a5b71 cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x8729e3f0 cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0xd94cf185 cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0xb5374959 cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x11ce8655 cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xdbb8bc89 cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0x64140552 drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0x39d037ac ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0x841590ea dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0xccbfb90c isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0xb79ff5c7 isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0xec52692c isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0xc2f70796 itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0x2ea73dd3 l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0xff3af5d4 lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0x7b0fac99 lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x37c83b38 lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0xdf971cbd lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0x3a129f62 mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0x03709581 mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0xcb357211 mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0xf1b95b10 nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0xe0f8a78d nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0x70c3b7f7 or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0x5667693b or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0x2d65d774 s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0xb9700ef3 s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x6ad2a39f s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x82788fd7 s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0xf2b63340 si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0x86e0419a sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0x1e7cb841 sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0x84644361 stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0x7961f63d stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0x33eabbdc stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0x7e6ceb9b stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0xa1830da6 stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0x89d7a10f stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0xf4109c81 stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x8dc8521c stv090x_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0xa1b655a3 stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0x70ea29ee stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0xefeffd90 tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0xa582b9da tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0x40fc4f96 tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x1287d887 tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0xc2eb4b93 tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0xf3a2b8fd tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0xa58b49b8 tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0x1cf8d1a2 tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0xd0448e23 tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0x24b3ef36 tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0x8a51793b ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0xe3707d70 tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0xa4704c57 ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0x52d9686b ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0x7a02de8d zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0xec5bf51b zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0xfea08b38 zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x1c17c4cf flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x74e854cd flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x953f9fed flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xb8fa9c83 flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xd7c01970 flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xd96330b4 flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xf0532b31 flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x75e48112 bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x84aeced7 bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xc130da28 bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xd5d0bdef bt878_num +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xde17593c bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x11dc4b6d bttv_gpio_enable +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x867c9a60 bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xa1527852 bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xe7c1b955 bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x2bb5f420 dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x3fc7ef4d write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x43e25cc4 dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x58564156 rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x766419d6 dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x920ac2ee read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x97d4e670 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x9add8c0c dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe94b8c9c dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xec5eb199 dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0xd660174d dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x17c2c307 cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x3cf51abc cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x568c7882 cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x7b58881d cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xc1e731f2 cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x1079b75a cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x6761ffbd cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x77920a62 cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x784853c3 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x968deb8a cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xc5d38741 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xe44f48a6 cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xed6ecb77 cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x6a9c42d5 vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0xdf26e2e5 vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x02cc8fda cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x1a190cd9 cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x3488e7ab cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x87b98725 cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x3b4ef683 cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x3e61a570 cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x4f096c3c cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x5a44b9b8 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x941c6b1b cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xf809a364 cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x04c8acd0 cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x0af71a4e cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1bf5d61f cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x29d59fc0 cx88_free_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x2f910b53 cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x3310a99d cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4216fc84 cx88_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x463eabe0 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4f64156b cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x5699a923 cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6141c8c5 cx88_tuner_callback +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6d3dbb5f cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7642ed3c cx88_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x904b8696 cx88_audio_thread +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x9134a1e9 cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x96444db2 cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x966b71db cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x98147323 cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x9e553e3f cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xa219245d cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xaf9e0251 cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xbc7ea440 cx88_risc_stopper +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xbc9c874c cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc8ec01dd cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd9650905 cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf02bf1f0 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x079861de ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x08d9139d ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x17328e35 ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x326865c6 ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x3c84b162 ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x5e5a35dc ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x6334114e ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x692b071c ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x6d3dbb4c ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x735fda4c ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x74ee0d96 ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x92d48203 ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb2b45416 ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb50a1080 ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xcad8f14e ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xd89001a1 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xdc53bedb ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x04e83446 saa7134_tuner_callback +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x095e9159 saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1211df5d saa7134_devlist +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1324b164 saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x221229c3 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x37124161 saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x4ecba571 saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x4fd64845 saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x632ba389 saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x6a653126 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x6a7ab6e3 saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x73039031 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xa37f5061 saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xc3b671b0 saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xf1f6a952 saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xc3e4c127 ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xde20ac7a ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x0f77474e soc_camera_host_unregister +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x28e9430d soc_camera_apply_board_flags +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x6d34148d soc_camera_xlate_by_fourcc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x770955e7 soc_camera_power_off +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x859272ae soc_camera_power_init +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x9a0e109d soc_camera_power_on +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x9b00542e soc_camera_unlock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xaa9e65cb soc_camera_lock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xdeab4daf soc_camera_host_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x25c52d97 soc_mbus_samples_per_pixel +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x2863728e soc_mbus_image_size +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x5f3e3558 soc_mbus_bytes_per_line +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xa9546115 soc_mbus_find_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xc8b28da5 soc_mbus_config_compatible +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xfe2c3a07 soc_mbus_get_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x2b22a16b soc_camera_client_s_crop +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x355e4626 soc_camera_client_scale +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x60d96986 soc_camera_calc_client_output +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x71f16a7a soc_camera_client_g_rect +EXPORT_SYMBOL drivers/media/radio/tea575x 0x2afccdf7 snd_tea575x_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0x43f2a8f7 snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xab67f665 snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0xbe5a717a snd_tea575x_exit +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x04dca738 lirc_unregister_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x1155152b lirc_get_pdata +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x28ac1db4 lirc_dev_fop_open +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x4f50d055 lirc_dev_fop_close +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x5613624f lirc_dev_fop_read +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x62fa7980 lirc_dev_fop_poll +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x75be5f17 lirc_register_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xc867e601 lirc_dev_fop_ioctl +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xdbecc9ee lirc_dev_fop_write +EXPORT_SYMBOL drivers/media/rc/rc-core 0x915a4126 ir_raw_handler_register +EXPORT_SYMBOL drivers/media/rc/rc-core 0xe04582a2 ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0x7e79109f mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0xb54fa010 mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0xb9e89292 mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x0cb4b189 tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0x7813283b xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0x4377496d xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0x3125960c xc5000_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x42c8e001 v4l2_ctrl_next +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x4adaf0f3 v4l2_ctrl_query_menu_valid_items +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x53c9394f v4l2_ctrl_query_menu +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x5f96a661 v4l2_ctrl_check +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0xabe27502 v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x6a73c405 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x8f5b50c5 v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xfc181179 v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x1ddf1142 videobuf_dvb_register_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x46a620f8 videobuf_dvb_get_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xe09ce7af videobuf_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xe895909a videobuf_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xf6db367d videobuf_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xff17471c videobuf_dvb_find_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf2-core 0x6428b522 vb2_querybuf +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x070644f8 video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0c080f71 v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0c56fa55 video_usercopy +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x140e371b v4l2_of_get_remote_port_parent +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x150011f5 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x18760ae0 v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1d089659 v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1f09c418 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1f64fd35 v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x26681a99 v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2a7c424d v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3133c04b v4l2_subdev_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3357a61a video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x34a546a9 v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x36847d11 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x36f793ea v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3c919b96 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3c97516a v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3d861f9d v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3db7f213 v4l2_of_get_remote_port +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3e04264c v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x40d26a3f v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x40eed9a2 v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x41664496 v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x45aa3207 v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x46899812 v4l2_ctrl_add_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x495426ee v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x572109bc v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x62956e94 v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6c402d4b v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6d51a432 v4l2_subdev_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6f1b8d81 v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x769b2534 v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x79130fd1 __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7a3cd015 v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7e8acd74 v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7f923f2a v4l2_of_parse_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8871f6c9 v4l2_subdev_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x890765c2 v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8d93b851 v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9545b8f3 video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x99895034 v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9de6383f v4l2_subdev_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa4220569 v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa645e2e1 v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xaf21d341 v4l2_subdev_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xaf282fd3 video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb474bae3 v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb90cbedf v4l2_of_get_next_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xba694deb v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbac4a225 v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbb8331eb v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbcb4ea89 v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbdf4e05f v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc12cf8f8 v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc20e6558 v4l2_subdev_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc22ca84b v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc9b9e220 v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd1c28478 v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdc34b02d v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe173c16d v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe3443e03 v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe6b254bf video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe6fce6f2 v4l2_ctrl_merge +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe9ad852a v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe9ce21f6 v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xec60ea5b v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xed72cc57 video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xed993996 v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xeddc3d8f v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xeee59f80 v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf04236c7 v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf0e1bb65 __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf10c3597 v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xff6e42f2 v4l2_subdev_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xffb6312a v4l2_async_register_subdev +EXPORT_SYMBOL drivers/memstick/core/memstick 0x1ed73565 memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x235ae363 memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0x2e7546a5 memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x31d0e887 memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x38f62465 memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5d820a02 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa06247cf memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa47034fd memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xb390287c memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xc03b86a3 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xc2e5536f memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0xc31530a8 memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xd67c6eb4 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0xdc07e67e memstick_init_req +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x006860cf mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1421caa9 mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x18d76fd6 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1aa68b5e mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1ba551ea mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x20b9444d mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2109ff33 mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x249e5fd2 mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x291d101f mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2e25581d mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x30d5923e mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x352220bc mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x39584ac5 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4526289b mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x554c17a2 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6dd3ee4f mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7b812707 mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8113ef8b mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x953d84c7 mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9ef4f938 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xaa888c96 mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc0089c0c mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc0e69f82 mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc47c22e8 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd20bcfb3 mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd9a92a75 mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe17df183 mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe2c8e8f6 mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xefa5a1b3 mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf0f72ea1 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xfd7d71f4 mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0b418bfc mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0ee02b02 mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x21bea557 mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x29111162 mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2ccd925a mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2d7b1963 mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x31b8ecae mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x42c49a8c mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x42ede737 mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x50047049 mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x558fe0d7 mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x592dcc73 mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x664ac37d mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x6fd35f9a mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x70d5d279 mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x7357acd0 mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x761a2a98 mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8025994f mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8c0fa0e7 mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x95084e35 mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9d8d98a3 mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xa2c7ef29 mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xc5e1e2f4 mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe44b7b8c mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe6b76fda mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x076d89ae i2o_parm_field_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x28119a73 i2o_find_iop +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2a843bef i2o_dump_message +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x3345bb47 i2o_cntxt_list_add +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x37d86035 i2o_msg_get_wait +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x488a0d1a i2o_cntxt_list_get_ptr +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x5959289b i2o_event_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x6945d651 i2o_driver_notify_controller_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x6bd2239b i2o_device_claim +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x71c1979f i2o_iop_find_device +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x7201b5fe i2o_cntxt_list_remove +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x770c7e06 i2o_driver_unregister +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x7af2f970 i2o_device_claim_release +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x80cbcf0f i2o_driver_notify_controller_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x878e0ebf i2o_cntxt_list_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x93b597e9 i2o_driver_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x9c47ac0a i2o_driver_notify_device_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x9f6aab1b i2o_msg_post_wait_mem +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x9f8cedf6 i2o_exec_lct_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xa1560d67 i2o_driver_notify_device_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb4c00dcf i2o_controllers +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xbf7c048c i2o_parm_table_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xdee0dd21 i2o_status_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xfdd2b9bf i2o_parm_issue +EXPORT_SYMBOL drivers/mfd/cros_ec 0x2fbaa44a cros_ec_register +EXPORT_SYMBOL drivers/mfd/cros_ec 0x59aa6f15 cros_ec_remove +EXPORT_SYMBOL drivers/mfd/cros_ec 0xe434a9e7 cros_ec_prepare_tx +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x233c49a1 pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x8035cde0 pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x2330f023 mc13xxx_irq_request_nounmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x3e88ff40 mc13xxx_irq_ack +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x63a10b4a mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x6649810c mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x717ca981 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x8cb40cee mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x8e7fe621 mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x92e534da mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x97f93510 mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb37784b6 mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb85b75f7 mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xcf8c0f1e mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xe5d2f536 mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/tps6105x 0xa9c93ad4 tps6105x_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0xd5c619b0 tps6105x_get +EXPORT_SYMBOL drivers/mfd/tps6105x 0xe02aa2c3 tps6105x_mask_and_set +EXPORT_SYMBOL drivers/mfd/tps65010 0x02d4ad0f tps65013_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0x0c6ad2cf tps65010_config_vdcdc2 +EXPORT_SYMBOL drivers/mfd/tps65010 0x28485130 tps65010_config_vregs1 +EXPORT_SYMBOL drivers/mfd/tps65010 0x33739de7 tps65010_set_vib +EXPORT_SYMBOL drivers/mfd/tps65010 0x9fd44c69 tps65010_set_led +EXPORT_SYMBOL drivers/mfd/tps65010 0xb14080cc tps65010_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0xd5bb106d tps65010_set_vbus_draw +EXPORT_SYMBOL drivers/mfd/tps65010 0xe99b3f36 tps65010_set_gpio_out_value +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0xbf257252 ad_dpot_probe +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0xefcf63c3 ad_dpot_remove +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0xe54b1002 altera_init +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x3293999e ssc_request +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x6b52bfaa ssc_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x0e9755b9 pwm_channel_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5a8b82f9 pwm_channel_handler +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5d5c2951 pwm_clk_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x6a5e1f70 pwm_channel_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x73330c97 pwm_clk_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0xeb7f2c6f __pwm_channel_onoff +EXPORT_SYMBOL drivers/misc/c2port/core 0x2e310400 c2port_device_register +EXPORT_SYMBOL drivers/misc/c2port/core 0x8176bdb6 c2port_device_unregister +EXPORT_SYMBOL drivers/misc/ioc4 0x06644480 ioc4_register_submodule +EXPORT_SYMBOL drivers/misc/ioc4 0x81e99d0d ioc4_unregister_submodule +EXPORT_SYMBOL drivers/misc/tifm_core 0x20b471d5 tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x3bb201f8 tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x40d817f6 tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0x59d296f4 tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x5b7409d0 tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x70403c62 tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x9fef04b0 tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xa8c2ec46 tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0xbc191aba tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xbfc8f362 tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0xc39f9cd2 tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xc71d1599 tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0xe3dd07bc tifm_remove_adapter +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0x04324a86 mmc_spi_get_pdata +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0xe7a91da6 mmc_spi_put_pdata +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x434d448e cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xd7becde2 cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xea653905 cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x2d445251 map_destroy +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x59717c28 unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x60c9690b do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x99c40663 register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0xe41c6fd8 mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0x34ee3192 lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0x9474f682 simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0x4e5aca62 mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/mtd 0x9a2812a5 mtd_concat_create +EXPORT_SYMBOL drivers/mtd/nand/denali 0x08b894dd denali_init +EXPORT_SYMBOL drivers/mtd/nand/denali 0xf33cb08b denali_remove +EXPORT_SYMBOL drivers/mtd/nand/nand 0x3caed5ff nand_unlock +EXPORT_SYMBOL drivers/mtd/nand/nand 0x80475d8c nand_lock +EXPORT_SYMBOL drivers/mtd/nand/nand 0xbc3cdcdb nand_scan_tail +EXPORT_SYMBOL drivers/mtd/nand/nand 0xd2caacda nand_scan_ident +EXPORT_SYMBOL drivers/mtd/nand/nand 0xdc3c48fc nand_scan_bbt +EXPORT_SYMBOL drivers/mtd/nand/nand 0xf078b9e3 nand_scan +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x03de6090 nand_bch_init +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x238ab533 nand_bch_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x564c19a7 nand_bch_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x70097aa0 nand_bch_free +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x0cfbc2a2 nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x3132ee65 __nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xb4b94377 __nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xce189ef7 nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0x57a31e57 nand_flash_ids +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0xa336feb7 nand_manuf_ids +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x1508dfc8 onenand_default_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x2d0db6f8 onenand_addr +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x689f7fd3 onenand_scan_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x884a9e39 flexonenand_region +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x015f9c3c arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x06e8a02d arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x10af24c1 alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x16b3ca43 arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x198b1f17 arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x360d94b6 arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x3fa95b2b arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x94d42759 arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x9ad8d2af arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xe318ccee arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x3bf119e3 com20020_check +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x827f712a com20020_netdev_ops +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xddb17d71 com20020_found +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x09fe79c4 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x1426f841 ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x1592d879 ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x17c24bc4 ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x205e74c8 ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x304ba583 ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x3338a104 ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x3a6eea7b ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x613332a7 __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xf614fc2c ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x86802cf8 cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x1c302e36 cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x1ebc4f7b cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x469ce666 cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x50d96b15 t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x59ec0229 t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x5ad0f778 cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x61e4e173 t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x8534fd59 cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x8cf23b69 dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x92c9e110 cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x9aa34b9f cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xb58e2c7f t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xbec69d92 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xc9afa664 cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xcc72f09f cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xd7c9cbf6 t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x09810653 cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0e965d36 cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0eb02276 cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x13d94533 cxgb4_enable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x16eac327 cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2ad32575 cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x37ed4f88 cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3e492533 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3ee11e5d cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x556e365b cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x63577c22 cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x64145c6b cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x65f81bdc cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x67fb07ab cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x684cfc03 cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6d24ac22 cxgb4_disable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x834481fa cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x842ec0ec cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x872c7ef7 cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9641a92e cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9d7182ed cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa20c5432 cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb28edf3d cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb5e08a67 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd00e5a36 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe12ea1ba cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf25547d3 cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf7bd2a82 cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xff4a4b03 cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x0e712340 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x11a6e4ba enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x4f650da7 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x541f0104 vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9196d804 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xacca3e23 vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x368d282a be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x45c7b635 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xbab62e22 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x019a09fb mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x07cb2cb6 mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x22b124dc mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x23d7a5e0 mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x27435c7f mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x27efb450 set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x312fbf43 mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3178b8c4 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3c743daa mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x69715666 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6ae50d48 mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6dcf4e0e mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7f910d22 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8256bbce mlx4_set_stats_bitmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9b5d7536 mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9ee5a9cf mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9f7d76e0 mlx4_test_interrupts +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa3b6b744 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa601cffa mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd410d03e mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd7e34bde mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdf88b26a mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe6f07173 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf227e6f1 mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x08598bb5 mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1a3fe383 mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x21dc46cd mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x281c4bb5 mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2b6d0a17 mlx5_core_create_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3fcd3169 mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x477bb083 mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4b85b6b5 mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4c69e483 mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4fa9a01f mlx5_dev_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5033327f mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x53cb4c66 mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5f01f7bd mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x611fce20 mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x69daf348 mlx5_dev_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7b1dfb05 mlx5_core_dump_fill_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7d46e1b6 mlx5_core_get_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7e4b58bd mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x80b1dfc0 mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8b84128b mlx5_core_arm_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x941b619c mlx5_core_destroy_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9ec351eb mlx5_core_query_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa2b3ce2c mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb5181cc9 mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd0d592fc mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe4d19dc3 mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf060bc7c mlx5_cmd_comp_handler +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x4374ff18 hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x82099336 hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xb90be984 hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xcd949773 hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xdfcead19 hdlcdrv_register +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x19640ddf sirdev_write_complete +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x1ec52a03 sirdev_raw_read +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x7bcc8486 sirdev_get_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x9afd71ae sirdev_receive +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x9e20c86f sirdev_raw_write +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xa0921953 sirdev_set_dtr_rts +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xa67e4c78 irda_register_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xb9af9c17 sirdev_put_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xc4def5b9 sirdev_set_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xf86ad92b irda_unregister_dongle +EXPORT_SYMBOL drivers/net/mdio 0x22bce513 mdio_mii_ioctl +EXPORT_SYMBOL drivers/net/mdio 0x43e4defc mdio45_nway_restart +EXPORT_SYMBOL drivers/net/mdio 0x7577f992 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0xa1a29548 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0xb34a7575 mdio45_ethtool_spauseparam_an +EXPORT_SYMBOL drivers/net/mdio 0xc6b1163f mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0xddc98749 mdio45_ethtool_gset_npage +EXPORT_SYMBOL drivers/net/ppp/pppox 0xa285d457 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xa7cd2593 register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe4130577 pppox_ioctl +EXPORT_SYMBOL drivers/net/sungem_phy 0x76e8c2ed sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x1a7a99c7 team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0x1b7a1059 team_options_register +EXPORT_SYMBOL drivers/net/team/team 0x29b37397 team_mode_unregister +EXPORT_SYMBOL drivers/net/team/team 0x3097ff28 team_mode_register +EXPORT_SYMBOL drivers/net/team/team 0xb7cc650d team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0xd48e05f9 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0xe124a061 team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0xf6f3da2f team_modeop_port_enter +EXPORT_SYMBOL drivers/net/wan/hdlc 0x1df1f2e7 hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0x24b40002 hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x2b1b6b0f register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x43f63f06 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0x46f31b60 hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0x6229d228 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xa5a31281 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xbb0caa98 alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0xbfc751d2 hdlc_change_mtu +EXPORT_SYMBOL drivers/net/wan/hdlc 0xc5d90567 hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0xf7ca0599 unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x1a574b44 ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x2a775236 ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x319c6026 ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x340bf3af dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4e2481d5 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x53358ce3 ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x5dc6fda1 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x81965004 ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x909fca67 ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xa7bbfed3 ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xa9241d2a ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xba16a963 ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xbc56a01c ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xc6ba4da3 ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0486e499 ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0fe7a70e ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x1322e023 ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x59ca22a6 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8246be6c ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x895f9dc2 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x91478e0d ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaf096710 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xea42e4a0 ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0199ec46 ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x06ffd3aa ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x16543b7b ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x27cf1694 ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x35641a41 ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4c6ddcb4 ath6kl_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4e1380ee ath6kl_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x7ac23647 ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x8a1960a6 ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xa2d84c91 ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xb36648a3 ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xb86b3811 ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xf296b201 ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xf891e95d ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x3f7bf20d ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x5ddd7cf4 ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x5f389998 ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xf8c7828a ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x03cb0a6e ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0890ccd1 ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x09085737 ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0ae30eb0 ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0df3c3df ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0e2a9115 ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x11a4d6de ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x13864975 ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x14692ef1 ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x152d25fe ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x15d42282 ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x17828882 ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1893a714 ath9k_hw_cfg_gpio_input +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x18df0145 ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x19a52f76 ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1a6d7a91 ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1bfa8859 ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1c9e7739 ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1e459d63 ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1f307100 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x20b68087 ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2c0eb038 ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2c8576b1 ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2da90850 ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2f9857b0 ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2fe8f311 ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x348a0476 ath9k_hw_cfg_output +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x360924e3 ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3882c38b ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3dda9505 ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3e50ab59 ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4564a5a3 ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4ac4e13e ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4e3efd26 ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x502a5234 ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x511a7b6f ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5152e297 ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x51e333c2 ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x54809074 ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x55ccec77 ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5ae1981e ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5c484bae ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5cf08178 ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5d42b93c ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6095a090 ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6132f48e ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x62864f98 ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x64421fcf ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x65e13336 ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x697b3297 ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x69fa97d7 ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6bfe34d4 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6cc8d8e6 ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6e5a2dbd ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x71d6e16b ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x72d503bc ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x72e93f1e ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x74384151 ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7e616013 ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8046eb0c ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x820663a1 ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8454dffb ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x84c170f6 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x86bb145c ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x890c4c87 ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8f22c036 ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x905709f4 ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x95b7589d ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x96857126 ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9a123e2f ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9e4402da ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa35361c2 ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaade0479 ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xae7bf465 ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb117168c ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb84078cd ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb974e01f ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbdb87925 ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbf39e310 ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc3796ae2 ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc42ca7a8 ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc5f6c1cb ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc66b6b2d ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc75fa651 ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc7d4c106 ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcde9c74e ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd00108a0 ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd4d761db ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xda4a34ed ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe2777b94 ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe5914dd0 ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xea002131 ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf2285789 ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf8d28e08 ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfa4861e3 ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfa604bcd ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfaeec554 ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xff53fd55 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/atmel 0x0da00ab9 atmel_open +EXPORT_SYMBOL drivers/net/wireless/atmel 0x15ebe419 init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel 0x1cc064e7 stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0x7a075cf8 brcmf_sdio_probe +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0xde2ca6a4 brcmf_sdio_remove +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x0b324391 brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x0cd65394 brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2dc227f8 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x3306b6a1 brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x478bc754 brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x48286a7e brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x68616924 brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x73674924 brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x877737b1 brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x8b391d34 brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xc3002db0 brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xc7abaf33 brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xeb478434 brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xee1a0b0d brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x0dd157ed hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x11bc918a hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x1723ac32 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x1a2b2041 hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x3a30d197 hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x458cfae9 hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x46291fcf hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x56e211bc hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x5d36c5cd hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x60fb6646 prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x69caaa77 hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x725a152c hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x817f7114 hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa12ad27f hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xac8bb56d hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xad653849 hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xae352c76 hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb2a945e0 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb900daac hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xd86f0ceb hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xded0fea5 hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xdfc984e4 hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe0d3ae2b hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe42fbbfc hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe4fe4abc hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe55ce7c8 hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xf8fae6d1 hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xf9380d3f hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x16948142 libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x19adc1a2 libipw_rx +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x1d562efe libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x23c70cd3 libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x25416367 libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x36e729d2 libipw_change_mtu +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x5dafd207 libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x695f5668 libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x76649a95 libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x782e25a4 libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x7b8e1d7b libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x87e19357 libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x8c62accb libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x94ddc782 libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x9d7a28c3 libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xb387e3ac libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xba4e8865 libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xcdfb357e libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xd6c8a9c9 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xeb859a8e libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xf45355e0 free_libipw +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x05a83a5d il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0619b7b1 il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0b38a969 il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0c8ea3de il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x10e04460 il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x11fcc17f il_mac_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x122f33ea il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x14bb3457 il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1625c3e3 il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x18921e37 il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1a67ee37 il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1b5249af il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x262f5a34 il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x26d86a98 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2b7ebd1a il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2dfd5bcd il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2e6725c2 il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3485b0fe il_free_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3549132c il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x380d755d il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x388f01c8 il_apm_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3bfb0273 il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3e64538f il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3e769bf3 il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3f542b70 il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x404da065 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x430343c7 il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x465d97d6 il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x47ba1dc2 il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x485e8ad3 il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x48c846ba il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4aa39103 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4cee0dd8 il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4f549dc2 il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x539d62b3 il_update_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x552afc20 il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x564c6740 il_debug_level +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x56fa3dbb il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x587e5f4c il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x59146196 il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x59218afa il_init_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5a53be61 _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5e2b47fd il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x601e8ab2 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x64befe7e il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x67f3560c il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x67fa8cff il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x69624f9f il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x69f264e2 il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6fa4156f il_force_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x702fd8ac il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x729817d9 il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7333bd35 il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x73bb7870 il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x75580fd5 il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x760c701b il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x76ccbad3 il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x799e7d7f il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7a7ab9d3 il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7c380b56 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7eb20d1a il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7f40ad7b il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x830b1ee6 _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x87af63dd il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8a2862ad il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8a8946d6 il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8f6994fd il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x91f692a9 il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x94b0ced5 il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x96f8b3ee il_set_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9e0e2f85 il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa2bef6df il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa2ce0417 il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa5da9ab8 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa6981050 il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xaa4427cb il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xad342336 il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xaf96e815 il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xafa870ec il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb332d75a il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb401390c il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb47e8590 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbac61b64 il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbb8289cb il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbc968a0a il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbf8b1247 il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc39cf12c il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc914c03a il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcc57df67 il_leds_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcef5d13d il_set_rate +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd0440a2e il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd0f88a0f il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdb8ea543 il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe2783336 il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe435493a il_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe651c45f il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe7c6e312 il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xea2ef5c1 il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xea7ec00b il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xefae1f81 il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf32943f0 il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf501278b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x084b4719 __tracepoint_iwlwifi_warn +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x39483213 __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x57a72d66 __tracepoint_iwlwifi_dev_ioread32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x5c04aae1 __tracepoint_iwlwifi_err +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x7fd93860 __tracepoint_iwlwifi_crit +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x8dcc4441 __tracepoint_iwlwifi_info +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xaec44e29 __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xb54212ab __tracepoint_iwlwifi_dev_ucode_error +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xbc905f54 __tracepoint_iwlwifi_dev_iowrite32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xcf2b88e0 __tracepoint_iwlwifi_dbg +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xda9416fc __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xe9fb9634 __tracepoint_iwlwifi_dev_iowrite8 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xf161b336 __tracepoint_iwlwifi_dev_rx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xf5eccf84 __tracepoint_iwlwifi_dev_tx +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x155da8a8 orinoco_up +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x25f0caab orinoco_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x62212d41 orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x6617208f orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x706e0366 orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x850caadc free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x8916d038 alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x89dcb95f orinoco_open +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x9bdafca9 orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xa08295b5 orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xa2087e71 orinoco_down +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xabbd4b1f orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xb41a189b orinoco_get_stats +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xbb5328c9 __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xc182c98c orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xde84461c __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xef64033b hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/btcoexist/btcoexist 0xd7785579 rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x02bbdab0 rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0fe9978d rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x10657f40 _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x11d716f7 rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x133556d8 rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x188d641c rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x205979fd rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x2071b92b rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x213a01d9 rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x28654cfa rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x34827b22 rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3fdb8fed rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x42e0a352 rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x51ff9511 rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x557db1f9 rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x55d44a5f _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x5be5aa48 rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x5deba8b3 _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x5ec11b92 rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x610b3a50 rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x63974fe1 rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x662794ea rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x76da3fd8 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x79fce2c2 rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8359c461 rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x95eefe73 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x99d94607 rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x9c630e9c rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x9fb80b6f rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa2b55a69 _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa8b21344 rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb3314d48 _rtl92c_phy_calculate_bit_shift +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xbb4429af rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc32ff706 _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc705c07c _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc7cc2588 rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe8a520bf rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xef72fb69 rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf7a028a8 _rtl92c_phy_dbm_to_txpwr_Idx +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf95d6c36 rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xfef700ea _rtl92c_store_pwrIndex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xffa43a8f _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0xa636af27 rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0xf2d478dc rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x0aef297b rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x17124d8e rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x1e56e563 rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x207fbb70 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x26bbcb42 rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x2c545c8e rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x79188a02 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x934f4a9a rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x936c8f0f rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x94be5925 rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x94e0e2f0 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x9a3a6534 rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xaef7d82f rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xbd566776 rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xcc56aa1a rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xdfa1680a efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xe4584215 rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xe7c476ec rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xea3f28b1 rtl_ps_set_rf_state +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xeae8f348 rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xf0d79875 rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xfdc1295d rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x386ffe1c wl1271_free_tx_id +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x9ca4e6b4 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xb5d4d0c7 wlcore_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xe4b00c27 wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/nfc/microread/microread 0x5dc7df7a microread_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0x77a46f41 microread_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x72cfeda5 pn544_hci_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x74a57729 pn544_hci_probe +EXPORT_SYMBOL drivers/parport/parport 0x012cf49d parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0x08939018 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x17cfba6e parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0x1b4065e4 parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x1d65dc08 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x246fd530 parport_write +EXPORT_SYMBOL drivers/parport/parport 0x31a859b1 parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x31f3d553 parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0x3426a8a4 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x381c629c parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0x437a616d parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x50f5dde2 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x562bffc4 parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x6193b841 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0x623a4795 parport_read +EXPORT_SYMBOL drivers/parport/parport 0x64fa2a4b parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0x75209852 parport_claim +EXPORT_SYMBOL drivers/parport/parport 0x7b7ca986 parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x82c59f3d parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x82f58f6f parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x84d03683 parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x8e0493d7 parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x95e9b09b parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0x9d2b1385 parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0xa5b98357 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0xc7966ddb parport_release +EXPORT_SYMBOL drivers/parport/parport 0xcac01396 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0xd51068bb parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0xd60eab1a parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0xedaba916 parport_register_device +EXPORT_SYMBOL drivers/pps/pps_core 0x2ee47c55 pps_event +EXPORT_SYMBOL drivers/pps/pps_core 0xac6239f2 pps_lookup_dev +EXPORT_SYMBOL drivers/pps/pps_core 0xc3ae0e7b pps_register_source +EXPORT_SYMBOL drivers/pps/pps_core 0xec3f239b pps_unregister_source +EXPORT_SYMBOL drivers/ptp/ptp 0x06ead0a0 ptp_clock_index +EXPORT_SYMBOL drivers/ptp/ptp 0x7a316422 ptp_clock_unregister +EXPORT_SYMBOL drivers/ptp/ptp 0x94415090 ptp_clock_register +EXPORT_SYMBOL drivers/ptp/ptp 0xe2c3d27a ptp_clock_event +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x0574513e rproc_put +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x21f5c447 rproc_shutdown +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x6a355853 rproc_alloc +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x6d2abdca rproc_del +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x71069ed7 rproc_boot +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x78503600 rproc_vq_interrupt +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x92a50149 rproc_add +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xbfec4c2a rproc_da_to_va +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xff1c1c17 rproc_report_crash +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x02db5a28 fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x36ba904d fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x43232721 fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x4a626d73 fcoe_ctlr_destroy_store +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x4e6aadf9 fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x710a22b3 fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x76afa6e1 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xa0d2bc73 fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xb35ebef6 fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xb88760a4 fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xc0190aa7 fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xc876f455 fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0728556d fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0954f614 fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x13db181d fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x147cb260 fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1c75ca9d fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2870d1f5 fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3049417e fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x31699794 fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3525249f fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3554f92d fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36547196 fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36bf8e64 fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36e5fbaf fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3c7c140c fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3ea83027 fc_change_queue_type +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x43e1b056 fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4875f7bd fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5263b839 fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x546a2e2b fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6075de44 fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x60855428 fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x621b2b87 fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6594b31d fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x69505d39 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6d333b70 fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7187234b fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x74f4ada4 fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7517ded3 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x76bcc4bb fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x79501617 fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x79adcb2c fc_rport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8bb69cee fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8bfa911d libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x957f54e0 fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9b888b7d fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9c99de76 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa99dd61f fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xab5bbd3c fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb00147f7 fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbb0b389f fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc06745cf fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc0fcd714 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc2ac48fe fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc4db9de0 fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc6df6dc4 fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc79e2d7b fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc9e4fb0c fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe25449ec fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe8e8307f fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xec82c94c fc_change_queue_depth +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf760d86d fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf7ff8eb8 fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf8630d51 fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x51c0739a sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8a3281eb sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8a87e724 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x945e8033 sas_wait_eh +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xfa64a3ab sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x1a486c6f mraid_mm_register_adp +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x2250c66e mraid_mm_adapter_app_handle +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x512c956d mraid_mm_unregister_adp +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x02222c23 osd_req_add_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x03e8757a osd_req_read_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0c17edb1 osd_sec_init_nosec_doall_caps +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x1537ea14 osd_dev_init +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x19121795 osd_req_list_partition_collections +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x1cffbb0b osd_req_add_set_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x1d84a4a2 osd_end_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x1fe1951c osd_req_list_dev_partitions +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x22ca3cc4 osd_req_create_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x33dc84e3 osd_req_get_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x3432c5e7 osd_req_format +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x38d40c59 osd_req_list_collection_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x39b8cc7e osd_req_flush_obsd +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x3be7dec2 osd_req_decode_sense_full +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x4d1b2c09 osd_req_read_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x507a0af4 osd_execute_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x55ae0386 osd_req_add_get_attr_page +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x59682971 osd_req_remove_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x5e13ebec osd_execute_request_async +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x6948e5bc osd_auto_detect_ver +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7259a8fe osd_req_flush_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7d15dff9 osd_finalize_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8975bf50 osd_req_decode_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8cdf24b5 osd_req_write_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x945e4b38 osd_req_flush_collection +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x96ec54c6 osd_req_remove_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9a8fd9b5 osd_req_set_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xa6fd6244 osd_req_write_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xb808c7e3 osd_req_list_partition_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xbaacdd71 osd_req_write_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xbb3263b7 osd_req_read_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xbb9126e4 osd_dev_fini +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xe7e6b6ec osd_req_create_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xe8139440 osd_req_write +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xe9bf20fa osd_start_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xf02f22a6 osd_req_flush_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xf6493d34 osd_req_read +EXPORT_SYMBOL drivers/scsi/osd/osd 0x5fc48609 osduld_unregister_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x612a63b6 osduld_put_device +EXPORT_SYMBOL drivers/scsi/osd/osd 0x82a6a5c4 osduld_info_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0xa42f87d1 osduld_path_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0xd06a30e4 osduld_register_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0xf260e5bd osduld_device_same +EXPORT_SYMBOL drivers/scsi/osd/osd 0xf7636469 osduld_device_info +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x2c8ff182 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x59124e20 qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x5c6628a4 qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x64c0d8e9 qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x9a7dc5d6 qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xad583cde qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xb38dd920 qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xc83533b9 qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xf3776325 qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xfa811254 qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xffe3858c qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/raid_class 0x0fa8866a raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0x3a1132c0 raid_class_release +EXPORT_SYMBOL drivers/scsi/raid_class 0x61983850 raid_component_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x131b9d7d fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x15a8bb94 scsi_is_fc_vport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x185e7d37 fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x3ac94e0e fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x45de4332 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x4a351391 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7121ada1 fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7376a702 fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7954b1ea fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x79740e8a fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7a1f55a7 fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x8c404063 fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe418da39 fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xf3badcfc scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x07bb5efc sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0a566e63 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x20cc3b19 scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x244f2716 sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x297dc0a5 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2dbce181 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3215f2d1 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x352ff1be sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x386fbc5d sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3b3cfd8b sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4556054d sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x52ccabb5 sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x54dfba6e sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x54eeddca sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5a066965 sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5e12bbf2 sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x63d5f5b7 sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7cd496c7 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x87054bb4 sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xac514eda scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb809fb5e sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbd3560ae sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbd6835f0 sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbddfef70 sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc66ffb1c sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd4de8aea sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd5e94478 sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd8c5b585 sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x160b1829 spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x6af80514 spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x763d74b9 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xceeefd5e spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xf32f4147 spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x1bcdae0c srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x398cb53d srp_rport_put +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x8dce2058 srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xf5c39583 srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x28f6d4e5 ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x47cb791f ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0xa42e9478 ufshcd_runtime_resume +EXPORT_SYMBOL drivers/ssb/ssb 0x133466da ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0x16e4c473 ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x2ac24c39 ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0x3a7f13fd ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x43a1d802 ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x6e22d14d ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0x6e49d126 ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0x74697c59 ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0x74edd593 ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0x7cb76868 __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0x856632ba ssb_bus_pcibus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x8f121819 ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x96b416b3 ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0xa77c8b3a ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0xbafb9991 ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0xc0512e0f ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xd481192b ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xd5cb0c41 ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xd9d5703e ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xdf3f3cff ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0xe26c7d9d ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0xeb5e42f9 ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xed48a4f4 ssb_bus_suspend +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0x7c149a3c fwtty_port_get +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0xaa6257ef fwtty_port_put +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0xbbf1936e adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0xe60cb5d1 adt7316_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x246aa6d3 ade7854_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x698c6e11 ade7854_probe +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x007eb2c3 lnet_copy_kiov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0264d470 lnet_extract_iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0363b57a lnet_copy_iov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x03c0a39e lnet_parse +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0bce7eef lnet_counters_get +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1366b7ac LNetSetLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x19670622 LNetNIInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1b191752 lnet_msgtyp2str +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1fe16fd5 LNetGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x204b8151 lnet_counters_reset +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x277afd65 lnet_register_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2aa9953d lnet_cpt_of_nid +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2ac93e90 lnet_connect_console_error +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x33202a6c LNetGetId +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x34c6d99d lnet_net2ni +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3c779ee0 LNetPut +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3dec3e0d lnet_kiov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3f4f5b46 LNetNIFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x473ad33b LNetDist +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x4af20e0d lnet_notify +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x509551ee lnet_set_ip_niaddr +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5811a721 LNetInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x58a1ca89 LNetMDUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5fee352c lnet_acceptor_timeout +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x61f784b2 LNetClearLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x64356247 lnet_unregister_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x64cdea3a LNetCtl +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x6f7be171 LNetEQGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x722c76e5 LNetMDAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x77373d44 the_lnet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7d59a7fe LNetMEInsert +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x854ab844 LNetEQWait +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x86b45256 lnet_extract_kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8a3064f2 LNetSetAsync +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x938b0157 lnet_copy_iov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9de986d3 LNetEQAlloc +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa2551be8 lnet_create_reply_msg +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa3d61f8d lnet_iov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa8c2760b LNetFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa414970 LNetMEUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa9b477e LNetMDBind +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xadb39edc lnet_connect +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb75f7953 LNetEQFree +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xba5566d2 lnet_acceptor_port +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xbf0760a2 LNetMEAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xe73c09bb lnet_copy_kiov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xec542188 lnet_finalize +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xecbedbec lnet_set_reply_msg_len +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf1b316bf LNetSnprintHandle +EXPORT_SYMBOL drivers/staging/lustre/lnet/selftest/lnet_selftest 0x078db139 lstcon_ioctl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x1212765f client_fid_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x15dc797f seq_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x1c4bb5f9 LU_OBF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x24851bac seq_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x375e6f8d LUSTRE_BFL_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x611dcbb4 client_fid_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x6b0ef2b2 seq_client_get_seq +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x9b302aeb seq_client_alloc_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xa5f7dfb8 seq_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xae61cff5 LU_DOT_LUSTRE_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xc997a02f LUSTRE_SEQ_SPACE_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xecee2727 LUSTRE_SEQ_ZERO_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x0d0a5c24 fld_client_proc_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x3ff7426b fld_client_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x9c46695a fld_client_del_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xb340d349 fld_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xba916bf7 fld_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xcfc953ce fld_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xdd7e2b5b fld_client_add_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x000c507f libcfs_debug_dumplog +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x01db5172 cfs_percpt_atomic_summary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x03387ca6 cfs_curproc_groups_nr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x03dea4d3 cfs_race_waitq +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x04d3ce6a lbug_with_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x069f9bb2 cfs_wi_schedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08ada613 libcfs_console_backoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0a14b775 cfs_percpt_lock_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0a563dac cfs_crypto_hash_update_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0a92bb19 cfs_hash_getref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0b3ad299 cfs_hash_findadd_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0b4b1546 libcfs_lnd2modname +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0ca2d23f cfs_hash_rehash +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0de6c369 cfs_cap_lower +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0e4820ab cfs_percpt_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0f49dd81 upcall_cache_flush_all +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0f5eff79 cfs_percpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0ff51426 cfs_hash_dual_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x117c8a95 cfs_cpt_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12426266 libcfs_run_lbug_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x15565c7f cfs_cpt_set_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x17ac7833 libcfs_deregister_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1910d48b cfs_percpt_lock_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1a60d439 cfs_parse_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d5a3928 cfs_timer_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1fcbadf1 libcfs_sock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x242384eb libcfs_sock_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2663147a __cfs_fail_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x26bedd60 cfs_hash_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x27b6d3ba cfs_ip_addr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2a31663b upcall_cache_put_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2a582c5a cfs_hash_del_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2b1e0458 cfs_get_environ +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2dbe54b2 cfs_trimwhite +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x30986343 cfs_range_expr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x30d585c5 cfs_hash_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x31fc5082 cfs_crypto_hash_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x34f32dc9 cfs_hash_for_each_safe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x361e82d4 cfs_firststr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x377f93fb cfs_srand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x38828b92 cfs_cpt_unset_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x389ca502 libcfs_debug_mb +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x39fdcd2b libcfs_debug_set_level +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3a62a183 cfs_cpt_set_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3c1285bd libcfs_subsystem_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3cc97a08 cfs_hash_for_each_nolock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3d5e6098 cfs_race_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ea730c0 cfs_gettok +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ef0d90c libcfs_kkuc_group_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3f0d9281 cfs_wi_sched_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x411db754 cfs_crypto_hash_final +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x413056d8 cfs_cpt_weight +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x41ab33a1 libcfs_ipif_free_enumeration +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x42e22feb cfs_cpt_table +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44839bbb cfs_rand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44f07cfc cfs_pause +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x47fdb4d1 cfs_timer_is_armed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x48f163c6 libcfs_str2anynid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4a99af72 cfs_clear_sigpending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4aaba153 cfs_hash_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4b792dc7 cfs_hash_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4f1d3adf cfs_hash_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4f1f2fa5 cfs_crypto_hash_digest +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x50345570 libcfs_str2net +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5051b6d2 portal_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x509d38b0 libcfs_net2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x52e9cfc1 cfs_cpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x53b383e4 cfs_cpt_unset_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x545c2435 upcall_cache_flush_idle +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x54fd9a71 cfs_percpt_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x55a037e8 upcall_cache_downcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x56595649 cfs_hash_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x58a7ee00 libcfs_catastrophe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5946ec2b cfs_percpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x59f7b6d7 libcfs_sock_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5c013b81 cfs_expr_list_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5ce62c0e cfs_cpt_table_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d3be65a cfs_crypto_adler32_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d7020cb libcfs_sock_setbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d73c3e3 cfs_expr_list_free_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5dce9e80 libcfs_lnd2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x61963be9 cfs_hash_is_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62289d65 cfs_array_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x64685fef libcfs_console_min_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6564c55b libcfs_console_max_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x65dd9f0c libcfs_run_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x66136d2d cfs_timer_arm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x67398404 cfs_wi_sched_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x68497dbf cfs_cpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x68cf2b58 libcfs_sock_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x694001fd libcfs_sock_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6b6fce89 cfs_hash_dual_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c605eaa cfs_cpt_unset_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c905b5f libcfs_watchdog_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6dfa9ea1 cfs_crypto_adler32_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6e406778 libcfs_sock_getbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6e6af71c current_is_32bit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6f928e1b libcfs_debug_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71f662a3 libcfs_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x738e5af5 cfs_percpt_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x740cdd58 cfs_hash_size_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x742d26e0 cfs_hash_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x752858fb cfs_cpt_table_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7565fbba cfs_hash_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a3d49ae cfs_expr_list_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a75b523 cfs_hash_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7b0b748a cfs_ip_addr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c7986cf waitq_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7d3b386c cfs_hash_rehash_cancel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7d93cded cfs_cpt_of_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7e6f6485 cfs_ip_addr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7fda989d cfs_fail_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8151c3aa cfs_cap_raised +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x831e04fb cfs_hash_bd_peek_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x83d795e4 cfs_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x83f2c5c9 cfs_hash_rehash_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x841e4c39 cfs_hash_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x857aaea7 libcfs_register_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8840f591 cfs_block_allsigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8a8f66da cfs_hash_dual_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c85e4e6 cfs_crypto_hash_speed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8e61d47b cfs_cpt_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f12bb52 libcfs_log_goto +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f45f10d cfs_init_timer +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x91504e8b libcfs_kmemory +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x925ced2d upcall_cache_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x92e3737a cfs_hash_bd_move_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x940ed192 libcfs_stack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x95620e8c cfs_wi_deschedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x957f1d04 cfs_percpt_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x97b0b9bc cfs_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x985823bf libcfs_sock_getaddr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9879b229 cfs_get_random_bytes +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9c43568d cfs_hash_cond_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9e420643 cfs_restore_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9f702602 cfs_hash_bd_add_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9f82f712 cfs_trace_copyout_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa2b68b2a cfs_array_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa59e6cdc cfs_hash_rehash_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa6b9dee6 libcfs_kkuc_group_rem +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa711aec5 cfs_cpt_table_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9088531 cfs_expr_list_values +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9dc74e2 cfs_trace_copyin_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9eae690 cfs_str2mask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xaaf59b75 cfs_cpt_set_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xab887583 init_waitqueue_entry_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xad019238 cfs_str2num_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb141dff7 add_wait_queue_exclusive_head +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb42d008e cfs_hash_bd_del_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb53b5569 cfs_cpt_spread_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb883b006 cfs_percpt_atomic_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbada117b cfs_cpt_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb972619 proc_call_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb9cb508 cfs_curproc_cap_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbd5d492e cfs_timer_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbf58a69b cfs_hash_debug_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbf7a37f1 cfs_signal_pending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc0ea7fc0 cfs_expr_list_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2911d96 cfs_expr_list_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2dfd791 libcfs_console_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc39fd2f9 libcfs_panic_on_lbug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc3eb614e libcfs_ipif_query +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc47433a6 cfs_capable +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc49b1c62 cfs_percpt_atomic_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc77a24c3 cfs_cpt_set_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcb385db9 libcfs_debug_binary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcbab8493 schedule_timeout_and_set_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcc20e694 libcfs_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xccc45639 cfs_free_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcd38904c cfs_wi_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xce1a88f2 libcfs_arch_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf61bacb __cfs_fail_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd0d8d08a cfs_cpt_unset_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd2b128e0 upcall_cache_get_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd3985935 upcall_cache_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6a52be3 libcfs_printk +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6f1fc60 cfs_strncasecmp +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd96f406d cfs_cap_raise +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd9783a01 cfs_hash_hlist_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd9cb9aee libcfs_sock_abort_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xda284287 libcfs_sock_listen +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xde17bb8d libcfs_isknown_lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xde7bdf2c upcall_cache_flush_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf2789c0 cfs_curproc_cap_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf2e4c80 cfs_hash_debug_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdfecb98d cfs_block_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdffc951d cfs_timer_disarm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe020fa10 libcfs_kkuc_group_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe3bf6897 cfs_percpt_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe6555032 libcfs_ipif_enumerate +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe7b54314 libcfs_arch_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xea411f63 cfs_block_sigsinv +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xebe084c1 cfs_hash_dual_bd_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xec1f56d5 libcfs_str2nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeccafa5c cfs_cpt_online +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeceac781 cfs_fail_val +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xedbfa1db cfs_hash_dual_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xedf3a25a cfs_timer_deadline +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf1f98ed4 cfs_hash_dual_bd_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf2c02048 cfs_cpt_bind +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf440bb38 libcfs_kkuc_group_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf4d96eb4 cfs_hash_for_each_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf5f64f4d cfs_hash_add_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8a8644b libcfs_id2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8efb8c5 waitq_timedwait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf94025d1 libcfs_str2lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfb1f820c libcfs_kkuc_msg_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfd6a0184 cfs_hash_for_each_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfe565fa9 cfs_crypto_hash_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xff0f98a6 libcfs_debug_vmsg2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x1e0321c3 ll_direct_rw_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x359b0771 ll_osscapa_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x6488cb8f ll_stats_ops_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x818015af ll_iocontrol_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xcd3cde92 ll_iocontrol_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x08a84c53 lov_stripe_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x20a455e1 lov_lsm_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x24e984a7 lov_lsm_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x6d652a61 lov_device_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xa203fced lov_stripe_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xeeebb2bc lov_read_and_clear_async_rc +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x16657f64 lprocfs_counter_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x3f9291fd fsfilt_get_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x64807544 push_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x9ba46244 lustre_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xa54a496d lprocfs_counter_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xb4a870f9 lprocfs_stats_alloc_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xb4f8ee63 lprocfs_read_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xc52b2934 pop_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xd1f8863a obd_memory +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xdeda749c fsfilt_register_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xe07aea31 l_dentry_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xe4bc28d9 fsfilt_unregister_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xfbbd763b fsfilt_put_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x14a47f31 it_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x9c22b84f it_open_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xb57d8447 it_set_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xf46a886f it_clear_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mgc/mgc 0xdc287f95 mgc_fsname2resid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x006b118c cl_page_is_owned +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01665e34 class_parse_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x016743db class_config_dump_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01b8c46f obdo_from_iattr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x035852d0 lustre_swab_llog_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x03b407d9 lu_object_find_slice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x03e20c3e llog_obd_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x04b34e18 lprocfs_rd_u64 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x057f6d4b class_find_old_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07aa68bb lustre_swab_lustre_cfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07c0d80f class_conn2export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x083942ff class_del_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x09acc0a2 lprocfs_nid_stats_clear_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x09f4bc3b llog_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0a840378 __llog_ctxt_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b3838e1 lustre_register_client_fill_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b3de9ab cl_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0bac9e85 capa_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0e9ac783 llog_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0e9aed62 class_uuid2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fe91547 obdo_to_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x113f0dd1 cl_io_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11495519 lprocfs_write_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x123e5b5b dt_directory_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x12eb261a dt_txn_callback_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x13204f28 lprocfs_rd_connect_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x13fec37b dt_txn_hook_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x142c6584 lu_object_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1448630a cl_env_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x144e1dcf cl_env_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1491dc30 lu_context_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x15f96a2b lprocfs_single_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x163a6508 lu_site_init_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17260880 obdo_cpy_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x182bd5b5 dt_record_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x193e9228 cl_io_read_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x196a8fc5 cl_page_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x19d4f416 cl_req_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1a1f05dc cl_lock_hold_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b062cc9 lu_dev_add_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1e01e9c8 cl_lock_enclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1e3e57a5 lu_cdebug_printer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1f76f475 cl_lock_hold_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1f9fdb43 llog_declare_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x208bd6c6 cl_lock_discard_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x215420ab lu_context_key_revive +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21886b81 llog_declare_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x221826f1 class_parse_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x23a7f6c2 lu_object_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x23bb3ce9 cl_page_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2473e0a9 lprocfs_clear_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x24a2622a lu_kmem_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2547efae lustre_uuid_to_peer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25b41ca1 cl_2queue_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x268f967a cl_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2691421f class_handle_hash_back +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x26af0825 cl_sync_io_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x275cdc7a cl_env_reexit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x27d936e6 cl_object_kill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x281171bb cl_lock_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2831764c cl_lock_is_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2892bd71 lprocfs_free_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x28a05661 llog_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x297cf5e0 class_handle2object +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x299cfc1b lprocfs_oh_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2a6ae54b cl_object_attr_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2a977b6d obd_exports_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ae1cd79 kuc_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2b1628fe cl_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2cd8c22f cl_object_has_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d9db17d cl_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2dca0180 cl_page_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2f2db133 lprocfs_free_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2f81e082 class_disconnect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ff0acb7 lprocfs_add_vars +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ff583a8 lu_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x307b8004 capa_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x30ccf740 class_connected_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3274164a class_import_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32ba7a38 dt_quota_slv_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x33541974 cl_offset +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x33c151e3 lu_buf_realloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34dbf893 lprocfs_alloc_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x35d9a9bd lprocfs_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x35ff467e obd_export_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x36fbd7d0 cl_page_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x374c9e9d cl_page_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x375a675a lprocfs_init_ops_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37c85cfc lprocfs_rd_timeouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37ed6e4b at_early_margin +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3821fc55 cl_page_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38552f28 md_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3889bd0b cl_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38fb0c90 class_match_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3964b51f lprocfs_alloc_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x396b3665 lustre_idmap_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a38b008 cl_io_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3b7b5e2f cl_page_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3da8df89 cl_2queue_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3daccc97 cl_lock_disclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3dce0988 cl_io_loop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3dff4703 cl_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ea08fcd cl_lock_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ea16b6e cl_lock_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3eab7bfe LU_BUF_NULL +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3f4f355c cl_page_unassume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3fee3d18 llog_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4018c418 lu_context_key_degister_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x40204720 cl_page_list_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x40225866 cl_req_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4352a474 cat_cancel_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43fbf617 lu_context_key_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44679557 cl_lock_mutex_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44956802 cl_object_attr_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44e41abb lustre_posix_acl_xattr_filter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x452f559a lu_buf_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x458e3ed6 local_file_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x45998fca local_index_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x462454d3 llog_exist +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x462afa6f cl_lock_closure_build +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x46410001 llog_cancel_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4641e9f7 cl_lock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x46d95ef6 cl_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x474ed5bd lustre_swab_ll_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47a13d87 llog_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47b35f7d statfs_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4847c438 local_oid_storage_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x487fd8d1 capa_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48e6cccc cl_env_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4920726c cl_page_list_move +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x494cfb52 lustre_acl_xattr_merge2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4951f8c7 cl_page_list_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a0f6ea lustre_posix_acl_xattr_2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49eb0b89 obdo_from_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ac58713 obd_connect_flags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ac7ce91 llog_osd_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4bc00a7e class_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4bd03238 cl_locks_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4be02fe6 llog_cat_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4bf73a78 cl_req_page_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c190aad lprocfs_find_named_value +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c19e76b lu_object_invariant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c4c700b obd_alloc_fail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4cbb03c1 lprocfs_rd_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4cf861fe cl_lock_state_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d13458b kuc_len +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4f49f44a llog_init_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4fd0b7f2 lu_context_key_register_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x507328e1 obd_devs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5084243c obd_export_evict_by_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50c7fc36 ptlrpc_put_connection_superhack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5124f25f lprocfs_oh_tally_log2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x516dccba lprocfs_obd_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x517d36ca class_import_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5188daf4 lu_context_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x528c433a obdo_to_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x542cfb43 cl_use_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54885f87 ldlm_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x558bec27 obd_ioctl_getdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x564e9d44 init_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x566d3a27 dt_txn_hook_commit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x56766fb7 lu_kmem_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x56956387 dt_txn_hook_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x570d09ae lustre_swab_lu_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x582b013d dt_quota_glb_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5863b6b5 cl_io_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5898ab26 lprocfs_free_per_client_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x59ed69b6 llog_cat_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a20d896 obd_memory_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5adf56fa dt_try_as_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5b59ef55 cl_enqueue_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bc022c5 lprocfs_dt_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5cae786a lu_object_anon +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5cf2da03 cl_2queue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d34ae0d cl_lock_mode_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e844e52 lu_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ed188a9 lprocfs_add_symlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fb9e9c5 cl_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fe97b73 block_debug_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60172a1d lprocfs_counter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x607f0f12 llog_open_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60ac4a87 cl_vmpage_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x610df2fe lustre_idmap_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x611e6a19 cl_lock_weigh +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6307052b llog_cat_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631a518d mea_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631fd7b9 lustre_ext_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x638e1943 llog_declare_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x63e8ba0a class_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x641b8790 lustre_process_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x643599ee lu_device_type_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x64667968 llog_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x64775e00 cl_page_is_vmlocked +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6586ae97 cl_page_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x66fcdf44 lprocfs_wr_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6734adbd lprocfs_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x675244fa dt_otable_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x677fd7f9 proc_lustre_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67977b42 lprocfs_remove_proc_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67a90622 la_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67b306a0 class_fail_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67dc223a lprocfs_remove +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x68755386 cl_object_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6890d175 lustre_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x697f5e91 cl_page_list_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69c42114 at_min +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a519359 lprocfs_exp_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a5c6f04 cl_pages_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6b155e55 lprocfs_rd_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6b21d39c lu_object_locate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6b58ca42 class_disconnect_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6b62cf91 lu_ucred_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c2d0e7a class_export_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c3e05b9 class_search_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c628b04 lu_device_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6cb8a626 lustre_idmap_lookup_uid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ce0c871 lprocfs_nid_stats_clear_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6de814b0 cl_io_iter_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6e193100 cl_page_list_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ea40e51 class_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ecda967 dt_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f229d35 lprocfs_rd_conn_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x71201184 class_find_client_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7172a8d5 lprocfs_rd_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x717659b6 obdo_from_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x71c34f05 obdo_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7267972f cl_lock_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72daa1da class_disconnect_stale_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72ddee4c obdo_le_to_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7320f5be cl_env_unplant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x732897d4 cl_object_attr_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7359396c cl_lock_nr_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7363e3e5 lu_context_key_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x73788911 lustre_idmap_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x742559b1 class_unregister_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x74620718 cl_page_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x74bfa991 cl_page_list_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x74c90d49 cl_lock_is_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x752f71a8 class_get_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7548e83a cl_page_own_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x756a77f3 class_parse_nid_quiet +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7607b471 capa_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x766cabdf lprocfs_rd_server_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x767c37bf dt_store_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x770fb9b5 llog_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77d2089a class_name2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7802fcd7 lustre_swab_llogd_conn_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x789796a1 obd_zombie_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x78e409ef lprocfs_seq_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b078065 class_handle_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b4fc57b at_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7be32fbe cl_io_prepare_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7d0f2780 dt_index_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7d349bef lu_context_key_quiesce +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7d66f25d cl_lock_closure_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7d8e904f dt_declare_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7edcafa0 cl_env_reenter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7eeb8817 lustre_common_put_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f7d7cd9 lu_buf_check_and_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fad7291 raw_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fdfe63c dt_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fe5561a obd_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8012fd36 dt_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8031efb8 lprocfs_dt_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x806cc497 class_add_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x80e17e5a cl_env_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81742d89 obd_ioctl_popdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x825a82ca dump_lniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8294c21c cl_page_make_ready +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x831f656c class_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x842ab93d class_unlink_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x843b4d7e cl_page_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8489f086 obd_alloc_fail_rate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x849e5385 obd_update_maxusage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x850360e1 cl_2queue_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8503c454 lu_buf_check_and_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x85085736 cl_page_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x86deab73 llog_cat_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8763c4f0 dt_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8954c33d llog_osd_get_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8a01b2a7 cl_conf_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8a4270eb dt_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8aa2c358 lprocfs_dt_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b277d41 class_name2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b5f4057 lu_context_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ba6e479 lustre_swab_lu_seq_range +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8c3b363f dt_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ca2bd43 cl_page_list_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8e10e6d6 server_name2svname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f67314c obd_dump_on_eviction +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8fcc828b cl_lock_extransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8fe61eac cl_lock_descr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9031dc48 lprocfs_oh_sum +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x90d91fab class_new_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x90e2c6ec lprocfs_seq_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x91f656ac cl_io_sub_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9252fcb9 cl_page_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92e58479 obd_dump_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93b46468 lu_session_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x94c774a7 cl_lock_ext_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9512d507 lustre_acl_xattr_merge2posix +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x955f5220 ldlm_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x955f7512 cl_io_lock_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95735c6c at_extra +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95b78c46 lprocfs_init_mps_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95ec998a lustre_groups_sort +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x966648ab lu_env_refill_by_tags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x96d33a42 class_num2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x970cd507 class_conn2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9767adce class_uuid2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x977e70a7 cl_lock_at_pgoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x97d03783 at_history +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x98b5bfbc lu_object_assign_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x99aa804c lprocfs_rd_num_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9a1ce597 cl_unuse_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9a419507 lu_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9a636033 lu_context_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9a76727f cl_page_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9aed8bd3 lu_env_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b1ed9d8 obd_jobid_var +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b278409 cl_io_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9d8bef1e cl_page_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9dae83d4 lprocfs_stats_collect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9db01551 cl_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9dbb17b6 lprocfs_dt_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9e14180b cl_type_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9e1f5feb class_devices_in_group +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9e9a9b42 class_manual_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9f7aefa9 cl_page_cache_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa11ac505 cl_2queue_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa183cbf4 cl_lock_mutex_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa21c5ea1 obdo_from_la +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa257b1c5 class_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa4fc72ba dump_lsm +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa51345d9 dt_record_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa513f7e4 lustre_groups_from_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa560cb2e lu_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5fb234f lprocfs_write_frac_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa674c241 kuc_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa7111090 class_handle_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa80847be capa_cpy +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8e565cd lu_context_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa9edd959 lprocfs_oh_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa18a504 cl_page_clip +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa21b7a0 lustre_register_quota_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa3c6eb5 class_exp2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa3f0cf8 class_put_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xab3aacf7 lprocfs_alloc_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabf45922 capa_decrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac7f1596 kuc_ptr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac9900c7 lu_dev_del_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xad06b82b lustre_end_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xad4532f5 lu_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xad4fcc9f cl_env_implant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xad8b057f cl_page_list_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xae69d166 cl_req_page_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaea11c16 lu_site_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaee9f8ca cl_req_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaeee164b llog_cat_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaf878719 cl_page_vmpage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xafa8305f lprocfs_at_hist_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaff033cd lu_context_key_quiesce_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb01963a6 class_uuid_unparse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb058aa93 lprocfs_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0fb9886 cl_lvb2attr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1b89b6d class_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1e90b78 class_process_proc_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1f972fa cl_io_lock_alloc_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb23544cc cl_queue_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb241795f cl_page_list_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb272d97f llog_copy_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb289950f llog_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb2ed59fc cl_lock_signal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb31d4066 lprocfs_rd_numrefs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb379a630 local_index_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb3de4f4d cl_io_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb3fc263a lustre_idmap_lookup_gid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb41998cd lustre_cfg_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb4ae21b1 cl_io_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb51888c3 cl_io_commit_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb52f7e0b lu_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb635af9e dt_acct_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb653170c lu_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb65f310e cl_page_list_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6ba5dd5 kuc_ispayload +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6ca6313 class_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb73587fb lu_context_enter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb743ec6a dt_mode_to_dft +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb74c9753 cl_page_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb76d8990 cl_sync_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb77275a9 cl_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb832c7d4 cl_lock_modify +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb83d1a5c local_oid_storage_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb88f6d18 cl_page_gang_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb9a222b1 cl_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba985283 lustre_register_client_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbacac922 lprocfs_write_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbae2146b lu_env_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbae77c70 cl_2queue_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbd9bddc4 obd_export_evict_by_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbee10faf cl_page_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbf2c2e0b obdo_refresh_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0b8cb50 lu_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0bf7ef2 obd_debug_peer_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc1792d53 cl_io_iter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc18d06cf lu_buf_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc1f4d8b5 dt_locate_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc321a345 llog_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc3ad7363 dt_index_walk +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc3b5229f cl_object_glimpse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc40c8009 cl_wait_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc46cf8e6 lu_env_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc471d49a cl_io_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc4734fb0 cl_unuse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc53ad75c cl_page_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc544052e class_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc557bc5f lu_ucred_assert +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc5984fd4 class_config_parse_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc5c9d595 class_config_llog_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc5eb4333 llog_cat_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc6d139e6 dump_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc6f23a43 cl_page_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc716fb6a lprocfs_rd_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc733a55a dt_store_resolve +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc7c42ddb class_detach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc7eec682 obd_llog_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8dbaa87 lustre_swab_cfg_marker +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8f8e0ce llog_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc978f4d0 class_register_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xca636c77 cl_lock_user_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xca641242 cl_lock_descr_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb0ab67f obd_max_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb2c76bb lu_context_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcbe79e2e lu_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcc08d9dd class_conn2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcc3fce77 lprocfs_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xccf7a8de obdo_cpu_to_le +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd7537ee get_devices_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcded2fb0 obd_llog_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xce31c959 cl_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xce975c45 lprocfs_free_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcedb140a obdo_cmp_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd08827c0 server_name2fsname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd0c7811d cl_io_is_going +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd10aa042 lustre_swab_llog_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd13d0199 lustre_in_group_p +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1b1478b cl_attr2lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1ed0a33 llog_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1f58645 lustre_swab_llog_hdr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2ef153f cl_env_nested_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd35021f6 lustre_register_kill_super_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd3863118 lprocfs_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd45594b8 lu_site_purge +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd492d8ee cl_lock_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd4a2a70a cl_page_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5b62528 lprocfs_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5c54fe7 dt_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5dc5d5d lprocfs_rd_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5e16d9a cl_sync_io_note +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5fced76 cl_page_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd70fe669 lustre_swab_llogd_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd72da399 cl_lock_closure_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd740bcbe cl_lock_user_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd757475d lu_object_find_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7a1664d cl_io_rw_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bc8654 obd_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bfbc9c lprocfs_dt_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7c85fe2 lu_object_put_nocache +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7f7b340 cl_lock_mode_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd872d16e class_export_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd900106d llog_cat_declare_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd96eb998 dt_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda5b1ced class_find_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdaa08fef lu_ucred +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdac644c8 lustre_posix_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdaf92f68 cl_io_submit_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb13dce1 capa_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb9ee9e9 cl_lock_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdc72f635 cl_io_rw_advance +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdc7a751e lu_object_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcc40af0 class_check_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd1343fc class_incref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd2e290e class_exp2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd78c0c7 lu_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde7d985b obd_dirty_transit_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdeb2cb7b lprocfs_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdee77e24 cl_lock_hold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe028cf84 capa_encrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe0442bb9 local_file_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe06b10af cl_object_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe0af3de3 cl_lock_enqueue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe0cca004 cl_env_nested_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe13b6910 cl_req_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe19d4e43 lu_context_key_revive_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe1a63486 lprocfs_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2462224 lprocfs_register_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe26d1389 lprocfs_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe29fa2fb class_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2eb4470 class_get_next_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3323f5d class_handle_free_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe43852ec dt_txn_callback_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe43bf0c5 cl_req_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe4c41a51 llog_cat_cancel_records +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe4f74e20 cl_2queue_init_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe4f7534d cl_io_submit_rw +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe5542f53 llog_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe5d70f73 llog_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe5e1ae92 cl_object_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe6458d3a lu_object_add_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe749d161 lprocfs_init_ldlm_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7d83236 cleanup_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe81325f4 dt_version_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8e84c32 class_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe9bcc53e cl_page_find_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeaf95995 llog_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb0ab1c8 llog_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb3f388a _debug_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb4a2a01 cl_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb633435 cl_lock_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec7d6b85 obd_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xed9cab0b cl_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee68bc29 lu_session_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeeeb79fa do_lcfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xef6e7244 lu_device_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xef76f858 block_debug_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xef8a92f2 llog_osd_put_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xefbf9951 lprocfs_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf01e2527 server_name2index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf061e2d4 lustre_idmap_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf0866602 cl_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf0f0804b lprocfs_add_simple +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2067053 lu_device_type_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2492c5c cl_lock_mutex_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2884aa1 cl_lock_unhold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2c84025 cl_page_list_splice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2fd6695 statfs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf352b745 lprocfs_rd_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf360344a lu_object_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3bc5b9d dt_lfsck_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf490d5f9 class_del_profiles +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf4c77b39 cl_object_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf4ec6c11 lprocfs_wr_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf588a28e llog_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf60d4659 capa_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf66f6115 cl_lock_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf6c22b0f lprocfs_obd_rd_max_pages_per_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf6d41c2c llog_thread_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7020831 lprocfs_dt_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf778726b cl_lock_get_trust +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7c7c325 llog_cat_init_and_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf84107da iattr_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8ba68d7 class_new_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8c2df92 obdo_set_parent_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa813d06 capa_hmac +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfacab910 cl_io_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfad44d53 lprocfs_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb293106 cl_lock_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbea0098 lu_types_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc7f18d0 obd_pages_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfcb71e6d lu_context_key_degister +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfce4103b lu_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd07afbd local_object_unlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd68d17a class_notify_sptlrpc_conf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfdbe1557 lprocfs_write_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfeecef04 cl_page_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff320630 lu_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff4e3fae cl_page_is_under_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff57e92d class_match_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xffb5e355 dt_lookup_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xffd139a7 lprocfs_exp_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfffc1f11 lustre_swab_ost_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/osc/osc 0x5c4940c2 osc_update_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x00d95039 ptlrpcd_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x00de2509 ldlm_pool_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01835797 ptlrpc_set_add_new_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01d6ef7f ldlm_pools_recalc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0303094c ptlrpc_unpack_req_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x037d96ea ptlrpc_abort_inflight +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x04394f55 lprocfs_wr_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x046f562d ptlrpc_activate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x048b59d5 lustre_msg_set_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0515f93b RQF_FLD_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x05ca31b6 ptlrpc_commit_replies +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x05db726d client_import_del_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0646d9d1 req_capsule_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x06b3942b lustre_swab_lov_user_md_objects +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x071fc74a RQF_LDLM_ENQUEUE_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x07605c7d interval_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x07890cee target_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0853d847 ptlrpc_service_health_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08bb2d27 lustre_swab_obd_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x095587d0 lustre_msg_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0972279d sptlrpc_sec_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a3130b0 RMF_MDT_EPOCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac252b2 lustre_msg_set_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac54708 lustre_errno_hton +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0bcacb5d RMF_MDS_HSM_USER_ITEM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c291745 ptlrpc_schedule_difficult_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c2d9c43 lustre_swab_lip_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0cf343dd RQF_LDLM_INTENT_BASIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0d6f2d24 client_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0e021762 sptlrpc_gc_add_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0f0a36eb req_capsule_other_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x102ea1b8 req_capsule_filled_sizes +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x10549e6e ldlm_resource_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x10f18f20 interval_iterate_reverse +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x110ff7bd lustre_pack_reply_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x115017f6 req_layout_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x116ecaee ptlrpc_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12a8b113 ldlm_lock2desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12b6f5a3 ptlrpc_connection_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x13b2d6a2 sptlrpc_cli_ctx_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1483eca4 ldlm_lock_addref_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x14d192db lustre_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15a3e4db RMF_GETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x165ab977 ptlrpc_request_alloc_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x16caf999 ldlm_cli_enqueue_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x17272662 ldlm_reprocess_all_ns +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x172fb86d lustre_msg_hdr_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1747d8b3 ldlm_lockname +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x174d2a9e ptlrpc_nrs_policy_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x17950f60 RQF_SEC_CTX +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x186307ca ptlrpc_nrs_policy_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x18b8cdbd ldlm_cli_cancel_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19108a0f RQF_OST_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19c08934 RQF_LDLM_INTENT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a6a3ce9 RQF_OST_GET_INFO_LAST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a9b76aa RMF_OBD_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1abd3258 RMF_SETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ace4b5f RQF_LDLM_BL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1b78f067 ptlrpc_pinger_del_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1b82cc8f ldlm_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1bae0270 interval_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1be21715 lustre_msg_size_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c300d8e lustre_msg_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d043548 lustre_msg_set_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1dc2051d RMF_SEQ_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1de9c288 lustre_swab_layout_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1decd7fc ldlm_lock_fail_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e8e48a4 sptlrpc_flavor_has_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1eb2a65f RQF_OST_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee46b51 lustre_init_msg_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee9eb3c RQF_MDS_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1fbe8c92 sptlrpc_target_update_exp_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2096f5b5 RQF_OST_SET_GRANT_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20d6b82c RQF_LDLM_INTENT_QUOTA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x218a36ce ldlm_cli_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x230763ae ptlrpc_add_rqs_to_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2334c909 ldlm_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x233790b5 RMF_OST_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2388d661 ldlm_cli_enqueue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x24149f42 ptlrpc_pinger_sending_on_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x244e5558 lustre_msg_get_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x24aafdba RMF_MGS_TARGET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2585a629 RMF_SEQ_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2587513c RQF_LDLM_CP_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x269554ce RQF_LDLM_INTENT_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x26f99d16 RQF_MGS_CONFIG_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x27a64e99 ptlrpc_lprocfs_unregister_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x28106030 req_capsule_server_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x285e5b99 lustre_msg_set_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x294c954f ldlm_pool_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x29e0869a sptlrpc_get_hash_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a63a472 lustre_swab_ptlrpc_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a87390c ldlm_register_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2b14c8a3 ptlrpc_set_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2b456cc0 sptlrpc_conf_client_adapt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c00c60d ptlrpc_sample_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c4c4da6 lustre_pack_reply_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ca92fa8 ldlm_lock_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ccd5b87 ldlm_cli_cancel_list_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d56f168 ptlrpc_pinger_ir_up +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d798316 RMF_MGS_CONFIG_RES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4562fe RQF_LLOG_ORIGIN_HANDLE_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4ca396 RQF_LDLM_INTENT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ecd7515 lustre_msg_check_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f0e4f87 RQF_OST_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f1e50ea ptlrpc_save_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2fd2f737 lustre_msg_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x300546f9 ptlrpcd_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x301d4fcd RQF_MDS_READPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x302937e0 RQF_MDS_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3060b9c6 sptlrpc_rule_set_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31838cb4 RMF_IDX_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3223a872 ldlm_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3224a01c sptlrpc_enc_pool_get_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3261b862 RQF_OST_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3328f356 llog_initiator_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x33bb7761 ldlm_typename +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3411ea14 sptlrpc_gc_add_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x34801eeb ldlm_pool_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x34bd0826 ldlm_get_enq_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x35939a3d lustre_swab_fiemap +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3663d19f ldlm_pool_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3717cd40 req_capsule_init_area +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x374f99f3 ptlrpc_wake_delayed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3835ab4b RQF_LLOG_ORIGIN_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3858fb94 RMF_OBD_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38c01799 RQF_LDLM_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38fce533 lustre_msg_set_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39f60a5f RMF_OST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a1e4bcb __lustre_unpack_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ab90f6e lustre_msg_bufcount +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ac00716 lustre_swab_hsm_user_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3afbd0f2 sptlrpc_gc_del_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b6b7cba dump_ioo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bc0769f req_capsule_server_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bedb0c7 RMF_LLOGD_CONN_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c48a86d llog_origin_handle_read_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c63e62b RQF_MDS_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ca50f33 RQF_MDS_HSM_CT_REGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d7dc5f9 ldlm_pools_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dc47695 lustre_msg_get_magic +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dcfbd0b ptlrpc_unpack_rep_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dddb3e2 dump_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3e107a75 lprocfs_rd_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ec621ad lock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3efbb499 ldlm_cli_cancel_unused_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f034caf lustre_msg_get_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f2c050e ptlrpc_disconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f752e78 RQF_MDS_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x40d276c3 ptlrpc_reconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x40f2ce8e req_capsule_server_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x41008cef RQF_LDLM_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x416fb788 target_pack_pool_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x42297c48 ldlm_namespace_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43705ee4 RQF_LOG_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43d7efc8 lustre_msg_set_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44036eda RQF_MDS_GET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x440c2a71 RMF_FIEMAP_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44277c50 ptlrpc_req_finished +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4481591d RQF_OST_SET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45585eb2 ptlrpc_register_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45d05893 lustre_swab_lustre_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45e30cea lustre_swab_ldlm_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x46368f67 ldlm_cli_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47f5e903 RMF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x484c4b75 ldlm_completion_ast_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x48814c9f lustre_swab_ost_lvb_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x498c03c5 lustre_msg_set_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x49f78620 sptlrpc_svc_ctx_invalidate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a5a2416 RMF_DLM_REQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4af8c544 llog_origin_handle_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b09ce4b lustre_swab_mdt_rec_reint +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b9b61a0 ldlm_init_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4bbd439a _debug_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c4f0b29 llog_client_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d7580d0 lustre_swab_hsm_user_item +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4dd43494 ldlm_pool_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e1706e5 lustre_msg_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e696b96 ptlrpcd_queue_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4eb03a6f ptlrpcd_destroy_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f766c3b lustre_swab_generic_32s +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4fe4d10e req_capsule_client_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50443f6a ptlrpc_init_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50dd74f8 RMF_STRING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x516d2cf2 ldlm_lock2handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x51a59c82 ldlm_init_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x524d27b7 ptlrpc_restart_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x52c62150 RMF_RCS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53411557 RMF_DLM_REP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53a4a004 bulk_sec_desc_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5447b2a3 ptlrpc_lprocfs_register_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5464326c req_capsule_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x54ae5021 ldlm_lock_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x551df9b8 client_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x555eb7fe RQF_MDS_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x560cb0ba ptlrpc_set_next_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x564164e1 __ldlm_handle2lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x588035b4 RMF_UPDATE_REPLY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x595ab175 lustre_swab_obd_quotactl +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x596582bf RMF_GETINFO_VALLEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x59ca398b ptlrpc_add_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a057439 interval_search +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a4d29fc ldlm_flock_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5af0d02a ldlm_lock_dump_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b6ba895 lustre_packed_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c1d21f0 sptlrpc_cli_ctx_wakeup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c6a3a83 RQF_SEQ_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5caae213 ptlrpc_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5d370289 llog_origin_handle_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5d45c39b llog_origin_handle_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e0b19b1 RMF_CLUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e2b7558 lustre_msghdr_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e6f435d RQF_OST_BRW_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e7760fb req_capsule_extend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e80f899 RQF_LLOG_ORIGIN_HANDLE_READ_HEADER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ec3284d RQF_MDS_HSM_CT_UNREGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ef831ee lustre_msg_get_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f96ccdd ptlrpc_connection_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5fb30c98 ptlrpc_free_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6042bc15 RQF_MDS_REINT_RENAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x604e2505 RMF_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x607ec932 lustre_msg_set_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x60cd26ad RQF_MDS_REINT_CREATE_SYM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61646e1b RQF_MDS_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x618ad203 RQF_OST_GET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61fc88a0 sptlrpc_cli_wrap_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62192cf8 dump_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62626f16 sptlrpc_target_sec_part +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62aaae3f RQF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6315dd4c RMF_LLOGD_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6352a62d ldlm_get_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x63586169 ptlrpc_prep_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x647b6e48 lustre_swab_ldlm_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x653723dc RMF_LOGCOOKIES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x660941d4 client_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6625bc8a ptlrpc_retain_replayable_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x66c56c6e sptlrpc_cli_unwrap_bulk_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x685eeaba RMF_DLM_GL_DESC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68cb2541 interval_is_overlapped +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68f49e5e ptlrpc_expired_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6912990a RQF_OST_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69312c13 sptlrpc_get_bulk_checksum +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x696ba811 lustre_msg_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69ae6e01 sptlrpc_sec_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69c9f04d RQF_MDS_REINT_LINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a3785c9 RMF_EADATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6bf65520 ldlm_cli_update_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ccc2879 sptlrpc_cli_enlarge_reqbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d72828c sptlrpc_conf_log_update_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d7931cc RQF_UPDATE_OBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6de13eb5 lustre_pack_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ed20499 ldlm_revalidate_lock_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6efa82b0 RQF_MGS_TARGET_REG +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f5bde39 target_print_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f6dc736 lustre_swab_mdt_remote_perm +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6fb92092 sptlrpc_flavor2name_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x703538e4 lustre_swab_hsm_current_action +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7159754c ptlrpc_unregister_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x71d30179 ptlrpcd_wake +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x723d43b6 sptlrpc_rule_set_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x725a892c RQF_MDS_REINT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x73fc7d82 req_capsule_client_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74774c3c lustre_pack_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74840056 lustre_msg_set_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74eb68e8 ptlrpc_mark_interrupted +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75148d64 do_set_info_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x755533d8 ptlrpc_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x755d939a sptlrpc_req_replace_dead_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75a2c40d ldlm_put_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76b728e5 lustre_swab_update_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x774096d4 req_capsule_client_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77571cc6 lustre_swab_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77840c82 sptlrpc_rule_set_choose +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x779fed76 ldlm_cancel_resource_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78bf9136 lustre_swab_ldlm_lock_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78c98ae8 ptlrpcd_add_rqset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x79a7d863 sptlrpc_cli_unwrap_bulk_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x79e7c9d8 ptlrpc_cleanup_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a80c737 req_capsule_server_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a832f10 RMF_CONN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7af2f774 req_capsule_server_sized_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b158da4 lustre_swab_ldlm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b88b7b6 ldlm_resource_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7bbf8001 RMF_MDT_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7c4c6107 RQF_LDLM_CONVERT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7cfa45ea sptlrpc_unregister_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d1ecd7f RQF_LDLM_INTENT_LAYOUT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d247a2a ldlm_cli_cancel_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d41a8b9 RQF_QUOTA_DQACQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dc0e7cd RMF_QUOTA_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dfb3c18 lustre_msg_clear_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7eee6335 ptlrpc_fail_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4925d8 interval_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4c99b1 ldlm_expired_completion_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f5a1cc7 lustre_msg_set_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f6d2357 lustre_msg_is_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f6f505e ptlrpc_set_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f8d22f0 sptlrpc_import_flush_my_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80a9e8c3 lustre_msg_get_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80ecb4e3 RMF_MDS_HSM_CURRENT_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x817d7f1f lustre_msg_add_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x826d3c4f RQF_LDLM_GL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x829e554c client_import_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x837efb00 RMF_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x83f3f15c ldlm_namespace_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x842392c5 ptlrpc_prep_bulk_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85135801 RMF_DLM_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85a9e0d8 RMF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85eecf67 sptlrpc_get_hash_alg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x863db6eb RMF_HSM_USER_STATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x86fa8c3b ldlm_cli_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8710c2f4 ptlrpcd_alloc_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8760beaf lustre_swab_ldlm_policy_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x876c2551 RMF_GETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87af8a43 ptlrpc_cleanup_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87bf7b3c sptlrpc_get_next_secid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8872f3d2 RMF_SETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x88fff52d RMF_CAPA2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x896ba1af client_import_find_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x89f9edf7 RQF_MDS_REINT_SETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a1ea476 lustre_swab_hsm_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a257736 RQF_MDS_HSM_STATE_GET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a38772a ptlrpc_buf_need_swab +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ac440fa ptlrpc_uuid_to_connection +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b0ff2fd ptlrpc_request_set_replen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b854254 lustre_swab_mgs_config_res +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8baa69ed ptlrpc_at_set_req_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8c9e6a26 ldlm_replay_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cb71d4b RQF_MDS_REINT_CREATE_SLAVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ce39ebc ptlrpc_req_finished_with_imp_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cec4085 sptlrpc_import_sec_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d063210 lprocfs_wr_evict_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d77ea75 lustre_msg_set_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d9bf0fb ldlm_resource_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8da3fca7 lustre_msg_add_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8e1aaaad ptlrpc_request_bufs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8e9abe4d RMF_GENERIC_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f0aceac RQF_MDS_HSM_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f97691b ldlm_prep_elc_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8fec0451 lustre_msg_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x90e4d0e1 ptlrpc_hpreq_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91908d18 llog_origin_handle_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x919c4ce3 RMF_OBD_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91ad6d03 ldlm_pool_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91cf58d3 RQF_MDS_PIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9229fbff ptlrpc_obd_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x937b1ee0 lustre_swab_mdt_ioepoch +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x93a3dc38 ptlrpc_stop_all_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x942bf65f ldlm_pool_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x950d7b7d ptlrpc_prep_fcset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9553c633 RQF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x95791744 lustre_free_reply_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9588b55e ldlm_pool_get_lvf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x95d08f0c lustre_swab_mgs_target_info +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9660ace0 RMF_FLD_MDFLD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x967bfd52 RQF_OBD_PING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9798f2f1 RQF_MDS_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x980fcfdc ptlrpc_connection_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x981d6696 ptlrpc_prep_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x98518b32 ptlrpc_set_import_active +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9873e709 ptl_send_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9935f22d sptlrpc_import_flush_all_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a258886 RQF_MDS_GETSTATUS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a42845e ldlm_lock_downgrade +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a6f2f6d lustre_msg_set_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b88f6ce RMF_NIOBUF_REMOTE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9bb5198b RQF_MDS_CLOSE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9befce9a ldlm_resource_unlink_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9cad4d16 ptlrpc_replay_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9cf3d3c2 ptlrpc_req_set_repsize +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9d7ea314 sptlrpc_pack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9e40a51b sptlrpc_cli_ctx_expire +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9e61ef85 ldlm_extent_shift_kms +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9f613bfc ptlrpc_start_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9fb088f1 lustre_swab_lov_mds_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa0d3dad5 ptlrpc_lprocfs_brw +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa0eeec66 ptlrpc_recover_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa10f0d3d RMF_UPDATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa163f4c3 dump_rniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa203b00c ptlrpc_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2244636 RQF_MDS_GETATTR_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa22c0086 ldlm_error2errno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3731bb7 sptlrpc_lprocfs_cliobd_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3d2a6ee RMF_CAPA1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa47787ef RMF_PTLRPC_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4a2d089 RQF_OST_PUNCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4bea5ef lustre_swab_lmv_user_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5458dad ldlm_lock_decref_and_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5880075 ldlm_errno2error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5897c2a ptlrpc_request_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa6b14392 ptlrpc_pinger_add_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa6c436ca RQF_MDS_WRITEPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7d55cc3 RQF_MDS_REINT_CREATE_RMT_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7e360b1 RMF_OBD_IOOBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7ec567d RMF_CONNECT_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa86cabab sptlrpc_conf_target_get_rules +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa90ade26 req_capsule_client_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa92c51fd ldlm_cli_cancel_unused +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9704f80 lustre_msg_get_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9c4658e lustre_swab_lov_user_md_v3 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9edf09d RQF_OBD_IDX_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xabff1781 ptlrpc_register_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xadd93b2c ldlm_glimpse_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaddc3979 lustre_swab_lustre_capa_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xae83d125 ptlrpc_request_alloc_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xae89af7d llog_origin_handle_next_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf4e9658 RQF_MDS_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf50a0d6 RMF_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0751fa4 RQF_LLOG_ORIGIN_HANDLE_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb18e19a0 ldlm_prep_enqueue_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1b43d8a dump_rcs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb27c2374 lustre_msg_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb291473d lustre_msg_early_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb2b1817d lustre_swab_ost_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4a7ecf3 lustre_msg_add_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4b6df63 ldlm_lock_change_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4f0a5b5 ptlrpc_prep_req_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb512ebc2 sptlrpc_parse_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb5508e1b ldlm_namespace_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb60bb827 ldlm_lock_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb61cb95a RQF_MDS_GETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb68476df interval_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb6aafd03 RQF_MDS_DONE_WRITING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb75390a5 ldlm_enqueue_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7b38189 RMF_MDT_MD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7fa3cc8 RMF_LLOG_LOG_HDR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb8a23c37 req_capsule_has_field +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb903634e RQF_OST_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9b631cf lustre_swab_mgs_config_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbaa6d78f __ptlrpc_prep_bulk_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbaa76097 lustre_msg_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbb622bd5 client_disconnect_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbc1370dc lustre_shrink_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbc82ec7d ptlrpc_resend_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd25749d ldlm_lock_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd83bc44 RQF_OBD_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe47bc7e ping_evictor_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf2b882a ldlm_pool_set_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf98b86f RQF_MDS_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbffd4313 RQF_OST_BRW_WRITE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc06c4670 lustre_msg_get_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0867da7 RMF_REC_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0cdf55e RMF_MGS_SEND_PARAM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc1d284ea ptlrpc_invalidate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2986d28 lustre_swab_ldlm_res_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2b1af57 RQF_MGS_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2be922a RMF_SYMTGT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc49796df sptlrpc_cli_ctx_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc559a634 RMF_LAYOUT_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc5f2a04b req_capsule_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc60a60e1 RQF_OST_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc694be4b RQF_LLOG_ORIGIN_HANDLE_PREV_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc763fabc sptlrpc_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7892544 unlock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc79b9c67 ldlm_pools_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7ca8257 RQF_MDS_REINT_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7e47564 ptlrpc_interrupted_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc89f7c9d ptlrpc_resend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8f586a9 ptlrpc_connection_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xca5a81ec ptlrpc_pinger_ir_down +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcadff51e ldlm_namespace_new +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcaf2847d ldlm_lock_allow_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2cc0cf lustre_swab_lquota_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2ceaff sptlrpc_secflags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb545ee4 ptlrpc_unregister_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcdb7ad25 ldlm_pool_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce1a689b sptlrpc_enc_pool_add_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce86066d lustre_msg_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcec513c9 RQF_MDS_UNPIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xced015be sptlrpc_rule_set_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf00c924 ptlrpc_init_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf66364f ldlm_pool_get_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf781b87 lprocfs_wr_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9963db lustre_msg_get_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9aab6a RQF_MDS_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd0b00dab ptlrpc_request_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd188cc0a ldlm_pool_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2983334 lustre_swab_swap_layouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2e0d4eb lustre_msg_get_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd3dae408 ldlm_it2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd438d6ae ldlm_namespace_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd4a390db ptlrpc_request_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd537ded2 lustre_swab_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd610ad6e ldlm_blocking_ast_nocheck +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd67a5d7b lustre_swab_update_reply_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd69e0a27 RQF_MDS_IS_SUBDIR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6c3ebfb RMF_FIEMAP_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd716cf5e ldlm_namespace_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7570cfa req_capsule_set_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd760186d ptlrpc_req_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7910326 lustre_swab_obd_statfs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd889bcca client_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8b91b3e lustre_swab_lov_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8f06300 RQF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd9561861 RQF_LDLM_INTENT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd97e4bb1 req_capsule_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda2ac111 sptlrpc_proc_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda94a03a ldlm_destroy_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdaae61b6 req_capsule_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb1fb0a2 RQF_MDS_REINT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb2b9a8c lprocfs_wr_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb5190f4 ptlrpc_deactivate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb9d5a6a lustre_swab_niobuf_remote +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdc7f2822 ptlrpc_send_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdcf910b9 lustre_swab_ost_last_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd0ffb04 sptlrpc_flavor2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd30d7bf RMF_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd98ac8c req_capsule_server_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xddc40a85 lustre_msg_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde12d36b RMF_MDS_HSM_ARCHIVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde555d70 sptlrpc_enc_pool_del_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdee87192 sptlrpc_conf_log_update_begin +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf701ae7 lustre_swab_fid2path +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0cc694c RQF_LLOG_ORIGIN_HANDLE_NEXT_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe16a1398 sptlrpc_sec_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe3cfec2e ptlrpc_unregister_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe40e0a50 lustre_msg_get_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe52ece81 ptlrpc_queue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe579a083 ldlm_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe57bd972 sptlrpc_current_user_desc_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe5c10ffd ldlm_namespace_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe5e8169b lustre_errno_ntoh +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe61fc1b2 ldlm_pool_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe643998e RQF_OST_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6f0dc96 RQF_OST_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7062b5f RMF_U32 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7512278 ptlrpcd_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe88264d6 req_capsule_field_present +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe9c7343e ldlm_blocking_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xea90f62f sptlrpc_enc_pool_put_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabaa0b1 lustre_swab_mdt_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabac4fc sptlrpc_rule_set_merge +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xebb64e68 req_layout_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec226f66 ping_evictor_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec939a00 RQF_MDS_REINT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecace5c1 RQF_OST_GET_INFO_GENERIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed1c10d6 ptlrpc_connection_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xedcb740d sptlrpc_name2flavor_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xee7fc9a2 ldlm_destroy_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeeb8b1ee sec2target_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xef1aeca9 RMF_FLD_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0241d6e lustre_swab_hsm_progress_kernel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0d52b5f ptlrpc_pinger_suppress_pings +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf1300275 _sptlrpc_enlarge_msg_inplace +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf25e550a llog_origin_handle_prev_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf277c125 RQF_OST_GET_INFO_FIEMAP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf27d49dc sptlrpc_target_choose_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf35f132b lustre_swab_ldlm_resource_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf37c76a1 sptlrpc_register_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf390dea6 ptlrpc_init_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3d2473c ldlm_lock_fail_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3d44370 RQF_OST_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3f3f79f req_capsule_server_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf43540b9 lustre_swab_mgs_nidtbl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf45085e1 sptlrpc_conf_log_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf55c033b RMF_MGS_CONFIG_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf584a16b sptlrpc_part2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf596e9ae sptlrpc_conf_log_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf607fc23 sptlrpc_flavor2name_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf617ab8a lustre_msg_get_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf697b756 ldlm_dump_all_namespaces +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7408f84 lustre_swab_hsm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf785ea62 ptlrpc_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7ba40c0 RMF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf846c8b3 ptlrpc_request_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf85cb27e sptlrpc_parse_rule +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf870fed9 RQF_LDLM_GL_DESC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9051bd6 RQF_QC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9106183 __ptlrpc_free_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf94e41e0 deuuidify +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf973aa93 lustre_swab_lov_user_md_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9932ad1 ptlrpc_buf_set_swabbed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9ee11e2 lustre_msg_set_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9f72dfc RMF_TGTUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa51688d interval_insert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa780fcc ldlm_lock_allow_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb32578b sptlrpc_target_export_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb665956 ptlrpc_set_add_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc2fa83f ptlrpc_del_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc8eeee2 ptlrpc_set_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd148bf8 RMF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd3507fc ldlm_resource_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfdad1374 _ldlm_lock_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfe799233 ptlrpc_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff02a0e9 ldlm_lock_set_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffc807e8 sptlrpc_unpack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffe29c3f RQF_LDLM_ENQUEUE +EXPORT_SYMBOL drivers/staging/media/cxd2099/cxd2099 0x8292fbdf cxd2099_attach +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x00d7c632 rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0122424a rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x03484d0c rtllib_wpa_supplicant_ioctl +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x069b6e70 rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1a3037ed rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1bc667d7 rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x326950a7 rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x43f9d2f0 rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4ebfef00 Dot11d_Channelmap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x56e22efd rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5a63b55e rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6a52ce70 RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x713f3388 rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x806cb64a rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x83eb55cb dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8795f1bb rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8caf2e2a rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8ed12f7b rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x91f9867d rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x94562263 rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x94bfd4e9 rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9d6593c0 rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9f0df54a rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa3d6b9a8 rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb0156a70 rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb2910595 rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb84bfc76 rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbe109e36 rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbe1420f2 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc1592c75 rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc478cfea rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc64f1202 rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc6f87bf3 rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xca734f42 rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xca79e050 rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xcdd8b7d6 rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xcfbfc583 rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd9e13c83 rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdd7051fb rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdecdb42b HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf7e84dd rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe9b0dca0 rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xee27971e notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xeea8367e rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf0159f78 alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf1610ee3 rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf263181c free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf7988fbf rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf931ceb0 rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xfd69fd9f rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xffb4b204 rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0017f35f set_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x00ea0cde set_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x06d6f244 get_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x09df8f3e set_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0a8d32c3 get_bypass_slave_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1936264c set_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1d2eb8ca get_tap_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x203af1f7 reset_bypass_wd_timer_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2070f14a set_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x27b990ef get_bypass_info_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2ba7cd35 get_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2c3f1c17 get_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2f59e636 get_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2fdb893a get_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x361cf40a get_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x45ca99c3 set_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x550a188c set_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x5cb59e92 get_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x66b60122 set_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x675208c0 set_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x692623f2 get_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x75131ec6 set_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x76c0b7d0 set_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e872825 get_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e8d701e get_wd_expire_time_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x86388b07 get_bp_disc_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x93ae4648 get_wd_set_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x95e42b0d is_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9df5f807 set_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9e21f42e set_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xa689a214 get_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xae117788 get_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xc368d30d get_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xccab5de0 get_bypass_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd3e034b3 get_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9c1ccfc get_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9d38d97 set_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xe640f06e set_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xecdaa456 set_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xedcd3c1b get_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf06d67bf set_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf57c1671 get_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf693c3a1 bp_if_scan_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf8237882 get_bypass_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xfa59240d get_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05af3c4c set_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05b08a42 set_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0b0d5ce0 get_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0fc2e83c reset_bypass_wd_timer +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x123a8133 get_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x157ec89c get_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2440f05a get_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2b01d1d4 set_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2c27a2f0 set_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2da97f4b is_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2e86c67b get_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37416370 get_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37bdab27 get_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x3da96a18 get_bypass_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4025805e get_bypass_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4940a0cc get_bypass_info +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4d21ff51 get_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5147360c get_bp_disc_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x515d4df1 get_bypass_slave +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5560267e set_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5be44d44 set_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6653590c get_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6bda14ec get_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x72c618ae set_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x76d47e6f set_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x794e3815 set_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x7c6cbc16 get_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x84a263dc set_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x8a16f22c set_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x946ff795 get_wd_set_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x94f6aff2 get_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x9d1ecf73 set_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xb1385629 set_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xbff68c45 set_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xc871c561 get_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xcee528df set_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd202dd85 get_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd787f151 get_wd_expire_time +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xdb6a39d2 get_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xebd25ae5 get_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf1e9f8c1 set_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf224abd9 get_tap_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf5a591b2 set_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf643fd4c get_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x2516684d xillybus_do_cleanup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x58693451 xillybus_endpoint_remove +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xd6d0fd7c xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xe5997a7a xillybus_init_endpoint +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0aa720db iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x213b69bf iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2ff1d4f0 iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3292ff74 iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x33faaaf6 iscsit_handle_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3aed7c3f iscsit_set_unsoliticed_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4b1461dd iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4d6351d0 iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4f7d222f iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5c451c46 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x79005cfd iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x879d2f3b iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9437fef0 iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x98482bef iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x98dcf070 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9f089bab iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa12dd6c2 iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa5be568d iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa77e50d8 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa8a14665 iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbc7ad27f iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbd5ae4bb iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc0826541 iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc2d803df iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc7e32b3b iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xebdd582e iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf0236646 iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf0e6d998 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/target_core_mod 0x02aa39d1 transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x02de3b18 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x05002241 sbc_execute_unmap +EXPORT_SYMBOL drivers/target/target_core_mod 0x08b9db26 spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0x0bec2411 target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x0c4ea8df iscsi_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x1285673e target_setup_cmd_from_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x1b64d49e target_put_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x26609a86 transport_subsystem_release +EXPORT_SYMBOL drivers/target/target_core_mod 0x278ac143 iscsi_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x2d390051 transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0x2e5944fa spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x3360c301 core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x342f3e8a transport_check_aborted_status +EXPORT_SYMBOL drivers/target/target_core_mod 0x3661a7e3 transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x3ab71887 transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x3ec10d62 target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x3ec38d7a sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x42ad27f1 transport_subsystem_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x461a0d5a core_tpg_add_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x470ea6e9 transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x4872c655 target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x4bd6402d sas_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x4eb69290 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x52e3d45b transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0x5a696a1d fc_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x5b915440 core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x5f6e9df4 sas_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x62cb5a79 spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0x69470a39 sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x6a35c6b4 target_fabric_configfs_free +EXPORT_SYMBOL drivers/target/target_core_mod 0x768d8163 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0x7c7a5d6e transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x7d31785d sas_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x7dbada9d transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x7eace6fe transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x81409835 target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x83735419 core_tpg_del_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x8538d3e6 core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x85aa880c transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x866cb9a2 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x87b597ee __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x8812a62e transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x887ea9a1 core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x8ec191be transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x8fa04c80 target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0x92100c31 fc_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x9616e157 sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0x99001da4 transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xaf809e74 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xb601f1ec target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0xb6b7eb90 core_tpg_clear_object_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0xb831e76d target_fabric_configfs_register +EXPORT_SYMBOL drivers/target/target_core_mod 0xb99aee1c sas_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0xbb28fc21 iscsi_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0xbdc1e722 transport_init_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0xc5c67f43 fc_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0xcb806934 target_fabric_configfs_init +EXPORT_SYMBOL drivers/target/target_core_mod 0xcc92fe2f transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xcf1441cd target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0xd24c3444 target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xd795df8d fc_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0xdeab7894 transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0xe94d884d core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0xea8abcde spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0xefc62fef target_fabric_configfs_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xf01621c7 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf063fe20 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0xf0c3b853 target_get_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xf9642794 iscsi_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xfa1bb816 transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0xfa795924 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0xfc5844dc core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0xff3cbe86 target_submit_cmd +EXPORT_SYMBOL drivers/vhost/vringh 0x0dda8c5a vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x1f063017 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x2eae4a2a vringh_getdesc_user +EXPORT_SYMBOL drivers/vhost/vringh 0x36dfce73 vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3b304ebb vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3eaf442a vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x3fa42e4f vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x4311cd91 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5dafbd4e vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x66af098b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x6d0e7948 vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x76bd9a5d vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x97fa07e9 vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xaf8e4a0e vringh_notify_disable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xafb47dae vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc884d704 vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc8bee0a4 vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xda4ea4cc vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0xde804bb9 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/video/backlight/generic_bl 0x366d19ef genericbl_limit_intensity +EXPORT_SYMBOL drivers/video/backlight/lcd 0x7f7b86d6 lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0xdc788932 lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xdce39228 devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0xf481ddc0 devm_lcd_device_register +EXPORT_SYMBOL drivers/video/cyber2000fb 0x0cc3ede5 cyber2000fb_detach +EXPORT_SYMBOL drivers/video/cyber2000fb 0x534b6f18 cyber2000fb_disable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xb39f68d1 cyber2000fb_enable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xeb09506e cyber2000fb_attach +EXPORT_SYMBOL drivers/video/macmodes 0x233917d1 mac_vmode_to_var +EXPORT_SYMBOL drivers/video/macmodes 0x8bdd2b83 mac_find_mode +EXPORT_SYMBOL drivers/video/macmodes 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x52c77452 g450_mnp2f +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x8c95199f matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xeb300cc2 matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x069b403b matrox_mystique +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x52a8bfdb matrox_G100 +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x725a6616 DAC1064_global_restore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xb10053c3 DAC1064_global_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_Ti3026 0x19b28672 matrox_millennium +EXPORT_SYMBOL drivers/video/matrox/matroxfb_accel 0xfc3e6532 matrox_cfbX_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x1eabdfaa matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x22806ddf matroxfb_register_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xe4cf5945 matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xeec85c91 matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x29526bae matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x69fb160f matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x61e2876a matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x7ff8c6cd matroxfb_read_pins +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x9142c0b6 matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x96f84b69 matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xefb1305d matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/mb862xx/mb862xxfb 0x6645b86e mb862xxfb_init_accel +EXPORT_SYMBOL drivers/video/output 0x9bc10c07 video_output_unregister +EXPORT_SYMBOL drivers/video/output 0x9de438b9 video_output_register +EXPORT_SYMBOL drivers/video/sis/sisfb 0x3037658e sis_malloc +EXPORT_SYMBOL drivers/video/sis/sisfb 0x454a3cf0 sis_free +EXPORT_SYMBOL drivers/video/svgalib 0x17f3f471 svga_set_default_seq_regs +EXPORT_SYMBOL drivers/video/svgalib 0x1be6dc30 svga_set_textmode_vga_regs +EXPORT_SYMBOL drivers/video/svgalib 0x4534e5a3 svga_tilefill +EXPORT_SYMBOL drivers/video/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/svgalib 0x58f1ea6d svga_tilecursor +EXPORT_SYMBOL drivers/video/svgalib 0x58fcb2c7 svga_get_tilemax +EXPORT_SYMBOL drivers/video/svgalib 0x6e4adb1e svga_check_timings +EXPORT_SYMBOL drivers/video/svgalib 0x78fb80a3 svga_settile +EXPORT_SYMBOL drivers/video/svgalib 0x80f24d95 svga_wcrt_multi +EXPORT_SYMBOL drivers/video/svgalib 0x8de63fb4 svga_set_timings +EXPORT_SYMBOL drivers/video/svgalib 0x8e71112c svga_get_caps +EXPORT_SYMBOL drivers/video/svgalib 0xa8beac95 svga_tilecopy +EXPORT_SYMBOL drivers/video/svgalib 0xc47b3550 svga_tileblit +EXPORT_SYMBOL drivers/video/svgalib 0xd1429fca svga_wseq_multi +EXPORT_SYMBOL drivers/video/svgalib 0xd22ca511 svga_set_default_atc_regs +EXPORT_SYMBOL drivers/video/svgalib 0xe28d2a49 svga_set_default_gfx_regs +EXPORT_SYMBOL drivers/video/svgalib 0xef774f5d svga_compute_pll +EXPORT_SYMBOL drivers/video/svgalib 0xf2db5956 svga_match_format +EXPORT_SYMBOL drivers/video/syscopyarea 0xe4c24307 sys_copyarea +EXPORT_SYMBOL drivers/video/sysfillrect 0x262e7422 sys_fillrect +EXPORT_SYMBOL drivers/video/sysimgblt 0x329c179a sys_imageblit +EXPORT_SYMBOL drivers/video/vgastate 0x686de290 restore_vga +EXPORT_SYMBOL drivers/video/vgastate 0xe7a2620e save_vga +EXPORT_SYMBOL drivers/vme/vme 0x00d7e722 vme_lm_count +EXPORT_SYMBOL drivers/vme/vme 0x072f901c vme_master_rmw +EXPORT_SYMBOL drivers/vme/vme 0x08bf9a17 vme_lm_request +EXPORT_SYMBOL drivers/vme/vme 0x0b51af25 vme_register_bridge +EXPORT_SYMBOL drivers/vme/vme 0x0c6bdc3f vme_master_read +EXPORT_SYMBOL drivers/vme/vme 0x0ec5babe vme_dma_free +EXPORT_SYMBOL drivers/vme/vme 0x1385f8f9 vme_slot_get +EXPORT_SYMBOL drivers/vme/vme 0x2082703a vme_dma_request +EXPORT_SYMBOL drivers/vme/vme 0x20df5a3d vme_dma_pci_attribute +EXPORT_SYMBOL drivers/vme/vme 0x38ae1216 vme_new_dma_list +EXPORT_SYMBOL drivers/vme/vme 0x3d34ba41 vme_register_driver +EXPORT_SYMBOL drivers/vme/vme 0x3e95083c vme_slave_get +EXPORT_SYMBOL drivers/vme/vme 0x46649cd1 vme_lm_set +EXPORT_SYMBOL drivers/vme/vme 0x48b99a13 vme_lm_free +EXPORT_SYMBOL drivers/vme/vme 0x4baf35a7 vme_master_get +EXPORT_SYMBOL drivers/vme/vme 0x51c83a2a vme_irq_free +EXPORT_SYMBOL drivers/vme/vme 0x52983a4f vme_master_write +EXPORT_SYMBOL drivers/vme/vme 0x535c8308 vme_dma_pattern_attribute +EXPORT_SYMBOL drivers/vme/vme 0x5aff4177 vme_lm_get +EXPORT_SYMBOL drivers/vme/vme 0x63741e8b vme_irq_handler +EXPORT_SYMBOL drivers/vme/vme 0x641fef26 vme_bus_type +EXPORT_SYMBOL drivers/vme/vme 0x79a33f85 vme_get_size +EXPORT_SYMBOL drivers/vme/vme 0x7cf35220 vme_master_free +EXPORT_SYMBOL drivers/vme/vme 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL drivers/vme/vme 0x9487dba9 vme_unregister_driver +EXPORT_SYMBOL drivers/vme/vme 0x96149a6c vme_master_request +EXPORT_SYMBOL drivers/vme/vme 0x9aeb07e8 vme_lm_attach +EXPORT_SYMBOL drivers/vme/vme 0xa2a335bd vme_alloc_consistent +EXPORT_SYMBOL drivers/vme/vme 0xa31bdf07 vme_master_set +EXPORT_SYMBOL drivers/vme/vme 0xc81f65a8 vme_irq_generate +EXPORT_SYMBOL drivers/vme/vme 0xca5ee09a vme_free_consistent +EXPORT_SYMBOL drivers/vme/vme 0xd2ea7c3a vme_irq_request +EXPORT_SYMBOL drivers/vme/vme 0xdff905e5 vme_slave_free +EXPORT_SYMBOL drivers/vme/vme 0xe2d89284 vme_dma_list_exec +EXPORT_SYMBOL drivers/vme/vme 0xe4dad90a vme_dma_list_free +EXPORT_SYMBOL drivers/vme/vme 0xe90d24e0 vme_dma_list_add +EXPORT_SYMBOL drivers/vme/vme 0xefd1624a vme_dma_free_attribute +EXPORT_SYMBOL drivers/vme/vme 0xf25eccda vme_slave_request +EXPORT_SYMBOL drivers/vme/vme 0xf37d7c99 vme_unregister_bridge +EXPORT_SYMBOL drivers/vme/vme 0xf5a10e25 vme_slave_set +EXPORT_SYMBOL drivers/vme/vme 0xfacd8e72 vme_dma_vme_attribute +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x1edfb0ca w1_ds2760_recall_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xbda203c4 w1_ds2760_store_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xec8b899d w1_ds2760_write +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xfbe237d5 w1_ds2760_read +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x2525cadd w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x37442e77 w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x71868b7a w1_ds2781_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x7efdcd47 w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/wire 0x497d6d73 w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0x4af421e9 w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0x80b31b3c w1_remove_master_device +EXPORT_SYMBOL drivers/w1/wire 0x9ce1e33e w1_unregister_family +EXPORT_SYMBOL fs/btrfs/btrfs 0x27476846 ulist_reinit +EXPORT_SYMBOL fs/btrfs/btrfs 0x41e6a9d2 ulist_init +EXPORT_SYMBOL fs/btrfs/btrfs 0x7e2ee765 ulist_free +EXPORT_SYMBOL fs/btrfs/btrfs 0xa2eec2e8 ulist_fini +EXPORT_SYMBOL fs/btrfs/btrfs 0xb1320bc8 ulist_add +EXPORT_SYMBOL fs/btrfs/btrfs 0xb42289d2 ulist_alloc +EXPORT_SYMBOL fs/btrfs/btrfs 0xc2c745db ulist_next +EXPORT_SYMBOL fs/configfs/configfs 0x0b147a39 configfs_register_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0x0c9aa8b7 configfs_undepend_item +EXPORT_SYMBOL fs/configfs/configfs 0x0ed18b13 configfs_depend_item +EXPORT_SYMBOL fs/configfs/configfs 0x2af94223 config_group_init +EXPORT_SYMBOL fs/configfs/configfs 0x400ee684 config_group_find_item +EXPORT_SYMBOL fs/configfs/configfs 0x547cfd66 configfs_unregister_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0x574bfc7e config_item_set_name +EXPORT_SYMBOL fs/configfs/configfs 0x62a6c708 config_item_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0x6f5f33a3 config_group_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0x8d062a68 config_item_get +EXPORT_SYMBOL fs/configfs/configfs 0xb4122e87 config_item_put +EXPORT_SYMBOL fs/configfs/configfs 0xe0ffdef5 config_item_init +EXPORT_SYMBOL fs/exofs/libore 0x104da303 extract_attr_from_ios +EXPORT_SYMBOL fs/exofs/libore 0x28806871 ore_verify_layout +EXPORT_SYMBOL fs/exofs/libore 0x40ee0b47 ore_truncate +EXPORT_SYMBOL fs/exofs/libore 0x4527e170 ore_calc_stripe_info +EXPORT_SYMBOL fs/exofs/libore 0x46efcaa7 ore_get_io_state +EXPORT_SYMBOL fs/exofs/libore 0x517bc867 ore_create +EXPORT_SYMBOL fs/exofs/libore 0x56bbbcfd ore_remove +EXPORT_SYMBOL fs/exofs/libore 0x57e3252d ore_get_rw_state +EXPORT_SYMBOL fs/exofs/libore 0xa3d2a634 g_attr_logical_length +EXPORT_SYMBOL fs/exofs/libore 0xaae442a5 ore_check_io +EXPORT_SYMBOL fs/exofs/libore 0xecc0eb9b ore_put_io_state +EXPORT_SYMBOL fs/exofs/libore 0xf28cb07b ore_read +EXPORT_SYMBOL fs/exofs/libore 0xfd156c15 ore_write +EXPORT_SYMBOL fs/fscache/fscache 0x1bc64849 fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0x23c6df42 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x24b62224 fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0x3411c6d5 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x359d0065 fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0x3cdabcda fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0x40f4c281 __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x5082f509 __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x574ecd71 __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x58b91115 fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0x698cddb8 __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x841510b7 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x89ee1632 __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x9538fd84 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0x955082b8 __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0x9893e87e __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0x99752e7c fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0x9dab91b6 fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0xa587b914 __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xa6c24206 __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0xaa7b4de9 __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0xac9ffdef fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0xacbe7400 fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0xb4c0057e __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xb684aa4b __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0xba180cfd fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0xbaefbf9d fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0xbb1d9247 fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0xc0bdb6c3 fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0xc2b1b92c fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0xcab1cb18 __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xd13e3a94 __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0xd48bb807 __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xd8ca0180 __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0xe5269e8e __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0xf178b103 fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0xfb062ab0 __fscache_readpages_cancel +EXPORT_SYMBOL fs/nfsd/nfsd 0x35e33c1e nfs4_acl_write_who +EXPORT_SYMBOL fs/nfsd/nfsd 0x5a157ae4 nfs4_acl_get_whotype +EXPORT_SYMBOL fs/nfsd/nfsd 0xa0f4b528 nfs4_acl_posix_to_nfsv4 +EXPORT_SYMBOL fs/nfsd/nfsd 0xb25b2957 nfs4_acl_nfsv4_to_posix +EXPORT_SYMBOL fs/nfsd/nfsd 0xe13337f0 nfs4_acl_new +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x116c47dd qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x87f642ef qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xd7a7a04a qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xea1dff59 qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xf80d3b9d qtree_entry_unused +EXPORT_SYMBOL lib/cordic 0x434bfd07 cordic_calc_iq +EXPORT_SYMBOL lib/crc-ccitt 0x1a703ba1 crc_ccitt +EXPORT_SYMBOL lib/crc-ccitt 0x75811312 crc_ccitt_table +EXPORT_SYMBOL lib/crc-itu-t 0x6d356209 crc_itu_t +EXPORT_SYMBOL lib/crc-itu-t 0xd29b009f crc_itu_t_table +EXPORT_SYMBOL lib/crc7 0x6c1f6fee crc7 +EXPORT_SYMBOL lib/crc7 0xd80c3603 crc7_syndrome_table +EXPORT_SYMBOL lib/crc8 0xab9ad613 crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xd09b2cba crc8 +EXPORT_SYMBOL lib/crc8 0xd4534d80 crc8_populate_msb +EXPORT_SYMBOL lib/libcrc32c 0x27000b29 crc32c +EXPORT_SYMBOL lib/lru_cache 0x0d3f79e2 lc_find +EXPORT_SYMBOL lib/lru_cache 0x15daccf7 lc_destroy +EXPORT_SYMBOL lib/lru_cache 0x18d72265 lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0x2937f468 lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x2b4dea0e lc_reset +EXPORT_SYMBOL lib/lru_cache 0x3b0c6f1b lc_set +EXPORT_SYMBOL lib/lru_cache 0x3f5e73a0 lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0x4b2b5357 lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0x5a546a55 lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x963de69e lc_committed +EXPORT_SYMBOL lib/lru_cache 0xc4bef5db lc_is_used +EXPORT_SYMBOL lib/lru_cache 0xcb5946de lc_put +EXPORT_SYMBOL lib/lru_cache 0xce3e4f1f lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0xd17b424b lc_create +EXPORT_SYMBOL lib/lru_cache 0xdb79c989 lc_del +EXPORT_SYMBOL lib/lru_cache 0xfe9763a3 lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0xff51ea31 lc_get +EXPORT_SYMBOL lib/lz4/lz4_compress 0x0c222eb5 lz4_compress +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x682a23e0 lz4hc_compress +EXPORT_SYMBOL lib/raid6/raid6_pq 0x0bd662f6 raid6_gfmul +EXPORT_SYMBOL lib/raid6/raid6_pq 0x15fe0cd3 raid6_gfexp +EXPORT_SYMBOL lib/raid6/raid6_pq 0x5ba93f9d raid6_gfinv +EXPORT_SYMBOL lib/raid6/raid6_pq 0xb0d904b7 raid6_empty_zero_page +EXPORT_SYMBOL lib/raid6/raid6_pq 0xce45a6f1 raid6_gfexi +EXPORT_SYMBOL lib/raid6/raid6_pq 0xd9e91f83 raid6_vgfmul +EXPORT_SYMBOL net/802/p8022 0x48e67a43 register_8022_client +EXPORT_SYMBOL net/802/p8022 0x9c391990 unregister_8022_client +EXPORT_SYMBOL net/802/p8023 0xbca19f2f destroy_8023_client +EXPORT_SYMBOL net/802/p8023 0xc11c263c make_8023_client +EXPORT_SYMBOL net/802/psnap 0x0dd1e092 unregister_snap_client +EXPORT_SYMBOL net/802/psnap 0x85eafc95 register_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x0561d737 p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x07985c8b p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x090ea672 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0x114c4fac v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0x17e6c284 p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x1b0f9815 p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0x1b525c1b p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0x1cd42e8b p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0x21fc6500 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0x32b944c1 p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0x35d1e27e p9_idpool_get +EXPORT_SYMBOL net/9p/9pnet 0x3790b035 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x3aeaa2d6 p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x3b77df61 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0x3cc45757 p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x3f923692 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x407061d0 p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0x44d2c2c0 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0x461ddb6c p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x4989091e p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0x5c614592 p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x5feef83e p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0x6ccb3639 p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x724dc30b p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0x7cf436eb p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x7d702241 p9_payload_gup +EXPORT_SYMBOL net/9p/9pnet 0x7f14ca65 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x82a4d3e8 p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0x83bce842 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0x88eb4365 p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0x8c27ad02 p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0x8f44c855 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x91e6b415 p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0x977a0030 p9_nr_pages +EXPORT_SYMBOL net/9p/9pnet 0x985db2ff p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0xa634cf48 p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0xac2fa9fc p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0xb3fa1cfc p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0xba2b090c p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0xc1742652 p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0xc5db54a9 p9_idpool_destroy +EXPORT_SYMBOL net/9p/9pnet 0xda991e49 v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0xdf2cdfe8 v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xe8fd15dc p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0xef87e365 p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0xf4a111d8 p9_idpool_create +EXPORT_SYMBOL net/9p/9pnet 0xf84f2022 p9_idpool_put +EXPORT_SYMBOL net/9p/9pnet 0xf89b0bc8 p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0xf991235b p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0xfd40c79d p9_idpool_check +EXPORT_SYMBOL net/appletalk/appletalk 0x32e66d40 aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0x65dbc3d0 alloc_ltalkdev +EXPORT_SYMBOL net/appletalk/appletalk 0x6c1d1def atrtr_get_dev +EXPORT_SYMBOL net/appletalk/appletalk 0x890a8e27 atalk_find_dev_addr +EXPORT_SYMBOL net/atm/atm 0x19e07bc0 atm_charge +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x3dd253f9 atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x56918f5c deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x6a682a86 atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0x85f4d726 atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x9455fe12 vcc_release_async +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xa7ebd908 atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xb7161cb3 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0xc1b066ab atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0xd07caa89 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0xdefe9a4a atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0xe7290521 vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/atm/atm 0xf751b090 vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0xfac5ae25 vcc_sklist_lock +EXPORT_SYMBOL net/ax25/ax25 0x026c1368 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x0dd96513 ax25_rebuild_header +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x3afee63e ax25_findbyuid +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x4d6ade89 ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0x4eb660eb ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x578a1e85 ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0x5855bcec ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x7e6ea477 ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xd1df8c29 ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xe7c184e0 ax25_hard_header +EXPORT_SYMBOL net/ax25/ax25 0xfa90c999 ax25_listen_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0074e707 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0189c20c __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0344b14a bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0x07231b95 hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0b4a541a hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x10b8e4da bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0x11649b7d hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1268ab39 hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1394c684 bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0x19e50f3f l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x295b4841 bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2c41e592 hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2e65f7de bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x315906af bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x39764332 l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3e3513f8 bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0x482c87d2 l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4bc34bdc bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4ceebf9e bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x58632c75 bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6203e577 hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0x64640c88 __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7c640527 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x80062164 hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x91c9a325 bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x924c6672 hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb0783b41 l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb2da5f5d bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb61a0c3b bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0xbc3d6194 hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc549030e hci_recv_stream_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc5b26cfc hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc5e082bd hci_recv_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcc1fb551 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcce2ca9e l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0xda78ce8a hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdb56fe8c hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdb9762ec bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdcf4e434 bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0xea8044c1 bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0xef531d5f bt_procfs_init +EXPORT_SYMBOL net/bridge/bridge 0x910291f9 br_should_route_hook +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x2cb00ccf ebt_register_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xaf8655de ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xf4b622b7 ebt_do_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +EXPORT_SYMBOL net/caif/caif 0x18b8cdb0 cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x2a09f713 cfpkt_fromnative +EXPORT_SYMBOL net/caif/caif 0x329dbd06 cfpkt_info +EXPORT_SYMBOL net/caif/caif 0x36dbce95 caif_connect_client +EXPORT_SYMBOL net/caif/caif 0x38701a7c cfcnfg_del_phy_layer +EXPORT_SYMBOL net/caif/caif 0x4a237e57 cfpkt_tonative +EXPORT_SYMBOL net/caif/caif 0x6a44fc70 cfpkt_extr_head +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x966d7de2 cfpkt_add_head +EXPORT_SYMBOL net/caif/caif 0x98921796 caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/caif/caif 0xc5423e0b caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0xdd23f663 get_cfcnfg +EXPORT_SYMBOL net/can/can 0x6a2eae21 can_send +EXPORT_SYMBOL net/can/can 0x83c4252b can_rx_unregister +EXPORT_SYMBOL net/can/can 0x97523906 can_ioctl +EXPORT_SYMBOL net/can/can 0xb0c4c7d0 can_proto_register +EXPORT_SYMBOL net/can/can 0xd08123a3 can_proto_unregister +EXPORT_SYMBOL net/can/can 0xfdc02360 can_rx_register +EXPORT_SYMBOL net/ceph/libceph 0x034fc770 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0x051779de osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0x091555e9 osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x09290ab3 ceph_debugfs_init +EXPORT_SYMBOL net/ceph/libceph 0x09a43bdf ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0x0bac8cda osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0x0cc04bf4 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0x0d5a3dce ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0x0d61c270 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0x12889adc ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0x1475bf0d ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x197effcb ceph_osdc_release_request +EXPORT_SYMBOL net/ceph/libceph 0x19e57c93 ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0x1bb1a2fc ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0x1d074bdb __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x1f7d79b2 ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x20d151cb ceph_osdc_setup +EXPORT_SYMBOL net/ceph/libceph 0x21462f86 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0x253c7c9f osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0x26ff8eec ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x3032abb7 ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0x317929d0 ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0x326bafda ceph_osdc_build_request +EXPORT_SYMBOL net/ceph/libceph 0x329670ca ceph_get_direct_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x3484dac0 osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x37713171 ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0x39bc7099 ceph_monc_create_snapid +EXPORT_SYMBOL net/ceph/libceph 0x3abec91f ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x3baf5329 ceph_osdc_cancel_event +EXPORT_SYMBOL net/ceph/libceph 0x3df0ec7c ceph_calc_ceph_pg +EXPORT_SYMBOL net/ceph/libceph 0x3f688151 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x41b4b462 ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x4205ffd7 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0x43e458f6 ceph_file_part +EXPORT_SYMBOL net/ceph/libceph 0x43efd647 ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x4a283545 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x5111fc7c ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0x5379cea3 ceph_caps_for_mode +EXPORT_SYMBOL net/ceph/libceph 0x53b826f6 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x5632657a ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x570ceb67 ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x590cfb65 osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x5c9b6790 ceph_osdc_put_event +EXPORT_SYMBOL net/ceph/libceph 0x6142e41c ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x65b186fd ceph_osdc_writepages +EXPORT_SYMBOL net/ceph/libceph 0x6b2e3bcd ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x6c3ed44a ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0x6c5d5ac1 ceph_calc_pg_primary +EXPORT_SYMBOL net/ceph/libceph 0x6d78211f ceph_osdc_set_request_linger +EXPORT_SYMBOL net/ceph/libceph 0x6f0f509b ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0x7168baf8 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0x7316d374 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x740c93a3 ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x77692acb ceph_msg_last_put +EXPORT_SYMBOL net/ceph/libceph 0x77ac423e osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x78785789 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x79dc28f2 ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0x7adfd934 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x7f7d8d90 ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x814cbf8d ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0x81eae1b6 ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0x820c6200 ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0x861a6a63 ceph_monc_got_mdsmap +EXPORT_SYMBOL net/ceph/libceph 0x889836da ceph_osdc_readpages +EXPORT_SYMBOL net/ceph/libceph 0x8fd42c82 osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x99e36571 ceph_osdc_cleanup +EXPORT_SYMBOL net/ceph/libceph 0x9f534f4d ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xa35855b1 ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xa3edd8e6 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0xac0e3726 ceph_copy_page_vector_to_user +EXPORT_SYMBOL net/ceph/libceph 0xae3515ba ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb6081d6d ceph_msgr_exit +EXPORT_SYMBOL net/ceph/libceph 0xb99703d1 ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xc1f003b4 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0xc4a80955 ceph_debugfs_cleanup +EXPORT_SYMBOL net/ceph/libceph 0xc55de604 ceph_parse_options +EXPORT_SYMBOL net/ceph/libceph 0xc59a1b7d ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0xc7858943 ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xc9f82b38 ceph_msgr_init +EXPORT_SYMBOL net/ceph/libceph 0xca04261d ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xcb50a624 ceph_parse_ips +EXPORT_SYMBOL net/ceph/libceph 0xcbe90e7f osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0xcc8436dd ceph_client_id +EXPORT_SYMBOL net/ceph/libceph 0xcf55c0f8 ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xd189c616 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0xd1e1e24a osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xd2c107bb ceph_flags_to_mode +EXPORT_SYMBOL net/ceph/libceph 0xd8ef4eb0 osd_req_op_watch_init +EXPORT_SYMBOL net/ceph/libceph 0xdb4596ef ceph_osdc_unregister_linger_request +EXPORT_SYMBOL net/ceph/libceph 0xe27ec6f2 ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xe47666da osd_req_op_cls_response_data +EXPORT_SYMBOL net/ceph/libceph 0xe82c9c32 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0xe9e8428b ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0xeb319a7f osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0xed229339 ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0xf2fb0c56 ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0xf5774cba ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0xf7de165a ceph_osdc_create_event +EXPORT_SYMBOL net/ceph/libceph 0xf81934f8 ceph_release_page_vector +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x5dd53b20 dccp_syn_ack_timeout +EXPORT_SYMBOL net/ieee802154/ieee802154 0x11af8b0d wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0x36db990f wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0x4a746c3d wpan_phy_alloc +EXPORT_SYMBOL net/ieee802154/ieee802154 0x668b29d1 ieee802154_nl_assoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x6cff5aba ieee802154_nl_beacon_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x700e5a3a ieee802154_nl_start_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x737d532a ieee802154_nl_disassoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0xa438c101 ieee802154_nl_disassoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0xa8b73589 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0xb5381fad wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0xc2e6e926 wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0xe52fd3a5 ieee802154_nl_assoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0xfb14ea72 ieee802154_nl_scan_confirm +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x1e7bc15c arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x7b7075ea arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xe9052308 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x1cf3f48d ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xa510cc49 ipt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xdf0a4c3b ipt_unregister_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x0f02ec60 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv4/tunnel4 0xaafc79fe xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xb6ac80fc ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xb7ae0523 ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x94604ea7 ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xa38673ec ip6t_register_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xdd017b3a ip6t_do_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x5f2b3b0c xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/tunnel6 0xc9c164f0 xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x1f69da19 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xc8f123f4 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x058bf246 ircomm_close +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x0d0a5a2c ircomm_disconnect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x60d12906 ircomm_connect_response +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x61b51811 ircomm_connect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xc303f0c6 ircomm_data_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xd93694fc ircomm_open +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xdc8f88f6 ircomm_control_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xe512876e ircomm_flow_request +EXPORT_SYMBOL net/irda/irda 0x01590a8b irias_delete_object +EXPORT_SYMBOL net/irda/irda 0x041570a9 irias_insert_object +EXPORT_SYMBOL net/irda/irda 0x06a3ee58 irias_new_integer_value +EXPORT_SYMBOL net/irda/irda 0x07015ee1 hashbin_delete +EXPORT_SYMBOL net/irda/irda 0x07d3647c irlmp_register_service +EXPORT_SYMBOL net/irda/irda 0x0868991e async_unwrap_char +EXPORT_SYMBOL net/irda/irda 0x08ae5a23 irlap_close +EXPORT_SYMBOL net/irda/irda 0x147d3fbe irda_notify_init +EXPORT_SYMBOL net/irda/irda 0x1a9f11b6 hashbin_get_first +EXPORT_SYMBOL net/irda/irda 0x2036ad06 irda_param_insert +EXPORT_SYMBOL net/irda/irda 0x22927cfe irlmp_close_lsap +EXPORT_SYMBOL net/irda/irda 0x2a17732a hashbin_insert +EXPORT_SYMBOL net/irda/irda 0x2a22a383 irttp_flow_request +EXPORT_SYMBOL net/irda/irda 0x33cbe2c6 proc_irda +EXPORT_SYMBOL net/irda/irda 0x36fb67b2 irlmp_data_request +EXPORT_SYMBOL net/irda/irda 0x448b8aaa irda_qos_bits_to_value +EXPORT_SYMBOL net/irda/irda 0x45d1f00b iriap_getvaluebyclass_request +EXPORT_SYMBOL net/irda/irda 0x46c1c4a2 irlmp_unregister_service +EXPORT_SYMBOL net/irda/irda 0x50050c32 irlap_open +EXPORT_SYMBOL net/irda/irda 0x56b99f6a hashbin_new +EXPORT_SYMBOL net/irda/irda 0x6b043eba irda_init_max_qos_capabilies +EXPORT_SYMBOL net/irda/irda 0x6b7f50b3 hashbin_find +EXPORT_SYMBOL net/irda/irda 0x6faac0fd iriap_close +EXPORT_SYMBOL net/irda/irda 0x7042bc54 irlmp_register_client +EXPORT_SYMBOL net/irda/irda 0x763e54a4 irlmp_unregister_client +EXPORT_SYMBOL net/irda/irda 0x7957f728 irlmp_update_client +EXPORT_SYMBOL net/irda/irda 0x833ddb41 irttp_open_tsap +EXPORT_SYMBOL net/irda/irda 0x8ae57051 irda_device_set_media_busy +EXPORT_SYMBOL net/irda/irda 0x8e759656 iriap_open +EXPORT_SYMBOL net/irda/irda 0x91815586 irda_param_pack +EXPORT_SYMBOL net/irda/irda 0x91fa24b9 irttp_data_request +EXPORT_SYMBOL net/irda/irda 0x938c81e0 irlmp_open_lsap +EXPORT_SYMBOL net/irda/irda 0x9516f690 irias_add_integer_attrib +EXPORT_SYMBOL net/irda/irda 0x993ad14b irda_param_extract_all +EXPORT_SYMBOL net/irda/irda 0x995a3e6d irttp_connect_request +EXPORT_SYMBOL net/irda/irda 0xa22b7b10 irttp_connect_response +EXPORT_SYMBOL net/irda/irda 0xaad2d90a irias_find_object +EXPORT_SYMBOL net/irda/irda 0xaec635e4 irias_add_octseq_attrib +EXPORT_SYMBOL net/irda/irda 0xb48bab61 irttp_close_tsap +EXPORT_SYMBOL net/irda/irda 0xb9394173 irias_delete_value +EXPORT_SYMBOL net/irda/irda 0xbb8527b1 alloc_irdadev +EXPORT_SYMBOL net/irda/irda 0xbcd3ef13 irias_object_change_attribute +EXPORT_SYMBOL net/irda/irda 0xbe40ace9 irlmp_discovery_request +EXPORT_SYMBOL net/irda/irda 0xc381a008 irttp_dup +EXPORT_SYMBOL net/irda/irda 0xd22e8861 irias_add_string_attrib +EXPORT_SYMBOL net/irda/irda 0xd7702e20 irias_new_object +EXPORT_SYMBOL net/irda/irda 0xdc3fcb3a irlmp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0xdd988ce6 hashbin_lock_find +EXPORT_SYMBOL net/irda/irda 0xde4c6b3c irlmp_service_to_hint +EXPORT_SYMBOL net/irda/irda 0xe32454f7 async_wrap_skb +EXPORT_SYMBOL net/irda/irda 0xe58ba397 hashbin_get_next +EXPORT_SYMBOL net/irda/irda 0xe6e3ed20 irlmp_connect_response +EXPORT_SYMBOL net/irda/irda 0xe7aa593d hashbin_remove_this +EXPORT_SYMBOL net/irda/irda 0xebf0eef7 irlmp_connect_request +EXPORT_SYMBOL net/irda/irda 0xedd521c2 irlmp_get_discoveries +EXPORT_SYMBOL net/irda/irda 0xf0f25ffe hashbin_remove +EXPORT_SYMBOL net/irda/irda 0xf1957164 irttp_udata_request +EXPORT_SYMBOL net/irda/irda 0xf5ff1c45 irttp_disconnect_request +EXPORT_SYMBOL net/l2tp/l2tp_core 0x4eddfb6a l2tp_recv_common +EXPORT_SYMBOL net/lapb/lapb 0x02b4f8ec lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0x05b7123e lapb_register +EXPORT_SYMBOL net/lapb/lapb 0x10ece7e0 lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0x16fe72d5 lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0x2cb40d02 lapb_unregister +EXPORT_SYMBOL net/lapb/lapb 0x5e23bf0d lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0xaf5f44a6 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0xd2ab9afe lapb_data_received +EXPORT_SYMBOL net/llc/llc 0x04624b3d llc_add_pack +EXPORT_SYMBOL net/llc/llc 0x1c8a3e77 llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x784bb5f1 llc_sap_close +EXPORT_SYMBOL net/llc/llc 0xbbb53ad4 llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0xcc49b2b2 llc_sap_list_lock +EXPORT_SYMBOL net/llc/llc 0xf214400f llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0xf45f23fc llc_sap_open +EXPORT_SYMBOL net/llc/llc 0xfec281dd llc_sap_find +EXPORT_SYMBOL net/mac80211/mac80211 0x009376f2 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x01fcbbab ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x05a7b779 ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0x080d89e2 ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x119b5c47 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x1714eced ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x17ff8bb0 ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x1e39a0c7 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0x1ea28f42 ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x2068f9ae ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0x21a2ae71 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0x2505cdfd ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0x28b27dfc ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x2c9cfbb0 ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x2efca953 ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x2f88dc13 __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x3685a136 ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x3802e177 ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x39d693b6 ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0x409fc0e2 ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0x423891f5 ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x442b741a ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x49381cc3 ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0x545951cd ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x558a0644 ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x55fd47ec ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0x5af2b136 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x5c28cca5 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x668b35d8 ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x66adfdd0 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x6f75ef35 ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x6ff89e62 ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0x7082dcd1 ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0x73d2af2d ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x75d7efc3 ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x776dd171 ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x79603793 ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x804e35c2 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x8174b118 ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0x8787b413 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x902a11a9 ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x902faee1 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x907d6dee ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x97893a30 ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x979b1ab6 __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x9c5e6334 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0x9f14c8f7 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xa1b63cb4 ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0xa1fc36c4 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xaa157485 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0xc421bd36 ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0xc690e5e6 ieee80211_alloc_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xc7e9782e ieee80211_get_key_tx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xc87d760d rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xca00c451 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0xcabd6fa1 rate_control_send_low +EXPORT_SYMBOL net/mac80211/mac80211 0xcccafe99 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xd1cacbda ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0xd29a53ad ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0xd9a05955 __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xdbacad80 ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0xddb47d52 ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xe4462e17 ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0xe8ab0b22 ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xebbcbe40 ieee80211_rx +EXPORT_SYMBOL net/mac80211/mac80211 0xebcebaed wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xeffc0a54 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0xf395de03 ieee80211_aes_cmac_calculate_k1_k2 +EXPORT_SYMBOL net/mac80211/mac80211 0xf5a08e60 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xf8c1df0d ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0xfb45e12f ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xfd633faa ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac802154/mac802154 0x31cb5491 ieee802154_alloc_device +EXPORT_SYMBOL net/mac802154/mac802154 0x89526f88 ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0xa170396e ieee802154_free_device +EXPORT_SYMBOL net/mac802154/mac802154 0xa67c8ab1 ieee802154_register_device +EXPORT_SYMBOL net/mac802154/mac802154 0xd3f984e5 ieee802154_unregister_device +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x0e8095a6 unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x14da5e4a register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x379b7716 ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3a390fed register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x58c0de4b ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x64562274 ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x66050df7 ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x802196d5 register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x82b00553 unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xb3742edd ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc1922324 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc1f0940c ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc80fd4a1 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xf65b29f1 ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x0b14ea93 __nf_ct_ext_add_length +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x23254e73 __nf_ct_ext_destroy +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x507d3160 nf_conntrack_untracked +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0x827cc6a1 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_conntrack_proto_gre 0xe5580394 nf_ct_gre_keymap_flush +EXPORT_SYMBOL net/netfilter/nf_nat 0x3de43bfc nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0x3ec9e62c nf_nat_used_tuple +EXPORT_SYMBOL net/netfilter/nf_nat 0x53016dc9 nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0x63a76b10 __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x6533f0af nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xda1de520 nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/x_tables 0x08c473b7 xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0x173ceafe xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x18af6f86 xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x253e8b44 xt_compat_init_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x30d0ca01 xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x599f8ce4 xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0x59ac14a2 xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0x844b77bd xt_find_target +EXPORT_SYMBOL net/netfilter/x_tables 0xa4173bbe xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0xb28f5ef1 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xe7947499 xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0xf6ce3af7 xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0xfce0c878 xt_register_target +EXPORT_SYMBOL net/nfc/hci/hci 0x0ea720cf nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x1277577a nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0x1504723b nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0x176b8d1a nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0x23eb65a1 nfc_hci_send_response +EXPORT_SYMBOL net/nfc/hci/hci 0x2890979b nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0x37e3a92b nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0x3e1dba11 nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0x43028a27 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x63f27c51 nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x757b8426 nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0xa0d039a7 nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0xab18176b nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0xb317ba9b nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0xb569acfe nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0xbca0b4fd nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xc36a8d6c nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xda097673 nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0xe8557d4a nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0xed7d84c6 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0x3649f7da nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0x4fc4340e nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x528f228e nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0x698e7487 nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0xb13c506b nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nfc 0x1ddfae22 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0x272b406d nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0x311711c6 nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0x363a73aa nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0x47c97c0c nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0x6020878d nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x7e076d1d nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0x9c662798 nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xa613f32a nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0xb02f4503 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0xb5ca6728 nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0xb8f13dae nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0xc839dad7 nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0xcc40eb68 nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0xcc4b6456 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0xeb333910 nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xefefa19e nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0xfbb88d6f nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0xfe841021 nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0xffff35ef nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc_digital 0x92b92d2b nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xaeb195cf nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xca09b698 nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xd7cea172 nfc_digital_unregister_device +EXPORT_SYMBOL net/phonet/phonet 0x12c8d196 phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0x2452991d phonet_proto_register +EXPORT_SYMBOL net/phonet/phonet 0x3663843d phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0x3c019066 pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0x583cbf30 phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0x89c3da97 pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0xde98cac9 pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0xe4b45061 pn_sock_hash +EXPORT_SYMBOL net/rds/rds 0x7505d413 rds_str_array +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x0fda8d35 rxrpc_kernel_data_delivered +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x14cbbfde rxrpc_kernel_is_data_last +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x289f50ac rxrpc_kernel_free_skb +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x4090a5bf rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x49c7e2d9 rxrpc_kernel_reject_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x4ba513e5 rxrpc_kernel_accept_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x87feceaf key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x92992cc4 rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xb35b8955 rxrpc_kernel_intercept_rx_messages +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xb5a7d3f0 rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xb61741ed rxrpc_kernel_get_error_number +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xc225534a rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xc634449d rxrpc_kernel_get_abort_code +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xf3ad0378 rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xf5e627c1 rxrpc_kernel_begin_call +EXPORT_SYMBOL net/sctp/sctp 0xea276d0c sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x207e06e4 gss_mech_get +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x95525c8f gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xe7b82531 gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/sunrpc 0xfb026ad5 svc_pool_stats_open +EXPORT_SYMBOL net/wimax/wimax 0x471d3b23 wimax_reset +EXPORT_SYMBOL net/wimax/wimax 0x8f1f6328 wimax_rfkill +EXPORT_SYMBOL net/wireless/cfg80211 0x040f7374 cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x04323493 cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x06451d63 cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x09c64fbd ieee80211_frequency_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x0e1b2a1f cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0x0fb7f38c wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x118d0e6e cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x1494cc7d ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x17cf2d49 cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x1952f5ef cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0x19e03378 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0x1b7ad818 cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x1c3530a1 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0x216267cd ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0x26b017e0 cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0x277a7f47 cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x2b41e50f wiphy_new +EXPORT_SYMBOL net/wireless/cfg80211 0x2d0de84f cfg80211_inform_bss_width +EXPORT_SYMBOL net/wireless/cfg80211 0x33d0beba cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x3aecb49c cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x3ba1894e cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0x3ce5dbbd wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0x3ebb8563 cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x406a8302 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x4a77c3d3 cfg80211_rx_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x4c3b5878 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x4c40b2fb ieee80211_bss_get_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x549ae50f ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x57816dd8 cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0x68fd3d4c cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x69482b18 cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6d2508bb wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0x6d6cb9ad ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x71b9624c cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x7405b48b cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0x75e7ebf7 wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0x7abcfbf6 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0x7daeabdd cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7fdddbe2 cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x7fe1a403 cfg80211_find_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x878646b0 cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x8a1ffc5c regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0x8b1179bb cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0x8d061710 wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x8f57ae47 cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x9099ef94 cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0x92e856fb cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x982e6b6d ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0x9c4f6575 cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xa1425906 ieee80211_channel_to_frequency +EXPORT_SYMBOL net/wireless/cfg80211 0xa197b1ff ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xa4a0a772 cfg80211_roamed_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xa5113207 cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xa683e0bc cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xaa4abb40 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0xabbddf5c cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0xae7b26a7 ieee80211_data_to_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0xb302e6bb __ieee80211_get_channel +EXPORT_SYMBOL net/wireless/cfg80211 0xb8d1962a cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xba206951 cfg80211_report_obss_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xbb4460d6 ieee80211_data_from_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0xc15c8611 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0xc63f1b81 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0xccbe3f05 cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0xcd197f13 cfg80211_del_sta +EXPORT_SYMBOL net/wireless/cfg80211 0xcf618a57 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0xd05321aa cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xd0b96738 freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0xd14eb2ba cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0xd80a0dcc cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xde176335 cfg80211_connect_result +EXPORT_SYMBOL net/wireless/cfg80211 0xe2391563 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xe58dda6f cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0xe6a1f657 cfg80211_inform_bss_width_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xe773c60a cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0xee42db3c cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xf04ca259 cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xf7edeabf wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0xfbea3ef0 cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xfecf6c1a cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0xfed4d591 cfg80211_find_vendor_ie +EXPORT_SYMBOL net/wireless/lib80211 0x2d0f99e5 print_ssid +EXPORT_SYMBOL net/wireless/lib80211 0x30cbf3ff lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0x423025b2 lib80211_get_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x5d3e68a8 lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x92da8801 lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xf47895ee lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0xfc450e03 lib80211_crypt_info_free +EXPORT_SYMBOL vmlinux 0x00000000 __symbol_put +EXPORT_SYMBOL vmlinux 0x00000000 current_fs_time +EXPORT_SYMBOL vmlinux 0x00000000 d_tmpfile +EXPORT_SYMBOL vmlinux 0x00000000 do_sync_read +EXPORT_SYMBOL vmlinux 0x00000000 filp_close +EXPORT_SYMBOL vmlinux 0x00000000 finish_open +EXPORT_SYMBOL vmlinux 0x00000000 generic_getxattr +EXPORT_SYMBOL vmlinux 0x00000000 generic_write_sync +EXPORT_SYMBOL vmlinux 0x00000000 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x00000000 in_group_p +EXPORT_SYMBOL vmlinux 0x00000000 inode_add_bytes +EXPORT_SYMBOL vmlinux 0x00000000 iov_shorten +EXPORT_SYMBOL vmlinux 0x00000000 iterate_fd +EXPORT_SYMBOL vmlinux 0x00000000 ns_capable +EXPORT_SYMBOL vmlinux 0x00000000 path_is_under +EXPORT_SYMBOL vmlinux 0x00000000 register_exec_domain +EXPORT_SYMBOL vmlinux 0x00000000 sock_register +EXPORT_SYMBOL vmlinux 0x00000000 sys_close +EXPORT_SYMBOL vmlinux 0x00000000 task_nice +EXPORT_SYMBOL vmlinux 0x00000000 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x00000000 vm_brk +EXPORT_SYMBOL vmlinux 0x0004c741 nf_log_register +EXPORT_SYMBOL vmlinux 0x00071de6 unregister_console +EXPORT_SYMBOL vmlinux 0x0007e4b5 idr_for_each +EXPORT_SYMBOL vmlinux 0x0009a4c5 scsi_device_set_state +EXPORT_SYMBOL vmlinux 0x0055e014 thaw_bdev +EXPORT_SYMBOL vmlinux 0x00675960 dev_printk +EXPORT_SYMBOL vmlinux 0x00801678 flush_scheduled_work +EXPORT_SYMBOL vmlinux 0x0081b854 dcache_dir_close +EXPORT_SYMBOL vmlinux 0x00cf4a7f of_get_parent +EXPORT_SYMBOL vmlinux 0x00d6e2ad bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x00dda22d max8925_bulk_write +EXPORT_SYMBOL vmlinux 0x00deea4a key_invalidate +EXPORT_SYMBOL vmlinux 0x00eef49e __strnlen_user +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x01031b88 __idr_remove_all +EXPORT_SYMBOL vmlinux 0x01139ffc max_mapnr +EXPORT_SYMBOL vmlinux 0x013c718a tcp_parse_options +EXPORT_SYMBOL vmlinux 0x014f41a8 pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0x01651141 mmc_put_card +EXPORT_SYMBOL vmlinux 0x0171d14d tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0x01790e94 csum_partial_copy +EXPORT_SYMBOL vmlinux 0x01902adf netpoll_trap +EXPORT_SYMBOL vmlinux 0x01b1f5c5 napi_complete +EXPORT_SYMBOL vmlinux 0x01baac5e dm_get_mapinfo +EXPORT_SYMBOL vmlinux 0x01c96f71 thermal_cdev_update +EXPORT_SYMBOL vmlinux 0x01d01ad5 arp_invalidate +EXPORT_SYMBOL vmlinux 0x01e57961 dump_emit +EXPORT_SYMBOL vmlinux 0x01e6e346 skb_copy_datagram_const_iovec +EXPORT_SYMBOL vmlinux 0x020c89cf mmc_add_host +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x0245de43 clocksource_unregister +EXPORT_SYMBOL vmlinux 0x0258a698 inet_sendmsg +EXPORT_SYMBOL vmlinux 0x026092a3 blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x02649054 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x027afbf2 bitmap_unplug +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a6ce5a crc16_table +EXPORT_SYMBOL vmlinux 0x02b1869a remove_proc_subtree +EXPORT_SYMBOL vmlinux 0x02b2fcc7 generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0x02bac78c scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0x02e662a3 check_disk_size_change +EXPORT_SYMBOL vmlinux 0x02f73c4a dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0x030e38fa __find_get_block +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x03592ea0 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x035f891b down_interruptible +EXPORT_SYMBOL vmlinux 0x03648dad clear_bdi_congested +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x03703b54 phy_ethtool_sset +EXPORT_SYMBOL vmlinux 0x03771b39 seq_putc +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x0384dc47 request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0x03adde9b tty_schedule_flip +EXPORT_SYMBOL vmlinux 0x03c06156 bitmap_fold +EXPORT_SYMBOL vmlinux 0x03c32f37 padata_add_cpu +EXPORT_SYMBOL vmlinux 0x03cf0293 of_phy_find_device +EXPORT_SYMBOL vmlinux 0x03e034d0 dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0x03ebda85 dns_query +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x042135e7 inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0x0422fe4a inet_csk_timer_bug_msg +EXPORT_SYMBOL vmlinux 0x043a99cd __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x04543648 writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x047f99b0 account_page_redirty +EXPORT_SYMBOL vmlinux 0x04834f92 __free_pages +EXPORT_SYMBOL vmlinux 0x0487f831 fb_find_best_display +EXPORT_SYMBOL vmlinux 0x048afd81 block_truncate_page +EXPORT_SYMBOL vmlinux 0x049f839c dma_sync_wait +EXPORT_SYMBOL vmlinux 0x04a4699f ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0x04a5110c submit_bio +EXPORT_SYMBOL vmlinux 0x04becaf0 simple_getattr +EXPORT_SYMBOL vmlinux 0x04c99a61 ___pskb_trim +EXPORT_SYMBOL vmlinux 0x04cb89a2 jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x04d89fe0 security_mmap_file +EXPORT_SYMBOL vmlinux 0x04df92f3 twl6040_reg_read +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04ea5d10 ksize +EXPORT_SYMBOL vmlinux 0x05075d19 fifo_set_limit +EXPORT_SYMBOL vmlinux 0x05186ca4 flush_icache_range +EXPORT_SYMBOL vmlinux 0x051acc2b tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x05347274 skb_checksum_help +EXPORT_SYMBOL vmlinux 0x0539e277 backlight_device_register +EXPORT_SYMBOL vmlinux 0x054434d6 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x0546ed94 xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0x0558efe0 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0x055bb3da backlight_force_update +EXPORT_SYMBOL vmlinux 0x055c8559 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x05646322 swiotlb_unmap_sg +EXPORT_SYMBOL vmlinux 0x0571cf9a nf_ct_attach +EXPORT_SYMBOL vmlinux 0x0582793b jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0x0593a99b init_timer_key +EXPORT_SYMBOL vmlinux 0x05beec2d cdev_add +EXPORT_SYMBOL vmlinux 0x05c81ed9 dev_addr_add +EXPORT_SYMBOL vmlinux 0x05da799d inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0x05dc182e file_remove_suid +EXPORT_SYMBOL vmlinux 0x05f487c9 generic_file_open +EXPORT_SYMBOL vmlinux 0x05f6e79c scsi_block_requests +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x064c347e vm_mmap +EXPORT_SYMBOL vmlinux 0x065894a3 splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0x06670836 pci_restore_state +EXPORT_SYMBOL vmlinux 0x066ac35d mmc_register_driver +EXPORT_SYMBOL vmlinux 0x067d8d35 security_release_secctx +EXPORT_SYMBOL vmlinux 0x0686548b ll_rw_block +EXPORT_SYMBOL vmlinux 0x06d54e37 unregister_md_personality +EXPORT_SYMBOL vmlinux 0x06fe3b14 default_grn +EXPORT_SYMBOL vmlinux 0x07064560 gen10g_config_aneg +EXPORT_SYMBOL vmlinux 0x0727c4f3 iowrite8 +EXPORT_SYMBOL vmlinux 0x073633eb simple_rmdir +EXPORT_SYMBOL vmlinux 0x0736ca5e lock_may_write +EXPORT_SYMBOL vmlinux 0x0745062a mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x074af6fb inet6_ioctl +EXPORT_SYMBOL vmlinux 0x0756fbf1 __alloc_skb +EXPORT_SYMBOL vmlinux 0x076fbf44 idr_replace +EXPORT_SYMBOL vmlinux 0x0799aca4 local_bh_enable +EXPORT_SYMBOL vmlinux 0x079e697d swiotlb_map_sg +EXPORT_SYMBOL vmlinux 0x07a4b688 max8998_update_reg +EXPORT_SYMBOL vmlinux 0x07a7c036 security_inode_readlink +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07b60c8b install_exec_creds +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07d184a8 bdi_init +EXPORT_SYMBOL vmlinux 0x07dfd296 swiotlb_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0x07f0cc15 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x07f642b5 inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0x07fe51b6 blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0x081f1b43 input_get_keycode +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x083c2cbe of_get_next_parent +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x0841ce3b mount_bdev +EXPORT_SYMBOL vmlinux 0x08444b3f mmc_gpio_free_ro +EXPORT_SYMBOL vmlinux 0x084d8554 open_exec +EXPORT_SYMBOL vmlinux 0x085b8e7b padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x086c2b89 inet6_protos +EXPORT_SYMBOL vmlinux 0x08885d1b generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0x088bc8be mutex_lock +EXPORT_SYMBOL vmlinux 0x0898374d simple_rename +EXPORT_SYMBOL vmlinux 0x08a5ad82 bio_integrity_set_tag +EXPORT_SYMBOL vmlinux 0x08b836d1 kfree_skb_partial +EXPORT_SYMBOL vmlinux 0x08d25fab serio_interrupt +EXPORT_SYMBOL vmlinux 0x08d5f303 gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0x0907cf78 thaw_super +EXPORT_SYMBOL vmlinux 0x09088d62 xfrm6_prepare_output +EXPORT_SYMBOL vmlinux 0x09112b3d netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0x091c6eab inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0x093bfc3f proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x0941c329 in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x0957ecc4 iput +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x09c55cec schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09d53711 udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0x09d72123 iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0x09ecb6f7 compat_sock_get_timestamp +EXPORT_SYMBOL vmlinux 0x09f0d400 inet_frag_evictor +EXPORT_SYMBOL vmlinux 0x0a000a5e seq_escape +EXPORT_SYMBOL vmlinux 0x0a093da8 tty_kref_put +EXPORT_SYMBOL vmlinux 0x0a1c2896 jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0x0a2487e0 unblock_all_signals +EXPORT_SYMBOL vmlinux 0x0a263125 phy_device_create +EXPORT_SYMBOL vmlinux 0x0a28fbbe jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0x0a2bbde1 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x0a2e3b80 tty_hangup +EXPORT_SYMBOL vmlinux 0x0a656302 rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0x0a6b8c83 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0x0a6cccb5 set_device_ro +EXPORT_SYMBOL vmlinux 0x0a7d0ca9 phy_stop +EXPORT_SYMBOL vmlinux 0x0a7ea144 end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0x0a83ece6 generic_mii_ioctl +EXPORT_SYMBOL vmlinux 0x0acb1a3c __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ad406da elv_rb_find +EXPORT_SYMBOL vmlinux 0x0ad91bdf user_path_at +EXPORT_SYMBOL vmlinux 0x0ae001e1 sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x0ae4f712 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0x0b0d888b icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0x0b168d3c phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0x0b18bc7e kset_unregister +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b370288 tty_port_open +EXPORT_SYMBOL vmlinux 0x0b382ee8 cdev_del +EXPORT_SYMBOL vmlinux 0x0b3d9f26 d_genocide +EXPORT_SYMBOL vmlinux 0x0b47dfa4 serio_open +EXPORT_SYMBOL vmlinux 0x0b56117f of_find_node_by_path +EXPORT_SYMBOL vmlinux 0x0b63683e kern_path +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b8b1719 tty_port_hangup +EXPORT_SYMBOL vmlinux 0x0b92dc83 alloc_fcdev +EXPORT_SYMBOL vmlinux 0x0ba1ef0a input_register_device +EXPORT_SYMBOL vmlinux 0x0bbc5908 gen_estimator_active +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bd98723 __scm_send +EXPORT_SYMBOL vmlinux 0x0be1a728 misc_register +EXPORT_SYMBOL vmlinux 0x0c433d97 inetdev_by_index +EXPORT_SYMBOL vmlinux 0x0c45fc96 vfs_lstat +EXPORT_SYMBOL vmlinux 0x0c47a53a from_kuid +EXPORT_SYMBOL vmlinux 0x0c58a8cd netdev_increment_features +EXPORT_SYMBOL vmlinux 0x0c65e73c scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0x0c7e1406 new_inode +EXPORT_SYMBOL vmlinux 0x0c8c9e99 scsi_show_extd_sense +EXPORT_SYMBOL vmlinux 0x0c9c907c tcp_gro_complete +EXPORT_SYMBOL vmlinux 0x0cae232b utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0x0cc6f2d9 skb_find_text +EXPORT_SYMBOL vmlinux 0x0cd1eabe invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x0cd9d868 netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0x0ce142a7 iterate_dir +EXPORT_SYMBOL vmlinux 0x0ce37416 tty_throttle +EXPORT_SYMBOL vmlinux 0x0ce4d3da wait_iff_congested +EXPORT_SYMBOL vmlinux 0x0ce900af blk_finish_plug +EXPORT_SYMBOL vmlinux 0x0d11adc1 of_mm_gpiochip_add +EXPORT_SYMBOL vmlinux 0x0d153654 do_sync_write +EXPORT_SYMBOL vmlinux 0x0d15c2c6 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x0d15e7ca pci_scan_slot +EXPORT_SYMBOL vmlinux 0x0d196278 inet_frag_maybe_warn_overflow +EXPORT_SYMBOL vmlinux 0x0d2314ed __serio_register_driver +EXPORT_SYMBOL vmlinux 0x0d28ddf9 blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0x0d526752 ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d57c2fd md_wakeup_thread +EXPORT_SYMBOL vmlinux 0x0d5999d8 amba_driver_register +EXPORT_SYMBOL vmlinux 0x0d7bc2dc inet_addr_type +EXPORT_SYMBOL vmlinux 0x0d7bec5f compat_nf_setsockopt +EXPORT_SYMBOL vmlinux 0x0d90b774 scsi_is_target_device +EXPORT_SYMBOL vmlinux 0x0da10ec3 security_sock_graft +EXPORT_SYMBOL vmlinux 0x0da447a7 __idr_get_new_above +EXPORT_SYMBOL vmlinux 0x0e5f2301 submit_bh +EXPORT_SYMBOL vmlinux 0x0e6da44a set_normalized_timespec +EXPORT_SYMBOL vmlinux 0x0e86099d pci_pme_capable +EXPORT_SYMBOL vmlinux 0x0e9906b5 filp_open +EXPORT_SYMBOL vmlinux 0x0eb3afb7 mpage_writepage +EXPORT_SYMBOL vmlinux 0x0eb83156 mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0x0ebd8091 devm_gpio_request_one +EXPORT_SYMBOL vmlinux 0x0ed048d9 give_up_console +EXPORT_SYMBOL vmlinux 0x0ee39e82 rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x0ef058cf blk_alloc_queue +EXPORT_SYMBOL vmlinux 0x0efc61a8 kobject_put +EXPORT_SYMBOL vmlinux 0x0efcbb1b set_current_groups +EXPORT_SYMBOL vmlinux 0x0efee540 tty_lock_pair +EXPORT_SYMBOL vmlinux 0x0f441ea9 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0x0f4c91ed ns_to_timespec +EXPORT_SYMBOL vmlinux 0x0f5fbf7c padata_do_serial +EXPORT_SYMBOL vmlinux 0x0f6e81fd kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x0f7591ca ip_route_me_harder +EXPORT_SYMBOL vmlinux 0x0f92a553 uart_remove_one_port +EXPORT_SYMBOL vmlinux 0x0faa564d kernel_connect +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fd81b5d __register_binfmt +EXPORT_SYMBOL vmlinux 0x0ff2b602 slhc_compress +EXPORT_SYMBOL vmlinux 0x0ff2c759 proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x0ff52973 amba_find_device +EXPORT_SYMBOL vmlinux 0x0ff663b3 write_cache_pages +EXPORT_SYMBOL vmlinux 0x101d2b09 inet_frag_kill +EXPORT_SYMBOL vmlinux 0x101dcc71 ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0x101e3881 deactivate_super +EXPORT_SYMBOL vmlinux 0x1030e129 ata_link_printk +EXPORT_SYMBOL vmlinux 0x1043841a dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x10538ec8 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0x106ab223 d_add_ci +EXPORT_SYMBOL vmlinux 0x1072a394 csum_partial_copy_from_user +EXPORT_SYMBOL vmlinux 0x10777203 module_put +EXPORT_SYMBOL vmlinux 0x10a66847 max8998_write_reg +EXPORT_SYMBOL vmlinux 0x10b81e9d d_alloc +EXPORT_SYMBOL vmlinux 0x10b99f30 vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0x10ca6761 generic_pipe_buf_confirm +EXPORT_SYMBOL vmlinux 0x10cd20e7 serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x10ee20bb default_blu +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x11123469 jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0x11267875 scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0x112a924c blk_mq_alloc_single_hw_queue +EXPORT_SYMBOL vmlinux 0x1132b4a7 generic_file_splice_read +EXPORT_SYMBOL vmlinux 0x11357abc ata_dev_printk +EXPORT_SYMBOL vmlinux 0x113e506e phy_device_free +EXPORT_SYMBOL vmlinux 0x115cb448 account_page_dirtied +EXPORT_SYMBOL vmlinux 0x1161cda0 jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x1187c2be fsnotify_destroy_mark +EXPORT_SYMBOL vmlinux 0x119e55b1 udp_lib_rehash +EXPORT_SYMBOL vmlinux 0x11c9185c of_iomap +EXPORT_SYMBOL vmlinux 0x11e2ec12 flex_array_free_parts +EXPORT_SYMBOL vmlinux 0x11f2ef8a skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0x11f5e0e4 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x122043a8 of_find_node_with_property +EXPORT_SYMBOL vmlinux 0x124298d8 nla_put +EXPORT_SYMBOL vmlinux 0x1246c43d tcp_shutdown +EXPORT_SYMBOL vmlinux 0x1250360d lockref_get +EXPORT_SYMBOL vmlinux 0x125a9c18 poll_freewait +EXPORT_SYMBOL vmlinux 0x126e5841 scsi_remove_host +EXPORT_SYMBOL vmlinux 0x129e2094 gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12d7383e lro_receive_skb +EXPORT_SYMBOL vmlinux 0x12dfeb12 vprintk_emit +EXPORT_SYMBOL vmlinux 0x12e9bf88 invalidate_partition +EXPORT_SYMBOL vmlinux 0x131f2766 jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0x132a2d5a md_finish_reshape +EXPORT_SYMBOL vmlinux 0x13307fde vsscanf +EXPORT_SYMBOL vmlinux 0x1348760d ipmi_request_settime +EXPORT_SYMBOL vmlinux 0x135e1066 nf_hook_slow +EXPORT_SYMBOL vmlinux 0x136cf8f4 proc_set_user +EXPORT_SYMBOL vmlinux 0x136e7e09 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0x137fe999 vm_insert_page +EXPORT_SYMBOL vmlinux 0x138cf02a dev_mc_unsync +EXPORT_SYMBOL vmlinux 0x1398a1d2 dev_mc_sync +EXPORT_SYMBOL vmlinux 0x13a75a9a may_umount +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13ed3670 read_cache_pages +EXPORT_SYMBOL vmlinux 0x13f04b28 sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0x1410b89f input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0x14294ad1 i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0x149a8169 dm_unregister_target +EXPORT_SYMBOL vmlinux 0x14e2b748 udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0x14ee74bd blk_queue_prep_rq +EXPORT_SYMBOL vmlinux 0x14ff952e sock_get_timestampns +EXPORT_SYMBOL vmlinux 0x150f240f netpoll_rx_disable +EXPORT_SYMBOL vmlinux 0x1511073f pci_set_master +EXPORT_SYMBOL vmlinux 0x15129914 pm860x_reg_read +EXPORT_SYMBOL vmlinux 0x152e5edf mmc_cleanup_queue +EXPORT_SYMBOL vmlinux 0x15418e1a keyring_alloc +EXPORT_SYMBOL vmlinux 0x15481b5d pci_alloc_dev +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x1550f6a3 kern_path_mountpoint +EXPORT_SYMBOL vmlinux 0x1551dc51 bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x156dc2f2 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0x1584d4b2 sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x159b93d7 i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0x15d96e18 input_inject_event +EXPORT_SYMBOL vmlinux 0x15efdfc8 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x15f074e5 file_open_root +EXPORT_SYMBOL vmlinux 0x15f571ec blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0x1604197b pci_release_regions +EXPORT_SYMBOL vmlinux 0x16168047 __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x161a51fe ip_defrag +EXPORT_SYMBOL vmlinux 0x162c235f ata_std_end_eh +EXPORT_SYMBOL vmlinux 0x16305289 warn_slowpath_null +EXPORT_SYMBOL vmlinux 0x164706a6 bioset_integrity_create +EXPORT_SYMBOL vmlinux 0x16508f1b dcb_getapp +EXPORT_SYMBOL vmlinux 0x16565eb2 blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0x16766435 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x167c5967 print_hex_dump +EXPORT_SYMBOL vmlinux 0x168de408 seq_printf +EXPORT_SYMBOL vmlinux 0x169092d2 dcache_readdir +EXPORT_SYMBOL vmlinux 0x16997787 jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0x169981bc __scm_destroy +EXPORT_SYMBOL vmlinux 0x169d9b41 eth_header_cache +EXPORT_SYMBOL vmlinux 0x16a03603 scsi_execute +EXPORT_SYMBOL vmlinux 0x16d407cd abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0x16dcec76 ipmi_set_my_address +EXPORT_SYMBOL vmlinux 0x16f148b1 commit_creds +EXPORT_SYMBOL vmlinux 0x16f48ae7 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0x172d2ab3 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x176a8b40 netlink_set_err +EXPORT_SYMBOL vmlinux 0x176bbb0d sock_rfree +EXPORT_SYMBOL vmlinux 0x177125c2 read_cache_page +EXPORT_SYMBOL vmlinux 0x17720d72 mount_ns +EXPORT_SYMBOL vmlinux 0x1784b3e5 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0x17a142df __copy_from_user +EXPORT_SYMBOL vmlinux 0x17a5ad55 unlock_buffer +EXPORT_SYMBOL vmlinux 0x17b1125d gen_kill_estimator +EXPORT_SYMBOL vmlinux 0x17b3bbf2 bio_integrity_tag_size +EXPORT_SYMBOL vmlinux 0x17bec9a8 scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0x17faecd9 inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x1806e912 jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0x18339693 dmam_alloc_noncoherent +EXPORT_SYMBOL vmlinux 0x183879bb misc_deregister +EXPORT_SYMBOL vmlinux 0x183a1569 pci_scan_bus +EXPORT_SYMBOL vmlinux 0x183eb805 lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x183fa88b mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0x184b82fb mmc_vddrange_to_ocrmask +EXPORT_SYMBOL vmlinux 0x184e6c85 radix_tree_gang_lookup_slot +EXPORT_SYMBOL vmlinux 0x184eae07 ps2_end_command +EXPORT_SYMBOL vmlinux 0x185ef1b0 blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0x186aec6f tcp_init_sock +EXPORT_SYMBOL vmlinux 0x18797d73 dev_set_mtu +EXPORT_SYMBOL vmlinux 0x1881c7fc bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0x188a3dfb timespec_trunc +EXPORT_SYMBOL vmlinux 0x188a83e8 truncate_setsize +EXPORT_SYMBOL vmlinux 0x188c4963 nf_register_sockopt +EXPORT_SYMBOL vmlinux 0x189868d7 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x18b48e28 __memset_io +EXPORT_SYMBOL vmlinux 0x18dbb657 mmc_can_erase +EXPORT_SYMBOL vmlinux 0x18dc23bf fs_bio_set +EXPORT_SYMBOL vmlinux 0x18fcc583 always_delete_dentry +EXPORT_SYMBOL vmlinux 0x19444627 memcpy_fromiovecend +EXPORT_SYMBOL vmlinux 0x199cc3cc mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19a7505d tty_register_driver +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19bd43ce security_path_rmdir +EXPORT_SYMBOL vmlinux 0x19cd0c33 vfs_path_lookup +EXPORT_SYMBOL vmlinux 0x19e7333f pcim_iounmap +EXPORT_SYMBOL vmlinux 0x1a036cae pipe_to_file +EXPORT_SYMBOL vmlinux 0x1a10c898 ipmi_set_maintenance_mode +EXPORT_SYMBOL vmlinux 0x1a16c38b pci_find_bus +EXPORT_SYMBOL vmlinux 0x1a20d423 pcim_enable_device +EXPORT_SYMBOL vmlinux 0x1a2ad95d rtmsg_ifinfo +EXPORT_SYMBOL vmlinux 0x1a2b51c3 dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x1a4c5e25 scsi_setup_blk_pc_cmnd +EXPORT_SYMBOL vmlinux 0x1a71726e generic_setlease +EXPORT_SYMBOL vmlinux 0x1aba5db8 ipmi_unregister_smi +EXPORT_SYMBOL vmlinux 0x1abac820 mmc_erase +EXPORT_SYMBOL vmlinux 0x1ac5d3cb strcspn +EXPORT_SYMBOL vmlinux 0x1ac7c07c qdisc_tree_decrease_qlen +EXPORT_SYMBOL vmlinux 0x1acb5797 xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0x1ace138d bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0x1ae60700 nf_register_hook +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b152e9a tty_port_put +EXPORT_SYMBOL vmlinux 0x1b1e1088 sg_nents +EXPORT_SYMBOL vmlinux 0x1b264365 blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x1b2ba60e is_bad_inode +EXPORT_SYMBOL vmlinux 0x1b353088 clk_register_clkdevs +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b82fefa md_unplug +EXPORT_SYMBOL vmlinux 0x1b9e0ff1 scsilun_to_int +EXPORT_SYMBOL vmlinux 0x1bca2a90 prepare_to_wait +EXPORT_SYMBOL vmlinux 0x1bdc26cf sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x1be1b107 alloc_xenballooned_pages +EXPORT_SYMBOL vmlinux 0x1c0a5ce5 input_register_handler +EXPORT_SYMBOL vmlinux 0x1c11d8a5 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0x1c3e02e4 memcmp +EXPORT_SYMBOL vmlinux 0x1c5678ab input_flush_device +EXPORT_SYMBOL vmlinux 0x1c5b22a9 d_find_any_alias +EXPORT_SYMBOL vmlinux 0x1c5fa577 dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0x1c64a702 i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0x1c7f10fc kernel_recvmsg +EXPORT_SYMBOL vmlinux 0x1c892d6c sock_release +EXPORT_SYMBOL vmlinux 0x1c999bd6 of_dev_get +EXPORT_SYMBOL vmlinux 0x1ca756d5 grab_cache_page_nowait +EXPORT_SYMBOL vmlinux 0x1caf325d blk_put_request +EXPORT_SYMBOL vmlinux 0x1cb28b7d gen10g_read_status +EXPORT_SYMBOL vmlinux 0x1cbf546d nobh_truncate_page +EXPORT_SYMBOL vmlinux 0x1cddf1a9 tcf_exts_change +EXPORT_SYMBOL vmlinux 0x1d0077d7 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x1d3a4534 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0x1d8c3418 read_dev_sector +EXPORT_SYMBOL vmlinux 0x1d8cdcb9 locks_init_lock +EXPORT_SYMBOL vmlinux 0x1d92d898 complete_and_exit +EXPORT_SYMBOL vmlinux 0x1d99dd9e ps2_begin_command +EXPORT_SYMBOL vmlinux 0x1dc36131 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1df1233d fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0x1df4aa62 scsi_register_driver +EXPORT_SYMBOL vmlinux 0x1df70767 sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x1e047854 warn_slowpath_fmt +EXPORT_SYMBOL vmlinux 0x1e157db5 i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0x1e26be3b get_anon_bdev +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ea06663 _raw_write_lock +EXPORT_SYMBOL vmlinux 0x1ec3bed9 hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0x1ec4eb34 flex_array_prealloc +EXPORT_SYMBOL vmlinux 0x1ed70108 dev_addr_del +EXPORT_SYMBOL vmlinux 0x1ef788f5 lock_fb_info +EXPORT_SYMBOL vmlinux 0x1f2d3cd8 abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0x1f36c9e0 __skb_dst_set_noref +EXPORT_SYMBOL vmlinux 0x1f50c1d3 mmc_wait_for_app_cmd +EXPORT_SYMBOL vmlinux 0x1f57820c netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0x1f64a211 from_kprojid +EXPORT_SYMBOL vmlinux 0x1f6ce67a sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fcf4d4b _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1fe9f800 unregister_cpu_notifier +EXPORT_SYMBOL vmlinux 0x1feaaef5 rfkill_alloc +EXPORT_SYMBOL vmlinux 0x1fed11a9 devm_gpio_request +EXPORT_SYMBOL vmlinux 0x1fedf0f4 __request_region +EXPORT_SYMBOL vmlinux 0x1fef51bb pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x200401c0 in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x20055384 down_read +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x201d5bd9 skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x2031f93a md_flush_request +EXPORT_SYMBOL vmlinux 0x204346af proc_dostring +EXPORT_SYMBOL vmlinux 0x20446921 release_pages +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x204d9d32 bdi_register_dev +EXPORT_SYMBOL vmlinux 0x20654f14 fb_find_mode +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x20819f22 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x2097829b __bio_clone +EXPORT_SYMBOL vmlinux 0x209fea95 tcp_ioctl +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20a86b3f of_get_pci_address +EXPORT_SYMBOL vmlinux 0x20b2bb2d param_array_ops +EXPORT_SYMBOL vmlinux 0x20c3a817 mb_cache_entry_insert +EXPORT_SYMBOL vmlinux 0x20c55ae0 sscanf +EXPORT_SYMBOL vmlinux 0x20eadeb6 ip_compute_csum +EXPORT_SYMBOL vmlinux 0x20ffa7f6 _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0x2101d630 blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0x2132762f dev_warn +EXPORT_SYMBOL vmlinux 0x2151a3e6 find_or_create_page +EXPORT_SYMBOL vmlinux 0x215ebd78 bitrev16 +EXPORT_SYMBOL vmlinux 0x216707c4 free_netdev +EXPORT_SYMBOL vmlinux 0x2167dc59 jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0x217aa8af pci_enable_device +EXPORT_SYMBOL vmlinux 0x217b00e5 blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x217dda13 flex_array_get +EXPORT_SYMBOL vmlinux 0x219434b1 dquot_get_dqinfo +EXPORT_SYMBOL vmlinux 0x2199ad9e sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x219c8acb register_sysctl +EXPORT_SYMBOL vmlinux 0x21c13b4d alloc_anon_inode +EXPORT_SYMBOL vmlinux 0x21cda681 scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x21e4e6b6 ida_destroy +EXPORT_SYMBOL vmlinux 0x21fdfd89 tcp_splice_read +EXPORT_SYMBOL vmlinux 0x222760f2 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x2237631d sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x223ce051 skb_append_datato_frags +EXPORT_SYMBOL vmlinux 0x224e1d6a sock_no_connect +EXPORT_SYMBOL vmlinux 0x224ff4ad wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0x226607be scsi_reset_provider +EXPORT_SYMBOL vmlinux 0x2276842f d_prune_aliases +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x227857fc iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0x227d97d6 tcf_hash_destroy +EXPORT_SYMBOL vmlinux 0x2286acc0 __ps2_command +EXPORT_SYMBOL vmlinux 0x22a180fe ps2_command +EXPORT_SYMBOL vmlinux 0x22a2f287 tty_port_close_end +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22b83fbf unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0x22baea3d proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0x22c7a1d8 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x22cfc16b compat_tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x230f52b8 neigh_seq_stop +EXPORT_SYMBOL vmlinux 0x231d3ba3 pci_enable_msix +EXPORT_SYMBOL vmlinux 0x231d4001 fb_edid_add_monspecs +EXPORT_SYMBOL vmlinux 0x232bd076 mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0x234f0878 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0x23532c4d ftrace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x2363e56a dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0x2367edec __devm_request_region +EXPORT_SYMBOL vmlinux 0x23a574fd security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c66e9c do_splice_to +EXPORT_SYMBOL vmlinux 0x23c8f257 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x23c9891c kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x23cc81a2 register_netdevice +EXPORT_SYMBOL vmlinux 0x23e74208 km_report +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x2407cd7d pci_select_bars +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x24388af0 pneigh_enqueue +EXPORT_SYMBOL vmlinux 0x24466aae pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0x24554b35 try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x2482e688 vsprintf +EXPORT_SYMBOL vmlinux 0x2484adc3 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0x248d09ed sock_no_poll +EXPORT_SYMBOL vmlinux 0x2491e1a4 dquot_commit +EXPORT_SYMBOL vmlinux 0x24a96704 pci_write_vpd +EXPORT_SYMBOL vmlinux 0x24b0f90c of_clk_get_by_name +EXPORT_SYMBOL vmlinux 0x24b203bf scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x24c8be16 inet_stream_ops +EXPORT_SYMBOL vmlinux 0x24f75a1d mount_single +EXPORT_SYMBOL vmlinux 0x24fdac79 wake_bit_function +EXPORT_SYMBOL vmlinux 0x2500a51b blk_execute_rq +EXPORT_SYMBOL vmlinux 0x2518f5e7 alloc_disk_node +EXPORT_SYMBOL vmlinux 0x2525750c blk_sync_queue +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x2529a990 kthread_create_on_node +EXPORT_SYMBOL vmlinux 0x255192c3 tcf_em_register +EXPORT_SYMBOL vmlinux 0x255bb072 change_bit +EXPORT_SYMBOL vmlinux 0x2576f9d4 qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x25986b15 ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0x25a8fcd3 pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0x25bbd4d7 input_grab_device +EXPORT_SYMBOL vmlinux 0x25bed5cb md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0x25c677c4 mac_pton +EXPORT_SYMBOL vmlinux 0x25c8035d of_platform_device_create +EXPORT_SYMBOL vmlinux 0x26071f0d tty_unregister_driver +EXPORT_SYMBOL vmlinux 0x260cf8f8 of_get_property +EXPORT_SYMBOL vmlinux 0x261446b6 vfs_create +EXPORT_SYMBOL vmlinux 0x262de1d6 padata_stop +EXPORT_SYMBOL vmlinux 0x262eeace eth_rebuild_header +EXPORT_SYMBOL vmlinux 0x2632b0ae generic_file_llseek +EXPORT_SYMBOL vmlinux 0x263947a2 filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x2649f93c i2c_use_client +EXPORT_SYMBOL vmlinux 0x2650d835 sysctl_ip_early_demux +EXPORT_SYMBOL vmlinux 0x2651e37e skb_copy_expand +EXPORT_SYMBOL vmlinux 0x2665d53a key_create_or_update +EXPORT_SYMBOL vmlinux 0x267fe24f generic_show_options +EXPORT_SYMBOL vmlinux 0x2685c3d7 __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x26a9b874 skb_checksum +EXPORT_SYMBOL vmlinux 0x26bac101 pci_dev_get +EXPORT_SYMBOL vmlinux 0x26c2ae73 phy_start_interrupts +EXPORT_SYMBOL vmlinux 0x26e76fb8 sysctl_udp_wmem_min +EXPORT_SYMBOL vmlinux 0x26f0453a blk_set_default_limits +EXPORT_SYMBOL vmlinux 0x2712653e blk_recount_segments +EXPORT_SYMBOL vmlinux 0x2712f4f5 crc32_le_combine +EXPORT_SYMBOL vmlinux 0x2724ba66 __ioremap +EXPORT_SYMBOL vmlinux 0x274d08dc __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0x275168d8 tcp_read_sock +EXPORT_SYMBOL vmlinux 0x276780e1 dmam_pool_create +EXPORT_SYMBOL vmlinux 0x2770b2a6 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0x27711e56 dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0x277eb2a4 __nla_put +EXPORT_SYMBOL vmlinux 0x2780ecb0 do_splice_from +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x278a874c elv_dispatch_add_tail +EXPORT_SYMBOL vmlinux 0x279ec334 buffer_migrate_page +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27cefd66 loop_register_transfer +EXPORT_SYMBOL vmlinux 0x27cffb53 dma_release_declared_memory +EXPORT_SYMBOL vmlinux 0x27d8ad3e blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x27e1a049 printk +EXPORT_SYMBOL vmlinux 0x280be963 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x2821adf6 kill_block_super +EXPORT_SYMBOL vmlinux 0x2821e4ea tc_classify +EXPORT_SYMBOL vmlinux 0x28318305 snprintf +EXPORT_SYMBOL vmlinux 0x2845a2e5 mdiobus_write +EXPORT_SYMBOL vmlinux 0x28a2ed02 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x28abcbd4 balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0x28abfe6e scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x28b42c47 poll_schedule_timeout +EXPORT_SYMBOL vmlinux 0x28c511b1 vga_get +EXPORT_SYMBOL vmlinux 0x28c8b7e2 bio_integrity_advance +EXPORT_SYMBOL vmlinux 0x28d7ffea lg_local_unlock +EXPORT_SYMBOL vmlinux 0x290b9f0c bio_clone_bioset +EXPORT_SYMBOL vmlinux 0x291ba05d udplite_table +EXPORT_SYMBOL vmlinux 0x2924f477 sock_wake_async +EXPORT_SYMBOL vmlinux 0x2938a2ed ida_pre_get +EXPORT_SYMBOL vmlinux 0x293a7df2 blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0x29537c9e alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0x29771862 __pci_register_driver +EXPORT_SYMBOL vmlinux 0x297adf64 simple_readpage +EXPORT_SYMBOL vmlinux 0x297caf23 register_netdev +EXPORT_SYMBOL vmlinux 0x29b42a3c inode_newsize_ok +EXPORT_SYMBOL vmlinux 0x29b93bc4 phys_mem_access_prot +EXPORT_SYMBOL vmlinux 0x29ba14ba netif_device_attach +EXPORT_SYMBOL vmlinux 0x29c4118b mb_cache_shrink +EXPORT_SYMBOL vmlinux 0x29c5e6f3 ip_setsockopt +EXPORT_SYMBOL vmlinux 0x29c9491e pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0x29db91fe bio_integrity_clone +EXPORT_SYMBOL vmlinux 0x29e65085 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x2a04591b xfrm_state_update +EXPORT_SYMBOL vmlinux 0x2a0a2ed4 irq_to_desc +EXPORT_SYMBOL vmlinux 0x2a0bb492 mutex_trylock +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a30a97e pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x2a32096e devfreq_resume_device +EXPORT_SYMBOL vmlinux 0x2a37d074 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2a3f0d8d splice_from_pipe_feed +EXPORT_SYMBOL vmlinux 0x2a5722be mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x2a58bfd0 tty_check_change +EXPORT_SYMBOL vmlinux 0x2a6b2ee8 genl_unregister_family +EXPORT_SYMBOL vmlinux 0x2a7002de devm_clk_get +EXPORT_SYMBOL vmlinux 0x2a79ac13 clkdev_add +EXPORT_SYMBOL vmlinux 0x2a7bcb18 unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x2a8858b4 __devm_release_region +EXPORT_SYMBOL vmlinux 0x2a8a8b46 scsi_setup_fs_cmnd +EXPORT_SYMBOL vmlinux 0x2a8ad859 tty_port_close_start +EXPORT_SYMBOL vmlinux 0x2aa1ad41 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x2ac3f052 unregister_nls +EXPORT_SYMBOL vmlinux 0x2acf0feb vfs_fstat +EXPORT_SYMBOL vmlinux 0x2ae265fa __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x2afbdaeb scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0x2afde274 input_set_abs_params +EXPORT_SYMBOL vmlinux 0x2b0ba2b0 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x2b1a883c alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x2b2ce78b kstrtos8 +EXPORT_SYMBOL vmlinux 0x2b75edf1 key_revoke +EXPORT_SYMBOL vmlinux 0x2b8f5fbc blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2ba707a8 sysctl_tcp_low_latency +EXPORT_SYMBOL vmlinux 0x2bb54a55 compat_ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x2bcff009 __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x2bdd6e28 node_states +EXPORT_SYMBOL vmlinux 0x2be0f12d dql_completed +EXPORT_SYMBOL vmlinux 0x2be5c558 idr_get_next +EXPORT_SYMBOL vmlinux 0x2bf39c9e fb_set_suspend +EXPORT_SYMBOL vmlinux 0x2bf75e55 ppp_unit_number +EXPORT_SYMBOL vmlinux 0x2c045009 netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0x2c1178d2 load_nls_default +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c554c2f dma_async_device_register +EXPORT_SYMBOL vmlinux 0x2c6585a4 vc_cons +EXPORT_SYMBOL vmlinux 0x2c7c8e9a pcibios_min_mem +EXPORT_SYMBOL vmlinux 0x2c7e6a3b scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0x2c819494 sync_inodes_sb +EXPORT_SYMBOL vmlinux 0x2cb3e706 phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0x2ccadaf4 jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0x2ce3d7cf generic_setxattr +EXPORT_SYMBOL vmlinux 0x2cf73cb7 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x2d01f9c6 jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0x2d03c10d posix_acl_create +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d149773 dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x2d20c917 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x2d2cb7c6 scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d37342e cpu_online_mask +EXPORT_SYMBOL vmlinux 0x2d5dc244 scsi_remove_device +EXPORT_SYMBOL vmlinux 0x2d631cbe cdrom_open +EXPORT_SYMBOL vmlinux 0x2d89342a scsi_show_sense_hdr +EXPORT_SYMBOL vmlinux 0x2d9de49b mmc_of_parse +EXPORT_SYMBOL vmlinux 0x2da0d5c2 key_link +EXPORT_SYMBOL vmlinux 0x2da2b6b1 __generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x2daa7ebc max8998_bulk_read +EXPORT_SYMBOL vmlinux 0x2daaaba9 param_get_byte +EXPORT_SYMBOL vmlinux 0x2dc087e9 xfrm4_prepare_output +EXPORT_SYMBOL vmlinux 0x2dce2f1c __irq_regs +EXPORT_SYMBOL vmlinux 0x2de1327b bit_waitqueue +EXPORT_SYMBOL vmlinux 0x2deda4a1 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x2df90592 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0x2e0d2f7f queue_work_on +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e268f23 sock_no_getname +EXPORT_SYMBOL vmlinux 0x2e2b40d2 strncat +EXPORT_SYMBOL vmlinux 0x2e2ce9e0 sysctl_tcp_syncookies +EXPORT_SYMBOL vmlinux 0x2e3f8175 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0x2e547479 bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x2e54911a bdget +EXPORT_SYMBOL vmlinux 0x2e6e1eb5 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0x2e75dada inet_release +EXPORT_SYMBOL vmlinux 0x2e7be112 _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0x2e8304a2 sk_common_release +EXPORT_SYMBOL vmlinux 0x2e8d0573 pcie_get_minimum_link +EXPORT_SYMBOL vmlinux 0x2ea4c1c9 lg_global_unlock +EXPORT_SYMBOL vmlinux 0x2ebc4eb0 skb_put +EXPORT_SYMBOL vmlinux 0x2eda1aa1 generic_write_checks +EXPORT_SYMBOL vmlinux 0x2edc078a scsi_init_io +EXPORT_SYMBOL vmlinux 0x2ee72b96 dqget +EXPORT_SYMBOL vmlinux 0x2eeceb42 sk_chk_filter +EXPORT_SYMBOL vmlinux 0x2ef63ad6 scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0x2f029f02 finish_no_open +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f064b55 allocate_resource +EXPORT_SYMBOL vmlinux 0x2f1a339d eth_type_trans +EXPORT_SYMBOL vmlinux 0x2f2223cd __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0x2f3857e2 _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0x2f46fe2d scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0x2f4b9329 set_blocksize +EXPORT_SYMBOL vmlinux 0x2f812f95 generic_readlink +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fbd9c4c lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2fe4c5b9 sk_free +EXPORT_SYMBOL vmlinux 0x2ff08b21 tcf_hash_create +EXPORT_SYMBOL vmlinux 0x3025db52 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0x3026a04b qdisc_list_del +EXPORT_SYMBOL vmlinux 0x3031ac91 scsi_register +EXPORT_SYMBOL vmlinux 0x304ec72b _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x305cec12 _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0x3078f452 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x307c2fd0 generic_check_addressable +EXPORT_SYMBOL vmlinux 0x308a746a bio_map_kern +EXPORT_SYMBOL vmlinux 0x30a4e60b inet6_add_protocol +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30c65ac8 page_readlink +EXPORT_SYMBOL vmlinux 0x30cada8f radix_tree_next_hole +EXPORT_SYMBOL vmlinux 0x30d30364 dquot_operations +EXPORT_SYMBOL vmlinux 0x30d6872a dev_mc_flush +EXPORT_SYMBOL vmlinux 0x30e74134 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0x30f35ba0 idr_remove +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x312568f3 single_release +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x3147857d default_red +EXPORT_SYMBOL vmlinux 0x314b4448 vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0x31526a67 phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0x315c65fd zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x317d5415 __scsi_put_command +EXPORT_SYMBOL vmlinux 0x31805f80 __net_get_random_once +EXPORT_SYMBOL vmlinux 0x318cadb1 reciprocal_value +EXPORT_SYMBOL vmlinux 0x319b380d __remove_inode_hash +EXPORT_SYMBOL vmlinux 0x31dc1761 vexpress_config_bridge_register +EXPORT_SYMBOL vmlinux 0x31e2346b nf_log_unregister +EXPORT_SYMBOL vmlinux 0x3200fbea xfrm6_rcv +EXPORT_SYMBOL vmlinux 0x321ce42f scsi_cmd_print_sense_hdr +EXPORT_SYMBOL vmlinux 0x322ea730 put_io_context +EXPORT_SYMBOL vmlinux 0x322f48d4 abx500_dump_all_banks +EXPORT_SYMBOL vmlinux 0x32434a55 ipmi_smi_watcher_register +EXPORT_SYMBOL vmlinux 0x324b3877 up +EXPORT_SYMBOL vmlinux 0x3261b806 sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x327bf883 of_can_translate_address +EXPORT_SYMBOL vmlinux 0x329cf616 notify_change +EXPORT_SYMBOL vmlinux 0x32a46c5a dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0x32af5ebc bio_copy_data +EXPORT_SYMBOL vmlinux 0x32b86687 xfrm_user_policy +EXPORT_SYMBOL vmlinux 0x32e89dbe blk_get_queue +EXPORT_SYMBOL vmlinux 0x32f7478e dev_notice +EXPORT_SYMBOL vmlinux 0x333cb37c __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0x335b4e8e padata_do_parallel +EXPORT_SYMBOL vmlinux 0x336dbfd4 blk_queue_make_request +EXPORT_SYMBOL vmlinux 0x337b8b19 sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0x337c3b63 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0x33801160 blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0x3391bc67 phy_start_aneg +EXPORT_SYMBOL vmlinux 0x33ba5cd4 param_ops_bool +EXPORT_SYMBOL vmlinux 0x33c7435c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x33da6b84 simple_pin_fs +EXPORT_SYMBOL vmlinux 0x33deab88 skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x33e61728 fsnotify_put_group +EXPORT_SYMBOL vmlinux 0x33f5b2c6 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0x33fcf44a __kfifo_out_r +EXPORT_SYMBOL vmlinux 0x34121dc5 compat_tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x34184afe current_kernel_time +EXPORT_SYMBOL vmlinux 0x342adfa1 proto_unregister +EXPORT_SYMBOL vmlinux 0x344fc35f tcp_prot +EXPORT_SYMBOL vmlinux 0x345303d5 sk_prot_clear_portaddr_nulls +EXPORT_SYMBOL vmlinux 0x34674dab ping_prot +EXPORT_SYMBOL vmlinux 0x346aa6c0 scsi_remove_target +EXPORT_SYMBOL vmlinux 0x347013de nla_validate +EXPORT_SYMBOL vmlinux 0x347eb9bd param_set_bool +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34c427c4 vlan_vid_del +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34f98de9 iterate_supers_type +EXPORT_SYMBOL vmlinux 0x35139efe xfrm_init_replay +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x351a3242 devm_gpiod_get +EXPORT_SYMBOL vmlinux 0x3539f11b match_strlcpy +EXPORT_SYMBOL vmlinux 0x353fb4eb rtnl_unicast +EXPORT_SYMBOL vmlinux 0x35471d0d __quota_error +EXPORT_SYMBOL vmlinux 0x35529e3f scsi_free_command +EXPORT_SYMBOL vmlinux 0x35673301 linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x3579303d nf_getsockopt +EXPORT_SYMBOL vmlinux 0x35939172 dev_set_drvdata +EXPORT_SYMBOL vmlinux 0x35c6f5ba console_stop +EXPORT_SYMBOL vmlinux 0x35defc50 iov_iter_advance +EXPORT_SYMBOL vmlinux 0x35ed1d6a dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x35f42e6f ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0x360101e4 __dst_free +EXPORT_SYMBOL vmlinux 0x360b1afe probe_irq_mask +EXPORT_SYMBOL vmlinux 0x360f8f8a __cond_resched_lock +EXPORT_SYMBOL vmlinux 0x360ff19f down +EXPORT_SYMBOL vmlinux 0x3652d150 proc_mkdir +EXPORT_SYMBOL vmlinux 0x3667b738 sk_dst_check +EXPORT_SYMBOL vmlinux 0x3678f057 ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0x368382e2 of_get_named_gpiod_flags +EXPORT_SYMBOL vmlinux 0x368bca28 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0x369196af skb_free_datagram +EXPORT_SYMBOL vmlinux 0x369e1115 kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0x36bcb97d skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0x36bd681b groups_alloc +EXPORT_SYMBOL vmlinux 0x36d2d14a swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x36d7b11a of_find_matching_node_and_match +EXPORT_SYMBOL vmlinux 0x36e2c6e5 tcp_md5_hash_header +EXPORT_SYMBOL vmlinux 0x36e360e3 __hw_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x36f32d66 phy_register_fixup +EXPORT_SYMBOL vmlinux 0x36f8d6d8 scsi_calculate_bounce_limit +EXPORT_SYMBOL vmlinux 0x3705e308 generic_permission +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x374cfd55 netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x375d6804 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0x375deb5a netpoll_send_udp +EXPORT_SYMBOL vmlinux 0x3763993d fd_install +EXPORT_SYMBOL vmlinux 0x377806ee netif_carrier_on +EXPORT_SYMBOL vmlinux 0x37935cdd ipmi_smi_watcher_unregister +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37e50921 save_mount_options +EXPORT_SYMBOL vmlinux 0x37ff2332 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x380ee87a abort_exclusive_wait +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x38408359 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x385f9187 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0x387fbdd5 generic_ro_fops +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388f9128 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x3895a7ae tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38c0de6a pci_remove_bus +EXPORT_SYMBOL vmlinux 0x38cab90a __vlan_find_dev_deep +EXPORT_SYMBOL vmlinux 0x3917d624 inode_dio_done +EXPORT_SYMBOL vmlinux 0x391de4a4 __kfree_skb +EXPORT_SYMBOL vmlinux 0x39258db5 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0x392d6827 would_dump +EXPORT_SYMBOL vmlinux 0x39353cc5 twl6040_get_pll +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x393c9a9d xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x3955fcf6 __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x3975dc26 md_check_recovery +EXPORT_SYMBOL vmlinux 0x398d6043 ip6_frag_match +EXPORT_SYMBOL vmlinux 0x399ad043 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0x39c00d11 clk_get +EXPORT_SYMBOL vmlinux 0x39dc7f4e scsi_host_put +EXPORT_SYMBOL vmlinux 0x39de111b devfreq_add_device +EXPORT_SYMBOL vmlinux 0x3a1ff8dc dev_remove_offload +EXPORT_SYMBOL vmlinux 0x3a20ff73 __crc32c_le +EXPORT_SYMBOL vmlinux 0x3a3c133e dev_trans_start +EXPORT_SYMBOL vmlinux 0x3a62346f register_gifconf +EXPORT_SYMBOL vmlinux 0x3a64ab09 filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0x3a9b6fb9 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x3aa0a7fb vc_resize +EXPORT_SYMBOL vmlinux 0x3ab41b25 __copy_in_user +EXPORT_SYMBOL vmlinux 0x3b300948 percpu_counter_set +EXPORT_SYMBOL vmlinux 0x3b46db30 __d_drop +EXPORT_SYMBOL vmlinux 0x3b5196c5 unregister_key_type +EXPORT_SYMBOL vmlinux 0x3b51c462 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0x3b794ffd uart_resume_port +EXPORT_SYMBOL vmlinux 0x3b94d149 max8925_reg_write +EXPORT_SYMBOL vmlinux 0x3bb52e3e bioset_free +EXPORT_SYMBOL vmlinux 0x3bcbf2f8 search_binary_handler +EXPORT_SYMBOL vmlinux 0x3bd1b1f6 msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x3be23ac7 fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0x3bef03b9 flow_cache_lookup +EXPORT_SYMBOL vmlinux 0x3bf62004 get_phy_device +EXPORT_SYMBOL vmlinux 0x3c0b6a49 padata_start +EXPORT_SYMBOL vmlinux 0x3c0d4b06 downgrade_write +EXPORT_SYMBOL vmlinux 0x3c21d1b0 blk_register_region +EXPORT_SYMBOL vmlinux 0x3c324639 km_state_notify +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c8e7155 __nla_reserve +EXPORT_SYMBOL vmlinux 0x3c925b66 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0x3c9b7255 i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x3c9d1211 string_get_size +EXPORT_SYMBOL vmlinux 0x3ca03e0c block_invalidatepage +EXPORT_SYMBOL vmlinux 0x3cc40f64 mmc_request_done +EXPORT_SYMBOL vmlinux 0x3cd4d168 __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0x3cdf5e60 dm_ratelimit_state +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3ce54ab6 request_key_async_with_auxdata +EXPORT_SYMBOL vmlinux 0x3cef0cc1 dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x3cfae893 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0x3d093081 __percpu_counter_add +EXPORT_SYMBOL vmlinux 0x3d171165 dev_crit +EXPORT_SYMBOL vmlinux 0x3d24b9a6 pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x3d41904f of_get_next_child +EXPORT_SYMBOL vmlinux 0x3d5844b3 strnicmp +EXPORT_SYMBOL vmlinux 0x3d790e7a dev_remove_pack +EXPORT_SYMBOL vmlinux 0x3d9ee9f0 clear_page +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dcc1802 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0x3dec71b9 __blk_run_queue +EXPORT_SYMBOL vmlinux 0x3df2eadc sync_inode +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e012c65 dquot_free_inode +EXPORT_SYMBOL vmlinux 0x3e20ed0f free_mdio_bitbang +EXPORT_SYMBOL vmlinux 0x3e32a0f4 scsi_prep_fn +EXPORT_SYMBOL vmlinux 0x3e3577b9 blk_rq_map_user +EXPORT_SYMBOL vmlinux 0x3e664ce9 tty_port_destroy +EXPORT_SYMBOL vmlinux 0x3e757544 kmem_cache_create +EXPORT_SYMBOL vmlinux 0x3e89f796 scsi_dma_map +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3ed63055 zlib_inflateReset +EXPORT_SYMBOL vmlinux 0x3f0546a8 ioread32_rep +EXPORT_SYMBOL vmlinux 0x3f439c84 tcf_exts_dump +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f646c44 ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x3f67c8b8 d_obtain_alias +EXPORT_SYMBOL vmlinux 0x3f6a6983 pci_get_class +EXPORT_SYMBOL vmlinux 0x3f76acd5 fsnotify_init_mark +EXPORT_SYMBOL vmlinux 0x3fa7e67b mmc_release_host +EXPORT_SYMBOL vmlinux 0x3fa875b9 tty_free_termios +EXPORT_SYMBOL vmlinux 0x3fb1b6b7 handle_edge_irq +EXPORT_SYMBOL vmlinux 0x3fc2f292 gen10g_resume +EXPORT_SYMBOL vmlinux 0x3fd55724 of_n_size_cells +EXPORT_SYMBOL vmlinux 0x3fda1d6c xen_biovec_phys_mergeable +EXPORT_SYMBOL vmlinux 0x3fe2ccbe memweight +EXPORT_SYMBOL vmlinux 0x3fec048f sg_next +EXPORT_SYMBOL vmlinux 0x3ff62317 local_bh_disable +EXPORT_SYMBOL vmlinux 0x4006c4e4 user_revoke +EXPORT_SYMBOL vmlinux 0x400f2c8f compat_ip_getsockopt +EXPORT_SYMBOL vmlinux 0x401b5b38 dev_add_offload +EXPORT_SYMBOL vmlinux 0x402b8281 __request_module +EXPORT_SYMBOL vmlinux 0x4049360e cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x404f0bc3 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0x405c1144 get_seconds +EXPORT_SYMBOL vmlinux 0x406177ad fget_raw +EXPORT_SYMBOL vmlinux 0x4082bf10 jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x408489e4 invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409873e3 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x40a27c37 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x40a84774 scsi_mode_sense +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40c01859 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40ce2926 pci_platform_rom +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40ddda44 arp_find +EXPORT_SYMBOL vmlinux 0x40f2b10c ipmi_alloc_smi_msg +EXPORT_SYMBOL vmlinux 0x41182cc0 pgprot_default +EXPORT_SYMBOL vmlinux 0x4139bf78 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0x414687b9 cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x4166dfac led_set_brightness +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x41c0a2a5 __pagevec_lru_add +EXPORT_SYMBOL vmlinux 0x41da3a98 sock_update_memcg +EXPORT_SYMBOL vmlinux 0x41f62044 dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x4211c3c1 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x42154a16 tty_unlock +EXPORT_SYMBOL vmlinux 0x4227b8f8 load_nls +EXPORT_SYMBOL vmlinux 0x42324133 idr_find_slowpath +EXPORT_SYMBOL vmlinux 0x423266f2 filemap_flush +EXPORT_SYMBOL vmlinux 0x4239a8b8 init_task +EXPORT_SYMBOL vmlinux 0x423b776a ipmi_create_user +EXPORT_SYMBOL vmlinux 0x42739497 udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0x428303b4 sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0x42977ad4 __hw_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x42a1b208 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x42ae5af0 dqstats +EXPORT_SYMBOL vmlinux 0x42b7b7c4 unlock_new_inode +EXPORT_SYMBOL vmlinux 0x42cbbb33 account_page_writeback +EXPORT_SYMBOL vmlinux 0x42cc39aa dst_discard +EXPORT_SYMBOL vmlinux 0x42d45664 check_submounts_and_drop +EXPORT_SYMBOL vmlinux 0x42fd60c0 ipv6_select_ident +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x4345a226 xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x43632d7d of_find_property +EXPORT_SYMBOL vmlinux 0x436c2179 iowrite32 +EXPORT_SYMBOL vmlinux 0x437b740b remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x437ff174 seq_bitmap_list +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x43addd5f __mmc_claim_host +EXPORT_SYMBOL vmlinux 0x43b98e7c proto_register +EXPORT_SYMBOL vmlinux 0x43bde579 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0x43c2a786 __cpu_clear_user_page +EXPORT_SYMBOL vmlinux 0x43f23311 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x43feac04 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x4403efd9 d_validate +EXPORT_SYMBOL vmlinux 0x44066de3 sk_wait_data +EXPORT_SYMBOL vmlinux 0x4411c503 prandom_seed +EXPORT_SYMBOL vmlinux 0x442451b8 pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0x44556d6a netdev_info +EXPORT_SYMBOL vmlinux 0x44773ffe simple_transaction_set +EXPORT_SYMBOL vmlinux 0x448cb316 abx500_remove_ops +EXPORT_SYMBOL vmlinux 0x448eac3e kmemdup +EXPORT_SYMBOL vmlinux 0x44ac5374 ioctl_by_bdev +EXPORT_SYMBOL vmlinux 0x44bf5830 netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0x44cf1a0b sg_miter_start +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44f5e8b5 of_allnodes +EXPORT_SYMBOL vmlinux 0x452b1cb8 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0x452c0e8a udp_seq_open +EXPORT_SYMBOL vmlinux 0x453a643f inet_dgram_ops +EXPORT_SYMBOL vmlinux 0x453b3577 dev_driver_string +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x455de36b md_done_sync +EXPORT_SYMBOL vmlinux 0x45726234 kern_unmount +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x459338e6 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0x459ca0b9 have_submounts +EXPORT_SYMBOL vmlinux 0x45a55ec8 __iounmap +EXPORT_SYMBOL vmlinux 0x45a765cf pci_add_resource +EXPORT_SYMBOL vmlinux 0x45fd5c9d phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x45fda406 md_integrity_register +EXPORT_SYMBOL vmlinux 0x461ac773 kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x462c660f proc_dointvec +EXPORT_SYMBOL vmlinux 0x464de10a wait_on_page_bit +EXPORT_SYMBOL vmlinux 0x465cab34 secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0x46608fa0 getnstimeofday +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x46767828 scm_fp_dup +EXPORT_SYMBOL vmlinux 0x468f3ddb __destroy_inode +EXPORT_SYMBOL vmlinux 0x46940006 __block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x46c7b5c8 tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0x46cc7245 abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0x46def339 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x46feb099 dm_read_arg +EXPORT_SYMBOL vmlinux 0x47416e14 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x47932321 __skb_get_rxhash +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x47a55207 devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0x47b020ca netif_napi_add +EXPORT_SYMBOL vmlinux 0x47b3f862 radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x47b6a10f ftrace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0x47bbba78 pcie_set_readrq +EXPORT_SYMBOL vmlinux 0x47bcf84c param_set_ulong +EXPORT_SYMBOL vmlinux 0x47c8baf4 param_ops_uint +EXPORT_SYMBOL vmlinux 0x47da3a92 filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x48034724 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x48078b5b kthread_bind +EXPORT_SYMBOL vmlinux 0x4826c908 dev_uc_init +EXPORT_SYMBOL vmlinux 0x4829a47e memcpy +EXPORT_SYMBOL vmlinux 0x482a2a49 param_set_charp +EXPORT_SYMBOL vmlinux 0x483338ec input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0x483ac52b qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x4841bdee strnchr +EXPORT_SYMBOL vmlinux 0x48444f33 neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x4845095a blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x484fefe9 inode_sub_rsv_space +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x4869e76d mdiobus_free +EXPORT_SYMBOL vmlinux 0x48ae39c0 max8925_reg_read +EXPORT_SYMBOL vmlinux 0x48c6db53 of_get_child_by_name +EXPORT_SYMBOL vmlinux 0x48dafda4 dentry_unhash +EXPORT_SYMBOL vmlinux 0x48dd8c70 tcf_hash_release +EXPORT_SYMBOL vmlinux 0x48e4f40f __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x48f296f0 bdgrab +EXPORT_SYMBOL vmlinux 0x48fa68a9 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0x48ff5c8b dquot_disable +EXPORT_SYMBOL vmlinux 0x4903dc52 __mutex_init +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x490692b7 vga_client_register +EXPORT_SYMBOL vmlinux 0x490b39cd init_buffer +EXPORT_SYMBOL vmlinux 0x49103017 wait_for_key_construction +EXPORT_SYMBOL vmlinux 0x4913befc rwsem_is_locked +EXPORT_SYMBOL vmlinux 0x492cdcb1 sk_run_filter +EXPORT_SYMBOL vmlinux 0x492ffefc inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0x49316ea7 kern_path_create +EXPORT_SYMBOL vmlinux 0x493241d3 dev_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x495c96f8 posix_acl_init +EXPORT_SYMBOL vmlinux 0x495dcce8 tty_port_tty_get +EXPORT_SYMBOL vmlinux 0x49603fb8 security_sb_copy_data +EXPORT_SYMBOL vmlinux 0x49b07aec tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x49bbc9e9 set_user_nice +EXPORT_SYMBOL vmlinux 0x4a16e8cd dma_mark_declared_memory_occupied +EXPORT_SYMBOL vmlinux 0x4a2fc0a7 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0x4a358252 __bitmap_subset +EXPORT_SYMBOL vmlinux 0x4a6436a3 pci_get_subsys +EXPORT_SYMBOL vmlinux 0x4a9b8802 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0x4abcbab8 of_dev_put +EXPORT_SYMBOL vmlinux 0x4acd93d3 release_resource +EXPORT_SYMBOL vmlinux 0x4ad19a38 default_llseek +EXPORT_SYMBOL vmlinux 0x4ada5810 softnet_data +EXPORT_SYMBOL vmlinux 0x4afe9a77 scsi_partsize +EXPORT_SYMBOL vmlinux 0x4b2acfb8 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b653765 bio_integrity_split +EXPORT_SYMBOL vmlinux 0x4b691afd ip6_route_output +EXPORT_SYMBOL vmlinux 0x4b72de6c simple_release_fs +EXPORT_SYMBOL vmlinux 0x4c1182cb bitmap_scnprintf +EXPORT_SYMBOL vmlinux 0x4c23213d xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x4c346020 noop_fsync +EXPORT_SYMBOL vmlinux 0x4c52b0b6 __splice_from_pipe +EXPORT_SYMBOL vmlinux 0x4c5a24ab bio_phys_segments +EXPORT_SYMBOL vmlinux 0x4c634915 ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x4c6f9ef3 test_and_change_bit +EXPORT_SYMBOL vmlinux 0x4c82ba93 vga_put +EXPORT_SYMBOL vmlinux 0x4c891b25 ip6_expire_frag_queue +EXPORT_SYMBOL vmlinux 0x4c971bec ipmi_smi_msg_received +EXPORT_SYMBOL vmlinux 0x4ca6a20f security_path_mknod +EXPORT_SYMBOL vmlinux 0x4ca9669f scnprintf +EXPORT_SYMBOL vmlinux 0x4ca96b6d d_drop +EXPORT_SYMBOL vmlinux 0x4cb134c2 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x4cbbd171 __bitmap_weight +EXPORT_SYMBOL vmlinux 0x4cd62857 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x4cd76214 cleancache_register_ops +EXPORT_SYMBOL vmlinux 0x4cdb3178 ns_to_timeval +EXPORT_SYMBOL vmlinux 0x4ce184d7 __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x4cf79dcc xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0x4d0d163d copy_page +EXPORT_SYMBOL vmlinux 0x4d16800f __skb_gso_segment +EXPORT_SYMBOL vmlinux 0x4d18387a twl6040_set_pll +EXPORT_SYMBOL vmlinux 0x4d2a9c70 of_find_backlight_by_node +EXPORT_SYMBOL vmlinux 0x4d31d105 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0x4d48e99f nf_unregister_hooks +EXPORT_SYMBOL vmlinux 0x4d4d6de8 inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0x4d569019 devm_gpiod_get_index +EXPORT_SYMBOL vmlinux 0x4d58acc7 sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x4d974b9c register_sysrq_key +EXPORT_SYMBOL vmlinux 0x4d975b4c noop_qdisc +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4de34a07 cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x4df119fa __bitmap_parse +EXPORT_SYMBOL vmlinux 0x4dfaba06 padata_free +EXPORT_SYMBOL vmlinux 0x4e185c49 nf_afinfo +EXPORT_SYMBOL vmlinux 0x4e2b0225 proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e5664a7 dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e8a1e2c __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0x4e9dffb5 ip_fast_csum +EXPORT_SYMBOL vmlinux 0x4ebdef0f phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x4ec58f68 udp6_csum_init +EXPORT_SYMBOL vmlinux 0x4edd72f7 block_all_signals +EXPORT_SYMBOL vmlinux 0x4edee8f6 __mem_cgroup_count_vm_event +EXPORT_SYMBOL vmlinux 0x4ee93fa4 mii_check_media +EXPORT_SYMBOL vmlinux 0x4ef508de padata_set_cpumasks +EXPORT_SYMBOL vmlinux 0x4f0f304f lro_flush_all +EXPORT_SYMBOL vmlinux 0x4f1a455b tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f248523 of_find_node_by_name +EXPORT_SYMBOL vmlinux 0x4f391d0e nla_parse +EXPORT_SYMBOL vmlinux 0x4f476e96 init_cdrom_command +EXPORT_SYMBOL vmlinux 0x4f4fc46f scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x4f5ea663 ipmi_register_smi +EXPORT_SYMBOL vmlinux 0x4f68e5c9 do_gettimeofday +EXPORT_SYMBOL vmlinux 0x4f9e314c ps2_handle_ack +EXPORT_SYMBOL vmlinux 0x4fa2d05b devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0x4faf4a49 scsi_nonblockable_ioctl +EXPORT_SYMBOL vmlinux 0x4fb641ba xfrm_unregister_mode +EXPORT_SYMBOL vmlinux 0x4fbdcd78 alloc_disk +EXPORT_SYMBOL vmlinux 0x4fbdf683 jbd2_journal_start +EXPORT_SYMBOL vmlinux 0x4fd41772 blk_rq_init +EXPORT_SYMBOL vmlinux 0x4fe0240f __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x5029fee6 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0x502bdc65 tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0x50542d11 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x506718f1 netdev_emerg +EXPORT_SYMBOL vmlinux 0x507557d3 ilookup5 +EXPORT_SYMBOL vmlinux 0x5077b10d blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0x50a131cf __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0x50a65c31 scsi_put_command +EXPORT_SYMBOL vmlinux 0x50a90e8d bsearch +EXPORT_SYMBOL vmlinux 0x50d2592d hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0x50d5609b pagecache_write_end +EXPORT_SYMBOL vmlinux 0x5111091d idr_destroy +EXPORT_SYMBOL vmlinux 0x5118c382 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0x5152f5f0 dmam_free_noncoherent +EXPORT_SYMBOL vmlinux 0x51749fc8 _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0x517f2b65 inode_claim_rsv_space +EXPORT_SYMBOL vmlinux 0x51830959 d_instantiate +EXPORT_SYMBOL vmlinux 0x51a090a6 bio_advance +EXPORT_SYMBOL vmlinux 0x51a7c0dc unload_nls +EXPORT_SYMBOL vmlinux 0x51bc500d page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x51d9dbc7 gen10g_restart_aneg +EXPORT_SYMBOL vmlinux 0x51dce73b xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x51e77c97 pfn_valid +EXPORT_SYMBOL vmlinux 0x5202463b scsi_host_lookup +EXPORT_SYMBOL vmlinux 0x52026cdf security_sb_parse_opts_str +EXPORT_SYMBOL vmlinux 0x521b36b5 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0x522f81b4 uart_match_port +EXPORT_SYMBOL vmlinux 0x5239ce3b ___ratelimit +EXPORT_SYMBOL vmlinux 0x523d593d fb_validate_mode +EXPORT_SYMBOL vmlinux 0x524223c8 led_blink_set_oneshot +EXPORT_SYMBOL vmlinux 0x52428cc8 parent_mem_cgroup +EXPORT_SYMBOL vmlinux 0x52440088 gen_pool_destroy +EXPORT_SYMBOL vmlinux 0x5245f6a4 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x524f6f51 ipmi_get_my_address +EXPORT_SYMBOL vmlinux 0x525f424d dst_alloc +EXPORT_SYMBOL vmlinux 0x52764397 path_put +EXPORT_SYMBOL vmlinux 0x52845174 nlmsg_notify +EXPORT_SYMBOL vmlinux 0x529173e6 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0x52936566 scsi_cmd_get_serial +EXPORT_SYMBOL vmlinux 0x52afa21e get_io_context +EXPORT_SYMBOL vmlinux 0x52b57657 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0x52cc970f cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x52e63fb3 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0x52e76487 abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x53326531 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x5369eed6 find_get_pages_tag +EXPORT_SYMBOL vmlinux 0x5377e556 hex2bin +EXPORT_SYMBOL vmlinux 0x537d14dd mmc_power_restore_host +EXPORT_SYMBOL vmlinux 0x53b480fd proc_symlink +EXPORT_SYMBOL vmlinux 0x53e3df29 simple_open +EXPORT_SYMBOL vmlinux 0x53eca68b audit_log_task_info +EXPORT_SYMBOL vmlinux 0x53f8e7b8 __idr_pre_get +EXPORT_SYMBOL vmlinux 0x53fbd07f sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0x53ff65b1 jbd2_journal_file_inode +EXPORT_SYMBOL vmlinux 0x5409775b free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x540aa884 scsi_get_command +EXPORT_SYMBOL vmlinux 0x540bcb40 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0x5422f953 md_register_thread +EXPORT_SYMBOL vmlinux 0x54245b39 kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x544e2fd0 ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x549104b8 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54e3cc3b param_get_int +EXPORT_SYMBOL vmlinux 0x54e4dc25 __scsi_add_device +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54ed4356 page_put_link +EXPORT_SYMBOL vmlinux 0x54f9e4ec textsearch_unregister +EXPORT_SYMBOL vmlinux 0x5507d82b blk_queue_find_tag +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x55285941 tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0x5535647e inet6_release +EXPORT_SYMBOL vmlinux 0x5541ea93 on_each_cpu +EXPORT_SYMBOL vmlinux 0x5567c227 kernel_cpustat +EXPORT_SYMBOL vmlinux 0x556c2740 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x557671b0 lro_receive_frags +EXPORT_SYMBOL vmlinux 0x5594be03 bitmap_remap +EXPORT_SYMBOL vmlinux 0x5597bd92 do_SAK +EXPORT_SYMBOL vmlinux 0x55ccd4d2 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0x55e828b7 ip6_frag_init +EXPORT_SYMBOL vmlinux 0x55ef88b5 mark_page_accessed +EXPORT_SYMBOL vmlinux 0x55efad99 tcp_proc_unregister +EXPORT_SYMBOL vmlinux 0x5608a4ea unmap_mapping_range +EXPORT_SYMBOL vmlinux 0x560b9c1c neigh_event_ns +EXPORT_SYMBOL vmlinux 0x5614b010 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x561b081c ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x561e7736 sockfd_lookup +EXPORT_SYMBOL vmlinux 0x56342ce1 down_timeout +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x563a28e3 devm_clk_put +EXPORT_SYMBOL vmlinux 0x563aa7c0 gen_replace_estimator +EXPORT_SYMBOL vmlinux 0x563d6767 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0x5642793a radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x56458c75 blk_delay_queue +EXPORT_SYMBOL vmlinux 0x5665abf0 prepare_binprm +EXPORT_SYMBOL vmlinux 0x56acaa29 pci_claim_resource +EXPORT_SYMBOL vmlinux 0x56b05fe5 crypto_sha1_update +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x572d0104 _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x572e85d4 blk_lookup_devt +EXPORT_SYMBOL vmlinux 0x5740ae26 tty_do_resize +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x575af70c on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x5782b6ff follow_pfn +EXPORT_SYMBOL vmlinux 0x5792f848 strlcpy +EXPORT_SYMBOL vmlinux 0x579fbcd2 cpu_possible_mask +EXPORT_SYMBOL vmlinux 0x57a8792d walk_stackframe +EXPORT_SYMBOL vmlinux 0x57a9889e netlink_ack +EXPORT_SYMBOL vmlinux 0x57bfc613 dev_uc_flush +EXPORT_SYMBOL vmlinux 0x57c8ca1b km_state_expired +EXPORT_SYMBOL vmlinux 0x57e49ecc inet_register_protosw +EXPORT_SYMBOL vmlinux 0x5833444f free_task +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x58392982 elv_rb_former_request +EXPORT_SYMBOL vmlinux 0x5839c3b3 page_symlink +EXPORT_SYMBOL vmlinux 0x5848c353 fib_default_rule_pref +EXPORT_SYMBOL vmlinux 0x584bccb6 tty_write_room +EXPORT_SYMBOL vmlinux 0x58503406 pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x5851445b inode_dio_wait +EXPORT_SYMBOL vmlinux 0x5857b225 ioread16_rep +EXPORT_SYMBOL vmlinux 0x5862b3eb mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x5872ee07 xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0x587616f1 vfs_fstatat +EXPORT_SYMBOL vmlinux 0x58794285 pci_get_slot +EXPORT_SYMBOL vmlinux 0x588c130c vexpress_config_func_put +EXPORT_SYMBOL vmlinux 0x58ade001 sock_create_kern +EXPORT_SYMBOL vmlinux 0x58ba8c52 kernel_getsockopt +EXPORT_SYMBOL vmlinux 0x58d1070a of_get_address +EXPORT_SYMBOL vmlinux 0x58dce231 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0x590a6936 dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x59676db9 cfb_copyarea +EXPORT_SYMBOL vmlinux 0x5979904d cfb_imageblit +EXPORT_SYMBOL vmlinux 0x597dda50 gen_pool_alloc +EXPORT_SYMBOL vmlinux 0x5991219c cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x59aa1907 vfs_llseek +EXPORT_SYMBOL vmlinux 0x59b299f5 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x59c52c66 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0x59d857fb phy_stop_interrupts +EXPORT_SYMBOL vmlinux 0x59db4660 genphy_setup_forced +EXPORT_SYMBOL vmlinux 0x59fc6d48 key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x5a05c343 kmem_cache_free +EXPORT_SYMBOL vmlinux 0x5a1a0e3d __pskb_copy +EXPORT_SYMBOL vmlinux 0x5a2c7229 jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0x5a3038ed dm_kobject_release +EXPORT_SYMBOL vmlinux 0x5a5536c2 param_ops_invbool +EXPORT_SYMBOL vmlinux 0x5a91941e netpoll_setup +EXPORT_SYMBOL vmlinux 0x5a921311 strncmp +EXPORT_SYMBOL vmlinux 0x5a985614 ppp_dev_name +EXPORT_SYMBOL vmlinux 0x5a9befe5 ida_simple_get +EXPORT_SYMBOL vmlinux 0x5a9c9cf3 lg_lock_init +EXPORT_SYMBOL vmlinux 0x5a9f1d63 memmove +EXPORT_SYMBOL vmlinux 0x5aa69a47 dma_declare_coherent_memory +EXPORT_SYMBOL vmlinux 0x5abcf6ad flock_lock_file_wait +EXPORT_SYMBOL vmlinux 0x5accb66d uart_update_timeout +EXPORT_SYMBOL vmlinux 0x5ad17c4e rt6_lookup +EXPORT_SYMBOL vmlinux 0x5ae50279 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x5af30611 inode_init_always +EXPORT_SYMBOL vmlinux 0x5b3e121e tcp_sendpage +EXPORT_SYMBOL vmlinux 0x5b4c6ce6 skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0x5b56860c vm_munmap +EXPORT_SYMBOL vmlinux 0x5b725f4f inet_ioctl +EXPORT_SYMBOL vmlinux 0x5b83c1fd dma_mmap_from_coherent +EXPORT_SYMBOL vmlinux 0x5b9529f7 tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x5b95b6e6 generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0x5bc10524 printk_emit +EXPORT_SYMBOL vmlinux 0x5bd05e27 dquot_alloc +EXPORT_SYMBOL vmlinux 0x5bd06377 scsi_device_resume +EXPORT_SYMBOL vmlinux 0x5bec8a0f __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0x5bf7a9e3 iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0x5c190aa8 wake_up_process +EXPORT_SYMBOL vmlinux 0x5c436351 follow_down +EXPORT_SYMBOL vmlinux 0x5c4596d8 eth_change_mtu +EXPORT_SYMBOL vmlinux 0x5c6baebf sock_setsockopt +EXPORT_SYMBOL vmlinux 0x5c83a701 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0x5c853ab1 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0x5c86553c __break_lease +EXPORT_SYMBOL vmlinux 0x5c9284a0 processor_id +EXPORT_SYMBOL vmlinux 0x5ca0ee4e override_creds +EXPORT_SYMBOL vmlinux 0x5cbb9252 bitmap_startwrite +EXPORT_SYMBOL vmlinux 0x5cbcbae6 jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x5cc24b24 from_kuid_munged +EXPORT_SYMBOL vmlinux 0x5cd6bc18 netpoll_cleanup +EXPORT_SYMBOL vmlinux 0x5cd885d5 _raw_spin_lock +EXPORT_SYMBOL vmlinux 0x5ce643b7 inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5d0dffe1 empty_zero_page +EXPORT_SYMBOL vmlinux 0x5d112304 __memcpy_fromio +EXPORT_SYMBOL vmlinux 0x5d1eea64 simple_transaction_read +EXPORT_SYMBOL vmlinux 0x5d41c87c param_ops_charp +EXPORT_SYMBOL vmlinux 0x5d54a792 netlink_broadcast +EXPORT_SYMBOL vmlinux 0x5d550c4d scsi_sd_probe_domain +EXPORT_SYMBOL vmlinux 0x5d559bbe tty_port_close +EXPORT_SYMBOL vmlinux 0x5d5b5a16 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x5d813967 padata_set_cpumask +EXPORT_SYMBOL vmlinux 0x5da51133 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x5dc07d18 arp_send +EXPORT_SYMBOL vmlinux 0x5dee76ae tty_register_ldisc +EXPORT_SYMBOL vmlinux 0x5e0454f9 bitmap_endwrite +EXPORT_SYMBOL vmlinux 0x5e09b12f mii_check_link +EXPORT_SYMBOL vmlinux 0x5e1fc483 vfs_readlink +EXPORT_SYMBOL vmlinux 0x5e237d10 __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0x5e31563c mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x5e37b033 put_page +EXPORT_SYMBOL vmlinux 0x5e526020 udp_prot +EXPORT_SYMBOL vmlinux 0x5e5a10ee __inet_stream_connect +EXPORT_SYMBOL vmlinux 0x5e656de4 devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x5e80f37c ipmi_unregister_for_cmd +EXPORT_SYMBOL vmlinux 0x5e8c0148 scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5edb000c sock_alloc_file +EXPORT_SYMBOL vmlinux 0x5ee3d7e3 seq_path +EXPORT_SYMBOL vmlinux 0x5ee8dec8 ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x5f005368 kstrtou8 +EXPORT_SYMBOL vmlinux 0x5f018f1d block_read_full_page +EXPORT_SYMBOL vmlinux 0x5f03bce2 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f0d49e6 d_alloc_name +EXPORT_SYMBOL vmlinux 0x5f2eb4fe tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x5f3c8f5c mmc_assume_removable +EXPORT_SYMBOL vmlinux 0x5f58f676 flex_array_get_ptr +EXPORT_SYMBOL vmlinux 0x5f957daa i2c_master_send +EXPORT_SYMBOL vmlinux 0x5fcdcc05 ipmi_get_my_LUN +EXPORT_SYMBOL vmlinux 0x5fcf7d92 dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x5fda0227 vfs_stat +EXPORT_SYMBOL vmlinux 0x5ff11cc3 pcibios_min_io +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x60374ac8 __block_write_begin +EXPORT_SYMBOL vmlinux 0x6045d4fd pci_disable_ido +EXPORT_SYMBOL vmlinux 0x604bd92b __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x60502283 input_unregister_handler +EXPORT_SYMBOL vmlinux 0x6065c73e create_syslog_header +EXPORT_SYMBOL vmlinux 0x6067f630 make_kuid +EXPORT_SYMBOL vmlinux 0x606d0b09 secure_tcpv6_sequence_number +EXPORT_SYMBOL vmlinux 0x60704dda generic_file_mmap +EXPORT_SYMBOL vmlinux 0x607112b9 kill_anon_super +EXPORT_SYMBOL vmlinux 0x609198e6 bio_integrity_enabled +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a9dd50 bio_copy_user +EXPORT_SYMBOL vmlinux 0x60cb8cf4 mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0x60da19aa from_kgid_munged +EXPORT_SYMBOL vmlinux 0x60df1e3b posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x6104f1e0 dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0x612390ad netpoll_set_trap +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x61454016 dev_addr_flush +EXPORT_SYMBOL vmlinux 0x61538ad0 param_get_charp +EXPORT_SYMBOL vmlinux 0x619cb7dd simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x61aaaca9 mmc_hw_reset +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61e5b7e5 dev_load +EXPORT_SYMBOL vmlinux 0x6206f60f netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0x62114c00 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0x62125839 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0x62226733 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0x622546a7 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0x6225637e md5_transform +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x62327a9b dma_common_mmap +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x6274d92f pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0x62827bec security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x629b1f43 elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x62a00dd7 audit_log +EXPORT_SYMBOL vmlinux 0x62eb8f89 dentry_open +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x631bcb60 pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0x631c9df2 md_error +EXPORT_SYMBOL vmlinux 0x631f8960 inet_add_offload +EXPORT_SYMBOL vmlinux 0x63413222 netif_device_detach +EXPORT_SYMBOL vmlinux 0x63482f4d tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0x634994bb elv_rq_merge_ok +EXPORT_SYMBOL vmlinux 0x63668c75 free_xenballooned_pages +EXPORT_SYMBOL vmlinux 0x6371c990 kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0x6373f45b kvm_read_guest_atomic +EXPORT_SYMBOL vmlinux 0x63d27fe9 bio_get_nr_vecs +EXPORT_SYMBOL vmlinux 0x63e679a7 __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x640121b3 __napi_complete +EXPORT_SYMBOL vmlinux 0x6401fd77 xfrm_state_walk +EXPORT_SYMBOL vmlinux 0x6403e338 tcp_memory_pressure +EXPORT_SYMBOL vmlinux 0x643f08b7 fasync_helper +EXPORT_SYMBOL vmlinux 0x643f63f8 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0x646dc896 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0x64852b60 cancel_dirty_page +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x64a4b84d cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x64b05665 tcp_proto_cgroup +EXPORT_SYMBOL vmlinux 0x64bbc288 string_unescape +EXPORT_SYMBOL vmlinux 0x64cbd556 init_net +EXPORT_SYMBOL vmlinux 0x64dd5f65 sg_miter_next +EXPORT_SYMBOL vmlinux 0x65122350 ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x652ce9aa nla_memcmp +EXPORT_SYMBOL vmlinux 0x65345022 __wake_up +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x655c55f9 scsi_rescan_device +EXPORT_SYMBOL vmlinux 0x655c695b __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x6590a57e d_make_root +EXPORT_SYMBOL vmlinux 0x65c91e9e nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65e0d6d7 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x65eea112 single_open +EXPORT_SYMBOL vmlinux 0x65f3ad9a fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x65f583f0 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x6605f97f flex_array_clear +EXPORT_SYMBOL vmlinux 0x6618c1a7 __init_rwsem +EXPORT_SYMBOL vmlinux 0x66271297 blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x667a0c38 pci_disable_device +EXPORT_SYMBOL vmlinux 0x6684333b clear_nlink +EXPORT_SYMBOL vmlinux 0x668da8d5 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x66a67dab flex_array_shrink +EXPORT_SYMBOL vmlinux 0x66a9f498 ppp_register_channel +EXPORT_SYMBOL vmlinux 0x66b8594b blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0x671cc855 jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0x675b8f61 param_get_string +EXPORT_SYMBOL vmlinux 0x67a7ed7c fget_light +EXPORT_SYMBOL vmlinux 0x67af0cbd simple_dir_operations +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67b98459 bio_init +EXPORT_SYMBOL vmlinux 0x67cb9784 ipmi_poll_interface +EXPORT_SYMBOL vmlinux 0x67f2dd1f mmc_detect_change +EXPORT_SYMBOL vmlinux 0x67fd6fca dmam_release_declared_memory +EXPORT_SYMBOL vmlinux 0x6800d553 tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0x68023abb address_space_init_once +EXPORT_SYMBOL vmlinux 0x681cca80 ps2_handle_response +EXPORT_SYMBOL vmlinux 0x683cbb14 swiotlb_dma_supported +EXPORT_SYMBOL vmlinux 0x68733f91 flush_cache_all +EXPORT_SYMBOL vmlinux 0x688c1ca0 kernel_accept +EXPORT_SYMBOL vmlinux 0x689e9e6e d_delete +EXPORT_SYMBOL vmlinux 0x68a834f1 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x68b4b830 seq_release +EXPORT_SYMBOL vmlinux 0x68b83ac6 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x68d79dd7 inet_twsk_deschedule +EXPORT_SYMBOL vmlinux 0x68e02cc3 blk_make_request +EXPORT_SYMBOL vmlinux 0x68e05d57 getrawmonotonic +EXPORT_SYMBOL vmlinux 0x68ff3fe6 bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x690d291c revalidate_disk +EXPORT_SYMBOL vmlinux 0x6943a676 d_invalidate +EXPORT_SYMBOL vmlinux 0x69476c20 touch_buffer +EXPORT_SYMBOL vmlinux 0x69507578 kernel_listen +EXPORT_SYMBOL vmlinux 0x696df2d8 set_bdi_congested +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x697bbc4a __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x6981e3e2 end_page_writeback +EXPORT_SYMBOL vmlinux 0x698e0136 complete_request_key +EXPORT_SYMBOL vmlinux 0x69a0ca7d iowrite16be +EXPORT_SYMBOL vmlinux 0x69a358a6 iomem_resource +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69b17231 kfree_skb +EXPORT_SYMBOL vmlinux 0x69b2afe7 dquot_commit_info +EXPORT_SYMBOL vmlinux 0x69d38ed9 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x69e27c7a bitmap_copy_le +EXPORT_SYMBOL vmlinux 0x69e35432 pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0x69ff2793 napi_gro_frags +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a1c399f bdi_unregister +EXPORT_SYMBOL vmlinux 0x6a3b1da1 dentry_path_raw +EXPORT_SYMBOL vmlinux 0x6a3f4119 mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0x6a494f8e default_qdisc_ops +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a5fa363 sigprocmask +EXPORT_SYMBOL vmlinux 0x6a76f3ac blk_iopoll_enable +EXPORT_SYMBOL vmlinux 0x6a8fe656 kill_fasync +EXPORT_SYMBOL vmlinux 0x6a9ab370 ip_ct_attach +EXPORT_SYMBOL vmlinux 0x6ab071fd bd_set_size +EXPORT_SYMBOL vmlinux 0x6acb973d iowrite32be +EXPORT_SYMBOL vmlinux 0x6ad2b36a iget_locked +EXPORT_SYMBOL vmlinux 0x6ae0bf40 xfrm_garbage_collect +EXPORT_SYMBOL vmlinux 0x6af2f9cf should_remove_suid +EXPORT_SYMBOL vmlinux 0x6b06fdce delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x6b0985ed nobh_writepage +EXPORT_SYMBOL vmlinux 0x6b1b67d3 __bdevname +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b39837d sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0x6b5cccba file_update_time +EXPORT_SYMBOL vmlinux 0x6b640864 nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6b6c119e phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0x6b760bdb mmc_set_blockcount +EXPORT_SYMBOL vmlinux 0x6b8eb82a dm_put_device +EXPORT_SYMBOL vmlinux 0x6b97b0c3 abx500_register_ops +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bc736ac frontswap_register_ops +EXPORT_SYMBOL vmlinux 0x6bdcfd99 qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x6beb2078 param_set_copystring +EXPORT_SYMBOL vmlinux 0x6bf2a3a8 pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0x6bfd12ed arp_tbl +EXPORT_SYMBOL vmlinux 0x6c033085 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0x6c0ff6da nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0x6c21e70a __seq_open_private +EXPORT_SYMBOL vmlinux 0x6c23c360 generic_file_splice_write +EXPORT_SYMBOL vmlinux 0x6c24c512 tcp_gso_segment +EXPORT_SYMBOL vmlinux 0x6c2cdc47 add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0x6c4d9c35 blk_mq_map_queue +EXPORT_SYMBOL vmlinux 0x6c51a836 sysctl_tcp_notsent_lowat +EXPORT_SYMBOL vmlinux 0x6c5725d6 dev_uc_add +EXPORT_SYMBOL vmlinux 0x6c60a53c ip_check_defrag +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c702af7 sysctl_udp_rmem_min +EXPORT_SYMBOL vmlinux 0x6c730fbc sock_kmalloc +EXPORT_SYMBOL vmlinux 0x6c7aa3c0 swiotlb_free_coherent +EXPORT_SYMBOL vmlinux 0x6c92d93b pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x6cd346ca elv_dispatch_sort +EXPORT_SYMBOL vmlinux 0x6cd8c86b __crc32c_le_combine +EXPORT_SYMBOL vmlinux 0x6cf649a6 padata_remove_cpu +EXPORT_SYMBOL vmlinux 0x6d0f1f89 dm_table_get_mode +EXPORT_SYMBOL vmlinux 0x6d129c2f simple_unlink +EXPORT_SYMBOL vmlinux 0x6d140c45 scsi_add_device +EXPORT_SYMBOL vmlinux 0x6d27ef64 __bitmap_empty +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d340f64 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x6d5911e3 mmc_get_card +EXPORT_SYMBOL vmlinux 0x6d7a6df4 bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0x6db7415e ip_fragment +EXPORT_SYMBOL vmlinux 0x6de1158e mdiobus_register +EXPORT_SYMBOL vmlinux 0x6de22008 register_qdisc +EXPORT_SYMBOL vmlinux 0x6de64807 proc_remove +EXPORT_SYMBOL vmlinux 0x6def2db2 half_md4_transform +EXPORT_SYMBOL vmlinux 0x6dfe6a65 remove_proc_entry +EXPORT_SYMBOL vmlinux 0x6e1ae553 inet_accept +EXPORT_SYMBOL vmlinux 0x6e1f96c3 pci_set_power_state +EXPORT_SYMBOL vmlinux 0x6e37bde4 dcache_dir_open +EXPORT_SYMBOL vmlinux 0x6e38a469 abort_creds +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e983cc3 scsi_unregister +EXPORT_SYMBOL vmlinux 0x6e9e28c2 napi_gro_flush +EXPORT_SYMBOL vmlinux 0x6ebc5149 param_ops_long +EXPORT_SYMBOL vmlinux 0x6eddaabb __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0x6ef0c45e gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0x6ef9a3c0 ab3100_event_register +EXPORT_SYMBOL vmlinux 0x6f089886 mmc_start_bkops +EXPORT_SYMBOL vmlinux 0x6f20960a full_name_hash +EXPORT_SYMBOL vmlinux 0x6f3519e2 security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x6f4af518 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0x6f6ee919 iunique +EXPORT_SYMBOL vmlinux 0x6f749a2f d_rehash +EXPORT_SYMBOL vmlinux 0x6f7fab62 scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x6f8586f9 unregister_netdev +EXPORT_SYMBOL vmlinux 0x6f9771b0 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0x6fac354a xfrm_state_add +EXPORT_SYMBOL vmlinux 0x6fae325b filemap_fdatawait +EXPORT_SYMBOL vmlinux 0x6fba591e tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0x6fbde2e9 inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fd040ec generic_segment_checks +EXPORT_SYMBOL vmlinux 0x6fe15aa7 sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x6fe6d74f phy_detach +EXPORT_SYMBOL vmlinux 0x6ffaa055 mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0x700b821c mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0x700bd9a0 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x70257358 dev_printk_emit +EXPORT_SYMBOL vmlinux 0x7033a6e9 textsearch_register +EXPORT_SYMBOL vmlinux 0x70523a7a __cond_resched_softirq +EXPORT_SYMBOL vmlinux 0x705709bf init_special_inode +EXPORT_SYMBOL vmlinux 0x7058b214 inc_nlink +EXPORT_SYMBOL vmlinux 0x707f43f6 __ctzdi2 +EXPORT_SYMBOL vmlinux 0x7088b9c7 scsi_prep_return +EXPORT_SYMBOL vmlinux 0x70abce9e bio_integrity_free +EXPORT_SYMBOL vmlinux 0x70b6d9e5 scsi_device_get +EXPORT_SYMBOL vmlinux 0x70bc17d7 inode_wait +EXPORT_SYMBOL vmlinux 0x70d053fd try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x70f0483c pci_bus_get +EXPORT_SYMBOL vmlinux 0x711398e4 km_policy_expired +EXPORT_SYMBOL vmlinux 0x71294132 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x713ec834 end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0x71409a1a xfrm_lookup +EXPORT_SYMBOL vmlinux 0x715468e7 bdi_setup_and_register +EXPORT_SYMBOL vmlinux 0x71605df0 __napi_schedule +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x7184be6c xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a66dea __ethtool_get_settings +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71ac730a nonseekable_open +EXPORT_SYMBOL vmlinux 0x71b1838d pci_set_dma_seg_boundary +EXPORT_SYMBOL vmlinux 0x71c35f78 __inet6_hash +EXPORT_SYMBOL vmlinux 0x71efcf0d __ww_mutex_lock +EXPORT_SYMBOL vmlinux 0x720f0220 tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x7210f441 ndo_dflt_bridge_getlink +EXPORT_SYMBOL vmlinux 0x723c2d0c generic_read_dir +EXPORT_SYMBOL vmlinux 0x7264055c alloc_pci_dev +EXPORT_SYMBOL vmlinux 0x72674786 scsi_finish_command +EXPORT_SYMBOL vmlinux 0x728f6335 mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0x7296d8a2 memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0x72cdc827 inet_del_offload +EXPORT_SYMBOL vmlinux 0x72cde056 posix_test_lock +EXPORT_SYMBOL vmlinux 0x72e77ff5 free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72f4d82f __get_page_tail +EXPORT_SYMBOL vmlinux 0x72fbcbac pci_find_next_bus +EXPORT_SYMBOL vmlinux 0x73211fa4 netdev_warn +EXPORT_SYMBOL vmlinux 0x733c3b54 kasprintf +EXPORT_SYMBOL vmlinux 0x734b40bb __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x73521743 pcim_iomap +EXPORT_SYMBOL vmlinux 0x7354e667 pci_save_state +EXPORT_SYMBOL vmlinux 0x7369e85f dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0x73723cbb phy_connect +EXPORT_SYMBOL vmlinux 0x737de5e9 radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0x738f7638 blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0x73936d17 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0x739ad494 __elv_add_request +EXPORT_SYMBOL vmlinux 0x73e2d945 nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x73e5c8a1 kobject_add +EXPORT_SYMBOL vmlinux 0x74352049 netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0x743c50d7 tcf_hash_check +EXPORT_SYMBOL vmlinux 0x7469fcfe radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x747195f0 hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x74747399 max8998_bulk_write +EXPORT_SYMBOL vmlinux 0x7485e15e unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x749620d9 jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0x74b37360 dma_async_memcpy_buf_to_buf +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74c5ea25 tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x75025207 pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x750ae3fe inet6_getname +EXPORT_SYMBOL vmlinux 0x75122f4f xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0x75325086 nf_setsockopt +EXPORT_SYMBOL vmlinux 0x7532588a alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x754dac78 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x75850d01 __vmalloc +EXPORT_SYMBOL vmlinux 0x758f555c qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75bdea12 iommu_area_alloc +EXPORT_SYMBOL vmlinux 0x75e371e4 mmc_gpio_request_ro +EXPORT_SYMBOL vmlinux 0x75f44406 kfree_skb_list +EXPORT_SYMBOL vmlinux 0x75f4f721 blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x76076958 sock_sendmsg +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x761bb77c sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0x76234c50 percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x76365906 sock_get_timestamp +EXPORT_SYMBOL vmlinux 0x763fd45b tcf_unregister_action +EXPORT_SYMBOL vmlinux 0x76416fe1 release_firmware +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x764bd77c request_resource +EXPORT_SYMBOL vmlinux 0x765ff474 crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x766e777f neigh_compat_output +EXPORT_SYMBOL vmlinux 0x76739433 napi_gro_receive +EXPORT_SYMBOL vmlinux 0x76799df8 elevator_init +EXPORT_SYMBOL vmlinux 0x76878f85 d_find_alias +EXPORT_SYMBOL vmlinux 0x769e06d7 smp_call_function_many +EXPORT_SYMBOL vmlinux 0x76bf656d __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x76ce1d82 sock_update_classid +EXPORT_SYMBOL vmlinux 0x76ceed11 cad_pid +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76d81924 __nlmsg_put +EXPORT_SYMBOL vmlinux 0x76dcb24b neigh_seq_start +EXPORT_SYMBOL vmlinux 0x76e1bcf8 security_path_symlink +EXPORT_SYMBOL vmlinux 0x76e24e7b __blk_end_request +EXPORT_SYMBOL vmlinux 0x76ebd047 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0x771cf835 dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x773a9c94 blk_iopoll_enabled +EXPORT_SYMBOL vmlinux 0x773fa409 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x77675115 set_groups +EXPORT_SYMBOL vmlinux 0x776b5a2e kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x77a74615 iget_failed +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77be3d28 mmc_interrupt_hpi +EXPORT_SYMBOL vmlinux 0x77c73dd0 of_find_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0x77c8f3d9 devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x77df0847 __set_personality +EXPORT_SYMBOL vmlinux 0x77e9a5e0 serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0x77ecac9f zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x77f64d70 lock_may_read +EXPORT_SYMBOL vmlinux 0x77fdd7ee rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0x78189342 devfreq_add_governor +EXPORT_SYMBOL vmlinux 0x781d751d pci_iounmap +EXPORT_SYMBOL vmlinux 0x78200b62 cdev_init +EXPORT_SYMBOL vmlinux 0x78305aa5 of_get_ddr_timings +EXPORT_SYMBOL vmlinux 0x7836adc7 framebuffer_release +EXPORT_SYMBOL vmlinux 0x783b3563 wake_up_atomic_t +EXPORT_SYMBOL vmlinux 0x7846af3e __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x785ed85b netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0x7874b3de vlan_vid_add +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x7893aaa7 mmc_can_trim +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78a0ee05 pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0x78baf8b5 tty_port_tty_set +EXPORT_SYMBOL vmlinux 0x78dd5cd2 i2c_transfer +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78e40850 nf_nat_decode_session_hook +EXPORT_SYMBOL vmlinux 0x78fd36e7 ipmi_request_supply_msgs +EXPORT_SYMBOL vmlinux 0x790d845c starget_for_each_device +EXPORT_SYMBOL vmlinux 0x79169f90 blk_init_queue_node +EXPORT_SYMBOL vmlinux 0x791eca2e ipmi_smi_add_proc_entry +EXPORT_SYMBOL vmlinux 0x791f4846 I_BDEV +EXPORT_SYMBOL vmlinux 0x791fe865 blk_queue_start_tag +EXPORT_SYMBOL vmlinux 0x7930d225 of_device_is_compatible +EXPORT_SYMBOL vmlinux 0x7948f9cb datagram_poll +EXPORT_SYMBOL vmlinux 0x7952b8fd blk_put_queue +EXPORT_SYMBOL vmlinux 0x796fc5ce scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0x79703909 tcf_destroy_chain +EXPORT_SYMBOL vmlinux 0x79792f85 iget5_locked +EXPORT_SYMBOL vmlinux 0x797c8fa9 cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x7984eefc key_update +EXPORT_SYMBOL vmlinux 0x79a7fb96 elv_unregister_queue +EXPORT_SYMBOL vmlinux 0x79a87655 seq_release_private +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79ebd892 mmc_can_sanitize +EXPORT_SYMBOL vmlinux 0x7a0fbac2 d_move +EXPORT_SYMBOL vmlinux 0x7a188791 prandom_bytes +EXPORT_SYMBOL vmlinux 0x7a27c184 ewma_init +EXPORT_SYMBOL vmlinux 0x7a327c26 scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a8e864f do_truncate +EXPORT_SYMBOL vmlinux 0x7a91726b clkdev_alloc +EXPORT_SYMBOL vmlinux 0x7a963f89 serio_unregister_port +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7add44b5 posix_acl_valid +EXPORT_SYMBOL vmlinux 0x7aeceb9f generic_file_fsync +EXPORT_SYMBOL vmlinux 0x7b01b77c generic_writepages +EXPORT_SYMBOL vmlinux 0x7b16235f hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x7b1e8e2e generic_pipe_buf_map +EXPORT_SYMBOL vmlinux 0x7b24cc22 mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0x7b2aef6c __krealloc +EXPORT_SYMBOL vmlinux 0x7b2da1c3 get_task_io_context +EXPORT_SYMBOL vmlinux 0x7b4c7fda neigh_update +EXPORT_SYMBOL vmlinux 0x7b6646bb _raw_read_lock +EXPORT_SYMBOL vmlinux 0x7b6d6a46 scsi_execute_req_flags +EXPORT_SYMBOL vmlinux 0x7b775ec7 phy_device_register +EXPORT_SYMBOL vmlinux 0x7b7b46b4 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0x7b7f352e fddi_type_trans +EXPORT_SYMBOL vmlinux 0x7b809578 wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x7bc19892 __get_user_pages +EXPORT_SYMBOL vmlinux 0x7bef37f8 bio_copy_kern +EXPORT_SYMBOL vmlinux 0x7c1372e8 panic +EXPORT_SYMBOL vmlinux 0x7c1b8167 pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x7c2d098f krealloc +EXPORT_SYMBOL vmlinux 0x7c2d2257 read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x7c43f6f5 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0x7c61340c __release_region +EXPORT_SYMBOL vmlinux 0x7c6b9762 inet_frags_fini +EXPORT_SYMBOL vmlinux 0x7c6c1f06 filemap_write_and_wait +EXPORT_SYMBOL vmlinux 0x7c747a80 mount_subtree +EXPORT_SYMBOL vmlinux 0x7ca3ebc9 pcibios_fixup_bus +EXPORT_SYMBOL vmlinux 0x7cb1ae69 cpu_down +EXPORT_SYMBOL vmlinux 0x7cba4f74 neigh_parms_release +EXPORT_SYMBOL vmlinux 0x7cc578da param_get_long +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7cef86a9 vmap +EXPORT_SYMBOL vmlinux 0x7cf3a16b put_cmsg +EXPORT_SYMBOL vmlinux 0x7d02cc8e set_security_override +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d0dfabd gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0x7d11c268 jiffies +EXPORT_SYMBOL vmlinux 0x7d144614 scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x7d24ff2e mb_cache_entry_alloc +EXPORT_SYMBOL vmlinux 0x7d4c624f udp_poll +EXPORT_SYMBOL vmlinux 0x7d7d92ac xfrm_register_type +EXPORT_SYMBOL vmlinux 0x7da5e699 security_path_link +EXPORT_SYMBOL vmlinux 0x7dc64c3b mmc_power_save_host +EXPORT_SYMBOL vmlinux 0x7dc6bf88 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x7dd1acea security_inode_permission +EXPORT_SYMBOL vmlinux 0x7de5fcf0 blk_run_queue +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7e0d9c80 netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x7e1736bb genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0x7e1eb3a6 mutex_lock_killable +EXPORT_SYMBOL vmlinux 0x7e37b443 unlock_page +EXPORT_SYMBOL vmlinux 0x7e394c4e sysctl_local_reserved_ports +EXPORT_SYMBOL vmlinux 0x7e453e4f prepare_creds +EXPORT_SYMBOL vmlinux 0x7e509093 soft_cursor +EXPORT_SYMBOL vmlinux 0x7e50aa9f tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0x7e657d65 dev_mc_add +EXPORT_SYMBOL vmlinux 0x7e846361 __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0x7e98d318 vexpress_config_read +EXPORT_SYMBOL vmlinux 0x7ea06a15 neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0x7eae09b9 brioctl_set +EXPORT_SYMBOL vmlinux 0x7eaffd2e gen10g_config_advert +EXPORT_SYMBOL vmlinux 0x7ebb8124 copy_strings_kernel +EXPORT_SYMBOL vmlinux 0x7ec03e71 skb_pad +EXPORT_SYMBOL vmlinux 0x7ecb001b __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x7ecd996c generic_error_remove_page +EXPORT_SYMBOL vmlinux 0x7f04bcf0 dev_disable_lro +EXPORT_SYMBOL vmlinux 0x7f14ecae jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f250137 ata_print_version +EXPORT_SYMBOL vmlinux 0x7f2ce386 put_tty_driver +EXPORT_SYMBOL vmlinux 0x7f33d5fc wireless_spy_update +EXPORT_SYMBOL vmlinux 0x7f37f160 write_dirty_buffer +EXPORT_SYMBOL vmlinux 0x7f45aa9b down_write +EXPORT_SYMBOL vmlinux 0x7f5b1675 __secpath_destroy +EXPORT_SYMBOL vmlinux 0x7f5f3e00 n_tty_compat_ioctl_helper +EXPORT_SYMBOL vmlinux 0x7f98ac53 ipv6_push_nfrag_opts +EXPORT_SYMBOL vmlinux 0x7faf919e dma_common_get_sgtable +EXPORT_SYMBOL vmlinux 0x7faff128 of_platform_bus_probe +EXPORT_SYMBOL vmlinux 0x7fd1a158 kernel_getpeername +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fe38f48 sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x7fe49417 cdrom_media_changed +EXPORT_SYMBOL vmlinux 0x7feb22ea inode_change_ok +EXPORT_SYMBOL vmlinux 0x800349df xfrm_state_flush +EXPORT_SYMBOL vmlinux 0x8016b2b5 skb_seq_read +EXPORT_SYMBOL vmlinux 0x8024771a input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x802d0e93 crc32_le +EXPORT_SYMBOL vmlinux 0x804f922a ipmi_addr_length +EXPORT_SYMBOL vmlinux 0x8050a32f netlink_unicast +EXPORT_SYMBOL vmlinux 0x805741ef pci_get_device +EXPORT_SYMBOL vmlinux 0x8083ca5a block_write_begin +EXPORT_SYMBOL vmlinux 0x80a0e505 filemap_fault +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80ed8830 scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0x80f8b4cd bio_integrity_get_tag +EXPORT_SYMBOL vmlinux 0x811237e5 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x811751f3 __sk_dst_check +EXPORT_SYMBOL vmlinux 0x813bab52 pci_bus_type +EXPORT_SYMBOL vmlinux 0x814e7730 nf_ct_destroy +EXPORT_SYMBOL vmlinux 0x81533963 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x815add25 tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x815c56d0 cpu_present_mask +EXPORT_SYMBOL vmlinux 0x816736f4 ftrace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x819adc0d pci_choose_state +EXPORT_SYMBOL vmlinux 0x81d10f5f trace_seq_putc +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x820794d3 tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0x820e968e unregister_exec_domain +EXPORT_SYMBOL vmlinux 0x8212721d xenbus_dev_request_and_reply +EXPORT_SYMBOL vmlinux 0x8251bcc3 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x8260686f bitmap_find_next_zero_area +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x8283732b blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0x8290457d nf_log_set +EXPORT_SYMBOL vmlinux 0x8292aac5 pci_request_regions +EXPORT_SYMBOL vmlinux 0x8292aaf4 dma_release_from_coherent +EXPORT_SYMBOL vmlinux 0x82acddbb consume_skb +EXPORT_SYMBOL vmlinux 0x82acfb70 blk_iopoll_sched +EXPORT_SYMBOL vmlinux 0x82ce4c5d __skb_tx_hash +EXPORT_SYMBOL vmlinux 0x82ebfc4a devm_request_and_ioremap +EXPORT_SYMBOL vmlinux 0x82f388d9 __dev_get_by_index +EXPORT_SYMBOL vmlinux 0x8305cc36 genphy_suspend +EXPORT_SYMBOL vmlinux 0x830d34e7 netif_rx +EXPORT_SYMBOL vmlinux 0x8313602f cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0x8374b1b5 sock_i_uid +EXPORT_SYMBOL vmlinux 0x837d8766 pci_reenable_device +EXPORT_SYMBOL vmlinux 0x8380dcb9 pci_request_region +EXPORT_SYMBOL vmlinux 0x8386a73d of_phy_connect +EXPORT_SYMBOL vmlinux 0x83a4607a dma_async_memcpy_pg_to_pg +EXPORT_SYMBOL vmlinux 0x83a476ce bitmap_scnlistprintf +EXPORT_SYMBOL vmlinux 0x83d1b847 posix_lock_file +EXPORT_SYMBOL vmlinux 0x83f10665 __inode_permission +EXPORT_SYMBOL vmlinux 0x83f7cd3e generic_pipe_buf_unmap +EXPORT_SYMBOL vmlinux 0x83fca73a blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x84060081 xen_poll_irq_timeout +EXPORT_SYMBOL vmlinux 0x84069b50 freezing_slow_path +EXPORT_SYMBOL vmlinux 0x841962f8 param_get_ushort +EXPORT_SYMBOL vmlinux 0x841fb631 genphy_resume +EXPORT_SYMBOL vmlinux 0x84323edd ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x8434b6f9 splice_from_pipe_next +EXPORT_SYMBOL vmlinux 0x8441b778 pneigh_lookup +EXPORT_SYMBOL vmlinux 0x844b9902 sock_edemux +EXPORT_SYMBOL vmlinux 0x8461b7ec phy_driver_unregister +EXPORT_SYMBOL vmlinux 0x848c6683 vga_tryget +EXPORT_SYMBOL vmlinux 0x849dc969 tty_vhangup +EXPORT_SYMBOL vmlinux 0x84b8e80e vfs_link +EXPORT_SYMBOL vmlinux 0x84cac273 skb_push +EXPORT_SYMBOL vmlinux 0x84fe223f sk_stream_write_space +EXPORT_SYMBOL vmlinux 0x84ffea8b idr_preload +EXPORT_SYMBOL vmlinux 0x85014d1f do_splice_direct +EXPORT_SYMBOL vmlinux 0x85061b76 _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0x8509c540 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0x8518eca9 param_get_short +EXPORT_SYMBOL vmlinux 0x852368a1 unregister_cdrom +EXPORT_SYMBOL vmlinux 0x8525764e module_refcount +EXPORT_SYMBOL vmlinux 0x8525dc7d netpoll_rx_enable +EXPORT_SYMBOL vmlinux 0x85346982 skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0x853495d0 pci_fixup_device +EXPORT_SYMBOL vmlinux 0x853bf7c1 param_set_int +EXPORT_SYMBOL vmlinux 0x854ef606 mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x85761ed7 try_to_release_page +EXPORT_SYMBOL vmlinux 0x857b2c1c wireless_send_event +EXPORT_SYMBOL vmlinux 0x8584977d sg_miter_stop +EXPORT_SYMBOL vmlinux 0x85b065b0 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x85b46622 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85b9f505 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0x85d08147 find_get_page +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85fa2894 user_path_create +EXPORT_SYMBOL vmlinux 0x8623897f of_find_device_by_node +EXPORT_SYMBOL vmlinux 0x8623c3a3 blk_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x8646fa50 gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x865a3603 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0x866ec4c8 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0x866fd6bd eth_mac_addr +EXPORT_SYMBOL vmlinux 0x86798792 set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0x867ab2cc __skb_checksum +EXPORT_SYMBOL vmlinux 0x867e08bf jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x868f0935 blk_queue_softirq_done +EXPORT_SYMBOL vmlinux 0x86d7dac1 blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0x86ea4d38 complete_all +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x87047a9d write_inode_now +EXPORT_SYMBOL vmlinux 0x8709348e xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0x870bf928 radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x871945e6 free_buffer_head +EXPORT_SYMBOL vmlinux 0x871a4f2f mpage_readpage +EXPORT_SYMBOL vmlinux 0x871c0a7e fiemap_check_flags +EXPORT_SYMBOL vmlinux 0x8737096d cdrom_ioctl +EXPORT_SYMBOL vmlinux 0x8761ddc5 __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x876585e3 input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x8779a34f param_ops_byte +EXPORT_SYMBOL vmlinux 0x877dd164 tcp_disconnect +EXPORT_SYMBOL vmlinux 0x878213dc freeze_bdev +EXPORT_SYMBOL vmlinux 0x878a2740 dev_uc_del +EXPORT_SYMBOL vmlinux 0x878ab3ce sysctl_tcp_adv_win_scale +EXPORT_SYMBOL vmlinux 0x87913443 register_filesystem +EXPORT_SYMBOL vmlinux 0x87ac6b8b __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0x87d5c0d2 pci_request_region_exclusive +EXPORT_SYMBOL vmlinux 0x8809fe9f phy_connect_direct +EXPORT_SYMBOL vmlinux 0x881039d0 zlib_inflate +EXPORT_SYMBOL vmlinux 0x88290ca4 flush_dcache_page +EXPORT_SYMBOL vmlinux 0x8834396c mod_timer +EXPORT_SYMBOL vmlinux 0x88513970 param_set_byte +EXPORT_SYMBOL vmlinux 0x88792733 security_inode_init_security +EXPORT_SYMBOL vmlinux 0x88b4e83b down_trylock +EXPORT_SYMBOL vmlinux 0x88c0632c scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x88c0bcdd filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x88d17abb neigh_destroy +EXPORT_SYMBOL vmlinux 0x88d51e65 mmc_stop_bkops +EXPORT_SYMBOL vmlinux 0x88db3b40 sock_create +EXPORT_SYMBOL vmlinux 0x88ecc2fc clocksource_register +EXPORT_SYMBOL vmlinux 0x894435a7 tcp_child_process +EXPORT_SYMBOL vmlinux 0x89454dc1 vfs_mkdir +EXPORT_SYMBOL vmlinux 0x897473df mktime +EXPORT_SYMBOL vmlinux 0x89afe34e __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0x89c1b74e xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0x89c97fdb netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0x89d5538d fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x89db5659 sock_no_mmap +EXPORT_SYMBOL vmlinux 0x89f70112 sk_filter +EXPORT_SYMBOL vmlinux 0x89feda20 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0x8a18b609 disk_stack_limits +EXPORT_SYMBOL vmlinux 0x8a198e48 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x8a1ab4ee timeval_to_jiffies +EXPORT_SYMBOL vmlinux 0x8a2368d9 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0x8a25c5d9 blk_integrity_is_initialized +EXPORT_SYMBOL vmlinux 0x8a3d670a locks_free_lock +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a51d565 quota_send_warning +EXPORT_SYMBOL vmlinux 0x8a56ae1e pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0x8a5e8cec i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0x8a6af65c kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a7edb8c max8925_bulk_read +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8aa57c4f udp_table +EXPORT_SYMBOL vmlinux 0x8aafe32d vfs_read +EXPORT_SYMBOL vmlinux 0x8ab412bf pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0x8ab5e09b dquot_quota_sync +EXPORT_SYMBOL vmlinux 0x8ad32271 inet6_add_offload +EXPORT_SYMBOL vmlinux 0x8ad73b19 blk_integrity_register +EXPORT_SYMBOL vmlinux 0x8ae216ac __frontswap_store +EXPORT_SYMBOL vmlinux 0x8af89618 tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x8b026d9d pci_iomap +EXPORT_SYMBOL vmlinux 0x8b192c74 scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x8b1a7a66 pcie_aspm_enabled +EXPORT_SYMBOL vmlinux 0x8b35e873 sg_last +EXPORT_SYMBOL vmlinux 0x8b43159b register_cpu_notifier +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8bb4b2b7 pci_dev_driver +EXPORT_SYMBOL vmlinux 0x8bbb49d3 dentry_update_name_case +EXPORT_SYMBOL vmlinux 0x8bbea06b of_phy_attach +EXPORT_SYMBOL vmlinux 0x8bcbd1fe tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x8bd0a3fd _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x8bfcac6e mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0x8bff2452 sk_alloc +EXPORT_SYMBOL vmlinux 0x8c168dde udp_proc_unregister +EXPORT_SYMBOL vmlinux 0x8c183cbe iowrite16 +EXPORT_SYMBOL vmlinux 0x8c1fe23a add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0x8c346e08 ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x8c449611 kernel_write +EXPORT_SYMBOL vmlinux 0x8c4a7681 sync_blockdev +EXPORT_SYMBOL vmlinux 0x8c6136d9 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0x8c637d43 irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x8c8dc66f tcf_generic_walker +EXPORT_SYMBOL vmlinux 0x8c8ee770 ipmi_destroy_user +EXPORT_SYMBOL vmlinux 0x8c958a30 scsi_allocate_command +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8cda8029 xen_clear_irq_pending +EXPORT_SYMBOL vmlinux 0x8d2d53d1 dev_set_mac_address +EXPORT_SYMBOL vmlinux 0x8d2e268b param_ops_ulong +EXPORT_SYMBOL vmlinux 0x8d3bf685 blk_queue_end_tag +EXPORT_SYMBOL vmlinux 0x8d551bef sysctl_tcp_rmem +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d749ac9 devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0x8d873493 input_unregister_device +EXPORT_SYMBOL vmlinux 0x8da18550 pci_dev_put +EXPORT_SYMBOL vmlinux 0x8df92f66 memchr_inv +EXPORT_SYMBOL vmlinux 0x8e019594 bio_endio +EXPORT_SYMBOL vmlinux 0x8e241cd2 dquot_quotactl_ops +EXPORT_SYMBOL vmlinux 0x8e332829 flush_delayed_work +EXPORT_SYMBOL vmlinux 0x8e3dfad3 mfd_add_devices +EXPORT_SYMBOL vmlinux 0x8e4e72c4 fsnotify_alloc_group +EXPORT_SYMBOL vmlinux 0x8e798816 xfrm_register_mode +EXPORT_SYMBOL vmlinux 0x8e864a86 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x8e888ec3 cpumask_next_and +EXPORT_SYMBOL vmlinux 0x8ea33690 __lock_buffer +EXPORT_SYMBOL vmlinux 0x8ea73281 __locks_copy_lock +EXPORT_SYMBOL vmlinux 0x8ebaa876 lg_local_lock_cpu +EXPORT_SYMBOL vmlinux 0x8ee3cb98 request_key_async +EXPORT_SYMBOL vmlinux 0x8f0fb62b scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0x8f1f6f4b inode_init_owner +EXPORT_SYMBOL vmlinux 0x8f2a4d9c poll_initwait +EXPORT_SYMBOL vmlinux 0x8f2bfcbb inode_get_bytes +EXPORT_SYMBOL vmlinux 0x8f3787be panic_notifier_list +EXPORT_SYMBOL vmlinux 0x8f45e9b4 pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0x8fa35635 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0x8fa48241 sleep_on_timeout +EXPORT_SYMBOL vmlinux 0x8faa4598 of_translate_address +EXPORT_SYMBOL vmlinux 0x8fbaadf4 scm_detach_fds +EXPORT_SYMBOL vmlinux 0x8fbbd5eb input_release_device +EXPORT_SYMBOL vmlinux 0x8fbebf64 amba_release_regions +EXPORT_SYMBOL vmlinux 0x8fc4912a blk_queue_io_min +EXPORT_SYMBOL vmlinux 0x8fd17206 pm860x_page_set_bits +EXPORT_SYMBOL vmlinux 0x8fd180e7 kernel_neon_begin +EXPORT_SYMBOL vmlinux 0x8fd93839 mdiobus_scan +EXPORT_SYMBOL vmlinux 0x8ff5833a dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x900725aa inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0x900969f3 twl6040_power +EXPORT_SYMBOL vmlinux 0x900e07c5 blk_mq_end_io +EXPORT_SYMBOL vmlinux 0x9017dfbb blk_run_queue_async +EXPORT_SYMBOL vmlinux 0x901c7643 tty_register_device +EXPORT_SYMBOL vmlinux 0x902133ff genl_notify +EXPORT_SYMBOL vmlinux 0x902488d4 security_path_rename +EXPORT_SYMBOL vmlinux 0x902ab4f9 xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0x902cbe4c audit_log_start +EXPORT_SYMBOL vmlinux 0x904b64e6 d_alloc_pseudo +EXPORT_SYMBOL vmlinux 0x90573730 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0x905b5e32 __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0x9074b158 blk_peek_request +EXPORT_SYMBOL vmlinux 0x908b53ed param_set_short +EXPORT_SYMBOL vmlinux 0x909b3657 i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0x90ac3102 dev_base_lock +EXPORT_SYMBOL vmlinux 0x90b33bb7 __ip_select_ident +EXPORT_SYMBOL vmlinux 0x90e5ea1a fb_blank +EXPORT_SYMBOL vmlinux 0x9119ecb7 try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x911cbe9a __page_symlink +EXPORT_SYMBOL vmlinux 0x91463b1d kstrtos16 +EXPORT_SYMBOL vmlinux 0x915fe97c blkdev_get +EXPORT_SYMBOL vmlinux 0x9166fada strncpy +EXPORT_SYMBOL vmlinux 0x916bbba4 inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0x916f309e dm_get_device +EXPORT_SYMBOL vmlinux 0x91715312 sprintf +EXPORT_SYMBOL vmlinux 0x9179983e fb_show_logo +EXPORT_SYMBOL vmlinux 0x917a72c9 ps2_drain +EXPORT_SYMBOL vmlinux 0x918c6374 mempool_alloc +EXPORT_SYMBOL vmlinux 0x91ac822f vscnprintf +EXPORT_SYMBOL vmlinux 0x91b18bb3 netdev_crit +EXPORT_SYMBOL vmlinux 0x91b7d670 of_find_i2c_device_by_node +EXPORT_SYMBOL vmlinux 0x91ca5f14 inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x91d3681b tcp_close +EXPORT_SYMBOL vmlinux 0x91eb6523 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0x91fc6642 block_write_full_page +EXPORT_SYMBOL vmlinux 0x921de06c of_mdiobus_register +EXPORT_SYMBOL vmlinux 0x921fb13a skb_insert +EXPORT_SYMBOL vmlinux 0x922963a0 page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0x9237e434 __getblk +EXPORT_SYMBOL vmlinux 0x92394da6 dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x923b6de7 __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0x925520d2 blk_start_plug +EXPORT_SYMBOL vmlinux 0x926a4088 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x9274c2d1 skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x9291cd3b memdup_user +EXPORT_SYMBOL vmlinux 0x929c0782 qdisc_destroy +EXPORT_SYMBOL vmlinux 0x929eecac __strncpy_from_user +EXPORT_SYMBOL vmlinux 0x92a9c60c time_to_tm +EXPORT_SYMBOL vmlinux 0x92aab125 input_free_device +EXPORT_SYMBOL vmlinux 0x92ab5ace of_device_alloc +EXPORT_SYMBOL vmlinux 0x92ae29a5 uart_register_driver +EXPORT_SYMBOL vmlinux 0x92d050df iov_pages +EXPORT_SYMBOL vmlinux 0x92e10e72 dev_emerg +EXPORT_SYMBOL vmlinux 0x930d4253 request_key +EXPORT_SYMBOL vmlinux 0x931185e0 tcp_sync_mss +EXPORT_SYMBOL vmlinux 0x93389e21 filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0x933bbc09 blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x93849f8a jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x93988602 scsi_print_command +EXPORT_SYMBOL vmlinux 0x93a594c9 blk_init_queue +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93c8c1d8 kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x93cd097c get_tz_trend +EXPORT_SYMBOL vmlinux 0x93cf5aec blk_end_request_cur +EXPORT_SYMBOL vmlinux 0x93d142f7 seq_open +EXPORT_SYMBOL vmlinux 0x93f276bf zerocopy_sg_from_iovec +EXPORT_SYMBOL vmlinux 0x93f3aa88 alloc_file +EXPORT_SYMBOL vmlinux 0x93fca811 __get_free_pages +EXPORT_SYMBOL vmlinux 0x93fde5a4 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0x9418d301 sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0x946643d4 mddev_congested +EXPORT_SYMBOL vmlinux 0x946a5bf3 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0x947da722 __module_get +EXPORT_SYMBOL vmlinux 0x948fb5ba inet6_del_protocol +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x949b754f mempool_destroy +EXPORT_SYMBOL vmlinux 0x94adcebd clk_add_alias +EXPORT_SYMBOL vmlinux 0x94b541b5 cpu_active_mask +EXPORT_SYMBOL vmlinux 0x94dfecb0 vsc824x_add_skew +EXPORT_SYMBOL vmlinux 0x94fc00e5 dq_data_lock +EXPORT_SYMBOL vmlinux 0x950013f0 shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0x9505d8ef kthread_stop +EXPORT_SYMBOL vmlinux 0x9508f166 param_ops_bint +EXPORT_SYMBOL vmlinux 0x95095695 inet6_bind +EXPORT_SYMBOL vmlinux 0x9510ee96 scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x952e531e dst_release +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x9586b9cb xfrm_input +EXPORT_SYMBOL vmlinux 0x959debac setup_arg_pages +EXPORT_SYMBOL vmlinux 0x95ae4fad twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0x95b87ff3 dev_mc_del +EXPORT_SYMBOL vmlinux 0x95b8b6cc udp_del_offload +EXPORT_SYMBOL vmlinux 0x95cb929c of_find_all_nodes +EXPORT_SYMBOL vmlinux 0x95dec460 arp_xmit +EXPORT_SYMBOL vmlinux 0x95e4c538 mmc_gpio_request_cd +EXPORT_SYMBOL vmlinux 0x95f2faf0 ppp_input_error +EXPORT_SYMBOL vmlinux 0x960b2c86 alloc_mdio_bitbang +EXPORT_SYMBOL vmlinux 0x96220280 _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0x9629428b dev_uc_sync +EXPORT_SYMBOL vmlinux 0x9638272a fsnotify_put_mark +EXPORT_SYMBOL vmlinux 0x96787c6b __invalidate_device +EXPORT_SYMBOL vmlinux 0x968640a3 sock_kfree_s +EXPORT_SYMBOL vmlinux 0x969274cc bio_integrity_prep +EXPORT_SYMBOL vmlinux 0x96b29254 strncasecmp +EXPORT_SYMBOL vmlinux 0x96cbcc81 ipmi_get_version +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x9718be15 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0x972800dd __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0x9729528e pci_vpd_truncate +EXPORT_SYMBOL vmlinux 0x97358428 d_instantiate_no_diralias +EXPORT_SYMBOL vmlinux 0x97399644 pid_task +EXPORT_SYMBOL vmlinux 0x97457bc4 rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0x97547a50 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0x9754ec10 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x97586037 blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0x9782cfa3 max8998_read_reg +EXPORT_SYMBOL vmlinux 0x97868aef __kfifo_alloc +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x97a60e3d param_get_bool +EXPORT_SYMBOL vmlinux 0x97b83430 skb_queue_head +EXPORT_SYMBOL vmlinux 0x97bb1da8 jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0x97f7ba2e contig_page_data +EXPORT_SYMBOL vmlinux 0x97fdbab9 _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x98082893 __copy_to_user +EXPORT_SYMBOL vmlinux 0x9820b644 warn_slowpath_fmt_taint +EXPORT_SYMBOL vmlinux 0x98247443 inet_sendpage +EXPORT_SYMBOL vmlinux 0x9829fc11 __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0x9830fbfe f_setown +EXPORT_SYMBOL vmlinux 0x9849a653 directly_mappable_cdev_bdi +EXPORT_SYMBOL vmlinux 0x984f7c9e tty_hung_up_p +EXPORT_SYMBOL vmlinux 0x985c6aa9 dev_deactivate +EXPORT_SYMBOL vmlinux 0x986e6135 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x9873efff key_alloc +EXPORT_SYMBOL vmlinux 0x987683db inet_recvmsg +EXPORT_SYMBOL vmlinux 0x98847b51 pci_map_rom +EXPORT_SYMBOL vmlinux 0x9885989c elv_rb_add +EXPORT_SYMBOL vmlinux 0x98964a8f dev_get_by_flags_rcu +EXPORT_SYMBOL vmlinux 0x98cf60b3 strlen +EXPORT_SYMBOL vmlinux 0x98dce836 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0x98eea164 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0x98f07274 inet_frags_init +EXPORT_SYMBOL vmlinux 0x98f09b26 generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0x98f360b5 xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x98fa21b0 mod_timer_pinned +EXPORT_SYMBOL vmlinux 0x98ff6c44 set_binfmt +EXPORT_SYMBOL vmlinux 0x99190ace pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x99195078 vsnprintf +EXPORT_SYMBOL vmlinux 0x9919a24a sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0x99222bb1 inet_shutdown +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x99591a7a ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x9969711c pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0x9994c0ca ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99abfaaa i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0x99adb81a tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x99b63d1a blk_start_queue +EXPORT_SYMBOL vmlinux 0x99b7028d padata_register_cpumask_notifier +EXPORT_SYMBOL vmlinux 0x99bfad55 compat_nf_getsockopt +EXPORT_SYMBOL vmlinux 0x99cdc86b sysctl_tcp_reordering +EXPORT_SYMBOL vmlinux 0x99d3a43c dm_table_get_size +EXPORT_SYMBOL vmlinux 0x99e9736c mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x99eebdd3 dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x99f341c0 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0x9a00c04c up_write +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a1fc4b4 jiffies_to_timeval +EXPORT_SYMBOL vmlinux 0x9a908b80 test_and_clear_bit +EXPORT_SYMBOL vmlinux 0x9a976ad2 block_write_end +EXPORT_SYMBOL vmlinux 0x9ac56fe7 of_gpio_simple_xlate +EXPORT_SYMBOL vmlinux 0x9af89f98 memcpy_fromiovec +EXPORT_SYMBOL vmlinux 0x9b016336 inet6_del_offload +EXPORT_SYMBOL vmlinux 0x9b05db4e find_vma +EXPORT_SYMBOL vmlinux 0x9b0706d8 xfrm_register_km +EXPORT_SYMBOL vmlinux 0x9b1b509c max8925_set_bits +EXPORT_SYMBOL vmlinux 0x9b21dd5a freeze_super +EXPORT_SYMBOL vmlinux 0x9b269ba5 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x9b2d24b2 __dquot_transfer +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b388444 get_zeroed_page +EXPORT_SYMBOL vmlinux 0x9b3c090c scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x9b72ae89 skb_unlink +EXPORT_SYMBOL vmlinux 0x9b8b5a9c cfb_fillrect +EXPORT_SYMBOL vmlinux 0x9b9911c1 __frontswap_load +EXPORT_SYMBOL vmlinux 0x9b9e05f9 alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0x9ba7089d argv_split +EXPORT_SYMBOL vmlinux 0x9bb04c59 ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0x9bb2f143 km_policy_notify +EXPORT_SYMBOL vmlinux 0x9bbf43fa __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0x9bc6ef31 add_wait_queue +EXPORT_SYMBOL vmlinux 0x9bd22570 start_tty +EXPORT_SYMBOL vmlinux 0x9bd37554 ihold +EXPORT_SYMBOL vmlinux 0x9be7bde4 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x9c102390 gen_new_estimator +EXPORT_SYMBOL vmlinux 0x9c120b74 locks_remove_posix +EXPORT_SYMBOL vmlinux 0x9c147be6 locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x9c358e69 __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0x9c491f60 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x9c5bc552 finish_wait +EXPORT_SYMBOL vmlinux 0x9c5cfb01 mmc_align_data_size +EXPORT_SYMBOL vmlinux 0x9c7e952b compat_sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x9c8cb637 inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0x9c932dd3 seq_pad +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cabad6b dquot_scan_active +EXPORT_SYMBOL vmlinux 0x9cae8656 inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x9cd5425c unmap_underlying_metadata +EXPORT_SYMBOL vmlinux 0x9ce36d16 simple_transaction_get +EXPORT_SYMBOL vmlinux 0x9cef646c bdi_destroy +EXPORT_SYMBOL vmlinux 0x9cfd56c5 scsi_print_status +EXPORT_SYMBOL vmlinux 0x9d05f6c4 ktime_get_clocktai +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d0efb3c __sb_start_write +EXPORT_SYMBOL vmlinux 0x9d17b865 fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0x9d2dad3a redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0x9d2e3b47 pci_read_vpd +EXPORT_SYMBOL vmlinux 0x9d3958a7 pci_assign_resource +EXPORT_SYMBOL vmlinux 0x9d3aa376 blk_iopoll_init +EXPORT_SYMBOL vmlinux 0x9d5394f6 skb_trim +EXPORT_SYMBOL vmlinux 0x9d605457 tcp_check_req +EXPORT_SYMBOL vmlinux 0x9d67831d pci_pme_active +EXPORT_SYMBOL vmlinux 0x9d6958de simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0x9d86129b mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x9d86247a sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x9d893bee twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0x9d92d129 netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0x9d981848 skb_queue_tail +EXPORT_SYMBOL vmlinux 0x9db1dd03 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0x9dc96047 dqput +EXPORT_SYMBOL vmlinux 0x9dd2fc17 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0x9e05e2e6 fsnotify_get_group +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e18d93e gen_pool_create +EXPORT_SYMBOL vmlinux 0x9e29d580 serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0x9e2f8c90 lz4_decompress_unknownoutputsize +EXPORT_SYMBOL vmlinux 0x9e3067a6 km_query +EXPORT_SYMBOL vmlinux 0x9e44b9b7 of_get_next_available_child +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e7d6bd0 __udelay +EXPORT_SYMBOL vmlinux 0x9e9f1714 __bitmap_andnot +EXPORT_SYMBOL vmlinux 0x9ea0ad49 __sg_free_table +EXPORT_SYMBOL vmlinux 0x9ebd4c04 adjust_resource +EXPORT_SYMBOL vmlinux 0x9ed2eec7 param_set_ushort +EXPORT_SYMBOL vmlinux 0x9ed3574b vfs_getattr +EXPORT_SYMBOL vmlinux 0x9edaf07b sk_stop_timer +EXPORT_SYMBOL vmlinux 0x9eeba2ec igrab +EXPORT_SYMBOL vmlinux 0x9eefccff pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x9ef31e32 __bforget +EXPORT_SYMBOL vmlinux 0x9f013074 insert_inode_locked +EXPORT_SYMBOL vmlinux 0x9f11be7e down_killable +EXPORT_SYMBOL vmlinux 0x9f2602d4 send_sig_info +EXPORT_SYMBOL vmlinux 0x9f2bdaac __bitmap_or +EXPORT_SYMBOL vmlinux 0x9f36eb7c fget +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f513701 skb_kill_datagram +EXPORT_SYMBOL vmlinux 0x9f5a7980 cont_write_begin +EXPORT_SYMBOL vmlinux 0x9f6bc4ca sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x9f6d113d simple_statfs +EXPORT_SYMBOL vmlinux 0x9f8b0772 set_bh_page +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9fdd15fa register_console +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9fe6c4e1 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0x9fea92d9 input_allocate_device +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa01c3d1d phy_scan_fixups +EXPORT_SYMBOL vmlinux 0xa03df990 xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa0450831 key_reject_and_link +EXPORT_SYMBOL vmlinux 0xa0469d1a phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0xa04a01bd qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xa053c00a devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0xa05c03df mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xa062f982 of_device_register +EXPORT_SYMBOL vmlinux 0xa07a37f0 memchr +EXPORT_SYMBOL vmlinux 0xa07ed110 xz_dec_init +EXPORT_SYMBOL vmlinux 0xa08c5d19 tty_mutex +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0ceef51 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0e3fe5f compat_mc_getsockopt +EXPORT_SYMBOL vmlinux 0xa0eae521 rtnl_notify +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa0ff74d6 udp_memory_allocated +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa13567ed i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0xa13cdaed proc_set_size +EXPORT_SYMBOL vmlinux 0xa14f3d8c ewma_add +EXPORT_SYMBOL vmlinux 0xa153b4d6 __serio_register_port +EXPORT_SYMBOL vmlinux 0xa155d947 from_kprojid_munged +EXPORT_SYMBOL vmlinux 0xa1622c5f jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0xa16cb931 ida_remove +EXPORT_SYMBOL vmlinux 0xa1762151 __dev_remove_offload +EXPORT_SYMBOL vmlinux 0xa1902d17 ip_queue_xmit +EXPORT_SYMBOL vmlinux 0xa1b759ce fb_add_videomode +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1d343f7 security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0xa1d8f166 blk_queue_init_tags +EXPORT_SYMBOL vmlinux 0xa1eb1172 __blk_end_request_all +EXPORT_SYMBOL vmlinux 0xa1fdf82f netdev_notify_peers +EXPORT_SYMBOL vmlinux 0xa202a8e5 kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0xa20ce1b8 net_msg_warn +EXPORT_SYMBOL vmlinux 0xa223edca mfd_cell_enable +EXPORT_SYMBOL vmlinux 0xa22702c8 __percpu_counter_init +EXPORT_SYMBOL vmlinux 0xa2280e90 tcp_init_cgroup +EXPORT_SYMBOL vmlinux 0xa2418a5b call_netdevice_notifiers_info +EXPORT_SYMBOL vmlinux 0xa276f3e5 seq_bitmap +EXPORT_SYMBOL vmlinux 0xa27c222e i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0xa2848c50 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0xa286c9be tc_classify_compat +EXPORT_SYMBOL vmlinux 0xa28a2ace ipmi_set_gets_events +EXPORT_SYMBOL vmlinux 0xa2a98b91 ipmi_get_maintenance_mode +EXPORT_SYMBOL vmlinux 0xa2c2befe mpage_readpages +EXPORT_SYMBOL vmlinux 0xa2e687dc block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0xa2ef34d7 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xa2f260ba blk_mq_insert_request +EXPORT_SYMBOL vmlinux 0xa332464a of_get_cpu_node +EXPORT_SYMBOL vmlinux 0xa35de80f ipv4_config +EXPORT_SYMBOL vmlinux 0xa378955c tcp_syn_flood_action +EXPORT_SYMBOL vmlinux 0xa381944f dql_reset +EXPORT_SYMBOL vmlinux 0xa3962455 d_splice_alias +EXPORT_SYMBOL vmlinux 0xa3c327bd skb_clone +EXPORT_SYMBOL vmlinux 0xa3d4ec29 posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0xa3e32e52 jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0xa3e3dca5 nla_append +EXPORT_SYMBOL vmlinux 0xa400159f crc32_be +EXPORT_SYMBOL vmlinux 0xa400de25 registered_fb +EXPORT_SYMBOL vmlinux 0xa41505ea drop_nlink +EXPORT_SYMBOL vmlinux 0xa416ee07 tcf_register_action +EXPORT_SYMBOL vmlinux 0xa43e07cf fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0xa44929db scsi_device_put +EXPORT_SYMBOL vmlinux 0xa4511467 crc16 +EXPORT_SYMBOL vmlinux 0xa45ddf8b dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0xa466e00a dquot_quota_off +EXPORT_SYMBOL vmlinux 0xa46700be bitmap_start_sync +EXPORT_SYMBOL vmlinux 0xa4701e9e timekeeping_inject_offset +EXPORT_SYMBOL vmlinux 0xa47d23d8 input_unregister_handle +EXPORT_SYMBOL vmlinux 0xa47f9994 ilookup +EXPORT_SYMBOL vmlinux 0xa495ef3f d_path +EXPORT_SYMBOL vmlinux 0xa4a86286 dma_alloc_from_coherent +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa50a111e inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0xa536e7d8 ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa557cf68 scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0xa5762c76 __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xa57fd5bf bio_alloc_pages +EXPORT_SYMBOL vmlinux 0xa582b20b mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0xa588ed16 con_copy_unimap +EXPORT_SYMBOL vmlinux 0xa58c3a3e tcp_seq_open +EXPORT_SYMBOL vmlinux 0xa598e29c vesa_modes +EXPORT_SYMBOL vmlinux 0xa599e531 down_read_trylock +EXPORT_SYMBOL vmlinux 0xa59e2279 pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0xa5f3aaa4 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0xa5f61dec generic_write_end +EXPORT_SYMBOL vmlinux 0xa6192e4f register_framebuffer +EXPORT_SYMBOL vmlinux 0xa61d3c7c serio_reconnect +EXPORT_SYMBOL vmlinux 0xa63a2f9b param_get_ulong +EXPORT_SYMBOL vmlinux 0xa63d85ab slhc_remember +EXPORT_SYMBOL vmlinux 0xa6614c5d vlan_untag +EXPORT_SYMBOL vmlinux 0xa670adba icmpv6_send +EXPORT_SYMBOL vmlinux 0xa6715115 do_settimeofday +EXPORT_SYMBOL vmlinux 0xa675804c utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa686c7f0 unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0xa6957f96 pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0xa697be5c genphy_config_aneg +EXPORT_SYMBOL vmlinux 0xa69bccf7 udp_sendmsg +EXPORT_SYMBOL vmlinux 0xa6c31ce8 security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0xa6c5358d compat_sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0xa6c77696 fb_pan_display +EXPORT_SYMBOL vmlinux 0xa6dfb855 __genl_register_family +EXPORT_SYMBOL vmlinux 0xa70da1a3 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0xa71e7463 __first_cpu +EXPORT_SYMBOL vmlinux 0xa735db59 prandom_u32 +EXPORT_SYMBOL vmlinux 0xa73fc98f of_n_addr_cells +EXPORT_SYMBOL vmlinux 0xa757c8a6 get_super_thawed +EXPORT_SYMBOL vmlinux 0xa759bb5a security_path_chown +EXPORT_SYMBOL vmlinux 0xa75caf5c pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0xa762fd37 loop_backing_file +EXPORT_SYMBOL vmlinux 0xa76b301c generic_listxattr +EXPORT_SYMBOL vmlinux 0xa7800660 vfs_setpos +EXPORT_SYMBOL vmlinux 0xa7829b06 blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0xa79ccf86 lookup_bdev +EXPORT_SYMBOL vmlinux 0xa7be526f _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0xa7c013f7 seq_vprintf +EXPORT_SYMBOL vmlinux 0xa7e040b3 n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0xa7edd285 ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0xa8036ae5 twl6040_reg_write +EXPORT_SYMBOL vmlinux 0xa808bcb8 vexpress_config_wait +EXPORT_SYMBOL vmlinux 0xa80bcd48 bdev_stack_limits +EXPORT_SYMBOL vmlinux 0xa81e2247 skb_make_writable +EXPORT_SYMBOL vmlinux 0xa81e82da seq_open_private +EXPORT_SYMBOL vmlinux 0xa8232c78 strtobool +EXPORT_SYMBOL vmlinux 0xa837ea59 lock_sock_fast +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa86da1a2 no_llseek +EXPORT_SYMBOL vmlinux 0xa8721b97 system_state +EXPORT_SYMBOL vmlinux 0xa873a981 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0xa87824f7 pci_release_region +EXPORT_SYMBOL vmlinux 0xa87cf413 clear_bit +EXPORT_SYMBOL vmlinux 0xa8915827 tty_unlock_pair +EXPORT_SYMBOL vmlinux 0xa8980ae5 dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0xa89b2ee8 pcie_get_mps +EXPORT_SYMBOL vmlinux 0xa8a18372 lockref_mark_dead +EXPORT_SYMBOL vmlinux 0xa8a24e5a pci_disable_obff +EXPORT_SYMBOL vmlinux 0xa8a6f639 __check_region +EXPORT_SYMBOL vmlinux 0xa8a8110c kernel_neon_end +EXPORT_SYMBOL vmlinux 0xa8f3b091 mb_cache_create +EXPORT_SYMBOL vmlinux 0xa8fef7bb security_unix_may_send +EXPORT_SYMBOL vmlinux 0xa9063679 phy_driver_register +EXPORT_SYMBOL vmlinux 0xa90dc212 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xa916b694 strnlen +EXPORT_SYMBOL vmlinux 0xa91965cf sock_no_sendpage +EXPORT_SYMBOL vmlinux 0xa9455800 fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0xa94688ea generic_pipe_buf_steal +EXPORT_SYMBOL vmlinux 0xa94695e9 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0xa967684a bio_sector_offset +EXPORT_SYMBOL vmlinux 0xa972de92 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0xa981fa2d iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0xa9870e93 phy_disconnect +EXPORT_SYMBOL vmlinux 0xa98edf4c bh_submit_read +EXPORT_SYMBOL vmlinux 0xa98fd9f2 xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xa997305a sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0xa9a70091 set_page_dirty +EXPORT_SYMBOL vmlinux 0xa9adc8e6 bdget_disk +EXPORT_SYMBOL vmlinux 0xa9b63345 of_parse_phandle_with_fixed_args +EXPORT_SYMBOL vmlinux 0xa9e7c4f2 bdi_register +EXPORT_SYMBOL vmlinux 0xa9f1f212 truncate_pagecache +EXPORT_SYMBOL vmlinux 0xa9fac277 __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0xaa1dc4ba __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xaa31357c redraw_screen +EXPORT_SYMBOL vmlinux 0xaa4adca3 vfs_statfs +EXPORT_SYMBOL vmlinux 0xaa4c9999 __put_cred +EXPORT_SYMBOL vmlinux 0xaa4d62bc tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0xaa6b071a i2c_del_adapter +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa724182 add_disk +EXPORT_SYMBOL vmlinux 0xaa79f6b0 release_sock +EXPORT_SYMBOL vmlinux 0xaa9087c0 param_ops_string +EXPORT_SYMBOL vmlinux 0xaaa71614 vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab060560 bitmap_end_sync +EXPORT_SYMBOL vmlinux 0xab0ba319 pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0xab22d303 get_write_access +EXPORT_SYMBOL vmlinux 0xab2be18f __dquot_free_space +EXPORT_SYMBOL vmlinux 0xab40cca9 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xab4f66c3 truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0xab50ccc4 fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0xab5974fe pci_scan_single_device +EXPORT_SYMBOL vmlinux 0xab600421 probe_irq_off +EXPORT_SYMBOL vmlinux 0xab6bde28 sysctl_max_syn_backlog +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab98ce82 ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0xaba67a9f blk_get_backing_dev_info +EXPORT_SYMBOL vmlinux 0xabb09f45 blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0xabbbd444 _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0xabcaa577 free_anon_bdev +EXPORT_SYMBOL vmlinux 0xabd0c91c rtc_time_to_tm +EXPORT_SYMBOL vmlinux 0xabd7cb33 sget +EXPORT_SYMBOL vmlinux 0xabef6ef4 kfree_put_link +EXPORT_SYMBOL vmlinux 0xabf6217b neigh_for_each +EXPORT_SYMBOL vmlinux 0xac040d62 ida_get_new_above +EXPORT_SYMBOL vmlinux 0xac0b2a60 sync_inode_metadata +EXPORT_SYMBOL vmlinux 0xac0ba8c1 blk_iopoll_disable +EXPORT_SYMBOL vmlinux 0xac19814c ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac2f107b pskb_expand_head +EXPORT_SYMBOL vmlinux 0xac5d2362 gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0xac9d2d83 register_sysctl_table +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacc55c8c tcp_release_cb +EXPORT_SYMBOL vmlinux 0xacc5b5d2 csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0xaccabc6a in4_pton +EXPORT_SYMBOL vmlinux 0xacd50f3d eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0xace7e20f sock_create_lite +EXPORT_SYMBOL vmlinux 0xacecdd55 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xad01744f kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad164875 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xad1f2472 input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0xad3bf71c inet_add_protocol +EXPORT_SYMBOL vmlinux 0xad46dec2 of_count_phandle_with_args +EXPORT_SYMBOL vmlinux 0xad5cf7d5 kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0xad6fa97a skb_append +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xadbaaedd neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0xadd1d839 set_nlink +EXPORT_SYMBOL vmlinux 0xadf0c792 create_empty_buffers +EXPORT_SYMBOL vmlinux 0xae02747e proc_create_data +EXPORT_SYMBOL vmlinux 0xae44ccce generic_file_buffered_write +EXPORT_SYMBOL vmlinux 0xae4a1bda csum_tcpudp_nofold +EXPORT_SYMBOL vmlinux 0xae729e59 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xae8c4d0c set_bit +EXPORT_SYMBOL vmlinux 0xae8f21d4 netlink_kernel_release +EXPORT_SYMBOL vmlinux 0xaebcccfe pipe_unlock +EXPORT_SYMBOL vmlinux 0xaec6bf5f vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0xaed2737e pagecache_write_begin +EXPORT_SYMBOL vmlinux 0xaede20cc jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0xaf0182f5 d_set_d_op +EXPORT_SYMBOL vmlinux 0xaf05b91b of_device_is_available +EXPORT_SYMBOL vmlinux 0xaf1f5f6e skb_copy +EXPORT_SYMBOL vmlinux 0xaf219d48 seq_read +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf5a28ec page_follow_link_light +EXPORT_SYMBOL vmlinux 0xaf64ad0d zlib_deflate +EXPORT_SYMBOL vmlinux 0xaf6ae696 kstrndup +EXPORT_SYMBOL vmlinux 0xaf6b8fb0 get_gendisk +EXPORT_SYMBOL vmlinux 0xaf91d89f __kernel_param_lock +EXPORT_SYMBOL vmlinux 0xaf9d00f2 dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0xafa5717a devm_ioremap +EXPORT_SYMBOL vmlinux 0xafab1a0c tcf_hash_search +EXPORT_SYMBOL vmlinux 0xafad493b param_ops_ushort +EXPORT_SYMBOL vmlinux 0xafad6540 blkdev_fsync +EXPORT_SYMBOL vmlinux 0xafb95a1f register_shrinker +EXPORT_SYMBOL vmlinux 0xb03fd1c3 mmc_start_req +EXPORT_SYMBOL vmlinux 0xb05aa584 mempool_resize +EXPORT_SYMBOL vmlinux 0xb05f88b6 inet_frags_init_net +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb0601a1e mem_cgroup_subsys +EXPORT_SYMBOL vmlinux 0xb07d7806 i2c_del_driver +EXPORT_SYMBOL vmlinux 0xb080fbd1 security_file_permission +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0b7404e stop_tty +EXPORT_SYMBOL vmlinux 0xb0b847ac __bitmap_full +EXPORT_SYMBOL vmlinux 0xb0ce5067 kset_register +EXPORT_SYMBOL vmlinux 0xb0d18949 up_read +EXPORT_SYMBOL vmlinux 0xb0df8c49 blk_start_request +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0e2233f key_validate +EXPORT_SYMBOL vmlinux 0xb0e2ee78 dev_get_drvdata +EXPORT_SYMBOL vmlinux 0xb0ffda2f blk_limits_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xb121390a probe_irq_on +EXPORT_SYMBOL vmlinux 0xb122eff3 seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0xb12a0332 __wait_on_buffer +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb13c804c nobh_write_end +EXPORT_SYMBOL vmlinux 0xb15d4a20 __lock_page +EXPORT_SYMBOL vmlinux 0xb1645a2e sg_free_table +EXPORT_SYMBOL vmlinux 0xb17343a7 tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0xb18a4bf1 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0xb19760c3 bitmap_onto +EXPORT_SYMBOL vmlinux 0xb1b2bdef dev_change_carrier +EXPORT_SYMBOL vmlinux 0xb1b89f58 __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1cf44df fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xb1db9e4e param_get_invbool +EXPORT_SYMBOL vmlinux 0xb1e9e6a7 gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0xb1ee38ec elevator_alloc +EXPORT_SYMBOL vmlinux 0xb2018b1f fb_set_var +EXPORT_SYMBOL vmlinux 0xb2029433 arp_create +EXPORT_SYMBOL vmlinux 0xb205ea34 dm_register_target +EXPORT_SYMBOL vmlinux 0xb2241fa6 elevator_exit +EXPORT_SYMBOL vmlinux 0xb2270605 dump_skip +EXPORT_SYMBOL vmlinux 0xb22a9af0 inet_listen +EXPORT_SYMBOL vmlinux 0xb22c82cc i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0xb232da19 blk_mq_alloc_reserved_request +EXPORT_SYMBOL vmlinux 0xb2370ae0 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0xb25a567c sock_i_ino +EXPORT_SYMBOL vmlinux 0xb25c8a3f vfs_unlink +EXPORT_SYMBOL vmlinux 0xb2682405 utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0xb2686f3e done_path_create +EXPORT_SYMBOL vmlinux 0xb26f3e9c vfs_mknod +EXPORT_SYMBOL vmlinux 0xb28fe181 kernel_sendpage +EXPORT_SYMBOL vmlinux 0xb299877c dev_alert +EXPORT_SYMBOL vmlinux 0xb29b06c8 i2c_add_adapter +EXPORT_SYMBOL vmlinux 0xb2bb1c65 skb_copy_and_csum_datagram_iovec +EXPORT_SYMBOL vmlinux 0xb2be6e92 netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xb2c2b061 replace_mount_options +EXPORT_SYMBOL vmlinux 0xb2c373ee udp_disconnect +EXPORT_SYMBOL vmlinux 0xb2cd7bb3 skb_pull +EXPORT_SYMBOL vmlinux 0xb2ebc4c7 sock_wmalloc +EXPORT_SYMBOL vmlinux 0xb31c3f74 irq_stat +EXPORT_SYMBOL vmlinux 0xb342e546 dst_destroy +EXPORT_SYMBOL vmlinux 0xb3574e12 __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0xb36ad09e bioset_create +EXPORT_SYMBOL vmlinux 0xb37bee52 rename_lock +EXPORT_SYMBOL vmlinux 0xb37da423 elv_rb_del +EXPORT_SYMBOL vmlinux 0xb37e71b6 udp_lib_unhash +EXPORT_SYMBOL vmlinux 0xb389d9d9 write_one_page +EXPORT_SYMBOL vmlinux 0xb39e31e6 mount_nodev +EXPORT_SYMBOL vmlinux 0xb3a2bd51 dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0xb3e614cb ata_port_printk +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb3ff4e81 __register_chrdev +EXPORT_SYMBOL vmlinux 0xb40fa8be genlmsg_put +EXPORT_SYMBOL vmlinux 0xb4152c55 devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb437a808 migrate_page +EXPORT_SYMBOL vmlinux 0xb445a2db pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0xb44be784 lock_rename +EXPORT_SYMBOL vmlinux 0xb4502c42 dmam_declare_coherent_memory +EXPORT_SYMBOL vmlinux 0xb4540c65 udp_proc_register +EXPORT_SYMBOL vmlinux 0xb4670e7d vfs_symlink +EXPORT_SYMBOL vmlinux 0xb4709322 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0xb47189b5 reservation_ww_class +EXPORT_SYMBOL vmlinux 0xb47bc696 vm_stat +EXPORT_SYMBOL vmlinux 0xb48c25dc scsi_target_resume +EXPORT_SYMBOL vmlinux 0xb4c5525c pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0xb4ed30b3 ip_options_compile +EXPORT_SYMBOL vmlinux 0xb50a4090 input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0xb519e8c0 bmap +EXPORT_SYMBOL vmlinux 0xb54533f7 usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xb5463983 tty_unregister_device +EXPORT_SYMBOL vmlinux 0xb55650b5 twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0xb5650996 generic_file_remap_pages +EXPORT_SYMBOL vmlinux 0xb56d311d dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb57ad3c6 pipe_lock +EXPORT_SYMBOL vmlinux 0xb57da420 cdrom_release +EXPORT_SYMBOL vmlinux 0xb57f1985 names_cachep +EXPORT_SYMBOL vmlinux 0xb57f2457 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5b658ef set_create_files_as +EXPORT_SYMBOL vmlinux 0xb5b79cc2 blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0xb5ca1c46 slhc_free +EXPORT_SYMBOL vmlinux 0xb5cd1691 vexpress_config_complete +EXPORT_SYMBOL vmlinux 0xb5d41cc8 scsi_host_get +EXPORT_SYMBOL vmlinux 0xb5d4bf25 md_write_start +EXPORT_SYMBOL vmlinux 0xb5d8a706 tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0xb6062514 pci_scan_bus_parented +EXPORT_SYMBOL vmlinux 0xb61858ba bio_unmap_user +EXPORT_SYMBOL vmlinux 0xb61a3a1e kill_bdev +EXPORT_SYMBOL vmlinux 0xb6244511 sg_init_one +EXPORT_SYMBOL vmlinux 0xb632f6a7 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0xb6394d4b param_set_bint +EXPORT_SYMBOL vmlinux 0xb647da5b devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0xb670bb41 input_set_keycode +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb67975b5 netpoll_print_options +EXPORT_SYMBOL vmlinux 0xb6822a33 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb69f92fc mmc_hw_reset_check +EXPORT_SYMBOL vmlinux 0xb69f9b00 mempool_free +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6b46a7c param_ops_int +EXPORT_SYMBOL vmlinux 0xb6c5a973 scsi_show_result +EXPORT_SYMBOL vmlinux 0xb700ec5f vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0xb703f089 scsi_adjust_queue_depth +EXPORT_SYMBOL vmlinux 0xb70e2708 from_kgid +EXPORT_SYMBOL vmlinux 0xb7159667 nobh_write_begin +EXPORT_SYMBOL vmlinux 0xb71fb74f _raw_read_trylock +EXPORT_SYMBOL vmlinux 0xb7325a9a iov_iter_copy_from_user +EXPORT_SYMBOL vmlinux 0xb75ab21e pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0xb760043c pci_unregister_driver +EXPORT_SYMBOL vmlinux 0xb762ae06 netdev_all_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0xb7660835 read_cache_page_async +EXPORT_SYMBOL vmlinux 0xb77131b1 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0xb774acaf security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0xb7750dc9 md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0xb78e785e i2c_master_recv +EXPORT_SYMBOL vmlinux 0xb7903cbb mmc_read_bkops_status +EXPORT_SYMBOL vmlinux 0xb7a38d5d phy_attach +EXPORT_SYMBOL vmlinux 0xb7c96c86 uart_unregister_driver +EXPORT_SYMBOL vmlinux 0xb7ffdfb1 dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0xb8139702 blk_stop_queue +EXPORT_SYMBOL vmlinux 0xb835b3e4 radix_tree_prev_hole +EXPORT_SYMBOL vmlinux 0xb83e3723 __module_put_and_exit +EXPORT_SYMBOL vmlinux 0xb8441f86 skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0xb8553f7b neigh_seq_next +EXPORT_SYMBOL vmlinux 0xb873a334 setup_new_exec +EXPORT_SYMBOL vmlinux 0xb874b87a __clzsi2 +EXPORT_SYMBOL vmlinux 0xb879479c tcp_enter_memory_pressure +EXPORT_SYMBOL vmlinux 0xb88b0529 nf_log_unset +EXPORT_SYMBOL vmlinux 0xb88e30e7 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0xb8934f2b file_ns_capable +EXPORT_SYMBOL vmlinux 0xb8a1dc96 scsi_ioctl +EXPORT_SYMBOL vmlinux 0xb8c5743b tcp_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xb8c6040a put_disk +EXPORT_SYMBOL vmlinux 0xb8c8ed3e phy_drivers_register +EXPORT_SYMBOL vmlinux 0xb8d73e97 param_set_uint +EXPORT_SYMBOL vmlinux 0xb8ff0da2 netif_receive_skb +EXPORT_SYMBOL vmlinux 0xb9153d40 tty_pair_get_pty +EXPORT_SYMBOL vmlinux 0xb91b7d9d key_type_keyring +EXPORT_SYMBOL vmlinux 0xb926af95 blk_queue_resize_tags +EXPORT_SYMBOL vmlinux 0xb92730ca test_set_page_writeback +EXPORT_SYMBOL vmlinux 0xb92c472f swiotlb_dma_mapping_error +EXPORT_SYMBOL vmlinux 0xb92ea193 register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xb93c4e20 proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0xb96196e8 update_devfreq +EXPORT_SYMBOL vmlinux 0xb9713429 phy_print_status +EXPORT_SYMBOL vmlinux 0xb98a0185 rtc_tm_to_time +EXPORT_SYMBOL vmlinux 0xb99f5296 compat_ip_setsockopt +EXPORT_SYMBOL vmlinux 0xb9a5a79d netif_rx_ni +EXPORT_SYMBOL vmlinux 0xb9aa6802 block_commit_write +EXPORT_SYMBOL vmlinux 0xb9b4e181 alloc_pages_exact_nid +EXPORT_SYMBOL vmlinux 0xb9d5e539 mii_nway_restart +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xb9e92a90 serio_close +EXPORT_SYMBOL vmlinux 0xb9f09ba8 dev_get_by_name +EXPORT_SYMBOL vmlinux 0xb9fb68c6 skb_tx_error +EXPORT_SYMBOL vmlinux 0xb9ff7596 pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0xba0a3768 mmc_cache_ctrl +EXPORT_SYMBOL vmlinux 0xba1b1637 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xba1c3fb3 dev_get_flags +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba4cd36b clear_inode +EXPORT_SYMBOL vmlinux 0xba69d8d4 tcp_gro_receive +EXPORT_SYMBOL vmlinux 0xba73b03b pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0xba81c6b5 vfs_fsync +EXPORT_SYMBOL vmlinux 0xba8e6454 __sb_end_write +EXPORT_SYMBOL vmlinux 0xbaad8b4e security_path_truncate +EXPORT_SYMBOL vmlinux 0xbaae5b28 get_disk +EXPORT_SYMBOL vmlinux 0xbab3d7e3 __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0xbab8a9e2 security_path_chmod +EXPORT_SYMBOL vmlinux 0xbacf17e8 __wait_on_bit +EXPORT_SYMBOL vmlinux 0xbb02de18 sb_set_blocksize +EXPORT_SYMBOL vmlinux 0xbb0af2c0 mb_cache_entry_release +EXPORT_SYMBOL vmlinux 0xbb1414b1 blk_mq_free_single_hw_queue +EXPORT_SYMBOL vmlinux 0xbb189cad disallow_signal +EXPORT_SYMBOL vmlinux 0xbb3faffa mmc_alloc_host +EXPORT_SYMBOL vmlinux 0xbb4f4766 simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0xbb579a7e gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0xbb5d343d xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xbb61f88e tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0xbb713e6d sk_filter_release_rcu +EXPORT_SYMBOL vmlinux 0xbb7a51eb netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0xbb99125c get_default_font +EXPORT_SYMBOL vmlinux 0xbb9a575c scsi_release_buffers +EXPORT_SYMBOL vmlinux 0xbbb1524d inet_del_protocol +EXPORT_SYMBOL vmlinux 0xbbb30615 mmc_can_reset +EXPORT_SYMBOL vmlinux 0xbbbdde98 _dev_info +EXPORT_SYMBOL vmlinux 0xbbbfa189 read_code +EXPORT_SYMBOL vmlinux 0xbbdbed9b ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xbc1b3fd7 i2c_verify_client +EXPORT_SYMBOL vmlinux 0xbc2be1be xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0xbc367a2a pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0xbc3aa8d7 skb_copy_bits +EXPORT_SYMBOL vmlinux 0xbc457c88 elevator_change +EXPORT_SYMBOL vmlinux 0xbc476abb inet_select_addr +EXPORT_SYMBOL vmlinux 0xbc5761f2 genphy_update_link +EXPORT_SYMBOL vmlinux 0xbc625efd tcp_getsockopt +EXPORT_SYMBOL vmlinux 0xbc7baf19 dma_async_memcpy_buf_to_pg +EXPORT_SYMBOL vmlinux 0xbcbdfccc mii_ethtool_sset +EXPORT_SYMBOL vmlinux 0xbcd7d344 fput +EXPORT_SYMBOL vmlinux 0xbcd9a5c7 scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0xbcdedba7 of_get_mac_address +EXPORT_SYMBOL vmlinux 0xbce55000 ipmi_get_smi_info +EXPORT_SYMBOL vmlinux 0xbce9a4fd dmam_alloc_coherent +EXPORT_SYMBOL vmlinux 0xbd0bedaf module_layout +EXPORT_SYMBOL vmlinux 0xbd0d53dc udp_ioctl +EXPORT_SYMBOL vmlinux 0xbd237041 genphy_read_status +EXPORT_SYMBOL vmlinux 0xbd423202 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0xbd462b55 __kfifo_init +EXPORT_SYMBOL vmlinux 0xbd68828b pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0xbd907006 bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0xbd96c85a vexpress_config_write +EXPORT_SYMBOL vmlinux 0xbdab135c i2c_release_client +EXPORT_SYMBOL vmlinux 0xbdb01634 blk_free_tags +EXPORT_SYMBOL vmlinux 0xbdbc13a1 complete +EXPORT_SYMBOL vmlinux 0xbdbf6fb1 netdev_lower_dev_get_private_rcu +EXPORT_SYMBOL vmlinux 0xbdc32d92 ip_route_input_noref +EXPORT_SYMBOL vmlinux 0xbdc3df3f pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0xbdd66545 ipv4_specific +EXPORT_SYMBOL vmlinux 0xbde5a1d6 inode_set_bytes +EXPORT_SYMBOL vmlinux 0xbdfbd272 pcim_pin_device +EXPORT_SYMBOL vmlinux 0xbe109195 inet_getname +EXPORT_SYMBOL vmlinux 0xbe253283 blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0xbe2c0274 add_timer +EXPORT_SYMBOL vmlinux 0xbea09e47 register_md_personality +EXPORT_SYMBOL vmlinux 0xbeaa37a6 net_dma_find_channel +EXPORT_SYMBOL vmlinux 0xbec25473 of_parse_phandle +EXPORT_SYMBOL vmlinux 0xbecb0168 pci_enable_ido +EXPORT_SYMBOL vmlinux 0xbed6cd34 proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbf0feb25 mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0xbf1bb7ae dmam_free_coherent +EXPORT_SYMBOL vmlinux 0xbf260168 mount_pseudo +EXPORT_SYMBOL vmlinux 0xbf3e06a1 fb_firmware_edid +EXPORT_SYMBOL vmlinux 0xbf561fc9 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0xbf7115f3 ip_getsockopt +EXPORT_SYMBOL vmlinux 0xbf7fd2f5 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0xbf8ba54a vprintk +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfc2c934 tty_pair_get_tty +EXPORT_SYMBOL vmlinux 0xbfe4432e bio_add_page +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xc00a72d3 lease_get_mtime +EXPORT_SYMBOL vmlinux 0xc027ddbe clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0xc02cf69b clkdev_drop +EXPORT_SYMBOL vmlinux 0xc04b8b08 scsi_print_sense +EXPORT_SYMBOL vmlinux 0xc06c46cd skb_dequeue +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0c66698 __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xc0c807bd fib_default_rule_add +EXPORT_SYMBOL vmlinux 0xc0d41b77 blk_queue_free_tags +EXPORT_SYMBOL vmlinux 0xc124b915 __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0xc145e3bd mmc_free_host +EXPORT_SYMBOL vmlinux 0xc15d5260 __blk_end_request_cur +EXPORT_SYMBOL vmlinux 0xc1622868 dev_err +EXPORT_SYMBOL vmlinux 0xc16b8441 blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0xc177ed10 sock_from_file +EXPORT_SYMBOL vmlinux 0xc17f6dcc __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xc1a712df sock_no_shutdown +EXPORT_SYMBOL vmlinux 0xc1b29762 input_close_device +EXPORT_SYMBOL vmlinux 0xc1c2dd09 __hw_addr_flush +EXPORT_SYMBOL vmlinux 0xc1c9dbf9 wait_on_sync_kiocb +EXPORT_SYMBOL vmlinux 0xc1ec7e01 dcb_setapp +EXPORT_SYMBOL vmlinux 0xc1ec8121 iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0xc1f51332 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0xc2005ee1 framebuffer_alloc +EXPORT_SYMBOL vmlinux 0xc22094fa tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0xc23a3edf pci_disable_msix +EXPORT_SYMBOL vmlinux 0xc23a9cf9 sock_no_listen +EXPORT_SYMBOL vmlinux 0xc23fc912 uart_get_divisor +EXPORT_SYMBOL vmlinux 0xc23fd681 md_unregister_thread +EXPORT_SYMBOL vmlinux 0xc250a5d6 skb_split +EXPORT_SYMBOL vmlinux 0xc256e762 __bitmap_equal +EXPORT_SYMBOL vmlinux 0xc25dbe7a eth_validate_addr +EXPORT_SYMBOL vmlinux 0xc26a8cb9 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xc28dc23c kblockd_schedule_delayed_work +EXPORT_SYMBOL vmlinux 0xc29bf967 strspn +EXPORT_SYMBOL vmlinux 0xc2b33403 phy_attach_direct +EXPORT_SYMBOL vmlinux 0xc2b8d7c2 generic_shutdown_super +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2f9c045 timespec_to_jiffies +EXPORT_SYMBOL vmlinux 0xc30dbede request_firmware +EXPORT_SYMBOL vmlinux 0xc310b981 strnstr +EXPORT_SYMBOL vmlinux 0xc317a1cf make_kprojid +EXPORT_SYMBOL vmlinux 0xc3329aad blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0xc3a67402 lease_modify +EXPORT_SYMBOL vmlinux 0xc3a7be25 lg_global_lock +EXPORT_SYMBOL vmlinux 0xc3b57845 pci_disable_msi +EXPORT_SYMBOL vmlinux 0xc3e58818 inode_sb_list_lock +EXPORT_SYMBOL vmlinux 0xc4015dc5 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0xc4038295 netpoll_send_skb_on_dev +EXPORT_SYMBOL vmlinux 0xc4092d24 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0xc4181cde tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0xc4224c42 splice_from_pipe_begin +EXPORT_SYMBOL vmlinux 0xc44a0cb2 __frontswap_test +EXPORT_SYMBOL vmlinux 0xc4539e65 jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0xc45644a1 pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0xc4733475 empty_aops +EXPORT_SYMBOL vmlinux 0xc48307db lz4_decompress +EXPORT_SYMBOL vmlinux 0xc48762a4 kobject_init +EXPORT_SYMBOL vmlinux 0xc499ae1e kstrdup +EXPORT_SYMBOL vmlinux 0xc4a0b108 vm_map_ram +EXPORT_SYMBOL vmlinux 0xc4c50961 __memcg_kmem_get_cache +EXPORT_SYMBOL vmlinux 0xc4f3b5fc devm_free_irq +EXPORT_SYMBOL vmlinux 0xc4fa9a16 sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0xc529c286 key_put +EXPORT_SYMBOL vmlinux 0xc535f06d make_kgid +EXPORT_SYMBOL vmlinux 0xc53c9afb amba_device_register +EXPORT_SYMBOL vmlinux 0xc547b0c3 dget_parent +EXPORT_SYMBOL vmlinux 0xc5534d64 ioread16 +EXPORT_SYMBOL vmlinux 0xc55eb646 simple_link +EXPORT_SYMBOL vmlinux 0xc5684f8c i2c_clients_command +EXPORT_SYMBOL vmlinux 0xc57600bf phy_find_first +EXPORT_SYMBOL vmlinux 0xc57c6081 pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0xc589af6a ip6_xmit +EXPORT_SYMBOL vmlinux 0xc589e044 param_set_long +EXPORT_SYMBOL vmlinux 0xc5a0c2ad ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0xc5baee4c mdiobus_unregister +EXPORT_SYMBOL vmlinux 0xc5db9240 tty_unthrottle +EXPORT_SYMBOL vmlinux 0xc5fdef94 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xc61d2ee3 devm_gpio_free +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc6331e11 km_new_mapping +EXPORT_SYMBOL vmlinux 0xc6341977 devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0xc63c68f7 kill_pgrp +EXPORT_SYMBOL vmlinux 0xc665d6d7 of_parse_phandle_with_args +EXPORT_SYMBOL vmlinux 0xc6666285 update_time +EXPORT_SYMBOL vmlinux 0xc666a132 crc_t10dif +EXPORT_SYMBOL vmlinux 0xc668352e compat_sock_get_timestampns +EXPORT_SYMBOL vmlinux 0xc6707a6a kernel_bind +EXPORT_SYMBOL vmlinux 0xc673518e blk_requeue_request +EXPORT_SYMBOL vmlinux 0xc6779180 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0xc67ec3c2 pci_bus_put +EXPORT_SYMBOL vmlinux 0xc6cb465a __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6ce61d2 tty_port_init +EXPORT_SYMBOL vmlinux 0xc6cf3a76 netdev_update_features +EXPORT_SYMBOL vmlinux 0xc6fe2a0d pci_enable_msi_block_auto +EXPORT_SYMBOL vmlinux 0xc70de0e5 of_get_min_tck +EXPORT_SYMBOL vmlinux 0xc71a8f9a netif_napi_del +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc7676559 nla_reserve +EXPORT_SYMBOL vmlinux 0xc768de19 cpu_all_bits +EXPORT_SYMBOL vmlinux 0xc77425d7 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0xc774ea0a sock_recvmsg +EXPORT_SYMBOL vmlinux 0xc7770565 block_page_mkwrite +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a15dff xfrm_init_state +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7e58a7c pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0xc7ebc61a blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0xc7f1ceaf keyring_search +EXPORT_SYMBOL vmlinux 0xc804663d amba_device_unregister +EXPORT_SYMBOL vmlinux 0xc804ef5a __breadahead +EXPORT_SYMBOL vmlinux 0xc8077a57 __scsi_alloc_queue +EXPORT_SYMBOL vmlinux 0xc80a20c3 of_match_device +EXPORT_SYMBOL vmlinux 0xc82c91f7 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0xc8359adc ps2_init +EXPORT_SYMBOL vmlinux 0xc835eccb follow_up +EXPORT_SYMBOL vmlinux 0xc83b4d5b posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc867255c qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc8938ba6 dump_align +EXPORT_SYMBOL vmlinux 0xc897c382 sg_init_table +EXPORT_SYMBOL vmlinux 0xc89abc44 security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0xc89f79d4 percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0xc8a8447e tcp_make_synack +EXPORT_SYMBOL vmlinux 0xc8a85477 find_get_pages_contig +EXPORT_SYMBOL vmlinux 0xc8ae475b pagevec_lookup_tag +EXPORT_SYMBOL vmlinux 0xc8b57c27 autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xc92343fd gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0xc940664a sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0xc94e19f8 mmc_flush_cache +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc978479a xz_dec_run +EXPORT_SYMBOL vmlinux 0xc996d097 del_timer +EXPORT_SYMBOL vmlinux 0xc99dea78 eth_header_parse +EXPORT_SYMBOL vmlinux 0xc9a7e3e7 blk_stack_limits +EXPORT_SYMBOL vmlinux 0xc9b97e25 mnt_set_expiry +EXPORT_SYMBOL vmlinux 0xc9c9a7d8 padata_unregister_cpumask_notifier +EXPORT_SYMBOL vmlinux 0xc9e105c7 follow_down_one +EXPORT_SYMBOL vmlinux 0xca133188 netdev_master_upper_dev_link_private +EXPORT_SYMBOL vmlinux 0xca21cc7f cookie_check_timestamp +EXPORT_SYMBOL vmlinux 0xca54a365 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0xca5ba200 nf_reinject +EXPORT_SYMBOL vmlinux 0xca5dbc50 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xcaa7e28b seq_lseek +EXPORT_SYMBOL vmlinux 0xcaca00c1 pci_clear_mwi +EXPORT_SYMBOL vmlinux 0xcaf86877 key_payload_reserve +EXPORT_SYMBOL vmlinux 0xcb00b313 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb0c5d50 param_get_uint +EXPORT_SYMBOL vmlinux 0xcb128141 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0xcb247f2d bprm_change_interp +EXPORT_SYMBOL vmlinux 0xcb25cb5a kernel_read +EXPORT_SYMBOL vmlinux 0xcb596b91 dev_get_stats +EXPORT_SYMBOL vmlinux 0xcb87cc83 elv_register_queue +EXPORT_SYMBOL vmlinux 0xcb89a352 neigh_table_clear +EXPORT_SYMBOL vmlinux 0xcb98911e devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0xcbb5478b xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0xcbbf0a6f audit_log_task_context +EXPORT_SYMBOL vmlinux 0xcbc73cdf register_key_type +EXPORT_SYMBOL vmlinux 0xcbc9557f unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0xcbe1fddf elv_add_request +EXPORT_SYMBOL vmlinux 0xcbe6ffd1 d_instantiate_unique +EXPORT_SYMBOL vmlinux 0xcbe95ab3 netdev_printk +EXPORT_SYMBOL vmlinux 0xcbff5e68 mempool_create +EXPORT_SYMBOL vmlinux 0xcc0d2237 sk_stream_error +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc37f55c blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0xcc4b84da of_find_node_by_type +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc5dce50 sleep_on +EXPORT_SYMBOL vmlinux 0xcc61e320 gen10g_suspend +EXPORT_SYMBOL vmlinux 0xcc7fa952 local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0xccbffce1 pci_clear_master +EXPORT_SYMBOL vmlinux 0xccc14726 fsync_bdev +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccc92399 ida_simple_remove +EXPORT_SYMBOL vmlinux 0xcd20667a kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd494ab5 pagevec_lookup +EXPORT_SYMBOL vmlinux 0xcd541d7b sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0xcd58fcbf blk_end_request_all +EXPORT_SYMBOL vmlinux 0xcd5f26b0 scsi_prep_state_check +EXPORT_SYMBOL vmlinux 0xcda090e7 __pci_enable_wake +EXPORT_SYMBOL vmlinux 0xcdafe756 __brelse +EXPORT_SYMBOL vmlinux 0xcdbfd194 gen_pool_free +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdd5cb66 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xcde172ac radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0xcdea3b84 __neigh_event_send +EXPORT_SYMBOL vmlinux 0xcdfc08a9 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce3d01b6 inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0xce4e47b6 __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0xce517c57 __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce65defd alloc_buffer_head +EXPORT_SYMBOL vmlinux 0xce6a9244 profile_pc +EXPORT_SYMBOL vmlinux 0xce709d33 generic_make_request +EXPORT_SYMBOL vmlinux 0xceaab4a3 iterate_mounts +EXPORT_SYMBOL vmlinux 0xceb1717d completion_done +EXPORT_SYMBOL vmlinux 0xcee8d4ee pcie_set_mps +EXPORT_SYMBOL vmlinux 0xcef51982 kstrtou16 +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf19f94d set_disk_ro +EXPORT_SYMBOL vmlinux 0xcf303aff kobject_del +EXPORT_SYMBOL vmlinux 0xcf65ffc8 bio_put +EXPORT_SYMBOL vmlinux 0xcf9c50ab rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0xcfba49b4 blk_mq_can_queue +EXPORT_SYMBOL vmlinux 0xcfc051c8 tty_name +EXPORT_SYMBOL vmlinux 0xcfcf05cb neigh_direct_output +EXPORT_SYMBOL vmlinux 0xcfe5b7fa scsi_scan_host +EXPORT_SYMBOL vmlinux 0xcfe789a6 d_lookup +EXPORT_SYMBOL vmlinux 0xd0181f4f __bitmap_xor +EXPORT_SYMBOL vmlinux 0xd01e66ad dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0xd0228b0d genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0xd049af25 kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0xd04b2692 blk_complete_request +EXPORT_SYMBOL vmlinux 0xd06c0f22 down_write_trylock +EXPORT_SYMBOL vmlinux 0xd0720a17 on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xd077f1ec generic_fillattr +EXPORT_SYMBOL vmlinux 0xd081dae0 qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0xd0a10056 unregister_quota_format +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0cb5c67 udp_add_offload +EXPORT_SYMBOL vmlinux 0xd0d42c42 mod_timer_pending +EXPORT_SYMBOL vmlinux 0xd0e617b9 dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0xd0ee38b8 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0xd0f36f0d audit_log_format +EXPORT_SYMBOL vmlinux 0xd0f82194 security_d_instantiate +EXPORT_SYMBOL vmlinux 0xd0fb7cd4 __tasklet_hi_schedule_first +EXPORT_SYMBOL vmlinux 0xd10db9b2 generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0xd11c0dc1 __kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xd124c263 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0xd13820ca fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd193c4a9 block_write_full_page_endio +EXPORT_SYMBOL vmlinux 0xd1a08431 inode_add_rsv_space +EXPORT_SYMBOL vmlinux 0xd1ad7665 netdev_alert +EXPORT_SYMBOL vmlinux 0xd1b0ff2f flush_signals +EXPORT_SYMBOL vmlinux 0xd1bc3406 kernel_setsockopt +EXPORT_SYMBOL vmlinux 0xd1d528fb inode_permission +EXPORT_SYMBOL vmlinux 0xd1dc4d8d bdput +EXPORT_SYMBOL vmlinux 0xd208915d eth_header_cache_update +EXPORT_SYMBOL vmlinux 0xd220cf8a jiffies_to_timespec +EXPORT_SYMBOL vmlinux 0xd23283e2 bdevname +EXPORT_SYMBOL vmlinux 0xd251d7b0 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0xd2555f19 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd25e16e3 remove_wait_queue +EXPORT_SYMBOL vmlinux 0xd267f23d __f_setown +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd28e9800 pci_target_state +EXPORT_SYMBOL vmlinux 0xd291a118 compat_ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0xd29d8cc6 simple_fill_super +EXPORT_SYMBOL vmlinux 0xd2a1f942 elv_abort_queue +EXPORT_SYMBOL vmlinux 0xd2a6946d unregister_filesystem +EXPORT_SYMBOL vmlinux 0xd2b09ce5 __kmalloc +EXPORT_SYMBOL vmlinux 0xd2c2e3b7 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2de5be0 vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0xd3134be4 simple_transaction_release +EXPORT_SYMBOL vmlinux 0xd317ca0d ppp_channel_index +EXPORT_SYMBOL vmlinux 0xd31ccb06 of_machine_is_compatible +EXPORT_SYMBOL vmlinux 0xd3259d65 test_and_set_bit +EXPORT_SYMBOL vmlinux 0xd3341297 dquot_quota_on +EXPORT_SYMBOL vmlinux 0xd339490e vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0xd340a7b2 abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0xd343cbb9 ps2_sendbyte +EXPORT_SYMBOL vmlinux 0xd358b079 tcp_connect +EXPORT_SYMBOL vmlinux 0xd36257ba memcpy_toiovecend +EXPORT_SYMBOL vmlinux 0xd378db86 __sock_create +EXPORT_SYMBOL vmlinux 0xd37dcf97 dquot_acquire +EXPORT_SYMBOL vmlinux 0xd37fc164 ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0xd3a77409 simple_setattr +EXPORT_SYMBOL vmlinux 0xd3acf26e console_start +EXPORT_SYMBOL vmlinux 0xd3ae29a1 dev_addr_add_multiple +EXPORT_SYMBOL vmlinux 0xd3aea17e pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0xd3b12742 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0xd3b95228 netdev_change_features +EXPORT_SYMBOL vmlinux 0xd3cb04a1 inet_put_port +EXPORT_SYMBOL vmlinux 0xd3dcab0b flex_array_alloc +EXPORT_SYMBOL vmlinux 0xd3ec9cf4 scsi_register_interface +EXPORT_SYMBOL vmlinux 0xd3f24723 update_region +EXPORT_SYMBOL vmlinux 0xd3fb9adf pm860x_page_reg_read +EXPORT_SYMBOL vmlinux 0xd3fd2753 PDE_DATA +EXPORT_SYMBOL vmlinux 0xd417fc10 vm_insert_mixed +EXPORT_SYMBOL vmlinux 0xd41fe818 _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xd422a47e skb_orphan_partial +EXPORT_SYMBOL vmlinux 0xd44d4ec5 xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0xd455dd3e tty_set_operations +EXPORT_SYMBOL vmlinux 0xd4646faa __generic_file_aio_write +EXPORT_SYMBOL vmlinux 0xd49cfdd5 get_user_pages +EXPORT_SYMBOL vmlinux 0xd4d7ad31 swiotlb_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0xd4e7aa3d ioremap_cache +EXPORT_SYMBOL vmlinux 0xd50f1ad2 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xd50f53e2 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0xd51529a5 pci_match_id +EXPORT_SYMBOL vmlinux 0xd51a3ee2 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0xd5238de4 __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xd52dcf1a zero_fill_bio +EXPORT_SYMBOL vmlinux 0xd53b6098 tty_devnum +EXPORT_SYMBOL vmlinux 0xd55f4a9f of_mdio_find_bus +EXPORT_SYMBOL vmlinux 0xd569aae7 get_super +EXPORT_SYMBOL vmlinux 0xd57fbd0e qdisc_reset +EXPORT_SYMBOL vmlinux 0xd5942fb4 pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0xd5c8e684 dev_open +EXPORT_SYMBOL vmlinux 0xd5d37482 remove_arg_zero +EXPORT_SYMBOL vmlinux 0xd5f2172f del_timer_sync +EXPORT_SYMBOL vmlinux 0xd600e879 amba_request_regions +EXPORT_SYMBOL vmlinux 0xd616683a ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0xd62c833f schedule_timeout +EXPORT_SYMBOL vmlinux 0xd635ec91 skb_store_bits +EXPORT_SYMBOL vmlinux 0xd648e564 fb_match_mode +EXPORT_SYMBOL vmlinux 0xd65c88a4 find_lock_page +EXPORT_SYMBOL vmlinux 0xd66cface sock_no_bind +EXPORT_SYMBOL vmlinux 0xd683f308 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd68ff4f0 inode_capable +EXPORT_SYMBOL vmlinux 0xd6ad3ff1 tcf_hash_insert +EXPORT_SYMBOL vmlinux 0xd6d31874 inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd70376fa ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0xd7370c44 __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0xd73b85ba ether_setup +EXPORT_SYMBOL vmlinux 0xd73c0082 led_blink_set +EXPORT_SYMBOL vmlinux 0xd74fdbe0 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0xd75c79df smp_call_function +EXPORT_SYMBOL vmlinux 0xd76b8ff0 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0xd77a5aa5 __bitmap_and +EXPORT_SYMBOL vmlinux 0xd77bd6b6 phy_start +EXPORT_SYMBOL vmlinux 0xd79b5a02 allow_signal +EXPORT_SYMBOL vmlinux 0xd7a4acc9 bio_map_user +EXPORT_SYMBOL vmlinux 0xd7ae2361 vexpress_config_bridge_unregister +EXPORT_SYMBOL vmlinux 0xd7cbddda memcpy_toiovec +EXPORT_SYMBOL vmlinux 0xd7d29f61 setattr_copy +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7ea7094 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xd7ed0643 netif_skb_dev_features +EXPORT_SYMBOL vmlinux 0xd854c9e7 invalidate_bdev +EXPORT_SYMBOL vmlinux 0xd8558ee2 shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0xd859e11e writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xd89c9ad0 pci_disable_ltr +EXPORT_SYMBOL vmlinux 0xd8c72cf0 ifla_policy +EXPORT_SYMBOL vmlinux 0xd8cf56d5 touch_atime +EXPORT_SYMBOL vmlinux 0xd8ded085 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xd8e484f0 register_chrdev_region +EXPORT_SYMBOL vmlinux 0xd8fb1ec5 tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0xd92afabe bitmap_clear +EXPORT_SYMBOL vmlinux 0xd92e16ba csum_partial_copy_fromiovecend +EXPORT_SYMBOL vmlinux 0xd93b953f dev_add_pack +EXPORT_SYMBOL vmlinux 0xd9407a4c unregister_binfmt +EXPORT_SYMBOL vmlinux 0xd9468197 proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0xd96b6043 xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xd96f333a tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0xd9794262 __i2c_transfer +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd99ad579 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0xd9a2fbc0 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0xd9a9bb30 getname +EXPORT_SYMBOL vmlinux 0xd9b43688 mii_ethtool_gset +EXPORT_SYMBOL vmlinux 0xd9ca275a uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0xda01479c mempool_create_node +EXPORT_SYMBOL vmlinux 0xda12f748 xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0xda2478d0 param_ops_short +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda408d56 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0xda581441 simple_empty +EXPORT_SYMBOL vmlinux 0xda67c1c8 unregister_qdisc +EXPORT_SYMBOL vmlinux 0xda7ca6cb fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xda8af7ad fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0xdaa16b82 of_clk_get +EXPORT_SYMBOL vmlinux 0xdaae838e dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0xdac64eb0 xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0xdaea6e0d mfd_clone_cell +EXPORT_SYMBOL vmlinux 0xdb0299f6 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0xdb31e1db blk_get_request +EXPORT_SYMBOL vmlinux 0xdb359db0 pci_add_new_bus +EXPORT_SYMBOL vmlinux 0xdb35f1bb fb_get_mode +EXPORT_SYMBOL vmlinux 0xdb47d61d vm_iomap_memory +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb95f2ea eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0xdb9e2ade tcp_recvmsg +EXPORT_SYMBOL vmlinux 0xdbb4822f locks_copy_lock +EXPORT_SYMBOL vmlinux 0xdbc72cf5 netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0xdbcd416e sysctl_ip_nonlocal_bind +EXPORT_SYMBOL vmlinux 0xdbec3730 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0xdbf548bd dev_queue_xmit +EXPORT_SYMBOL vmlinux 0xdbfc90cc sock_no_accept +EXPORT_SYMBOL vmlinux 0xdc034e5d mii_check_gmii_support +EXPORT_SYMBOL vmlinux 0xdc047fc4 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc3c41a8 __crypto_memneq +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc6c3e5b dev_change_flags +EXPORT_SYMBOL vmlinux 0xdc869162 blk_fetch_request +EXPORT_SYMBOL vmlinux 0xdcb764ad memset +EXPORT_SYMBOL vmlinux 0xdcc6a02c bio_flush_dcache_pages +EXPORT_SYMBOL vmlinux 0xdccb6654 swiotlb_map_sg_attrs +EXPORT_SYMBOL vmlinux 0xdcd227d5 kernel_sock_ioctl +EXPORT_SYMBOL vmlinux 0xdce87bd1 scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0xdcf129b4 kmalloc_caches +EXPORT_SYMBOL vmlinux 0xdcf3ea11 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0xdd1b2cf2 serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0xdd474666 tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0xdd66853b task_tgid_nr_ns +EXPORT_SYMBOL vmlinux 0xddcb6600 prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0xddda6a52 of_device_unregister +EXPORT_SYMBOL vmlinux 0xdde6a9ae dquot_release +EXPORT_SYMBOL vmlinux 0xddef21b1 key_unlink +EXPORT_SYMBOL vmlinux 0xddfbea0b nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0xde10eb10 param_set_invbool +EXPORT_SYMBOL vmlinux 0xde2b6d36 cdrom_check_events +EXPORT_SYMBOL vmlinux 0xde351953 netdev_notice +EXPORT_SYMBOL vmlinux 0xde434656 wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0xde46b128 get_fs_type +EXPORT_SYMBOL vmlinux 0xde6151db tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0xde753700 pci_enable_msi_block +EXPORT_SYMBOL vmlinux 0xde82c877 call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0xde9360ba totalram_pages +EXPORT_SYMBOL vmlinux 0xdea2c95a try_to_writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xded7f065 request_firmware_nowait +EXPORT_SYMBOL vmlinux 0xdef4a81c dquot_destroy +EXPORT_SYMBOL vmlinux 0xdf0aaf45 tcp_hashinfo +EXPORT_SYMBOL vmlinux 0xdf0d70da generic_block_fiemap +EXPORT_SYMBOL vmlinux 0xdf23eb55 dquot_file_open +EXPORT_SYMBOL vmlinux 0xdf262819 ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf48a0eb flex_array_put +EXPORT_SYMBOL vmlinux 0xdf4c0149 mdio_bus_type +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf60cc27 __print_symbol +EXPORT_SYMBOL vmlinux 0xdf7191ef __devcgroup_inode_permission +EXPORT_SYMBOL vmlinux 0xdf7cdb90 uart_add_one_port +EXPORT_SYMBOL vmlinux 0xdf8c695a __ndelay +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdfb78b70 serial8250_do_pm +EXPORT_SYMBOL vmlinux 0xdfc5169b slhc_init +EXPORT_SYMBOL vmlinux 0xdfe16134 nf_register_hooks +EXPORT_SYMBOL vmlinux 0xe00001dc pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0xe00987b9 devm_iounmap +EXPORT_SYMBOL vmlinux 0xe00f3cfc remap_pfn_range +EXPORT_SYMBOL vmlinux 0xe01cc219 netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0xe04c649f ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0xe04f7caa dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xe06141e9 security_sk_clone +EXPORT_SYMBOL vmlinux 0xe075d6eb iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xe08b06a6 tcf_hash_lookup +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0f12183 phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0xe0fa83f2 ipmi_register_for_cmd +EXPORT_SYMBOL vmlinux 0xe104fc32 blk_mq_init_commands +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe11b2187 jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0xe11f3cbc _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0xe125a7f3 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0xe1300a2e mutex_unlock +EXPORT_SYMBOL vmlinux 0xe1761617 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xe1a2f252 skb_copy_datagram_from_iovec +EXPORT_SYMBOL vmlinux 0xe1adb5d8 sk_receive_skb +EXPORT_SYMBOL vmlinux 0xe1f93c46 sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0xe200f872 secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xe22ebbcc iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0xe23ad453 generic_delete_inode +EXPORT_SYMBOL vmlinux 0xe23ae481 blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe24d3a97 jiffies_64 +EXPORT_SYMBOL vmlinux 0xe26d8fdb keyring_clear +EXPORT_SYMBOL vmlinux 0xe2708cae __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0xe289e827 lock_sock_nested +EXPORT_SYMBOL vmlinux 0xe29e1d0e out_of_line_wait_on_atomic_t +EXPORT_SYMBOL vmlinux 0xe2ad588a bio_reset +EXPORT_SYMBOL vmlinux 0xe2beaf8b inode_reclaim_rsv_space +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2e36b63 inet6_register_protosw +EXPORT_SYMBOL vmlinux 0xe2e67c8e dev_addr_init +EXPORT_SYMBOL vmlinux 0xe3102b66 i2c_register_driver +EXPORT_SYMBOL vmlinux 0xe31afb33 pci_set_ltr +EXPORT_SYMBOL vmlinux 0xe321fa82 inet_frag_find +EXPORT_SYMBOL vmlinux 0xe3302380 bio_pair_release +EXPORT_SYMBOL vmlinux 0xe34559b2 fsnotify_add_mark +EXPORT_SYMBOL vmlinux 0xe358ef94 cdev_alloc +EXPORT_SYMBOL vmlinux 0xe35c5285 of_find_node_by_phandle +EXPORT_SYMBOL vmlinux 0xe35d01cd __dev_remove_pack +EXPORT_SYMBOL vmlinux 0xe37abe5f dquot_enable +EXPORT_SYMBOL vmlinux 0xe383861a inode_init_once +EXPORT_SYMBOL vmlinux 0xe3a53f4c sort +EXPORT_SYMBOL vmlinux 0xe3be370e devfreq_interval_update +EXPORT_SYMBOL vmlinux 0xe3c0b54a phy_init_eee +EXPORT_SYMBOL vmlinux 0xe3d6a9c5 pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0xe3d6f284 fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xe3dd6b52 udplite_prot +EXPORT_SYMBOL vmlinux 0xe413137c inet_csk_accept +EXPORT_SYMBOL vmlinux 0xe413be4a memcg_socket_limit_enabled +EXPORT_SYMBOL vmlinux 0xe439349f inet_confirm_addr +EXPORT_SYMBOL vmlinux 0xe44c8760 security_path_unlink +EXPORT_SYMBOL vmlinux 0xe4569f8d vm_insert_pfn +EXPORT_SYMBOL vmlinux 0xe484e35f ioread32 +EXPORT_SYMBOL vmlinux 0xe49405ad ida_init +EXPORT_SYMBOL vmlinux 0xe49b6bab dev_get_by_index +EXPORT_SYMBOL vmlinux 0xe4a7adff pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0xe4aca543 seq_puts +EXPORT_SYMBOL vmlinux 0xe4afbca2 md_write_end +EXPORT_SYMBOL vmlinux 0xe4f4665b ipmi_validate_addr +EXPORT_SYMBOL vmlinux 0xe5122890 flow_cache_genid +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe52ed827 ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0xe53d1faa of_translate_dma_address +EXPORT_SYMBOL vmlinux 0xe5529325 bioset_integrity_free +EXPORT_SYMBOL vmlinux 0xe55c647f mmc_remove_host +EXPORT_SYMBOL vmlinux 0xe57361dd __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0xe57878a1 in6_pton +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe5a392b8 blk_mq_free_queue +EXPORT_SYMBOL vmlinux 0xe5ac1c4f neigh_app_ns +EXPORT_SYMBOL vmlinux 0xe5c27cb8 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5c8ed0a register_nls +EXPORT_SYMBOL vmlinux 0xe5d095c9 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0xe5dd5c4a inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0xe5eb7425 tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0xe5ed5467 xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xe61fe60d submit_bio_wait +EXPORT_SYMBOL vmlinux 0xe62d108b rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0xe6433deb mmc_fixup_device +EXPORT_SYMBOL vmlinux 0xe66325c6 pci_set_dma_max_seg_size +EXPORT_SYMBOL vmlinux 0xe66452ab dql_init +EXPORT_SYMBOL vmlinux 0xe67e3908 input_register_handle +EXPORT_SYMBOL vmlinux 0xe697d108 __blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe69a9df4 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0xe6a97d5b pci_find_capability +EXPORT_SYMBOL vmlinux 0xe6ab72a6 ipmi_set_my_LUN +EXPORT_SYMBOL vmlinux 0xe6b9c5ea posix_unblock_lock +EXPORT_SYMBOL vmlinux 0xe6fbe430 can_do_mlock +EXPORT_SYMBOL vmlinux 0xe70bace9 inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xe722d346 generic_file_aio_read +EXPORT_SYMBOL vmlinux 0xe73e5383 ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0xe7428ec0 seq_write +EXPORT_SYMBOL vmlinux 0xe762fc84 mdiobus_read +EXPORT_SYMBOL vmlinux 0xe7722171 flex_array_free +EXPORT_SYMBOL vmlinux 0xe7a19c7e bio_integrity_endio +EXPORT_SYMBOL vmlinux 0xe7a1bb80 compat_mc_setsockopt +EXPORT_SYMBOL vmlinux 0xe7a664c4 nf_hooks +EXPORT_SYMBOL vmlinux 0xe7a69e79 sock_init_data +EXPORT_SYMBOL vmlinux 0xe7a81967 audit_log_secctx +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7d82066 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0xe7e23e87 truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0xe7ed37f3 mem_map +EXPORT_SYMBOL vmlinux 0xe81b591d bio_integrity_trim +EXPORT_SYMBOL vmlinux 0xe8226da4 bio_split +EXPORT_SYMBOL vmlinux 0xe83d1344 simple_write_begin +EXPORT_SYMBOL vmlinux 0xe84f2aba input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0xe8794ce1 slhc_toss +EXPORT_SYMBOL vmlinux 0xe897e3fe unlink_framebuffer +EXPORT_SYMBOL vmlinux 0xe89bd2ef of_phy_connect_fixed_link +EXPORT_SYMBOL vmlinux 0xe8a15aa9 jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0xe8b63ace radix_tree_range_tag_if_tagged +EXPORT_SYMBOL vmlinux 0xe8bea3bc qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xe8c72b73 netif_carrier_off +EXPORT_SYMBOL vmlinux 0xe8d7ccc2 __bread +EXPORT_SYMBOL vmlinux 0xe8e291c7 default_file_splice_read +EXPORT_SYMBOL vmlinux 0xe8f0e62a kobject_set_name +EXPORT_SYMBOL vmlinux 0xe8f9f94c lro_flush_pkt +EXPORT_SYMBOL vmlinux 0xe8fa687b key_task_permission +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe9376c65 mntget +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe96416d6 dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0xe98a560f simple_lookup +EXPORT_SYMBOL vmlinux 0xe99c2dcc devm_gpiod_put +EXPORT_SYMBOL vmlinux 0xe9b21aeb kill_litter_super +EXPORT_SYMBOL vmlinux 0xe9bd3cf2 mapping_tagged +EXPORT_SYMBOL vmlinux 0xe9dc51c9 mem_section +EXPORT_SYMBOL vmlinux 0xe9dd17a0 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0xe9e25e3f lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0xe9ed36e9 set_anon_super +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xea054b22 nla_policy_len +EXPORT_SYMBOL vmlinux 0xea10212a int_to_scsilun +EXPORT_SYMBOL vmlinux 0xea10655a __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xea16dd4c tcp_destroy_cgroup +EXPORT_SYMBOL vmlinux 0xea177bd4 simple_write_end +EXPORT_SYMBOL vmlinux 0xea2ae5ac mntput +EXPORT_SYMBOL vmlinux 0xea4a567e neigh_connected_output +EXPORT_SYMBOL vmlinux 0xea6a8978 blk_queue_merge_bvec +EXPORT_SYMBOL vmlinux 0xea6e3003 of_find_compatible_node +EXPORT_SYMBOL vmlinux 0xea76d5cb idr_init +EXPORT_SYMBOL vmlinux 0xea825d4d tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0xeab974ac may_umount_tree +EXPORT_SYMBOL vmlinux 0xeace2f53 tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0xead78c3a blk_queue_invalidate_tags +EXPORT_SYMBOL vmlinux 0xeae16592 dput +EXPORT_SYMBOL vmlinux 0xeae3dfd6 __const_udelay +EXPORT_SYMBOL vmlinux 0xeaf89b2a neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0xeb28b08d jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0xeb314b01 dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb402ad6 swiotlb_unmap_sg_attrs +EXPORT_SYMBOL vmlinux 0xeb44339a free_pages_exact +EXPORT_SYMBOL vmlinux 0xeb4a27f8 noop_llseek +EXPORT_SYMBOL vmlinux 0xeb4e485c fddi_change_mtu +EXPORT_SYMBOL vmlinux 0xeb71f872 twl6040_set_bits +EXPORT_SYMBOL vmlinux 0xeb8e0ac6 dquot_transfer +EXPORT_SYMBOL vmlinux 0xeb956e41 get_thermal_instance +EXPORT_SYMBOL vmlinux 0xeba3f600 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0xebae37d4 blk_end_request +EXPORT_SYMBOL vmlinux 0xebc66878 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0xebd8fc9e mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xebdbe48c radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0xebf22afc skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0xebf3f66f seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0xec01d669 tcp_proc_register +EXPORT_SYMBOL vmlinux 0xec138258 fail_migrate_page +EXPORT_SYMBOL vmlinux 0xec17ebb0 of_match_node +EXPORT_SYMBOL vmlinux 0xec27f4c7 __ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0xec2edaf6 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0xec399c33 input_open_device +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec4e1b4d __ip_dev_find +EXPORT_SYMBOL vmlinux 0xec521871 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0xec58118a inet_frags_exit_net +EXPORT_SYMBOL vmlinux 0xec679071 blkdev_put +EXPORT_SYMBOL vmlinux 0xec67f67d generic_removexattr +EXPORT_SYMBOL vmlinux 0xec82d0c4 swiotlb_alloc_coherent +EXPORT_SYMBOL vmlinux 0xec874dcd neigh_ifdown +EXPORT_SYMBOL vmlinux 0xec9750d6 secpath_dup +EXPORT_SYMBOL vmlinux 0xec9d7f7c bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0xecc9ccf5 vfs_readv +EXPORT_SYMBOL vmlinux 0xecdf0683 gen_pool_add_virt +EXPORT_SYMBOL vmlinux 0xece5b6cd unregister_framebuffer +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xed0166de ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0xed0dd628 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0xed1a4e89 skb_copy_datagram_iovec +EXPORT_SYMBOL vmlinux 0xed3c2852 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0xed3f424f irq_set_chip +EXPORT_SYMBOL vmlinux 0xed46de4a ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0xed597524 qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xed65764e revert_creds +EXPORT_SYMBOL vmlinux 0xed6853be pci_enable_obff +EXPORT_SYMBOL vmlinux 0xed7b62c1 fb_set_cmap +EXPORT_SYMBOL vmlinux 0xed97a286 backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xed9f9a20 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedefd159 force_sig +EXPORT_SYMBOL vmlinux 0xedf48c6a eth_header +EXPORT_SYMBOL vmlinux 0xedf9cb70 pci_enable_ltr +EXPORT_SYMBOL vmlinux 0xee0289b8 tty_lock +EXPORT_SYMBOL vmlinux 0xee0770b7 pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0xee1baac5 phy_ethtool_gset +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee3490bd pcim_iomap_table +EXPORT_SYMBOL vmlinux 0xee43b816 lg_local_unlock_cpu +EXPORT_SYMBOL vmlinux 0xee4f63ea cap_mmap_file +EXPORT_SYMBOL vmlinux 0xee5bd510 xfrm_cfg_mutex +EXPORT_SYMBOL vmlinux 0xee6cd24c __lru_cache_add +EXPORT_SYMBOL vmlinux 0xee88d822 qdisc_watchdog_schedule_ns +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xeea9dbaf bitmap_bitremap +EXPORT_SYMBOL vmlinux 0xeeba22fa inet_bind +EXPORT_SYMBOL vmlinux 0xeed97817 padata_alloc +EXPORT_SYMBOL vmlinux 0xeee14912 generic_file_aio_write +EXPORT_SYMBOL vmlinux 0xeeec26a7 queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xeef161aa groups_free +EXPORT_SYMBOL vmlinux 0xeef17efe phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0xef185648 sk_release_kernel +EXPORT_SYMBOL vmlinux 0xef2c9cab scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0xef3dbbd8 unregister_shrinker +EXPORT_SYMBOL vmlinux 0xef62b744 pm860x_set_bits +EXPORT_SYMBOL vmlinux 0xef8175aa dquot_drop +EXPORT_SYMBOL vmlinux 0xef8e9641 register_cdrom +EXPORT_SYMBOL vmlinux 0xefa33796 dev_set_group +EXPORT_SYMBOL vmlinux 0xefc35e29 swiotlb_sync_single_for_device +EXPORT_SYMBOL vmlinux 0xefdd70ce security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0xefe11df6 i2c_get_adapter +EXPORT_SYMBOL vmlinux 0xefe26fd1 scsi_host_set_state +EXPORT_SYMBOL vmlinux 0xefe7a99a xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf003a8fd scsi_scan_target +EXPORT_SYMBOL vmlinux 0xf0187927 __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0xf01ed3a7 send_sig +EXPORT_SYMBOL vmlinux 0xf027e09f alloc_fddidev +EXPORT_SYMBOL vmlinux 0xf05ffa15 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0xf0619801 timekeeping_clocktai +EXPORT_SYMBOL vmlinux 0xf065f629 ioread16be +EXPORT_SYMBOL vmlinux 0xf07c37f7 dquot_initialize +EXPORT_SYMBOL vmlinux 0xf087137d __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0xf0871641 neigh_lookup +EXPORT_SYMBOL vmlinux 0xf092fc98 __cleancache_get_page +EXPORT_SYMBOL vmlinux 0xf09de776 get_random_int +EXPORT_SYMBOL vmlinux 0xf0a3044a __neigh_create +EXPORT_SYMBOL vmlinux 0xf0a39cb0 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0xf0a9aa10 kobject_get +EXPORT_SYMBOL vmlinux 0xf0aec036 devm_ioremap_nocache +EXPORT_SYMBOL vmlinux 0xf0b349ed interruptible_sleep_on_timeout +EXPORT_SYMBOL vmlinux 0xf0c52758 xfrm_prepare_input +EXPORT_SYMBOL vmlinux 0xf0c80fc2 dma_pool_create +EXPORT_SYMBOL vmlinux 0xf0eda997 serio_rescan +EXPORT_SYMBOL vmlinux 0xf0ef15b4 list_sort +EXPORT_SYMBOL vmlinux 0xf0f1246c kvasprintf +EXPORT_SYMBOL vmlinux 0xf100416a remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xf10de535 ioread8 +EXPORT_SYMBOL vmlinux 0xf124faec abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0xf12596a9 aio_complete +EXPORT_SYMBOL vmlinux 0xf129f561 register_quota_format +EXPORT_SYMBOL vmlinux 0xf13feb57 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0xf14389e3 sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0xf147dcb2 hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0xf1517371 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0xf180805c netdev_features_change +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1c75a76 flush_old_exec +EXPORT_SYMBOL vmlinux 0xf1c784f1 vfs_write +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1f48a0b blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0xf202c5cb radix_tree_insert +EXPORT_SYMBOL vmlinux 0xf20dabd8 free_irq +EXPORT_SYMBOL vmlinux 0xf20e92cf blk_mq_run_queues +EXPORT_SYMBOL vmlinux 0xf2311717 tcp_poll +EXPORT_SYMBOL vmlinux 0xf23c33a4 textsearch_prepare +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf2404c7d jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0xf253623c nf_log_packet +EXPORT_SYMBOL vmlinux 0xf2576cb9 ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL vmlinux 0xf25ad4b0 icmp_send +EXPORT_SYMBOL vmlinux 0xf2636752 splice_from_pipe_end +EXPORT_SYMBOL vmlinux 0xf2724ecd tcp_prequeue +EXPORT_SYMBOL vmlinux 0xf2767aa5 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0xf2997713 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0xf2a0459d lg_local_lock +EXPORT_SYMBOL vmlinux 0xf2a0af8f backlight_device_registered +EXPORT_SYMBOL vmlinux 0xf2b1ac8e __getnstimeofday +EXPORT_SYMBOL vmlinux 0xf2b249f4 free_user_ns +EXPORT_SYMBOL vmlinux 0xf2b413c6 mmc_gpio_free_cd +EXPORT_SYMBOL vmlinux 0xf2eeb6b4 __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0xf313da4e sha_transform +EXPORT_SYMBOL vmlinux 0xf31954b7 single_open_size +EXPORT_SYMBOL vmlinux 0xf322977e dma_find_channel +EXPORT_SYMBOL vmlinux 0xf3269a76 netdev_err +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf369e51a abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0xf379723e pcie_port_service_register +EXPORT_SYMBOL vmlinux 0xf37bc743 dev_alloc_name +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf396cd21 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0xf3a11591 xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0xf3a426a4 wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0xf3aaa38e interruptible_sleep_on +EXPORT_SYMBOL vmlinux 0xf3b5a910 d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0xf3bf0bce __bitmap_complement +EXPORT_SYMBOL vmlinux 0xf3d41bde vlan_uses_dev +EXPORT_SYMBOL vmlinux 0xf3d471a6 input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0xf3f8262c input_set_capability +EXPORT_SYMBOL vmlinux 0xf40d9671 __xfrm_init_state +EXPORT_SYMBOL vmlinux 0xf4170791 pm860x_page_bulk_write +EXPORT_SYMBOL vmlinux 0xf441ac43 ioread8_rep +EXPORT_SYMBOL vmlinux 0xf44869af mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0xf455f10d napi_get_frags +EXPORT_SYMBOL vmlinux 0xf462be82 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0xf4692b9d sk_reset_timer +EXPORT_SYMBOL vmlinux 0xf47428be scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0xf4753fd7 amba_driver_unregister +EXPORT_SYMBOL vmlinux 0xf4785066 make_bad_inode +EXPORT_SYMBOL vmlinux 0xf4835f92 wait_for_completion_io +EXPORT_SYMBOL vmlinux 0xf4a8b717 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4d2caeb mark_info_dirty +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf512e629 netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0xf536e45d build_skb +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf53e051f input_event +EXPORT_SYMBOL vmlinux 0xf545d23c dev_activate +EXPORT_SYMBOL vmlinux 0xf5699331 jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0xf57fcf94 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xf58be46d jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0xf5a00f4b alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0xf5b5d57e dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0xf5e4b276 __vexpress_config_func_get +EXPORT_SYMBOL vmlinux 0xf5eb86ea blk_verify_command +EXPORT_SYMBOL vmlinux 0xf6388c56 sysctl_ip_default_ttl +EXPORT_SYMBOL vmlinux 0xf64ed029 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf68687be __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xf6882f32 tcf_action_exec +EXPORT_SYMBOL vmlinux 0xf691b207 blk_alloc_queue_node +EXPORT_SYMBOL vmlinux 0xf6bb4729 color_table +EXPORT_SYMBOL vmlinux 0xf6bc113f jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6f0ffed _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0xf741c793 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf77072d4 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0xf77555cd __memcpy_toio +EXPORT_SYMBOL vmlinux 0xf7905e31 scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0xf7aa4f59 nf_unregister_hook +EXPORT_SYMBOL vmlinux 0xf7b545d2 __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0xf7cad405 netpoll_parse_options +EXPORT_SYMBOL vmlinux 0xf7d034c2 mmc_can_discard +EXPORT_SYMBOL vmlinux 0xf803fe39 bitmap_set +EXPORT_SYMBOL vmlinux 0xf80de9ff hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf812cff6 memscan +EXPORT_SYMBOL vmlinux 0xf82198e2 bio_uncopy_user +EXPORT_SYMBOL vmlinux 0xf827cb83 free_reserved_area +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf830bca9 pci_set_mwi +EXPORT_SYMBOL vmlinux 0xf86c49f7 blk_init_tags +EXPORT_SYMBOL vmlinux 0xf8e269f8 skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0xf8e398fc memstart_addr +EXPORT_SYMBOL vmlinux 0xf907a598 blk_queue_dma_pad +EXPORT_SYMBOL vmlinux 0xf927d0bf inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0xf940a328 __next_cpu +EXPORT_SYMBOL vmlinux 0xf95387f3 path_get +EXPORT_SYMBOL vmlinux 0xf956c339 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0xf95f1fdf lookup_one_len +EXPORT_SYMBOL vmlinux 0xf96c2c23 con_is_bound +EXPORT_SYMBOL vmlinux 0xf98ed8d0 scsi_print_result +EXPORT_SYMBOL vmlinux 0xf98f74e8 jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0xf99ac33b ip_cmsg_recv +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9a77f30 generic_block_bmap +EXPORT_SYMBOL vmlinux 0xf9be2ac6 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0xf9c0b663 strlcat +EXPORT_SYMBOL vmlinux 0xf9d6b572 da903x_query_status +EXPORT_SYMBOL vmlinux 0xf9dde891 wait_for_completion +EXPORT_SYMBOL vmlinux 0xf9ed9697 pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0xfa13bc3a drop_super +EXPORT_SYMBOL vmlinux 0xfa3e448f vfs_writev +EXPORT_SYMBOL vmlinux 0xfa581092 inet_stream_connect +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa7f3156 wl12xx_get_platform_data +EXPORT_SYMBOL vmlinux 0xfa82084b dm_io +EXPORT_SYMBOL vmlinux 0xfa85c5a6 netdev_state_change +EXPORT_SYMBOL vmlinux 0xfa911294 pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0xfa956792 __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0xfaadd355 ppp_input +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfae67b1f cap_mmap_addr +EXPORT_SYMBOL vmlinux 0xfae6a210 try_module_get +EXPORT_SYMBOL vmlinux 0xfaf67132 pci_disable_link_state +EXPORT_SYMBOL vmlinux 0xfaf98462 bitrev32 +EXPORT_SYMBOL vmlinux 0xfb0e15f8 uart_suspend_port +EXPORT_SYMBOL vmlinux 0xfb2b2276 __netif_schedule +EXPORT_SYMBOL vmlinux 0xfb306720 input_reset_device +EXPORT_SYMBOL vmlinux 0xfb3997e5 bdev_read_only +EXPORT_SYMBOL vmlinux 0xfb43781f blk_bio_map_sg +EXPORT_SYMBOL vmlinux 0xfb5c1ecd mnt_unpin +EXPORT_SYMBOL vmlinux 0xfb5ddce8 kernel_getsockname +EXPORT_SYMBOL vmlinux 0xfb664dbc __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb8a342e __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0xfb94103e __clzdi2 +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbc49b5c del_gendisk +EXPORT_SYMBOL vmlinux 0xfc0036d2 dquot_resume +EXPORT_SYMBOL vmlinux 0xfc02b7ad sysctl_tcp_wmem +EXPORT_SYMBOL vmlinux 0xfc2d3c93 dev_mc_init +EXPORT_SYMBOL vmlinux 0xfc3345f5 skb_queue_purge +EXPORT_SYMBOL vmlinux 0xfc38aac2 blk_queue_unprep_rq +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc3a3fb0 mnt_pin +EXPORT_SYMBOL vmlinux 0xfc3aff4a mii_link_ok +EXPORT_SYMBOL vmlinux 0xfc4b6d0a __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0xfc52047f __wake_up_bit +EXPORT_SYMBOL vmlinux 0xfc621bbe mpage_writepages +EXPORT_SYMBOL vmlinux 0xfcaa04a0 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xfcb77cfd ipmi_free_recv_msg +EXPORT_SYMBOL vmlinux 0xfcb926cd kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xfcc2a43c utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0xfcdb15e8 kill_pid +EXPORT_SYMBOL vmlinux 0xfcde06f9 writeback_in_progress +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfcf2425d dma_ops +EXPORT_SYMBOL vmlinux 0xfcfa03ff fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0xfd161ec1 unlock_rename +EXPORT_SYMBOL vmlinux 0xfd27ed3c pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0xfd28ab15 security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0xfd297823 security_task_getsecid +EXPORT_SYMBOL vmlinux 0xfd2c0c5e buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0xfd4240dc lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0xfd6293c2 boot_tvec_bases +EXPORT_SYMBOL vmlinux 0xfd99623a ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xfda0dbe8 ftrace_print_hex_seq +EXPORT_SYMBOL vmlinux 0xfda3f9b8 vfs_open +EXPORT_SYMBOL vmlinux 0xfdb9b629 ioread32be +EXPORT_SYMBOL vmlinux 0xfdbe0288 pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0xfdc03a1a clocksource_change_rating +EXPORT_SYMBOL vmlinux 0xfdfa7574 dev_close +EXPORT_SYMBOL vmlinux 0xfdfc0b3b fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe3e107e inode_needs_sync +EXPORT_SYMBOL vmlinux 0xfe3e4e4f tcf_hash_new_index +EXPORT_SYMBOL vmlinux 0xfe421131 check_disk_change +EXPORT_SYMBOL vmlinux 0xfe4bd7a8 posix_lock_file_wait +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe7c4287 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0xfe8b6633 pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0xfed7a159 vm_event_states +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfeebc7c4 __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0xfef96e23 __scsi_print_command +EXPORT_SYMBOL vmlinux 0xff16e002 security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0xff17efd7 vfs_rename +EXPORT_SYMBOL vmlinux 0xff1bda3d security_path_mkdir +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff6342a2 rtnl_create_link +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff71b7dc neigh_table_init +EXPORT_SYMBOL vmlinux 0xff7559e4 ioport_resource +EXPORT_SYMBOL vmlinux 0xff88b706 xfrm4_rcv +EXPORT_SYMBOL vmlinux 0xff8bcfc1 sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0xff9c4d7b __pagevec_release +EXPORT_SYMBOL vmlinux 0xff9ca065 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0xff9fd2ed vfs_rmdir +EXPORT_SYMBOL vmlinux 0xffc58ffb tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0xffd5a395 default_wake_function +EXPORT_SYMBOL vmlinux 0xffd5d64d sock_wfree +EXPORT_SYMBOL vmlinux 0xffdf8b8b fb_class +EXPORT_SYMBOL vmlinux 0xfff63316 __cleancache_put_page +EXPORT_SYMBOL_GPL crypto/af_alg 0x01f8c74c af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x19b70b52 af_alg_complete +EXPORT_SYMBOL_GPL crypto/af_alg 0x1d163e83 af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x1fe2edec af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0x289197b2 af_alg_cmsg_send +EXPORT_SYMBOL_GPL crypto/af_alg 0x76cd9d1f af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xcb39de78 af_alg_wait_for_completion +EXPORT_SYMBOL_GPL crypto/af_alg 0xee02f14e af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0xfe9e364f af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x9cef41dd async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x1f01336b async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x76a24375 async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xb78ece07 async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xd139547d async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x55eda80b async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x5f89da67 async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xac1b4909 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xba27a673 __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x1aa8a329 async_xor_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xdad45523 async_xor +EXPORT_SYMBOL_GPL crypto/authenc 0x587ef278 crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0xe4be1c2c blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x27278ca9 __cast5_encrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x4a2a3ca6 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0xd82f0eeb cast5_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1291971c __cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1e2c961f __cast6_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x7b119fde cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x8f04034a __cast6_encrypt +EXPORT_SYMBOL_GPL crypto/cast_common 0x08aa6fb7 cast_s1 +EXPORT_SYMBOL_GPL crypto/cast_common 0x0c5fbf8a cast_s3 +EXPORT_SYMBOL_GPL crypto/cast_common 0xe39dd4b4 cast_s2 +EXPORT_SYMBOL_GPL crypto/cast_common 0xee83a4f3 cast_s4 +EXPORT_SYMBOL_GPL crypto/cryptd 0x4e74c3e9 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x7c08fd47 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0x8925f3b7 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x98cf25d4 cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xa50601f1 cryptd_free_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0xc0d6b728 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xc4ac348d cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xc882e90a cryptd_alloc_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0xdacb96e0 cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xddde4486 cryptd_ablkcipher_child +EXPORT_SYMBOL_GPL crypto/des_generic 0xcfd9a2c0 des_ekey +EXPORT_SYMBOL_GPL crypto/lrw 0x3864eb66 lrw_free_table +EXPORT_SYMBOL_GPL crypto/lrw 0xcd074900 lrw_init_table +EXPORT_SYMBOL_GPL crypto/lrw 0xf061e100 lrw_crypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x5ddb33e9 __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x77b39cb4 __serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x81f8a585 serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x8a1a99ad __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/twofish_common 0x6c3229bb __twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0xd32a95fe twofish_setkey +EXPORT_SYMBOL_GPL crypto/xts 0x6338ebb4 xts_crypt +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x10eca4c2 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x25c17b70 ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x2973dd4c ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x7ae1f5d6 ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x879207e1 ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xbd8cd36d ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xfedd879c ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x14f82290 ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x150bb266 ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x1a046939 ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x426486ff ahci_shost_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x4c2d5731 ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5eacba1f ahci_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x694f923e ahci_thread_fn +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6e05c4e7 ahci_hw_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x7119240f ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x7d827294 ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8d0b1f1e ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x95289f8a ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa81b4827 ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xaad3e8a9 ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xac9b7dc4 ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xb54c3ad6 ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xb8068c8d ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xbdf998b5 ahci_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xcdf24825 ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xe32d2780 ahci_sdev_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xf51daadd ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xf58735c7 ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xf9385823 ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0xad7c1aef __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x01c8e840 bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x082435db bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0dd89a43 bcma_core_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2c20779e bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2f09d8ca bcma_core_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x31f19d62 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x33a579de bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x4a36b070 bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x58922dfe bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x5cb585c7 bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x5d6340d0 bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x70b2412e bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x76b0c131 bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8a3de41c bcma_core_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8cad45c5 bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb4f6d066 bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xbe7b3d02 bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xca0fadc4 bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd47fb047 __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xdc3947bb bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe7603980 bcma_find_core +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf3bcdf48 bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf8156884 bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x159f2c4e btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x1cec2f8d btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x5f08cb2d btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x64160779 btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x6583b11c btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x810fc59b btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x910ca186 btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xa7535413 btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xd3f6f36e btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xe6bdba4d btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x230bac90 dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xc0c2f608 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xecddd12f dw_dma_shutdown +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xf4ade51f fw_card_release +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x13d67d0d bgpio_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0xb005e670 bgpio_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x178d89d1 __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0xb7a3b4b2 __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x9c3748c1 drm_vm_open_locked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xbf1c5a96 drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xe4591cb5 drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x1aef0c8f ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x6adf436b ttm_prime_fd_to_handle +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x77c4077e ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xb6f479d0 ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xce36343e ttm_prime_handle_to_fd +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0d27e16e hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0x24ccb09d hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2ec63a26 hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x36d747cb hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x47cb6f66 hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4906a967 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4b44288c hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5549640e hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5b116113 hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5c77e78f hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5e181240 hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7a0ac8b3 hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8098324a hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8420e3fe hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8ff52883 hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x91e624b8 hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x92be6217 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x95bb4ea4 hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9b6d5ac0 hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa38e6598 hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xab7658aa hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xba247c29 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbd2ec5ef hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbdc92b36 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbe0c6028 hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbfe0079e hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc52b0081 hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc76b019d hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc9aec410 hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd1e13bf2 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xdb7db066 hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xdc6d45c6 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0xec44d781 hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf4bbe96f hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf514d98e hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x1648287f sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x3188580e sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x63530541 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x82b3e563 sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x85c242ae sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x86446639 sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xb7ad4cca sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xf0ec7d35 sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x0f422637 hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x17514079 hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x1bb188e0 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x20171f84 hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x4a1f94e1 hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x4f3a2cdc hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x6d6e3a81 hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x75bc70fc hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x7acfc65f hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x7e76639b hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x8153c5d9 hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x891ebb71 hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xc6fbe14d hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x91213c3e adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xb5ccc280 adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x0ad2f434 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x23d8d799 pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x42262282 pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x5b41a2a5 pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x7bb5a43b pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x867b590b pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x9107ac07 pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x976fe525 pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xcacf0170 pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xdd9eb587 pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xe28d3493 pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xf3cfd54f pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x16d92d5c i2c_dw_clear_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x230d59e8 i2c_dw_is_enabled +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x4f8a44a8 i2c_dw_xfer +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5bb1170b i2c_dw_isr +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x68101395 i2c_dw_disable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x99dce713 i2c_dw_read_comp_param +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x9ca402ff i2c_dw_disable_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xc0051e93 i2c_dw_func +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xc3677815 i2c_dw_enable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xf17b6d45 i2c_dw_init +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x8cbcfafb i2c_add_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xa8131da5 i2c_del_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x5b36bec2 i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xa703d246 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x076eb122 ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x648fdd19 ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x6fc49b0b ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x76b265b1 ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x8548c421 ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xadeb5133 ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xbe22e713 ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xdd7462fa ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xff5f9f6b ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x18059595 adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x2ca03dea adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x37369e32 adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x555ac25f adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x6d6cc96b adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x82693f7c adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x87b2436b adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x8b43fed7 adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x8eecf067 adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xb6be9822 adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xdc5431b9 adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xf8504e89 adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0d046023 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0dfef739 iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0f093f35 iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x250f3b90 iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x267c0508 iio_channel_release_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26966f4e iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x273b2c2d iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2a1fab3c iio_channel_stop_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2aaaaa28 devm_iio_trigger_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3369d795 iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x381c3011 iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x54279984 iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5b182934 iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5d8ede7a iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x74e39447 iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x868d535e iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x87e5b187 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8d4c3a62 iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8e9916bd iio_scan_mask_query +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x93a5d975 iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9d0ef483 iio_scan_mask_set +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9d8c8a91 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa738e3fa iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xaacee0aa devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xac2f70c4 devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xaf4bce7b devm_iio_device_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xaf6107e7 iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb23ef089 iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xbc3a2b7e iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd42c55aa iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf2ce6cdc iio_update_demux +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf5743383 iio_buffer_get +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0x63f664b8 input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0x751770aa matrix_keypad_parse_of_params +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xd091bee1 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x35d0a0c6 cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x37c35455 cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x6927261e cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x7fefb09c cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x84a10c74 cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xdad3c541 cyttsp_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x3cbb2f39 cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x7b5c73ed cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x0d05dddc ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x1c03489b ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x3d91d581 ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x45a8d508 ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x579ffb0a ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x7165e51f ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x7a90d75f ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xb7198330 ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xc724e656 ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0x23359aff unregister_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0xce1414b2 register_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x04fa422f gigaset_if_receive +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x15f9b392 gigaset_freecs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x1c6115ee gigaset_skb_sent +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x23c76cd1 gigaset_initdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x26da44c8 gigaset_start +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x27a288fe gigaset_add_event +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x330ca71d gigaset_handle_modem_response +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x454aa44f gigaset_debuglevel +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x4bcf29e4 gigaset_isdn_rcv_err +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x59791a58 gigaset_m10x_send_skb +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x6454c3f0 gigaset_blockdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x7027ef6b gigaset_shutdown +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xa3151853 gigaset_dbg_buffer +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xb9b93d6e gigaset_stop +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xd4a23ab1 gigaset_freedriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xe21c65b9 gigaset_skb_rcvd +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xe83333d8 gigaset_fill_inbuf +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xe8759f04 gigaset_initcs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xfba73f88 gigaset_m10x_input +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x10d62fd1 lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x2da9594b lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x358aa530 lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x5750e7ba lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x675aa0fe lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x84226050 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x8f1f2b44 lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xb5d07873 lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xbe851e93 lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xf6ea7ce2 lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xfac36eb1 lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x749e05f2 ledtrig_flash_ctrl +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x7903e46e ledtrig_torch_ctrl +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x038d4400 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1bf19a28 __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x20b0dcba __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x23a39c93 __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2db90065 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x32a854e2 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x33685aee __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x386e0aec __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x43f797c7 __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x56d844d9 __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x65c69d18 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6f318137 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x73856a24 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7c7a26dc __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x824f349d __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x8531a000 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x86192e50 __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x87a79df0 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x8f336079 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x90293fb5 __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x903dcb57 __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x94c4008d __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x9aacde96 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa9328730 __tracepoint_bcache_alloc_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb0f4bf93 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd2be2929 __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd9cf1106 __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xdb00ad98 __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe7e528bd __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf2037566 __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfd1d6dbc __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x1c1e94f6 dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2efa9a65 dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x688760ca dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb6d5c65d dm_deferred_set_add_work +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb70b342a dm_bio_prison_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xc4aa0ca7 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xce7393b2 dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xdb26e896 dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xe1f250ae dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xebd06eaf dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6aba7f5e dm_bufio_get_block_number +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9310ba06 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9c256008 dm_bufio_get_device_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa1d2413a dm_bufio_read +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa448e19f dm_bufio_prefetch +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa82b2066 dm_bufio_write_dirty_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xafbda3f3 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc9a3422d dm_bufio_write_dirty_buffers_async +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xcbb1bae2 dm_bufio_get +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd4bddf5c dm_bufio_issue_flush +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd73dfc42 dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe6024e59 dm_bufio_release +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xebcc64a4 dm_bufio_get_block_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xeca7949e dm_bufio_client_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x2ab46e91 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x71db0def dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x931de180 dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x9d584125 dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xa2d1c6c2 dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xc53c0ae7 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xe5b2fe9e dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x1f0f9258 dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xe9cdb0fa dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x22a0886a dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x38efaf5a dm_region_hash_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3a18389a dm_rh_update_states +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x4430764e dm_rh_region_to_sector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x45ab972a dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7774620f dm_rh_stop_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7d053fc5 dm_rh_start_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x8a8c3d6e dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x995ed457 dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa434181f dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa53387c7 dm_rh_flush +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa68e1f06 dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa83588eb dm_rh_recovery_end +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xc06e4283 dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xdc1d51a5 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfad9d53a dm_rh_get_region_size +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfc62ef4e dm_rh_get_region_key +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfd93482e dm_rh_recovery_in_flight +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0054f69d dm_tm_pre_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x01445176 dm_btree_find_highest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x17c36f29 dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1ad93b5b dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1cac81ac dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2025e954 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2c112836 dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f40da68 dm_bm_set_read_write +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f74609d dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x32b5f546 dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x38c75c44 dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3ad0f55b dm_bm_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x40f7bd91 dm_tm_inc +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x42dbdfc3 dm_tm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x49b35849 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x55b4bd4d dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5e6aea80 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x62c1b9ee dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x68fae9d2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x72289260 dm_block_manager_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7ade1071 dm_tm_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7b047bd9 dm_tm_create_non_blocking_clone +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x80c89b3d dm_tm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x827a42f4 dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x832bf228 dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x858c8d94 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89f1e1cc dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x966a8838 dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9e798e22 dm_bm_set_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9f624559 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa0bbbb49 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa13861b4 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa87c5b4d dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaee02382 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xafeda29f dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb7bad799 dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb9a6ecf8 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbd50ebbb dm_btree_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xca40abd5 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd041d62b dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd29923fb dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe44b4b9b dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xed1e1f96 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf375d009 dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf475af48 dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf5455120 dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/raid1 0x1f1034c4 md_raid1_congested +EXPORT_SYMBOL_GPL drivers/md/raid10 0x22b3889b md_raid10_congested +EXPORT_SYMBOL_GPL drivers/md/raid456 0xf7768458 md_raid5_congested +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x0f6d5a41 saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x331da066 saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x69fc4f34 saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x788a0ced saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xb40f5a27 saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xc449e7da saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xdcca241a saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe6e3e285 saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xf868a8a7 saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xffb7affe saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x41da2f0a saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x46e0db00 saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x4f98a43a saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x949ebb1f saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xb7ee0d02 saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xc9c82083 saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xeb6744a3 saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x2989a7f0 smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x37d91069 smsendian_handle_tx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x46dac0e4 sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x4a1e4934 smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x58d58060 smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x6047435c smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x72f07beb sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7c576277 smsendian_handle_message_header +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7ce27379 smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x94e2ee79 sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x99a81ab3 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9c2225ed smscore_translate_msg +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9ee9a0c2 smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xaa4bb594 smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc1847ca7 sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc20b7824 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc5e3b6f1 smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc641a7fd smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xe16b32c8 smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xefacd5e8 smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xf85206f8 sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0xf6bfa90e tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0xff0576bd cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x04e7f82f mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x08f9feb4 mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x12aa2e91 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x2fdc9878 mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x35b34ad2 mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x50d6b285 mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x59d8b1b9 mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x5efc2e2b mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x7d298f38 mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x8be89257 mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x9d1ad72a mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xaccdf49b mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xad65e98b mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xaf8ea8a3 mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xdded42c8 mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xf190a0ae mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xf5b1eb75 mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x3156277f saa7134_queryctrl +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x5e2224f1 saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x87f2b22e saa7134_g_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xe0400703 saa7134_s_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xf357e558 saa7134_s_std_internal +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x101d5b96 ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x141b1b71 ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x43b2e40a ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x60b5b124 ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x9e3a6668 ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xe51bee1d ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xf36b156a ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x0d1b27e3 rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x29e80cd2 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x48a5f99f rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x553efb91 rc_core_debug +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6c43fb18 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x80d1ae1e rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x8ea7609b rc_close +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa24fed3e rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb54167b4 rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xbd614783 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xcb80b491 ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xcdcf407a rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xcea0c162 ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xceb4a57e rc_open +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xe6b9c939 rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xe900c0ae ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xeae4ed19 ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf0d12ff5 rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf2109a4a ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf387b538 rc_free_device +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0xd5900635 microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0x349e57a6 tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0x6fb21282 tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x16975a88 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0xe517d832 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x1b0c9fd5 tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x80afd2b0 tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0xb652da58 tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x6a60236d tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0xebd0efd6 tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0x526c6242 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x01c483a9 v4l2_get_timestamp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x1e2c3124 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x80b0488c v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x813f3de4 v4l2_find_nearest_format +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x85435eab v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xa7f71941 v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xaebe6c58 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xe55eeb31 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x08982d59 v4l2_match_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x221d2fbc v4l2_enum_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x36e8756a v4l2_find_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x4103badb v4l2_print_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x53105839 v4l2_detect_cvt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6976cfe0 v4l2_valid_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6f344bb9 v4l2_calc_aspect_ratio +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x7eaf8e7a v4l2_detect_gtf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xb0891da2 v4l2_dv_timings_presets +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x6443895c v4l2_int_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x90e3f169 v4l2_int_ioctl_0 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xa5228b24 v4l2_int_device_try_attach_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xe9400f68 v4l2_int_ioctl_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xf6e5d0e0 v4l2_int_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0efbfd60 v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x17eb0eee v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1af6384b v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x21a5501f v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x351c6d68 v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4641681d v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4adaaa8c v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x64e246cf v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x65ceda82 v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7a0c31b2 v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x8fd38ff0 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x910bbf99 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa6ef14dc v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xcfce814e v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xfca22aa2 v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x144b3687 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x27052e95 videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3616fbcc videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3b1b5e40 videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4d99397d videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x5a2df4a5 videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6ca78e9f videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x768490e6 videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7b09a36d videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x8329cb58 videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x8903e520 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x8e162365 videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x8e5fd3bf videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9663eea4 __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9c117076 videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa80f25c8 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xae40d7c7 videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xbbecc095 videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc396afcf videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xcb355645 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xcc4e74c0 videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe1b91a8f videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe9fdca05 videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xfaf970cc videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x2a66ad23 videobuf_dma_contig_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x7a30090e videobuf_to_dma_contig +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0xb3e4be55 videobuf_queue_dma_contig_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x14a03cdc videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x1641d37a videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x2d467ac9 videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x3d7e9136 videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x553a86d0 videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x5d2e2a8a videobuf_dma_map +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x602b31f2 videobuf_dma_init_user +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x65daec2a videobuf_dma_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xa1356a59 videobuf_dma_init_overlay +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xdbb5fb11 videobuf_dma_init_kernel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x226d9735 videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0xde556c61 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0xfd8e8aeb videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x0271146d vb2_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x070c32a1 vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x15fc74c7 vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x1f490cde vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x28f0eb82 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x29641fb6 vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x3f9a5dd0 vb2_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x411f2666 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x43e3c942 vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x4e71c00c vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x5ba27c1a vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x5c8651e9 vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x5de0030b vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x62872530 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x640cce93 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x6a34539e vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x6fb4d28d vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x7be40007 vb2_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x80808db2 vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa3d4d6e6 vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xafe930c2 vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xc1fc00d7 vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xc6d23c3f vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xc6d85575 vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd018eac4 vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd0cda4ee vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd4e5e1fc vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd75c7922 vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd7bb4dbd vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xe6ed8d57 vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xeabe544a vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xf8c0ad9c vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xfdb3debb vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xff1212cb vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0x0aafd868 vb2_dma_contig_init_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xe57f0426 vb2_dma_contig_cleanup_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xf9b3cfd9 vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x41bca027 vb2_get_contig_userptr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x7e6ae19e vb2_put_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0xb4573a55 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0xd21571f6 vb2_get_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-vmalloc 0x37687d1f vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x10b68ce6 v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x20e0fa8a v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x34da5a88 v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3688b686 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3def3b1d v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x51869e23 v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5d72e230 v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x605488eb v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x63c6562c v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6a9174ff v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6c54d05a v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7076c53d v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x70dcfe12 v4l2_compat_ioctl32 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x73aabbc6 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x90de1bb8 v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x92fea2b5 v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9d661594 v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa146e62a v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xaada6e91 v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xabb7ad5c v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcc83f18b v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd0f38f93 v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf7c31b29 v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfd0035b9 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x2b1d694c i2o_dma_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x6828889b i2o_pool_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x70367f92 i2o_dma_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xa0dcb651 i2o_dma_map_single +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xab8569e4 i2o_sg_tablesize +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xaf30d028 i2o_dma_realloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xbbae41c7 i2o_pool_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xe3f66c58 i2o_dma_map_sg +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x1b1464d8 pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x7085a340 pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x8cd84e1e pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x37b2bfbe kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x94b53de5 kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xad9c0c3d kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xb1ed3169 kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xc047fa9a kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xd06fb8a7 kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xfafbdfbc kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xfdaf9739 kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x0c23b0c7 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x6b2b0d96 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x745e0d00 lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x02ea0f54 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x0c6e474a lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x3bb0b438 lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x56792053 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x6c38035a lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x96204b6e lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xa8111a5e lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x28e8aede mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x46c6fd1b mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x6852e5fe mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x7a5d1096 mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xa99b15ba mc13xxx_common_cleanup +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xd3fc7bfe mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x0fd636ac pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x1c5b7a2c pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x225f4a9f pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x2617b1db pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x26a4ffb6 pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x347d11c4 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x49b4c807 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x667cdba9 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x6c55090a pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xde0c7cc0 pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xebc247db pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x40a7b20f pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xee2c9bf5 pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x6b94d164 pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x83984d2e pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xab700190 pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xe15f7e99 pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xe54da712 pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x01a33234 retu_write +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x4fca3918 retu_read +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x135bdf2c rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x197587eb rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x29d8c5eb rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x34a53d09 rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x372de69c rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x3750d604 rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x3fc95058 rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x42ef0a88 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x475f9028 rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x5a3dd66e rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x7e9fc126 rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x8131e6c9 rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x98818509 rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xbe6c3f6b rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xca9546d8 rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xd27a413f rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xd6e26854 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xde396e7f rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xe014788d rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xe05f5320 rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xf087b021 rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x06a0fbe8 si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0aa53dc9 si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0bcd0112 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0e216385 si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x211d9421 si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x259f258c si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x285619d2 si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3a9e2730 si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x412c4f7e si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x413003bd si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4c6895f9 si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x51121f04 si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5fc40bb0 si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6c0e1366 si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x76947919 si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7801805f si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8243f1a2 si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x86afd9f6 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x93cd7485 si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x99123279 si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x99606e21 si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9ce1f958 si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xaf8b7270 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xafaa89ce si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb712520a si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc00159c8 si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xcf6c6e71 si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd91add3a si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd9aa08ed si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xeaab243a si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xec8521a8 si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf0c38e05 si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf5e91997 si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfee4f08c si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x44b7f74f sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x4d1b4242 sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xac29bda4 sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xc7630cc1 sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xdfecc841 sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x76019c71 tps65217_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xa2e3fee2 tps65217_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xbc55f8b1 tps65217_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xdb60f3a8 tps65217_reg_read +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x23acc585 cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x3d6b4fb4 cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xc8badf05 cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xcfea1c7d cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x27cb133b eeprom_93cx6_multiread +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x63d2ff63 eeprom_93cx6_wren +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x822222db eeprom_93cx6_write +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x98bb5a22 eeprom_93cx6_read +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x19b91f49 enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x537138ea enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x68d58745 enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x8a484791 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xb260f706 enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xbd8ee837 enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xda0307ec enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x1056460e lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x2ca21667 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xaa5ac956 lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xaab0b6a8 lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xc15c4786 lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xc91ce87b lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xf9610e6e lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xfcba32fb lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x42b7cffd st_register +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0xb2aed73d st_unregister +EXPORT_SYMBOL_GPL drivers/misc/xgene/qmtm/xgene-qmtm 0x13893d79 xgene_qmtm_intr_coalesce +EXPORT_SYMBOL_GPL drivers/misc/xgene/qmtm/xgene-qmtm 0x188d333c xgene_qmtm_clr_qinfo +EXPORT_SYMBOL_GPL drivers/misc/xgene/qmtm/xgene-qmtm 0x2649e94b xgene_qmtm_fp_dealloc_msg +EXPORT_SYMBOL_GPL drivers/misc/xgene/qmtm/xgene-qmtm 0x321ef310 xgene_qmtm_enqueue_msg +EXPORT_SYMBOL_GPL drivers/misc/xgene/qmtm/xgene-qmtm 0x45fbba7c xgene_qmtm_read_qstate +EXPORT_SYMBOL_GPL drivers/misc/xgene/qmtm/xgene-qmtm 0x4b60c0c3 xgene_qmtm_dequeue_msg +EXPORT_SYMBOL_GPL drivers/misc/xgene/qmtm/xgene-qmtm 0xa53e72e8 xgene_qmtm_get_sdev +EXPORT_SYMBOL_GPL drivers/misc/xgene/qmtm/xgene-qmtm 0xc8211ca7 xgene_qmtm_set_qinfo +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x66e5b916 sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x6bd080ce sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x77334f59 sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xb5647917 sdhci_send_command +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xeb83ec17 sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x32bbf04c sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x492753b8 sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x74c7edec sdhci_get_of_property +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x95e6715d sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x992b8ea6 sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xda43cfb1 sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x30f947c0 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xcde76256 cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xf2ce47be cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x12c62d32 cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x9f6da964 cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xe13fe2b4 cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x43b49625 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x710b7b41 cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x99195a89 cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xcdfb4950 cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x02319ff4 register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x09a36603 mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1298be2a mount_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1322e21f mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1c0dce9d mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2c7c74b1 mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2e825153 mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3b2313c4 mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3ed8bab3 mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x57f6cee9 __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x61f7e328 kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x62cbcbb3 mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x648dcfe7 get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6a1545c9 __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6edcd8e7 mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7126e4d1 mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7257e1a8 mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x74f05332 mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x761084d0 put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7807c908 mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7977f3d6 register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x81113458 mtd_is_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x85a26595 mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x865e6bc3 __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x893d1b4e mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x94be1a14 mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x98fdb9c7 mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb153ac87 mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb43bb1b7 mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb857942d mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbcf5c92e mtd_erase_callback +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc519c4e6 mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xcce6a1e9 mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd3e122ef mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xdc32d228 get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe2d640c3 mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe40f636e deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe7f510b0 mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf0ad842b mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf91453ad unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfb5ea58c mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x116fd172 deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x535b698b del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x5cfc9721 register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xc3918eb5 mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xe7ef947a add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0xbb92eb7a nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0xe516798c nand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/sm_common 0x2c893a0e sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0xedcec136 onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0xf95eb295 onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x05647bbb ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x0b9b2fd5 ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x16443666 ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x23d7e110 ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x285f410e ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x4af4c371 ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x51e3bee1 ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5cfdd22d ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x6cf22a13 ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x83703af0 ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x94aededc ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xb969c51d ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xced94e01 ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf31707c4 ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x69843362 register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xe226d35f free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xe45e6e8e unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xfdce8023 alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x06c1f606 alloc_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x222c295a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2e49e07d can_led_event +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x31dc06c2 can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x4377b0eb close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x4cd735a1 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x5814e90e unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x5af7bc95 can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x74964887 open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x7a4191b0 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb346573b can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xd46537f6 alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xde7a8082 can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xeb489593 safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xed8320ad free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xf7b89956 can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xfe6e6876 devm_can_led_init +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x29d4a741 register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x358c701b free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x92947e8c alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xfb84be5e unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x1185e922 alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x5b0c1c61 unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xaade869e free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xf23d686f register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x08fe6b21 macb_set_rx_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x253d3aca macb_get_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x449e30d4 macb_set_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x6538f946 macb_mii_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x6ee3cff8 macb_ethtool_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x93bb1ab8 macb_get_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xc47c8982 macb_ioctl +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x010867c1 mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x04f678f5 mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x061a7935 mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x06812c04 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x06fb443c mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x08af95f6 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x08d0e8b6 mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x09e1a110 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0f8503b2 mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x118c66ca mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x12a01ae2 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x15e61464 mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1695fcf0 mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1bf6b8fc mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1e071c04 mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x214c4be6 mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x224fb49e mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x27a5ea2c mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2a6367e6 mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2a91fe3a mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2c25d6f7 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2cc035fd mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2ce5c462 mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2da2f021 mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x353f6040 mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3ef89496 mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3fd71bef mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x448e8eb5 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x450917c8 mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x45ce69fb mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x46733773 mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4a693f06 mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4d2ac1c9 mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4e6dcf12 mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4ec7c324 mlx4_fmr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x55ee8337 mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5782ce90 mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x590465a6 mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5b004aab mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x60f96ec9 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x65e7cd08 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x662cdca2 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6c5d4764 mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x70c03c01 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7464c3a3 mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7574cb84 mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x78a7a150 mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7943244a mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x79b3160c mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7d74cd2c mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x83b9a379 mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x83c6fef8 __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x83f7b168 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x87b841fa mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8b483229 mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x91628441 mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x931dc990 mlx4_fmr_unmap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x99679824 mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9dc3ef5a mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9f58d35e __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9f8b5bd7 mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa3419b31 mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa5bc8cbe mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xad50362a mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xad7f18c1 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaec9d53c mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaf9b01e2 mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb023f5bd mlx4_fmr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb969d101 mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc4761ae3 mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc778e8ec mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc79d7d0a mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcafbe31d mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcd854701 mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd3e376cc mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd4e85bd2 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd6048021 mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd607b1d3 mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd670d42c mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd75886f4 mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdf7be5a9 __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdfaaf4e8 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe1fed525 mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe24100e3 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe34661c4 mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe542bc57 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe6a47561 mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xecef76fa mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf0305ab0 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf08f5f4d mlx4_map_phys_fmr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf1e14351 mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf48ec2ff mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf68c6abd mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf74b6b42 mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf8bfb0ba mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf8e218be mlx4_fmr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfac2a4cf mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfb11606c mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfb37d997 mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfc19c9e9 mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x24bb2c7b mlx5_create_map_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x346603b9 mlx5_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5b000a41 mlx5_core_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x77f7a9a4 mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x78df1337 mlx5_core_mad_ifc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8381156e mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8fbd5d40 mlx5_core_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x959b0424 mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x988e817c mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9a7163f8 mlx5_core_xrcd_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9f74449c mlx5_core_create_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb0e88cab mlx5_core_eq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb50fdaa8 mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc5a78df3 mlx5_core_destroy_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd5703c48 mlx5_core_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd6c4ef56 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfd2afa63 mlx5_destroy_unmap_eq +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x08aed084 macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x7b60b642 macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xbf6fd544 macvlan_start_xmit +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xd395b332 macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xf7e1ff71 macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvtap 0xfd77598d macvtap_get_socket +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x71b94592 vxlan_src_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xc7f2ac51 vxlan_get_rx_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xcb7ecb89 vxlan_sock_release +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xcbbb98c8 vxlan_xmit_skb +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xe8f7bf06 vxlan_sock_add +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x7ec47930 cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0xa7045fa1 cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0xc5e92f01 cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/ipw2x00/libipw 0x170d6f5c libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x1c3cccfa _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x496b753b il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x55c859b7 il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xa6d2131a il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xde6c04fd il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x01e920bc iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1a31d0eb iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1b3cafcf __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x289eca40 iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x4569ca0f iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x492378f5 iwl_nvm_check_version +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x4bfc5fab __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x4d1e5c44 iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x556fa75b iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5d0a212e iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x61fedeec iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x68c44991 __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x72dfc717 iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x7ab0e0f7 iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x80279fb9 iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x81679590 iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x875f1ea0 iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8c5d5ab3 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8da16094 iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x960f0f20 iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x9c553437 iwl_notification_wait_notify +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xaac51062 iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc4c266f3 __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd4780e01 iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd8bc382e iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xdfc68cba iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xf03a5420 iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xfda5577b __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x06ddf930 lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x134735e6 lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x36d74482 lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x3b2f99cb lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x40ca26b9 lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x4906cfaf lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x7d7e4a3a lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x8177bad4 lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x856c2d63 lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x9e28bc34 lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xb1dabe62 lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xcc8d6c5b lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xdce936ea __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xe127cb80 lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xe46a1115 lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xfe4cc74b lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x04a6a887 lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x1f9c8152 lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x2dc13a54 lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x497be5f5 lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x8bf7864e lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xc4c4e6fd lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xc85e6899 lbtf_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xd85463c4 lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xdafb18a3 __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x0bdda9e8 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x2e759298 mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x35f55bb2 mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x45d6fefa mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x53849991 mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x551200a3 mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x56d23a0e mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x6b4e794d mwifiex_deauthenticate +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x849d987d mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x997195cf mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xac8b86d4 mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xb47afeb5 mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xd6ea4c08 mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xf6275820 mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x13de9a8b p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x1fcdbf59 p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x3dac525c p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x6f904552 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x8eea2889 p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xad3e7dbd p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xbbb0c995 p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xbd33ce43 p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xfd3db5cc p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1a8ebed2 rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1d4413ac rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x223d0b85 rt2800_get_tkip_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x28270647 rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3c2fd1e5 rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x493c8f06 rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4e236daa rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4fd9f7e6 rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x58285ad9 rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x59226391 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x60879b9d rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x6a0efefa rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x6e66cedc rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x78db1f12 rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8580fb3e rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8b10640b rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8c0a8755 rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x9460617d rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x980eba71 rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x9b80ba46 rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x9bbe5808 rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x9ed4411f rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa05c81f6 rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa24fe994 rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xac1a2048 rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xae9b9311 rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb2a18f99 rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb604b112 rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb9831804 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xbfcd2d1c rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xc699354d rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xc78fe8b4 rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd5ff0221 rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xdf155ae5 rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe28c0875 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe7dec435 rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xecc6a1ae rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xff9be959 rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x1a4c3e3f rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x2e245ba5 rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x41be727d rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5554c6d2 rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5afaf4b2 rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x62dab1d0 rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x78095d8d rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xa6ce55e1 rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xa7884ed6 rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xb16ac466 rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xf03b5c1f rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xf5a90b47 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xf7ef5c66 rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x05861040 rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x0b7143f3 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1e91378e rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x20c6870b rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x229a9fa3 rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2309fc0e rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x23fec8bd rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2719c478 rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2e6c05cb rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3998d985 rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3e07511b rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4e1f765e rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4f0d1929 rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x51f65568 rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x55798f78 rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x64c923f5 rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x67b4676a rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x7aa41a30 rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x7e5071b4 rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x83c3c012 rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8e8363f8 rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9666088b rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x97291bd6 rt2x00mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9d959e56 rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa4219fea rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa6cc3afa rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa7bc3a1d rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xad01c234 rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb8b18296 rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb8da8ba8 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb8f9499f rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xbcb4373f rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc0bf8417 rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc7daae7d rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xce616eaf rt2x00mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xcf0ad0b5 rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd38067ad rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd8c28ae4 rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xdad9c79c rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe20bac35 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe52478e7 rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xed10598c rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf9469b2e rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xfa851f25 rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x086ff9c6 rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x5314feb6 rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x7d83b617 rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x98b9fd35 rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xee696ec5 rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xc038e005 rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xc9ec817a rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x39a2e85c dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x517f395f rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x547c6f9b dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8c449bfc dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x06387a45 rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x0e72a95f rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x13c1d6d4 rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x31cc0f4f rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x31d938d2 rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x33b60ee8 rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x3cb57d11 rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x3d708aea rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x4116ad5c rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x4175fb91 rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x43093e7a rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x46403ab8 rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x4f43d109 rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6fee3a6c rtl8723_phy_set_sw_chnl_cmdarray +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x72aae656 rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x75f79819 rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7a930215 rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7fc3e49d rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xaf4d6d94 rtl8723_phy_calculate_bit_shift +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xb190403a rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xbf25ee0e rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xc2331476 rtl8723_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xd8a9fbda rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xe7522054 rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xe84c949b rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xe9ff989e rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xee7f0393 rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xfeeab1ce rtl8723_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xffb48fef rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x00ea1484 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x03fceea2 rtl_attribute_group +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x0470257a rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x07435a4a rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x1755e1b7 rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x241dedc1 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x253537ce rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x26fd3baa rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x3a3c3b64 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x5a17d56b rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x6b4de810 rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x6c4bba37 rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x850ddc6c rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x916924a1 rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xac7a2fd2 rtl_dbgp_flag_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xd1eb0221 rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xd8cf05b8 rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xebbcbfc2 rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf0c3c09a rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf6e0523d rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x0731085a wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x640e4b7a wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xe0474837 wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x044f3503 wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x05a5e2f3 wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x072e80c9 wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0846c9bf wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0be78e78 wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0de50fa6 wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x16314654 wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1c07c6f3 wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x274ccdb6 wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2cdd9fb8 wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2de5bff5 wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4024789a wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4524a1a1 wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4bcfde37 wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4ddf8192 wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x53dff67d wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x54eb27a0 wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x57015ea8 wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5c760d21 wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x66f5ec5a wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6a9d878b wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x717c3a62 wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x77c32224 wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x96103f33 wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9826ffe2 wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x98781409 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9f8d349f wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa5807032 wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xaada9384 wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xab03f2ac wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xacdde7ee wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xad08619f wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb4a460d1 wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb919b3ac wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc70cb051 wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xce24be1b wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd1f31114 wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd39bb505 wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xea08dd37 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xeba87417 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf1cf4dc2 wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfc2e4691 wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfed87603 wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x425a3236 pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0xb8bfbf14 pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0xf5dd99e9 pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x219e745d mc13xxx_get_num_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x878ae4ac mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x9900ad31 mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xa802a72b mc13xxx_parse_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xba406d22 mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x5ae010ef wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x6fb9bdbb wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x88f024c8 wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x9274a8b5 wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x93f6f4a7 wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xb4f5bc40 wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0x1b5a639d wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0d83957b cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1271c198 cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x19e2417d cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1b8dcc76 cxgbi_ddp_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2258b49a cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x22a8f89f cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2d73ed31 cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x36fec2fc cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x37c1aaab cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3a5c4389 cxgbi_ddp_page_size_factor +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4944aa5a cxgbi_ddp_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x575fe6a5 cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5d305ec5 cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x65e2aa90 cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6ade59c3 cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6e7803f1 cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7a1cc287 cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7bf98924 cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x826505c0 cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x882d32b7 cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x89d96214 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8c2ba369 cxgbi_ddp_ppod_clear +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8c8f8330 cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x95568b25 cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9743ee89 cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa46376aa cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa5c778f1 cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa6ae9987 cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xaaef74cf cxgbi_ddp_ppod_set +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xaaf89f43 cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xae98330b cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb5dd41ee cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc4073607 cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcbbfce39 cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd11f9c59 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xdf4eef52 cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe2f1180d cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe3f2b335 cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe56698cf cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xeb87f998 cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf468c65d cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf47ad7f0 cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf78df13c cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf7e04647 cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xfbf4845a cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xfe01b9e2 cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x0d9381b7 scsi_dh_set_params +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x31d51f26 scsi_dh_activate +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x593a36c2 scsi_dh_handler_exist +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x7334906b scsi_register_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x97eeae4a scsi_unregister_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xdb0d1173 scsi_dh_detach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xe23dc988 scsi_dh_attach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xfbee2c9c scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0fb51275 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x186406f7 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x374c1e1c fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x5acd0ec0 fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x6387f6f3 fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x84b3d915 fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x9310e693 fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x94148776 fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xa15d424d fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xa9ad603f __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xaeb04009 fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xaf7f46c5 fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xb20e2492 fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xc14a619a fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xce57573e fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xd91056a0 fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xe3995f8b fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xfda509b4 fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xfe9f0a8b fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x028a6e9a iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2ef6e5f9 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x98327bb7 iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x9a780cad iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xa2e88f3e iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xe066f05c iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0be42a42 iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0eed5bf9 iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x184bb346 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x19f1d69e iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1d0ffaaf iscsi_eh_target_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2248b301 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x25c2c967 __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x29821469 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2a0012e9 iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x35447798 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x39284592 iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3e58ca7e iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x409a9027 iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x491af3a1 iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x561627ca iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x59631f85 iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x79668710 iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7b3e26a4 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7e2a2b80 iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8307cc4a iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x85190202 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x85d0f0b1 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8b45c4e7 iscsi_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8dcb6423 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8e6e4599 iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x91f19760 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x96fd2e37 iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa4ed4eb3 iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xac0d5b4e iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbb897aef iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbc6feb48 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xcd687f7b iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xcddbef91 iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd2dcd8c6 iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd53e28bb iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xda8b561d iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdfff376f __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe249fd72 iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xedbef608 iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xefda2027 iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf378b83e iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf3b06e71 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf75523fe iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfb5f614a iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x074f91e0 iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x0a890b1b iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x0c8bb03d iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x2dc591eb iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x330af974 iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x5efa9a7a iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x85e0c5c9 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x89b86f4e iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x9a2cc2de iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xba27cef8 iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd00e745e iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd01181d5 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd1cb1d8b iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd4801b69 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xdcd22f03 iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xecc8f040 iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xf9f37a74 iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0e85cf8b sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x37928cef sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x384f6032 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x424f6e25 sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6a66c65b sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6b6cd19f sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7a39e97c sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7bc602bc sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7f9ef1df sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x829214fc sas_domain_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x843c4079 sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x96325432 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x9936ef98 sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x9e6cfcae sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xaf4032a4 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb7946048 sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbdba9197 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xcdc56825 sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe089b84c sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe0d53cb3 sas_eh_bus_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe687f5b0 sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe8949b60 sas_change_queue_type +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xedb53330 sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf3b660f8 sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf7532237 sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x1b08e648 srp_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x6ae5cfef srp_transfer_data +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xb801cb90 srp_target_free +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xc5510e7a srp_iu_get +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xdef7699e srp_cmd_queue +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xfd9bc618 srp_iu_put +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x164cbe79 scsi_tgt_cmd_to_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x34ba8905 scsi_tgt_tsk_mgmt_request +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x69e80ab1 scsi_tgt_it_nexus_create +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x6c4fbc6e scsi_host_put_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x726d27b3 scsi_tgt_free_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x909c08e6 scsi_tgt_it_nexus_destroy +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xa6318e8e scsi_tgt_alloc_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xadbcc126 scsi_host_get_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xbf99b9e1 scsi_tgt_queue_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x00ab12d6 iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x077d22bf iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x07bcb6ef iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0ac7a834 iscsi_is_flashnode_conn_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2b70bcd7 iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x342541cb iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3723419e iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x418bfd4f iscsi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x42788297 iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x471380f7 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x556b8546 iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x56c37b21 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x583448ed iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5d5c9485 iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5f46f2eb iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x60cb0c32 iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x689ed2b7 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8117dece iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x84f9ffcc iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8765d3f1 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8c31b449 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8d2e650e iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8fb263e7 iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x944c742b iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x969fcacc iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9bc5557c iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9c470924 iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa2b84eb8 iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa9250063 iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb39408c9 iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc5688b2b iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcf2dc332 iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd56140ff iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd89c152c iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xde01ae74 iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe45333a3 iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xebba4240 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xecbdbd59 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xee9c50e9 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfb44b8ef iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x38ea488f sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x3d152e46 sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x9c2dde8c sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xdc4ffdf8 sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x1be392ab srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x422d050e srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x7aa3bb5c srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x7bd817bc srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xee891cc0 srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xeef055d6 srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x32b728bf ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x50861a8a ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x79966a91 ufshcd_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x9406a35b ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xae33741b ufshcd_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xfa9f0763 ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x150a5968 spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x2184241e spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x58d9ac02 spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xe638a91a spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xead76071 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x15770177 dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x332508f6 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x6ba8f078 dw_spi_xfer_done +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x8ea91237 dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xb9ebf2b7 dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0xe9ab03e8 ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x01017ee3 comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x07166958 comedi_buf_get +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1b0d12d0 comedi_buf_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1c68fc18 comedi_buf_memcpy_from +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1e32c8bb comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x203d5c19 comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x29903ca8 comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x32279835 comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3e52998f comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4417fbbc comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x493eb84f comedi_error +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4e81e300 comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5643753a comedi_dev_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x69984dbf comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6a488f10 comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6f407d94 comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x715aeb95 comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x729914f8 comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x79cf4d95 comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7cc696aa comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9407dcb0 __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x966f644a comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xad2d92a4 comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb05b4e81 comedi_buf_memcpy_to +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb44b2963 comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb47fd90a comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xcad0745c comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdacab86e comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdeb83ace comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe85a9e90 comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xec1cca21 comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf0c6f47d comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfad55e66 comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfe2e69c9 comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xff620763 comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x6faaf01b subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0xba940d55 subdev_8255_init_irq +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0xe5c65a6d subdev_8255_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0xafe23906 addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x2d478f06 amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x5224948e amplc_dio200_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x6771b594 amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x803137e4 cfc_read_array_from_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x871e6492 cfc_write_array_to_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x87d0aa7a cfc_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0x46902908 das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x01ff2a82 mite_bytes_written_to_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x244021ae mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x25d03a29 mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x2bcbc453 mite_sync_output_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x2d561b1a mite_bytes_read_from_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x4a4efec3 mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x5b02cdac mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x71a2acfe mite_setup2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x7a7951bd mite_get_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x7ecd07d1 mite_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x96bc3bd1 mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x9dc35303 mite_setup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc136c3c6 mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc238c41f mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xcc384164 mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xcdd41469 mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd1d8b913 mite_dma_tcr +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xdbb0f0a1 mite_bytes_written_to_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe3195d77 mite_unsetup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe4c637d6 mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xf719c139 mite_bytes_read_from_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xfc640954 mite_sync_input_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc 0x8dbfb149 labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x063e46b2 ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x1dbe4148 ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x37a661aa ni_tio_winsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x586620d1 ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x9011ffbf ni_tio_rinsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xc39c1407 ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xe59ed149 ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xe8b8db48 ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x14ff85af ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x30b2ac85 ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x33229f1b ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xd05f8f08 ni_tio_acknowledge_and_confirm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xe3563ef0 ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xffdb01c4 ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x0e7f0a88 comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x0fe5f8ff comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x15f4df29 comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x689cb9f0 comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x798c91a9 comedi_close +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x87c4ca7c comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xd8455137 comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x1a1b5249 oslec_flush +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x2feda75b oslec_hpf_tx +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x3227a28e oslec_snapshot +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x7dc9dddd oslec_adaption_mode +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xb2c66001 oslec_create +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xc8b5a524 oslec_free +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xd370f679 oslec_update +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0e81c76d spk_serial_out +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x14f06fe7 spk_serial_in_nowait +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x1b8405aa speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x2abc9c56 synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x3a61cdc7 spk_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x475e158a synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x56355aa9 speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x6d506c3d spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x867e0dc6 spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e146195 synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9a888082 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xaca6e22a spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb48956f8 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb95c48a3 spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbf972d3d spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc766ae09 synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd1b551a2 spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd6094017 spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xdefdb259 synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe4741d30 spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7e810f8 spk_serial_in +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x585ebaac n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0x1068c59b pciserial_init_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL drivers/uio/uio 0x38bf1dc7 uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x5c3747db __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xfa9430ba uio_event_notify +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x307844eb umc_controller_reset +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x33a68cdc umc_device_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x3fe2b6b0 umc_bus_type +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x42bab97d umc_driver_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x80302f90 umc_device_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x838f4606 umc_device_create +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x8c6bf34f umc_match_pci_id +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xfbf79897 __umc_driver_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0d78016e __uwb_addr_print +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0fc02440 uwb_est_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x17fa01eb uwb_rsv_modify +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x2211f439 uwb_notifs_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x244f7998 uwb_rsv_create +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x2dc6197a uwb_rc_dev_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x324935c1 uwb_rc_ie_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x35f8b64f uwb_est_find_size +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x3726ed04 uwb_radio_start +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x45c7c019 uwb_rc_reset_all +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4852af26 uwb_notifs_deregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x48e95de0 uwb_rc_ie_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4ba1cae4 uwb_rsv_terminate +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4d57ae3c uwb_rsv_type_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x51ba2adc uwb_rc_cmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x616905e4 uwb_pal_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x61e4c7e9 uwb_rc_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x68f5ef1f uwb_dev_for_each +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7a4d9800 uwb_radio_stop +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x80434bb4 uwb_rc_alloc +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x816b9e92 uwb_est_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x82ded6a6 uwb_rc_put +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8a8e6139 uwb_pal_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x91b30ea3 uwb_pal_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x950e890b uwb_rc_get_by_dev +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x98413234 uwb_rsv_state_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa3cb6309 uwb_rc_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa8228fc3 uwb_rc_pre_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa992131d uwb_rsv_accept +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xaa800c75 uwb_rsv_establish +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xac97316b uwb_ie_next +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb092a5d4 uwb_rc_post_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb6540b3d __uwb_rc_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc5c4ca6c uwb_rsv_destroy +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd03a0314 uwb_rc_neh_error +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd6cbabdc uwb_rc_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xeda78c06 uwb_rc_cmd_async +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xeece9c29 uwb_rsv_get_usable_mas +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xefc5f51b uwb_rc_mac_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf06f1c7f uwb_dev_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf22747a0 uwb_rc_neh_grok +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf26f8dc8 uwb_rc_vcmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xffd75dae uwb_rc_get_by_grandpa +EXPORT_SYMBOL_GPL drivers/uwb/whci 0x3df8a820 whci_wait_for +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x01328a9e vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0bf83bcb vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1c91e787 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1e52f6f9 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x26398ec3 vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x269f7a09 vhost_dev_reset_owner_prepare +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x33492cab vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x44aae046 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x46aa4de5 vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4be33295 vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5b993d56 vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5bb0b504 vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5c49e44f vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x781904f8 vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8c96dcaf vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8d9c5f17 vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x91b59f8c vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x985d63b1 vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x98bd9c09 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9c74e92d vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xaf6913c4 vhost_init_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb027abfb vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb53140b9 vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb5e019ab vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbb3c4ad2 vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbd633a74 vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc2abe5fc vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc75de2bc vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe310e972 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xecd1c4c8 vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xffa87476 vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x09c2ac98 auok190x_send_command_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x12402f86 auok190x_send_cmdargs_pixels +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x6de109dd auok190x_common_probe +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x90d0d81a auok190x_common_remove +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xa32eb8aa auok190x_send_cmdargs_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xb12977bb auok190x_read_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xb80de4f3 auok190x_send_cmdargs_pixels_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xc8e962d2 auok190x_pm +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xce2fe936 auok190x_send_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xf6c37135 auok190x_send_command +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x2c51909b ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x43b77057 ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x6c27b4f4 ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x83c713ac ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xbe700f78 ili9320_write +EXPORT_SYMBOL_GPL drivers/video/fb_ddc 0xc235c51a fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0x5e804401 fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0x806de018 fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0x33182b86 sis_malloc_new +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0x3b1520e8 sis_free_new +EXPORT_SYMBOL_GPL drivers/w1/wire 0x07749870 w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x151f1c31 w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x4a8547c3 w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x7c2f2afb w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x84d53b51 w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x8514ccb0 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xac90d855 w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xc9b32393 w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0xc9d83459 w1_next_pullup +EXPORT_SYMBOL_GPL drivers/w1/wire 0xd47828bf w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/xen/xen-privcmd 0x4f27fc25 xen_privcmd_fops +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x44f36ea7 dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x9321df95 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x96e2bd99 dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc6dc8c2f dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc8336af3 dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xdc583c08 dlm_unlock +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x0b0aeb40 lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x17ce645d locks_end_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x21d250c2 nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x49eeef9a locks_start_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x5e7158ed nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x88f018db locks_in_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x97982239 nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xc149a35c lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xcb57143c nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xd45713f5 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0140fd13 nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x03eb399c nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x08fe4635 nfs_initiate_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0bce1007 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x11255516 nfs_file_splice_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x18fb5a13 nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x19b5b5df nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1ae5e694 nfs_setlease +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1c47c02f register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1e4030cf nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1f63dd09 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x201610ee nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2088d8a2 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x20fcea82 nfs_try_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2132e784 nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x221b4e91 nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22758aca nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x27992569 nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x29a04b69 nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2b0e21fb nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2bda07d9 nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2cfe8d60 nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2f38e9d9 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x302dd901 nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x30bc4607 nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x31bc3f75 nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3bb6fcd2 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ca31f35 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f123b92 nfs_put_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40c7a87f nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x41ba894e nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42221217 nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42900a2f nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x44116c8f nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x449b6ee9 nfs_file_splice_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x45570bbc nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x46c19ea1 nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x46e1f388 nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4fd00b64 nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x56a556cd nfs_set_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e1d863a nfs_sockaddr_match_ipaddr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e360384 nfs_pageio_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6038089c nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x612b55cf nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6308a55a nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x66587e60 nfs_writedata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6741dd2b nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x68630df6 nfs_fs_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x69064fef nfs_file_fsync_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6bc6be9d nfs_fs_mount_common +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6f08169b nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x724e0d43 nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x75ae2504 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x77f9d3f4 nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x78eddb45 nfs_remount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x78fceb39 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x79a56da9 nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c9722ba nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7ded1321 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7f025ec4 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8085ecae nfs_generic_pagein +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8106fb58 nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8153b3f1 nfs_pageio_add_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x84d17b62 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x858a958c nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x889675db nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x88abba41 nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89bc5a64 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9323a7d5 nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x94088216 nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9872997b nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98b74ecb nfs_clone_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x998fd77e nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x99d3c506 nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9be54b83 nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9d9d3c63 alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9dbc135b nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa2c3f457 nfs_readhdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa4ed9a9b nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa73f8cb3 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa75b5715 nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa83264b2 nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8d2d1ce nfs_callback_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xab2f22c7 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xad2393f0 nfs_file_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xad318dab nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xae915d0c nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb20956b7 nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb30b4df6 nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb4762c12 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb606e716 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb6ef3b89 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb715f092 nfs_fill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb82b5c4b nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xba6edde6 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbc3fcd5f nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbf38c196 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc0a65364 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc248410c nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc30457d5 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3094d4e nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4adddd6 nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4ff1e9f nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5b4a18b nfs_writehdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5ef47d5 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5f34aba nfs_pageio_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc76b3ded nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc845b394 nfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd16ab1d4 nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd2513081 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd2c978c4 nfs_generic_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd4608dba nfs_destroy_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd5669acf nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd577a235 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd6a8f5fd nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd843be37 unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd8a6fd1b nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe15f96bc nfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe4a8648f nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe4e48a08 nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe70ccb13 nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeb584d6f nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xedf216a9 nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xee08d0de nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf0622592 nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf1037b74 nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf2552907 nfs_readdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf29a9d49 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf49741cd nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf51cd85a nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf6345486 nfs_initiate_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf635d40f nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfaa431a5 nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb7ee006 nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc5375b5 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfd20ca7f nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfe6c93ad nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x04eb493f nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x07b390fd pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0ef5199c nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x12070306 _pnfs_return_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x126c9fd1 nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x160d06a1 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x170f3ed6 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1863fc2e pnfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1fa65097 pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x23d08c80 nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2bce5ad9 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2f081e88 pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3f29f56f nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x40536a5a __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x44fcd5a8 pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x493f3401 nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4fafda35 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4fd1aaeb nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5202c0da nfs41_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5dd7bd72 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x636a1ef5 nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6ad586a6 pnfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6bc401fb pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6cb07b5e pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x76a9fb7c nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7a85375e nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7ba5bdfd __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7ffd77e1 pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x88fd5e23 nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8fbf2052 nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x984ee1be pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9bd44e34 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xaa41d218 pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xba7eb28f nfs4_proc_getdevicelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc1fa4206 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc4425a4c __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcf2b3fcd pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd17cf77b nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdcf6c4c2 nfs4_insert_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xde4eb000 pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe2a09089 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf55d6629 nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf6def784 nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x675da889 nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x9843c642 nfsacl_decode +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x0193505f o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x0d7ab5ab o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1d747ce3 o2hb_check_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36418553 o2net_send_message +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36a28a9e o2net_send_message_vec +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x378c35d3 o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4132e7c5 o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x81a17396 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x972f2699 o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x9e5941aa o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa82a8645 o2nm_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xae808bac o2net_register_handler +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xbaeb4700 o2hb_check_node_heartbeating_from_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc3679d7b o2hb_get_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd60f2c6c o2hb_check_local_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd95359c9 o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf1a5611d o2net_unregister_handler_list +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf56c2017 mlog_not_bits +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x317cb33c dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x5309621c dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x6cb9bef1 dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xb63e8a51 dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd7ba575e dlm_errmsg +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd88c5fa7 dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd8fa57a6 dlm_unregister_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xdd733aba dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xfb86b96f dlm_errname +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x025e2d69 ocfs2_cluster_connect_agnostic +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x0562c415 ocfs2_cluster_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x16b2e575 ocfs2_dlm_unlock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5469ce31 ocfs2_dlm_lvb_valid +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x68f97c58 ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x6e7b8639 ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x7083dbd5 ocfs2_dlm_dump_lksb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x8451c6ee ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x89502fe7 ocfs2_cluster_connect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xb4bd060c ocfs2_dlm_lock_status +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbbc4ef97 ocfs2_stack_supports_plocks +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xdc823ea4 ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe2bd47db ocfs2_dlm_lock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe40cffce ocfs2_stack_glue_set_max_proto_version +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe417d940 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL lib/bch 0x231d70fc encode_bch +EXPORT_SYMBOL_GPL lib/bch 0x6b770f49 decode_bch +EXPORT_SYMBOL_GPL lib/bch 0x9463ff71 init_bch +EXPORT_SYMBOL_GPL lib/bch 0xbdf512de free_bch +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x09f54524 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0xa2883211 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x1803a6ed raid6_2data_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0xe4b051cf raid6_datap_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0xfdfcb8cb raid6_call +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x201d8ea3 encode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x29fa419f decode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x300d7e57 free_rs +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x6fbb3bd9 init_rs_non_canonical +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xabda1e2e decode_rs16 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xb050f329 init_rs +EXPORT_SYMBOL_GPL net/802/garp 0x0461a784 garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0x3edef67c garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0x5c11631f garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x77033256 garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0x7d70e47c garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0xb1c318cf garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x18b1f3f7 mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0x2cd8e5c3 mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x427e5463 mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x74fc1886 mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xed612362 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xff95acd1 mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/stp 0x383dc2ed stp_proto_unregister +EXPORT_SYMBOL_GPL net/802/stp 0xe94c9a9b stp_proto_register +EXPORT_SYMBOL_GPL net/9p/9pnet 0x022113f2 p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/9p/9pnet 0x6703f215 p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/atm/atm 0xb09faf79 register_atmdevice_notifier +EXPORT_SYMBOL_GPL net/atm/atm 0xcfb6a3da unregister_atmdevice_notifier +EXPORT_SYMBOL_GPL net/ax25/ax25 0x1c06862f ax25_register_pid +EXPORT_SYMBOL_GPL net/ax25/ax25 0xac93ae05 ax25_bcast +EXPORT_SYMBOL_GPL net/ax25/ax25 0xaeb7451e ax25_defaddr +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xb2e64f6c bt_debugfs +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0bd85eae dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1038ebc4 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1d99d49a dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2e3af044 dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2fac64d7 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x320ecf8c dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3d8dbe2a dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x45e22ee9 dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x47c46e10 dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0x492cabcf dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4d96da61 dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4e330f7a dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4ec35231 dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4eecf368 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0x511ff1fb dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x580b8698 dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5e6696e3 dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x64e8ebe0 dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0x65fbdf8c dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0x71ac1ca8 dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8204e549 dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8d5bc859 dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0x92dd781d dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa2a71b67 dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa59bb0f8 compat_dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xaa1a9185 dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0xad84e7b2 dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xae5b2d7a dccp_insert_option_elapsed_time +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbec524fb dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcd93e694 dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcf48e22b dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd09a3fe5 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd4470c03 dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd7cfcd21 dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd89016ad compat_dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdd5d2eeb dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe75228bb dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf259e6b5 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf2d6a0c5 dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf3017e21 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x16aec196 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x5901e56d dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x679ae3a2 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xa3bf2c6c dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xc8e6c7c4 dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xd2c3e2ac dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x0d437adc unregister_switch_driver +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x148148d9 register_switch_driver +EXPORT_SYMBOL_GPL net/ipv4/gre 0x68cf2ba9 gre_build_header +EXPORT_SYMBOL_GPL net/ipv4/gre 0x878199dd gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0x9426e6a7 gre_cisco_register +EXPORT_SYMBOL_GPL net/ipv4/gre 0xe9b4459d gre_cisco_unregister +EXPORT_SYMBOL_GPL net/ipv4/gre 0xeee9e9db gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x421bfda2 inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x70ddacce inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x79577eee inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x9c4a39d2 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x9cfec063 inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xb3181267 inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x0bb06966 ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x21da4aa8 ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x3c2125a6 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x5335c9d5 ip_tunnel_delete_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x85228a3e ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x9d7f1af5 ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa975f8ae ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xbdcacd3f ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xca1e2566 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe5ae779f ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe93171dc ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xec1576f4 ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xf75449d1 ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xf778338b ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0xe71ac4d2 arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0x4e6c75d6 ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_conntrack_ipv4 0x6d40a921 need_ipv4_conntrack +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x6b6c3d10 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_ipv4 0x75f94e11 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_proto_gre 0x636b12c8 nf_nat_need_gre +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x3cb782ac tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x98341104 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x98ae2415 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xbb3c2c36 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xfe168696 tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0x4176df7b xfrm4_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0x8bc48679 xfrm4_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x2ddcf1bc ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x42bca452 ip6_tnl_dst_check +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x83103de0 ip6_tnl_dst_reset +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xce0b223d ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xd1860f2d ip6_tnl_dst_store +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0x94c80c86 ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x6eb85693 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_nat_ipv6 0x09da77aa nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0x4902bbbf xfrm6_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0xbe1bbaef xfrm6_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x00a44b51 l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x040dc7f8 l2tp_tunnel_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x21472d2b __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x3cea761a l2tp_tunnel_sock_lookup +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x3f65a03b l2tp_tunnel_closeall +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x684c15fb l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x69c11fa3 l2tp_tunnel_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x6db92419 l2tp_session_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7b02851b l2tp_session_queue_purge +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x95702a0a l2tp_tunnel_sock_put +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x9c38f808 l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa3158b3a l2tp_session_find_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb0120fbc l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb73034c9 l2tp_session_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb7e0e4ff l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc52cb3d9 l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xeb4eeb72 l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x4ebcd89c l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x012bd560 ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x023a0aca ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x0d3a2ee1 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x154d346d ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3663a36d ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3c3e4fe6 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4bf42798 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4edf0250 ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5d38f601 ieee80211_set_key_tx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x7158cbd1 ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x85dc76de ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x8dd23511 ieee80211_iterate_active_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa909b232 ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xac748a22 ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd0218f1b ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x0a349394 ip_set_nfnl_get +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x12ae972a ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x438b26c3 ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x4d1ebbb9 ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x59272495 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x608527a1 ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7512dc89 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9c3cd637 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa2d623f3 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa57694f2 ip_set_get_ip_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa763688d ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xaf81bf53 ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc41b7ea7 ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc9d6dc22 ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xd01501c7 ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xef13ebbe ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf3b4d4ae ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xfa931893 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xfdfc317e ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x478dccc6 ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x52150ce2 unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x8e73fb1b register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x9591d29a ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x001719af nf_ct_l4proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01f84db5 nf_conntrack_set_hashsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x045072cd nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x09345319 nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x097eb40d __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0b307fa2 nf_ct_l3proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x10e600bc nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x12873bb3 nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x149856e9 nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1607eee0 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1715200c nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x180d453e nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1dea8dcb nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x218ff24b __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289c3714 nf_ct_alloc_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2907846b nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x29db6e96 nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x29df5a6b nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2c1242d0 nf_ct_l4proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2c86d102 nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2e8aefcd nf_nat_seq_adjust_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x34d7ea27 nf_ct_l3proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x37386cac nf_conntrack_hash_rnd +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x390c9626 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3ab728f1 nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3d87a698 nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3f5b1415 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x444f68f2 nf_ct_l3protos +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x449518f9 nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4a4d52ec nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5d3d9efc nf_ct_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5ef2d5b2 nf_ct_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x60e8183c nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62813e5c nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6be82de5 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6c3417da nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6e224a7a need_conntrack +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x71391d3d nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x75fe36ab nf_ct_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x78f9b710 nf_ct_l3proto_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7d345354 nfnetlink_parse_nat_setup_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7e0d9dda nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8054cd15 nf_ct_l4proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x90ff6c9f nf_ct_invert_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9278d08b nf_ct_l4proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x92d0d235 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x93c9d456 nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x99eebee6 nf_conntrack_l4proto_udp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9a714af2 __nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9fe2baeb __nf_conntrack_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa5bcfde3 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa666a920 nf_ct_iterate_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa6c93951 nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa7b86678 nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa7bc5318 nf_ct_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab3d1f95 nf_ct_untracked_status_or +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xabd8dc64 nf_conntrack_l4proto_udp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad1bb027 nf_ct_free_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaec97ace nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb5b29261 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb602c57e nf_ct_l3proto_module_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb788fdff __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbc69227d nf_ct_get_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbd334576 nf_ct_l3proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbfa0d7f1 nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc04437c0 nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc92504e2 nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcad70dec nf_conntrack_l4proto_tcp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcbbb292c nf_connlabel_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcbdd6c9d nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcc42c0d0 nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xce8b658f nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd093c1bb nf_ct_l3proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd143b548 nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd1620e79 nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd451e18a nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xddb6c3c3 nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdedbd421 seq_print_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdfd1704b __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe073360b nf_conntrack_l3proto_generic +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe1c732c7 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe2c9e3bb nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe64c45d3 nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe68ec87e __nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xea5c14de nf_connlabel_match +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf8e16f6e nf_conntrack_l4proto_tcp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfa03afff nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfb4041cd nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfbed6727 nf_conntrack_flush_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfbf36490 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x1ce20235 nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0xcc9aa5fd nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0xaaa5a2ed nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x3f5723af nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x4992961c nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x6176c949 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x752aada3 nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x85ce0b72 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x9524dfc6 nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xb6ac6913 nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xc93b3217 set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xcca28498 set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xebadd265 set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0x849babf1 nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x1b75927d nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x282d419b nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x31bd08d2 nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x621f42a1 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x8469e041 nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0xcc992123 nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x5764d115 nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x66c2cf9d ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x6b1b6bab ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x7ba25e8a ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x89e3d064 ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xf58efd2e ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xff945dc1 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0x94accb67 nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0xc795e10e nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0d9bae4b nf_nat_l4proto_nlattr_to_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0f12bf7c nf_nat_l4proto_unique_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x131f636c nf_nat_l4proto_in_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x1faeb9bb nf_nat_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x5254e313 __nf_nat_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x5c1b7997 nf_nat_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x666cc84a nf_nat_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x7755242e nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xea990d70 nf_nat_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xf5bcfbaa nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x11a006b5 synproxy_check_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x8841d39b synproxy_build_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x90298227 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb42e336a synproxy_options_size +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xe87c2ea2 synproxy_tstamp_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xef7db50c synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xfe5186a3 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0b15fc74 nft_do_chain_pktinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0fda3c99 nft_validate_output_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x38029b16 nft_register_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3d49dab7 nft_validate_input_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5385001e nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x82bacabe nft_validate_data_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x917e6f90 nft_unregister_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x92de79c4 nft_register_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa10cce6c nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xaed9003a nft_data_uninit +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbdb24347 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc4eee877 nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc6e35073 nft_unregister_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xcf229b11 nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf6abfbb5 nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x1c461380 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x2a7ac707 nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x6b915052 nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x8ba5539c nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xcd521632 nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xe24d77da nfnetlink_alloc_skb +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xf4324370 nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x21f6bba6 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xb46efabf nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_log 0x9f29c98a nfulnl_log_packet +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x161d1417 xt_compat_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x194fa98e xt_compat_target_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x22bbd5cf xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x40728a63 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x449ae0d3 xt_compat_target_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4704ccac xt_compat_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4bef0405 xt_hook_link +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4e08cba8 xt_compat_match_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x553fe1e7 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5f82f1f7 xt_compat_flush_offsets +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x606ca596 xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x62457d8a xt_hook_unlink +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x691a6d69 xt_compat_calc_jump +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x6dfd6991 xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x749b2d4a xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x7598411b xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x7a4dc8a0 xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x7cb890b8 xt_compat_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x807d2b2c xt_recseq +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x90d16b62 xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9d0b83cf xt_compat_match_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc80faf0a xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe0b4971b xt_compat_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe18dfeb6 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xec24fd82 xt_compat_add_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xfdf8ec6b xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0xe9ef9dd0 xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0xf156a7fd xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x43ca5a15 nci_spi_send +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x9421e0e2 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0xeac7359e nci_spi_read +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x099e3769 rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0x0e6f4148 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x13d139da rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0x16cc27c0 rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0x16dba248 rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0x194edc3a rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x2c5c5514 rds_message_add_rdma_dest_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3101936e rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x32ba3bbf rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0x3b4fc0fc rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x3deefee9 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x4372501b rds_page_copy_user +EXPORT_SYMBOL_GPL net/rds/rds 0x466257cf rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0x50cbe7b3 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x64ce4590 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0x73aac73d rds_message_populate_header +EXPORT_SYMBOL_GPL net/rds/rds 0x7bc62829 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x7de64752 rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0xac92dff9 rds_send_get_message +EXPORT_SYMBOL_GPL net/rds/rds 0xb0ac1375 rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0xbc3d8e2c rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0xbdc786ac rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc4baa149 rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xc7c03192 rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0xccc489ab rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0xd5140386 rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0xdc5f2e84 rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xe3df2c5a rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0xf6d134fb rds_recv_incoming +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0x801a9484 rxrpc_register_security +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0xe74fd03f rxrpc_unregister_security +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x00c52ef5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x31137d2e gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x716ba106 gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x8d1a827e svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xad725df5 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xb5dea7ef g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xf8b2ff6e g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x01b3fd19 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x045834e9 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x08a4d2e5 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b741662 rpc_lookup_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b919dd7 xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0bc57845 svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c0663e3 xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c303fe6 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0e265e77 rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f668ba9 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x12f419c6 rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x157f1fed rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x159ce61c xdr_buf_read_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x15e8e2cb svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x16c80eb9 auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x16d47631 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x179511b7 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1806e69e svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x197125fd rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x19cd3ab5 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1b0f5b1c read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1b74225e rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1d46d4d1 xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f2a9970 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x206998fd svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2380a597 svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23edfd40 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x24b0d4e6 rpc_task_reset_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2556fc0e rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x256853f4 xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x260f7088 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x260fbbfd rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x27c2380c svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2a7476d0 rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2b17d010 xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2b67e115 xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2da90626 sunrpc_cache_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2ee21941 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eec63c9 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x30fac499 xdr_skb_read_bits +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x313bd0be rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x316a5629 svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31f0e4f9 xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34b691e2 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x363e3995 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36da0e66 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36e876e5 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x370a3e74 rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a911999 bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3bbcc858 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3dfe8c44 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x41ec411f rpc_print_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x43ff0e2b svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x460368a8 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4800df0c svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d3d7c07 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x52258d79 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x52956b8e svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x56c886a5 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x57468b9a rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x57b8c209 xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x58a17a0e xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x59e521a6 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a722e4b svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5b15eca3 cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5b732080 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5d5eee07 rpc_protocol +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5d61239e rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5fa75597 svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60595c12 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60c184f6 svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x610927c2 svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x61d1d73a rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x624befd9 rpc_lookup_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x64b372ba xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x655b1328 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x66e7cd50 rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x67af247f rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x68b43932 sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6b781a08 write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6bd2a659 svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x73599b03 rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x74be2cac xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7655d41a xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x79514d5a svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x79901de4 rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7a0011d8 rpcauth_generic_bind_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7c050e8d rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7d48f65c xdr_partial_copy_from_skb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7d839ba6 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7def4f96 rpc_get_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7e388bc5 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7eb28700 svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80624863 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80951b28 rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x854160e2 rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x854b79bf xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x88ec893c xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x89f79d48 xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8ba6ac95 sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8bb0d5b3 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8be4a749 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8d156dcc svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8d2ab9a1 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8f47528a __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x90ef9716 xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x928f034a xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x94b20c59 rpcauth_key_timeout_notify +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x94bab6cd xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x96b5a0b6 xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x971ba767 rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x974bb80c xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x987f5d37 rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98b75d64 rpcauth_list_flavors +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9989d98b rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9a6257eb cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9c410b3a svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9c69fc70 rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9fcdd926 rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa392c66a rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa5bbfdc6 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa6352044 rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa6f92587 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa7bb5985 rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa9cd7929 svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa2ecd5b xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xab283385 rpc_rmdir +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xab348d33 svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xab579d7f rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xab5c201c rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xac2bfb63 xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaca3dffe rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xacf560cd rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xad6857d7 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xafd828f0 svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb1103b82 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb1860118 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb1dd8881 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb2949a89 rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb373743b cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb399229a xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb63e505f put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb6fe3908 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb7dcbf3f unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb88afdd2 sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb91f40d7 svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbbffc196 xprt_set_retrans_timeout_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbc8e02d9 rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbc971887 rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbd2d92c1 svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbd61b5be xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbe4893a2 xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc04caacd svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3585bbc rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3880471 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc6a8afb6 rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc706a241 svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc736c327 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcbd44aa9 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcc7f3460 xprt_set_retrans_timeout_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd1fb38a6 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd2fdd0ed rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd346f31c svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd5ed316d rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd7857968 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd7bd853c svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdaef67bc auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdef77838 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe0c1b9ec rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1a4d6db svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1ac2bb8 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1b397a1 xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe232df7f rpcauth_cred_key_to_expire +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe305b262 xprt_lock_and_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe56ebf0f svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe67d8437 svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe6dcf54e xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe85f1cf0 rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe86a0b86 xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeb6a45f3 xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xec566dbd xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xee2df3c4 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeedb07fd rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeedfc9c0 rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeffb6546 rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf370b23a rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf57abd2f xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf5a7bb76 xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf6549a8a sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9d1164c rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfa9b9246 rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfd11d553 _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe9a3133 xs_swapper +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xff6429e4 svc_reserve +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x05a65066 __vsock_create +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x05c72b58 vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0c79d5ef vm_sockets_get_local_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x15c0c57c vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x3771f99c vsock_core_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x44c3c2c7 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x4beb4d21 vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x4f28485b vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x59d943c8 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7f730c80 vsock_core_exit +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7fa5a879 vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x970b77bc vsock_pending_work +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x97598ecc vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xa16ed9f8 vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb06102d4 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc42585b2 vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xef09afb5 vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf7390020 vsock_stream_has_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0x104424e1 wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0x22bcac0d wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0x294c9b43 wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0x3c7c7bf6 wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x44e3950a wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0x73208e37 wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0x81d52a84 wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0x8f317596 wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x91491679 wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0x9b91bb71 wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xb365f639 wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0xcfa353dd wimax_msg_send +EXPORT_SYMBOL_GPL net/wimax/wimax 0xd0fe9086 wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x1ae03db7 cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x3caa147a cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x3cd37b4e cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x3eec91f8 cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x478e2be5 cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x4c73c409 cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x72672c08 cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x975bc244 cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xa1435007 cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xa5a22786 cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xfdf2b6c3 cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x00778770 xfrm_ealg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x056bb269 xfrm_ealg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0a575945 xfrm_count_pfkey_auth_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0b9e5852 xfrm_aead_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x28e23139 xfrm_probe_algs +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x74e1a843 xfrm_aalg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7a8ca627 xfrm_count_pfkey_enc_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7c30b8c7 xfrm_calg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x92dbc6c1 xfrm_aalg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xbc8b0f41 xfrm_calg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xce7a55c1 xfrm_ealg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xe122af95 xfrm_aalg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x22154425 ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x767831c9 ipcomp_destroy +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xa84fba65 ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xe6545082 ipcomp_output +EXPORT_SYMBOL_GPL vmlinux 0x00000000 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x00000000 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x00000000 compat_alloc_user_space +EXPORT_SYMBOL_GPL vmlinux 0x00000000 kern_mount_data +EXPORT_SYMBOL_GPL vmlinux 0x00000000 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x00000000 sigset_from_compat +EXPORT_SYMBOL_GPL vmlinux 0x00000000 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x0022229c tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x0030c731 pci_restore_ats_state +EXPORT_SYMBOL_GPL vmlinux 0x004cb52f get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0x006bc072 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x009304b6 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x00c4dc87 timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x00ebcb5d ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0x01010c6d klist_add_before +EXPORT_SYMBOL_GPL vmlinux 0x01039f13 md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x0110630a sec_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x01179998 __inet_hash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x011b00ec crypto_lookup_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x011cf028 regulator_suspend_finish +EXPORT_SYMBOL_GPL vmlinux 0x011fadc3 hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x015cd58c adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x01763fd2 hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x0199e01d each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x01a5b678 elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x01b27bb2 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x01d37d3e kvm_get_dirty_log +EXPORT_SYMBOL_GPL vmlinux 0x01da9689 percpu_ida_free +EXPORT_SYMBOL_GPL vmlinux 0x01dcac71 pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0x01ed2ed2 sysfs_get +EXPORT_SYMBOL_GPL vmlinux 0x0204de3b crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x021757c3 css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x021ed3bf kallsyms_on_each_symbol +EXPORT_SYMBOL_GPL vmlinux 0x0242f756 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0x0267e0e4 skcipher_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x02690700 system_trusted_keyring +EXPORT_SYMBOL_GPL vmlinux 0x02afc69d tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x02d440eb __inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0x03364561 sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x0345555a ioremap_page_range +EXPORT_SYMBOL_GPL vmlinux 0x0396e920 remove_irq +EXPORT_SYMBOL_GPL vmlinux 0x03e3686c ata_timing_cycle2mode +EXPORT_SYMBOL_GPL vmlinux 0x03f657e0 inet_csk_compat_setsockopt +EXPORT_SYMBOL_GPL vmlinux 0x0419640f dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x04486e88 rcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x045b452f of_clk_get_parent_count +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x04c3f2c1 gnttab_empty_grant_references +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04df8fbc lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0x04e007b8 device_reset +EXPORT_SYMBOL_GPL vmlinux 0x053494cb tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0x0536fbe3 devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x0551f0ce tick_nohz_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x057a1c15 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x05a43460 generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0x05bd7bff console_drivers +EXPORT_SYMBOL_GPL vmlinux 0x05c0a571 crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0x05cfdee3 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x05deeec6 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x05e1b657 virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0x061b6ca9 tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x062fc169 xen_hvm_resume_frames +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x065b349d crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x06683ae8 percpu_ida_for_each_free +EXPORT_SYMBOL_GPL vmlinux 0x06b28147 regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x071e043b shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x07575f1b extcon_get_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x077de300 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07f300c3 smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x07fafba7 perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x081554dc inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0x082281d1 alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0x0836cece regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0x0837e8f7 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x0848e354 disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x086cd0ce wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0x08835136 tcp_init_congestion_ops +EXPORT_SYMBOL_GPL vmlinux 0x088bfa7e cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x0897a88c debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0x08a8296b crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x08bc0870 compat_put_timespec +EXPORT_SYMBOL_GPL vmlinux 0x08e52790 hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0x0912ee73 ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x09313cbe ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x09437748 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x09469482 kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x098851a7 inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x09b782b8 blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x09e1e342 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x09e7ffda ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0x09ed1227 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0x0a351006 mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0x0a353e43 extcon_find_cable_index +EXPORT_SYMBOL_GPL vmlinux 0x0a4ae4b2 hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x0a6fe419 vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x0a7b94bf crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0x0a86b07e __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x0a880133 debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0x0a8812f1 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0x0a897211 unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x0a8d03d9 cred_to_ucred +EXPORT_SYMBOL_GPL vmlinux 0x0a9fd3c5 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x0aeaa72c pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0x0af5b136 debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0x0afb66cf tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b0813eb pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x0b88f51b devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0x0bae62b1 ktime_get_monotonic_offset +EXPORT_SYMBOL_GPL vmlinux 0x0be81e88 clk_register_mux +EXPORT_SYMBOL_GPL vmlinux 0x0bf1395d __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0bfa3a19 rcu_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x0bfcd365 seq_open_net +EXPORT_SYMBOL_GPL vmlinux 0x0c0bd00a rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0x0c2cdbf1 synchronize_sched +EXPORT_SYMBOL_GPL vmlinux 0x0c313696 ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x0c351355 blk_queue_bypass_start +EXPORT_SYMBOL_GPL vmlinux 0x0c547ab6 anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x0c8a78c9 tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0x0cc1e40f crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x0ccbe967 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x0d093564 xen_swiotlb_set_dma_mask +EXPORT_SYMBOL_GPL vmlinux 0x0d237c8a pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x0d7639ce ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x0dae5904 regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x0dae9661 wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x0db82245 do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x0dba9130 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0de02b7d list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x0ded187a regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x0e031be6 xen_swiotlb_dma_supported +EXPORT_SYMBOL_GPL vmlinux 0x0e062045 elv_register +EXPORT_SYMBOL_GPL vmlinux 0x0e0b3161 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0e21eb3a dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x0e53a212 __rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x0e68a2af crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x0e6b8dc8 pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0x0e77469f devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x0e8d9a72 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0x0ed9302e percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x0ef10052 tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0x0f001947 crypto_init_spawn +EXPORT_SYMBOL_GPL vmlinux 0x0f13bb57 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x0f1ddf4b __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x0f1fb3d8 blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0x0f28a72e ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0x0f2f47cc devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x0f3d4869 fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x0f52086c ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x0f6c4a37 irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x0f72207d smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x0f751aea input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0x0f8f1f68 __pci_complete_power_transition +EXPORT_SYMBOL_GPL vmlinux 0x0fb698b6 hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x0fe112dc of_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x0fe2d570 xenbus_directory +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x10947d31 gpio_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x10a402de tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x10fe93e8 driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x11212cad fuse_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0x11430890 platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x115a041a pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x116280f9 fuse_request_send_background +EXPORT_SYMBOL_GPL vmlinux 0x1172ce54 rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0x119339ae kvm_read_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x11e186c4 wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x11ec77b0 irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x1200396b platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0x1204fe15 rtc_irq_set_state +EXPORT_SYMBOL_GPL vmlinux 0x1205962e debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0x121cd964 of_pci_range_parser_one +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x121ed3f3 add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0x1235950f alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x123ec43f d_materialise_unique +EXPORT_SYMBOL_GPL vmlinux 0x124f2056 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x1252f519 reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x12551881 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0x12658f5a __percpu_ida_init +EXPORT_SYMBOL_GPL vmlinux 0x1283ec82 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x129efa96 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x12a9a247 bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0x12e6caf7 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x12f0c30b ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0x12f97ba2 pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x131865f6 crypto_ablkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x13541789 tpm_gen_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x1370a34c ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x137926ae xenbus_map_ring +EXPORT_SYMBOL_GPL vmlinux 0x138aff76 gnttab_init +EXPORT_SYMBOL_GPL vmlinux 0x13921363 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x13ad647f scatterwalk_bytes_sglen +EXPORT_SYMBOL_GPL vmlinux 0x13b1515e pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0x13c38159 split_page +EXPORT_SYMBOL_GPL vmlinux 0x13c3bb4a crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0x13cdfa4f pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x13ce87e8 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0x13f77fcf sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0x1416c8d6 put_compat_timeval +EXPORT_SYMBOL_GPL vmlinux 0x1425ca0c vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0x142a8be4 of_clk_get_parent_name +EXPORT_SYMBOL_GPL vmlinux 0x1432e91d get_device +EXPORT_SYMBOL_GPL vmlinux 0x1438500c dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0x148168ef cgroup_add_cftypes +EXPORT_SYMBOL_GPL vmlinux 0x14941943 crypto_larval_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1498fe70 dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x14a69c90 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x14ca994f wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0x14f875ce devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x15026a32 snmp_mib_init +EXPORT_SYMBOL_GPL vmlinux 0x1506ac50 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0x155cd2c8 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x15884362 tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0x15892417 async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x15a3579c sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0x15ef54c7 spi_async +EXPORT_SYMBOL_GPL vmlinux 0x16000a3c dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x163219cc invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0x1650bf27 rcutorture_record_progress +EXPORT_SYMBOL_GPL vmlinux 0x16837e7b __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0x1689a466 xen_swiotlb_map_sg_attrs +EXPORT_SYMBOL_GPL vmlinux 0x169a4636 spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x169b2c71 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x16bd7412 register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x16c0bcea irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0x1718ee09 wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x1724079f blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x174cbbfd ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0x174d4604 n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0x1753a32f hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0x178b693c of_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x179f0750 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0x17a17e37 __mmu_notifier_invalidate_range_start +EXPORT_SYMBOL_GPL vmlinux 0x17f0a071 mark_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x1809afd2 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0x180e510d tpm_store_cancel +EXPORT_SYMBOL_GPL vmlinux 0x18162e0d preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x1853653c btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1866cec2 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x186f7c10 blkg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1889eaf3 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x18ac38b7 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0x18b4f934 regmap_fields_write +EXPORT_SYMBOL_GPL vmlinux 0x18d70533 xfrm_inner_extract_output +EXPORT_SYMBOL_GPL vmlinux 0x18f83fab gnttab_grant_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0x19311cf3 phy_put +EXPORT_SYMBOL_GPL vmlinux 0x193d48e0 trace_current_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x1946be9a ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x194dd5f5 pkey_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x19615370 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x19672daa relay_close +EXPORT_SYMBOL_GPL vmlinux 0x19b384a5 hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x1a077a2e fuse_conn_kill +EXPORT_SYMBOL_GPL vmlinux 0x1a082d69 max77693_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x1a23c7e4 locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0x1a323362 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x1a659ce6 kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL vmlinux 0x1a65a974 crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0x1acef7d2 pm_freezing +EXPORT_SYMBOL_GPL vmlinux 0x1ad83009 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0x1adeaced ping_proc_register +EXPORT_SYMBOL_GPL vmlinux 0x1b18a873 page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0x1b2c4dc7 amba_apb_device_add +EXPORT_SYMBOL_GPL vmlinux 0x1b4a5c8b gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x1b7e2667 i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x1b8c9b5e tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x1b998f35 rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x1b999e73 regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x1bbe39a0 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x1bc07373 __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0x1bc6a94f swiotlb_tbl_unmap_single +EXPORT_SYMBOL_GPL vmlinux 0x1be874fd raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x1c180afa sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0x1c1c4194 sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0x1c2de6e3 virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0x1c3215a4 ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x1c4f5199 add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c650580 devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c865bfc xenbus_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1cce0db7 alarm_init +EXPORT_SYMBOL_GPL vmlinux 0x1cdb2147 zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0x1cfe78d1 kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL vmlinux 0x1d2af32e tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0x1d58ae14 lpddr2_jedec_timings +EXPORT_SYMBOL_GPL vmlinux 0x1d698b9a find_symbol +EXPORT_SYMBOL_GPL vmlinux 0x1d6a0420 modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x1d739e1c xen_set_callback_via +EXPORT_SYMBOL_GPL vmlinux 0x1d76174d vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d7ef976 aead_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0x1d80c4eb rtc_irq_register +EXPORT_SYMBOL_GPL vmlinux 0x1da2c8c0 raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x1da44952 sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x1db7613a xenbus_dev_probe +EXPORT_SYMBOL_GPL vmlinux 0x1dd74224 sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0x1de054d5 of_clk_del_provider +EXPORT_SYMBOL_GPL vmlinux 0x1e3a88fb trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x1e45a805 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1e539c14 ping_seq_fops +EXPORT_SYMBOL_GPL vmlinux 0x1e5b03dc pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e83fee6 HYPERVISOR_physdev_op +EXPORT_SYMBOL_GPL vmlinux 0x1e8b29b9 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x1e963cc8 tcp_done +EXPORT_SYMBOL_GPL vmlinux 0x1e977182 pci_sriov_migration +EXPORT_SYMBOL_GPL vmlinux 0x1eb1594f gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1eb98c93 ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ec4c14a spi_alloc_master +EXPORT_SYMBOL_GPL vmlinux 0x1f09df14 ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x1f52aec9 replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0x1f5efd20 sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0x1f7ff212 spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x1f841d16 max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f89db31 adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0x1f8db7f9 ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x1f96017f devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0x1fa3271e fuse_get_req_for_background +EXPORT_SYMBOL_GPL vmlinux 0x1fcece42 inet_twdr_twcal_tick +EXPORT_SYMBOL_GPL vmlinux 0x2017dff1 extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x202ceae8 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x20bc3470 orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x20ca1376 __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x20de5193 kvm_disable_largepages +EXPORT_SYMBOL_GPL vmlinux 0x20ef581a ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0x20f9ca3b fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0x20fc644d led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x211f97b7 power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0x212ff510 ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0x21460dc4 arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0x214e3a69 devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x2151e31a sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0x21c5d0e0 crypto_unregister_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x22008df8 crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0x2209a536 disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0x2237a764 xenbus_dev_fatal +EXPORT_SYMBOL_GPL vmlinux 0x2244ed46 da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0x224c975e smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x2255af71 pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x22709979 nl_table +EXPORT_SYMBOL_GPL vmlinux 0x2296c00d crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x23269036 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0x23561857 raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0x236e4ea9 ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0x23703e36 klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x2384b52b devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x23b797db btree_last +EXPORT_SYMBOL_GPL vmlinux 0x24011e14 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x241c19bb wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x2435705a devm_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x2438b701 irq_find_host +EXPORT_SYMBOL_GPL vmlinux 0x243ec332 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0x2447533c ktime_get_real +EXPORT_SYMBOL_GPL vmlinux 0x245394b6 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0x24aac4d9 crypto_aes_expand_key +EXPORT_SYMBOL_GPL vmlinux 0x24c607d3 driver_find +EXPORT_SYMBOL_GPL vmlinux 0x24c7698a xenbus_write +EXPORT_SYMBOL_GPL vmlinux 0x24d8e3b5 crypto_alloc_instance +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x2528b92b crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0x2545c170 unregister_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0x254771ef devm_phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0x2556c831 md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x25602067 subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x2575e624 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x257d8b23 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0x258aac9f crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x259b4cc1 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0x25a3be13 phy_power_off +EXPORT_SYMBOL_GPL vmlinux 0x25bee3cf tpm_show_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x25cb6406 unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x25d33639 tpm_show_enabled +EXPORT_SYMBOL_GPL vmlinux 0x25d5d2ec PageHuge +EXPORT_SYMBOL_GPL vmlinux 0x25d88481 regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x25e0cbdb mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x25f7f353 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x262f20a8 local_clock +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x2675a2e9 led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0x267aa539 xen_swiotlb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x26800fd5 fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0x2682c686 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0x26aff26c preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x26b71fb4 ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x26bb0189 tpm_show_temp_deactivated +EXPORT_SYMBOL_GPL vmlinux 0x26bd9027 extcon_get_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26e4b697 stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0x26f653c3 init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL vmlinux 0x271047d2 crypto_init_ahash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x27174dd7 init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x2735cfc8 pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x273de4d5 regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x2746373b platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0x275e0d61 stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x276bedd2 gnttab_map_refs +EXPORT_SYMBOL_GPL vmlinux 0x2780d788 ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x27842139 sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x27c0c4be eventfd_ctx_read +EXPORT_SYMBOL_GPL vmlinux 0x27c1e63f usb_amd_find_chipset_info +EXPORT_SYMBOL_GPL vmlinux 0x27c222f8 pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x27cedd13 virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0x27d7ff1d wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x2800f596 ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0x2812d6ed devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0x28527158 regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x28a903c8 timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x28b8ab17 xen_swiotlb_sync_single_for_cpu +EXPORT_SYMBOL_GPL vmlinux 0x28cec39a irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x29149779 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x29210567 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0x29480445 tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0x295615a1 device_create_vargs +EXPORT_SYMBOL_GPL vmlinux 0x295c8b67 debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0x296a4f0c fat_scan +EXPORT_SYMBOL_GPL vmlinux 0x297b442b tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x29811b2c device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x29cc38e8 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x2a0bd145 blkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0x2a264ae5 regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x2a4ccc23 of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0x2a5ac70e i2c_lock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x2a694e1c tracepoint_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0x2a7662d2 crypto_aead_type +EXPORT_SYMBOL_GPL vmlinux 0x2a7b562e pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x2a9101bd extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2ab28a13 perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x2ad1ece4 zs_get_total_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0x2ae13963 cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x2aee27df srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x2b4002eb kvm_write_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x2b462509 crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x2b53f043 regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x2b6c2462 irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x2b7a6de8 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2bbdb293 __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0x2bfaef4e clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x2c09b5c3 ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c7d9c64 xen_store_interface +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c8d1959 i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0x2c96798f kobj_completion_release +EXPORT_SYMBOL_GPL vmlinux 0x2cc6992b regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x2ce8f28c regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0x2ce98559 kcrypto_wq +EXPORT_SYMBOL_GPL vmlinux 0x2cfb50a4 eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0x2d000f85 sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x2d101d8f regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x2d17a0e1 cgroup_taskset_size +EXPORT_SYMBOL_GPL vmlinux 0x2d18ac7f tpm_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d356081 fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d42e4b6 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2d470ef9 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0x2d641fb0 reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x2d9b9f19 blkdev_aio_write +EXPORT_SYMBOL_GPL vmlinux 0x2db71a23 sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x2dba276a __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x2dca7968 regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0x2dd388d4 fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0x2e1da9fb probe_kernel_read +EXPORT_SYMBOL_GPL vmlinux 0x2e219f4c ftrace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x2e26d3d5 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0x2e2ec045 sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0x2e2f1740 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2e45e488 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x2e9670c0 pl320_ipc_transmit +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2efb2f50 css_next_child +EXPORT_SYMBOL_GPL vmlinux 0x2f328759 kvm_vcpu_block +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f6939d0 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0x2f747cfa dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0x2f9eacef spi_master_suspend +EXPORT_SYMBOL_GPL vmlinux 0x2fab9f5c crypto_attr_alg2 +EXPORT_SYMBOL_GPL vmlinux 0x2fbf5bea class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x2fef2aaa dma_buf_kmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x3006b6f5 of_pci_get_devfn +EXPORT_SYMBOL_GPL vmlinux 0x301deb73 blkcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0x30270b51 bsg_request_fn +EXPORT_SYMBOL_GPL vmlinux 0x302f52b3 __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x3046ad16 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0x304a09ab alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0x30543b1c bmp085_detect +EXPORT_SYMBOL_GPL vmlinux 0x3062dee8 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x306962c1 devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x30896b69 percpu_ida_free_tags +EXPORT_SYMBOL_GPL vmlinux 0x308b733a getboottime +EXPORT_SYMBOL_GPL vmlinux 0x309217a8 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x30938634 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0x30945563 ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0x30ba80e2 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x30c985c0 fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0x30ca73e5 devm_rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x30cc77e1 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0x30e00254 wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x3109b751 cpu_clock +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x3130926c sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0x313f4b39 perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0x31859993 of_irq_to_resource_table +EXPORT_SYMBOL_GPL vmlinux 0x31905479 skb_gro_receive +EXPORT_SYMBOL_GPL vmlinux 0x31a18625 __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0x31b33929 pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x31b3a9f4 bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x31b97191 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0x31c0c2d1 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x31d8405e led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x31ed3582 ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0x31f5b8c2 __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x31f9aa30 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x32034f6d wm8400_block_read +EXPORT_SYMBOL_GPL vmlinux 0x321bdbb1 compat_get_timeval +EXPORT_SYMBOL_GPL vmlinux 0x3256ca45 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x325e677c gnttab_grant_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x32604f8c devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0x3261540e ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0x328304ce gfn_to_hva +EXPORT_SYMBOL_GPL vmlinux 0x328995b5 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0x32990fa5 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0x329bbbde timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x32b31a8c ktime_get_boottime +EXPORT_SYMBOL_GPL vmlinux 0x32c2e71f mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32f5572e tpm_show_pcrs +EXPORT_SYMBOL_GPL vmlinux 0x32fd447a monotonic_to_bootbased +EXPORT_SYMBOL_GPL vmlinux 0x3310bf11 pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x33177cfe wm8400_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x331fed84 irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x333567b5 trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x336154ca rcutorture_record_test_transition +EXPORT_SYMBOL_GPL vmlinux 0x3375acb6 __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x33a94a45 of_irq_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x33bb6aff ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x33bfe87c rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0x33c9c2d6 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0x33d5696c crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x33e01ece regulator_set_optimum_mode +EXPORT_SYMBOL_GPL vmlinux 0x33f7ab15 get_compat_timespec +EXPORT_SYMBOL_GPL vmlinux 0x3424e27e regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x34472a32 user_match +EXPORT_SYMBOL_GPL vmlinux 0x344745f4 xattr_getsecurity +EXPORT_SYMBOL_GPL vmlinux 0x34560947 ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x34646590 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0x3471bd10 debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0x347fd4b3 eventfd_ctx_get +EXPORT_SYMBOL_GPL vmlinux 0x348209c4 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0x34af4395 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x34ddea55 regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x34fd24b6 alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0x352650ee gnttab_batch_map +EXPORT_SYMBOL_GPL vmlinux 0x352ea674 pci_reset_bridge_secondary_bus +EXPORT_SYMBOL_GPL vmlinux 0x353ff56d pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x359ad470 sysfs_schedule_callback +EXPORT_SYMBOL_GPL vmlinux 0x359c0716 sdhci_pci_o2_resume +EXPORT_SYMBOL_GPL vmlinux 0x35b624d5 regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x35f10f43 nfq_ct_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x35f165f1 devm_reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x35fb7a51 ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x361e2bcc save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0x3634dc31 pci_pri_status +EXPORT_SYMBOL_GPL vmlinux 0x363d60ad sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x3644d41f ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0x3689d014 xenbus_dev_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36ab698b fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x36c82048 gpio_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x36f63718 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0x3725b361 xen_unmap_domain_mfn_range +EXPORT_SYMBOL_GPL vmlinux 0x373f6709 rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x375d2308 device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x37b9a54d anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0x37c2f978 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0x37d61b19 ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0x37e3ad7f sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x37eb1904 virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0x380d3f75 pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x3822ba22 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x382c6946 ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0x382e7f97 btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x383142b8 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0x383f4ab7 exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x385b3d41 ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0x385f746e user_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x38620e38 gnttab_grant_foreign_access_trans_ref +EXPORT_SYMBOL_GPL vmlinux 0x387e4589 dev_get_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x38957f70 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0x38d578ef key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x38e2b45c relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0x38fb073b tcp_peer_is_proven +EXPORT_SYMBOL_GPL vmlinux 0x39258566 debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0x394f3914 pci_msi_off +EXPORT_SYMBOL_GPL vmlinux 0x3a1e518b kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3ad0e201 scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x3ad82802 of_property_read_u32_index +EXPORT_SYMBOL_GPL vmlinux 0x3ae20b4d ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x3b3f7f89 blk_add_request_payload +EXPORT_SYMBOL_GPL vmlinux 0x3b7c8d20 vchan_dma_desc_free_list +EXPORT_SYMBOL_GPL vmlinux 0x3bac397e swiotlb_tbl_sync_single +EXPORT_SYMBOL_GPL vmlinux 0x3bb55f82 blk_queue_dma_drain +EXPORT_SYMBOL_GPL vmlinux 0x3c03bed5 arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0x3c152b03 device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3c4bec9e kvm_vcpu_init +EXPORT_SYMBOL_GPL vmlinux 0x3c679c59 nfq_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x3c8424a0 clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3c8d28cc of_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x3c9390db pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0x3c9c0b09 ata_scsi_simulate +EXPORT_SYMBOL_GPL vmlinux 0x3cb0f3de platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0x3ccffec8 of_irq_parse_one +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3d0aefaf stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0x3d0d1bc6 PageHeadHuge +EXPORT_SYMBOL_GPL vmlinux 0x3d4f75a0 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3d578b3d __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x3d6cd266 regmap_field_write +EXPORT_SYMBOL_GPL vmlinux 0x3d7ea99a gnttab_grant_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x3d8b8db3 crypto_alloc_instance2 +EXPORT_SYMBOL_GPL vmlinux 0x3daa246a udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x3db1c6b2 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x3db568fd gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x3dbb5700 ping_hash +EXPORT_SYMBOL_GPL vmlinux 0x3dc526a9 arizona_of_match +EXPORT_SYMBOL_GPL vmlinux 0x3dc916b6 crypto_fl_tab +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3decc7a8 stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0x3e2fa31f wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3e314009 sk_unattached_filter_create +EXPORT_SYMBOL_GPL vmlinux 0x3e368331 sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x3e47956f device_attach +EXPORT_SYMBOL_GPL vmlinux 0x3e4cb9af fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0x3e58376f devres_alloc +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e7a3578 tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0x3e971b8d regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3ea4feee ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x3ef362ab dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0x3ef37962 inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0x3efb35c9 get_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0x3f17e233 crypto_alloc_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x3f1cccd9 __of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0x3f31b074 sysfs_get_dirent_ns +EXPORT_SYMBOL_GPL vmlinux 0x3f3cfe22 blk_unprep_request +EXPORT_SYMBOL_GPL vmlinux 0x3f48d3c6 rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x3f58717c crypto_nivaead_type +EXPORT_SYMBOL_GPL vmlinux 0x3f5dfedb __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x3f84d4c9 gnttab_release_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x3fee4f51 devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x3ffb7edc input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0x4000bcfa pwm_disable +EXPORT_SYMBOL_GPL vmlinux 0x400f917e da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x401ab5a1 amba_device_put +EXPORT_SYMBOL_GPL vmlinux 0x403cde80 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x4045c494 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0x404a30d7 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x40835b70 crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0x40af0dec ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x40c4d051 css_rightmost_descendant +EXPORT_SYMBOL_GPL vmlinux 0x40d14f87 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x40d1d5e5 fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x40d46b21 crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x40fa6557 wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x412652ef pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x412f83e5 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0x4135cbe3 __rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4143fdce inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x4167f2b8 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x41d81c5d of_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x41f26ef2 tracepoint_iter_start +EXPORT_SYMBOL_GPL vmlinux 0x420c5549 regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x422b3a9b arch_pick_mmap_layout +EXPORT_SYMBOL_GPL vmlinux 0x4234281c regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x42443690 bus_register +EXPORT_SYMBOL_GPL vmlinux 0x42464b0b serial8250_tx_dma +EXPORT_SYMBOL_GPL vmlinux 0x424acc6d scatterwalk_done +EXPORT_SYMBOL_GPL vmlinux 0x424da7d1 spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x42548579 inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x426b69ea wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x42984e18 sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0x42a2985c uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0x42d478fa rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0x42ff5812 rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x430e5257 of_alias_get_id +EXPORT_SYMBOL_GPL vmlinux 0x4335bef4 public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0x43a53735 __alloc_workqueue_key +EXPORT_SYMBOL_GPL vmlinux 0x43a93d7d phy_pm_runtime_put +EXPORT_SYMBOL_GPL vmlinux 0x43b466b0 gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL vmlinux 0x43b827db apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x44790542 fuse_get_req +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x44a793ab HYPERVISOR_grant_table_op +EXPORT_SYMBOL_GPL vmlinux 0x44b621a3 netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x44e8a5d7 blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0x44ec9d99 class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x450fb522 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x454c15ae __smp_call_function_single +EXPORT_SYMBOL_GPL vmlinux 0x454f17b3 sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x4576337f atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x457b77ca of_fixed_factor_clk_setup +EXPORT_SYMBOL_GPL vmlinux 0x45afd0eb blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x45bf1ff3 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x45f8ceb8 phy_pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x460f7531 wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x4612617b ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x461707e2 wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x461a2e5d clk_register_divider +EXPORT_SYMBOL_GPL vmlinux 0x4639daa5 blkcipher_walk_virt_block +EXPORT_SYMBOL_GPL vmlinux 0x463ad56f skb_segment +EXPORT_SYMBOL_GPL vmlinux 0x46610324 ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0x466429ee sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0x4672e88b __crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x467fe234 clk_register +EXPORT_SYMBOL_GPL vmlinux 0x4680f0f7 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x46fc290e __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0x470497da alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x470fa426 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x471daf86 clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x4747e6a4 power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x47836378 ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x479c7376 pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x47c55ced regmap_read +EXPORT_SYMBOL_GPL vmlinux 0x47d197d7 bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0x48423d14 phy_get +EXPORT_SYMBOL_GPL vmlinux 0x48509ebd crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL vmlinux 0x485fe248 tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x487c16cd dm_requeue_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x488bcff4 regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x4895b38f sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x489c1f04 cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0x48aad5f3 pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x48b403ea alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0x48b87064 ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x48e55b17 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0x48ea94f9 crypto_givcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x48f6cc23 xen_swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0x4919f8a8 extcon_set_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x4929be34 platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4975f15b gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x498d293a trace_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x4991014a pci_pri_stopped +EXPORT_SYMBOL_GPL vmlinux 0x49a2db19 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0x49c9daf9 fat_attach +EXPORT_SYMBOL_GPL vmlinux 0x49d8cf97 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0x49ef3918 pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x4a2eadde ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x4a651c24 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0x4a7ec44a crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x4a8a2840 crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x4a8a9069 regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0x4a90160e bprintf +EXPORT_SYMBOL_GPL vmlinux 0x4a918121 spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0x4aa7dbd3 devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x4aadeb9a ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0x4ac0b687 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0x4ad20d4a ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0x4affd08b put_compat_timespec +EXPORT_SYMBOL_GPL vmlinux 0x4b3592db relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x4b643941 regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x4bbdf990 dma_buf_kunmap +EXPORT_SYMBOL_GPL vmlinux 0x4bc62a81 audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4c0521dc fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0x4c2e1f24 clk_disable +EXPORT_SYMBOL_GPL vmlinux 0x4c602bf1 __blkg_release_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4c759827 byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x4c975ce0 pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x4c995d71 regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x4ca4c9df clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x4cbdc655 bdi_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x4cc3ae02 pwm_free +EXPORT_SYMBOL_GPL vmlinux 0x4cdb1fe7 tpm_show_owned +EXPORT_SYMBOL_GPL vmlinux 0x4ce2c3fe setup_irq +EXPORT_SYMBOL_GPL vmlinux 0x4cf659dd wm8350_device_exit +EXPORT_SYMBOL_GPL vmlinux 0x4cf97cd3 sysfs_notify_dirent +EXPORT_SYMBOL_GPL vmlinux 0x4d0963e5 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0x4d12dea8 md_stop +EXPORT_SYMBOL_GPL vmlinux 0x4d1df3bf sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x4d3e9cbe ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x4d5c0302 device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x4d6cac4d phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL vmlinux 0x4da264f4 led_trigger_show +EXPORT_SYMBOL_GPL vmlinux 0x4db00c80 rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x4e109192 ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0x4e113519 elf_hwcap +EXPORT_SYMBOL_GPL vmlinux 0x4e242f5f pstore_cannot_block_path +EXPORT_SYMBOL_GPL vmlinux 0x4e317346 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x4e820aec device_add +EXPORT_SYMBOL_GPL vmlinux 0x4e87861f crypto_init_shash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x4e973699 user_read +EXPORT_SYMBOL_GPL vmlinux 0x4eb2042d phy_exit +EXPORT_SYMBOL_GPL vmlinux 0x4ed60df2 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4ee8cfd0 platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f020dee public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x4f8a6454 sec_reg_update +EXPORT_SYMBOL_GPL vmlinux 0x4fc46daa seq_release_net +EXPORT_SYMBOL_GPL vmlinux 0x4fd4e89d ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fdd9a7b inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4fe6e030 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x5005b69e btree_update +EXPORT_SYMBOL_GPL vmlinux 0x5026585c xen_irq_from_gsi +EXPORT_SYMBOL_GPL vmlinux 0x50601122 of_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x506691f1 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x5086ac3a alg_test +EXPORT_SYMBOL_GPL vmlinux 0x5088429b napi_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x50d54f85 crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50f3c95f key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x515154b4 cgroup_taskset_cur_css +EXPORT_SYMBOL_GPL vmlinux 0x516e34d1 rtc_irq_set_freq +EXPORT_SYMBOL_GPL vmlinux 0x51813b38 securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x5181b460 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x5183409a dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0x51855825 extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0x5187ac4b xen_store_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x51a508c8 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0x51ad9a8b xenbus_frontend_closed +EXPORT_SYMBOL_GPL vmlinux 0x51d63e06 tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0x51d9fdeb da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0x51f7cc16 sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL vmlinux 0x5224e5ea tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0x5227b2e0 sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x522f538b tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x52604742 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0x5263745d of_irq_parse_pci +EXPORT_SYMBOL_GPL vmlinux 0x5272d8bc __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0x52a1e3d8 devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x52a3163c sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0x52a41251 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x52c4fc1f blkg_lookup_create +EXPORT_SYMBOL_GPL vmlinux 0x52c76a5e arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x52dc5755 devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x5313bb0a stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0x531aa95a inet_csk_compat_getsockopt +EXPORT_SYMBOL_GPL vmlinux 0x532f2af3 device_schedule_callback_owner +EXPORT_SYMBOL_GPL vmlinux 0x5358fc36 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x53614269 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x537c39c5 dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0x5384bd62 ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x53cb2800 __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x53f29e9a virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0x53f80659 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0x540b3aba hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54215db5 visitor64 +EXPORT_SYMBOL_GPL vmlinux 0x542d4311 sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x545c6502 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0x5460c8d8 fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x548a097d sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54b070a8 uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0x54b61562 hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x54ddff3f regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0x550b920e balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x552a6d9b irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0x553f94d1 regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x55526907 xen_features +EXPORT_SYMBOL_GPL vmlinux 0x55527c62 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x5562ac63 get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x559cbc7e pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x559e61a1 ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x5606adb5 atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x561e4b77 irq_of_parse_and_map +EXPORT_SYMBOL_GPL vmlinux 0x5623c982 rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x564f1dca klist_add_after +EXPORT_SYMBOL_GPL vmlinux 0x565b6892 uuid_le_gen +EXPORT_SYMBOL_GPL vmlinux 0x5674b1d4 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x56886b19 scatterwalk_map +EXPORT_SYMBOL_GPL vmlinux 0x5692386f gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x56a2bff7 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0x56bedef5 single_open_net +EXPORT_SYMBOL_GPL vmlinux 0x56d697ce cpu_up +EXPORT_SYMBOL_GPL vmlinux 0x56d7a175 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x56e75d47 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x56e8b17e unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0x56f248ed gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL vmlinux 0x57231f45 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0x573b37da fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x5743830d scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0x575c5f94 execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0x57698523 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0x5779d445 xenbus_exists +EXPORT_SYMBOL_GPL vmlinux 0x57899a33 ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0x5796101b pci_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57bc2602 xenbus_register_backend +EXPORT_SYMBOL_GPL vmlinux 0x57d42c3d inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0x57de6def ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0x57e5ae43 hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0x58171d65 ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x5822d0bf rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0x5824918e scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x5836e477 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0x5838cc57 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x58413099 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x584464f7 debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0x58479d4b pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0x585fdf2e kvm_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x589e4569 syscon_regmap_lookup_by_pdevname +EXPORT_SYMBOL_GPL vmlinux 0x58c78caf regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x58d2d102 skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0x58e14f15 HYPERVISOR_event_channel_op +EXPORT_SYMBOL_GPL vmlinux 0x58e8b9fb extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x59278b03 mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x5947abbe max77693_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x59679f7f fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0x5984adf4 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x59a6e91d clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x59b2adbf input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x59da332b wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x59e2743e call_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0x59eae699 ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x59ee2aae debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x59fa5cbf pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x5a055dac driver_register +EXPORT_SYMBOL_GPL vmlinux 0x5a2b1b67 gnttab_free_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x5a3051b1 xenbus_probe_node +EXPORT_SYMBOL_GPL vmlinux 0x5a35db18 dma_buf_kunmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x5a3c573b get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a7e93f7 of_pci_find_msi_chip_by_node +EXPORT_SYMBOL_GPL vmlinux 0x5a815b81 __rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x5a8f3b69 of_irq_parse_raw +EXPORT_SYMBOL_GPL vmlinux 0x5af03a28 gnttab_claim_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x5b183cfd posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5b1fc802 sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0x5b258a34 __blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x5b27bd35 regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x5b3162c3 swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0x5b4e379c of_prop_next_u32 +EXPORT_SYMBOL_GPL vmlinux 0x5b79ae52 lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0x5b9a8270 crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x5ba9a70b _submit_bh +EXPORT_SYMBOL_GPL vmlinux 0x5bbb2a4a ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x5bd37382 class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x5bd97015 ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0x5be518bf class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0x5c351da5 regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0x5c84e1b1 cgroup_unload_subsys +EXPORT_SYMBOL_GPL vmlinux 0x5ca979d4 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0x5caa86a3 spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0x5cbee3eb call_srcu +EXPORT_SYMBOL_GPL vmlinux 0x5cc559e2 spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x5d1098c6 xen_start_info +EXPORT_SYMBOL_GPL vmlinux 0x5d12e48f input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0x5d163d6d ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x5d305a05 balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x5d366dec gnttab_cancel_free_callback +EXPORT_SYMBOL_GPL vmlinux 0x5d77952d hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x5df84d56 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0x5e18ccd3 posix_timers_register_clock +EXPORT_SYMBOL_GPL vmlinux 0x5e1a6f90 tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0x5e2ff638 blk_queue_flush +EXPORT_SYMBOL_GPL vmlinux 0x5e4f63fd ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e60b4fd tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x5e809d8d led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5e9581f5 regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x5e99542e i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0x5e9ed773 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x5ebe3b53 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x5ef5f0b1 __clk_register +EXPORT_SYMBOL_GPL vmlinux 0x5f248f72 set_timer_slack +EXPORT_SYMBOL_GPL vmlinux 0x5f419491 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x5f6923de ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0x5f8c6335 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0x5ffde375 regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x60442822 phys_to_mach +EXPORT_SYMBOL_GPL vmlinux 0x604ac25f pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0x60506751 unmap_kernel_range_noflush +EXPORT_SYMBOL_GPL vmlinux 0x607ee658 ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0x6094685f wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0x609ec121 kick_process +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL_GPL vmlinux 0x60bf4098 dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0x60d53ba4 uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0x60dd95ec bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x60e14291 pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x6114e014 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0x6183ff15 sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x619470b6 flush_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x61aacad4 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x622dacba tick_nohz_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x6232fe53 pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0x62424e8f crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x625987b2 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0x6281317a sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x62872976 kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL vmlinux 0x62aeefff inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0x62b8be38 pwm_set_polarity +EXPORT_SYMBOL_GPL vmlinux 0x62dbfb9f tps65912_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x62f4fee5 device_move +EXPORT_SYMBOL_GPL vmlinux 0x62ff637f scsi_internal_device_unblock +EXPORT_SYMBOL_GPL vmlinux 0x6318757f mdio_mux_uninit +EXPORT_SYMBOL_GPL vmlinux 0x63205de1 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x63282cd2 pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0x636b8339 da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x6373f153 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0x6375dd4c __clocksource_updatefreq_scale +EXPORT_SYMBOL_GPL vmlinux 0x6390efda of_modalias_node +EXPORT_SYMBOL_GPL vmlinux 0x639e175c put_device +EXPORT_SYMBOL_GPL vmlinux 0x63a68147 __fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0x63a7c344 blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x63ab9048 i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x63e78866 devm_spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x63ff977c input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0x6400e4c8 pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0x6429ed5d __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x64561723 platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0x645edebe tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x647537f3 pl320_ipc_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x648beee9 regmap_update_bits_async +EXPORT_SYMBOL_GPL vmlinux 0x64b8b60d do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x650824b1 regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x654c28e6 pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0x657af3d1 pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0x65bbbc78 schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0x65c9780b bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65e8a7aa pm_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x661bdd02 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x662a0c3f x509_get_sig_params +EXPORT_SYMBOL_GPL vmlinux 0x663c16d6 gnttab_grant_foreign_access_subpage_ref +EXPORT_SYMBOL_GPL vmlinux 0x6658b670 blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x66794407 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x669da1fd kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL vmlinux 0x66ab55c2 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0x66d2f92e blk_queue_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x66e41063 max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x66f0ca70 sk_unattached_filter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x66f4dc98 __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x67124b1e ata_eh_thaw_port +EXPORT_SYMBOL_GPL vmlinux 0x67166cf6 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0x6724d8f7 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6739a503 balloon_set_new_target +EXPORT_SYMBOL_GPL vmlinux 0x674e13e1 public_key_destroy +EXPORT_SYMBOL_GPL vmlinux 0x67649512 crypto_alloc_ablkcipher +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x67ab9905 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0x67b7e8ad device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x67b8b648 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0x67c0875f wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x67e12735 crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x67f5a486 device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0x67fcab63 extcon_register_interest +EXPORT_SYMBOL_GPL vmlinux 0x6835b721 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0x6857298a rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0x6870b714 regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x687934e9 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x68a6e1c1 clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x68a9c0a3 irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x68c3aced platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x68d7265f class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x6921aa34 compat_put_timeval +EXPORT_SYMBOL_GPL vmlinux 0x6923ce63 irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x69447467 ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0x6946eac3 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x694952a8 pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x695de9e9 percpu_ida_alloc +EXPORT_SYMBOL_GPL vmlinux 0x697222bb wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x697c129b ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x698a899f ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0x69ce68cd ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x69e9a2cb ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x6a044ef5 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0x6a441db8 __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x6a5fb566 rcu_sched_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x6a6cafd2 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x6a6ed127 pwm_can_sleep +EXPORT_SYMBOL_GPL vmlinux 0x6a7ae4eb rtc_irq_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6b09abcb br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0x6b29a1fa ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0x6b3ef3a3 tcp_is_cwnd_limited +EXPORT_SYMBOL_GPL vmlinux 0x6b6b9e84 blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0x6b93bf60 inet_twdr_twkill_work +EXPORT_SYMBOL_GPL vmlinux 0x6b9e7ad7 of_clk_src_simple_get +EXPORT_SYMBOL_GPL vmlinux 0x6ba830be ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x6bb7cc07 tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0x6bc6756d crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x6bd80709 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0x6c1b09ab gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x6c1f3726 __netpoll_free_async +EXPORT_SYMBOL_GPL vmlinux 0x6c49c4f2 clockevents_notify +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c4ee36e phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x6c502585 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0x6c64cc4d tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0x6c7241bc arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x6c8f110a power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x6c967c6f ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6ccfcb8b fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x6cd21997 ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x6cd2a753 ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x6cd4d313 kvm_vcpu_kick +EXPORT_SYMBOL_GPL vmlinux 0x6cd4ea62 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0x6cfe8a8a extcon_update_state +EXPORT_SYMBOL_GPL vmlinux 0x6d2785b5 pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x6d2d37c0 devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d31a1f9 init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0x6d690d57 ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0x6d79122c virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0x6d92ba87 key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0x6d9e5425 of_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x6da3cce5 i2c_unlock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x6dc3c031 uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0x6df8f4cd pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x6e48d9aa evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x6e58ddf0 gnttab_end_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6eac9f03 reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x6ebea80f wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0x6ef9d6e6 dma_buf_kmap +EXPORT_SYMBOL_GPL vmlinux 0x6f27f407 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0x6f299ad9 sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0x6f36f606 __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x6f4ca24c inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0x6f561889 skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0x6fda600b led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0x6fe3d8cf ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x70172aab regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x7036cbd1 ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0x7064da8b btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x707f1ea3 wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0x707ff1bb ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x70a22a92 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71930ed3 of_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x71dc9998 crypto_il_tab +EXPORT_SYMBOL_GPL vmlinux 0x71f3b141 kvm_write_guest_cached +EXPORT_SYMBOL_GPL vmlinux 0x7226361a crypto_alg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x72358ac3 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0x725254e5 thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x725e43d5 regmap_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x72637904 clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x72741f25 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x72767cf2 pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x72c0d2a5 ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x72d6b7fe devm_phy_put +EXPORT_SYMBOL_GPL vmlinux 0x72f3fc79 xenbus_register_driver_common +EXPORT_SYMBOL_GPL vmlinux 0x73013896 xenbus_printf +EXPORT_SYMBOL_GPL vmlinux 0x73140119 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x731dba7a xen_domain_type +EXPORT_SYMBOL_GPL vmlinux 0x732b680c regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x73449be0 fuse_request_send +EXPORT_SYMBOL_GPL vmlinux 0x73580654 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0x735999c2 tps65912_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x73767f24 ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x737ddef7 tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0x73a421c3 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73a92092 device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x73c2554f __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0x73c832f2 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x73d69364 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x73ed8bc2 adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x73eebcc5 ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0x7400a02d uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x7422c95e gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x742def44 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x74472405 blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x745740aa ref_module +EXPORT_SYMBOL_GPL vmlinux 0x7466a1d5 regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0x746b2b88 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x74954462 timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x749bb7c1 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0x74a9ba36 ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74eef661 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0x74fcc672 tcp_fetch_timewait_stamp +EXPORT_SYMBOL_GPL vmlinux 0x750a794c __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0x75133f6e visitor128 +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x753162a2 __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x755b96cc dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x755bf407 da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x7569d0dd da903x_update +EXPORT_SYMBOL_GPL vmlinux 0x75717a97 crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0x757b49d2 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0x758a782e blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x75906d91 da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0x75abeb6a crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0x75c65ab5 blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x75f5c138 security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x76351838 udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x763bcbcd pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0x7657b910 kvm_vcpu_uninit +EXPORT_SYMBOL_GPL vmlinux 0x76b0498f invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x76b18922 ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x76c2045d thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x76d07d6e gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x7712771a unbind_from_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x771791a8 regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0x771d2891 irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x771f3abc regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x77dd3214 skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0x77dd6c76 aead_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0x77e255a8 bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x7824b1ff arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x7827c7e5 xenbus_dev_groups +EXPORT_SYMBOL_GPL vmlinux 0x787c882b lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x789d68be rtc_set_mmss +EXPORT_SYMBOL_GPL vmlinux 0x78a55ab2 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x78b9057d inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x78c53a76 driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x792d430f pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0x7931015d sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x79330a6f fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x796c2d48 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x798121dd ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0x798b92a7 pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x7994f605 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0x799a445f tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0x79b88322 md_new_event +EXPORT_SYMBOL_GPL vmlinux 0x79c28b6e __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0x7a06a871 attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x7a14bf7c crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0x7a319404 clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x7a59aa4f watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7a687980 rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x7a6e9557 debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x7a944007 rcu_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x7aa0364d blk_rq_check_limits +EXPORT_SYMBOL_GPL vmlinux 0x7aa64803 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL vmlinux 0x7ad12a20 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x7adf7c58 kvm_get_kvm +EXPORT_SYMBOL_GPL vmlinux 0x7af5e1b1 xenbus_bind_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x7b0f1ab3 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7b2163bd HYPERVISOR_tmem_op +EXPORT_SYMBOL_GPL vmlinux 0x7b5340a4 subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7b56e0f3 vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0x7b90d1a9 bind_virq_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x7ba1d2db scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x7ba3bec0 verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x7ba40e14 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x7bc56e0f mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0x7be1bcc6 blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0x7be2e763 subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x7c05f87d ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x7c147be2 __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x7c18198d find_module +EXPORT_SYMBOL_GPL vmlinux 0x7c227088 clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x7c2a8749 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x7c346357 pkey_algo +EXPORT_SYMBOL_GPL vmlinux 0x7c6d5b60 arizona_of_get_type +EXPORT_SYMBOL_GPL vmlinux 0x7c79179d ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x7c980668 regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x7cae091a scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x7cafa750 crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0x7cc1b7fd max77693_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7cc7de1c x509_check_signature +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cf471bb pci_bus_sem +EXPORT_SYMBOL_GPL vmlinux 0x7cfa6394 adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0x7d397cc7 gpiod_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d609561 dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0x7d69b0bc shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x7d8b64dc balloon_mapping_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7d90d458 wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0x7da2b695 mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x7da64793 dm_set_device_limits +EXPORT_SYMBOL_GPL vmlinux 0x7dab26b6 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7dc0e19f find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x7dc7b1c5 device_create +EXPORT_SYMBOL_GPL vmlinux 0x7dead70a powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0x7e30727f dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x7ea1a2bc probe_kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x7ec16677 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x7ecccb0f dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x7ef0278f gnttab_unmap_refs +EXPORT_SYMBOL_GPL vmlinux 0x7f01847e part_round_stats +EXPORT_SYMBOL_GPL vmlinux 0x7f13276c platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0x7f7c2c12 sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x7f82e059 xenbus_dev_changed +EXPORT_SYMBOL_GPL vmlinux 0x7fa28e0f ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0x7fa4b4a2 of_pci_parse_bus_range +EXPORT_SYMBOL_GPL vmlinux 0x7fc3deb8 i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0x7fd38778 armpmu_get_max_events +EXPORT_SYMBOL_GPL vmlinux 0x7ff9dc6b arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x80357887 hrtimer_start +EXPORT_SYMBOL_GPL vmlinux 0x803643ba device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x80698a68 pci_ioremap_io +EXPORT_SYMBOL_GPL vmlinux 0x8086c119 regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x80a962e6 ablkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x80d10a1d page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80d86d2b bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0x80f3268f __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x81105a75 pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0x813df0ce ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x8140842a gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x8149ea54 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0x81518745 dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x817db8d1 ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x8183ca63 sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0x8188da48 find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x81b11b42 kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL vmlinux 0x81cce2cb bmp085_remove +EXPORT_SYMBOL_GPL vmlinux 0x81deb0c8 irq_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0x821730f8 tpm_remove_hardware +EXPORT_SYMBOL_GPL vmlinux 0x8224d322 perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x823320e6 transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x826774c5 crypto_ahash_type +EXPORT_SYMBOL_GPL vmlinux 0x8267d8ac srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x82694d3e ata_sff_data_xfer_noirq +EXPORT_SYMBOL_GPL vmlinux 0x826e9815 regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x826f3f49 __blk_put_request +EXPORT_SYMBOL_GPL vmlinux 0x82892513 ata_eh_qc_retry +EXPORT_SYMBOL_GPL vmlinux 0x82939ebd rcu_batches_completed_sched +EXPORT_SYMBOL_GPL vmlinux 0x82d63f48 transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x82d786fe register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x83104353 ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x8314fd52 regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x8318eb66 clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x83263a40 dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0x8335482b sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0x834616bb sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x836b0acc dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x83744eb2 relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0x8377fa6b crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x838b13e7 ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0x8394f8eb kobj_completion_init +EXPORT_SYMBOL_GPL vmlinux 0x839ccbf8 ablkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0x83a313e5 shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0x83e00a6e dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0x83eae65a driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x840ac895 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0x84127960 sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0x844bc60c aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8458b292 spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x8462c8ec crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0x8487a2b6 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x84c3d00d regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0x84e33a9e vchan_init +EXPORT_SYMBOL_GPL vmlinux 0x85050965 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x852e568d of_get_nand_ecc_mode +EXPORT_SYMBOL_GPL vmlinux 0x8530a07e serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0x8583a8f0 register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x85a6f559 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0x85b14d33 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x85b1ee8a ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x85c10896 rcu_batches_completed_bh +EXPORT_SYMBOL_GPL vmlinux 0x85c7f674 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x85fe8582 __class_create +EXPORT_SYMBOL_GPL vmlinux 0x86104ff5 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x864283c6 crypto_init_spawn2 +EXPORT_SYMBOL_GPL vmlinux 0x86623fd7 notify_remote_via_irq +EXPORT_SYMBOL_GPL vmlinux 0x866b9687 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x86a51007 gnttab_end_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x8702e548 process_srcu +EXPORT_SYMBOL_GPL vmlinux 0x870e16b7 xen_test_irq_shared +EXPORT_SYMBOL_GPL vmlinux 0x8734a804 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x87544a10 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x87698c6f mdio_mux_init +EXPORT_SYMBOL_GPL vmlinux 0x8796d472 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x87c02e2d ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x87c0a03d regmap_update_bits_check +EXPORT_SYMBOL_GPL vmlinux 0x87df71b6 kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0x87e5aefa sdhci_pci_o2_probe +EXPORT_SYMBOL_GPL vmlinux 0x880b85dc wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0x8810ad5e crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0x8834564a list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0x883c2740 __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x8863d53f gfn_to_pfn_prot +EXPORT_SYMBOL_GPL vmlinux 0x888935fa alarm_start +EXPORT_SYMBOL_GPL vmlinux 0x88b5647c trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x88e19ce7 crypto_tfm_in_queue +EXPORT_SYMBOL_GPL vmlinux 0x891a5a7f gnttab_max_grant_frames +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x89502f0c gnttab_subpage_grants_available +EXPORT_SYMBOL_GPL vmlinux 0x8960ed13 irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x896564fc subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x89c632a8 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x89e9f947 devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0x8a24e119 regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x8a2b14ba wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x8a74c5c8 raw_seq_open +EXPORT_SYMBOL_GPL vmlinux 0x8a78989f irq_from_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x8a7a4f86 blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x8aa427b5 vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x8ab99d49 ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ad17b4e bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0x8adafdeb task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x8adf1f03 da903x_write +EXPORT_SYMBOL_GPL vmlinux 0x8ae152b5 of_get_nand_bus_width +EXPORT_SYMBOL_GPL vmlinux 0x8b04668e bind_interdomain_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x8b2a3ebc unregister_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0x8b4b2d9c __kvm_set_memory_region +EXPORT_SYMBOL_GPL vmlinux 0x8b5202c9 sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x8b5329c0 ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x8b548bc0 vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0x8b61da79 xenbus_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8b6407b3 device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x8b66f9e0 xen_platform_pci_unplug +EXPORT_SYMBOL_GPL vmlinux 0x8b79d0c2 scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x8ba5afe9 HYPERVISOR_memory_op +EXPORT_SYMBOL_GPL vmlinux 0x8baf0e44 inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x8bf5dc03 phy_power_on +EXPORT_SYMBOL_GPL vmlinux 0x8c01471f regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c06a108 xenbus_transaction_start +EXPORT_SYMBOL_GPL vmlinux 0x8c23d21d rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x8c659b6c btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0x8c7006e2 sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0x8cf0a804 __get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x8d11a774 ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x8d32f547 xenbus_match +EXPORT_SYMBOL_GPL vmlinux 0x8d36c088 look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0x8d45ba76 class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x8d7e8c5c fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x8da01274 kvm_get_pfn +EXPORT_SYMBOL_GPL vmlinux 0x8daf0414 task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x8db28f27 fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0x8db92346 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8dbf7aaa privcmd_call +EXPORT_SYMBOL_GPL vmlinux 0x8dd09911 debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x8e1cd06f kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL vmlinux 0x8e4b2b2e bus_find_device_by_name +EXPORT_SYMBOL_GPL vmlinux 0x8e665652 shash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0x8e7d9f0b regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0x8e8f624a __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x8e9c7933 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x8ea74254 pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0x8ebe7edd tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0x8ec3f7da hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x8ed6847a trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x8f11fc11 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0x8f3b3a09 ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f72d8f7 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x8f8a365c ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x8f902a2c gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x8fa4c5ed xenbus_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x8faac947 clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x8fd134a5 inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x8fd545bb blk_queue_rq_timed_out +EXPORT_SYMBOL_GPL vmlinux 0x8fd7d493 inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x8fdc79c2 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0x8fddd7c6 devres_get +EXPORT_SYMBOL_GPL vmlinux 0x8fee9bf5 dm_get_rq_mapinfo +EXPORT_SYMBOL_GPL vmlinux 0x90228869 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x903e16fa tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0x9062c322 ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x90705b7f syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x90970cef tpm_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x90a1004a crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x90b763f1 HYPERVISOR_console_io +EXPORT_SYMBOL_GPL vmlinux 0x90c3e566 crypto_register_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x910f157c cgroup_load_subsys +EXPORT_SYMBOL_GPL vmlinux 0x91145bfd bmp085_probe +EXPORT_SYMBOL_GPL vmlinux 0x9116cdb1 ping_err +EXPORT_SYMBOL_GPL vmlinux 0x91286982 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x9155a0d9 __class_register +EXPORT_SYMBOL_GPL vmlinux 0x91564930 tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x918ad429 ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x91928131 kvm_set_memory_region +EXPORT_SYMBOL_GPL vmlinux 0x91b622d7 pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x91cc0092 unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x91d60155 xen_swiotlb_dma_mapping_error +EXPORT_SYMBOL_GPL vmlinux 0x91eecfd6 security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0x92064859 crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x920aacca nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x920cc389 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x92201a68 xenbus_dev_error +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x924fcfed security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0x926bb751 pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x926f3d00 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0x92a58309 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x92b6577b mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0x92bd7804 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0x92c2761e scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92d9a7cb tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x9301d5b1 serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x9312d80e evtchn_put +EXPORT_SYMBOL_GPL vmlinux 0x935a6479 kvm_init +EXPORT_SYMBOL_GPL vmlinux 0x939246db anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x93948906 regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x93a5cd2d wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x93debd98 sis_info133_for_sata +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x943fc708 xen_setup_shutdown_event +EXPORT_SYMBOL_GPL vmlinux 0x949a891d vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0x949e0cc1 aead_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0x949f7342 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x94a68723 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x94e62d2e __set_phys_to_machine_multi +EXPORT_SYMBOL_GPL vmlinux 0x94e78f63 register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x94f43cd3 gfn_to_pfn_async +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x9534b11e irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0x953cd968 ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0x954a4964 ata_eh_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x9576bbd1 kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x958138d8 tpm_open +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x95b37c99 ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0x95b5d452 da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95f0a761 dm_kill_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x960b83b3 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x9621849f ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x9625e652 klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x9636f4d5 of_irq_parse_and_map_pci +EXPORT_SYMBOL_GPL vmlinux 0x964add15 xenbus_scanf +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9691d213 devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x96a911a8 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0x96c45de3 ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0x96e99286 subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x9717dfb9 cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x9730c462 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x9745c52a of_fixed_clk_setup +EXPORT_SYMBOL_GPL vmlinux 0x9752a18c rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x97890991 ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x9792da40 page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x97ac3c47 class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x97d392f1 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97e9ccec mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x97ebcd09 led_classdev_register +EXPORT_SYMBOL_GPL vmlinux 0x981d798b bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0x981d8f43 alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x983fca7b device_register +EXPORT_SYMBOL_GPL vmlinux 0x984180cb crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9858a16c sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0x986ffb3d tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x987bac55 max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x988d12f1 device_store_int +EXPORT_SYMBOL_GPL vmlinux 0x98a34c68 debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0x98abc61d regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x990e4236 get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x991484c4 of_property_count_strings +EXPORT_SYMBOL_GPL vmlinux 0x9951e45b skcipher_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0x99596fe3 tps65912_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x9973add9 __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x997fe60a regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x9992015a sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x99ac0e57 devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x99afa2f1 pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0x99dfb16c led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a46a5db ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9a4712bc regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0x9a711317 queue_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x9a71fedb inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x9a895a8d inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x9a89dbf7 lpddr2_jedec_min_tck +EXPORT_SYMBOL_GPL vmlinux 0x9a979a1a da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9a97baf2 crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x9aa30a0d debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x9ab0c8f6 devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x9ab1d28e relay_open +EXPORT_SYMBOL_GPL vmlinux 0x9ac842d7 serial8250_rx_dma +EXPORT_SYMBOL_GPL vmlinux 0x9aca444b get_monotonic_boottime +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9af81232 ata_base_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x9b0f902b devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x9b880fd2 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0x9b984abf pwm_request +EXPORT_SYMBOL_GPL vmlinux 0x9b9f386f blkg_prfill_stat +EXPORT_SYMBOL_GPL vmlinux 0x9ba2bb2b gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x9bd06dc0 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9c04bfed hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0x9c49cb43 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9c77f3dc of_phy_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x9cc4e99e ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x9cd42655 sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x9d030b99 stop_machine +EXPORT_SYMBOL_GPL vmlinux 0x9d04e1dc __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0x9d06688b register_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0x9d138533 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x9d374cf9 ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x9d3850e1 gnttab_alloc_grant_references +EXPORT_SYMBOL_GPL vmlinux 0x9d3ca25b iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0x9d41eecc ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x9d5daf6c ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0x9d5e9660 irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0x9d8d31c2 vchan_find_desc +EXPORT_SYMBOL_GPL vmlinux 0x9da805b4 kvm_release_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x9dc594af transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0x9e410cd6 blk_queue_bio +EXPORT_SYMBOL_GPL vmlinux 0x9e61ddc9 btree_init +EXPORT_SYMBOL_GPL vmlinux 0x9e7a7c66 kill_pid_info_as_cred +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9edc6086 kvm_vcpu_cache +EXPORT_SYMBOL_GPL vmlinux 0x9edc8579 blk_queue_flush_queueable +EXPORT_SYMBOL_GPL vmlinux 0x9ef7dfda btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9efba2c0 inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x9f0664bf dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0x9f3f98e1 of_get_nand_on_flash_bbt +EXPORT_SYMBOL_GPL vmlinux 0x9f517986 HYPERVISOR_hvm_op +EXPORT_SYMBOL_GPL vmlinux 0x9f75b0d7 pci_enable_pri +EXPORT_SYMBOL_GPL vmlinux 0x9f91e43a hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0x9fb0876a bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9ff93ad4 device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0xa0208e02 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0xa0687d24 cgroup_taskset_first +EXPORT_SYMBOL_GPL vmlinux 0xa06f9ad0 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0xa0701392 regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xa07ab687 dm_underlying_device_busy +EXPORT_SYMBOL_GPL vmlinux 0xa09358c8 of_pci_msi_chip_add +EXPORT_SYMBOL_GPL vmlinux 0xa0b706be fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0xa0db2ad0 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0xa0e82f1d crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0xa101ae1e __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xa10c636d __pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xa11216be xen_store_domain_type +EXPORT_SYMBOL_GPL vmlinux 0xa1166faa pci_renumber_slot +EXPORT_SYMBOL_GPL vmlinux 0xa12d929d desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xa15076e2 netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0xa187dd24 ping_proc_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa18f004e ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0xa1a71dc7 cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0xa1ca6b53 regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0xa1d035e6 crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xa1f79553 xen_create_contiguous_region +EXPORT_SYMBOL_GPL vmlinux 0xa204b370 ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0xa24c14bc __init_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0xa26987f0 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa26e3d63 pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0xa2847266 netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0xa2b48d16 btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0xa2b9c993 clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0xa2e85b86 con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0xa3083cb5 crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0xa313a652 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0xa31db52b inet_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0xa32033f8 platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0xa353fffc xenbus_rm +EXPORT_SYMBOL_GPL vmlinux 0xa359f1e0 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0xa35c76b4 device_rename +EXPORT_SYMBOL_GPL vmlinux 0xa37d834f spi_unregister_master +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3d69c79 inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xa3e7c113 ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0xa40bbc3a unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0xa44c368e rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xa44e8f84 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0xa452f2a4 xen_pirq_from_irq +EXPORT_SYMBOL_GPL vmlinux 0xa472ce90 subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xa478f7b7 regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xa47b82dc led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0xa4826c4a device_find_child +EXPORT_SYMBOL_GPL vmlinux 0xa4bacfb7 user_describe +EXPORT_SYMBOL_GPL vmlinux 0xa4c22a41 tpm_show_pubek +EXPORT_SYMBOL_GPL vmlinux 0xa4ea04ee of_property_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0xa50dd713 md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0xa511afde virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0xa51b035f wait_for_tpm_stat +EXPORT_SYMBOL_GPL vmlinux 0xa5413050 phy_create +EXPORT_SYMBOL_GPL vmlinux 0xa5449d2d __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0xa54ae13c ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0xa5680617 sec_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xa5808cfc pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0xa591ff6c swiotlb_tbl_map_single +EXPORT_SYMBOL_GPL vmlinux 0xa5c24c59 generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0xa5c6a374 regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa5f389eb of_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xa62049ff ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0xa625110d kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0xa62bb665 ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xa6418805 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0xa66d5dc1 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xa69da9bd amba_device_add +EXPORT_SYMBOL_GPL vmlinux 0xa6a0a273 max77693_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xa6aa944f amba_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa6bd5a64 ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa6f893de bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0xa706ccd7 spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xa70e8db1 blk_queue_bypass_end +EXPORT_SYMBOL_GPL vmlinux 0xa724257f init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0xa7347ac4 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0xa75312bc call_rcu_sched +EXPORT_SYMBOL_GPL vmlinux 0xa7713df6 vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0xa77387e8 __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xa780da14 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0xa79618c7 raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0xa7a38d4b tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0xa7aa18ae register_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0xa7c6b8b5 sdhci_pci_o2_probe_slot +EXPORT_SYMBOL_GPL vmlinux 0xa7d5bed6 stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xa7e8dbf0 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xa7e9ecd1 xenbus_dev_cancel +EXPORT_SYMBOL_GPL vmlinux 0xa7efec9f __netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0xa7f6e9a2 trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0xa7f92105 add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0xa8112027 regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0xa8115748 inet_hash +EXPORT_SYMBOL_GPL vmlinux 0xa81e1c5e pskb_put +EXPORT_SYMBOL_GPL vmlinux 0xa81f7a3d pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa86e360a xenbus_dev_remove +EXPORT_SYMBOL_GPL vmlinux 0xa88f14a2 show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0xa8c711b0 devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xa8f00c61 ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0xa9284f1f dm_dispatch_request +EXPORT_SYMBOL_GPL vmlinux 0xa9520992 tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0xa96a87f0 sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0xa96cb030 ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0xa980af16 RSA_public_key_algorithm +EXPORT_SYMBOL_GPL vmlinux 0xa9a82042 gnttab_trans_grants_available +EXPORT_SYMBOL_GPL vmlinux 0xa9aef2e1 gfn_to_hva_memslot +EXPORT_SYMBOL_GPL vmlinux 0xa9c103c9 proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0xa9dae616 irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9fb74a2 of_device_is_stdout_path +EXPORT_SYMBOL_GPL vmlinux 0xa9fc3f54 gnttab_grant_foreign_access_trans +EXPORT_SYMBOL_GPL vmlinux 0xaa034ac1 iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0xaa099c30 skb_gso_transport_seglen +EXPORT_SYMBOL_GPL vmlinux 0xaa1f66dd ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0xaa7e1513 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xaa86e034 crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaaab5250 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0xaab347ed inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xaac6a365 sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0xaacf3f79 scsi_internal_device_block +EXPORT_SYMBOL_GPL vmlinux 0xaad498ba ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xaaee5159 kvm_release_page_clean +EXPORT_SYMBOL_GPL vmlinux 0xab01acbe gnttab_request_free_callback +EXPORT_SYMBOL_GPL vmlinux 0xab087968 dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0xab0e3225 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0xab6babaf pm_qos_request +EXPORT_SYMBOL_GPL vmlinux 0xab79ee94 of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0xab7c772c irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0xab8ceced gnttab_batch_copy +EXPORT_SYMBOL_GPL vmlinux 0xabced1aa trace_buffer_unlock_commit_regs +EXPORT_SYMBOL_GPL vmlinux 0xabec9c23 balloon_devinfo_alloc +EXPORT_SYMBOL_GPL vmlinux 0xac50b3ed skcipher_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0xac622b6d of_extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xac99ca7e fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0xac9f4a12 xenbus_probe_devices +EXPORT_SYMBOL_GPL vmlinux 0xacb16d34 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xacc101c6 regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0xad039c54 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xad12f178 da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0xad1664f7 digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0xad1a7dde crypto_lookup_aead +EXPORT_SYMBOL_GPL vmlinux 0xad2ef05c ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0xad376749 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0xad638e84 inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0xad840e79 pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xadae4978 dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0xadb3e31b powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0xadf6aa4d tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xae2554c4 of_clk_src_onecell_get +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae9409b4 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xaea6c305 kvm_put_kvm +EXPORT_SYMBOL_GPL vmlinux 0xaebf379e sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0xaec86922 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0xaed36cbd power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0xaef2edbf sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xaf0f9a80 gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0xaf16cdd7 sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0xaf5cd969 __get_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xaf728869 ahash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0xaf8fa89a xen_swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0xafb07262 __pfn_to_mfn +EXPORT_SYMBOL_GPL vmlinux 0xafbea5bb regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0xaff49bb2 kvm_read_guest +EXPORT_SYMBOL_GPL vmlinux 0xb02ac411 register_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb0354590 md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0xb047c95b clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0xb060d24f kvm_clear_guest +EXPORT_SYMBOL_GPL vmlinux 0xb0694117 inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0xb06b6ad5 regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb09046df spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0d1656c gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0xb0e066ac perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0xb101f360 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0xb1069630 usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0xb10d55bc cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0xb11e75de regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xb132d508 __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xb1350335 input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0xb140d14c ring_buffer_read +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb1650621 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xb176d27d xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0xb19aa39c register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xb1a7e3f6 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0xb1acbcce rcu_barrier_sched +EXPORT_SYMBOL_GPL vmlinux 0xb1b6c6f5 rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xb1c0c1c2 async_schedule_domain +EXPORT_SYMBOL_GPL vmlinux 0xb1e13e51 ata_do_eh +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1fa0afc tcp_death_row +EXPORT_SYMBOL_GPL vmlinux 0xb208bf3c irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0xb212a568 blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0xb21f5271 devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb260bfa5 unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xb28e0b7b skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0xb28f0ce9 ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0xb28f61aa pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0xb2a76658 __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0xb2ae58d1 blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0xb2be8146 tpm_show_active +EXPORT_SYMBOL_GPL vmlinux 0xb2c5f3d6 vchan_tx_submit +EXPORT_SYMBOL_GPL vmlinux 0xb2e013b4 xenbus_watch_pathfmt +EXPORT_SYMBOL_GPL vmlinux 0xb347bb2c work_busy +EXPORT_SYMBOL_GPL vmlinux 0xb3536158 ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xb382be77 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb383c4e3 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xb3d5d667 ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb3fd087b tpm_write +EXPORT_SYMBOL_GPL vmlinux 0xb4258a96 phy_init +EXPORT_SYMBOL_GPL vmlinux 0xb43d1991 list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0xb442a459 posix_timer_event +EXPORT_SYMBOL_GPL vmlinux 0xb46af994 gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0xb4962bdc xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4ba3605 rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0xb4d58213 inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0xb4e14553 gnttab_query_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0xb510e6cf of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xb53620d1 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0xb54070cb device_del +EXPORT_SYMBOL_GPL vmlinux 0xb5566c37 device_create_file +EXPORT_SYMBOL_GPL vmlinux 0xb576888f led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0xb586d17f kvm_is_visible_gfn +EXPORT_SYMBOL_GPL vmlinux 0xb58dcfa2 synchronize_sched_expedited +EXPORT_SYMBOL_GPL vmlinux 0xb5a0e11e lpddr2_jedec_addressing_table +EXPORT_SYMBOL_GPL vmlinux 0xb5a2b9e2 debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0xb5b73186 pci_intx +EXPORT_SYMBOL_GPL vmlinux 0xb5cb8145 hrtimer_get_res +EXPORT_SYMBOL_GPL vmlinux 0xb5d30583 spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xb5df09e7 debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0xb5f17edf perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb6092a86 debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0xb6230f1f gnttab_grant_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb6495eab platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0xb67b2219 cm_suspend_again +EXPORT_SYMBOL_GPL vmlinux 0xb6a81c1f relay_flush +EXPORT_SYMBOL_GPL vmlinux 0xb6aeb661 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xb6c635af wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb6d348bb __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0xb6e3b5c4 fat_detach +EXPORT_SYMBOL_GPL vmlinux 0xb6f9f8d9 tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0xb6fb22d8 tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0xb70e8f0b virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0xb70fd785 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0xb71e273f platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0xb73b600a hypervisor_kobj +EXPORT_SYMBOL_GPL vmlinux 0xb75b7991 ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0xb75bdda6 netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb76fcfb0 single_release_net +EXPORT_SYMBOL_GPL vmlinux 0xb7f77027 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0xb803c8de crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0xb8238d00 device_initialize +EXPORT_SYMBOL_GPL vmlinux 0xb834cf84 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0xb83c302d ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0xb8874507 securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xb8a02c51 crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0xb8a0be9f pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xb8ba8ff1 sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xb8d50ea1 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0xb903674c scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0xb9423732 net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0xb9556cd5 xenbus_switch_state +EXPORT_SYMBOL_GPL vmlinux 0xb9696453 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0xb97a8035 gfn_to_memslot +EXPORT_SYMBOL_GPL vmlinux 0xb97b2943 get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0xb97d7555 dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xb99d5837 xenbus_read +EXPORT_SYMBOL_GPL vmlinux 0xb99f956d ping_close +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9dc6035 spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0xb9fbd3d6 tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0xb9fe4988 dma_buf_export_named +EXPORT_SYMBOL_GPL vmlinux 0xba2af022 kobj_completion_del_and_wait +EXPORT_SYMBOL_GPL vmlinux 0xba2af84b scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0xba817569 devres_add +EXPORT_SYMBOL_GPL vmlinux 0xba8ca8c7 file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0xbaa4bf26 user_update +EXPORT_SYMBOL_GPL vmlinux 0xbaec363b sec_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xbb038ce4 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb22f1db sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0xbb48346a da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xbb721ab5 i2c_new_probed_device +EXPORT_SYMBOL_GPL vmlinux 0xbb79f1f4 __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0xbb9b184b nf_unregister_afinfo +EXPORT_SYMBOL_GPL vmlinux 0xbbb13388 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0xbbdb0ce2 ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0xbbdd6ac4 amba_apb_device_add_res +EXPORT_SYMBOL_GPL vmlinux 0xbbed2a5d pstore_register +EXPORT_SYMBOL_GPL vmlinux 0xbc043370 irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0xbc358fde tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0xbc36fe7e i2c_new_device +EXPORT_SYMBOL_GPL vmlinux 0xbc44e989 inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0xbcac6160 pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbcd69c3e ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0xbcf4dc95 nf_register_afinfo +EXPORT_SYMBOL_GPL vmlinux 0xbcf844da regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0xbcf934fc sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xbcf95e55 bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0xbd03cd88 __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0xbd18d980 percpu_ida_destroy +EXPORT_SYMBOL_GPL vmlinux 0xbd264646 register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xbd5cb8b9 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0xbd750348 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0xbd8ee861 rq_flush_dcache_pages +EXPORT_SYMBOL_GPL vmlinux 0xbdaf5686 get_compat_timeval +EXPORT_SYMBOL_GPL vmlinux 0xbdbf3167 rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0xbdca56f8 i2c_new_dummy +EXPORT_SYMBOL_GPL vmlinux 0xbdd295f0 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xbdd2f42a rcu_bh_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0xbdfe4baf adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xbe015dab skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0xbe0c4859 xenbus_watch_path +EXPORT_SYMBOL_GPL vmlinux 0xbe1332aa inet_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0xbe1887e4 ata_unpack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xbe2cc6c3 ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0xbe52b2cd ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0xbe550f76 sdhci_pci_o2_fujin2_pci_init +EXPORT_SYMBOL_GPL vmlinux 0xbe58bcfa mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0xbe59f21a __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xbe646c8a thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0xbe65b068 pci_intx_mask_supported +EXPORT_SYMBOL_GPL vmlinux 0xbe9c458d mmc_send_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbebaa0a6 of_pci_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0xbebd9a25 tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf125142 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0xbf2046d4 devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbf3b942b netlink_alloc_skb +EXPORT_SYMBOL_GPL vmlinux 0xbf4b0838 hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbf505c8c crypto_rng_type +EXPORT_SYMBOL_GPL vmlinux 0xbf976328 gpiochip_add +EXPORT_SYMBOL_GPL vmlinux 0xbfb01736 regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xbfb62cb7 ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0xbfd3eba5 gfn_to_page +EXPORT_SYMBOL_GPL vmlinux 0xbfe3880f xenbus_register_frontend +EXPORT_SYMBOL_GPL vmlinux 0xbff672dc devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0xc005624f pwm_config +EXPORT_SYMBOL_GPL vmlinux 0xc01d082b spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0xc03a654b memalloc_socks +EXPORT_SYMBOL_GPL vmlinux 0xc053a3a5 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0xc0736a6a vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0xc08647ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc0a45eae devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc0a5dc74 __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0xc0bf6ead timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xc0c5f8c6 spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0xc0c63d38 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0xc0cf36c3 ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xc0d01bc0 percpu_ref_cancel_init +EXPORT_SYMBOL_GPL vmlinux 0xc0d26387 kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc0f11ac5 regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0xc0fd5901 of_pci_msi_chip_remove +EXPORT_SYMBOL_GPL vmlinux 0xc1021601 mmput +EXPORT_SYMBOL_GPL vmlinux 0xc11b4470 balloon_stats +EXPORT_SYMBOL_GPL vmlinux 0xc11b45c6 gpiod_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xc11bd00f tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc13dd6e8 devres_remove +EXPORT_SYMBOL_GPL vmlinux 0xc14c2824 xenbus_probe +EXPORT_SYMBOL_GPL vmlinux 0xc164642e xenbus_otherend_changed +EXPORT_SYMBOL_GPL vmlinux 0xc171d1af add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0xc1960fc7 platform_bus +EXPORT_SYMBOL_GPL vmlinux 0xc1a02c71 rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0xc1ea24e0 md_ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xc204f6ca spi_sync +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc22e6e27 lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0xc26351f8 bind_evtchn_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xc275d58c virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0xc2968c72 fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0xc2bd7249 __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0xc2eca009 udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0xc2f37fa1 regmap_update_bits_check_async +EXPORT_SYMBOL_GPL vmlinux 0xc3224435 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0xc3233723 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc34efe27 snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0xc352cb02 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xc363afc1 crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0xc37226a5 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xc385cb58 perf_num_counters +EXPORT_SYMBOL_GPL vmlinux 0xc3955b4e list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0xc3bae01b ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0xc3bce3a5 anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0xc3dfc646 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc48076af rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc49330b6 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0xc4a429c2 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0xc4b08453 kvm_clear_guest_page +EXPORT_SYMBOL_GPL vmlinux 0xc4b9cecf pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0xc4d7ec9d driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc4f56dc8 blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xc4f6de1a tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0xc509f83d ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0xc5397da6 xenbus_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xc56277c3 tpm_show_durations +EXPORT_SYMBOL_GPL vmlinux 0xc5629f9e regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0xc562d534 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc5777fb7 dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0xc5785d11 sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0xc5f96fc7 sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xc5fa5154 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0xc5fb1c6b crypto_blkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0xc60f75ec __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xc615d333 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc62859e6 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0xc62eb275 virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0xc63a1109 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc64efe6d rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0xc65d3eed ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc65d6ba3 irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0xc674151b phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL vmlinux 0xc67510ba power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0xc690866c irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc6e04f45 rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0xc6f5c74f noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0xc7002ac4 evtchn_make_refcounted +EXPORT_SYMBOL_GPL vmlinux 0xc72e1233 __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xc7532ce2 unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc75a1cce sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0xc79fee10 fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7bdc16f dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0xc7c6391c mpi_set_buffer +EXPORT_SYMBOL_GPL vmlinux 0xc7c899fa init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0xc7e39bca ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc808acc4 tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xc8197163 tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0xc823faec of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc8335976 ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xc837a097 ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0xc8444a04 skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0xc87c1f84 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xc8add232 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0xc8c2baef uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0xc8cc55b9 crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0xc8ceb2f9 unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0xc8ec278c perf_trace_buf_prepare +EXPORT_SYMBOL_GPL vmlinux 0xc8f1a894 sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0xc93dbdc9 swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc9641b48 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0xc9771b3f i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xc9ab2ddb kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0xc9b957b4 rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0xc9ba998f alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xc9cfa97f of_pci_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xca133a14 pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0xca2b343c regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca81ea9a xenbus_transaction_end +EXPORT_SYMBOL_GPL vmlinux 0xca8525c0 simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0xca85d8cf tracepoint_probe_update_all +EXPORT_SYMBOL_GPL vmlinux 0xca946187 of_clk_add_provider +EXPORT_SYMBOL_GPL vmlinux 0xcabf642c filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0xcac6d3b6 subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xcadacade class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xcae7e183 dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0xcae9083b ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0xcaf9e2c7 wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0xcafa6c98 clockevents_unbind +EXPORT_SYMBOL_GPL vmlinux 0xcb0bf403 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb175943 inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xcb1cb5b7 tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xcb469d2b ddebug_add_module +EXPORT_SYMBOL_GPL vmlinux 0xcb4b2da8 dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0xcb74cb2f da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xcb9b162e clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0xcbb41926 da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xcbee20b2 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0xcc12b5f0 task_current_syscall +EXPORT_SYMBOL_GPL vmlinux 0xcc1f1c3d inet_twdr_hangman +EXPORT_SYMBOL_GPL vmlinux 0xcc6decaf irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0xcc75dc76 regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xcc85fcb6 async_schedule +EXPORT_SYMBOL_GPL vmlinux 0xcca54273 bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccd36faa sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0xccd6eb1e __mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0xcd0d496f transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0xcd173837 posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0xcd2de720 sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0xcd45eb90 class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcd48fe81 put_pid +EXPORT_SYMBOL_GPL vmlinux 0xcd4ff392 blocking_notifier_chain_cond_register +EXPORT_SYMBOL_GPL vmlinux 0xcd73d150 ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0xcd8780e8 perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0xcd8bf9f2 pci_reset_pri +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcdac447d regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0xcdacddff adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xcdaf3d84 pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0xcdb872e7 regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xcdbb0832 spi_setup +EXPORT_SYMBOL_GPL vmlinux 0xcdbf83d5 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcdeff811 extcon_unregister_interest +EXPORT_SYMBOL_GPL vmlinux 0xcdf19258 xenbus_grant_ring +EXPORT_SYMBOL_GPL vmlinux 0xcdfb8959 kvm_read_guest_cached +EXPORT_SYMBOL_GPL vmlinux 0xce06c538 dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xce085740 dev_hard_start_xmit +EXPORT_SYMBOL_GPL vmlinux 0xce096369 ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0xce0b9b59 max77693_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xce3c1176 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xce46e140 ktime_get_ts +EXPORT_SYMBOL_GPL vmlinux 0xce6a9d9a trace_current_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce993d2d devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xceada4f2 regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0xceb1f126 mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0xceed8c16 __set_phys_to_machine +EXPORT_SYMBOL_GPL vmlinux 0xcf278ec0 sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0xcf4aaa9d inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0xcf520b29 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf76c72d screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0xcfadcae6 handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0xcfae13af ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0xcfb286bd sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0xcfc68341 synchronize_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0xcfe5859c of_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xd00d947c watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0xd021600f scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0xd026d518 HYPERVISOR_vcpu_op +EXPORT_SYMBOL_GPL vmlinux 0xd03c5d42 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xd03c7700 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0xd0442495 skcipher_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0xd0458ccb xenbus_strstate +EXPORT_SYMBOL_GPL vmlinux 0xd04e9e9d rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd08540f0 mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0d1af0d fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0xd0d750c3 btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0xd128810f led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0xd14bc4d9 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xd15e6e12 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0xd16712f3 crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xd173a05f gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xd18a2c89 raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0xd1b2db37 tracepoint_probe_register_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xd1f4514d led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0xd1f82222 exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd235c664 crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0xd258217d clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0xd2599ca9 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd29d29ce pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0xd2a4ae7a ata_sg_init +EXPORT_SYMBOL_GPL vmlinux 0xd2c45ea4 of_pci_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0xd3081ec7 led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0xd32a46fe md_is_badblock +EXPORT_SYMBOL_GPL vmlinux 0xd32fe193 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xd333e92d phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd39c841c thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0xd3cbd5d2 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0xd3dd17fe sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0xd3eb6310 power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4101513 driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0xd463caa0 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd4679214 tasklet_hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0xd4874847 unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xd4b1bf18 crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4c79840 xenbus_dev_is_online +EXPORT_SYMBOL_GPL vmlinux 0xd4cad45e clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xd4d141e8 thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd4d3473f fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0xd51461a1 kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0xd5877d4c pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0xd58fec6b pwm_enable +EXPORT_SYMBOL_GPL vmlinux 0xd5996626 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xd5bd7dac ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0xd5bf7aad use_mm +EXPORT_SYMBOL_GPL vmlinux 0xd5e446fc kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xd5ec35a0 pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xd5eeae57 fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0xd61e1eab class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xd670f167 __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd67cd390 serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xd685accb netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0xd6c7b205 xen_xenbus_fops +EXPORT_SYMBOL_GPL vmlinux 0xd705b4c7 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0xd71c0b98 ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0xd72feba2 xenbus_read_driver_state +EXPORT_SYMBOL_GPL vmlinux 0xd756b4ec ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd77c0bc8 klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xd7857ad5 regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0xd792294d klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0xd7d6f4d2 fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd7d79132 put_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0xd7e29b61 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0xd81de62c ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xd820c283 eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xd843064b fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0xd8525ea7 fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0xd855a477 amba_ahb_device_add_res +EXPORT_SYMBOL_GPL vmlinux 0xd8584502 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd86d8a02 bio_trim +EXPORT_SYMBOL_GPL vmlinux 0xd87601cc ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd91b5be1 xen_remap_domain_mfn_range +EXPORT_SYMBOL_GPL vmlinux 0xd93eb6a3 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd942d353 ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0xd9430ce4 ping_bind +EXPORT_SYMBOL_GPL vmlinux 0xd94f6348 sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0xd9a34035 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0xd9dfad71 bio_clone_mddev +EXPORT_SYMBOL_GPL vmlinux 0xd9ecb670 ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xda04d3d2 __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xda2c06a9 shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0xda44cb37 setup_charger_manager +EXPORT_SYMBOL_GPL vmlinux 0xda4f585b get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0xda90ed23 class_destroy +EXPORT_SYMBOL_GPL vmlinux 0xdaa53f09 ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0xdad98e2d tpm_show_caps +EXPORT_SYMBOL_GPL vmlinux 0xdae7ccb6 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdb04cacc tracepoint_probe_unregister_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xdb08f550 map_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xdb164dd1 tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0xdb38fc35 inet_csk_reqsk_queue_prune +EXPORT_SYMBOL_GPL vmlinux 0xdb39f83b ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0xdb440a96 unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xdb52f80a ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0xdb571d90 unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdba48597 thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0xdba80fc1 of_fdt_unflatten_tree +EXPORT_SYMBOL_GPL vmlinux 0xdbc1f7f5 get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0xdbd1cf13 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0xdbe6e1a9 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc14a211 xen_hvm_evtchn_do_upcall +EXPORT_SYMBOL_GPL vmlinux 0xdc15c459 gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL vmlinux 0xdc1e15f1 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xdc2ed2f6 blkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdcb919bc virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0xdcc5324a inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0xdd2060aa irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0xdd241b4f spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xdd26e388 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0xdd2efc0f ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd51c65e xen_dma_ops +EXPORT_SYMBOL_GPL vmlinux 0xdd87f62c sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0xddbba42d flush_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0xddd58dc0 ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0xddf39dd6 default_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0xde124839 tpm_dev_vendor_release +EXPORT_SYMBOL_GPL vmlinux 0xde2effb1 platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xde300570 xen_swiotlb_sync_sg_for_device +EXPORT_SYMBOL_GPL vmlinux 0xde443f69 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0xde5e47c0 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0xde777ddd regmap_fields_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xde8ee4c0 max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xdecd6b59 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0xded09317 tpm_register_hardware +EXPORT_SYMBOL_GPL vmlinux 0xdee02d76 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0xdf0a418b debugfs_remove_recursive +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf149aaf pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0xdf29b2bb leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xdf509c8f ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0xdf5b139c power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0xdf685ccf stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0xdfd7555a sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0xdfd8aa9c kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL vmlinux 0xdfef06f7 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0xe0005c3d devres_find +EXPORT_SYMBOL_GPL vmlinux 0xe007de41 kallsyms_lookup_name +EXPORT_SYMBOL_GPL vmlinux 0xe01d551d da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0xe025007c blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0xe02eb6d0 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0xe03190bb rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0xe04aaac8 devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xe04e0ce7 set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0xe08c0c9d proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0xe098176e of_get_named_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0xe0bac52a platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0xe0e2d0f7 zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0xe0e3147c HYPERVISOR_sched_op +EXPORT_SYMBOL_GPL vmlinux 0xe147eec4 class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe15f26e0 extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe17806a1 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0xe1ac995d sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0xe1c32794 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xe1e08fa3 nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0xe22511ce get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0xe22e2a38 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xe22fcf63 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0xe295bfb3 phy_pm_runtime_get +EXPORT_SYMBOL_GPL vmlinux 0xe2e7840d regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe305ceed sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xe346edae device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe356061d fuse_put_request +EXPORT_SYMBOL_GPL vmlinux 0xe35bc900 sysfs_put +EXPORT_SYMBOL_GPL vmlinux 0xe38a1f4d simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0xe3995619 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0xe3ae3cec fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0xe3ddec28 transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0xe41534ce bind_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0xe418937a da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0xe45e65c7 sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xe47eed6d irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0xe48bd960 xenbus_map_ring_valloc +EXPORT_SYMBOL_GPL vmlinux 0xe4a2d888 pci_ats_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xe4c4b28f gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xe4e60394 ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xe51bb3de fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0xe52ae762 __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xe53d056d klist_next +EXPORT_SYMBOL_GPL vmlinux 0xe54a8183 sec_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xe55372d5 pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0xe575ad1b xenbus_unmap_ring_vfree +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58fb452 aer_irq +EXPORT_SYMBOL_GPL vmlinux 0xe5adb3a3 devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xe5b116ad inet6_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0xe5e43185 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0xe6354270 sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xe639a2a0 regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xe6414741 key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0xe651f76e selinux_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe670057b lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xe6a807d7 ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xe6b7c68e debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0xe6be079a virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0xe6c2a260 class_find_device +EXPORT_SYMBOL_GPL vmlinux 0xe6c68334 ddebug_remove_module +EXPORT_SYMBOL_GPL vmlinux 0xe6d0feb4 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0xe6e1c5fe uuid_be_gen +EXPORT_SYMBOL_GPL vmlinux 0xe6e9643d __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xe6fdc50c amba_ahb_device_add +EXPORT_SYMBOL_GPL vmlinux 0xe73c94bf extcon_set_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0xe741693f pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe79d2064 tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0xe7e1698e ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0xe7ed8c7e __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe813bd05 tpm_release +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe8400441 of_property_read_string_index +EXPORT_SYMBOL_GPL vmlinux 0xe86c6107 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0xe89bd243 ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe8a96073 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0xe8f01ab1 __mfn_to_pfn +EXPORT_SYMBOL_GPL vmlinux 0xe9104bba __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xe923f861 cgroup_is_descendant +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe94dea7e skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0xe956a75c pl320_ipc_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe95d00f0 gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0xe95ee20a sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0xe973f15c __scsi_get_command +EXPORT_SYMBOL_GPL vmlinux 0xe9774bbf regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xe99d644d extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe9af2211 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0xe9b27ac7 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0xe9ce04cb xen_swiotlb_sync_single_for_device +EXPORT_SYMBOL_GPL vmlinux 0xe9ddaf03 usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea192c77 tcp_reno_min_cwnd +EXPORT_SYMBOL_GPL vmlinux 0xea418e0f atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0xea628c20 bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0xea879280 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0xea9df16f vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0xeaa52ab9 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0xeabf0b33 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0xeb0357d5 led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0xeb159bbd bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0xeb1c3628 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xeb23323f disk_get_part +EXPORT_SYMBOL_GPL vmlinux 0xeb2798f7 xen_destroy_contiguous_region +EXPORT_SYMBOL_GPL vmlinux 0xeb2a6a4e inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0xeb3ef01d arm_pm_restart +EXPORT_SYMBOL_GPL vmlinux 0xeb442a7a palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0xeb4cc5d1 spi_master_resume +EXPORT_SYMBOL_GPL vmlinux 0xeb587552 ahash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0xeb60d844 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0xebbd6a94 thermal_generate_netlink_event +EXPORT_SYMBOL_GPL vmlinux 0xebcf88fe yield_to +EXPORT_SYMBOL_GPL vmlinux 0xebec57c4 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xec14cb3b regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0xec1b043e regulator_suspend_prepare +EXPORT_SYMBOL_GPL vmlinux 0xec250f50 blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0xec25f967 klist_del +EXPORT_SYMBOL_GPL vmlinux 0xec66806f find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0xec7375c5 kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0xec7c14a3 shash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0xecb40b65 arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0xecb7b6cc ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0xecc4cbc6 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0xecc5e564 tty_prepare_flip_string_flags +EXPORT_SYMBOL_GPL vmlinux 0xecc7ee54 blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0xecf0f3b6 sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0xed5ed9c4 sock_update_netprioidx +EXPORT_SYMBOL_GPL vmlinux 0xed609442 xen_swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL_GPL vmlinux 0xed7abd8b regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xed997cff __ip_route_output_key +EXPORT_SYMBOL_GPL vmlinux 0xedb0ea61 of_reset_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xedb43002 rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0xedbc6f67 gnttab_end_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0xedcdcb8b ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0xedcef1d3 __module_address +EXPORT_SYMBOL_GPL vmlinux 0xedd49930 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xee238c5e cgroup_taskset_next +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xeeb338e0 tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0xeec076e3 ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0xeeca89dc __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xeee2d2ab attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0xef615cf0 dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef6df1e9 ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0xef782b88 gnttab_grant_foreign_access_subpage +EXPORT_SYMBOL_GPL vmlinux 0xef812d36 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0xf0036ae4 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0xf0244e90 xen_swiotlb_unmap_sg_attrs +EXPORT_SYMBOL_GPL vmlinux 0xf06efa6c tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0xf06f89a4 regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xf0791f23 of_get_regulator_init_data +EXPORT_SYMBOL_GPL vmlinux 0xf0b0f641 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0xf0d9cf50 tps65912_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xf0e959a9 led_trigger_store +EXPORT_SYMBOL_GPL vmlinux 0xf0f488ac shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xf0f5dbc2 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0xf0f6d1f8 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0xf12e7afc xenbus_read_otherend_details +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1f9b3ca hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0xf21cc7cb sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf22129c4 inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0xf22eebdb lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0xf23f21e0 bmp085_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xf244bac0 __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0xf2527c2f blkio_subsys +EXPORT_SYMBOL_GPL vmlinux 0xf25521dc regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0xf26b564a set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0xf27977e2 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0xf29d7c85 tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0xf2b704d4 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0xf2c678c7 __put_net +EXPORT_SYMBOL_GPL vmlinux 0xf2d237e2 klist_init +EXPORT_SYMBOL_GPL vmlinux 0xf2de742f input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf2f077cc pkey_id_type_name +EXPORT_SYMBOL_GPL vmlinux 0xf2fca922 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0xf31546ca regmap_field_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf32bdc5d unregister_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf32c733d irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf382fc1e __ablkcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0xf3d7cd30 inet6_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0xf3d8924a regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf463e26c tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0xf47a7ec6 __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0xf4804c9a dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0xf494f618 mmc_regulator_get_ocrmask +EXPORT_SYMBOL_GPL vmlinux 0xf4957b33 xenbus_free_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xf499fdb2 rcu_barrier_bh +EXPORT_SYMBOL_GPL vmlinux 0xf4a482ea relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0xf4fc2d6c __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf535fd48 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf56761f2 __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0xf5785b42 evtchn_get +EXPORT_SYMBOL_GPL vmlinux 0xf5851b8d cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xf58bb109 pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xf5945bac gnttab_free_grant_references +EXPORT_SYMBOL_GPL vmlinux 0xf5a266b5 input_class +EXPORT_SYMBOL_GPL vmlinux 0xf5a311bc srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5b2eb64 ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0xf5b5b92e ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0xf5fef4e3 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf659124a serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0xf6592f7d blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0xf6602b80 md_run +EXPORT_SYMBOL_GPL vmlinux 0xf67aef4a hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xf69a635a sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0xf69a6945 tracepoint_iter_stop +EXPORT_SYMBOL_GPL vmlinux 0xf69f1a1d pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0xf6e148b2 dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0xf6e5625d vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf7016530 xenbus_gather +EXPORT_SYMBOL_GPL vmlinux 0xf703d50c devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0xf716e4f4 kvm_resched +EXPORT_SYMBOL_GPL vmlinux 0xf74615d0 bsg_register_queue +EXPORT_SYMBOL_GPL vmlinux 0xf7478dce regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf77fac2d __mmu_notifier_invalidate_range_end +EXPORT_SYMBOL_GPL vmlinux 0xf7902af5 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0xf7b9df81 sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0xf7e6a0c8 sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0xf80ff89c __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf816c866 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf84be4c5 driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xf8802492 print_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xf8a24f2b of_regulator_match +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8f7b1dd nf_queue_entry_release_refs +EXPORT_SYMBOL_GPL vmlinux 0xf8f8bdb5 css_next_descendant_post +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3d0b kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf9338786 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xf93ac22f tpm_read +EXPORT_SYMBOL_GPL vmlinux 0xf967422b HYPERVISOR_xen_version +EXPORT_SYMBOL_GPL vmlinux 0xf99d8407 pci_pri_enabled +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9ca3160 ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xf9ce9206 irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xf9d80f9d regulator_can_change_voltage +EXPORT_SYMBOL_GPL vmlinux 0xf9d9264e xen_have_vector_callback +EXPORT_SYMBOL_GPL vmlinux 0xf9dc3205 devres_release +EXPORT_SYMBOL_GPL vmlinux 0xfa012fe7 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0xfa0a7d36 eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0xfa16efc3 serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa1f4662 scatterwalk_start +EXPORT_SYMBOL_GPL vmlinux 0xfa2b404a register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0xfa4daf4f pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0xfa886d65 sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0xfa901b31 compat_get_timespec +EXPORT_SYMBOL_GPL vmlinux 0xfaae555e pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xfae47c9b devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xfae81004 blkg_stat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0xfafa9d03 ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0xfb22bc6c cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb886b03 napi_by_id +EXPORT_SYMBOL_GPL vmlinux 0xfb932ba2 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0xfb98f6c8 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xfba3f8fb pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0xfbb82570 device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xfbbedefd of_prop_next_string +EXPORT_SYMBOL_GPL vmlinux 0xfbc07f7f led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xfbc1e167 bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xfbea0279 tracepoint_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xfbfa2d65 ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc201b66 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0xfc55a3a9 __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xfc75c26f pci_cleanup_aer_uncorrect_error_status +EXPORT_SYMBOL_GPL vmlinux 0xfc83a3b9 call_filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0xfc8de756 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0xfcbb3587 dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0xfcd7bc0b ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0xfce9a196 tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xfcf5bf18 xenbus_unmap_ring +EXPORT_SYMBOL_GPL vmlinux 0xfd3e09cf blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfd51b281 gnttab_end_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0xfd7bdaa5 sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfd7bfe76 devm_phy_create +EXPORT_SYMBOL_GPL vmlinux 0xfd86438c platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0xfd94939d sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0xfdafa271 crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0xfdbac832 __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xfdbfe9f0 pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xfdc04040 inet6_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0xfdf4eee5 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0xfe1fa0db of_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0xfe4d17b5 xen_swiotlb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0xfe8e0077 __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfe9f930c do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xfef8a166 trace_current_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff44c1ea gfn_to_pfn +EXPORT_SYMBOL_GPL vmlinux 0xff48df71 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xffd6df3e xenbus_alloc_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xffeef0ca crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xfff0e6f9 pci_bus_resource_n --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/arm64/generic.compiler +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/arm64/generic.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu/Linaro 4.8.2-19ubuntu1) 4.8.2 --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/arm64/generic.modules +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/arm64/generic.modules @@ -0,0 +1,2835 @@ +3w-9xxx +3w-sas +3w-xxxx +6lowpan +6pack +8021q +8139cp +8139too +8250_dw +8250_pci +8255 +8255_pci +8390 +88pm800 +88pm805 +88pm80x +88pm80x_onkey +88pm860x_battery +88pm860x_bl +88pm860x_charger +88pm860x_onkey +88pm860x-ts +9p +9pnet +9pnet_rdma +9pnet_virtio +a100u2w +a3d +aacraid +aat2870_bl +aat2870-regulator +ab3100 +ab3100-otp +acard-ahci +acenic +act200l-sir +act_csum +act_gact +act_ipt +actisys-sir +act_mirred +act_nat +act_pedit +act_police +act_simple +act_skbedit +ad2s1200 +ad2s1210 +ad2s90 +ad5064 +ad525x_dpot +ad525x_dpot-i2c +ad525x_dpot-spi +ad5360 +ad5380 +ad5398 +ad5421 +ad5446 +ad5449 +ad5504 +ad5624r_spi +ad5686 +ad5755 +ad5764 +ad5791 +ad5930 +ad5933 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7152 +ad7192 +ad7266 +ad7280a +ad7291 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +ad7476 +ad7606 +ad7746 +ad7780 +ad7791 +ad7793 +ad7816 +ad7877 +ad7879 +ad7879-i2c +ad7879-spi +ad7887 +ad7923 +ad799x +ad8366 +ad9523 +ad9832 +ad9834 +ad9850 +ad9852 +ad9910 +ad9951 +adcxx +addi_apci_035 +addi_apci_1032 +addi_apci_1500 +addi_apci_1516 +addi_apci_1564 +addi_apci_16xx +addi_apci_2032 +addi_apci_2200 +addi_apci_3501 +addi_apci_3xxx +addi_watchdog +ade7753 +ade7754 +ade7758 +ade7759 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adfs +adi +adis16060 +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16204 +adis16209 +adis16220 +adis16240 +adis16260 +adis16400 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1275 +adm8211 +adm9240 +adp5520_bl +adp5520-keys +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +adq12b +ads1015 +ads7828 +ads7846 +ads7871 +ad_sigma_delta +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adv7180 +adv_pci1710 +adv_pci1723 +adv_pci1724 +adv_pci_dio +adxl34x +adxl34x-i2c +adxl34x-spi +adxrs450 +af_802154 +af_alg +affs +af_key +af_packet_diag +af-rxrpc +ah4 +ah6 +ahci +ahci_platform +ahci_xgene +aic79xx +aic7xxx +aic94xx +aio_aio12_8 +aio_iiro_16 +ak8975 +algif_hash +algif_skcipher +alim7101_wdt +altera_jtaguart +altera_ps2 +altera-stapl +altera_uart +alx +ambakmi +amba-pl010 +amc6821 +amd8111e +amplc_dio200 +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pc263 +amplc_pci224 +amplc_pci230 +amplc_pci263 +ams369fg06 +analog +anatop-regulator +ansi_cprng +anubis +aoe +apbps2 +apds9300 +apds9802als +apds990x +appletalk +applicom +ar7part +arc4 +arc_emac +arcmsr +arcnet +arc_ps2 +arc-rawmode +arc-rimi +arc_uart +arizona-i2c +arizona-spi +arkfb +arptable_filter +arp_tables +arpt_mangle +as3711_bl +as3711-regulator +as3722-regulator +as5011 +asc7621 +ast +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at86rf230 +at91_ether +ata_piix +ath +ath10k_core +ath10k_pci +ath5k +ath6kl_core +ath6kl_sdio +ath9k +ath9k_common +ath9k_hw +atl1 +atl1c +atl1e +atl2 +atm +atmel +atmel_mxt_ts +atmel_pci +atmel_pwm +atmel-pwm-bl +atmel-ssc +atmtcp +atp870u +atxp1 +aty128fb +atyfb +auo_k1900fb +auo_k1901fb +auo_k190x +auo-pixcir-ts +authenc +authencesn +auth_rpcgss +autofs4 +avmfritz +ax25 +b1 +b1dma +b1pci +b2c2-flexcop +b2c2-flexcop-pci +b43 +b43legacy +b44 +batman-adv +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm3510 +bcma +bd6107 +be2iscsi +be2net +befs +bfa +bfs +bh1770glc +bh1780gli +binfmt_misc +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +bluetooth +bma150 +bma180 +bmp085-i2c +bmp085-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bonding +bpctl_mod +bpqether +bq2415x_charger +bq24190_charger +bq24735-charger +bq27x00_battery +br2684 +brcmfmac +brcmsmac +brcmutil +bridge +broadsheetfb +bsd_comp +bt878 +btcoexist +btcx-risc +btmrvl +btmrvl_sdio +btrfs +btsdio +bttv +btwilink +bu21013_ts +budget +budget-av +budget-ci +budget-core +budget-patch +bw-qcam +bypass +c4 +c6xdigio +cachefiles +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camellia_generic +can +can-bcm +can-dev +can-gw +can-raw +capi +capidrv +capmode +carminefb +cassini +cast5_generic +cast6_generic +cast_common +cb710 +cb710-mmc +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +cb_pcimdda +cc770 +cc770_isa +cc770_platform +c_can +c_can_pci +c_can_platform +cciss +ccm +ceph +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch7006 +chipreg +chnl_net +cifs +cirrus +cirrusfb +clearpad_tm1217 +clip +clk-max77686 +clk-s2mps11 +clk-si5351 +clk-twl6040 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_fw +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm36651 +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cmtp +cnic +cobra +coda +com20020 +com20020-pci +com90io +com90xx +comedi +comedi_bond +comedi_fc +comedi_parport +comedi_test +configfs +contec_pci_dio +cordic +core +cpu-notifier-error-inject +c-qcam +cramfs +crc32 +crc7 +crc8 +crc-ccitt +crc-itu-t +cros_ec +cros_ec_i2c +cros_ec_keyb +cros_ec_spi +cryptd +cryptoloop +crypto_null +crypto_user +crystalhd +cs5345 +cs53l32a +csiostor +ctr +cts +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cx18 +cx22702 +cx2341x +cx24110 +cx24113 +cx24116 +cx24123 +cx25821 +cx25840 +cx8800 +cx8802 +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx88xx +cxd2099 +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxt1e1 +cy8ctmg110_ts +cyapa +cyber2000fb +cyclades +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +cyttsp_core +cyttsp_i2c +cyttsp_i2c_common +cyttsp_spi +da9030_battery +da9034-ts +da903x +da903x_bl +da9052-battery +da9052_bl +da9052-hwmon +da9052_onkey +da9052-regulator +da9052_tsi +da9052_wdt +da9055-hwmon +da9055_onkey +da9055-regulator +da9055_wdt +da9063-regulator +da9210-regulator +DAC960 +daqboard2000 +das08 +das08_isa +das08_pci +das16m1 +das6402 +das800 +db9 +dc395x +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +ddbridge +de2104x +decnet +deflate +defxx +denali +denali_dt +denali_pci +des_generic +dgap +dgnc +dgrp +diskonchip +divacapi +divadidd +diva_idi +diva_mnt +divas +dl2k +dlci +dlm +dm1105 +dm-bio-prison +dm-bufio +dm-cache +dm-cache-cleaner +dm-cache-mq +dm-crypt +dm-delay +dme1737 +dmfe +dm-flakey +dm-log +dm-log-userspace +dmm32at +dm-mirror +dm-multipath +dm-persistent-data +dm-queue-length +dm-raid +dm-region-hash +dm-round-robin +dm-service-time +dm-snapshot +dm-switch +dm-thin-pool +dm-verity +dmx3191d +dm-zero +dnet +dn_rtmsg +docg3 +docg4 +drbd +drm +drm_kms_helper +drxk +ds1621 +ds1682 +ds1wm +ds2482 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds620 +dsa_core +dscc4 +dss1_divert +dst +dst_ca +dt2801 +dt2811 +dt2814 +dt2815 +dt2817 +dt3000 +dt3155v4l +dummy +dummy-irq +dvb-bt8xx +dvb-core +dvb-pll +dvb-ttpci +dw_dmac +dw_dmac_core +dw_dmac_pci +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +earth-pt1 +ebt_802_3 +ebtable_broute +ebtable_filter +ebtable_nat +ebtables +ebt_among +ebt_arp +ebt_arpreply +ebt_dnat +ebt_ip +ebt_ip6 +ebt_limit +ebt_log +ebt_mark +ebt_mark_m +ebt_nflog +ebt_pkttype +ebt_redirect +ebt_snat +ebt_stp +ebt_vlan +echo +edt-ft5x06 +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efs +egalax_ts +elo +emc1403 +emc2103 +emc6w201 +em_canid +em_cmp +em_ipset +em_meta +em_nbyte +ems_pci +em_text +emu10k1-gp +em_u32 +enc28j60 +enclosure +eni +enic +epic100 +eql +esas2r +esi-sir +esp4 +esp6 +et131x +ethoc +evbug +exofs +extcon-adc-jack +extcon-gpio +extcon-max77693 +extcon-max8997 +extcon-palmas +f2fs +f71805f +f71882fg +f75375s +fakelb +fan53555 +farsync +faulty +fb_ddc +fb_sys_fops +fcoe +fcrypt +fdomain +fealnx +ff-memless +fid +firedtv +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fixed +fl512 +fld +fm801-gp +fmc +fmc-chardev +fmc-fakedev +fmc-trivial +fmc-write-eeprom +fm_drv +forcedeth +fore_200e +freevxfs +fsa9480 +fscache +ftl +fujitsu_ts +g450_pll +g760a +g762 +gamecon +gameport +garp +gcm +gdmwm +generic +generic-adc-battery +generic_bl +gen_probe +gf128mul +gf2k +gfs2 +ghash-generic +gigaset +girbil-sir +gl518sm +gl520sm +gluebi +goldfishfb +gp2ap002a00f +gp2ap020a00f +gpio +gpio-74x164 +gpio-addr-flash +gpio-adnp +gpio-adp5520 +gpio-adp5588 +gpio-amd8111 +gpio-arizona +gpio_backlight +gpio-charger +gpio-da9052 +gpio-da9055 +gpio-fan +gpio-generic +gpio-grgpio +gpio-ir-recv +gpio-janz-ttl +gpio-kempld +gpio_keys +gpio_keys_polled +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-mc33880 +gpio-mcp23s08 +gpio-ml-ioh +gpio_mouse +gpio-pca953x +gpio-pcf857x +gpio-rdc321x +gpio-regulator +gpio_tilt_polled +gpio-tps65912 +gpio-ts5500 +gpio-vx855 +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +grcan +gre +grip +grip_mp +gsc_hpdi +guillemot +gunze +hamachi +hampshire +hci +hci_uart +hci_vhci +hdlc +hdlc_cisco +hdlcdrv +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +he +hexium_gemini +hexium_orion +hfc4s8s_l1 +hfcmulti +hfcpci +hfs +hfsplus +hid +hid-a4tech +hid-apple +hid-aureal +hid-axff +hid-belkin +hid-cherry +hid-chicony +hid-cypress +hid-dr +hid-elecom +hid-emsff +hid-ezkey +hid-gaff +hid-generic +hid-gyration +hid-icade +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-lenovo-tpkbd +hid-logitech +hid-logitech-dj +hid-magicmouse +hid-microsoft +hid-monterey +hid-multitouch +hid-ortek +hidp +hid-petalynx +hid-picolcd +hid-pl +hid-primax +hid-saitek +hid-samsung +hid-sensor-accel-3d +hid-sensor-als +hid-sensor-gyro-3d +hid-sensor-hub +hid-sensor-iio-common +hid-sensor-magn-3d +hid-sensor-trigger +hid-sjoy +hid-speedlink +hid-steelseries +hid-sunplus +hid-thingm +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-uclogic +hid-wacom +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hih6130 +hisax +hisax_fcpcipnp +hisax_isac +hmc5843 +hmc6352 +hopper +hostap +hostap_pci +hostap_plx +hp100 +hpfs +hpilo +hpsa +hptiop +hsi +hsi_char +hsr +htc-pasic3 +htu21 +hwmon-vid +hx8357 +hysdn +i2c-algo-bit +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd8111 +i2c-arb-gpio-challenge +i2c-cbus-gpio +i2c-designware-core +i2c-designware-pci +i2c-designware-platform +i2c-dev +i2c-eg20t +i2c-gpio +i2c-hid +i2c-i801 +i2c-isch +i2c-kempld +i2c-matroxfb +i2c-mux +i2c-mux-gpio +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-nforce2 +i2c-nomadik +i2c-ocores +i2c-parport +i2c-parport-light +i2c-pca-platform +i2c-piix4 +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-versatile +i2c-via +i2c-viapro +i2c-xiic +i2o_block +i2o_bus +i2o_core +i2o_proc +i2o_scsi +i40e +i5k_amb +i6300esb +i740fb +ib_addr +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mad +ibmaem +ibmpex +ib_mthca +ib_qib +ib_sa +ib_srp +ib_srpt +ib_ucm +ib_umad +ib_uverbs +icp_multi +ics932s401 +idt77252 +ieee802154 +ifb +iforce +igb +igbvf +iio_dummy +iio_hwmon +iio-trig-interrupt +iio-trig-periodic-rtc +iio-trig-sysfs +ii_pci20kc +ili210x +ili922x +ili9320 +imx074 +ina209 +ina2xx +industrialio +industrialio-triggered-buffer +inet_diag +inexio +inftl +initio +input-polldev +intel_vr_nor +interact +interval_tree_test +inv-mpu6050 +ioc4 +ip6_gre +ip6table_filter +ip6table_mangle +ip6table_nat +ip6table_raw +ip6_tables +ip6table_security +ip6t_ah +ip6t_eui64 +ip6t_frag +ip6t_hbh +ip6t_ipv6header +ip6t_MASQUERADE +ip6t_mh +ip6t_NPT +ip6t_REJECT +ip6t_rpfilter +ip6t_rt +ip6t_SYNPROXY +ip6_tunnel +ip6_vti +ipack +ipcomp +ipcomp6 +ipddp +ipg +ip_gre +iphase +ipip +ipmi_devintf +ipmi_poweroff +ipmi_si +ipmi_watchdog +ipoctal +ipr +ips +ip_set +ip_set_bitmap_ip +ip_set_bitmap_ipmac +ip_set_bitmap_port +ip_set_hash_ip +ip_set_hash_ipport +ip_set_hash_ipportip +ip_set_hash_ipportnet +ip_set_hash_net +ip_set_hash_netiface +ip_set_hash_netnet +ip_set_hash_netport +ip_set_hash_netportnet +ip_set_list_set +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +ip_tables +iptable_security +ipt_ah +ipt_CLUSTERIP +ipt_ECN +ipt_MASQUERADE +ipt_REJECT +ipt_rpfilter +ipt_SYNPROXY +ipt_ULOG +ip_tunnel +ip_vs +ip_vs_dh +ip_vs_ftp +ip_vs_lblc +ip_vs_lblcr +ip_vs_lc +ip_vs_nq +ip_vs_pe_sip +ip_vs_rr +ip_vs_sed +ip_vs_sh +ip_vs_wlc +ip_vs_wrr +ip_vti +ipw2100 +ipw2200 +ipx +ircomm +ircomm-tty +irda +ir-jvc-decoder +ir-kbd-i2c +irlan +ir-lirc-codec +ir-mce_kbd-decoder +ir-nec-decoder +irnet +ir-rc5-decoder +ir-rc5-sz-decoder +ir-rc6-decoder +ir-sanyo-decoder +ir-sony-decoder +irtty-sir +iscsi_boot_sysfs +iscsi_target_mod +iscsi_tcp +isdn +isdn_bsdcomp +isdnhdlc +isicom +isl29003 +isl29018 +isl29020 +isl29028 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isofs +it87 +itd1000 +itg3200 +ivtv +ivtvfb +iw_c2 +iw_cm +iw_cxgb3 +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +iw_nes +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsm +kafs +kcomedilib +ke_counter +kempld-core +kempld_wdt +kernelcapi +kfifo_buf +khazad +ko2iblnd +ks8842 +ks8851 +ks8851_mll +ksocklnd +ksz884x +kvaser_pci +kxsd9 +kxtj9 +kyrofb +l1oip +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +l2tp_ppp +l4f00242t03 +l64781 +lanai +lapb +lapbether +latch-addr-flash +lattice-ecp3-config +lcd +ld9040 +lec +leds-88pm860x +leds-adp5520 +leds-atmel-pwm +leds-bd2802 +leds-blinkm +leds-da903x +leds-da9052 +leds-dac124s085 +leds-gpio +leds-lm3530 +leds-lm3533 +leds-lm355x +leds-lm3642 +leds-lp3944 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lt3593 +leds-max8997 +leds-mc13783 +leds-ot200 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pca9685 +leds-pwm +leds-regulator +leds-tca6507 +leds-wm831x-status +leds-wm8350 +ledtrig-backlight +ledtrig-camera +ledtrig-default-on +ledtrig-gpio +ledtrig-heartbeat +ledtrig-oneshot +ledtrig-timer +ledtrig-transient +lgdt3305 +lgdt330x +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libahci +libceph +libcfs +libcrc32c +libcxgbi +libertas +libertas_sdio +libertas_spi +libertas_tf +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libore +libosd +libsas +libsrp +lightning +lineage-pem +linear +lirc_bt829 +lirc_dev +lirc_parallel +lirc_serial +lirc_sir +lirc_zilog +lis3lv02d +lis3lv02d_i2c +lis3lv02d_spi +litelink-sir +lkkbd +llc +llc2 +llog_test +lm25066 +lm3533-als +lm3533_bl +lm3533-core +lm3533-ctrlbank +lm3630a_bl +lm3639_bl +lm63 +lm70 +lm73 +lm75 +lm77 +lm78 +lm80 +lm83 +lm8323 +lm8333 +lm85 +lm87 +lm90 +lm92 +lm93 +lm95234 +lm95241 +lm95245 +lms283gf05 +lms501kf03 +lmv +lnbp21 +lnet +lnet_selftest +lockd +lov +lp +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp8755 +lp8788_bl +lp8788-charger +lpc_ich +lpc_sch +lpddr_cmds +lpfc +lru_cache +lrw +ltc2978 +ltc4151 +ltc4215 +ltc4245 +ltc4261 +ltv350qv +lustre +lv5207lp +lvfs +lz4 +lz4_compress +lz4hc +lz4hc_compress +m25p80 +m2m-deinterlace +m52790 +ma600-sir +mac80211 +mac80211_hwsim +mac802154 +macb +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mac-gaelic +mac-greek +mac-iceland +mac-inuit +macmodes +mac-roman +mac-romanian +mac-turkish +macvlan +macvtap +mag3110 +magellan +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +matrix-keymap +matrix_keypad +matroxfb_accel +matroxfb_base +matroxfb_crtc2 +matroxfb_DAC1064 +matroxfb_g450 +matroxfb_maven +matroxfb_misc +matroxfb_Ti3026 +matrox_w1 +max1111 +max11801_ts +max1363 +max1586 +max16064 +max16065 +max1619 +max1668 +max17040_battery +max17042_battery +max197 +max3100 +max34440 +max517 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77686 +max77693 +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925_bl +max8925_onkey +max8925_power +max8925-regulator +max8952 +max8973-regulator +max8997 +max8997_charger +max8998 +max8998_charger +mb862xxfb +mb86a16 +mc13783-adc +mc13783-pwrbutton +mc13783-regulator +mc13783_ts +mc13892-regulator +mc13xxx-core +mc13xxx-i2c +mc13xxx-regulator-core +mc13xxx-spi +mc44s803 +mcp2120-sir +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp4725 +mcs5000_ts +mcs_touchkey +md4 +mdc +mdio +me4000 +me_daq +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mem2mem_testdev +memstick +mena21_wdt +metronomefb +mfd +mga +mgc +michael_mic +microread +microread_i2c +minix +mip6 +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +mite +mk712 +mkiss +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mma8450 +mmc_spi +mms114 +moxa +mpc624 +mpoa +mpr121_touchkey +mpt2sas +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +mrst_max3110 +ms_block +msdos +msp3400 +mspro_block +mt20xx +mt2131 +mt29f_spinand +mt312 +mt352 +mt9m001 +mt9m111 +mt9t031 +mt9t112 +mt9v022 +mtd +mtd_blkdevs +mtdblock +mtdblock_ro +mtd_dataflash +mtdoops +mtdram +mtdswap +mtip32xx +mtouch +multipath +multiq3 +mv88e6060 +mv88e6xxx_drv +mvmdio +mvsas +mvumi +mwifiex +mwifiex_pcie +mwifiex_sdio +mwl8k +mxb +mxl5005s +mxser +myri10ge +nand +nand_bch +nand_ecc +nand_ids +nandsim +natsemi +nau7802 +nbd +nci +ncpfs +nct6775 +ne2k-pci +neofb +netconsole +netjet +netlink_diag +netprio_cgroup +netrom +netxen_nic +newtonkbd +nfc +nfc_digital +nf_conntrack +nf_conntrack_amanda +nf_conntrack_broadcast +nf_conntrack_ftp +nf_conntrack_h323 +nf_conntrack_ipv4 +nf_conntrack_ipv6 +nf_conntrack_irc +nf_conntrack_netbios_ns +nf_conntrack_netlink +nf_conntrack_pptp +nf_conntrack_proto_dccp +nf_conntrack_proto_gre +nf_conntrack_proto_sctp +nf_conntrack_proto_udplite +nf_conntrack_sane +nf_conntrack_sip +nf_conntrack_snmp +nf_conntrack_tftp +nfcsim +nfcwilink +nf_defrag_ipv4 +nf_defrag_ipv6 +nf_nat +nf_nat_amanda +nf_nat_ftp +nf_nat_h323 +nf_nat_ipv4 +nf_nat_ipv6 +nf_nat_irc +nf_nat_pptp +nf_nat_proto_dccp +nf_nat_proto_gre +nf_nat_proto_sctp +nf_nat_proto_udplite +nf_nat_sip +nf_nat_snmp_basic +nf_nat_tftp +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +nfnetlink_log +nfnetlink_queue +nfs +nfs_acl +nfsd +nfs_layout_nfsv41_files +nfsv2 +nfsv3 +nfsv4 +nf_synproxy_core +nf_tables +nf_tables_arp +nf_tables_bridge +nf_tables_ipv4 +nf_tables_ipv6 +nft_chain_nat_ipv4 +nft_chain_nat_ipv6 +nft_chain_route_ipv4 +nft_chain_route_ipv6 +nft_compat +nft_counter +nft_ct +nft_exthdr +nft_hash +nftl +nft_limit +nft_log +nft_meta +nft_nat +nft_rbtree +nft_reject_ipv4 +ngene +n_hdlc +ni_6527 +ni_65xx +ni_660x +ni_670x +ni_at_ao +ni_atmio +ni_atmio16d +nicstar +ni_labpc +ni_labpc_pci +nilfs2 +ni_pcidio +ni_pcimio +ni_tio +ni_tiocmd +niu +nlmon +nls_ascii +nls_cp1250 +nls_cp1251 +nls_cp1255 +nls_cp737 +nls_cp775 +nls_cp850 +nls_cp852 +nls_cp855 +nls_cp857 +nls_cp860 +nls_cp861 +nls_cp862 +nls_cp863 +nls_cp864 +nls_cp865 +nls_cp866 +nls_cp869 +nls_cp874 +nls_cp932 +nls_cp936 +nls_cp949 +nls_cp950 +nls_euc-jp +nls_iso8859-1 +nls_iso8859-13 +nls_iso8859-14 +nls_iso8859-15 +nls_iso8859-2 +nls_iso8859-3 +nls_iso8859-4 +nls_iso8859-5 +nls_iso8859-6 +nls_iso8859-7 +nls_iso8859-9 +nls_koi8-r +nls_koi8-ru +nls_koi8-u +nls_utf8 +nosy +notifier-error-inject +nouveau +nozomi +n_r3964 +ns558 +ns83820 +ntc_thermistor +ntfs +n_tracerouter +n_tracesink +null_blk +nvidiafb +nvme +nxt200x +nxt6000 +obdclass +obdecho +objlayoutdriver +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stackglue +ocfs2_stack_o2cb +ocfs2_stack_user +ocrdma +of_mmc_spi +ofpart +old_belkin-sir +olpc_apsp +omfs +onenand +opencores-kbd +openvswitch +or51132 +or51211 +orinoco +orinoco_nortel +orinoco_plx +orinoco_tmd +osc +osd +osdblk +osst +output +ov2640 +ov5642 +ov6650 +ov7670 +ov772x +ov9640 +ov9740 +overlayfs +p54common +p54pci +p54spi +p8022 +p8023 +palmas-regulator +panel +parkbd +parport +parport_ax88796 +pata_ali +pata_amd +pata_arasan_cf +pata_artop +pata_atiixp +pata_atp867x +pata_cmd640 +pata_cmd64x +pata_cs5520 +pata_cs5530 +pata_cs5536 +pata_cypress +pata_efar +pata_hpt366 +pata_hpt37x +pata_hpt3x2n +pata_hpt3x3 +pata_it8213 +pata_it821x +pata_jmicron +pata_legacy +pata_marvell +pata_mpiix +pata_netcell +pata_ninja32 +pata_ns87410 +pata_ns87415 +pata_of_platform +pata_oldpiix +pata_opti +pata_optidma +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sc1200 +pata_sch +pata_serverworks +pata_sil680 +pata_sl82c105 +pata_triflex +pata_via +pc300too +pc87360 +pc87427 +pcbc +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_can +pch_phub +pch_uart +pci +pci200syn +pcips2 +pci-stub +pcl711 +pcl724 +pcl726 +pcl730 +pcm3724 +pcmad +pcmda12 +pcmmio +pcmuio +pcnet32 +pcrypt +pcwd_pci +pda_power +pdc_adma +peak_pci +penmount +percpu_test +pfuze100-regulator +phantom +phison +phonet +phram +phy-exynos-dp-video +physmap +physmap_of +pixcir_i2c_ts +pktcdvd +pktgen +pl330 +platform_lcd +plat_nand +plat-ram +plip +pluto2 +plx_pci +pm2fb +pm3fb +pm80xx +pmbus +pmbus_core +pmc551 +pmcraid +pn544 +pn544_i2c +pn_pep +poc +ppdev +ppp_async +ppp_deflate +ppp_mppe +pppoatm +pppoe +pppox +ppp_synctty +pps_core +pps-gpio +pps-ldisc +pps_parport +pptp +ps2mult +psmouse +psnap +ptlrpc +ptp +pwm_bl +pwm-pca9685 +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qnx4 +qnx6 +qt1070 +qt2160 +quota_tree +quota_v1 +quota_v2 +qxl +r128 +r592 +r6040 +r8169 +r8187se +r8192e_pci +r852 +radeon +radeonfb +radio-i2c-si470x +radio-maxiradio +radio-si4713 +radio-tea5764 +radio-timb +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid6test +raid_class +ramoops +raw +rbd +rbtree_test +rc5t583-regulator +rc-adstech-dvb-t-pci +rc-alink-dtu-m +rc-anysee +rc-apac-viewcomp +rcar_vin +rc-asus-pc39 +rc-asus-ps3-100 +rc-ati-tv-wonder-hd-600 +rc-ati-x10 +rc-avermedia +rc-avermedia-a16d +rc-avermedia-cardbus +rc-avermedia-dvbt +rc-avermedia-m135a +rc-avermedia-m733a-rm-k6 +rc-avermedia-rm-ks +rc-avertv-303 +rc-azurewave-ad-tu700 +rc-behold +rc-behold-columbus +rc-budget-ci-old +rc-cinergy +rc-cinergy-1400 +rc-core +rc-delock-61959 +rc-dib0700-nec +rc-dib0700-rc5 +rc-digitalnow-tinytwin +rc-digittrade +rc-dm1105-nec +rc-dntv-live-dvb-t +rc-dntv-live-dvbt-pro +rc-em-terratec +rc-encore-enltv +rc-encore-enltv2 +rc-encore-enltv-fm53 +rc-evga-indtube +rc-eztv +rc-flydvb +rc-flyvideo +rc-fusionhdtv-mce +rc-gadmei-rm008z +rc-genius-tvgo-a11mce +rc-gotview7135 +rc-hauppauge +rc-imon-mce +rc-imon-pad +rc-iodata-bctv7e +rc-it913x-v1 +rc-it913x-v2 +rc-kaiomy +rc-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lirc +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +rc-msi-digivox-ii +rc-msi-digivox-iii +rc-msi-tvanywhere +rc-msi-tvanywhere-plus +rc-nebula +rc-nec-terratec-cinergy-xs +rc-norwood +rc-npgtech +rc-pctv-sedna +rc-pinnacle-color +rc-pinnacle-grey +rc-pinnacle-pctv-hd +rc-pixelview +rc-pixelview-002t +rc-pixelview-mk12 +rc-pixelview-new +rc-powercolor-real-angel +rc-proteus-2309 +rc-purpletv +rc-pv951 +rc-rc6-mce +rc-real-audio-220-32-keys +rc-reddo +rc-snapstream-firefly +rc-streamzap +rc-tbs-nec +rc-technisat-usb2 +rc-terratec-cinergy-xs +rc-terratec-slim +rc-terratec-slim-2 +rc-tevii-nec +rc-tivo +rc-total-media-in-hand +rc-total-media-in-hand-02 +rc-trekstor +rc-tt-1500 +rc-twinhan1027 +rc-videomate-m1f +rc-videomate-s350 +rc-videomate-tv-pvr +rc-winfast +rc-winfast-usbii-deluxe +rdc321x-southbridge +rdma_cm +rdma_ucm +rds +rds_rdma +rds_tcp +redboot +reed_solomon +reiserfs +remoteproc +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd_ftl +rfkill-gpio +rfkill-regulator +rivafb +rj54n1cb0c +rmd128 +rmd160 +rmd256 +rmd320 +rocket +romfs +rose +rotary_encoder +rp2 +rpcsec_gss_krb5 +rsxx +rt2400pci +rt2500pci +rt2800lib +rt2800mmio +rt2800pci +rt2x00lib +rt2x00mmio +rt2x00pci +rt61pci +rtc-88pm80x +rtc-88pm860x +rtc-ab3100 +rtc-as3722 +rtc-bq32k +rtc-bq4802 +rtc-da9052 +rtc-da9055 +rtc-ds1286 +rtc-ds1305 +rtc-ds1307 +rtc-ds1374 +rtc-ds1390 +rtc-ds1511 +rtc-ds1553 +rtc-ds1672 +rtc-ds1742 +rtc-ds2404 +rtc-ds3232 +rtc-ds3234 +rtc-em3027 +rtc-fm3130 +rtc-isl12022 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-moxart +rtc-msm6242 +rtc-palmas +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf8523 +rtc-pcf8563 +rtc-pcf8583 +rtc-pl030 +rtc-pl031 +rtc-r9701 +rtc-rc5t583 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3029c2 +rtc-rx4581 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-snvs +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtd520 +rti800 +rti802 +rtl8180 +rtl8188ee +rtl8192c-common +rtl8192ce +rtl8192de +rtl8192se +rtl8723ae +rtl8723be +rtl8723-common +rtl8821ae +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtl_pci +rtlwifi +rtsx_pci +rtsx_pci_ms +rtsx_pci_sdmmc +rxkad +s1d13xxxfb +s2io +s3fb +s526 +s5h1409 +s5h1411 +s5h1420 +s5m8767 +s626 +s6e63m0 +saa6588 +saa6752hs +saa7115 +saa7127 +saa7134 +saa7134-dvb +saa7134-empress +saa7146 +saa7146_vv +saa7164 +saa717x +saa7706h +salsa20_generic +samsung-keypad +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_rcar +sata_sil +sata_sil24 +sata_sis +sata_svw +sata_sx4 +sata_uli +sata_via +sata_vsc +savage +savagefb +sbe-2t3e3 +sbp_target +sbs-battery +sc92031 +sca3000 +sch5627 +sch5636 +sch56xx-common +sch_atm +sch_cbq +sch_choke +sch_codel +sch_drr +sch_dsmark +sch_fq +sch_fq_codel +sch_gred +sch_hfsc +sch_htb +sch_ingress +sch_mqprio +sch_multiq +sch_netem +sch_plug +sch_prio +sch_qfq +sch_red +sch_sfb +sch_sfq +sch_tbf +sch_teql +scsi_debug +scsi_dh +scsi_dh_alua +scsi_dh_emc +scsi_dh_hp_sw +scsi_dh_rdac +scsi_tgt +scsi_transport_fc +scsi_transport_iscsi +scsi_transport_sas +scsi_transport_spi +scsi_transport_srp +sctp +sdhci +sdhci-pci +sdhci-pltfm +sdhci-pxav2 +sdhci-pxav3 +sdio_uart +seed +sep_driver +seqiv +ser_gigaset +serial2002 +serio_raw +sermouse +serpent_generic +serport +ses +sfc +sh_eth +sh_mobile_ceu_camera +sh_mobile_csi2 +sht15 +sht21 +sh_veu +si21xx +si4713-i2c +si476x-core +sidewinder +sil164 +sir-dev +sis190 +sis5595 +sis900 +sisfb +sit +sja1000 +sja1000_isa +sja1000_of_platform +sja1000_platform +skd +skel +skfp +skge +sky2 +slcan +slip +slram +sm501 +sm501fb +sm7xxfb +smb347-charger +sm_common +sm_ftl +smm665 +smsc47b397 +smsc47m1 +smsc47m192 +smsc911x +smsc9420 +smsdvb +smsmdtv +smssdio +soc_camera +soc_camera_platform +soc_mediabus +soc_scale_crop +softdog +softing +solos-pci +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +speedfax +spi-altera +spi-bitbang +spi-butterfly +spidev +spi-dw +spi-dw-midpci +spi-dw-mmio +spi-gpio +spi_ks8995 +spi-lm70llp +spi-oc-tiny +spi-pl022 +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-sc18is602 +spi-tle62x0 +spi-topcliff-pch +spi-xcomm +squashfs +ssb +ssd1307fb +ssfdc +sst25l +sstfb +st +st1232 +st_accel +st_accel_i2c +st_accel_spi +starfire +stb0899 +stb6000 +stb6100 +st_drv +ste_modem_rproc +stex +st_gyro +st_gyro_i2c +st_gyro_spi +stinger +st_magn +st_magn_i2c +st_magn_spi +stmmac +stmpe-keypad +stmpe-ts +stowaway +stp +st_pressure +st_pressure_i2c +st_pressure_spi +st_sensors +st_sensors_i2c +st_sensors_spi +stv0288 +stv0297 +stv0299 +stv0900 +stv090x +stv6110x +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +svcrdma +svgalib +sx8 +sym53c8xx +synaptics_i2c +synaptics_i2c_rmi4 +synclink_gt +synclinkmp +syscopyarea +sysfillrect +sysimgblt +sysv +t1pci +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +tc3589x-keypad +tca6416-keypad +tca8418_keypad +tcm_fc +tcm_loop +tcm_qla2xxx +tcp_bic +tcp_diag +tcp_highspeed +tcp_htcp +tcp_hybla +tcp_illinois +tcp_lp +tcp_scalable +tcp_vegas +tcp_veno +tcp_westwood +tcp_yeah +tcrypt +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10086 +tda18271 +tda18271c2dd +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda998x +tdfx +tdfxfb +tdo24m +tea +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tef6862 +tehuti +tekram-sir +test-kstrtox +test_power +test-string_helpers +tg3 +tgr192 +thmc50 +ti-adc081c +ti_dac7512 +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +timb_dma +timberdale +timblogiw +timbuart +timeriomem-rng +tipc +tlan +tmdc +tmiofb +tmp006 +tmp102 +tmp401 +tmp421 +tmscsim +toim3232-sir +touchit213 +touchright +touchwin +tpci200 +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_i2c_stm_st33 +tpm-rng +tps51632-regulator +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65090-charger +tps65090-regulator +tps65217 +tps65217_bl +tps65217-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps80031-regulator +tridentfb +ts2020 +ts_bm +tsc2005 +tsc2007 +tsc40 +ts_fsm +ts_kmp +tsl2550 +tsl2563 +tsl2583 +tsl2x7x_core +tsl4531 +ttm +ttpci-eeprom +tua6100 +tulip +tuner +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +tvaudio +tveeprom +tw9910 +twidjoy +twl6040-vibra +twofish_common +twofish_generic +typhoon +uartlite +ubi +ubifs +ucd9000 +ucd9200 +udf +udp_diag +ufs +ufshcd +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_sercos3 +uli526x +umc +umem +unioxx5 +unix_diag +upd64031a +upd64083 +userspace-consumer +uvesafb +uwb +v4l2-common +v4l2-dv-timings +v4l2-int-device +v4l2-mem2mem +vcan +vcnl4000 +ves1820 +ves1x93 +veth +vexpress +vgastate +vgg2432a4 +vhost +vhost_net +vhost_scsi +via +via686a +via-rhine +via-sdmmc +via-velocity +videobuf2-core +videobuf2-dma-contig +videobuf2-memops +videobuf2-vmalloc +videobuf-core +videobuf-dma-contig +videobuf-dma-sg +videobuf-dvb +videobuf-vmalloc +videodev +virtio_pci +virtio-rng +virtio_scsi +virtual +vivi +vlsi_ir +vmac +vme +vme_pio2 +vme_user +vme_vmivme7805 +vmwgfx +vmxnet3 +vp27smpx +vringh +vsock +vsxxxaa +vt1211 +vt6655_stage +vt8231 +vt8623fb +vx855 +vxge +vxlan +w1_bq27000 +w1_ds2408 +w1_ds2413 +w1_ds2423 +w1_ds2431 +w1_ds2433 +w1_ds2760 +w1_ds2780 +w1_ds2781 +w1_ds28e04 +w1-gpio +w1_smem +w1_therm +w5100 +w5300 +w6692 +w83627ehf +w83627hf +w83781d +w83791d +w83792d +w83793 +w83795 +w83l785ts +w83l786ng +w90p910_ts +w9966 +wacom_i2c +wacom_w8001 +walkera0701 +wanxl +warrior +wcn36xx +wdt_pci +whci +whc-rc +wil6210 +wimax +winbond-840 +wire +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wlcore +wlcore_sdio +wlcore_spi +wm831x_backup +wm831x_bl +wm831x-dcdc +wm831x-hwmon +wm831x-isink +wm831x-ldo +wm831x-on +wm831x_power +wm831x-ts +wm831x_wdt +wm8350-hwmon +wm8350_power +wm8350-regulator +wm8350_wdt +wm8400-regulator +wm8739 +wm8775 +wm8994-regulator +wp512 +x25 +x25_asy +xc4000 +xc5000 +xcbc +xen-blkback +xen-evtchn +xen-fbfront +xenfs +xen-gntalloc +xen-gntdev +xen-kbdfront +xen-netback +xen-privcmd +xen-tpmfront +xen_wdt +xfrm4_mode_beet +xfrm4_mode_transport +xfrm4_mode_tunnel +xfrm4_tunnel +xfrm6_mode_beet +xfrm6_mode_ro +xfrm6_mode_transport +xfrm6_mode_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_ipcomp +xfrm_user +xfs +xgene-enet +xgene-qmtm +xgifb +xgmac +xilinx_uartps +xillybus_core +xillybus_of +xillybus_pcie +xor +xprtrdma +x_tables +xt_addrtype +xt_AUDIT +xt_bpf +xt_CHECKSUM +xt_CLASSIFY +xt_cluster +xt_comment +xt_connbytes +xt_connlabel +xt_connlimit +xt_connmark +xt_CONNSECMARK +xt_conntrack +xt_cpu +xt_CT +xt_dccp +xt_devgroup +xt_dscp +xt_DSCP +xt_ecn +xt_esp +xt_hashlimit +xt_helper +xt_hl +xt_HL +xt_HMARK +xt_IDLETIMER +xt_iprange +xt_ipvs +xtkbd +xt_LED +xt_length +xt_limit +xt_LOG +xt_mac +xt_mark +xt_multiport +xt_nat +xt_NETMAP +xt_nfacct +xt_NFLOG +xt_NFQUEUE +xt_osf +xt_owner +xt_physdev +xt_pkttype +xt_policy +xt_quota +xt_rateest +xt_RATEEST +xt_realm +xt_recent +xt_REDIRECT +xts +xt_sctp +xt_SECMARK +xt_set +xt_socket +xt_state +xt_statistic +xt_string +xt_tcpmss +xt_TCPMSS +xt_TCPOPTSTRIP +xt_tcpudp +xt_TEE +xt_time +xt_TPROXY +xt_TRACE +xt_u32 +xz_dec_test +yam +yellowfin +zforce_ts +zhenhua +zl10036 +zl10039 +zl10353 +zl6100 +zlib +zram --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/armhf/generic +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/armhf/generic @@ -0,0 +1,16628 @@ +EXPORT_SYMBOL arch/arm/crypto/aes-arm 0x276b2f72 private_AES_set_encrypt_key +EXPORT_SYMBOL arch/arm/crypto/aes-arm 0x6c62e582 AES_decrypt +EXPORT_SYMBOL arch/arm/crypto/aes-arm 0xc30fcbed AES_encrypt +EXPORT_SYMBOL arch/arm/crypto/aes-arm 0xcf024ae9 private_AES_set_decrypt_key +EXPORT_SYMBOL arch/arm/lib/xor-neon 0x0f051164 xor_block_neon_inner +EXPORT_SYMBOL crypto/gf128mul 0x0c2f123f gf128mul_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x1068004b gf128mul_bbe +EXPORT_SYMBOL crypto/gf128mul 0x2f2889a0 gf128mul_init_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x384ef9ce gf128mul_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x56af0dbd gf128mul_x_ble +EXPORT_SYMBOL crypto/gf128mul 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL crypto/gf128mul 0xbd17a0df gf128mul_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0xc0890413 gf128mul_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/atm/suni 0x8b2c4a70 suni_init +EXPORT_SYMBOL drivers/bcma/bcma 0xde23c041 bcma_core_dma_translation +EXPORT_SYMBOL drivers/block/drbd/drbd 0x127a5901 drbd_set_st_err_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x35131b36 drbd_role_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x7730f22d drbd_conn_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0xaf27bebf drbd_disk_str +EXPORT_SYMBOL drivers/block/paride/paride 0x01d0009e pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0x0744efd0 paride_unregister +EXPORT_SYMBOL drivers/block/paride/paride 0x0a9a9c94 pi_init +EXPORT_SYMBOL drivers/block/paride/paride 0x2cbac21f pi_disconnect +EXPORT_SYMBOL drivers/block/paride/paride 0x417364d9 pi_write_block +EXPORT_SYMBOL drivers/block/paride/paride 0x45df56a0 paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0x785003fa pi_release +EXPORT_SYMBOL drivers/block/paride/paride 0x8821939e pi_read_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x91153a62 pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xca3f1b84 pi_read_block +EXPORT_SYMBOL drivers/block/paride/paride 0xdcef7d3c pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xf382d036 pi_write_regr +EXPORT_SYMBOL drivers/char/nvram 0x0f28cb91 nvram_read_byte +EXPORT_SYMBOL drivers/char/nvram 0x17ff2c1d __nvram_read_byte +EXPORT_SYMBOL drivers/char/nvram 0x2adec1e0 __nvram_check_checksum +EXPORT_SYMBOL drivers/char/nvram 0x7da28f12 nvram_check_checksum +EXPORT_SYMBOL drivers/char/nvram 0x9ce3f83f nvram_write_byte +EXPORT_SYMBOL drivers/char/nvram 0xa8813189 __nvram_write_byte +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x5813cf07 dw_dma_cyclic_prep +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x7ba6f9be dw_dma_cyclic_start +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x80466def dw_dma_cyclic_free +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xd3b18353 dw_dma_get_dst_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xd3f207d2 dw_dma_cyclic_stop +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xd66d0965 dw_dma_get_src_addr +EXPORT_SYMBOL drivers/dma/pl330 0x99c1fb49 pl330_filter +EXPORT_SYMBOL drivers/edac/edac_core 0xf3c96dc0 edac_mc_find +EXPORT_SYMBOL drivers/firewire/firewire-core 0x04dd92ce fw_core_add_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x05cf79ec fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0c1c765d fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0x153953e7 fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x16e91e21 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1936c611 fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x30e00d74 fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3c56ef91 fw_workqueue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4180f67d fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0x45a1d9c2 fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0x46d72d63 fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4d5d4eca fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x589a219f fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x65c9438b fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x671839ce fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6825c17f fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6c80d2d0 fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7c76aef6 fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7d852b38 fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7e431b14 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x90863005 fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9d7f269a fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0xaf30e624 fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0xba7535e8 fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0xbdca7ff0 fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc26d45b2 fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc86a8cfd fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd7ec4615 fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0xde27395d fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe53a860d fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf07195d5 fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf3084428 fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf4d7c2d3 fw_card_initialize +EXPORT_SYMBOL drivers/fmc/fmc 0x18f7dee8 fmc_scan_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x20324689 fmc_device_register +EXPORT_SYMBOL drivers/fmc/fmc 0x324e8141 fmc_show_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x35f6a51e fmc_device_register_n +EXPORT_SYMBOL drivers/fmc/fmc 0x7ed41dd6 fmc_device_unregister_n +EXPORT_SYMBOL drivers/fmc/fmc 0x8a22b9b4 fmc_device_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0x955431d3 fmc_driver_register +EXPORT_SYMBOL drivers/fmc/fmc 0x99367f10 fmc_free_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xbe837fc4 fmc_driver_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0xc6b204c8 fmc_reprogram +EXPORT_SYMBOL drivers/fmc/fmc 0xd4dc060c fmc_find_sdb_device +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00025916 drm_mode_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00667d8a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0143f302 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0222fa78 drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x026c0d6b drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x04147069 drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x067e3f64 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ae4b94c drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d532c9c drm_prime_init_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ec527fc drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fccafb1 drm_global_item_unref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10c87748 drm_mode_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12c6276a drm_buffer_read_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x136e66d3 drm_core_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13cdaadb drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x142b8b35 drm_buffer_copy_from_user +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a9a178 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x17653ee9 drm_dev_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x17ffc46e drm_platform_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x18472b6c drm_pci_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x187d661c drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x189f6401 drm_mm_debug_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x194eadaa drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19e44324 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a43f867 drm_core_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a770ac3 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1b04cce9 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1c69b5c2 drm_connector_unplug_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1fd48004 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20645642 drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25594c50 drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25ac3ba6 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x26cd4c71 drm_calc_vbltimestamp_from_scanoutpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0x291e4f61 drm_mode_connector_detach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29e31dd5 drm_select_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a942ab2 drm_mm_insert_node_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d80be4d drm_mm_init_scan +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7a4300 drm_rgb_quant_range_selectable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3086945c drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3199edba drm_vblank_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x324bea45 drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x346127a7 drm_global_item_ref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x34fc35b9 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x366c7647 drm_mode_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36f91ef3 drm_mm_clean +EXPORT_SYMBOL drivers/gpu/drm/drm 0x37823757 drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3843f95d drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38a4f7ae drm_format_num_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ac1fef9 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ae7b2d0 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b9d009a drm_format_plane_cpp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c1fd717 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c6c30e4 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3cf3128c drm_mode_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d4b8108 drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e34837c drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eb37b9d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4112ebac drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x41592099 drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43384bd9 drm_buffer_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4478f6f3 drm_vblank_pre_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4526087f drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x452906a7 drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x45a2f541 drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x463d7d30 drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x47c9185a drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x498dcb5e drm_ut_debug_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49fabf0d drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b7fa589 drm_vma_offset_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c511235 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d249e30 drm_ati_pcigart_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4dc55931 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e9cde79 drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ea1f5a2 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5008f61f drm_mode_create_dirty_info_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x505ae9e9 drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e28c07 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5262e78f drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x526f6f71 drm_rect_calc_hscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5463351f drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55ce4432 drm_sysfs_connector_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56a26568 drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57041623 drm_get_encoder_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x579a0393 drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x58873fdc drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5a268d54 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5b4d488b drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5ccef4b0 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5dcbfd9a drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e31f8a8 drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e4209a0 drm_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6090be61 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x61f0b52b drm_bridge_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x622f6b55 drm_global_mutex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x64377ca9 drm_rmmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66417b36 drm_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66803841 drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6900d335 drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x69077f73 drm_idlelock_take +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b013b02 drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b50889a drm_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b6d7375 drm_timestamp_precision +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cee2e42 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6ecee932 drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f9c9385 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x702427c6 drm_framebuffer_unreference +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71d35c97 drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74f248fa drm_vblank_post_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75c04063 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x777bb8e6 drm_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x77eb8dbd drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a4e7297 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c05d65a drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c86953e drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7cf67eea drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d2026b8 drm_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x809cd58a drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80a9e0cb drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8144235b drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x817433d4 drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81ba930c drm_mm_init_scan_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x82f2939b drm_bridge_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83313177 drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x837aa9c1 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x84346b2f drm_core_reclaim_buffers +EXPORT_SYMBOL drivers/gpu/drm/drm 0x849b0c89 drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x855bde67 drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x86b9eaa7 drm_pci_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x88235d51 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a570416 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a6fb114 drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8bb0e057 drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8de13715 drm_format_vert_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dfb019d drm_buffer_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8e052fe3 drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8eff9111 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f3c1e39 drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f7df3a7 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f8060c4 drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0x909f6f18 drm_crtc_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x910c9e23 drm_addbufs_pci +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91827fba drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x949cd21b drm_mm_dump_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95fcdccd drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9660a1de drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96bf3d3b drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9745d638 drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0x98563f12 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9972db48 drm_rect_calc_vscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9983e05b drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99cf8432 drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9cac17d3 drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d70fc2a drm_rnodes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9dc96578 drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9eccfe56 drm_mode_hsync +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9efc26a3 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9f28f2b1 drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1219c0b drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1f4e9e6 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa28078b2 drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2be3eb5 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4c8df36 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5dbd572 drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa96acfcb drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa126ab6 drm_framebuffer_reference +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa1a6e72 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaaccbd3f drm_idlelock_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xab2ef885 drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae3b83bd drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafb0cb6f drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb2f2fddf drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb572a9f0 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb729a820 drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb80bc61a drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb8d67bc6 drm_mode_group_init_legacy_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb95beb55 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbc99ed6f drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe001c53 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbfd5b56e drm_unplug_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc01523e8 drm_pci_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc07517fa drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc1891ca6 drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4000f9f drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc414c422 drm_vblank_offdelay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc428c65e drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5e82eb9 drm_addmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc76e7d18 drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca45efbc drm_format_horz_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb500bb3 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb6e2bb0 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd0fc417 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0xce6c3556 drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcfc83758 drm_platform_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1e1c032 drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2335101 drm_fb_get_bpp_depth +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4c558ee drm_pcie_get_speed_cap_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd5030248 drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd70a33ec drm_rmmap_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd73d631e drm_core_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd80f64ae drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd83f2de2 drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb02933a drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb3b6e97 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb5a5852 drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbb5a9f5 drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbe193ac drm_getsarea +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc3cd3c9 drm_get_last_vbltimestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0xddead310 drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdec6a6af drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe1267c36 drm_edid_to_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2ef97e4 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe3b98279 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe53f9ae6 drm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe5a079ab drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6224d0b drm_get_pci_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe68ab387 drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6f46e6e drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7197773 drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe81c91f8 drm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xebe25a0a drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeccb6ece drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xecf67ae5 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefdf9b69 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf08d712a drm_mode_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf176efdb drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf25b1363 drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf2a2f6b5 drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf446a0e2 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6adb463 drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6eb4705 drm_get_connector_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf88e95a0 drm_sysfs_connector_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf88fd5af drm_pci_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf8e16ef9 drm_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf959c6c7 drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9be1ca4 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9cbcee3 drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfa5d991e drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb497216 drm_mm_insert_node_in_range_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb9e3cbc drm_prime_destroy_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfcaff9d3 drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd063935 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd49acba drm_ati_pcigart_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe4a68c7 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe9ec6e1 drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffc6c87a drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x098e47d2 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0c85bd9e drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f96ec70 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x118a596d drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x163251c8 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2ea67fd5 drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34871adf drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3d1b3680 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x432269c0 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x45c03df0 drm_fb_helper_fill_fix +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x460dd2d9 drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x49edfeec drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5405f510 drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5d14c770 drm_fb_helper_single_add_all_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x711a004a drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7bebb9eb drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84e924ba drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x86b9cf0b drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x90aad370 drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9aa04649 drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9b320bff drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9b667aaa i2c_dp_aux_add_bus +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9d26b510 drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa33478ad drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa77858bb drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8d578b8 drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8d6809d drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xabe8b96c drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb8c3b172 drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbd88f2fa drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc1ed3527 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd0aa626d drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd46294e1 drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd4ab06b9 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdbea910a drm_fb_helper_restore_fbdev_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdd94265d drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xea17de71 drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xef31467a drm_fb_helper_fill_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfa68ce8e drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xff8d9b1b drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0xa4f3ebe9 drm_usb_exit +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0xc339a35c drm_usb_init +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0xf0786cc3 drm_get_usb_dev +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0665340b ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x104f06f7 ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1129a69d ttm_mem_io_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x132b05be ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x136ec7fa ttm_suspend_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1d6704e7 ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x228c1129 ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x25ac0523 ttm_mem_io_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b54aa9a ttm_object_file_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2c7fac9b ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x393e54d2 ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3bae86ae ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3dd84f5e ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4628b006 ttm_read_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x485a5bc0 ttm_ref_object_add +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4cb389b6 ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x507736f2 ttm_prime_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x51108257 ttm_bo_synccpu_write_grab +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x51e4dcc1 ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x55eed807 ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x58be94eb ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5adf332e ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5c793aad ttm_bo_add_to_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5cf59609 ttm_bo_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5ffb6368 ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x615b6b9f ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x63e7f8c5 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x67b1d568 ttm_bo_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6973b1f9 ttm_bo_synccpu_write_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6c0ec969 ttm_lock_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x70993472 ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x72b842c5 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x77b0799f ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7cf23ef2 ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x804eca7f ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80d86f0e ttm_object_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8386d633 ttm_fbdev_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8589758d ttm_suspend_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x86bb8a6c ttm_read_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x871b7e2a ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x880a15ad ttm_base_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x890de3a4 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8a0fe0aa ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8cada60e ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94894449 ttm_base_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x99590aae ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x998e45c0 ttm_ref_object_base_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x99d38271 ttm_mem_io_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9c1f0e16 ttm_mem_io_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9f90258c ttm_object_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9fa1b8c9 ttm_mem_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa4138fa2 ttm_bo_del_sub_from_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa69af4d4 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa8a85ce6 ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa8c67d86 ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaa30b0a3 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xac6e13f2 ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xadfcc5a9 ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb42a78cc ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbbb0afc1 ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc92af020 ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc968d68f ttm_write_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcb263f0e ttm_bo_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xce6e43a8 ttm_base_object_lookup_for_ref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd8edb115 ttm_base_object_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xda2bf8b8 ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdc693194 ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xde1b6af2 ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xefc4df0d ttm_vt_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf1926cf1 ttm_mem_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfbc2c5ec ttm_object_file_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfd7484d3 ttm_write_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfe8cc064 ttm_vt_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xffaab504 ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x4b653127 host1x_syncpt_wait +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x54f3f197 host1x_driver_unregister +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x588458f8 host1x_client_register +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x94988e2e host1x_driver_register +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xbcae9145 host1x_client_unregister +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x0903c239 vid_from_reg +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0xef1c781c vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x0e2a6864 sch56xx_read_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x0f5877d4 sch56xx_read_virtual_reg16 +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x34257f35 sch56xx_watchdog_unregister +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xa9e8529e sch56xx_watchdog_register +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xe5022f95 sch56xx_read_virtual_reg12 +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xed1d2a08 sch56xx_write_virtual_reg +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x1310afb4 i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x21f199bf i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xdd6658b2 i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x11e8b664 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x3696df92 i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0x483e3e6d amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x6714cda7 st_accel_common_probe +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x736994c2 st_accel_common_remove +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x0e53cd7a hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x83a0a1f6 hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x8687c134 hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xc110bb1c hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xe18e4780 hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x2b1e6ab0 hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x85cfed95 hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x16a8e8da st_sensors_check_device_support +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x1bfbbd8e st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x2ad1f2eb st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x2d3e95a9 st_sensors_sysfs_get_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x42773bb6 st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x4b752a15 st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x51855060 st_sensors_sysfs_set_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x83eb34a7 st_sensors_get_buffer_element +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x85c51940 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xa6423f24 st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xbba245c0 st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd0a87025 st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd1d48237 st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xf0e57030 st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xf99b8b25 st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0xf738e7f5 st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0x5c9d4caa st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x1511adf0 st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0xd9f51572 st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xbe5b8582 adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xf67c1acf adis_enable_irq +EXPORT_SYMBOL drivers/iio/industrialio 0x25dcbf93 iio_buffer_write_length +EXPORT_SYMBOL drivers/iio/industrialio 0x2d23b53d iio_buffer_show_enable +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x34c08fad iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0x3d51b156 iio_buffer_register +EXPORT_SYMBOL drivers/iio/industrialio 0x3f38a8b8 iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0x40521ad2 iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x5634e0f8 iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0x6bbee988 iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x702c003f iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0x72835436 iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x74a5f65f iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0x76339928 iio_buffer_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x87937c44 iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0xad18b405 iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0xb18cbdf3 iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xb5b6d512 iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xbb9964dd iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0xc1ea5627 iio_buffer_read_length +EXPORT_SYMBOL drivers/iio/industrialio 0xc4182091 iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0xd1fcfc03 iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0xda8aa887 iio_buffer_store_enable +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xe920d4c2 iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0xeb072e2a iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x4a253f76 iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0xee60de8b iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x90982249 iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/kfifo_buf 0xf4b8e376 iio_kfifo_free +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x26f83bd1 st_magn_common_probe +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xe19d410f st_magn_common_remove +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x4e743b78 st_press_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x911f496d st_press_common_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x049ace30 rdma_addr_find_smac_by_sgid +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x04b8b6d7 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1c3c0ad3 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x273f4cca rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x446fd7c9 rdma_addr_find_dmac_by_grh +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x45bbba01 rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x5347cc38 rdma_addr_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x6950d7f0 rdma_copy_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x7df81f32 rdma_addr_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x150ad0a2 ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x15cfbeb0 ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x429f96ce ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x5a637a41 ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x6665ad70 ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x6b8e08fa ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x729d9f97 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x86524f91 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x871bcd58 ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x8d7f8340 ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xa25e0d12 ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xb19f68ce ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xcf7b2149 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xd0fb43ad cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xe11ddb5a ib_send_cm_apr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xebe0b0fb ib_send_cm_lap +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xf75d262e ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x006a2f45 rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x00b1f19c ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x03a7a95a ib_dealloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06c82fcf mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x099e397f ib_alloc_fast_reg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0a3accd3 ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c1b9ac1 ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0df8d342 ib_dereg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0dfa17b1 ib_fmr_pool_map_phys +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x10195413 ib_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x102a25c5 ibnl_add_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x13ad9429 ib_alloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14f84918 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x158e3a54 ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x171f99f1 ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x185bc5c9 ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e491a04 ib_unmap_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e547af7 ib_destroy_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x23ab6270 ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x27e54b52 ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2d97f4ad ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ecac7fa ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ed6e386 ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2f03e941 ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3214b714 ib_create_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3637e5f7 ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x39c44628 ib_get_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3ab27b56 ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b310ae1 ib_alloc_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x46425bb0 ib_alloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x46891d79 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x46aac6bf ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4bce962d ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4d280feb ib_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50dbc447 ib_flush_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x520b2638 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x524b1025 ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5356dc7e ib_destroy_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x54a02bd6 ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x55e17096 ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5a12140c ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5cdcada4 ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x63a8ba6c ib_fmr_pool_unmap +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x64af18f3 ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e030e26 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x731dd43d ib_get_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x74de751c ib_rereg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7c26b8de ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x860a4cde ib_resolve_eth_l2_attrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x91fc82c2 ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x967ce77e ib_modify_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x96ce6b1d ib_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa50905fb ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa773f3a4 ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaa7374c6 ib_dealloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac217df9 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xad0eea32 ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb0c318f4 ib_create_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb1a312e1 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb208c60a ib_reg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb47e5540 ib_destroy_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb8498b08 ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb864d4eb ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbc729c26 ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbdf2088e ib_destroy_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbdf4e607 ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc03065be ib_dealloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc32433df ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc32b59ff ib_destroy_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc3e15250 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc571bce7 ib_free_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc5d914fe ib_find_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc5f092d7 ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc67f14a5 ibnl_remove_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcb486079 ib_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcc7dffc5 ib_create_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcde96547 ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcf3569b8 ib_get_dma_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcf79aadb ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdb32ce78 ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdc91983b ib_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe7081878 ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe77d58b6 ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xec08c972 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf2ddff15 ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf3491827 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfac1ef89 ib_init_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfc150956 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfd80c435 ib_query_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfe676592 ib_query_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x0da23f6d ib_redirect_mad_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x1d1b33fd ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x4d5095fb ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x5e3fea47 ib_process_mad_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6cc7d784 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6f077fcf ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7b26dd09 ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7b5d4b7a ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x8a03b7d0 ib_register_mad_snoop +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x946d5d27 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xa6f9fae0 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xc0cceddd ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xd93959d4 ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xebb9c20f ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xf041e792 ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x11da8279 ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x22f07253 ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x57548a84 ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x576fdbac ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x5d242300 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x6e450200 ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x9e7aad54 ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xad48cd21 ib_init_ah_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xc0bfc8cd ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xdd108a70 ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xddc330e7 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xde9e1b2c ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2569d757 ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x52a6ce77 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7971c00e ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe350f2aa ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x34f1867a iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x3f885fe5 iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x3fdb13f7 iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x6f2e8de7 iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xaecec05b iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xdb05e5ea iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xe4b1af52 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xef519c7d iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x267d59c3 rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x2db8fca7 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3c11d543 rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x48b75327 rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7ce4fec5 rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x9f365cb2 rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa7cdb0ec rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xb6edcbab rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xb99bff6e rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc1d1d705 rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xcf981d9b rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd10da85c rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd125f814 rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd51ea047 rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xdde3afc4 rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe495846f rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe983592f rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xeb6a4c98 rdma_set_ib_paths +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xeb76b8d5 rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xecbfe0de rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf18e5b3b rdma_get_service_id +EXPORT_SYMBOL drivers/input/gameport/gameport 0x04c86760 gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x10ed12fb __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x3128142a gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0x37efc451 gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x3b57f538 gameport_start_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x531d3161 __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x7a45ef61 gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xb3100bdf gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0xd2590e77 gameport_set_phys +EXPORT_SYMBOL drivers/input/input-polldev 0x3a25543f input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x419b7ffe input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x434c12bf input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x93519cb0 input_unregister_polled_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0xbe5521cf matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x263be88d ad714x_remove +EXPORT_SYMBOL drivers/input/misc/ad714x 0x898db78f ad714x_enable +EXPORT_SYMBOL drivers/input/misc/ad714x 0xcd7447d8 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/ad714x 0xfce53ac0 ad714x_disable +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x6ab20c0c cma3000_init +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x892d76b2 cma3000_resume +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x89d9444e cma3000_exit +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xca3f100a cma3000_suspend +EXPORT_SYMBOL drivers/input/sparse-keymap 0x41255a9d sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0x63a29bbb sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x7f307a14 sparse_keymap_free +EXPORT_SYMBOL drivers/input/sparse-keymap 0xa3f61aa0 sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0xef25f1b7 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0xf0f4cfc6 sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x0d0191ae ad7879_pm_ops +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x6a39ae96 ad7879_probe +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x97f83edf ad7879_remove +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x04403fcf unregister_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x04e258a6 capi20_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x14f2aa5a capi20_get_version +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2b8eab1f capilib_free_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2baa6586 capilib_new_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2c7d9f8b capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x31c24aa4 capi20_isinstalled +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x47d3fc51 capi_info2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x50b33ca4 capi_cmsg2message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x5a0596a5 capi_ctr_suspend_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6057c6f3 capi_message2cmsg +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x62e32d43 capilib_data_b3_conf +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x71e8d5ba capilib_data_b3_req +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7a33596c capi20_get_serial +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7e6f1307 capi20_get_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x866c67f3 capi20_put_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x898247fe capi20_register +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x8f699913 capilib_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9f823278 register_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xa2721d2a capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xa7c4fd6c capi_message2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xaa165d27 capilib_release_appl +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb19fda8d capi_cmd2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb60e5e5f capi_cmsg_header +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xbaa96e02 capi_ctr_down +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc10fe128 cdebbuf_free +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc550a3d1 capi_ctr_resume_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc748be4a attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xddda7c32 detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe19a11ac capi20_get_profile +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe8ad9bd1 capi_cmsg2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xed061606 capi20_manufacturer +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x06d5aae0 avmcard_dma_free +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x154c9e72 b1_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x37078328 b1_load_t4file +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x41f072d5 avmcard_dma_alloc +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x68cc0b3a b1_getrevision +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x7282b573 b1_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x85ea9ce6 b1_alloc_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x85f09690 b1_irq_table +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xa2f7c3ca b1ctl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xa5d69f82 b1_loaded +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xa7236c7d b1_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xadac117e b1_load_config +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xb4665745 b1_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xb55a3f30 b1_free_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xcc2f59c5 b1_parse_version +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xdfd28376 b1_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xf4a657a0 b1_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xfa10fee4 b1_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x20c670aa b1pciv4_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x27461751 t1pci_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x370c28a5 b1dma_reset +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x7227da12 b1dma_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x73bd4325 b1dma_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x8b9b5928 b1dma_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x93ab8dea b1dma_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xb2af928c b1dma_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xd6f9f1ea b1dma_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xe3103fed b1dmactl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x2974ead1 DIVA_DIDD_Read +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x7ab59853 proc_net_eicon +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x29649c97 mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x3e482bf5 mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x57582602 mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x91dc1ff2 mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x87a6e751 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0xc152158d mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x07f4f2ce hisax_unregister +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x148f0c99 FsmFree +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x7f29ce36 FsmInitTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x93a64734 FsmChangeState +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x9df0cd27 FsmEvent +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xae1168c3 hisax_init_pcmcia +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xe227344e FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xee93522c hisax_register +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xf0a16657 FsmNew +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xfc27303b HiSax_closecard +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xff2db2cf FsmDelTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x3f3b323a isac_d_l2l1 +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x42acc0c3 isacsx_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x828ce655 isac_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xa4fd3711 isac_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xbd1e0c9e isac_init +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xf1334a79 isacsx_irq +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x440d9414 isdn_ppp_unregister_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x9d3ca3a7 register_isdn +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xe85e5bf2 isdn_ppp_register_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xfa06820f isdn_register_divert +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x3b71e4fc isdnhdlc_decode +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x59cc8a7e isdnhdlc_out_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x8ee38862 isdnhdlc_rcv_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0xfd9d4c09 isdnhdlc_encode +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x0f2854dd recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x1627ca15 dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2348cc3c mISDN_FsmFree +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x28c475da recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x29d66423 mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x385ca0a3 mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x4f7f98c0 mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x54451388 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x5c648f6d mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x614ede30 mISDN_FsmAddTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6481371f recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x702043d4 mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x7c418397 bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x81ca8279 mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8a4e99fb mISDN_clock_update +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x93ed4f94 bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x96309324 mISDN_FsmDelTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa94bec0a get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xaedfec9a mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xafae6ab7 mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb0057b75 mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb02eed24 get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbd2c0073 recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbde9a6ef create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc6f64ed9 queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd1b15833 mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd285995f mISDN_clock_get +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd5145151 mISDN_FsmEvent +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe87943cf mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xef815874 recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf9e7832f mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xfbf90f72 mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x01087af0 mISDN_dsp_element_unregister +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x60721da7 dsp_audio_law_to_s32 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xa215f1b2 dsp_audio_s16_to_law +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xb98308d8 mISDN_dsp_element_register +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0x281d812d omap_mbox_get +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0x3b3d3354 omap_mbox_disable_irq +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0x76e991a2 omap_mbox_put +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0x79e1cb3f omap_mbox_register +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0xa094c9c7 omap_mbox_msg_send +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0xa33f79e5 omap_mbox_save_ctx +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0xc25b2a19 omap_mbox_enable_irq +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0xdbc75fe3 omap_mbox_unregister +EXPORT_SYMBOL drivers/mailbox/omap-mailbox 0xff5fa119 omap_mbox_restore_ctx +EXPORT_SYMBOL drivers/md/bcache/bcache 0x3d85763a closure_put +EXPORT_SYMBOL drivers/md/bcache/bcache 0x51e2105c closure_sync +EXPORT_SYMBOL drivers/md/bcache/bcache 0x6fd3e30b closure_trylock +EXPORT_SYMBOL drivers/md/bcache/bcache 0xc4418fb5 closure_sub +EXPORT_SYMBOL drivers/md/bcache/bcache 0xe3c17af1 __closure_wake_up +EXPORT_SYMBOL drivers/md/bcache/bcache 0xee071b62 __closure_lock +EXPORT_SYMBOL drivers/md/bcache/bcache 0xf23e20a9 closure_wait +EXPORT_SYMBOL drivers/md/dm-log 0x1f0222bf dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-log 0x560da66f dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0x596e38fc dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0x9d77fc93 dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x3c10fd7e dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0xa7f3930f dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0xcc801c01 dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0xe55fc58e dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0xe97855df dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0xfc4b0212 dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/raid456 0xda8b6513 raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x1e5b69ca flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x22779123 flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x4a10804f flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x4f3fbd1d flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x5ed0af54 flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x6d996651 flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x8993a85c flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x8d1e5060 flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xae80796e flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xaf044285 flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xbfc242e3 flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc1241fce flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc8eb5fa0 flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x495e4b0c btcx_calc_skips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x5e0135a2 btcx_riscmem_free +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xad2fe38b btcx_sort_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xb6851c2a btcx_riscmem_alloc +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xc368f8e6 btcx_align +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xcda0ded2 btcx_screen_clips +EXPORT_SYMBOL drivers/media/common/cx2341x 0x1ca0c084 cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0x1f685a68 cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0x2f25eee2 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0x3db8be82 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cx2341x 0x5b88faf6 cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xa50eaf98 cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc184ec1e cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc7691a08 cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc8e0cc5d cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf76ce95 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf8b77a4 cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0xf7bb728b cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x06408b9a tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/common/tveeprom 0x2e3df810 tveeprom_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x17523ce7 dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x193e4f48 dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x24b5431d dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x344908d4 dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3516dd10 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3656cb10 dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3f7d50bf dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x496486df dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5311aaec dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x629f9d31 dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x6bf08870 dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x72180695 dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x74a5a698 dvb_filter_pes2ts_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x75835166 dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x78af8cfd dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7b3d5015 dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80e3832d dvb_filter_get_ac3info +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80ed239e dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8633f37b dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x89be6ca7 dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x98be7f42 dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9c19040b dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9c6a0170 dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa097840a dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa5407d83 dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa6e63598 dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xaa5bbceb dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xac4ca1b0 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb2fff7e7 dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xbbddc070 dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xbd835128 dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc1662faf dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc50b0a75 dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xcc622f21 dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd68a099e timeval_usec_diff +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdb1a8bd4 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdc094c39 dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdebcc9c4 dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe1e83fc0 dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe5ae8707 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf48116c6 dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf4be3617 dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf826deb0 dvb_filter_pes2ts +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfd353e2e dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-frontends/a8293 0xc216760a a8293_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9013 0x3432f186 af9013_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9033 0xfa65556b af9033_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0x090930e6 atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x0d7c8d77 au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x0dbca74e au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x224da04a au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x2e6ff909 au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x36525c2b au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x423e0d3a au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x610edb23 au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xa49c7c39 au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xc4d4227f au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0xa58d12b9 au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0x938affb2 bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0x09f2f6da cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0xe36f3a70 cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0x4d8a4b34 cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0xb3460b4f cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0xe86cc1e8 cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0xa77c012e cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x82eabde8 cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x9b43111f cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0x00b3a087 cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x1b30bcba dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x1fb9709c dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x48772928 dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x6bf7c330 dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x97cf8fad dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x050d4813 dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x1bc026f3 dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x3ca5e22b dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x3d009958 dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x3f88cb33 dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x4df5465c dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x5a24eda3 dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x9cb10648 dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xa8c178b2 dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb6b15cb7 dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb9801378 dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xba1a857b dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xc4201334 dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xd405863a dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xde29fd5f dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0x2a1518ef dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x1aeadc34 dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x9ea25956 dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x9ee3b0c6 dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x9f6bfc16 dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xc581d6cd dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xe2976082 dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x6314a73c dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x668f054d dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x9f832bb9 dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xf70197b7 dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x0b866f86 dib7000p_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x16b2ab48 dib7090_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x341bbd9f dib7000p_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x44965760 dib7090_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x46831949 dib7090_slave_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x60d3e672 dib7000p_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x6338945d dib7000p_get_agc_values +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x65f5719a dib7000p_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x66663248 dib7090_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x669cf654 dib7000p_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x686f1f67 dib7000p_set_agc1_min +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x8eee1ea2 dib7000p_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x95e951f5 dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xa96f0305 dib7000p_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xbd3103b5 dib7000pc_detection +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xbf44c65d dib7000p_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x090c0618 dib8000_pwm_agc_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x09fdcbc5 dib8000_remove_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x198973e1 dib8000_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x1b7bb3e2 dib8000_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x3cc04348 dib8000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x5b849de1 dib8000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x63b654ec dib8096p_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x74aa5722 dib8000_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x83782497 dib8000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x9ffc578e dib8000_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa344caf4 dib8000_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa8c0fd1e dib8000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xacbc228f dib8000_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xbb032d5f dib8000_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xc103bd10 dib8000_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xc428a9a1 dib8000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xdf8f3d31 dib8096p_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xe9199a2f dib8090p_get_dc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xee9ef8cc dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x20e28b31 dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x24b6c1e0 dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x7b65e55b dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x85213c5a dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x98856072 dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xad3ad91c systime +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x00e4e107 drxd_config_i2c +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x057c9a40 drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0x0860687d drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0x5016967a ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0xfe343ca7 dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0xb389b43d ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0x70786ec0 isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0xbf88e946 isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0xf9b073ee isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/it913x-fe 0x4e82532d it913x_fe_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0xc0be4315 itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0x96acd73a ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0x63a67d08 l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0x5b53cf90 lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0xa2b23978 lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0xeaa9c102 lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0x90389bec lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x4a9a79d5 lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x969ced89 lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0xe5192982 lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0x039b0371 m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0x1c3378a7 mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0x0fbe0988 mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0xb9716f63 mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0x448c7e9f mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0xdb6334a4 nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0x8eacc6b1 nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0x5a19d843 or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0x3ca9c77e or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0x2a5f7480 rtl2830_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0xbdcefe84 rtl2830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2832 0x2129e175 rtl2832_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0x36af31f6 s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0xfd0c1ddd s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x08f5189d s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0xc3cd3eae s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0x51fe5e40 s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0x8605a89e si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0x73892d38 sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0xeb15d4e3 sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0x87b15485 stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0x4a0fd4f1 stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0x5c73b1d3 stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0x15352e9f stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0x14c72d5d stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0xc9b8d55c stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x38e53cb0 stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0xe0261c8d stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0x8c07a406 stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x56dd6b48 stv090x_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0xcae12510 stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0xbf86ba78 stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0xc34ac71a stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0x97892b7e tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0xa2842406 tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0x50179722 tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x42bb588f tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x92d7cb9b tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10071 0xe13f1da1 tda10071_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0x8e9d455a tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0x2447623a tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0x08e8c1e7 tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0xeaa88dec tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0x044c9664 tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0x4677d4c1 ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0xd01e5fbc tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0xf82ba6a2 ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0x25596dcf ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0x422756ca zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0x8164dc76 zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0xe7e9defb zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x1d45eb64 flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x6b51dbaf flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x97f76902 flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xb0bf6c02 flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xb16ef29d flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xc1c920b7 flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xe08bbbe1 flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x03567630 bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x286d5ee4 bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x693395ab bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xd5d0bdef bt878_num +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xe05c7c00 bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x11dc4b6d bttv_gpio_enable +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x171729bb bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x4c2ff9e2 bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x587b06a3 bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x03792dfe dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x1f1f9b41 rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x27b541fc read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x280f5dbc dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x2b5118e0 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x5546b079 write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x7d2fd6b7 dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xba30edca dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xdf5c6eee dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe94b8c9c dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0x74803ba0 dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x26293765 cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x6d72d929 cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x703a06ca cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x86f6f069 cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xe6b73ee6 cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x1778e163 altera_hw_filt_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x756d98fa altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x9247b72f altera_hw_filt_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xaf231154 altera_pid_feed_control +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x17026310 cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x66c58436 cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x784853c3 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x9b5d9981 cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x9c5818f2 cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xc5d38741 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xe9fd9ad2 cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xfab60090 cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x18e5de83 vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x90f02866 vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x2e8cf23f cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x524e71bb cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x528c399b cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xa46cfe94 cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x33b8c909 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x3e35a384 cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x4ab632e7 cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x9424ef83 cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xaabe4a88 cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xd31ced4f cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x073e8fb5 cx88_risc_stopper +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x189ccf9c cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x23b946a3 cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x2d40f4f5 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4216fc84 cx88_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4f7aed40 cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6141c8c5 cx88_tuner_callback +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7642ed3c cx88_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7849a212 cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x8169c28c cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x82883af8 cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x8b00319e cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x904b8696 cx88_audio_thread +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x990c417c cx88_free_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xb284e7b6 cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xb8a4b7cf cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xbcb3040c cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xdcfc0078 cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xe65032e9 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xe9822ae8 cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xea36af51 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xeb5b0508 cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xeed53b3f cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf0f9313d cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf3361435 cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf821fff3 cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x2906d19c ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x49a009c3 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x5a5414fd ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x5ae8f96d ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x7d5483af ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x84648871 ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x92c29594 ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x9aa5f98c ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xa5289655 ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xac8b7986 ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xafc326f8 ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb15575a8 ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb48decbe ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xbf259318 ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xe224d19f ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xe32b0822 ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xf5546489 ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x04e83446 saa7134_tuner_callback +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1211df5d saa7134_devlist +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x193331c4 saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x2635db27 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x589af9d4 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x59fa8fce saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x6aa99397 saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x73039031 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x7905ed61 saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x872350c6 saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xbe32606f saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xca3e8a6d saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xceeccd05 saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xd047fa9a saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xfc0c50be saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xc3e4c127 ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xd831aff3 ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/platform/davinci/vpfe_capture 0xef690bdf vpfe_unregister_ccdc_device +EXPORT_SYMBOL drivers/media/platform/davinci/vpfe_capture 0xf3a8a7d2 vpfe_register_ccdc_device +EXPORT_SYMBOL drivers/media/platform/davinci/vpss 0x088ccec9 vpss_select_ccdc_source +EXPORT_SYMBOL drivers/media/platform/davinci/vpss 0x319709a6 vpss_clear_wbl_overflow +EXPORT_SYMBOL drivers/media/platform/davinci/vpss 0x54146824 dm365_vpss_set_sync_pol +EXPORT_SYMBOL drivers/media/platform/davinci/vpss 0x6e5b5413 vpss_enable_clock +EXPORT_SYMBOL drivers/media/platform/davinci/vpss 0x72f7c8bb vpss_set_pg_frame_size +EXPORT_SYMBOL drivers/media/platform/davinci/vpss 0x749bf2c9 dm365_vpss_set_pg_frame_size +EXPORT_SYMBOL drivers/media/platform/davinci/vpss 0x7517e8d7 vpss_dma_complete_interrupt +EXPORT_SYMBOL drivers/media/platform/davinci/vpss 0x95f8c400 vpss_set_sync_pol +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x0f45aa43 soc_camera_apply_board_flags +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x34d341ba soc_camera_unlock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x4fd9c9fb soc_camera_lock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x670df9f7 soc_camera_power_off +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x76257098 soc_camera_host_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x79d5d84d soc_camera_host_unregister +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x921c7d35 soc_camera_power_on +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xbabc51d7 soc_camera_xlate_by_fourcc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xbda73b43 soc_camera_power_init +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x25c52d97 soc_mbus_samples_per_pixel +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x2863728e soc_mbus_image_size +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x5f3e3558 soc_mbus_bytes_per_line +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xa9546115 soc_mbus_find_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xc8b28da5 soc_mbus_config_compatible +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xfe2c3a07 soc_mbus_get_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x1c3a507b soc_camera_client_g_rect +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x6da0dfdd soc_camera_calc_client_output +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x97cc7e9c soc_camera_client_s_crop +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0xbca99943 soc_camera_client_scale +EXPORT_SYMBOL drivers/media/radio/tea575x 0x5825c5c6 snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0x8752ef5f snd_tea575x_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0x902a71ca snd_tea575x_exit +EXPORT_SYMBOL drivers/media/radio/tea575x 0xf2ab2f45 snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x04dca738 lirc_unregister_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x19c17af9 lirc_get_pdata +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x2d060c15 lirc_register_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x3319cbf6 lirc_dev_fop_write +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x46676754 lirc_dev_fop_close +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x6dfbe94d lirc_dev_fop_read +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x971d89c4 lirc_dev_fop_poll +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xa35861bd lirc_dev_fop_open +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xcadf79ed lirc_dev_fop_ioctl +EXPORT_SYMBOL drivers/media/rc/rc-core 0x0f652f6f ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0x1cda29df ir_raw_handler_register +EXPORT_SYMBOL drivers/media/tuners/e4000 0x4c546cc1 e4000_attach +EXPORT_SYMBOL drivers/media/tuners/fc0011 0x5f0cf516 fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0x66c7996b fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x07b99521 fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xcced9038 fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xf10b1a8d fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/fc2580 0x3ab95fe9 fc2580_attach +EXPORT_SYMBOL drivers/media/tuners/max2165 0x8165e48c max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0xafb5f76b mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0xad3ef581 mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0x867d9dc5 mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0x6220eb34 mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0x7588e73c mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0x8fcfc8a2 qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18212 0x387162d5 tda18212_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0x19989b64 tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tua9001 0x120de88d tua9001_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x0cb4b189 tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0xde48c0ef xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/tuner_it913x 0x303ed36a it913x_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0x070b5a43 xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0x6855d1a5 xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xd7157974 cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xdb1aa129 cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x0d2e5262 dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x18fde8d6 dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x4e5e5743 dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x53c0be20 dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x697d6faf dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x84aa8b66 dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x9cd91422 dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xc3c8f566 dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xe514d5d8 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x3be6e599 dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x45221380 dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x586b6ff5 dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x6b13a599 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x765e9447 dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xa5f17097 usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xd228ee48 dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x13e247e0 rc_map_af9005_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x33e38956 af9005_rc_decode +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xd4e288db rc_map_af9005_table_size +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x0961ce6f dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x277aedc0 dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x2ff68c9c dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x5a016955 dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x6fa33af3 dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb0be6fac dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb0d4480e dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb291c5ff dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb38f385d dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb47559e0 rc_map_dibusb_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb8a104f0 dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xe4a820b4 dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x473880e9 em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0xed3a43bb em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x026b787e gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x0318e2a4 gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x177962af gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x534bc1be gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x91177612 gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xa4a8b52c gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xa5502ff3 gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xc12a8c18 gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x136a2903 tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x386f3a5a tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x782c2b6c tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x4972bba5 ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x62b5ba6f ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x42c8e001 v4l2_ctrl_next +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x4adaf0f3 v4l2_ctrl_query_menu_valid_items +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x53c9394f v4l2_ctrl_query_menu +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x5f96a661 v4l2_ctrl_check +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0xabe27502 v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x317a953a v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x79487a5c v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xdf349861 v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x08dff693 videobuf_dvb_register_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x2d4a9bac videobuf_dvb_get_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x6d64b053 videobuf_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x74bfafc5 videobuf_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x84cb2462 videobuf_dvb_find_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xb5a2af9f videobuf_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf2-core 0xa3873bd7 vb2_querybuf +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0b2b2e61 v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0cc8fc42 v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x140e371b v4l2_of_get_remote_port_parent +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x212ac947 v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x21a5535a v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x23c01196 video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2853c600 v4l2_subdev_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2ba8ce06 v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2d2dd800 v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3211a1d9 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x331d56cb v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x33807b41 v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x36847d11 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x39443c00 video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3d6084a5 v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3db7f213 v4l2_of_get_remote_port +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x495426ee v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4ab5efb7 video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4cda49ad v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x54a13870 v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x55a4b4cf __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5665391b v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x57d48c39 v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x60d9a32c v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6319fd50 v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x67ed01bd v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7171ae7a v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x73bf6fc8 v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x76ad0f36 v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7a3cd015 v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7b7d7b9b v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7e648921 v4l2_subdev_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7e7746c8 v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7ec96c14 video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7f923f2a v4l2_of_parse_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8271b329 v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8297c436 v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8654ff00 v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8a9f2533 v4l2_subdev_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8b8ac8dd v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x90511f5e v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9373a237 v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9505094d v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x957c77c3 v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9659170b v4l2_ctrl_add_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9ac8917c v4l2_subdev_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa064e020 v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa091c307 v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa6e30e40 v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xae7e7e31 v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb2d676da v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb5d99ab4 v4l2_subdev_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb6239c27 v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb90cbedf v4l2_of_get_next_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xba6e2690 v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbac4a225 v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbd1810b2 v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbe43c3c0 video_usercopy +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbf52e35d video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc12cf8f8 v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc1361059 v4l2_subdev_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd03875c5 v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd21cbd0c v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd56e5920 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd68e62e9 v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xde0beab8 v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe108c045 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe3660e20 v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe6fce6f2 v4l2_ctrl_merge +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xed60ac88 v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3b43d00 v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf44de1cd v4l2_subdev_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf76cfbdb video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfabcfd3a v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfb051426 __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfd5b4fd8 v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/memstick/core/memstick 0x0e7646e8 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0x11f73689 memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x15e0678e memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x1dea6f92 memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x306f9a59 memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x55a0846e memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5b5c17c8 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x74e7413f memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x86afef33 memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x8c9b5da4 memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x9097d40c memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xb1c62fd7 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xc6d6543c memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0xfbaa833b memstick_next_req +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x05ffa61b mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x0b716168 mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x0ff663da mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x10e125ae mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2600acfc mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x347fb0cf mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x34d851e3 mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3562d5c0 mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x450f6b79 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4526289b mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x505c4d1f mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5936c486 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5b213226 mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x622992ef mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7b338570 mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7e57c960 mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8058527c mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x87791380 mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x877cc722 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x93ed2ed3 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x98cee9d5 mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9e11503d mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9f333b14 mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa40a7e8c mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa5eb4714 mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb31e07da mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc0e69f82 mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc47c22e8 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc67fdd17 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd9a92a75 mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf0d686ec mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf7b14480 mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf8a91168 mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x08f477bd mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x11127225 mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x11d0ff73 mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x19c43695 mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x267c771d mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x277e3d6d mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4f120ec3 mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5afda76d mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5affe7bf mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5b6a99ca mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x69a1c10f mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x6b59faa0 mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x76eee3f0 mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x7d7ef43d mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x939b7c85 mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9436751f mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9b727c42 mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9e81099e mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xaa108a97 mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xaa4c081b mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xb5484696 mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xb9620fc5 mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xb9805065 mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe3d3bd43 mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xea9b9ea7 mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf10cfba6 mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xfc92bdb0 mptscsih_io_done +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x0cbf6c2a i2o_exec_lct_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x0e3421ec i2o_parm_issue +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x146eb0f1 i2o_msg_post_wait_mem +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2a843bef i2o_dump_message +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x4b3ed59c i2o_iop_find_device +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x6a0820e0 i2o_event_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x8b9c2a37 i2o_driver_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x8f9ce087 i2o_driver_notify_device_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x93cc9cd9 i2o_find_iop +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x9b0ae17a i2o_driver_notify_device_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x9ecc08ef i2o_msg_get_wait +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xa584b713 i2o_parm_field_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb4c00dcf i2o_controllers +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xbf105cd4 i2o_driver_notify_controller_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xc28294e0 i2o_status_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xccbfa033 i2o_driver_unregister +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xda05362a i2o_device_claim_release +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xe9e00921 i2o_parm_table_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xef627728 i2o_device_claim +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xf08eb1df i2o_driver_notify_controller_remove_all +EXPORT_SYMBOL drivers/mfd/cros_ec 0x4227ebba cros_ec_suspend +EXPORT_SYMBOL drivers/mfd/cros_ec 0x44d9df9e cros_ec_register +EXPORT_SYMBOL drivers/mfd/cros_ec 0x89dcf139 cros_ec_resume +EXPORT_SYMBOL drivers/mfd/cros_ec 0xf85edaf3 cros_ec_remove +EXPORT_SYMBOL drivers/mfd/cros_ec 0xfae0414c cros_ec_prepare_tx +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x79a04faa pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xc93e2e6e pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x02c368f9 mc13xxx_irq_request_nounmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x19eee3cc mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x23e1f3af mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x320a16d3 mc13xxx_irq_ack +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x3c7e7b55 mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x45871415 mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x7d213b81 mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x7e6e95a9 mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb7562c1f mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb9c3bf92 mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xbfbfab0d mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xcbada10b mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xe326dac2 mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/tps6105x 0x0b067fb0 tps6105x_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0x205dc0f6 tps6105x_mask_and_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0x55c280ca tps6105x_get +EXPORT_SYMBOL drivers/mfd/tps65010 0x02d4ad0f tps65013_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0x0c6ad2cf tps65010_config_vdcdc2 +EXPORT_SYMBOL drivers/mfd/tps65010 0x28485130 tps65010_config_vregs1 +EXPORT_SYMBOL drivers/mfd/tps65010 0x33739de7 tps65010_set_vib +EXPORT_SYMBOL drivers/mfd/tps65010 0x9fd44c69 tps65010_set_led +EXPORT_SYMBOL drivers/mfd/tps65010 0xb14080cc tps65010_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0xd5bb106d tps65010_set_vbus_draw +EXPORT_SYMBOL drivers/mfd/tps65010 0xe99b3f36 tps65010_set_gpio_out_value +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x5faacc20 ad_dpot_probe +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x6cd0ad90 ad_dpot_remove +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x8a05ed90 altera_init +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x0d72dca6 ssc_free +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x29bdbc00 ssc_request +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x0e9755b9 pwm_channel_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5a8b82f9 pwm_channel_handler +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5d5c2951 pwm_clk_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x6a5e1f70 pwm_channel_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x73330c97 pwm_clk_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0xeb7f2c6f __pwm_channel_onoff +EXPORT_SYMBOL drivers/misc/c2port/core 0x2eb285a9 c2port_device_unregister +EXPORT_SYMBOL drivers/misc/c2port/core 0xa5caa321 c2port_device_register +EXPORT_SYMBOL drivers/misc/ioc4 0x9b71d9b9 ioc4_unregister_submodule +EXPORT_SYMBOL drivers/misc/ioc4 0xb4b80df4 ioc4_register_submodule +EXPORT_SYMBOL drivers/misc/tifm_core 0x1d18493f tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x264a5a7c tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x3531c5ec tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x373a8c55 tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x39f86aa1 tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0x49d71ef2 tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x95d48b02 tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xa07bd83e tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xa709293a tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xad1d01da tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0xb2e26cbb tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0xcc3ec1f3 tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xece34685 tifm_has_ms_pif +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0x33c36049 dw_mci_remove +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0x43934f10 dw_mci_resume +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0x4a181d5a dw_mci_suspend +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0xa4d06b66 dw_mci_probe +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x171139bd tmio_mmc_host_runtime_resume +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x378f2335 tmio_mmc_irq +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x3b9550c5 tmio_mmc_host_remove +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x60f5c03f tmio_mmc_host_suspend +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x69d3d36c tmio_mmc_host_runtime_suspend +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x6d3deee9 tmio_mmc_sdcard_irq +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x7a6fd700 tmio_mmc_sdio_irq +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x874e41b1 tmio_mmc_host_resume +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0xde5e6150 tmio_mmc_host_probe +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0xf02062dd tmio_mmc_card_detect_irq +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x4622f966 cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x65d7c700 cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x80816cbc cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0x99d737ef mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0x9c583dc7 lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/nand/denali 0x553faeee denali_remove +EXPORT_SYMBOL drivers/mtd/nand/denali 0x6193fb1c denali_init +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x08d3674b flexonenand_region +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x3295fc96 onenand_default_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x9a1cbe03 onenand_addr +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0xea747842 onenand_scan_bbt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x11b4eb9a arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x294375dd arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x41594fb0 arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x52679809 alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x8178b112 arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x97dcd09c arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xb13df682 arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xb745e125 arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xc08980d9 arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xf338537b arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x0ee4d90f com20020_check +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x67be4133 com20020_netdev_ops +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x74e01ee6 com20020_found +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x248e4e07 __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x36bb2b8a ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x38e950a6 ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x3ec8995f ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x8539f18e NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x869c61fe ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xab522e46 ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xc7ae9aaa ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xcaca804d ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xcd400ec3 ei_poll +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0xc3945cb2 cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x007500e9 cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x00d3870d cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x15e718dc cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x215d6c3d t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x44a7c293 t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x5c3e3d76 cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x64375bf3 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x7b895c22 dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x94fede55 t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x9c4ab1c9 cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa5de2c94 cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xbe6b9713 t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xca13cae6 cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xd647fc56 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf13820d0 t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf2d76366 cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x043c664c cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0c7b42e7 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1374e494 cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x15043469 cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2bb9b349 cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3119bc78 cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x31c9213c cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3382e937 cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x48ca2a00 cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4bec8c54 cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x66018287 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x662e3238 cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x67e76e52 cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7014a26e cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x82f633fb cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x8601da61 cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9492440f cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9956176f cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa0c21417 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc03f04bf cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc26f4e13 cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc7f096d5 cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcdfe0ff2 cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd00e5a36 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd8e153b6 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xdffa54e2 cxgb4_enable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf97ea6ee cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xfbcdf245 cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xff33c2d2 cxgb4_disable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x0e712340 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x4667fbc2 vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x4f650da7 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9196d804 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9bd92e28 enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xb1660ad4 vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x38a9bbcd be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xbab62e22 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xf03a8fa8 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0b4db7c3 mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0e4d94c3 mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x10f50b84 mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x10fc5858 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1b14c49d mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2cb41427 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3327a6c6 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4779da06 mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x618fdb83 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x63ed2570 set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6cc86d40 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7c03b85d mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x83315fd6 mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8e274a12 mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x977e0497 mlx4_test_interrupts +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa0ed8908 mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc6035687 mlx4_set_stats_bitmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc7a3a0ba mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd104ca40 mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdc924842 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf3f5cfed mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf67e8674 mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf8a30429 mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf9e98418 mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0178b41e mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x09df8786 mlx5_dev_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0e2ecdfd mlx5_core_query_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0e94701a mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1cad75cc mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x213f0cba mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4367e612 mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4b9b85b0 mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4db46d66 mlx5_core_dump_fill_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x50af9afa mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5ce87ed5 mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5d642ff8 mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x62ee34a3 mlx5_core_destroy_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6e145e42 mlx5_core_create_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x74b7e079 mlx5_core_arm_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7974525e mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9a0b7614 mlx5_dev_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa2e83dbd mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa4581fe9 mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xad3ad58b mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcc5322d7 mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcddf4d28 mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd6b7f19d mlx5_core_get_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xddc8eaf6 mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe4522d74 mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf8af2274 mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf9b09b04 mlx5_cmd_comp_handler +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x4ee74679 hdlcdrv_register +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x5a899371 hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xc2bc46b6 hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xd0d4077c hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xd416fdd5 hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x4a2123a1 sirdev_receive +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x798e169d irda_unregister_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x8baf1030 sirdev_get_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xa4331e6c sirdev_raw_read +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xad3e6cad sirdev_set_dtr_rts +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xb3441fc7 irda_register_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xc8a91635 sirdev_raw_write +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xda4e5095 sirdev_set_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xe50d21f4 sirdev_put_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xeae4ef60 sirdev_write_complete +EXPORT_SYMBOL drivers/net/mdio 0x22bce513 mdio_mii_ioctl +EXPORT_SYMBOL drivers/net/mdio 0x43e4defc mdio45_nway_restart +EXPORT_SYMBOL drivers/net/mdio 0x7577f992 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0xa1a29548 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0xb34a7575 mdio45_ethtool_spauseparam_an +EXPORT_SYMBOL drivers/net/mdio 0xc6b1163f mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0xddc98749 mdio45_ethtool_gset_npage +EXPORT_SYMBOL drivers/net/mii 0x01e3b3c8 mii_check_media +EXPORT_SYMBOL drivers/net/mii 0x02734cb1 mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0x19cf29cd mii_check_link +EXPORT_SYMBOL drivers/net/mii 0x404b758d mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0xa9b3e73b generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0xaebeda10 mii_link_ok +EXPORT_SYMBOL drivers/net/mii 0xda1fc857 mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0xfb3b68dd mii_check_gmii_support +EXPORT_SYMBOL drivers/net/ppp/pppox 0x1a129ba6 register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0x56cabc8e pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xabe7d380 pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/sungem_phy 0x5059034a sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x0812589f team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0x328571b2 team_options_register +EXPORT_SYMBOL drivers/net/team/team 0x4fb8e64f team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0x8207fad5 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0x9c59f837 team_mode_register +EXPORT_SYMBOL drivers/net/team/team 0xce183b7a team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0xe4783e46 team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0xec4b44c9 team_mode_unregister +EXPORT_SYMBOL drivers/net/usb/usbnet 0x1282f776 usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/usb/usbnet 0x1c4b2c6b usbnet_manage_power +EXPORT_SYMBOL drivers/net/usb/usbnet 0x323c599a usbnet_link_change +EXPORT_SYMBOL drivers/net/wan/hdlc 0x3d4eeed8 alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0x586f98c3 hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0x5ba5bd06 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x647ea422 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0x72e85d66 hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0x805838bb hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x951f8d20 register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xa9936d35 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xac532714 hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0xaf72e1b9 unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xca2289fa hdlc_change_mtu +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x6da26d40 i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x319c6026 ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x3d0499d9 ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4887ba3a ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4e2481d5 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x53358ce3 ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x811b6f0f ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x9a92089c ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xb5f0ce55 ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xbb39f9e9 ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xc3d098fa ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xcba83a05 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xeafe448e dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xf1aef2dd ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xfeef8d67 ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0a8efceb ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x1960c118 ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x816b03f8 ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8246be6c ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x845539fc ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x895f9dc2 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaa198ec2 ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaf096710 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xbb3d49f8 ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0199ec46 ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1efe589e ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x27cf1694 ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x2b882564 ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x41d15826 ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4c6ddcb4 ath6kl_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4e1380ee ath6kl_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x523a49f0 ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x8a1d676f ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x8e6446bd ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x9495255e ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xb2d2d09a ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xde0af20a ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xf54ebe39 ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x044cc5f4 ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x317d3e4f ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x91fc76f5 ath9k_hw_wow_event_to_string +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0xfc047db0 ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x01c1f6df ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x33efd9be ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x5edd5829 ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x6768e219 ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x084b38ac ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0b745685 ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0ba10472 ath9k_hw_cfg_output +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0c8a3f38 ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1146f8df ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x12843c60 ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1511f02f ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1822ba4a ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1a301be5 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1b097f09 ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1bb07836 ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1c78704f ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2616141d ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x286f9aac ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2bf548f8 ath9k_hw_cfg_gpio_input +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x30d25d64 ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x35f66956 ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x42b7bc56 ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x45822343 ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x48a2b628 ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4a921a14 ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4b1fc725 ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4be712d6 ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4e80d5ae ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x50a5e5dd ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x58a4fe2a ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5b377c31 ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5bb4ec1d ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5ed6b5a8 ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5f485862 ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5f762cee ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x62983cf2 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x62bc84a4 ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x640ef264 ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x67175922 ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6917ede5 ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x692671c8 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x752d1f5f ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x754d8a5e ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x758c25f0 ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x75edfcb3 ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7be81802 ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7db96948 ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7e3804b1 ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7faf7a50 ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x83967e63 ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8400e6e5 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8910eb73 ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8a7152a9 ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x94fdeb4e ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x99efa18e ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9a12e155 ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9a47163b ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9de354a9 ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9eca8212 ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa08662f5 ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa3a9beb9 ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa676128b ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa85dbcb9 ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xab40f1a3 ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaeda63fb ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xafb4b588 ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb42525fa ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb431c048 ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb834a146 ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb96d2d92 ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb9e87ade ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbbf09a92 ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc025844e ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc0346aee ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc53e4e82 ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcb317b92 ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcc1027be ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcc1e2dcc ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcc3b1716 ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcdc5f8fa ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xceb1c918 ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcef102be ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcf50091a ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd339d1d0 ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd63e7a35 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd6fff6f4 ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd787bbdb ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdb9b5ef5 ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe1cdb563 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe1fca7b3 ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe4056c48 ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe44c3413 ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe9653021 ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xea640d66 ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xecd08f14 ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xed032983 ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf18be688 ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf9c9a466 ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfa78f912 ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfb8150fa ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfe34d79c ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfff6d41f ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/atmel 0x36bd3235 init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel 0x3c15f494 atmel_open +EXPORT_SYMBOL drivers/net/wireless/atmel 0xb451c3a7 stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0xe79edc2b brcmf_sdio_remove +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0xf322c440 brcmf_sdio_probe +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x103fd4e5 brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x138d6a40 brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x29f908d2 brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2da35835 brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2dc227f8 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x34201104 brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x4b3563ad brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x6c039a21 brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x8222330c brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x87a951b5 brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xaee6904a brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xddd70d92 brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xe47d786f brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xf9e59d1b brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x082134af hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x0ad69602 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x114b6ac1 hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x18412cc9 hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x1e3422a5 hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x24399745 hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x29d9c5c9 hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x32ee5787 hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x3471b730 hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x37d39a2a prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x3cfff27d hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x3eddd9fe hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x3ee0e87a hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x40f302eb hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x487a8f2d hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x495259cd hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x4b6566cb hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x541030e5 hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x62a0ff48 hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x859e047f hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x87f68a5a hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x87f7c2d7 hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x9952e7d4 hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa12ad27f hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb2a945e0 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc9ac7b30 hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xd1899435 hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xfb7e7080 hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x062a030c libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x08cd52ea libipw_rx +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x17e10472 libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x31bbaa5e libipw_change_mtu +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x32476b37 libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x33a40d36 libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x5061cbbd libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x68f29217 libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x760c74c2 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x7bde22a6 free_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x8becb95c libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x9d257d3c libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xa31325ce libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xafc11405 libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xbe1ae2f0 libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xc0e62796 libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xc18cd908 libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xd6966c6f libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xe216f130 libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xf6de7cc5 libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xfacda32a libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x076b1168 il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x07ee57ba il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x08c0a6d4 il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0d4e5cbc il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0da9656f il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x13b07b5a il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x176f7061 il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1ca80686 il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2097487d il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2121e95e il_update_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x22bf4fcb il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2468ac82 il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x29a22392 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x29dfd306 il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2b438753 il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x30e286dc il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x310bf1d0 il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x33caf656 il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x36ef37d1 il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3acc8408 il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3be02bbb il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x45303dde _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4aa39103 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4c3ac897 il_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5044f8da il_mac_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x50cd1da4 il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x558bec6b il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x564c6740 il_debug_level +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5ddfa483 il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5ed8ca33 il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x601a2b09 il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x60bc0d78 il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x610237db il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x63e42548 il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6815c804 il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6a0237a1 il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6c7494df il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x73e10b21 il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x751d2f7b il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x781e174d il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x78a6c81b il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x82750157 il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x828030ac il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x831ecf9e il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x84627617 il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8a81a12e il_init_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8c664403 il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8e7d2248 il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x92725d10 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x93cc4733 il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9862bda4 il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9918bcd3 il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x996adcb0 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9a5171ec il_set_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9a7ce085 il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa04bf4aa il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa18b648d il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa43d8ca3 il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa724e764 _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa95b8e34 il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xaa78c794 il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xab6361c4 il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xae086165 il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb02db914 il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb081b02f il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb26a1dfe il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb39c7c24 il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb4383c45 il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb4cfb9fc il_leds_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb6d15959 il_free_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbb0843cd il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbb0bd394 il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbbc912b2 il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbc2f554e il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbf5f1fa2 il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc00170bc il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc39cf12c il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc3eb9064 il_set_rate +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcddf0d4d il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd1c9b587 il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd1d4f3e6 il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd6484be2 il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd64d4519 il_apm_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd66644f2 il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd8013a24 il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd84487b3 il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xda6c3463 il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdb09eed1 il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdc4dcce8 il_force_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xde41ce80 il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe08672bb il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe4f2abe9 il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xec97309b il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xeeb431cc il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xef490ee9 il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf195f36a il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf2e3a850 il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf3577840 il_pm_ops +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf501278b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfa161ecd il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfb6601b2 il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xffa9f0a8 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xffdf30c9 il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x08ee1e7d __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0d9eb5ff __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0e7bc05f __tracepoint_iwlwifi_warn +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x201337b4 __tracepoint_iwlwifi_dev_tx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x249e4b06 __tracepoint_iwlwifi_dev_rx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x36dcef55 __tracepoint_iwlwifi_dev_iowrite32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x4919d1a5 __tracepoint_iwlwifi_dbg +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x67381a2a __tracepoint_iwlwifi_dev_ucode_error +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x79e9bf26 __tracepoint_iwlwifi_crit +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x7edec07d __tracepoint_iwlwifi_dev_ioread32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x8bfcc307 __tracepoint_iwlwifi_info +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x9a12c9c5 __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xc0827b2f __tracepoint_iwlwifi_dev_iowrite8 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xda36f3a4 __tracepoint_iwlwifi_err +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x07d3620d free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x1d3ddfb7 orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x24d96b7d orinoco_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x451e4385 __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x57186641 orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5bfb0c47 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x625ec198 alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x6f7a266c orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x79cc5e25 orinoco_open +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x7e31d2e0 orinoco_up +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x810b7d1f orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x8288dac0 orinoco_down +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x967890b7 orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x9983bb19 __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xa9d79694 orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xc1a84df6 orinoco_get_stats +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xd170a850 orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/btcoexist/btcoexist 0x2512eb56 rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0057d4a5 rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0203bd3f rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x04b828ab rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0d302808 rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x128fecd8 rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1706417b rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1c6e533d rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1e17ee73 _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x22ac8271 rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x253d192d _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x26a4e5b6 rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x273ea04f _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x2774b8cc rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3d0da1c2 _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x425e4156 rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x543468e0 rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x59b3b82f _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x6c65589d _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7001a166 rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x77e42eca rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8d72ffe4 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8dd0dce7 rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x91dad2b5 rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x96802190 rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x97be8ced rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa0a1177f rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa98eb143 rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa9e722b6 rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xaa50b039 rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xaaf05bc6 _rtl92c_phy_dbm_to_txpwr_Idx +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb3314d48 _rtl92c_phy_calculate_bit_shift +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb4e89be2 rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb620a62d rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb7a86b8c _rtl92c_store_pwrIndex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb884d155 rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xba61d37f rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc3339412 rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc48ff3ac _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc8da28c5 rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd2ac5822 rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xeee64b85 rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf45dc0c5 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x2f7c979a rtl_pci_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x8901fa6b rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0xa554abb1 rtl_pci_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0xab7dd36d rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x01a2c11b rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x05a5d509 rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x107ef795 rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x2a1b5800 rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x0622ff72 rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x124b378f rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x207fbb70 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x2151358e rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x21d4ab87 rtl_ps_set_rf_state +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x4cfa350c rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x4d3fa217 rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x546f5a24 efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x54b368c4 rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x585f5d51 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x613f735d rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x6cd3d90a rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x79188a02 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x7d3cb60d rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x89310e5d rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x8a2cb1ed rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x9be6e094 rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xa71bacb9 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xc6b9d3a1 rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xd7f7f645 rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xe0efb94a rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xfa3aac70 rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x13da7b15 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x361e2e2b wlcore_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x83295cef wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xbc1cfb6c wl1271_free_tx_id +EXPORT_SYMBOL drivers/nfc/microread/microread 0x2f6a6c84 microread_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0xe7106c51 microread_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x3af98349 pn544_hci_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x41627c83 pn544_hci_remove +EXPORT_SYMBOL drivers/parport/parport 0x00bf181e parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x04ded69c parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x0a564873 parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0x1fb7bf5b parport_release +EXPORT_SYMBOL drivers/parport/parport 0x274b24cc parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0x2a61bcde parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x459cd2f7 parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x4879d4b5 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x48f27df2 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x4f7c55e2 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0x573773f5 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x5eeab249 parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0x6c3c1f85 parport_register_device +EXPORT_SYMBOL drivers/parport/parport 0x71b72dbc parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x81c0bd73 parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0xa26f3edc parport_claim +EXPORT_SYMBOL drivers/parport/parport 0xb88b6673 parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0xbf59d729 parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0xc0257854 parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0xc2adb9fe parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0xc60e328c parport_read +EXPORT_SYMBOL drivers/parport/parport 0xd0a74780 parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0xd238c649 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0xd3c56e62 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xd4c57eb5 parport_write +EXPORT_SYMBOL drivers/parport/parport 0xdb2d70ec parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0xe1a19bc5 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xe7ee9129 parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xfb57d045 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0xfbb9e5f6 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport_pc 0x16129fc7 parport_pc_unregister_port +EXPORT_SYMBOL drivers/parport/parport_pc 0x4730b32c parport_pc_probe_port +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x30841386 rproc_alloc +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x41624a8c rproc_del +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x724f1d1c rproc_report_crash +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x8592b120 rproc_boot +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xa7ef8f8e rproc_put +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xb1bbed62 rproc_da_to_va +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xb2d71f88 rproc_add +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xe8f51514 rproc_vq_interrupt +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xf6ee6496 rproc_shutdown +EXPORT_SYMBOL drivers/rpmsg/virtio_rpmsg_bus 0x03fa33f5 unregister_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/virtio_rpmsg_bus 0x18d33d83 register_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/virtio_rpmsg_bus 0x5af45d83 rpmsg_send_offchannel_raw +EXPORT_SYMBOL drivers/rpmsg/virtio_rpmsg_bus 0x9d05966a rpmsg_create_ept +EXPORT_SYMBOL drivers/rpmsg/virtio_rpmsg_bus 0xd9f9ee90 rpmsg_destroy_ept +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x22c40afd fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x59c735b4 fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x5d1de6c7 fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x81d557da fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x84483caf fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xa82ace13 fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xaad53a59 fcoe_ctlr_destroy_store +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xb920d992 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xe59f824b fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xf18633e3 fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xf5a41d02 fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xf9bd1caa fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x12ba8dca fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1d8a4de3 fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1f6930ee fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2fa5eafa fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2feacf64 fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3306fb69 fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36e5fbaf fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x371e17be fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x39422ee4 fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3bb41fc2 fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x499cd29c fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4f838c7e fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x53541bd0 fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x55eb0016 fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x61fdbf89 fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6677104e fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x67357361 fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6a663b44 fc_change_queue_depth +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6fe1532d fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x728647aa fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x73d9e6fe fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7461df20 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x754e0ac9 fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x78474396 fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7c5f1829 fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7ee1f513 fc_change_queue_type +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x83922a37 fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x96216c07 fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9702713c fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9f60e2e2 fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa039f536 fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa90aaf4e fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xaa4d2603 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xacb28c6e fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb366e2de fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb7efc73a fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb83ae1b2 fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbf5eacc9 fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc5741d92 fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd5ccf27d fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd7d8f358 fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd88044ca fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdae0fbe3 fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdcb1585f fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdd8e9021 fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe64ef366 fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe82cadc3 fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xed7e9b98 fc_rport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf1f2d7fb fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf340f140 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfc5fb021 fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfd773a64 fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xff086347 libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x03f4a207 sas_wait_eh +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x6a58fb6f sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8a87e724 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x94be5714 sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xb62f81f9 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x2250c66e mraid_mm_adapter_app_handle +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x512c956d mraid_mm_unregister_adp +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0xf46b3f58 mraid_mm_register_adp +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x06bec90d osd_req_remove_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x06d4f326 osd_execute_request_async +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0aa4ea46 osd_req_list_partition_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0aad2ad2 osd_start_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0c17edb1 osd_sec_init_nosec_doall_caps +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x1c5e6dbc osd_req_decode_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x271eba73 osd_req_list_collection_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x2afa001a osd_req_read_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x2bd409b5 osd_req_read_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x2d369b86 osd_req_add_set_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x4c465b9a osd_req_add_get_attr_page +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x4dc4234c osd_req_write +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x58aea4b2 osd_req_write_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x68a25ce7 osd_dev_fini +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x753e1dc0 osd_end_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x877830c9 osd_req_list_partition_collections +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8803aaca osd_req_set_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8cef0950 osd_auto_detect_ver +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8d2d85f3 osd_req_decode_sense_full +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9952205f osd_req_list_dev_partitions +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xa11ce3b8 osd_req_get_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xacb5dde1 osd_execute_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xbd2d6860 osd_dev_init +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xbd9d00b8 osd_req_flush_obsd +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc2175e97 osd_req_add_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc5ae6ab3 osd_req_flush_collection +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xce1bad7d osd_finalize_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd08f491b osd_req_flush_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd0ded41a osd_req_read_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xdef4cacc osd_req_write_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xe035d7c6 osd_req_read +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xe1465c2f osd_req_format +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xe77eb36d osd_req_remove_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xeaf8bd11 osd_req_flush_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xecc92660 osd_req_create_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xf27f5bb0 osd_req_write_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xff7e35e4 osd_req_create_object +EXPORT_SYMBOL drivers/scsi/osd/osd 0x074aa882 osduld_device_same +EXPORT_SYMBOL drivers/scsi/osd/osd 0x077fbf4f osduld_put_device +EXPORT_SYMBOL drivers/scsi/osd/osd 0x5fc48609 osduld_unregister_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x8b628fff osduld_device_info +EXPORT_SYMBOL drivers/scsi/osd/osd 0xaff6a722 osduld_path_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0xbfd8e008 osduld_info_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0xe39b7ea7 osduld_register_test +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x06435829 qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x1e59247a qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x2afc20c8 qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x2bfe0c02 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x3cb8b31a qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x808f15b4 qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x8931e0fb qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xab202de0 qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xac761fe0 qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xce35966f qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xcec57e1b qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/raid_class 0x770f6564 raid_component_add +EXPORT_SYMBOL drivers/scsi/raid_class 0xacc3bfd4 raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0xda1442fd raid_class_release +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x0a56e5b8 fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x15f2af55 scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x25079513 fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x58f6f392 fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x59a49b5a fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7954b1ea fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7d0ff1ab scsi_is_fc_vport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x825c5c10 fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x9742756e fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xabe19d2a fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xb915fda4 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd6552fe6 fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd7f4f989 fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xf41f3bc9 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0a61627b sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0b45353a scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0d10130d scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1dbb2792 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x21a3986b sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2634c448 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x27efe6b4 sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x28d88ba5 sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2915750c sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x308aa953 sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x31c48d49 sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x368b743e scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3cba661a sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x44e3a145 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x49935b34 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5698ed3b sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x574cd22c sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5d20ff61 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x61c6f395 sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6b473ca0 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x875b5e3d sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa68a43da sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa6da3a8b sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xae7290f4 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb46b58cf sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb5013a3c sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf275597a sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf4c593c5 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x6d97d3d3 spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x86f34c61 spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x966ebf6d spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xbb6def29 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xbd4611e3 spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x492b885b srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x73d8382c srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x8c1b8d25 srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xa58e2c06 srp_rport_put +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x26bd1e45 ufshcd_runtime_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0xa4285079 ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0xfb8b6ee3 ufshcd_runtime_idle +EXPORT_SYMBOL drivers/ssb/ssb 0x0300baaf ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x03ab4347 ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0x17547e5a ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0x1b0382a7 ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x355d1427 ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0x3aa0ba1f ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0x55c302ac ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x5811c731 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0x729181bb ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x73bcb411 ssb_bus_pcibus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x7f130f9f ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x8e5d58cd ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x8e923acd ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x9bb05d56 __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0xaee62bf4 ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0xb6f3333e ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xb893a99a ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0xbedfa5bc ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0xc0512e0f ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xc354a072 ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0xd481192b ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xeee97054 ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0xfd1da425 ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0x3ab4fde9 fwtty_port_put +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0x994df796 fwtty_port_get +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x192d49fa adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0xe2d117e8 adt7316_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x38d0e29b ade7854_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0xf8f870ff ade7854_probe +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0bce7eef lnet_counters_get +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x100e0dd3 lnet_connect +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x10481c01 lnet_unregister_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1366b7ac LNetSetLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1711544f lnet_finalize +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x19670622 LNetNIInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1b191752 lnet_msgtyp2str +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1fe16fd5 LNetGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x204b8151 lnet_counters_reset +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x21bd0c16 lnet_copy_kiov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2aa9953d lnet_cpt_of_nid +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2ac93e90 lnet_connect_console_error +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2e286efe lnet_set_reply_msg_len +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x33202a6c LNetGetId +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3558e584 lnet_iov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3a1e3d6a lnet_notify +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3c779ee0 LNetPut +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3f4f5b46 LNetNIFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x45eae5cf lnet_copy_iov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x473ad33b LNetDist +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x49fd7617 lnet_set_ip_niaddr +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x4bb00492 lnet_copy_iov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x4f9cb871 lnet_extract_iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x4fceacc2 lnet_parse +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x51928049 the_lnet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5811a721 LNetInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x58a1ca89 LNetMDUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x59b23dfc lnet_copy_kiov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5fee352c lnet_acceptor_timeout +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x61f784b2 LNetClearLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x64cdea3a LNetCtl +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x6f7be171 LNetEQGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x722c76e5 LNetMDAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x736fa0ed lnet_net2ni +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7d59a7fe LNetMEInsert +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x854ab844 LNetEQWait +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8a3064f2 LNetSetAsync +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8d51115f lnet_register_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9de986d3 LNetEQAlloc +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa8c2760b LNetFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa414970 LNetMEUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa9b477e LNetMDBind +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb75f7953 LNetEQFree +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xba5566d2 lnet_acceptor_port +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xbf0760a2 LNetMEAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xcd7eb255 lnet_extract_kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xe6b5b6a8 lnet_kiov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf1b316bf LNetSnprintHandle +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xfb40cb9c lnet_create_reply_msg +EXPORT_SYMBOL drivers/staging/lustre/lnet/selftest/lnet_selftest 0x078db139 lstcon_ioctl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x012f40d8 seq_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x1c4bb5f9 LU_OBF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x1f9b03e5 client_fid_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x33dc1919 client_fid_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x375e6f8d LUSTRE_BFL_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x7cb4c2d8 seq_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x7e6939ca seq_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x86dc83cc seq_client_get_seq +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xae61cff5 LU_DOT_LUSTRE_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xc997a02f LUSTRE_SEQ_SPACE_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xecee2727 LUSTRE_SEQ_ZERO_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xff752bcd seq_client_alloc_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x1f82abb7 fld_client_add_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x2f5bc8de fld_client_del_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x4460c7cf fld_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x70a75586 fld_client_proc_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xcd5e0f16 fld_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xcf830a4f fld_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xf13ea4e6 fld_client_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x000c507f libcfs_debug_dumplog +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x00c881f6 cfs_cpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x01db5172 cfs_percpt_atomic_summary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x03387ca6 cfs_curproc_groups_nr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0389f857 cfs_cpt_spread_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0390c711 libcfs_sock_abort_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x04d3ce6a lbug_with_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x069f9bb2 cfs_wi_schedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08ada613 libcfs_console_backoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0b2b7871 libcfs_sock_getaddr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0b4b1546 libcfs_lnd2modname +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0c68bc45 cfs_cpt_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0de6c369 cfs_cap_lower +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0e311d38 cfs_percpt_atomic_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0f10432d upcall_cache_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0f5eff79 cfs_percpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x10b7e9c3 cfs_cpt_unset_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x10fd50ae cfs_hash_for_each_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12426266 libcfs_run_lbug_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x151e7546 cfs_cpt_table_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x17ac7833 libcfs_deregister_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1a60d439 cfs_parse_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1c7ec980 cfs_hash_for_each_safe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d5a3928 cfs_timer_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x22319718 cfs_percpt_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x23f6f445 cfs_restore_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2637a660 cfs_hash_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2663147a __cfs_fail_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x26d25bce libcfs_sock_setbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x27b6d3ba cfs_ip_addr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2b1e0458 cfs_get_environ +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2dbe54b2 cfs_trimwhite +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2e5044c7 cfs_cpt_set_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2efcc0e6 cfs_block_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2f85ad89 cfs_hash_dual_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x301b56b4 libcfs_sock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x30986343 cfs_range_expr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x31fc5082 cfs_crypto_hash_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x339b461a cfs_hash_dual_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x33b3a29b libcfs_kkuc_group_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x377f93fb cfs_srand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3834f243 proc_call_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x389ca502 libcfs_debug_mb +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x38fde09c cfs_hash_hlist_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x39fdcd2b libcfs_debug_set_level +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3c1285bd libcfs_subsystem_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3d5e6098 cfs_race_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ea730c0 cfs_gettok +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ef0d90c libcfs_kkuc_group_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x411db754 cfs_crypto_hash_final +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x41ab33a1 libcfs_ipif_free_enumeration +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44688a0a cfs_block_allsigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44728d76 cfs_cpt_bind +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44839bbb cfs_rand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44f07cfc cfs_pause +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x47555827 cfs_hash_debug_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x47fdb4d1 cfs_timer_is_armed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x48193550 cfs_hash_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x482deff7 cfs_cpt_unset_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x48f163c6 libcfs_str2anynid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4a99af72 cfs_clear_sigpending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4b123f3a cfs_hash_cond_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4d89e988 cfs_block_sigsinv +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4f1f2fa5 cfs_crypto_hash_digest +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x50345570 libcfs_str2net +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5051b6d2 portal_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x509d38b0 libcfs_net2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x54fd9a71 cfs_percpt_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x55d18175 cfs_hash_size_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x58a7ee00 libcfs_catastrophe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5946ec2b cfs_percpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5a785762 cfs_cpt_online +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5c013b81 cfs_expr_list_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5ca50414 upcall_cache_flush_idle +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d3be65a cfs_crypto_adler32_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d73c3e3 cfs_expr_list_free_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5dce9e80 libcfs_lnd2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5dd2e495 cfs_hash_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5df8c623 cfs_cpt_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x61c8490e libcfs_kkuc_msg_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62289d65 cfs_array_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x63be5b7f cfs_race_waitq +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x64130824 cfs_hash_debug_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x64685fef libcfs_console_min_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x647a7b6d upcall_cache_get_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6564c55b libcfs_console_max_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x65dd9f0c libcfs_run_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x66136d2d cfs_timer_arm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x670a7474 libcfs_sock_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x67398404 cfs_wi_sched_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c905b5f libcfs_watchdog_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c9b4713 cfs_hash_bd_del_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6dfa9ea1 cfs_crypto_adler32_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6e6af71c current_is_32bit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6f928e1b libcfs_debug_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71b01229 libcfs_sock_listen +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71f662a3 libcfs_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x75600a04 cfs_hash_bd_move_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x790dbd66 cfs_hash_rehash_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a3d49ae cfs_expr_list_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7b0b748a cfs_ip_addr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c7986cf waitq_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7e6a5b3c cfs_hash_findadd_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7e6f6485 cfs_ip_addr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7fda989d cfs_fail_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8151c3aa cfs_cap_raised +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x81bef0ce add_wait_queue_exclusive_head +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x828d16a2 cfs_cpt_table +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x82ea373a cfs_crypto_hash_update_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x83d795e4 cfs_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x83e75430 cfs_hash_getref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x857aaea7 libcfs_register_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x89b2ddc3 cfs_hash_rehash_cancel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x89dcbafa cfs_hash_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c85e4e6 cfs_crypto_hash_speed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8d3622c1 cfs_hash_bd_add_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8dda96cb cfs_hash_dual_bd_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f12bb52 libcfs_log_goto +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f45f10d cfs_init_timer +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x91504e8b libcfs_kmemory +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x92f54077 cfs_hash_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x93611067 upcall_cache_flush_all +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x940ed192 libcfs_stack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x95620e8c cfs_wi_deschedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x96727837 cfs_hash_dual_bd_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x97b0b9bc cfs_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9879b229 cfs_get_random_bytes +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9f82f712 cfs_trace_copyout_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa256e060 cfs_hash_bd_peek_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa28a6757 cfs_percpt_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa2b68b2a cfs_array_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa53ab9fc libcfs_sock_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa6b9dee6 libcfs_kkuc_group_rem +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9088531 cfs_expr_list_values +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9a5cf4e cfs_hash_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9dc74e2 cfs_trace_copyin_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9eae690 cfs_str2mask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xab887583 init_waitqueue_entry_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xabc53bf1 cfs_hash_is_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xac0f67e3 cfs_cpt_unset_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xad019238 cfs_str2num_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xaee69b49 libcfs_sock_getbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xafdb46d6 cfs_hash_dual_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb2ae1633 cfs_hash_rehash_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb336ee38 cfs_hash_for_each_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb473e79e cfs_wi_sched_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb9cb508 cfs_curproc_cap_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbc275420 cfs_cpt_unset_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbd5d492e cfs_timer_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbf7a37f1 cfs_signal_pending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc0ea7fc0 cfs_expr_list_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2911d96 cfs_expr_list_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2dfd791 libcfs_console_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc39fd2f9 libcfs_panic_on_lbug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc3eb614e libcfs_ipif_query +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc47433a6 cfs_capable +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc49b1c62 cfs_percpt_atomic_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc514e721 cfs_hash_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xca24b2dc cfs_hash_for_each_nolock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcafda950 upcall_cache_downcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcb2160d3 cfs_cpt_of_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcb385db9 libcfs_debug_binary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcbab8493 schedule_timeout_and_set_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcc20e694 libcfs_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcc7e1d13 cfs_percpt_lock_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xccc45639 cfs_free_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcd38904c cfs_wi_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xce1a88f2 libcfs_arch_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xced1fed2 cfs_hash_rehash +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf61bacb __cfs_fail_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf90528c cfs_cpt_table_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd1319447 cfs_cpt_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd13befa9 cfs_percpt_lock_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd3965252 cfs_hash_del_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd5396536 cfs_cpt_set_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd66d427e cfs_hash_dual_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6a52be3 libcfs_printk +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd9541990 cfs_strncasecmp +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd96f406d cfs_cap_raise +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xda09d370 upcall_cache_flush_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdce448d0 cfs_cpt_set_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xde17bb8d libcfs_isknown_lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf2789c0 cfs_curproc_cap_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf675bc7 cfs_hash_add_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdfcd8209 upcall_cache_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdffc951d cfs_timer_disarm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe3bf6897 cfs_percpt_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe45b62ff cfs_cpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe6555032 libcfs_ipif_enumerate +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe6d83cf8 cfs_hash_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe7b54314 libcfs_arch_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe9cad863 libcfs_sock_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xec1f56d5 libcfs_str2nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeceac781 cfs_fail_val +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xedf3a25a cfs_timer_deadline +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xee92bb75 cfs_percpt_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xef0d1263 libcfs_sock_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf0246bf2 cfs_cpt_table_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf372d1c2 cfs_firststr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf440bb38 libcfs_kkuc_group_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf782fbe6 cfs_cpt_weight +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8a8644b libcfs_id2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8efb8c5 waitq_timedwait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf94025d1 libcfs_str2lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfa0d98ca cfs_cpt_set_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfbd3438b cfs_hash_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfbfbdc46 upcall_cache_put_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfde479b0 cfs_hash_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfe565fa9 cfs_crypto_hash_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xff0f98a6 libcfs_debug_vmsg2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x00917241 ll_stats_ops_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x5e749fab ll_iocontrol_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x756986c8 ll_direct_rw_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xcd3cde92 ll_iocontrol_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xde865029 ll_osscapa_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x37815018 lov_stripe_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x3916b7b9 lov_lsm_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x672e09c8 lov_lsm_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xd7578204 lov_stripe_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xdf09f757 lov_read_and_clear_async_rc +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xf825bf77 lov_device_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x3edbb525 l_dentry_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x50b20d24 fsfilt_register_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x5de01627 lprocfs_counter_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x7b08a7b3 lustre_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x85d40144 obd_memory +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xa39130ad push_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xb4f8ee63 lprocfs_read_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xc99d277d fsfilt_get_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xd94212be lprocfs_counter_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xdf623799 lprocfs_stats_alloc_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xf50c2e3d fsfilt_unregister_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xf5ac5f68 pop_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xfd96eb1c fsfilt_put_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x14a47f31 it_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x9c22b84f it_open_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xb57d8447 it_set_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xf46a886f it_clear_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mgc/mgc 0xdc287f95 mgc_fsname2resid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x00166797 llog_cancel_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01665e34 class_parse_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01ec63fc dt_lookup_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x02656372 lu_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x02a62b95 class_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x02d8e8e6 local_oid_storage_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x030e2999 lprocfs_single_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x035852d0 lustre_swab_llog_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x04c92e93 capa_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x057f6d4b class_find_old_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05a12919 cl_req_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05af1920 dt_quota_glb_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05f84e88 LU_BUF_NULL +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x06423b56 obd_llog_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0740da55 cl_2queue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07aa68bb lustre_swab_lustre_cfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07eb6396 llog_osd_put_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07fe8fee cl_lock_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x083942ff class_del_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x08766480 cl_page_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x08b71241 lustre_common_put_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0aacff84 cl_page_cache_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0adbe82d dt_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b7f4c78 lustre_register_kill_super_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0bb6ab46 class_handle_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0c5cf945 cl_page_clip +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0cf99bff dt_acct_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0d10ad15 class_manual_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f7c3f47 class_name2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f8d08e4 class_new_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fbdeada lu_cdebug_printer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fe91547 obdo_to_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11008d6e llog_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1103036d obd_llog_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11495519 lprocfs_write_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11960eaf cl_req_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x121a027f cl_io_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x12658623 lprocfs_rd_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x128a86a8 lu_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x139ecd29 llog_cat_init_and_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x13b98411 dt_txn_callback_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x145cefcb class_put_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1476b8c4 lu_ucred_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1491dc30 lu_context_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x14abd679 dt_txn_hook_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1567103c llog_cat_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17069627 lu_context_key_quiesce +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17260880 obdo_cpy_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x172c0ef7 lu_context_key_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17487afb cl_object_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x194aae1d lprocfs_rd_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x19b19e93 lustre_idmap_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x19c83af8 lprocfs_rd_conn_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1cc4255f cl_io_loop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1cc487c7 capa_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1da43c58 cl_wait_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1e63afb0 class_conn2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1e643335 dt_store_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1edf8233 llog_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1f3dfb0d lprocfs_stats_collect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2056fcb9 llog_cat_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x20ce3dcd cl_lock_at_pgoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x20f1f27b lprocfs_exp_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x210c4324 cl_page_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21307495 lu_buf_check_and_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21d32791 cl_lock_user_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21d45298 cl_lock_mutex_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x221826f1 class_parse_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x228167e3 lustre_in_group_p +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x23ae37df cl_io_lock_alloc_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x23f8b849 lprocfs_register_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25054afb lprocfs_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2547efae lustre_uuid_to_peer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x259ebac6 obd_alloc_fail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25e7c861 cl_page_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x261d6409 cl_lock_discard_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x26ae7a5c lustre_end_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x27129f02 lu_env_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x275cdc7a cl_env_reexit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x277b8c40 class_detach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x27c3648a llog_copy_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x28e286ca llog_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x28e768b0 class_register_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x297ace53 cl_object_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x297cf5e0 class_handle2object +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x29ea70cd cl_page_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ae1cd79 kuc_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2b4c48e9 server_name2svname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2b65c528 lprocfs_wr_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2c84df63 cl_io_read_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2cb9f796 cl_object_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2cc05cbf lu_object_put_nocache +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2cce937b llog_declare_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2cf8b7f1 cl_queue_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2de74155 lprocfs_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2df9038b cl_lock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2e29fb76 lprocfs_rd_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ed0845c class_new_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2f7965e5 cl_lock_state_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ff68994 cl_env_implant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x31066a30 lu_kmem_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3110784c cl_object_glimpse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x312b98db class_disconnect_stale_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x31a67963 cl_page_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32831739 cl_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3297f418 cl_io_sub_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3412b7f3 class_config_parse_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34caf674 lustre_idmap_lookup_gid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3532acb4 lprocfs_rd_timeouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37499c72 cl_page_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37740e74 lu_object_assign_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37beda8f llog_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37ed6e4b at_early_margin +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x381fd114 cl_page_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38fb0c90 class_match_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x392f529f cl_lock_extransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3980a182 lustre_register_client_fill_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a005065 dt_otable_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a2b0562 lprocfs_rd_connect_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a31fe1e cl_unuse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ab24926 class_import_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ab755a4 cl_io_commit_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ad7ba35 lu_context_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3c140e75 md_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3dbfae9d local_file_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3f721fd1 class_fail_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3f97fcef obd_exports_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3fe01c8c cl_page_list_splice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x40078546 lu_object_add_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x405d764f cl_io_lock_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x41017f6e llog_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x41380675 lu_device_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4183b556 cl_object_attr_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4284bf67 cl_lock_closure_build +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x435c3546 llog_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x439fc0fe dump_lniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43ea7921 cl_lock_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44e41abb lustre_posix_acl_xattr_filter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4542a655 cl_env_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x456a2460 cl_lock_nr_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x45d7849c cl_2queue_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x46f18233 lu_device_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47434309 cl_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x474ed5bd lustre_swab_ll_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47b35f7d statfs_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x486f6066 cl_lock_enclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48ca4c04 cl_page_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48ec848a lu_object_find_slice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4940fa38 lu_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x494cfb52 lustre_acl_xattr_merge2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a0f6ea lustre_posix_acl_xattr_2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a29223 lprocfs_find_named_value +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4a8afc05 cl_page_list_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4aa2e5dd lprocfs_wr_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4aabd7d9 local_oid_storage_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ac58713 obd_connect_flags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ad318b2 cl_io_is_going +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4b297c49 lprocfs_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c38cc3b obdo_refresh_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c4b23c9 cl_page_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c707b7a cl_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c8e57cc cl_lock_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4cea0b43 lu_context_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d13458b kuc_len +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d2e074c lprocfs_init_ops_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d6c0206 cl_page_make_ready +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d713511 dt_index_walk +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4e6b0311 cl_page_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4e911bfe lprocfs_rd_num_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4f87cedd obdo_from_iattr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4fba4346 dt_directory_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x509c1369 cl_page_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50a4ff72 lu_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50c7fc36 ptlrpc_put_connection_superhack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x51096b6d lprocfs_obd_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x52406ee5 dt_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5478d741 llog_open_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54885f87 ldlm_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54c3beb2 cl_page_gang_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54f64a83 cl_use_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x558bec27 obd_ioctl_getdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5627cce8 lprocfs_oh_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x564e9d44 init_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x570d09ae lustre_swab_lu_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x579afa58 lprocfs_rd_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x583a8ee9 cl_page_unassume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x58ca7a4c lu_context_enter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x596c1b17 cl_page_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a20d896 obd_memory_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a64d92d lprocfs_counter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5b87f663 cl_lock_closure_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bc022c5 lprocfs_dt_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bc839ee lu_device_type_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bcf4873 lu_object_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5c06edba cl_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d0b0e86 class_exp2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d34ae0d cl_lock_mode_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5de04da4 lprocfs_rd_u64 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ed01786 cl_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ed188a9 lprocfs_add_symlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fe97b73 block_debug_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x61ad0a71 llog_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x62558016 obdo_from_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x62ab9b19 class_conn2export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631a518d mea_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631fd7b9 lustre_ext_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x637239ac lustre_idmap_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x63d440b1 lustre_idmap_lookup_uid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x64dfaff2 llog_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x65ef9544 cl_page_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x66114bca lprocfs_exp_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6734adbd lprocfs_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x677fd7f9 proc_lustre_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67977b42 lprocfs_remove_proc_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67a90622 la_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67dc223a lprocfs_remove +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67fefd63 llog_exist +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x686de929 cl_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6890d175 lustre_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x690450c4 cl_io_prepare_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x699bd270 lprocfs_alloc_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69c42114 at_min +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69c86c8e lu_device_type_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a61894e llog_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6b740111 cl_io_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6bb6d421 lu_buf_realloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c63a7ba cl_unuse_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c996784 lu_dev_del_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ec76c8f cl_2queue_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ece4640 cl_page_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ed7ffca lu_object_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f3c4337 lustre_process_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f3e6225 dt_quota_slv_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x70256a9b lu_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x703817ec cl_page_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7076b208 lu_context_key_degister +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x70e436e3 dt_record_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x71b89a1a lu_site_purge +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x71ed452d lprocfs_nid_stats_clear_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x723b1076 cl_lock_modify +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x726cb56d class_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72ddee4c obdo_le_to_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x73681d4d cl_req_page_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x736e53fe cl_page_list_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x73b17ad3 llog_init_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x73d1f446 dt_locate_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x742559b1 class_unregister_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x74aa95cf lprocfs_init_ldlm_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x74dbd748 cl_io_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x752f71a8 class_get_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x756a77f3 class_parse_nid_quiet +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77d2089a class_name2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7802fcd7 lustre_swab_llogd_conn_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7840f670 lustre_idmap_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x78439445 __llog_ctxt_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x789796a1 obd_zombie_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x79bc41ab cl_enqueue_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7a4f3124 lprocfs_at_hist_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b4fc57b at_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7cbb559f llog_osd_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7d4cfc87 lprocfs_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7ea6ff13 obdo_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7edcafa0 cl_env_reenter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f6ceb4c class_num2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f9237e5 class_handle_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fad7291 raw_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fe5561a obd_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8031efb8 lprocfs_dt_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x806cc497 class_add_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x80f6e3e2 cl_object_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81742d89 obd_ioctl_popdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81917918 class_config_llog_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x831f656c class_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x83655720 cl_page_list_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8489f086 obd_alloc_fail_rate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x849e5385 obd_update_maxusage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x84bb7175 dt_txn_callback_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x86aebf3f lu_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x87885299 lprocfs_obd_rd_max_pages_per_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x87c5b250 class_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x88fd6885 cl_lock_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8aa2c358 lprocfs_dt_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ac7acb9 cl_pages_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b5ccfe3 cl_lock_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b5f4057 lu_context_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ba6e479 lustre_swab_lu_seq_range +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8be6dc7b lprocfs_seq_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8c0adaa8 llog_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8c861ce2 obd_export_evict_by_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8c9d0a2a cl_lock_unhold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ccdb386 cl_lock_weigh +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8d529162 class_export_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f3a7f15 local_index_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f652299 cl_lock_disclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f67314c obd_dump_on_eviction +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8fc1146a class_uuid2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x908b756b cl_io_iter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9094a457 cl_io_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x90a4ca17 cl_2queue_init_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x90c8d327 lprocfs_init_mps_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9173093f class_find_client_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x91a6aa2c cl_io_iter_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x91eb7cbc lu_dev_add_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92e58479 obd_dump_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x934bd22a dt_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93a9081b dt_store_resolve +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93b46468 lu_session_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x94677235 lprocfs_clear_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9512d507 lustre_acl_xattr_merge2posix +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x955f5220 ldlm_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95735c6c at_extra +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95ec998a lustre_groups_sort +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x96820033 lu_context_key_revive +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9767adce class_uuid2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x97d03783 at_history +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9809df8f llog_cat_declare_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x982e1658 cl_2queue_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9847f0ef lu_env_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x986463e5 cl_page_list_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x988fa6ea lu_object_locate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x98e98a66 dt_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x99b6a99b llog_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9a63a547 cl_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b1ed9d8 obd_jobid_var +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b9661ca lprocfs_add_simple +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9d08ea70 lprocfs_rd_numrefs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9d5c0bd4 lprocfs_rd_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9d95dcd4 lprocfs_free_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9dbb17b6 lprocfs_dt_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9fee13d2 cl_2queue_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ff1c55a cl_page_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa07e38c1 lprocfs_alloc_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa0ce362d cl_io_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa1b21eb2 cl_env_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa21c5ea1 obdo_from_la +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa292e495 cl_lock_is_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa2f89d9e capa_cpy +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa3ad88c8 cl_lock_hold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa4335379 cl_sync_io_note +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa492d5b4 lprocfs_seq_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa513f7e4 lustre_groups_from_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5fb234f lprocfs_write_frac_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa674c241 kuc_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa6baff63 lprocfs_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa6bcff69 cl_io_rw_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa7259fa1 cl_lock_hold_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa7b9f7d1 lu_object_find_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa7e39d85 cl_page_is_vmlocked +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa862d221 lprocfs_oh_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8a4ebbd cl_page_vmpage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8d8782b cl_lock_mutex_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8ddc535 cl_page_list_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8f86983 llog_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa9aad918 class_disconnect_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa21b7a0 lustre_register_quota_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa433ed6 lprocfs_free_per_client_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa7b1703 cl_object_attr_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaaddd227 cl_page_list_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xab824920 cl_io_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabaf9ab5 lu_context_key_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabe72d79 dt_txn_hook_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabf45922 capa_decrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabf527a7 dt_record_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac405bbd class_search_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac7f1596 kuc_ptr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xace8258b cl_io_submit_rw +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaf1c13ec lprocfs_rd_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaf5b3633 cl_object_has_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xafc6c9aa cl_2queue_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xafe28e74 dt_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb01963a6 class_uuid_unparse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb040274f lprocfs_nid_stats_clear_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0a0d7fd obdo_to_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0fb9886 cl_lvb2attr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1218cfa llog_osd_get_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb14c2168 cl_req_page_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1634c89 llog_cat_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1927245 dt_version_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1b89b6d class_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1d1b2dd obdo_from_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb21a8c25 cl_sync_io_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb21e3b98 lu_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb226b20b cl_env_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb27d34a0 lprocfs_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb2924c1b cl_locks_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb2b79458 lu_context_key_quiesce_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb319db6d class_handle_hash_back +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb3eddb0a dt_index_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb4018fc1 class_disconnect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb41998cd lustre_cfg_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb419ef07 lprocfs_free_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb4747acf lu_env_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb4cde2d0 cl_object_attr_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb5490cb1 cl_page_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb54b5ba4 cl_page_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb67208c5 cl_env_unplant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb68a3d0c class_connected_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6ba5dd5 kuc_ispayload +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6cb7916 lprocfs_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb743ec6a dt_mode_to_dft +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb8622aec llog_obd_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb9a7f69b cl_vmpage_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba40d309 lu_site_init_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba985283 lustre_register_client_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbaa0cda8 iattr_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbacac922 lprocfs_write_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbcf811fb cl_lock_enqueue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbd93edb5 obd_export_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbd9ff972 cl_env_nested_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbe2008e7 class_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbf9e695e lprocfs_oh_tally_log2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbfa6ded3 cl_page_is_under_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbfe06e3d cl_conf_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc06d108c local_index_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0bf7ef2 obd_debug_peer_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc1b9a319 lprocfs_oh_sum +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc3637219 cl_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc37eb9c0 cl_lock_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc3bff6cb class_process_proc_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc4050fb8 lu_context_key_revive_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc500f19d llog_cat_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc5111df3 cl_object_kill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc514caf8 dt_declare_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc5437679 class_import_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc565a304 class_export_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc58982d4 cl_page_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc5f87c9b cl_type_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc64f5d98 lu_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc66af13e class_devices_in_group +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc673ac77 capa_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc7b76b49 llog_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc848b681 llog_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8dbaa87 lustre_swab_cfg_marker +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8eda1ce cl_lock_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8f558e9 cl_lock_descr_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc963b685 dt_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc9b3c667 dt_lfsck_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xca6cfa5f lu_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xca6f98e5 cl_page_list_move +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb0ab67f obd_max_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb94ca35 llog_declare_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcbd7ffc7 lu_object_invariant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcbe82694 lu_context_key_degister_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcbf60587 cl_io_submit_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcc25f5aa lu_object_anon +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xccf7a8de obdo_cpu_to_le +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd5be2c1 cl_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd679f2c dump_lsm +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd7537ee get_devices_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd8a604e lu_buf_check_and_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd95fd0c cl_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcdb66ff4 dt_try_as_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xce9c06d2 cl_lock_get_trust +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcecc0b95 lprocfs_add_vars +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcedb140a obdo_cmp_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcf6b731d class_config_dump_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd0103eae cl_sync_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd08827c0 server_name2fsname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd0b6995d lu_buf_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd10aa042 lustre_swab_llog_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1ae21f2 lu_site_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1b1478b cl_attr2lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1f58645 lustre_swab_llog_hdr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd215a137 cl_page_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2415cdf cl_io_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd24f8496 llog_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2a381a1 cl_lock_descr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2f983bf cat_cancel_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd374fac5 class_exp2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd42514e4 local_file_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd4831d33 cl_req_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd4fe2784 cl_lock_is_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5158398 cl_lock_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd58b5d5a llog_thread_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5918124 cl_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd59f8239 class_conn2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd6b795f4 cl_lock_closure_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd6eb16fc cl_offset +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd70fe669 lustre_swab_llogd_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7520b02 lu_object_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bc8654 obd_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bfbc9c lprocfs_dt_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7f7b340 cl_lock_mode_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7fb9c6b lprocfs_alloc_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd831c4e3 class_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd8a5bfdf cl_req_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd8c9c7c9 cl_env_nested_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd9887aad dump_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda5b1ced class_find_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda74761c lu_ucred +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdaa15b42 cl_lock_ext_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdab8cade class_incref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdac644c8 lustre_posix_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb13dce1 capa_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdc133bfa cl_lock_signal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdc49c437 lu_env_refill_by_tags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdc7de85a lprocfs_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcc40af0 class_check_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd78c0c7 lu_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde1de682 cl_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde290d53 lu_ucred_assert +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde2adf06 lu_context_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde7d985b obd_dirty_transit_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe028cf84 capa_encrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe02a7f10 cl_lock_hold_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe05e2a65 cl_page_own_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe0aecb1c lu_context_key_register_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe16d3e14 dt_txn_hook_commit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe1d4881b capa_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2e14a6b cl_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2eb4470 class_get_next_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3323f5d class_handle_free_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3aad3e4 cl_lock_mutex_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe4c1f53b cl_lock_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe5c5873b lu_context_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe6627965 class_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe69eaae1 class_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7d83236 cleanup_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8e84c32 class_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8f4a2dc cl_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe90e0f6e llog_cat_cancel_records +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe90e4a35 llog_cat_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xea2fbe74 dt_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb3f388a _debug_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb981c8f cl_page_list_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec7d6b85 obd_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xecd1e0cd lprocfs_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee305624 lu_object_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee68bc29 lu_session_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee8c91d7 cl_page_find_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeeeb79fa do_lcfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xef76f858 block_debug_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf01e2527 server_name2index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf0d2d7ae cl_page_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf0e002bd cl_page_is_owned +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf1ccb22f cl_lock_user_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2d0a0da cl_req_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2fd6695 statfs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3253e15 cl_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf347f179 lprocfs_rd_server_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf40a3884 cl_io_rw_advance +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf4508173 cl_io_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf490d5f9 class_del_profiles +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf517e100 llog_cat_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf60d4659 capa_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf6529c0e lustre_idmap_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7020831 lprocfs_dt_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf740201d cl_env_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf74ff163 cl_page_list_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7f42641 lprocfs_free_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf80d378a llog_declare_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8c2df92 obdo_set_parent_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa813d06 capa_hmac +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb1b396b lprocfs_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb4a6e79 cl_page_list_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb4e67b8 class_unlink_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb8488d3 obd_export_evict_by_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbb56712 lu_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbea0098 lu_types_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc33f8c8 dt_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc7f18d0 obd_pages_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfce4103b lu_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd68d17a class_notify_sptlrpc_conf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd8f5cf4 lu_buf_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfdb69af1 local_object_unlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfdbe1557 lprocfs_write_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfdea8b69 llog_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfe9f8d3a obd_devs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff01818a lu_kmem_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff57e92d class_match_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfffc1f11 lustre_swab_ost_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/osc/osc 0x5c4940c2 osc_update_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x003b7a28 sptlrpc_conf_client_adapt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x00d95039 ptlrpcd_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01382e34 ptlrpc_buf_need_swab +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01d6ef7f ldlm_pools_recalc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0240cd3f ptlrpc_free_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x039bd067 ptlrpc_request_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x048b59d5 lustre_msg_set_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x04ea38b8 ptlrpc_wake_delayed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0515f93b RQF_FLD_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x054d21a1 sptlrpc_sec_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x05d9345d ldlm_blocking_ast_nocheck +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x06b3942b lustre_swab_lov_user_md_objects +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x071fc74a RQF_LDLM_ENQUEUE_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x07304026 ptlrpc_recover_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x07605c7d interval_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x07d46268 lprocfs_wr_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0850e764 req_capsule_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08bb2d27 lustre_swab_obd_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x095587d0 lustre_msg_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x09e08e77 ptlrpc_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a3130b0 RMF_MDT_EPOCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a33d20f ptlrpc_unregister_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a5e6996 sptlrpc_import_sec_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a79cf73 ptlrpc_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac252b2 lustre_msg_set_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac54708 lustre_errno_hton +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0bcacb5d RMF_MDS_HSM_USER_ITEM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c2d9c43 lustre_swab_lip_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0cd75940 sptlrpc_enc_pool_put_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0cf343dd RQF_LDLM_INTENT_BASIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x10f18f20 interval_iterate_reverse +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x115017f6 req_layout_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x11b04eef ptlrpc_abort_inflight +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x11c50af8 ldlm_lock_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12302286 ptlrpc_nrs_policy_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12b6f5a3 ptlrpc_connection_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x13a48737 sptlrpc_cli_wrap_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1483eca4 ldlm_lock_addref_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x148ec8f9 sptlrpc_cli_unwrap_bulk_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x14ac4734 ldlm_lock_change_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x14d192db lustre_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x14f4460f sptlrpc_gc_del_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1519606b ptlrpc_obd_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15a3e4db RMF_GETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1694846f ldlm_namespace_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x16b58216 __ptlrpc_prep_bulk_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x172fb86d lustre_msg_hdr_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1747d8b3 ldlm_lockname +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x177690a9 ldlm_cli_cancel_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x17950f60 RQF_SEC_CTX +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19108a0f RQF_OST_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19c08934 RQF_LDLM_INTENT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a6a3ce9 RQF_OST_GET_INFO_LAST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a9b76aa RMF_OBD_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1abd3258 RMF_SETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ace4b5f RQF_LDLM_BL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ba2cb10 ptlrpc_replay_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1bae0270 interval_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1be21715 lustre_msg_size_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c300d8e lustre_msg_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d043548 lustre_msg_set_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d0b5769 lprocfs_rd_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d2e4d23 req_capsule_server_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1dc2051d RMF_SEQ_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1de9c288 lustre_swab_layout_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e8e48a4 sptlrpc_flavor_has_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1eb2a65f RQF_OST_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee46b51 lustre_init_msg_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee9eb3c RQF_MDS_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2096f5b5 RQF_OST_SET_GRANT_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20d6b82c RQF_LDLM_INTENT_QUOTA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x218a36ce ldlm_cli_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2230d700 ptlrpc_cleanup_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x22e0d91e ptlrpc_mark_interrupted +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x233790b5 RMF_OST_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x244e5558 lustre_msg_get_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x24aafdba RMF_MGS_TARGET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2585a629 RMF_SEQ_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2587513c RQF_LDLM_CP_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x269554ce RQF_LDLM_INTENT_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x26f99d16 RQF_MGS_CONFIG_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x285e5b99 lustre_msg_set_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x294d5197 ptlrpcd_alloc_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x297b3661 lustre_pack_reply_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x29e0869a sptlrpc_get_hash_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a405509 ptlrpc_resend_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a41b5d3 req_capsule_client_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a63a472 lustre_swab_ptlrpc_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ba2c623 ptlrpc_set_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c00c60d ptlrpc_sample_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ca92fa8 ldlm_lock_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ccd5b87 ldlm_cli_cancel_list_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d56f168 ptlrpc_pinger_ir_up +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d798316 RMF_MGS_CONFIG_RES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d88bb89 ptlrpc_commit_replies +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ddd4bbc ldlm_resource_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4562fe RQF_LLOG_ORIGIN_HANDLE_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4ca396 RQF_LDLM_INTENT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2eae8390 ptlrpc_request_bufs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ecd7515 lustre_msg_check_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f0e4f87 RQF_OST_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2fd2f737 lustre_msg_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x301d4fcd RQF_MDS_READPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x302937e0 RQF_MDS_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3060b9c6 sptlrpc_rule_set_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x306a2453 ldlm_pool_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x30e366e2 sptlrpc_cli_enlarge_reqbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x317b70ff llog_origin_handle_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31838cb4 RMF_IDX_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3198402b ptlrpc_lprocfs_brw +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31e5dacc lustre_pack_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3261b862 RQF_OST_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x33bb7761 ldlm_typename +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x34607292 ptlrpc_request_set_replen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x35939a3d lustre_swab_fiemap +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x36fff6ca ldlm_namespace_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x372f1cfd ptlrpc_set_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3835ab4b RQF_LLOG_ORIGIN_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3858fb94 RMF_OBD_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38b91771 ldlm_pool_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38c01799 RQF_LDLM_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38fce533 lustre_msg_set_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39f60a5f RMF_OST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a1e4bcb __lustre_unpack_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a6621d9 sptlrpc_import_flush_all_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a849eb8 client_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3aa694cd ptlrpc_prep_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ab90f6e lustre_msg_bufcount +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ac00716 lustre_swab_hsm_user_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b331bee target_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b6b7cba dump_ioo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bedb0c7 RMF_LLOGD_CONN_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c30af52 ptlrpc_lprocfs_unregister_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c63e62b RQF_MDS_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ca50f33 RQF_MDS_HSM_CT_REGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d3b6b86 ldlm_lock2desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d7dc5f9 ldlm_pools_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3db6e676 ptlrpc_prep_req_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dc47695 lustre_msg_get_magic +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dddb3e2 dump_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3eb383e8 ldlm_cli_cancel_unused_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f034caf lustre_msg_get_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f34896d req_capsule_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f752e78 RQF_MDS_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x40e9890b ptlrpc_req_set_repsize +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x41008cef RQF_LDLM_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x422e0b08 ldlm_cli_update_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43705ee4 RQF_LOG_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43bfb126 sptlrpc_svc_ctx_invalidate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43d7efc8 lustre_msg_set_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44036eda RQF_MDS_GET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x440c2a71 RMF_FIEMAP_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4473341a ptlrpc_init_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4477e165 ldlm_resource_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4481591d RQF_OST_SET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45d05893 lustre_swab_lustre_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45e30cea lustre_swab_ldlm_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x460a450b llog_origin_handle_read_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x46263fa6 ldlm_resource_unlink_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47f5e903 RMF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x48814c9f lustre_swab_ost_lvb_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x493e54db ldlm_namespace_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x49780d98 ptlrpcd_add_rqset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x498c03c5 lustre_msg_set_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a5a2416 RMF_DLM_REQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a82717a ldlm_extent_shift_kms +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b09ce4b lustre_swab_mdt_rec_reint +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b5bd38c ptlrpc_stop_all_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4ba83928 ptlrpc_save_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c4a0c72 _ldlm_lock_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c8969f7 ldlm_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d7580d0 lustre_swab_hsm_user_item +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e1706e5 lustre_msg_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e696b96 ptlrpcd_queue_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4eb03a6f ptlrpcd_destroy_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4eb8b223 ptlrpc_req_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f3c455d ldlm_cli_cancel_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f766c3b lustre_swab_generic_32s +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x502ba286 sptlrpc_conf_target_get_rules +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50443f6a ptlrpc_init_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5059128f ldlm_pool_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50dd74f8 RMF_STRING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5185198e ptlrpc_prep_bulk_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x52c2bf16 ptlrpc_at_set_req_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x52c62150 RMF_RCS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53411557 RMF_DLM_REP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53a4a004 bulk_sec_desc_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5486e13c req_capsule_server_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x54ae5021 ldlm_lock_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x555eb7fe RQF_MDS_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x55e87747 llog_origin_handle_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x57377f43 ptlrpc_disconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x588035b4 RMF_UPDATE_REPLY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x595ab175 lustre_swab_obd_quotactl +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x596582bf RMF_GETINFO_VALLEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x59ca398b ptlrpc_add_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a057439 interval_search +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a37e8cf client_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5af0d02a ldlm_lock_dump_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b6ba895 lustre_packed_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5bbd8061 ldlm_namespace_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c5ddb8e sptlrpc_target_update_exp_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c6a3a83 RQF_SEQ_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5caae213 ptlrpc_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5cd55b85 ldlm_cancel_resource_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5d70909b ptlrpc_retain_replayable_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5d7f178f ldlm_pool_set_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e0b19b1 RMF_CLUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e2b7558 lustre_msghdr_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e6f435d RQF_OST_BRW_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e716f57 ldlm_resource_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e80f899 RQF_LLOG_ORIGIN_HANDLE_READ_HEADER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ebd7dd7 sptlrpc_cli_ctx_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ec3284d RQF_MDS_HSM_CT_UNREGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ef831ee lustre_msg_get_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f96ccdd ptlrpc_connection_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6042bc15 RQF_MDS_REINT_RENAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x604e2505 RMF_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x607ec932 lustre_msg_set_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x60cd26ad RQF_MDS_REINT_CREATE_SYM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61646e1b RQF_MDS_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x618ad203 RQF_OST_GET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62192cf8 dump_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x628850c1 ptlrpc_req_finished +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6292d70e ptlrpc_restart_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62aaae3f RQF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6315dd4c RMF_LLOGD_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6352a62d ldlm_get_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x639cac7a _debug_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x647b6e48 lustre_swab_ldlm_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6488f186 ptlrpc_req_finished_with_imp_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x653723dc RMF_LOGCOOKIES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x65d6bee9 sptlrpc_sec_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x665a39b8 ptlrpc_invalidate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x685d2bcc ldlm_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x685eeaba RMF_DLM_GL_DESC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68cb2541 interval_is_overlapped +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68f49e5e ptlrpc_expired_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6912990a RQF_OST_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x696ba811 lustre_msg_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69817ad2 ldlm_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69b8dc6a ldlm_prep_elc_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69c9f04d RQF_MDS_REINT_LINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a30193d ptlrpc_request_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a3785c9 RMF_EADATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6c12b04b ptlrpc_send_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6c70dc4b ptlrpc_pinger_sending_on_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d704010 ldlm_namespace_new +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d72828c sptlrpc_conf_log_update_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d7931cc RQF_UPDATE_OBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6e4f5587 ptlrpc_set_add_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ed20499 ldlm_revalidate_lock_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6efa82b0 RQF_MGS_TARGET_REG +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f6dc736 lustre_swab_mdt_remote_perm +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6fa02d58 ptlrpc_resend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6fb92092 sptlrpc_flavor2name_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x703538e4 lustre_swab_hsm_current_action +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x71b0b1ea target_pack_pool_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x71ceb102 ldlm_init_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x723d43b6 sptlrpc_rule_set_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x725a892c RQF_MDS_REINT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x72f0b951 ptlrpc_unpack_req_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74840056 lustre_msg_set_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7505d2a9 sptlrpc_cli_ctx_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x754eb879 lock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7586393f sptlrpc_gc_add_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75a2c40d ldlm_put_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75ec8c4e ptlrpc_start_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76b728e5 lustre_swab_update_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76e6a873 sptlrpc_target_sec_part +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76f17d4c ldlm_prep_enqueue_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77571cc6 lustre_swab_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77840c82 sptlrpc_rule_set_choose +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78bf9136 lustre_swab_ldlm_lock_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a832f10 RMF_CONN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7afec967 ptlrpc_unpack_rep_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b158da4 lustre_swab_ldlm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7bbf8001 RMF_MDT_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7c4c6107 RQF_LDLM_CONVERT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d1ecd7f RQF_LDLM_INTENT_LAYOUT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d41a8b9 RQF_QUOTA_DQACQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dc0e7cd RMF_QUOTA_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dfb3c18 lustre_msg_clear_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7e03a3eb client_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f021c35 ldlm_lock_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4925d8 interval_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4c99b1 ldlm_expired_completion_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f5a1cc7 lustre_msg_set_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f6d2357 lustre_msg_is_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80a9e8c3 lustre_msg_get_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80e726be sptlrpc_cli_ctx_expire +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80ecb4e3 RMF_MDS_HSM_CURRENT_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8110aaf0 lprocfs_wr_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x817d7f1f lustre_msg_add_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x81c105b0 ldlm_reprocess_all_ns +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x822174fd req_capsule_client_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x826d3c4f RQF_LDLM_GL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x833f0e2c req_capsule_field_present +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x837efb00 RMF_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x83f1b69b unlock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x84de864b ptlrpc_set_import_active +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85135801 RMF_DLM_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85a9e0d8 RMF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85eecf67 sptlrpc_get_hash_alg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x863db6eb RMF_HSM_USER_STATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x865cda83 sptlrpc_cli_ctx_wakeup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x86bfa42a lprocfs_wr_evict_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x86fa8c3b ldlm_cli_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8760beaf lustre_swab_ldlm_policy_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x876c2551 RMF_GETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87bf7b3c sptlrpc_get_next_secid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8822bdaa client_import_del_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8872f3d2 RMF_SETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x887443af ldlm_init_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8888bcff req_capsule_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x88fff52d RMF_CAPA2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x895234de req_capsule_server_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x89ec9a94 ptlrpc_prep_fcset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x89f9edf7 RQF_MDS_REINT_SETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a1ea476 lustre_swab_hsm_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a257736 RQF_MDS_HSM_STATE_GET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ac440fa ptlrpc_uuid_to_connection +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b854254 lustre_swab_mgs_config_res +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8bc80d92 sptlrpc_get_bulk_checksum +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8c6b3a61 lustre_pack_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cb71d4b RQF_MDS_REINT_CREATE_SLAVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cfe2768 llog_origin_handle_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d1a91d4 lustre_free_reply_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d77ea75 lustre_msg_set_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8da3fca7 lustre_msg_add_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8e9abe4d RMF_GENERIC_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ea20388 target_print_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ed31852 ldlm_lock2handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ef37a10 ldlm_pool_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f0aceac RQF_MDS_HSM_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8fec0451 lustre_msg_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x919c4ce3 RMF_OBD_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91cf58d3 RQF_MDS_PIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91e5edfa ldlm_flock_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x937b1ee0 lustre_swab_mdt_ioepoch +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x949db569 ptlrpc_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9553c633 RQF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x95967161 ldlm_namespace_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x95d08f0c lustre_swab_mgs_target_info +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x962d8ebb ptlrpc_lprocfs_register_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9660ace0 RMF_FLD_MDFLD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x967bfd52 RQF_OBD_PING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x96c3305e ptlrpc_activate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9798f2f1 RQF_MDS_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x980fcfdc ptlrpc_connection_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x981fe3c7 ldlm_lock_fail_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a258886 RQF_MDS_GETSTATUS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a3ce7eb req_capsule_has_field +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a6f2f6d lustre_msg_set_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9acf583b ptlrpc_buf_set_swabbed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b88f6ce RMF_NIOBUF_REMOTE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9bb5198b RQF_MDS_CLOSE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9c215a18 ptlrpc_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9cc252e3 sptlrpc_import_flush_my_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9d7ea314 sptlrpc_pack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9e22c20c req_capsule_client_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9e9dfc6e sptlrpc_enc_pool_get_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9fb088f1 lustre_swab_lov_mds_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa079fc32 req_capsule_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa0b8dfb3 ldlm_resource_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa10f0d3d RMF_UPDATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa163f4c3 dump_rniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa1f07353 ldlm_pool_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa20540ed req_capsule_server_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2244636 RQF_MDS_GETATTR_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa22c0086 ldlm_error2errno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3d2a6ee RMF_CAPA1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa47787ef RMF_PTLRPC_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa495994b client_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa498b2c9 ptlrpc_prep_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4a2d089 RQF_OST_PUNCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4bea5ef lustre_swab_lmv_user_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5014c17 llog_client_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa50f70ee sptlrpc_unregister_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5458dad ldlm_lock_decref_and_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5880075 ldlm_errno2error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa6c436ca RQF_MDS_WRITEPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7d55cc3 RQF_MDS_REINT_CREATE_RMT_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7e360b1 RMF_OBD_IOOBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7ec567d RMF_CONNECT_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa92e6dd0 ptlrpc_service_health_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa95b8f82 lustre_pack_reply_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9704f80 lustre_msg_get_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa99fb1ff llog_initiator_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9c4658e lustre_swab_lov_user_md_v3 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9edf09d RQF_OBD_IDX_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaa97256b ldlm_cli_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaac8c9bd ldlm_pool_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xab36384a ptlrpc_nrs_policy_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xabf48273 ptlrpcd_wake +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xacdf1841 ptlrpc_register_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaddc3979 lustre_swab_lustre_capa_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaded9c97 req_capsule_server_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xae4d5219 ptlrpc_reconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf4e9658 RQF_MDS_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf50a0d6 RMF_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0751fa4 RQF_LLOG_ORIGIN_HANDLE_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb12de661 ldlm_lock_allow_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb15113d1 req_capsule_client_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1923870 sptlrpc_target_export_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1b43d8a dump_rcs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb26fa5e0 ptlrpc_hpreq_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb27c2374 lustre_msg_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb291473d lustre_msg_early_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb2b1817d lustre_swab_ost_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb35edd14 ptlrpc_register_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb399b4a3 sptlrpc_register_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb3be7092 ldlm_pool_get_lvf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb3bf270d ldlm_lock_downgrade +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4a7ecf3 lustre_msg_add_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb512ebc2 sptlrpc_parse_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb61cb95a RQF_MDS_GETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb68476df interval_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb6aafd03 RQF_MDS_DONE_WRITING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7b38189 RMF_MDT_MD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7fa3cc8 RMF_LLOG_LOG_HDR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb8cb587c ptlrpc_queue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb903634e RQF_OST_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9293baf req_capsule_other_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9b631cf lustre_swab_mgs_config_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbaa76097 lustre_msg_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbc1370dc lustre_shrink_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd56249c sptlrpc_sec_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd655ad5 ptl_send_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd83bc44 RQF_OBD_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe0bfc8c req_capsule_server_sized_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe47bc7e ping_evictor_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbeb7e023 ptlrpc_set_next_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf98b86f RQF_MDS_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbffd4313 RQF_OST_BRW_WRITE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc06c4670 lustre_msg_get_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0867da7 RMF_REC_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0cdf55e RMF_MGS_SEND_PARAM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2986d28 lustre_swab_ldlm_res_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2b1af57 RQF_MGS_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2be922a RMF_SYMTGT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc3586f69 lprocfs_wr_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc44629b4 ptlrpc_cleanup_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc559a634 RMF_LAYOUT_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc60a60e1 RQF_OST_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc62fcad5 sec2target_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc694be4b RQF_LLOG_ORIGIN_HANDLE_PREV_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc6b314a6 ptlrpc_fail_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc6d6099e sptlrpc_lprocfs_cliobd_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7346275 ldlm_destroy_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc763fabc sptlrpc_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc79b9c67 ldlm_pools_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7ca8257 RQF_MDS_REINT_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7e47564 ptlrpc_interrupted_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc862f112 ptlrpc_pinger_add_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8f586a9 ptlrpc_connection_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc9c5d58f req_capsule_extend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc9ed9d38 __ldlm_handle2lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xca553220 req_capsule_filled_sizes +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xca5a81ec ptlrpc_pinger_ir_down +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcabf4782 ptlrpc_request_alloc_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2cc0cf lustre_swab_lquota_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2ceaff sptlrpc_secflags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcc5a6525 ptlrpc_unregister_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xccd5f19b ptlrpc_unregister_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce1a689b sptlrpc_enc_pool_add_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce86066d lustre_msg_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcec513c9 RQF_MDS_UNPIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xced015be sptlrpc_rule_set_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9963db lustre_msg_get_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9aab6a RQF_MDS_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd0eaebc6 ldlm_glimpse_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2983334 lustre_swab_swap_layouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2e0d4eb lustre_msg_get_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd3311961 ldlm_cli_cancel_unused +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd3dae408 ldlm_it2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd537ded2 lustre_swab_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd5979170 ldlm_lock_fail_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd5cdafdb __ptlrpc_free_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd67a5d7b lustre_swab_update_reply_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6954c93 llog_origin_handle_next_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd69e0a27 RQF_MDS_IS_SUBDIR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6c3ebfb RMF_FIEMAP_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7192262 ptlrpcd_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd71ef1db ldlm_replay_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7910326 lustre_swab_obd_statfs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd81413ba sptlrpc_cli_unwrap_bulk_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd88270b1 ldlm_destroy_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8b91b3e lustre_swab_lov_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8f06300 RQF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd9561861 RQF_LDLM_INTENT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda2ac111 sptlrpc_proc_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda585bb2 ldlm_pool_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdafcb6a6 do_set_info_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb1fb0a2 RQF_MDS_REINT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb9d5a6a lustre_swab_niobuf_remote +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdc117899 ptlrpc_request_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdc9e5245 req_capsule_set_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdcf7c648 ldlm_cli_enqueue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdcf910b9 lustre_swab_ost_last_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd0ffb04 sptlrpc_flavor2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd30d7bf RMF_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xddc0e3b2 ldlm_register_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xddc40a85 lustre_msg_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde12d36b RMF_MDS_HSM_ARCHIVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde555d70 sptlrpc_enc_pool_del_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdeae32b0 client_disconnect_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdee87192 sptlrpc_conf_log_update_begin +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf701ae7 lustre_swab_fid2path +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0832736 ptlrpc_init_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0cc694c RQF_LLOG_ORIGIN_HANDLE_NEXT_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0e004bd ptlrpc_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe2b7fb5e req_capsule_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe40e0a50 lustre_msg_get_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe4ba30f8 ldlm_pool_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe57bd972 sptlrpc_current_user_desc_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe58fa60d ldlm_blocking_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe5e8169b lustre_errno_ntoh +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe60bc74e ldlm_pool_get_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe643998e RQF_OST_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe673d85d ptlrpc_deactivate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6f0dc96 RQF_OST_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7062b5f RMF_U32 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7512278 ptlrpcd_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe78a88c5 ldlm_cli_enqueue_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe8678e72 ldlm_lock_allow_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe87a245e llog_origin_handle_prev_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabaa0b1 lustre_swab_mdt_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabac4fc sptlrpc_rule_set_merge +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeb59f729 sptlrpc_gc_add_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeb64d6da req_capsule_server_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeb8b249c ldlm_pool_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xebb64e68 req_layout_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec226f66 ping_evictor_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec939a00 RQF_MDS_REINT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecace5c1 RQF_OST_GET_INFO_GENERIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed1c10d6 ptlrpc_connection_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed9fd4c6 ptlrpc_request_alloc_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xedcb740d sptlrpc_name2flavor_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xef1aeca9 RMF_FLD_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0241d6e lustre_swab_hsm_progress_kernel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0d52b5f ptlrpc_pinger_suppress_pings +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf1300275 _sptlrpc_enlarge_msg_inplace +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf13faa27 ldlm_enqueue_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf259b7a0 client_import_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf277c125 RQF_OST_GET_INFO_FIEMAP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf27d49dc sptlrpc_target_choose_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf2ae44bb ptlrpc_set_add_new_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf2c7f793 ptlrpc_set_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf35f132b lustre_swab_ldlm_resource_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf38ebf8e client_import_find_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3d44370 RQF_OST_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf43540b9 lustre_swab_mgs_nidtbl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf45085e1 sptlrpc_conf_log_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf55c033b RMF_MGS_CONFIG_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf584a16b sptlrpc_part2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf596e9ae sptlrpc_conf_log_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf5a9868d ldlm_completion_ast_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf607fc23 sptlrpc_flavor2name_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf617ab8a lustre_msg_get_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf63d64e3 ldlm_namespace_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf697b756 ldlm_dump_all_namespaces +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf6f4f090 ldlm_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7408f84 lustre_swab_hsm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7ba40c0 RMF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf85cb27e sptlrpc_parse_rule +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf870fed9 RQF_LDLM_GL_DESC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf8f1817b sptlrpc_req_replace_dead_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9051bd6 RQF_QC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf94e41e0 deuuidify +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf973aa93 lustre_swab_lov_user_md_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9ee11e2 lustre_msg_set_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9f72dfc RMF_TGTUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa476225 llog_origin_handle_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa51688d interval_insert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfaa561ca ptlrpc_pinger_del_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb658eb4 ptlrpc_request_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc12de75 req_capsule_init_area +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc186744 ptlrpc_add_rqs_to_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc2fa83f ptlrpc_del_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc575cf5 ldlm_pool_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd148bf8 RMF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfdb4f44a ptlrpc_schedule_difficult_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff02a0e9 ldlm_lock_set_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff53f71d ldlm_get_enq_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffc807e8 sptlrpc_unpack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffe29c3f RQF_LDLM_ENQUEUE +EXPORT_SYMBOL drivers/staging/media/cxd2099/cxd2099 0x0cc11f62 cxd2099_attach +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x2fcde726 go7007_boot_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x394476bc go7007_read_addr +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x83d832eb go7007_snd_remove +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x850b64d7 go7007_update_board +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x9e82945e go7007_alloc +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x9f158b7f go7007_read_interrupt +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xb1c55f3e go7007_register_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xbd346194 go7007_parse_video_stream +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xcea8e663 go7007_snd_init +EXPORT_SYMBOL drivers/staging/nvec/nvec 0x2099145e nvec_write_async +EXPORT_SYMBOL drivers/staging/nvec/nvec 0x84402fff nvec_write_sync +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x00db608a rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x09d7b8f3 rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0bd87e38 rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0e9bc692 notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0f602b58 rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x13536657 rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x19a7b3bc rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1bc8387b free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2ced736c rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2e455b42 rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3883764b rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3907f94f rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5be844c8 rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5d2efad3 dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5dc676c6 rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x60d4f648 RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x62ce1526 rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x664ae68c alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x691ba8dc rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x69221d0f rtllib_wpa_supplicant_ioctl +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6b5e842c rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x70648ef1 rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x73600117 rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7ed28f57 rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x874bcf71 rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x89042217 rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8c0a1400 rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x90526de0 rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x92768264 rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9692937e rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9c08fb5f rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa2cf2525 rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa4e8c44e HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa529a5d0 rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb2c169f3 Dot11d_Channelmap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb8d7ca1a rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbe1420f2 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc1d4da00 rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc65dff12 rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc86bd17a rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xcbd96b38 rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xcdfd2230 rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd0198ec2 rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd4b86920 rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd536b768 rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd81b20ff rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe27d6098 rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xedb13954 rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf59d6496 rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf8415e62 rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xff893984 rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x05db78c2 ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0d978b07 ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x13efa48f Dot11d_Reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x16aced65 ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1c1c5fa9 ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1cd04760 ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1d8753c7 DOT11D_ScanComplete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x22244bb0 ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2385ff42 ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x260e44bb ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2cde6e8b ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3227f0ba ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x39aa7422 ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3a6c3158 ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3b5423b9 IsLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3b704b93 ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3cbb989d ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3ea7e931 ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x410b6312 ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4575816a ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x47d96283 ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x49054fa9 ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5088f220 ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x62b6aa85 ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6b7263fc Dot11d_UpdateCountryIe +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6c32c8b5 ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x78539bde ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x786d7043 ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x797173d4 ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7c82de65 Dot11d_Init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7d289a57 ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x80b7c2c8 ToLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8452cf8e SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8724663d notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x899a1dc1 ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8aa70997 ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8e0ee09a ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x920c4917 ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x999e3e96 ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa0465c5d HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa1dca624 ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa2fa1302 ieee80211_send_probe_requests_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa69648de ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc40b5ad7 ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc488b706 ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xca7c0e61 ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xcca33912 ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xcd719372 ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xced7ad36 ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd11eead7 ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xde9b5940 ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe3ee260b ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe64feaf0 ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xeafdbe92 ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xefca25ea ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf9e3d4e3 DOT11D_GetMaxTxPwrInDbm +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0017f35f set_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x00ea0cde set_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x06d6f244 get_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x09df8f3e set_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0a8d32c3 get_bypass_slave_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1936264c set_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1d2eb8ca get_tap_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x203af1f7 reset_bypass_wd_timer_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2070f14a set_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x27b990ef get_bypass_info_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2ba7cd35 get_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2c3f1c17 get_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2f59e636 get_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2fdb893a get_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x361cf40a get_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x45ca99c3 set_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x550a188c set_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x5cb59e92 get_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x66b60122 set_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x675208c0 set_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x692623f2 get_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x75131ec6 set_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x76c0b7d0 set_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e872825 get_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e8d701e get_wd_expire_time_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x86388b07 get_bp_disc_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x93ae4648 get_wd_set_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x95e42b0d is_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9df5f807 set_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9e21f42e set_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xa689a214 get_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xae117788 get_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xc368d30d get_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xccab5de0 get_bypass_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd3e034b3 get_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9c1ccfc get_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9d38d97 set_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xe640f06e set_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xecdaa456 set_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xedcd3c1b get_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf06d67bf set_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf57c1671 get_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf693c3a1 bp_if_scan_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf8237882 get_bypass_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xfa59240d get_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05af3c4c set_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05b08a42 set_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0b0d5ce0 get_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0fc2e83c reset_bypass_wd_timer +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x123a8133 get_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x157ec89c get_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2440f05a get_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2b01d1d4 set_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2c27a2f0 set_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2da97f4b is_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2e86c67b get_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37416370 get_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37bdab27 get_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x3da96a18 get_bypass_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4025805e get_bypass_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4940a0cc get_bypass_info +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4d21ff51 get_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5147360c get_bp_disc_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x515d4df1 get_bypass_slave +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5560267e set_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5be44d44 set_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6653590c get_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6bda14ec get_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x72c618ae set_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x76d47e6f set_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x794e3815 set_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x7c6cbc16 get_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x84a263dc set_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x8a16f22c set_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x946ff795 get_wd_set_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x94f6aff2 get_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x9d1ecf73 set_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xb1385629 set_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xbff68c45 set_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xc871c561 get_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xcee528df set_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd202dd85 get_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd787f151 get_wd_expire_time +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xdb6a39d2 get_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xebd25ae5 get_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf1e9f8c1 set_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf224abd9 get_tap_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf5a591b2 set_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf643fd4c get_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x0cca0f01 xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x83190d5b xillybus_endpoint_remove +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xb5c2473c xillybus_do_cleanup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xf36678ce xillybus_init_endpoint +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0a01a1af iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2c96fcbd iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x374e9fd7 iscsit_handle_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3cbf59a6 iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4b9fa69c iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x55335bb9 iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x57a5f979 iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x598b33ea iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5b6530f2 iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5e481825 iscsit_set_unsoliticed_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x639c7f5d iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x685e54dc iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x68882277 iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x69faa195 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6af61ec6 iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6dbff4f3 iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x735b79c5 iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7b331b1d iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x89c9988c iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x964679b9 iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9cc457ce iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa786c5a0 iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb34259d2 iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbca3779c iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd8de95c0 iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe2a1f827 iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe803b8f9 iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf9362328 iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/target_core_mod 0x00a155e8 target_setup_cmd_from_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x02de3b18 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x03671d2b fc_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x17db5b87 transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x18b45f8f transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x1a4207d2 target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x1d3857b0 transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x1ed291c8 transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x22c1f27f target_fabric_configfs_init +EXPORT_SYMBOL drivers/target/target_core_mod 0x238b1360 transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x23b017c4 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x26c23909 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x2e517add iscsi_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x2ed8c0a4 target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0x2fd599e5 transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x30def926 sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x31034b09 core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x326db6c6 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x33017b3e target_fabric_configfs_free +EXPORT_SYMBOL drivers/target/target_core_mod 0x348aa1d0 sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a39db92 target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x3e5d381c core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x401eb369 spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0x58568355 sas_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x63c9203f target_fabric_configfs_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x669e8eaf __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x70ef5acc transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0x772b8e92 sbc_execute_unmap +EXPORT_SYMBOL drivers/target/target_core_mod 0x78768954 fc_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x79f069f0 sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x7bfe5eba transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x7c3fc909 transport_init_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x7c66dadb sas_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x7d12f932 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0x7dbada9d transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x7ec36c00 core_tpg_add_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x7ff4a2f4 transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x856ba2e5 sas_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x85aa880c transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x87077628 spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x8e9da287 spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x917b70d5 sas_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x9374d1de core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0x97661e63 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0x9a984d43 target_get_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x9e8d1c38 target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x9f6ae841 target_put_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xa886a3aa fc_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xa972f60f fc_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0xae961b3b target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xb231b722 transport_subsystem_register +EXPORT_SYMBOL drivers/target/target_core_mod 0xb4ab8feb transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xb74aa498 target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xb7901bc1 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0xba78e1e3 transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0xbbad54d0 transport_check_aborted_status +EXPORT_SYMBOL drivers/target/target_core_mod 0xbc45f61d transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0xbc956882 spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0xc1bfae47 core_tpg_clear_object_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0xc2d43df2 core_tpg_del_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xcd7cc2eb transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0xd8be5e7e target_fabric_configfs_register +EXPORT_SYMBOL drivers/target/target_core_mod 0xde55a345 iscsi_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xe103f8fe target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0xe72b377b transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xebe3c18d iscsi_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf01621c7 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf02c3f97 target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xf2e9ec11 core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xf80155cc target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0xf8d922fc core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xfb93e52a transport_subsystem_release +EXPORT_SYMBOL drivers/target/target_core_mod 0xfbc255fa iscsi_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0xfe267bcd core_tpg_deregister +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0x4d1e6240 usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0xcd555406 unregister_gadget_item +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x0a3bd824 gether_register_netdev +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x15c613aa gether_get_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x1d24f26f gether_get_host_addr_u8 +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x423c0d4c gether_get_host_addr_cdc +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x6bab627c gether_get_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x705015ca gether_connect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x790ffebc gether_set_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xab3e8766 gether_set_gadget +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xc51a3d19 gether_get_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xcc0eb88d gether_setup_name +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xd9435ad3 gether_set_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xdb4f4f0b gether_set_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xdc830eec gether_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xe2017843 gether_setup_name_default +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xfe8cb7ca gether_get_ifname +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3a6d4f22 rndis_free_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3ca38e3a rndis_signal_connect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x4ca90996 rndis_signal_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x5d22b406 rndis_register +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x785d494b rndis_msg_parser +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x840dd143 rndis_deregister +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x85a82f9e rndis_add_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x988ad2a2 rndis_set_param_vendor +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x9acf72e4 rndis_set_param_medium +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xa90054ee rndis_uninit +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xb971ebca rndis_get_next_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xd2fe47b1 rndis_set_host_mac +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xdb561e40 rndis_set_param_dev +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xdf7119f0 rndis_rm_hdr +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1710b539 fsg_fs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1b1cc3af store_cdrom_address +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x241241da fsg_show_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x2933ee1d fsg_ss_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x35c8af76 fsg_store_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x387c176e fsg_show_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x398778e1 fsg_ss_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x423845e4 fsg_ss_bulk_in_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x51f8110d fsg_show_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x56344daf fsg_hs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x68cfcd3c fsg_lun_close +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x789be0e3 fsg_lun_fsync_sub +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x95cffb3e fsg_hs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa26670f8 fsg_lun_open +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5cae92f fsg_ss_bulk_out_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5f99b69 fsg_fs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xaf7e2fe8 fsg_store_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb52ba28a fsg_intf_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb54d0d95 fsg_fs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xc3bfb6a4 fsg_show_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xca1d3c7e fsg_store_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xdd0c5156 fsg_show_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xe377877a fsg_store_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xea7bf7cd fsg_store_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xf4efc0c8 fsg_ss_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_rndis 0xaf07f43c rndis_borrow_net +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0x1a5e45ac sl811h_driver +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x1e09baa5 usb_wwan_ioctl +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x3e72ea92 usb_wwan_set_termios +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x4275f2ed usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x42bd95a2 usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x5215fbe3 usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x6cb88510 usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x73c4c66d usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x84f9853a usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xabecf796 usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xb21b268a usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xf03adbd3 usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xf901a659 usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xfe9223b5 usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x2245f166 usb_serial_suspend +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x4264359a usb_serial_resume +EXPORT_SYMBOL drivers/vhost/vringh 0x0dda8c5a vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x1f063017 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x2e91ca97 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x367ce26a vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x36dfce73 vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3eaf442a vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x3fa42e4f vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5dafbd4e vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x66af098b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x6d0e7948 vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x7bda5e6d vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x821e9390 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0xaf8e4a0e vringh_notify_disable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xafb47dae vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc884d704 vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc8bee0a4 vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xd11d2709 vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xda4ea4cc vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0xfc7dcad2 vringh_getdesc_user +EXPORT_SYMBOL drivers/video/backlight/generic_bl 0x366d19ef genericbl_limit_intensity +EXPORT_SYMBOL drivers/video/backlight/lcd 0x3adb4be5 lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0xcc70008e lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xcd6902b1 devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0xd8d5269d devm_lcd_device_register +EXPORT_SYMBOL drivers/video/cyber2000fb 0x0cc3ede5 cyber2000fb_detach +EXPORT_SYMBOL drivers/video/cyber2000fb 0x534b6f18 cyber2000fb_disable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xb39f68d1 cyber2000fb_enable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xcb6d585e cyber2000fb_attach +EXPORT_SYMBOL drivers/video/macmodes 0x233917d1 mac_vmode_to_var +EXPORT_SYMBOL drivers/video/macmodes 0xa94f6d5d mac_find_mode +EXPORT_SYMBOL drivers/video/macmodes 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x18538680 matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xac69a27d matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xde1b1d9c g450_mnp2f +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x003c5c37 DAC1064_global_restore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x2a58942f matrox_mystique +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x5898e1cd matrox_G100 +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xe8656095 DAC1064_global_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_Ti3026 0xb6a26b29 matrox_millennium +EXPORT_SYMBOL drivers/video/matrox/matroxfb_accel 0xb990d806 matrox_cfbX_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x0e29b37e matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x40e6acf7 matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xa7c79a20 matroxfb_register_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xf704ed34 matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x235c1028 matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x7e28753a matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x1e45eb5e matroxfb_read_pins +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x22f31800 matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x34350c68 matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x8c667f77 matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xe95ac0be matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/mb862xx/mb862xxfb 0xa687a725 mb862xxfb_init_accel +EXPORT_SYMBOL drivers/video/output 0x69e60bf2 video_output_register +EXPORT_SYMBOL drivers/video/output 0x9fdc5a09 video_output_unregister +EXPORT_SYMBOL drivers/video/sis/sisfb 0x3037658e sis_malloc +EXPORT_SYMBOL drivers/video/sis/sisfb 0x454a3cf0 sis_free +EXPORT_SYMBOL drivers/video/svgalib 0x140fbc10 svga_get_tilemax +EXPORT_SYMBOL drivers/video/svgalib 0x17f3f471 svga_set_default_seq_regs +EXPORT_SYMBOL drivers/video/svgalib 0x1be6dc30 svga_set_textmode_vga_regs +EXPORT_SYMBOL drivers/video/svgalib 0x1e0e6dfa svga_get_caps +EXPORT_SYMBOL drivers/video/svgalib 0x31aadbc6 svga_tilefill +EXPORT_SYMBOL drivers/video/svgalib 0x3fffd419 svga_tilecursor +EXPORT_SYMBOL drivers/video/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/svgalib 0x4bfeac79 svga_tilecopy +EXPORT_SYMBOL drivers/video/svgalib 0x6e4adb1e svga_check_timings +EXPORT_SYMBOL drivers/video/svgalib 0x80f24d95 svga_wcrt_multi +EXPORT_SYMBOL drivers/video/svgalib 0x8bb09274 svga_tileblit +EXPORT_SYMBOL drivers/video/svgalib 0x8de63fb4 svga_set_timings +EXPORT_SYMBOL drivers/video/svgalib 0xd1429fca svga_wseq_multi +EXPORT_SYMBOL drivers/video/svgalib 0xd22ca511 svga_set_default_atc_regs +EXPORT_SYMBOL drivers/video/svgalib 0xe28d2a49 svga_set_default_gfx_regs +EXPORT_SYMBOL drivers/video/svgalib 0xef774f5d svga_compute_pll +EXPORT_SYMBOL drivers/video/svgalib 0xf2db5956 svga_match_format +EXPORT_SYMBOL drivers/video/svgalib 0xf7ea14f6 svga_settile +EXPORT_SYMBOL drivers/video/vgastate 0x686de290 restore_vga +EXPORT_SYMBOL drivers/video/vgastate 0xe7a2620e save_vga +EXPORT_SYMBOL drivers/vme/vme 0x00d7e722 vme_lm_count +EXPORT_SYMBOL drivers/vme/vme 0x072f901c vme_master_rmw +EXPORT_SYMBOL drivers/vme/vme 0x0b6e756e vme_master_request +EXPORT_SYMBOL drivers/vme/vme 0x0ec5babe vme_dma_free +EXPORT_SYMBOL drivers/vme/vme 0x11840e2e vme_dma_request +EXPORT_SYMBOL drivers/vme/vme 0x18dd496c vme_bus_type +EXPORT_SYMBOL drivers/vme/vme 0x2157965d vme_dma_pci_attribute +EXPORT_SYMBOL drivers/vme/vme 0x22e78031 vme_new_dma_list +EXPORT_SYMBOL drivers/vme/vme 0x2527a087 vme_slave_set +EXPORT_SYMBOL drivers/vme/vme 0x25707821 vme_unregister_bridge +EXPORT_SYMBOL drivers/vme/vme 0x39557ecb vme_register_driver +EXPORT_SYMBOL drivers/vme/vme 0x46649cd1 vme_lm_set +EXPORT_SYMBOL drivers/vme/vme 0x48b99a13 vme_lm_free +EXPORT_SYMBOL drivers/vme/vme 0x4baf35a7 vme_master_get +EXPORT_SYMBOL drivers/vme/vme 0x5348f489 vme_dma_list_exec +EXPORT_SYMBOL drivers/vme/vme 0x535c8308 vme_dma_pattern_attribute +EXPORT_SYMBOL drivers/vme/vme 0x583fd5d7 vme_slave_request +EXPORT_SYMBOL drivers/vme/vme 0x5aff4177 vme_lm_get +EXPORT_SYMBOL drivers/vme/vme 0x66227eae vme_alloc_consistent +EXPORT_SYMBOL drivers/vme/vme 0x6d9b60d7 vme_dma_list_add +EXPORT_SYMBOL drivers/vme/vme 0x6fc4da15 vme_dma_list_free +EXPORT_SYMBOL drivers/vme/vme 0x74018c50 vme_irq_generate +EXPORT_SYMBOL drivers/vme/vme 0x7cf35220 vme_master_free +EXPORT_SYMBOL drivers/vme/vme 0x7fde2edb vme_master_read +EXPORT_SYMBOL drivers/vme/vme 0x83d3de0a vme_unregister_driver +EXPORT_SYMBOL drivers/vme/vme 0x84a69fdc vme_slave_get +EXPORT_SYMBOL drivers/vme/vme 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL drivers/vme/vme 0x94b2590f vme_free_consistent +EXPORT_SYMBOL drivers/vme/vme 0x9aeb07e8 vme_lm_attach +EXPORT_SYMBOL drivers/vme/vme 0x9f1de4ac vme_lm_request +EXPORT_SYMBOL drivers/vme/vme 0xa31bdf07 vme_master_set +EXPORT_SYMBOL drivers/vme/vme 0xb50751d4 vme_irq_request +EXPORT_SYMBOL drivers/vme/vme 0xbcec2345 vme_slot_get +EXPORT_SYMBOL drivers/vme/vme 0xc3a818e6 vme_register_bridge +EXPORT_SYMBOL drivers/vme/vme 0xc44f8d8c vme_irq_handler +EXPORT_SYMBOL drivers/vme/vme 0xd797b9a5 vme_master_write +EXPORT_SYMBOL drivers/vme/vme 0xdff905e5 vme_slave_free +EXPORT_SYMBOL drivers/vme/vme 0xe693a6ce vme_get_size +EXPORT_SYMBOL drivers/vme/vme 0xefd1624a vme_dma_free_attribute +EXPORT_SYMBOL drivers/vme/vme 0xfa083248 vme_irq_free +EXPORT_SYMBOL drivers/vme/vme 0xfacd8e72 vme_dma_vme_attribute +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x622b883d w1_ds2760_write +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x89e57116 w1_ds2760_recall_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x8ef7f946 w1_ds2760_read +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xc6b8e9ad w1_ds2760_store_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xc136cfcf w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xd32ae889 w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x23aa7d63 w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0xeaccfc4d w1_ds2781_io +EXPORT_SYMBOL drivers/w1/wire 0x579c5238 w1_remove_master_device +EXPORT_SYMBOL drivers/w1/wire 0x6dac5e77 w1_unregister_family +EXPORT_SYMBOL drivers/w1/wire 0xa3f77897 w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0xaca1e867 w1_add_master_device +EXPORT_SYMBOL fs/btrfs/btrfs 0x27476846 ulist_reinit +EXPORT_SYMBOL fs/btrfs/btrfs 0x41e6a9d2 ulist_init +EXPORT_SYMBOL fs/btrfs/btrfs 0x7e2ee765 ulist_free +EXPORT_SYMBOL fs/btrfs/btrfs 0xa2eec2e8 ulist_fini +EXPORT_SYMBOL fs/btrfs/btrfs 0xb1320bc8 ulist_add +EXPORT_SYMBOL fs/btrfs/btrfs 0xb42289d2 ulist_alloc +EXPORT_SYMBOL fs/btrfs/btrfs 0xc2c745db ulist_next +EXPORT_SYMBOL fs/configfs/configfs 0x219426a2 configfs_depend_item +EXPORT_SYMBOL fs/configfs/configfs 0x4b00a430 config_item_put +EXPORT_SYMBOL fs/configfs/configfs 0x6a3544ae config_group_find_item +EXPORT_SYMBOL fs/configfs/configfs 0x70f90bf7 config_item_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0x87a4fbca config_group_init +EXPORT_SYMBOL fs/configfs/configfs 0x8825aa0c configfs_unregister_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0x9332f112 configfs_register_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0xa34d8996 config_group_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0xb5aa91af config_item_set_name +EXPORT_SYMBOL fs/configfs/configfs 0xe0018a88 config_item_init +EXPORT_SYMBOL fs/configfs/configfs 0xe7ed238e configfs_undepend_item +EXPORT_SYMBOL fs/configfs/configfs 0xfd49c23e config_item_get +EXPORT_SYMBOL fs/exofs/libore 0x28806871 ore_verify_layout +EXPORT_SYMBOL fs/exofs/libore 0x306092e7 ore_get_io_state +EXPORT_SYMBOL fs/exofs/libore 0x4527e170 ore_calc_stripe_info +EXPORT_SYMBOL fs/exofs/libore 0x4a8c1b52 ore_remove +EXPORT_SYMBOL fs/exofs/libore 0x507ccaeb ore_truncate +EXPORT_SYMBOL fs/exofs/libore 0x70def861 ore_get_rw_state +EXPORT_SYMBOL fs/exofs/libore 0x83174f1d ore_put_io_state +EXPORT_SYMBOL fs/exofs/libore 0xa3d2a634 g_attr_logical_length +EXPORT_SYMBOL fs/exofs/libore 0xb2be5459 ore_check_io +EXPORT_SYMBOL fs/exofs/libore 0xbf22494d extract_attr_from_ios +EXPORT_SYMBOL fs/exofs/libore 0xd637899b ore_create +EXPORT_SYMBOL fs/exofs/libore 0xefa2e45d ore_write +EXPORT_SYMBOL fs/exofs/libore 0xf457a9f0 ore_read +EXPORT_SYMBOL fs/fscache/fscache 0x0733080b __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x096741ec fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0x1610a8a4 __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0x1940fd1b __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x1ba6ba01 __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x25631afd fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x32588072 fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0x32f15a9d __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x34963650 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0x43d2c084 __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x556b945a fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x5cc61220 __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0x633ca1c4 __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x6553fd0f __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x70a7f534 fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0x72f80859 fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0x7342e0d7 __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x77c7c04a fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0x7d4aca21 fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0x920d110e __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x9284b064 __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x94f8d892 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x962e19ac fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0x9a746bd9 fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0xc554584a __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0xc84a898e fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0xce25d70c __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xd0037af9 __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0xd2dae759 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0xda82e07c __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0xe5fe96ab fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0xefcd7f15 fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0xf29ae370 fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0xf3287d8d __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0xf66a8e4f __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0xf7f15802 fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0xf7fbc1ad fscache_enqueue_operation +EXPORT_SYMBOL fs/nfsd/nfsd 0x35e33c1e nfs4_acl_write_who +EXPORT_SYMBOL fs/nfsd/nfsd 0x5a157ae4 nfs4_acl_get_whotype +EXPORT_SYMBOL fs/nfsd/nfsd 0xa0f4b528 nfs4_acl_posix_to_nfsv4 +EXPORT_SYMBOL fs/nfsd/nfsd 0xb25b2957 nfs4_acl_nfsv4_to_posix +EXPORT_SYMBOL fs/nfsd/nfsd 0xe13337f0 nfs4_acl_new +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x609ff607 qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0x68f8a202 qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xcb79c696 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xd7f9de1d qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xfc3874d5 qtree_delete_dquot +EXPORT_SYMBOL lib/cordic 0x434bfd07 cordic_calc_iq +EXPORT_SYMBOL lib/crc-ccitt 0x3771b461 crc_ccitt +EXPORT_SYMBOL lib/crc-ccitt 0x75811312 crc_ccitt_table +EXPORT_SYMBOL lib/crc-itu-t 0xd29b009f crc_itu_t_table +EXPORT_SYMBOL lib/crc-itu-t 0xf5b4a948 crc_itu_t +EXPORT_SYMBOL lib/crc7 0xa7587646 crc7 +EXPORT_SYMBOL lib/crc7 0xd80c3603 crc7_syndrome_table +EXPORT_SYMBOL lib/crc8 0x41248eaf crc8 +EXPORT_SYMBOL lib/crc8 0xab9ad613 crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xd4534d80 crc8_populate_msb +EXPORT_SYMBOL lib/libcrc32c 0x27000b29 crc32c +EXPORT_SYMBOL lib/lru_cache 0x08b05f73 lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0x2686c90f lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0x46fbdfab lc_find +EXPORT_SYMBOL lib/lru_cache 0x5817613d lc_del +EXPORT_SYMBOL lib/lru_cache 0x79fae9f7 lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x85cb3257 lc_reset +EXPORT_SYMBOL lib/lru_cache 0x906dc1af lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x9da3f346 lc_set +EXPORT_SYMBOL lib/lru_cache 0xaf36660e lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0xbb720813 lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xc418dc0b lc_is_used +EXPORT_SYMBOL lib/lru_cache 0xc63c4ce8 lc_committed +EXPORT_SYMBOL lib/lru_cache 0xd91d1d0a lc_create +EXPORT_SYMBOL lib/lru_cache 0xda2a1a5f lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0xe4fd51f2 lc_put +EXPORT_SYMBOL lib/lru_cache 0xe56bf09b lc_get +EXPORT_SYMBOL lib/lru_cache 0xf1edcc81 lc_destroy +EXPORT_SYMBOL lib/lz4/lz4_compress 0xcbc5d521 lz4_compress +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x26c3aa22 lz4hc_compress +EXPORT_SYMBOL lib/raid6/raid6_pq 0x0bd662f6 raid6_gfmul +EXPORT_SYMBOL lib/raid6/raid6_pq 0x15fe0cd3 raid6_gfexp +EXPORT_SYMBOL lib/raid6/raid6_pq 0x5ba93f9d raid6_gfinv +EXPORT_SYMBOL lib/raid6/raid6_pq 0xb0d904b7 raid6_empty_zero_page +EXPORT_SYMBOL lib/raid6/raid6_pq 0xce45a6f1 raid6_gfexi +EXPORT_SYMBOL lib/raid6/raid6_pq 0xd9e91f83 raid6_vgfmul +EXPORT_SYMBOL net/802/p8022 0x9d0baf12 unregister_8022_client +EXPORT_SYMBOL net/802/p8022 0xe0f34c03 register_8022_client +EXPORT_SYMBOL net/802/p8023 0x46b1c432 destroy_8023_client +EXPORT_SYMBOL net/802/p8023 0x7831897b make_8023_client +EXPORT_SYMBOL net/802/psnap 0x7488e96f register_snap_client +EXPORT_SYMBOL net/802/psnap 0x9b048aec unregister_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x098be7bd p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x09fdf0ea p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0x0b410d52 p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x1a37c7e9 p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x1a4e1ccb p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x204b17ce p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0x238f534f p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0x263e9675 p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0x26988b10 p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x272670d2 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x31c5b9b9 p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x34e1d5b0 p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x35d1e27e p9_idpool_get +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x3db1bc6d p9_payload_gup +EXPORT_SYMBOL net/9p/9pnet 0x3f656025 p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0x44d2c2c0 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0x47ffdd14 p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0x4f331379 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0x50070c09 p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0x567e28fd p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0x6da2f557 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0x6f2c821e v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x7498aa6e v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x7558ed7f p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x75dc4e6b p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0x8ffab595 p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0x95064422 p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0x977a0030 p9_nr_pages +EXPORT_SYMBOL net/9p/9pnet 0x9b29249d v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0xa37345a9 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0xa81b7db1 p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0xb51bd54a v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0xb74eb5d7 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0xb812a8a1 p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0xbd838d47 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0xbef614f6 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0xc5db54a9 p9_idpool_destroy +EXPORT_SYMBOL net/9p/9pnet 0xd7f842fc p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0xd874544a p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xe9b9428f p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0xf1f08cb7 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0xf30abcc5 p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0xf319d8fb p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0xf3ad6064 p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0xf484d17e p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0xf4a111d8 p9_idpool_create +EXPORT_SYMBOL net/9p/9pnet 0xf84f2022 p9_idpool_put +EXPORT_SYMBOL net/9p/9pnet 0xfd40c79d p9_idpool_check +EXPORT_SYMBOL net/9p/9pnet 0xfeb6c6d3 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0xff473e03 p9_client_readlink +EXPORT_SYMBOL net/appletalk/appletalk 0x15ebed8b atrtr_get_dev +EXPORT_SYMBOL net/appletalk/appletalk 0x4ab09142 aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0xcfd0e5ca alloc_ltalkdev +EXPORT_SYMBOL net/appletalk/appletalk 0xf20f1be5 atalk_find_dev_addr +EXPORT_SYMBOL net/atm/atm 0x123ed871 atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0x1914ba84 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x2f1aa89d atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x534721f2 atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x62c6ac45 vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0x81816512 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xa50ead95 vcc_release_async +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xca3fc0c6 atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0xd772ca5d atm_charge +EXPORT_SYMBOL net/atm/atm 0xd8b792c8 deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0xecb83cfd vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0xf1774b53 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/atm/atm 0xf4e53f20 atm_dev_register +EXPORT_SYMBOL net/atm/atm 0xfd0edd48 atm_alloc_charge +EXPORT_SYMBOL net/ax25/ax25 0x026c1368 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x02703854 ax25_rebuild_header +EXPORT_SYMBOL net/ax25/ax25 0x1576fe6b ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0x1c5787b9 ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x3afee63e ax25_findbyuid +EXPORT_SYMBOL net/ax25/ax25 0x41d56839 ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x5e502cdc ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0x6f09f52b ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0xb70c1e02 ax25_hard_header +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xce02c97e ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xd860bad5 ax25_linkfail_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0637287a hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0x158f0e58 __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x159ae352 bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0x22ba1da6 hci_recv_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x283a8707 __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x49bdc7c4 l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4ae4ac72 hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x53a80b96 bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x53d25949 bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x59f068a7 l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5cc6bf94 bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6b59852c bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6d565884 bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6dc08b82 bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7b369a04 hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7c640527 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x91c9a325 bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x96a31b6c hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9c846c5d bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa36e5879 hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa549d38a l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa5a791fa bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xaa47d9f0 hci_recv_stream_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0xac3a5e06 l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb61a0c3b bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb8dc5577 hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0xbaddf36d bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc069f3f2 hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcc1fb551 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0xce9bd179 hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcef29876 hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd09d2e4e bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd17dede9 hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdce5bab1 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe26280ba hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe4429196 bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe6e0c52d hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe8b9d7da bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf4a1e6ff l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xfadca637 bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0xfd7234ab bt_sock_wait_state +EXPORT_SYMBOL net/bridge/bridge 0x6e56f93b br_should_route_hook +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x2453ec27 ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x7cd4f31c ebt_do_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xb1a286c0 ebt_register_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +EXPORT_SYMBOL net/caif/caif 0x2a09f713 cfpkt_fromnative +EXPORT_SYMBOL net/caif/caif 0x329dbd06 cfpkt_info +EXPORT_SYMBOL net/caif/caif 0x38701a7c cfcnfg_del_phy_layer +EXPORT_SYMBOL net/caif/caif 0x4182aaf7 caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0x4a237e57 cfpkt_tonative +EXPORT_SYMBOL net/caif/caif 0x6a44fc70 cfpkt_extr_head +EXPORT_SYMBOL net/caif/caif 0x78181485 caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0x7c7ef00e caif_connect_client +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x8ee376e9 get_cfcnfg +EXPORT_SYMBOL net/caif/caif 0x9269fcea cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x966d7de2 cfpkt_add_head +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/can/can 0x5d282a8f can_ioctl +EXPORT_SYMBOL net/can/can 0x80253c02 can_send +EXPORT_SYMBOL net/can/can 0x841e95a9 can_proto_unregister +EXPORT_SYMBOL net/can/can 0xe695990c can_rx_unregister +EXPORT_SYMBOL net/can/can 0xe7147a46 can_proto_register +EXPORT_SYMBOL net/can/can 0xf703ece2 can_rx_register +EXPORT_SYMBOL net/ceph/libceph 0x0066689c ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0x017f3314 ceph_monc_create_snapid +EXPORT_SYMBOL net/ceph/libceph 0x09290ab3 ceph_debugfs_init +EXPORT_SYMBOL net/ceph/libceph 0x0d3e8bd1 ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0x0fa6defa osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0x10940306 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0x1475bf0d ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x14a05302 ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x1533944f ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0x197effcb ceph_osdc_release_request +EXPORT_SYMBOL net/ceph/libceph 0x1b046266 ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0x1e8f9147 ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x20424126 ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0x20d151cb ceph_osdc_setup +EXPORT_SYMBOL net/ceph/libceph 0x228d6dcb osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x2421116d osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x28181e57 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0x2aad5dd4 __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x2c7f92ea ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x2f5ba13b ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x2fe745d2 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0x3158173e ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x32a5155f ceph_osdc_writepages +EXPORT_SYMBOL net/ceph/libceph 0x32b36846 ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0x33ef3a88 ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x36dc2dec osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0x3abec91f ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x3df0ec7c ceph_calc_ceph_pg +EXPORT_SYMBOL net/ceph/libceph 0x3f688151 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x4205ffd7 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0x42d2d36a ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x43c8d341 ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x43e458f6 ceph_file_part +EXPORT_SYMBOL net/ceph/libceph 0x43efd647 ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x47537581 ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0x4882a66e ceph_osdc_readpages +EXPORT_SYMBOL net/ceph/libceph 0x4a60fdba osd_req_op_cls_response_data +EXPORT_SYMBOL net/ceph/libceph 0x4b336776 ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0x517cd235 ceph_copy_page_vector_to_user +EXPORT_SYMBOL net/ceph/libceph 0x5379cea3 ceph_caps_for_mode +EXPORT_SYMBOL net/ceph/libceph 0x5663ea18 osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x58dc502f ceph_osdc_set_request_linger +EXPORT_SYMBOL net/ceph/libceph 0x5fe4b2fa ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0x61c546ef ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x68bacdce ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0x6b2e3bcd ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x6bd3a936 ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0x6c5d5ac1 ceph_calc_pg_primary +EXPORT_SYMBOL net/ceph/libceph 0x6ca84313 osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x6d2d06a1 ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0x6ed41be2 ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0x6f1b9a53 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x76725ff1 ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0x77692acb ceph_msg_last_put +EXPORT_SYMBOL net/ceph/libceph 0x79cd9a45 ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x7f1a50fe ceph_osdc_create_event +EXPORT_SYMBOL net/ceph/libceph 0x822cfce7 ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x887e6c3f osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x8a79d976 ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x8daf0f97 ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0x93d22557 ceph_client_id +EXPORT_SYMBOL net/ceph/libceph 0x94c26b29 ceph_osdc_put_event +EXPORT_SYMBOL net/ceph/libceph 0x96e20504 ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0x97245e57 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0x99e36571 ceph_osdc_cleanup +EXPORT_SYMBOL net/ceph/libceph 0x9f534f4d ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xa0ca4198 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0xa3a22a35 ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xa3a99f04 ceph_monc_got_mdsmap +EXPORT_SYMBOL net/ceph/libceph 0xa40bd703 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0xa8a2bafd ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0xaa8e53e1 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xab7070c7 ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xae15dbb3 osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xae3515ba ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb15ba0e5 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0xb1874714 ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0xb531f733 osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb6081d6d ceph_msgr_exit +EXPORT_SYMBOL net/ceph/libceph 0xc03d6c1b ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0xc4a80955 ceph_debugfs_cleanup +EXPORT_SYMBOL net/ceph/libceph 0xc55de604 ceph_parse_options +EXPORT_SYMBOL net/ceph/libceph 0xc9f82b38 ceph_msgr_init +EXPORT_SYMBOL net/ceph/libceph 0xcaac1ad0 ceph_osdc_unregister_linger_request +EXPORT_SYMBOL net/ceph/libceph 0xcb50a624 ceph_parse_ips +EXPORT_SYMBOL net/ceph/libceph 0xd2c107bb ceph_flags_to_mode +EXPORT_SYMBOL net/ceph/libceph 0xdf0e70dc ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0xe2dc1762 ceph_get_direct_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xe65547cf osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0xe82c9c32 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0xeaaa013e ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xee51f8fb ceph_osdc_cancel_event +EXPORT_SYMBOL net/ceph/libceph 0xf0df7413 osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xf433f7cf ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0xf505a0b8 ceph_osdc_build_request +EXPORT_SYMBOL net/ceph/libceph 0xf8d26276 osd_req_op_watch_init +EXPORT_SYMBOL net/ceph/libceph 0xfe2694e4 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0xff678124 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0xfffe9446 ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x9b0a86f7 dccp_syn_ack_timeout +EXPORT_SYMBOL net/ieee802154/ieee802154 0x0f40e157 ieee802154_nl_start_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x38b7743d ieee802154_nl_disassoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x3af9346f ieee802154_nl_scan_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x4aa907bf wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0x5705b6af ieee802154_nl_beacon_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x6511d591 wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0x6de5e557 wpan_phy_alloc +EXPORT_SYMBOL net/ieee802154/ieee802154 0xafedd5c0 wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0xc65df58a ieee802154_nl_assoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0xcd70c376 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0xd59234a8 ieee802154_nl_disassoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0xdf130a10 wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0xf106bb9f ieee802154_nl_assoc_confirm +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x6f31eb87 arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x6f8aef73 arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xff7f3878 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xb12d0f36 ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xe7fdec2c ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xf951895f ipt_do_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x2d05560e xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0xf2a856c2 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x40bf1ccd ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x909caa84 ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x596ec85c ip6t_register_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x985db782 ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xcee24517 ip6t_do_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x4175bdee xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/tunnel6 0xe3e87e77 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xa8c4b4e7 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xaa634195 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x1dc30183 ircomm_control_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x32cf10f4 ircomm_connect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x40bcc951 ircomm_data_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x81023de6 ircomm_open +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x92b06afc ircomm_connect_response +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x9d23c08b ircomm_disconnect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xce560ad4 ircomm_flow_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xd89ebeea ircomm_close +EXPORT_SYMBOL net/irda/irda 0x06a3ee58 irias_new_integer_value +EXPORT_SYMBOL net/irda/irda 0x07d3647c irlmp_register_service +EXPORT_SYMBOL net/irda/irda 0x17a491c5 irias_add_octseq_attrib +EXPORT_SYMBOL net/irda/irda 0x1c3854f8 irda_device_set_media_busy +EXPORT_SYMBOL net/irda/irda 0x2036ad06 irda_param_insert +EXPORT_SYMBOL net/irda/irda 0x26f60c33 async_unwrap_char +EXPORT_SYMBOL net/irda/irda 0x33cbe2c6 proc_irda +EXPORT_SYMBOL net/irda/irda 0x35051f95 irda_notify_init +EXPORT_SYMBOL net/irda/irda 0x36cad55b hashbin_remove_this +EXPORT_SYMBOL net/irda/irda 0x37791344 hashbin_get_first +EXPORT_SYMBOL net/irda/irda 0x3a819edb irttp_connect_request +EXPORT_SYMBOL net/irda/irda 0x448b8aaa irda_qos_bits_to_value +EXPORT_SYMBOL net/irda/irda 0x45cb1772 iriap_close +EXPORT_SYMBOL net/irda/irda 0x46c1c4a2 irlmp_unregister_service +EXPORT_SYMBOL net/irda/irda 0x5c0580c1 irttp_flow_request +EXPORT_SYMBOL net/irda/irda 0x6492e28c hashbin_get_next +EXPORT_SYMBOL net/irda/irda 0x6a2f695f iriap_open +EXPORT_SYMBOL net/irda/irda 0x6a849915 irttp_dup +EXPORT_SYMBOL net/irda/irda 0x6b043eba irda_init_max_qos_capabilies +EXPORT_SYMBOL net/irda/irda 0x6b76aa70 hashbin_delete +EXPORT_SYMBOL net/irda/irda 0x6e9e0902 alloc_irdadev +EXPORT_SYMBOL net/irda/irda 0x7042bc54 irlmp_register_client +EXPORT_SYMBOL net/irda/irda 0x731cec71 hashbin_insert +EXPORT_SYMBOL net/irda/irda 0x763e54a4 irlmp_unregister_client +EXPORT_SYMBOL net/irda/irda 0x7957f728 irlmp_update_client +EXPORT_SYMBOL net/irda/irda 0x79c711c3 irttp_data_request +EXPORT_SYMBOL net/irda/irda 0x7de5dfd5 irlmp_connect_response +EXPORT_SYMBOL net/irda/irda 0x7e67ca6e irias_new_object +EXPORT_SYMBOL net/irda/irda 0x7fb65d94 async_wrap_skb +EXPORT_SYMBOL net/irda/irda 0x86dcaf69 irttp_close_tsap +EXPORT_SYMBOL net/irda/irda 0x871bc749 irlmp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0x8982c8d9 irias_delete_object +EXPORT_SYMBOL net/irda/irda 0x8a44dd5e hashbin_new +EXPORT_SYMBOL net/irda/irda 0x8e94bc49 irlmp_open_lsap +EXPORT_SYMBOL net/irda/irda 0x90ddb6bd hashbin_remove +EXPORT_SYMBOL net/irda/irda 0x91815586 irda_param_pack +EXPORT_SYMBOL net/irda/irda 0x9405343c iriap_getvaluebyclass_request +EXPORT_SYMBOL net/irda/irda 0x95950bca irttp_udata_request +EXPORT_SYMBOL net/irda/irda 0x98348c1d irlmp_connect_request +EXPORT_SYMBOL net/irda/irda 0x993ad14b irda_param_extract_all +EXPORT_SYMBOL net/irda/irda 0x9ffda243 irias_add_string_attrib +EXPORT_SYMBOL net/irda/irda 0xaa0729f7 irlap_open +EXPORT_SYMBOL net/irda/irda 0xb3c13d7f irias_add_integer_attrib +EXPORT_SYMBOL net/irda/irda 0xb9394173 irias_delete_value +EXPORT_SYMBOL net/irda/irda 0xbcd3ef13 irias_object_change_attribute +EXPORT_SYMBOL net/irda/irda 0xbe40ace9 irlmp_discovery_request +EXPORT_SYMBOL net/irda/irda 0xbf7dd554 hashbin_find +EXPORT_SYMBOL net/irda/irda 0xbfa7c08d hashbin_lock_find +EXPORT_SYMBOL net/irda/irda 0xc477368d irias_find_object +EXPORT_SYMBOL net/irda/irda 0xd57945f5 irlmp_close_lsap +EXPORT_SYMBOL net/irda/irda 0xd8896515 irttp_open_tsap +EXPORT_SYMBOL net/irda/irda 0xde4c6b3c irlmp_service_to_hint +EXPORT_SYMBOL net/irda/irda 0xe7c78b5b irlmp_data_request +EXPORT_SYMBOL net/irda/irda 0xedd521c2 irlmp_get_discoveries +EXPORT_SYMBOL net/irda/irda 0xee70ee09 irttp_connect_response +EXPORT_SYMBOL net/irda/irda 0xef07422c irttp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0xf199cba4 irias_insert_object +EXPORT_SYMBOL net/irda/irda 0xfb5d64c8 irlap_close +EXPORT_SYMBOL net/l2tp/l2tp_core 0x4c11b19e l2tp_recv_common +EXPORT_SYMBOL net/lapb/lapb 0x15e10a52 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0x263943c3 lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0x38842a1d lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0x3afbd6a2 lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0x5e043769 lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0x5e666ccd lapb_unregister +EXPORT_SYMBOL net/lapb/lapb 0x762e9529 lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0xf9403917 lapb_register +EXPORT_SYMBOL net/llc/llc 0x1a9e0ecb llc_add_pack +EXPORT_SYMBOL net/llc/llc 0x1e9e99fd llc_sap_list_lock +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x4e72b188 llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x56805860 llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0x71ce4ac1 llc_sap_open +EXPORT_SYMBOL net/llc/llc 0xb7379af6 llc_sap_find +EXPORT_SYMBOL net/llc/llc 0xcda14e0d llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0xdb6e7d9e llc_sap_close +EXPORT_SYMBOL net/mac80211/mac80211 0x009376f2 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x0586e325 ieee80211_rx +EXPORT_SYMBOL net/mac80211/mac80211 0x09563843 ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x0b223fc8 ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x0e28b788 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x181673b2 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x1b42a25c ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x1e3ec91e ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x21a2ae71 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0x28f49cb5 ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0x2a9718e2 ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0x2c5e9295 ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x317da478 rate_control_send_low +EXPORT_SYMBOL net/mac80211/mac80211 0x355d0e31 ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x380e216c ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0x3af0ac8b ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0x40c1a041 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x41b020dc ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0x44327001 ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0x4507d955 ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x49f56cbc ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x5135098d ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x52fb48bb __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x531a2e3d ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x545951cd ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x54a5ad50 ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0x59381765 ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0x5adad621 ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0x5c28cca5 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x5c66f85f ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x63ac3065 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x6ac59eaa ieee80211_alloc_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x6b2c0892 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0x6d5935df ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x728a3459 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x7424a329 ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x744e477d ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x78657d66 ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0x7e8bfc6d rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x8087c041 ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x85a116f2 ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x8ef11b85 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x9b17680b ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0x9c5e6334 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0xa1fc36c4 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xa719951d ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0xaa157485 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0xb03a42c6 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xbb038f01 ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0xbb6cd33b ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xbf0d5e6b ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0xbfc7cc7b ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0xc7e9782e ieee80211_get_key_tx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xc8902d1a ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xcccafe99 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xce292f88 __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xd86f760a ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0xddb47d52 ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xddc1552c ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0xdf0bc63c ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xe18a7459 ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0xe35c4ecd wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xe4434fde ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xe5589806 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xe8db37bc __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xe9959e8d ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xebe93099 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0xf207b566 ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xf395de03 ieee80211_aes_cmac_calculate_k1_k2 +EXPORT_SYMBOL net/mac80211/mac80211 0xf5bb129f ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0xfb06c38e __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xfc2128cb ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0xfc85134a ieee80211_restart_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x361e7194 ieee802154_alloc_device +EXPORT_SYMBOL net/mac802154/mac802154 0x4e38a4d1 ieee802154_free_device +EXPORT_SYMBOL net/mac802154/mac802154 0x57785ddc ieee802154_unregister_device +EXPORT_SYMBOL net/mac802154/mac802154 0x97850d87 ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0xfae9987b ieee802154_register_device +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x0bf104b8 register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x0d0b18df ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x216ff690 register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x277835e6 ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x33250461 ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x4828568d ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x4bf71b8d register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x5329bfd2 ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x792f253a ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x8218afe2 ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x8cd7f6b2 unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xb87af991 unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc23ea3f3 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xdd505b2b ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x819d89db __nf_ct_ext_add_length +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xa25d7084 nf_conntrack_untracked +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xc2f1f286 __nf_ct_ext_destroy +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0x827cc6a1 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_conntrack_proto_gre 0x6757098b nf_ct_gre_keymap_flush +EXPORT_SYMBOL net/netfilter/nf_nat 0x00f5120f __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x1bb23cc0 nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0x222f2a0b nf_nat_used_tuple +EXPORT_SYMBOL net/netfilter/nf_nat 0x2b47f768 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x90d66ebf nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0xd177caeb nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/x_tables 0x08c473b7 xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0x1cfc3824 xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0x34b19408 xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x3a66213e xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x40e8803b xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xb28f5ef1 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xd2a088bd xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0xe1c59d0a xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0xed5b6717 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0xf731b06a xt_find_target +EXPORT_SYMBOL net/netfilter/x_tables 0xf781e245 xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0xff616d1c xt_register_match +EXPORT_SYMBOL net/nfc/hci/hci 0x190a09c9 nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x3572a1fe nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0x40773688 nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x43028a27 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x4af21df8 nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0x4f4b6803 nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0x5b61f4a6 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0x72e0b27a nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0x87711592 nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0x8c9da05b nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0x9a806087 nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0xa44a93f1 nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0xaf8c827d nfc_hci_send_response +EXPORT_SYMBOL net/nfc/hci/hci 0xbaed607d nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0xbca0b4fd nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xbfb489fc nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xc5f9494a nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0xd25bbfbf nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xdf3964a8 nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0xed6a823f nfc_hci_set_param +EXPORT_SYMBOL net/nfc/nci/nci 0x045161d8 nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x22cdadca nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0x3dd3dd65 nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0x42c510f9 nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x4e8b381d nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nfc 0x207a5df0 nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0x219384d7 nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0x29762469 nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x2b091ac8 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0x4f8b012c nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0x5bf86028 nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0x5f66ac7d nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0x60b6c2aa nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x69a8c086 nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0x75059e2b nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x7ce2f61c nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0x7d3e09dd nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0x85ecb1ac nfc_class +EXPORT_SYMBOL net/nfc/nfc 0x98d88562 nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0xa6e4f397 nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0xbd423193 nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0xd73a2a1a nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0xda5b01b8 nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0xec5c62d4 nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0xff46f72d nfc_add_se +EXPORT_SYMBOL net/nfc/nfc_digital 0x30b1837a nfc_digital_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x69c3cbd1 nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x6a013a15 nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x9796a6f0 nfc_digital_free_device +EXPORT_SYMBOL net/phonet/phonet 0x0143c39f phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0x0a6fd3b4 pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0x1fc44691 phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0x22938ab2 pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0x456fbe77 pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0x4eb62026 phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0x548bf15b pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0x74d17acf phonet_proto_register +EXPORT_SYMBOL net/rds/rds 0x5031b8c5 rds_str_array +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x0dbe70ac rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x13da2406 rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x22729c13 rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x28adef74 rxrpc_kernel_get_abort_code +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x2bb53961 rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x3a59a80d rxrpc_kernel_reject_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x78b5b399 rxrpc_kernel_is_data_last +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x8fcf657d rxrpc_kernel_get_error_number +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x9d6e633b rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xa4939a14 rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xba80ba09 rxrpc_kernel_data_delivered +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xd39bf1d1 rxrpc_kernel_intercept_rx_messages +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xd9bd6108 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xe559be7b rxrpc_kernel_free_skb +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xf16eb108 rxrpc_kernel_accept_call +EXPORT_SYMBOL net/sctp/sctp 0xae17fca7 sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x8f770a1a gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x97e3805b gss_mech_get +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xde468e61 gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/sunrpc 0x9ed8a9d2 svc_pool_stats_open +EXPORT_SYMBOL net/wimax/wimax 0x0071693d wimax_reset +EXPORT_SYMBOL net/wimax/wimax 0x35f125a8 wimax_rfkill +EXPORT_SYMBOL net/wireless/cfg80211 0x01da61bb cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x0740d5f1 cfg80211_report_obss_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x09c64fbd ieee80211_frequency_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x0b166c03 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0x0c1d1fe1 cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0x0d8cb9f6 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x16b503b1 cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x19e03378 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0x251ba193 cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x2c23bdc1 cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0x34f93935 ieee80211_data_from_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0x36e547d1 cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x38192e42 cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x3a2c5dfc wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0x3b090ff7 cfg80211_rx_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x406a8302 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x435dbd76 wiphy_new +EXPORT_SYMBOL net/wireless/cfg80211 0x4c3b5878 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x4c40b2fb ieee80211_bss_get_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x4d6ad91e cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x54532da2 cfg80211_inform_bss_width_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x549ae50f ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x5a32a3b1 cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0x5c20c0c4 cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x5f357329 cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0x630b074c cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0x648a43a3 cfg80211_del_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x65864aea cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x69b4da10 wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0x6b667f93 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0x6c2fa3ec wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x6c928040 cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0x6d6cb9ad ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x72eaebad cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7fe1a403 cfg80211_find_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x828ec161 wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x8633341a cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x871a511f cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x897419f0 cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x8ab011cb cfg80211_inform_bss_width +EXPORT_SYMBOL net/wireless/cfg80211 0x8c734bbd cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x9349992b cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x9495b386 cfg80211_roamed_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x94a8f7aa cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0x982e6b6d ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0x9932150a wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x9f7dc4ac freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0xa0ea658e cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0xa11bccc1 cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xa1425906 ieee80211_channel_to_frequency +EXPORT_SYMBOL net/wireless/cfg80211 0xa1836236 wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0xa197b1ff ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xa6ac455a cfg80211_connect_result +EXPORT_SYMBOL net/wireless/cfg80211 0xa903c12d cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xaec05d5c ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xb2cf1036 cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xb64d1334 cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xbe9c75ab cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0xc1574347 ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0xc15c8611 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0xc63f1b81 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0xce7b431c cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0xcf618a57 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0xd294775c cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0xd6b694b8 cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xdbd4f03a cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xde6fcbe8 cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0xdfeae7f7 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0xe14c78e6 ieee80211_data_to_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0xe1711a60 cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xe60edf62 cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xe8b02bc6 cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0xe9274827 cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0xec8dd6ca cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0xee42db3c cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xeecf265c regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0xf63ef835 cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0xfc59a42c cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0xfd65cd96 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0xfdba9b06 cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xfe011f99 __ieee80211_get_channel +EXPORT_SYMBOL net/wireless/cfg80211 0xfed4d591 cfg80211_find_vendor_ie +EXPORT_SYMBOL net/wireless/lib80211 0x2d0f99e5 print_ssid +EXPORT_SYMBOL net/wireless/lib80211 0x5ef0c043 lib80211_get_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x68be2488 lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0x70bd046f lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0x9525dda9 lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0xe8a6f790 lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xec59718b lib80211_register_crypto_ops +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7601e68a snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x78a1dc53 snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x88b5935b snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xc566d59e snd_seq_kernel_client_enqueue_blocking +EXPORT_SYMBOL sound/core/seq/snd-seq 0xcac0a3be snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x0773365f snd_seq_device_new +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x3a57f235 snd_seq_autoload_unlock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x4044a1b2 snd_seq_device_register_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xb90668b2 snd_seq_autoload_lock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xc622fb29 snd_seq_device_unregister_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf0a1fdb3 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x127b30fb snd_midi_event_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x1cdc0812 snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x59eb74ae snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x8102ed2f snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xb11ba32d snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xb2c7f684 snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xea0e5748 snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xed42580b snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0x0443513f snd_virmidi_new +EXPORT_SYMBOL sound/core/snd-hwdep 0xe499570b snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0x1ef563b6 snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0x201ec523 snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0x2822e3af snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0x30c368ee snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x4a216719 snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-rawmidi 0x5dc6d1c2 snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0x781af04e snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0x83bfe670 snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x8c53c373 snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-rawmidi 0xb5b70403 snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0xb89df848 snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0xe65b7332 snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-rawmidi 0xe703cf1a snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0xef1447cb snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0xfe87a211 snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0xfeb3116f snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0xffd54e63 snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x775d130b snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x235fe5fc snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x54d438b3 snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x7421ea1f snd_opl3_reset +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x797474c9 snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xb27b8c7a snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xb84f4b5c snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xbe76cf07 snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xd3a6917f snd_opl3_create +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xe27298e0 snd_opl3_init +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x0018e0d3 snd_vx_dsp_boot +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x6d5d9168 snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x95111147 snd_vx_resume +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x9e44d139 snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xa187ec76 snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xa5deaf94 snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xb7261cd5 snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xd6ade92f snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xe469b788 snd_vx_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x04f54c6b amdtp_out_stream_start +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x14d768e6 amdtp_out_stream_stop +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x256e7afc amdtp_out_stream_set_parameters +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x2d257c3b amdtp_out_stream_pcm_pointer +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x3cb1cdb3 amdtp_out_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x50f9e13e amdtp_out_stream_set_pcm_format +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x66469f11 cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x842fedf7 iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x8c509474 iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x904cbf9c snd_fw_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x96804fa2 amdtp_out_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x9fe1f621 fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa5286617 amdtp_out_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa79b869b amdtp_out_stream_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xbd5566b6 fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xbecdd2fa cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xbf6e58d4 amdtp_out_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc4250728 cmp_connection_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc9340c98 cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xcde6657c amdtp_out_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xcea7f1a4 fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd1e995eb cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xdae5d633 fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe8c35ff5 fw_iso_resources_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf4153d2f fcp_avc_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf45c2332 fw_iso_resources_update +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x305b08c1 snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x4e246dd0 snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x8ab0901b snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x92de7f3e snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x99564c54 snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xdcc44fbd snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x88aae78d snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xa7866e26 snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xb2567eac snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xee0fa1d8 snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x960e91c3 snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0xbc4bbad7 snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x1d03722c snd_cs8427_create +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x5c776242 snd_cs8427_iec958_active +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x8ad84430 snd_cs8427_iec958_build +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x8bf922d3 snd_cs8427_reg_write +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xcd3399d7 snd_cs8427_iec958_pcm +EXPORT_SYMBOL sound/i2c/snd-i2c 0x55cbb1cf snd_i2c_probeaddr +EXPORT_SYMBOL sound/i2c/snd-i2c 0x7ce992ba snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x86e8379e snd_i2c_bus_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0xa169d020 snd_i2c_sendbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0xbce26cdd snd_i2c_device_free +EXPORT_SYMBOL sound/i2c/snd-i2c 0xd6c1b0b0 snd_i2c_readbytes +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x003dc615 snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x03ab641d snd_ac97_resume +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x24925c60 snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x3bb2c891 snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x3f30b31b snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x47dc127c snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x5ae7e850 snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x782d14c1 snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x80709478 snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x8c05ff6f snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x9b86d4d5 snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x9fdd5f86 snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xa38466a1 snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xbc973915 snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xc085dfcd snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xdaf07095 snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xe2f8608c snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x0e936234 snd_emu10k1_synth_bzero +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x2869e6ef snd_emu10k1_synth_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x381ac14a snd_emu10k1_voice_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x3cbb8c13 snd_emu10k1_ptr_write +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x5185dda0 snd_emu10k1_synth_copy_from_user +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x6b5ca03a snd_emu10k1_synth_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x701f60e2 snd_emu10k1_voice_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xfbe8ebd2 snd_emu10k1_memblk_map +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xfd205a03 snd_emu10k1_ptr_read +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x0c44b056 snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x59d801db snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xd60c5fdd snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x018a0540 oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x051ef31d oxygen_write8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x0dcad043 oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x102c26cb oxygen_read8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x11283f20 oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x1e428b19 oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x29f55bf7 oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x2be09300 oxygen_write32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x310ba7f7 oxygen_pci_remove +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x37287d13 oxygen_write16_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x49e4db7f oxygen_write_i2c +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x50c377e6 oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x5c7e02a8 oxygen_pci_probe +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x6d39aa62 oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x825836e4 oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x9b598906 oxygen_write_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xa7e9f039 oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xb1e96369 oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc560cb9c oxygen_pci_pm +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xd1a2f504 oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x197e3cdc snd_trident_alloc_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x97eedeba snd_trident_write_voice_regs +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xcfbb9864 snd_trident_stop_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xd5e25556 snd_trident_start_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xeb4853dc snd_trident_free_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x10662a37 snd_emux_terminate_all +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x655cb202 snd_sf_linear_to_log +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x723b5f57 snd_emux_new +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xa15df010 snd_emux_lock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xcd4fd4d4 snd_emux_unlock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xea7ef880 snd_emux_free +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xf2037563 snd_emux_register +EXPORT_SYMBOL sound/synth/snd-util-mem 0x01cee414 __snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x0b8da6f3 snd_util_memhdr_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x0bc72589 snd_util_mem_avail +EXPORT_SYMBOL sound/synth/snd-util-mem 0x30078b0b __snd_util_memblk_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x65dda664 snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x8bae3c54 __snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x9601a80f snd_util_memhdr_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0xaea46d8d snd_util_mem_alloc +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x73d41a84 snd_usbmidi_create +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL vmlinux 0x00000000 __symbol_put +EXPORT_SYMBOL vmlinux 0x00000000 current_fs_time +EXPORT_SYMBOL vmlinux 0x00000000 d_tmpfile +EXPORT_SYMBOL vmlinux 0x00000000 do_sync_read +EXPORT_SYMBOL vmlinux 0x00000000 filp_close +EXPORT_SYMBOL vmlinux 0x00000000 finish_open +EXPORT_SYMBOL vmlinux 0x00000000 generic_getxattr +EXPORT_SYMBOL vmlinux 0x00000000 generic_write_sync +EXPORT_SYMBOL vmlinux 0x00000000 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x00000000 in_group_p +EXPORT_SYMBOL vmlinux 0x00000000 inode_add_bytes +EXPORT_SYMBOL vmlinux 0x00000000 iov_shorten +EXPORT_SYMBOL vmlinux 0x00000000 iterate_fd +EXPORT_SYMBOL vmlinux 0x00000000 ns_capable +EXPORT_SYMBOL vmlinux 0x00000000 path_is_under +EXPORT_SYMBOL vmlinux 0x00000000 register_exec_domain +EXPORT_SYMBOL vmlinux 0x00000000 sock_register +EXPORT_SYMBOL vmlinux 0x00000000 sys_close +EXPORT_SYMBOL vmlinux 0x00000000 task_nice +EXPORT_SYMBOL vmlinux 0x00000000 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x00000000 vm_brk +EXPORT_SYMBOL vmlinux 0x00059f27 vm_insert_pfn +EXPORT_SYMBOL vmlinux 0x001ca979 mdiobus_free +EXPORT_SYMBOL vmlinux 0x001ee95a imx_ssi_fiq_base +EXPORT_SYMBOL vmlinux 0x00219bad invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0x003816b4 snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL vmlinux 0x003ed69a __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0x0041a2de iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0x0047c388 try_module_get +EXPORT_SYMBOL vmlinux 0x0053e7c6 filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x0062cd0c security_task_getsecid +EXPORT_SYMBOL vmlinux 0x00801678 flush_scheduled_work +EXPORT_SYMBOL vmlinux 0x0087895f twl6040_set_bits +EXPORT_SYMBOL vmlinux 0x008901e3 snd_timer_global_register +EXPORT_SYMBOL vmlinux 0x0089df12 __pci_register_driver +EXPORT_SYMBOL vmlinux 0x0093cee5 security_path_rename +EXPORT_SYMBOL vmlinux 0x00971827 vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0x00cf4a7f of_get_parent +EXPORT_SYMBOL vmlinux 0x00dc322e ptp_clock_register +EXPORT_SYMBOL vmlinux 0x00decd95 vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x00e8097b csum_partial_copy_fromiovecend +EXPORT_SYMBOL vmlinux 0x00f2a3e8 dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x01139ffc max_mapnr +EXPORT_SYMBOL vmlinux 0x013a6b1d sock_wmalloc +EXPORT_SYMBOL vmlinux 0x013b9a68 elevator_alloc +EXPORT_SYMBOL vmlinux 0x013fc484 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x01581be0 nand_calculate_ecc +EXPORT_SYMBOL vmlinux 0x0186e2de smp_call_function_many +EXPORT_SYMBOL vmlinux 0x01902adf netpoll_trap +EXPORT_SYMBOL vmlinux 0x0193b975 xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x01a04b26 dev_addr_flush +EXPORT_SYMBOL vmlinux 0x01a3d310 omap_set_dma_channel_mode +EXPORT_SYMBOL vmlinux 0x01b7fd59 dispc_read_irqstatus +EXPORT_SYMBOL vmlinux 0x01ea132e dispc_runtime_put +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x02196324 __aeabi_idiv +EXPORT_SYMBOL vmlinux 0x024bf88f omap_modify_dma_chain_params +EXPORT_SYMBOL vmlinux 0x02573b36 omap_disable_dma_irq +EXPORT_SYMBOL vmlinux 0x02649054 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL vmlinux 0x028bd04a dquot_quota_off +EXPORT_SYMBOL vmlinux 0x02a11f23 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a6ce5a crc16_table +EXPORT_SYMBOL vmlinux 0x02b28b62 lock_fb_info +EXPORT_SYMBOL vmlinux 0x02bf7361 cdev_del +EXPORT_SYMBOL vmlinux 0x02ebb8d0 skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0x02ee26c1 free_pages_exact +EXPORT_SYMBOL vmlinux 0x02ef742b percpu_counter_set +EXPORT_SYMBOL vmlinux 0x02faa04c check_disk_change +EXPORT_SYMBOL vmlinux 0x03026722 mempool_alloc +EXPORT_SYMBOL vmlinux 0x03308299 netif_napi_add +EXPORT_SYMBOL vmlinux 0x0334795d icst307_s2div +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x033d71f9 user_path_at +EXPORT_SYMBOL vmlinux 0x03474352 simple_release_fs +EXPORT_SYMBOL vmlinux 0x03592ea0 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x03635439 edma_stop +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x0397ef71 pcie_port_service_register +EXPORT_SYMBOL vmlinux 0x03a4f058 dcb_setapp +EXPORT_SYMBOL vmlinux 0x03ba39b0 v7_flush_user_cache_all +EXPORT_SYMBOL vmlinux 0x03c06156 bitmap_fold +EXPORT_SYMBOL vmlinux 0x03f10d1f dmam_alloc_noncoherent +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x03fd7801 jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x04014722 sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0x0422fe4a inet_csk_timer_bug_msg +EXPORT_SYMBOL vmlinux 0x0427862b dev_get_stats +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x04550d85 __seq_open_private +EXPORT_SYMBOL vmlinux 0x045988d3 end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0x046b4731 neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x0485e9fe blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x0487f831 fb_find_best_display +EXPORT_SYMBOL vmlinux 0x04892cc5 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0x04947321 swiotlb_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0x04c3f08b skb_copy_datagram_const_iovec +EXPORT_SYMBOL vmlinux 0x04cda566 snd_interval_refine +EXPORT_SYMBOL vmlinux 0x04de9aed i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04ed9127 pcim_iomap_table +EXPORT_SYMBOL vmlinux 0x04fd9fb1 scsi_setup_fs_cmnd +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x05317f0a phy_find_first +EXPORT_SYMBOL vmlinux 0x054434d6 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x055b262d unlock_rename +EXPORT_SYMBOL vmlinux 0x057ce975 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0x05821959 pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0x0593a99b init_timer_key +EXPORT_SYMBOL vmlinux 0x0595d709 kill_pgrp +EXPORT_SYMBOL vmlinux 0x05ae3cd7 irq_set_chip +EXPORT_SYMBOL vmlinux 0x05daa14c d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x06266548 generic_delete_inode +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x064c9ce7 __napi_complete +EXPORT_SYMBOL vmlinux 0x06607f92 dss_feat_get_supported_outputs +EXPORT_SYMBOL vmlinux 0x067d8d35 security_release_secctx +EXPORT_SYMBOL vmlinux 0x06a861ce remap_pfn_range +EXPORT_SYMBOL vmlinux 0x06abd1a8 pci_read_vpd +EXPORT_SYMBOL vmlinux 0x06bf0c99 snd_pcm_period_elapsed +EXPORT_SYMBOL vmlinux 0x06d432ed get_thermal_instance +EXPORT_SYMBOL vmlinux 0x06f6e418 mutex_lock +EXPORT_SYMBOL vmlinux 0x06fe3b14 default_grn +EXPORT_SYMBOL vmlinux 0x07003713 dma_declare_coherent_memory +EXPORT_SYMBOL vmlinux 0x07015d20 check_disk_size_change +EXPORT_SYMBOL vmlinux 0x0714f86f swiotlb_dma_mapping_error +EXPORT_SYMBOL vmlinux 0x073138a4 __devcgroup_inode_permission +EXPORT_SYMBOL vmlinux 0x07471589 udp_poll +EXPORT_SYMBOL vmlinux 0x074d75f2 vm_mmap +EXPORT_SYMBOL vmlinux 0x0755948c skb_store_bits +EXPORT_SYMBOL vmlinux 0x075b8c3f i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0x076536f6 mntget +EXPORT_SYMBOL vmlinux 0x076e7506 sock_no_poll +EXPORT_SYMBOL vmlinux 0x076f8713 vmap +EXPORT_SYMBOL vmlinux 0x07791c20 touch_atime +EXPORT_SYMBOL vmlinux 0x0799aca4 local_bh_enable +EXPORT_SYMBOL vmlinux 0x079c934c ps2_init +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07c55c98 handle_edge_irq +EXPORT_SYMBOL vmlinux 0x07cc00e5 nf_afinfo +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07cf9099 wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0x07d8b683 blk_mq_run_queues +EXPORT_SYMBOL vmlinux 0x07f6e8cc snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL vmlinux 0x0810a9d7 xfrm_user_policy +EXPORT_SYMBOL vmlinux 0x081f3afb complete_all +EXPORT_SYMBOL vmlinux 0x082adfe4 dma_async_memcpy_buf_to_pg +EXPORT_SYMBOL vmlinux 0x082c1ab5 inet_ioctl +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x083c2cbe of_get_next_parent +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x0847576c swiotlb_alloc_coherent +EXPORT_SYMBOL vmlinux 0x084bb381 snd_ctl_unregister_ioctl +EXPORT_SYMBOL vmlinux 0x084fb945 security_file_permission +EXPORT_SYMBOL vmlinux 0x085f3da6 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0x08618613 __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x08aa326b seq_release_private +EXPORT_SYMBOL vmlinux 0x08eddf6b dev_mc_add_global +EXPORT_SYMBOL vmlinux 0x08f3e465 snd_pcm_hw_rule_add +EXPORT_SYMBOL vmlinux 0x091f9f1b nf_log_unregister +EXPORT_SYMBOL vmlinux 0x093fd053 sk_stream_write_space +EXPORT_SYMBOL vmlinux 0x097ec1ff _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x0991fa09 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0x09c55cec schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09cf1b46 proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x09d0d29c block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x0a0786de udplite_table +EXPORT_SYMBOL vmlinux 0x0a2487e0 unblock_all_signals +EXPORT_SYMBOL vmlinux 0x0a28ac6a dma_find_channel +EXPORT_SYMBOL vmlinux 0x0a3131f6 strnchr +EXPORT_SYMBOL vmlinux 0x0a469d23 mfd_clone_cell +EXPORT_SYMBOL vmlinux 0x0a4f59e2 iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0x0a621ad9 pcibios_fixup_bus +EXPORT_SYMBOL vmlinux 0x0a7cea17 snd_ctl_notify +EXPORT_SYMBOL vmlinux 0x0a8f5f51 netpoll_rx_disable +EXPORT_SYMBOL vmlinux 0x0a93bebf elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x0a958ed4 down_write +EXPORT_SYMBOL vmlinux 0x0a98c25b bdi_destroy +EXPORT_SYMBOL vmlinux 0x0aa13d05 __raw_readsw +EXPORT_SYMBOL vmlinux 0x0abcc704 pci_enable_msi_block +EXPORT_SYMBOL vmlinux 0x0ac69f19 nobh_writepage +EXPORT_SYMBOL vmlinux 0x0acb1a3c __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0adfab73 __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x0afeb86c pci_restore_state +EXPORT_SYMBOL vmlinux 0x0b0d888b icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b242147 brioctl_set +EXPORT_SYMBOL vmlinux 0x0b36888a should_remove_suid +EXPORT_SYMBOL vmlinux 0x0b3e1874 fsnotify_add_mark +EXPORT_SYMBOL vmlinux 0x0b48677a __kfifo_init +EXPORT_SYMBOL vmlinux 0x0b56117f of_find_node_by_path +EXPORT_SYMBOL vmlinux 0x0b589893 dev_mc_sync +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b77416e generic_read_dir +EXPORT_SYMBOL vmlinux 0x0b7fdac3 dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0x0b7ffe4a tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0x0ba090c4 arm_coherent_dma_ops +EXPORT_SYMBOL vmlinux 0x0baaf441 neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0x0bbc5908 gen_estimator_active +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bd76d4e blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x0bf92859 blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0x0c050ed2 kfree_skb_list +EXPORT_SYMBOL vmlinux 0x0c45fc96 vfs_lstat +EXPORT_SYMBOL vmlinux 0x0c58a8cd netdev_increment_features +EXPORT_SYMBOL vmlinux 0x0c65e73c scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0x0c6a6c51 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x0c8c9e99 scsi_show_extd_sense +EXPORT_SYMBOL vmlinux 0x0c96fabe tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0x0c9f6a87 tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x0ca0c882 twl6030_interrupt_mask +EXPORT_SYMBOL vmlinux 0x0ca54fee _test_and_set_bit +EXPORT_SYMBOL vmlinux 0x0cae232b utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0x0ccb2697 dev_deactivate +EXPORT_SYMBOL vmlinux 0x0cd9cc7b phy_scan_fixups +EXPORT_SYMBOL vmlinux 0x0ce31536 blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0x0ce900af blk_finish_plug +EXPORT_SYMBOL vmlinux 0x0cfefe1e percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0x0d043b11 elm_config +EXPORT_SYMBOL vmlinux 0x0d08c565 tcf_hash_create +EXPORT_SYMBOL vmlinux 0x0d096a3d skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0x0d1feb3e scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0x0d2af40d seq_write +EXPORT_SYMBOL vmlinux 0x0d2fbb93 truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0x0d3d96ba md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0x0d3f57a2 _find_next_bit_le +EXPORT_SYMBOL vmlinux 0x0d4d7a32 _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d918170 blk_mq_free_single_hw_queue +EXPORT_SYMBOL vmlinux 0x0d9286b0 vm_map_ram +EXPORT_SYMBOL vmlinux 0x0da10ec3 security_sock_graft +EXPORT_SYMBOL vmlinux 0x0da92f93 n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x0dc21d61 tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x0de3138f md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0x0df6804b unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x0df7df60 eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0x0e1f8804 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x0e22e83a seq_escape +EXPORT_SYMBOL vmlinux 0x0e3290d5 neigh_parms_release +EXPORT_SYMBOL vmlinux 0x0e6afbc8 serio_open +EXPORT_SYMBOL vmlinux 0x0e6d3032 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0x0e6d67a9 genphy_read_status +EXPORT_SYMBOL vmlinux 0x0e6da44a set_normalized_timespec +EXPORT_SYMBOL vmlinux 0x0e6e90c3 linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x0e950e8c of_get_ddr_timings +EXPORT_SYMBOL vmlinux 0x0eaf451e hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x0ec7f5de kernel_sendmsg +EXPORT_SYMBOL vmlinux 0x0efcbb1b set_current_groups +EXPORT_SYMBOL vmlinux 0x0f2768e3 set_groups +EXPORT_SYMBOL vmlinux 0x0f2f141e netdev_warn +EXPORT_SYMBOL vmlinux 0x0f30dc58 insert_inode_locked +EXPORT_SYMBOL vmlinux 0x0f374317 input_set_abs_params +EXPORT_SYMBOL vmlinux 0x0f3f8c75 register_framebuffer +EXPORT_SYMBOL vmlinux 0x0f4b08e4 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0x0f4c91ed ns_to_timespec +EXPORT_SYMBOL vmlinux 0x0f4ec253 __devm_request_region +EXPORT_SYMBOL vmlinux 0x0f6e8791 deactivate_super +EXPORT_SYMBOL vmlinux 0x0fa2a45e __memzero +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fb1bca0 input_set_keycode +EXPORT_SYMBOL vmlinux 0x0fb23fbc try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x0fc131cc skb_copy +EXPORT_SYMBOL vmlinux 0x0fc81dd7 pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0x0fdb032e __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0x0ff178f6 __aeabi_idivmod +EXPORT_SYMBOL vmlinux 0x0ff280cd filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0x0ff2b602 slhc_compress +EXPORT_SYMBOL vmlinux 0x0ffdd3b9 __xfrm_init_state +EXPORT_SYMBOL vmlinux 0x0fff7386 sock_wfree +EXPORT_SYMBOL vmlinux 0x101cdb83 __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x103be1a0 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x1040a3c4 pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0x1050b828 keyring_search +EXPORT_SYMBOL vmlinux 0x105b6226 __mem_cgroup_count_vm_event +EXPORT_SYMBOL vmlinux 0x105cf372 tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0x106f13ab crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x1070f0e3 dquot_commit +EXPORT_SYMBOL vmlinux 0x1072a394 csum_partial_copy_from_user +EXPORT_SYMBOL vmlinux 0x10754e9f bdev_read_only +EXPORT_SYMBOL vmlinux 0x10938bc4 elv_register_queue +EXPORT_SYMBOL vmlinux 0x10d020cc blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0x10d60355 omapdss_output_unset_device +EXPORT_SYMBOL vmlinux 0x10d8eeba inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x10de7a93 pci_scan_bus_parented +EXPORT_SYMBOL vmlinux 0x10e33a8b inode_dio_done +EXPORT_SYMBOL vmlinux 0x10e824dc mmc_detect_change +EXPORT_SYMBOL vmlinux 0x10eb204b inet_del_protocol +EXPORT_SYMBOL vmlinux 0x10ee20bb default_blu +EXPORT_SYMBOL vmlinux 0x10eecc17 inode_init_once +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x11190885 snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL vmlinux 0x11267875 scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0x112748bd omap_vrfb_adjust_size +EXPORT_SYMBOL vmlinux 0x11441072 tcp_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x114c6ce4 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0x115cb686 iget_failed +EXPORT_SYMBOL vmlinux 0x115d74a3 sk_run_filter +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x11640f31 eth_header_cache +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x1177930a jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0x1179d0e8 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0x1188c5f0 tty_mutex +EXPORT_SYMBOL vmlinux 0x118d2bd6 blk_peek_request +EXPORT_SYMBOL vmlinux 0x1196f9ed nf_unregister_hook +EXPORT_SYMBOL vmlinux 0x1199c8f1 tty_kref_put +EXPORT_SYMBOL vmlinux 0x119b50e7 elf_check_arch +EXPORT_SYMBOL vmlinux 0x11a71f8f tty_port_tty_get +EXPORT_SYMBOL vmlinux 0x11a8c8dd snd_ctl_free_one +EXPORT_SYMBOL vmlinux 0x11ac6884 set_blocksize +EXPORT_SYMBOL vmlinux 0x11b41122 scsi_release_buffers +EXPORT_SYMBOL vmlinux 0x11c9185c of_iomap +EXPORT_SYMBOL vmlinux 0x11dde5e2 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0x11e2ec12 flex_array_free_parts +EXPORT_SYMBOL vmlinux 0x11f17f3f mmc_wait_for_app_cmd +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x122043a8 of_find_node_with_property +EXPORT_SYMBOL vmlinux 0x12293ba1 nf_register_sockopt +EXPORT_SYMBOL vmlinux 0x1231f479 tcp_md5_hash_header +EXPORT_SYMBOL vmlinux 0x12358f1b security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x123a5e1b scsi_init_io +EXPORT_SYMBOL vmlinux 0x124db587 keyring_alloc +EXPORT_SYMBOL vmlinux 0x127a1d48 kernel_sock_ioctl +EXPORT_SYMBOL vmlinux 0x129979dc dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12b3d0bc prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x12c52f99 xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x12da5bb2 __kmalloc +EXPORT_SYMBOL vmlinux 0x12db50f7 vfs_mknod +EXPORT_SYMBOL vmlinux 0x131620ec tc6393xb_lcd_mode +EXPORT_SYMBOL vmlinux 0x13307fde vsscanf +EXPORT_SYMBOL vmlinux 0x133e6e91 simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0x1348760d ipmi_request_settime +EXPORT_SYMBOL vmlinux 0x134c8649 __scsi_alloc_queue +EXPORT_SYMBOL vmlinux 0x138a4dc6 pci_set_dma_max_seg_size +EXPORT_SYMBOL vmlinux 0x13992340 dev_get_by_name +EXPORT_SYMBOL vmlinux 0x13b86de6 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x13c5d4bf get_gendisk +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13d259db blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x13d6072f xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0x13e3d419 pps_event +EXPORT_SYMBOL vmlinux 0x140c76e6 serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0x1420b379 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0x1462c744 bdi_register_dev +EXPORT_SYMBOL vmlinux 0x1479b88c blk_mq_alloc_single_hw_queue +EXPORT_SYMBOL vmlinux 0x149701da omap_dss_get_overlay +EXPORT_SYMBOL vmlinux 0x14a40301 cad_pid +EXPORT_SYMBOL vmlinux 0x14d4a9c5 _change_bit +EXPORT_SYMBOL vmlinux 0x14f20074 fget +EXPORT_SYMBOL vmlinux 0x14fde948 bdget_disk +EXPORT_SYMBOL vmlinux 0x150120b1 uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x1507960f mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x1520f695 wait_iff_congested +EXPORT_SYMBOL vmlinux 0x15250aa4 bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x15349cee cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x1551dc51 bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x15537dd6 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0x1559c145 generic_file_fsync +EXPORT_SYMBOL vmlinux 0x1567aa44 ps2_drain +EXPORT_SYMBOL vmlinux 0x156e22b1 pci_dev_get +EXPORT_SYMBOL vmlinux 0x15979b84 of_platform_device_create +EXPORT_SYMBOL vmlinux 0x15d62d4a dump_align +EXPORT_SYMBOL vmlinux 0x15dab5ad kmap_high +EXPORT_SYMBOL vmlinux 0x15db88e1 snd_cards +EXPORT_SYMBOL vmlinux 0x15dd2ccb dev_set_mac_address +EXPORT_SYMBOL vmlinux 0x15f571ec blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0x1609b1e7 dev_mc_flush +EXPORT_SYMBOL vmlinux 0x160b5f4f amba_driver_register +EXPORT_SYMBOL vmlinux 0x1618110e pci_disable_device +EXPORT_SYMBOL vmlinux 0x162cc83e seq_path +EXPORT_SYMBOL vmlinux 0x162ccc0c lg_local_lock +EXPORT_SYMBOL vmlinux 0x16305289 warn_slowpath_null +EXPORT_SYMBOL vmlinux 0x16365803 __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0x163f8ba8 save_mount_options +EXPORT_SYMBOL vmlinux 0x16459b19 dev_err +EXPORT_SYMBOL vmlinux 0x166fc658 touch_buffer +EXPORT_SYMBOL vmlinux 0x169d9904 neigh_direct_output +EXPORT_SYMBOL vmlinux 0x16a30ce3 skb_tx_error +EXPORT_SYMBOL vmlinux 0x16b47aaa rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0x16dcbef7 mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0x16dcec76 ipmi_set_my_address +EXPORT_SYMBOL vmlinux 0x16dd5682 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0x16df2f46 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0x16f38402 skb_seq_read +EXPORT_SYMBOL vmlinux 0x1702b0cf ps2_handle_response +EXPORT_SYMBOL vmlinux 0x1727037b ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x174afb1a __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0x178d44fd vga_client_register +EXPORT_SYMBOL vmlinux 0x17940f58 sk_dst_check +EXPORT_SYMBOL vmlinux 0x1796b9b7 ppp_unit_number +EXPORT_SYMBOL vmlinux 0x17a142df __copy_from_user +EXPORT_SYMBOL vmlinux 0x17b1125d gen_kill_estimator +EXPORT_SYMBOL vmlinux 0x17fac70c cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0x180fd454 rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x181e2990 arm_dma_zone_size +EXPORT_SYMBOL vmlinux 0x1826f089 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x183fa88b mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0x184b82fb mmc_vddrange_to_ocrmask +EXPORT_SYMBOL vmlinux 0x184e6c85 radix_tree_gang_lookup_slot +EXPORT_SYMBOL vmlinux 0x1860ccaf misc_register +EXPORT_SYMBOL vmlinux 0x188a3dfb timespec_trunc +EXPORT_SYMBOL vmlinux 0x189868d7 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x189fb42d generic_listxattr +EXPORT_SYMBOL vmlinux 0x18bd76a4 _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0x18c2227f cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x18c95197 dev_set_group +EXPORT_SYMBOL vmlinux 0x18e2bf15 pskb_expand_head +EXPORT_SYMBOL vmlinux 0x190e97dc netif_receive_skb +EXPORT_SYMBOL vmlinux 0x19211ac9 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x192df939 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0x19438172 iov_iter_copy_from_user +EXPORT_SYMBOL vmlinux 0x19610e1f cpu_all_bits +EXPORT_SYMBOL vmlinux 0x196ad17e directly_mappable_cdev_bdi +EXPORT_SYMBOL vmlinux 0x197dc3b3 omap_set_dma_src_burst_mode +EXPORT_SYMBOL vmlinux 0x199c6fa8 simple_empty +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19ae85a3 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0x19bb11b6 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19c99f86 devm_gpiod_put +EXPORT_SYMBOL vmlinux 0x19cd7ad9 kthread_bind +EXPORT_SYMBOL vmlinux 0x19e16e60 kunmap_high +EXPORT_SYMBOL vmlinux 0x19e2baa4 __page_symlink +EXPORT_SYMBOL vmlinux 0x19f5809b dm_ratelimit_state +EXPORT_SYMBOL vmlinux 0x1a065e4c inet_frags_fini +EXPORT_SYMBOL vmlinux 0x1a10c898 ipmi_set_maintenance_mode +EXPORT_SYMBOL vmlinux 0x1a15380f bio_copy_user +EXPORT_SYMBOL vmlinux 0x1a20c540 omap_vrfb_supported +EXPORT_SYMBOL vmlinux 0x1a24d5df inet_addr_type +EXPORT_SYMBOL vmlinux 0x1a278bdf blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0x1a530f28 snd_ctl_make_virtual_master +EXPORT_SYMBOL vmlinux 0x1a65f4ad __arm_ioremap_pfn +EXPORT_SYMBOL vmlinux 0x1a6efd90 lease_get_mtime +EXPORT_SYMBOL vmlinux 0x1aa006fb bprm_change_interp +EXPORT_SYMBOL vmlinux 0x1aba5db8 ipmi_unregister_smi +EXPORT_SYMBOL vmlinux 0x1acce214 fget_light +EXPORT_SYMBOL vmlinux 0x1ace138d bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0x1ad1f2e7 _memcpy_fromio +EXPORT_SYMBOL vmlinux 0x1ad8ccf0 mmc_flush_cache +EXPORT_SYMBOL vmlinux 0x1af33e69 __pskb_copy +EXPORT_SYMBOL vmlinux 0x1af39c09 eth_change_mtu +EXPORT_SYMBOL vmlinux 0x1af79aae xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b06d58a arp_xmit +EXPORT_SYMBOL vmlinux 0x1b0ac272 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0x1b275fcc __genl_register_family +EXPORT_SYMBOL vmlinux 0x1b2f681d add_disk +EXPORT_SYMBOL vmlinux 0x1b623926 scsi_register_driver +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b7cd897 gen10g_config_aneg +EXPORT_SYMBOL vmlinux 0x1b82fefa md_unplug +EXPORT_SYMBOL vmlinux 0x1b988e92 devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x1b99f4a4 netif_carrier_off +EXPORT_SYMBOL vmlinux 0x1b9e0ff1 scsilun_to_int +EXPORT_SYMBOL vmlinux 0x1ba90e64 ata_dev_printk +EXPORT_SYMBOL vmlinux 0x1c03e15e d_drop +EXPORT_SYMBOL vmlinux 0x1c28a010 phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x1c32c079 inet_dgram_ops +EXPORT_SYMBOL vmlinux 0x1c52b103 phy_start_interrupts +EXPORT_SYMBOL vmlinux 0x1c5811b4 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0x1c5e3878 icst525_idx2s +EXPORT_SYMBOL vmlinux 0x1c622572 blk_queue_end_tag +EXPORT_SYMBOL vmlinux 0x1c6b0927 page_follow_link_light +EXPORT_SYMBOL vmlinux 0x1c79db0c of_phy_attach +EXPORT_SYMBOL vmlinux 0x1c951208 pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0x1c975af7 snd_dma_get_reserved_buf +EXPORT_SYMBOL vmlinux 0x1ca64f12 nf_getsockopt +EXPORT_SYMBOL vmlinux 0x1cb688a3 bio_reset +EXPORT_SYMBOL vmlinux 0x1ccc5b7a backlight_device_register +EXPORT_SYMBOL vmlinux 0x1cf423ea input_reset_device +EXPORT_SYMBOL vmlinux 0x1cfb04fa finish_wait +EXPORT_SYMBOL vmlinux 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL vmlinux 0x1d14c41e input_set_capability +EXPORT_SYMBOL vmlinux 0x1d18666d gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0x1d547bfc cpu_user +EXPORT_SYMBOL vmlinux 0x1d94587a snd_dma_alloc_pages_fallback +EXPORT_SYMBOL vmlinux 0x1daf2068 cleancache_register_ops +EXPORT_SYMBOL vmlinux 0x1db7dc40 pgprot_kernel +EXPORT_SYMBOL vmlinux 0x1dc36131 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1e047854 warn_slowpath_fmt +EXPORT_SYMBOL vmlinux 0x1e114b7a snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL vmlinux 0x1e1dcc6f padata_add_cpu +EXPORT_SYMBOL vmlinux 0x1e26be3b get_anon_bdev +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e7dc2c1 __break_lease +EXPORT_SYMBOL vmlinux 0x1e80a82b sync_inodes_sb +EXPORT_SYMBOL vmlinux 0x1e953dce install_exec_creds +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ec3bed9 hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0x1ec4eb34 flex_array_prealloc +EXPORT_SYMBOL vmlinux 0x1ee9a220 blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0x1eeb848e __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0x1f063bda security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0x1f093394 __ip_dev_find +EXPORT_SYMBOL vmlinux 0x1f15414e tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x1f272b0c max8998_bulk_read +EXPORT_SYMBOL vmlinux 0x1f5c6abc bio_copy_data +EXPORT_SYMBOL vmlinux 0x1f7e807f kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x1fa20171 jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x1fab5905 wait_for_completion +EXPORT_SYMBOL vmlinux 0x1fb63785 pps_lookup_dev +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fda02bf d_add_ci +EXPORT_SYMBOL vmlinux 0x1fe8a28b blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1fe9f800 unregister_cpu_notifier +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x20029de6 skb_checksum_help +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x202369c8 skb_copy_bits +EXPORT_SYMBOL vmlinux 0x20388861 balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0x203f04c0 submit_bio_wait +EXPORT_SYMBOL vmlinux 0x20421305 on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x204c3259 phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x205b5b23 pci_dev_driver +EXPORT_SYMBOL vmlinux 0x205ec8de omap_dispc_register_isr +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x20839b23 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0x20981220 pci_find_bus +EXPORT_SYMBOL vmlinux 0x209fe9ee dss_mgr_start_update +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20a86b3f of_get_pci_address +EXPORT_SYMBOL vmlinux 0x20b2bb2d param_array_ops +EXPORT_SYMBOL vmlinux 0x20b6e8d2 __pv_phys_offset +EXPORT_SYMBOL vmlinux 0x20c55ae0 sscanf +EXPORT_SYMBOL vmlinux 0x20df2681 ida_simple_remove +EXPORT_SYMBOL vmlinux 0x20ed6744 scsi_adjust_queue_depth +EXPORT_SYMBOL vmlinux 0x21103e84 tty_name +EXPORT_SYMBOL vmlinux 0x211331fa __divsi3 +EXPORT_SYMBOL vmlinux 0x2113b609 rfkill_alloc +EXPORT_SYMBOL vmlinux 0x211500b3 inet_add_protocol +EXPORT_SYMBOL vmlinux 0x212f269a snd_ctl_remove_id +EXPORT_SYMBOL vmlinux 0x21333e8e __inet6_hash +EXPORT_SYMBOL vmlinux 0x21371cea max8998_write_reg +EXPORT_SYMBOL vmlinux 0x21502019 __sk_dst_check +EXPORT_SYMBOL vmlinux 0x21502d3a fb_find_mode +EXPORT_SYMBOL vmlinux 0x215a08ea skb_checksum +EXPORT_SYMBOL vmlinux 0x215ebd78 bitrev16 +EXPORT_SYMBOL vmlinux 0x2176378d drop_super +EXPORT_SYMBOL vmlinux 0x217dda13 flex_array_get +EXPORT_SYMBOL vmlinux 0x21ce171e loop_backing_file +EXPORT_SYMBOL vmlinux 0x21e3bee9 tcp_enter_memory_pressure +EXPORT_SYMBOL vmlinux 0x21e4d640 snd_dma_free_pages +EXPORT_SYMBOL vmlinux 0x21fa01e2 tty_lock_pair +EXPORT_SYMBOL vmlinux 0x220613a4 kmap +EXPORT_SYMBOL vmlinux 0x220e52a4 mmc_of_parse +EXPORT_SYMBOL vmlinux 0x221835ca fixed_size_llseek +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x222fa684 lg_global_lock +EXPORT_SYMBOL vmlinux 0x2232a8a5 mempool_free +EXPORT_SYMBOL vmlinux 0x223b70b7 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0x223cc898 omap_vrfb_max_height +EXPORT_SYMBOL vmlinux 0x224ed5eb noop_llseek +EXPORT_SYMBOL vmlinux 0x2256fafa div64_u64_rem +EXPORT_SYMBOL vmlinux 0x22675997 seq_printf +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x22830711 edma_clear_event +EXPORT_SYMBOL vmlinux 0x228c74e9 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22b95a16 scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x22df50fc scsi_put_command +EXPORT_SYMBOL vmlinux 0x22e1ae6f up_read +EXPORT_SYMBOL vmlinux 0x22ec458c inet_bind +EXPORT_SYMBOL vmlinux 0x22f0886b security_mmap_file +EXPORT_SYMBOL vmlinux 0x2300c09c simple_transaction_release +EXPORT_SYMBOL vmlinux 0x231d4001 fb_edid_add_monspecs +EXPORT_SYMBOL vmlinux 0x233ebfc2 xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0x23532c4d ftrace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x23668a56 dev_alloc_name +EXPORT_SYMBOL vmlinux 0x23686383 mutex_trylock +EXPORT_SYMBOL vmlinux 0x2388187e inet6_register_protosw +EXPORT_SYMBOL vmlinux 0x239c4a06 ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x23a14463 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x23a574fd security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0x23aa49d3 _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x23b284a3 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c8f257 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x23e2512f ip_route_input_noref +EXPORT_SYMBOL vmlinux 0x23f226f1 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x243105fb netdev_notice +EXPORT_SYMBOL vmlinux 0x243745f7 jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0x24399ab5 pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x245dfa04 pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0x2482e688 vsprintf +EXPORT_SYMBOL vmlinux 0x249513f8 blk_init_queue_node +EXPORT_SYMBOL vmlinux 0x24a168e5 __quota_error +EXPORT_SYMBOL vmlinux 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL vmlinux 0x24aa91a4 d_obtain_alias +EXPORT_SYMBOL vmlinux 0x24b0f90c of_clk_get_by_name +EXPORT_SYMBOL vmlinux 0x24d7b4eb cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x24e75db7 tty_unthrottle +EXPORT_SYMBOL vmlinux 0x24fdac79 wake_bit_function +EXPORT_SYMBOL vmlinux 0x24fdcbcd sync_blockdev +EXPORT_SYMBOL vmlinux 0x250113b4 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x25540332 inode_sb_list_lock +EXPORT_SYMBOL vmlinux 0x255d6681 give_up_console +EXPORT_SYMBOL vmlinux 0x2573339e dev_uc_init +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x25871c0f xfrm_state_update +EXPORT_SYMBOL vmlinux 0x2590ea43 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0x25b380be dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x25be5766 abx500_remove_ops +EXPORT_SYMBOL vmlinux 0x25c677c4 mac_pton +EXPORT_SYMBOL vmlinux 0x25dead09 tty_port_open +EXPORT_SYMBOL vmlinux 0x25f3abeb kmem_cache_create +EXPORT_SYMBOL vmlinux 0x25f673fc gen_replace_estimator +EXPORT_SYMBOL vmlinux 0x260270b6 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0x260cf8f8 of_get_property +EXPORT_SYMBOL vmlinux 0x260fa31a netdev_change_features +EXPORT_SYMBOL vmlinux 0x262f4054 snd_register_device_for_dev +EXPORT_SYMBOL vmlinux 0x2630c076 tcp_release_cb +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x263c4111 pci_request_region_exclusive +EXPORT_SYMBOL vmlinux 0x2650d835 sysctl_ip_early_demux +EXPORT_SYMBOL vmlinux 0x26695728 lockref_mark_dead +EXPORT_SYMBOL vmlinux 0x2670620c netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0x267b4013 arp_create +EXPORT_SYMBOL vmlinux 0x268a7534 fb_validate_mode +EXPORT_SYMBOL vmlinux 0x2693e8c4 uart_get_divisor +EXPORT_SYMBOL vmlinux 0x2697d9f6 dquot_enable +EXPORT_SYMBOL vmlinux 0x26bb950b __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0x26c73158 block_read_full_page +EXPORT_SYMBOL vmlinux 0x26e76fb8 sysctl_udp_wmem_min +EXPORT_SYMBOL vmlinux 0x26e7aea9 nand_bch_init +EXPORT_SYMBOL vmlinux 0x26f0453a blk_set_default_limits +EXPORT_SYMBOL vmlinux 0x26f54973 pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0x26f9f902 block_write_end +EXPORT_SYMBOL vmlinux 0x273ebebd kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0x275ef902 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0x2760f922 __dev_remove_offload +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x27956f8f scsi_scan_host +EXPORT_SYMBOL vmlinux 0x27b1dd65 unregister_exec_domain +EXPORT_SYMBOL vmlinux 0x27b4e029 mmc_read_bkops_status +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27be09e4 netdev_update_features +EXPORT_SYMBOL vmlinux 0x27c8dedc pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x27d594c2 pagevec_lookup +EXPORT_SYMBOL vmlinux 0x27e1a049 printk +EXPORT_SYMBOL vmlinux 0x27ede1f9 end_page_writeback +EXPORT_SYMBOL vmlinux 0x28118cb6 __get_user_1 +EXPORT_SYMBOL vmlinux 0x2815fefa mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x2819071b rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0x28262cbd pci_add_new_bus +EXPORT_SYMBOL vmlinux 0x284c2fd8 pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0x2857a24b snd_pcm_open_substream +EXPORT_SYMBOL vmlinux 0x289ee2c1 snd_timer_open +EXPORT_SYMBOL vmlinux 0x28a2ed02 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x28a54cbc scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x28a97165 blk_mq_free_queue +EXPORT_SYMBOL vmlinux 0x28ab9f59 pipe_unlock +EXPORT_SYMBOL vmlinux 0x28ad6d7a __block_write_begin +EXPORT_SYMBOL vmlinux 0x28be23e2 copy_strings_kernel +EXPORT_SYMBOL vmlinux 0x28d6861d __vmalloc +EXPORT_SYMBOL vmlinux 0x28f2dbe8 vlan_vid_del +EXPORT_SYMBOL vmlinux 0x28fdd45f rtnl_unicast +EXPORT_SYMBOL vmlinux 0x29060a9b phy_print_status +EXPORT_SYMBOL vmlinux 0x29072cf8 snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL vmlinux 0x29085259 i2c_get_adapter +EXPORT_SYMBOL vmlinux 0x290c01c9 thaw_super +EXPORT_SYMBOL vmlinux 0x293c7b2a i2c_del_adapter +EXPORT_SYMBOL vmlinux 0x29537c9e alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0x295f4925 put_page +EXPORT_SYMBOL vmlinux 0x29870d23 __bio_clone +EXPORT_SYMBOL vmlinux 0x298b63cc __sb_end_write +EXPORT_SYMBOL vmlinux 0x298f8c99 bdget +EXPORT_SYMBOL vmlinux 0x29a1c65a i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0x29aa8de1 find_get_page +EXPORT_SYMBOL vmlinux 0x29b1c366 __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x29b8e8ba kernel_read +EXPORT_SYMBOL vmlinux 0x29b91093 dm_register_target +EXPORT_SYMBOL vmlinux 0x29ba4bf1 bio_alloc_pages +EXPORT_SYMBOL vmlinux 0x29baff70 ida_remove +EXPORT_SYMBOL vmlinux 0x29c43d43 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0x29d44089 padata_alloc +EXPORT_SYMBOL vmlinux 0x29fa73b1 snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL vmlinux 0x29fdda53 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0x2a1007de ps2_command +EXPORT_SYMBOL vmlinux 0x2a16d19d i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0x2a2696b5 mmc_power_save_host +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a3aa678 _test_and_clear_bit +EXPORT_SYMBOL vmlinux 0x2a4fabcf videomode_to_omap_video_timings +EXPORT_SYMBOL vmlinux 0x2a79ac13 clkdev_add +EXPORT_SYMBOL vmlinux 0x2a7cac99 pci_add_resource +EXPORT_SYMBOL vmlinux 0x2a93c9e2 twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0x2aa0e4fc strncasecmp +EXPORT_SYMBOL vmlinux 0x2aa766f6 scsi_execute +EXPORT_SYMBOL vmlinux 0x2ac85bcd scsi_register_interface +EXPORT_SYMBOL vmlinux 0x2ac95952 bio_init +EXPORT_SYMBOL vmlinux 0x2acf0feb vfs_fstat +EXPORT_SYMBOL vmlinux 0x2ad31cbc phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0x2addb401 revalidate_disk +EXPORT_SYMBOL vmlinux 0x2b07d6c1 path_get +EXPORT_SYMBOL vmlinux 0x2b0a2ed5 fddi_type_trans +EXPORT_SYMBOL vmlinux 0x2b0ba2b0 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x2b12925d cpumask_next_and +EXPORT_SYMBOL vmlinux 0x2b2ce78b kstrtos8 +EXPORT_SYMBOL vmlinux 0x2b2d4d1d scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x2b3723fc generic_show_options +EXPORT_SYMBOL vmlinux 0x2b4e956e mempool_create +EXPORT_SYMBOL vmlinux 0x2b51ac4f __scm_destroy +EXPORT_SYMBOL vmlinux 0x2b8a291e kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2ba707a8 sysctl_tcp_low_latency +EXPORT_SYMBOL vmlinux 0x2bbf3cfc fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0x2bd86fe5 redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0x2bde46cf filemap_write_and_wait +EXPORT_SYMBOL vmlinux 0x2be0f12d dql_completed +EXPORT_SYMBOL vmlinux 0x2c09bc6c commit_creds +EXPORT_SYMBOL vmlinux 0x2c14323a kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x2c19cb3f add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c64f488 __dquot_transfer +EXPORT_SYMBOL vmlinux 0x2c64f7bc sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x2c66f621 snd_pcm_suspend +EXPORT_SYMBOL vmlinux 0x2c6d6d72 ip_fragment +EXPORT_SYMBOL vmlinux 0x2c763a26 alloc_disk +EXPORT_SYMBOL vmlinux 0x2c7c8e9a pcibios_min_mem +EXPORT_SYMBOL vmlinux 0x2c81ec75 __irq_regs +EXPORT_SYMBOL vmlinux 0x2c8f0901 twl6030_mmc_card_detect +EXPORT_SYMBOL vmlinux 0x2c900d91 cpufreq_put_global_kobject +EXPORT_SYMBOL vmlinux 0x2c9732f8 gen_pool_destroy +EXPORT_SYMBOL vmlinux 0x2c988955 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x2ca076c5 dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x2caeef12 free_task +EXPORT_SYMBOL vmlinux 0x2cb72a40 __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0x2cba4633 con_is_bound +EXPORT_SYMBOL vmlinux 0x2cc65233 omapdss_find_output_from_display +EXPORT_SYMBOL vmlinux 0x2cc7a789 __skb_dst_set_noref +EXPORT_SYMBOL vmlinux 0x2cdd6c36 dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0x2cf82bf7 mmc_request_done +EXPORT_SYMBOL vmlinux 0x2d03c10d posix_acl_create +EXPORT_SYMBOL vmlinux 0x2d03d341 snd_card_disconnect +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d2f23b1 skb_copy_datagram_from_iovec +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d343785 jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0x2d44ff4e dss_mgr_enable +EXPORT_SYMBOL vmlinux 0x2d4af516 __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0x2d514e04 snd_timer_global_new +EXPORT_SYMBOL vmlinux 0x2d611ee0 kernel_listen +EXPORT_SYMBOL vmlinux 0x2d6507b5 _find_next_zero_bit_le +EXPORT_SYMBOL vmlinux 0x2d770676 dispc_mgr_go +EXPORT_SYMBOL vmlinux 0x2d838ef9 skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0x2d89342a scsi_show_sense_hdr +EXPORT_SYMBOL vmlinux 0x2d9868e2 proto_unregister +EXPORT_SYMBOL vmlinux 0x2d9d06a4 vc_cons +EXPORT_SYMBOL vmlinux 0x2da02d79 ip_options_compile +EXPORT_SYMBOL vmlinux 0x2daaaba9 param_get_byte +EXPORT_SYMBOL vmlinux 0x2dc3a5fa __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0x2dc3e24d snd_pcm_hw_param_first +EXPORT_SYMBOL vmlinux 0x2deda4a1 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x2e03bc42 dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0x2e112504 xfrm_state_add +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e2ce9e0 sysctl_tcp_syncookies +EXPORT_SYMBOL vmlinux 0x2e51e80d may_umount_tree +EXPORT_SYMBOL vmlinux 0x2e5810c6 __aeabi_unwind_cpp_pr1 +EXPORT_SYMBOL vmlinux 0x2e62c765 xfrm_garbage_collect +EXPORT_SYMBOL vmlinux 0x2e644307 rtnl_create_link +EXPORT_SYMBOL vmlinux 0x2e720bc5 netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0x2e7e2bb1 scsi_prep_return +EXPORT_SYMBOL vmlinux 0x2e8ce3d8 nf_register_hooks +EXPORT_SYMBOL vmlinux 0x2eb6842b bio_integrity_split +EXPORT_SYMBOL vmlinux 0x2ec524ad __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x2eeceb42 sk_chk_filter +EXPORT_SYMBOL vmlinux 0x2ef2474c create_syslog_header +EXPORT_SYMBOL vmlinux 0x2ef63ad6 scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f206c64 filemap_flush +EXPORT_SYMBOL vmlinux 0x2f2223a8 register_console +EXPORT_SYMBOL vmlinux 0x2f2af051 snd_card_proc_new +EXPORT_SYMBOL vmlinux 0x2f2e3c17 generic_pipe_buf_confirm +EXPORT_SYMBOL vmlinux 0x2f5e3d56 netpoll_parse_options +EXPORT_SYMBOL vmlinux 0x2f618ac7 account_page_redirty +EXPORT_SYMBOL vmlinux 0x2f74c28e lock_may_read +EXPORT_SYMBOL vmlinux 0x2f7cb372 snd_card_free +EXPORT_SYMBOL vmlinux 0x2f7f58ff wait_on_page_bit +EXPORT_SYMBOL vmlinux 0x2faa27f3 inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fb9a547 kernel_sendpage +EXPORT_SYMBOL vmlinux 0x2fc05fcf input_release_device +EXPORT_SYMBOL vmlinux 0x2fdad5c9 security_path_mknod +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2feaa411 ipmi_register_smi +EXPORT_SYMBOL vmlinux 0x2ff189dc dquot_scan_active +EXPORT_SYMBOL vmlinux 0x300cc5e9 neigh_seq_stop +EXPORT_SYMBOL vmlinux 0x3031887e elv_rb_former_request +EXPORT_SYMBOL vmlinux 0x3049615e get_super_thawed +EXPORT_SYMBOL vmlinux 0x3067a61c pcim_pin_device +EXPORT_SYMBOL vmlinux 0x307c2fd0 generic_check_addressable +EXPORT_SYMBOL vmlinux 0x307dd751 find_get_pages_contig +EXPORT_SYMBOL vmlinux 0x3082a0b3 dss_feat_get_supported_color_modes +EXPORT_SYMBOL vmlinux 0x308aad56 omap_vrfb_min_phys_size +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30afc010 proc_create_data +EXPORT_SYMBOL vmlinux 0x30cada8f radix_tree_next_hole +EXPORT_SYMBOL vmlinux 0x30e74134 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0x30e8a632 scsi_get_command +EXPORT_SYMBOL vmlinux 0x30eb636f neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0x30f98bd3 padata_remove_cpu +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x3105e8f6 inc_nlink +EXPORT_SYMBOL vmlinux 0x310917fe sort +EXPORT_SYMBOL vmlinux 0x3109c67a set_page_dirty +EXPORT_SYMBOL vmlinux 0x312824e0 hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x3132ee65 __nand_calculate_ecc +EXPORT_SYMBOL vmlinux 0x3138c2f4 sk_wait_data +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x3147857d default_red +EXPORT_SYMBOL vmlinux 0x315c65fd zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x315d3a34 from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x318472c1 nf_hook_slow +EXPORT_SYMBOL vmlinux 0x318cadb1 reciprocal_value +EXPORT_SYMBOL vmlinux 0x3191f109 __krealloc +EXPORT_SYMBOL vmlinux 0x31931363 nand_scan_tail +EXPORT_SYMBOL vmlinux 0x31a630ac udp_proc_unregister +EXPORT_SYMBOL vmlinux 0x31aceb45 phy_driver_register +EXPORT_SYMBOL vmlinux 0x31ae951c sock_get_timestampns +EXPORT_SYMBOL vmlinux 0x31b31f5c csum_partial_copy_nocheck +EXPORT_SYMBOL vmlinux 0x31b40dd7 dquot_alloc +EXPORT_SYMBOL vmlinux 0x31f0bb78 __kmap_atomic_idx +EXPORT_SYMBOL vmlinux 0x31f35366 dm_unregister_target +EXPORT_SYMBOL vmlinux 0x32024da4 omapdss_unregister_output +EXPORT_SYMBOL vmlinux 0x3206fc5a devm_gpio_free +EXPORT_SYMBOL vmlinux 0x3213dc50 dev_warn +EXPORT_SYMBOL vmlinux 0x322f48d4 abx500_dump_all_banks +EXPORT_SYMBOL vmlinux 0x3239de46 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0x3241bdec blkdev_put +EXPORT_SYMBOL vmlinux 0x32513091 generic_pipe_buf_steal +EXPORT_SYMBOL vmlinux 0x325c8dbc pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0x327912d3 ioctl_by_bdev +EXPORT_SYMBOL vmlinux 0x327a507a softnet_data +EXPORT_SYMBOL vmlinux 0x327bf883 of_can_translate_address +EXPORT_SYMBOL vmlinux 0x328a05f1 strncpy +EXPORT_SYMBOL vmlinux 0x32a37d1b page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x32a98451 read_dev_sector +EXPORT_SYMBOL vmlinux 0x32af17ca snd_add_device_sysfs_file +EXPORT_SYMBOL vmlinux 0x32d0a9bd ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x32df5669 security_d_instantiate +EXPORT_SYMBOL vmlinux 0x32df93c2 max8998_read_reg +EXPORT_SYMBOL vmlinux 0x32f529a5 kunmap +EXPORT_SYMBOL vmlinux 0x32f6da8c register_key_type +EXPORT_SYMBOL vmlinux 0x32fb7c4b tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x3303fb85 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0x331a41f6 pci_set_ltr +EXPORT_SYMBOL vmlinux 0x3330a47d gen_pool_free +EXPORT_SYMBOL vmlinux 0x3330b88f dquot_initialize +EXPORT_SYMBOL vmlinux 0x33440acb __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x337cce46 put_cmsg +EXPORT_SYMBOL vmlinux 0x337fa108 max8925_bulk_read +EXPORT_SYMBOL vmlinux 0x33802356 datagram_poll +EXPORT_SYMBOL vmlinux 0x33852963 simple_link +EXPORT_SYMBOL vmlinux 0x33855011 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0x3398e831 inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x33ba5cd4 param_ops_bool +EXPORT_SYMBOL vmlinux 0x33c7435c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x33dbfd93 tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x33dfb152 vfs_create +EXPORT_SYMBOL vmlinux 0x33e327bf __i2c_transfer +EXPORT_SYMBOL vmlinux 0x33e4b8f9 gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x33f93495 jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0x33fa362a uart_add_one_port +EXPORT_SYMBOL vmlinux 0x33fc1618 udp_add_offload +EXPORT_SYMBOL vmlinux 0x340ff8bd submit_bh +EXPORT_SYMBOL vmlinux 0x341257d1 neigh_connected_output +EXPORT_SYMBOL vmlinux 0x34184afe current_kernel_time +EXPORT_SYMBOL vmlinux 0x3418e3ca generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0x341dbfa3 __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x344931c8 textsearch_register +EXPORT_SYMBOL vmlinux 0x344b7739 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x344b7988 pneigh_enqueue +EXPORT_SYMBOL vmlinux 0x34542bda dquot_file_open +EXPORT_SYMBOL vmlinux 0x345e87be inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0x34681927 end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0x347013de nla_validate +EXPORT_SYMBOL vmlinux 0x347371f4 vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0x34747784 udp_disconnect +EXPORT_SYMBOL vmlinux 0x347591ef inet6_bind +EXPORT_SYMBOL vmlinux 0x347eb9bd param_set_bool +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34a60c14 tcp_shutdown +EXPORT_SYMBOL vmlinux 0x34c740d0 padata_start +EXPORT_SYMBOL vmlinux 0x34ccfe77 remove_proc_subtree +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34f402ef scsi_rescan_device +EXPORT_SYMBOL vmlinux 0x3507a132 _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0x350e934d __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x351d6d19 fb_get_mode +EXPORT_SYMBOL vmlinux 0x351d7584 register_netdevice +EXPORT_SYMBOL vmlinux 0x353e3fa5 __get_user_4 +EXPORT_SYMBOL vmlinux 0x3541da8e kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x35577077 dget_parent +EXPORT_SYMBOL vmlinux 0x35952c2e __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0x35a91933 simple_lookup +EXPORT_SYMBOL vmlinux 0x35ae62ec bdgrab +EXPORT_SYMBOL vmlinux 0x35b76c74 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0x35b83779 pm860x_page_reg_read +EXPORT_SYMBOL vmlinux 0x35ba3164 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0x35fbd6a1 __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0x3603eea7 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x360b1afe probe_irq_mask +EXPORT_SYMBOL vmlinux 0x360dcc38 scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0x3610ec8d key_task_permission +EXPORT_SYMBOL vmlinux 0x3612c10f tmio_core_mmc_enable +EXPORT_SYMBOL vmlinux 0x36203969 fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0x3621a865 key_reject_and_link +EXPORT_SYMBOL vmlinux 0x366f95a0 fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0x367ae924 swiotlb_sync_single_for_device +EXPORT_SYMBOL vmlinux 0x368382e2 of_get_named_gpiod_flags +EXPORT_SYMBOL vmlinux 0x36b55862 pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0x36ba2ae7 posix_test_lock +EXPORT_SYMBOL vmlinux 0x36bc81d5 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x36bd681b groups_alloc +EXPORT_SYMBOL vmlinux 0x36ca8177 proc_set_size +EXPORT_SYMBOL vmlinux 0x36d577c3 fasync_helper +EXPORT_SYMBOL vmlinux 0x36d7b11a of_find_matching_node_and_match +EXPORT_SYMBOL vmlinux 0x36dbee25 __destroy_inode +EXPORT_SYMBOL vmlinux 0x36e360e3 __hw_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x36ec1546 from_kuid_munged +EXPORT_SYMBOL vmlinux 0x36ee0d5f __getblk +EXPORT_SYMBOL vmlinux 0x36f9c858 jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0x37113b28 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x3764150a vga_tryget +EXPORT_SYMBOL vmlinux 0x377da04e sock_get_timestamp +EXPORT_SYMBOL vmlinux 0x3789bf12 dss_mgr_set_lcd_config +EXPORT_SYMBOL vmlinux 0x37952a4b tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL vmlinux 0x379b5afd iget_locked +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37e74642 get_jiffies_64 +EXPORT_SYMBOL vmlinux 0x37f614b7 __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x380b6329 bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x380eba85 console_start +EXPORT_SYMBOL vmlinux 0x380f1bd9 ilookup +EXPORT_SYMBOL vmlinux 0x381144a9 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x381c4dc7 twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0x3824878b find_or_create_page +EXPORT_SYMBOL vmlinux 0x38501b31 blk_recount_segments +EXPORT_SYMBOL vmlinux 0x385f0830 scsi_target_resume +EXPORT_SYMBOL vmlinux 0x386adc2d blk_queue_init_tags +EXPORT_SYMBOL vmlinux 0x3871815e bio_integrity_prep +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388f9128 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x38986677 xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x389acf0c gpmc_configure +EXPORT_SYMBOL vmlinux 0x38a70cac qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38ac9437 __dst_free +EXPORT_SYMBOL vmlinux 0x38b70738 key_alloc +EXPORT_SYMBOL vmlinux 0x38b7cc7e fifo_set_limit +EXPORT_SYMBOL vmlinux 0x38c0f97d nlmsg_notify +EXPORT_SYMBOL vmlinux 0x38c22be8 pci_choose_state +EXPORT_SYMBOL vmlinux 0x38c3015e dquot_transfer +EXPORT_SYMBOL vmlinux 0x38c52255 sock_no_mmap +EXPORT_SYMBOL vmlinux 0x38c97d50 idr_get_next +EXPORT_SYMBOL vmlinux 0x38e1f766 ip_ct_attach +EXPORT_SYMBOL vmlinux 0x3921d4ee cdrom_ioctl +EXPORT_SYMBOL vmlinux 0x3924dd56 try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x394e4079 i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0x395ce7b0 tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL vmlinux 0x397a365a input_register_device +EXPORT_SYMBOL vmlinux 0x39977d2e tty_port_close_start +EXPORT_SYMBOL vmlinux 0x39a99c0c pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x39b13d4f vm_insert_mixed +EXPORT_SYMBOL vmlinux 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL vmlinux 0x3a0e4714 mnt_unpin +EXPORT_SYMBOL vmlinux 0x3a1d1bd4 serio_close +EXPORT_SYMBOL vmlinux 0x3a1e19ce kern_path_create +EXPORT_SYMBOL vmlinux 0x3a9b6fb9 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x3abd54bb fput +EXPORT_SYMBOL vmlinux 0x3ad58fed pci_clear_mwi +EXPORT_SYMBOL vmlinux 0x3ae4faa6 dmam_release_declared_memory +EXPORT_SYMBOL vmlinux 0x3b0d8bfd netpoll_cleanup +EXPORT_SYMBOL vmlinux 0x3b1c8ad6 snd_ctl_new1 +EXPORT_SYMBOL vmlinux 0x3b30bfd4 arp_tbl +EXPORT_SYMBOL vmlinux 0x3b310f9e blk_requeue_request +EXPORT_SYMBOL vmlinux 0x3b37ded1 devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x3b91f3af snd_free_pages +EXPORT_SYMBOL vmlinux 0x3b9226b7 unregister_filesystem +EXPORT_SYMBOL vmlinux 0x3b9ce6b1 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x3b9f0656 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x3ba91e69 bio_phys_segments +EXPORT_SYMBOL vmlinux 0x3bbf46ea vga_base +EXPORT_SYMBOL vmlinux 0x3bce25d0 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0x3bd1b1f6 msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x3bd3c76c write_dirty_buffer +EXPORT_SYMBOL vmlinux 0x3be41644 bdev_stack_limits +EXPORT_SYMBOL vmlinux 0x3bef03b9 flow_cache_lookup +EXPORT_SYMBOL vmlinux 0x3c0c4af5 sk_reset_timer +EXPORT_SYMBOL vmlinux 0x3c268b39 snd_jack_set_key +EXPORT_SYMBOL vmlinux 0x3c500e86 alloc_fddidev +EXPORT_SYMBOL vmlinux 0x3c7515a0 km_new_mapping +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c9d1211 string_get_size +EXPORT_SYMBOL vmlinux 0x3ca38a89 __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0x3ccb8c42 generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0x3ce01b9a cdev_alloc +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3cff4bdc udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0x3d3c540f elf_hwcap +EXPORT_SYMBOL vmlinux 0x3d41904f of_get_next_child +EXPORT_SYMBOL vmlinux 0x3d44eb37 update_region +EXPORT_SYMBOL vmlinux 0x3da11a1c stop_tty +EXPORT_SYMBOL vmlinux 0x3daccb06 kfree_skb_partial +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3debd993 dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x3df43a9b jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e18860a devm_iounmap +EXPORT_SYMBOL vmlinux 0x3e1d50c8 md_flush_request +EXPORT_SYMBOL vmlinux 0x3e238b70 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0x3e241f05 inet_frags_exit_net +EXPORT_SYMBOL vmlinux 0x3e245cd4 swiotlb_unmap_sg_attrs +EXPORT_SYMBOL vmlinux 0x3e34b5a3 htc_egpio_get_wakeup_irq +EXPORT_SYMBOL vmlinux 0x3e3b39e1 swiotlb_unmap_sg +EXPORT_SYMBOL vmlinux 0x3e5aaf1e unregister_binfmt +EXPORT_SYMBOL vmlinux 0x3e6f9367 i2c_master_send +EXPORT_SYMBOL vmlinux 0x3e7ada07 phy_stop_interrupts +EXPORT_SYMBOL vmlinux 0x3e884f4b vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x3e906cb4 xfrm6_prepare_output +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3eb1562c generic_fillattr +EXPORT_SYMBOL vmlinux 0x3ec22c86 mem_cgroup_subsys +EXPORT_SYMBOL vmlinux 0x3ed22e91 netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0x3ed63055 zlib_inflateReset +EXPORT_SYMBOL vmlinux 0x3edeae7d soft_cursor +EXPORT_SYMBOL vmlinux 0x3ee53016 __block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x3ee6cf7e sock_create_lite +EXPORT_SYMBOL vmlinux 0x3f115c9f scsi_unregister +EXPORT_SYMBOL vmlinux 0x3f42121d mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f5b67d5 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x3f69acd7 block_write_full_page_endio +EXPORT_SYMBOL vmlinux 0x3f69fc2a neigh_event_ns +EXPORT_SYMBOL vmlinux 0x3f71be2b dm_io +EXPORT_SYMBOL vmlinux 0x3fa6ec42 ipv4_specific +EXPORT_SYMBOL vmlinux 0x3fab3ca9 register_sysctl_table +EXPORT_SYMBOL vmlinux 0x3fc2bef6 pm860x_set_bits +EXPORT_SYMBOL vmlinux 0x3fd187ee xfrm_prepare_input +EXPORT_SYMBOL vmlinux 0x3fd55724 of_n_size_cells +EXPORT_SYMBOL vmlinux 0x3ff199d5 __invalidate_device +EXPORT_SYMBOL vmlinux 0x3ff62317 local_bh_disable +EXPORT_SYMBOL vmlinux 0x3ffd1e4e fb_blank +EXPORT_SYMBOL vmlinux 0x401c1cce seq_open +EXPORT_SYMBOL vmlinux 0x402b8281 __request_module +EXPORT_SYMBOL vmlinux 0x403aed04 thaw_bdev +EXPORT_SYMBOL vmlinux 0x403f079e simple_readpage +EXPORT_SYMBOL vmlinux 0x403f2c5f eth_mac_addr +EXPORT_SYMBOL vmlinux 0x4048dc58 snd_ctl_boolean_mono_info +EXPORT_SYMBOL vmlinux 0x404940fc dev_addr_add +EXPORT_SYMBOL vmlinux 0x405200ef read_cache_page_async +EXPORT_SYMBOL vmlinux 0x4059792f print_hex_dump +EXPORT_SYMBOL vmlinux 0x405c1144 get_seconds +EXPORT_SYMBOL vmlinux 0x405c2457 update_time +EXPORT_SYMBOL vmlinux 0x407136b1 __put_user_8 +EXPORT_SYMBOL vmlinux 0x407a3275 omap_start_dma +EXPORT_SYMBOL vmlinux 0x4081705b force_sig +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409873e3 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x40a27c37 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x40a2d1dd dm_table_get_size +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40ad27ab mmc_remove_host +EXPORT_SYMBOL vmlinux 0x40b6b595 sync_inode +EXPORT_SYMBOL vmlinux 0x40c01859 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40ce485b mempool_resize +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40dcd30f pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x40e3cb19 dispc_ovl_check +EXPORT_SYMBOL vmlinux 0x40ed524a _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0x40f07981 __ashldi3 +EXPORT_SYMBOL vmlinux 0x40f2b10c ipmi_alloc_smi_msg +EXPORT_SYMBOL vmlinux 0x40fd8284 create_empty_buffers +EXPORT_SYMBOL vmlinux 0x413c6a17 nf_log_unset +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x418253be netif_device_attach +EXPORT_SYMBOL vmlinux 0x4187b801 dst_alloc +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x418fdbf6 scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x41a85d1a bio_unmap_user +EXPORT_SYMBOL vmlinux 0x41acaf28 sys_copyarea +EXPORT_SYMBOL vmlinux 0x41e30411 pci_get_slot +EXPORT_SYMBOL vmlinux 0x4207cb5b ipmi_smi_watcher_unregister +EXPORT_SYMBOL vmlinux 0x4211c3c1 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x4214e2b9 irq_to_desc +EXPORT_SYMBOL vmlinux 0x4237579b dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0x423b776a ipmi_create_user +EXPORT_SYMBOL vmlinux 0x42545a05 i2c_master_recv +EXPORT_SYMBOL vmlinux 0x4256e934 mark_page_accessed +EXPORT_SYMBOL vmlinux 0x42685a07 pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0x428db061 tty_unregister_driver +EXPORT_SYMBOL vmlinux 0x42977ad4 __hw_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x4298b775 v7_flush_kern_cache_all +EXPORT_SYMBOL vmlinux 0x42a1b208 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x42b8d505 generic_pipe_buf_map +EXPORT_SYMBOL vmlinux 0x42c0ac4f names_cachep +EXPORT_SYMBOL vmlinux 0x42cc1fab pci_request_region +EXPORT_SYMBOL vmlinux 0x42e32f8b neigh_destroy +EXPORT_SYMBOL vmlinux 0x42e47138 scsi_allocate_command +EXPORT_SYMBOL vmlinux 0x42f8acdb pcim_iomap +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x4340ae8a mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x435db76a vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0x43603911 vfs_rmdir +EXPORT_SYMBOL vmlinux 0x43632d7d of_find_property +EXPORT_SYMBOL vmlinux 0x4381914f scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x43b85e15 __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x43bfd4f7 simple_fill_super +EXPORT_SYMBOL vmlinux 0x43f23311 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x43f49045 map_destroy +EXPORT_SYMBOL vmlinux 0x43f517f1 xfrm4_rcv +EXPORT_SYMBOL vmlinux 0x4404658c fib_default_rule_add +EXPORT_SYMBOL vmlinux 0x4411c503 prandom_seed +EXPORT_SYMBOL vmlinux 0x441e35db netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0x441ed159 omap_get_dma_src_pos +EXPORT_SYMBOL vmlinux 0x442495c9 tmio_core_mmc_resume +EXPORT_SYMBOL vmlinux 0x442af980 pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0x44366cfc simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0x44438b96 hex2bin +EXPORT_SYMBOL vmlinux 0x44471732 vfs_path_lookup +EXPORT_SYMBOL vmlinux 0x44643b93 __aeabi_lmul +EXPORT_SYMBOL vmlinux 0x447b9e0e mdiobus_read +EXPORT_SYMBOL vmlinux 0x44915a29 snd_pcm_suspend_all +EXPORT_SYMBOL vmlinux 0x44affe27 blk_start_queue +EXPORT_SYMBOL vmlinux 0x44b233ad clear_bdi_congested +EXPORT_SYMBOL vmlinux 0x44b4c163 sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x44c40b1a xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0x44cd1332 tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x44da5d0f __csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0x44dd3d8d completion_done +EXPORT_SYMBOL vmlinux 0x44e45f13 blk_put_request +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44f12171 mmc_fixup_device +EXPORT_SYMBOL vmlinux 0x44f5e8b5 of_allnodes +EXPORT_SYMBOL vmlinux 0x45297b35 bio_integrity_advance +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x45416049 ip6_route_output +EXPORT_SYMBOL vmlinux 0x455293f6 down_read +EXPORT_SYMBOL vmlinux 0x457003e2 blk_put_queue +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x4599e737 abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x45a6be13 cpufreq_sysfs_remove_file +EXPORT_SYMBOL vmlinux 0x45afd42b net_dma_find_channel +EXPORT_SYMBOL vmlinux 0x45bda0d5 system_serial_low +EXPORT_SYMBOL vmlinux 0x46008c31 dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x460238e6 pci_release_region +EXPORT_SYMBOL vmlinux 0x460c177b __nlmsg_put +EXPORT_SYMBOL vmlinux 0x462a2e75 match_strlcpy +EXPORT_SYMBOL vmlinux 0x462b7285 wireless_send_event +EXPORT_SYMBOL vmlinux 0x464299c8 xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x465757c3 cpu_present_mask +EXPORT_SYMBOL vmlinux 0x465cab34 secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0x46608fa0 getnstimeofday +EXPORT_SYMBOL vmlinux 0x46615be5 vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0x467bb2f3 kset_unregister +EXPORT_SYMBOL vmlinux 0x468b47eb kernel_getsockopt +EXPORT_SYMBOL vmlinux 0x46b65b50 inet_sendmsg +EXPORT_SYMBOL vmlinux 0x46c40259 tty_do_resize +EXPORT_SYMBOL vmlinux 0x46d3b28c __div0 +EXPORT_SYMBOL vmlinux 0x46e5f910 dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0x46e6158b blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0x46ebafd1 scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0x46eee4a0 i2c_release_client +EXPORT_SYMBOL vmlinux 0x46fa8cbe fb_set_cmap +EXPORT_SYMBOL vmlinux 0x46feb099 dm_read_arg +EXPORT_SYMBOL vmlinux 0x4710bf67 blk_queue_free_tags +EXPORT_SYMBOL vmlinux 0x47173932 d_path +EXPORT_SYMBOL vmlinux 0x4726e7c9 inet6_protos +EXPORT_SYMBOL vmlinux 0x472add66 from_kprojid +EXPORT_SYMBOL vmlinux 0x4735deb0 __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x473d54a9 mmc_can_erase +EXPORT_SYMBOL vmlinux 0x47416e14 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x4759900d vfs_getattr +EXPORT_SYMBOL vmlinux 0x47804be3 ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x47918121 d_validate +EXPORT_SYMBOL vmlinux 0x47922e4a neigh_app_ns +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x4794c3e4 generic_file_open +EXPORT_SYMBOL vmlinux 0x479d98a4 blk_get_backing_dev_info +EXPORT_SYMBOL vmlinux 0x47a7af11 snd_info_create_card_entry +EXPORT_SYMBOL vmlinux 0x47b3f862 radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x47b6a10f ftrace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0x47bcf84c param_set_ulong +EXPORT_SYMBOL vmlinux 0x47c8baf4 param_ops_uint +EXPORT_SYMBOL vmlinux 0x47d65db8 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0x47e2459d pci_claim_resource +EXPORT_SYMBOL vmlinux 0x47e70229 v7_flush_user_cache_range +EXPORT_SYMBOL vmlinux 0x47ee2e86 km_policy_expired +EXPORT_SYMBOL vmlinux 0x47f757de elf_platform +EXPORT_SYMBOL vmlinux 0x48034724 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x48035fc2 __lru_cache_add +EXPORT_SYMBOL vmlinux 0x481ce6ce cpu_active_mask +EXPORT_SYMBOL vmlinux 0x481e3344 tc6393xb_lcd_set_power +EXPORT_SYMBOL vmlinux 0x481e62d0 blk_free_tags +EXPORT_SYMBOL vmlinux 0x482a2a49 param_set_charp +EXPORT_SYMBOL vmlinux 0x4835f5da pci_save_state +EXPORT_SYMBOL vmlinux 0x483b3427 mmc_start_bkops +EXPORT_SYMBOL vmlinux 0x484c0c4c f_setown +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x485fac44 input_inject_event +EXPORT_SYMBOL vmlinux 0x486a5f40 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x4881d505 idr_for_each +EXPORT_SYMBOL vmlinux 0x488882e7 downgrade_write +EXPORT_SYMBOL vmlinux 0x48a306f3 bio_uncopy_user +EXPORT_SYMBOL vmlinux 0x48a5b067 __machine_arch_type +EXPORT_SYMBOL vmlinux 0x48ab2b79 snd_timer_interrupt +EXPORT_SYMBOL vmlinux 0x48c56d62 generic_setlease +EXPORT_SYMBOL vmlinux 0x48c6db53 of_get_child_by_name +EXPORT_SYMBOL vmlinux 0x48cc5ec5 netdev_err +EXPORT_SYMBOL vmlinux 0x48d40162 do_splice_from +EXPORT_SYMBOL vmlinux 0x48dd1ae9 rt6_lookup +EXPORT_SYMBOL vmlinux 0x48ec95d2 snd_card_register +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x49368424 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0x494d242a genphy_resume +EXPORT_SYMBOL vmlinux 0x494f48e5 scsi_mode_sense +EXPORT_SYMBOL vmlinux 0x495c96f8 posix_acl_init +EXPORT_SYMBOL vmlinux 0x49603fb8 security_sb_copy_data +EXPORT_SYMBOL vmlinux 0x4962af74 elm_decode_bch_error_page +EXPORT_SYMBOL vmlinux 0x4964d489 unregister_mtd_chip_driver +EXPORT_SYMBOL vmlinux 0x499bac5d cfb_copyarea +EXPORT_SYMBOL vmlinux 0x499cb58c prepare_to_wait +EXPORT_SYMBOL vmlinux 0x49b07aec tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x49ebacbd _clear_bit +EXPORT_SYMBOL vmlinux 0x4a1bbd01 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0x4a2de80b dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0x4a358252 __bitmap_subset +EXPORT_SYMBOL vmlinux 0x4a39e5a1 omap_set_dma_src_params +EXPORT_SYMBOL vmlinux 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL vmlinux 0x4a57b339 wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x4a7c3f94 inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x4a7fb243 percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x4a8f1d6a generic_write_end +EXPORT_SYMBOL vmlinux 0x4ab31840 nand_scan_ident +EXPORT_SYMBOL vmlinux 0x4ab50664 kill_fasync +EXPORT_SYMBOL vmlinux 0x4ac87a42 inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0x4af7027b serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0x4afe9a77 scsi_partsize +EXPORT_SYMBOL vmlinux 0x4b015768 snd_iprintf +EXPORT_SYMBOL vmlinux 0x4b1ec3e2 kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x4b26d717 devm_clk_get +EXPORT_SYMBOL vmlinux 0x4b34fbf5 block_all_signals +EXPORT_SYMBOL vmlinux 0x4b48f3db block_truncate_page +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b66a1da pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0x4b804a7b amba_device_unregister +EXPORT_SYMBOL vmlinux 0x4ba74f89 single_release +EXPORT_SYMBOL vmlinux 0x4bb88476 ip6_expire_frag_queue +EXPORT_SYMBOL vmlinux 0x4bbafc47 tty_register_driver +EXPORT_SYMBOL vmlinux 0x4be7fb63 up +EXPORT_SYMBOL vmlinux 0x4be85a03 memweight +EXPORT_SYMBOL vmlinux 0x4c012564 dqput +EXPORT_SYMBOL vmlinux 0x4c07b393 netpoll_rx_enable +EXPORT_SYMBOL vmlinux 0x4c1182cb bitmap_scnprintf +EXPORT_SYMBOL vmlinux 0x4c233a44 _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0x4c259e26 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x4c2a9f52 kernel_write +EXPORT_SYMBOL vmlinux 0x4c2ae700 strnstr +EXPORT_SYMBOL vmlinux 0x4c33081d omapdss_compat_uninit +EXPORT_SYMBOL vmlinux 0x4c5fc58c _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0x4c86184b remove_wait_queue +EXPORT_SYMBOL vmlinux 0x4c8cef17 generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x4c971bec ipmi_smi_msg_received +EXPORT_SYMBOL vmlinux 0x4cab92d9 mmc_hw_reset +EXPORT_SYMBOL vmlinux 0x4cbbd171 __bitmap_weight +EXPORT_SYMBOL vmlinux 0x4cc2854d tegra114_clock_assert_dfll_dvco_reset +EXPORT_SYMBOL vmlinux 0x4cdb3178 ns_to_timeval +EXPORT_SYMBOL vmlinux 0x4d0d163d copy_page +EXPORT_SYMBOL vmlinux 0x4d30e577 sock_rfree +EXPORT_SYMBOL vmlinux 0x4d3c153f sigprocmask +EXPORT_SYMBOL vmlinux 0x4d45d89e udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x4d656917 tty_lock +EXPORT_SYMBOL vmlinux 0x4d83b295 sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x4d936093 dss_install_mgr_ops +EXPORT_SYMBOL vmlinux 0x4d974b9c register_sysrq_key +EXPORT_SYMBOL vmlinux 0x4d9941d3 snd_ctl_remove +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4d9b6d35 snd_pcm_format_size +EXPORT_SYMBOL vmlinux 0x4d9f424c md_unregister_thread +EXPORT_SYMBOL vmlinux 0x4dac7343 ppp_dev_name +EXPORT_SYMBOL vmlinux 0x4db3b201 ata_print_version +EXPORT_SYMBOL vmlinux 0x4de34a07 cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x4dea21d0 input_open_device +EXPORT_SYMBOL vmlinux 0x4dec6038 memscan +EXPORT_SYMBOL vmlinux 0x4df119fa __bitmap_parse +EXPORT_SYMBOL vmlinux 0x4df256f4 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0x4df4b4e3 snd_pcm_new +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e506013 omap_dma_link_lch +EXPORT_SYMBOL vmlinux 0x4e52e809 bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0x4e66e41f dev_printk +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6a7aeb lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e7efdb8 security_inode_readlink +EXPORT_SYMBOL vmlinux 0x4e7f07ed bioset_integrity_create +EXPORT_SYMBOL vmlinux 0x4e830a3e strnicmp +EXPORT_SYMBOL vmlinux 0x4e9ce9f9 edma_link +EXPORT_SYMBOL vmlinux 0x4ea35e98 i2c_verify_client +EXPORT_SYMBOL vmlinux 0x4eb1dc03 abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0x4ed3974c xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x4ee7095e pci_remove_bus +EXPORT_SYMBOL vmlinux 0x4f0ec776 pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0x4f1706a3 __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f248523 of_find_node_by_name +EXPORT_SYMBOL vmlinux 0x4f391d0e nla_parse +EXPORT_SYMBOL vmlinux 0x4f476e96 init_cdrom_command +EXPORT_SYMBOL vmlinux 0x4f62e77b register_md_personality +EXPORT_SYMBOL vmlinux 0x4f68e5c9 do_gettimeofday +EXPORT_SYMBOL vmlinux 0x4f717ae3 __inet_stream_connect +EXPORT_SYMBOL vmlinux 0x4f7a1796 blk_queue_bounce +EXPORT_SYMBOL vmlinux 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL vmlinux 0x4f89c9de gpmc_cs_free +EXPORT_SYMBOL vmlinux 0x4fb01a4f inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0x4fb6bf22 inet6_add_offload +EXPORT_SYMBOL vmlinux 0x4fc7e29f blk_queue_unprep_rq +EXPORT_SYMBOL vmlinux 0x4fd27700 proto_register +EXPORT_SYMBOL vmlinux 0x4ff19b94 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x50292607 dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x50530c82 block_write_begin +EXPORT_SYMBOL vmlinux 0x505c9e32 bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0x5072a4a6 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x507b76ea filemap_fault +EXPORT_SYMBOL vmlinux 0x508bcd9f __vexpress_config_func_get +EXPORT_SYMBOL vmlinux 0x508ea82d __ip_select_ident +EXPORT_SYMBOL vmlinux 0x508ef970 del_gendisk +EXPORT_SYMBOL vmlinux 0x5090c035 pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0x509817cf vprintk_emit +EXPORT_SYMBOL vmlinux 0x50add80b napi_complete +EXPORT_SYMBOL vmlinux 0x50caf0d4 pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0x50ccff03 omap_dma_set_prio_lch +EXPORT_SYMBOL vmlinux 0x50cf35d8 nand_bch_calculate_ecc +EXPORT_SYMBOL vmlinux 0x50d5612e dispc_mgr_get_sync_lost_irq +EXPORT_SYMBOL vmlinux 0x50d84767 get_phy_device +EXPORT_SYMBOL vmlinux 0x50ec6d33 simple_map_init +EXPORT_SYMBOL vmlinux 0x50f4292c snd_pcm_lib_ioctl +EXPORT_SYMBOL vmlinux 0x50f63b00 vfs_readv +EXPORT_SYMBOL vmlinux 0x5112383e elv_abort_queue +EXPORT_SYMBOL vmlinux 0x511746c1 dump_fpu +EXPORT_SYMBOL vmlinux 0x5118c382 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0x512b0fff __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0x5148abf5 sock_init_data +EXPORT_SYMBOL vmlinux 0x51565bc2 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0x5169161d omap_free_dma_chain +EXPORT_SYMBOL vmlinux 0x518cf039 dev_remove_offload +EXPORT_SYMBOL vmlinux 0x518f8d9d get_super +EXPORT_SYMBOL vmlinux 0x51908eb8 __raw_writesl +EXPORT_SYMBOL vmlinux 0x519c9367 vfs_fsync +EXPORT_SYMBOL vmlinux 0x51cedd15 blk_make_request +EXPORT_SYMBOL vmlinux 0x51d559d1 _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x51d81bf4 vfs_read +EXPORT_SYMBOL vmlinux 0x51dce73b xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x51e77c97 pfn_valid +EXPORT_SYMBOL vmlinux 0x51ef33b8 kstrndup +EXPORT_SYMBOL vmlinux 0x52026cdf security_sb_parse_opts_str +EXPORT_SYMBOL vmlinux 0x520910ca xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0x52151526 input_flush_device +EXPORT_SYMBOL vmlinux 0x521b36b5 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0x521b4368 mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x52428cc8 parent_mem_cgroup +EXPORT_SYMBOL vmlinux 0x524f6f51 ipmi_get_my_address +EXPORT_SYMBOL vmlinux 0x525313f6 skb_clone +EXPORT_SYMBOL vmlinux 0x52703692 vfs_unlink +EXPORT_SYMBOL vmlinux 0x5279d35d _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL vmlinux 0x528425fb blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0x528c709d simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x52c48222 xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0x52c901ca redraw_screen +EXPORT_SYMBOL vmlinux 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL vmlinux 0x52e755c5 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x53326531 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x53455334 rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0x5356813f cdrom_media_changed +EXPORT_SYMBOL vmlinux 0x535b5531 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0x535f2409 sock_no_accept +EXPORT_SYMBOL vmlinux 0x536f3d89 pci_disable_msi +EXPORT_SYMBOL vmlinux 0x536f9597 get_fs_type +EXPORT_SYMBOL vmlinux 0x537ee437 mpage_writepages +EXPORT_SYMBOL vmlinux 0x539d4322 register_quota_format +EXPORT_SYMBOL vmlinux 0x53bb01e2 vm_stat +EXPORT_SYMBOL vmlinux 0x53bed8c2 tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0x53d0ee77 __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x53fdc559 dma_mark_declared_memory_occupied +EXPORT_SYMBOL vmlinux 0x5408be92 dev_addr_del +EXPORT_SYMBOL vmlinux 0x5409775b free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x543752be pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0x543e13c0 truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x5461a3b4 pcie_set_mps +EXPORT_SYMBOL vmlinux 0x547077ec __wake_up_bit +EXPORT_SYMBOL vmlinux 0x547ce898 dispc_read_irqenable +EXPORT_SYMBOL vmlinux 0x547d4259 devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0x547fad54 jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0x5482aa55 dev_change_flags +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54b20a48 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0x54e3cc3b param_get_int +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54f6830a omapdss_get_default_display_name +EXPORT_SYMBOL vmlinux 0x54f8c783 init_net +EXPORT_SYMBOL vmlinux 0x54fc9005 inet_frag_maybe_warn_overflow +EXPORT_SYMBOL vmlinux 0x55068bff pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x553b5b1e console_stop +EXPORT_SYMBOL vmlinux 0x5541ea93 on_each_cpu +EXPORT_SYMBOL vmlinux 0x5567c227 kernel_cpustat +EXPORT_SYMBOL vmlinux 0x556c2740 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x5588e545 iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0x55902d4c inetdev_by_index +EXPORT_SYMBOL vmlinux 0x5594be03 bitmap_remap +EXPORT_SYMBOL vmlinux 0x55a50462 cdev_add +EXPORT_SYMBOL vmlinux 0x55a8d7d0 generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x55b094c4 vfs_symlink +EXPORT_SYMBOL vmlinux 0x55b5324d unlock_buffer +EXPORT_SYMBOL vmlinux 0x55c016a5 registered_fb +EXPORT_SYMBOL vmlinux 0x55ddbef0 inode_set_bytes +EXPORT_SYMBOL vmlinux 0x55dfbdc0 __scsi_add_device +EXPORT_SYMBOL vmlinux 0x55ec4a7c inet_listen +EXPORT_SYMBOL vmlinux 0x55f5ddc9 input_event +EXPORT_SYMBOL vmlinux 0x560147fd edma_unlink +EXPORT_SYMBOL vmlinux 0x5614b010 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x5628b5fc skb_push +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x5642793a radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x56789ac5 omap_set_dma_color_mode +EXPORT_SYMBOL vmlinux 0x5689afe7 dispc_ovl_enable +EXPORT_SYMBOL vmlinux 0x56993f5f abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0x569964ae sys_fillrect +EXPORT_SYMBOL vmlinux 0x569c71f2 ip6_xmit +EXPORT_SYMBOL vmlinux 0x56aee05c scsi_print_sense +EXPORT_SYMBOL vmlinux 0x56bc2f15 dispc_ovl_set_channel_out +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56e135ec bdi_unregister +EXPORT_SYMBOL vmlinux 0x56e38a8d try_to_writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0x56f0896f tegra_periph_reset_assert +EXPORT_SYMBOL vmlinux 0x5704074a netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0x5706f041 jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0x5720a2e6 inet_frags_init +EXPORT_SYMBOL vmlinux 0x572e85d4 blk_lookup_devt +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x576f00de tty_port_hangup +EXPORT_SYMBOL vmlinux 0x57717c19 sk_release_kernel +EXPORT_SYMBOL vmlinux 0x57906d05 sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0x57928c7d __frontswap_load +EXPORT_SYMBOL vmlinux 0x57a31e57 nand_flash_ids +EXPORT_SYMBOL vmlinux 0x57ac29b5 sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x57af1a76 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0x57b5381a generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x57d54143 d_set_d_op +EXPORT_SYMBOL vmlinux 0x57e2e5d2 freeze_bdev +EXPORT_SYMBOL vmlinux 0x57fca37f inet_accept +EXPORT_SYMBOL vmlinux 0x580120a0 inet_recvmsg +EXPORT_SYMBOL vmlinux 0x5834f0b3 sk_stop_timer +EXPORT_SYMBOL vmlinux 0x5836f2ad netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0x5838beef genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x58516557 omap_set_dma_src_data_pack +EXPORT_SYMBOL vmlinux 0x587616f1 vfs_fstatat +EXPORT_SYMBOL vmlinux 0x588c130c vexpress_config_func_put +EXPORT_SYMBOL vmlinux 0x58c16de5 nla_append +EXPORT_SYMBOL vmlinux 0x58c74db8 __serio_register_driver +EXPORT_SYMBOL vmlinux 0x58d1070a of_get_address +EXPORT_SYMBOL vmlinux 0x58d80307 abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0x5913802f genl_unregister_family +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x594e1317 __modsi3 +EXPORT_SYMBOL vmlinux 0x595797b6 from_kgid +EXPORT_SYMBOL vmlinux 0x5971e0bf generic_file_splice_read +EXPORT_SYMBOL vmlinux 0x598542b2 _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0x598cd828 udp_table +EXPORT_SYMBOL vmlinux 0x59a17bfc tegra114_clock_tune_cpu_trimmers_high +EXPORT_SYMBOL vmlinux 0x59a715a8 snd_pcm_lib_write +EXPORT_SYMBOL vmlinux 0x59a74aad twl6040_set_pll +EXPORT_SYMBOL vmlinux 0x59a903fa devm_ioremap +EXPORT_SYMBOL vmlinux 0x59abe44c scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0x59bf5b17 dm_get_device +EXPORT_SYMBOL vmlinux 0x59d29dab v7_flush_kern_dcache_area +EXPORT_SYMBOL vmlinux 0x59d8223a ioport_resource +EXPORT_SYMBOL vmlinux 0x59e5070d __do_div64 +EXPORT_SYMBOL vmlinux 0x5a161399 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0x5a5536c2 param_ops_invbool +EXPORT_SYMBOL vmlinux 0x5a5cea7c pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0x5a714f34 sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0x5a912ec0 xfrm_state_walk +EXPORT_SYMBOL vmlinux 0x5aa3bf80 md_register_thread +EXPORT_SYMBOL vmlinux 0x5aac7d35 __elv_add_request +EXPORT_SYMBOL vmlinux 0x5ab3c92d input_register_handler +EXPORT_SYMBOL vmlinux 0x5ada26a2 snd_pcm_lib_writev +EXPORT_SYMBOL vmlinux 0x5ae5be44 lg_lock_init +EXPORT_SYMBOL vmlinux 0x5ae996d1 pci_set_power_state +EXPORT_SYMBOL vmlinux 0x5b024162 napi_get_frags +EXPORT_SYMBOL vmlinux 0x5b11e34b scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0x5b154d5e ppp_input +EXPORT_SYMBOL vmlinux 0x5b19634d div_s64_rem +EXPORT_SYMBOL vmlinux 0x5b27bc61 scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0x5b2ca7b8 nobh_truncate_page +EXPORT_SYMBOL vmlinux 0x5b3219f5 d_splice_alias +EXPORT_SYMBOL vmlinux 0x5b38634d gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x5b5745f8 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0x5b72009f ida_simple_get +EXPORT_SYMBOL vmlinux 0x5b8bca75 phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0x5b8ffc09 ptp_clock_event +EXPORT_SYMBOL vmlinux 0x5baaf8ba __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0x5bae4373 put_tty_driver +EXPORT_SYMBOL vmlinux 0x5bb9daec __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0x5bba1ece flush_signals +EXPORT_SYMBOL vmlinux 0x5bcebdfb scm_fp_dup +EXPORT_SYMBOL vmlinux 0x5be631c8 pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x5c0b88a0 i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0x5c1a2bc7 ipv6_select_ident +EXPORT_SYMBOL vmlinux 0x5c1c8264 pci_disable_msix +EXPORT_SYMBOL vmlinux 0x5c20f69b dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x5c22b9e5 pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x5c265cba sg_init_one +EXPORT_SYMBOL vmlinux 0x5c298b74 genlmsg_put +EXPORT_SYMBOL vmlinux 0x5c2f39e3 input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0x5c395899 dump_skip +EXPORT_SYMBOL vmlinux 0x5c5a1515 pci_enable_ido +EXPORT_SYMBOL vmlinux 0x5c7b0092 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x5c85ee91 input_close_device +EXPORT_SYMBOL vmlinux 0x5c9284a0 processor_id +EXPORT_SYMBOL vmlinux 0x5cc1269e lock_may_write +EXPORT_SYMBOL vmlinux 0x5cc80065 snd_timer_stop +EXPORT_SYMBOL vmlinux 0x5cc8fff3 kmap_to_page +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5d0f7876 update_devfreq +EXPORT_SYMBOL vmlinux 0x5d1d039f release_sock +EXPORT_SYMBOL vmlinux 0x5d1ef9b3 xfrm_register_km +EXPORT_SYMBOL vmlinux 0x5d2b4c4d qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0x5d2c8adf snd_timer_continue +EXPORT_SYMBOL vmlinux 0x5d41c87c param_ops_charp +EXPORT_SYMBOL vmlinux 0x5d550c4d scsi_sd_probe_domain +EXPORT_SYMBOL vmlinux 0x5d5b5a16 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x5d680559 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x5d752bd5 sync_inode_metadata +EXPORT_SYMBOL vmlinux 0x5d79964d send_sig_info +EXPORT_SYMBOL vmlinux 0x5d87edf6 sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0x5d891a64 idr_destroy +EXPORT_SYMBOL vmlinux 0x5d8ecb06 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0x5da210e1 kobject_init +EXPORT_SYMBOL vmlinux 0x5daa2031 netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x5deb2cf3 nla_put +EXPORT_SYMBOL vmlinux 0x5df64462 pid_task +EXPORT_SYMBOL vmlinux 0x5e2a0911 snd_ctl_boolean_stereo_info +EXPORT_SYMBOL vmlinux 0x5e3e7dc6 blk_end_request +EXPORT_SYMBOL vmlinux 0x5e426bda locks_init_lock +EXPORT_SYMBOL vmlinux 0x5e60eb27 omap_dma_unlink_lch +EXPORT_SYMBOL vmlinux 0x5e7e69e9 dev_uc_flush +EXPORT_SYMBOL vmlinux 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL vmlinux 0x5e80f37c ipmi_unregister_for_cmd +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5eae67db cfb_fillrect +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5eb7705f input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0x5ec6ad7f bio_integrity_set_tag +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ed69c6f snd_device_free +EXPORT_SYMBOL vmlinux 0x5ef1ff2f blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0x5f005368 kstrtou8 +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f27323c _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x5f36f380 tty_port_close +EXPORT_SYMBOL vmlinux 0x5f3c8f5c mmc_assume_removable +EXPORT_SYMBOL vmlinux 0x5f53ffd4 ip_check_defrag +EXPORT_SYMBOL vmlinux 0x5f58f676 flex_array_get_ptr +EXPORT_SYMBOL vmlinux 0x5f5f5fae dst_release +EXPORT_SYMBOL vmlinux 0x5f61b616 from_kgid_munged +EXPORT_SYMBOL vmlinux 0x5f653fb2 dev_get_by_flags_rcu +EXPORT_SYMBOL vmlinux 0x5f687bd8 simple_rename +EXPORT_SYMBOL vmlinux 0x5f754e5a memset +EXPORT_SYMBOL vmlinux 0x5faa8010 dmam_declare_coherent_memory +EXPORT_SYMBOL vmlinux 0x5fcdcc05 ipmi_get_my_LUN +EXPORT_SYMBOL vmlinux 0x5fcef7c2 blk_init_tags +EXPORT_SYMBOL vmlinux 0x5fda0227 vfs_stat +EXPORT_SYMBOL vmlinux 0x5ff11cc3 pcibios_min_io +EXPORT_SYMBOL vmlinux 0x600416b2 set_security_override +EXPORT_SYMBOL vmlinux 0x60055baa dispc_mgr_get_vsync_irq +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x602c96f0 copy_to_user_fromio +EXPORT_SYMBOL vmlinux 0x602de41f neigh_seq_start +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x60384165 dm_kobject_release +EXPORT_SYMBOL vmlinux 0x60541702 edma_alloc_slot +EXPORT_SYMBOL vmlinux 0x605b1c99 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0x605daa01 dmam_pool_create +EXPORT_SYMBOL vmlinux 0x606b5bf0 mb_cache_entry_release +EXPORT_SYMBOL vmlinux 0x606d0b09 secure_tcpv6_sequence_number +EXPORT_SYMBOL vmlinux 0x60749d6e nf_nat_decode_session_hook +EXPORT_SYMBOL vmlinux 0x607bc01d __neigh_event_send +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL vmlinux 0x60acabaa mmc_align_data_size +EXPORT_SYMBOL vmlinux 0x60cf6271 clocksource_unregister +EXPORT_SYMBOL vmlinux 0x60df1e3b posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x60facdef scsi_dma_map +EXPORT_SYMBOL vmlinux 0x6111b1b2 splice_from_pipe_end +EXPORT_SYMBOL vmlinux 0x612390ad netpoll_set_trap +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x6138ec0e __get_page_tail +EXPORT_SYMBOL vmlinux 0x613b7732 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x61538ad0 param_get_charp +EXPORT_SYMBOL vmlinux 0x61709e46 register_netdev +EXPORT_SYMBOL vmlinux 0x61762016 tegra_periph_reset_deassert +EXPORT_SYMBOL vmlinux 0x617630c1 key_validate +EXPORT_SYMBOL vmlinux 0x617a218d __cond_resched_lock +EXPORT_SYMBOL vmlinux 0x61927039 seq_read +EXPORT_SYMBOL vmlinux 0x61a382e7 devm_gpiod_get +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61d0f5b0 pci_select_bars +EXPORT_SYMBOL vmlinux 0x61da5d95 __brelse +EXPORT_SYMBOL vmlinux 0x61e1850a edma_write_slot +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x62194024 omapdss_find_mgr_from_display +EXPORT_SYMBOL vmlinux 0x6225637e md5_transform +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x62364894 eth_header_parse +EXPORT_SYMBOL vmlinux 0x62386ddd udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0x624227d9 of_match_device +EXPORT_SYMBOL vmlinux 0x625e2f16 snd_pcm_lib_malloc_pages +EXPORT_SYMBOL vmlinux 0x6263e0c1 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x6269de14 tcf_hash_new_index +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x627ad921 put_disk +EXPORT_SYMBOL vmlinux 0x627e5e46 __mmc_claim_host +EXPORT_SYMBOL vmlinux 0x6281dbaf nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x62822d05 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x62827bec security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x628c7259 scsi_prep_fn +EXPORT_SYMBOL vmlinux 0x6291aad0 jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0x62b8f4c8 skb_copy_datagram_iovec +EXPORT_SYMBOL vmlinux 0x62e388bb vm_iomap_memory +EXPORT_SYMBOL vmlinux 0x62e86afd blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0x62ea7e8c kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0x62f83aa5 blk_init_queue +EXPORT_SYMBOL vmlinux 0x62f8c940 qdisc_watchdog_schedule_ns +EXPORT_SYMBOL vmlinux 0x62f9b04d dentry_open +EXPORT_SYMBOL vmlinux 0x62fa850e request_firmware_nowait +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x63516457 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0x6359da99 netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0x635a439d arm_dma_ops +EXPORT_SYMBOL vmlinux 0x636b3461 omap_dss_get_num_overlays +EXPORT_SYMBOL vmlinux 0x63812e5d dss_mgr_disable +EXPORT_SYMBOL vmlinux 0x6387e94f sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0x63b5a38d sock_alloc_file +EXPORT_SYMBOL vmlinux 0x63bd17ea pci_set_mwi +EXPORT_SYMBOL vmlinux 0x63e7ab89 sk_common_release +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63f9ad4a __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x63fc232f strlen_user +EXPORT_SYMBOL vmlinux 0x6403e338 tcp_memory_pressure +EXPORT_SYMBOL vmlinux 0x642e9526 tcp_proc_register +EXPORT_SYMBOL vmlinux 0x6471aedc dev_disable_lro +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x64a22ff0 dispc_mgr_set_lcd_config +EXPORT_SYMBOL vmlinux 0x64a59a98 pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x64affd9f dev_uc_sync +EXPORT_SYMBOL vmlinux 0x64c51be1 __scm_send +EXPORT_SYMBOL vmlinux 0x64ea6b6b dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x651d2987 migrate_page +EXPORT_SYMBOL vmlinux 0x65282875 security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x6529dd5e ll_rw_block +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x65466939 proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x654c715b dev_add_pack +EXPORT_SYMBOL vmlinux 0x6552aebe security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x6558063a read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x6585e310 alloc_pages_exact_nid +EXPORT_SYMBOL vmlinux 0x6592fb94 dss_mgr_disconnect +EXPORT_SYMBOL vmlinux 0x659ea65d simple_open +EXPORT_SYMBOL vmlinux 0x65ce91bc cpufreq_global_kobject +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65dfd1da dev_open +EXPORT_SYMBOL vmlinux 0x65f09ce4 md_finish_reshape +EXPORT_SYMBOL vmlinux 0x65f3ad9a fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x65f522ae page_readlink +EXPORT_SYMBOL vmlinux 0x6605f97f flex_array_clear +EXPORT_SYMBOL vmlinux 0x66116960 blk_integrity_register +EXPORT_SYMBOL vmlinux 0x6627e515 gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0x6656676c bitmap_unplug +EXPORT_SYMBOL vmlinux 0x66650d5d tty_unlock +EXPORT_SYMBOL vmlinux 0x66777e8e wireless_spy_update +EXPORT_SYMBOL vmlinux 0x668da8d5 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x66a67dab flex_array_shrink +EXPORT_SYMBOL vmlinux 0x66c128c8 keyring_clear +EXPORT_SYMBOL vmlinux 0x66d2ebcf ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0x67054ebf omap_dss_find_output_by_node +EXPORT_SYMBOL vmlinux 0x67098a44 netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x673f4152 ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x674e48bb snd_jack_set_parent +EXPORT_SYMBOL vmlinux 0x675b8f61 param_get_string +EXPORT_SYMBOL vmlinux 0x676bbc0f _set_bit +EXPORT_SYMBOL vmlinux 0x676e7d57 scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0x67a783cf mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67cb9784 ipmi_poll_interface +EXPORT_SYMBOL vmlinux 0x67d2f284 inet6_getname +EXPORT_SYMBOL vmlinux 0x67dd94cd tcp_sendpage +EXPORT_SYMBOL vmlinux 0x67e9a5c3 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0x67faed4c fb_pan_display +EXPORT_SYMBOL vmlinux 0x6809ecca iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0x68155d05 elv_dispatch_sort +EXPORT_SYMBOL vmlinux 0x682fc2a8 __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x684b6c8e inet_twsk_deschedule +EXPORT_SYMBOL vmlinux 0x684d5365 register_mtd_chip_driver +EXPORT_SYMBOL vmlinux 0x685111ee mutex_lock_killable +EXPORT_SYMBOL vmlinux 0x6873913f dquot_acquire +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x68869bae panic_notifier_list +EXPORT_SYMBOL vmlinux 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL vmlinux 0x68ad27f9 netdev_state_change +EXPORT_SYMBOL vmlinux 0x68b83ac6 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x68e05d57 getrawmonotonic +EXPORT_SYMBOL vmlinux 0x68f19059 xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0x68f84f80 blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0x68f97512 bio_integrity_enabled +EXPORT_SYMBOL vmlinux 0x68fb581a icst307_idx2s +EXPORT_SYMBOL vmlinux 0x6915eb38 down_interruptible +EXPORT_SYMBOL vmlinux 0x692cb939 pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0x693e517b mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0x69610175 km_state_notify +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x6976c935 scm_detach_fds +EXPORT_SYMBOL vmlinux 0x697d88e6 kernel_getsockname +EXPORT_SYMBOL vmlinux 0x6996ad7f inet_getname +EXPORT_SYMBOL vmlinux 0x6999b564 abort_creds +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69b6f8d9 omap_set_dma_transfer_params +EXPORT_SYMBOL vmlinux 0x69c3ad5f i2c_register_driver +EXPORT_SYMBOL vmlinux 0x69d38ed9 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x69e27c7a bitmap_copy_le +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a0a6f9f xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0x6a153a7b sock_edemux +EXPORT_SYMBOL vmlinux 0x6a1ccb1b edma_get_position +EXPORT_SYMBOL vmlinux 0x6a3f4119 mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a76f3ac blk_iopoll_enable +EXPORT_SYMBOL vmlinux 0x6a87aa0e pci_enable_ltr +EXPORT_SYMBOL vmlinux 0x6a8d8e26 dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x6abf6a77 simple_write_end +EXPORT_SYMBOL vmlinux 0x6ac4fd23 vfs_rename +EXPORT_SYMBOL vmlinux 0x6adae25e register_cdrom +EXPORT_SYMBOL vmlinux 0x6ae6bf65 set_nlink +EXPORT_SYMBOL vmlinux 0x6b06fdce delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x6b1452fb mnt_set_expiry +EXPORT_SYMBOL vmlinux 0x6b14f8d8 setattr_copy +EXPORT_SYMBOL vmlinux 0x6b1b67d3 __bdevname +EXPORT_SYMBOL vmlinux 0x6b2d6304 clk_get +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b37508d __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0x6b4288ae pci_reenable_device +EXPORT_SYMBOL vmlinux 0x6b4e5280 __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x6b88f55a mount_nodev +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bdcfd99 qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x6beb2078 param_set_copystring +EXPORT_SYMBOL vmlinux 0x6bfe642f tcf_hash_check +EXPORT_SYMBOL vmlinux 0x6c07098e zerocopy_sg_from_iovec +EXPORT_SYMBOL vmlinux 0x6c1ce5ce strcspn +EXPORT_SYMBOL vmlinux 0x6c481028 blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0x6c51a836 sysctl_tcp_notsent_lowat +EXPORT_SYMBOL vmlinux 0x6c605c81 dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c685283 inode_change_ok +EXPORT_SYMBOL vmlinux 0x6c6cbe48 misc_deregister +EXPORT_SYMBOL vmlinux 0x6c6cdd4d wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0x6c702af7 sysctl_udp_rmem_min +EXPORT_SYMBOL vmlinux 0x6c8e3579 sk_alloc +EXPORT_SYMBOL vmlinux 0x6ca4d6d0 uart_resume_port +EXPORT_SYMBOL vmlinux 0x6ca5b0f8 __net_get_random_once +EXPORT_SYMBOL vmlinux 0x6cb45254 snd_ctl_find_id +EXPORT_SYMBOL vmlinux 0x6cbe88fd dev_notice +EXPORT_SYMBOL vmlinux 0x6cd4059f cdrom_check_events +EXPORT_SYMBOL vmlinux 0x6cdc5c6b nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6d0f1f89 dm_table_get_mode +EXPORT_SYMBOL vmlinux 0x6d22c6fe blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0x6d27ef64 __bitmap_empty +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d340f64 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x6d34eb95 snd_pcm_set_ops +EXPORT_SYMBOL vmlinux 0x6d3627d0 framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x6d3d8c87 serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0x6d464175 __sg_free_table +EXPORT_SYMBOL vmlinux 0x6d662533 _find_first_bit_le +EXPORT_SYMBOL vmlinux 0x6d67d11e disk_stack_limits +EXPORT_SYMBOL vmlinux 0x6d6a2d74 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0x6d774731 mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x6d79626c __breadahead +EXPORT_SYMBOL vmlinux 0x6d98a110 gen_new_estimator +EXPORT_SYMBOL vmlinux 0x6d9b5890 __neigh_create +EXPORT_SYMBOL vmlinux 0x6da9480b __serio_register_port +EXPORT_SYMBOL vmlinux 0x6def2db2 half_md4_transform +EXPORT_SYMBOL vmlinux 0x6e3b3eb4 tcf_exts_change +EXPORT_SYMBOL vmlinux 0x6e3da533 get_user_pages +EXPORT_SYMBOL vmlinux 0x6e40210e abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0x6e6e0dd8 inet_frag_kill +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6ea91240 mtd_concat_create +EXPORT_SYMBOL vmlinux 0x6eb87b33 would_dump +EXPORT_SYMBOL vmlinux 0x6ebc5149 param_ops_long +EXPORT_SYMBOL vmlinux 0x6ec9ccdb _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL vmlinux 0x6efc7b17 snd_info_create_module_entry +EXPORT_SYMBOL vmlinux 0x6f0f55d7 ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0x6f12ba9e alloc_mdio_bitbang +EXPORT_SYMBOL vmlinux 0x6f20960a full_name_hash +EXPORT_SYMBOL vmlinux 0x6f2229c7 mmc_cache_ctrl +EXPORT_SYMBOL vmlinux 0x6f24e5e8 pci_release_regions +EXPORT_SYMBOL vmlinux 0x6f4262e0 lro_flush_pkt +EXPORT_SYMBOL vmlinux 0x6f6816b5 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x6f6dfd87 jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x6f7bbb81 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x6f92adef do_truncate +EXPORT_SYMBOL vmlinux 0x6f980c7b xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x6faf0f76 __blk_end_request_all +EXPORT_SYMBOL vmlinux 0x6fbf1f43 request_key_async_with_auxdata +EXPORT_SYMBOL vmlinux 0x6fc65cbd vfs_link +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x70097aa0 nand_bch_free +EXPORT_SYMBOL vmlinux 0x700ce33e dquot_quota_sync +EXPORT_SYMBOL vmlinux 0x701276be buffer_migrate_page +EXPORT_SYMBOL vmlinux 0x701cdcc1 of_dev_get +EXPORT_SYMBOL vmlinux 0x704cc9d8 bioset_create +EXPORT_SYMBOL vmlinux 0x70523a7a __cond_resched_softirq +EXPORT_SYMBOL vmlinux 0x70523c28 do_splice_to +EXPORT_SYMBOL vmlinux 0x707f43f6 __ctzdi2 +EXPORT_SYMBOL vmlinux 0x70860448 scsi_device_set_state +EXPORT_SYMBOL vmlinux 0x70a64c96 simple_statfs +EXPORT_SYMBOL vmlinux 0x70bc17d7 inode_wait +EXPORT_SYMBOL vmlinux 0x70c1b5e3 serio_unregister_port +EXPORT_SYMBOL vmlinux 0x70c87887 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0x70cb3823 pci_alloc_dev +EXPORT_SYMBOL vmlinux 0x70d053fd try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x70d9f28d input_free_device +EXPORT_SYMBOL vmlinux 0x70e39dae dss_uninstall_mgr_ops +EXPORT_SYMBOL vmlinux 0x70ea0024 inet_csk_accept +EXPORT_SYMBOL vmlinux 0x70f8f26b pci_iomap +EXPORT_SYMBOL vmlinux 0x70fd14e4 single_open +EXPORT_SYMBOL vmlinux 0x710c63e2 dev_mc_add +EXPORT_SYMBOL vmlinux 0x71108a2d lro_flush_all +EXPORT_SYMBOL vmlinux 0x711ab6c4 pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x7137086d dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0x713956af simple_dir_operations +EXPORT_SYMBOL vmlinux 0x713adaf2 bioset_free +EXPORT_SYMBOL vmlinux 0x7142c63c edma_free_slot +EXPORT_SYMBOL vmlinux 0x7142c779 udp_proc_register +EXPORT_SYMBOL vmlinux 0x7150109b md_integrity_register +EXPORT_SYMBOL vmlinux 0x715f88fd request_key +EXPORT_SYMBOL vmlinux 0x71658a05 dispc_ovl_setup +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x71849924 dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71b82fa9 inet_register_protosw +EXPORT_SYMBOL vmlinux 0x71c388da tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0x71c57709 generic_pipe_buf_unmap +EXPORT_SYMBOL vmlinux 0x71c90087 memcmp +EXPORT_SYMBOL vmlinux 0x71f65175 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x72093e6f nf_ct_attach +EXPORT_SYMBOL vmlinux 0x720ede0e unmap_mapping_range +EXPORT_SYMBOL vmlinux 0x7225a33c blkdev_get +EXPORT_SYMBOL vmlinux 0x722fb944 netdev_emerg +EXPORT_SYMBOL vmlinux 0x72350130 ___ratelimit +EXPORT_SYMBOL vmlinux 0x72572b3c phy_ethtool_gset +EXPORT_SYMBOL vmlinux 0x72597fce user_revoke +EXPORT_SYMBOL vmlinux 0x7274e818 netdev_features_change +EXPORT_SYMBOL vmlinux 0x728b051d sg_miter_start +EXPORT_SYMBOL vmlinux 0x72a1b6d0 __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x72b362ae amba_device_register +EXPORT_SYMBOL vmlinux 0x72b5b2b7 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x72c227d0 dma_sync_wait +EXPORT_SYMBOL vmlinux 0x72c2bba9 of_device_unregister +EXPORT_SYMBOL vmlinux 0x72c2c990 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0x72d58de9 kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72f966d3 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0x72f9a8cd snd_device_new +EXPORT_SYMBOL vmlinux 0x7315a4e9 twl6030_mmc_card_detect_config +EXPORT_SYMBOL vmlinux 0x731b81f1 __wait_on_bit +EXPORT_SYMBOL vmlinux 0x73369aee __skb_checksum +EXPORT_SYMBOL vmlinux 0x733c3b54 kasprintf +EXPORT_SYMBOL vmlinux 0x737de5e9 radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0x73844352 inet_del_offload +EXPORT_SYMBOL vmlinux 0x7391e65c ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0x73946ccf sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x739885b6 locks_free_lock +EXPORT_SYMBOL vmlinux 0x73ba9b65 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0x73be5bd5 omapdss_output_set_device +EXPORT_SYMBOL vmlinux 0x73d69964 sock_update_classid +EXPORT_SYMBOL vmlinux 0x73e089b5 kernel_connect +EXPORT_SYMBOL vmlinux 0x73e20c1c strlcpy +EXPORT_SYMBOL vmlinux 0x73eb92d5 page_address +EXPORT_SYMBOL vmlinux 0x7412bc2f ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x7431e9ef scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x7445db83 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0x74556271 proc_symlink +EXPORT_SYMBOL vmlinux 0x7469fcfe radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x747195f0 hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x7480f048 snd_device_register +EXPORT_SYMBOL vmlinux 0x7485e15e unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x74b6a027 ipmi_smi_add_proc_entry +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74ce05b8 flush_delayed_work +EXPORT_SYMBOL vmlinux 0x74e46dac imx_ssi_fiq_tx_buffer +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74ea4743 dmam_alloc_coherent +EXPORT_SYMBOL vmlinux 0x74f0f5ca shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0x74f1bd74 prepare_binprm +EXPORT_SYMBOL vmlinux 0x74f8e15f generic_ro_fops +EXPORT_SYMBOL vmlinux 0x74fa022d edma_trigger_channel +EXPORT_SYMBOL vmlinux 0x7505bdef memchr_inv +EXPORT_SYMBOL vmlinux 0x75090c07 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x754dac78 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x7553406a ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x756d2b04 skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0x756fc2eb swiotlb_dma_supported +EXPORT_SYMBOL vmlinux 0x7574b0fd pagevec_lookup_tag +EXPORT_SYMBOL vmlinux 0x75804de0 snd_timer_start +EXPORT_SYMBOL vmlinux 0x75813faa phy_attach +EXPORT_SYMBOL vmlinux 0x7584f6c6 tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x7593d385 div64_s64 +EXPORT_SYMBOL vmlinux 0x7599c8e9 tcf_generic_walker +EXPORT_SYMBOL vmlinux 0x75a85759 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75bdea12 iommu_area_alloc +EXPORT_SYMBOL vmlinux 0x75c30d7e snd_info_free_entry +EXPORT_SYMBOL vmlinux 0x75ce7a6d read_cache_pages +EXPORT_SYMBOL vmlinux 0x75de5e1b dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x75e361af xfrm_unregister_mode +EXPORT_SYMBOL vmlinux 0x75fee7fd __raw_writesb +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x760b9bf7 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0x76372859 devm_gpio_request_one +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x765f4c9c scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x7667ed72 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0x767988be __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0x769d4d22 phy_drivers_register +EXPORT_SYMBOL vmlinux 0x76bf656d __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x76cf47f6 __aeabi_llsl +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76f4ca09 mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0x771f5899 fsnotify_destroy_mark +EXPORT_SYMBOL vmlinux 0x773a9c94 blk_iopoll_enabled +EXPORT_SYMBOL vmlinux 0x774016ff dmam_free_coherent +EXPORT_SYMBOL vmlinux 0x77489d41 qdisc_list_del +EXPORT_SYMBOL vmlinux 0x7760cba7 dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0x77910dfc rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x7791193f icst525_s2div +EXPORT_SYMBOL vmlinux 0x7793867b snd_unregister_device +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x77a7e699 pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77c55124 pci_scan_bus +EXPORT_SYMBOL vmlinux 0x77d4f6ad nand_correct_data +EXPORT_SYMBOL vmlinux 0x77d5b6b6 kobject_set_name +EXPORT_SYMBOL vmlinux 0x77de76fe find_vma +EXPORT_SYMBOL vmlinux 0x77df0847 __set_personality +EXPORT_SYMBOL vmlinux 0x77ecac9f zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x77fe4cb2 sleep_on_timeout +EXPORT_SYMBOL vmlinux 0x7812dfe9 pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0x781b92f1 notify_change +EXPORT_SYMBOL vmlinux 0x782567ec memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0x783366e5 alloc_fcdev +EXPORT_SYMBOL vmlinux 0x783b3563 wake_up_atomic_t +EXPORT_SYMBOL vmlinux 0x783ebadf security_path_unlink +EXPORT_SYMBOL vmlinux 0x783fb8aa module_refcount +EXPORT_SYMBOL vmlinux 0x7850b42a elevator_change +EXPORT_SYMBOL vmlinux 0x7857c00d request_key_async +EXPORT_SYMBOL vmlinux 0x7865c074 clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x78814c47 do_SAK +EXPORT_SYMBOL vmlinux 0x788fe103 iomem_resource +EXPORT_SYMBOL vmlinux 0x7897bf3f __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x789b5f5f devm_clk_put +EXPORT_SYMBOL vmlinux 0x78a30fd3 abx500_register_ops +EXPORT_SYMBOL vmlinux 0x78cc4b01 get_io_context +EXPORT_SYMBOL vmlinux 0x78d5d8ac dev_uc_add +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78fd36e7 ipmi_request_supply_msgs +EXPORT_SYMBOL vmlinux 0x792156b8 dss_mgr_connect +EXPORT_SYMBOL vmlinux 0x7930d225 of_device_is_compatible +EXPORT_SYMBOL vmlinux 0x7949b992 submit_bio +EXPORT_SYMBOL vmlinux 0x795c8990 pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0x796fc5ce scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0x799c1f22 blk_register_region +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79e79db4 _dev_info +EXPORT_SYMBOL vmlinux 0x79f4d5fd omapdss_register_display +EXPORT_SYMBOL vmlinux 0x79fa1deb imx_ssi_fiq_rx_buffer +EXPORT_SYMBOL vmlinux 0x7a188791 prandom_bytes +EXPORT_SYMBOL vmlinux 0x7a1edf1a __remove_inode_hash +EXPORT_SYMBOL vmlinux 0x7a22c04c skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0x7a27c184 ewma_init +EXPORT_SYMBOL vmlinux 0x7a3d0f1f __kfree_skb +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a5f1e13 kthread_stop +EXPORT_SYMBOL vmlinux 0x7a5fef80 tcf_hash_destroy +EXPORT_SYMBOL vmlinux 0x7a91726b clkdev_alloc +EXPORT_SYMBOL vmlinux 0x7a925833 cpufreq_get_global_kobject +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7ac355ee d_make_root +EXPORT_SYMBOL vmlinux 0x7ac7e863 xfrm_register_mode +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7ad55c01 bdi_setup_and_register +EXPORT_SYMBOL vmlinux 0x7ada4401 swiotlb_map_sg +EXPORT_SYMBOL vmlinux 0x7add44b5 posix_acl_valid +EXPORT_SYMBOL vmlinux 0x7ae02774 scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0x7ae5a7c3 phy_device_free +EXPORT_SYMBOL vmlinux 0x7ae988b7 truncate_pagecache +EXPORT_SYMBOL vmlinux 0x7af11c61 i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0x7afa89fc vsnprintf +EXPORT_SYMBOL vmlinux 0x7b10df84 mem_map +EXPORT_SYMBOL vmlinux 0x7b1567f8 inet_stream_connect +EXPORT_SYMBOL vmlinux 0x7b15fdf7 ip_setsockopt +EXPORT_SYMBOL vmlinux 0x7b1ade38 lz4_decompress +EXPORT_SYMBOL vmlinux 0x7b25eee3 ftrace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x7b5c8440 vm_munmap +EXPORT_SYMBOL vmlinux 0x7b6146eb vfs_write +EXPORT_SYMBOL vmlinux 0x7b8eef98 pneigh_lookup +EXPORT_SYMBOL vmlinux 0x7be09165 genl_notify +EXPORT_SYMBOL vmlinux 0x7c118000 skb_find_text +EXPORT_SYMBOL vmlinux 0x7c1372e8 panic +EXPORT_SYMBOL vmlinux 0x7c22c0a8 scsi_scan_target +EXPORT_SYMBOL vmlinux 0x7c383cf7 tcf_hash_insert +EXPORT_SYMBOL vmlinux 0x7c38d5ee input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c4edd37 padata_unregister_cpumask_notifier +EXPORT_SYMBOL vmlinux 0x7c7f0f42 __bforget +EXPORT_SYMBOL vmlinux 0x7c98845d twl_i2c_read +EXPORT_SYMBOL vmlinux 0x7c9ffc45 mount_subtree +EXPORT_SYMBOL vmlinux 0x7ca66cfb bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x7cb1ae69 cpu_down +EXPORT_SYMBOL vmlinux 0x7cb23bf6 kobject_del +EXPORT_SYMBOL vmlinux 0x7cb58289 bio_advance +EXPORT_SYMBOL vmlinux 0x7cba44ac snd_ctl_add +EXPORT_SYMBOL vmlinux 0x7cbe8095 dispc_mgr_set_timings +EXPORT_SYMBOL vmlinux 0x7cc035a7 __ucmpdi2 +EXPORT_SYMBOL vmlinux 0x7cc578da param_get_long +EXPORT_SYMBOL vmlinux 0x7cddc2ff ipmi_get_smi_info +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d0e3629 phy_detach +EXPORT_SYMBOL vmlinux 0x7d0e3e72 ida_get_new_above +EXPORT_SYMBOL vmlinux 0x7d11c268 jiffies +EXPORT_SYMBOL vmlinux 0x7d1283e6 sock_no_bind +EXPORT_SYMBOL vmlinux 0x7d4e2276 __init_rwsem +EXPORT_SYMBOL vmlinux 0x7d7ad413 iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0x7d838646 may_umount +EXPORT_SYMBOL vmlinux 0x7d93ad9a xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0x7dafd3f4 vsc824x_add_skew +EXPORT_SYMBOL vmlinux 0x7dccc294 proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0x7dd689e9 bitmap_startwrite +EXPORT_SYMBOL vmlinux 0x7ddd54d0 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x7ddeb1f8 posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7df127a9 ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x7e069af8 locks_copy_lock +EXPORT_SYMBOL vmlinux 0x7e08b8d7 send_sig +EXPORT_SYMBOL vmlinux 0x7e1ad02c fsnotify_get_group +EXPORT_SYMBOL vmlinux 0x7e394c4e sysctl_local_reserved_ports +EXPORT_SYMBOL vmlinux 0x7e4bfb3a kobject_get +EXPORT_SYMBOL vmlinux 0x7e913f29 free_buffer_head +EXPORT_SYMBOL vmlinux 0x7e98d318 vexpress_config_read +EXPORT_SYMBOL vmlinux 0x7e9b9d64 snd_pcm_hw_constraint_list +EXPORT_SYMBOL vmlinux 0x7e9efe8e complete_and_exit +EXPORT_SYMBOL vmlinux 0x7ead817c __idr_pre_get +EXPORT_SYMBOL vmlinux 0x7ed9428a tty_port_close_end +EXPORT_SYMBOL vmlinux 0x7ee73c0c memcg_socket_limit_enabled +EXPORT_SYMBOL vmlinux 0x7efbaebc proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0x7efe0035 uart_register_driver +EXPORT_SYMBOL vmlinux 0x7f08a101 scsi_cmd_print_sense_hdr +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f2d846a mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0x7f33a63b omap_get_dma_chain_dst_pos +EXPORT_SYMBOL vmlinux 0x7f43f960 seq_vprintf +EXPORT_SYMBOL vmlinux 0x7f46c2e1 elv_rb_find +EXPORT_SYMBOL vmlinux 0x7f477772 module_put +EXPORT_SYMBOL vmlinux 0x7f54a0b3 bdi_init +EXPORT_SYMBOL vmlinux 0x7f63b31e _memcpy_toio +EXPORT_SYMBOL vmlinux 0x7f6b5a0d free_netdev +EXPORT_SYMBOL vmlinux 0x7fa54e2f load_nls +EXPORT_SYMBOL vmlinux 0x7fa64cca omap_dss_pal_timings +EXPORT_SYMBOL vmlinux 0x7fb4bfef mmc_put_card +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fec7d72 omap_dss_put_device +EXPORT_SYMBOL vmlinux 0x800e4ffa __muldi3 +EXPORT_SYMBOL vmlinux 0x8014ebe6 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0x801a5c4a snd_dma_alloc_pages +EXPORT_SYMBOL vmlinux 0x80396fb7 snd_pcm_limit_hw_rates +EXPORT_SYMBOL vmlinux 0x804f922a ipmi_addr_length +EXPORT_SYMBOL vmlinux 0x80588dbc setup_new_exec +EXPORT_SYMBOL vmlinux 0x8059dcb9 napi_gro_flush +EXPORT_SYMBOL vmlinux 0x8061a247 tcp_gso_segment +EXPORT_SYMBOL vmlinux 0x80673511 bio_pair_release +EXPORT_SYMBOL vmlinux 0x8069598a dput +EXPORT_SYMBOL vmlinux 0x8069d0cd unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x80c1c54e mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80ccacdc pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80d81308 omap_vrfb_release_ctx +EXPORT_SYMBOL vmlinux 0x810d62e3 ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0x8127c838 omap_dss_get_overlay_manager +EXPORT_SYMBOL vmlinux 0x814e7730 nf_ct_destroy +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x815c6688 blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0x818b8b7d frontswap_register_ops +EXPORT_SYMBOL vmlinux 0x81b69e41 snd_ctl_enum_info +EXPORT_SYMBOL vmlinux 0x81cac3c9 scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x81d10f5f trace_seq_putc +EXPORT_SYMBOL vmlinux 0x81d9017f mmc_power_restore_host +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81dd7a31 devfreq_add_governor +EXPORT_SYMBOL vmlinux 0x81e68b15 tcp_splice_read +EXPORT_SYMBOL vmlinux 0x81f25824 sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x81f66b88 mount_bdev +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x8221978b writeback_in_progress +EXPORT_SYMBOL vmlinux 0x8245121a alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x824a4367 tmio_core_mmc_pwr +EXPORT_SYMBOL vmlinux 0x8251bcc3 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x8260686f bitmap_find_next_zero_area +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x82acfb70 blk_iopoll_sched +EXPORT_SYMBOL vmlinux 0x82edff99 bitmap_endwrite +EXPORT_SYMBOL vmlinux 0x82f61b6f tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x83206412 pagecache_write_begin +EXPORT_SYMBOL vmlinux 0x8320bea8 __umodsi3 +EXPORT_SYMBOL vmlinux 0x83211609 up_write +EXPORT_SYMBOL vmlinux 0x83245070 tty_pair_get_pty +EXPORT_SYMBOL vmlinux 0x83252242 sock_create_kern +EXPORT_SYMBOL vmlinux 0x8363e56b amba_release_regions +EXPORT_SYMBOL vmlinux 0x836647ac tcp_read_sock +EXPORT_SYMBOL vmlinux 0x83677bb1 inet6_del_offload +EXPORT_SYMBOL vmlinux 0x83684597 scsi_host_get +EXPORT_SYMBOL vmlinux 0x838493ca follow_up +EXPORT_SYMBOL vmlinux 0x838e30a0 lookup_one_len +EXPORT_SYMBOL vmlinux 0x839cdf99 edma_resume +EXPORT_SYMBOL vmlinux 0x83a476ce bitmap_scnlistprintf +EXPORT_SYMBOL vmlinux 0x83ae5329 cfb_imageblit +EXPORT_SYMBOL vmlinux 0x83d70683 edma_start +EXPORT_SYMBOL vmlinux 0x841962f8 param_get_ushort +EXPORT_SYMBOL vmlinux 0x841aa481 clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0x841c773a of_mdiobus_register +EXPORT_SYMBOL vmlinux 0x842221ef scsi_nonblockable_ioctl +EXPORT_SYMBOL vmlinux 0x842bb271 key_revoke +EXPORT_SYMBOL vmlinux 0x844d093c __locks_copy_lock +EXPORT_SYMBOL vmlinux 0x84504e2a xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0x845e2ed9 snd_pcm_new_internal +EXPORT_SYMBOL vmlinux 0x84615e1e seq_lseek +EXPORT_SYMBOL vmlinux 0x84631682 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0x846390f7 blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0x849c285b devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0x84a1cb82 bitmap_end_sync +EXPORT_SYMBOL vmlinux 0x84b183ae strncmp +EXPORT_SYMBOL vmlinux 0x84b77488 pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0x84b7b1b8 __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x84ba4f1c skb_dequeue +EXPORT_SYMBOL vmlinux 0x84e105b4 mark_info_dirty +EXPORT_SYMBOL vmlinux 0x84ef61d3 blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x84ffea8b idr_preload +EXPORT_SYMBOL vmlinux 0x8509c540 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0x8509e122 mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0x8518eca9 param_get_short +EXPORT_SYMBOL vmlinux 0x853bf7c1 param_set_int +EXPORT_SYMBOL vmlinux 0x85472697 snd_pcm_notify +EXPORT_SYMBOL vmlinux 0x854e1c0b sg_nents +EXPORT_SYMBOL vmlinux 0x8553784f tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x856f802c filp_open +EXPORT_SYMBOL vmlinux 0x85737519 edma_read_slot +EXPORT_SYMBOL vmlinux 0x85765fee omap_enable_dma_irq +EXPORT_SYMBOL vmlinux 0x858899eb tty_port_put +EXPORT_SYMBOL vmlinux 0x858d7df0 sk_filter +EXPORT_SYMBOL vmlinux 0x85995c48 of_phy_find_device +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85c2f1da register_qdisc +EXPORT_SYMBOL vmlinux 0x85ccd3ab udp_prot +EXPORT_SYMBOL vmlinux 0x85d2f52b jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0x85d56ddd phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0x85dc8e80 __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85e7deb2 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0x85e983e7 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x85f3a404 tty_pair_get_tty +EXPORT_SYMBOL vmlinux 0x8646b518 pci_disable_obff +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x86637a65 pci_get_device +EXPORT_SYMBOL vmlinux 0x8664f62e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0x866da743 module_layout +EXPORT_SYMBOL vmlinux 0x8672d641 inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0x86860195 dss_feat_get_supported_displays +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x868d3533 fsnotify_alloc_group +EXPORT_SYMBOL vmlinux 0x86974f31 d_find_alias +EXPORT_SYMBOL vmlinux 0x86a4889a kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0x86a6f374 udp_lib_unhash +EXPORT_SYMBOL vmlinux 0x86b8cb32 inet_select_addr +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x870bf928 radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x871c0a7e fiemap_check_flags +EXPORT_SYMBOL vmlinux 0x87390c7f max8925_reg_write +EXPORT_SYMBOL vmlinux 0x875347ec devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0x875e5f25 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0x87683720 phy_connect_direct +EXPORT_SYMBOL vmlinux 0x876b66a5 inode_init_owner +EXPORT_SYMBOL vmlinux 0x8779a34f param_ops_byte +EXPORT_SYMBOL vmlinux 0x8783caa6 blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x878ab3ce sysctl_tcp_adv_win_scale +EXPORT_SYMBOL vmlinux 0x87966b9b omapdss_get_version +EXPORT_SYMBOL vmlinux 0x8798e453 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0x87abd86d of_find_backlight_by_node +EXPORT_SYMBOL vmlinux 0x87b10abd skb_insert +EXPORT_SYMBOL vmlinux 0x87ba7637 scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0x87bbeeb2 bio_clone_bioset +EXPORT_SYMBOL vmlinux 0x87dd9227 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0x87f08c99 ip_route_me_harder +EXPORT_SYMBOL vmlinux 0x87f43da7 dma_supported +EXPORT_SYMBOL vmlinux 0x880d3c6b splice_from_pipe_next +EXPORT_SYMBOL vmlinux 0x881039d0 zlib_inflate +EXPORT_SYMBOL vmlinux 0x88130a33 netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0x882328dd scsi_add_device +EXPORT_SYMBOL vmlinux 0x8834396c mod_timer +EXPORT_SYMBOL vmlinux 0x88513970 param_set_byte +EXPORT_SYMBOL vmlinux 0x885a8535 ab3100_event_register +EXPORT_SYMBOL vmlinux 0x8896782d set_bdi_congested +EXPORT_SYMBOL vmlinux 0x88be7842 splice_from_pipe_begin +EXPORT_SYMBOL vmlinux 0x88c13dbf skb_pull +EXPORT_SYMBOL vmlinux 0x88d8c9f9 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x88e2d852 simple_setattr +EXPORT_SYMBOL vmlinux 0x88e46a73 tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0x88fbac30 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0x890dc2ed idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x893bb04c scsi_print_command +EXPORT_SYMBOL vmlinux 0x89512210 blk_mq_alloc_reserved_request +EXPORT_SYMBOL vmlinux 0x8953f8ff __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x897473df mktime +EXPORT_SYMBOL vmlinux 0x899d605f tty_unlock_pair +EXPORT_SYMBOL vmlinux 0x89a3c4f4 omap_get_dma_chain_index +EXPORT_SYMBOL vmlinux 0x89aeaaec snd_pcm_stop +EXPORT_SYMBOL vmlinux 0x89bb1cdd scsi_execute_req_flags +EXPORT_SYMBOL vmlinux 0x89d5538d fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x89e13543 dev_set_drvdata +EXPORT_SYMBOL vmlinux 0x89f97ee7 nf_log_set +EXPORT_SYMBOL vmlinux 0x8a0f4230 rename_lock +EXPORT_SYMBOL vmlinux 0x8a11ab8e skb_copy_and_csum_datagram_iovec +EXPORT_SYMBOL vmlinux 0x8a178f0c tcp_init_sock +EXPORT_SYMBOL vmlinux 0x8a1ab4ee timeval_to_jiffies +EXPORT_SYMBOL vmlinux 0x8a233cbf wake_up_process +EXPORT_SYMBOL vmlinux 0x8a373bd7 __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x8a425ef4 scsi_host_set_state +EXPORT_SYMBOL vmlinux 0x8a43a99a mdio_bus_type +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a4fa83b __aeabi_llsr +EXPORT_SYMBOL vmlinux 0x8a51d565 quota_send_warning +EXPORT_SYMBOL vmlinux 0x8a6770cf sound_class +EXPORT_SYMBOL vmlinux 0x8a6bdb41 snd_ctl_find_numid +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a933935 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8ae41a04 noop_fsync +EXPORT_SYMBOL vmlinux 0x8aec2624 neigh_table_init +EXPORT_SYMBOL vmlinux 0x8b091cc3 blk_mq_insert_request +EXPORT_SYMBOL vmlinux 0x8b0eb221 dev_get_by_index +EXPORT_SYMBOL vmlinux 0x8b1a7a66 pcie_aspm_enabled +EXPORT_SYMBOL vmlinux 0x8b1c787e ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0x8b29f682 nand_unlock +EXPORT_SYMBOL vmlinux 0x8b3e770b i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x8b43159b register_cpu_notifier +EXPORT_SYMBOL vmlinux 0x8b5cc810 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b65ba7e __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0x8b7695a7 pipe_lock +EXPORT_SYMBOL vmlinux 0x8ba9ca1f md_wakeup_thread +EXPORT_SYMBOL vmlinux 0x8bcd4611 register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x8bdd706d swiotlb_map_sg_attrs +EXPORT_SYMBOL vmlinux 0x8be9eb59 wait_on_sync_kiocb +EXPORT_SYMBOL vmlinux 0x8c0a3d71 free_user_ns +EXPORT_SYMBOL vmlinux 0x8c1b1891 dev_driver_string +EXPORT_SYMBOL vmlinux 0x8c28391f neigh_for_each +EXPORT_SYMBOL vmlinux 0x8c424bb4 dma_async_device_register +EXPORT_SYMBOL vmlinux 0x8c4d6523 omap_dma_chain_a_transfer +EXPORT_SYMBOL vmlinux 0x8c5db121 devm_ioremap_nocache +EXPORT_SYMBOL vmlinux 0x8c637d43 irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x8c650c20 of_phy_connect_fixed_link +EXPORT_SYMBOL vmlinux 0x8c6d2cf3 blk_execute_rq +EXPORT_SYMBOL vmlinux 0x8c705b8c edma_clean_channel +EXPORT_SYMBOL vmlinux 0x8c7ce874 truncate_setsize +EXPORT_SYMBOL vmlinux 0x8c8ee770 ipmi_destroy_user +EXPORT_SYMBOL vmlinux 0x8c9d8a76 km_query +EXPORT_SYMBOL vmlinux 0x8cc7ec94 bio_endio +EXPORT_SYMBOL vmlinux 0x8cd12d6f xfrm_lookup +EXPORT_SYMBOL vmlinux 0x8cd8c339 omap_free_dma +EXPORT_SYMBOL vmlinux 0x8cefa358 input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0x8d2e268b param_ops_ulong +EXPORT_SYMBOL vmlinux 0x8d551bef sysctl_tcp_rmem +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d6f81b4 __div64_32 +EXPORT_SYMBOL vmlinux 0x8d6fe2b6 jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d8b6353 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x8da076f7 mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x8da7c3d6 scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0x8dc168a8 ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x8dcff6e2 __pv_offset +EXPORT_SYMBOL vmlinux 0x8e0d66f4 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x8e13f57a from_kuid +EXPORT_SYMBOL vmlinux 0x8e4adf2f gen10g_read_status +EXPORT_SYMBOL vmlinux 0x8e5c580a ida_init +EXPORT_SYMBOL vmlinux 0x8e60aad3 elv_rb_del +EXPORT_SYMBOL vmlinux 0x8e60c371 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x8e864a86 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x8e865d3c arm_delay_ops +EXPORT_SYMBOL vmlinux 0x8eac7783 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0x8ee51990 prepare_creds +EXPORT_SYMBOL vmlinux 0x8ee97c31 __lock_buffer +EXPORT_SYMBOL vmlinux 0x8f045d1c cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x8f14a96f scsi_device_resume +EXPORT_SYMBOL vmlinux 0x8f24b292 blk_end_request_cur +EXPORT_SYMBOL vmlinux 0x8f27796b snd_card_create +EXPORT_SYMBOL vmlinux 0x8f2b6313 alloc_file +EXPORT_SYMBOL vmlinux 0x8f3d02dc skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x8f595a93 nf_setsockopt +EXPORT_SYMBOL vmlinux 0x8f595b11 snd_major +EXPORT_SYMBOL vmlinux 0x8f678b07 __stack_chk_guard +EXPORT_SYMBOL vmlinux 0x8f6affc6 ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x8f80efc7 phy_start_aneg +EXPORT_SYMBOL vmlinux 0x8fa0af94 pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0x8fa4130a omap_set_dma_callback +EXPORT_SYMBOL vmlinux 0x8fa60f13 sock_i_uid +EXPORT_SYMBOL vmlinux 0x8fa871a7 d_alloc +EXPORT_SYMBOL vmlinux 0x8fa9b3aa proc_remove +EXPORT_SYMBOL vmlinux 0x8faa4598 of_translate_address +EXPORT_SYMBOL vmlinux 0x8fbdf9cb load_nls_default +EXPORT_SYMBOL vmlinux 0x8fd180e7 kernel_neon_begin +EXPORT_SYMBOL vmlinux 0x8fdd88ec task_tgid_nr_ns +EXPORT_SYMBOL vmlinux 0x8fe8d7ce ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0x8fef2d4f tcp_mtup_init +EXPORT_SYMBOL vmlinux 0x8ffdb3b8 crc16 +EXPORT_SYMBOL vmlinux 0x90035b82 netif_rx_ni +EXPORT_SYMBOL vmlinux 0x9023016d netlink_ack +EXPORT_SYMBOL vmlinux 0x9024aa81 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0x90596067 udp6_csum_init +EXPORT_SYMBOL vmlinux 0x905e8324 mmc_can_discard +EXPORT_SYMBOL vmlinux 0x9060e49d pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0x90883ced jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0x908b53ed param_set_short +EXPORT_SYMBOL vmlinux 0x9093759a PDE_DATA +EXPORT_SYMBOL vmlinux 0x90a47c75 jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0x90bbda37 tcp_connect +EXPORT_SYMBOL vmlinux 0x90c5e819 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x90cc7cf9 pci_map_rom +EXPORT_SYMBOL vmlinux 0x90ef5441 tty_throttle +EXPORT_SYMBOL vmlinux 0x90fdafd8 napi_gro_receive +EXPORT_SYMBOL vmlinux 0x91063943 icmp_send +EXPORT_SYMBOL vmlinux 0x911ce862 tcp_seq_open +EXPORT_SYMBOL vmlinux 0x912b7e3e serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x9142ba12 blk_rq_init +EXPORT_SYMBOL vmlinux 0x91463b1d kstrtos16 +EXPORT_SYMBOL vmlinux 0x91621d6a allocate_resource +EXPORT_SYMBOL vmlinux 0x91687a27 complete_request_key +EXPORT_SYMBOL vmlinux 0x9168ef72 phy_start +EXPORT_SYMBOL vmlinux 0x916b6c8e fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0x91702142 bd_set_size +EXPORT_SYMBOL vmlinux 0x91715312 sprintf +EXPORT_SYMBOL vmlinux 0x91818405 __cleancache_get_page +EXPORT_SYMBOL vmlinux 0x91836fd6 snd_pcm_lib_readv +EXPORT_SYMBOL vmlinux 0x9187bf54 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0x919029aa __readwrite_bug +EXPORT_SYMBOL vmlinux 0x91919971 __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0x919e9866 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0x91aec064 down_read_trylock +EXPORT_SYMBOL vmlinux 0x91c0980e icst_hz +EXPORT_SYMBOL vmlinux 0x91d43a82 mdiobus_scan +EXPORT_SYMBOL vmlinux 0x91d49977 mmc_gpio_free_cd +EXPORT_SYMBOL vmlinux 0x920eb90c interruptible_sleep_on_timeout +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x924b9e9c always_delete_dentry +EXPORT_SYMBOL vmlinux 0x925520d2 blk_start_plug +EXPORT_SYMBOL vmlinux 0x92737165 inode_permission +EXPORT_SYMBOL vmlinux 0x9276ce28 edma_set_dest +EXPORT_SYMBOL vmlinux 0x92a9c60c time_to_tm +EXPORT_SYMBOL vmlinux 0x92be6608 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x92e86bc4 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0x92ec5d1b dispc_mgr_enable +EXPORT_SYMBOL vmlinux 0x92fbff23 eth_header_cache_update +EXPORT_SYMBOL vmlinux 0x92ff0178 netdev_printk +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x93215e1d __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0x9325186d tcp_hashinfo +EXPORT_SYMBOL vmlinux 0x932b79a7 flush_old_exec +EXPORT_SYMBOL vmlinux 0x9330cb9f sg_alloc_table +EXPORT_SYMBOL vmlinux 0x9332fb85 sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0x934c751f skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0x93538d38 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0x9366ae8e audit_log_start +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x937ef5eb skb_put +EXPORT_SYMBOL vmlinux 0x93963a85 dss_feat_get_num_mgrs +EXPORT_SYMBOL vmlinux 0x93966ca2 mb_cache_entry_alloc +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93a9f9e6 kern_path_mountpoint +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93bd9acd dma_release_declared_memory +EXPORT_SYMBOL vmlinux 0x93c45eb6 pci_bus_get +EXPORT_SYMBOL vmlinux 0x93dd151c lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0x93e7493c fsnotify_put_group +EXPORT_SYMBOL vmlinux 0x93f9f15c tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0x93faa779 devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0x93fca811 __get_free_pages +EXPORT_SYMBOL vmlinux 0x94029868 udplite_prot +EXPORT_SYMBOL vmlinux 0x94098ff8 snd_interval_list +EXPORT_SYMBOL vmlinux 0x94392d8c tcf_hash_search +EXPORT_SYMBOL vmlinux 0x945262a7 mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0x94623224 write_one_page +EXPORT_SYMBOL vmlinux 0x94719ba3 do_splice_direct +EXPORT_SYMBOL vmlinux 0x948fd66d filemap_fdatawait +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x949a8924 tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0x949f360e seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x94d3da68 rtc_lock +EXPORT_SYMBOL vmlinux 0x94ee0c4d generic_file_remap_pages +EXPORT_SYMBOL vmlinux 0x9508f166 param_ops_bint +EXPORT_SYMBOL vmlinux 0x951027f1 generic_readlink +EXPORT_SYMBOL vmlinux 0x9524f485 dev_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x9555a70b mutex_unlock +EXPORT_SYMBOL vmlinux 0x95622f41 down_timeout +EXPORT_SYMBOL vmlinux 0x956334a0 done_path_create +EXPORT_SYMBOL vmlinux 0x956f0df7 blk_queue_merge_bvec +EXPORT_SYMBOL vmlinux 0x958532e5 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x958f5654 follow_pfn +EXPORT_SYMBOL vmlinux 0x95bfcf9f security_path_chown +EXPORT_SYMBOL vmlinux 0x95cb929c of_find_all_nodes +EXPORT_SYMBOL vmlinux 0x95d66f67 mntput +EXPORT_SYMBOL vmlinux 0x95dbe078 __get_user_2 +EXPORT_SYMBOL vmlinux 0x95e5b9a8 sockfd_lookup +EXPORT_SYMBOL vmlinux 0x95e6e500 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x960c3e32 fs_bio_set +EXPORT_SYMBOL vmlinux 0x961297bc jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0x9613509a idr_replace +EXPORT_SYMBOL vmlinux 0x961c7bfc led_set_brightness +EXPORT_SYMBOL vmlinux 0x961ccbae max8998_update_reg +EXPORT_SYMBOL vmlinux 0x962e4142 pci_set_dma_seg_boundary +EXPORT_SYMBOL vmlinux 0x96399ad7 generic_block_bmap +EXPORT_SYMBOL vmlinux 0x964af766 scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x964f5236 inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0x96573b80 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x967b561a input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0x9681d6c6 request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0x9686e995 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0x96898769 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x969882b0 sk_stream_error +EXPORT_SYMBOL vmlinux 0x96abf61f pcie_set_readrq +EXPORT_SYMBOL vmlinux 0x96ac3f1d blk_rq_map_user +EXPORT_SYMBOL vmlinux 0x96b39b6e omap_start_dma_chain_transfers +EXPORT_SYMBOL vmlinux 0x96b4e031 omapdss_register_output +EXPORT_SYMBOL vmlinux 0x96b9a79b pci_assign_resource +EXPORT_SYMBOL vmlinux 0x96c91d51 unregister_qdisc +EXPORT_SYMBOL vmlinux 0x96cbcc81 ipmi_get_version +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96e1863a devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x9700a06f neigh_seq_next +EXPORT_SYMBOL vmlinux 0x970ba5d0 elv_dispatch_add_tail +EXPORT_SYMBOL vmlinux 0x97255bdf strlen +EXPORT_SYMBOL vmlinux 0x97306157 lease_modify +EXPORT_SYMBOL vmlinux 0x9732bf1b generic_removexattr +EXPORT_SYMBOL vmlinux 0x973318aa unlock_page +EXPORT_SYMBOL vmlinux 0x9744ad21 pci_set_master +EXPORT_SYMBOL vmlinux 0x974e1059 tcp_sync_mss +EXPORT_SYMBOL vmlinux 0x9754ec10 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x97581ed9 shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x976e700f down_trylock +EXPORT_SYMBOL vmlinux 0x977bf35e devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0x978272e9 pci_dev_put +EXPORT_SYMBOL vmlinux 0x978b6aca udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0x978f4bc4 blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0x978fafa0 dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0x9793c93a dispc_mgr_setup +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x979b7ace __get_user_pages +EXPORT_SYMBOL vmlinux 0x979e5609 kthread_create_on_node +EXPORT_SYMBOL vmlinux 0x97a2f6bb mmc_gpio_request_cd +EXPORT_SYMBOL vmlinux 0x97a60e3d param_get_bool +EXPORT_SYMBOL vmlinux 0x97a6c86b ip_getsockopt +EXPORT_SYMBOL vmlinux 0x97b4500c __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0x97c1e6d9 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0x97e5f246 inet_confirm_addr +EXPORT_SYMBOL vmlinux 0x97e5fa93 mmc_can_trim +EXPORT_SYMBOL vmlinux 0x97f21820 kern_path +EXPORT_SYMBOL vmlinux 0x98082893 __copy_to_user +EXPORT_SYMBOL vmlinux 0x9820b644 warn_slowpath_fmt_taint +EXPORT_SYMBOL vmlinux 0x983a7e6a dcache_dir_open +EXPORT_SYMBOL vmlinux 0x9869f8e1 d_instantiate_no_diralias +EXPORT_SYMBOL vmlinux 0x986e6135 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x987f58cb simple_transaction_read +EXPORT_SYMBOL vmlinux 0x9885559d tcp_ioctl +EXPORT_SYMBOL vmlinux 0x9890b65b pci_platform_rom +EXPORT_SYMBOL vmlinux 0x989b773d uart_suspend_port +EXPORT_SYMBOL vmlinux 0x98dd49aa dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x98ebf13b mmc_free_host +EXPORT_SYMBOL vmlinux 0x98fa21b0 mod_timer_pinned +EXPORT_SYMBOL vmlinux 0x990dfb64 __memcg_kmem_get_cache +EXPORT_SYMBOL vmlinux 0x9927c664 blk_mq_end_io +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x99591a7a ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x996c4d30 proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x99835ce7 tty_check_change +EXPORT_SYMBOL vmlinux 0x998b65b6 tty_port_tty_set +EXPORT_SYMBOL vmlinux 0x9994bfbe d_genocide +EXPORT_SYMBOL vmlinux 0x9994c0ca ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x999c3148 __raw_readsb +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99a12471 noop_qdisc +EXPORT_SYMBOL vmlinux 0x99a621c5 max8998_bulk_write +EXPORT_SYMBOL vmlinux 0x99b6aee8 alloc_disk_node +EXPORT_SYMBOL vmlinux 0x99bb8806 memmove +EXPORT_SYMBOL vmlinux 0x99cdc86b sysctl_tcp_reordering +EXPORT_SYMBOL vmlinux 0x99dcce08 snd_pcm_new_stream +EXPORT_SYMBOL vmlinux 0x99f58330 lg_local_lock_cpu +EXPORT_SYMBOL vmlinux 0x99f8ce9d twl6040_power +EXPORT_SYMBOL vmlinux 0x9a08fcbc make_kprojid +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a1fc4b4 jiffies_to_timeval +EXPORT_SYMBOL vmlinux 0x9a350e85 pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0x9a3bd7f1 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x9a57455a ilookup5 +EXPORT_SYMBOL vmlinux 0x9a6e183a __idr_remove_all +EXPORT_SYMBOL vmlinux 0x9a8318ef v7_coherent_kern_range +EXPORT_SYMBOL vmlinux 0x9a856f53 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x9a993132 __cleancache_put_page +EXPORT_SYMBOL vmlinux 0x9a9c8aa0 scsi_free_command +EXPORT_SYMBOL vmlinux 0x9aab5a9a snd_jack_report +EXPORT_SYMBOL vmlinux 0x9ab70449 devfreq_interval_update +EXPORT_SYMBOL vmlinux 0x9ab96835 sk_prot_clear_portaddr_nulls +EXPORT_SYMBOL vmlinux 0x9b3097b0 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b388444 get_zeroed_page +EXPORT_SYMBOL vmlinux 0x9b53107e mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0x9b5b6011 genphy_config_aneg +EXPORT_SYMBOL vmlinux 0x9b5ffad5 path_put +EXPORT_SYMBOL vmlinux 0x9b6eb137 ksize +EXPORT_SYMBOL vmlinux 0x9b702bb2 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x9b86abd3 dst_discard +EXPORT_SYMBOL vmlinux 0x9b993e4d drop_nlink +EXPORT_SYMBOL vmlinux 0x9b9b27e7 i2c_add_adapter +EXPORT_SYMBOL vmlinux 0x9b9e05f9 alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0x9ba7089d argv_split +EXPORT_SYMBOL vmlinux 0x9baa92fb pci_match_id +EXPORT_SYMBOL vmlinux 0x9bc97cd5 consume_skb +EXPORT_SYMBOL vmlinux 0x9bcc96ee nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x9bce482f __release_region +EXPORT_SYMBOL vmlinux 0x9bda4bb4 edma_set_src +EXPORT_SYMBOL vmlinux 0x9bdfe368 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0x9be29e0c inet6_add_protocol +EXPORT_SYMBOL vmlinux 0x9be51324 sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x9be7bde4 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x9bef14a5 eth_header +EXPORT_SYMBOL vmlinux 0x9c05160a phy_attach_direct +EXPORT_SYMBOL vmlinux 0x9c05ac2b __module_put_and_exit +EXPORT_SYMBOL vmlinux 0x9c0bd51f _raw_spin_lock +EXPORT_SYMBOL vmlinux 0x9c3737fc __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x9c628329 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0x9c77bd67 netif_device_detach +EXPORT_SYMBOL vmlinux 0x9c8394a1 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0x9c8469f7 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0x9c97082e edma_pause +EXPORT_SYMBOL vmlinux 0x9c9abeaf genphy_setup_forced +EXPORT_SYMBOL vmlinux 0x9c9ec2a0 proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cba3c37 _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x9ccd627b __generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x9cde1834 xfrm_state_flush +EXPORT_SYMBOL vmlinux 0x9ceb163c memcpy_toiovec +EXPORT_SYMBOL vmlinux 0x9cf48932 neigh_lookup +EXPORT_SYMBOL vmlinux 0x9cfd56c5 scsi_print_status +EXPORT_SYMBOL vmlinux 0x9cfea7d1 key_payload_reserve +EXPORT_SYMBOL vmlinux 0x9d0573ea scsi_finish_command +EXPORT_SYMBOL vmlinux 0x9d05f6c4 ktime_get_clocktai +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d179218 fb_class +EXPORT_SYMBOL vmlinux 0x9d1a95b0 blk_queue_find_tag +EXPORT_SYMBOL vmlinux 0x9d3aa376 blk_iopoll_init +EXPORT_SYMBOL vmlinux 0x9d3c3e6d kill_block_super +EXPORT_SYMBOL vmlinux 0x9d669763 memcpy +EXPORT_SYMBOL vmlinux 0x9d66b00d pm860x_page_bulk_write +EXPORT_SYMBOL vmlinux 0x9d6f143d vfs_statfs +EXPORT_SYMBOL vmlinux 0x9d7e5ac2 iterate_dir +EXPORT_SYMBOL vmlinux 0x9d90f95f __crc32c_le_combine +EXPORT_SYMBOL vmlinux 0x9da9bb61 snd_timer_notify +EXPORT_SYMBOL vmlinux 0x9dc5b4f9 snd_pci_quirk_lookup +EXPORT_SYMBOL vmlinux 0x9ddb9937 dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0x9de21fb5 file_update_time +EXPORT_SYMBOL vmlinux 0x9dfe7307 lz4_decompress_unknownoutputsize +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e196fd8 bio_get_nr_vecs +EXPORT_SYMBOL vmlinux 0x9e2000a7 memcpy_toiovecend +EXPORT_SYMBOL vmlinux 0x9e2aedfb dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x9e44b9b7 of_get_next_available_child +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e5d60a2 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e672ff6 scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL vmlinux 0x9e70e574 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0x9e77256a scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x9e79e27d twl6040_reg_read +EXPORT_SYMBOL vmlinux 0x9e7f0e6f in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x9e9e2554 blk_sync_queue +EXPORT_SYMBOL vmlinux 0x9e9f1714 __bitmap_andnot +EXPORT_SYMBOL vmlinux 0x9ea6db9a arp_invalidate +EXPORT_SYMBOL vmlinux 0x9eb46f10 ppp_channel_index +EXPORT_SYMBOL vmlinux 0x9ecc6a7a interruptible_sleep_on +EXPORT_SYMBOL vmlinux 0x9ed2eec7 param_set_ushort +EXPORT_SYMBOL vmlinux 0x9ed3eb13 seq_putc +EXPORT_SYMBOL vmlinux 0x9ed4576d fsnotify_put_mark +EXPORT_SYMBOL vmlinux 0x9ed685ee iov_iter_advance +EXPORT_SYMBOL vmlinux 0x9f00adf1 pci_disable_ido +EXPORT_SYMBOL vmlinux 0x9f09841d empty_aops +EXPORT_SYMBOL vmlinux 0x9f2bdaac __bitmap_or +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f491e5d ftrace_print_symbols_seq_u64 +EXPORT_SYMBOL vmlinux 0x9f5f6eb5 dquot_quotactl_ops +EXPORT_SYMBOL vmlinux 0x9f6651f3 mmc_start_req +EXPORT_SYMBOL vmlinux 0x9f72f1e5 kern_unmount +EXPORT_SYMBOL vmlinux 0x9f823cea dispc_mgr_is_enabled +EXPORT_SYMBOL vmlinux 0x9f83c7a0 gen10g_config_advert +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9f99c437 eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0x9fa079e5 scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x9faa8db4 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x9fb3dd30 memcpy_fromiovec +EXPORT_SYMBOL vmlinux 0x9fc50251 tcp_disconnect +EXPORT_SYMBOL vmlinux 0x9fcd5465 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9ff5dbb0 con_copy_unimap +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0x9ffbd47a d_alloc_pseudo +EXPORT_SYMBOL vmlinux 0xa0007ce1 ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0xa00eb15b ioremap_page +EXPORT_SYMBOL vmlinux 0xa03c8e21 kblockd_schedule_delayed_work +EXPORT_SYMBOL vmlinux 0xa03dcc95 tc_classify_compat +EXPORT_SYMBOL vmlinux 0xa03eb2a3 i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa04a01bd qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xa0576437 tegra_ahb_enable_smmu +EXPORT_SYMBOL vmlinux 0xa05c03df mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xa06094c6 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xa06df9e1 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0xa06ff89e tcf_em_register +EXPORT_SYMBOL vmlinux 0xa0771a45 blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0xa07ed110 xz_dec_init +EXPORT_SYMBOL vmlinux 0xa0897747 iget5_locked +EXPORT_SYMBOL vmlinux 0xa0966e4b unregister_shrinker +EXPORT_SYMBOL vmlinux 0xa098b112 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0xa0aae687 imx_ssi_fiq_end +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0b535aa tcp_make_synack +EXPORT_SYMBOL vmlinux 0xa0cb0c3e security_inode_init_security +EXPORT_SYMBOL vmlinux 0xa0ceef51 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0xa0d68218 scsi_cmd_get_serial +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0daedea kernel_bind +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa0fd2427 snd_pci_quirk_lookup_id +EXPORT_SYMBOL vmlinux 0xa10749f0 input_unregister_device +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa12c2104 dma_mmap_from_coherent +EXPORT_SYMBOL vmlinux 0xa12ef258 try_to_release_page +EXPORT_SYMBOL vmlinux 0xa1415618 twl6030_interrupt_unmask +EXPORT_SYMBOL vmlinux 0xa14f3d8c ewma_add +EXPORT_SYMBOL vmlinux 0xa18fafe7 kernel_recvmsg +EXPORT_SYMBOL vmlinux 0xa194b943 default_llseek +EXPORT_SYMBOL vmlinux 0xa19e3877 put_io_context +EXPORT_SYMBOL vmlinux 0xa1a91318 tcp_check_req +EXPORT_SYMBOL vmlinux 0xa1b3e2f2 mpage_writepage +EXPORT_SYMBOL vmlinux 0xa1b759ce fb_add_videomode +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1d55e90 _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0xa1e4bd86 snd_seq_root +EXPORT_SYMBOL vmlinux 0xa1e4f7b5 crypto_sha1_update +EXPORT_SYMBOL vmlinux 0xa1f0ebea bit_waitqueue +EXPORT_SYMBOL vmlinux 0xa2059b9f nla_reserve +EXPORT_SYMBOL vmlinux 0xa20ce1b8 net_msg_warn +EXPORT_SYMBOL vmlinux 0xa22f3bf5 input_grab_device +EXPORT_SYMBOL vmlinux 0xa25e0944 blk_queue_invalidate_tags +EXPORT_SYMBOL vmlinux 0xa2698084 __ww_mutex_lock +EXPORT_SYMBOL vmlinux 0xa2848c50 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0xa28a2ace ipmi_set_gets_events +EXPORT_SYMBOL vmlinux 0xa2937c01 neigh_compat_output +EXPORT_SYMBOL vmlinux 0xa293cf51 skb_queue_tail +EXPORT_SYMBOL vmlinux 0xa2a98b91 ipmi_get_maintenance_mode +EXPORT_SYMBOL vmlinux 0xa2b4a405 bio_add_page +EXPORT_SYMBOL vmlinux 0xa2bf25e7 snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL vmlinux 0xa2d28bbc pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0xa2ef34d7 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xa31e44ba edma_free_channel +EXPORT_SYMBOL vmlinux 0xa320da3b tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0xa323d92f dma_alloc_from_coherent +EXPORT_SYMBOL vmlinux 0xa3276a29 inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0xa332464a of_get_cpu_node +EXPORT_SYMBOL vmlinux 0xa336feb7 nand_manuf_ids +EXPORT_SYMBOL vmlinux 0xa34f1ef5 crc32_le +EXPORT_SYMBOL vmlinux 0xa35444e4 dispc_write_irqenable +EXPORT_SYMBOL vmlinux 0xa35de80f ipv4_config +EXPORT_SYMBOL vmlinux 0xa381944f dql_reset +EXPORT_SYMBOL vmlinux 0xa3b9b8d3 __vlan_find_dev_deep +EXPORT_SYMBOL vmlinux 0xa3d941f8 xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0xa3f35bf5 rwsem_is_locked +EXPORT_SYMBOL vmlinux 0xa414882d add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0xa41b785f blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0xa4209e73 cancel_dirty_page +EXPORT_SYMBOL vmlinux 0xa43b1297 vscnprintf +EXPORT_SYMBOL vmlinux 0xa43b9539 memcpy_fromiovecend +EXPORT_SYMBOL vmlinux 0xa452ec0a omap_video_timings_to_videomode +EXPORT_SYMBOL vmlinux 0xa4610bc6 omap_rev +EXPORT_SYMBOL vmlinux 0xa4701e9e timekeeping_inject_offset +EXPORT_SYMBOL vmlinux 0xa4756848 mmc_cleanup_queue +EXPORT_SYMBOL vmlinux 0xa4788dc2 dev_activate +EXPORT_SYMBOL vmlinux 0xa479ebb3 bio_put +EXPORT_SYMBOL vmlinux 0xa47d416b mpage_readpage +EXPORT_SYMBOL vmlinux 0xa48f5b09 omap_dma_set_global_params +EXPORT_SYMBOL vmlinux 0xa4af8e63 mmc_can_reset +EXPORT_SYMBOL vmlinux 0xa4b42c55 omap_set_dma_priority +EXPORT_SYMBOL vmlinux 0xa500258a genphy_suspend +EXPORT_SYMBOL vmlinux 0xa50a111e inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0xa5304a80 blk_queue_resize_tags +EXPORT_SYMBOL vmlinux 0xa5520beb gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa5581344 simple_unlink +EXPORT_SYMBOL vmlinux 0xa55d7c33 sock_no_sendpage +EXPORT_SYMBOL vmlinux 0xa56398f6 release_pages +EXPORT_SYMBOL vmlinux 0xa57748e9 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0xa58fea9d mempool_destroy +EXPORT_SYMBOL vmlinux 0xa595cd7b blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0xa598e29c vesa_modes +EXPORT_SYMBOL vmlinux 0xa5a633b9 sg_last +EXPORT_SYMBOL vmlinux 0xa5a9c575 nf_register_hook +EXPORT_SYMBOL vmlinux 0xa5be89e4 pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xa5c05dc4 scsi_register +EXPORT_SYMBOL vmlinux 0xa5c61126 dev_addr_init +EXPORT_SYMBOL vmlinux 0xa5cd63cc tty_schedule_flip +EXPORT_SYMBOL vmlinux 0xa5cef8ad release_resource +EXPORT_SYMBOL vmlinux 0xa5dd921b bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0xa615cf42 __ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL vmlinux 0xa61e4362 omap_request_dma +EXPORT_SYMBOL vmlinux 0xa626a67d blk_end_request_all +EXPORT_SYMBOL vmlinux 0xa62a83fd bio_sector_offset +EXPORT_SYMBOL vmlinux 0xa6383944 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0xa63a2f9b param_get_ulong +EXPORT_SYMBOL vmlinux 0xa63d85ab slhc_remember +EXPORT_SYMBOL vmlinux 0xa64a4cea usb_nop_xceiv_unregister +EXPORT_SYMBOL vmlinux 0xa652c4ef __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0xa6693517 inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0xa6715115 do_settimeofday +EXPORT_SYMBOL vmlinux 0xa675804c utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0xa67dc82c nand_scan +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6970398 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0xa69a4e3e input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0xa6a3b7a4 snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL vmlinux 0xa6a91435 ip_defrag +EXPORT_SYMBOL vmlinux 0xa6b7198f eth_validate_addr +EXPORT_SYMBOL vmlinux 0xa6b8f820 fd_install +EXPORT_SYMBOL vmlinux 0xa6bab23d dqstats +EXPORT_SYMBOL vmlinux 0xa6c98ffa i2c_transfer +EXPORT_SYMBOL vmlinux 0xa6ebc2c7 dquot_drop +EXPORT_SYMBOL vmlinux 0xa7003b11 pagecache_write_end +EXPORT_SYMBOL vmlinux 0xa7160617 security_path_link +EXPORT_SYMBOL vmlinux 0xa71944e7 blk_queue_softirq_done +EXPORT_SYMBOL vmlinux 0xa734a3e9 abort_exclusive_wait +EXPORT_SYMBOL vmlinux 0xa735db59 prandom_u32 +EXPORT_SYMBOL vmlinux 0xa73be645 skb_split +EXPORT_SYMBOL vmlinux 0xa73fc98f of_n_addr_cells +EXPORT_SYMBOL vmlinux 0xa74d31a5 qdisc_destroy +EXPORT_SYMBOL vmlinux 0xa7726be1 pcim_iounmap +EXPORT_SYMBOL vmlinux 0xa77a369d idr_init +EXPORT_SYMBOL vmlinux 0xa78c926e __scsi_put_command +EXPORT_SYMBOL vmlinux 0xa78eb6e6 of_mdio_find_bus +EXPORT_SYMBOL vmlinux 0xa79d03e3 jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0xa7a71daa con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xa7b4471d cdev_init +EXPORT_SYMBOL vmlinux 0xa7b87a09 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0xa7bf0958 mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0xa804619e kernel_accept +EXPORT_SYMBOL vmlinux 0xa8068528 serio_reconnect +EXPORT_SYMBOL vmlinux 0xa808bcb8 vexpress_config_wait +EXPORT_SYMBOL vmlinux 0xa8174daa max8925_reg_read +EXPORT_SYMBOL vmlinux 0xa8211362 __find_get_block +EXPORT_SYMBOL vmlinux 0xa8232c78 strtobool +EXPORT_SYMBOL vmlinux 0xa83350f2 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0xa835a640 sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa85461b5 bmap +EXPORT_SYMBOL vmlinux 0xa8552323 pci_bus_put +EXPORT_SYMBOL vmlinux 0xa85ef4f5 rtnl_notify +EXPORT_SYMBOL vmlinux 0xa86c86a7 ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0xa8721b97 system_state +EXPORT_SYMBOL vmlinux 0xa898845c jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0xa89f2acb nand_bch_correct_data +EXPORT_SYMBOL vmlinux 0xa8a8110c kernel_neon_end +EXPORT_SYMBOL vmlinux 0xa8bb4aa1 key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0xa8bcc12d amba_request_regions +EXPORT_SYMBOL vmlinux 0xa8bf0f0b inode_sub_rsv_space +EXPORT_SYMBOL vmlinux 0xa8e0edd8 dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0xa8e5cbf4 bio_integrity_tag_size +EXPORT_SYMBOL vmlinux 0xa8e5f653 dma_async_memcpy_pg_to_pg +EXPORT_SYMBOL vmlinux 0xa8f135ad __module_get +EXPORT_SYMBOL vmlinux 0xa8fd22d8 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0xa8fef7bb security_unix_may_send +EXPORT_SYMBOL vmlinux 0xa9017f91 remove_proc_entry +EXPORT_SYMBOL vmlinux 0xa9167f4e vfs_writev +EXPORT_SYMBOL vmlinux 0xa955d5f5 tty_write_room +EXPORT_SYMBOL vmlinux 0xa964dd13 gpmc_cs_request +EXPORT_SYMBOL vmlinux 0xa96c4995 fib_default_rule_pref +EXPORT_SYMBOL vmlinux 0xa9818671 bh_submit_read +EXPORT_SYMBOL vmlinux 0xa997350b dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0xa9985f1c blk_stop_queue +EXPORT_SYMBOL vmlinux 0xa9a1d3d2 tcp_parse_options +EXPORT_SYMBOL vmlinux 0xa9b63345 of_parse_phandle_with_fixed_args +EXPORT_SYMBOL vmlinux 0xa9bba6f3 vm_insert_page +EXPORT_SYMBOL vmlinux 0xa9d7d13b phy_init_eee +EXPORT_SYMBOL vmlinux 0xa9dd5d99 genphy_update_link +EXPORT_SYMBOL vmlinux 0xa9e0836e inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0xa9effda5 __first_cpu +EXPORT_SYMBOL vmlinux 0xa9f9e7e5 netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0xaa2fe2c2 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0xaa3b48d8 bdevname +EXPORT_SYMBOL vmlinux 0xaa5629e4 pci_pme_capable +EXPORT_SYMBOL vmlinux 0xaa6491ec snd_ctl_register_ioctl +EXPORT_SYMBOL vmlinux 0xaa6901ac __kfifo_out_r +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa78621c mmc_get_card +EXPORT_SYMBOL vmlinux 0xaa7d31c5 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0xaa7f5d51 pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0xaa9087c0 param_ops_string +EXPORT_SYMBOL vmlinux 0xaa9b1509 padata_free +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab02cd61 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0xab14ce6f netdev_info +EXPORT_SYMBOL vmlinux 0xab48a35f abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0xab49810b snd_info_register +EXPORT_SYMBOL vmlinux 0xab4d369a inode_needs_sync +EXPORT_SYMBOL vmlinux 0xab600421 probe_irq_off +EXPORT_SYMBOL vmlinux 0xab65dda8 inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0xab693f8e freeze_super +EXPORT_SYMBOL vmlinux 0xab694444 bsearch +EXPORT_SYMBOL vmlinux 0xab6bde28 sysctl_max_syn_backlog +EXPORT_SYMBOL vmlinux 0xab7603e7 imx_ssi_fiq_start +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xabbc2e06 pci_scan_slot +EXPORT_SYMBOL vmlinux 0xabc6dd63 cpufreq_sysfs_create_file +EXPORT_SYMBOL vmlinux 0xabcaa577 free_anon_bdev +EXPORT_SYMBOL vmlinux 0xabd0c91c rtc_time_to_tm +EXPORT_SYMBOL vmlinux 0xabeae060 inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xabf6d766 register_gifconf +EXPORT_SYMBOL vmlinux 0xabf992fc netdev_crit +EXPORT_SYMBOL vmlinux 0xac0ba8c1 blk_iopoll_disable +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac390091 dev_base_lock +EXPORT_SYMBOL vmlinux 0xac401824 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0xac72ab78 security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0xac816cf4 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0xac8f37b2 outer_cache +EXPORT_SYMBOL vmlinux 0xac9f5935 netdev_master_upper_dev_link_private +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xaccabc6a in4_pton +EXPORT_SYMBOL vmlinux 0xacd40a06 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad2fbb8a omapdss_default_get_timings +EXPORT_SYMBOL vmlinux 0xad3fbbc2 ps2_end_command +EXPORT_SYMBOL vmlinux 0xad46dec2 of_count_phandle_with_args +EXPORT_SYMBOL vmlinux 0xad4ade0c blk_start_request +EXPORT_SYMBOL vmlinux 0xad520624 sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0xad60d148 dev_crit +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad84eb3a inode_reclaim_rsv_space +EXPORT_SYMBOL vmlinux 0xad91c94a scsi_is_host_device +EXPORT_SYMBOL vmlinux 0xadb33b21 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0xadd49154 __nla_put +EXPORT_SYMBOL vmlinux 0xade88e76 snd_malloc_pages +EXPORT_SYMBOL vmlinux 0xadf06e60 textsearch_prepare +EXPORT_SYMBOL vmlinux 0xadf42bd5 __request_region +EXPORT_SYMBOL vmlinux 0xadfde83e insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0xae2982ee blk_queue_io_min +EXPORT_SYMBOL vmlinux 0xae449b79 twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0xae57c288 bio_flush_dcache_pages +EXPORT_SYMBOL vmlinux 0xae5c93c4 set_device_ro +EXPORT_SYMBOL vmlinux 0xae5dec64 i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0xae5e3011 search_binary_handler +EXPORT_SYMBOL vmlinux 0xae5ec2db led_blink_set +EXPORT_SYMBOL vmlinux 0xae633745 blk_run_queue +EXPORT_SYMBOL vmlinux 0xae729e59 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xae77a996 skb_pad +EXPORT_SYMBOL vmlinux 0xae86b9c2 get_write_access +EXPORT_SYMBOL vmlinux 0xaec655c7 alloc_pages_exact +EXPORT_SYMBOL vmlinux 0xaeceabca pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0xaf01653c sock_no_listen +EXPORT_SYMBOL vmlinux 0xaf043e73 security_path_symlink +EXPORT_SYMBOL vmlinux 0xaf05b91b of_device_is_available +EXPORT_SYMBOL vmlinux 0xaf0c888c generic_writepages +EXPORT_SYMBOL vmlinux 0xaf0ea678 read_code +EXPORT_SYMBOL vmlinux 0xaf276962 tcf_em_unregister +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf3f19b9 __frontswap_test +EXPORT_SYMBOL vmlinux 0xaf50e76d elf_set_personality +EXPORT_SYMBOL vmlinux 0xaf58a996 freezing_slow_path +EXPORT_SYMBOL vmlinux 0xaf5f7994 remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xaf64ad0d zlib_deflate +EXPORT_SYMBOL vmlinux 0xaf757feb sock_recvmsg +EXPORT_SYMBOL vmlinux 0xaf8aa518 system_rev +EXPORT_SYMBOL vmlinux 0xaf91d89f __kernel_param_lock +EXPORT_SYMBOL vmlinux 0xafa87ac9 snd_timer_close +EXPORT_SYMBOL vmlinux 0xafa8ba4e netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0xafad493b param_ops_ushort +EXPORT_SYMBOL vmlinux 0xafb79574 simple_rmdir +EXPORT_SYMBOL vmlinux 0xafbf4ba5 pipe_to_file +EXPORT_SYMBOL vmlinux 0xafc214f4 mmc_hw_reset_check +EXPORT_SYMBOL vmlinux 0xb04099dc snd_pcm_hw_constraint_integer +EXPORT_SYMBOL vmlinux 0xb04cf0fe lg_local_unlock +EXPORT_SYMBOL vmlinux 0xb05a657e pci_pme_active +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb062cc20 phy_device_register +EXPORT_SYMBOL vmlinux 0xb0691b84 test_set_page_writeback +EXPORT_SYMBOL vmlinux 0xb0972da0 mdiobus_write +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0b847ac __bitmap_full +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0f68e0e skb_queue_purge +EXPORT_SYMBOL vmlinux 0xb0ffda2f blk_limits_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xb11409ab phy_stop +EXPORT_SYMBOL vmlinux 0xb121390a probe_irq_on +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb1304bfe of_gpio_simple_xlate +EXPORT_SYMBOL vmlinux 0xb1338c90 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0xb184157c snd_card_set_id +EXPORT_SYMBOL vmlinux 0xb19760c3 bitmap_onto +EXPORT_SYMBOL vmlinux 0xb19cf881 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1cf44df fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xb1d13723 mmc_register_driver +EXPORT_SYMBOL vmlinux 0xb1d9aabd lg_local_unlock_cpu +EXPORT_SYMBOL vmlinux 0xb1db9e4e param_get_invbool +EXPORT_SYMBOL vmlinux 0xb1dc34e4 remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0xb1dfb3e1 bio_map_user +EXPORT_SYMBOL vmlinux 0xb1f45f75 phy_ethtool_sset +EXPORT_SYMBOL vmlinux 0xb20eec30 input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0xb2434d75 tcf_hash_release +EXPORT_SYMBOL vmlinux 0xb24ea6b0 blk_mq_map_queue +EXPORT_SYMBOL vmlinux 0xb2682405 utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0xb2719951 pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0xb2738349 dev_get_drvdata +EXPORT_SYMBOL vmlinux 0xb275516c security_inode_permission +EXPORT_SYMBOL vmlinux 0xb27b00bc gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0xb2b283ae simple_getattr +EXPORT_SYMBOL vmlinux 0xb2b94674 __crc32c_le +EXPORT_SYMBOL vmlinux 0xb2be6e92 netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xb2d24195 sget +EXPORT_SYMBOL vmlinux 0xb2d48a2e queue_work_on +EXPORT_SYMBOL vmlinux 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL vmlinux 0xb31526ee sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0xb32e9e00 ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0xb333da3f in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xb3459056 page_symlink +EXPORT_SYMBOL vmlinux 0xb34b044e omap_dss_get_next_device +EXPORT_SYMBOL vmlinux 0xb3628ce2 single_open_size +EXPORT_SYMBOL vmlinux 0xb367c984 mxc_set_irq_fiq +EXPORT_SYMBOL vmlinux 0xb3791348 sb_set_blocksize +EXPORT_SYMBOL vmlinux 0xb3ad9b68 generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0xb3d8dd8c release_firmware +EXPORT_SYMBOL vmlinux 0xb3e24e72 simple_pin_fs +EXPORT_SYMBOL vmlinux 0xb3e2fb3b xfrm4_prepare_output +EXPORT_SYMBOL vmlinux 0xb3ee24a9 twl6040_reg_write +EXPORT_SYMBOL vmlinux 0xb3f0ff63 tcp_init_cgroup +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb41c74c5 padata_stop +EXPORT_SYMBOL vmlinux 0xb41ddda3 netdev_alert +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb426175d sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0xb42f3884 flush_kernel_dcache_page +EXPORT_SYMBOL vmlinux 0xb43a45be start_tty +EXPORT_SYMBOL vmlinux 0xb4455a45 dcache_dir_close +EXPORT_SYMBOL vmlinux 0xb4628b3d fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0xb4709322 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0xb4871882 sock_no_shutdown +EXPORT_SYMBOL vmlinux 0xb4b94377 __nand_correct_data +EXPORT_SYMBOL vmlinux 0xb4c5c4ea ether_setup +EXPORT_SYMBOL vmlinux 0xb4c8f38a omap_dma_chain_status +EXPORT_SYMBOL vmlinux 0xb511693a snd_pcm_hw_refine +EXPORT_SYMBOL vmlinux 0xb5198b77 _raw_read_lock +EXPORT_SYMBOL vmlinux 0xb52d8b8c snd_pcm_hw_constraint_step +EXPORT_SYMBOL vmlinux 0xb52eba0b tcf_exts_dump +EXPORT_SYMBOL vmlinux 0xb54533f7 usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xb5489f3c skb_free_datagram +EXPORT_SYMBOL vmlinux 0xb54c07cd cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0xb56169d4 snd_card_free_when_closed +EXPORT_SYMBOL vmlinux 0xb56e015a vfs_llseek +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb58e1f33 follow_down +EXPORT_SYMBOL vmlinux 0xb5954b57 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0xb59dbde4 dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5a54ca1 sg_miter_next +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5ba4a50 kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0xb5c00014 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0xb5ca1c46 slhc_free +EXPORT_SYMBOL vmlinux 0xb5cd1691 vexpress_config_complete +EXPORT_SYMBOL vmlinux 0xb5d9454c printk_emit +EXPORT_SYMBOL vmlinux 0xb5ebcef8 netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0xb5fb96a7 clear_inode +EXPORT_SYMBOL vmlinux 0xb61b3587 __lock_page +EXPORT_SYMBOL vmlinux 0xb633df1b __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0xb637ae93 input_register_handle +EXPORT_SYMBOL vmlinux 0xb637c21e bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0xb6394d4b param_set_bint +EXPORT_SYMBOL vmlinux 0xb63f1d44 fsnotify_init_mark +EXPORT_SYMBOL vmlinux 0xb676f824 uart_match_port +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb67afc3f tcp_close +EXPORT_SYMBOL vmlinux 0xb6822a33 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0xb6896671 crc_t10dif +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb69f569c sock_i_ino +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6ac0a74 lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0xb6b46a7c param_ops_int +EXPORT_SYMBOL vmlinux 0xb6c5a973 scsi_show_result +EXPORT_SYMBOL vmlinux 0xb6c905c1 input_unregister_handler +EXPORT_SYMBOL vmlinux 0xb6e2912d flock_lock_file_wait +EXPORT_SYMBOL vmlinux 0xb6eedb57 dev_mc_del +EXPORT_SYMBOL vmlinux 0xb6fabc0a filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0xb72ae00c pci_iounmap +EXPORT_SYMBOL vmlinux 0xb74b616b gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0xb77131b1 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0xb7720ba6 I_BDEV +EXPORT_SYMBOL vmlinux 0xb7924c44 __put_cred +EXPORT_SYMBOL vmlinux 0xb792e022 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0xb7a3baa6 rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0xb7b61546 crc32_be +EXPORT_SYMBOL vmlinux 0xb7ba76c7 __aeabi_unwind_cpp_pr2 +EXPORT_SYMBOL vmlinux 0xb7fa41ee netlink_broadcast +EXPORT_SYMBOL vmlinux 0xb81960ca snprintf +EXPORT_SYMBOL vmlinux 0xb8272ee7 vga_put +EXPORT_SYMBOL vmlinux 0xb82905d7 sys_imageblit +EXPORT_SYMBOL vmlinux 0xb835b3e4 radix_tree_prev_hole +EXPORT_SYMBOL vmlinux 0xb83bd6bf init_buffer +EXPORT_SYMBOL vmlinux 0xb8433ed6 key_invalidate +EXPORT_SYMBOL vmlinux 0xb859825b cdrom_release +EXPORT_SYMBOL vmlinux 0xb85f44ed adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0xb862d2c3 netif_skb_dev_features +EXPORT_SYMBOL vmlinux 0xb86fb76c scsi_block_requests +EXPORT_SYMBOL vmlinux 0xb874b87a __clzsi2 +EXPORT_SYMBOL vmlinux 0xb8772868 eth_type_trans +EXPORT_SYMBOL vmlinux 0xb878c8f6 __blk_run_queue +EXPORT_SYMBOL vmlinux 0xb894ea1f security_path_mkdir +EXPORT_SYMBOL vmlinux 0xb8aa2342 __check_region +EXPORT_SYMBOL vmlinux 0xb8acec07 scsi_device_put +EXPORT_SYMBOL vmlinux 0xb8b4c738 vlan_untag +EXPORT_SYMBOL vmlinux 0xb8c3ebc8 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0xb8d5f832 __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0xb8d73e97 param_set_uint +EXPORT_SYMBOL vmlinux 0xb8e877e7 kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xb8fdf49f d_instantiate +EXPORT_SYMBOL vmlinux 0xb907dff0 fb_set_var +EXPORT_SYMBOL vmlinux 0xb93e947e padata_set_cpumasks +EXPORT_SYMBOL vmlinux 0xb95f98d6 _memset_io +EXPORT_SYMBOL vmlinux 0xb9617d93 dquot_quota_on +EXPORT_SYMBOL vmlinux 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL vmlinux 0xb96966f5 mfd_cell_enable +EXPORT_SYMBOL vmlinux 0xb976a2d8 scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0xb982fb71 mtd_concat_destroy +EXPORT_SYMBOL vmlinux 0xb98a0185 rtc_tm_to_time +EXPORT_SYMBOL vmlinux 0xb996382b __dquot_free_space +EXPORT_SYMBOL vmlinux 0xb9a8f03b omap_stop_dma +EXPORT_SYMBOL vmlinux 0xb9acd3d9 __put_user_2 +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xb9eb70ca jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0xba0823ff nobh_write_begin +EXPORT_SYMBOL vmlinux 0xba12891f inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0xba261c57 address_space_init_once +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba61ef8a ptp_clock_unregister +EXPORT_SYMBOL vmlinux 0xba7d870a __mxc_cpu_type +EXPORT_SYMBOL vmlinux 0xba967420 tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0xbab4d9f9 flush_dcache_page +EXPORT_SYMBOL vmlinux 0xbab5d015 tcf_register_action +EXPORT_SYMBOL vmlinux 0xbafeee36 dispc_runtime_get +EXPORT_SYMBOL vmlinux 0xbb1404b5 block_commit_write +EXPORT_SYMBOL vmlinux 0xbb152f1b snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL vmlinux 0xbb189cad disallow_signal +EXPORT_SYMBOL vmlinux 0xbb2d1c1d buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0xbb2e5217 inet_stream_ops +EXPORT_SYMBOL vmlinux 0xbb552da6 __generic_file_aio_write +EXPORT_SYMBOL vmlinux 0xbb5d343d xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xbb713e6d sk_filter_release_rcu +EXPORT_SYMBOL vmlinux 0xbb72d4fe __put_user_1 +EXPORT_SYMBOL vmlinux 0xbb8c25f6 snd_timer_global_free +EXPORT_SYMBOL vmlinux 0xbb99125c get_default_font +EXPORT_SYMBOL vmlinux 0xbbba1636 scsi_remove_device +EXPORT_SYMBOL vmlinux 0xbbc3b4b7 request_firmware +EXPORT_SYMBOL vmlinux 0xbbc65f73 inet_release +EXPORT_SYMBOL vmlinux 0xbbf44096 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0xbbf4c4f7 tcp_proc_unregister +EXPORT_SYMBOL vmlinux 0xbbfbd285 of_phy_connect +EXPORT_SYMBOL vmlinux 0xbc04af86 max8925_set_bits +EXPORT_SYMBOL vmlinux 0xbc0b281e pcim_enable_device +EXPORT_SYMBOL vmlinux 0xbc0d8d96 poll_initwait +EXPORT_SYMBOL vmlinux 0xbc1051f4 swiotlb_free_coherent +EXPORT_SYMBOL vmlinux 0xbc10dd97 __put_user_4 +EXPORT_SYMBOL vmlinux 0xbc1276a2 blk_mq_init_commands +EXPORT_SYMBOL vmlinux 0xbc1ab816 open_exec +EXPORT_SYMBOL vmlinux 0xbc208550 kfree_put_link +EXPORT_SYMBOL vmlinux 0xbc23ea8b xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0xbc23f4a1 pcie_get_readrq +EXPORT_SYMBOL vmlinux 0xbc293b5a gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0xbc4906fa writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xbc745831 blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0xbc7b00f8 elevator_exit +EXPORT_SYMBOL vmlinux 0xbc853295 __pagevec_release +EXPORT_SYMBOL vmlinux 0xbc90fdfd __dev_get_by_index +EXPORT_SYMBOL vmlinux 0xbc9b5ee4 __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0xbcc0627f udp_lib_rehash +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbcd73eca dquot_resume +EXPORT_SYMBOL vmlinux 0xbcdcdcfa textsearch_unregister +EXPORT_SYMBOL vmlinux 0xbcdedba7 of_get_mac_address +EXPORT_SYMBOL vmlinux 0xbce8a632 tcp_proto_cgroup +EXPORT_SYMBOL vmlinux 0xbcf94c88 __mutex_init +EXPORT_SYMBOL vmlinux 0xbd1f7743 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0xbd661850 ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0xbd693dbd fb_firmware_edid +EXPORT_SYMBOL vmlinux 0xbd754922 elv_unregister_queue +EXPORT_SYMBOL vmlinux 0xbd7d546d kill_litter_super +EXPORT_SYMBOL vmlinux 0xbd80ce7d tty_port_init +EXPORT_SYMBOL vmlinux 0xbd96c85a vexpress_config_write +EXPORT_SYMBOL vmlinux 0xbda6c0e0 serio_rescan +EXPORT_SYMBOL vmlinux 0xbdac1eb7 lockref_get +EXPORT_SYMBOL vmlinux 0xbdaf7b47 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0xbdba9828 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0xbdc6f2f3 mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0xbdde099a blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0xbdedb6b2 irq_stat +EXPORT_SYMBOL vmlinux 0xbdefc7a6 amba_driver_unregister +EXPORT_SYMBOL vmlinux 0xbdf2580d __raw_readsl +EXPORT_SYMBOL vmlinux 0xbe056b1d ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0xbe05a2ba netif_carrier_on +EXPORT_SYMBOL vmlinux 0xbe0e5118 nla_memcmp +EXPORT_SYMBOL vmlinux 0xbe2c0274 add_timer +EXPORT_SYMBOL vmlinux 0xbe2c5575 ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0xbe525fe0 dma_async_memcpy_buf_to_buf +EXPORT_SYMBOL vmlinux 0xbe55bb49 udp_ioctl +EXPORT_SYMBOL vmlinux 0xbe63ee40 request_resource +EXPORT_SYMBOL vmlinux 0xbe6e1405 ip6_frag_init +EXPORT_SYMBOL vmlinux 0xbe8860a8 dispc_mgr_go_busy +EXPORT_SYMBOL vmlinux 0xbe8fb90c dispc_mgr_get_framedone_irq +EXPORT_SYMBOL vmlinux 0xbe96e739 __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0xbea81261 kmem_cache_free +EXPORT_SYMBOL vmlinux 0xbeb7f29e pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0xbec25473 of_parse_phandle +EXPORT_SYMBOL vmlinux 0xbecdf935 pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0xbed33a52 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0xbee90f2f __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0xbeeff5d0 get_disk +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbef464fe ___pskb_trim +EXPORT_SYMBOL vmlinux 0xbf00d7ba security_path_rmdir +EXPORT_SYMBOL vmlinux 0xbf10d0b0 alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0xbf1a51b3 devm_free_irq +EXPORT_SYMBOL vmlinux 0xbf262264 get_tz_trend +EXPORT_SYMBOL vmlinux 0xbf376019 dev_uc_del +EXPORT_SYMBOL vmlinux 0xbf45cbca mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0xbf5587c1 inet_add_offload +EXPORT_SYMBOL vmlinux 0xbf5b4d5f lro_receive_skb +EXPORT_SYMBOL vmlinux 0xbf6313c1 snd_pcm_debug_name +EXPORT_SYMBOL vmlinux 0xbf6ac9cb dcache_readdir +EXPORT_SYMBOL vmlinux 0xbf75be5f pci_enable_msix +EXPORT_SYMBOL vmlinux 0xbf75ea6c tegra114_clock_tune_cpu_trimmers_low +EXPORT_SYMBOL vmlinux 0xbf7609e6 snd_ctl_replace +EXPORT_SYMBOL vmlinux 0xbf7fd2f5 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0xbf8ba54a vprintk +EXPORT_SYMBOL vmlinux 0xbf95a845 d_lookup +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfa98925 padata_do_serial +EXPORT_SYMBOL vmlinux 0xbfab68a4 seq_bitmap_list +EXPORT_SYMBOL vmlinux 0xbfaeb06b invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0xbfc0df78 netpoll_print_options +EXPORT_SYMBOL vmlinux 0xbfcbc0d2 stmp_reset_block +EXPORT_SYMBOL vmlinux 0xbfd54d35 unregister_md_personality +EXPORT_SYMBOL vmlinux 0xbfec5098 dma_release_from_coherent +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xc0056be5 _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0xc02cf69b clkdev_drop +EXPORT_SYMBOL vmlinux 0xc0555c3e xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0xc059acdb mb_cache_create +EXPORT_SYMBOL vmlinux 0xc068440e __kfifo_alloc +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc07dcb78 of_mm_gpiochip_add +EXPORT_SYMBOL vmlinux 0xc07e2972 netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0xc0823e4c twl_i2c_write +EXPORT_SYMBOL vmlinux 0xc0a2befe phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0xc0a6a8c5 omap_set_dma_dest_burst_mode +EXPORT_SYMBOL vmlinux 0xc0a98385 profile_pc +EXPORT_SYMBOL vmlinux 0xc0cf95f9 omap_vrfb_request_ctx +EXPORT_SYMBOL vmlinux 0xc0d81d5c i2c_use_client +EXPORT_SYMBOL vmlinux 0xc0df118e netif_napi_del +EXPORT_SYMBOL vmlinux 0xc1189bc4 audit_log_task_info +EXPORT_SYMBOL vmlinux 0xc12ec3a6 dns_query +EXPORT_SYMBOL vmlinux 0xc1970a42 snd_card_file_remove +EXPORT_SYMBOL vmlinux 0xc19eeaa2 swiotlb_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0xc1b5d5b8 skb_trim +EXPORT_SYMBOL vmlinux 0xc1b7e8fa mmc_gpio_request_ro +EXPORT_SYMBOL vmlinux 0xc1b82d22 register_shrinker +EXPORT_SYMBOL vmlinux 0xc1c03864 dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0xc1c2dd09 __hw_addr_flush +EXPORT_SYMBOL vmlinux 0xc1cf487d dev_trans_start +EXPORT_SYMBOL vmlinux 0xc1d8bba9 poll_freewait +EXPORT_SYMBOL vmlinux 0xc1d9ed06 make_kgid +EXPORT_SYMBOL vmlinux 0xc1e70eb1 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0xc1eed91b blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0xc1fa4b66 mmc_interrupt_hpi +EXPORT_SYMBOL vmlinux 0xc2081a83 gen_pool_add_virt +EXPORT_SYMBOL vmlinux 0xc20f3c9f set_create_files_as +EXPORT_SYMBOL vmlinux 0xc214de43 tty_set_operations +EXPORT_SYMBOL vmlinux 0xc2165d85 __arm_iounmap +EXPORT_SYMBOL vmlinux 0xc233a943 clk_add_alias +EXPORT_SYMBOL vmlinux 0xc256e762 __bitmap_equal +EXPORT_SYMBOL vmlinux 0xc26994a3 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0xc2840d31 pm860x_page_set_bits +EXPORT_SYMBOL vmlinux 0xc2852a72 ac97_bus_type +EXPORT_SYMBOL vmlinux 0xc286c081 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0xc2af1485 simple_transaction_get +EXPORT_SYMBOL vmlinux 0xc2ca5286 write_cache_pages +EXPORT_SYMBOL vmlinux 0xc2d711e1 krealloc +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2e90631 napi_gro_frags +EXPORT_SYMBOL vmlinux 0xc2f9c045 timespec_to_jiffies +EXPORT_SYMBOL vmlinux 0xc3014daf dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0xc32d75ec d_rehash +EXPORT_SYMBOL vmlinux 0xc348e435 bioset_integrity_free +EXPORT_SYMBOL vmlinux 0xc359fb65 abort +EXPORT_SYMBOL vmlinux 0xc3a9f1b4 sock_create +EXPORT_SYMBOL vmlinux 0xc3d1fa4d edma_alloc_cont_slots +EXPORT_SYMBOL vmlinux 0xc3f425f2 seq_open_private +EXPORT_SYMBOL vmlinux 0xc4055626 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0xc40feda1 generic_file_aio_read +EXPORT_SYMBOL vmlinux 0xc41f0516 node_states +EXPORT_SYMBOL vmlinux 0xc4238b18 generic_setxattr +EXPORT_SYMBOL vmlinux 0xc4399219 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xc43c3f11 snd_timer_new +EXPORT_SYMBOL vmlinux 0xc4512bcf inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0xc4601ffb dev_emerg +EXPORT_SYMBOL vmlinux 0xc4802959 ipv6_push_nfrag_opts +EXPORT_SYMBOL vmlinux 0xc4879426 sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0xc499ae1e kstrdup +EXPORT_SYMBOL vmlinux 0xc4a453cb inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0xc4afbe7a __skb_tx_hash +EXPORT_SYMBOL vmlinux 0xc4ba5031 sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0xc4f23b45 file_ns_capable +EXPORT_SYMBOL vmlinux 0xc5028e6d ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0xc52da066 omap_set_dma_dest_params +EXPORT_SYMBOL vmlinux 0xc53baac3 md_write_end +EXPORT_SYMBOL vmlinux 0xc546cd1a phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0xc5718627 sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0xc575e13d call_netdevice_notifiers_info +EXPORT_SYMBOL vmlinux 0xc589e044 param_set_long +EXPORT_SYMBOL vmlinux 0xc5a703ff posix_lock_file_wait +EXPORT_SYMBOL vmlinux 0xc5b6175c devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0xc5bc2864 generic_file_splice_write +EXPORT_SYMBOL vmlinux 0xc5ccc1d5 devm_request_and_ioremap +EXPORT_SYMBOL vmlinux 0xc5f8f519 __wait_on_buffer +EXPORT_SYMBOL vmlinux 0xc5fdef94 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xc60f0753 dst_destroy +EXPORT_SYMBOL vmlinux 0xc61eef93 d_prune_aliases +EXPORT_SYMBOL vmlinux 0xc628bf9d __dev_remove_pack +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc6514f0b dm_get_mapinfo +EXPORT_SYMBOL vmlinux 0xc665d6d7 of_parse_phandle_with_args +EXPORT_SYMBOL vmlinux 0xc6811c91 mount_pseudo +EXPORT_SYMBOL vmlinux 0xc6abab09 xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0xc6bb04dc vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6f19a71 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc724de23 pps_unregister_source +EXPORT_SYMBOL vmlinux 0xc725555b of_get_min_tck +EXPORT_SYMBOL vmlinux 0xc74a0a6b __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0xc74f3152 i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0xc7550060 mddev_congested +EXPORT_SYMBOL vmlinux 0xc763b482 bdi_register +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc7985635 cap_mmap_file +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a3746c ihold +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7bcbc8d add_wait_queue +EXPORT_SYMBOL vmlinux 0xc7c7f0a9 ip6_frag_match +EXPORT_SYMBOL vmlinux 0xc7cc234b ptp_clock_index +EXPORT_SYMBOL vmlinux 0xc7cd2cf0 unregister_key_type +EXPORT_SYMBOL vmlinux 0xc7d86cd8 kill_anon_super +EXPORT_SYMBOL vmlinux 0xc7dc6ea4 skb_unlink +EXPORT_SYMBOL vmlinux 0xc7ec6c27 strspn +EXPORT_SYMBOL vmlinux 0xc80e408b mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0xc80f95e6 inet6_release +EXPORT_SYMBOL vmlinux 0xc811a498 pci_get_class +EXPORT_SYMBOL vmlinux 0xc812f8e4 scsi_setup_blk_pc_cmnd +EXPORT_SYMBOL vmlinux 0xc8276a79 nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xc8339e24 string_unescape +EXPORT_SYMBOL vmlinux 0xc839a001 dqget +EXPORT_SYMBOL vmlinux 0xc83b4d5b posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc84f0f9f fddi_change_mtu +EXPORT_SYMBOL vmlinux 0xc85d515e d_invalidate +EXPORT_SYMBOL vmlinux 0xc86c05a9 sock_kfree_s +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc873bac4 i2c_clients_command +EXPORT_SYMBOL vmlinux 0xc89f2643 dquot_commit_info +EXPORT_SYMBOL vmlinux 0xc8aea266 inet_frag_evictor +EXPORT_SYMBOL vmlinux 0xc8b0bcbd blk_mq_can_queue +EXPORT_SYMBOL vmlinux 0xc8b39bac sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0xc8b57c27 autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xc8cb1067 arp_find +EXPORT_SYMBOL vmlinux 0xc8ecd23c netlink_kernel_release +EXPORT_SYMBOL vmlinux 0xc922b7bc scsi_remove_host +EXPORT_SYMBOL vmlinux 0xc928a43d __sb_start_write +EXPORT_SYMBOL vmlinux 0xc92f1364 snd_pcm_mmap_data +EXPORT_SYMBOL vmlinux 0xc93a2f4d edma_free_cont_slots +EXPORT_SYMBOL vmlinux 0xc9567b55 block_invalidatepage +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc964c2e9 pci_find_capability +EXPORT_SYMBOL vmlinux 0xc96fcbe0 ip_cmsg_recv +EXPORT_SYMBOL vmlinux 0xc981b0f3 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0xc9869d47 pci_disable_link_state +EXPORT_SYMBOL vmlinux 0xc996d097 del_timer +EXPORT_SYMBOL vmlinux 0xc99e2a55 twl_rev +EXPORT_SYMBOL vmlinux 0xc99e5218 remove_arg_zero +EXPORT_SYMBOL vmlinux 0xc9b8c308 __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0xc9b94aa3 snd_pcm_release_substream +EXPORT_SYMBOL vmlinux 0xc9bbb713 vexpress_config_bridge_register +EXPORT_SYMBOL vmlinux 0xc9e6a578 kernel_getpeername +EXPORT_SYMBOL vmlinux 0xc9ec2536 pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0xc9f1a2db skb_make_writable +EXPORT_SYMBOL vmlinux 0xc9f39581 blk_integrity_is_initialized +EXPORT_SYMBOL vmlinux 0xca053cc9 jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0xca333ae2 bio_integrity_get_tag +EXPORT_SYMBOL vmlinux 0xca46a8a8 dcb_getapp +EXPORT_SYMBOL vmlinux 0xca4c56e3 eth_rebuild_header +EXPORT_SYMBOL vmlinux 0xca5dbc50 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xca6ce8ba omap_dss_ntsc_timings +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xcaa20dca set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0xcaddbd7e edma_set_dest_index +EXPORT_SYMBOL vmlinux 0xcaf0c9a4 jbd2_journal_file_inode +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb04b1bd pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0xcb0c5d50 param_get_uint +EXPORT_SYMBOL vmlinux 0xcb102321 __frontswap_store +EXPORT_SYMBOL vmlinux 0xcb10796d xfrm_input +EXPORT_SYMBOL vmlinux 0xcb39436f jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0xcb466063 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0xcb6a456a jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0xcb915906 d_move +EXPORT_SYMBOL vmlinux 0xcba56be4 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0xcbbf0a6f audit_log_task_context +EXPORT_SYMBOL vmlinux 0xcbc9557f unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0xcbca9d37 scsi_host_put +EXPORT_SYMBOL vmlinux 0xcbfef16d unlink_framebuffer +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc37f55c blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0xcc43d32a blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0xcc4b6e72 tcp_child_process +EXPORT_SYMBOL vmlinux 0xcc4b84da of_find_node_by_type +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc55f5d1 key_put +EXPORT_SYMBOL vmlinux 0xcc6a338d jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0xcc6e4ef5 backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xcc748a5f mb_cache_shrink +EXPORT_SYMBOL vmlinux 0xcc7fa952 local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0xcc86b881 finish_no_open +EXPORT_SYMBOL vmlinux 0xcc93fcf4 sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccea14c3 sock_from_file +EXPORT_SYMBOL vmlinux 0xccf0bdc1 mmc_alloc_host +EXPORT_SYMBOL vmlinux 0xccf98a10 alloc_pci_dev +EXPORT_SYMBOL vmlinux 0xcd1d1a9b splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd30b95a tmio_core_mmc_clk_div +EXPORT_SYMBOL vmlinux 0xcd63c845 __aeabi_lasr +EXPORT_SYMBOL vmlinux 0xcd8274d6 __inode_permission +EXPORT_SYMBOL vmlinux 0xcd99dd1c tcf_destroy_chain +EXPORT_SYMBOL vmlinux 0xcda9e6c6 account_page_writeback +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcde172ac radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0xce03260c sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0xce1ecf1a input_allocate_device +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce39b7ca omap_dss_find_output +EXPORT_SYMBOL vmlinux 0xce3ca308 copy_from_user_toio +EXPORT_SYMBOL vmlinux 0xce41fcd4 fb_show_logo +EXPORT_SYMBOL vmlinux 0xce551ac9 sock_no_connect +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce6c6d2e dentry_update_name_case +EXPORT_SYMBOL vmlinux 0xce92a166 dquot_get_dqinfo +EXPORT_SYMBOL vmlinux 0xced41dd6 snd_pcm_link_rwlock +EXPORT_SYMBOL vmlinux 0xceed7f85 _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xcef3bb5a blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0xcef51982 kstrtou16 +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf1a287f fail_migrate_page +EXPORT_SYMBOL vmlinux 0xcf1c4155 tegra_powergate_sequence_power_up +EXPORT_SYMBOL vmlinux 0xcf1c943f clear_nlink +EXPORT_SYMBOL vmlinux 0xcf23eb25 bitmap_start_sync +EXPORT_SYMBOL vmlinux 0xcf4b6972 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0xcf6b55fe ppp_register_channel +EXPORT_SYMBOL vmlinux 0xcf77ba70 kfree_skb +EXPORT_SYMBOL vmlinux 0xcf88625f mempool_create_node +EXPORT_SYMBOL vmlinux 0xcf9ec495 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0xcfa5fa72 udp_sendmsg +EXPORT_SYMBOL vmlinux 0xcfaeff5e blk_queue_dma_pad +EXPORT_SYMBOL vmlinux 0xcfc87483 scsi_ioctl +EXPORT_SYMBOL vmlinux 0xcfdc3dd5 md_check_recovery +EXPORT_SYMBOL vmlinux 0xcff6b676 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0xd006f875 vfs_open +EXPORT_SYMBOL vmlinux 0xd00cb81f unload_nls +EXPORT_SYMBOL vmlinux 0xd0181f4f __bitmap_xor +EXPORT_SYMBOL vmlinux 0xd0344411 page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0xd04a475e kmalloc_dma_caches +EXPORT_SYMBOL vmlinux 0xd0502d48 unregister_quota_format +EXPORT_SYMBOL vmlinux 0xd054ee1d key_unlink +EXPORT_SYMBOL vmlinux 0xd05ca527 blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xd06fb2ce inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xd071550e snd_pcm_kernel_ioctl +EXPORT_SYMBOL vmlinux 0xd0720a17 on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0c068fb kill_pid +EXPORT_SYMBOL vmlinux 0xd0c5dad9 pci_request_regions +EXPORT_SYMBOL vmlinux 0xd0ca987c tty_devnum +EXPORT_SYMBOL vmlinux 0xd0d009b6 seq_puts +EXPORT_SYMBOL vmlinux 0xd0d42c42 mod_timer_pending +EXPORT_SYMBOL vmlinux 0xd0e43207 usb_nop_xceiv_register +EXPORT_SYMBOL vmlinux 0xd0e5a1a2 tcp_getsockopt +EXPORT_SYMBOL vmlinux 0xd0ee38b8 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0xd0f36f0d audit_log_format +EXPORT_SYMBOL vmlinux 0xd0f7a683 sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0xd0fb7cd4 __tasklet_hi_schedule_first +EXPORT_SYMBOL vmlinux 0xd100acbd _raw_write_lock +EXPORT_SYMBOL vmlinux 0xd1067ba7 dispc_ovl_enabled +EXPORT_SYMBOL vmlinux 0xd1157735 release_and_free_resource +EXPORT_SYMBOL vmlinux 0xd11c0dc1 __kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xd15d348d __pagevec_lru_add +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd19120c2 pci_enable_obff +EXPORT_SYMBOL vmlinux 0xd195e614 generic_permission +EXPORT_SYMBOL vmlinux 0xd196c9be kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xd1d4fce3 blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0xd1e29680 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0xd1f12885 aio_complete +EXPORT_SYMBOL vmlinux 0xd205bd06 new_inode +EXPORT_SYMBOL vmlinux 0xd220cf8a jiffies_to_timespec +EXPORT_SYMBOL vmlinux 0xd23f0c3f input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0xd251d7b0 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0xd2555f19 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xd2587adc ping_prot +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd266ec9b blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0xd26ec591 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd27d5b0f override_creds +EXPORT_SYMBOL vmlinux 0xd28e3618 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0xd2a941d4 sg_init_table +EXPORT_SYMBOL vmlinux 0xd2af138b reservation_ww_class +EXPORT_SYMBOL vmlinux 0xd2b07443 filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0xd2b4389c check_submounts_and_drop +EXPORT_SYMBOL vmlinux 0xd2b6ca43 devfreq_add_device +EXPORT_SYMBOL vmlinux 0xd2bd7989 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0xd2cdf4ba sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd30f2325 scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0xd31ccb06 of_machine_is_compatible +EXPORT_SYMBOL vmlinux 0xd33e168e snd_timer_resolution +EXPORT_SYMBOL vmlinux 0xd346f752 follow_down_one +EXPORT_SYMBOL vmlinux 0xd350457e blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0xd35ffa6a bio_map_kern +EXPORT_SYMBOL vmlinux 0xd3647c8c of_platform_bus_probe +EXPORT_SYMBOL vmlinux 0xd3d0e554 neigh_update +EXPORT_SYMBOL vmlinux 0xd3dbfbc4 _find_first_zero_bit_le +EXPORT_SYMBOL vmlinux 0xd3dcab0b flex_array_alloc +EXPORT_SYMBOL vmlinux 0xd3e374ff wait_for_key_construction +EXPORT_SYMBOL vmlinux 0xd3e6f60d cpu_possible_mask +EXPORT_SYMBOL vmlinux 0xd4037c46 replace_mount_options +EXPORT_SYMBOL vmlinux 0xd418e1c0 adjust_resource +EXPORT_SYMBOL vmlinux 0xd42e6f02 skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0xd43768af jbd2_journal_start +EXPORT_SYMBOL vmlinux 0xd4561388 qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0xd4589400 simple_transaction_set +EXPORT_SYMBOL vmlinux 0xd4669fad complete +EXPORT_SYMBOL vmlinux 0xd4801a9e rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0xd4816b5d vlan_vid_add +EXPORT_SYMBOL vmlinux 0xd49431ff set_anon_super +EXPORT_SYMBOL vmlinux 0xd4a9b761 elv_rb_add +EXPORT_SYMBOL vmlinux 0xd4c22cd1 init_special_inode +EXPORT_SYMBOL vmlinux 0xd4e3e679 posix_lock_file +EXPORT_SYMBOL vmlinux 0xd50cc114 revert_creds +EXPORT_SYMBOL vmlinux 0xd5127778 pci_enable_device +EXPORT_SYMBOL vmlinux 0xd51d8b27 dev_get_flags +EXPORT_SYMBOL vmlinux 0xd56e9485 omap_set_dma_dest_index +EXPORT_SYMBOL vmlinux 0xd5aa7158 sk_free +EXPORT_SYMBOL vmlinux 0xd5b388dc tcp_syn_flood_action +EXPORT_SYMBOL vmlinux 0xd5c5ff75 inet_frags_init_net +EXPORT_SYMBOL vmlinux 0xd5cfa08c dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0xd5d7183f netdev_all_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0xd5e973f8 netpoll_send_skb_on_dev +EXPORT_SYMBOL vmlinux 0xd5ec0b67 devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0xd5f2172f del_timer_sync +EXPORT_SYMBOL vmlinux 0xd5ff1dc7 gen10g_suspend +EXPORT_SYMBOL vmlinux 0xd607c6df blk_fetch_request +EXPORT_SYMBOL vmlinux 0xd61347c6 register_sysctl +EXPORT_SYMBOL vmlinux 0xd6154d85 dm_put_device +EXPORT_SYMBOL vmlinux 0xd616683a ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0xd627480b strncat +EXPORT_SYMBOL vmlinux 0xd62c833f schedule_timeout +EXPORT_SYMBOL vmlinux 0xd62dbebe pci_unmap_rom +EXPORT_SYMBOL vmlinux 0xd63a2ac7 ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0xd648e564 fb_match_mode +EXPORT_SYMBOL vmlinux 0xd660f3cf security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0xd6636880 set_disk_ro +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd6979b9a seq_release +EXPORT_SYMBOL vmlinux 0xd69ce176 pci_disable_ltr +EXPORT_SYMBOL vmlinux 0xd6b77b15 __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xd6d109a2 bio_integrity_free +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6f2f166 sock_update_memcg +EXPORT_SYMBOL vmlinux 0xd6fa7f05 mb_cache_entry_insert +EXPORT_SYMBOL vmlinux 0xd73058ed inode_add_rsv_space +EXPORT_SYMBOL vmlinux 0xd73587f1 kmap_atomic +EXPORT_SYMBOL vmlinux 0xd74289f9 __percpu_counter_add +EXPORT_SYMBOL vmlinux 0xd75c79df smp_call_function +EXPORT_SYMBOL vmlinux 0xd75db372 devm_gpio_request +EXPORT_SYMBOL vmlinux 0xd769fcd4 free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0xd77a5aa5 __bitmap_and +EXPORT_SYMBOL vmlinux 0xd78025ae gen_pool_create +EXPORT_SYMBOL vmlinux 0xd79b5a02 allow_signal +EXPORT_SYMBOL vmlinux 0xd7ae2361 vexpress_config_bridge_unregister +EXPORT_SYMBOL vmlinux 0xd7b078f4 pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0xd7b4599b __idr_get_new_above +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7e66d15 __skb_get_rxhash +EXPORT_SYMBOL vmlinux 0xd7e8f1b7 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xd7ea7094 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xd81c8c42 ndo_dflt_bridge_getlink +EXPORT_SYMBOL vmlinux 0xd81ea36e kdb_current_task +EXPORT_SYMBOL vmlinux 0xd834a881 jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0xd85cd67e __wake_up +EXPORT_SYMBOL vmlinux 0xd86d726a blk_delay_queue +EXPORT_SYMBOL vmlinux 0xd8898cd4 bio_split +EXPORT_SYMBOL vmlinux 0xd8c648df devfreq_resume_device +EXPORT_SYMBOL vmlinux 0xd8c72cf0 ifla_policy +EXPORT_SYMBOL vmlinux 0xd8ded085 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xd8e484f0 register_chrdev_region +EXPORT_SYMBOL vmlinux 0xd90faba3 snd_jack_new +EXPORT_SYMBOL vmlinux 0xd91243c4 devm_gpiod_get_index +EXPORT_SYMBOL vmlinux 0xd92afabe bitmap_clear +EXPORT_SYMBOL vmlinux 0xd93e0e89 __skb_gso_segment +EXPORT_SYMBOL vmlinux 0xd93ea9b2 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0xd93f862e pci_enable_msi_block_auto +EXPORT_SYMBOL vmlinux 0xd94cd1ac simple_write_begin +EXPORT_SYMBOL vmlinux 0xd955d2b7 omap_set_dma_dest_data_pack +EXPORT_SYMBOL vmlinux 0xd95f509f serio_interrupt +EXPORT_SYMBOL vmlinux 0xd9838499 generic_file_mmap +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd9a9bb30 getname +EXPORT_SYMBOL vmlinux 0xd9afb4c2 block_write_full_page +EXPORT_SYMBOL vmlinux 0xd9ce8f0c strnlen +EXPORT_SYMBOL vmlinux 0xd9db0443 fsync_bdev +EXPORT_SYMBOL vmlinux 0xd9e53bef __register_binfmt +EXPORT_SYMBOL vmlinux 0xda00f801 netlink_set_err +EXPORT_SYMBOL vmlinux 0xda192d82 xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0xda2478d0 param_ops_short +EXPORT_SYMBOL vmlinux 0xda3575e3 cpu_tlb +EXPORT_SYMBOL vmlinux 0xda3b9212 neigh_ifdown +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda63d110 input_get_keycode +EXPORT_SYMBOL vmlinux 0xda7ca6cb fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xda8a5caf bio_copy_kern +EXPORT_SYMBOL vmlinux 0xda8af7ad fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0xda99bbb2 blk_queue_start_tag +EXPORT_SYMBOL vmlinux 0xdaa16b82 of_clk_get +EXPORT_SYMBOL vmlinux 0xdaa57ec3 totalhigh_pages +EXPORT_SYMBOL vmlinux 0xdaafc807 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0xdab547da audit_log +EXPORT_SYMBOL vmlinux 0xdab9f1f0 alloc_anon_inode +EXPORT_SYMBOL vmlinux 0xdabba5b7 mmc_set_blockcount +EXPORT_SYMBOL vmlinux 0xdabe460e __splice_from_pipe +EXPORT_SYMBOL vmlinux 0xdac07470 mount_ns +EXPORT_SYMBOL vmlinux 0xdaea67f6 xfrm_register_type +EXPORT_SYMBOL vmlinux 0xdb1f6a82 pci_clear_master +EXPORT_SYMBOL vmlinux 0xdb4292e4 omap_set_dma_params +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb695d94 dquot_free_inode +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb93b838 dispc_free_irq +EXPORT_SYMBOL vmlinux 0xdbcd416e sysctl_ip_nonlocal_bind +EXPORT_SYMBOL vmlinux 0xdbd84d74 kobject_put +EXPORT_SYMBOL vmlinux 0xdbdd0a65 dev_addr_add_multiple +EXPORT_SYMBOL vmlinux 0xdc047fc4 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0xdc0552ae starget_for_each_device +EXPORT_SYMBOL vmlinux 0xdc1069e9 pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0xdc11757b build_skb +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc4849bf pcie_get_minimum_link +EXPORT_SYMBOL vmlinux 0xdc81e62f gen10g_resume +EXPORT_SYMBOL vmlinux 0xdc8aa38f tcp_gro_complete +EXPORT_SYMBOL vmlinux 0xdc942659 pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0xdcaedc90 snd_card_file_add +EXPORT_SYMBOL vmlinux 0xdcbe3832 security_path_chmod +EXPORT_SYMBOL vmlinux 0xdcbfe4bd ppp_input_error +EXPORT_SYMBOL vmlinux 0xdcc14a51 netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0xdcd0ab85 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0xdcd338de mmc_gpio_free_ro +EXPORT_SYMBOL vmlinux 0xdcd6257b blk_alloc_queue_node +EXPORT_SYMBOL vmlinux 0xdcebddc9 pci_find_next_bus +EXPORT_SYMBOL vmlinux 0xdd0a2ba2 strlcat +EXPORT_SYMBOL vmlinux 0xdd0a9691 __ps2_command +EXPORT_SYMBOL vmlinux 0xdd1d044e nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0xdd245afa posix_unblock_lock +EXPORT_SYMBOL vmlinux 0xdd27fa87 memchr +EXPORT_SYMBOL vmlinux 0xdd311bd4 vfs_setpos +EXPORT_SYMBOL vmlinux 0xdd3916ac _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0xdd449927 get_task_io_context +EXPORT_SYMBOL vmlinux 0xdd54644e unregister_cdrom +EXPORT_SYMBOL vmlinux 0xdd76c677 dma_pool_create +EXPORT_SYMBOL vmlinux 0xdd7c6a42 scsi_reset_provider +EXPORT_SYMBOL vmlinux 0xdd85fba6 inet6_ioctl +EXPORT_SYMBOL vmlinux 0xddbb2f91 sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0xddbe9808 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0xddc453d4 file_remove_suid +EXPORT_SYMBOL vmlinux 0xddd3e6d3 sock_sendmsg +EXPORT_SYMBOL vmlinux 0xddf37c5b secpath_dup +EXPORT_SYMBOL vmlinux 0xde098f37 set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0xde0d11de kobject_add +EXPORT_SYMBOL vmlinux 0xde10eb10 param_set_invbool +EXPORT_SYMBOL vmlinux 0xde15c042 omap_set_dma_src_index +EXPORT_SYMBOL vmlinux 0xde25119d kset_register +EXPORT_SYMBOL vmlinux 0xde2a0373 dev_close +EXPORT_SYMBOL vmlinux 0xde35a38a __netif_schedule +EXPORT_SYMBOL vmlinux 0xde535e40 __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0xde692d94 omap_get_dma_chain_src_pos +EXPORT_SYMBOL vmlinux 0xde7eb273 lock_rename +EXPORT_SYMBOL vmlinux 0xde7f8ca6 no_llseek +EXPORT_SYMBOL vmlinux 0xde89434f d_alloc_name +EXPORT_SYMBOL vmlinux 0xde8c763d cpu_v7_set_pte_ext +EXPORT_SYMBOL vmlinux 0xde9360ba totalram_pages +EXPORT_SYMBOL vmlinux 0xde9b7985 file_open_root +EXPORT_SYMBOL vmlinux 0xdec513b8 abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0xdecd1b7e dump_emit +EXPORT_SYMBOL vmlinux 0xdedf5ba1 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0xdf01feb9 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0xdf0616c1 of_dev_put +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf37cdd8 security_path_truncate +EXPORT_SYMBOL vmlinux 0xdf401846 idr_remove +EXPORT_SYMBOL vmlinux 0xdf48a0eb flex_array_put +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf60cc27 __print_symbol +EXPORT_SYMBOL vmlinux 0xdf77c1c9 snd_component_add +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdfa11795 tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0xdfb01a80 cpu_v7_dcache_clean_area +EXPORT_SYMBOL vmlinux 0xdfba1cef have_submounts +EXPORT_SYMBOL vmlinux 0xdfc37351 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0xdfc5169b slhc_init +EXPORT_SYMBOL vmlinux 0xdfd91ce9 omap_type +EXPORT_SYMBOL vmlinux 0xdff8e9f6 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0xe022a642 pci_unregister_driver +EXPORT_SYMBOL vmlinux 0xe0237137 kernel_setsockopt +EXPORT_SYMBOL vmlinux 0xe04622ba nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0xe047ea47 udp_seq_open +EXPORT_SYMBOL vmlinux 0xe04f7caa dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xe06141e9 security_sk_clone +EXPORT_SYMBOL vmlinux 0xe0728143 dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0xe075d6eb iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xe07a1189 generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0xe094ef39 sg_next +EXPORT_SYMBOL vmlinux 0xe09d7639 dev_mc_init +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0bef318 icst_hz_to_vco +EXPORT_SYMBOL vmlinux 0xe0ddcbcf loop_register_transfer +EXPORT_SYMBOL vmlinux 0xe0f16da7 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xe0f99a2f ida_pre_get +EXPORT_SYMBOL vmlinux 0xe0fa83f2 ipmi_register_for_cmd +EXPORT_SYMBOL vmlinux 0xe0facaa4 __bread +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe127fb18 down_killable +EXPORT_SYMBOL vmlinux 0xe12bb8b4 tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0xe15be39e dev_printk_emit +EXPORT_SYMBOL vmlinux 0xe15ca578 scsi_print_result +EXPORT_SYMBOL vmlinux 0xe171d3da blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0xe1761617 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xe1b1132e km_policy_notify +EXPORT_SYMBOL vmlinux 0xe1b1db55 account_page_dirtied +EXPORT_SYMBOL vmlinux 0xe1b84165 neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0xe1bce8e7 bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0xe1f0ab3a _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0xe1fbee8f contig_page_data +EXPORT_SYMBOL vmlinux 0xe200f872 secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xe2015f9e set_binfmt +EXPORT_SYMBOL vmlinux 0xe21f7e86 dma_common_get_sgtable +EXPORT_SYMBOL vmlinux 0xe23ae481 blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe24d3a97 jiffies_64 +EXPORT_SYMBOL vmlinux 0xe24e9c17 writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xe28c7eb9 tty_free_termios +EXPORT_SYMBOL vmlinux 0xe292fb9f gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0xe29e1d0e out_of_line_wait_on_atomic_t +EXPORT_SYMBOL vmlinux 0xe2c014f0 __pci_enable_wake +EXPORT_SYMBOL vmlinux 0xe2c0bbf4 unregister_nls +EXPORT_SYMBOL vmlinux 0xe2c1f901 bdput +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2e06ea6 tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0xe2e8065e memdup_user +EXPORT_SYMBOL vmlinux 0xe2ec6735 generic_file_llseek +EXPORT_SYMBOL vmlinux 0xe2f35e51 vfs_mkdir +EXPORT_SYMBOL vmlinux 0xe2fae716 kmemdup +EXPORT_SYMBOL vmlinux 0xe32bb893 __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xe32dd562 dentry_path_raw +EXPORT_SYMBOL vmlinux 0xe35c5285 of_find_node_by_phandle +EXPORT_SYMBOL vmlinux 0xe3718d3a dentry_unhash +EXPORT_SYMBOL vmlinux 0xe37d10ae omap_dispc_unregister_isr +EXPORT_SYMBOL vmlinux 0xe3a1cad0 inet_put_port +EXPORT_SYMBOL vmlinux 0xe3a93a82 unlock_new_inode +EXPORT_SYMBOL vmlinux 0xe3bcf75d tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0xe3cf1471 edma_filter_fn +EXPORT_SYMBOL vmlinux 0xe3d0841e dquot_disable +EXPORT_SYMBOL vmlinux 0xe3d6f284 fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xe3da7683 xfrm_cfg_mutex +EXPORT_SYMBOL vmlinux 0xe3e8c09a snd_ctl_rename_id +EXPORT_SYMBOL vmlinux 0xe3ea0fba fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0xe3f0c46f snd_pcm_set_sync +EXPORT_SYMBOL vmlinux 0xe3f99dd0 pci_vpd_truncate +EXPORT_SYMBOL vmlinux 0xe408bd0c jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0xe41a7c60 nf_log_packet +EXPORT_SYMBOL vmlinux 0xe4264fb6 mmc_erase +EXPORT_SYMBOL vmlinux 0xe43274bc proc_dointvec +EXPORT_SYMBOL vmlinux 0xe47592b6 padata_do_parallel +EXPORT_SYMBOL vmlinux 0xe49c6ef4 __napi_schedule +EXPORT_SYMBOL vmlinux 0xe4a86cec netdev_notify_peers +EXPORT_SYMBOL vmlinux 0xe4c211c2 scsi_prep_state_check +EXPORT_SYMBOL vmlinux 0xe4c37a95 pci_write_vpd +EXPORT_SYMBOL vmlinux 0xe4c80097 cacheid +EXPORT_SYMBOL vmlinux 0xe4cb1e05 input_unregister_handle +EXPORT_SYMBOL vmlinux 0xe4db63a3 invalidate_partition +EXPORT_SYMBOL vmlinux 0xe4f4665b ipmi_validate_addr +EXPORT_SYMBOL vmlinux 0xe5122890 flow_cache_genid +EXPORT_SYMBOL vmlinux 0xe51eeaae blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe53d1faa of_translate_dma_address +EXPORT_SYMBOL vmlinux 0xe5445af6 omap_get_dma_dst_pos +EXPORT_SYMBOL vmlinux 0xe545a9bc dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL vmlinux 0xe57878a1 in6_pton +EXPORT_SYMBOL vmlinux 0xe582f13f get_mem_type +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe59a342d phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0xe59c2bff ps2_begin_command +EXPORT_SYMBOL vmlinux 0xe5be4cd5 sock_setsockopt +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5dfcd76 init_task +EXPORT_SYMBOL vmlinux 0xe5ed5467 xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xe60ae63c sock_kmalloc +EXPORT_SYMBOL vmlinux 0xe61416c6 blk_init_allocated_queue +EXPORT_SYMBOL vmlinux 0xe6291ecb lookup_bdev +EXPORT_SYMBOL vmlinux 0xe6426bd9 locks_mandatory_area +EXPORT_SYMBOL vmlinux 0xe6554d53 vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0xe657b5ba tty_hangup +EXPORT_SYMBOL vmlinux 0xe66452ab dql_init +EXPORT_SYMBOL vmlinux 0xe6744a89 omap_clear_dma +EXPORT_SYMBOL vmlinux 0xe68aa3c8 kill_bdev +EXPORT_SYMBOL vmlinux 0xe697d108 __blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe6ab72a6 ipmi_set_my_LUN +EXPORT_SYMBOL vmlinux 0xe6c3ebb0 __raw_writesw +EXPORT_SYMBOL vmlinux 0xe6d818c0 iput +EXPORT_SYMBOL vmlinux 0xe6ebc016 key_create_or_update +EXPORT_SYMBOL vmlinux 0xe6eefdd4 mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0xe6f8b37e mount_single +EXPORT_SYMBOL vmlinux 0xe6fbe430 can_do_mlock +EXPORT_SYMBOL vmlinux 0xe700c203 cont_write_begin +EXPORT_SYMBOL vmlinux 0xe707d823 __aeabi_uidiv +EXPORT_SYMBOL vmlinux 0xe71cae9e poll_schedule_timeout +EXPORT_SYMBOL vmlinux 0xe725d0a2 jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0xe74e6819 udp_del_offload +EXPORT_SYMBOL vmlinux 0xe7527168 skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0xe755555d register_nls +EXPORT_SYMBOL vmlinux 0xe76c7d29 iterate_mounts +EXPORT_SYMBOL vmlinux 0xe7722171 flex_array_free +EXPORT_SYMBOL vmlinux 0xe7769141 tcf_hash_lookup +EXPORT_SYMBOL vmlinux 0xe77fb02f dss_mgr_unregister_framedone_handler +EXPORT_SYMBOL vmlinux 0xe7885704 tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0xe790c32d __nla_reserve +EXPORT_SYMBOL vmlinux 0xe7a1b075 ata_port_printk +EXPORT_SYMBOL vmlinux 0xe7a664c4 nf_hooks +EXPORT_SYMBOL vmlinux 0xe7a81967 audit_log_secctx +EXPORT_SYMBOL vmlinux 0xe7c8d0dc jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7e15910 dispc_clear_irqstatus +EXPORT_SYMBOL vmlinux 0xe7fa3a53 unmap_underlying_metadata +EXPORT_SYMBOL vmlinux 0xe804de67 ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0xe80cf31d mnt_pin +EXPORT_SYMBOL vmlinux 0xe815b9da pcie_get_mps +EXPORT_SYMBOL vmlinux 0xe851bb05 queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xe8670603 cookie_check_timestamp +EXPORT_SYMBOL vmlinux 0xe8794ce1 slhc_toss +EXPORT_SYMBOL vmlinux 0xe88b1abc generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0xe88e3267 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0xe88ea002 scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0xe898bfba crc32_le_combine +EXPORT_SYMBOL vmlinux 0xe89b8d69 d_find_any_alias +EXPORT_SYMBOL vmlinux 0xe89e28ff pm860x_reg_read +EXPORT_SYMBOL vmlinux 0xe8b48972 __blk_end_request +EXPORT_SYMBOL vmlinux 0xe8b53ecc down_write_trylock +EXPORT_SYMBOL vmlinux 0xe8b63ace radix_tree_range_tag_if_tagged +EXPORT_SYMBOL vmlinux 0xe8bea3bc qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xe8c11581 omap_dss_get_output +EXPORT_SYMBOL vmlinux 0xe8cccfd9 pci_target_state +EXPORT_SYMBOL vmlinux 0xe8cfce09 tegra114_clock_deassert_dfll_dvco_reset +EXPORT_SYMBOL vmlinux 0xe8d59e26 make_kuid +EXPORT_SYMBOL vmlinux 0xe912da6b unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe945f475 find_lock_page +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe9c80270 snd_timer_pause +EXPORT_SYMBOL vmlinux 0xe9c92ecf sock_no_getname +EXPORT_SYMBOL vmlinux 0xe9cf9366 ps2_sendbyte +EXPORT_SYMBOL vmlinux 0xe9d0fd3d snd_dma_reserve_buf +EXPORT_SYMBOL vmlinux 0xe9e59be0 omap_dss_get_device +EXPORT_SYMBOL vmlinux 0xe9e70b90 cdrom_open +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xe9fc1153 arp_send +EXPORT_SYMBOL vmlinux 0xe9fc58aa unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0xea054b22 nla_policy_len +EXPORT_SYMBOL vmlinux 0xea10212a int_to_scsilun +EXPORT_SYMBOL vmlinux 0xea10655a __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xea16dd4c tcp_destroy_cgroup +EXPORT_SYMBOL vmlinux 0xea39b569 seq_pad +EXPORT_SYMBOL vmlinux 0xea500f40 tcf_action_exec +EXPORT_SYMBOL vmlinux 0xea6e3003 of_find_compatible_node +EXPORT_SYMBOL vmlinux 0xea71c011 mmc_can_sanitize +EXPORT_SYMBOL vmlinux 0xea7987f1 key_update +EXPORT_SYMBOL vmlinux 0xea8a612d tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0xea9b345d snd_pcm_lib_free_pages +EXPORT_SYMBOL vmlinux 0xea9d0669 snd_pcm_hw_param_last +EXPORT_SYMBOL vmlinux 0xeac64421 pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0xeaebc86c skb_copy_expand +EXPORT_SYMBOL vmlinux 0xeb17021b mapping_tagged +EXPORT_SYMBOL vmlinux 0xeb1b120e omap_set_dma_write_mode +EXPORT_SYMBOL vmlinux 0xeb1e8263 ata_std_end_eh +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb53004f netpoll_setup +EXPORT_SYMBOL vmlinux 0xeb55a931 __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xeb569736 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0xeb743dca rtmsg_ifinfo +EXPORT_SYMBOL vmlinux 0xeb7788c7 phy_register_fixup +EXPORT_SYMBOL vmlinux 0xeb8f5052 bio_integrity_endio +EXPORT_SYMBOL vmlinux 0xeb9b4bc9 dss_mgr_register_framedone_handler +EXPORT_SYMBOL vmlinux 0xeb9dea36 vm_event_states +EXPORT_SYMBOL vmlinux 0xeb9e7cdd ida_destroy +EXPORT_SYMBOL vmlinux 0xebc555cb phy_disconnect +EXPORT_SYMBOL vmlinux 0xebdbe48c radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0xebe51cbd dss_mgr_set_timings +EXPORT_SYMBOL vmlinux 0xebfdcbdf system_serial_high +EXPORT_SYMBOL vmlinux 0xec087de5 uart_update_timeout +EXPORT_SYMBOL vmlinux 0xec17ebb0 of_match_node +EXPORT_SYMBOL vmlinux 0xec4668ff scsi_device_get +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec6d2502 proc_mkdir +EXPORT_SYMBOL vmlinux 0xec7d6076 set_user_nice +EXPORT_SYMBOL vmlinux 0xecb336ab backlight_force_update +EXPORT_SYMBOL vmlinux 0xecbdb4e0 swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0xecbea473 tcp_prequeue +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xece8ce0f vfs_readlink +EXPORT_SYMBOL vmlinux 0xece91e52 phys_mem_access_prot +EXPORT_SYMBOL vmlinux 0xed11ef91 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0xed199726 lock_sock_nested +EXPORT_SYMBOL vmlinux 0xed256f4f snd_pcm_hw_rule_noresample +EXPORT_SYMBOL vmlinux 0xed2dcdc1 inode_capable +EXPORT_SYMBOL vmlinux 0xed3f8fea tcp_poll +EXPORT_SYMBOL vmlinux 0xed597524 qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xed7200a6 fb_set_suspend +EXPORT_SYMBOL vmlinux 0xed854dac omap_stop_dma_chain_transfers +EXPORT_SYMBOL vmlinux 0xed93f29e __kunmap_atomic +EXPORT_SYMBOL vmlinux 0xed9f9a20 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xedb368c1 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xedb9b75d netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc1b965 set_bh_page +EXPORT_SYMBOL vmlinux 0xedc7f4ec dq_data_lock +EXPORT_SYMBOL vmlinux 0xedd9106d __ashrdi3 +EXPORT_SYMBOL vmlinux 0xee05852b ata_link_printk +EXPORT_SYMBOL vmlinux 0xee0595b9 twl6040_get_pll +EXPORT_SYMBOL vmlinux 0xee0ebc54 igrab +EXPORT_SYMBOL vmlinux 0xee2bc2d0 omapdss_is_initialized +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee327746 da903x_query_status +EXPORT_SYMBOL vmlinux 0xee3496c3 dma_pool_alloc +EXPORT_SYMBOL vmlinux 0xee3bdebd nobh_write_end +EXPORT_SYMBOL vmlinux 0xee4c7fd3 inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0xee715ef8 lg_global_unlock +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xeea9dbaf bitmap_bitremap +EXPORT_SYMBOL vmlinux 0xeebd5865 blkdev_fsync +EXPORT_SYMBOL vmlinux 0xeed3635b proc_dostring +EXPORT_SYMBOL vmlinux 0xeed3bb1d scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0xeee570ff page_put_link +EXPORT_SYMBOL vmlinux 0xeee97b17 ps2_handle_ack +EXPORT_SYMBOL vmlinux 0xeef161aa groups_free +EXPORT_SYMBOL vmlinux 0xeefeccdf blk_bio_map_sg +EXPORT_SYMBOL vmlinux 0xeeffa638 __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xef11d119 qdisc_reset +EXPORT_SYMBOL vmlinux 0xef173a21 snd_power_wait +EXPORT_SYMBOL vmlinux 0xef3a4c99 tty_unregister_device +EXPORT_SYMBOL vmlinux 0xef3b28d7 blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0xef68d1e6 make_bad_inode +EXPORT_SYMBOL vmlinux 0xef8f53c2 __d_drop +EXPORT_SYMBOL vmlinux 0xef9faf32 framebuffer_release +EXPORT_SYMBOL vmlinux 0xefa72ff2 padata_register_cpumask_notifier +EXPORT_SYMBOL vmlinux 0xefb66a95 omap_request_dma_chain +EXPORT_SYMBOL vmlinux 0xefc25cb2 tcp_prot +EXPORT_SYMBOL vmlinux 0xefcc1c00 xfrm6_rcv +EXPORT_SYMBOL vmlinux 0xefcc452d omap_dss_find_device +EXPORT_SYMBOL vmlinux 0xefcf3143 wait_for_completion_io +EXPORT_SYMBOL vmlinux 0xefd6cf06 __aeabi_unwind_cpp_pr0 +EXPORT_SYMBOL vmlinux 0xefdaed5d seq_bitmap +EXPORT_SYMBOL vmlinux 0xefdd70ce security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0xefec312f omap_get_dma_active_status +EXPORT_SYMBOL vmlinux 0xeff4dd01 xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xefffcefe __secpath_destroy +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf035b9db skb_append +EXPORT_SYMBOL vmlinux 0xf03b9e6c gen10g_restart_aneg +EXPORT_SYMBOL vmlinux 0xf05e1ffa uart_unregister_driver +EXPORT_SYMBOL vmlinux 0xf05ffa15 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0xf060e446 km_state_expired +EXPORT_SYMBOL vmlinux 0xf0619801 timekeeping_clocktai +EXPORT_SYMBOL vmlinux 0xf0659460 md_done_sync +EXPORT_SYMBOL vmlinux 0xf0785d52 mdiobus_register +EXPORT_SYMBOL vmlinux 0xf081adfd ipmi_smi_watcher_register +EXPORT_SYMBOL vmlinux 0xf087137d __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0xf099911f key_link +EXPORT_SYMBOL vmlinux 0xf09de776 get_random_int +EXPORT_SYMBOL vmlinux 0xf0c40bbb snd_pcm_lib_read +EXPORT_SYMBOL vmlinux 0xf0d68ed6 clk_register_clkdevs +EXPORT_SYMBOL vmlinux 0xf0ef15b4 list_sort +EXPORT_SYMBOL vmlinux 0xf0f1246c kvasprintf +EXPORT_SYMBOL vmlinux 0xf0fdf6cb __stack_chk_fail +EXPORT_SYMBOL vmlinux 0xf0ffdec7 dev_change_carrier +EXPORT_SYMBOL vmlinux 0xf10c9f2f thermal_cdev_update +EXPORT_SYMBOL vmlinux 0xf11733e5 inode_dio_wait +EXPORT_SYMBOL vmlinux 0xf13feb57 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0xf147dcb2 hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0xf16442e3 jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0xf17aafab neigh_table_clear +EXPORT_SYMBOL vmlinux 0xf1806da9 idr_find_slowpath +EXPORT_SYMBOL vmlinux 0xf1867dc2 generic_file_buffered_write +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf195de5b of_find_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0xf1999748 splice_from_pipe_feed +EXPORT_SYMBOL vmlinux 0xf19e9355 cpu_online_mask +EXPORT_SYMBOL vmlinux 0xf1d37833 tty_register_device +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1deabf2 div64_u64 +EXPORT_SYMBOL vmlinux 0xf1e0b260 edma_set_transfer_params +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1ea54f0 padata_set_cpumask +EXPORT_SYMBOL vmlinux 0xf1f14004 empty_zero_page +EXPORT_SYMBOL vmlinux 0xf202c5cb radix_tree_insert +EXPORT_SYMBOL vmlinux 0xf20dabd8 free_irq +EXPORT_SYMBOL vmlinux 0xf21330d6 dquot_destroy +EXPORT_SYMBOL vmlinux 0xf21cb3c0 pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0xf22c5ef9 inode_init_always +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf2576cb9 ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL vmlinux 0xf25a6503 alloc_buffer_head +EXPORT_SYMBOL vmlinux 0xf2953e32 d_instantiate_unique +EXPORT_SYMBOL vmlinux 0xf297b3c5 tcp_recvmsg +EXPORT_SYMBOL vmlinux 0xf2997713 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0xf2a0af8f backlight_device_registered +EXPORT_SYMBOL vmlinux 0xf2b1ac8e __getnstimeofday +EXPORT_SYMBOL vmlinux 0xf2b4d100 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0xf2b84439 nand_lock +EXPORT_SYMBOL vmlinux 0xf2b879ad iunique +EXPORT_SYMBOL vmlinux 0xf2c5ffb9 _snd_ctl_add_slave +EXPORT_SYMBOL vmlinux 0xf2cc5d42 inet_shutdown +EXPORT_SYMBOL vmlinux 0xf2d9d22c pci_bus_type +EXPORT_SYMBOL vmlinux 0xf2daa3fb __sock_create +EXPORT_SYMBOL vmlinux 0xf2db5472 __ethtool_get_settings +EXPORT_SYMBOL vmlinux 0xf2f21c65 tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0xf313da4e sha_transform +EXPORT_SYMBOL vmlinux 0xf32fd8ce blk_run_queue_async +EXPORT_SYMBOL vmlinux 0xf332051c __register_chrdev +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf3637128 blk_complete_request +EXPORT_SYMBOL vmlinux 0xf3797152 snd_interval_ratnum +EXPORT_SYMBOL vmlinux 0xf37b7818 unregister_netdev +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf391460c write_inode_now +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf396cd21 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0xf3985a93 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0xf3aa2159 km_report +EXPORT_SYMBOL vmlinux 0xf3bf0bce __bitmap_complement +EXPORT_SYMBOL vmlinux 0xf3c207e4 security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0xf40019c0 tegra114_clock_tune_cpu_trimmers_init +EXPORT_SYMBOL vmlinux 0xf404eb66 md_error +EXPORT_SYMBOL vmlinux 0xf40b2297 __crypto_memneq +EXPORT_SYMBOL vmlinux 0xf4149aac i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0xf435fc8d of_device_alloc +EXPORT_SYMBOL vmlinux 0xf442f525 lock_sock_fast +EXPORT_SYMBOL vmlinux 0xf4488539 skb_queue_head +EXPORT_SYMBOL vmlinux 0xf44e5fdb max8925_bulk_write +EXPORT_SYMBOL vmlinux 0xf4609fc1 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0xf473ffaf down +EXPORT_SYMBOL vmlinux 0xf478bd0e led_blink_set_oneshot +EXPORT_SYMBOL vmlinux 0xf4a7fc6d omapdss_compat_init +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4c9c866 ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf4f71fc3 gen_pool_alloc +EXPORT_SYMBOL vmlinux 0xf4fff524 nf_unregister_hooks +EXPORT_SYMBOL vmlinux 0xf5037f9a netdev_lower_dev_get_private_rcu +EXPORT_SYMBOL vmlinux 0xf50ea47e sk_receive_skb +EXPORT_SYMBOL vmlinux 0xf50ffd5a skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf542c7e0 elevator_init +EXPORT_SYMBOL vmlinux 0xf544d707 uart_remove_one_port +EXPORT_SYMBOL vmlinux 0xf5476979 sock_wake_async +EXPORT_SYMBOL vmlinux 0xf54c51a2 dma_pool_free +EXPORT_SYMBOL vmlinux 0xf54da398 mfd_add_devices +EXPORT_SYMBOL vmlinux 0xf559dd5e qdisc_tree_decrease_qlen +EXPORT_SYMBOL vmlinux 0xf5610700 pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0xf564412a __aeabi_ulcmp +EXPORT_SYMBOL vmlinux 0xf5753ab4 tty_vhangup +EXPORT_SYMBOL vmlinux 0xf575bb46 skb_kill_datagram +EXPORT_SYMBOL vmlinux 0xf59e28e1 fget_raw +EXPORT_SYMBOL vmlinux 0xf5aa4a68 scsi_remove_target +EXPORT_SYMBOL vmlinux 0xf5b8bfa3 nf_log_register +EXPORT_SYMBOL vmlinux 0xf5bc875d icmpv6_send +EXPORT_SYMBOL vmlinux 0xf5c05914 generic_segment_checks +EXPORT_SYMBOL vmlinux 0xf5eb86ea blk_verify_command +EXPORT_SYMBOL vmlinux 0xf5f7d0cc xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0xf5feedc2 mmc_release_host +EXPORT_SYMBOL vmlinux 0xf62c01cf xfrm_init_replay +EXPORT_SYMBOL vmlinux 0xf6388c56 sysctl_ip_default_ttl +EXPORT_SYMBOL vmlinux 0xf6426627 snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL vmlinux 0xf64b4beb free_mdio_bitbang +EXPORT_SYMBOL vmlinux 0xf67c312e xfrm_init_state +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf6851d5f register_sysctl_paths +EXPORT_SYMBOL vmlinux 0xf6b2671b of_find_i2c_device_by_node +EXPORT_SYMBOL vmlinux 0xf6bb4729 color_table +EXPORT_SYMBOL vmlinux 0xf6cb07a4 amba_find_device +EXPORT_SYMBOL vmlinux 0xf6d55ffd user_path_create +EXPORT_SYMBOL vmlinux 0xf6d689b4 omapdss_default_get_resolution +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6f3cef6 omap_vrfb_setup +EXPORT_SYMBOL vmlinux 0xf6f66f9c inet_dgram_connect +EXPORT_SYMBOL vmlinux 0xf719badb xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0xf71d260c md_write_start +EXPORT_SYMBOL vmlinux 0xf7271948 edma_set_src_index +EXPORT_SYMBOL vmlinux 0xf736c2de phy_connect +EXPORT_SYMBOL vmlinux 0xf73a8a49 inode_get_bytes +EXPORT_SYMBOL vmlinux 0xf73f0345 mmc_add_host +EXPORT_SYMBOL vmlinux 0xf741c793 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xf74fb15e read_cache_page +EXPORT_SYMBOL vmlinux 0xf755484d jbd2__journal_start +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf76ede18 phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0xf778a124 snd_card_unref +EXPORT_SYMBOL vmlinux 0xf7802486 __aeabi_uidivmod +EXPORT_SYMBOL vmlinux 0xf78c178e netif_rx +EXPORT_SYMBOL vmlinux 0xf7ac1d0e elv_rq_merge_ok +EXPORT_SYMBOL vmlinux 0xf7b12aee __next_cpu +EXPORT_SYMBOL vmlinux 0xf7bd2d27 key_type_keyring +EXPORT_SYMBOL vmlinux 0xf7c2e663 pci_get_subsys +EXPORT_SYMBOL vmlinux 0xf7de2e56 __blk_end_request_cur +EXPORT_SYMBOL vmlinux 0xf7ee34e5 pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0xf7f2bbc9 dmam_free_noncoherent +EXPORT_SYMBOL vmlinux 0xf800cc07 serial8250_do_pm +EXPORT_SYMBOL vmlinux 0xf803fe39 bitmap_set +EXPORT_SYMBOL vmlinux 0xf805c5f5 inet_frag_find +EXPORT_SYMBOL vmlinux 0xf8090973 mpage_readpages +EXPORT_SYMBOL vmlinux 0xf80d159c call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf820c28a do_map_probe +EXPORT_SYMBOL vmlinux 0xf827cb83 free_reserved_area +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82c1462 tty_port_destroy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf836f3f9 pci_fixup_device +EXPORT_SYMBOL vmlinux 0xf841b24b skb_orphan_partial +EXPORT_SYMBOL vmlinux 0xf853bbca omap_vrfb_map_angle +EXPORT_SYMBOL vmlinux 0xf88a6b98 bio_integrity_clone +EXPORT_SYMBOL vmlinux 0xf8bb92ea inet_sendpage +EXPORT_SYMBOL vmlinux 0xf8c3976f tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0xf8cb0c18 dev_set_mtu +EXPORT_SYMBOL vmlinux 0xf8f6a55b dev_remove_pack +EXPORT_SYMBOL vmlinux 0xf8f8af5d __f_setown +EXPORT_SYMBOL vmlinux 0xf8fbb4f0 __bad_xchg +EXPORT_SYMBOL vmlinux 0xf91b8de9 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0xf9348cbc xz_dec_run +EXPORT_SYMBOL vmlinux 0xf935049b omapdss_unregister_display +EXPORT_SYMBOL vmlinux 0xf936b965 pps_register_source +EXPORT_SYMBOL vmlinux 0xf93bf65d blk_queue_prep_rq +EXPORT_SYMBOL vmlinux 0xf9427374 dispc_request_irq +EXPORT_SYMBOL vmlinux 0xf943f9bb proc_set_user +EXPORT_SYMBOL vmlinux 0xf96a520c tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0xf96d6921 jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0xf96f55e0 sock_release +EXPORT_SYMBOL vmlinux 0xf972afb2 bitmap_close_sync +EXPORT_SYMBOL vmlinux 0xf991d512 skb_append_datato_frags +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9aec110 phy_driver_unregister +EXPORT_SYMBOL vmlinux 0xf9b0342b elv_add_request +EXPORT_SYMBOL vmlinux 0xf9b2bf4d __free_pages +EXPORT_SYMBOL vmlinux 0xf9c367e0 iov_pages +EXPORT_SYMBOL vmlinux 0xf9d5bbd9 register_filesystem +EXPORT_SYMBOL vmlinux 0xf9d7f183 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0xf9e73082 scnprintf +EXPORT_SYMBOL vmlinux 0xf9f4c037 tc_classify +EXPORT_SYMBOL vmlinux 0xfa167fe4 nand_scan_bbt +EXPORT_SYMBOL vmlinux 0xfa1db55b dquot_release +EXPORT_SYMBOL vmlinux 0xfa474347 fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0xfa4cd6fd d_delete +EXPORT_SYMBOL vmlinux 0xfa597b79 dev_load +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa5f91c3 kmalloc_caches +EXPORT_SYMBOL vmlinux 0xfa70e60c grab_cache_page_nowait +EXPORT_SYMBOL vmlinux 0xfa7f3156 wl12xx_get_platform_data +EXPORT_SYMBOL vmlinux 0xfa88029b generic_make_request +EXPORT_SYMBOL vmlinux 0xfa8d431a dev_alert +EXPORT_SYMBOL vmlinux 0xfa907c2d mmc_stop_bkops +EXPORT_SYMBOL vmlinux 0xfa97dc2f clocksource_register +EXPORT_SYMBOL vmlinux 0xfaa68404 iterate_supers_type +EXPORT_SYMBOL vmlinux 0xfabee837 vga_get +EXPORT_SYMBOL vmlinux 0xfac6193a kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0xfac68eba arm_elf_read_implies_exec +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfac8dcbf __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0xfaca69f1 xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0xfacd2e14 pgprot_user +EXPORT_SYMBOL vmlinux 0xfae67b1f cap_mmap_addr +EXPORT_SYMBOL vmlinux 0xfaf90481 setup_arg_pages +EXPORT_SYMBOL vmlinux 0xfaf98462 bitrev32 +EXPORT_SYMBOL vmlinux 0xfaf9995e sleep_on +EXPORT_SYMBOL vmlinux 0xfafba689 netlink_unicast +EXPORT_SYMBOL vmlinux 0xfb303c73 locks_remove_posix +EXPORT_SYMBOL vmlinux 0xfb5d4a2d scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb7349e6 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0xfb7d9c45 __udivsi3 +EXPORT_SYMBOL vmlinux 0xfb94103e __clzdi2 +EXPORT_SYMBOL vmlinux 0xfb961d14 __arm_ioremap +EXPORT_SYMBOL vmlinux 0xfb9681a1 omapdss_default_get_recommended_bpp +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbc1cef3 sg_miter_stop +EXPORT_SYMBOL vmlinux 0xfbda31f5 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0xfbda7b13 blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0xfbe03b0a dev_mc_unsync +EXPORT_SYMBOL vmlinux 0xfbe27041 blk_queue_make_request +EXPORT_SYMBOL vmlinux 0xfc023366 dev_add_offload +EXPORT_SYMBOL vmlinux 0xfc02b7ad sysctl_tcp_wmem +EXPORT_SYMBOL vmlinux 0xfc0799c8 dquot_operations +EXPORT_SYMBOL vmlinux 0xfc147c1c tcp_gro_receive +EXPORT_SYMBOL vmlinux 0xfc1c99d7 blk_get_request +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc446ebc xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0xfc65459a kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0xfc746c7e inode_claim_rsv_space +EXPORT_SYMBOL vmlinux 0xfc86931d is_bad_inode +EXPORT_SYMBOL vmlinux 0xfc8eedcf sock_no_socketpair +EXPORT_SYMBOL vmlinux 0xfca8566c tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0xfcaa04a0 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xfcb77cfd ipmi_free_recv_msg +EXPORT_SYMBOL vmlinux 0xfcc2a43c utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0xfccdb1e2 of_device_register +EXPORT_SYMBOL vmlinux 0xfcde590c of_find_device_by_node +EXPORT_SYMBOL vmlinux 0xfcdf3a75 inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0xfceb01c4 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfcfa03ff fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0xfd0bc264 nf_reinject +EXPORT_SYMBOL vmlinux 0xfd27eb1b vc_resize +EXPORT_SYMBOL vmlinux 0xfd305341 walk_stackframe +EXPORT_SYMBOL vmlinux 0xfd5683b9 wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0xfd6293c2 boot_tvec_bases +EXPORT_SYMBOL vmlinux 0xfd6823ac find_get_pages_tag +EXPORT_SYMBOL vmlinux 0xfd6c96f4 vlan_uses_dev +EXPORT_SYMBOL vmlinux 0xfd8163cc tty_register_ldisc +EXPORT_SYMBOL vmlinux 0xfd99623a ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xfda0dbe8 ftrace_print_hex_seq +EXPORT_SYMBOL vmlinux 0xfda4b9ba lro_receive_frags +EXPORT_SYMBOL vmlinux 0xfdbc5502 blk_get_queue +EXPORT_SYMBOL vmlinux 0xfdda11a5 do_sync_write +EXPORT_SYMBOL vmlinux 0xfde8bfc7 generic_write_checks +EXPORT_SYMBOL vmlinux 0xfdf7dfcf scsi_calculate_bounce_limit +EXPORT_SYMBOL vmlinux 0xfdfc0b3b fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe041aad invalidate_bdev +EXPORT_SYMBOL vmlinux 0xfe281418 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0xfe40bf95 dss_feat_get_num_ovls +EXPORT_SYMBOL vmlinux 0xfe453131 tty_hung_up_p +EXPORT_SYMBOL vmlinux 0xfe562d8d netpoll_send_udp +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe789717 unregister_console +EXPORT_SYMBOL vmlinux 0xfe7c4287 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0xfe811968 nonseekable_open +EXPORT_SYMBOL vmlinux 0xfea5212a qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0xfeb8eee4 ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfef96e23 __scsi_print_command +EXPORT_SYMBOL vmlinux 0xfefb6077 edma_alloc_channel +EXPORT_SYMBOL vmlinux 0xfefe2a7b blk_alloc_queue +EXPORT_SYMBOL vmlinux 0xff064fee gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff1e9f55 __devm_release_region +EXPORT_SYMBOL vmlinux 0xff56f275 phy_device_create +EXPORT_SYMBOL vmlinux 0xff5813e4 __alloc_skb +EXPORT_SYMBOL vmlinux 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL vmlinux 0xff65fea9 dma_common_mmap +EXPORT_SYMBOL vmlinux 0xff67b37f __lshrdi3 +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff6f09d6 default_file_splice_read +EXPORT_SYMBOL vmlinux 0xff892990 zero_fill_bio +EXPORT_SYMBOL vmlinux 0xff8ae20c i2c_del_driver +EXPORT_SYMBOL vmlinux 0xff9ca065 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0xffa56f12 scsi_is_target_device +EXPORT_SYMBOL vmlinux 0xffb94ef0 _test_and_change_bit +EXPORT_SYMBOL vmlinux 0xffd2cf99 omap_dss_get_num_overlay_managers +EXPORT_SYMBOL vmlinux 0xffd5a395 default_wake_function +EXPORT_SYMBOL vmlinux 0xffd7160f dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xffdb82bc sg_free_table +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x0071fb81 ablk_init_common +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x062b5324 ablk_exit +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x0cf23dda __ablk_encrypt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x5a1d0665 ablk_init +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x6ed5c471 ablk_decrypt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x7425bd00 ablk_encrypt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0xd47db378 ablk_set_key +EXPORT_SYMBOL_GPL crypto/af_alg 0x1e4979b5 af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x3b9f1701 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x59bc06d4 af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x8f6aca4d af_alg_complete +EXPORT_SYMBOL_GPL crypto/af_alg 0x93957c0c af_alg_cmsg_send +EXPORT_SYMBOL_GPL crypto/af_alg 0xa4ce021a af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0xd954ef95 af_alg_wait_for_completion +EXPORT_SYMBOL_GPL crypto/af_alg 0xdd269d13 af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0xdf711cd6 af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x269df377 async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x61366a6f async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0xb393553a async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x4511bb24 async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xc6cb781c async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x10e7c3d4 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x39c6e894 __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x6f3f946e async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xc2930f79 async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x9de3fa72 async_xor_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xf646000a async_xor +EXPORT_SYMBOL_GPL crypto/authenc 0x587ef278 crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0x11769065 blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x27278ca9 __cast5_encrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x394b4554 cast5_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x4a2a3ca6 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x08b47b70 cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1291971c __cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1e2c961f __cast6_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x8f04034a __cast6_encrypt +EXPORT_SYMBOL_GPL crypto/cast_common 0x08aa6fb7 cast_s1 +EXPORT_SYMBOL_GPL crypto/cast_common 0x0c5fbf8a cast_s3 +EXPORT_SYMBOL_GPL crypto/cast_common 0xe39dd4b4 cast_s2 +EXPORT_SYMBOL_GPL crypto/cast_common 0xee83a4f3 cast_s4 +EXPORT_SYMBOL_GPL crypto/cryptd 0x27a21bc6 cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x3ac4ebb1 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x68538190 cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x7aba8859 cryptd_free_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x8d603ae5 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0x962cdd74 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xa61b9376 cryptd_alloc_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0xc501dfe7 cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xd0167581 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xea02a220 cryptd_ablkcipher_child +EXPORT_SYMBOL_GPL crypto/des_generic 0xcfd9a2c0 des_ekey +EXPORT_SYMBOL_GPL crypto/lrw 0x3864eb66 lrw_free_table +EXPORT_SYMBOL_GPL crypto/lrw 0x96158433 lrw_crypt +EXPORT_SYMBOL_GPL crypto/lrw 0xcd074900 lrw_init_table +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x328dee01 serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x5ddb33e9 __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x77b39cb4 __serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x8a1a99ad __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/twofish_common 0x5dfa7c67 twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0x6c3229bb __twofish_setkey +EXPORT_SYMBOL_GPL crypto/xts 0x18e6f3f9 xts_crypt +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0x4243fd08 __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x14102f23 ks0108_displaystate +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x48a70518 ks0108_writedata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x4f506333 ks0108_startline +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x6edae968 ks0108_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xbf4774db ks0108_writecontrol +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xedde6df2 ks0108_page +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xfee8ef7b ks0108_address +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x09a6bdbf bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0b752077 bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0bef6d72 bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x12653f7f bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2af1dfac bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x38b942a4 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x3c3d7e6a bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x3e3def78 __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x45033d19 bcma_core_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x56b2abf6 bcma_core_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x5ba79398 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x5ce3ca64 bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x75942f56 bcma_find_core +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7adcb8f2 bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x85713357 bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x88486df3 bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8f79d4d5 bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x9463744e bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb40b1de3 bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe1d3d59d bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xeb7f9c86 bcma_core_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf01b2fab bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xff5bda9c bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x2a12c196 btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x3e0c721c btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x6d8b4eac btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x8750d1ab btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x983c968a btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xaa7545fc btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xc0c439bd btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xd33ced53 btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xd51d7963 btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xd7239c74 btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/cpufreq/arm_big_little 0x46a614b0 bL_cpufreq_unregister +EXPORT_SYMBOL_GPL drivers/cpufreq/arm_big_little 0x9e2f3ac7 bL_cpufreq_register +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x046aab2a dw_dma_resume +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x2a93e731 dw_dma_shutdown +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x363de079 dw_dma_suspend +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xcbe3482c dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xd828a7c8 dw_dma_remove +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x04bd8425 edac_device_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0bb740ec edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x11ff9992 edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x1277b6c4 edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x173c84a5 edac_mc_add_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x2137bac5 edac_device_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x2db65105 edac_pci_handle_pe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x58ec4074 edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x591c317e edac_device_handle_ce +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x5b51fee4 edac_device_handle_ue +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x69259f22 edac_mem_types +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x8b24228b edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xa1e012e2 edac_pci_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xac79a51f edac_pci_handle_npe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xb2812a27 edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xb6d32a5b edac_mc_del_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xba02df87 edac_device_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xbd3cfc6f edac_pci_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc1c4c4dd edac_mc_free +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xcc1d4c98 find_mci_by_dev +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xd54e0cd9 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xe2ee79fe edac_pci_reset_delay_period +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xf99a54cd edac_mc_alloc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xffd59976 edac_mc_handle_error +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xf4ade51f fw_card_release +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x0d933f40 __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0xb0b613a3 __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x306aad03 drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x4a357590 drm_gem_cma_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x5eafc371 drm_gem_cma_dumb_map_offset +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x616afa6b drm_gem_cma_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x86da5f8e of_get_drm_display_mode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x8b80d60b drm_gem_cma_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x8f50ac44 drm_vm_open_locked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x960ab2b2 drm_gem_cma_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x9b8efdd9 drm_gem_cma_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x9d175c01 drm_display_mode_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xa19ac515 drm_gem_cma_describe +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xa29e60e5 drm_gem_cma_prime_vmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xe64f39f4 drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xeb70c4c9 drm_gem_cma_prime_vunmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xef32a29d drm_gem_cma_prime_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf5d374b5 drm_gem_cma_prime_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xffa3c7e9 drm_gem_cma_vm_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x1148b623 drm_fbdev_cma_fini +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x82fcf1fa drm_fbdev_cma_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x912bfc0d drm_fb_cma_get_gem_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xa15316b3 drm_fb_cma_debugfs_show +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xb2c912af drm_fbdev_cma_hotplug_event +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xcc337fd5 drm_fbdev_cma_restore_mode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xf5f554df drm_fb_cma_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x57c60a63 ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x65b6a64d ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x6adf436b ttm_prime_fd_to_handle +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xaadbaeff ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xce36343e ttm_prime_handle_to_fd +EXPORT_SYMBOL_GPL drivers/hid/hid 0x01dc4f04 hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0ac4578b hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x15c88ce2 hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x17e9f79b hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2916b99d hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2933b52c hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x301b7e5f hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4906a967 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4bab164b hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x53c946cc hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x63a62efd hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x67c41280 hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6f427a59 hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x85b89c25 hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x93c62241 hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x93cf46a2 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9a8dec24 hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa1d3105c hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa5f176ab hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0xae259e0e hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb9267fe2 hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd17791a1 hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd25708a8 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd5429d99 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd98b46a7 hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xdc330959 hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xdc4426a4 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe1f28603 hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe671cb5c hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe7c8b0b0 hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xeca5b1c2 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf33b7d69 hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf4895142 hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf4cc0215 hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfcc2f888 hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x2f622ea1 roccat_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x8c4181ec roccat_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x9e3a3991 roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x29255c82 roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x3a57a66c roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x51f0c196 roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x5c7645e1 roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x6d28b886 roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x85171a3e roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x03e94020 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x3a0cc1da sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x684a6d86 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x7be5d2db sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x80451c53 sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x9563ee27 sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xa552098f sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xfd06188e sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x01fd453e usbhid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0xcaf15f74 hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x00515419 hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x0a34b3b9 hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x10ba0103 hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x19ca0f80 hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x280b1183 hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x767923d8 hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x85538f55 hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xa4367aca hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xc47e9df5 hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xd76491f9 hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xd86d6a88 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xdee89f55 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xf3638e9a hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x22e0489a adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x86db1519 adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xf1559a28 adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x0f1bdd00 pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x1b910afc pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x2e575218 pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x347274da pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x350fbc67 pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x65391ad0 pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x8f831641 pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xb2408774 pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xd64e6bec pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xdd63d55f pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xdf512233 pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xe2e22222 pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x01b5ed21 i2c_dw_disable_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5bb1170b i2c_dw_isr +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x98f67287 i2c_dw_func +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xa05776c5 i2c_dw_is_enabled +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xb9e0630b i2c_dw_disable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xc6d6a044 i2c_dw_enable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xd4a530ae i2c_dw_xfer +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xe889abc9 i2c_dw_clear_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xef0c8c9a i2c_dw_read_comp_param +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xfa10d84a i2c_dw_init +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x761027e2 i2c_add_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x804649ba i2c_del_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x94712afe i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xf2ffb521 i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x19eadbea ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x3c2924dd ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x50045a8b ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x505b9029 ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xb7d4da98 ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xb87ff288 ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xc9d75624 ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xe564c666 ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xea324a33 ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x0856d8cd adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x0995d897 adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x0bf5cc91 adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x2188b794 adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x2a572eb0 adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x3641adda adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x459d2f42 adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x4d430c2b adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x55fd8cbe adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x5dc39ccc adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x671a22c0 adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xfb7ef8a6 adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0133b49f iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x050db85e iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x052612f5 iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x12571e86 iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x186bfb64 iio_update_demux +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1e76d0f3 iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x267c0508 iio_channel_release_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x281ebe07 iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2a1fab3c iio_channel_stop_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3315dfd6 iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x39fe69d4 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3a59ca63 iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x48fda7cb devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x51cefabe iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x544356e5 iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x589200c4 iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x68056c53 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x68f844fc devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6b6c9e97 iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6dcdcacb iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x768bc223 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x79d5be39 iio_scan_mask_set +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x815facc8 iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x84e6f2b6 devm_iio_device_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x87d93bc8 devm_iio_trigger_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb6d06c76 iio_scan_mask_query +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xbed26a4e iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd22977a0 iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd3b87caf iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xdede0d4f iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe276483d iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe2bb97f3 iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0x5f0d164d input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0xee255aa0 matrix_keypad_parse_of_params +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x14905057 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x1b818724 cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x76d75a5e cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xae6ce809 cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x8821a030 cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xa3c62f96 cyttsp_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xde12b284 cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x4474e168 cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0xca45b85f cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x0c1e439a wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x20418722 wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x3b9b7b09 wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x3ffba970 wm9713_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x4f5dceb8 wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x58b61646 wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x94ef850f wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x9d0fbb0f wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xc82b9d2d wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xcc897330 wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xeeefb4b4 wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xf351a9ee wm9712_codec +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x28e687df ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x5c574a94 ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x720d0e9f ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xaf957529 ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xb2ff1eb6 ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xba9068e0 ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xc6987735 ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xf2e3e89c ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xf3e4ee60 ipack_driver_register +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0x23359aff unregister_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0xce1414b2 register_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x1a91b7b2 gigaset_fill_inbuf +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x2354c63a gigaset_m10x_input +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x2ba84c2e gigaset_skb_rcvd +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x3b5b5648 gigaset_blockdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x454aa44f gigaset_debuglevel +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x460acd96 gigaset_initcs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x7236868f gigaset_isdn_rcv_err +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x86436346 gigaset_shutdown +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8eff32df gigaset_dbg_buffer +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8f21e5f3 gigaset_add_event +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x94379064 gigaset_freedriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x95c831e5 gigaset_freecs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x9878d066 gigaset_initdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x9ee0c54f gigaset_handle_modem_response +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xa8651d57 gigaset_start +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xbe3b7fea gigaset_stop +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xc9025ddf gigaset_m10x_send_skb +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xdf5e59d9 gigaset_skb_sent +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xf421d33b gigaset_if_receive +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x27406ffc lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x32bb6d35 lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x400c9379 lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x58e293a1 lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x6cc6d37d lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x71b98ee8 lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x9d68ac15 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xa6b7ecf8 lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xc2d76844 lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xc8e264c1 lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xdbca2863 lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x749e05f2 ledtrig_flash_ctrl +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x7903e46e ledtrig_torch_ctrl +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x10e06e97 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x155ea9c7 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1822fd23 __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1f2ba9ac __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x260d47cf __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x27831e89 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2dec45e0 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x347aebe1 __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x41c861f0 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x49856e5a __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x50e8c39f __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x574ba881 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x628eb712 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6770a402 __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x785cfc9f __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7b488fb1 __tracepoint_bcache_alloc_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x91f2af34 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa09069a3 __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa591c5d6 __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa6890b59 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xaf60c34b __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb950d2ae __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbd4b89b6 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xce0e6218 __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd40fba32 __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xdc5ea5a5 __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf58ce244 __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf5bcbdc7 __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfc1d5275 __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfcdf28c9 __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xffc308e4 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x00bd4453 dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x012106ec dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x53bd14a3 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x62dbce9e dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x64c8de95 dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x9b31db6b dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xa88a9e0d dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb6d5c65d dm_deferred_set_add_work +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb70b342a dm_bio_prison_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xebd06eaf dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x22163b69 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x3909d3a8 dm_bufio_prefetch +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x594952bd dm_bufio_read +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x62a23587 dm_bufio_get_device_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9b2b253a dm_bufio_get +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa82b2066 dm_bufio_write_dirty_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc9a3422d dm_bufio_write_dirty_buffers_async +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd1244bc0 dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd4bddf5c dm_bufio_issue_flush +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xdc69e37a dm_bufio_get_block_number +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe004ee92 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe6024e59 dm_bufio_release +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xebcc64a4 dm_bufio_get_block_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xeca7949e dm_bufio_client_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x22b909d9 dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x44a6323a dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x8efe7ffb dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x90f8abbb dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xb246223c dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xbeca1019 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xd6370e2d dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x6b027224 dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xe82efa5e dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x09472122 dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x32e2dc63 dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x38efaf5a dm_region_hash_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3a18389a dm_rh_update_states +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x477ec483 dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x6cdbe5fe dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x718c348a dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7774620f dm_rh_stop_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7d053fc5 dm_rh_start_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa53387c7 dm_rh_flush +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa83588eb dm_rh_recovery_end +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa8813ad6 dm_rh_region_to_sector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbff52f1a dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xc66ce277 dm_rh_get_region_size +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xcab63c3d dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xe87af8b3 dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xf37a3cfe dm_rh_get_region_key +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfd93482e dm_rh_recovery_in_flight +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0054f69d dm_tm_pre_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x01445176 dm_btree_find_highest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x11eab9fe dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x150c85ce dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1cac81ac dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2025e954 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2c112836 dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2e730a21 dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f40da68 dm_bm_set_read_write +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f74609d dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x32b5f546 dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x33c03da6 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x38c75c44 dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3ad0f55b dm_bm_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x40f7bd91 dm_tm_inc +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5e6aea80 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x619701dc dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x62c1b9ee dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x68fae9d2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x72289260 dm_block_manager_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7ade1071 dm_tm_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7b047bd9 dm_tm_create_non_blocking_clone +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x80c89b3d dm_tm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x832bf228 dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x858c8d94 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89f1e1cc dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x966a8838 dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9b4b5b29 dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9e798e22 dm_bm_set_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa0bbbb49 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa13861b4 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2507774 dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa87c5b4d dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaee02382 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb0e99df3 dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb7bad799 dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb9a6ecf8 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbcfdc290 dm_tm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbd50ebbb dm_btree_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbe0497aa dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xca40abd5 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd041d62b dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe44b4b9b dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xead1e727 dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xed1e1f96 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf475af48 dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/raid1 0x3c677478 md_raid1_congested +EXPORT_SYMBOL_GPL drivers/md/raid10 0xf8c614a5 md_raid10_congested +EXPORT_SYMBOL_GPL drivers/md/raid456 0x27633e87 md_raid5_congested +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x15d568e4 saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x1d20d9b6 saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x3446259e saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x68feb3fb saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x87117f49 saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x8d7d8f40 saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x9afc2307 saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xacdc14a1 saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xb95ad2f0 saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe25e8ac0 saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x088734c2 saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x0b1714c9 saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x20beb340 saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x99afcb0b saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xae9379d4 saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xcd4fa001 saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xfbd3009e saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x1f5885b5 smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x37d91069 smsendian_handle_tx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x5ee827b9 smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x63222b29 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x6674fc9a smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x739ea1bc smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7c576277 smsendian_handle_message_header +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9306d2a9 smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x965b9f9a smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x978f4993 smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x98e49f2e smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9c2225ed smscore_translate_msg +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa198a742 sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa452bfaf sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xaeb5c7f8 sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xb3166237 smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xb98675b6 sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbc7c4c66 sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc53eeebf smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xd99ad219 smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xf5b56d56 smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0xbaae2603 cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0xb5434d01 tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0x076f77b5 cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x02e8fc18 mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x0577b8ba mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1693ddf3 mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x199afe95 mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x358749cd mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x4adffe5b mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x50203eab mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x62d0185a mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x64537a96 mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x711e58d5 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x82ac71fa mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x8410604e mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x84e8bfd6 mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xa8b9f4ee mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb0632473 mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xd5c45315 mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xee807d17 mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x05a4d5f5 saa7134_s_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x5ac27ade saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x617b7b8d saa7134_g_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x9e7d132d saa7134_s_std_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xf49b07e4 saa7134_queryctrl +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x0507cfb0 ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x68676ffc ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xb02e42a8 ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xb4123752 ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xe916d328 ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xebcf8f31 ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xfc869421 ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/platform/omap/omap-vout 0x090b7ab2 omap_vout_default_crop +EXPORT_SYMBOL_GPL drivers/media/platform/omap/omap-vout 0x3f08714d omap_vout_try_window +EXPORT_SYMBOL_GPL drivers/media/platform/omap/omap-vout 0x87006df4 omap_vout_new_window +EXPORT_SYMBOL_GPL drivers/media/platform/omap/omap-vout 0xd5aa61c6 omap_vout_new_format +EXPORT_SYMBOL_GPL drivers/media/platform/omap/omap-vout 0xe168e379 omap_vout_new_crop +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x88710231 radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x8e893a29 radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1eec6792 rc_close +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x254cef35 rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x333e278f rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x4e27ef07 rc_open +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x4f6471c9 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x553efb91 rc_core_debug +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6957b3c4 ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x831caa38 rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x8628b4ed rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x88c29ad4 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x94cdcab1 ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x95806298 rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x9d376238 rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa3c6bc6c ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb1dc8ff1 rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb50642fe rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb6b92f51 ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xda1cc57c ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf607fad6 rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xfe7b0a2b rc_keydown +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0xd1e3109a mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0x4771e68c microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0x0266267f mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0x52586a2e r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0x2082ab1f tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0xb818038f tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x007469fa tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0xdbe1cbf4 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x674de140 tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0xdb6df335 tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0xf129633f tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x86efc6bb tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0xce83667f tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0xba118e57 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x10c6d16b cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x2745fbcc cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x2df2e111 cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x43f54ad7 cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4a0a3248 is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4f1f5766 cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x62a76e61 cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6cbede47 cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x8d276a59 cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x8de925ef cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x9feb52eb cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xa93a9d51 cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xc2164dc0 cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xc8dbd93a cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd8aae20f cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xdb3a5afe cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xe4687dca cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf62963ad cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf985187d cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0xe34498de mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0x2cbff5d9 mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x0ba85bb1 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x1e399ee7 em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x338d59bf em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x4963c240 em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x58b9d938 em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x5f8be466 em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x63964615 em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x6c6d8812 em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x6d6a8cd8 em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x8aef1c7f em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xc4e8eb67 em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd2ba5204 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xe9c238f4 em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xeacc3cc7 em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x084575f9 tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x40898e76 tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x5dd06415 tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x94194a87 tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x01c483a9 v4l2_get_timestamp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x096d7f01 v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x22c6821e v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x5776ec9b v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x7d603df9 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x813f3de4 v4l2_find_nearest_format +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xb3f0eef1 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xdcaa6462 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x08982d59 v4l2_match_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x221d2fbc v4l2_enum_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x36e8756a v4l2_find_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x4103badb v4l2_print_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x53105839 v4l2_detect_cvt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6976cfe0 v4l2_valid_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6f344bb9 v4l2_calc_aspect_ratio +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x7eaf8e7a v4l2_detect_gtf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xb0891da2 v4l2_dv_timings_presets +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x9dbfd652 v4l2_int_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xa5228b24 v4l2_int_device_try_attach_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xcef46e1e v4l2_int_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xd7a34bcf v4l2_int_ioctl_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xda7a9e3b v4l2_int_ioctl_0 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x099e25c0 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x17eb0eee v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3a8ce96d v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x42fcfc93 v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x457a67da v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x626585e8 v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x85251cae v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x954568ea v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x97033bc6 v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x995c3b49 v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9c76251f v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd4f10fa7 v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe1a82359 v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xeea00063 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf588b8d0 v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x0807bea5 videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x098f2850 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x17a80d97 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x259f0f01 videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3e5dd4cf videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4703b3c5 videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4804dcb4 videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x61c85948 __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x65a8fa32 videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6dce49c5 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x78f3c4df videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x87cd50cf videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x8c961e8b videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9178e129 videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9324a1c7 videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x98ede997 videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9b3451e8 videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa1c765c7 videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa2ae2add videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xab4cb97c videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xd4a6cefc videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe72fd5c1 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xeb1ccca2 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf9f875aa videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x9ae5d503 videobuf_queue_dma_contig_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0xb302e63c videobuf_to_dma_contig +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0xc589e82d videobuf_dma_contig_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x0aabcc2b videobuf_dma_map +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x30d0e24c videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x5cd61f5c videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x7a688758 videobuf_dma_init_overlay +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x96955f48 videobuf_dma_init_user +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xa825c75b videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xd0216ed4 videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xd7e1a33e videobuf_dma_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xe2382bb2 videobuf_dma_init_kernel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xf60a5b4c videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x5d50cfd1 videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x6e6f4a03 videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0xf1bfe689 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x047c2956 vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x0faa76c2 vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x16a2dd13 vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x18372673 vb2_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x1e11f7d5 vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x1f6ed9b2 vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x23bcaf4c vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x26c84e47 vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x362801ec vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x40b9ade5 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x4d21658a vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x508dbec9 vb2_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x5a6038ae vb2_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x5d0c255f vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x606d1412 vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x6486edc4 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x6681ec61 vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x6b6b579f vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x78a92a8a vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x7db33608 vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x875c3aa5 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x91766053 vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x955efd50 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x9677efe2 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa1d7b19d vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb222d76c vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xbea70cfd vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xc20ada31 vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xced1136e vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xdea87873 vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xef4ac7fb vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xf97b7e97 vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xfc3f647d vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xff376952 vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0x2a157c62 vb2_dma_contig_init_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xce8291f3 vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xe57f0426 vb2_dma_contig_cleanup_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-sg 0xd6bdb591 vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x0f478c04 vb2_get_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x1b67e276 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x8e9a85e1 vb2_put_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0xf0e1456f vb2_get_contig_userptr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-vmalloc 0xfe03645a vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x03ffd553 v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x04620adc v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x112eeff9 v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x14bf50ad v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1ba04ca3 v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1d071544 v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x212cda72 v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x22cb8d9b v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x32d4b0bf v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x428202dc v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4a54641e v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x53d138c5 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x61755a05 v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x661a30f4 v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6c134cca v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9f20af58 v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa4c29ee7 v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa8f8b8f4 v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xaa90f4e1 v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb6e32221 v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdbf00468 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf2208d03 v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfe003a37 v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x3ed51c14 i2o_sg_tablesize +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x692c0afc i2o_pool_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x73cca117 i2o_dma_map_single +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x95adb579 i2o_pool_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xa95c2730 i2o_dma_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xb0308e64 i2o_dma_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xb2cf2bfe i2o_dma_map_sg +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xf3e05752 i2o_dma_realloc +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x3f2b6a41 pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x47ec76bc pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xf619b424 pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x147d3ffd kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x15b94ce0 kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x176e2ab0 kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x9ab3476f kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x9b3847a6 kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xcdafc7d4 kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xf205562f kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xfbc9fb1d kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x6a916c63 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xa5c19b1d lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xe2d395d7 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x0aa51173 lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x0fc2cda0 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x63c1296e lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x8dd737f0 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xaa21a1f9 lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xce2ce011 lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xe815a3ad lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x04302249 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x163fd721 mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x448a6969 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x90f07e45 mc13xxx_common_cleanup +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xa7002b5c mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xca72b91e mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x5bc2325c pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x674ad6e4 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x7b395de5 pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x85485d0b pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x8759649e pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xa26fb360 pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xa3771e22 pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xa4ab2b81 pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xbb25bf58 pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xc3e284ca pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xf1422bbe pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x7b0cbcf0 pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x86080df3 pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x28baaf20 pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x2f1ebdbb pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x37fa094b pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x47156840 pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xa849484c pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x01a33234 retu_write +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x4fca3918 retu_read +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x1793daab rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x2911815c rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x2ac8cfb2 rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x2feaa18c rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x486f0822 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x5628ae8d rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x5a58cfb9 rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x63dd9e99 rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x64040e7e rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x66e89702 rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x695c191c rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x75ffcbca rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x76ff544f rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x77f6b327 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x87c35d7c rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x8d593984 rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xb15acc77 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xc73b7cd9 rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xca5f7fcd rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xf08806fb rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xfb625940 rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x04d7c5c3 si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0cdecdf2 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0f0aa515 si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x17683756 si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x1bd33a53 si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x25d0dbc1 si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2f9f1958 si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x33d3b4b7 si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3595ead6 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4639507d si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5abf7d7f si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5dcdd89c si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x759aa6b8 si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x80d76343 si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8938842f si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8cf4bf1e si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x99a215c4 si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9c190e7e si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9ec23aec si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc05d2320 si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc070432b si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc87af375 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xca3baffc si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xcc879891 si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xcd57f365 si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xce850fc6 si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd332fadc si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd3bd2bba si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd8306180 si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf24d715a si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf3ce68d9 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf4c48a54 si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf91ce806 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfef2c19a si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x550914fa sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x64e4345e sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x8c71e32e sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x98fc5163 sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xc0ddce54 sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x196ecf5a am335x_tsc_se_update +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0xa9e044f7 am335x_tsc_se_set +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0xafd5b149 am335x_tsc_se_clr +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x0d27a2c5 tps65217_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x8a587b91 tps65217_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xabefef32 tps65217_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xf6e223ba tps65217_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/twl4030-madc 0x4362dc66 twl4030_get_madc_conversion +EXPORT_SYMBOL_GPL drivers/mfd/twl4030-madc 0x9effbf1a twl4030_madc_conversion +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0x1b752dcf ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x409d1660 cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x8f855ee3 cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xcb9ddc4e cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xd78e48e6 cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x27cb133b eeprom_93cx6_multiread +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x63d2ff63 eeprom_93cx6_wren +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x822222db eeprom_93cx6_write +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x98bb5a22 eeprom_93cx6_read +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x08f73a52 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x4d228309 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x55db3c27 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x67b4fec8 enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x754f034d enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xc21e674d enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xf7f18769 enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x1614a8cf lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x278587db lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x35b54e44 lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x4ab5b6a6 lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x5852aa34 lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x64ea514c lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x70b180af lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x9dc52294 lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x9ed70955 st_register +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0xe908af7c st_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0x4d08d7c6 dw_mci_pltfm_remove +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0x8ca22b1e dw_mci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0xa86bb8ee dw_mci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x14734c33 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xd6444c4d cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xe96d69a5 cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x08bba196 cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x851025c0 cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xfb426e10 cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x673e9dd6 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x3e5b923a cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x3e84d793 cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xdcd25489 cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/nand/sm_common 0x10614c62 sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0x48b5ab57 onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0x94c7cb1f onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x027ea0d7 ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x1e2c0080 ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5cfdd22d ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x7bd2194f ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x7e950369 ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x997098bc ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x9cfa8357 ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xa8b8ae5f ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xae8c45ae ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc821cb74 ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xcb79a787 ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf6295f77 ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf7cbc39b ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xfeeb1431 ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x07feb772 c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x24cb9705 c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x2b5ae988 unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x5263ef7e free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x769382b2 register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x9fee550e alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x055c750f can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x05c58c72 open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x222c295a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x260586fd register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x4a08bac4 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x613b101f alloc_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6eb6e70d safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6f12ac7d free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x72db5961 can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x86205362 can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x98eb9b94 close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb346573b can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xcd52a53e alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xce6bdc0f alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xd58b1cc0 devm_can_led_init +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xd5bb2443 can_led_event +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xf2b3a6b2 can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x1a1e3e66 register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x389f5896 alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x5ed05495 free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xbb6e069c unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x6b1b994d register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x73a53c0f alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xad4a8994 unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xf9ede7bb free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x33c0b89c macb_get_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x5b429320 macb_set_rx_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x635b67d7 macb_set_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x74a0b339 macb_get_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x9194f3f7 macb_ioctl +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xb07aa7b0 macb_mii_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xd29ec282 macb_ethtool_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x06e13cc8 mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x07a8b0ea mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x07d8c7b2 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x08305371 mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0876e016 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x08941dcd mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x092a1fda mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0ed5706c mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x16acce22 mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1b7c68fa mlx4_fmr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1fc351f6 mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x21b3fe11 mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x28ecb5e4 mlx4_fmr_unmap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x28f7ff0e mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2aea0ca4 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2d2e80c1 mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x32a6d0fa mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3311fa15 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x353c81a1 mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x361726f7 mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x36acd94f mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x370a9adb mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x38bbed37 mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3a01fb40 mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3a66f283 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3dab7f60 mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3dbe5505 mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3dd99e6c mlx4_fmr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x40586907 mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x42cb7bbf mlx4_fmr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x43362ec8 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x43ae8566 mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4985cdf3 mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4a8dd97c mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4a960c6a mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4a9b1fa3 mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4d2d7f17 mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5cc33338 mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5d7f1e5a mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5dc15c61 mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x611dd62c mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x61692bb0 mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6608af3c mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x67494135 mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6ee55fd9 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6f5b8e31 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x70db0079 mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7740257e __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x78a9f599 mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x79f9bb32 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7b192b97 mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7bb82d6f mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7fa60dfa mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x86580079 mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x88a33745 mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8a16084e mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8c6e2548 mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8ee38de3 mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8f4fb816 mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x916ed0d4 mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x93d6445c mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x93d7f5e6 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x95456008 mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x96c90181 mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9a455d07 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9b881904 mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9ca715b0 mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa17b723f mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa294227f mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa51781fe mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa92bc740 mlx4_map_phys_fmr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa9d64c23 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaf42d8cb mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb0ee0fdd mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb183c18a mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb422778a mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb6e055fc mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb7c9276c mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb8503948 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbce4dbc7 mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbfb6ec28 mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc8597ce7 mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcb01b7a9 __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcb10fe1e __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcbf4de62 __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd2b53ed1 mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd46104cb mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd6e01664 mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdb10bb92 mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdc185ceb mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe719081a mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeadc94db mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xed4043fb mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xed6d8f09 mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xed79c261 mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf3c34639 mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf4d4f608 mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf65e692f mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf78d12cc mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfbaf5079 mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1ccc6f3d mlx5_core_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1e7ace35 mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x310a091e mlx5_core_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x370d3aed mlx5_core_xrcd_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x42e5c61c mlx5_core_mad_ifc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4379ec3d mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4691063a mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5631b3db mlx5_core_destroy_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x676b7bd6 mlx5_create_map_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6ef19e6e mlx5_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x93087eb9 mlx5_destroy_unmap_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9d9bda94 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc08c17a7 mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xca83408c mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcdb23172 mlx5_core_create_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd4b302ca mlx5_core_eq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfe2ff314 mlx5_core_qp_modify +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x8148cf39 macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x83bde640 macvlan_start_xmit +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xcd8587f0 macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xddaad9b9 macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xeda3d124 macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvtap 0xaf02ced4 macvtap_get_socket +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x3c340879 usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x6c919eb8 usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xb0f6bd56 usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xf667bd3c usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x349dfab5 cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x6df4420e cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x73a0ba52 cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x987f62ea cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x996f9f35 cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xb27c3ade cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xb9c0f163 cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xbca49439 cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x0979768c rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x1666ac1b rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x1cb42b24 rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x80c3d0f5 generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x9cd41b07 rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xab083b91 rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x0e4db883 usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x16940cd2 usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x1b6d492a usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x30833356 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x36acc5ab usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x48d18605 usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4c3c3f18 usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x5b650c90 usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x62529ec1 usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6310caef usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x643aa5c5 usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7603aee7 usbnet_set_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7895c283 usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7b3d2ee9 usbnet_get_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x803cf767 usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8aeefd85 usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x990a5b5a usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9d49d080 usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa16466da usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa67f3215 usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb3873aa7 usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xbad21062 usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xbc8f79ab usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xcd1831d8 usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xd1306af9 usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xdf47caea usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe67a9a8e usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe851b0cf usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xfb9a99f6 usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xfc64eb74 usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xfcb074cb usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xfe950a65 usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x076ceba5 vxlan_sock_release +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x4039b16e vxlan_get_rx_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x4896ee6f vxlan_xmit_skb +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x7f45aaf9 vxlan_src_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xee1b2e87 vxlan_sock_add +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x067bfa3e i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x0eab11bb i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x22fdc3cb i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x414dd3a7 i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x46666e38 i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x4c6e22c3 i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x4e8acb40 i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x5b2831d8 i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x71e03652 i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x91971177 i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x97f40724 i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xaeed417b i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb708c970 i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xccca60ed i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xd6145a1e i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe45bb457 i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x0efbd0af cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x59e7c8b8 cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x702e5d0c cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x7249920c cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/ipw2x00/libipw 0x6e83742d libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x09de90d5 il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x389ac9a6 il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x6a8a8048 il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x9da0de6f il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xd11285e5 _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x15d02775 __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x194202ee iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1bf9a2ba iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x2634cef5 iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x3f0b9a6d iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x478f251a iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x51275936 __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5a10d898 iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5d0a212e iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x6ab4cc42 iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x7a2b33f5 iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8463910c iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8c5d5ab3 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x92e64568 iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x9adf9e50 iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x9d448fb7 iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x9e7195f3 iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xa061ff12 __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xa777d771 iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xa86387e6 iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc933eafb iwl_nvm_check_version +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xcbb66ce7 iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd77af7b0 __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd9810bad iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xdeccbf15 __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xe11f9eaa iwl_notification_wait_notify +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xf5032a20 iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xf6213fd6 iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x04d637ba lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x0608748e lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x08227639 lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x23613f5f lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x252a40ef lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x5564476f lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x5ef44e48 lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x886cc05e lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x98506717 __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x9a65870c lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x9d8fb645 lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xac5314fe lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xb7e89af4 lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xb9403c51 lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xc33edfaa lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xe3fa2381 lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x17984f4c lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x1d79a51f lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x3299b4d4 lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x7473cc97 lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x9cfd44f3 lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xabb1401e lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xc85e6899 lbtf_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xe8694c84 __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xff15385e lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0x20d48083 if_usb_prog_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0x8ad31d43 if_usb_reset_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x12e35b94 mwifiex_deauthenticate +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x364f3428 mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x450906c2 mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x4c377171 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x4c88ed82 mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x4dfa9b1b mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xa3636109 mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xbfa349c0 mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xd298999b mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xd93f4747 mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xd953da84 mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xe42d7f82 mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xf5dd8b7d mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xffeded78 mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x1e2519de p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x237dbd42 p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x411cf854 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x4852427b p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x5292a4f4 p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x7b71f680 p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x8b0241ee p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x8d689011 p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xc600acc1 p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x051e4b9d rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x108e715d rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x12157be3 rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1967ad58 rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1cca3b3e rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x21fd5257 rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x2569d481 rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x2c2e7355 rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3dfc958d rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x466e9974 rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4761da11 rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x47e95ed1 rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x543ffa9b rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x5fc3d964 rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x61ad117f rt2800_rt2x00debug +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x6f551906 rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x74352523 rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x75200782 rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7acb1629 rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7cd3c3eb rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7d199649 rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x825649e7 rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x87547983 rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa52e0f5f rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa8bb81d6 rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb06ba62d rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb16a3346 rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb94fc14f rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xba459380 rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xc02226b9 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xc82a5440 rt2800_get_tkip_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xcd907354 rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd578e944 rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd89de4c6 rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xdb522ac6 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xeb169ec9 rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xec9a28d5 rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf8029766 rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xfeef382d rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x295f81e9 rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x2a20fcab rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x3be113d6 rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x40b68fed rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x4692fb49 rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x4b22e810 rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x77a6f3ea rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x83241e96 rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x97317504 rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xb3b35dac rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xb8f51769 rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xd334c8a6 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xf7c32c21 rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x01f35cf9 rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x0dea24b5 rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x161f9982 rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x197d5def rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1fe232af rt2x00mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x23a342ca rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x24265e1e rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x255f18da rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x27106bc1 rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x27f329f5 rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x286b5584 rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2df73845 rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x31718f55 rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x40aae296 rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4f52a605 rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x573e0cb9 rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5d04d329 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x640d765a rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6c9ee136 rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6cdc8ddf rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6d723b95 rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x7425bb9d rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x78cfe484 rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x7d5c43fe rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x808fc53a rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x85f39857 rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8ef891ab rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x95eeef5a rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9e5e7759 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa0e584fc rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa8c75d50 rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa9a31e37 rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xab2aa9fe rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xadb437fa rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb962fb2c rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xbc67be11 rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd21a17c6 rt2x00mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xdbf7c329 rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe2256063 rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe4c2b708 rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe527698e rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe54c95ba rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xebf344df rt2x00debug_dump_frame +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xee5133da rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf0fbc9f0 rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf1e13a66 rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf751d807 rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x12ba98b2 rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x192a0cfd rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x56625671 rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x68b2a44b rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xc55f7877 rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x2daf4606 rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xa065463c rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xae4b8da9 rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xf91a0ba6 rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x02be8066 rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x076c834c rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x2358dc8e rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x3c560413 rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x53c760c7 rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x56c62513 rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x5c33788d rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x5dc0a52d rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x6d1ac91d rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x806e2549 rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x9f6714e9 rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xa9385b07 rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xcb03369e rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xe369b6bb rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xebb537f1 rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xfa8d4a0f rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x07ea86df dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1b1e7682 rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x9a9ce5a1 dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xcdf58be0 dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x020c6471 rtl8723_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x1d91e74e rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x218d6e09 rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x3e6c04a6 rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x4a2956d1 rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x67282d83 rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x696abc2a rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6fee3a6c rtl8723_phy_set_sw_chnl_cmdarray +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7049c7ff rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7523283a rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7aaf7e44 rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7c7db829 rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x828a6b0c rtl8723_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x8e97bdfe rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x9c060a54 rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xaf4d6d94 rtl8723_phy_calculate_bit_shift +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xbc2320e9 rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xc1d8a54c rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xc495c017 rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xceed46d5 rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xd4053954 rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xd639ece5 rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xdb9680b6 rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xdec2895d rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xeae7d733 rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xeb46227b rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xf6da4bfa rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xf9abdb4a rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xfc0dd3d7 rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x1d170c78 rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x241dedc1 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x255b156d rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x293edb97 rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x2a86c626 rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x2ad7070c rtl_dbgp_flag_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x2d882d91 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x3aa23fa1 rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x737f88ec rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x7ddbd9c2 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x85224de2 rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x8d8d505d rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x9840eb57 rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xc0dfe0b5 rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xcbaeda77 rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xcc10bbdb rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xce5cd365 rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xe5a50d49 rtl_attribute_group +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf5d3ee15 rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf8ff6add rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x60f742cf wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xa76c906e wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xd615328f wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x02efbfda wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x05294fba wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x07f2f561 wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0c57ea87 wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x13a71b66 wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x14474316 wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x19336adc wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1d6f7934 wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1f964c81 wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x23ac3562 wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2547c63d wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2f0be68f wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x33a75900 wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x348a65f3 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x39229dd3 wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4780927d wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x48a3d858 wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x53dff67d wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x53f182c7 wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x59356290 wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5a34a1da wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5d2acb99 wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6a8f3fee wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x75ae1a9e wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x78a0a80e wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x82b383ee wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8e1a120c wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9323c7e7 wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9b100d5c wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa652f5f9 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa68817a5 wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb3ef79e5 wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xba4a93a8 wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xbbd6fa27 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc99fd7b2 wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd9285b4b wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xdfa4638a wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe81b1300 wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe8d40eb2 wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xeb2a0681 wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf494f368 wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf829946d wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfbf7042e wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x0f41a6bd pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x741c46fb pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x752f4814 pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x40b8beb9 mc13xxx_get_num_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x56a111eb mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x98754c49 mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xee404829 mc13xxx_parse_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xf0a1c825 mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x07cd713a wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x5e7fe847 wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x7ac8c5c2 wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xa7648a20 wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xb6ca7d5a wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xf8c4645a wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0x544e5bd2 wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x16034693 cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x18d83468 cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1d1d825e cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1e3d41fb cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x261709e8 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x28d06054 cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3a5c4389 cxgbi_ddp_page_size_factor +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3bccf2c9 cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x404298b2 cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x450733e5 cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x47390fb8 cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x51a686db cxgbi_ddp_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x52d117df cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5626d775 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x564b5f28 cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x570219f2 cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5c2dda14 cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x644e6b1c cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6a63f100 cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x778a6a06 cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x82b7b738 cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8394b4c2 cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8c2ba369 cxgbi_ddp_ppod_clear +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9cbd51e9 cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9d2acca4 cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa12d6f79 cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa337a33a cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xac949fd0 cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb3784a09 cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb6c74ab2 cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb8f02c24 cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc95bf1c1 cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcb94a811 cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcbf0bf86 cxgbi_ddp_ppod_set +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xce718392 cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd5891709 cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd6ca8d10 cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd811180b cxgbi_ddp_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd8273a95 cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xdf961e5e cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xdf971221 cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe69202ce cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xeb647e9f cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf1eddf77 cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xfb3b45d9 cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xff739ad6 cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x040c734f scsi_register_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x2a2c516e scsi_dh_attach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x593a36c2 scsi_dh_handler_exist +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xb03ece02 scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xce1c20e1 scsi_dh_detach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xd91cb10f scsi_dh_set_params +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xdd69742e scsi_unregister_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xf2365e24 scsi_dh_activate +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0a04738e fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0fb51275 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1b45cb43 fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x374c1e1c fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x3ea3dfac fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x50eb8b04 fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x5c9ca201 fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x743fdb7a fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x7a05c130 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x7bfa215a fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x7d7cfc59 fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x83ea0c68 fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x84b3d915 fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x86f07129 fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xab606e50 fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xd376454c fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xdc362e9c fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xef0e6a84 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xfbf1d7f0 __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x1f12a175 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2bc63241 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x69dd7d05 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xa345a89c iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xb9c01250 iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xf094c22e iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x03b42da6 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0a9f4caf iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0dda931f iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x20a08348 iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x20e03f90 iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x24e65c41 iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2bdcd3ed iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x305cbcbf iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x32eb80da iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x354ad632 iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x39531c39 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3e58ca7e iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3f20298c iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x422fa511 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x437f0c8e iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x507c489d iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5bd3c39a iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5f91b8f1 iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x60952fac iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x61213d00 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7655dfb7 iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x791f1311 iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x89d25b8a iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x89fe0d0f iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8b0f7b2d iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa4f527bf iscsi_eh_target_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa56e12f1 iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xaeb4556d iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xaf6bb733 iscsi_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xaf8761c6 iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb5449d52 iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb8d5c7d9 iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbb61716b iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd6d302c5 iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe0437c63 __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe49c9e93 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe967a184 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xec4ba5ef __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xee78bf6b __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf129826e iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf3c85e0b iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf5a3b99a iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf6ee243a iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfebd6984 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x031945e0 iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x0b831239 iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x12dd01ce iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x14f718e9 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x1c940633 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x54ed97c6 iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x60f15396 iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x6e41e863 iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x7729cc52 iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x7ce85fe1 iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x88e3be35 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8f1ebe55 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xae7d7fab iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xba8ddf45 iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe10b4972 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe2fc8a92 iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xec8189db iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x03ecb03a sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0ac9d790 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0c430615 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1281be9d sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x18fa76e3 sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x29505570 sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x43d5f3d9 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x51465154 sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x64d3a4fa sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x671fa497 sas_eh_bus_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x74d3545b sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x82c402de sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x93afce70 sas_domain_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x957c544b sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x9955a075 sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa1793d8c sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa3b21277 sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa8152dcf sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb2c24dff sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc8bd9987 sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xcdd81ef8 sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd7d2dbae sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe56a3aa9 sas_change_queue_type +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe57755cd sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xebb0c44d sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x001a89a0 srp_transfer_data +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x1866ca75 srp_iu_put +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x2a451c6b srp_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x6d7e27be srp_iu_get +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x7c4557c0 srp_target_free +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xe92183a5 srp_cmd_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x03dd495f scsi_tgt_it_nexus_create +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x1fe9efd5 scsi_tgt_queue_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x3938bea1 scsi_tgt_alloc_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x3c36ec08 scsi_tgt_free_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x5b978b19 scsi_tgt_tsk_mgmt_request +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x7f936852 scsi_host_get_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x8d9836e9 scsi_host_put_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xc3a05de9 scsi_tgt_cmd_to_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xd63d49c9 scsi_tgt_it_nexus_destroy +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0ea15a28 iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x12e6e77a iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x134cdd9b iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1571ccb8 iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x284451e4 iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2a829994 iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2b3c9575 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x310d6751 iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5a684f2a iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5b62bf60 iscsi_is_flashnode_conn_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5c257fc7 iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6a7576a9 iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x76209613 iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7afc61c5 iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7ca79fe1 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7db1f445 iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x868b885f iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8a056ec5 iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8f80dbe2 iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x97142ca3 iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9ab4431c iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9cda71c2 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9ea513d4 iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa49e3a7d iscsi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa81ff375 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xab0c1d9d iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb35698bf iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb48e0e62 iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb5700b91 iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb67e9198 iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcdd51fa3 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xce72f534 iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd18ec6c0 iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe170e3e6 iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe54fe2ae iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xea6d87e7 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xec70659f iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf4645555 iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfc823b97 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfeda2f04 iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x16cf3839 sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x483e6592 sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xa608de1f sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xb9b2acc3 sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x2d25a092 srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x95625c23 srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xa0aba14f srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xad21f87f srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xe46719f4 srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xee891cc0 srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x31cbbfc7 ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x3f9ab6a9 ufshcd_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xbf7a29c6 ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xc7ba97b9 ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xd7a36b12 ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xf506bac1 ufshcd_suspend +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x108cffae spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x6cf5482a spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x931866c5 spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xcfef0245 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xeab8ad82 spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x28fa95e1 dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x2fd4f6ba dw_spi_xfer_done +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x7a847e94 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x91213560 dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xc40e7e1e dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0xc9e53b7e ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x07d2b40e comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x085e805e comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x10fd4c32 comedi_buf_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x11624e80 comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x13dc9ee7 comedi_buf_memcpy_from +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1af89332 comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1c728ed8 comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1d4a419b comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1ed82ecb comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x389ed8b9 comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3adb831f comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x44b4a46f comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x469db424 comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x55ad6936 comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5c67eab0 comedi_buf_memcpy_to +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x632516f7 comedi_error +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6467c137 comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x698ba15b comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6a7cdcbd comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7ae2aca9 comedi_buf_get +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x808e7f82 comedi_dev_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x81c67891 comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x86007f1d comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x902609a5 __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x94e35a82 comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9de81af5 comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa07cde85 comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa5bc0d0a comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa7a0cee4 comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xae429648 comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb55d7184 comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb907ebdf comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc7ad1228 comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc8d24508 comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd35d5eb6 comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd3d4a9ea comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd81ebf50 comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xde033547 comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf403e75b comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf5ffb065 comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfaeabac6 comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0xc316e0cd subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0xe7f16272 subdev_8255_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0xfb90708d subdev_8255_init_irq +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x4bfe3aa3 addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x91b93725 amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xcb7eb280 amplc_dio200_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xf2609695 amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x34ddc9af cfc_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0xc26e899e cfc_write_array_to_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0xe2d40049 cfc_read_array_from_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0x7ff850c5 das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x0998cfec mite_setup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x0b2650e6 mite_bytes_written_to_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x0df021ba mite_unsetup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x120e011e mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x1581c37a mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x1a00134c mite_sync_output_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x1d178e0f mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x20b66393 mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x2531bf3c mite_bytes_written_to_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x27f4f10f mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x2c8bf708 mite_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x4ce11bfc mite_dma_tcr +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x53602eb6 mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x5ed2108b mite_sync_input_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x666d12a8 mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x7809d657 mite_get_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x98ce0ed5 mite_bytes_read_from_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb6d9e10f mite_bytes_read_from_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc9ee0551 mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd367870e mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe75d80f6 mite_setup2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xfc40621b mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc 0x60d62298 labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x8ef4f4b8 ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x98dfea82 ni_tio_rinsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x9910e38d ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x9c6d3821 ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x9f34c0c5 ni_tio_winsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xacc7e3c7 ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xafb33ae8 ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xebffd784 ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x299b1e53 ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x581f96d0 ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x7352d94a ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x9f70dc3e ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xc4f68f60 ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xf8465f15 ni_tio_acknowledge_and_confirm +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x3445c250 comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x4c71abcc comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x7c6f19be comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x7f5a2309 comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xd40f3316 comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xe786dfae comedi_close +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xebee35f7 comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x2206b003 dwc2_handle_common_intr +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x518def99 dwc2_hcd_remove +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xb05a818c dwc2_set_all_params +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xf5783389 dwc2_hcd_init +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x1a1b5249 oslec_flush +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x2feda75b oslec_hpf_tx +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x3227a28e oslec_snapshot +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x7dc9dddd oslec_adaption_mode +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xb2c66001 oslec_create +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xc8b5a524 oslec_free +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xd370f679 oslec_update +EXPORT_SYMBOL_GPL drivers/staging/iio/addac/adt7316 0x17576d10 adt7316_pm_ops +EXPORT_SYMBOL_GPL drivers/staging/nvec/nvec 0x0b00aaad nvec_register_notifier +EXPORT_SYMBOL_GPL drivers/staging/nvec/nvec 0x15f25915 nvec_unregister_notifier +EXPORT_SYMBOL_GPL drivers/staging/nvec/nvec 0x83d2a4b3 nvec_msg_free +EXPORT_SYMBOL_GPL drivers/staging/rts5139/rts5139 0xbd5a0e51 rts5139_usb_ids +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0e81c76d spk_serial_out +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x14f06fe7 spk_serial_in_nowait +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x1ab6500d spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x1ff15c74 spk_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x475e158a synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x6b238be3 spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x7b71d759 spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x86442336 speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8aa359e3 synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e146195 synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x919c21bc spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9a888082 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xa70f8d6d spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xad0962f3 spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb14e51c2 spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb2978dbc speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb48956f8 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc766ae09 synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd1b551a2 spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xdae2142d synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7e810f8 spk_serial_in +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x3526381d usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x365e53ea usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x3842030c usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x58f055a0 sockfd_to_socket +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x5c93fa32 usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x6132a632 usbip_event_add +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x647d0925 usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xa5bfd296 usbip_event_happened +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xcf02b0c8 usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xd02753dc usbip_header_correct_endian +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xdc41676d usbip_recv +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe1ea0586 usbip_dump_header +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe4c3ef34 usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xf3f7eca6 dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xf4c1a382 usbip_start_eh +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x585ebaac n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/uio/uio 0x141c6f8c uio_event_notify +EXPORT_SYMBOL_GPL drivers/uio/uio 0x39105785 uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x567695b7 __uio_register_device +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0xcf7d3e79 usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0xe06dbf13 usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x020bfb89 usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0738fc15 usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0e4480f6 usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x18a91d26 usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x1a9721a7 usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x1f2d2e19 usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x28cbd642 usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x44566339 usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x55311220 usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5e276448 usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x61000d34 usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6627e31a usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6a0ed66e usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6fce4d8f usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7096433c config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7f8c2747 usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x805c67ea usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x80883327 usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x91bb67a8 usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x92275594 usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x94d7075a usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9fb1290e usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xa545fde2 usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xadc3750c usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xbd6a59bc usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xec328451 usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf5c45190 usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfff05ffe usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x1744037e gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x431fbb3b gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x450e1fb7 gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xa064fc2f gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x0a5230df fsg_common_set_nluns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x141fce2a fsg_common_remove_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x1ccb58f7 fsg_common_set_num_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x2d10b6a7 fsg_common_create_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x2f958d18 fsg_common_remove_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x51707c29 fsg_common_run_thread +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x6acb4179 fsg_common_set_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x7e26d4a5 fsg_common_set_sysfs +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x8dc73f98 fsg_common_set_cdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x99023bfc fsg_common_put +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9a0221c7 fsg_common_free_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9dc025a5 fsg_common_free_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xa46e6443 fsg_common_get +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd3ae3b65 fsg_common_create_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd468f882 fsg_common_set_ops +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xe4d1591e fsg_config_from_params +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x496811ce ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0xb0055035 ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x3d80917e usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x5006e365 usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x71f2bb57 usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x95449182 usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xa1dc2f58 usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xa7ad570f usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xa8ba6f05 ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xbdbee88d usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xd033be99 usb_ftdi_elan_edset_output +EXPORT_SYMBOL_GPL drivers/usb/musb/omap2430 0x6fb55e1f omap_musb_mailbox +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-am335x-control 0xf1ca06a0 am335x_get_phy_control +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0xfe69414c isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x0bf983d2 samsung_usbphy_set_isolation_4210 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x7b2ff9de samsung_usbphy_set_type +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x9530a89e samsung_usbphy_get_refclk_freq +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xac38db38 samsung_usbphy_rate_to_clksel_64xx +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xcd29999e samsung_usbphy_parse_dt +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xda49420a samsung_usbphy_rate_to_clksel_4x12 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xdc690574 samsung_usbphy_cfg_sel +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0x233f92af usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x01931a8c usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x0440595b usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x129666ce usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x145b0991 usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2016e647 usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x20729032 usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x24f9f90d usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2777f1e7 usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x29646961 usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x36f1dcfc usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x5823206e usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x5a3702b3 usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x6be24899 usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x6c6dcce5 usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x70ddea25 usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x878e2266 usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x8c47e6a8 usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x98d084ea usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc1e8af39 usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xceb2b4ac usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xdbe921f7 usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x315eb15f wa_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x522cb210 rpipe_clear_feature_stalled +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x7902380c rpipe_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x8902a721 __wa_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xc543b60e wa_process_errored_transfers_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xcb55ad58 rpipe_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xe129c8eb wa_urb_dequeue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xe61390f2 wa_urb_enqueue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xf4654c3f wa_urb_enqueue_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x04a7882f wusbhc_chid_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x0bb6bf5e wusb_cluster_id_get +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x14d542cb wusbhc_mmcie_rm +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x1e2fec85 wusbhc_b_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x1e3f99a5 wusbhc_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x218eb13e wusbhc_giveback_urb +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7f0b7631 wusb_dev_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xa3b7b97c wusbhc_b_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xa7d5eeb4 wusbhc_reset_all +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xaaf54e21 wusbhc_rh_start_port_reset +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xabdc29cf wusbhc_handle_dn +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xb394e957 wusbhc_mmcie_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xb725d128 wusb_cluster_id_put +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xdee50fb0 wusbhc_rh_status_data +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xdfc3c85d __wusb_dev_get_by_usb_dev +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf0838156 wusbhc_rh_control +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf5ab714a wusbhc_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf770a6b4 wusbd +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xfe2e17d7 wusb_et_name +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x10e72b62 i1480_cmd +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x7525d67a i1480_rceb_check +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0xd215eb41 i1480_fw_upload +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x24e1a33c umc_match_pci_id +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x43320801 umc_bus_type +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x46260736 umc_device_create +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x74757511 umc_controller_reset +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x786222f9 umc_device_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xd09f430a __umc_driver_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xf7696efc umc_device_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xfdadf4f9 umc_driver_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x05ffff15 uwb_rc_reset_all +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x073bc3e5 uwb_rc_neh_grok +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x09b52078 uwb_rc_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0b8aad57 uwb_est_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x142e02a6 uwb_pal_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x144b6910 uwb_radio_stop +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x18dce7b7 uwb_rsv_create +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x207a4250 uwb_rc_put +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x208170f7 uwb_pal_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x2774f387 uwb_rc_dev_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x312a2000 uwb_rc_cmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x3daa44dd uwb_rc_get_by_grandpa +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x43fef38f __uwb_rc_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x47e42cb6 uwb_rc_cmd_async +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4d57ae3c uwb_rsv_type_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4e6d1da9 uwb_notifs_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x504990d1 uwb_rc_post_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x542b11eb uwb_notifs_deregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5e4bc088 __uwb_addr_print +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5fd23bff uwb_rc_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x708c19f8 uwb_rsv_accept +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x75408f26 uwb_rc_ie_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7dcfcd23 uwb_ie_next +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8721f2dd uwb_est_find_size +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8d9d9adb uwb_pal_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8df27fa4 uwb_rc_vcmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x97e5eefa uwb_rc_pre_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x98413234 uwb_rsv_state_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xac614f1d uwb_rsv_establish +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb9e0939e uwb_rsv_terminate +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc1d4a932 uwb_dev_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xcc21855e uwb_rsv_modify +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xcca9d572 uwb_rc_mac_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd35fef15 uwb_rc_ie_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe1716f06 uwb_est_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe3aba0bb uwb_radio_start +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe91aa962 uwb_rc_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xee4448c1 uwb_rc_alloc +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf08aa14c uwb_dev_for_each +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf0a96638 uwb_rsv_get_usable_mas +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf577c983 uwb_rc_get_by_dev +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf6e25a5e uwb_rsv_destroy +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xfd1b07ef uwb_rc_neh_error +EXPORT_SYMBOL_GPL drivers/uwb/whci 0x6ebeaea2 whci_wait_for +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x04c49fcc vfio_register_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x1b970e37 vfio_device_get_from_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x4afc273b vfio_add_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x67d2de98 vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x962dd3c2 vfio_group_get_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xf45e5b42 vfio_del_group_dev +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0ba38bc5 vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x13eb4fbc vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x253eb98f vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x269f7a09 vhost_dev_reset_owner_prepare +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2c41a722 vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x32bcc5e8 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x401e5c87 vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x42c225df vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x47c759f7 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x49642ad8 vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4fc15768 vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5835fb80 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5a008f5f vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5eaf91ba vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6555799b vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6b791351 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x75c687c6 vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7c1d2df2 vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7f96f1ae vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9dc0cff3 vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9ecbaa98 vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa48c648c vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa78c9f38 vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa978e6f8 vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xabdd18f8 vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xca70d118 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xcacba7f9 vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf1cc80af vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf323b006 vhost_init_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf75112fe vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xfea9cf2f vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x11927354 auok190x_send_cmdargs_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x18058c61 auok190x_send_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x3f566bef auok190x_common_probe +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x5a8d2bd3 auok190x_send_command +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x8528b109 auok190x_send_cmdargs_pixels +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x919c2114 auok190x_read_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x9873e1a8 auok190x_send_cmdargs_pixels_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xbb452a9d auok190x_send_command_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xe886a953 auok190x_common_remove +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xf37aa686 auok190x_pm +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x234ca0f6 ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x362516b6 ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x45c381fa ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x674fde9c ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x962a25d1 ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x9e4da31c ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xd626b2ba ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/fb_ddc 0xf3fa9e15 fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0x21418e8c fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0xafb98260 fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0xb911243a sis_malloc_new +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0xf28a1797 sis_free_new +EXPORT_SYMBOL_GPL drivers/w1/wire 0x20b3703d w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x2cfd5512 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x3bd188ae w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0x45bf8b49 w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x5223b451 w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x78380850 w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0x7c2f2afb w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x9ca5c8ab w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xb5e4a85a w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xb76c60ec w1_next_pullup +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x3bccdf8c dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x9321df95 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc6dc8c2f dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xdc583c08 dlm_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xeb214110 dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xef68cc34 dlm_posix_get +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x17ce645d locks_end_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x3492a0b6 nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x3ee00871 lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x4cae2821 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x5055a7ac locks_start_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x86bd21ef nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x8f5d0578 nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xa55f3d2b locks_in_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xea2ffea7 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xfd13ceb1 nlmsvc_ops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x00198b31 nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x05cba828 nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x05e3530b nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x06894ffd nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x06d2b184 nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x06e159ca nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x07187421 nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0a8a8699 nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0b9130e8 nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0bdf8274 nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0d87c67b nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0e85924b nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x11e83963 nfs_pageio_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1d11a495 nfs_fs_mount_common +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1ef9155d nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2816e43f nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x284b4b22 nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2a6e52cf nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2c704c87 nfs_file_splice_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2d678dad nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2efda90a nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3137accf nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x315ad7f5 nfs_fill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x322c8222 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x370e1a30 nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3711f7b4 nfs_setlease +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3796321e nfs_pageio_add_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39a9b6d8 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ca31f35 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3d1a6f1a nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3e184904 nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3fe11f2b nfs_generic_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42dcda63 register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4a6e871f nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4b7ba1bd nfs_set_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4bd815ef nfs_initiate_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4df03702 nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x523f075f nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x529813df nfs_clone_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5352dbec nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x544f7981 nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x568039e7 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x59004341 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5b0865a2 nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e1d863a nfs_sockaddr_match_ipaddr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5f0618c0 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x61231021 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x63a26266 nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x64c4dc04 nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x66699455 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x67dad2f0 nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x694e4391 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6ff1e0d5 nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x730e1467 nfs_file_splice_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x73fcbe47 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7576afd1 nfs_pageio_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7b207ba6 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7d0dc22b nfs_generic_pagein +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7e1c790b nfs_readdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x80e639f2 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x81768341 nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x81a08427 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x82a7ca2a nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x85f8fbb7 nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x86b53403 nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x871ff07c nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x88a38be0 nfs_destroy_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89bc5a64 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8f2b822d nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8fb81747 nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x947e193b nfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x949c9eda nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x99d4a003 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9b2cc5a6 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9b71bce9 nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9c66878b nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9ca3024f nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9ecf8f1a nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa39a70da nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa46ff2d9 nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa4e96d8e nfs_try_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8d2d1ce nfs_callback_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8f0d4f6 nfs_file_fsync_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaaa14361 nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xabc5c733 nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xae1cc53e nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb2ade901 nfs_file_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb421bd4b nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb484fe69 nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb606e716 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb9e66488 nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xba1a0211 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbe94553d nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc038d4b6 nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc324e4ad nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4ff1e9f nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5ef47d5 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc890263f nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc8f23031 nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc9235d98 nfs_remount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc953d400 nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc986c344 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc9d526e9 nfs_readhdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc9dfea0e alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcaa9bade nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcbe83017 nfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcc52d450 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xce1e6242 unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xce3bc0aa nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcf8c8192 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd2513081 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd606e155 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd7485202 nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd8098e02 nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd82d1833 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd9c153b6 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xda323c3f nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xda778064 nfs_writehdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdd56ebe8 nfs_initiate_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe611dedc nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe6b47982 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe73021a1 nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe7b3b440 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe7fa4878 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe8fc03f3 nfs_fs_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeac5693b nfs_put_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeb7c1b71 nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeb9a488d nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xebdd6c45 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xec109a4a nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeca0c0cc nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xee2817fb nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf2a1bca8 nfs_writedata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf4d4e93e nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfac7f5ea nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb7ee006 nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfdc43d12 nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x04b00923 nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0e746db7 nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x11bda27c __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x170f3ed6 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1d032151 pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1d3d18e3 pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x23567bdf nfs41_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x325ce4b5 pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x41bd2b94 nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5369d3b2 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x54e72f18 pnfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x59abc185 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x607dedf6 pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x62db12f0 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x665fa50e __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x692ef03e nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6e97800a nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x78c89f13 nfs4_proc_getdevicelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7c536234 pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8859e4c0 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x97736fa3 pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x97e36bbc nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9ca7766a pnfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa5c35fc9 nfs4_insert_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa7bd5437 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xaa1ff550 nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xad537f13 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb5820e70 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb73994a7 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb7768a5e pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc38cca25 nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc603ce04 nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc6a330f7 pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd1107eec _pnfs_return_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd27e37ef nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd551d55d nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdb813e84 __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xeb2b2749 pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xefdd3972 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf7cdc967 pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf94a487f pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfa02e841 nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfe6f66db pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x9b73a50d nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xdab8373d nfsacl_encode +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1cb231d0 mlog_not_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1d747ce3 o2hb_check_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x2e5e240e o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36418553 o2net_send_message +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x38ae0e6a o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4b41e450 o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4ca6ef09 o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x687f6251 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x69c49301 o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x872dce07 o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x9d2bd191 o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa82a8645 o2nm_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa9f5379a o2net_send_message_vec +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xae808bac o2net_register_handler +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xbaeb4700 o2hb_check_node_heartbeating_from_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc3679d7b o2hb_get_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd60f2c6c o2hb_check_local_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf1a5611d o2net_unregister_handler_list +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x140eb92f dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x1ff4f802 dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x40ebfc9d dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x419e614a dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xc80acf18 dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd7ba575e dlm_errmsg +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd8fa57a6 dlm_unregister_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xf0eaadf6 dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xfb86b96f dlm_errname +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x025e2d69 ocfs2_cluster_connect_agnostic +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x0562c415 ocfs2_cluster_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x16b2e575 ocfs2_dlm_unlock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x407eb74a ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5469ce31 ocfs2_dlm_lvb_valid +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x6216d6e7 ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x7083dbd5 ocfs2_dlm_dump_lksb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x89502fe7 ocfs2_cluster_connect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x91637203 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xb4bd060c ocfs2_dlm_lock_status +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbbc4ef97 ocfs2_stack_supports_plocks +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xdc823ea4 ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe2bd47db ocfs2_dlm_lock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe40cffce ocfs2_stack_glue_set_max_proto_version +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe417d940 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x50662359 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0xecbeff11 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x021957e1 raid6_datap_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x05513b71 raid6_call +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x0f8a2742 raid6_2data_recov +EXPORT_SYMBOL_GPL net/802/garp 0x3d5e475d garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x5d61a701 garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0x8399e298 garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0x968bf291 garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0xaac00358 garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0xd98c0cdd garp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x1750b96b mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x26967857 mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x50fe74d1 mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x7e18781a mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0x84920bfd mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0xd8775a48 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/stp 0x21279d4d stp_proto_unregister +EXPORT_SYMBOL_GPL net/802/stp 0xa26161e8 stp_proto_register +EXPORT_SYMBOL_GPL net/9p/9pnet 0x15e6d283 p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/9p/9pnet 0x1c1c3df7 p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/atm/atm 0xb09faf79 register_atmdevice_notifier +EXPORT_SYMBOL_GPL net/atm/atm 0xcfb6a3da unregister_atmdevice_notifier +EXPORT_SYMBOL_GPL net/ax25/ax25 0x000eefba ax25_register_pid +EXPORT_SYMBOL_GPL net/ax25/ax25 0xac93ae05 ax25_bcast +EXPORT_SYMBOL_GPL net/ax25/ax25 0xaeb7451e ax25_defaddr +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xa05310a4 bt_debugfs +EXPORT_SYMBOL_GPL net/dccp/dccp 0x065f3d4b dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0x09a123b7 dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0x140c73ee dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x14113a63 dccp_insert_option_elapsed_time +EXPORT_SYMBOL_GPL net/dccp/dccp 0x16073699 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1d99d49a dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1e7e2463 dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2e11e4e2 dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x388e7748 dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0x40578b54 dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x41b6127f dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0x44da4885 dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4afc6e7a dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4ec35231 dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x64e1deeb dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6b9f11ae dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7685c67f dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7faec1a4 dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x87c4a54b dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0x89356a32 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8c9b2795 dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x94931ed8 dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9880d425 dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9ac664ed dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9e698d9d dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa62d4fac dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa90fee21 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0xae59a7ec dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0xae78c9c3 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xaf5a9fa3 dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb8af6829 dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc9cb7579 dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcbaa2e05 dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdcf7bf46 dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe4b543fc inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0xeb4b8503 dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf3017e21 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0xff32082a dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x00e19822 dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x29964a9b dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x332d66ca dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x54f1131d dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x5b53a4ed dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xc8f0e672 dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x23fcb3da unregister_switch_driver +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x467f8c2e register_switch_driver +EXPORT_SYMBOL_GPL net/ipv4/gre 0x310feed8 gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0x9b9323f2 gre_cisco_register +EXPORT_SYMBOL_GPL net/ipv4/gre 0x9bef4948 gre_build_header +EXPORT_SYMBOL_GPL net/ipv4/gre 0xcc1e8401 gre_cisco_unregister +EXPORT_SYMBOL_GPL net/ipv4/gre 0xd51b7c5a gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x17662ec4 inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x5af35ce9 inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x6fc4787a inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x9e601360 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xaa51c9b3 inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xf6b96c08 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x1acc4d83 ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x1c9c8cb3 ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x21fbea5b ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x443ba600 ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x49e2486f ip_tunnel_delete_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x4b4e83e1 ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x58ff131f ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x5f8fde8c ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa07061f3 ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa7c379ed ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xc17aacf0 ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xca174c68 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xcf95cc89 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xd2641db3 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x6534ca3b arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0xb866c6ca ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_conntrack_ipv4 0x6d40a921 need_ipv4_conntrack +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x6b6c3d10 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_ipv4 0x67041981 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_proto_gre 0x636b12c8 nf_nat_need_gre +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x7bec8612 tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x894807b7 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xca117459 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xdd745937 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xfafe635a tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0xcde56027 xfrm4_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0xe7d9951e xfrm4_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x546c4a43 ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x6964f573 ip6_tnl_dst_store +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x966a562a ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x9ed7b794 ip6_tnl_dst_reset +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xf6bcb802 ip6_tnl_dst_check +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0x7f8b612d ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x6eb85693 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_nat_ipv6 0x376e8737 nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0x8aee688b xfrm6_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0xebb0a9c2 xfrm6_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x1bf2c1a3 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x45c7c5b8 l2tp_tunnel_closeall +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x55854da5 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x745cba7e l2tp_tunnel_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7482e119 l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x789a6bb0 l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x808e3798 l2tp_tunnel_sock_put +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x82be6e73 l2tp_session_find_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x8bc30d4c l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x9cb7bf06 l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa821c8fd l2tp_session_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa869a1b9 l2tp_tunnel_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xae938e5c l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xbdf33049 l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xcca274d2 l2tp_tunnel_sock_lookup +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe15a0525 l2tp_session_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xff858e5e l2tp_session_queue_purge +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x3eee87b7 l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x03708528 ieee80211_iterate_active_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x2f5fd075 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3663a36d ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4bdd719e ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4bf42798 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5cb45357 ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5d38f601 ieee80211_set_key_tx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x7513a8a2 ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x7c67bdc0 ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x80e79200 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa80ab1be ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xadc736e8 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xbf1dbd14 ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf6f5c3a7 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xff9ebc96 ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x010a63e6 ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3384ffa6 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3590e7e6 ip_set_nfnl_get +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x5f0eb189 ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6344eaf6 ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6721d002 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x80ede973 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x8aeee14a ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x924b7877 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9884e7cd ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa2d623f3 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa2feb2ce ip_set_get_ip_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xaabe6907 ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xb4ea105d ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xb59e5797 ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xba7b27eb ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc40534cf ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xcb1d5744 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xef13ebbe ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xc6a33737 ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xc6fb5134 ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xce45b248 unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xf204b6b0 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01f84db5 nf_conntrack_set_hashsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x045072cd nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0f78f257 nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1034df49 nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x156f1677 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x17ec5888 nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x186a5b34 __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1a5eed7e nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x21094d2d nf_ct_l3proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x267675c9 nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289c3714 nf_ct_alloc_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2b9b7548 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2c2e5cd2 nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2e542824 __nf_conntrack_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3028669d nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3067b1cc __nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x37386cac nf_conntrack_hash_rnd +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3b0090be nf_connlabel_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3c31b97e nf_ct_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3cc2587a nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3f5b1415 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x418c6648 nf_connlabel_match +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x43733fc0 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4481395e __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4502ca22 nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x455024bc nf_ct_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x49357412 nfnetlink_parse_nat_setup_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4fed4177 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x514724fd nf_ct_l4proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5743175a nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x57b3712b nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5a3f3dfc nf_conntrack_l3proto_generic +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5d44b6cd nf_ct_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5ebd7cab nf_ct_l4proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5fe4d53f nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x617cba52 nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62813e5c nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x68b6a0c5 nf_ct_l3proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6afb847a nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6e224a7a need_conntrack +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x72487396 nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x78f9b710 nf_ct_l3proto_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7ad43048 nf_nat_seq_adjust_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x823ee03d nf_ct_l3protos +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x82c9e0a6 seq_print_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x84523682 nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x863f5c06 nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x886cfc12 nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8f60b1a1 nf_ct_iterate_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x90ff6c9f nf_ct_invert_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x99bf1782 nf_ct_l3proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9ae6ec62 nf_conntrack_l4proto_udp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9c94e589 nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9db00609 nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa04e287b nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa382be68 nf_conntrack_flush_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa8c89abb nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa8d08ee0 nf_conntrack_l4proto_udp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab3d1f95 nf_ct_untracked_status_or +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad1bb027 nf_ct_free_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad9eaee3 nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb23f3373 nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb3dbdb81 nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb602c57e nf_ct_l3proto_module_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbeddc5a1 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc1dbb919 nf_ct_get_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc46470ed nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc6194f61 __nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc7024d82 nf_ct_l3proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc78037f5 nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc943840a nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc9bff2fa nf_conntrack_l4proto_tcp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcf8aacde nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdb77c9f0 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdd69f2a7 nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe04e181f nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe29c2dd7 nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe4b85846 nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe651521b nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeb188123 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf2b2435b nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf544c112 nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf547e439 nf_ct_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf7055353 nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf7942b2d nf_ct_l4proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf846f061 nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfaa6fefc __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfb899078 nf_conntrack_l4proto_tcp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfcf0790d nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xff3dcae4 nf_ct_l4proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x4de9c17e nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0x39817669 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0x00483731 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x06ec4c5e nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x12b2d871 nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x7018e937 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x8934b61a set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x8e33f0e9 set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x92f81061 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x997c070d nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x9b7ce281 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xd44544a6 nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xe21d82a2 set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0x5c4d834e nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x44efb9b2 nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x6d0d4b4f nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xe9977428 nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xeb24f0bf nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x24abe8a6 nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x2a293dc0 nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x0d0c38da ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x2ca3afbe ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x42c7cc65 ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xb68900b1 ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xcbc1d315 nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xe869b9dc ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xf6284d47 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0x60afcff1 nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0xd9a37181 nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x00dd737c nf_nat_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x094d9924 __nf_nat_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0d9bae4b nf_nat_l4proto_nlattr_to_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x131f636c nf_nat_l4proto_in_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3d6c1ecf nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x5349f35f nf_nat_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x94aa5362 nf_nat_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xaf9f5c73 nf_nat_l4proto_unique_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xc4a01b39 nf_nat_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xfcc21e9b nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x11a006b5 synproxy_check_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x8841d39b synproxy_build_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x90298227 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x950dd860 synproxy_tstamp_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xab4c12c6 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb42e336a synproxy_options_size +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xef7db50c synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x024c6b92 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0508ea22 nft_data_uninit +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0e627131 nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0fda3c99 nft_validate_output_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x18ba1d59 nft_register_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x34695422 nft_validate_data_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3d49dab7 nft_validate_input_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7635ee7a nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7e6e6ed0 nft_unregister_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x98b5bded nft_register_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa050a6f7 nft_do_chain_pktinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc38a96e9 nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd8b7e430 nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe0a41837 nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf6eb6ce3 nft_unregister_set +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x174639a1 nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x1bb29f52 nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x1f007c65 nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x3490ddf8 nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x3499a64e nfnetlink_alloc_skb +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x62dc261b nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xddb622d3 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x21f6bba6 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x9181ba10 nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_log 0x490348c6 nfulnl_log_packet +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0f6c3a9e xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x1ba70bc9 xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x2052f073 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x39fc367a xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x400af99d xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x40728a63 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x54c6740d xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x653247f2 xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x6b448e9e xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x70b7cfd0 xt_hook_link +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x807d2b2c xt_recseq +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x941cec5f xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa65b909b xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa70d7796 xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbf8afafc xt_hook_unlink +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x57909dc1 xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0xd0f26ea3 xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x67a73eea nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0xa7f3a4fe nci_spi_send +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0xe76c8f6c nci_spi_read +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x02d51ea9 rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0x058ff7ba rds_send_get_message +EXPORT_SYMBOL_GPL net/rds/rds 0x21535163 rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0x2351671b rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x27d1d06a rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0x2c5c5514 rds_message_add_rdma_dest_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3101936e rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3fbfc0c0 rds_page_copy_user +EXPORT_SYMBOL_GPL net/rds/rds 0x4622b59b rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x50cbe7b3 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x536dc693 rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0x6172602d rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0x66c33c66 rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0x6ee135e5 rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0x73aac73d rds_message_populate_header +EXPORT_SYMBOL_GPL net/rds/rds 0x80c43d37 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x96c54644 rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0x96fafe85 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xa3491054 rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0xa9e38392 rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xb271ea2f rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0xc1533c9e rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc642cc2c rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0xcb826093 rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0xd732ddc0 rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0xd9bb8e46 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0xda5f73c3 rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xef22d9d3 rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0xf7e553f9 rds_message_addref +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0xb73aa0c7 rxrpc_unregister_security +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0xcaac2466 rxrpc_register_security +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x00c52ef5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x54767958 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x8d1a827e svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xb5dea7ef g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xdbd262f6 gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xeb8a32c0 gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xf8b2ff6e g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x01f8a0aa svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x02ff3406 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0347ddc1 svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x045834e9 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x049d143e svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05d20281 svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x07d7bbb1 rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x07fc3604 svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b281532 rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0bf99130 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c259967 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0cd6a500 sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0e5e277d svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0eec4657 rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f668ba9 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x10a669a1 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x11b0103b xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x12c586c5 rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x13abe4cd rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x13b4240e svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1418ecdd svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x14ab8002 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x15b6f425 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x164857b8 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1765d05e xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x190f80b2 xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1a22f19a xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1b0fee97 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1c2933fa rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1cb447f3 rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1fa06efd svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2008c1b3 xdr_buf_read_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x25c4fc04 rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x260701a6 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2750ed01 rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x291f3a14 rpcauth_key_timeout_notify +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2ee0d6fb sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eec63c9 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f2bb78f rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f8ebbe0 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x301d6088 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x314aa910 xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a244f1 xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x35d9dbe3 rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36af0f49 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3755b5ce svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x37fed039 _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x39e62c40 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x445a75fd svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x45609772 rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x46897f6d xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4ca2cbee xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d3d7c07 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e3ccc31 rpc_lookup_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e57450d xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5028916b xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x50ea0d4f cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x51b7af6e rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x576358be xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x58c5b15b cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a513c1a rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5b947e5a rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5b9c74f8 xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5d022475 bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60940de8 xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6140f8b3 rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x618e9466 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6234f29b rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x63903bed svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6413a77d xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6497d7bc xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6a488c55 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6acc140c cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6bf75d54 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6e70bcab rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6ecd37b5 rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6f16c142 rpcauth_generic_bind_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7248338b svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x74780930 sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x74b6e8a7 xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x74c55736 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x74cd5fd1 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x784d02e4 xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7dae0eac rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7ede0dab xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f9a4a09 svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80951b28 rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80a8fb9a rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8134fba6 svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8161d70f rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x81dd83e9 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8277f19a rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x836a1b0f write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x83923dc9 rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8492e0e0 __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8506ae9b rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x863831ef rpc_print_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x863e77f7 rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x87ad5d60 rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8973eefd xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x897a7e09 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8b241206 svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8b353213 auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8b3bc73f rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8bc6fc45 xdr_partial_copy_from_skb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x903f674d rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x90ce9ac8 rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x92df4f0d svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x94507bcc rpc_rmdir +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9619c15f rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x974dcb56 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98076566 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98b75d64 rpcauth_list_flavors +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x999ca585 svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x99b14442 svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d2beed3 sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d58ac1d rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9daab1b6 rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9f176d90 rpc_lookup_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9f65e7b6 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa0dde311 rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa0e20256 xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa2388caf rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa26df33c rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa30749c5 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa956a31b cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa5af175 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xacda3359 xprt_lock_and_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb142f8af svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb2719916 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb3b8e1de auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb8dd1547 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb8e2b0c2 xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xba5737bf rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb08571d auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb220a17 rpc_get_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbd9438fd svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbe4494e8 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbfc2e0c7 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc17f285d rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc1db3884 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3880471 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3c7cd19 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc496ccee xprt_set_retrans_timeout_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc81c4439 unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8f7c78f svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc958440e svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xca2af4a2 svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcaf1e046 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd0447258 svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd0995eee xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd18b6d1c svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd39c8b18 rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd4dcfee5 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd5535ad5 svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd625b698 sunrpc_cache_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd98d6fe8 svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd9e0f9f7 rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd9f4062e sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdd6a57d9 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xddccf023 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xde1ff01b rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe05f81cc cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe10ef4d1 xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1ac2bb8 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe24ad3dd xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe4272a22 svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe9acb3ab rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeb299664 xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xebbac625 svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xec0cacea rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xec515ca3 read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xecc4d911 rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xed23968d rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedff7068 xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf13b9852 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf1f8b049 xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf280217e rpcauth_cred_key_to_expire +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf4194364 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf4dfaeb0 xs_swapper +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf58f26cc rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf6be661e xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf7d1f067 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf7ed8f67 xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf823c330 svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf983f1f6 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9d1164c rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9f0a0d7 rpc_task_reset_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfac654c1 xdr_skb_read_bits +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfafa54f1 rpc_protocol +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfd49cc6a rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfd4ffdad xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfd98cdaf xprt_set_retrans_timeout_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfeec8811 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x071045c5 vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0c79d5ef vm_sockets_get_local_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x15c0c57c vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x1da5c67c __vsock_create +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x3a8e1063 vsock_core_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x5fce3944 vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x6827f75b vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x734e58a1 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x74e91915 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7f730c80 vsock_core_exit +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x85590de1 vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x8d078ee4 vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x95348c6f vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbe0254a0 vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc800029c vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe3ebbe85 vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xed4ee72a vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf593c40a vsock_pending_work +EXPORT_SYMBOL_GPL net/wimax/wimax 0x0b4b3fab wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0x231e63df wimax_msg_send +EXPORT_SYMBOL_GPL net/wimax/wimax 0x29a29d09 wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x2fa004df wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0x4c03b7cb wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0x612112a7 wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x772cb373 wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0x7dded9f8 wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0x8b378049 wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xab3a73d3 wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xc185a3f5 wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0xd55d9ec9 wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0xe4bb25ff wimax_msg_data +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x08f6b45d cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x0a1ebc72 cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x0e47349d cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x1683c3dd cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x3324d576 cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x5d350008 cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x7abd7d3f cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xb6af16a8 cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xc60b231d cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xdb9bc327 cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xf577b98c cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x00778770 xfrm_ealg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x056bb269 xfrm_ealg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0a575945 xfrm_count_pfkey_auth_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0b9e5852 xfrm_aead_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x28e23139 xfrm_probe_algs +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x74e1a843 xfrm_aalg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7a8ca627 xfrm_count_pfkey_enc_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7c30b8c7 xfrm_calg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x92dbc6c1 xfrm_aalg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xbc8b0f41 xfrm_calg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xce7a55c1 xfrm_ealg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xe122af95 xfrm_aalg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x8a8b2b43 ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xa49c78bf ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xde917aae ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xe79c8221 ipcomp_destroy +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x0025bd6f snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x2479dfe5 snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x51427c5d snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x738f641e snd_ak4113_create +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xb3d39fc7 snd_ak4113_build +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xf9be8172 snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0212e646 snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x04a354b3 snd_hda_jack_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x07c271cb snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x09555dbf snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0e1ac6ad snd_hda_resume +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0f0ad8a0 snd_hda_ch_mode_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0f1c332d snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x12e1cb65 snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1538e7d5 snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1851fdb5 snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1905d196 _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1a22776b snd_hda_jack_detect_state +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1a906660 snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1a9b57e5 snd_hda_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1e1ca2aa snd_hda_query_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1f3346c8 snd_hda_codec_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x20c059f3 snd_hda_bind_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x22fcfc23 snd_hda_codec_amp_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2555fb25 snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x25c7e4d1 snd_hda_bus_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x25d4da89 snd_hda_get_sub_nodes +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x26578fac snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x29963549 snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2c3765de snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2c78db40 snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2ea211d4 snd_hda_get_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x33dbb73b snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x36706d44 snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x375cacd5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x37cf8860 snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x386cef51 snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3960acb5 snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3c675f62 snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3df01f65 snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x403630da snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x42d6faeb snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x432f1e70 snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x49afcf7a snd_hda_is_supported_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x49b40353 snd_hda_add_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4a081c41 snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4a24d7f4 snd_hda_parse_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4b1e01ed snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4c752988 snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4dab1f60 snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4e273b33 snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4f727d00 snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5073b076 snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x523a3cfb snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x524845c8 snd_hda_gen_spec_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x52629b3c snd_hda_codec_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x526a1000 snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5440e84e snd_hda_ch_mode_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x54dde24e snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x565d7182 snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x575b6771 snd_hda_check_board_codec_sid_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x583f9adf snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x590a00ce snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x590e4525 snd_hda_codec_update_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5a063993 snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5a91131d __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5ab119a6 snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5c5e9bc5 snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5cdd2278 snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6268fa05 snd_hda_override_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x62b9485a snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x653f85f6 snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x684c312d snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6a3d8355 snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x72a8e34e snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x75443124 snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7aa5cbff snd_hda_codec_flush_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7b5064fe snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7defe55f snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7eb1a638 snd_hda_codec_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7fe961fe snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x83573a09 snd_hda_queue_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x83f58218 hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x881ddee5 snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8beb68b0 snd_hda_sequence_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8c584653 snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8e4c6826 snd_hda_calc_stream_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8f3f0ae1 snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9060e456 snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9373e685 snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x96150362 snd_hda_mixer_bind_ctls_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x96a82736 snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9811f9ec snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a4850da snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a84640b snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9adca23c snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9b41da1f snd_hda_mixer_bind_ctls_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9e273ff8 snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9e9cb971 snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9ffcd47a snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa032745f snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa2216cdd snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa2827d76 snd_hda_get_jack_location +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa2f9279b snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa373ff85 snd_hda_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa5c2829f snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa69984fa snd_hda_jack_tbl_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa7a0a68c snd_hda_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa8570001 snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaae96cfd snd_hda_query_supported_pcm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xabaae7b8 snd_hda_jack_tbl_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb009a674 snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb100d545 snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb33a4014 snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb412ee5e snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb4953e61 snd_hda_delete_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb4dfae49 snd_hda_bind_vol +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb7c0ef93 snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb944acdc snd_hda_codec_resume_amp +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbcb0b0b1 snd_hda_mixer_bind_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbf09095f snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc30bfe3a snd_hda_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc30ede0d snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc652fd69 snd_hda_get_jack_connectivity +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc831c496 snd_hda_bus_reboot_notify +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xca58aa94 snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcade820e snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcb301b6e snd_hda_get_jack_type +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xccb79577 query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xccf67b1d is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcd7f2a8c snd_hda_suspend +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcdded81e snd_hda_mixer_bind_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xce0a2405 snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcedbd151 snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd12b4746 snd_hda_mixer_bind_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd13a8699 snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd33ac8e0 snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd44d8e9c snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd4916fc7 snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdb9e50e6 snd_hda_parse_generic_codec +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe08bcfaa snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe1431c79 snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe188f312 snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe1df6576 snd_hda_ch_mode_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe3c665a8 snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe3c96edf __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe540a96f snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe66aa22d snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe77b6bcd snd_hda_mixer_bind_ctls_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xea94e5e6 snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xec7d9980 snd_hda_codec_resume_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xedfc7714 snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xee92bcd5 snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xef23f294 snd_hda_check_board_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xef495757 snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf147e10e snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf657a9b1 snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf827172e snd_hda_jack_detect_enable_callback +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfa0f1bd4 snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfb941ab4 snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfd63fd49 snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xff6776b6 snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x27b6127c atmel_pcm_free +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0xda0dd992 atmel_pcm_new +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0xee43caff atmel_pcm_mmap +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8903 0x6197b669 wm8903_mic_detect +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-wm8962 0x25768405 wm8962_mic_detect +EXPORT_SYMBOL_GPL sound/soc/davinci/snd-soc-davinci 0x7a3863ee davinci_soc_platform_register +EXPORT_SYMBOL_GPL sound/soc/davinci/snd-soc-davinci 0xd3a25c39 davinci_soc_platform_unregister +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra-pcm 0xd0616c9b tegra_pcm_platform_register +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra-pcm 0xe7a39ebc tegra_pcm_platform_unregister +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra-utils 0x2646aafd tegra_asoc_utils_fini +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra-utils 0x6ca07d27 tegra_asoc_utils_set_rate +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra-utils 0x7a958fd3 tegra_asoc_utils_init +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra-utils 0x877e7fdc tegra_asoc_utils_set_ac97_rate +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra20-das 0x0d54c9b9 tegra20_das_connect_dap_to_dac +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra20-das 0xb52cfca4 tegra20_das_connect_dac_to_dap +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra20-das 0xbced7431 tegra20_das_connect_dap_to_dap +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0x33e6f259 tegra30_ahub_allocate_tx_fifo +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0x55a40206 tegra30_ahub_disable_rx_fifo +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0x5cf6f91f tegra30_ahub_allocate_rx_fifo +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0x5d7237ff tegra30_ahub_set_cif +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0x6fe20143 tegra30_ahub_set_rx_cif_source +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0xb419329b tegra30_ahub_disable_tx_fifo +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0xb4a9367d tegra30_ahub_enable_tx_fifo +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0xb81bca9d tegra30_ahub_free_rx_fifo +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0xc78c7125 tegra30_ahub_free_tx_fifo +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0xccb67e55 tegra124_ahub_set_cif +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0xccc98372 tegra30_ahub_enable_rx_fifo +EXPORT_SYMBOL_GPL sound/soc/tegra/snd-soc-tegra30-ahub 0xe549513a tegra30_ahub_unset_rx_cif_source +EXPORT_SYMBOL_GPL vmlinux 0x00000000 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x00000000 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x00000000 kern_mount_data +EXPORT_SYMBOL_GPL vmlinux 0x00000000 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x00000000 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x0016d423 __mtd_next_device +EXPORT_SYMBOL_GPL vmlinux 0x001a20f3 skcipher_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0x0034b7de sdhci_add_host +EXPORT_SYMBOL_GPL vmlinux 0x00413195 ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x00632780 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x0070fd38 dev_pm_opp_find_freq_exact +EXPORT_SYMBOL_GPL vmlinux 0x007b892c vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0x007e8ce8 dev_pm_opp_free_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0x00848123 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0x009304b6 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x00a78de5 usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0x00b84608 iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0x00c4dc87 timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x00d48f33 omap_usb2_set_comparator +EXPORT_SYMBOL_GPL vmlinux 0x00ebcb5d ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0x01010c6d klist_add_before +EXPORT_SYMBOL_GPL vmlinux 0x01036576 dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x01108ce1 rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x011cf028 regulator_suspend_finish +EXPORT_SYMBOL_GPL vmlinux 0x012f236e dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x0148adb6 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x0158e005 pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x016a1f69 omap_dm_timer_set_load_start +EXPORT_SYMBOL_GPL vmlinux 0x018edcce cpdma_ctlr_dump +EXPORT_SYMBOL_GPL vmlinux 0x0190d09e kobj_completion_del_and_wait +EXPORT_SYMBOL_GPL vmlinux 0x0196a5bb phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0x01a3cda8 spi_master_resume +EXPORT_SYMBOL_GPL vmlinux 0x01b2fa74 tpm_show_caps +EXPORT_SYMBOL_GPL vmlinux 0x01baf932 regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0x01c6cb0c cpu_cluster_pm_enter +EXPORT_SYMBOL_GPL vmlinux 0x01dd14bb snd_dmaengine_pcm_pointer +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01fb6863 pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x01fc592b usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x022fbc35 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x023ab913 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x024e4b1d __get_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x025e869e udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x02cbcae2 snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL vmlinux 0x02cdc43d find_symbol +EXPORT_SYMBOL_GPL vmlinux 0x02ee51ca crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x02f8951f pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x03731518 mtd_read +EXPORT_SYMBOL_GPL vmlinux 0x0382f440 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0x03ab14f9 pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0x03ab258c shash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0x03adecbd __inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0x03cae905 usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0x03e3686c ata_timing_cycle2mode +EXPORT_SYMBOL_GPL vmlinux 0x03f6316c vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x0401c08d snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL vmlinux 0x0402b504 __percpu_ida_init +EXPORT_SYMBOL_GPL vmlinux 0x04309aff device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x043c9806 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0x04486e88 rcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x045b452f of_clk_get_parent_count +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x046c7ea9 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0x0472caae of_pci_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x048b5f8d twl4030_audio_get_mclk +EXPORT_SYMBOL_GPL vmlinux 0x049d951c cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0x04a57f99 irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04d55774 usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL vmlinux 0x04f22527 da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0x0542acfd crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x0551f0ce tick_nohz_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x05584899 vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x056e1f3e ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0x0574068b cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0x05863b89 phy_put +EXPORT_SYMBOL_GPL vmlinux 0x0587a0b0 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x05d629b3 reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0600f4dd snd_soc_lookup_platform +EXPORT_SYMBOL_GPL vmlinux 0x06024496 ahci_check_ready +EXPORT_SYMBOL_GPL vmlinux 0x06212926 sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x063b4f90 irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x064236f1 seq_open_net +EXPORT_SYMBOL_GPL vmlinux 0x06438115 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x06a8d0f1 dm_requeue_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x06c46885 sdhci_disable_irq_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x06c6ad29 sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x06d549e6 pinctrl_free_gpio +EXPORT_SYMBOL_GPL vmlinux 0x06dceffb snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL vmlinux 0x06e19ef8 usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0x07455fa9 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x0749c409 ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x0751b5db sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0x07538619 inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x075b4b01 blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x0762403c edac_put_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x0788cbad inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x07ac8270 snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL vmlinux 0x07b0ec91 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07cd487a unregister_mtd_user +EXPORT_SYMBOL_GPL vmlinux 0x07d4cb32 kill_pid_info_as_cred +EXPORT_SYMBOL_GPL vmlinux 0x07ed48c3 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x0815208d sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0x08284714 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x082b61cd blkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0x08645f33 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0x0886d2f0 rtc_irq_set_freq +EXPORT_SYMBOL_GPL vmlinux 0x0899f091 hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x089d6d80 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x0904aa5b snd_soc_register_codec +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x09437748 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x09469482 kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x0952af60 fb_videomode_from_videomode +EXPORT_SYMBOL_GPL vmlinux 0x095f68c4 pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x09819a30 usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x09949469 devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0x09b5a8ca flush_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL vmlinux 0x0a3c118e pci_pri_stopped +EXPORT_SYMBOL_GPL vmlinux 0x0a3c1343 hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x0a487347 ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x0a9fd3c5 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x0aaca93f mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL vmlinux 0x0ab86dd8 usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x0ae67d7f ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0x0afd4610 zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0x0aff4176 pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0x0b01d787 uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b18c223 usb_stor_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x0b2d773e rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x0b401306 dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x0b443119 ahci_platform_ops +EXPORT_SYMBOL_GPL vmlinux 0x0b56ead8 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0x0b59390b __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0b85ed03 kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x0ba8374b __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x0bae62b1 ktime_get_monotonic_offset +EXPORT_SYMBOL_GPL vmlinux 0x0bb46b71 rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x0bbae511 return_address +EXPORT_SYMBOL_GPL vmlinux 0x0bd1683f regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0bda597f put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x0bf0bbe6 rtc_irq_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0bfa3a19 rcu_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x0c06883f sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x0c0c015e ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0x0c13fb7f snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL vmlinux 0x0c2cdbf1 synchronize_sched +EXPORT_SYMBOL_GPL vmlinux 0x0c3915dc pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x0c401c57 wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x0c442db4 ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0c451305 regulator_can_change_voltage +EXPORT_SYMBOL_GPL vmlinux 0x0c5334f7 transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0x0c5aae07 snd_soc_platform_read +EXPORT_SYMBOL_GPL vmlinux 0x0cbf071d cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x0cc1e40f crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x0ce7d4f9 usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x0d20368a regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0x0d20ba9d ahci_platform_resume +EXPORT_SYMBOL_GPL vmlinux 0x0d2260e3 md_is_badblock +EXPORT_SYMBOL_GPL vmlinux 0x0d2d91a0 dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x0d4d6ad3 netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x0d4e5ab7 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0x0d5a1dc0 aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x0d5efc01 extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x0d9d852e subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x0da510ed ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0x0dbd0e20 of_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0dde2a29 irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x0dfa6b43 usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0x0dfd63c2 tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0x0e02da80 stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x0e096764 tegra_usb_phy_preresume +EXPORT_SYMBOL_GPL vmlinux 0x0e21d6f1 crypto_init_spawn +EXPORT_SYMBOL_GPL vmlinux 0x0e26edcc __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x0e430857 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x0e4ff373 usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0x0e55ae96 snd_soc_dapm_get_value_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x0e6f85b7 da903x_write +EXPORT_SYMBOL_GPL vmlinux 0x0e93f145 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0ea39636 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x0ead0b0c fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0x0eb48055 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x0eb55b5c tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0x0eb8b34b class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x0ed36b2f call_srcu +EXPORT_SYMBOL_GPL vmlinux 0x0ed9302e percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x0f0eec15 pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0f15681d led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0x0f17c4f5 crypto_lookup_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x0f1808fc pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0x0f18c966 user_update +EXPORT_SYMBOL_GPL vmlinux 0x0f211e7c snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL vmlinux 0x0f385617 mtd_read_oob +EXPORT_SYMBOL_GPL vmlinux 0x0f4ad05e ahci_shost_attrs +EXPORT_SYMBOL_GPL vmlinux 0x0f4e92e7 usb_stor_set_xfer_buf +EXPORT_SYMBOL_GPL vmlinux 0x0f687f4f xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0x0f751aea input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0x0f82ae85 ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0x0fc01e9f static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x0fc3bd35 hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x0fe112dc of_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x0fe65e8c synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x0ff63d90 platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0x0ff91fdb dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x0ff9af09 cpdma_ctlr_int_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x1026c1d9 srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x103f15d4 __blk_put_request +EXPORT_SYMBOL_GPL vmlinux 0x104338d0 imx_pcm_dma_exit +EXPORT_SYMBOL_GPL vmlinux 0x1047a84b snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL vmlinux 0x104b8c41 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x1055f67f ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x105ece7e usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0x10696058 pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x10884cef da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x1096278c pinctrl_dev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x109ecf00 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x10aaca2b ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x10ce4ae6 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0x10d88362 security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x1107dc7d put_pid +EXPORT_SYMBOL_GPL vmlinux 0x1171066d snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL vmlinux 0x1172ce54 rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0x11b71263 tpm_show_temp_deactivated +EXPORT_SYMBOL_GPL vmlinux 0x11e42bf8 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x11e92912 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0x11fa847e usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x121cd964 of_pci_range_parser_one +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x121ed3f3 add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0x122a3634 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x1238208d swiotlb_tbl_map_single +EXPORT_SYMBOL_GPL vmlinux 0x124200b6 regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x124f2056 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x125d89cb usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x1270ea06 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0x128aaa4c pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x12a7f3b0 debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x12c34109 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x12ce925f dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0x1308aed8 crypto_blkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x13296b30 devm_snd_soc_register_component +EXPORT_SYMBOL_GPL vmlinux 0x13354608 scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0x1337c067 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0x1346814e mtd_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0x1360ecf1 dapm_mark_io_dirty +EXPORT_SYMBOL_GPL vmlinux 0x13681f12 ahci_platform_enable_clks +EXPORT_SYMBOL_GPL vmlinux 0x13921363 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x139a6564 input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0x13b89dee pinctrl_request_gpio +EXPORT_SYMBOL_GPL vmlinux 0x13ba4bd7 usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0x142a8be4 of_clk_get_parent_name +EXPORT_SYMBOL_GPL vmlinux 0x143060a9 blk_queue_flush_queueable +EXPORT_SYMBOL_GPL vmlinux 0x147cec90 regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0x1488556c usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x14bd3744 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0x14c762a4 i2c_lock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x14c817e7 ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x14d024d9 wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x14e83f60 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x14edafbb mtd_unpoint +EXPORT_SYMBOL_GPL vmlinux 0x14f39c4c sdhci_pci_o2_resume +EXPORT_SYMBOL_GPL vmlinux 0x14f875ce devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x1501b1c0 crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0x150f5df5 inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0x1525f36d __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x153f0563 snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL vmlinux 0x15480c0a snd_soc_jack_report +EXPORT_SYMBOL_GPL vmlinux 0x155f1512 dev_pm_opp_init_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0x15892417 async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x15904766 ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0x15a65e89 snd_soc_jack_get_type +EXPORT_SYMBOL_GPL vmlinux 0x15b826b6 ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x15f28a79 snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL vmlinux 0x16000a3c dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x16054176 register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x16178c5e ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0x161b5289 __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x1620359c deregister_mtd_parser +EXPORT_SYMBOL_GPL vmlinux 0x16209cff device_attach +EXPORT_SYMBOL_GPL vmlinux 0x1642be8e ulpi_viewport_access_ops +EXPORT_SYMBOL_GPL vmlinux 0x164b7f27 fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0x1650bf27 rcutorture_record_progress +EXPORT_SYMBOL_GPL vmlinux 0x168ece4a pci_sriov_migration +EXPORT_SYMBOL_GPL vmlinux 0x169556bb snd_dmaengine_pcm_set_config_from_dai_data +EXPORT_SYMBOL_GPL vmlinux 0x16aef47a snd_soc_info_volsw +EXPORT_SYMBOL_GPL vmlinux 0x16cec4f8 devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x16e0f67d pci_msi_off +EXPORT_SYMBOL_GPL vmlinux 0x16ed2fe0 irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0x16f07ca5 bmp085_detect +EXPORT_SYMBOL_GPL vmlinux 0x16f884dd device_store_int +EXPORT_SYMBOL_GPL vmlinux 0x16fbdb24 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x170e9bea imx_usbmisc_init +EXPORT_SYMBOL_GPL vmlinux 0x1720336f regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0x1734791b snd_soc_put_strobe +EXPORT_SYMBOL_GPL vmlinux 0x173fc240 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x1753a32f hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0x1753c61c usb_stor_ctrl_transfer +EXPORT_SYMBOL_GPL vmlinux 0x177c338d twl_get_version +EXPORT_SYMBOL_GPL vmlinux 0x177c98ca pci_restore_ats_state +EXPORT_SYMBOL_GPL vmlinux 0x17a6421f find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x17c7fb65 dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x17d59063 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x17ea07ba srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x17f80573 reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x180211dc spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x1827df7c rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x183a8831 crypto_alloc_instance +EXPORT_SYMBOL_GPL vmlinux 0x183fc110 put_device +EXPORT_SYMBOL_GPL vmlinux 0x1853653c btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x185a51ed user_describe +EXPORT_SYMBOL_GPL vmlinux 0x1866cec2 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x1878f62b edac_err_assert +EXPORT_SYMBOL_GPL vmlinux 0x1885331b regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x18a27f34 jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0x18d502a2 snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL vmlinux 0x18dbdbb3 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x18f6b95a regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x1904b620 snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL vmlinux 0x1918cea4 ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x1923acd4 ping_err +EXPORT_SYMBOL_GPL vmlinux 0x1932c059 ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x1938618d crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x193b9537 usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x193d48e0 trace_current_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x194dd5f5 pkey_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x197786e2 spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x19940f61 ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19b384a5 hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x1a082d69 max77693_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x1a0bb356 single_open_net +EXPORT_SYMBOL_GPL vmlinux 0x1a0c580e usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0x1a15bce4 thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x1a229d52 rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x1a323362 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x1a3a762f alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x1a65920b omap_iommu_arch_version +EXPORT_SYMBOL_GPL vmlinux 0x1a688324 ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1a887599 regmap_field_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x1a9a406a user_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x1aad4afb exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0x1aadd408 vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0x1ab65906 css_next_descendant_post +EXPORT_SYMBOL_GPL vmlinux 0x1acef7d2 pm_freezing +EXPORT_SYMBOL_GPL vmlinux 0x1ad83009 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0x1ae1b8c2 usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x1aee2c9e uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x1b3193ff gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x1b3261e0 klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x1b39c8f4 omap_dm_timer_set_pwm +EXPORT_SYMBOL_GPL vmlinux 0x1b3c9973 remove_irq +EXPORT_SYMBOL_GPL vmlinux 0x1b52db1c probe_kernel_read +EXPORT_SYMBOL_GPL vmlinux 0x1b7457b8 raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x1b7a1d9b devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0x1b8822d8 pinctrl_gpio_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1b9aca3f jprobe_return +EXPORT_SYMBOL_GPL vmlinux 0x1bb426b7 mount_mtd +EXPORT_SYMBOL_GPL vmlinux 0x1bb4c155 pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0x1bb5fc26 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x1bb99a3c devm_phy_put +EXPORT_SYMBOL_GPL vmlinux 0x1bc12b11 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x1bc3edc2 usb_stor_sense_invalidCDB +EXPORT_SYMBOL_GPL vmlinux 0x1bc5eebe pinctrl_gpio_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x1bd06aab cpufreq_frequency_table_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x1c01e42f bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0x1c1aeda7 pci_bus_sem +EXPORT_SYMBOL_GPL vmlinux 0x1c2422db default_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x1c30b5d5 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0x1c536008 snd_soc_dpcm_be_set_state +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c64fbf9 trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1c8c0631 sk_unattached_filter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1cca3a10 ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x1cf8f55f blk_queue_bypass_end +EXPORT_SYMBOL_GPL vmlinux 0x1d58ae14 lpddr2_jedec_timings +EXPORT_SYMBOL_GPL vmlinux 0x1d5d491c crypto_lookup_aead +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d7ec6e3 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x1d9a5271 pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x1da40ff4 inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0x1daba208 __netpoll_free_async +EXPORT_SYMBOL_GPL vmlinux 0x1dbbdc4f tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x1de054d5 of_clk_del_provider +EXPORT_SYMBOL_GPL vmlinux 0x1e10b2fa list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1e3a88fb trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x1e3bfae4 snd_soc_write +EXPORT_SYMBOL_GPL vmlinux 0x1e5b03dc pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1e721912 wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x1e7a47c5 cgroup_taskset_first +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e80b787 locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0x1e86b681 mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL vmlinux 0x1eafe1ff regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1eb1594f gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1edb5556 inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1f1060c0 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0x1f15f915 __blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x1f37286e register_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x1f54af0c extcon_find_cable_index +EXPORT_SYMBOL_GPL vmlinux 0x1f71f6e7 snd_soc_codec_set_cache_io +EXPORT_SYMBOL_GPL vmlinux 0x1f733f45 pinctrl_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f8db7f9 ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x1f8fa854 pwm_free +EXPORT_SYMBOL_GPL vmlinux 0x1faf0aa2 __inet_hash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x1fcece42 inet_twdr_twcal_tick +EXPORT_SYMBOL_GPL vmlinux 0x1fe98cc6 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0x1fed3113 device_add +EXPORT_SYMBOL_GPL vmlinux 0x20011ef0 devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x201d8ea3 encode_rs8 +EXPORT_SYMBOL_GPL vmlinux 0x2021373e tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x202d0405 skcipher_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x20498a16 register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x20514222 regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x20579ec0 sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0x205d0709 device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x20674aeb pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0x2081abf6 sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0x209ac941 usb_gadget_set_state +EXPORT_SYMBOL_GPL vmlinux 0x20ac8c6e sysfs_get +EXPORT_SYMBOL_GPL vmlinux 0x20bc3470 orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x20c1b6a0 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x20c248d6 wait_for_tpm_stat +EXPORT_SYMBOL_GPL vmlinux 0x20c9a693 pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0x20cbb951 tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x20e7b748 devm_pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x20e7d89f devres_find +EXPORT_SYMBOL_GPL vmlinux 0x20faae57 tpm_show_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x2132a4b1 _submit_bh +EXPORT_SYMBOL_GPL vmlinux 0x213d8193 usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0x214d9875 blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0x214e2a29 sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x21538b11 ci_hdrc_add_device +EXPORT_SYMBOL_GPL vmlinux 0x2160b60d dm_get_rq_mapinfo +EXPORT_SYMBOL_GPL vmlinux 0x2174f270 crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x219e9034 regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x21b16010 gpiochip_add +EXPORT_SYMBOL_GPL vmlinux 0x22271ca7 cpdma_ctlr_create +EXPORT_SYMBOL_GPL vmlinux 0x22281753 iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2229871b tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x2231e2ef attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x226a674d atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x228165a8 mmput +EXPORT_SYMBOL_GPL vmlinux 0x2296c00d crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x22bb0cc2 srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0x22c16ecb dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x22cde711 tpm_show_durations +EXPORT_SYMBOL_GPL vmlinux 0x22d6799e devm_usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x23096446 __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x2317a762 i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0x231a1f7c snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL vmlinux 0x231d70fc encode_bch +EXPORT_SYMBOL_GPL vmlinux 0x2324ec2f platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0x235fe28a usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0x23679939 __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x236904e2 alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0x236ba02d usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x236c6f4c relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x23761785 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x23872716 do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x238bbf9c sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0x2391d292 ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x2392bc6e pm_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0x23a25f34 inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x23ca15aa __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x23cccd49 inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x23eec2f2 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0x24173180 unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x2445d75f usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x2447533c ktime_get_real +EXPORT_SYMBOL_GPL vmlinux 0x244810a7 xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x248f428e securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x24962a00 rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x24aac4d9 crypto_aes_expand_key +EXPORT_SYMBOL_GPL vmlinux 0x24afa780 unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x24c119e0 __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0x24db9ef3 snd_soc_dapm_get_enum_virt +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x2540c411 tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL vmlinux 0x254d871f __rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x254e37dd omap_dm_timer_set_int_disable +EXPORT_SYMBOL_GPL vmlinux 0x255bd9c5 ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x2560900d omap_dma_filter_fn +EXPORT_SYMBOL_GPL vmlinux 0x256921e2 usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0x25716297 fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x2581bd94 usb_stor_Bulk_transport +EXPORT_SYMBOL_GPL vmlinux 0x25866772 dma_buf_kunmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x258c8ed9 snd_soc_platform_write +EXPORT_SYMBOL_GPL vmlinux 0x25a70a90 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0x25e4fa8c btree_remove +EXPORT_SYMBOL_GPL vmlinux 0x262736b4 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0x262c0a77 ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL vmlinux 0x262f20a8 local_clock +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x26adb815 thread_notify_head +EXPORT_SYMBOL_GPL vmlinux 0x26b71fb4 ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x26badcaa devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0x26c547c0 bL_switcher_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26c90eed sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x26d88d13 snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL vmlinux 0x26ff9d2d context_tracking_enabled +EXPORT_SYMBOL_GPL vmlinux 0x275c8bca iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0x275c9d45 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x27654700 mtd_erase_callback +EXPORT_SYMBOL_GPL vmlinux 0x2787db00 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x278dce69 set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0x27c1e63f usb_amd_find_chipset_info +EXPORT_SYMBOL_GPL vmlinux 0x27e89d02 posix_timer_event +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x2800c1fd ahci_stop_engine +EXPORT_SYMBOL_GPL vmlinux 0x280de911 __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x2833afba pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0x2839e414 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0x284f6443 tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0x286093ee __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x2869aaa6 mtd_erase +EXPORT_SYMBOL_GPL vmlinux 0x2875eac6 inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0x288ca245 snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL vmlinux 0x289d2c9b relay_open +EXPORT_SYMBOL_GPL vmlinux 0x28a82da4 snmp_mib_init +EXPORT_SYMBOL_GPL vmlinux 0x28a903c8 timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x28c80aa0 sdhci_pltfm_free +EXPORT_SYMBOL_GPL vmlinux 0x28e34942 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0x28f1b1d7 sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL vmlinux 0x28ffaf4f ci_hdrc_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x29047f1a __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0x2905ed90 dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x292ecd1b fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x29323c15 scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0x2945d524 ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x29608b3d tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0x29759185 clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x29766384 usb_stor_bulk_srb +EXPORT_SYMBOL_GPL vmlinux 0x29ac8dd0 regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x29c72f32 ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0x29cbcc05 lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0x29f026db regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x29fa419f decode_rs8 +EXPORT_SYMBOL_GPL vmlinux 0x2a229f2d hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2a287dd7 vtime_guest_enter +EXPORT_SYMBOL_GPL vmlinux 0x2a28c6ae ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0x2a402357 set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x2a504ad2 init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x2a60b9e9 pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a92de81 uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0x2a97b684 devres_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2aa5c731 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x2ab06d19 stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0x2ad1ece4 zs_get_total_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0x2ad9d326 md_ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x2ae3105b device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2af53a8d ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0x2b220a56 snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL vmlinux 0x2b2c3fef usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x2b4d05dc d_materialise_unique +EXPORT_SYMBOL_GPL vmlinux 0x2b6b147d ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0x2b78d394 regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x2b7a6de8 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2b7fb8c9 devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x2ba0c0fe inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x2babe81f __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0x2bb90d77 lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0x2bfaef4e clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x2c0f7fa7 snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x2c12adfe md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c218b38 sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0x2c475a78 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0x2c51d335 usb_stor_bulk_transfer_sg +EXPORT_SYMBOL_GPL vmlinux 0x2c54744e ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0x2c6d37aa twl6040_hs_jack_detect +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c82b6e1 dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0x2ca40c5b regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x2cb2a4ec irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0x2cb49dee unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x2cb9aaad soc_ac97_ops +EXPORT_SYMBOL_GPL vmlinux 0x2cbc40b6 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x2ce98559 kcrypto_wq +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2cf60e7d i2c_unlock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x2d00ac2c pinconf_generic_dt_subnode_to_map +EXPORT_SYMBOL_GPL vmlinux 0x2d03237f swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0x2d17a0e1 cgroup_taskset_size +EXPORT_SYMBOL_GPL vmlinux 0x2d1977aa arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d1ba150 thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0x2d3abe67 iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d59c954 edac_handlers +EXPORT_SYMBOL_GPL vmlinux 0x2d8d8227 crypto_alg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x2da4bc67 snd_soc_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x2dd284a5 pinctrl_force_sleep +EXPORT_SYMBOL_GPL vmlinux 0x2dff7934 ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x2e0fdea0 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0x2e11a3e8 xattr_getsecurity +EXPORT_SYMBOL_GPL vmlinux 0x2e278f88 btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x2e2ac0d4 pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0x2e2f1740 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2e403a31 sdhci_send_command +EXPORT_SYMBOL_GPL vmlinux 0x2e45e488 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x2e53cf03 snd_soc_resume +EXPORT_SYMBOL_GPL vmlinux 0x2e9670c0 pl320_ipc_transmit +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ef6b5bf smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f1bed62 tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f466e60 usb_stor_disconnect +EXPORT_SYMBOL_GPL vmlinux 0x2f67554e balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x2f84d25a omap_dm_timer_get_irq +EXPORT_SYMBOL_GPL vmlinux 0x2fa393d3 arm_iommu_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2fcb3327 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x2fd8cba9 freeze_wake +EXPORT_SYMBOL_GPL vmlinux 0x3004ff00 snd_soc_info_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x3006b6f5 of_pci_get_devfn +EXPORT_SYMBOL_GPL vmlinux 0x300d7e57 free_rs +EXPORT_SYMBOL_GPL vmlinux 0x3017b480 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0x3022ac4c snd_soc_register_component +EXPORT_SYMBOL_GPL vmlinux 0x3064e2a7 fuse_put_request +EXPORT_SYMBOL_GPL vmlinux 0x30693bb7 imx_audmux_v1_configure_port +EXPORT_SYMBOL_GPL vmlinux 0x306a6b5e sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0x306d4d4d platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0x30827300 rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0x308822ad devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x308b733a getboottime +EXPORT_SYMBOL_GPL vmlinux 0x3097cb18 device_move +EXPORT_SYMBOL_GPL vmlinux 0x30a4f4ca bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x30a8ab8f usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0x30b43940 ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0x30b959ea hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x30d579a8 __class_register +EXPORT_SYMBOL_GPL vmlinux 0x30de5705 ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x30eb0980 tegra_pinctrl_remove +EXPORT_SYMBOL_GPL vmlinux 0x310540f7 device_rename +EXPORT_SYMBOL_GPL vmlinux 0x3109b751 cpu_clock +EXPORT_SYMBOL_GPL vmlinux 0x31175fc9 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x311f8023 pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x314b754b bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3161ba2c disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x316c45ba serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0x31a820ed register_jprobe +EXPORT_SYMBOL_GPL vmlinux 0x31ab2a57 dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x31b7a3db devm_rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x31be35d5 of_get_named_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x31c0c2d1 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL vmlinux 0x31f5ab63 blkio_subsys +EXPORT_SYMBOL_GPL vmlinux 0x32246fee inet6_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0x322d07b8 blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0x322f3511 __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0x3237cb6a spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x3256ca45 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x325c8240 usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL vmlinux 0x3262ded3 eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0x3277edec snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL vmlinux 0x3279dd34 driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x328995b5 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0x329bbbde timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x32b31a8c ktime_get_boottime +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32c496f1 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x32f23353 dev_get_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x32fd447a monotonic_to_bootbased +EXPORT_SYMBOL_GPL vmlinux 0x33118669 regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x335d4007 blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x336154ca rcutorture_record_test_transition +EXPORT_SYMBOL_GPL vmlinux 0x33960e24 __pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x33bb3325 xfrm_inner_extract_output +EXPORT_SYMBOL_GPL vmlinux 0x33c06926 ahash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0x33c39c86 __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x33de1c7c of_regulator_match +EXPORT_SYMBOL_GPL vmlinux 0x33de89c4 twl6040_get_trim_value +EXPORT_SYMBOL_GPL vmlinux 0x33ec16fa snd_soc_get_strobe +EXPORT_SYMBOL_GPL vmlinux 0x3406583e devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x341643ba omap_dm_timer_modify_idlect_mask +EXPORT_SYMBOL_GPL vmlinux 0x344fbc48 blkdev_aio_write +EXPORT_SYMBOL_GPL vmlinux 0x345f9f04 wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0x34684fb0 ahci_platform_disable_clks +EXPORT_SYMBOL_GPL vmlinux 0x347fd4b3 eventfd_ctx_get +EXPORT_SYMBOL_GPL vmlinux 0x3480cef2 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x348d74d7 ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0x34ac50a4 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x34b12a88 fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0x34ca4e14 call_filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0x34f657eb pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0x34ff85a4 cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0x353edd9a phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL vmlinux 0x354b52b8 devres_add +EXPORT_SYMBOL_GPL vmlinux 0x3572f289 crypto_attr_alg2 +EXPORT_SYMBOL_GPL vmlinux 0x358ff60f twl_get_hfclk_rate +EXPORT_SYMBOL_GPL vmlinux 0x35c0c0b6 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0x35c9714c devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0x35d2207f pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x35f10f43 nfq_ct_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x35f165f1 devm_reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x35fb50ed power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x36158ad0 smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x36167092 rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x361e0baf raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x361e2bcc save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0x362cc041 iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x3670fae8 snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL vmlinux 0x367696b0 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36a0d079 tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0x36a6579e serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0x36a80f90 snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL vmlinux 0x36cf4846 ahci_do_softreset +EXPORT_SYMBOL_GPL vmlinux 0x36d131bf vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x36edf36f crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x3711fc06 cred_to_ucred +EXPORT_SYMBOL_GPL vmlinux 0x372cf9b1 dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0x373c92aa crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0x37543baf regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x3774d36a virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0x37763651 od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x379c8137 screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0x37ab52f4 crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x37bcdf38 phy_pm_runtime_put +EXPORT_SYMBOL_GPL vmlinux 0x37c9f065 blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x37f78ea7 security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x37fe93fc arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x381c7057 sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0x3820cf5e da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0x384e9c96 mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0x385bb278 blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x385e98d5 scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0x38a9c2c7 input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x38d1900f crypto_nivaead_type +EXPORT_SYMBOL_GPL vmlinux 0x393a3510 snd_soc_codec_volatile_register +EXPORT_SYMBOL_GPL vmlinux 0x39864018 subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x39904d95 inet6_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x39c56cbb spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x39ccd7e9 cpufreq_governor_dbs +EXPORT_SYMBOL_GPL vmlinux 0x39d18f27 platform_bus +EXPORT_SYMBOL_GPL vmlinux 0x39dc6710 wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x3a02424b ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a4c6000 of_irq_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a542a20 rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0x3a586acf usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x3a7a237a tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0x3aa6173e inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x3acdf325 twl4030_audio_enable_resource +EXPORT_SYMBOL_GPL vmlinux 0x3ad82802 of_property_read_u32_index +EXPORT_SYMBOL_GPL vmlinux 0x3ae45f69 device_del +EXPORT_SYMBOL_GPL vmlinux 0x3aeac62f ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0x3b180c8c led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3b237c68 crypto_aead_type +EXPORT_SYMBOL_GPL vmlinux 0x3b408872 cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0x3b622abc sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0x3b642ba7 ping_proc_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3b70659f usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0x3b80b2a0 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x3bb4683f device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0x3bbdffc8 pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x3bce0234 unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0x3c1dfd0b ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0x3c310526 blk_queue_bypass_start +EXPORT_SYMBOL_GPL vmlinux 0x3c536f9f ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0x3c831441 arm_check_condition +EXPORT_SYMBOL_GPL vmlinux 0x3c8424a0 clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3c8d28cc of_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x3c9390db pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0x3ca17104 __snd_printk +EXPORT_SYMBOL_GPL vmlinux 0x3ca7c3a5 of_irq_parse_pci +EXPORT_SYMBOL_GPL vmlinux 0x3ccffec8 of_irq_parse_one +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cf38eda usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0x3cf5f3b6 sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x3d172e81 debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x3d289407 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0x3d29bb9d dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d3e6af1 spi_async +EXPORT_SYMBOL_GPL vmlinux 0x3d646e15 tpm_remove_hardware +EXPORT_SYMBOL_GPL vmlinux 0x3db0bce3 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0x3dba7145 irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0x3dc526a9 arizona_of_match +EXPORT_SYMBOL_GPL vmlinux 0x3dc916b6 crypto_fl_tab +EXPORT_SYMBOL_GPL vmlinux 0x3dc9bd53 skb_gro_receive +EXPORT_SYMBOL_GPL vmlinux 0x3dd4d3a7 bprintf +EXPORT_SYMBOL_GPL vmlinux 0x3dd95d26 usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0x3ddfe09d sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3e1031fe sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x3e1e0914 snd_soc_dapm_put_value_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x3e2ea633 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0x3e2fa31f wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3e452a00 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x3e61c14a crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e773ab6 bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0x3e7963f5 pci_pri_status +EXPORT_SYMBOL_GPL vmlinux 0x3e971b8d regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3eb761cb fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0x3eda140e pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x3ef57348 da903x_update +EXPORT_SYMBOL_GPL vmlinux 0x3efb35c9 get_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0x3f33e8ce da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x3f4ac066 snd_soc_put_volsw +EXPORT_SYMBOL_GPL vmlinux 0x3f514a3d seq_release_net +EXPORT_SYMBOL_GPL vmlinux 0x3f61c2f3 regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3f620a84 disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x3f69c73a unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x3f9f6df3 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0x3fa3ad3a rtc_set_mmss +EXPORT_SYMBOL_GPL vmlinux 0x3fa7981a virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0x3fb08d56 ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x3fb72d15 wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0x3fc2b5cc crypto_init_spawn2 +EXPORT_SYMBOL_GPL vmlinux 0x3fce9c25 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0x3fdd4494 regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3fe79993 find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x3fef2051 crypto_ablkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x40214177 snd_soc_test_bits +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x40440fce amba_device_put +EXPORT_SYMBOL_GPL vmlinux 0x4045c494 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0x4065d168 pm_print_active_wakeup_sources +EXPORT_SYMBOL_GPL vmlinux 0x407aecf9 ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x4094c829 __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0x40af0dec ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x40cf9161 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x40d46b21 crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x40e03e9f usb_add_gadget_udc +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x4111b0d0 devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x414a25b3 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x4155451a pinctrl_force_default +EXPORT_SYMBOL_GPL vmlinux 0x4169d96b usb_gadget_probe_driver +EXPORT_SYMBOL_GPL vmlinux 0x416faf66 subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x4179892f kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x41831743 class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x418e9f78 shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0x4191d947 tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0x41aa167d __pci_complete_power_transition +EXPORT_SYMBOL_GPL vmlinux 0x41b2055d sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0x42051433 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x4205ad24 cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x420ca256 subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x4219ff58 omap_dm_timer_request_specific +EXPORT_SYMBOL_GPL vmlinux 0x422d6c2a rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x42756bbe scsi_internal_device_unblock +EXPORT_SYMBOL_GPL vmlinux 0x427d534c blk_unprep_request +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x428c6dbc cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x42b364ef scatterwalk_done +EXPORT_SYMBOL_GPL vmlinux 0x42b4c620 sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0x42bdcc3c skcipher_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0x42c9d405 led_trigger_show +EXPORT_SYMBOL_GPL vmlinux 0x42d8bb39 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0x42da1c2b relay_flush +EXPORT_SYMBOL_GPL vmlinux 0x4301315b debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x430e5257 of_alias_get_id +EXPORT_SYMBOL_GPL vmlinux 0x431289dd digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0x43166e83 pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0x437c815e debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x43a4ffd3 dm_underlying_device_busy +EXPORT_SYMBOL_GPL vmlinux 0x43a53735 __alloc_workqueue_key +EXPORT_SYMBOL_GPL vmlinux 0x43cb5059 crypto_init_shash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x43fca623 dapm_reg_event +EXPORT_SYMBOL_GPL vmlinux 0x441f3402 sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0x4431409d da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x4433fad0 i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x443d85a0 nand_release +EXPORT_SYMBOL_GPL vmlinux 0x44404f11 kdb_register_repeat +EXPORT_SYMBOL_GPL vmlinux 0x444f1735 cpu_pm_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x44637c08 sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x4475e427 power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x44895ab5 usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0x4505bc02 wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x452c9bac ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0x45396be9 pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x454c15ae __smp_call_function_single +EXPORT_SYMBOL_GPL vmlinux 0x4570c362 regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x457b77ca of_fixed_factor_clk_setup +EXPORT_SYMBOL_GPL vmlinux 0x45ba1367 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0x45bb6644 bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0x45bc99d4 snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL vmlinux 0x45bf1ff3 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x45e784c4 rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x45fe4e65 __netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x45fea021 rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0x46066e5b perf_pmu_name +EXPORT_SYMBOL_GPL vmlinux 0x460f7531 wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x465dd4a9 init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0x4672e88b __crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x469e2d21 usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x46bd5fd7 ahci_platform_suspend_host +EXPORT_SYMBOL_GPL vmlinux 0x46df94ba blk_queue_bio +EXPORT_SYMBOL_GPL vmlinux 0x46ea77e1 sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x46f4c3bb platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0x4705b863 napi_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x470fa426 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x4742272b edac_subsys +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x476a7646 ahci_init_controller +EXPORT_SYMBOL_GPL vmlinux 0x477a6ec6 cpufreq_frequency_get_table +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47ae6926 tegra_ehci_phy_restore_end +EXPORT_SYMBOL_GPL vmlinux 0x47fd281c __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x480f8f60 blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0x48156a05 tpm_store_cancel +EXPORT_SYMBOL_GPL vmlinux 0x483a9765 pinctrl_select_state +EXPORT_SYMBOL_GPL vmlinux 0x484e6a4d class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x4873adf0 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0x48ba2763 led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x48ca8947 pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x48d04ff6 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL vmlinux 0x48fa23f8 irq_find_host +EXPORT_SYMBOL_GPL vmlinux 0x4908baf6 iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0x490f8b84 usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x49121765 perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0x4915f672 handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0x49417412 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x4946da71 omap_iotlb_cr_to_e +EXPORT_SYMBOL_GPL vmlinux 0x496b8738 get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0x4982a57f probe_kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x498d293a trace_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x49b6eefa mtd_writev +EXPORT_SYMBOL_GPL vmlinux 0x49f5477a ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0x4a00c892 clk_register +EXPORT_SYMBOL_GPL vmlinux 0x4a0c2e26 irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x4a1529b3 regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x4a3dec91 ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x4a5b920b snd_soc_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x4a972d6a extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4aaa23a2 snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL vmlinux 0x4aadeb9a ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0x4ab1a16b usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x4ab90692 aead_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0x4acc8b81 regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x4b17b645 of_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x4b1dd03b da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4b34c24e sock_update_netprioidx +EXPORT_SYMBOL_GPL vmlinux 0x4b37ca99 gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0x4b67b0c9 crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0x4b78c067 ata_eh_thaw_port +EXPORT_SYMBOL_GPL vmlinux 0x4b991ec4 rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0x4ba1b69b pwm_config +EXPORT_SYMBOL_GPL vmlinux 0x4baf3113 usb_stor_suspend +EXPORT_SYMBOL_GPL vmlinux 0x4bafcdd8 btree_update +EXPORT_SYMBOL_GPL vmlinux 0x4bb85130 sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0x4bbbec54 regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0x4bbc84e1 ahci_platform_get_resources +EXPORT_SYMBOL_GPL vmlinux 0x4bc33200 class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x4bc62a81 audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4bff4b40 regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0x4c2e1f24 clk_disable +EXPORT_SYMBOL_GPL vmlinux 0x4c44cd11 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0x4c47ec15 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0x4c579bc7 wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x4c602bf1 __blkg_release_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4c759827 byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x4ca4c9df clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x4cb227b5 input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0x4ce9e95f mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x4cef7b60 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0x4d1093e1 usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0x4d38f1e0 bL_switcher_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4d3e5eae usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0x4d4fbc1c __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0x4d66da34 omap_dm_timer_read_counter +EXPORT_SYMBOL_GPL vmlinux 0x4d851f6b snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4dc29a5a mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4e109192 ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0x4e242f5f pstore_cannot_block_path +EXPORT_SYMBOL_GPL vmlinux 0x4e2852b5 debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0x4e4106b9 snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL vmlinux 0x4e64d8ac snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL vmlinux 0x4e9e7f00 fat_attach +EXPORT_SYMBOL_GPL vmlinux 0x4ea8fc0c simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x4eb10cc6 snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL vmlinux 0x4ec58ef5 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0x4ef29549 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f020dee public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x4f44398b crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0x4f4fbaa2 regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0x4f524926 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0x4f5b2fdc iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0x4f6172ff crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0x4f69e288 usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x4f72f2ae mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL vmlinux 0x4f96a79d virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0x4f98d766 cpu_pm_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4fa09a3d alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0x4fc36a61 udc_attach_driver +EXPORT_SYMBOL_GPL vmlinux 0x4fc52e8d __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0x4fd4e89d ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x501ab938 queue_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x5042e276 pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x5053e2a6 leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0x50601122 of_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x5064622d tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x506691f1 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x506cc085 tracepoint_iter_stop +EXPORT_SYMBOL_GPL vmlinux 0x506d2ad6 sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0x50767957 regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x50865260 hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x5086ac3a alg_test +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x50a1cf96 perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x50a6fb65 scsi_internal_device_block +EXPORT_SYMBOL_GPL vmlinux 0x50ba9a99 amba_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x50c89f23 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x50d33011 __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x50df07d9 omap_dm_timer_start +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50ef40b7 usb_stor_reset_resume +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x512cf16c wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0x515a2d3b sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0x516f7537 cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0x517a91ee max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x5189bc98 devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0x519411b6 ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x51970776 snd_soc_new_ac97_codec +EXPORT_SYMBOL_GPL vmlinux 0x51c35dd8 sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0x51e7bab7 wm8400_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x51e99721 ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x51f0ec09 tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x5200c3b4 usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL vmlinux 0x52120583 of_get_display_timings +EXPORT_SYMBOL_GPL vmlinux 0x522033d1 kick_process +EXPORT_SYMBOL_GPL vmlinux 0x52212010 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x525d0702 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x5272d8bc __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0x52a41251 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x52b1001f driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x52c0d5d8 scatterwalk_bytes_sglen +EXPORT_SYMBOL_GPL vmlinux 0x52ded762 key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0x52ecd7e0 mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL vmlinux 0x53218754 need_load_eval +EXPORT_SYMBOL_GPL vmlinux 0x533e62ab xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0x5341ac3b irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x5358fc36 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x53614269 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x536b2600 raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0x537dde7f mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x53868795 snd_soc_get_volsw +EXPORT_SYMBOL_GPL vmlinux 0x53921743 tcp_done +EXPORT_SYMBOL_GPL vmlinux 0x53c4e8e7 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x53efee18 tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0x53ff3ec7 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL vmlinux 0x5414f0ac get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0x5416b921 devm_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54286f8f unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0x543a071c ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x544aab61 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0x545dde88 inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x545fec86 percpu_ida_for_each_free +EXPORT_SYMBOL_GPL vmlinux 0x5460c8d8 fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x5469c583 regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x54740eb7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x54772414 device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x548b1600 omap_iommu_restore_ctx +EXPORT_SYMBOL_GPL vmlinux 0x548ddd78 blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x54950cef usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54b985ad snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL vmlinux 0x54bc7c0f spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x54dccf4d crypto_alloc_ablkcipher +EXPORT_SYMBOL_GPL vmlinux 0x54ebda6b bgpio_remove +EXPORT_SYMBOL_GPL vmlinux 0x54f74d6e mtd_device_parse_register +EXPORT_SYMBOL_GPL vmlinux 0x54f75c51 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0x5539bc69 __module_address +EXPORT_SYMBOL_GPL vmlinux 0x553ff3da get_mtd_device +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5577157f vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0x55777e01 list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x5581a567 wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0x55ad51ba pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x55b83760 xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0x55f04c21 trace_buffer_unlock_commit_regs +EXPORT_SYMBOL_GPL vmlinux 0x561d9d75 pinctrl_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x561e4b77 irq_of_parse_and_map +EXPORT_SYMBOL_GPL vmlinux 0x562507b8 trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x564f1dca klist_add_after +EXPORT_SYMBOL_GPL vmlinux 0x565b6892 uuid_le_gen +EXPORT_SYMBOL_GPL vmlinux 0x5692386f gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x56b63670 lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x56b8d39e usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x56c2466e tpm_gen_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x56cc2c50 devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x56d697ce cpu_up +EXPORT_SYMBOL_GPL vmlinux 0x56e75d47 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x56e9103b cpu_pm_enter +EXPORT_SYMBOL_GPL vmlinux 0x56ea9e2c setup_irq +EXPORT_SYMBOL_GPL vmlinux 0x56eaf6fe __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x570273da usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0x57231f45 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0x5733d7a9 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0x57552937 omap_dm_timer_request_by_node +EXPORT_SYMBOL_GPL vmlinux 0x5756680e mtd_is_locked +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57ac9e58 __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x57b1b04d usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x57ea8952 attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0x57f9b52e pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0x58092e32 wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x5812f5d0 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x582be91b wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0x582d17e6 kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x5840405e unregister_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0x58413099 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x585e1a47 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x58631dab imx_audmux_v2_configure_port +EXPORT_SYMBOL_GPL vmlinux 0x586b1781 ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x58743c07 bus_find_device_by_name +EXPORT_SYMBOL_GPL vmlinux 0x5896f182 adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x589e4569 syscon_regmap_lookup_by_pdevname +EXPORT_SYMBOL_GPL vmlinux 0x58cf5c79 snd_soc_update_bits_locked +EXPORT_SYMBOL_GPL vmlinux 0x58d9a94e sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x58f4fd46 pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x593c6120 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0x5947abbe max77693_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x5952816f regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x5977c658 generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0x59850029 irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0x5991a1fd usb_stor_probe1 +EXPORT_SYMBOL_GPL vmlinux 0x59959d0a cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x59a6e91d clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x59c83da6 regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0x59d363b0 rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0x59e2743e call_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0x59eae699 ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x59fccd60 snd_soc_dapm_free +EXPORT_SYMBOL_GPL vmlinux 0x5a22aefb snd_soc_suspend +EXPORT_SYMBOL_GPL vmlinux 0x5a288c37 usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x5a512d2b snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL vmlinux 0x5a71dece usb_del_gadget_udc +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a8f213c cpdma_ctlr_eoi +EXPORT_SYMBOL_GPL vmlinux 0x5a8f3b69 of_irq_parse_raw +EXPORT_SYMBOL_GPL vmlinux 0x5aa101ee usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0x5ac90de2 blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0x5acf6567 btree_init +EXPORT_SYMBOL_GPL vmlinux 0x5ad2489d inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0x5ad3dd00 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0x5ade0139 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0x5af39d52 xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0x5afb47fc of_irq_to_resource_table +EXPORT_SYMBOL_GPL vmlinux 0x5b1cfbcd of_get_fb_videomode +EXPORT_SYMBOL_GPL vmlinux 0x5b2fc5f0 scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0x5b42a822 mtd_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5b4bf06d mtd_del_partition +EXPORT_SYMBOL_GPL vmlinux 0x5b4e379c of_prop_next_u32 +EXPORT_SYMBOL_GPL vmlinux 0x5b580802 sdhci_pltfm_register +EXPORT_SYMBOL_GPL vmlinux 0x5b6a7e3f __put_net +EXPORT_SYMBOL_GPL vmlinux 0x5b8a432b power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x5ba8e03b ahci_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x5bb20555 adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x5bd0cea6 pci_reset_pri +EXPORT_SYMBOL_GPL vmlinux 0x5bd76fa6 modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x5c053d92 do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x5c0e566e usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0x5c198f48 ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0x5c2fe4a5 cpdma_chan_stop +EXPORT_SYMBOL_GPL vmlinux 0x5c462a4c tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x5c656de2 crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x5c7fd46d __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x5c993a81 debugfs_remove_recursive +EXPORT_SYMBOL_GPL vmlinux 0x5cabdced dev_pm_qos_remove_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5cc39f2a ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x5cc3abd2 cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0x5cd3f7e8 regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0x5cf85dc5 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x5d03bf75 device_reset +EXPORT_SYMBOL_GPL vmlinux 0x5d12e48f input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0x5d186979 inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x5d1af7a4 ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0x5d1c1bac blocking_notifier_chain_cond_register +EXPORT_SYMBOL_GPL vmlinux 0x5d2d9566 snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL vmlinux 0x5d469fcf vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x5d519de8 of_init_opp_table +EXPORT_SYMBOL_GPL vmlinux 0x5d51bcf7 scatterwalk_start +EXPORT_SYMBOL_GPL vmlinux 0x5d5ecf95 ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x5d64d60b vtime_guest_exit +EXPORT_SYMBOL_GPL vmlinux 0x5d83c34d of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0x5d8746f6 omap_dm_timer_set_load +EXPORT_SYMBOL_GPL vmlinux 0x5daaa220 __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x5db37300 regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0x5dbc9311 posix_timers_register_clock +EXPORT_SYMBOL_GPL vmlinux 0x5dd4d5df snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL vmlinux 0x5e0f0b39 blkcipher_walk_virt_block +EXPORT_SYMBOL_GPL vmlinux 0x5e0fb905 pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x5e1ccfe5 ping_proc_register +EXPORT_SYMBOL_GPL vmlinux 0x5e369b7e ref_module +EXPORT_SYMBOL_GPL vmlinux 0x5e36b4a3 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x5e3ad14d mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e615a21 exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x5e710d76 serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x5ea81263 twl6040_get_clk_id +EXPORT_SYMBOL_GPL vmlinux 0x5ea8b19a pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0x5eacba1f ahci_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x5eae49e8 snd_soc_put_volsw_s8 +EXPORT_SYMBOL_GPL vmlinux 0x5eb02e7d snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL vmlinux 0x5ecf1714 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x5edf5639 pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x5f127cff inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x5f16aa22 led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0x5f1f51ab lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x5f248f72 set_timer_slack +EXPORT_SYMBOL_GPL vmlinux 0x5f3ccf8f da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x5f419491 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x5f5cfac1 pinctrl_utils_reserve_map +EXPORT_SYMBOL_GPL vmlinux 0x5f69989d hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0x5f6b5089 anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x5fa2f293 md_run +EXPORT_SYMBOL_GPL vmlinux 0x5facefdf ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x5ff5d717 pinctrl_find_and_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x604ae8aa ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x60506751 unmap_kernel_range_noflush +EXPORT_SYMBOL_GPL vmlinux 0x605f0ef9 omap_dm_timer_free +EXPORT_SYMBOL_GPL vmlinux 0x6075d0c7 omap_tll_init +EXPORT_SYMBOL_GPL vmlinux 0x60805a11 regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x6094685f wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a20867 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x60d1d2df driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0x60d5bb0f debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x613d4ae5 class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x61480a76 devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x6148149e inet_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x614e7741 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x616ec083 mtd_get_user_prot_info +EXPORT_SYMBOL_GPL vmlinux 0x6183d0e1 crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x618f3533 pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0x619326dd iommu_present +EXPORT_SYMBOL_GPL vmlinux 0x61bf689d bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x62269b25 rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x622dacba tick_nohz_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x623799e3 usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x624a6406 hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x6276cc0c device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x62ca956a transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x62df68ce pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x62eb9cf5 da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0x62f2c92c usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x63139456 nf_queue_entry_release_refs +EXPORT_SYMBOL_GPL vmlinux 0x6318757f mdio_mux_uninit +EXPORT_SYMBOL_GPL vmlinux 0x631ea58e ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x63205de1 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x633e211d tpm_write +EXPORT_SYMBOL_GPL vmlinux 0x633f8186 amba_apb_device_add +EXPORT_SYMBOL_GPL vmlinux 0x6369f383 dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x63896c99 ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x6390efda of_modalias_node +EXPORT_SYMBOL_GPL vmlinux 0x63a9c06c crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x63ada971 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x63b17abd scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x63d41452 bmp085_probe +EXPORT_SYMBOL_GPL vmlinux 0x63e8b822 anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0x641c5c36 ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0x641fffd4 pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0x6422bb96 cgroup_taskset_cur_css +EXPORT_SYMBOL_GPL vmlinux 0x64256424 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0x64361a2a register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x6443d127 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x64695bb4 ping_close +EXPORT_SYMBOL_GPL vmlinux 0x646ce2f0 of_get_display_timing +EXPORT_SYMBOL_GPL vmlinux 0x647537f3 pl320_ipc_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x64a189f7 __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0x64a6a473 xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0x64e4d846 snd_soc_cache_read +EXPORT_SYMBOL_GPL vmlinux 0x6503f3a3 device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x650bcc52 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x6532044c mtd_block_markbad +EXPORT_SYMBOL_GPL vmlinux 0x6532ec03 tcp_peer_is_proven +EXPORT_SYMBOL_GPL vmlinux 0x65746603 snd_soc_free_ac97_codec +EXPORT_SYMBOL_GPL vmlinux 0x6597b9e4 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x65b28ea0 snd_soc_dpcm_be_get_state +EXPORT_SYMBOL_GPL vmlinux 0x65bbbc78 schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65df58e8 device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x65e6953a spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x65faeeb5 user_read +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x66203269 sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x66262e79 filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0x662a0c3f x509_get_sig_params +EXPORT_SYMBOL_GPL vmlinux 0x6631b847 crypto_givcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x6637fcd3 da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x664b310a pci_renumber_slot +EXPORT_SYMBOL_GPL vmlinux 0x665211ce cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0x666f0d29 snd_dmaengine_pcm_get_chan +EXPORT_SYMBOL_GPL vmlinux 0x66782165 regmap_fields_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x66955d9e hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0x66a66111 snd_soc_debugfs_root +EXPORT_SYMBOL_GPL vmlinux 0x66ae0985 amba_device_add +EXPORT_SYMBOL_GPL vmlinux 0x66bf38c4 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x66f41fa5 irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x670ee745 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0x67128609 __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0x6734295e init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0x674e13e1 public_key_destroy +EXPORT_SYMBOL_GPL vmlinux 0x675047d5 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0x6751a492 kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x675491d8 devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6759f709 tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0x67643d26 pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x67853bce irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x67a59d01 ahci_set_em_messages +EXPORT_SYMBOL_GPL vmlinux 0x67c39ed6 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0x67ef65d1 blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x6812cf8d __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0x684e2311 device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0x68617e80 snd_soc_info_volsw_s8 +EXPORT_SYMBOL_GPL vmlinux 0x68678a49 console_drivers +EXPORT_SYMBOL_GPL vmlinux 0x687934e9 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x687c8732 devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x68956406 static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x6899b4db extcon_set_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x68df4cca tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0x68e47b2c cpdma_ctlr_destroy +EXPORT_SYMBOL_GPL vmlinux 0x6922de89 irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0x6923ce63 irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x692b6b01 ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0x69365bbb usb_string +EXPORT_SYMBOL_GPL vmlinux 0x69447467 ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0x6945725e mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0x694be42a usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0x694f923e ahci_thread_fn +EXPORT_SYMBOL_GPL vmlinux 0x696935e4 irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x697f5bf7 usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x698a899f ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0x69c45ae2 snd_dmaengine_pcm_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x69cc4290 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0x69e9a2cb ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x69eac730 ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a19e1e8 omap_dm_timer_set_int_enable +EXPORT_SYMBOL_GPL vmlinux 0x6a19f924 usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x6a1a64dd phy_pm_runtime_get +EXPORT_SYMBOL_GPL vmlinux 0x6a33163b arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0x6a370177 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x6a44aa28 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x6a49a3c7 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0x6a4f4c51 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0x6a536683 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x6a5fb566 rcu_sched_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x6a6aa702 gpiochip_add_pin_range +EXPORT_SYMBOL_GPL vmlinux 0x6a89c7cb ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0x6ad0913d regmap_field_write +EXPORT_SYMBOL_GPL vmlinux 0x6b29a1fa ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0x6b55e13e part_round_stats +EXPORT_SYMBOL_GPL vmlinux 0x6b770f49 decode_bch +EXPORT_SYMBOL_GPL vmlinux 0x6b9e7ad7 of_clk_src_simple_get +EXPORT_SYMBOL_GPL vmlinux 0x6bed0101 snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x6bfa8831 mtd_point +EXPORT_SYMBOL_GPL vmlinux 0x6c1b09ab gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x6c37ca03 tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x6c49c4f2 clockevents_notify +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c749afe __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x6c9797ab regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6cb56b81 regmap_update_bits_async +EXPORT_SYMBOL_GPL vmlinux 0x6cc78c5c set_irq_flags +EXPORT_SYMBOL_GPL vmlinux 0x6cd21997 ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x6cd4ea62 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0x6cd8256d usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0x6cf6c4c1 led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0x6cf9afad tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0x6d18bfb7 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6d1ba6da pwm_disable +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d31e93b tracepoint_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x6d339861 __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0x6d45e10b ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0x6dc4b9fa xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0x6dfdd58b regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6e04a077 usb_bind_phy +EXPORT_SYMBOL_GPL vmlinux 0x6e05c4e7 ahci_hw_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x6e26de0c dm_kill_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x6e65c57d omap_dm_timer_request +EXPORT_SYMBOL_GPL vmlinux 0x6e746d0f snd_soc_bytes_get +EXPORT_SYMBOL_GPL vmlinux 0x6e7943ec iommu_group_id +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6ea3f676 regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x6ed620c8 ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0x6f07beec usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0x6f1ee69e kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x6f46cca1 ftrace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x6f8b10d7 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x6fbb3bd9 init_rs_non_canonical +EXPORT_SYMBOL_GPL vmlinux 0x6fda93da of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x6fe3d8cf ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x70526b1a fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x707ff1bb ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x70a84bbb wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0x70ba118d md_new_event +EXPORT_SYMBOL_GPL vmlinux 0x70bb651d __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x70bd5852 yield_to +EXPORT_SYMBOL_GPL vmlinux 0x70cd5161 trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x70cf032f usb_hcd_irq +EXPORT_SYMBOL_GPL vmlinux 0x70d85f89 alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0x70e5ef52 pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0x70f05284 usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0x71008581 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x71055e66 gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x710b02d6 sdhci_pci_o2_probe +EXPORT_SYMBOL_GPL vmlinux 0x710c045d ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7126a11f platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7127e664 dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x71375f73 gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x7138279a sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0x715c58ef omap_dm_timer_stop +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71930ed3 of_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x719b930d blk_rq_check_limits +EXPORT_SYMBOL_GPL vmlinux 0x71a79ff9 devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x71acd304 usb_stor_CB_transport +EXPORT_SYMBOL_GPL vmlinux 0x71b3a7a9 snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x71c45e9c regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x71c53fba pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0x71daa0b1 tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x71dc9998 crypto_il_tab +EXPORT_SYMBOL_GPL vmlinux 0x71e36225 public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0x71f64aeb pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x7225e3ac ahci_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x7244706e pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0x7267db00 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x72741f25 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x7291019b __cci_control_port_by_index +EXPORT_SYMBOL_GPL vmlinux 0x72c17615 virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0x72f2bc7b tpm_show_owned +EXPORT_SYMBOL_GPL vmlinux 0x730551d9 sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x73081466 tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0x730bd0c7 asic3_write_register +EXPORT_SYMBOL_GPL vmlinux 0x7316895b uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0x7321bbb3 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x733bc89b xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0x73673c56 regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0x737655b9 adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0x738deac1 br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0x73946dc7 bgpio_init +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73a56b5f of_get_regulator_init_data +EXPORT_SYMBOL_GPL vmlinux 0x73adb2c4 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0x73b5c35b arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x73c832f2 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x73d0b638 usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0x73d69364 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x73e428f1 spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x73f61e98 snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL vmlinux 0x73f7f315 tty_prepare_flip_string_flags +EXPORT_SYMBOL_GPL vmlinux 0x7422c95e gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x74628570 context_tracking +EXPORT_SYMBOL_GPL vmlinux 0x7464ea38 dev_pm_qos_add_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x746fd278 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0x74750d38 imx_usbmisc_init_post +EXPORT_SYMBOL_GPL vmlinux 0x7486e455 relay_close +EXPORT_SYMBOL_GPL vmlinux 0x74954462 timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x74afffe4 unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x74b9578e i2c_new_probed_device +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74e3b5e8 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x750dc7b6 sdhci_enable_irq_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x7529d8b3 bio_trim +EXPORT_SYMBOL_GPL vmlinux 0x752f7fad unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0x754efda3 sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x75611d97 xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x758a782e blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x758ac5b7 md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x7599c19d split_page +EXPORT_SYMBOL_GPL vmlinux 0x75c2b9f1 memalloc_socks +EXPORT_SYMBOL_GPL vmlinux 0x75c8a11c inet_twdr_twkill_work +EXPORT_SYMBOL_GPL vmlinux 0x75cdcbe5 blk_queue_rq_timed_out +EXPORT_SYMBOL_GPL vmlinux 0x75d74925 __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0x76021be2 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x7603cd8f ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0x760b301e ahci_platform_resume_host +EXPORT_SYMBOL_GPL vmlinux 0x76160039 tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x761e0aca btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0x764928a2 cpdma_chan_create +EXPORT_SYMBOL_GPL vmlinux 0x7652caaa ata_base_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x766a04a1 pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x767a4f31 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0x767c1d2c crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7683d149 blkg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x76a330e7 __fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0x76b3d24d sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x76ba2880 omap_dm_timer_set_match +EXPORT_SYMBOL_GPL vmlinux 0x76d07d6e gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x76f634ae perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x76f6930c skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x770cf981 tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x77214cea sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x7726bb42 led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x77445b7b pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x77684d1e mmc_send_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0x7775737f subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x7777c57d snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL vmlinux 0x77beb044 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0x77d05afb ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x77d6f8a5 blkg_lookup_create +EXPORT_SYMBOL_GPL vmlinux 0x77e2709d cpufreq_notify_transition +EXPORT_SYMBOL_GPL vmlinux 0x77fc3de5 sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0x780c7a49 iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0x782090e7 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x7834318d usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0x78368c02 dev_pm_opp_get_freq +EXPORT_SYMBOL_GPL vmlinux 0x7840b42c hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0x78656fe6 pwm_can_sleep +EXPORT_SYMBOL_GPL vmlinux 0x7895cad0 regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x78c9c360 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x78db0447 snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL vmlinux 0x78ee1749 dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x78f65e41 dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0x78f9b713 ahci_print_info +EXPORT_SYMBOL_GPL vmlinux 0x78fff954 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x795d1af3 sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x796c2d48 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x79720ced snd_soc_remove_platform +EXPORT_SYMBOL_GPL vmlinux 0x79908a16 sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x79a647c0 rq_flush_dcache_pages +EXPORT_SYMBOL_GPL vmlinux 0x79aff4fb dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0x79d04a76 sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x79f57c8d pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x79fbc1cd regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0x79fdfa3f omap_mcpdm_configure_dn_offsets +EXPORT_SYMBOL_GPL vmlinux 0x79fef0ac pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0x7a07c5ea snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL vmlinux 0x7a2eace3 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x7a319404 clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x7a431bb2 led_classdev_register +EXPORT_SYMBOL_GPL vmlinux 0x7a48512b vchan_init +EXPORT_SYMBOL_GPL vmlinux 0x7a5f11de iommu_map +EXPORT_SYMBOL_GPL vmlinux 0x7a944007 rcu_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x7aa25379 usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x7aa3df55 pinctrl_dev_get_devname +EXPORT_SYMBOL_GPL vmlinux 0x7aaf6137 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x7ab3ca18 eventfd_ctx_read +EXPORT_SYMBOL_GPL vmlinux 0x7ac60046 ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x7ade46f7 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0x7ae1ae8e cpufreq_frequency_table_put_attr +EXPORT_SYMBOL_GPL vmlinux 0x7b0f1ab3 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7b101194 tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0x7b1d544d edac_handler_set +EXPORT_SYMBOL_GPL vmlinux 0x7b2fcea4 bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0x7b53962a clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x7b570167 snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL vmlinux 0x7b586939 ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0x7b975b2a max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x7ba6378c regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x7bb0c6e4 max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0x7bd7bdae irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0x7bdf247b nfq_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x7bdf486a shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0x7bfbc30d snd_kctl_jack_new +EXPORT_SYMBOL_GPL vmlinux 0x7c227088 clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x7c346357 pkey_algo +EXPORT_SYMBOL_GPL vmlinux 0x7c4c85a9 arm_iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x7c53de2a regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x7c6a49ce unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x7c7c8497 extcon_get_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x7cb682a5 inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x7cc1b7fd max77693_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7cc7de1c x509_check_signature +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7cd72b5f nl_table +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cf008d9 get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0x7d20307c regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0x7d397cc7 gpiod_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7dab26b6 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7dbbac37 __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x7dd6d1df pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x7de7c4ef usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x7deb3f58 usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0x7dfefda1 dev_pm_opp_enable +EXPORT_SYMBOL_GPL vmlinux 0x7e0b776a vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x7e18b5e9 usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0x7e229d48 snd_soc_dapm_kcontrol_codec +EXPORT_SYMBOL_GPL vmlinux 0x7e307b99 sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x7e3a8abf usb_stor_resume +EXPORT_SYMBOL_GPL vmlinux 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7eae77b6 ahci_kick_engine +EXPORT_SYMBOL_GPL vmlinux 0x7eb7b3f8 of_get_dma_window +EXPORT_SYMBOL_GPL vmlinux 0x7ed0c60a phy_get +EXPORT_SYMBOL_GPL vmlinux 0x7ed68941 asic3_read_register +EXPORT_SYMBOL_GPL vmlinux 0x7ed74bf0 pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0x7ed8a450 swiotlb_tbl_unmap_single +EXPORT_SYMBOL_GPL vmlinux 0x7ed9a6b2 regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x7f034fdf spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x7f0d1ded sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0x7f178685 usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x7f1a392c snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL vmlinux 0x7f1adee0 ahci_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x7f54f7b7 sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x7f60e837 __pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x7f81b38e usb_stor_pre_reset +EXPORT_SYMBOL_GPL vmlinux 0x7fab5350 wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7fd2e012 devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x7fe44620 crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x7fe95fed sec_reg_update +EXPORT_SYMBOL_GPL vmlinux 0x7ffff202 mtd_add_partition +EXPORT_SYMBOL_GPL vmlinux 0x8010d2c6 percpu_ida_free +EXPORT_SYMBOL_GPL vmlinux 0x801f62d8 relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0x80352021 skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0x8048b7b5 snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL vmlinux 0x80565099 snd_soc_read +EXPORT_SYMBOL_GPL vmlinux 0x808dba65 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x80a1a6d8 ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x80a65392 tasklet_hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x80c40d50 ahci_reset_controller +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80d92806 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0x80f3268f __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x8139719a devm_spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x8140842a gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x8149ea54 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0x8173e628 dev_pm_opp_find_freq_floor +EXPORT_SYMBOL_GPL vmlinux 0x81831489 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x818d70c0 ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0x8194be00 proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x81d7fac4 ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0x81f45c82 of_usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0x8237afb1 usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x827078cf dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0x827b9d00 dapm_regulator_event +EXPORT_SYMBOL_GPL vmlinux 0x82939ebd rcu_batches_completed_sched +EXPORT_SYMBOL_GPL vmlinux 0x82a8b80c blkg_stat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x82b84391 register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82ebcb9e pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0x82ef8748 max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x8318eb66 clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x83254f56 __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x83348d88 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x834616bb sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x835fbfb5 bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0x837892f7 dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x837d5718 device_create +EXPORT_SYMBOL_GPL vmlinux 0x8386a31e phy_create +EXPORT_SYMBOL_GPL vmlinux 0x838b13e7 ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0x83a5ae2e __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0x83de4850 __ip_route_output_key +EXPORT_SYMBOL_GPL vmlinux 0x83ef0f7b phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x840baad7 scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x84218e5d aead_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0x84277541 dev_pm_opp_get_opp_count +EXPORT_SYMBOL_GPL vmlinux 0x8430cf8b tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0x845722c1 unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x84706cc9 iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x84aab38a rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x84b1208b pwm_set_polarity +EXPORT_SYMBOL_GPL vmlinux 0x84b8333f snd_dmaengine_pcm_open_request_chan +EXPORT_SYMBOL_GPL vmlinux 0x84be5230 mtd_lock +EXPORT_SYMBOL_GPL vmlinux 0x85050965 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x8522d0b4 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x852e568d of_get_nand_ecc_mode +EXPORT_SYMBOL_GPL vmlinux 0x85469eb0 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0x854813d0 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x85555471 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x856629e7 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x856eaa4f regulator_set_optimum_mode +EXPORT_SYMBOL_GPL vmlinux 0x8574ca6c gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x8575dc01 __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0x858393bd device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x85866526 usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0x8598d5a7 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x859ae643 rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x85aa55f6 regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x85b13fe6 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0x85b14d33 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x85c10896 rcu_batches_completed_bh +EXPORT_SYMBOL_GPL vmlinux 0x85c7f674 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x85e5c32c omap_dm_timer_disable +EXPORT_SYMBOL_GPL vmlinux 0x85f71592 regmap_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x85f73f01 wm8350_device_exit +EXPORT_SYMBOL_GPL vmlinux 0x86107c4f fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0x861a7009 get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x86263b68 sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL vmlinux 0x862b9816 cpu_topology +EXPORT_SYMBOL_GPL vmlinux 0x8631ead1 dm_set_device_limits +EXPORT_SYMBOL_GPL vmlinux 0x866b9687 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x86853496 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x869dcf93 mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x869edd5b fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x86afde1b regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x86ba4cee user_destroy +EXPORT_SYMBOL_GPL vmlinux 0x86cd9e9e irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x86db36b7 key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x86e40487 tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0x86e8f0da snd_soc_unregister_codec +EXPORT_SYMBOL_GPL vmlinux 0x86f174f1 sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x86ffbf0b hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0x871cfdd9 kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x872d3591 ata_scsi_simulate +EXPORT_SYMBOL_GPL vmlinux 0x873fbaea edac_atomic_assert_error +EXPORT_SYMBOL_GPL vmlinux 0x87519171 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0x875b6173 pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x877fb3c5 thermal_generate_netlink_event +EXPORT_SYMBOL_GPL vmlinux 0x878ed516 platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x87984b16 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x879cb975 tpm_register_hardware +EXPORT_SYMBOL_GPL vmlinux 0x879cd93d skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0x87ba8758 __cci_control_port_by_device +EXPORT_SYMBOL_GPL vmlinux 0x87bb4e32 of_usb_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x87e14bbe task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0x87e832af exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x8810ad5e crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0x881100c7 pci_cleanup_aer_uncorrect_error_status +EXPORT_SYMBOL_GPL vmlinux 0x883c2740 __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x884a0fae sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x884a360c __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x8851d164 skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0x8890ce86 pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b5647c trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x88de5749 nf_register_afinfo +EXPORT_SYMBOL_GPL vmlinux 0x88f8dba1 snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL vmlinux 0x89179404 snd_kctl_jack_report +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x8972400e ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x89891534 da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89dbdcc1 __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0x8a04b9fe tracepoint_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0x8a27046a omap_dm_timer_write_status +EXPORT_SYMBOL_GPL vmlinux 0x8a2b14ba wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x8a3b1994 fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0x8a66d73e arm_iommu_release_mapping +EXPORT_SYMBOL_GPL vmlinux 0x8a7daf4f i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ad5558c regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x8ae152b5 of_get_nand_bus_width +EXPORT_SYMBOL_GPL vmlinux 0x8b01d671 pinctrl_lookup_state +EXPORT_SYMBOL_GPL vmlinux 0x8b22a45a anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8b2f23d1 ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x8b4818e6 dm_dispatch_request +EXPORT_SYMBOL_GPL vmlinux 0x8b775d3a __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x8b816c33 regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x8b9286d8 kobj_completion_release +EXPORT_SYMBOL_GPL vmlinux 0x8ba854ac ahci_em_messages +EXPORT_SYMBOL_GPL vmlinux 0x8ba9060a tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0x8bb138c6 sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0x8bd086e4 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0x8bd1d559 regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x8bd6e81e wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x8bee12bb ahci_platform_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8c01a414 dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c1545a8 usb_stor_bulk_transfer_buf +EXPORT_SYMBOL_GPL vmlinux 0x8c263bff snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL vmlinux 0x8c297332 snd_soc_bytes_info +EXPORT_SYMBOL_GPL vmlinux 0x8c3fadf3 fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0x8c426148 class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x8c52251c elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8c5d75ee sk_unattached_filter_create +EXPORT_SYMBOL_GPL vmlinux 0x8ce2b21e da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x8ce2e2e6 devres_release +EXPORT_SYMBOL_GPL vmlinux 0x8ce37a8b udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x8cff3089 cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d273293 __clk_register +EXPORT_SYMBOL_GPL vmlinux 0x8d74ac81 ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0x8d91ffea __scsi_get_command +EXPORT_SYMBOL_GPL vmlinux 0x8da17b42 scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x8db5efb5 arm_iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x8df690cd __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x8e05b56f regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x8e1e5797 thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8e2b25c2 videomode_from_timings +EXPORT_SYMBOL_GPL vmlinux 0x8e3b349f shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x8e63c021 snd_dmaengine_pcm_pointer_no_residue +EXPORT_SYMBOL_GPL vmlinux 0x8e676dba device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0x8e7894bd __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x8e8e6bf1 dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x8e9c7933 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x8ebd8ddf zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x8ed6681e ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0x8effebd3 pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x8f01fda1 led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0x8f047409 tegra_pinctrl_probe +EXPORT_SYMBOL_GPL vmlinux 0x8f237176 wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x8f2fa801 amba_apb_device_add_res +EXPORT_SYMBOL_GPL vmlinux 0x8f384995 scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f902a2c gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x8f962d42 pinctrl_pm_select_idle_state +EXPORT_SYMBOL_GPL vmlinux 0x8fa2877a get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x8fa43065 page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x8fd134a5 inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x8ff152ac bmp085_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x8ffde50a crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0x90043c6b sysfs_put +EXPORT_SYMBOL_GPL vmlinux 0x90228869 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x902d21dd da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9042c336 snd_soc_cache_write +EXPORT_SYMBOL_GPL vmlinux 0x90528cca sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x90574050 cci_ace_get_port +EXPORT_SYMBOL_GPL vmlinux 0x90580dbd ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x906156ea deregister_mtd_blktrans +EXPORT_SYMBOL_GPL vmlinux 0x9062c322 ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x90705b7f syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x9082d068 kprobe_decode_arm_table +EXPORT_SYMBOL_GPL vmlinux 0x90844388 bus_register +EXPORT_SYMBOL_GPL vmlinux 0x9090641d usb_stor_CB_reset +EXPORT_SYMBOL_GPL vmlinux 0x90a1004a crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x90a15712 devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x90d2a43c ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x90d79817 snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL vmlinux 0x90e66d47 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0x90e98cff input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0x9106c5df verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x91286982 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x913c2a63 mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL vmlinux 0x918ad429 ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x918f4a0a usb_stor_transparent_scsi_command +EXPORT_SYMBOL_GPL vmlinux 0x9197be28 sdhci_alloc_host +EXPORT_SYMBOL_GPL vmlinux 0x91b34f3c blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x91c9e961 watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0x91d0627e bdi_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x91dad723 pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x92085dd1 register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x926b4270 ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x92921890 crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x92b57248 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x92ca5c50 snd_soc_dapm_sync +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92f56186 dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0x9300ead2 user_match +EXPORT_SYMBOL_GPL vmlinux 0x930ed9b9 of_usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0x934935b1 tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0x936530c6 musb_dma_completion +EXPORT_SYMBOL_GPL vmlinux 0x93b38925 fuse_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0x93e06488 ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0x93f60363 blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x93fe788b dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x94070249 bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x94132ea4 ata_sff_data_xfer_noirq +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x942f7fd9 ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0x945c3337 tpm_show_active +EXPORT_SYMBOL_GPL vmlinux 0x9463ff71 init_bch +EXPORT_SYMBOL_GPL vmlinux 0x948448e6 tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x948c0c92 snd_soc_get_dai_substream +EXPORT_SYMBOL_GPL vmlinux 0x949334db cpdma_ctlr_start +EXPORT_SYMBOL_GPL vmlinux 0x949f9fe4 __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0x94a68723 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x94abb745 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0x94b41897 securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x94b5c925 usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x94e1823c hrtimer_start +EXPORT_SYMBOL_GPL vmlinux 0x950c3d49 extcon_update_state +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x95755b10 register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x95805e15 __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0x9586a6ed cpdma_chan_get_stats +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x9591e25a css_rightmost_descendant +EXPORT_SYMBOL_GPL vmlinux 0x95a00b29 fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x95aebe06 tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0x95b1e20b regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95c578a0 ioremap_page_range +EXPORT_SYMBOL_GPL vmlinux 0x95c86ab7 regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0x95d087d5 watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x95f0d48e pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x95f6ee15 unregister_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x9621849f ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x96225e1f input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0x9623d4e6 dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0x9634bb6c clk_register_mux +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x96799b6c inet_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0x96814c4f devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x96981d72 crypto_unregister_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x969d7722 anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x96a03f50 do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x96a22790 vmcore_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x96af7bb3 ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0x96cce87c pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x96e2d07f sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x96fa3a9d snd_soc_bytes_put +EXPORT_SYMBOL_GPL vmlinux 0x9705a4ac devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x970fe44f snd_compress_new +EXPORT_SYMBOL_GPL vmlinux 0x9730c462 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x974126a2 subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x9745c52a of_fixed_clk_setup +EXPORT_SYMBOL_GPL vmlinux 0x974768ed inet6_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x97704c40 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x97980656 pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x97a3ec56 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x97a9e78b wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x97abe25a tcp_init_congestion_ops +EXPORT_SYMBOL_GPL vmlinux 0x97add8c8 kill_mtd_super +EXPORT_SYMBOL_GPL vmlinux 0x97b12c6b serial8250_tx_dma +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97e251d1 thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x980028d6 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0x9815d71a regmap_read +EXPORT_SYMBOL_GPL vmlinux 0x981d4071 spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x983458c5 sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9859cc1e fuse_get_req_for_background +EXPORT_SYMBOL_GPL vmlinux 0x985a7ce6 device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x9876587b inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x988c6199 iommu_domain_has_cap +EXPORT_SYMBOL_GPL vmlinux 0x98a8d93b cgroup_unload_subsys +EXPORT_SYMBOL_GPL vmlinux 0x98c9f584 klist_init +EXPORT_SYMBOL_GPL vmlinux 0x98d0b669 snd_dmaengine_pcm_open +EXPORT_SYMBOL_GPL vmlinux 0x98ecf426 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x99027399 perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x991484c4 of_property_count_strings +EXPORT_SYMBOL_GPL vmlinux 0x99217488 __get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x9924c496 __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x99477a5b pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x994d60e8 ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x99693b15 pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x9969b5d5 usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0x9973add9 __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x998bb62e pci_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x9997f275 usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x99a6ebff tcp_fetch_timewait_stamp +EXPORT_SYMBOL_GPL vmlinux 0x99c25e1a locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0x99e60d56 omap_dm_timer_trigger +EXPORT_SYMBOL_GPL vmlinux 0x99f03302 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x99f9a914 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x9a0f28f3 snd_dmaengine_pcm_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a181b50 cpufreq_frequency_table_cpuinfo +EXPORT_SYMBOL_GPL vmlinux 0x9a1cfad6 regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x9a29d6fe crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x9a5075a2 pci_reset_bridge_secondary_bus +EXPORT_SYMBOL_GPL vmlinux 0x9a7d1c46 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0x9a87445a ablkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x9a89dbf7 lpddr2_jedec_min_tck +EXPORT_SYMBOL_GPL vmlinux 0x9abc1c47 pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9ac15394 sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9aca444b get_monotonic_boottime +EXPORT_SYMBOL_GPL vmlinux 0x9aeabc48 regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9b011410 regmap_fields_write +EXPORT_SYMBOL_GPL vmlinux 0x9b1ab276 pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0x9b2f891d __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0x9b391822 dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x9b5c583a tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0x9bd816e9 usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x9be97d6c debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0x9bea7a40 wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9bf7afd9 led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x9c052aa4 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0x9c3e5b59 percpu_ida_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9c3eca94 register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0x9c40be8a ata_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x9c6860c6 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0x9ca47a85 pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0x9cb160c6 fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9cdc9867 cpdma_ctlr_stop +EXPORT_SYMBOL_GPL vmlinux 0x9cf46b5e snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL vmlinux 0x9d053513 usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x9d0dbc0e unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x9d138533 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x9d4b72d4 pinctrl_pm_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x9d4be8dc sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x9d766334 snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL vmlinux 0x9d8167f5 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0x9d8331c0 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x9da78078 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0x9dae4e7c snd_soc_limit_volume +EXPORT_SYMBOL_GPL vmlinux 0x9db42097 i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0x9db9475c thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0x9dbcf1e8 usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0x9dfdf722 gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0x9e02cdaf powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0x9e458cf1 omap_dm_timer_set_source +EXPORT_SYMBOL_GPL vmlinux 0x9e937c44 stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x9e93c7f3 tegra_usb_phy_postresume +EXPORT_SYMBOL_GPL vmlinux 0x9e98df97 netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x9ea556f8 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9ebe90ba ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x9ebfe06e list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0x9ec6a1ba adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x9ed13b0f gpio_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9eee094d amba_ahb_device_add +EXPORT_SYMBOL_GPL vmlinux 0x9f0664bf dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0x9f150cc7 ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x9f21677e blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0x9f30e5eb device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x9f3f1da8 bsg_request_fn +EXPORT_SYMBOL_GPL vmlinux 0x9f3f98e1 of_get_nand_on_flash_bbt +EXPORT_SYMBOL_GPL vmlinux 0x9f5e709f adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0x9f6582b0 bio_clone_mddev +EXPORT_SYMBOL_GPL vmlinux 0x9f9457c1 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0x9fc649ef usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9fecde47 kobj_completion_init +EXPORT_SYMBOL_GPL vmlinux 0xa00141bb sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0xa0316846 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0xa033df40 clk_register_divider +EXPORT_SYMBOL_GPL vmlinux 0xa0393529 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0xa06028a9 __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa064f393 ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xa0ab25d8 pinctrl_remove_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xa0c6f87d snd_soc_cnew +EXPORT_SYMBOL_GPL vmlinux 0xa0ce62e7 shash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0xa0ceadf7 ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0xa0ea1d4b __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0xa12d929d desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xa1719d50 devm_phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa1b591cc snd_soc_codec_readable_register +EXPORT_SYMBOL_GPL vmlinux 0xa1bd7822 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xa1fffb3c arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0xa248d9c9 of_extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL vmlinux 0xa2b8c1ba add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0xa2b9c993 clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0xa2c537fa da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xa2c79d16 device_find_child +EXPORT_SYMBOL_GPL vmlinux 0xa2e44cf8 scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xa2e4a04c __clocksource_updatefreq_scale +EXPORT_SYMBOL_GPL vmlinux 0xa3043a4b driver_attach +EXPORT_SYMBOL_GPL vmlinux 0xa3117d89 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0xa316daf7 ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0xa32fed62 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xa33c6c1a ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xa343583c da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xa352aca6 fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0xa356108b ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xa35ac6ea device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa38bddb3 crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a07a4b module_mutex +EXPORT_SYMBOL_GPL vmlinux 0xa3ad1f38 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3ccb8ca mtd_panic_write +EXPORT_SYMBOL_GPL vmlinux 0xa3e7c113 ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0xa3eced84 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0xa47197d1 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa4926a1c handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0xa49caad4 crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0xa4b2c0e2 __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0xa4b37c17 register_mtd_parser +EXPORT_SYMBOL_GPL vmlinux 0xa4b7e2ea usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0xa4ea04ee of_property_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0xa4ece59b omap_dm_timer_enable +EXPORT_SYMBOL_GPL vmlinux 0xa56283c4 tpm_show_enabled +EXPORT_SYMBOL_GPL vmlinux 0xa5654eee usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0xa588de06 pinconf_generic_dump_config +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa5f0e486 ata_do_eh +EXPORT_SYMBOL_GPL vmlinux 0xa5f8854a usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xa61b1477 tracepoint_iter_start +EXPORT_SYMBOL_GPL vmlinux 0xa620b293 spi_unregister_master +EXPORT_SYMBOL_GPL vmlinux 0xa625110d kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0xa6354998 skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0xa63c3f04 rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0xa6569c72 dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0xa65e0d29 blk_queue_dma_drain +EXPORT_SYMBOL_GPL vmlinux 0xa67517a0 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0xa6839dbb __ablkcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0xa68f4d59 fuse_conn_kill +EXPORT_SYMBOL_GPL vmlinux 0xa6946ba0 pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0xa69a452e irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0xa6a0a273 max77693_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6d66008 mtd_get_device_size +EXPORT_SYMBOL_GPL vmlinux 0xa6d6f6d0 add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa724257f init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0xa728626c unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xa72c0cd3 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xa73da107 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0xa74ae397 tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0xa75312bc call_rcu_sched +EXPORT_SYMBOL_GPL vmlinux 0xa758eb26 virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0xa76196bc get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0xa77302b6 __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0xa77d4ebe ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0xa78e62ce rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0xa7903fdc find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0xa7929e93 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0xa7a66480 replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0xa7a90101 inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xa7aed12e devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xa7f5b806 fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0xa7f6c674 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0xa7f92105 add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0xa81fe08b page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0xa836a145 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xa8404749 raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0xa8439eaa ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa85d9697 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0xa8714c5f dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0xa89f63f8 ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa8bc717e percpu_ida_free_tags +EXPORT_SYMBOL_GPL vmlinux 0xa8e98132 btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0xa910eb2a ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0xa960f42b sysfs_notify_dirent +EXPORT_SYMBOL_GPL vmlinux 0xa967cf7c usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0xa980af16 RSA_public_key_algorithm +EXPORT_SYMBOL_GPL vmlinux 0xa98943b4 iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0xa9a12902 pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0xa9ac0fd4 omap_iopgtable_store_entry +EXPORT_SYMBOL_GPL vmlinux 0xa9c22a39 __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0xa9c7697e del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL vmlinux 0xa9dd16fd sec_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xa9e0c4b2 pinctrl_find_gpio_range_from_pin +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9f329e0 device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0xa9f46219 vtime_common_account_irq_enter +EXPORT_SYMBOL_GPL vmlinux 0xa9fb74a2 of_device_is_stdout_path +EXPORT_SYMBOL_GPL vmlinux 0xa9fd1ce9 snd_soc_codec_set_sysclk +EXPORT_SYMBOL_GPL vmlinux 0xaa1ea901 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0xaa2a72bf __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0xaa44acff omap_tll_disable +EXPORT_SYMBOL_GPL vmlinux 0xaa4c09d4 gpio_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xaa540490 srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xaa5a00ff eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0xaa70f199 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xaa7263a2 device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0xaa9864e6 class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaab45034 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0xaabe7c83 ahci_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xaad26e4f pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0xaae0c7c5 pci_intx +EXPORT_SYMBOL_GPL vmlinux 0xaae0da00 sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0xaae54b69 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0xaae605aa wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xab2e2e88 usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0xab5280b2 ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xab6babaf pm_qos_request +EXPORT_SYMBOL_GPL vmlinux 0xab8d307b regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0xab9e73aa tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0xaba507a6 pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0xabbf35ab device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0xabc19d22 of_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xabda1e2e decode_rs16 +EXPORT_SYMBOL_GPL vmlinux 0xabe33958 devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xabe6d27d con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0xabe9a47a skb_segment +EXPORT_SYMBOL_GPL vmlinux 0xabf0e761 rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0xabf68fd3 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0xac481452 usb_stor_probe2 +EXPORT_SYMBOL_GPL vmlinux 0xac73c4c4 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0xaca0ab6b disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xacc42e49 wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0xace5c0fc usb_bus_list +EXPORT_SYMBOL_GPL vmlinux 0xaceee153 snd_soc_cache_sync +EXPORT_SYMBOL_GPL vmlinux 0xacf58c36 sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0xad25d58c task_current_syscall +EXPORT_SYMBOL_GPL vmlinux 0xad376749 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0xad3a93c0 ping_seq_fops +EXPORT_SYMBOL_GPL vmlinux 0xad84e413 snd_soc_unregister_component +EXPORT_SYMBOL_GPL vmlinux 0xad90d6f2 crypto_ahash_type +EXPORT_SYMBOL_GPL vmlinux 0xadc785ec kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0xadc7bfbe phy_power_on +EXPORT_SYMBOL_GPL vmlinux 0xadcbf88d pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0xadd2ba00 dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0xadf51dd3 regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xadf6aa4d tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xadfe98fd extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xae1d6227 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0xae2554c4 of_clk_src_onecell_get +EXPORT_SYMBOL_GPL vmlinux 0xae388c6b tpm_show_pubek +EXPORT_SYMBOL_GPL vmlinux 0xae3cfd1c cgroup_is_descendant +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae7021f6 snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae7e5b24 __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xae8aa931 dev_pm_opp_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0xae950882 crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0xae9856a4 unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xae9f9d59 nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xaef1b8b6 gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0xaefccfd1 ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0xaefe0991 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xaf21330d posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xaf2810b5 of_pci_msi_chip_remove +EXPORT_SYMBOL_GPL vmlinux 0xaf348da7 cpu_pm_exit +EXPORT_SYMBOL_GPL vmlinux 0xaf55718b edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0xafa1a886 fill_inquiry_response +EXPORT_SYMBOL_GPL vmlinux 0xafd7fd50 class_find_device +EXPORT_SYMBOL_GPL vmlinux 0xaff43211 omap_dm_timer_get_fclk +EXPORT_SYMBOL_GPL vmlinux 0xb050f329 init_rs +EXPORT_SYMBOL_GPL vmlinux 0xb055ef10 ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL vmlinux 0xb07871c4 ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0xb080a540 iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xb0950d80 usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0xb09b680b phy_power_off +EXPORT_SYMBOL_GPL vmlinux 0xb0ab6126 irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0d1417f musb_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xb0d2aea8 dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb0ec9c49 ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0xb0ed75f8 devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0xb10bfce5 otg_ulpi_create +EXPORT_SYMBOL_GPL vmlinux 0xb10d55bc cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0xb11df933 irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xb125ceb2 cpdma_control_set +EXPORT_SYMBOL_GPL vmlinux 0xb140d14c ring_buffer_read +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb156089e pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0xb156eb43 usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xb16ad3ad sdhci_suspend_host +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb185e796 extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0xb1966b24 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0xb19b9223 pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0xb19f8714 spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xb1a7e3f6 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0xb1acbcce rcu_barrier_sched +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1c0c1c2 async_schedule_domain +EXPORT_SYMBOL_GPL vmlinux 0xb1c2b3fa ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xb1c79131 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0xb1d8b899 pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0xb1df2180 ahci_ops +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1e38668 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb243adb0 iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0xb24c3581 mtd_block_isbad +EXPORT_SYMBOL_GPL vmlinux 0xb264a498 regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb2662bf8 usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0xb279c678 ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0xb293d8f7 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0xb29cc4ff driver_find +EXPORT_SYMBOL_GPL vmlinux 0xb2a32bd8 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xb2aa0617 simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0xb2b8b5ad usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xb2c2b4ab __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb3113be0 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0xb33efab7 driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xb34235c4 extcon_unregister_interest +EXPORT_SYMBOL_GPL vmlinux 0xb350447c crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0xb3661ddb tps65912_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xb36a3dd4 cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0xb3724f1e usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0xb3818025 gpiochip_add_pingroup_range +EXPORT_SYMBOL_GPL vmlinux 0xb383c4e3 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xb392f27a cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xb3955504 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0xb3c0dcce crypto_rng_type +EXPORT_SYMBOL_GPL vmlinux 0xb3e76238 regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0xb3f5cc9a key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xb4261912 serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xb45613ea __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0xb4657d49 omap_dm_timer_read_status +EXPORT_SYMBOL_GPL vmlinux 0xb4aaf736 pwm_enable +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4c9f87a of_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xb4ccf0ac sdhci_remove_host +EXPORT_SYMBOL_GPL vmlinux 0xb4cf0322 btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb4e5fc05 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4fe3b26 sdhci_get_of_property +EXPORT_SYMBOL_GPL vmlinux 0xb510a376 disk_get_part +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb53620d1 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0xb55b26e9 ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0xb58dcfa2 synchronize_sched_expedited +EXPORT_SYMBOL_GPL vmlinux 0xb5a0e11e lpddr2_jedec_addressing_table +EXPORT_SYMBOL_GPL vmlinux 0xb5cb8145 hrtimer_get_res +EXPORT_SYMBOL_GPL vmlinux 0xb5d26403 usb_gen_phy_init +EXPORT_SYMBOL_GPL vmlinux 0xb5e896fb tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0xb5f0b88a platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb5f17edf perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb5f8ba3c ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xb5f8d89f pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0xb5fd98af regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0xb6015776 sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xb61e7fbc kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb634f58a get_mtd_device_nm +EXPORT_SYMBOL_GPL vmlinux 0xb63a365d usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xb67b2219 cm_suspend_again +EXPORT_SYMBOL_GPL vmlinux 0xb67c64fd __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0xb68a05e7 get_device +EXPORT_SYMBOL_GPL vmlinux 0xb69271c5 single_release_net +EXPORT_SYMBOL_GPL vmlinux 0xb6aeb661 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xb6c635af wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb6d96944 pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0xb6f2c578 __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0xb7151b60 tegra_ehci_phy_restore_start +EXPORT_SYMBOL_GPL vmlinux 0xb74fe98a blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0xb771e6b7 bL_switch_request_cb +EXPORT_SYMBOL_GPL vmlinux 0xb77cb0a8 cpdma_chan_submit +EXPORT_SYMBOL_GPL vmlinux 0xb7af4ec2 mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xb7ea6e37 snd_soc_unregister_card +EXPORT_SYMBOL_GPL vmlinux 0xb7f77027 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0xb82566eb omap_tll_enable +EXPORT_SYMBOL_GPL vmlinux 0xb82dff4d pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xb8346aeb percpu_ida_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb8434c07 snd_dmaengine_pcm_trigger +EXPORT_SYMBOL_GPL vmlinux 0xb85886a5 tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0xb85d969f blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0xb8647f2a mdio_mux_init +EXPORT_SYMBOL_GPL vmlinux 0xb8736d29 regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0xb8be7135 usb_bus_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xb8f80ea7 perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0xb90e7754 pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0xb911be74 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0xb912febc usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0xb91507ba ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0xb9176155 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0xb92ef016 blk_queue_flush +EXPORT_SYMBOL_GPL vmlinux 0xb93c93bc tcp_death_row +EXPORT_SYMBOL_GPL vmlinux 0xb93ccd69 pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0xb946e1b9 posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0xb94fc83b __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xb95fda5e pinctrl_utils_dt_free_map +EXPORT_SYMBOL_GPL vmlinux 0xb968de29 snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9bcb080 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9cf4753 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9d26fca netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0xb9da2997 snmp_fold_field64 +EXPORT_SYMBOL_GPL vmlinux 0xb9e87b94 bL_switcher_trace_trigger +EXPORT_SYMBOL_GPL vmlinux 0xba1c6ea5 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0xba1c7427 register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xba3ed1ff crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0xba43edd2 cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xba4cf779 dma_buf_kunmap +EXPORT_SYMBOL_GPL vmlinux 0xba626f0e virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0xba762f4e ata_sas_port_async_resume +EXPORT_SYMBOL_GPL vmlinux 0xba7edc70 regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0xba95c3a1 dev_pm_opp_add +EXPORT_SYMBOL_GPL vmlinux 0xbaa42660 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0xbaaa4082 tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0xbab276eb sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0xbab2cc03 devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0xbabbe39a tcp_is_cwnd_limited +EXPORT_SYMBOL_GPL vmlinux 0xbadf2ebe mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL vmlinux 0xbae5e30b uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0xbaf59f32 inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0xbafcad4a snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL vmlinux 0xbb038ce4 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb0b875f iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xbb11cfba klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xbb160585 ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0xbb1f0924 platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0xbb8059f7 usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0xbb91d403 snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL vmlinux 0xbb93d057 map_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xbbbf4b4e ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xbbc5ca88 bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0xbbcdd59d snd_soc_register_card +EXPORT_SYMBOL_GPL vmlinux 0xbc0c7eb8 pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0xbc22843c sdhci_resume_host +EXPORT_SYMBOL_GPL vmlinux 0xbc47e36b usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0xbc6ab1b7 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0xbc9019c7 nand_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0xbca7b001 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0xbca9e4e5 skb_gso_transport_seglen +EXPORT_SYMBOL_GPL vmlinux 0xbcac6160 pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbcaf3971 crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0xbcb017af snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL vmlinux 0xbcbaa80a __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0xbcc02efd crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0xbccbb65a sdhci_free_host +EXPORT_SYMBOL_GPL vmlinux 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbcdc2b03 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbcf89ab6 __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0xbd20588c snd_dmaengine_pcm_register +EXPORT_SYMBOL_GPL vmlinux 0xbd49e88b netlink_alloc_skb +EXPORT_SYMBOL_GPL vmlinux 0xbd4c7d8b pci_ioremap_io +EXPORT_SYMBOL_GPL vmlinux 0xbd5144fc usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0xbd5cb8b9 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0xbd716e0c tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0xbdb720f0 inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xbdc080ca ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0xbdc2a8e0 register_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0xbdd295f0 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xbdd2f42a rcu_bh_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0xbdf512de free_bch +EXPORT_SYMBOL_GPL vmlinux 0xbe1887e4 ata_unpack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xbe29be9f mtd_unlock +EXPORT_SYMBOL_GPL vmlinux 0xbe422da2 platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0xbe43bafd class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xbe63ff0f snd_soc_add_codec_controls +EXPORT_SYMBOL_GPL vmlinux 0xbe6c5a4f regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xbe7295fd blk_add_request_payload +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbea7814b get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0xbee56ffa dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf0ef87e arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xbf6a65bc fuse_request_send +EXPORT_SYMBOL_GPL vmlinux 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL vmlinux 0xbfd439e5 task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xbfe1a492 wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0xc00131cf visitor64 +EXPORT_SYMBOL_GPL vmlinux 0xc02c2e9d crypto_register_pcomp +EXPORT_SYMBOL_GPL vmlinux 0xc031ae6b ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xc03b831d mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL vmlinux 0xc0401e3d tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0xc047c462 pci_intx_mask_supported +EXPORT_SYMBOL_GPL vmlinux 0xc081c246 bL_switcher_put_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc08647ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc09013fe usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0xc0bf6ead timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xc0c98572 ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0xc0ccc521 ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0xc0d01bc0 percpu_ref_cancel_init +EXPORT_SYMBOL_GPL vmlinux 0xc0d26387 kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc0e75cec visitor128 +EXPORT_SYMBOL_GPL vmlinux 0xc0f087e7 snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL vmlinux 0xc0f7e51b inet_hash +EXPORT_SYMBOL_GPL vmlinux 0xc0f9126e i2c_new_dummy +EXPORT_SYMBOL_GPL vmlinux 0xc110892a devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xc114ed7f usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xc11b45c6 gpiod_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xc11bd00f tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc11e051c ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0xc15a0c9c xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc1790e3f devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0xc1791589 pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0xc18578ed process_srcu +EXPORT_SYMBOL_GPL vmlinux 0xc193604c ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0xc1979482 dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0xc19ae46d vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0xc1a12729 fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0xc21fa49a ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc22b7b1e usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0xc258d1b6 crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc28dc76c ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0xc2a01635 usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0xc2a640dd fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0xc2e8d114 ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0xc2edbcd5 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0xc2fbeaf1 crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0xc2fd2160 vchan_dma_desc_free_list +EXPORT_SYMBOL_GPL vmlinux 0xc307bfcc clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0xc30b3a36 scatterwalk_map +EXPORT_SYMBOL_GPL vmlinux 0xc338db57 wm8400_block_read +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc34efe27 snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0xc37226a5 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xc385ca3e phy_pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0xc385cb58 perf_num_counters +EXPORT_SYMBOL_GPL vmlinux 0xc3928217 usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0xc3a75b0c crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0xc3b93bba klist_next +EXPORT_SYMBOL_GPL vmlinux 0xc3bc6e5f iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0xc3e3842e usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0xc3e486a3 clockevents_unbind +EXPORT_SYMBOL_GPL vmlinux 0xc3e9e4eb snd_dmaengine_pcm_close_release_chan +EXPORT_SYMBOL_GPL vmlinux 0xc406dfb1 tpm_read +EXPORT_SYMBOL_GPL vmlinux 0xc41e0178 btree_last +EXPORT_SYMBOL_GPL vmlinux 0xc421aa7c sec_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc438ad7a fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0xc448f22b kallsyms_on_each_symbol +EXPORT_SYMBOL_GPL vmlinux 0xc454fc7b twl_get_type +EXPORT_SYMBOL_GPL vmlinux 0xc471c67a twl4030_audio_disable_resource +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc49564fa tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xc4b10170 dev_pm_opp_find_freq_ceil +EXPORT_SYMBOL_GPL vmlinux 0xc4c6d354 snd_soc_get_volsw_s8 +EXPORT_SYMBOL_GPL vmlinux 0xc4cadcb2 serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0xc5694ddb ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc5a17eb3 spi_master_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc5a6bc59 snd_dmaengine_pcm_prepare_slave_config +EXPORT_SYMBOL_GPL vmlinux 0xc5c8c53e of_pci_find_msi_chip_by_node +EXPORT_SYMBOL_GPL vmlinux 0xc5d37180 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0xc5d5513e cpdma_chan_process +EXPORT_SYMBOL_GPL vmlinux 0xc5da10ed sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0xc5e8301e sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0xc60e6576 devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0xc60f75ec __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc625d5d4 bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xc63a1109 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc63a8818 ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0xc649229a clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0xc65d3eed ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc685c037 cpdma_check_free_tx_desc +EXPORT_SYMBOL_GPL vmlinux 0xc68aa090 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xc690866c irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc6ee2823 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xc6fe55db snd_soc_add_platform +EXPORT_SYMBOL_GPL vmlinux 0xc705d5a3 subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc7278d49 snd_soc_add_card_controls +EXPORT_SYMBOL_GPL vmlinux 0xc72e1233 __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xc75003e0 pci_ats_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xc766f5a8 flush_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0xc79d7a73 usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7bab57c snd_soc_unregister_platform +EXPORT_SYMBOL_GPL vmlinux 0xc7c6391c mpi_set_buffer +EXPORT_SYMBOL_GPL vmlinux 0xc7e39bca ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc8060ee2 fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0xc8063d24 snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL vmlinux 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL vmlinux 0xc84c31ee crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0xc852b60f fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc85e4bee napi_by_id +EXPORT_SYMBOL_GPL vmlinux 0xc8646f2f rtc_irq_register +EXPORT_SYMBOL_GPL vmlinux 0xc86722b9 crypto_init_ahash_spawn +EXPORT_SYMBOL_GPL vmlinux 0xc87c1f84 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xc885775f ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0xc892425f blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0xc8add232 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0xc8b4d0c5 pinctrl_pm_select_sleep_state +EXPORT_SYMBOL_GPL vmlinux 0xc8b96a93 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc8c73515 dma_buf_kmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0xc8d4e6a3 sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0xc90eb968 sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc93173a0 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc967b3ab invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0xc969477c sec_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xc97d1140 cpufreq_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0xc997d4d2 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0xc9cd572f regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0xc9cfa97f of_pci_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0xc9e78b67 unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xc9f8fcda sysfs_schedule_callback +EXPORT_SYMBOL_GPL vmlinux 0xca03322e sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0xca0f21d9 rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xca20e11d da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0xca7acbfb perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca85d8cf tracepoint_probe_update_all +EXPORT_SYMBOL_GPL vmlinux 0xca946187 of_clk_add_provider +EXPORT_SYMBOL_GPL vmlinux 0xcaa13cec balloon_devinfo_alloc +EXPORT_SYMBOL_GPL vmlinux 0xcade549f ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0xcae01e67 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0xcb0b5e8e of_display_timings_exist +EXPORT_SYMBOL_GPL vmlinux 0xcb11a771 phy_exit +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb2b58ee snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL vmlinux 0xcb2f1c55 vchan_tx_submit +EXPORT_SYMBOL_GPL vmlinux 0xcb3286c6 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0xcb469d2b ddebug_add_module +EXPORT_SYMBOL_GPL vmlinux 0xcb604f28 pinctrl_utils_add_map_configs +EXPORT_SYMBOL_GPL vmlinux 0xcb72f825 blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0xcb788dcb dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0xcb8938b1 md_stop +EXPORT_SYMBOL_GPL vmlinux 0xcb8a22c8 ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xcb9b162e clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0xcb9e29db pinctrl_dev_get_name +EXPORT_SYMBOL_GPL vmlinux 0xcb9e5219 ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xcbb5aa2a snd_soc_platform_trigger +EXPORT_SYMBOL_GPL vmlinux 0xcbe10c96 ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0xcbee20b2 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0xcc1f1c3d inet_twdr_hangman +EXPORT_SYMBOL_GPL vmlinux 0xcc44004d ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0xcc519316 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0xcc85fcb6 async_schedule +EXPORT_SYMBOL_GPL vmlinux 0xccab9778 cpufreq_table_validate_and_show +EXPORT_SYMBOL_GPL vmlinux 0xccbfe1a2 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xcccbf853 tps65912_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccd5b016 __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0xccf8fcd1 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0xcd16ff63 skcipher_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0xcd50e0b3 irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcd91d925 sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0xcd995e65 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL vmlinux 0xcda2b728 bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xce0b9b59 max77693_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xce12d4f8 relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0xce46e140 ktime_get_ts +EXPORT_SYMBOL_GPL vmlinux 0xce5ab953 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0xce6a1f3a inet_csk_reqsk_queue_prune +EXPORT_SYMBOL_GPL vmlinux 0xce6a9d9a trace_current_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce793e41 tpm_release +EXPORT_SYMBOL_GPL vmlinux 0xce808b13 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0xce8b6360 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0xceadc5bb spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0xcec5b226 ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0xcec63006 find_module +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcee9d12f crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0xcef2d6ea __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0xcf2c3bef led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf566628 dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0xcf6ebe58 blkcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0xcf8905b5 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0xcf9e10a2 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0xcfc68341 synchronize_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0xcfefabf8 device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0xd011a470 pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd01ce4ca vchan_find_desc +EXPORT_SYMBOL_GPL vmlinux 0xd0334525 led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd03c7700 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd0776385 snd_compress_deregister +EXPORT_SYMBOL_GPL vmlinux 0xd08d460b regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xd0995b4e virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0xd0aa10c6 sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL vmlinux 0xd0b222b9 usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0c23f09 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0xd0c92560 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0xd0d0e2e9 input_class +EXPORT_SYMBOL_GPL vmlinux 0xd0e1a150 alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0xd11acfc8 tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0xd1475ede usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0xd14bc4d9 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xd14ff228 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0xd1562938 of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd16712f3 crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xd1822f0b cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xd18a8548 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0xd18b976f extcon_get_cable_state +EXPORT_SYMBOL_GPL vmlinux 0xd18ec0e7 stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0xd1a067ba usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0xd1b2db37 tracepoint_probe_register_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xd1c38030 of_irq_parse_and_map_pci +EXPORT_SYMBOL_GPL vmlinux 0xd1c509d1 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0xd1e28035 pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0xd1e771fa crypto_tfm_in_queue +EXPORT_SYMBOL_GPL vmlinux 0xd1f0a011 usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd24f5f5d regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0xd258217d clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0xd26022b4 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd27a4940 vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0xd27a5033 pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0xd281aaaa elv_register +EXPORT_SYMBOL_GPL vmlinux 0xd2aaeb4e kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0xd2c45ea4 of_pci_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0xd2f2bfe1 mtd_table_mutex +EXPORT_SYMBOL_GPL vmlinux 0xd2fd9599 class_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd32fe193 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xd3320d9e fuse_request_send_background +EXPORT_SYMBOL_GPL vmlinux 0xd33ada8b cci_probed +EXPORT_SYMBOL_GPL vmlinux 0xd34fc035 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xd36882d9 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0xd39b712e tcp_reno_min_cwnd +EXPORT_SYMBOL_GPL vmlinux 0xd3b83263 extcon_register_interest +EXPORT_SYMBOL_GPL vmlinux 0xd3bcda75 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0xd3dc587d ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0xd3ffea12 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd41b59b1 __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0xd4347187 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd44c2f38 cci_disable_port_by_cpu +EXPORT_SYMBOL_GPL vmlinux 0xd46d29f2 led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0xd47f6566 usb_gadget_map_request +EXPORT_SYMBOL_GPL vmlinux 0xd481f09d serial8250_rx_dma +EXPORT_SYMBOL_GPL vmlinux 0xd4b55f02 omap_install_iommu_arch +EXPORT_SYMBOL_GPL vmlinux 0xd4b94d7c perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0xd4bac9d2 pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xd4bc6620 regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4cad45e clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xd4cbab8a ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0xd4ec0f7d snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL vmlinux 0xd4f16a80 crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0xd517f0f6 file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0xd5279d9b crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xd53da4e3 omap_dm_timers_active +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd5bd7dac ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0xd5db845c driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xd5e1dd85 ping_hash +EXPORT_SYMBOL_GPL vmlinux 0xd5fb8481 omap_dm_timer_request_by_cap +EXPORT_SYMBOL_GPL vmlinux 0xd605b971 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0xd630eab9 snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL vmlinux 0xd6505d86 transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0xd6514b85 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd686eca4 of_reset_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xd698eaff stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0xd6c2e04b __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0xd6cb286b scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0xd705b4c7 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0xd75cdd37 md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd7790f3a pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0xd77c0bc8 klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xd787b9c2 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xd788742d perf_trace_buf_prepare +EXPORT_SYMBOL_GPL vmlinux 0xd798b6ce iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0xd7bd5314 ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0xd7d76cf1 sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0xd7d79132 put_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0xd7f44694 usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0xd81de62c ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xd81ffcd3 wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0xd820c283 eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xd8218dd7 pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0xd82d3c9d usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0xd8453307 sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0xd8525ea7 fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0xd857c467 uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0xd87601cc ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd88f2aee fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0xd898cd9c enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xd89f3adb ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0xd8a182ec extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd8cbbe12 usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xd8d2bb0c wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xd8e72745 pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0xd8e830fe ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0xd8f5b29b init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xd8fa7c56 gov_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xd9006947 __of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0xd904e5e0 simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0xd90e9603 crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0xd927a9d5 regmap_update_bits_check +EXPORT_SYMBOL_GPL vmlinux 0xd927c470 cgroup_load_subsys +EXPORT_SYMBOL_GPL vmlinux 0xd927cdb3 pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0xd9371d72 usb_stor_control_msg +EXPORT_SYMBOL_GPL vmlinux 0xd942d353 ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0xd94910f2 ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0xd94aa457 display_timings_release +EXPORT_SYMBOL_GPL vmlinux 0xd94cb378 tpm_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0xd95a023d spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0xd9a34035 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0xd9d28c6b crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0xd9da0827 fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd9ecb670 ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xd9f766b3 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0xd9fb4fbc gpiochip_remove_pin_ranges +EXPORT_SYMBOL_GPL vmlinux 0xda14c045 device_create_vargs +EXPORT_SYMBOL_GPL vmlinux 0xda44cb37 setup_charger_manager +EXPORT_SYMBOL_GPL vmlinux 0xda4a1ee7 ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0xda778046 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0xda87c038 of_phy_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xda96226b sdhci_pltfm_init +EXPORT_SYMBOL_GPL vmlinux 0xdaaa00e5 dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0xdab69db9 regmap_update_bits_check_async +EXPORT_SYMBOL_GPL vmlinux 0xdabe798e blkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xdac11bae of_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xdac15be0 pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0xdae715e0 videomode_from_timing +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdb04cacc tracepoint_probe_unregister_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xdb4f8dd8 pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xdb6a096a pinconf_generic_dt_node_to_map +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdb8c230b md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0xdba4ad93 static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0xdba80fc1 of_fdt_unflatten_tree +EXPORT_SYMBOL_GPL vmlinux 0xdbe92bb2 rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdbfaf04d crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0xdc083242 debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0xdc179e52 __rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0xdc1900ff pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0xdc1e15f1 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xdc30f3d8 usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xdc461430 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0xdc47d64d ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0xdc515d1c dma_buf_kmap +EXPORT_SYMBOL_GPL vmlinux 0xdc5e2923 inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0xdc616ad2 device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0xdc643c75 ata_eh_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0xdc7c7647 iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc8aa040 swiotlb_tbl_sync_single +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9dce46 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdca83514 scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0xdce74f7a proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0xdd0935f4 devm_phy_get +EXPORT_SYMBOL_GPL vmlinux 0xdd21f1ce regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0xdd256641 sdhci_pci_o2_probe_slot +EXPORT_SYMBOL_GPL vmlinux 0xdd2efc0f ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd5801f9 wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0xdd60dc8c power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0xdd669a15 tps65912_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0xdd68b12a crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0xdd7209cc usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xdda4bdb3 blkg_prfill_stat +EXPORT_SYMBOL_GPL vmlinux 0xddabf495 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0xddcb7d3d usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0xddd2b69f usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0xddd58dc0 ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0xde224e42 led_trigger_store +EXPORT_SYMBOL_GPL vmlinux 0xde23c98e raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0xde2c5a6e alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0xde3ddd60 tps65912_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xde4f1552 devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0xde5e369e regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0xde7a2e31 crypto_alloc_pcomp +EXPORT_SYMBOL_GPL vmlinux 0xde9d389d ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xdea217de dev_hard_start_xmit +EXPORT_SYMBOL_GPL vmlinux 0xdebc6801 pci_pri_enabled +EXPORT_SYMBOL_GPL vmlinux 0xdec00c4b pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xdec94f12 ata_eh_qc_retry +EXPORT_SYMBOL_GPL vmlinux 0xdf0a9200 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf13c3e6 debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0xdf241f22 devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xdf343935 ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0xdf37bc89 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0xdf414f67 __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xdf42ce70 ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0xdf519687 inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0xdf552379 vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0xdf55f088 get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0xdf633c3c dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xdf82b3db debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0xdf94cb9c regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xdfb01fda crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0xdfe80aa2 sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0xdff7c9ce blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe003e044 __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0xe007de41 kallsyms_lookup_name +EXPORT_SYMBOL_GPL vmlinux 0xe018878a pciserial_init_ports +EXPORT_SYMBOL_GPL vmlinux 0xe02eb6d0 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0xe048906a of_pci_msi_chip_add +EXPORT_SYMBOL_GPL vmlinux 0xe06347fe power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0xe07ca631 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0xe084b681 ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0xe0ab0e46 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0xe0be6ccb usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xe10b4937 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0xe121042b led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0xe143c625 get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0xe15b7b2d ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0xe16591ab stop_machine +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe17b3610 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe189ea75 crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0xe19cdfb5 cpufreq_frequency_table_target +EXPORT_SYMBOL_GPL vmlinux 0xe1c126b1 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0xe1c32794 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xe21e3310 i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xe2353596 mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0xe23643a6 pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0xe26825df list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0xe2724ab5 regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xe27355f5 devm_phy_create +EXPORT_SYMBOL_GPL vmlinux 0xe27bf127 __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0xe2e506f4 device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0xe2e7840d regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe333fa01 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0xe337d0a8 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xe35745c8 snd_soc_get_value_enum_double +EXPORT_SYMBOL_GPL vmlinux 0xe35b2e0c pci_enable_pri +EXPORT_SYMBOL_GPL vmlinux 0xe3703dc1 tpm_dev_release +EXPORT_SYMBOL_GPL vmlinux 0xe370c603 __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xe384a102 usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0xe38df649 stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0xe3f9ff92 regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xe40c5930 spi_setup +EXPORT_SYMBOL_GPL vmlinux 0xe4142a1d smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xe419cd63 usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xe42e1f70 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe437e71b skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0xe4553b0b ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xe462ac0c pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0xe47a3935 debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0xe4803c91 of_get_videomode +EXPORT_SYMBOL_GPL vmlinux 0xe4a5881e fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0xe4b1f620 each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0xe4c22565 cpdma_chan_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe4c3d30a snd_soc_codec_writable_register +EXPORT_SYMBOL_GPL vmlinux 0xe4c4b28f gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xe4cbfa23 dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0xe4d91541 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0xe4daa789 cpsw_phy_sel +EXPORT_SYMBOL_GPL vmlinux 0xe50e65bf blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xe52ae762 __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xe5441e33 usb_stor_access_xfer_buf +EXPORT_SYMBOL_GPL vmlinux 0xe54d3fef crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0xe54f7220 netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe5524eab of_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0xe55f74fd device_register +EXPORT_SYMBOL_GPL vmlinux 0xe5722ddb ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58fb452 aer_irq +EXPORT_SYMBOL_GPL vmlinux 0xe5904d7c devm_snd_soc_register_card +EXPORT_SYMBOL_GPL vmlinux 0xe5a4636d shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xe5b2e7ba __put_mtd_device +EXPORT_SYMBOL_GPL vmlinux 0xe5cc857f platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0xe5dfa182 ahci_platform_init_host +EXPORT_SYMBOL_GPL vmlinux 0xe5fa80e5 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xe5fdccbf key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0xe6038bfd ahash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0xe651f76e selinux_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe654c7e7 sdhci_pci_o2_fujin2_pci_init +EXPORT_SYMBOL_GPL vmlinux 0xe664134e class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xe6693af7 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0xe671a122 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0xe67251b0 debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xe6c68334 ddebug_remove_module +EXPORT_SYMBOL_GPL vmlinux 0xe6d47fa5 pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0xe6d5b47a dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0xe6d67d57 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0xe6e1c5fe uuid_be_gen +EXPORT_SYMBOL_GPL vmlinux 0xe6e1f25c sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL vmlinux 0xe6e2ed33 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0xe7397a0c pwm_put +EXPORT_SYMBOL_GPL vmlinux 0xe764488a alarm_start +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe7a081ee rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xe7bc4342 dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL vmlinux 0xe7c8c31c usb_stor_post_reset +EXPORT_SYMBOL_GPL vmlinux 0xe7d4b3ba tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe8123b33 shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe8400441 of_property_read_string_index +EXPORT_SYMBOL_GPL vmlinux 0xe84f54e0 snd_soc_dapm_put_enum_virt +EXPORT_SYMBOL_GPL vmlinux 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL vmlinux 0xe85a9fd3 cpu_cluster_pm_exit +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe8742074 __init_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0xe89ac600 pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0xe89d55c8 pinctrl_utils_add_config +EXPORT_SYMBOL_GPL vmlinux 0xe9018b19 ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0xe906962f regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xe91870c7 hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0xe91b8c04 mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0xe93a49ae crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe94337f9 adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe94554b4 snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL vmlinux 0xe956a75c pl320_ipc_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe959d2c8 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0xe9669f6c pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0xe96c8380 crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0xe96f77fd xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0xe98122b7 dbs_check_cpu +EXPORT_SYMBOL_GPL vmlinux 0xe99390fb register_mtd_user +EXPORT_SYMBOL_GPL vmlinux 0xe997a768 btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0xe9a3ec00 page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0xe9b503ce __mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0xe9fad202 sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0xe9fc1bb4 virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea13bc68 tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0xea1bb291 bL_switcher_get_enabled +EXPORT_SYMBOL_GPL vmlinux 0xea418e0f atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0xea43355b gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0xea4f9f3c fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL vmlinux 0xea64286e crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0xea749ff5 __get_mtd_device +EXPORT_SYMBOL_GPL vmlinux 0xea75ab94 device_schedule_callback_owner +EXPORT_SYMBOL_GPL vmlinux 0xeaa4bd0d ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0xeaa92b15 dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0xeaddb592 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xeade0941 __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0xeaf73aa2 dma_buf_export_named +EXPORT_SYMBOL_GPL vmlinux 0xeb0e5da4 pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0xeb1c3628 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xeb21ecd3 ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xeb2d627a twl6040_get_hs_step_size +EXPORT_SYMBOL_GPL vmlinux 0xeb3481b0 omap_uninstall_iommu_arch +EXPORT_SYMBOL_GPL vmlinux 0xeb3e8bb0 ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xeb3ef01d arm_pm_restart +EXPORT_SYMBOL_GPL vmlinux 0xeb4a2187 pinctrl_utils_add_map_mux +EXPORT_SYMBOL_GPL vmlinux 0xeb5b3533 omap_dm_timer_set_prescaler +EXPORT_SYMBOL_GPL vmlinux 0xeb6563ee snd_soc_put_enum_double +EXPORT_SYMBOL_GPL vmlinux 0xeb65afbe snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL vmlinux 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL vmlinux 0xeb7a31c2 tpm_open +EXPORT_SYMBOL_GPL vmlinux 0xeb806486 snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL vmlinux 0xeb931194 show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0xeb9abbee ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xeba35f5d sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xebae04e9 ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0xebec57c4 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xec145bef inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0xec1b043e regulator_suspend_prepare +EXPORT_SYMBOL_GPL vmlinux 0xec250fba mtd_is_partition +EXPORT_SYMBOL_GPL vmlinux 0xec25f967 klist_del +EXPORT_SYMBOL_GPL vmlinux 0xec27f6db ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0xec472065 n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0xec5c76b1 bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0xec76a583 sis_info133_for_sata +EXPORT_SYMBOL_GPL vmlinux 0xec8684f0 platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xeca3cfcd add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL vmlinux 0xeca766b2 amba_ahb_device_add_res +EXPORT_SYMBOL_GPL vmlinux 0xecae250c reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xecb55678 snd_hwparams_to_dma_slave_config +EXPORT_SYMBOL_GPL vmlinux 0xecbdc59e pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xece318e2 spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0xece617d3 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xecfd8761 usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xed008601 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0xed06b916 wakeup_source_drop +EXPORT_SYMBOL_GPL vmlinux 0xed0bb820 usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0xed2c62ea device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xed2cc3a8 pinctrl_add_gpio_ranges +EXPORT_SYMBOL_GPL vmlinux 0xed31c622 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xed695a2d unregister_jprobe +EXPORT_SYMBOL_GPL vmlinux 0xed735389 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0xed90097f usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xed9a4519 twl6040_get_dl1_gain +EXPORT_SYMBOL_GPL vmlinux 0xedb3f2cf inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xedd49930 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xeddf78b2 bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0xee16a27f imx_pcm_dma_init +EXPORT_SYMBOL_GPL vmlinux 0xee1b61c7 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0xee35057f omap_iommu_save_ctx +EXPORT_SYMBOL_GPL vmlinux 0xee46b334 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0xee49a2f6 tpm_show_pcrs +EXPORT_SYMBOL_GPL vmlinux 0xee4f3181 wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0xee62c8e3 usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee8d7539 cpdma_chan_start +EXPORT_SYMBOL_GPL vmlinux 0xee9662ce sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0xee98ebef vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0xeeabfd84 ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0xeec8952b ahci_start_engine +EXPORT_SYMBOL_GPL vmlinux 0xeeef1b59 usb_stor_Bulk_reset +EXPORT_SYMBOL_GPL vmlinux 0xef04cd89 net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0xef147fd7 i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xef2d7980 rtc_irq_set_state +EXPORT_SYMBOL_GPL vmlinux 0xef38b476 kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0xef409b74 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0xef432959 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0xef66075c usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef750677 led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0xef78aed7 crypto_alloc_instance2 +EXPORT_SYMBOL_GPL vmlinux 0xefa62fee crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0xefe6effa snd_soc_get_enum_double +EXPORT_SYMBOL_GPL vmlinux 0xeff59736 sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0xf00d58f7 alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xf08cef3a driver_register +EXPORT_SYMBOL_GPL vmlinux 0xf0970ea2 regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0xf0d19eb4 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0xf0f5dbc2 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0xf1273f35 platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0xf12caf22 clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0xf134f4fe snd_ctl_activate_id +EXPORT_SYMBOL_GPL vmlinux 0xf13d347b input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0xf142ada7 sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0xf14de83c relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0xf1659896 dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf19daef3 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0xf1aa0eeb platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1efb650 spi_alloc_master +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf264b616 snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL vmlinux 0xf268a955 class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf26fe75e evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0xf27977e2 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0xf27a2af9 pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0xf27ccf7b fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0xf2f077cc pkey_id_type_name +EXPORT_SYMBOL_GPL vmlinux 0xf2f2d10d udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf2fc7f6e __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xf2fca922 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0xf3063db9 rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0xf30fda27 lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf3380c64 tpm_dev_vendor_release +EXPORT_SYMBOL_GPL vmlinux 0xf33b0062 pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0xf3451306 regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0xf3704854 devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xf375537c serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0xf376a7e6 swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0xf376ec9f irq_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0xf3ada43e debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3b4b5a5 dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0xf3b84e83 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0xf3d8fc3a tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0xf41679b7 phy_init +EXPORT_SYMBOL_GPL vmlinux 0xf427b877 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf42b980a extcon_set_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0xf44b96d1 inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0xf467ec23 usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xf489f00a css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0xf490b717 sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0xf494f618 mmc_regulator_get_ocrmask +EXPORT_SYMBOL_GPL vmlinux 0xf499fdb2 rcu_barrier_bh +EXPORT_SYMBOL_GPL vmlinux 0xf49b0b7f bmp085_remove +EXPORT_SYMBOL_GPL vmlinux 0xf4ad9f52 bsg_register_queue +EXPORT_SYMBOL_GPL vmlinux 0xf4b702a5 sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0xf4cfe15f fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0xf4f3e186 blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xf4fbdb4f pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xf4fc2d6c __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf515dfe7 snd_dmaengine_pcm_close +EXPORT_SYMBOL_GPL vmlinux 0xf52ca989 virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0xf543bd34 omap_dm_timer_write_counter +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf5631270 iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xf575e8dc sysfs_get_dirent_ns +EXPORT_SYMBOL_GPL vmlinux 0xf595e2c2 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5c75ab5 pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0xf5cf5c44 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0xf5e87f1a pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xf5fef4e3 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf60c693f tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0xf6161185 ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xf6509c8f debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0xf6518be2 ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xf65556e7 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0xf6747113 sec_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xf6757c68 disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf679041e ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0xf67b53d8 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0xf688d555 dapm_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0xf68916f9 ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0xf695597e bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0xf69c77d0 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0xf6a9a07e sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0xf6b01f2d blk_queue_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xf6b5d841 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0xf6b8108b tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0xf6cc7fa6 register_mtd_blktrans +EXPORT_SYMBOL_GPL vmlinux 0xf6db4b3e snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL vmlinux 0xf6dfac55 aead_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf6f60f04 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xf7097d2c cgroup_taskset_next +EXPORT_SYMBOL_GPL vmlinux 0xf70e07d0 fuse_get_req +EXPORT_SYMBOL_GPL vmlinux 0xf7186883 regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf71e40e0 __class_create +EXPORT_SYMBOL_GPL vmlinux 0xf7346332 palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0xf74345f9 usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0xf74dae0f idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf76b0a59 read_current_timer +EXPORT_SYMBOL_GPL vmlinux 0xf7714159 transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xf7802913 spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0xf78d82f4 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xf7a835c7 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0xf7bfecfd system_trusted_keyring +EXPORT_SYMBOL_GPL vmlinux 0xf7c49324 of_pci_parse_bus_range +EXPORT_SYMBOL_GPL vmlinux 0xf7e19dbc register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xf7e3e9df snd_soc_put_value_enum_double +EXPORT_SYMBOL_GPL vmlinux 0xf7efc586 ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0xf816c866 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xf829c978 iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0xf82f16b3 execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf845c450 wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xf846506f irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf8802492 print_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xf88a8ce0 tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0xf88a9dcf devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xf8a0e803 ablkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0xf8a71cdf ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3d0b kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0xf911be61 generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0xf914a6ec debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xf929d47a tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0xf92ce956 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf94845ab bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0xf98a7e03 crypto_larval_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf990f853 of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0xf9961f38 cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9a6ac5c lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0xf9a9d105 use_mm +EXPORT_SYMBOL_GPL vmlinux 0xf9c433ee nf_unregister_afinfo +EXPORT_SYMBOL_GPL vmlinux 0xf9ca3160 ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xf9d24bb2 __rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0xfa012fe7 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0xfa12adcf snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL vmlinux 0xfa1bc97f dev_pm_opp_disable +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa5f1cc8 ata_sas_port_async_suspend +EXPORT_SYMBOL_GPL vmlinux 0xfa67c9c5 ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xfa6b0dbe virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0xfa76c6c3 regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xfa7cd878 mtd_write +EXPORT_SYMBOL_GPL vmlinux 0xfa889cfd debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0xfaa9f838 crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0xfabdeaf0 sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xfac339d1 netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0xfad11846 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0xfb2e4335 platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb625549 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb82dca4 usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xfb94f014 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0xfba205c3 stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0xfbbedefd of_prop_next_string +EXPORT_SYMBOL_GPL vmlinux 0xfbcb158a devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xfbd1869c ahci_reset_em +EXPORT_SYMBOL_GPL vmlinux 0xfbe98cb9 snd_soc_register_platform +EXPORT_SYMBOL_GPL vmlinux 0xfbecc7ef __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0xfbf73fe2 cgroup_add_cftypes +EXPORT_SYMBOL_GPL vmlinux 0xfbf76281 regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc2b898a debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0xfc4d9186 iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0xfc56398f debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0xfca1d062 omap_control_usb_phy_power +EXPORT_SYMBOL_GPL vmlinux 0xfcb36b96 platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0xfcb5de5c snd_soc_codec_set_pll +EXPORT_SYMBOL_GPL vmlinux 0xfcbeb87f ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xfcc8dc68 task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0xfccffb34 arizona_of_get_type +EXPORT_SYMBOL_GPL vmlinux 0xfcd7bc0b ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0xfcdb4034 wakeup_source_prepare +EXPORT_SYMBOL_GPL vmlinux 0xfd0419c3 nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0xfd25ba61 fat_detach +EXPORT_SYMBOL_GPL vmlinux 0xfd2647b4 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0xfd3fab74 raw_seq_open +EXPORT_SYMBOL_GPL vmlinux 0xfd41c7ce btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xfd65b3f7 inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xfdad757c usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0xfdbcaa73 __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0xfdd0b83c snd_soc_add_platform_controls +EXPORT_SYMBOL_GPL vmlinux 0xfdfa166c rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0xfe14ec75 snd_soc_jack_new +EXPORT_SYMBOL_GPL vmlinux 0xfe1ae317 omap_control_usb_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xfe234562 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xfe2a004a ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xfe47c14e bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0xfe4a5a5e irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xfe7b2383 pin_is_valid +EXPORT_SYMBOL_GPL vmlinux 0xfe9328e6 dapm_clock_event +EXPORT_SYMBOL_GPL vmlinux 0xfe95e170 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfe9cd8e1 css_next_child +EXPORT_SYMBOL_GPL vmlinux 0xfec0e8d6 kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0xfec3f745 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfecef873 ahci_save_initial_config +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfeda4e1c look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0xfee00b0c get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0xfee50f28 devres_get +EXPORT_SYMBOL_GPL vmlinux 0xfef8a166 trace_current_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff5c7210 devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0xff5cda7c wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0xff69f127 snd_compress_register +EXPORT_SYMBOL_GPL vmlinux 0xffa598e4 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0xffb0cfda vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0xffb6a395 usb_gadget_unmap_request +EXPORT_SYMBOL_GPL vmlinux 0xffb956ac i2c_new_device +EXPORT_SYMBOL_GPL vmlinux 0xffd04209 omap_mcbsp_st_add_controls +EXPORT_SYMBOL_GPL vmlinux 0xffdd93af extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xffdf54c2 snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL vmlinux 0xffe3e401 snd_soc_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xffec8127 put_mtd_device +EXPORT_SYMBOL_GPL vmlinux 0xffed12a6 pwm_request +EXPORT_SYMBOL_GPL vmlinux 0xfff5e1e2 security_inode_create --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/armhf/generic-lpae +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/armhf/generic-lpae @@ -0,0 +1,14055 @@ +EXPORT_SYMBOL arch/arm/crypto/aes-arm 0x276b2f72 private_AES_set_encrypt_key +EXPORT_SYMBOL arch/arm/crypto/aes-arm 0x6c62e582 AES_decrypt +EXPORT_SYMBOL arch/arm/crypto/aes-arm 0xc30fcbed AES_encrypt +EXPORT_SYMBOL arch/arm/crypto/aes-arm 0xcf024ae9 private_AES_set_decrypt_key +EXPORT_SYMBOL arch/arm/lib/xor-neon 0x0f051164 xor_block_neon_inner +EXPORT_SYMBOL crypto/gf128mul 0x0c2f123f gf128mul_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x1068004b gf128mul_bbe +EXPORT_SYMBOL crypto/gf128mul 0x2f2889a0 gf128mul_init_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x384ef9ce gf128mul_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x56af0dbd gf128mul_x_ble +EXPORT_SYMBOL crypto/gf128mul 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL crypto/gf128mul 0xbd17a0df gf128mul_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0xc0890413 gf128mul_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/bcma/bcma 0x2f7a79a8 bcma_core_dma_translation +EXPORT_SYMBOL drivers/block/drbd/drbd 0x127a5901 drbd_set_st_err_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x35131b36 drbd_role_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x7730f22d drbd_conn_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0xaf27bebf drbd_disk_str +EXPORT_SYMBOL drivers/block/paride/paride 0x01d0009e pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0x0744efd0 paride_unregister +EXPORT_SYMBOL drivers/block/paride/paride 0x0a9a9c94 pi_init +EXPORT_SYMBOL drivers/block/paride/paride 0x2cbac21f pi_disconnect +EXPORT_SYMBOL drivers/block/paride/paride 0x417364d9 pi_write_block +EXPORT_SYMBOL drivers/block/paride/paride 0x45df56a0 paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0x785003fa pi_release +EXPORT_SYMBOL drivers/block/paride/paride 0x8821939e pi_read_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x91153a62 pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xca3f1b84 pi_read_block +EXPORT_SYMBOL drivers/block/paride/paride 0xdcef7d3c pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xf382d036 pi_write_regr +EXPORT_SYMBOL drivers/char/nvram 0x0f28cb91 nvram_read_byte +EXPORT_SYMBOL drivers/char/nvram 0x17ff2c1d __nvram_read_byte +EXPORT_SYMBOL drivers/char/nvram 0x2adec1e0 __nvram_check_checksum +EXPORT_SYMBOL drivers/char/nvram 0x7da28f12 nvram_check_checksum +EXPORT_SYMBOL drivers/char/nvram 0x9ce3f83f nvram_write_byte +EXPORT_SYMBOL drivers/char/nvram 0xa8813189 __nvram_write_byte +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x437c145a dw_dma_cyclic_start +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x75b755a5 dw_dma_cyclic_prep +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x7c18a9a9 dw_dma_cyclic_stop +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xb71b67f8 dw_dma_get_dst_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xd71699b2 dw_dma_get_src_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xf18dd277 dw_dma_cyclic_free +EXPORT_SYMBOL drivers/dma/pl330 0xa284057f pl330_filter +EXPORT_SYMBOL drivers/edac/edac_core 0x0604b414 edac_mc_find +EXPORT_SYMBOL drivers/fmc/fmc 0x18f7dee8 fmc_scan_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x20324689 fmc_device_register +EXPORT_SYMBOL drivers/fmc/fmc 0x324e8141 fmc_show_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x35f6a51e fmc_device_register_n +EXPORT_SYMBOL drivers/fmc/fmc 0x7ed41dd6 fmc_device_unregister_n +EXPORT_SYMBOL drivers/fmc/fmc 0x8a22b9b4 fmc_device_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0x955431d3 fmc_driver_register +EXPORT_SYMBOL drivers/fmc/fmc 0x99367f10 fmc_free_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xbe837fc4 fmc_driver_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0xc6b204c8 fmc_reprogram +EXPORT_SYMBOL drivers/fmc/fmc 0xd4dc060c fmc_find_sdb_device +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00025916 drm_mode_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00667d8a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x024db741 drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x026c0d6b drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03aed156 drm_core_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x04715620 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x049817c3 drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05ccd1e1 drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x09e71167 drm_idlelock_take +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ae4b94c drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0b6ee997 drm_calc_vbltimestamp_from_scanoutpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c16a6d2 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d21e8c2 drm_addmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0e0cbade drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ec527fc drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0f091295 drm_pci_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fccafb1 drm_global_item_unref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ff97eb9 drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0x118f9bdf drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12c6276a drm_buffer_read_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13cdaadb drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x142b8b35 drm_buffer_copy_from_user +EXPORT_SYMBOL drivers/gpu/drm/drm 0x142d0bb3 drm_connector_unplug_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a9a178 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1802c9a3 drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x189f6401 drm_mm_debug_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x194eadaa drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1992b9cd drm_core_reclaim_buffers +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19e44324 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a770ac3 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1b04cce9 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1cdb3fbb drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e6e1802 drm_vblank_pre_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1efe600d drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20645642 drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21c8c652 drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22522a23 drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2298a4bf drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2391cf39 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x251d7942 drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25a9390b drm_core_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x26eb9667 drm_get_connector_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x27f77849 drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x28238010 drm_getsarea +EXPORT_SYMBOL drivers/gpu/drm/drm 0x28e267e0 drm_rmmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29156baf drm_sysfs_connector_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a942ab2 drm_mm_insert_node_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2b31f733 drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2b3c5c1f drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2b587b40 drm_idlelock_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2bde13b8 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d80be4d drm_mm_init_scan +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2dda21f0 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ddde9f5 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7a4300 drm_rgb_quant_range_selectable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ec70a6b drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f1b5815 drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0x346127a7 drm_global_item_ref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36f91ef3 drm_mm_clean +EXPORT_SYMBOL drivers/gpu/drm/drm 0x382b0291 drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38a4f7ae drm_format_num_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38e058ea drm_pci_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ac1fef9 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ae7b2d0 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b9d009a drm_format_plane_cpp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3cec582f drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d4b8108 drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d99967f drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e6b38d2 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e85221a drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eb37b9d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ebf185d drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x40ca4e6f drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4247eeab drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43384bd9 drm_buffer_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43895322 drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44250f87 drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x443827d5 drm_mode_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4642ece6 drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0x47105ee1 drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48048421 drm_vblank_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48fa01da drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x498dcb5e drm_ut_debug_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49fabf0d drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b2c9ae5 drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b7fa589 drm_vma_offset_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c11e85e drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c511235 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ea1f5a2 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ecb4517 drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f1bb942 drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4fedde9f drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50a3bbfb drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50a86df0 drm_dev_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50c4c3a7 drm_select_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e28c07 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0x526f6f71 drm_rect_calc_hscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x52947958 drm_mode_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54df20e5 drm_sysfs_connector_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55200bca drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0x556999c7 drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5ba6956f drm_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c7abf1b drm_addbufs_pci +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5cabdd54 drm_edid_to_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5cba0a20 drm_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6090be61 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x629c05e1 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x62b7ecf7 drm_mode_connector_detach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x65af637a drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66634467 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66803841 drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6900d335 drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b6d7375 drm_timestamp_precision +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b776c06 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c88951c drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cee2e42 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x72c4ede7 drm_framebuffer_reference +EXPORT_SYMBOL drivers/gpu/drm/drm 0x73a5af10 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x751826cb drm_bridge_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x76266858 drm_core_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x76c4e4af drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x76dccaca drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x79091fb6 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a03bd42 drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a4e7297 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a817912 drm_mode_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7dc3709d drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7f3ecc82 drm_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7fc908df drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80e287e1 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81ba930c drm_mm_init_scan_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8331911d drm_crtc_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83d9b6f0 drm_platform_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x84c79cf5 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x874bbc1d drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x87762319 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ac6f973 drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8b87e87a drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8bb0e057 drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d3fa4cb drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8de13715 drm_format_vert_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dfb019d drm_buffer_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ee94cd7 drm_framebuffer_unreference +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8eff9111 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f7df3a7 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f8759bb drm_mode_create_dirty_info_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f90c18e drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8fa9b8db drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x92736cf3 drm_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x94ff88ed drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x951d0c7d drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95fcdccd drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9745d638 drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9764917c drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x97695a22 drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9972db48 drm_rect_calc_vscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a1ce24a drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a39dc1f drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9cd25541 drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d70fc2a drm_rnodes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9da7514f drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9eccfe56 drm_mode_hsync +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9efc26a3 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9f4a252d drm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1578745 drm_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1f4e9e6 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa250159d drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2804983 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa28078b2 drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2e82ca4 drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5aa028f drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5dbd572 drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa96acfcb drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa1a6e72 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad048bd2 drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafb0cb6f drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb044c068 drm_get_last_vbltimestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb13b57a3 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb3028db1 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb32881b4 drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb572a9f0 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5960cf8 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb95beb55 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbbe7a820 drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe001c53 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe3169dd drm_global_mutex +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe4a8571 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbf7dfbba drm_prime_init_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2a77a81 drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4000f9f drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc414c422 drm_vblank_offdelay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6424a71 drm_unplug_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6546be0 drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6e3110c drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca45efbc drm_format_horz_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0xccd34122 drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0xccd67baa drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd0fc417 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0xce7b1ffc drm_pci_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf352776 drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1f83530 drm_mode_group_init_legacy_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2335101 drm_fb_get_bpp_depth +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd5012e25 drm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd7a20a76 drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd809aff6 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd84f0c9c drm_pci_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb5a5852 drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb9a8df1 drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbb5a9f5 drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdcb245c8 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdff0c299 drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe12f514f drm_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe23a4445 drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2ef97e4 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6163b58 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6f46e6e drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7197773 drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7263153 drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8635fee drm_get_encoder_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe909f1c1 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeaa85cd8 drm_mm_dump_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee573383 drm_bridge_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xef2f112f drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefdf9b69 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf08d712a drm_mode_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0ae17b6 drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf14bfc54 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf286b289 drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf446a0e2 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf538f7c3 drm_prime_destroy_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9be1ca4 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb04297d drm_platform_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb497216 drm_mm_insert_node_in_range_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb9c3471 drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc0a02fc drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc91d070 drm_vblank_post_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd063935 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfde1c17d drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfdf55d2b drm_rmmap_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe4a68c7 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffc6c87a drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x01f93bff drm_fb_helper_restore_fbdev_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x098e47d2 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0d775f98 drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f50c8b7 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f5c541f drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f96ec70 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0fa8ef0f drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x163251c8 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2299a64d drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2399e7d8 drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34871adf drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3829a6b7 drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x390de426 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3d8f7be6 drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3fce65db drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x471c750b drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5188e9e1 drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x52e71a7b drm_fb_helper_fill_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x609bca85 drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x66e9ced3 drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6afb8eb5 drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6e19801f drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6f6bacac drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x711a004a drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84e924ba drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x882ba3f1 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x89c448f3 drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x93de7ca4 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa4a4d5cb drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa77858bb drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8d6809d drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb859951e drm_fb_helper_fill_fix +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc07d283f i2c_dp_aux_add_bus +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc517b852 drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd9ac751c drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xda76eb89 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdc4c703f drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdd489d64 drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf166211f drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfc8a61e3 drm_fb_helper_single_add_all_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x52bd7dcb drm_get_usb_dev +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x547836fe drm_usb_init +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0xd600b206 drm_usb_exit +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0x1eecbd25 host1x_driver_register +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xc186fc7c host1x_client_unregister +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xc4049f10 host1x_client_register +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xd25eaf18 host1x_syncpt_wait +EXPORT_SYMBOL drivers/gpu/host1x/host1x 0xea1070df host1x_driver_unregister +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x0903c239 vid_from_reg +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0xef1c781c vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x0e2a6864 sch56xx_read_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x0f5877d4 sch56xx_read_virtual_reg16 +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x34257f35 sch56xx_watchdog_unregister +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xa9e8529e sch56xx_watchdog_register +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xe5022f95 sch56xx_read_virtual_reg12 +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xed1d2a08 sch56xx_write_virtual_reg +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x6fe9ca74 i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xaa5275aa i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xacd83cb7 i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x30181d1a i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0xd198b26e i2c_pca_add_bus +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xb8e0769c st_accel_common_probe +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xca8fbb1a st_accel_common_remove +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x09c8f2c0 hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x1c79daca hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x9077460b hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xa49b5603 hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xf759fa07 hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x13cb47bf hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xe4c8a0f0 hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x2886f709 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x2c40b6ae st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x3ce2c04e st_sensors_check_device_support +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x4694eeb0 st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x576915cd st_sensors_sysfs_set_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x5b00f542 st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x69e4a976 st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x7006a486 st_sensors_get_buffer_element +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x873f2b40 st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xc6c48d1b st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd3659d63 st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xe0c03776 st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xe4464fc2 st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xe9c65f40 st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xfc57e972 st_sensors_sysfs_get_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0x6ca292aa st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0x690f3ef3 st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x0f6d13e8 st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x1c3290f3 st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x31f40ebd adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xc39c0ccc adis_enable_irq +EXPORT_SYMBOL drivers/iio/industrialio 0x268b5b37 iio_buffer_write_length +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x2dfbd4b8 iio_buffer_read_length +EXPORT_SYMBOL drivers/iio/industrialio 0x2efafb31 iio_buffer_register +EXPORT_SYMBOL drivers/iio/industrialio 0x34c08fad iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0x34dbd2ee iio_buffer_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x37fb641f iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0x3f38a8b8 iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0x40521ad2 iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x68271b40 iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0x6bbee988 iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x743eff75 iio_buffer_show_enable +EXPORT_SYMBOL drivers/iio/industrialio 0x74a5f65f iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0x791e0450 iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x7a8ec9f1 iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0xb4c6dadf iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xb5b6d512 iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xbb9964dd iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0xc4182091 iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0xc8c4fa08 iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0xd1fcfc03 iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xe4c9057e iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0xe7080b4b iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0xf5c3f73a iio_buffer_store_enable +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x1a49f65d iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0xa74cb2d5 iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x57f70553 iio_kfifo_free +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x676a406a iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x4f28b840 st_magn_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x6c71284e st_magn_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x152a4934 st_press_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x3f8da868 st_press_common_remove +EXPORT_SYMBOL drivers/input/gameport/gameport 0x020c6808 gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x17e9795f gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x2ad33e37 gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0x6c35a87b gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x8ff654aa gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0x9370b2ce gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0x9aef3ae4 __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x9bf6b1d8 __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0xea4e622a gameport_start_polling +EXPORT_SYMBOL drivers/input/input-polldev 0x3a25543f input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x419b7ffe input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x434c12bf input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x93519cb0 input_unregister_polled_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0xbe5521cf matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x263be88d ad714x_remove +EXPORT_SYMBOL drivers/input/misc/ad714x 0x898db78f ad714x_enable +EXPORT_SYMBOL drivers/input/misc/ad714x 0xcd7447d8 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/ad714x 0xfce53ac0 ad714x_disable +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x6ab20c0c cma3000_init +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x892d76b2 cma3000_resume +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x89d9444e cma3000_exit +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xca3f100a cma3000_suspend +EXPORT_SYMBOL drivers/input/sparse-keymap 0x41255a9d sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0x63a29bbb sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x7f307a14 sparse_keymap_free +EXPORT_SYMBOL drivers/input/sparse-keymap 0xa3f61aa0 sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0xef25f1b7 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0xf0f4cfc6 sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x48d2d9d3 ad7879_pm_ops +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x4e9ccecb ad7879_probe +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x97f83edf ad7879_remove +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x04403fcf unregister_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x14f2aa5a capi20_get_version +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x19bd8933 capi_ctr_down +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2b8eab1f capilib_free_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2baa6586 capilib_new_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x31c24aa4 capi20_isinstalled +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x3e35b5bb capi20_put_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x41ee0d8e capi_ctr_suspend_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x47d3fc51 capi_info2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x50b33ca4 capi_cmsg2message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6057c6f3 capi_message2cmsg +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x62e32d43 capilib_data_b3_conf +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6881ea3a capi20_register +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x71e8d5ba capilib_data_b3_req +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x729ed964 capi_ctr_resume_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7a33596c capi20_get_serial +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7e6f1307 capi20_get_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x8f699913 capilib_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9f823278 register_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xa7c4fd6c capi_message2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xa8c23345 detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xaa165d27 capilib_release_appl +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb19fda8d capi_cmd2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb60e5e5f capi_cmsg_header +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc10fe128 cdebbuf_free +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc1134965 capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xca4f86ed capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe19a11ac capi20_get_profile +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe2a07dcd attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe8ad9bd1 capi_cmsg2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xed061606 capi20_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xfb5e1e00 capi20_release +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x07f4f2ce hisax_unregister +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x148f0c99 FsmFree +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x551f968b hisax_init_pcmcia +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x7f29ce36 FsmInitTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x93a64734 FsmChangeState +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x9df0cd27 FsmEvent +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xe227344e FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xee93522c hisax_register +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xf0a16657 FsmNew +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xfc27303b HiSax_closecard +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xff2db2cf FsmDelTimer +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x2d3b6774 isdn_ppp_register_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x417f32af register_isdn +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x8bc49096 isdn_ppp_unregister_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xfa06820f isdn_register_divert +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x3b71e4fc isdnhdlc_decode +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x59cc8a7e isdnhdlc_out_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x8ee38862 isdnhdlc_rcv_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0xfd9d4c09 isdnhdlc_encode +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x017c87e8 recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x1c604ff3 queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x21d68747 recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x227c0318 mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2348cc3c mISDN_FsmFree +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x276ed82c mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2e5887b0 recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x40076cc7 recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x54451388 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x55ef5c04 mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x565b4ad4 get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x5b858e35 recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x614ede30 mISDN_FsmAddTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x62690004 mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x7989a6e2 dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8a4e99fb mISDN_clock_update +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8aba1989 mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8f99c439 create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x96309324 mISDN_FsmDelTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9a3f44e9 bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9bafcd8c mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9c528c74 mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbac2100c mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc8f3b278 get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xcdf68448 mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd285995f mISDN_clock_get +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd5145151 mISDN_FsmEvent +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe87943cf mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8a8514f mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf9e7832f mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xfa17ddf8 mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xfb1e9e6f bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x01087af0 mISDN_dsp_element_unregister +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x60721da7 dsp_audio_law_to_s32 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xa215f1b2 dsp_audio_s16_to_law +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xb98308d8 mISDN_dsp_element_register +EXPORT_SYMBOL drivers/md/bcache/bcache 0x5c5aa5da closure_put +EXPORT_SYMBOL drivers/md/bcache/bcache 0x65bdccd3 closure_wait +EXPORT_SYMBOL drivers/md/bcache/bcache 0x83818771 __closure_lock +EXPORT_SYMBOL drivers/md/bcache/bcache 0xbb56539a closure_trylock +EXPORT_SYMBOL drivers/md/bcache/bcache 0xde71b33a closure_sub +EXPORT_SYMBOL drivers/md/bcache/bcache 0xe3c17af1 __closure_wake_up +EXPORT_SYMBOL drivers/md/bcache/bcache 0xf7178c96 closure_sync +EXPORT_SYMBOL drivers/md/dm-log 0x891eb71c dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0x8fa3b29b dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0xad2c909c dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-log 0xdfaff473 dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0x3b729b72 dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x3c10fd7e dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x9cae7240 dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0xa8650f32 dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0xe97855df dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0xfc4b0212 dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/raid456 0xf9aea0bd raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x178319db flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x19281f5a flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x1f467a6f flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x247671ad flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x384a7c39 flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xa9b00aec flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xaeaf51ec flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xb0d548f0 flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xb54a6528 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xcd651d51 flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xcffd099a flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xde594bce flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xe7f67af4 flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/cx2341x 0x021f566d cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0x1ca0c084 cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0x2f25eee2 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0x35b9c45c cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0x3db8be82 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cx2341x 0x5b88faf6 cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc184ec1e cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc73177c9 cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf76ce95 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf8b77a4 cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xe762719a cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0xc084f470 cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x48bec35d tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/common/tveeprom 0x9bf7500a tveeprom_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0d820ae0 dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x17523ce7 dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x193e4f48 dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1f754757 dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x24b5431d dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2b5ff9fb dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2cdb6c96 dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x302d19c3 dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x344908d4 dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3516dd10 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3656cb10 dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3b28c2f2 dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x45c37326 dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5311aaec dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x629f9d31 dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x72180695 dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x74895206 dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x748cc38e dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x74a5a698 dvb_filter_pes2ts_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x78af8cfd dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7b3d5015 dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80e3832d dvb_filter_get_ac3info +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8633f37b dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8ee9141a dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9267f8d6 dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9c19040b dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9c6a0170 dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9cae685f dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9faa1cff dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa097840a dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xac4ca1b0 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb51c6789 dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb82dc1fc dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xcc622f21 dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd68a099e timeval_usec_diff +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdb1a8bd4 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdc094c39 dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe1e83fc0 dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe5ae8707 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf22a6d10 dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf48116c6 dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf4be3617 dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf589f84c dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf826deb0 dvb_filter_pes2ts +EXPORT_SYMBOL drivers/media/dvb-frontends/a8293 0x487534aa a8293_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9013 0xb07ca35f af9013_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9033 0xcdbf0eb1 af9033_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0x3579e5ac atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x112e4094 au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x21582560 au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x38f88aee au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x511e7ce8 au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x54fb874d au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x6e560ab9 au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x7d51e57e au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xda47e609 au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xe67a5180 au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0x8c1c10fc au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0xec31b541 bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0xd5ba2c46 cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x63912f1d cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x6bf30085 cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0xe038bb28 cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x327c2ec6 cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x6cc1f346 cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0x3265ce81 cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x6b9f9db2 dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x7643bcc3 dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x8ceaecdb dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xc2d0602d dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xd44e1ed8 dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x01f71369 dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x34e7b8b8 dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x46214175 dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x4ab23ee1 dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x4f77c27e dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x572054f8 dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x62187262 dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x8c903edc dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x9103f7fa dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x95a76329 dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x9aa1cfe7 dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xa3237dfb dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xce062890 dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xe0ad7856 dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xf1b0d6c8 dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0xa1dd1280 dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x0350e05e dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x32f734a5 dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x6e4fcbb3 dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xbb340584 dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xe2b6abe8 dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xf8d70dcc dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x7e96cbe0 dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x9b9a2c67 dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xd2d69fe1 dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xd30250f4 dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x0297e190 dib7090_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x134b09f3 dib7090_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x3098bb4a dib7000p_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x402279cc dib7000p_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x575315fe dib7000p_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x61527609 dib7000p_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x6e68119e dib7000p_set_agc1_min +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x74433b30 dib7000p_get_agc_values +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x8691ed18 dib7000p_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xcf5af75e dib7000p_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xd4c88922 dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xd53e0668 dib7090_slave_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xd6aa0320 dib7000p_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xe29e9989 dib7000p_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xe5ed0141 dib7090_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xf0bf5a58 dib7000pc_detection +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x1039527c dib8090p_get_dc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x24d06d0d dib8000_remove_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x2ce15191 dib8000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x2e19a149 dib8000_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x351df92a dib8000_pwm_agc_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x35d1b637 dib8096p_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x39b324e2 dib8000_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x3ba2d225 dib8000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x4e668ae9 dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x606a5fbd dib8000_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x87979901 dib8000_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x8f27b023 dib8000_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x93b4ed98 dib8000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x979ff93b dib8000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xc38a13d8 dib8000_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xdcc8dd3f dib8000_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xe19bf5e4 dib8000_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xeae82434 dib8000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xebaa2b40 dib8096p_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x597e47d7 dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x7e86fdf1 dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x80160ea9 dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xad3ad91c systime +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xbb4e10ea dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xfcb8b13f dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x62a7cf8c drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x903ce9d3 drxd_config_i2c +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0xf43a9d0a drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0x56bf6f8c ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0x678fb244 dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0x153e9906 ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0x8612e10a isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0xf6bfa037 isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/it913x-fe 0x51ceba68 it913x_fe_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0x16e283bf itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0xc2f0efe7 ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0xb6d85836 lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0xde89449b lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0x03f1f57f lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0xa0b4de5e lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x269e6e9c lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0xc0f034e0 lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0x489f0102 lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0x60cb10e0 m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0x50e2c5e0 mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0x86875f0b mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0x7db3f295 mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0x020e2aac nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0xa592f505 nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0x0299f100 rtl2830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0xdddd96d9 rtl2830_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2832 0x621f54d3 rtl2832_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0xb2e1632f s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0xc1202ff9 s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x3598fc6c s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0xff77fac4 s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0xf07dda8f s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0xb0d0bea8 si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0x8fe1fe3d stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0xa8413db2 stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0x8f6cf9f6 stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0x434a6682 stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0xaf83f9b4 stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0xe563fbc2 stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0x74ccfddd stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x1cf43ef9 stv090x_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x54984c3f stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0xf01550cd stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0xe6673efe stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0xc1d43797 tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0xf84c8827 tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x2a0bba3a tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0xfa67292e tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10071 0x3c42873a tda10071_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0xdac17d87 tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0x79e960c8 tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0x487531ed ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0x77f78bbf zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0xef3b0d05 zl10353_attach +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x00877753 ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xc3e4c127 ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x1ac8be95 soc_camera_host_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x25bc1f99 soc_camera_lock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x25c61eaf soc_camera_apply_board_flags +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x3a272ed5 soc_camera_xlate_by_fourcc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x670e6410 soc_camera_power_on +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x71afb01b soc_camera_unlock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x741e631c soc_camera_host_unregister +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xc3ed2e9a soc_camera_power_off +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xfbe0a63d soc_camera_power_init +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x25c52d97 soc_mbus_samples_per_pixel +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x2863728e soc_mbus_image_size +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x5f3e3558 soc_mbus_bytes_per_line +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xa9546115 soc_mbus_find_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xc8b28da5 soc_mbus_config_compatible +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xfe2c3a07 soc_mbus_get_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x3170c0c8 soc_camera_client_scale +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x7a10bac7 soc_camera_calc_client_output +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x8844983b soc_camera_client_g_rect +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0xf83d3331 soc_camera_client_s_crop +EXPORT_SYMBOL drivers/media/radio/tea575x 0x3d4b6753 snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0x5324c06e snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xab72d195 snd_tea575x_exit +EXPORT_SYMBOL drivers/media/radio/tea575x 0xb2f93e70 snd_tea575x_init +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x04dca738 lirc_unregister_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x29eea2f1 lirc_dev_fop_poll +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x3aa11188 lirc_get_pdata +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x3d4984a2 lirc_dev_fop_write +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x55c094b3 lirc_dev_fop_close +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x5ef508a3 lirc_register_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x6003ccf1 lirc_dev_fop_open +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x868500d0 lirc_dev_fop_read +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xce48d99b lirc_dev_fop_ioctl +EXPORT_SYMBOL drivers/media/rc/rc-core 0xa481dbad ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0xbd73a75b ir_raw_handler_register +EXPORT_SYMBOL drivers/media/tuners/e4000 0x732d4d55 e4000_attach +EXPORT_SYMBOL drivers/media/tuners/fc0011 0x95cbff8e fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0x420c8187 fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x4957e529 fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x6cf8a278 fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xc3dd748b fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/fc2580 0x63fd3fd0 fc2580_attach +EXPORT_SYMBOL drivers/media/tuners/max2165 0xd82184b5 max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0xec8342cd mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0x60620efc mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0x64aba72f mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0xb63c9b18 mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0x894484b9 qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18212 0xe417f989 tda18212_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0x560b71d1 tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tua9001 0x2ff4ecc8 tua9001_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x0cb4b189 tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0x2efbf2ef xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/tuner_it913x 0x5c3ac423 it913x_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0x3b276867 xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0x2a78e086 xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x8a485441 cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xcd2af2fb cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x29bba493 dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x2e17d887 dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x3fed51e5 dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x6c747e50 dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x72d9ecaa dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x7c67cf92 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x9c31f60d dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xa584d224 dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xe1d4c702 dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x01bed068 dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x04bf2bfd dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x21755f86 dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x3fd5a6fe dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x67a200da dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x79dabab0 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xb3ab1884 usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x13e247e0 rc_map_af9005_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xbd2ec8c3 af9005_rc_decode +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xd4e288db rc_map_af9005_table_size +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x026c2fcd dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x3939f77b dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x57f541f2 dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x705deff7 dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x74d985c1 dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xa814ea7f dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb47559e0 rc_map_dibusb_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb6ea830c dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xd010c3d5 dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xd994407a dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xdff9d1aa dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xf10bc869 dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x5bad0600 em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0xba04456a em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x1167accb gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x5dcba050 gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x86cb6de4 gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x8c1f5e70 gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x8c74e9fd gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xa7d0689c gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xcf17a64c gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xdf993e5d gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x20a69bfd tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x8a8346ea tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xb2f6f6db tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x42c8e001 v4l2_ctrl_next +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x4adaf0f3 v4l2_ctrl_query_menu_valid_items +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x53c9394f v4l2_ctrl_query_menu +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x5f96a661 v4l2_ctrl_check +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0xabe27502 v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x21fdd58f v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x429a7cc4 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x75cf3f1b v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x0e948217 videobuf_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x236b4597 videobuf_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x5e4a7007 videobuf_dvb_get_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x8aa992fe videobuf_dvb_find_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xe5aa8454 videobuf_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xeb3ba1bd videobuf_dvb_register_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf2-core 0xc26f0561 vb2_querybuf +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x017611f2 v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x01965ff7 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x140e371b v4l2_of_get_remote_port_parent +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x15c69991 v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16d366a4 v4l2_subdev_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x17b50c92 v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x199898d8 v4l2_ctrl_add_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x19a3cd33 v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1a7055b6 video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x20d3a643 v4l2_subdev_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x22443183 v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x25cb1ef5 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x29c33e1d video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2fe47d70 video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3174539f v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x367e8d08 __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x36847d11 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x37964300 video_usercopy +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x37ff96a5 v4l2_subdev_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3a9adfda v4l2_subdev_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3ac2b227 v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3db7f213 v4l2_of_get_remote_port +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4094a303 v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x41241338 v4l2_subdev_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x491554d0 v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x495426ee v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4b2412b5 v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4c405806 v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4e8e513e v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4f205e8d v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x50910f88 v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x560c197e video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5d18c857 v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5ee6a99a v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6ffa3ee2 v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x732c129f v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x76be875a v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7a3cd015 v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7aaceef9 v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7f923f2a v4l2_of_parse_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x84c053c0 v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x85427660 v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x913e98b7 video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x91b16f05 v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x93afcb91 v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x955d570e v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9610a0d9 v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9b717a5b v4l2_subdev_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9cd93697 __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9ef44bd6 v4l2_subdev_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa42edd0e v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa5ca4572 video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa60d9475 v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa914e641 v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa96f5c5f v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb30c15eb v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb53cc6e9 v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb90cbedf v4l2_of_get_next_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbac4a225 v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc2b271b v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbd31bffb v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbe0b9fe7 v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbe4aa2dc v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc12cf8f8 v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc26eac3a v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc4bcb0fd v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xca3281c5 v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcac07577 v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd25c72b4 v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd9145e1b v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdf89a0a0 v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe0602fd0 v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe379f551 v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe6fce6f2 v4l2_ctrl_merge +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xec56c0b8 v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf4459c85 v4l2_clk_enable +EXPORT_SYMBOL drivers/memstick/core/memstick 0x072efaf4 memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x081bf7cb memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x0dfff246 memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x1032bc63 memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x2ec1b272 memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x40fa1349 memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5d820a02 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x660e4f43 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0x72561208 memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x73ac4ad0 memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa5987a36 memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa82f43ac memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa9d75845 memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xaca76def memstick_suspend_host +EXPORT_SYMBOL drivers/mfd/cros_ec 0x4227ebba cros_ec_suspend +EXPORT_SYMBOL drivers/mfd/cros_ec 0x44d9df9e cros_ec_register +EXPORT_SYMBOL drivers/mfd/cros_ec 0x89dcf139 cros_ec_resume +EXPORT_SYMBOL drivers/mfd/cros_ec 0xf85edaf3 cros_ec_remove +EXPORT_SYMBOL drivers/mfd/cros_ec 0xfae0414c cros_ec_prepare_tx +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x79a04faa pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xc93e2e6e pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x02c368f9 mc13xxx_irq_request_nounmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x19eee3cc mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x23e1f3af mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x320a16d3 mc13xxx_irq_ack +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x3c7e7b55 mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x45871415 mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x7d213b81 mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x7e6e95a9 mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb7562c1f mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb9c3bf92 mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xbfbfab0d mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xcbada10b mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xe326dac2 mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/tps6105x 0x3ea0e1c8 tps6105x_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0x8953b41b tps6105x_get +EXPORT_SYMBOL drivers/mfd/tps6105x 0xbff38d4d tps6105x_mask_and_set +EXPORT_SYMBOL drivers/mfd/tps65010 0x02d4ad0f tps65013_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0x0c6ad2cf tps65010_config_vdcdc2 +EXPORT_SYMBOL drivers/mfd/tps65010 0x28485130 tps65010_config_vregs1 +EXPORT_SYMBOL drivers/mfd/tps65010 0x33739de7 tps65010_set_vib +EXPORT_SYMBOL drivers/mfd/tps65010 0x9fd44c69 tps65010_set_led +EXPORT_SYMBOL drivers/mfd/tps65010 0xb14080cc tps65010_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0xd5bb106d tps65010_set_vbus_draw +EXPORT_SYMBOL drivers/mfd/tps65010 0xe99b3f36 tps65010_set_gpio_out_value +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x5faacc20 ad_dpot_probe +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x6cd0ad90 ad_dpot_remove +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x8a05ed90 altera_init +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x307d1b37 ssc_request +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x4511ca1a ssc_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x0e9755b9 pwm_channel_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5a8b82f9 pwm_channel_handler +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5d5c2951 pwm_clk_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x6a5e1f70 pwm_channel_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x73330c97 pwm_clk_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0xeb7f2c6f __pwm_channel_onoff +EXPORT_SYMBOL drivers/misc/c2port/core 0x04f0205c c2port_device_unregister +EXPORT_SYMBOL drivers/misc/c2port/core 0x05d01d14 c2port_device_register +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0x7fa60bdb dw_mci_probe +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0xcd63376f dw_mci_remove +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0xd75c68f2 dw_mci_resume +EXPORT_SYMBOL drivers/mmc/host/dw_mmc 0xf002c1d2 dw_mci_suspend +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x1d6b0416 tmio_mmc_host_resume +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x378f2335 tmio_mmc_irq +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x38770d0e tmio_mmc_host_runtime_suspend +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x49d16ec0 tmio_mmc_host_runtime_resume +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x5793c085 tmio_mmc_host_suspend +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x5abd6409 tmio_mmc_host_remove +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x6d3deee9 tmio_mmc_sdcard_irq +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x7a6fd700 tmio_mmc_sdio_irq +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0x9e1372c0 tmio_mmc_host_probe +EXPORT_SYMBOL drivers/mmc/host/tmio_mmc_core 0xf02062dd tmio_mmc_card_detect_irq +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x181f8eff cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x70c2880a cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x89c235fa cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0x70f3db8b mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0xcaabf13a lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/nand/denali 0x27ef5588 denali_init +EXPORT_SYMBOL drivers/mtd/nand/denali 0x6926cde2 denali_remove +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x0c058d73 onenand_scan_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x43f7d17a onenand_addr +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x44f8d030 onenand_default_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0xc50fcb94 flexonenand_region +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x3aa6926b hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x4bd9fe4e hdlcdrv_register +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x696d6f40 hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x91b4774f hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xc29533fd hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x14cc8437 irda_register_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x2cebcf93 sirdev_put_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x3f8a167f sirdev_get_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x53bd473f sirdev_raw_read +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x65fa3391 sirdev_receive +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x68618d40 sirdev_set_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x98017bde sirdev_raw_write +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x9858c6c9 irda_unregister_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xa447e499 sirdev_set_dtr_rts +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xa7c2ba19 sirdev_write_complete +EXPORT_SYMBOL drivers/net/mii 0x32da7b67 mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0x6121be0e mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0x72a6ec9c mii_check_media +EXPORT_SYMBOL drivers/net/mii 0xa6fe35b1 mii_link_ok +EXPORT_SYMBOL drivers/net/mii 0xbca6c2f0 mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0xc4539652 generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0xfa4729ff mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0xfe8b3cd1 mii_check_link +EXPORT_SYMBOL drivers/net/ppp/pppox 0x3b78fd89 register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0x50e815b3 pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0x580e1199 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/team/team 0x403ff57f team_options_register +EXPORT_SYMBOL drivers/net/team/team 0x4870e594 team_mode_unregister +EXPORT_SYMBOL drivers/net/team/team 0x4ba3f351 team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0x8d67e8d4 team_mode_register +EXPORT_SYMBOL drivers/net/team/team 0xb8f4877b team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0xc460d7ae team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0xdb22a513 team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0xef3f0627 team_options_change_check +EXPORT_SYMBOL drivers/net/usb/usbnet 0x554f1080 usbnet_link_change +EXPORT_SYMBOL drivers/net/usb/usbnet 0x59a911b9 usbnet_manage_power +EXPORT_SYMBOL drivers/net/usb/usbnet 0xe2e3d215 usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/wan/hdlc 0x06be4e9c hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x08391ef8 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x43b72323 hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0x793e0434 unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x7b287f08 register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x7f23a390 hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0xa2071396 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0xa6407dab attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xa7ad3d53 hdlc_change_mtu +EXPORT_SYMBOL drivers/net/wan/hdlc 0xc3f1f8e7 alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0xde4af763 hdlc_open +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x1cb02385 i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x05522b9f ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x1ee1f113 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x2ec2bb04 ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x319c6026 ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x3a0c33ed ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x49bd42ed ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4e2481d5 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x53358ce3 ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x5932d824 ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x6f6271f8 dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x8c729252 ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xa4cb1dc0 ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xb1adf39a ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xc00712f6 ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x4ddc94b7 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x58720e38 ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x6b7c5461 ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8246be6c ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x895f9dc2 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaf096710 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd210ebf4 ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd28ebe40 ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xefc89fe6 ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0199ec46 ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1f04f027 ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x27cf1694 ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x3229a47f ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4c6ddcb4 ath6kl_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4e1380ee ath6kl_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x54d64e6b ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x6f041640 ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x95917892 ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x9d22b1be ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x9f25f8a1 ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xa305f2a0 ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xb949a313 ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xf6be69fa ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x37874c5f ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x5863e454 ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x91fc76f5 ath9k_hw_wow_event_to_string +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0xf2017e6d ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x62300da7 ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb55c90df ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xf7f00088 ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xfdc21551 ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0480ab97 ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x099502f3 ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0d07d284 ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0f052f42 ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x125a696a ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x14bfa7a4 ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1c08f536 ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1ce3c6bf ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1d444017 ath9k_hw_cfg_gpio_input +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x255ca107 ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x25ade10b ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x266ca7d3 ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x27b81c64 ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x27bd3a64 ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2cbaf2b7 ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3337612f ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x386391b8 ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3b3845fa ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3ecbfc3f ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x426594d9 ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x42b6fa25 ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4c417deb ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4feadd2c ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x53569909 ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x56d21d25 ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x57303dd1 ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5baec960 ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x60c1b682 ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x60f711d7 ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x61b46d8a ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x69a8b335 ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6c27ae3d ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6e6df4d8 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6f5cd640 ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x72c9d560 ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x771a1c07 ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x78666b7c ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x78b9584d ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7b9c5cd3 ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7c505d48 ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7cb703d4 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7d6a66ae ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x814b19df ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x82628fc2 ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x82ee7506 ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x85319600 ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8655a57c ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8b559a0a ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8e1147c0 ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8e4f9f40 ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8e550af5 ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x90c4987e ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x926148ca ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9549ba8e ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x956a191c ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x96d473ff ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x98f10d91 ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9a20169e ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9db1ce64 ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9de34cb0 ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa12289a1 ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa4873020 ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa5f6a2cc ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa804e692 ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xadaa9699 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xae2423dc ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaf0a3080 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb1f4483e ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb4d9d759 ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb57159e2 ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb82039fc ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbd9844c8 ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbf617ade ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbfb80be1 ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbfd8927e ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc0a37bb1 ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc0bda5cd ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc18bb6be ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc3557039 ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc4c890e3 ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc853cec7 ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcc1aea15 ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcc228d6a ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcd11cf36 ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd512ffd3 ath9k_hw_cfg_output +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd61a512f ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd6421bea ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd79e1afb ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd8ba1c16 ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xda676d3a ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdd6f2ee0 ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xde298f48 ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdeeb2072 ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdf50e4b3 ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe7865e04 ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xef5faf71 ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf3915310 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf7d83481 ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0x7c69db76 brcmf_sdio_probe +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0xcac83c7c brcmf_sdio_remove +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x29cff650 brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2dc227f8 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2febaf5c brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x3782e361 brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x4ba76d7c brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x57068f13 brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x65c78af6 brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x6b082be3 brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x6f078d7f brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x760c6f18 brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x79516d18 brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xd2f9c6af brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xd6046abc brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xe5d8dc37 brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x045b0c86 hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x079d9817 hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x0ad69602 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x21305a7e hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x2f54fe5e hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x44d2c563 hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x4df3b50b hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x515083c2 hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x74b7e248 hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x7d516db5 prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x806ff6fa hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x8924d50c hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x8bbadf15 hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x97f2f79b hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x98da4027 hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa12ad27f hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa329bae8 hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xaa9ef7f6 hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb2a945e0 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb2c4d867 hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb31d1834 hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb7826f8f hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc5796dca hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xd00d1e60 hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe519d685 hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe59d8af7 hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe5d380ac hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xf493e5bf hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x159202d0 _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x186b4eb2 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x18a897ef rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1bb30a60 _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1d292879 rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x2639671c rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x2651dab4 rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x282b2a44 rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x2e1fd146 rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3127a209 rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x35bad18e rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x36f2ebca rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3bb26684 rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x41f1e544 rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x4b28f1dd rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x541b6b96 rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x56825f5f _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x5e2f3944 _rtl92c_phy_dbm_to_txpwr_Idx +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x5faf0b70 rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x6cc6ec8f _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x72e25afb rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x870ae11d rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8dea073c rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x974999f6 rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x97660b12 rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x9f40cdcd rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x9f872411 _rtl92c_store_pwrIndex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa321aa2a rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa52b9cab rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa6f963ca rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xad38c7b8 rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb3314d48 _rtl92c_phy_calculate_bit_shift +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb7dba229 rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xbf264042 rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xcdde483f rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd175797b _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd9bbb340 _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xdd087c3e rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe28d9fd5 rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xef2e30c5 rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf5ce4b35 _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xfd56a433 rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x868faad6 rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x8e148dda rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0xa1cf9291 rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0xaa15749b rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x0a158ced rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x1ae5e58f rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x207fbb70 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x27e044f5 rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x300dbb8e rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x3557a000 rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x43910e99 rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x483ebe70 rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x5327fe95 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x540cafd1 rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x6655cba5 rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x709b3770 rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x727c1152 rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x72eb8de4 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x79188a02 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x7e3b32d6 rtl_ps_set_rf_state +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x91bc7dfb efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xac3283a3 rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xb5848b29 rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xed34a91c rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xedd901c3 rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xf7baca22 rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x5da429a7 wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x92e0e0a0 wl1271_free_tx_id +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xdf8ff7ff wlcore_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xf2b93e4f wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/nfc/microread/microread 0xc94c8eba microread_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0xda0080af microread_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x3354adaf pn544_hci_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xa28bbabe pn544_hci_remove +EXPORT_SYMBOL drivers/parport/parport 0x00bf181e parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x04ded69c parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x0a564873 parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0x1fb7bf5b parport_release +EXPORT_SYMBOL drivers/parport/parport 0x274b24cc parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0x2a61bcde parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x459cd2f7 parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x4879d4b5 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x48f27df2 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x4f7c55e2 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0x573773f5 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x5eeab249 parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0x6c3c1f85 parport_register_device +EXPORT_SYMBOL drivers/parport/parport 0x71b72dbc parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x81c0bd73 parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0xa26f3edc parport_claim +EXPORT_SYMBOL drivers/parport/parport 0xb88b6673 parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0xbf59d729 parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0xc0257854 parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0xc2adb9fe parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0xc60e328c parport_read +EXPORT_SYMBOL drivers/parport/parport 0xd0a74780 parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0xd238c649 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0xd3c56e62 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xd4c57eb5 parport_write +EXPORT_SYMBOL drivers/parport/parport 0xdb2d70ec parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0xe1a19bc5 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xe7ee9129 parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xfb57d045 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0xfbb9e5f6 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport_pc 0x4a739a4c parport_pc_unregister_port +EXPORT_SYMBOL drivers/parport/parport_pc 0xca1da74c parport_pc_probe_port +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x300866dc rproc_vq_interrupt +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x31ead486 rproc_alloc +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x35bd0ade rproc_report_crash +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x52d3ad4d rproc_put +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x683c9f66 rproc_boot +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x84cb88a8 rproc_da_to_va +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x98d854ba rproc_shutdown +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xa619adb5 rproc_add +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xd7d6ab2e rproc_del +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x0feed0ab fcoe_ctlr_destroy_store +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x13fbd2e4 fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x218ad0da fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x27e18942 fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x616db9ea fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x6237874f fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x778df2f4 fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x90b750fc fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x9c1ec9a3 fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x9f532278 fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xad7cfa76 fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xde774032 fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0468eefa fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0652620d fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x06bc79d3 fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x118addd9 fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1da5d5ec fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1e78711a fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1f6930ee fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2d40d8c1 libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x32db1150 fc_change_queue_type +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x33e3829e fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36e5fbaf fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4140b3b2 fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x43e8e308 fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4424d973 fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5153719e fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x51da91b1 fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x522df554 fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x531370cd fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x53b11522 fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x55eb0016 fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x681384b1 fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x702f293a fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x70e6a51d fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x725158cf fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x77e117a5 fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7bdb6747 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7e58c9b1 fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x80012570 fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9481116b fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x987aa121 fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9cc7fede fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9f40fffb fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9f60e2e2 fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa039f536 fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa780ea00 fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xaa4d2603 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xaac228d6 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb366e2de fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb5f7d7df fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb7f9eac4 fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb89be533 fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb9dd117a fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbadd6d1a fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbf5eacc9 fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc5741d92 fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc87a8b64 fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcbb62fb8 fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdc3cc4cd fc_change_queue_depth +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe3d8dc1a fc_rport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe512c397 fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xeb9f1175 fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xefa37b8a fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xff765a95 fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x055a6618 sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x17c6d7e1 sas_wait_eh +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8a87e724 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xaf89a272 sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xd1cf6413 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0c17edb1 osd_sec_init_nosec_doall_caps +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x130fd113 osd_req_add_get_attr_page +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x2682d742 osd_req_read_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x33ecd821 osd_req_decode_sense_full +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x42b20086 osd_dev_init +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x471bd11d osd_req_create_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x4c850d73 osd_req_format +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x4f4736a4 osd_req_write +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x54fc41ab osd_end_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x5585e581 osd_req_flush_collection +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x56d4f15e osd_req_get_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x61be94a9 osd_req_set_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x63e7f096 osd_start_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x68cd4719 osd_execute_request_async +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x6f35f5b2 osd_req_read +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x701f61fc osd_execute_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x71c8469c osd_req_list_dev_partitions +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x72039008 osd_req_list_collection_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7c0b54ab osd_req_remove_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7e890bf3 osd_req_list_partition_collections +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8878e231 osd_req_write_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8b3ec092 osd_req_list_partition_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8c731c98 osd_req_remove_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x92c123b9 osd_req_add_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x98d88bda osd_req_flush_obsd +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9d76ad1c osd_req_read_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9e186cec osd_req_create_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xa0b6326f osd_req_read_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xa198c956 osd_dev_fini +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xab3c4346 osd_req_write_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xab984758 osd_req_decode_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xb690ff1e osd_finalize_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xba30de09 osd_req_add_set_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc0045b37 osd_req_flush_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc7825242 osd_auto_detect_ver +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xe2880860 osd_req_flush_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xf2e0b31f osd_req_write_sg +EXPORT_SYMBOL drivers/scsi/osd/osd 0x4ffe2712 osduld_device_info +EXPORT_SYMBOL drivers/scsi/osd/osd 0x53366da0 osduld_info_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0x5f327adc osduld_path_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0x5fc48609 osduld_unregister_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x64b9e45f osduld_register_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0xf7153836 osduld_device_same +EXPORT_SYMBOL drivers/scsi/osd/osd 0xf74ba16a osduld_put_device +EXPORT_SYMBOL drivers/scsi/raid_class 0x07b3db87 raid_class_release +EXPORT_SYMBOL drivers/scsi/raid_class 0x2832327c raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0x93e02a51 raid_component_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x4d0a754f fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x5987bb20 fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x59ce1d04 fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x5b2f4334 scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x5fdbb604 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7954b1ea fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7d089d9f fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x80bb0c3b fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xade95c76 fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xc1d32df3 fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xc807c5c8 scsi_is_fc_vport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xc86f94ce fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe6354a8b fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xf56c7897 fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x08905268 sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0f9fbef9 sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x13bfe03d sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1a64abcf sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x36f95c1e sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x480e8338 scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x49ca827d sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x52e47311 sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5ad92c98 sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5c7005f6 sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x68802277 sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6fbba3fc sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7d25537e sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x821b71f6 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x84eda447 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x859265c1 sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x91f7279f sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x9222dafb sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x98e67b12 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x98ee1312 sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa2affb80 sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa634b50b sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa6dfebff scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xba3da169 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc6f4f9fc sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd1c4d46a sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xeb1699b9 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf43cf58b sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x6d464035 spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x7a60ce0b spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xb7541803 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xdc3da7fa spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xfa3b21ba spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x3dbc6c7c srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x61c5fe8f srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x9a1e7881 srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xff5d72ee srp_rport_put +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x01591c4b ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x6259b5da ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0xc39355a5 ufshcd_runtime_resume +EXPORT_SYMBOL drivers/ssb/ssb 0x00a76c7a ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0x29ca8c27 ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0x31742c23 ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x3833d9c8 ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x4346ea93 ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0x50b14bd6 ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0x661650a5 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0x77a8636a ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x806893e3 ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0x96c862f0 ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0xa71590fc ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0xba73497b __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0xc0512e0f ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xcdcb97be ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0xd481192b ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xd66afb81 ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0xddef50b7 ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0xe37bdd5a ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xe9400db1 ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0xf4f8dc9a ssb_driver_unregister +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x3bd019c0 adt7316_remove +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0xae979729 adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x38d0e29b ade7854_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0xf8f870ff ade7854_probe +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x051eff71 lnet_set_reply_msg_len +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0bce7eef lnet_counters_get +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1327b080 the_lnet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1366b7ac LNetSetLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x19670622 LNetNIInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1b191752 lnet_msgtyp2str +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1fe16fd5 LNetGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x204b8151 lnet_counters_reset +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x22f6dfbc lnet_extract_kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2aa9953d lnet_cpt_of_nid +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2ac93e90 lnet_connect_console_error +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x33202a6c LNetGetId +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3558e584 lnet_iov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x385a2614 lnet_unregister_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3c779ee0 LNetPut +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3f4f5b46 LNetNIFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x473ad33b LNetDist +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x496f020a lnet_parse +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x4bb00492 lnet_copy_iov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x4f9cb871 lnet_extract_iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5811a721 LNetInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x58a1ca89 LNetMDUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5ee3f0b6 lnet_connect +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5f4d81e9 lnet_set_ip_niaddr +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5fee352c lnet_acceptor_timeout +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x61f784b2 LNetClearLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x64cdea3a LNetCtl +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x6ef4dc06 lnet_create_reply_msg +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x6f7be171 LNetEQGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x722c76e5 LNetMDAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x747cf7b1 lnet_copy_iov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7c5c2954 lnet_copy_kiov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7d59a7fe LNetMEInsert +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8221be6a lnet_kiov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x854ab844 LNetEQWait +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8a3064f2 LNetSetAsync +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9de986d3 LNetEQAlloc +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa436955e lnet_finalize +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa8c2760b LNetFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa414970 LNetMEUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa9b477e LNetMDBind +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb75f7953 LNetEQFree +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xba5566d2 lnet_acceptor_port +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xbf0760a2 LNetMEAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xcabd58eb lnet_copy_kiov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xd72660b2 lnet_register_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xef134986 lnet_net2ni +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf1b316bf LNetSnprintHandle +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xfd1fbb12 lnet_notify +EXPORT_SYMBOL drivers/staging/lustre/lnet/selftest/lnet_selftest 0x078db139 lstcon_ioctl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x1c4bb5f9 LU_OBF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x375e6f8d LUSTRE_BFL_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x54b85d70 seq_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x5a076d2b seq_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x712482cb client_fid_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x78d32a32 client_fid_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x93449443 seq_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xae61cff5 LU_DOT_LUSTRE_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xc997a02f LUSTRE_SEQ_SPACE_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xe94f1c8a seq_client_get_seq +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xecee2727 LUSTRE_SEQ_ZERO_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xf3300c6d seq_client_alloc_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x1d25bf5a fld_client_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x266ecce7 fld_client_add_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x419a61eb fld_client_proc_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x65e513b6 fld_client_del_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x9be61810 fld_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xa7778666 fld_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xd1c0fb9d fld_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x000c507f libcfs_debug_dumplog +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x00c881f6 cfs_cpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x01db5172 cfs_percpt_atomic_summary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x03387ca6 cfs_curproc_groups_nr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0389f857 cfs_cpt_spread_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x04d3ce6a lbug_with_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x069f9bb2 cfs_wi_schedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08ada613 libcfs_console_backoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0b4b1546 libcfs_lnd2modname +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0c199551 libcfs_sock_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0c68bc45 cfs_cpt_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0de6c369 cfs_cap_lower +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0e311d38 cfs_percpt_atomic_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0f10432d upcall_cache_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0f5eff79 cfs_percpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x10b7e9c3 cfs_cpt_unset_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x10fd50ae cfs_hash_for_each_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12426266 libcfs_run_lbug_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x151e7546 cfs_cpt_table_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x17ac7833 libcfs_deregister_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1a60d439 cfs_parse_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1c7ec980 cfs_hash_for_each_safe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d5a3928 cfs_timer_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x22319718 cfs_percpt_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x23f6f445 cfs_restore_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2637a660 cfs_hash_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2663147a __cfs_fail_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x27b6d3ba cfs_ip_addr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2a55ec79 libcfs_kkuc_msg_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2b1e0458 cfs_get_environ +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2dbe54b2 cfs_trimwhite +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2e5044c7 cfs_cpt_set_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2efcc0e6 cfs_block_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2f85ad89 cfs_hash_dual_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x30986343 cfs_range_expr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3150d6c8 libcfs_sock_getaddr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x31fc5082 cfs_crypto_hash_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x339b461a cfs_hash_dual_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x377f93fb cfs_srand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3834f243 proc_call_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x389ca502 libcfs_debug_mb +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x38fde09c cfs_hash_hlist_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x39fdcd2b libcfs_debug_set_level +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3c1285bd libcfs_subsystem_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3d5e6098 cfs_race_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ea730c0 cfs_gettok +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ef0d90c libcfs_kkuc_group_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x411db754 cfs_crypto_hash_final +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x41ab33a1 libcfs_ipif_free_enumeration +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x42a7cb3f libcfs_sock_listen +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44688a0a cfs_block_allsigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44728d76 cfs_cpt_bind +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44839bbb cfs_rand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44f07cfc cfs_pause +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x47fdb4d1 cfs_timer_is_armed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x48193550 cfs_hash_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x482deff7 cfs_cpt_unset_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x48f163c6 libcfs_str2anynid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4a99af72 cfs_clear_sigpending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4b123f3a cfs_hash_cond_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4d89e988 cfs_block_sigsinv +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4f1f2fa5 cfs_crypto_hash_digest +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x50345570 libcfs_str2net +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5051b6d2 portal_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x509d38b0 libcfs_net2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x54fd9a71 cfs_percpt_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x55d18175 cfs_hash_size_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x58a7ee00 libcfs_catastrophe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5946ec2b cfs_percpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5a785762 cfs_cpt_online +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5c013b81 cfs_expr_list_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5ca50414 upcall_cache_flush_idle +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d3be65a cfs_crypto_adler32_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d73c3e3 cfs_expr_list_free_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5dce9e80 libcfs_lnd2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5dd2e495 cfs_hash_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5df8c623 cfs_cpt_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62289d65 cfs_array_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x63be5b7f cfs_race_waitq +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x64685fef libcfs_console_min_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x647a7b6d upcall_cache_get_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6564c55b libcfs_console_max_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x65dd9f0c libcfs_run_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x66136d2d cfs_timer_arm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x67398404 cfs_wi_sched_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c905b5f libcfs_watchdog_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c9b4713 cfs_hash_bd_del_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6dfa9ea1 cfs_crypto_adler32_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6e6af71c current_is_32bit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6f928e1b libcfs_debug_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71f662a3 libcfs_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x75600a04 cfs_hash_bd_move_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x78d4c7a0 cfs_crypto_hash_update_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x790dbd66 cfs_hash_rehash_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x794b2876 libcfs_sock_getbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a3d49ae cfs_expr_list_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7b0b748a cfs_ip_addr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c7986cf waitq_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7e6a5b3c cfs_hash_findadd_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7e6f6485 cfs_ip_addr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7fda989d cfs_fail_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8151c3aa cfs_cap_raised +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x81bef0ce add_wait_queue_exclusive_head +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x828d16a2 cfs_cpt_table +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x83d795e4 cfs_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x83e75430 cfs_hash_getref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x857aaea7 libcfs_register_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x89b2ddc3 cfs_hash_rehash_cancel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x89dcbafa cfs_hash_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8b2b09fd cfs_hash_debug_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c85e4e6 cfs_crypto_hash_speed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8d3622c1 cfs_hash_bd_add_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8dda96cb cfs_hash_dual_bd_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f12bb52 libcfs_log_goto +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f45f10d cfs_init_timer +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x91504e8b libcfs_kmemory +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x92f54077 cfs_hash_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x93611067 upcall_cache_flush_all +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x940ed192 libcfs_stack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x95620e8c cfs_wi_deschedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x96727837 cfs_hash_dual_bd_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x97b0b9bc cfs_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9879b229 cfs_get_random_bytes +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9dc6fe60 libcfs_sock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9de923a6 libcfs_sock_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9e76f14a libcfs_sock_setbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9f82f712 cfs_trace_copyout_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa0572e5d libcfs_sock_abort_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa256e060 cfs_hash_bd_peek_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa28a6757 cfs_percpt_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa2b68b2a cfs_array_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa6b9dee6 libcfs_kkuc_group_rem +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9088531 cfs_expr_list_values +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9a5cf4e cfs_hash_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9dc74e2 cfs_trace_copyin_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9eae690 cfs_str2mask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xab887583 init_waitqueue_entry_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xabad94e1 libcfs_sock_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xabc53bf1 cfs_hash_is_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xac0f67e3 cfs_cpt_unset_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xad019238 cfs_str2num_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xafdb46d6 cfs_hash_dual_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb2ae1633 cfs_hash_rehash_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb336ee38 cfs_hash_for_each_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb473e79e cfs_wi_sched_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb9cb508 cfs_curproc_cap_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbc275420 cfs_cpt_unset_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbd5d492e cfs_timer_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbf7a37f1 cfs_signal_pending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc0ea7fc0 cfs_expr_list_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2911d96 cfs_expr_list_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2dfd791 libcfs_console_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc39fd2f9 libcfs_panic_on_lbug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc3eb614e libcfs_ipif_query +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc47433a6 cfs_capable +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc49b1c62 cfs_percpt_atomic_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc514e721 cfs_hash_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc6ad1583 libcfs_sock_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xca24b2dc cfs_hash_for_each_nolock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcafda950 upcall_cache_downcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcb2160d3 cfs_cpt_of_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcb385db9 libcfs_debug_binary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcbab8493 schedule_timeout_and_set_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcc20e694 libcfs_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcc7e1d13 cfs_percpt_lock_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xccc45639 cfs_free_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcd38904c cfs_wi_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xce1a88f2 libcfs_arch_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xced1fed2 cfs_hash_rehash +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf61bacb __cfs_fail_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf90528c cfs_cpt_table_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd1319447 cfs_cpt_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd13befa9 cfs_percpt_lock_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd3965252 cfs_hash_del_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd5396536 cfs_cpt_set_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd66d427e cfs_hash_dual_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6a52be3 libcfs_printk +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd9541990 cfs_strncasecmp +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd96f406d cfs_cap_raise +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xda09d370 upcall_cache_flush_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdce448d0 cfs_cpt_set_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xde17bb8d libcfs_isknown_lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xde640f0a cfs_hash_debug_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf2789c0 cfs_curproc_cap_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf675bc7 cfs_hash_add_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdfcd8209 upcall_cache_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdffc951d cfs_timer_disarm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe3bf6897 cfs_percpt_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe45b62ff cfs_cpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe6555032 libcfs_ipif_enumerate +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe6d83cf8 cfs_hash_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe7b54314 libcfs_arch_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xec1f56d5 libcfs_str2nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeceac781 cfs_fail_val +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xedf3a25a cfs_timer_deadline +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xee92bb75 cfs_percpt_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf0246bf2 cfs_cpt_table_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf372d1c2 cfs_firststr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf440bb38 libcfs_kkuc_group_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf782fbe6 cfs_cpt_weight +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8a8644b libcfs_id2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8efb8c5 waitq_timedwait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf94025d1 libcfs_str2lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfa0d98ca cfs_cpt_set_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfbd3438b cfs_hash_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfbfbdc46 upcall_cache_put_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfd590e10 libcfs_kkuc_group_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfde479b0 cfs_hash_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfe565fa9 cfs_crypto_hash_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xff0f98a6 libcfs_debug_vmsg2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x5832e753 ll_stats_ops_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xba79a001 ll_osscapa_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xbaf67fb6 ll_direct_rw_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xcd3cde92 ll_iocontrol_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xf6865b82 ll_iocontrol_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x069a63fb lov_lsm_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x09a516d2 lov_lsm_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x37815018 lov_stripe_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x7d12fd62 lov_read_and_clear_async_rc +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xcf331274 lov_device_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xd7578204 lov_stripe_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x16322732 fsfilt_put_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x4144c9fa lustre_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x480da9d4 push_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x5de01627 lprocfs_counter_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x85d40144 obd_memory +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x8e5c9398 fsfilt_register_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xb4f8ee63 lprocfs_read_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xbbfd79a2 fsfilt_unregister_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xc9de98be l_dentry_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xd94212be lprocfs_counter_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xdf623799 lprocfs_stats_alloc_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xed2b6619 fsfilt_get_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xf58b6a31 pop_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x14a47f31 it_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x9c22b84f it_open_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xb57d8447 it_set_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xf46a886f it_clear_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mgc/mgc 0xdc287f95 mgc_fsname2resid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x006bf7f4 llog_declare_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x00c97f80 dt_store_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x00e438b4 local_file_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01665e34 class_parse_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01a8724e cl_page_vmpage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x035852d0 lustre_swab_llog_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x03797e5e lu_dev_add_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x038129a6 lu_env_refill_by_tags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x04d5b55a lprocfs_at_hist_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x057f6d4b class_find_old_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05af1920 dt_quota_glb_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05f84e88 LU_BUF_NULL +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x064b48bf dt_store_resolve +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x06ccc91b cl_env_unplant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07aa68bb lustre_swab_lustre_cfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x083942ff class_del_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x088cb14d cl_object_attr_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x08a1c71f lu_object_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x09f3cab3 class_name2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0a479d0c llog_cat_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b49ab8f cl_io_submit_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b631edb cl_vmpage_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b8c478f lprocfs_single_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0bb6ab46 class_handle_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0c13c27d cl_env_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0c598fd0 lu_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0c65965a lprocfs_rd_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0cc20d06 llog_cat_declare_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0cf99bff dt_acct_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0de14dbf llog_osd_put_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0df4daa9 cl_io_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0e05d463 cl_io_is_going +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f9a4274 lprocfs_rd_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fe91547 obdo_to_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1004fbab dt_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11495519 lprocfs_write_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11954516 lu_context_enter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11fec9f7 cl_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x138ed166 llog_cat_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1476b8c4 lu_ucred_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1491dc30 lu_context_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x16a0505b dt_txn_callback_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17260880 obdo_cpy_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x18d5d398 class_process_proc_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x194c2ee1 class_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x19b19e93 lustre_idmap_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x19b904cc cl_env_nested_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1bcced4d cl_page_find_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1ca404d8 cl_page_is_under_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1cc487c7 capa_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1ec513a8 cl_io_iter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1f3dfb0d lprocfs_stats_collect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1f4caad1 lu_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1fe614a9 cl_page_clip +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x200ff32a cl_lock_discard_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x20593111 local_index_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x20c9e633 lprocfs_seq_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x20e7376c cl_lock_closure_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21307495 lu_buf_check_and_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21a2b4ec llog_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x221826f1 class_parse_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x226bdff8 cl_io_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x228167e3 lustre_in_group_p +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2298ce7f cl_page_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x22d04d64 cl_env_nested_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2378c99c cl_lock_ext_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x23f8b849 lprocfs_register_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2547efae lustre_uuid_to_peer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2568078b obd_llog_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25695002 cl_page_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x259ebac6 obd_alloc_fail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25aaa29c cl_lock_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x26215974 cl_object_attr_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x266b2393 cl_req_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x270da131 class_manual_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x275cdc7a cl_env_reexit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x27a997b5 cl_page_is_vmlocked +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x293a2310 lprocfs_wr_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x293e12e9 cl_sync_io_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x297cf5e0 class_handle2object +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x299d4e43 class_exp2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x29db88fd lprocfs_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2a01522b lprocfs_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2a233fce lu_site_purge +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2a915f29 lprocfs_rd_u64 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ac5cb1d lu_object_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ae1cd79 kuc_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2b4c48e9 server_name2svname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2c5e3911 class_conn2export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2cba08cf dt_record_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2cef22ac lprocfs_rd_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d636b60 cl_offset +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d8c8c60 llog_copy_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2dc88ed8 lprocfs_free_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2dc9c4d8 dt_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2e622c45 cl_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2e8c008e lprocfs_obd_rd_max_pages_per_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2f3dd760 cl_page_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x312b2695 llog_init_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x31b2bf26 llog_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x31bc8c7c cl_lock_signal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x31c56a7b cl_io_loop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x326ea7ca class_conn2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x327b70ad cl_object_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32b24b93 cl_lock_mutex_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32ea87a7 cl_lock_extransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32ef2c8f llog_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32fc6bed cl_io_iter_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3302b4ab lu_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x33ab8c13 cl_req_page_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34c8c9bb cat_cancel_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34caf674 lustre_idmap_lookup_gid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34e329c4 cl_page_unassume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34ebb39b cl_object_kill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3588b754 cl_env_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x35a7fd76 lu_device_type_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37ed6e4b at_early_margin +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37fcde52 lprocfs_rd_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38788fed cl_lock_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x387b42bf cl_page_list_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38848ab7 lustre_process_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38fb0c90 class_match_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3906e69c obd_exports_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x393b911b cl_2queue_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x39511859 llog_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x39c4ed90 class_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a005065 dt_otable_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a8f3e90 lprocfs_rd_server_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3c85609b llog_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ccc1cfe iattr_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d3d2855 class_export_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d8c16ff cl_io_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3dc4a4a8 lprocfs_free_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3e1cbab2 llog_cancel_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3f41fea1 cl_io_read_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3f7af45b class_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ffeff59 class_uuid2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x402de989 lprocfs_rd_num_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4086281f dt_lookup_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x40977231 cl_page_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x42a48d07 lprocfs_nid_stats_clear_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43011b0d cl_lock_hold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x434b4968 local_file_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43a1e4ca cl_io_rw_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44b3b82d llog_osd_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44e41abb lustre_posix_acl_xattr_filter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x455cc956 dt_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x45fb488c llog_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x46723f5a class_unlink_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x474ed5bd lustre_swab_ll_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47b35f7d statfs_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48cdfd10 lu_env_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x494cfb52 lustre_acl_xattr_merge2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a0f6ea lustre_posix_acl_xattr_2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a29223 lprocfs_find_named_value +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49bf5a26 cl_object_has_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49f483d6 cl_page_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ac2aabb cl_io_commit_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ac58713 obd_connect_flags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4afcacb2 lu_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4b4f73d0 lprocfs_wr_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d10da5b cl_lock_closure_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d13458b kuc_len +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d2e074c lprocfs_init_ops_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4de1d44e lu_site_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4e3950e1 lprocfs_rd_timeouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4e8eb28a lprocfs_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4f118c37 llog_cat_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4f79c5f9 dump_lniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4fba4346 dt_directory_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4fea554c cl_lock_enqueue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x509bc8f9 class_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50af3a82 cl_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50c7fc36 ptlrpc_put_connection_superhack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5117b228 cl_page_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x51506099 obdo_from_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x52a06763 cl_page_list_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x532ff1ee cl_lock_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x53bcd0fe cl_lock_mutex_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54885f87 ldlm_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54a0a877 llog_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x55128a45 cl_object_glimpse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5524f278 dt_index_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x558bec27 obd_ioctl_getdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x55c49fcd cl_page_list_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5627cce8 lprocfs_oh_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x564e9d44 init_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x57040620 cl_lock_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x570d09ae lustre_swab_lu_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x574c4a31 cl_lock_at_pgoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x582835ab dt_txn_hook_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x58f3aca2 cl_io_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x59ac9c9c cl_lock_unhold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x59aec8c2 lprocfs_rd_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a20d896 obd_memory_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a312dfa cl_2queue_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a617779 cl_io_lock_alloc_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a64d92d lprocfs_counter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a932f9b cl_lock_enclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bb77aa0 dt_locate_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bc022c5 lprocfs_dt_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bd35ef5 __llog_ctxt_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5cf63248 lu_context_key_revive +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d34ae0d cl_lock_mode_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5db41968 cl_page_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ed188a9 lprocfs_add_symlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fe97b73 block_debug_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60325e38 lu_context_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x61fc4e7a dt_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x62ace73d lu_env_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6300cb20 cl_lock_descr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x63143eb7 capa_cpy +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631a518d mea_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631fd7b9 lustre_ext_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x637239ac lustre_idmap_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x63d440b1 lustre_idmap_lookup_uid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x64060b02 cl_unuse_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x650f45ec cl_page_cache_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x65133e6d cl_2queue_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x656e3a90 llog_exist +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x65fda1b3 lu_object_put_nocache +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x660c3694 cl_lock_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x66c66651 cl_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67088356 cl_page_list_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6734adbd lprocfs_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x677fd7f9 proc_lustre_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67977b42 lprocfs_remove_proc_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67a90622 la_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67dc223a lprocfs_remove +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6855bffd llog_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6890d175 lustre_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x68c0872e dt_declare_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x68cf9991 obdo_from_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x699bd270 lprocfs_alloc_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69c42114 at_min +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a08e228 cl_lock_is_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a1ce90b lprocfs_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ade7bdb lu_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ae788a7 lprocfs_obd_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6b176c4d dt_record_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ba4dd86 lu_context_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6bb6d421 lu_buf_realloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6bd1a01c cl_page_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c14a438 class_exp2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c8eb74a lu_object_add_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6cbcf842 cl_page_list_splice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6d4945c3 lu_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6df19e23 cl_lock_user_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6e0e9981 lu_cdebug_printer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6e5118c6 class_disconnect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f3e6225 dt_quota_slv_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f5a817d lu_context_key_degister_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6fecc0b5 obdo_refresh_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x70c10e23 capa_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72adbcf9 lu_env_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72ddee4c obdo_le_to_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x742559b1 class_unregister_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7483812e llog_cat_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x74a8ec83 cl_page_list_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x74aa95cf lprocfs_init_ldlm_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x752f71a8 class_get_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x756a77f3 class_parse_nid_quiet +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x76f4a6ef obd_export_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x777e5d79 cl_lock_mutex_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77d2089a class_name2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7802fcd7 lustre_swab_llogd_conn_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x781e2044 lu_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7840f670 lustre_idmap_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x789796a1 obd_zombie_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x79cb7463 cl_env_implant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x79f1172b lprocfs_rd_connect_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b1b4821 class_new_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b3e3a9a obd_export_evict_by_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b4fc57b at_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7ca092d1 llog_obd_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7dd974f1 cl_queue_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7edcafa0 cl_env_reenter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f9237e5 class_handle_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fabbae0 cl_req_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fad7291 raw_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fe3b631 cl_io_submit_rw +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fe5561a obd_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8031efb8 lprocfs_dt_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x806cc497 class_add_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x80a2f33c cl_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8108d669 llog_osd_get_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8153e3e3 cl_page_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81742d89 obd_ioctl_popdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x831f656c class_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x835fa549 cl_page_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x83ab5d3a lu_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8489f086 obd_alloc_fail_rate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x849e5385 obd_update_maxusage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x84cbd4eb local_oid_storage_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x84d170be llog_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x84f80fbf lustre_register_kill_super_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x85117b20 cl_env_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x85b8b10a lprocfs_alloc_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8832a0c7 class_detach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x88512a6f cl_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x88b443f3 llog_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x890f23b8 lu_object_locate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8aa2c358 lprocfs_dt_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b5f4057 lu_context_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ba6e479 lustre_swab_lu_seq_range +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ca3bfd2 dt_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ced978b cl_lock_modify +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8d42ddae class_disconnect_stale_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8de1ad4b lustre_common_put_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8e67addd cl_page_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f67314c obd_dump_on_eviction +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8fb5842b llog_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x90c8d327 lprocfs_init_mps_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x915fe831 lu_context_key_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9179942b cl_type_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92268275 lu_object_find_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x924fd33f cl_lock_descr_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9276762d lprocfs_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92e01bbf lu_context_key_degister +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92e58479 obd_dump_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93776107 dump_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93b46468 lu_session_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x94465779 cl_page_list_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x94677235 lprocfs_clear_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x94e58974 class_conn2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9512d507 lustre_acl_xattr_merge2posix +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x955f5220 ldlm_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95735c6c at_extra +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95ec998a lustre_groups_sort +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x961d5b92 cl_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x96a62bf3 class_devices_in_group +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9735d16c class_connected_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9767adce class_uuid2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x97d03783 at_history +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9804cb44 lu_device_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x991ee058 lprocfs_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x99d3cb76 class_new_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x99dd6371 cl_wait_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ad3bd2b lu_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b1ed9d8 obd_jobid_var +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b4b8f2d dt_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b531cb0 obdo_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b90da6e cl_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9cd791b1 dt_txn_hook_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9d136d3d class_put_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9d644c6b cl_lock_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9dbb17b6 lprocfs_dt_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ddb28f7 lprocfs_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ff2328e cl_lock_user_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ffb45da cl_lock_disclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa0aefaa2 cl_unuse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa0f4c4bd cl_page_is_owned +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa21c5ea1 obdo_from_la +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa2ae42d9 cl_req_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa2db95b1 class_search_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa2dcbdbd dt_txn_callback_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa2edde7c dt_version_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa2efe075 lustre_end_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa346eae4 cl_lock_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa3d0551f lprocfs_rd_numrefs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa4335379 cl_sync_io_note +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa4657265 lu_object_find_slice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa46cc8df cl_object_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa4f2aadc cl_2queue_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa513f7e4 lustre_groups_from_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5de2652 class_config_llog_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5fb234f lprocfs_write_frac_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa674c241 kuc_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa6a043c7 lprocfs_add_vars +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa7988fde cl_page_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa862d221 lprocfs_oh_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa87db663 cl_io_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa991e333 llog_declare_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa0ad03f class_export_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa21b7a0 lustre_register_quota_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa7dbbd7 lu_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabf45922 capa_decrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac03d8c3 cl_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac7f1596 kuc_ptr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xacb73876 cl_2queue_init_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xad4b875a dt_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xadd33353 obd_llog_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xadddb5dd cl_page_list_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xae8026a3 cl_req_page_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb01963a6 class_uuid_unparse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0fb9886 cl_lvb2attr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1090cb3 class_config_parse_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1b89b6d class_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1d536bc class_import_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb220f880 cl_object_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb3152ede cl_io_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb319db6d class_handle_hash_back +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb3407064 lu_context_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb3a987fe cl_page_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb41998cd lustre_cfg_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb5389c96 lprocfs_add_simple +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb58c6ccf lu_site_init_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb5bc1f1d cl_env_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb5c33155 cl_page_list_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb61b0b64 llog_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6ba5dd5 kuc_ispayload +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb743ec6a dt_mode_to_dft +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb7aa6d69 cl_locks_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb8e42fb0 cl_lock_get_trust +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb8f7f0e9 llog_cat_init_and_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb967b162 class_find_client_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba985283 lustre_register_client_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbacac922 lprocfs_write_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbadc6285 class_num2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbb202b81 lu_context_key_quiesce_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbba5e617 cl_page_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbcebb8ba cl_lock_nr_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbd622042 obd_export_evict_by_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbe4566aa cl_page_own_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbe9c4a38 lu_object_assign_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbefbdb0b cl_io_rw_advance +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbf950199 lprocfs_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbf9e695e lprocfs_oh_tally_log2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbff1f318 cl_2queue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc07ff72a cl_page_gang_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0bf7ef2 obd_debug_peer_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc10b640b llog_open_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc1b9a319 lprocfs_oh_sum +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc20627b9 local_index_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc313a7fa cl_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc38199ea cl_io_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc3840aec lu_object_invariant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc48ccbae lu_device_type_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc57783ec cl_lock_hold_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc57f5cbe lu_object_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc58ae3c8 llog_cat_cancel_records +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc5a7523c lprocfs_rd_conn_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc5ac0263 cl_conf_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc6f29c12 llog_thread_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc702abcf md_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8dbaa87 lustre_swab_cfg_marker +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8f13f08 class_import_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc95ee78f cl_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc9b3c667 dt_lfsck_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xca0d17f0 lprocfs_seq_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xca3b562c obdo_to_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcaebbbcb cl_pages_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb0ab67f obd_max_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcc1cb576 lu_context_key_revive_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xccf7a8de obdo_cpu_to_le +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd0b3e90 cl_req_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd5ee897 lu_context_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd679f2c dump_lsm +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd7537ee get_devices_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd8a604e lu_buf_check_and_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcea8c1d8 cl_use_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xceb005d9 cl_io_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcedb140a obdo_cmp_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcf86facd lu_context_key_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcfcb8e84 llog_cat_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd0103eae cl_sync_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd04c1a57 llog_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd053438d class_incref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd08827c0 server_name2fsname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd0b6995d lu_buf_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd0c26f28 cl_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd10aa042 lustre_swab_llog_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1b1478b cl_attr2lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1f58645 lustre_swab_llog_hdr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd30da9e7 cl_io_lock_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd3af6b2e lprocfs_exp_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd4499232 cl_page_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd45260d9 cl_page_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd506f3e9 cl_page_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd507df39 lu_device_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5407dd6 lu_kmem_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd58d8fe3 lu_kmem_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5918124 cl_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5a09703 lprocfs_nid_stats_clear_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5dfca67 lprocfs_rd_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd68f12a5 cl_page_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd70fe669 lustre_swab_llogd_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bc8654 obd_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bfbc9c lprocfs_dt_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7f7b340 cl_lock_mode_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7fa9b9c cl_lock_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd8c62f91 cl_page_make_ready +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd9b0505e lprocfs_free_per_client_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd9f9234b lu_object_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda3da502 lu_object_anon +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda5b1ced class_find_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda74761c lu_ucred +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdaa1fae2 class_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdac644c8 lustre_posix_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdad4e2a7 class_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb13dce1 capa_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcc40af0 class_check_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcefc33a cl_lock_hold_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd78c0c7 lu_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd958947 cl_page_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde11617f cl_req_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde290d53 lu_ucred_assert +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde70796c cl_page_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde7d985b obd_dirty_transit_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe028cf84 capa_encrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe13ccd30 capa_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2eb4470 class_get_next_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3323f5d class_handle_free_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe34b740a llog_cat_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3eae6bc class_register_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe46eee11 llog_declare_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe53bf5e5 cl_lock_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe6ca0b7f cl_io_sub_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7d4defe local_object_unlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7d83236 cleanup_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7eaa5d7 cl_page_list_move +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe82348ca dt_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe834ca1c class_config_dump_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8b7fa5d lprocfs_exp_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8e84c32 class_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xea015310 cl_page_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeac39e6d cl_lock_is_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb3f388a _debug_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb46275b class_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb9d20ad lu_context_key_quiesce +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec7d6b85 obd_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee5d896f llog_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee68bc29 lu_session_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee96cfba cl_2queue_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeeeb79fa do_lcfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xef76f858 block_debug_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf012c9fb class_disconnect_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf01e2527 server_name2index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf06e1239 lu_context_key_register_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf0d00c6f llog_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf0ec0f16 cl_page_list_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf0ef310b cl_lock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2fd6695 statfs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3253e15 cl_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf357f571 lustre_register_client_fill_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf395ad85 cl_lock_state_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf490d5f9 class_del_profiles +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf4c407d5 capa_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf4f2a1d3 cl_lock_weigh +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf60d4659 capa_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf64eb57f dt_index_walk +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf6529c0e lustre_idmap_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf6b11178 lprocfs_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7020831 lprocfs_dt_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf703d230 cl_enqueue_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf74de1e2 class_fail_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7f42641 lprocfs_free_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf811685e cl_object_attr_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8c2df92 obdo_set_parent_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa481ce4 dt_try_as_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa51adc0 llog_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa813d06 capa_hmac +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb95b4d9 lprocfs_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbea0098 lu_types_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc7f18d0 obd_pages_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfcdf12c8 cl_lock_closure_build +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfce4103b lu_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd20428d dt_txn_hook_commit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd3b84fd lprocfs_alloc_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd479466 obd_devs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd56b63a cl_io_prepare_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd68d17a class_notify_sptlrpc_conf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd8f5cf4 lu_buf_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfdbe1557 lprocfs_write_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfdedea24 obdo_from_iattr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfe89478d cl_object_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfea9ad1e cl_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfeece2e7 local_oid_storage_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff1e9fa3 lu_dev_del_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff57e92d class_match_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfffc1f11 lustre_swab_ost_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/osc/osc 0x5c4940c2 osc_update_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x00d95039 ptlrpcd_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0180fe7b sec2target_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01d6ef7f ldlm_pools_recalc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01e098e3 req_capsule_filled_sizes +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0240cd3f ptlrpc_free_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x048b59d5 lustre_msg_set_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x04f466b3 ptlrpc_request_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0515f93b RQF_FLD_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x05b9b240 lustre_free_reply_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x06b3942b lustre_swab_lov_user_md_objects +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x071fc74a RQF_LDLM_ENQUEUE_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x07605c7d interval_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x078aec0f client_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08398d3a ptlrpcd_alloc_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08bb2d27 lustre_swab_obd_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x095587d0 lustre_msg_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a312b55 target_print_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a3130b0 RMF_MDT_EPOCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a96e667 client_import_del_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac0486e ldlm_lock_allow_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac252b2 lustre_msg_set_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac54708 lustre_errno_hton +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0b0dee9c ldlm_lock_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0b7211e3 ptlrpc_deactivate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0bcacb5d RMF_MDS_HSM_USER_ITEM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c2d9c43 lustre_swab_lip_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0cf343dd RQF_LDLM_INTENT_BASIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0d5b0235 ptlrpc_register_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0d6b1423 ptlrpc_pinger_del_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ed07855 sptlrpc_cli_ctx_expire +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0fb8ab3c sptlrpc_cli_wrap_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x10890b47 sptlrpc_enc_pool_put_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x10f18f20 interval_iterate_reverse +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x110ed0ac sptlrpc_cli_unwrap_bulk_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x115017f6 req_layout_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x11fa8634 req_capsule_client_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12b6f5a3 ptlrpc_connection_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12e15005 sptlrpc_cli_enlarge_reqbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12f32d66 ldlm_register_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x141c9507 ptlrpc_req_finished +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1483eca4 ldlm_lock_addref_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x14d192db lustre_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x151a26cc __ldlm_handle2lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15995aec lustre_pack_reply_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15a3e4db RMF_GETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1637a580 sptlrpc_req_replace_dead_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x169c0683 req_capsule_client_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x172fb86d lustre_msg_hdr_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1747d8b3 ldlm_lockname +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x177812f0 ldlm_resource_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x17950f60 RQF_SEC_CTX +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x18fbbf0c sptlrpc_cli_ctx_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19108a0f RQF_OST_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19200ac9 req_capsule_has_field +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19c08934 RQF_LDLM_INTENT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a591b10 ptlrpc_prep_bulk_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a6a3ce9 RQF_OST_GET_INFO_LAST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a9b76aa RMF_OBD_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1aa833e1 sptlrpc_conf_client_adapt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1abd3258 RMF_SETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ace4b5f RQF_LDLM_BL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ad97751 llog_initiator_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1b2e5888 ptlrpc_set_import_active +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1bae0270 interval_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1be21715 lustre_msg_size_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c08d043 req_capsule_server_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c300d8e lustre_msg_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ccb59d7 ptlrpc_wake_delayed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d043548 lustre_msg_set_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1dc2051d RMF_SEQ_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1de9c288 lustre_swab_layout_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e2ba1db ptlrpc_start_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e81ed58 sptlrpc_cli_ctx_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e8e48a4 sptlrpc_flavor_has_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1eb2a65f RQF_OST_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee46b51 lustre_init_msg_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee9eb3c RQF_MDS_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2096f5b5 RQF_OST_SET_GRANT_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20ce135d ptlrpc_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20d6b82c RQF_LDLM_INTENT_QUOTA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x218a36ce ldlm_cli_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x22185f83 ptlrpc_commit_replies +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x233790b5 RMF_OST_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x23387e62 ldlm_resource_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x235e4baa ldlm_cli_cancel_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x244e5558 lustre_msg_get_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x24aafdba RMF_MGS_TARGET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2585a629 RMF_SEQ_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2587513c RQF_LDLM_CP_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x269554ce RQF_LDLM_INTENT_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x26a83a86 ptlrpcd_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x26f99d16 RQF_MGS_CONFIG_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x27eba405 client_disconnect_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x285e5b99 lustre_msg_set_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x29e0869a sptlrpc_get_hash_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a63a472 lustre_swab_ptlrpc_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2b00dd1d req_capsule_field_present +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ba2c623 ptlrpc_set_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c00c60d ptlrpc_sample_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c30d3ff ldlm_lock_change_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ca92fa8 ldlm_lock_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ccd5b87 ldlm_cli_cancel_list_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d56f168 ptlrpc_pinger_ir_up +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d798316 RMF_MGS_CONFIG_RES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4562fe RQF_LLOG_ORIGIN_HANDLE_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4ca396 RQF_LDLM_INTENT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e8e8119 llog_client_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ecd7515 lustre_msg_check_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f0e4f87 RQF_OST_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2fd2f737 lustre_msg_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x301d4fcd RQF_MDS_READPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x302937e0 RQF_MDS_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3060b9c6 sptlrpc_rule_set_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x306a2453 ldlm_pool_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x317e3f6b sptlrpc_get_bulk_checksum +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31838cb4 RMF_IDX_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31d3871e ldlm_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31edf006 ldlm_cli_update_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3261b862 RQF_OST_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x33bb7761 ldlm_typename +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3430ad9a req_capsule_server_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x358200d2 ldlm_resource_unlink_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x35939a3d lustre_swab_fiemap +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3771110d ldlm_lock2desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x381ceeb1 ptlrpc_fail_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3835ab4b RQF_LLOG_ORIGIN_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3858fb94 RMF_OBD_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38c01799 RQF_LDLM_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38fce533 lustre_msg_set_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39c6c08a ptlrpc_cleanup_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39f60a5f RMF_OST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a1e4bcb __lustre_unpack_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3aa694cd ptlrpc_prep_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ab90f6e lustre_msg_bufcount +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ac00716 lustre_swab_hsm_user_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b6b7cba dump_ioo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b71808b req_capsule_extend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bb47ab1 ptlrpc_pinger_add_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bedb0c7 RMF_LLOGD_CONN_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c63e62b RQF_MDS_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ca50f33 RQF_MDS_HSM_CT_REGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d49d61e sptlrpc_import_flush_all_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d7dc5f9 ldlm_pools_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d85afed ptlrpc_unregister_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dc47695 lustre_msg_get_magic +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dddb3e2 dump_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f034caf lustre_msg_get_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f4281d3 ldlm_pool_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f752e78 RQF_MDS_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f8e732a ldlm_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3fa846fa ldlm_lock_fail_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ff9bd96 ptlrpc_replay_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ffbdde7 llog_origin_handle_read_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x41008cef RQF_LDLM_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x414974a2 ptlrpcd_wake +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x421cb27c ptlrpc_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4294fccf ptlrpc_activate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4322535e __ptlrpc_prep_bulk_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43705ee4 RQF_LOG_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43d7efc8 lustre_msg_set_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44036eda RQF_MDS_GET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x440c2a71 RMF_FIEMAP_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x441b7fd5 sptlrpc_sec_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4481591d RQF_OST_SET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45d05893 lustre_swab_lustre_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45e30cea lustre_swab_ldlm_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4609c70b ldlm_namespace_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x46641907 ldlm_namespace_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47f5e903 RMF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x48814c9f lustre_swab_ost_lvb_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4881e2bb ldlm_destroy_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x49780d98 ptlrpcd_add_rqset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x498c03c5 lustre_msg_set_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x49c5c2ea ptlrpc_init_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a5a2416 RMF_DLM_REQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b010471 ptlrpc_request_set_replen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b09ce4b lustre_swab_mdt_rec_reint +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c0aa80f ldlm_lock_fail_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c7366b7 ptlrpc_queue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4cef4086 ldlm_get_enq_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d479afd ptlrpc_unpack_req_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d7580d0 lustre_swab_hsm_user_item +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e1706e5 lustre_msg_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e696b96 ptlrpcd_queue_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e907149 ptlrpc_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4eb03a6f ptlrpcd_destroy_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f766c3b lustre_swab_generic_32s +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50443f6a ptlrpc_init_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5059128f ldlm_pool_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50705b79 sptlrpc_target_export_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50dd74f8 RMF_STRING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x51d1984c llog_origin_handle_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x52c62150 RMF_RCS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53411557 RMF_DLM_REP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53a4a004 bulk_sec_desc_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x54ae5021 ldlm_lock_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x55066286 ldlm_resource_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x551a31e6 ptlrpc_req_finished_with_imp_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x555eb7fe RQF_MDS_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x55e11e2b ldlm_flock_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x57a40bd3 client_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x588035b4 RMF_UPDATE_REPLY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x595ab175 lustre_swab_obd_quotactl +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x596582bf RMF_GETINFO_VALLEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x59ca398b ptlrpc_add_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a057439 interval_search +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a0b7d8b ptlrpc_unregister_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5af0d02a ldlm_lock_dump_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b59a546 ptlrpc_request_bufs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b6ba895 lustre_packed_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c0c62fe sptlrpc_target_sec_part +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c6a3a83 RQF_SEQ_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5caae213 ptlrpc_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ce57990 ldlm_glimpse_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5d7f178f ldlm_pool_set_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5d9cf6c1 lock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e0b19b1 RMF_CLUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e0b67d9 lprocfs_wr_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e2b7558 lustre_msghdr_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e6f435d RQF_OST_BRW_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e80f899 RQF_LLOG_ORIGIN_HANDLE_READ_HEADER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ec3284d RQF_MDS_HSM_CT_UNREGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ef831ee lustre_msg_get_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f5cbfc0 ptl_send_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f96ccdd ptlrpc_connection_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6042bc15 RQF_MDS_REINT_RENAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x604e2505 RMF_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x607ec932 lustre_msg_set_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x60b40e27 req_capsule_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x60cd26ad RQF_MDS_REINT_CREATE_SYM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61646e1b RQF_MDS_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x618ad203 RQF_OST_GET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62192cf8 dump_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62aaae3f RQF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6315dd4c RMF_LLOGD_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6325e0e2 ptlrpc_resend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6352a62d ldlm_get_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6445934c req_capsule_init_area +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x64799c4d lprocfs_wr_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x647b6e48 lustre_swab_ldlm_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x649ba1b5 sptlrpc_sec_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x653723dc RMF_LOGCOOKIES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6553bf31 ptlrpc_unpack_rep_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x65562b3f ldlm_namespace_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x67a4f408 ldlm_cancel_resource_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x685eeaba RMF_DLM_GL_DESC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68cb2541 interval_is_overlapped +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68ee877d ldlm_namespace_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68f49e5e ptlrpc_expired_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6911e107 ldlm_prep_elc_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6912990a RQF_OST_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69615b08 ldlm_lock_allow_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x696ba811 lustre_msg_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69c9f04d RQF_MDS_REINT_LINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a3785c9 RMF_EADATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a438394 llog_origin_handle_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6c961a1b ptlrpc_restart_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d72828c sptlrpc_conf_log_update_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d7931cc RQF_UPDATE_OBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6e4f5587 ptlrpc_set_add_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ea4a817 sptlrpc_lprocfs_cliobd_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ed20499 ldlm_revalidate_lock_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6efa82b0 RQF_MGS_TARGET_REG +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f5ec6bc ptlrpc_request_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f6dc736 lustre_swab_mdt_remote_perm +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f95f60e ptlrpc_cleanup_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6fb92092 sptlrpc_flavor2name_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6fbdc3b0 ldlm_reprocess_all_ns +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6fd806e1 sptlrpc_svc_ctx_invalidate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x703538e4 lustre_swab_hsm_current_action +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7117538e target_pack_pool_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x723d43b6 sptlrpc_rule_set_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x725a892c RQF_MDS_REINT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x735ae641 ldlm_pool_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74840056 lustre_msg_set_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74f2f6d5 req_capsule_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75a2c40d ldlm_put_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76b728e5 lustre_swab_update_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77571cc6 lustre_swab_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x776c1437 sptlrpc_gc_add_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77840c82 sptlrpc_rule_set_choose +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78bf9136 lustre_swab_ldlm_lock_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x79475458 ldlm_cli_cancel_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a832f10 RMF_CONN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a84deac _ldlm_lock_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b158da4 lustre_swab_ldlm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7bbf8001 RMF_MDT_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7c4c6107 RQF_LDLM_CONVERT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d1ecd7f RQF_LDLM_INTENT_LAYOUT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d41a8b9 RQF_QUOTA_DQACQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d71fd84 ptlrpc_service_health_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dc0e7cd RMF_QUOTA_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dfb3c18 lustre_msg_clear_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4925d8 interval_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4c99b1 ldlm_expired_completion_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f51192b req_capsule_server_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f5a1cc7 lustre_msg_set_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f6d2357 lustre_msg_is_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80811fb6 ldlm_init_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80a9e8c3 lustre_msg_get_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80ecb4e3 RMF_MDS_HSM_CURRENT_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8107efc3 sptlrpc_register_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x817d7f1f lustre_msg_add_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x826d3c4f RQF_LDLM_GL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x837efb00 RMF_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8511f7fe lustre_pack_reply_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85135801 RMF_DLM_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85a9e0d8 RMF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85c4e922 lustre_pack_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85eecf67 sptlrpc_get_hash_alg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x863db6eb RMF_HSM_USER_STATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x86fa8c3b ldlm_cli_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8760beaf lustre_swab_ldlm_policy_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x876c2551 RMF_GETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8773e531 ptlrpc_retain_replayable_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87bf7b3c sptlrpc_get_next_secid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8872f3d2 RMF_SETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x88fff52d RMF_CAPA2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x89ec9a94 ptlrpc_prep_fcset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x89f9edf7 RQF_MDS_REINT_SETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a1ea476 lustre_swab_hsm_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a257736 RQF_MDS_HSM_STATE_GET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a509a48 ldlm_init_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ac440fa ptlrpc_uuid_to_connection +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b854254 lustre_swab_mgs_config_res +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cb71d4b RQF_MDS_REINT_CREATE_SLAVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d77ea75 lustre_msg_set_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8da3fca7 lustre_msg_add_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8e5f34b3 ptlrpc_set_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8e9abe4d RMF_GENERIC_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8eef4346 req_capsule_client_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ef37a10 ldlm_pool_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f0aceac RQF_MDS_HSM_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f374f74 __ptlrpc_free_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8fec0451 lustre_msg_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x90097dad ptlrpc_request_alloc_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9194c11e ldlm_namespace_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x919c4ce3 RMF_OBD_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91cf58d3 RQF_MDS_PIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x923349cf req_capsule_server_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x930dfb5a ldlm_resource_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x935ec3ef ptlrpc_pinger_sending_on_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x937b1ee0 lustre_swab_mdt_ioepoch +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9456423f sptlrpc_cli_unwrap_bulk_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x94ddeee2 ptlrpc_save_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9553c633 RQF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x95d08f0c lustre_swab_mgs_target_info +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9605e822 ldlm_extent_shift_kms +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9660ace0 RMF_FLD_MDFLD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9678dbcc req_capsule_server_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x967bfd52 RQF_OBD_PING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x96927653 target_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9798f2f1 RQF_MDS_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x980fcfdc ptlrpc_connection_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x99659f44 req_capsule_server_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x99bfd6e6 sptlrpc_target_update_exp_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a258886 RQF_MDS_GETSTATUS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a2e043e ldlm_cli_enqueue_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a6f2f6d lustre_msg_set_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b88f6ce RMF_NIOBUF_REMOTE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9bb5198b RQF_MDS_CLOSE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9c97af50 ptlrpc_recover_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9d7ea314 sptlrpc_pack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9db95a8a ptlrpc_unregister_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9e4fda8b llog_origin_handle_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9f473cce _debug_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9fb088f1 lustre_swab_lov_mds_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa08624cb ldlm_lock2handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa10f0d3d RMF_UPDATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa15553af ptlrpc_stop_all_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa163f4c3 dump_rniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa19311a2 ptlrpc_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa1a2d576 ldlm_pool_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2244636 RQF_MDS_GETATTR_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa22c0086 ldlm_error2errno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2d0a176 sptlrpc_import_flush_my_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3d2a6ee RMF_CAPA1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa400ddb5 client_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa434e1a3 ptlrpc_lprocfs_unregister_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4515cde ptlrpc_lprocfs_brw +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa47787ef RMF_PTLRPC_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4a2d089 RQF_OST_PUNCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4bea5ef lustre_swab_lmv_user_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4feff44 ptlrpc_reconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5458dad ldlm_lock_decref_and_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5880075 ldlm_errno2error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5bdba52 ptlrpc_nrs_policy_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa6c436ca RQF_MDS_WRITEPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7d55cc3 RQF_MDS_REINT_CREATE_RMT_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7e360b1 RMF_OBD_IOOBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7ec567d RMF_CONNECT_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa86ef91e ldlm_namespace_new +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9704f80 lustre_msg_get_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa98549d3 req_capsule_other_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9c4658e lustre_swab_lov_user_md_v3 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9edf09d RQF_OBD_IDX_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaac8c9bd ldlm_pool_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaba436b1 ldlm_cli_enqueue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xabb8d6b7 ptlrpc_register_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xac2887f5 ldlm_replay_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaddc3979 lustre_swab_lustre_capa_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf1d7d73 sptlrpc_cli_ctx_wakeup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf4e9658 RQF_MDS_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf50a015 client_import_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf50a0d6 RMF_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xafc34b92 ptlrpc_prep_req_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0751fa4 RQF_LLOG_ORIGIN_HANDLE_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1379630 ldlm_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1b43d8a dump_rcs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb22b56da req_capsule_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb27c2374 lustre_msg_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb291473d lustre_msg_early_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb2b1817d lustre_swab_ost_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb3be7092 ldlm_pool_get_lvf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4a7ecf3 lustre_msg_add_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb511c80c client_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb512ebc2 sptlrpc_parse_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb5a07a7c ptlrpc_invalidate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb61cb95a RQF_MDS_GETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb642f1c6 ptlrpc_mark_interrupted +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb68476df interval_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb6aafd03 RQF_MDS_DONE_WRITING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb75e2971 sptlrpc_enc_pool_get_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7b38189 RMF_MDT_MD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7fa3cc8 RMF_LLOG_LOG_HDR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb8bdcbd5 ldlm_cli_cancel_unused +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb903634e RQF_OST_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9b631cf lustre_swab_mgs_config_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbaa76097 lustre_msg_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbbaec6ac lprocfs_rd_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbc1370dc lustre_shrink_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbca5a3a2 ldlm_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd83bc44 RQF_OBD_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbde89843 ptlrpc_resend_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe47bc7e ping_evictor_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbeb7e023 ptlrpc_set_next_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbebbf327 req_capsule_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf98b86f RQF_MDS_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbfbd237f ptlrpc_send_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbffd4313 RQF_OST_BRW_WRITE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc06c4670 lustre_msg_get_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc07d380d llog_origin_handle_prev_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0867da7 RMF_REC_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0cdf55e RMF_MGS_SEND_PARAM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc18e0e5e sptlrpc_conf_target_get_rules +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc1dee013 ptlrpc_disconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2986d28 lustre_swab_ldlm_res_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2b1af57 RQF_MGS_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2be922a RMF_SYMTGT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc3180e3e req_capsule_client_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc3f7efab ptlrpc_schedule_difficult_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc4460ad9 ptlrpc_request_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc497621b ptlrpc_obd_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc559a634 RMF_LAYOUT_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc5da8e1a llog_origin_handle_next_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc60a60e1 RQF_OST_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc610d4d1 client_import_find_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc661bb8d lprocfs_wr_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc694be4b RQF_LLOG_ORIGIN_HANDLE_PREV_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc763fabc sptlrpc_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc79b9c67 ldlm_pools_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7c75fcc lprocfs_wr_evict_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7ca8257 RQF_MDS_REINT_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7e47564 ptlrpc_interrupted_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8997a2b ldlm_lock_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8f586a9 ptlrpc_connection_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc98654f3 ldlm_blocking_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc9aef7a3 ldlm_lock_downgrade +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xca5a81ec ptlrpc_pinger_ir_down +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2cc0cf lustre_swab_lquota_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2ceaff sptlrpc_secflags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb7dfce1 ptlrpc_buf_need_swab +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcc192293 ldlm_completion_ast_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce18228b ldlm_namespace_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce1a689b sptlrpc_enc_pool_add_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce86066d lustre_msg_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce999970 sptlrpc_unregister_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcec513c9 RQF_MDS_UNPIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xced015be sptlrpc_rule_set_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf578c0e lustre_pack_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9963db lustre_msg_get_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9aab6a RQF_MDS_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcfebc9ce ldlm_prep_enqueue_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd0902304 ldlm_cli_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2983334 lustre_swab_swap_layouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2e0d4eb lustre_msg_get_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd3dae408 ldlm_it2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd537ded2 lustre_swab_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd67a5d7b lustre_swab_update_reply_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd69e0a27 RQF_MDS_IS_SUBDIR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6c3ebfb RMF_FIEMAP_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd73ba691 sptlrpc_gc_add_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7406b7f sptlrpc_sec_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7910326 lustre_swab_obd_statfs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7fabd5f do_set_info_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8b91b3e lustre_swab_lov_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8f06300 RQF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd9561861 RQF_LDLM_INTENT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda2ac111 sptlrpc_proc_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb1fb0a2 RQF_MDS_REINT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb9d5a6a lustre_swab_niobuf_remote +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdc5ec6c2 sptlrpc_gc_del_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdc982fc4 ptlrpc_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdcf910b9 lustre_swab_ost_last_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd0ffb04 sptlrpc_flavor2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd30d7bf RMF_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd920086 llog_origin_handle_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xddc40a85 lustre_msg_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde12d36b RMF_MDS_HSM_ARCHIVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde555d70 sptlrpc_enc_pool_del_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xded7fb49 ptlrpc_at_set_req_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdee87192 sptlrpc_conf_log_update_begin +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf701ae7 lustre_swab_fid2path +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0832736 ptlrpc_init_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0cc694c RQF_LLOG_ORIGIN_HANDLE_NEXT_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe14b262e ldlm_destroy_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe161e59c ptlrpc_req_set_repsize +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe1971c03 req_capsule_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe3702618 ptlrpc_lprocfs_register_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe40e0a50 lustre_msg_get_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe4ba30f8 ldlm_pool_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe53e2f13 ptlrpc_hpreq_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe57bd972 sptlrpc_current_user_desc_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe5e8169b lustre_errno_ntoh +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe60bc74e ldlm_pool_get_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe643998e RQF_OST_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe68964dd sptlrpc_import_sec_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6f0dc96 RQF_OST_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7062b5f RMF_U32 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7512278 ptlrpcd_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabaa0b1 lustre_swab_mdt_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabac4fc sptlrpc_rule_set_merge +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeb8b249c ldlm_pool_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xebb64e68 req_layout_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec226f66 ping_evictor_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec939a00 RQF_MDS_REINT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecace5c1 RQF_OST_GET_INFO_GENERIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed1c10d6 ptlrpc_connection_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed1dd696 ldlm_cli_cancel_unused_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed83c41c unlock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xedcb740d sptlrpc_name2flavor_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xee44e936 ptlrpc_prep_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xef1aeca9 RMF_FLD_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xef248623 ldlm_blocking_ast_nocheck +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xefb723c3 ldlm_enqueue_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0241d6e lustre_swab_hsm_progress_kernel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0d52b5f ptlrpc_pinger_suppress_pings +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf1300275 _sptlrpc_enlarge_msg_inplace +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf1d6865f ptlrpc_buf_set_swabbed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf277c125 RQF_OST_GET_INFO_FIEMAP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf27d49dc sptlrpc_target_choose_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf2c7f793 ptlrpc_set_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf35f132b lustre_swab_ldlm_resource_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3d44370 RQF_OST_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf43540b9 lustre_swab_mgs_nidtbl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf45085e1 sptlrpc_conf_log_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf4caeb28 ptlrpc_nrs_policy_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf55c033b RMF_MGS_CONFIG_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf584a16b sptlrpc_part2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf596e9ae sptlrpc_conf_log_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf5c2520c req_capsule_server_sized_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf607fc23 sptlrpc_flavor2name_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf617ab8a lustre_msg_get_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf638373b ptlrpc_req_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf67c3d80 ptlrpc_request_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf697b756 ldlm_dump_all_namespaces +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7408f84 lustre_swab_hsm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7ba40c0 RMF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf85cb27e sptlrpc_parse_rule +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf870fed9 RQF_LDLM_GL_DESC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf8c624c9 req_capsule_set_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9051bd6 RQF_QC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf94e41e0 deuuidify +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf973aa93 lustre_swab_lov_user_md_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9ee11e2 lustre_msg_set_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9f72dfc RMF_TGTUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa51688d interval_insert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc186744 ptlrpc_add_rqs_to_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc2fa83f ptlrpc_del_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc3e56db ptlrpc_request_alloc_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc575cf5 ldlm_pool_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd148bf8 RMF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfe8e7889 ptlrpc_abort_inflight +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff02a0e9 ldlm_lock_set_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff4c9d63 ptlrpc_set_add_new_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffc807e8 sptlrpc_unpack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffe29c3f RQF_LDLM_ENQUEUE +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x0ad71093 go7007_snd_remove +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x2c1c2cd9 go7007_boot_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x5cac2c6b go7007_alloc +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x7e7cd4fe go7007_register_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xc77a2c8e go7007_snd_init +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xddd33ed8 go7007_parse_video_stream +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xea089bad go7007_update_board +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xec9399f7 go7007_read_addr +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xfde5e1a4 go7007_read_interrupt +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x2c0b8631 xillybus_init_endpoint +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xa7493be0 xillybus_endpoint_remove +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xe4936b14 xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xef8f7cc2 xillybus_do_cleanup +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x016778e5 iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0a2ab83e iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x19174053 iscsit_handle_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1da3deb2 iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1e627cc2 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2e267367 iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2f908349 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3513edd1 iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3fd0f8ca iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x42a5426e iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x43dc86ab iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x45cb5e5f iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x46fe4a37 iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4ae50a4f iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5b422b40 iscsit_set_unsoliticed_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x636e9b5a iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6c77a7cf iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6d0ed030 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x750bbb6a iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x75d46b74 iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8c03da96 iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa5ff126f iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xae3e7465 iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb019e1be iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xdecd396f iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe1288304 iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe82d54d0 iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xfd4e0050 iscsit_register_transport +EXPORT_SYMBOL drivers/target/target_core_mod 0x02de3b18 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x03c17f6f transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x04aab4cf target_fabric_configfs_free +EXPORT_SYMBOL drivers/target/target_core_mod 0x07191a2d target_fabric_configfs_init +EXPORT_SYMBOL drivers/target/target_core_mod 0x08134a11 fc_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x084792f4 sas_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x08ebc207 core_tpg_del_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x0b5dcc60 __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x0c6f5309 sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x0d6efa55 iscsi_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x141bf8d3 target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x14aeacb4 target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0x16d6375e target_fabric_configfs_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x17ea0882 sas_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x19e39764 transport_subsystem_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x1be879b6 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0x1e6515d0 sas_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x1ea83537 transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x24716d93 transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x26b5787d core_tpg_clear_object_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x2c25a62c fc_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x2c858a03 core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x2d2e45b0 transport_check_aborted_status +EXPORT_SYMBOL drivers/target/target_core_mod 0x2f1ac251 spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0x357c6628 core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0x37e8f6a9 target_get_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x3956a793 fc_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x412a05e7 target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x41b6d094 target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0x4cede85b core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x4f31b759 core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x572ebad7 spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x57d3eff0 sbc_execute_unmap +EXPORT_SYMBOL drivers/target/target_core_mod 0x5c9970c4 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x5e9fa186 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0x5fa4520b core_tpg_add_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x6622f614 core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x6af373ad transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0x6d3cd039 spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x6d440d0d target_put_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x71472682 transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0x7207d1b3 transport_subsystem_release +EXPORT_SYMBOL drivers/target/target_core_mod 0x743aa384 transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x74c5b047 iscsi_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x7dbada9d transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x7e55677e sas_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x81aeef0e transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x85aa880c transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x8d077504 spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0x8da2593f core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x913aa3f3 target_fabric_configfs_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x91d982d0 target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xa48bed3d target_setup_cmd_from_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xa9ed08dd transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xadcfb598 sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0xb0e03472 transport_init_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0xb34dd3b3 transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xba043e73 iscsi_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xba2b43fd transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xbb2d25c7 iscsi_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0xbf9e6e63 target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xc6847b85 fc_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0xd26e54fa sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xdbf3173d transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0xdc05dba4 target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xde1d5fa9 target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0xe3045de4 transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xe4f66623 transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0xe8d0eb91 target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xf01621c7 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf04f0800 transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0xf25c192f transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0xf4b8dbc8 core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xf7c56bd6 transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0x3450a334 usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0x5b8785c3 unregister_gadget_item +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x1713bb85 gether_get_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x369c9d28 gether_get_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x5694f383 gether_set_gadget +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x60cca591 gether_set_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x68577745 gether_set_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x6c4e0bb1 gether_get_host_addr_u8 +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x6c9fa451 gether_setup_name_default +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x7915c430 gether_register_netdev +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x89a33487 gether_get_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xad0361ce gether_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xadf7438f gether_get_ifname +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xb21b7d05 gether_setup_name +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xb56a1ac0 gether_get_host_addr_cdc +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xe5e4f8fe gether_connect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xfdfd17c8 gether_set_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3a6d4f22 rndis_free_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3ca38e3a rndis_signal_connect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x4ca90996 rndis_signal_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x5d22b406 rndis_register +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x785d494b rndis_msg_parser +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x7d855873 rndis_rm_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x83b2c5ed rndis_add_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x840dd143 rndis_deregister +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x988ad2a2 rndis_set_param_vendor +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x994b57f1 rndis_set_param_dev +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x9acf72e4 rndis_set_param_medium +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xa90054ee rndis_uninit +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xb971ebca rndis_get_next_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xd2fe47b1 rndis_set_host_mac +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1710b539 fsg_fs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x187def55 fsg_show_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1b1cc3af store_cdrom_address +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x2933ee1d fsg_ss_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x398778e1 fsg_ss_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x423845e4 fsg_ss_bulk_in_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x54de23fd fsg_store_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x56344daf fsg_hs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x5ca27354 fsg_store_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x6beb8833 fsg_show_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x7100b2ef fsg_show_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x7eaddc93 fsg_show_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x81f5424d fsg_lun_open +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x95cffb3e fsg_hs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x982921f4 fsg_store_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x9c4414c2 fsg_lun_close +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x9dc887f6 fsg_lun_fsync_sub +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5cae92f fsg_ss_bulk_out_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5f99b69 fsg_fs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa7b929af fsg_show_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa8c02cbc fsg_store_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb52ba28a fsg_intf_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb54d0d95 fsg_fs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xd956405c fsg_store_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xf4efc0c8 fsg_ss_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_rndis 0xdb21f1ac rndis_borrow_net +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0x79d816f3 sl811h_driver +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x1c6fd5ed usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x210b2f18 usb_wwan_set_termios +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x2d2938c2 usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x5329a03f usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x60274350 usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x7b0db6e9 usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x7b5ed149 usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xa896ad3c usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xadbfc33c usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xd8336c30 usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xe98c74f3 usb_wwan_ioctl +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xed204749 usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xfd9c75f7 usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x7be69013 usb_serial_resume +EXPORT_SYMBOL drivers/usb/serial/usbserial 0xf47eccc9 usb_serial_suspend +EXPORT_SYMBOL drivers/vhost/vringh 0x0dda8c5a vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x1f063017 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x2e91ca97 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x367ce26a vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x36dfce73 vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3eaf442a vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x3fa42e4f vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5dafbd4e vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x66af098b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x6d0e7948 vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x7bda5e6d vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x821e9390 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0xaf8e4a0e vringh_notify_disable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xafb47dae vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc884d704 vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc8bee0a4 vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xd11d2709 vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xda4ea4cc vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0xfc7dcad2 vringh_getdesc_user +EXPORT_SYMBOL drivers/video/backlight/generic_bl 0x366d19ef genericbl_limit_intensity +EXPORT_SYMBOL drivers/video/backlight/lcd 0x69b6e2b9 devm_lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0x6c2de284 devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0x9dd0b412 lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0xf920055f lcd_device_register +EXPORT_SYMBOL drivers/video/output 0x69e60bf2 video_output_register +EXPORT_SYMBOL drivers/video/output 0x9fdc5a09 video_output_unregister +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x622b883d w1_ds2760_write +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x89e57116 w1_ds2760_recall_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x8ef7f946 w1_ds2760_read +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xc6b8e9ad w1_ds2760_store_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xc136cfcf w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xd32ae889 w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x23aa7d63 w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0xeaccfc4d w1_ds2781_io +EXPORT_SYMBOL drivers/w1/wire 0x02b448f3 w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0x9e0985da w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0xd397f3b4 w1_remove_master_device +EXPORT_SYMBOL drivers/w1/wire 0xe85bc382 w1_unregister_family +EXPORT_SYMBOL fs/btrfs/btrfs 0x27476846 ulist_reinit +EXPORT_SYMBOL fs/btrfs/btrfs 0x41e6a9d2 ulist_init +EXPORT_SYMBOL fs/btrfs/btrfs 0x7e2ee765 ulist_free +EXPORT_SYMBOL fs/btrfs/btrfs 0xa2eec2e8 ulist_fini +EXPORT_SYMBOL fs/btrfs/btrfs 0xb1320bc8 ulist_add +EXPORT_SYMBOL fs/btrfs/btrfs 0xb42289d2 ulist_alloc +EXPORT_SYMBOL fs/btrfs/btrfs 0xc2c745db ulist_next +EXPORT_SYMBOL fs/configfs/configfs 0x219426a2 configfs_depend_item +EXPORT_SYMBOL fs/configfs/configfs 0x4b00a430 config_item_put +EXPORT_SYMBOL fs/configfs/configfs 0x6a3544ae config_group_find_item +EXPORT_SYMBOL fs/configfs/configfs 0x70f90bf7 config_item_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0x87a4fbca config_group_init +EXPORT_SYMBOL fs/configfs/configfs 0x8825aa0c configfs_unregister_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0x9332f112 configfs_register_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0xa34d8996 config_group_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0xb5aa91af config_item_set_name +EXPORT_SYMBOL fs/configfs/configfs 0xe0018a88 config_item_init +EXPORT_SYMBOL fs/configfs/configfs 0xe7ed238e configfs_undepend_item +EXPORT_SYMBOL fs/configfs/configfs 0xfd49c23e config_item_get +EXPORT_SYMBOL fs/exofs/libore 0x0fc422b5 ore_check_io +EXPORT_SYMBOL fs/exofs/libore 0x2238499c ore_write +EXPORT_SYMBOL fs/exofs/libore 0x28806871 ore_verify_layout +EXPORT_SYMBOL fs/exofs/libore 0x3457f21e extract_attr_from_ios +EXPORT_SYMBOL fs/exofs/libore 0x4527e170 ore_calc_stripe_info +EXPORT_SYMBOL fs/exofs/libore 0x634f3f44 ore_create +EXPORT_SYMBOL fs/exofs/libore 0x97352ec3 ore_remove +EXPORT_SYMBOL fs/exofs/libore 0xa3d2a634 g_attr_logical_length +EXPORT_SYMBOL fs/exofs/libore 0xbb8c481b ore_get_io_state +EXPORT_SYMBOL fs/exofs/libore 0xbd1af041 ore_truncate +EXPORT_SYMBOL fs/exofs/libore 0xc9603c46 ore_put_io_state +EXPORT_SYMBOL fs/exofs/libore 0xd79ca2fa ore_get_rw_state +EXPORT_SYMBOL fs/exofs/libore 0xfce31d6c ore_read +EXPORT_SYMBOL fs/fscache/fscache 0x015dd816 __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x075162b0 __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x078cc5ff fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0x0a6f112d fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0x2296faa5 __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0x245fb35d fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0x25631afd fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x26d9be4b __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x36494829 __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x408b15d6 __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x486b6ab2 fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0x591c2cfd fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0x5a153fa2 fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x64b0e644 fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0x71ef7295 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x71f61eb7 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x76552854 fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0x87d45045 fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x87dfb9bc __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x89519248 fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0x96557a47 fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0x96d8f8e3 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x9819ca8d __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0x9be5a404 __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xa2800a10 fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0xa69ec47b __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xadde9982 fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0xb132d937 __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0xb7068587 __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0xbdb58d33 fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0xc66396b8 __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0xd3d38fdd __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0xd7bc16a8 __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0xdb3df618 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0xee4cd3e6 __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xf462d0c8 __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0xf885353e fscache_obtained_object +EXPORT_SYMBOL fs/nfsd/nfsd 0x35e33c1e nfs4_acl_write_who +EXPORT_SYMBOL fs/nfsd/nfsd 0x5a157ae4 nfs4_acl_get_whotype +EXPORT_SYMBOL fs/nfsd/nfsd 0xa0f4b528 nfs4_acl_posix_to_nfsv4 +EXPORT_SYMBOL fs/nfsd/nfsd 0xb25b2957 nfs4_acl_nfsv4_to_posix +EXPORT_SYMBOL fs/nfsd/nfsd 0xe13337f0 nfs4_acl_new +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x609ff607 qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0x68f8a202 qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xcb79c696 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xd7f9de1d qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xfc3874d5 qtree_delete_dquot +EXPORT_SYMBOL lib/cordic 0x434bfd07 cordic_calc_iq +EXPORT_SYMBOL lib/crc-ccitt 0x3771b461 crc_ccitt +EXPORT_SYMBOL lib/crc-ccitt 0x75811312 crc_ccitt_table +EXPORT_SYMBOL lib/crc-itu-t 0xd29b009f crc_itu_t_table +EXPORT_SYMBOL lib/crc-itu-t 0xf5b4a948 crc_itu_t +EXPORT_SYMBOL lib/crc7 0xa7587646 crc7 +EXPORT_SYMBOL lib/crc7 0xd80c3603 crc7_syndrome_table +EXPORT_SYMBOL lib/crc8 0x41248eaf crc8 +EXPORT_SYMBOL lib/crc8 0xab9ad613 crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xd4534d80 crc8_populate_msb +EXPORT_SYMBOL lib/libcrc32c 0x27000b29 crc32c +EXPORT_SYMBOL lib/lru_cache 0x08b05f73 lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0x2686c90f lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0x46fbdfab lc_find +EXPORT_SYMBOL lib/lru_cache 0x5817613d lc_del +EXPORT_SYMBOL lib/lru_cache 0x79fae9f7 lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x85cb3257 lc_reset +EXPORT_SYMBOL lib/lru_cache 0x906dc1af lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x9da3f346 lc_set +EXPORT_SYMBOL lib/lru_cache 0xaf36660e lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0xbb720813 lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xc418dc0b lc_is_used +EXPORT_SYMBOL lib/lru_cache 0xc63c4ce8 lc_committed +EXPORT_SYMBOL lib/lru_cache 0xd91d1d0a lc_create +EXPORT_SYMBOL lib/lru_cache 0xda2a1a5f lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0xe4fd51f2 lc_put +EXPORT_SYMBOL lib/lru_cache 0xe56bf09b lc_get +EXPORT_SYMBOL lib/lru_cache 0xf1edcc81 lc_destroy +EXPORT_SYMBOL lib/lz4/lz4_compress 0xcbc5d521 lz4_compress +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x26c3aa22 lz4hc_compress +EXPORT_SYMBOL lib/raid6/raid6_pq 0x0bd662f6 raid6_gfmul +EXPORT_SYMBOL lib/raid6/raid6_pq 0x15fe0cd3 raid6_gfexp +EXPORT_SYMBOL lib/raid6/raid6_pq 0x5ba93f9d raid6_gfinv +EXPORT_SYMBOL lib/raid6/raid6_pq 0xb0d904b7 raid6_empty_zero_page +EXPORT_SYMBOL lib/raid6/raid6_pq 0xce45a6f1 raid6_gfexi +EXPORT_SYMBOL lib/raid6/raid6_pq 0xd9e91f83 raid6_vgfmul +EXPORT_SYMBOL net/802/p8022 0x933f4c9d register_8022_client +EXPORT_SYMBOL net/802/p8022 0xdc84b5dc unregister_8022_client +EXPORT_SYMBOL net/802/p8023 0x08ad03fa destroy_8023_client +EXPORT_SYMBOL net/802/p8023 0xe0511a91 make_8023_client +EXPORT_SYMBOL net/802/psnap 0x96da0b7c register_snap_client +EXPORT_SYMBOL net/802/psnap 0xf5e92793 unregister_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x034e2f6f p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0x07c373e4 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0x0886b906 p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0x16550ae2 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0x1a37c7e9 p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x1bed2602 p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x1ececce1 p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x1f16c804 p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0x225b8ca8 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0x272670d2 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x32068a0b p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0x35d1e27e p9_idpool_get +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x43673048 p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0x4400a34c p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0x44457d29 p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x44d2c2c0 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0x49cbfadd p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0x4a15b1cc p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0x4f331379 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0x54c99192 p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0x5bb59148 p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0x5f26edee p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x60351141 p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0x63668578 p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x68cd7241 p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0x6e6f9aed p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x6eb2a1fd p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x6f2c821e v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x7498aa6e v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x79d726a4 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x8326bcfd p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0x8634bd12 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x977a0030 p9_nr_pages +EXPORT_SYMBOL net/9p/9pnet 0x97955ff4 p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0x9b29249d v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0xa3ff0e15 p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0xa8110a1f p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0xad26f9a2 p9_payload_gup +EXPORT_SYMBOL net/9p/9pnet 0xad56302c p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0xb51bd54a v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0xb90cc578 p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0xc5db54a9 p9_idpool_destroy +EXPORT_SYMBOL net/9p/9pnet 0xdbd17194 p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0xe4535855 p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xe7c0d38c p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0xf3b071c0 p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0xf4a111d8 p9_idpool_create +EXPORT_SYMBOL net/9p/9pnet 0xf84f2022 p9_idpool_put +EXPORT_SYMBOL net/9p/9pnet 0xfc25e4fc p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0xfd40c79d p9_idpool_check +EXPORT_SYMBOL net/appletalk/appletalk 0x2ee663f7 aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0x322d98a7 alloc_ltalkdev +EXPORT_SYMBOL net/appletalk/appletalk 0x37eca023 atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0x59e1e874 atrtr_get_dev +EXPORT_SYMBOL net/atm/atm 0x0cf9246e vcc_release_async +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x4f28956c atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0x548399e9 atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0x5a26d7d2 atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0x61a31051 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0x663f5544 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x7677a41d atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x937d51cd atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x9720f03f atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0x9e9cf389 vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xa4c3eb15 atm_charge +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xbf300c37 vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0xd6f51424 deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0xf1774b53 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/ax25/ax25 0x026c1368 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x3afee63e ax25_findbyuid +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x48d39edc ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0x4c0ebe49 ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0x4f8a0ef2 ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x890bcd43 ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0x954ac107 ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x9ed2a8a2 ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0xaad2e713 ax25_hard_header +EXPORT_SYMBOL net/ax25/ax25 0xbaee7697 ax25_rebuild_header +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xea0c3b90 ax25_linkfail_release +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0547e0c9 hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0x064cecf6 hci_recv_stream_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0cb55797 bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1fa71e3a bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0x27891088 bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2c077540 hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x34133879 bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3730f2bf bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0x39c7d783 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3e0e7de7 bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3fd24435 hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x41c8d4ca l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x42c945e9 l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x497c01aa l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4a05ebae l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0x53dae729 hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x54100e1e bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0x597561e5 __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x614e51f5 bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x701c39b9 hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7c640527 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7f54be46 bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7fd078d8 hci_recv_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8c21c824 hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9076b782 bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x91c9a325 bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9232f9bb hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0x94858123 hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb19e4c06 hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb61a0c3b bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0xbc93e1ce bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0xbd209223 __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc1f4e143 bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc59da274 hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0xca1837f8 bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcc1fb551 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0xda4e4855 bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdb3bd2cf l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdfbfc2f4 hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe36370b2 bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe6d58cdd hci_unregister_dev +EXPORT_SYMBOL net/bridge/bridge 0x049a80d6 br_should_route_hook +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x29a49099 ebt_register_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x54e2a1a5 ebt_do_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x99e2b8e4 ebt_unregister_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +EXPORT_SYMBOL net/caif/caif 0x21081b56 cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x29c6b25c caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0x2a09f713 cfpkt_fromnative +EXPORT_SYMBOL net/caif/caif 0x329dbd06 cfpkt_info +EXPORT_SYMBOL net/caif/caif 0x38701a7c cfcnfg_del_phy_layer +EXPORT_SYMBOL net/caif/caif 0x4a237e57 cfpkt_tonative +EXPORT_SYMBOL net/caif/caif 0x6a44fc70 cfpkt_extr_head +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x87148ff1 get_cfcnfg +EXPORT_SYMBOL net/caif/caif 0x966d7de2 cfpkt_add_head +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xaa7190df caif_connect_client +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/caif/caif 0xf24c393d caif_disconnect_client +EXPORT_SYMBOL net/can/can 0x681d1bd8 can_send +EXPORT_SYMBOL net/can/can 0x8ba4c899 can_proto_unregister +EXPORT_SYMBOL net/can/can 0xc0225f90 can_proto_register +EXPORT_SYMBOL net/can/can 0xea37ee07 can_rx_register +EXPORT_SYMBOL net/can/can 0xef1d16c0 can_rx_unregister +EXPORT_SYMBOL net/can/can 0xfcf2b856 can_ioctl +EXPORT_SYMBOL net/ceph/libceph 0x06b68529 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0x09290ab3 ceph_debugfs_init +EXPORT_SYMBOL net/ceph/libceph 0x0d1545c6 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0x10940306 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0x1475bf0d ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x18a08a42 ceph_osdc_writepages +EXPORT_SYMBOL net/ceph/libceph 0x18aa59ab ceph_osdc_put_event +EXPORT_SYMBOL net/ceph/libceph 0x18de65b8 ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x197effcb ceph_osdc_release_request +EXPORT_SYMBOL net/ceph/libceph 0x1d0f2990 ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x1d1d6113 ceph_client_id +EXPORT_SYMBOL net/ceph/libceph 0x20d151cb ceph_osdc_setup +EXPORT_SYMBOL net/ceph/libceph 0x2a9057ac ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x3158173e ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x33b19731 ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0x35b0a9f3 ceph_monc_create_snapid +EXPORT_SYMBOL net/ceph/libceph 0x36107129 osd_req_op_cls_response_data +EXPORT_SYMBOL net/ceph/libceph 0x3abec91f ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x3d6a3387 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x3df0ec7c ceph_calc_ceph_pg +EXPORT_SYMBOL net/ceph/libceph 0x3f688151 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x4205ffd7 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0x42416d67 ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0x43131a8c ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0x43c8d341 ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x43e458f6 ceph_file_part +EXPORT_SYMBOL net/ceph/libceph 0x43efd647 ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0x442e64d4 osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x47957ff2 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x494da92f ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x4f35adf6 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0x5379cea3 ceph_caps_for_mode +EXPORT_SYMBOL net/ceph/libceph 0x53cf81d1 ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0x5589247c osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x5fe4b2fa ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0x635274b1 ceph_monc_got_mdsmap +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x6b2e3bcd ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x6c5d5ac1 ceph_calc_pg_primary +EXPORT_SYMBOL net/ceph/libceph 0x6d2d06a1 ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0x6ed41be2 ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0x7026f2a2 ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x75a2eda0 ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0x75ba75f6 osd_req_op_watch_init +EXPORT_SYMBOL net/ceph/libceph 0x77692acb ceph_msg_last_put +EXPORT_SYMBOL net/ceph/libceph 0x7918c6ee ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0x7bd12a2b osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x7cc915e2 osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x7cc9e0e3 ceph_osdc_create_event +EXPORT_SYMBOL net/ceph/libceph 0x7ff5fc95 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0x84f00736 ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x853be711 ceph_osdc_unregister_linger_request +EXPORT_SYMBOL net/ceph/libceph 0x8669e55c ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x89107212 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0x93f1cc5e ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0x96a6daba ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x9892ecf2 osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x99e36571 ceph_osdc_cleanup +EXPORT_SYMBOL net/ceph/libceph 0x9c7c7c60 ceph_copy_page_vector_to_user +EXPORT_SYMBOL net/ceph/libceph 0x9f534f4d ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xa1176d00 ceph_osdc_build_request +EXPORT_SYMBOL net/ceph/libceph 0xa1a6cbbe __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0xa40bd703 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0xa4ae2618 ceph_osdc_readpages +EXPORT_SYMBOL net/ceph/libceph 0xa4f59fbe ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0xab0f9eb8 ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0xadaac118 ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0xae3515ba ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb1f21fbb ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xb3b5cd8e ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0xb406edb3 ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb5c40939 ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0xb6081d6d ceph_msgr_exit +EXPORT_SYMBOL net/ceph/libceph 0xb67985b5 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0xb6889341 osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xb6c406d6 ceph_osdc_set_request_linger +EXPORT_SYMBOL net/ceph/libceph 0xb7ef51b6 ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0xbc222cf7 ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xbd6c43c9 ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0xc4a80955 ceph_debugfs_cleanup +EXPORT_SYMBOL net/ceph/libceph 0xc55de604 ceph_parse_options +EXPORT_SYMBOL net/ceph/libceph 0xc57a2153 ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0xc8ec0263 ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xc9f82b38 ceph_msgr_init +EXPORT_SYMBOL net/ceph/libceph 0xcb50a624 ceph_parse_ips +EXPORT_SYMBOL net/ceph/libceph 0xd2c107bb ceph_flags_to_mode +EXPORT_SYMBOL net/ceph/libceph 0xda4e552d ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0xdc5205b4 ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xe3284eff ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xe3e7e61e osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0xe6fe0d2e ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0xe82c9c32 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0xe901a3c7 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0xea7a0228 osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0xf183b5ba ceph_get_direct_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xf211fcc5 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xf59e416a osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0xf9b1b591 ceph_osdc_cancel_event +EXPORT_SYMBOL net/ceph/libceph 0xfa040a6d ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xff678124 ceph_messenger_init +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x8e249891 dccp_syn_ack_timeout +EXPORT_SYMBOL net/ieee802154/ieee802154 0x2446f314 wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0x3acdc3d5 ieee802154_nl_assoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x4fcfcf46 ieee802154_nl_disassoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x6b8e5396 wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0x7d87c0e3 ieee802154_nl_assoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x8325629c ieee802154_nl_start_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x8daaf274 wpan_phy_alloc +EXPORT_SYMBOL net/ieee802154/ieee802154 0x9ba5fe76 ieee802154_nl_beacon_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0xa367c095 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0xc6006a14 wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0xcb0fece6 ieee802154_nl_disassoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0xdab5a483 wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0xdd52c6e1 ieee802154_nl_scan_confirm +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x08bf6989 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x205eb9a0 arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x4586764c arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x2e51d6d9 ipt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x735a476a ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xf3543757 ipt_register_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x9a54cd55 xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0xe01df019 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x2409d45f ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xc6fd37d9 ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x303c176d ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x80bd56f9 ip6t_do_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xa00adeae ip6t_register_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x8c62b106 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/tunnel6 0xc273ae3e xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x24abcdf0 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x5eec27f7 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x1e40bca1 ircomm_close +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x5dab70cd ircomm_flow_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x7ef0531e ircomm_open +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x823490ed ircomm_connect_response +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xabda193c ircomm_data_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xb0da1bce ircomm_connect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xc7289a20 ircomm_control_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xdd72ffd1 ircomm_disconnect_request +EXPORT_SYMBOL net/irda/irda 0x06a3ee58 irias_new_integer_value +EXPORT_SYMBOL net/irda/irda 0x07d3647c irlmp_register_service +EXPORT_SYMBOL net/irda/irda 0x13dfd99c irlmp_close_lsap +EXPORT_SYMBOL net/irda/irda 0x17a491c5 irias_add_octseq_attrib +EXPORT_SYMBOL net/irda/irda 0x2036ad06 irda_param_insert +EXPORT_SYMBOL net/irda/irda 0x258805a4 irttp_udata_request +EXPORT_SYMBOL net/irda/irda 0x26021a63 irttp_close_tsap +EXPORT_SYMBOL net/irda/irda 0x2d644976 irttp_connect_response +EXPORT_SYMBOL net/irda/irda 0x33cbe2c6 proc_irda +EXPORT_SYMBOL net/irda/irda 0x36cad55b hashbin_remove_this +EXPORT_SYMBOL net/irda/irda 0x37791344 hashbin_get_first +EXPORT_SYMBOL net/irda/irda 0x44321562 irttp_flow_request +EXPORT_SYMBOL net/irda/irda 0x448b8aaa irda_qos_bits_to_value +EXPORT_SYMBOL net/irda/irda 0x4522deb4 irlap_open +EXPORT_SYMBOL net/irda/irda 0x46c1c4a2 irlmp_unregister_service +EXPORT_SYMBOL net/irda/irda 0x5545e9ba iriap_close +EXPORT_SYMBOL net/irda/irda 0x58dd79bf alloc_irdadev +EXPORT_SYMBOL net/irda/irda 0x5daba1fc irlmp_open_lsap +EXPORT_SYMBOL net/irda/irda 0x62efd153 irlmp_connect_request +EXPORT_SYMBOL net/irda/irda 0x6492e28c hashbin_get_next +EXPORT_SYMBOL net/irda/irda 0x67881ef8 async_wrap_skb +EXPORT_SYMBOL net/irda/irda 0x6a4604df async_unwrap_char +EXPORT_SYMBOL net/irda/irda 0x6b043eba irda_init_max_qos_capabilies +EXPORT_SYMBOL net/irda/irda 0x6b76aa70 hashbin_delete +EXPORT_SYMBOL net/irda/irda 0x7042bc54 irlmp_register_client +EXPORT_SYMBOL net/irda/irda 0x731cec71 hashbin_insert +EXPORT_SYMBOL net/irda/irda 0x763e54a4 irlmp_unregister_client +EXPORT_SYMBOL net/irda/irda 0x7957f728 irlmp_update_client +EXPORT_SYMBOL net/irda/irda 0x7e67ca6e irias_new_object +EXPORT_SYMBOL net/irda/irda 0x7edb0544 irda_device_set_media_busy +EXPORT_SYMBOL net/irda/irda 0x83685190 iriap_getvaluebyclass_request +EXPORT_SYMBOL net/irda/irda 0x8714b255 irttp_dup +EXPORT_SYMBOL net/irda/irda 0x8982c8d9 irias_delete_object +EXPORT_SYMBOL net/irda/irda 0x8a44dd5e hashbin_new +EXPORT_SYMBOL net/irda/irda 0x90ddb6bd hashbin_remove +EXPORT_SYMBOL net/irda/irda 0x91815586 irda_param_pack +EXPORT_SYMBOL net/irda/irda 0x993ad14b irda_param_extract_all +EXPORT_SYMBOL net/irda/irda 0x9efdfdb7 irttp_connect_request +EXPORT_SYMBOL net/irda/irda 0x9ffda243 irias_add_string_attrib +EXPORT_SYMBOL net/irda/irda 0xaf34a46c irda_notify_init +EXPORT_SYMBOL net/irda/irda 0xb358d8a8 irlap_close +EXPORT_SYMBOL net/irda/irda 0xb3c13d7f irias_add_integer_attrib +EXPORT_SYMBOL net/irda/irda 0xb9394173 irias_delete_value +EXPORT_SYMBOL net/irda/irda 0xbc3e8233 irlmp_connect_response +EXPORT_SYMBOL net/irda/irda 0xbcd3ef13 irias_object_change_attribute +EXPORT_SYMBOL net/irda/irda 0xbe40ace9 irlmp_discovery_request +EXPORT_SYMBOL net/irda/irda 0xbf7dd554 hashbin_find +EXPORT_SYMBOL net/irda/irda 0xbfa7c08d hashbin_lock_find +EXPORT_SYMBOL net/irda/irda 0xc3768fd3 iriap_open +EXPORT_SYMBOL net/irda/irda 0xc477368d irias_find_object +EXPORT_SYMBOL net/irda/irda 0xc8f158b9 irlmp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0xd2024b85 irttp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0xd87f80f6 irttp_open_tsap +EXPORT_SYMBOL net/irda/irda 0xde4c6b3c irlmp_service_to_hint +EXPORT_SYMBOL net/irda/irda 0xedd521c2 irlmp_get_discoveries +EXPORT_SYMBOL net/irda/irda 0xef20278b irlmp_data_request +EXPORT_SYMBOL net/irda/irda 0xf199cba4 irias_insert_object +EXPORT_SYMBOL net/irda/irda 0xf67d0e97 irttp_data_request +EXPORT_SYMBOL net/l2tp/l2tp_core 0x34950bae l2tp_recv_common +EXPORT_SYMBOL net/lapb/lapb 0x00f73517 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0x4e7e8bd6 lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0x5167c539 lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0x527238ff lapb_unregister +EXPORT_SYMBOL net/lapb/lapb 0x69404b47 lapb_register +EXPORT_SYMBOL net/lapb/lapb 0x9e8f7589 lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0xa7f996dd lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0xdfbeab16 lapb_setparms +EXPORT_SYMBOL net/llc/llc 0x1e9e99fd llc_sap_list_lock +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x488ab32d llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0x4b27e78d llc_sap_close +EXPORT_SYMBOL net/llc/llc 0x4b73fd12 llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x700769d5 llc_sap_find +EXPORT_SYMBOL net/llc/llc 0x808320de llc_add_pack +EXPORT_SYMBOL net/llc/llc 0xcd2589d5 llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0xe883b7c4 llc_sap_open +EXPORT_SYMBOL net/mac80211/mac80211 0x00441d0f __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x009376f2 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x027e5b94 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x038b467d ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x04a30a3a ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0x093ae36f rate_control_send_low +EXPORT_SYMBOL net/mac80211/mac80211 0x09658bf3 ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0x0ca09d74 ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0x1155c6a0 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x11ca19b9 ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0x16219f0e ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x21a2ae71 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0x2ee4ee83 __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x3fe46b3a ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x40499fef ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x420290d1 ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x450fc3ab ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x4d9a6381 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x51fe89b6 ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x52f72810 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x53356c05 ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0x545951cd ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x551cb01e ieee80211_rx +EXPORT_SYMBOL net/mac80211/mac80211 0x5737df12 wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x5c28cca5 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x5ef07704 ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x61310ff1 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0x6347b51c ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x656d9062 ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x6e3084b9 ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x6f1a4799 ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x6fb69e8b ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x715a6b5b ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0x71aea731 rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x736e785c ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x738ade05 ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0x77c99c0a ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0x78b2dfa1 ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0x7c5f66cc ieee80211_alloc_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x844ced80 ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0x8c676623 ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x971234a7 ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x9a627d17 ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x9bcc2fb8 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x9c5e6334 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0xa05729fe ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0xa0953d0e ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xa1fc36c4 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xa55ec2c2 ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xa64a0f4c ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0xa709367b ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0xa9b28975 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xaa157485 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0xac96e31e ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0xae5b64b1 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0xb0b9ab28 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xb71d56ea ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0xb8f2e702 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xb9eaff17 ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0xbf0d058f ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xc3b72f1b ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0xc7e9782e ieee80211_get_key_tx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xcc1afe31 __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0xcccafe99 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xce1f786d ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xddb47d52 ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xe07715c4 ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0xe21f919e ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0xe340814d ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0xe54bc87c ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0xe629c1f8 ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xecf9682b ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0xf395de03 ieee80211_aes_cmac_calculate_k1_k2 +EXPORT_SYMBOL net/mac802154/mac802154 0x005b3a01 ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0x82add0fe ieee802154_unregister_device +EXPORT_SYMBOL net/mac802154/mac802154 0x93fb4536 ieee802154_free_device +EXPORT_SYMBOL net/mac802154/mac802154 0xa7e6eb42 ieee802154_register_device +EXPORT_SYMBOL net/mac802154/mac802154 0xbd577fb7 ieee802154_alloc_device +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x02d2090d unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x07085c38 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x14b474a4 unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x8412ef0f ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x9939ccdd register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x9c17465d ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x9e28e061 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xa5af55a9 ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xa9e53b5e ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xb65d7f43 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xcbd0c7f2 register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xeb513c77 ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xf080a556 register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xf21b074a ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x2d69df9c nf_conntrack_untracked +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xa6050078 __nf_ct_ext_add_length +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xbd188701 __nf_ct_ext_destroy +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0x827cc6a1 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_conntrack_proto_gre 0x7671137c nf_ct_gre_keymap_flush +EXPORT_SYMBOL net/netfilter/nf_nat 0x2f37a000 nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0x467216f5 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x5b476259 nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0x967147d0 __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xc0d1df33 nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0xf378ef8f nf_nat_used_tuple +EXPORT_SYMBOL net/netfilter/x_tables 0x08c473b7 xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0x150ca786 xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0x18f5fddd xt_find_target +EXPORT_SYMBOL net/netfilter/x_tables 0x2a4a13ca xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x4e68d674 xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0x6d5ffb09 xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0x9a44afc6 xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0xa15c75d5 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0xa81ffccd xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0xb28f5ef1 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xe57b92ff xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xec7dd068 xt_register_targets +EXPORT_SYMBOL net/nfc/hci/hci 0x02265891 nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0x09b098f9 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x0e9c3aac nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0x2e931f3e nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0x34663acf nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0x43028a27 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x774ab9c6 nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0x7807a199 nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0x7e9d3d3b nfc_hci_send_response +EXPORT_SYMBOL net/nfc/hci/hci 0x9e55eb09 nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0xa4c1a35e nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0xa62cadc4 nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xa8d729a5 nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0xb1f125be nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xbca0b4fd nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xd8a56c93 nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0xdd99979d nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xe7cf8e73 nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0xf4b204e0 nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0xf6179ed3 nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/nci/nci 0x97274639 nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x9cf3229e nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xc36a6056 nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0xc94c90ec nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0xe6396e4c nci_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0x01e549b6 nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0x0374fb04 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0x044edb44 nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0x2173912f nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0x2420992e nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x2628452e nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0x309e2f08 nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0x334972f8 nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x391f128d nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0x4ff026d4 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0x50c42753 nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0x61b1200c nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0x66e7f06b nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0xa37ba3d0 nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0xbb938368 nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0xc4e10334 nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0xc8100bff nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0xe7b651fc nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0xf957392f nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0xfd6257f6 nfc_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x05b54f84 nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x0a94fbd0 nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x78a30f49 nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xe5582312 nfc_digital_unregister_device +EXPORT_SYMBOL net/phonet/phonet 0x094191ef pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0x154b30e9 pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0x32358585 phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0x9fe94de4 pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0xb939f1b9 phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0xc8679306 pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0xc8770506 phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0xd9513806 phonet_proto_register +EXPORT_SYMBOL net/rds/rds 0x5031b8c5 rds_str_array +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x017066be rxrpc_kernel_accept_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x107194a3 rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x13b81327 rxrpc_kernel_free_skb +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x1932ee8d rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x23f22b56 rxrpc_kernel_get_error_number +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x29ea3290 rxrpc_kernel_intercept_rx_messages +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x41f19463 rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x8194c7e3 rxrpc_kernel_reject_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x88348d49 rxrpc_kernel_get_abort_code +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x8bce5cca rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x98661b9b key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xa13d4e5a rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xa76402c8 rxrpc_kernel_data_delivered +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xbd490d61 rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xdb254c06 rxrpc_kernel_is_data_last +EXPORT_SYMBOL net/sctp/sctp 0xb34a633b sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x070ceac2 gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x8930d22d gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xd13d8312 gss_mech_get +EXPORT_SYMBOL net/sunrpc/sunrpc 0xde892196 svc_pool_stats_open +EXPORT_SYMBOL net/wimax/wimax 0x6fe0d041 wimax_reset +EXPORT_SYMBOL net/wimax/wimax 0xdde17f2e wimax_rfkill +EXPORT_SYMBOL net/wireless/cfg80211 0x00bd6ec7 ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x07df9001 cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0x08431865 cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0x09c64fbd ieee80211_frequency_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x0ac735cb cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x0b2f0038 cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0x17cc07f6 ieee80211_data_from_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0x180b0b41 regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x19902f5e cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x19e03378 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0x1d9116f3 cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x23954a81 cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0x2651a583 freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0x27f407ae cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0x2a6a24e4 cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x3310bc80 cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x34cd3527 cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x3586a26b ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0x381b8318 cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x3a4f1666 wiphy_new +EXPORT_SYMBOL net/wireless/cfg80211 0x403ce0dc __ieee80211_get_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x406a8302 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x426e05a8 wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x42af9030 cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x43267573 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x45f2cf4c cfg80211_inform_bss_width_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x49e556da cfg80211_rx_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x4c3b5878 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x4c40b2fb ieee80211_bss_get_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x4f6544e6 cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0x5015c0b2 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x549ae50f ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x556a0396 cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x58f448e9 cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0x5b11d5ba cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x5bb1ce4d cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x5e5fbbd3 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0x647cd627 ieee80211_data_to_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0x6599d699 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0x67273b4e cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6ba3502a cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x6d6cb9ad ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x71569390 cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x75f0a03c cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0x768aaf7e cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0x7d331e87 cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7fe1a403 cfg80211_find_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x80549413 cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x80cd9e9c cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0x872cea02 wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0x8b2718c7 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0x8bfe5316 cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0x982e6b6d ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0x98d3b671 cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x9b3c4901 wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0xa1425906 ieee80211_channel_to_frequency +EXPORT_SYMBOL net/wireless/cfg80211 0xa197b1ff ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xa22f3660 cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xa83d8ae9 cfg80211_inform_bss_width +EXPORT_SYMBOL net/wireless/cfg80211 0xaa4041ba cfg80211_connect_result +EXPORT_SYMBOL net/wireless/cfg80211 0xaca5bda3 cfg80211_del_sta +EXPORT_SYMBOL net/wireless/cfg80211 0xb606c1e7 cfg80211_roamed_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xc15c8611 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0xc357cb96 cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0xc63f1b81 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0xc9f64f6d cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xcb00f052 cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xcd287e15 cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0xcf618a57 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0xd2136c7d cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0xd3177143 cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xd7710ce9 wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xdb54fa74 cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xe25cd292 cfg80211_report_obss_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xe46047bc cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xe9181840 wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0xe9798803 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0xee42db3c cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xefcd203f cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0xf35102fa cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0xf4541b32 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0xfed4d591 cfg80211_find_vendor_ie +EXPORT_SYMBOL net/wireless/lib80211 0x0de43cde lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0x2d0f99e5 print_ssid +EXPORT_SYMBOL net/wireless/lib80211 0x9c4212be lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xc0ffd4d8 lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0xc9c6f973 lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0xeafed0ba lib80211_get_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xf9658f8e lib80211_unregister_crypto_ops +EXPORT_SYMBOL sound/ac97_bus 0x62898d14 ac97_bus_type +EXPORT_SYMBOL sound/core/seq/snd-seq 0x0817de38 snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x67e9a00c snd_seq_kernel_client_enqueue_blocking +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x78a1dc53 snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8c7471d snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xcac0a3be snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x0d318ed7 snd_seq_device_new +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x3a57f235 snd_seq_autoload_unlock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x9a603117 snd_seq_device_register_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xb90668b2 snd_seq_autoload_lock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xc622fb29 snd_seq_device_unregister_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x127b30fb snd_midi_event_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x1cdc0812 snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x59eb74ae snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x8102ed2f snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xb11ba32d snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xb2c7f684 snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xea0e5748 snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xed42580b snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0xd9743fba snd_virmidi_new +EXPORT_SYMBOL sound/core/snd-hwdep 0x0ea6c6ac snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0x11ba4a46 snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x19b87147 snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0x21fdd990 snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-rawmidi 0x37dcee8c snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x3ba8efb6 snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0x3fa267d2 snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x774bca02 snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0x8448baa5 snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0xa0b98351 snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0xab76f17f snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0xbc5e7dcb snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0xbfcc26f5 snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0xc37a9ac2 snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0xd9e96a23 snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-rawmidi 0xe9320669 snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-rawmidi 0xebd36069 snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf5d5bbfb snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x18335288 snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x0b0b8aff snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x29e99785 snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x2b60d888 snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x334a4ac2 snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x4afecba1 snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x63284623 snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x69f4b82d snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x7c3c3000 snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x8b06370f snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x98b70f86 snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x9d41f768 snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x9e90b1e6 snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xa79e8410 snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xc5411b8c snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xce30f268 snd_ac97_resume +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xe31a6b74 snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xfefdb31c snd_ac97_read +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x4ddcd8ad snd_usbmidi_create +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL vmlinux 0x00000000 __symbol_put +EXPORT_SYMBOL vmlinux 0x00000000 current_fs_time +EXPORT_SYMBOL vmlinux 0x00000000 d_tmpfile +EXPORT_SYMBOL vmlinux 0x00000000 do_sync_read +EXPORT_SYMBOL vmlinux 0x00000000 filp_close +EXPORT_SYMBOL vmlinux 0x00000000 finish_open +EXPORT_SYMBOL vmlinux 0x00000000 generic_getxattr +EXPORT_SYMBOL vmlinux 0x00000000 generic_write_sync +EXPORT_SYMBOL vmlinux 0x00000000 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x00000000 in_group_p +EXPORT_SYMBOL vmlinux 0x00000000 inode_add_bytes +EXPORT_SYMBOL vmlinux 0x00000000 iov_shorten +EXPORT_SYMBOL vmlinux 0x00000000 iterate_fd +EXPORT_SYMBOL vmlinux 0x00000000 ns_capable +EXPORT_SYMBOL vmlinux 0x00000000 path_is_under +EXPORT_SYMBOL vmlinux 0x00000000 register_exec_domain +EXPORT_SYMBOL vmlinux 0x00000000 sock_register +EXPORT_SYMBOL vmlinux 0x00000000 sys_close +EXPORT_SYMBOL vmlinux 0x00000000 task_nice +EXPORT_SYMBOL vmlinux 0x00000000 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x00000000 vm_brk +EXPORT_SYMBOL vmlinux 0x003347e6 tty_hung_up_p +EXPORT_SYMBOL vmlinux 0x004a123f ps2_drain +EXPORT_SYMBOL vmlinux 0x00801678 flush_scheduled_work +EXPORT_SYMBOL vmlinux 0x0095f339 blk_mq_map_queue +EXPORT_SYMBOL vmlinux 0x00b5ee52 md_write_start +EXPORT_SYMBOL vmlinux 0x00ba8c7a __xfrm_init_state +EXPORT_SYMBOL vmlinux 0x00bad52a mmc_of_parse +EXPORT_SYMBOL vmlinux 0x00cf4a7f of_get_parent +EXPORT_SYMBOL vmlinux 0x00e8097b csum_partial_copy_fromiovecend +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x01065ceb neigh_seq_stop +EXPORT_SYMBOL vmlinux 0x01139ffc max_mapnr +EXPORT_SYMBOL vmlinux 0x0141461d nobh_write_end +EXPORT_SYMBOL vmlinux 0x015847cd filemap_write_and_wait +EXPORT_SYMBOL vmlinux 0x016a8d3d blk_queue_start_tag +EXPORT_SYMBOL vmlinux 0x0171a765 install_exec_creds +EXPORT_SYMBOL vmlinux 0x01738bf5 remove_arg_zero +EXPORT_SYMBOL vmlinux 0x01754175 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0x01866911 should_remove_suid +EXPORT_SYMBOL vmlinux 0x0186e2de smp_call_function_many +EXPORT_SYMBOL vmlinux 0x018cb647 netif_carrier_on +EXPORT_SYMBOL vmlinux 0x01902adf netpoll_trap +EXPORT_SYMBOL vmlinux 0x01905e30 proc_set_size +EXPORT_SYMBOL vmlinux 0x019f6cda dev_get_flags +EXPORT_SYMBOL vmlinux 0x01cccfd1 ppp_register_channel +EXPORT_SYMBOL vmlinux 0x01df9ae3 mnt_set_expiry +EXPORT_SYMBOL vmlinux 0x01ef3a10 nf_afinfo +EXPORT_SYMBOL vmlinux 0x0202bf98 iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0x02072066 key_reject_and_link +EXPORT_SYMBOL vmlinux 0x0208d1a9 snd_pcm_hw_param_last +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x02196324 __aeabi_idiv +EXPORT_SYMBOL vmlinux 0x021d1db4 skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0x02204143 __lru_cache_add +EXPORT_SYMBOL vmlinux 0x0233379f netif_rx_ni +EXPORT_SYMBOL vmlinux 0x024a15d9 blk_queue_softirq_done +EXPORT_SYMBOL vmlinux 0x02649054 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x026b5530 test_set_page_writeback +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x027f239f __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL vmlinux 0x0297e10b elv_register_queue +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a6ce5a crc16_table +EXPORT_SYMBOL vmlinux 0x02db632b nf_ct_attach +EXPORT_SYMBOL vmlinux 0x02ee26c1 free_pages_exact +EXPORT_SYMBOL vmlinux 0x02ef742b percpu_counter_set +EXPORT_SYMBOL vmlinux 0x02f3a2df mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0x02f893ca thermal_cdev_update +EXPORT_SYMBOL vmlinux 0x0300d023 dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0x03026722 mempool_alloc +EXPORT_SYMBOL vmlinux 0x03278870 tcf_destroy_chain +EXPORT_SYMBOL vmlinux 0x0334795d icst307_s2div +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x033e5a40 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0x03592ea0 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x036b5701 sync_blockdev +EXPORT_SYMBOL vmlinux 0x036ee019 __inode_permission +EXPORT_SYMBOL vmlinux 0x0376f9cc mem_map +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x037ad4a4 ilookup5 +EXPORT_SYMBOL vmlinux 0x03ab0496 jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0x03ab72a3 dev_uc_add +EXPORT_SYMBOL vmlinux 0x03ba39b0 v7_flush_user_cache_all +EXPORT_SYMBOL vmlinux 0x03c06156 bitmap_fold +EXPORT_SYMBOL vmlinux 0x03d9562f of_find_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0x03e79a11 swiotlb_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0x03e8b436 inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x03f3de26 mnt_pin +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x041f0c24 bio_integrity_advance +EXPORT_SYMBOL vmlinux 0x041f1c98 bdev_read_only +EXPORT_SYMBOL vmlinux 0x0422fe4a inet_csk_timer_bug_msg +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x0452f39a kern_path_mountpoint +EXPORT_SYMBOL vmlinux 0x04550d85 __seq_open_private +EXPORT_SYMBOL vmlinux 0x0487f831 fb_find_best_display +EXPORT_SYMBOL vmlinux 0x049ee0ed register_md_personality +EXPORT_SYMBOL vmlinux 0x04cda566 snd_interval_refine +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04f98f43 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x04ff46bd dmam_alloc_coherent +EXPORT_SYMBOL vmlinux 0x050c2bcf dquot_alloc +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x0535fdf2 gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0x053fdae7 inet_frags_exit_net +EXPORT_SYMBOL vmlinux 0x054434d6 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x0556b4f0 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0x055c6f30 inode_reclaim_rsv_space +EXPORT_SYMBOL vmlinux 0x057ce975 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0x05872d98 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x05896148 tty_port_put +EXPORT_SYMBOL vmlinux 0x058aa8c8 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0x0593a99b init_timer_key +EXPORT_SYMBOL vmlinux 0x05a99342 snd_card_create +EXPORT_SYMBOL vmlinux 0x05ae3cd7 irq_set_chip +EXPORT_SYMBOL vmlinux 0x05ba7c40 inet_stream_connect +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x0662ff3b snd_card_register +EXPORT_SYMBOL vmlinux 0x0677d62d bitmap_startwrite +EXPORT_SYMBOL vmlinux 0x067d8d35 security_release_secctx +EXPORT_SYMBOL vmlinux 0x0684995b padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x068d4439 scsi_execute +EXPORT_SYMBOL vmlinux 0x06aa1441 tty_unthrottle +EXPORT_SYMBOL vmlinux 0x06d1a38e vfs_open +EXPORT_SYMBOL vmlinux 0x06e29c44 i2c_del_driver +EXPORT_SYMBOL vmlinux 0x06f64ef0 bio_copy_kern +EXPORT_SYMBOL vmlinux 0x06fe3b14 default_grn +EXPORT_SYMBOL vmlinux 0x07267edf lro_receive_skb +EXPORT_SYMBOL vmlinux 0x0726baae snd_pcm_stop +EXPORT_SYMBOL vmlinux 0x072d1982 blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0x07407653 skb_queue_purge +EXPORT_SYMBOL vmlinux 0x07440b63 snd_timer_new +EXPORT_SYMBOL vmlinux 0x075dc732 sk_common_release +EXPORT_SYMBOL vmlinux 0x0779afd7 drop_super +EXPORT_SYMBOL vmlinux 0x077d0183 inet_put_port +EXPORT_SYMBOL vmlinux 0x0799aca4 local_bh_enable +EXPORT_SYMBOL vmlinux 0x07a102e4 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0x07a224bd d_make_root +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07c7e3c6 ata_link_printk +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07cf9099 wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0x07d27160 bdget +EXPORT_SYMBOL vmlinux 0x07f415c1 snd_device_register +EXPORT_SYMBOL vmlinux 0x0802e052 ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0x081f3afb complete_all +EXPORT_SYMBOL vmlinux 0x08203633 phy_device_create +EXPORT_SYMBOL vmlinux 0x0832593e del_gendisk +EXPORT_SYMBOL vmlinux 0x083c2cbe of_get_next_parent +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x08725789 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0x088d2d42 blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0x08aa326b seq_release_private +EXPORT_SYMBOL vmlinux 0x08ad27b8 dma_async_memcpy_pg_to_pg +EXPORT_SYMBOL vmlinux 0x08da0bb7 kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x08ea2b03 from_kgid +EXPORT_SYMBOL vmlinux 0x08eff548 sock_update_classid +EXPORT_SYMBOL vmlinux 0x08f40213 __skb_gso_segment +EXPORT_SYMBOL vmlinux 0x08fe8e13 i2c_del_adapter +EXPORT_SYMBOL vmlinux 0x091e9b81 netpoll_print_options +EXPORT_SYMBOL vmlinux 0x09248fbe update_devfreq +EXPORT_SYMBOL vmlinux 0x09306fbc elv_rq_merge_ok +EXPORT_SYMBOL vmlinux 0x09723ae9 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0x097ec1ff _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0x0989077c fifo_set_limit +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x099abd4b dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0x09af1c96 empty_aops +EXPORT_SYMBOL vmlinux 0x09c0cbe4 fib_default_rule_pref +EXPORT_SYMBOL vmlinux 0x09c55cec schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09cf1b46 proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09dae2a6 no_llseek +EXPORT_SYMBOL vmlinux 0x09dc5e95 pipe_lock +EXPORT_SYMBOL vmlinux 0x09eadd26 snd_card_set_id +EXPORT_SYMBOL vmlinux 0x09eee6c3 bio_integrity_split +EXPORT_SYMBOL vmlinux 0x09fc0f84 dev_disable_lro +EXPORT_SYMBOL vmlinux 0x0a0786de udplite_table +EXPORT_SYMBOL vmlinux 0x0a103222 done_path_create +EXPORT_SYMBOL vmlinux 0x0a2331f1 notify_change +EXPORT_SYMBOL vmlinux 0x0a2487e0 unblock_all_signals +EXPORT_SYMBOL vmlinux 0x0a25b613 flock_lock_file_wait +EXPORT_SYMBOL vmlinux 0x0a2e5c34 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x0a3131f6 strnchr +EXPORT_SYMBOL vmlinux 0x0a44cee8 __get_user_pages +EXPORT_SYMBOL vmlinux 0x0a469d23 mfd_clone_cell +EXPORT_SYMBOL vmlinux 0x0a4c57b4 blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0x0a5cc64d mutex_unlock +EXPORT_SYMBOL vmlinux 0x0a61ed7a sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0x0a82a689 fsync_bdev +EXPORT_SYMBOL vmlinux 0x0a958ed4 down_write +EXPORT_SYMBOL vmlinux 0x0aa13d05 __raw_readsw +EXPORT_SYMBOL vmlinux 0x0acb1a3c __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0adfab73 __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x0af5c2cd snd_pcm_hw_refine +EXPORT_SYMBOL vmlinux 0x0b0d888b icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b48677a __kfifo_init +EXPORT_SYMBOL vmlinux 0x0b4a74d5 __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0x0b4fe446 dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x0b56117f of_find_node_by_path +EXPORT_SYMBOL vmlinux 0x0b650743 sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b97b87b netlink_ack +EXPORT_SYMBOL vmlinux 0x0bb57a76 input_unregister_handle +EXPORT_SYMBOL vmlinux 0x0bbc5908 gen_estimator_active +EXPORT_SYMBOL vmlinux 0x0bc333a5 ipmi_smi_watcher_unregister +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bcd87e9 skb_make_writable +EXPORT_SYMBOL vmlinux 0x0be059b2 mmc_remove_host +EXPORT_SYMBOL vmlinux 0x0be22253 search_binary_handler +EXPORT_SYMBOL vmlinux 0x0c055ed0 mmc_interrupt_hpi +EXPORT_SYMBOL vmlinux 0x0c09f205 splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0x0c40691f lock_may_read +EXPORT_SYMBOL vmlinux 0x0c45fc96 vfs_lstat +EXPORT_SYMBOL vmlinux 0x0c58a8cd netdev_increment_features +EXPORT_SYMBOL vmlinux 0x0c65e436 inet6_ioctl +EXPORT_SYMBOL vmlinux 0x0c65e73c scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0x0c6f38ea iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0x0c8c9e99 scsi_show_extd_sense +EXPORT_SYMBOL vmlinux 0x0ca0c882 twl6030_interrupt_mask +EXPORT_SYMBOL vmlinux 0x0ca54fee _test_and_set_bit +EXPORT_SYMBOL vmlinux 0x0cab47d5 ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x0cae232b utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0x0cc81ac8 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x0cd1d391 ip_ct_attach +EXPORT_SYMBOL vmlinux 0x0cd62d7d twl6040_power +EXPORT_SYMBOL vmlinux 0x0ce900af blk_finish_plug +EXPORT_SYMBOL vmlinux 0x0cef8e91 sk_stream_error +EXPORT_SYMBOL vmlinux 0x0cfefe1e percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0x0d2059f9 scsi_init_io +EXPORT_SYMBOL vmlinux 0x0d2af40d seq_write +EXPORT_SYMBOL vmlinux 0x0d3f57a2 _find_next_bit_le +EXPORT_SYMBOL vmlinux 0x0d4d7a32 _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d693c26 phy_device_register +EXPORT_SYMBOL vmlinux 0x0d74a82d xfrm_state_add +EXPORT_SYMBOL vmlinux 0x0d74b848 follow_pfn +EXPORT_SYMBOL vmlinux 0x0d8e193f mmc_start_req +EXPORT_SYMBOL vmlinux 0x0da10ec3 security_sock_graft +EXPORT_SYMBOL vmlinux 0x0dc05c04 vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0x0dce7428 mmc_power_save_host +EXPORT_SYMBOL vmlinux 0x0e0891eb snd_jack_set_key +EXPORT_SYMBOL vmlinux 0x0e22e83a seq_escape +EXPORT_SYMBOL vmlinux 0x0e351cf8 udp_seq_open +EXPORT_SYMBOL vmlinux 0x0e470f68 nand_calculate_ecc +EXPORT_SYMBOL vmlinux 0x0e6da44a set_normalized_timespec +EXPORT_SYMBOL vmlinux 0x0e7be7fd tty_port_init +EXPORT_SYMBOL vmlinux 0x0e950e8c of_get_ddr_timings +EXPORT_SYMBOL vmlinux 0x0e953c80 snd_info_create_card_entry +EXPORT_SYMBOL vmlinux 0x0eaf451e hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x0ec59c05 security_path_mkdir +EXPORT_SYMBOL vmlinux 0x0edc2789 netdev_emerg +EXPORT_SYMBOL vmlinux 0x0ee92eaa d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0x0eed274c skb_copy_bits +EXPORT_SYMBOL vmlinux 0x0efcbb1b set_current_groups +EXPORT_SYMBOL vmlinux 0x0f0def30 netpoll_send_udp +EXPORT_SYMBOL vmlinux 0x0f0e9add blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0x0f10fb8b unregister_qdisc +EXPORT_SYMBOL vmlinux 0x0f157947 cpu_v7_set_pte_ext +EXPORT_SYMBOL vmlinux 0x0f2768e3 set_groups +EXPORT_SYMBOL vmlinux 0x0f389202 generic_fillattr +EXPORT_SYMBOL vmlinux 0x0f48bc93 skb_free_datagram +EXPORT_SYMBOL vmlinux 0x0f4c91ed ns_to_timespec +EXPORT_SYMBOL vmlinux 0x0f5bb0cc iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0x0f6978b3 phy_scan_fixups +EXPORT_SYMBOL vmlinux 0x0f8db0e1 netdev_warn +EXPORT_SYMBOL vmlinux 0x0fa2a45e __memzero +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fba22de xfrm_cfg_mutex +EXPORT_SYMBOL vmlinux 0x0fc80f2c tty_schedule_flip +EXPORT_SYMBOL vmlinux 0x0ff178f6 __aeabi_idivmod +EXPORT_SYMBOL vmlinux 0x0ff2b602 slhc_compress +EXPORT_SYMBOL vmlinux 0x0ff9a86e free_buffer_head +EXPORT_SYMBOL vmlinux 0x10303358 scsi_prep_state_check +EXPORT_SYMBOL vmlinux 0x104f66a4 abx500_register_ops +EXPORT_SYMBOL vmlinux 0x10552797 xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x105a9bdf d_alloc_name +EXPORT_SYMBOL vmlinux 0x10665f49 blk_put_request +EXPORT_SYMBOL vmlinux 0x1067a11d devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0x106f13ab crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x1072a394 csum_partial_copy_from_user +EXPORT_SYMBOL vmlinux 0x10ed687a devfreq_add_governor +EXPORT_SYMBOL vmlinux 0x10ee20bb default_blu +EXPORT_SYMBOL vmlinux 0x11010574 netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x11267875 scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0x1131e1ce d_lookup +EXPORT_SYMBOL vmlinux 0x11393a69 sock_kfree_s +EXPORT_SYMBOL vmlinux 0x115322d9 dev_trans_start +EXPORT_SYMBOL vmlinux 0x115cb686 iget_failed +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x118b3f2f ppp_register_compressor +EXPORT_SYMBOL vmlinux 0x119b50e7 elf_check_arch +EXPORT_SYMBOL vmlinux 0x11bf7518 netdev_err +EXPORT_SYMBOL vmlinux 0x11c9185c of_iomap +EXPORT_SYMBOL vmlinux 0x11cb4c14 neigh_connected_output +EXPORT_SYMBOL vmlinux 0x11d7188c netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0x11e2ec12 flex_array_free_parts +EXPORT_SYMBOL vmlinux 0x11ee38c2 follow_down_one +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x1207c82f dev_uc_sync +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x1213b8a2 blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0x121555ba inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0x121c6ed3 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0x122043a8 of_find_node_with_property +EXPORT_SYMBOL vmlinux 0x12352a0c pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x123f0387 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x1250c45f truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x1264d17f inet_del_offload +EXPORT_SYMBOL vmlinux 0x127ef837 dquot_quotactl_ops +EXPORT_SYMBOL vmlinux 0x128b2321 __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0x1299913c inode_dio_wait +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12b7d389 mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0x12bae53a __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0x12bd239d tcp_connect +EXPORT_SYMBOL vmlinux 0x12c218b2 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0x12c36aba udp_sendmsg +EXPORT_SYMBOL vmlinux 0x12da5bb2 __kmalloc +EXPORT_SYMBOL vmlinux 0x12da81ca inet6_register_protosw +EXPORT_SYMBOL vmlinux 0x12e00499 account_page_writeback +EXPORT_SYMBOL vmlinux 0x130c9e3d find_or_create_page +EXPORT_SYMBOL vmlinux 0x1327c4e9 freeze_super +EXPORT_SYMBOL vmlinux 0x1329199a kfree_skb_list +EXPORT_SYMBOL vmlinux 0x13307fde vsscanf +EXPORT_SYMBOL vmlinux 0x1335ff71 sync_inode +EXPORT_SYMBOL vmlinux 0x1348760d ipmi_request_settime +EXPORT_SYMBOL vmlinux 0x137e94f6 dev_driver_string +EXPORT_SYMBOL vmlinux 0x13b90645 ppp_dev_name +EXPORT_SYMBOL vmlinux 0x13bec0cd md_write_end +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x1412c7b6 xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x1420b379 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0x142d0609 xfrm_unregister_mode +EXPORT_SYMBOL vmlinux 0x14420eb6 security_path_rename +EXPORT_SYMBOL vmlinux 0x1444a7f1 tty_register_driver +EXPORT_SYMBOL vmlinux 0x14569e81 writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0x146057df ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x146477e1 pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0x149a4494 mount_ns +EXPORT_SYMBOL vmlinux 0x14ab4f9f of_phy_find_device +EXPORT_SYMBOL vmlinux 0x14accf81 km_policy_notify +EXPORT_SYMBOL vmlinux 0x14bf9cd2 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x14d4a9c5 _change_bit +EXPORT_SYMBOL vmlinux 0x14d4c0fd snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL vmlinux 0x14e7f900 eth_header_cache_update +EXPORT_SYMBOL vmlinux 0x15349cee cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x1551dc51 bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x156bedfb finish_no_open +EXPORT_SYMBOL vmlinux 0x15f571ec blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0x161852fa dma_find_channel +EXPORT_SYMBOL vmlinux 0x1620dae0 blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x162cc83e seq_path +EXPORT_SYMBOL vmlinux 0x162ccc0c lg_local_lock +EXPORT_SYMBOL vmlinux 0x16305289 warn_slowpath_null +EXPORT_SYMBOL vmlinux 0x1634c87d scsi_print_sense +EXPORT_SYMBOL vmlinux 0x164a1216 jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0x164cc30f key_invalidate +EXPORT_SYMBOL vmlinux 0x1664ba91 xfrm_state_update +EXPORT_SYMBOL vmlinux 0x166ce7c6 get_thermal_instance +EXPORT_SYMBOL vmlinux 0x16766435 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x16799750 frontswap_register_ops +EXPORT_SYMBOL vmlinux 0x167a1dfc phy_driver_register +EXPORT_SYMBOL vmlinux 0x16a08ca2 inet_frag_evictor +EXPORT_SYMBOL vmlinux 0x16bf5191 blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x16dcec76 ipmi_set_my_address +EXPORT_SYMBOL vmlinux 0x16dd5682 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0x16e95bc9 eth_header_parse +EXPORT_SYMBOL vmlinux 0x16e973dd inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0x16f28cb8 inode_sub_rsv_space +EXPORT_SYMBOL vmlinux 0x16fca161 tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x17215b00 sock_update_memcg +EXPORT_SYMBOL vmlinux 0x1724fc5d twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0x1730da43 set_user_nice +EXPORT_SYMBOL vmlinux 0x1733aaea nf_log_register +EXPORT_SYMBOL vmlinux 0x174307db __sb_start_write +EXPORT_SYMBOL vmlinux 0x1753e3b0 __inet_stream_connect +EXPORT_SYMBOL vmlinux 0x1771a8f7 qdisc_list_del +EXPORT_SYMBOL vmlinux 0x177fd0ff shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0x1790950d lease_modify +EXPORT_SYMBOL vmlinux 0x17925a32 mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0x179f918a backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x17a142df __copy_from_user +EXPORT_SYMBOL vmlinux 0x17a4e76e tcf_generic_walker +EXPORT_SYMBOL vmlinux 0x17a96adc netif_receive_skb +EXPORT_SYMBOL vmlinux 0x17b1125d gen_kill_estimator +EXPORT_SYMBOL vmlinux 0x17c4692d devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0x17cc9c2b serio_open +EXPORT_SYMBOL vmlinux 0x17fff827 skb_find_text +EXPORT_SYMBOL vmlinux 0x1813c5cd snd_pcm_set_ops +EXPORT_SYMBOL vmlinux 0x1825c520 sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0x1826f089 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x182c7b8d dev_uc_init +EXPORT_SYMBOL vmlinux 0x1832fa11 netdev_crit +EXPORT_SYMBOL vmlinux 0x183bd662 neigh_update +EXPORT_SYMBOL vmlinux 0x183fa88b mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0x184b82fb mmc_vddrange_to_ocrmask +EXPORT_SYMBOL vmlinux 0x184e6c85 radix_tree_gang_lookup_slot +EXPORT_SYMBOL vmlinux 0x1860ccaf misc_register +EXPORT_SYMBOL vmlinux 0x18796abb netif_device_attach +EXPORT_SYMBOL vmlinux 0x188a3dfb timespec_trunc +EXPORT_SYMBOL vmlinux 0x189868d7 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x18a3b931 tcp_md5_hash_header +EXPORT_SYMBOL vmlinux 0x18bd76a4 _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0x18c2227f cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x18c698e3 proc_mkdir +EXPORT_SYMBOL vmlinux 0x18d73aba would_dump +EXPORT_SYMBOL vmlinux 0x18f3dd61 tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x18f794c1 lro_flush_pkt +EXPORT_SYMBOL vmlinux 0x19144b06 i2c_register_driver +EXPORT_SYMBOL vmlinux 0x1921e99c ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0x192b4c33 cdev_init +EXPORT_SYMBOL vmlinux 0x193a5ec9 kernel_setsockopt +EXPORT_SYMBOL vmlinux 0x193f50c9 user_path_create +EXPORT_SYMBOL vmlinux 0x195ce538 snd_dma_reserve_buf +EXPORT_SYMBOL vmlinux 0x19610e1f cpu_all_bits +EXPORT_SYMBOL vmlinux 0x197e9d1c snd_timer_start +EXPORT_SYMBOL vmlinux 0x198f181c ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19c99f86 devm_gpiod_put +EXPORT_SYMBOL vmlinux 0x19dc33b3 find_lock_page +EXPORT_SYMBOL vmlinux 0x19deb0cf noop_llseek +EXPORT_SYMBOL vmlinux 0x19f5809b dm_ratelimit_state +EXPORT_SYMBOL vmlinux 0x1a09bdd9 security_d_instantiate +EXPORT_SYMBOL vmlinux 0x1a10c898 ipmi_set_maintenance_mode +EXPORT_SYMBOL vmlinux 0x1a3045c5 blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0x1a3234f4 netdev_state_change +EXPORT_SYMBOL vmlinux 0x1a4137de d_drop +EXPORT_SYMBOL vmlinux 0x1a65f4ad __arm_ioremap_pfn +EXPORT_SYMBOL vmlinux 0x1a7d533e tcp_recvmsg +EXPORT_SYMBOL vmlinux 0x1a8fd1b5 snd_pcm_mmap_data +EXPORT_SYMBOL vmlinux 0x1aa9b973 names_cachep +EXPORT_SYMBOL vmlinux 0x1ab19e7c alloc_file +EXPORT_SYMBOL vmlinux 0x1aba5db8 ipmi_unregister_smi +EXPORT_SYMBOL vmlinux 0x1ace138d bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0x1ad1f2e7 _memcpy_fromio +EXPORT_SYMBOL vmlinux 0x1aefc0a6 free_task +EXPORT_SYMBOL vmlinux 0x1affe44d inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b0ac272 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0x1b1e1088 sg_nents +EXPORT_SYMBOL vmlinux 0x1b288fcd get_task_io_context +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b684b85 page_symlink +EXPORT_SYMBOL vmlinux 0x1b6f00b2 mmc_can_reset +EXPORT_SYMBOL vmlinux 0x1b82fefa md_unplug +EXPORT_SYMBOL vmlinux 0x1b8ac3c6 block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x1b9e0ff1 scsilun_to_int +EXPORT_SYMBOL vmlinux 0x1bb5d150 block_read_full_page +EXPORT_SYMBOL vmlinux 0x1bbf005a scsi_prep_return +EXPORT_SYMBOL vmlinux 0x1bd9a38d generic_error_remove_page +EXPORT_SYMBOL vmlinux 0x1bf16674 ptp_clock_event +EXPORT_SYMBOL vmlinux 0x1c18c62d __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x1c5e3878 icst525_idx2s +EXPORT_SYMBOL vmlinux 0x1c8bcd36 bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x1c9b12d9 max8925_reg_read +EXPORT_SYMBOL vmlinux 0x1caa6514 skb_copy_datagram_from_iovec +EXPORT_SYMBOL vmlinux 0x1ceb4059 tcf_action_exec +EXPORT_SYMBOL vmlinux 0x1cfb04fa finish_wait +EXPORT_SYMBOL vmlinux 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL vmlinux 0x1d58aeb9 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0x1d78dc82 elevator_alloc +EXPORT_SYMBOL vmlinux 0x1d7f3ce3 fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0x1d9500b3 phy_ethtool_gset +EXPORT_SYMBOL vmlinux 0x1d99f289 snd_dma_get_reserved_buf +EXPORT_SYMBOL vmlinux 0x1da55e53 twl6040_set_bits +EXPORT_SYMBOL vmlinux 0x1db1d3a1 __pagevec_release +EXPORT_SYMBOL vmlinux 0x1dc36131 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0x1dcd5d38 jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1df927d1 of_find_backlight_by_node +EXPORT_SYMBOL vmlinux 0x1e047854 warn_slowpath_fmt +EXPORT_SYMBOL vmlinux 0x1e1a56aa blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x1e26be3b get_anon_bdev +EXPORT_SYMBOL vmlinux 0x1e270a6c input_register_handler +EXPORT_SYMBOL vmlinux 0x1e30364a xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x1e32621b do_splice_from +EXPORT_SYMBOL vmlinux 0x1e5981e6 kernel_listen +EXPORT_SYMBOL vmlinux 0x1e6b63fb poll_schedule_timeout +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e7656ad scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ea4fe2f register_key_type +EXPORT_SYMBOL vmlinux 0x1eaedda4 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x1ebe57ba truncate_pagecache +EXPORT_SYMBOL vmlinux 0x1ec3bed9 hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0x1ec4eb34 flex_array_prealloc +EXPORT_SYMBOL vmlinux 0x1ee4d757 neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0x1eeb848e __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0x1f00ecef blk_stop_queue +EXPORT_SYMBOL vmlinux 0x1f549d90 unregister_quota_format +EXPORT_SYMBOL vmlinux 0x1f6729f5 __scsi_alloc_queue +EXPORT_SYMBOL vmlinux 0x1f7e807f kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x1f8c28da scsi_register_interface +EXPORT_SYMBOL vmlinux 0x1fab5905 wait_for_completion +EXPORT_SYMBOL vmlinux 0x1fb03651 padata_register_cpumask_notifier +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fdc5129 mmc_free_host +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1fe9f800 unregister_cpu_notifier +EXPORT_SYMBOL vmlinux 0x1fedf0f4 __request_region +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x200e7082 skb_insert +EXPORT_SYMBOL vmlinux 0x2021e7b5 __ip_dev_find +EXPORT_SYMBOL vmlinux 0x2027ff7f gen10g_config_advert +EXPORT_SYMBOL vmlinux 0x202fd775 skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0x20421305 on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x20566703 vfs_fsync +EXPORT_SYMBOL vmlinux 0x20597bd0 serio_interrupt +EXPORT_SYMBOL vmlinux 0x2061cadb scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x208f517b skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x20a0ff66 __mem_cgroup_count_vm_event +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20b2bb2d param_array_ops +EXPORT_SYMBOL vmlinux 0x20b6e8d2 __pv_phys_offset +EXPORT_SYMBOL vmlinux 0x20c55ae0 sscanf +EXPORT_SYMBOL vmlinux 0x20df2681 ida_simple_remove +EXPORT_SYMBOL vmlinux 0x20f90e70 eth_change_mtu +EXPORT_SYMBOL vmlinux 0x210184b5 blk_alloc_queue_node +EXPORT_SYMBOL vmlinux 0x211331fa __divsi3 +EXPORT_SYMBOL vmlinux 0x2113f8ee tcp_poll +EXPORT_SYMBOL vmlinux 0x21167424 dev_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x211fe32f tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0x212a22bf key_validate +EXPORT_SYMBOL vmlinux 0x2134f2d1 sound_class +EXPORT_SYMBOL vmlinux 0x2136e8f6 nf_register_hooks +EXPORT_SYMBOL vmlinux 0x215ebd78 bitrev16 +EXPORT_SYMBOL vmlinux 0x2161895f xfrm_prepare_input +EXPORT_SYMBOL vmlinux 0x21692b5d blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x21782b1c call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0x217dda13 flex_array_get +EXPORT_SYMBOL vmlinux 0x217f67ca inetdev_by_index +EXPORT_SYMBOL vmlinux 0x2186406c snd_pcm_hw_constraint_list +EXPORT_SYMBOL vmlinux 0x218a200a max8998_read_reg +EXPORT_SYMBOL vmlinux 0x219d003e blk_mq_alloc_single_hw_queue +EXPORT_SYMBOL vmlinux 0x219f57ea vm_mmap +EXPORT_SYMBOL vmlinux 0x21ab338f submit_bio +EXPORT_SYMBOL vmlinux 0x21d8809c set_blocksize +EXPORT_SYMBOL vmlinux 0x21fea04d dev_addr_flush +EXPORT_SYMBOL vmlinux 0x221e2993 genl_unregister_family +EXPORT_SYMBOL vmlinux 0x222400aa alloc_anon_inode +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x222fa684 lg_global_lock +EXPORT_SYMBOL vmlinux 0x2232a8a5 mempool_free +EXPORT_SYMBOL vmlinux 0x2256fafa div64_u64_rem +EXPORT_SYMBOL vmlinux 0x225b1a76 jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0x22647405 keyring_search +EXPORT_SYMBOL vmlinux 0x22675997 seq_printf +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22d3f0ea generic_file_fsync +EXPORT_SYMBOL vmlinux 0x22d9cb26 snd_ctl_remove_id +EXPORT_SYMBOL vmlinux 0x22e1ae6f up_read +EXPORT_SYMBOL vmlinux 0x22e390ab fget_raw +EXPORT_SYMBOL vmlinux 0x22eef9c2 mark_info_dirty +EXPORT_SYMBOL vmlinux 0x230d240a snd_jack_set_parent +EXPORT_SYMBOL vmlinux 0x231d4001 fb_edid_add_monspecs +EXPORT_SYMBOL vmlinux 0x2341b6b9 nlmsg_notify +EXPORT_SYMBOL vmlinux 0x23532c4d ftrace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x23a574fd security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0x23aa49d3 _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c82326 netif_napi_del +EXPORT_SYMBOL vmlinux 0x23c8f257 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x23e161e8 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0x23f97b2e unlock_rename +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x243aa4b5 dev_get_by_flags_rcu +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x2482e688 vsprintf +EXPORT_SYMBOL vmlinux 0x24844fca con_copy_unimap +EXPORT_SYMBOL vmlinux 0x248bdea4 unregister_key_type +EXPORT_SYMBOL vmlinux 0x24a4f1ac gen10g_config_aneg +EXPORT_SYMBOL vmlinux 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL vmlinux 0x24b0f90c of_clk_get_by_name +EXPORT_SYMBOL vmlinux 0x24b4aa1c xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x24cd114a __bforget +EXPORT_SYMBOL vmlinux 0x24d7b4eb cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x24f11f89 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0x24fdac79 wake_bit_function +EXPORT_SYMBOL vmlinux 0x250113b4 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x251a1036 dma_mark_declared_memory_occupied +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x2545beb1 vfs_path_lookup +EXPORT_SYMBOL vmlinux 0x25540332 inode_sb_list_lock +EXPORT_SYMBOL vmlinux 0x256e1a32 pagevec_lookup +EXPORT_SYMBOL vmlinux 0x257a9a12 inet_frags_fini +EXPORT_SYMBOL vmlinux 0x2581523f vfs_symlink +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x259b346b dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0x25a67321 padata_stop +EXPORT_SYMBOL vmlinux 0x25c005fe udp_add_offload +EXPORT_SYMBOL vmlinux 0x25c677c4 mac_pton +EXPORT_SYMBOL vmlinux 0x25f673fc gen_replace_estimator +EXPORT_SYMBOL vmlinux 0x25ff2ea7 dev_addr_init +EXPORT_SYMBOL vmlinux 0x25ff7977 generic_file_buffered_write +EXPORT_SYMBOL vmlinux 0x260cf8f8 of_get_property +EXPORT_SYMBOL vmlinux 0x26326010 starget_for_each_device +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x263dfced tty_devnum +EXPORT_SYMBOL vmlinux 0x2650d835 sysctl_ip_early_demux +EXPORT_SYMBOL vmlinux 0x266512e0 snd_pcm_notify +EXPORT_SYMBOL vmlinux 0x26695728 lockref_mark_dead +EXPORT_SYMBOL vmlinux 0x2685c3d7 __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x26bb950b __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0x26ca6d47 __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x26d3b335 tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0x26dc073c fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0x26e76fb8 sysctl_udp_wmem_min +EXPORT_SYMBOL vmlinux 0x26eefc46 phy_detach +EXPORT_SYMBOL vmlinux 0x26f0453a blk_set_default_limits +EXPORT_SYMBOL vmlinux 0x26f8b1e1 sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x270664d2 skb_kill_datagram +EXPORT_SYMBOL vmlinux 0x2722bd30 skb_pad +EXPORT_SYMBOL vmlinux 0x2729637a inet_ioctl +EXPORT_SYMBOL vmlinux 0x274d08dc __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0x27540e43 __blk_end_request +EXPORT_SYMBOL vmlinux 0x27559481 __lock_page +EXPORT_SYMBOL vmlinux 0x275ef902 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x27a6007e phy_stop_interrupts +EXPORT_SYMBOL vmlinux 0x27b60f4e scsi_device_set_state +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27c4d9de mmc_read_bkops_status +EXPORT_SYMBOL vmlinux 0x27cee886 snd_info_create_module_entry +EXPORT_SYMBOL vmlinux 0x27e1a049 printk +EXPORT_SYMBOL vmlinux 0x28118cb6 __get_user_1 +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x28236803 inode_set_bytes +EXPORT_SYMBOL vmlinux 0x283e7402 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x28644002 security_inode_permission +EXPORT_SYMBOL vmlinux 0x28694c21 kfree_put_link +EXPORT_SYMBOL vmlinux 0x286ce97f rfkill_alloc +EXPORT_SYMBOL vmlinux 0x28744f92 tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0x28a2ed02 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x28b868ca snd_card_file_remove +EXPORT_SYMBOL vmlinux 0x28ffb909 sock_no_bind +EXPORT_SYMBOL vmlinux 0x29046a9c inode_get_bytes +EXPORT_SYMBOL vmlinux 0x29137232 cad_pid +EXPORT_SYMBOL vmlinux 0x291881e1 tty_port_hangup +EXPORT_SYMBOL vmlinux 0x291b0622 nla_put +EXPORT_SYMBOL vmlinux 0x29441ca0 vlan_vid_del +EXPORT_SYMBOL vmlinux 0x2950fe7a kthread_create_on_node +EXPORT_SYMBOL vmlinux 0x29537c9e alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0x297a8c94 dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x29885c48 devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x29886c2a scsi_put_command +EXPORT_SYMBOL vmlinux 0x29b19047 padata_do_serial +EXPORT_SYMBOL vmlinux 0x29baff70 ida_remove +EXPORT_SYMBOL vmlinux 0x29bb3152 alloc_buffer_head +EXPORT_SYMBOL vmlinux 0x29bc1606 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x29f3c022 generic_setlease +EXPORT_SYMBOL vmlinux 0x29fdda53 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0x2a01bfe5 d_delete +EXPORT_SYMBOL vmlinux 0x2a02c22c snd_ctl_boolean_stereo_info +EXPORT_SYMBOL vmlinux 0x2a1b1a14 blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x2a24a302 of_find_i2c_device_by_node +EXPORT_SYMBOL vmlinux 0x2a37d074 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2a3aa678 _test_and_clear_bit +EXPORT_SYMBOL vmlinux 0x2a4841f5 mount_bdev +EXPORT_SYMBOL vmlinux 0x2a54de3f blk_make_request +EXPORT_SYMBOL vmlinux 0x2a574640 uart_match_port +EXPORT_SYMBOL vmlinux 0x2a797400 input_set_abs_params +EXPORT_SYMBOL vmlinux 0x2a79ac13 clkdev_add +EXPORT_SYMBOL vmlinux 0x2a903e71 dev_set_mtu +EXPORT_SYMBOL vmlinux 0x2aa0e4fc strncasecmp +EXPORT_SYMBOL vmlinux 0x2ab40c8f sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0x2acf0feb vfs_fstat +EXPORT_SYMBOL vmlinux 0x2ae3deaa release_and_free_resource +EXPORT_SYMBOL vmlinux 0x2aff9342 ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x2b070d72 pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0x2b0ba2b0 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x2b12925d cpumask_next_and +EXPORT_SYMBOL vmlinux 0x2b2ce78b kstrtos8 +EXPORT_SYMBOL vmlinux 0x2b4e956e mempool_create +EXPORT_SYMBOL vmlinux 0x2b503de5 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x2b5e8f47 blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0x2b60cd02 keyring_clear +EXPORT_SYMBOL vmlinux 0x2b69cc94 tc_classify_compat +EXPORT_SYMBOL vmlinux 0x2b71b51f tcp_gro_receive +EXPORT_SYMBOL vmlinux 0x2b97706b phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2b9e4c5e rtnl_unicast +EXPORT_SYMBOL vmlinux 0x2ba23da8 blk_queue_unprep_rq +EXPORT_SYMBOL vmlinux 0x2ba707a8 sysctl_tcp_low_latency +EXPORT_SYMBOL vmlinux 0x2bbafc21 mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0x2bbf5d60 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0x2bd4c0e8 skb_checksum_help +EXPORT_SYMBOL vmlinux 0x2be0f12d dql_completed +EXPORT_SYMBOL vmlinux 0x2be14f00 netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0x2bef9cbf inet_add_offload +EXPORT_SYMBOL vmlinux 0x2c09bc6c commit_creds +EXPORT_SYMBOL vmlinux 0x2c14323a kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c34866a __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0x2c3f4ae7 vfs_readv +EXPORT_SYMBOL vmlinux 0x2c4411b1 ftrace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x2c81ec75 __irq_regs +EXPORT_SYMBOL vmlinux 0x2c864f90 bdi_init +EXPORT_SYMBOL vmlinux 0x2c900d91 cpufreq_put_global_kobject +EXPORT_SYMBOL vmlinux 0x2c9732f8 gen_pool_destroy +EXPORT_SYMBOL vmlinux 0x2c988955 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x2cb4baec mfd_add_devices +EXPORT_SYMBOL vmlinux 0x2cb515c6 ip_route_input_noref +EXPORT_SYMBOL vmlinux 0x2cd167a5 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0x2d03c10d posix_acl_create +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d2fed51 dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d6507b5 _find_next_zero_bit_le +EXPORT_SYMBOL vmlinux 0x2d7a582f set_page_dirty +EXPORT_SYMBOL vmlinux 0x2d89342a scsi_show_sense_hdr +EXPORT_SYMBOL vmlinux 0x2d935cf8 mdiobus_write +EXPORT_SYMBOL vmlinux 0x2daaaba9 param_get_byte +EXPORT_SYMBOL vmlinux 0x2dbfbb58 __napi_schedule +EXPORT_SYMBOL vmlinux 0x2deda4a1 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x2e1181bb blk_get_request +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e2ce9e0 sysctl_tcp_syncookies +EXPORT_SYMBOL vmlinux 0x2e2f6b95 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0x2e31cdd8 map_destroy +EXPORT_SYMBOL vmlinux 0x2e4b22b7 scsi_target_resume +EXPORT_SYMBOL vmlinux 0x2e5150f1 scm_detach_fds +EXPORT_SYMBOL vmlinux 0x2e524fe6 fsnotify_put_group +EXPORT_SYMBOL vmlinux 0x2e5810c6 __aeabi_unwind_cpp_pr1 +EXPORT_SYMBOL vmlinux 0x2e5af1f3 rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0x2ec524ad __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x2ee1f7da __module_put_and_exit +EXPORT_SYMBOL vmlinux 0x2eeceb42 sk_chk_filter +EXPORT_SYMBOL vmlinux 0x2ef63ad6 scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f064b55 allocate_resource +EXPORT_SYMBOL vmlinux 0x2f12ee90 insert_inode_locked +EXPORT_SYMBOL vmlinux 0x2f264d27 snd_pcm_hw_constraint_integer +EXPORT_SYMBOL vmlinux 0x2f2795de netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0x2f2d13c1 iput +EXPORT_SYMBOL vmlinux 0x2f5f4146 ether_setup +EXPORT_SYMBOL vmlinux 0x2f859593 uart_suspend_port +EXPORT_SYMBOL vmlinux 0x2f902800 input_unregister_handler +EXPORT_SYMBOL vmlinux 0x2f9d9bc5 init_special_inode +EXPORT_SYMBOL vmlinux 0x2fadde44 xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0x2fb30772 __sk_dst_check +EXPORT_SYMBOL vmlinux 0x2fb6bfa4 sock_get_timestamp +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fdfa91b mmc_cleanup_queue +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2fe8e684 rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x300fe96f balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0x3028a1e3 tty_lock +EXPORT_SYMBOL vmlinux 0x303bdc09 __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0x304a228b register_gifconf +EXPORT_SYMBOL vmlinux 0x30639b52 write_inode_now +EXPORT_SYMBOL vmlinux 0x307286ba snd_register_device_for_dev +EXPORT_SYMBOL vmlinux 0x307c2fd0 generic_check_addressable +EXPORT_SYMBOL vmlinux 0x3096fc15 thaw_super +EXPORT_SYMBOL vmlinux 0x30a203d1 zerocopy_sg_from_iovec +EXPORT_SYMBOL vmlinux 0x30a77f35 elv_add_request +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30b3951b blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x30c2ff6d bio_uncopy_user +EXPORT_SYMBOL vmlinux 0x30cada8f radix_tree_next_hole +EXPORT_SYMBOL vmlinux 0x30e74134 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0x30efec75 devm_iounmap +EXPORT_SYMBOL vmlinux 0x30faddab always_delete_dentry +EXPORT_SYMBOL vmlinux 0x30fed80c eth_header_cache +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x3106941b get_gendisk +EXPORT_SYMBOL vmlinux 0x310917fe sort +EXPORT_SYMBOL vmlinux 0x3110551e xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0x311310bd scsi_setup_blk_pc_cmnd +EXPORT_SYMBOL vmlinux 0x31188295 sockfd_lookup +EXPORT_SYMBOL vmlinux 0x311f6dd6 ping_prot +EXPORT_SYMBOL vmlinux 0x312824e0 hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x3132ee65 __nand_calculate_ecc +EXPORT_SYMBOL vmlinux 0x3147857d default_red +EXPORT_SYMBOL vmlinux 0x315c65fd zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x318cadb1 reciprocal_value +EXPORT_SYMBOL vmlinux 0x3191f109 __krealloc +EXPORT_SYMBOL vmlinux 0x319fc2ca __locks_copy_lock +EXPORT_SYMBOL vmlinux 0x31ab1308 blk_mq_alloc_reserved_request +EXPORT_SYMBOL vmlinux 0x31b31f5c csum_partial_copy_nocheck +EXPORT_SYMBOL vmlinux 0x31dc0d45 consume_skb +EXPORT_SYMBOL vmlinux 0x31f0bb78 __kmap_atomic_idx +EXPORT_SYMBOL vmlinux 0x31f61487 sock_no_poll +EXPORT_SYMBOL vmlinux 0x31fcadde fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x3206fc5a devm_gpio_free +EXPORT_SYMBOL vmlinux 0x3217ca47 ioctl_by_bdev +EXPORT_SYMBOL vmlinux 0x32213efd devfreq_resume_device +EXPORT_SYMBOL vmlinux 0x3225f0d4 phy_disconnect +EXPORT_SYMBOL vmlinux 0x322b60be nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0x322f48d4 abx500_dump_all_banks +EXPORT_SYMBOL vmlinux 0x3239a038 simple_rename +EXPORT_SYMBOL vmlinux 0x323ee0d3 nand_lock +EXPORT_SYMBOL vmlinux 0x324178ec dma_mmap_from_coherent +EXPORT_SYMBOL vmlinux 0x32712d0b input_event +EXPORT_SYMBOL vmlinux 0x327bf883 of_can_translate_address +EXPORT_SYMBOL vmlinux 0x32899e4d inode_dio_done +EXPORT_SYMBOL vmlinux 0x328a05f1 strncpy +EXPORT_SYMBOL vmlinux 0x32b7ccfe get_mem_type +EXPORT_SYMBOL vmlinux 0x32d7964e inet_release +EXPORT_SYMBOL vmlinux 0x32e28ab2 pm860x_page_reg_read +EXPORT_SYMBOL vmlinux 0x33026a48 inode_init_once +EXPORT_SYMBOL vmlinux 0x332d8443 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x3330a47d gen_pool_free +EXPORT_SYMBOL vmlinux 0x334f085a gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x336dee1c deactivate_locked_super +EXPORT_SYMBOL vmlinux 0x337bc416 scsi_host_put +EXPORT_SYMBOL vmlinux 0x337cce46 put_cmsg +EXPORT_SYMBOL vmlinux 0x33855011 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0x338be553 snd_pcm_debug_name +EXPORT_SYMBOL vmlinux 0x33ba5cd4 param_ops_bool +EXPORT_SYMBOL vmlinux 0x33c7435c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x33d7ca1e inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0x33dbfd93 tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x33df6b90 udp6_csum_init +EXPORT_SYMBOL vmlinux 0x33e0fd56 pipe_unlock +EXPORT_SYMBOL vmlinux 0x33e7922b devfreq_interval_update +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x34123e4f skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0x34148f50 tc_classify +EXPORT_SYMBOL vmlinux 0x34184afe current_kernel_time +EXPORT_SYMBOL vmlinux 0x341dbfa3 __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x3420c108 __lock_buffer +EXPORT_SYMBOL vmlinux 0x3426cbd2 ps2_command +EXPORT_SYMBOL vmlinux 0x342b4c1b kmem_cache_free +EXPORT_SYMBOL vmlinux 0x344931c8 textsearch_register +EXPORT_SYMBOL vmlinux 0x344b7739 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x346d91ff __register_binfmt +EXPORT_SYMBOL vmlinux 0x347013de nla_validate +EXPORT_SYMBOL vmlinux 0x347eb9bd param_set_bool +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34db57e9 dev_activate +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34f40bcd backlight_force_update +EXPORT_SYMBOL vmlinux 0x3507a132 _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x353106bc cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0x35332ec6 scsi_allocate_command +EXPORT_SYMBOL vmlinux 0x3537d607 tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x353e3fa5 __get_user_4 +EXPORT_SYMBOL vmlinux 0x35408310 elv_abort_queue +EXPORT_SYMBOL vmlinux 0x358e4eb0 splice_from_pipe_end +EXPORT_SYMBOL vmlinux 0x359360be scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x35b88dc1 rtnl_create_link +EXPORT_SYMBOL vmlinux 0x35e77750 bio_integrity_clone +EXPORT_SYMBOL vmlinux 0x35f5cb62 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0x360b1afe probe_irq_mask +EXPORT_SYMBOL vmlinux 0x3612c10f tmio_core_mmc_enable +EXPORT_SYMBOL vmlinux 0x3653017d scsi_get_command +EXPORT_SYMBOL vmlinux 0x3655907d security_file_permission +EXPORT_SYMBOL vmlinux 0x3659e21b path_put +EXPORT_SYMBOL vmlinux 0x367a33a7 jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x368382e2 of_get_named_gpiod_flags +EXPORT_SYMBOL vmlinux 0x369b51bf blk_mq_free_single_hw_queue +EXPORT_SYMBOL vmlinux 0x36a71469 audit_log_start +EXPORT_SYMBOL vmlinux 0x36bd681b groups_alloc +EXPORT_SYMBOL vmlinux 0x36d02964 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0x36d16e07 mmc_can_trim +EXPORT_SYMBOL vmlinux 0x36d7b11a of_find_matching_node_and_match +EXPORT_SYMBOL vmlinux 0x36dc888b fb_class +EXPORT_SYMBOL vmlinux 0x36e360e3 __hw_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x36f3fdf3 nobh_write_begin +EXPORT_SYMBOL vmlinux 0x370230b1 skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x37149c82 phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x372900a1 free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x37366477 vc_resize +EXPORT_SYMBOL vmlinux 0x3739ac26 skb_unlink +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x374c414a vsc824x_add_skew +EXPORT_SYMBOL vmlinux 0x3753a5b7 bio_integrity_endio +EXPORT_SYMBOL vmlinux 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37d01390 md_register_thread +EXPORT_SYMBOL vmlinux 0x37e74642 get_jiffies_64 +EXPORT_SYMBOL vmlinux 0x37f614b7 __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x37f6bdc0 scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0x37faf488 netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0x380cb9ca vfs_readlink +EXPORT_SYMBOL vmlinux 0x381144a9 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0x3814a6ab scsi_host_set_state +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x381ccc13 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x38228e8b xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0x3832e3a0 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0x3857d9d1 __break_lease +EXPORT_SYMBOL vmlinux 0x385b3404 input_open_device +EXPORT_SYMBOL vmlinux 0x38668243 snd_ctl_replace +EXPORT_SYMBOL vmlinux 0x386b2fe0 dev_err +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388f9128 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x389d5196 dst_alloc +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38c97d50 idr_get_next +EXPORT_SYMBOL vmlinux 0x390a3cc8 dcache_readdir +EXPORT_SYMBOL vmlinux 0x3924dd56 try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x392e9f7a sock_i_ino +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL vmlinux 0x3985b61b snd_pcm_new_internal +EXPORT_SYMBOL vmlinux 0x39a36a36 page_follow_link_light +EXPORT_SYMBOL vmlinux 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL vmlinux 0x39c08d2c snd_dma_free_pages +EXPORT_SYMBOL vmlinux 0x39d9ae72 fget_light +EXPORT_SYMBOL vmlinux 0x39ddf43d init_net +EXPORT_SYMBOL vmlinux 0x3a0aa062 tty_unlock_pair +EXPORT_SYMBOL vmlinux 0x3a398a27 devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x3a7c6294 mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x3a994629 snd_pcm_hw_constraint_step +EXPORT_SYMBOL vmlinux 0x3a9b6fb9 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x3a9bb3b2 bio_integrity_enabled +EXPORT_SYMBOL vmlinux 0x3ad1996b inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x3b019845 kernel_recvmsg +EXPORT_SYMBOL vmlinux 0x3b2ba857 snd_jack_new +EXPORT_SYMBOL vmlinux 0x3b606cd5 ip_check_defrag +EXPORT_SYMBOL vmlinux 0x3b77c3df simple_dir_operations +EXPORT_SYMBOL vmlinux 0x3b91f3af snd_free_pages +EXPORT_SYMBOL vmlinux 0x3b9b7333 xfrm_register_km +EXPORT_SYMBOL vmlinux 0x3babee49 blk_queue_find_tag +EXPORT_SYMBOL vmlinux 0x3bb0282d devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0x3bbae5ac of_phy_attach +EXPORT_SYMBOL vmlinux 0x3bbf46ea vga_base +EXPORT_SYMBOL vmlinux 0x3bceaeba dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0x3bd1b1f6 msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x3bef03b9 flow_cache_lookup +EXPORT_SYMBOL vmlinux 0x3bef407a bio_integrity_set_tag +EXPORT_SYMBOL vmlinux 0x3bf93d01 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0x3c1f60ca blk_sync_queue +EXPORT_SYMBOL vmlinux 0x3c27c9ab do_splice_direct +EXPORT_SYMBOL vmlinux 0x3c2e4f9a audit_log_task_info +EXPORT_SYMBOL vmlinux 0x3c30d7e1 mmc_wait_for_app_cmd +EXPORT_SYMBOL vmlinux 0x3c36efe6 net_dma_find_channel +EXPORT_SYMBOL vmlinux 0x3c384b7f scsi_scan_target +EXPORT_SYMBOL vmlinux 0x3c41b5d3 __neigh_create +EXPORT_SYMBOL vmlinux 0x3c5cea52 in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x3c6063df ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c9d1211 string_get_size +EXPORT_SYMBOL vmlinux 0x3c9dcf72 ip6_xmit +EXPORT_SYMBOL vmlinux 0x3ca4370e block_truncate_page +EXPORT_SYMBOL vmlinux 0x3cb3931b sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x3ccff09a __blk_end_request_all +EXPORT_SYMBOL vmlinux 0x3cdadefd pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3cee1cb8 inet_select_addr +EXPORT_SYMBOL vmlinux 0x3cf93403 blk_bio_map_sg +EXPORT_SYMBOL vmlinux 0x3d044d9b page_put_link +EXPORT_SYMBOL vmlinux 0x3d061e0f tcp_proc_unregister +EXPORT_SYMBOL vmlinux 0x3d0a7b39 d_rehash +EXPORT_SYMBOL vmlinux 0x3d34e551 remove_proc_entry +EXPORT_SYMBOL vmlinux 0x3d3c540f elf_hwcap +EXPORT_SYMBOL vmlinux 0x3d41904f of_get_next_child +EXPORT_SYMBOL vmlinux 0x3d423163 snd_ctl_rename_id +EXPORT_SYMBOL vmlinux 0x3d5e1e6f grab_cache_page_nowait +EXPORT_SYMBOL vmlinux 0x3d6661f7 n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x3d9c8a15 md_flush_request +EXPORT_SYMBOL vmlinux 0x3da4f35e inet6_getname +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dd8f186 __arm_ioremap +EXPORT_SYMBOL vmlinux 0x3de885bb uart_add_one_port +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e34b5a3 htc_egpio_get_wakeup_irq +EXPORT_SYMBOL vmlinux 0x3e5bac95 snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL vmlinux 0x3e836728 get_super_thawed +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3e9fedc5 of_platform_bus_probe +EXPORT_SYMBOL vmlinux 0x3ea13c04 netdev_update_features +EXPORT_SYMBOL vmlinux 0x3eb5af3b dev_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x3ed63055 zlib_inflateReset +EXPORT_SYMBOL vmlinux 0x3ed7de67 inet6_protos +EXPORT_SYMBOL vmlinux 0x3edee1e6 read_dev_sector +EXPORT_SYMBOL vmlinux 0x3f06874d tcf_em_register +EXPORT_SYMBOL vmlinux 0x3f26e413 sock_wake_async +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f5b67d5 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x3f6e1716 dma_supported +EXPORT_SYMBOL vmlinux 0x3f98baf9 devm_request_and_ioremap +EXPORT_SYMBOL vmlinux 0x3fab3ca9 register_sysctl_table +EXPORT_SYMBOL vmlinux 0x3fd55724 of_n_size_cells +EXPORT_SYMBOL vmlinux 0x3fd9d0be twl6040_reg_write +EXPORT_SYMBOL vmlinux 0x3fe46f6e km_state_notify +EXPORT_SYMBOL vmlinux 0x3fec048f sg_next +EXPORT_SYMBOL vmlinux 0x3ff62317 local_bh_disable +EXPORT_SYMBOL vmlinux 0x4009fb8f nf_nat_decode_session_hook +EXPORT_SYMBOL vmlinux 0x40150c6a replace_mount_options +EXPORT_SYMBOL vmlinux 0x401c1cce seq_open +EXPORT_SYMBOL vmlinux 0x40216f8b max8925_bulk_read +EXPORT_SYMBOL vmlinux 0x402b8281 __request_module +EXPORT_SYMBOL vmlinux 0x404c18ae __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x4059792f print_hex_dump +EXPORT_SYMBOL vmlinux 0x405c1144 get_seconds +EXPORT_SYMBOL vmlinux 0x405df370 tty_unregister_device +EXPORT_SYMBOL vmlinux 0x407136b1 __put_user_8 +EXPORT_SYMBOL vmlinux 0x407e866c key_task_permission +EXPORT_SYMBOL vmlinux 0x4081c04f security_path_mknod +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409873e3 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x40a27c37 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x40a2d1dd dm_table_get_size +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40acabbc lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x40b5ba4c dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x40bffe97 registered_fb +EXPORT_SYMBOL vmlinux 0x40c01859 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0x40c2e097 arp_create +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40ce485b mempool_resize +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40dafdde invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0x40ed524a _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0x40f07981 __ashldi3 +EXPORT_SYMBOL vmlinux 0x40f2b10c ipmi_alloc_smi_msg +EXPORT_SYMBOL vmlinux 0x40f2c738 sock_no_listen +EXPORT_SYMBOL vmlinux 0x41040ad1 kmap_high +EXPORT_SYMBOL vmlinux 0x41111b40 generic_pipe_buf_steal +EXPORT_SYMBOL vmlinux 0x4116c006 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0x41223561 mmc_flush_cache +EXPORT_SYMBOL vmlinux 0x41274ec7 snd_pcm_lib_writev +EXPORT_SYMBOL vmlinux 0x4144252d i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x415b8841 mount_pseudo +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x41b00d7d jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x41ba9e42 napi_get_frags +EXPORT_SYMBOL vmlinux 0x41d88a23 pm860x_reg_read +EXPORT_SYMBOL vmlinux 0x41e1c6f0 end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0x41e71751 netdev_lower_dev_get_private_rcu +EXPORT_SYMBOL vmlinux 0x420e6055 __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0x4211c3c1 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x423b776a ipmi_create_user +EXPORT_SYMBOL vmlinux 0x4243baa8 xfrm6_rcv +EXPORT_SYMBOL vmlinux 0x42582fca i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0x426bdae2 phy_find_first +EXPORT_SYMBOL vmlinux 0x4290ea6a ilookup +EXPORT_SYMBOL vmlinux 0x4295eb63 __vlan_find_dev_deep +EXPORT_SYMBOL vmlinux 0x42977ad4 __hw_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x4298b775 v7_flush_kern_cache_all +EXPORT_SYMBOL vmlinux 0x42a1b208 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x42f1a282 __bio_clone +EXPORT_SYMBOL vmlinux 0x42fe34af i2c_clients_command +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x433da232 genphy_config_aneg +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x43632d7d of_find_property +EXPORT_SYMBOL vmlinux 0x436ee1d7 input_free_device +EXPORT_SYMBOL vmlinux 0x43790681 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x438d4723 netif_skb_dev_features +EXPORT_SYMBOL vmlinux 0x43929070 blk_end_request_all +EXPORT_SYMBOL vmlinux 0x43a1dbb3 pskb_expand_head +EXPORT_SYMBOL vmlinux 0x43be010a lookup_bdev +EXPORT_SYMBOL vmlinux 0x43d8fd10 simple_transaction_read +EXPORT_SYMBOL vmlinux 0x43e53d6c tcf_hash_create +EXPORT_SYMBOL vmlinux 0x43f23311 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x43fa0195 twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0x440a78d6 sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0x4411c503 prandom_seed +EXPORT_SYMBOL vmlinux 0x442495c9 tmio_core_mmc_resume +EXPORT_SYMBOL vmlinux 0x442ea88b scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0x44366cfc simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0x44438b96 hex2bin +EXPORT_SYMBOL vmlinux 0x44643b93 __aeabi_lmul +EXPORT_SYMBOL vmlinux 0x447485ee neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x44962e2b unregister_mtd_chip_driver +EXPORT_SYMBOL vmlinux 0x44a6fd0b filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0x44a81658 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0x44c29402 page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x44c8a80a amba_request_regions +EXPORT_SYMBOL vmlinux 0x44c9bc45 filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0x44da5d0f __csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0x44dd3d8d completion_done +EXPORT_SYMBOL vmlinux 0x44df6583 tcp_release_cb +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44f12171 mmc_fixup_device +EXPORT_SYMBOL vmlinux 0x44f5e8b5 of_allnodes +EXPORT_SYMBOL vmlinux 0x45075e2e phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0x451832c9 cookie_check_timestamp +EXPORT_SYMBOL vmlinux 0x4522854a sock_kmalloc +EXPORT_SYMBOL vmlinux 0x455293f6 down_read +EXPORT_SYMBOL vmlinux 0x456bede2 do_truncate +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x458e5e69 inet_frag_find +EXPORT_SYMBOL vmlinux 0x45a6be13 cpufreq_sysfs_remove_file +EXPORT_SYMBOL vmlinux 0x45b03bb2 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0x45b1fad1 padata_start +EXPORT_SYMBOL vmlinux 0x45bda0d5 system_serial_low +EXPORT_SYMBOL vmlinux 0x45d1b205 blk_queue_merge_bvec +EXPORT_SYMBOL vmlinux 0x45d27314 __pagevec_lru_add +EXPORT_SYMBOL vmlinux 0x45e5116e framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x45e732c2 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x45eac0dd gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0x4606826d skb_copy_datagram_iovec +EXPORT_SYMBOL vmlinux 0x460f2ea2 xfrm_state_walk +EXPORT_SYMBOL vmlinux 0x4612f8f5 ps2_end_command +EXPORT_SYMBOL vmlinux 0x461a1b2b blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0x46228954 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0x462a2e75 match_strlcpy +EXPORT_SYMBOL vmlinux 0x465757c3 cpu_present_mask +EXPORT_SYMBOL vmlinux 0x465cab34 secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0x46608fa0 getnstimeofday +EXPORT_SYMBOL vmlinux 0x466a259e generic_file_open +EXPORT_SYMBOL vmlinux 0x467266a4 __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x467bb2f3 kset_unregister +EXPORT_SYMBOL vmlinux 0x46adc08f remap_pfn_range +EXPORT_SYMBOL vmlinux 0x46b6b214 bio_endio +EXPORT_SYMBOL vmlinux 0x46bcaef7 ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x46c11849 d_obtain_alias +EXPORT_SYMBOL vmlinux 0x46d3b28c __div0 +EXPORT_SYMBOL vmlinux 0x46fa6ad6 neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0x46feb099 dm_read_arg +EXPORT_SYMBOL vmlinux 0x470c5fdb phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0x47416e14 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x475691ce jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x479b873c of_mdiobus_register +EXPORT_SYMBOL vmlinux 0x479bc9e0 __scm_send +EXPORT_SYMBOL vmlinux 0x47aca2a0 blkdev_put +EXPORT_SYMBOL vmlinux 0x47b0e10b arm_coherent_dma_ops +EXPORT_SYMBOL vmlinux 0x47b3f862 radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x47b6a10f ftrace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0x47bcf84c param_set_ulong +EXPORT_SYMBOL vmlinux 0x47c199e3 blk_run_queue +EXPORT_SYMBOL vmlinux 0x47c1bff9 bdi_setup_and_register +EXPORT_SYMBOL vmlinux 0x47c5b64f blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0x47c8baf4 param_ops_uint +EXPORT_SYMBOL vmlinux 0x47cc2b2f tcp_enter_memory_pressure +EXPORT_SYMBOL vmlinux 0x47dcb085 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0x47e70229 v7_flush_user_cache_range +EXPORT_SYMBOL vmlinux 0x47f757de elf_platform +EXPORT_SYMBOL vmlinux 0x48034724 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x480a490e __sb_end_write +EXPORT_SYMBOL vmlinux 0x481ae2a7 ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0x481ce6ce cpu_active_mask +EXPORT_SYMBOL vmlinux 0x482a2a49 param_set_charp +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x486ad70f nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x48725fda inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x4881d505 idr_for_each +EXPORT_SYMBOL vmlinux 0x488882e7 downgrade_write +EXPORT_SYMBOL vmlinux 0x48a5b067 __machine_arch_type +EXPORT_SYMBOL vmlinux 0x48c6db53 of_get_child_by_name +EXPORT_SYMBOL vmlinux 0x48cdc9dc netif_rx +EXPORT_SYMBOL vmlinux 0x48f6a0ea padata_free +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x4906b194 mdio_bus_type +EXPORT_SYMBOL vmlinux 0x490b7b4b register_cdrom +EXPORT_SYMBOL vmlinux 0x49197091 dm_put_device +EXPORT_SYMBOL vmlinux 0x492cc548 ip_fragment +EXPORT_SYMBOL vmlinux 0x4936de7a sk_stream_write_space +EXPORT_SYMBOL vmlinux 0x49427a5f sock_get_timestampns +EXPORT_SYMBOL vmlinux 0x49454db1 wait_for_key_construction +EXPORT_SYMBOL vmlinux 0x494cdec9 genlmsg_put +EXPORT_SYMBOL vmlinux 0x495c96f8 posix_acl_init +EXPORT_SYMBOL vmlinux 0x49603fb8 security_sb_copy_data +EXPORT_SYMBOL vmlinux 0x496c18a1 locks_free_lock +EXPORT_SYMBOL vmlinux 0x496c6921 udp_prot +EXPORT_SYMBOL vmlinux 0x49895b2f snd_pcm_release_substream +EXPORT_SYMBOL vmlinux 0x49995ebe tcp_gro_complete +EXPORT_SYMBOL vmlinux 0x499cb58c prepare_to_wait +EXPORT_SYMBOL vmlinux 0x49b07aec tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x49d48a9b blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x49ebacbd _clear_bit +EXPORT_SYMBOL vmlinux 0x49f9ebfe inet_del_protocol +EXPORT_SYMBOL vmlinux 0x4a358252 __bitmap_subset +EXPORT_SYMBOL vmlinux 0x4a3b4d6d i2c_release_client +EXPORT_SYMBOL vmlinux 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL vmlinux 0x4a41b158 security_path_unlink +EXPORT_SYMBOL vmlinux 0x4a527150 bio_unmap_user +EXPORT_SYMBOL vmlinux 0x4a57b339 wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x4a6430a4 snd_ctl_free_one +EXPORT_SYMBOL vmlinux 0x4a7fb243 percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x4aa046cf sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0x4aa6521e qdisc_watchdog_schedule_ns +EXPORT_SYMBOL vmlinux 0x4ab24776 ppp_input_error +EXPORT_SYMBOL vmlinux 0x4acd93d3 release_resource +EXPORT_SYMBOL vmlinux 0x4ad27901 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0x4ad6a80b serio_reconnect +EXPORT_SYMBOL vmlinux 0x4ae4c8df simple_rmdir +EXPORT_SYMBOL vmlinux 0x4aec9bf3 unmap_underlying_metadata +EXPORT_SYMBOL vmlinux 0x4af15f0d set_bdi_congested +EXPORT_SYMBOL vmlinux 0x4afe9a77 scsi_partsize +EXPORT_SYMBOL vmlinux 0x4b015768 snd_iprintf +EXPORT_SYMBOL vmlinux 0x4b01ead8 sk_receive_skb +EXPORT_SYMBOL vmlinux 0x4b0a0955 md_integrity_register +EXPORT_SYMBOL vmlinux 0x4b0e16b0 wireless_send_event +EXPORT_SYMBOL vmlinux 0x4b1ec3e2 kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x4b26d717 devm_clk_get +EXPORT_SYMBOL vmlinux 0x4b2e20c0 dump_skip +EXPORT_SYMBOL vmlinux 0x4b34fbf5 block_all_signals +EXPORT_SYMBOL vmlinux 0x4b35ed77 dev_addr_del +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b89b126 sk_stop_timer +EXPORT_SYMBOL vmlinux 0x4ba74f89 single_release +EXPORT_SYMBOL vmlinux 0x4bd8d960 blk_queue_dma_pad +EXPORT_SYMBOL vmlinux 0x4be3004f inet_dgram_ops +EXPORT_SYMBOL vmlinux 0x4be7fb63 up +EXPORT_SYMBOL vmlinux 0x4be85a03 memweight +EXPORT_SYMBOL vmlinux 0x4c0ac2b9 dev_mc_flush +EXPORT_SYMBOL vmlinux 0x4c1182cb bitmap_scnprintf +EXPORT_SYMBOL vmlinux 0x4c233a44 _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0x4c2ae700 strnstr +EXPORT_SYMBOL vmlinux 0x4c4c344d cpu_tlb +EXPORT_SYMBOL vmlinux 0x4c5fc58c _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0x4c86184b remove_wait_queue +EXPORT_SYMBOL vmlinux 0x4c903df1 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x4c971bec ipmi_smi_msg_received +EXPORT_SYMBOL vmlinux 0x4cbbd171 __bitmap_weight +EXPORT_SYMBOL vmlinux 0x4cdb3178 ns_to_timeval +EXPORT_SYMBOL vmlinux 0x4cfce895 netpoll_setup +EXPORT_SYMBOL vmlinux 0x4d0d163d copy_page +EXPORT_SYMBOL vmlinux 0x4d1170e9 mmc_register_driver +EXPORT_SYMBOL vmlinux 0x4d1ada89 elv_dispatch_sort +EXPORT_SYMBOL vmlinux 0x4d290eee splice_from_pipe_begin +EXPORT_SYMBOL vmlinux 0x4d38f308 mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0x4d3c153f sigprocmask +EXPORT_SYMBOL vmlinux 0x4d3c7a67 locks_copy_lock +EXPORT_SYMBOL vmlinux 0x4d45d89e udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x4d5d7230 linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x4d974b9c register_sysrq_key +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4d9b6d35 snd_pcm_format_size +EXPORT_SYMBOL vmlinux 0x4dd83a3f simple_readpage +EXPORT_SYMBOL vmlinux 0x4de34a07 cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x4dec6038 memscan +EXPORT_SYMBOL vmlinux 0x4df119fa __bitmap_parse +EXPORT_SYMBOL vmlinux 0x4df88219 eth_validate_addr +EXPORT_SYMBOL vmlinux 0x4e3143e8 request_firmware_nowait +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e4c5833 swiotlb_unmap_sg_attrs +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6a7aeb lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e701f8c read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x4e751348 i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0x4e830a3e strnicmp +EXPORT_SYMBOL vmlinux 0x4eb8e7ca tty_port_close_end +EXPORT_SYMBOL vmlinux 0x4eba2052 padata_remove_cpu +EXPORT_SYMBOL vmlinux 0x4ee3b1d9 call_netdevice_notifiers_info +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f248523 of_find_node_by_name +EXPORT_SYMBOL vmlinux 0x4f2abb4b dev_deactivate +EXPORT_SYMBOL vmlinux 0x4f2d6267 ll_rw_block +EXPORT_SYMBOL vmlinux 0x4f391d0e nla_parse +EXPORT_SYMBOL vmlinux 0x4f4091a6 jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0x4f476e96 init_cdrom_command +EXPORT_SYMBOL vmlinux 0x4f62b250 ata_dev_printk +EXPORT_SYMBOL vmlinux 0x4f680189 snd_card_unref +EXPORT_SYMBOL vmlinux 0x4f68e5c9 do_gettimeofday +EXPORT_SYMBOL vmlinux 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL vmlinux 0x4f840e3c vc_cons +EXPORT_SYMBOL vmlinux 0x4f8768a1 amba_release_regions +EXPORT_SYMBOL vmlinux 0x4f95ca5c vfs_link +EXPORT_SYMBOL vmlinux 0x4fba1c5f mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0x4fd42489 simple_write_end +EXPORT_SYMBOL vmlinux 0x4fdd74b1 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0x4fe71fb5 tcp_child_process +EXPORT_SYMBOL vmlinux 0x4fe8a349 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x5011e502 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0x502b8fd7 generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x50346f62 inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0x5046fa04 vfs_mknod +EXPORT_SYMBOL vmlinux 0x504d72fa sync_inode_metadata +EXPORT_SYMBOL vmlinux 0x505cf307 i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0x507eb0f7 truncate_setsize +EXPORT_SYMBOL vmlinux 0x507f45e9 ___pskb_trim +EXPORT_SYMBOL vmlinux 0x508bcd9f __vexpress_config_func_get +EXPORT_SYMBOL vmlinux 0x509817cf vprintk_emit +EXPORT_SYMBOL vmlinux 0x50b092aa generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x51079d2e pps_lookup_dev +EXPORT_SYMBOL vmlinux 0x511746c1 dump_fpu +EXPORT_SYMBOL vmlinux 0x5118c382 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0x51242695 d_alloc_pseudo +EXPORT_SYMBOL vmlinux 0x514e5ab6 mem_cgroup_subsys +EXPORT_SYMBOL vmlinux 0x51565bc2 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0x516a8fa8 ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x5175da3a mutex_trylock +EXPORT_SYMBOL vmlinux 0x517615d9 generic_setxattr +EXPORT_SYMBOL vmlinux 0x5183da4a default_llseek +EXPORT_SYMBOL vmlinux 0x51846cb9 __pskb_copy +EXPORT_SYMBOL vmlinux 0x51908eb8 __raw_writesl +EXPORT_SYMBOL vmlinux 0x51ada5df tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0x51c2fa28 genphy_suspend +EXPORT_SYMBOL vmlinux 0x51d559d1 _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x51dce73b xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x51e77c97 pfn_valid +EXPORT_SYMBOL vmlinux 0x51ea84b7 put_disk +EXPORT_SYMBOL vmlinux 0x51ef33b8 kstrndup +EXPORT_SYMBOL vmlinux 0x52026cdf security_sb_parse_opts_str +EXPORT_SYMBOL vmlinux 0x5202b628 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0x52033220 cfb_copyarea +EXPORT_SYMBOL vmlinux 0x52105ae1 in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x521b36b5 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0x52428cc8 parent_mem_cgroup +EXPORT_SYMBOL vmlinux 0x5249caf4 blk_run_queue_async +EXPORT_SYMBOL vmlinux 0x524f6f51 ipmi_get_my_address +EXPORT_SYMBOL vmlinux 0x526b6555 snd_power_wait +EXPORT_SYMBOL vmlinux 0x527f8123 __i2c_transfer +EXPORT_SYMBOL vmlinux 0x528c709d simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x52a9aef8 tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0x52ad52e1 neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0x52b3c18b sb_min_blocksize +EXPORT_SYMBOL vmlinux 0x52c11572 tty_pair_get_pty +EXPORT_SYMBOL vmlinux 0x52ca74df km_policy_expired +EXPORT_SYMBOL vmlinux 0x52e377ed blk_recount_segments +EXPORT_SYMBOL vmlinux 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL vmlinux 0x52e4731e skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0x52e49642 pm860x_page_bulk_write +EXPORT_SYMBOL vmlinux 0x530ac40c sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x531e1585 netlink_kernel_release +EXPORT_SYMBOL vmlinux 0x531fc127 swiotlb_map_sg_attrs +EXPORT_SYMBOL vmlinux 0x53326531 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x5344b2ac __breadahead +EXPORT_SYMBOL vmlinux 0x53608dae qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0x538e888e inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0x53916751 drop_nlink +EXPORT_SYMBOL vmlinux 0x53a70bb4 key_alloc +EXPORT_SYMBOL vmlinux 0x53b16f4c netif_napi_add +EXPORT_SYMBOL vmlinux 0x53bb01e2 vm_stat +EXPORT_SYMBOL vmlinux 0x53d4be90 unlock_page +EXPORT_SYMBOL vmlinux 0x54018804 phy_start_aneg +EXPORT_SYMBOL vmlinux 0x5409775b free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x54166091 __module_get +EXPORT_SYMBOL vmlinux 0x5416e106 tty_pair_get_tty +EXPORT_SYMBOL vmlinux 0x541ba0fb qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x543d4743 snd_ctl_register_ioctl +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x54459606 dst_destroy +EXPORT_SYMBOL vmlinux 0x544633e5 snd_pcm_kernel_ioctl +EXPORT_SYMBOL vmlinux 0x5450392a i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0x545f3327 __blk_end_request_cur +EXPORT_SYMBOL vmlinux 0x547077ec __wake_up_bit +EXPORT_SYMBOL vmlinux 0x5476e7d2 sock_wfree +EXPORT_SYMBOL vmlinux 0x548ff2d0 __page_symlink +EXPORT_SYMBOL vmlinux 0x5497398c tty_register_ldisc +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54c49e76 blk_queue_io_min +EXPORT_SYMBOL vmlinux 0x54c8491e qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x54caeb48 invalidate_bdev +EXPORT_SYMBOL vmlinux 0x54cbf70c sock_recvmsg +EXPORT_SYMBOL vmlinux 0x54e3cc3b param_get_int +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54ea60b8 blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0x54fd6aca xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0x551b60c4 snd_pcm_lib_readv +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x552e0ef4 dmam_free_coherent +EXPORT_SYMBOL vmlinux 0x553df8a5 skb_append +EXPORT_SYMBOL vmlinux 0x5541ea93 on_each_cpu +EXPORT_SYMBOL vmlinux 0x5563cf44 swiotlb_free_coherent +EXPORT_SYMBOL vmlinux 0x5567c227 kernel_cpustat +EXPORT_SYMBOL vmlinux 0x556c2740 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x557743d0 read_cache_pages +EXPORT_SYMBOL vmlinux 0x5594be03 bitmap_remap +EXPORT_SYMBOL vmlinux 0x55e167d5 inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0x55f3382e dev_remove_offload +EXPORT_SYMBOL vmlinux 0x55fe1e91 swiotlb_dma_supported +EXPORT_SYMBOL vmlinux 0x560fb67e sock_no_mmap +EXPORT_SYMBOL vmlinux 0x5614b010 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x561737e5 netif_device_detach +EXPORT_SYMBOL vmlinux 0x5630788f cfb_imageblit +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x563d48bd nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x56416ca8 rtnl_notify +EXPORT_SYMBOL vmlinux 0x5642793a radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x565783af blk_peek_request +EXPORT_SYMBOL vmlinux 0x56950e15 dquot_commit +EXPORT_SYMBOL vmlinux 0x56b5f5e4 tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0x56b7262a nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0x56bf019c dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56caee1a phy_init_eee +EXPORT_SYMBOL vmlinux 0x56daf16c tty_kref_put +EXPORT_SYMBOL vmlinux 0x572e85d4 blk_lookup_devt +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x57896d77 free_netdev +EXPORT_SYMBOL vmlinux 0x579e3ea2 phy_print_status +EXPORT_SYMBOL vmlinux 0x57a31e57 nand_flash_ids +EXPORT_SYMBOL vmlinux 0x57b56b9c inet_frags_init +EXPORT_SYMBOL vmlinux 0x57c73ef2 send_sig +EXPORT_SYMBOL vmlinux 0x57f26b13 create_empty_buffers +EXPORT_SYMBOL vmlinux 0x57f6bfcc netdev_printk +EXPORT_SYMBOL vmlinux 0x58030626 filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x5809f606 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0x58100f22 ip6_expire_frag_queue +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x5854b0eb kill_pid +EXPORT_SYMBOL vmlinux 0x5857b7cd pgprot_kernel +EXPORT_SYMBOL vmlinux 0x585d3e4b __skb_dst_set_noref +EXPORT_SYMBOL vmlinux 0x587616f1 vfs_fstatat +EXPORT_SYMBOL vmlinux 0x588c130c vexpress_config_func_put +EXPORT_SYMBOL vmlinux 0x588e906c dmam_pool_create +EXPORT_SYMBOL vmlinux 0x589c4741 abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0x58b5be21 mapping_tagged +EXPORT_SYMBOL vmlinux 0x58d1070a of_get_address +EXPORT_SYMBOL vmlinux 0x59211327 scsi_adjust_queue_depth +EXPORT_SYMBOL vmlinux 0x59340e7f inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x594e1317 __modsi3 +EXPORT_SYMBOL vmlinux 0x598542b2 _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0x598cd828 udp_table +EXPORT_SYMBOL vmlinux 0x59954038 snd_pcm_set_sync +EXPORT_SYMBOL vmlinux 0x599756ab mmc_align_data_size +EXPORT_SYMBOL vmlinux 0x599d966d inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0x59c30554 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0x59c9dd95 uart_resume_port +EXPORT_SYMBOL vmlinux 0x59d29dab v7_flush_kern_dcache_area +EXPORT_SYMBOL vmlinux 0x59e35f57 mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0x59e5070d __do_div64 +EXPORT_SYMBOL vmlinux 0x5a1e4f96 xfrm_input +EXPORT_SYMBOL vmlinux 0x5a21158c dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0x5a38a1e0 vfs_getattr +EXPORT_SYMBOL vmlinux 0x5a4e05ce tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x5a5536c2 param_ops_invbool +EXPORT_SYMBOL vmlinux 0x5a96b406 dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0x5a9cc2bc genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0x5aa5d0b4 neigh_event_ns +EXPORT_SYMBOL vmlinux 0x5aaf179c follow_down +EXPORT_SYMBOL vmlinux 0x5ae5be44 lg_lock_init +EXPORT_SYMBOL vmlinux 0x5b10deca dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x5b1951e8 fasync_helper +EXPORT_SYMBOL vmlinux 0x5b19634d div_s64_rem +EXPORT_SYMBOL vmlinux 0x5b1bc38d inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0x5b2a3f0d mb_cache_shrink +EXPORT_SYMBOL vmlinux 0x5b72009f ida_simple_get +EXPORT_SYMBOL vmlinux 0x5b851e11 tty_vhangup +EXPORT_SYMBOL vmlinux 0x5b8b11f3 scsi_reset_provider +EXPORT_SYMBOL vmlinux 0x5b9448b3 inet_frag_kill +EXPORT_SYMBOL vmlinux 0x5bb08ee7 generic_listxattr +EXPORT_SYMBOL vmlinux 0x5be32f08 neigh_destroy +EXPORT_SYMBOL vmlinux 0x5c0cefb6 dev_change_carrier +EXPORT_SYMBOL vmlinux 0x5c1db162 do_map_probe +EXPORT_SYMBOL vmlinux 0x5c26977c alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x5c2f39e3 input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0x5c50f0a9 filemap_flush +EXPORT_SYMBOL vmlinux 0x5c5811e0 proc_create_data +EXPORT_SYMBOL vmlinux 0x5c9284a0 processor_id +EXPORT_SYMBOL vmlinux 0x5cb714d7 setattr_copy +EXPORT_SYMBOL vmlinux 0x5ccc0dcb find_get_pages_contig +EXPORT_SYMBOL vmlinux 0x5cd8f960 snd_pcm_suspend +EXPORT_SYMBOL vmlinux 0x5cdc3e61 jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0x5cdd2abc jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0x5ce0d3f8 snd_pcm_lib_ioctl +EXPORT_SYMBOL vmlinux 0x5ce45667 inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5d144a80 nand_scan_tail +EXPORT_SYMBOL vmlinux 0x5d2e692c page_readlink +EXPORT_SYMBOL vmlinux 0x5d41c87c param_ops_charp +EXPORT_SYMBOL vmlinux 0x5d550c4d scsi_sd_probe_domain +EXPORT_SYMBOL vmlinux 0x5d5b5a16 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x5d891a64 idr_destroy +EXPORT_SYMBOL vmlinux 0x5da210e1 kobject_init +EXPORT_SYMBOL vmlinux 0x5dc2d701 scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x5dc56498 bio_alloc_pages +EXPORT_SYMBOL vmlinux 0x5dcdfd5f i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0x5e161efd scsi_report_opcode +EXPORT_SYMBOL vmlinux 0x5e220bdc sg_miter_start +EXPORT_SYMBOL vmlinux 0x5e22eba7 kernel_getpeername +EXPORT_SYMBOL vmlinux 0x5e30e302 neigh_parms_release +EXPORT_SYMBOL vmlinux 0x5e635313 poll_initwait +EXPORT_SYMBOL vmlinux 0x5e722bf9 irq_to_desc +EXPORT_SYMBOL vmlinux 0x5e7ca237 generic_file_llseek +EXPORT_SYMBOL vmlinux 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL vmlinux 0x5e80f37c ipmi_unregister_for_cmd +EXPORT_SYMBOL vmlinux 0x5e83c899 flush_dcache_page +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5eb7705f input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0x5ebad400 kill_pgrp +EXPORT_SYMBOL vmlinux 0x5eca425f generic_write_end +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ee83b8d mmc_get_card +EXPORT_SYMBOL vmlinux 0x5efe9821 bdi_register_dev +EXPORT_SYMBOL vmlinux 0x5f005368 kstrtou8 +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f27323c _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x5f3c8f5c mmc_assume_removable +EXPORT_SYMBOL vmlinux 0x5f3d3382 user_path_at +EXPORT_SYMBOL vmlinux 0x5f4eee1b fb_get_mode +EXPORT_SYMBOL vmlinux 0x5f58f676 flex_array_get_ptr +EXPORT_SYMBOL vmlinux 0x5f754e5a memset +EXPORT_SYMBOL vmlinux 0x5f7dcc2a mfd_cell_enable +EXPORT_SYMBOL vmlinux 0x5f91f15e block_commit_write +EXPORT_SYMBOL vmlinux 0x5fcdcc05 ipmi_get_my_LUN +EXPORT_SYMBOL vmlinux 0x5fda0227 vfs_stat +EXPORT_SYMBOL vmlinux 0x5fe0b98d scsi_register_driver +EXPORT_SYMBOL vmlinux 0x5ff00f9f genphy_setup_forced +EXPORT_SYMBOL vmlinux 0x5ff8ec64 module_refcount +EXPORT_SYMBOL vmlinux 0x600416b2 set_security_override +EXPORT_SYMBOL vmlinux 0x600679fa d_validate +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x600fc3fa sk_dst_check +EXPORT_SYMBOL vmlinux 0x601b31fc f_setown +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x60226119 tcp_sendpage +EXPORT_SYMBOL vmlinux 0x602c96f0 copy_to_user_fromio +EXPORT_SYMBOL vmlinux 0x603345df dma_async_device_register +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x60384165 dm_kobject_release +EXPORT_SYMBOL vmlinux 0x604af35a bio_integrity_free +EXPORT_SYMBOL vmlinux 0x604f40e6 uart_update_timeout +EXPORT_SYMBOL vmlinux 0x60511380 scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0x606d0b09 secure_tcpv6_sequence_number +EXPORT_SYMBOL vmlinux 0x6098c8e8 arp_invalidate +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a0c12c freezing_slow_path +EXPORT_SYMBOL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL vmlinux 0x60a911c6 tty_set_operations +EXPORT_SYMBOL vmlinux 0x60ac615d snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL vmlinux 0x60b86f61 sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x60c0acf5 cont_write_begin +EXPORT_SYMBOL vmlinux 0x60cf6271 clocksource_unregister +EXPORT_SYMBOL vmlinux 0x60df1e3b posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x610bd0a1 tc6393xb_lcd_mode +EXPORT_SYMBOL vmlinux 0x612390ad netpoll_set_trap +EXPORT_SYMBOL vmlinux 0x61250cb3 bdget_disk +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x612f29e0 xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0x613b7732 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x61511298 start_tty +EXPORT_SYMBOL vmlinux 0x61538ad0 param_get_charp +EXPORT_SYMBOL vmlinux 0x615429a9 simple_write_begin +EXPORT_SYMBOL vmlinux 0x61798b49 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0x617a218d __cond_resched_lock +EXPORT_SYMBOL vmlinux 0x618aa183 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0x61927039 seq_read +EXPORT_SYMBOL vmlinux 0x6195f276 thaw_bdev +EXPORT_SYMBOL vmlinux 0x61a382e7 devm_gpiod_get +EXPORT_SYMBOL vmlinux 0x61ab3493 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61fa68b9 eth_mac_addr +EXPORT_SYMBOL vmlinux 0x620df97f free_mdio_bitbang +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x62226526 jbd2_journal_file_inode +EXPORT_SYMBOL vmlinux 0x6225637e md5_transform +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x624227d9 of_match_device +EXPORT_SYMBOL vmlinux 0x62454f5b blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x62468115 d_instantiate +EXPORT_SYMBOL vmlinux 0x6263e0c1 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x6269de14 tcf_hash_new_index +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x627ba1d4 tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x627f10e8 jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0x62822d05 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x62827bec security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x6286ebea skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x628dee9f pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0x62ad33f3 xfrm_register_type +EXPORT_SYMBOL vmlinux 0x62ad9a19 unmap_mapping_range +EXPORT_SYMBOL vmlinux 0x62b16f79 scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x62b221f6 _snd_ctl_add_slave +EXPORT_SYMBOL vmlinux 0x62b8fabb udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0x62cea2e5 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0x62fa5985 snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL vmlinux 0x63254f90 dentry_path_raw +EXPORT_SYMBOL vmlinux 0x632675d6 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0x632ab7a2 buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0x6356bd48 max8998_write_reg +EXPORT_SYMBOL vmlinux 0x6360de2b update_time +EXPORT_SYMBOL vmlinux 0x63623d83 devfreq_add_device +EXPORT_SYMBOL vmlinux 0x6370de82 simple_setattr +EXPORT_SYMBOL vmlinux 0x63a61bdc fail_migrate_page +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63fc232f strlen_user +EXPORT_SYMBOL vmlinux 0x64025205 qdisc_reset +EXPORT_SYMBOL vmlinux 0x6403e338 tcp_memory_pressure +EXPORT_SYMBOL vmlinux 0x6422df1a generic_file_remap_pages +EXPORT_SYMBOL vmlinux 0x64231212 __dquot_free_space +EXPORT_SYMBOL vmlinux 0x642e6e38 ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0x643652fe eth_header +EXPORT_SYMBOL vmlinux 0x645032a1 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0x645a2ed8 neigh_seq_next +EXPORT_SYMBOL vmlinux 0x6461ba4a dev_get_drvdata +EXPORT_SYMBOL vmlinux 0x646b82b3 nf_unregister_hooks +EXPORT_SYMBOL vmlinux 0x648186d3 i2c_add_adapter +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x64a2959b dev_uc_del +EXPORT_SYMBOL vmlinux 0x64d598b2 submit_bio_wait +EXPORT_SYMBOL vmlinux 0x64fac975 vlan_vid_add +EXPORT_SYMBOL vmlinux 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x6526e598 revalidate_disk +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x65466939 proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x6565d33f scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x656f6e0e lease_get_mtime +EXPORT_SYMBOL vmlinux 0x6585e310 alloc_pages_exact_nid +EXPORT_SYMBOL vmlinux 0x658c72d7 lock_sock_nested +EXPORT_SYMBOL vmlinux 0x658dc9ae bio_pair_release +EXPORT_SYMBOL vmlinux 0x65983839 dquot_quota_on +EXPORT_SYMBOL vmlinux 0x65a2f1c1 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0x65bd041f mddev_congested +EXPORT_SYMBOL vmlinux 0x65bfa9c7 register_mtd_chip_driver +EXPORT_SYMBOL vmlinux 0x65c172a7 ata_port_printk +EXPORT_SYMBOL vmlinux 0x65ce91bc cpufreq_global_kobject +EXPORT_SYMBOL vmlinux 0x65d55da9 unregister_filesystem +EXPORT_SYMBOL vmlinux 0x65d56263 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65ebe48a tcp_proc_register +EXPORT_SYMBOL vmlinux 0x65f3ad9a fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x65ff6718 mmc_gpio_request_cd +EXPORT_SYMBOL vmlinux 0x6605f97f flex_array_clear +EXPORT_SYMBOL vmlinux 0x660cab7a ip6_frag_match +EXPORT_SYMBOL vmlinux 0x6633abe7 scsi_prep_fn +EXPORT_SYMBOL vmlinux 0x6664fe56 kfree_skb_partial +EXPORT_SYMBOL vmlinux 0x66650e50 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x6671ad37 scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0x668da8d5 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x668ef866 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0x669452c1 __serio_register_port +EXPORT_SYMBOL vmlinux 0x66a56ef4 mmc_hw_reset +EXPORT_SYMBOL vmlinux 0x66a67dab flex_array_shrink +EXPORT_SYMBOL vmlinux 0x66abc2d3 __scm_destroy +EXPORT_SYMBOL vmlinux 0x66de6544 inet_frag_maybe_warn_overflow +EXPORT_SYMBOL vmlinux 0x66f1c7be blk_integrity_is_initialized +EXPORT_SYMBOL vmlinux 0x6724d414 writeback_in_progress +EXPORT_SYMBOL vmlinux 0x675b8f61 param_get_string +EXPORT_SYMBOL vmlinux 0x675c3ca0 xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x676bbc0f _set_bit +EXPORT_SYMBOL vmlinux 0x676e37ab generic_pipe_buf_map +EXPORT_SYMBOL vmlinux 0x67891ca4 netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67cb9784 ipmi_poll_interface +EXPORT_SYMBOL vmlinux 0x6800e512 mmc_erase +EXPORT_SYMBOL vmlinux 0x68179ce5 bitmap_end_sync +EXPORT_SYMBOL vmlinux 0x683ebeab scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x68431c87 __block_write_begin +EXPORT_SYMBOL vmlinux 0x68502e64 wake_up_process +EXPORT_SYMBOL vmlinux 0x686862a4 __remove_inode_hash +EXPORT_SYMBOL vmlinux 0x68788474 iov_iter_copy_from_user +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x68869bae panic_notifier_list +EXPORT_SYMBOL vmlinux 0x68921f45 security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL vmlinux 0x68b602ba dquot_resume +EXPORT_SYMBOL vmlinux 0x68b83ac6 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x68d6544a dev_mc_unsync +EXPORT_SYMBOL vmlinux 0x68da95aa __register_chrdev +EXPORT_SYMBOL vmlinux 0x68e05d57 getrawmonotonic +EXPORT_SYMBOL vmlinux 0x68edd03d account_page_redirty +EXPORT_SYMBOL vmlinux 0x68fb581a icst307_idx2s +EXPORT_SYMBOL vmlinux 0x6904a48d i2c_master_recv +EXPORT_SYMBOL vmlinux 0x6915eb38 down_interruptible +EXPORT_SYMBOL vmlinux 0x69356b46 locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x69485c95 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0x695701b7 xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x697616a4 inet_accept +EXPORT_SYMBOL vmlinux 0x697f8541 bio_integrity_get_tag +EXPORT_SYMBOL vmlinux 0x6999b564 abort_creds +EXPORT_SYMBOL vmlinux 0x69a2d86c amba_driver_register +EXPORT_SYMBOL vmlinux 0x69a358a6 iomem_resource +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69b10aad vmalloc_to_page +EXPORT_SYMBOL vmlinux 0x69c8a66e dquot_destroy +EXPORT_SYMBOL vmlinux 0x69cf284f netdev_master_upper_dev_link_private +EXPORT_SYMBOL vmlinux 0x69d38ed9 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x69e27c7a bitmap_copy_le +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a165f66 simple_fill_super +EXPORT_SYMBOL vmlinux 0x6a19c910 scsi_finish_command +EXPORT_SYMBOL vmlinux 0x6a35f034 security_task_getsecid +EXPORT_SYMBOL vmlinux 0x6a3f4119 mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0x6a533f83 pneigh_lookup +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a6d99b6 generic_show_options +EXPORT_SYMBOL vmlinux 0x6a76f3ac blk_iopoll_enable +EXPORT_SYMBOL vmlinux 0x6a7bdad6 dma_pool_create +EXPORT_SYMBOL vmlinux 0x6a9287a2 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0x6abfdb87 splice_from_pipe_next +EXPORT_SYMBOL vmlinux 0x6acee2c1 __nla_reserve +EXPORT_SYMBOL vmlinux 0x6acf63be sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x6ae0653e iterate_supers_type +EXPORT_SYMBOL vmlinux 0x6af395a0 mmc_start_bkops +EXPORT_SYMBOL vmlinux 0x6afb5902 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x6afc5b1f phy_connect_direct +EXPORT_SYMBOL vmlinux 0x6b0099d2 tty_port_tty_get +EXPORT_SYMBOL vmlinux 0x6b06fdce delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x6b0c8fcb unregister_md_personality +EXPORT_SYMBOL vmlinux 0x6b17e841 filemap_fault +EXPORT_SYMBOL vmlinux 0x6b1b67d3 __bdevname +EXPORT_SYMBOL vmlinux 0x6b2b0fcf ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x6b2d6304 clk_get +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b562e4a bdi_destroy +EXPORT_SYMBOL vmlinux 0x6b709d5f dev_emerg +EXPORT_SYMBOL vmlinux 0x6b902186 abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bdcfd99 qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x6beb2078 param_set_copystring +EXPORT_SYMBOL vmlinux 0x6bf0f36a inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x6bf569d5 mmc_request_done +EXPORT_SYMBOL vmlinux 0x6c059ec1 inet_shutdown +EXPORT_SYMBOL vmlinux 0x6c07d37c make_kprojid +EXPORT_SYMBOL vmlinux 0x6c09f71a jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0x6c1826c7 nand_scan +EXPORT_SYMBOL vmlinux 0x6c1ce5ce strcspn +EXPORT_SYMBOL vmlinux 0x6c256226 scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0x6c277495 dm_io +EXPORT_SYMBOL vmlinux 0x6c51a836 sysctl_tcp_notsent_lowat +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c6cbe48 misc_deregister +EXPORT_SYMBOL vmlinux 0x6c6cdd4d wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0x6c702af7 sysctl_udp_rmem_min +EXPORT_SYMBOL vmlinux 0x6c8ac098 file_ns_capable +EXPORT_SYMBOL vmlinux 0x6c9164fe splice_from_pipe_feed +EXPORT_SYMBOL vmlinux 0x6c97275f snd_timer_resolution +EXPORT_SYMBOL vmlinux 0x6ca5b0f8 __net_get_random_once +EXPORT_SYMBOL vmlinux 0x6caba03a handle_edge_irq +EXPORT_SYMBOL vmlinux 0x6cac7e62 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0x6cdb8a62 blk_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x6cdc5c6b nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6d0f1f89 dm_table_get_mode +EXPORT_SYMBOL vmlinux 0x6d222caf i2c_transfer +EXPORT_SYMBOL vmlinux 0x6d27ef64 __bitmap_empty +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d2dc8f4 __mmc_claim_host +EXPORT_SYMBOL vmlinux 0x6d332cee I_BDEV +EXPORT_SYMBOL vmlinux 0x6d340f64 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x6d3fae24 swiotlb_map_sg +EXPORT_SYMBOL vmlinux 0x6d662533 _find_first_bit_le +EXPORT_SYMBOL vmlinux 0x6d98a110 gen_new_estimator +EXPORT_SYMBOL vmlinux 0x6de93ca4 iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0x6def2db2 half_md4_transform +EXPORT_SYMBOL vmlinux 0x6e318193 ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x6e395bb8 input_close_device +EXPORT_SYMBOL vmlinux 0x6e5cbf5e scsi_remove_device +EXPORT_SYMBOL vmlinux 0x6e690bc9 shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x6e70d403 tcp_hashinfo +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6ebc5149 param_ops_long +EXPORT_SYMBOL vmlinux 0x6ec9ccdb _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0x6ecf927c snd_timer_close +EXPORT_SYMBOL vmlinux 0x6ee4fc62 mmc_can_discard +EXPORT_SYMBOL vmlinux 0x6ef3e806 save_mount_options +EXPORT_SYMBOL vmlinux 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL vmlinux 0x6f20960a full_name_hash +EXPORT_SYMBOL vmlinux 0x6f29c939 gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0x6f3163dd dcache_dir_open +EXPORT_SYMBOL vmlinux 0x6f6e1ca9 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0x6fb927b2 neigh_table_clear +EXPORT_SYMBOL vmlinux 0x6fcaf58f icmpv6_send +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fef659d arp_xmit +EXPORT_SYMBOL vmlinux 0x70063109 sock_no_connect +EXPORT_SYMBOL vmlinux 0x70097aa0 nand_bch_free +EXPORT_SYMBOL vmlinux 0x700f8810 bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0x7012d6ea blk_queue_invalidate_tags +EXPORT_SYMBOL vmlinux 0x702fabf1 inode_needs_sync +EXPORT_SYMBOL vmlinux 0x70523a7a __cond_resched_softirq +EXPORT_SYMBOL vmlinux 0x7057733e netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0x705aecdb input_inject_event +EXPORT_SYMBOL vmlinux 0x7070c019 clear_nlink +EXPORT_SYMBOL vmlinux 0x70779268 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0x707f43f6 __ctzdi2 +EXPORT_SYMBOL vmlinux 0x70822f06 soft_cursor +EXPORT_SYMBOL vmlinux 0x70a344dd dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0x70bc17d7 inode_wait +EXPORT_SYMBOL vmlinux 0x70d053fd try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x70ee09c3 nla_reserve +EXPORT_SYMBOL vmlinux 0x70f4f96a serio_close +EXPORT_SYMBOL vmlinux 0x70fd14e4 single_open +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x71335f97 fb_show_logo +EXPORT_SYMBOL vmlinux 0x71363166 sock_init_data +EXPORT_SYMBOL vmlinux 0x71367069 dev_mc_sync +EXPORT_SYMBOL vmlinux 0x7138c879 d_move +EXPORT_SYMBOL vmlinux 0x714dcc69 tty_unlock +EXPORT_SYMBOL vmlinux 0x715d3052 __sock_create +EXPORT_SYMBOL vmlinux 0x716398bc proto_register +EXPORT_SYMBOL vmlinux 0x716c089f input_register_handle +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x718a4dbb security_path_symlink +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71c90087 memcmp +EXPORT_SYMBOL vmlinux 0x71ddaa17 dquot_get_dqinfo +EXPORT_SYMBOL vmlinux 0x71dea1f5 redraw_screen +EXPORT_SYMBOL vmlinux 0x71f35f24 dev_get_stats +EXPORT_SYMBOL vmlinux 0x71f43808 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0x71f65175 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x7226b3ad scsi_calculate_bounce_limit +EXPORT_SYMBOL vmlinux 0x72350130 ___ratelimit +EXPORT_SYMBOL vmlinux 0x723a2b48 key_type_keyring +EXPORT_SYMBOL vmlinux 0x724623d4 snd_timer_global_new +EXPORT_SYMBOL vmlinux 0x724d4d0a generic_ro_fops +EXPORT_SYMBOL vmlinux 0x7255d5c9 dentry_open +EXPORT_SYMBOL vmlinux 0x7271ec78 abx500_remove_ops +EXPORT_SYMBOL vmlinux 0x7274cffc fb_validate_mode +EXPORT_SYMBOL vmlinux 0x7280f5dc scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x72812c88 simple_open +EXPORT_SYMBOL vmlinux 0x7281f6f4 tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x72b5b2b7 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x72d4b26e snd_card_free +EXPORT_SYMBOL vmlinux 0x72d58de9 kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0x72e69546 jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x7307b98a ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0x7315a4e9 twl6030_mmc_card_detect_config +EXPORT_SYMBOL vmlinux 0x7317cd9f __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0x7317e762 elv_unregister_queue +EXPORT_SYMBOL vmlinux 0x731b81f1 __wait_on_bit +EXPORT_SYMBOL vmlinux 0x7337beb1 get_write_access +EXPORT_SYMBOL vmlinux 0x733c3b54 kasprintf +EXPORT_SYMBOL vmlinux 0x7357edfa simple_empty +EXPORT_SYMBOL vmlinux 0x737de5e9 radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0x738d5a8a clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0x73b231f1 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x73c26bc1 ps2_handle_response +EXPORT_SYMBOL vmlinux 0x73d08a46 dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0x73e20c1c strlcpy +EXPORT_SYMBOL vmlinux 0x73f39bac napi_gro_flush +EXPORT_SYMBOL vmlinux 0x7405c975 xfrm_register_mode +EXPORT_SYMBOL vmlinux 0x741a2cb1 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x742f40b2 posix_lock_file_wait +EXPORT_SYMBOL vmlinux 0x7436fc46 swiotlb_unmap_sg +EXPORT_SYMBOL vmlinux 0x7440e077 __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x7459499d eth_type_trans +EXPORT_SYMBOL vmlinux 0x7469fcfe radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x747195f0 hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x7485e15e unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x74882e0e d_find_alias +EXPORT_SYMBOL vmlinux 0x74994478 bdgrab +EXPORT_SYMBOL vmlinux 0x74ae4df8 udplite_prot +EXPORT_SYMBOL vmlinux 0x74b8f0a0 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74c3164e inet_stream_ops +EXPORT_SYMBOL vmlinux 0x74ce05b8 flush_delayed_work +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74f79747 dma_release_declared_memory +EXPORT_SYMBOL vmlinux 0x74f8d54b tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0x7505bdef memchr_inv +EXPORT_SYMBOL vmlinux 0x751e3264 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x752c4f69 dcb_setapp +EXPORT_SYMBOL vmlinux 0x7544f0e8 tc6393xb_lcd_set_power +EXPORT_SYMBOL vmlinux 0x754dac78 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x75591990 dev_alloc_name +EXPORT_SYMBOL vmlinux 0x75653711 scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0x757d2fd8 pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0x75850d01 __vmalloc +EXPORT_SYMBOL vmlinux 0x7593868a snd_pcm_new_stream +EXPORT_SYMBOL vmlinux 0x7593d385 div64_s64 +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75bdea12 iommu_area_alloc +EXPORT_SYMBOL vmlinux 0x75e82ac5 framebuffer_release +EXPORT_SYMBOL vmlinux 0x75fe7dd8 generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0x75fee7fd __raw_writesb +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x760beb28 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0x761038a9 dev_set_mac_address +EXPORT_SYMBOL vmlinux 0x762c8e4d skb_checksum +EXPORT_SYMBOL vmlinux 0x7631ab43 fib_default_rule_add +EXPORT_SYMBOL vmlinux 0x76372859 devm_gpio_request_one +EXPORT_SYMBOL vmlinux 0x763b66ca may_umount +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x764bd77c request_resource +EXPORT_SYMBOL vmlinux 0x765252b5 proc_remove +EXPORT_SYMBOL vmlinux 0x7654e529 generic_pipe_buf_unmap +EXPORT_SYMBOL vmlinux 0x76639922 swiotlb_dma_mapping_error +EXPORT_SYMBOL vmlinux 0x7679ece2 mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x767b1383 gen10g_restart_aneg +EXPORT_SYMBOL vmlinux 0x76971495 tcp_prequeue +EXPORT_SYMBOL vmlinux 0x76bf656d __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x76c048b6 snd_timer_open +EXPORT_SYMBOL vmlinux 0x76cf47f6 __aeabi_llsl +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76dd2779 mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0x76e16f88 d_alloc +EXPORT_SYMBOL vmlinux 0x76eaca4c __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0x771cf835 dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x7724b90d netdev_all_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x773a9c94 blk_iopoll_enabled +EXPORT_SYMBOL vmlinux 0x774f6edd __mutex_init +EXPORT_SYMBOL vmlinux 0x775ed3fb mmc_stop_bkops +EXPORT_SYMBOL vmlinux 0x7791193f icst525_s2div +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x779f7c5f dquot_scan_active +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77d5b6b6 kobject_set_name +EXPORT_SYMBOL vmlinux 0x77d7e1ba mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0x77df0847 __set_personality +EXPORT_SYMBOL vmlinux 0x77e8e654 unregister_netdev +EXPORT_SYMBOL vmlinux 0x77ecac9f zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x77f03f3c __invalidate_device +EXPORT_SYMBOL vmlinux 0x77fe4cb2 sleep_on_timeout +EXPORT_SYMBOL vmlinux 0x782567ec memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0x782afb27 dma_async_memcpy_buf_to_buf +EXPORT_SYMBOL vmlinux 0x782dfe6b ihold +EXPORT_SYMBOL vmlinux 0x7833deb2 pgprot_user +EXPORT_SYMBOL vmlinux 0x7834bd2c pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0x783b3563 wake_up_atomic_t +EXPORT_SYMBOL vmlinux 0x784c5aa4 iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0x785d98cf security_inode_readlink +EXPORT_SYMBOL vmlinux 0x786355c1 dev_crit +EXPORT_SYMBOL vmlinux 0x7865c074 clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x788715e1 locks_remove_posix +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x789b5f5f devm_clk_put +EXPORT_SYMBOL vmlinux 0x78cddf53 sock_create_kern +EXPORT_SYMBOL vmlinux 0x78de0ae8 blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0x78eb7022 check_submounts_and_drop +EXPORT_SYMBOL vmlinux 0x78f34855 cdrom_open +EXPORT_SYMBOL vmlinux 0x78fd36e7 ipmi_request_supply_msgs +EXPORT_SYMBOL vmlinux 0x7930d225 of_device_is_compatible +EXPORT_SYMBOL vmlinux 0x7934d6fd jbd2_journal_start +EXPORT_SYMBOL vmlinux 0x793a6817 tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0x796fc5ce scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0x799c1f22 blk_register_region +EXPORT_SYMBOL vmlinux 0x79a47dc2 scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79c6c0ca kunmap +EXPORT_SYMBOL vmlinux 0x79cc7d2b mutex_lock_killable +EXPORT_SYMBOL vmlinux 0x79d00b64 tcp_check_req +EXPORT_SYMBOL vmlinux 0x79d94169 neigh_direct_output +EXPORT_SYMBOL vmlinux 0x79ddccb5 __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x7a188791 prandom_bytes +EXPORT_SYMBOL vmlinux 0x7a1bb9c1 input_grab_device +EXPORT_SYMBOL vmlinux 0x7a27c184 ewma_init +EXPORT_SYMBOL vmlinux 0x7a2993b8 tcp_seq_open +EXPORT_SYMBOL vmlinux 0x7a2dcc23 sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0x7a312487 ps2_begin_command +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a5fef80 tcf_hash_destroy +EXPORT_SYMBOL vmlinux 0x7a899940 register_framebuffer +EXPORT_SYMBOL vmlinux 0x7a91726b clkdev_alloc +EXPORT_SYMBOL vmlinux 0x7a925833 cpufreq_get_global_kobject +EXPORT_SYMBOL vmlinux 0x7ab31880 security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7ac79a18 fb_pan_display +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7add44b5 posix_acl_valid +EXPORT_SYMBOL vmlinux 0x7aef74d6 snd_info_register +EXPORT_SYMBOL vmlinux 0x7afa89fc vsnprintf +EXPORT_SYMBOL vmlinux 0x7b079334 wait_iff_congested +EXPORT_SYMBOL vmlinux 0x7b1ade38 lz4_decompress +EXPORT_SYMBOL vmlinux 0x7b5993f7 inet_confirm_addr +EXPORT_SYMBOL vmlinux 0x7b5c8440 vm_munmap +EXPORT_SYMBOL vmlinux 0x7b615cc1 phy_driver_unregister +EXPORT_SYMBOL vmlinux 0x7b7029c5 blk_execute_rq +EXPORT_SYMBOL vmlinux 0x7b8db239 noop_fsync +EXPORT_SYMBOL vmlinux 0x7bac46f9 prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x7bb6aee7 cfb_fillrect +EXPORT_SYMBOL vmlinux 0x7bc79927 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x7bcd1763 phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x7bcf3c61 input_release_device +EXPORT_SYMBOL vmlinux 0x7bd6b02d generic_delete_inode +EXPORT_SYMBOL vmlinux 0x7c0e5061 snd_info_free_entry +EXPORT_SYMBOL vmlinux 0x7c1372e8 panic +EXPORT_SYMBOL vmlinux 0x7c1aabd1 sg_miter_next +EXPORT_SYMBOL vmlinux 0x7c2b0d0d eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0x7c383cf7 tcf_hash_insert +EXPORT_SYMBOL vmlinux 0x7c38d5ee input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c60605e bio_phys_segments +EXPORT_SYMBOL vmlinux 0x7c61340c __release_region +EXPORT_SYMBOL vmlinux 0x7c62dc11 sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x7c98845d twl_i2c_read +EXPORT_SYMBOL vmlinux 0x7ca34cd6 release_pages +EXPORT_SYMBOL vmlinux 0x7cb1ae69 cpu_down +EXPORT_SYMBOL vmlinux 0x7cb23bf6 kobject_del +EXPORT_SYMBOL vmlinux 0x7cb28f41 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0x7cc035a7 __ucmpdi2 +EXPORT_SYMBOL vmlinux 0x7cc578da param_get_long +EXPORT_SYMBOL vmlinux 0x7ccb4dac i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x7cdca76d add_disk +EXPORT_SYMBOL vmlinux 0x7cdd077a submit_bh +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7cf1a81e mmc_gpio_request_ro +EXPORT_SYMBOL vmlinux 0x7d05227d remove_proc_subtree +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d0e3e72 ida_get_new_above +EXPORT_SYMBOL vmlinux 0x7d0ec626 d_genocide +EXPORT_SYMBOL vmlinux 0x7d0f2d5e netlink_unicast +EXPORT_SYMBOL vmlinux 0x7d11c268 jiffies +EXPORT_SYMBOL vmlinux 0x7d4e2276 __init_rwsem +EXPORT_SYMBOL vmlinux 0x7d661030 scsi_add_device +EXPORT_SYMBOL vmlinux 0x7d6a7d87 snd_timer_interrupt +EXPORT_SYMBOL vmlinux 0x7dccc294 proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0x7dcea7d9 sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0x7ddeb1f8 posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7e048944 ip6_frag_init +EXPORT_SYMBOL vmlinux 0x7e26d7af blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x7e361844 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0x7e394c4e sysctl_local_reserved_ports +EXPORT_SYMBOL vmlinux 0x7e4bfb3a kobject_get +EXPORT_SYMBOL vmlinux 0x7e7d6106 get_fs_type +EXPORT_SYMBOL vmlinux 0x7e80201d dquot_release +EXPORT_SYMBOL vmlinux 0x7e905334 snd_dma_alloc_pages_fallback +EXPORT_SYMBOL vmlinux 0x7e98d318 vexpress_config_read +EXPORT_SYMBOL vmlinux 0x7e9b6a1a gen10g_suspend +EXPORT_SYMBOL vmlinux 0x7e9efe8e complete_and_exit +EXPORT_SYMBOL vmlinux 0x7ea3b608 buffer_migrate_page +EXPORT_SYMBOL vmlinux 0x7ea6787a bioset_integrity_create +EXPORT_SYMBOL vmlinux 0x7ead817c __idr_pre_get +EXPORT_SYMBOL vmlinux 0x7eb7a3e0 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x7ece82f3 udp_proc_register +EXPORT_SYMBOL vmlinux 0x7ee238f0 snd_component_add +EXPORT_SYMBOL vmlinux 0x7ee73c0c memcg_socket_limit_enabled +EXPORT_SYMBOL vmlinux 0x7ef09758 key_unlink +EXPORT_SYMBOL vmlinux 0x7f04b56d may_umount_tree +EXPORT_SYMBOL vmlinux 0x7f0c1380 set_bh_page +EXPORT_SYMBOL vmlinux 0x7f114ff6 dquot_enable +EXPORT_SYMBOL vmlinux 0x7f1f412a mdiobus_read +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f2f4d03 xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0x7f41b524 touch_atime +EXPORT_SYMBOL vmlinux 0x7f43f960 seq_vprintf +EXPORT_SYMBOL vmlinux 0x7f4f0c9a generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x7f63b31e _memcpy_toio +EXPORT_SYMBOL vmlinux 0x7f66528d con_set_default_unimap +EXPORT_SYMBOL vmlinux 0x7f6abb03 mmc_put_card +EXPORT_SYMBOL vmlinux 0x7f863c04 fget +EXPORT_SYMBOL vmlinux 0x7f8f3e6b elevator_init +EXPORT_SYMBOL vmlinux 0x7f9d5686 blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0x7fa54e2f load_nls +EXPORT_SYMBOL vmlinux 0x7fca0645 __elv_add_request +EXPORT_SYMBOL vmlinux 0x7fd55b43 blk_mq_end_io +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7ff64585 simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0x800e4ffa __muldi3 +EXPORT_SYMBOL vmlinux 0x8012d24a set_device_ro +EXPORT_SYMBOL vmlinux 0x80360286 snd_ctl_unregister_ioctl +EXPORT_SYMBOL vmlinux 0x804f922a ipmi_addr_length +EXPORT_SYMBOL vmlinux 0x80788d6a fsnotify_put_mark +EXPORT_SYMBOL vmlinux 0x8086ccb5 phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0x80aa0e31 sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x80b5b099 kernel_getsockname +EXPORT_SYMBOL vmlinux 0x80c1c54e mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80e59641 kernel_read +EXPORT_SYMBOL vmlinux 0x80ebe988 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0x80f858ed mb_cache_entry_insert +EXPORT_SYMBOL vmlinux 0x810ebb00 dquot_disable +EXPORT_SYMBOL vmlinux 0x814e7730 nf_ct_destroy +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x818a2ed8 kdb_current_task +EXPORT_SYMBOL vmlinux 0x818d6d36 ndo_dflt_bridge_getlink +EXPORT_SYMBOL vmlinux 0x81a86aa9 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0x81aeef71 sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0x81b69e41 snd_ctl_enum_info +EXPORT_SYMBOL vmlinux 0x81d10f5f trace_seq_putc +EXPORT_SYMBOL vmlinux 0x81d70f2f xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x8205cfdb filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x8210e3fb tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0x82122c2e xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x824a4367 tmio_core_mmc_pwr +EXPORT_SYMBOL vmlinux 0x8251823e bh_submit_read +EXPORT_SYMBOL vmlinux 0x8251bcc3 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x825453ad file_remove_suid +EXPORT_SYMBOL vmlinux 0x825c0540 mdiobus_free +EXPORT_SYMBOL vmlinux 0x8260686f bitmap_find_next_zero_area +EXPORT_SYMBOL vmlinux 0x8262ca62 napi_gro_receive +EXPORT_SYMBOL vmlinux 0x8262fb39 __find_get_block +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x82acfb70 blk_iopoll_sched +EXPORT_SYMBOL vmlinux 0x82d2397d mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0x82eca614 simple_transaction_release +EXPORT_SYMBOL vmlinux 0x82f58559 flush_kernel_dcache_page +EXPORT_SYMBOL vmlinux 0x82fd5c3e __f_setown +EXPORT_SYMBOL vmlinux 0x8320bea8 __umodsi3 +EXPORT_SYMBOL vmlinux 0x83211609 up_write +EXPORT_SYMBOL vmlinux 0x8325685d xfrm4_prepare_output +EXPORT_SYMBOL vmlinux 0x832e685a mdiobus_scan +EXPORT_SYMBOL vmlinux 0x832fad81 eth_rebuild_header +EXPORT_SYMBOL vmlinux 0x834256ab snd_pcm_new +EXPORT_SYMBOL vmlinux 0x8350aedf dev_addr_add +EXPORT_SYMBOL vmlinux 0x837dbf4e file_open_root +EXPORT_SYMBOL vmlinux 0x8382dce3 vfs_writev +EXPORT_SYMBOL vmlinux 0x8391603c nobh_writepage +EXPORT_SYMBOL vmlinux 0x83a381ac vfs_write +EXPORT_SYMBOL vmlinux 0x83a476ce bitmap_scnlistprintf +EXPORT_SYMBOL vmlinux 0x83e6275e dev_load +EXPORT_SYMBOL vmlinux 0x83ea6f90 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0x83f8ca35 generic_writepages +EXPORT_SYMBOL vmlinux 0x8404fbeb xfrm_lookup +EXPORT_SYMBOL vmlinux 0x841962f8 param_get_ushort +EXPORT_SYMBOL vmlinux 0x843c2ed1 netdev_notify_peers +EXPORT_SYMBOL vmlinux 0x843ebc30 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0x843f3370 dst_release +EXPORT_SYMBOL vmlinux 0x84615e1e seq_lseek +EXPORT_SYMBOL vmlinux 0x848da8f7 nand_scan_bbt +EXPORT_SYMBOL vmlinux 0x849c285b devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0x84b183ae strncmp +EXPORT_SYMBOL vmlinux 0x84f98a27 bio_clone_bioset +EXPORT_SYMBOL vmlinux 0x84fe783e genphy_resume +EXPORT_SYMBOL vmlinux 0x84ffea8b idr_preload +EXPORT_SYMBOL vmlinux 0x85077264 ata_std_end_eh +EXPORT_SYMBOL vmlinux 0x8509c540 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0x8518eca9 param_get_short +EXPORT_SYMBOL vmlinux 0x852abd09 vm_insert_page +EXPORT_SYMBOL vmlinux 0x853bf7c1 param_set_int +EXPORT_SYMBOL vmlinux 0x85435279 padata_set_cpumask +EXPORT_SYMBOL vmlinux 0x8564903d dquot_acquire +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x858c417a dev_printk +EXPORT_SYMBOL vmlinux 0x859b6c9f twl6030_mmc_card_detect +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85e7deb2 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0x85ec0977 xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0x860630e3 sk_free +EXPORT_SYMBOL vmlinux 0x86241800 abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0x8626ea29 dma_release_from_coherent +EXPORT_SYMBOL vmlinux 0x862a3f7f __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x8664f62e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0x8671f104 __brelse +EXPORT_SYMBOL vmlinux 0x8676c7a3 tty_check_change +EXPORT_SYMBOL vmlinux 0x867e2903 snd_device_free +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x86a4889a kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0x86aaf0c8 of_device_unregister +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x86fcc778 unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0x86feb4d2 elv_rb_add +EXPORT_SYMBOL vmlinux 0x870bf928 radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x871c0a7e fiemap_check_flags +EXPORT_SYMBOL vmlinux 0x8764c7b1 amba_device_unregister +EXPORT_SYMBOL vmlinux 0x8770c2be snd_ctl_boolean_mono_info +EXPORT_SYMBOL vmlinux 0x87740de0 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0x8779a34f param_ops_byte +EXPORT_SYMBOL vmlinux 0x877ea98b skb_split +EXPORT_SYMBOL vmlinux 0x878ab3ce sysctl_tcp_adv_win_scale +EXPORT_SYMBOL vmlinux 0x8798e453 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0x87b6cbcb snd_card_disconnect +EXPORT_SYMBOL vmlinux 0x87ba7fac snd_pcm_suspend_all +EXPORT_SYMBOL vmlinux 0x87bea92d blk_end_request_cur +EXPORT_SYMBOL vmlinux 0x87c6a584 user_revoke +EXPORT_SYMBOL vmlinux 0x87ce62fc ab3100_event_register +EXPORT_SYMBOL vmlinux 0x87ea37d5 ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0x87f07fb4 wait_on_page_bit +EXPORT_SYMBOL vmlinux 0x881039d0 zlib_inflate +EXPORT_SYMBOL vmlinux 0x881ad408 dquot_initialize +EXPORT_SYMBOL vmlinux 0x8824a1b6 blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0x88287818 phy_connect +EXPORT_SYMBOL vmlinux 0x882dab9d sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0x882eaa08 ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x8834396c mod_timer +EXPORT_SYMBOL vmlinux 0x88513970 param_set_byte +EXPORT_SYMBOL vmlinux 0x8851c0d3 d_instantiate_unique +EXPORT_SYMBOL vmlinux 0x88697b97 dev_remove_pack +EXPORT_SYMBOL vmlinux 0x88718d03 cdrom_media_changed +EXPORT_SYMBOL vmlinux 0x88998fe6 dev_alert +EXPORT_SYMBOL vmlinux 0x889cc615 napi_complete +EXPORT_SYMBOL vmlinux 0x8908364e _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL vmlinux 0x890dc2ed idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x8925e234 snd_timer_global_free +EXPORT_SYMBOL vmlinux 0x8940042c elevator_change +EXPORT_SYMBOL vmlinux 0x8953f8ff __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x89737690 pipe_to_file +EXPORT_SYMBOL vmlinux 0x897473df mktime +EXPORT_SYMBOL vmlinux 0x897f7876 backlight_device_register +EXPORT_SYMBOL vmlinux 0x899ebcf8 datagram_poll +EXPORT_SYMBOL vmlinux 0x89afe34e __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0x89d5538d fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x89e68196 __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0x8a04ced9 igrab +EXPORT_SYMBOL vmlinux 0x8a0f4230 rename_lock +EXPORT_SYMBOL vmlinux 0x8a1ab4ee timeval_to_jiffies +EXPORT_SYMBOL vmlinux 0x8a202f56 vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0x8a483689 devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a4fa83b __aeabi_llsr +EXPORT_SYMBOL vmlinux 0x8a51d565 quota_send_warning +EXPORT_SYMBOL vmlinux 0x8a650569 blkdev_fsync +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a8b277c kmalloc_dma_caches +EXPORT_SYMBOL vmlinux 0x8a949464 kill_block_super +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8aad17aa bdevname +EXPORT_SYMBOL vmlinux 0x8ad597fe __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x8ae561b3 mntput +EXPORT_SYMBOL vmlinux 0x8af76616 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0x8afb1204 task_tgid_nr_ns +EXPORT_SYMBOL vmlinux 0x8b092f71 dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x8b0a0cb7 arp_find +EXPORT_SYMBOL vmlinux 0x8b22eb95 i2c_get_adapter +EXPORT_SYMBOL vmlinux 0x8b35e873 sg_last +EXPORT_SYMBOL vmlinux 0x8b3d4875 pagecache_write_begin +EXPORT_SYMBOL vmlinux 0x8b43159b register_cpu_notifier +EXPORT_SYMBOL vmlinux 0x8b5324e8 security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0x8b5cb7a5 mb_cache_entry_alloc +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b813a58 bioset_create +EXPORT_SYMBOL vmlinux 0x8b8d1c76 snd_ctl_remove +EXPORT_SYMBOL vmlinux 0x8b8ddbb5 udp_lib_unhash +EXPORT_SYMBOL vmlinux 0x8bb8ad32 skb_copy +EXPORT_SYMBOL vmlinux 0x8bda6257 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0x8c05a38e snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL vmlinux 0x8c094edd __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0x8c127d10 mmc_alloc_host +EXPORT_SYMBOL vmlinux 0x8c161c6e bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x8c1914d4 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x8c296db3 skb_tx_error +EXPORT_SYMBOL vmlinux 0x8c30c702 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0x8c637d43 irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x8c816247 __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x8c88301d write_dirty_buffer +EXPORT_SYMBOL vmlinux 0x8c8ee770 ipmi_destroy_user +EXPORT_SYMBOL vmlinux 0x8cbac9b4 i2c_master_send +EXPORT_SYMBOL vmlinux 0x8cefa358 input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0x8cfc3441 __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0x8d074624 elv_dispatch_add_tail +EXPORT_SYMBOL vmlinux 0x8d17a9c9 netpoll_rx_disable +EXPORT_SYMBOL vmlinux 0x8d2e268b param_ops_ulong +EXPORT_SYMBOL vmlinux 0x8d344dcf nf_reinject +EXPORT_SYMBOL vmlinux 0x8d551bef sysctl_tcp_rmem +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d62439b devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x8d6f81b4 __div64_32 +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d7401cd security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0x8d8b6353 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x8d93ed77 tty_mutex +EXPORT_SYMBOL vmlinux 0x8db68fd2 skb_copy_expand +EXPORT_SYMBOL vmlinux 0x8dc80bf2 __d_drop +EXPORT_SYMBOL vmlinux 0x8dcff6e2 __pv_offset +EXPORT_SYMBOL vmlinux 0x8df0dbb4 pps_event +EXPORT_SYMBOL vmlinux 0x8e026b4a max8925_bulk_write +EXPORT_SYMBOL vmlinux 0x8e03c758 register_netdev +EXPORT_SYMBOL vmlinux 0x8e0d66f4 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x8e214c5a snd_pcm_lib_free_pages +EXPORT_SYMBOL vmlinux 0x8e28597b serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0x8e304574 xfrm_init_replay +EXPORT_SYMBOL vmlinux 0x8e3ee339 kill_bdev +EXPORT_SYMBOL vmlinux 0x8e489e84 skb_trim +EXPORT_SYMBOL vmlinux 0x8e53041f xfrm4_rcv +EXPORT_SYMBOL vmlinux 0x8e5c580a ida_init +EXPORT_SYMBOL vmlinux 0x8e864a86 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x8e865d3c arm_delay_ops +EXPORT_SYMBOL vmlinux 0x8e8d5480 sk_wait_data +EXPORT_SYMBOL vmlinux 0x8e9b0f47 netpoll_rx_enable +EXPORT_SYMBOL vmlinux 0x8ec06a54 release_firmware +EXPORT_SYMBOL vmlinux 0x8ec22ecd sock_sendmsg +EXPORT_SYMBOL vmlinux 0x8eccaadf vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0x8edff4f1 eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0x8ee51990 prepare_creds +EXPORT_SYMBOL vmlinux 0x8f045d1c cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x8f211cb5 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0x8f4acdb7 skb_clone +EXPORT_SYMBOL vmlinux 0x8f595b11 snd_major +EXPORT_SYMBOL vmlinux 0x8f678b07 __stack_chk_guard +EXPORT_SYMBOL vmlinux 0x8fa02246 amba_find_device +EXPORT_SYMBOL vmlinux 0x8faa4598 of_translate_address +EXPORT_SYMBOL vmlinux 0x8fbdf9cb load_nls_default +EXPORT_SYMBOL vmlinux 0x8fd180e7 kernel_neon_begin +EXPORT_SYMBOL vmlinux 0x8fda87d3 blk_start_request +EXPORT_SYMBOL vmlinux 0x8ff626b7 md_wakeup_thread +EXPORT_SYMBOL vmlinux 0x8ff70523 __memcg_kmem_get_cache +EXPORT_SYMBOL vmlinux 0x8ffdb3b8 crc16 +EXPORT_SYMBOL vmlinux 0x9000399d sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0x9018c773 skb_dequeue +EXPORT_SYMBOL vmlinux 0x903ada98 tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0x904403d4 get_disk +EXPORT_SYMBOL vmlinux 0x90513586 fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0x905954d8 jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0x90734950 vm_insert_pfn +EXPORT_SYMBOL vmlinux 0x90786683 __get_page_tail +EXPORT_SYMBOL vmlinux 0x9085b679 bitmap_start_sync +EXPORT_SYMBOL vmlinux 0x908b53ed param_set_short +EXPORT_SYMBOL vmlinux 0x909bd5f0 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0x90b22823 check_disk_change +EXPORT_SYMBOL vmlinux 0x90c5e819 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x90cd34b8 skb_put +EXPORT_SYMBOL vmlinux 0x90d58c76 dev_open +EXPORT_SYMBOL vmlinux 0x911fd808 devm_ioremap_nocache +EXPORT_SYMBOL vmlinux 0x912e09eb init_buffer +EXPORT_SYMBOL vmlinux 0x91463b1d kstrtos16 +EXPORT_SYMBOL vmlinux 0x91715312 sprintf +EXPORT_SYMBOL vmlinux 0x917928e2 blk_queue_bounce +EXPORT_SYMBOL vmlinux 0x917b5e29 dev_close +EXPORT_SYMBOL vmlinux 0x919029aa __readwrite_bug +EXPORT_SYMBOL vmlinux 0x919b03f1 mount_nodev +EXPORT_SYMBOL vmlinux 0x919d9b94 inode_capable +EXPORT_SYMBOL vmlinux 0x91a4703f xfrm_state_flush +EXPORT_SYMBOL vmlinux 0x91aaa55f rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0x91ac1217 nf_getsockopt +EXPORT_SYMBOL vmlinux 0x91ae794e __napi_complete +EXPORT_SYMBOL vmlinux 0x91aec064 down_read_trylock +EXPORT_SYMBOL vmlinux 0x91c0980e icst_hz +EXPORT_SYMBOL vmlinux 0x91e1836d blk_rq_init +EXPORT_SYMBOL vmlinux 0x91eb5cc0 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0x91f2087a rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0x920eb90c interruptible_sleep_on_timeout +EXPORT_SYMBOL vmlinux 0x9217c6a0 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0x9219a910 phys_mem_access_prot +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x9243526f path_get +EXPORT_SYMBOL vmlinux 0x925520d2 blk_start_plug +EXPORT_SYMBOL vmlinux 0x925a18e7 blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0x925afaae jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0x925e937c cdev_del +EXPORT_SYMBOL vmlinux 0x9263ede3 block_invalidatepage +EXPORT_SYMBOL vmlinux 0x9282c207 flush_old_exec +EXPORT_SYMBOL vmlinux 0x928962b2 __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0x92913edc ps2_handle_ack +EXPORT_SYMBOL vmlinux 0x92a5c0d8 generic_read_dir +EXPORT_SYMBOL vmlinux 0x92a9c60c time_to_tm +EXPORT_SYMBOL vmlinux 0x92e99a2c jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0x92ea469a vm_map_ram +EXPORT_SYMBOL vmlinux 0x92fde157 qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x93215e1d __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0x936dc69c pps_unregister_source +EXPORT_SYMBOL vmlinux 0x93714281 blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0x93754363 __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x939b5d4f blk_queue_prep_rq +EXPORT_SYMBOL vmlinux 0x93a2bf42 kunmap_high +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93af8cf6 inet_getname +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93bbec1d ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x93dd151c lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0x93f58109 nf_setsockopt +EXPORT_SYMBOL vmlinux 0x93fba1a1 udp_ioctl +EXPORT_SYMBOL vmlinux 0x93fca811 __get_free_pages +EXPORT_SYMBOL vmlinux 0x94095e65 cdev_add +EXPORT_SYMBOL vmlinux 0x94098ff8 snd_interval_list +EXPORT_SYMBOL vmlinux 0x940c975f __ip_select_ident +EXPORT_SYMBOL vmlinux 0x942c5dd3 mmc_detect_change +EXPORT_SYMBOL vmlinux 0x94383ebe generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x947647d4 console_start +EXPORT_SYMBOL vmlinux 0x947dd4e6 scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x949f360e seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x94b91bd6 nf_hook_slow +EXPORT_SYMBOL vmlinux 0x94d3da68 rtc_lock +EXPORT_SYMBOL vmlinux 0x94d94752 snd_cards +EXPORT_SYMBOL vmlinux 0x94f4efbf kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0x9508f166 param_ops_bint +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x95622f41 down_timeout +EXPORT_SYMBOL vmlinux 0x95840cd9 dquot_file_open +EXPORT_SYMBOL vmlinux 0x95a690f2 kernel_write +EXPORT_SYMBOL vmlinux 0x95b3756c snd_pcm_lib_read +EXPORT_SYMBOL vmlinux 0x95cb929c of_find_all_nodes +EXPORT_SYMBOL vmlinux 0x95cc6dfe serial8250_do_pm +EXPORT_SYMBOL vmlinux 0x95d61bc0 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0x95dbe078 __get_user_2 +EXPORT_SYMBOL vmlinux 0x95e6e500 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x95f4532e __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x961299fd gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0x9613509a idr_replace +EXPORT_SYMBOL vmlinux 0x961c7bfc led_set_brightness +EXPORT_SYMBOL vmlinux 0x9643883e mpage_readpages +EXPORT_SYMBOL vmlinux 0x96501433 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0x96573b80 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x967be84e empty_zero_page +EXPORT_SYMBOL vmlinux 0x968622c5 i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0x96898769 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x96cbcc81 ipmi_get_version +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96e4d4ff simple_unlink +EXPORT_SYMBOL vmlinux 0x9703d45c copy_strings_kernel +EXPORT_SYMBOL vmlinux 0x97078e75 invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x97255bdf strlen +EXPORT_SYMBOL vmlinux 0x972f5927 d_find_any_alias +EXPORT_SYMBOL vmlinux 0x9754ec10 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x975db762 tcp_disconnect +EXPORT_SYMBOL vmlinux 0x976e700f down_trylock +EXPORT_SYMBOL vmlinux 0x9786c457 snd_pcm_limit_hw_rates +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x9799eec9 elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x97a60e3d param_get_bool +EXPORT_SYMBOL vmlinux 0x97a7c956 cdrom_check_events +EXPORT_SYMBOL vmlinux 0x97b4500c __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0x97b825ea complete_request_key +EXPORT_SYMBOL vmlinux 0x97c1e6d9 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0x97d92237 inet_csk_accept +EXPORT_SYMBOL vmlinux 0x97e7f0a0 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0x98082893 __copy_to_user +EXPORT_SYMBOL vmlinux 0x9820b644 warn_slowpath_fmt_taint +EXPORT_SYMBOL vmlinux 0x982f891d dqget +EXPORT_SYMBOL vmlinux 0x983f00c6 stop_tty +EXPORT_SYMBOL vmlinux 0x984610b9 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x9864464a mpage_readpage +EXPORT_SYMBOL vmlinux 0x986e6135 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x9876e50d ndisc_mc_map +EXPORT_SYMBOL vmlinux 0x988230d9 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x98864ce6 register_console +EXPORT_SYMBOL vmlinux 0x98aaf847 bioset_integrity_free +EXPORT_SYMBOL vmlinux 0x98af5836 ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x98fa21b0 mod_timer_pinned +EXPORT_SYMBOL vmlinux 0x99295f30 sk_run_filter +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x99591a7a ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x996952b7 blk_get_queue +EXPORT_SYMBOL vmlinux 0x996c4d30 proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x9976e16a inc_nlink +EXPORT_SYMBOL vmlinux 0x9994c0ca ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x999c3148 __raw_readsb +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99bb8806 memmove +EXPORT_SYMBOL vmlinux 0x99cdc86b sysctl_tcp_reordering +EXPORT_SYMBOL vmlinux 0x99d6eb0b tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0x99da05b3 freeze_bdev +EXPORT_SYMBOL vmlinux 0x99f58330 lg_local_lock_cpu +EXPORT_SYMBOL vmlinux 0x99ff432d wireless_spy_update +EXPORT_SYMBOL vmlinux 0x9a0167a6 kmap +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a1fc4b4 jiffies_to_timeval +EXPORT_SYMBOL vmlinux 0x9a28ce0d inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x9a4e05c0 bio_integrity_prep +EXPORT_SYMBOL vmlinux 0x9a6e183a __idr_remove_all +EXPORT_SYMBOL vmlinux 0x9a78d7fd register_qdisc +EXPORT_SYMBOL vmlinux 0x9a8318ef v7_coherent_kern_range +EXPORT_SYMBOL vmlinux 0x9aa0f05c sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x9ac50c11 tcf_register_action +EXPORT_SYMBOL vmlinux 0x9ac54a24 tty_lock_pair +EXPORT_SYMBOL vmlinux 0x9adc0bee dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0x9af35b17 tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0x9af68bdf scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0x9b06b6b4 sget +EXPORT_SYMBOL vmlinux 0x9b2c8d98 loop_register_transfer +EXPORT_SYMBOL vmlinux 0x9b3097b0 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b388444 get_zeroed_page +EXPORT_SYMBOL vmlinux 0x9b48bb40 bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x9b4c2159 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0x9b6125a7 simple_transaction_set +EXPORT_SYMBOL vmlinux 0x9b6eb137 ksize +EXPORT_SYMBOL vmlinux 0x9b72b535 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0x9b7ba344 disk_stack_limits +EXPORT_SYMBOL vmlinux 0x9b9e05f9 alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0x9ba7089d argv_split +EXPORT_SYMBOL vmlinux 0x9be7bde4 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x9bfd3406 arp_send +EXPORT_SYMBOL vmlinux 0x9c0bd51f _raw_spin_lock +EXPORT_SYMBOL vmlinux 0x9c3737fc __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x9c491f60 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x9c5a37da jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x9c648062 udp_disconnect +EXPORT_SYMBOL vmlinux 0x9c77a7be dev_mc_add +EXPORT_SYMBOL vmlinux 0x9c8609ea tty_port_destroy +EXPORT_SYMBOL vmlinux 0x9c8d9cb8 padata_unregister_cpumask_notifier +EXPORT_SYMBOL vmlinux 0x9c9ec2a0 proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0x9ca90551 dquot_operations +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cba3c37 _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x9ceb163c memcpy_toiovec +EXPORT_SYMBOL vmlinux 0x9ced7a71 ip_getsockopt +EXPORT_SYMBOL vmlinux 0x9cfd56c5 scsi_print_status +EXPORT_SYMBOL vmlinux 0x9d03d9a7 mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x9d049e21 jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x9d05f6c4 ktime_get_clocktai +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d3aa376 blk_iopoll_init +EXPORT_SYMBOL vmlinux 0x9d669763 memcpy +EXPORT_SYMBOL vmlinux 0x9d7aa1d5 __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x9d8ed88f serio_unregister_port +EXPORT_SYMBOL vmlinux 0x9d90f95f __crc32c_le_combine +EXPORT_SYMBOL vmlinux 0x9db496f2 blk_put_queue +EXPORT_SYMBOL vmlinux 0x9df94093 __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x9dfe7307 lz4_decompress_unknownoutputsize +EXPORT_SYMBOL vmlinux 0x9e0359ca jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e0e8baf of_dev_put +EXPORT_SYMBOL vmlinux 0x9e2000a7 memcpy_toiovecend +EXPORT_SYMBOL vmlinux 0x9e345cd2 gen10g_read_status +EXPORT_SYMBOL vmlinux 0x9e44b9b7 of_get_next_available_child +EXPORT_SYMBOL vmlinux 0x9e4b3747 sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x9e4c6ff2 __devm_request_region +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e57b5a4 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL vmlinux 0x9e722b22 writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x9e9f1714 __bitmap_andnot +EXPORT_SYMBOL vmlinux 0x9ea0ad49 __sg_free_table +EXPORT_SYMBOL vmlinux 0x9ea43596 bio_map_user +EXPORT_SYMBOL vmlinux 0x9ead69cb sk_prot_clear_portaddr_nulls +EXPORT_SYMBOL vmlinux 0x9ebd4c04 adjust_resource +EXPORT_SYMBOL vmlinux 0x9ecc6a7a interruptible_sleep_on +EXPORT_SYMBOL vmlinux 0x9ed2eec7 param_set_ushort +EXPORT_SYMBOL vmlinux 0x9ed3eb13 seq_putc +EXPORT_SYMBOL vmlinux 0x9ed685ee iov_iter_advance +EXPORT_SYMBOL vmlinux 0x9edd5f9b security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x9ef5f8e9 vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x9f2bdaac __bitmap_or +EXPORT_SYMBOL vmlinux 0x9f341934 aio_complete +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f491e5d ftrace_print_symbols_seq_u64 +EXPORT_SYMBOL vmlinux 0x9f52b6cb i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0x9f566f29 tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0x9f63bed3 mtd_concat_destroy +EXPORT_SYMBOL vmlinux 0x9f7d5e8f sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0x9f8f411e mb_cache_destroy +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9f9a918d tcp_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x9fb3dd30 memcpy_fromiovec +EXPORT_SYMBOL vmlinux 0x9fb87c29 input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0x9fb96571 __serio_register_driver +EXPORT_SYMBOL vmlinux 0x9fbab64b sys_fillrect +EXPORT_SYMBOL vmlinux 0x9fcd5465 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9fe0c5e0 tty_register_device +EXPORT_SYMBOL vmlinux 0x9ff2cd51 ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa01841bd from_kuid +EXPORT_SYMBOL vmlinux 0xa02e606a bitmap_close_sync +EXPORT_SYMBOL vmlinux 0xa032f830 rtmsg_ifinfo +EXPORT_SYMBOL vmlinux 0xa04249ff __cleancache_get_page +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa04a01bd qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xa05c03df mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xa06df9e1 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0xa07338a7 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0xa07ed110 xz_dec_init +EXPORT_SYMBOL vmlinux 0xa0966e4b unregister_shrinker +EXPORT_SYMBOL vmlinux 0xa09ad5a6 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0xa0a25f7f iunique +EXPORT_SYMBOL vmlinux 0xa0a487c0 __getblk +EXPORT_SYMBOL vmlinux 0xa0a8ac7b inet_sendpage +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0b959e9 secpath_dup +EXPORT_SYMBOL vmlinux 0xa0ceef51 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0xa0d27c6e __generic_block_fiemap +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0db7ebe padata_do_parallel +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0ec8b34 dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0xa0f47575 pagecache_write_end +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa0fd0e4c inet_dgram_connect +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa10c67ff pid_task +EXPORT_SYMBOL vmlinux 0xa116b7c0 end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0xa11c2120 scm_fp_dup +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa12677c5 tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0xa1415618 twl6030_interrupt_unmask +EXPORT_SYMBOL vmlinux 0xa14c8301 ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0xa14f3d8c ewma_add +EXPORT_SYMBOL vmlinux 0xa17a6c21 scsi_ioctl +EXPORT_SYMBOL vmlinux 0xa18f5e28 unlink_framebuffer +EXPORT_SYMBOL vmlinux 0xa18f77a8 blk_mq_init_commands +EXPORT_SYMBOL vmlinux 0xa1915595 dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0xa1b759ce fb_add_videomode +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1d0a945 update_region +EXPORT_SYMBOL vmlinux 0xa1d55e90 _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0xa1e031f9 skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0xa1f0ebea bit_waitqueue +EXPORT_SYMBOL vmlinux 0xa2058688 netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0xa20ce1b8 net_msg_warn +EXPORT_SYMBOL vmlinux 0xa25c03ed netdev_change_features +EXPORT_SYMBOL vmlinux 0xa25dd33e pps_register_source +EXPORT_SYMBOL vmlinux 0xa2603132 get_phy_device +EXPORT_SYMBOL vmlinux 0xa26e1f2d uart_remove_one_port +EXPORT_SYMBOL vmlinux 0xa2848c50 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0xa288f565 inet6_release +EXPORT_SYMBOL vmlinux 0xa28a2ace ipmi_set_gets_events +EXPORT_SYMBOL vmlinux 0xa29a8bba inet_listen +EXPORT_SYMBOL vmlinux 0xa2a98b91 ipmi_get_maintenance_mode +EXPORT_SYMBOL vmlinux 0xa2ef34d7 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xa30bad5b request_firmware +EXPORT_SYMBOL vmlinux 0xa322060b set_disk_ro +EXPORT_SYMBOL vmlinux 0xa331a449 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0xa332464a of_get_cpu_node +EXPORT_SYMBOL vmlinux 0xa336feb7 nand_manuf_ids +EXPORT_SYMBOL vmlinux 0xa3482ce4 mmc_hw_reset_check +EXPORT_SYMBOL vmlinux 0xa34f1ef5 crc32_le +EXPORT_SYMBOL vmlinux 0xa34f7281 generic_file_aio_read +EXPORT_SYMBOL vmlinux 0xa351b81e __splice_from_pipe +EXPORT_SYMBOL vmlinux 0xa35de80f ipv4_config +EXPORT_SYMBOL vmlinux 0xa367cc79 md_done_sync +EXPORT_SYMBOL vmlinux 0xa381944f dql_reset +EXPORT_SYMBOL vmlinux 0xa38b7834 xfrm6_prepare_output +EXPORT_SYMBOL vmlinux 0xa3c1f511 cpu_user +EXPORT_SYMBOL vmlinux 0xa3d8dbee __bread +EXPORT_SYMBOL vmlinux 0xa3f35bf5 rwsem_is_locked +EXPORT_SYMBOL vmlinux 0xa3fa21ab vfs_create +EXPORT_SYMBOL vmlinux 0xa407d982 __netif_schedule +EXPORT_SYMBOL vmlinux 0xa4132be0 abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0xa414882d add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0xa41bb94b deactivate_super +EXPORT_SYMBOL vmlinux 0xa41ca712 generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0xa41cd6b5 tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0xa43349f4 xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0xa43b1297 vscnprintf +EXPORT_SYMBOL vmlinux 0xa43b9539 memcpy_fromiovecend +EXPORT_SYMBOL vmlinux 0xa4441d98 rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0xa4701e9e timekeeping_inject_offset +EXPORT_SYMBOL vmlinux 0xa472365e neigh_app_ns +EXPORT_SYMBOL vmlinux 0xa47b4278 scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0xa4b10a1a sock_alloc_file +EXPORT_SYMBOL vmlinux 0xa4f1d024 vm_insert_mixed +EXPORT_SYMBOL vmlinux 0xa4f994d5 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0xa50a111e inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0xa50b1479 dma_async_memcpy_buf_to_pg +EXPORT_SYMBOL vmlinux 0xa530048c dev_change_flags +EXPORT_SYMBOL vmlinux 0xa54b2b15 scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa5683874 jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0xa582cc14 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0xa583175c cdrom_release +EXPORT_SYMBOL vmlinux 0xa58accc8 blk_queue_resize_tags +EXPORT_SYMBOL vmlinux 0xa58fea9d mempool_destroy +EXPORT_SYMBOL vmlinux 0xa598e29c vesa_modes +EXPORT_SYMBOL vmlinux 0xa5b294fd sock_setsockopt +EXPORT_SYMBOL vmlinux 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL vmlinux 0xa6239d6b dev_uc_flush +EXPORT_SYMBOL vmlinux 0xa63516cf snd_ctl_notify +EXPORT_SYMBOL vmlinux 0xa6396768 nf_register_hook +EXPORT_SYMBOL vmlinux 0xa63a2f9b param_get_ulong +EXPORT_SYMBOL vmlinux 0xa63d85ab slhc_remember +EXPORT_SYMBOL vmlinux 0xa64a4cea usb_nop_xceiv_unregister +EXPORT_SYMBOL vmlinux 0xa65fda8b simple_getattr +EXPORT_SYMBOL vmlinux 0xa66792ea snd_card_free_when_closed +EXPORT_SYMBOL vmlinux 0xa6715115 do_settimeofday +EXPORT_SYMBOL vmlinux 0xa675804c utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa690f98f sock_wmalloc +EXPORT_SYMBOL vmlinux 0xa6970398 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0xa69b0848 mmc_add_host +EXPORT_SYMBOL vmlinux 0xa6bab23d dqstats +EXPORT_SYMBOL vmlinux 0xa6dcc886 tty_hangup +EXPORT_SYMBOL vmlinux 0xa700ce59 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0xa706dae8 mount_single +EXPORT_SYMBOL vmlinux 0xa7222143 get_user_pages +EXPORT_SYMBOL vmlinux 0xa7250e82 tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0xa734a3e9 abort_exclusive_wait +EXPORT_SYMBOL vmlinux 0xa735db59 prandom_u32 +EXPORT_SYMBOL vmlinux 0xa73fc98f of_n_addr_cells +EXPORT_SYMBOL vmlinux 0xa758bfca swiotlb_sync_single_for_device +EXPORT_SYMBOL vmlinux 0xa75e5445 dma_alloc_from_coherent +EXPORT_SYMBOL vmlinux 0xa77033a4 skb_append_datato_frags +EXPORT_SYMBOL vmlinux 0xa7708205 tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0xa77a369d idr_init +EXPORT_SYMBOL vmlinux 0xa79ad856 scsi_device_get +EXPORT_SYMBOL vmlinux 0xa7d12abe snd_jack_report +EXPORT_SYMBOL vmlinux 0xa7d7299f vfs_read +EXPORT_SYMBOL vmlinux 0xa7dca01c init_task +EXPORT_SYMBOL vmlinux 0xa7eff10a scsi_print_result +EXPORT_SYMBOL vmlinux 0xa7f9ebd2 alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0xa80460e3 nand_correct_data +EXPORT_SYMBOL vmlinux 0xa808bcb8 vexpress_config_wait +EXPORT_SYMBOL vmlinux 0xa8232c78 strtobool +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa8721b97 system_state +EXPORT_SYMBOL vmlinux 0xa872f5b7 try_to_writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xa878db8e softnet_data +EXPORT_SYMBOL vmlinux 0xa88025bf udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0xa88ae221 dev_set_group +EXPORT_SYMBOL vmlinux 0xa899e966 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0xa89b60ba __genl_register_family +EXPORT_SYMBOL vmlinux 0xa8a6f639 __check_region +EXPORT_SYMBOL vmlinux 0xa8a78809 make_kuid +EXPORT_SYMBOL vmlinux 0xa8a8110c kernel_neon_end +EXPORT_SYMBOL vmlinux 0xa8e291ce set_nlink +EXPORT_SYMBOL vmlinux 0xa8fef7bb security_unix_may_send +EXPORT_SYMBOL vmlinux 0xa92cfc64 __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xa94ce137 of_mdio_find_bus +EXPORT_SYMBOL vmlinux 0xa95524e5 fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0xa9690bfb kill_anon_super +EXPORT_SYMBOL vmlinux 0xa9af76b9 account_page_dirtied +EXPORT_SYMBOL vmlinux 0xa9b63345 of_parse_phandle_with_fixed_args +EXPORT_SYMBOL vmlinux 0xa9e5b771 md_check_recovery +EXPORT_SYMBOL vmlinux 0xa9effda5 __first_cpu +EXPORT_SYMBOL vmlinux 0xa9f019b2 __nla_put +EXPORT_SYMBOL vmlinux 0xaa0f0fa1 udp_proc_unregister +EXPORT_SYMBOL vmlinux 0xaa1f9273 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0xaa2282da mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0xaa4a960b blk_queue_make_request +EXPORT_SYMBOL vmlinux 0xaa6901ac __kfifo_out_r +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa8b9e10 phy_stop +EXPORT_SYMBOL vmlinux 0xaa9087c0 param_ops_string +EXPORT_SYMBOL vmlinux 0xaab0125e snd_ctl_find_numid +EXPORT_SYMBOL vmlinux 0xaac9f139 skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab0d2a96 d_path +EXPORT_SYMBOL vmlinux 0xab2086c4 lookup_one_len +EXPORT_SYMBOL vmlinux 0xab211c43 snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL vmlinux 0xab5aac54 migrate_page +EXPORT_SYMBOL vmlinux 0xab600421 probe_irq_off +EXPORT_SYMBOL vmlinux 0xab694444 bsearch +EXPORT_SYMBOL vmlinux 0xab6bde28 sysctl_max_syn_backlog +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab9a756b truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0xabc6dd63 cpufreq_sysfs_create_file +EXPORT_SYMBOL vmlinux 0xabcaa577 free_anon_bdev +EXPORT_SYMBOL vmlinux 0xabd0c91c rtc_time_to_tm +EXPORT_SYMBOL vmlinux 0xabd99e8e arm_dma_ops +EXPORT_SYMBOL vmlinux 0xabf4994b nobh_truncate_page +EXPORT_SYMBOL vmlinux 0xac011c66 md_error +EXPORT_SYMBOL vmlinux 0xac0ba8c1 blk_iopoll_disable +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac1b823a snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL vmlinux 0xac2058a8 twl6040_set_pll +EXPORT_SYMBOL vmlinux 0xac390091 dev_base_lock +EXPORT_SYMBOL vmlinux 0xac3c3f69 dquot_quota_off +EXPORT_SYMBOL vmlinux 0xac4847c3 make_kgid +EXPORT_SYMBOL vmlinux 0xac6a0a7a key_payload_reserve +EXPORT_SYMBOL vmlinux 0xac7ac144 tcf_exts_dump +EXPORT_SYMBOL vmlinux 0xac8242bd of_phy_connect_fixed_link +EXPORT_SYMBOL vmlinux 0xac89b49a find_get_pages_tag +EXPORT_SYMBOL vmlinux 0xac8f37b2 outer_cache +EXPORT_SYMBOL vmlinux 0xaca795f0 vfs_mkdir +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacc237c0 bio_copy_data +EXPORT_SYMBOL vmlinux 0xaccabc6a in4_pton +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad3bd808 elv_rb_former_request +EXPORT_SYMBOL vmlinux 0xad46dec2 of_count_phandle_with_args +EXPORT_SYMBOL vmlinux 0xad60ae01 inet6_bind +EXPORT_SYMBOL vmlinux 0xad66a994 unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xad703bc9 __frontswap_store +EXPORT_SYMBOL vmlinux 0xad7107f2 snd_timer_notify +EXPORT_SYMBOL vmlinux 0xad835b28 tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xada0cf92 km_new_mapping +EXPORT_SYMBOL vmlinux 0xadac460a contig_page_data +EXPORT_SYMBOL vmlinux 0xadacc0e7 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0xade07621 dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0xade5245c give_up_console +EXPORT_SYMBOL vmlinux 0xade88e76 snd_malloc_pages +EXPORT_SYMBOL vmlinux 0xadf06e60 textsearch_prepare +EXPORT_SYMBOL vmlinux 0xae156134 kern_path +EXPORT_SYMBOL vmlinux 0xae211ba9 skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0xae47a0cb simple_transaction_get +EXPORT_SYMBOL vmlinux 0xae4f0783 inode_init_owner +EXPORT_SYMBOL vmlinux 0xae5ec2db led_blink_set +EXPORT_SYMBOL vmlinux 0xae729e59 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xae8c1b09 __neigh_event_send +EXPORT_SYMBOL vmlinux 0xae94173b tty_unregister_driver +EXPORT_SYMBOL vmlinux 0xaec655c7 alloc_pages_exact +EXPORT_SYMBOL vmlinux 0xaefa5393 scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0xaf05b91b of_device_is_available +EXPORT_SYMBOL vmlinux 0xaf0a800b proc_set_user +EXPORT_SYMBOL vmlinux 0xaf0ca537 tty_port_tty_set +EXPORT_SYMBOL vmlinux 0xaf22c98a crypto_sha1_update +EXPORT_SYMBOL vmlinux 0xaf268e5f from_kgid_munged +EXPORT_SYMBOL vmlinux 0xaf2dbbcd __ethtool_get_settings +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf48f0bf devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0xaf50e76d elf_set_personality +EXPORT_SYMBOL vmlinux 0xaf64ad0d zlib_deflate +EXPORT_SYMBOL vmlinux 0xaf74933f scsi_dma_map +EXPORT_SYMBOL vmlinux 0xaf8aa518 system_rev +EXPORT_SYMBOL vmlinux 0xaf91d89f __kernel_param_lock +EXPORT_SYMBOL vmlinux 0xafad493b param_ops_ushort +EXPORT_SYMBOL vmlinux 0xafad52cf sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xafc05fae skb_pull +EXPORT_SYMBOL vmlinux 0xaff16f9f ppp_unit_number +EXPORT_SYMBOL vmlinux 0xb04cf0fe lg_local_unlock +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb07ba445 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0xb07e4262 rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0xb0949437 bio_add_page +EXPORT_SYMBOL vmlinux 0xb09f7386 skb_copy_datagram_const_iovec +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0a9ccbf scsi_mode_sense +EXPORT_SYMBOL vmlinux 0xb0b847ac __bitmap_full +EXPORT_SYMBOL vmlinux 0xb0dbebd4 fb_set_cmap +EXPORT_SYMBOL vmlinux 0xb0dee1e8 try_module_get +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0ff2c06 udp_del_offload +EXPORT_SYMBOL vmlinux 0xb0ffda2f blk_limits_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xb121390a probe_irq_on +EXPORT_SYMBOL vmlinux 0xb12badf1 default_file_splice_read +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb1304bfe of_gpio_simple_xlate +EXPORT_SYMBOL vmlinux 0xb1475b5d inet_add_protocol +EXPORT_SYMBOL vmlinux 0xb1500226 fput +EXPORT_SYMBOL vmlinux 0xb1645a2e sg_free_table +EXPORT_SYMBOL vmlinux 0xb19241f9 __dev_get_by_index +EXPORT_SYMBOL vmlinux 0xb19760c3 bitmap_onto +EXPORT_SYMBOL vmlinux 0xb19cf881 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0xb1be08fc dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1c42965 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0xb1cf44df fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xb1d9aabd lg_local_unlock_cpu +EXPORT_SYMBOL vmlinux 0xb1db9e4e param_get_invbool +EXPORT_SYMBOL vmlinux 0xb20eec30 input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0xb212cd02 gen10g_resume +EXPORT_SYMBOL vmlinux 0xb2434d75 tcf_hash_release +EXPORT_SYMBOL vmlinux 0xb258dfa7 nand_scan_ident +EXPORT_SYMBOL vmlinux 0xb25e1451 vfs_rmdir +EXPORT_SYMBOL vmlinux 0xb2615248 tcp_init_sock +EXPORT_SYMBOL vmlinux 0xb2637ce7 blk_queue_free_tags +EXPORT_SYMBOL vmlinux 0xb2682405 utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0xb26aa96e scsi_release_buffers +EXPORT_SYMBOL vmlinux 0xb26e16ce twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0xb2a524a9 ata_print_version +EXPORT_SYMBOL vmlinux 0xb2af202c scsi_remove_target +EXPORT_SYMBOL vmlinux 0xb2b94674 __crc32c_le +EXPORT_SYMBOL vmlinux 0xb2be6e92 netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xb2d48a2e queue_work_on +EXPORT_SYMBOL vmlinux 0xb2d4b1a8 arm_dma_zone_size +EXPORT_SYMBOL vmlinux 0xb2dc2728 netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0xb2dfa0a5 ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL vmlinux 0xb3001980 phy_attach +EXPORT_SYMBOL vmlinux 0xb321e5b2 d_splice_alias +EXPORT_SYMBOL vmlinux 0xb3405978 sock_create +EXPORT_SYMBOL vmlinux 0xb3586dea nand_bch_correct_data +EXPORT_SYMBOL vmlinux 0xb35ec645 input_set_keycode +EXPORT_SYMBOL vmlinux 0xb3628ce2 single_open_size +EXPORT_SYMBOL vmlinux 0xb3a7803a bio_get_nr_vecs +EXPORT_SYMBOL vmlinux 0xb3ae22ea genl_notify +EXPORT_SYMBOL vmlinux 0xb3c60563 lock_sock_fast +EXPORT_SYMBOL vmlinux 0xb3daacaf vfs_setpos +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb3fca4b1 tcf_hash_search +EXPORT_SYMBOL vmlinux 0xb41d392b generic_permission +EXPORT_SYMBOL vmlinux 0xb422b2ae security_dentry_init_security +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb4311d19 build_skb +EXPORT_SYMBOL vmlinux 0xb4390999 of_device_alloc +EXPORT_SYMBOL vmlinux 0xb43a39c8 tty_write_room +EXPORT_SYMBOL vmlinux 0xb45de0fb kernel_sendpage +EXPORT_SYMBOL vmlinux 0xb46af1a7 blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0xb4709322 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0xb49928cf do_SAK +EXPORT_SYMBOL vmlinux 0xb499735d sock_no_shutdown +EXPORT_SYMBOL vmlinux 0xb4b94377 __nand_correct_data +EXPORT_SYMBOL vmlinux 0xb4e48487 sock_no_getname +EXPORT_SYMBOL vmlinux 0xb4fbff5f scsi_device_resume +EXPORT_SYMBOL vmlinux 0xb5198b77 _raw_read_lock +EXPORT_SYMBOL vmlinux 0xb540114c xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0xb54533f7 usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb596672b inet_addr_type +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5b8c891 alloc_disk +EXPORT_SYMBOL vmlinux 0xb5be9666 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xb5c00014 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0xb5ca1c46 slhc_free +EXPORT_SYMBOL vmlinux 0xb5cd1691 vexpress_config_complete +EXPORT_SYMBOL vmlinux 0xb5d9454c printk_emit +EXPORT_SYMBOL vmlinux 0xb5fc56c5 cdev_alloc +EXPORT_SYMBOL vmlinux 0xb60f2a8c sys_copyarea +EXPORT_SYMBOL vmlinux 0xb623170e udp_lib_get_port +EXPORT_SYMBOL vmlinux 0xb6244511 sg_init_one +EXPORT_SYMBOL vmlinux 0xb6394d4b param_set_bint +EXPORT_SYMBOL vmlinux 0xb64db69b dev_add_pack +EXPORT_SYMBOL vmlinux 0xb6587a8b snd_pcm_period_elapsed +EXPORT_SYMBOL vmlinux 0xb6672ee8 jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb6822a33 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0xb6896671 crc_t10dif +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6adaab0 blk_end_request +EXPORT_SYMBOL vmlinux 0xb6b46a7c param_ops_int +EXPORT_SYMBOL vmlinux 0xb6bc1374 blk_queue_end_tag +EXPORT_SYMBOL vmlinux 0xb6c5a973 scsi_show_result +EXPORT_SYMBOL vmlinux 0xb6dadaf1 cleancache_register_ops +EXPORT_SYMBOL vmlinux 0xb6fc6b1c ptp_clock_unregister +EXPORT_SYMBOL vmlinux 0xb70ec727 sock_i_uid +EXPORT_SYMBOL vmlinux 0xb726abca __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xb72b12d7 console_stop +EXPORT_SYMBOL vmlinux 0xb74ca984 d_invalidate +EXPORT_SYMBOL vmlinux 0xb75d7885 pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0xb7609bb6 qdisc_tree_decrease_qlen +EXPORT_SYMBOL vmlinux 0xb76e8cbf scsi_cmd_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xb77131b1 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0xb78a2b56 blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0xb7924c44 __put_cred +EXPORT_SYMBOL vmlinux 0xb7af0767 kill_fasync +EXPORT_SYMBOL vmlinux 0xb7b61546 crc32_be +EXPORT_SYMBOL vmlinux 0xb7b89b98 mmc_release_host +EXPORT_SYMBOL vmlinux 0xb7ba76c7 __aeabi_unwind_cpp_pr2 +EXPORT_SYMBOL vmlinux 0xb7db4c3e dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0xb8038570 tcf_em_unregister +EXPORT_SYMBOL vmlinux 0xb8192c22 pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0xb81960ca snprintf +EXPORT_SYMBOL vmlinux 0xb835b3e4 radix_tree_prev_hole +EXPORT_SYMBOL vmlinux 0xb874b87a __clzsi2 +EXPORT_SYMBOL vmlinux 0xb878487d nf_log_set +EXPORT_SYMBOL vmlinux 0xb887057d pm860x_set_bits +EXPORT_SYMBOL vmlinux 0xb8a4a9c4 scsi_host_get +EXPORT_SYMBOL vmlinux 0xb8b46720 try_to_release_page +EXPORT_SYMBOL vmlinux 0xb8d73e97 param_set_uint +EXPORT_SYMBOL vmlinux 0xb8d915be dquot_commit_info +EXPORT_SYMBOL vmlinux 0xb8da094c kvm_read_guest_atomic +EXPORT_SYMBOL vmlinux 0xb8e877e7 kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xb8fb7e3e sock_release +EXPORT_SYMBOL vmlinux 0xb90bc32a PDE_DATA +EXPORT_SYMBOL vmlinux 0xb90d4424 i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0xb911dd36 scsi_nonblockable_ioctl +EXPORT_SYMBOL vmlinux 0xb9150b6f unregister_cdrom +EXPORT_SYMBOL vmlinux 0xb921cae3 vfs_statfs +EXPORT_SYMBOL vmlinux 0xb9322d7f module_put +EXPORT_SYMBOL vmlinux 0xb938e932 jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0xb939ce1d sk_filter +EXPORT_SYMBOL vmlinux 0xb95f98d6 _memset_io +EXPORT_SYMBOL vmlinux 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL vmlinux 0xb98a0185 rtc_tm_to_time +EXPORT_SYMBOL vmlinux 0xb98b9f68 qdisc_destroy +EXPORT_SYMBOL vmlinux 0xb98dd9a6 blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0xb9acd3d9 __put_user_2 +EXPORT_SYMBOL vmlinux 0xb9c70522 __ps2_command +EXPORT_SYMBOL vmlinux 0xb9d3a487 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xba436baf from_kprojid_munged +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba6eee1b phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0xba7fbc36 bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0xbaca004d block_write_full_page_endio +EXPORT_SYMBOL vmlinux 0xbaf70b81 dm_get_mapinfo +EXPORT_SYMBOL vmlinux 0xbb0716a3 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0xbb127a3a dma_declare_coherent_memory +EXPORT_SYMBOL vmlinux 0xbb189cad disallow_signal +EXPORT_SYMBOL vmlinux 0xbb39f9e2 phy_attach_direct +EXPORT_SYMBOL vmlinux 0xbb4921a0 dump_emit +EXPORT_SYMBOL vmlinux 0xbb56ee3e serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0xbb5a26dd generic_make_request +EXPORT_SYMBOL vmlinux 0xbb5d343d xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xbb713e6d sk_filter_release_rcu +EXPORT_SYMBOL vmlinux 0xbb7179b6 __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0xbb72d4fe __put_user_1 +EXPORT_SYMBOL vmlinux 0xbb75ee4c alloc_disk_node +EXPORT_SYMBOL vmlinux 0xbb99125c get_default_font +EXPORT_SYMBOL vmlinux 0xbb9e4d98 uart_register_driver +EXPORT_SYMBOL vmlinux 0xbba01809 xfrm_garbage_collect +EXPORT_SYMBOL vmlinux 0xbbda0861 blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0xbc10d2b7 kthread_stop +EXPORT_SYMBOL vmlinux 0xbc10dd97 __put_user_4 +EXPORT_SYMBOL vmlinux 0xbc586024 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0xbc721463 blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0xbc730943 ps2_init +EXPORT_SYMBOL vmlinux 0xbcbbdc18 fb_set_var +EXPORT_SYMBOL vmlinux 0xbcc18b04 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbcc47194 of_find_device_by_node +EXPORT_SYMBOL vmlinux 0xbcdcdcfa textsearch_unregister +EXPORT_SYMBOL vmlinux 0xbcdedba7 of_get_mac_address +EXPORT_SYMBOL vmlinux 0xbce8a632 tcp_proto_cgroup +EXPORT_SYMBOL vmlinux 0xbd0b1a64 posix_lock_file +EXPORT_SYMBOL vmlinux 0xbd0d7947 force_sig +EXPORT_SYMBOL vmlinux 0xbd12eeea skb_queue_head +EXPORT_SYMBOL vmlinux 0xbd14dd1d kmap_atomic +EXPORT_SYMBOL vmlinux 0xbd40b401 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0xbd5b4948 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0xbd6bc10f simple_statfs +EXPORT_SYMBOL vmlinux 0xbd8b2bbe __quota_error +EXPORT_SYMBOL vmlinux 0xbd96c85a vexpress_config_write +EXPORT_SYMBOL vmlinux 0xbd9c0c05 blk_init_tags +EXPORT_SYMBOL vmlinux 0xbdac1eb7 lockref_get +EXPORT_SYMBOL vmlinux 0xbdba9828 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0xbdc6051d fsnotify_get_group +EXPORT_SYMBOL vmlinux 0xbde930f7 open_exec +EXPORT_SYMBOL vmlinux 0xbdedb6b2 irq_stat +EXPORT_SYMBOL vmlinux 0xbdf2580d __raw_readsl +EXPORT_SYMBOL vmlinux 0xbdff60c3 scsi_is_target_device +EXPORT_SYMBOL vmlinux 0xbe06d2da jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0xbe0e5118 nla_memcmp +EXPORT_SYMBOL vmlinux 0xbe174b50 clear_bdi_congested +EXPORT_SYMBOL vmlinux 0xbe2c0274 add_timer +EXPORT_SYMBOL vmlinux 0xbe4dca9c security_path_chown +EXPORT_SYMBOL vmlinux 0xbe554c7c __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0xbe574be4 write_one_page +EXPORT_SYMBOL vmlinux 0xbe5ab730 unregister_console +EXPORT_SYMBOL vmlinux 0xbe8a99eb skb_store_bits +EXPORT_SYMBOL vmlinux 0xbeb9eeea scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0xbec25473 of_parse_phandle +EXPORT_SYMBOL vmlinux 0xbee90f2f __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0xbeee1be0 nf_log_unset +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbef81f74 fb_find_mode +EXPORT_SYMBOL vmlinux 0xbef85697 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0xbf1a51b3 devm_free_irq +EXPORT_SYMBOL vmlinux 0xbf3ce305 nf_log_packet +EXPORT_SYMBOL vmlinux 0xbf540023 __generic_file_aio_write +EXPORT_SYMBOL vmlinux 0xbf5588a9 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0xbf7fd2f5 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0xbf8ba54a vprintk +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfab68a4 seq_bitmap_list +EXPORT_SYMBOL vmlinux 0xbfbea970 genphy_update_link +EXPORT_SYMBOL vmlinux 0xbfe62e5d generic_file_splice_read +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xbff2b56f lock_rename +EXPORT_SYMBOL vmlinux 0xbffe0f71 find_get_page +EXPORT_SYMBOL vmlinux 0xc003564b scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xc0050913 icmp_send +EXPORT_SYMBOL vmlinux 0xc0056be5 _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0xc02cb015 jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0xc02cf69b clkdev_drop +EXPORT_SYMBOL vmlinux 0xc038750a mb_cache_create +EXPORT_SYMBOL vmlinux 0xc0490d6c twl6040_get_pll +EXPORT_SYMBOL vmlinux 0xc0528cf4 netpoll_cleanup +EXPORT_SYMBOL vmlinux 0xc068440e __kfifo_alloc +EXPORT_SYMBOL vmlinux 0xc075342e __secpath_destroy +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc07dcb78 of_mm_gpiochip_add +EXPORT_SYMBOL vmlinux 0xc0823e4c twl_i2c_write +EXPORT_SYMBOL vmlinux 0xc0a533e0 __skb_get_rxhash +EXPORT_SYMBOL vmlinux 0xc0a98385 profile_pc +EXPORT_SYMBOL vmlinux 0xc0aff7ae inode_add_rsv_space +EXPORT_SYMBOL vmlinux 0xc0bd3ab9 wait_on_sync_kiocb +EXPORT_SYMBOL vmlinux 0xc0d398f1 dm_register_target +EXPORT_SYMBOL vmlinux 0xc0df3655 cap_mmap_file +EXPORT_SYMBOL vmlinux 0xc114fb1d bdi_unregister +EXPORT_SYMBOL vmlinux 0xc12ec3a6 dns_query +EXPORT_SYMBOL vmlinux 0xc141e185 get_tz_trend +EXPORT_SYMBOL vmlinux 0xc14ea843 read_cache_page_async +EXPORT_SYMBOL vmlinux 0xc152d9db dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0xc16de92c bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0xc1742292 d_instantiate_no_diralias +EXPORT_SYMBOL vmlinux 0xc192d81c tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0xc1b82d22 register_shrinker +EXPORT_SYMBOL vmlinux 0xc1bf4ef1 tcp_syn_flood_action +EXPORT_SYMBOL vmlinux 0xc1c2dd09 __hw_addr_flush +EXPORT_SYMBOL vmlinux 0xc205f712 elv_rb_del +EXPORT_SYMBOL vmlinux 0xc20977ed find_vma +EXPORT_SYMBOL vmlinux 0xc2165d85 __arm_iounmap +EXPORT_SYMBOL vmlinux 0xc224ae18 vm_iomap_memory +EXPORT_SYMBOL vmlinux 0xc22cf74b dst_discard +EXPORT_SYMBOL vmlinux 0xc233a943 clk_add_alias +EXPORT_SYMBOL vmlinux 0xc2446107 udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0xc2464085 amba_driver_unregister +EXPORT_SYMBOL vmlinux 0xc249fe16 blk_queue_init_tags +EXPORT_SYMBOL vmlinux 0xc2515cca dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0xc256e762 __bitmap_equal +EXPORT_SYMBOL vmlinux 0xc25e9f45 sg_miter_stop +EXPORT_SYMBOL vmlinux 0xc286c081 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0xc2ab047b bioset_free +EXPORT_SYMBOL vmlinux 0xc2ac0c5e dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0xc2aecd48 blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0xc2c9d6f6 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0xc2d711e1 krealloc +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2f9c045 timespec_to_jiffies +EXPORT_SYMBOL vmlinux 0xc30d1fa2 unlock_new_inode +EXPORT_SYMBOL vmlinux 0xc359fb65 abort +EXPORT_SYMBOL vmlinux 0xc35bf949 kmap_to_page +EXPORT_SYMBOL vmlinux 0xc35ed4fb skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0xc371ce5d input_register_device +EXPORT_SYMBOL vmlinux 0xc39a321f jbd2_journal_load +EXPORT_SYMBOL vmlinux 0xc3f425f2 seq_open_private +EXPORT_SYMBOL vmlinux 0xc41f0516 node_states +EXPORT_SYMBOL vmlinux 0xc47a9c0d of_phy_connect +EXPORT_SYMBOL vmlinux 0xc48cfd9d blk_rq_map_user +EXPORT_SYMBOL vmlinux 0xc499ae1e kstrdup +EXPORT_SYMBOL vmlinux 0xc49f2938 bitmap_unplug +EXPORT_SYMBOL vmlinux 0xc4ce873a sb_set_blocksize +EXPORT_SYMBOL vmlinux 0xc4df67c8 kmem_cache_create +EXPORT_SYMBOL vmlinux 0xc4ebcbbd generic_file_mmap +EXPORT_SYMBOL vmlinux 0xc5200ae6 __skb_tx_hash +EXPORT_SYMBOL vmlinux 0xc5639b85 inode_init_always +EXPORT_SYMBOL vmlinux 0xc5658c40 create_syslog_header +EXPORT_SYMBOL vmlinux 0xc589e044 param_set_long +EXPORT_SYMBOL vmlinux 0xc5919c93 snd_pcm_hw_rule_noresample +EXPORT_SYMBOL vmlinux 0xc59ecebc unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0xc5e2db3f scsi_cmd_get_serial +EXPORT_SYMBOL vmlinux 0xc5ec54fd poll_freewait +EXPORT_SYMBOL vmlinux 0xc5fdef94 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xc6090d93 release_sock +EXPORT_SYMBOL vmlinux 0xc62256d3 neigh_compat_output +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc637407d bmap +EXPORT_SYMBOL vmlinux 0xc65692b7 blk_mq_can_queue +EXPORT_SYMBOL vmlinux 0xc665d6d7 of_parse_phandle_with_args +EXPORT_SYMBOL vmlinux 0xc681adc7 inode_permission +EXPORT_SYMBOL vmlinux 0xc69df2a4 xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0xc6bf0338 tty_free_termios +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc704287c ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc725555b of_get_min_tck +EXPORT_SYMBOL vmlinux 0xc738e5dc snd_timer_continue +EXPORT_SYMBOL vmlinux 0xc7481148 dget_parent +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc78b830b __scsi_put_command +EXPORT_SYMBOL vmlinux 0xc78ca30e nf_log_unregister +EXPORT_SYMBOL vmlinux 0xc792d03c mmc_gpio_free_cd +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7acfec4 send_sig_info +EXPORT_SYMBOL vmlinux 0xc7bcbc8d add_wait_queue +EXPORT_SYMBOL vmlinux 0xc7bfdce7 vfs_unlink +EXPORT_SYMBOL vmlinux 0xc7d19c69 simple_pin_fs +EXPORT_SYMBOL vmlinux 0xc7ec6c27 strspn +EXPORT_SYMBOL vmlinux 0xc8042ce9 netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0xc8096351 directly_mappable_cdev_bdi +EXPORT_SYMBOL vmlinux 0xc80b90ee snd_ctl_make_virtual_master +EXPORT_SYMBOL vmlinux 0xc8135c65 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0xc8276a79 nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xc8339e24 string_unescape +EXPORT_SYMBOL vmlinux 0xc83b4d5b posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc873d838 snd_seq_root +EXPORT_SYMBOL vmlinux 0xc897c382 sg_init_table +EXPORT_SYMBOL vmlinux 0xc89a97bd arp_tbl +EXPORT_SYMBOL vmlinux 0xc8ac6cf3 vlan_uses_dev +EXPORT_SYMBOL vmlinux 0xc8b57c27 autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xc8ce6695 skb_seq_read +EXPORT_SYMBOL vmlinux 0xc9011cab kernel_connect +EXPORT_SYMBOL vmlinux 0xc923c420 ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0xc92d8bd0 address_space_init_once +EXPORT_SYMBOL vmlinux 0xc95fad4f bdput +EXPORT_SYMBOL vmlinux 0xc9625a50 put_io_context +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc9822c05 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0xc98b8b7b put_tty_driver +EXPORT_SYMBOL vmlinux 0xc98d4ceb neigh_ifdown +EXPORT_SYMBOL vmlinux 0xc996d097 del_timer +EXPORT_SYMBOL vmlinux 0xc99e2a55 twl_rev +EXPORT_SYMBOL vmlinux 0xc9a155e6 sock_no_sendpage +EXPORT_SYMBOL vmlinux 0xc9bbb713 vexpress_config_bridge_register +EXPORT_SYMBOL vmlinux 0xc9bd9782 ptp_clock_index +EXPORT_SYMBOL vmlinux 0xc9cd54a5 keyring_alloc +EXPORT_SYMBOL vmlinux 0xc9dde8cd page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0xc9e92cc0 __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0xc9fa6800 tcp_make_synack +EXPORT_SYMBOL vmlinux 0xca3efc73 km_query +EXPORT_SYMBOL vmlinux 0xca47cdcd jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0xca48ae1c cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0xca53ac99 iget_locked +EXPORT_SYMBOL vmlinux 0xca54c0f0 bio_advance +EXPORT_SYMBOL vmlinux 0xca5dbc50 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xca87dbff iterate_dir +EXPORT_SYMBOL vmlinux 0xca8fbfa5 sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xcabd3ed7 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0xcad89655 scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0xcaf54569 inet_sendmsg +EXPORT_SYMBOL vmlinux 0xcb011020 put_page +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb057371 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0xcb0c5d50 param_get_uint +EXPORT_SYMBOL vmlinux 0xcb127e20 swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0xcb1a12e4 __destroy_inode +EXPORT_SYMBOL vmlinux 0xcb222f46 __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0xcb3a6e6e dcache_dir_close +EXPORT_SYMBOL vmlinux 0xcb42131d snd_pcm_open_substream +EXPORT_SYMBOL vmlinux 0xcb466063 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0xcb4fc9a0 kfree_skb +EXPORT_SYMBOL vmlinux 0xcb5717b1 blk_mq_run_queues +EXPORT_SYMBOL vmlinux 0xcb794d01 bio_add_pc_page +EXPORT_SYMBOL vmlinux 0xcb7d549d do_splice_to +EXPORT_SYMBOL vmlinux 0xcbbf0a6f audit_log_task_context +EXPORT_SYMBOL vmlinux 0xcbc9557f unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0xcbd77f56 brioctl_set +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc37f55c blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0xcc4b84da of_find_node_by_type +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc508a02 mount_subtree +EXPORT_SYMBOL vmlinux 0xcc6f4b9e __block_page_mkwrite +EXPORT_SYMBOL vmlinux 0xcc7b2261 nla_put_nohdr +EXPORT_SYMBOL vmlinux 0xcc7fa952 local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0xcc88a356 tcf_exts_change +EXPORT_SYMBOL vmlinux 0xcca65f6b snd_dma_alloc_pages +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccccfe14 i2c_use_client +EXPORT_SYMBOL vmlinux 0xccdde4b1 from_kprojid +EXPORT_SYMBOL vmlinux 0xcd0d9c19 scsi_is_host_device +EXPORT_SYMBOL vmlinux 0xcd2395e8 mmc_power_restore_host +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd30b95a tmio_core_mmc_clk_div +EXPORT_SYMBOL vmlinux 0xcd63c845 __aeabi_lasr +EXPORT_SYMBOL vmlinux 0xcd649d53 follow_up +EXPORT_SYMBOL vmlinux 0xcd756fab phy_ethtool_sset +EXPORT_SYMBOL vmlinux 0xcd869309 dquot_quota_sync +EXPORT_SYMBOL vmlinux 0xcdb35959 tcp_splice_read +EXPORT_SYMBOL vmlinux 0xcdb93ba3 __devm_release_region +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcde172ac radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0xce225c0b abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce3ca308 copy_from_user_toio +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce9d0579 inode_change_ok +EXPORT_SYMBOL vmlinux 0xcea4f50b udp_poll +EXPORT_SYMBOL vmlinux 0xcea6632e padata_add_cpu +EXPORT_SYMBOL vmlinux 0xcea6e17a page_address +EXPORT_SYMBOL vmlinux 0xced41dd6 snd_pcm_link_rwlock +EXPORT_SYMBOL vmlinux 0xceed7f85 _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xcef51982 kstrtou16 +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf0d0a7c try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xcf15762b dev_warn +EXPORT_SYMBOL vmlinux 0xcf3d3993 audit_log +EXPORT_SYMBOL vmlinux 0xcf41f567 max8998_update_reg +EXPORT_SYMBOL vmlinux 0xcf4240f4 bprm_change_interp +EXPORT_SYMBOL vmlinux 0xcf434e2f kblockd_schedule_delayed_work +EXPORT_SYMBOL vmlinux 0xcf53928c devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0xcf7b130f d_set_d_op +EXPORT_SYMBOL vmlinux 0xcf88625f mempool_create_node +EXPORT_SYMBOL vmlinux 0xcf8e0618 rt6_lookup +EXPORT_SYMBOL vmlinux 0xcf90324a ipv4_specific +EXPORT_SYMBOL vmlinux 0xcf93339e netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0xcf95e34e fs_bio_set +EXPORT_SYMBOL vmlinux 0xcfb9d481 ppp_channel_index +EXPORT_SYMBOL vmlinux 0xcfd59c26 vmap +EXPORT_SYMBOL vmlinux 0xcfdc643a nonseekable_open +EXPORT_SYMBOL vmlinux 0xcfeed446 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0xcff1dc6c snd_pcm_hw_param_first +EXPORT_SYMBOL vmlinux 0xcff6b676 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0xcffdd4ec phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0xd00cb81f unload_nls +EXPORT_SYMBOL vmlinux 0xd0157fc2 blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0xd0181f4f __bitmap_xor +EXPORT_SYMBOL vmlinux 0xd0510211 sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0xd0720a17 on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xd07240fc tcf_unregister_action +EXPORT_SYMBOL vmlinux 0xd07c2861 bio_put +EXPORT_SYMBOL vmlinux 0xd08c1d3a fsnotify_init_mark +EXPORT_SYMBOL vmlinux 0xd09068c8 dquot_drop +EXPORT_SYMBOL vmlinux 0xd0a6ffc3 kernel_bind +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0d009b6 seq_puts +EXPORT_SYMBOL vmlinux 0xd0d42c42 mod_timer_pending +EXPORT_SYMBOL vmlinux 0xd0e43207 usb_nop_xceiv_register +EXPORT_SYMBOL vmlinux 0xd0ee38b8 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0xd0f36f0d audit_log_format +EXPORT_SYMBOL vmlinux 0xd0fb7cd4 __tasklet_hi_schedule_first +EXPORT_SYMBOL vmlinux 0xd100acbd _raw_write_lock +EXPORT_SYMBOL vmlinux 0xd10565a7 snd_pcm_hw_rule_add +EXPORT_SYMBOL vmlinux 0xd105f050 d_add_ci +EXPORT_SYMBOL vmlinux 0xd11a04ef ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0xd11c0dc1 __kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xd12950de blk_get_backing_dev_info +EXPORT_SYMBOL vmlinux 0xd13adb01 do_sync_write +EXPORT_SYMBOL vmlinux 0xd15bc118 ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd196c9be kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xd1b1c955 ip_setsockopt +EXPORT_SYMBOL vmlinux 0xd1b1f03b simple_map_init +EXPORT_SYMBOL vmlinux 0xd1d7753f tcp_shutdown +EXPORT_SYMBOL vmlinux 0xd216a669 ip_options_compile +EXPORT_SYMBOL vmlinux 0xd220cf8a jiffies_to_timespec +EXPORT_SYMBOL vmlinux 0xd223e6b4 ipmi_smi_add_proc_entry +EXPORT_SYMBOL vmlinux 0xd23b2af5 tty_port_close +EXPORT_SYMBOL vmlinux 0xd23f0c3f input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0xd251d7b0 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0xd2555f19 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xd257d354 scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd27d5b0f override_creds +EXPORT_SYMBOL vmlinux 0xd29381dd xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0xd2991752 blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0xd2a1c27d tcp_gso_segment +EXPORT_SYMBOL vmlinux 0xd2a9dd18 ipmi_get_smi_info +EXPORT_SYMBOL vmlinux 0xd2af138b reservation_ww_class +EXPORT_SYMBOL vmlinux 0xd2b47c82 nf_unregister_hook +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd31ccb06 of_machine_is_compatible +EXPORT_SYMBOL vmlinux 0xd31e9f12 xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0xd31f7b64 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0xd391df71 blk_requeue_request +EXPORT_SYMBOL vmlinux 0xd3bb4dc0 blk_init_queue_node +EXPORT_SYMBOL vmlinux 0xd3dbfbc4 _find_first_zero_bit_le +EXPORT_SYMBOL vmlinux 0xd3dcab0b flex_array_alloc +EXPORT_SYMBOL vmlinux 0xd3e6f60d cpu_possible_mask +EXPORT_SYMBOL vmlinux 0xd3ec2321 tty_port_close_start +EXPORT_SYMBOL vmlinux 0xd3fc0134 read_code +EXPORT_SYMBOL vmlinux 0xd4065720 tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0xd40d0257 __skb_checksum +EXPORT_SYMBOL vmlinux 0xd4109cf1 security_path_link +EXPORT_SYMBOL vmlinux 0xd418d867 __dst_free +EXPORT_SYMBOL vmlinux 0xd4420655 snd_timer_stop +EXPORT_SYMBOL vmlinux 0xd44cd161 snd_ctl_find_id +EXPORT_SYMBOL vmlinux 0xd4669fad complete +EXPORT_SYMBOL vmlinux 0xd47b48de max8925_reg_write +EXPORT_SYMBOL vmlinux 0xd509706f ipv6_select_ident +EXPORT_SYMBOL vmlinux 0xd50cc114 revert_creds +EXPORT_SYMBOL vmlinux 0xd50cde3b devm_ioremap +EXPORT_SYMBOL vmlinux 0xd52019a3 jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0xd549c38e lock_may_write +EXPORT_SYMBOL vmlinux 0xd55451d8 __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xd561b751 pagevec_lookup_tag +EXPORT_SYMBOL vmlinux 0xd583cc71 xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0xd59d5fb8 clear_inode +EXPORT_SYMBOL vmlinux 0xd5b72b52 phy_device_free +EXPORT_SYMBOL vmlinux 0xd5c5ff75 inet_frags_init_net +EXPORT_SYMBOL vmlinux 0xd5d267f4 bio_split +EXPORT_SYMBOL vmlinux 0xd5d52510 unregister_exec_domain +EXPORT_SYMBOL vmlinux 0xd5d5710d neigh_seq_start +EXPORT_SYMBOL vmlinux 0xd5d9bc4b snd_ctl_new1 +EXPORT_SYMBOL vmlinux 0xd5f2172f del_timer_sync +EXPORT_SYMBOL vmlinux 0xd5f416fa kern_path_create +EXPORT_SYMBOL vmlinux 0xd606b27b skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0xd61347c6 register_sysctl +EXPORT_SYMBOL vmlinux 0xd616683a ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0xd6180f08 kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0xd627480b strncat +EXPORT_SYMBOL vmlinux 0xd62c833f schedule_timeout +EXPORT_SYMBOL vmlinux 0xd6352db9 netdev_alert +EXPORT_SYMBOL vmlinux 0xd648e564 fb_match_mode +EXPORT_SYMBOL vmlinux 0xd6530098 scsi_device_put +EXPORT_SYMBOL vmlinux 0xd659bf8e __nlmsg_put +EXPORT_SYMBOL vmlinux 0xd65e249e blk_init_queue +EXPORT_SYMBOL vmlinux 0xd67d6c95 d_prune_aliases +EXPORT_SYMBOL vmlinux 0xd683c0ff netlink_set_err +EXPORT_SYMBOL vmlinux 0xd687a89f skb_orphan_partial +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd6979b9a seq_release +EXPORT_SYMBOL vmlinux 0xd6a5edea mpage_writepages +EXPORT_SYMBOL vmlinux 0xd6c06e39 mmc_can_sanitize +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd72de6ef prepare_binprm +EXPORT_SYMBOL vmlinux 0xd7321c6a gen_pool_add_virt +EXPORT_SYMBOL vmlinux 0xd74289f9 __percpu_counter_add +EXPORT_SYMBOL vmlinux 0xd7455cc3 dev_add_offload +EXPORT_SYMBOL vmlinux 0xd75c79df smp_call_function +EXPORT_SYMBOL vmlinux 0xd75db372 devm_gpio_request +EXPORT_SYMBOL vmlinux 0xd76f5dd2 dev_queue_xmit +EXPORT_SYMBOL vmlinux 0xd77a5aa5 __bitmap_and +EXPORT_SYMBOL vmlinux 0xd78025ae gen_pool_create +EXPORT_SYMBOL vmlinux 0xd7905af2 mb_cache_entry_release +EXPORT_SYMBOL vmlinux 0xd79b5a02 allow_signal +EXPORT_SYMBOL vmlinux 0xd7a1e68f security_path_truncate +EXPORT_SYMBOL vmlinux 0xd7ae2361 vexpress_config_bridge_unregister +EXPORT_SYMBOL vmlinux 0xd7b4599b __idr_get_new_above +EXPORT_SYMBOL vmlinux 0xd7ba88a1 snd_ctl_add +EXPORT_SYMBOL vmlinux 0xd7bc64f5 tcp_read_sock +EXPORT_SYMBOL vmlinux 0xd7c44043 unlock_buffer +EXPORT_SYMBOL vmlinux 0xd7cd4971 sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0xd7e1d306 file_update_time +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7ea7094 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xd7ef65d6 serio_unregister_driver +EXPORT_SYMBOL vmlinux 0xd8008f98 dm_unregister_target +EXPORT_SYMBOL vmlinux 0xd80e364f pneigh_enqueue +EXPORT_SYMBOL vmlinux 0xd8134a2b register_netdevice +EXPORT_SYMBOL vmlinux 0xd8246622 simple_link +EXPORT_SYMBOL vmlinux 0xd85833cb __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0xd85cd67e __wake_up +EXPORT_SYMBOL vmlinux 0xd88faf48 tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0xd8a5d850 xfrm_init_state +EXPORT_SYMBOL vmlinux 0xd8b6c564 free_user_ns +EXPORT_SYMBOL vmlinux 0xd8c72cf0 ifla_policy +EXPORT_SYMBOL vmlinux 0xd8dd2634 jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0xd8ded085 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xd8e484f0 register_chrdev_region +EXPORT_SYMBOL vmlinux 0xd91243c4 devm_gpiod_get_index +EXPORT_SYMBOL vmlinux 0xd91f62e0 key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0xd92afabe bitmap_clear +EXPORT_SYMBOL vmlinux 0xd92f4be3 proto_unregister +EXPORT_SYMBOL vmlinux 0xd9417e34 ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0xd94359b8 fd_install +EXPORT_SYMBOL vmlinux 0xd9611d88 __frontswap_load +EXPORT_SYMBOL vmlinux 0xd980bd22 bitmap_endwrite +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd9a9bb30 getname +EXPORT_SYMBOL vmlinux 0xd9a9ccd0 inet6_del_offload +EXPORT_SYMBOL vmlinux 0xd9b53cb4 blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0xd9ccc26e ipv6_push_nfrag_opts +EXPORT_SYMBOL vmlinux 0xd9ce8f0c strnlen +EXPORT_SYMBOL vmlinux 0xd9f09156 blk_mq_free_queue +EXPORT_SYMBOL vmlinux 0xd9fd6857 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0xda0110d5 vlan_untag +EXPORT_SYMBOL vmlinux 0xda2478d0 param_ops_short +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda592d7e snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL vmlinux 0xda71f0cf ps2_sendbyte +EXPORT_SYMBOL vmlinux 0xda7ca6cb fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xda868bab rtnl_configure_link +EXPORT_SYMBOL vmlinux 0xda8a97c1 gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0xda8af7ad fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0xdaa16b82 of_clk_get +EXPORT_SYMBOL vmlinux 0xdaa57ec3 totalhigh_pages +EXPORT_SYMBOL vmlinux 0xdaafc807 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0xdac3d90f __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0xdad2b5bf ptp_clock_register +EXPORT_SYMBOL vmlinux 0xdae91e79 __inet6_hash +EXPORT_SYMBOL vmlinux 0xdb23462e jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0xdb3a7d2f input_reset_device +EXPORT_SYMBOL vmlinux 0xdb3cc13d snd_timer_global_register +EXPORT_SYMBOL vmlinux 0xdb4f4ff8 end_page_writeback +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdba011fa unregister_binfmt +EXPORT_SYMBOL vmlinux 0xdbcd416e sysctl_ip_nonlocal_bind +EXPORT_SYMBOL vmlinux 0xdbd84d74 kobject_put +EXPORT_SYMBOL vmlinux 0xdc047fc4 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0xdc3d2ea1 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc8a6ce5 scsi_unregister +EXPORT_SYMBOL vmlinux 0xdca36a27 padata_set_cpumasks +EXPORT_SYMBOL vmlinux 0xdcc306f0 netpoll_send_skb_on_dev +EXPORT_SYMBOL vmlinux 0xdcc8a3a4 serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0xdcce7e34 netdev_notice +EXPORT_SYMBOL vmlinux 0xdce295f4 mntget +EXPORT_SYMBOL vmlinux 0xdd00e4df ppp_input +EXPORT_SYMBOL vmlinux 0xdd0a2ba2 strlcat +EXPORT_SYMBOL vmlinux 0xdd0bb2f2 lro_receive_frags +EXPORT_SYMBOL vmlinux 0xdd14565e nf_register_sockopt +EXPORT_SYMBOL vmlinux 0xdd27fa87 memchr +EXPORT_SYMBOL vmlinux 0xdd3916ac _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0xdd4aa0b3 dma_sync_wait +EXPORT_SYMBOL vmlinux 0xdd648e1d netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0xdd6bf979 inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0xdd91e9ba inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xdda99bcc mutex_lock +EXPORT_SYMBOL vmlinux 0xddba85a2 dmam_alloc_noncoherent +EXPORT_SYMBOL vmlinux 0xddbe8985 key_put +EXPORT_SYMBOL vmlinux 0xddbf26a2 dentry_update_name_case +EXPORT_SYMBOL vmlinux 0xddd2bb31 cancel_dirty_page +EXPORT_SYMBOL vmlinux 0xddd9d93a bdi_register +EXPORT_SYMBOL vmlinux 0xdde217d8 dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0xddf2c532 kthread_bind +EXPORT_SYMBOL vmlinux 0xddf82f14 bio_map_kern +EXPORT_SYMBOL vmlinux 0xde098f37 set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0xde0d11de kobject_add +EXPORT_SYMBOL vmlinux 0xde10eb10 param_set_invbool +EXPORT_SYMBOL vmlinux 0xde25119d kset_register +EXPORT_SYMBOL vmlinux 0xde575efc snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL vmlinux 0xde7a08e1 snd_unregister_device +EXPORT_SYMBOL vmlinux 0xde9360ba totalram_pages +EXPORT_SYMBOL vmlinux 0xde987451 dmam_free_noncoherent +EXPORT_SYMBOL vmlinux 0xdea57ad1 blk_complete_request +EXPORT_SYMBOL vmlinux 0xdeabc7e7 security_path_chmod +EXPORT_SYMBOL vmlinux 0xdeb2751c request_key +EXPORT_SYMBOL vmlinux 0xdeb28761 phy_start_interrupts +EXPORT_SYMBOL vmlinux 0xdf12a723 from_kuid_munged +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf3be0e2 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xdf401846 idr_remove +EXPORT_SYMBOL vmlinux 0xdf48a0eb flex_array_put +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf60cc27 __print_symbol +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdf94c68e bdev_stack_limits +EXPORT_SYMBOL vmlinux 0xdfb01a80 cpu_v7_dcache_clean_area +EXPORT_SYMBOL vmlinux 0xdfc5169b slhc_init +EXPORT_SYMBOL vmlinux 0xdfc91149 mmc_set_blockcount +EXPORT_SYMBOL vmlinux 0xdfe0db9b tty_port_open +EXPORT_SYMBOL vmlinux 0xdffdb932 uart_unregister_driver +EXPORT_SYMBOL vmlinux 0xe0228110 inet6_add_offload +EXPORT_SYMBOL vmlinux 0xe03e3bf4 snd_device_new +EXPORT_SYMBOL vmlinux 0xe03e80b6 sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0xe04f7caa dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xe053302c __cleancache_put_page +EXPORT_SYMBOL vmlinux 0xe05c4c6a mpage_writepage +EXPORT_SYMBOL vmlinux 0xe06141e9 security_sk_clone +EXPORT_SYMBOL vmlinux 0xe06ebceb inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0xe075d6eb iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xe0855e2f generic_removexattr +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0bef318 icst_hz_to_vco +EXPORT_SYMBOL vmlinux 0xe0bf99cf udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0xe0c86088 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0xe0f99a2f ida_pre_get +EXPORT_SYMBOL vmlinux 0xe0fa83f2 ipmi_register_for_cmd +EXPORT_SYMBOL vmlinux 0xe0fdc151 netpoll_parse_options +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe127fb18 down_killable +EXPORT_SYMBOL vmlinux 0xe14fb923 __wait_on_buffer +EXPORT_SYMBOL vmlinux 0xe1638f61 setup_arg_pages +EXPORT_SYMBOL vmlinux 0xe164333c udp_lib_rehash +EXPORT_SYMBOL vmlinux 0xe1761617 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xe17b2c91 __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0xe1b443b5 kernel_getsockopt +EXPORT_SYMBOL vmlinux 0xe1bda205 gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0xe1f0ab3a _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0xe200f872 secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xe20b4217 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0xe20e9f5b skb_try_coalesce +EXPORT_SYMBOL vmlinux 0xe2162e7f input_set_capability +EXPORT_SYMBOL vmlinux 0xe23ae481 blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe2412ace mark_page_accessed +EXPORT_SYMBOL vmlinux 0xe24d3a97 jiffies_64 +EXPORT_SYMBOL vmlinux 0xe28a3f4d gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0xe28d5599 scsi_execute_req_flags +EXPORT_SYMBOL vmlinux 0xe29e1d0e out_of_line_wait_on_atomic_t +EXPORT_SYMBOL vmlinux 0xe2c0bbf4 unregister_nls +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2d8500c __scsi_add_device +EXPORT_SYMBOL vmlinux 0xe2e8065e memdup_user +EXPORT_SYMBOL vmlinux 0xe2fae716 kmemdup +EXPORT_SYMBOL vmlinux 0xe3185a8d dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xe35c5285 of_find_node_by_phandle +EXPORT_SYMBOL vmlinux 0xe369eb99 ip_defrag +EXPORT_SYMBOL vmlinux 0xe36e87a2 snd_pcm_lib_malloc_pages +EXPORT_SYMBOL vmlinux 0xe37588f1 lock_fb_info +EXPORT_SYMBOL vmlinux 0xe39ec157 scsi_setup_fs_cmnd +EXPORT_SYMBOL vmlinux 0xe3b3d22c sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0xe3d6f284 fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xe3e2d0f8 dm_get_device +EXPORT_SYMBOL vmlinux 0xe3ee21a5 inode_claim_rsv_space +EXPORT_SYMBOL vmlinux 0xe3f513b5 noop_qdisc +EXPORT_SYMBOL vmlinux 0xe40ef0ab swiotlb_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0xe4139cdb blk_start_queue +EXPORT_SYMBOL vmlinux 0xe41c72a7 tcf_hash_check +EXPORT_SYMBOL vmlinux 0xe43274bc proc_dointvec +EXPORT_SYMBOL vmlinux 0xe4349009 dev_mc_init +EXPORT_SYMBOL vmlinux 0xe47c733d __ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0xe4874652 skb_queue_tail +EXPORT_SYMBOL vmlinux 0xe488a5fb tty_name +EXPORT_SYMBOL vmlinux 0xe49ad28e flush_signals +EXPORT_SYMBOL vmlinux 0xe4a2d272 of_device_register +EXPORT_SYMBOL vmlinux 0xe4c80097 cacheid +EXPORT_SYMBOL vmlinux 0xe4ca72f2 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0xe4ddade8 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0xe4f1b6ee of_dev_get +EXPORT_SYMBOL vmlinux 0xe4f4665b ipmi_validate_addr +EXPORT_SYMBOL vmlinux 0xe4fb9eb7 mmc_can_erase +EXPORT_SYMBOL vmlinux 0xe5106e99 __starget_for_each_device +EXPORT_SYMBOL vmlinux 0xe5122890 flow_cache_genid +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe53d1faa of_translate_dma_address +EXPORT_SYMBOL vmlinux 0xe556deac sk_alloc +EXPORT_SYMBOL vmlinux 0xe55cd327 mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0xe5662961 posix_test_lock +EXPORT_SYMBOL vmlinux 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL vmlinux 0xe56f8154 check_disk_size_change +EXPORT_SYMBOL vmlinux 0xe57878a1 in6_pton +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe58da25c scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0xe5a549f8 scsi_rescan_device +EXPORT_SYMBOL vmlinux 0xe5c6cf78 __kfree_skb +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5ec7937 inet_twsk_deschedule +EXPORT_SYMBOL vmlinux 0xe5ed5467 xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xe6003a79 invalidate_partition +EXPORT_SYMBOL vmlinux 0xe639dcef mmc_cache_ctrl +EXPORT_SYMBOL vmlinux 0xe64c062a __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0xe64f555f amba_device_register +EXPORT_SYMBOL vmlinux 0xe66452ab dql_init +EXPORT_SYMBOL vmlinux 0xe66a31a9 bio_integrity_tag_size +EXPORT_SYMBOL vmlinux 0xe66d0fe2 tcp_prot +EXPORT_SYMBOL vmlinux 0xe697d108 __blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe69d1788 generic_block_bmap +EXPORT_SYMBOL vmlinux 0xe6a87a97 kern_unmount +EXPORT_SYMBOL vmlinux 0xe6ab72a6 ipmi_set_my_LUN +EXPORT_SYMBOL vmlinux 0xe6c3ebb0 __raw_writesw +EXPORT_SYMBOL vmlinux 0xe6e9c03c phy_register_fixup +EXPORT_SYMBOL vmlinux 0xe6ebc016 key_create_or_update +EXPORT_SYMBOL vmlinux 0xe6ecb67b security_mmap_file +EXPORT_SYMBOL vmlinux 0xe6f8b927 read_cache_page +EXPORT_SYMBOL vmlinux 0xe6fbe430 can_do_mlock +EXPORT_SYMBOL vmlinux 0xe705cbad dev_notice +EXPORT_SYMBOL vmlinux 0xe707d823 __aeabi_uidiv +EXPORT_SYMBOL vmlinux 0xe7313c9f iget5_locked +EXPORT_SYMBOL vmlinux 0xe7343d6d block_write_full_page +EXPORT_SYMBOL vmlinux 0xe74e3498 km_state_expired +EXPORT_SYMBOL vmlinux 0xe755555d register_nls +EXPORT_SYMBOL vmlinux 0xe76586dc kernel_sock_ioctl +EXPORT_SYMBOL vmlinux 0xe7722171 flex_array_free +EXPORT_SYMBOL vmlinux 0xe7769141 tcf_hash_lookup +EXPORT_SYMBOL vmlinux 0xe784480b snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL vmlinux 0xe785ac20 mfd_cell_disable +EXPORT_SYMBOL vmlinux 0xe78e4b15 netlink_broadcast +EXPORT_SYMBOL vmlinux 0xe7a664c4 nf_hooks +EXPORT_SYMBOL vmlinux 0xe7a81967 audit_log_secctx +EXPORT_SYMBOL vmlinux 0xe7b01f2b proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0xe7d48686 tcp_init_cgroup +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7f9b208 snd_add_device_sysfs_file +EXPORT_SYMBOL vmlinux 0xe8074557 jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0xe8211be9 __free_pages +EXPORT_SYMBOL vmlinux 0xe839a0f5 set_anon_super +EXPORT_SYMBOL vmlinux 0xe83f688b md_finish_reshape +EXPORT_SYMBOL vmlinux 0xe851bb05 queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xe8794ce1 slhc_toss +EXPORT_SYMBOL vmlinux 0xe8819045 dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0xe88315e4 cdrom_ioctl +EXPORT_SYMBOL vmlinux 0xe88a81a2 remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0xe88ef8f8 xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0xe89663c1 phy_drivers_register +EXPORT_SYMBOL vmlinux 0xe898bfba crc32_le_combine +EXPORT_SYMBOL vmlinux 0xe8b53ecc down_write_trylock +EXPORT_SYMBOL vmlinux 0xe8b63ace radix_tree_range_tag_if_tagged +EXPORT_SYMBOL vmlinux 0xe8bdd551 bio_flush_dcache_pages +EXPORT_SYMBOL vmlinux 0xe8bea3bc qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xe8c2f9d3 scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0xe8ed31ff simple_lookup +EXPORT_SYMBOL vmlinux 0xe8f5e44f zero_fill_bio +EXPORT_SYMBOL vmlinux 0xe912da6b unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe91c0275 scsi_free_command +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe9685faa kill_litter_super +EXPORT_SYMBOL vmlinux 0xe97e6a90 mtd_concat_create +EXPORT_SYMBOL vmlinux 0xe9899b34 have_submounts +EXPORT_SYMBOL vmlinux 0xe9bdbd56 dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0xe9e600c0 dput +EXPORT_SYMBOL vmlinux 0xe9ed0cfc padata_alloc +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xe9fe399d devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xea054b22 nla_policy_len +EXPORT_SYMBOL vmlinux 0xea10212a int_to_scsilun +EXPORT_SYMBOL vmlinux 0xea10655a __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xea126715 tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0xea15629f ipmi_smi_watcher_register +EXPORT_SYMBOL vmlinux 0xea16dd4c tcp_destroy_cgroup +EXPORT_SYMBOL vmlinux 0xea188565 i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0xea39b569 seq_pad +EXPORT_SYMBOL vmlinux 0xea3d12dd sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0xea4dd9ef kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0xea5cf9d4 vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0xea6e3003 of_find_compatible_node +EXPORT_SYMBOL vmlinux 0xea7987f1 key_update +EXPORT_SYMBOL vmlinux 0xea8228a8 input_allocate_device +EXPORT_SYMBOL vmlinux 0xea8acea3 blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0xeade211c sock_edemux +EXPORT_SYMBOL vmlinux 0xeaec8085 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb38e56f abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0xeb55a931 __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xeb5b980a nand_bch_calculate_ecc +EXPORT_SYMBOL vmlinux 0xeb9e7cdd ida_destroy +EXPORT_SYMBOL vmlinux 0xebdbe48c radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0xebefb224 __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0xebfdcbdf system_serial_high +EXPORT_SYMBOL vmlinux 0xebfe1f4d netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0xec00baa6 devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0xec04fe4c sys_imageblit +EXPORT_SYMBOL vmlinux 0xec058697 generic_write_checks +EXPORT_SYMBOL vmlinux 0xec082992 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0xec0cd833 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0xec17ebb0 of_match_node +EXPORT_SYMBOL vmlinux 0xec3356a2 dump_align +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec5b2e53 i2c_verify_client +EXPORT_SYMBOL vmlinux 0xec6ae32a fsnotify_add_mark +EXPORT_SYMBOL vmlinux 0xec77d751 jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0xec8abf44 blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0xec91322e serio_rescan +EXPORT_SYMBOL vmlinux 0xecdd4194 pm860x_page_set_bits +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xecfc171a vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0xed26748f dentry_unhash +EXPORT_SYMBOL vmlinux 0xed43d9f7 dev_get_by_index +EXPORT_SYMBOL vmlinux 0xed597524 qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xed8f50f4 register_filesystem +EXPORT_SYMBOL vmlinux 0xed8f513a dmam_declare_coherent_memory +EXPORT_SYMBOL vmlinux 0xed90df6c __dquot_transfer +EXPORT_SYMBOL vmlinux 0xed93f29e __kunmap_atomic +EXPORT_SYMBOL vmlinux 0xed9f9a20 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xedac471b kernel_accept +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedbb6e16 phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0xedc7f4ec dq_data_lock +EXPORT_SYMBOL vmlinux 0xedd9106d __ashrdi3 +EXPORT_SYMBOL vmlinux 0xede710cb scsi_scan_host +EXPORT_SYMBOL vmlinux 0xee139a1d netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee396d21 bio_init +EXPORT_SYMBOL vmlinux 0xee45dd2f uart_get_divisor +EXPORT_SYMBOL vmlinux 0xee4c7fd3 inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0xee50e0c2 snd_pcm_lib_write +EXPORT_SYMBOL vmlinux 0xee51c0b0 mdiobus_register +EXPORT_SYMBOL vmlinux 0xee5e16f2 xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0xee6df43d skb_copy_and_csum_datagram_iovec +EXPORT_SYMBOL vmlinux 0xee715ef8 lg_global_unlock +EXPORT_SYMBOL vmlinux 0xee733af1 alloc_mdio_bitbang +EXPORT_SYMBOL vmlinux 0xee8f327d sock_no_accept +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xeea0c291 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0xeea9dbaf bitmap_bitremap +EXPORT_SYMBOL vmlinux 0xeead9fcc md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0xeeb2d252 security_path_rmdir +EXPORT_SYMBOL vmlinux 0xeed3635b proc_dostring +EXPORT_SYMBOL vmlinux 0xeee22005 ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0xeef161aa groups_free +EXPORT_SYMBOL vmlinux 0xeefe755c blk_delay_queue +EXPORT_SYMBOL vmlinux 0xeefe896e set_binfmt +EXPORT_SYMBOL vmlinux 0xef0a02db scsi_print_command +EXPORT_SYMBOL vmlinux 0xef205b26 key_revoke +EXPORT_SYMBOL vmlinux 0xef278c76 ip6_route_output +EXPORT_SYMBOL vmlinux 0xef29f1ed nand_bch_init +EXPORT_SYMBOL vmlinux 0xef42b06c block_write_begin +EXPORT_SYMBOL vmlinux 0xef68d1e6 make_bad_inode +EXPORT_SYMBOL vmlinux 0xef6a90f0 __frontswap_test +EXPORT_SYMBOL vmlinux 0xef7efc90 jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0xef892e5f netdev_info +EXPORT_SYMBOL vmlinux 0xef93dbd1 uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0xefb61f78 bio_reset +EXPORT_SYMBOL vmlinux 0xefcf3143 wait_for_completion_io +EXPORT_SYMBOL vmlinux 0xefd6cf06 __aeabi_unwind_cpp_pr0 +EXPORT_SYMBOL vmlinux 0xefdaed5d seq_bitmap +EXPORT_SYMBOL vmlinux 0xefdd70ce security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0xeffdef69 dmam_release_declared_memory +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf0014d14 scsi_block_requests +EXPORT_SYMBOL vmlinux 0xf010acc6 dquot_transfer +EXPORT_SYMBOL vmlinux 0xf0187927 __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0xf024361f request_key_async +EXPORT_SYMBOL vmlinux 0xf05ffa15 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0xf0619801 timekeeping_clocktai +EXPORT_SYMBOL vmlinux 0xf0791969 iterate_mounts +EXPORT_SYMBOL vmlinux 0xf087137d __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0xf098777d max8925_set_bits +EXPORT_SYMBOL vmlinux 0xf09de776 get_random_int +EXPORT_SYMBOL vmlinux 0xf0c587e3 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0xf0d68ed6 clk_register_clkdevs +EXPORT_SYMBOL vmlinux 0xf0ef15b4 list_sort +EXPORT_SYMBOL vmlinux 0xf0f1246c kvasprintf +EXPORT_SYMBOL vmlinux 0xf0fdf6cb __stack_chk_fail +EXPORT_SYMBOL vmlinux 0xf0fe5064 fsnotify_alloc_group +EXPORT_SYMBOL vmlinux 0xf100416a remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xf13feb57 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0xf140533a request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0xf1450de8 security_inode_init_security +EXPORT_SYMBOL vmlinux 0xf147dcb2 hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0xf14fb1c7 pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0xf153e55b scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0xf1806da9 idr_find_slowpath +EXPORT_SYMBOL vmlinux 0xf192a0da new_inode +EXPORT_SYMBOL vmlinux 0xf194dc3e key_link +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf19e9355 cpu_online_mask +EXPORT_SYMBOL vmlinux 0xf1b14f50 bio_sector_offset +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1deabf2 div64_u64 +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf202c5cb radix_tree_insert +EXPORT_SYMBOL vmlinux 0xf203c1a1 ip_route_me_harder +EXPORT_SYMBOL vmlinux 0xf20dabd8 free_irq +EXPORT_SYMBOL vmlinux 0xf20e0daa md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0xf210c491 dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf2576cb9 ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL vmlinux 0xf292dbd8 ip_cmsg_recv +EXPORT_SYMBOL vmlinux 0xf2954ce7 tcp_ioctl +EXPORT_SYMBOL vmlinux 0xf2997713 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0xf2a0af8f backlight_device_registered +EXPORT_SYMBOL vmlinux 0xf2b04801 generic_pipe_buf_confirm +EXPORT_SYMBOL vmlinux 0xf2b1ac8e __getnstimeofday +EXPORT_SYMBOL vmlinux 0xf2cca2c6 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0xf2d006c7 security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0xf2d2df4b neigh_lookup +EXPORT_SYMBOL vmlinux 0xf2e895ff tty_throttle +EXPORT_SYMBOL vmlinux 0xf2e9d956 dev_set_drvdata +EXPORT_SYMBOL vmlinux 0xf313da4e sha_transform +EXPORT_SYMBOL vmlinux 0xf314be10 fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf33893c3 elv_rb_find +EXPORT_SYMBOL vmlinux 0xf33e92ce km_report +EXPORT_SYMBOL vmlinux 0xf33fd4ad register_quota_format +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf34cd362 netdev_features_change +EXPORT_SYMBOL vmlinux 0xf351a596 netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf375fb67 swiotlb_alloc_coherent +EXPORT_SYMBOL vmlinux 0xf3794366 generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0xf3797152 snd_interval_ratnum +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf396cd21 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0xf3a71fee input_flush_device +EXPORT_SYMBOL vmlinux 0xf3ab0d05 abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0xf3bf0bce __bitmap_complement +EXPORT_SYMBOL vmlinux 0xf3c07bb5 dev_printk_emit +EXPORT_SYMBOL vmlinux 0xf3e39f91 inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0xf3f72ff5 posix_unblock_lock +EXPORT_SYMBOL vmlinux 0xf40b2297 __crypto_memneq +EXPORT_SYMBOL vmlinux 0xf4175cf5 of_platform_device_create +EXPORT_SYMBOL vmlinux 0xf4423087 get_super +EXPORT_SYMBOL vmlinux 0xf44267c9 loop_backing_file +EXPORT_SYMBOL vmlinux 0xf455a696 generic_readlink +EXPORT_SYMBOL vmlinux 0xf473ffaf down +EXPORT_SYMBOL vmlinux 0xf478bd0e led_blink_set_oneshot +EXPORT_SYMBOL vmlinux 0xf48b94cc module_layout +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4d3c156 __devcgroup_inode_permission +EXPORT_SYMBOL vmlinux 0xf4e653a6 tcp_sync_mss +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf4f71fc3 gen_pool_alloc +EXPORT_SYMBOL vmlinux 0xf5104719 sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0xf515da5c elevator_exit +EXPORT_SYMBOL vmlinux 0xf51b56b2 dquot_free_inode +EXPORT_SYMBOL vmlinux 0xf524961a tty_do_resize +EXPORT_SYMBOL vmlinux 0xf52a160c ipmi_register_smi +EXPORT_SYMBOL vmlinux 0xf532fcf1 kmalloc_caches +EXPORT_SYMBOL vmlinux 0xf534edfd qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0xf537e00b sock_create_lite +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf5514ce0 ioremap_page +EXPORT_SYMBOL vmlinux 0xf5575d76 nand_unlock +EXPORT_SYMBOL vmlinux 0xf564412a __aeabi_ulcmp +EXPORT_SYMBOL vmlinux 0xf57b6ef1 dcb_getapp +EXPORT_SYMBOL vmlinux 0xf58dfc5c vfs_llseek +EXPORT_SYMBOL vmlinux 0xf5aa060f blk_mq_insert_request +EXPORT_SYMBOL vmlinux 0xf5c05914 generic_segment_checks +EXPORT_SYMBOL vmlinux 0xf5eb86ea blk_verify_command +EXPORT_SYMBOL vmlinux 0xf5ec1a10 sync_inodes_sb +EXPORT_SYMBOL vmlinux 0xf5ecfc35 inet_register_protosw +EXPORT_SYMBOL vmlinux 0xf5f91abe netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0xf604ce34 blkdev_get +EXPORT_SYMBOL vmlinux 0xf614a5ba get_io_context +EXPORT_SYMBOL vmlinux 0xf6291697 register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xf63364fd proc_symlink +EXPORT_SYMBOL vmlinux 0xf635143d simple_release_fs +EXPORT_SYMBOL vmlinux 0xf6388c56 sysctl_ip_default_ttl +EXPORT_SYMBOL vmlinux 0xf6549de8 dma_common_mmap +EXPORT_SYMBOL vmlinux 0xf67d9514 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0xf681843f tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf6851d5f register_sysctl_paths +EXPORT_SYMBOL vmlinux 0xf68687be __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xf6aea5b8 skb_push +EXPORT_SYMBOL vmlinux 0xf6b46ac3 mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xf6b9a6ac sock_from_file +EXPORT_SYMBOL vmlinux 0xf6bb4729 color_table +EXPORT_SYMBOL vmlinux 0xf6c9f158 dqput +EXPORT_SYMBOL vmlinux 0xf6ce08e8 lro_flush_all +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6fa1164 netif_carrier_off +EXPORT_SYMBOL vmlinux 0xf706f2f1 sock_rfree +EXPORT_SYMBOL vmlinux 0xf72b2d41 mnt_unpin +EXPORT_SYMBOL vmlinux 0xf73b181e jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0xf741c793 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xf7475091 input_get_keycode +EXPORT_SYMBOL vmlinux 0xf7486f7e max8998_bulk_write +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf771ac3b netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0xf77d0bff da903x_query_status +EXPORT_SYMBOL vmlinux 0xf7802486 __aeabi_uidivmod +EXPORT_SYMBOL vmlinux 0xf780ad05 request_key_async_with_auxdata +EXPORT_SYMBOL vmlinux 0xf7a34474 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0xf7b12aee __next_cpu +EXPORT_SYMBOL vmlinux 0xf7bd5ed1 setup_new_exec +EXPORT_SYMBOL vmlinux 0xf7ca2c03 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0xf7e300fd locks_init_lock +EXPORT_SYMBOL vmlinux 0xf8009ef5 bd_set_size +EXPORT_SYMBOL vmlinux 0xf803fe39 bitmap_set +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf827cb83 free_reserved_area +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf82f3e26 snd_card_proc_new +EXPORT_SYMBOL vmlinux 0xf8411db5 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0xf845f187 __ww_mutex_lock +EXPORT_SYMBOL vmlinux 0xf84af9c4 sk_release_kernel +EXPORT_SYMBOL vmlinux 0xf886d208 scsi_remove_host +EXPORT_SYMBOL vmlinux 0xf89cc82c neigh_for_each +EXPORT_SYMBOL vmlinux 0xf8c71ae9 nla_append +EXPORT_SYMBOL vmlinux 0xf8cddcf2 inet_bind +EXPORT_SYMBOL vmlinux 0xf8df4827 blk_integrity_register +EXPORT_SYMBOL vmlinux 0xf8fbb4f0 __bad_xchg +EXPORT_SYMBOL vmlinux 0xf9348cbc xz_dec_run +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9ac70dc tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0xf9ad0f4c genphy_read_status +EXPORT_SYMBOL vmlinux 0xf9b06f62 _dev_info +EXPORT_SYMBOL vmlinux 0xf9c367e0 iov_pages +EXPORT_SYMBOL vmlinux 0xf9e465e6 fb_blank +EXPORT_SYMBOL vmlinux 0xf9e73082 scnprintf +EXPORT_SYMBOL vmlinux 0xfa14bd94 md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0xfa1b4f02 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0xfa30c793 __blk_run_queue +EXPORT_SYMBOL vmlinux 0xfa46520e sk_reset_timer +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa74f368 dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0xfa75121e md_unregister_thread +EXPORT_SYMBOL vmlinux 0xfa7f3156 wl12xx_get_platform_data +EXPORT_SYMBOL vmlinux 0xfa97dc2f clocksource_register +EXPORT_SYMBOL vmlinux 0xfac68eba arm_elf_read_implies_exec +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfae67b1f cap_mmap_addr +EXPORT_SYMBOL vmlinux 0xfaf858b9 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0xfaf98462 bitrev32 +EXPORT_SYMBOL vmlinux 0xfaf9995e sleep_on +EXPORT_SYMBOL vmlinux 0xfb05ad54 __alloc_skb +EXPORT_SYMBOL vmlinux 0xfb0cecfd vm_event_states +EXPORT_SYMBOL vmlinux 0xfb18a8db dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0xfb266a5d jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0xfb2b9923 filemap_fdatawait +EXPORT_SYMBOL vmlinux 0xfb408b9c inet_recvmsg +EXPORT_SYMBOL vmlinux 0xfb59223f neigh_table_init +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb6ca166 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0xfb7d9c45 __udivsi3 +EXPORT_SYMBOL vmlinux 0xfb7e4086 dev_mc_del +EXPORT_SYMBOL vmlinux 0xfb897868 inet6_add_protocol +EXPORT_SYMBOL vmlinux 0xfb94103e __clzdi2 +EXPORT_SYMBOL vmlinux 0xfb9cae96 gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbc7098d write_cache_pages +EXPORT_SYMBOL vmlinux 0xfbeacec3 generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0xfc02b7ad sysctl_tcp_wmem +EXPORT_SYMBOL vmlinux 0xfc208c98 filp_open +EXPORT_SYMBOL vmlinux 0xfc20c096 touch_buffer +EXPORT_SYMBOL vmlinux 0xfc22d35b kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc460ef3 generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0xfc5762bf input_unregister_device +EXPORT_SYMBOL vmlinux 0xfc65459a kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0xfc7dac39 tcp_close +EXPORT_SYMBOL vmlinux 0xfc83f7e2 fb_set_suspend +EXPORT_SYMBOL vmlinux 0xfc86931d is_bad_inode +EXPORT_SYMBOL vmlinux 0xfc9f53a1 xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0xfcaa04a0 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xfcb3ef39 tcp_parse_options +EXPORT_SYMBOL vmlinux 0xfcb77cfd ipmi_free_recv_msg +EXPORT_SYMBOL vmlinux 0xfcc2a43c utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0xfcc788c6 netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0xfcde131a set_create_files_as +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfcf23cc7 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xfcf52381 __dev_remove_offload +EXPORT_SYMBOL vmlinux 0xfcfa03ff fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0xfcfb8b85 block_write_end +EXPORT_SYMBOL vmlinux 0xfd05d74a phy_start +EXPORT_SYMBOL vmlinux 0xfd2dff64 xfrm_user_policy +EXPORT_SYMBOL vmlinux 0xfd305341 walk_stackframe +EXPORT_SYMBOL vmlinux 0xfd4df368 generic_file_splice_write +EXPORT_SYMBOL vmlinux 0xfd5683b9 wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0xfd58a791 fsnotify_destroy_mark +EXPORT_SYMBOL vmlinux 0xfd6293c2 boot_tvec_bases +EXPORT_SYMBOL vmlinux 0xfd77843b blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0xfd99623a ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xfd99bd24 scsi_register +EXPORT_SYMBOL vmlinux 0xfda0dbe8 ftrace_print_hex_seq +EXPORT_SYMBOL vmlinux 0xfdaee397 __dev_remove_pack +EXPORT_SYMBOL vmlinux 0xfdafb55b napi_gro_frags +EXPORT_SYMBOL vmlinux 0xfdc0b41b tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0xfdfc0b3b fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe0c2c37 snd_timer_pause +EXPORT_SYMBOL vmlinux 0xfe2c255d blk_free_tags +EXPORT_SYMBOL vmlinux 0xfe326bd0 blk_alloc_queue +EXPORT_SYMBOL vmlinux 0xfe4ff085 con_is_bound +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe6d965b tcp_mtup_init +EXPORT_SYMBOL vmlinux 0xfe7c4287 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0xfebf63b0 snd_card_file_add +EXPORT_SYMBOL vmlinux 0xfec54fa7 blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0xfec90f16 max8998_bulk_read +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfef96e23 __scsi_print_command +EXPORT_SYMBOL vmlinux 0xff064fee gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0xff105d64 ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xff126a00 twl6040_reg_read +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff44161b fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0xff5c4dc8 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL vmlinux 0xff6756cc bio_copy_user +EXPORT_SYMBOL vmlinux 0xff67b37f __lshrdi3 +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff7559e4 ioport_resource +EXPORT_SYMBOL vmlinux 0xff99d5ef blk_fetch_request +EXPORT_SYMBOL vmlinux 0xff9ca065 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0xff9ce12c redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0xffb94ef0 _test_and_change_bit +EXPORT_SYMBOL vmlinux 0xffc4aa13 dma_common_get_sgtable +EXPORT_SYMBOL vmlinux 0xffd0a657 vfs_rename +EXPORT_SYMBOL vmlinux 0xffd5a395 default_wake_function +EXPORT_SYMBOL vmlinux 0xffeedf9b dev_get_by_name +EXPORT_SYMBOL vmlinux 0xffff2dd9 mmc_gpio_free_ro +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x23cf7e68 ablk_decrypt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x35e008bb ablk_set_key +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x7c73aeb5 ablk_init_common +EXPORT_SYMBOL_GPL crypto/ablk_helper 0xacb2ed08 ablk_init +EXPORT_SYMBOL_GPL crypto/ablk_helper 0xc56b17ce __ablk_encrypt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0xd39dd275 ablk_encrypt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0xdbc80dac ablk_exit +EXPORT_SYMBOL_GPL crypto/af_alg 0x1cb338bf af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x70156197 af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x8231ee2c af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x93957c0c af_alg_cmsg_send +EXPORT_SYMBOL_GPL crypto/af_alg 0xa58611c4 af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0xc65f2aab af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xd14712f4 af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0xd954ef95 af_alg_wait_for_completion +EXPORT_SYMBOL_GPL crypto/af_alg 0xe6ccc547 af_alg_complete +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x5deed891 async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x0dea8b7f async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x7fa0c9b6 async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x1ac21770 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xd8de1747 async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x6fb21b2b async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xb9343bee async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xedb9acd6 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xf31f7f48 __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xcc084e46 async_xor +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xce106f72 async_xor_val +EXPORT_SYMBOL_GPL crypto/authenc 0x587ef278 crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0x11769065 blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x27278ca9 __cast5_encrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x394b4554 cast5_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x4a2a3ca6 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x08b47b70 cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1291971c __cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1e2c961f __cast6_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x8f04034a __cast6_encrypt +EXPORT_SYMBOL_GPL crypto/cast_common 0x08aa6fb7 cast_s1 +EXPORT_SYMBOL_GPL crypto/cast_common 0x0c5fbf8a cast_s3 +EXPORT_SYMBOL_GPL crypto/cast_common 0xe39dd4b4 cast_s2 +EXPORT_SYMBOL_GPL crypto/cast_common 0xee83a4f3 cast_s4 +EXPORT_SYMBOL_GPL crypto/cryptd 0x079ec84b cryptd_ablkcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x114c0dfb cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x16e5ab15 cryptd_free_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x3102db9e cryptd_alloc_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x57320167 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x6bad9b19 cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x76745b46 cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x8a30a040 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0x98361ac8 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xd12b900b cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/des_generic 0xcfd9a2c0 des_ekey +EXPORT_SYMBOL_GPL crypto/lrw 0x3864eb66 lrw_free_table +EXPORT_SYMBOL_GPL crypto/lrw 0xcd074900 lrw_init_table +EXPORT_SYMBOL_GPL crypto/lrw 0xf0b4a529 lrw_crypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x328dee01 serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x5ddb33e9 __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x77b39cb4 __serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x8a1a99ad __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/twofish_common 0x5dfa7c67 twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0x6c3229bb __twofish_setkey +EXPORT_SYMBOL_GPL crypto/xts 0xe9d8458c xts_crypt +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x2e150285 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x3ba17149 ahci_platform_resume_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x4d19328f ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x5dbff026 ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x8366d155 ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x8380eae3 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x8a9c326a ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xac058d3c ahci_platform_resume +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xb25041ad ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xd96630ae ahci_platform_suspend_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xe8979c2c ahci_platform_suspend +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0xc4c1150e __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x14102f23 ks0108_displaystate +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x48a70518 ks0108_writedata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x4f506333 ks0108_startline +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x6edae968 ks0108_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xbf4774db ks0108_writecontrol +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xedde6df2 ks0108_page +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xfee8ef7b ks0108_address +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x04390bff bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x200e7028 bcma_core_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2b6a849b bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2db463e1 bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x3007dc44 bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x33f71b29 bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x35eb3ee3 bcma_core_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x478c9827 bcma_core_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x621dc416 bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x6acb9b71 bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x94751e7b bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x9594b65f bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x98a08f8d bcma_find_core +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa0689901 bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb333783a bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb5ecf56c bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc26c4470 bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc5cc3ff9 bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc94b499c bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf06b979f bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf5a80293 __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xfa3a35f6 bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xfcbe7f64 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x0e030b47 btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x34f250d0 btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x55b5de68 btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x57f13bf0 btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x6a9d0a39 btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x85508cb1 btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x9665f3d7 btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x9fc59b12 btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xadb97ef1 btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xc5694a64 btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/cpufreq/arm_big_little 0x46a614b0 bL_cpufreq_unregister +EXPORT_SYMBOL_GPL drivers/cpufreq/arm_big_little 0x9e2f3ac7 bL_cpufreq_register +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x506f71bb dw_dma_shutdown +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x5ec204d4 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x75d0239b dw_dma_resume +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x773ae841 dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xd0b472f0 dw_dma_suspend +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0ab4ab8b find_mci_by_dev +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x13ed8b61 edac_mc_del_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x2d4ead9f edac_device_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x47f5eb75 edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x4fce2acd edac_device_handle_ce +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x69259f22 edac_mem_types +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x968de7f7 edac_mc_add_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xa0dddd24 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xa4e8039e edac_mc_alloc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xad957f83 edac_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xb7194933 edac_device_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xe2ba559a edac_mc_free +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xefaee0de edac_device_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xf259ff86 edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xfb6d7d9e edac_device_handle_ue +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x54ebda6b bgpio_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x73946dc7 bgpio_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x0d933f40 __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0xb0b613a3 __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x2c5b5e2f drm_vm_open_locked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x2f614ae8 drm_gem_cma_prime_vmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x312400aa drm_gem_cma_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x54fc1c55 drm_gem_cma_prime_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x63d1e4b1 drm_gem_cma_prime_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x6c999739 drm_gem_cma_prime_vunmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x7bce618d drm_gem_cma_vm_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x84dd1a53 drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x8e68fad7 drm_gem_cma_free_object +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x92f334de drm_gem_cma_dumb_map_offset +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x999b1f0c drm_gem_cma_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xad878875 drm_gem_cma_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xb3049f93 drm_gem_cma_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xb7f1e881 drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xccabe438 drm_gem_cma_describe +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x1148b623 drm_fbdev_cma_fini +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x192ab930 drm_fb_cma_debugfs_show +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xb2c912af drm_fbdev_cma_hotplug_event +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xb5ee6f26 drm_fb_cma_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xbb536987 drm_fbdev_cma_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xcc337fd5 drm_fbdev_cma_restore_mode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xead2a9a7 drm_fb_cma_get_gem_obj +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x12d98f95 hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x17e9f79b hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x39f96821 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4355d90c hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4906a967 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4a2dc157 hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4a4858a6 hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x58839632 hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5dbef213 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0x67c41280 hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x81b46129 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8fd4e8b4 hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x917f77e9 hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x957a046c hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9ac145f0 hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa12eea61 hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa6ebd64b hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xaf0db1fb hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb26bc7c8 hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb405c8b7 hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb8af7540 hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbc704612 hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbe179f33 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc108c146 hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd25708a8 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd98b46a7 hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xdc4426a4 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0xdd9a2eec hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe671cb5c hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xee6323fd hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf4895142 hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf689dadb hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf8e71b22 hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfe36f796 hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfea12e71 hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x2f622ea1 roccat_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x2fe02c0f roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x8c4181ec roccat_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x13778777 roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x68309e65 roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x946c9055 roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x97b60e88 roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xdc47d79e roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xe2f3b7b7 roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x03e94020 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x3a0cc1da sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x684a6d86 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x7be5d2db sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x80451c53 sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x9563ee27 sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xc6db10ad sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xfd06188e sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x01fd453e usbhid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x763d55b9 hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x025fba8e hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2381d224 hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2d547284 hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x344d86fb hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x60131333 hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x7432c046 hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x85aae339 hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x87ff3fd0 hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x9de4aca1 hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xd5524475 hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xdfca7342 hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xf9ee07e3 hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xfaa984d3 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x22e0489a adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x86db1519 adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xf1559a28 adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x105ac9da pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x12619230 pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x43d98e7f pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x945d2f98 pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x9f34db67 pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xa59c63e8 pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xad688d44 pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xbeea9903 pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xc72bf708 pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xd28ccd12 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xeda455f4 pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xfcba5223 pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x1270f3d2 i2c_dw_is_enabled +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x140caffa i2c_dw_clear_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x40652a2c i2c_dw_read_comp_param +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x4f1d2b00 i2c_dw_init +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5bb1170b i2c_dw_isr +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x76043be5 i2c_dw_func +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x785f8b0c i2c_dw_xfer +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x9c9cd268 i2c_dw_disable_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xb122d70e i2c_dw_disable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xb1e45757 i2c_dw_enable +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x39dbeb1b i2c_add_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x7e1b654c i2c_del_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x2ec4c86e i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x85b965b1 i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x0655115e ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x215061e6 ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x28230377 ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x549e70de ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x72cdeee5 ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x99cde21c ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xb788e817 ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xbb63c945 ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xe1577d61 ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x1838a08f adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x27ecefd3 adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x3808ffd7 adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x4a87cc1d adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x4db9ee1e adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x61711144 adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x953bf793 adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x9c3cf630 adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xb9125a1f adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xdff3f075 adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xe540be6f adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xe55c3fd3 adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0133b49f iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x050db85e iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x07ee2c19 iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0c38d32c iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1dd2e525 iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1e76d0f3 iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x225533fb devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x267c0508 iio_channel_release_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x281ebe07 iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2a1fab3c iio_channel_stop_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2a78168d iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x322a083b iio_scan_mask_set +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3315dfd6 iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3a59ca63 iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x51cefabe iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5454d416 iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x589200c4 iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x68056c53 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x68f844fc devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6dcdcacb iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6ebf1b9a devm_iio_device_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x768bc223 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x871b39df iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x87d93bc8 devm_iio_trigger_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xbe8eac8e iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xc17fd7e2 iio_update_demux +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd22977a0 iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd3b87caf iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe04cb56f iio_scan_mask_query +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe276483d iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe2bb97f3 iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe39cd014 iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0x5f0d164d input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0xee255aa0 matrix_keypad_parse_of_params +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x14905057 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x357059ed cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x64325f2a cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xc450db59 cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x8821a030 cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xa3c62f96 cyttsp_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xde12b284 cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x31063b79 cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x85bb77f6 cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x07efb8ac wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x081b7162 wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x25bd342e wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x38032974 wm9712_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x3cc6b551 wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x447dcbc7 wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x5231ec27 wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x71434cc1 wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xa5578461 wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xcbb97be7 wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xd006b2ca wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xf4a929ea wm9713_codec +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x04590541 ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x19b77d1f ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x29e087e1 ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x5eb28c01 ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x6213f1a8 ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x7e29fccb ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x962fea7e ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xde5c6a02 ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xea27f5ab ipack_device_add +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0x23359aff unregister_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0xce1414b2 register_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x327e67de gigaset_initcs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x34f2c40d gigaset_fill_inbuf +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x373a9392 gigaset_handle_modem_response +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x454aa44f gigaset_debuglevel +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x4a5d9b5b gigaset_if_receive +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x4df3f0b2 gigaset_blockdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x541f414f gigaset_freecs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x5736c7e0 gigaset_stop +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x5e307851 gigaset_add_event +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x61cc5176 gigaset_initdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x6a0ce9a0 gigaset_start +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8ca0179b gigaset_isdn_rcv_err +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8eff32df gigaset_dbg_buffer +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x92893f04 gigaset_m10x_input +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xa27331fb gigaset_skb_sent +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xac680092 gigaset_skb_rcvd +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xcb2a6963 gigaset_freedriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xd80350c8 gigaset_shutdown +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xfe59687c gigaset_m10x_send_skb +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x22c557f1 lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x2c8d7242 lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x484619cb lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x4ffcee8c lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x546bc5db lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x6f471f1e lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xa69e2e6f lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xbaf34d49 lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xcb9ce37e lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xcfd8eece lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xd34fb897 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x749e05f2 ledtrig_flash_ctrl +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x7903e46e ledtrig_torch_ctrl +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x10e06e97 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x155ea9c7 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1822fd23 __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1f2ba9ac __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x260d47cf __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x27831e89 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2dec45e0 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x347aebe1 __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x41c861f0 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x49856e5a __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x50e8c39f __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x574ba881 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x628eb712 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6770a402 __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x785cfc9f __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7b488fb1 __tracepoint_bcache_alloc_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x91f2af34 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa09069a3 __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa591c5d6 __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa6890b59 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xaf60c34b __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb950d2ae __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbd4b89b6 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xce0e6218 __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd40fba32 __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xdc5ea5a5 __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf58ce244 __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf5bcbdc7 __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfc1d5275 __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfcdf28c9 __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xffc308e4 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x1c9a7b3f dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2f003aa2 dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x3aa7a89a dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x403e2eca dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x658e8782 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x911d16eb dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb4c1fc46 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb6d5c65d dm_deferred_set_add_work +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb70b342a dm_bio_prison_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xebd06eaf dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x22163b69 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x3909d3a8 dm_bufio_prefetch +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x594952bd dm_bufio_read +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x5f5e3603 dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x62a23587 dm_bufio_get_device_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9b2b253a dm_bufio_get +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa82b2066 dm_bufio_write_dirty_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc9a3422d dm_bufio_write_dirty_buffers_async +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd4bddf5c dm_bufio_issue_flush +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xdc69e37a dm_bufio_get_block_number +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe004ee92 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe6024e59 dm_bufio_release +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xebcc64a4 dm_bufio_get_block_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xeca7949e dm_bufio_client_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x4848d291 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x97983545 dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xb2f03c01 dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xb7a293d6 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xd96e178c dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xdc68b041 dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xf3922ffb dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xaf3a8591 dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xf380e4d9 dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x05e62290 dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x09472122 dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x206f5bac dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x28f5e7c2 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x38efaf5a dm_region_hash_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3a18389a dm_rh_update_states +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x5b839b76 dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7774620f dm_rh_stop_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7d053fc5 dm_rh_start_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x9767dd12 dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa285f951 dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa53387c7 dm_rh_flush +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa83588eb dm_rh_recovery_end +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa8813ad6 dm_rh_region_to_sector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xc66ce277 dm_rh_get_region_size +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xcab63c3d dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xf37a3cfe dm_rh_get_region_key +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfd93482e dm_rh_recovery_in_flight +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0054f69d dm_tm_pre_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x01445176 dm_btree_find_highest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x11eab9fe dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x150c85ce dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1cac81ac dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2025e954 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x212e328a dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2c112836 dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2e730a21 dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f40da68 dm_bm_set_read_write +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f74609d dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x32b5f546 dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x33c03da6 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x38c75c44 dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3ad0f55b dm_bm_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x40f7bd91 dm_tm_inc +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5e6aea80 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x619701dc dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x62c1b9ee dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x68fae9d2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x72289260 dm_block_manager_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7ade1071 dm_tm_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7b047bd9 dm_tm_create_non_blocking_clone +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x80c89b3d dm_tm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x832bf228 dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x858c8d94 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89f1e1cc dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x966a8838 dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9b4b5b29 dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9e798e22 dm_bm_set_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa0bbbb49 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa13861b4 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2507774 dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa87c5b4d dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaee02382 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb7bad799 dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb9a6ecf8 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbcfdc290 dm_tm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbd50ebbb dm_btree_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbe0497aa dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xca40abd5 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd041d62b dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe44b4b9b dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xead1e727 dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xed1e1f96 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf475af48 dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/raid1 0x99544192 md_raid1_congested +EXPORT_SYMBOL_GPL drivers/md/raid10 0x6fb845a6 md_raid10_congested +EXPORT_SYMBOL_GPL drivers/md/raid456 0x626d3369 md_raid5_congested +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x028f5d42 smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x07f7ba99 smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x23e63078 smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x2d2ac161 smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x37d91069 smsendian_handle_tx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x5111efa3 smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x5c3f0f43 smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x63222b29 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x63dcc23d sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x73e8df3d sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7c576277 smsendian_handle_message_header +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x84c99cd0 sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x88b4e3dd sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x8daa5f69 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x900264ae smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9ba0c70b sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9c2225ed smscore_translate_msg +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbc59209d smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbd749b36 smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xe282a36c smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xfd8908c3 smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0xba2fb022 tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x8eee21b8 radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x90d4c3c6 radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x022b6a86 ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x11a872d8 rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x123ab7d4 rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1e2a45cf ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x257ab974 rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x25f165af rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x2f4a13d3 rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x4e4e2d62 rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x4f6471c9 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x553efb91 rc_core_debug +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x63494e6a ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7c9e3f8f rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7e5328c8 ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7ebc1f64 rc_open +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x88c29ad4 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x8be84569 rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x91552fd5 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x9d376238 rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa30d5501 rc_close +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xe8041715 ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0x92d5a53c mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0xa846b84f microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0x05b24326 mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0xf199ac81 r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0x4f3b68e0 tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0x3e97ce78 tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x0f165048 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0xde1470f5 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x975ee653 tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x2dfea4fc tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x9bc40dfa tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x54759ab4 tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x707c9172 tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0xa55d6712 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x0c754d66 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x0f54810e cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x31394df5 cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x3b7ae307 is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x53d6aaf1 cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x556f19b8 cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x577395ec cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x64a6654e cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x658bc43c cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6a02d012 cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6b9e6e8f cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x7059c6a7 cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x86c6a0f9 cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xac09c4ef cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xb744a66a cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xba043cae cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xc36b07e6 cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd9332135 cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf7f58a48 cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0x3203b3f0 mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0xb6ac7fe4 mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x00176821 em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x17e3cee7 em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x31935604 em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x427cf11a em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x5d2612cf em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7cade884 em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xb7c212d9 em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xb7fc8d23 em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xc2298414 em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xe96fb85d em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xeb0e2523 em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf01c91c4 em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf4e3b5a1 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xffe9d95d em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x20b1a8d6 tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x53f466d7 tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x93e12e5e tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xaeba71c3 tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x01c483a9 v4l2_get_timestamp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x0320f04c v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x1844ace3 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x50d15b16 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x6ab50d0c v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x813f3de4 v4l2_find_nearest_format +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf42b8e95 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xfba9dd2b v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x08982d59 v4l2_match_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x221d2fbc v4l2_enum_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x36e8756a v4l2_find_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x4103badb v4l2_print_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x53105839 v4l2_detect_cvt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6976cfe0 v4l2_valid_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6f344bb9 v4l2_calc_aspect_ratio +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x7eaf8e7a v4l2_detect_gtf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xb0891da2 v4l2_dv_timings_presets +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x9dbfd652 v4l2_int_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xa5228b24 v4l2_int_device_try_attach_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xcef46e1e v4l2_int_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xd7a34bcf v4l2_int_ioctl_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xda7a9e3b v4l2_int_ioctl_0 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x05a7dd9a v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0e139bf0 v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0eae9db0 v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x17eb0eee v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1decdfc5 v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3438bacd v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4d498498 v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x684804ec v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x8cac4834 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9f356cfe v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc1522cc4 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc30b4bf8 v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc427d6fd v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd0527c66 v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe367005a v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x0f7e2aae videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x245e8fbf videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x2c3cb9d5 videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x41ce8388 videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4753ddbb videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x61c32616 __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x63ce1a55 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6f462861 videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x70aa953d videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x8171fa70 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9be967f2 videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa16acc2e videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xabc10219 videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb5dec522 videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb7c104e4 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xcf9ac9e2 videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xcfc61bb5 videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xd76e624b videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xdc59d07c videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xddce65ec videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe4879fb0 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe6ee1b82 videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf6fdb68d videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xfb26ac82 videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x0e2ba027 videobuf_to_dma_contig +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x2a5e6668 videobuf_queue_dma_contig_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0xf17e5b75 videobuf_dma_contig_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x44e1e512 videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x5419fdbb videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x8b21e013 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x072d02d3 vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x0f55ca20 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x1266c12d vb2_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x1e8d0ba4 vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x236f7b25 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x3f8bcf3a vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x3faa46df vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x6352e78b vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x635a1deb vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x6563f798 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x698ff8c5 vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x709bb5f9 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x722d5ad9 vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x7e79b4c3 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x7f50b4a3 vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x8addd4e0 vb2_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x8e63e632 vb2_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x9467b395 vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x9f580a2b vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa2576e8f vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa346d45b vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xafdb5de3 vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb91acc34 vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xbec3467b vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xc5508b09 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd4ae881d vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd5252521 vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd6b22c4b vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xdb63eda7 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xe02b4387 vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xe3fa6294 vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xf5388651 vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xf66a1478 vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xffdc3031 vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0x6d43d575 vb2_dma_contig_init_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0x7a18a1b7 vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xe57f0426 vb2_dma_contig_cleanup_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x1a6253a0 vb2_put_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x1d7c5155 vb2_get_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x3a7469e6 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0xd7b1ad03 vb2_get_contig_userptr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-vmalloc 0x342f13de vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x03ffd553 v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x14bf50ad v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1bac5f17 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1d559aca v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x21ed88cd v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x258a32f3 v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x25b4f272 v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2d74f562 v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4b51f58a v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4bcb7e7a v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5e381a55 v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7cd8dd64 v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9caaafe9 v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa692b374 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa8f8b8f4 v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xaa90f4e1 v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb6e32221 v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdd53e3aa v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf2208d03 v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfc9fa954 v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfcbd462a v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfcca64a4 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfe003a37 v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x3c58539b pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x4beec76e pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xa679fab1 pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x147d3ffd kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x15b94ce0 kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x176e2ab0 kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x9ab3476f kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x9b3847a6 kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xcdafc7d4 kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xf205562f kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xfbc9fb1d kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x3ebafd85 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x4fa131ad lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x9d171da4 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x0aa51173 lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x0fc2cda0 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x63c1296e lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x8dd737f0 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xaa21a1f9 lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xce2ce011 lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xe815a3ad lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x04302249 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x163fd721 mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x448a6969 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x90f07e45 mc13xxx_common_cleanup +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xa7002b5c mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xca72b91e mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x212cdcc5 pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x2d21e3fe pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x39ca3642 pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x44f293dd pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x5535bacb pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x6c073a73 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x7955f7f9 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x8d038750 pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xb608a1ef pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xebadd644 pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xfffa18c6 pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x1f93ea2e pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xe9019a1b pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x66f51fa8 pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x6a37b3c5 pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x76a668fc pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x8044d4f6 pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xe81ce263 pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x01a33234 retu_write +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x4fca3918 retu_read +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0214de66 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0633ecc1 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x1adc04be si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x25890e9c si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2fc6c0b7 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3a0f8fef si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3a8e213a si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x413b782b si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x441e9b9d si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x515ff9b2 si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x53cfa020 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5704fe16 si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x590ad54e si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6227cfbb si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x654f022c si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x79a55c89 si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7b3e0ce6 si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x803a7769 si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x818e5043 si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x89ba6c86 si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x950919bd si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa5004190 si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xaa084aec si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb18c6b77 si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb5026980 si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb78d98b5 si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc1aabcf5 si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc9a3ce3c si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd631d28e si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xddbc9045 si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xddd180b3 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf9d25d6f si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfd94b56d si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfdcbfd2e si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x0f251336 sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x1695fda0 sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x3d63301f sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x6402c9d1 sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x9b6251fc sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x134dff4e tps65217_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xb1f010f0 tps65217_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xb480e74a tps65217_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xc2b7fe1f tps65217_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/twl4030-madc 0x4362dc66 twl4030_get_madc_conversion +EXPORT_SYMBOL_GPL drivers/mfd/twl4030-madc 0x9effbf1a twl4030_madc_conversion +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0x31cca720 ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x27cb133b eeprom_93cx6_multiread +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x63d2ff63 eeprom_93cx6_wren +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x822222db eeprom_93cx6_write +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x98bb5a22 eeprom_93cx6_read +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x08f73a52 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x4d228309 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x55db3c27 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x67b4fec8 enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x754f034d enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xc21e674d enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xf7f18769 enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x1ada89bd lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x28933e35 lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x3a9ed82f lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x8c1b36d2 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xb408f60b lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xf2e52aa1 lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xf6bf88b2 lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xfdf5bd1c lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x9ed70955 st_register +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0xe908af7c st_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0x0536d633 dw_mci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0x1e528f58 dw_mci_pltfm_remove +EXPORT_SYMBOL_GPL drivers/mmc/host/dw_mmc-pltfm 0xce34c280 dw_mci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x13b5f156 cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x2c9cd4be cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xd182f128 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x00bdf26c cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x7eefb9bc cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xf3443dea cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0xa2cf20cd cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x2bf3f5fa cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x4f20059d cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x7b107555 cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0x24015065 onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0xdd2ae128 onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x04cf4f91 ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x24b8eabd ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x277067eb ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x2a1c0854 ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x59df0fb7 ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5cfdd22d ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x75e221ee ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xa7d6d7c0 ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xab846766 ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xae1a2130 ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xb1396ade ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xceed8cd6 ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xee29541a ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf83b3210 ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x541e4e2e unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x6109b098 alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x9bfc9705 free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xa90036fb register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xca8b064f c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xe286a9d0 c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x222c295a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2fd655a4 open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x38195143 safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x4ea3f36e alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x5143e135 close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x579ad8f5 can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x603ec802 can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x71b5cba4 can_led_event +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x91c1a539 free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x93cde0fc can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x94f8969f unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb346573b can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xc972c42a register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xd0dec15e alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe063f55b devm_can_led_init +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe7d1e0fe can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xf36701ef alloc_candev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x9d5989f0 register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xb99494dc free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xc56225fb alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xe1d826ea unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x7e04604a unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x88405869 register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x8d42d999 alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xd2777bd3 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x0769d11f macb_ethtool_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x1888a9b1 macb_mii_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x23978f10 macb_get_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x2b189fd2 macb_set_rx_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x7bca1dac macb_ioctl +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xcf8c30d2 macb_set_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xff220533 macb_get_hwaddr +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x0e72b1ba macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x17fc345b macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x93052086 macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xbf040fff macvlan_start_xmit +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xeadb1906 macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvtap 0x7e40f2ae macvtap_get_socket +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x74f313d2 usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x9dab9fa0 usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xd462f946 usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xd77f643a usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x06af9055 cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x3646565b cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x45812f60 cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x52fd617f cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x7ddbb4b0 cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xc87047e8 cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xc8c913da cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xef6fe362 cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x4d27e0d6 rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x52c5eb34 rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x5313cb71 rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xb01889c6 rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xb73b2985 generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xd7448bd1 rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x0c412211 usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x104336e6 usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x11dd679e usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x146e8c73 usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x183935ea usbnet_set_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x20c2d3f1 usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x230805dd usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x2788e54f usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x2b39fe20 usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x2c4c37e7 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x2eb389d1 usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x2ed9aef1 usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3e61a1cf usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3eb568b0 usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4869f864 usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4b09ddde usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x5451aba8 usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x54732da3 usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7d13ac4a usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7ff56e50 usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x83f21b59 usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x90742ada usbnet_get_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9a9302ae usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb838e287 usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc8116d57 usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xcce4d6f9 usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xce7f91ff usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xceacd8f6 usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xd7064aed usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe3538770 usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe5d7c446 usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xfa5f3f0c usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x241a0776 vxlan_sock_release +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x6dee1b00 vxlan_xmit_skb +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x726ab514 vxlan_sock_add +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xa3580247 vxlan_src_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xe286f0e4 vxlan_get_rx_port +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x00951028 i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x08f055e0 i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x1a5d95ee i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x30d7e5ce i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x55de6423 i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x681ebc18 i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x6e1dba2b i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x757765d9 i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x835a767d i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x8565da93 i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x94a012b9 i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x98526efc i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xa7eb39ba i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xadc0f751 i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xcd7ae88c i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe7a03b23 i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x653341f7 cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x6a5ac517 cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x7f22b7d2 cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0xdb5f9791 cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x00b77f57 lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x0135096d lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x29292514 lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x2e58020b lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x2f1c2ab7 lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x45043eae lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x47640a1a lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x47bb1376 lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x4faa82b7 lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x7cff5b3e lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x829ecdc5 lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xa9fafcd7 lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xaff66490 lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xb745be5e __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xe78850d1 lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xe7ae3608 lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x077a7946 lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x174e362d lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x58a1985e __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x8864d136 lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xa6f7abae lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xafd7b5bb lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xbd59c550 lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xc85e6899 lbtf_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xd8cb3388 lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0xb4600c73 if_usb_prog_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0xc81b4524 if_usb_reset_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x0202e4fe mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x258bc5f9 mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x265e1ab5 mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x4478ac47 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x4bd01295 mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x74b3343b mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x81b86ef1 mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xd8a3c1fa mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xdf8742b3 mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xe1f2615b mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xe2aa158a mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xef56bb69 mwifiex_deauthenticate +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xf2cf2902 mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xf6e5d100 mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x10f2f7fb p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x1339bbc7 p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x31313826 p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x37b1e31d p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x6e7ad6c6 p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x71e430e8 p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x7dc6caaa p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xbd172165 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xd5482c20 p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x058c110d rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x0bb16639 rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1569344c rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x261f1ac8 rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x31506f39 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3a58db1d rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3a60ba40 rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x468b5840 rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4b35c9bb rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4e278811 rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x55b79e37 rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x5867c12e rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x63e7917c rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x691724e4 rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x6cccc665 rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x701a87dc rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x707ce02b rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x715f1eb6 rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7990516c rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7c7f2b0e rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x85c70426 rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8996397f rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8b530b24 rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa82b8e10 rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xabbf22c0 rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb400076f rt2800_rt2x00debug +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb6273005 rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb8907481 rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xc549aedf rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xc8ae1b34 rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd02aac0d rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd031ca02 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd2f9d30d rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd7aa11ee rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd9baadcd rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe35d827a rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe874da71 rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xebe08453 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xfd19f9a5 rt2800_get_tkip_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1379bc56 rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1490682a rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1b7b269e rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1be122b4 rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1d721b32 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1ed86e9c rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x24bc067f rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2674eef9 rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2a8774b5 rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2daaa007 rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3e5cd85f rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3fb65307 rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x422356c7 rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4780a3cd rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4bd3e357 rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4e6746c0 rt2x00mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5d5cbe17 rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x63ba0590 rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6406fa33 rt2x00mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x65ed71d5 rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6887df47 rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6b401f54 rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6bc1b462 rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x71c59b83 rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x79d0f27d rt2x00debug_dump_frame +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x7c454b15 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x7c5d1f04 rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8b175e7f rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9509023e rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9f5e7ec6 rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa10a4ec1 rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa25a2ba2 rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa5391490 rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa6555bb8 rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb6d000af rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc245fc8d rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc42e8917 rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc857aaec rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xcc2f7e99 rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd55d7041 rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd606bf7b rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe466b2f0 rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe4b4914b rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe85420ad rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xef1181df rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf1906b71 rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf239da17 rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x0aa068ec rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x10256437 rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x129fc9a0 rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x1330cfab rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x1fd73407 rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x43b852ea rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x5694b035 rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x7bb93fe3 rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x7ee6edc0 rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x8dc10b95 rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x94da98bd rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xa0971b5d rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xdc29e70b rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xdcf1bf4c rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xe33bbca2 rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xf131906b rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x26d5519c dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3bb44bd8 rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x507f7a3a dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xdbd5bd76 dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x049410b8 rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x0bf00843 rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x0fff8c15 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x241dedc1 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x2469da0e rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x2d882d91 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x2ee1c2be rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x376da813 rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x38ce78bd rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x4b20b724 rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x6fb18895 rtl_attribute_group +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x7322a7a8 rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x7786fbf6 rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x7808e45a rtl_dbgp_flag_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x83263da1 rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x8c729758 rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x9813ffce rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xcdd029a5 rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf727040f rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf8ff6add rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x4d79ef1e wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x9b23a5c1 wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xafdf1769 wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x05294fba wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0e5b400f wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1604753e wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x192bd76d wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1d51b07d wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x32959e86 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3ab643b4 wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3bc55715 wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4510ad39 wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x463211b2 wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x49cf6c89 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4dfea3f6 wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4f8c4ce8 wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x503f052d wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x51c2f303 wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x53dff67d wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6e2b509e wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x74b5314e wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x771ae322 wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x80cecebf wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8865b945 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8cff190b wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x92c39744 wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9fb96db7 wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa0ac405d wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xaaf7847a wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xac393b6c wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xaf06ef4d wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xafc33e05 wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc36c3d03 wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xcc6ab8f9 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xcdb0922c wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd1157ebc wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd2f3570d wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd3ef726f wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xde9fe3e6 wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe3e16a28 wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xea86cba7 wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xec51c6f2 wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xee3b9228 wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf12bcdee wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfbd8d9be wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfe80c410 wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x0196a5bb phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x05863b89 phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x09949469 devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x1bb99a3c devm_phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x353edd9a phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x37bcdf38 phy_pm_runtime_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x6a1a64dd phy_pm_runtime_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x7ed0c60a phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x8386a31e phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x83ef0f7b phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x949f9fe4 __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xa1719d50 devm_phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xadc7bfbe phy_power_on +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xb09b680b phy_power_off +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xc385ca3e phy_pm_runtime_allow +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xcb11a771 phy_exit +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xcd995e65 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xd1562938 of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xd9006947 __of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xda87c038 of_phy_simple_xlate +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xdd0935f4 devm_phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xe27355f5 devm_phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xf41679b7 phy_init +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x7365925e pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x78aa3ba9 pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0xb83e1865 pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xc6cf1815 mc13xxx_parse_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xe6096b7b mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xe960490c mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xf320a08e mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xff0a3426 mc13xxx_get_num_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x3391ef43 wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x3a20ea8c wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x503e1e62 wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x892eec50 wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xcf5987e5 wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xd4f93bfa wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0x338e9f60 wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x1a279758 scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x2073d483 scsi_dh_set_params +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x394d5666 scsi_dh_activate +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x593a36c2 scsi_dh_handler_exist +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x639484bc scsi_dh_detach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xd5c06f27 scsi_register_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xd70c1f38 scsi_unregister_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xf832dd49 scsi_dh_attach +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x047ce831 fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x04d72f99 fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x08d49b79 fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0fb51275 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x197ba0bd fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1ddf2cd6 fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x20392d07 fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x30f1fa08 fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x374c1e1c fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x581846e5 __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x59cef383 fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x6f55f937 fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x7fcecc95 fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x84b3d915 fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xc0d4fe76 fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xd5bb10c9 fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xdbe5977e fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xdc21c854 fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xdef52b52 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x1f12a175 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2bc63241 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x69dd7d05 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xa345a89c iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xb9c01250 iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xf094c22e iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x06e5a74c iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x098104db iscsi_eh_target_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0c9ff66b iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0e4e3b88 iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x10720164 iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1d03c065 iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1d19a408 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2404cb93 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x28a4b45b iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3e58ca7e iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x42182c25 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4318ea38 iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x572507f4 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x638b421f iscsi_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6490b28c iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x66b15285 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x679d9626 iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6f28126d iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6f417ead iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7739ca02 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x78b6262c iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7e64e9c4 iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7fdc857a iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x80ef1dd3 iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8290bd3f iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x85b90267 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x955e9703 iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa776ecf2 iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb52f27f9 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb7100529 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbb7bed2f iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc0111636 iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc21fd6b1 iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc5d6fd6f iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xced0f4de iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd7553c87 __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdec32c54 __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdf76bc54 iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe2c7b463 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xec595850 iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf2a0a918 iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf3af9f80 iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf8b20f6d iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfe319eee iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x06fd7ac7 iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x0b01b5a9 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x29bc9881 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x32743018 iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x353efed4 iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x58c0c579 iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x60162633 iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x64af5dec iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x650e5f6e iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x67636354 iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x90665f92 iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x92ba57a0 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x94778e51 iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x993fd5f7 iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xb5353579 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe1c69651 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xf9c2e7d5 iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2c72a72e sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2da863a0 sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x43ceb615 sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x46da7963 sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x483b01f3 sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4c508a43 sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x57846329 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5c9666c4 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x64d75289 sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x67a2579d sas_change_queue_type +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6a1fc470 sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6cd4d6f5 sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7407ddfa sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7e5501f1 sas_eh_bus_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8b620350 sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8bf1170c sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa1efff4f sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb25206cc sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc6feb377 sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xca8cf873 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd4e0402a sas_domain_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe42f8d2d sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xed6bd661 sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf0f685bd sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf18f0362 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x19ad2d36 scsi_host_get_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x6c174846 scsi_tgt_free_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x85667482 scsi_tgt_tsk_mgmt_request +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x8760086c scsi_tgt_alloc_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xafbc55f8 scsi_tgt_it_nexus_destroy +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xd08187df scsi_tgt_queue_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xd1dbe705 scsi_tgt_cmd_to_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xd78dc84e scsi_tgt_it_nexus_create +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xed986425 scsi_host_put_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x04dc3c30 iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x11aec120 iscsi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x18f43a70 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x19d5b81f iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1d16d17d iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1ebde666 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x291e79e2 iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x36a9d71a iscsi_is_flashnode_conn_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x38573426 iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3adbd18d iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3c337c2e iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3cebc090 iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3d946f60 iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x43eedbc3 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4a7d084b iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4ab69693 iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4bd42a6b iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x51378965 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5dfddfe8 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x61d746ab iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6418ab45 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6457a9ff iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x688a7bd7 iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x71652f64 iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x75365b79 iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7f003b9a iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x83d21d3d iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8f897419 iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x94282476 iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x99e55260 iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9e79df63 iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9ea51728 iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa2a4b15a iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa78edb73 iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd5dd7145 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xdce016ed iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe130ee95 iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe1c7639a iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xeffd64a4 iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfbfa0e7a iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x012bd887 sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x2e2ab2c0 sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xaa1c111c sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xcf0e04f2 sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x036c60d7 srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x565fec57 srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xb2f6f28d srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xb729117b srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xd94e4887 srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xee891cc0 srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x52fe626f ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x6a252de1 ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x77678701 ufshcd_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x83dc5f60 ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xc2b277ec ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xdd63c328 ufshcd_resume +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x1af762d2 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x40fc890a spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x5da68624 spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xa1a71e0f spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xc1b34d13 spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x0380382b dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x2f7d8020 dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x51f089b4 dw_spi_xfer_done +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x830308ca dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xbc6bfe55 dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0x072df18f ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x041e6b36 comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x09a469f9 comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0c65ce96 comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0db291e9 comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x15bb1676 comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1af5a287 comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1c469a7d comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1c651c08 comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x29a1eadd comedi_dev_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2e79367e __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x330dddf1 comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6872101b comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6883c1ac comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6bbd19c3 comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6d2403cf comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x716c7eba comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x759cf9ac comedi_buf_memcpy_from +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x785547f5 comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7df3b34e comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7f79dd17 comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9c0649b9 comedi_buf_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa9fd9765 comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb1d5b59c comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc1eef058 comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc8a5d281 comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xccf66e21 comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xce23ac9b comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd09c896f comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdd02301f comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe1ef1105 comedi_buf_get +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe992357a comedi_error +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xef49deed comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf27c5ecd comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfee4692d comedi_buf_memcpy_to +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x0a32c72e subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x20386ccd subdev_8255_init_irq +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x86d3cbe4 subdev_8255_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x4175b81f amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x867e698e amplc_dio200_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xab99bdb0 amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0xc8c75072 cfc_write_array_to_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0xee839a0d cfc_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0xf428b92b cfc_read_array_from_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0xdc879d85 das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc 0xc000b7d6 labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x01fd9bc0 ni_tio_winsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x07526eeb ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x10c4aae2 ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x2795eea6 ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xa8aeadc7 ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xb660e9bd ni_tio_rinsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xc0114638 ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xfb9f16d1 ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x00e07426 comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x56d32fa6 comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x6df49cc4 comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xafcb3ebe comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xbd37bb8c comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xd0952c15 comedi_close +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xf7461ea7 comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x2206b003 dwc2_handle_common_intr +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x911a4cca dwc2_hcd_remove +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xb05a818c dwc2_set_all_params +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xb833f37f dwc2_hcd_init +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x1a1b5249 oslec_flush +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x2feda75b oslec_hpf_tx +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x3227a28e oslec_snapshot +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x7dc9dddd oslec_adaption_mode +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xb2c66001 oslec_create +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xc8b5a524 oslec_free +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xd370f679 oslec_update +EXPORT_SYMBOL_GPL drivers/staging/iio/addac/adt7316 0xa91f0ea3 adt7316_pm_ops +EXPORT_SYMBOL_GPL drivers/staging/rts5139/rts5139 0xbd5a0e51 rts5139_usb_ids +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0e81c76d spk_serial_out +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x14f06fe7 spk_serial_in_nowait +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x263a3aa7 spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x475e158a synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x50a4a319 spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x55c5dda5 spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x6882e049 spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x68d71f42 synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x73413939 spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x86442336 speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e146195 synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x93667d47 synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9a888082 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xad0962f3 spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb14e51c2 spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb2978dbc speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb48956f8 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc766ae09 synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd1b551a2 spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7e810f8 spk_serial_in +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xfa457fb2 spk_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x26c9ad00 usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x39bfeede usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x580ae5c0 usbip_start_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x5c79e757 usbip_recv +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x70b71497 usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x9a334cb7 dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xa5d72b45 usbip_event_happened +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xba3ba3dc usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xd02753dc usbip_header_correct_endian +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe1ea0586 usbip_dump_header +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe64eed30 usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe9282cfc sockfd_to_socket +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xeac0ca04 usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xefb0d237 usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xfab3697f usbip_event_add +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x585ebaac n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/uio/uio 0x1052de39 uio_event_notify +EXPORT_SYMBOL_GPL drivers/uio/uio 0x2ee24db5 uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x9dc286e1 __uio_register_device +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x3584911d usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0xb749372f usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x04bc76b5 usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x29aad77a usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2f83533a usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x328d6ae7 usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3f4bb1b1 usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4407dfb0 usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x54f54877 usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x56177de4 usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x56947405 usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x56f8845d usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5d191640 config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x615f8364 usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6632d356 usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x71bf8c32 usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x787d616c usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7b08e23a usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9282fae3 usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x94d7075a usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9c3df764 usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xa43192f5 usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb7b37b87 usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb947ecb2 usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xc7e8a15b usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd1314d89 usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xeb0e1c2e usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xee2aa5db usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xef8b2472 usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf4dedef4 usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x8e27d6de gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xdee3c5da gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xf1981607 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xfe60b075 gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x0a5230df fsg_common_set_nluns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x141fce2a fsg_common_remove_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x1ccb58f7 fsg_common_set_num_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x2d10b6a7 fsg_common_create_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x36ba5e21 fsg_common_set_cdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x51707c29 fsg_common_run_thread +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x6acb4179 fsg_common_set_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x7e26d4a5 fsg_common_set_sysfs +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x99023bfc fsg_common_put +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9a0221c7 fsg_common_free_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9dc025a5 fsg_common_free_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xa46e6443 fsg_common_get +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xa659c612 fsg_common_remove_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd3ae3b65 fsg_common_create_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd468f882 fsg_common_set_ops +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xe4d1591e fsg_config_from_params +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x781bc8e5 ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0xd5198e7e ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x1417e390 ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x241de40e usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x55423793 usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x5fc06fb4 usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x98ec5bc2 usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xa338c803 usb_ftdi_elan_edset_output +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xb365d4f4 usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xc9229af7 usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xf2ae498b usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-am335x-control 0xf1ca06a0 am335x_get_phy_control +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0x15e36bfc isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x2b616836 samsung_usbphy_set_type +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x56ff60a6 samsung_usbphy_get_refclk_freq +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x622f595e samsung_usbphy_set_isolation_4210 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x68ebe9bf samsung_usbphy_cfg_sel +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x84099d47 samsung_usbphy_rate_to_clksel_4x12 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xa4c34e29 samsung_usbphy_parse_dt +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xb775e0c9 samsung_usbphy_rate_to_clksel_64xx +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0xcfacbec0 usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x01373417 usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x05173d53 usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x13d98cb3 usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x27dc6482 usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x34948346 usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x381f33df usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x590c4471 usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x69141d98 usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x70860ee4 usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x7c9f89a0 usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x8846830f usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x97191434 usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa0ec41f2 usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xab0b479d usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xb2c598fe usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xb6d0b5e7 usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc8235c91 usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xd8954b13 usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xd9acfae5 usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xee6bf69c usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xf79d5922 usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x00eebb13 vfio_group_get_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x2ea04726 vfio_add_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x84548bc5 vfio_register_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xb106230c vfio_del_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xda72214a vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xead6f509 vfio_device_get_from_dev +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x017a25c5 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x03e8fe28 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0c868b83 vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0d35f6ca vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0ff54042 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2217b36e vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x269f7a09 vhost_dev_reset_owner_prepare +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x26b637e1 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2f99e1ef vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x31feaa9e vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x32bcc5e8 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x346122e8 vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3b8e3180 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x48662b07 vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x595f38af vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x66facd40 vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7181e3b4 vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8d1b4209 vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xae21a1bb vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xba650509 vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc00c2305 vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc6fe37c7 vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc7e6b526 vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd6863720 vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xdc99e699 vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe75baa1e vhost_init_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xead4bbaf vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf2eb2899 vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf9db6e48 vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xfc6704ca vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xffb224b2 vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x03479b0d auok190x_send_command_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x3371a5a4 auok190x_common_remove +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x56b50854 auok190x_send_command +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x5d8ecff6 auok190x_send_cmdargs_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x6ef9e70d auok190x_read_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x712a1cf4 auok190x_send_cmdargs_pixels_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x97a0a64e auok190x_common_probe +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x9b68de4b auok190x_pm +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xd3e37091 auok190x_send_cmdargs_pixels +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xdf06551c auok190x_send_cmdargs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x02191ba6 ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x1c159c58 ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x22ee57ae ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x2528f881 ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xbd39efd0 ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xec33315a ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xfc94eafa ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0xd0285329 fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0xe85b5bcb fb_sys_read +EXPORT_SYMBOL_GPL drivers/w1/wire 0x20b3703d w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x2cfd5512 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x3bd188ae w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0x45bf8b49 w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x5223b451 w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x78380850 w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0x7c2f2afb w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x9ca5c8ab w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xb5e4a85a w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xb76c60ec w1_next_pullup +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x0d16f731 dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x9321df95 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xae0d77da dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xba9989b2 dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc6dc8c2f dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xdc583c08 dlm_unlock +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x033fac02 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x17ce645d locks_end_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x3239f35c nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x3f1b363c nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x5a2c2cca nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x634a25cd locks_in_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xbf66bbde lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xc74c6138 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xd381f64b nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xe538dc08 locks_start_grace +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x03e43d3f nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x053a54a0 nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x064f85eb nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x06a6f480 nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x080fba3b nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x08a44199 nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x091e4183 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x09f59d85 nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0b4d0592 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0d957a33 nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0f31eec7 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0f6381b1 nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x116e1bca nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x130546fc nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x13a44bee nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x19819208 nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1f3504d6 nfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x221a27ce nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x25287643 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x29827766 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2e5ec778 nfs_destroy_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2e9c6baf nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2ecb06bf nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x30ec4a5d nfs_readhdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x310a61de nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x31842283 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x327bbcce nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3523b19c nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3bf44dfa nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ca31f35 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40ab3b64 nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x420e6f4c nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x448a9f3a nfs_file_fsync_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x472f6e8e nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x49e3d118 nfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4de8ee5e nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4e267a78 nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4ef70ff4 nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x54a72119 nfs_remount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5622eaed nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x56411f34 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x58210381 nfs_file_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5973fe8b nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5acfcae1 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e1d863a nfs_sockaddr_match_ipaddr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x61d65f02 nfs_fs_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x623a53b4 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x62c377dd nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x68ba4a7f nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6b3dee9e nfs_setlease +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6dc0a5b0 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x785d3b9d nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x78750d09 nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7a7d941c nfs_clone_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7ada6298 nfs_try_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7dbc0cc8 nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7e618558 nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7ef3c84b nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x82053f0f nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8285d455 nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x85f0ceb9 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8659a9e4 nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x87b59805 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x88246d87 nfs_generic_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x88d93ae1 nfs_pageio_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89bc5a64 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8c72f730 nfs_file_splice_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8e3bca3b nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90ba12d3 nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x92570e8c nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x92ff1433 nfs_initiate_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x95501bca nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x96d93918 alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98ddd9f5 nfs_pageio_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9a403357 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9d4f81bd nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9dcef5d2 nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9efde8e9 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9f21e417 nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9f7f6b57 nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa0faeccd nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa2c02b9f nfs_put_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa3d72aae nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa702d08c unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa736ca54 nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa77ea64b nfs_set_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8d2d1ce nfs_callback_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa93a8043 nfs_generic_pagein +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa98aef4c nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa9fe8cbd nfs_initiate_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaa0f97f9 nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaaa14361 nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xad3ebcb8 nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xadc25988 nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xae95e0b0 nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb53bf4d0 nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb606e716 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb60f7a4b nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb620c978 nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb90e9fe5 nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xba28d7fe nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbac58498 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbb7d894a nfs_fill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbc56f609 nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbc823d05 nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc2bb209a nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3767486 nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4081ab2 nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4593000 nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4ff1e9f nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5ef47d5 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc6997e4b nfs_file_splice_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc7f04359 nfs_writehdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xccb12855 nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcd0cd458 nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcdb59f03 nfs_fs_mount_common +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xceb6e822 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcf1220d3 nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd0f3899d register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd2513081 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd327fb67 nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd3ce965f nfs_readdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd645462a nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd933fdc3 nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdfd0b7a0 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe18ffedb nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe2ca4a09 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe7bb539c nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe86c912d nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xec11ab2d nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf13e0451 nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf27df9f0 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf2e7e89b nfs_pageio_add_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf5ed3487 nfs_writedata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf65bd70a nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf8f73217 nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb7ee006 nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x04655eed _pnfs_return_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0b2f15f9 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x11bda27c __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x12ef6842 nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x150583b0 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x170f3ed6 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x172bc1c7 pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1bbd4e26 nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x24efa310 nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x25876565 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2a782896 nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x377993e3 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3a1d67ee nfs4_insert_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3a69cc49 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x43fa8279 nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x46023847 pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x50261eed pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5c2e4e6d nfs41_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x64be96c9 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x665fa50e __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7760f05c pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x77fb8519 nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7822f136 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7d62b846 pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8d102f56 nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9396b93e pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa1925a58 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xab12e39d nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xadb0bf0b pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb50cd663 nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb92ce683 pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc0efd77a pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc2d6ec0b pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc6bd6d59 pnfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc9bf4a7a nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xca0cf83e pnfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcf3dedbb pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd2a1e73d nfs4_proc_getdevicelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd738400b pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdb813e84 __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf8c00743 nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfe541aef nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xff1bc964 nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x03a35ba3 nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x2e0bb215 nfsacl_encode +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1cb231d0 mlog_not_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1d747ce3 o2hb_check_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x274dc37f o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36418553 o2net_send_message +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x3fd5f7cc o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x53bddb48 o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x687f6251 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x91c8a9b4 o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x9242386b o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x9fd1a2b4 o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa82a8645 o2nm_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa9f5379a o2net_send_message_vec +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xae808bac o2net_register_handler +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xbaeb4700 o2hb_check_node_heartbeating_from_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc3679d7b o2hb_get_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd60f2c6c o2hb_check_local_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf1a5611d o2net_unregister_handler_list +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf6dd08ea o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x0e22d2b3 dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x377a2fa0 dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x508aee6e dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x60098d1d dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x6c622cd6 dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xb7965924 dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd7ba575e dlm_errmsg +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd8fa57a6 dlm_unregister_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xfb86b96f dlm_errname +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x025e2d69 ocfs2_cluster_connect_agnostic +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x0562c415 ocfs2_cluster_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x16b2e575 ocfs2_dlm_unlock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x407eb74a ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5469ce31 ocfs2_dlm_lvb_valid +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x6216d6e7 ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x7083dbd5 ocfs2_dlm_dump_lksb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x89502fe7 ocfs2_cluster_connect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x91637203 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xb4bd060c ocfs2_dlm_lock_status +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbbc4ef97 ocfs2_stack_supports_plocks +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xdc823ea4 ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe2bd47db ocfs2_dlm_lock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe40cffce ocfs2_stack_glue_set_max_proto_version +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe417d940 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x50662359 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0xecbeff11 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x021957e1 raid6_datap_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x05513b71 raid6_call +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x0f8a2742 raid6_2data_recov +EXPORT_SYMBOL_GPL net/802/garp 0x0d941d8d garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x10fc2b5b garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0x16df62b2 garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0x183a9dec garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x3e651578 garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0xf9f74398 garp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x05eadcb2 mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0x29a3c819 mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x7b6f0ffd mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x7d3dde6b mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x83006faa mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xe3dd8114 mrp_register_application +EXPORT_SYMBOL_GPL net/802/stp 0x874589b8 stp_proto_register +EXPORT_SYMBOL_GPL net/802/stp 0xbf4da271 stp_proto_unregister +EXPORT_SYMBOL_GPL net/9p/9pnet 0x012f402b p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/9p/9pnet 0x618dc31f p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/atm/atm 0xb09faf79 register_atmdevice_notifier +EXPORT_SYMBOL_GPL net/atm/atm 0xcfb6a3da unregister_atmdevice_notifier +EXPORT_SYMBOL_GPL net/ax25/ax25 0x9860021c ax25_register_pid +EXPORT_SYMBOL_GPL net/ax25/ax25 0xac93ae05 ax25_bcast +EXPORT_SYMBOL_GPL net/ax25/ax25 0xaeb7451e ax25_defaddr +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x444838b2 bt_debugfs +EXPORT_SYMBOL_GPL net/dccp/dccp 0x039f43e5 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0x09a123b7 dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1d99d49a dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1e8c0687 dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x20f0fdb1 dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0x21311d46 dccp_insert_option_elapsed_time +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2c84e1d0 dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3773bac5 dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3941d70f dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4ec35231 dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5d000fbe dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0x733785aa dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7d4867ef inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0x82e73866 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x88841ae2 dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8c7d81ae dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x99e5d5d5 dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9a2a7f29 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9ff0a824 dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa5adf4d6 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xab7564f7 dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0xafb258ac dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0xafdf2ae8 dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb194d7e6 dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb547274a dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbbc9a0c8 dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc168083d dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc6bb480f dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc71ea991 dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd84c8aba dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdbb6a398 dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdc04be81 dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0xddfa8cbb dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe7b0728c dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0xed96390f dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0xef13ef5f dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf3017e21 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0xff3d96b7 dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x04fe06f3 dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x2d9fe7de dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x832abc91 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xc9831f9d dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xd4575a27 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xdb7c5743 dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x3020cc03 register_switch_driver +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xd9c6fcf4 unregister_switch_driver +EXPORT_SYMBOL_GPL net/ipv4/gre 0x1e6d29b4 gre_cisco_unregister +EXPORT_SYMBOL_GPL net/ipv4/gre 0x345cc15b gre_build_header +EXPORT_SYMBOL_GPL net/ipv4/gre 0x6e056f67 gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0x7783c235 gre_cisco_register +EXPORT_SYMBOL_GPL net/ipv4/gre 0xb55523ed gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x001add0c inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x0ae4cff5 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xa08fb9f3 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xb72c1aa1 inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xcf82ed38 inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xf9fc4833 inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x0de867cc ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x20e2dc27 ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x37da208e ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x3df7a86e ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x40d40518 ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x5f98c75d ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x6810d200 ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x99f948d0 ip_tunnel_delete_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xbc6fa1b4 ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xd6450da2 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xd7699dc3 ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe1803030 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe3e3e3b2 ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xfbefc61c ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0xf8e66b3d arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0x8699f4a9 ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_conntrack_ipv4 0x6d40a921 need_ipv4_conntrack +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x6b6c3d10 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_ipv4 0xcf5060b1 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_proto_gre 0x636b12c8 nf_nat_need_gre +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x3ef429f3 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x4768eddf tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x6e0bb4ce tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x9a38cc0f tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xae7eb92e tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0x2cc4bd37 xfrm4_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0xd2f325ff xfrm4_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x219fd334 ip6_tnl_dst_store +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x451589b8 ip6_tnl_dst_check +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x9dabf532 ip6_tnl_dst_reset +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xbee85a72 ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xde795bdb ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0xa5cca3bb ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x6eb85693 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_nat_ipv6 0xe74ac3cf nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0x1839c69e xfrm6_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0x67dbc332 xfrm6_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x103c5c88 l2tp_session_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x1e769c4d l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x27bc3458 l2tp_session_queue_purge +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x81c3f51d l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x823b47a9 l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x869cbba0 l2tp_tunnel_closeall +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x8ecafc3d l2tp_tunnel_sock_put +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x9af70f52 l2tp_tunnel_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa269f654 l2tp_session_find_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xbcf5e72e l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc1e059e5 l2tp_tunnel_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd8bf84d7 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xdc33bf4a l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xec6b3393 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xfef3bb33 l2tp_session_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xff05792c l2tp_tunnel_sock_lookup +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xff3c760d l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x10d2b29d l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3663a36d ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4bf42798 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x548034e6 ieee80211_iterate_active_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5d38f601 ieee80211_set_key_tx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x61255d39 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x625a4c5e ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x62f81e96 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x651f3681 ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x8855efd4 ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x931f9ea4 ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x9d06244d ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xafb5e879 ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd2a6ef68 ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xdab683a0 ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xe2caac34 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x0eaf6097 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x22b60b59 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x2a5ddba3 ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3578599e ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x39e1b75f ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x4e3feaab ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6344eaf6 ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x647d6e28 ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6545143b ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7dc9d088 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x8b53e4a9 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x92efe1ad ip_set_nfnl_get +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x93e4cd99 ip_set_get_ip_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa01087b8 ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa2d623f3 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xacc49bca ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc897c6e0 ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc985642a ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xef13ebbe ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x2b894812 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x3a8a9c8d ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x74e24dd2 ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xa1ba89f3 unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x003992f7 nfnetlink_parse_nat_setup_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01ddb340 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01f84db5 nf_conntrack_set_hashsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x031c016b nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x045072cd nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x04d5e265 seq_print_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x06feb3a6 nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0d86c87b nf_conntrack_l4proto_tcp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0fe8e5c0 nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1150c877 nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x115d508e __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x172a7606 nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x17607bac nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x18dcbe3c nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x200cf4c8 nf_conntrack_l3proto_generic +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289c3714 nf_ct_alloc_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2fa57521 nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x37386cac nf_conntrack_hash_rnd +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x38e99bba nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3e391a5d __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3f5b1415 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3fb0aaf9 nf_conntrack_l4proto_tcp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x413cddc5 nf_ct_l3protos +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x45f98755 nf_conntrack_l4proto_udp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x46ce3e47 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x47a97428 __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x575a390f nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x58dc4ca0 nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5ce89a38 nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x60a5e660 nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62813e5c nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6288c321 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62adb652 nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x65dbbf71 nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6b93a1c1 nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6e224a7a need_conntrack +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7149aaec nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x72a573f3 __nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x742b5325 nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7524673e nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x77cfe5d7 nf_conntrack_l4proto_udp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x78f9b710 nf_ct_l3proto_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7c5207a5 __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7ccc46ec nf_ct_l4proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x80186efd nf_ct_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x80976c44 nf_connlabel_match +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x87f269c3 nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8b6538a1 nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8b95f779 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x90ff6c9f nf_ct_invert_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9382bc23 nf_conntrack_flush_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x99e0ac4b nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9b627037 nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9c370791 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9dcafdba nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9e0a9dec nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9eb8c021 nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa0f7e8f2 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa45615b4 nf_ct_l3proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa4e110fa nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa530124e nf_connlabel_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab3d1f95 nf_ct_untracked_status_or +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xabc08b10 __nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad1bb027 nf_ct_free_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xafdcd1a3 nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb23f3373 nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb4aecd11 nf_ct_l3proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb5f144f6 nf_ct_l3proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb602c57e nf_ct_l3proto_module_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb71920eb nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb8ec42a5 nf_ct_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbf8c9b8a nf_ct_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc23f5a2c nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc73ba059 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc770a981 nf_nat_seq_adjust_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcbf51250 nf_ct_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcda6c042 nf_ct_l4proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcef81e00 nf_ct_get_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd2890186 nf_ct_l4proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd79108f8 nf_ct_l4proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd979e4b9 __nf_conntrack_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe2fef0dc nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe36d4e59 nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe5b6d1c8 nf_ct_l3proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeab35403 nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf12c9f05 nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf8274c11 nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfbce10ab nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfd905b1b nf_ct_iterate_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfde73bf8 nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x7fa589d8 nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0x8f85c3a5 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0xf0d16657 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x125a206c nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x19e2f8c4 nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x2c706308 set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x33e00ce8 nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x6654b187 nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x676e6cc4 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x9c8d4cdd nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xac713ee3 set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xb02b4fc5 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xf54501be set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0x7cc9c429 nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x02bfbd5d nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x5b8922a0 nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x6983adc1 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xcbb84b52 nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x17485bef nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0xe84eee71 nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x01323f1f nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x31edda23 ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x37e5005e ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xab5d6513 ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xb61beb96 ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xe7e185f1 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xf7ec39a3 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0xac52b001 nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0x13ebed76 nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0d9bae4b nf_nat_l4proto_nlattr_to_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x131f636c nf_nat_l4proto_in_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x1a39f93f nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x2793778b nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x30166a50 nf_nat_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x731991a5 nf_nat_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x7cd0f707 nf_nat_l4proto_unique_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x8334208a nf_nat_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xe553b7e4 __nf_nat_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xe98fc01d nf_nat_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x11a006b5 synproxy_check_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x480fb5e2 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x490f4b70 synproxy_tstamp_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x8841d39b synproxy_build_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x90298227 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb42e336a synproxy_options_size +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xef7db50c synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0e3e1ee4 nft_unregister_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0fda3c99 nft_validate_output_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x141f704d nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x2b546e19 nft_register_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x2ffc0cec nft_data_uninit +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x34e140c5 nft_do_chain_pktinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x367f7f83 nft_validate_data_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3d49dab7 nft_validate_input_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5214f087 nft_unregister_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x67269767 nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x681ed211 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x97a4a72d nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb5633461 nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe938fe64 nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf48e59c1 nft_register_set +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x0102783c nfnetlink_alloc_skb +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x3d5fb5c2 nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x443f6045 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xb482696d nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xe112b4d0 nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xe23593eb nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xfb9caa8e nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x21f6bba6 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x29e5291c nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_log 0xa92c7887 nfulnl_log_packet +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x06759ec0 xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x231d3669 xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x2b8a723c xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x40728a63 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x41d365e2 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5fc07d29 xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x807d2b2c xt_recseq +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x83b893d7 xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x840df237 xt_hook_unlink +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xabeaa00e xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xb42db1f5 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbb09f76a xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbc208059 xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc00ac408 xt_hook_link +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc8fcc6cf xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x57909dc1 xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0xd0f26ea3 xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x0fe61eb2 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x8e00e3c8 nci_spi_send +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0xdf08123a nci_spi_read +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x09e952d0 rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0x0b2f4aa9 rds_send_get_message +EXPORT_SYMBOL_GPL net/rds/rds 0x129d2065 rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0x13a1a713 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x197a35e3 rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0x1a4d47e6 rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0x2c5c5514 rds_message_add_rdma_dest_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3101936e rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x326dc97a rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x39a811d4 rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0x3b4fc0fc rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x3c738921 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0x47b66039 rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x50cbe7b3 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x595c3884 rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x59660c9b rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0x59b1a5ec rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0x66b5bfc8 rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0x73aac73d rds_message_populate_header +EXPORT_SYMBOL_GPL net/rds/rds 0x74a87402 rds_page_copy_user +EXPORT_SYMBOL_GPL net/rds/rds 0x90d8c369 rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x96fafe85 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x9a9286f3 rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc642cc2c rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0xc78a631b rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0xd5cbec22 rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0xef79c3ea rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xf61a2599 rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0xf90ce437 rds_inc_init +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0x65bcdeca rxrpc_unregister_security +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0x967c657c rxrpc_register_security +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x00c52ef5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x20498981 gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x8c18114d svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x8d1a827e svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xb5dea7ef g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xee529150 gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xf8b2ff6e g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0239fbb7 xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x042bc6ce rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x045834e9 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0464e714 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x054729b3 rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0637e279 rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0640d3e5 svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x08b9f659 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0a58dcdf svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0acb2724 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c36d761 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0da838f9 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f1f1ac2 xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f668ba9 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x10b7fb30 rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1138a6ee bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x11f9210b rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x12aa5863 rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x12c586c5 rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x138aa1e1 svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x179693f6 xdr_partial_copy_from_skb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x17e93544 svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x18424ab8 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x18c2b4f4 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1cb447f3 rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x212fc671 xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x21869443 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x21b49d40 sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23b7249a rpc_lookup_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23c1fda8 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23fa3989 svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x247b8614 rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x24a76a66 rpc_print_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x274cf561 xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2750ed01 rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x287a09d7 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x29732500 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2d0ace34 rpc_rmdir +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2d4f2f51 rpc_lookup_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2d6e364e svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2e4fbec6 cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2e67bfa3 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eec63c9 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f8ebbe0 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x323b9b3d cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34678ef3 xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34bbb506 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x37d80380 svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x380aa938 svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3910e79f xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3970a07c rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a701788 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3cd949e4 xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3d6dfdb2 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3ef0e451 svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x40a130de rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x46aee950 rpcauth_cred_key_to_expire +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x47a7e228 sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x49a762bc rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4a1a6e5d xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4a47e48e sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4b984c49 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4bd6c882 xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d3d7c07 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e3dd6fd rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4fb60526 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5058193d rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x51791c3b rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x54fa3c1b xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x55a5ef34 rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x58bf14e9 rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5ba29f43 rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5dd424d4 xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5ec62a3e unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5f1396b9 rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5f2dcf46 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6014e23b svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x606e80a9 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x608e591d rpc_protocol +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6379322c xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x659aaaf9 rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x684bf324 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x68f61bda __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x690c3089 sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x69221c49 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x69de2a19 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6ab8c70e svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6c93b1da xdr_buf_read_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6d8c3377 svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x705c66d9 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x707120be rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7242d3ee xprt_lock_and_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7251e029 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x74030697 rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x743f6f05 rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x758cbd0f cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x76082235 read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x77937e3b svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x78a73742 svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7ae63338 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7bb723b6 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7ca73e53 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7cbdf667 xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80951b28 rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80a8fb9a rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x817638c6 xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8269191e cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x839e500c xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x83b20509 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x886ef94a rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x89e7c92b svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x89f845b5 auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8b3bc73f rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8ca7e65e xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x91f34d79 svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9315ea12 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x94995216 rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x94b65f67 rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98a781d5 cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98b75d64 rpcauth_list_flavors +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9a9640c5 svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9c7f49ec xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d6a7212 svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9fb46edf rpcauth_key_timeout_notify +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa2a5897b xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa30b7564 rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa43a56da svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa526f856 xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa558f32c xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa6735695 svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa7ddfea2 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa8b22b33 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xab2fad54 rpcauth_generic_bind_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb04d7eb8 rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb279b4e2 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb564255d svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb6ff2bf0 xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb85285e svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb91febe xprt_set_retrans_timeout_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbe32f14e rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf7b73e1 xdr_skb_read_bits +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbfda6cd0 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc0690048 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc13c2aa4 rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc20e7993 auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc2715b6d rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3880471 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc442ce4e xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc5519f5b rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc669aaea rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc70900b0 xs_swapper +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8477f0e rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcac7ecc3 rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcbab6dec rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcbd9268c svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcd178650 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcd545a7e rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcd881f4a xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcdc5298d xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce0b6389 svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcf7280c5 rpc_get_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd0b22086 rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd1d41c47 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd4e1c76d xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xda54f801 sunrpc_cache_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdad3fbc4 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdb5e6931 rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdbb0030f rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdd7c98c8 xprt_set_retrans_timeout_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xddfc2a49 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xde50cbe2 write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xde92fc86 _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe0499c3b xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe0ce0eec svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1ac2bb8 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1bfc32d rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe2bd7613 rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe41c6788 xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe53e494c svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe758da29 rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe92bc9b0 rpc_task_reset_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedf91730 svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xef0a96fe svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf1846f42 svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf2117796 xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf2c71ef5 svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf6db9bc1 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf86cd3e9 rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf8bb6d9e rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9d1164c rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfa07e107 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfa6ab11d svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfdca822e xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfead803e svc_reserve +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0c79d5ef vm_sockets_get_local_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x15c0c57c vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x1cedd2de vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2de12459 vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x3f6860b5 __vsock_create +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x4fdefdf5 vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x555d957f vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x5cbf9d30 vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x654d5bf6 vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x719d517a vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x74e91915 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7f730c80 vsock_core_exit +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x86146f5c vsock_core_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd8c0ca93 vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd9642a6e vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe729f5fa vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf593c40a vsock_pending_work +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xfc024009 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/wimax/wimax 0x112e82c9 wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0x3095765c wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x3a4df3b5 wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0x52d2e3b0 wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0x7ef3412c wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0x940af974 wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0x95738019 wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0x9ba02d39 wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0xb65a7d9b wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xc5bd35c1 wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0xd9f1e351 wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0xe49026d5 wimax_msg_send +EXPORT_SYMBOL_GPL net/wimax/wimax 0xed1eb133 wimax_dev_add +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x0fc7fdc7 cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x1f9da168 cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x44c8bb7c cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x4dc44317 cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x565be050 cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x5d8ae2a1 cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x5e7a3e8e cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x732b426f cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xa11fcae3 cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xaf2a9774 cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xd44a773c cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x00778770 xfrm_ealg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x056bb269 xfrm_ealg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0a575945 xfrm_count_pfkey_auth_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0b9e5852 xfrm_aead_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x28e23139 xfrm_probe_algs +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x74e1a843 xfrm_aalg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7a8ca627 xfrm_count_pfkey_enc_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7c30b8c7 xfrm_calg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x92dbc6c1 xfrm_aalg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xbc8b0f41 xfrm_calg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xce7a55c1 xfrm_ealg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xe122af95 xfrm_aalg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x0eb9412b ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x11aaeed4 ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x13a3441c ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x917f351c ipcomp_destroy +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x18a1a3cb atmel_pcm_new +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x40a0d1f0 atmel_pcm_mmap +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x430a5f6d atmel_pcm_free +EXPORT_SYMBOL_GPL vmlinux 0x00000000 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x00000000 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x00000000 kern_mount_data +EXPORT_SYMBOL_GPL vmlinux 0x00000000 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x00000000 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x005b3cd9 device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0x00632780 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x0070fd38 dev_pm_opp_find_freq_exact +EXPORT_SYMBOL_GPL vmlinux 0x00789309 flush_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0x007e8ce8 dev_pm_opp_free_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0x009304b6 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x00ace266 kvm_set_memory_region +EXPORT_SYMBOL_GPL vmlinux 0x00b7cf65 spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0x00be061b cgroup_is_descendant +EXPORT_SYMBOL_GPL vmlinux 0x00c05840 scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x00c41c0a mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL vmlinux 0x00c4dc87 timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x00d72361 __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x00ebcb5d ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0x01010c6d klist_add_before +EXPORT_SYMBOL_GPL vmlinux 0x0110b78b pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0112eb7b spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x01167d4e ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0x011cf028 regulator_suspend_finish +EXPORT_SYMBOL_GPL vmlinux 0x0148adb6 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x0190d09e kobj_completion_del_and_wait +EXPORT_SYMBOL_GPL vmlinux 0x019e1102 ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0x01aa1470 blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x01c6cb0c cpu_cluster_pm_enter +EXPORT_SYMBOL_GPL vmlinux 0x01c9ee50 aead_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0x01ddc7b6 udc_attach_driver +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01fb6863 pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x02047705 debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0x02702494 usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x02b583b7 debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0x02b894c6 sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0x02b907d5 platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0x02e13f4c single_release_net +EXPORT_SYMBOL_GPL vmlinux 0x02f77bea gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x032cad90 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x0343d4bc ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0x0345555a ioremap_page_range +EXPORT_SYMBOL_GPL vmlinux 0x036bd26c adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x037df84b kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL vmlinux 0x03ab14f9 pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0x03c1b072 ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0x03c56f52 rtc_set_mmss +EXPORT_SYMBOL_GPL vmlinux 0x03e3686c ata_timing_cycle2mode +EXPORT_SYMBOL_GPL vmlinux 0x03e402c2 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x0402b504 __percpu_ida_init +EXPORT_SYMBOL_GPL vmlinux 0x043c9806 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0x04486e88 rcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x045300b7 mtd_block_markbad +EXPORT_SYMBOL_GPL vmlinux 0x045b452f of_clk_get_parent_count +EXPORT_SYMBOL_GPL vmlinux 0x04602c55 kvm_release_page_clean +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x046c7ea9 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0x04874918 crypto_init_spawn +EXPORT_SYMBOL_GPL vmlinux 0x048b5f8d twl4030_audio_get_mclk +EXPORT_SYMBOL_GPL vmlinux 0x049d951c cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL vmlinux 0x050c1166 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x05103a80 sdhci_send_command +EXPORT_SYMBOL_GPL vmlinux 0x05221476 inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0x053d5d08 pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0x053ed7dc snd_soc_info_volsw_s8 +EXPORT_SYMBOL_GPL vmlinux 0x0548d09a register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x0551f0ce tick_nohz_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x0568d06f pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x0574068b cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0x058454af inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x0591ba96 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x05933cac fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0x05d629b3 reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x05e0bc77 __rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x0619fd9c __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x06364724 crypto_tfm_in_queue +EXPORT_SYMBOL_GPL vmlinux 0x06438115 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0x064af9be tpm_gen_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x068aa6df spi_async +EXPORT_SYMBOL_GPL vmlinux 0x06a9c030 rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0x06d549e6 pinctrl_free_gpio +EXPORT_SYMBOL_GPL vmlinux 0x06dceffb snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL vmlinux 0x073c19d9 usb_stor_bulk_srb +EXPORT_SYMBOL_GPL vmlinux 0x073cbf01 crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x07455fa9 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x0762403c edac_put_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x0784e2c3 tpm_show_durations +EXPORT_SYMBOL_GPL vmlinux 0x07933e02 ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x07a37e25 dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07b8a091 snd_soc_dpcm_be_get_state +EXPORT_SYMBOL_GPL vmlinux 0x07d66ce9 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x07ed48c3 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x07fa1556 ci_hdrc_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x0899f091 hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x08c5e2d6 device_create_vargs +EXPORT_SYMBOL_GPL vmlinux 0x08ce6a0f crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0x08d1c029 snd_soc_register_codec +EXPORT_SYMBOL_GPL vmlinux 0x08d2105f swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0x08ddb898 snd_soc_platform_trigger +EXPORT_SYMBOL_GPL vmlinux 0x08e39832 usb_gadget_unmap_request +EXPORT_SYMBOL_GPL vmlinux 0x091b5157 crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x092a9d17 sdhci_enable_irq_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x09437748 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x09469482 kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x0953b9c7 sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0x09843bec crypto_alloc_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x09a9b662 input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0x09afb45b regmap_update_bits_check +EXPORT_SYMBOL_GPL vmlinux 0x09c4ecb0 crypto_lookup_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL vmlinux 0x0a1ad723 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0x0a2ec5f0 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x0a37562a __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0x0a50bd90 iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0x0a9fd3c5 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x0acb19cd wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x0afbbdb8 cpufreq_governor_dbs +EXPORT_SYMBOL_GPL vmlinux 0x0afd4610 zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b2d773e rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x0b3f83cc regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x0b401306 dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x0b59390b __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0b85ed03 kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x0ba8374b __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x0ba8f497 raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x0bae62b1 ktime_get_monotonic_offset +EXPORT_SYMBOL_GPL vmlinux 0x0bbae511 return_address +EXPORT_SYMBOL_GPL vmlinux 0x0bd1683f regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0bd37289 ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0x0bddd819 bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x0bfa3a19 rcu_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x0c03cafd vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0x0c06883f sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x0c0c015e ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0x0c2cdbf1 synchronize_sched +EXPORT_SYMBOL_GPL vmlinux 0x0c3915dc pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x0c528165 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0x0c5334f7 transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0x0c54eac3 snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL vmlinux 0x0c9225ce nand_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x0cbf071d cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x0cc1e40f crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x0cee46a1 blk_queue_bio +EXPORT_SYMBOL_GPL vmlinux 0x0d05e159 mount_mtd +EXPORT_SYMBOL_GPL vmlinux 0x0d103104 ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x0d10c728 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x0d116b27 sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x0d2260e3 md_is_badblock +EXPORT_SYMBOL_GPL vmlinux 0x0d2d91a0 dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x0d340c99 tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0x0d3b61a0 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x0d548ba0 get_device +EXPORT_SYMBOL_GPL vmlinux 0x0d5a49cb dm_kill_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x0d5efc01 extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x0d81f712 tcp_done +EXPORT_SYMBOL_GPL vmlinux 0x0d86e5b6 snd_soc_dapm_free +EXPORT_SYMBOL_GPL vmlinux 0x0d9d852e subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x0dafc5cc gpiochip_add_pingroup_range +EXPORT_SYMBOL_GPL vmlinux 0x0dbd0e20 of_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0dde2a29 irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x0e03873e mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL vmlinux 0x0e209a34 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x0e3304ba scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0x0e3e2512 i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x0e5fa35b device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x0e93f145 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0eabe292 snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL vmlinux 0x0eb8b34b class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x0ed36b2f call_srcu +EXPORT_SYMBOL_GPL vmlinux 0x0ed9302e percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x0eee874d ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x0f0eec15 pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0f15681d led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0x0f158d55 ci_hdrc_add_device +EXPORT_SYMBOL_GPL vmlinux 0x0f4ea9f0 register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x0f751aea input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0x0fc01e9f static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x0fc3bd35 hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x0fe112dc of_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x0fe65e8c synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x10140b26 thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x10184613 snd_soc_resume +EXPORT_SYMBOL_GPL vmlinux 0x1026c1d9 srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x1047a84b snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL vmlinux 0x106a968e tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0x1070b320 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x10884cef da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x109250b4 md_stop +EXPORT_SYMBOL_GPL vmlinux 0x1096278c pinctrl_dev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x109ecf00 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x10b4c3e3 snd_soc_dapm_kcontrol_codec +EXPORT_SYMBOL_GPL vmlinux 0x10eff7e6 ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0x1107e855 ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x1113dc72 mtd_table_mutex +EXPORT_SYMBOL_GPL vmlinux 0x11210ed6 snd_soc_unregister_component +EXPORT_SYMBOL_GPL vmlinux 0x112ab166 spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x113752c6 tpm_release +EXPORT_SYMBOL_GPL vmlinux 0x1172ce54 rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0x11a5fdb0 usb_stor_Bulk_reset +EXPORT_SYMBOL_GPL vmlinux 0x11b0cb70 dm_dispatch_request +EXPORT_SYMBOL_GPL vmlinux 0x11dc4fd5 snd_soc_dapm_put_enum_virt +EXPORT_SYMBOL_GPL vmlinux 0x120b9c78 da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x121ed3f3 add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0x122a3634 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x123aea8e ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0x124f2056 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x125d89cb usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x126f3987 sk_unattached_filter_create +EXPORT_SYMBOL_GPL vmlinux 0x129582e9 rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0x12c66040 dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0x12ed7136 device_register +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x1331ef42 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x1337c067 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0x13921363 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x139f6edd ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x13ad647f scatterwalk_bytes_sglen +EXPORT_SYMBOL_GPL vmlinux 0x13b89dee pinctrl_request_gpio +EXPORT_SYMBOL_GPL vmlinux 0x13d6d05b device_show_int +EXPORT_SYMBOL_GPL vmlinux 0x140684ed virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0x140a3bef snd_soc_register_component +EXPORT_SYMBOL_GPL vmlinux 0x142a8be4 of_clk_get_parent_name +EXPORT_SYMBOL_GPL vmlinux 0x142ad0bc proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0x142e0839 ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1438e157 crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0x1478638b ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0x14829e0a md_run +EXPORT_SYMBOL_GPL vmlinux 0x1483ec19 ata_do_eh +EXPORT_SYMBOL_GPL vmlinux 0x1490fff9 crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x14bd3744 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0x14d024d9 wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x14f875ce devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x1525f36d __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x15347e89 usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x155f1512 dev_pm_opp_init_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0x15783578 usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0x15892417 async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x15a81274 regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x15c76bee kvm_vcpu_uninit +EXPORT_SYMBOL_GPL vmlinux 0x15e9ac35 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x15eb5086 iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x16000a3c dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x160c7ab6 virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0x160d3d18 regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x161223b1 serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0x1637393a snd_soc_remove_platform +EXPORT_SYMBOL_GPL vmlinux 0x1650bf27 rcutorture_record_progress +EXPORT_SYMBOL_GPL vmlinux 0x166dbe9b usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x16858e48 snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL vmlinux 0x1688ca82 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0x16cec4f8 devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x16f07ca5 bmp085_detect +EXPORT_SYMBOL_GPL vmlinux 0x170e9bea imx_usbmisc_init +EXPORT_SYMBOL_GPL vmlinux 0x17296c0e snd_soc_dapm_sync +EXPORT_SYMBOL_GPL vmlinux 0x172b45ad cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x1733acbc usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x1753a32f hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0x177c338d twl_get_version +EXPORT_SYMBOL_GPL vmlinux 0x17f80573 reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x181be04c mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x182163a0 ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x18483c37 sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL vmlinux 0x1866cec2 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x1878f62b edac_err_assert +EXPORT_SYMBOL_GPL vmlinux 0x1899dde3 usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x18a27f34 jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0x18b540a1 snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL vmlinux 0x1900db03 usb_stor_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x19155b59 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x1936f5c2 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x193d48e0 trace_current_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x194d881c crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x194dd5f5 pkey_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x196fce4d __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19b384a5 hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x1a082d69 max77693_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x1a2041ee crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x1a21d235 device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x1a323362 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x1a4f1d02 raw_seq_open +EXPORT_SYMBOL_GPL vmlinux 0x1a6fd9ef snd_soc_read +EXPORT_SYMBOL_GPL vmlinux 0x1aab0e01 __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0x1acef7d2 pm_freezing +EXPORT_SYMBOL_GPL vmlinux 0x1ad2b5eb get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x1ad83009 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0x1af90bc2 skb_gro_receive +EXPORT_SYMBOL_GPL vmlinux 0x1b033df2 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x1b0f4fc3 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0x1b2c9499 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1b2d1a1b kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL vmlinux 0x1b3193ff gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x1b3261e0 klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x1b38e4e1 perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x1b4fa31a css_next_descendant_post +EXPORT_SYMBOL_GPL vmlinux 0x1b52db1c probe_kernel_read +EXPORT_SYMBOL_GPL vmlinux 0x1b5a465c snd_soc_update_bits_locked +EXPORT_SYMBOL_GPL vmlinux 0x1b5f4b47 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x1b72164d ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x1b7a1d9b devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0x1b8822d8 pinctrl_gpio_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1b8a4712 snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL vmlinux 0x1b9aca3f jprobe_return +EXPORT_SYMBOL_GPL vmlinux 0x1b9fd203 unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x1bb5fc26 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x1bb77a25 sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x1bc3edc2 usb_stor_sense_invalidCDB +EXPORT_SYMBOL_GPL vmlinux 0x1bc5eebe pinctrl_gpio_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x1bd06aab cpufreq_frequency_table_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x1bd5407c usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0x1bf69cb1 ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0x1c08f894 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x1c4437cc debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1c89fd34 snd_soc_register_platform +EXPORT_SYMBOL_GPL vmlinux 0x1c953c4d generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0x1cb7ad4e usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x1ce0eead crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x1ce9b6e0 da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x1cfe78d1 kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL vmlinux 0x1d0f779d usb_stor_access_xfer_buf +EXPORT_SYMBOL_GPL vmlinux 0x1d12b3ea mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x1d4e3ddc iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x1d58ae14 lpddr2_jedec_timings +EXPORT_SYMBOL_GPL vmlinux 0x1d5a6b95 debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0x1d606e3e snd_soc_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x1d6f5c1e __blk_put_request +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1de054d5 of_clk_del_provider +EXPORT_SYMBOL_GPL vmlinux 0x1e065267 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x1e10b2fa list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1e157ddd device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x1e3a88fb trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x1e506691 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0x1e5b03dc pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1e5c8ae4 securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x1e61b8a3 hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0x1e7a69a3 __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e985021 usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0x1eb1594f gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1f353bea debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x1f37286e register_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x1f54af0c extcon_find_cable_index +EXPORT_SYMBOL_GPL vmlinux 0x1f733f45 pinctrl_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f8db7f9 ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x1f8fa854 pwm_free +EXPORT_SYMBOL_GPL vmlinux 0x1fbd6542 otg_ulpi_create +EXPORT_SYMBOL_GPL vmlinux 0x1fcece42 inet_twdr_twcal_tick +EXPORT_SYMBOL_GPL vmlinux 0x1fe564fe __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x1fecbf52 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x20011ef0 devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x200835f1 ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x201d8ea3 encode_rs8 +EXPORT_SYMBOL_GPL vmlinux 0x20579ec0 sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0x208ecedd fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0x209318f2 ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x20bc3470 orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x20bde5f3 deregister_mtd_blktrans +EXPORT_SYMBOL_GPL vmlinux 0x20c9a693 pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0x20de5193 kvm_disable_largepages +EXPORT_SYMBOL_GPL vmlinux 0x20e7b748 devm_pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x20e7d89f devres_find +EXPORT_SYMBOL_GPL vmlinux 0x20fc6afb platform_bus +EXPORT_SYMBOL_GPL vmlinux 0x217121f2 ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0x2193e236 tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0x21aa0e65 ata_sas_port_async_resume +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x21b6bd8a blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0x21d9825e ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0x21e49a66 snd_soc_unregister_codec +EXPORT_SYMBOL_GPL vmlinux 0x21e9ee7e tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x21eb4c9c tpm_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0x2231e2ef attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x225cc956 br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0x226a674d atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2296c00d crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x22aabce9 usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x22b92389 usb_gadget_map_request +EXPORT_SYMBOL_GPL vmlinux 0x22bcd24a sec_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x22c16ecb dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x22c84046 snd_soc_put_volsw_s8 +EXPORT_SYMBOL_GPL vmlinux 0x22cfba16 blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0x22d11345 tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0x22e10e45 posix_timer_event +EXPORT_SYMBOL_GPL vmlinux 0x22e52d49 vtime_guest_exit +EXPORT_SYMBOL_GPL vmlinux 0x22f96317 kvm_get_kvm +EXPORT_SYMBOL_GPL vmlinux 0x22ff5ab4 usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x231d70fc encode_bch +EXPORT_SYMBOL_GPL vmlinux 0x23679939 __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x236904e2 alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0x2375acc9 regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x238bbf9c sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0x23921306 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x2392bc6e pm_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0x23b1fe63 perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x23b885c0 bio_trim +EXPORT_SYMBOL_GPL vmlinux 0x23d795c6 ahci_do_softreset +EXPORT_SYMBOL_GPL vmlinux 0x23fb68bd ftrace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x24012e01 md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0x242d5ac4 gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL vmlinux 0x2435b31a inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x2436b5dd sk_unattached_filter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x2447533c ktime_get_real +EXPORT_SYMBOL_GPL vmlinux 0x245d6d7f inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x24aac4d9 crypto_aes_expand_key +EXPORT_SYMBOL_GPL vmlinux 0x24c119e0 __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0x24c82977 device_del +EXPORT_SYMBOL_GPL vmlinux 0x24e03fce iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x251f1252 ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x253cc4b5 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL vmlinux 0x25880a76 ata_scsi_simulate +EXPORT_SYMBOL_GPL vmlinux 0x25bbe217 kvm_write_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x262f20a8 local_clock +EXPORT_SYMBOL_GPL vmlinux 0x2646eeab of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x26adb815 thread_notify_head +EXPORT_SYMBOL_GPL vmlinux 0x26b71fb4 ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x26badcaa devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0x26c547c0 bL_switcher_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26d0cf04 sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x26f98fcc regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x26ff9d2d context_tracking_enabled +EXPORT_SYMBOL_GPL vmlinux 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL vmlinux 0x27406d0a __get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x2748f4a8 sdhci_suspend_host +EXPORT_SYMBOL_GPL vmlinux 0x276332f4 find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x27797525 usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x2787db00 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x2790241e usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0x279e96d7 sdhci_pltfm_register +EXPORT_SYMBOL_GPL vmlinux 0x27c9168c tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0x27dd1fa7 usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x2830cafa rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0x287acfe5 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x289b6670 regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x28a82da4 snmp_mib_init +EXPORT_SYMBOL_GPL vmlinux 0x28a903c8 timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x28c3ecb1 adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x28d87ca0 udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x28f3a343 tcp_peer_is_proven +EXPORT_SYMBOL_GPL vmlinux 0x29047f1a __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0x296865d2 posix_timers_register_clock +EXPORT_SYMBOL_GPL vmlinux 0x29759185 clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x29a2da28 ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x29ad48f7 clk_register +EXPORT_SYMBOL_GPL vmlinux 0x29ee74b9 snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL vmlinux 0x29f9f22a thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0x29fa419f decode_rs8 +EXPORT_SYMBOL_GPL vmlinux 0x2a493e30 bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0x2a504ad2 init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a7770b6 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x2a97b684 devres_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2a991f3e ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x2aa5c731 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x2ab5ccce usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x2ad1ece4 zs_get_total_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0x2ad9d326 md_ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x2adb53b2 cgroup_unload_subsys +EXPORT_SYMBOL_GPL vmlinux 0x2b1a535f wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0x2b2e987e lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x2b333c0c gfn_to_pfn_prot +EXPORT_SYMBOL_GPL vmlinux 0x2b3d8a38 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0x2b426837 dma_buf_kmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x2b5ce659 virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0x2b7a6de8 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2ba0c0fe inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x2babe81f __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0x2bb8a20e inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x2bc79292 device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x2bfaef4e clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x2c0b6d46 __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x2c1c3a61 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c475a78 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0x2c484176 dma_buf_export_named +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2ca40c5b regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x2cb2a4ec irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0x2cbb5816 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x2ccc9ccf page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0x2cd4815d device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0x2ce8b911 blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0x2ce98559 kcrypto_wq +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2d00ac2c pinconf_generic_dt_subnode_to_map +EXPORT_SYMBOL_GPL vmlinux 0x2d07a25f blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x2d17a0e1 cgroup_taskset_size +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d59c954 edac_handlers +EXPORT_SYMBOL_GPL vmlinux 0x2d75210d invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x2d75cf7e crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0x2d9a6b58 kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL vmlinux 0x2dd284a5 pinctrl_force_sleep +EXPORT_SYMBOL_GPL vmlinux 0x2df2eff7 sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x2df3c00c ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x2df65f83 adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0x2e1847a0 usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x2e2f1740 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2e45e488 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x2e4642b3 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x2e4d0064 nf_unregister_afinfo +EXPORT_SYMBOL_GPL vmlinux 0x2e555521 mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0x2e6d16fc do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x2e94bccf platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0x2e9670c0 pl320_ipc_transmit +EXPORT_SYMBOL_GPL vmlinux 0x2e9e3381 do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x2eb490cd devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ed2aa9c regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x2ee043be perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x2eea8664 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0x2eedac81 regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x2eedf274 usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x2ef6b5bf smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f3065f6 usb_bus_list_lock +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f4fe82f inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0x2f529de9 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0x2f5399f0 devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2fb9fcf1 __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x2fd8cba9 freeze_wake +EXPORT_SYMBOL_GPL vmlinux 0x2fdf066c tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x300d7e57 free_rs +EXPORT_SYMBOL_GPL vmlinux 0x300e1c73 xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0x3021495a crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x303a8805 sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x30520acb snd_soc_get_dai_substream +EXPORT_SYMBOL_GPL vmlinux 0x308822ad devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x308b733a getboottime +EXPORT_SYMBOL_GPL vmlinux 0x30a4f4ca bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x30bedce6 snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL vmlinux 0x30c7bb7f sock_update_netprioidx +EXPORT_SYMBOL_GPL vmlinux 0x30cbb86c get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0x30d28ff6 skcipher_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0x30d579a8 __class_register +EXPORT_SYMBOL_GPL vmlinux 0x30f1bff1 gfn_to_hva +EXPORT_SYMBOL_GPL vmlinux 0x30f6467a tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x3109b751 cpu_clock +EXPORT_SYMBOL_GPL vmlinux 0x310b8ad8 shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0x311f8023 pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x314b754b bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x314c3d0b ahci_init_controller +EXPORT_SYMBOL_GPL vmlinux 0x3159cb8c regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x3179ca43 fat_attach +EXPORT_SYMBOL_GPL vmlinux 0x31859993 of_irq_to_resource_table +EXPORT_SYMBOL_GPL vmlinux 0x31a820ed register_jprobe +EXPORT_SYMBOL_GPL vmlinux 0x31ab2a57 dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x31b7a3db devm_rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x31be35d5 of_get_named_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x31c0c2d1 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x31c5ef9c sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x31d8f078 snd_soc_write +EXPORT_SYMBOL_GPL vmlinux 0x31fc403b md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x3220491e sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0x322f3511 __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0x3256ca45 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x3279dd34 driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x328995b5 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0x328cc160 tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0x32924a4d scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x329bbbde timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x32aa5f8a dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x32b31a8c ktime_get_boottime +EXPORT_SYMBOL_GPL vmlinux 0x32bea09b snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32c496f1 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x32c7bc2a crypto_register_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x32d56ba0 ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0x32d6eb43 snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL vmlinux 0x32ecd73b sec_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x32f23353 dev_get_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x32fd447a monotonic_to_bootbased +EXPORT_SYMBOL_GPL vmlinux 0x32ffa8d8 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x336154ca rcutorture_record_test_transition +EXPORT_SYMBOL_GPL vmlinux 0x33a60feb rtc_irq_unregister +EXPORT_SYMBOL_GPL vmlinux 0x33a94a45 of_irq_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x33ac3fcf tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x33b38f17 irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0x33b4db5e sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x33e2179f yield_to +EXPORT_SYMBOL_GPL vmlinux 0x3406583e devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x340ccfcb vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x3412c89d ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x341abd8d disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x34278fb3 crypto_givcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x347fd4b3 eventfd_ctx_get +EXPORT_SYMBOL_GPL vmlinux 0x34b12a88 fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0x34bf0b75 fuse_get_req_for_background +EXPORT_SYMBOL_GPL vmlinux 0x34e399fa ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x34ff85a4 cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0x351c7a41 find_module +EXPORT_SYMBOL_GPL vmlinux 0x352535db usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0x354b52b8 devres_add +EXPORT_SYMBOL_GPL vmlinux 0x3578fffe ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x358ff60f twl_get_hfclk_rate +EXPORT_SYMBOL_GPL vmlinux 0x3591b07b da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3593887c tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0x35c0c0b6 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0x35cad64a device_schedule_callback_owner +EXPORT_SYMBOL_GPL vmlinux 0x35dda5a4 gpiochip_add_pin_range +EXPORT_SYMBOL_GPL vmlinux 0x35f10f43 nfq_ct_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x35f165f1 devm_reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x35fb50ed power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0x36060697 call_filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x361e2bcc save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0x362c9db8 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x3661a655 uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0x366ff5e8 invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0x3677c36c ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0x367e0735 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36d76855 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x3711fc06 cred_to_ucred +EXPORT_SYMBOL_GPL vmlinux 0x3720b562 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x372244c1 __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x374a3652 virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0x375a0da8 crypto_alg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x375a758f dapm_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0x37763651 od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x3786bc81 max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x37cca03c pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x37d0b757 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0x38012b1a tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x3820cf5e da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0x38252d9e ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x383e835b __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x385312c4 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0x3860cc13 dm_requeue_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x3899cb13 snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL vmlinux 0x38a9c2c7 input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x38bdbc0b arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0x38ef6647 each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x38fe9190 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0x390d5831 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0x393bec8b sec_reg_update +EXPORT_SYMBOL_GPL vmlinux 0x395fed7e ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL vmlinux 0x3972488d __ablkcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0x3979cbd2 devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0x39864018 subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x39dc6710 wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x39e4f442 dma_buf_kunmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a72aee0 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x3a73f871 bsg_request_fn +EXPORT_SYMBOL_GPL vmlinux 0x3a7bace3 snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL vmlinux 0x3a9003f5 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3acdf325 twl4030_audio_enable_resource +EXPORT_SYMBOL_GPL vmlinux 0x3ad7fcaf virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0x3ad82802 of_property_read_u32_index +EXPORT_SYMBOL_GPL vmlinux 0x3aeae9a2 ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x3b03f19c ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0x3b180c8c led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3b18a291 register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x3b3539ff crypto_attr_alg2 +EXPORT_SYMBOL_GPL vmlinux 0x3b600150 i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0x3b671c3e stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0x3b79298c usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x3ba13067 simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x3bacb8cd mtd_del_partition +EXPORT_SYMBOL_GPL vmlinux 0x3bf9027f user_match +EXPORT_SYMBOL_GPL vmlinux 0x3c238a63 blkdev_aio_write +EXPORT_SYMBOL_GPL vmlinux 0x3c398558 blk_queue_flush +EXPORT_SYMBOL_GPL vmlinux 0x3c550d45 usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x3c56cc59 inet_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x3c704933 tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x3c70eabc snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL vmlinux 0x3c831441 arm_check_condition +EXPORT_SYMBOL_GPL vmlinux 0x3c8424a0 clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3c87331f wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0x3c8d28cc of_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x3ca0ece5 driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x3ca17104 __snd_printk +EXPORT_SYMBOL_GPL vmlinux 0x3ca4144f crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0x3cc4008c scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x3cc7afaa pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x3ccffec8 of_irq_parse_one +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cd1dba4 crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x3cf5f3b6 sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x3d0b35b5 perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0x3d18be50 tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x3d29bb9d dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3d341c59 wm8350_device_exit +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d6af3d9 fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x3d6b6b2f device_add +EXPORT_SYMBOL_GPL vmlinux 0x3d86d7bb sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x3d9c1da7 blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0x3dba7145 irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0x3dc526a9 arizona_of_match +EXPORT_SYMBOL_GPL vmlinux 0x3dc916b6 crypto_fl_tab +EXPORT_SYMBOL_GPL vmlinux 0x3dd4d3a7 bprintf +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3df04192 css_next_child +EXPORT_SYMBOL_GPL vmlinux 0x3df50dfe usb_gadget_set_state +EXPORT_SYMBOL_GPL vmlinux 0x3e05cdae iommu_present +EXPORT_SYMBOL_GPL vmlinux 0x3e2e2c83 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x3e2e543d cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x3e2fa31f wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3e452a00 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x3e4c2249 kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e73ba46 kvm_get_dirty_log +EXPORT_SYMBOL_GPL vmlinux 0x3e971b8d regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3ec5b409 gpiochip_add +EXPORT_SYMBOL_GPL vmlinux 0x3ede573d ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0x3ef67169 regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0x3efb35c9 get_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0x3f09f3a9 __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x3f1b4251 usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x3f33e8ce da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x3f43b52c vchan_init +EXPORT_SYMBOL_GPL vmlinux 0x3f61c2f3 regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3f620a84 disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x3f69c73a unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x4033c4f8 devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x4045c494 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0x4065d168 pm_print_active_wakeup_sources +EXPORT_SYMBOL_GPL vmlinux 0x40af0dec ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x40d46b21 crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x410fce58 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x4155451a pinctrl_force_default +EXPORT_SYMBOL_GPL vmlinux 0x4166cd2a mtd_panic_write +EXPORT_SYMBOL_GPL vmlinux 0x416faf66 subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x417a1dc0 user_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x41831743 class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x41c6a421 crypto_ahash_type +EXPORT_SYMBOL_GPL vmlinux 0x41eb1ac4 sdhci_resume_host +EXPORT_SYMBOL_GPL vmlinux 0x4205ad24 cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x42085342 rtc_irq_register +EXPORT_SYMBOL_GPL vmlinux 0x420ca256 subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x42440a01 __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x424acc6d scatterwalk_done +EXPORT_SYMBOL_GPL vmlinux 0x4256ecc5 unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x427863b8 crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x428c6dbc cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x429e771f snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL vmlinux 0x42acf6e2 skcipher_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0x42b60a6e snd_soc_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x42c9d405 led_trigger_show +EXPORT_SYMBOL_GPL vmlinux 0x42ea5db9 elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x43015405 snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL vmlinux 0x430b6b8c snd_soc_put_strobe +EXPORT_SYMBOL_GPL vmlinux 0x430e5257 of_alias_get_id +EXPORT_SYMBOL_GPL vmlinux 0x431289dd digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0x43166e83 pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0x435b92b4 usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0x43672f90 hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x43867b9a mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL vmlinux 0x43a53735 __alloc_workqueue_key +EXPORT_SYMBOL_GPL vmlinux 0x43b466b0 gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL vmlinux 0x43eaf3cf snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x440b03d6 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0x441eab6b regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0x4431409d da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x44404f11 kdb_register_repeat +EXPORT_SYMBOL_GPL vmlinux 0x444f1735 cpu_pm_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4475e427 power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x4495400f dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x44b9a458 sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0x44d54187 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0x44e7927d stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x44f4b0b3 kvm_clear_guest +EXPORT_SYMBOL_GPL vmlinux 0x4504a0ca ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x4508b0c8 arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x4524646a sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0x4548a214 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0x454c15ae __smp_call_function_single +EXPORT_SYMBOL_GPL vmlinux 0x4558b909 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x457b77ca of_fixed_factor_clk_setup +EXPORT_SYMBOL_GPL vmlinux 0x457c4e9a virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0x4588fb70 ahci_print_info +EXPORT_SYMBOL_GPL vmlinux 0x45bf1ff3 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x45ef3594 iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0x46066e5b perf_pmu_name +EXPORT_SYMBOL_GPL vmlinux 0x460f7531 wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x462e6393 __blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x463b9013 ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0x46476137 usb_stor_probe1 +EXPORT_SYMBOL_GPL vmlinux 0x465dd4a9 init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0x4671e308 ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0x4672e88b __crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x46779deb input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x46901ee5 hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x46952897 max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0x469c0fa5 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0x46cc27cb sdhci_free_host +EXPORT_SYMBOL_GPL vmlinux 0x46d1b5ff i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0x4700f5ca page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x470fa426 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x471b9f02 usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x4742272b edac_subsys +EXPORT_SYMBOL_GPL vmlinux 0x475f187c wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x477a6ec6 cpufreq_frequency_get_table +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x4792809e snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL vmlinux 0x4798344f dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47ca3ad8 __ip_route_output_key +EXPORT_SYMBOL_GPL vmlinux 0x47e1c309 dbs_check_cpu +EXPORT_SYMBOL_GPL vmlinux 0x482664c9 spi_master_resume +EXPORT_SYMBOL_GPL vmlinux 0x4837410f netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0x483a9765 pinctrl_select_state +EXPORT_SYMBOL_GPL vmlinux 0x483d1b59 ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x484e6a4d class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL vmlinux 0x4869d50c filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0x486a9bc8 netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4873adf0 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0x4882b236 adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0x48ba2763 led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x48ca8947 pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x48caf081 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0x48cc0ba5 ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0x48fa23f8 irq_find_host +EXPORT_SYMBOL_GPL vmlinux 0x49417412 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x496f9c3a stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0x4982a57f probe_kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x498d293a trace_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x49a70912 snd_soc_unregister_card +EXPORT_SYMBOL_GPL vmlinux 0x49b60226 user_read +EXPORT_SYMBOL_GPL vmlinux 0x49d262ea rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x49da29ac virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0x49eb144e blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0x4a0afc6b pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0x4a0c2e26 irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x4a18bd53 arm_iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x4a1ac7da tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0x4a2dac67 snd_soc_get_volsw_s8 +EXPORT_SYMBOL_GPL vmlinux 0x4a333d13 tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0x4a498011 snd_soc_dapm_get_enum_virt +EXPORT_SYMBOL_GPL vmlinux 0x4a578b19 md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0x4a5bf01b crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x4a6df6e8 iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0x4a972d6a extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4aa1f896 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0x4aadeb9a ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0x4ab004e2 platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0x4ab1a16b usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x4ab1b60f ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x4abfca14 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x4af7f35d spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x4b068a9c ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x4b17b645 of_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x4b507f02 blk_add_request_payload +EXPORT_SYMBOL_GPL vmlinux 0x4b633818 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0x4b6c69aa inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x4b92f2fb inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x4ba1b69b pwm_config +EXPORT_SYMBOL_GPL vmlinux 0x4bbbec54 regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0x4bc33200 class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x4bc62a81 audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4bd18f31 sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x4bff4b40 regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0x4c2e1f24 clk_disable +EXPORT_SYMBOL_GPL vmlinux 0x4c3f237a crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0x4c44cd11 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0x4c47ec15 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0x4c602bf1 __blkg_release_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4c759827 byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x4c9476c9 vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0x4ca4c9df clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x4cc24f2c tpm_store_cancel +EXPORT_SYMBOL_GPL vmlinux 0x4ceed40a fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0x4d1cfa9b get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0x4d38f1e0 bL_switcher_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4d699821 rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x4da5b4d1 cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0x4dc5c3b2 zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x4dd3e4aa sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x4ddd9fff snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4df274d5 get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0x4dff3d75 devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x4e006289 tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0x4e109192 ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0x4e242f5f pstore_cannot_block_path +EXPORT_SYMBOL_GPL vmlinux 0x4e2f29ca dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x4e45503b tty_prepare_flip_string_flags +EXPORT_SYMBOL_GPL vmlinux 0x4e784245 iommu_domain_has_cap +EXPORT_SYMBOL_GPL vmlinux 0x4ef29549 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4efe9c0c spi_setup +EXPORT_SYMBOL_GPL vmlinux 0x4f020dee public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x4f194c45 put_mtd_device +EXPORT_SYMBOL_GPL vmlinux 0x4f1c98d1 sdhci_get_of_property +EXPORT_SYMBOL_GPL vmlinux 0x4f231a81 inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0x4f283dc2 sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0x4f50afb2 ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0x4f524926 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0x4f6172ff crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0x4f84f834 irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x4f98d766 cpu_pm_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4fa09a3d alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0x4fa8bb1d blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x4facca8d __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x4fb48a3e da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0x4fc52e8d __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0x4fc820de da903x_write +EXPORT_SYMBOL_GPL vmlinux 0x4fd339f2 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x4fd4e89d ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4fee14dc sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x500fe8e4 wm8400_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x501209d0 bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x50188c6c sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0x5029953b scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0x502aef72 __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0x5053e2a6 leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0x5053f967 sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x50601122 of_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x506691f1 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x506cc085 tracepoint_iter_stop +EXPORT_SYMBOL_GPL vmlinux 0x5070d9d2 exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x507766f9 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x507c2732 snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL vmlinux 0x5086ac3a alg_test +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x50acdeea dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0x50bf66b5 kvm_resched +EXPORT_SYMBOL_GPL vmlinux 0x50c89f23 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x512cf16c wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0x514b4564 usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0x516102cd crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0x516f7537 cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0x517fd219 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x5189bc98 devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0x5189fb3d d_materialise_unique +EXPORT_SYMBOL_GPL vmlinux 0x51c4894e tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x51cb4647 usb_stor_ctrl_transfer +EXPORT_SYMBOL_GPL vmlinux 0x51e7805f blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x51f6a6ef __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0x5200c3b4 usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x520a1310 usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL vmlinux 0x52212010 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x52299138 crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0x52460666 add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL vmlinux 0x5247c0ed trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0x525000ca ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0x5264be3b xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0x5272d8bc __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0x52909bcc gpiochip_remove_pin_ranges +EXPORT_SYMBOL_GPL vmlinux 0x529272f0 usb_string +EXPORT_SYMBOL_GPL vmlinux 0x52a41251 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x52adc8f2 regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x52b1001f driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x531be2c6 tpm_show_pcrs +EXPORT_SYMBOL_GPL vmlinux 0x532479a7 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0x533d90d8 snd_soc_cache_read +EXPORT_SYMBOL_GPL vmlinux 0x5347d573 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x5358fc36 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x535f13e5 tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x53614269 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x53bc7027 aead_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0x53c4e8e7 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x53df5535 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0x53e87cb6 regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x53f35a8b inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x5414f0ac get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0x5416b921 devm_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54423db7 sysfs_notify_dirent +EXPORT_SYMBOL_GPL vmlinux 0x544aab61 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0x545fec86 percpu_ida_for_each_free +EXPORT_SYMBOL_GPL vmlinux 0x5460c8d8 fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x5469c583 regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x54740eb7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x547baeb5 kvm_write_guest_cached +EXPORT_SYMBOL_GPL vmlinux 0x5490fa5c cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54966f28 wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0x549f77b0 da903x_update +EXPORT_SYMBOL_GPL vmlinux 0x54e19dc2 usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0x54f75c51 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0x5524949c __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5575268a ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0x55777e01 list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x55839347 pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x55d0aeb9 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x55f04c21 trace_buffer_unlock_commit_regs +EXPORT_SYMBOL_GPL vmlinux 0x561d9d75 pinctrl_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x561e4b77 irq_of_parse_and_map +EXPORT_SYMBOL_GPL vmlinux 0x5628c9b6 sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x564f1dca klist_add_after +EXPORT_SYMBOL_GPL vmlinux 0x565b6892 uuid_le_gen +EXPORT_SYMBOL_GPL vmlinux 0x56654231 usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x56719757 tpm_remove_hardware +EXPORT_SYMBOL_GPL vmlinux 0x56830507 vchan_dma_desc_free_list +EXPORT_SYMBOL_GPL vmlinux 0x56886b19 scatterwalk_map +EXPORT_SYMBOL_GPL vmlinux 0x5692386f gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x56990e3d debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x569f49e7 crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x56b63670 lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x56b7fa53 add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0x56bec448 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0x56cc2c50 devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x56d697ce cpu_up +EXPORT_SYMBOL_GPL vmlinux 0x56e75d47 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x56e9103b cpu_pm_enter +EXPORT_SYMBOL_GPL vmlinux 0x56eaf6fe __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x57231f45 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0x5728bcc3 crypto_unregister_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x57407606 __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x5754055e tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0x575b681e security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x57614487 rtc_irq_set_freq +EXPORT_SYMBOL_GPL vmlinux 0x576346e6 console_drivers +EXPORT_SYMBOL_GPL vmlinux 0x57821f02 rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57a014e8 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x57bd1110 i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x57e23fd6 inet6_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x57ea8952 attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0x57edac72 smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x5825d2ad snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL vmlinux 0x582be91b wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0x582d17e6 kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x582f51d9 ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x58413099 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x58520f22 blkg_lookup_create +EXPORT_SYMBOL_GPL vmlinux 0x5866a0bb crypto_aead_type +EXPORT_SYMBOL_GPL vmlinux 0x58743c07 bus_find_device_by_name +EXPORT_SYMBOL_GPL vmlinux 0x589e4569 syscon_regmap_lookup_by_pdevname +EXPORT_SYMBOL_GPL vmlinux 0x58a5e6a6 usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x58ca1430 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0x58d9a94e sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x58fc2fce cgroup_taskset_cur_css +EXPORT_SYMBOL_GPL vmlinux 0x59329a69 dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0x594369a2 dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0x5947abbe max77693_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x5947b196 da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x5976583c crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x5981ef88 sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0x59959d0a cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x59a6e91d clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x59d901fb usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x59e2743e call_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0x59eae699 ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x59f76efd dm_disk +EXPORT_SYMBOL_GPL vmlinux 0x59fec64f ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x5a087200 swiotlb_tbl_map_single +EXPORT_SYMBOL_GPL vmlinux 0x5a42ed22 preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x5a72f8f7 debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a82e576 __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x5a8f3b69 of_irq_parse_raw +EXPORT_SYMBOL_GPL vmlinux 0x5a96f652 snd_soc_codec_readable_register +EXPORT_SYMBOL_GPL vmlinux 0x5acc94ff blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0x5acd5063 blk_queue_bypass_end +EXPORT_SYMBOL_GPL vmlinux 0x5adc0879 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0x5b18da85 user_describe +EXPORT_SYMBOL_GPL vmlinux 0x5b2b2f3e devm_snd_soc_register_component +EXPORT_SYMBOL_GPL vmlinux 0x5b4e379c of_prop_next_u32 +EXPORT_SYMBOL_GPL vmlinux 0x5b7b8e44 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x5b81e877 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x5b8a432b power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x5b93004e fuse_get_req +EXPORT_SYMBOL_GPL vmlinux 0x5b943b17 regulator_set_optimum_mode +EXPORT_SYMBOL_GPL vmlinux 0x5bd37cf5 ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0x5bf2223b serial8250_tx_dma +EXPORT_SYMBOL_GPL vmlinux 0x5c63f6d6 snd_soc_codec_volatile_register +EXPORT_SYMBOL_GPL vmlinux 0x5c644b95 ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0x5c7c3019 regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5c967da3 sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0x5cabdced dev_pm_qos_remove_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5cc5f791 iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0x5ccd4ba1 __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x5d03bf75 device_reset +EXPORT_SYMBOL_GPL vmlinux 0x5d12e48f input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0x5d1c1bac blocking_notifier_chain_cond_register +EXPORT_SYMBOL_GPL vmlinux 0x5d2d69ad crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0x5d519de8 of_init_opp_table +EXPORT_SYMBOL_GPL vmlinux 0x5d5854bb get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0x5d83c34d of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0x5d8a68ea cgroup_taskset_next +EXPORT_SYMBOL_GPL vmlinux 0x5df69fec tpm_read +EXPORT_SYMBOL_GPL vmlinux 0x5dfda4e6 usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0x5e094a25 mtd_erase_callback +EXPORT_SYMBOL_GPL vmlinux 0x5e175879 tpm_show_enabled +EXPORT_SYMBOL_GPL vmlinux 0x5e3ad14d mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e59c883 xattr_getsecurity +EXPORT_SYMBOL_GPL vmlinux 0x5e6c6156 usb_gadget_probe_driver +EXPORT_SYMBOL_GPL vmlinux 0x5e6d7391 snd_soc_new_ac97_codec +EXPORT_SYMBOL_GPL vmlinux 0x5eacba1f ahci_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x5eb06626 mtd_write +EXPORT_SYMBOL_GPL vmlinux 0x5eb918ea __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x5eced414 cgroup_add_cftypes +EXPORT_SYMBOL_GPL vmlinux 0x5edf5639 pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x5f01bd16 usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x5f04c504 kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x5f127cff inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x5f16aa22 led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0x5f248f72 set_timer_slack +EXPORT_SYMBOL_GPL vmlinux 0x5f2fcb20 fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0x5f3ccf8f da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x5f3deeca relay_reset +EXPORT_SYMBOL_GPL vmlinux 0x5f419491 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x5f5cfac1 pinctrl_utils_reserve_map +EXPORT_SYMBOL_GPL vmlinux 0x5f651964 ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x5f67aacc fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x5f698202 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0x5f763c3d uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0x5f7f0579 snd_soc_platform_write +EXPORT_SYMBOL_GPL vmlinux 0x5fa0cfee mtd_is_locked +EXPORT_SYMBOL_GPL vmlinux 0x5fc27fd0 arm_iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x5fc35189 ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x5fce5b4a spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x5fe9b703 usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x5ff0d1aa regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x5ff155be snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL vmlinux 0x5ff5d717 pinctrl_find_and_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x6003b574 usb_del_gadget_udc +EXPORT_SYMBOL_GPL vmlinux 0x603a3d15 dm_get_rq_mapinfo +EXPORT_SYMBOL_GPL vmlinux 0x604d9748 regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x60506751 unmap_kernel_range_noflush +EXPORT_SYMBOL_GPL vmlinux 0x6052f15a crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0x6093f0ae mtd_device_parse_register +EXPORT_SYMBOL_GPL vmlinux 0x6094685f wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60b1b34b regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0x60d1d2df driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0x613d4ae5 class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x61480a76 devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x614bb3ed thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0x614e83bf snd_soc_info_volsw +EXPORT_SYMBOL_GPL vmlinux 0x614f0dd4 wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x61b332c7 fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0x61b949de dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL vmlinux 0x61bf689d bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x61cd7fdb mtd_read +EXPORT_SYMBOL_GPL vmlinux 0x61e015f0 rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x62174eac user_update +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x622dacba tick_nohz_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x624a6406 hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x62618bcb blk_queue_flush_queueable +EXPORT_SYMBOL_GPL vmlinux 0x629fb047 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x62af78c3 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0x62ca956a transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x62d6588b devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x62df68ce pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x6318757f mdio_mux_uninit +EXPORT_SYMBOL_GPL vmlinux 0x631932dd debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0x63205de1 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x6327b8b4 __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0x63320434 ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x634c9f5f dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0x635525dc seq_open_net +EXPORT_SYMBOL_GPL vmlinux 0x63809076 kvm_is_visible_gfn +EXPORT_SYMBOL_GPL vmlinux 0x6389f83e usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0x6390efda of_modalias_node +EXPORT_SYMBOL_GPL vmlinux 0x63ada971 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x63badb12 usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0x63d15b2a ahci_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x63d41452 bmp085_probe +EXPORT_SYMBOL_GPL vmlinux 0x63e116d7 unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0x6416bc82 vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0x647537f3 pl320_ipc_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x64a8564e snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL vmlinux 0x64b1a2be use_mm +EXPORT_SYMBOL_GPL vmlinux 0x64c46976 usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0x64c59209 mark_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x64f933e9 regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x64fcf10c balloon_mapping_alloc +EXPORT_SYMBOL_GPL vmlinux 0x65104954 fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0x651124b9 regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x652fd173 xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0x655570bd usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x6561a2c2 irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x656d29f6 gov_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x65852123 ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x659790f7 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x659ef6cc register_mtd_user +EXPORT_SYMBOL_GPL vmlinux 0x65bbbc78 schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x660c8292 scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x662a0c3f x509_get_sig_params +EXPORT_SYMBOL_GPL vmlinux 0x663b07b8 dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0x664a3fd1 tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0x664fd265 crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x665211ce cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0x6659523b task_current_syscall +EXPORT_SYMBOL_GPL vmlinux 0x6674afe4 __rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x667ebb1b sdhci_add_host +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x668a1ba0 device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x669da1fd kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL vmlinux 0x66b72ccd regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x66b87e07 ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0x66bb0698 da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x66e079db tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0x66f41fa5 irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x670ee745 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0x67128609 __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0x6723c912 nfq_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x6733f4ea usb_stor_reset_resume +EXPORT_SYMBOL_GPL vmlinux 0x673c0766 mmput +EXPORT_SYMBOL_GPL vmlinux 0x674e13e1 public_key_destroy +EXPORT_SYMBOL_GPL vmlinux 0x6751a492 kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x67643d26 pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x6767481e __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x679da333 crypto_alloc_ablkcipher +EXPORT_SYMBOL_GPL vmlinux 0x67a722dc usb_stor_pre_reset +EXPORT_SYMBOL_GPL vmlinux 0x67c4d563 dapm_reg_event +EXPORT_SYMBOL_GPL vmlinux 0x67dea615 regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x6807d4c1 ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0x6812cf8d __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0x683a3ce5 regmap_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x683c63cd wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0x687934e9 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x688378b3 devm_spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x68921743 irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x68956406 static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x6899b4db extcon_set_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x68d0fe08 shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x68e048e1 usb_stor_CB_reset +EXPORT_SYMBOL_GPL vmlinux 0x68e05d8e device_create +EXPORT_SYMBOL_GPL vmlinux 0x6909a4da snd_soc_dapm_put_value_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x691dca79 regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0x6923ce63 irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x6929f855 fuse_put_request +EXPORT_SYMBOL_GPL vmlinux 0x69447467 ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0x6945725e mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0x694be42a usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0x694f923e ahci_thread_fn +EXPORT_SYMBOL_GPL vmlinux 0x696935e4 irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x698a899f ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0x69e9a2cb ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x69ef17f1 ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x69f663a3 usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a345321 tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x6a5d3ad4 virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0x6a5fb566 rcu_sched_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x6ad26f60 regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0x6ae8eb32 fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0x6aeab539 sdhci_pltfm_init +EXPORT_SYMBOL_GPL vmlinux 0x6af26b06 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0x6b29a1fa ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0x6b32a041 blk_queue_dma_drain +EXPORT_SYMBOL_GPL vmlinux 0x6b53b13c blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0x6b6eecdd snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL vmlinux 0x6b770f49 decode_bch +EXPORT_SYMBOL_GPL vmlinux 0x6b77d229 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x6b7f8de1 iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x6b9e7ad7 of_clk_src_simple_get +EXPORT_SYMBOL_GPL vmlinux 0x6ba77b95 xfrm_inner_extract_output +EXPORT_SYMBOL_GPL vmlinux 0x6bb935ec dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x6c1b09ab gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x6c49c4f2 clockevents_notify +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c749afe __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x6c947c50 ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6cb9b9cd kvm_init +EXPORT_SYMBOL_GPL vmlinux 0x6cc30b1b usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0x6cc78c5c set_irq_flags +EXPORT_SYMBOL_GPL vmlinux 0x6cd21997 ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x6cd4ea62 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0x6cd5e5d2 wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x6cd7a355 cgroup_taskset_first +EXPORT_SYMBOL_GPL vmlinux 0x6ceaebb1 gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0x6cf6c4c1 led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0x6d1ba6da pwm_disable +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d31e93b tracepoint_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x6d339861 __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0x6d403e21 ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0x6d4406d1 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0x6d7277d3 ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0x6d8f0752 devm_usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x6d9e5425 of_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x6df6b7fd crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0x6dfdd58b regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6e04a077 usb_bind_phy +EXPORT_SYMBOL_GPL vmlinux 0x6e05c4e7 ahci_hw_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x6e1c6020 register_mtd_parser +EXPORT_SYMBOL_GPL vmlinux 0x6e7943ec iommu_group_id +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6ed64c24 snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL vmlinux 0x6f186dd6 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x6f190505 snd_soc_codec_writable_register +EXPORT_SYMBOL_GPL vmlinux 0x6f1ee69e kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x6f74956a inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x6fa2adab regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0x6fbb3bd9 init_rs_non_canonical +EXPORT_SYMBOL_GPL vmlinux 0x6fda93da of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x6fe3d8cf ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x6fe631a4 device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6ffbb9c7 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x70450174 fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0x707ff1bb ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x7094907f tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x709f7e12 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0x70a2b8a7 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x70bb651d __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x70c63ab0 snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL vmlinux 0x70cf032f usb_hcd_irq +EXPORT_SYMBOL_GPL vmlinux 0x70cfa29b tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0x70d85f89 alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0x70e5ef52 pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0x71008581 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x71076f7f usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7111b910 tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x7123defa skb_segment +EXPORT_SYMBOL_GPL vmlinux 0x7127e664 dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x71283225 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0x71399e73 blkcipher_walk_virt_block +EXPORT_SYMBOL_GPL vmlinux 0x7160f4e7 of_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71737f7f usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0x7181ea2b gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL vmlinux 0x71828843 xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0x71930ed3 of_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x7195d5c3 usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0x71977171 regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x71989bcd usb_stor_CB_transport +EXPORT_SYMBOL_GPL vmlinux 0x71a79ff9 devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x71c45e9c regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x71dc9998 crypto_il_tab +EXPORT_SYMBOL_GPL vmlinux 0x71e36225 public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0x72209668 amba_apb_device_add +EXPORT_SYMBOL_GPL vmlinux 0x723519b3 fuse_request_send_background +EXPORT_SYMBOL_GPL vmlinux 0x7244706e pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0x7267db00 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x72741f25 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x7279c818 vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0x72854b94 i2c_new_probed_device +EXPORT_SYMBOL_GPL vmlinux 0x7291019b __cci_control_port_by_index +EXPORT_SYMBOL_GPL vmlinux 0x7293d422 device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0x729b80a9 debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x72ab584d debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x72af2b10 stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x72bda9dc snd_soc_get_value_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x72be3116 sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0x72ca6fb0 crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x72d6e848 debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x730bd0c7 asic3_write_register +EXPORT_SYMBOL_GPL vmlinux 0x7354d49f page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x739ed2f1 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73b2bd0e bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x73b5c35b arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x73c832f2 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x73d69364 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x73e71e6e dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0x73f5a244 __mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x740eafb4 tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0x7422c95e gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x7450a61b __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0x74628570 context_tracking +EXPORT_SYMBOL_GPL vmlinux 0x7462f788 mtd_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0x74631d2f root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7464ea38 dev_pm_qos_add_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x74722296 iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x74750d38 imx_usbmisc_init_post +EXPORT_SYMBOL_GPL vmlinux 0x74954462 timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74d5fe43 securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x7543ee7b inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x754efda3 sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x755d8d03 regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x75673829 need_load_eval +EXPORT_SYMBOL_GPL vmlinux 0x758a782e blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x7591b551 spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x75a16db7 usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x75bbcf87 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x75c2b9f1 memalloc_socks +EXPORT_SYMBOL_GPL vmlinux 0x75c8a11c inet_twdr_twkill_work +EXPORT_SYMBOL_GPL vmlinux 0x75d439b6 input_class +EXPORT_SYMBOL_GPL vmlinux 0x7611eb34 tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x761c6086 snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL vmlinux 0x763f76bf swiotlb_tbl_sync_single +EXPORT_SYMBOL_GPL vmlinux 0x76455b4e sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x76620481 usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x768d1aeb vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0x76d07d6e gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x770cf981 tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x77101b1d platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x77214cea sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x7726bb42 led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x7732ab2d max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x773cc4d5 ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0x7747decc ata_eh_thaw_port +EXPORT_SYMBOL_GPL vmlinux 0x775c9ed7 fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x7775737f subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x777a5708 unregister_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0x7785bc62 ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0x77aca407 kvm_read_guest +EXPORT_SYMBOL_GPL vmlinux 0x77cc56d4 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x77e2709d cpufreq_notify_transition +EXPORT_SYMBOL_GPL vmlinux 0x7803bcbb mtd_lock +EXPORT_SYMBOL_GPL vmlinux 0x78368c02 dev_pm_opp_get_freq +EXPORT_SYMBOL_GPL vmlinux 0x7840b42c hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0x78656fe6 pwm_can_sleep +EXPORT_SYMBOL_GPL vmlinux 0x786bd16e __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x78ab98f2 relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x78c9c360 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x791a1795 of_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x7923fbae snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL vmlinux 0x793a6647 tpm_show_temp_deactivated +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x7945cfee spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x7965c41c ahci_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x796c2d48 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x79b58ca4 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x79c1983c hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0x79cbf07b sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0x79e09438 usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x7a2eace3 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x7a319404 clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x7a431bb2 led_classdev_register +EXPORT_SYMBOL_GPL vmlinux 0x7a509d28 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x7a572065 sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0x7a877bab scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0x7a9139e5 ahci_stop_engine +EXPORT_SYMBOL_GPL vmlinux 0x7a944007 rcu_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x7aa3df55 pinctrl_dev_get_devname +EXPORT_SYMBOL_GPL vmlinux 0x7aa64803 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL vmlinux 0x7ab3ca18 eventfd_ctx_read +EXPORT_SYMBOL_GPL vmlinux 0x7ac4b9f5 snd_soc_jack_report +EXPORT_SYMBOL_GPL vmlinux 0x7ad629cf tcp_is_cwnd_limited +EXPORT_SYMBOL_GPL vmlinux 0x7ad9af67 sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7adeecae regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x7ae1ae8e cpufreq_frequency_table_put_attr +EXPORT_SYMBOL_GPL vmlinux 0x7ae3d3a7 mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL vmlinux 0x7b06bdeb udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x7b07e6dc wm8400_block_read +EXPORT_SYMBOL_GPL vmlinux 0x7b0f1ab3 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7b135f4f shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0x7b1d544d edac_handler_set +EXPORT_SYMBOL_GPL vmlinux 0x7b2fcea4 bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0x7b53962a clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x7b5ac587 shash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0x7b8f98e2 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x7b9935a6 security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0x7ba454a6 __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x7bcb49d2 usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0x7bd7bdae irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0x7bd88dd1 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0x7bef9e3e scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x7c008daa ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x7c227088 clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x7c2579ca ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x7c346357 pkey_algo +EXPORT_SYMBOL_GPL vmlinux 0x7c36c189 xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0x7c3b8a04 debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0x7c4c9e84 device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x7c518521 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x7c53de2a regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x7c6017ab ahash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0x7c6a49ce unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x7c7c8497 extcon_get_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x7c83da8e uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0x7c8dc2ac devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x7ca0a2ad mtd_add_partition +EXPORT_SYMBOL_GPL vmlinux 0x7caf37ef tpm_show_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x7cc1b7fd max77693_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7cc7de1c x509_check_signature +EXPORT_SYMBOL_GPL vmlinux 0x7cd251b2 serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x7cd267ab dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cf80d48 usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x7cfe202b blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x7d20307c regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0x7d36e534 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7d38b7ac locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0x7d397cc7 gpiod_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d4c4b51 mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d72806c raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x7d7ba13f posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0x7d8f2053 i2c_lock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x7da5b884 find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x7dab26b6 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7dabe28a usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0x7dad18d8 crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x7daf2c6c tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x7dcb5c9a usb_stor_probe2 +EXPORT_SYMBOL_GPL vmlinux 0x7dfefda1 dev_pm_opp_enable +EXPORT_SYMBOL_GPL vmlinux 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e924819 snd_compress_new +EXPORT_SYMBOL_GPL vmlinux 0x7e96b4fc inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x7eb2b315 ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0x7eb865a7 kvm_vcpu_init +EXPORT_SYMBOL_GPL vmlinux 0x7ebc21ec fuse_conn_kill +EXPORT_SYMBOL_GPL vmlinux 0x7ec5fed8 inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x7ed68941 asic3_read_register +EXPORT_SYMBOL_GPL vmlinux 0x7f01e4b1 mtd_unpoint +EXPORT_SYMBOL_GPL vmlinux 0x7f0bef89 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0x7f0d552d ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x7f2cb973 ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0x7f460b1a snd_soc_codec_set_sysclk +EXPORT_SYMBOL_GPL vmlinux 0x7f60e837 __pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x7f9e1243 aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7fab5350 wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7fc52fac mtd_get_user_prot_info +EXPORT_SYMBOL_GPL vmlinux 0x7fd2e012 devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x8010d2c6 percpu_ida_free +EXPORT_SYMBOL_GPL vmlinux 0x80119778 unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x80167c54 __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0x804ee6c5 sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x80573ea0 rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0x805b671d bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0x8086ea2a disk_get_part +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x8097b955 ata_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x80a65392 tasklet_hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x80ad649b ping_hash +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80dd2da7 dma_buf_kmap +EXPORT_SYMBOL_GPL vmlinux 0x80f3268f __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x80fbe322 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x812646c2 fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0x81342e58 usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0x8136938a fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0x813d0c88 snd_soc_jack_get_type +EXPORT_SYMBOL_GPL vmlinux 0x8140842a gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x8149ea54 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0x814bb991 register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x8173e628 dev_pm_opp_find_freq_floor +EXPORT_SYMBOL_GPL vmlinux 0x81c43825 sysfs_put +EXPORT_SYMBOL_GPL vmlinux 0x81cfdd15 perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0x81d8eb61 thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0x81e05227 mtd_is_partition +EXPORT_SYMBOL_GPL vmlinux 0x81f45c82 of_usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0x8227ae4d usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0x82519d33 usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0x827917bf sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0x82939ebd rcu_batches_completed_sched +EXPORT_SYMBOL_GPL vmlinux 0x82ae9499 debugfs_remove_recursive +EXPORT_SYMBOL_GPL vmlinux 0x82bca305 usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82f6b1cc sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL vmlinux 0x8318eb66 clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x831ee024 device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x83274937 usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0x834616bb sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x836efa2e fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0x837892f7 dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x837ed41a snd_soc_platform_read +EXPORT_SYMBOL_GPL vmlinux 0x838b13e7 ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0x83a5ae2e __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0x83e4e4fb eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0x840585f3 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0x8415d4bf get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x8420bccd cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0x84277541 dev_pm_opp_get_opp_count +EXPORT_SYMBOL_GPL vmlinux 0x84a40451 snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL vmlinux 0x84b1208b pwm_set_polarity +EXPORT_SYMBOL_GPL vmlinux 0x84d7fdd2 snd_soc_add_codec_controls +EXPORT_SYMBOL_GPL vmlinux 0x85050965 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x852e568d of_get_nand_ecc_mode +EXPORT_SYMBOL_GPL vmlinux 0x85469eb0 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0x85555471 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x856629e7 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x85687293 usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0x856d0063 crypto_ablkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x856de48e regmap_update_bits_check_async +EXPORT_SYMBOL_GPL vmlinux 0x8574ca6c gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x8598d5a7 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x859ae643 rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x85b14d33 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x85c10896 rcu_batches_completed_bh +EXPORT_SYMBOL_GPL vmlinux 0x85c7f674 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x85eed854 hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0x86081e45 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0x86255682 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x862b9816 cpu_topology +EXPORT_SYMBOL_GPL vmlinux 0x864f2961 iommu_map +EXPORT_SYMBOL_GPL vmlinux 0x866b9687 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x86770b95 snd_soc_put_value_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x8693faf0 sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x869de7e6 crypto_rng_type +EXPORT_SYMBOL_GPL vmlinux 0x86a9d715 ref_module +EXPORT_SYMBOL_GPL vmlinux 0x86cd9e9e irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x86d6104f apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0x86db36b7 key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x86ffbf0b hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0x873fbaea edac_atomic_assert_error +EXPORT_SYMBOL_GPL vmlinux 0x87519171 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0x875b6173 pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x87714445 sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL vmlinux 0x87984b16 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x87ba8758 __cci_control_port_by_device +EXPORT_SYMBOL_GPL vmlinux 0x87bb4e32 of_usb_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x87ddb4c0 srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x87dfb3d8 ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0x87f83b17 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x8810ad5e crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0x8814afa8 ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x88202ac1 __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x8829b938 regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0x883935f4 wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x883c2740 __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x8840eba3 ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x884ecf48 inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x88555811 tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x88769806 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0x88890438 cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8890ce86 pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b5647c trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x88e3aa25 elv_register +EXPORT_SYMBOL_GPL vmlinux 0x88fb9679 scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x892012d0 spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x894d7e87 irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x8971c743 evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x89822a4b vtime_guest_enter +EXPORT_SYMBOL_GPL vmlinux 0x89a08c14 raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0x89a14475 device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89c28276 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0x89dbdcc1 __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0x89e9c6a9 regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x89ea425c snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL vmlinux 0x89f83d7a kvm_put_kvm +EXPORT_SYMBOL_GPL vmlinux 0x8a04b9fe tracepoint_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0x8a0f279f thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x8a2b14ba wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x8a497c00 platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8a4ea3d7 pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0x8a50b052 snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL vmlinux 0x8a7ad77f sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0x8a7e371a pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8abfceb0 snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL vmlinux 0x8ae152b5 of_get_nand_bus_width +EXPORT_SYMBOL_GPL vmlinux 0x8aedf9a7 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0x8af68184 bio_clone_mddev +EXPORT_SYMBOL_GPL vmlinux 0x8b01d671 pinctrl_lookup_state +EXPORT_SYMBOL_GPL vmlinux 0x8b09ce6a crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x8b22a45a anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8b2a58a5 __scsi_get_command +EXPORT_SYMBOL_GPL vmlinux 0x8b548d9c ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0x8b775d3a __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x8b9201a5 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x8b9286d8 kobj_completion_release +EXPORT_SYMBOL_GPL vmlinux 0x8ba854ac ahci_em_messages +EXPORT_SYMBOL_GPL vmlinux 0x8bce6dca crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0x8bd1d559 regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x8bd6e81e wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x8bf7c723 register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x8bfc4721 usb_add_gadget_udc +EXPORT_SYMBOL_GPL vmlinux 0x8c03c710 fuse_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c058924 fat_detach +EXPORT_SYMBOL_GPL vmlinux 0x8c26295f snd_soc_test_bits +EXPORT_SYMBOL_GPL vmlinux 0x8c351045 sdhci_pltfm_free +EXPORT_SYMBOL_GPL vmlinux 0x8c426148 class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x8c577e68 tpm_show_caps +EXPORT_SYMBOL_GPL vmlinux 0x8c5b0b32 debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x8c72ddc3 spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x8c81ef5a rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0x8c9ffdaf serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0x8ca08204 amba_device_put +EXPORT_SYMBOL_GPL vmlinux 0x8ccf3441 inet_csk_reqsk_queue_prune +EXPORT_SYMBOL_GPL vmlinux 0x8cd19cf1 crypto_lookup_aead +EXPORT_SYMBOL_GPL vmlinux 0x8cdf6ac1 rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x8ce2b21e da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x8ce2e2e6 devres_release +EXPORT_SYMBOL_GPL vmlinux 0x8d148971 ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d397b83 crypto_alloc_instance +EXPORT_SYMBOL_GPL vmlinux 0x8d59415e ahci_ops +EXPORT_SYMBOL_GPL vmlinux 0x8d69103e dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0x8d7e19ba ahci_kick_engine +EXPORT_SYMBOL_GPL vmlinux 0x8d9b2141 snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL vmlinux 0x8d9d8aa5 tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x8da01274 kvm_get_pfn +EXPORT_SYMBOL_GPL vmlinux 0x8da7a6a8 dapm_regulator_event +EXPORT_SYMBOL_GPL vmlinux 0x8dc69550 ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0x8dc8dcb1 mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0x8dd0bb6b register_mtd_blktrans +EXPORT_SYMBOL_GPL vmlinux 0x8e1096ed regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0x8e114417 usb_stor_transparent_scsi_command +EXPORT_SYMBOL_GPL vmlinux 0x8e1cd06f kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL vmlinux 0x8e38a917 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0x8e7894bd __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x8e7e436f xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0x8e9c7933 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x8ebe610d md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x8ee7cf37 sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0x8effebd3 pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x8f01fda1 led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0x8f52f0a5 ata_sas_port_async_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8f56e920 serial8250_rx_dma +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f6fec9b musb_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x8f902a2c gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x8f92fb45 arm_iommu_release_mapping +EXPORT_SYMBOL_GPL vmlinux 0x8f962d42 pinctrl_pm_select_idle_state +EXPORT_SYMBOL_GPL vmlinux 0x8fb4b58b ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x8fc82623 usb_stor_set_xfer_buf +EXPORT_SYMBOL_GPL vmlinux 0x8fd134a5 inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x8fdcb84e i2c_new_device +EXPORT_SYMBOL_GPL vmlinux 0x8ff11ea3 amba_ahb_device_add +EXPORT_SYMBOL_GPL vmlinux 0x8ff152ac bmp085_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x9021e0f8 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0x90228869 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x90574050 cci_ace_get_port +EXPORT_SYMBOL_GPL vmlinux 0x905cf884 regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x9062c322 ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x90705b7f syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x9082d068 kprobe_decode_arm_table +EXPORT_SYMBOL_GPL vmlinux 0x90844388 bus_register +EXPORT_SYMBOL_GPL vmlinux 0x90906602 crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0x90a1004a crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x90c478c5 sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0x90d59398 single_open_net +EXPORT_SYMBOL_GPL vmlinux 0x90d69e2e task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x90e66d47 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0x9106c5df verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x91286982 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x9146a244 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x91503a47 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0x915c3410 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0x9173f893 device_find_child +EXPORT_SYMBOL_GPL vmlinux 0x9185b5e5 dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0x918ad429 ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x91c9e961 watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0x91dad723 pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x91e1c5d8 ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0x91f15597 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x921a44ce regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x9259a7f5 unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0x92ab2312 dma_buf_kunmap +EXPORT_SYMBOL_GPL vmlinux 0x92b57248 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x92d0d735 usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92d383aa usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92dc794c disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0x92dea011 regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x930ed9b9 of_usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0x9326c692 inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0x933f60a3 netlink_alloc_skb +EXPORT_SYMBOL_GPL vmlinux 0x934d219e crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x9388c69c device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x93aaf699 rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x94070249 bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x94199a1f fsnotify +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x9463ff71 init_bch +EXPORT_SYMBOL_GPL vmlinux 0x946b80f2 mtd_read_oob +EXPORT_SYMBOL_GPL vmlinux 0x94a68723 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x94abb745 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0x94ddbf09 snd_soc_unregister_platform +EXPORT_SYMBOL_GPL vmlinux 0x94e1823c hrtimer_start +EXPORT_SYMBOL_GPL vmlinux 0x9500dab9 ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x950c3d49 extcon_update_state +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x95413c76 ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x9566f97c snd_soc_codec_set_pll +EXPORT_SYMBOL_GPL vmlinux 0x9572b8ef dapm_mark_io_dirty +EXPORT_SYMBOL_GPL vmlinux 0x957a5321 shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x958ea272 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x95b1e20b regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0x95bae8c3 mtd_writev +EXPORT_SYMBOL_GPL vmlinux 0x95c86ab7 regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0x95cff999 blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x95d087d5 watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x95f3d41b input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0x95f6ee15 unregister_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x960d9615 arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x961cd5b9 rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9621849f ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x9623d4e6 dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0x963008ed ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL vmlinux 0x9634bb6c clk_register_mux +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x965a8d20 ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0x96814c4f devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x969d7722 anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x96a09fe5 ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0x96a22790 vmcore_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x96be1ed9 platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0x96f33665 snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL vmlinux 0x97110ab4 snd_soc_register_card +EXPORT_SYMBOL_GPL vmlinux 0x971171b0 usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x9722d96e sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x9730c462 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x974126a2 subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x9745c52a of_fixed_clk_setup +EXPORT_SYMBOL_GPL vmlinux 0x97510db5 smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x97704c40 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x97a3ec56 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x97a9e78b wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x97af5373 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0x97b3f919 inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0x97d8ac9e thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x980bd94c crypto_init_spawn2 +EXPORT_SYMBOL_GPL vmlinux 0x980e81be gpio_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9856e1c1 tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0x985b3972 rtc_irq_set_state +EXPORT_SYMBOL_GPL vmlinux 0x9861dd64 blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0x98740495 add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9893bfd8 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x98aa2173 skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0x98bc5fd9 fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0x98c9f584 klist_init +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x991484c4 of_property_count_strings +EXPORT_SYMBOL_GPL vmlinux 0x9924c496 __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x9934fb6f modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x9937811b rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x99392ba8 ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x99693b15 pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x9973add9 __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x997bee22 iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0x9987f840 snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL vmlinux 0x99a51a05 gfn_to_memslot +EXPORT_SYMBOL_GPL vmlinux 0x99b91daa ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x99d4aa41 snd_ctl_activate_id +EXPORT_SYMBOL_GPL vmlinux 0x99f9a914 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x9a097af0 unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a181b50 cpufreq_frequency_table_cpuinfo +EXPORT_SYMBOL_GPL vmlinux 0x9a8701f6 sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0x9a89dbf7 lpddr2_jedec_min_tck +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9aca444b get_monotonic_boottime +EXPORT_SYMBOL_GPL vmlinux 0x9ae71ecc i2c_new_dummy +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9b0ff56c __get_mtd_device +EXPORT_SYMBOL_GPL vmlinux 0x9b391822 dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x9b452801 rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x9b46434f skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0x9bb7471d inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0x9bbf0b77 crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x9bcc9dd2 sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x9bea7a40 wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9bf7afd9 led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x9c052aa4 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0x9c252409 crypto_nivaead_type +EXPORT_SYMBOL_GPL vmlinux 0x9c276114 ata_sff_data_xfer_noirq +EXPORT_SYMBOL_GPL vmlinux 0x9c3e5b59 percpu_ida_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9c438452 serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0x9c529847 __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9c660ac2 device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x9c7b4eb1 fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9ca47a85 pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9d0dbc0e unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x9d138533 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x9d202c23 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0x9d2e5084 snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL vmlinux 0x9d3eaecf ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0x9d46be67 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x9d4b72d4 pinctrl_pm_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x9d4be8dc sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x9d516c76 irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x9d774dc4 rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x9d7e7107 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0x9d8167f5 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0x9d8331c0 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x9da48526 inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x9dab269e crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x9dd15178 trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x9dfdf722 gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0x9e02cdaf powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0x9e3bf84a usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x9e85cea0 tcp_reno_min_cwnd +EXPORT_SYMBOL_GPL vmlinux 0x9e8c612f regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x9ea891af ahci_save_initial_config +EXPORT_SYMBOL_GPL vmlinux 0x9ebd2cff __put_net +EXPORT_SYMBOL_GPL vmlinux 0x9ebf775d crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0x9ebfe06e list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9edf7acf ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x9ef79b5b regmap_field_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x9f0664bf dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0x9f075ba7 usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0x9f26dbd8 regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0x9f3f17aa platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x9f3f98e1 of_get_nand_on_flash_bbt +EXPORT_SYMBOL_GPL vmlinux 0x9f5b42f4 sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0x9fb264e4 snd_soc_limit_volume +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9fecde47 kobj_completion_init +EXPORT_SYMBOL_GPL vmlinux 0xa0178373 nf_register_afinfo +EXPORT_SYMBOL_GPL vmlinux 0xa0256c9e ping_proc_register +EXPORT_SYMBOL_GPL vmlinux 0xa02d3e6c ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0xa0316846 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0xa033df40 clk_register_divider +EXPORT_SYMBOL_GPL vmlinux 0xa04cb280 mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa064f393 ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xa0689483 pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0xa0804d27 tpm_write +EXPORT_SYMBOL_GPL vmlinux 0xa08ff99e blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0xa0ab25d8 pinctrl_remove_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xa0acf715 regmap_init +EXPORT_SYMBOL_GPL vmlinux 0xa0af2f4a lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0xa0cd60dd unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xa0d970f8 sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xa0e207b7 fill_inquiry_response +EXPORT_SYMBOL_GPL vmlinux 0xa116f969 fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0xa12574ad put_device +EXPORT_SYMBOL_GPL vmlinux 0xa12d929d desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xa1356cdb mtd_unlock +EXPORT_SYMBOL_GPL vmlinux 0xa1483c3b regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xa17831b7 hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xa1a86cfc blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xa1bd7822 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xa1fe7177 spi_master_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa1fffb3c arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0xa2077016 unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xa248d9c9 of_extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xa26b6d79 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa27aa26e sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xa2831f57 spi_sync +EXPORT_SYMBOL_GPL vmlinux 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL vmlinux 0xa2ab8f3b pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xa2af37da snd_soc_dpcm_be_set_state +EXPORT_SYMBOL_GPL vmlinux 0xa2b9c993 clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0xa2c537fa da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xa2e4a04c __clocksource_updatefreq_scale +EXPORT_SYMBOL_GPL vmlinux 0xa2f63586 blkg_lookup +EXPORT_SYMBOL_GPL vmlinux 0xa328d4a2 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xa32a17a7 sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0xa32fed62 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xa33fc7a8 set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0xa35776f0 dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3e7c113 ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa49b2946 device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0xa4b172ac amba_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa4b2c0e2 __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0xa4bc6f1e gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0xa4ea04ee of_property_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0xa4f096ec ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0xa55f0399 __module_address +EXPORT_SYMBOL_GPL vmlinux 0xa56642c8 ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0xa57df4ec bdi_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0xa587a735 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0xa588de06 pinconf_generic_dump_config +EXPORT_SYMBOL_GPL vmlinux 0xa5a62a10 blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa5f8854a usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xa607b2e3 blk_queue_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xa61b1477 tracepoint_iter_start +EXPORT_SYMBOL_GPL vmlinux 0xa6233921 mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0xa625110d kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0xa67517a0 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0xa6a0a273 max77693_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6c965b6 file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0xa6c999d8 get_mtd_device_nm +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa724257f init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0xa728626c unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xa75312bc call_rcu_sched +EXPORT_SYMBOL_GPL vmlinux 0xa756e781 snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL vmlinux 0xa75811d0 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xa7633e6d unregister_mtd_user +EXPORT_SYMBOL_GPL vmlinux 0xa7a8f3bc regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0xa7aed12e devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xa7cdde2a xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0xa7e916a7 map_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xa7f6c674 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0xa7f92105 add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0xa8374a6e fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0xa84c750d crypto_init_ahash_spawn +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa85f0224 sysfs_schedule_callback +EXPORT_SYMBOL_GPL vmlinux 0xa865e774 inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xa8bc717e percpu_ida_free_tags +EXPORT_SYMBOL_GPL vmlinux 0xa8c9fafb spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0xa8d03648 ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0xa8dbaf80 regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xa8f18d5e palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0xa980af16 RSA_public_key_algorithm +EXPORT_SYMBOL_GPL vmlinux 0xa98453a2 snd_soc_bytes_put +EXPORT_SYMBOL_GPL vmlinux 0xa9a9666d __kvm_set_memory_region +EXPORT_SYMBOL_GPL vmlinux 0xa9aef2e1 gfn_to_hva_memslot +EXPORT_SYMBOL_GPL vmlinux 0xa9b292b9 of_get_regulator_init_data +EXPORT_SYMBOL_GPL vmlinux 0xa9b64b06 usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0xa9c57342 spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0xa9e0c4b2 pinctrl_find_gpio_range_from_pin +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9e5ea63 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0xa9fb74a2 of_device_is_stdout_path +EXPORT_SYMBOL_GPL vmlinux 0xaa0be1c1 scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0xaa264afa snd_soc_get_enum_double +EXPORT_SYMBOL_GPL vmlinux 0xaa2a72bf __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0xaa302447 gfn_to_pfn +EXPORT_SYMBOL_GPL vmlinux 0xaa36d927 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xaa63f672 snd_soc_bytes_info +EXPORT_SYMBOL_GPL vmlinux 0xaa64430d mtd_erase +EXPORT_SYMBOL_GPL vmlinux 0xaa70f199 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xaa9864e6 class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0xaaa1f996 device_move +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaab45034 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0xaab4bf34 find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0xaae54b69 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0xaae605aa wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xaaea0799 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0xaaee41bd wait_for_tpm_stat +EXPORT_SYMBOL_GPL vmlinux 0xab107698 usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0xab2b3086 register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xab3bff53 register_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0xab49b456 __mmu_notifier_invalidate_range_start +EXPORT_SYMBOL_GPL vmlinux 0xab5702b6 inet6_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0xab61f06c max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xab6babaf pm_qos_request +EXPORT_SYMBOL_GPL vmlinux 0xab702d59 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xab8d307b regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0xab8ebaee ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0xab95cd19 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0xabca5271 crypto_init_shash_spawn +EXPORT_SYMBOL_GPL vmlinux 0xabda1e2e decode_rs16 +EXPORT_SYMBOL_GPL vmlinux 0xabe5427c blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0xabe8d3c6 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0xabf68fd3 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0xac38885b ahci_reset_em +EXPORT_SYMBOL_GPL vmlinux 0xac43dfcc cgroup_load_subsys +EXPORT_SYMBOL_GPL vmlinux 0xac4af340 iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0xac622517 adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xac725f9b snd_soc_lookup_platform +EXPORT_SYMBOL_GPL vmlinux 0xac8340df ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0xacbfc20d default_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0xacdd420a relay_flush +EXPORT_SYMBOL_GPL vmlinux 0xace5c0fc usb_bus_list +EXPORT_SYMBOL_GPL vmlinux 0xace8de1b srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0xacec4f80 snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL vmlinux 0xacf59f70 kick_process +EXPORT_SYMBOL_GPL vmlinux 0xad0c73ed snd_soc_suspend +EXPORT_SYMBOL_GPL vmlinux 0xad0d5b11 ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xad376749 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0xad63482b ping_close +EXPORT_SYMBOL_GPL vmlinux 0xadad254d fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0xadc785ec kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0xadcbf88d pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0xadd9b58a mdio_mux_init +EXPORT_SYMBOL_GPL vmlinux 0xadf6aa4d tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xadfe98fd extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xae1c9197 exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0xae1f712e usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0xae2554c4 of_clk_src_onecell_get +EXPORT_SYMBOL_GPL vmlinux 0xae34eadb amba_apb_device_add_res +EXPORT_SYMBOL_GPL vmlinux 0xae44b043 snd_soc_get_volsw +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae7c1572 mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae8aa931 dev_pm_opp_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0xae9f9d59 nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xaec3a541 security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0xaec663fb netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0xaecca9e8 device_attach +EXPORT_SYMBOL_GPL vmlinux 0xaede7ae6 __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0xaeeb2561 alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xaefe0991 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xaeff4bca kvm_vcpu_kick +EXPORT_SYMBOL_GPL vmlinux 0xaf0f127e sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xaf24cfb8 sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0xaf348da7 cpu_pm_exit +EXPORT_SYMBOL_GPL vmlinux 0xaf55718b edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0xaf76668c usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xafd4ca94 i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xafd7fd50 class_find_device +EXPORT_SYMBOL_GPL vmlinux 0xafd87b5f snd_soc_dapm_get_value_enum_double +EXPORT_SYMBOL_GPL vmlinux 0xafec4569 tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0xb00a868c ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0xb050f329 init_rs +EXPORT_SYMBOL_GPL vmlinux 0xb056722a blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0xb0ab6126 irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0c9de2b usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0xb0dfcd56 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xb0ed2101 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0xb0ed75f8 devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0xb0f3dab2 regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb0fb1c1f inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0xb102cc52 snd_soc_put_enum_double +EXPORT_SYMBOL_GPL vmlinux 0xb10d55bc cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0xb13a974b tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0xb140d14c ring_buffer_read +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb14268b7 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb185e796 extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0xb1a7e3f6 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0xb1acbcce rcu_barrier_sched +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1c0c1c2 async_schedule_domain +EXPORT_SYMBOL_GPL vmlinux 0xb1c79131 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0xb1d510b7 debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1febffd usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb22bc48c tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0xb242ca9b usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0xb274b047 iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0xb29cc4ff driver_find +EXPORT_SYMBOL_GPL vmlinux 0xb2c6265a dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb2f41e2d ata_eh_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0xb30df95c kvm_release_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xb32cf389 tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0xb33efab7 driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xb34235c4 extcon_unregister_interest +EXPORT_SYMBOL_GPL vmlinux 0xb345d372 handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0xb3661ddb tps65912_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xb36a3dd4 cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0xb37e4608 snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL vmlinux 0xb383c4e3 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xb387011b skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0xb392f27a cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xb3a02ac0 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0xb3b1379c crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0xb3e50efc virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0xb3f5cc9a key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xb4268218 snd_soc_add_card_controls +EXPORT_SYMBOL_GPL vmlinux 0xb43d394e anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0xb44b6c75 tcp_init_congestion_ops +EXPORT_SYMBOL_GPL vmlinux 0xb4aaf736 pwm_enable +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4db00f5 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xb4e5fc05 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4f40010 tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb5243880 wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0xb5315b6b ping_err +EXPORT_SYMBOL_GPL vmlinux 0xb58dcfa2 synchronize_sched_expedited +EXPORT_SYMBOL_GPL vmlinux 0xb5a0e11e lpddr2_jedec_addressing_table +EXPORT_SYMBOL_GPL vmlinux 0xb5accb88 snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL vmlinux 0xb5bf476b i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0xb5cb8145 hrtimer_get_res +EXPORT_SYMBOL_GPL vmlinux 0xb5e526da vchan_tx_submit +EXPORT_SYMBOL_GPL vmlinux 0xb5e896fb tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0xb5f17edf perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb5f8d89f pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0xb5fd98af regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0xb6070593 usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0xb61e7fbc kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb6428510 snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xb674cd2e ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0xb67b2219 cm_suspend_again +EXPORT_SYMBOL_GPL vmlinux 0xb67c64fd __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0xb6aeb661 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xb6c635af wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb6f2c578 __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0xb7064cc0 fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0xb7089f08 ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xb7153d85 setup_irq +EXPORT_SYMBOL_GPL vmlinux 0xb74fe157 crypto_larval_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb7600657 platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xb7608cca ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0xb771e6b7 bL_switch_request_cb +EXPORT_SYMBOL_GPL vmlinux 0xb7a86c59 usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xb7e6a850 napi_hash_add +EXPORT_SYMBOL_GPL vmlinux 0xb7f77027 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0xb8346aeb percpu_ida_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb84a7425 blk_rq_check_limits +EXPORT_SYMBOL_GPL vmlinux 0xb84aee93 snd_soc_codec_set_cache_io +EXPORT_SYMBOL_GPL vmlinux 0xb84e5efc wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0xb85fb76f ping_proc_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb8bd845a snd_soc_debugfs_root +EXPORT_SYMBOL_GPL vmlinux 0xb8cd1f72 snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL vmlinux 0xb903674c scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0xb90e7754 pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0xb9176155 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0xb9363a1a ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0xb95fda5e pinctrl_utils_dt_free_map +EXPORT_SYMBOL_GPL vmlinux 0xb97d0652 usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0xb9b92453 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9da2997 snmp_fold_field64 +EXPORT_SYMBOL_GPL vmlinux 0xb9e87b94 bL_switcher_trace_trigger +EXPORT_SYMBOL_GPL vmlinux 0xb9fd292d da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xba1c6ea5 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0xba2a7ac9 virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0xba408f88 sysfs_get +EXPORT_SYMBOL_GPL vmlinux 0xba43edd2 cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xba95c3a1 dev_pm_opp_add +EXPORT_SYMBOL_GPL vmlinux 0xbaf9cc29 raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0xbb038ce4 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb11cfba klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xbb14d60c usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xbb27845f queue_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0xbb9e7e8b con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0xbbc5ca88 bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0xbc4f4a2d rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0xbc55b771 max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0xbc802a21 sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xbc812ec3 gfn_to_page +EXPORT_SYMBOL_GPL vmlinux 0xbc928297 ablkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xbca7b001 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0xbcac6160 pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbcaf3971 crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0xbcbaa80a __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbceb83b8 ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0xbcf34474 generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0xbcf3ecd3 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0xbcf89ab6 __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0xbd245e10 ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0xbd2904d8 tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0xbd31dd40 sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL vmlinux 0xbd5cb8b9 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0xbd68fa68 ahci_check_ready +EXPORT_SYMBOL_GPL vmlinux 0xbd914807 dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0xbdab3c70 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0xbdad59f6 rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0xbdc43cc3 do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xbdd295f0 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xbdd2f42a rcu_bh_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0xbdefc602 fuse_request_send +EXPORT_SYMBOL_GPL vmlinux 0xbdf1c0d2 snd_soc_put_volsw +EXPORT_SYMBOL_GPL vmlinux 0xbdf512de free_bch +EXPORT_SYMBOL_GPL vmlinux 0xbdfccd80 rq_flush_dcache_pages +EXPORT_SYMBOL_GPL vmlinux 0xbe0c1778 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xbe1887e4 ata_unpack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xbe205b21 snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL vmlinux 0xbe43bafd class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xbe75115e swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbead5767 device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0xbec2a507 bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0xbed9b693 snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL vmlinux 0xbef486fc snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL vmlinux 0xbef6323a ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0xbef96dd6 usb_stor_disconnect +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf0a2259 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0xbf2098b6 ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0xbf33fd73 usb_stor_control_msg +EXPORT_SYMBOL_GPL vmlinux 0xbf6ac818 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0xbf98b0f3 snd_soc_cnew +EXPORT_SYMBOL_GPL vmlinux 0xbfa01e2e regmap_fields_write +EXPORT_SYMBOL_GPL vmlinux 0xbfb1ab77 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0xbfb82cd2 regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xc053bc44 lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0xc0557d3b skcipher_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0xc081c246 bL_switcher_put_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc08647ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc0a1d228 snd_soc_jack_new +EXPORT_SYMBOL_GPL vmlinux 0xc0bf6ead timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xc0d01bc0 percpu_ref_cancel_init +EXPORT_SYMBOL_GPL vmlinux 0xc0d26387 kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc0e39aba snd_soc_free_ac97_codec +EXPORT_SYMBOL_GPL vmlinux 0xc11b45c6 gpiod_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xc11bd00f tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc158b7ca snd_soc_bytes_get +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc1790e3f devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0xc1791589 pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0xc182775e tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0xc18578ed process_srcu +EXPORT_SYMBOL_GPL vmlinux 0xc18e1877 platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0xc1e28bfd skb_gso_transport_seglen +EXPORT_SYMBOL_GPL vmlinux 0xc1fba888 kvm_clear_guest_page +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc270cf70 crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0xc275cd59 relay_close +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc28b601a uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0xc291eb10 gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xc2bed6f7 kvm_vcpu_cache +EXPORT_SYMBOL_GPL vmlinux 0xc2ea51a2 ahci_start_engine +EXPORT_SYMBOL_GPL vmlinux 0xc307bfcc clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0xc318354c serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0xc3389838 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xc338e3f4 regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xc33adb54 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc34efe27 snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0xc362e153 usb_stor_bulk_transfer_buf +EXPORT_SYMBOL_GPL vmlinux 0xc36c7128 fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0xc37226a5 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xc375277d snd_soc_cache_sync +EXPORT_SYMBOL_GPL vmlinux 0xc37aaf9e vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0xc385cb58 perf_num_counters +EXPORT_SYMBOL_GPL vmlinux 0xc3b93bba klist_next +EXPORT_SYMBOL_GPL vmlinux 0xc3e486a3 clockevents_unbind +EXPORT_SYMBOL_GPL vmlinux 0xc4107d2e snd_soc_get_strobe +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc4304875 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0xc438ad7a fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0xc448f22b kallsyms_on_each_symbol +EXPORT_SYMBOL_GPL vmlinux 0xc454fc7b twl_get_type +EXPORT_SYMBOL_GPL vmlinux 0xc471c67a twl4030_audio_disable_resource +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc4b10170 dev_pm_opp_find_freq_ceil +EXPORT_SYMBOL_GPL vmlinux 0xc4d1bd13 inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0xc4fe2abb regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xc50d4a7f sdhci_alloc_host +EXPORT_SYMBOL_GPL vmlinux 0xc5499764 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0xc5499d5a rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0xc54f4d41 platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0xc5532835 nand_release +EXPORT_SYMBOL_GPL vmlinux 0xc55c1b5e ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0xc56cde7d usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0xc572effe ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc5d37180 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0xc5da10ed sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0xc5e39b52 del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL vmlinux 0xc5fbcb2c regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xc60e6576 devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0xc60f75ec __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc61f3ae7 tcp_fetch_timewait_stamp +EXPORT_SYMBOL_GPL vmlinux 0xc620388f vchan_find_desc +EXPORT_SYMBOL_GPL vmlinux 0xc63989a2 usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0xc63a1109 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc640d719 usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0xc649229a clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0xc64e2e07 platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0xc65d3eed ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc688b54d snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL vmlinux 0xc68a58c2 device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0xc68aa090 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xc68db3df rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0xc690866c irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc69c15a8 devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xc6e37077 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc705d5a3 subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc7145fab kvm_read_guest_page +EXPORT_SYMBOL_GPL vmlinux 0xc72e1233 __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xc75b3d04 tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0xc765d004 __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0xc78093f6 __put_mtd_device +EXPORT_SYMBOL_GPL vmlinux 0xc79a35be ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0xc79a980d devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7c4003c usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0xc7c6391c mpi_set_buffer +EXPORT_SYMBOL_GPL vmlinux 0xc7c6bcb5 get_mtd_device +EXPORT_SYMBOL_GPL vmlinux 0xc7e39bca ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc7fb335b regulator_can_change_voltage +EXPORT_SYMBOL_GPL vmlinux 0xc80dc9db usb_stor_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc823ac70 inet_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL vmlinux 0xc8414a9e stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0xc87a621f ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0xc87c1f84 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xc8938d36 dm_underlying_device_busy +EXPORT_SYMBOL_GPL vmlinux 0xc8a1f15f tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0xc8a6d3f3 usb_stor_Bulk_transport +EXPORT_SYMBOL_GPL vmlinux 0xc8add232 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0xc8ae12f3 raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0xc8b4d0c5 pinctrl_pm_select_sleep_state +EXPORT_SYMBOL_GPL vmlinux 0xc8b96a93 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc8efd18f iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0xc8fceb70 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc931cca5 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0xc9332ed6 ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0xc94f64f9 unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc9547cfe crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc958f32b ahash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0xc95972a6 usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0xc9626103 ahci_reset_controller +EXPORT_SYMBOL_GPL vmlinux 0xc96f1802 ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0xc97d1140 cpufreq_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0xc99f36bc skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0xc9ba3f16 iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xc9ed68e3 tpm_show_pubek +EXPORT_SYMBOL_GPL vmlinux 0xca011438 usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0xca20e11d da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0xca3a38ed __fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0xca41d1b7 simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0xca4cc3d5 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca8209fb cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0xca85d8cf tracepoint_probe_update_all +EXPORT_SYMBOL_GPL vmlinux 0xca946187 of_clk_add_provider +EXPORT_SYMBOL_GPL vmlinux 0xcab1a6dd snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcaf983ec inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xcb01125e snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL vmlinux 0xcb074dc6 dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0xcb133d95 mtd_get_device_size +EXPORT_SYMBOL_GPL vmlinux 0xcb18e17f relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0xcb469d2b ddebug_add_module +EXPORT_SYMBOL_GPL vmlinux 0xcb475ad0 __netpoll_free_async +EXPORT_SYMBOL_GPL vmlinux 0xcb604f28 pinctrl_utils_add_map_configs +EXPORT_SYMBOL_GPL vmlinux 0xcb734a53 tpm_dev_release +EXPORT_SYMBOL_GPL vmlinux 0xcb788dcb dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0xcb9b162e clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0xcb9e29db pinctrl_dev_get_name +EXPORT_SYMBOL_GPL vmlinux 0xcba670f5 tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0xcbb1ad27 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0xcbbc3db6 __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xcbcae7f7 usb_gen_phy_init +EXPORT_SYMBOL_GPL vmlinux 0xcbdca135 spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0xcbee20b2 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0xcbf32bd1 inet_hash +EXPORT_SYMBOL_GPL vmlinux 0xcc1f1c3d inet_twdr_hangman +EXPORT_SYMBOL_GPL vmlinux 0xcc42a778 usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0xcc4b8748 set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0xcc519316 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0xcc66ee4a regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0xcc85fcb6 async_schedule +EXPORT_SYMBOL_GPL vmlinux 0xcc957eef usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0xccab9778 cpufreq_table_validate_and_show +EXPORT_SYMBOL_GPL vmlinux 0xccad07ea arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0xccafde34 ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0xccbfe1a2 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xcccbf853 tps65912_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xcccfa887 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccf5895e iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0xcd329172 usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0xcd417dc3 blkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0xcd50e0b3 irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0xcd65dc7d sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0xcd65e264 ablkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0xcd6ec7a6 rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0xcd70c46d snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL vmlinux 0xcd7b6ffa crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0xcd81e09c debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcda2b3d8 blkg_prfill_stat +EXPORT_SYMBOL_GPL vmlinux 0xcda2b728 bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0xcda61c77 iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0xcdad1196 spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0xcdbc2468 amba_ahb_device_add_res +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcdccbe79 ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0xcdd9a9a4 replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0xcdfc5099 debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0xce0b9b59 max77693_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xce46e140 ktime_get_ts +EXPORT_SYMBOL_GPL vmlinux 0xce489194 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0xce62ca43 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0xce6a9d9a trace_current_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xced05e01 blk_queue_bypass_start +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcee6bdd0 regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xcefc688b usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xcf19f44e inet6_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0xcf2c3bef led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0xcf326a55 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf8905b5 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0xcfb921b8 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0xcfc68341 synchronize_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0xcff95c43 dm_set_device_limits +EXPORT_SYMBOL_GPL vmlinux 0xd0334525 led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd03c7700 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0xd045dd19 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0xd0576f02 relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd06ed278 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0xd07787e5 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0c8d8ea tcp_death_row +EXPORT_SYMBOL_GPL vmlinux 0xd0c92560 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0xd0e1a150 alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0xd112900f sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xd14bc4d9 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xd16712f3 crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xd1822f0b cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xd18b976f extcon_get_cable_state +EXPORT_SYMBOL_GPL vmlinux 0xd191967a inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xd1a0e182 ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xd1a33b31 sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xd1b25039 blk_unprep_request +EXPORT_SYMBOL_GPL vmlinux 0xd1b2db37 tracepoint_probe_register_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xd1be9042 dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0xd1c0c5b2 netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0xd1c509d1 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0xd1c96ecf crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0xd1f0a011 usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xd1f3235e usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd214290f blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd2240b88 __mmu_notifier_invalidate_range_end +EXPORT_SYMBOL_GPL vmlinux 0xd258217d clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd27a5033 pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0xd2aaeb4e kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0xd2fd9599 class_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd2fe5973 rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0xd31bdf27 regmap_field_write +EXPORT_SYMBOL_GPL vmlinux 0xd32e61c6 nl_table +EXPORT_SYMBOL_GPL vmlinux 0xd32fe193 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xd33ada8b cci_probed +EXPORT_SYMBOL_GPL vmlinux 0xd34e781b regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0xd359aa07 inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd38fc76a screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0xd392ea59 sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0xd3b83263 extcon_register_interest +EXPORT_SYMBOL_GPL vmlinux 0xd3f8505c i2c_unlock_adapter +EXPORT_SYMBOL_GPL vmlinux 0xd3ffea12 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd42be477 rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0xd43a7694 snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd44c2f38 cci_disable_port_by_cpu +EXPORT_SYMBOL_GPL vmlinux 0xd46afa00 tpm_show_active +EXPORT_SYMBOL_GPL vmlinux 0xd46d29f2 led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0xd4758ef2 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0xd49bc354 tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0xd4b33536 xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0xd4bc6620 regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4cad45e clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xd50192d1 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0xd532567c virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd5771850 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0xd57adc74 tpm_register_hardware +EXPORT_SYMBOL_GPL vmlinux 0xd5b85df7 ahci_shost_attrs +EXPORT_SYMBOL_GPL vmlinux 0xd5bbd385 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0xd5bd7dac ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0xd5db845c driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xd5ef7873 blkcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0xd602ea4b css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0xd605b971 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0xd60c1e52 regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xd60e5ad2 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xd6505d86 transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0xd66a0c40 regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd67b2e34 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0xd684a2ea device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xd686eca4 of_reset_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xd68727ec ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0xd6c2e04b __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0xd7041bf0 device_rename +EXPORT_SYMBOL_GPL vmlinux 0xd705b4c7 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0xd70fc3e8 wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xd72f577b mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0xd764f56d vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd7729fad ata_eh_qc_retry +EXPORT_SYMBOL_GPL vmlinux 0xd7790f3a pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0xd77c0bc8 klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xd787b9c2 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xd788742d perf_trace_buf_prepare +EXPORT_SYMBOL_GPL vmlinux 0xd78f43a7 __inet_hash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0xd7d68dd0 fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0xd7d79132 put_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0xd7de42dc lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0xd7dea156 sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0xd7e6fda9 __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0xd7f3158f blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd7fcaf76 snd_compress_register +EXPORT_SYMBOL_GPL vmlinux 0xd81de62c ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xd81ffcd3 wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0xd820c283 eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xd8218dd7 pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0xd8525ea7 fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0xd87601cc ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0xd877b709 arm_iommu_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0xd88a7366 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0xd898cd9c enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xd89aef4b device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0xd8a0e5dd locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0xd8a182ec extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd8b2c23e __init_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0xd8b462cf snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL vmlinux 0xd8d096c1 stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0xd8d2bb0c wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xd90213ee tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xd90e9603 crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0xd912c90f ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0xd942d353 ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0xd960f3b1 __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xd9763b64 sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0xd9901e84 trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0xd9961bdc sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0xd9a34035 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0xd9ad161f __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xd9c1cdd8 init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xd9ecb670 ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xd9f2a7bf kill_pid_info_as_cred +EXPORT_SYMBOL_GPL vmlinux 0xd9fe8918 sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0xda05459c devm_snd_soc_register_card +EXPORT_SYMBOL_GPL vmlinux 0xda30bccd ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0xda3edfc6 hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0xda44cb37 setup_charger_manager +EXPORT_SYMBOL_GPL vmlinux 0xda4f087f usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL vmlinux 0xda5c0677 ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0xda6333fb sdhci_disable_irq_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xda6b4430 sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xda83f2f6 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xdaa6fce1 dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0xdac11bae of_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xdace9f7c kvm_read_guest_cached +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdb04cacc tracepoint_probe_unregister_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xdb5e7450 usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0xdb6a096a pinconf_generic_dt_node_to_map +EXPORT_SYMBOL_GPL vmlinux 0xdb73d70d snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdba4ad93 static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0xdba80fc1 of_fdt_unflatten_tree +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdbffc4b9 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0xdc1391ab key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0xdc1900ff pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0xdc1e15f1 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xdc1e340d netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0xdc2ff1e5 usb_stor_resume +EXPORT_SYMBOL_GPL vmlinux 0xdc461430 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0xdc490f55 kvm_vcpu_block +EXPORT_SYMBOL_GPL vmlinux 0xdc77458d uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0xdc8f29ab deregister_mtd_parser +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9dce46 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdcb06831 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0xdce769de balloon_devinfo_alloc +EXPORT_SYMBOL_GPL vmlinux 0xdd2efc0f ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0xdd35c69d tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0xdd37cbc1 ping_seq_fops +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd59ec5e fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0xdd60dc8c power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0xdd669a15 tps65912_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0xdd9a7cae usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0xdd9c4fcd regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0xdda3564c init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0xddb5ac33 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0xddcec214 blk_queue_rq_timed_out +EXPORT_SYMBOL_GPL vmlinux 0xddd35703 sec_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xddd58dc0 ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0xddfa772c irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xde224e42 led_trigger_store +EXPORT_SYMBOL_GPL vmlinux 0xde2c5a6e alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0xde31fbfa __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0xde3ddd60 tps65912_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xde3f0603 anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0xde53822a ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0xde669666 ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0xde89ea3e sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0xde9e465f spi_alloc_master +EXPORT_SYMBOL_GPL vmlinux 0xded31645 dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf214b24 crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0xdf241f22 devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xdf49b2cd tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0xdf633c3c dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xdf8d1475 rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdf90810c blkg_stat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0xdf94cb9c regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xdfb64ac5 device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xdff7c9ce blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe003e044 __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0xe007de41 kallsyms_lookup_name +EXPORT_SYMBOL_GPL vmlinux 0xe01ed4f7 vtime_common_account_irq_enter +EXPORT_SYMBOL_GPL vmlinux 0xe02eb6d0 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0xe06347fe power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0xe07babe6 snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL vmlinux 0xe07ca631 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0xe0907a65 skcipher_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe09a8b49 dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xe0ee2d6f usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0xe121042b led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0xe130d79b snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL vmlinux 0xe15e1773 ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xe1645db3 __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0xe16591ab stop_machine +EXPORT_SYMBOL_GPL vmlinux 0xe1724520 preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe17b3610 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe19cdfb5 cpufreq_frequency_table_target +EXPORT_SYMBOL_GPL vmlinux 0xe1aac552 devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xe1b77fa6 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0xe1c32794 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xe1cb6305 posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe1d8a884 snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL vmlinux 0xe1ecf0f0 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0xe23643a6 pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0xe2474b8f key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0xe25966fb xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0xe25e62a2 sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0xe266dfb3 get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0xe26825df list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0xe274344d spi_unregister_master +EXPORT_SYMBOL_GPL vmlinux 0xe281294c PageHeadHuge +EXPORT_SYMBOL_GPL vmlinux 0xe287bb38 sec_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xe2c7f1fb vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0xe2e7840d regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xe2e7b406 regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0xe2e9e24a mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe32c717e ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xe333fa01 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0xe337d0a8 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xe35b8569 sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0xe36fb112 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0xe37180bb inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0xe384a102 usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0xe42e1f70 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe4447db9 __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xe45164c5 iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0xe48ea02b seq_release_net +EXPORT_SYMBOL_GPL vmlinux 0xe49e3d80 tpm_dev_vendor_release +EXPORT_SYMBOL_GPL vmlinux 0xe4c4b28f gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xe4db15e3 sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0xe50e65bf blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xe52ae762 __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xe5586985 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0xe583558d mmc_send_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe589aabe sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0xe5a29576 snd_soc_add_platform +EXPORT_SYMBOL_GPL vmlinux 0xe5c1a540 gpio_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xe5fdccbf key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0xe6120f9b __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0xe63cf9f0 shash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0xe651f76e selinux_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe664134e class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xe67ee4ab ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe6c68334 ddebug_remove_module +EXPORT_SYMBOL_GPL vmlinux 0xe6d13b54 scsi_internal_device_unblock +EXPORT_SYMBOL_GPL vmlinux 0xe6d47fa5 pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0xe6d67d57 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0xe6d95a3d mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0xe6e1c5fe uuid_be_gen +EXPORT_SYMBOL_GPL vmlinux 0xe706333c pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xe70f2c3e kill_mtd_super +EXPORT_SYMBOL_GPL vmlinux 0xe71513f6 ahci_set_em_messages +EXPORT_SYMBOL_GPL vmlinux 0xe72204e3 ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0xe72be103 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0xe7335fb1 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xe7397a0c pwm_put +EXPORT_SYMBOL_GPL vmlinux 0xe744e221 unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0xe75245af _submit_bh +EXPORT_SYMBOL_GPL vmlinux 0xe764488a alarm_start +EXPORT_SYMBOL_GPL vmlinux 0xe7658bfd usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe77b64f5 ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xe7c0da15 __get_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xe7f3ddb8 blkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xe7f7e389 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe8400441 of_property_read_string_index +EXPORT_SYMBOL_GPL vmlinux 0xe85a9fd3 cpu_cluster_pm_exit +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe8915701 task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0xe89ac600 pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0xe89d55c8 pinctrl_utils_add_config +EXPORT_SYMBOL_GPL vmlinux 0xe89e43d3 pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0xe8b5a0e5 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0xe8dd8b72 __clk_register +EXPORT_SYMBOL_GPL vmlinux 0xe8df29fd usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0xe8ffbf84 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0xe906962f regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe955854d device_store_int +EXPORT_SYMBOL_GPL vmlinux 0xe95616eb devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe956a75c pl320_ipc_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe96e4d05 flush_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0xe997108d crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0xe9cc2261 adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea1bb291 bL_switcher_get_enabled +EXPORT_SYMBOL_GPL vmlinux 0xea418e0f atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0xea43355b gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0xea49f2c8 __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL vmlinux 0xea57f109 thermal_generate_netlink_event +EXPORT_SYMBOL_GPL vmlinux 0xea5c9f9a tpm_open +EXPORT_SYMBOL_GPL vmlinux 0xea79e8c0 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0xeaa92b15 dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0xeaf1fb58 __rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0xeaf95799 dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0xeb0f6bac get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0xeb131c3a mtd_point +EXPORT_SYMBOL_GPL vmlinux 0xeb1b0dd4 tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0xeb1c3628 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xeb23922e of_regulator_match +EXPORT_SYMBOL_GPL vmlinux 0xeb3ef01d arm_pm_restart +EXPORT_SYMBOL_GPL vmlinux 0xeb4a2187 pinctrl_utils_add_map_mux +EXPORT_SYMBOL_GPL vmlinux 0xeb5be747 put_pid +EXPORT_SYMBOL_GPL vmlinux 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL vmlinux 0xeb931194 show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0xeb9abbee ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xebbc1a87 __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0xebec57c4 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xebf4fc5d ahci_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0xec03595e usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xec1b043e regulator_suspend_prepare +EXPORT_SYMBOL_GPL vmlinux 0xec25f967 klist_del +EXPORT_SYMBOL_GPL vmlinux 0xec5ec9c5 vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xec780bf5 cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0xec836857 mtd_block_isbad +EXPORT_SYMBOL_GPL vmlinux 0xecae250c reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xecb086cf arizona_of_get_type +EXPORT_SYMBOL_GPL vmlinux 0xecbdc59e pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xecd25cda dapm_clock_event +EXPORT_SYMBOL_GPL vmlinux 0xecfd8761 usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xed02ee52 nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0xed06b916 wakeup_source_drop +EXPORT_SYMBOL_GPL vmlinux 0xed08e590 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0xed121413 ata_base_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xed2cc3a8 pinctrl_add_gpio_ranges +EXPORT_SYMBOL_GPL vmlinux 0xed2fa78b ahci_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0xed63a18e balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0xed695a2d unregister_jprobe +EXPORT_SYMBOL_GPL vmlinux 0xed71b42c fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0xed986cf5 __mtd_next_device +EXPORT_SYMBOL_GPL vmlinux 0xedbf3cbb of_get_dma_window +EXPORT_SYMBOL_GPL vmlinux 0xedd49930 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xeddbb442 sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0xeddf78b2 bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0xeded6abb ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0xedf114e4 usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0xedfc44b9 register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0xee1676f2 usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL vmlinux 0xee1b61c7 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0xee28dacd debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0xee46b334 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0xee4c2c5a blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xee4f3181 wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee7546c3 usb_stor_bulk_transfer_sg +EXPORT_SYMBOL_GPL vmlinux 0xeeaec63f proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0xeeb397b1 soc_ac97_ops +EXPORT_SYMBOL_GPL vmlinux 0xeef73241 virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0xef020863 snd_soc_cache_write +EXPORT_SYMBOL_GPL vmlinux 0xef36f85f aead_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0xef3814d4 regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xef38b476 kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0xef3938fb dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0xef409b74 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0xef4ac6b9 snd_compress_deregister +EXPORT_SYMBOL_GPL vmlinux 0xef66075c usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef6f0cdd ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0xef750677 led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0xef78a401 scsi_internal_device_block +EXPORT_SYMBOL_GPL vmlinux 0xefb3bd71 usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0xefddf71c skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0xf00d58f7 alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xf01de508 css_rightmost_descendant +EXPORT_SYMBOL_GPL vmlinux 0xf03f2237 PageHuge +EXPORT_SYMBOL_GPL vmlinux 0xf088baaf dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0xf08cef3a driver_register +EXPORT_SYMBOL_GPL vmlinux 0xf0970ea2 regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0xf09ca911 cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0xf0ba81b5 perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0xf0c4363d input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0xf0d19eb4 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0xf0dce131 crypto_alloc_instance2 +EXPORT_SYMBOL_GPL vmlinux 0xf0f5dbc2 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0xf12caf22 clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0xf156067e kvm_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xf16e1a1c ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0xf16fd78e crypto_blkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0xf1728293 mtd_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf181eb56 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf1a8874a ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1c07aae iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf227057e serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xf22a1fa9 __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0xf2523e74 amba_device_add +EXPORT_SYMBOL_GPL vmlinux 0xf256ac1b split_page +EXPORT_SYMBOL_GPL vmlinux 0xf268a955 class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf273be76 usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xf27977e2 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0xf27a2af9 pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0xf2b5b198 usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0xf2f077cc pkey_id_type_name +EXPORT_SYMBOL_GPL vmlinux 0xf2fc7f6e __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xf2fca922 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0xf3082149 snd_soc_add_platform_controls +EXPORT_SYMBOL_GPL vmlinux 0xf30fda27 lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf3265157 ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0xf34044e3 regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0xf3704854 devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xf376ec9f irq_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0xf3ab5e23 skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3b4b5a5 dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0xf3dfaf7e rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0xf3e30be4 snd_soc_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xf40dbda6 pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0xf42b980a extcon_set_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0xf4384694 virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0xf44a9dd2 snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL vmlinux 0xf467ec23 usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xf494f618 mmc_regulator_get_ocrmask +EXPORT_SYMBOL_GPL vmlinux 0xf499fdb2 rcu_barrier_bh +EXPORT_SYMBOL_GPL vmlinux 0xf49b0b7f bmp085_remove +EXPORT_SYMBOL_GPL vmlinux 0xf4a402cc __inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0xf4fc2d6c __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf5061a32 bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0xf50d09e0 sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf50fe86b snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf5203d55 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0xf53953be sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf54c9cba regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf56df29c crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0xf575e8dc sysfs_get_dirent_ns +EXPORT_SYMBOL_GPL vmlinux 0xf59e5a05 iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5b7306d cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0xf5bfc229 sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0xf5d97542 ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0xf5dd5bfd snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL vmlinux 0xf5fef4e3 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf66ab9af snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL vmlinux 0xf66ba61a swiotlb_tbl_unmap_single +EXPORT_SYMBOL_GPL vmlinux 0xf6850bcb regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0xf687e5cb irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0xf695597e bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0xf6bfc76d irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0xf6cc79d3 regmap_fields_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xf6e664a7 md_new_event +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf6fd20b7 snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL vmlinux 0xf7186883 regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf71e40e0 __class_create +EXPORT_SYMBOL_GPL vmlinux 0xf74dae0f idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf758b95a inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0xf75fbf8a regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xf76b0a59 read_current_timer +EXPORT_SYMBOL_GPL vmlinux 0xf7714159 transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xf78b08b7 usb_stor_post_reset +EXPORT_SYMBOL_GPL vmlinux 0xf7bfecfd system_trusted_keyring +EXPORT_SYMBOL_GPL vmlinux 0xf7ddfab7 debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0xf7e19dbc register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xf7edf159 ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xf7f30df5 ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xf806357b net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0xf809410c napi_by_id +EXPORT_SYMBOL_GPL vmlinux 0xf816c866 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xf82f16b3 execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf845c450 wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xf846506f irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf854f2b9 ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xf8736664 gfn_to_pfn_async +EXPORT_SYMBOL_GPL vmlinux 0xf8802492 print_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xf88a9dcf devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xf88ee1b6 snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL vmlinux 0xf8e0cdc8 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0xf8e2667a eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0xf8e89a88 device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3d0b kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0xf92ce956 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf9481b39 get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0xf976e077 regmap_read +EXPORT_SYMBOL_GPL vmlinux 0xf9781a35 platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0xf991a31f usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xf9961f38 cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9ca3160 ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xfa012fe7 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0xfa1bc97f dev_pm_opp_disable +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa1f4662 scatterwalk_start +EXPORT_SYMBOL_GPL vmlinux 0xfa23208d register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xfa9b9127 snd_soc_info_enum_double +EXPORT_SYMBOL_GPL vmlinux 0xfaa4613d bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0xfaa48be1 platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0xfabdeaf0 sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xfac219cf wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xfad11846 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0xfad4c9ba usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xfae5f153 dev_hard_start_xmit +EXPORT_SYMBOL_GPL vmlinux 0xfae85293 tpm_show_owned +EXPORT_SYMBOL_GPL vmlinux 0xfaee4f5c sdhci_remove_host +EXPORT_SYMBOL_GPL vmlinux 0xfb1ea3cf __netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb342f56 stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0xfb3c6546 ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xfb3f7982 remove_irq +EXPORT_SYMBOL_GPL vmlinux 0xfb42c40d n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0xfb4a14d3 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb7b5770 relay_open +EXPORT_SYMBOL_GPL vmlinux 0xfb94f014 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0xfba0a644 usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0xfbbedefd of_prop_next_string +EXPORT_SYMBOL_GPL vmlinux 0xfbca6226 relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0xfbcb158a devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xfbe9c956 sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc112bba part_round_stats +EXPORT_SYMBOL_GPL vmlinux 0xfc35cc5d nf_queue_entry_release_refs +EXPORT_SYMBOL_GPL vmlinux 0xfc422612 bsg_register_queue +EXPORT_SYMBOL_GPL vmlinux 0xfc466046 usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0xfc5d271a ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0xfcd7bc0b ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0xfcda5635 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xfcdb4034 wakeup_source_prepare +EXPORT_SYMBOL_GPL vmlinux 0xfd39c282 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xfd61723e scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xfd7e892d ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xfd96b6f1 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0xfda5574b usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0xfe2c4936 hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0xfe353ef1 ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0xfe45f4bd ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0xfe563ce3 snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL vmlinux 0xfe7b2383 pin_is_valid +EXPORT_SYMBOL_GPL vmlinux 0xfe95e170 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfebca3b1 ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0xfec0e8d6 kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfeda4e1c look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0xfee50f28 devres_get +EXPORT_SYMBOL_GPL vmlinux 0xfef8a166 trace_current_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff2d9e34 blkio_subsys +EXPORT_SYMBOL_GPL vmlinux 0xff3cdb86 regmap_update_bits_async +EXPORT_SYMBOL_GPL vmlinux 0xff49d88e ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff5c7210 devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0xff5cda7c wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0xff7e1132 ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0xffa598e4 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0xfface25d sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0xffdd93af extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xffe61e1f regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xffed12a6 pwm_request +EXPORT_SYMBOL_GPL vmlinux 0xffff5e3a dma_buf_end_cpu_access --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/armhf/generic-lpae.compiler +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/armhf/generic-lpae.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu/Linaro 4.8.2-19ubuntu1) 4.8.2 --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/armhf/generic-lpae.modules +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/armhf/generic-lpae.modules @@ -0,0 +1,2805 @@ +6lowpan +6pack +8021q +8250_dw +8255 +88pm800 +88pm805 +88pm80x +88pm80x_onkey +88pm860x_battery +88pm860x_bl +88pm860x_charger +88pm860x_onkey +88pm860x-ts +9p +9pnet +9pnet_virtio +a3d +a8293 +aat2870_bl +aat2870-regulator +ab3100 +ab3100-otp +ablk_helper +ac97_bus +acecad +act200l-sir +act_csum +act_gact +act_ipt +actisys-sir +act_mirred +act_nat +act_pedit +act_police +act_simple +act_skbedit +ad2s1200 +ad2s1210 +ad2s90 +ad5064 +ad525x_dpot +ad525x_dpot-i2c +ad525x_dpot-spi +ad5360 +ad5380 +ad5398 +ad5421 +ad5446 +ad5449 +ad5504 +ad5624r_spi +ad5686 +ad5755 +ad5764 +ad5791 +ad5930 +ad5933 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7152 +ad7192 +ad7266 +ad7280a +ad7291 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +ad7476 +ad7606 +ad7746 +ad7780 +ad7791 +ad7793 +ad7816 +ad7877 +ad7879 +ad7879-i2c +ad7879-spi +ad7887 +ad7923 +ad799x +ad8366 +ad9523 +ad9832 +ad9834 +ad9850 +ad9852 +ad9910 +ad9951 +adcxx +ade7753 +ade7754 +ade7758 +ade7759 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adfs +adi +adis16060 +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16204 +adis16209 +adis16220 +adis16240 +adis16260 +adis16400 +adis16480 +adis_lib +adjd_s311 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1275 +adm9240 +adp5520_bl +adp5520-keys +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +adq12b +ads1015 +ads7828 +ads7846 +ads7871 +ad_sigma_delta +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adv7180 +adxl34x +adxl34x-i2c +adxl34x-spi +adxrs450 +aes-arm +aes-arm-bs +af_802154 +af9013 +af9033 +af_alg +affs +af_key +af_packet_diag +af-rxrpc +afs +ah4 +ah6 +ahci_platform +aio_aio12_8 +aio_iiro_16 +aiptek +aircable +ak8975 +algif_hash +algif_skcipher +alphatrack +altera_jtaguart +altera_ps2 +altera-stapl +altera_uart +ambakmi +amba-pl010 +amc6821 +amplc_dio200 +amplc_dio200_common +amplc_pc236 +amplc_pc263 +ams369fg06 +analog +anatop-regulator +ansi_cprng +anubis +aoe +apbps2 +apds9300 +apds9802als +apds990x +appledisplay +appletalk +appletouch +ar5523 +ar7part +arc4 +arc_emac +arc_ps2 +arc_uart +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +armada +arm_big_little +arm_big_little_dt +arptable_filter +arp_tables +arpt_mangle +as3711_bl +as3711-regulator +as3722-regulator +as5011 +asc7621 +asix +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at86rf230 +at91_can +at91_ether +atbm8830 +aten +ath +ath10k_core +ath3k +ath6kl_core +ath6kl_sdio +ath6kl_usb +ath9k +ath9k_common +ath9k_htc +ath9k_hw +ati_remote +ati_remote2 +atm +atmel_mxt_ts +atmel_pwm +atmel-pwm-bl +atmel-ssc +atmtcp +atxp1 +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo_k1900fb +auo_k1901fb +auo_k190x +auo-pixcir-ts +authenc +authencesn +auth_rpcgss +autofs4 +ax25 +ax88179_178a +ax88796 +b2c2-flexcop +b2c2-flexcop-usb +b43 +b43legacy +b44 +bas_gigaset +batman-adv +baycom_epp +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bcm203x +bcm3510 +bcm5974 +bcma +bcm_wimax +bd6107 +befs +belkin_sa +bfs +bfusb +bh1770glc +bh1780gli +binfmt_misc +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +bL_switcher_dummy_if +bluetooth +bma150 +bma180 +bmp085-i2c +bmp085-spi +bnep +bonding +bpa10x +bpck +bpck6 +bpqether +bq2415x_charger +bq24190_charger +bq24735-charger +bq27x00_battery +br2684 +brcmfmac +brcmsmac +brcmutil +bridge +broadsheetfb +bsd_comp +btmrvl +btmrvl_sdio +btmtk_usb +btrfs +btsdio +btusb +btwilink +bu21013_ts +bw-qcam +c67x00 +c6xdigio +cachefiles +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camellia_generic +can +can-bcm +can-dev +can-gw +can-raw +capi +capidrv +carl9170 +cast5_generic +cast6_generic +cast_common +catc +cc770 +cc770_isa +cc770_platform +c_can +c_can_platform +ccm +cdc-acm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc-phonet +cdc_subset +cdc-wdm +cedusb +ceph +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +chnl_net +cifs +clearpad_tm1217 +clip +clk-max77686 +clk-s2mps11 +clk-si5351 +clk-twl6040 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_fw +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm36651 +cma3000_d0x +cma3000_d0x_i2c +cmac +cmtp +cobra +coda +comedi +comedi_bond +comedi_fc +comedi_parport +comedi_test +comm +configfs +cordic +core +cp210x +cpia2 +cpu-notifier-error-inject +c-qcam +cramfs +crc32 +crc7 +crc8 +crc-ccitt +crc-itu-t +cros_ec +cros_ec_i2c +cros_ec_keyb +cros_ec_spi +cryptd +cryptoloop +crypto_null +crypto_user +cs53l32a +cs89x0 +ctr +cts +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx24113 +cx24116 +cx24123 +cx25840 +cx82310_eth +cxacru +cxd2820r +cy8ctmg110_ts +cyapa +cyberjack +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +cyttsp_core +cyttsp_i2c +cyttsp_i2c_common +cyttsp_spi +da9030_battery +da9034-ts +da903x +da903x_bl +da9052-battery +da9052_bl +da9052-hwmon +da9052_onkey +da9052-regulator +da9052_tsi +da9052_wdt +da9055-hwmon +da9055_onkey +da9055-regulator +da9055_wdt +da9063-regulator +da9210-regulator +das08 +das08_isa +das16m1 +das6402 +das800 +db9 +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +dccp_probe +decnet +deflate +denali +denali_dt +des_generic +designware_i2s +dgap +dgrp +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dibx000_common +digi_acceleport +diskonchip +dlci +dlm +dm9000 +dm9601 +dm-bio-prison +dm-bufio +dm-cache +dm-cache-cleaner +dm-cache-mq +dm-crypt +dm-delay +dme1737 +dm-flakey +dm-log +dm-log-userspace +dmm32at +dm-mirror +dm-multipath +dm-persistent-data +dm-queue-length +dm-raid +dm-region-hash +dm-round-robin +dm-service-time +dm-snapshot +dm-switch +dm-thin-pool +dm-verity +dm-zero +dnet +dn_rtmsg +docg3 +docg4 +drbd +drm +drm_kms_helper +drm_usb +drxd +drxk +ds1621 +ds1682 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds620 +dsa_core +dsbr100 +dss1_divert +dstr +dt2801 +dt2811 +dt2814 +dt2815 +dt2817 +dt9812 +dummy +dummy-irq +dvb-as102 +dvb-core +dvb-pll +dvb-usb +dvb-usb-a800 +dvb-usb-af9005 +dvb-usb-af9005-remote +dvb-usb-af9015 +dvb-usb-af9035 +dvb-usb-anysee +dvb-usb-au6610 +dvb-usb-az6007 +dvb-usb-az6027 +dvb-usb-ce6230 +dvb-usb-cinergyT2 +dvb-usb-cxusb +dvb-usb-dib0700 +dvb-usb-dibusb-common +dvb-usb-dibusb-mb +dvb-usb-dibusb-mc +dvb-usb-digitv +dvb-usb-dtt200u +dvb-usb-dtv5100 +dvb-usb-dw2102 +dvb-usb-ec168 +dvb-usb-friio +dvb-usb-gl861 +dvb-usb-gp8psk +dvb-usb-it913x +dvb-usb-lmedm04 +dvb-usb-m920x +dvb-usb-mxl111sf +dvb-usb-nova-t-usb2 +dvb-usb-opera +dvb-usb-pctv452e +dvb-usb-rtl28xxu +dvb-usb-technisat-usb2 +dvb-usb-ttusb2 +dvb-usb-umt-010 +dvb_usb_v2 +dvb-usb-vp702x +dvb-usb-vp7045 +dwc2 +dwc2_platform +dwc3 +dw_dmac +dw_dmac_core +dw_mmc +dw_mmc-exynos +dw_mmc-pltfm +dw_mmc-socfpga +dw_wdt +dynapro +e4000 +ebt_802_3 +ebtable_broute +ebtable_filter +ebtable_nat +ebtables +ebt_among +ebt_arp +ebt_arpreply +ebt_dnat +ebt_ip +ebt_ip6 +ebt_limit +ebt_log +ebt_mark +ebt_mark_m +ebt_nflog +ebt_pkttype +ebt_redirect +ebt_snat +ebt_stp +ebt_vlan +ec100 +echo +edac_core +edt-ft5x06 +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efs +egalax_ts +ehset +elo +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +emc1403 +emc2103 +emc6w201 +em_canid +em_cmp +emi26 +emi62 +em_ipset +em_meta +em_nbyte +empeg +ems_usb +em_text +em_u32 +enc28j60 +enclosure +epat +epia +eql +esd_usb2 +esi-sir +esp4 +esp6 +ethoc +evbug +exofs +extcon-adc-jack +extcon-arizona +extcon-gpio +extcon-max77693 +extcon-max8997 +extcon-palmas +ezusb +f2fs +f71805f +f71882fg +f75375s +f81232 +fakelb +fan53555 +faulty +fb_sys_fops +fc0011 +fc0012 +fc0013 +fc2580 +fcrypt +ff-memless +fid +fit2 +fit3 +fl512 +fld +flexcan +fmc +fmc-chardev +fmc-fakedev +fmc-trivial +fmc-write-eeprom +fm_drv +fotg210-hcd +fotg210-udc +freevxfs +friq +frpw +fsa9480 +fscache +ft1000 +ftdi-elan +ftdi_sio +ftgmac100 +ftl +ftmac100 +fujitsu_ts +fusbh200-hcd +g760a +g762 +g_acm_ms +gadgetfs +gamecon +gameport +garmin_gps +garp +g_audio +g_cdc +gcm +g_dbgp +gdmtty +gdmulte +gdmwm +generic +generic-adc-battery +generic_bl +gen_probe +g_ether +gf128mul +gf2k +g_ffs +gfs2 +ghash-generic +g_hid +gigaset +girbil-sir +gl518sm +gl520sm +gl620a +gluebi +g_mass_storage +g_midi +g_multi +g_ncm +g_nokia +go7007 +go7007-loader +go7007-usb +goldfishfb +gp2ap002a00f +gp2ap020a00f +gpio +gpio-74x164 +gpio-addr-flash +gpio-adnp +gpio-adp5520 +gpio-adp5588 +gpio-arizona +gpio_backlight +gpio-charger +gpio-da9052 +gpio-da9055 +gpio-fan +gpio-generic +gpio-grgpio +gpio-ir-recv +gpio-kempld +gpio_keys +gpio_keys_polled +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-mc33880 +gpio-mcp23s08 +gpio_mouse +gpio-pca953x +gpio-pcf857x +gpio-rcar +gpio-regulator +gpio_tilt_polled +gpio-tps65912 +gpio-ts5500 +gpio-twl6040 +gpio-ucb1400 +gpio-viperboard +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +g_printer +grcan +gre +grip +grip_mp +g_serial +gspca_benq +gspca_conex +gspca_cpia1 +gspca_etoms +gspca_finepix +gspca_gl860 +gspca_jeilinj +gspca_jl2005bcd +gspca_kinect +gspca_konica +gspca_m5602 +gspca_main +gspca_mars +gspca_mr97310a +gspca_nw80x +gspca_ov519 +gspca_ov534 +gspca_ov534_9 +gspca_pac207 +gspca_pac7302 +gspca_pac7311 +gspca_se401 +gspca_sn9c2028 +gspca_sn9c20x +gspca_sonixb +gspca_sonixj +gspca_spca1528 +gspca_spca500 +gspca_spca501 +gspca_spca505 +gspca_spca506 +gspca_spca508 +gspca_spca561 +gspca_sq905 +gspca_sq905c +gspca_sq930x +gspca_stk014 +gspca_stk1135 +gspca_stv0680 +gspca_stv06xx +gspca_sunplus +gspca_t613 +gspca_topro +gspca_tv8532 +gspca_vc032x +gspca_vicam +gspca_xirlink_cit +gspca_zc3xx +gtco +guillemot +gunze +g_webcam +g_zero +hampshire +hanwang +hci +hci_uart +hci_vhci +hdlc +hdlc_cisco +hdlcdrv +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdpvr +hfc4s8s_l1 +hfcsusb +hfc_usb +hfs +hfsplus +hid +hid-a4tech +hid-apple +hid-appleir +hid-aureal +hid-axff +hid-belkin +hid-cherry +hid-chicony +hid-cypress +hid-dr +hid-elecom +hid-elo +hid-emsff +hid-ezkey +hid-gaff +hid-generic +hid-gyration +hid-holtekff +hid-holtek-kbd +hid-holtek-mouse +hid-huion +hid-icade +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-lenovo-tpkbd +hid-logitech +hid-logitech-dj +hid-magicmouse +hid-microsoft +hid-monterey +hid-multitouch +hid-ntrig +hid-ortek +hidp +hid-petalynx +hid-picolcd +hid-pl +hid-primax +hid-prodikeys +hid-roccat +hid-roccat-arvo +hid-roccat-common +hid-roccat-isku +hid-roccat-kone +hid-roccat-koneplus +hid-roccat-konepure +hid-roccat-kovaplus +hid-roccat-lua +hid-roccat-pyra +hid-roccat-ryos +hid-roccat-savu +hid-saitek +hid-samsung +hid-sensor-accel-3d +hid-sensor-als +hid-sensor-gyro-3d +hid-sensor-hub +hid-sensor-iio-common +hid-sensor-magn-3d +hid-sensor-trigger +hid-sjoy +hid-sony +hid-speedlink +hid-steelseries +hid-sunplus +hid-thingm +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-uclogic +hid-wacom +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +highbank_l2_edac +highbank_mc_edac +hih6130 +hisax +hisax_st5481 +hmc5843 +hmc6352 +host1x +hostap +hpfs +hsi +hsi_char +hso +hsr +htc-pasic3 +htu21 +huawei_cdc_ncm +hwmon-vid +hx8357 +i2400m +i2400m-usb +i2c-algo-bit +i2c-algo-pca +i2c-arb-gpio-challenge +i2c-cbus-gpio +i2c-designware-core +i2c-designware-platform +i2c-dev +i2c-diolan-u2c +i2c-gpio +i2c-hid +i2c-kempld +i2c-mux +i2c-mux-gpio +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-mux-pinctrl +i2c-nomadik +i2c-ocores +i2c-parport +i2c-parport-light +i2c-pca-platform +i2c-rcar +i2c-sh_mobile +i2c-simtec +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-tiny-usb +i2c-versatile +i2c-viperboard +i2c-xiic +ibmaem +ibmpex +ics932s401 +idmouse +ieee802154 +ifb +iforce +iguanair +iio_dummy +iio_hwmon +iio-trig-interrupt +iio-trig-periodic-rtc +iio-trig-sysfs +ii_pci20kc +ili210x +ili922x +ili9320 +imm +imon +impa7 +ims-pcu +imx074 +imx_thermal +ina209 +ina2xx +industrialio +industrialio-triggered-buffer +inet_diag +inexio +inftl +input-polldev +int51x1 +interact +interval_tree_test +inv-mpu6050 +io_edgeport +io_ti +iowarrior +ip6_gre +ip6table_filter +ip6table_mangle +ip6table_nat +ip6table_raw +ip6_tables +ip6table_security +ip6t_ah +ip6t_eui64 +ip6t_frag +ip6t_hbh +ip6t_ipv6header +ip6t_MASQUERADE +ip6t_mh +ip6t_NPT +ip6t_REJECT +ip6t_rpfilter +ip6t_rt +ip6t_SYNPROXY +ip6_tunnel +ip6_vti +ipack +ipaq +ipcomp +ipcomp6 +ipddp +ip_gre +ipheth +ipip +ipmi_devintf +ipmi_poweroff +ipmi_si +ipmi_watchdog +ipoctal +ip_set +ip_set_bitmap_ip +ip_set_bitmap_ipmac +ip_set_bitmap_port +ip_set_hash_ip +ip_set_hash_ipport +ip_set_hash_ipportip +ip_set_hash_ipportnet +ip_set_hash_net +ip_set_hash_netiface +ip_set_hash_netnet +ip_set_hash_netport +ip_set_hash_netportnet +ip_set_list_set +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +ip_tables +iptable_security +ipt_ah +ipt_CLUSTERIP +ipt_ECN +ipt_MASQUERADE +ipt_REJECT +ipt_rpfilter +ipt_SYNPROXY +ipt_ULOG +ip_tunnel +ip_vs +ip_vs_dh +ip_vs_ftp +ip_vs_lblc +ip_vs_lblcr +ip_vs_lc +ip_vs_nq +ip_vs_pe_sip +ip_vs_rr +ip_vs_sed +ip_vs_sh +ip_vs_wlc +ip_vs_wrr +ip_vti +ipw +ipx +ircomm +ircomm-tty +irda +irda-usb +ir-jvc-decoder +ir-kbd-i2c +irlan +ir-lirc-codec +ir-mce_kbd-decoder +ir-nec-decoder +irnet +ir-rc5-decoder +ir-rc5-sz-decoder +ir-rc6-decoder +ir-sanyo-decoder +ir-sony-decoder +irtty-sir +ir-usb +iscsi_boot_sysfs +iscsi_target_mod +iscsi_tcp +isdn +isdn_bsdcomp +isdnhdlc +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl6271a-regulator +isl6421 +isl6423 +isofs +isp116x-hcd +isp1362-hcd +isp1704_charger +isp1760 +it87 +it913x-fe +itd1000 +itg3200 +iuu_phoenix +ix2505v +jc42 +jedec_probe +jffs2 +jfs +joydev +joydump +kafs +kalmia +kaweth +kbic +kbtab +kcomedilib +kempld-core +kempld_wdt +kernelcapi +keucr +keyspan +keyspan_pda +keyspan_remote +kfifo_buf +khazad +kingsun-sir +kl5kusb105 +kobil_sct +ks0108 +ks8842 +ks8851 +ks8851_mll +ks959-sir +ksdazzle-sir +ksocklnd +ktti +kvaser_usb +kxsd9 +kxtj9 +l1oip +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +l2tp_ppp +l4f00242t03 +lapb +lapbether +latch-addr-flash +lattice-ecp3-config +lcd +ld9040 +ldusb +lec +leds-88pm860x +leds-adp5520 +leds-atmel-pwm +leds-bd2802 +leds-blinkm +leds-da903x +leds-da9052 +leds-dac124s085 +leds-gpio +leds-lm3530 +leds-lm3533 +leds-lm355x +leds-lm3642 +leds-lp3944 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lt3593 +leds-max8997 +leds-mc13783 +leds-ot200 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pca9685 +leds-pwm +leds-regulator +leds-tca6507 +leds-wm831x-status +leds-wm8350 +ledtrig-backlight +ledtrig-camera +ledtrig-default-on +ledtrig-gpio +ledtrig-oneshot +ledtrig-timer +ledtrig-transient +legousbtower +lg2160 +lgdt3305 +lgdt330x +lgs8gxx +lg-vl600 +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libceph +libcfs +libcomposite +libcrc32c +libertas +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libiscsi +libiscsi_tcp +libore +libosd +libsas +lightning +line6usb +lineage-pem +linear +lirc_dev +lirc_igorplugusb +lirc_imon +lirc_parallel +lirc_sasem +lirc_serial +lirc_sir +lirc_zilog +lis3lv02d +lis3lv02d_i2c +lis3lv02d_spi +litelink-sir +lkkbd +llc +llc2 +llog_test +lm25066 +lm3533-als +lm3533_bl +lm3533-core +lm3533-ctrlbank +lm3630a_bl +lm3639_bl +lm63 +lm70 +lm73 +lm75 +lm77 +lm78 +lm80 +lm83 +lm8323 +lm8333 +lm85 +lm87 +lm90 +lm92 +lm93 +lm95234 +lm95241 +lm95245 +lms283gf05 +lms501kf03 +lmv +lnbp21 +lnbp22 +lnet +lnet_selftest +lockd +lov +lp +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp8755 +lp8788_bl +lp8788-charger +lpddr_cmds +lru_cache +lrw +ltc2978 +ltc4151 +ltc4215 +ltc4245 +ltc4261 +ltv350qv +lustre +lv5207lp +lvfs +lz4 +lz4_compress +lz4hc +lz4hc_compress +m25p80 +m2m-deinterlace +m88rs2000 +ma600-sir +mac80211 +mac80211_hwsim +mac802154 +macb +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mac-gaelic +mac-greek +mac-iceland +mac-inuit +mac-roman +mac-romanian +mac-turkish +macvlan +macvtap +mag3110 +magellan +map_absent +map_ram +map_rom +matrix-keymap +matrix_keypad +max1111 +max11801_ts +max1363 +max1586 +max16064 +max16065 +max1619 +max1668 +max17040_battery +max17042_battery +max197 +max2165 +max3100 +max34440 +max517 +max63xx_wdt +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77686 +max77693 +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925_bl +max8925_onkey +max8925_power +max8925-regulator +max8952 +max8973-regulator +max8997 +max8997_charger +max8998 +max8998_charger +mb86a20s +mc13783-adc +mc13783-pwrbutton +mc13783-regulator +mc13783_ts +mc13892-regulator +mc13xxx-core +mc13xxx-i2c +mc13xxx-regulator-core +mc13xxx-spi +mc44s803 +mceusb +mcp2120-sir +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp4725 +mcs5000_ts +mcs7780 +mcs7830 +mcs_touchkey +mct_u232 +md4 +mdc +mdc800 +mem2mem_testdev +memstick +mena21_wdt +metronomefb +metro-usb +mgc +mg_disk +michael_mic +microread +microread_i2c +microtek +mii +minix +mip6 +mISDN_core +mISDN_dsp +mk712 +mkiss +mma8450 +mms114 +mos7720 +mos7840 +mpc624 +mpoa +mpr121_touchkey +mpu3050 +mrf24j40 +mrp +ms_block +msdos +msp3400 +mspro_block +mt2060 +mt2063 +mt20xx +mt2266 +mt29f_spinand +mt312 +mt352 +mt9m001 +mt9m111 +mt9t031 +mt9t112 +mt9v011 +mt9v022 +mtd_dataflash +mtdoops +mtdram +mtdswap +mtouch +multipath +multiq3 +mv88e6060 +mv88e6xxx_drv +mvmdio +mv_u3d_core +mv_udc +mwifiex +mwifiex_sdio +mwifiex_usb +mxl111sf-demod +mxl111sf-tuner +mxl5005s +mxl5007t +nandsim +nau7802 +navman +nbd +nci +ncpfs +nct6775 +net1080 +net2272 +netconsole +netlink_diag +netprio_cgroup +netrom +newtonkbd +nfc +nfc_digital +nf_conntrack +nf_conntrack_amanda +nf_conntrack_broadcast +nf_conntrack_ftp +nf_conntrack_h323 +nf_conntrack_ipv4 +nf_conntrack_ipv6 +nf_conntrack_irc +nf_conntrack_netbios_ns +nf_conntrack_netlink +nf_conntrack_pptp +nf_conntrack_proto_dccp +nf_conntrack_proto_gre +nf_conntrack_proto_sctp +nf_conntrack_proto_udplite +nf_conntrack_sane +nf_conntrack_sip +nf_conntrack_snmp +nf_conntrack_tftp +nfcsim +nfcwilink +nf_defrag_ipv4 +nf_defrag_ipv6 +nf_nat +nf_nat_amanda +nf_nat_ftp +nf_nat_h323 +nf_nat_ipv4 +nf_nat_ipv6 +nf_nat_irc +nf_nat_pptp +nf_nat_proto_dccp +nf_nat_proto_gre +nf_nat_proto_sctp +nf_nat_proto_udplite +nf_nat_sip +nf_nat_snmp_basic +nf_nat_tftp +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +nfnetlink_log +nfnetlink_queue +nfs +nfs_acl +nfsd +nfs_layout_nfsv41_files +nfsv2 +nfsv3 +nfsv4 +nf_synproxy_core +nf_tables +nf_tables_arp +nf_tables_bridge +nf_tables_ipv4 +nf_tables_ipv6 +nft_chain_nat_ipv4 +nft_chain_nat_ipv6 +nft_chain_route_ipv4 +nft_chain_route_ipv6 +nft_compat +nft_counter +nft_ct +nft_exthdr +nft_hash +nftl +nft_limit +nft_log +nft_meta +nft_nat +nft_rbtree +nft_reject_ipv4 +n_hdlc +ni_at_ao +ni_atmio +ni_atmio16d +ni_labpc +nilfs2 +ni_tio +nlmon +nls_ascii +nls_cp1250 +nls_cp1251 +nls_cp1255 +nls_cp737 +nls_cp775 +nls_cp850 +nls_cp852 +nls_cp855 +nls_cp857 +nls_cp860 +nls_cp861 +nls_cp862 +nls_cp863 +nls_cp864 +nls_cp865 +nls_cp866 +nls_cp869 +nls_cp874 +nls_cp932 +nls_cp936 +nls_cp949 +nls_cp950 +nls_euc-jp +nls_iso8859-1 +nls_iso8859-13 +nls_iso8859-14 +nls_iso8859-15 +nls_iso8859-2 +nls_iso8859-3 +nls_iso8859-4 +nls_iso8859-5 +nls_iso8859-6 +nls_iso8859-7 +nls_iso8859-9 +nls_koi8-r +nls_koi8-ru +nls_koi8-u +nls_utf8 +notifier-error-inject +n_r3964 +ns558 +ntc_thermistor +ntfs +n_tracerouter +n_tracesink +null_blk +nvram +nxt200x +nxt6000 +obdclass +obdecho +objlayoutdriver +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stackglue +ocfs2_stack_o2cb +ocfs2_stack_user +old_belkin-sir +olpc_apsp +omfs +omninet +on20 +on26 +onenand +opencores-kbd +openvswitch +oprofile +opticon +option +osc +osd +osdblk +osst +oti6858 +output +ov2640 +ov5642 +ov6650 +ov7640 +ov772x +ov9640 +ov9740 +overlayfs +oxu210hp-hcd +ozwpan +p54common +p54spi +p54usb +p8022 +p8023 +palmas-regulator +pandora_bl +panel +paride +parkbd +parport +parport_ax88796 +parport_pc +pata_arasan_cf +pata_of_platform +pata_platform +pc87360 +pc87427 +pcbc +pcd +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pcl711 +pcl724 +pcl726 +pcl730 +pcm3724 +pcmad +pcmda12 +pcmmio +pcmuio +pcrypt +pcwd_usb +pd +pda_power +peak_usb +pegasus +penmount +percpu_test +pf +pfuze100-regulator +pg +phonet +phram +phy-am335x +phy-am335x-control +phy-core +phy-exynos-dp-video +phy-gpio-vbus-usb +phy-isp1301 +phy-rcar-usb +phy-samsung-usb +phy-samsung-usb2 +phy-samsung-usb3 +physmap +physmap_of +pixcir_i2c_ts +pktcdvd +pktgen +pl2303 +pl330 +platform_lcd +plat_nand +plat-ram +plip +plusb +pmbus +pmbus_core +pm-notifier-error-inject +pn533 +pn544 +pn544_i2c +pn_pep +poc +port100 +poseidon +powermate +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +pppoatm +pppoe +pppox +ppp_synctty +pps-gpio +pps-ldisc +pps_parport +pptp +prism2_usb +ps2mult +psmouse +psnap +pt +ptlrpc +pvrusb2 +pwc +pwm_bl +pwm-pca9685 +pwm-twl +pwm-twl-led +pxa27x_udc +qcaux +qcserial +qinfo_probe +qmi_wwan +qnx4 +qnx6 +qt1010 +qt1070 +qt2160 +quatech2 +quota_tree +quota_v1 +quota_v2 +r8152 +r815x +r8188eu +r820t +r8712u +r8a66597-hcd +r8a66597-udc +radio-i2c-si470x +radio-keene +radio-ma901 +radio-mr800 +radio-shark +radio-si4713 +radio-si476x +radio-tea5764 +radio-usb-si470x +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid6test +raid_class +raw +rbd +rbtree_test +rc5t583-regulator +rc-adstech-dvb-t-pci +rc-alink-dtu-m +rc-anysee +rc-apac-viewcomp +rcar-du-drm +rcar_vin +rc-asus-pc39 +rc-asus-ps3-100 +rc-ati-tv-wonder-hd-600 +rc-ati-x10 +rc-avermedia +rc-avermedia-a16d +rc-avermedia-cardbus +rc-avermedia-dvbt +rc-avermedia-m135a +rc-avermedia-m733a-rm-k6 +rc-avermedia-rm-ks +rc-avertv-303 +rc-azurewave-ad-tu700 +rc-behold +rc-behold-columbus +rc-budget-ci-old +rc-cinergy +rc-cinergy-1400 +rc-core +rc-delock-61959 +rc-dib0700-nec +rc-dib0700-rc5 +rc-digitalnow-tinytwin +rc-digittrade +rc-dm1105-nec +rc-dntv-live-dvb-t +rc-dntv-live-dvbt-pro +rc-em-terratec +rc-encore-enltv +rc-encore-enltv2 +rc-encore-enltv-fm53 +rc-evga-indtube +rc-eztv +rc-flydvb +rc-flyvideo +rc-fusionhdtv-mce +rc-gadmei-rm008z +rc-genius-tvgo-a11mce +rc-gotview7135 +rc-hauppauge +rc-imon-mce +rc-imon-pad +rc-iodata-bctv7e +rc-it913x-v1 +rc-it913x-v2 +rc-kaiomy +rc-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lirc +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +rc-msi-digivox-ii +rc-msi-digivox-iii +rc-msi-tvanywhere +rc-msi-tvanywhere-plus +rc-nebula +rc-nec-terratec-cinergy-xs +rc-norwood +rc-npgtech +rc-pctv-sedna +rc-pinnacle-color +rc-pinnacle-grey +rc-pinnacle-pctv-hd +rc-pixelview +rc-pixelview-002t +rc-pixelview-mk12 +rc-pixelview-new +rc-powercolor-real-angel +rc-proteus-2309 +rc-purpletv +rc-pv951 +rc-rc6-mce +rc-real-audio-220-32-keys +rc-reddo +rc-snapstream-firefly +rc-streamzap +rc-tbs-nec +rc-technisat-usb2 +rc-terratec-cinergy-xs +rc-terratec-slim +rc-terratec-slim-2 +rc-tevii-nec +rc-tivo +rc-total-media-in-hand +rc-total-media-in-hand-02 +rc-trekstor +rc-tt-1500 +rc-twinhan1027 +rc-videomate-m1f +rc-videomate-s350 +rc-videomate-tv-pvr +rc-winfast +rc-winfast-usbii-deluxe +rds +rds_tcp +redboot +redrat3 +reiserfs +remoteproc +renesas_usbhs +retu-mfd +retu-pwrbutton +retu_wdt +rfcomm +rfd_ftl +rfkill-gpio +rfkill-regulator +rio500 +rj54n1cb0c +rmd128 +rmd160 +rmd256 +rmd320 +rndis_host +rndis_wlan +romfs +rose +rotary_encoder +rpcsec_gss_krb5 +rt2500usb +rt2800lib +rt2800usb +rt2x00lib +rt2x00usb +rt73usb +rtc-88pm80x +rtc-88pm860x +rtc-ab3100 +rtc-as3722 +rtc-bq32k +rtc-bq4802 +rtc-cmos +rtc-da9052 +rtc-da9055 +rtc-ds1286 +rtc-ds1305 +rtc-ds1307 +rtc-ds1374 +rtc-ds1390 +rtc-ds1511 +rtc-ds1553 +rtc-ds1672 +rtc-ds1742 +rtc-ds2404 +rtc-ds3232 +rtc-ds3234 +rtc-em3027 +rtc-fm3130 +rtc-hid-sensor-time +rtc-isl12022 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-moxart +rtc-msm6242 +rtc-palmas +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf8523 +rtc-pcf8563 +rtc-pcf8583 +rtc-pl030 +rtc-r9701 +rtc-rc5t583 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3029c2 +rtc-rx4581 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-snvs +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rti800 +rti802 +rtl2830 +rtl2832 +rtl8150 +rtl8187 +rtl8192c-common +rtl8192cu +rtl_usb +rtlwifi +rts5139 +rx51_battery +rxkad +s1d13xxxfb +s2250 +s2255drv +s526 +s5h1409 +s5h1411 +s5h1420 +s5m8767 +s6e63m0 +s921 +saa7115 +saa7706h +safe_serial +salsa20_generic +samsung-keypad +sata_mv +sata_rcar +sbs-battery +sca3000 +sch5627 +sch5636 +sch56xx-common +sch_atm +sch_cbq +sch_choke +sch_codel +sch_drr +sch_dsmark +sch_fq +sch_fq_codel +sch_gred +sch_hfsc +sch_htb +sch_ingress +sch_mqprio +sch_multiq +sch_netem +sch_plug +sch_prio +sch_qfq +sch_red +sch_sfb +sch_sfq +sch_tbf +sch_teql +scsi_debug +scsi_dh +scsi_dh_alua +scsi_dh_emc +scsi_dh_hp_sw +scsi_dh_rdac +scsi_tgt +scsi_transport_fc +scsi_transport_iscsi +scsi_transport_sas +scsi_transport_spi +scsi_transport_srp +sctp +sctp_probe +sdhci-pxav2 +sdhci-pxav3 +sdio_uart +sdr-msi3101 +seed +seqiv +ser_gigaset +serial2002 +serio_raw +sermouse +serpent_generic +serport +serqt_usb2 +ses +sha1-arm +shark2 +sh_eth +sh_keysc +shmob-drm +sh_mobile_ceu_camera +sh_mobile_csi2 +sh-sci +sht15 +sht21 +sh_veu +si21xx +si4713-i2c +si476x-core +sidewinder +sierra +sierra_net +sil164 +sir-dev +sisusbvga +sit +sja1000 +sja1000_isa +sja1000_of_platform +sja1000_platform +skel +sl811-hcd +slcan +slip +slram +sm501 +sm501fb +smb347-charger +smc911x +smc91x +sm_ftl +smm665 +smsc47b397 +smsc47m1 +smsc47m192 +smsc75xx +smsc911x +smsc95xx +smscufx +smsdvb +smsmdtv +smssdio +smsusb +snd-aaci +snd-ac97-codec +snd-aloop +snd-at73c213 +snd-dummy +snd-hrtimer +snd-hwdep +snd-mpu401 +snd-mpu401-uart +snd-mtpav +snd-mts64 +snd-portman2x4 +snd-rawmidi +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-soc-atmel-pcm +snd-soc-si476x +snd-soc-simple-card +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usbmidi-lib +snd-virmidi +soc_camera +soc_camera_platform +soc_mediabus +soc_scale_crop +softdog +softing +sony-btf-mpx +sp805_wdt +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +speedtch +spi-altera +spi-bitbang +spi-butterfly +spidev +spi-dw +spi-dw-mmio +spi-gpio +spi_ks8995 +spi-lm70llp +spi-oc-tiny +spi-pl022 +spi-sc18is602 +spi-tle62x0 +spi-xcomm +squashfs +sr9700 +ssb +ssd1307fb +ssfdc +sst25l +ssu100 +st +st1232 +st_accel +st_accel_i2c +st_accel_spi +st-asc +stb0899 +stb6000 +stb6100 +st_drv +ste_modem_rproc +st_gyro +st_gyro_i2c +st_gyro_spi +stinger +stir4200 +stk1160 +stkwebcam +st_magn +st_magn_i2c +st_magn_spi +stmmac +stmpe-keypad +stmpe-ts +stowaway +stp +st_pressure +st_pressure_i2c +st_pressure_spi +streamzap +st_sensors +st_sensors_i2c +st_sensors_spi +stv0288 +stv0297 +stv0299 +stv0900 +stv090x +stv6110 +stv6110x +sunkbd +sunrpc +sur40 +symbolserial +synaptics_i2c +synaptics_i2c_rmi4 +synaptics_usb +sysv +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +tc3589x-keypad +tca6416-keypad +tca8418_keypad +tcm_fc +tcm_loop +tcm_usb_gadget +tcp_bic +tcp_diag +tcp_highspeed +tcp_htcp +tcp_hybla +tcp_illinois +tcp_lp +tcp_probe +tcp_scalable +tcp_vegas +tcp_veno +tcp_westwood +tcp_yeah +tcrypt +tcs3472 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18271 +tda18271c2dd +tda826x +tda827x +tda8290 +tda9887 +tda998x +tdo24m +tea +tea575x +tea5761 +tea5767 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tef6862 +tekram-sir +test-kprobes +test-kstrtox +test_power +test-string_helpers +tgr192 +thmc50 +ti-adc081c +ti_dac7512 +timb_dma +timblogiw +timbuart +timeriomem-rng +tipc +ti_usb_3410_5052 +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmiofb +tmio_mmc +tmio_mmc_core +tmio_nand +tmp006 +tmp102 +tmp401 +tmp421 +toim3232-sir +touchit213 +touchright +touchwin +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_i2c_stm_st33 +tpm-rng +tps51632-regulator +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65090-charger +tps65090-regulator +tps65217 +tps65217_bl +tps65217-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps80031-regulator +trancevibrator +tranzport +ts2020 +ts_bm +tsc2005 +tsc2007 +tsc40 +ts_fsm +ts_kmp +tsl2550 +tsl2563 +tsl2583 +tsl2x7x_core +tsl4531 +ttpci-eeprom +ttusbir +tua9001 +tuner +tuner_it913x +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +tveeprom +tvp5150 +tw2804 +tw9903 +tw9906 +tw9910 +twidjoy +twl4030_charger +twl4030_keypad +twl4030-madc +twl4030_madc_battery +twl4030-madc-hwmon +twl4030-pwrbutton +twl4030-vibra +twl4030_wdt +twl6030-gpadc +twl6040-vibra +twofish_common +twofish_generic +u132-hcd +ubi +ubifs +ucb1400_core +ucb1400_ts +ucd9000 +ucd9200 +uda1342 +udf +udl +udlfb +udp_diag +ueagle-atm +u_ether +ufs +ufshcd +ufshcd-pltfrm +uhid +uio +uio_dmem_genirq +uio_pdrv_genirq +ums-alauda +ums-cypress +ums-datafab +ums-eneub6250 +ums-freecom +ums-isd200 +ums-jumpshot +ums-karma +ums-onetouch +ums-realtek +ums-sddr09 +ums-sddr55 +ums-usbat +unioxx5 +unix_diag +u_rndis +usb3503 +usb_8dev +usb8xxx +usbatm +usb_debug +usbdux +usbduxfast +usbduxsigma +usb_f_acm +usb_f_ecm +usb_f_ecm_subset +usb_f_eem +usb_f_mass_storage +usb_f_ncm +usb_f_obex +usb_f_phonet +usb_f_rndis +usb_f_serial +usb_f_ss_lb +usb_gigaset +usbhid +usbip-core +usbip-host +usbkbd +usblcd +usbled +usblp +usbmon +usbmouse +usbnet +usbserial +usb-serial-simple +usbsevseg +usbtest +usbtmc +usbtouchscreen +usbtv +usbvision +usb_wwan +u_serial +userspace-consumer +ushc +uss720 +uvcvideo +uvesafb +ux500 +v4l2-common +v4l2-dv-timings +v4l2-int-device +v4l2-mem2mem +vcan +vcnl4000 +veth +vexpress +vexpress-spc-cpufreq +vfio +vgg2432a4 +vhci-hcd +vhost +vhost_net +vhost_scsi +via-velocity +videobuf2-core +videobuf2-dma-contig +videobuf2-memops +videobuf2-vmalloc +videobuf-core +videobuf-dma-contig +videobuf-dvb +videobuf-vmalloc +videodev +viperboard +viperboard_adc +virtio-rng +virtio_scsi +virtual +visor +vivi +vmac +vmk80xx +vringh +vsock +vsxxxaa +vt1211 +vt6656_stage +vub300 +vxlan +w1_bq27000 +w1_ds2408 +w1_ds2413 +w1_ds2423 +w1_ds2431 +w1_ds2433 +w1_ds2760 +w1_ds2780 +w1_ds2781 +w1_ds28e04 +w1-gpio +w1_smem +w1_therm +w35und +w5100 +w5300 +w83627ehf +w83627hf +w83781d +w83791d +w83792d +w83793 +w83795 +w83l785ts +w83l786ng +w90p910_ts +w9966 +wacom +wacom_i2c +wacom_w8001 +walkera0701 +warrior +wcn36xx +whiteheat +wimax +wire +wishbone-serial +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wlcore +wlcore_sdio +wlcore_spi +wm831x_backup +wm831x_bl +wm831x-dcdc +wm831x-hwmon +wm831x-isink +wm831x-ldo +wm831x-on +wm831x_power +wm831x-ts +wm831x_wdt +wm8350-hwmon +wm8350_power +wm8350-regulator +wm8350_wdt +wm8400-regulator +wm8775 +wm8994-regulator +wm97xx-ts +wp512 +x25 +x25_asy +xc4000 +xc5000 +xcbc +xfrm4_mode_beet +xfrm4_mode_transport +xfrm4_mode_tunnel +xfrm4_tunnel +xfrm6_mode_beet +xfrm6_mode_ro +xfrm6_mode_transport +xfrm6_mode_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_ipcomp +xfrm_user +xfs +xgmac +xilinx_uartps +xillybus_core +xillybus_of +xor +xor-neon +xpad +xsens_mt +x_tables +xt_addrtype +xt_AUDIT +xt_bpf +xt_CHECKSUM +xt_CLASSIFY +xt_cluster +xt_comment +xt_connbytes +xt_connlabel +xt_connlimit +xt_connmark +xt_CONNSECMARK +xt_conntrack +xt_cpu +xt_CT +xt_dccp +xt_devgroup +xt_dscp +xt_DSCP +xt_ecn +xt_esp +xt_hashlimit +xt_helper +xt_hl +xt_HL +xt_HMARK +xt_IDLETIMER +xt_iprange +xt_ipvs +xtkbd +xt_LED +xt_length +xt_limit +xt_LOG +xt_mac +xt_mark +xt_multiport +xt_nat +xt_NETMAP +xt_nfacct +xt_NFLOG +xt_NFQUEUE +xt_osf +xt_owner +xt_physdev +xt_pkttype +xt_policy +xt_quota +xt_rateest +xt_RATEEST +xt_realm +xt_recent +xt_REDIRECT +xts +xt_sctp +xt_SECMARK +xt_set +xt_socket +xt_state +xt_statistic +xt_string +xt_tcpmss +xt_TCPMSS +xt_TCPOPTSTRIP +xt_tcpudp +xt_TEE +xt_time +xt_TPROXY +xt_TRACE +xt_u32 +xusbatm +xz_dec_test +yam +yealink +yurex +zaurus +zd1201 +zd1211rw +zforce_ts +zhenhua +zl10039 +zl10353 +zl6100 +zlib +zr364xx +zram +zte_ev --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/armhf/generic.compiler +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/armhf/generic.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu/Linaro 4.8.2-19ubuntu1) 4.8.2 --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/armhf/generic.modules +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/armhf/generic.modules @@ -0,0 +1,3669 @@ +3w-9xxx +3w-sas +3w-xxxx +6lowpan +6pack +8021q +8139cp +8139too +8250_dw +8255 +8255_pci +8390 +88pm800 +88pm805 +88pm80x +88pm80x_onkey +88pm860x_battery +88pm860x_bl +88pm860x_charger +88pm860x_onkey +88pm860x-ts +9p +9pnet +9pnet_rdma +9pnet_virtio +a100u2w +a3d +a8293 +aacraid +aat2870_bl +aat2870-regulator +ab3100 +ab3100-otp +ablk_helper +acard-ahci +acecad +acenic +act200l-sir +act_csum +act_gact +act_ipt +actisys-sir +act_mirred +act_nat +act_pedit +act_police +act_simple +act_skbedit +ad2s1200 +ad2s1210 +ad2s90 +ad5064 +ad525x_dpot +ad525x_dpot-i2c +ad525x_dpot-spi +ad5360 +ad5380 +ad5398 +ad5421 +ad5446 +ad5449 +ad5504 +ad5624r_spi +ad5686 +ad5755 +ad5764 +ad5791 +ad5930 +ad5933 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7152 +ad7192 +ad7266 +ad7280a +ad7291 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +ad7476 +ad7606 +ad7746 +ad7780 +ad7791 +ad7793 +ad7816 +ad7877 +ad7879 +ad7879-i2c +ad7879-spi +ad7887 +ad7923 +ad799x +ad8366 +ad9523 +ad9832 +ad9834 +ad9850 +ad9852 +ad9910 +ad9951 +adcxx +addi_apci_035 +addi_apci_1032 +addi_apci_1500 +addi_apci_1516 +addi_apci_1564 +addi_apci_16xx +addi_apci_2032 +addi_apci_2200 +addi_apci_3501 +addi_apci_3xxx +addi_watchdog +ade7753 +ade7754 +ade7758 +ade7759 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adfs +adi +adis16060 +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16204 +adis16209 +adis16220 +adis16240 +adis16260 +adis16400 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1275 +adm8211 +adm9240 +adp5520_bl +adp5520-keys +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +adq12b +ads1015 +ads7828 +ads7846 +ads7871 +ad_sigma_delta +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adv7180 +adv_pci1710 +adv_pci1723 +adv_pci1724 +adv_pci_dio +adxl34x +adxl34x-i2c +adxl34x-spi +adxrs450 +aes-arm +aes-arm-bs +af_802154 +af9013 +af9033 +af_alg +affs +af_key +af_packet_diag +af-rxrpc +afs +ah4 +ah6 +ahci +aic79xx +aic7xxx +aic94xx +aio_aio12_8 +aio_iiro_16 +aiptek +aircable +ak8975 +algif_hash +algif_skcipher +alim7101_wdt +alphatrack +altera-ci +altera_jtaguart +altera_ps2 +altera-stapl +altera_uart +alx +ambakmi +amba-pl010 +amc6821 +amd5536udc +amd8111e +amplc_dio200 +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pc263 +amplc_pci224 +amplc_pci230 +amplc_pci263 +ams369fg06 +analog +anatop-regulator +ansi_cprng +anubis +aoe +apbps2 +apds9300 +apds9802als +apds990x +appledisplay +appletalk +appletouch +applicom +ar5523 +ar7part +arc4 +arc_emac +arcmsr +arcnet +arc_ps2 +arc-rawmode +arc-rimi +arc_uart +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +armada +arm_big_little +arm_big_little_dt +arptable_filter +arp_tables +arpt_mangle +as3711_bl +as3711-regulator +as3722-regulator +as5011 +asc7621 +asix +ast +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at86rf230 +at91_can +at91_ether +atbm8830 +aten +ath +ath10k_core +ath10k_pci +ath3k +ath5k +ath6kl_core +ath6kl_sdio +ath6kl_usb +ath9k +ath9k_common +ath9k_htc +ath9k_hw +ati_remote +ati_remote2 +atl1 +atl1c +atl1e +atl2 +atm +atmel +atmel_mxt_ts +atmel_pci +atmel_pwm +atmel-pwm-bl +atmel-ssc +atmtcp +atp870u +atxp1 +aty128fb +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo_k1900fb +auo_k1901fb +auo_k190x +auo-pixcir-ts +authenc +authencesn +auth_rpcgss +autofs4 +avmfritz +ax25 +ax88179_178a +ax88796 +b1 +b1dma +b1pci +b2c2-flexcop +b2c2-flexcop-pci +b2c2-flexcop-usb +b43 +b43legacy +b44 +bas_gigaset +batman-adv +baycom_epp +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bcm203x +bcm3510 +bcm5974 +bcma +bcm_wimax +bd6107 +be2iscsi +be2net +befs +belkin_sa +bfa +bfs +bfusb +bh1770glc +bh1780gli +binfmt_misc +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +bL_switcher_dummy_if +bluetooth +bma150 +bma180 +bmp085-i2c +bmp085-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bonding +bpa10x +bpck +bpck6 +bpctl_mod +bpqether +bq2415x_charger +bq24190_charger +bq24735-charger +bq27x00_battery +br2684 +brcmfmac +brcmsmac +brcmutil +bridge +broadsheetfb +bsd_comp +bt878 +btcoexist +btcx-risc +btmrvl +btmrvl_sdio +btmtk_usb +btrfs +btsdio +bttv +btusb +btwilink +bu21013_ts +budget +budget-av +budget-ci +budget-core +budget-patch +bw-qcam +bypass +c4 +c67x00 +c6xdigio +cachefiles +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camellia_generic +can +can-bcm +can-dev +can-gw +can-raw +capi +capidrv +capmode +carl9170 +carminefb +cassini +cast5_generic +cast6_generic +cast_common +catc +cb710 +cb710-mmc +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +cb_pcimdda +cc770 +cc770_isa +cc770_platform +c_can +c_can_pci +c_can_platform +cciss +ccm +cdc-acm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc-phonet +cdc_subset +cdc-wdm +cedusb +ceph +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +chnl_net +cifs +cirrus +cirrusfb +clearpad_tm1217 +clip +clk-max77686 +clk-s2mps11 +clk-si5351 +clk-twl6040 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_fw +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm36651 +cma3000_d0x +cma3000_d0x_i2c +cmac +cmtp +cnic +cobra +coda +com20020 +com20020-pci +com90io +com90xx +comedi +comedi_bond +comedi_fc +comedi_parport +comedi_test +comm +configfs +connector-analog-tv +connector-dvi +contec_pci_dio +cordic +core +cp210x +cpia2 +cppi41 +cpu-notifier-error-inject +c-qcam +cramfs +crc32 +crc7 +crc8 +crc-ccitt +crc-itu-t +cros_ec +cros_ec_i2c +cros_ec_keyb +cros_ec_spi +cryptd +cryptoloop +crypto_null +crypto_user +crystalhd +cs5345 +cs53l32a +cs89x0 +csiostor +ctr +cts +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx8800 +cx8802 +cx88-alsa +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx88xx +cxacru +cxd2099 +cxd2820r +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxt1e1 +cy8ctmg110_ts +cyapa +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +cyttsp_core +cyttsp_i2c +cyttsp_i2c_common +cyttsp_spi +da9030_battery +da9034-ts +da903x +da903x_bl +da9052-battery +da9052_bl +da9052-hwmon +da9052_onkey +da9052-regulator +da9052_tsi +da9052_wdt +da9055-hwmon +da9055_onkey +da9055-regulator +da9055_wdt +da9063-regulator +da9210-regulator +DAC960 +daqboard2000 +das08 +das08_isa +das08_pci +das16m1 +das6402 +das800 +davinci_emac +db9 +dc395x +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +dccp_probe +ddbridge +de2104x +decnet +deflate +defxx +denali +denali_dt +denali_pci +des_generic +designware_i2s +dgap +dgnc +dgrp +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dibx000_common +digi_acceleport +diskonchip +divacapi +divadidd +diva_idi +diva_mnt +divas +dl2k +dlci +dlm +dm1105 +dm644x_ccdc +dm9000 +dm9601 +dm-bio-prison +dm-bufio +dm-cache +dm-cache-cleaner +dm-cache-mq +dm-crypt +dm-delay +dme1737 +dmfe +dm-flakey +dm-log +dm-log-userspace +dmm32at +dm-mirror +dm-multipath +dm-persistent-data +dm-queue-length +dm-raid +dm-region-hash +dm-round-robin +dm-service-time +dm-snapshot +dm-switch +dm-thin-pool +dm-verity +dmx3191d +dm-zero +dnet +dn_rtmsg +docg3 +docg4 +drbd +drm +drm_kms_helper +drm_usb +drxd +drxk +ds1621 +ds1682 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds620 +dsa_core +dsbr100 +dscc4 +dss1_divert +dst +dst_ca +dstr +dt2801 +dt2811 +dt2814 +dt2815 +dt2817 +dt3000 +dt3155v4l +dt9812 +dummy +dummy-irq +dvb-as102 +dvb-bt8xx +dvb-core +dvb-pll +dvb-ttpci +dvb-ttusb-budget +dvb-usb +dvb-usb-a800 +dvb-usb-af9005 +dvb-usb-af9005-remote +dvb-usb-af9015 +dvb-usb-af9035 +dvb-usb-anysee +dvb-usb-au6610 +dvb-usb-az6007 +dvb-usb-az6027 +dvb-usb-ce6230 +dvb-usb-cinergyT2 +dvb-usb-cxusb +dvb-usb-dib0700 +dvb-usb-dibusb-common +dvb-usb-dibusb-mb +dvb-usb-dibusb-mc +dvb-usb-digitv +dvb-usb-dtt200u +dvb-usb-dtv5100 +dvb-usb-dw2102 +dvb-usb-ec168 +dvb-usb-friio +dvb-usb-gl861 +dvb-usb-gp8psk +dvb-usb-it913x +dvb-usb-lmedm04 +dvb-usb-m920x +dvb-usb-mxl111sf +dvb-usb-nova-t-usb2 +dvb-usb-opera +dvb-usb-pctv452e +dvb-usb-rtl28xxu +dvb-usb-technisat-usb2 +dvb-usb-ttusb2 +dvb-usb-umt-010 +dvb_usb_v2 +dvb-usb-vp702x +dvb-usb-vp7045 +dwc2 +dwc2_pci +dwc2_platform +dwc3 +dwc3-omap +dwc3-pci +dw_dmac +dw_dmac_core +dw_dmac_pci +dw_mmc +dw_mmc-exynos +dw_mmc-pci +dw_mmc-pltfm +dw_mmc-socfpga +dw_wdt +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +e4000 +earth-pt1 +ebt_802_3 +ebtable_broute +ebtable_filter +ebtable_nat +ebtables +ebt_among +ebt_arp +ebt_arpreply +ebt_dnat +ebt_ip +ebt_ip6 +ebt_limit +ebt_log +ebt_mark +ebt_mark_m +ebt_nflog +ebt_pkttype +ebt_redirect +ebt_snat +ebt_stp +ebt_vlan +ec100 +echo +edac_core +edt-ft5x06 +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efs +egalax_ts +ehset +elo +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +emc1403 +emc2103 +emc6w201 +em_canid +em_cmp +emi26 +emi62 +emif +em_ipset +em_meta +em_nbyte +empeg +ems_pci +ems_usb +em_text +emu10k1-gp +em_u32 +enc28j60 +enclosure +encoder-tfp410 +eni +enic +epat +epia +epic100 +eql +esas2r +esd_usb2 +esi-sir +esp4 +esp6 +et131x +ethoc +evbug +exofs +extcon-adc-jack +extcon-arizona +extcon-gpio +extcon-max77693 +extcon-max8997 +extcon-palmas +ezusb +f2fs +f71805f +f71882fg +f75375s +f81232 +fakelb +fan53555 +farsync +faulty +fb_ddc +fb_sys_fops +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fealnx +ff-memless +fid +firedtv +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fit2 +fit3 +fl512 +fld +flexcan +fm801-gp +fmc +fmc-chardev +fmc-fakedev +fmc-trivial +fmc-write-eeprom +fm_drv +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +freevxfs +friq +frpw +fsa9480 +fscache +fsl_lpuart +ft1000 +ftdi-elan +ftdi_sio +ftgmac100 +ftl +ftmac100 +fujitsu_ts +fusb300_udc +fusbh200-hcd +g450_pll +g760a +g762 +g_acm_ms +gadgetfs +gamecon +gameport +garmin_gps +garp +g_audio +g_cdc +gcm +g_dbgp +gdmtty +gdmulte +gdmwm +generic +generic-adc-battery +generic_bl +gen_probe +g_ether +gf128mul +gf2k +g_ffs +gfs2 +ghash-generic +g_hid +gigaset +girbil-sir +gl518sm +gl520sm +gl620a +gluebi +g_mass_storage +g_midi +g_multi +g_ncm +g_nokia +go7007 +go7007-loader +go7007-usb +goku_udc +goldfishfb +gp2ap002a00f +gp2ap020a00f +gpio +gpio-74x164 +gpio-addr-flash +gpio-adnp +gpio-adp5520 +gpio-adp5588 +gpio-amd8111 +gpio-arizona +gpio_backlight +gpio-charger +gpio-da9052 +gpio-da9055 +gpio-fan +gpio-grgpio +gpio-ir-recv +gpio-janz-ttl +gpio-kempld +gpio_keys +gpio_keys_polled +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-mc33880 +gpio-mcp23s08 +gpio-ml-ioh +gpio_mouse +gpio-pca953x +gpio-pcf857x +gpio-rcar +gpio-rdc321x +gpio-regulator +gpio_tilt_polled +gpio-tps65912 +gpio-ts5500 +gpio-ucb1400 +gpio-viperboard +gpio-vx855 +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +g_printer +grcan +gre +grip +grip_mp +gsc_hpdi +g_serial +gspca_benq +gspca_conex +gspca_cpia1 +gspca_etoms +gspca_finepix +gspca_gl860 +gspca_jeilinj +gspca_jl2005bcd +gspca_kinect +gspca_konica +gspca_m5602 +gspca_main +gspca_mars +gspca_mr97310a +gspca_nw80x +gspca_ov519 +gspca_ov534 +gspca_ov534_9 +gspca_pac207 +gspca_pac7302 +gspca_pac7311 +gspca_se401 +gspca_sn9c2028 +gspca_sn9c20x +gspca_sonixb +gspca_sonixj +gspca_spca1528 +gspca_spca500 +gspca_spca501 +gspca_spca505 +gspca_spca506 +gspca_spca508 +gspca_spca561 +gspca_sq905 +gspca_sq905c +gspca_sq930x +gspca_stk014 +gspca_stk1135 +gspca_stv0680 +gspca_stv06xx +gspca_sunplus +gspca_t613 +gspca_topro +gspca_tv8532 +gspca_vc032x +gspca_vicam +gspca_xirlink_cit +gspca_zc3xx +gtco +guillemot +gunze +g_webcam +g_zero +hamachi +hampshire +hanwang +hci +hci_uart +hci_vhci +hdlc +hdlc_cisco +hdlcdrv +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdpvr +he +hexium_gemini +hexium_orion +hfc4s8s_l1 +hfcmulti +hfcpci +hfcsusb +hfc_usb +hfs +hfsplus +hid +hid-a4tech +hid-apple +hid-appleir +hid-aureal +hid-axff +hid-belkin +hid-cherry +hid-chicony +hid-cypress +hid-dr +hid-elecom +hid-elo +hid-emsff +hid-ezkey +hid-gaff +hid-generic +hid-gyration +hid-holtekff +hid-holtek-kbd +hid-holtek-mouse +hid-huion +hid-icade +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-lenovo-tpkbd +hid-logitech +hid-logitech-dj +hid-magicmouse +hid-microsoft +hid-monterey +hid-multitouch +hid-ntrig +hid-ortek +hidp +hid-petalynx +hid-picolcd +hid-pl +hid-primax +hid-prodikeys +hid-roccat +hid-roccat-arvo +hid-roccat-common +hid-roccat-isku +hid-roccat-kone +hid-roccat-koneplus +hid-roccat-konepure +hid-roccat-kovaplus +hid-roccat-lua +hid-roccat-pyra +hid-roccat-ryos +hid-roccat-savu +hid-saitek +hid-samsung +hid-sensor-accel-3d +hid-sensor-als +hid-sensor-gyro-3d +hid-sensor-hub +hid-sensor-iio-common +hid-sensor-magn-3d +hid-sensor-trigger +hid-sjoy +hid-sony +hid-speedlink +hid-steelseries +hid-sunplus +hid-thingm +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-uclogic +hid-wacom +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hifn_795x +highbank_l2_edac +highbank_mc_edac +hih6130 +hisax +hisax_fcpcipnp +hisax_isac +hisax_st5481 +hmc5843 +hmc6352 +hopper +host1x +hostap +hostap_pci +hostap_plx +hp100 +hpfs +hpilo +hpsa +hptiop +hsi +hsi_char +hso +hsr +htc-pasic3 +htu21 +huawei_cdc_ncm +hwa-hc +hwa-rc +hwmon-vid +hx8357 +hysdn +i1480-dfu-usb +i1480-est +i2400m +i2400m-usb +i2c-algo-bit +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd8111 +i2c-arb-gpio-challenge +i2c-cbus-gpio +i2c-designware-core +i2c-designware-pci +i2c-designware-platform +i2c-dev +i2c-diolan-u2c +i2c-eg20t +i2c-gpio +i2c-hid +i2c-i801 +i2c-isch +i2c-kempld +i2c-matroxfb +i2c-mux +i2c-mux-gpio +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-mux-pinctrl +i2c-nforce2 +i2c-nomadik +i2c-ocores +i2c-parport +i2c-parport-light +i2c-pca-platform +i2c-piix4 +i2c-rcar +i2c-sh_mobile +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-tegra +i2c-tiny-usb +i2c-versatile +i2c-via +i2c-viapro +i2c-viperboard +i2c-xiic +i2o_block +i2o_bus +i2o_core +i2o_proc +i2o_scsi +i40e +i5k_amb +i6300esb +i740fb +ib_addr +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mad +ibmaem +ibmpex +ib_mthca +ib_sa +ib_srp +ib_srpt +ib_ucm +ib_umad +ib_uverbs +icp_multi +ics932s401 +idmouse +idt77252 +ieee802154 +ifb +iforce +igb +igbvf +iguanair +iio_dummy +iio_hwmon +iio-trig-interrupt +iio-trig-periodic-rtc +iio-trig-sysfs +ii_pci20kc +ili210x +ili922x +ili9320 +imm +imon +impa7 +ims-pcu +imx074 +imx6q-cpufreq +imx_thermal +ina209 +ina2xx +industrialio +industrialio-triggered-buffer +inet_diag +inexio +inftl +initio +input-polldev +int51x1 +intel_vr_nor +interact +interval_tree_test +inv-mpu6050 +ioc4 +io_edgeport +io_ti +iowarrior +ip6_gre +ip6table_filter +ip6table_mangle +ip6table_nat +ip6table_raw +ip6_tables +ip6table_security +ip6t_ah +ip6t_eui64 +ip6t_frag +ip6t_hbh +ip6t_ipv6header +ip6t_MASQUERADE +ip6t_mh +ip6t_NPT +ip6t_REJECT +ip6t_rpfilter +ip6t_rt +ip6t_SYNPROXY +ip6_tunnel +ip6_vti +ipack +ipaq +ipcomp +ipcomp6 +ipddp +ipg +ip_gre +iphase +ipheth +ipip +ipmi_devintf +ipmi_poweroff +ipmi_si +ipmi_watchdog +ipoctal +ipr +ips +ip_set +ip_set_bitmap_ip +ip_set_bitmap_ipmac +ip_set_bitmap_port +ip_set_hash_ip +ip_set_hash_ipport +ip_set_hash_ipportip +ip_set_hash_ipportnet +ip_set_hash_net +ip_set_hash_netiface +ip_set_hash_netnet +ip_set_hash_netport +ip_set_hash_netportnet +ip_set_list_set +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +ip_tables +iptable_security +ipt_ah +ipt_CLUSTERIP +ipt_ECN +ipt_MASQUERADE +ipt_REJECT +ipt_rpfilter +ipt_SYNPROXY +ipt_ULOG +ip_tunnel +ip_vs +ip_vs_dh +ip_vs_ftp +ip_vs_lblc +ip_vs_lblcr +ip_vs_lc +ip_vs_nq +ip_vs_pe_sip +ip_vs_rr +ip_vs_sed +ip_vs_sh +ip_vs_wlc +ip_vs_wrr +ip_vti +ipw +ipw2100 +ipw2200 +ipx +ircomm +ircomm-tty +irda +irda-usb +ir-jvc-decoder +ir-kbd-i2c +irlan +ir-lirc-codec +ir-mce_kbd-decoder +ir-nec-decoder +irnet +ir-rc5-decoder +ir-rc5-sz-decoder +ir-rc6-decoder +ir-sanyo-decoder +ir-sony-decoder +irtty-sir +ir-usb +iscsi_boot_sysfs +iscsi_target_mod +iscsi_tcp +isdn +isdn_bsdcomp +isdnhdlc +isicom +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isofs +isp116x-hcd +isp1362-hcd +isp1704_charger +isp1760 +it87 +it913x-fe +itd1000 +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_c2 +iw_cm +iw_cxgb3 +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +iw_nes +ix2505v +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsm +kafs +kalmia +kaweth +kbic +kbtab +kcomedilib +ke_counter +kempld-core +kempld_wdt +kernelcapi +keucr +keyspan +keyspan_pda +keyspan_remote +kfifo_buf +khazad +kingsun-sir +kl5kusb105 +ko2iblnd +kobil_sct +ks0108 +ks8842 +ks8851 +ks8851_mll +ks959-sir +ksdazzle-sir +ksocklnd +ksz884x +ktti +kvaser_pci +kvaser_usb +kxsd9 +kxtj9 +kyrofb +l1oip +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +l2tp_ppp +l4f00242t03 +l64781 +lanai +lapb +lapbether +latch-addr-flash +lattice-ecp3-config +lcd +ld9040 +ldusb +lec +leds-88pm860x +leds-adp5520 +leds-atmel-pwm +leds-bd2802 +leds-blinkm +leds-da903x +leds-da9052 +leds-dac124s085 +leds-gpio +leds-lm3530 +leds-lm3533 +leds-lm355x +leds-lm3642 +leds-lp3944 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lt3593 +leds-max8997 +leds-mc13783 +leds-ot200 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pca9685 +leds-pwm +leds-regulator +leds-tca6507 +leds-wm831x-status +leds-wm8350 +ledtrig-backlight +ledtrig-camera +ledtrig-default-on +ledtrig-gpio +ledtrig-oneshot +ledtrig-timer +ledtrig-transient +legousbtower +lg2160 +lgdt3305 +lgdt330x +lgs8gxx +lg-vl600 +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libceph +libcfs +libcomposite +libcrc32c +libcxgbi +libertas +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libore +libosd +libsas +libsrp +lightning +line6usb +lineage-pem +linear +lirc_bt829 +lirc_dev +lirc_igorplugusb +lirc_imon +lirc_parallel +lirc_sasem +lirc_serial +lirc_sir +lirc_zilog +lis3lv02d +lis3lv02d_i2c +lis3lv02d_spi +litelink-sir +lkkbd +llc +llc2 +llog_test +lm25066 +lm3533-als +lm3533_bl +lm3533-core +lm3533-ctrlbank +lm3630a_bl +lm3639_bl +lm63 +lm70 +lm73 +lm75 +lm77 +lm78 +lm80 +lm83 +lm8323 +lm8333 +lm85 +lm87 +lm90 +lm92 +lm93 +lm95234 +lm95241 +lm95245 +lms283gf05 +lms501kf03 +lmv +lnbp21 +lnbp22 +lnet +lnet_selftest +lockd +lov +lp +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp8755 +lp8788_bl +lp8788-charger +lpc_ich +lpc_sch +lpddr_cmds +lpfc +lru_cache +lrw +ltc2978 +ltc4151 +ltc4215 +ltc4245 +ltc4261 +ltv350qv +lustre +lv5207lp +lvfs +lz4 +lz4_compress +lz4hc +lz4hc_compress +m25p80 +m2m-deinterlace +m52790 +m88rs2000 +ma600-sir +mac80211 +mac80211_hwsim +mac802154 +macb +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mac-gaelic +mac-greek +mac-iceland +mac-inuit +macmodes +mac-roman +mac-romanian +mac-turkish +macvlan +macvtap +mag3110 +magellan +mailbox_omap2 +mantis +mantis_core +map_absent +map_ram +map_rom +matrix-keymap +matrix_keypad +matroxfb_accel +matroxfb_base +matroxfb_crtc2 +matroxfb_DAC1064 +matroxfb_g450 +matroxfb_maven +matroxfb_misc +matroxfb_Ti3026 +matrox_w1 +max1111 +max11801_ts +max1363 +max1586 +max16064 +max16065 +max1619 +max1668 +max17040_battery +max17042_battery +max197 +max2165 +max3100 +max34440 +max517 +max63xx_wdt +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77686 +max77693 +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925_bl +max8925_onkey +max8925_power +max8925-regulator +max8952 +max8973-regulator +max8997 +max8997_charger +max8998 +max8998_charger +mb862xxfb +mb86a16 +mb86a20s +mc13783-adc +mc13783-pwrbutton +mc13783-regulator +mc13783_ts +mc13892-regulator +mc13xxx-core +mc13xxx-i2c +mc13xxx-regulator-core +mc13xxx-spi +mc44s803 +mceusb +mcp2120-sir +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp4725 +mcs5000_ts +mcs7780 +mcs7830 +mcs_touchkey +mct_u232 +md4 +mdc +mdc800 +mdio +me4000 +me_daq +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mem2mem_testdev +memstick +mena21_wdt +metronomefb +metro-usb +mfd +mga +mgc +mg_disk +michael_mic +microread +microread_i2c +microtek +mii +minix +mip6 +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +mite +mk712 +mkiss +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mma8450 +mms114 +mos7720 +mos7840 +moxa +mpc624 +mpoa +mpr121_touchkey +mpt2sas +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +mrst_max3110 +ms_block +msdos +msp3400 +mspro_block +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt29f_spinand +mt312 +mt352 +mt9m001 +mt9m111 +mt9t031 +mt9t112 +mt9v011 +mt9v022 +mtd_dataflash +mtdoops +mtdram +mtdswap +mtip32xx +mtouch +multipath +multiq3 +mv88e6060 +mv88e6xxx_drv +mvmdio +mvsas +mv_u3d_core +mv_udc +mvumi +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxc_w1 +mxl111sf-demod +mxl111sf-tuner +mxl5005s +mxl5007t +mxser +myri10ge +nandsim +natsemi +nau7802 +navman +nbd +nci +ncpfs +nct6775 +ne2k-pci +neofb +net1080 +net2272 +net2280 +netconsole +netjet +netlink_diag +netprio_cgroup +netrom +netxen_nic +newtonkbd +nfc +nfc_digital +nf_conntrack +nf_conntrack_amanda +nf_conntrack_broadcast +nf_conntrack_ftp +nf_conntrack_h323 +nf_conntrack_ipv4 +nf_conntrack_ipv6 +nf_conntrack_irc +nf_conntrack_netbios_ns +nf_conntrack_netlink +nf_conntrack_pptp +nf_conntrack_proto_dccp +nf_conntrack_proto_gre +nf_conntrack_proto_sctp +nf_conntrack_proto_udplite +nf_conntrack_sane +nf_conntrack_sip +nf_conntrack_snmp +nf_conntrack_tftp +nfcsim +nfcwilink +nf_defrag_ipv4 +nf_defrag_ipv6 +nf_nat +nf_nat_amanda +nf_nat_ftp +nf_nat_h323 +nf_nat_ipv4 +nf_nat_ipv6 +nf_nat_irc +nf_nat_pptp +nf_nat_proto_dccp +nf_nat_proto_gre +nf_nat_proto_sctp +nf_nat_proto_udplite +nf_nat_sip +nf_nat_snmp_basic +nf_nat_tftp +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +nfnetlink_log +nfnetlink_queue +nfs +nfs_acl +nfsd +nfs_layout_nfsv41_files +nfsv2 +nfsv3 +nfsv4 +nf_synproxy_core +nf_tables +nf_tables_arp +nf_tables_bridge +nf_tables_ipv4 +nf_tables_ipv6 +nft_chain_nat_ipv4 +nft_chain_nat_ipv6 +nft_chain_route_ipv4 +nft_chain_route_ipv6 +nft_compat +nft_counter +nft_ct +nft_exthdr +nft_hash +nftl +nft_limit +nft_log +nft_meta +nft_nat +nft_rbtree +nft_reject_ipv4 +ngene +n_hdlc +ni_6527 +ni_65xx +ni_660x +ni_670x +ni_at_ao +ni_atmio +ni_atmio16d +nicstar +ni_labpc +ni_labpc_pci +nilfs2 +ni_pcidio +ni_pcimio +ni_tio +ni_tiocmd +niu +nlmon +nls_ascii +nls_cp1250 +nls_cp1251 +nls_cp1255 +nls_cp737 +nls_cp775 +nls_cp850 +nls_cp852 +nls_cp855 +nls_cp857 +nls_cp860 +nls_cp861 +nls_cp862 +nls_cp863 +nls_cp864 +nls_cp865 +nls_cp866 +nls_cp869 +nls_cp874 +nls_cp932 +nls_cp936 +nls_cp949 +nls_cp950 +nls_euc-jp +nls_iso8859-1 +nls_iso8859-13 +nls_iso8859-14 +nls_iso8859-15 +nls_iso8859-2 +nls_iso8859-3 +nls_iso8859-4 +nls_iso8859-5 +nls_iso8859-6 +nls_iso8859-7 +nls_iso8859-9 +nls_koi8-r +nls_koi8-ru +nls_koi8-u +nls_utf8 +nosy +notifier-error-inject +nouveau +nozomi +n_r3964 +ns558 +ns83820 +nsp32 +ntc_thermistor +ntfs +n_tracerouter +n_tracesink +null_blk +nvec +nvec_kbd +nvec_paz00 +nvec_power +nvec_ps2 +nvidiafb +nvme +nvram +nxt200x +nxt6000 +obdclass +obdecho +objlayoutdriver +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stackglue +ocfs2_stack_o2cb +ocfs2_stack_user +ocrdma +old_belkin-sir +olpc_apsp +omap +omap2 +omap2430 +omap3-rom-rng +omap4-keypad +omap-aes +omapdrm +omap_hdq +omap-mailbox +omap-ocp2scp +omap_remoteproc +omap-rng +omap-sham +omap-vout +omap_wdt +omfs +omninet +on20 +on26 +onenand +opencores-kbd +openvswitch +oprofile +opticon +option +or51132 +or51211 +orinoco +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +osc +osd +osdblk +osst +oti6858 +output +ov2640 +ov5642 +ov6650 +ov7640 +ov7670 +ov772x +ov9640 +ov9740 +overlayfs +oxu210hp-hcd +ozwpan +p54common +p54pci +p54spi +p54usb +p8022 +p8023 +palmas-regulator +pandora_bl +panel +panel-dpi +panel-dsi-cm +panel-lgphilips-lb035q02 +panel-nec-nl8048hl11 +panel-sharp-ls037v7dw01 +panel-sony-acx565akm +panel-tpo-td028ttec1 +panel-tpo-td043mtea1 +paride +parkbd +parport +parport_ax88796 +parport_pc +parport_serial +pata_ali +pata_amd +pata_arasan_cf +pata_artop +pata_atiixp +pata_atp867x +pata_cmd640 +pata_cmd64x +pata_cs5520 +pata_cs5530 +pata_cs5536 +pata_cypress +pata_efar +pata_hpt366 +pata_hpt37x +pata_hpt3x2n +pata_hpt3x3 +pata_it8213 +pata_it821x +pata_jmicron +pata_legacy +pata_marvell +pata_mpiix +pata_netcell +pata_ninja32 +pata_ns87410 +pata_ns87415 +pata_of_platform +pata_oldpiix +pata_opti +pata_optidma +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sc1200 +pata_sch +pata_serverworks +pata_sil680 +pata_sl82c105 +pata_triflex +pata_via +pc300too +pc87360 +pc87427 +pcbc +pcd +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_can +pch_phub +pch_uart +pch_udc +pci +pci200syn +pcips2 +pci-stub +pcl711 +pcl724 +pcl726 +pcl730 +pcm3724 +pcmad +pcmda12 +pcmmio +pcmuio +pcnet32 +pcrypt +pcwd_pci +pcwd_usb +pd +pda_power +pdc_adma +peak_pci +peak_usb +pegasus +penmount +percpu_test +pf +pfuze100-regulator +pg +phantom +phison +phonet +phram +phy-am335x +phy-am335x-control +phy-exynos-dp-video +phy-gpio-vbus-usb +phy-isp1301 +phy-omap-usb3 +phy-rcar-usb +phy-samsung-usb +phy-samsung-usb2 +phy-samsung-usb3 +physmap +physmap_of +phy-twl4030-usb +phy-twl6030-usb +pixcir_i2c_ts +pktcdvd +pktgen +pl2303 +pl330 +platform_lcd +plat_nand +plat-ram +plip +plusb +pluto2 +plx_pci +pm2fb +pm3fb +pm80xx +pmbus +pmbus_core +pmc551 +pmcraid +pm-notifier-error-inject +pn533 +pn544 +pn544_i2c +pn_pep +poc +port100 +poseidon +powermate +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +pppoatm +pppoe +pppox +ppp_synctty +pps-gpio +pps-ldisc +pps_parport +pptp +prism2_usb +ps2mult +psmouse +psnap +pt +ptlrpc +pvrusb2 +pwc +pwm_bl +pwm-pca9685 +pwm-tegra +pwm-twl +pwm-twl-led +pxa27x_udc +qcaux +qcserial +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qmi_wwan +qnx4 +qnx6 +qt1010 +qt1070 +qt2160 +quatech2 +quota_tree +quota_v1 +quota_v2 +qxl +r128 +r592 +r6040 +r8152 +r815x +r8169 +r8187se +r8188eu +r8192e_pci +r8192u_usb +r820t +r852 +r8712u +r8a66597-hcd +r8a66597-udc +radeon +radeonfb +radio-i2c-si470x +radio-keene +radio-ma901 +radio-maxiradio +radio-mr800 +radio-shark +radio-si4713 +radio-si476x +radio-tea5764 +radio-timb +radio-usb-si470x +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid6test +raid_class +raw +rbd +rbtree_test +rc5t583-regulator +rc-adstech-dvb-t-pci +rc-alink-dtu-m +rc-anysee +rc-apac-viewcomp +rcar-du-drm +rcar_vin +rc-asus-pc39 +rc-asus-ps3-100 +rc-ati-tv-wonder-hd-600 +rc-ati-x10 +rc-avermedia +rc-avermedia-a16d +rc-avermedia-cardbus +rc-avermedia-dvbt +rc-avermedia-m135a +rc-avermedia-m733a-rm-k6 +rc-avermedia-rm-ks +rc-avertv-303 +rc-azurewave-ad-tu700 +rc-behold +rc-behold-columbus +rc-budget-ci-old +rc-cinergy +rc-cinergy-1400 +rc-core +rc-delock-61959 +rc-dib0700-nec +rc-dib0700-rc5 +rc-digitalnow-tinytwin +rc-digittrade +rc-dm1105-nec +rc-dntv-live-dvb-t +rc-dntv-live-dvbt-pro +rc-em-terratec +rc-encore-enltv +rc-encore-enltv2 +rc-encore-enltv-fm53 +rc-evga-indtube +rc-eztv +rc-flydvb +rc-flyvideo +rc-fusionhdtv-mce +rc-gadmei-rm008z +rc-genius-tvgo-a11mce +rc-gotview7135 +rc-hauppauge +rc-imon-mce +rc-imon-pad +rc-iodata-bctv7e +rc-it913x-v1 +rc-it913x-v2 +rc-kaiomy +rc-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lirc +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +rc-msi-digivox-ii +rc-msi-digivox-iii +rc-msi-tvanywhere +rc-msi-tvanywhere-plus +rc-nebula +rc-nec-terratec-cinergy-xs +rc-norwood +rc-npgtech +rc-pctv-sedna +rc-pinnacle-color +rc-pinnacle-grey +rc-pinnacle-pctv-hd +rc-pixelview +rc-pixelview-002t +rc-pixelview-mk12 +rc-pixelview-new +rc-powercolor-real-angel +rc-proteus-2309 +rc-purpletv +rc-pv951 +rc-rc6-mce +rc-real-audio-220-32-keys +rc-reddo +rc-snapstream-firefly +rc-streamzap +rc-tbs-nec +rc-technisat-usb2 +rc-terratec-cinergy-xs +rc-terratec-slim +rc-terratec-slim-2 +rc-tevii-nec +rc-tivo +rc-total-media-in-hand +rc-total-media-in-hand-02 +rc-trekstor +rc-tt-1500 +rc-twinhan1027 +rc-videomate-m1f +rc-videomate-s350 +rc-videomate-tv-pvr +rc-winfast +rc-winfast-usbii-deluxe +rdc321x-southbridge +rdma_cm +rdma_ucm +rds +rds_rdma +rds_tcp +redboot +redrat3 +reiserfs +remoteproc +renesas_usbhs +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd_ftl +rfkill-gpio +rfkill-regulator +rio500 +rivafb +rj54n1cb0c +rmd128 +rmd160 +rmd256 +rmd320 +rndis_host +rndis_wlan +rocket +romfs +rose +rotary_encoder +rp2 +rpcsec_gss_krb5 +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt61pci +rt73usb +rtc-88pm80x +rtc-88pm860x +rtc-ab3100 +rtc-as3722 +rtc-bq32k +rtc-bq4802 +rtc-cmos +rtc-da9052 +rtc-da9055 +rtc-ds1286 +rtc-ds1305 +rtc-ds1307 +rtc-ds1374 +rtc-ds1390 +rtc-ds1511 +rtc-ds1553 +rtc-ds1672 +rtc-ds1742 +rtc-ds2404 +rtc-ds3232 +rtc-ds3234 +rtc-em3027 +rtc-fm3130 +rtc-hid-sensor-time +rtc-isl12022 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-moxart +rtc-msm6242 +rtc-palmas +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf8523 +rtc-pcf8563 +rtc-pcf8583 +rtc-pl030 +rtc-r9701 +rtc-rc5t583 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3029c2 +rtc-rx4581 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-snvs +rtc-stk17ta8 +rtc-tegra +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtd520 +rti800 +rti802 +rtl2830 +rtl2832 +rtl8150 +rtl8180 +rtl8187 +rtl8188ee +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192se +rtl8723ae +rtl8723be +rtl8723-common +rtl8821ae +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtl_pci +rtl_usb +rtlwifi +rts5139 +rtsx_pci +rtsx_pci_ms +rtsx_pci_sdmmc +rx51_battery +rxkad +s1d13xxxfb +s2250 +s2255drv +s2io +s3fb +s526 +s5h1409 +s5h1411 +s5h1420 +s5m8767 +s626 +s6e63m0 +s921 +saa6588 +saa6752hs +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7146 +saa7146_vv +saa7164 +saa717x +saa7706h +safe_serial +sahara +salsa20_generic +samsung-keypad +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_rcar +sata_sil +sata_sil24 +sata_sis +sata_svw +sata_sx4 +sata_uli +sata_via +sata_vsc +savage +savagefb +sbe-2t3e3 +sbp_target +sbs-battery +sc92031 +sca3000 +sch5627 +sch5636 +sch56xx-common +sch_atm +sch_cbq +sch_choke +sch_codel +sch_drr +sch_dsmark +sch_fq +sch_fq_codel +sch_gred +sch_hfsc +sch_htb +sch_ingress +sch_mqprio +sch_multiq +sch_netem +sch_plug +sch_prio +sch_qfq +sch_red +sch_sfb +sch_sfq +sch_tbf +sch_teql +scsi_debug +scsi_dh +scsi_dh_alua +scsi_dh_emc +scsi_dh_hp_sw +scsi_dh_rdac +scsi_tgt +scsi_transport_fc +scsi_transport_iscsi +scsi_transport_sas +scsi_transport_spi +scsi_transport_srp +sctp +sctp_probe +sdhci-pci +sdhci-pxav2 +sdhci-pxav3 +sdhci-tegra +sdio_uart +sdr-msi3101 +seed +sep_driver +seqiv +ser_gigaset +serial2002 +serial-tegra +serio_raw +sermouse +serpent_generic +serport +serqt_usb2 +ses +sfc +sha1-arm +shark2 +sh_eth +sh_keysc +shmob-drm +sh_mobile_ceu_camera +sh_mobile_csi2 +sh-sci +sht15 +sht21 +sh_veu +si21xx +si4713-i2c +si476x-core +sidewinder +sierra +sierra_net +sil164 +sir-dev +sis190 +sis5595 +sis900 +sisfb +sisusbvga +sit +sja1000 +sja1000_isa +sja1000_of_platform +sja1000_platform +skel +skfp +skge +sky2 +sl811-hcd +slcan +slip +slram +sm501 +sm501fb +sm7xxfb +smb347-charger +smc911x +smc91x +sm_common +sm_ftl +smm665 +smsc47b397 +smsc47m1 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smscufx +smsdvb +smsmdtv +smssdio +smsusb +snd-aaci +snd-ac97-codec +snd-ad1889 +snd-ak4113 +snd-ak4114 +snd-ak4xxx-adda +snd-ali5451 +snd-aloop +snd-als300 +snd-at73c213 +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-azt3328 +snd-bt87x +snd-ca0106 +snd-cmipci +snd-cs4281 +snd-cs46xx +snd-cs5535audio +snd-cs8427 +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-emu10k1 +snd-emu10k1-synth +snd-emu10k1x +snd-emux-synth +snd-ens1370 +snd-ens1371 +snd-es1938 +snd-es1968 +snd-firewire-lib +snd-firewire-speakers +snd-fm801 +snd-gina20 +snd-gina24 +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-intel +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1712 +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel8x0 +snd-intel8x0m +snd-isight +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-maestro3 +snd-mia +snd-mixart +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3-synth +snd-oxygen +snd-oxygen-lib +snd-pcxhr +snd-portman2x4 +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-scs1x +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-soc-alc5632 +snd-soc-atmel-pcm +snd-soc-davinci +snd-soc-davinci-mcasp +snd-soc-evm +snd-soc-fsl-spdif +snd-soc-imx-mc13783 +snd-soc-imx-spdif +snd-soc-imx-ssi +snd-soc-imx-wm8962 +snd-soc-mc13783 +snd-soc-omap3pandora +snd-soc-rt5640 +snd-soc-si476x +snd-soc-simple-card +snd-soc-spdif-rx +snd-soc-spdif-tx +snd-soc-tegra20-ac97 +snd-soc-tegra20-das +snd-soc-tegra20-i2s +snd-soc-tegra20-spdif +snd-soc-tegra30-ahub +snd-soc-tegra30-i2s +snd-soc-tegra-alc5632 +snd-soc-tegra-pcm +snd-soc-tegra-rt5640 +snd-soc-tegra-trimslice +snd-soc-tegra-utils +snd-soc-tegra-wm8753 +snd-soc-tegra-wm8903 +snd-soc-tegra-wm9712 +snd-soc-tlv320aic23 +snd-soc-tlv320aic3x +snd-soc-wm8753 +snd-soc-wm8903 +snd-soc-wm8962 +snd-soc-wm9712 +snd-sonicvibes +snd-trident +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usbmidi-lib +snd-util-mem +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx222 +snd-vx-lib +snd-ymfpci +soc_camera +soc_camera_platform +soc_mediabus +soc_scale_crop +softdog +softing +solo6x10 +solos-pci +sony-btf-mpx +sp805_wdt +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +speedfax +speedtch +spi-altera +spi-bitbang +spi-butterfly +spidev +spi-dw +spi-dw-midpci +spi-dw-mmio +spi-fsl-dspi +spi-gpio +spi-imx +spi_ks8995 +spi-lm70llp +spi-oc-tiny +spi-pl022 +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-sc18is602 +spi-tegra114 +spi-tegra20-sflash +spi-tegra20-slink +spi-ti-qspi +spi-tle62x0 +spi-topcliff-pch +spi-xcomm +squashfs +sr9700 +ssb +ssd1307fb +ssfdc +sst25l +sstfb +ssu100 +st +st1232 +st_accel +st_accel_i2c +st_accel_spi +starfire +st-asc +stb0899 +stb6000 +stb6100 +st_drv +ste_modem_rproc +stex +st_gyro +st_gyro_i2c +st_gyro_spi +stinger +stir4200 +stk1160 +stkwebcam +st_magn +st_magn_i2c +st_magn_spi +stmmac +stmpe-keypad +stmpe-ts +stowaway +stp +st_pressure +st_pressure_i2c +st_pressure_spi +streamzap +st_sensors +st_sensors_i2c +st_sensors_spi +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv6110 +stv6110x +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sur40 +svcrdma +svgalib +sx8 +sym53c8xx +symbolserial +synaptics_i2c +synaptics_i2c_rmi4 +synaptics_usb +synclink_gt +synclinkmp +sysv +t1pci +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +tc3589x-keypad +tca6416-keypad +tca8418_keypad +tcm_fc +tcm_loop +tcm_qla2xxx +tcm_usb_gadget +tcp_bic +tcp_diag +tcp_highspeed +tcp_htcp +tcp_hybla +tcp_illinois +tcp_lp +tcp_probe +tcp_scalable +tcp_vegas +tcp_veno +tcp_westwood +tcp_yeah +tcrypt +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18271 +tda18271c2dd +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda998x +tdfx +tdfxfb +tdo24m +tea +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tef6862 +tegra-aes +tegra-kbc +tehuti +tekram-sir +test-kprobes +test-kstrtox +test_power +test-string_helpers +tg3 +tgr192 +thmc50 +ti-adc081c +ti_am335x_adc +ti_am335x_tsc +ti_am335x_tscadc +ti_dac7512 +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +ti_hecc +tilcdc +timb_dma +timberdale +timblogiw +timbuart +timeriomem-rng +tipc +ti-soc-thermal +ti_usb_3410_5052 +ti-vpe +tlan +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmiofb +tmio_mmc +tmio_mmc_core +tmio_nand +tmp006 +tmp102 +tmp401 +tmp421 +tmscsim +toim3232-sir +touchit213 +touchright +touchwin +tpci200 +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_i2c_stm_st33 +tpm-rng +tps51632-regulator +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65090-charger +tps65090-regulator +tps65217 +tps65217_bl +tps65217-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps80031-regulator +trancevibrator +tranzport +tridentfb +ts2020 +ts_bm +tsc2005 +tsc2007 +tsc40 +ts_fsm +ts_kmp +tsl2550 +tsl2563 +tsl2583 +tsl2x7x_core +tsl4531 +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +tua6100 +tua9001 +tulip +tuner +tuner_it913x +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +tvaudio +tveeprom +tvp5150 +tw2804 +tw9903 +tw9906 +tw9910 +twidjoy +twl4030_charger +twl4030_keypad +twl4030-madc +twl4030_madc_battery +twl4030-madc-hwmon +twl4030-pwrbutton +twl4030-vibra +twl4030_wdt +twl6030-gpadc +twl6040-vibra +twofish_common +twofish_generic +typhoon +u132-hcd +uartlite +ubi +ubifs +ucb1400_core +ucb1400_ts +ucd9000 +ucd9200 +uda1342 +udf +udl +udlfb +udp_diag +ueagle-atm +u_ether +ufs +ufshcd +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_sercos3 +uli526x +umc +umem +ums-alauda +ums-cypress +ums-datafab +ums-eneub6250 +ums-freecom +ums-isd200 +ums-jumpshot +ums-karma +ums-onetouch +ums-realtek +ums-sddr09 +ums-sddr55 +ums-usbat +unioxx5 +unix_diag +upd64031a +upd64083 +u_rndis +usb3503 +usb_8dev +usb8xxx +usbatm +usb_debug +usbdux +usbduxfast +usbduxsigma +usb_f_acm +usb_f_ecm +usb_f_ecm_subset +usb_f_eem +usb_f_mass_storage +usb_f_ncm +usb_f_obex +usb_f_phonet +usb_f_rndis +usb_f_serial +usb_f_ss_lb +usb_gigaset +usbhid +usbip-core +usbip-host +usbkbd +usblcd +usbled +usblp +usbmon +usbmouse +usbnet +usbserial +usb-serial-simple +usbsevseg +usbtest +usbtmc +usbtouchscreen +usbtv +usbvision +usb_wwan +u_serial +userspace-consumer +ushc +uss720 +uvcvideo +uvesafb +uwb +ux500 +v4l2-common +v4l2-dv-timings +v4l2-int-device +v4l2-mem2mem +vcan +vcnl4000 +ves1820 +ves1x93 +veth +vexpress +vexpress-spc-cpufreq +vfio +vfio-pci +vgastate +vgg2432a4 +vhci-hcd +vhost +vhost_net +vhost_scsi +via +via686a +via-rhine +via-sdmmc +via-velocity +videobuf2-core +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-memops +videobuf2-vmalloc +videobuf-core +videobuf-dma-contig +videobuf-dma-sg +videobuf-dvb +videobuf-vmalloc +videodev +viperboard +viperboard_adc +virtio-rng +virtio_rpmsg_bus +virtio_scsi +virtual +visor +vivi +vlsi_ir +vmac +vme +vme_pio2 +vme_user +vme_vmivme7805 +vmk80xx +vmwgfx +vmxnet3 +vp27smpx +vpfe_capture +vpss +vringh +vsock +vsxxxaa +vt1211 +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxge +vxlan +w1_bq27000 +w1_ds2408 +w1_ds2413 +w1_ds2423 +w1_ds2431 +w1_ds2433 +w1_ds2760 +w1_ds2780 +w1_ds2781 +w1_ds28e04 +w1-gpio +w1_smem +w1_therm +w35und +w5100 +w5300 +w6692 +w83627ehf +w83627hf +w83781d +w83791d +w83792d +w83793 +w83795 +w83l785ts +w83l786ng +w90p910_ts +w9966 +wacom +wacom_i2c +wacom_w8001 +walkera0701 +wanxl +warrior +wcn36xx +wdt_pci +whci +whci-hcd +whc-rc +whiteheat +wimax +winbond-840 +wire +wishbone-serial +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wlcore +wlcore_sdio +wlcore_spi +wm831x_backup +wm831x_bl +wm831x-dcdc +wm831x-hwmon +wm831x-isink +wm831x-ldo +wm831x-on +wm831x_power +wm831x-ts +wm831x_wdt +wm8350-hwmon +wm8350_power +wm8350-regulator +wm8350_wdt +wm8400-regulator +wm8739 +wm8775 +wm8994-regulator +wm97xx-ts +wp512 +wusb-cbaf +wusbcore +wusb-wa +x25 +x25_asy +xc4000 +xc5000 +xcbc +xfrm4_mode_beet +xfrm4_mode_transport +xfrm4_mode_tunnel +xfrm4_tunnel +xfrm6_mode_beet +xfrm6_mode_ro +xfrm6_mode_transport +xfrm6_mode_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_ipcomp +xfrm_user +xfs +xgifb +xgmac +xilinx_uartps +xillybus_core +xillybus_of +xillybus_pcie +xor +xor-neon +xpad +xprtrdma +xsens_mt +x_tables +xt_addrtype +xt_AUDIT +xt_bpf +xt_CHECKSUM +xt_CLASSIFY +xt_cluster +xt_comment +xt_connbytes +xt_connlabel +xt_connlimit +xt_connmark +xt_CONNSECMARK +xt_conntrack +xt_cpu +xt_CT +xt_dccp +xt_devgroup +xt_dscp +xt_DSCP +xt_ecn +xt_esp +xt_hashlimit +xt_helper +xt_hl +xt_HL +xt_HMARK +xt_IDLETIMER +xt_iprange +xt_ipvs +xtkbd +xt_LED +xt_length +xt_limit +xt_LOG +xt_mac +xt_mark +xt_multiport +xt_nat +xt_NETMAP +xt_nfacct +xt_NFLOG +xt_NFQUEUE +xt_osf +xt_owner +xt_physdev +xt_pkttype +xt_policy +xt_quota +xt_rateest +xt_RATEEST +xt_realm +xt_recent +xt_REDIRECT +xts +xt_sctp +xt_SECMARK +xt_set +xt_socket +xt_state +xt_statistic +xt_string +xt_tcpmss +xt_TCPMSS +xt_TCPOPTSTRIP +xt_tcpudp +xt_TEE +xt_time +xt_TPROXY +xt_TRACE +xt_u32 +xusbatm +xz_dec_test +yam +yealink +yellowfin +yurex +zaurus +zd1201 +zd1211rw +zforce_ts +zhenhua +zl10036 +zl10039 +zl10353 +zl6100 +zlib +zr364xx +zram +zte_ev --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/fwinfo +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/fwinfo @@ -0,0 +1,757 @@ +firmware: 3826.arm +firmware: 3com/typhoon.bin +firmware: 6fire/dmx6fireap.ihx +firmware: 6fire/dmx6firecf.bin +firmware: 6fire/dmx6firel2.ihx +firmware: acenic/tg1.bin +firmware: acenic/tg2.bin +firmware: adaptec/starfire_rx.bin +firmware: adaptec/starfire_tx.bin +firmware: advansys/3550.bin +firmware: advansys/38C0800.bin +firmware: advansys/38C1600.bin +firmware: advansys/mcode.bin +firmware: agere_ap_fw.bin +firmware: agere_sta_fw.bin +firmware: aic94xx-seq.fw +firmware: ar5523.bin +firmware: asihpi/dsp5000.bin +firmware: asihpi/dsp6200.bin +firmware: asihpi/dsp6205.bin +firmware: asihpi/dsp6400.bin +firmware: asihpi/dsp6600.bin +firmware: asihpi/dsp8700.bin +firmware: asihpi/dsp8900.bin +firmware: ath10k/QCA988X/hw2.0/board.bin +firmware: ath10k/QCA988X/hw2.0/firmware.bin +firmware: ath10k/QCA988X/hw2.0/otp.bin +firmware: ath3k-1.fw +firmware: ath6k/AR6003/hw2.0/athwlan.bin.z77 +firmware: ath6k/AR6003/hw2.0/bdata.bin +firmware: ath6k/AR6003/hw2.0/bdata.SD31.bin +firmware: ath6k/AR6003/hw2.0/data.patch.bin +firmware: ath6k/AR6003/hw2.0/otp.bin.z77 +firmware: ath6k/AR6003/hw2.1.1/athwlan.bin +firmware: ath6k/AR6003/hw2.1.1/bdata.bin +firmware: ath6k/AR6003/hw2.1.1/bdata.SD31.bin +firmware: ath6k/AR6003/hw2.1.1/data.patch.bin +firmware: ath6k/AR6003/hw2.1.1/otp.bin +firmware: ath6k/AR6004/hw1.0/bdata.bin +firmware: ath6k/AR6004/hw1.0/bdata.DB132.bin +firmware: ath6k/AR6004/hw1.0/fw.ram.bin +firmware: ath6k/AR6004/hw1.1/bdata.bin +firmware: ath6k/AR6004/hw1.1/bdata.DB132.bin +firmware: ath6k/AR6004/hw1.1/fw.ram.bin +firmware: ath6k/AR6004/hw1.2/bdata.bin +firmware: ath6k/AR6004/hw1.2/fw.ram.bin +firmware: ath6k/AR6004/hw1.3/bdata.bin +firmware: ath6k/AR6004/hw1.3/fw.ram.bin +firmware: atmel_at76c502_3com.bin +firmware: atmel_at76c502_3com-wpa.bin +firmware: atmel_at76c502.bin +firmware: atmel_at76c502d.bin +firmware: atmel_at76c502d-wpa.bin +firmware: atmel_at76c502e.bin +firmware: atmel_at76c502e-wpa.bin +firmware: atmel_at76c502-wpa.bin +firmware: atmel_at76c503-i3861.bin +firmware: atmel_at76c503-i3863.bin +firmware: atmel_at76c503-rfmd-acc.bin +firmware: atmel_at76c503-rfmd.bin +firmware: atmel_at76c504_2958.bin +firmware: atmel_at76c504_2958-wpa.bin +firmware: atmel_at76c504a_2958.bin +firmware: atmel_at76c504a_2958-wpa.bin +firmware: atmel_at76c504.bin +firmware: atmel_at76c504-wpa.bin +firmware: atmel_at76c505amx-rfmd.bin +firmware: atmel_at76c505a-rfmd2958.bin +firmware: atmel_at76c505-rfmd2958.bin +firmware: atmel_at76c505-rfmd.bin +firmware: atmel_at76c506.bin +firmware: atmel_at76c506-wpa.bin +firmware: atmsar11.fw +firmware: atsc_denver.inp +firmware: av7110/bootcode.bin +firmware: b43legacy/ucode2.fw +firmware: b43legacy/ucode4.fw +firmware: b43/ucode11.fw +firmware: b43/ucode13.fw +firmware: b43/ucode14.fw +firmware: b43/ucode15.fw +firmware: b43/ucode16_mimo.fw +firmware: b43/ucode5.fw +firmware: b43/ucode9.fw +firmware: BCM2033-FW.bin +firmware: BCM2033-MD.hex +firmware: bfubase.frm +firmware: bnx2/bnx2-mips-06-6.2.3.fw +firmware: bnx2/bnx2-mips-09-6.2.1b.fw +firmware: bnx2/bnx2-rv2p-06-6.0.15.fw +firmware: bnx2/bnx2-rv2p-09-6.0.17.fw +firmware: bnx2/bnx2-rv2p-09ax-6.0.17.fw +firmware: bnx2x/bnx2x-e1-7.8.17.0.fw +firmware: bnx2x/bnx2x-e1h-7.8.17.0.fw +firmware: bnx2x/bnx2x-e2-7.8.17.0.fw +firmware: brcm/bcm43xx-0.fw +firmware: brcm/bcm43xx_hdr-0.fw +firmware: brcm/brcmfmac43143.bin +firmware: brcm/brcmfmac43143-sdio.bin +firmware: brcm/brcmfmac43143-sdio.txt +firmware: brcm/brcmfmac43236b.bin +firmware: brcm/brcmfmac43241b0-sdio.bin +firmware: brcm/brcmfmac43241b0-sdio.txt +firmware: brcm/brcmfmac43241b4-sdio.bin +firmware: brcm/brcmfmac43241b4-sdio.txt +firmware: brcm/brcmfmac43242a.bin +firmware: brcm/brcmfmac4329-sdio.bin +firmware: brcm/brcmfmac4329-sdio.txt +firmware: brcm/brcmfmac4330-sdio.bin +firmware: brcm/brcmfmac4330-sdio.txt +firmware: brcm/brcmfmac4334-sdio.bin +firmware: brcm/brcmfmac4334-sdio.txt +firmware: brcm/brcmfmac4335-sdio.bin +firmware: brcm/brcmfmac4335-sdio.txt +firmware: BT3CPCC.bin +firmware: c218tunx.cod +firmware: c320tunx.cod +firmware: carl9170-1.fw +firmware: cbfw-3.2.1.1.bin +firmware: cis/3CCFEM556.cis +firmware: cis/3CXEM556.cis +firmware: cis/COMpad2.cis +firmware: cis/COMpad4.cis +firmware: cis/DP83903.cis +firmware: cis/LA-PCM.cis +firmware: cis/MT5634ZLX.cis +firmware: cis/NE2K.cis +firmware: cis/PCMLM28.cis +firmware: cis/PE-200.cis +firmware: cis/PE520.cis +firmware: cis/RS-COM-2P.cis +firmware: cis/SW_555_SER.cis +firmware: cis/SW_7xx_SER.cis +firmware: cis/SW_8xx_SER.cis +firmware: cis/tamarack.cis +firmware: cmmb_ming_app.inp +firmware: cmmb_vega_12mhz.inp +firmware: cmmb_venice_12mhz.inp +firmware: comedi/jr3pci.idm +firmware: cp204unx.cod +firmware: cpia2/stv0672_vp4.bin +firmware: ct2fw-3.2.1.1.bin +firmware: ctefx.bin +firmware: ctfw-3.2.1.1.bin +firmware: cxgb3/ael2005_opt_edc.bin +firmware: cxgb3/ael2005_twx_edc.bin +firmware: cxgb3/ael2020_twx_edc.bin +firmware: cxgb3/t3b_psram-1.1.0.bin +firmware: cxgb3/t3c_psram-1.1.0.bin +firmware: cxgb3/t3fw-7.12.0.bin +firmware: cxgb4/t4fw.bin +firmware: cxgb4/t5fw.bin +firmware: cyzfirm.bin +firmware: daqboard2000_firmware.bin +firmware: digiface_firmware.bin +firmware: digiface_firmware_rev11.bin +firmware: dvb-cx18-mpc718-mt352.fw +firmware: dvb-fe-af9013.fw +firmware: dvb-fe-cx24117.fw +firmware: dvb-fe-ds3000.fw +firmware: dvb-fe-tda10071.fw +firmware: dvb-fe-xc5000-1.6.114.fw +firmware: dvb-fe-xc5000c-4.1.30.7.fw +firmware: dvbh_rio.inp +firmware: dvb_nova_12mhz_b0.inp +firmware: dvb_nova_12mhz.inp +firmware: dvb_rio.inp +firmware: dvb-usb-af9015.fw +firmware: dvb-usb-af9035-02.fw +firmware: dvb-usb-dib0700-1.20.fw +firmware: dvb-usb-dw2101.fw +firmware: dvb-usb-dw2102.fw +firmware: dvb-usb-dw2104.fw +firmware: dvb-usb-dw3101.fw +firmware: dvb-usb-ec168.fw +firmware: dvb-usb-it9135-01.fw +firmware: dvb-usb-it9135-02.fw +firmware: dvb-usb-it9137-01.fw +firmware: dvb-usb-lme2510c-lg.fw +firmware: dvb-usb-lme2510c-rs2000.fw +firmware: dvb-usb-lme2510c-s0194.fw +firmware: dvb-usb-lme2510c-s7395.fw +firmware: dvb-usb-lme2510-lg.fw +firmware: dvb-usb-lme2510-s0194.fw +firmware: dvb-usb-p1100.fw +firmware: dvb-usb-p7500.fw +firmware: dvb-usb-s630.fw +firmware: dvb-usb-s660.fw +firmware: dvb-usb-terratec-h7-az6007.fw +firmware: e100/d101m_ucode.bin +firmware: e100/d101s_ucode.bin +firmware: e100/d102e_ucode.bin +firmware: ea/3g_asic.fw +firmware: ea/darla20_dsp.fw +firmware: ea/darla24_dsp.fw +firmware: ea/echo3g_dsp.fw +firmware: ea/gina20_dsp.fw +firmware: ea/gina24_301_asic.fw +firmware: ea/gina24_301_dsp.fw +firmware: ea/gina24_361_asic.fw +firmware: ea/gina24_361_dsp.fw +firmware: ea/indigo_dj_dsp.fw +firmware: ea/indigo_djx_dsp.fw +firmware: ea/indigo_dsp.fw +firmware: ea/indigo_io_dsp.fw +firmware: ea/indigo_iox_dsp.fw +firmware: ea/layla20_asic.fw +firmware: ea/layla20_dsp.fw +firmware: ea/layla24_1_asic.fw +firmware: ea/layla24_2A_asic.fw +firmware: ea/layla24_2S_asic.fw +firmware: ea/layla24_dsp.fw +firmware: ea/loader_dsp.fw +firmware: ea/mia_dsp.fw +firmware: ea/mona_2_asic.fw +firmware: ea/mona_301_1_asic_48.fw +firmware: ea/mona_301_1_asic_96.fw +firmware: ea/mona_301_dsp.fw +firmware: ea/mona_361_1_asic_48.fw +firmware: ea/mona_361_1_asic_96.fw +firmware: ea/mona_361_dsp.fw +firmware: edgeport/boot2.fw +firmware: edgeport/boot.fw +firmware: edgeport/down2.fw +firmware: edgeport/down3.bin +firmware: edgeport/down.fw +firmware: emi26/bitstream.fw +firmware: emi26/firmware.fw +firmware: emi26/loader.fw +firmware: emi62/bitstream.fw +firmware: emi62/loader.fw +firmware: emi62/spdif.fw +firmware: emu/audio_dock.fw +firmware: emu/emu0404.fw +firmware: emu/emu1010b.fw +firmware: emu/emu1010_notebook.fw +firmware: emu/hana.fw +firmware: emu/micro_dock.fw +firmware: ene-ub6250/ms_init.bin +firmware: ene-ub6250/msp_rdwr.bin +firmware: ene-ub6250/ms_rdwr.bin +firmware: ene-ub6250/sd_init1.bin +firmware: ene-ub6250/sd_init2.bin +firmware: ene-ub6250/sd_rdwr.bin +firmware: ess/maestro3_assp_kernel.fw +firmware: ess/maestro3_assp_minisrc.fw +firmware: f2255usb.bin +firmware: fm_radio.inp +firmware: fm_radio_rio.inp +firmware: fw.ram.bin +firmware: go7007/go7007fw.bin +firmware: go7007/go7007tv.bin +firmware: go7007/lr192.fw +firmware: go7007/px-m402u.fw +firmware: go7007/px-tv402u.fw +firmware: go7007/s2250-1.fw +firmware: go7007/s2250-2.fw +firmware: go7007/wis-startrek.fw +firmware: htc_7010.fw +firmware: htc_9271.fw +firmware: i1480-phy-0.0.bin +firmware: i1480-pre-phy-0.0.bin +firmware: i1480-usb-0.0.bin +firmware: i2400m-fw-usb-1.5.sbcf +firmware: i6050-fw-usb-1.5.sbcf +firmware: icom_asc.bin +firmware: icom_call_setup.bin +firmware: icom_res_dce.bin +firmware: ipw2100-1.3.fw +firmware: ipw2100-1.3-i.fw +firmware: ipw2100-1.3-p.fw +firmware: ipw2200-bss.fw +firmware: ipw2200-ibss.fw +firmware: ipw2200-sniffer.fw +firmware: isci/isci_firmware.bin +firmware: isdbt_nova_12mhz_b0.inp +firmware: isdbt_nova_12mhz.inp +firmware: isdbt_pele.inp +firmware: isdbt_rio.inp +firmware: isdn/ISAR.BIN +firmware: isi4608.bin +firmware: isi4616.bin +firmware: isi608.bin +firmware: isi608em.bin +firmware: isi616em.bin +firmware: isight.fw +firmware: isl3886pci +firmware: isl3886usb +firmware: isl3887usb +firmware: iwlwifi-1000-5.ucode +firmware: iwlwifi-100-5.ucode +firmware: iwlwifi-105-6.ucode +firmware: iwlwifi-135-6.ucode +firmware: iwlwifi-2000-6.ucode +firmware: iwlwifi-2030-6.ucode +firmware: iwlwifi-3160-7.ucode +firmware: iwlwifi-3945-2.ucode +firmware: iwlwifi-4965-2.ucode +firmware: iwlwifi-5000-5.ucode +firmware: iwlwifi-5150-2.ucode +firmware: iwlwifi-6000-4.ucode +firmware: iwlwifi-6000g2a-5.ucode +firmware: iwlwifi-6000g2b-6.ucode +firmware: iwlwifi-6050-5.ucode +firmware: iwlwifi-7260-7.ucode +firmware: kaweth/new_code.bin +firmware: kaweth/new_code_fix.bin +firmware: kaweth/trigger_code.bin +firmware: kaweth/trigger_code_fix.bin +firmware: keyspan/mpr.fw +firmware: keyspan_pda/keyspan_pda.fw +firmware: keyspan_pda/xircom_pgs.fw +firmware: keyspan/usa18x.fw +firmware: keyspan/usa19.fw +firmware: keyspan/usa19qi.fw +firmware: keyspan/usa19qw.fw +firmware: keyspan/usa19w.fw +firmware: keyspan/usa28.fw +firmware: keyspan/usa28xa.fw +firmware: keyspan/usa28xb.fw +firmware: keyspan/usa28x.fw +firmware: keyspan/usa49w.fw +firmware: keyspan/usa49wlc.fw +firmware: korg/k1212.dsp +firmware: lbtf_usb.bin +firmware: lgs8g75.fw +firmware: libertas/cf8305.bin +firmware: libertas/cf8381.bin +firmware: libertas/cf8381_helper.bin +firmware: libertas/cf8385.bin +firmware: libertas/cf8385_helper.bin +firmware: libertas_cs.fw +firmware: libertas_cs_helper.fw +firmware: libertas/gspi8385.bin +firmware: libertas/gspi8385_helper.bin +firmware: libertas/gspi8385_hlp.bin +firmware: libertas/gspi8686.bin +firmware: libertas/gspi8686_hlp.bin +firmware: libertas/gspi8686_v9.bin +firmware: libertas/gspi8686_v9_helper.bin +firmware: libertas/gspi8688.bin +firmware: libertas/gspi8688_helper.bin +firmware: libertas/sd8385.bin +firmware: libertas/sd8385_helper.bin +firmware: libertas/sd8686_v8.bin +firmware: libertas/sd8686_v8_helper.bin +firmware: libertas/sd8686_v9.bin +firmware: libertas/sd8686_v9_helper.bin +firmware: libertas/sd8688.bin +firmware: libertas/sd8688_helper.bin +firmware: libertas/usb8388.bin +firmware: libertas/usb8388_v5.bin +firmware: libertas/usb8388_v9.bin +firmware: libertas/usb8682.bin +firmware: matrox/g200_warp.fw +firmware: matrox/g400_warp.fw +firmware: me2600_firmware.bin +firmware: mixart/miXart8AES.xlx +firmware: mixart/miXart8.elf +firmware: mixart/miXart8.xlx +firmware: mrvl/pcie8766_uapsta.bin +firmware: mrvl/pcie8897_uapsta.bin +firmware: mrvl/sd8688.bin +firmware: mrvl/sd8688_helper.bin +firmware: mrvl/sd8786_uapsta.bin +firmware: mrvl/sd8787_uapsta.bin +firmware: mrvl/sd8797_caldata.conf +firmware: mrvl/sd8797_uapsta.bin +firmware: mrvl/sd8897_uapsta.bin +firmware: mrvl/usb8797_uapsta.bin +firmware: mt7650.bin +firmware: mt7662.bin +firmware: mts_cdma.fw +firmware: mts_edge.fw +firmware: mts_gsm.fw +firmware: mts_mt9234mu.fw +firmware: mts_mt9234zba.fw +firmware: multiface_firmware.bin +firmware: multiface_firmware_rev11.bin +firmware: mwl8k/fmimage_8363.fw +firmware: mwl8k/fmimage_8366_ap-3.fw +firmware: mwl8k/fmimage_8366.fw +firmware: mwl8k/fmimage_8687.fw +firmware: mwl8k/helper_8363.fw +firmware: mwl8k/helper_8366.fw +firmware: mwl8k/helper_8687.fw +firmware: myri10ge_ethp_z8e.dat +firmware: myri10ge_eth_z8e.dat +firmware: myri10ge_rss_ethp_z8e.dat +firmware: myri10ge_rss_eth_z8e.dat +firmware: ni6534a.bin +firmware: niscrb01.bin +firmware: niscrb02.bin +firmware: orinoco_ezusb_fw +firmware: ositech/Xilinx7OD.bin +firmware: pca200e.bin +firmware: pca200e_ecd.bin2 +firmware: pcxhr/dspb1222e.b56 +firmware: pcxhr/dspb1222hr.b56 +firmware: pcxhr/dspb882e.b56 +firmware: pcxhr/dspb882hr.b56 +firmware: pcxhr/dspb924.b56 +firmware: pcxhr/dspd1222.d56 +firmware: pcxhr/dspd222.d56 +firmware: pcxhr/dspd882.d56 +firmware: pcxhr/dspe882.e56 +firmware: pcxhr/dspe924.e56 +firmware: pcxhr/xlxc1222e.dat +firmware: pcxhr/xlxc1222hr.dat +firmware: pcxhr/xlxc222.dat +firmware: pcxhr/xlxc882e.dat +firmware: pcxhr/xlxc882hr.dat +firmware: pcxhr/xlxc924.dat +firmware: pcxhr/xlxint.dat +firmware: phanfw.bin +firmware: prism2_ru.fw +firmware: prism_ap_fw.bin +firmware: prism_sta_fw.bin +firmware: ql2100_fw.bin +firmware: ql2200_fw.bin +firmware: ql2300_fw.bin +firmware: ql2322_fw.bin +firmware: ql2400_fw.bin +firmware: ql2500_fw.bin +firmware: qlogic/1040.bin +firmware: qlogic/12160.bin +firmware: qlogic/1280.bin +firmware: qlogic/sd7220.fw +firmware: r128/r128_cce.bin +firmware: radeon/ARUBA_me.bin +firmware: radeon/ARUBA_pfp.bin +firmware: radeon/ARUBA_rlc.bin +firmware: radeon/BARTS_mc.bin +firmware: radeon/BARTS_me.bin +firmware: radeon/BARTS_pfp.bin +firmware: radeon/BARTS_smc.bin +firmware: radeon/BONAIRE_ce.bin +firmware: radeon/BONAIRE_mc.bin +firmware: radeon/BONAIRE_me.bin +firmware: radeon/BONAIRE_mec.bin +firmware: radeon/BONAIRE_pfp.bin +firmware: radeon/BONAIRE_rlc.bin +firmware: radeon/BONAIRE_sdma.bin +firmware: radeon/BONAIRE_smc.bin +firmware: radeon/BONAIRE_uvd.bin +firmware: radeon/BTC_rlc.bin +firmware: radeon/CAICOS_mc.bin +firmware: radeon/CAICOS_me.bin +firmware: radeon/CAICOS_pfp.bin +firmware: radeon/CAICOS_smc.bin +firmware: radeon/CAYMAN_mc.bin +firmware: radeon/CAYMAN_me.bin +firmware: radeon/CAYMAN_pfp.bin +firmware: radeon/CAYMAN_rlc.bin +firmware: radeon/CAYMAN_smc.bin +firmware: radeon/CEDAR_me.bin +firmware: radeon/CEDAR_pfp.bin +firmware: radeon/CEDAR_rlc.bin +firmware: radeon/CEDAR_smc.bin +firmware: radeon/CYPRESS_me.bin +firmware: radeon/CYPRESS_pfp.bin +firmware: radeon/CYPRESS_rlc.bin +firmware: radeon/CYPRESS_smc.bin +firmware: radeon/CYPRESS_uvd.bin +firmware: radeon/HAINAN_ce.bin +firmware: radeon/HAINAN_mc.bin +firmware: radeon/HAINAN_me.bin +firmware: radeon/HAINAN_pfp.bin +firmware: radeon/HAINAN_rlc.bin +firmware: radeon/HAINAN_smc.bin +firmware: radeon/HAWAII_ce.bin +firmware: radeon/HAWAII_mc.bin +firmware: radeon/HAWAII_me.bin +firmware: radeon/HAWAII_mec.bin +firmware: radeon/HAWAII_pfp.bin +firmware: radeon/HAWAII_rlc.bin +firmware: radeon/HAWAII_sdma.bin +firmware: radeon/HAWAII_smc.bin +firmware: radeon/JUNIPER_me.bin +firmware: radeon/JUNIPER_pfp.bin +firmware: radeon/JUNIPER_rlc.bin +firmware: radeon/JUNIPER_smc.bin +firmware: radeon/KABINI_ce.bin +firmware: radeon/KABINI_me.bin +firmware: radeon/KABINI_mec.bin +firmware: radeon/KABINI_pfp.bin +firmware: radeon/KABINI_rlc.bin +firmware: radeon/KABINI_sdma.bin +firmware: radeon/KAVERI_ce.bin +firmware: radeon/KAVERI_me.bin +firmware: radeon/KAVERI_mec.bin +firmware: radeon/KAVERI_pfp.bin +firmware: radeon/KAVERI_rlc.bin +firmware: radeon/KAVERI_sdma.bin +firmware: radeon/OLAND_ce.bin +firmware: radeon/OLAND_mc.bin +firmware: radeon/OLAND_me.bin +firmware: radeon/OLAND_pfp.bin +firmware: radeon/OLAND_rlc.bin +firmware: radeon/OLAND_smc.bin +firmware: radeon/PALM_me.bin +firmware: radeon/PALM_pfp.bin +firmware: radeon/PITCAIRN_ce.bin +firmware: radeon/PITCAIRN_mc.bin +firmware: radeon/PITCAIRN_me.bin +firmware: radeon/PITCAIRN_pfp.bin +firmware: radeon/PITCAIRN_rlc.bin +firmware: radeon/PITCAIRN_smc.bin +firmware: radeon/R100_cp.bin +firmware: radeon/R200_cp.bin +firmware: radeon/R300_cp.bin +firmware: radeon/R420_cp.bin +firmware: radeon/R520_cp.bin +firmware: radeon/R600_me.bin +firmware: radeon/R600_pfp.bin +firmware: radeon/R600_rlc.bin +firmware: radeon/R700_rlc.bin +firmware: radeon/REDWOOD_me.bin +firmware: radeon/REDWOOD_pfp.bin +firmware: radeon/REDWOOD_rlc.bin +firmware: radeon/REDWOOD_smc.bin +firmware: radeon/RS600_cp.bin +firmware: radeon/RS690_cp.bin +firmware: radeon/RS780_me.bin +firmware: radeon/RS780_pfp.bin +firmware: radeon/RV610_me.bin +firmware: radeon/RV610_pfp.bin +firmware: radeon/RV620_me.bin +firmware: radeon/RV620_pfp.bin +firmware: radeon/RV630_me.bin +firmware: radeon/RV630_pfp.bin +firmware: radeon/RV635_me.bin +firmware: radeon/RV635_pfp.bin +firmware: radeon/RV670_me.bin +firmware: radeon/RV670_pfp.bin +firmware: radeon/RV710_me.bin +firmware: radeon/RV710_pfp.bin +firmware: radeon/RV710_smc.bin +firmware: radeon/RV710_uvd.bin +firmware: radeon/RV730_me.bin +firmware: radeon/RV730_pfp.bin +firmware: radeon/RV730_smc.bin +firmware: radeon/RV740_smc.bin +firmware: radeon/RV770_me.bin +firmware: radeon/RV770_pfp.bin +firmware: radeon/RV770_smc.bin +firmware: radeon/SUMO2_me.bin +firmware: radeon/SUMO2_pfp.bin +firmware: radeon/SUMO_me.bin +firmware: radeon/SUMO_pfp.bin +firmware: radeon/SUMO_rlc.bin +firmware: radeon/SUMO_uvd.bin +firmware: radeon/TAHITI_ce.bin +firmware: radeon/TAHITI_mc.bin +firmware: radeon/TAHITI_me.bin +firmware: radeon/TAHITI_pfp.bin +firmware: radeon/TAHITI_rlc.bin +firmware: radeon/TAHITI_smc.bin +firmware: radeon/TAHITI_uvd.bin +firmware: radeon/TURKS_mc.bin +firmware: radeon/TURKS_me.bin +firmware: radeon/TURKS_pfp.bin +firmware: radeon/TURKS_smc.bin +firmware: radeon/VERDE_ce.bin +firmware: radeon/VERDE_mc.bin +firmware: radeon/VERDE_me.bin +firmware: radeon/VERDE_pfp.bin +firmware: radeon/VERDE_rlc.bin +firmware: radeon/VERDE_smc.bin +firmware: riptide.hex +firmware: rp2.fw +firmware: rpm_firmware.bin +firmware: rt2561.bin +firmware: rt2561s.bin +firmware: rt2661.bin +firmware: rt2860.bin +firmware: rt2870.bin +firmware: rt73.bin +firmware: RTL8192E/boot.img +firmware: RTL8192E/data.img +firmware: RTL8192E/main.img +firmware: RTL8192U/boot.img +firmware: RTL8192U/data.img +firmware: RTL8192U/main.img +firmware: rtl_nic/rtl8105e-1.fw +firmware: rtl_nic/rtl8106e-1.fw +firmware: rtl_nic/rtl8106e-2.fw +firmware: rtl_nic/rtl8168d-1.fw +firmware: rtl_nic/rtl8168d-2.fw +firmware: rtl_nic/rtl8168e-1.fw +firmware: rtl_nic/rtl8168e-2.fw +firmware: rtl_nic/rtl8168e-3.fw +firmware: rtl_nic/rtl8168f-1.fw +firmware: rtl_nic/rtl8168f-2.fw +firmware: rtl_nic/rtl8168g-2.fw +firmware: rtl_nic/rtl8168g-3.fw +firmware: rtl_nic/rtl8402-1.fw +firmware: rtl_nic/rtl8411-1.fw +firmware: rtl_nic/rtl8411-2.fw +firmware: rtlwifi/rtl8188efw.bin +firmware: rtlwifi/rtl8192cfw.bin +firmware: rtlwifi/rtl8192cfwU_B.bin +firmware: rtlwifi/rtl8192cfwU.bin +firmware: rtlwifi/rtl8192cufw_A.bin +firmware: rtlwifi/rtl8192cufw_B.bin +firmware: rtlwifi/rtl8192cufw.bin +firmware: rtlwifi/rtl8192cufw_TMSC.bin +firmware: rtlwifi/rtl8192defw.bin +firmware: rtlwifi/rtl8192sefw.bin +firmware: rtlwifi/rtl8712u.bin +firmware: rtlwifi/rtl8723befw.bin +firmware: rtlwifi/rtl8723fw_B.bin +firmware: rtlwifi/rtl8723fw.bin +firmware: rtlwifi/rtl8821aefw.bin +firmware: sb16/alaw_main.csp +firmware: sb16/ima_adpcm_capture.csp +firmware: sb16/ima_adpcm_init.csp +firmware: sb16/ima_adpcm_playback.csp +firmware: sb16/mulaw_main.csp +firmware: scope.cod +firmware: sd8385.bin +firmware: sd8385_helper.bin +firmware: sd8686.bin +firmware: sd8686_helper.bin +firmware: sd8688.bin +firmware: sd8688_helper.bin +firmware: slicoss/gbdownload.sys +firmware: slicoss/gbrcvucode.sys +firmware: slicoss/oasisdownload.sys +firmware: slicoss/oasisrcvucode.sys +firmware: sms1xxx-hcw-55xxx-dvbt-02.fw +firmware: sms1xxx-hcw-55xxx-isdbt-02.fw +firmware: sms1xxx-nova-a-dvbt-01.fw +firmware: sms1xxx-nova-b-dvbt-01.fw +firmware: sms1xxx-stellar-dvbt-01.fw +firmware: sndscape.co0 +firmware: sndscape.co1 +firmware: sndscape.co2 +firmware: sndscape.co3 +firmware: sndscape.co4 +firmware: softing-4.6/bcard2.bin +firmware: softing-4.6/bcard.bin +firmware: softing-4.6/cancard.bin +firmware: softing-4.6/cancrd2.bin +firmware: softing-4.6/cansja.bin +firmware: softing-4.6/ldcard2.bin +firmware: softing-4.6/ldcard.bin +firmware: solos-db-FPGA.bin +firmware: solos-Firmware.bin +firmware: solos-FPGA.bin +firmware: sun/cassini.bin +firmware: symbol_sp24t_prim_fw +firmware: symbol_sp24t_sec_fw +firmware: tdmb_denver.inp +firmware: tdmb_nova_12mhz_b0.inp +firmware: tdmb_nova_12mhz.inp +firmware: tehuti/bdx.bin +firmware: ti_3410.fw +firmware: ti_5052.fw +firmware: ti-connectivity/wl1251-fw.bin +firmware: ti-connectivity/wl1271-nvs.bin +firmware: ti-connectivity/wl127x-fw-5-mr.bin +firmware: ti-connectivity/wl127x-fw-5-plt.bin +firmware: ti-connectivity/wl127x-fw-5-sr.bin +firmware: ti-connectivity/wl128x-fw-5-mr.bin +firmware: ti-connectivity/wl128x-fw-5-plt.bin +firmware: ti-connectivity/wl128x-fw-5-sr.bin +firmware: ti-connectivity/wl18xx-fw-2.bin +firmware: tigon/tg3.bin +firmware: tigon/tg3_tso5.bin +firmware: tigon/tg3_tso.bin +firmware: tlg2300_firmware.bin +firmware: ttusb-budget/dspbootcode.bin +firmware: turtlebeach/msndinit.bin +firmware: turtlebeach/msndperm.bin +firmware: turtlebeach/pndsperm.bin +firmware: turtlebeach/pndspini.bin +firmware: ueagle-atm/930-fpga.bin +firmware: ueagle-atm/adi930.fw +firmware: ueagle-atm/CMV4i.bin +firmware: ueagle-atm/CMV4i.bin.v2 +firmware: ueagle-atm/CMV4p.bin +firmware: ueagle-atm/CMV4p.bin.v2 +firmware: ueagle-atm/CMV9i.bin +firmware: ueagle-atm/CMV9i.bin.v2 +firmware: ueagle-atm/CMV9p.bin +firmware: ueagle-atm/CMV9p.bin.v2 +firmware: ueagle-atm/CMVei.bin +firmware: ueagle-atm/CMVei.bin.v2 +firmware: ueagle-atm/CMVep.bin +firmware: ueagle-atm/CMVep.bin.v2 +firmware: ueagle-atm/DSP4i.bin +firmware: ueagle-atm/DSP4p.bin +firmware: ueagle-atm/DSP9i.bin +firmware: ueagle-atm/DSP9p.bin +firmware: ueagle-atm/DSPei.bin +firmware: ueagle-atm/DSPep.bin +firmware: ueagle-atm/eagle.fw +firmware: ueagle-atm/eagleI.fw +firmware: ueagle-atm/eagleII.fw +firmware: ueagle-atm/eagleIII.fw +firmware: ueagle-atm/eagleIV.fw +firmware: usb8388.bin +firmware: usbduxfast_firmware.bin +firmware: usbdux_firmware.bin +firmware: usbduxsigma_firmware.bin +firmware: v4l-cx231xx-avcore-01.fw +firmware: v4l-cx23418-apu.fw +firmware: v4l-cx23418-cpu.fw +firmware: v4l-cx23418-dig.fw +firmware: v4l-cx2341x-dec.fw +firmware: v4l-cx2341x-enc.fw +firmware: v4l-cx2341x-init.mpg +firmware: v4l-cx23885-avcore-01.fw +firmware: v4l-cx23885-enc.fw +firmware: v4l-cx25840.fw +firmware: v4l-pvrusb2-24xxx-01.fw +firmware: v4l-pvrusb2-29xxx-01.fw +firmware: v4l-pvrusb2-73xxx-01.fw +firmware: vicam/firmware.fw +firmware: vntwusb.fw +firmware: vpdma-1b8.bin +firmware: vx/bd56002.boot +firmware: vx/bd563s3.boot +firmware: vx/bd563v2.boot +firmware: vx/bx_1_vp4.b56 +firmware: vx/bx_1_vxp.b56 +firmware: vxge/X3fw.ncf +firmware: vxge/X3fw-pxe.ncf +firmware: vx/l_1_v22.d56 +firmware: vx/l_1_vp4.d56 +firmware: vx/l_1_vx2.d56 +firmware: vx/l_1_vxp.d56 +firmware: vx/x1_1_vp4.xlx +firmware: vx/x1_1_vx2.xlx +firmware: vx/x1_1_vxp.xlx +firmware: vx/x1_2_v22.xlx +firmware: wavefront.os +firmware: whiteheat.fw +firmware: whiteheat_loader.fw +firmware: wlan/prima/WCNSS_qcom_wlan_nv.bin +firmware: xc3028L-v36.fw +firmware: xc3028-v27.fw +firmware: yam/1200.bin +firmware: yam/9600.bin +firmware: yamaha/ds1_ctrl.fw +firmware: yamaha/ds1_dsp.fw +firmware: yamaha/ds1e_ctrl.fw +firmware: yamaha/yss225_registers.bin +firmware: zd1201-ap.fw +firmware: zd1201.fw +firmware: zd1211/zd1211b_ub +firmware: zd1211/zd1211b_uphr +firmware: zd1211/zd1211b_ur +firmware: zd1211/zd1211_ub +firmware: zd1211/zd1211_uphr +firmware: zd1211/zd1211_ur --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/i386/generic +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/i386/generic @@ -0,0 +1,17491 @@ +EXPORT_SYMBOL arch/x86/kvm/kvm 0xea14a902 kvm_read_guest_atomic +EXPORT_SYMBOL arch/x86/kvm/kvm 0xf2b652bb kvm_cpu_has_pending_timer +EXPORT_SYMBOL arch/x86/platform/scx200/scx200 0x254e5667 scx200_gpio_base +EXPORT_SYMBOL arch/x86/platform/scx200/scx200 0x35a3c008 scx200_gpio_configure +EXPORT_SYMBOL arch/x86/platform/scx200/scx200 0x8cfa375c scx200_gpio_shadow +EXPORT_SYMBOL arch/x86/platform/scx200/scx200 0x907665bd scx200_cb_base +EXPORT_SYMBOL crypto/gf128mul 0x0c2f123f gf128mul_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x1068004b gf128mul_bbe +EXPORT_SYMBOL crypto/gf128mul 0x2f2889a0 gf128mul_init_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x384ef9ce gf128mul_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x56af0dbd gf128mul_x_ble +EXPORT_SYMBOL crypto/gf128mul 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL crypto/gf128mul 0xbd17a0df gf128mul_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0xc0890413 gf128mul_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/acpi/video 0x7a45377b acpi_video_unregister +EXPORT_SYMBOL drivers/acpi/video 0x8826c13b acpi_video_register +EXPORT_SYMBOL drivers/acpi/video 0xbf663b11 acpi_video_get_edid +EXPORT_SYMBOL drivers/atm/suni 0x5cce5506 suni_init +EXPORT_SYMBOL drivers/atm/uPD98402 0xbfca789b uPD98402_init +EXPORT_SYMBOL drivers/bcma/bcma 0x240a2219 bcma_core_dma_translation +EXPORT_SYMBOL drivers/block/drbd/drbd 0x127a5901 drbd_set_st_err_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x35131b36 drbd_role_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x7730f22d drbd_conn_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0xaf27bebf drbd_disk_str +EXPORT_SYMBOL drivers/block/paride/paride 0x0696679e pi_release +EXPORT_SYMBOL drivers/block/paride/paride 0x207024aa pi_disconnect +EXPORT_SYMBOL drivers/block/paride/paride 0x2e3501b8 pi_write_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x3960a2dc pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0x61971c7b pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0x76f14824 pi_read_block +EXPORT_SYMBOL drivers/block/paride/paride 0x8eec5b04 pi_write_block +EXPORT_SYMBOL drivers/block/paride/paride 0x9b2ae687 pi_read_regr +EXPORT_SYMBOL drivers/block/paride/paride 0xa0d7b4c9 paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0xc8f63c37 pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xed872f92 pi_init +EXPORT_SYMBOL drivers/block/paride/paride 0xfd602024 paride_unregister +EXPORT_SYMBOL drivers/char/nsc_gpio 0x02d13705 nsc_gpio_write +EXPORT_SYMBOL drivers/char/nsc_gpio 0x4343d9d2 nsc_gpio_read +EXPORT_SYMBOL drivers/char/nsc_gpio 0xf9b262f7 nsc_gpio_dump +EXPORT_SYMBOL drivers/char/nvram 0x0f28cb91 nvram_read_byte +EXPORT_SYMBOL drivers/char/nvram 0x17ff2c1d __nvram_read_byte +EXPORT_SYMBOL drivers/char/nvram 0x2adec1e0 __nvram_check_checksum +EXPORT_SYMBOL drivers/char/nvram 0x7da28f12 nvram_check_checksum +EXPORT_SYMBOL drivers/char/nvram 0x9ce3f83f nvram_write_byte +EXPORT_SYMBOL drivers/char/nvram 0xa8813189 __nvram_write_byte +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x0eb3bd45 dw_dma_cyclic_stop +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x1b9a8fc4 dw_dma_cyclic_start +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x6897e2f0 dw_dma_get_src_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x88cc9357 dw_dma_cyclic_free +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xa61e5823 dw_dma_get_dst_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xdf6d2a1f dw_dma_cyclic_prep +EXPORT_SYMBOL drivers/dma/ioat/ioatdma 0x9d10af73 ioat_dma_setup_interrupts +EXPORT_SYMBOL drivers/edac/edac_core 0x9baf4c59 edac_mc_find +EXPORT_SYMBOL drivers/firewire/firewire-core 0x04dd92ce fw_core_add_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x04fee309 fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0cfa1043 fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0x16c75fb1 fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0x16e91e21 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x339b7b21 fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3c56ef91 fw_workqueue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3e12daec fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4133628a fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x446b5c99 fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0x492d1a72 fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4d5d4eca fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x56b33fc4 fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0x58c98c9a fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6167b42f fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0x65c9438b fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6b393d51 fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7246e39b fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0x729a1f52 fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7e3280be fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7e431b14 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x90863005 fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb2b26112 fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb52ffff5 fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb560f6f6 fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xbc844b5c fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xbc88bfca fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc1e0b5a3 fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe12b0ba1 fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe14b4807 fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xeb5b0adb fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0xee58cf65 fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf88790c6 fw_core_add_address_handler +EXPORT_SYMBOL drivers/firmware/dcdbas 0xa75079d6 dcdbas_smi_request +EXPORT_SYMBOL drivers/fmc/fmc 0x010cb8cb fmc_find_sdb_device +EXPORT_SYMBOL drivers/fmc/fmc 0x11dd3e20 fmc_device_register +EXPORT_SYMBOL drivers/fmc/fmc 0x2baab5f1 fmc_device_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0x456db5e8 fmc_driver_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0x4cb76ff4 fmc_device_register_n +EXPORT_SYMBOL drivers/fmc/fmc 0x609a7c12 fmc_scan_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x80931cfc fmc_free_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x9aaec048 fmc_driver_register +EXPORT_SYMBOL drivers/fmc/fmc 0xaeb1d3a2 fmc_reprogram +EXPORT_SYMBOL drivers/fmc/fmc 0xb2e27784 fmc_device_unregister_n +EXPORT_SYMBOL drivers/fmc/fmc 0xbaa9b976 fmc_show_sdb_tree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00025916 drm_mode_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00667d8a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x026c0d6b drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x052b4df2 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05f1afc4 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x06ffba05 drm_dev_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0829620d drm_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a0341c2 drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ad12a63 drm_pci_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ae4b94c drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0b353f00 drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d34a72f drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ec527fc drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fb4bbae drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fb86361 drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fccafb1 drm_global_item_unref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10e1e2c8 drm_ati_pcigart_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x124b72f4 drm_core_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x128ed831 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12908e91 drm_bridge_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12c6276a drm_buffer_read_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12df8591 drm_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13cdaadb drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x142b8b35 drm_buffer_copy_from_user +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14487b27 drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a9a178 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x189f6401 drm_mm_debug_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x194eadaa drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19e44324 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a770ac3 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a86bb21 drm_platform_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e522fc8 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e71c964 drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1ff03e68 drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20582370 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20645642 drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x249f109f drm_unplug_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x252ed319 drm_addmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a89d011 drm_sysfs_connector_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a942ab2 drm_mm_insert_node_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2c02e440 drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d80be4d drm_mm_init_scan +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e2cae1e drm_framebuffer_reference +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7a4300 drm_rgb_quant_range_selectable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2fac8c4d drm_get_connector_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3239b3ee drm_bridge_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x32b28181 drm_addbufs_pci +EXPORT_SYMBOL drivers/gpu/drm/drm 0x346127a7 drm_global_item_ref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3689bd7a drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36c1db35 drm_mode_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36f91ef3 drm_mm_clean +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3805741e drm_agp_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38a4f7ae drm_format_num_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3953fac8 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x39e348fb drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ac1fef9 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ae7b2d0 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b3c9b6c drm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b9d009a drm_format_plane_cpp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d4b8108 drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e3e530d drm_agp_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eb37b9d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ed6f017 drm_vblank_pre_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3f051023 drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3f8905f8 drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3fd099a6 drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x426372d9 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43384bd9 drm_buffer_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4448018a drm_core_reclaim_buffers +EXPORT_SYMBOL drivers/gpu/drm/drm 0x45d03609 drm_agp_bind_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x45de1bdf drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x46115593 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0x46b1310c drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x46ef684f drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x472f7096 drm_prime_destroy_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x479ffcbf drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48186f2f drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x498dcb5e drm_ut_debug_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49fabf0d drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c511235 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d328fa8 drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4dcdc029 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4df43a3e drm_core_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ea1f5a2 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ea396b7 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ef3408a drm_pci_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x500e28fd drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5070218f drm_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e28c07 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0x511ad717 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x526f6f71 drm_rect_calc_hscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x53df0edb drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54684804 drm_prime_init_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x555f901a drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56f2ba9d drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5cf3b784 drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d98677d drm_agp_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e125f1b drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f24e34f drm_vblank_post_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f46996b drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6090be61 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x61f2e858 drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x629c05e1 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x63d90e64 drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66803841 drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6900d335 drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x693eca14 drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b6d7375 drm_timestamp_precision +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b96d26d drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cee2e42 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e3b2bda drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e4abcc5 drm_platform_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f08acc3 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f4977bb drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x70e1810f drm_pci_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7118701f drm_sysfs_connector_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71cd1bd2 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0x723c0545 drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0x771008f5 drm_pcie_get_speed_cap_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a295f04 drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a4e7297 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a6eff53 drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7bc78b4f drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7cdc510d drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d48163e drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e8ac55e drm_agp_bind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8188ff09 drm_agp_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81ba930c drm_mm_init_scan_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81f6e759 drm_idlelock_take +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83459717 drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8387eab4 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8478645b drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x84d526cc drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x867a1499 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8714420f drm_edid_to_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x873f7bb4 drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x89e98ad1 drm_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a223e9a drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8bbbc816 drm_global_mutex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c2c7dcf drm_rmmap_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c4d7c60 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8de13715 drm_format_vert_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dfb019d drm_buffer_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8e1bf0e8 drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8eff9111 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f7df3a7 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8feb5ef3 drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x92f5a4af drm_vblank_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x93522a86 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x93d29cd9 drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x941b94f6 drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9745d638 drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0x97e1f901 drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9972db48 drm_rect_calc_vscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99dcda55 drm_get_pci_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9cb683e5 drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d70fc2a drm_rnodes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d8e4cf3 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9eccfe56 drm_mode_hsync +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9efc26a3 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9ffc7033 drm_ati_pcigart_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1225d48 drm_mode_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa15ead7e drm_addbufs_agp +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1f4e9e6 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa28078b2 drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2c07fbf drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3ecccd3 drm_core_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa50fcdc0 drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5ab68a8 drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5dbd572 drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6902f65 drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6cd861b drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa7908a90 drm_mode_connector_detach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa79fe64b drm_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa96acfcb drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae5019e7 drm_pci_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae7fd86d drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaf2ff3a4 drm_mode_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafb0cb6f drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafd51394 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb00c90b8 drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb572a9f0 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9425f35 drm_get_encoder_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb95beb55 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe001c53 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc0d913f5 drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc39de2a1 drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4000f9f drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc414c422 drm_vblank_offdelay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4532c1f drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc68eb43b drm_mm_dump_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc78a2308 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8b41909 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc92f5425 drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca45efbc drm_format_horz_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca93ede3 drm_vma_offset_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcc6a7556 drm_agp_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd0fc417 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcda96b58 drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcddf8417 drm_agp_unbind +EXPORT_SYMBOL drivers/gpu/drm/drm 0xce9fcd2b drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf92803a drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd07a141b drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2335101 drm_fb_get_bpp_depth +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2b3bc40 drm_calc_vbltimestamp_from_scanoutpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd30ab65f drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd390894c drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd3baa4f9 drm_get_last_vbltimestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4c40144 drm_connector_unplug_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd55aea8d drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6651c68 drm_select_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6a2acec drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd72f02b8 drm_mode_group_init_legacy_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb5a5852 drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbb5a9f5 drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbe8a3e8 drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc813cd5 drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xde5969ab drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0xde7dc6fe drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe0456f6c drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe1f9d8fb drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2a17aba drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2ef97e4 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe3c3a60d drm_rmmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe51970a2 drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe532f4f9 drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe60e7dfe drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe625aacb drm_idlelock_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6caab88 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6f46e6e drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7197773 drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe801dccd drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe92a0aab drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec205727 drm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xedb6db35 drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee99c3ec drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefdf9b69 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf08d712a drm_mode_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf19a45ca drm_crtc_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf2fff945 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf446a0e2 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf452b2e3 drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf4782fc8 drm_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf634d8b9 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf63f55a3 drm_agp_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf95b8495 drm_mode_create_dirty_info_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf97a7d8e drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb497216 drm_mm_insert_node_in_range_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb859580 drm_framebuffer_unreference +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd063935 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd28c3b8 drm_getsarea +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe226441 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe4a68c7 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff500b4d drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffc6c87a drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x04707633 drm_fb_helper_fill_fix +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x08813fc0 drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x098e47d2 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f96ec70 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x163251c8 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1f96738e drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x23a4852d drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3185833a drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34871adf drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a1c00ae drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4b94450f drm_fb_helper_restore_fbdev_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x503bad36 i2c_dp_aux_add_bus +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x56f33f4b drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x577afb08 drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5b01fe93 drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5f4d4b3d drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x65e2baa3 drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x66aed190 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b043bb2 drm_fb_helper_single_add_all_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6c0e9b18 drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x70469d87 drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x710deb60 drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x711a004a drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x79b3ecf2 drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x82c26462 drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x82e169e5 drm_fb_helper_fill_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84e924ba drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x880673a3 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9466f42a drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9c26a36d drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa4c17e69 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa77858bb drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa78dbb8b drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8d6809d drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa9fda0dc drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaa4b189a drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc335e704 drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc9ace0d8 drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd6583ff0 drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xeac18811 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x03f89ff1 drm_get_usb_dev +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x399b6376 drm_usb_exit +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x722b60eb drm_usb_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x04cfe10d ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0aa53223 ttm_agp_tt_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x128cbe3d ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x132b05be ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1ba4e68a ttm_lock_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1c4f670f ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1d45b8ca ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x23e6a3df ttm_vt_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x266d8a60 ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b54aa9a ttm_object_file_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2eb0abba ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x37c990c2 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x39f27b2f ttm_bo_add_to_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3d754002 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3d864d79 ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3f99d5ce ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x45c01691 ttm_mem_io_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x485a5bc0 ttm_ref_object_add +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4c4480fa ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5003b5fb ttm_agp_tt_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x532306fe ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x57489bb3 ttm_mem_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5b30b138 ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5bc6c4a8 ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5bdfda6f ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5cf59609 ttm_bo_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5e6443ef ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5f3ce72c ttm_mem_io_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6019c13c ttm_write_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x669c263f ttm_suspend_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x67b1d568 ttm_bo_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6e048943 ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x73600b90 ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x75a1abb7 ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7aeaeba2 ttm_read_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7b5dbfd1 ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7dced855 ttm_bo_del_sub_from_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80537621 ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80d86f0e ttm_object_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x827b09d9 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x83bf5379 ttm_agp_tt_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x864ec964 ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x880a15ad ttm_base_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x89cbf21a ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8cad3cc2 ttm_suspend_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8fb36be5 ttm_mem_io_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94894449 ttm_base_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x998e45c0 ttm_ref_object_base_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x99e0aafb ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9f27104a ttm_mem_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9faf52e4 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa5d1649f ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa7740774 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaafd5ce2 ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaccd88f7 ttm_bo_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xad2c8658 ttm_mem_io_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xae3b6a31 ttm_prime_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb25e55ef ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb467301e ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb6b9218d ttm_write_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb7c52dda ttm_object_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb8c3b0c5 ttm_bo_synccpu_write_grab +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbc4e0637 ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbd2bcb20 ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc4327088 ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xce6e43a8 ttm_base_object_lookup_for_ref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd4ed3289 ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7a41a37 ttm_vt_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd8edb115 ttm_base_object_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd9f8a809 ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xea3dafc5 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf2ed716d ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf354400f ttm_fbdev_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfb043640 ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfbc2c5ec ttm_object_file_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfe1b627f ttm_bo_synccpu_write_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xffcb8d9b ttm_read_lock +EXPORT_SYMBOL drivers/hv/hv_vmbus 0x5a01ed91 vmbus_sendpacket +EXPORT_SYMBOL drivers/hv/hv_vmbus 0xd1b54371 vmbus_recvpacket +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x0903c239 vid_from_reg +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0xef1c781c vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x0e2a6864 sch56xx_read_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x0f5877d4 sch56xx_read_virtual_reg16 +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x34257f35 sch56xx_watchdog_unregister +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x3e77c6a6 sch56xx_watchdog_register +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xe5022f95 sch56xx_read_virtual_reg12 +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xed1d2a08 sch56xx_write_virtual_reg +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x2418af3a i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x4d1374d8 i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x8ba6bdc7 i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x54a512cc i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0xc79a146d i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0x05c70785 amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x827b09f9 st_accel_common_remove +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xdf38ff79 st_accel_common_probe +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x0a9e4d30 hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x396dcefe hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x92a52b9c hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x984c9615 hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xb030c7ac hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x31eeeaca hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xb6e40244 hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x01c421a7 st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x0883be9b st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x0a0aadab st_sensors_get_buffer_element +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x1c2e11bb st_sensors_check_device_support +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x22e2ce2c st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x3c5a23cf st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x49bd47c2 st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x6e6bfb2e st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x7b7fd109 st_sensors_sysfs_set_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x7dd42c80 st_sensors_sysfs_get_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x9a47467c st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xb4cbb692 st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xb7e7959d st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xe13630de st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xf5537703 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0xaa66d174 st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0x52f73b97 st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0xa288902a st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0xa456d419 st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x6d8c8594 adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xe1e7a20a adis_enable_irq +EXPORT_SYMBOL drivers/iio/industrialio 0x10b54d10 iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0x18621b7e iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x19e36488 iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0x1b8b7308 iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x4596fd8e iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0x54e4b87b iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0x5a3cbf3e iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0x686a355e iio_buffer_register +EXPORT_SYMBOL drivers/iio/industrialio 0x68bd5d4f iio_buffer_store_enable +EXPORT_SYMBOL drivers/iio/industrialio 0x765bc005 iio_buffer_write_length +EXPORT_SYMBOL drivers/iio/industrialio 0x7677bad8 iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0x8106aa0d iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x8b0f9686 iio_buffer_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x8f3d78ef iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x8fc5024b iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x90d37d56 iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0x9fbe7bd3 iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0xa8cc4b4f iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0xaa8fe5f0 iio_buffer_read_length +EXPORT_SYMBOL drivers/iio/industrialio 0xb9e400a8 iio_buffer_show_enable +EXPORT_SYMBOL drivers/iio/industrialio 0xd4a07a68 iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0xdf31142b iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xe0299c31 iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x476af775 iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0xd5370566 iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x03bf39ec iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/kfifo_buf 0xfc1f65de iio_kfifo_free +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x953df78a st_magn_common_probe +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xc857abd6 st_magn_common_remove +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x08deafb9 st_press_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xd06de1be st_press_common_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x049ace30 rdma_addr_find_smac_by_sgid +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x04b8b6d7 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1c3c0ad3 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x273f4cca rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x446fd7c9 rdma_addr_find_dmac_by_grh +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x71f3076f rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x763fc529 rdma_copy_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x8ed679ff rdma_addr_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0xc0bf4edc rdma_addr_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x27fac0ef ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x306587c1 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x37144d4c ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x49cadce4 ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x537bb3e6 ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x57a51070 ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x58b6d4fc ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x5c943169 ib_send_cm_lap +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x67a48e71 ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x7471390a ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x7b817bc7 ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x92179b27 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xbb70a80f ib_send_cm_apr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xbe6c19c7 ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xe2a69ffa ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xf29448b7 ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xff81f817 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0242c5d1 ib_destroy_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06c82fcf mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x085e5578 ib_init_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0a2a9407 ib_resolve_eth_l2_attrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0aa31517 ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c1b9ac1 ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c62f004 ib_modify_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14f84918 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x171f99f1 ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x179038b3 ib_query_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x195a7456 rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1c209a6c ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1d2cce35 ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e491a04 ib_unmap_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x215ade7a ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x292f0dc4 ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x29689f10 ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a25306d ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a729f1d ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ed6e386 ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x34a1918f ib_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x367db53e ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3ba8eab9 ib_alloc_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3d17946f ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fa76028 ib_get_dma_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x43bad3f9 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4518508d ib_fmr_pool_unmap +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4a501e16 ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4d3eaa51 ib_alloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50dbc447 ib_flush_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x51ddbf99 ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x520b2638 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x521ee85d ib_dealloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5becda2e ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x635b8b6c ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6390b7f6 ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x656e5a43 ib_free_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6d42ee10 ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e030e26 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7a48b0db ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7a768ef2 ib_dealloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7dbb635e ib_get_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x849a1b8a ib_rereg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8709b699 ib_destroy_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x89a62fdd ib_find_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8b822522 ib_create_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9216585f ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x931250e0 ib_create_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x93f0f46b ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x99ded0e7 ib_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9e08fc11 ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9ff0f066 ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa0c5beb4 ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa5cfbb2f ib_dealloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa7e53251 ib_reg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa9fe0519 ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac217df9 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaea0aa94 ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb1a312e1 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb2ca790c ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb6e409af ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xba580e0e ib_destroy_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xba80578d ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbecd3089 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc32b59ff ib_destroy_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc61c5c52 ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc67f14a5 ibnl_remove_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc8b047f4 ib_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcac96817 ib_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcace9e43 ib_alloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcbbe2c7e ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcbe68083 ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcdc18d8d ib_get_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcf1e5aeb ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcf539971 ib_create_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd784f096 ib_dereg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd81a710a ibnl_add_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdc4e75ba ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xde66a892 ib_destroy_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe93160a7 ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xec12b8d6 ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xecf97c5c ib_alloc_fast_reg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf0377944 ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf665497f ib_fmr_pool_map_phys +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf749881c ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf77331e6 ib_query_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf91124ff ib_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf92b2773 ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfc150956 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xff942d8d ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x122940e2 ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x178bc465 ib_redirect_mad_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x1fd00535 ib_process_mad_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x253e66f0 ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x3db94252 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x432379a2 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6108e76b ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6f077fcf ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7b5d4b7a ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x87d587ce ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x946d5d27 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x9c982f21 ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xc37a0234 ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xc701aa55 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xfe0f5baa ib_register_mad_snoop +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x22f07253 ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x3ab6f18d ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x576fdbac ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x62f248cb ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x655e2efe ib_init_ah_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x6e44fd9f ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x8001438f ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x89a421a4 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xa9324363 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xc459feaa ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xd56941c9 ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xddc330e7 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2569d757 ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x52a6ce77 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7971c00e ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe350f2aa ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x14f65d24 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x19840d22 iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x30acec07 iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x4048bf2f iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x83cc2663 iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x86b11561 iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xbe860b0d iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf93d3417 iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x0fe5f7c8 rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1542c6d7 rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x21fcff32 rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x2b35c3b8 rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x381d1523 rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3ec35ff5 rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4bdf0256 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x668ad327 rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x74ab9b95 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x79d9fd32 rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7d20fb08 rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x8c2e0db0 rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x91d9f35a rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xb97b3c64 rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xbcf39156 rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xbe774b90 rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd93b1710 rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xdf54d90f rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xed74d412 rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf17e6727 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xfcbe80af rdma_set_ib_paths +EXPORT_SYMBOL drivers/input/gameport/gameport 0x23d585f5 gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0x5436e93a gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0x7273d15f __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x8726429e gameport_start_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x93eeda83 gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0xaa56255b gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0xccd5f05d gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0xdd355141 gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xe84d6ce9 __gameport_register_port +EXPORT_SYMBOL drivers/input/input-polldev 0x49d00cc3 input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x525815d1 input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x943c3c67 input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xb7972c6c input_unregister_polled_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0x9c243642 matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x267dc312 ad714x_remove +EXPORT_SYMBOL drivers/input/misc/ad714x 0x5f44e9a6 ad714x_enable +EXPORT_SYMBOL drivers/input/misc/ad714x 0x9e10aef9 ad714x_disable +EXPORT_SYMBOL drivers/input/misc/ad714x 0xc9a467c9 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x86af04fa cma3000_init +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x892d76b2 cma3000_resume +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x89d9444e cma3000_exit +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xca3f100a cma3000_suspend +EXPORT_SYMBOL drivers/input/sparse-keymap 0x29d5c387 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x4c157aca sparse_keymap_free +EXPORT_SYMBOL drivers/input/sparse-keymap 0x585be413 sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x908916bb sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/sparse-keymap 0xd5667b51 sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0xe27b3d4b sparse_keymap_setup +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x573079b7 ad7879_pm_ops +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x576df5fe ad7879_probe +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x97f83edf ad7879_remove +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x04403fcf unregister_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x0b3f0529 capi20_register +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x14f2aa5a capi20_get_version +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2b8eab1f capilib_free_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2baa6586 capilib_new_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x31c24aa4 capi20_isinstalled +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x32230121 capi_ctr_down +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x37526193 capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x47d3fc51 capi_info2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x50b33ca4 capi_cmsg2message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6057c6f3 capi_message2cmsg +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x62e32d43 capilib_data_b3_conf +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6afdacbc capi_ctr_suspend_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6d72e341 capi20_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x71e8d5ba capilib_data_b3_req +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7a33596c capi20_get_serial +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7e6f1307 capi20_get_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x8f699913 capilib_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9f823278 register_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xa7c4fd6c capi_message2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xaa165d27 capilib_release_appl +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xaa69e6a4 capi20_put_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xaaae252b capi_ctr_resume_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb19fda8d capi_cmd2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb21b7e6a detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb60e5e5f capi_cmsg_header +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc10fe128 cdebbuf_free +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc7f8a7a2 attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xdc0b5d63 capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe19a11ac capi20_get_profile +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe8ad9bd1 capi_cmsg2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xed061606 capi20_manufacturer +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x0e62d7c8 b1_alloc_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x378a2be2 b1_getrevision +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x426b2f0f b1_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x4c590338 b1_parse_version +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x5b882264 b1_load_t4file +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x6088a6d3 b1_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x84ba58c4 avmcard_dma_alloc +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x85f09690 b1_irq_table +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x8683ed42 b1_free_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xd2170729 b1_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xd5e270bb b1_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xdfd28376 b1_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xe74da898 b1ctl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xec2d0910 b1_load_config +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xec9c5b48 b1_loaded +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xef9ad989 avmcard_dma_free +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xfa10fee4 b1_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xffc2be4c b1_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x2454d6d8 b1dma_reset +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x37287172 b1dma_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x3d9ef531 b1dma_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x3f770fe4 b1dmactl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x7fb20275 b1dma_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x9718dcd0 b1dma_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xaf264fe9 b1dma_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xc851ec30 b1pciv4_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xd6f9f1ea b1dma_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xe45dce59 t1pci_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0x29562993 b1pcmcia_delcard +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xaec3240e b1pcmcia_addcard_m1 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xea620116 b1pcmcia_addcard_m2 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xf14bf8b1 b1pcmcia_addcard_b1 +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x2974ead1 DIVA_DIDD_Read +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x7ab59853 proc_net_eicon +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x70f2b197 mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x9532d91e mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xe69e47d1 mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xf837ec8e mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x4e2e2f09 mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0xb1395cd2 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x07f4f2ce hisax_unregister +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x148f0c99 FsmFree +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x7f29ce36 FsmInitTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x93a64734 FsmChangeState +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x9ccfe05d hisax_init_pcmcia +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x9df0cd27 FsmEvent +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xe227344e FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xee93522c hisax_register +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xf0a16657 FsmNew +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xfc27303b HiSax_closecard +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xff2db2cf FsmDelTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x13586b83 isac_init +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x153dfb86 isacsx_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x3f3b323a isac_d_l2l1 +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x511cb15c isac_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x9052c51c isacsx_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x982909ae isac_irq +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xa1db1b6c isdn_ppp_register_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xce790b48 isdn_ppp_unregister_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xf51a3d32 register_isdn +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xfa06820f isdn_register_divert +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x3b71e4fc isdnhdlc_decode +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x59cc8a7e isdnhdlc_out_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x8ee38862 isdnhdlc_rcv_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0xfd9d4c09 isdnhdlc_encode +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x025a3419 mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x0481f268 bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x0cf2582d queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x0e7d38c2 dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x17c08234 mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2348cc3c mISDN_FsmFree +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x4862a59a mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x54451388 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x555086e2 recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x614ede30 mISDN_FsmAddTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6528907f get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x7351a1a3 mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x73d617d0 mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8a4e99fb mISDN_clock_update +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8eddd321 recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x96309324 mISDN_FsmDelTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa68ee8b7 recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xaf46589f mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xafec8413 bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xba0fa273 recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc84b6d55 mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xce308488 mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd285995f mISDN_clock_get +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd5145151 mISDN_FsmEvent +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xdb8166f5 create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe1e4fbcd mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe87943cf mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xede7bbc3 get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf1a828a1 mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf931c1a3 recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf9e7832f mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xfffaf312 mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x01087af0 mISDN_dsp_element_unregister +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x60721da7 dsp_audio_law_to_s32 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xa215f1b2 dsp_audio_s16_to_law +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xb98308d8 mISDN_dsp_element_register +EXPORT_SYMBOL drivers/md/bcache/bcache 0x2cfb72e8 closure_put +EXPORT_SYMBOL drivers/md/bcache/bcache 0x556d1e57 closure_wait +EXPORT_SYMBOL drivers/md/bcache/bcache 0x5ee12b32 __closure_lock +EXPORT_SYMBOL drivers/md/bcache/bcache 0x7d8a9214 closure_sub +EXPORT_SYMBOL drivers/md/bcache/bcache 0x89de3f61 closure_trylock +EXPORT_SYMBOL drivers/md/bcache/bcache 0xbcedd914 closure_sync +EXPORT_SYMBOL drivers/md/bcache/bcache 0xe3c17af1 __closure_wake_up +EXPORT_SYMBOL drivers/md/dm-log 0x12102752 dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0x3a3d28dd dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-log 0x65937afc dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0xaa49c5ed dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x14225115 dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x44e55221 dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0xcae69044 dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0xd9f2d34e dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0xe282994f dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0xecded892 dm_exception_store_create +EXPORT_SYMBOL drivers/md/raid456 0xb912e393 raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x0e2c96c9 flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x119b49d0 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x125ba8f1 flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x127300a4 flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x2317ed18 flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x2328a6e7 flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x3f3b4e73 flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x449bf6cd flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x45cd7e07 flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x74a33ce0 flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc3ae151c flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc479d32b flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xf20b282c flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x495e4b0c btcx_calc_skips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x8bcd236a btcx_riscmem_free +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xad2fe38b btcx_sort_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xc368f8e6 btcx_align +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xcda0ded2 btcx_screen_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xd487d190 btcx_riscmem_alloc +EXPORT_SYMBOL drivers/media/common/cx2341x 0x1ca0c084 cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0x2f25eee2 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0x3db8be82 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cx2341x 0x45df17f5 cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0x5b88faf6 cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0x85c75218 cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc184ec1e cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc203995a cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf76ce95 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf8b77a4 cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xe770c332 cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0x0c723ff3 cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x29f985f4 tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/common/tveeprom 0xfa5b2221 tveeprom_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x06634ae6 dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x08f46a94 dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x09b20674 dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0ffb20e4 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x101a29b8 dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1424b612 dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x17523ce7 dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x18c931db dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x196f1ac1 dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1a694bbb dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x237f7910 dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x244d6fde dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x300f2abb dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x355f58aa dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3ec19f2e dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4a22fa18 dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4c70c35a dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4f46ab3f dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x55bbb2a4 dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5fdd4038 dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x600ad5a5 dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x6360d6f2 dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x68508767 dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x727ece1d dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x74a5a698 dvb_filter_pes2ts_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7ac5494c dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80e3832d dvb_filter_get_ac3info +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x987dcfde dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x990b11e8 dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xac4ca1b0 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb2b492d5 dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb416425e dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb6a900d3 dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb72b5fa0 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc947d2ac dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd3ee7530 dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd68a099e timeval_usec_diff +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd7d60d35 dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdace1533 dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdf812e30 dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe5ae8707 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf58a63bb dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf826deb0 dvb_filter_pes2ts +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfcc0ed9c dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-frontends/a8293 0x0fbd9b31 a8293_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9013 0xd84b82b5 af9013_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9033 0x7e2c1e79 af9033_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0x0410d344 atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x3c20b359 au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x44814559 au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x7719e0c7 au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x88c633d3 au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xa6ffeb8c au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xbb8ea566 au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xc84fb509 au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xca0114bd au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xf3306c68 au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0xd093bc71 au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0x3afd9560 bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0x70679877 cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0x01668626 cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0x341f2599 cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x9537aef8 cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x973a42bf cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0x8ef74a09 cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x218e522b cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xdee32f59 cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0xb7e8ffae cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x69fcc6b9 dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x74476cf2 dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xad26f8b8 dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xb29de341 dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xfbdb436b dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x0edaf81b dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x1b5ce29d dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x2616c5bc dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x33ce1961 dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x6371d4c7 dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x6b4fbb92 dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x8370cfd6 dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x8d6e7d14 dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x8f9fc2cf dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xa8fbe85f dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xa938438d dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb0d84c10 dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xba3eb3d4 dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xd6e9c6a7 dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xecc9e106 dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0xcb531a53 dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x00c7c7ca dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xac4c4255 dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xb099339b dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xb6e77b1b dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xc3a40abb dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xd6fb3296 dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x4c43bb51 dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x64a0cfa6 dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x79b708cb dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xf80116f3 dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x239cd938 dib7090_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x36926aea dib7000p_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x3a0ed46c dib7000p_get_agc_values +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x4dbc3465 dib7000p_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x51d0f00e dib7000pc_detection +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x572c490f dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x59ab8a06 dib7000p_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x5abda3bc dib7000p_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x5d99d948 dib7000p_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x651ef861 dib7000p_set_agc1_min +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x6af5f0de dib7000p_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x844255ee dib7000p_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x98f319c3 dib7090_slave_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xbc895e83 dib7090_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xcbc52750 dib7090_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xffe75405 dib7000p_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x09fcc1da dib8000_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x0dea08f3 dib8000_remove_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x57a857a1 dib8000_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x5e185626 dib8096p_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x6d4e2e91 dib8000_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x6daf0092 dib8000_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x6faa7421 dib8096p_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x70f2d91a dib8000_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x782857a9 dib8000_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x830054de dib8000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x88be6707 dib8000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x9cae93bb dib8090p_get_dc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x9d07bce5 dib8000_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa03b4007 dib8000_pwm_agc_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa36a5066 dib8000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xab35dcfc dib8000_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xaf0d3daa dib8000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xc6400f40 dib8000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xcbe5ba3e dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x10f3cf3a dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x419b53d4 dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x4c7d63c2 dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x9d137e8a dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xad3ad91c systime +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xe713e6a8 dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x1542d8d7 drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x27bdf78b drxd_config_i2c +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0x81731065 drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0xb3077f13 ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0xbeaae1a0 dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0xf2ec243a ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0xc09ad686 isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0x21ace238 isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0x51f15b09 isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/it913x-fe 0x3c6028a5 it913x_fe_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0x717801dc itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0x5e2606e9 ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0xdce839ee l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0x5ac4f288 lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0xf2cad658 lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0xa0010015 lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0x7c73d435 lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x1bbd03c0 lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0xa4bc89f3 lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0xce0f4018 lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0x92322b77 m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0x987a33b5 mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0x9f6f1688 mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0x3479f247 mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0xd512a689 mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0xbb2d4beb nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0x8f2bdc53 nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0x3a57a70c or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0xfe1ba123 or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0x6fff4ac6 rtl2830_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0xbee1e6e4 rtl2830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2832 0x21b9306a rtl2832_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0xdad642c5 s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0x46b030c3 s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x3517f76b s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x4d5526db s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0xd066269e s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0x640c14c8 si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0xd6bb4d88 sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0x4e27b453 sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0xe932388c stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0xb6dfe90c stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0xe93a8ce6 stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0xd871bfd1 stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0xea36b7c2 stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0xa87554ee stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x3bca24d0 stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0xe30904ed stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0x631d17cc stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x0157629a stv090x_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0xe5848730 stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0x9a0753e0 stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0x8b9c2ee8 stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0xb9bfcc02 tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0x332d0c00 tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0x5e24eb5d tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x2a4f910b tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0xfa23021f tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10071 0x11dbd4e6 tda10071_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0x46179489 tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0x196195d9 tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0x717daf4a tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0xe8667a09 tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0x6e7bd3b9 tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0xa074c6bf ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0x2cce6241 tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0x0cc2e3e9 ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0xb58872cf ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0x6aa897af zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0xe8d15d2d zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0xc36088dd zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x5bb1fdf7 flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x5ffd9ac0 flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x968900ff flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x9e112fd0 flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xc84c4948 flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xcff15800 flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xf77fcdc6 flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x1a7944bc bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x4bfbe280 bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xbbb1e7e8 bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xbdce397f bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xd5d0bdef bt878_num +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x11dc4b6d bttv_gpio_enable +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x772ffcb4 bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x897a80a7 bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8d9ab18c bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x01775ab8 dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x0807d49f dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x5c53afcf rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x74d63009 read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x75cc6dbf write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x7d981539 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xc37d36a2 dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xdfb140ab dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe94b8c9c dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xf95a0c4d dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0x1f6844b6 dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xa2d96e4e cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xacbcd79a cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xb5be4b72 cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xe8cd8154 cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xfbe1974d cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x1036c49e altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x3c81aca4 altera_hw_filt_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x707e2055 altera_pid_feed_control +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x9247b72f altera_hw_filt_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x052378d5 cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x4e0a230c cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x6307feee cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x784853c3 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x7d340c91 cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xc40f3918 cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xc5d38741 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xe8a1b345 cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x5118456c vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0xd6de1514 vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x42ca7523 cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x66cd3bef cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x8c317eda cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xefe0162f cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x2a0b38bf cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x463fc355 cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xb405ba61 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xc87800c2 cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xd9f33129 cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xe1b1f135 cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x026b5074 cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x138fefed cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1581f1f4 cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x2304b141 cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x26c1111e cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x34f175c6 cx88_risc_stopper +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4216fc84 cx88_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x591d76f4 cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x5d642f96 cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x60e7ec45 cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6141c8c5 cx88_tuner_callback +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x629b2012 cx88_free_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6ebdea45 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7642ed3c cx88_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x8e49efec cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x904b8696 cx88_audio_thread +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x9549fef3 cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x98bf5573 cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x9903a8a6 cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x9e758b52 cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xa68d904f cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xab89cc69 cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xade8eaed cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc555c000 cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xeaeefb30 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xecfee610 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x15d91294 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x1b0b80ef ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x3cff99d3 ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x43ff2abd ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x55ec5b76 ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x6311c166 ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x7d7f9559 ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x7ef97faa ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x82496299 ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x85838676 ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x8ac7eee1 ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x983aa03f ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xa6f36f3f ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xac889ad5 ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xbcf8bc2b ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xe487a35f ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xf77279e8 ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x01651beb saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x04e83446 saa7134_tuner_callback +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x06724cc5 saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1211df5d saa7134_devlist +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1666c3b0 saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x277d7f9a saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x3fd6d771 saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x453eb089 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x73039031 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xadae47fb saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xb6e30090 saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xcab5d48d saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xcc350da6 saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xcc520fce saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xf407d01f saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x3fbd3413 ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xc3e4c127 ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x3a1c6fea videocodec_unregister +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x484c91d1 videocodec_register +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0xc527f854 videocodec_attach +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0xd028a184 videocodec_detach +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x07f77a78 soc_camera_lock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x244dd8ef soc_camera_apply_board_flags +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x88aa9605 soc_camera_host_unregister +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xd1e1f394 soc_camera_unlock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xd64b0a39 soc_camera_power_init +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xf5b6861f soc_camera_host_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xfa58962f soc_camera_xlate_by_fourcc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xfb17daa5 soc_camera_power_off +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xfcad8703 soc_camera_power_on +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x25c52d97 soc_mbus_samples_per_pixel +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x2863728e soc_mbus_image_size +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x5f3e3558 soc_mbus_bytes_per_line +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xa9546115 soc_mbus_find_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xc8b28da5 soc_mbus_config_compatible +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xfe2c3a07 soc_mbus_get_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x0028a03f soc_camera_calc_client_output +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x13e70288 soc_camera_client_g_rect +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x157381f2 soc_camera_client_scale +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x6eec740d soc_camera_client_s_crop +EXPORT_SYMBOL drivers/media/radio/tea575x 0x3ab88d29 snd_tea575x_exit +EXPORT_SYMBOL drivers/media/radio/tea575x 0x53a04176 snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0xe69364da snd_tea575x_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xf1d482cc snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x002def2a lirc_dev_fop_ioctl +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x00f819bd lirc_dev_fop_poll +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x04dca738 lirc_unregister_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x3cae48cf lirc_dev_fop_read +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x57a0af22 lirc_dev_fop_close +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xa524fa22 lirc_dev_fop_open +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xf0725809 lirc_get_pdata +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xf2ac2179 lirc_register_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xfcf55d54 lirc_dev_fop_write +EXPORT_SYMBOL drivers/media/rc/rc-core 0x3f83619d ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0x68a051d1 ir_raw_handler_register +EXPORT_SYMBOL drivers/media/tuners/e4000 0xdd7e0552 e4000_attach +EXPORT_SYMBOL drivers/media/tuners/fc0011 0x0691fee6 fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0x0eb35df9 fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x0806cbc8 fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x399d944f fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x465045a4 fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/fc2580 0x54bbcee6 fc2580_attach +EXPORT_SYMBOL drivers/media/tuners/max2165 0xef677583 max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0xaf252674 mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0x584e6755 mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0x730d0f11 mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0x1ecb43c1 mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0x3911dc7b mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0xf3246057 qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18212 0x3abf9530 tda18212_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0x3c1972fc tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tua9001 0x254aaa43 tua9001_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x0cb4b189 tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0x2705183b xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/tuner_it913x 0x6119a97f it913x_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0xbcb7775d xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0x5d420a8d xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x5edbdc0c cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xf5956d37 cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x1b300411 dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x5a1315d8 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x775f8e04 dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x94d59dc3 dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xb71dd3f0 dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xbcb1a0a9 dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xcf6c365f dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xdbafd867 dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xee4591a1 dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x0350084e usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x42b37ddc dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x70eeac42 dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x732f9188 dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xa0cae2a4 dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xac08dd6c dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xbee5b05b dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x13e247e0 rc_map_af9005_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x276f83e2 af9005_rc_decode +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xd4e288db rc_map_af9005_table_size +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x28edcb99 dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x3f4f67b1 dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x7e48f642 dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x95323e6d dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb47559e0 rc_map_dibusb_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xbaeb7de3 dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xbdda4be9 dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xc15ac6cf dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xd232e278 dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xd3bd618b dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xd3e3124f dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xef99ff52 dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x0a38123a em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x1a5308d5 em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x2a68454f gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x2bd8d77e gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x2f275f40 gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x4008d05d gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x61d55752 gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xb0803a54 gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xf62f0e1b gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xf8430179 gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x332452e8 tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x6f870fbb tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xb0f98351 tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0xc8d63107 ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0xe31130cd ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x42c8e001 v4l2_ctrl_next +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x4adaf0f3 v4l2_ctrl_query_menu_valid_items +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x53c9394f v4l2_ctrl_query_menu +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x5f96a661 v4l2_ctrl_check +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0xabe27502 v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x7c4116bd v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x9f66a741 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xe81291e9 v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x1c0e6dfd videobuf_dvb_register_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x40e7a800 videobuf_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x7bc18592 videobuf_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x86e56ce4 videobuf_dvb_find_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xc5a74157 videobuf_dvb_get_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xe5f14494 videobuf_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf2-core 0x3e685d44 vb2_querybuf +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0236ae8c v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x07d71bef v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x08aacd03 v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0b638858 video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0efcbd8e v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x119aeca3 v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x12432960 v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x128d62cd v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x18ffc020 v4l2_subdev_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1b9b7730 v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1c895d83 v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x22529e11 v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x299069bf video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x30d496e5 v4l2_subdev_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x326e14c0 v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x32fe879e v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x33c9c535 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x35ce9ec2 v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x36847d11 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x368f1885 v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x38d59e39 v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3b10d93a v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3e103f2a v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3f676c98 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x43ba2b40 video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4486bf9e v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x495426ee v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x64e97608 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6caca6dd v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x73d5f35e v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x757d01b2 v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x796ecef9 v4l2_subdev_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7a3cd015 v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7b5061b2 v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x84758f42 video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x85dcf233 video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x89231a84 v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8fb50a70 v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x991b60bc v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x99bd5b2b video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9bee36bc v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9cc4fd48 video_usercopy +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9e2a070f v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa1ac1e62 v4l2_subdev_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa518fabd v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa8de9729 v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xaa5e5346 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xadd441d3 v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb1d29c9e v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb290345a v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb30dc6f3 v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb5846310 v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xba5745ef v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbac4a225 v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbbabe5ec v4l2_subdev_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc12cf8f8 v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc1f229f5 v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc8e69bde v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd332322c __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd775688d v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdef4d00c v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdf48d083 v4l2_ctrl_add_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe14f5087 v4l2_subdev_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe4001c01 v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe6fce6f2 v4l2_ctrl_merge +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe955834c v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfa2ffbd8 v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfbd97550 v4l2_subdev_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xff216925 v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xff2e6013 v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xffc47b9c v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xffef8cec __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/memstick/core/memstick 0x23735313 memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x328ada44 memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x45d2767e memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5d820a02 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x711408ae memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x750ab45f memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x7d38b621 memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x9884b65f memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa5987a36 memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xb0cb7df4 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0xb252f3af memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xd436debf memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xdce294f7 memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0xfc9b78d4 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x087aa745 mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x0b5b104a mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1248810d mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1989df0d mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2622cd18 mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x32dab045 mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3763a02d mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3adc76aa mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4526289b mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x49270a20 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x524b078c mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5fc8b266 mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6466f1e9 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x66562f56 mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6a46b872 mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6d4eed0b mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x70371663 mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x70fea697 mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7201f033 mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8a90ca62 mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8bd74c5d mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x946c9d0e mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9c33cb07 mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa642f7ac mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc0e69f82 mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc24f82cd mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc47c22e8 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd9a92a75 mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xda86009c mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe908293a mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf09e5294 mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf3c8b9d2 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf92a2f72 mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0692d622 mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x17003b01 mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2868bd7f mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x493abdf6 mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x57bc472e mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x6516c76a mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x79950576 mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8046ee2a mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8144b323 mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x88e4cd15 mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8e12f4ed mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8e3930d2 mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xab46c84b mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xacd48461 mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xad828c74 mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xbccad398 mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xc4e0d297 mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd009cf2e mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd543bf26 mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd61d69c1 mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xdeb2aedf mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe240fd22 mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf2d7520c mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf4ea1060 mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf642e7ea mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf7ecd9bd mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf9d74a4a mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x06a5cf88 i2o_parm_issue +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x11ed7b81 i2o_driver_notify_controller_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x15d9fdfb i2o_iop_find_device +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x261cc7d6 i2o_device_claim_release +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2a843bef i2o_dump_message +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2bfd8fa4 i2o_driver_notify_device_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x3d1dc1dc i2o_parm_table_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x40c809d7 i2o_driver_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x412f4180 i2o_driver_unregister +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x504b756f i2o_status_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x54e6404d i2o_msg_post_wait_mem +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x550d658f i2o_device_claim +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x749e661e i2o_msg_get_wait +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x929c9dbf i2o_find_iop +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x981e156a i2o_driver_notify_controller_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb4c00dcf i2o_controllers +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb902a90c i2o_event_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xcfcdf31b i2o_exec_lct_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xe8e5e1f3 i2o_driver_notify_device_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xee6449e7 i2o_parm_field_get +EXPORT_SYMBOL drivers/mfd/cros_ec 0x86da6c0e cros_ec_prepare_tx +EXPORT_SYMBOL drivers/mfd/cros_ec 0x895a901a cros_ec_register +EXPORT_SYMBOL drivers/mfd/cros_ec 0x97ee5fe0 cros_ec_remove +EXPORT_SYMBOL drivers/mfd/cros_ec 0x9dfa7ca4 cros_ec_suspend +EXPORT_SYMBOL drivers/mfd/cros_ec 0xb557dd3d cros_ec_resume +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x305ac995 pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x7c1c798b pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0dedc23d mc13xxx_irq_request_nounmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0e1bc4d7 mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x236ebd32 mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x3e5333ab mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x5ac92eb5 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x85ef25be mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x8aaecfde mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x9538b8e5 mc13xxx_irq_ack +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x984dd7f7 mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x9a84b573 mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xa807d477 mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xe647dd2a mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xefa2ed24 mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/tps6105x 0x226c3ad3 tps6105x_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0xa18d6306 tps6105x_mask_and_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0xce2e284e tps6105x_get +EXPORT_SYMBOL drivers/mfd/tps65010 0x02d4ad0f tps65013_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0x0c6ad2cf tps65010_config_vdcdc2 +EXPORT_SYMBOL drivers/mfd/tps65010 0x28485130 tps65010_config_vregs1 +EXPORT_SYMBOL drivers/mfd/tps65010 0x33739de7 tps65010_set_vib +EXPORT_SYMBOL drivers/mfd/tps65010 0x9fd44c69 tps65010_set_led +EXPORT_SYMBOL drivers/mfd/tps65010 0xb14080cc tps65010_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0xd5bb106d tps65010_set_vbus_draw +EXPORT_SYMBOL drivers/mfd/tps65010 0xe99b3f36 tps65010_set_gpio_out_value +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x3089f00c ad_dpot_probe +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0xd56b287b ad_dpot_remove +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x8a05ed90 altera_init +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x41fdac9a ssc_free +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x5cd5df8e ssc_request +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x0e9755b9 pwm_channel_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5a8b82f9 pwm_channel_handler +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5d5c2951 pwm_clk_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x6a5e1f70 pwm_channel_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x73330c97 pwm_clk_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0xeb7f2c6f __pwm_channel_onoff +EXPORT_SYMBOL drivers/misc/c2port/core 0x556042d4 c2port_device_register +EXPORT_SYMBOL drivers/misc/c2port/core 0x69a1b61d c2port_device_unregister +EXPORT_SYMBOL drivers/misc/ioc4 0x62041893 ioc4_unregister_submodule +EXPORT_SYMBOL drivers/misc/ioc4 0xce14fb46 ioc4_register_submodule +EXPORT_SYMBOL drivers/misc/tifm_core 0x1ac941c1 tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x1ce4d52d tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x27131a0e tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x39f86aa1 tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0x642ea8d2 tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x9983958b tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0xa52fd9c0 tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xb5ffed42 tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xcc045ce0 tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0xd5a6bbba tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xe2417ae9 tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xf7f81494 tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0xfcb004a4 tifm_alloc_device +EXPORT_SYMBOL drivers/mmc/card/mmc_block 0x92db259b mmc_cleanup_queue +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x26fb2299 cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x320052e5 cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xf4f5c74f cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x0dd43908 map_destroy +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x6c7c01bd unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x74f18ea9 register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x76902409 do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0x9450c9da mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0xa1efdad8 lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0x43139453 simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0x5e21041d mtd_concat_create +EXPORT_SYMBOL drivers/mtd/mtd 0x5e2531fd mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/nand/denali 0x84f5f132 denali_remove +EXPORT_SYMBOL drivers/mtd/nand/denali 0xd3c1c66d denali_init +EXPORT_SYMBOL drivers/mtd/nand/nand 0x359ae952 nand_lock +EXPORT_SYMBOL drivers/mtd/nand/nand 0x50d4ed28 nand_scan_ident +EXPORT_SYMBOL drivers/mtd/nand/nand 0xbadef3cb nand_scan +EXPORT_SYMBOL drivers/mtd/nand/nand 0xe730d70c nand_unlock +EXPORT_SYMBOL drivers/mtd/nand/nand 0xe83ab21d nand_scan_bbt +EXPORT_SYMBOL drivers/mtd/nand/nand 0xeffa2a90 nand_scan_tail +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x0b5a38ab nand_bch_init +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x407e96f2 nand_bch_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x45ca2af1 nand_bch_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x70097aa0 nand_bch_free +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x0166ff99 nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x232af75f nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x3132ee65 __nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xb4b94377 __nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0x57a31e57 nand_flash_ids +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0xa336feb7 nand_manuf_ids +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x124be3b5 onenand_addr +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x38927edd flexonenand_region +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x785422ce onenand_scan_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0xba2d133c onenand_default_bbt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x037e7c74 arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x04c14387 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x1acd8a28 arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x2d476bdd arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x46bb3d09 alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x788bcb83 arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x99ed7658 arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xb94eaf7f arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xf5a8d081 arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xfbe46fe2 arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x183c4397 com20020_found +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xa925ab9a com20020_netdev_ops +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xc26f10eb com20020_check +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x0297a5ae ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x2f84669d ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x6a191dcd ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x6a856ab5 ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x6fbd3848 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x7c9803e5 ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xaeb4d7cb ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xd0570e2b ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xe2b86584 ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xff238c3f __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0x04bb80f5 eip_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0x33a9eaa7 NS8390p_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0x4dc4d007 eip_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0x75d6ff92 __alloc_eip_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0x8cb6790a eip_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0x8fa58c07 eip_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0x976ffc43 eip_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0x99c03fd7 eip_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0xa637239f eip_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0xa66f5132 eip_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0xd7bf3177 eip_open +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0xe8be8520 cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x05013880 t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x2a67a4dd cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x2e63e6d3 cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x3376c22f t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x3913b265 t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x47f973b9 cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x4d583a73 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x4f721402 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x57ac0a65 cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x6c7fe011 cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x80d0e1e9 t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x958c7115 cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x9d546cb6 dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xac155a74 cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xe94cba4a t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf54f41ca cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0e7c55d5 cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1be43558 cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2ba0ac52 cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2fe45736 cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x30323c74 cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3638634b cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x38e7d008 cxgb4_disable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3fc554d7 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4a14f29d cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4b937cb6 cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6966679f cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x739c83c1 cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x819fab46 cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x919dcf33 cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x97187576 cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x97c16d9a cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x99f11e6b cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb26240cd cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb2bf4c8b cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcd848c58 cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd00e5a36 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd10f347c cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd4c4fd1f cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd9b9e9d6 cxgb4_enable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xdfffa932 cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf00391f7 cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf27b01e9 cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xfbbed499 cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xfcfca5b1 cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x0e712340 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x26d45750 enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x315bf589 vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x431255c4 vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x4f650da7 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9196d804 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x05fc5406 be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x7c57d0cf be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xbab62e22 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0281de33 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x029ccb42 mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x06dd8b8a mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1065be86 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x20bface7 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x283f950c set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x286e1d16 mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x467e6b89 mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x58ec77c5 mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x604e94c9 mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x61b8c426 mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x79bebe00 mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7ded6d00 mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x97adf2f5 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa52d9d2f mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa733c275 mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaba1bd65 mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb4f2dbcc mlx4_set_stats_bitmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbb788acf mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbf1ed3dc mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc3c8a31f mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe8b66c3b mlx4_test_interrupts +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf0afd35c mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf465228c mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1065395c mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x11d362b2 mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x12777d97 mlx5_core_query_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x173d18c9 mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1d8c69fb mlx5_core_destroy_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1ec025fa mlx5_dev_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x23142984 mlx5_core_arm_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2639c532 mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x288d2733 mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x30a31485 mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x33e8ae2c mlx5_core_dump_fill_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x46d77b03 mlx5_cmd_comp_handler +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x70c9a45a mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x91e03f00 mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x989bc60c mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9b04f66c mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa16b9d61 mlx5_core_create_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc36273f8 mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc3a19230 mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc4f55b52 mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc6d1ab5c mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcd174ccd mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcde5a0d8 mlx5_core_get_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd11fcd8b mlx5_dev_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdffd4a6f mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf2950d99 mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf4e5cf9b mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x2961d4c3 hdlcdrv_register +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x59b14cee hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x64fc4cd6 hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xa5955dcc hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xd40eaa79 hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x045160b2 sirdev_raw_write +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x35369a9d sirdev_get_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x3d6289e2 sirdev_raw_read +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x6035ad14 sirdev_receive +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x6b4be7c0 irda_register_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x71ae3ad5 sirdev_set_dtr_rts +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x93323a33 sirdev_set_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xc8c95da5 sirdev_put_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xd4161683 sirdev_write_complete +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xeabe589e irda_unregister_dongle +EXPORT_SYMBOL drivers/net/mdio 0x22bce513 mdio_mii_ioctl +EXPORT_SYMBOL drivers/net/mdio 0x43e4defc mdio45_nway_restart +EXPORT_SYMBOL drivers/net/mdio 0x7577f992 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0xa1a29548 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0xb34a7575 mdio45_ethtool_spauseparam_an +EXPORT_SYMBOL drivers/net/mdio 0xc6b1163f mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0xddc98749 mdio45_ethtool_gset_npage +EXPORT_SYMBOL drivers/net/mii 0x1538eb34 mii_check_link +EXPORT_SYMBOL drivers/net/mii 0x35e03610 mii_link_ok +EXPORT_SYMBOL drivers/net/mii 0x8be1c90e generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0x951f42d3 mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0xaf077383 mii_check_media +EXPORT_SYMBOL drivers/net/mii 0xb0d317d1 mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0xbf57874d mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0xd04a4764 mii_check_gmii_support +EXPORT_SYMBOL drivers/net/ppp/pppox 0x2c3b9961 register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0x83d0b040 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xab507d9e pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/sungem_phy 0xfaf6cf23 sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x488a05b5 team_mode_register +EXPORT_SYMBOL drivers/net/team/team 0x69adb62d team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0xafb6faed team_options_register +EXPORT_SYMBOL drivers/net/team/team 0xd12eb25a team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0xdf8236a2 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0xe0c3c638 team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0xeb744b08 team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0xfa1e744f team_mode_unregister +EXPORT_SYMBOL drivers/net/usb/usbnet 0x4eda3905 usbnet_link_change +EXPORT_SYMBOL drivers/net/usb/usbnet 0x599bd736 usbnet_manage_power +EXPORT_SYMBOL drivers/net/usb/usbnet 0xc5ad7b99 usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/wan/hdlc 0x13733ebf register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x14b8fd3f detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x3098b261 unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x3c72de9e hdlc_change_mtu +EXPORT_SYMBOL drivers/net/wan/hdlc 0x71168368 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x85742c21 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0x89e380f7 hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0xac346cb5 hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0xc8f32299 hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0xcda5b3fd alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0xe6228e87 hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/z85230 0x10c78988 z8530_dead_port +EXPORT_SYMBOL drivers/net/wan/z85230 0x3cde0062 z8530_null_rx +EXPORT_SYMBOL drivers/net/wan/z85230 0x43015db6 z8530_init +EXPORT_SYMBOL drivers/net/wan/z85230 0x4dabfebb z8530_queue_xmit +EXPORT_SYMBOL drivers/net/wan/z85230 0x4ee9e36c z8530_sync_txdma_open +EXPORT_SYMBOL drivers/net/wan/z85230 0x588a0b64 z8530_sync_dma_close +EXPORT_SYMBOL drivers/net/wan/z85230 0x5cd24d29 z8530_hdlc_kilostream +EXPORT_SYMBOL drivers/net/wan/z85230 0x8d097e05 z8530_sync_open +EXPORT_SYMBOL drivers/net/wan/z85230 0x9ad59fd6 z8530_describe +EXPORT_SYMBOL drivers/net/wan/z85230 0x9f741341 z8530_channel_load +EXPORT_SYMBOL drivers/net/wan/z85230 0xa000cdd6 z8530_nop +EXPORT_SYMBOL drivers/net/wan/z85230 0xa69271a5 z8530_sync +EXPORT_SYMBOL drivers/net/wan/z85230 0xaae5ef57 z8530_sync_dma_open +EXPORT_SYMBOL drivers/net/wan/z85230 0xd4ffebf0 z8530_interrupt +EXPORT_SYMBOL drivers/net/wan/z85230 0xda3d366b z8530_shutdown +EXPORT_SYMBOL drivers/net/wan/z85230 0xddc8d72d z8530_sync_close +EXPORT_SYMBOL drivers/net/wan/z85230 0xe3d80064 z8530_hdlc_kilostream_85230 +EXPORT_SYMBOL drivers/net/wan/z85230 0xe965ee4c z8530_sync_txdma_close +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x21781116 i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/airo 0x4ccbe4c8 stop_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0x6add1e06 reset_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0xe180d1bc init_airo_card +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x183f10b2 dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x296dff40 ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x319c6026 ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x3fb6ae2d ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4694dab2 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4e2481d5 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x53358ce3 ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x962b5e08 ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xa45524f5 ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xb184b5d5 ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xc4193ed0 ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xc9ad3c1b ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xddf73b0d ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xfbc095de ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x12ae5667 ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3642364c ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5282f375 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x6ac22409 ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8246be6c ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x893c1e87 ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x895f9dc2 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaf096710 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xcd20b1ba ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0199ec46 ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0520e702 ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x27cf1694 ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4c6ddcb4 ath6kl_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4e1380ee ath6kl_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x54c85857 ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x75f93587 ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x794a0754 ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91a0ec10 ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xb5805b6f ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xc451e2bf ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xc9f2e190 ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xd8416bd9 ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xda2cc9e3 ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x2707f75b ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x3d5912f7 ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x91fc76f5 ath9k_hw_wow_event_to_string +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0xd895768a ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x309f6ce0 ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x59262dda ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x959e97d6 ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xaee2534f ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x00704d32 ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0089fb24 ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x045ae683 ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0482e455 ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x055b1997 ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0a7fcf58 ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0bf271be ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0ea6c288 ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0f7150a9 ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x100f1741 ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x163bcb48 ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x17499b04 ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1c4eeb0b ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1fae05e0 ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x21cdd646 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2301aeca ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x23d1b473 ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x270cb705 ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2e8d49b1 ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2f38af1c ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x33009c40 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3507cbf8 ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3e1f7312 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3fee519e ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x423bc131 ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x48d3de64 ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x491f86ec ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4b20811d ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4ca7b225 ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4f10ec23 ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4f3f6d6f ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x50815a86 ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x51569df9 ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5315eb56 ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x55f01e5b ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x56243fc9 ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x59a9c7df ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5ce4a6d0 ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6343268f ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x634ca643 ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x65c566d8 ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x664eb3b2 ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6710ef10 ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x68bf7ab4 ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6a573e56 ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x740609eb ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x761f8ca0 ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7fc2b8a5 ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x812d6f26 ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8bfc99ac ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x90caa522 ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x92968781 ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9569d134 ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x97ad2046 ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x97d5236e ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x987f0ff9 ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x99567586 ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x99dfe2d9 ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9ac16d63 ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9b9f04a4 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa1293342 ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa43308b5 ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa8475424 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaa61b3bc ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xac19d354 ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xac5fb71f ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xae3c79f0 ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb748ba7a ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb8a81fc1 ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb9462e75 ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb9569695 ath9k_hw_cfg_gpio_input +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbf6c6e1f ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbf8f0d17 ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc459f177 ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc8e2d892 ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc96dde16 ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcc0ffccf ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcf72ec20 ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd155529c ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd3f01915 ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd51538e8 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd7115e1c ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd8e15179 ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdc0db752 ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdd135a57 ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe0237440 ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe275ea7f ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe2fc194c ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe2fec0b2 ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe64689f6 ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe8bdf482 ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xebb56d18 ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xedda044d ath9k_hw_cfg_output +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf0096f09 ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf1a4421f ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf2cea48e ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf55f1b37 ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfc299b27 ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/atmel 0x12e2b66b atmel_open +EXPORT_SYMBOL drivers/net/wireless/atmel 0x41a89632 stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel 0xd2bddc36 init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0x28ea783d brcmf_sdio_remove +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0x757d1095 brcmf_sdio_probe +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x19dd63c9 brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x20977ccb brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2dc227f8 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x452314fd brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x56f8ae49 brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x6ab8865b brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x70079554 brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x711a651f brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x81d375b8 brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x8bf03a55 brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xa17aceb5 brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xe645d5cc brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xf0c565c9 brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xf4099de8 brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x03cf71c9 prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x090ab37a hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x0ad69602 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x33bc9018 hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x3c5f3e96 hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x481f85bf hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x5e0da6c1 hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x65ab011f hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x694b5690 hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x6f5b85d1 hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x7354fab2 hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x7668bf31 hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x8c627390 hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x907949be hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x90b7ccec hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa12ad27f hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa307c125 hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa3a6df4c hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa636bb6c hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb03cbe4c hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb2a945e0 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb3fdfee8 hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xbeff4c64 hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc354c771 hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe4e19923 hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xf54d88c7 hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xf975b99b hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xfc62910b hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x2969db81 libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x3bf90300 libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x3e496e2a libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x438220f1 libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x4e8145a8 libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x598d410c libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x73126969 libipw_rx +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x7374eeff libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x7f0d1640 libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x85afed60 libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x8df658c2 free_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x9509dab5 libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x9ba7d6f9 libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x9bc8db65 libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xad9777c7 libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xbbb66e6f libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xd34aa048 libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xd5542d38 libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xef30838a libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xf332a7f0 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xf3401425 libipw_change_mtu +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0162f91a il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x03692c2e il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x07b7900e il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0a675aa0 il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0ad5cda4 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0c6bfcce il_set_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x14008107 il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x14df4d9c il_apm_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x14e7d8b0 il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1b21e0df il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1e28a58d il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1fcd4b1f il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2410efb3 il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x28222096 il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x282c07d2 il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x29ee5ef9 il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2aa921a1 il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2f036ee9 il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2fab80e3 il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3108d996 il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x314a91fc il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x325c69b7 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x35eddb27 il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x37442f68 il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x380ca43e il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x38d3835d il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3e12aeee il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3e28916e il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3e5b8e10 il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3e7b3ac8 il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x427b127b il_leds_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x44460f51 il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x46824c2a il_init_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4aa39103 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4d23a888 il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4eb8ec90 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x50265931 il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5075cba5 il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x517eee60 il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x564c6740 il_debug_level +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x583df6e2 il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5a065b56 _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5af0814d il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5d1fe78d il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6307c372 il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x646ad7b0 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x676df29f il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x68f80857 il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6975fd26 il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6d373ea2 il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6e98a0a6 il_free_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x73201b01 il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x75257f74 _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x76adabff il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x77eafe6d il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7a888029 il_force_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x86138d57 il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8dbf286e il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x950c61f0 il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x96421e28 il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x966223e4 il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9685079a il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x98b7d330 il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x99237a83 il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9a1efefb il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9e539f1a il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa25762c4 il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa4c0fb4e il_set_rate +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa7156adc il_mac_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xac0043da il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xacd2d4ae il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xae66870b il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xaf2e0720 il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb3c899ac il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb40049db il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb6cf6894 il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7bebac0 il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7ec67be il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbfd7a80c il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc046fcdf il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc0862075 il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc1c4660b il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc39cf12c il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc4e5e45e il_pm_ops +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcac8ce11 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcb53d766 il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd2f53089 il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd584be92 il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdddad29f il_update_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdedad890 il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe435493a il_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xeb75e8ba il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xeb768053 il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xeca722d7 il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xefa56a80 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf125d7df il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf3a8c3d7 il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf4ea327d il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf501278b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf7715cf2 il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf7d9ad62 il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfa2d7b6b il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfdee97ca il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x08ee1e7d __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0d9eb5ff __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0e7bc05f __tracepoint_iwlwifi_warn +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x201337b4 __tracepoint_iwlwifi_dev_tx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x249e4b06 __tracepoint_iwlwifi_dev_rx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x36dcef55 __tracepoint_iwlwifi_dev_iowrite32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x4919d1a5 __tracepoint_iwlwifi_dbg +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x67381a2a __tracepoint_iwlwifi_dev_ucode_error +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x79e9bf26 __tracepoint_iwlwifi_crit +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x7edec07d __tracepoint_iwlwifi_dev_ioread32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x8bfcc307 __tracepoint_iwlwifi_info +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x9a12c9c5 __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xc0827b2f __tracepoint_iwlwifi_dev_iowrite8 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xda36f3a4 __tracepoint_iwlwifi_err +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x144b8118 orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x1b4cd5fa orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x3488d4e9 orinoco_up +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x4c4fb211 orinoco_open +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5a3eea40 orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x6e6d3ea6 orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x7c8a57ae free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x90e07740 orinoco_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x9d0b87b4 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xae1f114c orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xaf837859 orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xb5ab79a9 orinoco_down +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xc6f76b15 alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xc7d106f3 orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xe1f16a64 __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xfe35c881 orinoco_get_stats +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xfe5449e9 __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/btcoexist/btcoexist 0x3fe8ed58 rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x05c592d9 rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x09fd8184 rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0c506329 rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0d6bd57f rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x16403388 rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x18ec69ec _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x18ef236b rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x23574869 rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x28e83adc rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x2d161f75 rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x2e88548b rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x35ed354a rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x41d37732 _rtl92c_phy_dbm_to_txpwr_Idx +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x4db8b7bf rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x54bfac10 rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x56c45e98 rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x6c4d8336 rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7268cdc6 rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8057ddcf rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x892f741f rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8f15820e rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8f6e729e _rtl92c_store_pwrIndex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8fa02b01 _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x900aba5a rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x9232e9e1 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x9ad90d56 _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x9f915739 _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa6c527b3 _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa81bdeec rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa8cd8d89 rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb3314d48 _rtl92c_phy_calculate_bit_shift +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb6292edb rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc374d9e4 rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc4f9fb01 rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xcd052958 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xced34c9f rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd527de33 _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xdccbd4ee _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe551f897 rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xeeac3907 rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xefbb8952 rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf5fd3cfa rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x2e3901f5 rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x614c0938 rtl_pci_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x66ce0f86 rtl_pci_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x8bfa940a rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x2f4a6f7b rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x76e869eb rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x7a8f5277 rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0xda4c2eca rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x093a4363 rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x15ae0c1e rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x164c4464 rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x207fbb70 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x37e93163 rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x3ec5a333 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x4cb80b21 rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x5d61d559 rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x68ccd349 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x70de4e6b rtl_ps_set_rf_state +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x79188a02 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x83ac9e1f rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x8732fca2 rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x95346e50 rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xa002699a rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xa42ea162 rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xb5c71ada rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xc02a8855 efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xd7b9f792 rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xdcbd3ad4 rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xdd5ce9bd rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xee6d627c rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x0bea59d9 wl1271_free_tx_id +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x27f005f1 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x73e3e9d8 wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xfac649f4 wlcore_tx_complete +EXPORT_SYMBOL drivers/nfc/microread/microread 0x59fcab20 microread_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0x9d1894c3 microread_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x4ea8a200 pn544_hci_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xc3382236 pn544_hci_remove +EXPORT_SYMBOL drivers/parport/parport 0x00147d4c parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0x0bcc496a parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0x0e90b490 parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x1069f395 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0x24564172 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x2a8622f0 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0x2c6279f4 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x3a472710 parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x4fa40bec parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x62602e8f parport_register_device +EXPORT_SYMBOL drivers/parport/parport 0x6545a01b parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x6df63b10 parport_release +EXPORT_SYMBOL drivers/parport/parport 0x7b096b77 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0x7d5755bb parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0x81bfcc21 parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0x91c3fcb6 parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0x9b5977a7 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0xa0367a37 parport_claim +EXPORT_SYMBOL drivers/parport/parport 0xa47f9fef parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0xacff8391 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xb23e468d parport_write +EXPORT_SYMBOL drivers/parport/parport 0xb8bf62c0 parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0xbcca273f parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xc098569b parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0xd3cfb131 parport_read +EXPORT_SYMBOL drivers/parport/parport 0xe3c8a034 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xe823d9aa parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xee236be1 parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0xefae5eb2 parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0xf116d756 parport_remove_port +EXPORT_SYMBOL drivers/parport/parport_pc 0x39b4878e parport_pc_unregister_port +EXPORT_SYMBOL drivers/parport/parport_pc 0x65083929 parport_pc_probe_port +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x0756c6a4 pcmcia_write_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x0b0d00e1 pcmcia_register_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x1ad8c507 pcmcia_loop_config +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x38d24bb6 pcmcia_enable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x44bfd190 pcmcia_unregister_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x55f840b4 pcmcia_fixup_vpp +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x57b3549e pcmcia_read_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x5adbf6eb pcmcia_dev_present +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x693f0e46 __pcmcia_request_exclusive_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x71fb52b2 pcmcia_loop_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x742f5665 pcmcia_parse_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x75ca662d pcmcia_fixup_iowidth +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x845e26b8 pcmcia_map_mem_page +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xb1cd05d8 pcmcia_request_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xb457a010 pcmcia_get_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xd14f0b5b pcmcia_request_io +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xd844c798 pcmcia_disable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xe70ae7c2 pcmcia_request_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xe9def010 pcmcia_release_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xf768335d pcmcia_get_mac_from_cis +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x070d9cbc pcmcia_parse_uevents +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x07902109 pcmcia_register_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x198ba50c pcmcia_socket_class +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x212db8d2 pcmcia_socket_list +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x33277e7d pcmcia_parse_events +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x3ee633fa pcmcia_unregister_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x59b490c0 pcmcia_reset_card +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x8f6c2e17 pcmcia_put_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xaa2a8638 pcmcia_socket_list_rwsem +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xb4447aa0 pcmcia_get_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xb4cf0768 pccard_register_pcmcia +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcf97f3bd dead_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xe211d1e1 pcmcia_get_socket_by_nr +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x27ab83c8 pccard_static_ops +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0xfa9d818b pccard_nonstatic_ops +EXPORT_SYMBOL drivers/platform/x86/intel_ips 0xd32b0b5b i915_bdw_enabled +EXPORT_SYMBOL drivers/platform/x86/sony-laptop 0x5bb1e117 sony_pic_camera_command +EXPORT_SYMBOL drivers/pps/pps_core 0x5e9f912a pps_unregister_source +EXPORT_SYMBOL drivers/pps/pps_core 0x75289d8b pps_register_source +EXPORT_SYMBOL drivers/pps/pps_core 0x86ad2414 pps_event +EXPORT_SYMBOL drivers/pps/pps_core 0xa2182be0 pps_lookup_dev +EXPORT_SYMBOL drivers/ptp/ptp 0x1ca1ef31 ptp_clock_unregister +EXPORT_SYMBOL drivers/ptp/ptp 0x37da2108 ptp_clock_index +EXPORT_SYMBOL drivers/ptp/ptp 0x8ddb97df ptp_clock_register +EXPORT_SYMBOL drivers/ptp/ptp 0xe6c58125 ptp_clock_event +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x0c6a9a5e pch_ch_event_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x381e54e2 pch_src_uuid_lo_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x42fa3580 pch_ch_control_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x8b3cacd2 pch_ch_event_write +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x9da015ef pch_set_station_address +EXPORT_SYMBOL drivers/ptp/ptp_pch 0xc40a66fb pch_ch_control_write +EXPORT_SYMBOL drivers/ptp/ptp_pch 0xc8dbd608 pch_tx_snap_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0xe6dd00ca pch_src_uuid_hi_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0xfd860d8f pch_rx_snap_read +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x0cc106dc rproc_add +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x509399df rproc_da_to_va +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x71706a1b rproc_vq_interrupt +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xb4bd8901 rproc_put +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xc75eb25b rproc_report_crash +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xe3598853 rproc_boot +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xe5d1b1df rproc_del +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xf7888e36 rproc_shutdown +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xfe4f6fcf rproc_alloc +EXPORT_SYMBOL drivers/scsi/53c700 0x0934c5bf NCR_700_release +EXPORT_SYMBOL drivers/scsi/53c700 0x3d9cece0 NCR_700_intr +EXPORT_SYMBOL drivers/scsi/53c700 0xd9c3d69a NCR_700_detect +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x06a37b9e fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x0b9f3fb1 fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x2c76342a fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x3d8d6d32 fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x614a9150 fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x704ee348 fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x71da3497 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x9a6b387b fcoe_ctlr_destroy_store +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xa947a1e2 fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xbf6e0b58 fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xe2a0e736 fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xea9002ad fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x002ab832 fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x091f8624 fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0e1a3a6c fc_change_queue_type +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x150b058b fc_rport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x196d6ddb fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1f6930ee fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x21cb4470 fc_change_queue_depth +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22fa6ca0 fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x29c0893b libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x31c42963 fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x31d1c5d5 fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x325eb8cb fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3441be40 fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36e5fbaf fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x39134116 fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3e8611d5 fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x48ec47c9 fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x49db000d fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x555ac04b fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x55eb0016 fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5e1384a5 fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x60ddacb1 fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6587d67e fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x688e082f fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6de654b0 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x777088bf fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x77a7ed02 fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7aa6a8b0 fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7f7b95a5 fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x83509201 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x90ed290e fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9198c12e fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x91e414e0 fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x95b18bee fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9a3bdde7 fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9f60e2e2 fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa039f536 fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa9196084 fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xaa4d2603 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb366e2de fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbf36c1e2 fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbf5eacc9 fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc8b96942 fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd90a4181 fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe1cf72a4 fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe39f2498 fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe4dcb78e fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe8eac408 fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xebc45e3a fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xeff0671e fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf20364fe fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf8ee66bf fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf9cf13dc fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x5d181b8b sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8a87e724 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xa251b7b6 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xe9e78be3 sas_wait_eh +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xfdced616 sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x2250c66e mraid_mm_adapter_app_handle +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x512c956d mraid_mm_unregister_adp +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0xc60e9c29 mraid_mm_register_adp +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x00a9eaea osd_req_write_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0c17edb1 osd_sec_init_nosec_doall_caps +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0d399b04 osd_req_list_partition_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0ec5c8c1 osd_req_list_dev_partitions +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0fb2e1e9 osd_req_list_partition_collections +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x18de9b2a osd_req_decode_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x195ab071 osd_req_flush_obsd +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x1cb2c612 osd_req_read_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x1d85e9e6 osd_req_remove_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x1ffe4f3f osd_req_create_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x2ff8650d osd_start_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x48370399 osd_execute_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x4c72d553 osd_req_flush_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x4e740c96 osd_req_add_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x56e55262 osd_req_write_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x59557e4f osd_req_list_collection_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x64f6125e osd_req_write_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x67c0d483 osd_req_write +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x77e23221 osd_req_flush_collection +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7c3d907b osd_req_flush_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x81f37361 osd_end_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x863567c7 osd_req_read +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x874e7954 osd_req_read_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x887a59b6 osd_dev_init +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8d854aea osd_req_read_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x99e5a267 osd_req_add_set_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9a31c969 osd_finalize_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9b7eaac6 osd_req_get_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9d449ba8 osd_req_decode_sense_full +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xb4512017 osd_req_add_get_attr_page +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xb5492306 osd_execute_request_async +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc57b2fb8 osd_req_format +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc92b4049 osd_req_set_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd0ca5715 osd_req_create_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xdae2f095 osd_req_remove_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xdba11a58 osd_dev_fini +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xe0f7b8b0 osd_auto_detect_ver +EXPORT_SYMBOL drivers/scsi/osd/osd 0x1a2d9e19 osduld_path_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0x4aedd573 osduld_device_info +EXPORT_SYMBOL drivers/scsi/osd/osd 0x5fc48609 osduld_unregister_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x8adf4e0b osduld_device_same +EXPORT_SYMBOL drivers/scsi/osd/osd 0xa6f9903b osduld_register_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0xb9611794 osduld_put_device +EXPORT_SYMBOL drivers/scsi/osd/osd 0xd9bece46 osduld_info_lookup +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x00929745 qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x12e452d9 qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x51e13812 qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x6aff1068 qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x774737d5 qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x8300cc3c qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x8ec59ef6 qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xcf3028c5 qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xeeeb9626 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xfdae34ed qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xfee0a58b qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x1eddcafd qlogicfas408_abort +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x1f55cd70 qlogicfas408_ihandl +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x28227f51 qlogicfas408_queuecommand +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x36f9beeb qlogicfas408_disable_ints +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x3c5cb979 qlogicfas408_info +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x3fd8cd71 qlogicfas408_detect +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x4292787a qlogicfas408_biosparam +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xe76b3b20 qlogicfas408_get_chip_type +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xf2b95199 qlogicfas408_setup +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xfb41a17f qlogicfas408_bus_reset +EXPORT_SYMBOL drivers/scsi/raid_class 0xbfe4ed47 raid_component_add +EXPORT_SYMBOL drivers/scsi/raid_class 0xcc142e1f raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0xfdc35ada raid_class_release +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x07cd8129 fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x2a7e3bb5 scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x3a3d6ada fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x42cdecdb fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x558f16d8 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x66823bdb fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7954b1ea fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7ddd5e72 fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x920aa8f8 scsi_is_fc_vport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x9f11acc4 fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x9fcf4ce3 fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xaf95620c fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xc56e2a03 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd9c6ec90 fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0539dbab sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x15619951 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x218ac3f9 sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2aad90fa sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x323205a6 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x33792968 scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x528f3039 scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x63e494f7 sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x67ba2123 sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6a8c5644 sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x70cbe633 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7c591c4b sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7eb0df4b sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x8230234f sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x826b4141 sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x89d6483c sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x8aa94de6 sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x98e2f868 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa2a97991 sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa3ab0b4a sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa78a7871 sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc2c4b6f6 sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc47b6113 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc6e8546c sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xdd4ef390 sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf47927c8 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf8d27726 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf9303414 sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x20b39214 srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x460c2b59 srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x56ba2270 srp_rport_put +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xcebcae5f srp_rport_get +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x80471d4b ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0xe0726562 ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0xe45b0329 ufshcd_runtime_resume +EXPORT_SYMBOL drivers/ssb/ssb 0x0a3f3d72 ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x1a5bf790 ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0x223adfcf ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x2700f93f ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0x498f1a5a __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0x4cb4cd0f ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0x5834c7fd ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x6e4cc8dd ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0x746f7937 ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0x759a456d ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x870a49b0 ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x952bd0bd ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0x997ace93 ssb_bus_pcibus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x9cd4eba2 ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0xa187e6d1 ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xa326c3c7 ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0xb14f1140 ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0xb9023636 ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0xbb38d2c3 ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0xc0512e0f ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xd481192b ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xe01d402f ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0xf805e1b1 ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0x6c66efc3 fwtty_port_get +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0xecf1459a fwtty_port_put +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x7f0cc215 adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0xdd8535ae adt7316_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x893c23ee ade7854_probe +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0xe49825f3 ade7854_remove +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x012ea7e5 lnet_copy_iov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0bce7eef lnet_counters_get +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1366b7ac LNetSetLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x150d29f8 lnet_extract_kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x19670622 LNetNIInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1b191752 lnet_msgtyp2str +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1d078fe9 lnet_register_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1fe16fd5 LNetGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1ff89385 lnet_create_reply_msg +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x204b8151 lnet_counters_reset +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2aa9953d lnet_cpt_of_nid +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2ac93e90 lnet_connect_console_error +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x30d81975 lnet_net2ni +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x33202a6c LNetGetId +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3558e584 lnet_iov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x37752866 lnet_set_reply_msg_len +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x388f2bc2 lnet_notify +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3c779ee0 LNetPut +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3f4f5b46 LNetNIFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x473ad33b LNetDist +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x484355f1 the_lnet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x4bb00492 lnet_copy_iov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x4f9cb871 lnet_extract_iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x56403283 lnet_finalize +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5811a721 LNetInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x58a1ca89 LNetMDUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5fee352c lnet_acceptor_timeout +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x61f784b2 LNetClearLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x64cdea3a LNetCtl +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x6f7be171 LNetEQGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x722c76e5 LNetMDAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x79a2caa4 lnet_connect +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7d59a7fe LNetMEInsert +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x854ab844 LNetEQWait +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8a3064f2 LNetSetAsync +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x91bb45d0 lnet_copy_kiov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9de986d3 LNetEQAlloc +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa23c2902 lnet_unregister_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa8c2760b LNetFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa414970 LNetMEUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa9b477e LNetMDBind +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xac45c3ab lnet_set_ip_niaddr +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb18ad393 lnet_parse +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb34535f9 lnet_copy_kiov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb75f7953 LNetEQFree +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xba5566d2 lnet_acceptor_port +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xbf0760a2 LNetMEAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf1b316bf LNetSnprintHandle +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf811ec90 lnet_kiov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/selftest/lnet_selftest 0x078db139 lstcon_ioctl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x0e274827 seq_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x1b8014ee seq_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x1c4bb5f9 LU_OBF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x1d74eb8d seq_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x375e6f8d LUSTRE_BFL_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x54825eda seq_client_get_seq +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x6d01c752 client_fid_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xae61cff5 LU_DOT_LUSTRE_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xc1320cb6 seq_client_alloc_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xc997a02f LUSTRE_SEQ_SPACE_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xecee2727 LUSTRE_SEQ_ZERO_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xfb4d32eb client_fid_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x655230a3 fld_client_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x881ac74e fld_client_del_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x8859a72a fld_client_add_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x9692b094 fld_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xa3253cb2 fld_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xbc53150e fld_client_proc_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xf2eeeced fld_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x000c507f libcfs_debug_dumplog +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x002ff4d4 libcfs_sock_getbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x01db5172 cfs_percpt_atomic_summary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x03387ca6 cfs_curproc_groups_nr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x041282f5 upcall_cache_flush_all +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x04308f35 cfs_hash_debug_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x04d3ce6a lbug_with_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x052df2f5 libcfs_sock_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x069f9bb2 cfs_wi_schedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08ada613 libcfs_console_backoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0b4b1546 libcfs_lnd2modname +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0de6c369 cfs_cap_lower +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0e4820ab cfs_percpt_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0f5eff79 cfs_percpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x10781ba7 cfs_crypto_hash_update_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x108d2e2b cfs_percpt_lock_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x117c8a95 cfs_cpt_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12426266 libcfs_run_lbug_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x15565c7f cfs_cpt_set_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x16ed6882 libcfs_kkuc_msg_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x17ac7833 libcfs_deregister_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x19b06de7 cfs_hash_size_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1a60d439 cfs_parse_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d5a3928 cfs_timer_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x23f6f445 cfs_restore_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2557589f cfs_hash_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2589f0af cfs_hash_rehash_cancel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2663147a __cfs_fail_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x27b6d3ba cfs_ip_addr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2b1e0458 cfs_get_environ +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2dbe54b2 cfs_trimwhite +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2efcc0e6 cfs_block_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x30986343 cfs_range_expr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x31fc5082 cfs_crypto_hash_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x377f93fb cfs_srand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3791e0c9 cfs_hash_bd_add_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3834f243 proc_call_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x38828b92 cfs_cpt_unset_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x389ca502 libcfs_debug_mb +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3962e3ee cfs_race_waitq +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x39fdcd2b libcfs_debug_set_level +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3a62a183 cfs_cpt_set_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3c1285bd libcfs_subsystem_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3d5e6098 cfs_race_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ea730c0 cfs_gettok +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ef0d90c libcfs_kkuc_group_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3f0d9281 cfs_wi_sched_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4087f890 cfs_hash_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x411db754 cfs_crypto_hash_final +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x413056d8 cfs_cpt_weight +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x41ab33a1 libcfs_ipif_free_enumeration +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x42e22feb cfs_cpt_table +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44688a0a cfs_block_allsigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44839bbb cfs_rand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44f07cfc cfs_pause +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x47fdb4d1 cfs_timer_is_armed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x48f163c6 libcfs_str2anynid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x493a5cb4 upcall_cache_put_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4947bd6b cfs_hash_dual_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x49574ae9 cfs_hash_debug_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x496b3c4f upcall_cache_get_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4a99af72 cfs_clear_sigpending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4d89e988 cfs_block_sigsinv +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4f1f2fa5 cfs_crypto_hash_digest +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4f253013 libcfs_kkuc_group_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x50345570 libcfs_str2net +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5051b6d2 portal_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x509d38b0 libcfs_net2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x52e9cfc1 cfs_cpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x53b383e4 cfs_cpt_unset_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x54fd9a71 cfs_percpt_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x574894fc libcfs_sock_getaddr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x58a7ee00 libcfs_catastrophe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5946ec2b cfs_percpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5c013b81 cfs_expr_list_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5ce62c0e cfs_cpt_table_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d3be65a cfs_crypto_adler32_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d73c3e3 cfs_expr_list_free_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5dce9e80 libcfs_lnd2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62289d65 cfs_array_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x64685fef libcfs_console_min_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6564c55b libcfs_console_max_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x65dd9f0c libcfs_run_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x65e2b9d3 cfs_hash_rehash_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x66136d2d cfs_timer_arm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x67398404 cfs_wi_sched_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6756a801 cfs_hash_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x68497dbf cfs_cpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x687788c4 cfs_percpt_lock_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x696348e0 libcfs_sock_setbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x69ce620d libcfs_sock_abort_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c605eaa cfs_cpt_unset_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c905b5f libcfs_watchdog_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6cf325d6 upcall_cache_flush_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6dfa9ea1 cfs_crypto_adler32_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6e6af71c current_is_32bit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6f928e1b libcfs_debug_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6ff4020b cfs_hash_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71d7b2fa cfs_hash_cond_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71f662a3 libcfs_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x74dde658 cfs_hash_dual_bd_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x752858fb cfs_cpt_table_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a3d49ae cfs_expr_list_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7b0b748a cfs_ip_addr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c7986cf waitq_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7d93cded cfs_cpt_of_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7e6f6485 cfs_ip_addr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7fda989d cfs_fail_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8151c3aa cfs_cap_raised +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x83d795e4 cfs_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x842864cd cfs_hash_dual_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x857aaea7 libcfs_register_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x89e0937b cfs_hash_for_each_safe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c85e4e6 cfs_crypto_hash_speed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8e61d47b cfs_cpt_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8eef69ba cfs_hash_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f12bb52 libcfs_log_goto +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f45f10d cfs_init_timer +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x904c4251 cfs_hash_getref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x91504e8b libcfs_kmemory +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x940ed192 libcfs_stack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9548a4f1 upcall_cache_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x95620e8c cfs_wi_deschedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x978b5836 cfs_hash_rehash_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x97ab5498 cfs_hash_bd_peek_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x97b0b9bc cfs_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9879b229 cfs_get_random_bytes +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9996a244 libcfs_sock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9f82f712 cfs_trace_copyout_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa0ddfce7 cfs_hash_bd_move_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa2b68b2a cfs_array_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa4522d96 cfs_hash_is_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa4d43b13 cfs_hash_del_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa6b9dee6 libcfs_kkuc_group_rem +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa711aec5 cfs_cpt_table_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9088531 cfs_expr_list_values +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9dc74e2 cfs_trace_copyin_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9eae690 cfs_str2mask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xaaf59b75 cfs_cpt_set_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xab887583 init_waitqueue_entry_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xad019238 cfs_str2num_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xaea38b7c libcfs_sock_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb43456f1 cfs_percpt_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb53b5569 cfs_cpt_spread_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb883b006 cfs_percpt_atomic_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb8897bad cfs_percpt_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb9c87f94 cfs_hash_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbada117b cfs_cpt_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb59ad6e cfs_hash_findadd_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb9cb508 cfs_curproc_cap_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbd5d492e cfs_timer_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbefb6c3c cfs_hash_dual_bd_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbf013175 cfs_hash_rehash +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbf7a37f1 cfs_signal_pending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc0ea7fc0 cfs_expr_list_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc1b91c8d libcfs_sock_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2911d96 cfs_expr_list_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2dfd791 libcfs_console_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc39fd2f9 libcfs_panic_on_lbug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc3eb614e libcfs_ipif_query +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc41bc85e libcfs_sock_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc47433a6 cfs_capable +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc49b1c62 cfs_percpt_atomic_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc53890de add_wait_queue_exclusive_head +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc77a24c3 cfs_cpt_set_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcb385db9 libcfs_debug_binary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcbab8493 schedule_timeout_and_set_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcc195787 cfs_hash_dual_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcc20e694 libcfs_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xccc45639 cfs_free_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcd38904c cfs_wi_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xce1a88f2 libcfs_arch_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf61bacb __cfs_fail_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd0d8d08a cfs_cpt_unset_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd2037eb5 cfs_hash_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd217e869 upcall_cache_downcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd2db9312 upcall_cache_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6a52be3 libcfs_printk +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd9541990 cfs_strncasecmp +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd96f406d cfs_cap_raise +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdb92f14c cfs_hash_add_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xde17bb8d libcfs_isknown_lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf2789c0 cfs_curproc_cap_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdffc951d cfs_timer_disarm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe1224965 cfs_hash_for_each_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe2da56ad cfs_hash_hlist_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe3bf6897 cfs_percpt_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe6555032 libcfs_ipif_enumerate +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe7202360 cfs_hash_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe7b54314 libcfs_arch_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe9fcc959 libcfs_sock_listen +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xea8b46c8 cfs_hash_dual_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xec1f56d5 libcfs_str2nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeca4d884 cfs_hash_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeccafa5c cfs_cpt_online +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeceac781 cfs_fail_val +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xedf3a25a cfs_timer_deadline +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xee28e153 cfs_hash_for_each_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf2c02048 cfs_cpt_bind +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf372d1c2 cfs_firststr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf38927af cfs_hash_bd_del_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf40279f5 upcall_cache_flush_idle +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf440bb38 libcfs_kkuc_group_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf79d9217 cfs_hash_for_each_nolock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8a8644b libcfs_id2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8efb8c5 waitq_timedwait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf94025d1 libcfs_str2lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfe565fa9 cfs_crypto_hash_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfe5c8c6b cfs_hash_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xff0f98a6 libcfs_debug_vmsg2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x15425a02 ll_osscapa_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x3cbcd0c9 ll_stats_ops_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x588d0796 ll_direct_rw_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x6a495e1d ll_iocontrol_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xcd3cde92 ll_iocontrol_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x06465a20 lov_stripe_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x37864f1f lov_stripe_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x7b60b981 lov_read_and_clear_async_rc +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xb1a9556e lov_device_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xe97f717d lov_lsm_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xf46a8c2a lov_lsm_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x11d104d3 pop_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x142f03c5 lustre_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x3051de93 fsfilt_register_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x388b3263 lprocfs_counter_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x416467a0 push_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x63e7ead2 fsfilt_put_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x8dc03248 fsfilt_get_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x91edfb23 lprocfs_counter_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xa5992178 obd_memory +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xa83039a0 l_dentry_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xadf99248 fsfilt_unregister_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xb3d4d0cf lprocfs_stats_alloc_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xb4f8ee63 lprocfs_read_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x14a47f31 it_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x9c22b84f it_open_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xb57d8447 it_set_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xf46a886f it_clear_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mgc/mgc 0xdc287f95 mgc_fsname2resid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x006d47ee lu_object_put_nocache +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x00773708 cl_io_prepare_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x00b736ca cl_io_submit_rw +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x012e24a2 cl_lock_enqueue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01665e34 class_parse_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01930565 cl_lock_state_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01d9463a lu_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x02550d6b lprocfs_obd_rd_max_pages_per_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x03262c0d cl_2queue_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0341ea4a lu_dev_del_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x035852d0 lustre_swab_llog_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x038209f9 cl_use_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x038fc152 cl_lock_extransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x042e86bb cl_page_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x04644cb1 cl_req_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05686567 cl_object_glimpse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x056d81e0 llog_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x057f6d4b class_find_old_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05af1920 dt_quota_glb_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05e6cfa4 lprocfs_rd_server_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05ec4264 class_config_parse_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05f1ef8b local_index_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05f84e88 LU_BUF_NULL +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x071283f7 cl_req_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07aa68bb lustre_swab_lustre_cfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07f78d3c class_unlink_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x082286c0 lprocfs_rd_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x083942ff class_del_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x08667356 class_fail_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0996d0e6 lu_object_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x09e9d402 cl_page_vmpage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0a8aeb27 lu_cdebug_printer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0a9cb4d7 class_disconnect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0af96eff class_manual_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0bf0550e llog_open_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0c998b5e class_connected_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0ca2438c cl_io_read_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0ce131e2 cl_io_iter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0cf99bff dt_acct_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0dcc33ec lu_ucred +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0e3a17d7 cl_page_find_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0ef90471 class_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0efae642 cl_object_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f4ccb1d llog_copy_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fd41051 lprocfs_at_hist_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fe91547 obdo_to_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x10b30c9d lprocfs_init_ldlm_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11495519 lprocfs_write_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11b18015 local_index_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x130e2cb9 lprocfs_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x13cfefa5 cl_io_iter_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1445dd50 cl_io_lock_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1491dc30 lu_context_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x149414e0 lu_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x149feb90 cl_page_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x150c2cba cl_page_list_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x168c305b capa_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17260880 obdo_cpy_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x173f45f2 cl_lock_enclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x179da1dd lprocfs_alloc_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17e3cd08 lprocfs_rd_numrefs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17f6183f lustre_idmap_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x18138fc8 cl_page_is_owned +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x18206be2 cl_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x182eda9e lprocfs_rd_connect_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x18f872ea cl_io_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1a625d6b cl_lock_modify +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1a8c59a1 cl_object_attr_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1ac44840 lprocfs_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1afd54bf class_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1c091e85 cl_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1c7029f7 class_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1ee146da lu_object_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x202331e8 cl_page_list_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x20769bcd lu_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x20fa9ce8 lprocfs_seq_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21016bf8 class_put_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21307495 lu_buf_check_and_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x219ce1fe cl_io_rw_advance +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x221826f1 class_parse_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x230ac545 cl_env_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25416e0b cl_io_lock_alloc_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2547efae lustre_uuid_to_peer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x259ebac6 obd_alloc_fail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x26096446 cl_lock_nr_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x275cdc7a cl_env_reexit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x27d2c064 lu_env_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x29332f64 lprocfs_add_vars +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x297cf5e0 class_handle2object +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2980043a class_disconnect_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x29df2b25 llog_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2a0facbe lustre_register_kill_super_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2a1e39d2 dt_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2a7df516 cl_page_list_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2acd2b92 cl_lock_discard_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ae1cd79 kuc_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2b030d87 lu_object_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2b4c48e9 server_name2svname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2c0be7b6 dt_store_resolve +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2c89e3f0 lu_dev_add_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2cbd0ddd cl_io_sub_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ce91b71 obd_export_evict_by_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d3895fe dump_lsm +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2e1d70d2 llog_declare_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2eebe4a1 class_import_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2f538be4 cl_object_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3033edb3 lprocfs_exp_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32783d9d obd_export_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32d7f63e lu_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x338c74c8 local_oid_storage_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34949476 class_process_proc_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x35526d19 lprocfs_oh_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37d59122 llog_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37ed6e4b at_early_margin +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x380d2580 cl_unuse_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38fb0c90 class_match_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3943e7b9 lprocfs_free_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x39c8e394 cl_page_clip +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x39fc353b cl_vmpage_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a005065 dt_otable_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3acb7687 dt_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3af50a61 cl_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3bc55c7b cl_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3bd9dc89 cl_page_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3e86520a cl_page_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3e915777 obd_llog_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3e95acbd lprocfs_rd_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3f21ab2c class_detach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3fa64ea3 cl_page_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x40477769 cl_lock_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x408f472f obd_exports_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4110761f dt_txn_hook_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x42b7634d lu_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x42f38a52 cl_lock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43398d13 lustre_register_client_fill_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43587fe1 cl_page_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43dc3a53 class_name2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4424b2ef cl_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44e41abb lustre_posix_acl_xattr_filter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44eaa844 lu_site_purge +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44ebfa5e cl_env_implant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x451cade6 obdo_refresh_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x45534eff cl_page_list_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x455a8834 lu_site_init_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x455e62ce class_conn2export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x460a2c86 llog_osd_get_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x46400ed3 lu_context_key_revive +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x474ed5bd lustre_swab_ll_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x475dcfe3 lprocfs_rd_num_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4760779c lustre_idmap_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4762f1d9 dt_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47b35f7d statfs_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x484d326f cl_sync_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x487f5a33 cl_page_list_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48a7e6fc lu_env_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x494cfb52 lustre_acl_xattr_merge2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a0f6ea lustre_posix_acl_xattr_2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a29223 lprocfs_find_named_value +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4abfa011 cl_page_make_ready +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ac58713 obd_connect_flags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ad9c5e2 lu_object_locate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4aff49c3 llog_cat_declare_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4b340209 cl_lock_weigh +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ca2cea1 cl_lock_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d13458b kuc_len +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ed55c62 lprocfs_free_per_client_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4fa9792e cl_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4fad5a74 cl_req_page_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4fba4346 dt_directory_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ff0ab39 cl_lock_mutex_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x506af37a local_oid_storage_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50c7fc36 ptlrpc_put_connection_superhack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x523c0f3e cl_lock_mutex_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5284efc0 lustre_end_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x52869335 lu_context_enter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x53543dec dt_txn_callback_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x535733ec class_conn2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x535f455b cl_env_unplant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54885f87 ldlm_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54ff3fc1 obd_export_evict_by_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x55188e93 lu_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5523d817 cl_object_kill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x558bec27 obd_ioctl_getdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x564e9d44 init_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5661e7d9 lprocfs_rd_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5690959d dt_record_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x56defeb7 lu_context_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x56fde741 local_file_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x570d09ae lustre_swab_lu_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x59bf6caa cl_lock_descr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x59cd6823 lu_object_add_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a20d896 obd_memory_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a5a2123 lprocfs_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a961ba6 class_new_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5b62a6c4 llog_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bc022c5 lprocfs_dt_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5be0391b class_find_client_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bf9c361 dt_index_walk +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5c3acf56 llog_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5c51a2f1 cl_page_list_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d319a0f lprocfs_rd_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d34ae0d cl_lock_mode_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d3f5aa2 lprocfs_stats_collect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5da8b0ea llog_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5de3c933 cl_lock_closure_build +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e669a49 lprocfs_rd_timeouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ecd0c53 cl_object_attr_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ed188a9 lprocfs_add_symlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fe97b73 block_debug_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x604d909f obd_devs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60d8ee41 class_config_dump_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x61993c11 cl_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x61ca3449 cl_lock_unhold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x61cf4b9a dt_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x61e97c58 cl_page_is_under_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x62d13f2a cl_io_is_going +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631a518d mea_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631fd7b9 lustre_ext_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x63e69a4f obdo_from_iattr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x643bb27f llog_exist +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x650170b8 lu_env_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x652f833a lprocfs_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x654d02fb lu_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x65d2b993 class_handle_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6734adbd lprocfs_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67428fce lprocfs_oh_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x677fd7f9 proc_lustre_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x678082c4 llog_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67977b42 lprocfs_remove_proc_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67a90622 la_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67dc223a lprocfs_remove +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x684b3730 cl_lock_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6890d175 lustre_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69c42114 at_min +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a6f8ec0 llog_thread_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6b9dd66c cl_lock_disclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6bb6d421 lu_buf_realloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6bdf577a cl_page_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6bee9668 cl_io_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c4b26f0 lustre_process_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ccf98cd llog_cat_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ce3e1db obdo_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6d7e169e class_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6da2d59f lustre_in_group_p +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6dffb2cd llog_init_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f3e6225 dt_quota_slv_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7003aab2 cl_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x71096419 llog_cancel_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7132ffc5 dt_locate_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7298b27d cl_lock_hold_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72ddee4c obdo_le_to_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7323ef0a lu_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x73a756d0 cl_lock_is_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x742559b1 class_unregister_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x74d9a387 lu_context_key_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x752f71a8 class_get_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x75636944 cl_object_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x756a77f3 class_parse_nid_quiet +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x76800402 dt_store_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7697c284 lu_context_key_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77c71b05 cl_2queue_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77d2089a class_name2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77d4f66c lu_object_invariant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7802fcd7 lustre_swab_llogd_conn_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7876177c llog_declare_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x789796a1 obd_zombie_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7942a145 lprocfs_seq_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x795bfb9c llog_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x796e754c llog_osd_put_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x79af5e8f cl_io_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b4fc57b at_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7cd30487 cl_lock_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7d7604a9 cl_io_rw_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7dce8a11 class_disconnect_stale_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7edcafa0 cl_env_reenter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7ef66ea0 lu_ucred_assert +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f19e3f1 cl_lock_hold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f46d2e4 cl_page_own_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fa2a56c dt_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fad7291 raw_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fe5561a obd_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x802f7a4c local_file_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8031efb8 lprocfs_dt_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x80362824 lprocfs_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8038a75b cl_2queue_init_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x806cc497 class_add_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x811d53e3 cl_lock_closure_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81742d89 obd_ioctl_popdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8231afe2 lprocfs_init_mps_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x82b9ce67 cl_locks_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8315f877 class_handle_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x831f656c class_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x836a0cda lprocfs_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x839e5a7c cl_lock_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8489f086 obd_alloc_fail_rate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x849e5385 obd_update_maxusage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x85af1c2a lu_object_assign_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8608191f cl_page_is_vmlocked +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x86ad5e18 lu_context_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x86bb36d6 lu_env_refill_by_tags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x86c54e37 cl_env_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x86f8ba5a lprocfs_obd_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8720e822 class_config_llog_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x87dc5593 llog_obd_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x895498d8 cl_env_nested_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x89f48099 lu_context_key_register_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8aa2c358 lprocfs_dt_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8aad0414 cl_conf_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b2545b0 lu_site_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b5f4057 lu_context_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b72e0f5 llog_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ba6e479 lustre_swab_lu_seq_range +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8bc68849 lprocfs_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8c1d5cde lprocfs_alloc_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8d511b6e cl_req_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8e848960 class_export_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f67314c obd_dump_on_eviction +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x90306ed8 llog_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x905e5272 cl_io_loop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92e58479 obd_dump_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93b46468 lu_session_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x948d21ec dt_version_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9512d507 lustre_acl_xattr_merge2posix +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x955f5220 ldlm_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95735c6c at_extra +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95ec998a lustre_groups_sort +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x962cad2c dump_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x974bcb23 cl_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x97508b99 class_incref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9767adce class_uuid2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x97d03783 at_history +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x992d749d lprocfs_wr_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x996086b7 lprocfs_free_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9994f512 lu_context_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x99ee72c0 class_conn2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9a9fdbb7 obdo_from_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b1ed9d8 obd_jobid_var +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9bf8f9bc lu_object_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9c00a2cd obd_llog_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9c2a9d4f lu_object_find_slice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9c35cf7a cl_page_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9d094cc5 lprocfs_rd_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9dbb17b6 lprocfs_dt_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9f5e1218 cl_lock_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9f9779ca llog_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa08abee1 cl_lock_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa0afdc26 cl_page_unassume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa0f73e2d cl_page_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa1158aaf cl_enqueue_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa209607a lprocfs_counter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa21c5ea1 obdo_from_la +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa26423f4 llog_osd_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa26f8e47 lprocfs_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa28d30e0 cl_sync_io_note +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa388ef8a cl_lock_user_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa41350b9 llog_cat_cancel_records +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa46e813d llog_cat_init_and_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa513f7e4 lustre_groups_from_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5d45f47 class_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5fb234f lprocfs_write_frac_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa65f79ab cl_page_list_splice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa674c241 kuc_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa6d6587b cl_page_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa704bf9a lustre_idmap_lookup_uid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa736018b cl_lock_is_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa7d3283d llog_cat_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa80bc836 cl_page_list_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa81f4e0d cl_page_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8c4131b cl_page_cache_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8cb8873 class_uuid2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8fa31c0 cl_lock_descr_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa96b185f cl_page_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa9cae1bd llog_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa21b7a0 lustre_register_quota_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa66f9ac lu_object_find_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaad95438 cl_offset +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xab2b5441 lprocfs_init_ops_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabf45922 capa_decrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac7f1596 kuc_ptr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac8ab045 dt_lookup_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xadca221a cl_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xae1c9058 class_devices_in_group +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaf0b2b47 cl_req_page_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaf5ac13f capa_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaf936e25 lprocfs_free_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xafe9b622 class_import_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaff6464a cl_lock_signal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb01963a6 class_uuid_unparse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb02cd7c8 lprocfs_add_simple +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0fb9886 cl_lvb2attr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1b89b6d class_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb2018639 class_search_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb2f5d859 cl_page_list_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb2fca010 lprocfs_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb41998cd lustre_cfg_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb46e7315 cl_2queue_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb5f6017e lprocfs_wr_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb60dcfbf cl_page_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb614569e lprocfs_register_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb645dec8 local_object_unlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6a39c5e class_exp2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6ba5dd5 kuc_ispayload +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb7385899 class_exp2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb743ec6a dt_mode_to_dft +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb7e6f451 llog_cat_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb931c665 cl_lock_ext_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba985283 lustre_register_client_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbaaebeb3 capa_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbacac922 lprocfs_write_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbb621cd5 lprocfs_rd_conn_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbc127aca dt_txn_hook_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbc18e75e cl_type_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbc44fdd4 cl_lock_get_trust +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbc5ed489 __llog_ctxt_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbceb0f3b lu_context_key_revive_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbd1f2d8f llog_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbd3e6dfd cl_io_commit_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbd8728bc iattr_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbd954acb class_num2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbdb89a7d cl_object_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbdbf995e lu_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbdf0ab74 cl_io_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbe16d43e lprocfs_alloc_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbf70b10d cl_sync_io_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbf958580 cl_env_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbfb81638 lu_kmem_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc027a6e7 cl_io_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0678a3a dt_index_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0bf7ef2 obd_debug_peer_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0d6f485 obdo_to_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0d9a8ba dt_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc131a156 lprocfs_exp_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc14a9495 cl_lock_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc178933c lu_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc1bcb8d7 lu_device_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc1f73324 lu_ucred_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc30c3a73 llog_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc3a9ab20 llog_declare_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc4c2967e lprocfs_oh_tally_log2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc504492a cl_2queue_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8dbaa87 lustre_swab_cfg_marker +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8dfd36f dt_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc9b3c667 dt_lfsck_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xca08ff29 cl_page_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcab40316 cl_lock_user_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcada5a3a cl_req_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb0ab67f obd_max_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcc7e9b9a cl_lock_hold_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcc913b64 lustre_idmap_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xccf7a8de obdo_cpu_to_le +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd26ee92 cl_object_attr_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd7537ee get_devices_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd8a604e lu_buf_check_and_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcedb140a obdo_cmp_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcf90e9fc cl_wait_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd032467a capa_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd08827c0 server_name2fsname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd0b6995d lu_buf_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd10aa042 lustre_swab_llog_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd14386d6 cl_2queue_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1b1478b cl_attr2lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1bc598c cl_io_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1cabbd1 dt_txn_hook_commit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1f58645 lustre_swab_llog_hdr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2999ab2 dt_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd29b36ea cl_object_has_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2bb2800 lprocfs_single_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd3b5adda cl_io_submit_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd3c14b02 cl_queue_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd3f88dfe dt_record_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd4c5f98c llog_cat_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd4dff43b class_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd513bf33 llog_cat_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd52a1cd0 obdo_from_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd539445b lustre_idmap_lookup_gid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5b564ac cl_env_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5cba59e cl_lock_closure_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd6827bfd lu_context_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd70fe669 lustre_swab_llogd_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bc8654 obd_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bfbc9c lprocfs_dt_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7c6408f cl_page_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7f7b340 cl_lock_mode_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd8274e93 lu_context_key_degister +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd83cb04d lprocfs_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd94af058 cl_io_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd9566322 cl_page_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd990f19f cl_page_list_move +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda5b1ced class_find_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdac644c8 lustre_posix_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb13dce1 capa_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb2302aa llog_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdc178e12 llog_cat_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcc40af0 class_check_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcec12fa lu_kmem_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd78c0c7 lu_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xddee29ad cl_page_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde7d985b obd_dirty_transit_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdfd585b0 cl_lock_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe028cf84 capa_encrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe0da2e68 cl_page_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2502c97 cl_pages_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe29ef62f cl_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2d2e565 dt_txn_callback_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2eb4470 class_get_next_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3323f5d class_handle_free_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe4259a3c class_new_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe494b88d lprocfs_rd_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe4b67d0d lu_context_key_quiesce +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7d83236 cleanup_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe859c7a1 cl_env_nested_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8e84c32 class_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe90e2a01 dt_try_as_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe9f58939 cl_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeabe4a22 lprocfs_nid_stats_clear_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeaf1d0b8 cl_2queue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeaf8d000 lu_object_anon +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb3f388a _debug_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb4cbc91 llog_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec2b38ff class_export_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec7d6b85 obd_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xed239bba capa_cpy +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xed43cf1f cl_io_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xed63fdb3 lu_device_type_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee3d0aa9 cl_lock_mutex_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee5393cf cl_page_gang_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee68bc29 lu_session_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeea510d5 dt_declare_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeec990e3 cl_page_list_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeeeb79fa do_lcfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xef76f858 block_debug_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xefbdd38e cat_cancel_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf01e2527 server_name2index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf0bafc89 lu_device_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf138a8fc lu_context_key_quiesce_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf14d7b93 class_register_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf16e5a89 class_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf1f41841 lprocfs_clear_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf23ace21 cl_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf24fd497 cl_page_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2b0d3de cl_lock_at_pgoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2fd6695 statfs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3004450 lustre_common_put_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf303cd21 md_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf32502db lprocfs_nid_stats_clear_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3bb235b dump_lniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3f08504 lustre_idmap_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf441c77a lprocfs_oh_sum +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf46ff9af lu_device_type_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf490d5f9 class_del_profiles +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf4df7c44 cl_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf514275c cl_page_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf59c1006 cl_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf60d4659 capa_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf6115bda lu_context_key_degister_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7020831 lprocfs_dt_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8c2df92 obdo_set_parent_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa813d06 capa_hmac +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb2e6b3b class_handle_hash_back +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbba800c lprocfs_rd_u64 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbbeeb11 cl_unuse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbea0098 lu_types_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc7f18d0 obd_pages_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfce4103b lu_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd387c9e cl_req_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd68d17a class_notify_sptlrpc_conf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd8f5cf4 lu_buf_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfdbe1557 lprocfs_write_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfef43f27 cl_page_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff57e92d class_match_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfffc1f11 lustre_swab_ost_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/osc/osc 0x5c4940c2 osc_update_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x00d95039 ptlrpcd_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01d6ef7f ldlm_pools_recalc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x027b71fc ldlm_completion_ast_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x047a8da9 req_capsule_server_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x048b59d5 lustre_msg_set_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0515f93b RQF_FLD_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x06b3942b lustre_swab_lov_user_md_objects +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x06fb8a92 ldlm_lock_fail_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x071fc74a RQF_LDLM_ENQUEUE_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x07605c7d interval_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08544a54 ldlm_destroy_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08bb2d27 lustre_swab_obd_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x095587d0 lustre_msg_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x09d97b8e client_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a3130b0 RMF_MDT_EPOCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac252b2 lustre_msg_set_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0afed134 ldlm_pool_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0b1ec495 ldlm_flock_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0b86076c sptlrpc_sec_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0bcacb5d RMF_MDS_HSM_USER_ITEM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c2d9c43 lustre_swab_lip_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0cf1bc4d ldlm_cli_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0cf343dd RQF_LDLM_INTENT_BASIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0f6b4578 sptlrpc_cli_unwrap_bulk_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0fae7e3c ldlm_pool_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x10f18f20 interval_iterate_reverse +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x115017f6 req_layout_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12b6f5a3 ptlrpc_connection_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x142f0680 ldlm_reprocess_all_ns +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1483eca4 ldlm_lock_addref_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x149c7452 sptlrpc_req_replace_dead_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x14d192db lustre_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x158475ba ptlrpc_save_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15a3e4db RMF_GETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x163023a1 ldlm_cli_cancel_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1648389a llog_client_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x172fb86d lustre_msg_hdr_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1747d8b3 ldlm_lockname +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x17562ccc _debug_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x17950f60 RQF_SEC_CTX +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x18771013 ldlm_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x18afa2a9 req_capsule_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19108a0f RQF_OST_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19c08934 RQF_LDLM_INTENT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a52113c ptlrpc_pinger_sending_on_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a6a3ce9 RQF_OST_GET_INFO_LAST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a9b76aa RMF_OBD_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1abd3258 RMF_SETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ace4b5f RQF_LDLM_BL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1aeedfb6 ldlm_lock_allow_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1b420ff3 ldlm_prep_enqueue_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1bae0270 interval_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1be21715 lustre_msg_size_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c300d8e lustre_msg_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d043548 lustre_msg_set_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d779dc5 req_capsule_has_field +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d95e0e4 sptlrpc_enc_pool_put_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1dc2051d RMF_SEQ_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1de75b2c llog_origin_handle_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1de9c288 lustre_swab_layout_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e13c98f ptlrpc_start_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e3460e8 lustre_pack_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e8e48a4 sptlrpc_flavor_has_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1eb2a65f RQF_OST_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee46b51 lustre_init_msg_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee9eb3c RQF_MDS_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1f13b327 ptlrpc_req_finished_with_imp_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x203f0b39 ptlrpc_mark_interrupted +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2096f5b5 RQF_OST_SET_GRANT_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20d6b82c RQF_LDLM_INTENT_QUOTA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20fcacaf ptlrpc_set_import_active +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x212eed83 ptlrpcd_wake +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x218a36ce ldlm_cli_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2238e662 ptlrpc_obd_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2274f29d ptlrpc_stop_all_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x22ed1be9 req_capsule_filled_sizes +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x233790b5 RMF_OST_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x244e5558 lustre_msg_get_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x24aafdba RMF_MGS_TARGET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2585a629 RMF_SEQ_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2587513c RQF_LDLM_CP_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x259ba464 ptlrpc_set_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x269554ce RQF_LDLM_INTENT_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x26c22ddf ldlm_register_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x26f99d16 RQF_MGS_CONFIG_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2743d471 req_capsule_field_present +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x285e5b99 lustre_msg_set_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x28977f8a sptlrpc_unregister_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x29e0869a sptlrpc_get_hash_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x29f58d1a ptlrpc_replay_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a18a1d0 ptlrpc_set_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a42c555 ptlrpc_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a63a472 lustre_swab_ptlrpc_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2b86acf7 ptlrpc_buf_need_swab +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ba7731c ptlrpc_invalidate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c00c60d ptlrpc_sample_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c5b6bb8 sptlrpc_conf_client_adapt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ca92fa8 ldlm_lock_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ccd5b87 ldlm_cli_cancel_list_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2cee74f1 ldlm_pool_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d56f168 ptlrpc_pinger_ir_up +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d798316 RMF_MGS_CONFIG_RES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4562fe RQF_LLOG_ORIGIN_HANDLE_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e466b56 ptlrpc_register_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4ca396 RQF_LDLM_INTENT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ecd7515 lustre_msg_check_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ede0b42 ldlm_blocking_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f0e4f87 RQF_OST_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f733fd9 client_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2fbcf8e1 ptlrpc_nrs_policy_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2fd2f737 lustre_msg_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x300ae10b __ptlrpc_free_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x301d4fcd RQF_MDS_READPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x302937e0 RQF_MDS_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3060b9c6 sptlrpc_rule_set_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x315021dd ptlrpc_at_set_req_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31838cb4 RMF_IDX_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3189f41b ptlrpc_hpreq_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3261b862 RQF_OST_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3290dca9 llog_origin_handle_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x334a8065 req_capsule_client_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x33bb7761 ldlm_typename +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x35939a3d lustre_swab_fiemap +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x370fd7ae do_set_info_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3750dbcd ldlm_cli_cancel_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3835ab4b RQF_LLOG_ORIGIN_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3858fb94 RMF_OBD_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3879e61a ptlrpc_activate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38c01799 RQF_LDLM_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38fce533 lustre_msg_set_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39f60a5f RMF_OST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a1e4bcb __lustre_unpack_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ab90f6e lustre_msg_bufcount +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ac00716 lustre_swab_hsm_user_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b6b7cba dump_ioo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bedb0c7 RMF_LLOGD_CONN_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c391bf8 sptlrpc_conf_target_get_rules +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c63e62b RQF_MDS_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ca50f33 RQF_MDS_HSM_CT_REGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ce7a24e ldlm_namespace_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d4db220 ptlrpc_schedule_difficult_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d7dc5f9 ldlm_pools_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d9f4fcb sptlrpc_gc_del_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dc47695 lustre_msg_get_magic +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dc68923 sptlrpc_sec_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dddb3e2 dump_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3e963dfc ldlm_enqueue_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ea075fa ldlm_pool_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3eaed993 ptlrpc_add_rqs_to_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f034caf lustre_msg_get_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f3915e6 ldlm_extent_shift_kms +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f752e78 RQF_MDS_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f9ee8a3 sptlrpc_import_flush_all_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3fb09616 ldlm_resource_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x41008cef RQF_LDLM_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x41d87461 ldlm_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x42391fc2 req_capsule_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43705ee4 RQF_LOG_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43af803b ptlrpc_request_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43d7efc8 lustre_msg_set_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44036eda RQF_MDS_GET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x440c2a71 RMF_FIEMAP_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x442778e9 ldlm_pool_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x444959fc ldlm_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4481591d RQF_OST_SET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x448b4733 ldlm_resource_unlink_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44d94328 llog_origin_handle_prev_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44ddf5aa sptlrpc_target_export_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45702ac4 sptlrpc_get_bulk_checksum +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45d05893 lustre_swab_lustre_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45e30cea lustre_swab_ldlm_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47f5e903 RMF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x48814c9f lustre_swab_ost_lvb_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x48cba2ac ptlrpc_queue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x498c03c5 lustre_msg_set_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a5a2416 RMF_DLM_REQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b09ce4b lustre_swab_mdt_rec_reint +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c09793b ldlm_cli_update_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c0b3f2c ptlrpcd_add_rqset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c39168e ptlrpc_abort_inflight +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c99006f ptlrpc_prep_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d7580d0 lustre_swab_hsm_user_item +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e1706e5 lustre_msg_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e696b96 ptlrpcd_queue_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4eb03a6f ptlrpcd_destroy_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f3d6082 req_capsule_other_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f766c3b lustre_swab_generic_32s +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50443f6a ptlrpc_init_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50dd74f8 RMF_STRING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x515195b8 ptlrpc_recover_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x52b4943b req_capsule_client_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x52c62150 RMF_RCS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53411557 RMF_DLM_REP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53a4a004 bulk_sec_desc_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x54ae5021 ldlm_lock_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x555eb7fe RQF_MDS_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x562d86fc client_import_find_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5771a6f4 ldlm_init_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x582bb197 ldlm_namespace_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x588035b4 RMF_UPDATE_REPLY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x58ea8944 ptlrpc_request_alloc_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x595ab175 lustre_swab_obd_quotactl +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x596582bf RMF_GETINFO_VALLEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x59ca398b ptlrpc_add_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a057439 interval_search +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5acc38da ldlm_lock2handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5af0d02a ldlm_lock_dump_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b3e50bc ptlrpc_init_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b6ba895 lustre_packed_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5bb6176a ptlrpc_cleanup_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5bc270db req_capsule_client_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c6a3a83 RQF_SEQ_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5caae213 ptlrpc_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e0b19b1 RMF_CLUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e2b7558 lustre_msghdr_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e6f435d RQF_OST_BRW_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e80f899 RQF_LLOG_ORIGIN_HANDLE_READ_HEADER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ec3284d RQF_MDS_HSM_CT_UNREGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ef44ac8 sptlrpc_import_sec_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ef831ee lustre_msg_get_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f4186b7 ptlrpc_pinger_del_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f732b12 ptlrpc_lprocfs_register_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f96ccdd ptlrpc_connection_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5fd7a85c ldlm_blocking_ast_nocheck +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6042bc15 RQF_MDS_REINT_RENAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x604e2505 RMF_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x607ec932 lustre_msg_set_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x60cd26ad RQF_MDS_REINT_CREATE_SYM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6118b36f ptlrpc_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6158fa0c req_capsule_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61646e1b RQF_MDS_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x618ad203 RQF_OST_GET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61dcf49b ptlrpc_resend_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62128c62 sptlrpc_register_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62192cf8 dump_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62aaae3f RQF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62baea84 ptlrpc_req_set_repsize +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62f78cec client_disconnect_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6315dd4c RMF_LLOGD_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6352a62d ldlm_get_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x647b6e48 lustre_swab_ldlm_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x64f80d55 ptlrpc_restart_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x652052d2 ptlrpc_free_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x653723dc RMF_LOGCOOKIES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6697cca7 ptlrpc_request_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x66de938e lustre_free_reply_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x66eca49e ldlm_pool_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x67b52d6b client_import_del_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x685eeaba RMF_DLM_GL_DESC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68cb2541 interval_is_overlapped +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68f49e5e ptlrpc_expired_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68f7e442 ptlrpc_prep_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6912990a RQF_OST_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x696ba811 lustre_msg_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69c9f04d RQF_MDS_REINT_LINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a3785c9 RMF_EADATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6b5d0511 ptlrpc_lprocfs_unregister_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6b793a99 ldlm_namespace_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ba9723d sptlrpc_svc_ctx_invalidate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d72828c sptlrpc_conf_log_update_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d7931cc RQF_UPDATE_OBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6e9ffb55 target_pack_pool_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ed20499 ldlm_revalidate_lock_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6efa82b0 RQF_MGS_TARGET_REG +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f6dc736 lustre_swab_mdt_remote_perm +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6fb92092 sptlrpc_flavor2name_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x703538e4 lustre_swab_hsm_current_action +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x703e7589 ptlrpc_unregister_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x715b0dbd sptlrpc_cli_ctx_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x723d43b6 sptlrpc_rule_set_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x725a892c RQF_MDS_REINT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74840056 lustre_msg_set_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75a2c40d ldlm_put_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x764cf1b4 ptlrpc_unpack_rep_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7697eb5b ldlm_pool_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76b728e5 lustre_swab_update_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77571cc6 lustre_swab_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77840c82 sptlrpc_rule_set_choose +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77f6f23b ldlm_lock_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78700b8d target_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78b6b248 sptlrpc_import_flush_my_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78bf9136 lustre_swab_ldlm_lock_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a2b9490 ldlm_pool_get_lvf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a61a0a7 req_capsule_server_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a832f10 RMF_CONN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a9585c8 sptlrpc_gc_add_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b158da4 lustre_swab_ldlm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7bbf8001 RMF_MDT_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7bc25702 ptlrpc_request_set_replen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7c4c6107 RQF_LDLM_CONVERT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7c768bf4 ptl_send_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d1ecd7f RQF_LDLM_INTENT_LAYOUT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d242204 ptlrpc_set_next_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d41a8b9 RQF_QUOTA_DQACQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dc0e7cd RMF_QUOTA_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dfb3c18 lustre_msg_clear_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7e25ae32 ptlrpc_commit_replies +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4925d8 interval_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4c99b1 ldlm_expired_completion_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f5a1cc7 lustre_msg_set_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f6d2357 lustre_msg_is_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x803d114a sptlrpc_sec_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80a9e8c3 lustre_msg_get_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80ecb4e3 RMF_MDS_HSM_CURRENT_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x817d7f1f lustre_msg_add_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x81f93c88 sptlrpc_cli_ctx_wakeup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x826d3c4f RQF_LDLM_GL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x837efb00 RMF_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x84219a82 ldlm_lock_downgrade +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8501dc0e req_capsule_server_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85135801 RMF_DLM_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85a9e0d8 RMF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85eecf67 sptlrpc_get_hash_alg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x862172f5 ptlrpc_buf_set_swabbed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x863db6eb RMF_HSM_USER_STATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x86fa8c3b ldlm_cli_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8760beaf lustre_swab_ldlm_policy_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x876c2551 RMF_GETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87bf7b3c sptlrpc_get_next_secid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8872f3d2 RMF_SETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x88d0f4a3 sptlrpc_cli_ctx_expire +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x88fff52d RMF_CAPA2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x89f9edf7 RQF_MDS_REINT_SETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a1ea476 lustre_swab_hsm_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a257736 RQF_MDS_HSM_STATE_GET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a9e46d3 llog_origin_handle_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8aa6cbe8 unlock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ab50273 ptlrpc_req_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ac440fa ptlrpc_uuid_to_connection +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b66901d req_capsule_server_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b854254 lustre_swab_mgs_config_res +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cb0db3e ptlrpc_set_add_new_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cb71d4b RQF_MDS_REINT_CREATE_SLAVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cc7ee73 ptlrpc_pinger_add_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d77ea75 lustre_msg_set_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d8e1ea8 ptlrpc_wake_delayed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8da3fca7 lustre_msg_add_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8e9abe4d RMF_GENERIC_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ec73e09 llog_initiator_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8edbfc11 ldlm_glimpse_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f01d4e9 lprocfs_wr_evict_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f0aceac RQF_MDS_HSM_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f2fe17e ldlm_pool_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8fec0451 lustre_msg_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x90398e14 ptlrpc_register_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x919c4ce3 RMF_OBD_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91cf58d3 RQF_MDS_PIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x937b1ee0 lustre_swab_mdt_ioepoch +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x93aa4771 ldlm_namespace_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x93e6e120 sptlrpc_gc_add_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9553c633 RQF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x95c5e4c5 ptlrpc_unregister_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x95d08f0c lustre_swab_mgs_target_info +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9660ace0 RMF_FLD_MDFLD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x967bfd52 RQF_OBD_PING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x96e2b256 ldlm_get_enq_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9798f2f1 RQF_MDS_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x980fcfdc ptlrpc_connection_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x98425c75 ldlm_resource_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x99fb2db8 ptlrpc_cleanup_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a258886 RQF_MDS_GETSTATUS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a6f2f6d lustre_msg_set_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a89bd2b sptlrpc_target_sec_part +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b88f6ce RMF_NIOBUF_REMOTE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9bb5198b RQF_MDS_CLOSE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9d7ea314 sptlrpc_pack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9fb088f1 lustre_swab_lov_mds_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa0e36e6f ldlm_init_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa10f0d3d RMF_UPDATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa114e643 ldlm_cli_enqueue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa14b5bc3 ptlrpc_request_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa163f4c3 dump_rniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa1b1349b ptlrpc_init_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa1f41d4c client_import_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2244636 RQF_MDS_GETATTR_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa22c0086 ldlm_error2errno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3868c1f ptlrpc_request_alloc_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3d2a6ee RMF_CAPA1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa47787ef RMF_PTLRPC_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4a2d089 RQF_OST_PUNCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4bea5ef lustre_swab_lmv_user_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4d763de ldlm_destroy_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5458dad ldlm_lock_decref_and_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5880075 ldlm_errno2error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa6c436ca RQF_MDS_WRITEPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa72fdb31 ptlrpc_set_add_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa760af92 req_capsule_client_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7d55cc3 RQF_MDS_REINT_CREATE_RMT_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7e360b1 RMF_OBD_IOOBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7ec567d RMF_CONNECT_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa8a4f828 ldlm_cli_cancel_unused_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9704f80 lustre_msg_get_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9c4658e lustre_swab_lov_user_md_v3 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9edf09d RQF_OBD_IDX_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xacebebbf llog_origin_handle_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xad0082b8 __ldlm_handle2lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xad8e1cc9 ldlm_lock_fail_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xadb2ad4b req_capsule_server_sized_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaddc3979 lustre_swab_lustre_capa_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xae24874b ldlm_cli_cancel_unused +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xae837eef ldlm_namespace_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf0f46dd ptlrpc_set_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf4e9658 RQF_MDS_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf50a0d6 RMF_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xafe45d38 sec2target_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0751fa4 RQF_LLOG_ORIGIN_HANDLE_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1b43d8a dump_rcs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb23e0264 lustre_pack_reply_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb27c2374 lustre_msg_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb291473d lustre_msg_early_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb2b1817d lustre_swab_ost_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4a7ecf3 lustre_msg_add_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb512ebc2 sptlrpc_parse_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb518ee43 lprocfs_rd_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb61cb95a RQF_MDS_GETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb68476df interval_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb6aafd03 RQF_MDS_DONE_WRITING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb6f5f17f ptlrpc_send_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7b38189 RMF_MDT_MD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7fa3cc8 RMF_LLOG_LOG_HDR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb8234989 ptlrpc_nrs_policy_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb903634e RQF_OST_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9b631cf lustre_swab_mgs_config_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbaa76097 lustre_msg_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbbf1f5ba ldlm_resource_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbc1370dc lustre_shrink_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd83bc44 RQF_OBD_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe47bc7e ping_evictor_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe71d3ea llog_origin_handle_next_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf2a2913 ptlrpc_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf98b86f RQF_MDS_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbffd4313 RQF_OST_BRW_WRITE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc06c4670 lustre_msg_get_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0867da7 RMF_REC_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0cdf55e RMF_MGS_SEND_PARAM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc11652e9 target_print_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc145ecfa ptlrpc_req_finished +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc19d9ac2 sptlrpc_lprocfs_cliobd_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2321b09 ldlm_namespace_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2594542 ldlm_pool_get_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2986d28 lustre_swab_ldlm_res_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2b1af57 RQF_MGS_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2be922a RMF_SYMTGT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc559a634 RMF_LAYOUT_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc593388e ptlrpc_prep_fcset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc60a60e1 RQF_OST_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc694be4b RQF_LLOG_ORIGIN_HANDLE_PREV_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc6eed409 client_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc763fabc sptlrpc_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc79b9c67 ldlm_pools_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7ca8257 RQF_MDS_REINT_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7e47564 ptlrpc_interrupted_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8f586a9 ptlrpc_connection_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8f81cf9 ptlrpc_resend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xca5a81ec ptlrpc_pinger_ir_down +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2cc0cf lustre_swab_lquota_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2ceaff sptlrpc_secflags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcc9c2606 ptlrpc_unregister_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcdcae91e __ptlrpc_prep_bulk_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcdd7a76d req_capsule_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce1a689b sptlrpc_enc_pool_add_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce86066d lustre_msg_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcec513c9 RQF_MDS_UNPIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xced015be sptlrpc_rule_set_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9963db lustre_msg_get_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9aab6a RQF_MDS_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd0e88644 ldlm_lock_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd1206d37 req_capsule_server_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd1b78551 lprocfs_wr_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd250e283 ldlm_resource_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2983334 lustre_swab_swap_layouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2e0d4eb lustre_msg_get_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2f72f3c ptlrpc_request_bufs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd32888f3 sptlrpc_cli_enlarge_reqbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd3dae408 ldlm_it2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd537ded2 lustre_swab_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd53cfabe ptlrpc_disconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd5d5dd91 _ldlm_lock_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd67a5d7b lustre_swab_update_reply_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd69e0a27 RQF_MDS_IS_SUBDIR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6aa3ff3 ptlrpc_service_health_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6c3ebfb RMF_FIEMAP_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7910326 lustre_swab_obd_statfs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7a9e7fd client_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7dc7176 ldlm_pool_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8009706 ldlm_lock_allow_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8b91b3e lustre_swab_lov_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8d3f90c ldlm_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8f06300 RQF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd9561861 RQF_LDLM_INTENT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd97d9c22 req_capsule_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd9968af3 ptlrpc_unpack_req_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd9edf550 req_capsule_init_area +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda2ac111 sptlrpc_proc_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb1fb0a2 RQF_MDS_REINT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb9d5a6a lustre_swab_niobuf_remote +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdcf910b9 lustre_swab_ost_last_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd0ffb04 sptlrpc_flavor2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd30d7bf RMF_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd69f332 ldlm_namespace_new +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xddc40a85 lustre_msg_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde12d36b RMF_MDS_HSM_ARCHIVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde555d70 sptlrpc_enc_pool_del_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdecc80e7 sptlrpc_cli_unwrap_bulk_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdee87192 sptlrpc_conf_log_update_begin +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf701ae7 lustre_swab_fid2path +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0a94913 ldlm_lock_change_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0cc694c RQF_LLOG_ORIGIN_HANDLE_NEXT_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe32b6bf8 lustre_pack_reply_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe40e0a50 lustre_msg_get_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe4b6d880 ptlrpc_prep_bulk_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe4dcef60 ldlm_lock2desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe57bd972 sptlrpc_current_user_desc_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6091dd5 ptlrpc_deactivate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe643998e RQF_OST_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe65a4af8 sptlrpc_target_update_exp_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6df24a3 ldlm_cli_enqueue_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6f0dc96 RQF_OST_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6ff8c7c ptlrpc_lprocfs_brw +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7062b5f RMF_U32 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe73c726f ldlm_cancel_resource_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7512278 ptlrpcd_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe847621a req_capsule_extend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe86e981b ptlrpc_request_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe8ca57e4 lustre_pack_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xea0ee313 ptlrpc_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabaa0b1 lustre_swab_mdt_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabac4fc sptlrpc_rule_set_merge +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xead1d8e6 llog_origin_handle_read_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xead8a124 ptlrpc_prep_req_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeafd2aa8 ldlm_pool_set_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeba464fa ldlm_pool_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xebb64e68 req_layout_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec226f66 ping_evictor_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec6b05b6 lprocfs_wr_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec939a00 RQF_MDS_REINT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecaca0cd sptlrpc_cli_ctx_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecace5c1 RQF_OST_GET_INFO_GENERIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed1c10d6 ptlrpc_connection_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xedcb740d sptlrpc_name2flavor_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xee10760f ldlm_prep_elc_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeec8822a lprocfs_wr_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeeded5be lock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xef1aeca9 RMF_FLD_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xef405136 ptlrpc_retain_replayable_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0241d6e lustre_swab_hsm_progress_kernel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0d52b5f ptlrpc_pinger_suppress_pings +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf1300275 _sptlrpc_enlarge_msg_inplace +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf21c1bbf ldlm_replay_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf25fb5a4 ptlrpc_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf277c125 RQF_OST_GET_INFO_FIEMAP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf27d49dc sptlrpc_target_choose_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf282f279 req_capsule_set_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf35f132b lustre_swab_ldlm_resource_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3d44370 RQF_OST_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf43540b9 lustre_swab_mgs_nidtbl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf45085e1 sptlrpc_conf_log_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf4ae094b req_capsule_server_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf55c033b RMF_MGS_CONFIG_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf584a16b sptlrpc_part2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf596e9ae sptlrpc_conf_log_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf607fc23 sptlrpc_flavor2name_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf617ab8a lustre_msg_get_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf697b756 ldlm_dump_all_namespaces +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7408f84 lustre_swab_hsm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7ba40c0 RMF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7c04894 sptlrpc_enc_pool_get_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7c1798d ptlrpc_reconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf85cb27e sptlrpc_parse_rule +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf870fed9 RQF_LDLM_GL_DESC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9051bd6 RQF_QC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf94e41e0 deuuidify +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf973aa93 lustre_swab_lov_user_md_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9ee11e2 lustre_msg_set_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9f72dfc RMF_TGTUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa51688d interval_insert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb46b616 ptlrpcd_alloc_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb99bcca sptlrpc_cli_wrap_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc2fa83f ptlrpc_del_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd148bf8 RMF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd34e44b ptlrpcd_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfeb86caf ptlrpc_fail_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff02a0e9 ldlm_lock_set_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffc807e8 sptlrpc_unpack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffe29c3f RQF_LDLM_ENQUEUE +EXPORT_SYMBOL drivers/staging/media/cxd2099/cxd2099 0xacf17e63 cxd2099_attach +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x1c39fee3 go7007_snd_remove +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x1c5d36a1 go7007_parse_video_stream +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x233a3806 go7007_alloc +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x2e78fbe5 go7007_snd_init +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x42e604c7 go7007_read_addr +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x6c79f8cf go7007_register_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x79b2cad3 go7007_read_interrupt +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x8faeed4f go7007_update_board +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xa0c7ccf3 go7007_boot_encoder +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0c3c1920 rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x10e931c3 rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1125ec3d rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x27522c9c rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x29b2c888 rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2c54fcec rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x34af3328 rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3593cad7 rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x414f72d8 rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4a789de6 Dot11d_Channelmap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5b49bb82 rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5bdccc1f rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5e9fd393 rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x64a68b9b rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x654b4992 rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x69e454c7 rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6a0ea329 rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x718a1240 dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7a1680a8 alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x96bec9aa rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9ebe5c95 rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9f3f1f44 notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa0b03ca3 rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa10641cc rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa5499c8b rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa81748a3 rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa876bd6f HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xac00d5e9 rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb3334ba0 rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb3977e71 rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb5ff8d64 rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbbd59e59 rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbe1420f2 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbf955373 rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbfc54b3d rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc123356b rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc54cacda rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc5c2c62a rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xca7c005e rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xce1f5678 rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd2ad2fc0 rtllib_wpa_supplicant_ioctl +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd8fbfc8d rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdbdfbe65 rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe111dbca rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe41b84b3 free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe459ce7f rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe56e7215 rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xee77b3b4 rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf7600c60 rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf9389ba5 rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf9a7e60d RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x080e505c ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0856dff4 ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x116eb994 DOT11D_ScanComplete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x150218b5 ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x18569d3c Dot11d_Reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x20c682a5 ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x25f8f269 ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x26541dde ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2762a4b0 ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x27b02f84 ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3761392e ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x38e654d2 ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x39816477 ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3cbb989d ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x403fc747 ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x439d82a2 ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x45296aa7 ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x46929eee Dot11d_Init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6200846a ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6296178a ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x66440ace notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6c32c8b5 ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x70da9110 ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x72b8c678 ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7517e4ab ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x761b199d SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x76a8cd01 Dot11d_UpdateCountryIe +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x77a003da ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x78712705 ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7d62bb30 IsLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7f2e083b DOT11D_GetMaxTxPwrInDbm +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x87e9632c ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8a05cd14 ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8ae62f56 ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9049bf43 ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x93eb5b24 ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa0c0cdf2 ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xad352e95 ToLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xaf1b551d ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb10a8af1 ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb334c445 ieee80211_send_probe_requests_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb4770d12 ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb71fd15e ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb903030a ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbe08d30f ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbf006424 ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc1944a57 ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc3fa7f61 ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xcf0ea903 ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd0b962cb ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd39eb112 HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xee190944 ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf064115f ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf7c9f3d9 ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf87f4428 ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfe1a94da ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0017f35f set_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x00ea0cde set_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x06d6f244 get_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x09df8f3e set_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0a8d32c3 get_bypass_slave_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1936264c set_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1d2eb8ca get_tap_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x203af1f7 reset_bypass_wd_timer_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2070f14a set_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x27b990ef get_bypass_info_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2ba7cd35 get_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2c3f1c17 get_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2f59e636 get_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2fdb893a get_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x361cf40a get_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x45ca99c3 set_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x550a188c set_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x5cb59e92 get_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x66b60122 set_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x675208c0 set_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x692623f2 get_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x75131ec6 set_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x76c0b7d0 set_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e872825 get_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e8d701e get_wd_expire_time_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x86388b07 get_bp_disc_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x93ae4648 get_wd_set_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x95e42b0d is_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9df5f807 set_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9e21f42e set_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xa689a214 get_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xae117788 get_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xc368d30d get_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xccab5de0 get_bypass_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd3e034b3 get_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9c1ccfc get_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9d38d97 set_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xe640f06e set_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xecdaa456 set_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xedcd3c1b get_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf06d67bf set_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf57c1671 get_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf693c3a1 bp_if_scan_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf8237882 get_bypass_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xfa59240d get_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05af3c4c set_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05b08a42 set_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0b0d5ce0 get_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0fc2e83c reset_bypass_wd_timer +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x123a8133 get_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x157ec89c get_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2440f05a get_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2b01d1d4 set_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2c27a2f0 set_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2da97f4b is_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2e86c67b get_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37416370 get_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37bdab27 get_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x3da96a18 get_bypass_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4025805e get_bypass_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4940a0cc get_bypass_info +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4d21ff51 get_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5147360c get_bp_disc_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x515d4df1 get_bypass_slave +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5560267e set_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5be44d44 set_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6653590c get_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6bda14ec get_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x72c618ae set_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x76d47e6f set_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x794e3815 set_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x7c6cbc16 get_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x84a263dc set_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x8a16f22c set_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x946ff795 get_wd_set_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x94f6aff2 get_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x9d1ecf73 set_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xb1385629 set_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xbff68c45 set_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xc871c561 get_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xcee528df set_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd202dd85 get_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd787f151 get_wd_expire_time +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xdb6a39d2 get_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xebd25ae5 get_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf1e9f8c1 set_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf224abd9 get_tap_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf5a591b2 set_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf643fd4c get_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x1c6d2993 xillybus_do_cleanup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x59579baf xillybus_endpoint_remove +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xd77ab652 xillybus_init_endpoint +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xd91ec31f xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x01887299 iscsit_set_unsoliticed_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x02cfa281 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x09769af5 iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1266c4ea iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1f9d0d38 iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2bda6100 iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3ba82294 iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x50ae839c iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x52736f68 iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5313ebfe iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5449c649 iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x54988f2d iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6e5a8d97 iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x70c10aca iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x72feaf9b iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x865a0758 iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x91528da0 iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x95c4e8cc iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa9c5dc14 iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xaf6b7fd3 iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb6195085 iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbc52086a iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc067dc68 iscsit_handle_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc41cf5a0 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc6c6b904 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc93a3ed1 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd11fdd62 iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf67cb7d6 iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x02de3b18 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x04db82fe core_tpg_add_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x051a27c8 target_get_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x051d2ffa sbc_execute_unmap +EXPORT_SYMBOL drivers/target/target_core_mod 0x05712064 core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x09dca2b0 core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x0d140160 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0x0ddea922 core_tpg_del_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x0e45abd2 transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x11101f23 target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0x16e37352 target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x187c821b transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0x1a86b725 iscsi_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x2016bdd5 sas_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x2391c0ed spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x28f5f86d spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0x2f25c059 transport_subsystem_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x3012e9f9 fc_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x31e4b3c8 core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x32e1444a transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x365bce4c core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x38040263 transport_subsystem_release +EXPORT_SYMBOL drivers/target/target_core_mod 0x3c38e062 sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x3ef38d22 target_fabric_configfs_free +EXPORT_SYMBOL drivers/target/target_core_mod 0x43a200ba iscsi_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x48dd5997 sas_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x4bc17da4 target_put_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x518f03e3 transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x5553e8d4 transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x563042cd sas_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x594fe799 sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x5bd9bd4e transport_init_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x5c9c2307 transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0x5dd79cb3 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0x6154e540 target_setup_cmd_from_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x6e10d880 target_fabric_configfs_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x717e8c11 spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0x750c4086 fc_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x7dbada9d transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x8189d9b8 iscsi_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x843036bb target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x85aa880c transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x8b34f86f core_tpg_clear_object_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x8cd74e6e transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x910a8148 target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0x9490039a spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x9ff397ce transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xa369e9c8 iscsi_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xa3e276f0 transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xa40601cb transport_check_aborted_status +EXPORT_SYMBOL drivers/target/target_core_mod 0xa4d2e6b6 target_fabric_configfs_init +EXPORT_SYMBOL drivers/target/target_core_mod 0xa5a8dc1f core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0xaa17988f transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0xaf6d0ca7 target_fabric_configfs_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xafccf2c9 transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xb28e1aca target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0xb970ed97 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0xb9e5366c target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xba7a4c63 __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xc7293bda transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xcd00d6c8 sas_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0xd562096b fc_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xd9833b03 fc_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xdb4adf6b target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xdb9139af transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xdd0ac269 target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xde464c6f target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xe5589c6d transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0xe7c01761 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xf01621c7 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf2d0d9bd core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xf690accd sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0xfad65aba core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xfed7be96 transport_deregister_session +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0x443d606e usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0xc8db43aa unregister_gadget_item +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x06186271 gether_get_ifname +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x114448e1 gether_set_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x19cc018c gether_setup_name_default +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x4c81e844 gether_set_gadget +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x55341422 gether_get_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x65de8373 gether_connect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x6811ced4 gether_register_netdev +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x6e6a4b06 gether_get_host_addr_u8 +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x8d5e34fb gether_get_host_addr_cdc +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xad99d805 gether_set_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xade47298 gether_get_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xb47063c2 gether_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xe21b915c gether_setup_name +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xe5b034ba gether_set_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xf56c2d3e gether_get_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3a6d4f22 rndis_free_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3ca38e3a rndis_signal_connect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x4ca90996 rndis_signal_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x566fbf11 rndis_rm_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x5d22b406 rndis_register +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x7626cd49 rndis_add_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x785d494b rndis_msg_parser +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x840dd143 rndis_deregister +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x85a4e452 rndis_set_param_dev +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x988ad2a2 rndis_set_param_vendor +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x9acf72e4 rndis_set_param_medium +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xa90054ee rndis_uninit +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xb971ebca rndis_get_next_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xd2fe47b1 rndis_set_host_mac +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x02316d01 fsg_store_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1710b539 fsg_fs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1b1cc3af store_cdrom_address +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x2933ee1d fsg_ss_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x2cd3d6ba fsg_show_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x398778e1 fsg_ss_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x39c8abfc fsg_store_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x423845e4 fsg_ss_bulk_in_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x4324ba30 fsg_show_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x50834b74 fsg_show_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x56344daf fsg_hs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x5b9dea49 fsg_show_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x6c02f732 fsg_lun_open +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x7736b7a4 fsg_show_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x85896882 fsg_store_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x95cffb3e fsg_hs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x980fbdd6 fsg_lun_fsync_sub +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5cae92f fsg_ss_bulk_out_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5f99b69 fsg_fs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb52ba28a fsg_intf_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb54d0d95 fsg_fs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xbc436afc fsg_store_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xd731b76c fsg_store_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xf4efc0c8 fsg_ss_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xff5af06e fsg_lun_close +EXPORT_SYMBOL drivers/usb/gadget/usb_f_rndis 0xe4e6bb87 rndis_borrow_net +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0xde6c396d sl811h_driver +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xa64a4cea usb_nop_xceiv_unregister +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xd0e43207 usb_nop_xceiv_register +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x046a0e4e usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x0544a176 usb_wwan_set_termios +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x14abe4f0 usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x17ca120f usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x1af9ad7a usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x2fd25466 usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x4748be24 usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x5d5dbe07 usb_wwan_ioctl +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x7f289be3 usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x8b4eb405 usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x90306f77 usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x9600aaa1 usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xaeea57a4 usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x28bec805 usb_serial_resume +EXPORT_SYMBOL drivers/usb/serial/usbserial 0xaab5172b usb_serial_suspend +EXPORT_SYMBOL drivers/vhost/vringh 0x0dda8c5a vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x1f063017 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x2e91ca97 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x367ce26a vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x36dfce73 vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3eaf442a vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x3fa42e4f vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5dafbd4e vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x66af098b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x6d0e7948 vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x7bda5e6d vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x821e9390 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0xaf8e4a0e vringh_notify_disable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xafb47dae vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc884d704 vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc8bee0a4 vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xd11d2709 vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xda4ea4cc vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0xfc7dcad2 vringh_getdesc_user +EXPORT_SYMBOL drivers/video/backlight/generic_bl 0x366d19ef genericbl_limit_intensity +EXPORT_SYMBOL drivers/video/backlight/lcd 0x4bfb409f lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0x6e70994b devm_lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0x84935fb8 devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0xb1d65856 lcd_device_unregister +EXPORT_SYMBOL drivers/video/cyber2000fb 0x0cc3ede5 cyber2000fb_detach +EXPORT_SYMBOL drivers/video/cyber2000fb 0x534b6f18 cyber2000fb_disable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xb39f68d1 cyber2000fb_enable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xd24f778a cyber2000fb_attach +EXPORT_SYMBOL drivers/video/macmodes 0x09292c2f mac_find_mode +EXPORT_SYMBOL drivers/video/macmodes 0x233917d1 mac_vmode_to_var +EXPORT_SYMBOL drivers/video/macmodes 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x4a72e625 matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xd0747936 matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xed0716b9 g450_mnp2f +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x62776d44 DAC1064_global_restore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x6bafb224 DAC1064_global_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xdb2a1d0a matrox_G100 +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xdf5ed684 matrox_mystique +EXPORT_SYMBOL drivers/video/matrox/matroxfb_Ti3026 0x6383dbb1 matrox_millennium +EXPORT_SYMBOL drivers/video/matrox/matroxfb_accel 0x6831653d matrox_cfbX_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x082a06ea matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x10b6ff02 matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x39087545 matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xdc549f4a matroxfb_register_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0xb94f9d78 matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0xd82ba84d matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x8418c8af matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x9accf3ed matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xd060f79d matroxfb_read_pins +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xdba584ca matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xffcbc8d5 matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/mb862xx/mb862xxfb 0xac063309 mb862xxfb_init_accel +EXPORT_SYMBOL drivers/video/output 0x3c4683e4 video_output_unregister +EXPORT_SYMBOL drivers/video/output 0xa70ec602 video_output_register +EXPORT_SYMBOL drivers/video/sis/sisfb 0x3037658e sis_malloc +EXPORT_SYMBOL drivers/video/sis/sisfb 0x454a3cf0 sis_free +EXPORT_SYMBOL drivers/video/svgalib 0x17f3f471 svga_set_default_seq_regs +EXPORT_SYMBOL drivers/video/svgalib 0x1be6dc30 svga_set_textmode_vga_regs +EXPORT_SYMBOL drivers/video/svgalib 0x2b11ebda svga_settile +EXPORT_SYMBOL drivers/video/svgalib 0x356d738f svga_get_tilemax +EXPORT_SYMBOL drivers/video/svgalib 0x3e99c067 svga_tilecursor +EXPORT_SYMBOL drivers/video/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/svgalib 0x65984e0e svga_tileblit +EXPORT_SYMBOL drivers/video/svgalib 0x6e4adb1e svga_check_timings +EXPORT_SYMBOL drivers/video/svgalib 0x80f24d95 svga_wcrt_multi +EXPORT_SYMBOL drivers/video/svgalib 0x8de63fb4 svga_set_timings +EXPORT_SYMBOL drivers/video/svgalib 0xa561591b svga_get_caps +EXPORT_SYMBOL drivers/video/svgalib 0xcbf90931 svga_tilefill +EXPORT_SYMBOL drivers/video/svgalib 0xd1429fca svga_wseq_multi +EXPORT_SYMBOL drivers/video/svgalib 0xd22ca511 svga_set_default_atc_regs +EXPORT_SYMBOL drivers/video/svgalib 0xe28d2a49 svga_set_default_gfx_regs +EXPORT_SYMBOL drivers/video/svgalib 0xe889783e svga_tilecopy +EXPORT_SYMBOL drivers/video/svgalib 0xef774f5d svga_compute_pll +EXPORT_SYMBOL drivers/video/svgalib 0xf2db5956 svga_match_format +EXPORT_SYMBOL drivers/video/syscopyarea 0x24566e18 sys_copyarea +EXPORT_SYMBOL drivers/video/sysfillrect 0x7f8167dd sys_fillrect +EXPORT_SYMBOL drivers/video/sysimgblt 0x370372a1 sys_imageblit +EXPORT_SYMBOL drivers/video/vgastate 0x686de290 restore_vga +EXPORT_SYMBOL drivers/video/vgastate 0xe7a2620e save_vga +EXPORT_SYMBOL drivers/vme/vme 0x00d7e722 vme_lm_count +EXPORT_SYMBOL drivers/vme/vme 0x072f901c vme_master_rmw +EXPORT_SYMBOL drivers/vme/vme 0x0ea39e59 vme_bus_type +EXPORT_SYMBOL drivers/vme/vme 0x0ec5babe vme_dma_free +EXPORT_SYMBOL drivers/vme/vme 0x10b7b95e vme_slave_request +EXPORT_SYMBOL drivers/vme/vme 0x19b2bd08 vme_new_dma_list +EXPORT_SYMBOL drivers/vme/vme 0x20df5a3d vme_dma_pci_attribute +EXPORT_SYMBOL drivers/vme/vme 0x3e95083c vme_slave_get +EXPORT_SYMBOL drivers/vme/vme 0x41862ad4 vme_alloc_consistent +EXPORT_SYMBOL drivers/vme/vme 0x43d6da50 vme_slot_get +EXPORT_SYMBOL drivers/vme/vme 0x46649cd1 vme_lm_set +EXPORT_SYMBOL drivers/vme/vme 0x48b99a13 vme_lm_free +EXPORT_SYMBOL drivers/vme/vme 0x4baf35a7 vme_master_get +EXPORT_SYMBOL drivers/vme/vme 0x535c8308 vme_dma_pattern_attribute +EXPORT_SYMBOL drivers/vme/vme 0x5aff4177 vme_lm_get +EXPORT_SYMBOL drivers/vme/vme 0x6594a228 vme_lm_request +EXPORT_SYMBOL drivers/vme/vme 0x695adc61 vme_dma_list_exec +EXPORT_SYMBOL drivers/vme/vme 0x6e6f6a3d vme_register_bridge +EXPORT_SYMBOL drivers/vme/vme 0x7019c335 vme_dma_request +EXPORT_SYMBOL drivers/vme/vme 0x7cf35220 vme_master_free +EXPORT_SYMBOL drivers/vme/vme 0x7f963078 vme_register_driver +EXPORT_SYMBOL drivers/vme/vme 0x7fde2edb vme_master_read +EXPORT_SYMBOL drivers/vme/vme 0x840270af vme_master_request +EXPORT_SYMBOL drivers/vme/vme 0x90695906 vme_free_consistent +EXPORT_SYMBOL drivers/vme/vme 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL drivers/vme/vme 0x9641a1c9 vme_irq_free +EXPORT_SYMBOL drivers/vme/vme 0x9aeb07e8 vme_lm_attach +EXPORT_SYMBOL drivers/vme/vme 0x9cff60cb vme_irq_handler +EXPORT_SYMBOL drivers/vme/vme 0xa31bdf07 vme_master_set +EXPORT_SYMBOL drivers/vme/vme 0xafc90867 vme_irq_generate +EXPORT_SYMBOL drivers/vme/vme 0xb5d34e3d vme_unregister_driver +EXPORT_SYMBOL drivers/vme/vme 0xb8c69902 vme_dma_list_free +EXPORT_SYMBOL drivers/vme/vme 0xcc086f53 vme_unregister_bridge +EXPORT_SYMBOL drivers/vme/vme 0xd797b9a5 vme_master_write +EXPORT_SYMBOL drivers/vme/vme 0xdf115679 vme_irq_request +EXPORT_SYMBOL drivers/vme/vme 0xdff905e5 vme_slave_free +EXPORT_SYMBOL drivers/vme/vme 0xe693a6ce vme_get_size +EXPORT_SYMBOL drivers/vme/vme 0xefd1624a vme_dma_free_attribute +EXPORT_SYMBOL drivers/vme/vme 0xf5a10e25 vme_slave_set +EXPORT_SYMBOL drivers/vme/vme 0xfacd8e72 vme_dma_vme_attribute +EXPORT_SYMBOL drivers/vme/vme 0xfe51fc96 vme_dma_list_add +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x0e3e12c3 w1_ds2760_read +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x2c11afbd w1_ds2760_recall_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xaa0cea1f w1_ds2760_store_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xdf33d956 w1_ds2760_write +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x0ec97810 w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x55ef1a2b w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x6eccd76b w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0xa30d6bf8 w1_ds2781_io +EXPORT_SYMBOL drivers/w1/wire 0x47cc9ccf w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0xd039c61f w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0xe820afdc w1_remove_master_device +EXPORT_SYMBOL drivers/w1/wire 0xecb1018b w1_unregister_family +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0x04e133fc iTCO_vendor_check_noreboot_on +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xa78bd894 iTCO_vendor_pre_set_heartbeat +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xb5f20875 iTCO_vendor_pre_keepalive +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xc4f657bf iTCO_vendor_pre_stop +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xdc6effc9 iTCO_vendor_pre_start +EXPORT_SYMBOL fs/btrfs/btrfs 0x27476846 ulist_reinit +EXPORT_SYMBOL fs/btrfs/btrfs 0x41e6a9d2 ulist_init +EXPORT_SYMBOL fs/btrfs/btrfs 0x7e2ee765 ulist_free +EXPORT_SYMBOL fs/btrfs/btrfs 0xa2eec2e8 ulist_fini +EXPORT_SYMBOL fs/btrfs/btrfs 0xb1320bc8 ulist_add +EXPORT_SYMBOL fs/btrfs/btrfs 0xb42289d2 ulist_alloc +EXPORT_SYMBOL fs/btrfs/btrfs 0xc2c745db ulist_next +EXPORT_SYMBOL fs/configfs/configfs 0x0209d1e2 configfs_unregister_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0x16347ad5 config_item_init +EXPORT_SYMBOL fs/configfs/configfs 0x26078fef config_item_put +EXPORT_SYMBOL fs/configfs/configfs 0x3c0c9875 config_group_init +EXPORT_SYMBOL fs/configfs/configfs 0x54d27089 config_item_get +EXPORT_SYMBOL fs/configfs/configfs 0x5b35f289 configfs_depend_item +EXPORT_SYMBOL fs/configfs/configfs 0x68c9744d config_item_set_name +EXPORT_SYMBOL fs/configfs/configfs 0x71dd6db8 configfs_undepend_item +EXPORT_SYMBOL fs/configfs/configfs 0x7893f263 config_item_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0x84dca409 configfs_register_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0xfa4f6701 config_group_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0xfa50cd70 config_group_find_item +EXPORT_SYMBOL fs/exofs/libore 0x1cd9b7d0 ore_get_rw_state +EXPORT_SYMBOL fs/exofs/libore 0x1ddc63d1 extract_attr_from_ios +EXPORT_SYMBOL fs/exofs/libore 0x228a38bb ore_check_io +EXPORT_SYMBOL fs/exofs/libore 0x28806871 ore_verify_layout +EXPORT_SYMBOL fs/exofs/libore 0x4527e170 ore_calc_stripe_info +EXPORT_SYMBOL fs/exofs/libore 0x4770bf07 ore_write +EXPORT_SYMBOL fs/exofs/libore 0x79953ff1 ore_put_io_state +EXPORT_SYMBOL fs/exofs/libore 0x9277d964 ore_read +EXPORT_SYMBOL fs/exofs/libore 0x93f30bff ore_truncate +EXPORT_SYMBOL fs/exofs/libore 0x9d827dd2 ore_remove +EXPORT_SYMBOL fs/exofs/libore 0xa3d2a634 g_attr_logical_length +EXPORT_SYMBOL fs/exofs/libore 0xc1c5f501 ore_create +EXPORT_SYMBOL fs/exofs/libore 0xd61cce72 ore_get_io_state +EXPORT_SYMBOL fs/fscache/fscache 0x019fdd3d __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0x01b3a4d8 fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0x04ba7e1e __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x04bf25e1 fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0x0624d336 fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0x07e6d0df fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0x166f3334 fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0x211e4115 __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x2a2bac9e __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0x2b52ad58 fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0x2d8054ec fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0x2ea14e05 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x3207b7c0 __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x367932a3 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x38044ef0 fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0x3a86cc23 __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x41f0a1c3 __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0x431dfb64 fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x43b78f13 fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0x58b461ed __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x5b194641 __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0x615244d7 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x61bd64c1 __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x66488b68 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0x6c947112 __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x73bca8ae __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x7a490ee4 __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x7b7f782f __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x943e24ff __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xa33a5cc7 __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0xa852e165 fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0xb742868a fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0xbf96b0dc fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0xc166ec0d __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xc43b318d fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0xf32e019e __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xf9c128f7 fscache_io_error +EXPORT_SYMBOL fs/nfsd/nfsd 0x35e33c1e nfs4_acl_write_who +EXPORT_SYMBOL fs/nfsd/nfsd 0x5a157ae4 nfs4_acl_get_whotype +EXPORT_SYMBOL fs/nfsd/nfsd 0xa0f4b528 nfs4_acl_posix_to_nfsv4 +EXPORT_SYMBOL fs/nfsd/nfsd 0xb25b2957 nfs4_acl_nfsv4_to_posix +EXPORT_SYMBOL fs/nfsd/nfsd 0xe13337f0 nfs4_acl_new +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x1dead2b2 qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x21510859 qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x73fffc36 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x9e73027e qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0xa78929ca qtree_write_dquot +EXPORT_SYMBOL lib/cordic 0x434bfd07 cordic_calc_iq +EXPORT_SYMBOL lib/crc-ccitt 0x3771b461 crc_ccitt +EXPORT_SYMBOL lib/crc-ccitt 0x75811312 crc_ccitt_table +EXPORT_SYMBOL lib/crc-itu-t 0xd29b009f crc_itu_t_table +EXPORT_SYMBOL lib/crc-itu-t 0xf5b4a948 crc_itu_t +EXPORT_SYMBOL lib/crc7 0xa7587646 crc7 +EXPORT_SYMBOL lib/crc7 0xd80c3603 crc7_syndrome_table +EXPORT_SYMBOL lib/crc8 0x41248eaf crc8 +EXPORT_SYMBOL lib/crc8 0xab9ad613 crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xd4534d80 crc8_populate_msb +EXPORT_SYMBOL lib/libcrc32c 0x27000b29 crc32c +EXPORT_SYMBOL lib/lru_cache 0x1097f090 lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0x1611f01c lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0x1ae95c1a lc_get +EXPORT_SYMBOL lib/lru_cache 0x22bdae4d lc_committed +EXPORT_SYMBOL lib/lru_cache 0x2324a210 lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x245f4bed lc_is_used +EXPORT_SYMBOL lib/lru_cache 0x72f8100b lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0x741d6b5d lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x94933238 lc_put +EXPORT_SYMBOL lib/lru_cache 0x9c797a6a lc_destroy +EXPORT_SYMBOL lib/lru_cache 0xa35c2d4d lc_create +EXPORT_SYMBOL lib/lru_cache 0xa8226c6b lc_set +EXPORT_SYMBOL lib/lru_cache 0xc011064b lc_reset +EXPORT_SYMBOL lib/lru_cache 0xcee796cb lc_find +EXPORT_SYMBOL lib/lru_cache 0xd0afa00c lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0xd37ef4a2 lc_del +EXPORT_SYMBOL lib/lru_cache 0xfabb5c85 lc_element_by_index +EXPORT_SYMBOL lib/lz4/lz4_compress 0xcbc5d521 lz4_compress +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x26c3aa22 lz4hc_compress +EXPORT_SYMBOL lib/raid6/raid6_pq 0x0bd662f6 raid6_gfmul +EXPORT_SYMBOL lib/raid6/raid6_pq 0x15fe0cd3 raid6_gfexp +EXPORT_SYMBOL lib/raid6/raid6_pq 0x5ba93f9d raid6_gfinv +EXPORT_SYMBOL lib/raid6/raid6_pq 0xb0d904b7 raid6_empty_zero_page +EXPORT_SYMBOL lib/raid6/raid6_pq 0xce45a6f1 raid6_gfexi +EXPORT_SYMBOL lib/raid6/raid6_pq 0xd9e91f83 raid6_vgfmul +EXPORT_SYMBOL net/802/p8022 0x65b385c5 unregister_8022_client +EXPORT_SYMBOL net/802/p8022 0xc0341010 register_8022_client +EXPORT_SYMBOL net/802/p8023 0x5790ba76 make_8023_client +EXPORT_SYMBOL net/802/p8023 0x8e0f0e83 destroy_8023_client +EXPORT_SYMBOL net/802/psnap 0xafe55d6c register_snap_client +EXPORT_SYMBOL net/802/psnap 0xba3f4c95 unregister_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x0d8e1241 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0x11fc0b00 p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x1a37c7e9 p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x2786d4f9 p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0x28da0d3f p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0x2956865c p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0x2d2d2ce1 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x30a7c4ad p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x326c4bb7 v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x35d1e27e p9_idpool_get +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x438a8910 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0x4456c474 p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x44d2c2c0 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0x45b5a111 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0x47a42416 p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0x4ba97790 p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0x4c22a38f p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0x4fa65360 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0x514f5e24 p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0x52edbe53 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x539d6c1d p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0x561ec2b3 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x5c4756be p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0x62ab9aca p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0x630cda9d p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x71b8290e p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x808f8c57 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0x8190f0dc v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0x88118dc9 p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0x8aabefdd p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x91a8fcf5 p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0x977a0030 p9_nr_pages +EXPORT_SYMBOL net/9p/9pnet 0x992aa198 p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0x99feaa7d p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0x9a531f8a p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x9cb0a1b2 p9_payload_gup +EXPORT_SYMBOL net/9p/9pnet 0xa43b67d6 p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0xb2558cec p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0xbfc7ca42 p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0xc5db54a9 p9_idpool_destroy +EXPORT_SYMBOL net/9p/9pnet 0xd1132245 p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0xd6a56761 p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0xe1c339db p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xeb1b9e2b v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0xee911e93 p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0xf4a111d8 p9_idpool_create +EXPORT_SYMBOL net/9p/9pnet 0xf7e3b67f p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0xf84f2022 p9_idpool_put +EXPORT_SYMBOL net/9p/9pnet 0xfd40c79d p9_idpool_check +EXPORT_SYMBOL net/9p/9pnet 0xfef1bd38 p9_client_stat +EXPORT_SYMBOL net/appletalk/appletalk 0x33f5f651 alloc_ltalkdev +EXPORT_SYMBOL net/appletalk/appletalk 0xa8a7e88a aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0xb3332346 atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0xe31c3829 atrtr_get_dev +EXPORT_SYMBOL net/atm/atm 0x1c60cb3b register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x27d79797 atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x32a96f0c vcc_release_async +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x49ed62e0 atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0x516b0621 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0x6fd4edfa vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0x83a88546 atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0x84d446ec deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x93136f41 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xa64ff973 atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xc7b64dfb atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0xd0194957 atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0xdc9ec566 atm_charge +EXPORT_SYMBOL net/atm/atm 0xde501b08 vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/ax25/ax25 0x026c1368 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x3afee63e ax25_findbyuid +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x5c84e2be ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0x6278754d ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x6e8beb7c ax25_hard_header +EXPORT_SYMBOL net/ax25/ax25 0x8b578fc0 ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0xa616fa21 ax25_rebuild_header +EXPORT_SYMBOL net/ax25/ax25 0xab1053e8 ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0xb91b3022 ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xd2809946 ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xf34f20aa ax25_linkfail_release +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0b1fb83c bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0b299019 hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0f3c025d bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0x11005744 hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x28061ba4 hci_recv_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2845cb2e hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2f5b7729 bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x37ed719e hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3d892ba9 hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4295d597 bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0x55381dd4 hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5669d52d hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6054bcee hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6341580b bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x688ffc1e l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x693b2e9a bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6c1f5a9e l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6d873f6a bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7341b5b9 bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7a7c4047 hci_recv_stream_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7c640527 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x80fc748d hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x819ef422 hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x86f505c0 l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9144bfb9 hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0x91c9a325 bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9b912b09 bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9bdb679d bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9e246b8e bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa3bf1561 l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa74c793e bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb5ea83e7 hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb61a0c3b bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc464d307 __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc76b87e8 bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcc1fb551 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdc3df3b7 __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0xea3e2440 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0xef550feb bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf0b7b2c8 l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf3a283ae bt_accept_unlink +EXPORT_SYMBOL net/bridge/bridge 0x54dd9070 br_should_route_hook +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x1fcf33a9 ebt_register_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x2f583877 ebt_do_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xfc96716f ebt_unregister_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +EXPORT_SYMBOL net/caif/caif 0x2a09f713 cfpkt_fromnative +EXPORT_SYMBOL net/caif/caif 0x31ddbd0e caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0x329dbd06 cfpkt_info +EXPORT_SYMBOL net/caif/caif 0x38701a7c cfcnfg_del_phy_layer +EXPORT_SYMBOL net/caif/caif 0x4a237e57 cfpkt_tonative +EXPORT_SYMBOL net/caif/caif 0x6a44fc70 cfpkt_extr_head +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x966d7de2 cfpkt_add_head +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/caif/caif 0xcb0eec21 get_cfcnfg +EXPORT_SYMBOL net/caif/caif 0xdcd90e67 caif_connect_client +EXPORT_SYMBOL net/caif/caif 0xe040e5dc cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0xee6ef6c9 caif_disconnect_client +EXPORT_SYMBOL net/can/can 0x3ae5947b can_send +EXPORT_SYMBOL net/can/can 0x46f0fbe8 can_rx_unregister +EXPORT_SYMBOL net/can/can 0x6d9a1317 can_ioctl +EXPORT_SYMBOL net/can/can 0x9d287ba5 can_rx_register +EXPORT_SYMBOL net/can/can 0xa2858c6a can_proto_unregister +EXPORT_SYMBOL net/can/can 0xcbea64f2 can_proto_register +EXPORT_SYMBOL net/ceph/libceph 0x01dd19a1 ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0x0383d14a ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x09290ab3 ceph_debugfs_init +EXPORT_SYMBOL net/ceph/libceph 0x0bcb9d71 ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x10940306 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0x10e1dbc8 ceph_monc_got_mdsmap +EXPORT_SYMBOL net/ceph/libceph 0x1475bf0d ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x147ffe53 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x1869bd0e osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x197effcb ceph_osdc_release_request +EXPORT_SYMBOL net/ceph/libceph 0x1ed35783 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0x20d151cb ceph_osdc_setup +EXPORT_SYMBOL net/ceph/libceph 0x22cc90c7 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x244fc2c8 ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x2d09dad5 ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0x2dad20da ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x3158173e ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x3189438e ceph_osdc_writepages +EXPORT_SYMBOL net/ceph/libceph 0x34a64292 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x36c78e45 ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0x37ec2928 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0x3abec91f ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x3bca0f4f ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x3df0ec7c ceph_calc_ceph_pg +EXPORT_SYMBOL net/ceph/libceph 0x3e21a315 ceph_client_id +EXPORT_SYMBOL net/ceph/libceph 0x3f688151 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x41ca8ede ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0x41ffbe2d __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x4205ffd7 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0x43c8d341 ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x43e458f6 ceph_file_part +EXPORT_SYMBOL net/ceph/libceph 0x43efd647 ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x4c7ca18f osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0x4f7c2a3e osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x51237f26 osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x5379cea3 ceph_caps_for_mode +EXPORT_SYMBOL net/ceph/libceph 0x54ddb66f osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x5fe4b2fa ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x65994773 ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x6b2e3bcd ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x6c5d5ac1 ceph_calc_pg_primary +EXPORT_SYMBOL net/ceph/libceph 0x6d2d06a1 ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0x6ed41be2 ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0x6f0ddef2 ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0x7270303e ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x72b778ba ceph_get_direct_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x72e0e8ac ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0x76534f0a ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0x77692acb ceph_msg_last_put +EXPORT_SYMBOL net/ceph/libceph 0x7c0d4020 ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x81a61ada osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0x88d7cca3 ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0x896612f8 ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0x8db128c4 ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x9666d435 osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0x98bd0a4b ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0x99e36571 ceph_osdc_cleanup +EXPORT_SYMBOL net/ceph/libceph 0x9c75a3d0 ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0x9e52c9de ceph_osdc_set_request_linger +EXPORT_SYMBOL net/ceph/libceph 0x9e99642c ceph_osdc_put_event +EXPORT_SYMBOL net/ceph/libceph 0x9f534f4d ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xa40bd703 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0xa680f8a3 ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xaddcc885 ceph_osdc_cancel_event +EXPORT_SYMBOL net/ceph/libceph 0xae3515ba ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xae70aa49 ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xafc03f08 ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xb2e91828 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0xb345afe6 osd_req_op_cls_response_data +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb6081d6d ceph_msgr_exit +EXPORT_SYMBOL net/ceph/libceph 0xb722e324 ceph_osdc_build_request +EXPORT_SYMBOL net/ceph/libceph 0xbc8000ca ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0xbccee97b ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0xbcf9b4d6 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0xbed199a3 ceph_monc_create_snapid +EXPORT_SYMBOL net/ceph/libceph 0xc0953920 ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0xc41d9bfd ceph_osdc_readpages +EXPORT_SYMBOL net/ceph/libceph 0xc4a80955 ceph_debugfs_cleanup +EXPORT_SYMBOL net/ceph/libceph 0xc55de604 ceph_parse_options +EXPORT_SYMBOL net/ceph/libceph 0xc9f82b38 ceph_msgr_init +EXPORT_SYMBOL net/ceph/libceph 0xcab1ca78 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xcb26f6ee ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0xcb50a624 ceph_parse_ips +EXPORT_SYMBOL net/ceph/libceph 0xcd84eca8 osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0xce378a2c osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0xcf4411ad ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0xd02311bc ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0xd0936ced ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0xd2c107bb ceph_flags_to_mode +EXPORT_SYMBOL net/ceph/libceph 0xdddcd327 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0xe35ea6e7 ceph_copy_page_vector_to_user +EXPORT_SYMBOL net/ceph/libceph 0xe746e54a ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xe82c9c32 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0xe95024f8 ceph_osdc_unregister_linger_request +EXPORT_SYMBOL net/ceph/libceph 0xef3a8c0e osd_req_op_watch_init +EXPORT_SYMBOL net/ceph/libceph 0xf031e16b ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0xf93ed768 ceph_osdc_create_event +EXPORT_SYMBOL net/ceph/libceph 0xfae8799b ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0xfd91d2ac ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x6afb2ae0 dccp_syn_ack_timeout +EXPORT_SYMBOL net/ieee802154/ieee802154 0x05cef84d wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0x29d554b7 wpan_phy_alloc +EXPORT_SYMBOL net/ieee802154/ieee802154 0x45ad55a0 ieee802154_nl_disassoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x52947287 ieee802154_nl_start_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x6d07e5c7 wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0x6f8bb3bb wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0x90ed6535 wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0x94e9fd5b ieee802154_nl_disassoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0xcf092ad1 ieee802154_nl_assoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0xe7c42f6d ieee802154_nl_scan_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0xf01442c7 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0xfb9ceb0f ieee802154_nl_beacon_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0xfc0d444c ieee802154_nl_assoc_confirm +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x06a67d8f arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x1714f644 arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xbeebd718 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x1634a1bf ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x59fa5e19 ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xda560190 ipt_do_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x0e81d27c xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv4/tunnel4 0x4d2c0d5f xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x0a5965af ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xbfbc1037 ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x03ce21c6 ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x508a6c76 ip6t_register_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xaa4e8eb4 ip6t_do_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x2c263d4d xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/tunnel6 0xd19399c1 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x07ff0ebe xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x2f6dbf38 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x0c38f29e ircomm_open +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x0c55da48 ircomm_close +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x11d917ec ircomm_control_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x59924877 ircomm_connect_response +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x89048888 ircomm_data_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xb153542e ircomm_flow_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xc7cd7e8b ircomm_connect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xdd4b97da ircomm_disconnect_request +EXPORT_SYMBOL net/irda/irda 0x003be8a2 irttp_connect_response +EXPORT_SYMBOL net/irda/irda 0x01dbeb0e irias_delete_object +EXPORT_SYMBOL net/irda/irda 0x06a3ee58 irias_new_integer_value +EXPORT_SYMBOL net/irda/irda 0x07d3647c irlmp_register_service +EXPORT_SYMBOL net/irda/irda 0x0bab6037 hashbin_remove +EXPORT_SYMBOL net/irda/irda 0x133dd0de irlmp_connect_response +EXPORT_SYMBOL net/irda/irda 0x2036ad06 irda_param_insert +EXPORT_SYMBOL net/irda/irda 0x23a2eee7 hashbin_remove_this +EXPORT_SYMBOL net/irda/irda 0x2e88ab91 irttp_close_tsap +EXPORT_SYMBOL net/irda/irda 0x33cbe2c6 proc_irda +EXPORT_SYMBOL net/irda/irda 0x359de411 irias_insert_object +EXPORT_SYMBOL net/irda/irda 0x368b98c2 irttp_dup +EXPORT_SYMBOL net/irda/irda 0x37339bd7 irlmp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0x3b0a2ab6 irias_find_object +EXPORT_SYMBOL net/irda/irda 0x3b9bdefe irias_add_octseq_attrib +EXPORT_SYMBOL net/irda/irda 0x428321fa hashbin_get_next +EXPORT_SYMBOL net/irda/irda 0x448b8aaa irda_qos_bits_to_value +EXPORT_SYMBOL net/irda/irda 0x46c1c4a2 irlmp_unregister_service +EXPORT_SYMBOL net/irda/irda 0x48d17824 irias_add_integer_attrib +EXPORT_SYMBOL net/irda/irda 0x53300f1b irda_notify_init +EXPORT_SYMBOL net/irda/irda 0x55321c7f irttp_connect_request +EXPORT_SYMBOL net/irda/irda 0x57172f47 irlap_close +EXPORT_SYMBOL net/irda/irda 0x5a8874b7 irttp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0x621e7362 iriap_close +EXPORT_SYMBOL net/irda/irda 0x62acf28c irias_add_string_attrib +EXPORT_SYMBOL net/irda/irda 0x648c7478 hashbin_get_first +EXPORT_SYMBOL net/irda/irda 0x6a8fe0f0 irlmp_close_lsap +EXPORT_SYMBOL net/irda/irda 0x6b043eba irda_init_max_qos_capabilies +EXPORT_SYMBOL net/irda/irda 0x7042bc54 irlmp_register_client +EXPORT_SYMBOL net/irda/irda 0x714593ee async_unwrap_char +EXPORT_SYMBOL net/irda/irda 0x763e54a4 irlmp_unregister_client +EXPORT_SYMBOL net/irda/irda 0x7957f728 irlmp_update_client +EXPORT_SYMBOL net/irda/irda 0x79d400ff irlmp_open_lsap +EXPORT_SYMBOL net/irda/irda 0x7d54adaf irias_new_object +EXPORT_SYMBOL net/irda/irda 0x7fb6421d iriap_open +EXPORT_SYMBOL net/irda/irda 0x7ff509a2 hashbin_lock_find +EXPORT_SYMBOL net/irda/irda 0x878d8f12 irttp_open_tsap +EXPORT_SYMBOL net/irda/irda 0x8cd99be0 hashbin_insert +EXPORT_SYMBOL net/irda/irda 0x91815586 irda_param_pack +EXPORT_SYMBOL net/irda/irda 0x993ad14b irda_param_extract_all +EXPORT_SYMBOL net/irda/irda 0x9a3350f5 irttp_udata_request +EXPORT_SYMBOL net/irda/irda 0x9e326eb3 hashbin_delete +EXPORT_SYMBOL net/irda/irda 0xa370c681 hashbin_find +EXPORT_SYMBOL net/irda/irda 0xa5e15a95 async_wrap_skb +EXPORT_SYMBOL net/irda/irda 0xa773a6b8 irlmp_connect_request +EXPORT_SYMBOL net/irda/irda 0xb3a581d9 irttp_data_request +EXPORT_SYMBOL net/irda/irda 0xb877485d irlap_open +EXPORT_SYMBOL net/irda/irda 0xb9394173 irias_delete_value +EXPORT_SYMBOL net/irda/irda 0xbcd3ef13 irias_object_change_attribute +EXPORT_SYMBOL net/irda/irda 0xbdc41ae1 irttp_flow_request +EXPORT_SYMBOL net/irda/irda 0xbe40ace9 irlmp_discovery_request +EXPORT_SYMBOL net/irda/irda 0xc0bee29c hashbin_new +EXPORT_SYMBOL net/irda/irda 0xd3117fcb iriap_getvaluebyclass_request +EXPORT_SYMBOL net/irda/irda 0xd6deeaae irda_setup_dma +EXPORT_SYMBOL net/irda/irda 0xd8268b12 alloc_irdadev +EXPORT_SYMBOL net/irda/irda 0xd8546a1f irda_device_set_media_busy +EXPORT_SYMBOL net/irda/irda 0xde4c6b3c irlmp_service_to_hint +EXPORT_SYMBOL net/irda/irda 0xea466985 irlmp_data_request +EXPORT_SYMBOL net/irda/irda 0xedd521c2 irlmp_get_discoveries +EXPORT_SYMBOL net/l2tp/l2tp_core 0x6ac9565b l2tp_recv_common +EXPORT_SYMBOL net/lapb/lapb 0x3b9de519 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0x99677bdb lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0xa1c6e154 lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0xaf9a238d lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0xbd776fa9 lapb_register +EXPORT_SYMBOL net/lapb/lapb 0xc2ba7471 lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0xc69ccf59 lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0xcdc62ea2 lapb_unregister +EXPORT_SYMBOL net/llc/llc 0x12e549db llc_sap_find +EXPORT_SYMBOL net/llc/llc 0x133d1dc8 llc_add_pack +EXPORT_SYMBOL net/llc/llc 0x20047be0 llc_sap_close +EXPORT_SYMBOL net/llc/llc 0x2a72da69 llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0xa024dadb llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0xb9527391 llc_sap_open +EXPORT_SYMBOL net/llc/llc 0xd629316a llc_sap_list_lock +EXPORT_SYMBOL net/llc/llc 0xe8b35b89 llc_set_station_handler +EXPORT_SYMBOL net/mac80211/mac80211 0x009376f2 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x0e600c7e rate_control_send_low +EXPORT_SYMBOL net/mac80211/mac80211 0x167eed52 ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0x1729861b ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x1b57b531 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x1e073e3d ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x20f263cd ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x21a2ae71 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0x22ccd151 ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0x23f96df1 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x2ee3f7de ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x42b3bcee __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x4319316f wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x43a62fc6 __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x4462cdb8 ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x4bd0de24 ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x4c4e90c7 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0x4e6e4a2b ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0x50690b00 ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x53735a3a ieee80211_rx +EXPORT_SYMBOL net/mac80211/mac80211 0x545951cd ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x5559ef66 __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x5625783e ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x5c28cca5 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x5db0b442 ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x5f749f94 ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x613867aa ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x65c16891 ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x6a5ade74 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0x6ca607fb ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0x6f2c49c7 ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x7032426b ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x762d1d89 ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x7a7b9895 ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x7e4fcf2d ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x828e7836 ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0x8fb20cae ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0x967b7590 ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0x99a6cc48 ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x9c5e6334 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0xa1fc36c4 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xa5801dcb ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0xa7acbfe6 ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xa800f1b9 rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xaa157485 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0xaba005f1 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xad83fa6e ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xb0e4f4de ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xb1c090f5 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0xb5d55632 ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0xb78a4d72 ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xbcede1df ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0xc33e44e2 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xc7e9782e ieee80211_get_key_tx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xcaf803b1 ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0xcb83781d ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0xcccafe99 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xd02d09c4 ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0xd0866214 ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0xd48d1858 ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0xd4cd9b37 ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xd5763596 ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0xd97ac781 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xdd73ad30 ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0xddb47d52 ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xe19610d7 ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0xe5e436f7 ieee80211_alloc_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xeb6a06bd ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0xec2c7007 ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xf395de03 ieee80211_aes_cmac_calculate_k1_k2 +EXPORT_SYMBOL net/mac80211/mac80211 0xf535c8b9 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xf89087e5 ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xfa0d2b12 ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac802154/mac802154 0x04b9e784 ieee802154_unregister_device +EXPORT_SYMBOL net/mac802154/mac802154 0x7b3db9a9 ieee802154_free_device +EXPORT_SYMBOL net/mac802154/mac802154 0xa6a1621a ieee802154_register_device +EXPORT_SYMBOL net/mac802154/mac802154 0xbf719399 ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0xce04120b ieee802154_alloc_device +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x11dba710 ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x40e64212 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x5749c295 register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x57a7faa1 ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x5bab360a ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x72e93aff unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x78fa66f1 ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x7a14d546 ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x8756a5db unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x979127bb register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc775592a ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xccf49054 ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xdd4dd402 register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xea64f426 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x0471a71b nf_conntrack_untracked +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x94b3cfea __nf_ct_ext_add_length +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xa7ffa105 __nf_ct_ext_destroy +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0x827cc6a1 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_conntrack_proto_gre 0x460df181 nf_ct_gre_keymap_flush +EXPORT_SYMBOL net/netfilter/nf_nat 0x033fbf23 nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0x5e04675b __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x5fb6aa05 nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0x83000f36 nf_nat_used_tuple +EXPORT_SYMBOL net/netfilter/nf_nat 0x965ccb02 nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0xb9afc3fd nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/x_tables 0x08c473b7 xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0x333c5777 xt_find_target +EXPORT_SYMBOL net/netfilter/x_tables 0x98962f7b xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0x9d279bd1 xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0xb28f5ef1 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xb39291d6 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0xbcee9870 xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xc7f9379e xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0xd3ad2e99 xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0xdc2e7ef2 xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xed4fcc4e xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0xf35eafe4 xt_register_match +EXPORT_SYMBOL net/nfc/hci/hci 0x074f57d8 nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0x0ccd88c9 nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0x25e64db9 nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0x2ea4538f nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0x313bad3d nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0x3e570d89 nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0x3ec31957 nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x43028a27 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x4db2f501 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x54801d09 nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0x6059a4b0 nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x785bdc07 nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0x9cdd3b4a nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0xb58a0154 nfc_hci_send_response +EXPORT_SYMBOL net/nfc/hci/hci 0xbca0b4fd nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xd0b27299 nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0xd26cea68 nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0xd9972ee2 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0xe65589a4 nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0xffb3ccae nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/nci/nci 0x09d3765d nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x3e85f447 nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x8002768d nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0x880acf1a nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xe5618a66 nci_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0x0d517bde nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0x1657bd1d nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0x1bf51a94 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0x527d7433 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0x556b2780 nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0x68c554b5 nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0x70e4138d nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0x7f7f9e22 nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0x7febb219 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0x89eac36f nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x9ea97b07 nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0x9f456b85 nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0xb71b4501 nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0xc7c2e666 nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0xca95f8df nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0xd3ce8ad2 nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0xe6270d77 nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0xe7bba6fb nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0xf09f7381 nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xf7fedd43 nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc_digital 0x44786403 nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x8be6f014 nfc_digital_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xa55b3738 nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xb9952319 nfc_digital_register_device +EXPORT_SYMBOL net/phonet/phonet 0x0ea77d12 phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0x3dd6cb10 pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0x7e90eaeb phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0xcde61ba6 pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0xe6cba30c pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0xe7d918d7 phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0xf7f9e854 pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0xf878117b phonet_proto_register +EXPORT_SYMBOL net/rds/rds 0x5031b8c5 rds_str_array +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x1bbe3cf0 rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x3d5712a7 rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x57c71013 rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x5ee9470d rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x684b37bd rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x6b0ada94 rxrpc_kernel_intercept_rx_messages +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x6c65c627 rxrpc_kernel_free_skb +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x755e8d08 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xa9b2a757 rxrpc_kernel_get_error_number +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xaa41063a rxrpc_kernel_data_delivered +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xd4c8a240 rxrpc_kernel_is_data_last +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xd82b9f6b rxrpc_kernel_reject_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xedb4452a rxrpc_kernel_get_abort_code +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xf5f8f4d0 rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xf7340e33 rxrpc_kernel_accept_call +EXPORT_SYMBOL net/sctp/sctp 0x47738838 sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xc971a117 gss_mech_get +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xf1735ee8 gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xf5d9df5d gss_mech_put +EXPORT_SYMBOL net/sunrpc/sunrpc 0x50be8662 svc_pool_stats_open +EXPORT_SYMBOL net/wimax/wimax 0x5660ca80 wimax_reset +EXPORT_SYMBOL net/wimax/wimax 0xe14268b2 wimax_rfkill +EXPORT_SYMBOL net/wireless/cfg80211 0x00a5c39c ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x0568fd74 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0x09c64fbd ieee80211_frequency_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x09de4893 ieee80211_data_from_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0x0ef00d52 cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0x11c523c6 cfg80211_report_obss_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x14f0bd77 cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x15e7356e cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x18bb272e cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x19e03378 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0x1a628572 cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0x1ceecf38 wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x1ee3f9fd cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x1eeaf5bb cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x2047a5d7 cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x22cf4196 cfg80211_inform_bss_width +EXPORT_SYMBOL net/wireless/cfg80211 0x2b32abdd cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0x317a2975 cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x31e6095b wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0x33f5b01e cfg80211_inform_bss_width_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x35cd8c81 cfg80211_connect_result +EXPORT_SYMBOL net/wireless/cfg80211 0x3758bbfd cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0x3e77c2ba cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x406a8302 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x40f2e6b7 cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0x42c5617e cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0x439931ad cfg80211_rx_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x4a4aa8c5 cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0x4b78a549 cfg80211_roamed_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x4c2367fe cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0x4c3b5878 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x4c40b2fb ieee80211_bss_get_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x4ce2dc68 cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x549ae50f ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x575683be wiphy_new +EXPORT_SYMBOL net/wireless/cfg80211 0x5a49d412 cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x5f79c095 ieee80211_data_to_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0x6043e227 __ieee80211_get_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6a59d015 cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x6aa52132 cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0x6cbcc044 cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x6d6cb9ad ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x790429fb freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0x7af9764d cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x7d79769b cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x7e525308 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7fe1a403 cfg80211_find_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x81beb2ce cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x81c27872 cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0x8711d476 ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0x879a4cee cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0x8cae0766 cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0x982e6b6d ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0xa1425906 ieee80211_channel_to_frequency +EXPORT_SYMBOL net/wireless/cfg80211 0xa197b1ff ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xa2e40843 cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0xa3229297 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0xa382f8a4 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0xa5f94899 cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xa9b02376 wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0xac386c8e cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xaca20b64 cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0xaf966adf cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xbfb33523 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0xc15c8611 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0xc15e98d2 regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0xc2031b20 cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0xc2e3e421 cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xc46f3a3e cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0xc63f1b81 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0xcd13baa7 cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0xcf618a57 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xdf87c4b0 cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0xe24b0a3b cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xe43c2d58 cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xee42db3c cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xf3f25ce0 cfg80211_del_sta +EXPORT_SYMBOL net/wireless/cfg80211 0xf4620c3d cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xf4eb056a wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0xf90fb268 cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0xfb2e0572 wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xfed4d591 cfg80211_find_vendor_ie +EXPORT_SYMBOL net/wireless/lib80211 0x1d21a4f9 lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x2d0f99e5 print_ssid +EXPORT_SYMBOL net/wireless/lib80211 0x8d7d4f3e lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0x9cafd7cf lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xd21425c2 lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0xed22397a lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0xf40a020c lib80211_get_crypto_ops +EXPORT_SYMBOL sound/ac97_bus 0x96dc4149 ac97_bus_type +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x25c66994 snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3312757c snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6c48be3a snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6fd84fab snd_seq_kernel_client_enqueue_blocking +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xcac0a3be snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x3a57f235 snd_seq_autoload_unlock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x8385fca5 snd_seq_device_register_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x9d6e4d88 snd_seq_device_new +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xb90668b2 snd_seq_autoload_lock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xc622fb29 snd_seq_device_unregister_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf0a1fdb3 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x2b51b084 snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x350963b4 snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x7f62d029 snd_midi_event_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x83914b9a snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x92ee6bb0 snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x9e7d3f0f snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xbc141dfc snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xf2bf1549 snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0xb1ed7020 snd_virmidi_new +EXPORT_SYMBOL sound/core/snd 0x050e2779 snd_register_device_for_dev +EXPORT_SYMBOL sound/core/snd 0x18e1683f snd_dma_program +EXPORT_SYMBOL sound/core/snd 0x191e88cf snd_dma_pointer +EXPORT_SYMBOL sound/core/snd 0x199da6ff snd_ctl_free_one +EXPORT_SYMBOL sound/core/snd 0x1b4ccbd9 snd_ctl_new1 +EXPORT_SYMBOL sound/core/snd 0x23d6c099 snd_add_device_sysfs_file +EXPORT_SYMBOL sound/core/snd 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL sound/core/snd 0x294c616b _snd_ctl_add_slave +EXPORT_SYMBOL sound/core/snd 0x2ae3deaa release_and_free_resource +EXPORT_SYMBOL sound/core/snd 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL sound/core/snd 0x40ffa8f4 snd_device_new +EXPORT_SYMBOL sound/core/snd 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL sound/core/snd 0x4b015768 snd_iprintf +EXPORT_SYMBOL sound/core/snd 0x4bd32136 snd_card_create +EXPORT_SYMBOL sound/core/snd 0x59fda581 snd_info_register +EXPORT_SYMBOL sound/core/snd 0x5d44114b snd_jack_new +EXPORT_SYMBOL sound/core/snd 0x602c96f0 copy_to_user_fromio +EXPORT_SYMBOL sound/core/snd 0x69ff73ce snd_card_free_when_closed +EXPORT_SYMBOL sound/core/snd 0x6b0978f9 snd_ctl_replace +EXPORT_SYMBOL sound/core/snd 0x6fc7a738 snd_pci_quirk_lookup +EXPORT_SYMBOL sound/core/snd 0x70c15ac1 snd_dma_disable +EXPORT_SYMBOL sound/core/snd 0x73b285c1 snd_ctl_remove_id +EXPORT_SYMBOL sound/core/snd 0x749de8af snd_card_file_remove +EXPORT_SYMBOL sound/core/snd 0x7a749973 snd_ctl_add +EXPORT_SYMBOL sound/core/snd 0x7b41e83f snd_card_set_id +EXPORT_SYMBOL sound/core/snd 0x7c267edc snd_device_free +EXPORT_SYMBOL sound/core/snd 0x7cdaf993 snd_ctl_find_numid +EXPORT_SYMBOL sound/core/snd 0x81b69e41 snd_ctl_enum_info +EXPORT_SYMBOL sound/core/snd 0x8477e6d4 snd_card_proc_new +EXPORT_SYMBOL sound/core/snd 0x84d3784b snd_card_free +EXPORT_SYMBOL sound/core/snd 0x8f595b11 snd_major +EXPORT_SYMBOL sound/core/snd 0x9135af77 snd_cards +EXPORT_SYMBOL sound/core/snd 0x95e6dade snd_ctl_boolean_mono_info +EXPORT_SYMBOL sound/core/snd 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL sound/core/snd 0x9f24e6d4 snd_unregister_device +EXPORT_SYMBOL sound/core/snd 0xa0fd2427 snd_pci_quirk_lookup_id +EXPORT_SYMBOL sound/core/snd 0xa228c164 snd_component_add +EXPORT_SYMBOL sound/core/snd 0xa8dfe0d0 snd_ctl_find_id +EXPORT_SYMBOL sound/core/snd 0xac9cc43c snd_seq_root +EXPORT_SYMBOL sound/core/snd 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL sound/core/snd 0xb7c2c40e snd_ctl_unregister_ioctl +EXPORT_SYMBOL sound/core/snd 0xbf329895 snd_card_register +EXPORT_SYMBOL sound/core/snd 0xc18f7eb9 snd_ctl_remove +EXPORT_SYMBOL sound/core/snd 0xc6ca0e82 snd_device_register +EXPORT_SYMBOL sound/core/snd 0xce3ca308 copy_from_user_toio +EXPORT_SYMBOL sound/core/snd 0xcf9ce638 snd_ctl_notify +EXPORT_SYMBOL sound/core/snd 0xcfb7d992 snd_info_create_card_entry +EXPORT_SYMBOL sound/core/snd 0xd1129cd8 snd_power_wait +EXPORT_SYMBOL sound/core/snd 0xd78feb5d snd_jack_set_key +EXPORT_SYMBOL sound/core/snd 0xd99694ab snd_info_free_entry +EXPORT_SYMBOL sound/core/snd 0xdae47c54 snd_ctl_boolean_stereo_info +EXPORT_SYMBOL sound/core/snd 0xdd61ed48 snd_ctl_make_virtual_master +EXPORT_SYMBOL sound/core/snd 0xe4500bf5 snd_card_file_add +EXPORT_SYMBOL sound/core/snd 0xe6ec0d94 snd_info_create_module_entry +EXPORT_SYMBOL sound/core/snd 0xe7e2e153 snd_jack_report +EXPORT_SYMBOL sound/core/snd 0xeead58eb snd_card_unref +EXPORT_SYMBOL sound/core/snd 0xf326abca snd_ctl_rename_id +EXPORT_SYMBOL sound/core/snd 0xf6b977ca snd_ctl_register_ioctl +EXPORT_SYMBOL sound/core/snd 0xf82f0dd7 snd_card_disconnect +EXPORT_SYMBOL sound/core/snd 0xfaca569a snd_jack_set_parent +EXPORT_SYMBOL sound/core/snd-hwdep 0x7391f3a3 snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-page-alloc 0x1906d4ce snd_dma_alloc_pages_fallback +EXPORT_SYMBOL sound/core/snd-page-alloc 0x1e1a94f6 snd_dma_alloc_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x20424e2a snd_sgbuf_get_chunk_size +EXPORT_SYMBOL sound/core/snd-page-alloc 0x2e58dd52 snd_dma_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x3b91f3af snd_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x76efbdc2 snd_dma_get_reserved_buf +EXPORT_SYMBOL sound/core/snd-page-alloc 0x860669fd snd_dma_reserve_buf +EXPORT_SYMBOL sound/core/snd-page-alloc 0xade88e76 snd_malloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL sound/core/snd-pcm 0x04cda566 snd_interval_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x05364b12 snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL sound/core/snd-pcm 0x08e4da08 snd_pcm_notify +EXPORT_SYMBOL sound/core/snd-pcm 0x0a0576a9 snd_pcm_lib_readv +EXPORT_SYMBOL sound/core/snd-pcm 0x132ef7c9 snd_pcm_new_stream +EXPORT_SYMBOL sound/core/snd-pcm 0x144cec64 snd_pcm_suspend_all +EXPORT_SYMBOL sound/core/snd-pcm 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL sound/core/snd-pcm 0x32ea11af snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL sound/core/snd-pcm 0x3428ba08 snd_pcm_hw_constraint_list +EXPORT_SYMBOL sound/core/snd-pcm 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL sound/core/snd-pcm 0x3ec88e3c snd_pcm_lib_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x3fb9746a snd_pcm_period_elapsed +EXPORT_SYMBOL sound/core/snd-pcm 0x4079ce5f snd_pcm_hw_rule_noresample +EXPORT_SYMBOL sound/core/snd-pcm 0x453f4c72 snd_pcm_limit_hw_rates +EXPORT_SYMBOL sound/core/snd-pcm 0x4a7b7997 _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x4ac385ed snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL sound/core/snd-pcm 0x4c525463 snd_pcm_hw_constraint_step +EXPORT_SYMBOL sound/core/snd-pcm 0x4d9b6d35 snd_pcm_format_size +EXPORT_SYMBOL sound/core/snd-pcm 0x4ef4802d snd_pcm_hw_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x4efee426 snd_pcm_mmap_data +EXPORT_SYMBOL sound/core/snd-pcm 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x511cccf3 snd_pcm_debug_name +EXPORT_SYMBOL sound/core/snd-pcm 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL sound/core/snd-pcm 0x59c0abd7 snd_pcm_lib_writev +EXPORT_SYMBOL sound/core/snd-pcm 0x5aa74f5d snd_pcm_lib_malloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL sound/core/snd-pcm 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL sound/core/snd-pcm 0x65c5e6c4 snd_pcm_sgbuf_ops_page +EXPORT_SYMBOL sound/core/snd-pcm 0x66b21a23 snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x6736076e snd_pcm_set_ops +EXPORT_SYMBOL sound/core/snd-pcm 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL sound/core/snd-pcm 0x6e4a4bcc snd_pcm_new +EXPORT_SYMBOL sound/core/snd-pcm 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL sound/core/snd-pcm 0x70115c6a snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL sound/core/snd-pcm 0x71e91f00 snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x82c86aad snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x89428985 snd_pcm_hw_rule_add +EXPORT_SYMBOL sound/core/snd-pcm 0x8c20c2cb snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL sound/core/snd-pcm 0x8fd72200 snd_pcm_stop +EXPORT_SYMBOL sound/core/snd-pcm 0x90cdc8c9 snd_pcm_release_substream +EXPORT_SYMBOL sound/core/snd-pcm 0x94098ff8 snd_interval_list +EXPORT_SYMBOL sound/core/snd-pcm 0x98e25ed2 snd_pcm_set_sync +EXPORT_SYMBOL sound/core/snd-pcm 0xa1cf33fe snd_pcm_lib_read +EXPORT_SYMBOL sound/core/snd-pcm 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL sound/core/snd-pcm 0xa9adc229 snd_pcm_link_rwlock +EXPORT_SYMBOL sound/core/snd-pcm 0xaac8961c snd_pcm_hw_constraint_integer +EXPORT_SYMBOL sound/core/snd-pcm 0xb5308b30 snd_pcm_hw_param_last +EXPORT_SYMBOL sound/core/snd-pcm 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL sound/core/snd-pcm 0xc2ed4856 snd_pcm_lib_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xc70488cb snd_pcm_lib_mmap_iomem +EXPORT_SYMBOL sound/core/snd-pcm 0xcc1fab89 snd_pcm_lib_write +EXPORT_SYMBOL sound/core/snd-pcm 0xde63d592 snd_pcm_new_internal +EXPORT_SYMBOL sound/core/snd-pcm 0xdf94be28 snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0xe2efc557 snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL sound/core/snd-pcm 0xe372ec79 snd_pcm_kernel_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL sound/core/snd-pcm 0xe8c9acc6 snd_pcm_suspend +EXPORT_SYMBOL sound/core/snd-pcm 0xeb0130ec snd_pcm_hw_param_first +EXPORT_SYMBOL sound/core/snd-pcm 0xf3797152 snd_interval_ratnum +EXPORT_SYMBOL sound/core/snd-pcm 0xfad1f5e1 snd_pcm_open_substream +EXPORT_SYMBOL sound/core/snd-pcm 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL sound/core/snd-rawmidi 0x02a991c5 snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-rawmidi 0x136cf84d snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0x2b0b1ce1 snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x334d1ecb snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0x3a0b179c snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0x4866271a snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0x551a86cc snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-rawmidi 0x7c455eea snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x84c8bde0 snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0x89ea7e02 snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x8cd11746 snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0xa63e53a1 snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-rawmidi 0xb59be1cc snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0xbad40117 snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0xc084cc60 snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf873ec40 snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0xfa4afc94 snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-timer 0x0057b3a4 snd_timer_global_new +EXPORT_SYMBOL sound/core/snd-timer 0x09852b32 snd_timer_start +EXPORT_SYMBOL sound/core/snd-timer 0x0ed595fb snd_timer_continue +EXPORT_SYMBOL sound/core/snd-timer 0x19170f68 snd_timer_pause +EXPORT_SYMBOL sound/core/snd-timer 0x3222c026 snd_timer_new +EXPORT_SYMBOL sound/core/snd-timer 0x5e0b2fba snd_timer_resolution +EXPORT_SYMBOL sound/core/snd-timer 0x7bf049fa snd_timer_interrupt +EXPORT_SYMBOL sound/core/snd-timer 0x961db998 snd_timer_stop +EXPORT_SYMBOL sound/core/snd-timer 0x9b4c139c snd_timer_global_register +EXPORT_SYMBOL sound/core/snd-timer 0x9bef6a03 snd_timer_close +EXPORT_SYMBOL sound/core/snd-timer 0xa03d61c0 snd_timer_global_free +EXPORT_SYMBOL sound/core/snd-timer 0xaaf0a477 snd_timer_notify +EXPORT_SYMBOL sound/core/snd-timer 0xbbef6789 snd_timer_open +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x350f1ea7 snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x0289930f snd_opl3_create +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x08a22cc7 snd_opl3_init +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x17bd5de1 snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x2613bd9e snd_opl3_reset +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x2ac4e5fa snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x5f48f85c snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x785990aa snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xd9173f5a snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xff64fd93 snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl4/snd-opl4-lib 0x0b56a541 snd_opl4_read +EXPORT_SYMBOL sound/drivers/opl4/snd-opl4-lib 0x1bd88284 snd_opl4_write_memory +EXPORT_SYMBOL sound/drivers/opl4/snd-opl4-lib 0x552f4eee snd_opl4_write +EXPORT_SYMBOL sound/drivers/opl4/snd-opl4-lib 0x81f5c2c4 snd_opl4_read_memory +EXPORT_SYMBOL sound/drivers/opl4/snd-opl4-lib 0x9a5fd0a6 snd_opl4_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x13dceec2 snd_vx_dsp_boot +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x2f71caa7 snd_vx_resume +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x3936b9a0 snd_vx_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x3b8f3305 snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xca022911 snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xcd3c002f snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xd3fe10ca snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xe83af68e snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1456346 snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x00ab1d9f fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x00e15bb1 amdtp_out_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x03d37eb0 amdtp_out_stream_set_pcm_format +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x06fed24a amdtp_out_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x09f3f149 cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x1b309f17 iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5b8363ef cmp_connection_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5e86d0c8 cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x63a2efd1 amdtp_out_stream_start +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x6bbfcf41 amdtp_out_stream_pcm_pointer +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x70bda729 amdtp_out_stream_stop +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x71ab9a67 cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x8909d451 fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x8b820e44 amdtp_out_stream_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x92294f61 fcp_avc_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x962256f6 fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x976f4b46 fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa14ff897 amdtp_out_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa36f9e58 cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa3d7e746 amdtp_out_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xaf6048ce amdtp_out_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc590f0c6 fw_iso_resources_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xca525438 amdtp_out_stream_set_parameters +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xdfa06fb5 fw_iso_resources_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xec41107d iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf7edb9a4 snd_fw_transaction +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x07ed791d snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x2ce8b286 snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x2fae03af snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x85558278 snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xbad7d8a9 snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xf4a1ac7c snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x21d2a571 snd_ak4117_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x66de43f7 snd_ak4117_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x76c21c90 snd_ak4117_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x8c5001a1 snd_ak4117_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x94e0f44a snd_ak4117_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xcfd1a5a2 snd_ak4117_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x127b3344 snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x55c39ef3 snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x96973043 snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xaa63c329 snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x99b02765 snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0xa871c4e9 snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x31de8d66 snd_cs8427_create +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x3a99de34 snd_cs8427_reg_write +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x9d2c9e2d snd_cs8427_iec958_build +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xa483c166 snd_cs8427_iec958_active +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xfeeb8509 snd_cs8427_iec958_pcm +EXPORT_SYMBOL sound/i2c/snd-i2c 0x501d06a7 snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x5e9ac379 snd_i2c_sendbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x7814f37b snd_i2c_device_free +EXPORT_SYMBOL sound/i2c/snd-i2c 0xa9199f25 snd_i2c_bus_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0xd5ee60f5 snd_i2c_probeaddr +EXPORT_SYMBOL sound/i2c/snd-i2c 0xee402824 snd_i2c_readbytes +EXPORT_SYMBOL sound/i2c/snd-tea6330t 0x21719cd0 snd_tea6330t_update_mixer +EXPORT_SYMBOL sound/i2c/snd-tea6330t 0x8e1afbe6 snd_tea6330t_detect +EXPORT_SYMBOL sound/isa/es1688/snd-es1688-lib 0x04735e25 snd_es1688_mixer_write +EXPORT_SYMBOL sound/isa/es1688/snd-es1688-lib 0x2e0bbc57 snd_es1688_reset +EXPORT_SYMBOL sound/isa/es1688/snd-es1688-lib 0x4dc12f85 snd_es1688_pcm +EXPORT_SYMBOL sound/isa/es1688/snd-es1688-lib 0x9d47e2a8 snd_es1688_mixer +EXPORT_SYMBOL sound/isa/es1688/snd-es1688-lib 0xa1da6143 snd_es1688_create +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x02a7390e snd_gf1_mem_alloc +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x10d42895 snd_gus_use_inc +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x1a577a0b snd_gf1_look8 +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x1ba14710 snd_gf1_i_write8 +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x1c1ce117 snd_gus_interrupt +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x271bd257 snd_gf1_pcm_new +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x32c91043 snd_gf1_free_voice +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x46db8d67 snd_gf1_lvol_to_gvol_raw +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x5745aa1d snd_gf1_look16 +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x5ea266b3 snd_gf1_poke +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x669b5664 snd_gus_use_dec +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x69b606f5 snd_gf1_i_look8 +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x6d3b6c5e snd_gf1_translate_freq +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x6fc6bb25 snd_gf1_stop_voice +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x82b49553 snd_gf1_delay +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x875a4fe8 snd_gf1_new_mixer +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x8c248812 snd_gf1_write_addr +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xa00056d4 snd_gf1_mem_free +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xaa219130 snd_gf1_mem_xfree +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xae71fb31 snd_gus_initialize +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xb3b48b41 snd_gf1_alloc_voice +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xb669990f snd_gf1_peek +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xc43a5527 snd_gf1_atten_table +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xc7780df7 snd_gf1_write8 +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xc9c3aae4 snd_gus_dram_read +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xd46322b1 snd_gf1_write16 +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xd85945af snd_gf1_mem_lock +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xdb4b08bd snd_gf1_i_look16 +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xe04c0989 snd_gf1_dram_addr +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xe38ab8ba snd_gus_create +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xf0035ec1 snd_gus_dram_write +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xf4f43ad8 snd_gf1_ctrl_stop +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xf980d08e snd_gf1_rawmidi_new +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x053d1959 snd_msnd_DARQ +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x0864c50e snd_msnd_disable_irq +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x0e096be3 snd_msnd_init_queue +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x4510385d snd_msndmix_setup +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x4d67d66c snd_msnd_send_word +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x5acaa48c snd_msnd_dsp_halt +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x75026b24 snd_msndmidi_input_read +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0xa1fef2ef snd_msnd_DAPQ +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0xa6419222 snd_msnd_upload_host +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0xa6decfe3 snd_msnd_pcm +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0xb508d2d7 snd_msnd_enable_irq +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0xe13af191 snd_msnd_send_dsp_cmd +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0xefc9bbe5 snd_msndmix_new +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0xf1c11315 snd_msndmix_force_recsrc +EXPORT_SYMBOL sound/isa/opti9xx/snd-miro 0x418bb6d6 snd_aci_cmd +EXPORT_SYMBOL sound/isa/opti9xx/snd-miro 0x6f3edfad snd_aci_get_aci +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x2279108e snd_sbmixer_write +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x26d68913 snd_sbmixer_add_ctl +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x294537fa snd_sbdsp_reset +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x6e4eac89 snd_sbdsp_command +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xa9eba4e9 snd_sbmixer_read +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xd1169812 snd_sbmixer_suspend +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xe2f6fb13 snd_sbdsp_get_byte +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xe4a8adfb snd_sbmixer_resume +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xe9329a12 snd_sbmixer_new +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xf360efe8 snd_sbdsp_create +EXPORT_SYMBOL sound/isa/sb/snd-sb16-csp 0x2aeddcf1 snd_sb_csp_new +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xb42f7e43 snd_sb16dsp_get_pcm_ops +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xc3bd7255 snd_sb16dsp_pcm +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xe0b3f690 snd_sb16dsp_interrupt +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xfc192949 snd_sb16dsp_configure +EXPORT_SYMBOL sound/isa/sb/snd-sb8-dsp 0x5ea4972d snd_sb8dsp_midi +EXPORT_SYMBOL sound/isa/sb/snd-sb8-dsp 0xa46fa2ef snd_sb8dsp_midi_interrupt +EXPORT_SYMBOL sound/isa/sb/snd-sb8-dsp 0xc87393ef snd_sb8dsp_pcm +EXPORT_SYMBOL sound/isa/sb/snd-sb8-dsp 0xdc8a9897 snd_sb8dsp_interrupt +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0x0af559af snd_emu8000_poke +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0x27758f25 snd_emu8000_update_reverb_mode +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0x48765784 snd_emu8000_update_equalizer +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0x49b2e958 snd_emu8000_peek_dw +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0x519c3fed snd_emu8000_peek +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0x59b0c7b9 snd_emu8000_dma_chan +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0x86c697de snd_emu8000_load_chorus_fx +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0xbc623561 snd_emu8000_poke_dw +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0xd33938a7 snd_emu8000_load_reverb_fx +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0xd85c24b9 snd_emu8000_update_chorus_mode +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0xe86d727c snd_emu8000_init_fm +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x003f7fe7 snd_wss_create +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x0500d5f9 snd_wss_get_single +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x0728613b snd_wss_info_double +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x0a73d63f snd_cs4236_ext_out +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x0ff95f24 snd_wss_put_double +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x1e2360e7 snd_wss_get_pcm_ops +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x2231cdb2 snd_wss_put_single +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x28c8476f snd_wss_get_double +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x3578e83a snd_wss_mce_up +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x3630f793 snd_wss_overrange +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x3b63f8cb snd_wss_mce_down +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x52cb5bd8 snd_wss_out +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x7b202637 snd_wss_interrupt +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x8ff9903f snd_wss_pcm +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x919bd292 snd_wss_timer +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x9f8631ab snd_cs4236_ext_in +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0xa4273970 snd_wss_mixer +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0xa44a7225 snd_wss_chip_id +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0xcd557ac4 snd_wss_info_single +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0xdbfdd845 snd_wss_in +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x0543cdbe snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x0d181e9a snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x12d2e4ec snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x1508c3cd snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x22f1b082 snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x2ac81874 snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x3f76ab5b snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x418201ed snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x46b061f4 snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x48ff1bfb snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x84182a66 snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x8ce80441 snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x9ecb26cb snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x9f658b1c snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xa21a5c5c snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xcb9ad91d snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xe4eac57c snd_ac97_resume +EXPORT_SYMBOL sound/pci/asihpi/snd-asihpi 0x93fe0d3c hpi_send_recv +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x187f664d snd_emu10k1_synth_copy_from_user +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x2d46339e snd_emu10k1_ptr_write +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x5ed47f41 snd_emu10k1_synth_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x696462e8 snd_emu10k1_synth_bzero +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x6cc122e7 snd_emu10k1_voice_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x7fec81bd snd_emu10k1_voice_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x9d5a6241 snd_emu10k1_synth_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xd0d3a38d snd_emu10k1_memblk_map +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xecd24742 snd_emu10k1_ptr_read +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x16ab2204 snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xb8c6c7ef snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xdbd6d362 snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x13f65249 oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x150a73ac oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x1861a76f oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x1eb204e1 oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x2323e55b oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x32362133 oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x4183aefd oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x437c0dae oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x739e822d oxygen_read8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x82785099 oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xb3fa7d81 oxygen_write32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xb8c831fe oxygen_pci_pm +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc024e1dd oxygen_write_i2c +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc8b731f5 oxygen_pci_probe +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc9fc8480 oxygen_write_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xcdcf2a18 oxygen_write16_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xd075d61a oxygen_pci_remove +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xdb648023 oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xe0bdf70e oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xfd8178e3 oxygen_write8 +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x28871c77 snd_trident_write_voice_regs +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x2b4cc620 snd_trident_stop_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x5655b228 snd_trident_free_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x673d4e08 snd_trident_alloc_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xadb09ec9 snd_trident_start_voice +EXPORT_SYMBOL sound/soundcore 0x1a92458d sound_class +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x5f883f72 snd_emux_unlock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x655cb202 snd_sf_linear_to_log +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xb47f5e0d snd_emux_terminate_all +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xbd56735a snd_emux_new +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xbfb115c7 snd_emux_free +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xd39c044e snd_emux_register +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xe0826003 snd_emux_lock_voice +EXPORT_SYMBOL sound/synth/snd-util-mem 0x05485457 snd_util_memhdr_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x205eb9f6 snd_util_mem_avail +EXPORT_SYMBOL sound/synth/snd-util-mem 0x28685499 __snd_util_memblk_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x5e69c685 __snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x85c18fab snd_util_memhdr_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0xbe3e7307 snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0xc2687b5f __snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0xda3e1454 snd_util_mem_alloc +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xebfe12dc snd_usbmidi_create +EXPORT_SYMBOL vmlinux 0x00000000 __symbol_put +EXPORT_SYMBOL vmlinux 0x00000000 current_fs_time +EXPORT_SYMBOL vmlinux 0x00000000 d_tmpfile +EXPORT_SYMBOL vmlinux 0x00000000 do_sync_read +EXPORT_SYMBOL vmlinux 0x00000000 filp_close +EXPORT_SYMBOL vmlinux 0x00000000 finish_open +EXPORT_SYMBOL vmlinux 0x00000000 generic_getxattr +EXPORT_SYMBOL vmlinux 0x00000000 generic_write_sync +EXPORT_SYMBOL vmlinux 0x00000000 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x00000000 in_group_p +EXPORT_SYMBOL vmlinux 0x00000000 inode_add_bytes +EXPORT_SYMBOL vmlinux 0x00000000 iov_shorten +EXPORT_SYMBOL vmlinux 0x00000000 iterate_fd +EXPORT_SYMBOL vmlinux 0x00000000 ns_capable +EXPORT_SYMBOL vmlinux 0x00000000 path_is_under +EXPORT_SYMBOL vmlinux 0x00000000 register_exec_domain +EXPORT_SYMBOL vmlinux 0x00000000 schedule_timeout +EXPORT_SYMBOL vmlinux 0x00000000 sock_register +EXPORT_SYMBOL vmlinux 0x00000000 sys_close +EXPORT_SYMBOL vmlinux 0x00000000 task_nice +EXPORT_SYMBOL vmlinux 0x00000000 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x00000000 vm_brk +EXPORT_SYMBOL vmlinux 0x00276f86 dev_set_group +EXPORT_SYMBOL vmlinux 0x004b0a6f kthread_create_on_node +EXPORT_SYMBOL vmlinux 0x004d2754 uart_add_one_port +EXPORT_SYMBOL vmlinux 0x00801678 flush_scheduled_work +EXPORT_SYMBOL vmlinux 0x0095b8d8 keyring_search +EXPORT_SYMBOL vmlinux 0x00bf9f91 efi +EXPORT_SYMBOL vmlinux 0x00c52430 ida_simple_get +EXPORT_SYMBOL vmlinux 0x00d660a3 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0x00e8097b csum_partial_copy_fromiovecend +EXPORT_SYMBOL vmlinux 0x010496e6 kmem_cache_free +EXPORT_SYMBOL vmlinux 0x01139ffc max_mapnr +EXPORT_SYMBOL vmlinux 0x012d9686 tcp_prot +EXPORT_SYMBOL vmlinux 0x01444cd1 idr_replace +EXPORT_SYMBOL vmlinux 0x015138ef phy_start_aneg +EXPORT_SYMBOL vmlinux 0x016dd82e ip6_route_output +EXPORT_SYMBOL vmlinux 0x018a248f blk_init_queue +EXPORT_SYMBOL vmlinux 0x01902adf netpoll_trap +EXPORT_SYMBOL vmlinux 0x019517f8 read_cache_pages +EXPORT_SYMBOL vmlinux 0x01a992ac lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x01be9ebd cdrom_mode_select +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x022baed4 dma_common_get_sgtable +EXPORT_SYMBOL vmlinux 0x0237b57a arch_unregister_cpu +EXPORT_SYMBOL vmlinux 0x02649054 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x0270ea64 scsi_scan_host +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x02762ed5 simple_open +EXPORT_SYMBOL vmlinux 0x027f4969 security_task_getsecid +EXPORT_SYMBOL vmlinux 0x028080a4 kobject_add +EXPORT_SYMBOL vmlinux 0x02868ab5 dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0x029444f0 native_read_tsc +EXPORT_SYMBOL vmlinux 0x029be0e0 xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0x029f687d scsi_is_target_device +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a23d15 sock_no_accept +EXPORT_SYMBOL vmlinux 0x02a6ce5a crc16_table +EXPORT_SYMBOL vmlinux 0x02ee26c1 free_pages_exact +EXPORT_SYMBOL vmlinux 0x031f150c __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x0343523c __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x03592ea0 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x0362dff2 rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x036db1cd netpoll_send_udp +EXPORT_SYMBOL vmlinux 0x036f1ad0 cfb_fillrect +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x03b1d1dd pnp_request_card_device +EXPORT_SYMBOL vmlinux 0x03b29fc0 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x03b580eb wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x03bcc8c0 proc_mkdir +EXPORT_SYMBOL vmlinux 0x03c06156 bitmap_fold +EXPORT_SYMBOL vmlinux 0x03c4ccfc blk_mq_can_queue +EXPORT_SYMBOL vmlinux 0x03d8e05d iterate_mounts +EXPORT_SYMBOL vmlinux 0x03eca7ff netif_device_attach +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x04019caa inode_init_once +EXPORT_SYMBOL vmlinux 0x0422fe4a inet_csk_timer_bug_msg +EXPORT_SYMBOL vmlinux 0x043e1b1f inode_capable +EXPORT_SYMBOL vmlinux 0x043e9fc4 security_path_link +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x046889bc __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0x04695e4c seq_bitmap_list +EXPORT_SYMBOL vmlinux 0x046f0c2d read_dev_sector +EXPORT_SYMBOL vmlinux 0x04852ed8 kmap_atomic_to_page +EXPORT_SYMBOL vmlinux 0x0487f831 fb_find_best_display +EXPORT_SYMBOL vmlinux 0x04968504 posix_unblock_lock +EXPORT_SYMBOL vmlinux 0x04a304d8 padata_set_cpumask +EXPORT_SYMBOL vmlinux 0x04a4c562 phy_init_eee +EXPORT_SYMBOL vmlinux 0x04d8c750 release_perfctr_nmi +EXPORT_SYMBOL vmlinux 0x04de0ec0 drop_nlink +EXPORT_SYMBOL vmlinux 0x04e4e322 generic_make_request +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04eea905 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x04fe0245 get_thermal_instance +EXPORT_SYMBOL vmlinux 0x050877b9 dmi_first_match +EXPORT_SYMBOL vmlinux 0x050c8296 vlan_vid_del +EXPORT_SYMBOL vmlinux 0x050ccf17 security_mmap_file +EXPORT_SYMBOL vmlinux 0x050e1af4 nobh_write_begin +EXPORT_SYMBOL vmlinux 0x05135e81 mmc_release_host +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x054434d6 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x057ce975 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0x057f83cf udp_lib_rehash +EXPORT_SYMBOL vmlinux 0x0593a99b init_timer_key +EXPORT_SYMBOL vmlinux 0x05a8cff7 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x05aef006 acpi_match_device_ids +EXPORT_SYMBOL vmlinux 0x05b21490 mmc_power_save_host +EXPORT_SYMBOL vmlinux 0x05b9a272 netdev_features_change +EXPORT_SYMBOL vmlinux 0x05bac8f5 bdev_read_only +EXPORT_SYMBOL vmlinux 0x05bb0e7d inetdev_by_index +EXPORT_SYMBOL vmlinux 0x05cc134f mmc_set_blockcount +EXPORT_SYMBOL vmlinux 0x0601eb38 seq_vprintf +EXPORT_SYMBOL vmlinux 0x060dbb28 i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x061ff728 nf_log_unset +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x0637f535 mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x0646ad52 sk_common_release +EXPORT_SYMBOL vmlinux 0x0652c773 alloc_buffer_head +EXPORT_SYMBOL vmlinux 0x06578535 phy_connect +EXPORT_SYMBOL vmlinux 0x065eef57 xfrm_cfg_mutex +EXPORT_SYMBOL vmlinux 0x06606e68 pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0x06615a6d mount_bdev +EXPORT_SYMBOL vmlinux 0x067d8d35 security_release_secctx +EXPORT_SYMBOL vmlinux 0x068c7263 ioremap_cache +EXPORT_SYMBOL vmlinux 0x0698fdbd uart_get_divisor +EXPORT_SYMBOL vmlinux 0x06c0dae5 __kernel_fpu_end +EXPORT_SYMBOL vmlinux 0x06d2f086 dma_spin_lock +EXPORT_SYMBOL vmlinux 0x06ddf5b9 generic_pipe_buf_map +EXPORT_SYMBOL vmlinux 0x06e458e0 ida_get_new_above +EXPORT_SYMBOL vmlinux 0x06fe3b14 default_grn +EXPORT_SYMBOL vmlinux 0x0727c4f3 iowrite8 +EXPORT_SYMBOL vmlinux 0x072c60bd get_agp_version +EXPORT_SYMBOL vmlinux 0x073dfa12 generate_resume_trace +EXPORT_SYMBOL vmlinux 0x075a659f xfrm_unregister_mode +EXPORT_SYMBOL vmlinux 0x07608604 acpi_get_vendor_resource +EXPORT_SYMBOL vmlinux 0x076b7a2a kill_pid +EXPORT_SYMBOL vmlinux 0x077d6589 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0x079104c6 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0x07946c3f lease_get_mtime +EXPORT_SYMBOL vmlinux 0x0799aca4 local_bh_enable +EXPORT_SYMBOL vmlinux 0x07a66cf2 tcf_hash_release +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07a8e6eb shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x07aa3290 acpi_walk_resource_buffer +EXPORT_SYMBOL vmlinux 0x07abbacd ida_destroy +EXPORT_SYMBOL vmlinux 0x07b8630c mark_info_dirty +EXPORT_SYMBOL vmlinux 0x07bbefd3 pci_set_power_state +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07d50a24 csum_partial +EXPORT_SYMBOL vmlinux 0x07d57076 skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0x07d6b79c sk_receive_skb +EXPORT_SYMBOL vmlinux 0x07db2adb seq_write +EXPORT_SYMBOL vmlinux 0x07dd8c6c mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x07ede0db devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0x0802643f vfs_getattr +EXPORT_SYMBOL vmlinux 0x0805b72d genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0x081f88f8 tty_unthrottle +EXPORT_SYMBOL vmlinux 0x0828fd36 sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x082ccf2d pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x084187b7 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0x0850c3cc fb_is_primary_device +EXPORT_SYMBOL vmlinux 0x08631417 scsi_prep_state_check +EXPORT_SYMBOL vmlinux 0x08632759 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0x0897287b acpi_disable_all_gpes +EXPORT_SYMBOL vmlinux 0x08a2f6a8 i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0x08a8e87f neigh_for_each +EXPORT_SYMBOL vmlinux 0x08b9b44d blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0x08bef1a7 poll_schedule_timeout +EXPORT_SYMBOL vmlinux 0x08bf826c _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0x08ca63c6 tty_mutex +EXPORT_SYMBOL vmlinux 0x08f56e7f write_cache_pages +EXPORT_SYMBOL vmlinux 0x0919e90d __pskb_copy +EXPORT_SYMBOL vmlinux 0x091aac88 __quota_error +EXPORT_SYMBOL vmlinux 0x09529ce0 register_framebuffer +EXPORT_SYMBOL vmlinux 0x095b0625 dev_change_flags +EXPORT_SYMBOL vmlinux 0x097c2d2f qdisc_destroy +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x098d95ea skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0x0992780d efi_enabled +EXPORT_SYMBOL vmlinux 0x09ab20ca gen10g_restart_aneg +EXPORT_SYMBOL vmlinux 0x09aebbf6 mdiobus_free +EXPORT_SYMBOL vmlinux 0x09bacaba redraw_screen +EXPORT_SYMBOL vmlinux 0x09c55cec schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09cd55a3 i2c_verify_client +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09fecc36 __get_page_tail +EXPORT_SYMBOL vmlinux 0x0a1f6377 pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x0a2487e0 unblock_all_signals +EXPORT_SYMBOL vmlinux 0x0a2cdc69 rtnl_create_link +EXPORT_SYMBOL vmlinux 0x0a2e90c4 pid_task +EXPORT_SYMBOL vmlinux 0x0a3131f6 strnchr +EXPORT_SYMBOL vmlinux 0x0a469d23 mfd_clone_cell +EXPORT_SYMBOL vmlinux 0x0a4cdf50 padata_free +EXPORT_SYMBOL vmlinux 0x0a56d356 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x0a7ae7f4 netdev_err +EXPORT_SYMBOL vmlinux 0x0a89a36e vfs_mkdir +EXPORT_SYMBOL vmlinux 0x0a8d0bc1 tty_unlock_pair +EXPORT_SYMBOL vmlinux 0x0a902d51 nf_getsockopt +EXPORT_SYMBOL vmlinux 0x0aa30aa5 dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0x0aa3d53e scsi_remove_device +EXPORT_SYMBOL vmlinux 0x0aad9113 buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0x0abc115e audit_log_start +EXPORT_SYMBOL vmlinux 0x0ac525e6 register_sysctl +EXPORT_SYMBOL vmlinux 0x0acb1a3c __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ade6d86 inode_add_rsv_space +EXPORT_SYMBOL vmlinux 0x0adeb2ec mapping_tagged +EXPORT_SYMBOL vmlinux 0x0ae64de7 sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x0aee2586 scsi_get_command +EXPORT_SYMBOL vmlinux 0x0af34e01 skb_split +EXPORT_SYMBOL vmlinux 0x0af7ebdf phy_disconnect +EXPORT_SYMBOL vmlinux 0x0afa3284 dquot_quota_off +EXPORT_SYMBOL vmlinux 0x0b0d888b icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0x0b1a04a5 jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x0b1b404e inet_recvmsg +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b2eeeeb pv_mmu_ops +EXPORT_SYMBOL vmlinux 0x0b3fd8a0 nonseekable_open +EXPORT_SYMBOL vmlinux 0x0b48677a __kfifo_init +EXPORT_SYMBOL vmlinux 0x0b48c680 pnp_is_active +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b7a0975 mpage_writepages +EXPORT_SYMBOL vmlinux 0x0b8a65dc proc_symlink +EXPORT_SYMBOL vmlinux 0x0b9bd90e pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0x0bb1ca0b pm860x_set_bits +EXPORT_SYMBOL vmlinux 0x0bbc5908 gen_estimator_active +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bd138d6 pci_get_slot +EXPORT_SYMBOL vmlinux 0x0beafcde gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x0bf5f22c mutex_trylock +EXPORT_SYMBOL vmlinux 0x0c45fc96 vfs_lstat +EXPORT_SYMBOL vmlinux 0x0c58a8cd netdev_increment_features +EXPORT_SYMBOL vmlinux 0x0c65e73c scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0x0c67e41c nf_log_unregister +EXPORT_SYMBOL vmlinux 0x0c6aed59 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0x0c759d44 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x0c79f0b2 ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0x0c8c9e99 scsi_show_extd_sense +EXPORT_SYMBOL vmlinux 0x0ca7b7a8 acpi_check_region +EXPORT_SYMBOL vmlinux 0x0cae232b utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0x0cbd5ac9 mmc_free_host +EXPORT_SYMBOL vmlinux 0x0cd0939b set_binfmt +EXPORT_SYMBOL vmlinux 0x0cdb7d12 __kernel_fpu_begin +EXPORT_SYMBOL vmlinux 0x0ce900af blk_finish_plug +EXPORT_SYMBOL vmlinux 0x0cedd3c7 inet_register_protosw +EXPORT_SYMBOL vmlinux 0x0d17497d file_open_root +EXPORT_SYMBOL vmlinux 0x0d36d075 xfrm4_rcv +EXPORT_SYMBOL vmlinux 0x0d3ced6b set_security_override +EXPORT_SYMBOL vmlinux 0x0d3dda14 acpi_get_type +EXPORT_SYMBOL vmlinux 0x0d41b129 mpage_readpages +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d5e2b28 dev_set_mac_address +EXPORT_SYMBOL vmlinux 0x0d5fdec7 blk_queue_end_tag +EXPORT_SYMBOL vmlinux 0x0d6c2efd genphy_resume +EXPORT_SYMBOL vmlinux 0x0d7d5473 tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0x0da10ec3 security_sock_graft +EXPORT_SYMBOL vmlinux 0x0e60ba11 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0x0e6da44a set_normalized_timespec +EXPORT_SYMBOL vmlinux 0x0e8424c4 eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0x0eaf451e hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x0ed7c249 unregister_quota_format +EXPORT_SYMBOL vmlinux 0x0ee2b011 neigh_parms_release +EXPORT_SYMBOL vmlinux 0x0efcbb1b set_current_groups +EXPORT_SYMBOL vmlinux 0x0f086b68 __bread +EXPORT_SYMBOL vmlinux 0x0f32662e skb_queue_head +EXPORT_SYMBOL vmlinux 0x0f362da1 seq_putc +EXPORT_SYMBOL vmlinux 0x0f43fa65 d_find_alias +EXPORT_SYMBOL vmlinux 0x0f4c91ed ns_to_timespec +EXPORT_SYMBOL vmlinux 0x0f5c92a7 skb_copy_datagram_from_iovec +EXPORT_SYMBOL vmlinux 0x0f726197 elv_rb_add +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0faeff2c generic_file_fsync +EXPORT_SYMBOL vmlinux 0x0fbd52a4 blk_queue_io_min +EXPORT_SYMBOL vmlinux 0x0fc305f8 scsi_execute +EXPORT_SYMBOL vmlinux 0x0fd00a68 acpi_clear_event +EXPORT_SYMBOL vmlinux 0x0ff2b602 slhc_compress +EXPORT_SYMBOL vmlinux 0x1006a4a7 kmap_atomic_prot +EXPORT_SYMBOL vmlinux 0x102c56de irq_regs +EXPORT_SYMBOL vmlinux 0x10364e3d dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0x1047f243 jbd2_journal_file_inode +EXPORT_SYMBOL vmlinux 0x104987d5 pnp_register_card_driver +EXPORT_SYMBOL vmlinux 0x1051bca9 agp_generic_mask_memory +EXPORT_SYMBOL vmlinux 0x106f13ab crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x107657f9 intel_gmch_probe +EXPORT_SYMBOL vmlinux 0x10798752 pci_request_regions +EXPORT_SYMBOL vmlinux 0x107d1f70 tcf_em_register +EXPORT_SYMBOL vmlinux 0x1093a796 dev_load +EXPORT_SYMBOL vmlinux 0x10a943fe generic_delete_inode +EXPORT_SYMBOL vmlinux 0x10ab7e05 devm_gpiod_put +EXPORT_SYMBOL vmlinux 0x10ab7e68 down_killable +EXPORT_SYMBOL vmlinux 0x10aef410 napi_gro_receive +EXPORT_SYMBOL vmlinux 0x10ee20bb default_blu +EXPORT_SYMBOL vmlinux 0x10f0ae7d uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x10fb8176 bdget_disk +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x110927dc jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x11267875 scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0x1148ec79 tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x115c6edd lock_sock_fast +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x1182aeff dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0x118435ad set_nlink +EXPORT_SYMBOL vmlinux 0x118b2355 nf_register_sockopt +EXPORT_SYMBOL vmlinux 0x11a4e304 elv_abort_queue +EXPORT_SYMBOL vmlinux 0x11da7735 tcp_prequeue +EXPORT_SYMBOL vmlinux 0x11dd01ad intel_scu_ipc_command +EXPORT_SYMBOL vmlinux 0x11e2ec12 flex_array_free_parts +EXPORT_SYMBOL vmlinux 0x11f6cbfd xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x12128345 qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0x121a966c d_instantiate +EXPORT_SYMBOL vmlinux 0x12358ef4 gen_pool_add_virt +EXPORT_SYMBOL vmlinux 0x12387d2d scsi_prep_fn +EXPORT_SYMBOL vmlinux 0x123ae2f2 acpi_get_hp_hw_control_from_firmware +EXPORT_SYMBOL vmlinux 0x123feb08 pci_release_regions +EXPORT_SYMBOL vmlinux 0x128a5cf9 complete_all +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12a3bed3 ata_dev_printk +EXPORT_SYMBOL vmlinux 0x12bd26f9 pm860x_reg_read +EXPORT_SYMBOL vmlinux 0x12da5bb2 __kmalloc +EXPORT_SYMBOL vmlinux 0x12ed0581 dma_async_memcpy_pg_to_pg +EXPORT_SYMBOL vmlinux 0x131f5c2e generic_block_bmap +EXPORT_SYMBOL vmlinux 0x13307fde vsscanf +EXPORT_SYMBOL vmlinux 0x133d7c97 eth_validate_addr +EXPORT_SYMBOL vmlinux 0x133f8cce kfree_skb +EXPORT_SYMBOL vmlinux 0x1348760d ipmi_request_settime +EXPORT_SYMBOL vmlinux 0x139ce939 ps2_end_command +EXPORT_SYMBOL vmlinux 0x139eca7d mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0x13b8cef6 tty_do_resize +EXPORT_SYMBOL vmlinux 0x13be3ff7 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0x13be5c84 page_put_link +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13e2084d starget_for_each_device +EXPORT_SYMBOL vmlinux 0x13e5cd08 phy_stop_interrupts +EXPORT_SYMBOL vmlinux 0x13f1df2a sk_free +EXPORT_SYMBOL vmlinux 0x13f42152 system_entering_hibernation +EXPORT_SYMBOL vmlinux 0x13fcdc0a dma_pool_create +EXPORT_SYMBOL vmlinux 0x14006b6b unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x1415f951 dmam_alloc_noncoherent +EXPORT_SYMBOL vmlinux 0x1420b379 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0x144fb984 qdisc_tree_decrease_qlen +EXPORT_SYMBOL vmlinux 0x14525811 lro_flush_all +EXPORT_SYMBOL vmlinux 0x1453e809 audit_log_task_info +EXPORT_SYMBOL vmlinux 0x146eea11 blk_make_request +EXPORT_SYMBOL vmlinux 0x14892aa7 jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0x14a78365 x86_hyper +EXPORT_SYMBOL vmlinux 0x14b36a67 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0x14cd5ae3 xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x14ee158f current_task +EXPORT_SYMBOL vmlinux 0x14f8a52d pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x150389d6 acpi_processor_power_init_bm_check +EXPORT_SYMBOL vmlinux 0x1543abcc update_region +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x1551dc51 bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x1573814a gen_new_estimator +EXPORT_SYMBOL vmlinux 0x159c4156 abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0x15eb6095 bio_reset +EXPORT_SYMBOL vmlinux 0x15f571ec blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0x160ea4c8 sfi_disabled +EXPORT_SYMBOL vmlinux 0x16305289 warn_slowpath_null +EXPORT_SYMBOL vmlinux 0x164cbc7a lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0x1650b0d5 pci_disable_link_state +EXPORT_SYMBOL vmlinux 0x1651097e textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0x16756df3 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0x167e7f9d __get_user_1 +EXPORT_SYMBOL vmlinux 0x16817f1f iput +EXPORT_SYMBOL vmlinux 0x168f1082 _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x16d1d031 bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0x16d9f5c5 textsearch_unregister +EXPORT_SYMBOL vmlinux 0x16dcec76 ipmi_set_my_address +EXPORT_SYMBOL vmlinux 0x16ea5d9f lockref_get +EXPORT_SYMBOL vmlinux 0x16fae087 __ip_dev_find +EXPORT_SYMBOL vmlinux 0x1708f9ec inode_dio_done +EXPORT_SYMBOL vmlinux 0x170bf005 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0x170c25ee acpi_get_next_object +EXPORT_SYMBOL vmlinux 0x170ed7ca user_path_create +EXPORT_SYMBOL vmlinux 0x17121b4b override_creds +EXPORT_SYMBOL vmlinux 0x173d3dc9 dm_put_device +EXPORT_SYMBOL vmlinux 0x1747b4c0 d_alloc_pseudo +EXPORT_SYMBOL vmlinux 0x17568052 security_path_rename +EXPORT_SYMBOL vmlinux 0x176cc890 from_kprojid +EXPORT_SYMBOL vmlinux 0x176e3653 phy_attach_direct +EXPORT_SYMBOL vmlinux 0x1775ad2f security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x1779b1a1 blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0x1790d76b _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0x179f5058 max8998_write_reg +EXPORT_SYMBOL vmlinux 0x17b1125d gen_kill_estimator +EXPORT_SYMBOL vmlinux 0x17b9c479 uart_match_port +EXPORT_SYMBOL vmlinux 0x17bdfc1b mmc_gpio_request_cd +EXPORT_SYMBOL vmlinux 0x17e20b18 twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0x17f341a0 i8042_lock_chip +EXPORT_SYMBOL vmlinux 0x17f3f5b7 lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x17fa81cd __idr_get_new_above +EXPORT_SYMBOL vmlinux 0x18241eec processors +EXPORT_SYMBOL vmlinux 0x1826f089 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x18378740 dev_alloc_name +EXPORT_SYMBOL vmlinux 0x183fa88b mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0x184b82fb mmc_vddrange_to_ocrmask +EXPORT_SYMBOL vmlinux 0x184e6c85 radix_tree_gang_lookup_slot +EXPORT_SYMBOL vmlinux 0x18561a95 phy_device_create +EXPORT_SYMBOL vmlinux 0x185c016a set_page_dirty +EXPORT_SYMBOL vmlinux 0x188a3dfb timespec_trunc +EXPORT_SYMBOL vmlinux 0x189868d7 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x18d96501 atomic64_dec_if_positive_cx8 +EXPORT_SYMBOL vmlinux 0x191999ae __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x191b6901 dm_get_device +EXPORT_SYMBOL vmlinux 0x194cd9da netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0x1958cac4 check_disk_size_change +EXPORT_SYMBOL vmlinux 0x197ae9fd pci_remove_bus +EXPORT_SYMBOL vmlinux 0x197db2fd sock_no_connect +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19a9e62b complete +EXPORT_SYMBOL vmlinux 0x19b171f4 sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19d444c1 skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0x19dd111c vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x1a10c898 ipmi_set_maintenance_mode +EXPORT_SYMBOL vmlinux 0x1a25539d search_binary_handler +EXPORT_SYMBOL vmlinux 0x1a45cb6c acpi_disabled +EXPORT_SYMBOL vmlinux 0x1a4e794b twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0x1a4fea3f lockref_mark_dead +EXPORT_SYMBOL vmlinux 0x1a52c7c6 inet_frags_exit_net +EXPORT_SYMBOL vmlinux 0x1a63af34 vga_switcheroo_process_delayed_switch +EXPORT_SYMBOL vmlinux 0x1a6d89bc free_buffer_head +EXPORT_SYMBOL vmlinux 0x1a76ceb0 xfrm_init_replay +EXPORT_SYMBOL vmlinux 0x1a87f1d0 md_write_start +EXPORT_SYMBOL vmlinux 0x1a99fe08 input_release_device +EXPORT_SYMBOL vmlinux 0x1aa0d571 d_drop +EXPORT_SYMBOL vmlinux 0x1aa9f76b ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x1aba5db8 ipmi_unregister_smi +EXPORT_SYMBOL vmlinux 0x1ac40bfc jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0x1ace138d bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0x1ae14ef5 _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x1b007b76 skb_trim +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b0ac272 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0x1b148bb2 elevator_change +EXPORT_SYMBOL vmlinux 0x1b184ab8 tcp_make_synack +EXPORT_SYMBOL vmlinux 0x1b1e1088 sg_nents +EXPORT_SYMBOL vmlinux 0x1b44cda6 sk_filter +EXPORT_SYMBOL vmlinux 0x1b565f80 iterate_dir +EXPORT_SYMBOL vmlinux 0x1b570d23 acpi_warning +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b69c75c inode_dio_wait +EXPORT_SYMBOL vmlinux 0x1b76e370 blk_queue_dma_pad +EXPORT_SYMBOL vmlinux 0x1b7815ca jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0x1b7f9e71 notify_change +EXPORT_SYMBOL vmlinux 0x1b8249e7 uart_resume_port +EXPORT_SYMBOL vmlinux 0x1b82fefa md_unplug +EXPORT_SYMBOL vmlinux 0x1b8628ac setup_new_exec +EXPORT_SYMBOL vmlinux 0x1b8b071f pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0x1b8b95ad i8042_unlock_chip +EXPORT_SYMBOL vmlinux 0x1b9e0ff1 scsilun_to_int +EXPORT_SYMBOL vmlinux 0x1baa33b2 ps2_command +EXPORT_SYMBOL vmlinux 0x1bdbd22e skb_put +EXPORT_SYMBOL vmlinux 0x1bdf2e62 inet_frag_find +EXPORT_SYMBOL vmlinux 0x1be7e19c tty_port_init +EXPORT_SYMBOL vmlinux 0x1c195031 alloc_file +EXPORT_SYMBOL vmlinux 0x1c2899f7 __blk_end_request +EXPORT_SYMBOL vmlinux 0x1c4acde3 pci_clear_mwi +EXPORT_SYMBOL vmlinux 0x1c5028ae d_rehash +EXPORT_SYMBOL vmlinux 0x1c5b2cef vlan_uses_dev +EXPORT_SYMBOL vmlinux 0x1c5f8cef udp_poll +EXPORT_SYMBOL vmlinux 0x1c8a04b0 acpi_reset +EXPORT_SYMBOL vmlinux 0x1c92e174 dcache_dir_open +EXPORT_SYMBOL vmlinux 0x1c97655b netpoll_send_skb_on_dev +EXPORT_SYMBOL vmlinux 0x1c99d1ea scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0x1ca66995 bio_sector_offset +EXPORT_SYMBOL vmlinux 0x1cbd0ea4 inet_sendpage +EXPORT_SYMBOL vmlinux 0x1ce6bc05 pnpbios_protocol +EXPORT_SYMBOL vmlinux 0x1d557db6 kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0x1d6c77d5 kthread_bind +EXPORT_SYMBOL vmlinux 0x1d78ac6a __bforget +EXPORT_SYMBOL vmlinux 0x1d856882 mmc_get_card +EXPORT_SYMBOL vmlinux 0x1dac4a7e fb_set_suspend +EXPORT_SYMBOL vmlinux 0x1db1bbaa skb_checksum +EXPORT_SYMBOL vmlinux 0x1dc36131 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1de74f72 acpi_execute_simple_method +EXPORT_SYMBOL vmlinux 0x1df04e26 tcp_gso_segment +EXPORT_SYMBOL vmlinux 0x1df31e31 agp_generic_alloc_page +EXPORT_SYMBOL vmlinux 0x1dfaa3dd phy_device_free +EXPORT_SYMBOL vmlinux 0x1e047854 warn_slowpath_fmt +EXPORT_SYMBOL vmlinux 0x1e084767 blk_mq_alloc_reserved_request +EXPORT_SYMBOL vmlinux 0x1e0c2be4 ioremap_wc +EXPORT_SYMBOL vmlinux 0x1e26be3b get_anon_bdev +EXPORT_SYMBOL vmlinux 0x1e44a706 netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x1e50311f write_inode_now +EXPORT_SYMBOL vmlinux 0x1e5112f8 d_find_any_alias +EXPORT_SYMBOL vmlinux 0x1e5e11fa dquot_initialize +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e6f52e9 agp_alloc_page_array +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ec0ef3d xfrm_state_flush +EXPORT_SYMBOL vmlinux 0x1ec1f518 bioset_integrity_free +EXPORT_SYMBOL vmlinux 0x1ec3bed9 hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0x1ec4eb34 flex_array_prealloc +EXPORT_SYMBOL vmlinux 0x1ecf5fa0 pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x1edbf027 bio_integrity_free +EXPORT_SYMBOL vmlinux 0x1eeee52e elv_rb_find +EXPORT_SYMBOL vmlinux 0x1f1df270 eisa_driver_register +EXPORT_SYMBOL vmlinux 0x1f301a53 agp_free_page_array +EXPORT_SYMBOL vmlinux 0x1f3f1886 skb_queue_tail +EXPORT_SYMBOL vmlinux 0x1f416262 tcp_connect +EXPORT_SYMBOL vmlinux 0x1f41c312 acpi_notifier_call_chain +EXPORT_SYMBOL vmlinux 0x1f4ae698 unregister_filesystem +EXPORT_SYMBOL vmlinux 0x1f595c9c pci_pme_active +EXPORT_SYMBOL vmlinux 0x1f5d4d1b tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x1f7e807f kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x1f9e88f9 d_alloc +EXPORT_SYMBOL vmlinux 0x1fa4f821 security_inode_readlink +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fc04b6f input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fd145b4 ip_cmsg_recv +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1fe9f800 unregister_cpu_notifier +EXPORT_SYMBOL vmlinux 0x1fedf0f4 __request_region +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x2005e68a acpi_remove_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x20092385 acpi_enter_sleep_state_s4bios +EXPORT_SYMBOL vmlinux 0x200af66d inet_listen +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x202b6e99 phy_connect_direct +EXPORT_SYMBOL vmlinux 0x20325b3e phy_print_status +EXPORT_SYMBOL vmlinux 0x20346508 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x208739f6 acpi_load_table +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20b2bb2d param_array_ops +EXPORT_SYMBOL vmlinux 0x20c55ae0 sscanf +EXPORT_SYMBOL vmlinux 0x20c6192f intel_scu_ipc_ioread32 +EXPORT_SYMBOL vmlinux 0x20d4786e sock_release +EXPORT_SYMBOL vmlinux 0x20f4fdce kill_fasync +EXPORT_SYMBOL vmlinux 0x20fc1eb2 netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0x2127cefa udp_lib_unhash +EXPORT_SYMBOL vmlinux 0x212ade9b gen10g_config_aneg +EXPORT_SYMBOL vmlinux 0x2133992e lookup_bdev +EXPORT_SYMBOL vmlinux 0x215ebd78 bitrev16 +EXPORT_SYMBOL vmlinux 0x217dda13 flex_array_get +EXPORT_SYMBOL vmlinux 0x2199337a down_timeout +EXPORT_SYMBOL vmlinux 0x21a6250e fib_default_rule_pref +EXPORT_SYMBOL vmlinux 0x21ac1c22 inode_get_bytes +EXPORT_SYMBOL vmlinux 0x21e0ea22 acpi_get_id +EXPORT_SYMBOL vmlinux 0x21eb00fa inet_put_port +EXPORT_SYMBOL vmlinux 0x21f0517e dev_addr_del +EXPORT_SYMBOL vmlinux 0x21f34587 netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0x21fb443e _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0x221992e3 eth_header +EXPORT_SYMBOL vmlinux 0x221f06bb netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0x2222784f ps2_handle_ack +EXPORT_SYMBOL vmlinux 0x222817d0 ip_fragment +EXPORT_SYMBOL vmlinux 0x222e0622 blk_mq_insert_request +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x224b7068 napi_get_frags +EXPORT_SYMBOL vmlinux 0x2256fafa div64_u64_rem +EXPORT_SYMBOL vmlinux 0x2276bfa2 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x229ef496 dquot_quota_sync +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22b3baed generic_writepages +EXPORT_SYMBOL vmlinux 0x22bafb60 pskb_expand_head +EXPORT_SYMBOL vmlinux 0x231d4001 fb_edid_add_monspecs +EXPORT_SYMBOL vmlinux 0x232a2440 blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0x232d0bbe register_nls +EXPORT_SYMBOL vmlinux 0x234bf519 dev_uc_flush +EXPORT_SYMBOL vmlinux 0x234da979 put_io_context +EXPORT_SYMBOL vmlinux 0x23532c4d ftrace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x237a352d serio_interrupt +EXPORT_SYMBOL vmlinux 0x23a574fd security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0x23b2e452 bio_get_nr_vecs +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c8f257 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x24001816 pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0x24017a0c i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0x2406469d blk_end_request_cur +EXPORT_SYMBOL vmlinux 0x241314d3 padata_do_serial +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x24405b9b find_or_create_page +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x2443729d fb_show_logo +EXPORT_SYMBOL vmlinux 0x2446916a tty_port_hangup +EXPORT_SYMBOL vmlinux 0x244739ad revert_creds +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x245a60a1 nobh_write_end +EXPORT_SYMBOL vmlinux 0x24626cb8 scsi_scan_target +EXPORT_SYMBOL vmlinux 0x246bd1c6 clear_nlink +EXPORT_SYMBOL vmlinux 0x2482e688 vsprintf +EXPORT_SYMBOL vmlinux 0x2490a4cc ida_remove +EXPORT_SYMBOL vmlinux 0x24932094 make_kprojid +EXPORT_SYMBOL vmlinux 0x24a99e9b inet_dgram_ops +EXPORT_SYMBOL vmlinux 0x24b6f87c bio_alloc_pages +EXPORT_SYMBOL vmlinux 0x24d52dfd serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x24d7b4eb cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x24dac8b3 inet_frag_kill +EXPORT_SYMBOL vmlinux 0x24dd957c blk_fetch_request +EXPORT_SYMBOL vmlinux 0x24e3fd82 simple_readpage +EXPORT_SYMBOL vmlinux 0x24e45d19 __ethtool_get_settings +EXPORT_SYMBOL vmlinux 0x24e4da6d filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0x24f169fc down_read_trylock +EXPORT_SYMBOL vmlinux 0x24fdac79 wake_bit_function +EXPORT_SYMBOL vmlinux 0x250113b4 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x25077e84 bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x252b030c dma_find_channel +EXPORT_SYMBOL vmlinux 0x2544e521 netdev_notice +EXPORT_SYMBOL vmlinux 0x2550aad2 xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0x25669e03 pm860x_page_reg_read +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x2582379f __page_symlink +EXPORT_SYMBOL vmlinux 0x2585706d pci_find_next_bus +EXPORT_SYMBOL vmlinux 0x25c677c4 mac_pton +EXPORT_SYMBOL vmlinux 0x262fa4f4 sk_stream_write_space +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x2650d835 sysctl_ip_early_demux +EXPORT_SYMBOL vmlinux 0x26657a03 sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0x26754bbc inode_set_bytes +EXPORT_SYMBOL vmlinux 0x26815258 mmc_can_discard +EXPORT_SYMBOL vmlinux 0x26852f8e ida_simple_remove +EXPORT_SYMBOL vmlinux 0x2685c3d7 __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x269928f9 tty_register_driver +EXPORT_SYMBOL vmlinux 0x26b9b08e inet_del_offload +EXPORT_SYMBOL vmlinux 0x26bb950b __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0x26c3e8e9 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0x26e76fb8 sysctl_udp_wmem_min +EXPORT_SYMBOL vmlinux 0x26e9e99d simple_link +EXPORT_SYMBOL vmlinux 0x26ed3521 blk_queue_make_request +EXPORT_SYMBOL vmlinux 0x26f0453a blk_set_default_limits +EXPORT_SYMBOL vmlinux 0x270b8ce4 __mem_cgroup_count_vm_event +EXPORT_SYMBOL vmlinux 0x271441d3 agp_generic_free_gatt_table +EXPORT_SYMBOL vmlinux 0x2718f5e0 swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x271cba95 acpi_bus_private_data_handler +EXPORT_SYMBOL vmlinux 0x272d394e mtrr_del +EXPORT_SYMBOL vmlinux 0x274d08dc __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0x2751b7cc rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x277b6577 padata_alloc +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x27893ca7 blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0x27ae7d0c ec_transaction +EXPORT_SYMBOL vmlinux 0x27b7045d tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27c36dd2 sock_wmalloc +EXPORT_SYMBOL vmlinux 0x27c6f475 kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x27e4f8c8 acpi_gpiochip_free_interrupts +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x286a5ff1 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0x2879e73c jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0x28a2ed02 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x28b715a6 isapnp_cfg_end +EXPORT_SYMBOL vmlinux 0x28b7ca47 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x28bb1973 scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0x28fe114f dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0x291d4ebf pci_find_bus +EXPORT_SYMBOL vmlinux 0x29301cbb __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0x2931fb9f __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0x29537c9e alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0x297ce8d0 __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x29911e9c __register_binfmt +EXPORT_SYMBOL vmlinux 0x299ecc61 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0x29aabd83 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0x29c2bfbc end_buffer_async_write +EXPORT_SYMBOL vmlinux 0x29e0ddd2 dma_common_mmap +EXPORT_SYMBOL vmlinux 0x29fd0b24 filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0x29fdda53 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0x2a030bb3 __kfree_skb +EXPORT_SYMBOL vmlinux 0x2a0dbcbb clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x2a126ec2 inet_accept +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a37d074 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2a5d26a1 padata_do_parallel +EXPORT_SYMBOL vmlinux 0x2a5def2f intel_scu_ipc_iowrite32 +EXPORT_SYMBOL vmlinux 0x2a79ac13 clkdev_add +EXPORT_SYMBOL vmlinux 0x2a8b31e4 gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0x2a9a41f9 proto_register +EXPORT_SYMBOL vmlinux 0x2aa0e4fc strncasecmp +EXPORT_SYMBOL vmlinux 0x2acf0feb vfs_fstat +EXPORT_SYMBOL vmlinux 0x2ae1c5f7 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x2ae6aff3 __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0x2b0ba2b0 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x2b0fb46c scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x2b1324b8 kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0x2b15ed1d blk_queue_bounce +EXPORT_SYMBOL vmlinux 0x2b27e3d9 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x2b2ce78b kstrtos8 +EXPORT_SYMBOL vmlinux 0x2b312c81 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0x2b4720e9 pcibios_set_irq_routing +EXPORT_SYMBOL vmlinux 0x2b78e0a6 acpi_bus_unregister_driver +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2ba707a8 sysctl_tcp_low_latency +EXPORT_SYMBOL vmlinux 0x2bb0b0cd fs_bio_set +EXPORT_SYMBOL vmlinux 0x2bb55d6e acpi_remove_notify_handler +EXPORT_SYMBOL vmlinux 0x2bc82392 inet6_ioctl +EXPORT_SYMBOL vmlinux 0x2bc95bd4 memset +EXPORT_SYMBOL vmlinux 0x2bf631d9 mmc_alloc_host +EXPORT_SYMBOL vmlinux 0x2bf80f1e pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x2bf8d577 sleep_on_timeout +EXPORT_SYMBOL vmlinux 0x2bfb1633 kernel_recvmsg +EXPORT_SYMBOL vmlinux 0x2bfeb410 acpi_get_handle +EXPORT_SYMBOL vmlinux 0x2c0d3c3d dev_mc_unsync +EXPORT_SYMBOL vmlinux 0x2c14323a kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c4d4b63 pci_enable_ltr +EXPORT_SYMBOL vmlinux 0x2c6c7925 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0x2c6d5130 jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x2c900d91 cpufreq_put_global_kobject +EXPORT_SYMBOL vmlinux 0x2c9db7fa skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x2ca319a6 wrmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x2cae1228 fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0x2cc2783d dm_unregister_target +EXPORT_SYMBOL vmlinux 0x2d03c10d posix_acl_create +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d144e21 rdmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d37342e cpu_online_mask +EXPORT_SYMBOL vmlinux 0x2d3cf5fe key_type_keyring +EXPORT_SYMBOL vmlinux 0x2d848ff6 pci_dev_driver +EXPORT_SYMBOL vmlinux 0x2d89342a scsi_show_sense_hdr +EXPORT_SYMBOL vmlinux 0x2daaaba9 param_get_byte +EXPORT_SYMBOL vmlinux 0x2dab4a4d vm_insert_page +EXPORT_SYMBOL vmlinux 0x2dd16564 arch_register_cpu +EXPORT_SYMBOL vmlinux 0x2dd92565 fb_set_var +EXPORT_SYMBOL vmlinux 0x2ddcc095 mmc_gpio_free_cd +EXPORT_SYMBOL vmlinux 0x2ddfd3f9 key_payload_reserve +EXPORT_SYMBOL vmlinux 0x2dec25ce deactivate_super +EXPORT_SYMBOL vmlinux 0x2deda4a1 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x2dedc4c2 acpi_format_exception +EXPORT_SYMBOL vmlinux 0x2def7f76 rtc_cmos_write +EXPORT_SYMBOL vmlinux 0x2df0584e dump_align +EXPORT_SYMBOL vmlinux 0x2df49647 irq_set_chip +EXPORT_SYMBOL vmlinux 0x2dfeac50 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0x2e144b45 ll_rw_block +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e209e4e blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0x2e2ce9e0 sysctl_tcp_syncookies +EXPORT_SYMBOL vmlinux 0x2e491bb0 max8925_reg_read +EXPORT_SYMBOL vmlinux 0x2e60bace memcpy +EXPORT_SYMBOL vmlinux 0x2e693b8a mmc_can_trim +EXPORT_SYMBOL vmlinux 0x2e713b1a idr_init +EXPORT_SYMBOL vmlinux 0x2e8048a1 netdev_alert +EXPORT_SYMBOL vmlinux 0x2ec524ad __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x2ed50eca pci_disable_msi +EXPORT_SYMBOL vmlinux 0x2ee060a4 blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0x2eeceb42 sk_chk_filter +EXPORT_SYMBOL vmlinux 0x2ef63ad6 scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f064b55 allocate_resource +EXPORT_SYMBOL vmlinux 0x2f096203 max8998_bulk_read +EXPORT_SYMBOL vmlinux 0x2f384db3 acpi_is_video_device +EXPORT_SYMBOL vmlinux 0x2fad6864 mb_cache_create +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fc9efce xfrm_lookup +EXPORT_SYMBOL vmlinux 0x2fd2e250 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x2fdef982 seq_release +EXPORT_SYMBOL vmlinux 0x2fe1f3b9 mmc_stop_bkops +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2fe5f05d i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0x2fe657ba pci_set_mwi +EXPORT_SYMBOL vmlinux 0x2fec0d4c kobject_get +EXPORT_SYMBOL vmlinux 0x3005c054 register_key_type +EXPORT_SYMBOL vmlinux 0x3012f9ac __seq_open_private +EXPORT_SYMBOL vmlinux 0x3015a9af input_reset_device +EXPORT_SYMBOL vmlinux 0x30226ddf agp_device_command +EXPORT_SYMBOL vmlinux 0x305ba365 neigh_destroy +EXPORT_SYMBOL vmlinux 0x305ba436 tcf_exts_change +EXPORT_SYMBOL vmlinux 0x305f4c35 pci_vpd_truncate +EXPORT_SYMBOL vmlinux 0x307c2fd0 generic_check_addressable +EXPORT_SYMBOL vmlinux 0x30863387 free_netdev +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30b8ed58 led_set_brightness +EXPORT_SYMBOL vmlinux 0x30beec1e scsi_device_resume +EXPORT_SYMBOL vmlinux 0x30cada8f radix_tree_next_hole +EXPORT_SYMBOL vmlinux 0x30e74134 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0x30efbc18 __i2c_transfer +EXPORT_SYMBOL vmlinux 0x30eff14b request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0x30f9f3fa agp_generic_alloc_user +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x3107ce34 free_mdio_bitbang +EXPORT_SYMBOL vmlinux 0x310917fe sort +EXPORT_SYMBOL vmlinux 0x310ee583 scsi_block_requests +EXPORT_SYMBOL vmlinux 0x312824e0 hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x31311f60 udp_seq_open +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x3147857d default_red +EXPORT_SYMBOL vmlinux 0x315c65fd zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x31716934 bprm_change_interp +EXPORT_SYMBOL vmlinux 0x31825aa6 xfrm_init_state +EXPORT_SYMBOL vmlinux 0x318cadb1 reciprocal_value +EXPORT_SYMBOL vmlinux 0x3191f109 __krealloc +EXPORT_SYMBOL vmlinux 0x319c9359 bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x319ca38e __pci_register_driver +EXPORT_SYMBOL vmlinux 0x31a9df43 pci_fixup_device +EXPORT_SYMBOL vmlinux 0x31bc17ae pci_set_dma_seg_boundary +EXPORT_SYMBOL vmlinux 0x31c1396c netdev_lower_dev_get_private_rcu +EXPORT_SYMBOL vmlinux 0x31db5253 ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0x31de1045 sock_create +EXPORT_SYMBOL vmlinux 0x31e76b57 recalibrate_cpu_khz +EXPORT_SYMBOL vmlinux 0x31f0bb78 __kmap_atomic_idx +EXPORT_SYMBOL vmlinux 0x31fbcc08 qdisc_reset +EXPORT_SYMBOL vmlinux 0x3202435a wrmsr_safe_regs +EXPORT_SYMBOL vmlinux 0x3208dd6a page_readlink +EXPORT_SYMBOL vmlinux 0x3216aaf8 __f_setown +EXPORT_SYMBOL vmlinux 0x322ef102 ihold +EXPORT_SYMBOL vmlinux 0x322f48d4 abx500_dump_all_banks +EXPORT_SYMBOL vmlinux 0x325efa53 abx500_remove_ops +EXPORT_SYMBOL vmlinux 0x325fbfe3 read_cache_page +EXPORT_SYMBOL vmlinux 0x326425ca pci_unmap_biosrom +EXPORT_SYMBOL vmlinux 0x32692091 init_buffer +EXPORT_SYMBOL vmlinux 0x327a9ed0 __invalidate_device +EXPORT_SYMBOL vmlinux 0x327dd940 ppp_unit_number +EXPORT_SYMBOL vmlinux 0x328a5b2c set_create_files_as +EXPORT_SYMBOL vmlinux 0x32ce5dec inet6_bind +EXPORT_SYMBOL vmlinux 0x32cea339 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0x32d6af6c skb_copy_datagram_iovec +EXPORT_SYMBOL vmlinux 0x32eeaded _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0x33145583 gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0x332bfbce scsi_add_device +EXPORT_SYMBOL vmlinux 0x332fdf59 send_sig +EXPORT_SYMBOL vmlinux 0x3339b4a4 dev_emerg +EXPORT_SYMBOL vmlinux 0x334d2070 dma_async_device_register +EXPORT_SYMBOL vmlinux 0x337044d3 __sb_end_write +EXPORT_SYMBOL vmlinux 0x3377a65b acpi_bus_get_device +EXPORT_SYMBOL vmlinux 0x337cce46 put_cmsg +EXPORT_SYMBOL vmlinux 0x338677c8 agp_bridge +EXPORT_SYMBOL vmlinux 0x33967b8f end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0x33ad1452 eisa_driver_unregister +EXPORT_SYMBOL vmlinux 0x33ba5cd4 param_ops_bool +EXPORT_SYMBOL vmlinux 0x33c7435c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x33d8aa3e block_commit_write +EXPORT_SYMBOL vmlinux 0x33dbfd93 tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x33ff6c45 fsnotify_put_group +EXPORT_SYMBOL vmlinux 0x34184afe current_kernel_time +EXPORT_SYMBOL vmlinux 0x341de386 __pagevec_lru_add +EXPORT_SYMBOL vmlinux 0x341f631e load_nls_default +EXPORT_SYMBOL vmlinux 0x342f60fe apm_info +EXPORT_SYMBOL vmlinux 0x3437d4a9 proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x343c0f4b md_wakeup_thread +EXPORT_SYMBOL vmlinux 0x3443206a netif_napi_del +EXPORT_SYMBOL vmlinux 0x344d0358 agp_generic_type_to_mask_type +EXPORT_SYMBOL vmlinux 0x3452d3a1 cad_pid +EXPORT_SYMBOL vmlinux 0x345758ce pci_iounmap +EXPORT_SYMBOL vmlinux 0x347013de nla_validate +EXPORT_SYMBOL vmlinux 0x347eb9bd param_set_bool +EXPORT_SYMBOL vmlinux 0x34987a5f mem_map +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34a40207 pv_cpu_ops +EXPORT_SYMBOL vmlinux 0x34a62e7d cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0x34bd611b __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0x34c7aeea dump_skip +EXPORT_SYMBOL vmlinux 0x34d1f975 inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34feb846 mmc_cache_ctrl +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x353e21e3 acpi_bios_warning +EXPORT_SYMBOL vmlinux 0x358a0f4c frontswap_register_ops +EXPORT_SYMBOL vmlinux 0x3598a049 netlink_broadcast +EXPORT_SYMBOL vmlinux 0x35d97b6e skb_make_writable +EXPORT_SYMBOL vmlinux 0x36007b21 dev_get_stats +EXPORT_SYMBOL vmlinux 0x360b1afe probe_irq_mask +EXPORT_SYMBOL vmlinux 0x360b8d16 x86_cpu_to_apicid +EXPORT_SYMBOL vmlinux 0x364a5a4f key_reject_and_link +EXPORT_SYMBOL vmlinux 0x364f1194 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x366d45b3 tcp_enter_memory_pressure +EXPORT_SYMBOL vmlinux 0x367bd0af bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x367c5531 gen_pool_destroy +EXPORT_SYMBOL vmlinux 0x3686ea09 spi_print_msg +EXPORT_SYMBOL vmlinux 0x368f7f0a devm_gpio_request_one +EXPORT_SYMBOL vmlinux 0x36aad357 __wake_up_bit +EXPORT_SYMBOL vmlinux 0x36bd681b groups_alloc +EXPORT_SYMBOL vmlinux 0x36c463dc linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x36c6af51 intel_scu_ipc_iowrite8 +EXPORT_SYMBOL vmlinux 0x36e08e9b dma_supported +EXPORT_SYMBOL vmlinux 0x36e360e3 __hw_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x36ecd6e1 idr_remove +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x374f9747 pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0x3763f42c __devm_release_region +EXPORT_SYMBOL vmlinux 0x376f9105 flock_lock_file_wait +EXPORT_SYMBOL vmlinux 0x377163a8 vga_switcheroo_register_audio_client +EXPORT_SYMBOL vmlinux 0x377276ad sock_recvmsg +EXPORT_SYMBOL vmlinux 0x378b1aa5 fifo_set_limit +EXPORT_SYMBOL vmlinux 0x37a89136 mb_cache_shrink +EXPORT_SYMBOL vmlinux 0x37b1583f blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37d81ac1 clk_add_alias +EXPORT_SYMBOL vmlinux 0x37db8f19 dmi_get_date +EXPORT_SYMBOL vmlinux 0x37e74642 get_jiffies_64 +EXPORT_SYMBOL vmlinux 0x37f614b7 __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x38099e13 wrmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x381144a9 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x381ccc13 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x382f7ec7 padata_remove_cpu +EXPORT_SYMBOL vmlinux 0x383e36d9 kmap_high +EXPORT_SYMBOL vmlinux 0x38537946 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0x38625802 skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388799f6 unregister_kmmio_probe +EXPORT_SYMBOL vmlinux 0x388f9128 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38db3f7c truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0x38de4cec scsi_print_command +EXPORT_SYMBOL vmlinux 0x38e85d9d blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0x3902b2c7 vm_map_ram +EXPORT_SYMBOL vmlinux 0x3909c987 tty_unlock +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x3957cf72 blk_put_request +EXPORT_SYMBOL vmlinux 0x3971f32c skb_insert +EXPORT_SYMBOL vmlinux 0x39860cdb tcp_sync_mss +EXPORT_SYMBOL vmlinux 0x39a055f3 acpi_remove_gpe_handler +EXPORT_SYMBOL vmlinux 0x39a2e34a from_kuid +EXPORT_SYMBOL vmlinux 0x39eff285 i2c_master_send +EXPORT_SYMBOL vmlinux 0x39f67796 sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0x3a013b7d remove_wait_queue +EXPORT_SYMBOL vmlinux 0x3a08475f platform_thermal_notify +EXPORT_SYMBOL vmlinux 0x3a0bf21d bdi_destroy +EXPORT_SYMBOL vmlinux 0x3a32839e intel_gtt_chipset_flush +EXPORT_SYMBOL vmlinux 0x3a531525 mark_page_accessed +EXPORT_SYMBOL vmlinux 0x3a5e5dc1 dev_uc_sync +EXPORT_SYMBOL vmlinux 0x3a985a5f md_write_end +EXPORT_SYMBOL vmlinux 0x3a9b6fb9 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x3ab3258a tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0x3ae3ae2e input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0x3b131e70 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x3b1a2e3a textsearch_prepare +EXPORT_SYMBOL vmlinux 0x3b201620 machine_real_restart +EXPORT_SYMBOL vmlinux 0x3b49e610 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0x3b802a03 __pagevec_release +EXPORT_SYMBOL vmlinux 0x3b80e8e2 simple_rmdir +EXPORT_SYMBOL vmlinux 0x3b9a96d5 jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0x3bb50110 elv_dispatch_sort +EXPORT_SYMBOL vmlinux 0x3bd1b1f6 msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x3beadfe1 tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x3bef03b9 flow_cache_lookup +EXPORT_SYMBOL vmlinux 0x3bfe2017 find_vma +EXPORT_SYMBOL vmlinux 0x3c2725e2 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0x3c377853 blk_queue_find_tag +EXPORT_SYMBOL vmlinux 0x3c3fa1ca truncate_setsize +EXPORT_SYMBOL vmlinux 0x3c45c9cb grab_cache_page_nowait +EXPORT_SYMBOL vmlinux 0x3c6b45c0 bio_copy_user +EXPORT_SYMBOL vmlinux 0x3c7a23b6 dev_add_pack +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c8c08dc __skb_gso_segment +EXPORT_SYMBOL vmlinux 0x3c9d1211 string_get_size +EXPORT_SYMBOL vmlinux 0x3cb3931b sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x3cb538c5 pnp_device_attach +EXPORT_SYMBOL vmlinux 0x3ccb4600 pnp_unregister_card_driver +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3cfe3588 blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x3d030513 fsnotify_init_mark +EXPORT_SYMBOL vmlinux 0x3d0cb935 seq_open_private +EXPORT_SYMBOL vmlinux 0x3d36fd5b gen_pool_alloc +EXPORT_SYMBOL vmlinux 0x3d39a92e generic_write_end +EXPORT_SYMBOL vmlinux 0x3d499457 crypto_sha1_update +EXPORT_SYMBOL vmlinux 0x3d7c1ed7 msrs_alloc +EXPORT_SYMBOL vmlinux 0x3d8259b9 ipmi_smi_add_proc_entry +EXPORT_SYMBOL vmlinux 0x3d91509a pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0x3da171f9 pci_mem_start +EXPORT_SYMBOL vmlinux 0x3da4c4fd dentry_unhash +EXPORT_SYMBOL vmlinux 0x3dac909f pnp_release_card_device +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3df4d743 generic_fillattr +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e2567a0 mmc_detect_change +EXPORT_SYMBOL vmlinux 0x3e2ae3a8 acpi_release_global_lock +EXPORT_SYMBOL vmlinux 0x3e468ddf dev_disable_lro +EXPORT_SYMBOL vmlinux 0x3e4e6d67 ip_getsockopt +EXPORT_SYMBOL vmlinux 0x3e5b4fdf sock_no_mmap +EXPORT_SYMBOL vmlinux 0x3e6d1605 nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x3e882943 pcibios_align_resource +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3ebab313 scsi_remove_target +EXPORT_SYMBOL vmlinux 0x3ed63055 zlib_inflateReset +EXPORT_SYMBOL vmlinux 0x3eea9e41 kernel_sock_ioctl +EXPORT_SYMBOL vmlinux 0x3ef78d80 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x3eff5ac2 intel_scu_ipc_writev +EXPORT_SYMBOL vmlinux 0x3f0487a1 nf_nat_decode_session_hook +EXPORT_SYMBOL vmlinux 0x3f0546a8 ioread32_rep +EXPORT_SYMBOL vmlinux 0x3f0f53cd bio_put +EXPORT_SYMBOL vmlinux 0x3f239bc8 sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0x3f31ae94 dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0x3f38e00b __lock_buffer +EXPORT_SYMBOL vmlinux 0x3f42bf15 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f5d309a dentry_update_name_case +EXPORT_SYMBOL vmlinux 0x3f780c4d nf_unregister_hook +EXPORT_SYMBOL vmlinux 0x3f8c5ba1 pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0x3f9f868f __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x3fa58ef8 wait_for_completion +EXPORT_SYMBOL vmlinux 0x3fb4040d ndo_dflt_bridge_getlink +EXPORT_SYMBOL vmlinux 0x3fc52e39 tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0x3fc77aed ida_pre_get +EXPORT_SYMBOL vmlinux 0x3fd28096 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x3fda3d9e scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x3fec048f sg_next +EXPORT_SYMBOL vmlinux 0x3ff62317 local_bh_disable +EXPORT_SYMBOL vmlinux 0x40156721 scsi_prep_return +EXPORT_SYMBOL vmlinux 0x4016093c jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0x402b8281 __request_module +EXPORT_SYMBOL vmlinux 0x4034843f vfs_rename +EXPORT_SYMBOL vmlinux 0x4046aead i8042_remove_filter +EXPORT_SYMBOL vmlinux 0x4059792f print_hex_dump +EXPORT_SYMBOL vmlinux 0x405c1144 get_seconds +EXPORT_SYMBOL vmlinux 0x4060fd4d dquot_alloc +EXPORT_SYMBOL vmlinux 0x406d8684 neigh_seq_start +EXPORT_SYMBOL vmlinux 0x40801319 input_register_device +EXPORT_SYMBOL vmlinux 0x408897c1 backlight_device_register +EXPORT_SYMBOL vmlinux 0x408ec01a con_is_bound +EXPORT_SYMBOL vmlinux 0x40940bda fb_class +EXPORT_SYMBOL vmlinux 0x40951023 netdev_crit +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x4097fa45 acpi_read_bit_register +EXPORT_SYMBOL vmlinux 0x409873e3 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x409d49c5 skb_append +EXPORT_SYMBOL vmlinux 0x40a27c37 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x40a2d1dd dm_table_get_size +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40b33cc9 skb_seq_read +EXPORT_SYMBOL vmlinux 0x40c01859 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0x40c6a178 wait_on_page_bit +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40c89d46 acpi_get_table_by_index +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40d97fd6 pci_set_dma_max_seg_size +EXPORT_SYMBOL vmlinux 0x40df8e61 cpu_info +EXPORT_SYMBOL vmlinux 0x40f2b10c ipmi_alloc_smi_msg +EXPORT_SYMBOL vmlinux 0x40fa636c d_instantiate_unique +EXPORT_SYMBOL vmlinux 0x410880c4 tty_port_open +EXPORT_SYMBOL vmlinux 0x4115c763 mmc_start_req +EXPORT_SYMBOL vmlinux 0x411f1968 gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0x4132b9f9 tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x41420235 pnp_find_dev +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x415cc862 inet6_add_protocol +EXPORT_SYMBOL vmlinux 0x4176c723 d_obtain_alias +EXPORT_SYMBOL vmlinux 0x41771b0e dev_addr_init +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x418da933 netif_rx_ni +EXPORT_SYMBOL vmlinux 0x419418e6 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0x41a42aa0 backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x41ad14c6 kmalloc_dma_caches +EXPORT_SYMBOL vmlinux 0x41bc22db dev_get_flags +EXPORT_SYMBOL vmlinux 0x41d0f3c8 swiotlb_alloc_coherent +EXPORT_SYMBOL vmlinux 0x41d6cb07 wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x41df21fe __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x41f3e3fb km_state_notify +EXPORT_SYMBOL vmlinux 0x42065150 pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0x4211c3c1 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x421536a0 __devm_request_region +EXPORT_SYMBOL vmlinux 0x42350e8d ucs2_strlen +EXPORT_SYMBOL vmlinux 0x42356b1a always_delete_dentry +EXPORT_SYMBOL vmlinux 0x423b776a ipmi_create_user +EXPORT_SYMBOL vmlinux 0x4253f809 igrab +EXPORT_SYMBOL vmlinux 0x42595e58 vgacon_text_force +EXPORT_SYMBOL vmlinux 0x42675d80 scsi_dma_map +EXPORT_SYMBOL vmlinux 0x426b55c9 pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0x4287a641 put_page +EXPORT_SYMBOL vmlinux 0x42908f97 lock_may_write +EXPORT_SYMBOL vmlinux 0x4292364c schedule +EXPORT_SYMBOL vmlinux 0x42977ad4 __hw_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x42a1b208 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x42b21efe tty_unregister_device +EXPORT_SYMBOL vmlinux 0x42bc6dc5 unregister_console +EXPORT_SYMBOL vmlinux 0x42c8de35 ioremap_nocache +EXPORT_SYMBOL vmlinux 0x42cabaa1 netdev_printk +EXPORT_SYMBOL vmlinux 0x42ffceec dev_printk_emit +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x432071ac mb_cache_entry_insert +EXPORT_SYMBOL vmlinux 0x434102d9 mmc_align_data_size +EXPORT_SYMBOL vmlinux 0x43424c58 put_tty_driver +EXPORT_SYMBOL vmlinux 0x43509901 mmc_can_erase +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x4365cd09 scsi_unregister +EXPORT_SYMBOL vmlinux 0x436ab8b4 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x436c2179 iowrite32 +EXPORT_SYMBOL vmlinux 0x437f8b28 iterate_supers_type +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x4394d7e1 scsi_host_set_state +EXPORT_SYMBOL vmlinux 0x439cb751 pv_lock_ops +EXPORT_SYMBOL vmlinux 0x43ac6a50 scsi_cmd_get_serial +EXPORT_SYMBOL vmlinux 0x43c9b103 neigh_table_clear +EXPORT_SYMBOL vmlinux 0x43d33220 pcie_get_mps +EXPORT_SYMBOL vmlinux 0x43e70abf ipmi_smi_watcher_register +EXPORT_SYMBOL vmlinux 0x43f23311 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x43f6f344 swiotlb_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0x4411c503 prandom_seed +EXPORT_SYMBOL vmlinux 0x442dada5 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0x442dc0aa rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0x44366cfc simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0x44438b96 hex2bin +EXPORT_SYMBOL vmlinux 0x4460c5f2 blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0x4463b67f tty_port_tty_set +EXPORT_SYMBOL vmlinux 0x448f8a1c register_cdrom +EXPORT_SYMBOL vmlinux 0x44911744 dst_destroy +EXPORT_SYMBOL vmlinux 0x44a63be9 fsnotify_add_mark +EXPORT_SYMBOL vmlinux 0x44aaf30f tsc_khz +EXPORT_SYMBOL vmlinux 0x44b735c0 md_done_sync +EXPORT_SYMBOL vmlinux 0x44e25302 i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44ec773a mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0x44f1606d down_trylock +EXPORT_SYMBOL vmlinux 0x44f72499 tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0x45035ea2 dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x45076efa pci_iomap +EXPORT_SYMBOL vmlinux 0x45081703 ec_get_handle +EXPORT_SYMBOL vmlinux 0x450bcb54 set_user_nice +EXPORT_SYMBOL vmlinux 0x451ba81a genphy_suspend +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x456e3d5f vfs_llseek +EXPORT_SYMBOL vmlinux 0x4578661a _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x457bf547 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0x45a6be13 cpufreq_sysfs_remove_file +EXPORT_SYMBOL vmlinux 0x45a765cf pci_add_resource +EXPORT_SYMBOL vmlinux 0x45b00422 splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0x45cbf87e input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0x45f2a11d blk_queue_free_tags +EXPORT_SYMBOL vmlinux 0x45fd78e0 jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0x4619bc69 tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0x461da066 contig_page_data +EXPORT_SYMBOL vmlinux 0x4629334c __preempt_count +EXPORT_SYMBOL vmlinux 0x462a2e75 match_strlcpy +EXPORT_SYMBOL vmlinux 0x4633b221 touch_atime +EXPORT_SYMBOL vmlinux 0x465c3f82 sock_no_sendpage +EXPORT_SYMBOL vmlinux 0x465cab34 secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0x46608fa0 getnstimeofday +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x467e1a58 pnp_disable_dev +EXPORT_SYMBOL vmlinux 0x46a40cc9 bio_integrity_enabled +EXPORT_SYMBOL vmlinux 0x46a6bec2 led_blink_set +EXPORT_SYMBOL vmlinux 0x46ac36ae writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0x46b41ce9 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x46bde8cb jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x46cbaa42 skb_copy_bits +EXPORT_SYMBOL vmlinux 0x46da2e62 phy_start +EXPORT_SYMBOL vmlinux 0x46feb099 dm_read_arg +EXPORT_SYMBOL vmlinux 0x47196435 dquot_get_dqinfo +EXPORT_SYMBOL vmlinux 0x471d4330 iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0x472a2036 __sk_dst_check +EXPORT_SYMBOL vmlinux 0x473e1cb3 ppp_dev_name +EXPORT_SYMBOL vmlinux 0x47416e14 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x4743ace1 inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0x4747a6cc nf_ip_checksum +EXPORT_SYMBOL vmlinux 0x47496b1f add_disk +EXPORT_SYMBOL vmlinux 0x47541725 mmc_fixup_device +EXPORT_SYMBOL vmlinux 0x475f010b acpi_purge_cached_objects +EXPORT_SYMBOL vmlinux 0x476513f9 security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0x4767042b __wait_on_buffer +EXPORT_SYMBOL vmlinux 0x478720f2 wait_for_key_construction +EXPORT_SYMBOL vmlinux 0x478d10b2 ht_destroy_irq +EXPORT_SYMBOL vmlinux 0x4792c572 down_interruptible +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x47983720 generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x47b191f3 gen10g_resume +EXPORT_SYMBOL vmlinux 0x47b3f862 radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x47b6a10f ftrace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0x47bcf84c param_set_ulong +EXPORT_SYMBOL vmlinux 0x47c8baf4 param_ops_uint +EXPORT_SYMBOL vmlinux 0x47ff0e6d __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0x48034724 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x48193639 acpi_lid_open +EXPORT_SYMBOL vmlinux 0x481cb9ab acpi_enter_sleep_state_prep +EXPORT_SYMBOL vmlinux 0x482a2a49 param_set_charp +EXPORT_SYMBOL vmlinux 0x482dc859 remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x4832c536 dev_remove_offload +EXPORT_SYMBOL vmlinux 0x484f9059 acpi_pm_device_run_wake +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x486d2f29 dqstats +EXPORT_SYMBOL vmlinux 0x487ecbe7 __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0x48931fa5 devm_request_and_ioremap +EXPORT_SYMBOL vmlinux 0x48f05a75 blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x48ff6b44 set_bh_page +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x491a7040 qdisc_watchdog_schedule_ns +EXPORT_SYMBOL vmlinux 0x4924bbe6 set_blocksize +EXPORT_SYMBOL vmlinux 0x4924ee1a sk_prot_clear_portaddr_nulls +EXPORT_SYMBOL vmlinux 0x492bb0d7 nf_setsockopt +EXPORT_SYMBOL vmlinux 0x4943ed1f simple_fill_super +EXPORT_SYMBOL vmlinux 0x49460f80 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x4946fa6c account_page_writeback +EXPORT_SYMBOL vmlinux 0x495c96f8 posix_acl_init +EXPORT_SYMBOL vmlinux 0x49603fb8 security_sb_copy_data +EXPORT_SYMBOL vmlinux 0x4962ca3c simple_getattr +EXPORT_SYMBOL vmlinux 0x497b1a25 blk_sync_queue +EXPORT_SYMBOL vmlinux 0x4989dd17 make_kgid +EXPORT_SYMBOL vmlinux 0x49921319 tty_devnum +EXPORT_SYMBOL vmlinux 0x499f721d devm_gpiod_get +EXPORT_SYMBOL vmlinux 0x49a69310 tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0x49b07aec tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x49b163b8 acpi_bus_scan +EXPORT_SYMBOL vmlinux 0x49e1404b ppp_input_error +EXPORT_SYMBOL vmlinux 0x49f589d8 pci_bus_type +EXPORT_SYMBOL vmlinux 0x4a2c5e3d ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0x4a358252 __bitmap_subset +EXPORT_SYMBOL vmlinux 0x4a4e4538 default_file_splice_read +EXPORT_SYMBOL vmlinux 0x4a77a507 filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x4aa3816e blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0x4aa5cc19 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x4ab1c694 dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x4ab852a6 mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0x4ac29d19 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0x4acd93d3 release_resource +EXPORT_SYMBOL vmlinux 0x4afe9a77 scsi_partsize +EXPORT_SYMBOL vmlinux 0x4b085dbf agp3_generic_configure +EXPORT_SYMBOL vmlinux 0x4b1ec3e2 kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x4b2010be pci_add_new_bus +EXPORT_SYMBOL vmlinux 0x4b34fbf5 block_all_signals +EXPORT_SYMBOL vmlinux 0x4b537b10 eth_type_trans +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b8ac3eb request_key +EXPORT_SYMBOL vmlinux 0x4b9bd401 eth_mac_addr +EXPORT_SYMBOL vmlinux 0x4ba131d7 blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x4bb9d22a register_gifconf +EXPORT_SYMBOL vmlinux 0x4bc4d5a5 __cond_resched_lock +EXPORT_SYMBOL vmlinux 0x4bce2287 backlight_force_update +EXPORT_SYMBOL vmlinux 0x4be85a03 memweight +EXPORT_SYMBOL vmlinux 0x4bef369f scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0x4bf4ed79 dev_addr_add +EXPORT_SYMBOL vmlinux 0x4bf7b27d inode_sb_list_lock +EXPORT_SYMBOL vmlinux 0x4c1182cb bitmap_scnprintf +EXPORT_SYMBOL vmlinux 0x4c141454 scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x4c1f0c0d eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0x4c2ae700 strnstr +EXPORT_SYMBOL vmlinux 0x4c36b6f6 names_cachep +EXPORT_SYMBOL vmlinux 0x4c8e6b53 locks_copy_lock +EXPORT_SYMBOL vmlinux 0x4c91e15f __nla_reserve +EXPORT_SYMBOL vmlinux 0x4c971bec ipmi_smi_msg_received +EXPORT_SYMBOL vmlinux 0x4ca3ed4f elevator_alloc +EXPORT_SYMBOL vmlinux 0x4cbbd171 __bitmap_weight +EXPORT_SYMBOL vmlinux 0x4cc0ef13 arp_find +EXPORT_SYMBOL vmlinux 0x4cdb3178 ns_to_timeval +EXPORT_SYMBOL vmlinux 0x4ce07080 __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x4d00e92b devm_iounmap +EXPORT_SYMBOL vmlinux 0x4d32da0e seq_puts +EXPORT_SYMBOL vmlinux 0x4d3c153f sigprocmask +EXPORT_SYMBOL vmlinux 0x4d43600c sockfd_lookup +EXPORT_SYMBOL vmlinux 0x4d45d89e udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x4d4e22b8 filemap_flush +EXPORT_SYMBOL vmlinux 0x4d5ca9de ip_defrag +EXPORT_SYMBOL vmlinux 0x4d64a0a8 bio_uncopy_user +EXPORT_SYMBOL vmlinux 0x4d791a74 blk_queue_resize_tags +EXPORT_SYMBOL vmlinux 0x4d86c6ee generic_file_buffered_write +EXPORT_SYMBOL vmlinux 0x4d88ceaa ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x4d898f41 xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0x4d8b86d4 blk_run_queue +EXPORT_SYMBOL vmlinux 0x4d8ff991 simple_rename +EXPORT_SYMBOL vmlinux 0x4d974b9c register_sysrq_key +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4daa360a acpi_resource_to_address64 +EXPORT_SYMBOL vmlinux 0x4db0f565 brioctl_set +EXPORT_SYMBOL vmlinux 0x4dc514c7 kobject_put +EXPORT_SYMBOL vmlinux 0x4de34a07 cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x4df119fa __bitmap_parse +EXPORT_SYMBOL vmlinux 0x4dfff390 input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x4e1e6850 pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0x4e3107d6 proc_set_size +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e3ccb59 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0x4e513b31 bitmap_unplug +EXPORT_SYMBOL vmlinux 0x4e64cbe5 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e830a3e strnicmp +EXPORT_SYMBOL vmlinux 0x4e8e806e skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x4e9245f7 pci_enable_msi_block_auto +EXPORT_SYMBOL vmlinux 0x4e97814e pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0x4ea25709 dql_reset +EXPORT_SYMBOL vmlinux 0x4ec13d55 bio_integrity_prep +EXPORT_SYMBOL vmlinux 0x4eceeec3 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0x4edf06e5 elv_rb_former_request +EXPORT_SYMBOL vmlinux 0x4ef9f150 unlock_new_inode +EXPORT_SYMBOL vmlinux 0x4efedd31 netdev_state_change +EXPORT_SYMBOL vmlinux 0x4f1800e8 pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f391d0e nla_parse +EXPORT_SYMBOL vmlinux 0x4f476e96 init_cdrom_command +EXPORT_SYMBOL vmlinux 0x4f68e5c9 do_gettimeofday +EXPORT_SYMBOL vmlinux 0x4f6b400b _copy_from_user +EXPORT_SYMBOL vmlinux 0x4f783f30 acpi_read +EXPORT_SYMBOL vmlinux 0x4f8b5ddb _copy_to_user +EXPORT_SYMBOL vmlinux 0x4fa54f94 scsi_host_get +EXPORT_SYMBOL vmlinux 0x4faec143 input_set_keycode +EXPORT_SYMBOL vmlinux 0x4fb141b7 netdev_all_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x4fc139b7 ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x4fcfeec2 swiotlb_free_coherent +EXPORT_SYMBOL vmlinux 0x4fd45f1b generic_show_options +EXPORT_SYMBOL vmlinux 0x4fdee897 i8042_command +EXPORT_SYMBOL vmlinux 0x4fede194 unregister_cdrom +EXPORT_SYMBOL vmlinux 0x4ff4d343 get_write_access +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x500f9b8f generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0x5025eacc dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x50529870 acpi_get_gpe_status +EXPORT_SYMBOL vmlinux 0x5088cfa6 dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x508a1085 ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x5098c1be bio_pair_release +EXPORT_SYMBOL vmlinux 0x509b64ea acpi_has_method +EXPORT_SYMBOL vmlinux 0x50ae8b12 ip6_expire_frag_queue +EXPORT_SYMBOL vmlinux 0x50b2ef28 scsi_setup_fs_cmnd +EXPORT_SYMBOL vmlinux 0x50d68377 arch_phys_wc_del +EXPORT_SYMBOL vmlinux 0x50d9fd57 sock_kfree_s +EXPORT_SYMBOL vmlinux 0x50eedeb8 printk +EXPORT_SYMBOL vmlinux 0x5106dcd9 agp3_generic_tlbflush +EXPORT_SYMBOL vmlinux 0x5118c382 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0x511c38fc kill_bdev +EXPORT_SYMBOL vmlinux 0x51479043 __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x5147f35b gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0x5152e605 memcmp +EXPORT_SYMBOL vmlinux 0x516a3a71 tty_port_destroy +EXPORT_SYMBOL vmlinux 0x51801194 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0x5186518f profile_pc +EXPORT_SYMBOL vmlinux 0x518b4b4c _dev_info +EXPORT_SYMBOL vmlinux 0x51b442ef netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0x51d12d4e acpi_pci_disabled +EXPORT_SYMBOL vmlinux 0x51dbb0f2 vm_insert_mixed +EXPORT_SYMBOL vmlinux 0x51dce73b xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x51e0a37b phy_attach +EXPORT_SYMBOL vmlinux 0x51e706c3 tty_hung_up_p +EXPORT_SYMBOL vmlinux 0x51ef33b8 kstrndup +EXPORT_SYMBOL vmlinux 0x52006d56 acpi_walk_resources +EXPORT_SYMBOL vmlinux 0x52026cdf security_sb_parse_opts_str +EXPORT_SYMBOL vmlinux 0x5206459c proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x52095e19 acpi_get_data +EXPORT_SYMBOL vmlinux 0x52159c01 ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x521b36b5 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0x52251948 check_disk_change +EXPORT_SYMBOL vmlinux 0x52270fea nf_log_register +EXPORT_SYMBOL vmlinux 0x5239e54c blk_integrity_register +EXPORT_SYMBOL vmlinux 0x52428cc8 parent_mem_cgroup +EXPORT_SYMBOL vmlinux 0x524f6f51 ipmi_get_my_address +EXPORT_SYMBOL vmlinux 0x525e026f acpi_os_unmap_generic_address +EXPORT_SYMBOL vmlinux 0x52608606 inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x526484c5 xfrm_input +EXPORT_SYMBOL vmlinux 0x5268769f phy_driver_register +EXPORT_SYMBOL vmlinux 0x5271ffe5 jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x528c709d simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x52a6561b remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0x52b0e2e1 commit_creds +EXPORT_SYMBOL vmlinux 0x52c78f5c jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x52c9f551 unmap_underlying_metadata +EXPORT_SYMBOL vmlinux 0x52e45ab3 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0x52e61f38 inet_frag_maybe_warn_overflow +EXPORT_SYMBOL vmlinux 0x53056c54 nobh_truncate_page +EXPORT_SYMBOL vmlinux 0x530b1e4c rdmsr_on_cpus +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x5315a1aa dev_printk +EXPORT_SYMBOL vmlinux 0x531b604e __virt_addr_valid +EXPORT_SYMBOL vmlinux 0x531fa069 generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x53229f1c __breadahead +EXPORT_SYMBOL vmlinux 0x532a092f sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0x5330fbe9 mntget +EXPORT_SYMBOL vmlinux 0x53326531 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x5374aba9 clear_inode +EXPORT_SYMBOL vmlinux 0x537d3a22 ata_std_end_eh +EXPORT_SYMBOL vmlinux 0x5383f34b _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0x53b04db1 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0x53b9bdf8 new_inode +EXPORT_SYMBOL vmlinux 0x53bb01e2 vm_stat +EXPORT_SYMBOL vmlinux 0x53c4dbbb i2c_master_recv +EXPORT_SYMBOL vmlinux 0x53f2ef10 wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x53ff8bd3 blk_mq_free_single_hw_queue +EXPORT_SYMBOL vmlinux 0x5409775b free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x541445c6 acpi_device_set_power +EXPORT_SYMBOL vmlinux 0x54152e04 percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x543146cb submit_bio_wait +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x544661fb free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x544b0c11 acpi_lid_notifier_register +EXPORT_SYMBOL vmlinux 0x5464538f __idr_remove_all +EXPORT_SYMBOL vmlinux 0x547dbdb8 get_tz_trend +EXPORT_SYMBOL vmlinux 0x54935666 acpi_os_read_port +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54b565d0 filemap_write_and_wait +EXPORT_SYMBOL vmlinux 0x54c1c165 textsearch_register +EXPORT_SYMBOL vmlinux 0x54cc3fda genphy_config_aneg +EXPORT_SYMBOL vmlinux 0x54e3cc3b param_get_int +EXPORT_SYMBOL vmlinux 0x54e6efd2 ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54efb5d6 cpu_number +EXPORT_SYMBOL vmlinux 0x54f7fe97 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0x550df4c2 invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x5512cf3c mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x55136781 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x5541ea93 on_each_cpu +EXPORT_SYMBOL vmlinux 0x55624207 fb_blank +EXPORT_SYMBOL vmlinux 0x5567c227 kernel_cpustat +EXPORT_SYMBOL vmlinux 0x556c2740 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x558ab42e write_one_page +EXPORT_SYMBOL vmlinux 0x5594be03 bitmap_remap +EXPORT_SYMBOL vmlinux 0x55c58533 alloc_disk_node +EXPORT_SYMBOL vmlinux 0x55d0da12 unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0x55daed58 block_truncate_page +EXPORT_SYMBOL vmlinux 0x55dd0e0c inet_stream_connect +EXPORT_SYMBOL vmlinux 0x55dd7658 locks_free_lock +EXPORT_SYMBOL vmlinux 0x5614b010 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x561a2282 pci_enable_msix +EXPORT_SYMBOL vmlinux 0x561a4c03 __devcgroup_inode_permission +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x5642793a radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x565aa969 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0x5676a3e5 intel_scu_ipc_ioread8 +EXPORT_SYMBOL vmlinux 0x56b8a267 sk_release_kernel +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x5705088a __vmalloc +EXPORT_SYMBOL vmlinux 0x57051cd1 blkdev_get +EXPORT_SYMBOL vmlinux 0x5727f1cb ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0x572c90d9 km_state_expired +EXPORT_SYMBOL vmlinux 0x572e85d4 blk_lookup_devt +EXPORT_SYMBOL vmlinux 0x573a5e2f tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x575af70c on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x57888f37 secpath_dup +EXPORT_SYMBOL vmlinux 0x57971bec sock_no_getname +EXPORT_SYMBOL vmlinux 0x579e7e50 file_update_time +EXPORT_SYMBOL vmlinux 0x579f2d30 scsi_allocate_command +EXPORT_SYMBOL vmlinux 0x579fbcd2 cpu_possible_mask +EXPORT_SYMBOL vmlinux 0x57a3dc64 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x5814f7d8 input_free_device +EXPORT_SYMBOL vmlinux 0x5815e7c0 nobh_writepage +EXPORT_SYMBOL vmlinux 0x582e9820 __scm_send +EXPORT_SYMBOL vmlinux 0x5833670d vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x583a8efa ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0x58445435 __cleancache_get_page +EXPORT_SYMBOL vmlinux 0x5846685e spi_display_xfer_agreement +EXPORT_SYMBOL vmlinux 0x584738f9 rdmsr_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x5857b225 ioread16_rep +EXPORT_SYMBOL vmlinux 0x585cf061 vsc824x_add_skew +EXPORT_SYMBOL vmlinux 0x586103be acpi_setup_gpe_for_wake +EXPORT_SYMBOL vmlinux 0x58734a1a agp_alloc_bridge +EXPORT_SYMBOL vmlinux 0x58759110 inet_sendmsg +EXPORT_SYMBOL vmlinux 0x587616f1 vfs_fstatat +EXPORT_SYMBOL vmlinux 0x5892d54c acpi_remove_address_space_handler +EXPORT_SYMBOL vmlinux 0x58acf563 dev_uc_add +EXPORT_SYMBOL vmlinux 0x58af42ce dst_discard +EXPORT_SYMBOL vmlinux 0x58b37b89 blkdev_fsync +EXPORT_SYMBOL vmlinux 0x58b81315 cfb_copyarea +EXPORT_SYMBOL vmlinux 0x58ba29ae pci_bus_get +EXPORT_SYMBOL vmlinux 0x58f82baa kfree_put_link +EXPORT_SYMBOL vmlinux 0x58fef6f8 ist_info +EXPORT_SYMBOL vmlinux 0x591dceea kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0x59233f8c sk_alloc +EXPORT_SYMBOL vmlinux 0x5928ce28 sock_kmalloc +EXPORT_SYMBOL vmlinux 0x592b59af acpi_evaluate_object_typed +EXPORT_SYMBOL vmlinux 0x594838c0 mmc_hw_reset +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x596dde50 dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0x598f9772 dma_mark_declared_memory_occupied +EXPORT_SYMBOL vmlinux 0x59bc9609 acpi_write_bit_register +EXPORT_SYMBOL vmlinux 0x59d12c4d __ww_mutex_lock +EXPORT_SYMBOL vmlinux 0x5a138de8 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0x5a2aa62e __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x5a400804 directly_mappable_cdev_bdi +EXPORT_SYMBOL vmlinux 0x5a4896a8 __put_user_2 +EXPORT_SYMBOL vmlinux 0x5a5536c2 param_ops_invbool +EXPORT_SYMBOL vmlinux 0x5a67e22a inode_init_owner +EXPORT_SYMBOL vmlinux 0x5a6d5fd7 neigh_lookup +EXPORT_SYMBOL vmlinux 0x5a7a5ac1 x86_hyper_ms_hyperv +EXPORT_SYMBOL vmlinux 0x5a959280 icmp_send +EXPORT_SYMBOL vmlinux 0x5a9f38bc request_key_async +EXPORT_SYMBOL vmlinux 0x5ab49300 __frontswap_load +EXPORT_SYMBOL vmlinux 0x5ac21822 irq_stat +EXPORT_SYMBOL vmlinux 0x5ac26f32 thermal_cdev_update +EXPORT_SYMBOL vmlinux 0x5ac376a5 acpi_install_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x5ade0f63 tcf_destroy_chain +EXPORT_SYMBOL vmlinux 0x5aeb2885 splice_from_pipe_end +EXPORT_SYMBOL vmlinux 0x5afe1292 single_release +EXPORT_SYMBOL vmlinux 0x5b19634d div_s64_rem +EXPORT_SYMBOL vmlinux 0x5b271d86 acpi_video_dmi_promote_vendor +EXPORT_SYMBOL vmlinux 0x5b2b14ed dm_get_mapinfo +EXPORT_SYMBOL vmlinux 0x5b5233f4 unlock_buffer +EXPORT_SYMBOL vmlinux 0x5b8d8c9d fd_install +EXPORT_SYMBOL vmlinux 0x5ba5ba4d pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0x5bc8d583 copy_from_user_overflow +EXPORT_SYMBOL vmlinux 0x5bcd8cce key_alloc +EXPORT_SYMBOL vmlinux 0x5bda948b tty_set_operations +EXPORT_SYMBOL vmlinux 0x5bdb88fb kobject_del +EXPORT_SYMBOL vmlinux 0x5bdc4f40 iov_iter_copy_from_user +EXPORT_SYMBOL vmlinux 0x5be36e80 phy_ethtool_sset +EXPORT_SYMBOL vmlinux 0x5c083eb2 kernel_read +EXPORT_SYMBOL vmlinux 0x5c13cecb __scsi_add_device +EXPORT_SYMBOL vmlinux 0x5c146c0a pci_enable_device +EXPORT_SYMBOL vmlinux 0x5c3edd59 _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x5c4d65e5 i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0x5c545234 ucs2_strncmp +EXPORT_SYMBOL vmlinux 0x5c579df6 mb_cache_entry_release +EXPORT_SYMBOL vmlinux 0x5c5d439f udplite_prot +EXPORT_SYMBOL vmlinux 0x5c96260a bio_phys_segments +EXPORT_SYMBOL vmlinux 0x5ca8ed1f netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0x5cbf719b i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0x5cc27593 key_put +EXPORT_SYMBOL vmlinux 0x5ccacb6e dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5cf9a48f neigh_connected_output +EXPORT_SYMBOL vmlinux 0x5d03ecc4 ilookup +EXPORT_SYMBOL vmlinux 0x5d08ac7b rfkill_alloc +EXPORT_SYMBOL vmlinux 0x5d371e93 iunique +EXPORT_SYMBOL vmlinux 0x5d3bb662 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x5d41c87c param_ops_charp +EXPORT_SYMBOL vmlinux 0x5d4be513 ipmi_get_smi_info +EXPORT_SYMBOL vmlinux 0x5d550c4d scsi_sd_probe_domain +EXPORT_SYMBOL vmlinux 0x5d5b5a16 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x5d74dbcf pnp_range_reserved +EXPORT_SYMBOL vmlinux 0x5d7c9b11 blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0x5d9de004 __genl_register_family +EXPORT_SYMBOL vmlinux 0x5d9f062f neigh_seq_stop +EXPORT_SYMBOL vmlinux 0x5da20552 mount_ns +EXPORT_SYMBOL vmlinux 0x5da883c9 mmc_wait_for_app_cmd +EXPORT_SYMBOL vmlinux 0x5db10caf twl6040_get_pll +EXPORT_SYMBOL vmlinux 0x5dcaa47d nf_register_hooks +EXPORT_SYMBOL vmlinux 0x5dce6b75 complete_and_exit +EXPORT_SYMBOL vmlinux 0x5deaaa71 dev_mc_add +EXPORT_SYMBOL vmlinux 0x5dee51e1 vfs_symlink +EXPORT_SYMBOL vmlinux 0x5e010b55 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0x5e0caaf8 __inet6_hash +EXPORT_SYMBOL vmlinux 0x5e1f0760 pagevec_lookup_tag +EXPORT_SYMBOL vmlinux 0x5e2160e1 xfrm_register_km +EXPORT_SYMBOL vmlinux 0x5e26efeb page_follow_link_light +EXPORT_SYMBOL vmlinux 0x5e291251 blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0x5e3bcac8 pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x5e5962e2 simple_dir_operations +EXPORT_SYMBOL vmlinux 0x5e6d5424 devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x5e741724 finish_no_open +EXPORT_SYMBOL vmlinux 0x5e80c1ea fb_set_cmap +EXPORT_SYMBOL vmlinux 0x5e80f37c ipmi_unregister_for_cmd +EXPORT_SYMBOL vmlinux 0x5e81c4bc get_task_io_context +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5ea11467 pci_restore_state +EXPORT_SYMBOL vmlinux 0x5ea92a3f vga_switcheroo_register_client +EXPORT_SYMBOL vmlinux 0x5eae5d6b cdev_del +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5eee340c abx500_register_ops +EXPORT_SYMBOL vmlinux 0x5efb4a51 block_write_begin +EXPORT_SYMBOL vmlinux 0x5f005368 kstrtou8 +EXPORT_SYMBOL vmlinux 0x5f07b485 md_flush_request +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f09fbe0 from_kgid_munged +EXPORT_SYMBOL vmlinux 0x5f1a4ccf intel_scu_ipc_update_register +EXPORT_SYMBOL vmlinux 0x5f27544a mempool_destroy +EXPORT_SYMBOL vmlinux 0x5f3c8f5c mmc_assume_removable +EXPORT_SYMBOL vmlinux 0x5f4cbd55 d_genocide +EXPORT_SYMBOL vmlinux 0x5f4cbe0d sk_stream_error +EXPORT_SYMBOL vmlinux 0x5f58f676 flex_array_get_ptr +EXPORT_SYMBOL vmlinux 0x5f86b5e3 pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0x5f91e97f dev_set_allmulti +EXPORT_SYMBOL vmlinux 0x5f9b0576 scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x5fcdcc05 ipmi_get_my_LUN +EXPORT_SYMBOL vmlinux 0x5fda0227 vfs_stat +EXPORT_SYMBOL vmlinux 0x5fe41fb6 percpu_counter_set +EXPORT_SYMBOL vmlinux 0x5ff42b08 acpi_video_get_capabilities +EXPORT_SYMBOL vmlinux 0x5ff612b2 arp_xmit +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x60145710 uart_suspend_port +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x602ed00d acpi_current_gpe_count +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x605323ca d_invalidate +EXPORT_SYMBOL vmlinux 0x606d0b09 secure_tcpv6_sequence_number +EXPORT_SYMBOL vmlinux 0x606ff489 tcp_shutdown +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a001fe block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL vmlinux 0x60a92de9 __neigh_create +EXPORT_SYMBOL vmlinux 0x60b2e38a rwsem_down_write_failed +EXPORT_SYMBOL vmlinux 0x60b31faa flush_old_exec +EXPORT_SYMBOL vmlinux 0x60b7db20 ata_link_printk +EXPORT_SYMBOL vmlinux 0x60b86f61 sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x60bd216d cap_mmap_file +EXPORT_SYMBOL vmlinux 0x60df1e3b posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x60e75eaf xfrm_user_policy +EXPORT_SYMBOL vmlinux 0x60e93367 eth_header_parse +EXPORT_SYMBOL vmlinux 0x60ed3af3 alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x6107c99d vm_mmap +EXPORT_SYMBOL vmlinux 0x610edd5f pci_unregister_driver +EXPORT_SYMBOL vmlinux 0x610f1432 locks_init_lock +EXPORT_SYMBOL vmlinux 0x6110710a pcim_pin_device +EXPORT_SYMBOL vmlinux 0x6122e533 agp_allocate_memory +EXPORT_SYMBOL vmlinux 0x612390ad netpoll_set_trap +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x61324f5e ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0x614383c0 acpi_get_object_info +EXPORT_SYMBOL vmlinux 0x6147c997 migrate_page +EXPORT_SYMBOL vmlinux 0x61535a69 ip_route_input_noref +EXPORT_SYMBOL vmlinux 0x61538ad0 param_get_charp +EXPORT_SYMBOL vmlinux 0x615bfe67 jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0x616d89e7 block_invalidatepage +EXPORT_SYMBOL vmlinux 0x617bd528 zerocopy_sg_from_iovec +EXPORT_SYMBOL vmlinux 0x619b187b add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0x61b30375 key_revoke +EXPORT_SYMBOL vmlinux 0x61b47a3d pci_dev_put +EXPORT_SYMBOL vmlinux 0x61b5ade0 down_write +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61d27df9 kmap_atomic +EXPORT_SYMBOL vmlinux 0x61e8f2f5 set_pages_array_wb +EXPORT_SYMBOL vmlinux 0x61edfb6e input_inject_event +EXPORT_SYMBOL vmlinux 0x62049256 acpi_disable +EXPORT_SYMBOL vmlinux 0x620dfd33 pci_match_id +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x621d77a0 sleep_on +EXPORT_SYMBOL vmlinux 0x6225637e md5_transform +EXPORT_SYMBOL vmlinux 0x6226b9fa machine_to_phys_mapping +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x622ca6fa elevator_init +EXPORT_SYMBOL vmlinux 0x622fa02a prepare_to_wait +EXPORT_SYMBOL vmlinux 0x62347afa swiotlb_map_sg_attrs +EXPORT_SYMBOL vmlinux 0x6237f6b5 acpi_enable_event +EXPORT_SYMBOL vmlinux 0x623eae56 __dev_remove_offload +EXPORT_SYMBOL vmlinux 0x6241a2ab __copy_from_user_ll_nocache +EXPORT_SYMBOL vmlinux 0x6248acc8 agp_unbind_memory +EXPORT_SYMBOL vmlinux 0x6254a1a9 drop_super +EXPORT_SYMBOL vmlinux 0x625fb2f4 neigh_compat_output +EXPORT_SYMBOL vmlinux 0x62674621 kernel_getpeername +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x62822d05 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x62827bec security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x6289ce24 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0x628c3844 dquot_enable +EXPORT_SYMBOL vmlinux 0x62b0c24b file_ns_capable +EXPORT_SYMBOL vmlinux 0x62cb4cee interruptible_sleep_on +EXPORT_SYMBOL vmlinux 0x62f15aeb block_read_full_page +EXPORT_SYMBOL vmlinux 0x62f4400f __register_chrdev +EXPORT_SYMBOL vmlinux 0x630b7d3e scsi_init_io +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x6332de40 devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0x6368e55f task_tgid_nr_ns +EXPORT_SYMBOL vmlinux 0x636a5691 acpi_register_ioapic +EXPORT_SYMBOL vmlinux 0x636c4bb1 cdrom_check_events +EXPORT_SYMBOL vmlinux 0x637a5eb7 register_quota_format +EXPORT_SYMBOL vmlinux 0x63a01291 acpi_leave_sleep_state_prep +EXPORT_SYMBOL vmlinux 0x63a6bcc9 acpi_map_lsapic +EXPORT_SYMBOL vmlinux 0x63ae0138 intel_gtt_get +EXPORT_SYMBOL vmlinux 0x63b1ca76 datagram_poll +EXPORT_SYMBOL vmlinux 0x63ca1502 sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63fc232f strlen_user +EXPORT_SYMBOL vmlinux 0x6403e338 tcp_memory_pressure +EXPORT_SYMBOL vmlinux 0x641bdda5 sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x646bbe0c mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0x646eff6d skb_checksum_help +EXPORT_SYMBOL vmlinux 0x6478134c ec_burst_enable +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x649a8b8d bio_split +EXPORT_SYMBOL vmlinux 0x649bcf70 block_write_full_page_endio +EXPORT_SYMBOL vmlinux 0x649eec2f generic_setlease +EXPORT_SYMBOL vmlinux 0x64a4b84d cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x64b79bf0 kmap +EXPORT_SYMBOL vmlinux 0x64c640a8 mmc_can_sanitize +EXPORT_SYMBOL vmlinux 0x64da58c5 scsi_register_interface +EXPORT_SYMBOL vmlinux 0x64e48f86 cdev_init +EXPORT_SYMBOL vmlinux 0x64e7c9c1 nla_put +EXPORT_SYMBOL vmlinux 0x64eae7ad set_memory_array_wb +EXPORT_SYMBOL vmlinux 0x64f1efd2 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0x64ff8bca scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0x6508ae6b get_user_pages +EXPORT_SYMBOL vmlinux 0x650e6578 pci_set_ltr +EXPORT_SYMBOL vmlinux 0x65125138 acpi_check_address_range +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x651ae369 km_policy_notify +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x655f1ab0 set_memory_array_wc +EXPORT_SYMBOL vmlinux 0x6565d33f scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x656939eb xen_biovec_phys_mergeable +EXPORT_SYMBOL vmlinux 0x65738d84 input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0x6574c013 agp_backend_acquire +EXPORT_SYMBOL vmlinux 0x657879ce __init_rwsem +EXPORT_SYMBOL vmlinux 0x6585e310 alloc_pages_exact_nid +EXPORT_SYMBOL vmlinux 0x659fa516 locks_remove_posix +EXPORT_SYMBOL vmlinux 0x65a295bb atomic64_xchg_cx8 +EXPORT_SYMBOL vmlinux 0x65a38070 scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0x65ace72d jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x65adfccb __locks_copy_lock +EXPORT_SYMBOL vmlinux 0x65d8cfde netdev_update_features +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65ef7ded blk_get_queue +EXPORT_SYMBOL vmlinux 0x65f3ad9a fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x6600572f devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x6605f97f flex_array_clear +EXPORT_SYMBOL vmlinux 0x6615eebe serio_unregister_port +EXPORT_SYMBOL vmlinux 0x663557a8 set_trace_device +EXPORT_SYMBOL vmlinux 0x66355efc vprintk +EXPORT_SYMBOL vmlinux 0x663f7cd0 acpi_install_table_handler +EXPORT_SYMBOL vmlinux 0x6646b4ed insert_inode_locked +EXPORT_SYMBOL vmlinux 0x66606d8f udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0x6662dafa pnp_stop_dev +EXPORT_SYMBOL vmlinux 0x666d75fa simple_transaction_read +EXPORT_SYMBOL vmlinux 0x666e5f3a posix_lock_file_wait +EXPORT_SYMBOL vmlinux 0x6672658d pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0x667627b4 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0x6683382b ipmi_register_smi +EXPORT_SYMBOL vmlinux 0x668da8d5 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x66916b06 get_super +EXPORT_SYMBOL vmlinux 0x66a67dab flex_array_shrink +EXPORT_SYMBOL vmlinux 0x66c8b825 cpu_sibling_map +EXPORT_SYMBOL vmlinux 0x66d2b547 input_set_capability +EXPORT_SYMBOL vmlinux 0x670bfad7 sg_miter_start +EXPORT_SYMBOL vmlinux 0x6729d3df __get_user_4 +EXPORT_SYMBOL vmlinux 0x673f815e agp_bridges +EXPORT_SYMBOL vmlinux 0x674dd575 xfrm_state_update +EXPORT_SYMBOL vmlinux 0x675b8f61 param_get_string +EXPORT_SYMBOL vmlinux 0x67798504 pci_find_capability +EXPORT_SYMBOL vmlinux 0x678b9a54 dst_release +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67cb9784 ipmi_poll_interface +EXPORT_SYMBOL vmlinux 0x67da45c1 elv_unregister_queue +EXPORT_SYMBOL vmlinux 0x67dcffb7 lg_lock_init +EXPORT_SYMBOL vmlinux 0x67f023cc sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x67f7403e _raw_spin_lock +EXPORT_SYMBOL vmlinux 0x67fb612c pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0x67ff9d7b fail_migrate_page +EXPORT_SYMBOL vmlinux 0x6808caa5 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0x682ed16b fsync_bdev +EXPORT_SYMBOL vmlinux 0x68758524 tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x687baa6b inet_frags_init_net +EXPORT_SYMBOL vmlinux 0x687db4e7 abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x6883eda5 neigh_table_init +EXPORT_SYMBOL vmlinux 0x688df620 set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0x68903465 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0x6897f1aa security_path_mkdir +EXPORT_SYMBOL vmlinux 0x68b83ac6 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x68c21d2a proc_set_user +EXPORT_SYMBOL vmlinux 0x68c29fdc pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0x68cc2f79 dma_async_memcpy_buf_to_buf +EXPORT_SYMBOL vmlinux 0x68dfc59f __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0x68e05d57 getrawmonotonic +EXPORT_SYMBOL vmlinux 0x68e2f221 _raw_spin_unlock +EXPORT_SYMBOL vmlinux 0x68ecc702 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0x690bb7a1 follow_down_one +EXPORT_SYMBOL vmlinux 0x69261ed4 sock_sendmsg +EXPORT_SYMBOL vmlinux 0x69394394 devm_gpio_request +EXPORT_SYMBOL vmlinux 0x694cde77 mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0x696a70b6 send_sig_info +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x6978b018 devfreq_resume_device +EXPORT_SYMBOL vmlinux 0x6988d0ca cpu_dr7 +EXPORT_SYMBOL vmlinux 0x69a0ca7d iowrite16be +EXPORT_SYMBOL vmlinux 0x69a11d7d pcie_set_readrq +EXPORT_SYMBOL vmlinux 0x69a358a6 iomem_resource +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69d38ed9 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x69e27c7a bitmap_copy_le +EXPORT_SYMBOL vmlinux 0x69efac75 scsi_register +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a2045aa xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0x6a2434b5 dquot_scan_active +EXPORT_SYMBOL vmlinux 0x6a247675 skb_copy_datagram_const_iovec +EXPORT_SYMBOL vmlinux 0x6a269cd6 bdevname +EXPORT_SYMBOL vmlinux 0x6a27bfce csum_partial_copy_generic +EXPORT_SYMBOL vmlinux 0x6a48e16b percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0x6a4f02b9 scsi_rescan_device +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a76f3ac blk_iopoll_enable +EXPORT_SYMBOL vmlinux 0x6a7f5089 abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0x6a8b9cee spi_release_transport +EXPORT_SYMBOL vmlinux 0x6aa9acc0 __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x6acb973d iowrite32be +EXPORT_SYMBOL vmlinux 0x6ad85887 acpi_enable_gpe +EXPORT_SYMBOL vmlinux 0x6add5c9a dmi_find_device +EXPORT_SYMBOL vmlinux 0x6ae3bd43 sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x6af0e4a7 misc_register +EXPORT_SYMBOL vmlinux 0x6afdeebb dev_set_mtu +EXPORT_SYMBOL vmlinux 0x6b06fdce delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x6b1b67d3 __bdevname +EXPORT_SYMBOL vmlinux 0x6b2e1424 loop_backing_file +EXPORT_SYMBOL vmlinux 0x6b4d0473 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0x6b7bef84 sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x6b8a29a1 blk_rq_map_user +EXPORT_SYMBOL vmlinux 0x6b95b310 generic_file_splice_write +EXPORT_SYMBOL vmlinux 0x6ba113f5 bio_add_page +EXPORT_SYMBOL vmlinux 0x6bb538e4 vfs_readlink +EXPORT_SYMBOL vmlinux 0x6bb91550 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bdcfd99 qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x6beb2078 param_set_copystring +EXPORT_SYMBOL vmlinux 0x6bee316c security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x6c0cef45 sock_from_file +EXPORT_SYMBOL vmlinux 0x6c1ce5ce strcspn +EXPORT_SYMBOL vmlinux 0x6c2e3320 strncmp +EXPORT_SYMBOL vmlinux 0x6c389761 acpi_bus_get_private_data +EXPORT_SYMBOL vmlinux 0x6c4750b8 prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x6c51a836 sysctl_tcp_notsent_lowat +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c702af7 sysctl_udp_rmem_min +EXPORT_SYMBOL vmlinux 0x6c984bb2 __ht_create_irq +EXPORT_SYMBOL vmlinux 0x6ca4f9f5 cpufreq_global_kobject +EXPORT_SYMBOL vmlinux 0x6ca5b0f8 __net_get_random_once +EXPORT_SYMBOL vmlinux 0x6cc67d42 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0x6cdc5c6b nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6ce410a4 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x6ce8adc8 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0x6cfc69d5 mdiobus_read +EXPORT_SYMBOL vmlinux 0x6d083b3c skb_find_text +EXPORT_SYMBOL vmlinux 0x6d0f1f89 dm_table_get_mode +EXPORT_SYMBOL vmlinux 0x6d27ef64 __bitmap_empty +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d334118 __get_user_8 +EXPORT_SYMBOL vmlinux 0x6d340f64 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x6d777311 bio_copy_data +EXPORT_SYMBOL vmlinux 0x6da3388f security_path_chmod +EXPORT_SYMBOL vmlinux 0x6da8d7b1 save_mount_options +EXPORT_SYMBOL vmlinux 0x6db547d0 mmc_start_bkops +EXPORT_SYMBOL vmlinux 0x6dc3defc d_lookup +EXPORT_SYMBOL vmlinux 0x6de3b4b2 start_tty +EXPORT_SYMBOL vmlinux 0x6de60159 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0x6def2db2 half_md4_transform +EXPORT_SYMBOL vmlinux 0x6df4cd4c devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0x6df941e6 pnpacpi_protocol +EXPORT_SYMBOL vmlinux 0x6e219484 ip_route_me_harder +EXPORT_SYMBOL vmlinux 0x6e51ac2e _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0x6e5962f1 dev_err +EXPORT_SYMBOL vmlinux 0x6e65f2dc rtc_lock +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6ebc5149 param_ops_long +EXPORT_SYMBOL vmlinux 0x6ed06591 ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x6ee66a63 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0x6ef354d4 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0x6f0367e3 proc_remove +EXPORT_SYMBOL vmlinux 0x6f20960a full_name_hash +EXPORT_SYMBOL vmlinux 0x6f4c6b71 lg_local_unlock +EXPORT_SYMBOL vmlinux 0x6f556bdb acpi_get_gpe_device +EXPORT_SYMBOL vmlinux 0x6f55f906 blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0x6f9d36fb md_finish_reshape +EXPORT_SYMBOL vmlinux 0x6fa302cd dma_ops +EXPORT_SYMBOL vmlinux 0x6fa3e9bf skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0x6fc2283e input_event +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fdc0343 cdrom_media_changed +EXPORT_SYMBOL vmlinux 0x6fde0e4b install_exec_creds +EXPORT_SYMBOL vmlinux 0x6fe311e8 swiotlb_map_sg +EXPORT_SYMBOL vmlinux 0x6feb2039 acpi_write +EXPORT_SYMBOL vmlinux 0x6fefafd3 pm860x_page_set_bits +EXPORT_SYMBOL vmlinux 0x6ffb4e7f kill_anon_super +EXPORT_SYMBOL vmlinux 0x700b038e freeze_super +EXPORT_SYMBOL vmlinux 0x7013b9e9 ps2_handle_response +EXPORT_SYMBOL vmlinux 0x701a1ec9 inet_add_offload +EXPORT_SYMBOL vmlinux 0x701c7513 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0x7023bea8 unregister_acpi_notifier +EXPORT_SYMBOL vmlinux 0x703b4352 _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x70523a7a __cond_resched_softirq +EXPORT_SYMBOL vmlinux 0x7054a3e4 request_dma +EXPORT_SYMBOL vmlinux 0x705f17c7 phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x707f43f6 __ctzdi2 +EXPORT_SYMBOL vmlinux 0x70984759 ppp_register_channel +EXPORT_SYMBOL vmlinux 0x709bc2a2 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x70bc072b mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x70bc17d7 inode_wait +EXPORT_SYMBOL vmlinux 0x70d053fd try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x70d1f8f3 strncat +EXPORT_SYMBOL vmlinux 0x70d8ab82 acpi_acquire_global_lock +EXPORT_SYMBOL vmlinux 0x710078de unload_nls +EXPORT_SYMBOL vmlinux 0x7105e20d remap_pfn_range +EXPORT_SYMBOL vmlinux 0x7114a71f bit_waitqueue +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x71319356 pci_request_region_exclusive +EXPORT_SYMBOL vmlinux 0x7159d6e0 d_path +EXPORT_SYMBOL vmlinux 0x715a0d07 pci_disable_obff +EXPORT_SYMBOL vmlinux 0x7165ca84 scsi_mode_sense +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x718be05b security_path_rmdir +EXPORT_SYMBOL vmlinux 0x71949a73 i2c_use_client +EXPORT_SYMBOL vmlinux 0x71a29717 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71e5d268 sock_no_listen +EXPORT_SYMBOL vmlinux 0x71e72bea bioset_free +EXPORT_SYMBOL vmlinux 0x71f5146e generic_removexattr +EXPORT_SYMBOL vmlinux 0x71f65175 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x725b25e4 generic_permission +EXPORT_SYMBOL vmlinux 0x7265daf1 tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0x727a823e dmam_pool_create +EXPORT_SYMBOL vmlinux 0x728d8849 mutex_unlock +EXPORT_SYMBOL vmlinux 0x7297535a cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0x72b243d4 free_dma +EXPORT_SYMBOL vmlinux 0x72b5b2b7 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x72b9e4cc bh_submit_read +EXPORT_SYMBOL vmlinux 0x72bf2140 mtrr_add +EXPORT_SYMBOL vmlinux 0x72c8d343 xfrm4_prepare_output +EXPORT_SYMBOL vmlinux 0x72cae71d end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0x72d58de9 kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0x72d614c3 pci_platform_rom +EXPORT_SYMBOL vmlinux 0x72df2f2a up_read +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72f28807 inet_confirm_addr +EXPORT_SYMBOL vmlinux 0x72f3aa32 acpi_get_physical_device_location +EXPORT_SYMBOL vmlinux 0x72f69f29 __scsi_alloc_queue +EXPORT_SYMBOL vmlinux 0x730ff4fa input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0x733c3b54 kasprintf +EXPORT_SYMBOL vmlinux 0x734f06e1 input_register_handle +EXPORT_SYMBOL vmlinux 0x7357d07c kernel_connect +EXPORT_SYMBOL vmlinux 0x735a0bd5 native_io_delay +EXPORT_SYMBOL vmlinux 0x736dc332 tcp_proc_unregister +EXPORT_SYMBOL vmlinux 0x737de5e9 radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0x738803e6 strnlen +EXPORT_SYMBOL vmlinux 0x738cd7a8 pcie_get_minimum_link +EXPORT_SYMBOL vmlinux 0x73ba0763 xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0x73ba5a6f netif_receive_skb +EXPORT_SYMBOL vmlinux 0x73dd54eb irq_fpu_usable +EXPORT_SYMBOL vmlinux 0x73e20c1c strlcpy +EXPORT_SYMBOL vmlinux 0x73f983c9 setattr_copy +EXPORT_SYMBOL vmlinux 0x73ffb03c pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0x740a1b95 reserve_evntsel_nmi +EXPORT_SYMBOL vmlinux 0x7413793a EISA_bus +EXPORT_SYMBOL vmlinux 0x743347e3 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0x743b4ae3 atomic64_inc_not_zero_cx8 +EXPORT_SYMBOL vmlinux 0x7440fa2b __sb_start_write +EXPORT_SYMBOL vmlinux 0x744f0345 alloc_anon_inode +EXPORT_SYMBOL vmlinux 0x7469fcfe radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x747195f0 hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x747259d6 request_firmware +EXPORT_SYMBOL vmlinux 0x747d3024 elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x7485e15e unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x74898636 acpi_processor_notify_smm +EXPORT_SYMBOL vmlinux 0x749e9c05 key_unlink +EXPORT_SYMBOL vmlinux 0x74bb2181 register_sysctl_table +EXPORT_SYMBOL vmlinux 0x74c073f7 abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74c7391c inet6_release +EXPORT_SYMBOL vmlinux 0x74ce05b8 flush_delayed_work +EXPORT_SYMBOL vmlinux 0x74e5c98f ucs2_strnlen +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74f29c4e ps2_init +EXPORT_SYMBOL vmlinux 0x7505bdef memchr_inv +EXPORT_SYMBOL vmlinux 0x75271716 save_processor_state +EXPORT_SYMBOL vmlinux 0x7531e3dc acpi_get_event_resources +EXPORT_SYMBOL vmlinux 0x7538b132 agp_off +EXPORT_SYMBOL vmlinux 0x754dac78 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x75584eff xfrm_state_walk +EXPORT_SYMBOL vmlinux 0x7576c013 tcp_ioctl +EXPORT_SYMBOL vmlinux 0x757bc573 bitmap_endwrite +EXPORT_SYMBOL vmlinux 0x757ec4cd dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0x7593d385 div64_s64 +EXPORT_SYMBOL vmlinux 0x759f75f1 tcp_init_cgroup +EXPORT_SYMBOL vmlinux 0x75a5a31c zero_fill_bio +EXPORT_SYMBOL vmlinux 0x75b60d8f bio_integrity_endio +EXPORT_SYMBOL vmlinux 0x75bb675a finish_wait +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75bdea12 iommu_area_alloc +EXPORT_SYMBOL vmlinux 0x75d08c36 led_blink_set_oneshot +EXPORT_SYMBOL vmlinux 0x75d21809 vprintk_emit +EXPORT_SYMBOL vmlinux 0x75d36dd0 dcb_getapp +EXPORT_SYMBOL vmlinux 0x75f01409 inet6_getname +EXPORT_SYMBOL vmlinux 0x76041d4c seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x7618b58d tcp_read_sock +EXPORT_SYMBOL vmlinux 0x761dbde5 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0x7628f3c7 this_cpu_off +EXPORT_SYMBOL vmlinux 0x762add85 atomic64_inc_return_cx8 +EXPORT_SYMBOL vmlinux 0x7641ed47 clk_get +EXPORT_SYMBOL vmlinux 0x7646794f blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x764bd77c request_resource +EXPORT_SYMBOL vmlinux 0x76704c63 vfs_fsync +EXPORT_SYMBOL vmlinux 0x767ddb02 set_memory_wc +EXPORT_SYMBOL vmlinux 0x768e9ee8 fddi_change_mtu +EXPORT_SYMBOL vmlinux 0x769c435a dquot_resume +EXPORT_SYMBOL vmlinux 0x769d88fa __module_get +EXPORT_SYMBOL vmlinux 0x769e06d7 smp_call_function_many +EXPORT_SYMBOL vmlinux 0x76a02614 tcp_release_cb +EXPORT_SYMBOL vmlinux 0x76b031ee ip6_xmit +EXPORT_SYMBOL vmlinux 0x76bf656d __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76fb50e3 register_filesystem +EXPORT_SYMBOL vmlinux 0x770a0036 isapnp_cfg_begin +EXPORT_SYMBOL vmlinux 0x7716cd91 dev_crit +EXPORT_SYMBOL vmlinux 0x771cf835 dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x772f9eec __percpu_counter_add +EXPORT_SYMBOL vmlinux 0x7732044a mmc_of_parse +EXPORT_SYMBOL vmlinux 0x773a9c94 blk_iopoll_enabled +EXPORT_SYMBOL vmlinux 0x7742d739 dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x77456e0a acpi_root_dir +EXPORT_SYMBOL vmlinux 0x77649e5e pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0x77982cf9 pagecache_write_end +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77bc2bf4 pci_assign_resource +EXPORT_SYMBOL vmlinux 0x77be5073 cdrom_open +EXPORT_SYMBOL vmlinux 0x77c75de8 swiotlb_unmap_sg_attrs +EXPORT_SYMBOL vmlinux 0x77d54efe phy_scan_fixups +EXPORT_SYMBOL vmlinux 0x77d8e267 sock_init_data +EXPORT_SYMBOL vmlinux 0x77df0847 __set_personality +EXPORT_SYMBOL vmlinux 0x77ecac9f zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x780e2abb unregister_md_personality +EXPORT_SYMBOL vmlinux 0x780edaba scsi_adjust_queue_depth +EXPORT_SYMBOL vmlinux 0x780fdfd1 intel_enable_gtt +EXPORT_SYMBOL vmlinux 0x782567ec memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0x783b3563 wake_up_atomic_t +EXPORT_SYMBOL vmlinux 0x7859a1d3 pci_enable_msi_block +EXPORT_SYMBOL vmlinux 0x786bacc5 ps2_sendbyte +EXPORT_SYMBOL vmlinux 0x78707685 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78a3fb53 jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0x78a8839c pcim_enable_device +EXPORT_SYMBOL vmlinux 0x78ab4129 get_io_context +EXPORT_SYMBOL vmlinux 0x78af375f user_revoke +EXPORT_SYMBOL vmlinux 0x78bb2011 dm_ratelimit_state +EXPORT_SYMBOL vmlinux 0x78db38d3 proc_dointvec +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78eaa02f sock_i_ino +EXPORT_SYMBOL vmlinux 0x78fd36e7 ipmi_request_supply_msgs +EXPORT_SYMBOL vmlinux 0x79068fda acpi_install_method +EXPORT_SYMBOL vmlinux 0x79075f38 sk_run_filter +EXPORT_SYMBOL vmlinux 0x7909c059 spi_dv_device +EXPORT_SYMBOL vmlinux 0x7929c667 bio_integrity_advance +EXPORT_SYMBOL vmlinux 0x792cf326 alloc_fcdev +EXPORT_SYMBOL vmlinux 0x793cda2a read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x7949852e input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0x796f4c12 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x796fc5ce scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0x7973f778 bdi_setup_and_register +EXPORT_SYMBOL vmlinux 0x798e9e4b mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79bdb78a dev_trans_start +EXPORT_SYMBOL vmlinux 0x79daa558 neigh_app_ns +EXPORT_SYMBOL vmlinux 0x79eef2b7 ata_print_version +EXPORT_SYMBOL vmlinux 0x79f4d455 udp_proc_unregister +EXPORT_SYMBOL vmlinux 0x7a188791 prandom_bytes +EXPORT_SYMBOL vmlinux 0x7a27c184 ewma_init +EXPORT_SYMBOL vmlinux 0x7a43897c vfs_writev +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a51e313 devm_clk_put +EXPORT_SYMBOL vmlinux 0x7a5fec57 in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x7a6a64a4 default_llseek +EXPORT_SYMBOL vmlinux 0x7a6fdf27 pci_disable_device +EXPORT_SYMBOL vmlinux 0x7a82cb47 rdmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x7a91726b clkdev_alloc +EXPORT_SYMBOL vmlinux 0x7a925833 cpufreq_get_global_kobject +EXPORT_SYMBOL vmlinux 0x7a9bf88d udplite_table +EXPORT_SYMBOL vmlinux 0x7aab3418 PDE_DATA +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7add44b5 posix_acl_valid +EXPORT_SYMBOL vmlinux 0x7aec9089 clear_user +EXPORT_SYMBOL vmlinux 0x7af98e37 inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0x7afa89fc vsnprintf +EXPORT_SYMBOL vmlinux 0x7b1089f7 pnp_find_card +EXPORT_SYMBOL vmlinux 0x7b134ddf acpi_get_name +EXPORT_SYMBOL vmlinux 0x7b1ade38 lz4_decompress +EXPORT_SYMBOL vmlinux 0x7b2350ea follow_up +EXPORT_SYMBOL vmlinux 0x7b305854 __lock_page +EXPORT_SYMBOL vmlinux 0x7b3c2c36 ipmi_smi_watcher_unregister +EXPORT_SYMBOL vmlinux 0x7b488975 __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x7b52a859 wrmsr_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x7b5c8440 vm_munmap +EXPORT_SYMBOL vmlinux 0x7b6e97ab consume_skb +EXPORT_SYMBOL vmlinux 0x7b8523f9 abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0x7b8713a0 scsi_free_command +EXPORT_SYMBOL vmlinux 0x7b90e4e7 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0x7b98e45a __sock_create +EXPORT_SYMBOL vmlinux 0x7b9a6116 intel_agp_enabled +EXPORT_SYMBOL vmlinux 0x7bb78882 tty_kref_put +EXPORT_SYMBOL vmlinux 0x7bb9ae36 __blk_end_request_cur +EXPORT_SYMBOL vmlinux 0x7bc9b3e6 netlink_unicast +EXPORT_SYMBOL vmlinux 0x7c016799 skb_pad +EXPORT_SYMBOL vmlinux 0x7c1372e8 panic +EXPORT_SYMBOL vmlinux 0x7c1ab91e jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0x7c21c5b7 tty_unregister_driver +EXPORT_SYMBOL vmlinux 0x7c3afb49 input_grab_device +EXPORT_SYMBOL vmlinux 0x7c411315 page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c4c2659 seq_lseek +EXPORT_SYMBOL vmlinux 0x7c4fc299 net_dma_find_channel +EXPORT_SYMBOL vmlinux 0x7c562f3a scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0x7c565c06 dev_mc_sync +EXPORT_SYMBOL vmlinux 0x7c5795f9 keyring_alloc +EXPORT_SYMBOL vmlinux 0x7c61340c __release_region +EXPORT_SYMBOL vmlinux 0x7c666d29 tcp_syn_flood_action +EXPORT_SYMBOL vmlinux 0x7c90df44 bdget +EXPORT_SYMBOL vmlinux 0x7ca0280a unregister_netdev +EXPORT_SYMBOL vmlinux 0x7cb1ae69 cpu_down +EXPORT_SYMBOL vmlinux 0x7cbf5a4e mmc_put_card +EXPORT_SYMBOL vmlinux 0x7cc578da param_get_long +EXPORT_SYMBOL vmlinux 0x7cc919c6 kernel_listen +EXPORT_SYMBOL vmlinux 0x7cca34ac devfreq_interval_update +EXPORT_SYMBOL vmlinux 0x7cd01552 update_time +EXPORT_SYMBOL vmlinux 0x7cd71791 netpoll_setup +EXPORT_SYMBOL vmlinux 0x7cda1121 inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0x7cdb586b kobject_set_name +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7ce7efa8 mdiobus_write +EXPORT_SYMBOL vmlinux 0x7ce83365 acpi_remove_table_handler +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d11c268 jiffies +EXPORT_SYMBOL vmlinux 0x7d1a1064 agp_generic_alloc_pages +EXPORT_SYMBOL vmlinux 0x7d1bd3de tty_check_change +EXPORT_SYMBOL vmlinux 0x7d1bd95e tty_hangup +EXPORT_SYMBOL vmlinux 0x7d2850d4 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0x7d359f70 __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x7d45a4e7 amd_northbridges +EXPORT_SYMBOL vmlinux 0x7d47751f kblockd_schedule_delayed_work +EXPORT_SYMBOL vmlinux 0x7d5de177 d_make_root +EXPORT_SYMBOL vmlinux 0x7d71db48 kset_register +EXPORT_SYMBOL vmlinux 0x7d844d1b tcf_hash_search +EXPORT_SYMBOL vmlinux 0x7d8a5dd2 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x7dbc2e57 mmiotrace_printk +EXPORT_SYMBOL vmlinux 0x7dd55f8d cfb_imageblit +EXPORT_SYMBOL vmlinux 0x7de3cdb0 ip6_frag_match +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7dff2990 blk_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x7e31286d bio_endio +EXPORT_SYMBOL vmlinux 0x7e31582c tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x7e394c4e sysctl_local_reserved_ports +EXPORT_SYMBOL vmlinux 0x7e3f7169 pci_biosrom_size +EXPORT_SYMBOL vmlinux 0x7e57d31f sock_create_lite +EXPORT_SYMBOL vmlinux 0x7e5939a5 xfrm_register_mode +EXPORT_SYMBOL vmlinux 0x7e8d9cea phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0x7e9597b0 md_unregister_thread +EXPORT_SYMBOL vmlinux 0x7e9608d2 setup_arg_pages +EXPORT_SYMBOL vmlinux 0x7eaf6ddc lock_sock_nested +EXPORT_SYMBOL vmlinux 0x7ecb001b __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x7ee0097f ipv6_select_ident +EXPORT_SYMBOL vmlinux 0x7ee54fc7 vfs_setpos +EXPORT_SYMBOL vmlinux 0x7ee73c0c memcg_socket_limit_enabled +EXPORT_SYMBOL vmlinux 0x7f00be06 scsi_cmd_print_sense_hdr +EXPORT_SYMBOL vmlinux 0x7f21eb6d scsi_print_result +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f48e1e0 scsi_print_sense +EXPORT_SYMBOL vmlinux 0x7f4d7cfd inet6_protos +EXPORT_SYMBOL vmlinux 0x7f4e8574 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0x7f56802a phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0x7f599415 jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0x7f658e80 _raw_write_lock +EXPORT_SYMBOL vmlinux 0x7fabd3dd __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0x7fb321a4 dev_alert +EXPORT_SYMBOL vmlinux 0x7fc6675f netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x7fdf4406 mmc_remove_host +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fe67dc9 input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0x804745d9 __idr_pre_get +EXPORT_SYMBOL vmlinux 0x804f922a ipmi_addr_length +EXPORT_SYMBOL vmlinux 0x80608a7c may_umount_tree +EXPORT_SYMBOL vmlinux 0x807d18c3 wireless_spy_update +EXPORT_SYMBOL vmlinux 0x80a158fb vfs_read +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80cb30f2 i2c_register_driver +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80d9ca85 paravirt_ticketlocks_enabled +EXPORT_SYMBOL vmlinux 0x80dc2f5a tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0x80e073bc init_net +EXPORT_SYMBOL vmlinux 0x81039c9f pci_save_state +EXPORT_SYMBOL vmlinux 0x8105fc69 fb_pan_display +EXPORT_SYMBOL vmlinux 0x810d3fe2 __scsi_put_command +EXPORT_SYMBOL vmlinux 0x811b24c2 jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x8125cc07 mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0x81433192 serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0x81472677 acpi_get_table +EXPORT_SYMBOL vmlinux 0x814e7730 nf_ct_destroy +EXPORT_SYMBOL vmlinux 0x8150c0ba mempool_resize +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x815c56d0 cpu_present_mask +EXPORT_SYMBOL vmlinux 0x815f2897 empty_zero_page +EXPORT_SYMBOL vmlinux 0x816421b6 __remove_inode_hash +EXPORT_SYMBOL vmlinux 0x8186bf34 sock_get_timestampns +EXPORT_SYMBOL vmlinux 0x8186e23b vga_switcheroo_set_dynamic_switch +EXPORT_SYMBOL vmlinux 0x818ab304 bdi_init +EXPORT_SYMBOL vmlinux 0x819e1c25 acpi_evaluate_reference +EXPORT_SYMBOL vmlinux 0x81d10f5f trace_seq_putc +EXPORT_SYMBOL vmlinux 0x81d708c5 md_error +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81e19962 sg_miter_stop +EXPORT_SYMBOL vmlinux 0x81e6b37f dmi_get_system_info +EXPORT_SYMBOL vmlinux 0x81ed245c pagecache_write_begin +EXPORT_SYMBOL vmlinux 0x81f5fe0c ppp_channel_index +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x820eee9e key_invalidate +EXPORT_SYMBOL vmlinux 0x8212721d xenbus_dev_request_and_reply +EXPORT_SYMBOL vmlinux 0x8234977b I_BDEV +EXPORT_SYMBOL vmlinux 0x82352ade padata_register_cpumask_notifier +EXPORT_SYMBOL vmlinux 0x8235805b memmove +EXPORT_SYMBOL vmlinux 0x823b5bdf fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x823f8219 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0x8248905a pnp_start_dev +EXPORT_SYMBOL vmlinux 0x8251bcc3 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x8256b05b tty_lock_pair +EXPORT_SYMBOL vmlinux 0x825a310c security_path_symlink +EXPORT_SYMBOL vmlinux 0x8260686f bitmap_find_next_zero_area +EXPORT_SYMBOL vmlinux 0x8277aa55 vfs_path_lookup +EXPORT_SYMBOL vmlinux 0x827e1164 __inet_stream_connect +EXPORT_SYMBOL vmlinux 0x827f793c release_pages +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x8284d6e9 vlan_vid_add +EXPORT_SYMBOL vmlinux 0x82915c31 scsi_device_get +EXPORT_SYMBOL vmlinux 0x82acfb70 blk_iopoll_sched +EXPORT_SYMBOL vmlinux 0x82b471b4 fput +EXPORT_SYMBOL vmlinux 0x82c8b765 vfs_readv +EXPORT_SYMBOL vmlinux 0x82cb9e99 tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0x82e63cfe skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x83002fc8 fb_get_mode +EXPORT_SYMBOL vmlinux 0x8300a139 rt6_lookup +EXPORT_SYMBOL vmlinux 0x830e547b ioremap_prot +EXPORT_SYMBOL vmlinux 0x831e4409 do_SAK +EXPORT_SYMBOL vmlinux 0x831edd06 netdev_change_features +EXPORT_SYMBOL vmlinux 0x83271fda load_nls +EXPORT_SYMBOL vmlinux 0x833c03aa acpi_enable_all_runtime_gpes +EXPORT_SYMBOL vmlinux 0x8349a99f i2c_del_driver +EXPORT_SYMBOL vmlinux 0x834fee39 __generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x83526a13 bitmap_start_sync +EXPORT_SYMBOL vmlinux 0x836de27c tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0x83a476ce bitmap_scnlistprintf +EXPORT_SYMBOL vmlinux 0x83d0c965 dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x83ef68a2 __dquot_transfer +EXPORT_SYMBOL vmlinux 0x83f02d23 kernel_write +EXPORT_SYMBOL vmlinux 0x83f6d185 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0x83f718d4 vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0x84060081 xen_poll_irq_timeout +EXPORT_SYMBOL vmlinux 0x8406ede2 tcf_hash_insert +EXPORT_SYMBOL vmlinux 0x8417f512 acpi_update_all_gpes +EXPORT_SYMBOL vmlinux 0x841962f8 param_get_ushort +EXPORT_SYMBOL vmlinux 0x84293bfe vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0x842dca99 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0x8461d414 pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x847b10c7 dev_driver_string +EXPORT_SYMBOL vmlinux 0x8495146e softnet_data +EXPORT_SYMBOL vmlinux 0x84a0225b xfrm6_rcv +EXPORT_SYMBOL vmlinux 0x84a7d607 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0x84b22541 dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0x84be886f completion_done +EXPORT_SYMBOL vmlinux 0x84c6868b __find_get_block +EXPORT_SYMBOL vmlinux 0x84cc93f8 dcb_setapp +EXPORT_SYMBOL vmlinux 0x84cf08d9 poll_freewait +EXPORT_SYMBOL vmlinux 0x84f7f8b5 kernel_setsockopt +EXPORT_SYMBOL vmlinux 0x84ffea8b idr_preload +EXPORT_SYMBOL vmlinux 0x8509c540 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0x850afa5a netdev_info +EXPORT_SYMBOL vmlinux 0x8518eca9 param_get_short +EXPORT_SYMBOL vmlinux 0x8537165b generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x853bf7c1 param_set_int +EXPORT_SYMBOL vmlinux 0x8558732b bdgrab +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x8567412e tcp_init_sock +EXPORT_SYMBOL vmlinux 0x85837a9e dev_deactivate +EXPORT_SYMBOL vmlinux 0x859751f6 disk_stack_limits +EXPORT_SYMBOL vmlinux 0x85a2b6b6 blk_requeue_request +EXPORT_SYMBOL vmlinux 0x85ab7cb8 inet_csk_accept +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85e7deb2 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0x85f18783 blk_queue_unprep_rq +EXPORT_SYMBOL vmlinux 0x861fba98 wait_for_completion_io +EXPORT_SYMBOL vmlinux 0x86341410 tcf_hash_destroy +EXPORT_SYMBOL vmlinux 0x8643eb89 __ps2_command +EXPORT_SYMBOL vmlinux 0x8645ea29 udp_sendmsg +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x8664f62e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0x8666ca87 fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x86a22853 xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0x86a4889a kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0x86b00a82 gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0x86c2aed6 scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x86d5255f _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0x86da39d9 __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0x86e72f2d call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x870bf928 radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x871c0a7e fiemap_check_flags +EXPORT_SYMBOL vmlinux 0x8725b833 security_inode_init_security +EXPORT_SYMBOL vmlinux 0x87265715 genphy_update_link +EXPORT_SYMBOL vmlinux 0x8754c2c6 invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0x876dafc3 ec_write +EXPORT_SYMBOL vmlinux 0x8779a34f param_ops_byte +EXPORT_SYMBOL vmlinux 0x878ab3ce sysctl_tcp_adv_win_scale +EXPORT_SYMBOL vmlinux 0x878df099 mnt_set_expiry +EXPORT_SYMBOL vmlinux 0x879038fc pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0x87957477 register_netdevice +EXPORT_SYMBOL vmlinux 0x8798e453 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0x879bdd9f __bio_clone +EXPORT_SYMBOL vmlinux 0x87a07657 bd_set_size +EXPORT_SYMBOL vmlinux 0x87aaddf8 wrmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0x87b0d55c inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0x87ccf4a5 blk_stop_queue +EXPORT_SYMBOL vmlinux 0x87d35863 generic_file_mmap +EXPORT_SYMBOL vmlinux 0x881039d0 zlib_inflate +EXPORT_SYMBOL vmlinux 0x881398a2 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0x882dab9d sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0x8834396c mod_timer +EXPORT_SYMBOL vmlinux 0x88385c85 set_device_ro +EXPORT_SYMBOL vmlinux 0x884ce71c set_pages_array_wc +EXPORT_SYMBOL vmlinux 0x88513970 param_set_byte +EXPORT_SYMBOL vmlinux 0x8853e9a7 loop_register_transfer +EXPORT_SYMBOL vmlinux 0x88596692 replace_mount_options +EXPORT_SYMBOL vmlinux 0x885f156c rtnl_notify +EXPORT_SYMBOL vmlinux 0x8893c01c dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0x88994ebf rename_lock +EXPORT_SYMBOL vmlinux 0x88d062bb skb_copy_expand +EXPORT_SYMBOL vmlinux 0x88d33993 pci_select_bars +EXPORT_SYMBOL vmlinux 0x891cd7b9 arp_send +EXPORT_SYMBOL vmlinux 0x8923baae nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x8928ace9 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x892b26a0 set_memory_nx +EXPORT_SYMBOL vmlinux 0x8953f8ff __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x895b17ea netlink_ack +EXPORT_SYMBOL vmlinux 0x896930f3 tty_pair_get_pty +EXPORT_SYMBOL vmlinux 0x896ca810 __serio_register_port +EXPORT_SYMBOL vmlinux 0x897473df mktime +EXPORT_SYMBOL vmlinux 0x8977cc1e serio_reconnect +EXPORT_SYMBOL vmlinux 0x898266e5 tcp_proto_cgroup +EXPORT_SYMBOL vmlinux 0x89a4686f simple_transaction_set +EXPORT_SYMBOL vmlinux 0x89a7861d address_space_init_once +EXPORT_SYMBOL vmlinux 0x89a9cb97 inc_nlink +EXPORT_SYMBOL vmlinux 0x89ae2e79 netpoll_rx_disable +EXPORT_SYMBOL vmlinux 0x89afe34e __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0x89cf89a8 vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0x89d5538d fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x89d57958 __block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x89e43fef submit_bh +EXPORT_SYMBOL vmlinux 0x89ef166c sk_wait_data +EXPORT_SYMBOL vmlinux 0x89fdf36c skb_orphan_partial +EXPORT_SYMBOL vmlinux 0x8a040e34 fsnotify_destroy_mark +EXPORT_SYMBOL vmlinux 0x8a0c7aa7 no_llseek +EXPORT_SYMBOL vmlinux 0x8a0e6d67 scsi_calculate_bounce_limit +EXPORT_SYMBOL vmlinux 0x8a1ab4ee timeval_to_jiffies +EXPORT_SYMBOL vmlinux 0x8a2ea1f1 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a51d565 quota_send_warning +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a80d7a5 acpi_error +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8aa1318d iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0x8aa80ea6 vga_tryget +EXPORT_SYMBOL vmlinux 0x8ac209df scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x8ac7d16d arp_create +EXPORT_SYMBOL vmlinux 0x8acd2d6b key_link +EXPORT_SYMBOL vmlinux 0x8aec326f pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0x8b18496f __copy_to_user_ll +EXPORT_SYMBOL vmlinux 0x8b1a7a66 pcie_aspm_enabled +EXPORT_SYMBOL vmlinux 0x8b226a81 acpi_video_dmi_demote_vendor +EXPORT_SYMBOL vmlinux 0x8b35e873 sg_last +EXPORT_SYMBOL vmlinux 0x8b38f069 x86_dma_fallback_dev +EXPORT_SYMBOL vmlinux 0x8b43159b register_cpu_notifier +EXPORT_SYMBOL vmlinux 0x8b5223ee follow_pfn +EXPORT_SYMBOL vmlinux 0x8b5ef8ae udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0x8b5f4a2e IO_APIC_get_PCI_irq_vector +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b765081 sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x8b7cf640 bdi_unregister +EXPORT_SYMBOL vmlinux 0x8b989cf9 acpi_bus_can_wakeup +EXPORT_SYMBOL vmlinux 0x8ba9f21a netif_carrier_off +EXPORT_SYMBOL vmlinux 0x8bdc8774 dev_remove_pack +EXPORT_SYMBOL vmlinux 0x8c183cbe iowrite16 +EXPORT_SYMBOL vmlinux 0x8c356611 sock_no_bind +EXPORT_SYMBOL vmlinux 0x8c4aba5b filemap_fdatawait +EXPORT_SYMBOL vmlinux 0x8c637d43 irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x8c649ab7 tty_port_tty_get +EXPORT_SYMBOL vmlinux 0x8c8ee770 ipmi_destroy_user +EXPORT_SYMBOL vmlinux 0x8c9473e0 tcf_hash_new_index +EXPORT_SYMBOL vmlinux 0x8ca46ef7 sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x8cc00abe bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x8cc37d94 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8ccc8a30 dump_emit +EXPORT_SYMBOL vmlinux 0x8cd5a355 xfrm_register_type +EXPORT_SYMBOL vmlinux 0x8cd795dc inet_ioctl +EXPORT_SYMBOL vmlinux 0x8cd8f018 acpi_device_hid +EXPORT_SYMBOL vmlinux 0x8cda8029 xen_clear_irq_pending +EXPORT_SYMBOL vmlinux 0x8cf35997 blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x8d0e9cd1 twl6040_set_pll +EXPORT_SYMBOL vmlinux 0x8d12a71c dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x8d2e268b param_ops_ulong +EXPORT_SYMBOL vmlinux 0x8d3ba226 netif_skb_dev_features +EXPORT_SYMBOL vmlinux 0x8d461567 sock_i_uid +EXPORT_SYMBOL vmlinux 0x8d551bef sysctl_tcp_rmem +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d5a9e28 idr_get_next +EXPORT_SYMBOL vmlinux 0x8d6f81b4 __div64_32 +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d8d96c6 acpi_get_sleep_type_data +EXPORT_SYMBOL vmlinux 0x8da1a3cb acpi_remove_interface +EXPORT_SYMBOL vmlinux 0x8da1ab31 neigh_update +EXPORT_SYMBOL vmlinux 0x8daf8c42 dql_init +EXPORT_SYMBOL vmlinux 0x8db0a9de dquot_free_inode +EXPORT_SYMBOL vmlinux 0x8dc6e564 restore_processor_state +EXPORT_SYMBOL vmlinux 0x8dd82fbf bio_init +EXPORT_SYMBOL vmlinux 0x8df435d2 acpi_bus_get_status +EXPORT_SYMBOL vmlinux 0x8dfa2e30 generic_readlink +EXPORT_SYMBOL vmlinux 0x8e002cda acpi_remove_gpe_block +EXPORT_SYMBOL vmlinux 0x8e011688 block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x8e0d66f4 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x8e3f0af1 fb_validate_mode +EXPORT_SYMBOL vmlinux 0x8e47dc66 ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0x8e54213a security_file_permission +EXPORT_SYMBOL vmlinux 0x8e864a86 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x8e87aed4 idr_for_each +EXPORT_SYMBOL vmlinux 0x8e888ec3 cpumask_next_and +EXPORT_SYMBOL vmlinux 0x8eaf2a5f vga_switcheroo_unregister_handler +EXPORT_SYMBOL vmlinux 0x8ec03067 ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x8ecbccde scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0x8efec28d find_get_pages_contig +EXPORT_SYMBOL vmlinux 0x8f03a5bd unregister_binfmt +EXPORT_SYMBOL vmlinux 0x8f045d1c cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x8f2703b7 wbinvd_on_all_cpus +EXPORT_SYMBOL vmlinux 0x8f38cfb4 mount_subtree +EXPORT_SYMBOL vmlinux 0x8f42fb85 ip6_frag_init +EXPORT_SYMBOL vmlinux 0x8f9c199c __get_user_2 +EXPORT_SYMBOL vmlinux 0x8fa71ce6 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0x8fa9dffc dentry_path_raw +EXPORT_SYMBOL vmlinux 0x8fab0597 jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0x8fbec487 tty_pair_get_tty +EXPORT_SYMBOL vmlinux 0x8fd7f24e iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0x8fdfab9b pcim_iomap_table +EXPORT_SYMBOL vmlinux 0x8ff4079b pv_irq_ops +EXPORT_SYMBOL vmlinux 0x8ffdb3b8 crc16 +EXPORT_SYMBOL vmlinux 0x90195d66 iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0x903f9a54 scsi_ioctl +EXPORT_SYMBOL vmlinux 0x90401ae8 udp6_csum_init +EXPORT_SYMBOL vmlinux 0x904409c6 acpi_set_firmware_waking_vector +EXPORT_SYMBOL vmlinux 0x90860b66 __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0x90886588 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0x908b53ed param_set_short +EXPORT_SYMBOL vmlinux 0x909c8f76 max8925_bulk_write +EXPORT_SYMBOL vmlinux 0x90c5e819 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x9103e511 serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0x91285c9b ndisc_mc_map +EXPORT_SYMBOL vmlinux 0x913bce98 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0x9141ec9e proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0x9144a8e2 ec_burst_disable +EXPORT_SYMBOL vmlinux 0x91463b1d kstrtos16 +EXPORT_SYMBOL vmlinux 0x91607d95 set_memory_wb +EXPORT_SYMBOL vmlinux 0x91715312 sprintf +EXPORT_SYMBOL vmlinux 0x918055a5 serio_rescan +EXPORT_SYMBOL vmlinux 0x91835b8a blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0x91967e8e xen_selfballoon_init +EXPORT_SYMBOL vmlinux 0x91b278ed tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x91b6e1ed stop_tty +EXPORT_SYMBOL vmlinux 0x91ce92f3 i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0x91cef93a genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0x91d3aa6f phy_drivers_register +EXPORT_SYMBOL vmlinux 0x91fd9c30 submit_bio +EXPORT_SYMBOL vmlinux 0x921032f9 sk_reset_timer +EXPORT_SYMBOL vmlinux 0x9216740e __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x921f63ae pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x925520d2 blk_start_plug +EXPORT_SYMBOL vmlinux 0x9276cf02 bio_map_user +EXPORT_SYMBOL vmlinux 0x927cd316 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x92821d2a __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x92897e3d default_idle +EXPORT_SYMBOL vmlinux 0x92a6672e sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x92a9c60c time_to_tm +EXPORT_SYMBOL vmlinux 0x92ad7ac4 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0x92b12a76 d_validate +EXPORT_SYMBOL vmlinux 0x92b5c762 scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x92bf5b01 eth_change_mtu +EXPORT_SYMBOL vmlinux 0x92f07b23 dma_set_mask +EXPORT_SYMBOL vmlinux 0x92f6f0f7 xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x9300ceab pci_disable_ido +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x930e4822 path_get +EXPORT_SYMBOL vmlinux 0x93215e1d __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0x93350a14 idr_find_slowpath +EXPORT_SYMBOL vmlinux 0x93432ed8 input_open_device +EXPORT_SYMBOL vmlinux 0x93448c57 screen_info +EXPORT_SYMBOL vmlinux 0x935d7a7d gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0x93639a6a blk_recount_segments +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x938fa0f8 ip_check_defrag +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93b51848 account_page_dirtied +EXPORT_SYMBOL vmlinux 0x93ce5757 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0x93d57848 skb_kill_datagram +EXPORT_SYMBOL vmlinux 0x93f37976 empty_aops +EXPORT_SYMBOL vmlinux 0x93fca811 __get_free_pages +EXPORT_SYMBOL vmlinux 0x942fafb1 f_setown +EXPORT_SYMBOL vmlinux 0x94571d0b swiotlb_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0x945e4c08 remove_proc_entry +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x94a2a363 pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0x94a9e398 pci_disable_msix +EXPORT_SYMBOL vmlinux 0x94b541b5 cpu_active_mask +EXPORT_SYMBOL vmlinux 0x94dbdab4 misc_deregister +EXPORT_SYMBOL vmlinux 0x9508f166 param_ops_bint +EXPORT_SYMBOL vmlinux 0x950cc8fc sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0x95395301 acpi_exception +EXPORT_SYMBOL vmlinux 0x9542d6c2 generic_file_aio_read +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x9551ee6c kthread_stop +EXPORT_SYMBOL vmlinux 0x956088f3 set_disk_ro +EXPORT_SYMBOL vmlinux 0x9572a4cb devm_ioremap +EXPORT_SYMBOL vmlinux 0x9584b103 kernel_accept +EXPORT_SYMBOL vmlinux 0x958a5fb1 freezing_slow_path +EXPORT_SYMBOL vmlinux 0x958c2efe pci_set_master +EXPORT_SYMBOL vmlinux 0x95ce8fd0 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0x95d7bcc4 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0x95e6e500 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x95ec9221 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0x95f70a75 page_symlink +EXPORT_SYMBOL vmlinux 0x95f89a33 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x961c9ec3 dev_warn +EXPORT_SYMBOL vmlinux 0x962061b2 inet_add_protocol +EXPORT_SYMBOL vmlinux 0x9622bfda tcp_seq_open +EXPORT_SYMBOL vmlinux 0x962971e0 mount_pseudo +EXPORT_SYMBOL vmlinux 0x963495ec blk_start_queue +EXPORT_SYMBOL vmlinux 0x963e6da6 locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x96573b80 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x966229f7 jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0x96642542 bio_integrity_get_tag +EXPORT_SYMBOL vmlinux 0x966513fa mmc_read_bkops_status +EXPORT_SYMBOL vmlinux 0x96898769 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x969ac472 ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x96a9dc3a cookie_check_timestamp +EXPORT_SYMBOL vmlinux 0x96c744a2 agp_backend_release +EXPORT_SYMBOL vmlinux 0x96cbcc81 ipmi_get_version +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96d21b14 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x96dc2011 vm_iomap_memory +EXPORT_SYMBOL vmlinux 0x96e63a13 kernel_getsockopt +EXPORT_SYMBOL vmlinux 0x96fb57d3 tty_port_close_start +EXPORT_SYMBOL vmlinux 0x970a8f2c __skb_get_rxhash +EXPORT_SYMBOL vmlinux 0x973fa82e register_acpi_notifier +EXPORT_SYMBOL vmlinux 0x9745cef6 netif_device_detach +EXPORT_SYMBOL vmlinux 0x9754ec10 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x97666205 d_add_ci +EXPORT_SYMBOL vmlinux 0x977e5b30 scm_fp_dup +EXPORT_SYMBOL vmlinux 0x978f0375 pci_request_region +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x9799d44a blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0x97a60e3d param_get_bool +EXPORT_SYMBOL vmlinux 0x97b4500c __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0x97b59586 lg_local_lock_cpu +EXPORT_SYMBOL vmlinux 0x97bb2854 dmam_free_coherent +EXPORT_SYMBOL vmlinux 0x97c1594b key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x97c5bd0a acpi_unload_parent_table +EXPORT_SYMBOL vmlinux 0x97c79a15 kernel_bind +EXPORT_SYMBOL vmlinux 0x97c99f94 shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0x97dcef29 acpi_processor_unregister_performance +EXPORT_SYMBOL vmlinux 0x97de0ddd acpi_install_gpe_block +EXPORT_SYMBOL vmlinux 0x9820b644 warn_slowpath_fmt_taint +EXPORT_SYMBOL vmlinux 0x986e6135 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x987488f1 pci_release_region +EXPORT_SYMBOL vmlinux 0x988ed85d set_memory_x +EXPORT_SYMBOL vmlinux 0x98a344ef devm_free_irq +EXPORT_SYMBOL vmlinux 0x98a5a056 __netif_schedule +EXPORT_SYMBOL vmlinux 0x98bca6ff get_fs_type +EXPORT_SYMBOL vmlinux 0x98c400a4 clocksource_unregister +EXPORT_SYMBOL vmlinux 0x98e19b2c xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0x98e3d40e seq_release_private +EXPORT_SYMBOL vmlinux 0x98e57a5b bio_copy_kern +EXPORT_SYMBOL vmlinux 0x98e5dfa6 rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0x98ee9478 xfrm_garbage_collect +EXPORT_SYMBOL vmlinux 0x98fa21b0 mod_timer_pinned +EXPORT_SYMBOL vmlinux 0x990395ac single_open +EXPORT_SYMBOL vmlinux 0x99047ee6 request_firmware_nowait +EXPORT_SYMBOL vmlinux 0x99052a84 acpi_os_write_port +EXPORT_SYMBOL vmlinux 0x990a225d devm_gpio_free +EXPORT_SYMBOL vmlinux 0x990e5ed4 iget5_locked +EXPORT_SYMBOL vmlinux 0x991a88df jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0x99216354 pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0x99355aee pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x9937e20f input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x99591a7a ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x9990cf04 pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0x9994c0ca ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x9999850a inode_change_ok +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99a203fa ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0x99c316ce proc_create_data +EXPORT_SYMBOL vmlinux 0x99cdc86b sysctl_tcp_reordering +EXPORT_SYMBOL vmlinux 0x99fa0ed9 clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a1fc4b4 jiffies_to_timeval +EXPORT_SYMBOL vmlinux 0x9a275cc6 devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0x9a38a14c ppp_input +EXPORT_SYMBOL vmlinux 0x9a3c3fc7 elv_rb_del +EXPORT_SYMBOL vmlinux 0x9a49f91f spi_schedule_dv_device +EXPORT_SYMBOL vmlinux 0x9a6a83f9 cmos_lock +EXPORT_SYMBOL vmlinux 0x9a7e4cac devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x9a7fdaec pnp_device_detach +EXPORT_SYMBOL vmlinux 0x9a86087b cdrom_release +EXPORT_SYMBOL vmlinux 0x9a9dee02 twl6040_reg_write +EXPORT_SYMBOL vmlinux 0x9ab1663f simple_setattr +EXPORT_SYMBOL vmlinux 0x9ae6de47 free_task +EXPORT_SYMBOL vmlinux 0x9aec2138 input_unregister_handler +EXPORT_SYMBOL vmlinux 0x9af70888 xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b388444 get_zeroed_page +EXPORT_SYMBOL vmlinux 0x9b55dd07 abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x9b5ea5c3 single_open_size +EXPORT_SYMBOL vmlinux 0x9b6dc1d2 d_delete +EXPORT_SYMBOL vmlinux 0x9b6eb137 ksize +EXPORT_SYMBOL vmlinux 0x9b75cb81 _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x9b77fa9f mmc_gpio_request_ro +EXPORT_SYMBOL vmlinux 0x9b80a107 pci_enable_obff +EXPORT_SYMBOL vmlinux 0x9b9e05f9 alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0x9ba7089d argv_split +EXPORT_SYMBOL vmlinux 0x9bbff1cd pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0x9bc4b3bd ftrace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x9bd52296 fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0x9bd97f39 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0x9bdcc24c input_unregister_device +EXPORT_SYMBOL vmlinux 0x9be18188 jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0x9be7bde4 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x9c12c741 inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0x9c1fbc22 framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x9c2c944a __copy_from_user_ll_nocache_nozero +EXPORT_SYMBOL vmlinux 0x9c330735 blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x9c3a5026 gen_pool_free +EXPORT_SYMBOL vmlinux 0x9c491f60 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x9c4ed77b scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0x9c4f30c5 mddev_congested +EXPORT_SYMBOL vmlinux 0x9c67b450 console_start +EXPORT_SYMBOL vmlinux 0x9c7ee868 pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0x9c8ecd26 abort_exclusive_wait +EXPORT_SYMBOL vmlinux 0x9ca51394 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0x9ca6339f sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0x9ca78455 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9ceb163c memcpy_toiovec +EXPORT_SYMBOL vmlinux 0x9cecab47 from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x9cecc726 netpoll_print_options +EXPORT_SYMBOL vmlinux 0x9cfd56c5 scsi_print_status +EXPORT_SYMBOL vmlinux 0x9cff0feb generic_file_remap_pages +EXPORT_SYMBOL vmlinux 0x9d05f6c4 ktime_get_clocktai +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d0e0e91 noop_llseek +EXPORT_SYMBOL vmlinux 0x9d1cb925 inet6_register_protosw +EXPORT_SYMBOL vmlinux 0x9d33ef5e acpi_enable +EXPORT_SYMBOL vmlinux 0x9d35bcf1 genl_unregister_family +EXPORT_SYMBOL vmlinux 0x9d3aa376 blk_iopoll_init +EXPORT_SYMBOL vmlinux 0x9d5cfbd7 spi_attach_transport +EXPORT_SYMBOL vmlinux 0x9d5e195b xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0x9d7cc0e6 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x9d8b3cd4 scsi_register_driver +EXPORT_SYMBOL vmlinux 0x9d90f95f __crc32c_le_combine +EXPORT_SYMBOL vmlinux 0x9db279a1 bioset_create +EXPORT_SYMBOL vmlinux 0x9de7c90a mount_single +EXPORT_SYMBOL vmlinux 0x9df3a8a8 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x9df79fae tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0x9df91e61 __secpath_destroy +EXPORT_SYMBOL vmlinux 0x9dfe7307 lz4_decompress_unknownoutputsize +EXPORT_SYMBOL vmlinux 0x9e06205e tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e15b9a8 dev_get_by_flags_rcu +EXPORT_SYMBOL vmlinux 0x9e2000a7 memcpy_toiovecend +EXPORT_SYMBOL vmlinux 0x9e363b6b acpi_disable_gpe +EXPORT_SYMBOL vmlinux 0x9e4b3747 sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x9e4bbd11 read_cache_page_async +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e526c83 dquot_quota_on +EXPORT_SYMBOL vmlinux 0x9e555930 kill_litter_super +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e64fbfe rtc_cmos_read +EXPORT_SYMBOL vmlinux 0x9e7d6bd0 __udelay +EXPORT_SYMBOL vmlinux 0x9e8f5da5 balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0x9e9f1714 __bitmap_andnot +EXPORT_SYMBOL vmlinux 0x9ea0ad49 __sg_free_table +EXPORT_SYMBOL vmlinux 0x9ea5a37b neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0x9ea9fef4 iget_failed +EXPORT_SYMBOL vmlinux 0x9eac4a52 arp_invalidate +EXPORT_SYMBOL vmlinux 0x9ebce632 cdev_alloc +EXPORT_SYMBOL vmlinux 0x9ebd4c04 adjust_resource +EXPORT_SYMBOL vmlinux 0x9ed2eec7 param_set_ushort +EXPORT_SYMBOL vmlinux 0x9ed685ee iov_iter_advance +EXPORT_SYMBOL vmlinux 0x9eda3dfe neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x9f2bdaac __bitmap_or +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f491e5d ftrace_print_symbols_seq_u64 +EXPORT_SYMBOL vmlinux 0x9f5f9269 fsnotify_put_mark +EXPORT_SYMBOL vmlinux 0x9f93df27 wireless_send_event +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9fa26a5c dm_register_target +EXPORT_SYMBOL vmlinux 0x9fa619bd vc_resize +EXPORT_SYMBOL vmlinux 0x9fb3dd30 memcpy_fromiovec +EXPORT_SYMBOL vmlinux 0x9fb66996 i2c_get_adapter +EXPORT_SYMBOL vmlinux 0x9fc0c7f0 tty_name +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9fe44f80 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa0002605 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0xa00aca2a dql_completed +EXPORT_SYMBOL vmlinux 0xa0214c40 netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa043b76b i2c_add_adapter +EXPORT_SYMBOL vmlinux 0xa04a01bd qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xa04c1404 abort_creds +EXPORT_SYMBOL vmlinux 0xa05c03df mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xa06df9e1 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0xa06e62fe skb_clone +EXPORT_SYMBOL vmlinux 0xa07b6f3e dquot_drop +EXPORT_SYMBOL vmlinux 0xa07d6192 kmap_to_page +EXPORT_SYMBOL vmlinux 0xa07ed110 xz_dec_init +EXPORT_SYMBOL vmlinux 0xa081cff9 create_syslog_header +EXPORT_SYMBOL vmlinux 0xa08cb605 tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0xa0966e4b unregister_shrinker +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0ceef51 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0db7769 blk_queue_prep_rq +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa11b4359 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa12e663a scsi_host_alloc +EXPORT_SYMBOL vmlinux 0xa147b731 __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0xa14e54f0 inode_reclaim_rsv_space +EXPORT_SYMBOL vmlinux 0xa14f3d8c ewma_add +EXPORT_SYMBOL vmlinux 0xa164a857 netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0xa17de6bc blk_mq_run_queues +EXPORT_SYMBOL vmlinux 0xa1970cac __brelse +EXPORT_SYMBOL vmlinux 0xa1a42af7 inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xa1aec36e inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xa1b759ce fb_add_videomode +EXPORT_SYMBOL vmlinux 0xa1beb2fe input_get_keycode +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1c8737d max8998_update_reg +EXPORT_SYMBOL vmlinux 0xa1cd1df5 dev_addr_flush +EXPORT_SYMBOL vmlinux 0xa1f392bf i8042_install_filter +EXPORT_SYMBOL vmlinux 0xa202c427 splice_from_pipe_begin +EXPORT_SYMBOL vmlinux 0xa20aab1a inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0xa20ce1b8 net_msg_warn +EXPORT_SYMBOL vmlinux 0xa22311d0 __mutex_init +EXPORT_SYMBOL vmlinux 0xa224e052 md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0xa2304780 skb_pull +EXPORT_SYMBOL vmlinux 0xa2330069 dmam_alloc_coherent +EXPORT_SYMBOL vmlinux 0xa237bab6 dmam_release_declared_memory +EXPORT_SYMBOL vmlinux 0xa2848c50 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0xa28a2ace ipmi_set_gets_events +EXPORT_SYMBOL vmlinux 0xa2a98b91 ipmi_get_maintenance_mode +EXPORT_SYMBOL vmlinux 0xa2b05c0b security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0xa2b82e07 writeback_in_progress +EXPORT_SYMBOL vmlinux 0xa2b89fa5 devfreq_add_device +EXPORT_SYMBOL vmlinux 0xa2e958a2 gen10g_suspend +EXPORT_SYMBOL vmlinux 0xa2ef34d7 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xa33d9a48 acpi_decode_pld_buffer +EXPORT_SYMBOL vmlinux 0xa34f1ef5 crc32_le +EXPORT_SYMBOL vmlinux 0xa3504378 rwsem_wake +EXPORT_SYMBOL vmlinux 0xa350a8f8 set_memory_array_uc +EXPORT_SYMBOL vmlinux 0xa35de80f ipv4_config +EXPORT_SYMBOL vmlinux 0xa363dab4 udp_table +EXPORT_SYMBOL vmlinux 0xa374dcf1 do_truncate +EXPORT_SYMBOL vmlinux 0xa398d6f8 build_skb +EXPORT_SYMBOL vmlinux 0xa3c04b56 jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0xa3c480e0 dquot_commit_info +EXPORT_SYMBOL vmlinux 0xa3eedcbe xfrm6_prepare_output +EXPORT_SYMBOL vmlinux 0xa407322e set_pages_x +EXPORT_SYMBOL vmlinux 0xa422d301 proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0xa4236b4b blk_alloc_queue_node +EXPORT_SYMBOL vmlinux 0xa43416d0 mmc_hw_reset_check +EXPORT_SYMBOL vmlinux 0xa4381f52 find_get_page +EXPORT_SYMBOL vmlinux 0xa43a6181 agp_generic_alloc_by_type +EXPORT_SYMBOL vmlinux 0xa43b1297 vscnprintf +EXPORT_SYMBOL vmlinux 0xa43b9539 memcpy_fromiovecend +EXPORT_SYMBOL vmlinux 0xa442b056 cont_write_begin +EXPORT_SYMBOL vmlinux 0xa44e34e4 mmc_register_driver +EXPORT_SYMBOL vmlinux 0xa459c6e3 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0xa45f191d __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0xa462f4d0 phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0xa4701e9e timekeeping_inject_offset +EXPORT_SYMBOL vmlinux 0xa476c899 pci_scan_bus +EXPORT_SYMBOL vmlinux 0xa4a3e67a kern_path_mountpoint +EXPORT_SYMBOL vmlinux 0xa4afaade pci_enable_device_io +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa4c76731 __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0xa4d37165 __getblk +EXPORT_SYMBOL vmlinux 0xa4d4f0e6 global_cache_flush +EXPORT_SYMBOL vmlinux 0xa4e71847 alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0xa4eb4eff _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0xa4eec7fd tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0xa50a111e inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0xa510c7c4 noop_qdisc +EXPORT_SYMBOL vmlinux 0xa5183096 touch_buffer +EXPORT_SYMBOL vmlinux 0xa51c9e2c bdput +EXPORT_SYMBOL vmlinux 0xa51cdfe8 __FIXADDR_TOP +EXPORT_SYMBOL vmlinux 0xa527fa45 devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0xa5353fd8 inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0xa539cb4e bitmap_end_sync +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa582b6ef nf_unregister_hooks +EXPORT_SYMBOL vmlinux 0xa582d0ae __ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0xa586e040 sync_inode +EXPORT_SYMBOL vmlinux 0xa598e29c vesa_modes +EXPORT_SYMBOL vmlinux 0xa5a84d54 tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0xa5e28fd5 dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0xa5e9816c vfs_create +EXPORT_SYMBOL vmlinux 0xa5eed8dc kernel_sendpage +EXPORT_SYMBOL vmlinux 0xa5f1ac3a kfree_skb_partial +EXPORT_SYMBOL vmlinux 0xa61117fc scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0xa61915ad nla_put_nohdr +EXPORT_SYMBOL vmlinux 0xa6198842 jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0xa62e6e4f acpi_get_table_with_size +EXPORT_SYMBOL vmlinux 0xa63a2f9b param_get_ulong +EXPORT_SYMBOL vmlinux 0xa63d85ab slhc_remember +EXPORT_SYMBOL vmlinux 0xa65b6fbe vga_switcheroo_init_domain_pm_optimus_hdmi_audio +EXPORT_SYMBOL vmlinux 0xa66d7a95 xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0xa6715115 do_settimeofday +EXPORT_SYMBOL vmlinux 0xa675804c utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0xa67da660 mempool_alloc +EXPORT_SYMBOL vmlinux 0xa67e2845 dq_data_lock +EXPORT_SYMBOL vmlinux 0xa67fbd41 scsi_remove_host +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6970398 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0xa6a65256 netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0xa6b07308 xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0xa6b13658 __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0xa6bd63ca acpi_bios_error +EXPORT_SYMBOL vmlinux 0xa6d6c2ae tcf_register_action +EXPORT_SYMBOL vmlinux 0xa6d72a4d unlock_page +EXPORT_SYMBOL vmlinux 0xa6db47cf devfreq_remove_device +EXPORT_SYMBOL vmlinux 0xa6e78021 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0xa70fabbe release_evntsel_nmi +EXPORT_SYMBOL vmlinux 0xa71e73a3 lro_flush_pkt +EXPORT_SYMBOL vmlinux 0xa71e7463 __first_cpu +EXPORT_SYMBOL vmlinux 0xa722ee04 ata_port_printk +EXPORT_SYMBOL vmlinux 0xa735db59 prandom_u32 +EXPORT_SYMBOL vmlinux 0xa75a8b32 blkdev_put +EXPORT_SYMBOL vmlinux 0xa77c05df tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0xa77c16c8 swiotlb_dma_mapping_error +EXPORT_SYMBOL vmlinux 0xa78057cf do_sync_write +EXPORT_SYMBOL vmlinux 0xa790c551 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0xa7ceae97 mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0xa7cf6c2f atomic64_dec_return_cx8 +EXPORT_SYMBOL vmlinux 0xa7dc7d6b phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0xa82001c8 __napi_schedule +EXPORT_SYMBOL vmlinux 0xa8232c78 strtobool +EXPORT_SYMBOL vmlinux 0xa829456f xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa86f4798 d_prune_aliases +EXPORT_SYMBOL vmlinux 0xa8721b97 system_state +EXPORT_SYMBOL vmlinux 0xa87939ef unmap_mapping_range +EXPORT_SYMBOL vmlinux 0xa88db33a tty_register_ldisc +EXPORT_SYMBOL vmlinux 0xa8a6f639 __check_region +EXPORT_SYMBOL vmlinux 0xa8e9dc46 scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0xa8fef7bb security_unix_may_send +EXPORT_SYMBOL vmlinux 0xa905aff9 xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xa9074f16 __free_pages +EXPORT_SYMBOL vmlinux 0xa9149f4a vfs_mknod +EXPORT_SYMBOL vmlinux 0xa91b5561 acpi_video_backlight_support +EXPORT_SYMBOL vmlinux 0xa9396347 bdi_register_dev +EXPORT_SYMBOL vmlinux 0xa93ce342 phy_ethtool_gset +EXPORT_SYMBOL vmlinux 0xa98bfbe7 padata_set_cpumasks +EXPORT_SYMBOL vmlinux 0xa98f7391 ioctl_by_bdev +EXPORT_SYMBOL vmlinux 0xa9947c4d xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xa9a11279 key_task_permission +EXPORT_SYMBOL vmlinux 0xa9a1bb19 tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0xa9a23698 sock_update_memcg +EXPORT_SYMBOL vmlinux 0xa9a3aed8 lookup_one_len +EXPORT_SYMBOL vmlinux 0xa9a8e17f arch_phys_wc_add +EXPORT_SYMBOL vmlinux 0xa9ab7bcf devfreq_add_governor +EXPORT_SYMBOL vmlinux 0xa9c128dc pci_write_vpd +EXPORT_SYMBOL vmlinux 0xa9c9d15d padata_unregister_cpumask_notifier +EXPORT_SYMBOL vmlinux 0xa9d50bba pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0xa9dec685 blk_peek_request +EXPORT_SYMBOL vmlinux 0xaa257719 dquot_destroy +EXPORT_SYMBOL vmlinux 0xaa2afe81 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0xaa67f830 register_xen_selfballooning +EXPORT_SYMBOL vmlinux 0xaa680257 in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xaa6901ac __kfifo_out_r +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa835b92 fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0xaa83dc43 skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0xaa8fea18 acpi_processor_register_performance +EXPORT_SYMBOL vmlinux 0xaa9087c0 param_ops_string +EXPORT_SYMBOL vmlinux 0xaa9bad08 open_exec +EXPORT_SYMBOL vmlinux 0xaaa71cd4 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0xaab7cc84 inet_del_protocol +EXPORT_SYMBOL vmlinux 0xaac84ac3 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaae8ab0e acpi_bus_power_manageable +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab14afad kill_block_super +EXPORT_SYMBOL vmlinux 0xab28271c i8253_lock +EXPORT_SYMBOL vmlinux 0xab379e53 pci_enable_ido +EXPORT_SYMBOL vmlinux 0xab600421 probe_irq_off +EXPORT_SYMBOL vmlinux 0xab65ed80 set_memory_uc +EXPORT_SYMBOL vmlinux 0xab694444 bsearch +EXPORT_SYMBOL vmlinux 0xab6bde28 sysctl_max_syn_backlog +EXPORT_SYMBOL vmlinux 0xab7148b7 tty_free_termios +EXPORT_SYMBOL vmlinux 0xab770678 rdmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab7f43ba agp_find_bridge +EXPORT_SYMBOL vmlinux 0xabbc21b8 tcp_splice_read +EXPORT_SYMBOL vmlinux 0xabc6dd63 cpufreq_sysfs_create_file +EXPORT_SYMBOL vmlinux 0xabcaa577 free_anon_bdev +EXPORT_SYMBOL vmlinux 0xabd0c91c rtc_time_to_tm +EXPORT_SYMBOL vmlinux 0xabd4f262 call_netdevice_notifiers_info +EXPORT_SYMBOL vmlinux 0xabd53929 i2c_clients_command +EXPORT_SYMBOL vmlinux 0xac04f39b dev_close +EXPORT_SYMBOL vmlinux 0xac0ba8c1 blk_iopoll_disable +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac2b256c free_user_ns +EXPORT_SYMBOL vmlinux 0xac2d2fb8 gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0xac38cde7 path_put +EXPORT_SYMBOL vmlinux 0xac58ea5e acpi_unload_table_id +EXPORT_SYMBOL vmlinux 0xac611443 i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0xac6d6cae dquot_acquire +EXPORT_SYMBOL vmlinux 0xac6ff77f pneigh_lookup +EXPORT_SYMBOL vmlinux 0xac77beec netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0xac857d4d bio_integrity_clone +EXPORT_SYMBOL vmlinux 0xaca96b7c simple_write_begin +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xaccabc6a in4_pton +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad13c689 acpi_os_execute +EXPORT_SYMBOL vmlinux 0xad22b33f blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0xad2a8bd2 x86_bios_cpu_apicid +EXPORT_SYMBOL vmlinux 0xad2baf08 max8998_bulk_write +EXPORT_SYMBOL vmlinux 0xad2e50d5 bio_advance +EXPORT_SYMBOL vmlinux 0xad388a59 __skb_tx_hash +EXPORT_SYMBOL vmlinux 0xad4d10d0 jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0xad6eecca make_bad_inode +EXPORT_SYMBOL vmlinux 0xad8309e6 filp_open +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad9381fb dentry_open +EXPORT_SYMBOL vmlinux 0xad9fa9f1 inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0xadb616f4 phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0xadbd0000 do_splice_from +EXPORT_SYMBOL vmlinux 0xade19552 blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0xae103fb1 ether_setup +EXPORT_SYMBOL vmlinux 0xae1f4f6b simple_transaction_release +EXPORT_SYMBOL vmlinux 0xae33ba55 arch_debugfs_dir +EXPORT_SYMBOL vmlinux 0xae4879ac clocksource_register +EXPORT_SYMBOL vmlinux 0xae4e7ee9 uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0xae5557ef netlink_kernel_release +EXPORT_SYMBOL vmlinux 0xae729e59 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xae7c9648 __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0xae81654a devm_ioremap_nocache +EXPORT_SYMBOL vmlinux 0xae979c99 gen10g_read_status +EXPORT_SYMBOL vmlinux 0xaea976a8 acpi_check_resource_conflict +EXPORT_SYMBOL vmlinux 0xaec655c7 alloc_pages_exact +EXPORT_SYMBOL vmlinux 0xaeca284a tcp_getsockopt +EXPORT_SYMBOL vmlinux 0xaed24b90 __skb_dst_set_noref +EXPORT_SYMBOL vmlinux 0xaed30306 inet_twsk_deschedule +EXPORT_SYMBOL vmlinux 0xaed9e300 vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0xaef3d77d xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xaf1046b7 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0xaf37abc9 skb_copy_and_csum_datagram_iovec +EXPORT_SYMBOL vmlinux 0xaf37ec04 eth_rebuild_header +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf4316b7 agp_put_bridge +EXPORT_SYMBOL vmlinux 0xaf4b1540 acpi_get_irq_routing_table +EXPORT_SYMBOL vmlinux 0xaf5e3859 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0xaf611eac amd_nb_misc_ids +EXPORT_SYMBOL vmlinux 0xaf64ad0d zlib_deflate +EXPORT_SYMBOL vmlinux 0xaf6581ca dma_declare_coherent_memory +EXPORT_SYMBOL vmlinux 0xaf91d89f __kernel_param_lock +EXPORT_SYMBOL vmlinux 0xaf9d9ecc __register_nmi_handler +EXPORT_SYMBOL vmlinux 0xafa9a405 dquot_disable +EXPORT_SYMBOL vmlinux 0xafad493b param_ops_ushort +EXPORT_SYMBOL vmlinux 0xafb752fc get_super_thawed +EXPORT_SYMBOL vmlinux 0xafbb5861 pci_bus_put +EXPORT_SYMBOL vmlinux 0xaff4f49d kunmap +EXPORT_SYMBOL vmlinux 0xaffe9bd5 da903x_query_status +EXPORT_SYMBOL vmlinux 0xb0176ff3 elv_register_queue +EXPORT_SYMBOL vmlinux 0xb01a0fc4 page_address +EXPORT_SYMBOL vmlinux 0xb01b1db8 intel_gtt_insert_sg_entries +EXPORT_SYMBOL vmlinux 0xb0207ecf ___ratelimit +EXPORT_SYMBOL vmlinux 0xb02b9812 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb08d530c blk_end_request_all +EXPORT_SYMBOL vmlinux 0xb0935ca5 nla_append +EXPORT_SYMBOL vmlinux 0xb09f6845 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0b847ac __bitmap_full +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0e65254 sock_create_kern +EXPORT_SYMBOL vmlinux 0xb0ffda2f blk_limits_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xb121390a probe_irq_on +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb140f3bb gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0xb150108a irq_to_desc +EXPORT_SYMBOL vmlinux 0xb1574009 nf_log_set +EXPORT_SYMBOL vmlinux 0xb15da4f0 tc_classify_compat +EXPORT_SYMBOL vmlinux 0xb1645a2e sg_free_table +EXPORT_SYMBOL vmlinux 0xb18437d2 tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0xb18e0c22 km_report +EXPORT_SYMBOL vmlinux 0xb19760c3 bitmap_onto +EXPORT_SYMBOL vmlinux 0xb198459e isapnp_protocol +EXPORT_SYMBOL vmlinux 0xb1aa6847 tc_classify +EXPORT_SYMBOL vmlinux 0xb1bad708 splice_from_pipe_feed +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1cf44df fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xb1cfad22 rdmsr_on_cpu +EXPORT_SYMBOL vmlinux 0xb1d9523e wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0xb1db9e4e param_get_invbool +EXPORT_SYMBOL vmlinux 0xb1dddd7c test_set_page_writeback +EXPORT_SYMBOL vmlinux 0xb1f709b6 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0xb219d56c wbinvd_on_cpu +EXPORT_SYMBOL vmlinux 0xb23cf6c7 create_empty_buffers +EXPORT_SYMBOL vmlinux 0xb243566c inet_frag_evictor +EXPORT_SYMBOL vmlinux 0xb2682405 utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0xb2744b36 down_write_trylock +EXPORT_SYMBOL vmlinux 0xb281e365 vga_switcheroo_client_fb_set +EXPORT_SYMBOL vmlinux 0xb28cb0db ipv6_push_nfrag_opts +EXPORT_SYMBOL vmlinux 0xb2947494 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0xb298d49c xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0xb2a14bb6 ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0xb2b94674 __crc32c_le +EXPORT_SYMBOL vmlinux 0xb2be6e92 netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xb2d20239 blk_mq_free_queue +EXPORT_SYMBOL vmlinux 0xb2d48a2e queue_work_on +EXPORT_SYMBOL vmlinux 0xb2d96caf dev_add_offload +EXPORT_SYMBOL vmlinux 0xb2ea3816 security_path_unlink +EXPORT_SYMBOL vmlinux 0xb2f74fb6 intel_gmch_remove +EXPORT_SYMBOL vmlinux 0xb2fd5ceb __put_user_4 +EXPORT_SYMBOL vmlinux 0xb3159395 agp_generic_remove_memory +EXPORT_SYMBOL vmlinux 0xb3284531 acpi_dbg_layer +EXPORT_SYMBOL vmlinux 0xb3418313 uart_update_timeout +EXPORT_SYMBOL vmlinux 0xb34b45c8 acpi_pm_device_sleep_state +EXPORT_SYMBOL vmlinux 0xb34ef535 x86_hyper_vmware +EXPORT_SYMBOL vmlinux 0xb350bf97 i2c_transfer +EXPORT_SYMBOL vmlinux 0xb352177e find_first_bit +EXPORT_SYMBOL vmlinux 0xb3632490 __blk_end_request_all +EXPORT_SYMBOL vmlinux 0xb376c0d0 __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0xb39f4002 i2c_del_adapter +EXPORT_SYMBOL vmlinux 0xb3e0590d acpi_set_current_resources +EXPORT_SYMBOL vmlinux 0xb3f0b9a0 end_page_writeback +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb40e6a31 iget_locked +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb4390f9a mcount +EXPORT_SYMBOL vmlinux 0xb45578b8 memscan +EXPORT_SYMBOL vmlinux 0xb4709322 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0xb4b64f90 prepare_binprm +EXPORT_SYMBOL vmlinux 0xb4cc22d5 inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0xb4e49d64 input_flush_device +EXPORT_SYMBOL vmlinux 0xb505bf4d deactivate_locked_super +EXPORT_SYMBOL vmlinux 0xb52a7aac dev_mc_flush +EXPORT_SYMBOL vmlinux 0xb52ee8be intel_gtt_clear_range +EXPORT_SYMBOL vmlinux 0xb536ef97 pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0xb54533f7 usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xb56abf40 tcp_child_process +EXPORT_SYMBOL vmlinux 0xb56d5a4b generic_listxattr +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb59c4ac5 dev_addr_del_multiple +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5ca1c46 slhc_free +EXPORT_SYMBOL vmlinux 0xb616ce71 agp_generic_enable +EXPORT_SYMBOL vmlinux 0xb6244511 sg_init_one +EXPORT_SYMBOL vmlinux 0xb6394d4b param_set_bint +EXPORT_SYMBOL vmlinux 0xb64244fa dquot_transfer +EXPORT_SYMBOL vmlinux 0xb655c8bd dev_mc_init +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb678b87a netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0xb6822a33 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0xb6896671 crc_t10dif +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6b46a7c param_ops_int +EXPORT_SYMBOL vmlinux 0xb6c5333b skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0xb6c5a973 scsi_show_result +EXPORT_SYMBOL vmlinux 0xb6e13559 tty_vhangup +EXPORT_SYMBOL vmlinux 0xb6ed1e53 strncpy +EXPORT_SYMBOL vmlinux 0xb6f7b546 phy_find_first +EXPORT_SYMBOL vmlinux 0xb703723d tcp_md5_hash_header +EXPORT_SYMBOL vmlinux 0xb7204cb7 jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0xb72ad2d1 lro_receive_frags +EXPORT_SYMBOL vmlinux 0xb7428ec9 blk_queue_start_tag +EXPORT_SYMBOL vmlinux 0xb74d5bb5 blk_mq_init_commands +EXPORT_SYMBOL vmlinux 0xb758b225 acpi_disable_event +EXPORT_SYMBOL vmlinux 0xb7624b9b ip_setsockopt +EXPORT_SYMBOL vmlinux 0xb77131b1 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0xb7778f79 complete_request_key +EXPORT_SYMBOL vmlinux 0xb7a5504a simple_pin_fs +EXPORT_SYMBOL vmlinux 0xb7b4f7db simple_write_end +EXPORT_SYMBOL vmlinux 0xb7b61546 crc32_be +EXPORT_SYMBOL vmlinux 0xb7d202d2 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0xb7e921d1 phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0xb7f55ecc atomic64_add_return_cx8 +EXPORT_SYMBOL vmlinux 0xb81960ca snprintf +EXPORT_SYMBOL vmlinux 0xb81a87e6 seq_pad +EXPORT_SYMBOL vmlinux 0xb81c51fb serio_close +EXPORT_SYMBOL vmlinux 0xb8238526 jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0xb82acaa8 xfrm_state_add +EXPORT_SYMBOL vmlinux 0xb82cf3de security_d_instantiate +EXPORT_SYMBOL vmlinux 0xb835b3e4 radix_tree_prev_hole +EXPORT_SYMBOL vmlinux 0xb83d8abf inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0xb86e6426 dev_uc_del +EXPORT_SYMBOL vmlinux 0xb87335c4 ht_create_irq +EXPORT_SYMBOL vmlinux 0xb874b87a __clzsi2 +EXPORT_SYMBOL vmlinux 0xb87a6cbc __generic_block_fiemap +EXPORT_SYMBOL vmlinux 0xb87c4ab3 request_key_async_with_auxdata +EXPORT_SYMBOL vmlinux 0xb8939aae scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0xb8a418f6 dev_set_drvdata +EXPORT_SYMBOL vmlinux 0xb8c4420a vga_get +EXPORT_SYMBOL vmlinux 0xb8d73e97 param_set_uint +EXPORT_SYMBOL vmlinux 0xb8e7ce2c __put_user_8 +EXPORT_SYMBOL vmlinux 0xb8e877e7 kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xb907513f unpoison_memory +EXPORT_SYMBOL vmlinux 0xb911f4dc mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0xb94e5f95 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0xb955ecfe tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0xb97aaa50 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0xb98a0185 rtc_tm_to_time +EXPORT_SYMBOL vmlinux 0xb99ac1e8 swiotlb_dma_supported +EXPORT_SYMBOL vmlinux 0xb9aac834 page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0xb9b35013 i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0xb9bf5a6d mmc_can_reset +EXPORT_SYMBOL vmlinux 0xb9d277a2 dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xb9ecc580 blk_mq_map_queue +EXPORT_SYMBOL vmlinux 0xb9fd2205 add_efi_memmap +EXPORT_SYMBOL vmlinux 0xba2d8594 ec_read +EXPORT_SYMBOL vmlinux 0xba335f19 blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba6d3439 mfd_remove_devices +EXPORT_SYMBOL vmlinux 0xba89fb53 tcp_close +EXPORT_SYMBOL vmlinux 0xba8ea6ad rwsem_downgrade_wake +EXPORT_SYMBOL vmlinux 0xbab83a80 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0xbad6f099 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0xbad92d89 agp_enable +EXPORT_SYMBOL vmlinux 0xbae27c63 unlock_rename +EXPORT_SYMBOL vmlinux 0xbb159184 wait_iff_congested +EXPORT_SYMBOL vmlinux 0xbb189cad disallow_signal +EXPORT_SYMBOL vmlinux 0xbb309be1 module_refcount +EXPORT_SYMBOL vmlinux 0xbb42b366 __starget_for_each_device +EXPORT_SYMBOL vmlinux 0xbb5d343d xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xbb6bb3a1 d_splice_alias +EXPORT_SYMBOL vmlinux 0xbb713e6d sk_filter_release_rcu +EXPORT_SYMBOL vmlinux 0xbb76d1ef dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0xbb8ae597 mpage_writepage +EXPORT_SYMBOL vmlinux 0xbb91907e __nla_put +EXPORT_SYMBOL vmlinux 0xbb9343ee __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0xbb9373d2 security_path_mknod +EXPORT_SYMBOL vmlinux 0xbb93df6c dquot_operations +EXPORT_SYMBOL vmlinux 0xbb99125c get_default_font +EXPORT_SYMBOL vmlinux 0xbba084d1 find_lock_page +EXPORT_SYMBOL vmlinux 0xbbaf5ac3 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0xbbce89f0 __blk_run_queue +EXPORT_SYMBOL vmlinux 0xbbe0fcaf vga_put +EXPORT_SYMBOL vmlinux 0xbbe1b0dd twl6040_power +EXPORT_SYMBOL vmlinux 0xbbe286e3 __cleancache_put_page +EXPORT_SYMBOL vmlinux 0xbc03687b inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0xbc1afedf up_write +EXPORT_SYMBOL vmlinux 0xbc2031de acpi_processor_get_bios_limit +EXPORT_SYMBOL vmlinux 0xbc2816e2 dev_addr_add_multiple +EXPORT_SYMBOL vmlinux 0xbc2ef089 blk_rq_init +EXPORT_SYMBOL vmlinux 0xbc362e62 padata_start +EXPORT_SYMBOL vmlinux 0xbc3c4a26 inode_sub_rsv_space +EXPORT_SYMBOL vmlinux 0xbc435770 dump_stack +EXPORT_SYMBOL vmlinux 0xbc5e0ba2 pci_claim_resource +EXPORT_SYMBOL vmlinux 0xbc62ae05 inet6_del_offload +EXPORT_SYMBOL vmlinux 0xbc7f746d cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0xbc836d79 sg_miter_next +EXPORT_SYMBOL vmlinux 0xbc83c523 dget_parent +EXPORT_SYMBOL vmlinux 0xbc85c806 uart_remove_one_port +EXPORT_SYMBOL vmlinux 0xbcbbf084 tty_schedule_flip +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbcdcc1f7 posix_test_lock +EXPORT_SYMBOL vmlinux 0xbcf098e6 pnp_get_resource +EXPORT_SYMBOL vmlinux 0xbd095b0f ___pskb_trim +EXPORT_SYMBOL vmlinux 0xbd18502f pci_map_rom +EXPORT_SYMBOL vmlinux 0xbd283b34 dev_mc_del +EXPORT_SYMBOL vmlinux 0xbd2f8a63 mmc_erase +EXPORT_SYMBOL vmlinux 0xbd34ea5b xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0xbd4a066f vga_client_register +EXPORT_SYMBOL vmlinux 0xbd517a3a vc_cons +EXPORT_SYMBOL vmlinux 0xbd64b0a7 inode_permission +EXPORT_SYMBOL vmlinux 0xbd7a76c4 __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0xbd986a3e tcf_generic_walker +EXPORT_SYMBOL vmlinux 0xbdab252b unlazy_fpu +EXPORT_SYMBOL vmlinux 0xbdba9828 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0xbdbb0baf account_page_redirty +EXPORT_SYMBOL vmlinux 0xbdbf6fc8 kdb_current_task +EXPORT_SYMBOL vmlinux 0xbe0e5118 nla_memcmp +EXPORT_SYMBOL vmlinux 0xbe25b41a ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0xbe2a0dd3 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0xbe2c0274 add_timer +EXPORT_SYMBOL vmlinux 0xbe8c37d9 intel_scu_ipc_simple_command +EXPORT_SYMBOL vmlinux 0xbea343d5 arp_tbl +EXPORT_SYMBOL vmlinux 0xbeaf47f2 simple_statfs +EXPORT_SYMBOL vmlinux 0xbebfefdb wait_on_sync_kiocb +EXPORT_SYMBOL vmlinux 0xbec30d05 x86_match_cpu +EXPORT_SYMBOL vmlinux 0xbee90f2f __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0xbeea83ab dev_mc_add_global +EXPORT_SYMBOL vmlinux 0xbeec2291 inet_getname +EXPORT_SYMBOL vmlinux 0xbef0017b first_ec +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbf0be479 fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0xbf0d332e input_close_device +EXPORT_SYMBOL vmlinux 0xbf2a82fc mmc_interrupt_hpi +EXPORT_SYMBOL vmlinux 0xbf2d4847 tcf_hash_lookup +EXPORT_SYMBOL vmlinux 0xbf33771c blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0xbf4860b4 swiotlb_unmap_sg +EXPORT_SYMBOL vmlinux 0xbf73fd31 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0xbf74f432 km_query +EXPORT_SYMBOL vmlinux 0xbf765a01 con_copy_unimap +EXPORT_SYMBOL vmlinux 0xbf7fd2f5 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0xbf8b39e9 isapnp_present +EXPORT_SYMBOL vmlinux 0xbf9b1da2 tcf_exts_dump +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfc16a0f pci_alloc_dev +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfd3cdf8 lock_may_read +EXPORT_SYMBOL vmlinux 0xbfd63a13 blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xbfeef19a scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0xbff970e6 lock_fb_info +EXPORT_SYMBOL vmlinux 0xbfff9a50 scsi_target_resume +EXPORT_SYMBOL vmlinux 0xc009fb37 set_anon_super +EXPORT_SYMBOL vmlinux 0xc01cf848 _raw_read_lock +EXPORT_SYMBOL vmlinux 0xc01eed33 __copy_from_user_ll_nozero +EXPORT_SYMBOL vmlinux 0xc01f073e truncate_pagecache +EXPORT_SYMBOL vmlinux 0xc020e103 uart_register_driver +EXPORT_SYMBOL vmlinux 0xc029c0dc sock_edemux +EXPORT_SYMBOL vmlinux 0xc02b8e49 scsi_release_buffers +EXPORT_SYMBOL vmlinux 0xc02bdd5c is_bad_inode +EXPORT_SYMBOL vmlinux 0xc02cf69b clkdev_drop +EXPORT_SYMBOL vmlinux 0xc0390ad9 sync_inodes_sb +EXPORT_SYMBOL vmlinux 0xc03fb490 block_write_end +EXPORT_SYMBOL vmlinux 0xc05ab9cd inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0xc068440e __kfifo_alloc +EXPORT_SYMBOL vmlinux 0xc06e23ca generic_pipe_buf_unmap +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc07fab8b __nlmsg_put +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0a86c94 seq_escape +EXPORT_SYMBOL vmlinux 0xc0a8ff16 acpi_evaluate_object +EXPORT_SYMBOL vmlinux 0xc0b61797 ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0xc0c2c2a4 tcp_gro_receive +EXPORT_SYMBOL vmlinux 0xc0c81150 scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0xc0deb5f1 tcp_disconnect +EXPORT_SYMBOL vmlinux 0xc0fc81a5 mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xc1067c39 dput +EXPORT_SYMBOL vmlinux 0xc1076a81 console_stop +EXPORT_SYMBOL vmlinux 0xc107d330 generic_pipe_buf_confirm +EXPORT_SYMBOL vmlinux 0xc1251b4e posix_lock_file +EXPORT_SYMBOL vmlinux 0xc12ec3a6 dns_query +EXPORT_SYMBOL vmlinux 0xc1752489 invalidate_partition +EXPORT_SYMBOL vmlinux 0xc17e4fe6 register_console +EXPORT_SYMBOL vmlinux 0xc1922c43 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0xc1afde85 cdrom_ioctl +EXPORT_SYMBOL vmlinux 0xc1b82d22 register_shrinker +EXPORT_SYMBOL vmlinux 0xc1c2dd09 __hw_addr_flush +EXPORT_SYMBOL vmlinux 0xc1c2ef78 blk_queue_softirq_done +EXPORT_SYMBOL vmlinux 0xc228be21 dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0xc22cb875 tcp_proc_register +EXPORT_SYMBOL vmlinux 0xc2424641 agp3_generic_cleanup +EXPORT_SYMBOL vmlinux 0xc2428565 nf_afinfo +EXPORT_SYMBOL vmlinux 0xc256e762 __bitmap_equal +EXPORT_SYMBOL vmlinux 0xc27a1619 follow_down +EXPORT_SYMBOL vmlinux 0xc280a525 __copy_from_user_ll +EXPORT_SYMBOL vmlinux 0xc28522e1 init_task +EXPORT_SYMBOL vmlinux 0xc291928e ip_options_compile +EXPORT_SYMBOL vmlinux 0xc293a804 proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0xc2aa9f0e genlmsg_put +EXPORT_SYMBOL vmlinux 0xc2ad2df3 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0xc2d711e1 krealloc +EXPORT_SYMBOL vmlinux 0xc2de5733 cancel_dirty_page +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2e7b60c blk_queue_init_tags +EXPORT_SYMBOL vmlinux 0xc2eb4e34 mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0xc2f9c045 timespec_to_jiffies +EXPORT_SYMBOL vmlinux 0xc3014503 generic_write_checks +EXPORT_SYMBOL vmlinux 0xc31db0c0 ps2_drain +EXPORT_SYMBOL vmlinux 0xc327e564 kset_unregister +EXPORT_SYMBOL vmlinux 0xc33e9543 may_umount +EXPORT_SYMBOL vmlinux 0xc341b911 phy_device_register +EXPORT_SYMBOL vmlinux 0xc34a93d1 tcp_recvmsg +EXPORT_SYMBOL vmlinux 0xc37e2b20 clear_bdi_congested +EXPORT_SYMBOL vmlinux 0xc3aaf0a9 __put_user_1 +EXPORT_SYMBOL vmlinux 0xc3cf06e8 dquot_file_open +EXPORT_SYMBOL vmlinux 0xc3e238a9 pcie_set_mps +EXPORT_SYMBOL vmlinux 0xc3eb10a3 fget +EXPORT_SYMBOL vmlinux 0xc3fa6a59 memchr +EXPORT_SYMBOL vmlinux 0xc4014ffd jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xc41e8f7a wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0xc41f0516 node_states +EXPORT_SYMBOL vmlinux 0xc43684d2 netdev_notify_peers +EXPORT_SYMBOL vmlinux 0xc43aec4c __get_user_pages +EXPORT_SYMBOL vmlinux 0xc4554217 up +EXPORT_SYMBOL vmlinux 0xc4788049 nf_hook_slow +EXPORT_SYMBOL vmlinux 0xc48de5b2 dev_get_by_name +EXPORT_SYMBOL vmlinux 0xc499ae1e kstrdup +EXPORT_SYMBOL vmlinux 0xc4e1e1ad read_code +EXPORT_SYMBOL vmlinux 0xc50990fe __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xc516430b do_splice_direct +EXPORT_SYMBOL vmlinux 0xc52b11a9 skb_queue_purge +EXPORT_SYMBOL vmlinux 0xc52d8083 dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0xc5534d64 ioread16 +EXPORT_SYMBOL vmlinux 0xc57ab7bc proc_dostring +EXPORT_SYMBOL vmlinux 0xc589e044 param_set_long +EXPORT_SYMBOL vmlinux 0xc58dcbb0 pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0xc5b19e9c have_submounts +EXPORT_SYMBOL vmlinux 0xc5c726c8 blk_run_queue_async +EXPORT_SYMBOL vmlinux 0xc5d34c67 max8925_set_bits +EXPORT_SYMBOL vmlinux 0xc5d92f90 mount_nodev +EXPORT_SYMBOL vmlinux 0xc5d9c46c agp_try_unsupported_boot +EXPORT_SYMBOL vmlinux 0xc5e4196c dma_release_declared_memory +EXPORT_SYMBOL vmlinux 0xc5eb70b4 update_devfreq +EXPORT_SYMBOL vmlinux 0xc5f2a91f pcim_iounmap +EXPORT_SYMBOL vmlinux 0xc5f93979 tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0xc5fdef94 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xc612a7da udp_prot +EXPORT_SYMBOL vmlinux 0xc61b17af ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0xc61d15fb bio_clone_bioset +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc63cc125 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0xc65abeb7 agp3_generic_sizes +EXPORT_SYMBOL vmlinux 0xc6645b42 mempool_create_node +EXPORT_SYMBOL vmlinux 0xc6649310 dma_async_memcpy_buf_to_pg +EXPORT_SYMBOL vmlinux 0xc675c592 __block_write_begin +EXPORT_SYMBOL vmlinux 0xc6789093 qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0xc679622f blk_mq_end_io +EXPORT_SYMBOL vmlinux 0xc6802e0e __skb_checksum +EXPORT_SYMBOL vmlinux 0xc69ebad6 tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0xc6b23120 intel_scu_ipc_iowrite16 +EXPORT_SYMBOL vmlinux 0xc6b281d5 dquot_release +EXPORT_SYMBOL vmlinux 0xc6b368d3 acpi_gpe_count +EXPORT_SYMBOL vmlinux 0xc6b420df key_validate +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6d02d0f bioset_integrity_create +EXPORT_SYMBOL vmlinux 0xc6d2b455 dev_notice +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc738edf0 __napi_complete +EXPORT_SYMBOL vmlinux 0xc73b5618 dma_release_from_coherent +EXPORT_SYMBOL vmlinux 0xc73e0f27 pneigh_enqueue +EXPORT_SYMBOL vmlinux 0xc768de19 cpu_all_bits +EXPORT_SYMBOL vmlinux 0xc76d2b50 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc7899f03 vmap +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7d2d7e8 x86_hyper_xen_hvm +EXPORT_SYMBOL vmlinux 0xc7ec6c27 strspn +EXPORT_SYMBOL vmlinux 0xc811f705 bmap +EXPORT_SYMBOL vmlinux 0xc814a8ba twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0xc8276a79 nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xc8339e24 string_unescape +EXPORT_SYMBOL vmlinux 0xc83b4d5b posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc851737d mb_cache_entry_alloc +EXPORT_SYMBOL vmlinux 0xc85afeb3 __pci_enable_wake +EXPORT_SYMBOL vmlinux 0xc8601367 mmc_power_restore_host +EXPORT_SYMBOL vmlinux 0xc863202f tcp_check_req +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc882c4a0 make_kuid +EXPORT_SYMBOL vmlinux 0xc897c382 sg_init_table +EXPORT_SYMBOL vmlinux 0xc8b57c27 autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xc8c126f6 alloc_fddidev +EXPORT_SYMBOL vmlinux 0xc8d1c983 netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0xc8d2644b vga_switcheroo_register_handler +EXPORT_SYMBOL vmlinux 0xc92cc64f blk_complete_request +EXPORT_SYMBOL vmlinux 0xc9323f8d tty_lock +EXPORT_SYMBOL vmlinux 0xc94ab194 kfree_skb_list +EXPORT_SYMBOL vmlinux 0xc95c984e seq_bitmap +EXPORT_SYMBOL vmlinux 0xc95f0a50 sock_wfree +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc9644dc8 vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0xc981c0ab inet_release +EXPORT_SYMBOL vmlinux 0xc996d097 del_timer +EXPORT_SYMBOL vmlinux 0xc9a6dabc jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0xc9b15dec dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0xc9ccfbf8 elevator_exit +EXPORT_SYMBOL vmlinux 0xca021eb4 devm_ioport_map +EXPORT_SYMBOL vmlinux 0xca191986 __frontswap_test +EXPORT_SYMBOL vmlinux 0xca19c47c pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0xca28ac5b dev_change_carrier +EXPORT_SYMBOL vmlinux 0xca589746 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0xca5dbc50 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xca5ee739 sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0xca8acc78 acpi_dbg_level +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xcaa5a541 dquot_quotactl_ops +EXPORT_SYMBOL vmlinux 0xcaae0d91 bio_unmap_user +EXPORT_SYMBOL vmlinux 0xcacb1040 inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0xcaf25f72 xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xcaf793f9 __splice_from_pipe +EXPORT_SYMBOL vmlinux 0xcb01e923 neigh_ifdown +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb07f41d unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xcb0c5d50 param_get_uint +EXPORT_SYMBOL vmlinux 0xcb103515 km_policy_expired +EXPORT_SYMBOL vmlinux 0xcb1f7217 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0xcb4c2368 cleancache_register_ops +EXPORT_SYMBOL vmlinux 0xcb4f3a8b lock_rename +EXPORT_SYMBOL vmlinux 0xcb590500 unregister_qdisc +EXPORT_SYMBOL vmlinux 0xcb733bf2 acpi_bus_set_power +EXPORT_SYMBOL vmlinux 0xcb90a40c bio_integrity_set_tag +EXPORT_SYMBOL vmlinux 0xcbae6c7a acpi_lid_notifier_unregister +EXPORT_SYMBOL vmlinux 0xcbbf0a6f audit_log_task_context +EXPORT_SYMBOL vmlinux 0xcbc9557f unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0xcbd207fe blk_delay_queue +EXPORT_SYMBOL vmlinux 0xcbd45a69 i8042_check_port_owner +EXPORT_SYMBOL vmlinux 0xcbe06940 simple_lookup +EXPORT_SYMBOL vmlinux 0xcbf7d8a7 blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc2abc98 scsi_setup_blk_pc_cmnd +EXPORT_SYMBOL vmlinux 0xcc37f55c blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0xcc4d1bfb atomic64_read_cx8 +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc536ecd buffer_migrate_page +EXPORT_SYMBOL vmlinux 0xcc5b27b5 acpi_extract_package +EXPORT_SYMBOL vmlinux 0xcc712f03 neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0xcc799c95 sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0xcc7f5c10 try_to_writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xcc7fa952 local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0xcc8f8b3f mpage_readpage +EXPORT_SYMBOL vmlinux 0xcc90dccc find_get_pages_tag +EXPORT_SYMBOL vmlinux 0xcc9ed1b7 mmc_flush_cache +EXPORT_SYMBOL vmlinux 0xccb2bfd5 pipe_unlock +EXPORT_SYMBOL vmlinux 0xccbb0460 dev_open +EXPORT_SYMBOL vmlinux 0xccbec603 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xcccf1bf8 fsnotify_get_group +EXPORT_SYMBOL vmlinux 0xcd14147c lease_modify +EXPORT_SYMBOL vmlinux 0xcd16f829 pci_pme_capable +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd4a4a0b free_xenballooned_pages +EXPORT_SYMBOL vmlinux 0xcd5bc1b7 pci_get_class +EXPORT_SYMBOL vmlinux 0xcd5c6d2a ilookup5_nowait +EXPORT_SYMBOL vmlinux 0xcd707786 scsi_nonblockable_ioctl +EXPORT_SYMBOL vmlinux 0xcd73d91c tcp_parse_options +EXPORT_SYMBOL vmlinux 0xcd8a41da bdev_stack_limits +EXPORT_SYMBOL vmlinux 0xcd8aa9f7 set_pages_uc +EXPORT_SYMBOL vmlinux 0xcd948f97 udp_add_offload +EXPORT_SYMBOL vmlinux 0xcda19a37 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0xcda327cc dev_get_by_index +EXPORT_SYMBOL vmlinux 0xcda42bb4 inet_bind +EXPORT_SYMBOL vmlinux 0xcda5feab security_path_chown +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdc40fae panic_notifier_list +EXPORT_SYMBOL vmlinux 0xcdd3b9f2 mfd_add_devices +EXPORT_SYMBOL vmlinux 0xcde172ac radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0xcdfefde1 invalidate_bdev +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce4904a4 acpi_leave_sleep_state +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce630a36 xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0xce88efb4 boot_cpu_data +EXPORT_SYMBOL vmlinux 0xcec990e3 generic_file_open +EXPORT_SYMBOL vmlinux 0xced30552 bio_integrity_split +EXPORT_SYMBOL vmlinux 0xcef1a7de neigh_event_ns +EXPORT_SYMBOL vmlinux 0xcef51982 kstrtou16 +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf0d05bf agp_generic_insert_memory +EXPORT_SYMBOL vmlinux 0xcf0e0820 tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0xcf26e747 wake_up_process +EXPORT_SYMBOL vmlinux 0xcf2c40ff __dst_free +EXPORT_SYMBOL vmlinux 0xcf369a1d pci_choose_state +EXPORT_SYMBOL vmlinux 0xcf3a1c21 __destroy_inode +EXPORT_SYMBOL vmlinux 0xcf5eab52 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0xcf68024c vfs_unlink +EXPORT_SYMBOL vmlinux 0xcf6cfe1f msrs_free +EXPORT_SYMBOL vmlinux 0xcfce78b8 generic_file_llseek +EXPORT_SYMBOL vmlinux 0xcfd02530 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0xcfdfa951 phy_driver_unregister +EXPORT_SYMBOL vmlinux 0xcfe05d4d register_kmmio_probe +EXPORT_SYMBOL vmlinux 0xd0059797 max8998_read_reg +EXPORT_SYMBOL vmlinux 0xd0181f4f __bitmap_xor +EXPORT_SYMBOL vmlinux 0xd0216784 pnp_unregister_driver +EXPORT_SYMBOL vmlinux 0xd028b49c sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0xd02edf67 inode_claim_rsv_space +EXPORT_SYMBOL vmlinux 0xd0400465 rtmsg_ifinfo +EXPORT_SYMBOL vmlinux 0xd0439379 sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0xd059ebf8 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0xd05f4b79 tty_throttle +EXPORT_SYMBOL vmlinux 0xd0720a17 on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xd07d85c3 scsi_device_set_state +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0c1e11f module_put +EXPORT_SYMBOL vmlinux 0xd0cd5daf pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0xd0cf6ee5 pcim_iomap +EXPORT_SYMBOL vmlinux 0xd0d42c42 mod_timer_pending +EXPORT_SYMBOL vmlinux 0xd0d8621b strlen +EXPORT_SYMBOL vmlinux 0xd0e46065 filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0xd0ee38b8 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0xd0f0d945 down_read +EXPORT_SYMBOL vmlinux 0xd0f36f0d audit_log_format +EXPORT_SYMBOL vmlinux 0xd0fb7cd4 __tasklet_hi_schedule_first +EXPORT_SYMBOL vmlinux 0xd0fef3b2 agp_free_key +EXPORT_SYMBOL vmlinux 0xd11c0dc1 __kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xd134c430 d_move +EXPORT_SYMBOL vmlinux 0xd15c6e09 ab3100_event_register +EXPORT_SYMBOL vmlinux 0xd1652a93 acpi_info +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd18b6eb2 acpi_unmap_lsapic +EXPORT_SYMBOL vmlinux 0xd18ce4de fget_raw +EXPORT_SYMBOL vmlinux 0xd196c9be kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xd1c23e18 sock_no_shutdown +EXPORT_SYMBOL vmlinux 0xd1d9422c sb_set_blocksize +EXPORT_SYMBOL vmlinux 0xd1de6b59 elv_rq_merge_ok +EXPORT_SYMBOL vmlinux 0xd1e45d9d generic_error_remove_page +EXPORT_SYMBOL vmlinux 0xd1f6c5f3 smp_num_siblings +EXPORT_SYMBOL vmlinux 0xd2173130 phy_register_fixup +EXPORT_SYMBOL vmlinux 0xd220cf8a jiffies_to_timespec +EXPORT_SYMBOL vmlinux 0xd224039b qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0xd224e9f1 __vlan_find_dev_deep +EXPORT_SYMBOL vmlinux 0xd2329de3 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0xd251d7b0 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0xd2555f19 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd266efe7 mempool_create +EXPORT_SYMBOL vmlinux 0xd2727bb4 sock_setsockopt +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd2999aaa mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0xd2af138b reservation_ww_class +EXPORT_SYMBOL vmlinux 0xd2b9bad3 kern_unmount +EXPORT_SYMBOL vmlinux 0xd2c063ef pci_disable_ltr +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2e6a582 acpi_processor_preregister_performance +EXPORT_SYMBOL vmlinux 0xd30e7903 __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xd317527e ps2_begin_command +EXPORT_SYMBOL vmlinux 0xd317ef77 from_kuid_munged +EXPORT_SYMBOL vmlinux 0xd35e249a _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0xd35ee1b5 thaw_super +EXPORT_SYMBOL vmlinux 0xd378aa0d simple_release_fs +EXPORT_SYMBOL vmlinux 0xd3a3d2db do_splice_to +EXPORT_SYMBOL vmlinux 0xd3afde76 pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0xd3c82b70 qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0xd3dcab0b flex_array_alloc +EXPORT_SYMBOL vmlinux 0xd3e1bb67 __inode_permission +EXPORT_SYMBOL vmlinux 0xd3fd2582 pagevec_lookup +EXPORT_SYMBOL vmlinux 0xd41a2fce revalidate_disk +EXPORT_SYMBOL vmlinux 0xd442711d __break_lease +EXPORT_SYMBOL vmlinux 0xd44ea723 kmem_cache_create +EXPORT_SYMBOL vmlinux 0xd4578578 posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0xd4685b0b inet_addr_type +EXPORT_SYMBOL vmlinux 0xd4835ef8 dmi_check_system +EXPORT_SYMBOL vmlinux 0xd4bce007 pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0xd4c3b174 printk_emit +EXPORT_SYMBOL vmlinux 0xd4d523cf skb_append_datato_frags +EXPORT_SYMBOL vmlinux 0xd4fa30e6 tcp_sendpage +EXPORT_SYMBOL vmlinux 0xd50fef48 acpi_detach_data +EXPORT_SYMBOL vmlinux 0xd53899ff filemap_fault +EXPORT_SYMBOL vmlinux 0xd57390d5 generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0xd57f7477 blk_alloc_queue +EXPORT_SYMBOL vmlinux 0xd59b67a0 genl_notify +EXPORT_SYMBOL vmlinux 0xd59cf333 mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0xd59f7660 __elv_add_request +EXPORT_SYMBOL vmlinux 0xd5b4a629 pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0xd5f2172f del_timer_sync +EXPORT_SYMBOL vmlinux 0xd5f9c24f simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0xd607530e generic_ro_fops +EXPORT_SYMBOL vmlinux 0xd616683a ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0xd61cc6e9 inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0xd631854a jbd2_journal_start +EXPORT_SYMBOL vmlinux 0xd63432b0 vfs_rmdir +EXPORT_SYMBOL vmlinux 0xd6351cb0 dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0xd648e564 fb_match_mode +EXPORT_SYMBOL vmlinux 0xd6762002 pci_read_vpd +EXPORT_SYMBOL vmlinux 0xd6806ee7 n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd690ea10 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0xd6b33026 cpu_khz +EXPORT_SYMBOL vmlinux 0xd6c5701d netlink_set_err +EXPORT_SYMBOL vmlinux 0xd6de3fca netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0xd6e713b0 seq_open +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6f816dc devm_gpiod_get_index +EXPORT_SYMBOL vmlinux 0xd7036547 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0xd725513a __dev_get_by_index +EXPORT_SYMBOL vmlinux 0xd735aa8f blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0xd7534f9a generic_file_splice_read +EXPORT_SYMBOL vmlinux 0xd75b39bc scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0xd75c79df smp_call_function +EXPORT_SYMBOL vmlinux 0xd7775e45 pci_scan_bus_parented +EXPORT_SYMBOL vmlinux 0xd77a5aa5 __bitmap_and +EXPORT_SYMBOL vmlinux 0xd79934c8 poll_initwait +EXPORT_SYMBOL vmlinux 0xd79b5a02 allow_signal +EXPORT_SYMBOL vmlinux 0xd7bd3af2 add_wait_queue +EXPORT_SYMBOL vmlinux 0xd7cb3f2f acpi_gpiochip_request_interrupts +EXPORT_SYMBOL vmlinux 0xd7cce7c2 sock_wake_async +EXPORT_SYMBOL vmlinux 0xd7dd777b reserve_perfctr_nmi +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7ea7094 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xd7ee6478 jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0xd7f048e2 skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0xd8139bb1 mdiobus_register +EXPORT_SYMBOL vmlinux 0xd8529ded security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0xd85833cb __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0xd88e1cc1 init_special_inode +EXPORT_SYMBOL vmlinux 0xd88e7db4 qdisc_list_del +EXPORT_SYMBOL vmlinux 0xd89837cb xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8abe024 fget_light +EXPORT_SYMBOL vmlinux 0xd8afe249 aio_complete +EXPORT_SYMBOL vmlinux 0xd8bb774c blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0xd8c72cf0 ifla_policy +EXPORT_SYMBOL vmlinux 0xd8cef3e7 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0xd8cf2027 dmam_declare_coherent_memory +EXPORT_SYMBOL vmlinux 0xd8ded085 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xd8e484f0 register_chrdev_region +EXPORT_SYMBOL vmlinux 0xd8f5b150 eth_header_cache +EXPORT_SYMBOL vmlinux 0xd8fbf94d vfs_link +EXPORT_SYMBOL vmlinux 0xd9091363 acpi_install_notify_handler +EXPORT_SYMBOL vmlinux 0xd927078b try_module_get +EXPORT_SYMBOL vmlinux 0xd92afabe bitmap_clear +EXPORT_SYMBOL vmlinux 0xd94a8b31 tcf_hash_check +EXPORT_SYMBOL vmlinux 0xd94f183d xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0xd969b2c7 amd_e400_c1e_detected +EXPORT_SYMBOL vmlinux 0xd96bb448 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd986d603 md_integrity_register +EXPORT_SYMBOL vmlinux 0xd987b6c2 remove_proc_subtree +EXPORT_SYMBOL vmlinux 0xd990546c lg_local_unlock_cpu +EXPORT_SYMBOL vmlinux 0xd9a9bb30 getname +EXPORT_SYMBOL vmlinux 0xda0598e8 skb_free_datagram +EXPORT_SYMBOL vmlinux 0xda08c0d7 pcibios_get_irq_routing_table +EXPORT_SYMBOL vmlinux 0xda0c3849 idr_destroy +EXPORT_SYMBOL vmlinux 0xda18b29e sk_stop_timer +EXPORT_SYMBOL vmlinux 0xda1e56b6 alloc_disk +EXPORT_SYMBOL vmlinux 0xda1f0b84 ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xda2478d0 param_ops_short +EXPORT_SYMBOL vmlinux 0xda387079 inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda5ace5e dm_io +EXPORT_SYMBOL vmlinux 0xda7ca6cb fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xda8af7ad fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0xda8cc82e simple_unlink +EXPORT_SYMBOL vmlinux 0xda8fd495 isapnp_write_byte +EXPORT_SYMBOL vmlinux 0xda916b7b xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0xda9e0172 md_register_thread +EXPORT_SYMBOL vmlinux 0xdaa57ec3 totalhigh_pages +EXPORT_SYMBOL vmlinux 0xdae92656 rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0xdb0220f9 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0xdb08f508 inode_needs_sync +EXPORT_SYMBOL vmlinux 0xdb29565b kernel_getsockname +EXPORT_SYMBOL vmlinux 0xdb4dca05 scsi_host_put +EXPORT_SYMBOL vmlinux 0xdb602c65 blk_execute_rq +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb717dd8 genphy_read_status +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb83d2d6 blk_integrity_compare +EXPORT_SYMBOL vmlinux 0xdba44c03 alloc_mdio_bitbang +EXPORT_SYMBOL vmlinux 0xdbb981eb inet6_del_protocol +EXPORT_SYMBOL vmlinux 0xdbc591f9 kern_path_create +EXPORT_SYMBOL vmlinux 0xdbcb094f skb_dequeue +EXPORT_SYMBOL vmlinux 0xdbcd416e sysctl_ip_nonlocal_bind +EXPORT_SYMBOL vmlinux 0xdbe16c81 ip_queue_xmit +EXPORT_SYMBOL vmlinux 0xdbeff126 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0xdbf91dc1 ida_init +EXPORT_SYMBOL vmlinux 0xdbf9e49c freeze_bdev +EXPORT_SYMBOL vmlinux 0xdc047fc4 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc18c650 fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0xdc2f47e7 napi_complete +EXPORT_SYMBOL vmlinux 0xdc3602de put_disk +EXPORT_SYMBOL vmlinux 0xdc39d7aa dma_alloc_from_coherent +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc46954c security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0xdc519258 pci_dev_get +EXPORT_SYMBOL vmlinux 0xdc570f62 lg_global_unlock +EXPORT_SYMBOL vmlinux 0xdc57f532 acpi_install_gpe_handler +EXPORT_SYMBOL vmlinux 0xdc821980 tty_write_room +EXPORT_SYMBOL vmlinux 0xdc9668d5 dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0xdced2c08 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0xdcf061b8 __serio_register_driver +EXPORT_SYMBOL vmlinux 0xdcf52552 pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0xdd037503 dmam_free_noncoherent +EXPORT_SYMBOL vmlinux 0xdd0a2ba2 strlcat +EXPORT_SYMBOL vmlinux 0xdd12fd84 gen10g_config_advert +EXPORT_SYMBOL vmlinux 0xdd1a2871 down +EXPORT_SYMBOL vmlinux 0xdd333f7d mntput +EXPORT_SYMBOL vmlinux 0xdd353f7f cdev_add +EXPORT_SYMBOL vmlinux 0xdd84bfeb abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0xdd8d2533 lro_receive_skb +EXPORT_SYMBOL vmlinux 0xddbd86b6 acpi_bus_register_driver +EXPORT_SYMBOL vmlinux 0xddd0a0e0 kobject_init +EXPORT_SYMBOL vmlinux 0xde10eb10 param_set_invbool +EXPORT_SYMBOL vmlinux 0xde16dc16 tboot +EXPORT_SYMBOL vmlinux 0xde37100c bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0xde441684 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0xde53ed6e mutex_lock_killable +EXPORT_SYMBOL vmlinux 0xde72f3f7 dev_uc_init +EXPORT_SYMBOL vmlinux 0xde9360ba totalram_pages +EXPORT_SYMBOL vmlinux 0xde952443 fb_find_mode +EXPORT_SYMBOL vmlinux 0xde9ab668 elv_dispatch_add_tail +EXPORT_SYMBOL vmlinux 0xde9b17ed agp3_generic_fetch_size +EXPORT_SYMBOL vmlinux 0xdeb5cad7 pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0xded7514c __mmc_claim_host +EXPORT_SYMBOL vmlinux 0xdf031cc3 sock_rfree +EXPORT_SYMBOL vmlinux 0xdf06ce3b bitmap_startwrite +EXPORT_SYMBOL vmlinux 0xdf0da3cc acpi_get_devices +EXPORT_SYMBOL vmlinux 0xdf0e2122 jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0xdf10f213 agp_bind_memory +EXPORT_SYMBOL vmlinux 0xdf111a9e security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf48a0eb flex_array_put +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf5bbdec phy_stop +EXPORT_SYMBOL vmlinux 0xdf60cc27 __print_symbol +EXPORT_SYMBOL vmlinux 0xdf70ada5 blk_queue_invalidate_tags +EXPORT_SYMBOL vmlinux 0xdf75f1a4 alloc_xenballooned_pages +EXPORT_SYMBOL vmlinux 0xdf81786e vm_insert_pfn +EXPORT_SYMBOL vmlinux 0xdf85af55 keyring_clear +EXPORT_SYMBOL vmlinux 0xdf8716e6 __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0xdf8c695a __ndelay +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdf946591 neigh_seq_next +EXPORT_SYMBOL vmlinux 0xdf9c5ad0 vga_switcheroo_get_client_state +EXPORT_SYMBOL vmlinux 0xdfae3149 blk_integrity_is_initialized +EXPORT_SYMBOL vmlinux 0xdfb10b2a dev_uc_unsync +EXPORT_SYMBOL vmlinux 0xdfb6ff64 get_gendisk +EXPORT_SYMBOL vmlinux 0xdfc5169b slhc_init +EXPORT_SYMBOL vmlinux 0xdfd47284 ilookup5 +EXPORT_SYMBOL vmlinux 0xdfe19f09 __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xe00b4984 module_layout +EXPORT_SYMBOL vmlinux 0xe020bf78 sock_update_classid +EXPORT_SYMBOL vmlinux 0xe024a5b9 bdi_register +EXPORT_SYMBOL vmlinux 0xe047ecfb security_inode_permission +EXPORT_SYMBOL vmlinux 0xe04f7caa dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xe058ae19 phy_detach +EXPORT_SYMBOL vmlinux 0xe06141e9 security_sk_clone +EXPORT_SYMBOL vmlinux 0xe075d6eb iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xe080a78b blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0xe0a16a20 intel_scu_ipc_i2c_cntrl +EXPORT_SYMBOL vmlinux 0xe0a5e791 mnt_pin +EXPORT_SYMBOL vmlinux 0xe0ac8bd2 acpi_bus_generate_netlink_event +EXPORT_SYMBOL vmlinux 0xe0ae0333 pci_get_device +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0fa83f2 ipmi_register_for_cmd +EXPORT_SYMBOL vmlinux 0xe108406b simple_empty +EXPORT_SYMBOL vmlinux 0xe139b8f4 genphy_setup_forced +EXPORT_SYMBOL vmlinux 0xe13cd8a7 dmi_name_in_vendors +EXPORT_SYMBOL vmlinux 0xe1421ccf set_pages_array_uc +EXPORT_SYMBOL vmlinux 0xe1761617 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xe191d630 scsi_put_command +EXPORT_SYMBOL vmlinux 0xe1a1894f get_phy_device +EXPORT_SYMBOL vmlinux 0xe1a2e974 rtnl_unicast +EXPORT_SYMBOL vmlinux 0xe1c5ee8b mdio_bus_type +EXPORT_SYMBOL vmlinux 0xe1cad739 dump_trace +EXPORT_SYMBOL vmlinux 0xe1cae912 pnp_register_driver +EXPORT_SYMBOL vmlinux 0xe200f872 secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xe2034333 acpi_evaluate_hotplug_ost +EXPORT_SYMBOL vmlinux 0xe2151929 __xfrm_init_state +EXPORT_SYMBOL vmlinux 0xe216f27e ipv4_specific +EXPORT_SYMBOL vmlinux 0xe21bb086 blk_get_request +EXPORT_SYMBOL vmlinux 0xe22e1e76 md_check_recovery +EXPORT_SYMBOL vmlinux 0xe23ae481 blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe24abfc5 fasync_helper +EXPORT_SYMBOL vmlinux 0xe24d3a97 jiffies_64 +EXPORT_SYMBOL vmlinux 0xe255e065 twl6040_set_bits +EXPORT_SYMBOL vmlinux 0xe2735e7d neigh_direct_output +EXPORT_SYMBOL vmlinux 0xe278703b __d_drop +EXPORT_SYMBOL vmlinux 0xe27dafb1 tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0xe2816235 vfs_open +EXPORT_SYMBOL vmlinux 0xe29e1d0e out_of_line_wait_on_atomic_t +EXPORT_SYMBOL vmlinux 0xe2b05d3e pci_get_subsys +EXPORT_SYMBOL vmlinux 0xe2cb65c5 kmalloc_caches +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2dcfbda nla_reserve +EXPORT_SYMBOL vmlinux 0xe2e8065e memdup_user +EXPORT_SYMBOL vmlinux 0xe2fae716 kmemdup +EXPORT_SYMBOL vmlinux 0xe319eb24 acpi_pci_osc_control_set +EXPORT_SYMBOL vmlinux 0xe31cca58 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0xe34c7c3a inet_shutdown +EXPORT_SYMBOL vmlinux 0xe36d68b4 agp_generic_destroy_pages +EXPORT_SYMBOL vmlinux 0xe3750966 sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0xe377ee48 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0xe3c3b6da netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0xe3c603e0 input_unregister_handle +EXPORT_SYMBOL vmlinux 0xe3cf7d28 pm860x_page_bulk_write +EXPORT_SYMBOL vmlinux 0xe3d6f284 fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xe3f54a90 scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xe4189ebd udp_del_offload +EXPORT_SYMBOL vmlinux 0xe41a06d5 napi_gro_frags +EXPORT_SYMBOL vmlinux 0xe43fc9a7 dev_get_drvdata +EXPORT_SYMBOL vmlinux 0xe44ef7e8 handle_edge_irq +EXPORT_SYMBOL vmlinux 0xe45f60d8 __wake_up +EXPORT_SYMBOL vmlinux 0xe47f937b bio_map_kern +EXPORT_SYMBOL vmlinux 0xe484e35f ioread32 +EXPORT_SYMBOL vmlinux 0xe4885323 nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0xe4ba74bb ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0xe4c2551d sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0xe4f4665b ipmi_validate_addr +EXPORT_SYMBOL vmlinux 0xe4f53c6f writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xe4f74cc8 tty_register_device +EXPORT_SYMBOL vmlinux 0xe4fe0a81 __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0xe50e59ab kunmap_high +EXPORT_SYMBOL vmlinux 0xe50f904f intel_scu_ipc_ioread16 +EXPORT_SYMBOL vmlinux 0xe5122890 flow_cache_genid +EXPORT_SYMBOL vmlinux 0xe5208918 acpi_gbl_FADT +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe524e505 dcache_readdir +EXPORT_SYMBOL vmlinux 0xe530d757 acpi_clear_gpe +EXPORT_SYMBOL vmlinux 0xe553c275 fddi_type_trans +EXPORT_SYMBOL vmlinux 0xe55a2352 sock_get_timestamp +EXPORT_SYMBOL vmlinux 0xe5647034 dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xe569b43b unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xe57046ab sget +EXPORT_SYMBOL vmlinux 0xe57878a1 in6_pton +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe5960615 write_dirty_buffer +EXPORT_SYMBOL vmlinux 0xe59991e1 user_path_at +EXPORT_SYMBOL vmlinux 0xe59a0119 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0xe5b7e6bf scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0xe5bcf16b padata_add_cpu +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5c98cb1 tcp_gro_complete +EXPORT_SYMBOL vmlinux 0xe5d0773e blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0xe5d1efa1 file_remove_suid +EXPORT_SYMBOL vmlinux 0xe5ebdd29 dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0xe5ed5467 xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xe5f42f9b eisa_bus_type +EXPORT_SYMBOL vmlinux 0xe5f6c652 ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0xe60b4808 skb_copy +EXPORT_SYMBOL vmlinux 0xe612bca0 proto_unregister +EXPORT_SYMBOL vmlinux 0xe62c0097 thaw_bdev +EXPORT_SYMBOL vmlinux 0xe63dd663 tty_port_close +EXPORT_SYMBOL vmlinux 0xe64d98fe rdmsr_safe_regs +EXPORT_SYMBOL vmlinux 0xe67ee9da __alloc_skb +EXPORT_SYMBOL vmlinux 0xe697d108 __blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe697dae0 blk_register_region +EXPORT_SYMBOL vmlinux 0xe69e3a80 blk_mq_alloc_single_hw_queue +EXPORT_SYMBOL vmlinux 0xe6a2e29b __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xe6ab72a6 ipmi_set_my_LUN +EXPORT_SYMBOL vmlinux 0xe6b3fe21 interruptible_sleep_on_timeout +EXPORT_SYMBOL vmlinux 0xe6ba2e16 dma_mmap_from_coherent +EXPORT_SYMBOL vmlinux 0xe6dae965 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0xe6ebc016 key_create_or_update +EXPORT_SYMBOL vmlinux 0xe6fbe430 can_do_mlock +EXPORT_SYMBOL vmlinux 0xe716baed acpi_unregister_ioapic +EXPORT_SYMBOL vmlinux 0xe72c356d alloc_pci_dev +EXPORT_SYMBOL vmlinux 0xe732a495 simple_transaction_get +EXPORT_SYMBOL vmlinux 0xe749696c generic_setxattr +EXPORT_SYMBOL vmlinux 0xe7722171 flex_array_free +EXPORT_SYMBOL vmlinux 0xe781b5f6 intel_scu_ipc_readv +EXPORT_SYMBOL vmlinux 0xe78e0e31 input_allocate_device +EXPORT_SYMBOL vmlinux 0xe78f15f6 __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0xe798d71c cpu_core_map +EXPORT_SYMBOL vmlinux 0xe7a664c4 nf_hooks +EXPORT_SYMBOL vmlinux 0xe7a81967 audit_log_secctx +EXPORT_SYMBOL vmlinux 0xe7a8f01f ip_ct_attach +EXPORT_SYMBOL vmlinux 0xe7b7974f __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7e71145 swiotlb_sync_single_for_device +EXPORT_SYMBOL vmlinux 0xe80564f2 dquot_commit +EXPORT_SYMBOL vmlinux 0xe810697d mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0xe8157ba8 mmc_gpio_free_ro +EXPORT_SYMBOL vmlinux 0xe818b745 napi_gro_flush +EXPORT_SYMBOL vmlinux 0xe8409628 dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0xe840a2e0 d_set_d_op +EXPORT_SYMBOL vmlinux 0xe851bb05 queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xe85ba614 agp_free_memory +EXPORT_SYMBOL vmlinux 0xe8794ce1 slhc_toss +EXPORT_SYMBOL vmlinux 0xe887354a seq_read +EXPORT_SYMBOL vmlinux 0xe8881645 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0xe88e7a93 lg_global_lock +EXPORT_SYMBOL vmlinux 0xe898bfba crc32_le_combine +EXPORT_SYMBOL vmlinux 0xe8a1b4ec vfs_write +EXPORT_SYMBOL vmlinux 0xe8a553b6 tcp_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xe8acf461 scsi_device_put +EXPORT_SYMBOL vmlinux 0xe8b63ace radix_tree_range_tag_if_tagged +EXPORT_SYMBOL vmlinux 0xe8b68849 wrmsr_on_cpus +EXPORT_SYMBOL vmlinux 0xe8bea3bc qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xe8e18a53 mdiobus_scan +EXPORT_SYMBOL vmlinux 0xe9065128 vga_switcheroo_init_domain_pm_ops +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe939f82e vga_switcheroo_unregister_client +EXPORT_SYMBOL vmlinux 0xe948145f pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe96dacd6 d_alloc_name +EXPORT_SYMBOL vmlinux 0xe97ea102 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0xe9870586 agp_collect_device_status +EXPORT_SYMBOL vmlinux 0xe997667b wrmsr_on_cpu +EXPORT_SYMBOL vmlinux 0xe9bc695b iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0xe9e1f5b8 register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xe9f287c1 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xe9f9f67f inode_init_always +EXPORT_SYMBOL vmlinux 0xea04c978 soft_cursor +EXPORT_SYMBOL vmlinux 0xea054b22 nla_policy_len +EXPORT_SYMBOL vmlinux 0xea0e68f0 tcf_hash_create +EXPORT_SYMBOL vmlinux 0xea10212a int_to_scsilun +EXPORT_SYMBOL vmlinux 0xea10655a __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xea16dd4c tcp_destroy_cgroup +EXPORT_SYMBOL vmlinux 0xea1ce092 pnp_possible_config +EXPORT_SYMBOL vmlinux 0xea332dc9 blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0xea481fcd dma_sync_wait +EXPORT_SYMBOL vmlinux 0xea59feb9 tty_port_put +EXPORT_SYMBOL vmlinux 0xea6aa544 jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0xea7987f1 key_update +EXPORT_SYMBOL vmlinux 0xea7b8a44 acpi_install_interface +EXPORT_SYMBOL vmlinux 0xea7e032d nf_log_packet +EXPORT_SYMBOL vmlinux 0xea90bdd3 acpi_attach_data +EXPORT_SYMBOL vmlinux 0xeac10042 inet6_add_offload +EXPORT_SYMBOL vmlinux 0xeae36760 udp_proc_register +EXPORT_SYMBOL vmlinux 0xeae3dfd6 __const_udelay +EXPORT_SYMBOL vmlinux 0xeae46c40 agp_generic_free_by_type +EXPORT_SYMBOL vmlinux 0xeaf673ad kern_path +EXPORT_SYMBOL vmlinux 0xeb103ff5 skb_store_bits +EXPORT_SYMBOL vmlinux 0xeb122a6d blk_put_queue +EXPORT_SYMBOL vmlinux 0xeb1a1824 scsi_execute_req_flags +EXPORT_SYMBOL vmlinux 0xeb1bb6ef inet_select_addr +EXPORT_SYMBOL vmlinux 0xeb24b061 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb55a931 __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xeb6b97a0 del_gendisk +EXPORT_SYMBOL vmlinux 0xeb7c97dc nf_ct_attach +EXPORT_SYMBOL vmlinux 0xeb837800 bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0xebcd6351 phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0xebd86001 fib_default_rule_add +EXPORT_SYMBOL vmlinux 0xebdbe48c radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0xebee940d generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0xebf0b31c udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0xebf91846 nlmsg_notify +EXPORT_SYMBOL vmlinux 0xec315d34 pci_reenable_device +EXPORT_SYMBOL vmlinux 0xec3b95a3 netpoll_parse_options +EXPORT_SYMBOL vmlinux 0xec46dec2 unregister_key_type +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec7425e0 pipe_to_file +EXPORT_SYMBOL vmlinux 0xec82f2d2 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0xecaf34bb from_kgid +EXPORT_SYMBOL vmlinux 0xecb43d6f sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0xecb721f1 try_wait_for_completion +EXPORT_SYMBOL vmlinux 0xeccd3e0c acpi_handle_printk +EXPORT_SYMBOL vmlinux 0xecd6d777 flush_signals +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xed0e9196 try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xed0e93b3 d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0xed1ead8d jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0xed227c0f scm_detach_fds +EXPORT_SYMBOL vmlinux 0xed3b4c3b pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0xed471143 pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xed597524 qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xed5eaaa5 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0xed7e1295 gen_pool_create +EXPORT_SYMBOL vmlinux 0xed92d844 set_bdi_congested +EXPORT_SYMBOL vmlinux 0xed93f29e __kunmap_atomic +EXPORT_SYMBOL vmlinux 0xed9f9a20 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedc4dce8 prepare_creds +EXPORT_SYMBOL vmlinux 0xedd70c88 bio_integrity_tag_size +EXPORT_SYMBOL vmlinux 0xede170f3 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0xedfab691 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0xee04728c ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0xee26e351 inet_frags_init +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee2ec5b5 pipe_lock +EXPORT_SYMBOL vmlinux 0xee54dd4c kill_pgrp +EXPORT_SYMBOL vmlinux 0xee7eb9e1 pnp_platform_devices +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xee9533d8 __neigh_event_send +EXPORT_SYMBOL vmlinux 0xeea7dce7 dqput +EXPORT_SYMBOL vmlinux 0xeea9dbaf bitmap_bitremap +EXPORT_SYMBOL vmlinux 0xeeb3f9c9 set_groups +EXPORT_SYMBOL vmlinux 0xeed2aaa9 km_new_mapping +EXPORT_SYMBOL vmlinux 0xeef161aa groups_free +EXPORT_SYMBOL vmlinux 0xeef26652 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0xeefb2988 serial8250_do_pm +EXPORT_SYMBOL vmlinux 0xeefd025f netdev_warn +EXPORT_SYMBOL vmlinux 0xeefe3963 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0xef0391d3 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0xef0da65f scsi_finish_command +EXPORT_SYMBOL vmlinux 0xef0db031 redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0xef1b3968 devm_clk_get +EXPORT_SYMBOL vmlinux 0xef1d35b7 acpi_install_address_space_handler +EXPORT_SYMBOL vmlinux 0xef308cce xfrm_prepare_input +EXPORT_SYMBOL vmlinux 0xef77ac46 truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0xef8221a3 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0xef9aedfc boot_option_idle_override +EXPORT_SYMBOL vmlinux 0xefac117c tcp_hashinfo +EXPORT_SYMBOL vmlinux 0xefd567ce jbd2__journal_start +EXPORT_SYMBOL vmlinux 0xefdd70ce security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0xefe099c3 acpi_get_event_status +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf0040079 rwsem_down_read_failed +EXPORT_SYMBOL vmlinux 0xf0187927 __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0xf01f1f62 __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0xf02baa4c jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0xf05ffa15 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0xf0619801 timekeeping_clocktai +EXPORT_SYMBOL vmlinux 0xf065f629 ioread16be +EXPORT_SYMBOL vmlinux 0xf076d1ab mfd_cell_enable +EXPORT_SYMBOL vmlinux 0xf07e5a72 md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0xf087137d __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0xf09b4091 mmc_add_host +EXPORT_SYMBOL vmlinux 0xf09de776 get_random_int +EXPORT_SYMBOL vmlinux 0xf09e6296 sk_dst_check +EXPORT_SYMBOL vmlinux 0xf0adbf1f neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0xf0be11d5 get_disk +EXPORT_SYMBOL vmlinux 0xf0c4c181 blk_free_tags +EXPORT_SYMBOL vmlinux 0xf0ce7d50 proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0xf0d68ed6 clk_register_clkdevs +EXPORT_SYMBOL vmlinux 0xf0da5992 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xf0ef15b4 list_sort +EXPORT_SYMBOL vmlinux 0xf0f1246c kvasprintf +EXPORT_SYMBOL vmlinux 0xf0fdf6cb __stack_chk_fail +EXPORT_SYMBOL vmlinux 0xf100416a remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xf10de535 ioread8 +EXPORT_SYMBOL vmlinux 0xf11543ff find_first_zero_bit +EXPORT_SYMBOL vmlinux 0xf12d331c lg_local_lock +EXPORT_SYMBOL vmlinux 0xf12de761 fsnotify_alloc_group +EXPORT_SYMBOL vmlinux 0xf133e57b netif_rx +EXPORT_SYMBOL vmlinux 0xf13feb57 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0xf141ce5e netpoll_rx_enable +EXPORT_SYMBOL vmlinux 0xf1435298 i2c_release_client +EXPORT_SYMBOL vmlinux 0xf147dcb2 hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0xf1785174 blk_queue_merge_bvec +EXPORT_SYMBOL vmlinux 0xf18242e1 atomic64_set_cx8 +EXPORT_SYMBOL vmlinux 0xf18588c5 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0xf18ae3fb registered_fb +EXPORT_SYMBOL vmlinux 0xf18fa2cc unregister_nls +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf19a0758 blk_end_request +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1deabf2 div64_u64 +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1ed40be netif_carrier_on +EXPORT_SYMBOL vmlinux 0xf1faac3a _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0xf202c5cb radix_tree_insert +EXPORT_SYMBOL vmlinux 0xf20dabd8 free_irq +EXPORT_SYMBOL vmlinux 0xf2357254 acpi_evaluate_integer +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf2576cb9 ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL vmlinux 0xf26bdd79 udp_ioctl +EXPORT_SYMBOL vmlinux 0xf26f38c0 __lru_cache_add +EXPORT_SYMBOL vmlinux 0xf28ed6e2 machine_to_phys_nr +EXPORT_SYMBOL vmlinux 0xf2997713 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0xf2a0af8f backlight_device_registered +EXPORT_SYMBOL vmlinux 0xf2b1ac8e __getnstimeofday +EXPORT_SYMBOL vmlinux 0xf2e090c2 __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0xf312cb9d ucs2_strsize +EXPORT_SYMBOL vmlinux 0xf313da4e sha_transform +EXPORT_SYMBOL vmlinux 0xf32055e7 dev_base_lock +EXPORT_SYMBOL vmlinux 0xf32ff867 mmc_request_done +EXPORT_SYMBOL vmlinux 0xf332eca2 blk_get_backing_dev_info +EXPORT_SYMBOL vmlinux 0xf333ba0b dm_kobject_release +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf354f43b audit_log +EXPORT_SYMBOL vmlinux 0xf37260ab _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0xf376368e netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0xf3892553 eth_header_cache_update +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf396cd21 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0xf3986b06 acpi_os_map_generic_address +EXPORT_SYMBOL vmlinux 0xf39d747f input_register_handler +EXPORT_SYMBOL vmlinux 0xf3ad47df __dquot_free_space +EXPORT_SYMBOL vmlinux 0xf3bf0bce __bitmap_complement +EXPORT_SYMBOL vmlinux 0xf40b2297 __crypto_memneq +EXPORT_SYMBOL vmlinux 0xf40e4c91 rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0xf441ac43 ioread8_rep +EXPORT_SYMBOL vmlinux 0xf4512ba1 serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0xf461ab92 pci_target_state +EXPORT_SYMBOL vmlinux 0xf465467f blk_bio_map_sg +EXPORT_SYMBOL vmlinux 0xf49cf33e netdev_emerg +EXPORT_SYMBOL vmlinux 0xf4a055ca splice_from_pipe_next +EXPORT_SYMBOL vmlinux 0xf4a5c213 avail_to_resrv_perfctr_nmi_bit +EXPORT_SYMBOL vmlinux 0xf4b754fd acpi_resources_are_enforced +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4ee225c max8925_reg_write +EXPORT_SYMBOL vmlinux 0xf4ee37f4 sync_blockdev +EXPORT_SYMBOL vmlinux 0xf4f0dde5 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf4f19e51 downgrade_write +EXPORT_SYMBOL vmlinux 0xf502d273 acpi_get_current_resources +EXPORT_SYMBOL vmlinux 0xf5124a1d inet_stream_ops +EXPORT_SYMBOL vmlinux 0xf51ae235 touch_nmi_watchdog +EXPORT_SYMBOL vmlinux 0xf5218ef5 generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0xf52cc613 skb_tx_error +EXPORT_SYMBOL vmlinux 0xf536d22e acpi_set_gpe_wake_mask +EXPORT_SYMBOL vmlinux 0xf53c92b6 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf55258f0 mem_cgroup_subsys +EXPORT_SYMBOL vmlinux 0xf56783b1 i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0xf5a0d094 bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0xf5b10e67 acpi_install_global_event_handler +EXPORT_SYMBOL vmlinux 0xf5c05914 generic_segment_checks +EXPORT_SYMBOL vmlinux 0xf5eaa7d5 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0xf5eb86ea blk_verify_command +EXPORT_SYMBOL vmlinux 0xf606a17c __scm_destroy +EXPORT_SYMBOL vmlinux 0xf6261159 agp_generic_destroy_page +EXPORT_SYMBOL vmlinux 0xf62770a2 elv_add_request +EXPORT_SYMBOL vmlinux 0xf62b2228 framebuffer_release +EXPORT_SYMBOL vmlinux 0xf62b8855 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xf6388c56 sysctl_ip_default_ttl +EXPORT_SYMBOL vmlinux 0xf63d5a2b check_submounts_and_drop +EXPORT_SYMBOL vmlinux 0xf650cf22 icmpv6_send +EXPORT_SYMBOL vmlinux 0xf6557c6a release_sock +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf6860679 pci_scan_slot +EXPORT_SYMBOL vmlinux 0xf68687be __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xf6a32126 pci_clear_master +EXPORT_SYMBOL vmlinux 0xf6a61700 d_instantiate_no_diralias +EXPORT_SYMBOL vmlinux 0xf6b771f3 scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0xf6bb4729 color_table +EXPORT_SYMBOL vmlinux 0xf6d2fe0f skb_unlink +EXPORT_SYMBOL vmlinux 0xf6e57ae3 input_set_abs_params +EXPORT_SYMBOL vmlinux 0xf6e83671 force_sig +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6f8e039 done_path_create +EXPORT_SYMBOL vmlinux 0xf71b7c6f serio_open +EXPORT_SYMBOL vmlinux 0xf726d02f atomic64_add_unless_cx8 +EXPORT_SYMBOL vmlinux 0xf741c793 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xf745cb16 atomic64_sub_return_cx8 +EXPORT_SYMBOL vmlinux 0xf7465e77 agp_generic_create_gatt_table +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf76ece73 kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0xf778638a ping_prot +EXPORT_SYMBOL vmlinux 0xf7886b92 netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0xf78c595d vfs_statfs +EXPORT_SYMBOL vmlinux 0xf7e37635 __wait_on_bit +EXPORT_SYMBOL vmlinux 0xf7f0551f phy_start_interrupts +EXPORT_SYMBOL vmlinux 0xf803fe39 bitmap_set +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf81f5924 dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0xf827cb83 free_reserved_area +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82afc01 remove_arg_zero +EXPORT_SYMBOL vmlinux 0xf82eacf7 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf844cf4a __module_put_and_exit +EXPORT_SYMBOL vmlinux 0xf851e11a security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0xf86d3e18 udp_disconnect +EXPORT_SYMBOL vmlinux 0xf8858293 skb_push +EXPORT_SYMBOL vmlinux 0xf88e0ee2 acpi_get_table_header +EXPORT_SYMBOL vmlinux 0xf89e47b5 tcp_poll +EXPORT_SYMBOL vmlinux 0xf8bc1f78 tty_port_close_end +EXPORT_SYMBOL vmlinux 0xf8caa9b8 blk_start_request +EXPORT_SYMBOL vmlinux 0xf8cad3c8 register_md_personality +EXPORT_SYMBOL vmlinux 0xf8de2525 sock_alloc_file +EXPORT_SYMBOL vmlinux 0xf8de8e21 ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0xf92aa376 generic_pipe_buf_steal +EXPORT_SYMBOL vmlinux 0xf9348cbc xz_dec_run +EXPORT_SYMBOL vmlinux 0xf940a328 __next_cpu +EXPORT_SYMBOL vmlinux 0xf9438eee agp_copy_info +EXPORT_SYMBOL vmlinux 0xf9461e5e gen_replace_estimator +EXPORT_SYMBOL vmlinux 0xf94d448e tcf_action_exec +EXPORT_SYMBOL vmlinux 0xf95812ef __put_cred +EXPORT_SYMBOL vmlinux 0xf97456ea _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xf997d3da register_netdev +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9c367e0 iov_pages +EXPORT_SYMBOL vmlinux 0xf9ca4ef6 pcie_port_service_register +EXPORT_SYMBOL vmlinux 0xf9dc0fb7 unregister_exec_domain +EXPORT_SYMBOL vmlinux 0xf9e73082 scnprintf +EXPORT_SYMBOL vmlinux 0xf9e81ba1 generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0xf9f039fb blk_init_queue_node +EXPORT_SYMBOL vmlinux 0xf9fac970 sock_no_poll +EXPORT_SYMBOL vmlinux 0xfa01c884 max8925_bulk_read +EXPORT_SYMBOL vmlinux 0xfa2c1f31 netif_napi_add +EXPORT_SYMBOL vmlinux 0xfa2caa3a nf_register_hook +EXPORT_SYMBOL vmlinux 0xfa2e8a38 pci_map_biosrom +EXPORT_SYMBOL vmlinux 0xfa30957c mempool_free +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa66b238 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0xfa7f3156 wl12xx_get_platform_data +EXPORT_SYMBOL vmlinux 0xfa951e6c __frontswap_store +EXPORT_SYMBOL vmlinux 0xfaa4d8fa pnp_activate_dev +EXPORT_SYMBOL vmlinux 0xfaaeb090 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfaca6b61 security_path_truncate +EXPORT_SYMBOL vmlinux 0xfadad2ed sync_inode_metadata +EXPORT_SYMBOL vmlinux 0xfae67b1f cap_mmap_addr +EXPORT_SYMBOL vmlinux 0xfaf98462 bitrev32 +EXPORT_SYMBOL vmlinux 0xfb0443fb acpi_get_parent +EXPORT_SYMBOL vmlinux 0xfb0cecfd vm_event_states +EXPORT_SYMBOL vmlinux 0xfb11c7ad seq_path +EXPORT_SYMBOL vmlinux 0xfb130676 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0xfb56cbf7 inet_frags_fini +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb80c7a0 acpi_walk_namespace +EXPORT_SYMBOL vmlinux 0xfb94103e __clzdi2 +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbcfae02 dev_activate +EXPORT_SYMBOL vmlinux 0xfbe079ed register_qdisc +EXPORT_SYMBOL vmlinux 0xfbfcc62f blk_init_tags +EXPORT_SYMBOL vmlinux 0xfc02b7ad sysctl_tcp_wmem +EXPORT_SYMBOL vmlinux 0xfc07536c block_write_full_page +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc562165 acpi_run_osc +EXPORT_SYMBOL vmlinux 0xfc65459a kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0xfc872fd1 get_ibs_caps +EXPORT_SYMBOL vmlinux 0xfc94ca3c netpoll_cleanup +EXPORT_SYMBOL vmlinux 0xfc967e2e __memcg_kmem_get_cache +EXPORT_SYMBOL vmlinux 0xfc98e31d scsi_reset_provider +EXPORT_SYMBOL vmlinux 0xfcaa04a0 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xfcac0d40 acpi_install_interface_handler +EXPORT_SYMBOL vmlinux 0xfcb77cfd ipmi_free_recv_msg +EXPORT_SYMBOL vmlinux 0xfcc2a43c utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0xfcda07ac dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfcf1436b blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0xfcfa03ff fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0xfd0192da gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0xfd2bbd40 set_pages_nx +EXPORT_SYMBOL vmlinux 0xfd485ec8 seq_printf +EXPORT_SYMBOL vmlinux 0xfd50905f mnt_unpin +EXPORT_SYMBOL vmlinux 0xfd53dbd0 bio_add_pc_page +EXPORT_SYMBOL vmlinux 0xfd6293c2 boot_tvec_bases +EXPORT_SYMBOL vmlinux 0xfd99623a ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xfda0dbe8 ftrace_print_hex_seq +EXPORT_SYMBOL vmlinux 0xfdb683b8 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0xfdb9b629 ioread32be +EXPORT_SYMBOL vmlinux 0xfdbe0288 pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0xfde81316 noop_fsync +EXPORT_SYMBOL vmlinux 0xfdee7d42 _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0xfdfc0b3b fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0xfdfd569c nf_reinject +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe047ce6 acpi_enter_sleep_state +EXPORT_SYMBOL vmlinux 0xfe20a87f mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0xfe24b965 unlink_framebuffer +EXPORT_SYMBOL vmlinux 0xfe25c679 agp_create_memory +EXPORT_SYMBOL vmlinux 0xfe2a4159 dqget +EXPORT_SYMBOL vmlinux 0xfe57f7e2 mutex_lock +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe695450 dcache_dir_close +EXPORT_SYMBOL vmlinux 0xfe75708f try_to_release_page +EXPORT_SYMBOL vmlinux 0xfe7c4287 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0xfe9710f6 twl6040_reg_read +EXPORT_SYMBOL vmlinux 0xfe9ebbbb acpi_osi_is_win8 +EXPORT_SYMBOL vmlinux 0xfed05b5d should_remove_suid +EXPORT_SYMBOL vmlinux 0xfed3e5c9 vlan_untag +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfee51f30 devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0xfee5b019 release_firmware +EXPORT_SYMBOL vmlinux 0xfeeea5c1 set_pages_wb +EXPORT_SYMBOL vmlinux 0xfef232c2 pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0xfef96e23 __scsi_print_command +EXPORT_SYMBOL vmlinux 0xff0c2307 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0xff126c21 would_dump +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff3271e4 __ip_select_ident +EXPORT_SYMBOL vmlinux 0xff45e440 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0xff475912 padata_stop +EXPORT_SYMBOL vmlinux 0xff480992 dump_fpu +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff7559e4 ioport_resource +EXPORT_SYMBOL vmlinux 0xff7eb67a generic_read_dir +EXPORT_SYMBOL vmlinux 0xff81210c dst_alloc +EXPORT_SYMBOL vmlinux 0xff8b7502 copy_strings_kernel +EXPORT_SYMBOL vmlinux 0xff9ca065 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0xffab8e5a give_up_console +EXPORT_SYMBOL vmlinux 0xffd1fd6d netdev_master_upper_dev_link_private +EXPORT_SYMBOL vmlinux 0xffd5a395 default_wake_function +EXPORT_SYMBOL vmlinux 0xfffa85d8 blk_queue_max_write_same_sectors +EXPORT_SYMBOL_GPL arch/x86/crypto/aes-i586 0x7060bf0a crypto_aes_encrypt_x86 +EXPORT_SYMBOL_GPL arch/x86/crypto/aes-i586 0xe409b491 crypto_aes_decrypt_x86 +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x4c41f24d glue_xts_crypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x6a12d14e glue_cbc_decrypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x6d42dbe1 glue_ctr_crypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x8f02ac4d glue_xts_crypt_128bit_one +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xb0a6b26a glue_ecb_crypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xe419f5e1 glue_ctr_crypt_final_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xfe931438 glue_cbc_encrypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-i586 0x28afd262 twofish_enc_blk +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-i586 0x6f068d90 twofish_dec_blk +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x00aaf935 kvm_disable_tdp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x03d214fc gfn_to_pfn_async +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x05e7e783 kvm_get_guest_memory_type +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x07415e79 kvm_read_guest_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x078e5415 kvm_valid_efer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0a565a29 kvm_vcpu_cache +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0e10ed9f kvm_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0f4e9adb fx_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x10b17c5f kvm_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x11b3a583 handle_mmio_page_fault_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x11c1e7eb kvm_apic_set_eoi_accelerated +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x147a42ae kvm_get_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1589a006 kvm_queue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x17b57c09 kvm_emulate_hypercall +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x18e257ab __tracepoint_kvm_nested_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1a4342a5 __tracepoint_kvm_invlpga +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1cadda06 kvm_clear_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1cfe78d1 kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x20de5193 kvm_disable_largepages +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x22185d3c gfn_to_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2433d6fd __tracepoint_kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x24f861a7 kvm_init_shadow_ept_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x25aafc75 mark_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2b3e7755 kvm_set_cr3 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2d38a5ec kvm_mmu_invlpg +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2f03e1ba kvm_vcpu_kick +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2f636c31 kvm_spurious_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2ff31747 kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x30c20abd kvm_x86_ops +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x317c3ed1 kvm_set_xcr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x317f9e6b kvm_enable_efer_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x34296619 kvm_get_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3ab1d7f9 kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3ad0a49c kvm_set_cr4 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3de08404 kvm_set_shared_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3ede8b73 kvm_complete_insn_gp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3ee59a92 __tracepoint_kvm_skinit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x40e908ff kvm_read_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x422598a5 kvm_get_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x44ec8054 kvm_arch_register_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x525179ee kvm_emulate_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x527e8f58 kvm_write_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x57d2d608 kvm_after_handle_nmi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5e853331 kvm_read_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5ee492ca kvm_mmu_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6062912c kvm_put_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x64edd98b kvm_mmu_unprotect_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6515d284 kvm_find_cpuid_entry +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x669da1fd kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x671d59e0 kvm_release_page_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x688e5e18 kvm_before_handle_nmi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6afb6bc4 kvm_requeue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x71636f7e kvm_task_switch +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7584d2c6 kvm_init_shadow_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x75aa1eb8 kvm_set_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x76bfd247 kvm_get_dirty_log +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x779678a0 kvm_get_cs_db_l_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x78485eea kvm_vcpu_uninit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7856140b kvm_mmu_flush_tlb +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7aa64803 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7c9245ba kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7d4a8b0d kvm_arch_has_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7f3c445f kvm_emulate_halt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x82f99401 kvm_read_guest_page_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x831327da kvm_max_guest_tsc_khz +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x83693f63 kvm_inject_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x84ceb28c __tracepoint_kvm_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x84d5f079 kvm_write_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x84f0eacf x86_emulate_instruction +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x88a9b4e9 gfn_to_hva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8bb03e6e __tracepoint_kvm_write_tsc_offset +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8c9c04f8 kvm_mmu_reset_context +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8ce4f3ab kvm_enable_tdp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8da01274 kvm_get_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8e1cd06f kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x997e899d gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x99cfceef kvm_requeue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9a216313 kvm_define_shared_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9a91293e kvm_get_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9cf57560 kvm_apic_update_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9d66140a __kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9e043bbe kvm_set_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9f650c91 kvm_set_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9fde67e4 kvm_fast_pio_out +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa0b1815d kvm_set_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa0ec3a0a gfn_to_hva_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa27e0ef2 gfn_to_pfn_prot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa5dc48e9 kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa9cac702 kvm_is_visible_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xaaa62d36 kvm_is_linear_rip +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xaac7c868 __tracepoint_kvm_nested_intr_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xacf7f97c gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xada6e459 gfn_to_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xae193a11 kvm_queue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xae29a84d kvm_get_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xae9f02a6 kvm_get_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xaf36b911 gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb284eed4 __tracepoint_kvm_nested_vmexit_inject +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb2a65cca __tracepoint_kvm_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb33d47c1 kvm_inject_pending_timer_irqs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb51ddb84 kvm_emulate_wbinvd +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb8bbd64f kvm_apic_write_nodecode +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xba1f0cf8 kvm_lapic_set_eoi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xba9ed435 kvm_mmu_set_mmio_spte_mask +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbc2b538e __tracepoint_kvm_nested_vmrun +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbf05ab76 __tracepoint_kvm_inj_virq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc1093de9 kvm_mmu_unload +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc14197b7 kvm_mmu_load +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc2096ee0 kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc3a6fe3a kvm_write_guest_virt_system +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc3d236f5 load_pdptrs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc53cf50f kvm_inject_realmode_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc7df2e35 kvm_write_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc863291b kvm_mmu_sync_roots +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcb67ce10 __tracepoint_kvm_nested_intercepts +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xce54c2d5 kvm_clear_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcffc5b20 kvm_mmu_unprotect_page_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd0459e67 kvm_has_tsc_control +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd0b2727a kvm_mmu_set_mask_ptes +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd4c5de42 kvm_cpu_has_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd5789487 kvm_mmu_get_spte_hierarchy +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd8cad110 kvm_set_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdb2b6aeb kvm_require_cpl +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdcd7ccf5 kvm_vcpu_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xde98f7a4 kvm_set_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe2fe8f95 kvm_inject_nmi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe5c19b41 kvm_resched +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe9790e86 __tracepoint_kvm_cr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeadcebb4 kvm_irq_has_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeebac4f8 kvm_rdpmc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xefb3d3bd kvm_set_cr0 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf66ab1e7 kvm_lmsw +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf6efe78e kvm_vcpu_block +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfc1afc60 kvm_release_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfef46fda kvm_arch_unregister_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xff163cc5 kvm_read_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xffbc010d gfn_to_memslot +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x3167ae3e ablk_init +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x45bcc62a ablk_decrypt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x52112fdc ablk_init_common +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x5e55f23e ablk_exit +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x6aa34894 ablk_set_key +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x714fc154 ablk_encrypt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x97b16157 __ablk_encrypt +EXPORT_SYMBOL_GPL crypto/af_alg 0x1fd3f965 af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0x24c01918 af_alg_complete +EXPORT_SYMBOL_GPL crypto/af_alg 0x6c12b917 af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0x72434426 af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x7e7cde9c af_alg_wait_for_completion +EXPORT_SYMBOL_GPL crypto/af_alg 0x87cf8170 af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x93957c0c af_alg_cmsg_send +EXPORT_SYMBOL_GPL crypto/af_alg 0xb3927a6b af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0xc255eb91 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x12aed716 async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x7970d788 async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0xf3562b84 async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x991809d2 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xf9407265 async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x4604807d async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x464edb9a __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x907c6768 async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xb1a6de13 async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x37bd5103 async_xor +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xf9b17902 async_xor_val +EXPORT_SYMBOL_GPL crypto/authenc 0x587ef278 crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0xb2adfe89 blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x27278ca9 __cast5_encrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x4a2a3ca6 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0xb543ae09 cast5_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1291971c __cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1758daa9 cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1e2c961f __cast6_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x8f04034a __cast6_encrypt +EXPORT_SYMBOL_GPL crypto/cast_common 0x08aa6fb7 cast_s1 +EXPORT_SYMBOL_GPL crypto/cast_common 0x0c5fbf8a cast_s3 +EXPORT_SYMBOL_GPL crypto/cast_common 0xe39dd4b4 cast_s2 +EXPORT_SYMBOL_GPL crypto/cast_common 0xee83a4f3 cast_s4 +EXPORT_SYMBOL_GPL crypto/cryptd 0x09ca3d72 cryptd_alloc_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x2cdf7462 cryptd_ablkcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x4217be44 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x61d3ac6b cryptd_free_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x63e8595d cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0x6d72f6f9 cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x76035b73 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x817fa39c cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x99538db0 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x9d272e39 cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/des_generic 0xcfd9a2c0 des_ekey +EXPORT_SYMBOL_GPL crypto/lrw 0x29f6a6a6 lrw_crypt +EXPORT_SYMBOL_GPL crypto/lrw 0x3864eb66 lrw_free_table +EXPORT_SYMBOL_GPL crypto/lrw 0xcd074900 lrw_init_table +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x5ddb33e9 __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x77b39cb4 __serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x8a1a99ad __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xbf6690b9 serpent_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0x6c3229bb __twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0xd35146c7 twofish_setkey +EXPORT_SYMBOL_GPL crypto/xts 0x75bc8206 xts_crypt +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0x1c8984c7 acpi_smbus_unregister_callback +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0x87bd07bd acpi_smbus_register_callback +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0xb9a141b0 acpi_smbus_read +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0xe1372311 acpi_smbus_write +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x09e46e97 ahci_platform_suspend +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x3e46304f ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x403bfeb1 ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x4b645a57 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x4f0a04c4 ahci_platform_resume +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x7c65acdb ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x8349552d ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x906283a3 ahci_platform_resume_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xb7befaf4 ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xbe1534f6 ahci_platform_suspend_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xc7678225 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x018d4486 ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x15261965 ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x195ec99e ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x1c6a246b ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x2e6c48a6 ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x2f4f20b3 ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x3f1d80d3 ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5791ee95 ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5eacba1f ahci_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x694f923e ahci_thread_fn +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6e05c4e7 ahci_hw_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x78169068 ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8ba854ac ahci_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa0cd9aee ahci_shost_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa421aa7f ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa6739355 ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa7877870 ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa8842eb0 ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xaa0a29e9 ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xaa378dc7 ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xbca36c91 ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xe66c7a2a ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xf24b2249 ahci_sdev_attrs +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0x734a8590 __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x02ff9464 cfag12864b_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x0ecb2e5d cfag12864b_disable +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x305dc3c6 cfag12864b_isenabled +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x3389f926 cfag12864b_enable +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x9522a342 cfag12864b_getrate +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0xc48e9d95 cfag12864b_buffer +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x14102f23 ks0108_displaystate +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x48a70518 ks0108_writedata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x4f506333 ks0108_startline +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x6edae968 ks0108_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xbf4774db ks0108_writecontrol +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xedde6df2 ks0108_page +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xfee8ef7b ks0108_address +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x01ddc5fc bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0e78b429 bcma_core_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x187a00d1 bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x208c0c72 bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x21dc2c0b bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2311bbef __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x27d228c3 bcma_core_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2dbb4f09 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x50abd811 bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x6cb707e1 bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x759b5d1b bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x89b0196f bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb4a8aecf bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc2e5c43b bcma_find_core +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xcb1ec9a1 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xceb11dea bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd9f5c5ac bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe5e14eee bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe753b5dc bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe934036f bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf37e345c bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf38b71db bcma_core_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf892f3a5 bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x08c7a814 btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x2b06f177 btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x3846120d btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x4ec5f45f btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xa83a6d66 btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xaa7edec4 btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xb4e88332 btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xe1c3f36b btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xe992306d btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xede6d076 btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/char/scx200_gpio 0x2764068c scx200_gpio_ops +EXPORT_SYMBOL_GPL drivers/dca/dca 0x01a33ab9 dca_unregister_notify +EXPORT_SYMBOL_GPL drivers/dca/dca 0x14851efc free_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x31a2c8df dca_get_tag +EXPORT_SYMBOL_GPL drivers/dca/dca 0x585187d0 dca3_get_tag +EXPORT_SYMBOL_GPL drivers/dca/dca 0x863838de register_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0xac34ecec dca_register_notify +EXPORT_SYMBOL_GPL drivers/dca/dca 0xb4697379 dca_add_requester +EXPORT_SYMBOL_GPL drivers/dca/dca 0xcbef67a6 unregister_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0xd42670fc alloc_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0xd8491159 dca_remove_requester +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x2eb08feb dw_dma_shutdown +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x38d84fec dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x43fcbc7f dw_dma_resume +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xd687e28d dw_dma_suspend +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xef5ba7e6 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x06edcb76 edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x10259960 edac_mc_alloc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x27b92f57 edac_pci_handle_pe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x2f9686cc edac_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x2fe47b47 edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x301047a2 edac_pci_handle_npe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x3b091c1b edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x582d33e2 edac_device_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x5ff3b093 edac_device_handle_ue +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x60a9b2d8 find_mci_by_dev +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x69259f22 edac_mem_types +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x695e5f4e edac_mc_add_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x77fe1dda edac_pci_reset_delay_period +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x86212253 edac_pci_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x8dffebad edac_device_handle_ce +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x8fdc7781 edac_device_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xaca00301 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xbed42a70 edac_mc_del_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc7a2fc7c edac_device_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xd4ae468f edac_pci_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xe7ea82aa edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xebd01c61 edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xef711eec edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xfe773fe1 edac_mc_free +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x14878009 amd_report_gart_errors +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x1d34e996 pp_msgs +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x21626132 amd_register_ecc_decoder +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x737912b3 amd_unregister_ecc_decoder +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0xb30b7e56 amd_decode_mce +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xf4ade51f fw_card_release +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0x013fbdac cs5535_gpio_set +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0x93f8fe67 cs5535_gpio_set_irq +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0xc0bb404a cs5535_gpio_setup_event +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0xd3bd9300 cs5535_gpio_isset +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0xe07c0954 cs5535_gpio_clear +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x71cda701 bgpio_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0xc9057f2e bgpio_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x0a82c103 __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x5ebd2c65 __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x0b38d649 drm_vm_open_locked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc6d8d36a drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf3c3d6a4 drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x05876c69 i915_gpu_busy +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x08a7896d i915_gpu_raise +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x2b2c59ae i915_release_power_well +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x402468e9 i915_gpu_lower +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x500858b9 i915_read_mch_val +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x96108893 i915_request_power_well +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0xe7237b0b i915_gpu_turbo_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x6adf436b ttm_prime_fd_to_handle +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x92024f16 ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xb12a9501 ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xc4954935 ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xce36343e ttm_prime_handle_to_fd +EXPORT_SYMBOL_GPL drivers/hid/hid 0x000fd3d2 hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0d99bb94 hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0de87ece hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0e9260de hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0f35b888 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0x11b657a8 hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x142e47d2 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x147ac2ff hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x167802de hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1b8bdb34 hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1cdb1a20 hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2f2b1a8b hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3af0591c hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x41e96a77 hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4906a967 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5677f147 hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x60c090e6 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0x70042cbe hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7454cbfb hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x898f4cf2 hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8f74a766 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x90432752 hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xac807d22 hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbbb2487f hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbe325281 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc559c253 hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc62ce641 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc9e2ee0d hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd287d1f5 hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xdb328e9b hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xdc5e1e9c hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xdc99ffa8 hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe3a108cb hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf9eab584 hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfc3d29fc hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x2f622ea1 roccat_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x8c4181ec roccat_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0xdf41b8e8 roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x131ca9ea roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x2a476112 roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x3a376bcb roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x73cf9c86 roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x98086136 roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xd7ac24a9 roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x351b7da7 sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x51f9e892 sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x698bc67c sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x6ad7f3f8 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x76e35896 sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xa108c938 sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xe2c479a4 sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xf2eeaf64 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x01fd453e usbhid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x3812eb2a hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x03b4a79e hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x04889beb hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x1c261dc8 hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2d47a66a hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5dc9af73 hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x97c49977 hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x9dc6501d hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xd4b54e2a hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xd6334ac3 hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xef5d0750 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xf1baeba9 hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xf81ba4e6 hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xfad99f36 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x08efd736 vmbus_establish_gpadl +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x0af6834a vmbus_close +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x0f1a0f75 vmbus_open +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x358fafa5 vmbus_prep_negotiate_resp +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x393669c0 vmbus_teardown_gpadl +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x3db037c3 vmbus_driver_unregister +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x46a417ca vmbus_proto_version +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x53c7d7f9 vmbus_recvpacket_raw +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x93881e1e vmbus_sendpacket_pagebuffer +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xb33ae1eb vmbus_set_sc_create_callback +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xbd4401a3 vmbus_sendpacket_multipagebuffer +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xc24fb00c vmbus_are_subchannels_present +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xce8629af __vmbus_driver_register +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xea887ce4 vmbus_get_outgoing_channel +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xf45dd651 hyperv_mmio +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x6fc0d5c3 adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xd432e877 adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xda5bfa52 adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x08ffccaa pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x23c22ccd pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x388e03c7 pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x43ec85b1 pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x71b70aec pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x721d9cc9 pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x81e09f45 pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x9c24be3b pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xa6aa06dc pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xb1af0f85 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xbc3005b6 pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xd14f32ba pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x132caf97 i2c_dw_enable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x2b5a7326 i2c_dw_clear_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x303e8cf4 i2c_dw_init +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x56123971 i2c_dw_disable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5bb1170b i2c_dw_isr +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x70f4d19e i2c_dw_disable_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x9c9674d0 i2c_dw_xfer +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xd3b93f8c i2c_dw_read_comp_param +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xe743103b i2c_dw_is_enabled +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xf53a3065 i2c_dw_func +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-nforce2 0x1b2d7f4a nforce2_smbus +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x8cadc6ae i2c_add_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x97c25165 i2c_del_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x00b19f20 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x88e4b367 i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x337dc34c ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x4b44a1e2 ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x588fbedc ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x5f2fa524 ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x7347a08f ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x7eeaf14b ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x9551cf6d ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xa9048033 ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xe7707119 ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x0b5d4b89 adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x10170bae adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x200f764e adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x21c1a086 adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x45ab6b9c adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x523884c3 adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x66e1af01 adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x76ee1c16 adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x94733f26 adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x9dc1366e adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xbde26dd1 adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xc9654484 adis_init +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x06b46d14 iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x267c0508 iio_channel_release_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2a1fab3c iio_channel_stop_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2ea3995d iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x46420b32 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4dbe0aa0 iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5323e500 devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x557f6a98 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x593f8cbb iio_scan_mask_query +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5ac23ca8 iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5b946ec0 iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x60bca4aa iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x668e05d4 iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x70ceece6 iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7438fc63 iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8bb9d1ab devm_iio_device_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8e2fe224 iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x90b6ff21 iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9778575f iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9f9a0c60 iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb00c5463 iio_scan_mask_set +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb3c5c25c iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb7181881 iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xca1899d3 devm_iio_trigger_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xce660d84 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xdc12d7fe iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xebab9792 iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xed0be06d devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf46b411e iio_update_demux +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf880a5b7 iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf8f96a7d iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xfb3490ef iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0xb1245331 input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x20164690 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x5f24d490 cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x7fb01e0c cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xba640cf9 cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x3ef5a113 cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xda29faba cyttsp_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xe638906b cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x07571afa cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x3aef6022 cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x35097936 wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x4f9b4485 wm9713_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x61f29cc0 wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x6e0bc543 wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x7fc7fafe wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x8331441b wm9712_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x9e8f5941 wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xa51da4f9 wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xa52464ba wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xc7a794d8 wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xead7c28a wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xf07f4084 wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x0fd4b20f ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x1b12ca64 ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x35ee9721 ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x58d5688d ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x58d6209b ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x76809916 ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x8d3d5ff5 ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xca497e25 ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xe11a83ef ipack_device_add +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0x23359aff unregister_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0xce1414b2 register_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x000ebdbc gigaset_freecs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x1fb5d7f1 gigaset_shutdown +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x2c051536 gigaset_initcs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x3553149c gigaset_skb_sent +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x454aa44f gigaset_debuglevel +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x47a29258 gigaset_m10x_send_skb +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x511ceaba gigaset_add_event +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x56c6d2d9 gigaset_freedriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x5bdd4439 gigaset_start +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x64c4f3b7 gigaset_m10x_input +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x65093600 gigaset_fill_inbuf +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x687512de gigaset_if_receive +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x708cf65a gigaset_isdn_rcv_err +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8e12a327 gigaset_handle_modem_response +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8eff32df gigaset_dbg_buffer +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xa54fda80 gigaset_blockdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xb3538b1f gigaset_initdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xd6b79ff0 gigaset_skb_rcvd +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xfb12e04d gigaset_stop +EXPORT_SYMBOL_GPL drivers/leds/dell-led 0x86fd1ffb dell_app_wmi_led_set +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x0474d5dd lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x07f5ebc0 lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x09019933 lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x43d87bfe lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x78e782e1 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x943da756 lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xaa50de3d lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xb23be0ad lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xb4f36e20 lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xbe976ff7 lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xcbe16d19 lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x749e05f2 ledtrig_flash_ctrl +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x7903e46e ledtrig_torch_ctrl +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x10e06e97 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x155ea9c7 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1822fd23 __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1f2ba9ac __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x260d47cf __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x27831e89 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2dec45e0 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x347aebe1 __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x41c861f0 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x49856e5a __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x50e8c39f __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x574ba881 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x628eb712 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6770a402 __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x785cfc9f __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7b488fb1 __tracepoint_bcache_alloc_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x91f2af34 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa09069a3 __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa591c5d6 __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa6890b59 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xaf60c34b __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb950d2ae __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbd4b89b6 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xce0e6218 __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd40fba32 __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xdc5ea5a5 __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf58ce244 __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf5bcbdc7 __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfc1d5275 __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfcdf28c9 __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xffc308e4 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x017f5faf dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x03163544 dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x25e4fa33 dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x619b53d6 dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xa2f7cad3 dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb6d5c65d dm_deferred_set_add_work +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb70b342a dm_bio_prison_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xc582a4b3 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xde6a27b6 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xebd06eaf dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x22163b69 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x3909d3a8 dm_bufio_prefetch +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x3c8e3b59 dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x594952bd dm_bufio_read +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x62a23587 dm_bufio_get_device_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9b2b253a dm_bufio_get +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa82b2066 dm_bufio_write_dirty_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc9a3422d dm_bufio_write_dirty_buffers_async +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd4bddf5c dm_bufio_issue_flush +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xdc69e37a dm_bufio_get_block_number +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe004ee92 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe6024e59 dm_bufio_release +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xebcc64a4 dm_bufio_get_block_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xeca7949e dm_bufio_client_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x01c07191 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x0494f568 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x716a3198 dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x952e1ac8 dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x9c89818e dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xf5c53abe dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xf618b360 dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x38160d2a dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xd61bfb7d dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x09472122 dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x17b9f835 dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x38efaf5a dm_region_hash_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3a18389a dm_rh_update_states +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x72ef5a9c dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7774620f dm_rh_stop_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7d053fc5 dm_rh_start_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x84377830 dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x8bb80db9 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x91485c63 dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa53387c7 dm_rh_flush +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa83588eb dm_rh_recovery_end +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa8813ad6 dm_rh_region_to_sector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xb22ef301 dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xc66ce277 dm_rh_get_region_size +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xcab63c3d dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xf37a3cfe dm_rh_get_region_key +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfd93482e dm_rh_recovery_in_flight +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0054f69d dm_tm_pre_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x01445176 dm_btree_find_highest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x11eab9fe dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x150c85ce dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1cac81ac dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2025e954 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2c112836 dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2e730a21 dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f40da68 dm_bm_set_read_write +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f74609d dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x32b5f546 dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x33c03da6 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x38c75c44 dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3ad0f55b dm_bm_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x40f7bd91 dm_tm_inc +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5e6aea80 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x619701dc dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x62c1b9ee dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x68fae9d2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x72289260 dm_block_manager_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7ade1071 dm_tm_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7b047bd9 dm_tm_create_non_blocking_clone +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x80c89b3d dm_tm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x832bf228 dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x858c8d94 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89f1e1cc dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x966a8838 dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x97e6ba7a dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9b4b5b29 dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9e798e22 dm_bm_set_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa0bbbb49 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa13861b4 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2507774 dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa87c5b4d dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaee02382 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb7bad799 dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb9a6ecf8 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbcfdc290 dm_tm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbd50ebbb dm_btree_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbe0497aa dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xca40abd5 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd041d62b dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe44b4b9b dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xead1e727 dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xed1e1f96 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf475af48 dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/raid1 0x186151c4 md_raid1_congested +EXPORT_SYMBOL_GPL drivers/md/raid10 0x084980d6 md_raid10_congested +EXPORT_SYMBOL_GPL drivers/md/raid456 0xa4d69ed1 md_raid5_congested +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x13adfc6d saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x1eb83754 saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x2248c16c saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x4540fbfa saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x6beb4f0f saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x7a29184b saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x96215262 saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xf20d0797 saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xf4870f16 saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xf9cf23cf saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x1a119be5 saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x38b89dec saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x3d4c2db8 saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x440a4bba saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x6480b937 saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xf2b1b70a saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xfdca4750 saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x030236bf smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x24a6778b smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x2b97f7ea smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x37d91069 smsendian_handle_tx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x4eb7260a smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x5327bf1f sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x558d8973 sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x63222b29 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x63f52492 sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7c576277 smsendian_handle_message_header +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x87fc5376 smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x93077151 smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9c2225ed smscore_translate_msg +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa4cde995 smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbf2805c5 sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xd4292b60 smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xdd044661 sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xe87d3f0c smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xf5ac9673 smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xfa0cd974 smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xffca89aa smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0xc33b48ae cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0xd8cf8e90 tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0xa2d6e0c0 cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x00f7234b mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1ac01c3f mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x274517c0 mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x2cae128f mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x3d7228b4 mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x559c08bb mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x713cb40f mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x734a6b7c mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x8c2a6d17 mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x8f6a4b22 mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xa2186821 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xafa27c6b mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb1af66e8 mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xbc0a58bd mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xf49d4d8b mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xfd80927f mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xfe616441 mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x3f54a557 saa7134_g_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x82164ee2 saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x8875f3ec saa7134_s_std_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x902d0f3c saa7134_queryctrl +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xbd1dac41 saa7134_s_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x1b7d2148 ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7b894e72 ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x88590ee3 ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xa460ab67 ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xaf1f435f ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xc3d9d84b ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xfa36fb0f ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/radio/radio-isa 0x1b3f3e92 radio_isa_remove +EXPORT_SYMBOL_GPL drivers/media/radio/radio-isa 0x42dc0fc6 radio_isa_pnp_remove +EXPORT_SYMBOL_GPL drivers/media/radio/radio-isa 0xbbbecab3 radio_isa_probe +EXPORT_SYMBOL_GPL drivers/media/radio/radio-isa 0xcad1b47d radio_isa_match +EXPORT_SYMBOL_GPL drivers/media/radio/radio-isa 0xeeb011e4 radio_isa_pnp_probe +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x2099cfdf radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x3b6aeb06 radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x049db9e2 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x051cd812 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x45b80357 rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x522095bb rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x553efb91 rc_core_debug +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x573593ab ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x58afb577 ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x836648f1 rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x83674fcf ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x853c7ec6 rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x8fdad675 rc_close +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x951e2848 ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xaad88a35 rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xdae807e4 rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xe358b682 rc_open +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xe6f0b5df rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xec70ee7a rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xeefec69b ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xef3f24f6 rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf2a445d5 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0xd173c185 mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0x8481b810 microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0x26ab220c mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0x52b56437 r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0x822212ce tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0x547e09f9 tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x6ebf4185 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x84540d06 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x8955cde4 tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0xabdbd5dd tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0xb2d8726e tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x11a60974 tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0xef5a47e0 tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0xf203853e simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x08614eac cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x1af7688c cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x2b34c2ce cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x33f6afbb cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x491665b2 cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4e0aeb8e cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x5ca5317c cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6146cfb3 cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6c3a6d81 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x70176212 cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x7cc60690 cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x97fe2076 cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xc2ff16e1 cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xc5e2d98d cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd70fc8eb cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xdbff2dc4 cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xdfdc5623 cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xe2a5cffe is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xfa96ccaa cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0x27d1be41 mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0x3a4317d3 mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x032f3cac em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x194b58ee em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x26c4efd6 em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x3d0adc80 em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x40379484 em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x47382aa2 em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x51f11701 em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x5b5c9a94 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x85ab5741 em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x90489d74 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xbedecc26 em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xcdf70c12 em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd8d73456 em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf65186b4 em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x07a7c2b7 tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x5b86596c tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x9aa86c09 tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xee068f4f tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x01c483a9 v4l2_get_timestamp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x0982da19 v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x1d618333 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x507a63b6 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x69dc6e97 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x788a16e9 v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x813f3de4 v4l2_find_nearest_format +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xd72b9508 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x08982d59 v4l2_match_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x221d2fbc v4l2_enum_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x36e8756a v4l2_find_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x4103badb v4l2_print_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x53105839 v4l2_detect_cvt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6976cfe0 v4l2_valid_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6f344bb9 v4l2_calc_aspect_ratio +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x7eaf8e7a v4l2_detect_gtf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xb0891da2 v4l2_dv_timings_presets +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x33b7cc99 v4l2_int_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x908df381 v4l2_int_ioctl_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xa5228b24 v4l2_int_device_try_attach_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xdbfda013 v4l2_int_ioctl_0 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xf06b4662 v4l2_int_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x131e47af v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1786d818 v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x17eb0eee v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x27f1a9fa v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6ebfe650 v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x872117cd v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x88c68dc6 v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x97e21484 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9df0d3f4 v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xaa05448f v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb18f7c89 v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc652a06b v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe64b24ee v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf3081486 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xfa916b5c v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x0ff819f7 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x195bc5e4 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x2975a7fa videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x2d057e4a videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3329b605 videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x45a681f3 videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4bd7a388 videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4c69f5da videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6607f7a8 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6efb52ab videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6fab9361 videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7b5ddca5 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7d0ff7d4 videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x89b67c98 videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x910a25da videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x991d2d51 videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa0671804 __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xab116f41 videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe4c2d076 videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe4e3d80a videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xebb00d59 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf48aac01 videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf6fbb335 videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xffb90227 videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x4a2531e8 videobuf_to_dma_contig +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x6ac8f3ef videobuf_dma_contig_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x83553523 videobuf_queue_dma_contig_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x260e5878 videobuf_dma_init_overlay +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x2ea9c67b videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x43f9dbf1 videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x593a9e8c videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x6def9cde videobuf_dma_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x7c05d987 videobuf_dma_map +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xa825c75b videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xb6a5b9b8 videobuf_dma_init_user +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xb757d074 videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xf51a2ea2 videobuf_dma_init_kernel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x280b1b29 videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x4294fb04 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x72c0e208 videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x023e25ba vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x02c7bed8 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x0ea818c6 vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x0f6f087d vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x12aab194 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x1a78142a vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x1cc70c64 vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x378583af vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x51966e73 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x600dd325 vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x65723f0e vb2_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x659611d1 vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x69fde36b vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x6a4c6708 vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x6ec4d208 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x765ad6d1 vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x95e9a229 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x99d3ee17 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x9c603d9c vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x9debf475 vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa66c9c88 vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xaa13faaa vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb8bd67e9 vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xbb673a16 vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xc25dc0b8 vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd105d0ad vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd2dbb33f vb2_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd67a5eb1 vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xdb851839 vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xe5a244bd vb2_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xe71176b0 vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xf486d722 vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xf6276034 vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xffcecfb6 vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0x9d5d2d02 vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xe57f0426 vb2_dma_contig_cleanup_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xf0c66737 vb2_dma_contig_init_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-sg 0x087c398e vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x22fc48e4 vb2_get_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x377a2d0e vb2_get_contig_userptr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x7eb0a69d vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0xf1e131a8 vb2_put_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-vmalloc 0x73d5a823 vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x19b9bd47 v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x30314997 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x326791ea v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3448fa0c v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x427d68bb v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x48909c4d v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4a1634fd v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4cbc6078 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x54679484 v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x58f23da9 v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5a77a1fd v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6a7b177d v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6be78cc2 v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7b95cbe7 v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8cd205c7 v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9065dc69 v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x911c0c27 v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x967e3e26 v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa3f12350 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc064ba93 v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdc10458a v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe9c3b0d8 v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf87071bc v4l2_device_put +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x1ce31df4 i2o_dma_realloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x81c3875f i2o_dma_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x9c84d741 i2o_dma_map_sg +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xb0dfab92 i2o_pool_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xb20986be i2o_pool_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xb2443bd1 i2o_dma_map_single +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xb3812b54 i2o_dma_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xf964e05c i2o_sg_tablesize +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x6ac4a4fb pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x7991d03b pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xe6a7ed03 pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x08395a84 kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x0e47a1d6 kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x14e53f0f kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x24dca629 kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x2ed45cd9 kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x2f4f0299 kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x4fc15898 kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x51af4e2a kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x3dd6c072 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x8da172c2 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xe83340e0 lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x0bc14d44 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x2ca1c350 lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x46574663 lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xabcf4d60 lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xbafc1486 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xea7e750a lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xfae5c98e lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x1bf5a6ee mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x3ddb2b60 mc13xxx_common_cleanup +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x494018a6 mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x5b4fedce mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x60832a0c mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xeed802cf mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x13f76bda pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x1bac0cee pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x3a1c1cff pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x5d343c59 pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x5dd1af41 pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x7c1bdbee pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x937b4285 pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xb6ff7b47 pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xc465d8e7 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xc80f5744 pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xffe665aa pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xccab7a34 pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xf4f6a436 pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x0dde67cf pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x0e6c7605 pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x3c76c272 pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x9b9af688 pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xcacc879f pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x01a33234 retu_write +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x4fca3918 retu_read +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x1191f7ee rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x13dc9b8e rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x250f35ea rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x2d9508bd rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x352b78b6 rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x594ef8fa rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x59690e78 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x7718a374 rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x7e7456a0 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x808d529a rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x81aacc12 rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xa11ccc99 rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xa26a38b6 rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xc3e92487 rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xc9ed44db rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xd10db2da rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xd8368b16 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xda96f76a rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xe3fcc280 rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xed508f33 rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xf9849d83 rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0267656c si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x08608661 si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2b1779f8 si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x312f89de si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x339dd2b3 si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x464e59c7 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4b31988c si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4e29088a si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x52e85a17 si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5a773a3e si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x698b30ea si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6a0dd9c7 si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6b94a143 si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7f0cf87f si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x81ed19d6 si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8398d0fa si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x878a9891 si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x87b392bf si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8d523a67 si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9437d737 si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9cd2b0e4 si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa0f5a8be si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb08b81c4 si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc4c145b4 si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc9597b57 si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd22d0867 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe28be68f devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xea320c2f si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xed8fb476 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xee987099 si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf353b647 si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf69fc57e si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf85fefe6 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xffd65213 si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x8dca33ad sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x920501eb sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x92ebbdf6 sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xad3c4b95 sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xead8319e sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x03da2516 tps65217_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x112b14db tps65217_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xbfaed902 tps65217_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xd7c51643 tps65217_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0x5d2430d8 ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x24512d89 cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x46026a3a cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xaae92c0f cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xcd2a743f cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x27cb133b eeprom_93cx6_multiread +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x63d2ff63 eeprom_93cx6_wren +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x822222db eeprom_93cx6_write +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x98bb5a22 eeprom_93cx6_read +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x2917584d enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x853ed012 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x860b874e enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xb1360208 enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xbb1581d9 enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xfc0ba27d enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xfc1141ff enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x131c4596 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x3f80a3d2 lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x6859ffe9 lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x9c52cd21 lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xa6888100 lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xdd7d17b9 lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xe1e1e049 lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xf8f817b0 lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x0b8b33e5 mei_cl_driver_unregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x2558fb29 mei_restart +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x255b5685 mei_cl_send +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x3600bf02 mei_cl_enable_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x50584b4f mei_cl_register_event_cb +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x51ee82f1 mei_irq_write_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x554d4dc6 mei_cl_disable_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x67403ec5 mei_stop +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x682dfec2 mei_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x8f4e7447 mei_cl_get_drvdata +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xa0d001fd mei_irq_compl_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xa6bf8e06 mei_cl_add_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xb31658f4 mei_reset +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xbc5fbdd3 __mei_cl_driver_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xc713e14a mei_deregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xde1c64b1 mei_cl_recv +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xded3a443 mei_device_init +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xe442dd58 mei_start +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xe4be23d0 mei_cl_remove_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xed2a5bf5 mei_irq_read_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xed933f42 mei_cancel_work +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xf3ed729f mei_cl_set_drvdata +EXPORT_SYMBOL_GPL drivers/misc/pti 0x19f09b98 pti_release_masterchannel +EXPORT_SYMBOL_GPL drivers/misc/pti 0x23bde487 pti_request_masterchannel +EXPORT_SYMBOL_GPL drivers/misc/pti 0x52a78e81 pti_writedata +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x9ed70955 st_register +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0xe908af7c st_unregister +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x0f6680ea vmci_qpair_produce_buf_ready +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x1152e318 vmci_qpair_get_produce_indexes +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x13aa5a5d vmci_datagram_create_handle +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x1872c7af vmci_qpair_produce_free_space +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x1a195863 vmci_context_get_priv_flags +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x2e30d970 vmci_qpair_dequeue +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x3ef56cd5 vmci_qpair_alloc +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x4b630dac vmci_get_context_id +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x4c498e60 vmci_qpair_peekv +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x4ea2ccbc vmci_qpair_peek +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x50a255c9 vmci_doorbell_create +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x612df9ae vmci_qpair_detach +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x677c36d0 vmci_is_context_owner +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x69ef87ff vmci_datagram_destroy_handle +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x6bfa603a vmci_qpair_dequev +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x6cc1a5f7 vmci_datagram_create_handle_priv +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x722d488a vmci_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x7d540b50 vmci_qpair_consume_free_space +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x8b8ad67a vmci_qpair_enqueue +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x9624c58c vmci_datagram_send +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x9973b9b2 vmci_qpair_consume_buf_ready +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x9d16164a vmci_send_datagram +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xbbcb4c48 vmci_qpair_enquev +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xccbb53d1 vmci_doorbell_notify +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xcf5ed7ef vmci_event_subscribe +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xdac94780 vmci_qpair_get_consume_indexes +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xe7e7c107 vmci_doorbell_destroy +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x267fb85a sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x2fcf485b sdhci_enable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x379b9ec6 sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x44e116f8 sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x4b1b79e6 sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x94899cd5 sdhci_send_command +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xab46f154 sdhci_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xb76b1fd0 sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xbffa32cc sdhci_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xcc20dd53 sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xf2cadaae sdhci_disable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x1bd44063 sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x2bd85e78 sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x88598d2b sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x9cf09c92 sdhci_get_of_property +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xa1162200 sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xa6de988d sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xcac7090e sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x4e37ad20 cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x711e88c8 cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xb32988b6 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x3d59fe2b cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x430bb5fb cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xcea031ad cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0xc0645953 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x3a01bad0 cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x416e2d9f cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xf825e3b2 cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x12ec6f7b unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1484810b __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x15f01328 mount_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x376a047c mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3d6e46b4 mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3f1ed794 __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x44a5bd4f mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x460f6895 kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4774a042 register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4a066b11 put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5129e698 mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x56336486 mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x57b310a9 mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5e63e51a mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x69ecb3da get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8deed97e mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x910aaa59 mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x927dc3a1 mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9531cfc5 mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x956d034a mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9e5082bc mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa00552d9 register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa8e67af5 mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xad685d41 mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xafcc8783 mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb610da2b mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xba98879c mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbcfd31a4 mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc14af512 mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc5e3c2e0 __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd427ee84 mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd61cd314 mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd90eb6a2 mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xdcc65770 mtd_is_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe1133347 mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe63c734a mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe9334da2 mtd_erase_callback +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xeeeb2455 deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf5338dbb mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfac968d2 get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfb55fcb2 mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x0da6fc59 mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x130c67ee add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x5fa11650 register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x70cf8171 deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xa1e7c529 del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0x01087181 nand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0xb6c515b1 nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/sm_common 0xfe94264d sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0xe30765fd onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0xf6da8f08 onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x0a111da5 ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x0a19e9e4 ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x1bc75a5f ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x45941774 ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5cfdd22d ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x660d2018 ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x7bdd61c1 ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x8ae9b1c1 ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x911ecf21 ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x9685a82a ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xcdf22022 ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xd0097fca ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xea8aa3fc ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf6406895 ubi_leb_change +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x3120a928 c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x643870ec free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x84d10bee c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x89e5bb24 alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x8f140a7b register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xba0266e7 unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x067877fc can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x07144d6a can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x12b5b462 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x1f449cd8 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x222c295a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x25f6a4b5 can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2e78c39d free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x300eaf73 safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x3befcde3 close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x62801adb alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xa36f3bfd can_led_event +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xac49e15f alloc_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb346573b can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xc45a2397 open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe21749e1 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe6cba40f can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xfc75e9ed devm_can_led_init +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x5ff26fdd register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x7dbec718 free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xc4ba4b0d alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xfc3609f5 unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x0952f486 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x65aed225 alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x67d2de1b register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x9e5e1718 unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x25a7d226 macb_ethtool_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x42223c66 macb_set_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x8c61c94f macb_set_rx_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x9c01a646 macb_ioctl +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xb7444345 macb_mii_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xdada30b0 macb_get_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xfd763952 macb_get_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x035f0d11 mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x09f8a0b2 mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0c92bf05 mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0d76b199 mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0e277f88 mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x12710bf1 mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x13c0c02b mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x159683b4 mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x181b8d6a mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1920e156 mlx4_fmr_unmap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1c6501ba mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1db58df5 mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x203cc80b mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x248cb260 mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2695a6b4 mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2b3416ba mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2db9b02f mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2e429cc6 __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2ffa9f43 mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x35cba99c mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3849925e mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3a652ce9 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3b0f1aae mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3cee3808 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3d98757b mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3f3bde65 mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x411423a9 mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x41849dea mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x433c4dd8 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x44a2a279 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x483e683f mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x48ec4103 mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4f6967d6 mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x50bead43 mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x513875b4 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5497a31e mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5539e42c mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5572bf48 mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5797ba5a mlx4_fmr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x581adbb5 mlx4_map_phys_fmr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5a8b63c9 mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5b6e578e mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5c780edd mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x61054466 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x691afd52 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x69f63dc3 mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6c80c528 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6f7d8e4a mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6fe0bed1 mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x75911304 mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x770c4143 mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x79b6e1d7 mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7ce6d0ca mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7f4746f7 mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8181e877 mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8253b446 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x82e3da94 mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8417f8ec mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8ae7b9f5 mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8c149348 mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8f5ebf1d mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x918986e7 mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x936ae622 mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x99cd8bb7 mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9f107fbe mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa0b549f0 mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa2341252 mlx4_fmr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa3724096 mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa52e30db mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa6929df4 mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa867269e mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa86f4d64 mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xad477fa3 mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb9eb7b4e mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xba2b46b3 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xba745414 mlx4_fmr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbcc2c242 mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc0876f3d mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc08d5cdb mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc0c7fff2 __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc109b016 mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc2f0b032 mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc331d1a3 mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc367363a mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc38b674a mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc6c38a49 __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc913f7d7 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc9fcb204 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd2d940ce mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd58707bc mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeb9d8440 mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xecfadff8 mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xee0a8369 mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeee4b583 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf1fd2a59 mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf243cbbd mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf31c5a8e mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfc33c4a6 mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfcf1d4fd mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfd3d473f mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0e7221a9 mlx5_core_create_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1646709c mlx5_core_xrcd_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x316f4b40 mlx5_core_mad_ifc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3a91ce48 mlx5_destroy_unmap_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3aaa786e mlx5_core_eq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3fc3e9a3 mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4759413f mlx5_core_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x572aec14 mlx5_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5983504c mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5b69cf5f mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x737d72ed mlx5_core_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8afc71d7 mlx5_create_map_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc775220c mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd414f22f mlx5_core_destroy_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd6c4ef56 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdda36aa1 mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf6ecd3fd mlx5_core_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x3688346e macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x564f9916 macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x821ca296 macvlan_start_xmit +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x9b83404b macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xd02ade53 macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvtap 0xd1af1154 macvtap_get_socket +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x21c85452 usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x40e96ad7 usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xd84a78e7 usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xed5b77cb usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x04a13dca cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x1f1c8435 cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x337d3873 cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x81ae6432 cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x8316f43d cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xc15c4e16 cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xe61049ff cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xef3f28f2 cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x05fed69e rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x0f732be7 rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x17c4cc63 generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x732bc53e rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xa2986765 rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xd7f1d20b rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x065fb5e9 usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x0d0ed91d usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x0fb48f29 usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x0fcc6033 usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x13c37390 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x177e557e usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x28c8e857 usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x33823d11 usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x34f0e988 usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x35f79aff usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3aaeee33 usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x442b5521 usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4dc19241 usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x52238ee2 usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x522727dd usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x55f10040 usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x75113216 usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7aa541bd usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7e7b54b6 usbnet_set_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x83b1d08f usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8a13592c usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9062369e usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x92962cf7 usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa54ab134 usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xaa004071 usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xae5ff8b9 usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xcce4a65e usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xdce856ad usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe54c4cbc usbnet_get_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe6407b05 usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf4ce95b2 usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xfb4c39e0 usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x06a5eaa9 vxlan_xmit_skb +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x59e4b4a9 vxlan_get_rx_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x99df1f47 vxlan_sock_add +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xdaa7ffe7 vxlan_src_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xea9d0c19 vxlan_sock_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x1dae7d02 i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x27d4a846 i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x2f512010 i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x43af4a00 i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x5a69ce33 i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x6b3cf334 i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x7b959462 i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x9819f86a i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x9a89de58 i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xa2a72e01 i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xa4d45f81 i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xbcc48e23 i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xdc6e3c9c i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe5cd51d3 i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xf8c77510 i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xfa63762a i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x2582f804 cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x48e47fea cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x5266bb97 cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x8129a129 cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/ipw2x00/libipw 0x72419cad libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x03fe5641 il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x084a0b67 il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x6cb30b61 il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xc145fd22 il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xf69e8936 _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x0ded336b __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x146e80ea iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x20a067c2 iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x215daec5 iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x39f6f21c iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x3e0dc6e3 iwl_notification_wait_notify +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x42beb84f iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x4fe046f6 __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5d0a212e iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x6101306b iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x704e503a iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x779ac2ca iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x7b10ebd7 iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x87591d4f iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8c5d5ab3 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8caceb62 iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x919cf62d __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xaecd6c79 __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xb10b698f iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xb82a7187 iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xbedff651 __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xcea0b361 iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xdf214a09 iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xe49ce001 iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xe761b143 iwl_nvm_check_version +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xebe8fba7 iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xf14d18c9 iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xff0ef425 iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x2c2336f9 lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x378602ba lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x3eed254d lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x432a032d lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x498c4bcb lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x599af163 lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x68037184 lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x785268dc __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x869644bb lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xad7926ff lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xb0e540dc lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xb260797f lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xbdcb4842 lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xeb3d5b7c lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xfd302220 lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xfebcd876 lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x00b3873a __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x1ff32e06 lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x470b5ae6 lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x53da5990 lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x5c7021d7 lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x8a1acec3 lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xb69ac540 lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xc85e6899 lbtf_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xd6fd4bf1 lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0xb5396543 if_usb_reset_device +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0xfcc2d3af if_usb_prog_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x0205fdc5 mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x29fbee6a mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x4e66bebb mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x4f733cb2 mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x5f9ba6cb mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x66c88955 mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x6dcb9a04 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x821bd830 mwifiex_deauthenticate +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x8f37e6a9 mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xb088f8b9 mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xcc11bf77 mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xdafc90ab mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xf953b701 mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xfde34c35 mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x03a35da2 p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x03d17603 p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x2ae1e00d p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x305dd988 p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x4887540a p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x58945054 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x8f9a75b0 p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xa8b7c117 p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xb8d178b2 p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x0066d9d4 rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x109e68a0 rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x18971dc2 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1f1cefc4 rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x21a8e819 rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x22d6466e rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x25f1e05e rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x2c222415 rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x2de4b1ef rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3477edb5 rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x35831957 rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x35a4e389 rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x38991f34 rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3b466eb2 rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4a6c9fdb rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4cc497d0 rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4ce2fd28 rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4cf44938 rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x50180b6e rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x60917761 rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x668e9feb rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x690983c9 rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x696a84dd rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x6f4277f0 rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x72978a32 rt2800_get_tkip_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x748bcee3 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x82472a8f rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8745f413 rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8ed231e9 rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x937b9536 rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa9ac534a rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xabd5e25f rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xbe3989ac rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd60a2fa7 rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe2871b5a rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe61f9dd7 rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf632d787 rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xfcfb6201 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x15434404 rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x25e1d706 rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x49a1a11e rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x68174b23 rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x776ebc85 rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x7bbcee43 rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x88664553 rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xae2504b3 rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xb1407028 rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc2ad8692 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc386a68d rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc44004cc rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xfdcdedb1 rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x04f89caa rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x0e6507e4 rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x119b72fb rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x11f20ef1 rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1b85bf41 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1c7212b1 rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x22409b58 rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x24e9031c rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x26154654 rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2eb6c6b6 rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3098d490 rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3791c285 rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3bddb589 rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3d94ad97 rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3de030cc rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3fcd9f4d rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x42f6da7f rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4a3f68aa rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4bfc9ee8 rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4d0e0825 rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4ff8430e rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5e75532b rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6061ea2c rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x610ec7f7 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x611a9d18 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x61be1748 rt2x00mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6a1cdc5a rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6bac83d0 rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x72965b45 rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x74560534 rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x869f30ab rt2x00mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x87f03ce7 rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8b718731 rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8e826870 rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x949e285a rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x99a625a5 rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xacab2a7d rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb67ff744 rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb6ab38ab rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc54253ea rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xce03114f rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xdc633f5f rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe1c845a6 rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe756fb42 rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xec92f055 rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf39315c0 rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x17d197dc rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x34ff1a27 rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x3e73c512 rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x5dff36c3 rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xdc7bd232 rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x0f39bdb4 rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x33f83711 rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xea1537d9 rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xf96109a2 rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x2b58bff4 rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x357d7651 rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x36664b4c rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x39cae354 rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x3acd9340 rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x4939e154 rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x55e62c0a rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x56953ebe rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x5a27add0 rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x67d5cac9 rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x8613f650 rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x880124db rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xa72c6a75 rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xc25dff3e rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xceb356c7 rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xfd9e982c rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x4aae21fb rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x672a4421 dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x79e9b2dd dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa5531c76 dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x11f271f1 rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x15094baf rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x1bf45b58 rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x2a2b624a rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x2e52a8a1 rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x540d2b77 rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x698f5c13 rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6fee3a6c rtl8723_phy_set_sw_chnl_cmdarray +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7f2cb2d9 rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x805b2509 rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x83c1d8d2 rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x898ab61a rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x8c1689af rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x91397cec rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x93433917 rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x95ca44cd rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xaa052219 rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xae87efe5 rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xaf4d6d94 rtl8723_phy_calculate_bit_shift +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xb1fd8ce6 rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xbae8df00 rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xbeca7c51 rtl8723_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xc0dcee12 rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xd668df73 rtl8723_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xdec4ef89 rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xeac5ab39 rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xed7ebc72 rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xf0c8dc97 rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xfd4e915a rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x02e70d4c rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x155227f2 rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x241dedc1 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x2d4008b0 rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x33b2e503 rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x3bd8dd7b rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x45f61eb8 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x511260d7 rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x5fd0e32b rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x613e9f2b rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x68da555e rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x6ff15e8e rtl_attribute_group +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x7d43c696 rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x854cdb39 rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xa96c2f8d rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xbc1bb782 rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xdb9c7b6a rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xddbfd147 rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xdf3096a8 rtl_dbgp_flag_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf8ff6add rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x228b9632 wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x7c698412 wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xe6915330 wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x05294fba wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x091711c9 wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0b09a303 wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0e6429b9 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x10f20eae wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1e9fd2c3 wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x21dbe7bb wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2504825e wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2cc4ddad wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3609e077 wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4a7e0aff wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4c0e9f27 wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4e5a8073 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x53dff67d wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6cf91eea wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x708a49c1 wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x759f7acc wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x76a617b0 wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x77fe035d wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7bbae87c wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7c724a78 wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x82b037ee wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x88d69900 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8aa97ad5 wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8ec78d17 wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9443c2a3 wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x98718ba9 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9ffdb910 wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa6e4c514 wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb071e295 wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb19b617d wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb7fa1f79 wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc2947a1d wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc369951b wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc8faf43a wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd59fc005 wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe30aaa97 wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe3647137 wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe443b0b2 wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xea86b712 wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xeaa0058c wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xefd38722 wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf7ad3f3c wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x3b577068 nfc_mei_phy_disable +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x55a5cecc nfc_mei_phy_free +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x667f11be mei_phy_ops +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x8b49db2b nfc_mei_phy_alloc +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x8b4e7b3b nfc_mei_event_cb +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0xe82e19a5 nfc_mei_phy_enable +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x1ddae5e4 ntb_transport_create_queue +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x30934216 ntb_transport_max_size +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x32537aca ntb_transport_link_query +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x3d54dbfc ntb_transport_tx_enqueue +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x42454134 ntb_register_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x436098aa ntb_transport_link_down +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x77ae9ef1 ntb_register_client_dev +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x82e6c13d ntb_transport_qp_num +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x9c992c8f ntb_transport_link_up +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xb4a32159 ntb_unregister_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xc270dc24 ntb_transport_free_queue +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xc37d9036 ntb_transport_rx_remove +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xd40e7a02 ntb_transport_rx_enqueue +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xfe897ddd ntb_unregister_client_dev +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x08f361a6 phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x08fdf187 phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x09f1a9d3 phy_init +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x170c4802 phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x43b7029d phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x54f2f297 devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x7402e1e5 __of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x77a00b22 devm_phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x902f4667 phy_power_on +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x94cddb96 devm_phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x9add069e phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xab5a445d phy_pm_runtime_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xacd6f002 phy_pm_runtime_allow +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xaeb8db0c __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xbd08ff99 devm_phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xbecd0976 phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xc1c9e72c of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xc75a2264 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xcc9b9bb1 devm_phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xdb5a2835 phy_exit +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xe1ba45a1 phy_power_off +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xe2dc35e8 phy_pm_runtime_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xea04955f of_phy_simple_xlate +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0xb26091b3 asus_wmi_register_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0xf3fe44ee asus_wmi_unregister_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_ips 0x46809fa9 ips_link_to_i915_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/mxm-wmi 0x232b5238 mxm_wmi_supported +EXPORT_SYMBOL_GPL drivers/platform/x86/mxm-wmi 0x61cdf799 mxm_wmi_call_mxds +EXPORT_SYMBOL_GPL drivers/platform/x86/mxm-wmi 0xe26032eb mxm_wmi_call_mxmx +EXPORT_SYMBOL_GPL drivers/platform/x86/thinkpad_acpi 0x706cdcef tpacpi_led_set +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x3ecf6cfc wmi_install_notify_handler +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x64ebe677 wmi_query_block +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xa9b7afd8 wmi_set_block +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xb5a6ebe2 wmi_remove_notify_handler +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xc5e3dddf wmi_get_event_data +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xc9d4d6d1 wmi_has_guid +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xe2426710 wmi_evaluate_method +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x6c04d610 pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x7f3f7a19 pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0xf8c9bbd9 pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x005d7bb2 mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xac73f23e mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xec65711d mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x44c8f464 wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x6df8d6cc wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x7d67c73c wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x9229a439 wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x98a2d939 wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xfd04943a wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0x2dcc7cfb wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x01b27301 cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x02ec7085 cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0321f216 cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0880df47 cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x10de3ec2 cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x154b8f83 cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x190e151b cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1c46188b cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x20621722 cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x259d2af7 cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x25e200c1 cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3505eb71 cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3a5c4389 cxgbi_ddp_page_size_factor +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x40e755e6 cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4437c88f cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x52f60be7 cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x57d1d776 cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5949a354 cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x621dc031 cxgbi_ddp_ppod_set +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6be6142b cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6f0f2b8b cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x71e078d3 cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7c4b7a83 cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8774b032 cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8b10cb0a cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8c2ba369 cxgbi_ddp_ppod_clear +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x92627257 cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x94df3901 cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x95ddbac9 cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x99fa1e8e cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9f174b99 cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa546298e cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xaaae12d0 cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xaacdf5e9 cxgbi_ddp_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xac267dfd cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xac87b52c cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc45f9f10 cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc9c99e7c cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd24adb70 cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd2def38e cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd4c23bec cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xdd438dd7 cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe8b0a060 cxgbi_ddp_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf530b391 cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf5f9e444 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf6ac6c38 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x0a382d16 scsi_unregister_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x1de0a472 scsi_register_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x482c712a scsi_dh_detach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x593a36c2 scsi_dh_handler_exist +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xa6570c27 scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xb8e53f6b scsi_dh_set_params +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xca1d7726 scsi_dh_activate +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xd24b6091 scsi_dh_attach +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0fb51275 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1ce06ea8 __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x2249e96b fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x2fca0500 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x374c1e1c fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x798acc4f fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x84b3d915 fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x84d361ff fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x86df42cd fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xa0fa2893 fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xa3882e0b fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xa4799f13 fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xb49eb55e fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xce4a6d01 fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xe3b15a84 fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xe6fd0cba fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xe7356aca fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xe75cba0c fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf6c2e047 fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x15d10a41 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x1d7688be iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x8a902369 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xc451771b iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xdec1bca6 iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xdfdaff7b iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x01a4eecd iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0e9585e9 __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0ee5a0bd iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0f9d3d4c iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x11ffa722 iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12ce3a21 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1593954c iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1c05209a __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2175f640 iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x24d871cf iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x27199a14 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2b65867d __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x33467d52 iscsi_eh_target_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3e58ca7e iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3ec9f1d7 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x50b749bc iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5d47fcaf iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5d9c1c0e iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5e2bdfd5 iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5f81639b iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x61c60209 iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6263f50a iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6635d0aa iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x67200615 iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x69817567 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x75e44633 iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x76876c56 iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x79bfb011 iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7ca82a56 iscsi_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x93f7bebd iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x98c44e5a iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x99418b85 iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9d026c30 iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa737a761 iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa7d63bab iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb72a0e6c iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xcfee460e iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd21e526f iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd88485ff iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdb02ca75 iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe17c3b7f iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xebddc78b iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf494ca62 iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf54fa988 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x31f4ed65 iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x441e4c77 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x5e1f51cb iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x663d0d1e iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x77536a2f iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x7f323845 iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8a542392 iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8ca0cb19 iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x94e669e0 iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xc5693348 iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xc75e9896 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xcb2087b4 iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd3bf683c iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd5c3d8e4 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xdfcb6fdc iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe39a31dc iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xf85fd25a iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x07973622 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1399ebb2 sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1bc12904 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x365084ac sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7b218d42 sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7bbdb97c sas_domain_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7fa4c849 sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x84aeef8a sas_change_queue_type +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x913013b8 sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x9649b04c sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xac11c4f9 sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb116a05b sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb153531d sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb5bd50c2 sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbee3cada sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbf76c6e5 sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc135e899 sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd131b165 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe548b10e sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe6c53268 sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xecd97b7a sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf292d9f9 sas_eh_bus_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf4e3073d sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xfe82aef1 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xfe8d1031 sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x06ec486c srp_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x147bad75 srp_transfer_data +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x2c15d2e0 srp_target_free +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x8483dfbd srp_iu_put +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x9b7cff37 srp_cmd_queue +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xc4250064 srp_iu_get +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x02a169a6 scsi_tgt_free_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x0c78834a scsi_tgt_tsk_mgmt_request +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x1bcfa382 scsi_tgt_it_nexus_destroy +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x26aa30b8 scsi_tgt_alloc_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x7891c82a scsi_tgt_cmd_to_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x920e1d06 scsi_tgt_it_nexus_create +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x97d19fda scsi_host_get_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xcbe67794 scsi_host_put_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xced55cc9 scsi_tgt_queue_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x06f8df9a iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x141a57bb iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1784ff63 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x19637432 iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2086c327 iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2273c311 iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x23bccee9 iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x29fa1e7d iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2a176dc9 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4d77d268 iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x50471e3d iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x55579003 iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5663366f iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5a763230 iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5de35ce1 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x60421f7d iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x69897ecc iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6c7c41e2 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7f339696 iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8c1c073b iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x979c0e2d iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9b1c7a8a iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9be3e0fd iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa07820fc iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa567bac6 iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa62ff4b4 iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa950fe2f iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xaafaaaf9 iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb33c5c46 iscsi_is_flashnode_conn_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb43afd6f iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb55a268f iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb6342eb6 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb9e4f7cd iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbc5e4655 iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbcebd4ab iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbfd012e4 iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd0452385 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd068a179 iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd36de3a4 iscsi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf37619ff iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x0da14f9e sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xa7e9942b sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xbede5acc sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xd6e10ae9 sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x018f02e6 srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x354c2b58 srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x67fa05d2 srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x87f3ccf3 srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xea75d4dd srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xee891cc0 srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x3c28a978 ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x49789b9e ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x79d6693a ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x7ef17f81 ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xd32c5ceb ufshcd_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xdf24e6c4 ufshcd_suspend +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x159a9955 spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x4c53ffcf spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x7df36de3 spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xb620d099 spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xf05a9c97 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x0099152c dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x4145e2a8 dw_spi_xfer_done +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x4ed7f113 dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x5f2607cb dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x99759604 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0x081f222f ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0ab8ae3c comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0ba38816 comedi_buf_memcpy_to +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0e4664ad comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0f72f4fe comedi_buf_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x104ad5f1 comedi_pcmcia_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1221604c comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x12737846 comedi_buf_memcpy_from +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x15a3b588 comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x17513919 comedi_pcmcia_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x33468946 comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x36c6412f comedi_dev_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x393e210e comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3959645e comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3d4811e2 comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x42675871 comedi_pcmcia_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x468a90d6 comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x47c4030b comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x494a4dcc comedi_pcmcia_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x53d88a1e comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x58f84424 comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x594d5429 comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5f78d021 comedi_buf_get +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x66102fc6 comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6e8f597c comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7086ece0 comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x760d00d4 comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7c39d15d comedi_pcmcia_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x812057d1 comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x88c2812d comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x91104e73 comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x91e59950 comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9b195d44 comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa26ea47e comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa4792a39 comedi_pcmcia_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb4cc23e5 comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb6657a65 comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbc142afa comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbf287db9 comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc38b34d2 comedi_error +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc7e20bc0 comedi_to_pcmcia_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb11b452 comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdd239281 comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe8e01145 comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xeb1fbd8b comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xeb3e45a8 comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf3550715 comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf99219b6 __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf9b9f178 comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x0a83d9fb subdev_8255_init_irq +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x4eb989b0 subdev_8255_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x537f5d9d subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0xbff582e3 addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x35b43e79 amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x61d34992 amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xa5c970fe amplc_dio200_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x29890668 cfc_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x8a33713c cfc_read_array_from_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0xf230a3f2 cfc_write_array_to_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0x8806e760 das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x0b8cccec mite_bytes_written_to_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x162b2169 mite_bytes_read_from_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x1aa0c35d mite_setup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x3b062778 mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x3f28b681 mite_unsetup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x4347827f mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x484c4bc4 mite_bytes_read_from_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x53bd75e5 mite_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x55eba641 mite_bytes_written_to_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x7aec8ec0 mite_setup2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x88aa6037 mite_get_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x961a9510 mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xa4a1f893 mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb53793b1 mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb7a52b0e mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xcacdc388 mite_dma_tcr +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd4ba2591 mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe620ba7f mite_sync_output_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xeca1ce14 mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xf1ed53cc mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xf5b3bff3 mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xf5b4de9f mite_sync_input_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc 0xb0f972fd labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x11e48f8f labpc_drain_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x134542f6 labpc_free_dma_chan +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x32ad8a1e labpc_setup_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x44524d7c labpc_handle_dma_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x896b7675 labpc_init_dma_chan +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x18cc6e17 ni_tio_rinsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x28a5b845 ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x403689c0 ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x5bdee04e ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x9622ec9b ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xba6ac4ae ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xd6f63068 ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xdb78ed11 ni_tio_winsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x598fbfa0 ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x9322b310 ni_tio_acknowledge_and_confirm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x94466fbb ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xc2526f14 ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xcc201db0 ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xe39efe8e ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x03f015eb comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x2e0aa754 comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x3c235f21 comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x6034be7a comedi_close +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x664563ab comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x88d72886 comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xb8de63d1 comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x0b7d7960 dwc2_hcd_remove +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x2206b003 dwc2_handle_common_intr +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xb05a818c dwc2_set_all_params +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xb9bb697e dwc2_hcd_init +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x1a1b5249 oslec_flush +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x2feda75b oslec_hpf_tx +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x3227a28e oslec_snapshot +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x7dc9dddd oslec_adaption_mode +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xb2c66001 oslec_create +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xc8b5a524 oslec_free +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xd370f679 oslec_update +EXPORT_SYMBOL_GPL drivers/staging/iio/addac/adt7316 0x4e26c498 adt7316_pm_ops +EXPORT_SYMBOL_GPL drivers/staging/rts5139/rts5139 0xbd5a0e51 rts5139_usb_ids +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x04d9a354 spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0e81c76d spk_serial_out +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x14f06fe7 spk_serial_in_nowait +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x24f94564 spk_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x2d0f8b04 synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x353cea36 spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x3d8bbf16 spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x475e158a synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x5f23a9c8 speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e146195 synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9a888082 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9e5a462b spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb48956f8 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb985b2eb synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc19b5620 spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc766ae09 synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xce56e8c5 speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd168bc93 spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd1b551a2 spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7e810f8 spk_serial_in +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xf711fd27 spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x16e5e559 usbip_event_happened +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x30c2aa47 usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x38deb1ce usbip_recv +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x66c470f0 usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x67df510b usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x6af5bc2d sockfd_to_socket +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x8d07ae00 usbip_start_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xa2460761 usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xa2fc0a48 usbip_event_add +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xa7953d68 usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xd02753dc usbip_header_correct_endian +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xd385b8aa dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xdf82325f usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe1ea0586 usbip_dump_header +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xf5d48f08 usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x585ebaac n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/uio/uio 0x76d774b5 __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x94ca9ded uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xd953033f uio_event_notify +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x51be2d62 usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0xd03f6278 usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x8ae2c5a0 ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0xc9255355 ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x042a38ee usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0569840a usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x06c4e165 usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x14a424d6 usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x1f2e8e8f usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x37251dce usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x39b49ff5 usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4b12b086 usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5c2c6014 usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x67dc86f2 usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x75c3e8a0 usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x76842c3f usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7c55cbfc usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x832136a1 usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x864c64c6 usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x94d7075a usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xad4b050c usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xae4341d8 usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb35b88e9 usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xbee45fd6 usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xcbaea3ad usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd5be6e3e usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xdf129143 usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xe7f2f7d5 config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xe93ecdbb usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf72f35c0 usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf8862a00 usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfe42ba68 usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x37979802 gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x8e27d6de gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xbb06f4c6 gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xf1981607 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x28fbf002 usb_gadget_set_state +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x492db7b2 usb_gadget_map_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x6743300c udc_attach_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xa0c0989c usb_add_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xc29f585e usb_del_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xcbce8dfd usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xe302166c usb_gadget_probe_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xed09d7d4 usb_gadget_unmap_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xf7e67b67 usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x0a5230df fsg_common_set_nluns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x141fce2a fsg_common_remove_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x188da8f5 fsg_common_remove_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x1ccb58f7 fsg_common_set_num_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x2d10b6a7 fsg_common_create_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x51707c29 fsg_common_run_thread +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x6acb4179 fsg_common_set_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x7e26d4a5 fsg_common_set_sysfs +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x99023bfc fsg_common_put +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9a0221c7 fsg_common_free_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9dc025a5 fsg_common_free_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xa46e6443 fsg_common_get +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xc83ee302 fsg_common_set_cdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd3ae3b65 fsg_common_create_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd468f882 fsg_common_set_ops +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xe4d1591e fsg_config_from_params +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x3cc5a4ec ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x8f8d9ac1 ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x003c68ea usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x11091e25 usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x46458d2b usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x4678e294 usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x8407cbea usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xa95a7a16 usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xce1b492e usb_ftdi_elan_edset_output +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xe9e63ea9 ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xf50a954e usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xdc84075b musb_interrupt +EXPORT_SYMBOL_GPL drivers/usb/musb/tusb6010 0x11771bf4 tusb_get_revision +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x164eaeaa usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xa6dd8abe usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xdb34d8bc usb_gen_phy_init +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0x37d11b45 isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x33a25de4 samsung_usbphy_set_type +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x573046fa samsung_usbphy_set_isolation_4210 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x6e43b69f samsung_usbphy_cfg_sel +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x72e73bce samsung_usbphy_rate_to_clksel_4x12 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xab9a0f53 samsung_usbphy_parse_dt +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xd14ea37a samsung_usbphy_rate_to_clksel_64xx +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xd20e5d68 samsung_usbphy_get_refclk_freq +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0x6da21612 usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x0ceb1825 usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x1dd7837c usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x23c6dcb8 usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x301aa8db usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x401ee3d7 usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x5a42620f usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x5bd31e39 usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x6e0e175d usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x7e70feba usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x93c551e9 usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x96069161 usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa0065ed6 usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa0af31c1 usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa5d9b015 usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xb0d8f5c4 usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc191ac3f usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xd1632a68 usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xd1b26b88 usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xe9c1ff8a usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xeb68a767 usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xeee5fe52 usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x00880d0e usb_stor_control_msg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x0e61dd1b usb_stor_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x0fdff0e1 usb_stor_Bulk_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x16517c64 usb_stor_CB_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x1bc3edc2 usb_stor_sense_invalidCDB +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x2e041616 usb_stor_probe1 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x4584e049 usb_stor_bulk_transfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x47f8c8c3 usb_stor_bulk_srb +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x6b0be91f usb_stor_access_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x6bc06730 usb_stor_bulk_transfer_sg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x83d8af49 usb_stor_pre_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x8731e07a fill_inquiry_response +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x886fd846 usb_stor_probe2 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x8bef7b2b usb_stor_Bulk_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xb37b6bce usb_stor_ctrl_transfer +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xb96716c1 usb_stor_reset_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xbc18f25f usb_stor_post_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xc2f543bc usb_stor_CB_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xcb582b46 usb_stor_clear_halt +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xe73c3be0 usb_stor_suspend +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xeb1834ae usb_stor_set_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xee93d655 usb_stor_transparent_scsi_command +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xfc2b7e38 usb_stor_disconnect +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x1e1baefb __wa_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x371461be rpipe_clear_feature_stalled +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x397fafaf wa_urb_dequeue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x4e20024b wa_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x78d5e38d rpipe_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xa36a5dd4 wa_urb_enqueue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xc543b60e wa_process_errored_transfers_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xcb55ad58 rpipe_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xf4654c3f wa_urb_enqueue_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x0bb6bf5e wusb_cluster_id_get +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x13dcc3e5 wusbhc_mmcie_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x19d9fad1 wusbhc_chid_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x23d1ebc4 wusbhc_mmcie_rm +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x318db9d0 __wusb_dev_get_by_usb_dev +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x3b9602c7 wusbhc_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x4bb95e5c wusbhc_rh_start_port_reset +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x6635726b wusbhc_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7f0b7631 wusb_dev_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xa962437e wusbhc_rh_control +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xb725d128 wusb_cluster_id_put +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xba12a9d9 wusbhc_rh_status_data +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xba714cc4 wusbhc_handle_dn +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xca7d5e63 wusbhc_reset_all +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xcd6ac441 wusbhc_giveback_urb +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xd3db64f4 wusbhc_b_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xeb8fea30 wusbhc_b_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf770a6b4 wusbd +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xfe2e17d7 wusb_et_name +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x06c4d633 i1480_fw_upload +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x987bb7e9 i1480_rceb_check +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0xd098fbf6 i1480_cmd +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x439ee724 umc_driver_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x49a741e1 umc_bus_type +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x6f9da070 umc_match_pci_id +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x7ae6e1c9 umc_device_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x82bc68e3 __umc_driver_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x8db764b9 umc_controller_reset +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xd81fb51b umc_device_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xeb752206 umc_device_create +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0b8aad57 uwb_est_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x265e6bc8 uwb_dev_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x2964b071 uwb_rsv_create +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x31e44d53 uwb_radio_stop +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x414f1c06 uwb_rc_alloc +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x46bacb2f uwb_rc_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4d57ae3c uwb_rsv_type_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5bb45740 uwb_rc_pre_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5e4bc088 __uwb_addr_print +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x65a5b423 uwb_rsv_accept +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x69a57cf0 uwb_rc_dev_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x6fd5acbb uwb_notifs_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7685d7d9 uwb_rc_mac_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7dcfcd23 uwb_ie_next +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x83484821 uwb_rc_get_by_dev +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x840c8887 uwb_rsv_modify +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8c50facc uwb_rc_cmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8f8fa71f __uwb_rc_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x98413234 uwb_rsv_state_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x9c59a349 uwb_rc_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x9dfa21b6 uwb_rc_ie_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x9e931655 uwb_rc_get_by_grandpa +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x9fdfb2c8 uwb_rsv_get_usable_mas +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa2438c1e uwb_rsv_destroy +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa4ccdb23 uwb_rc_cmd_async +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa775a1ca uwb_notifs_deregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb4c49aa0 uwb_rc_reset_all +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc50db6fe uwb_rc_neh_grok +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc76022ce uwb_rc_post_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc9a6432e uwb_pal_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xce9e7ad7 uwb_rc_ie_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd74626fa uwb_pal_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xdd6cb9b0 uwb_rc_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe1716f06 uwb_est_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe2fe2cae uwb_dev_for_each +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe39b1603 uwb_pal_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe7a0906c uwb_est_find_size +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xec6430af uwb_rc_vcmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xedbe74c5 uwb_rc_neh_error +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xedd4e19d uwb_rsv_establish +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf6c10dba uwb_radio_start +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf84ae4d9 uwb_rc_put +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xff763e12 uwb_rsv_terminate +EXPORT_SYMBOL_GPL drivers/uwb/whci 0x666135ed whci_wait_for +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x14c79ace vfio_group_get_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x1cda5106 vfio_register_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x4e21b9d2 vfio_add_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x61fa701c vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x78b3b426 vfio_device_get_from_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xbddcdd6e vfio_del_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x12556049 vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x181309dc vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1d0648d2 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x21f3d204 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x269f7a09 vhost_dev_reset_owner_prepare +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x297a0d8e vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x315beda1 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3349372b vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x45c2b736 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4ecfe5bd vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5250c458 vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5f46cbce vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6d0925c1 vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7244468d vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x756c0020 vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x784a12fe vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7cacb0e8 vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x83f50bb4 vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x875fb48d vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9060c6ed vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x99c60f13 vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa7e5a73f vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb3e0ce83 vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbcb3f03d vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbcfdfddf vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbf497b19 vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc9b96a8d vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xcd1dc812 vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xda5387af vhost_init_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe33e8ac8 vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf914730b vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x1c2e8613 auok190x_send_cmdargs_pixels_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x2c09ff8b auok190x_send_cmdargs_pixels +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x54865515 auok190x_send_cmdargs_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x6aa2301b auok190x_read_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x708a7a6d auok190x_pm +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x7dbf3a21 auok190x_common_remove +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x9d3ed04f auok190x_send_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xbd2dc701 auok190x_send_command_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xf454b809 auok190x_common_probe +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xf75a75ed auok190x_send_command +EXPORT_SYMBOL_GPL drivers/video/backlight/apple_bl 0x2c63e051 apple_bl_register +EXPORT_SYMBOL_GPL drivers/video/backlight/apple_bl 0xdab0f892 apple_bl_unregister +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x00f0612b ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x1ad8bd32 ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x2f6d6b46 ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x437fbddb ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x44bb6c7f ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x722aec93 ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x7cd5a4e1 ili9320_write +EXPORT_SYMBOL_GPL drivers/video/fb_ddc 0x196fad3d fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0x404e3c01 fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0x863661fc fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0x8d3258fc sis_malloc_new +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0xa33ed930 sis_free_new +EXPORT_SYMBOL_GPL drivers/video/vermilion/vmlfb 0x016e6c20 vmlfb_unregister_subsys +EXPORT_SYMBOL_GPL drivers/video/vermilion/vmlfb 0x90c018c6 vmlfb_register_subsys +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x22a7af24 viafb_dma_copy_out_sg +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x292da7a2 viafb_irq_enable +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x2c44fa95 viafb_find_i2c_adapter +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x30cc9311 viafb_request_dma +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x31469540 viafb_pm_unregister +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x79e6190a viafb_irq_disable +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0xb4f863e6 viafb_pm_register +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0xcaefb732 viafb_release_dma +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0xfff2dfd2 viafb_gpio_lookup +EXPORT_SYMBOL_GPL drivers/w1/wire 0x1b9c7f83 w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0x45d374de w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x71a0fea3 w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x7c2f2afb w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x969c4441 w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xb75688b1 w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xd6dba624 w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xe00a7e90 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xf091e0dc w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0xf88a5934 w1_next_pullup +EXPORT_SYMBOL_GPL drivers/xen/xen-privcmd 0xcd228a0d xen_privcmd_fops +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x5b930cc8 dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x6ca6f522 dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x9321df95 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc6dc8c2f dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc885f970 dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xdc583c08 dlm_unlock +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x0238c3bc locks_start_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x04b85cbf nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x09cabf4e nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x17ce645d locks_end_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x2134b812 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x3c515df1 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x5b8471d0 nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x5cbc875c lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x7b668efc locks_in_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xbbf4d048 nlmclnt_done +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x019f3f1a nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x023bbdbd get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x039578f9 nfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0a741c99 nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0c807bb5 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0cd8e1f7 nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0e612f36 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0eeec3cc nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x111c2985 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x13e3f509 nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x172d1180 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1885ba68 nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2056570f nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x20fae029 nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26d09dbd nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x27eba5d5 nfs_clone_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x28c25046 nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2aed4d39 nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2c0cdfc0 nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3000c564 nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x305a9291 nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x306fc3b9 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3528ced8 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3661f1c7 nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x37b8ea0a nfs_destroy_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x38fa77df nfs_remount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3953e286 nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3b56c322 nfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ca31f35 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ccab42b nfs_writehdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x44d20a24 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x46a35ed1 nfs_try_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4a4bfb7c nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4bd60173 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x509ec81b nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x517b15de nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x53079265 nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5507a787 nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x560e810b nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x59f4acae nfs_initiate_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5a202c66 nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5a4cc3d9 nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5b6381fd nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5c6c03b1 nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5d372d02 nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5d979e5e nfs_put_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e1d863a nfs_sockaddr_match_ipaddr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5eb8aa40 nfs_file_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5efdeb5b nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5f46a51a nfs_generic_pagein +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5fb08327 nfs_file_splice_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5ffa7b4a nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x606f7477 nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x60d9aaf4 nfs_set_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x615f0810 nfs_writedata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x62551664 nfs_pageio_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x65434e85 nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6773dcb3 nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x67a06c20 nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x698f5c69 nfs_setlease +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x699b1cb4 nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x71454b23 nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7275369f nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x774066a6 nfs_fill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7831e302 nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7a0a4e5c nfs_file_fsync_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7a175e8e nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7f9984bb nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7fe23161 nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x80c3b7f5 nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x81683ab9 nfs_fs_mount_common +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x822a9cf7 nfs_fs_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x83319237 nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8409eefe nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x842acadb nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x872221a6 nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x882c6c07 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8894a242 nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x891c5a4b register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x896061f1 alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89bc5a64 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8cf467d4 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8f5c176f nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9262f5ec nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x97c172be nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9810a18e nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9891c1ed nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x996448ee nfs_pageio_add_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9b211269 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9d2d1d81 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa355f43a nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa62e81ba nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa719db26 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa7d175b2 nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8781486 nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8d2d1ce nfs_callback_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaaa14361 nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xab6986c7 nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xad3dd53d nfs_pageio_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xafb29e29 nfs_readhdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb5243784 nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb606e716 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb6131d0d nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbb8175e3 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbd93388e nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbfa55db1 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4537737 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4ff1e9f nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5ef47d5 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc8881226 nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc9d01ffe nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc9ec58a8 nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcd08e8ce nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcd86ba82 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd0848c62 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd0a02ed8 nfs_file_splice_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd2513081 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdb7331cf nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe1bd36fe nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe3704a7b nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe4dd6b6c nfs_readdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe51994bd nfs_initiate_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xec22c5b3 unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xed70f74c nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeeb9aed6 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeeea337d nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf1bc3dba nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf1be444f nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf284ae55 nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf2b487c0 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf5b56a38 nfs_generic_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf5d939f9 nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb7ee006 nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfde638ea nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfe1b5258 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfed16cdb nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xff11c607 nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x015b0e86 nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x03035420 nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0ba5d0f7 nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x11bda27c __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x170f3ed6 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1b3492c2 pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x223f0644 pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x22a47b90 nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2349fb31 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x29dc004c pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2f60371b nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x32e4870d pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3ae33d1e nfs4_proc_getdevicelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3b3186aa pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3dea6d44 pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x445e7ba3 nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4b58115f pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4c9bbd96 nfs41_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x530caf6d pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x55865f1c nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5e1e8a16 pnfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x665fa50e __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x67ca1012 pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6d1ee98c nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x84e279a1 nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8ba71271 pnfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x90a45b98 nfs4_insert_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x920af83d pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa49963af pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa4ff559f nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa8361b27 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xab473efb pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb38943c7 _pnfs_return_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcb491eb6 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcd6ce52b pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xce88e039 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd1df2624 pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdb813e84 __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdefae368 nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe13d8425 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe314bba5 nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf601d474 nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfd3c42e0 nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x1d877823 nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xa5158f74 nfsacl_encode +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1cb231d0 mlog_not_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1d5e90f6 o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1d747ce3 o2hb_check_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x273801d9 o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36418553 o2net_send_message +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4ae7c36e o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x51292562 o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x687f6251 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x8de1463e o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa82a8645 o2nm_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa9f5379a o2net_send_message_vec +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xae808bac o2net_register_handler +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xbaeb4700 o2hb_check_node_heartbeating_from_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc23bc314 o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc3679d7b o2hb_get_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd60f2c6c o2hb_check_local_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd719935c o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf1a5611d o2net_unregister_handler_list +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x2d28cb0d dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x3f98ecbc dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7fd439d2 dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x92d166a8 dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x93bf0181 dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd7ba575e dlm_errmsg +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd8fa57a6 dlm_unregister_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xe8e354c5 dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xfb86b96f dlm_errname +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x025e2d69 ocfs2_cluster_connect_agnostic +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x0562c415 ocfs2_cluster_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x16b2e575 ocfs2_dlm_unlock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x1a498494 ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5469ce31 ocfs2_dlm_lvb_valid +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x7083dbd5 ocfs2_dlm_dump_lksb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x89502fe7 ocfs2_cluster_connect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xb4bd060c ocfs2_dlm_lock_status +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbbc4ef97 ocfs2_stack_supports_plocks +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbfcfbaf5 ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xc2fab7b8 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xdc823ea4 ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe2bd47db ocfs2_dlm_lock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe40cffce ocfs2_stack_glue_set_max_proto_version +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe417d940 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL lib/bch 0x231d70fc encode_bch +EXPORT_SYMBOL_GPL lib/bch 0x6b770f49 decode_bch +EXPORT_SYMBOL_GPL lib/bch 0x9463ff71 init_bch +EXPORT_SYMBOL_GPL lib/bch 0xbdf512de free_bch +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x60aeda60 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x63997143 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x021957e1 raid6_datap_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x05513b71 raid6_call +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x0f8a2742 raid6_2data_recov +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x201d8ea3 encode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x29fa419f decode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x300d7e57 free_rs +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x6fbb3bd9 init_rs_non_canonical +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xabda1e2e decode_rs16 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xb050f329 init_rs +EXPORT_SYMBOL_GPL net/802/garp 0x3c6d2f04 garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x45b6722f garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0x502f4648 garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0x5cb1a743 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x977fb656 garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0xa0a852e9 garp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x502ed8f2 mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x5b74c7ba mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x6887507d mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x7d5daf36 mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0xb7a84516 mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0xde09031e mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/stp 0xcdc33181 stp_proto_unregister +EXPORT_SYMBOL_GPL net/802/stp 0xf9495ec6 stp_proto_register +EXPORT_SYMBOL_GPL net/9p/9pnet 0x001e2b45 p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/9p/9pnet 0x0e4bf126 p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/atm/atm 0xb09faf79 register_atmdevice_notifier +EXPORT_SYMBOL_GPL net/atm/atm 0xcfb6a3da unregister_atmdevice_notifier +EXPORT_SYMBOL_GPL net/ax25/ax25 0x2d7b761d ax25_register_pid +EXPORT_SYMBOL_GPL net/ax25/ax25 0xac93ae05 ax25_bcast +EXPORT_SYMBOL_GPL net/ax25/ax25 0xaeb7451e ax25_defaddr +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xce01ce36 bt_debugfs +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0153b855 dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x17fc24eb dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1b0c37a9 dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1d99d49a dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1fecf446 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0x28a1a925 dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2a170007 dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0x32b4863e dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3535346d dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x407a1c6b dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x41a6a15f dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4ec35231 dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x511f2c94 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x52515cb1 dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5518c804 dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x59781f39 dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0x636ebe2b dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0x706f3c8f dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0x729dee51 dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7545a655 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0x80649f75 dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8304a73b dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86d726f2 dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8eb68a86 dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9a7a0e3c dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa5b85fce dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0xba3c7dc8 dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc1caa0f2 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc94880fb dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd2a06751 dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd682b7d7 dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd81b23e8 dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd88e8e5c dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0xee1e8edf inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf2c5f761 dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf3017e21 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf411e109 dccp_insert_option_elapsed_time +EXPORT_SYMBOL_GPL net/dccp/dccp 0xfd89df6c dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x1a701d79 dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x329997da dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x7f310ca9 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x815a88c8 dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x981de110 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xde66f7f3 dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x36441126 register_switch_driver +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x51f3f7c0 unregister_switch_driver +EXPORT_SYMBOL_GPL net/ipv4/gre 0x2d828c93 gre_cisco_unregister +EXPORT_SYMBOL_GPL net/ipv4/gre 0x488556ea gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0xd0fa40e1 gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0xdf32eac4 gre_cisco_register +EXPORT_SYMBOL_GPL net/ipv4/gre 0xfb272405 gre_build_header +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x3c54067f inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x463726a5 inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x5c5c96e4 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x95df1e3e inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xe644714f inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xf81a8182 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x06bebd86 ip_tunnel_delete_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x06de30c9 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x2ccfccd7 ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x3e0b6566 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x3e104ebd ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x4c3ffaa7 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x62b34df1 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x70d45c71 ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x8bbcfaaf ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xcd620df7 ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe822971b ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xeddee18b ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xf6f3d395 ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xfaf36a93 ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0xac38a1c9 arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0x7a7d0fde ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_conntrack_ipv4 0x6d40a921 need_ipv4_conntrack +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x6b6c3d10 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_ipv4 0xd554fc76 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_proto_gre 0x636b12c8 nf_nat_need_gre +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x35c220ab tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x77a5cf54 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xbe88f925 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xc44587f1 tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xf7e9d376 tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0xe7546585 xfrm4_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0xfb07635f xfrm4_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x410e326c ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x4d770ee4 ip6_tnl_dst_reset +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x5795b21d ip6_tnl_dst_check +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x92ff05c5 ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xd780a828 ip6_tnl_dst_store +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0xa1815041 ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x6eb85693 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_nat_ipv6 0x901cf59d nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0x74632b7e xfrm6_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0x9d2ba489 xfrm6_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x0b0ebf95 l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x0bb18514 l2tp_tunnel_sock_lookup +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x2640ec73 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x3581bacb l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x4a87bab8 l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x683c9ccf l2tp_session_find_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x724643b4 l2tp_tunnel_sock_put +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x78301696 l2tp_tunnel_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7b5efe70 l2tp_session_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x90df9b6c l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x934ae5c7 l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x94d6a1b5 l2tp_tunnel_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb7918185 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc7345bc5 l2tp_session_queue_purge +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xcaeb0c19 l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe6e270cb l2tp_tunnel_closeall +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xff944d79 l2tp_session_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0xfb6ff5fb l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x01da0b27 ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x24545000 ieee80211_iterate_active_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x2f2be7cc ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3663a36d ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4bf42798 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5d38f601 ieee80211_set_key_tx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x70374548 ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x7c0f8ef7 ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x7fe171ae ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x867bea2e ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x8dcd5e24 ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x9abfee13 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xb4d72e11 ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xba533e24 ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xec691ee7 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x0d33a4c2 ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x0e3141be ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x130a2841 ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x141691e6 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x190cc3c7 ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x1f442980 ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3580b6de ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x63150995 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6344eaf6 ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x65a19477 ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x77983cea ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7f80b584 ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9a52680d ip_set_nfnl_get +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa2d623f3 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xb51c3597 ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xd23f9174 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xd9a12975 ip_set_get_ip_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xdf0e59f6 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xef13ebbe ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x29f4504c ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x2d4a7bda unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x9892c138 ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xf0cd00a6 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01f84db5 nf_conntrack_set_hashsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x045072cd nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0c059966 nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0e1a6287 nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x10ce4c4b nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x10d3ecb9 nfnetlink_parse_nat_setup_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1953a0cd nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1d83fba8 nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1d967f2e nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x20ff8bfa nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x286ab256 nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289c3714 nf_ct_alloc_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2a7aa5eb nf_nat_seq_adjust_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2dec5369 __nf_conntrack_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2e025752 nf_ct_l4proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x306a9cbe nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x32ea302f nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x37386cac nf_conntrack_hash_rnd +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3a2db7fa nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3b466156 nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3f5b1415 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4310fd74 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x445da967 nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x44b38494 nf_ct_l4proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x44bf3f0b nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4530385f nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4bfec022 __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4e68dc3a nf_ct_l3proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5077db87 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x51a59c22 nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x51e7fe8b nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x54664fb1 nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x554533e7 nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x568eec24 nf_ct_l3protos +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5c79148c nf_ct_iterate_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5ea27ebb nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62813e5c nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6ac44f7c nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6b0f4192 nf_ct_l4proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6e224a7a need_conntrack +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6fd6aae6 nf_ct_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x72def963 __nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7461cbdf __nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7574cf09 nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7609ca78 nf_ct_l3proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x762513f2 nf_conntrack_flush_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x766d6ca0 nf_ct_l4proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x78f9b710 nf_ct_l3proto_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7a889be4 nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7b205b1b nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7cc76de5 __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x809b6156 nf_ct_get_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8194f098 nf_ct_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x83c52787 nf_connlabel_match +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x84d4cfdf nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x85c3efde nf_connlabel_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x85e1a60a nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x88fa7f63 nf_ct_l3proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8f3de325 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8f670c29 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9022cddc nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x90ff6c9f nf_ct_invert_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x932489a6 seq_print_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9671e315 nf_ct_l3proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x99b03a4c nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9bc2de51 nf_conntrack_l4proto_udp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9f279331 nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa29a44c9 nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa7cced32 nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa9f4bcd3 nf_conntrack_l4proto_udp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab3d1f95 nf_ct_untracked_status_or +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad1bb027 nf_ct_free_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb1f6648c nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb5e56dbc nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb602c57e nf_ct_l3proto_module_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb7494047 nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbe8ac734 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc097a309 nf_conntrack_l4proto_tcp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc38f2082 nf_conntrack_l3proto_generic +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd59e8817 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd672d536 nf_ct_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdc579ecf nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe1252b16 nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf1a6b2b8 nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf2a1c18b nf_conntrack_l4proto_tcp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf4f66d2d nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf52a15fd __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf8afdd26 nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfd04146b nf_ct_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xff160aa6 nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0xf6647fa6 nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0x5762a7ba nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0xd92eb6c3 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x122bcd28 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x28575dcd set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x3f5cdddf nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x49b66090 nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x49d94ff0 nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x4a2582c9 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x5a129d53 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xcf4f23e7 nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xdab77cc7 set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xfd09e357 set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0x747f10ff nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x0637f7cb nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x4ffefbe9 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xab7314f8 nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xf515c5cd nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x60b2f2c2 nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x691e642e nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x1a4dc090 ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x6a06279e ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x8d1dcffc ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x910266b7 nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x98b0e4b9 ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xb8ad55fc ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xf5bb58c7 ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0xd646591b nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0xd8f740e4 nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x087cb0ed nf_nat_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0d9bae4b nf_nat_l4proto_nlattr_to_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x131f636c nf_nat_l4proto_in_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x1d40067b nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x5ac83a3c __nf_nat_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x75774fe2 nf_nat_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x85b82ddd nf_nat_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xa4786ebb nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xddea2622 nf_nat_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xe5e8ffb5 nf_nat_l4proto_unique_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x11a006b5 synproxy_check_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x2c61ada4 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x8841d39b synproxy_build_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x90298227 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb42e336a synproxy_options_size +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb488209f synproxy_tstamp_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xef7db50c synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0fda3c99 nft_validate_output_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1419651b nft_register_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x2cbe7c55 nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x36666a08 nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x36b95624 nft_unregister_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3d49dab7 nft_validate_input_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x401648d1 nft_validate_data_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x44a90fd5 nft_register_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x4956713a nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x4b992eb0 nft_data_uninit +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6ae02942 nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7102c1e6 nft_unregister_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa4aca375 nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd09a676b nft_do_chain_pktinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xfec0bcba nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x3cc931be nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x48c9b6a2 nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5c7f10d4 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xa4e0419c nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xa6f2ce3b nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xbf965d77 nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xeef3cd62 nfnetlink_alloc_skb +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x21f6bba6 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x760916a8 nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_log 0xb03a919f nfulnl_log_packet +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x265e5e7b xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x2c87a024 xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x40728a63 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x469525cd xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x65b04f52 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x69e303a0 xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x7801af0b xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x7b16714f xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x807d2b2c xt_recseq +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x8a3c367a xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xae67304a xt_hook_unlink +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc2451c8b xt_hook_link +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe480a654 xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xeac0314d xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xf3343422 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x3a099777 xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0xf4e9cb5d xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x7d236671 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x93a9721e nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0xed4af03e nci_spi_send +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x1edddce5 rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0x209dceba rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0x2c5c5514 rds_message_add_rdma_dest_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3101936e rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x310ca762 rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0x3b4fc0fc rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x48d4690c rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x50cbe7b3 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x51da567f rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0x521c328a rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x5e4a88be rds_page_copy_user +EXPORT_SYMBOL_GPL net/rds/rds 0x73aac73d rds_message_populate_header +EXPORT_SYMBOL_GPL net/rds/rds 0x789833eb rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0x884db455 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0x96fafe85 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x97deb61e rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0xa09a9d3e rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0xa20b5a59 rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0xaf5f7200 rds_send_get_message +EXPORT_SYMBOL_GPL net/rds/rds 0xb2cf8ccb rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xc2430532 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc96ce018 rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0xc9a267f7 rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0xd41297ad rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0xd9712e60 rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0xde5ec8ce rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0xe6cb0bb7 rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0xf1c14360 rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0xf3b16e1c rds_inc_init +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0x0817f8c8 rxrpc_register_security +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0xac9fbdb0 rxrpc_unregister_security +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x00c52ef5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x038e02e2 gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x61f14fa3 gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x6caa0f85 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x8d1a827e svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xb5dea7ef g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xf8b2ff6e g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x00e89ee2 rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x01981479 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x035f0522 rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04238d98 svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x043aa9b3 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x045834e9 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x06565280 xdr_partial_copy_from_skb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x07929890 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b7d80f9 rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0ed4215c xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f668ba9 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0fef68e9 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1251f82f cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x12acd812 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1478d59f svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1a6f8643 rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1b19a522 rpc_task_reset_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1ed5ec07 rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f73f99f rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x20bd9a37 xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x20c56bfc svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x211558a7 svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x24302964 rpc_rmdir +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x29ee8614 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2adc6dbd svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2edc660a rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2ee6ccad svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eec63c9 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f8ebbe0 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f900d54 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34a1016d sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x351446f9 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x374eacf8 svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3846f5c4 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x39916200 rpc_lookup_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x39da0235 rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a3ffe7d auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a566676 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3ce7b4b5 sunrpc_cache_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3dfbc3a1 rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f4c1d78 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f8476a5 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3fbbc55b xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3ff3c812 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x43982bc0 auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4653fd59 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x46f70702 xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4711de78 xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x487344fb svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x48c5e222 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4980f56d rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x49dee594 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4a1a02df rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4ae5ea93 rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4b1189c6 xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4b3b68cb rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4c5da2f4 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d3d7c07 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d412af8 rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e4f8c73 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4f0cf52d xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4f9deb00 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x50d5835e bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x50e59df5 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x513632ae rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x54ed4dd2 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x568ac388 rpcauth_generic_bind_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x56d5ec1e rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x59386ded xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a47bc81 xprt_set_retrans_timeout_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5cb2a98d svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5e89e94f svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5eae2135 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x607d3685 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x608a5774 rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x61ea8e20 svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x65c71639 rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x66b48593 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6826014e read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x682ec9ad rpc_lookup_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x683453a5 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x689d9e7e svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6ba6db90 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6c2dce86 xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6cfeeca9 xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71e7cff4 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x735d0bdc xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x73a5abf8 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7424921c rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x754aaed7 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7b058869 rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7b679c87 xprt_lock_and_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7cd37d8a rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80951b28 rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8200307e svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x82503f7f rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x83fe245c cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x852b99b7 rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8766d755 sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x885faeda xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x88755792 rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8cc447d4 __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8e08aca9 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8f270a43 rpcauth_key_timeout_notify +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8f3b33d1 xs_swapper +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x90c996b9 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x919a854c _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x926be6aa sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9283b2d9 svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x93e7f955 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9603c779 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x966294a0 cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x96d4daae xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98b75d64 rpcauth_list_flavors +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9ac533af xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9c141b79 rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9e0e3a19 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa157f2f7 rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa3ba12c7 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa7405d7b svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa84f3222 rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa02fe11 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa76bb59 rpc_get_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaafb03e5 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xabb5724a svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xace435be svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xae1102ba xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xae926e59 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaeb5fbe0 rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf07683c rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb0116611 rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb485e141 xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb602151f unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb7cbe759 rpcauth_cred_key_to_expire +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb831ea50 svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb84c0b93 sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb9be6ab6 svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb9c7cd27 svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xba1fad17 svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbbfc725c xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbede297c rpc_print_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf630bb0 rpc_protocol +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc0f4b380 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc13043be svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc1519724 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc1635a1a rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc21db959 xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc22d7bf2 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3880471 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc43f5441 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc4d5cea0 rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc71c0f33 svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc84ccbc3 rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8a9321d xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8c6e60f svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc96d37e1 rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc9d7ac82 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc9e10962 xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xca6f521d svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd15a6a0f rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd27decc7 svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd28a26e6 xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd2b62fbf xdr_buf_read_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd39b943b svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd3badb3b svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd5504347 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd5925055 xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd789f122 xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd7edacd5 svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdb3835f6 xdr_skb_read_bits +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdb750bda svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdb98935c svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdcabea29 xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xddad1bd4 rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xde084d3d cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xde73b2b8 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdeb27cae xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdef1c779 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1ac2bb8 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe7798a6d xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xea637e54 rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xec168f6e rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeec3e358 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeecf3cd2 xprt_set_retrans_timeout_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf6920f36 rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf6ed66c2 svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf72c4464 rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf7ba90a1 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9586a79 svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9d1164c rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfbb737cf rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfdae4a3c write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe87a4dd xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xffd2b1a3 rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0c79d5ef vm_sockets_get_local_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x15c0c57c vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x41711240 vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x4ae3a947 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x578f056f vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x5809ec0c vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x5fe0cdd8 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x74e91915 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7f730c80 vsock_core_exit +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x95453168 vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb1e93e99 vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb904a6ad vsock_core_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbc77913f vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd0dd2c90 vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd14f9f91 vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xdb9a091c vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe7cbac59 __vsock_create +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf593c40a vsock_pending_work +EXPORT_SYMBOL_GPL net/wimax/wimax 0x30866c73 wimax_msg_send +EXPORT_SYMBOL_GPL net/wimax/wimax 0x47974eb0 wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0x50f6c2af wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x620d00da wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0x67247b4f wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0x7b3aadf9 wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0x7b4795c3 wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0x9b65c4d3 wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0xa6e386ac wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0xbe21f39d wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0xced10505 wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xd7ff8107 wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0xe790b315 wimax_msg +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x04e01ee3 cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x16b53a8c cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x2abf659b cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x3ef1e65a cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x83564bc9 cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x88002e65 cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x89ebdbbf cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x93f75190 cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xb79254b5 cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xc32d1ae5 cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xcc8e79ac cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x00778770 xfrm_ealg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x056bb269 xfrm_ealg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0a575945 xfrm_count_pfkey_auth_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0b9e5852 xfrm_aead_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x28e23139 xfrm_probe_algs +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x74e1a843 xfrm_aalg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7a8ca627 xfrm_count_pfkey_enc_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7c30b8c7 xfrm_calg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x92dbc6c1 xfrm_aalg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xbc8b0f41 xfrm_calg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xce7a55c1 xfrm_ealg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xe122af95 xfrm_aalg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x1d67d4d7 ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x63d0cc3c ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x7ec71870 ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xf73ffd56 ipcomp_destroy +EXPORT_SYMBOL_GPL sound/core/snd 0x248f3f24 snd_kctl_jack_report +EXPORT_SYMBOL_GPL sound/core/snd 0x3ca17104 __snd_printk +EXPORT_SYMBOL_GPL sound/core/snd 0x5b62dcf5 snd_kctl_jack_new +EXPORT_SYMBOL_GPL sound/core/snd 0x72087731 snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL sound/core/snd 0xa53f6d57 snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/core/snd 0xeff4fd02 snd_ctl_activate_id +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x3108ddb7 snd_compress_new +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x78caaed3 snd_compress_register +EXPORT_SYMBOL_GPL sound/core/snd-compress 0xc3196f1b snd_compress_deregister +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x0cdad54b snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x292763d8 snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x0adc3548 snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x10c48e1e snd_ak4113_create +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x16caa9f9 snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x9a155aac snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xb2c43a34 snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xf27a877e snd_ak4113_build +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x03759908 snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x04d90cbb snd_hda_codec_resume_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0721fc06 snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x086889cc snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0cebc5a3 snd_hda_suspend +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0dae47fc snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0f87aa8a snd_hda_parse_generic_codec +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x124cb4b8 snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x130b0542 snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x13bd28b5 snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x13c96133 snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x15c6b718 snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x175942ff snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x17a1421c snd_hda_parse_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x19e17e5b snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1ec5a1a5 snd_hda_ch_mode_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x20b3c8fe snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x21c505f8 snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x22bc57c0 snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x230b90fd snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2a3e6d90 snd_hda_codec_flush_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2b3ac936 snd_hda_ch_mode_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2bf8f3a8 snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2cb7612a snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2dd6a1e2 snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2f5beffd snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3275ac5c snd_hda_jack_detect_state +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3353784c snd_hda_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x347bb42b snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3544cf05 snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x35a85479 hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3637eea5 snd_hda_gen_spec_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x375cacd5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x381bd369 snd_hda_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x39b609a7 snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3aa24566 snd_hda_override_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x401b5d64 __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4217a00a snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x422b0337 snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x42368943 snd_hda_mixer_bind_ctls_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x440154b5 snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x44131596 snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x45a5f198 snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4722fc85 snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x49a78526 snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4b32b982 snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4d1ce24d snd_hda_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4dab1f60 snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x52ef3268 snd_hda_codec_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5836d833 snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5d819444 snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5daa1c5b snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5e758a1d snd_hda_queue_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5eed7dac snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5feee2bb snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x60cdceff snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x63270b35 snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6361f23c snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x651bf1c6 snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x67958b0c snd_hda_jack_detect_enable_callback +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x69a24ad4 snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6fc06ed5 snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x712554f1 snd_hda_jack_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x757f9331 is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x764d2220 snd_hda_check_board_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x79696d07 snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7d031c5b snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7da4e357 snd_hda_bus_reboot_notify +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8015d152 snd_hda_jack_tbl_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x804f289f snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x83404230 snd_hda_get_sub_nodes +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8389bca1 snd_hda_codec_amp_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x84fb0013 snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x893f41f4 snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8b876149 snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8bde88b9 snd_hda_query_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8d04deda snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8d26b210 snd_hda_jack_tbl_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8e4c6826 snd_hda_calc_stream_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8edd10e5 snd_hda_codec_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8efb5d9d snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x90f3183b snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9108955e snd_hda_mixer_bind_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x925aa88d snd_hda_sequence_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x98cdc409 snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9cfe762e snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9e6b5b03 snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa0551fb3 snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa2827d76 snd_hda_get_jack_location +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa3e66ce3 snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa44c46bb snd_hda_codec_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa4d2c1c0 snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa76fbd22 snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa82aed16 snd_hda_ch_mode_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xabbeae34 snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xabcf4e70 snd_hda_bind_vol +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xae6bc9a7 snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaf3080b7 snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb221b9e6 snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb2ac1a5c snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb2b254ad snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb2edec31 snd_hda_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb4562d65 snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb5b8ed8b snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb5d08130 snd_hda_query_supported_pcm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb86d36e8 snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb98c2bf7 snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbd392507 snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbd83c508 snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbe0d7163 snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc2a6b4e0 snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc3704ac4 snd_hda_check_board_codec_sid_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc5fa758f snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc652fd69 snd_hda_get_jack_connectivity +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc7d11fc2 snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc82e3c72 snd_hda_mixer_bind_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc8c8669d snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc8d0a77f snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc934a99a snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc99b6558 snd_hda_mixer_bind_ctls_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcb301b6e snd_hda_get_jack_type +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcdea2293 snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcef337bd snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcf1ce5ca __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd05bb17b snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd073fcf2 snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd493f26d snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd58da3f8 snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd6c4bdeb snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd7a35cb7 snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd7d28282 snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd7eb144b snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdac9776c snd_hda_mixer_bind_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdb7c2e46 snd_hda_mixer_bind_ctls_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdc12b370 snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdf9cba12 snd_hda_bus_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe0655003 snd_hda_get_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe10d8447 snd_hda_is_supported_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe3635d32 snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe4e3ec9b snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe57a974b snd_hda_add_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe5cd4fd0 snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe63889b3 snd_hda_resume +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe6cac4a0 snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe89519de snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe9c7c443 snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xea0c3af3 snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeaa30e20 snd_hda_bind_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf0026d5d query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf091954a snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf2b03921 snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf3d2d7f8 snd_hda_codec_resume_amp +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf517bedc _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfba43123 snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfc418fcf snd_hda_delete_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfd71e308 snd_hda_codec_update_cache +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x0775bc95 atmel_pcm_mmap +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x1a03f040 atmel_pcm_free +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x6742ea90 atmel_pcm_new +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sn95031 0x2cad8371 sn95031_jack_detection +EXPORT_SYMBOL_GPL sound/soc/mid-x86/snd-soc-sst-platform 0x1362e2a4 sst_unregister_dsp +EXPORT_SYMBOL_GPL sound/soc/mid-x86/snd-soc-sst-platform 0xd0c47c46 sst_register_dsp +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x012a5599 snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x02b3d517 snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x045f652b snd_soc_dapm_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0474ae87 snd_soc_jack_report +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x04b00b63 snd_soc_bytes_put +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x06dceffb snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x07b5fafb snd_soc_codec_readable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0a123474 devm_snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0df729b7 snd_soc_dapm_put_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x10234d4b snd_soc_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1047a84b snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x11a153aa snd_soc_info_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x13c5c9c3 snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x16dc94b5 snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x18b0bea5 snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1b0f45ec snd_soc_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1fcde1aa snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x227f26fe snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x22caf8a7 snd_soc_lookup_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x23c5a567 snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2e099852 snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2ed22f51 snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2f4d44fb snd_soc_test_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2f84c0dd snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x311b12bf soc_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x311cc19e snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x32ad8327 dapm_reg_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3426e031 snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x345e44bc snd_soc_codec_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x34e482c8 devm_snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x39929914 snd_soc_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3a1f0a3a snd_soc_codec_writable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3cf2965f snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3d7fd89b snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3e5e51e5 snd_soc_codec_set_cache_io +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3ff8493b snd_soc_codec_volatile_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x409944fe snd_soc_cache_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4244e2bb snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x43ad93e5 snd_soc_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x44be7cc1 snd_soc_add_platform_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x48509112 snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x48a7e3ab snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4a769d01 snd_soc_update_bits_locked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4c9b772d snd_soc_dapm_get_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4df11466 snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4f268ca0 snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x50487622 snd_soc_limit_volume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5188af2e snd_soc_add_codec_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x57fdae51 snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5a4810cc snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5b489d45 snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5d4098a8 snd_soc_get_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5e1f4786 snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5fbd2a02 snd_soc_new_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5fd6522b snd_soc_dapm_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x62d1e30f snd_soc_update_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x654ec944 snd_soc_remove_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6578f3d2 snd_soc_dpcm_be_set_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x671ae6ac snd_soc_cache_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6733ce84 snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6fa91430 snd_soc_cnew +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x74263409 snd_soc_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x74c1e50d snd_soc_get_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7696043f snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x769b7f24 snd_soc_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x76ea3700 snd_soc_platform_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e7e1fb4 snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x819d0d87 snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x82336670 snd_soc_register_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8452bd0e dapm_mark_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x85363acf snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8679ffdb snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8825621e snd_soc_pm_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8e5648ad snd_soc_get_dai_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8fce9995 snd_soc_dpcm_be_get_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x908b3e91 snd_soc_dapm_kcontrol_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x931e92f9 snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9592b263 snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x96a87638 snd_soc_info_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9a5729ca snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9b21f387 snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9db3af85 snd_soc_platform_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa0c9f752 snd_soc_put_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa1e4be4b snd_soc_bytes_info +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa35d0fc5 dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xaaad878f snd_soc_bytes_get +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb02f96a7 snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb14fd952 snd_soc_platform_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb3fc8a00 snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb7ba5090 snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb7f77dca snd_soc_unregister_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb8c4be28 snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb8c9c533 snd_soc_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb9fe3e4a snd_soc_jack_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc2cb2a44 snd_soc_resume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc8386c64 snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcb286d5d snd_soc_poweroff +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcc1c3bf0 snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcc23ae50 snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcc95ae64 snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xce91bd0b snd_soc_jack_get_type +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xce975a65 snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcf1d39e4 snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd020218c snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd15b7af6 snd_soc_unregister_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd350e120 snd_soc_dapm_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd3b84763 snd_soc_codec_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd4e28fa3 snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd7f9f342 snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd99426f9 dapm_regulator_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xde7fd7ee snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdeae5314 snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdf139047 snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe104611f snd_soc_add_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe1dcad44 snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe293c0f0 dapm_mark_io_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe2bb0595 snd_soc_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeaac3658 snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xebd4b1bc dapm_clock_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xec77c0c8 snd_soc_put_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeca61a47 snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf06627af snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf147bb40 snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf2d8f9f2 snd_soc_unregister_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf376f590 snd_soc_free_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf422e3d4 snd_soc_debugfs_root +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf4c8f994 snd_soc_register_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf56f495a snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf62835f1 snd_soc_cache_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf9cb9a6f snd_soc_add_card_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfb2f3ed1 snd_soc_info_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfc4f8be1 snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfceaad7e snd_soc_dapm_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfd3ccd10 snd_soc_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfe107580 snd_soc_unregister_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfeb73244 snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0x118a3f6e i915_bdw_gpu_busy +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0x7381c75a i915_bdw_read_mch_val +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0x96d7119d i915_bdw_gpu_raise +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0xa17bc3aa i915_bdw_gpu_turbo_disable +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0xde54f019 i915_bdw_gpu_lower +EXPORT_SYMBOL_GPL vmlinux 0x00000000 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x00000000 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x00000000 kern_mount_data +EXPORT_SYMBOL_GPL vmlinux 0x00000000 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x00000000 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x0008df7c usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x0032ee5e usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x0034f3b6 xen_has_pv_nic_devices +EXPORT_SYMBOL_GPL vmlinux 0x004db789 sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0x0053263e dm_set_device_limits +EXPORT_SYMBOL_GPL vmlinux 0x00632780 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x007398d6 da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0x009304b6 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x009386b8 cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x00c4dc87 timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x00d75fa2 scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0x00deed53 spi_unregister_master +EXPORT_SYMBOL_GPL vmlinux 0x00ebcb5d ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0x00f50d88 perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0x01010c6d klist_add_before +EXPORT_SYMBOL_GPL vmlinux 0x011cf028 regulator_suspend_finish +EXPORT_SYMBOL_GPL vmlinux 0x01325f4f tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x013e6458 get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0x014160c2 css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x0155693d __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x01707f43 crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x0170cb6c efivar_work +EXPORT_SYMBOL_GPL vmlinux 0x01848a8e local_apic_timer_c2_ok +EXPORT_SYMBOL_GPL vmlinux 0x0185e899 blkg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x018daee0 pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0x01af5d95 single_open_net +EXPORT_SYMBOL_GPL vmlinux 0x01c7b65d rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0x01d11a05 wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01f07546 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0x01f1fa55 list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0x021fda08 ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0x023411c5 tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0x023fa463 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0x025eec5b dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x026211e2 memory_failure_queue +EXPORT_SYMBOL_GPL vmlinux 0x02932208 print_context_stack +EXPORT_SYMBOL_GPL vmlinux 0x02ad03c0 blk_queue_dma_drain +EXPORT_SYMBOL_GPL vmlinux 0x02b24324 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x02c4f7f7 ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x02dcb0b2 crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0x02f33224 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0x03121bab blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x031eed7d __clocksource_updatefreq_scale +EXPORT_SYMBOL_GPL vmlinux 0x03371153 usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x03447024 ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0x034474df sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0x03983a36 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0x03a12644 inet_csk_reqsk_queue_prune +EXPORT_SYMBOL_GPL vmlinux 0x03bbf026 pinctrl_pm_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x03bdb124 crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x03c92417 pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x03df4567 ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x03e3686c ata_timing_cycle2mode +EXPORT_SYMBOL_GPL vmlinux 0x03e83f3a platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x03f3ab64 dma_buf_kunmap +EXPORT_SYMBOL_GPL vmlinux 0x0407542d usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x0411db39 i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x0412407f xen_swiotlb_sync_single_for_cpu +EXPORT_SYMBOL_GPL vmlinux 0x0430114e raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x0444e42b balloon_mapping_alloc +EXPORT_SYMBOL_GPL vmlinux 0x0444e4e2 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x0445210b percpu_ida_free +EXPORT_SYMBOL_GPL vmlinux 0x04486e88 rcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x044e1178 i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x046f036c pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x047f59c8 rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x04897140 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x04917178 regulator_can_change_voltage +EXPORT_SYMBOL_GPL vmlinux 0x04a2d6e5 ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x04a4b7f7 user_match +EXPORT_SYMBOL_GPL vmlinux 0x04b4b190 regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0x04bf26af ioremap_page_range +EXPORT_SYMBOL_GPL vmlinux 0x04c3f2c1 gnttab_empty_grant_references +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04e73570 i2c_new_device +EXPORT_SYMBOL_GPL vmlinux 0x04eb8e99 driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x04efa836 cpufreq_frequency_table_cpuinfo +EXPORT_SYMBOL_GPL vmlinux 0x050398ce pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0x051280ba ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0x05157fc6 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0x0525dad5 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0x052f0ef0 subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x054aff6e rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x05519a2f __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0551f0ce tick_nohz_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x055a3cd3 ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0x057e4aa6 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x0593b606 max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x05ac5ded gnttab_unmap_refs +EXPORT_SYMBOL_GPL vmlinux 0x05d1b442 __efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x05d4d318 shake_page +EXPORT_SYMBOL_GPL vmlinux 0x060d1064 set_memory_ro +EXPORT_SYMBOL_GPL vmlinux 0x06151fdd pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0x061b3504 da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x062fc169 xen_hvm_resume_frames +EXPORT_SYMBOL_GPL vmlinux 0x063bb0d8 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0647298c key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x06527b10 fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0x065445b9 tcp_init_congestion_ops +EXPORT_SYMBOL_GPL vmlinux 0x065a673b __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x065c2b8a scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0x06963c36 intel_msic_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x06981f3c cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x06d549e6 pinctrl_free_gpio +EXPORT_SYMBOL_GPL vmlinux 0x06ef0f5a sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0x06f643f1 spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x06fba147 devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x071e45b4 efivar_entry_set +EXPORT_SYMBOL_GPL vmlinux 0x0722fccf md_stop +EXPORT_SYMBOL_GPL vmlinux 0x072c9a0a hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x0733fd82 pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x074436b9 debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x0762403c edac_put_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x076dcc89 fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0x078c0137 btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x078f5bed spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x079ba342 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0x079cebb7 clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x079f9d44 devm_acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x07a0bc54 irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07c23aff iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0x07f26432 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x07f300c3 smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x07fc478e acpi_dev_resource_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x0817264c ata_acpi_gtm_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x08238599 xenbus_frontend_closed +EXPORT_SYMBOL_GPL vmlinux 0x082fc965 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x0838a48d ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0x08d71667 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x08f5b168 usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x090c714b ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x0917e3f4 extcon_get_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x09259f7e device_attach +EXPORT_SYMBOL_GPL vmlinux 0x0934f7a7 skb_gro_receive +EXPORT_SYMBOL_GPL vmlinux 0x09437748 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x09469482 kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x094a3d7d fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0x09524d66 pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x0962d0e8 irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x096f6caf pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x0991a9b8 bio_trim +EXPORT_SYMBOL_GPL vmlinux 0x0999b6f6 pci_intx_mask_supported +EXPORT_SYMBOL_GPL vmlinux 0x0a22c0d7 acpi_dev_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x0a40f0e6 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0x0a6c4fc2 fat_detach +EXPORT_SYMBOL_GPL vmlinux 0x0a8c916e reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x0a8ccfb8 iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0x0a9fd3c5 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x0aa3f7dd usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x0aa50cd5 ping_proc_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0abb14f2 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x0ae07305 crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0x0afd4610 zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0x0b06bfc1 gov_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b10c6c8 driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x0b1ea5a6 devres_get +EXPORT_SYMBOL_GPL vmlinux 0x0b371c09 unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x0b4ce7cc devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0x0b52e502 apei_resources_add +EXPORT_SYMBOL_GPL vmlinux 0x0b59390b __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0b8707ee sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0x0b87bff6 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x0ba31217 add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x0bad8654 sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0x0bae62b1 ktime_get_monotonic_offset +EXPORT_SYMBOL_GPL vmlinux 0x0bcdadf6 device_create +EXPORT_SYMBOL_GPL vmlinux 0x0bf24a1b tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0x0bfa3a19 rcu_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x0c085885 inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0x0c087747 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0x0c0c015e ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0x0c1104b9 sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0x0c2cdbf1 synchronize_sched +EXPORT_SYMBOL_GPL vmlinux 0x0c4793f8 blkdev_aio_write +EXPORT_SYMBOL_GPL vmlinux 0x0c805f93 clflush_cache_range +EXPORT_SYMBOL_GPL vmlinux 0x0c80e3fe efivar_init +EXPORT_SYMBOL_GPL vmlinux 0x0c91261f rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0x0ca2c6a5 ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x0ca65fbd regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0x0ca7e6b6 ping_err +EXPORT_SYMBOL_GPL vmlinux 0x0cc1e40f crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x0cc20a91 adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x0cd96a89 get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0x0d281d53 led_classdev_register +EXPORT_SYMBOL_GPL vmlinux 0x0d2b4560 percpu_ida_for_each_free +EXPORT_SYMBOL_GPL vmlinux 0x0d2fd94d inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x0d8fc377 crypto_nivaead_type +EXPORT_SYMBOL_GPL vmlinux 0x0d9377f8 regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0dae565b dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x0dd8ba8a rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0df7bd12 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x0df91bea acpi_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0x0e004ef3 usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0x0e13cb4d apei_resources_release +EXPORT_SYMBOL_GPL vmlinux 0x0e1a49b6 tpm_gen_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x0e244c27 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x0e2e7bd1 regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x0e45ff19 crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x0ea08d04 subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x0ea3fa49 serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0x0ece4bb5 usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x0ed9302e percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL vmlinux 0x0ef3554b device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x0f0702b1 ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x0f10382e ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x0f187b47 xenbus_read_otherend_details +EXPORT_SYMBOL_GPL vmlinux 0x0f2d7d87 mce_unregister_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0x0f3027c6 dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0x0f518fba ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0x0f5702e6 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x0f751aea input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0x0fa138de xen_hvm_need_lapic +EXPORT_SYMBOL_GPL vmlinux 0x0fbba964 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x0fbf5176 napi_by_id +EXPORT_SYMBOL_GPL vmlinux 0x0fc01e9f static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x0fcc1969 copy_from_user_nmi +EXPORT_SYMBOL_GPL vmlinux 0x0fdfd63e btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x0fe2d570 xenbus_directory +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x10756097 blk_queue_rq_timed_out +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x110106c1 cper_severity_to_aer +EXPORT_SYMBOL_GPL vmlinux 0x110510dd regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x1172ce54 rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0x1173a237 find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0x117c7305 hwpoison_filter_dev_major +EXPORT_SYMBOL_GPL vmlinux 0x1184f059 crypto_rng_type +EXPORT_SYMBOL_GPL vmlinux 0x119d040b dev_hard_start_xmit +EXPORT_SYMBOL_GPL vmlinux 0x11f21c69 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0x11f59b39 wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0x12012541 rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x12030fa6 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0x12131b08 md_new_event +EXPORT_SYMBOL_GPL vmlinux 0x121cbf1c acpi_unbind_one +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x121ed3f3 add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0x1228b374 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0x1230567b xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0x1230ea05 efivars_kobject +EXPORT_SYMBOL_GPL vmlinux 0x12499748 sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x124f2056 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x1252fb38 acpi_dev_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x129060ae tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0x12b16e9f perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0x12cf7fce fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x12f5f435 blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x12fb5ac2 pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0x130bd388 check_tsc_disabled +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131b4e0c shash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x1329bb6b cgroup_taskset_next +EXPORT_SYMBOL_GPL vmlinux 0x132fc939 cper_estatus_print +EXPORT_SYMBOL_GPL vmlinux 0x13560a6a exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0x1374c2a3 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0x138aff76 gnttab_init +EXPORT_SYMBOL_GPL vmlinux 0x13921363 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x1395cc9a usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x13ad647f scatterwalk_bytes_sglen +EXPORT_SYMBOL_GPL vmlinux 0x13b89dee pinctrl_request_gpio +EXPORT_SYMBOL_GPL vmlinux 0x13bfee20 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0x13c1da23 crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x13cf6e7b power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0x13d77394 tps65912_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x13f3e3fb klist_init +EXPORT_SYMBOL_GPL vmlinux 0x1414c049 usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x14168221 shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x145784d1 gdt_page +EXPORT_SYMBOL_GPL vmlinux 0x145edbdc unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0x1468e47e wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x14b1a914 xenbus_dev_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x14c28850 pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x14deb461 ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x14eb7b6b inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x14f875ce devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x14fc0c63 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x1500eefb device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x15010e1f arbitrary_virt_to_machine +EXPORT_SYMBOL_GPL vmlinux 0x151a4819 sk_unattached_filter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1541c77d ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0x15568631 lookup_address +EXPORT_SYMBOL_GPL vmlinux 0x156b462d transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x15736dd8 inet_hash +EXPORT_SYMBOL_GPL vmlinux 0x15876ffd tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x15892417 async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x158f1fd6 device_register +EXPORT_SYMBOL_GPL vmlinux 0x15a4038a iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0x15a4635d regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x15b0606e e820_any_mapped +EXPORT_SYMBOL_GPL vmlinux 0x15c82503 kill_pid_info_as_cred +EXPORT_SYMBOL_GPL vmlinux 0x15cb0f17 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0x15df1a29 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x15e6726f rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x16000a3c dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x1623fb62 scsi_internal_device_unblock +EXPORT_SYMBOL_GPL vmlinux 0x1650bf27 rcutorture_record_progress +EXPORT_SYMBOL_GPL vmlinux 0x16541c7a scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x1657a590 tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x165a1e08 regmap_read +EXPORT_SYMBOL_GPL vmlinux 0x166bee54 cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x168b585a class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x16924a49 usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0x16bc8a7a rtc_set_mmss +EXPORT_SYMBOL_GPL vmlinux 0x16c10a2c platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1703022a ftrace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x172e72d4 vdso_enabled +EXPORT_SYMBOL_GPL vmlinux 0x1732e87b unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x1738f397 zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x1746f98e __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x1753a32f hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0x1756f2cf led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0x17614bf3 apei_resources_sub +EXPORT_SYMBOL_GPL vmlinux 0x176ebf78 gpiochip_add +EXPORT_SYMBOL_GPL vmlinux 0x1794c343 mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0x17bb5640 raw_seq_open +EXPORT_SYMBOL_GPL vmlinux 0x17d2b4c7 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x17ecb336 save_stack_trace_tsk +EXPORT_SYMBOL_GPL vmlinux 0x1804992a blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0x18140cf0 trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x181b1663 regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0x1829b9ed hwpoison_filter_memcg +EXPORT_SYMBOL_GPL vmlinux 0x1853653c btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x18582826 amd_pmu_disable_virt +EXPORT_SYMBOL_GPL vmlinux 0x185fdcac xenbus_probe_devices +EXPORT_SYMBOL_GPL vmlinux 0x1866cec2 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x1878f62b edac_err_assert +EXPORT_SYMBOL_GPL vmlinux 0x18a27f34 jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0x18ca8c5e wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0x18f83fab gnttab_grant_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0x18fb7ee9 rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x19081063 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0x190e6b57 crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0x1932f29b input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0x193d48e0 trace_current_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x19496284 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0x194b8d42 blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0x194dd5f5 pkey_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x196614ce hw_breakpoint_restore +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19b384a5 hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x19be1d1b spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0x19ce89dd tpm_store_cancel +EXPORT_SYMBOL_GPL vmlinux 0x19f49249 devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x19f7ab02 devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1a082d69 max77693_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x1a2dc357 tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0x1a323362 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x1a33ce74 efivar_entry_find +EXPORT_SYMBOL_GPL vmlinux 0x1a396237 cgroup_add_cftypes +EXPORT_SYMBOL_GPL vmlinux 0x1a4b442a dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0x1a625cc1 aead_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0x1a7544ad gpio_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x1a7accf7 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0x1aa209ee hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0x1acef7d2 pm_freezing +EXPORT_SYMBOL_GPL vmlinux 0x1ad259d4 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0x1ad83009 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0x1ae76ccc acpi_kobj +EXPORT_SYMBOL_GPL vmlinux 0x1b1f2bda speedstep_get_freqs +EXPORT_SYMBOL_GPL vmlinux 0x1b38a3bf device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0x1b52db1c probe_kernel_read +EXPORT_SYMBOL_GPL vmlinux 0x1b670076 blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x1b679cf8 pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x1b8822d8 pinctrl_gpio_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1b8ef46a inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x1b9623c6 edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x1b9aca3f jprobe_return +EXPORT_SYMBOL_GPL vmlinux 0x1ba0d156 kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0x1ba7daad dma_buf_kmap +EXPORT_SYMBOL_GPL vmlinux 0x1ba7ee02 usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0x1bc5eebe pinctrl_gpio_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x1bcbcf5d rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x1bd06aab cpufreq_frequency_table_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x1be63859 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0x1bea9e09 bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0x1c38f8d0 devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c5fc3b3 subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x1c7614d6 bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c84b759 sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1c9be1b9 init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x1cbbabb0 usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x1cda4384 sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x1ce98df1 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x1cec0be8 cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0x1d1438b1 device_store_int +EXPORT_SYMBOL_GPL vmlinux 0x1d1a7a8c set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x1d459685 xstate_size +EXPORT_SYMBOL_GPL vmlinux 0x1d58ae14 lpddr2_jedec_timings +EXPORT_SYMBOL_GPL vmlinux 0x1d6d1b53 __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0x1d739e1c xen_set_callback_via +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d842620 wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x1d8f65ce platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0x1d8fb3bb acpi_dev_resource_address_space +EXPORT_SYMBOL_GPL vmlinux 0x1da68d60 iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0x1e000879 hwpoison_filter_enable +EXPORT_SYMBOL_GPL vmlinux 0x1e092fa4 usb_bus_list_lock +EXPORT_SYMBOL_GPL vmlinux 0x1e0a5f33 crypto_alg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1e1f67d7 blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x1e391b2f rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x1e3a88fb trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x1e4c43f5 device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x1e5b03dc pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1e62530d ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e8753a0 blk_queue_bypass_end +EXPORT_SYMBOL_GPL vmlinux 0x1e945ff4 spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x1ea6c657 aead_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0x1eb1594f gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x1eb457dc ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ec5e737 pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x1ec6c50a device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x1edc21cb hwpoison_filter_flags_mask +EXPORT_SYMBOL_GPL vmlinux 0x1eec9089 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x1f1988f7 hwpoison_filter_flags_value +EXPORT_SYMBOL_GPL vmlinux 0x1f594d8c cred_to_ucred +EXPORT_SYMBOL_GPL vmlinux 0x1f7d714b skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0x1f7ec4bc __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x1f7f6fac register_jprobe +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f8db7f9 ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x1f9d7852 platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0x1fa5f0c9 sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x1faa2f14 pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x1facd162 system_trusted_keyring +EXPORT_SYMBOL_GPL vmlinux 0x1fad299a regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x1fbba825 __inet_hash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x1fcece42 inet_twdr_twcal_tick +EXPORT_SYMBOL_GPL vmlinux 0x20167f02 xenbus_dev_remove +EXPORT_SYMBOL_GPL vmlinux 0x2025eb38 perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x20487cdc pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x20671650 call_srcu +EXPORT_SYMBOL_GPL vmlinux 0x20864a42 sysfs_get +EXPORT_SYMBOL_GPL vmlinux 0x2090f3ba register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x209bbaad i2c_new_dummy +EXPORT_SYMBOL_GPL vmlinux 0x209ec764 xen_event_channel_op_compat +EXPORT_SYMBOL_GPL vmlinux 0x20bc3470 orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x20d4a18d __percpu_ida_init +EXPORT_SYMBOL_GPL vmlinux 0x20fdfe78 unregister_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0x214d1d28 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0x21574900 devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0x2171b580 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0x217cd9c1 sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x2195b73d task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x21a6d7ff spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x21aa048a usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x21b2041d blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x21c96558 device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x21f6afbb scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x220a39ea uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0x222a5e4f usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0x224ef6a6 rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x2279fc70 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x2296c00d crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x22c05963 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x22f78484 usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0x23205cc9 usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x232da5d7 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x2366a2c0 errata +EXPORT_SYMBOL_GPL vmlinux 0x23679939 __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x2378552a fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0x237ef55d ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0x23811884 vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x2392bc6e pm_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0x23a516cb blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0x23cb8cbe replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0x23dbde3a subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x23f918a3 tcp_death_row +EXPORT_SYMBOL_GPL vmlinux 0x240580a9 xenbus_probe +EXPORT_SYMBOL_GPL vmlinux 0x242a9783 sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0x242b9134 __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x242ed365 regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2447533c ktime_get_real +EXPORT_SYMBOL_GPL vmlinux 0x244fef6a blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0x24727489 regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x248d48a2 __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x248d7f24 pinctrl_find_and_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x249075e7 __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0x24aac4d9 crypto_aes_expand_key +EXPORT_SYMBOL_GPL vmlinux 0x24c119e0 __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0x24c7698a xenbus_write +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24eedf55 xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0x24ef6d3b pinctrl_select_state +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x2508f1dd tcp_peer_is_proven +EXPORT_SYMBOL_GPL vmlinux 0x2513eda8 file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0x2545c170 unregister_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0x2568499b init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0x257d8933 tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x25836a7f tpm_release +EXPORT_SYMBOL_GPL vmlinux 0x258bd534 wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x25bc3f02 ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x25c672b9 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0x26178404 scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x262f20a8 local_clock +EXPORT_SYMBOL_GPL vmlinux 0x2631d5b5 acpi_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x263d3cb9 __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x265ee270 gpiochip_add_pin_range +EXPORT_SYMBOL_GPL vmlinux 0x26965721 slow_virt_to_phys +EXPORT_SYMBOL_GPL vmlinux 0x26b71fb4 ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x26c8e069 debugfs_remove_recursive +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26eb0688 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0x27247a9c crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x2780791a task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0x2787db00 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x279cb985 apei_exec_pre_map_gars +EXPORT_SYMBOL_GPL vmlinux 0x27c1e63f usb_amd_find_chipset_info +EXPORT_SYMBOL_GPL vmlinux 0x27d3dde8 ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x27dd7700 serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x27ddb33d acpi_dev_resource_io +EXPORT_SYMBOL_GPL vmlinux 0x27e7536f mddev_init +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x2827c3dc xenbus_dev_probe +EXPORT_SYMBOL_GPL vmlinux 0x282a3a78 usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x28460202 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0x2859895c scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0x28670ace dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x28762c8a pinctrl_dev_get_devname +EXPORT_SYMBOL_GPL vmlinux 0x287b578f ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x2882a98f add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0x28940fb3 uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0x289ad966 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x28a17150 pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x28a82da4 snmp_mib_init +EXPORT_SYMBOL_GPL vmlinux 0x28a903c8 timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x28b3b2f3 __class_create +EXPORT_SYMBOL_GPL vmlinux 0x28d8117e subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x28e0fdcb irq_find_host +EXPORT_SYMBOL_GPL vmlinux 0x28e30ff9 console_drivers +EXPORT_SYMBOL_GPL vmlinux 0x28e64c64 xen_has_pv_and_legacy_disk_devices +EXPORT_SYMBOL_GPL vmlinux 0x29059b53 __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x290ec83f devm_pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x292789f7 usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0x293616f7 class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x293f073e vrtc_cmos_write +EXPORT_SYMBOL_GPL vmlinux 0x2940f257 pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x2a14bf90 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0x2a2a4356 arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x2a66dae6 tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a807706 rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x2aa9b0c2 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0x2aaabff7 __netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x2ac36de7 btree_last +EXPORT_SYMBOL_GPL vmlinux 0x2ac67cf7 usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0x2ac9f43e usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0x2ad1ece4 zs_get_total_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0x2afa5df2 ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0x2aff5b84 xen_swiotlb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x2b068833 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x2b1a2bc7 sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0x2b2ad62f tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0x2b67f096 speedstep_get_frequency +EXPORT_SYMBOL_GPL vmlinux 0x2b78a2fd i2c_unlock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x2b7a6de8 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2be4443b pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x2be49821 regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0x2bfaef4e clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x2c120529 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0x2c153630 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c2c7bf9 ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x2c2dc4c0 xenbus_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x2c301540 sec_reg_update +EXPORT_SYMBOL_GPL vmlinux 0x2c35776b regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x2c3d3f88 device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x2c6a0410 xen_set_domain_pte +EXPORT_SYMBOL_GPL vmlinux 0x2c73f858 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0x2c7d9c64 xen_store_interface +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2cb345e6 platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0x2cd4408f ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0x2cdbea97 usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x2ce98559 kcrypto_wq +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2d0259b2 modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x2d0d11aa reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2d17a0e1 cgroup_taskset_size +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d1da771 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d5097a0 print_context_stack_bp +EXPORT_SYMBOL_GPL vmlinux 0x2d53669a __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x2d59c954 edac_handlers +EXPORT_SYMBOL_GPL vmlinux 0x2d718286 dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x2d9f2ce3 sched_clock_idle_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x2dac4345 pinctrl_dev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x2df8acb1 crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x2e028f81 sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x2e0de3ed __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e2f1740 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2e372fb7 da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x2e45e488 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x2e57ab59 isa_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x2e8b6c8c __pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x2e97493e unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x2eaae328 usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ed040be usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x2ee04564 tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x2ee05faf cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f1ebaeb tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f64415f unregister_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2f66e2b9 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x2f757a10 gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0x2f7a2b99 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0x2f853d67 gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x2f857551 machine_check_poll +EXPORT_SYMBOL_GPL vmlinux 0x2fb2e32a pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x2fd60911 fuse_get_req +EXPORT_SYMBOL_GPL vmlinux 0x2fd8cba9 freeze_wake +EXPORT_SYMBOL_GPL vmlinux 0x2fe35494 crypto_init_ahash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x2ff5e6f0 usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0x302a3263 class_find_device +EXPORT_SYMBOL_GPL vmlinux 0x3049e1c4 ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0x30509e9c xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0x3066d6fe max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x3067d380 sdhci_pci_o2_resume +EXPORT_SYMBOL_GPL vmlinux 0x308b733a getboottime +EXPORT_SYMBOL_GPL vmlinux 0x30a4f4ca bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x30b90772 sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0x30f12599 bus_register +EXPORT_SYMBOL_GPL vmlinux 0x3109b751 cpu_clock +EXPORT_SYMBOL_GPL vmlinux 0x31195af1 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0x311c2477 spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x311ecefd acpi_get_pci_dev +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x315a235c rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x315bb54e __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x31689784 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0x317d59a6 atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x31903448 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0x31a37361 proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x31a60895 usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x31c0c2d1 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL vmlinux 0x31d577ca bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x31e843a5 sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0x322d3506 security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0x322f3511 __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0x3237a958 aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x3245e1be arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0x3256ca45 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x325e677c gnttab_grant_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x328995b5 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0x32924a4d scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x329a7364 ahash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0x329bbbde timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x32a486c7 cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x32b31a8c ktime_get_boottime +EXPORT_SYMBOL_GPL vmlinux 0x32b9923a intel_scu_notifier +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32ee163a dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x32fc25de pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0x32fd447a monotonic_to_bootbased +EXPORT_SYMBOL_GPL vmlinux 0x32fd4b62 __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0x333228ec intel_msic_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x333bd302 ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0x333ca355 sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0x33520d72 cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x335650e6 anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x336154ca rcutorture_record_test_transition +EXPORT_SYMBOL_GPL vmlinux 0x33655159 xen_pcpu_hotplug_sync +EXPORT_SYMBOL_GPL vmlinux 0x336cdf17 crypto_alloc_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x3373a8eb regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x33880c0f __ip_route_output_key +EXPORT_SYMBOL_GPL vmlinux 0x338edbc5 pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0x33b93b60 rtc_irq_unregister +EXPORT_SYMBOL_GPL vmlinux 0x33b96e5d apei_exec_write_register +EXPORT_SYMBOL_GPL vmlinux 0x340a8163 sec_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x3431c373 pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x343291ad ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0x3442689c input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0x34442666 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0x347481f4 flush_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0x347fd4b3 eventfd_ctx_get +EXPORT_SYMBOL_GPL vmlinux 0x348ac8ae crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x34915d56 fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0x34ac50a4 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x34c7490f device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x34f9639e fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0x3513bad6 device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0x352650ee gnttab_batch_map +EXPORT_SYMBOL_GPL vmlinux 0x352697cb wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x35667b32 platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0x357a5f94 sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0x357ca406 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x3581f995 enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x358c007a rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x35a6660c usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x35ab93d9 led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0x35ce446b xen_xenbus_fops +EXPORT_SYMBOL_GPL vmlinux 0x35df06bc power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x35e07fd0 invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0x35f10f43 nfq_ct_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x35f165f1 devm_reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x35f3ae51 unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x361e2bcc save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0x36918bcb wm8400_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36a1fef6 pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x36b5497e intel_iommu_enabled +EXPORT_SYMBOL_GPL vmlinux 0x36ba2551 intel_scu_devices_destroy +EXPORT_SYMBOL_GPL vmlinux 0x370aea30 pwm_config +EXPORT_SYMBOL_GPL vmlinux 0x3777587e usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0x3791bbda acpi_processor_get_performance_info +EXPORT_SYMBOL_GPL vmlinux 0x379ba550 skcipher_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0x379cab39 usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x37a2b391 da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x37a58f66 unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x37c71457 tpm_show_durations +EXPORT_SYMBOL_GPL vmlinux 0x37d147d8 inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0x3807d1f2 usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0x3820238f tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x38589c68 arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0x38620e38 gnttab_grant_foreign_access_trans_ref +EXPORT_SYMBOL_GPL vmlinux 0x38739e2c debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0x3874de59 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x387cfdcc flush_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x3881e161 xen_pci_frontend +EXPORT_SYMBOL_GPL vmlinux 0x38a489dd inet6_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x38a9c2c7 input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x38b8147d usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x38ba5264 subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x38d51821 pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x38f83c61 kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x38fc0ffe crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x391a44da iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0x39270d14 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x39470404 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x394eaabe crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0x3989e2ba usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0x399f1bd0 regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x39d8c510 net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0x39f917ab md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a38dc65 memory_failure +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a6d0d4e debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x3a72c32a regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0x3a7a1a59 evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x3a7f5670 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x3aa4897b wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3ad7e8ab crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x3af1d9fb clockevents_unbind +EXPORT_SYMBOL_GPL vmlinux 0x3af845db tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0x3b0f4644 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0x3b55911d cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x3b664c0e usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3b687c58 regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0x3b7145bb apei_exec_read_register_value +EXPORT_SYMBOL_GPL vmlinux 0x3bb48745 mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x3bc29613 pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0x3beaea74 __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x3c2525ec crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0x3c391b29 extcon_set_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x3c4fa429 key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0x3c6f3cea ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0x3c804331 pinctrl_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x3c8424a0 clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3c8f4428 clk_register_mux +EXPORT_SYMBOL_GPL vmlinux 0x3c9390db pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cd4fd6f __module_address +EXPORT_SYMBOL_GPL vmlinux 0x3cf04db4 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d56b013 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0x3d78f99c ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x3d7ea99a gnttab_grant_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x3d8fdb06 regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x3db9ed31 rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x3dc916b6 crypto_fl_tab +EXPORT_SYMBOL_GPL vmlinux 0x3dcee5d3 ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x3dd4d3a7 bprintf +EXPORT_SYMBOL_GPL vmlinux 0x3de525bd usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3e1f1e08 usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x3e2e543d cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x3e2fa31f wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3e569e7b inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x3e68dc21 cgroup_taskset_cur_css +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e757637 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0x3e7f0dfc __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0x3e858c2c da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x3e971b8d regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3ea5196d apei_osc_setup +EXPORT_SYMBOL_GPL vmlinux 0x3eaa4d73 spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0x3eeea124 ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0x3ef3d25d regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0x3efb35c9 get_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0x3f229c4c oops_begin +EXPORT_SYMBOL_GPL vmlinux 0x3f2f0241 virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0x3f31cc8f regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0x3f6d5777 tpm_show_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x3f84d4c9 gnttab_release_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x3fa5c394 irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x400a024b acpi_scan_lock_release +EXPORT_SYMBOL_GPL vmlinux 0x403c89a4 __rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x4045c494 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0x404f122d dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0x4065975e hwpoison_filter +EXPORT_SYMBOL_GPL vmlinux 0x4065d168 pm_print_active_wakeup_sources +EXPORT_SYMBOL_GPL vmlinux 0x407a133f adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0x40af0dec ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x40af2c6d devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x40d46b21 crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x40f07d63 bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x410b2f3c device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x41299916 pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x412dc11d balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x41a08f7c __blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x41a304f6 power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0x41c2953f virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0x41d5ab13 tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0x41ddd995 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0x41fbd862 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x4205ad24 cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x4213a51a efivar_entry_set_safe +EXPORT_SYMBOL_GPL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x424acc6d scatterwalk_done +EXPORT_SYMBOL_GPL vmlinux 0x424e4dfc pci_reset_pri +EXPORT_SYMBOL_GPL vmlinux 0x42533270 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x425bf39c ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0x4261e763 ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x42c989ff iomap_atomic_prot_pfn +EXPORT_SYMBOL_GPL vmlinux 0x42cc71c9 blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0x42eadeb1 regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x43140f3c inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0x43169550 i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0x433a17da vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x433f39bd usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x4341d7dd platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0x43485704 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x435e6c6e crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x43673f23 ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0x436774fe fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x43982c70 xen_remap_domain_mfn_range +EXPORT_SYMBOL_GPL vmlinux 0x43a53735 __alloc_workqueue_key +EXPORT_SYMBOL_GPL vmlinux 0x43aa2e7e regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0x43b3e88c of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0x43caad2e ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x44050e24 regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x44404f11 kdb_register_repeat +EXPORT_SYMBOL_GPL vmlinux 0x44456276 rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x44cc9c55 klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x44dd3942 fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x44e416df platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x4512b086 intel_scu_devices_create +EXPORT_SYMBOL_GPL vmlinux 0x451de9dd __get_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x451e745e ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x4523cab9 cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0x45395406 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x4541fe0d mtrr_state +EXPORT_SYMBOL_GPL vmlinux 0x4548fab8 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0x454c15ae __smp_call_function_single +EXPORT_SYMBOL_GPL vmlinux 0x4556a2f4 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x45825372 devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x45af254a inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x45bf1ff3 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x45d0b194 sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x45d14bdf hypercall_page +EXPORT_SYMBOL_GPL vmlinux 0x45d9fbc5 pinctrl_utils_add_config +EXPORT_SYMBOL_GPL vmlinux 0x460f31aa rodata_test_data +EXPORT_SYMBOL_GPL vmlinux 0x460f7531 wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x4662e902 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x46649969 driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x46704b8d lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x4672e88b __crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x469b24e8 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x46e3b7da device_add +EXPORT_SYMBOL_GPL vmlinux 0x46f13326 watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0x46fe8d87 pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0x470fa426 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x472dafde clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x473fe9a3 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x4748b46a dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x47725d4c rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x477a6ec6 cpufreq_frequency_get_table +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x4788d98d tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0x478c1e65 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0x479d59ad regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47b55bf3 wait_for_tpm_stat +EXPORT_SYMBOL_GPL vmlinux 0x47b64cbd ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0x48071034 ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x48222cd3 get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x4828e77b acpi_scan_lock_acquire +EXPORT_SYMBOL_GPL vmlinux 0x482c1863 ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0x483fb98b blk_queue_flush +EXPORT_SYMBOL_GPL vmlinux 0x48485896 spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x48682db9 perf_guest_get_msrs +EXPORT_SYMBOL_GPL vmlinux 0x486e9780 __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x48ba4ef2 ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0x48ca8947 pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x48d587b8 wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0x48f68443 stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0x490a8df6 x86_platform +EXPORT_SYMBOL_GPL vmlinux 0x49160916 balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x49339f55 cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0x4949139e spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x494bab7f ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0x4952f422 __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0x49644ba9 blkio_subsys +EXPORT_SYMBOL_GPL vmlinux 0x4978ba8f irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x497cd39c rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x4982a57f probe_kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x498d293a trace_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x499416f3 put_pid +EXPORT_SYMBOL_GPL vmlinux 0x49c4f4bd xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x49dbe837 devm_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x49e74ae4 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0x49ed9d63 tpm_read +EXPORT_SYMBOL_GPL vmlinux 0x4a33ce4a bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x4a3c3cf9 microcode_sanity_check +EXPORT_SYMBOL_GPL vmlinux 0x4a57c5e8 tps65912_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x4a626fa5 inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x4a631188 sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x4aadeb9a ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0x4ad720ee ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0x4ae2b8f9 xen_swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0x4afb573b vrtc_cmos_read +EXPORT_SYMBOL_GPL vmlinux 0x4b0150d4 dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x4b0e0942 bdi_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x4b1e07ae crypto_alloc_ablkcipher +EXPORT_SYMBOL_GPL vmlinux 0x4b440d22 bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0x4b5dbe2d pci_ats_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x4b8fddaf thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0x4bbe38d9 rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0x4bbe3ead crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x4bc62a81 audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4beaaac5 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x4bfa4db8 usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0x4c10d14d __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x4c16f764 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0x4c1ca9ec spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x4c297b2e tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x4c2a472b __static_cpu_has_safe +EXPORT_SYMBOL_GPL vmlinux 0x4c2e1f24 clk_disable +EXPORT_SYMBOL_GPL vmlinux 0x4c3d78a4 sock_update_netprioidx +EXPORT_SYMBOL_GPL vmlinux 0x4c602bf1 __blkg_release_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4c6d0751 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x4c759827 byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x4c7d194c regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x4c8f44f5 tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0x4c8fbb95 xattr_getsecurity +EXPORT_SYMBOL_GPL vmlinux 0x4ca4c9df clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x4ccd0c06 ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0x4cf9bbbe screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0x4d0cb4c2 usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0x4d2d790c bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0x4d400a57 ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x4d42226b cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0x4d92b653 pinctrl_utils_add_map_configs +EXPORT_SYMBOL_GPL vmlinux 0x4d9763fa tpm_write +EXPORT_SYMBOL_GPL vmlinux 0x4d9ad6ab power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0x4db5cae6 sis_info133_for_sata +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4de6dad3 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x4e109192 ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0x4e14109f ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0x4e242f5f pstore_cannot_block_path +EXPORT_SYMBOL_GPL vmlinux 0x4e3f6157 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0x4e456c22 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0x4e57723d apei_read +EXPORT_SYMBOL_GPL vmlinux 0x4e74e625 gnttab_batch_copy +EXPORT_SYMBOL_GPL vmlinux 0x4e7ad076 crypto_alloc_instance2 +EXPORT_SYMBOL_GPL vmlinux 0x4e830020 blkg_prfill_stat +EXPORT_SYMBOL_GPL vmlinux 0x4e89aa63 acpi_subsys_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x4ea8fd0b ablkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0x4eabb919 of_reset_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x4eb9bed5 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f020dee public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x4f040ea1 ata_acpi_stm +EXPORT_SYMBOL_GPL vmlinux 0x4f22bc4d ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0x4f3a5898 __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0x4f4055ab shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0x4f4cca4c da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0x4f6b0baa efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0x4f8ef009 __efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0x4f9b5fa6 __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x4f9baa3c pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x4fc03fa0 pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x4fc52e8d __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0x4fd4e89d ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4fd4f167 regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4ffaadfc pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x4ffb5f65 pciserial_init_ports +EXPORT_SYMBOL_GPL vmlinux 0x5026585c xen_irq_from_gsi +EXPORT_SYMBOL_GPL vmlinux 0x5038cc85 ata_acpi_gtm +EXPORT_SYMBOL_GPL vmlinux 0x504163e3 crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0x50556997 part_round_stats +EXPORT_SYMBOL_GPL vmlinux 0x505e0940 scsi_internal_device_block +EXPORT_SYMBOL_GPL vmlinux 0x50624bf7 sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0x506691f1 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x506b0164 efivar_entry_add +EXPORT_SYMBOL_GPL vmlinux 0x506cc085 tracepoint_iter_stop +EXPORT_SYMBOL_GPL vmlinux 0x5086ac3a alg_test +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x50a02630 get_device +EXPORT_SYMBOL_GPL vmlinux 0x50c89f23 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x50e44aa4 rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x5108b3fc acpi_os_map_memory +EXPORT_SYMBOL_GPL vmlinux 0x516459b5 spi_setup +EXPORT_SYMBOL_GPL vmlinux 0x5187ac4b xen_store_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x5188e7ec crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0x518c2fc6 hpet_rtc_dropped_irq +EXPORT_SYMBOL_GPL vmlinux 0x51a525e6 usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0x51a7df72 register_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0x52088e17 xen_unmap_domain_mfn_range +EXPORT_SYMBOL_GPL vmlinux 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL vmlinux 0x5215c96c thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x52212010 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x5221a4d7 page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x523a5523 __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x524110a9 regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x5246609a dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0x5255ded8 devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0x525cbf07 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0x5272d8bc __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0x527ee263 sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0x528db3eb usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0x52964ce3 hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x52a41251 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x5314422f crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x532ccbcd virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0x5358fc36 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x53614269 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x536b1406 usb_acpi_set_power_state +EXPORT_SYMBOL_GPL vmlinux 0x5391b3b0 srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x539f157b pci_xen_swiotlb_init_late +EXPORT_SYMBOL_GPL vmlinux 0x53a96aac usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x53cb89ea iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0x53dac46e xenbus_dev_is_online +EXPORT_SYMBOL_GPL vmlinux 0x53ec1879 ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x54184452 crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x543b5959 lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0x5460c8d8 fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x546e333e irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0x54740eb7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x5489f259 i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x5493f046 fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54a2326c efivar_entry_size +EXPORT_SYMBOL_GPL vmlinux 0x54b8ac68 gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0x54e926b5 ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x54f42e99 ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0x54f9de3e pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x5507eee2 generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0x5511d363 anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x553756ff pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0x5539dc25 wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5548bb2f securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x55526907 xen_features +EXPORT_SYMBOL_GPL vmlinux 0x5555a39b find_module +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x557c5f5c simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0x55a9a039 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0x55edd53d unregister_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x5618a0ff sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x562b0d1e usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x56398615 mark_tsc_unstable +EXPORT_SYMBOL_GPL vmlinux 0x5639d344 sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x564f1dca klist_add_after +EXPORT_SYMBOL_GPL vmlinux 0x5654f836 erst_get_record_id_next +EXPORT_SYMBOL_GPL vmlinux 0x565b6892 uuid_le_gen +EXPORT_SYMBOL_GPL vmlinux 0x56618d09 __mmu_notifier_invalidate_range_start +EXPORT_SYMBOL_GPL vmlinux 0x56694a69 kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x56763c75 register_mce_write_callback +EXPORT_SYMBOL_GPL vmlinux 0x56886b19 scatterwalk_map +EXPORT_SYMBOL_GPL vmlinux 0x5692386f gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x56947347 dmi_walk +EXPORT_SYMBOL_GPL vmlinux 0x56b63670 lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x56d697ce cpu_up +EXPORT_SYMBOL_GPL vmlinux 0x56e6224e spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x56e75d47 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x56f0abdb devm_rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x56f437d5 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x56f9e68c smp_ops +EXPORT_SYMBOL_GPL vmlinux 0x57231f45 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0x5737f162 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0x57520d16 cper_estatus_check_header +EXPORT_SYMBOL_GPL vmlinux 0x576197d9 xen_swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL_GPL vmlinux 0x5775173b mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x5779d445 xenbus_exists +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57b5f48b task_current_syscall +EXPORT_SYMBOL_GPL vmlinux 0x57b63860 acpi_preset_companion +EXPORT_SYMBOL_GPL vmlinux 0x57fcdcee skcipher_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0x5823a00b usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x582477b9 blk_queue_bypass_start +EXPORT_SYMBOL_GPL vmlinux 0x5839fc62 gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x58413099 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x5849a8b6 edac_subsys +EXPORT_SYMBOL_GPL vmlinux 0x584c5acb led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x585704ab aer_recover_queue +EXPORT_SYMBOL_GPL vmlinux 0x58633462 unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x588362f9 usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0x589e4569 syscon_regmap_lookup_by_pdevname +EXPORT_SYMBOL_GPL vmlinux 0x58bd05c9 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0x58d447de nf_queue_entry_release_refs +EXPORT_SYMBOL_GPL vmlinux 0x58fe9409 rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0x592cfbc3 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0x5940c1b9 pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0x5947abbe max77693_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x595d6d90 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0x597831bc ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0x5992e3b5 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x59980000 cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x59994113 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0x59a12956 shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0x59a6e91d clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x59d7dabd regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0x59e0b481 kick_process +EXPORT_SYMBOL_GPL vmlinux 0x59e2743e call_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0x59eae699 ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x5a101d06 pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0x5a113ef4 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x5a1ad864 acpi_dma_request_slave_chan_by_name +EXPORT_SYMBOL_GPL vmlinux 0x5a2b1b67 gnttab_free_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x5a33f258 sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0x5a441ebd efi_query_variable_store +EXPORT_SYMBOL_GPL vmlinux 0x5a7b5ddf tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5abaec3a transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x5ae7ff1d xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x5af03a28 gnttab_claim_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x5aff7a2d crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0x5b215654 regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x5b5c1b6b platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x5b7b1868 cpufreq_notify_transition +EXPORT_SYMBOL_GPL vmlinux 0x5b9df909 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0x5ba6f13d usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x5babf842 register_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x5bc1da9d regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0x5c1a3277 spi_alloc_master +EXPORT_SYMBOL_GPL vmlinux 0x5c66e90c efivar_run_worker +EXPORT_SYMBOL_GPL vmlinux 0x5c78057d device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x5c94d7ca regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x5cabdced dev_pm_qos_remove_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5ccd0b30 da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x5ce93eac preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x5d0b7d58 __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5d12e48f input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0x5d31e62c ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x5d366dec gnttab_cancel_free_callback +EXPORT_SYMBOL_GPL vmlinux 0x5d406385 gpiochip_add_pingroup_range +EXPORT_SYMBOL_GPL vmlinux 0x5d48a650 m2p_find_override_pfn +EXPORT_SYMBOL_GPL vmlinux 0x5d48c1d1 device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x5d54325d preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5d5e9e3d kobj_completion_del_and_wait +EXPORT_SYMBOL_GPL vmlinux 0x5d8b3e46 crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x5dbcfa4f boot_cpu_physical_apicid +EXPORT_SYMBOL_GPL vmlinux 0x5df67cf1 acpi_dev_pm_detach +EXPORT_SYMBOL_GPL vmlinux 0x5e03ec86 tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x5e27f7fc virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0x5e3132f9 debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0x5e44edd4 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5ec7e87a device_reset +EXPORT_SYMBOL_GPL vmlinux 0x5ef3fbf9 led_trigger_show +EXPORT_SYMBOL_GPL vmlinux 0x5f0462bf __blk_put_request +EXPORT_SYMBOL_GPL vmlinux 0x5f092564 ref_module +EXPORT_SYMBOL_GPL vmlinux 0x5f0977b4 put_device +EXPORT_SYMBOL_GPL vmlinux 0x5f18bea4 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x5f1d3b42 inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x5f248f72 set_timer_slack +EXPORT_SYMBOL_GPL vmlinux 0x5f26a396 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0x5f2da8c4 check_tsc_unstable +EXPORT_SYMBOL_GPL vmlinux 0x5f419491 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x5f4b6fc9 netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x5f52c9d4 usb_string +EXPORT_SYMBOL_GPL vmlinux 0x5f72434e uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x5f944725 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x5f962808 __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0x5fb49dbb tasklet_hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x5fc27be9 acpi_dev_irq_flags +EXPORT_SYMBOL_GPL vmlinux 0x5fdfa2c1 amd_pmu_enable_virt +EXPORT_SYMBOL_GPL vmlinux 0x603e7ef5 regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x60506751 unmap_kernel_range_noflush +EXPORT_SYMBOL_GPL vmlinux 0x6082cbaa da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x60930d37 save_mc_for_early +EXPORT_SYMBOL_GPL vmlinux 0x6094685f wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60ac7b9f dev_get_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x60b14862 ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x60c0bb4f m2p_add_override +EXPORT_SYMBOL_GPL vmlinux 0x60cd73ed pv_apic_ops +EXPORT_SYMBOL_GPL vmlinux 0x60e27651 i2c_new_probed_device +EXPORT_SYMBOL_GPL vmlinux 0x611006d5 apic +EXPORT_SYMBOL_GPL vmlinux 0x613360ed stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0x613e00bd gnttab_map_refs +EXPORT_SYMBOL_GPL vmlinux 0x61780244 regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x6180ce00 ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x6209d4a8 sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x62202e37 rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x622dacba tick_nohz_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x6236a98b regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x623803c8 hest_disable +EXPORT_SYMBOL_GPL vmlinux 0x624a6406 hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x624c2c1c tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x625708bf regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0x62e6f690 sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0x62ec546c serial8250_tx_dma +EXPORT_SYMBOL_GPL vmlinux 0x63205de1 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x635ec980 apei_exec_post_unmap_gars +EXPORT_SYMBOL_GPL vmlinux 0x63690c5e led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x638474dd device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x638a161a ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x63ae1b65 dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x63bb8b64 pinctrl_utils_reserve_map +EXPORT_SYMBOL_GPL vmlinux 0x63bd6ec9 alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0x63d92aaa irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0x63dbf159 pwm_disable +EXPORT_SYMBOL_GPL vmlinux 0x63e2dd23 __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x63f4fe96 sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x64256424 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0x6469aa8d bmp085_probe +EXPORT_SYMBOL_GPL vmlinux 0x646c4f68 xenbus_match +EXPORT_SYMBOL_GPL vmlinux 0x6480caa9 fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0x64b1a15a sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x64b7069e apei_mce_report_mem_error +EXPORT_SYMBOL_GPL vmlinux 0x64ba1672 set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0x64bd84d8 regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x64c1aae0 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x64c33cf4 md_ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x64c68cc6 wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0x64c83f2e acpi_match_device +EXPORT_SYMBOL_GPL vmlinux 0x64f0a17f regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x65196c26 __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0x6527a231 dbgp_external_startup +EXPORT_SYMBOL_GPL vmlinux 0x6530840e ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x65321eb9 debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x653cb02d intel_msic_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x6541fc55 regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x654faebc debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x6559b1b3 class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x658c8186 amd_get_nb_id +EXPORT_SYMBOL_GPL vmlinux 0x65b51ca2 regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x65bbbc78 schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65d020f2 __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x65d7c8ae ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0x65f2f018 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x65ff2579 get_matching_microcode +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x6627eec6 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x662a0c3f x509_get_sig_params +EXPORT_SYMBOL_GPL vmlinux 0x663c16d6 gnttab_grant_foreign_access_subpage_ref +EXPORT_SYMBOL_GPL vmlinux 0x666bdd85 pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0x667337fb __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x66834a62 pci_bus_sem +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x66ba33e0 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x6706ea43 register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x6731553f attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x6739869f sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0x6739a503 balloon_set_new_target +EXPORT_SYMBOL_GPL vmlinux 0x674e13e1 public_key_destroy +EXPORT_SYMBOL_GPL vmlinux 0x67643d26 pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x677d6526 regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x67969c88 tpm_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0x67a9b161 queue_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x67d6e761 usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x6801b985 ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x6812cf8d __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0x683c4130 rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0x6847661d dm_get_rq_mapinfo +EXPORT_SYMBOL_GPL vmlinux 0x68545703 ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x6878d54d thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x687934e9 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x68816162 wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0x6890e8e3 ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0x68956406 static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x68a9094c root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x68dd8d67 ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0x68dfc1d4 devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0x68fb8397 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0x69117964 crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0x69169647 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0x6923ce63 irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x69447467 ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0x6945725e mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0x6949e57c pinctrl_lookup_state +EXPORT_SYMBOL_GPL vmlinux 0x69688f53 inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x696ae9da xenbus_dev_error +EXPORT_SYMBOL_GPL vmlinux 0x6971a5bf usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6988438d pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0x698a899f ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0x698e50ab da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x699b260c dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0x69bcf9cb fat_attach +EXPORT_SYMBOL_GPL vmlinux 0x69c7cf74 pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x69d88975 crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0x69e9a2cb ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x6a067c58 default_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a1d9cd9 pinctrl_add_gpio_ranges +EXPORT_SYMBOL_GPL vmlinux 0x6a22a5d8 usb_acpi_power_manageable +EXPORT_SYMBOL_GPL vmlinux 0x6a2a6a19 disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x6a3e29c6 crypto_tfm_in_queue +EXPORT_SYMBOL_GPL vmlinux 0x6a55ebc9 sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0x6a5fb566 rcu_sched_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x6a69b504 regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6aafde08 cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0x6ab3facd ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x6ac65ad9 rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0x6ac8179d stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0x6acad21f acpi_get_cpuid +EXPORT_SYMBOL_GPL vmlinux 0x6acd238c security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0x6acf5ac7 scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0x6b060584 ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x6b29a1fa ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0x6b5b3dbb swiotlb_tbl_sync_single +EXPORT_SYMBOL_GPL vmlinux 0x6b5b478e anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6b68d67b blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x6b6d5610 device_create_vargs +EXPORT_SYMBOL_GPL vmlinux 0x6b6e77f9 device_del +EXPORT_SYMBOL_GPL vmlinux 0x6b7554ac __mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x6b9ca56f xen_register_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0x6bb3c832 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x6bdd4f7e ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0x6beaf81b pci_enable_pri +EXPORT_SYMBOL_GPL vmlinux 0x6bf1b90d dmi_memdev_name +EXPORT_SYMBOL_GPL vmlinux 0x6bf2c089 tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0x6c1251fd apei_exec_read_register +EXPORT_SYMBOL_GPL vmlinux 0x6c1b09ab gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x6c2ab094 class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x6c4582d2 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x6c49c4f2 clockevents_notify +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c655913 register_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6c749afe __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x6ca248eb skcipher_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6cb8b425 bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6cd21997 ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x6cd4ea62 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0x6ce2e3e0 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0x6d0f5f36 acpi_dma_request_slave_chan_by_index +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d31e93b tracepoint_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x6d339861 __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0x6d3cf7a6 cpufreq_governor_dbs +EXPORT_SYMBOL_GPL vmlinux 0x6d4db3a7 cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0x6d591dd7 pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x6d65897d ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x6d7adecb ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0x6d82c0ff irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x6d9a4eba led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0x6d9aa041 rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0x6dc133de inet_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x6df4f144 mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0x6e04a077 usb_bind_phy +EXPORT_SYMBOL_GPL vmlinux 0x6e06c17b pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0x6e0b735f tpm_remove_hardware +EXPORT_SYMBOL_GPL vmlinux 0x6e15c2d8 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x6e40dc9b dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0x6e46ba56 devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x6e493eab srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0x6e58ddf0 gnttab_end_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x6e6d3ee6 pwm_can_sleep +EXPORT_SYMBOL_GPL vmlinux 0x6e782c23 iomap_create_wc +EXPORT_SYMBOL_GPL vmlinux 0x6e7943ec iommu_group_id +EXPORT_SYMBOL_GPL vmlinux 0x6e845dca crypto_ablkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x6e85b00b local_touch_nmi +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6ea48d30 cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0x6eeb7e56 extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0x6ef593c0 tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0x6ef5dc1b usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x6f1ac7f0 dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0x6f1ee69e kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x6f674ecf fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0x6f7d2df1 sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0x6f8f08e6 xen_swiotlb_unmap_sg_attrs +EXPORT_SYMBOL_GPL vmlinux 0x6fe3d8cf ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x6fe87cbd ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x6fefacd2 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0x6fefb2cb usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x700ba213 ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0x70137669 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x70201233 unregister_jprobe +EXPORT_SYMBOL_GPL vmlinux 0x70208615 rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0x702521df seq_release_net +EXPORT_SYMBOL_GPL vmlinux 0x705d3f30 bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0x70624f0a register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0x707ff1bb ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x70825112 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x70857a55 tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0x70936009 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x70a875ec __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x70bb651d __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x70cf032f usb_hcd_irq +EXPORT_SYMBOL_GPL vmlinux 0x70d12bd9 blk_queue_bio +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x711a5526 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0x71295aad ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x713781af device_schedule_callback_owner +EXPORT_SYMBOL_GPL vmlinux 0x71479077 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x71481ce4 led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71639d2d bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x718cc556 rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x7198df01 percpu_ida_destroy +EXPORT_SYMBOL_GPL vmlinux 0x71dc9998 crypto_il_tab +EXPORT_SYMBOL_GPL vmlinux 0x71dfcfb3 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0x71dfe1e0 input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0x71e6e007 ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0x71ff2234 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0x72093ac9 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0x722bd0da sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x7267db00 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x72741f25 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x72a92fbe scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x72be4fa0 i2c_lock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x73013896 xenbus_printf +EXPORT_SYMBOL_GPL vmlinux 0x73082a94 usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0x730f9db5 rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0x731dba7a xen_domain_type +EXPORT_SYMBOL_GPL vmlinux 0x733c157d sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0x733ed7a6 pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x7342a224 pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x73519ac6 pci_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x735517ea ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0x735b1cd6 btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0x738fd248 intel_msic_reg_update +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73c832f2 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x73d69364 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x73dd1316 regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x73dec1ef __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0x73e058b7 __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0x73f0d5ab kobj_completion_release +EXPORT_SYMBOL_GPL vmlinux 0x7413743e cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0x7422c95e gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x74457e56 apei_resources_fini +EXPORT_SYMBOL_GPL vmlinux 0x7452adff user_return_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x74556ae5 pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x7464ea38 dev_pm_qos_add_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x747b5b78 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7489a41f pci_pri_status +EXPORT_SYMBOL_GPL vmlinux 0x74954462 timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x74a0a1c4 fuse_put_request +EXPORT_SYMBOL_GPL vmlinux 0x74a3b421 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x74b48cf1 regmap_update_bits_check_async +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74c08941 kvm_async_pf_task_wake +EXPORT_SYMBOL_GPL vmlinux 0x74deb10c used_vectors +EXPORT_SYMBOL_GPL vmlinux 0x74e4e21a acpi_bind_one +EXPORT_SYMBOL_GPL vmlinux 0x74eb4451 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0x751011b6 rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0x75187d2c blk_add_request_payload +EXPORT_SYMBOL_GPL vmlinux 0x7521afb6 leave_mm +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x753d034f pinctrl_pm_select_sleep_state +EXPORT_SYMBOL_GPL vmlinux 0x755bd351 kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x756afcf2 shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x7579c493 sysfs_put +EXPORT_SYMBOL_GPL vmlinux 0x758a782e blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x75c2b9f1 memalloc_socks +EXPORT_SYMBOL_GPL vmlinux 0x75c8a11c inet_twdr_twkill_work +EXPORT_SYMBOL_GPL vmlinux 0x75ec8129 sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0x75f7af9b devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x763cca66 rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0x76595d6a irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x765b7a39 devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x76af90fd devres_release +EXPORT_SYMBOL_GPL vmlinux 0x76cac202 fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0x76d07d6e gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x76e8526a raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0x76fb0925 aead_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0x770cf981 tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x7712771a unbind_from_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x77214cea sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x77411606 posix_timer_event +EXPORT_SYMBOL_GPL vmlinux 0x775225e4 dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x775a6ef5 kvm_read_and_reset_pf_reason +EXPORT_SYMBOL_GPL vmlinux 0x77631f51 spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x7764b2be vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x7790adc0 aout_dump_debugregs +EXPORT_SYMBOL_GPL vmlinux 0x77b00f31 rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x77b457d1 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0x77e50f6c usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x77eaf502 inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0x77ee5c78 pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0x77fef984 fuse_request_send +EXPORT_SYMBOL_GPL vmlinux 0x78067d76 irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x78163f07 usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0x781bd59b efivar_entry_set_get_size +EXPORT_SYMBOL_GPL vmlinux 0x781c6eca hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x782adb74 hpet_rtc_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x783f8346 usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x785bb732 tpm_register_hardware +EXPORT_SYMBOL_GPL vmlinux 0x786f8809 device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0x78787b72 inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x788678f0 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x788b329b fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0x7897aa87 rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0x78b25f58 iommu_map +EXPORT_SYMBOL_GPL vmlinux 0x78ea227b acpi_bus_no_hotplug +EXPORT_SYMBOL_GPL vmlinux 0x78ecb74b tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0x7911e13f vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0x79228051 __netpoll_free_async +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x796c2d48 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x797437f7 crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x79763252 trace_buffer_unlock_commit_regs +EXPORT_SYMBOL_GPL vmlinux 0x798c354a agp_remove_bridge +EXPORT_SYMBOL_GPL vmlinux 0x7991fd8d crash_vmclear_loaded_vmcss +EXPORT_SYMBOL_GPL vmlinux 0x799c4837 wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x79a71c48 kernel_stack_pointer +EXPORT_SYMBOL_GPL vmlinux 0x79e0d84f debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x79e69460 intel_iommu_gfx_mapped +EXPORT_SYMBOL_GPL vmlinux 0x79feae6a unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0x7a2f052f __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x7a319404 clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x7a39864e use_mm +EXPORT_SYMBOL_GPL vmlinux 0x7a4c1438 pv_info +EXPORT_SYMBOL_GPL vmlinux 0x7a5339fb iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0x7a5ba460 crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0x7a6bcc2a crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x7a944007 rcu_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x7aac7919 page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x7ab3ca18 eventfd_ctx_read +EXPORT_SYMBOL_GPL vmlinux 0x7ac8e5b0 acpi_gsi_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x7ae1ae8e cpufreq_frequency_table_put_attr +EXPORT_SYMBOL_GPL vmlinux 0x7b0f1ab3 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7b1d544d edac_handler_set +EXPORT_SYMBOL_GPL vmlinux 0x7b2eb62d device_find_child +EXPORT_SYMBOL_GPL vmlinux 0x7b304cd4 usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x7b30ad88 ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0x7b78ee5f usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0x7b90d1a9 bind_virq_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x7bff4171 unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x7c0fd869 ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0x7c227088 clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x7c279d57 usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0x7c31d2f7 pci_get_hp_params +EXPORT_SYMBOL_GPL vmlinux 0x7c346357 pkey_algo +EXPORT_SYMBOL_GPL vmlinux 0x7c47fa72 regulator_set_optimum_mode +EXPORT_SYMBOL_GPL vmlinux 0x7c4a326b devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x7c4fd3e6 fuse_request_send_background +EXPORT_SYMBOL_GPL vmlinux 0x7c5ecf29 ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7c778f36 ata_eh_qc_retry +EXPORT_SYMBOL_GPL vmlinux 0x7c7d7a46 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x7cc1b7fd max77693_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7cc7de1c x509_check_signature +EXPORT_SYMBOL_GPL vmlinux 0x7ccc3bc4 bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0x7cd2c363 mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7cde3423 ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cef22fe wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x7cf3b13c elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7cf526cd uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0x7d140aec ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0x7d1eb449 regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0x7d22f07e dm_requeue_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x7d311b4f pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0x7d36e534 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7d397cc7 gpiod_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d461c59 iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d72d764 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0x7dab26b6 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7dd41cab platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0x7dee756c sdhci_pci_o2_fujin2_pci_init +EXPORT_SYMBOL_GPL vmlinux 0x7e10b50e smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x7e1119d9 tpm_show_active +EXPORT_SYMBOL_GPL vmlinux 0x7e117733 ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x7e1e8306 acpi_dev_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x7e2752f6 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x7e2bef66 rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x7e46b154 device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e6927a2 single_release_net +EXPORT_SYMBOL_GPL vmlinux 0x7e9af76e pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0x7eaf3bb8 wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x7eb0e62c unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x7ec3bb3c tpm_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x7f2800e8 regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0x7f354bf7 rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7f80b378 device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x7f86d4b1 fpu_finit +EXPORT_SYMBOL_GPL vmlinux 0x7f9ed9bb pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0x7fa56a99 od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x7faaeca3 pci_pri_stopped +EXPORT_SYMBOL_GPL vmlinux 0x7fb1f542 pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x7fd49bc3 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0x7feed2d8 __mmu_notifier_invalidate_range_end +EXPORT_SYMBOL_GPL vmlinux 0x7ff15e7b usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0x7ffe64d1 crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0x800984d8 ping_close +EXPORT_SYMBOL_GPL vmlinux 0x801e87cd pwm_request +EXPORT_SYMBOL_GPL vmlinux 0x80444b51 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0x80609f24 skb_gso_transport_seglen +EXPORT_SYMBOL_GPL vmlinux 0x807738aa thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x80995c6a fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x80c7332e dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80f0ee3f crypto_aead_type +EXPORT_SYMBOL_GPL vmlinux 0x80f2e791 regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x80f3268f __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x812dc87c __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x8140842a gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x8149ea54 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0x815bd13e crypto_init_spawn2 +EXPORT_SYMBOL_GPL vmlinux 0x8163daad disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x817a50f7 pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x8186561a dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x81a52077 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0x81b7aad7 sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x81d280b9 ahash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0x81e4d30c hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0x81e9bd49 xenbus_dev_groups +EXPORT_SYMBOL_GPL vmlinux 0x820cfb96 ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x821001fd regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0x8213812a pinctrl_force_sleep +EXPORT_SYMBOL_GPL vmlinux 0x8257555f xen_swiotlb_dma_mapping_error +EXPORT_SYMBOL_GPL vmlinux 0x82599066 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0x826a4007 sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x82939ebd rcu_batches_completed_sched +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82dbec19 erst_write +EXPORT_SYMBOL_GPL vmlinux 0x82f89884 wakeup_source_prepare +EXPORT_SYMBOL_GPL vmlinux 0x8318eb66 clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x833ccbae hypervisor_kobj +EXPORT_SYMBOL_GPL vmlinux 0x833f77f3 ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0x834616bb sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x838b13e7 ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0x83975156 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0x83a5ae2e __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0x83b06f5a tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0x83b57cb3 regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0x83fcf847 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x840e6f94 tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x8420bccd cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0x843d70ef acpi_is_root_bridge +EXPORT_SYMBOL_GPL vmlinux 0x843ea536 ata_sff_data_xfer_noirq +EXPORT_SYMBOL_GPL vmlinux 0x844918d8 crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x846124d5 nf_register_afinfo +EXPORT_SYMBOL_GPL vmlinux 0x8464d650 lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0x8466dc09 sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0x84f7a641 cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0x85050965 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x853a9be1 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x85526eef usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0x856629e7 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x8574ca6c gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x85765674 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0x8576dfda hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x8595d8b8 xen_swiotlb_sync_single_for_device +EXPORT_SYMBOL_GPL vmlinux 0x85b14d33 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x85c10896 rcu_batches_completed_bh +EXPORT_SYMBOL_GPL vmlinux 0x85c7f674 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x85cb2c45 xen_has_pv_devices +EXPORT_SYMBOL_GPL vmlinux 0x85d7edfd hpet_set_periodic_freq +EXPORT_SYMBOL_GPL vmlinux 0x85fcba64 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x8600bd1b mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x861ae0aa dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0x864b6721 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x86606363 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0x86623fd7 notify_remote_via_irq +EXPORT_SYMBOL_GPL vmlinux 0x86690b8f uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0x866b9687 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x866c67ec md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0x8675e2da rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x8692e98c rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x86a09b70 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0x86a51007 gnttab_end_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x86aa16e6 klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x86aed0b4 pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x86c8c000 blkg_lookup_create +EXPORT_SYMBOL_GPL vmlinux 0x86cd06d3 ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x870e16b7 xen_test_irq_shared +EXPORT_SYMBOL_GPL vmlinux 0x871a24f6 debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0x87217154 ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x872393ab crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x872dae4e ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0x873ea7ca thermal_generate_netlink_event +EXPORT_SYMBOL_GPL vmlinux 0x873fbaea edac_atomic_assert_error +EXPORT_SYMBOL_GPL vmlinux 0x87545ab5 unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x8757ddbb virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0x875cdb6e do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x8776f614 sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x877fbd24 devm_usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x87984b16 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x87d8088d usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0x87f8c49b tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x88051698 simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x8810ad5e crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0x882978db tpm_dev_vendor_release +EXPORT_SYMBOL_GPL vmlinux 0x8831f8b1 kmap_atomic_pfn +EXPORT_SYMBOL_GPL vmlinux 0x88353b56 scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0x883c2740 __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x8884b44f gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x88873e49 ata_acpi_cbl_80wire +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b0844e btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0x88b5647c trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x88bbb515 led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0x88bde302 __init_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0x891a5a7f gnttab_max_grant_frames +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x894e1cad devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x89502f0c gnttab_subpage_grants_available +EXPORT_SYMBOL_GPL vmlinux 0x8956aeae apei_exec_ctx_init +EXPORT_SYMBOL_GPL vmlinux 0x8977e1b3 xen_swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0x89857e7b fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x898599a8 swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89bf0884 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0x89dbdcc1 __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0x89e458b6 usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0x89f491b4 agp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x8a04b9fe tracepoint_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0x8a0b108e regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0x8a0cd944 extcon_find_cable_index +EXPORT_SYMBOL_GPL vmlinux 0x8a2a34d6 sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x8a2b14ba wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x8a334607 raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0x8a57519b inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0x8a583d55 usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0x8a75c225 led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8a78989f irq_from_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x8a7cb9c4 platform_thermal_package_rate_control +EXPORT_SYMBOL_GPL vmlinux 0x8a99a8d2 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0x8aa6855d acpiphp_unregister_attention +EXPORT_SYMBOL_GPL vmlinux 0x8ab05f68 pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8b04668e bind_interdomain_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x8b3c1284 show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0x8b5b1085 crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0x8b66f9e0 xen_platform_pci_unplug +EXPORT_SYMBOL_GPL vmlinux 0x8b68aff1 irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0x8b7b6711 task_xstate_cachep +EXPORT_SYMBOL_GPL vmlinux 0x8b978794 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0x8bc42838 extcon_get_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x8bcae6ae regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x8bcf399d handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0x8be5ce1e eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0x8bf1f6d0 usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0x8bfa4310 securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c06a108 xenbus_transaction_start +EXPORT_SYMBOL_GPL vmlinux 0x8c0b1db1 cgroup_unload_subsys +EXPORT_SYMBOL_GPL vmlinux 0x8c1414bf crypto_register_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x8c7928d9 inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x8c7f63f0 crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x8c8dfa2c register_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x8cd8d5df ata_eh_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x8cd9f935 setup_APIC_eilvt +EXPORT_SYMBOL_GPL vmlinux 0x8ce68666 cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0x8ceaa523 debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0x8cfaf153 pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x8d12d02c dm_kill_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d39edc7 sysfs_schedule_callback +EXPORT_SYMBOL_GPL vmlinux 0x8d3d2fac devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0x8d44e344 generic_access_phys +EXPORT_SYMBOL_GPL vmlinux 0x8d4f8d12 bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0x8d877220 ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0x8dcef430 pinctrl_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x8e050d6b wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0x8e223dbf clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0x8e22c674 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0x8e6fe831 cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x8e7784cb skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0x8e8f0740 uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x8e8f78c5 fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0x8e93d886 tps65912_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x8e9c7933 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x8ea960cb blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8eaa7083 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0x8ec39a1e pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0x8ed268a1 pci_reset_bridge_secondary_bus +EXPORT_SYMBOL_GPL vmlinux 0x8edfb574 injectm +EXPORT_SYMBOL_GPL vmlinux 0x8eea080e fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0x8effebd3 pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x8f06bfe8 regmap_fields_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x8f24ab73 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x8f461713 ata_eh_thaw_port +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f902a2c gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x8f9d1f61 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0x8f9ed508 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x8fa8b9a9 blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x8fb30b07 xenbus_watch_pathfmt +EXPORT_SYMBOL_GPL vmlinux 0x8fd134a5 inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x8ffcdb14 css_next_descendant_post +EXPORT_SYMBOL_GPL vmlinux 0x90067359 bsg_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x9009602a acpi_bus_get_ejd +EXPORT_SYMBOL_GPL vmlinux 0x90228869 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x905ca0c9 __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0x9062c322 ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x906f3e6f dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0x90705b7f syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x907fb4b1 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0x90a1004a crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x90c730b9 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0x90de0452 platform_thermal_package_notify +EXPORT_SYMBOL_GPL vmlinux 0x90e09ceb xenbus_free_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x9115bd0c usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0x91224d1b iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0x91251795 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0x91286982 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x9131be48 pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0x914727b7 max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0x9153e8ab wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0x915f312f regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x9186fab4 __get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x918ad429 ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x918e0d39 virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0x91b87205 usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0x91c45406 acpi_ec_add_query_handler +EXPORT_SYMBOL_GPL vmlinux 0x91d5f317 blkcipher_walk_virt_block +EXPORT_SYMBOL_GPL vmlinux 0x91db642c public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0x91e5e10d regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0x91fd5054 usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0x922a99c5 md_is_badblock +EXPORT_SYMBOL_GPL vmlinux 0x9236fe5a get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0x9247b767 mmc_send_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x92727e01 efivars_unregister +EXPORT_SYMBOL_GPL vmlinux 0x928b7884 ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x92933971 arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x929c467f btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0x92b57248 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x9312d80e evtchn_put +EXPORT_SYMBOL_GPL vmlinux 0x932303bd pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0x9324e78e acpi_dev_resource_memory +EXPORT_SYMBOL_GPL vmlinux 0x933c524b efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x935c42a2 __put_net +EXPORT_SYMBOL_GPL vmlinux 0x938acf1e device_rename +EXPORT_SYMBOL_GPL vmlinux 0x93b984f9 spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x93bfd13f xen_swiotlb_set_dma_mask +EXPORT_SYMBOL_GPL vmlinux 0x93dd5c34 ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x941e1974 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x94321c26 mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x94348ab3 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x943fc708 xen_setup_shutdown_event +EXPORT_SYMBOL_GPL vmlinux 0x9452ed45 debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x94687c71 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0x946ca9dc list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x948d91f9 tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x94a68723 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x94abb745 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0x94c318be apei_exec_collect_resources +EXPORT_SYMBOL_GPL vmlinux 0x94ec578c pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x94eeeb58 pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x94f637f9 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x951a409c tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x952e8474 ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x9533cb42 blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x953e03d3 pci_hp_change_slot_info +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x957cc9aa usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95cc8209 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0x95db581d pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x95fa2af0 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x95fd3db2 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x95fece07 iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0x96031181 rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x961a062f devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x9621849f ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x9633db03 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x964add15 xenbus_scanf +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x965f5b39 pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0x96656cf2 devm_acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x967b11fc cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0x969216a6 key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x9693461d regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0x96a22790 vmcore_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x96a81c18 rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0x96dc91bc sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0x970ed5a4 devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9730c462 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x9764c842 driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0x97771490 sysfs_get_dirent_ns +EXPORT_SYMBOL_GPL vmlinux 0x9797b950 swiotlb_tbl_map_single +EXPORT_SYMBOL_GPL vmlinux 0x97a3ec56 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x97b093dd btree_update +EXPORT_SYMBOL_GPL vmlinux 0x97bc5496 con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0x97d6e807 ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97ee3d1c tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x985319ef register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x985b96f3 reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x98904987 posix_timers_register_clock +EXPORT_SYMBOL_GPL vmlinux 0x98e5006f tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0x98e6549f acpi_subsys_prepare +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x99026bc0 perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x99225882 d_materialise_unique +EXPORT_SYMBOL_GPL vmlinux 0x9924c496 __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x99290b14 ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0x993ee1d3 wm8350_device_exit +EXPORT_SYMBOL_GPL vmlinux 0x9954bce8 pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x9973add9 __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x99b166d6 usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x99c87be9 pinctrl_utils_add_map_mux +EXPORT_SYMBOL_GPL vmlinux 0x99dc1012 acpi_dev_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x99e3d914 ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x99f5dd61 irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0x9a00e220 xenbus_unmap_ring +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a5534f2 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x9a6a2608 __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x9a85efb1 ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x9a89dbf7 lpddr2_jedec_min_tck +EXPORT_SYMBOL_GPL vmlinux 0x9a9824ef btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9a99fd9e palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0x9aaa1208 pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9ac793f0 inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0x9ac7ea07 devres_find +EXPORT_SYMBOL_GPL vmlinux 0x9aca444b get_monotonic_boottime +EXPORT_SYMBOL_GPL vmlinux 0x9adca7ec regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9b195f9c tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0x9b1bfb1a bsg_request_fn +EXPORT_SYMBOL_GPL vmlinux 0x9b21027b adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9b38a964 vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0x9b40c859 rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x9b5c2385 percpu_ida_free_tags +EXPORT_SYMBOL_GPL vmlinux 0x9b80e64d attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9b8d9503 hv_register_vmbus_handler +EXPORT_SYMBOL_GPL vmlinux 0x9b9f3648 pcibios_scan_specific_bus +EXPORT_SYMBOL_GPL vmlinux 0x9ba90148 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x9babf390 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0x9bbd1763 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0x9bd72b78 apei_write +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9bf22d5f pci_configure_slot +EXPORT_SYMBOL_GPL vmlinux 0x9c166a82 usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x9c2b0943 devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x9c2e4b66 acpi_unregister_gsi +EXPORT_SYMBOL_GPL vmlinux 0x9c760438 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0x9c963681 xenbus_unmap_ring_vfree +EXPORT_SYMBOL_GPL vmlinux 0x9ca8257b blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0x9cc18968 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9cc856f4 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0x9cd0184d init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x9cec585b sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0x9d030b99 stop_machine +EXPORT_SYMBOL_GPL vmlinux 0x9d06688b register_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0x9d0ca2a4 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0x9d138533 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x9d3850e1 gnttab_alloc_grant_references +EXPORT_SYMBOL_GPL vmlinux 0x9d40e66d hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0x9d62c898 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x9d8331c0 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x9dcfaf53 perf_trace_buf_prepare +EXPORT_SYMBOL_GPL vmlinux 0x9dd8d8ca __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x9dfdf722 gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0x9e13db12 adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x9e240b51 relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0x9e25897c inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x9e682235 __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x9e6fc3d2 devm_spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x9e71ed39 usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0x9e980b8a irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x9eb88c35 usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x9ebff902 start_thread +EXPORT_SYMBOL_GPL vmlinux 0x9ec26efb led_trigger_store +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9f0664bf dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0x9f126337 dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x9f212dc4 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0x9f23bc21 __pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x9f2bf419 regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x9f5bc883 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0x9f8cfcf5 ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x9f92588e driver_register +EXPORT_SYMBOL_GPL vmlinux 0x9fa0af67 sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x9fa688be xenbus_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x9fb2d7a6 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x9fc81155 usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0x9fcadc8f pci_msi_off +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fd2a208 adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0x9fd80d1f xenbus_dev_changed +EXPORT_SYMBOL_GPL vmlinux 0x9fd8336b xenbus_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9ff1e42e fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0xa00aac40 inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0xa01305a4 tcp_done +EXPORT_SYMBOL_GPL vmlinux 0xa0154415 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xa01b516a __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0xa0208e02 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0xa045ed81 device_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa060b66b xen_find_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0xa0699624 devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0xa07d2d85 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0xa0abbf35 user_update +EXPORT_SYMBOL_GPL vmlinux 0xa0bc2101 pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL vmlinux 0xa0d4106c regmap_update_bits_async +EXPORT_SYMBOL_GPL vmlinux 0xa0ecb333 nl_table +EXPORT_SYMBOL_GPL vmlinux 0xa11216be xen_store_domain_type +EXPORT_SYMBOL_GPL vmlinux 0xa115be30 usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0xa122585d invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0xa12d929d desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xa1480488 crypto_ahash_type +EXPORT_SYMBOL_GPL vmlinux 0xa156a1f2 erst_get_record_id_end +EXPORT_SYMBOL_GPL vmlinux 0xa159c48f extcon_unregister_interest +EXPORT_SYMBOL_GPL vmlinux 0xa15d3c0b clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0xa17853f0 tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0xa196db7f rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0xa1bd7822 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xa1e5dd30 __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xa1e970a5 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0xa1ee1de9 rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0xa1f4498d pinctrl_remove_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xa1f79553 xen_create_contiguous_region +EXPORT_SYMBOL_GPL vmlinux 0xa1fe00a5 swiotlb_tbl_unmap_single +EXPORT_SYMBOL_GPL vmlinux 0xa223c098 crypto_alloc_instance +EXPORT_SYMBOL_GPL vmlinux 0xa22fc623 wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0xa2385982 ping_proc_register +EXPORT_SYMBOL_GPL vmlinux 0xa25c1b88 adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa27cb33b kobj_completion_init +EXPORT_SYMBOL_GPL vmlinux 0xa2820b28 blkcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0xa2b2817b devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xa2b9c993 clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0xa353fffc xenbus_rm +EXPORT_SYMBOL_GPL vmlinux 0xa36ca79f sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0xa36cc444 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa381fc67 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3c5e3a0 debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0xa3e7c113 ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0xa3f06f08 bmp085_remove +EXPORT_SYMBOL_GPL vmlinux 0xa3f5d4f0 register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xa410c7c0 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xa422c011 dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0xa43412ec acpi_subsys_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa452c297 hpet_mask_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa452f2a4 xen_pirq_from_irq +EXPORT_SYMBOL_GPL vmlinux 0xa466de38 acpi_processor_ffh_cstate_enter +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa4d58669 math_state_restore +EXPORT_SYMBOL_GPL vmlinux 0xa4d6f105 wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xa4ea3922 disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa4ef481d ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0xa4fbf60a skb_segment +EXPORT_SYMBOL_GPL vmlinux 0xa55b6a28 fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0xa55e9e6f tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xa57ae962 spi_master_resume +EXPORT_SYMBOL_GPL vmlinux 0xa5a55d54 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0xa5bceb0a devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xa5be1af1 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xa5d6efa1 dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0xa5deba01 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa5efd84d crypto_larval_lookup +EXPORT_SYMBOL_GPL vmlinux 0xa6127ab7 rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xa61b1477 tracepoint_iter_start +EXPORT_SYMBOL_GPL vmlinux 0xa625110d kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0xa62892c6 efivar_sysfs_list +EXPORT_SYMBOL_GPL vmlinux 0xa62f73f9 ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa64c12fe inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xa682d0ec bus_find_device_by_name +EXPORT_SYMBOL_GPL vmlinux 0xa694118d sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xa69681bc nf_unregister_afinfo +EXPORT_SYMBOL_GPL vmlinux 0xa6a0a273 max77693_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6cf3d3f efivar_entry_remove +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa6f0bee2 pci_intx +EXPORT_SYMBOL_GPL vmlinux 0xa6f1ca13 inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0xa712a649 pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0xa720feff rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xa724257f init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0xa729afef md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0xa72f20c8 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0xa7510d89 led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0xa75312bc call_rcu_sched +EXPORT_SYMBOL_GPL vmlinux 0xa757ae85 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0xa75811d0 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xa75b5547 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0xa76187db sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0xa7635663 serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0xa76548ff page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0xa7676e56 sec_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xa78c4d9b pinctrl_find_gpio_range_from_pin +EXPORT_SYMBOL_GPL vmlinux 0xa7b9f613 tpm_show_owned +EXPORT_SYMBOL_GPL vmlinux 0xa7f92105 add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0xa801b359 efivar_entry_iter_begin +EXPORT_SYMBOL_GPL vmlinux 0xa81eb2cc crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0xa82af559 blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa852ad38 irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0xa85f6f68 __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0xa89b41b4 da903x_write +EXPORT_SYMBOL_GPL vmlinux 0xa8a1b1d7 class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xa8c10646 inet_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0xa8c3b6a3 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0xa8c9aba2 usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xa8e2a11a tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xa9104a74 virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0xa9126bff hpet_set_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa980af16 RSA_public_key_algorithm +EXPORT_SYMBOL_GPL vmlinux 0xa9973b0a ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0xa9a82042 gnttab_trans_grants_available +EXPORT_SYMBOL_GPL vmlinux 0xa9c474e5 da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9fc3f54 gnttab_grant_foreign_access_trans +EXPORT_SYMBOL_GPL vmlinux 0xaa2a72bf __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0xaa428cfd fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0xaa8ea57f __class_register +EXPORT_SYMBOL_GPL vmlinux 0xaa94051b tcp_is_cwnd_limited +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xab01acbe gnttab_request_free_callback +EXPORT_SYMBOL_GPL vmlinux 0xab119f89 pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0xab1b52d4 regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0xab6babaf pm_qos_request +EXPORT_SYMBOL_GPL vmlinux 0xab7d8f7c register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0xabb81797 device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0xabd8c703 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xabfc924a irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xac1ae497 pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xac1e7d72 inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xac474845 pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xac6e83c7 debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0xac9ce195 kvm_async_pf_task_wait +EXPORT_SYMBOL_GPL vmlinux 0xacafa8e7 vector_used_by_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xacb20ce0 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0xacc08be4 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0xacc524be clk_register +EXPORT_SYMBOL_GPL vmlinux 0xacde6144 max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xace5c0fc usb_bus_list +EXPORT_SYMBOL_GPL vmlinux 0xacec6e55 trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0xacefeec5 devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0xacf966ec ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0xad1c1ac1 dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0xad1e8890 iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0xad317b46 rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0xad376749 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0xad52d278 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0xad602d2f pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0xad8d8ab0 xen_physdev_op_compat +EXPORT_SYMBOL_GPL vmlinux 0xad98ee26 extcon_set_cable_state +EXPORT_SYMBOL_GPL vmlinux 0xadc785ec kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0xadf6aa4d tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xae03bed9 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae6eaf93 hwpoison_filter_dev_minor +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae7c5411 ms_hyperv +EXPORT_SYMBOL_GPL vmlinux 0xae852ebd pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0xaea4925b xenbus_probe_node +EXPORT_SYMBOL_GPL vmlinux 0xaea68a11 usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xaeb75899 ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0xaeb832ff crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0xaef1b1a9 pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0xaf16c97e pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0xaf43ad13 ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0xaf49fda7 hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xaf4e44a3 rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xaf59c87b crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0xaf5c6c26 sk_unattached_filter_create +EXPORT_SYMBOL_GPL vmlinux 0xaf7c763a firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0xaf8258c8 tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0xafa2b7b9 leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xafc3faab hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0xafd18160 exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0xb02ac411 register_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb04ced2e balloon_devinfo_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0d6f4aa n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0xb0e2134f crypto_unregister_pcomp +EXPORT_SYMBOL_GPL vmlinux 0xb0e2ba6b udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb10d55bc cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0xb11ea4b8 pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0xb122f6a0 usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0xb12fc9f6 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0xb13f0486 verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xb140d14c ring_buffer_read +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb169ad4e fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0xb16a64f3 rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xb172ffac efivars_sysfs_init +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb18fe83c ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0xb196d8a5 devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xb19a41d0 ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0xb1a7e3f6 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0xb1abb3b9 regmap_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xb1acbcce rcu_barrier_sched +EXPORT_SYMBOL_GPL vmlinux 0xb1b15306 usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1c0c1c2 async_schedule_domain +EXPORT_SYMBOL_GPL vmlinux 0xb1c42848 ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1f4a525 PageHeadHuge +EXPORT_SYMBOL_GPL vmlinux 0xb20bd21e dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xb21457d9 cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb22555a8 usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0xb22c1832 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0xb231bd90 acpi_bus_trim +EXPORT_SYMBOL_GPL vmlinux 0xb238bc99 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0xb2b5732b __inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0xb2b88043 device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0xb2bd6e18 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0xb2c27e01 devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0xb2e01714 ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb2ec84f6 bio_clone_mddev +EXPORT_SYMBOL_GPL vmlinux 0xb31cd8ba usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xb31e1560 unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0xb3253ed9 hpet_rtc_timer_init +EXPORT_SYMBOL_GPL vmlinux 0xb34555db vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0xb383c4e3 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xb39f466f da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0xb3adcfa5 regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xb3c43d2c regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0xb3d102f4 class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xb3da59dc ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xb3fba4dc iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0xb42abdfa usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0xb42f9d73 ping_seq_fops +EXPORT_SYMBOL_GPL vmlinux 0xb47ff84c pwm_enable +EXPORT_SYMBOL_GPL vmlinux 0xb490d018 dbs_check_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb4a3ec8f init_fpu +EXPORT_SYMBOL_GPL vmlinux 0xb4a82336 __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0xb4ae3340 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4c5708a usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0xb4ddc684 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0xb4e14553 gnttab_query_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0xb4e6492e ata_sas_port_async_suspend +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4f17f85 cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0xb4fcd940 register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0xb50c0ddf serial8250_rx_dma +EXPORT_SYMBOL_GPL vmlinux 0xb519dd55 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb53620d1 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0xb53e9e79 blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0xb55d2fe4 disk_get_part +EXPORT_SYMBOL_GPL vmlinux 0xb58dcfa2 synchronize_sched_expedited +EXPORT_SYMBOL_GPL vmlinux 0xb59068bb find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xb5924467 acpi_dev_get_resources +EXPORT_SYMBOL_GPL vmlinux 0xb5a0e11e lpddr2_jedec_addressing_table +EXPORT_SYMBOL_GPL vmlinux 0xb5cb8145 hrtimer_get_res +EXPORT_SYMBOL_GPL vmlinux 0xb5d29e97 PageHuge +EXPORT_SYMBOL_GPL vmlinux 0xb5e896fb tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0xb5f17edf perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb6212caa alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0xb6230f1f gnttab_grant_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0xb624228f relay_flush +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb633a5de srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xb63c4b61 rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0xb66421b2 acpi_str_to_uuid +EXPORT_SYMBOL_GPL vmlinux 0xb67b2219 cm_suspend_again +EXPORT_SYMBOL_GPL vmlinux 0xb67c64fd __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0xb680901d dma_buf_kunmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0xb6aeb661 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xb6bc49a9 __supported_pte_mask +EXPORT_SYMBOL_GPL vmlinux 0xb6c635af wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb6c9fe29 tps65912_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0xb6dc8788 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xb6f2c578 __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0xb700ac7f task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0xb709e339 efivar_validate +EXPORT_SYMBOL_GPL vmlinux 0xb718f2f9 sfi_table_parse +EXPORT_SYMBOL_GPL vmlinux 0xb7199a61 regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xb7779e73 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb7892261 gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0xb7977c5e __scsi_get_command +EXPORT_SYMBOL_GPL vmlinux 0xb79a14e0 netlink_alloc_skb +EXPORT_SYMBOL_GPL vmlinux 0xb7afebb8 _submit_bh +EXPORT_SYMBOL_GPL vmlinux 0xb7ba872c cgroup_is_descendant +EXPORT_SYMBOL_GPL vmlinux 0xb7cf9294 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0xb7d7c12e hpet_set_alarm_time +EXPORT_SYMBOL_GPL vmlinux 0xb7e9c445 xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0xb7f77027 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0xb8216517 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb86bcceb klist_next +EXPORT_SYMBOL_GPL vmlinux 0xb86fbf0c rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb87e18ce hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0xb88d239c init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0xb8b2b1f7 mce_register_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0xb8d4b80f usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xb8d7ae39 smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xb8eccf7d regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xb8ee31ca fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0xb90312d4 skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0xb903674c scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0xb9176155 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0xb91dc091 regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xb92ac419 stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xb92d6b13 kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0xb9412fb1 find_vpid +EXPORT_SYMBOL_GPL vmlinux 0xb9710ead crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0xb98d5c4a input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0xb999f00c alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0xb99d5837 xenbus_read +EXPORT_SYMBOL_GPL vmlinux 0xb9b0aa4d __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9d48919 blk_rq_check_limits +EXPORT_SYMBOL_GPL vmlinux 0xb9da2997 snmp_fold_field64 +EXPORT_SYMBOL_GPL vmlinux 0xb9f6829a class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xb9fa4763 __efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0xba15cff8 wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0xba8c5d0b pci_sriov_migration +EXPORT_SYMBOL_GPL vmlinux 0xbab82db7 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0xbace5007 irq_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0xbb038ce4 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xbb03974e __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb2577a3 rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0xbb483396 extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0xbb58b814 iomap_free +EXPORT_SYMBOL_GPL vmlinux 0xbb7362b0 clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0xbb84df7b ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0xbbb98859 edid_info +EXPORT_SYMBOL_GPL vmlinux 0xbbd4f657 xen_pcpu_id +EXPORT_SYMBOL_GPL vmlinux 0xbbf59390 usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0xbbfd3fa6 user_instantiate +EXPORT_SYMBOL_GPL vmlinux 0xbc0c6d4a wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0xbc1d14ca ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xbc53b4d2 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0xbc58ee73 rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0xbc6105e4 wm8400_block_read +EXPORT_SYMBOL_GPL vmlinux 0xbc64d555 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0xbc971954 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0xbca0201a sfi_mrtc_array +EXPORT_SYMBOL_GPL vmlinux 0xbcac6160 pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbcb838a1 amd_flush_garts +EXPORT_SYMBOL_GPL vmlinux 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbcdd9a3d regmap_update_bits_check +EXPORT_SYMBOL_GPL vmlinux 0xbcf7013f netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0xbcfc7dd4 usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0xbd3e91ea need_load_eval +EXPORT_SYMBOL_GPL vmlinux 0xbd4f9b82 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0xbd506a46 unregister_hotplug_dock_device +EXPORT_SYMBOL_GPL vmlinux 0xbd525972 regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0xbd5c0ee6 serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0xbd5cb8b9 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0xbd72ec90 ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0xbda19032 ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0xbdb257ba hrtimer_start +EXPORT_SYMBOL_GPL vmlinux 0xbdcf24c3 ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0xbdd10c42 __rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0xbdd295f0 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xbdd2f42a rcu_bh_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0xbdd5f10f apei_hest_parse +EXPORT_SYMBOL_GPL vmlinux 0xbddb3452 of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xbde0d459 ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xbdeb1f3a regmap_fields_write +EXPORT_SYMBOL_GPL vmlinux 0xbe0a5591 i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xbe1887e4 ata_unpack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xbe2e4e1e ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0xbe52ba13 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xbe8fb594 blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbebb5e2e sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xbebc5de3 css_next_child +EXPORT_SYMBOL_GPL vmlinux 0xbf01b747 crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf0811dd usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0xbf1dff4a pci_pri_enabled +EXPORT_SYMBOL_GPL vmlinux 0xbf327b9e __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xbf34d5a6 crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xbf52b265 get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0xbf68a036 rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xbf7b6b4a irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL vmlinux 0xbfc0c519 ata_do_eh +EXPORT_SYMBOL_GPL vmlinux 0xbfc0e31c da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xbfe665d4 tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0xbff22f1e pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0xbff92ce5 platform_bus +EXPORT_SYMBOL_GPL vmlinux 0xbffcb3b7 acpi_os_get_iomem +EXPORT_SYMBOL_GPL vmlinux 0xc00131cf visitor64 +EXPORT_SYMBOL_GPL vmlinux 0xc03ecefe yield_to +EXPORT_SYMBOL_GPL vmlinux 0xc04cf060 tpm_show_pubek +EXPORT_SYMBOL_GPL vmlinux 0xc05fe5df dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0xc08647ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc097cb4c ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xc0991f06 posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0xc0bf6ead timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xc0ce8e12 css_rightmost_descendant +EXPORT_SYMBOL_GPL vmlinux 0xc0d01bc0 percpu_ref_cancel_init +EXPORT_SYMBOL_GPL vmlinux 0xc0d26387 kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc0e75cec visitor128 +EXPORT_SYMBOL_GPL vmlinux 0xc1048ee6 acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xc10f3e42 udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0xc1123d0a alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0xc11b4470 balloon_stats +EXPORT_SYMBOL_GPL vmlinux 0xc11b45c6 gpiod_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xc11bd00f tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc12bb947 ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0xc13a23db each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0xc164642e xenbus_otherend_changed +EXPORT_SYMBOL_GPL vmlinux 0xc1713ad0 pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc175234e serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xc18578ed process_srcu +EXPORT_SYMBOL_GPL vmlinux 0xc18ec771 device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0xc1c1a14d pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0xc1d821f8 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xc1dc0d5d acpi_find_child +EXPORT_SYMBOL_GPL vmlinux 0xc1ddcdb8 do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0xc1e06ad1 led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0xc1fa07b4 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0xc205fa4e synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0xc210aa34 tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0xc225a939 pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0xc2296729 iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc24cc272 xen_swiotlb_sync_sg_for_device +EXPORT_SYMBOL_GPL vmlinux 0xc25c7be2 regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xc26351f8 bind_evtchn_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc2c63d90 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0xc2fa376f devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xc3133dbc wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0xc3165563 usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc346bcb6 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc34efe27 snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0xc3688cc0 lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0xc37226a5 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xc389e620 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0xc39e1bbe ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xc3a9e963 extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc3a9f354 xen_swiotlb_map_sg_attrs +EXPORT_SYMBOL_GPL vmlinux 0xc3bef09f watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xc3d3cb85 call_filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0xc4074944 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0xc413871f uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0xc41f2f79 rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xc424f886 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc42a78a2 ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0xc45d20d5 regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xc4641afe powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0xc47b9665 pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc4981e41 perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0xc4c2d38e unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc4f30dd2 sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xc510ef27 ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0xc5397da6 xenbus_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xc546fb6d sec_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xc56df689 nfq_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc5849d3c usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0xc5a581da cpufreq_table_validate_and_show +EXPORT_SYMBOL_GPL vmlinux 0xc5b94df9 rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0xc5bab3fe btree_init +EXPORT_SYMBOL_GPL vmlinux 0xc5d37180 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0xc60ba39c nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0xc60f75ec __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xc617ea97 netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc63a1109 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc649018a sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xc65d3eed ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc6711f44 crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0xc68aa090 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xc68f6028 remove_irq +EXPORT_SYMBOL_GPL vmlinux 0xc690866c irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xc69b08c2 __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc6a45b24 iommu_present +EXPORT_SYMBOL_GPL vmlinux 0xc6c2f567 dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0xc6c7107b xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0xc6c8ad8e acpi_subsys_resume_early +EXPORT_SYMBOL_GPL vmlinux 0xc6cb76c1 sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0xc6d13e91 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0xc6d7e798 bmp085_detect +EXPORT_SYMBOL_GPL vmlinux 0xc6f1fff6 blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0xc6f62ad5 ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0xc7002ac4 evtchn_make_refcounted +EXPORT_SYMBOL_GPL vmlinux 0xc71558ef stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xc7164ba9 fuse_get_req_for_background +EXPORT_SYMBOL_GPL vmlinux 0xc71e0670 ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0xc72356eb fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0xc72e1233 __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xc732767e list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0xc757f8a2 iommu_domain_has_cap +EXPORT_SYMBOL_GPL vmlinux 0xc75f3b43 usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xc79805fb dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xc79ea907 netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7c6391c mpi_set_buffer +EXPORT_SYMBOL_GPL vmlinux 0xc7ca5611 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0xc7e39bca ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc818a5cb debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0xc81d1a28 sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc8453692 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0xc84951fc extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc853e169 apei_get_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0xc8652ce6 ping_hash +EXPORT_SYMBOL_GPL vmlinux 0xc86d4f4d crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0xc87c1f84 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xc87e487a sched_clock_idle_sleep_event +EXPORT_SYMBOL_GPL vmlinux 0xc89dc144 usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0xc8add232 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0xc8b8d6f3 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0xc8c7e805 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0xc8ce0c44 rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0xc8defe1c ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xc8f23c0c usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0xc91232b1 __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc945d177 acpi_dev_pm_attach +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc956dd49 get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0xc97d1140 cpufreq_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0xc9a81f79 iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xc9c3f176 hpet_register_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xc9cdb08c sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xc9d558b4 do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xca144933 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0xca4badfb usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0xca53134f inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca81ea9a xenbus_transaction_end +EXPORT_SYMBOL_GPL vmlinux 0xca85d8cf tracepoint_probe_update_all +EXPORT_SYMBOL_GPL vmlinux 0xca9288c8 ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0xcabc06ee devres_add +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcacf8994 eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0xcae76794 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0xcb002a41 virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb2be8b5 skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0xcb469d2b ddebug_add_module +EXPORT_SYMBOL_GPL vmlinux 0xcb4afd30 platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0xcb808fd0 attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0xcb8c4217 dm_underlying_device_busy +EXPORT_SYMBOL_GPL vmlinux 0xcb9b162e clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0xcba3c350 security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xcbb92b34 __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0xcbd04703 irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0xcbdc9f64 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0xcbe3cc58 sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0xcbe93486 regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xcbee20b2 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0xcbf098af key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0xcc1870c0 sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0xcc1f1c3d inet_twdr_hangman +EXPORT_SYMBOL_GPL vmlinux 0xcc2c479b rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0xcc3b8132 extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xcc634de7 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0xcc6ab305 is_dock_device +EXPORT_SYMBOL_GPL vmlinux 0xcc85fcb6 async_schedule +EXPORT_SYMBOL_GPL vmlinux 0xcc973156 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0xccc417fc ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccd02dbf ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0xccea4e34 perf_get_x86_pmu_capability +EXPORT_SYMBOL_GPL vmlinux 0xccf73dc4 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0xcd110929 ata_base_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xcd13c1d9 gpiochip_remove_pin_ranges +EXPORT_SYMBOL_GPL vmlinux 0xcd1516df register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xcd211559 virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0xcd396cdb devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xcd4830be __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0xcd5d2378 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xcd86f7e9 dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcdcc06a6 ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0xcdfdd5c2 class_destroy +EXPORT_SYMBOL_GPL vmlinux 0xce06c538 dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xce0b9b59 max77693_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xce112085 xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0xce46e140 ktime_get_ts +EXPORT_SYMBOL_GPL vmlinux 0xce6012f9 crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0xce6578e8 ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0xce6a9d9a trace_current_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce87717f m2p_remove_override +EXPORT_SYMBOL_GPL vmlinux 0xceb10d87 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0xceb13b60 efivars_register +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcef1dd0e perf_check_microcode +EXPORT_SYMBOL_GPL vmlinux 0xcef2951b ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0xcf0169d7 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0xcf1e243d gpio_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xcf49c2e4 wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf91faa7 xenbus_bind_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xcfa31248 regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0xcfa9a29d regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcfaaae01 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xcfc62f27 xen_start_info +EXPORT_SYMBOL_GPL vmlinux 0xcfc68341 synchronize_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL vmlinux 0xd02683d0 dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0xd03c7700 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0xd0411628 sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0xd0458ccb xenbus_strstate +EXPORT_SYMBOL_GPL vmlinux 0xd05b0763 pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd07caa2d serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0xd0837db1 spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0xd08b9ec3 sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0xd0a2d177 xenbus_switch_state +EXPORT_SYMBOL_GPL vmlinux 0xd0a3d426 cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0d8d445 da903x_update +EXPORT_SYMBOL_GPL vmlinux 0xd0dd448a led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0xd0f1bcba tty_prepare_flip_string_flags +EXPORT_SYMBOL_GPL vmlinux 0xd0f7613d dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xd10a8cf4 pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0xd1270bf2 anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0xd12e6629 tpm_show_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd13f5743 iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xd14bc4d9 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xd14f5bcf percpu_ida_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd1507e59 erst_clear +EXPORT_SYMBOL_GPL vmlinux 0xd1571da6 pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xd16712f3 crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xd1823bc5 rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0xd188e088 devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd191199c rtc_irq_register +EXPORT_SYMBOL_GPL vmlinux 0xd1b2db37 tracepoint_probe_register_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xd1b850d9 bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0xd1edbc4f devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd21161a3 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xd217ce9f wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd22902ed usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0xd2383c19 regmap_field_write +EXPORT_SYMBOL_GPL vmlinux 0xd23aa869 relay_close +EXPORT_SYMBOL_GPL vmlinux 0xd249b436 ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0xd258217d clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd29666ee pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0xd2aaeb4e kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0xd2c58ab2 apei_exec_noop +EXPORT_SYMBOL_GPL vmlinux 0xd2d4dac8 __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xd2dc8de6 vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0xd30ba963 rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0xd324d4f4 rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0xd32fe193 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xd34c1976 crypto_givcipher_type +EXPORT_SYMBOL_GPL vmlinux 0xd3768696 sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xd3d10132 i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0xd3e5f199 device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd3eb9dfa dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4038c54 regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xd423166e crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd455bde4 ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0xd461e280 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0xd49dde24 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0xd4b3abd7 devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4cad45e clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xd4ccec03 pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xd4dd9822 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0xd4f0022b register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xd501f6e8 tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xd544e902 pgprot_writecombine +EXPORT_SYMBOL_GPL vmlinux 0xd550560f __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xd55aa79d acpi_pci_find_root +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd5bd7dac ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0xd5f7a759 isa_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xd63735ec __rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0xd648a45d bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0xd65218c0 dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0xd6563905 usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xd65e023d shash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd67f5217 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd6933400 usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0xd69c3f42 ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xd6ba1076 pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0xd6c2e04b __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0xd6c62ca4 blkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0xd6d1eccc crypto_init_spawn +EXPORT_SYMBOL_GPL vmlinux 0xd6ed3a8e cper_next_record_id +EXPORT_SYMBOL_GPL vmlinux 0xd6f41344 iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xd6feefa5 agp_num_entries +EXPORT_SYMBOL_GPL vmlinux 0xd705b4c7 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0xd710bee3 irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xd72320cd pinctrl_force_default +EXPORT_SYMBOL_GPL vmlinux 0xd72a4a39 rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0xd72feba2 xenbus_read_driver_state +EXPORT_SYMBOL_GPL vmlinux 0xd7399d2a efivar_entry_iter_end +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd77c0bc8 klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xd79fa853 filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0xd7aaf504 tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0xd7ab2c0c speedstep_detect_processor +EXPORT_SYMBOL_GPL vmlinux 0xd7c05f34 virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0xd7d79132 put_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0xd7f998ca ata_sg_init +EXPORT_SYMBOL_GPL vmlinux 0xd81dbf1c bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0xd81de62c ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xd820c283 eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xd8250a5c iounmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0xd8525ea7 fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0xd86f0048 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xd87601cc ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd88d7992 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0xd8cba8e1 netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0xd919806a amd_cache_northbridges +EXPORT_SYMBOL_GPL vmlinux 0xd91dcec5 register_hotplug_dock_device +EXPORT_SYMBOL_GPL vmlinux 0xd929aa54 map_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xd942d353 ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0xd94556ff crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xd94b737e erst_read +EXPORT_SYMBOL_GPL vmlinux 0xd9a34035 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0xd9d41725 locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0xd9e12aea ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0xd9ecb670 ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xd9fd787e xenbus_watch_path +EXPORT_SYMBOL_GPL vmlinux 0xda18a668 debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0xda44cb37 setup_charger_manager +EXPORT_SYMBOL_GPL vmlinux 0xda5275e9 sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0xda590e06 rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0xda65166d debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0xda6631be sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0xda77baf1 tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0xda9b6cbe skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdaf73f88 class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0xdaf788bd fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0xdb04cacc tracepoint_probe_unregister_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xdb09432e cgroup_load_subsys +EXPORT_SYMBOL_GPL vmlinux 0xdb2e7cc4 thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0xdb3ebca1 seq_open_net +EXPORT_SYMBOL_GPL vmlinux 0xdb42df0b key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xdb567fc2 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xdb580386 kallsyms_on_each_symbol +EXPORT_SYMBOL_GPL vmlinux 0xdb629d42 xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0xdb679f1d pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0xdb697aca trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xdb79de07 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdb98c871 virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0xdba2c0af __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0xdba4ad93 static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0xdbaa5ac9 rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xdbadf764 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0xdbb7cf90 rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xdbc43f0d regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0xdbc7ace6 ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0xdbefcd64 hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc023a31 usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0xdc14a211 xen_hvm_evtchn_do_upcall +EXPORT_SYMBOL_GPL vmlinux 0xdc16f59c usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xdc1e15f1 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xdc3ca5d9 class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdc4791a9 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0xdc59a32f wakeup_source_drop +EXPORT_SYMBOL_GPL vmlinux 0xdc6699cb acpi_dev_free_resource_list +EXPORT_SYMBOL_GPL vmlinux 0xdc6c23c0 rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0xdc6f95d2 mmput +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdcb13fe9 relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0xdcbd7c6f unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0xdcc055b2 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xdcca8558 blkg_stat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0xdcfc2a4e pinctrl_utils_dt_free_map +EXPORT_SYMBOL_GPL vmlinux 0xdd08f33a xenbus_dev_cancel +EXPORT_SYMBOL_GPL vmlinux 0xdd2efc0f ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0xdd33d79a cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0xdd38ebe6 xenbus_dev_fatal +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd794d33 phys_wc_to_mtrr_index +EXPORT_SYMBOL_GPL vmlinux 0xdd7ab4ab arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0xdd8efa1a swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0xddb5de2b list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0xddbdb12f dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0xddd58dc0 ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0xde241053 crypto_lookup_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xde2743c4 ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xde385dc2 split_page +EXPORT_SYMBOL_GPL vmlinux 0xde501e28 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xde516b9c ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0xde57ea2a __clk_register +EXPORT_SYMBOL_GPL vmlinux 0xde685b91 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0xde747356 intel_msic_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xde7639db blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0xde7c8057 xfrm_inner_extract_output +EXPORT_SYMBOL_GPL vmlinux 0xde804db0 xenbus_register_driver_common +EXPORT_SYMBOL_GPL vmlinux 0xde8f8d69 pinctrl_dev_get_name +EXPORT_SYMBOL_GPL vmlinux 0xdea4c108 devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xdeb248f2 regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xdeb89661 acpi_subsys_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0xdeb8b14f subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf17218f watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0xdf1882af dbgp_reset_prep +EXPORT_SYMBOL_GPL vmlinux 0xdf28c82b tpm_show_pcrs +EXPORT_SYMBOL_GPL vmlinux 0xdf2af64c alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0xdf39a116 da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xdf4169ae inet6_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0xdf4841dd ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0xdf66ca81 ucode_cpu_info +EXPORT_SYMBOL_GPL vmlinux 0xdf67952e proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0xdf734be7 pwm_free +EXPORT_SYMBOL_GPL vmlinux 0xdf82aa49 sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xdfa1fd06 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0xdfb0f012 usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0xdfbf435e rtc_irq_set_state +EXPORT_SYMBOL_GPL vmlinux 0xdfc30f4c rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xdfdb04cb platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0xdff84e77 register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xe003e044 __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0xe007de41 kallsyms_lookup_name +EXPORT_SYMBOL_GPL vmlinux 0xe00d0931 pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0xe01ee5f2 pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0xe02eb6d0 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0xe038685d rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0xe0795699 tcp_reno_min_cwnd +EXPORT_SYMBOL_GPL vmlinux 0xe089cfcc agp_memory_reserved +EXPORT_SYMBOL_GPL vmlinux 0xe0bdf6ff usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0xe0c4c876 kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xe0c77bb5 mce_notify_irq +EXPORT_SYMBOL_GPL vmlinux 0xe10cd6ad erst_get_record_id_begin +EXPORT_SYMBOL_GPL vmlinux 0xe1184062 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0xe124b1fa user_read +EXPORT_SYMBOL_GPL vmlinux 0xe12b4c9d xenbus_register_backend +EXPORT_SYMBOL_GPL vmlinux 0xe1417e70 sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0xe165e5ff driver_find +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe1905fc5 __pci_complete_power_transition +EXPORT_SYMBOL_GPL vmlinux 0xe1923c28 efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0xe1944011 ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0xe19fec0f power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1c32794 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xe21aa6c2 input_class +EXPORT_SYMBOL_GPL vmlinux 0xe25a1f49 ata_scsi_simulate +EXPORT_SYMBOL_GPL vmlinux 0xe26e46f0 acpi_dev_resource_ext_address_space +EXPORT_SYMBOL_GPL vmlinux 0xe2823cdf ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xe295c0ff is_hpet_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe2d3170f ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0xe2e482dc uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0xe2e7840d regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xe2ea0c60 regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe31a7c99 regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xe321dadf md_run +EXPORT_SYMBOL_GPL vmlinux 0xe3398f9d module_mutex +EXPORT_SYMBOL_GPL vmlinux 0xe36229b5 pin_is_valid +EXPORT_SYMBOL_GPL vmlinux 0xe384a102 usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0xe3a6421b dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe3bc7fd4 hpet_unregister_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xe3e1792c wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0xe3e2e141 ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xe400e735 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0xe4147cb6 usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0xe41534ce bind_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0xe420459b mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe431fd3b platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0xe4387ea3 ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0xe438f4e1 xenbus_map_ring_valloc +EXPORT_SYMBOL_GPL vmlinux 0xe439815c erst_get_record_count +EXPORT_SYMBOL_GPL vmlinux 0xe44faf2f thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0xe49dda4c inet6_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0xe4a07010 ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe4c331b6 acpi_os_unmap_memory +EXPORT_SYMBOL_GPL vmlinux 0xe4c4b28f gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xe4d23d8d inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe4e1876f devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0xe4e68bc8 apei_map_generic_address +EXPORT_SYMBOL_GPL vmlinux 0xe50d040b crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0xe52ae762 __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xe53ac38f alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0xe53c43a1 ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0xe54e3c63 mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0xe55033bf br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0xe558195a blk_queue_flush_queueable +EXPORT_SYMBOL_GPL vmlinux 0xe5692c23 regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58fb452 aer_irq +EXPORT_SYMBOL_GPL vmlinux 0xe598647a usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xe59d9ad6 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0xe5aad12d regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0xe5c2a348 crypto_blkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0xe5dde61f exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0xe6251db0 da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe635bbc9 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0xe64ad8ea unregister_nmi_handler +EXPORT_SYMBOL_GPL vmlinux 0xe651f76e selinux_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe6587ba7 regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xe65f3f06 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0xe6607117 kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0xe67bc567 debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0xe68a9e12 transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0xe68c68bd iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0xe6b49086 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0xe6ba40b1 driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0xe6c68334 ddebug_remove_module +EXPORT_SYMBOL_GPL vmlinux 0xe6ced558 sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0xe6d16881 usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xe6e1c5fe uuid_be_gen +EXPORT_SYMBOL_GPL vmlinux 0xe6f50166 __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xe7232e0f user_return_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe738dbcb inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xe748a6ca cpufreq_frequency_table_target +EXPORT_SYMBOL_GPL vmlinux 0xe757f40d extcon_register_interest +EXPORT_SYMBOL_GPL vmlinux 0xe764ca78 relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe7aaed8e sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe8347be1 __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0xe840fc5b sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xe845f812 pci_restore_ats_state +EXPORT_SYMBOL_GPL vmlinux 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL vmlinux 0xe8514468 fuse_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe85e0377 pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0xe8608c44 get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe865c673 elv_register +EXPORT_SYMBOL_GPL vmlinux 0xe892158c xenbus_map_ring +EXPORT_SYMBOL_GPL vmlinux 0xe8aa13e3 napi_hash_add +EXPORT_SYMBOL_GPL vmlinux 0xe8d6e453 ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0xe8ff84b8 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0xe90c1b4c tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0xe9232789 blk_unprep_request +EXPORT_SYMBOL_GPL vmlinux 0xe92c8fb5 ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0xe93b7d1d usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe953b1d7 __intel_mid_cpu_chip +EXPORT_SYMBOL_GPL vmlinux 0xe960034c arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xe97dfd43 bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xe998e933 wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0xe9a84bd1 sysfs_notify_dirent +EXPORT_SYMBOL_GPL vmlinux 0xe9ce931a kvm_para_available +EXPORT_SYMBOL_GPL vmlinux 0xe9d3684e get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0xea03d087 blocking_notifier_chain_cond_register +EXPORT_SYMBOL_GPL vmlinux 0xea118654 sec_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea418e0f atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0xeacdb9b8 regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0xeafaac0c usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xeafe94d5 pwm_set_polarity +EXPORT_SYMBOL_GPL vmlinux 0xeb0c76c9 sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0xeb1c3628 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xeb2798f7 xen_destroy_contiguous_region +EXPORT_SYMBOL_GPL vmlinux 0xeb2cee1f vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xeb2d3c58 __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xeb370805 __apei_exec_run +EXPORT_SYMBOL_GPL vmlinux 0xeb48c47b xenbus_grant_ring +EXPORT_SYMBOL_GPL vmlinux 0xeb7939c2 crypto_lookup_aead +EXPORT_SYMBOL_GPL vmlinux 0xeb833c22 xen_has_pv_disk_devices +EXPORT_SYMBOL_GPL vmlinux 0xeb8a3cbb sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0xeb9abbee ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xeba36b19 usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0xebb3544b get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0xebceff84 pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0xebe60665 posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xebec57c4 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xec1b043e regulator_suspend_prepare +EXPORT_SYMBOL_GPL vmlinux 0xec25f967 klist_del +EXPORT_SYMBOL_GPL vmlinux 0xec48e4a8 fuse_conn_kill +EXPORT_SYMBOL_GPL vmlinux 0xec564638 pinctrl_pm_select_idle_state +EXPORT_SYMBOL_GPL vmlinux 0xec5e0de6 acpi_register_gsi +EXPORT_SYMBOL_GPL vmlinux 0xec718cfb tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0xec7b8c6f skcipher_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0xec82adee raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0xec97fef5 pci_cleanup_aer_uncorrect_error_status +EXPORT_SYMBOL_GPL vmlinux 0xed062cf8 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0xed1128ef ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0xed63f275 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0xed741cd4 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0xed7a336d irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0xed9054fd xen_swiotlb_dma_supported +EXPORT_SYMBOL_GPL vmlinux 0xedbc6f67 gnttab_end_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0xedd49930 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xeddb6f45 clk_register_divider +EXPORT_SYMBOL_GPL vmlinux 0xede8a1e5 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0xedf3f1f1 do_machine_check +EXPORT_SYMBOL_GPL vmlinux 0xedf4adf3 devres_alloc +EXPORT_SYMBOL_GPL vmlinux 0xee06e71f ablkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xee135758 dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0xee1c76cd regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0xee3a5193 pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee96d2f9 tpm_show_caps +EXPORT_SYMBOL_GPL vmlinux 0xee9d4b91 __ablkcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0xeef2e48a acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0xef0a0359 vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0xef1f6e23 apei_resources_request +EXPORT_SYMBOL_GPL vmlinux 0xef2089d1 stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0xef23d470 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0xef409b74 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0xef4b4b95 rtc_irq_set_freq +EXPORT_SYMBOL_GPL vmlinux 0xef4c5340 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0xef6145a3 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0xef64dced pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef782b88 gnttab_grant_foreign_access_subpage +EXPORT_SYMBOL_GPL vmlinux 0xef9c02cf rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0xefcc2936 blk_queue_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xefd90d96 rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0xeff3732b ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xf03bbed8 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf03e0cb8 get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0xf054ac97 intel_msic_irq_read +EXPORT_SYMBOL_GPL vmlinux 0xf057c116 xen_unregister_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0xf0696401 acpi_pci_detect_ejectable +EXPORT_SYMBOL_GPL vmlinux 0xf08a7e0e tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0xf098d46e sdhci_pci_o2_probe_slot +EXPORT_SYMBOL_GPL vmlinux 0xf0bcc415 acpi_pci_check_ejectable +EXPORT_SYMBOL_GPL vmlinux 0xf0f5dbc2 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0xf0f6cb03 tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0xf1255476 relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0xf13388dd sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xf13572bd attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0xf184172e pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf186c82f nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xf1aa5773 pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1b551d9 ibft_addr +EXPORT_SYMBOL_GPL vmlinux 0xf1c26974 regmap_field_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xf1f966c8 regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xf1fe7ac9 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf1feca96 device_move +EXPORT_SYMBOL_GPL vmlinux 0xf20f9cba sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xf21317bb pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf23148a4 cper_estatus_check +EXPORT_SYMBOL_GPL vmlinux 0xf255e8ed perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0xf2638861 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0xf26e1736 crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0xf277f6af bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xf27977e2 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0xf2b99f4f raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0xf2c853af usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xf2c85436 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xf2ca4415 xen_swiotlb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0xf2dc4552 usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0xf2df1b8a blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0xf2e9be5e irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0xf2f077cc pkey_id_type_name +EXPORT_SYMBOL_GPL vmlinux 0xf2f2b182 pstore_register +EXPORT_SYMBOL_GPL vmlinux 0xf2fca922 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0xf30fda27 lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf32bdc5d unregister_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf333408d pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0xf3526922 ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xf357d550 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0xf3898136 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3c20934 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0xf3c71ba6 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0xf3cd96b3 devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0xf3d3277b usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0xf3d523a5 setup_irq +EXPORT_SYMBOL_GPL vmlinux 0xf3e1c863 digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0xf4120d81 ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0xf41fd475 crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0xf427f494 hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf45a4d16 ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0xf46963d9 skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0xf46c391d x86_hyper_kvm +EXPORT_SYMBOL_GPL vmlinux 0xf494f618 mmc_regulator_get_ocrmask +EXPORT_SYMBOL_GPL vmlinux 0xf499fdb2 rcu_barrier_bh +EXPORT_SYMBOL_GPL vmlinux 0xf4e10b8f power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0xf4e88ed6 __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xf4ea64e7 alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xf4fc2d6c __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf56196db generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0xf5785b42 evtchn_get +EXPORT_SYMBOL_GPL vmlinux 0xf57d0b76 pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0xf5884530 user_describe +EXPORT_SYMBOL_GPL vmlinux 0xf58fc5a4 acpiphp_register_attention +EXPORT_SYMBOL_GPL vmlinux 0xf5945bac gnttab_free_grant_references +EXPORT_SYMBOL_GPL vmlinux 0xf597aa6c rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5bebe67 usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0xf5e2397d __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0xf5fef4e3 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf611cb0e rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0xf626b330 cgroup_taskset_first +EXPORT_SYMBOL_GPL vmlinux 0xf6274570 iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0xf649736d user_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf650b07f xenbus_register_frontend +EXPORT_SYMBOL_GPL vmlinux 0xf692d3ee ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0xf695bcdd irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0xf698b074 blkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xf69db451 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0xf6c92829 xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0xf6ddf8c9 __fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0xf6dece16 spi_async +EXPORT_SYMBOL_GPL vmlinux 0xf6e6b3fb ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf6fe1fcf extcon_update_state +EXPORT_SYMBOL_GPL vmlinux 0xf7016530 xenbus_gather +EXPORT_SYMBOL_GPL vmlinux 0xf719434d usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0xf71c6f03 ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xf7322bc8 pv_time_ops +EXPORT_SYMBOL_GPL vmlinux 0xf772767c sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0xf7daadc3 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0xf7dd224d transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0xf7de2821 ata_sas_port_async_resume +EXPORT_SYMBOL_GPL vmlinux 0xf7e72f2f acpi_ec_remove_query_handler +EXPORT_SYMBOL_GPL vmlinux 0xf816c866 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xf82f16b3 execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf82fdd96 extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf86fb6b3 tcp_fetch_timewait_stamp +EXPORT_SYMBOL_GPL vmlinux 0xf8802492 print_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xf88bed94 rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xf88c0acb md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0xf8917ca2 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0xf8a05b4b unregister_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xf8a64e68 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0xf8b84f0a ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0xf8e24fcb acpi_get_gpiod_by_index +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3d0b kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0xf9093c05 xenbus_alloc_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xf9261d0f pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0xf92c3242 tpm_open +EXPORT_SYMBOL_GPL vmlinux 0xf92ce956 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf9765833 dmi_match +EXPORT_SYMBOL_GPL vmlinux 0xf97666a0 set_memory_rw +EXPORT_SYMBOL_GPL vmlinux 0xf98d991d ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xf99700d0 inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9a35b50 dm_dispatch_request +EXPORT_SYMBOL_GPL vmlinux 0xf9a43952 bmp085_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xf9c3564a scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0xf9ca3160 ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xf9cc2c3c debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0xf9d9264e xen_have_vector_callback +EXPORT_SYMBOL_GPL vmlinux 0xfa012fe7 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa1f4662 scatterwalk_start +EXPORT_SYMBOL_GPL vmlinux 0xfa4fb5cb fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0xfa85f314 tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xfa8a47d4 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xfaae1df9 cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xfabdf5a1 usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0xfb1736a7 pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xfb24c002 __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb402b3a pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0xfb5741b0 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0xfb64b230 acpi_processor_ffh_cstate_probe +EXPORT_SYMBOL_GPL vmlinux 0xfb6cfd2b crypto_init_shash_spawn +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb7a3b52 dma_buf_export_named +EXPORT_SYMBOL_GPL vmlinux 0xfb83db03 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xfbba80d7 sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xfbbd9271 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0xfbe04793 crypto_attr_alg2 +EXPORT_SYMBOL_GPL vmlinux 0xfbef6e82 crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0xfc005235 pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc2c14ef iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0xfc3b4246 acpi_bus_update_power +EXPORT_SYMBOL_GPL vmlinux 0xfc4f4953 alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xfc7201f7 sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0xfc968c8b apei_exec_write_register_value +EXPORT_SYMBOL_GPL vmlinux 0xfc9f5b59 spi_master_suspend +EXPORT_SYMBOL_GPL vmlinux 0xfcab1599 stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0xfcd0e345 driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfcd7bc0b ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0xfcdbddc8 vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0xfd05464b klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0xfd1fb9b3 pci_renumber_slot +EXPORT_SYMBOL_GPL vmlinux 0xfd2c1fcf tpm_show_temp_deactivated +EXPORT_SYMBOL_GPL vmlinux 0xfd51b281 gnttab_end_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0xfd673e7a devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xfd7243c7 erst_disable +EXPORT_SYMBOL_GPL vmlinux 0xfd8d539c class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xfd991c01 __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0xfda45b84 rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0xfda6a7ed rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0xfda7f6d3 pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0xfdc4eae4 dma_buf_kmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0xfde021e3 usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0xfe297ed3 da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0xfe727411 get_phys_to_machine +EXPORT_SYMBOL_GPL vmlinux 0xfe8c12e2 regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfeb9e7e3 fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfeda4e1c look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0xfee7334b sdhci_pci_o2_probe +EXPORT_SYMBOL_GPL vmlinux 0xfef8a166 trace_current_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff27ab6b blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff5b10d7 ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0xff5f2b0e __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0xff6036de bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xff83ee9a platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0xff9b1823 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xff9eb407 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0xffd204f9 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0xffdaef8f relay_open +EXPORT_SYMBOL_GPL vmlinux 0xffe71cb7 sched_setscheduler --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/i386/generic.compiler +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/i386/generic.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 4.8.2-19ubuntu1) 4.8.2 --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/i386/generic.modules +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/i386/generic.modules @@ -0,0 +1,4087 @@ +3c509 +3c515 +3c574_cs +3c589_cs +3c59x +3w-9xxx +3w-sas +3w-xxxx +53c700 +6lowpan +6pack +8021q +8139cp +8139too +8250_accent +8250_boca +8250_dw +8250_exar_st16c554 +8250_fourport +8250_hub6 +8255 +8255_pci +8390 +8390p +88pm800 +88pm805 +88pm80x +88pm80x_onkey +88pm860x_battery +88pm860x_bl +88pm860x_charger +88pm860x_onkey +88pm860x-ts +9p +9pnet +9pnet_rdma +9pnet_virtio +a100u2w +a3d +a8293 +aacraid +aat2870_bl +aat2870-regulator +ab3100 +ab3100-otp +abituguru +abituguru3 +ablk_helper +ac97_bus +acard-ahci +acecad +acenic +acerhdf +acer-wmi +acpi_extlog +acpi_ipmi +acpi_pad +acpiphp_ibm +acpi_power_meter +acquirewdt +act2000 +act200l-sir +act_csum +act_gact +act_ipt +actisys-sir +act_mirred +act_nat +act_pedit +act_police +act_simple +act_skbedit +ad2s1200 +ad2s1210 +ad2s90 +ad5064 +ad525x_dpot +ad525x_dpot-i2c +ad525x_dpot-spi +ad5360 +ad5380 +ad5398 +ad5421 +ad5446 +ad5449 +ad5504 +ad5624r_spi +ad5686 +ad5755 +ad5764 +ad5791 +ad5930 +ad5933 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7152 +ad7192 +ad7266 +ad7280a +ad7291 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +ad7476 +ad7606 +ad7746 +ad7780 +ad7791 +ad7793 +ad7816 +ad7877 +ad7879 +ad7879-i2c +ad7879-spi +ad7887 +ad7923 +ad799x +ad8366 +ad9523 +ad9832 +ad9834 +ad9850 +ad9852 +ad9910 +ad9951 +adcxx +addi_apci_035 +addi_apci_1032 +addi_apci_1500 +addi_apci_1516 +addi_apci_1564 +addi_apci_16xx +addi_apci_2032 +addi_apci_2200 +addi_apci_3120 +addi_apci_3501 +addi_apci_3xxx +addi_watchdog +ade7753 +ade7754 +ade7758 +ade7759 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adfs +adi +adis16060 +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16204 +adis16209 +adis16220 +adis16240 +adis16260 +adis16400 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adl_pci9118 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1275 +adm8211 +adm9240 +adp5520_bl +adp5520-keys +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +adq12b +ads1015 +ads7828 +ads7846 +ads7871 +ad_sigma_delta +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adv7170 +adv7175 +adv7180 +advansys +advantechwdt +adv_pci1710 +adv_pci1723 +adv_pci1724 +adv_pci_dio +adxl34x +adxl34x-i2c +adxl34x-spi +adxrs450 +aes-i586 +aesni-intel +af_802154 +af9013 +af9033 +af_alg +affs +af_key +af_packet_diag +af-rxrpc +ah4 +ah6 +aha152x +aha152x_cs +aha1542 +aha1740 +ahci +ahci_platform +aic79xx +aic7xxx +aic94xx +aio_aio12_8 +aio_iiro_16 +aiptek +aircable +airo +airo_cs +ak8975 +algif_hash +algif_skcipher +ali-agp +ali-ircc +alim1535_wdt +alim7101_wdt +alphatrack +altera-ci +altera_jtaguart +altera_ps2 +altera-stapl +altera_uart +alx +ambassador +amc6821 +amd5536udc +amd76x_edac +amd76xrom +amd8111e +amd_freq_sensitivity +amd-rng +amilo-rfkill +amplc_dio200 +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pc263 +amplc_pci224 +amplc_pci230 +amplc_pci263 +ams369fg06 +analog +anatop-regulator +ansi_cprng +anubis +aoe +apanel +apds9300 +apds9802als +apds990x +apm +apple_bl +appledisplay +apple-gmux +applesmc +appletalk +appletouch +applicom +ar5523 +ar7part +arc4 +arcfb +arcmsr +arcnet +arc_ps2 +arc-rawmode +arc-rimi +arc_uart +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +arptable_filter +arp_tables +arpt_mangle +as3711_bl +as3711-regulator +as5011 +asb100 +asc7621 +asix +ast +asus_atk0110 +asus-laptop +asus-nb-wmi +asus-wmi +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at86rf230 +at91_ether +atbm8830 +aten +ath +ath10k_core +ath10k_pci +ath3k +ath5k +ath6kl_core +ath6kl_sdio +ath6kl_usb +ath9k +ath9k_common +ath9k_htc +ath9k_hw +ati-agp +ati_remote +ati_remote2 +atl1 +atl1c +atl1e +atl2 +atlas_btns +atm +atmel +atmel_cs +atmel_mxt_ts +atmel_pci +atmel_pwm +atmel-pwm-bl +atmel-ssc +atmtcp +atp +atp870u +atxp1 +aty128fb +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo_k1900fb +auo_k1901fb +auo_k190x +auo-pixcir-ts +authenc +authencesn +auth_rpcgss +autofs4 +avma1_cs +avm_cs +avmfritz +ax25 +ax88179_178a +axnet_cs +b1 +b1dma +b1isa +b1pci +b1pcmcia +b2c2-flexcop +b2c2-flexcop-pci +b2c2-flexcop-usb +b43 +b43legacy +b44 +bas_gigaset +batman-adv +baycom_epp +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm203x +bcm3510 +bcm5974 +bcma +bcma-hcd +bcm_wimax +bd6107 +be2iscsi +be2net +befs +belkin_sa +bfa +bfs +bfusb +bh1770glc +bh1780gli +binfmt_aout +binfmt_misc +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +bluecard_cs +bluetooth +bma150 +bma180 +bmp085-i2c +bmp085-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bonding +bpa10x +bpck +bpck6 +bpctl_mod +bpqether +bq2415x_charger +bq24190_charger +bq24735-charger +bq27x00_battery +br2684 +brcmfmac +brcmsmac +brcmutil +bridge +broadsheetfb +bsd_comp +bt3c_cs +bt819 +bt856 +bt866 +bt878 +btcoexist +btcx-risc +btmrvl +btmrvl_sdio +btmtk_usb +btrfs +btsdio +bttv +btuart_cs +btusb +btwilink +bu21013_ts +budget +budget-av +budget-ci +budget-core +budget-patch +BusLogic +bw-qcam +bypass +c101 +c2port-duramar2150 +c4 +c67x00 +c6xdigio +cachefiles +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camellia_generic +can +can-bcm +can-dev +can-gw +can-raw +capi +capidrv +capmode +carl9170 +carminefb +cassini +cast5_generic +cast6_generic +cast_common +catc +cb710 +cb710-mmc +cb_das16_cs +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +cb_pcimdda +cc770 +cc770_isa +cc770_platform +c_can +c_can_pci +c_can_platform +cciss +ccm +cdc-acm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc-phonet +cdc_subset +cdc-wdm +cedusb +ceph +cfag12864b +cfag12864bfb +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +chipreg +chnl_net +chromeos_laptop +cifs +ci_hdrc +ci_hdrc_msm +ci_hdrc_pci +cirrus +cirrusfb +ck804xrom +classmate-laptop +clearpad_tm1217 +clip +clk-max77686 +clk-s2mps11 +clk-si5351 +clk-twl6040 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_fw +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm36651 +cm4000_cs +cm4040_cs +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cmtp +cnic +cobra +coda +com20020 +com20020_cs +com20020-isa +com20020-pci +com90io +com90xx +comedi +comedi_bond +comedi_fc +comedi_parport +comedi_test +comm +compal-laptop +configfs +contec_pci_dio +cops +cordic +core +coretemp +cosa +cp210x +cpcihp_generic +cpcihp_zt5550 +cpia2 +cpqphp +cpu5wdt +cpuid +cpu-notifier-error-inject +c-qcam +cramfs +cr_bllcd +crc32 +crc32-pclmul +crc7 +crc8 +crc-ccitt +crc-itu-t +cros_ec +cros_ec_i2c +cros_ec_keyb +cros_ec_spi +crvml +cryptd +cryptoloop +crypto_null +crypto_user +crystalhd +cs5345 +cs53l32a +cs5535-mfd +cs553x_nand +cs89x0 +csiostor +ct82c710 +ctr +cts +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx8800 +cx8802 +cx88-alsa +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx88xx +cxacru +cxd2099 +cxd2820r +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxt1e1 +cy8ctmg110_ts +cyapa +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +cyttsp_core +cyttsp_i2c +cyttsp_i2c_common +cyttsp_spi +da9030_battery +da9034-ts +da903x +da903x_bl +da9052-battery +da9052_bl +da9052-hwmon +da9052_onkey +da9052-regulator +da9052_tsi +da9052_wdt +da9055-hwmon +da9055_onkey +da9055-regulator +da9055_wdt +da9063-regulator +da9210-regulator +DAC960 +daqboard2000 +das08 +das08_cs +das08_isa +das08_pci +das16 +das16m1 +das1800 +das6402 +das800 +db9 +dc395x +dca +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +dccp_probe +dcdbas +ddbridge +de2104x +de4x5 +decnet +deflate +defxx +dell-laptop +dell-led +dell_rbu +dell-wmi +dell-wmi-aio +denali +denali_dt +denali_pci +des_generic +designware_i2s +dgap +dgnc +dgrp +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dibx000_common +digi_acceleport +diskonchip +divacapi +divadidd +diva_idi +diva_mnt +divas +dl2k +dlci +dlm +dm1105 +dm9601 +dm-bio-prison +dm-bufio +dm-cache +dm-cache-cleaner +dm-cache-mq +dm-crypt +dm-delay +dme1737 +dmfe +dm-flakey +dmi-sysfs +dm-log +dm-log-userspace +dmm32at +dm-mirror +dm-multipath +dm-persistent-data +dm-queue-length +dm-raid +dm-region-hash +dm-round-robin +dm-service-time +dm-snapshot +dm-switch +dm-thin-pool +dm-verity +dmx3191d +dm-zero +dnet +dn_rtmsg +docg3 +docg4 +donauboe +dpt_i2o +drbd +drm +drm_kms_helper +drm_usb +drxd +drxk +ds1621 +ds1682 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds620 +dsa_core +dsbr100 +dscc4 +dss1_divert +dst +dst_ca +dstr +dt2801 +dt2811 +dt2814 +dt2815 +dt2817 +dt282x +dt3000 +dt3155v4l +dt9812 +dtc +dtl1_cs +dtlk +dummy +dummy-irq +dvb-as102 +dvb-bt8xx +dvb-core +dvb-pll +dvb-ttpci +dvb-ttusb-budget +dvb-usb +dvb-usb-a800 +dvb-usb-af9005 +dvb-usb-af9005-remote +dvb-usb-af9015 +dvb-usb-af9035 +dvb-usb-anysee +dvb-usb-au6610 +dvb-usb-az6007 +dvb-usb-az6027 +dvb-usb-ce6230 +dvb-usb-cinergyT2 +dvb-usb-cxusb +dvb-usb-dib0700 +dvb-usb-dibusb-common +dvb-usb-dibusb-mb +dvb-usb-dibusb-mc +dvb-usb-digitv +dvb-usb-dtt200u +dvb-usb-dtv5100 +dvb-usb-dw2102 +dvb-usb-ec168 +dvb-usb-friio +dvb-usb-gl861 +dvb-usb-gp8psk +dvb-usb-it913x +dvb-usb-lmedm04 +dvb-usb-m920x +dvb-usb-mxl111sf +dvb-usb-nova-t-usb2 +dvb-usb-opera +dvb-usb-pctv452e +dvb-usb-rtl28xxu +dvb-usb-technisat-usb2 +dvb-usb-ttusb2 +dvb-usb-umt-010 +dvb_usb_v2 +dvb-usb-vp702x +dvb-usb-vp7045 +dwc2 +dwc2_pci +dwc2_platform +dwc3 +dwc3-pci +dw_dmac +dw_dmac_core +dw_dmac_pci +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +e4000 +e752x_edac +e7xxx_edac +earth-pt1 +eata +ebt_802_3 +ebtable_broute +ebtable_filter +ebtable_nat +ebtables +ebt_among +ebt_arp +ebt_arpreply +ebt_dnat +ebt_ip +ebt_ip6 +ebt_limit +ebt_log +ebt_mark +ebt_mark_m +ebt_nflog +ebt_pkttype +ebt_redirect +ebt_snat +ebt_stp +ebt_vlan +ec100 +echo +ec_sys +edac_core +edac_mce_amd +edt-ft5x06 +eeepc-laptop +eeepc-wmi +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efficeon-agp +efi-pstore +efs +ehset +einj +elo +elsa_cs +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +emc1403 +emc2103 +emc6w201 +em_canid +em_cmp +emi26 +emi62 +em_ipset +em_meta +em_nbyte +empeg +ems_pci +ems_pcmcia +ems_usb +em_text +emu10k1-gp +em_u32 +enc28j60 +enclosure +ene_ir +eni +enic +epat +epia +epic100 +eql +esas2r +esb2rom +esd_usb2 +esi-sir +esp4 +esp6 +et131x +ethoc +eurotechwdt +evbug +exofs +extcon-adc-jack +extcon-arizona +extcon-gpio +extcon-max77693 +extcon-max8997 +extcon-palmas +ezusb +f2fs +f71805f +f71808e_wdt +f71882fg +f75375s +f81232 +fakelb +fam15h_power +fan53555 +farsync +faulty +fb_ddc +fb_sys_fops +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_cs +fealnx +ff-memless +fid +fintek-cir +firedtv +firestream +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fit2 +fit3 +fixed +fl512 +fld +floppy +fm801-gp +fmc +fmc-chardev +fmc-fakedev +fmc-trivial +fmc-write-eeprom +fm_drv +fmvj18x_cs +fnic +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +freevxfs +friq +frpw +fsa9480 +fscache +fschmd +ft1000 +ft1000_pcmcia +ftdi-elan +ftdi_sio +ftl +fujitsu-laptop +fujitsu-tablet +fujitsu_ts +fusbh200-hcd +g450_pll +g760a +g762 +g_acm_ms +gadgetfs +gamecon +gameport +garmin_gps +garp +g_audio +g_cdc +gcm +g_dbgp +gdmtty +gdmulte +gdmwm +gdth +generic +generic-adc-battery +generic_bl +gen_probe +geode-aes +geode-rng +g_ether +gf128mul +gf2k +g_ffs +gfs2 +ghash-generic +g_hid +gigaset +girbil-sir +gl518sm +gl520sm +gl620a +gluebi +glue_helper +gma500_gfx +g_mass_storage +g_midi +g_ncm +g_NCR5380 +g_NCR5380_mmio +g_nokia +go7007 +go7007-loader +go7007-usb +goku_udc +goldfishfb +gp2ap002a00f +gp2ap020a00f +gpio +gpio-74x164 +gpio-addr-flash +gpio-adp5520 +gpio-adp5588 +gpio-amd8111 +gpio-arizona +gpio_backlight +gpio-charger +gpio-cs5535 +gpio-da9052 +gpio-da9055 +gpio-f7188x +gpio-fan +gpio-generic +gpio-ich +gpio-ir-recv +gpio-it8761e +gpio-janz-ttl +gpio-kempld +gpio_keys +gpio_keys_polled +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-mc33880 +gpio-mcp23s08 +gpio-ml-ioh +gpio_mouse +gpio-pca953x +gpio-pcf857x +gpio-pch +gpio-rdc321x +gpio-regulator +gpio-sch +gpio_tilt_polled +gpio-tps65912 +gpio-ts5500 +gpio-twl6040 +gpio-ucb1400 +gpio-viperboard +gpio-vx855 +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +g_printer +gre +grip +grip_mp +gsc_hpdi +g_serial +gspca_benq +gspca_conex +gspca_cpia1 +gspca_etoms +gspca_finepix +gspca_gl860 +gspca_jeilinj +gspca_jl2005bcd +gspca_kinect +gspca_konica +gspca_m5602 +gspca_main +gspca_mars +gspca_mr97310a +gspca_nw80x +gspca_ov519 +gspca_ov534 +gspca_ov534_9 +gspca_pac207 +gspca_pac7302 +gspca_pac7311 +gspca_se401 +gspca_sn9c2028 +gspca_sn9c20x +gspca_sonixb +gspca_sonixj +gspca_spca1528 +gspca_spca500 +gspca_spca501 +gspca_spca505 +gspca_spca506 +gspca_spca508 +gspca_spca561 +gspca_sq905 +gspca_sq905c +gspca_sq930x +gspca_stk014 +gspca_stk1135 +gspca_stv0680 +gspca_stv06xx +gspca_sunplus +gspca_t613 +gspca_topro +gspca_tv8532 +gspca_vc032x +gspca_vicam +gspca_xirlink_cit +gspca_zc3xx +gtco +guillemot +gunze +g_webcam +gx1fb +gxfb +gx-suspmod +g_zero +hamachi +hampshire +hangcheck-timer +hanwang +hci +hci_uart +hci_vhci +hdaps +hdlc +hdlc_cisco +hdlcdrv +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdpvr +he +hecubafb +hexium_gemini +hexium_orion +hfc4s8s_l1 +hfcmulti +hfcpci +hfcsusb +hfc_usb +hfs +hfsplus +hgafb +hid +hid-a4tech +hid-apple +hid-appleir +hid-aureal +hid-axff +hid-belkin +hid-cherry +hid-chicony +hid-cypress +hid-dr +hid-elecom +hid-elo +hid-emsff +hid-ezkey +hid-gaff +hid-generic +hid-gyration +hid-holtekff +hid-holtek-kbd +hid-holtek-mouse +hid-huion +hid-hyperv +hid-icade +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-lenovo-tpkbd +hid-logitech +hid-logitech-dj +hid-magicmouse +hid-microsoft +hid-monterey +hid-multitouch +hid-ntrig +hid-ortek +hidp +hid-petalynx +hid-picolcd +hid-pl +hid-primax +hid-prodikeys +hid-roccat +hid-roccat-arvo +hid-roccat-common +hid-roccat-isku +hid-roccat-kone +hid-roccat-koneplus +hid-roccat-konepure +hid-roccat-kovaplus +hid-roccat-lua +hid-roccat-pyra +hid-roccat-ryos +hid-roccat-savu +hid-saitek +hid-samsung +hid-sensor-accel-3d +hid-sensor-als +hid-sensor-gyro-3d +hid-sensor-hub +hid-sensor-iio-common +hid-sensor-magn-3d +hid-sensor-trigger +hid-sjoy +hid-sony +hid-speedlink +hid-steelseries +hid-sunplus +hid-thingm +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-uclogic +hid-wacom +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hih6130 +hisax +hisax_fcpcipnp +hisax_isac +hisax_st5481 +hmc5843 +hmc6352 +hopper +horizon +hostap +hostap_cs +hostap_pci +hostap_plx +hostess_sv11 +hp100 +hp_accel +hpfs +hpilo +hpsa +hptiop +hpwdt +hp-wireless +hp-wmi +hsi +hsi_char +hso +hsr +htc-pasic3 +htcpen +htu21 +huawei_cdc_ncm +hv_balloon +hv_netvsc +hv_storvsc +hv_utils +hv_vmbus +hwa-hc +hwa-rc +hwmon-vid +hwpoison-inject +hx8357 +hyperv_fb +hyperv-keyboard +hysdn +i1480-dfu-usb +i1480-est +i2400m +i2400m-usb +i2c-algo-bit +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd756-s4882 +i2c-amd8111 +i2c-cbus-gpio +i2c-designware-core +i2c-designware-pci +i2c-designware-platform +i2c-dev +i2c-diolan-u2c +i2c-eg20t +i2c-gpio +i2c-hid +i2c-i801 +i2c-isch +i2c-ismt +i2c-kempld +i2c-matroxfb +i2c-mux +i2c-mux-gpio +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-mux-pinctrl +i2c-nforce2 +i2c-nforce2-s4985 +i2c-ocores +i2c-parport +i2c-parport-light +i2c-pca-isa +i2c-pca-platform +i2c-piix4 +i2c-scmi +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-tiny-usb +i2c-via +i2c-viapro +i2c-viperboard +i2c-xiic +i2o_block +i2o_bus +i2o_config +i2o_core +i2o_proc +i2o_scsi +i3000_edac +i3200_edac +i40e +i5000_edac +i5100_edac +i5400_edac +i5k_amb +i6300esb +i7300_edac +i740fb +i7core_edac +i810 +i810fb +i82092 +i82365 +i82860_edac +i82875p_edac +i82975x_edac +i8k +i915 +i915_bdw +ib700wdt +ib_addr +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mad +ibmaem +ibmasm +ibmasr +ibmpex +ibmphp +ibm_rtl +ib_mthca +ib_sa +ib_srp +ib_srpt +ib_ucm +ib_umad +ib_uverbs +ichxrom +icn +icp_multi +ics932s401 +ideapad-laptop +ideapad_slidebar +idmouse +idt77252 +idtcps +idt_gen2 +ie6xx_wdt +ieee802154 +ifb +iforce +igb +igbvf +iguanair +iio_dummy +iio_hwmon +iio-trig-interrupt +iio-trig-periodic-rtc +iio-trig-sysfs +ii_pci20kc +ili210x +ili922x +ili9320 +imm +imon +ims-pcu +imx074 +in2000 +ina209 +ina2xx +industrialio +industrialio-triggered-buffer +inet_diag +inexio +inftl +initio +input-polldev +int51x1 +intelfb +intel_ips +intel_menlow +intel_mid_battery +intel_mid_dma +intel_mid_powerbtn +intel_mid_thermal +intel-mid-touch +intel_oaktrail +intel_powerclamp +intel_rapl +intel-rng +intel-rst +intel_scu_ipcutil +intel-smartconnect +intel_vr_nor +interact +interval_tree_test +inv-mpu6050 +ioatdma +ioc4 +io_edgeport +io_ti +iowarrior +ip6_gre +ip6table_filter +ip6table_mangle +ip6table_nat +ip6table_raw +ip6_tables +ip6table_security +ip6t_ah +ip6t_eui64 +ip6t_frag +ip6t_hbh +ip6t_ipv6header +ip6t_MASQUERADE +ip6t_mh +ip6t_NPT +ip6t_REJECT +ip6t_rpfilter +ip6t_rt +ip6t_SYNPROXY +ip6_tunnel +ip6_vti +ipack +ipaq +ipcomp +ipcomp6 +ipddp +ipg +ip_gre +iphase +ipheth +ipip +ipmi_devintf +ipmi_poweroff +ipmi_si +ipmi_watchdog +ipoctal +ipr +ips +ip_set +ip_set_bitmap_ip +ip_set_bitmap_ipmac +ip_set_bitmap_port +ip_set_hash_ip +ip_set_hash_ipport +ip_set_hash_ipportip +ip_set_hash_ipportnet +ip_set_hash_net +ip_set_hash_netiface +ip_set_hash_netnet +ip_set_hash_netport +ip_set_hash_netportnet +ip_set_list_set +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +ip_tables +iptable_security +ipt_ah +ipt_CLUSTERIP +ipt_ECN +ipt_MASQUERADE +ipt_REJECT +ipt_rpfilter +ipt_SYNPROXY +ipt_ULOG +ip_tunnel +ip_vs +ip_vs_dh +ip_vs_ftp +ip_vs_lblc +ip_vs_lblcr +ip_vs_lc +ip_vs_nq +ip_vs_pe_sip +ip_vs_rr +ip_vs_sed +ip_vs_sh +ip_vs_wlc +ip_vs_wrr +ip_vti +ipw +ipw2100 +ipw2200 +ipwireless +ipx +ircomm +ircomm-tty +irda +irda-usb +iris +ir-jvc-decoder +ir-kbd-i2c +irlan +ir-lirc-codec +ir-mce_kbd-decoder +ir-nec-decoder +irnet +ir-rc5-decoder +ir-rc5-sz-decoder +ir-rc6-decoder +ir-sanyo-decoder +ir-sony-decoder +irtty-sir +ir-usb +isci +iscsi_boot_sysfs +iscsi_ibft +iscsi_target_mod +iscsi_tcp +isdn +isdn_bsdcomp +isdnhdlc +isicom +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isofs +isp116x-hcd +isp1362-hcd +isp1704_charger +isp1760 +it87 +it8712f_wdt +it87_wdt +it913x-fe +iTCO_vendor_support +iTCO_wdt +itd1000 +ite-cir +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_c2 +iw_cm +iw_cxgb3 +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +iw_nes +ix2505v +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsm +k10temp +k8temp +kafs +kalmia +kaweth +kb3886_bl +kbic +kbtab +kcomedilib +ke_counter +kempld-core +kempld_wdt +kernelcapi +keucr +keyspan +keyspan_pda +keyspan_remote +kfifo_buf +khazad +kingsun-sir +kl5kusb105 +ko2iblnd +kobil_sct +ks0108 +ks0127 +ks8842 +ks8851 +ks8851_mll +ks959-sir +ksdazzle-sir +ksocklnd +ksz884x +ktti +kvaser_pci +kvaser_usb +kvm +kvm-amd +kvm-intel +kxsd9 +kxtj9 +kyrofb +l1oip +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +l2tp_ppp +l440gx +l4f00242t03 +l64781 +lanai +lance +lapb +lapbether +latch-addr-flash +lattice-ecp3-config +lcd +ld9040 +ldusb +lec +leds-88pm860x +leds-adp5520 +leds-atmel-pwm +leds-bd2802 +leds-blinkm +leds-clevo-mail +leds-da903x +leds-da9052 +leds-dac124s085 +leds-gpio +leds-lm3530 +leds-lm3533 +leds-lm355x +leds-lm3642 +leds-lp3944 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lt3593 +leds-max8997 +leds-mc13783 +leds-net48xx +leds-ot200 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pca9685 +leds-pwm +leds-regulator +leds-ss4200 +leds-tca6507 +leds-wm831x-status +leds-wm8350 +leds-wrap +ledtrig-backlight +ledtrig-camera +ledtrig-default-on +ledtrig-gpio +ledtrig-heartbeat +ledtrig-oneshot +ledtrig-timer +ledtrig-transient +legousbtower +lg2160 +lgdt3305 +lgdt330x +lgs8gxx +lg-vl600 +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libahci +libceph +libcfs +libcomposite +libcrc32c +libcxgbi +libertas +libertas_cs +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libore +libosd +libsas +libsrp +lightning +line6usb +lineage-pem +linear +lirc_bt829 +lirc_dev +lirc_igorplugusb +lirc_imon +lirc_parallel +lirc_sasem +lirc_serial +lirc_sir +lirc_zilog +lis3l02dq +lis3lv02d +lis3lv02d_i2c +litelink-sir +lkkbd +llc +llc2 +llog_test +lm25066 +lm3533-als +lm3533_bl +lm3533-core +lm3533-ctrlbank +lm3630a_bl +lm3639_bl +lm63 +lm70 +lm73 +lm75 +lm77 +lm78 +lm80 +lm83 +lm8323 +lm8333 +lm85 +lm87 +lm90 +lm92 +lm93 +lm95234 +lm95241 +lm95245 +lmc +lms283gf05 +lms501kf03 +lmv +lnbp21 +lnbp22 +lnet +lnet_selftest +lockd +logibm +longhaul +longrun +lov +lp +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp8755 +lp8788_bl +lp8788-charger +lpc_ich +lpc_sch +lpddr_cmds +lpfc +lru_cache +lrw +ltc2978 +ltc4151 +ltc4215 +ltc4245 +ltc4261 +ltpc +ltv350qv +lustre +lv5207lp +lvfs +lxfb +lz4 +lz4_compress +lz4hc +lz4hc_compress +m25p80 +m2m-deinterlace +m52790 +m88rs2000 +ma600-sir +mac80211 +mac80211_hwsim +mac802154 +macb +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mac-gaelic +mac-greek +mac_hid +machzwd +mac-iceland +mac-inuit +macmodes +mac-roman +mac-romanian +mac-turkish +macvlan +macvtap +mag3110 +magellan +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +matrix-keymap +matrix_keypad +matroxfb_accel +matroxfb_base +matroxfb_crtc2 +matroxfb_DAC1064 +matroxfb_g450 +matroxfb_maven +matroxfb_misc +matroxfb_Ti3026 +matrox_w1 +max1111 +max11801_ts +max1363 +max1586 +max16064 +max16065 +max1619 +max1668 +max17040_battery +max17042_battery +max197 +max2165 +max3100 +max34440 +max517 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77686 +max77693 +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925_bl +max8925_onkey +max8925_power +max8925-regulator +max8952 +max8973-regulator +max8997 +max8997_charger +max8998 +max8998_charger +mb862xxfb +mb86a16 +mb86a20s +mc13783-adc +mc13783-pwrbutton +mc13783-regulator +mc13783_ts +mc13892-regulator +mc13xxx-core +mc13xxx-i2c +mc13xxx-regulator-core +mc13xxx-spi +mc44s803 +mce_amd_inj +mce-inject +mceusb +mcp2120-sir +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp4725 +mcs5000_ts +mcs7780 +mcs7830 +mcs_touchkey +mct_u232 +md4 +mdacon +mdc +mdc800 +mdio +me4000 +me_daq +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mei +mei-me +mei_phy +mem2mem_testdev +memstick +mena21_wdt +metronomefb +metro-usb +meye +mfd +mga +mgc +michael_mic +microread +microread_i2c +microread_mei +microtek +mii +minix +mip6 +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +mite +mixcomwd +mk712 +mkiss +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mma8450 +mmc_block +mms114 +mos7720 +mos7840 +moxa +mpc624 +mpoa +mpr121_touchkey +mpt2sas +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +mrst_max3110 +ms_block +msdos +msi-laptop +msi-wmi +msp3400 +mspro_block +msr +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt29f_spinand +mt312 +mt352 +mt9m001 +mt9m111 +mt9t031 +mt9t112 +mt9v011 +mt9v022 +mtd +mtd_blkdevs +mtdblock +mtdblock_ro +mtd_dataflash +mtdoops +mtdram +mtdswap +mtip32xx +mtouch +multipath +multiq3 +musb_hdrc +mv88e6060 +mv88e6xxx_drv +mvmdio +mvsas +mv_u3d_core +mv_udc +mvumi +mwave +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxl111sf-demod +mxl111sf-tuner +mxl5005s +mxl5007t +mxm-wmi +mxser +myri10ge +n2 +n411 +nand +nand_bch +nand_ecc +nand_ids +nandsim +natsemi +nau7802 +navman +nbd +nci +ncpfs +NCR53c406a +nct6775 +ne +ne2k-pci +neofb +net1080 +net2272 +net2280 +netconsole +netjet +netlink_diag +netprio_cgroup +netrom +netsc520 +nettel +netxen_nic +newtonkbd +nfc +nfc_digital +nf_conntrack +nf_conntrack_amanda +nf_conntrack_broadcast +nf_conntrack_ftp +nf_conntrack_h323 +nf_conntrack_ipv4 +nf_conntrack_ipv6 +nf_conntrack_irc +nf_conntrack_netbios_ns +nf_conntrack_netlink +nf_conntrack_pptp +nf_conntrack_proto_dccp +nf_conntrack_proto_gre +nf_conntrack_proto_sctp +nf_conntrack_proto_udplite +nf_conntrack_sane +nf_conntrack_sip +nf_conntrack_snmp +nf_conntrack_tftp +nfcsim +nfcwilink +nf_defrag_ipv4 +nf_defrag_ipv6 +nf_nat +nf_nat_amanda +nf_nat_ftp +nf_nat_h323 +nf_nat_ipv4 +nf_nat_ipv6 +nf_nat_irc +nf_nat_pptp +nf_nat_proto_dccp +nf_nat_proto_gre +nf_nat_proto_sctp +nf_nat_proto_udplite +nf_nat_sip +nf_nat_snmp_basic +nf_nat_tftp +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +nfnetlink_log +nfnetlink_queue +nfs +nfs_acl +nfsd +nfs_layout_nfsv41_files +nfsv2 +nfsv3 +nfsv4 +nf_synproxy_core +nf_tables +nf_tables_arp +nf_tables_bridge +nf_tables_ipv4 +nf_tables_ipv6 +nft_chain_nat_ipv4 +nft_chain_nat_ipv6 +nft_chain_route_ipv4 +nft_chain_route_ipv6 +nft_compat +nft_counter +nft_ct +nft_exthdr +nft_hash +nftl +nft_limit +nft_log +nft_meta +nft_nat +nft_rbtree +nft_reject_ipv4 +ngene +n_hdlc +ni65 +ni_6527 +ni_65xx +ni_660x +ni_670x +ni_at_a2150 +ni_at_ao +ni_atmio +ni_atmio16d +nicstar +ni_daq_700 +ni_daq_dio24 +ni_labpc +ni_labpc_cs +ni_labpc_isadma +ni_labpc_pci +nilfs2 +ni_mio_cs +ni_pcidio +ni_pcimio +ni_tio +ni_tiocmd +niu +nlmon +nls_ascii +nls_cp1250 +nls_cp1251 +nls_cp1255 +nls_cp737 +nls_cp775 +nls_cp850 +nls_cp852 +nls_cp855 +nls_cp857 +nls_cp860 +nls_cp861 +nls_cp862 +nls_cp863 +nls_cp864 +nls_cp865 +nls_cp866 +nls_cp869 +nls_cp874 +nls_cp932 +nls_cp936 +nls_cp949 +nls_cp950 +nls_euc-jp +nls_iso8859-1 +nls_iso8859-13 +nls_iso8859-14 +nls_iso8859-15 +nls_iso8859-2 +nls_iso8859-3 +nls_iso8859-4 +nls_iso8859-5 +nls_iso8859-6 +nls_iso8859-7 +nls_iso8859-9 +nls_koi8-r +nls_koi8-ru +nls_koi8-u +nls_utf8 +nmclan_cs +nosy +notifier-error-inject +nouveau +nozomi +n_r3964 +ns558 +ns83820 +nsc_gpio +nsc-ircc +nsp32 +nsp_cs +ntb +ntb_netdev +ntc_thermistor +ntfs +n_tracerouter +n_tracesink +null_blk +nuvoton-cir +nvidiafb +nvme +nvram +nv_tco +nxt200x +nxt6000 +obdclass +obdecho +objlayoutdriver +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stackglue +ocfs2_stack_o2cb +ocfs2_stack_user +ocrdma +old_belkin-sir +omfs +omninet +on20 +on26 +onenand +opencores-kbd +openvswitch +oprofile +opticon +option +or51132 +or51211 +orinoco +orinoco_cs +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +osc +osd +osdblk +osst +oti6858 +output +ov2640 +ov5642 +ov6650 +ov7640 +ov7670 +ov772x +ov9640 +ov9740 +overlayfs +oxu210hp-hcd +ozwpan +p4-clockmod +p54common +p54pci +p54spi +p54usb +p8022 +p8023 +padlock-aes +padlock-sha +palmas-regulator +panasonic-laptop +panel +paride +parkbd +parport +parport_ax88796 +parport_cs +parport_pc +parport_serial +pas16 +pata_acpi +pata_ali +pata_amd +pata_arasan_cf +pata_artop +pata_atiixp +pata_atp867x +pata_cmd640 +pata_cmd64x +pata_cs5520 +pata_cs5530 +pata_cs5535 +pata_cs5536 +pata_cypress +pata_efar +pata_hpt366 +pata_hpt37x +pata_hpt3x2n +pata_hpt3x3 +pata_isapnp +pata_it8213 +pata_it821x +pata_jmicron +pata_legacy +pata_marvell +pata_mpiix +pata_netcell +pata_ninja32 +pata_ns87410 +pata_ns87415 +pata_oldpiix +pata_opti +pata_optidma +pata_pcmcia +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sc1200 +pata_sch +pata_serverworks +pata_sil680 +pata_sl82c105 +pata_triflex +pata_via +pc110pad +pc300too +pc87360 +pc8736x_gpio +pc87413_wdt +pc87427 +pcbc +pcbit +pcd +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_can +pch_dma +pch_gbe +pch_phub +pch_uart +pch_udc +pci +pci200syn +pcips2 +pci-stub +pcl711 +pcl724 +pcl726 +pcl730 +pcl812 +pcl816 +pcl818 +pcm3724 +pcmad +pcmcia +pcmcia_core +pcmciamtd +pcmcia_rsrc +pcmda12 +pcmmio +pcmuio +pcnet32 +pcnet_cs +pcrypt +pcspkr +pcwd +pcwd_pci +pcwd_usb +pd +pd6729 +pda_power +pdc_adma +peak_pci +peak_pcmcia +peak_usb +pegasus +penmount +percpu_test +pf +pfuze100-regulator +pg +phantom +phison +phonet +phram +phy-core +phy-generic +phy-gpio-vbus-usb +phy-isp1301 +phy-rcar-usb +phy-samsung-usb +phy-samsung-usb2 +phy-samsung-usb3 +physmap +pixcir_i2c_ts +pktcdvd +pktgen +pl2303 +platform_lcd +plat_nand +plat-ram +plip +plusb +pluto2 +plx_pci +pm2fb +pm3fb +pm80xx +pmbus +pmbus_core +pmc551 +pmcraid +pm-notifier-error-inject +pms +pn533 +pn544 +pn544_i2c +pn544_mei +pn_pep +poc +port100 +poseidon +powermate +powernow-k6 +powernow-k7 +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +pppoatm +pppoe +pppox +ppp_synctty +pps_core +pps-gpio +pps-ldisc +pps_parport +pptp +prism2_usb +ps2mult +psmouse +psnap +pt +pti +ptlrpc +ptp +ptp_pch +pvpanic +pvrusb2 +pwc +pwm_bl +pxa27x_udc +qcaux +qcserial +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qlogic_cs +qlogicfas +qlogicfas408 +qmi_wwan +qnx4 +qnx6 +qt1010 +qt1070 +qt2160 +quatech2 +quatech_daqp_cs +quickstart +quota_tree +quota_v1 +quota_v2 +qxl +r128 +r592 +r6040 +r8152 +r815x +r8169 +r8187se +r8188eu +r8192e_pci +r8192u_usb +r820t +r82600_edac +r852 +r8712u +r8a66597-hcd +r8a66597-udc +radeon +radeonfb +radio-aimslab +radio-aztech +radio-cadet +radio-gemtek +radio-i2c-si470x +radio-isa +radio-keene +radio-ma901 +radio-maxiradio +radio-miropcm20 +radio-mr800 +radio-rtrack2 +radio-sf16fmi +radio-sf16fmr2 +radio-shark +radio-si4713 +radio-si476x +radio-tea5764 +radio-terratec +radio-timb +radio-trust +radio-typhoon +radio-usb-si470x +radio-wl1273 +radio-zoltrix +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid6test +raid_class +ramoops +raw +ray_cs +rbd +rbtree_test +rc5t583-regulator +rc-adstech-dvb-t-pci +rc-alink-dtu-m +rc-anysee +rc-apac-viewcomp +rcar_vin +rc-asus-pc39 +rc-asus-ps3-100 +rc-ati-tv-wonder-hd-600 +rc-ati-x10 +rc-avermedia +rc-avermedia-a16d +rc-avermedia-cardbus +rc-avermedia-dvbt +rc-avermedia-m135a +rc-avermedia-m733a-rm-k6 +rc-avermedia-rm-ks +rc-avertv-303 +rc-azurewave-ad-tu700 +rc-behold +rc-behold-columbus +rc-budget-ci-old +rc-cinergy +rc-cinergy-1400 +rc-core +rc-delock-61959 +rc-dib0700-nec +rc-dib0700-rc5 +rc-digitalnow-tinytwin +rc-digittrade +rc-dm1105-nec +rc-dntv-live-dvb-t +rc-dntv-live-dvbt-pro +rc-em-terratec +rc-encore-enltv +rc-encore-enltv2 +rc-encore-enltv-fm53 +rc-evga-indtube +rc-eztv +rc-flydvb +rc-flyvideo +rc-fusionhdtv-mce +rc-gadmei-rm008z +rc-genius-tvgo-a11mce +rc-gotview7135 +rc-hauppauge +rc-imon-mce +rc-imon-pad +rc-iodata-bctv7e +rc-it913x-v1 +rc-it913x-v2 +rc-kaiomy +rc-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lirc +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +rc-msi-digivox-ii +rc-msi-digivox-iii +rc-msi-tvanywhere +rc-msi-tvanywhere-plus +rc-nebula +rc-nec-terratec-cinergy-xs +rc-norwood +rc-npgtech +rc-pctv-sedna +rc-pinnacle-color +rc-pinnacle-grey +rc-pinnacle-pctv-hd +rc-pixelview +rc-pixelview-002t +rc-pixelview-mk12 +rc-pixelview-new +rc-powercolor-real-angel +rc-proteus-2309 +rc-purpletv +rc-pv951 +rc-rc6-mce +rc-real-audio-220-32-keys +rc-reddo +rc-snapstream-firefly +rc-streamzap +rc-tbs-nec +rc-technisat-usb2 +rc-terratec-cinergy-xs +rc-terratec-slim +rc-terratec-slim-2 +rc-tevii-nec +rc-tivo +rc-total-media-in-hand +rc-total-media-in-hand-02 +rc-trekstor +rc-tt-1500 +rc-twinhan1027 +rc-videomate-m1f +rc-videomate-s350 +rc-videomate-tv-pvr +rc-winfast +rc-winfast-usbii-deluxe +rdc321x-southbridge +rdma_cm +rdma_ucm +rds +rds_rdma +rds_tcp +redboot +redrat3 +reed_solomon +reiserfs +remoteproc +renesas_usbhs +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd_ftl +rfkill-gpio +rfkill-regulator +rio500 +rionet +rio-scan +rivafb +rj54n1cb0c +rmd128 +rmd160 +rmd256 +rmd320 +rndis_host +rndis_wlan +rocket +romfs +rose +rotary_encoder +rp2 +rpcsec_gss_krb5 +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt61pci +rt73usb +rtc-88pm80x +rtc-88pm860x +rtc-ab3100 +rtc-bq32k +rtc-bq4802 +rtc-da9052 +rtc-da9055 +rtc-ds1286 +rtc-ds1305 +rtc-ds1307 +rtc-ds1374 +rtc-ds1390 +rtc-ds1511 +rtc-ds1553 +rtc-ds1672 +rtc-ds1742 +rtc-ds2404 +rtc-ds3232 +rtc-ds3234 +rtc-em3027 +rtc-fm3130 +rtc-hid-sensor-time +rtc-isl12022 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-moxart +rtc-mrst +rtc-msm6242 +rtc-palmas +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf8523 +rtc-pcf8563 +rtc-pcf8583 +rtc-r9701 +rtc-rc5t583 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3029c2 +rtc-rx4581 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtd520 +rti800 +rti802 +rtl2830 +rtl2832 +rtl8150 +rtl8180 +rtl8187 +rtl8188ee +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192se +rtl8723ae +rtl8723be +rtl8723-common +rtl8821ae +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtl_pci +rtl_usb +rtlwifi +rts5139 +rtsx_pci +rtsx_pci_ms +rtsx_pci_sdmmc +rxkad +s1d13xxxfb +s2250 +s2255drv +s2io +s3fb +s526 +s5h1409 +s5h1411 +s5h1420 +s5m8767 +s626 +s6e63m0 +s921 +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7146 +saa7146_vv +saa7164 +saa717x +saa7185 +saa7706h +safe_serial +salsa20_generic +salsa20-i586 +samsung-keypad +samsung-laptop +samsung-q10 +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_rcar +sata_sil +sata_sil24 +sata_sis +sata_svw +sata_sx4 +sata_uli +sata_via +sata_vsc +savage +savagefb +sb1000 +sbc60xxwdt +sbc7240_wdt +sbc8360 +sbc_epx_c3 +sbc_fitpc2_wdt +sbc_gxx +sbe-2t3e3 +sbni +sbp_target +sbs +sbs-battery +sbshc +sc +sc1200wdt +sc520cdp +sc520_wdt +sc92031 +sca3000 +scb2_flash +scc +sch311x_wdt +sch5627 +sch5636 +sch56xx-common +sch_atm +sch_cbq +sch_choke +sch_codel +sch_drr +sch_dsmark +sch_fq +sch_fq_codel +sch_gred +sch_hfsc +sch_htb +sch_ingress +sch_mqprio +sch_multiq +sch_netem +sch_plug +sch_prio +sch_qfq +sch_red +sch_sfb +sch_sfq +sch_tbf +sch_teql +scsi_debug +scsi_dh +scsi_dh_alua +scsi_dh_emc +scsi_dh_hp_sw +scsi_dh_rdac +scsi_tgt +scsi_transport_fc +scsi_transport_iscsi +scsi_transport_sas +scsi_transport_srp +sctp +sctp_probe +scx200 +scx200_acb +scx200_docflash +scx200_gpio +scx200_hrt +scx200_wdt +sdhci +sdhci-acpi +sdhci-pci +sdhci-pltfm +sdhci-pxav2 +sdhci-pxav3 +sdio_uart +sdla +sdricoh_cs +sdr-msi3101 +sealevel +sedlbauer_cs +seed +sep_driver +seqiv +ser_gigaset +serial2002 +serial_cs +serio_raw +sermouse +serpent_generic +serpent-sse2-i586 +serport +serqt_usb2 +ses +sfc +shark2 +sh_eth +sh_mobile_ceu_camera +sh_mobile_csi2 +shpchp +sht15 +sht21 +sh_veu +si21xx +si4713-i2c +si476x-core +sidewinder +sierra +sierra_net +sil164 +sim710 +sir-dev +sis +sis190 +sis5595 +sis900 +sis-agp +sisfb +sisusbvga +sit +sja1000 +sja1000_isa +sja1000_platform +skel +skfp +skge +sky2 +sl811_cs +sl811-hcd +slcan +slicoss +slip +slram +sm501 +sm501fb +sm7xxfb +smb347-charger +smc9194 +smc91c92_cs +sm_common +smc-ultra +sm_ftl +smm665 +smsc37b787_wdt +smsc47b397 +smsc47m1 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smsc-ircc2 +smscufx +smsdvb +smsmdtv +smssdio +smsusb +snd +snd-ac97-codec +snd-ad1816a +snd-ad1848 +snd-ad1889 +snd-adlib +snd-ak4113 +snd-ak4114 +snd-ak4117 +snd-ak4xxx-adda +snd-ali5451 +snd-aloop +snd-als100 +snd-als300 +snd-als4000 +snd-asihpi +snd-at73c213 +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-azt1605 +snd-azt2316 +snd-azt2320 +snd-azt3328 +snd-bt87x +snd-ca0106 +snd-cmi8328 +snd-cmi8330 +snd-cmipci +snd-compress +snd-cs4231 +snd-cs4236 +snd-cs4281 +snd-cs46xx +snd-cs5530 +snd-cs5535audio +snd-cs8427 +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-emu10k1 +snd-emu10k1-synth +snd-emu10k1x +snd-emu8000-synth +snd-emux-synth +snd-ens1370 +snd-ens1371 +snd-es1688 +snd-es1688-lib +snd-es18xx +snd-es1938 +snd-es1968 +snd-firewire-lib +snd-firewire-speakers +snd-fm801 +snd-gina20 +snd-gina24 +snd-gusclassic +snd-gusextreme +snd-gus-lib +snd-gusmax +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-intel +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1712 +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel8x0 +snd-intel8x0m +snd-interwave +snd-interwave-stb +snd-isight +snd-jazz16 +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-lx6464es +snd-maestro3 +snd-mia +snd-miro +snd-mixart +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-msnd-classic +snd-msnd-lib +snd-msnd-pinnacle +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3sa2 +snd-opl3-synth +snd-opl4-lib +snd-opl4-synth +snd-opti92x-ad1848 +snd-opti92x-cs4231 +snd-opti93x +snd-oxygen +snd-oxygen-lib +snd-page-alloc +snd-pcm +snd-pcsp +snd-pcxhr +snd-pdaudiocf +snd-portman2x4 +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-sb16 +snd-sb16-csp +snd-sb16-dsp +snd-sb8 +snd-sb8-dsp +snd-sbawe +snd-sb-common +snd-sc6000 +snd-scs1x +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-sis7019 +snd-soc-atmel-pcm +snd-soc-core +snd-soc-mfld-machine +snd-soc-si476x +snd-soc-simple-card +snd-soc-sn95031 +snd-soc-sst-platform +snd-sonicvibes +snd-sscape +snd-tea6330t +snd-timer +snd-trident +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usbmidi-lib +snd-usb-us122l +snd-usb-usx2y +snd-util-mem +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx222 +snd-vx-lib +snd-vxpocket +snd-wavefront +snd-wss-lib +snd-ymfpci +soc_camera +soc_camera_platform +soc_mediabus +soc_scale_crop +softdog +softing +softing_cs +solo6x10 +solos-pci +sony-btf-mpx +sony-laptop +sonypi +soundcore +sp5100_tco +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntpc +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_decpc +speakup_dectlk +speakup_dtlk +speakup_dummy +speakup_keypc +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +spectrum_cs +speedfax +speedtch +spi-altera +spi-bitbang +spi-butterfly +spidev +spi-dw +spi-dw-midpci +spi-dw-mmio +spi-gpio +spi_ks8995 +spi-lm70llp +spi-oc-tiny +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-sc18is602 +spi-tle62x0 +spi-topcliff-pch +spi-xcomm +squashfs +sr9700 +ssb +ssb-hcd +ssfdc +sst25l +sstfb +ssu100 +ssv_dnp +st +st1232 +st_accel +st_accel_i2c +st_accel_spi +starfire +stb0899 +stb6000 +stb6100 +st_drv +ste_modem_rproc +stex +st_gyro +st_gyro_i2c +st_gyro_spi +stinger +stir4200 +stk1160 +stkwebcam +st_magn +st_magn_i2c +st_magn_spi +stmmac +stmpe-keypad +stmpe-ts +stowaway +stp +st_pressure +st_pressure_i2c +st_pressure_spi +streamzap +st_sensors +st_sensors_i2c +st_sensors_spi +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv6110 +stv6110x +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sur40 +svcrdma +svgalib +sworks-agp +sx8 +sym53c416 +sym53c500_cs +sym53c8xx +symbolserial +synaptics_i2c +synaptics_i2c_rmi4 +synaptics_usb +synclink +synclink_cs +synclink_gt +synclinkmp +syscopyarea +sysfillrect +sysimgblt +sysv +t128 +t1isa +t1pci +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +tc1100-wmi +tc3589x-keypad +tca6416-keypad +tca8418_keypad +tcic +tcm_fc +tcm_loop +tcm_qla2xxx +tcm_usb_gadget +tcp_bic +tcp_diag +tcp_highspeed +tcp_htcp +tcp_hybla +tcp_illinois +tcp_lp +tcp_probe +tcp_scalable +tcp_vegas +tcp_veno +tcp_westwood +tcp_yeah +tcrypt +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18271 +tda18271c2dd +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda998x +tdfx +tdfxfb +tdo24m +tea +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tef6862 +tehuti +tekram-sir +teles_cs +test-kstrtox +test_power +test-string_helpers +tg3 +tgr192 +thinkpad_acpi +thmc50 +ti-adc081c +ti_dac7512 +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +timb_dma +timberdale +timblogiw +timbuart +timeriomem-rng +tipc +ti_usb_3410_5052 +tlan +tlclk +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmem +tmiofb +tmp006 +tmp102 +tmp401 +tmp421 +tmscsim +toim3232-sir +topstar-laptop +toshiba_acpi +toshiba_bluetooth +touchit213 +touchright +touchwin +tpci200 +tpm_atmel +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_i2c_stm_st33 +tpm_infineon +tpm_nsc +tpm-rng +tps51632-regulator +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65090-charger +tps65090-regulator +tps65217 +tps65217_bl +tps65217-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps80031-regulator +trancevibrator +tranzport +tridentfb +ts2020 +ts5500_flash +ts_bm +tsc2005 +tsc2007 +tsc40 +tscan1 +ts_fsm +tsi568 +tsi57x +tsi721_mport +ts_kmp +tsl2550 +tsl2563 +tsl2583 +tsl2x7x_core +tsl4531 +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +tua6100 +tua9001 +tulip +tuner +tuner_it913x +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +tusb6010 +tvaudio +tveeprom +tvp5150 +tw2804 +tw9903 +tw9906 +tw9910 +twidjoy +twl6040-vibra +twofish_common +twofish_generic +twofish-i586 +typhoon +u132-hcd +u14-34f +uartlite +ubi +ubifs +ucb1400_core +ucb1400_ts +ucd9000 +ucd9200 +uda1342 +udc-core +udf +udl +udlfb +udp_diag +ueagle-atm +u_ether +ufs +ufshcd +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_sercos3 +uli526x +ultrastor +umc +umem +ums-alauda +ums-cypress +ums-datafab +ums-eneub6250 +ums-freecom +ums-isd200 +ums-jumpshot +ums-karma +ums-onetouch +ums-realtek +ums-sddr09 +ums-sddr55 +ums-usbat +unioxx5 +unix_diag +upd64031a +upd64083 +uPD98402 +u_rndis +usb3503 +usb_8dev +usb8xxx +usbatm +usb_debug +usbdux +usbduxfast +usbduxsigma +usb_f_acm +usb_f_ecm +usb_f_ecm_subset +usb_f_eem +usb_f_mass_storage +usb_f_ncm +usb_f_obex +usb_f_phonet +usb_f_rndis +usb_f_serial +usb_f_ss_lb +usb_gigaset +usbhid +usbip-core +usbip-host +usbkbd +usblcd +usbled +usblp +usbmon +usbmouse +usbnet +usbserial +usb-serial-simple +usbsevseg +usb-storage +usbtest +usbtmc +usbtouchscreen +usbtv +usbvision +usb_wwan +u_serial +userspace-consumer +ushc +usnic_verbs +uss720 +uvcvideo +uvesafb +uwb +ux500 +v4l2-common +v4l2-dv-timings +v4l2-int-device +v4l2-mem2mem +vcan +vcnl4000 +ves1820 +ves1x93 +veth +vfio +vfio_iommu_type1 +vfio-pci +vga16fb +vgastate +vgg2432a4 +vhci-hcd +vhost +vhost_net +vhost_scsi +via +via686a +via-camera +via-cputemp +viafb +via-ircc +via-rhine +via-rng +via-sdmmc +via-velocity +via_wdt +video +videobuf2-core +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-memops +videobuf2-vmalloc +videobuf-core +videobuf-dma-contig +videobuf-dma-sg +videobuf-dvb +videobuf-vmalloc +videocodec +videodev +viperboard +viperboard_adc +virtio-rng +virtio_scsi +virtual +visor +vivi +vlsi_ir +vmac +vme +vme_ca91cx42 +vme_pio2 +vme_tsi148 +vme_user +vme_vmivme7805 +vmk80xx +vmlfb +vmw_balloon +vmwgfx +vmw_pvscsi +vmw_vmci +vmw_vsock_vmci_transport +vmxnet3 +vp27smpx +vpx3220 +vringh +vsock +vsxxxaa +vt1211 +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxge +vxlan +w1_bq27000 +w1_ds2408 +w1_ds2413 +w1_ds2423 +w1_ds2431 +w1_ds2433 +w1_ds2760 +w1_ds2780 +w1_ds2781 +w1_ds28e04 +w1-gpio +w1_smem +w1_therm +w35und +w5100 +w5300 +w6692 +w83627ehf +w83627hf +w83627hf_wdt +w83697hf_wdt +w83697ug_wdt +w83781d +w83791d +w83792d +w83793 +w83795 +w83877f_wdt +w83977af_ir +w83977f_wdt +w83l785ts +w83l786ng +w90p910_ts +w9966 +wacom +wacom_i2c +wacom_w8001 +wafer5823wdt +walkera0701 +wanxl +warrior +wbsd +wcn36xx +wd +wd7000 +wdt +wdt_pci +whci +whci-hcd +whc-rc +whiteheat +wil6210 +wimax +winbond-840 +winbond-cir +wire +wishbone-serial +wistron_btns +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wl3501_cs +wlags49_h25_cs +wlags49_h2_cs +wlcore +wlcore_sdio +wlcore_spi +wm831x_backup +wm831x_bl +wm831x-dcdc +wm831x-hwmon +wm831x-isink +wm831x-ldo +wm831x-on +wm831x_power +wm831x-ts +wm831x_wdt +wm8350-hwmon +wm8350_power +wm8350-regulator +wm8350_wdt +wm8400-regulator +wm8739 +wm8775 +wm8994-regulator +wm97xx-ts +wmi +wp512 +wusb-cbaf +wusbcore +wusb-wa +x25 +x25_asy +x38_edac +x86_pkg_temp_thermal +xc4000 +xc5000 +xcbc +xen-blkback +xen-evtchn +xen-fbfront +xenfs +xen-gntalloc +xen-gntdev +xen-kbdfront +xen-netback +xen-pciback +xen-pcifront +xen-privcmd +xen-tpmfront +xen_wdt +xfrm4_mode_beet +xfrm4_mode_transport +xfrm4_mode_tunnel +xfrm4_tunnel +xfrm6_mode_beet +xfrm6_mode_ro +xfrm6_mode_transport +xfrm6_mode_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_ipcomp +xfrm_user +xfs +xgifb +xgmac +xillybus_core +xillybus_pcie +xirc2ps_cs +xircom_cb +xo15-ebook +xor +xpad +xprtrdma +xsens_mt +x_tables +xt_addrtype +xt_AUDIT +xt_bpf +xt_CHECKSUM +xt_CLASSIFY +xt_cluster +xt_comment +xt_connbytes +xt_connlabel +xt_connlimit +xt_connmark +xt_CONNSECMARK +xt_conntrack +xt_cpu +xt_CT +xt_dccp +xt_devgroup +xt_dscp +xt_DSCP +xt_ecn +xt_esp +xt_hashlimit +xt_helper +xt_hl +xt_HL +xt_HMARK +xt_IDLETIMER +xt_iprange +xt_ipvs +xtkbd +xt_LED +xt_length +xt_limit +xt_LOG +xt_mac +xt_mark +xt_multiport +xt_nat +xt_NETMAP +xt_nfacct +xt_NFLOG +xt_NFQUEUE +xt_osf +xt_owner +xt_physdev +xt_pkttype +xt_policy +xt_quota +xt_rateest +xt_RATEEST +xt_realm +xt_recent +xt_REDIRECT +xts +xt_sctp +xt_SECMARK +xt_set +xt_socket +xt_state +xt_statistic +xt_string +xt_tcpmss +xt_TCPMSS +xt_TCPOPTSTRIP +xt_tcpudp +xt_TEE +xt_time +xt_TPROXY +xt_TRACE +xt_u32 +xusbatm +xz_dec_test +yam +yealink +yellowfin +yenta_socket +yurex +z85230 +zatm +zaurus +zd1201 +zd1211rw +zforce_ts +zhenhua +zl10036 +zl10039 +zl10353 +zl6100 +zlib +zr36016 +zr36050 +zr36060 +zr36067 +zr364xx +zram +zte_ev --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/i386/lowlatency +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/i386/lowlatency @@ -0,0 +1,17503 @@ +EXPORT_SYMBOL arch/x86/kvm/kvm 0x6277affc kvm_read_guest_atomic +EXPORT_SYMBOL arch/x86/kvm/kvm 0xbf9ac63f kvm_cpu_has_pending_timer +EXPORT_SYMBOL arch/x86/platform/scx200/scx200 0x254e5667 scx200_gpio_base +EXPORT_SYMBOL arch/x86/platform/scx200/scx200 0x35a3c008 scx200_gpio_configure +EXPORT_SYMBOL arch/x86/platform/scx200/scx200 0x8cfa375c scx200_gpio_shadow +EXPORT_SYMBOL arch/x86/platform/scx200/scx200 0x907665bd scx200_cb_base +EXPORT_SYMBOL crypto/gf128mul 0x0c2f123f gf128mul_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x1068004b gf128mul_bbe +EXPORT_SYMBOL crypto/gf128mul 0x2f2889a0 gf128mul_init_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x384ef9ce gf128mul_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x56af0dbd gf128mul_x_ble +EXPORT_SYMBOL crypto/gf128mul 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL crypto/gf128mul 0xbd17a0df gf128mul_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0xc0890413 gf128mul_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/acpi/video 0x7a45377b acpi_video_unregister +EXPORT_SYMBOL drivers/acpi/video 0x8826c13b acpi_video_register +EXPORT_SYMBOL drivers/acpi/video 0xdb78b328 acpi_video_get_edid +EXPORT_SYMBOL drivers/atm/suni 0xf9b77765 suni_init +EXPORT_SYMBOL drivers/atm/uPD98402 0x08762230 uPD98402_init +EXPORT_SYMBOL drivers/bcma/bcma 0x240a2219 bcma_core_dma_translation +EXPORT_SYMBOL drivers/block/drbd/drbd 0x127a5901 drbd_set_st_err_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x35131b36 drbd_role_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x7730f22d drbd_conn_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0xaf27bebf drbd_disk_str +EXPORT_SYMBOL drivers/block/paride/paride 0x0696679e pi_release +EXPORT_SYMBOL drivers/block/paride/paride 0x207024aa pi_disconnect +EXPORT_SYMBOL drivers/block/paride/paride 0x2e3501b8 pi_write_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x3960a2dc pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0x61971c7b pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0x76f14824 pi_read_block +EXPORT_SYMBOL drivers/block/paride/paride 0x8eec5b04 pi_write_block +EXPORT_SYMBOL drivers/block/paride/paride 0x9b2ae687 pi_read_regr +EXPORT_SYMBOL drivers/block/paride/paride 0xa0d7b4c9 paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0xc8f63c37 pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xed872f92 pi_init +EXPORT_SYMBOL drivers/block/paride/paride 0xfd602024 paride_unregister +EXPORT_SYMBOL drivers/char/nsc_gpio 0x02d13705 nsc_gpio_write +EXPORT_SYMBOL drivers/char/nsc_gpio 0x4343d9d2 nsc_gpio_read +EXPORT_SYMBOL drivers/char/nsc_gpio 0xf9b262f7 nsc_gpio_dump +EXPORT_SYMBOL drivers/char/nvram 0x0f28cb91 nvram_read_byte +EXPORT_SYMBOL drivers/char/nvram 0x17ff2c1d __nvram_read_byte +EXPORT_SYMBOL drivers/char/nvram 0x2adec1e0 __nvram_check_checksum +EXPORT_SYMBOL drivers/char/nvram 0x7da28f12 nvram_check_checksum +EXPORT_SYMBOL drivers/char/nvram 0x9ce3f83f nvram_write_byte +EXPORT_SYMBOL drivers/char/nvram 0xa8813189 __nvram_write_byte +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x0eb3bd45 dw_dma_cyclic_stop +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x1b9a8fc4 dw_dma_cyclic_start +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x6897e2f0 dw_dma_get_src_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x88cc9357 dw_dma_cyclic_free +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xa61e5823 dw_dma_get_dst_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xdf6d2a1f dw_dma_cyclic_prep +EXPORT_SYMBOL drivers/dma/ioat/ioatdma 0x1167c004 ioat_dma_setup_interrupts +EXPORT_SYMBOL drivers/edac/edac_core 0xa56df18a edac_mc_find +EXPORT_SYMBOL drivers/firewire/firewire-core 0x04dd92ce fw_core_add_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x04fee309 fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0cfa1043 fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0x16c75fb1 fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0x16e91e21 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x339b7b21 fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3c56ef91 fw_workqueue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3e12daec fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4133628a fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x446b5c99 fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0x492d1a72 fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4d5d4eca fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x56b33fc4 fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0x58c98c9a fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6167b42f fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0x65c9438b fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6b393d51 fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7246e39b fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0x729a1f52 fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7e3280be fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7e431b14 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x90863005 fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb2b26112 fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb52ffff5 fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb560f6f6 fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xbc844b5c fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xbc88bfca fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc1e0b5a3 fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe12b0ba1 fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe14b4807 fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xeb5b0adb fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0xee58cf65 fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf88790c6 fw_core_add_address_handler +EXPORT_SYMBOL drivers/firmware/dcdbas 0xa75079d6 dcdbas_smi_request +EXPORT_SYMBOL drivers/fmc/fmc 0x010cb8cb fmc_find_sdb_device +EXPORT_SYMBOL drivers/fmc/fmc 0x11dd3e20 fmc_device_register +EXPORT_SYMBOL drivers/fmc/fmc 0x2baab5f1 fmc_device_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0x456db5e8 fmc_driver_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0x4cb76ff4 fmc_device_register_n +EXPORT_SYMBOL drivers/fmc/fmc 0x609a7c12 fmc_scan_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x80931cfc fmc_free_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x9aaec048 fmc_driver_register +EXPORT_SYMBOL drivers/fmc/fmc 0xaeb1d3a2 fmc_reprogram +EXPORT_SYMBOL drivers/fmc/fmc 0xb2e27784 fmc_device_unregister_n +EXPORT_SYMBOL drivers/fmc/fmc 0xbaa9b976 fmc_show_sdb_tree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00025916 drm_mode_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00667d8a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00e87fd5 drm_core_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x026c0d6b drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x02a5a3b1 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x065cde77 drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ac6214a drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ae4b94c drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ba2b9b3 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0baa36bb drm_pcie_get_speed_cap_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0e1c5fa9 drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ec527fc drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fccafb1 drm_global_item_unref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10b7f167 drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10d42dde drm_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x117ad6b2 drm_calc_vbltimestamp_from_scanoutpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0x11d6144f drm_crtc_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12c6276a drm_buffer_read_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x138f17d5 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13cdaadb drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x142b8b35 drm_buffer_copy_from_user +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a9a178 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14b3cbdc drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0x189f6401 drm_mm_debug_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x194eadaa drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19998491 drm_idlelock_take +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19e44324 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a36bdf2 drm_get_encoder_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a770ac3 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1b0f2cf6 drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1beed77a drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1fa543d3 drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20645642 drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22062606 drm_pci_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23463937 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2559afc6 drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2586e8be drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25e3c79f drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0x26499d25 drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x27315b6a drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x28f29009 drm_agp_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x292dbe8c drm_core_reclaim_buffers +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2965ddfc drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a942ab2 drm_mm_insert_node_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ba06492 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d80be4d drm_mm_init_scan +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7a4300 drm_rgb_quant_range_selectable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2eed19be drm_agp_bind_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x305db3a2 drm_agp_unbind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3243fa1c drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x32d62a05 drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x32fdda01 drm_vblank_post_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3445d3b5 drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0x346127a7 drm_global_item_ref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36f91ef3 drm_mm_clean +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38a4f7ae drm_format_num_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x39404106 drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ac1fef9 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ae7b2d0 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b97b485 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b9d009a drm_format_plane_cpp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ba6e158 drm_addbufs_agp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3bc82865 drm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d4b8108 drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eb37b9d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ec220a9 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x426372d9 drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43384bd9 drm_buffer_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4401d024 drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4589ab71 drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x458f2a6d drm_global_mutex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x46b6e0fa drm_framebuffer_reference +EXPORT_SYMBOL drivers/gpu/drm/drm 0x491a1263 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x491f533b drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x498dcb5e drm_ut_debug_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49fabf0d drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4a2aa360 drm_sysfs_connector_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ab13779 drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4afe71a8 drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c1d1056 drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c511235 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4cc9eddd drm_agp_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4cdb5e48 drm_unplug_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4cfd7120 drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e43dac4 drm_rmmap_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ea1f5a2 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e28c07 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5203bff1 drm_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0x526f6f71 drm_rect_calc_hscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x560d925f drm_vblank_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5a18919a drm_ati_pcigart_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5a66bee3 drm_bridge_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d34b0a7 drm_platform_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d417cc7 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6090be61 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6140a43b drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x616164ba drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x629c05e1 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x643f3492 drm_pci_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x660fb012 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66803841 drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6900d335 drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x695f6064 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x697debd7 drm_sysfs_connector_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6a52a6ae drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6a9bf3d6 drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b6d7375 drm_timestamp_precision +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c158624 drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cee2e42 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6d1e5bff drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6dbeb3c2 drm_vblank_pre_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e7a8ca2 drm_mode_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f08acc3 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x708a6c65 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x70f7b607 drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71fe3380 drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x742514c2 drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75eafaf7 drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7700b7b1 drm_agp_bind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x77f5425d drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a4e7297 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c4c8f3d drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7caef3b7 drm_dev_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d958858 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7f011e2e drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x807a688a drm_addbufs_pci +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8136e392 drm_mode_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81ba930c drm_mm_init_scan_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81be1d09 drm_platform_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x829f5162 drm_get_last_vbltimestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x84d0bb6d drm_pci_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x85282161 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x86167944 drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x89632bad drm_agp_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x89d1f5ad drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a5b896b drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d494c98 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8de13715 drm_format_vert_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dfb019d drm_buffer_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8eff9111 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f3ab6dd drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f7df3a7 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8faae872 drm_get_pci_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ffc96ba drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9396f6b7 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9587e7e9 drm_agp_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96250384 drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x965fc652 drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x966903f6 drm_mode_group_init_legacy_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x97290488 drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9745d638 drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9755f27d drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x978f4027 drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9972db48 drm_rect_calc_vscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99d899f9 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9aa2f527 drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b8fbb0a drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9c1b5573 drm_agp_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d70fc2a drm_rnodes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9eccfe56 drm_mode_hsync +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9efc26a3 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa015fa28 drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa127468b drm_prime_init_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1f4e9e6 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa28078b2 drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3bb41e2 drm_prime_destroy_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa501b781 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5dbd572 drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6902f65 drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa7b836cd drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa7ff88c3 drm_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa95d8229 drm_ati_pcigart_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa96acfcb drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaab5e107 drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0xabc3b60d drm_core_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xacff88f4 drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad0616bf drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae0b195a drm_pci_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaf1f3cac drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafb0cb6f drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafd51394 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb1c04c96 drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb1d9fcfd drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb572a9f0 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5d1f6a0 drm_select_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6712e14 drm_addmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb95beb55 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb09ed06 drm_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbc36725d drm_idlelock_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe001c53 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe2e1b8f drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbedcb207 drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc0a857e6 drm_mode_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc261aa3c drm_mode_connector_detach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc36787e5 drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4000f9f drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc414c422 drm_vblank_offdelay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc43de435 drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6b9b732 drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f3d5e8 drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8298724 drm_rmmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc918f198 drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc94db25c drm_framebuffer_unreference +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca45efbc drm_format_horz_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca93ede3 drm_vma_offset_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd0fc417 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0xce0a8c85 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd051ca6f drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd128385d drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2335101 drm_fb_get_bpp_depth +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd41c5641 drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd46b9c35 drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4971742 drm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd55aea8d drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6181d34 drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6bb7ce7 drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd95c0b52 drm_getsarea +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd9d489ad drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb5a5852 drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbb5a9f5 drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbd9d962 drm_get_connector_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbfade7e drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc3aedde drm_agp_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf534d7f drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2ef97e4 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe49ac037 drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6aaa4ff drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6f46e6e drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7197773 drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7b6adf9 drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe81462f2 drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe84532a3 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe87c29fa drm_mm_dump_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe9a4d40e drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeac849cc drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xebcafe97 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefdf9b69 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf08d712a drm_mode_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3648ad0 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3928958 drm_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3f1d55b drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf446a0e2 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf540633e drm_core_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf564c99a drm_bridge_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf5707db1 drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf81777cb drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf99e9e4f drm_edid_to_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb497216 drm_mm_insert_node_in_range_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb9476b4 drm_connector_unplug_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc71c2ba drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd063935 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd5f1aeb drm_mode_create_dirty_info_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe4a68c7 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfec9aae1 drm_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffc6c87a drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x098e47d2 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0da0f57e drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0db5c852 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f96ec70 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0fb740bf drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x163251c8 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1719cf91 drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1785aa47 drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1b5d143e drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2dce6400 drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3344e05c drm_fb_helper_restore_fbdev_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34871adf drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a6e6dd8 drm_fb_helper_fill_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3a8543ac drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x52c380c3 drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x52e423f5 i2c_dp_aux_add_bus +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7021832c drm_fb_helper_fill_fix +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x711a004a drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7afcf8fb drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7fdb865f drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84e924ba drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8576e70e drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x89be9276 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x89cc0ec4 drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x90b6e04c drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa15ab37d drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa5f0ac0a drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa77858bb drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8d6809d drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb24f6aab drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbc76236c drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc2453238 drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcc13b1c2 drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd1c6af84 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd87c378d drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf15ededa drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf180e34c drm_fb_helper_single_add_all_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf9c6c85e drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfc2ef5f2 drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfcd96cd8 drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x531a639e drm_get_usb_dev +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x904a8c81 drm_usb_exit +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x9fd87ee3 drm_usb_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x09a8a6e7 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0aa53223 ttm_agp_tt_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0dae4e67 ttm_bo_del_sub_from_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0f33af8e ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x132b05be ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1ba4e68a ttm_lock_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1c1b0d9e ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x201c46ae ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x23e6a3df ttm_vt_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x266d8a60 ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b54aa9a ttm_object_file_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3dbfc717 ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4739c39a ttm_mem_io_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x485a5bc0 ttm_ref_object_add +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x48741a2d ttm_bo_synccpu_write_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4a4fead3 ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4d78beac ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4dccb6f1 ttm_bo_add_to_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4fb35117 ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5003b5fb ttm_agp_tt_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x50e375f2 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x532306fe ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x57489bb3 ttm_mem_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5cf59609 ttm_bo_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5fbad9bf ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6019c13c ttm_write_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x64a57375 ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x669c263f ttm_suspend_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x67b1d568 ttm_bo_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x68e51644 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6eefba0b ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x75ba1d49 ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7aeaeba2 ttm_read_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80d86f0e ttm_object_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x83bf5379 ttm_agp_tt_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x880a15ad ttm_base_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8cad3cc2 ttm_suspend_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8e0a6097 ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8f5dee4e ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94894449 ttm_base_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x998e45c0 ttm_ref_object_base_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9baf77a6 ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9c3fb5ec ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9c8475ff ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9cb8d60e ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9f27104a ttm_mem_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa3adcb77 ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa4a0e8a1 ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa761d7ac ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaa1c1c09 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaceaae2c ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xae3b6a31 ttm_prime_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xafa7165c ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb25e55ef ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb467301e ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb4d56495 ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb6b9218d ttm_write_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb7b8fe84 ttm_mem_io_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb7c52dda ttm_object_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xba306098 ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbd2bcb20 ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbeaaadff ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc24e02ce ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc40e6bab ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcb07373c ttm_mem_io_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xce6e43a8 ttm_base_object_lookup_for_ref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd3f3e1dc ttm_mem_io_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7a41a37 ttm_vt_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd8edb115 ttm_base_object_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdfe608ef ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe5f90403 ttm_bo_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe74984e6 ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe81f3a11 ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xeb0ba322 ttm_bo_synccpu_write_grab +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf354400f ttm_fbdev_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfbc2c5ec ttm_object_file_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xffcb8d9b ttm_read_lock +EXPORT_SYMBOL drivers/hv/hv_vmbus 0xec442fc8 vmbus_recvpacket +EXPORT_SYMBOL drivers/hv/hv_vmbus 0xf3ec3566 vmbus_sendpacket +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x0903c239 vid_from_reg +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0xef1c781c vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x0e2a6864 sch56xx_read_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x0f5877d4 sch56xx_read_virtual_reg16 +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x34257f35 sch56xx_watchdog_unregister +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x882c7729 sch56xx_watchdog_register +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xe5022f95 sch56xx_read_virtual_reg12 +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xed1d2a08 sch56xx_write_virtual_reg +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x0fbd4c4b i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x85383eef i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xcfd17daf i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x1bc8770b i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0xddcb3964 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0xcadfaf5f amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xd20fab4b st_accel_common_remove +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xd31b50d1 st_accel_common_probe +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x0a9e4d30 hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x396dcefe hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x92a52b9c hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x984c9615 hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xb030c7ac hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x31eeeaca hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xb6e40244 hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x0df49ffa st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x28c523d7 st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x2c6e8ef7 st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x301ca201 st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x629cfcfe st_sensors_check_device_support +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x62df78ef st_sensors_get_buffer_element +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x6bcacb4d st_sensors_sysfs_get_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x9cee68c1 st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xae3f9481 st_sensors_sysfs_set_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xc06f2ecb st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xccfee903 st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd30c6191 st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd481ee2f st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xf8404484 st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xfed02e13 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0xc868ca0f st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0x6adc6376 st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x1f4ff6d1 st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0xad02d421 st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xf6297b00 adis_enable_irq +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xfa193629 adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/industrialio 0x009c304e iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0x06651a9d iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0x10b54d10 iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0x2ce9287f iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x4596fd8e iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0x54e4b87b iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0x55c958ef iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0x5a3cbf3e iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0x613dd456 iio_buffer_write_length +EXPORT_SYMBOL drivers/iio/industrialio 0x8381d809 iio_buffer_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x8c30bb19 iio_buffer_show_enable +EXPORT_SYMBOL drivers/iio/industrialio 0x8e863ba9 iio_buffer_register +EXPORT_SYMBOL drivers/iio/industrialio 0x8f3d78ef iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x8fc5024b iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x90d37d56 iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0x9477d63f iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x9fbe7bd3 iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0xb069e526 iio_buffer_read_length +EXPORT_SYMBOL drivers/iio/industrialio 0xbaaeda44 iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0xbbdf7ddd iio_buffer_store_enable +EXPORT_SYMBOL drivers/iio/industrialio 0xbebac78b iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0xc043d309 iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0xd4a07a68 iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x476af775 iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0xd5370566 iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x35e0049c iio_kfifo_free +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x44e1e1a8 iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xa130c60a st_magn_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xf0108ecd st_magn_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x8879a4a2 st_press_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xac91c456 st_press_common_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x049ace30 rdma_addr_find_smac_by_sgid +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x04b8b6d7 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1c3c0ad3 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x273f4cca rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x446fd7c9 rdma_addr_find_dmac_by_grh +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x71f3076f rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x8ed679ff rdma_addr_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0xc0bf4edc rdma_addr_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0xec81834d rdma_copy_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x05e74753 ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x159a25cb ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x2b33d58d ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x3da17d16 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4fa75138 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x816944e2 ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x822ccb8c ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x87d279dd ib_send_cm_apr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x95f79683 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9b11e1ac ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9c586bcf ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9e63c3d2 ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xa51ba7c5 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xbff6cad2 ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xc3e7bc6b ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xc5f16e52 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xf4fa3c6b ib_send_cm_lap +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x04e26ac9 ib_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x056b481c ib_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06c82fcf mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x08c025ab ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0b11e20d ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c1b9ac1 ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0dbf5889 ib_alloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x12283605 ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x12abde0e ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14f84918 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x16b5eb87 ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x171f99f1 ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e42406b ib_create_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e491a04 ib_unmap_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1f17b841 ib_modify_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1fc17e9f ib_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2351349c ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x24e63a4f ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x28dabfc0 ib_resolve_eth_l2_attrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ed6e386 ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x329ccc5c ib_destroy_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x32f9192c ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x35783f89 ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x36a6eba8 ib_get_dma_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3907619a ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x43bad3f9 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4617da3b ib_dealloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4f477a7f ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50dbc447 ib_flush_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50f0148f ib_alloc_fast_reg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x519cdd12 ib_dealloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x520b2638 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5294a185 ib_query_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5becda2e ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x60ae933b ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x635b8b6c ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x65d695cb ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x675723c2 ib_fmr_pool_unmap +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6c538ef5 ib_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6d42ee10 ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e030e26 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e379a10 ib_get_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f99b071 ib_alloc_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x77e0d807 ib_fmr_pool_map_phys +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x78f86042 ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7a56b188 ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7dbb635e ib_get_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x84801634 ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8676fc46 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8996b7ba ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x89a62fdd ib_find_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8a286566 ib_create_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8cbb7478 ib_destroy_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9a8d8b90 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9e61e96f ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa2c09516 ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa2f2cf93 ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa2fb80fe ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa3b3f4f6 ibnl_add_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa3ee8a7f ib_destroy_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac217df9 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xada5a25a ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb1a312e1 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb1d042cc ib_create_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb2202470 ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb5925734 ib_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xba5e2a7f ib_free_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbb49a3d2 ib_reg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbf8b3bfe ib_init_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc0f1d899 ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc32b59ff ib_destroy_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc546beb9 ib_rereg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc67f14a5 ibnl_remove_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd18120e7 ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd2d96083 ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd82ee74f rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdd51456d ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe4e0feec ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xebfd8fb3 ib_destroy_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf152991f ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf1d4591f ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf26c7e44 ib_dereg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf354f8b6 ib_dealloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf596852b ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf64c656c ib_query_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf9412786 ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfbe5a56c ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfc150956 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfe4e723b ib_alloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xff0a84f7 ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x122940e2 ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x178bc465 ib_redirect_mad_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x1fd00535 ib_process_mad_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x253e66f0 ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x3db94252 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x432379a2 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6108e76b ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6f077fcf ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7b5d4b7a ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x87d587ce ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x946d5d27 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x9c982f21 ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xc37a0234 ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xc701aa55 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xfe0f5baa ib_register_mad_snoop +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x22f07253 ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x3ab6f18d ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x576fdbac ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x62f248cb ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x655e2efe ib_init_ah_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x6e44fd9f ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x8001438f ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x89a421a4 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xa9324363 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xc459feaa ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xd56941c9 ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xddc330e7 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2569d757 ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x52a6ce77 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7971c00e ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe350f2aa ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x0abda481 iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x288d41a4 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x2e47b34e iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x72d55add iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x973bc917 iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xaff916fb iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xb5b1ac1f iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xe9399e76 iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x136d27c8 rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1f1e3ce2 rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x203a5285 rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x2e4d50db rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x2f4d2867 rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3081d9cb rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3238fd9c rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x35c714cf rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x39ad1e01 rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x465853a5 rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x48588bf6 rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x55ae17ce rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x5db5b0e9 rdma_set_ib_paths +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x632a0027 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x636333f3 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xad3e49f8 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd4493533 rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd76768e2 rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xdba8aece rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf8f0407f rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xfc15651b rdma_notify +EXPORT_SYMBOL drivers/input/gameport/gameport 0x076e19d6 gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0x2610d22f gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0x32768231 gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0x567e5430 gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x8d579692 gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x9eda0be6 gameport_start_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0xc81b5807 __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0xca0c8a6e gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xe9f7f6fa __gameport_register_driver +EXPORT_SYMBOL drivers/input/input-polldev 0x49d00cc3 input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x525815d1 input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x943c3c67 input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xb7972c6c input_unregister_polled_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0x9c243642 matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x267dc312 ad714x_remove +EXPORT_SYMBOL drivers/input/misc/ad714x 0x5f44e9a6 ad714x_enable +EXPORT_SYMBOL drivers/input/misc/ad714x 0x9e10aef9 ad714x_disable +EXPORT_SYMBOL drivers/input/misc/ad714x 0xc9a467c9 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x86af04fa cma3000_init +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x892d76b2 cma3000_resume +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x89d9444e cma3000_exit +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xca3f100a cma3000_suspend +EXPORT_SYMBOL drivers/input/sparse-keymap 0x29d5c387 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x4c157aca sparse_keymap_free +EXPORT_SYMBOL drivers/input/sparse-keymap 0x585be413 sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x908916bb sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/sparse-keymap 0xd5667b51 sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0xe27b3d4b sparse_keymap_setup +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x1c564b69 ad7879_probe +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x7811c22c ad7879_pm_ops +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x97f83edf ad7879_remove +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x02a60c77 capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x04403fcf unregister_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x14f2aa5a capi20_get_version +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2b254c89 capi_ctr_resume_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2b8eab1f capilib_free_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2baa6586 capilib_new_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x31c24aa4 capi20_isinstalled +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x37bf2d3c capi20_register +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x3c297edf capi20_put_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x47d3fc51 capi_info2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x50b33ca4 capi_cmsg2message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6057c6f3 capi_message2cmsg +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x62e32d43 capilib_data_b3_conf +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x689dbf8a capi20_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x71e8d5ba capilib_data_b3_req +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x76c177d5 capi_ctr_suspend_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7a33596c capi20_get_serial +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7e6f1307 capi20_get_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x8f699913 capilib_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9b7fcdc4 capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9f823278 register_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xa5e43fa5 attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xa7c4fd6c capi_message2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xaa165d27 capilib_release_appl +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb19fda8d capi_cmd2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb60e5e5f capi_cmsg_header +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb6c9f304 detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc10fe128 cdebbuf_free +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe19a11ac capi20_get_profile +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe8ad9bd1 capi_cmsg2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xed061606 capi20_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xf2b1a0fa capi_ctr_down +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x1ad89590 b1_free_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x2725f006 avmcard_dma_free +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x2baefc03 b1_load_t4file +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x3505c549 b1_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x3e301ed4 b1_load_config +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x3e409177 b1ctl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x4381ccda b1_loaded +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x6bc5660c b1_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x808a00e0 b1_getrevision +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x84bf3873 b1_parse_version +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x85f09690 b1_irq_table +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x8a047339 b1_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x964c9f58 b1_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x9acb08cc b1_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xb9bdd863 b1_alloc_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xdc4b9aa1 avmcard_dma_alloc +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xdfd28376 b1_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xfa10fee4 b1_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x32b80924 b1pciv4_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x54dda152 b1dma_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x5a5b76f2 t1pci_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x5e2302f1 b1dma_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x7a1eb669 b1dma_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x96b0eb80 b1dma_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x9973cc23 b1dma_reset +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xc931bb09 b1dmactl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xd6f9f1ea b1dma_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xe3e821d6 b1dma_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0x29562993 b1pcmcia_delcard +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xaec3240e b1pcmcia_addcard_m1 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xea620116 b1pcmcia_addcard_m2 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xf14bf8b1 b1pcmcia_addcard_b1 +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x2974ead1 DIVA_DIDD_Read +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x7ab59853 proc_net_eicon +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x62a67af5 mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x86beda83 mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xd0ad481f mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xd58d1448 mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x563e77b1 mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x87685262 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x07f4f2ce hisax_unregister +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x148f0c99 FsmFree +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x7f29ce36 FsmInitTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x93a64734 FsmChangeState +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x9df0cd27 FsmEvent +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x9e395813 hisax_init_pcmcia +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xe227344e FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xee93522c hisax_register +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xf0a16657 FsmNew +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xfc27303b HiSax_closecard +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xff2db2cf FsmDelTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x1d9e9a5c isac_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x3f3b323a isac_d_l2l1 +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x5ca480c2 isac_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x891d0cf8 isac_init +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xa689506e isacsx_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xca65440a isacsx_setup +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x31dd55a8 isdn_ppp_unregister_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x3f53cdab register_isdn +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x7b3d3282 isdn_ppp_register_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xfa06820f isdn_register_divert +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x3b71e4fc isdnhdlc_decode +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x59cc8a7e isdnhdlc_out_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x8ee38862 isdnhdlc_rcv_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0xfd9d4c09 isdnhdlc_encode +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x06a0a2f3 bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x0f92db93 recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x14abdf34 dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x1e42feae get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2348cc3c mISDN_FsmFree +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x256cae63 mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2b7817fc mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2e9a8127 bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x36aa0347 recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x38e5dff1 recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x3cbd37c1 mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x51d4a9ea get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x54451388 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x612d9bcd mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x614ede30 mISDN_FsmAddTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x65c6cc8f recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8a4e99fb mISDN_clock_update +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8c55a6cb queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x96309324 mISDN_FsmDelTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9ed2574d mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa2e6e362 mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa6c3bec4 mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa967af9c mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbac1616e mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xce2be3cb recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd285995f mISDN_clock_get +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd5145151 mISDN_FsmEvent +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd9c1e23c create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe87943cf mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf92e3275 mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf9e7832f mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xfe4b7893 mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x01087af0 mISDN_dsp_element_unregister +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x60721da7 dsp_audio_law_to_s32 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xa215f1b2 dsp_audio_s16_to_law +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xb98308d8 mISDN_dsp_element_register +EXPORT_SYMBOL drivers/md/bcache/bcache 0x153e37d1 closure_trylock +EXPORT_SYMBOL drivers/md/bcache/bcache 0x71ee5677 closure_sub +EXPORT_SYMBOL drivers/md/bcache/bcache 0x9e9dfc78 closure_wait +EXPORT_SYMBOL drivers/md/bcache/bcache 0xbc9efd62 __closure_lock +EXPORT_SYMBOL drivers/md/bcache/bcache 0xdfb5ea42 closure_sync +EXPORT_SYMBOL drivers/md/bcache/bcache 0xe3c17af1 __closure_wake_up +EXPORT_SYMBOL drivers/md/bcache/bcache 0xfe3ada6d closure_put +EXPORT_SYMBOL drivers/md/dm-log 0x0ca7c6a3 dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-log 0x446e10fa dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0x56f6897b dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0x8ef2ab74 dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0x14225115 dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x44e55221 dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0xb3ba2253 dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0xc5806ab7 dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0xcae69044 dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0xcc283cad dm_exception_store_create +EXPORT_SYMBOL drivers/md/raid456 0x9c66118c raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x023de800 flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x0af1271e flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x22f3c1a8 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x24f369c1 flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x2ef8bd0e flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x45e49a1b flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x590ec980 flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x711e93bd flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x7cf31435 flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc8a9b6a6 flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xdcc10d9e flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xf3f4241b flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xfe5684b3 flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x495e4b0c btcx_calc_skips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x8bcd236a btcx_riscmem_free +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xad2fe38b btcx_sort_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xc368f8e6 btcx_align +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xcda0ded2 btcx_screen_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xd487d190 btcx_riscmem_alloc +EXPORT_SYMBOL drivers/media/common/cx2341x 0x1ca0c084 cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0x2f25eee2 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0x3db8be82 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cx2341x 0x5b88faf6 cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0x690c767c cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0x71296ca4 cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0x94c0b9c1 cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc184ec1e cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc4717be3 cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf76ce95 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf8b77a4 cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0xb348ba71 cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x62940980 tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/common/tveeprom 0xc42bf9a0 tveeprom_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x06634ae6 dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x06a094ed dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x08f46a94 dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0ffb20e4 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x101a29b8 dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x15a22c56 dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x17523ce7 dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x196f1ac1 dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2379c727 dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x237f7910 dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x244d6fde dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x300f2abb dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3ec19f2e dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x401beaa2 dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4a22fa18 dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4afceb50 dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4c70c35a dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x59625698 dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x6a219e16 dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7229ff80 dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x727ece1d dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x74a5a698 dvb_filter_pes2ts_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7ac5494c dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7bb127ae dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80e3832d dvb_filter_get_ac3info +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8e58f22f dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x987dcfde dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9abd2d75 dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa74d4989 dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa94f3421 dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xac4ca1b0 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb72b5fa0 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc73460ed dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc947d2ac dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd3ee7530 dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd68a099e timeval_usec_diff +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdace1533 dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdf812e30 dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe0023178 dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe5ae8707 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xefb7a1f5 dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf40495fe dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf826deb0 dvb_filter_pes2ts +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfcc0ed9c dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-frontends/a8293 0xfffaf5d9 a8293_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9013 0x70214f4f af9013_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9033 0x7f5f3e31 af9033_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0x2f21abf3 atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x0f5af371 au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x1b2c6276 au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x34653d88 au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x7da53d0d au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x81eb26af au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xd66f6e59 au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xdd69f913 au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xeba7f82d au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xfa4caa97 au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0x0ea470af au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0x8a5b2459 bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0x503eb766 cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0x3dcb43da cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0x14460a88 cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x3eda4970 cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x6faf80dd cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0xebd4c90b cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x16c44d59 cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x4a559d29 cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0xb84d7cc9 cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x0c56cf4f dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x9e78bafb dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xafd1c84a dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xb486aef2 dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xf3622662 dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x090d2061 dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x22eac08d dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x283a95dd dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x4a832f49 dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x73a72bfd dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x73d9fe03 dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x8a70d805 dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x97fe9a6e dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x9a77054a dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xa85bf765 dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xaefa9f33 dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xbb4c019a dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xc6dc24b6 dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xd513b5bd dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xf43e4bf3 dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0x8fdf9dcf dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x3befe19a dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x85e35c66 dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xa089c152 dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xbe8be027 dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xc4c0e48c dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xebcac770 dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x0be7f767 dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x2020e395 dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x2e1be93c dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xa6ceefe3 dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x0f1a7d7a dib7000pc_detection +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x3809451a dib7000p_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x46ed219d dib7000p_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x50b24aea dib7000p_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x5d353d84 dib7090_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x5dce082c dib7090_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x76070dc8 dib7090_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x8923e09e dib7000p_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x8a8dd436 dib7000p_get_agc_values +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xbcef0f11 dib7000p_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xc6ca106f dib7000p_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xdf403701 dib7090_slave_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xe2cafc5b dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xf0abd172 dib7000p_set_agc1_min +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xf6a0b1bf dib7000p_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xfb5fca52 dib7000p_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x166f5d84 dib8000_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x1eeb08d7 dib8000_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x33336ba5 dib8000_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x33e26285 dib8000_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x4f5c737e dib8000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x52a88eb1 dib8000_remove_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x6506ffe9 dib8000_pwm_agc_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x6a7d48dd dib8096p_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x882e05a8 dib8000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x909e6bfa dib8090p_get_dc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x9ab7f2c6 dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa28139b8 dib8000_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa9872a0b dib8000_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xc2865d98 dib8000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xc2ac2bd0 dib8000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xdb67d993 dib8000_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xe9c8b01c dib8000_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xf12f5de1 dib8096p_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xf76e2547 dib8000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x121b3e45 dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x41144c1d dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xa8687079 dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xad3ad91c systime +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xd56ef815 dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xf19f406e dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x2936bb12 drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0xa59d8223 drxd_config_i2c +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0xed9eee01 drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0x2762db2d ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0x209e000c dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0x0142e1cc ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0x86e56bf8 isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0xfe52391a isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0x2d8b5e72 isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/it913x-fe 0x3dff922c it913x_fe_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0xdf592cf8 itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0xca0c0640 ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0x7500ba44 l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0xe3ba64ad lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0x18b7ae27 lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0x0e2d8a9b lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0xd8cc7fc2 lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x6e75c967 lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0xb2bf8e5c lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0x16b5af38 lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0x2982347f m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0x990913fd mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0x9f6acc19 mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0x3a2572d3 mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0xf355a63d mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0xcbcb69cc nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0x78993acd nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0x4ab1852b or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0xdab7fb1b or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0x9ce03eb9 rtl2830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0xa7d828c6 rtl2830_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2832 0xa6b19662 rtl2832_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0x72bc8f3f s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0x123da3c4 s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x3d3f1b7a s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x857244db s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0xd3667700 s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0x58a1d134 si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0x23e1a7c8 sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0xbb7d5e13 sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0x72ede1de stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0x27e7f804 stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0xf1319fe8 stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0x6329b464 stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0x66e01fc7 stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0xccb0d4b9 stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x19cbfc8d stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0xc108dcb0 stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0xc3c792cf stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x2019300c stv090x_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x6ebefa0f stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0x9fd3a5be stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0xb2657c8e stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0xeab86821 tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0x889d1308 tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0xae4848e3 tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x5fe20eaf tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x8f8e9dbb tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10071 0x0a00eb40 tda10071_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0xd23d9420 tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0x8eec50f8 tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0x5124805b tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0x0603c0ea tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0x16e6ed6f tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0x050e95f6 ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0xbdf67349 tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0x75295b08 ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0xb58da85e ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0xb2d66e44 zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0xb4acc263 zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0x95a8c527 zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x052e3c95 flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x15c8a307 flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x33d9995d flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x646a7fc2 flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x724e21d2 flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xed106cbc flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xf0108706 flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x152fea66 bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x32e7ecbf bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x75bf21e9 bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x7e1b3451 bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xd5d0bdef bt878_num +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x11dc4b6d bttv_gpio_enable +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x5fb6d4f4 bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x66d87299 bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xb55131d8 bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x1215dde4 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x286ad8f6 dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x59cd16b7 rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x64eb99f8 dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x70f66dc6 write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x7adc9103 read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x90b76490 dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x9e77de92 dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x9f214087 dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe94b8c9c dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0x7578ad86 dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x08a909ac cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x9951652a cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xa0c498a9 cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xa81f7ff7 cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xbac37f62 cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x033c59e0 altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x37077a7a altera_hw_filt_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x78c0d158 altera_pid_feed_control +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x9247b72f altera_hw_filt_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x1481906d cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x3aa9816b cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x6f1680f1 cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x77f8f961 cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x784853c3 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x91394163 cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xc5d38741 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xdde7782e cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x805954d5 vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0xd5cdf7c5 vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x27bb9cae cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x6b5323f8 cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x85fa2ba4 cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xb7573900 cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x080ff027 cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x171098d2 cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x30d9bfb5 cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x6c85d5c5 cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xa001e7ca cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xd20ce0b8 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x00dcd409 cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1ec3fc5d cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x2022a463 cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x2456f361 cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x33fe0cee cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x3881da32 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4216fc84 cx88_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x46392e1e cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4a162ad0 cx88_risc_stopper +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6141c8c5 cx88_tuner_callback +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6801e854 cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6870f18c cx88_free_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6ff5b578 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x74bf6d63 cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7642ed3c cx88_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7b2cbd40 cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x879a0777 cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x904b8696 cx88_audio_thread +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xa1f21d6f cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xba9c0130 cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc39fd5e1 cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc8d883f5 cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd1cfa7b5 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd87e1ea1 cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xe1683f30 cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf8353506 cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x05c0ce11 ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x05d2bb05 ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x10f12be0 ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x442b57ff ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x57723ce1 ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x6645097c ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x8e9b7bac ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x91fa285a ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x9bde6b3b ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb4a7ee36 ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb5df0ce4 ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc3cbcfd6 ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc773b392 ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xcd6dced2 ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xcfc7a0fb ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xd0bf5f05 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xe39a0e22 ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x04e83446 saa7134_tuner_callback +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x0559165e saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1211df5d saa7134_devlist +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x14180096 saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x196f09bf saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x267209a7 saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x29107a6a saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x47260e32 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x73039031 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x98241fcb saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x982995bd saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xbec18417 saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xbeedf619 saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xec7c1e5b saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xf331cb47 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x03d6ad86 ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xc3e4c127 ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x3a1c6fea videocodec_unregister +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x484c91d1 videocodec_register +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0xc527f854 videocodec_attach +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0xd028a184 videocodec_detach +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x1ee4031c soc_camera_apply_board_flags +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x3280b877 soc_camera_power_on +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x329ef6ab soc_camera_lock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x64e2bdfb soc_camera_power_off +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x87fb9104 soc_camera_host_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xa3624946 soc_camera_xlate_by_fourcc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xc667c1b6 soc_camera_unlock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xd51e164d soc_camera_host_unregister +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xe24b6c6d soc_camera_power_init +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x25c52d97 soc_mbus_samples_per_pixel +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x2863728e soc_mbus_image_size +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x5f3e3558 soc_mbus_bytes_per_line +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xa9546115 soc_mbus_find_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xc8b28da5 soc_mbus_config_compatible +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xfe2c3a07 soc_mbus_get_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x13f5858a soc_camera_client_s_crop +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x15911ac6 soc_camera_calc_client_output +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x25da78bf soc_camera_client_g_rect +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x4efb1011 soc_camera_client_scale +EXPORT_SYMBOL drivers/media/radio/tea575x 0x2889990c snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0x2f0a5c66 snd_tea575x_exit +EXPORT_SYMBOL drivers/media/radio/tea575x 0x42cafe0b snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0x7666592b snd_tea575x_init +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x04dca738 lirc_unregister_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x0b213b5f lirc_dev_fop_write +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x129358ab lirc_get_pdata +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x32cf8be8 lirc_dev_fop_read +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x75771024 lirc_register_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xb6bcb84c lirc_dev_fop_close +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xcda59752 lirc_dev_fop_open +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xf2805180 lirc_dev_fop_ioctl +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xfe257a65 lirc_dev_fop_poll +EXPORT_SYMBOL drivers/media/rc/rc-core 0x54293452 ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0x7b29d108 ir_raw_handler_register +EXPORT_SYMBOL drivers/media/tuners/e4000 0x7bd51239 e4000_attach +EXPORT_SYMBOL drivers/media/tuners/fc0011 0xa4a58830 fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0x51067340 fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x49f5c6c3 fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x5a5b279d fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x74be5926 fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc2580 0x51615fe6 fc2580_attach +EXPORT_SYMBOL drivers/media/tuners/max2165 0xeabde483 max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0x282d807c mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0xfb0af2e3 mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0xd0499aa7 mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0x5636ef51 mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0x0f879566 mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0xbbd9ccc7 qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18212 0xd4da2fd3 tda18212_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0x39cd84a2 tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tua9001 0x6ad071e4 tua9001_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x0cb4b189 tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0x51c43644 xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/tuner_it913x 0x14d163d8 it913x_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0xe83ae45a xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0xd67652bd xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x07fd752a cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x59adfbef cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x013c90c1 dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x0bdde0f4 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x3b96bab9 dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x48f299a1 dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x6445eb6a dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x6ac27ef2 dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x7ecf6ee3 dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x934ec837 dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xf94093bb dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x32ac84f1 dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x341a1012 dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x6fb13874 dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x9142f6dc usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x9dbf6a70 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xd23c222f dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xd34b2fbb dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x13e247e0 rc_map_af9005_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x1ff0608b af9005_rc_decode +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xd4e288db rc_map_af9005_table_size +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x109ebe2e dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x147d44d8 dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x211af382 dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x2417bb74 dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x2d8e769e dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x710620d4 dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb47559e0 rc_map_dibusb_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xbcf0d630 dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xc1c07a4d dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xc4098075 dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xf2597792 dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xfc31655e dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x20321123 em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0xea84b2ff em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x2fb55d0b gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x74a1c695 gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x74b05157 gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x87248db5 gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xabf3b46b gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xeb5bf60d gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xedeb0543 gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xf79c96b5 gspca_resume +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xa04eb0d1 tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xb60eae42 tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xed126829 tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0xd6f4393d ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0xfd3338f7 ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x42c8e001 v4l2_ctrl_next +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x4adaf0f3 v4l2_ctrl_query_menu_valid_items +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x53c9394f v4l2_ctrl_query_menu +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x5f96a661 v4l2_ctrl_check +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0xabe27502 v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x4f1a0fb2 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x9082b07c v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xcb72da20 v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x218ba952 videobuf_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x36119508 videobuf_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x3edef47a videobuf_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x421db5b6 videobuf_dvb_find_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x817ef17e videobuf_dvb_register_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xe38ad0fd videobuf_dvb_get_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf2-core 0x9de25263 vb2_querybuf +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x003f1714 video_usercopy +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x04c7d4e8 v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x07768795 video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x12f60808 v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1322e320 v4l2_subdev_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x15ba0705 v4l2_subdev_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x187c56ec v4l2_subdev_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1e986acb video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x20041fb2 v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2018c810 v4l2_subdev_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2225eb44 v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x26251bd5 v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2707ab94 v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x27e5736a v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x27eda554 v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2b671594 v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x36847d11 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3a00c77c v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3a486445 v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3c281cfb v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4333a39d v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x486dcf58 v4l2_subdev_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x48c4043a v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x495426ee v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x559b59e4 v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x61a6b89e __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x632adfc4 video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x64a83ef7 video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x69c76af2 v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6a0e83df v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6b13a308 __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7742e8b7 v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7a3cd015 v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7beee099 v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8048525e v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x80cf3592 v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x80d09cfb v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9007e9af v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x90fe0e0c v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa49e8977 v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa7e80f11 v4l2_subdev_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xaa3e38b2 v4l2_ctrl_add_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xaa73dab4 v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xabef39f3 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xac0d7124 v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xacc7e261 video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb3303f76 v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb5007b0c v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb593c82c v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb7d11c50 v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb8c34f6d v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb903b844 v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbac4a225 v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbbff1451 v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc9900e5 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbdd03f3d v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc12cf8f8 v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc1847c1d v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc463cc8a v4l2_subdev_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc5996aed v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc7e4af9e v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xca6e7f42 v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd08e0d86 video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd3161925 v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd81c8d76 v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd9b8a77c v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xda238300 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdb376636 v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe6fce6f2 v4l2_ctrl_merge +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe9b8e7df v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfa7e59fb v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xffddef65 v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/memstick/core/memstick 0x23735313 memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x328ada44 memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x45d2767e memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5d820a02 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x711408ae memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x750ab45f memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x7d38b621 memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x9884b65f memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa5987a36 memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xb0cb7df4 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0xb252f3af memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xd436debf memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xdce294f7 memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0xfc9b78d4 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x011aa7bc mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x03221a93 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x0e8ae824 mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3ddd6159 mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3e1a774a mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4150f367 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4526289b mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x477ded9d mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4ab7a61f mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4d2e6b49 mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4dd0c69d mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5fc6a546 mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x783be596 mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x84ae308d mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x887a6951 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x90813fb9 mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa13a3bcf mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa32a4cfe mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa708f190 mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xadf5f656 mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xba8a3a7c mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc0e69f82 mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc3f11ed1 mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc47c22e8 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd241a68f mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd41ba5c7 mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd4292478 mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd4b07679 mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd9a92a75 mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe76b6bcd mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xeec96848 mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf6b4f8ce mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xfa40697f mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x018f1c5e mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0257198f mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0b6d0a9c mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0db3b385 mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0f727d83 mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1752dc38 mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1b53ebe9 mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1d343c1b mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1fe13eb3 mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2b2532f1 mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x39d2b1de mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x416214f9 mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4a35713b mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4d5d5c62 mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5504f48f mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x7a7064ed mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x7f0674dc mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x88d23d99 mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8d677ef3 mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x956cf07a mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xa3faa1bf mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xa4d666a8 mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xa79d4d9f mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd1f11562 mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xea6e63ac mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf26ebaf2 mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf8cd73db mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x06a5cf88 i2o_parm_issue +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x11ed7b81 i2o_driver_notify_controller_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x185ccdb2 i2o_event_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x261cc7d6 i2o_device_claim_release +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2a843bef i2o_dump_message +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2bfd8fa4 i2o_driver_notify_device_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x30191b87 i2o_find_iop +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x31e6fe8d i2o_msg_post_wait_mem +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x3d1dc1dc i2o_parm_table_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x40c809d7 i2o_driver_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x412f4180 i2o_driver_unregister +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x550d658f i2o_device_claim +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x6b52e26c i2o_msg_get_wait +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x981e156a i2o_driver_notify_controller_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x9c68ecb6 i2o_status_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb291b8d6 i2o_iop_find_device +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb4c00dcf i2o_controllers +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb5a92835 i2o_exec_lct_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xe8e5e1f3 i2o_driver_notify_device_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xee6449e7 i2o_parm_field_get +EXPORT_SYMBOL drivers/mfd/cros_ec 0x86da6c0e cros_ec_prepare_tx +EXPORT_SYMBOL drivers/mfd/cros_ec 0x895a901a cros_ec_register +EXPORT_SYMBOL drivers/mfd/cros_ec 0x97ee5fe0 cros_ec_remove +EXPORT_SYMBOL drivers/mfd/cros_ec 0x9dfa7ca4 cros_ec_suspend +EXPORT_SYMBOL drivers/mfd/cros_ec 0xb557dd3d cros_ec_resume +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x305ac995 pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x7c1c798b pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0dedc23d mc13xxx_irq_request_nounmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0e1bc4d7 mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x236ebd32 mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x3e5333ab mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x5ac92eb5 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x85ef25be mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x8aaecfde mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x9538b8e5 mc13xxx_irq_ack +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x984dd7f7 mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x9a84b573 mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xa807d477 mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xe647dd2a mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xefa2ed24 mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/tps6105x 0x1d4a20c0 tps6105x_mask_and_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0x2053317f tps6105x_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0xb4fbcbd3 tps6105x_get +EXPORT_SYMBOL drivers/mfd/tps65010 0x02d4ad0f tps65013_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0x0c6ad2cf tps65010_config_vdcdc2 +EXPORT_SYMBOL drivers/mfd/tps65010 0x28485130 tps65010_config_vregs1 +EXPORT_SYMBOL drivers/mfd/tps65010 0x33739de7 tps65010_set_vib +EXPORT_SYMBOL drivers/mfd/tps65010 0x9fd44c69 tps65010_set_led +EXPORT_SYMBOL drivers/mfd/tps65010 0xb14080cc tps65010_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0xd5bb106d tps65010_set_vbus_draw +EXPORT_SYMBOL drivers/mfd/tps65010 0xe99b3f36 tps65010_set_gpio_out_value +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x3089f00c ad_dpot_probe +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0xd56b287b ad_dpot_remove +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x8a05ed90 altera_init +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x41fdac9a ssc_free +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x5cd5df8e ssc_request +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x0e9755b9 pwm_channel_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5a8b82f9 pwm_channel_handler +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5d5c2951 pwm_clk_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x6a5e1f70 pwm_channel_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x73330c97 pwm_clk_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0xeb7f2c6f __pwm_channel_onoff +EXPORT_SYMBOL drivers/misc/c2port/core 0x5581b57a c2port_device_unregister +EXPORT_SYMBOL drivers/misc/c2port/core 0xa00d1315 c2port_device_register +EXPORT_SYMBOL drivers/misc/ioc4 0x62041893 ioc4_unregister_submodule +EXPORT_SYMBOL drivers/misc/ioc4 0xce14fb46 ioc4_register_submodule +EXPORT_SYMBOL drivers/misc/tifm_core 0x1ac941c1 tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x1ce4d52d tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x27131a0e tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x39f86aa1 tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0x642ea8d2 tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x9983958b tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0xa52fd9c0 tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xb5ffed42 tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xcc045ce0 tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0xd5a6bbba tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xe2417ae9 tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xf7f81494 tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0xfcb004a4 tifm_alloc_device +EXPORT_SYMBOL drivers/mmc/card/mmc_block 0x2f1413cc mmc_cleanup_queue +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x20f7388c cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xa8fd23a7 cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xcf747a37 cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x0dd43908 map_destroy +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x6c7c01bd unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x74f18ea9 register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x76902409 do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0x624a95d6 mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0x31df2aac lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0x43139453 simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0x841f0230 mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/mtd 0xe83c0a03 mtd_concat_create +EXPORT_SYMBOL drivers/mtd/nand/denali 0x10ca19b6 denali_remove +EXPORT_SYMBOL drivers/mtd/nand/denali 0x9eaab1f6 denali_init +EXPORT_SYMBOL drivers/mtd/nand/nand 0x10cda735 nand_unlock +EXPORT_SYMBOL drivers/mtd/nand/nand 0x421e78da nand_scan_bbt +EXPORT_SYMBOL drivers/mtd/nand/nand 0x4369ca41 nand_scan_tail +EXPORT_SYMBOL drivers/mtd/nand/nand 0xc49de412 nand_lock +EXPORT_SYMBOL drivers/mtd/nand/nand 0xcee7741c nand_scan_ident +EXPORT_SYMBOL drivers/mtd/nand/nand 0xf64518c9 nand_scan +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x4d77ef57 nand_bch_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x70097aa0 nand_bch_free +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x9c1c7655 nand_bch_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0xf079ba30 nand_bch_init +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x3132ee65 __nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x5cfe0a78 nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x8baa2c81 nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xb4b94377 __nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0x57a31e57 nand_flash_ids +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0xa336feb7 nand_manuf_ids +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x0e044619 flexonenand_region +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x132a0e49 onenand_default_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x36db121b onenand_addr +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0xa3a7f247 onenand_scan_bbt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x5bc8ba4b arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x610f4dfd alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x91f80589 arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xa4e864fb arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xbf6623fc arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xc49b6a98 arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xc8562c76 arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xe22c3456 arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xeed99bf2 arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xfb1581a4 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x230c3674 com20020_check +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xb3517925 com20020_found +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xf763194f com20020_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x1d4bb906 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x4720d383 ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x4c710ce9 ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x5d0465ca ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x69a7f73a __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xa72a872f ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xb6f6a5bd ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xc383a9c1 ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xce3a0286 ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xe186f8bb ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0x052a8f66 __alloc_eip_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0x06c633af eip_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0x07992743 eip_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0x306f3847 eip_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0x3ed6b501 eip_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0x8f8f2f10 eip_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0x99c03fd7 eip_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0x9ea18e61 eip_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0xa48e0207 NS8390p_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0xc41da2d5 eip_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390p 0xcd48fa04 eip_close +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x64f30bd4 cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x17cd12ba cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x2bac17b3 t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x2d2ecc07 t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x44507774 cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x5429a24d cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x5cb05033 cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x95483e17 cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa55b0e7d t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xd0b6a04d cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xd85a3826 cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xe1ba7a71 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf24e61f2 t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf25d810c cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf7a74c1b cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf9af7f7a dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xfd972de4 t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0a5bdd93 cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x183e8e0c cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x20801b10 cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x3fc554d7 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x47416c64 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4b937cb6 cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4d8f511f cxgb4_disable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x50a75a65 cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x54ab9ba9 cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5fd2d375 cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x89f0052d cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x8bd594c1 cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x8e53f9c9 cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x919dcf33 cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9555da0d cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb2bac8d3 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcb4641b9 cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcc91d77d cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcd848c58 cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xce579479 cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd00e5a36 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd1e25d5a cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd2575e27 cxgb4_enable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd4c4fd1f cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe2f6cb16 cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf27b01e9 cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf49f6af2 cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf898a54f cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf8e37d93 cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x0e712340 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x315bf589 vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x431255c4 vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x4f650da7 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9196d804 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xf8b1ed6b enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x264adca6 be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x4c54561e be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xbab62e22 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x05aaee81 mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x08ca27cb mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1eb212bd mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x22108c12 mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2aa83675 mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x306418c8 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x403c3060 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x41fbf67a mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x471b2de3 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5c48fad4 mlx4_test_interrupts +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x77dbf2b3 mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x80472124 mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x81047cad mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x95908ae5 mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9920f0cb mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9a48b1fd mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9c599ca8 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa602ca25 set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xce56cc44 mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe0c9c495 mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe21a50c4 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe4aa06ae mlx4_set_stats_bitmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe81a337b mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfafd5780 mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x08a9aef6 mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1a747919 mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3158420b mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x32772e0b mlx5_core_dump_fill_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x42fb655c mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x44bb5968 mlx5_dev_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x456d2379 mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4d2f076f mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x55aabc6c mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5ca5583d mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5ce8d17a mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x63fbc76f mlx5_core_query_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6e2451d8 mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x71eadf79 mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x75880ad5 mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7f2015fb mlx5_core_destroy_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e9e9011 mlx5_core_create_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa135d9c0 mlx5_core_get_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xabfe8e07 mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb78cbb1e mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc9c1c5cf mlx5_dev_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcf02ff8f mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcfebb022 mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe027a3e9 mlx5_core_arm_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe96b3403 mlx5_cmd_comp_handler +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xed8b4f8a mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf02ca2fe mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x51a3c3a3 hdlcdrv_register +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xacdb9184 hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xd0eb1676 hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xf150b392 hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xfb93606e hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x3bc60633 sirdev_raw_read +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x4407a2ca sirdev_raw_write +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x4f8fdfb3 irda_register_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x527d7606 irda_unregister_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x99bb2ad6 sirdev_put_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x9baaf996 sirdev_set_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x9d7be30e sirdev_receive +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xb632f9c9 sirdev_set_dtr_rts +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xc346da39 sirdev_get_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xf743dc16 sirdev_write_complete +EXPORT_SYMBOL drivers/net/mdio 0x22bce513 mdio_mii_ioctl +EXPORT_SYMBOL drivers/net/mdio 0x43e4defc mdio45_nway_restart +EXPORT_SYMBOL drivers/net/mdio 0x7577f992 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0xa1a29548 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0xb34a7575 mdio45_ethtool_spauseparam_an +EXPORT_SYMBOL drivers/net/mdio 0xc6b1163f mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0xddc98749 mdio45_ethtool_gset_npage +EXPORT_SYMBOL drivers/net/mii 0x149a7641 generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0x5143c1b9 mii_link_ok +EXPORT_SYMBOL drivers/net/mii 0x71ece6c9 mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0x73083ddf mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0x8a260d0f mii_check_media +EXPORT_SYMBOL drivers/net/mii 0x98256cb3 mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0xc131bfda mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0xd3338eab mii_check_link +EXPORT_SYMBOL drivers/net/ppp/pppox 0x41a4c4f5 register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xd51e292e pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xf2be916e pppox_unbind_sock +EXPORT_SYMBOL drivers/net/sungem_phy 0x19bbde56 sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x3ddb177f team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0x9909c429 team_options_register +EXPORT_SYMBOL drivers/net/team/team 0xa172d335 team_mode_register +EXPORT_SYMBOL drivers/net/team/team 0xbd7bb401 team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0xbecdfcfb team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0xc2635e5c team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0xc54df6fe team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0xda8b9bd5 team_mode_unregister +EXPORT_SYMBOL drivers/net/usb/usbnet 0x1843a3de usbnet_manage_power +EXPORT_SYMBOL drivers/net/usb/usbnet 0x3b60d405 usbnet_link_change +EXPORT_SYMBOL drivers/net/usb/usbnet 0x62258900 usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/wan/hdlc 0x15a5543c hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0x1aab2527 hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0x26984cf0 hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x505a5abb unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0x6c0308c0 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x8651e6fd alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0x87a4ea85 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xaa706e0a unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xe6f7eaf1 hdlc_change_mtu +EXPORT_SYMBOL drivers/net/wan/hdlc 0xf7a7958b hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0xfc183fc3 register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/z85230 0x0732e6a3 z8530_init +EXPORT_SYMBOL drivers/net/wan/z85230 0x10c78988 z8530_dead_port +EXPORT_SYMBOL drivers/net/wan/z85230 0x1f3d2180 z8530_null_rx +EXPORT_SYMBOL drivers/net/wan/z85230 0x382ea425 z8530_channel_load +EXPORT_SYMBOL drivers/net/wan/z85230 0x3b764930 z8530_nop +EXPORT_SYMBOL drivers/net/wan/z85230 0x4396f2bf z8530_sync_dma_close +EXPORT_SYMBOL drivers/net/wan/z85230 0x449f1c7e z8530_sync_close +EXPORT_SYMBOL drivers/net/wan/z85230 0x5cd24d29 z8530_hdlc_kilostream +EXPORT_SYMBOL drivers/net/wan/z85230 0x627c1602 z8530_sync_txdma_close +EXPORT_SYMBOL drivers/net/wan/z85230 0x8fb44f17 z8530_sync_dma_open +EXPORT_SYMBOL drivers/net/wan/z85230 0x9cfe51e6 z8530_describe +EXPORT_SYMBOL drivers/net/wan/z85230 0xa19a79e1 z8530_queue_xmit +EXPORT_SYMBOL drivers/net/wan/z85230 0xca993170 z8530_shutdown +EXPORT_SYMBOL drivers/net/wan/z85230 0xd1a44723 z8530_sync_txdma_open +EXPORT_SYMBOL drivers/net/wan/z85230 0xd4ffebf0 z8530_interrupt +EXPORT_SYMBOL drivers/net/wan/z85230 0xe3d80064 z8530_hdlc_kilostream_85230 +EXPORT_SYMBOL drivers/net/wan/z85230 0xeb9e9713 z8530_sync_open +EXPORT_SYMBOL drivers/net/wan/z85230 0xef60406c z8530_sync +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x62a3fcdc i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/airo 0x160bdd71 reset_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0x7c40c623 init_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0xa613c033 stop_airo_card +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x098e88a9 ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x1d6aed60 ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x1fa940fb ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x2512f146 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x319c6026 ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x3dc195db ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4e2481d5 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x53358ce3 ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x677f7bc3 ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x95716e7c ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xaee88185 ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xdcc12443 dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xdee7a41c ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xe436bae1 ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x23d30f7a ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x37633d4a ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8246be6c ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x895f9dc2 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x93d1e9a6 ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaf096710 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xbcf4b949 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe59fbb68 ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xf25eb32d ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0199ec46 ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x01eda8eb ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x048a7388 ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x051d39f9 ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x12757551 ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x27cf1694 ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x32167003 ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x36c2f86d ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4c6ddcb4 ath6kl_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4e1380ee ath6kl_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x6eae043a ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x95f3f41f ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xd6ecefbc ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xf44899c4 ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x3dcf11c5 ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x70400d55 ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x91fc76f5 ath9k_hw_wow_event_to_string +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0xf6d6aae8 ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x07d522ac ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x3d8a5d0b ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x633f9178 ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x9475f78a ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x09355a1d ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0be3a57d ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x13d5b1f7 ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x14e15473 ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x14ec1888 ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x17c3eb0f ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x18e25a22 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1b0eb865 ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1db2cfe9 ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1dbe0a85 ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1eb725f1 ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x20c64e05 ath9k_hw_cfg_gpio_input +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x236b712b ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x25110672 ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x258980b9 ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x260e8cfd ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x26508611 ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x27ae10fe ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x28e49223 ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x290378fa ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2be9f8fc ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2ec4c5a4 ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3176f28a ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3308b1a2 ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x437a806d ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x45c4a06b ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x487fa907 ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4d2cb991 ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4e2bc736 ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4f236a0f ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x51ed0bc2 ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x56239f70 ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x59d1f6e3 ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5b4c801b ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5ba6e378 ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5bb056a4 ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5d8e602b ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6167bc57 ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6447b4c9 ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x652ada1b ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x709d387b ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x71638050 ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x732d2a93 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x73cfbefc ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x744c04ab ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7496f435 ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x76be90e2 ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x78e11ce3 ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7bda7388 ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7c6702e7 ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7cbf7d52 ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7dddb3da ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x813f7604 ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x815100a5 ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8465a7d3 ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8557d559 ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x86f743db ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8822f015 ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x89b735a0 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x94dedb68 ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9aab9351 ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa1d8f3fd ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa6874b70 ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaac8556c ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xacff426f ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb8488d31 ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb88d98ea ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbb61f7d1 ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbbd21392 ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbde2647e ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc2e4144b ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc84117eb ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc8aaffdc ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcb5cea5b ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcd22f5ea ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd0dd81d9 ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd49a3d59 ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd61a6610 ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd65698eb ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd7a8107d ath9k_hw_cfg_output +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdc70cca2 ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe06559e1 ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe5e9cd18 ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe717909d ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe7b2c074 ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe83b125c ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xed146453 ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf20818db ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf4605e9e ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf490afbd ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf7acd1c9 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfab0a6be ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfc3119dd ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfc3c2e50 ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfc6ad097 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfcdad736 ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfe4fa84b ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xff809679 ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/atmel 0xb636d03f atmel_open +EXPORT_SYMBOL drivers/net/wireless/atmel 0xc7c3cd29 stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel 0xd9a44935 init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0xa0b17035 brcmf_sdio_probe +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0xafccb842 brcmf_sdio_remove +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x0fc65954 brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x27bb8bb6 brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2dc227f8 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x432182c4 brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x4623e703 brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x60ac21a4 brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x99818b0d brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xc3061b38 brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xde69c968 brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xe5cc841c brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xecde358b brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xf53fd7db brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xf6e46c97 brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xf6ffe973 brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x0ad69602 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x1df8ecbe hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x2062a092 hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x367302d2 hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x4a766515 hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x5c577a0f hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x6a6e4428 hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x6bb9a700 hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x7009f930 hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x7786f5ae hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x8fd4d4b2 hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x9dcb9132 hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x9e071ca0 hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa12ad27f hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa76cf7ae hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xae9f342b hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xaf141b83 hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb2a945e0 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb3ef9bc5 hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xca9ccf7a hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xccb69712 hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xdda58a02 hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe7617692 hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe7deaa79 prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xf5f235f4 hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xfa673776 hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xfc18b09a hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xff379234 hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x16bca300 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x2d81288a libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x2dcb1208 libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x3100fa9b libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x3eb3408a free_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x3eec4c9f libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x7fd5c1ad libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x81336bd4 libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x95342d0c libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xa4cc598e libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xab60e113 libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xaffaffb0 libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xb56bf10f libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xb6971a77 libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xca5007f5 libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xd62a4977 libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xd684e252 libipw_change_mtu +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xdb9ff157 libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xe1b20320 libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xea8d50d5 libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xee42636a libipw_rx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0a3ae3da il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0d9d345e il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x10cb39c3 il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1402b79f il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1469aec1 il_free_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x14ce731b il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1521a337 il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x18c9698a il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x20f628e5 il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x23ad3fbd il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x24b917b9 il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x26c7a8d3 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x275feab0 il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x27dffcf1 il_pm_ops +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x29b305ae il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2b52c36e il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2e3d1acd il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3087518b il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3404b3a5 il_mac_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x35795be4 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x39aef374 il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3a3cc1e0 il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3ac4624d il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3cf9e283 il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4400a6b3 il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x456602d9 il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4aa39103 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x50ce8f41 il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x52a9e938 il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x540cbdcb il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x564c6740 il_debug_level +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x59e0b9d0 il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5a19e6f8 il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5a451405 il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5df13867 il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6277e685 il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6456e3ce il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6a6b09a3 il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6c30bd3d il_leds_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6c6b4326 il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6ea20999 il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7012fff2 il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x70390353 il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x734614d2 il_set_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7378ee32 il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x74a85612 il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7941e5da il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7e8373ef il_set_rate +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8039f145 il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x82db6b25 il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8381fdf1 il_update_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x855326fc il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x87dd9751 il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8b81555e il_apm_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x920f38a6 il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x95fdf52c il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x96523546 il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9716fdde il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x99e914f7 il_init_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9bc50eb3 il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9cc65b8d il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9d954fe7 il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa01466e1 il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa1344cca _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa1512527 il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa1938846 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa1e181b1 il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa483276a il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xaafbf186 il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xab50e5aa il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xab55e46a il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xab5b4dd0 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb1a61f51 il_force_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb3767bff il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb671978d il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc1877573 il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc2898aac il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc2a00d8b il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc39cf12c il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc80214cf il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc9249152 il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcbf0bcc1 il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd1275600 il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd322b264 il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd6d64747 il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd8e50607 il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdabc5333 il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdc687fe3 il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe2047611 il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe238bee8 il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe435493a il_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe9eeae16 il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xeaa857ef il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xee230d32 il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xee5a1e00 il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xef33e6db il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf21dae22 il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf39b5a05 il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf501278b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf7c1ec97 il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfa8e69b6 il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfbfb19f0 _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfc0b895f il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x08ee1e7d __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0d9eb5ff __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0e7bc05f __tracepoint_iwlwifi_warn +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x201337b4 __tracepoint_iwlwifi_dev_tx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x249e4b06 __tracepoint_iwlwifi_dev_rx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x36dcef55 __tracepoint_iwlwifi_dev_iowrite32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x4919d1a5 __tracepoint_iwlwifi_dbg +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x67381a2a __tracepoint_iwlwifi_dev_ucode_error +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x79e9bf26 __tracepoint_iwlwifi_crit +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x7edec07d __tracepoint_iwlwifi_dev_ioread32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x8bfcc307 __tracepoint_iwlwifi_info +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x9a12c9c5 __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xc0827b2f __tracepoint_iwlwifi_dev_iowrite8 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xda36f3a4 __tracepoint_iwlwifi_err +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x02177538 orinoco_up +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x065e66b7 orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x0afd1faf orinoco_down +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x1617b28b free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x1bf27b47 orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x236754ac orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x32c86ec8 orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x71ffa100 orinoco_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x7808495d __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x79a82244 orinoco_open +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x7a778864 orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x8004d96f orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x9d0b87b4 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xb867d8f7 __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xdbb95843 orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xdcdd1433 orinoco_get_stats +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xfb02f3a4 alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/btcoexist/btcoexist 0x3c73a380 rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x02adc837 rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0d94ff1c rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x13edd6eb rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1601994f rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x198eafc8 rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1d8b05fd _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1ec7e398 rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x255a43a6 rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x31ef01ef rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x35169639 rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x358eb831 rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x37bd006f rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3c1401ef rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3e1d58cb _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x4d5233f8 _rtl92c_store_pwrIndex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x502ff952 _rtl92c_phy_dbm_to_txpwr_Idx +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x636981fd _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x6436fbb1 rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x643e37d3 _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x66c25621 rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x6b6c57bf rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x70a7b5c0 rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7b778435 rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7eb18883 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa1d0feb2 rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa339e42a rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa3d2581b rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa4e0ef91 rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa6929234 rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa9df2b55 rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xabac34f9 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xae4813b5 _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb3314d48 _rtl92c_phy_calculate_bit_shift +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xbe0303e7 rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xbf3efdc8 rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc7c77393 _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xcdfce5fb rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xcf14b62e rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd9c1c86d rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe9de0d37 rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xea8202de _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf91df269 rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x12325bda rtl_pci_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x5e555679 rtl_pci_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0xb30c12c9 rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0xee771701 rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x26e6eef8 rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x3f4b2b09 rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x620189a1 rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0xb5da6bb7 rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x04df120f rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x0ea8a54b rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x10a040bd rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x142acbb5 rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x207fbb70 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x225ddcf0 efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x331da977 rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x3f4a4b02 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x41644091 rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x450a8b51 rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x4f0c6a1e rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x5186b07d rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x61907f36 rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x79188a02 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x8a28b12e rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x9611a37f rtl_ps_set_rf_state +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xa9340056 rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xada25516 rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xdd9e8641 rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xe0fa7f3f rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xe67e2c34 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xe7699e36 rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x03199091 wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x49b5ab77 wlcore_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x6267a649 wl1271_free_tx_id +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xa05b59b1 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/nfc/microread/microread 0x59fcab20 microread_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0x9d1894c3 microread_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x4ea8a200 pn544_hci_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xc3382236 pn544_hci_remove +EXPORT_SYMBOL drivers/parport/parport 0x00147d4c parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0x0bcc496a parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0x0e90b490 parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x1069f395 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0x24564172 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x2a8622f0 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0x2c6279f4 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x3a472710 parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x4fa40bec parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x62602e8f parport_register_device +EXPORT_SYMBOL drivers/parport/parport 0x6545a01b parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x6df63b10 parport_release +EXPORT_SYMBOL drivers/parport/parport 0x7b096b77 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0x7d5755bb parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0x81bfcc21 parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0x91c3fcb6 parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0x9b5977a7 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0xa0367a37 parport_claim +EXPORT_SYMBOL drivers/parport/parport 0xa47f9fef parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0xacff8391 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xb23e468d parport_write +EXPORT_SYMBOL drivers/parport/parport 0xb8bf62c0 parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0xbcca273f parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xc098569b parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0xd3cfb131 parport_read +EXPORT_SYMBOL drivers/parport/parport 0xe3c8a034 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xe823d9aa parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xee236be1 parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0xefae5eb2 parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0xf116d756 parport_remove_port +EXPORT_SYMBOL drivers/parport/parport_pc 0x61723733 parport_pc_unregister_port +EXPORT_SYMBOL drivers/parport/parport_pc 0xbff32063 parport_pc_probe_port +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x178873d5 pcmcia_read_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x1b5bbe39 pcmcia_write_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x1dfbc706 pcmcia_disable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x44efb9c4 pcmcia_dev_present +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x4d42b3c3 pcmcia_get_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x5b850dbb pcmcia_map_mem_page +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x742f5665 pcmcia_parse_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x8ac64198 pcmcia_request_io +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x8c598c32 pcmcia_unregister_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x936e34ac pcmcia_get_mac_from_cis +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x9a3acd17 pcmcia_request_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x9a7cfee3 __pcmcia_request_exclusive_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xa3438810 pcmcia_enable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xab4a723f pcmcia_fixup_vpp +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xb4948531 pcmcia_release_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xb54839f9 pcmcia_fixup_iowidth +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xb966e94f pcmcia_request_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xcc5dc153 pcmcia_register_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xf7068baa pcmcia_loop_config +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xf87882d1 pcmcia_loop_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x10df73b4 pcmcia_put_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x212db8d2 pcmcia_socket_list +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x3932cbdf pcmcia_socket_class +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x409b3ea4 pcmcia_parse_uevents +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x6508fb0d pcmcia_get_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x8a94f35c pcmcia_get_socket_by_nr +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xaa2a8638 pcmcia_socket_list_rwsem +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xb6bd48a4 pcmcia_register_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcf97f3bd dead_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xd287b272 pcmcia_parse_events +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xe00b09b5 pccard_register_pcmcia +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xe01bf285 pcmcia_reset_card +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xe3ca6c73 pcmcia_unregister_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x84ddd105 pccard_nonstatic_ops +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x944a3b15 pccard_static_ops +EXPORT_SYMBOL drivers/platform/x86/intel_ips 0xd32b0b5b i915_bdw_enabled +EXPORT_SYMBOL drivers/platform/x86/sony-laptop 0x5bb1e117 sony_pic_camera_command +EXPORT_SYMBOL drivers/pps/pps_core 0x343c2c5e pps_event +EXPORT_SYMBOL drivers/pps/pps_core 0x647ecae2 pps_register_source +EXPORT_SYMBOL drivers/pps/pps_core 0xd19de767 pps_unregister_source +EXPORT_SYMBOL drivers/pps/pps_core 0xf7407753 pps_lookup_dev +EXPORT_SYMBOL drivers/ptp/ptp 0x2b16bfba ptp_clock_register +EXPORT_SYMBOL drivers/ptp/ptp 0x3a066ea9 ptp_clock_unregister +EXPORT_SYMBOL drivers/ptp/ptp 0x40a74555 ptp_clock_index +EXPORT_SYMBOL drivers/ptp/ptp 0x4c6d0846 ptp_clock_event +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x0c6a9a5e pch_ch_event_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x381e54e2 pch_src_uuid_lo_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x42fa3580 pch_ch_control_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x8b3cacd2 pch_ch_event_write +EXPORT_SYMBOL drivers/ptp/ptp_pch 0x9da015ef pch_set_station_address +EXPORT_SYMBOL drivers/ptp/ptp_pch 0xc40a66fb pch_ch_control_write +EXPORT_SYMBOL drivers/ptp/ptp_pch 0xc8dbd608 pch_tx_snap_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0xe6dd00ca pch_src_uuid_hi_read +EXPORT_SYMBOL drivers/ptp/ptp_pch 0xfd860d8f pch_rx_snap_read +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x0cc106dc rproc_add +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x509399df rproc_da_to_va +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x71706a1b rproc_vq_interrupt +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xb4bd8901 rproc_put +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xc75eb25b rproc_report_crash +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xe3598853 rproc_boot +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xe5d1b1df rproc_del +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xf7888e36 rproc_shutdown +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xfe4f6fcf rproc_alloc +EXPORT_SYMBOL drivers/scsi/53c700 0x01edd13c NCR_700_release +EXPORT_SYMBOL drivers/scsi/53c700 0x3d9cece0 NCR_700_intr +EXPORT_SYMBOL drivers/scsi/53c700 0x625839de NCR_700_detect +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x1761d09c fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x583518fb fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x5c6ae52b fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x6305736b fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x6523750a fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x659a9c2d fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x6ff20914 fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x8c7172e9 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xd6e671b8 fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xdbe21666 fcoe_ctlr_destroy_store +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xe7b425c9 fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xeceb902a fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0068c7c7 fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x02e41a1c fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0801941a fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0a83171d fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0d54adf5 libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0d90730d fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x114547e3 fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1580ae01 fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1f6930ee fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1fcd5271 fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x27cdec3a fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2a1bee2c fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2ab643cd fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2e327738 fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36779fee fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36e5fbaf fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x379ff3d0 fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3c3be722 fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x55eb0016 fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x643a4fe6 fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x66b475bd fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x67949881 fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x71cee485 fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x760387a9 fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x77d7e971 fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7b7c7251 fc_change_queue_depth +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7f7b95a5 fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x86b70f29 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x876dc27f fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x90e38998 fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9121724c fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9d62adff fc_change_queue_type +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9e66c5c2 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9f60e2e2 fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa039f536 fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa55e6526 fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa79fd64b fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xaa4d2603 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb366e2de fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb42d26e3 fc_rport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb74a056f fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xba36bfb5 fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbae51c7e fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbb07dc13 fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbf5eacc9 fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc47445d5 fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc57588de fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe2afbae9 fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xec296349 fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf4385bc4 fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf948ceee fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfd8e6d34 fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfdbc20aa fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x1b7091b9 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x7f719905 sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8a87e724 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8baf748f sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xd945d246 sas_wait_eh +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x2250c66e mraid_mm_adapter_app_handle +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x512c956d mraid_mm_unregister_adp +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x79b8ad66 mraid_mm_register_adp +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x043d557f osd_req_add_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0c17edb1 osd_sec_init_nosec_doall_caps +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x1dc0b489 osd_req_add_set_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x1e4534c8 osd_req_format +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x279bc90b osd_req_write_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x29a37ffa osd_dev_fini +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x308eb33e osd_req_set_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x3b2cbd28 osd_req_get_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x3f38923a osd_req_flush_collection +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x48053a10 osd_req_read_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x49642ef9 osd_start_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x53120697 osd_req_read_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x57c3fde2 osd_req_list_partition_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x619cf54f osd_req_list_dev_partitions +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x69e49230 osd_req_list_collection_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x6ccd7b0c osd_req_create_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7260a60a osd_req_list_partition_collections +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7b97de85 osd_dev_init +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7e886409 osd_req_read +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x87c3f411 osd_req_decode_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8f3d2407 osd_end_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x91d2730e osd_req_flush_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x91ecc322 osd_auto_detect_ver +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x96a9eb9b osd_req_add_get_attr_page +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x971f7835 osd_req_read_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x978f330e osd_req_flush_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x979d6218 osd_req_remove_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xa6903009 osd_req_write +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xa6a8f974 osd_req_decode_sense_full +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xb623f4a8 osd_finalize_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xb99b82e3 osd_req_write_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xbe9af4d0 osd_req_create_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc1b9996f osd_req_write_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd841481b osd_execute_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xea0a095c osd_execute_request_async +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xf0d46fe6 osd_req_flush_obsd +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xff187a75 osd_req_remove_object +EXPORT_SYMBOL drivers/scsi/osd/osd 0x17ab7162 osduld_register_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x19ee949f osduld_put_device +EXPORT_SYMBOL drivers/scsi/osd/osd 0x31577d4e osduld_path_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0x5fc48609 osduld_unregister_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x9c2e9358 osduld_info_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0xcca62479 osduld_device_info +EXPORT_SYMBOL drivers/scsi/osd/osd 0xf660963b osduld_device_same +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x25d1b720 qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x42b791b7 qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x49958a02 qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x49b9bf9c qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x54b6d4a7 qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x5c241c39 qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x60bd53d3 qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x69e452af qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x8c4dd6a7 qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xb6961072 qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xcf1984f0 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x1f55cd70 qlogicfas408_ihandl +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x2aa58bad qlogicfas408_abort +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x31ce6780 qlogicfas408_disable_ints +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x3fd8cd71 qlogicfas408_detect +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x40c878a6 qlogicfas408_queuecommand +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x45b736d0 qlogicfas408_info +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x4d9c8b06 qlogicfas408_bus_reset +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x77ed0ee2 qlogicfas408_biosparam +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xe76b3b20 qlogicfas408_get_chip_type +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xf2b95199 qlogicfas408_setup +EXPORT_SYMBOL drivers/scsi/raid_class 0x37212bc3 raid_class_release +EXPORT_SYMBOL drivers/scsi/raid_class 0x8c720e3e raid_component_add +EXPORT_SYMBOL drivers/scsi/raid_class 0x935001c4 raid_class_attach +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x0856d7c5 fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x186f5cec fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x293f7544 fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x2c642c85 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x3cebefd2 fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x4c30e566 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x5ab00f5b fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x5b1f0178 scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x66678ad8 scsi_is_fc_vport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7954b1ea fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x89047ee1 fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x9e420537 fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xaee1b4ec fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xb7ffe293 fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0038acda sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1973159b sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x21e0f19a sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x25a654e7 sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2b7df046 scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2df00541 scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x33ae554b sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x36f7599c sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3a99bb1a sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x45350e19 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x49fec7dd sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x541530b5 sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x566efb18 sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x61f97f81 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x683476a0 sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x73469cb3 sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7ea9fb7b scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x8bf0469d sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x9895f8e8 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x9b36dc23 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb2fe80ce sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb8df96f6 sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xcc6448d9 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd40d16c9 sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd9576178 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xded85a6d sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe5d68a9d sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xea7b488c sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x1916cd85 srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x1a3deda2 srp_rport_put +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xa10e1c46 srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xbcd53162 srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x2a72b980 ufshcd_runtime_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x7d8c5fbc ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x91f33544 ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x09d9ec47 __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0x0a3f3d72 ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x1098c718 ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x2aa3b093 ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0x30c44985 ssb_bus_pcibus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x4bbff591 ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0x55b411ea ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0x6e4cc8dd ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0x746f7937 ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0x759a456d ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x7a249f1b ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x8c51cf4f ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0xa65a325a ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0xb4e024a8 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0xb9023636 ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0xbb2aa2e6 ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0xc0512e0f ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xc44077ea ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xc60a9333 ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xc70e2a73 ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xd481192b ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xe9edd15c ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0xf8f0fff4 ssb_bus_resume +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0x10b2bb6d fwtty_port_get +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0x395e850d fwtty_port_put +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x512e8eec adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0xd5a9e515 adt7316_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x893c23ee ade7854_probe +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0xe49825f3 ade7854_remove +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x08963eac lnet_set_reply_msg_len +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0bce7eef lnet_counters_get +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1366b7ac LNetSetLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x19670622 LNetNIInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1a343039 lnet_set_ip_niaddr +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1b191752 lnet_msgtyp2str +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1fe16fd5 LNetGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x204b8151 lnet_counters_reset +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2aa9953d lnet_cpt_of_nid +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2ac93e90 lnet_connect_console_error +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x33202a6c LNetGetId +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3558e584 lnet_iov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3c779ee0 LNetPut +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3f4f5b46 LNetNIFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x473ad33b LNetDist +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x4bb00492 lnet_copy_iov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x4f9cb871 lnet_extract_iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5811a721 LNetInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x58a1ca89 LNetMDUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5b9219de lnet_parse +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5fee352c lnet_acceptor_timeout +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x61f784b2 LNetClearLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x64cdea3a LNetCtl +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x6f7be171 LNetEQGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x722c76e5 LNetMDAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x75e9dd64 lnet_unregister_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7613ee8a lnet_connect +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7876c2a2 lnet_net2ni +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7d59a7fe LNetMEInsert +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x854ab844 LNetEQWait +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8a3064f2 LNetSetAsync +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8c59265c lnet_finalize +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9de986d3 LNetEQAlloc +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa8c2760b LNetFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa414970 LNetMEUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa9b477e LNetMDBind +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xae3e5d21 lnet_notify +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb75f7953 LNetEQFree +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xba5566d2 lnet_acceptor_port +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xbf0760a2 LNetMEAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xc4048ee9 the_lnet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xe26ce9a9 lnet_extract_kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xe7154bcb lnet_copy_iov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xeb14c248 lnet_copy_kiov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xeb979cfc lnet_copy_kiov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xed11056d lnet_kiov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf1b316bf LNetSnprintHandle +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf3aaaf8a lnet_create_reply_msg +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf72788a5 lnet_register_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/selftest/lnet_selftest 0x078db139 lstcon_ioctl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x02fcfde0 seq_client_alloc_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x1c4bb5f9 LU_OBF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x375e6f8d LUSTRE_BFL_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x4ae51fbb seq_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x4fe0e9fe seq_client_get_seq +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x62715cee client_fid_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x80bd70d2 client_fid_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x9906ae70 seq_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xa76c2f77 seq_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xae61cff5 LU_DOT_LUSTRE_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xc997a02f LUSTRE_SEQ_SPACE_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xecee2727 LUSTRE_SEQ_ZERO_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x07382fe8 fld_client_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x09a0e5df fld_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x274aebc7 fld_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x8317098b fld_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xaabc06f8 fld_client_del_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xcd1872af fld_client_proc_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xd4742d36 fld_client_add_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x000c507f libcfs_debug_dumplog +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x01db5172 cfs_percpt_atomic_summary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x03387ca6 cfs_curproc_groups_nr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x041282f5 upcall_cache_flush_all +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x04d3ce6a lbug_with_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x069f9bb2 cfs_wi_schedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08ada613 libcfs_console_backoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0b4b1546 libcfs_lnd2modname +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0bcf6420 libcfs_sock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0de6c369 cfs_cap_lower +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0e4820ab cfs_percpt_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0f5eff79 cfs_percpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x108d2e2b cfs_percpt_lock_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x117c8a95 cfs_cpt_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12426266 libcfs_run_lbug_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x134f8d2f cfs_crypto_hash_update_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x15565c7f cfs_cpt_set_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x17ac7833 libcfs_deregister_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x19b06de7 cfs_hash_size_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1a60d439 cfs_parse_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1c12bd83 libcfs_sock_abort_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d5a3928 cfs_timer_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x220c6948 cfs_hash_debug_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x23f6f445 cfs_restore_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2557589f cfs_hash_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2589f0af cfs_hash_rehash_cancel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2663147a __cfs_fail_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x269c8e8a libcfs_sock_getaddr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x27b6d3ba cfs_ip_addr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2b1e0458 cfs_get_environ +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2dbe54b2 cfs_trimwhite +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2efcc0e6 cfs_block_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x30986343 cfs_range_expr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3195db71 libcfs_kkuc_group_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x31fc5082 cfs_crypto_hash_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x377f93fb cfs_srand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3791e0c9 cfs_hash_bd_add_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3834f243 proc_call_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x38828b92 cfs_cpt_unset_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x389ca502 libcfs_debug_mb +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3962e3ee cfs_race_waitq +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x39fdcd2b libcfs_debug_set_level +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3a62a183 cfs_cpt_set_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3c1285bd libcfs_subsystem_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3d5e6098 cfs_race_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ea730c0 cfs_gettok +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ef0d90c libcfs_kkuc_group_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3f0d9281 cfs_wi_sched_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4087f890 cfs_hash_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x411db754 cfs_crypto_hash_final +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x413056d8 cfs_cpt_weight +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x41ab33a1 libcfs_ipif_free_enumeration +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x42e22feb cfs_cpt_table +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44688a0a cfs_block_allsigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44839bbb cfs_rand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44f07cfc cfs_pause +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x47fdb4d1 cfs_timer_is_armed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x48f163c6 libcfs_str2anynid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x493a5cb4 upcall_cache_put_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4947bd6b cfs_hash_dual_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x496b3c4f upcall_cache_get_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4a99af72 cfs_clear_sigpending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4d89e988 cfs_block_sigsinv +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4f1f2fa5 cfs_crypto_hash_digest +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x50345570 libcfs_str2net +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5051b6d2 portal_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x509d38b0 libcfs_net2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x52e9cfc1 cfs_cpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x53b383e4 cfs_cpt_unset_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x54fd9a71 cfs_percpt_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x56a9381d libcfs_sock_getbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x58a7ee00 libcfs_catastrophe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5946ec2b cfs_percpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5c013b81 cfs_expr_list_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5ce62c0e cfs_cpt_table_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d3be65a cfs_crypto_adler32_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d73c3e3 cfs_expr_list_free_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5dce9e80 libcfs_lnd2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62289d65 cfs_array_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x64685fef libcfs_console_min_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6564c55b libcfs_console_max_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x65dd9f0c libcfs_run_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x65e2b9d3 cfs_hash_rehash_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x66136d2d cfs_timer_arm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x67398404 cfs_wi_sched_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6756a801 cfs_hash_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x68497dbf cfs_cpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x687788c4 cfs_percpt_lock_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c605eaa cfs_cpt_unset_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c905b5f libcfs_watchdog_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6cf325d6 upcall_cache_flush_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6dfa9ea1 cfs_crypto_adler32_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6e6af71c current_is_32bit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6f928e1b libcfs_debug_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6ff4020b cfs_hash_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71d7b2fa cfs_hash_cond_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71f662a3 libcfs_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x74dde658 cfs_hash_dual_bd_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x752858fb cfs_cpt_table_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x75ab3a0b cfs_hash_debug_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x78a4469a libcfs_sock_setbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a3d49ae cfs_expr_list_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7b0b748a cfs_ip_addr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c7986cf waitq_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7d93cded cfs_cpt_of_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7e6f6485 cfs_ip_addr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7fda989d cfs_fail_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8151c3aa cfs_cap_raised +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x819de1a2 libcfs_sock_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x83d795e4 cfs_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x842864cd cfs_hash_dual_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x857aaea7 libcfs_register_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x89e0937b cfs_hash_for_each_safe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c85e4e6 cfs_crypto_hash_speed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8e61d47b cfs_cpt_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8eef69ba cfs_hash_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f12bb52 libcfs_log_goto +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f45f10d cfs_init_timer +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x904c4251 cfs_hash_getref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x91504e8b libcfs_kmemory +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x940ed192 libcfs_stack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9548a4f1 upcall_cache_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x95620e8c cfs_wi_deschedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x978b5836 cfs_hash_rehash_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x97ab5498 cfs_hash_bd_peek_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x97b0b9bc cfs_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9879b229 cfs_get_random_bytes +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9e7f907a libcfs_kkuc_msg_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9f82f712 cfs_trace_copyout_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa0ddfce7 cfs_hash_bd_move_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa2b68b2a cfs_array_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa4522d96 cfs_hash_is_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa4d43b13 cfs_hash_del_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa6b9dee6 libcfs_kkuc_group_rem +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa711aec5 cfs_cpt_table_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9088531 cfs_expr_list_values +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9dc74e2 cfs_trace_copyin_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9eae690 cfs_str2mask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xaaf59b75 cfs_cpt_set_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xab887583 init_waitqueue_entry_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xad019238 cfs_str2num_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb43456f1 cfs_percpt_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb53b5569 cfs_cpt_spread_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb883b006 cfs_percpt_atomic_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb8897bad cfs_percpt_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb9c87f94 cfs_hash_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbada117b cfs_cpt_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb59ad6e cfs_hash_findadd_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb9cb508 cfs_curproc_cap_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbd5d492e cfs_timer_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbefb6c3c cfs_hash_dual_bd_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbf013175 cfs_hash_rehash +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbf7a37f1 cfs_signal_pending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc0d9aa99 libcfs_sock_listen +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc0ea7fc0 cfs_expr_list_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2911d96 cfs_expr_list_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2dfd791 libcfs_console_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc39fd2f9 libcfs_panic_on_lbug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc3eb614e libcfs_ipif_query +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc47433a6 cfs_capable +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc49b1c62 cfs_percpt_atomic_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc53890de add_wait_queue_exclusive_head +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc77a24c3 cfs_cpt_set_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcaf67fef libcfs_sock_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcb385db9 libcfs_debug_binary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcbab8493 schedule_timeout_and_set_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcc195787 cfs_hash_dual_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcc20e694 libcfs_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xccc45639 cfs_free_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcd38904c cfs_wi_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xce1a88f2 libcfs_arch_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf16bbf5 libcfs_sock_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf61bacb __cfs_fail_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd0d8d08a cfs_cpt_unset_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd2037eb5 cfs_hash_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd217e869 upcall_cache_downcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd2db9312 upcall_cache_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6a52be3 libcfs_printk +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd9541990 cfs_strncasecmp +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd96f406d cfs_cap_raise +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdb92f14c cfs_hash_add_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xde17bb8d libcfs_isknown_lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf2789c0 cfs_curproc_cap_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdffc951d cfs_timer_disarm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe1224965 cfs_hash_for_each_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe2da56ad cfs_hash_hlist_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe3bf6897 cfs_percpt_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe6555032 libcfs_ipif_enumerate +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe7202360 cfs_hash_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe7b54314 libcfs_arch_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xea8b46c8 cfs_hash_dual_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xec1f56d5 libcfs_str2nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeca4d884 cfs_hash_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeccafa5c cfs_cpt_online +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeceac781 cfs_fail_val +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xedf3a25a cfs_timer_deadline +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xee28e153 cfs_hash_for_each_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf2c02048 cfs_cpt_bind +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf372d1c2 cfs_firststr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf38927af cfs_hash_bd_del_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf40279f5 upcall_cache_flush_idle +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf440bb38 libcfs_kkuc_group_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf55b879e libcfs_sock_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf79d9217 cfs_hash_for_each_nolock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8a8644b libcfs_id2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8efb8c5 waitq_timedwait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf94025d1 libcfs_str2lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfe565fa9 cfs_crypto_hash_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfe5c8c6b cfs_hash_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xff0f98a6 libcfs_debug_vmsg2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x362ac44f ll_direct_rw_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x5e7fe2a3 ll_stats_ops_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xcd3cde92 ll_iocontrol_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xcd7e9ff9 ll_osscapa_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xe18ebd76 ll_iocontrol_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x001145de lov_read_and_clear_async_rc +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x06465a20 lov_stripe_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x37864f1f lov_stripe_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x38c0f541 lov_lsm_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x905ef98d lov_device_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xfbb3924f lov_lsm_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x1969e3d9 fsfilt_register_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x388b3263 lprocfs_counter_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x758503c4 fsfilt_get_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x91edfb23 lprocfs_counter_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x93d191ec push_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xa5992178 obd_memory +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xa644e36b fsfilt_unregister_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xb1c2d8e5 lustre_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xb3d4d0cf lprocfs_stats_alloc_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xb4f8ee63 lprocfs_read_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xdf295b0e l_dentry_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xeca1eb77 fsfilt_put_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xf0c694c1 pop_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x14a47f31 it_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x9c22b84f it_open_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xb57d8447 it_set_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xf46a886f it_clear_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mgc/mgc 0xdc287f95 mgc_fsname2resid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0035863f lu_context_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x00555372 dt_store_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x00d52ba2 cl_io_iter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01322cc9 class_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x013e1bdb lu_context_key_degister_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01665e34 class_parse_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x018cfd57 lprocfs_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x02bae46b lprocfs_wr_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x035852d0 lustre_swab_llog_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05321dde cl_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x056f2043 lustre_common_put_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x057f6d4b class_find_old_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05af1920 dt_quota_glb_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05bb7331 class_conn2export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05f84e88 LU_BUF_NULL +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0602716a local_file_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x062471e0 capa_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x06f941f7 cl_page_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x072aa29f cl_page_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07477592 lu_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07aa68bb lustre_swab_lustre_cfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x083942ff class_del_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0976a9f8 cl_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x09db3093 lprocfs_rd_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0a03571f lu_object_anon +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0a613bca lustre_register_client_fill_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b1b0851 llog_osd_put_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0bbe5fd8 cl_env_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0cf37494 class_import_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0cf99bff dt_acct_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0da417ee class_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0dcc33ec lu_ucred +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0e409a9d lprocfs_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0e4adda4 md_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0e90b52e dt_txn_hook_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0ecc1ba6 cl_env_unplant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f0cef7f cl_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f740eb9 lu_context_key_quiesce_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fc30caf cl_lock_user_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fd8471d cl_object_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fe91547 obdo_to_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1001e2b9 class_num2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x10b30c9d lprocfs_init_ldlm_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11495519 lprocfs_write_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x116ef399 lprocfs_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x123332a0 obd_llog_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x12511cf5 llog_open_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x131fe31c cl_lock_disclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x13ad3323 cl_page_own_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x14002768 cl_sync_io_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x142ee5b6 class_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1491dc30 lu_context_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x154e2b4d cl_lock_unhold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x158a2f28 cl_page_list_move +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1630d6c6 class_disconnect_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x16a3e760 llog_cat_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17260880 obdo_cpy_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1763efd0 cl_page_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17f6183f lustre_idmap_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1995087e lprocfs_exp_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1ab9cdb8 llog_exist +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1ad2899f cl_enqueue_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b0bdf1b cl_page_make_ready +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b3feea8 cl_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b5e7245 cl_object_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b7f8306 iattr_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1c109a94 lu_context_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1c28666d lu_object_find_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1c2cdd02 cl_lock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1cb0a2aa cl_lock_hold_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1cf8b56b lustre_register_kill_super_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1dec31ca cl_io_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x203c2e82 llog_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21307495 lu_buf_check_and_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21698457 lu_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x221826f1 class_parse_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x23045fc6 cl_2queue_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x23214207 cl_io_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x235bc0ac cl_lock_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x239a41f0 local_oid_storage_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2477ce1a dt_index_walk +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x24b2251a llog_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x24f7e641 cl_pages_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2547efae lustre_uuid_to_peer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x259ebac6 obd_alloc_fail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x260e4fdb cl_lock_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x275cdc7a cl_env_reexit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x284be5ea lu_kmem_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x28a79c0c class_search_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x297cf5e0 class_handle2object +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ae12197 cl_lock_mutex_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ae1cd79 kuc_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2b4c48e9 server_name2svname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2b8f1b4e cl_2queue_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2bf1e4c3 cl_io_iter_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ca38eb9 cl_io_loop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ce2a36a cl_object_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ce8f1e3 dt_record_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d09d3a1 capa_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d3895fe dump_lsm +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x31dbfdc7 obdo_from_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32173e4c lprocfs_rd_server_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32848146 llog_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3538da12 dt_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x35526d19 lprocfs_oh_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x356d72fc lprocfs_add_simple +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x36c7aef9 cl_page_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x36e467c9 cl_page_clip +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37ed6e4b at_early_margin +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x386d12d5 cl_page_list_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38eee7d1 cl_object_glimpse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38fb0c90 class_match_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x393cd8ee capa_cpy +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x39948b23 cl_lock_hold_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x39d0bc8b dt_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a005065 dt_otable_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a58f887 cl_page_list_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3c3fd407 cl_lock_user_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d1ef298 obd_exports_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3db00f0e llog_declare_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3eb40773 llog_cat_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ec43898 cl_lock_state_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3f1919b2 class_manual_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x400b9076 cl_page_list_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4022559d cl_locks_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x40805930 lu_env_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x41039865 cl_io_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x41864a8a lprocfs_add_vars +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x41fd00c5 llog_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4221a1ba lu_object_put_nocache +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x42caf70e lprocfs_rd_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x42f9eea0 cl_page_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x430b2725 lprocfs_rd_u64 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4373ec53 lu_object_assign_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44117860 dt_locate_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44d87a04 cl_lock_enqueue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44e41abb lustre_posix_acl_xattr_filter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x474ed5bd lustre_swab_ll_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4760779c lustre_idmap_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x476f33f4 cl_io_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47b35f7d statfs_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47ef5e84 cl_lock_descr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x484d326f cl_sync_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48605d4c dt_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4873bc0b cl_page_list_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x487cf52f lustre_end_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x488c0056 lprocfs_wr_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x494cfb52 lustre_acl_xattr_merge2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a0f6ea lustre_posix_acl_xattr_2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a29223 lprocfs_find_named_value +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49d236ef class_uuid2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49eda8d2 cl_page_list_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ac58713 obd_connect_flags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4b8f88e7 cl_unuse_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4bf9a5f4 lu_object_invariant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c26372d cl_lock_closure_build +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c27933d cl_page_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c65cd57 cl_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c8de3e9 class_unlink_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d13458b kuc_len +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d971eac cl_lock_is_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4dbb306b lprocfs_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4dde7bd4 lprocfs_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4e609e48 class_exp2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4f39a439 cl_page_gang_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4f80f495 cl_page_list_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4fba4346 dt_directory_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4fe114ff cl_lock_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x501aa303 cl_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50c17fae lu_dev_del_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50c7fc36 ptlrpc_put_connection_superhack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5212eacf cl_lock_weigh +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x522fa64f class_config_parse_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x52b6c916 cl_page_cache_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x53a64a32 llog_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54885f87 ldlm_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x558bec27 obd_ioctl_getdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5639e179 cl_page_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x564e9d44 init_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x56a53a16 lu_device_type_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x570d09ae lustre_swab_lu_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x57bc09d1 lustre_process_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x58943719 dt_try_as_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x58a97649 cl_wait_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x58c55376 cl_env_nested_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x59758589 llog_obd_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a20d896 obd_memory_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a4b29b7 cl_lock_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a866f41 lu_context_key_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bc022c5 lprocfs_dt_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5c763a90 dump_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5c99229c lu_object_add_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d34ae0d cl_lock_mode_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d3f5aa2 lprocfs_stats_collect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d7c14fb llog_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d8f7ed2 class_register_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e1f7c42 lu_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ec3d7a4 lprocfs_at_hist_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ed188a9 lprocfs_add_symlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5f45047b lu_site_init_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fe97b73 block_debug_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60e8f83b cl_io_is_going +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x61696a8e cl_page_list_splice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6265ebd9 cl_page_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x62fc058d cl_lock_extransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631a518d mea_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631fd7b9 lustre_ext_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x63aa47a7 class_name2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x63b23aff cl_page_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x640a7387 dt_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x64b9fab1 cl_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x64d9d067 cl_page_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x659d6c24 cl_lock_signal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x65d2b993 class_handle_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x65ed759c lprocfs_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x65ef2abf cl_lock_closure_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x665687dc class_export_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x667b7448 lprocfs_alloc_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x66e5e2df lprocfs_single_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67221e71 lu_device_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6734adbd lprocfs_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67428fce lprocfs_oh_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x675c3c05 class_devices_in_group +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x677fd7f9 proc_lustre_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67977b42 lprocfs_remove_proc_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67a588aa lu_env_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67a90622 la_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67dc223a lprocfs_remove +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x68734720 llog_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6890d175 lustre_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69c42114 at_min +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6b090fe5 cl_page_list_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6bb6d421 lu_buf_realloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6bfa9bcc lu_object_find_slice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c5d5d2a dt_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6d739c63 llog_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6da2d59f lustre_in_group_p +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6e024c36 lu_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6e162d42 cl_page_is_vmlocked +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f0e3cf4 lu_context_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f3e6225 dt_quota_slv_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x70c225d9 dt_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x71bdbdbc llog_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72457956 lu_cdebug_printer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x724d9a7b lu_context_key_revive +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72b33a90 dt_txn_callback_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72ddee4c obdo_le_to_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7391f403 cl_lock_at_pgoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x742559b1 class_unregister_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x752f71a8 class_get_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7535371c dt_txn_hook_commit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x754961d2 class_put_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x756a77f3 class_parse_nid_quiet +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x772c51d5 lprocfs_free_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x778b0c07 cl_object_attr_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77d2089a class_name2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7802fcd7 lustre_swab_llogd_conn_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x781a9c84 lprocfs_nid_stats_clear_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7849106b cl_offset +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x789796a1 obd_zombie_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x78a70bb7 cl_object_has_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x78ece2b7 cl_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x78f3da4d cl_io_lock_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x798749a8 obdo_to_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7998c607 cl_io_submit_rw +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x79d609de lu_dev_add_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x79d9b293 cl_io_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7a3c1082 lu_context_enter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b4fc57b at_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7c4ba060 obdo_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7c6bc240 cl_object_kill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7d6d2afa cl_io_prepare_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7dbc9096 lprocfs_nid_stats_clear_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7edcafa0 cl_env_reenter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7ef66ea0 lu_ucred_assert +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f07fd1c lu_context_key_quiesce +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fad7291 raw_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fc38d1a dt_txn_callback_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fe5561a obd_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x80036901 dt_version_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8031efb8 lprocfs_dt_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x803dca13 cl_conf_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x806cc497 class_add_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x80d8350b cl_unuse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8116c7b1 cl_2queue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8121d769 llog_declare_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81742d89 obd_ioctl_popdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x82028297 cat_cancel_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8231afe2 lprocfs_init_mps_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8252dd56 cl_page_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8315f877 class_handle_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x831f656c class_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x834aeaab lu_object_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x838de5c4 cl_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x844b28cb lprocfs_rd_conn_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8489f086 obd_alloc_fail_rate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x849e5385 obd_update_maxusage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x84a737a6 llog_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x84b24b5b lu_object_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x84e16d37 cl_req_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x86b744c8 local_object_unlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x88c4fcdf lprocfs_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x89651860 cl_lock_modify +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x89a14feb lu_object_locate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x89e3df6b class_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8aa2c358 lprocfs_dt_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b398ee1 local_oid_storage_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b442024 local_index_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b5f4057 lu_context_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ba48696 llog_cat_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ba6e479 lustre_swab_lu_seq_range +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8c74a31f class_disconnect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8d8357c3 cl_page_find_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f67314c obd_dump_on_eviction +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x90d19cf1 class_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x90da3ba3 obd_export_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x91620fd8 cl_lock_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9167b434 cl_2queue_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9240cf47 cl_object_attr_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92e58479 obd_dump_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93466eaa cl_page_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9361bb8a cl_lock_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93b46468 lu_session_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x94bb0c6b class_exp2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9512d507 lustre_acl_xattr_merge2posix +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95190e43 lu_context_key_revive_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x955f5220 ldlm_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95735c6c at_extra +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95ec998a lustre_groups_sort +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x97185935 dt_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9767adce class_uuid2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x97c52e6a lprocfs_free_per_client_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x97d03783 at_history +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x996086b7 lprocfs_free_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x99874fa8 cl_lock_get_trust +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9a4f6a51 lprocfs_rd_numrefs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b1ed9d8 obd_jobid_var +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b48b989 llog_cat_cancel_records +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9c821802 llog_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9cfef9db class_new_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9d6316a1 cl_lock_enclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9d9b9e00 lprocfs_exp_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9dbb17b6 lprocfs_dt_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9dfab656 lu_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9eafcbf8 class_config_dump_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9f9bb56b cl_object_attr_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9fa45f4a cl_lock_descr_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9fbf1d2a cl_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9fdbfd11 lprocfs_rd_timeouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa0c582be cl_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa101dd88 llog_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa1562b3e cl_lock_closure_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa209607a lprocfs_counter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa21c5ea1 obdo_from_la +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa28d30e0 cl_sync_io_note +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa2e74514 cl_req_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa323e783 llog_cancel_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa3f7e055 llog_declare_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa4a38517 cl_2queue_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa513f7e4 lustre_groups_from_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa53b9e8b cl_page_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa551b8db lu_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5fb234f lprocfs_write_frac_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa61f4a23 lprocfs_rd_connect_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa674c241 kuc_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa689b967 lu_context_key_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa704bf9a lustre_idmap_lookup_uid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa886cd95 cl_lock_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8a8f264 cl_lock_discard_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa987f2f3 lprocfs_seq_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa9cfb422 cl_page_unassume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa21b7a0 lustre_register_quota_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa9d7f65 dt_declare_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaaec2d58 obdo_refresh_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xab2b5441 lprocfs_init_ops_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xab409b74 lu_context_key_degister +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xab644285 cl_page_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabf45922 capa_decrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac57efda llog_init_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac7a5195 lu_device_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac7f1596 kuc_ptr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xadca221a cl_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xae78f5ab cl_req_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaef39e45 class_fail_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaf46fa9f class_disconnect_stale_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaf9e8a3a class_connected_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb01963a6 class_uuid_unparse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0270de4 cl_io_read_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0500022 lprocfs_obd_rd_max_pages_per_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0b7066c lu_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0fb9886 cl_lvb2attr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb11e828d cl_lock_nr_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1b89b6d class_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1d170c2 class_process_proc_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb31be326 cl_page_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb3fd52ef cl_req_page_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb41998cd lustre_cfg_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb454a45a llog_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb614569e lprocfs_register_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb68a04ca lprocfs_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6ba5dd5 kuc_ispayload +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6c89350 lu_env_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6ceef82 lu_site_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6e7f604 cl_lock_is_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb726a097 llog_thread_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb72de8e1 lu_site_purge +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb730cf27 lprocfs_rd_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb7364b08 __llog_ctxt_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb743ec6a dt_mode_to_dft +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb859a295 cl_page_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb8d6c075 cl_env_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb933242d llog_cat_declare_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb960cbf8 cl_use_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb9ec7e5a cl_env_implant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba082bc6 class_config_llog_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba533e93 dt_txn_hook_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba985283 lustre_register_client_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbacac922 lprocfs_write_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbb433d25 lprocfs_free_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbc12bc6b cl_io_submit_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbc77a105 lu_env_refill_by_tags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbe16d43e lprocfs_alloc_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbe23c697 cl_lock_mutex_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbe75c739 lu_object_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbe9b81bd cl_page_list_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbed26d2e cl_2queue_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbeda7494 cl_lock_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbf1dd361 dt_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbf3f1637 class_export_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0111ba5 obd_export_evict_by_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc03c3e7d cl_object_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0bf7ef2 obd_debug_peer_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc1f73324 lu_ucred_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc2960f44 cl_lock_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc2f96218 lprocfs_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc31c3145 cl_lock_hold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc47dd873 cl_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc4c2967e lprocfs_oh_tally_log2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc598c406 cl_io_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc5b30b29 local_file_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc63d0a09 class_new_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc64d0050 llog_cat_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc6b3899f lprocfs_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc7017e6d lprocfs_alloc_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc72257b0 capa_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc78819d3 cl_io_sub_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc7add45a cl_type_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8148152 dump_lniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc85ec763 cl_req_page_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8cab514 cl_queue_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8dbaa87 lustre_swab_cfg_marker +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc907016c class_import_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc9b3c667 dt_lfsck_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb0ab67f obd_max_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb953322 cl_page_is_owned +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcc6e3e70 cl_io_commit_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcc913b64 lustre_idmap_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcc9cbbe4 dt_lookup_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xccf7a8de obdo_cpu_to_le +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd7537ee get_devices_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd8a604e lu_buf_check_and_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcdee5dcc dt_index_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xce2e92fe cl_io_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcedb140a obdo_cmp_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcf307a0e cl_lock_mutex_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcfb7dea9 obd_devs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd032467a capa_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd0513b5c cl_env_nested_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd05d01a0 obd_llog_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd08827c0 server_name2fsname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd08d28b8 lu_context_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd0b6995d lu_buf_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd10aa042 lustre_swab_llog_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd15ff0a4 llog_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1b1478b cl_attr2lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1f58645 lustre_swab_llog_hdr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd26eb576 cl_2queue_init_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2775189 cl_io_rw_advance +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2a1f19f cl_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd40b8e49 obdo_from_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd432c681 class_find_client_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd436fb35 cl_io_lock_alloc_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd539445b lustre_idmap_lookup_gid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd65a947c cl_req_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd6b8b575 llog_copy_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd70fe669 lustre_swab_llogd_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bc8654 obd_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bfbc9c lprocfs_dt_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7f7b340 cl_lock_mode_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd86ca520 llog_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd89a3795 obdo_from_iattr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd9d55333 llog_cat_init_and_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda1ef223 cl_page_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda5b1ced class_find_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdac644c8 lustre_posix_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb13dce1 capa_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdbb1058b class_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdbb23f7f cl_vmpage_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcc40af0 class_check_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd40a7dd lu_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd78c0c7 lu_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde7d985b obd_dirty_transit_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdec01f75 llog_osd_get_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe028cf84 capa_encrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe17acbcc cl_page_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2eb4470 class_get_next_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe31c80e4 cl_req_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3323f5d class_handle_free_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe34dff61 llog_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe34ec804 lprocfs_rd_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3e5ba8d cl_page_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe45096cc dt_record_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe4b91f2a lprocfs_rd_num_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe5a45c52 cl_page_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe5b51eb6 dt_store_resolve +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe678e778 cl_io_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe71caf1c cl_page_list_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe78b620c lu_object_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7d83236 cleanup_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8e5061d llog_cat_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8e84c32 class_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8efe50f cl_env_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe986a8ca cl_io_rw_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe9c292bb lprocfs_seq_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb3f388a _debug_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec3f06b3 cl_page_vmpage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec52dcc4 class_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec7d6b85 obd_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec908278 lprocfs_obd_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xecb0ac92 lprocfs_rd_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xedbee74a lu_kmem_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee68bc29 lu_session_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee9e9a06 class_conn2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeeeb79fa do_lcfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xef76f858 block_debug_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf01e2527 server_name2index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf035c717 lu_device_type_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf0772d53 cl_env_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf0d6a7e4 cl_page_is_under_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf1741881 lu_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf1f41841 lprocfs_clear_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf268fdc4 lu_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2e3ca3e lu_context_key_register_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2fd6695 statfs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3999759 lprocfs_rd_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3f08504 lustre_idmap_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf441c77a lprocfs_oh_sum +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf4731b1e class_conn2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf490d5f9 class_del_profiles +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf59c1006 cl_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf60d4659 capa_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf6e8b83a class_detach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7020831 lprocfs_dt_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf73a4f97 cl_page_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7e319fb cl_lock_ext_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8c2df92 obdo_set_parent_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf9d518d8 class_incref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa813d06 capa_hmac +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb26205c local_index_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb2e6b3b class_handle_hash_back +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb6298af llog_cat_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb8e265c obd_export_evict_by_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbea0098 lu_types_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc7f18d0 obd_pages_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfce4103b lu_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd4568ec llog_osd_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd68d17a class_notify_sptlrpc_conf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd8f5cf4 lu_buf_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfdbe1557 lprocfs_write_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff57e92d class_match_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfffc1f11 lustre_swab_ost_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/osc/osc 0x5c4940c2 osc_update_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x00855612 ldlm_cancel_resource_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x00d95039 ptlrpcd_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x016fa5fb target_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01b4d928 lprocfs_rd_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01d6ef7f ldlm_pools_recalc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x02450550 __ldlm_handle2lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x028cfef3 ldlm_init_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x03d8e1c8 ldlm_cli_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x03d9e023 ptlrpcd_alloc_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x048b59d5 lustre_msg_set_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0515f93b RQF_FLD_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0531a2f9 sptlrpc_conf_target_get_rules +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x065fe86b ldlm_pool_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x06b3942b lustre_swab_lov_user_md_objects +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x070baa07 ptlrpc_request_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x071fc74a RQF_LDLM_ENQUEUE_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x07605c7d interval_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0777e564 sptlrpc_target_export_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08bb2d27 lustre_swab_obd_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x095587d0 lustre_msg_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a3130b0 RMF_MDT_EPOCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac252b2 lustre_msg_set_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0afed134 ldlm_pool_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0baca2e1 ptlrpc_req_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0bbb99c6 ptlrpc_req_set_repsize +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0bcacb5d RMF_MDS_HSM_USER_ITEM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c2d9c43 lustre_swab_lip_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c5bbc5d lustre_free_reply_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0cf343dd RQF_LDLM_INTENT_BASIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0e399141 ptlrpc_nrs_policy_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0e7f3238 ptlrpc_request_set_replen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ecc18d6 ldlm_prep_elc_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x10064852 sptlrpc_conf_client_adapt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x10f18f20 interval_iterate_reverse +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x115017f6 req_layout_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x11d84ef1 ptlrpc_set_add_new_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12b6f5a3 ptlrpc_connection_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1483eca4 ldlm_lock_addref_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x14d192db lustre_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x158817a3 ldlm_glimpse_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15a3e4db RMF_GETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x169c6588 ptl_send_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x172fb86d lustre_msg_hdr_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1747d8b3 ldlm_lockname +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x17950f60 RQF_SEC_CTX +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x181fcd32 llog_origin_handle_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x18529c3b ptlrpc_commit_replies +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19108a0f RQF_OST_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x191ac3f9 ptlrpc_deactivate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19c08934 RQF_LDLM_INTENT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a6a3ce9 RQF_OST_GET_INFO_LAST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a9b76aa RMF_OBD_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1abd3258 RMF_SETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ace4b5f RQF_LDLM_BL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1bae0270 interval_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1be21715 lustre_msg_size_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c300d8e lustre_msg_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d043548 lustre_msg_set_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d668900 ptlrpc_send_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1dc2051d RMF_SEQ_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1de9c288 lustre_swab_layout_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e32a60d ldlm_namespace_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e8e48a4 sptlrpc_flavor_has_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1eb2a65f RQF_OST_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee46b51 lustre_init_msg_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee9eb3c RQF_MDS_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2096f5b5 RQF_OST_SET_GRANT_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20d6b82c RQF_LDLM_INTENT_QUOTA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x215592c6 ptlrpc_stop_all_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x21640243 req_capsule_server_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x218a36ce ldlm_cli_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x223abd42 unlock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x233790b5 RMF_OST_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x244e5558 lustre_msg_get_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x24aafdba RMF_MGS_TARGET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x24d26ae2 llog_initiator_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x25669e0c ptlrpc_fail_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2585a629 RMF_SEQ_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2587513c RQF_LDLM_CP_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x259ba464 ptlrpc_set_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2653d3a4 do_set_info_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x269554ce RQF_LDLM_INTENT_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x26f99d16 RQF_MGS_CONFIG_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2728369d sptlrpc_import_sec_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x285e5b99 lustre_msg_set_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x298cfaee ptlrpc_invalidate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x29e0869a sptlrpc_get_hash_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a63a472 lustre_swab_ptlrpc_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2aff2e34 ptlrpc_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c00c60d ptlrpc_sample_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ca92fa8 ldlm_lock_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ccd5b87 ldlm_cli_cancel_list_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2cee74f1 ldlm_pool_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d56f168 ptlrpc_pinger_ir_up +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d6e3307 ptlrpc_req_finished +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d798316 RMF_MGS_CONFIG_RES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4562fe RQF_LLOG_ORIGIN_HANDLE_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4ca396 RQF_LDLM_INTENT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e5b40e5 sptlrpc_gc_add_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e61a06a req_capsule_server_sized_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ecd7515 lustre_msg_check_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f0e4f87 RQF_OST_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f255a96 req_capsule_client_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2fbb90e0 lprocfs_wr_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2fd2f737 lustre_msg_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x301d4fcd RQF_MDS_READPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x302937e0 RQF_MDS_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3060b9c6 sptlrpc_rule_set_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31838cb4 RMF_IDX_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3261b862 RQF_OST_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x32e3230c req_capsule_server_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x333fe880 ldlm_namespace_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x338bfd97 ldlm_namespace_new +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x33bb7761 ldlm_typename +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x35939a3d lustre_swab_fiemap +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3835ab4b RQF_LLOG_ORIGIN_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3858fb94 RMF_OBD_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38c01799 RQF_LDLM_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38fce533 lustre_msg_set_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3983b1a3 ldlm_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x399ae74f ptlrpc_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39f60a5f RMF_OST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a1e4bcb __lustre_unpack_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ab90f6e lustre_msg_bufcount +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ac00716 lustre_swab_hsm_user_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ae2a285 sptlrpc_svc_ctx_invalidate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b6b7cba dump_ioo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bedb0c7 RMF_LLOGD_CONN_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c240a04 client_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c63e62b RQF_MDS_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ca50f33 RQF_MDS_HSM_CT_REGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d7dc5f9 ldlm_pools_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d7fe1b9 ldlm_get_enq_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dbe72dd ptlrpc_set_import_active +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dc47695 lustre_msg_get_magic +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dddb3e2 dump_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3eaed993 ptlrpc_add_rqs_to_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ee811e1 ldlm_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f034caf lustre_msg_get_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f32bdb4 lprocfs_wr_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f752e78 RQF_MDS_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x41008cef RQF_LDLM_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4204a446 req_capsule_filled_sizes +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x42f6e0d6 __ptlrpc_free_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43705ee4 RQF_LOG_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43d7efc8 lustre_msg_set_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44036eda RQF_MDS_GET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x440c2a71 RMF_FIEMAP_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x442778e9 ldlm_pool_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4481591d RQF_OST_SET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45c2a27f ldlm_resource_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45cacee6 lprocfs_wr_evict_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45d05893 lustre_swab_lustre_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45e30cea lustre_swab_ldlm_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4775eac0 ldlm_lock_change_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47f5e903 RMF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x48814c9f lustre_swab_ost_lvb_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x498c03c5 lustre_msg_set_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a5a2416 RMF_DLM_REQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b09ce4b lustre_swab_mdt_rec_reint +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b11c700 ldlm_lock_downgrade +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b408379 ldlm_pool_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c0b3f2c ptlrpcd_add_rqset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c310c19 req_capsule_client_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c99006f ptlrpc_prep_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d7580d0 lustre_swab_hsm_user_item +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4dbc6b25 ptlrpc_save_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e1706e5 lustre_msg_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e696b96 ptlrpcd_queue_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4eb03a6f ptlrpcd_destroy_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4ef4f6ed llog_origin_handle_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f766c3b lustre_swab_generic_32s +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x503a354d req_capsule_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50443f6a ptlrpc_init_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50dd74f8 RMF_STRING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50ded9e1 sptlrpc_cli_unwrap_bulk_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x515f7206 sptlrpc_import_flush_all_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x528e0ab3 ldlm_cli_cancel_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x52c62150 RMF_RCS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53411557 RMF_DLM_REP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x534b28f8 ldlm_pool_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53a4a004 bulk_sec_desc_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x540aba1c ldlm_lock_fail_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5424c8c3 req_capsule_init_area +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x54ae5021 ldlm_lock_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x54ce269f ldlm_cli_cancel_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x555eb7fe RQF_MDS_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x556df425 ldlm_cli_enqueue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5643c2ec ptlrpcd_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x56782ce6 ptlrpc_activate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x567fb525 sptlrpc_import_flush_my_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x57d560af ldlm_namespace_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x588035b4 RMF_UPDATE_REPLY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x58ea5516 ptlrpc_hpreq_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x595ab175 lustre_swab_obd_quotactl +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x596582bf RMF_GETINFO_VALLEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x59ca398b ptlrpc_add_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a057439 interval_search +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a494c0b req_capsule_other_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5af0d02a ldlm_lock_dump_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b3413c1 client_import_del_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b3e50bc ptlrpc_init_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b56d79c ldlm_lock2handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b6ba895 lustre_packed_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c6a3a83 RQF_SEQ_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5caae213 ptlrpc_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5d0255be ldlm_lock_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5d6f4234 ptlrpc_schedule_difficult_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5db93ed2 ptlrpc_request_alloc_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e0b19b1 RMF_CLUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e2b7558 lustre_msghdr_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e45a8ce llog_origin_handle_next_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e6f435d RQF_OST_BRW_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e80f899 RQF_LLOG_ORIGIN_HANDLE_READ_HEADER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ec3284d RQF_MDS_HSM_CT_UNREGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ef831ee lustre_msg_get_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f96ccdd ptlrpc_connection_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6042bc15 RQF_MDS_REINT_RENAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x604e2505 RMF_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x607ec932 lustre_msg_set_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x60cd26ad RQF_MDS_REINT_CREATE_SYM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61646e1b RQF_MDS_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x618ad203 RQF_OST_GET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62192cf8 dump_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62aaae3f RQF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6315dd4c RMF_LLOGD_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6352a62d ldlm_get_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x63c8c6c2 ptlrpc_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x640c246d ptlrpc_retain_replayable_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x647b6e48 lustre_swab_ldlm_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x652052d2 ptlrpc_free_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x653723dc RMF_LOGCOOKIES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x653c2f8c req_capsule_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x65d86106 llog_origin_handle_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x666cf14e ldlm_register_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x668c4d85 ptlrpc_pinger_sending_on_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x66eca49e ldlm_pool_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x685eeaba RMF_DLM_GL_DESC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68bc4f19 sptlrpc_register_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68cb2541 interval_is_overlapped +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68f49e5e ptlrpc_expired_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6912990a RQF_OST_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x696ba811 lustre_msg_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69c9f04d RQF_MDS_REINT_LINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a372f29 sptlrpc_gc_del_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a3785c9 RMF_EADATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d72828c sptlrpc_conf_log_update_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d7931cc RQF_UPDATE_OBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ed20499 ldlm_revalidate_lock_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6efa82b0 RQF_MGS_TARGET_REG +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f6dc736 lustre_swab_mdt_remote_perm +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6fb92092 sptlrpc_flavor2name_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x703538e4 lustre_swab_hsm_current_action +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7171eacc client_import_find_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x723d43b6 sptlrpc_rule_set_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x725a892c RQF_MDS_REINT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x72c8e3a5 req_capsule_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x732bc4f1 ptlrpc_req_finished_with_imp_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x735578ad llog_origin_handle_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x742d1f7e ptlrpc_buf_need_swab +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74840056 lustre_msg_set_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75a2c40d ldlm_put_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75c2c4da ldlm_lock_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76277e02 sptlrpc_get_bulk_checksum +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7697eb5b ldlm_pool_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76a16970 req_capsule_client_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76b728e5 lustre_swab_update_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x773bc450 ptlrpc_request_alloc_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77571cc6 lustre_swab_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7764c231 ptlrpc_unregister_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77840c82 sptlrpc_rule_set_choose +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x783d564b sptlrpc_cli_ctx_expire +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x786eeed9 sptlrpc_sec_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78bf9136 lustre_swab_ldlm_lock_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a2b9490 ldlm_pool_get_lvf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a832f10 RMF_CONN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7ab7c1a1 _debug_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b158da4 lustre_swab_ldlm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b3cc90c __ptlrpc_prep_bulk_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b6bd7af client_import_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7bbf8001 RMF_MDT_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7c1df938 _ldlm_lock_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7c4c6107 RQF_LDLM_CONVERT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7cb2b7f6 req_capsule_client_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d1ecd7f RQF_LDLM_INTENT_LAYOUT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d242204 ptlrpc_set_next_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d41a8b9 RQF_QUOTA_DQACQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dc0e7cd RMF_QUOTA_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dfb3c18 lustre_msg_clear_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7e4fe4c1 lustre_pack_reply_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7ec11c9e ptlrpc_request_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4925d8 interval_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4c99b1 ldlm_expired_completion_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f5a1cc7 lustre_msg_set_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f6d2357 lustre_msg_is_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f95bcc3 ptlrpc_wake_delayed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8087593e ptlrpc_at_set_req_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80a9e8c3 lustre_msg_get_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80b43f21 ldlm_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80ecb4e3 RMF_MDS_HSM_CURRENT_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8118e01c sptlrpc_sec_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x817d7f1f lustre_msg_add_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8268d076 ptlrpc_abort_inflight +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x826d3c4f RQF_LDLM_GL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x837efb00 RMF_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x83ee63ce client_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x844c5081 req_capsule_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85135801 RMF_DLM_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x859dffa1 req_capsule_field_present +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85a9e0d8 RMF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85b661f8 llog_origin_handle_prev_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85eecf67 sptlrpc_get_hash_alg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85fff83f ptlrpc_reconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x863db6eb RMF_HSM_USER_STATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x86fa8c3b ldlm_cli_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8703106a ptlrpc_resend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8760beaf lustre_swab_ldlm_policy_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x876c2551 RMF_GETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87b7f56d client_disconnect_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87bf7b3c sptlrpc_get_next_secid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8872f3d2 RMF_SETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x88fff52d RMF_CAPA2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x89f9edf7 RQF_MDS_REINT_SETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a1ea476 lustre_swab_hsm_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a257736 RQF_MDS_HSM_STATE_GET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a2cc12f ldlm_lock2desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ac440fa ptlrpc_uuid_to_connection +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b791798 sptlrpc_cli_enlarge_reqbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b854254 lustre_swab_mgs_config_res +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8c3ac538 target_pack_pool_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8c79b262 lustre_pack_reply_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cb71d4b RQF_MDS_REINT_CREATE_SLAVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d77ea75 lustre_msg_set_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8da3fca7 lustre_msg_add_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8e9abe4d RMF_GENERIC_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f0aceac RQF_MDS_HSM_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f2fe17e ldlm_pool_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f64a40f ptlrpc_obd_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f65ee9b ptlrpc_unregister_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8fec0451 lustre_msg_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x919c4ce3 RMF_OBD_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91cf58d3 RQF_MDS_PIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x937b1ee0 lustre_swab_mdt_ioepoch +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9444fe6e ptlrpc_lprocfs_brw +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9553c633 RQF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x959d4954 llog_origin_handle_read_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x95d08f0c lustre_swab_mgs_target_info +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9660ace0 RMF_FLD_MDFLD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x967bfd52 RQF_OBD_PING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9732f766 ldlm_init_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9798f2f1 RQF_MDS_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x980fcfdc ptlrpc_connection_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x98318a43 req_capsule_server_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a258886 RQF_MDS_GETSTATUS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a4f030a ptlrpc_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a6f2f6d lustre_msg_set_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b88f6ce RMF_NIOBUF_REMOTE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9bb5198b RQF_MDS_CLOSE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9bd4d298 sptlrpc_cli_ctx_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9bff2ff8 lustre_pack_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9c954028 ptlrpc_buf_set_swabbed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9ce2459b ptlrpc_register_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9d7ea314 sptlrpc_pack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9edf7761 ptlrpc_cleanup_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9f11ac78 ldlm_resource_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9fb088f1 lustre_swab_lov_mds_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9fb99242 ldlm_resource_unlink_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa10f0d3d RMF_UPDATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa163f4c3 dump_rniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa17730df ldlm_resource_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2244636 RQF_MDS_GETATTR_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa22c0086 ldlm_error2errno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa30fd1a6 ptlrpc_recover_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3133ded ldlm_completion_ast_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3caa25d lprocfs_wr_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3d2a6ee RMF_CAPA1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa41abb2d sptlrpc_cli_ctx_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa41f9855 ptlrpc_prep_req_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa44bb967 req_capsule_server_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa47787ef RMF_PTLRPC_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4a2d089 RQF_OST_PUNCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4bea5ef lustre_swab_lmv_user_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4e1ba3f req_capsule_set_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5458dad ldlm_lock_decref_and_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa55fd311 ldlm_prep_enqueue_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5880075 ldlm_errno2error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa6c436ca RQF_MDS_WRITEPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa72fdb31 ptlrpc_set_add_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7d55cc3 RQF_MDS_REINT_CREATE_RMT_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7e360b1 RMF_OBD_IOOBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7ec567d RMF_CONNECT_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7f6b4b2 ldlm_extent_shift_kms +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa881749a ldlm_cli_cancel_unused +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9704f80 lustre_msg_get_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9c4658e lustre_swab_lov_user_md_v3 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9edf09d RQF_OBD_IDX_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaaa61b28 ptlrpc_nrs_policy_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaabbad1e req_capsule_server_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xab35eb00 llog_client_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xab4097fa ldlm_namespace_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xac2e9cda ldlm_cli_enqueue_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xad65fda7 ptlrpcd_wake +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xad7dd1d4 sptlrpc_enc_pool_put_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xad8072e1 ptlrpc_unpack_rep_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaddc3979 lustre_swab_lustre_capa_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xae4ac494 ldlm_blocking_ast_nocheck +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf0f46dd ptlrpc_set_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf4e9658 RQF_MDS_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf50a0d6 RMF_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb01c2669 ptlrpc_lprocfs_unregister_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0751fa4 RQF_LLOG_ORIGIN_HANDLE_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0d9f665 ptlrpc_disconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1b43d8a dump_rcs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1e5c07f req_capsule_extend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb2606cda ptlrpc_init_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb27c2374 lustre_msg_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb291473d lustre_msg_early_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb2b1817d lustre_swab_ost_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb3a8a8a8 ldlm_lock_fail_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4a7ecf3 lustre_msg_add_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4b42317 ldlm_namespace_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb512ebc2 sptlrpc_parse_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb5cb19c6 sptlrpc_cli_unwrap_bulk_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb61cb95a RQF_MDS_GETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb68476df interval_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb6aafd03 RQF_MDS_DONE_WRITING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb761581a req_capsule_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7b38189 RMF_MDT_MD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7fa3cc8 RMF_LLOG_LOG_HDR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb85daf71 ptlrpc_unregister_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb903634e RQF_OST_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9825d86 ptlrpc_request_bufs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9b631cf lustre_swab_mgs_config_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbaa76097 lustre_msg_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbc1370dc lustre_shrink_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbcfa35c6 sptlrpc_target_update_exp_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd83bc44 RQF_OBD_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe47bc7e ping_evictor_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf247f0a ldlm_blocking_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf98b86f RQF_MDS_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbffd4313 RQF_OST_BRW_WRITE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc060ec84 ldlm_cli_update_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc06c4670 lustre_msg_get_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0867da7 RMF_REC_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0cdf55e RMF_MGS_SEND_PARAM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc15bfee8 ptlrpc_prep_bulk_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2594542 ldlm_pool_get_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc26bb4e2 ptlrpc_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2986d28 lustre_swab_ldlm_res_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2b1af57 RQF_MGS_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2be922a RMF_SYMTGT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc4a9fd50 ptlrpc_replay_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc559a634 RMF_LAYOUT_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc593388e ptlrpc_prep_fcset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc5b2be68 ldlm_enqueue_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc60a60e1 RQF_OST_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc694be4b RQF_LLOG_ORIGIN_HANDLE_PREV_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc6afadf0 sptlrpc_lprocfs_cliobd_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc763fabc sptlrpc_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc77da041 ptlrpc_resend_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc79b9c67 ldlm_pools_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7ca8257 RQF_MDS_REINT_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7e47564 ptlrpc_interrupted_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc80d2c3a ptlrpc_register_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8301fc8 sptlrpc_gc_add_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8f586a9 ptlrpc_connection_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc97d03ff ptlrpc_prep_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xca106b0f ptlrpc_lprocfs_register_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xca52204a ptlrpc_mark_interrupted +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xca5a81ec ptlrpc_pinger_ir_down +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcaa22f2d sptlrpc_cli_ctx_wakeup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcac3a532 sptlrpc_sec_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2cc0cf lustre_swab_lquota_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2ceaff sptlrpc_secflags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb699400 ptlrpc_restart_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcc848b7c ldlm_namespace_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcd0041f0 lock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcd9abb3c ldlm_flock_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce1a689b sptlrpc_enc_pool_add_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce86066d lustre_msg_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce87c42c ldlm_destroy_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcebe0793 sptlrpc_unregister_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcec513c9 RQF_MDS_UNPIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xced015be sptlrpc_rule_set_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9963db lustre_msg_get_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9aab6a RQF_MDS_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd05759d2 ldlm_reprocess_all_ns +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd07f119e ldlm_destroy_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2983334 lustre_swab_swap_layouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2aca84f ptlrpc_request_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2e0d4eb lustre_msg_get_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd3dae408 ldlm_it2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd42cf02b ldlm_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd4f80dc4 ptlrpc_service_health_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd537ded2 lustre_swab_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd67a5d7b lustre_swab_update_reply_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd69e0a27 RQF_MDS_IS_SUBDIR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6c3ebfb RMF_FIEMAP_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd77ac15b ptlrpc_set_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd78164f1 sptlrpc_target_sec_part +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7910326 lustre_swab_obd_statfs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8b91b3e lustre_swab_lov_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8f06300 RQF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd9561861 RQF_LDLM_INTENT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd9e3d277 sptlrpc_enc_pool_get_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda2ac111 sptlrpc_proc_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda63f581 ptlrpc_start_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdabfbdd7 ptlrpc_request_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb1fb0a2 RQF_MDS_REINT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb9d5a6a lustre_swab_niobuf_remote +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdcf910b9 lustre_swab_ost_last_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd0ffb04 sptlrpc_flavor2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd30d7bf RMF_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xddc40a85 lustre_msg_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde044e32 ptlrpc_pinger_add_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde12d36b RMF_MDS_HSM_ARCHIVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde555d70 sptlrpc_enc_pool_del_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdee87192 sptlrpc_conf_log_update_begin +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf701ae7 lustre_swab_fid2path +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe026fe53 lustre_pack_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0a90dc3 ptlrpc_cleanup_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0cc694c RQF_LLOG_ORIGIN_HANDLE_NEXT_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0d07b49 ptlrpc_pinger_del_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe39a61ee ptlrpc_queue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe40e0a50 lustre_msg_get_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe55baceb target_print_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe57bd972 sptlrpc_current_user_desc_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe606b43c sec2target_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe643998e RQF_OST_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6f0dc96 RQF_OST_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7062b5f RMF_U32 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe737ae89 ldlm_replay_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7512278 ptlrpcd_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7de3bd7 ldlm_lock_allow_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7ef4c01 req_capsule_has_field +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe9023d6f ptlrpc_unpack_req_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xea8b3f28 sptlrpc_cli_wrap_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabaa0b1 lustre_swab_mdt_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabac4fc sptlrpc_rule_set_merge +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeafd2aa8 ldlm_pool_set_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeba464fa ldlm_pool_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xebb64e68 req_layout_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec226f66 ping_evictor_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec325ac1 client_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec939a00 RQF_MDS_REINT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecace5c1 RQF_OST_GET_INFO_GENERIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed1c10d6 ptlrpc_connection_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed9c2f60 ldlm_resource_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xedcb740d sptlrpc_name2flavor_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xef1aeca9 RMF_FLD_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0241d6e lustre_swab_hsm_progress_kernel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0a1310c req_capsule_server_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0d52b5f ptlrpc_pinger_suppress_pings +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf1300275 _sptlrpc_enlarge_msg_inplace +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf277c125 RQF_OST_GET_INFO_FIEMAP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf27d49dc sptlrpc_target_choose_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf35f132b lustre_swab_ldlm_resource_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3d44370 RQF_OST_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf43540b9 lustre_swab_mgs_nidtbl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf45085e1 sptlrpc_conf_log_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf55c033b RMF_MGS_CONFIG_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf584a16b sptlrpc_part2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf596e9ae sptlrpc_conf_log_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf5988c0f ldlm_cli_cancel_unused_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf607fc23 sptlrpc_flavor2name_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf617ab8a lustre_msg_get_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf697b756 ldlm_dump_all_namespaces +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7408f84 lustre_swab_hsm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7ba40c0 RMF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf85cb27e sptlrpc_parse_rule +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf870fed9 RQF_LDLM_GL_DESC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9051bd6 RQF_QC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf94e41e0 deuuidify +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf973aa93 lustre_swab_lov_user_md_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9ee11e2 lustre_msg_set_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9f72dfc RMF_TGTUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa51688d interval_insert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc2fa83f ptlrpc_del_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc58b416 ldlm_lock_allow_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd1165fc client_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd148bf8 RMF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfe46e2e3 sptlrpc_req_replace_dead_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff02a0e9 ldlm_lock_set_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffc807e8 sptlrpc_unpack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffe29c3f RQF_LDLM_ENQUEUE +EXPORT_SYMBOL drivers/staging/media/cxd2099/cxd2099 0xb87aba43 cxd2099_attach +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x0dba04b4 go7007_update_board +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x37a35489 go7007_snd_remove +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x45d3f52e go7007_parse_video_stream +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x4f677400 go7007_read_interrupt +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x5a119a8a go7007_snd_init +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x5df23543 go7007_boot_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x94ff6a87 go7007_alloc +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xd6d381b8 go7007_register_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xf44f4bf8 go7007_read_addr +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x05999c48 rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0dc2e8be dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0e6ea1dd free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x141e427b rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x146b3eb6 rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x18826f01 rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1b453ddb rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1cede08a rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x255e361b rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x29a65752 rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2b49149e rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2f7012c9 rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x30a41bee rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x347a02bb rtllib_wpa_supplicant_ioctl +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x36380900 HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3745d846 alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4719ac0b rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4859ccbc notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4b3a012b Dot11d_Channelmap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x54d2c027 rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x619977ff rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x62feffb7 rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x65fe73c3 rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x66ae61cc rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x674b125e RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x698f0083 rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x721a2bb7 rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x75ea1db2 rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7e487936 rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8452b5cb rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x875ff2bc rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x877e24ed rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x89ae7e15 rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8d3367d7 rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x901e2b12 rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa65ff239 rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xad93b0f1 rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb9e724fc rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbd185b9a rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbe1420f2 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc50c477a rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xcad11fc2 rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd0f5478e rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd8b51f5e rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd8cd7e40 rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xda30c526 rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf043775b rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf0d12b32 rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf5277b37 rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xfeef7051 rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xff0ccd10 rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0507a0df ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0fce9081 ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x10cf4fec ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1a31a7ca ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1e006e86 ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x244071cb ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x33d83c59 ToLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3cbb989d ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x408afd73 ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x46f0b3fb ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x507e932d ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x53147f78 IsLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5539a5cc ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x58017813 ieee80211_send_probe_requests_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5c7ad9b0 ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5ef4dd6c ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6347f744 ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x655c443e ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6c32c8b5 ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x714e0f39 ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7353c521 DOT11D_GetMaxTxPwrInDbm +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7b444193 ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7b807da7 ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8724525d ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8c09cbb6 ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8ceca41b DOT11D_ScanComplete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8f33b115 ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9160964c ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x947db8c3 Dot11d_Init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x94a43447 ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x95338880 ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9a48b3f3 ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa39bb287 ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa9afbf60 ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xaf7b0571 ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xafc58d87 ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb42fb4aa Dot11d_UpdateCountryIe +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc6992521 HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc90fe7e3 SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xcad06780 ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xcd81313c ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd05156b9 ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd0c8df87 ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd0e36f27 ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd1fcd809 ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd48387ab ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd90c1a80 ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xdec7aac2 ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xdf1e0959 ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe1279d6d ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe195a4f3 ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe20504bd Dot11d_Reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xeae9f025 ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf8b9e167 notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfb1495ca ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xff02081f ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0017f35f set_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x00ea0cde set_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x06d6f244 get_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x09df8f3e set_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0a8d32c3 get_bypass_slave_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1936264c set_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1d2eb8ca get_tap_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x203af1f7 reset_bypass_wd_timer_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2070f14a set_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x27b990ef get_bypass_info_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2ba7cd35 get_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2c3f1c17 get_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2f59e636 get_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2fdb893a get_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x361cf40a get_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x45ca99c3 set_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x550a188c set_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x5cb59e92 get_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x66b60122 set_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x675208c0 set_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x692623f2 get_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x75131ec6 set_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x76c0b7d0 set_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e872825 get_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e8d701e get_wd_expire_time_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x86388b07 get_bp_disc_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x93ae4648 get_wd_set_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x95e42b0d is_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9df5f807 set_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9e21f42e set_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xa689a214 get_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xae117788 get_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xc368d30d get_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xccab5de0 get_bypass_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd3e034b3 get_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9c1ccfc get_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9d38d97 set_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xe640f06e set_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xecdaa456 set_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xedcd3c1b get_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf06d67bf set_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf57c1671 get_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf693c3a1 bp_if_scan_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf8237882 get_bypass_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xfa59240d get_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05af3c4c set_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05b08a42 set_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0b0d5ce0 get_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0fc2e83c reset_bypass_wd_timer +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x123a8133 get_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x157ec89c get_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2440f05a get_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2b01d1d4 set_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2c27a2f0 set_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2da97f4b is_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2e86c67b get_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37416370 get_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37bdab27 get_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x3da96a18 get_bypass_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4025805e get_bypass_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4940a0cc get_bypass_info +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4d21ff51 get_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5147360c get_bp_disc_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x515d4df1 get_bypass_slave +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5560267e set_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5be44d44 set_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6653590c get_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6bda14ec get_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x72c618ae set_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x76d47e6f set_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x794e3815 set_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x7c6cbc16 get_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x84a263dc set_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x8a16f22c set_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x946ff795 get_wd_set_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x94f6aff2 get_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x9d1ecf73 set_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xb1385629 set_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xbff68c45 set_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xc871c561 get_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xcee528df set_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd202dd85 get_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd787f151 get_wd_expire_time +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xdb6a39d2 get_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xebd25ae5 get_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf1e9f8c1 set_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf224abd9 get_tap_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf5a591b2 set_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf643fd4c get_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x300de743 xillybus_endpoint_remove +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x91243faf xillybus_do_cleanup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x96bfbb6e xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xce716d04 xillybus_init_endpoint +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x04e22d5c iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x11952164 iscsit_handle_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x23b0e64d iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2d24273c iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x37fcbac4 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x43766b56 iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4cb7547f iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4ea79e72 iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x53d213b9 iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x645aaee2 iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x684e164d iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8b7987a5 iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8d58ee43 iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8fa6b216 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x97ee8762 iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa0c3f5a4 iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa63d99d7 iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa68c8edf iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb173d97f iscsit_set_unsoliticed_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb9ef685f iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc376e15b iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc7a1c721 iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd71981b6 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd8bccd0c iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe2bb735f iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe6aa87b9 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xed62d254 iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf9c49448 iscsit_release_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x02de3b18 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x035d03ac transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0x06f3a5ed fc_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x0816ac55 target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x0923126f transport_subsystem_release +EXPORT_SYMBOL drivers/target/target_core_mod 0x15831bd0 target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x17eeae14 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x18df7709 target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x1a6b41d0 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0x1c892b33 __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x1d6b174f spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x20af18b2 transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x21132ef9 core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x22ad21ca target_fabric_configfs_free +EXPORT_SYMBOL drivers/target/target_core_mod 0x288af9ee core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x2a85fb96 target_fabric_configfs_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x2d4e09b7 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x2dcb46fd fc_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x3166758e iscsi_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x3c5fb1c9 iscsi_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x3f6e3423 transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x42a63c6d sas_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x4d5ebfff transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0x4db8966a transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x4dd9bff7 fc_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x4ed852e2 sas_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x548fde41 transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x5563b8c6 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x5a85f464 target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0x5c43d85f transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x61d75846 target_put_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x65343e63 target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x67b2239c transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x72d7d23b sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x731ae7bd core_tpg_del_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x738e5ddc sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0x786dc193 iscsi_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x7dbada9d transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x7fb04ae5 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0x829df5f6 sbc_execute_unmap +EXPORT_SYMBOL drivers/target/target_core_mod 0x85aa880c transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x86042966 target_fabric_configfs_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x86288db5 core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x8bddc10d iscsi_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x90497e85 core_tpg_add_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x930409e8 transport_subsystem_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x93e9ef40 fc_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x98d58e36 transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x9e3a8d21 target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0x9f1b9e41 sas_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xa25f1375 spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0xa76677a9 core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0xaa4e725f core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0xb23d3091 sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xb975da08 transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xc5f710b0 transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0xca970978 target_setup_cmd_from_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xcd41b66d target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0xceb54b4a transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xd00edba6 transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0xd45c510d target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xdaeb8301 core_tpg_clear_object_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0xdbd3945f core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0xdbecbc97 sas_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xddea696d target_get_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xe3c365db transport_init_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0xe4a004b7 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0xe61cf329 target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xefef81b2 target_fabric_configfs_init +EXPORT_SYMBOL drivers/target/target_core_mod 0xf01621c7 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf2a2e51e spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0xf468a436 spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0xfe179171 transport_check_aborted_status +EXPORT_SYMBOL drivers/target/target_core_mod 0xfe77e318 transport_init_se_cmd +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0xd6a07e53 usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0xc8db43aa unregister_gadget_item +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x09ec4d15 gether_get_host_addr_u8 +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x1c4d7500 gether_set_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x1cddda18 gether_register_netdev +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x20fb049e gether_get_host_addr_cdc +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x2c3aaaaf gether_set_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x447e23cc gether_get_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x4b68c124 gether_connect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x67e718c6 gether_get_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x6be41a82 gether_set_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x6f2894fb gether_setup_name +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xa84227f3 gether_get_ifname +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xb1277844 gether_setup_name_default +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xbbffebd5 gether_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xd0fadce1 gether_set_gadget +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xfb3aee84 gether_get_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x054462f2 rndis_rm_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x2c13fbf3 rndis_add_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x300cf634 rndis_set_param_dev +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3a6d4f22 rndis_free_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3ca38e3a rndis_signal_connect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x4ca90996 rndis_signal_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x5d22b406 rndis_register +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x785d494b rndis_msg_parser +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x840dd143 rndis_deregister +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x988ad2a2 rndis_set_param_vendor +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x9acf72e4 rndis_set_param_medium +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xa90054ee rndis_uninit +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xb971ebca rndis_get_next_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xd2fe47b1 rndis_set_host_mac +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1639d6df fsg_show_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1710b539 fsg_fs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1b1cc3af store_cdrom_address +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x2933ee1d fsg_ss_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x32424436 fsg_store_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x398778e1 fsg_ss_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x423845e4 fsg_ss_bulk_in_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x475c4edf fsg_show_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x56344daf fsg_hs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x6107518f fsg_show_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x7050dce6 fsg_lun_open +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x793fec34 fsg_store_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x7d876689 fsg_store_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x812d4b6c fsg_lun_close +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x95cffb3e fsg_hs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa332280e fsg_show_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa4b9f7a2 fsg_store_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5cae92f fsg_ss_bulk_out_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5f99b69 fsg_fs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb52ba28a fsg_intf_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb54d0d95 fsg_fs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xc749aa3a fsg_show_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xda69c61a fsg_store_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xf03df726 fsg_lun_fsync_sub +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xf4efc0c8 fsg_ss_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_rndis 0x0e85b979 rndis_borrow_net +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0x9cb389b7 sl811h_driver +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xa64a4cea usb_nop_xceiv_unregister +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xd0e43207 usb_nop_xceiv_register +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x216fd21a usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x40e2a964 usb_wwan_ioctl +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x40fc22f4 usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x41cffba6 usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x4c0779b8 usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x7fd39183 usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x81078031 usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x8e445451 usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x9e81bc88 usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xae9c3769 usb_wwan_set_termios +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xb754f4b4 usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xc45ee8b3 usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xda0207bf usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x0220bff0 usb_serial_resume +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x580163ec usb_serial_suspend +EXPORT_SYMBOL drivers/vhost/vringh 0x0dda8c5a vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x1f063017 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x2e91ca97 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x367ce26a vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x36dfce73 vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3eaf442a vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x3fa42e4f vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5dafbd4e vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x66af098b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x6d0e7948 vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x7bda5e6d vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x821e9390 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0xaf8e4a0e vringh_notify_disable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xafb47dae vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc884d704 vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc8bee0a4 vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xd11d2709 vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xda4ea4cc vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0xfc7dcad2 vringh_getdesc_user +EXPORT_SYMBOL drivers/video/backlight/generic_bl 0x366d19ef genericbl_limit_intensity +EXPORT_SYMBOL drivers/video/backlight/lcd 0x99f26fa3 lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xc02cfc6c lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0xf72eccd2 devm_lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xf91f9a2f devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/cyber2000fb 0x0cc3ede5 cyber2000fb_detach +EXPORT_SYMBOL drivers/video/cyber2000fb 0x534b6f18 cyber2000fb_disable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xa2bcedb2 cyber2000fb_attach +EXPORT_SYMBOL drivers/video/cyber2000fb 0xb39f68d1 cyber2000fb_enable_extregs +EXPORT_SYMBOL drivers/video/macmodes 0x233917d1 mac_vmode_to_var +EXPORT_SYMBOL drivers/video/macmodes 0x6bc97e28 mac_find_mode +EXPORT_SYMBOL drivers/video/macmodes 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x49a2cb2f matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xad5f181d g450_mnp2f +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xb2301d49 matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x1bf5b2a6 matrox_G100 +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x2db35356 DAC1064_global_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x97037104 matrox_mystique +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xa6666a70 DAC1064_global_restore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_Ti3026 0x10b23dec matrox_millennium +EXPORT_SYMBOL drivers/video/matrox/matroxfb_accel 0xa485ecb9 matrox_cfbX_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x1b8972f1 matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xbc4ff696 matroxfb_register_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xcd9596f5 matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xe67c9a7c matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x2b4a70cf matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0xd1c40ace matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x427fa3c6 matroxfb_read_pins +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x97dd388d matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xb664e63d matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xbc8e8bf9 matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xd056b2bc matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/mb862xx/mb862xxfb 0x1d834add mb862xxfb_init_accel +EXPORT_SYMBOL drivers/video/output 0x3c4683e4 video_output_unregister +EXPORT_SYMBOL drivers/video/output 0xa70ec602 video_output_register +EXPORT_SYMBOL drivers/video/sis/sisfb 0x3037658e sis_malloc +EXPORT_SYMBOL drivers/video/sis/sisfb 0x454a3cf0 sis_free +EXPORT_SYMBOL drivers/video/svgalib 0x159ccd99 svga_tilecopy +EXPORT_SYMBOL drivers/video/svgalib 0x17f3f471 svga_set_default_seq_regs +EXPORT_SYMBOL drivers/video/svgalib 0x1be6dc30 svga_set_textmode_vga_regs +EXPORT_SYMBOL drivers/video/svgalib 0x307070e7 svga_tileblit +EXPORT_SYMBOL drivers/video/svgalib 0x45d09da5 svga_settile +EXPORT_SYMBOL drivers/video/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/svgalib 0x6e4adb1e svga_check_timings +EXPORT_SYMBOL drivers/video/svgalib 0x80f24d95 svga_wcrt_multi +EXPORT_SYMBOL drivers/video/svgalib 0x8de63fb4 svga_set_timings +EXPORT_SYMBOL drivers/video/svgalib 0x8facbe36 svga_get_caps +EXPORT_SYMBOL drivers/video/svgalib 0x966fc9e6 svga_tilecursor +EXPORT_SYMBOL drivers/video/svgalib 0xd016a0a1 svga_tilefill +EXPORT_SYMBOL drivers/video/svgalib 0xd1429fca svga_wseq_multi +EXPORT_SYMBOL drivers/video/svgalib 0xd22ca511 svga_set_default_atc_regs +EXPORT_SYMBOL drivers/video/svgalib 0xdf557310 svga_get_tilemax +EXPORT_SYMBOL drivers/video/svgalib 0xe28d2a49 svga_set_default_gfx_regs +EXPORT_SYMBOL drivers/video/svgalib 0xef774f5d svga_compute_pll +EXPORT_SYMBOL drivers/video/svgalib 0xf2db5956 svga_match_format +EXPORT_SYMBOL drivers/video/syscopyarea 0x196afa33 sys_copyarea +EXPORT_SYMBOL drivers/video/sysfillrect 0x6baba27a sys_fillrect +EXPORT_SYMBOL drivers/video/sysimgblt 0xc9a678a8 sys_imageblit +EXPORT_SYMBOL drivers/video/vgastate 0x686de290 restore_vga +EXPORT_SYMBOL drivers/video/vgastate 0xe7a2620e save_vga +EXPORT_SYMBOL drivers/vme/vme 0x00d7e722 vme_lm_count +EXPORT_SYMBOL drivers/vme/vme 0x038d74cf vme_new_dma_list +EXPORT_SYMBOL drivers/vme/vme 0x072f901c vme_master_rmw +EXPORT_SYMBOL drivers/vme/vme 0x0ec5babe vme_dma_free +EXPORT_SYMBOL drivers/vme/vme 0x1a458810 vme_unregister_bridge +EXPORT_SYMBOL drivers/vme/vme 0x20df5a3d vme_dma_pci_attribute +EXPORT_SYMBOL drivers/vme/vme 0x37eb1fdc vme_dma_list_add +EXPORT_SYMBOL drivers/vme/vme 0x3e95083c vme_slave_get +EXPORT_SYMBOL drivers/vme/vme 0x41862ad4 vme_alloc_consistent +EXPORT_SYMBOL drivers/vme/vme 0x46649cd1 vme_lm_set +EXPORT_SYMBOL drivers/vme/vme 0x48b99a13 vme_lm_free +EXPORT_SYMBOL drivers/vme/vme 0x4baf35a7 vme_master_get +EXPORT_SYMBOL drivers/vme/vme 0x535c8308 vme_dma_pattern_attribute +EXPORT_SYMBOL drivers/vme/vme 0x569e34b6 vme_bus_type +EXPORT_SYMBOL drivers/vme/vme 0x59dfe659 vme_dma_list_free +EXPORT_SYMBOL drivers/vme/vme 0x5aff4177 vme_lm_get +EXPORT_SYMBOL drivers/vme/vme 0x5d0d22d3 vme_irq_request +EXPORT_SYMBOL drivers/vme/vme 0x7cf35220 vme_master_free +EXPORT_SYMBOL drivers/vme/vme 0x7fde2edb vme_master_read +EXPORT_SYMBOL drivers/vme/vme 0x81ac2abe vme_irq_generate +EXPORT_SYMBOL drivers/vme/vme 0x8cd90f40 vme_irq_free +EXPORT_SYMBOL drivers/vme/vme 0x8d94f1ea vme_lm_request +EXPORT_SYMBOL drivers/vme/vme 0x90695906 vme_free_consistent +EXPORT_SYMBOL drivers/vme/vme 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL drivers/vme/vme 0x9aeb07e8 vme_lm_attach +EXPORT_SYMBOL drivers/vme/vme 0xa31bdf07 vme_master_set +EXPORT_SYMBOL drivers/vme/vme 0xb1970a86 vme_irq_handler +EXPORT_SYMBOL drivers/vme/vme 0xb3019c61 vme_unregister_driver +EXPORT_SYMBOL drivers/vme/vme 0xbb78055e vme_dma_request +EXPORT_SYMBOL drivers/vme/vme 0xc7e56fef vme_register_driver +EXPORT_SYMBOL drivers/vme/vme 0xc91411b5 vme_register_bridge +EXPORT_SYMBOL drivers/vme/vme 0xd797b9a5 vme_master_write +EXPORT_SYMBOL drivers/vme/vme 0xdf3107f4 vme_slot_get +EXPORT_SYMBOL drivers/vme/vme 0xdff905e5 vme_slave_free +EXPORT_SYMBOL drivers/vme/vme 0xe011b704 vme_dma_list_exec +EXPORT_SYMBOL drivers/vme/vme 0xe693a6ce vme_get_size +EXPORT_SYMBOL drivers/vme/vme 0xe725c4ec vme_master_request +EXPORT_SYMBOL drivers/vme/vme 0xee16c429 vme_slave_request +EXPORT_SYMBOL drivers/vme/vme 0xefd1624a vme_dma_free_attribute +EXPORT_SYMBOL drivers/vme/vme 0xf5a10e25 vme_slave_set +EXPORT_SYMBOL drivers/vme/vme 0xfacd8e72 vme_dma_vme_attribute +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x0e3e12c3 w1_ds2760_read +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x2c11afbd w1_ds2760_recall_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xaa0cea1f w1_ds2760_store_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xdf33d956 w1_ds2760_write +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x0ec97810 w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x55ef1a2b w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x6eccd76b w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0xa30d6bf8 w1_ds2781_io +EXPORT_SYMBOL drivers/w1/wire 0x2cf43c70 w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0x65ef08e9 w1_unregister_family +EXPORT_SYMBOL drivers/w1/wire 0xa3dbd4d3 w1_remove_master_device +EXPORT_SYMBOL drivers/w1/wire 0xd5002480 w1_add_master_device +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0x04e133fc iTCO_vendor_check_noreboot_on +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xa78bd894 iTCO_vendor_pre_set_heartbeat +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xb5f20875 iTCO_vendor_pre_keepalive +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xc4f657bf iTCO_vendor_pre_stop +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xdc6effc9 iTCO_vendor_pre_start +EXPORT_SYMBOL fs/btrfs/btrfs 0x27476846 ulist_reinit +EXPORT_SYMBOL fs/btrfs/btrfs 0x41e6a9d2 ulist_init +EXPORT_SYMBOL fs/btrfs/btrfs 0x7e2ee765 ulist_free +EXPORT_SYMBOL fs/btrfs/btrfs 0xa2eec2e8 ulist_fini +EXPORT_SYMBOL fs/btrfs/btrfs 0xb1320bc8 ulist_add +EXPORT_SYMBOL fs/btrfs/btrfs 0xb42289d2 ulist_alloc +EXPORT_SYMBOL fs/btrfs/btrfs 0xc2c745db ulist_next +EXPORT_SYMBOL fs/configfs/configfs 0x0209d1e2 configfs_unregister_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0x16347ad5 config_item_init +EXPORT_SYMBOL fs/configfs/configfs 0x26078fef config_item_put +EXPORT_SYMBOL fs/configfs/configfs 0x3c0c9875 config_group_init +EXPORT_SYMBOL fs/configfs/configfs 0x54d27089 config_item_get +EXPORT_SYMBOL fs/configfs/configfs 0x5b35f289 configfs_depend_item +EXPORT_SYMBOL fs/configfs/configfs 0x68c9744d config_item_set_name +EXPORT_SYMBOL fs/configfs/configfs 0x71dd6db8 configfs_undepend_item +EXPORT_SYMBOL fs/configfs/configfs 0x7893f263 config_item_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0x84dca409 configfs_register_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0xfa4f6701 config_group_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0xfa50cd70 config_group_find_item +EXPORT_SYMBOL fs/exofs/libore 0x0cd0c4b0 ore_remove +EXPORT_SYMBOL fs/exofs/libore 0x1b34d3b4 ore_truncate +EXPORT_SYMBOL fs/exofs/libore 0x28806871 ore_verify_layout +EXPORT_SYMBOL fs/exofs/libore 0x3ccff455 ore_check_io +EXPORT_SYMBOL fs/exofs/libore 0x4527e170 ore_calc_stripe_info +EXPORT_SYMBOL fs/exofs/libore 0x662c8e52 ore_read +EXPORT_SYMBOL fs/exofs/libore 0x6a1f0845 ore_put_io_state +EXPORT_SYMBOL fs/exofs/libore 0x7c94a7eb ore_get_io_state +EXPORT_SYMBOL fs/exofs/libore 0x99f99013 extract_attr_from_ios +EXPORT_SYMBOL fs/exofs/libore 0xa3d2a634 g_attr_logical_length +EXPORT_SYMBOL fs/exofs/libore 0xc3ab8d5d ore_get_rw_state +EXPORT_SYMBOL fs/exofs/libore 0xce56080b ore_write +EXPORT_SYMBOL fs/exofs/libore 0xe88c8707 ore_create +EXPORT_SYMBOL fs/fscache/fscache 0x0f68ac6e fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x11804728 __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x14f3b922 __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x15ebefca __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x1998f332 fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0x1e103d92 fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0x230512f1 __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x2ea14e05 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x338a6e0f fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0x3a8c111a fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0x46f98f38 __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0x474d0c79 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x4b6b6064 __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x55e4fb8f fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0x5bb873ce __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x623825b4 fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0x6954552b __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x698c2385 __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x69c0f7da __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x6cabed0e __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0x70182709 __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x79f8f072 fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0x7aa7b371 __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0x7e2d9192 __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0x812dd53e fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0x9194d357 __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0xab035126 __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0xac29888d fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0xb313f266 __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0xb511f99d fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0xc069d0d0 __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0xcae5ed46 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xd54bf048 fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0xe39d3be9 fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0xe3ec9d23 fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0xe7e0cfe5 fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0xff7be3f8 __fscache_uncache_page +EXPORT_SYMBOL fs/nfsd/nfsd 0x35e33c1e nfs4_acl_write_who +EXPORT_SYMBOL fs/nfsd/nfsd 0x5a157ae4 nfs4_acl_get_whotype +EXPORT_SYMBOL fs/nfsd/nfsd 0xa0f4b528 nfs4_acl_posix_to_nfsv4 +EXPORT_SYMBOL fs/nfsd/nfsd 0xb25b2957 nfs4_acl_nfsv4_to_posix +EXPORT_SYMBOL fs/nfsd/nfsd 0xe13337f0 nfs4_acl_new +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x1dead2b2 qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x21510859 qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x73fffc36 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x9e73027e qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0xa78929ca qtree_write_dquot +EXPORT_SYMBOL lib/cordic 0x434bfd07 cordic_calc_iq +EXPORT_SYMBOL lib/crc-ccitt 0x3771b461 crc_ccitt +EXPORT_SYMBOL lib/crc-ccitt 0x75811312 crc_ccitt_table +EXPORT_SYMBOL lib/crc-itu-t 0xd29b009f crc_itu_t_table +EXPORT_SYMBOL lib/crc-itu-t 0xf5b4a948 crc_itu_t +EXPORT_SYMBOL lib/crc7 0xa7587646 crc7 +EXPORT_SYMBOL lib/crc7 0xd80c3603 crc7_syndrome_table +EXPORT_SYMBOL lib/crc8 0x41248eaf crc8 +EXPORT_SYMBOL lib/crc8 0xab9ad613 crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xd4534d80 crc8_populate_msb +EXPORT_SYMBOL lib/libcrc32c 0x27000b29 crc32c +EXPORT_SYMBOL lib/lru_cache 0x1097f090 lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0x1611f01c lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0x1ae95c1a lc_get +EXPORT_SYMBOL lib/lru_cache 0x22bdae4d lc_committed +EXPORT_SYMBOL lib/lru_cache 0x2324a210 lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x245f4bed lc_is_used +EXPORT_SYMBOL lib/lru_cache 0x72f8100b lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0x741d6b5d lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x94933238 lc_put +EXPORT_SYMBOL lib/lru_cache 0x9c797a6a lc_destroy +EXPORT_SYMBOL lib/lru_cache 0xa35c2d4d lc_create +EXPORT_SYMBOL lib/lru_cache 0xa8226c6b lc_set +EXPORT_SYMBOL lib/lru_cache 0xc011064b lc_reset +EXPORT_SYMBOL lib/lru_cache 0xcee796cb lc_find +EXPORT_SYMBOL lib/lru_cache 0xd0afa00c lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0xd37ef4a2 lc_del +EXPORT_SYMBOL lib/lru_cache 0xfabb5c85 lc_element_by_index +EXPORT_SYMBOL lib/lz4/lz4_compress 0xcbc5d521 lz4_compress +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x26c3aa22 lz4hc_compress +EXPORT_SYMBOL lib/raid6/raid6_pq 0x0bd662f6 raid6_gfmul +EXPORT_SYMBOL lib/raid6/raid6_pq 0x15fe0cd3 raid6_gfexp +EXPORT_SYMBOL lib/raid6/raid6_pq 0x5ba93f9d raid6_gfinv +EXPORT_SYMBOL lib/raid6/raid6_pq 0xb0d904b7 raid6_empty_zero_page +EXPORT_SYMBOL lib/raid6/raid6_pq 0xce45a6f1 raid6_gfexi +EXPORT_SYMBOL lib/raid6/raid6_pq 0xd9e91f83 raid6_vgfmul +EXPORT_SYMBOL net/802/p8022 0x1ab273df register_8022_client +EXPORT_SYMBOL net/802/p8022 0xc5980c2f unregister_8022_client +EXPORT_SYMBOL net/802/p8023 0x32b3090c make_8023_client +EXPORT_SYMBOL net/802/p8023 0xfad4ea34 destroy_8023_client +EXPORT_SYMBOL net/802/psnap 0x51093aab unregister_snap_client +EXPORT_SYMBOL net/802/psnap 0xbd91ceb2 register_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x15b2a280 p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0x171a036a p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0x1a37c7e9 p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x1dbc6183 p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0x1e78a685 p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0x2956865c p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0x2d2d2ce1 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x3069bbc5 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0x312323f2 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0x326c4bb7 v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x344aa1a3 p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x35d1e27e p9_idpool_get +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x44d2c2c0 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0x46b1abc7 p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0x4bb8591f p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0x4beb64d1 p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0x52edbe53 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x560ef8e3 p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x5fae862b p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0x6005e395 p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x61fdf053 p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x62965e85 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0x6bd766a8 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x73022202 p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0x7356b8fa p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0x7a39f62e p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0x8190f0dc v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0x82798a21 p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x859db3ea p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0x8b318d8f p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x95c64d62 p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x977a0030 p9_nr_pages +EXPORT_SYMBOL net/9p/9pnet 0x9a5557cc p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0xa9ad2aa8 p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0xbe46b877 p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0xc5db54a9 p9_idpool_destroy +EXPORT_SYMBOL net/9p/9pnet 0xcac4ef45 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0xd64eb657 p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xeb1b9e2b v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0xedd19b81 p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0xf05b18ab p9_payload_gup +EXPORT_SYMBOL net/9p/9pnet 0xf1c85c60 p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0xf4137583 p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0xf4a111d8 p9_idpool_create +EXPORT_SYMBOL net/9p/9pnet 0xf5ce0836 p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0xf84f2022 p9_idpool_put +EXPORT_SYMBOL net/9p/9pnet 0xfb3bf76a p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0xfd40c79d p9_idpool_check +EXPORT_SYMBOL net/9p/9pnet 0xff3e77e9 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0xfffd6502 p9_client_cb +EXPORT_SYMBOL net/appletalk/appletalk 0x0e833f7b alloc_ltalkdev +EXPORT_SYMBOL net/appletalk/appletalk 0x756e7654 aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0xbcc2df34 atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0xea0c1d20 atrtr_get_dev +EXPORT_SYMBOL net/atm/atm 0x004ab011 deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x310ce81f atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x6f9ebaa0 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x88a9207d atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0x929a227c vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0x93136f41 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0x9483251b vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0x95cc050c atm_charge +EXPORT_SYMBOL net/atm/atm 0x99891d07 atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xae303ebd vcc_release_async +EXPORT_SYMBOL net/atm/atm 0xc67951e2 atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0xc971cf7e atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0xd5338f81 atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0xf1d0fd13 atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/ax25/ax25 0x026c1368 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x125976e0 ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x3469a693 ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0x3afee63e ax25_findbyuid +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x50e600bb ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x55bde5d6 ax25_rebuild_header +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0x9b5e4f68 ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0xa688413a ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0xadf4a90d ax25_hard_header +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xda57c9d7 ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0xe71e99e9 ax25_linkfail_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0abfe186 bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0b167468 bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0e9cbc5b bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0x17f8ca81 l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x383b7d52 l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0x387a9a0a bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4638e243 bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4d17c150 __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5b458ee4 bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6427fa5e l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0x65ff80d3 hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x74352bc7 hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x78e995f4 l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7c640527 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x804efc73 hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0x80a545db bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x866d805c hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x890d0b76 hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x89fff073 bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x91c9a325 bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9486ada6 hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x96815620 hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x98539866 hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa64ab744 bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb3669955 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb5669e49 hci_recv_stream_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb61a0c3b bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb7a5d1b4 hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0xbb083f40 bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0xca8d8e10 hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcc1fb551 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0xce4a1b8f bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd5af6525 bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd7e2c1f1 bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdc00526e bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe6713b58 l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe70b9d8f __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf14d4041 bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf2fb64c2 hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf70816e5 hci_recv_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf9081ddc hci_get_route +EXPORT_SYMBOL net/bridge/bridge 0x54fdacb3 br_should_route_hook +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x23d5d16f ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x2555e1cd ebt_register_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x47ef0086 ebt_do_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +EXPORT_SYMBOL net/caif/caif 0x2a09f713 cfpkt_fromnative +EXPORT_SYMBOL net/caif/caif 0x2b5bdf34 cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x329dbd06 cfpkt_info +EXPORT_SYMBOL net/caif/caif 0x38595974 get_cfcnfg +EXPORT_SYMBOL net/caif/caif 0x38701a7c cfcnfg_del_phy_layer +EXPORT_SYMBOL net/caif/caif 0x3d66cd7a caif_connect_client +EXPORT_SYMBOL net/caif/caif 0x4a237e57 cfpkt_tonative +EXPORT_SYMBOL net/caif/caif 0x63dbf97c caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0x6a44fc70 cfpkt_extr_head +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x966d7de2 cfpkt_add_head +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xb751b4b5 caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/can/can 0x36ae87a9 can_ioctl +EXPORT_SYMBOL net/can/can 0x98c19fbb can_rx_register +EXPORT_SYMBOL net/can/can 0xbb0cedaa can_proto_unregister +EXPORT_SYMBOL net/can/can 0xe57b6f71 can_rx_unregister +EXPORT_SYMBOL net/can/can 0xec4fbae6 can_proto_register +EXPORT_SYMBOL net/can/can 0xf7942bb5 can_send +EXPORT_SYMBOL net/ceph/libceph 0x0083ec04 ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0x00c46f76 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x09290ab3 ceph_debugfs_init +EXPORT_SYMBOL net/ceph/libceph 0x0933b525 ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x10940306 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0x124864e1 ceph_osdc_set_request_linger +EXPORT_SYMBOL net/ceph/libceph 0x142ab35e ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x1475bf0d ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x1684c5c2 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0x16cb1668 osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x1705b89f ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x17aa8016 ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0x197effcb ceph_osdc_release_request +EXPORT_SYMBOL net/ceph/libceph 0x1c9123c6 ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x20d151cb ceph_osdc_setup +EXPORT_SYMBOL net/ceph/libceph 0x30f66aca ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x3158173e ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x34a64292 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x353df449 ceph_get_direct_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x3abec91f ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x3dbcafc2 ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x3df0ec7c ceph_calc_ceph_pg +EXPORT_SYMBOL net/ceph/libceph 0x3f688151 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x4184334a ceph_monc_got_mdsmap +EXPORT_SYMBOL net/ceph/libceph 0x4205ffd7 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0x43c8d341 ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x43e458f6 ceph_file_part +EXPORT_SYMBOL net/ceph/libceph 0x43efd647 ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0x45e1f6e7 ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x4ee680b9 osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0x50bde87b osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x5330aaea ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x5379cea3 ceph_caps_for_mode +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x5d3873f1 osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0x5fe4b2fa ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0x6033290d ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x63e1521b osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x65fd75d1 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0x67a332f7 ceph_osdc_readpages +EXPORT_SYMBOL net/ceph/libceph 0x6b2e3bcd ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x6c5d5ac1 ceph_calc_pg_primary +EXPORT_SYMBOL net/ceph/libceph 0x6d2d06a1 ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0x6d87ba66 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0x6e11a505 ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x6ed41be2 ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0x70d1acb8 ceph_osdc_build_request +EXPORT_SYMBOL net/ceph/libceph 0x74684a7d osd_req_op_cls_response_data +EXPORT_SYMBOL net/ceph/libceph 0x74c2eede osd_req_op_watch_init +EXPORT_SYMBOL net/ceph/libceph 0x77692acb ceph_msg_last_put +EXPORT_SYMBOL net/ceph/libceph 0x785723af ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0x79823e69 ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x7dbe3bc3 ceph_osdc_put_event +EXPORT_SYMBOL net/ceph/libceph 0x8a2dc283 ceph_osdc_writepages +EXPORT_SYMBOL net/ceph/libceph 0x90c00100 ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0x915e7d97 ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0x92b55811 ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x971c9a1c osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x975f6b7e ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0x99e36571 ceph_osdc_cleanup +EXPORT_SYMBOL net/ceph/libceph 0x9ee95ddd ceph_client_id +EXPORT_SYMBOL net/ceph/libceph 0x9f534f4d ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xa40bd703 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0xa64039cf ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0xa963428b osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xacd9bd11 ceph_monc_create_snapid +EXPORT_SYMBOL net/ceph/libceph 0xae3515ba ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb11c80ff ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xb40e00ef ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb6081d6d ceph_msgr_exit +EXPORT_SYMBOL net/ceph/libceph 0xb60ed6cf ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0xbd8de707 ceph_osdc_create_event +EXPORT_SYMBOL net/ceph/libceph 0xc05bce68 ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0xc4a80955 ceph_debugfs_cleanup +EXPORT_SYMBOL net/ceph/libceph 0xc50ba801 ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0xc55de604 ceph_parse_options +EXPORT_SYMBOL net/ceph/libceph 0xc8793263 ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xc9f82b38 ceph_msgr_init +EXPORT_SYMBOL net/ceph/libceph 0xcb50a624 ceph_parse_ips +EXPORT_SYMBOL net/ceph/libceph 0xd22f3d07 ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xd2c107bb ceph_flags_to_mode +EXPORT_SYMBOL net/ceph/libceph 0xd7e45687 osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0xd82b9eb7 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0xdc9151b4 ceph_osdc_cancel_event +EXPORT_SYMBOL net/ceph/libceph 0xde77175a __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0xe162f2e6 ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0xe1d99242 ceph_copy_page_vector_to_user +EXPORT_SYMBOL net/ceph/libceph 0xe2c6272a ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0xe40c3b83 ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0xe70e4931 ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0xe82c9c32 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0xeb852daf ceph_osdc_unregister_linger_request +EXPORT_SYMBOL net/ceph/libceph 0xed935c07 ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0xee271855 ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0xeec340ab osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0xef7ab4b9 ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0xf09da8a3 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0xf0fb0036 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0xf28377b1 ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0xf5cd1fa0 ceph_check_fsid +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x12e6fb4f dccp_syn_ack_timeout +EXPORT_SYMBOL net/ieee802154/ieee802154 0x0cb1aa02 ieee802154_nl_assoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x184a479f wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0x34dfd4c6 ieee802154_nl_beacon_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x4317dd35 ieee802154_nl_scan_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x4df9fa43 wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0x5d18ce12 ieee802154_nl_assoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x698aabba ieee802154_nl_disassoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x852ffc02 wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0xa93a5c62 ieee802154_nl_disassoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0xb68ecd10 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0xc095341b wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0xdf7b97cd wpan_phy_alloc +EXPORT_SYMBOL net/ieee802154/ieee802154 0xe9566a4b ieee802154_nl_start_confirm +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xa1cf428f arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xa5870389 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xe2279f12 arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xa76ba69d ipt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xd8c51200 ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xdf0e405c ipt_register_table +EXPORT_SYMBOL net/ipv4/tunnel4 0xf05864b2 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv4/tunnel4 0xf06355a5 xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x8683d95a ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xc932a83f ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x1dad36e9 ip6t_register_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x25b88542 ip6t_do_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xfb5f5990 ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x8534ee26 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/tunnel6 0xba22cbc5 xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x0ce653bc xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x91cfd5e4 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x11021f1d ircomm_disconnect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x1419841e ircomm_connect_response +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x3292cc48 ircomm_control_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x38aa69a1 ircomm_flow_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x3e4f3b58 ircomm_close +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x5bcc2512 ircomm_open +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x9663ef2f ircomm_data_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xca89342d ircomm_connect_request +EXPORT_SYMBOL net/irda/irda 0x01dbeb0e irias_delete_object +EXPORT_SYMBOL net/irda/irda 0x06a3ee58 irias_new_integer_value +EXPORT_SYMBOL net/irda/irda 0x07d3647c irlmp_register_service +EXPORT_SYMBOL net/irda/irda 0x0bab6037 hashbin_remove +EXPORT_SYMBOL net/irda/irda 0x168e3d9a iriap_close +EXPORT_SYMBOL net/irda/irda 0x1c12de5c irttp_data_request +EXPORT_SYMBOL net/irda/irda 0x2036ad06 irda_param_insert +EXPORT_SYMBOL net/irda/irda 0x22a5e822 irlap_close +EXPORT_SYMBOL net/irda/irda 0x23a2eee7 hashbin_remove_this +EXPORT_SYMBOL net/irda/irda 0x33cbe2c6 proc_irda +EXPORT_SYMBOL net/irda/irda 0x359de411 irias_insert_object +EXPORT_SYMBOL net/irda/irda 0x3b0a2ab6 irias_find_object +EXPORT_SYMBOL net/irda/irda 0x3b9bdefe irias_add_octseq_attrib +EXPORT_SYMBOL net/irda/irda 0x405634aa iriap_getvaluebyclass_request +EXPORT_SYMBOL net/irda/irda 0x428321fa hashbin_get_next +EXPORT_SYMBOL net/irda/irda 0x448b8aaa irda_qos_bits_to_value +EXPORT_SYMBOL net/irda/irda 0x457f72cd irttp_open_tsap +EXPORT_SYMBOL net/irda/irda 0x46c1c4a2 irlmp_unregister_service +EXPORT_SYMBOL net/irda/irda 0x48d17824 irias_add_integer_attrib +EXPORT_SYMBOL net/irda/irda 0x5fe3d938 irda_notify_init +EXPORT_SYMBOL net/irda/irda 0x61ca3358 alloc_irdadev +EXPORT_SYMBOL net/irda/irda 0x62acf28c irias_add_string_attrib +EXPORT_SYMBOL net/irda/irda 0x648c7478 hashbin_get_first +EXPORT_SYMBOL net/irda/irda 0x6778388a irttp_close_tsap +EXPORT_SYMBOL net/irda/irda 0x6a6f1d3c irlmp_close_lsap +EXPORT_SYMBOL net/irda/irda 0x6b043eba irda_init_max_qos_capabilies +EXPORT_SYMBOL net/irda/irda 0x7042bc54 irlmp_register_client +EXPORT_SYMBOL net/irda/irda 0x763e54a4 irlmp_unregister_client +EXPORT_SYMBOL net/irda/irda 0x7957f728 irlmp_update_client +EXPORT_SYMBOL net/irda/irda 0x7a49e664 iriap_open +EXPORT_SYMBOL net/irda/irda 0x7d54adaf irias_new_object +EXPORT_SYMBOL net/irda/irda 0x7ff509a2 hashbin_lock_find +EXPORT_SYMBOL net/irda/irda 0x8cd99be0 hashbin_insert +EXPORT_SYMBOL net/irda/irda 0x91815586 irda_param_pack +EXPORT_SYMBOL net/irda/irda 0x94c65bcb irlmp_open_lsap +EXPORT_SYMBOL net/irda/irda 0x957e4bcd irlmp_data_request +EXPORT_SYMBOL net/irda/irda 0x993ad14b irda_param_extract_all +EXPORT_SYMBOL net/irda/irda 0x9e326eb3 hashbin_delete +EXPORT_SYMBOL net/irda/irda 0xa030b1b6 irttp_udata_request +EXPORT_SYMBOL net/irda/irda 0xa370c681 hashbin_find +EXPORT_SYMBOL net/irda/irda 0xad82ffba irttp_flow_request +EXPORT_SYMBOL net/irda/irda 0xada0a9b1 irttp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0xb44bc7da async_wrap_skb +EXPORT_SYMBOL net/irda/irda 0xb5467a97 irlmp_connect_request +EXPORT_SYMBOL net/irda/irda 0xb7f4e408 irlap_open +EXPORT_SYMBOL net/irda/irda 0xb9394173 irias_delete_value +EXPORT_SYMBOL net/irda/irda 0xb949d1bd irlmp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0xbcd3ef13 irias_object_change_attribute +EXPORT_SYMBOL net/irda/irda 0xbe40ace9 irlmp_discovery_request +EXPORT_SYMBOL net/irda/irda 0xc0bee29c hashbin_new +EXPORT_SYMBOL net/irda/irda 0xc9e21bc3 irttp_dup +EXPORT_SYMBOL net/irda/irda 0xcddefe3c irda_device_set_media_busy +EXPORT_SYMBOL net/irda/irda 0xd6deeaae irda_setup_dma +EXPORT_SYMBOL net/irda/irda 0xda5b16a7 irlmp_connect_response +EXPORT_SYMBOL net/irda/irda 0xde4c6b3c irlmp_service_to_hint +EXPORT_SYMBOL net/irda/irda 0xe5596806 irttp_connect_request +EXPORT_SYMBOL net/irda/irda 0xedd521c2 irlmp_get_discoveries +EXPORT_SYMBOL net/irda/irda 0xee248db1 async_unwrap_char +EXPORT_SYMBOL net/irda/irda 0xfa4fc93a irttp_connect_response +EXPORT_SYMBOL net/l2tp/l2tp_core 0x09d30a77 l2tp_recv_common +EXPORT_SYMBOL net/lapb/lapb 0x1c09be4a lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0x1eec6efa lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0x41005452 lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0x4e6d632e lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0x698d2e2a lapb_register +EXPORT_SYMBOL net/lapb/lapb 0x7723be13 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0xbd866987 lapb_unregister +EXPORT_SYMBOL net/lapb/lapb 0xf93d22e8 lapb_data_received +EXPORT_SYMBOL net/llc/llc 0x13bcb3df llc_sap_open +EXPORT_SYMBOL net/llc/llc 0x232117d1 llc_add_pack +EXPORT_SYMBOL net/llc/llc 0x2e131027 llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0xa315599e llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0xd04c8297 llc_sap_find +EXPORT_SYMBOL net/llc/llc 0xd629316a llc_sap_list_lock +EXPORT_SYMBOL net/llc/llc 0xddc90cab llc_sap_close +EXPORT_SYMBOL net/llc/llc 0xfbb11b51 llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/mac80211/mac80211 0x009376f2 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x027def3d ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0x02dee7cc ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x0320d550 ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x03be3ff9 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0x0a9bd6f8 ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0x0aa3752b ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x0ac8c7f7 ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x0c33f5c1 __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x16d1f079 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x1e00961a ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x21a2ae71 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0x24ebf585 ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0x2aafc278 ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0x2e3ec518 ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x44896d42 ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x48e53ac9 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x4a76efc4 ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0x4d467426 ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x501267f6 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x51ba25a2 ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x545951cd ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x564f6f63 rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x5c28cca5 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x5d705714 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x60f40a4d ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0x65148b3f ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0x6622e74a ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x6969f262 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x6d33d08f ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x6d7d20d5 ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x732d7c70 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0x7821b7c7 ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x7c52bd4b ieee80211_rx +EXPORT_SYMBOL net/mac80211/mac80211 0x7d72eabf ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x83fdab5c ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0x893f8a05 ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x8cb46ead ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0x8f930498 ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0x9c5e6334 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0xa049ecbe ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xa1475ece ieee80211_alloc_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xa1fc36c4 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xa94e2194 ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xaa157485 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0xacb3218e ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0xb016fdfd ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0xb1c7aa31 ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0xb706a570 __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xb894e1bd wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xba657df7 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xbe40dbf7 __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0xc15497a0 ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xc3f48fe5 ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0xc475a1d8 ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xc6c24fa1 ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0xc7e9782e ieee80211_get_key_tx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xc8d54c30 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xcccafe99 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xd009e0ce ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0xdac71b17 ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xdb5935bb ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xddb47d52 ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xde0fbf8e __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xe7159907 ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xea978629 ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xeac2ddfb ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0xef4fc9e2 ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xf0547895 ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0xf395de03 ieee80211_aes_cmac_calculate_k1_k2 +EXPORT_SYMBOL net/mac80211/mac80211 0xf506af86 rate_control_send_low +EXPORT_SYMBOL net/mac80211/mac80211 0xf8969c87 ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0xfe85abd5 ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac802154/mac802154 0x3719f3b9 ieee802154_alloc_device +EXPORT_SYMBOL net/mac802154/mac802154 0x55bbbdea ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0xb4b844c7 ieee802154_register_device +EXPORT_SYMBOL net/mac802154/mac802154 0xbf0a9e3e ieee802154_unregister_device +EXPORT_SYMBOL net/mac802154/mac802154 0xd93f6d6c ieee802154_free_device +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x0f615ea0 ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x28861da3 ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x342139d8 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3e559838 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3f2c0f2c register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x6d533ba6 register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x6e959568 ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x8d604db9 ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x960a31a2 unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x972a2e8b ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc19f1771 unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xf0690b22 register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xf2a69a92 ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xf2cf40b0 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x40dd02e4 nf_conntrack_untracked +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xa11a90fd __nf_ct_ext_destroy +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xa2f2adf7 __nf_ct_ext_add_length +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0x827cc6a1 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_conntrack_proto_gre 0x5649f232 nf_ct_gre_keymap_flush +EXPORT_SYMBOL net/netfilter/nf_nat 0x6538b2d2 nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0x7dd4cb20 __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x8ddb577f nf_nat_used_tuple +EXPORT_SYMBOL net/netfilter/nf_nat 0xb9d31452 nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0xbd87f0bf nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0xfa154124 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/x_tables 0x08c473b7 xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0x227379de xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x28ba8b7a xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0x433a872b xt_find_target +EXPORT_SYMBOL net/netfilter/x_tables 0x4f9715e0 xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0x6d872d03 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0x78bcc760 xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xb28f5ef1 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xba01b8a8 xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0xc14261a8 xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xf19e96fd xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0xf6e4862e xt_find_match +EXPORT_SYMBOL net/nfc/hci/hci 0x0ccd88c9 nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0x25e64db9 nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0x27c13e3c nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0x2bc6153b nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0x2e61852f nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0x3ec31957 nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x40aa300c nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0x43028a27 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x4db2f501 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x54801d09 nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0x5f9614b0 nfc_hci_send_response +EXPORT_SYMBOL net/nfc/hci/hci 0x6059a4b0 nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xbca0b4fd nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xc0de82e5 nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xd0b27299 nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0xd26cea68 nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0xd9972ee2 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0xdbd816a6 nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0xedab8a70 nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0xee24d54e nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/nci/nci 0x0fb1244d nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0x6197bb6e nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x71be07b3 nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0x7f6347da nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x8f7024be nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nfc 0x07d82163 nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x0ecd27e5 nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0x1ccf010d nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0x1d966b06 nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0x2962db46 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0x3797bb9f nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0x538dc41c nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0x67f85429 nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0x7dd88225 nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0x7f440f2e nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x97a83c08 nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0x99500d71 nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x9c90ca79 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0xb0249011 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0xc6cd8f3c nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0xc71b6886 nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0xd029e92f nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0xf21d6334 nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0xf49be188 nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0xf867db10 nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc_digital 0x44786403 nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x8be6f014 nfc_digital_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xa55b3738 nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xb9952319 nfc_digital_register_device +EXPORT_SYMBOL net/phonet/phonet 0x1ee8e7e4 pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0x6c0f6675 phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0x7c2ee888 pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0x8aca65c0 phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0xc05d189a phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0xd4d5caf0 pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0xe002285d phonet_proto_register +EXPORT_SYMBOL net/phonet/phonet 0xe4dc0ce8 pn_sock_unhash +EXPORT_SYMBOL net/rds/rds 0x5031b8c5 rds_str_array +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x0d8eae67 rxrpc_kernel_data_delivered +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x45c25405 rxrpc_kernel_intercept_rx_messages +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x4744cdc6 rxrpc_kernel_accept_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x4948a8a5 rxrpc_kernel_is_data_last +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x4c8e861a rxrpc_kernel_get_error_number +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x5d7f787d rxrpc_kernel_get_abort_code +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x687443fd rxrpc_kernel_reject_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x7a44a776 rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x7f782fac rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x82afed10 rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xb4f43676 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xb85b8a79 rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xc74ea880 rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xe0300a35 rxrpc_kernel_free_skb +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xe53b68fd rxrpc_kernel_abort_call +EXPORT_SYMBOL net/sctp/sctp 0x795ff58d sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x0390156f gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x5309896b gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x88052ab8 gss_mech_get +EXPORT_SYMBOL net/sunrpc/sunrpc 0x770d0104 svc_pool_stats_open +EXPORT_SYMBOL net/wimax/wimax 0x5710a6d3 wimax_reset +EXPORT_SYMBOL net/wimax/wimax 0xe19aed92 wimax_rfkill +EXPORT_SYMBOL net/wireless/cfg80211 0x035b0e02 wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0x09c64fbd ieee80211_frequency_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x0a3d734e cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0x0ddc61fc cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x11de0216 cfg80211_roamed_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x186a415b cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x19e03378 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0x226462b3 cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x263583b9 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0x3093982f wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0x378d0ef8 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0x37e91312 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x406a8302 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x434425e0 cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x45551add __ieee80211_get_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x45c2de53 cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x4c3b5878 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x4c40b2fb ieee80211_bss_get_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x5075d64d cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x512149aa cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x52c3f7e6 cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0x549ae50f ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x56ac1a06 cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x584cf651 cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x5aedd698 cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x5c701a15 freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0x5d17c74d cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0x5dfd4595 cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6ad9c256 cfg80211_inform_bss_width_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x6d6cb9ad ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x7141a2c0 ieee80211_data_from_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0x75092753 cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x76c21258 cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7fe1a403 cfg80211_find_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x85096a54 ieee80211_data_to_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0x85e838c2 cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0x87f99fc5 cfg80211_rx_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x8842f444 cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0x93ce187e ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0x982e6b6d ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0x9940acbf cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x9dedf0d6 cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x9e848152 cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0xa1425906 ieee80211_channel_to_frequency +EXPORT_SYMBOL net/wireless/cfg80211 0xa197b1ff ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xa1c5ba03 cfg80211_inform_bss_width +EXPORT_SYMBOL net/wireless/cfg80211 0xa44ffc06 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xa4c581a5 cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0xa7a10239 ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xafdc9c46 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0xb2074c43 cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0xb5f1cbe5 wiphy_new +EXPORT_SYMBOL net/wireless/cfg80211 0xb7086b5a wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xb82defab cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0xb8c1d74c cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0xbf595c54 cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xc15c8611 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0xc3307403 cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0xc368fef2 cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xc427fca6 cfg80211_report_obss_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xc4342f4c cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xc63f1b81 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0xc8fde538 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0xcf618a57 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0xcf812cd1 cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xcfcf7d0d cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0xd25d3dbd regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0xd3fb1002 cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0xd43501d8 cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xdde5ba60 cfg80211_del_sta +EXPORT_SYMBOL net/wireless/cfg80211 0xde55af61 wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0xde7d7752 cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0xe247695c cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0xe270721f cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0xe6cc6287 cfg80211_connect_result +EXPORT_SYMBOL net/wireless/cfg80211 0xe82ba01a cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xee42db3c cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xf0f47fc3 wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xf1c5d055 cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0xfbdd4cc3 cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0xfcaab35f cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0xfed4d591 cfg80211_find_vendor_ie +EXPORT_SYMBOL net/wireless/lib80211 0x1d21a4f9 lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x2d0f99e5 print_ssid +EXPORT_SYMBOL net/wireless/lib80211 0x8d7d4f3e lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0x9cafd7cf lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xd21425c2 lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0xed22397a lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0xf40a020c lib80211_get_crypto_ops +EXPORT_SYMBOL sound/ac97_bus 0x96dc4149 ac97_bus_type +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3eefef9d snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6c48be3a snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xc3d4fbdf snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0xcac0a3be snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0xf33597e0 snd_seq_kernel_client_enqueue_blocking +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x3a57f235 snd_seq_autoload_unlock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x5384f7f7 snd_seq_device_new +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xb90668b2 snd_seq_autoload_lock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xc622fb29 snd_seq_device_unregister_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xd4d0e1ab snd_seq_device_register_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf0a1fdb3 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x2b51b084 snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x350963b4 snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x7f62d029 snd_midi_event_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x83914b9a snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x92ee6bb0 snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x9e7d3f0f snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xbc141dfc snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xf2bf1549 snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0x9984023f snd_virmidi_new +EXPORT_SYMBOL sound/core/snd 0x05867726 snd_power_wait +EXPORT_SYMBOL sound/core/snd 0x0ab7053a snd_card_set_id +EXPORT_SYMBOL sound/core/snd 0x0db2f45e snd_card_file_add +EXPORT_SYMBOL sound/core/snd 0x0dfeec11 snd_jack_set_parent +EXPORT_SYMBOL sound/core/snd 0x157d32a0 snd_ctl_find_id +EXPORT_SYMBOL sound/core/snd 0x18e1683f snd_dma_program +EXPORT_SYMBOL sound/core/snd 0x191e88cf snd_dma_pointer +EXPORT_SYMBOL sound/core/snd 0x23007594 snd_ctl_unregister_ioctl +EXPORT_SYMBOL sound/core/snd 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL sound/core/snd 0x25ee96ba snd_ctl_register_ioctl +EXPORT_SYMBOL sound/core/snd 0x263fe1b7 snd_info_free_entry +EXPORT_SYMBOL sound/core/snd 0x2a8e14d6 snd_unregister_device +EXPORT_SYMBOL sound/core/snd 0x2ae3deaa release_and_free_resource +EXPORT_SYMBOL sound/core/snd 0x2f87b9dd snd_jack_new +EXPORT_SYMBOL sound/core/snd 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL sound/core/snd 0x40637458 snd_card_unref +EXPORT_SYMBOL sound/core/snd 0x40b11574 snd_device_new +EXPORT_SYMBOL sound/core/snd 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL sound/core/snd 0x4b015768 snd_iprintf +EXPORT_SYMBOL sound/core/snd 0x4c3beaa1 snd_ctl_rename_id +EXPORT_SYMBOL sound/core/snd 0x5296583e snd_ctl_boolean_mono_info +EXPORT_SYMBOL sound/core/snd 0x5957dccc snd_card_free_when_closed +EXPORT_SYMBOL sound/core/snd 0x602c96f0 copy_to_user_fromio +EXPORT_SYMBOL sound/core/snd 0x6497d3d2 snd_component_add +EXPORT_SYMBOL sound/core/snd 0x659161cb snd_card_free +EXPORT_SYMBOL sound/core/snd 0x70c15ac1 snd_dma_disable +EXPORT_SYMBOL sound/core/snd 0x76564d8d snd_card_create +EXPORT_SYMBOL sound/core/snd 0x7f9bf5cb snd_device_register +EXPORT_SYMBOL sound/core/snd 0x81b69e41 snd_ctl_enum_info +EXPORT_SYMBOL sound/core/snd 0x82a926e6 snd_pci_quirk_lookup +EXPORT_SYMBOL sound/core/snd 0x8513a720 snd_ctl_remove +EXPORT_SYMBOL sound/core/snd 0x85da8312 snd_info_create_card_entry +EXPORT_SYMBOL sound/core/snd 0x8f595b11 snd_major +EXPORT_SYMBOL sound/core/snd 0x98c0bdf7 snd_ctl_free_one +EXPORT_SYMBOL sound/core/snd 0x9e149ac5 snd_ctl_boolean_stereo_info +EXPORT_SYMBOL sound/core/snd 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL sound/core/snd 0xa0fd2427 snd_pci_quirk_lookup_id +EXPORT_SYMBOL sound/core/snd 0xa133922c snd_ctl_new1 +EXPORT_SYMBOL sound/core/snd 0xa2bce7b4 snd_jack_set_key +EXPORT_SYMBOL sound/core/snd 0xaa11dc70 snd_register_device_for_dev +EXPORT_SYMBOL sound/core/snd 0xac815714 snd_info_create_module_entry +EXPORT_SYMBOL sound/core/snd 0xaedffbb3 snd_seq_root +EXPORT_SYMBOL sound/core/snd 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL sound/core/snd 0xbd126576 snd_ctl_replace +EXPORT_SYMBOL sound/core/snd 0xbfba1da1 snd_ctl_add +EXPORT_SYMBOL sound/core/snd 0xc6d71fd8 snd_card_disconnect +EXPORT_SYMBOL sound/core/snd 0xc702637f snd_info_register +EXPORT_SYMBOL sound/core/snd 0xc739253f snd_card_proc_new +EXPORT_SYMBOL sound/core/snd 0xc7af8d01 snd_card_register +EXPORT_SYMBOL sound/core/snd 0xca5ad770 snd_ctl_notify +EXPORT_SYMBOL sound/core/snd 0xce13db9e snd_device_free +EXPORT_SYMBOL sound/core/snd 0xce3ca308 copy_from_user_toio +EXPORT_SYMBOL sound/core/snd 0xce99e2f6 snd_cards +EXPORT_SYMBOL sound/core/snd 0xcf10a5f2 snd_ctl_find_numid +EXPORT_SYMBOL sound/core/snd 0xd297bf66 snd_ctl_make_virtual_master +EXPORT_SYMBOL sound/core/snd 0xd3769787 snd_add_device_sysfs_file +EXPORT_SYMBOL sound/core/snd 0xd77da4a0 snd_ctl_remove_id +EXPORT_SYMBOL sound/core/snd 0xdaf47906 snd_jack_report +EXPORT_SYMBOL sound/core/snd 0xed31d7df snd_card_file_remove +EXPORT_SYMBOL sound/core/snd 0xf1773c9a _snd_ctl_add_slave +EXPORT_SYMBOL sound/core/snd-hwdep 0x53e457f2 snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-page-alloc 0x1906d4ce snd_dma_alloc_pages_fallback +EXPORT_SYMBOL sound/core/snd-page-alloc 0x1e1a94f6 snd_dma_alloc_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x20424e2a snd_sgbuf_get_chunk_size +EXPORT_SYMBOL sound/core/snd-page-alloc 0x2e58dd52 snd_dma_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x3b91f3af snd_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x76efbdc2 snd_dma_get_reserved_buf +EXPORT_SYMBOL sound/core/snd-page-alloc 0x860669fd snd_dma_reserve_buf +EXPORT_SYMBOL sound/core/snd-page-alloc 0xade88e76 snd_malloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL sound/core/snd-pcm 0x04b0ca6e snd_pcm_lib_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x04cda566 snd_interval_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x0df83004 snd_pcm_notify +EXPORT_SYMBOL sound/core/snd-pcm 0x1302cdff snd_pcm_lib_writev +EXPORT_SYMBOL sound/core/snd-pcm 0x19a48cab snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL sound/core/snd-pcm 0x19b178bf snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL sound/core/snd-pcm 0x1b5a19f5 snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL sound/core/snd-pcm 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL sound/core/snd-pcm 0x1f4ee825 snd_pcm_open_substream +EXPORT_SYMBOL sound/core/snd-pcm 0x203ed0d1 snd_pcm_period_elapsed +EXPORT_SYMBOL sound/core/snd-pcm 0x2150368e snd_pcm_suspend_all +EXPORT_SYMBOL sound/core/snd-pcm 0x27138670 snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x29604989 snd_pcm_mmap_data +EXPORT_SYMBOL sound/core/snd-pcm 0x2d286299 snd_pcm_lib_mmap_iomem +EXPORT_SYMBOL sound/core/snd-pcm 0x32bce302 snd_pcm_new +EXPORT_SYMBOL sound/core/snd-pcm 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL sound/core/snd-pcm 0x3a778a81 snd_pcm_suspend +EXPORT_SYMBOL sound/core/snd-pcm 0x3a9dea8a snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x3edd7fa1 snd_pcm_debug_name +EXPORT_SYMBOL sound/core/snd-pcm 0x46f633f0 snd_pcm_new_internal +EXPORT_SYMBOL sound/core/snd-pcm 0x4d9b6d35 snd_pcm_format_size +EXPORT_SYMBOL sound/core/snd-pcm 0x4e1cff92 snd_pcm_stop +EXPORT_SYMBOL sound/core/snd-pcm 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x50383560 snd_pcm_hw_constraint_step +EXPORT_SYMBOL sound/core/snd-pcm 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL sound/core/snd-pcm 0x5404823f snd_pcm_lib_readv +EXPORT_SYMBOL sound/core/snd-pcm 0x5561eead snd_pcm_sgbuf_ops_page +EXPORT_SYMBOL sound/core/snd-pcm 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL sound/core/snd-pcm 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL sound/core/snd-pcm 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL sound/core/snd-pcm 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL sound/core/snd-pcm 0x84b3dc85 snd_pcm_release_substream +EXPORT_SYMBOL sound/core/snd-pcm 0x894858bb snd_pcm_hw_rule_add +EXPORT_SYMBOL sound/core/snd-pcm 0x89f822fb snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL sound/core/snd-pcm 0x94098ff8 snd_interval_list +EXPORT_SYMBOL sound/core/snd-pcm 0xa0aa6659 snd_pcm_hw_constraint_list +EXPORT_SYMBOL sound/core/snd-pcm 0xa4a690d9 _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL sound/core/snd-pcm 0xa744cff9 snd_pcm_lib_malloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xa9adc229 snd_pcm_link_rwlock +EXPORT_SYMBOL sound/core/snd-pcm 0xaf05d333 snd_pcm_kernel_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0xb02e99bd snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL sound/core/snd-pcm 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL sound/core/snd-pcm 0xbcba3366 snd_pcm_limit_hw_rates +EXPORT_SYMBOL sound/core/snd-pcm 0xc028663c snd_pcm_new_stream +EXPORT_SYMBOL sound/core/snd-pcm 0xc5ce95f7 snd_pcm_lib_write +EXPORT_SYMBOL sound/core/snd-pcm 0xc705253b snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xca9bac7e snd_pcm_set_sync +EXPORT_SYMBOL sound/core/snd-pcm 0xd058e3de snd_pcm_hw_param_last +EXPORT_SYMBOL sound/core/snd-pcm 0xd553ee14 snd_pcm_hw_rule_noresample +EXPORT_SYMBOL sound/core/snd-pcm 0xdb90fd56 snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL sound/core/snd-pcm 0xe509247c snd_pcm_lib_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL sound/core/snd-pcm 0xe6ed0a5c snd_pcm_lib_read +EXPORT_SYMBOL sound/core/snd-pcm 0xe79fbb3b snd_pcm_hw_constraint_integer +EXPORT_SYMBOL sound/core/snd-pcm 0xe83b6e0e snd_pcm_hw_refine +EXPORT_SYMBOL sound/core/snd-pcm 0xf270eecb snd_pcm_set_ops +EXPORT_SYMBOL sound/core/snd-pcm 0xf3797152 snd_interval_ratnum +EXPORT_SYMBOL sound/core/snd-pcm 0xf4a5c0d5 snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0xf4f417e6 snd_pcm_hw_param_first +EXPORT_SYMBOL sound/core/snd-pcm 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL sound/core/snd-rawmidi 0x08ee103a snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0a1ae714 snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0bfb0455 snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0x178269a8 snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0x1a5371de snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0x1c107000 snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-rawmidi 0x35b21a93 snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x3e00e8ae snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0x4109158a snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0x41b8851d snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0x4521132e snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0x97a84f03 snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0x9c2a7245 snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0xba463f6d snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0xd5e6b8fe snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf26e37a8 snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf7b2592c snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-timer 0x096b4fe9 snd_timer_pause +EXPORT_SYMBOL sound/core/snd-timer 0x0c7582fb snd_timer_new +EXPORT_SYMBOL sound/core/snd-timer 0x1c3578eb snd_timer_start +EXPORT_SYMBOL sound/core/snd-timer 0x1f4a3d02 snd_timer_stop +EXPORT_SYMBOL sound/core/snd-timer 0x32e90fc2 snd_timer_global_register +EXPORT_SYMBOL sound/core/snd-timer 0x4491afc1 snd_timer_interrupt +EXPORT_SYMBOL sound/core/snd-timer 0x69dc8168 snd_timer_close +EXPORT_SYMBOL sound/core/snd-timer 0x6d541f23 snd_timer_continue +EXPORT_SYMBOL sound/core/snd-timer 0x7ccdfabc snd_timer_global_new +EXPORT_SYMBOL sound/core/snd-timer 0xb62cb52e snd_timer_notify +EXPORT_SYMBOL sound/core/snd-timer 0xcc062d0f snd_timer_global_free +EXPORT_SYMBOL sound/core/snd-timer 0xcc092f54 snd_timer_resolution +EXPORT_SYMBOL sound/core/snd-timer 0xcdeb72ba snd_timer_open +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xb29e1bf8 snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x59d9cd20 snd_opl3_reset +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x5ff1f5af snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x7481d232 snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xb3ffcacd snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xba46de71 snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xd5534d28 snd_opl3_create +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xd8cc161b snd_opl3_init +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xe6a49b26 snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xf7ef639e snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/opl4/snd-opl4-lib 0x1587e609 snd_opl4_read_memory +EXPORT_SYMBOL sound/drivers/opl4/snd-opl4-lib 0x42e3b133 snd_opl4_read +EXPORT_SYMBOL sound/drivers/opl4/snd-opl4-lib 0x4db0602a snd_opl4_write +EXPORT_SYMBOL sound/drivers/opl4/snd-opl4-lib 0x8a7e5acd snd_opl4_create +EXPORT_SYMBOL sound/drivers/opl4/snd-opl4-lib 0xd3516cb3 snd_opl4_write_memory +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x02702290 snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x158b8f1e snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x1aa71c6f snd_vx_dsp_boot +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x5faf91af snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x619c872c snd_vx_resume +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x71c3d753 snd_vx_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xa1012222 snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xb1da67b4 snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xba385dd1 snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x00e15bb1 amdtp_out_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x03d37eb0 amdtp_out_stream_set_pcm_format +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x0536e4ff fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x06fed24a amdtp_out_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x1b309f17 iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x42815057 fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5defc5ab fw_iso_resources_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x63a2efd1 amdtp_out_stream_start +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x6bbfcf41 amdtp_out_stream_pcm_pointer +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x70bda729 amdtp_out_stream_stop +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x7c103b1d cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x88160bc4 cmp_connection_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x8b820e44 amdtp_out_stream_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x8ca1abe6 fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x97e7cd3f cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa14ff897 amdtp_out_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa3d7e746 amdtp_out_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xaf4f1727 cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xaf6048ce amdtp_out_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xbeafdf61 fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xca525438 amdtp_out_stream_set_parameters +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd5f87778 cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xec41107d iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf1fdd372 fcp_avc_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf7edb9a4 snd_fw_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xfc858195 fw_iso_resources_destroy +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x13604c03 snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x15b42461 snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x502afd11 snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x76f3078c snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xe9d277c4 snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xf2714f93 snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x201f50c3 snd_ak4117_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x2ed04487 snd_ak4117_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x31fc310e snd_ak4117_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x4f740244 snd_ak4117_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x549ef3b7 snd_ak4117_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xb0564624 snd_ak4117_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x2cbcecb9 snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x7c970018 snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xa03ba01b snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xdcbb5242 snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0xae77e7dc snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0xcde9e3e7 snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x1c395862 snd_cs8427_reg_write +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x3971d926 snd_cs8427_create +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x3fb2a83b snd_cs8427_iec958_active +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x74b509f1 snd_cs8427_iec958_pcm +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x89a249e8 snd_cs8427_iec958_build +EXPORT_SYMBOL sound/i2c/snd-i2c 0x3bc92995 snd_i2c_bus_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x42e86c5b snd_i2c_probeaddr +EXPORT_SYMBOL sound/i2c/snd-i2c 0x5ba6f0cc snd_i2c_readbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x5d287176 snd_i2c_sendbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0xb596c024 snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0xe271d94c snd_i2c_device_free +EXPORT_SYMBOL sound/i2c/snd-tea6330t 0x72a90d1e snd_tea6330t_update_mixer +EXPORT_SYMBOL sound/i2c/snd-tea6330t 0xf697f468 snd_tea6330t_detect +EXPORT_SYMBOL sound/isa/es1688/snd-es1688-lib 0x6a4c230f snd_es1688_mixer_write +EXPORT_SYMBOL sound/isa/es1688/snd-es1688-lib 0x70ba1a5f snd_es1688_mixer +EXPORT_SYMBOL sound/isa/es1688/snd-es1688-lib 0xa84d9d2f snd_es1688_reset +EXPORT_SYMBOL sound/isa/es1688/snd-es1688-lib 0xc257035a snd_es1688_create +EXPORT_SYMBOL sound/isa/es1688/snd-es1688-lib 0xd53b7cdb snd_es1688_pcm +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x16a6cd38 snd_gf1_poke +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x19e5f45c snd_gf1_ctrl_stop +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x1c1ce117 snd_gus_interrupt +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x23d28546 snd_gf1_alloc_voice +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x36928081 snd_gf1_rawmidi_new +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x398840e4 snd_gf1_i_look16 +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x46db8d67 snd_gf1_lvol_to_gvol_raw +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x54130b49 snd_gus_use_inc +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x5e47c812 snd_gf1_mem_alloc +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x62396101 snd_gf1_stop_voice +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x641e0dc5 snd_gf1_write8 +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x6b2cf494 snd_gf1_i_write8 +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x6e74ebcf snd_gf1_delay +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x6f42aca1 snd_gus_dram_read +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x73024709 snd_gf1_new_mixer +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x79bbaf8b snd_gus_create +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0x8b4e9c8c snd_gf1_look8 +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xa7676b32 snd_gf1_i_look8 +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xab511ac9 snd_gf1_translate_freq +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xaff815e8 snd_gf1_write_addr +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xb0987a20 snd_gf1_dram_addr +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xb207ac27 snd_gus_initialize +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xb5f4fb9d snd_gus_use_dec +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xb6d06164 snd_gf1_look16 +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xba45daa6 snd_gus_dram_write +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xc43a5527 snd_gf1_atten_table +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xc977e0f8 snd_gf1_pcm_new +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xcd8da9df snd_gf1_mem_xfree +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xd3c28a24 snd_gf1_mem_lock +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xf4896b61 snd_gf1_free_voice +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xf89afc1a snd_gf1_write16 +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xfa557f55 snd_gf1_mem_free +EXPORT_SYMBOL sound/isa/gus/snd-gus-lib 0xfe33fc15 snd_gf1_peek +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x0e096be3 snd_msnd_init_queue +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x18c9121a snd_msnd_send_word +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x302fe04d snd_msnd_DARQ +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x3a451abe snd_msnd_DAPQ +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x3bba3fb9 snd_msnd_upload_host +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x4c1f3a58 snd_msndmix_setup +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x59335ba8 snd_msnd_send_dsp_cmd +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x5e1fb02a snd_msnd_disable_irq +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x71d5e1a8 snd_msnd_pcm +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0x75026b24 snd_msndmidi_input_read +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0xa943d4e4 snd_msnd_dsp_halt +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0xb34ed028 snd_msndmix_new +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0xd19996da snd_msnd_enable_irq +EXPORT_SYMBOL sound/isa/msnd/snd-msnd-lib 0xefa2160c snd_msndmix_force_recsrc +EXPORT_SYMBOL sound/isa/opti9xx/snd-miro 0x6d5f5c39 snd_aci_cmd +EXPORT_SYMBOL sound/isa/opti9xx/snd-miro 0x83f8be58 snd_aci_get_aci +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x1829f3a4 snd_sbmixer_suspend +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x21644c7c snd_sbmixer_read +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x4ae2d2da snd_sbmixer_new +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x65858c7e snd_sbdsp_command +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x6cb4d341 snd_sbdsp_get_byte +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x83163d10 snd_sbmixer_add_ctl +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x8821fcb4 snd_sbdsp_create +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x955234c4 snd_sbmixer_resume +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xc5931104 snd_sbmixer_write +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xc8dd3993 snd_sbdsp_reset +EXPORT_SYMBOL sound/isa/sb/snd-sb16-csp 0x8c24ff25 snd_sb_csp_new +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x3d3b6585 snd_sb16dsp_get_pcm_ops +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x6937f23a snd_sb16dsp_configure +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xe0b3f690 snd_sb16dsp_interrupt +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xf95e6c58 snd_sb16dsp_pcm +EXPORT_SYMBOL sound/isa/sb/snd-sb8-dsp 0xb4c1d62c snd_sb8dsp_pcm +EXPORT_SYMBOL sound/isa/sb/snd-sb8-dsp 0xc3cb8e2e snd_sb8dsp_interrupt +EXPORT_SYMBOL sound/isa/sb/snd-sb8-dsp 0xe16915bb snd_sb8dsp_midi +EXPORT_SYMBOL sound/isa/sb/snd-sb8-dsp 0xf414e376 snd_sb8dsp_midi_interrupt +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0x0518e72c snd_emu8000_poke_dw +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0x055063bc snd_emu8000_poke +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0x0b6fa137 snd_emu8000_dma_chan +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0x2fc85445 snd_emu8000_update_chorus_mode +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0x55151780 snd_emu8000_update_reverb_mode +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0x5d2934a5 snd_emu8000_peek_dw +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0x7a3e4a6a snd_emu8000_init_fm +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0x9d440a5b snd_emu8000_peek +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0xc628d60d snd_emu8000_update_equalizer +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0xe8ee0d4d snd_emu8000_load_reverb_fx +EXPORT_SYMBOL sound/isa/sb/snd-sbawe 0xf8ea0b85 snd_emu8000_load_chorus_fx +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x075b989d snd_cs4236_ext_in +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x189b9847 snd_wss_mce_down +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x1a785323 snd_wss_info_single +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x1fb30f7f snd_wss_overrange +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x40f8959b snd_wss_put_double +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x43974104 snd_wss_get_double +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x44f75f85 snd_wss_mce_up +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x62c0b418 snd_wss_mixer +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x662016b0 snd_wss_timer +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x6fdb71f2 snd_wss_get_pcm_ops +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x77bf31fc snd_wss_create +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x7b202637 snd_wss_interrupt +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0x9b99ca05 snd_wss_out +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0xa5f974f5 snd_wss_put_single +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0xa696a06a snd_wss_get_single +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0xaf03346e snd_wss_chip_id +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0xb78f4558 snd_wss_pcm +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0xb79ef66b snd_wss_in +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0xce2730ee snd_wss_info_double +EXPORT_SYMBOL sound/isa/wss/snd-wss-lib 0xf5f7c340 snd_cs4236_ext_out +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x1c2b1dfa snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x21a7a62e snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x2e70cfa6 snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x35bca914 snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x53eeabee snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x5e1c6366 snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x6fd165b8 snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x73b1a976 snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x831baf0e snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x9430111f snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x9dc64530 snd_ac97_resume +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xb596f421 snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xd703e0ce snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xdba41ad9 snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xe571c530 snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xe82b2d82 snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xef9877f9 snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/asihpi/snd-asihpi 0x93fe0d3c hpi_send_recv +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x324f4083 snd_emu10k1_memblk_map +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x53072cdf snd_emu10k1_ptr_write +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x6687da25 snd_emu10k1_voice_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x712658a6 snd_emu10k1_ptr_read +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x7bfdde95 snd_emu10k1_synth_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x8be81c20 snd_emu10k1_synth_bzero +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xc1f902bd snd_emu10k1_voice_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xcc1b30c4 snd_emu10k1_synth_copy_from_user +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xdc100b3e snd_emu10k1_synth_alloc +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x539b65e3 snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x5825665f snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xe86a1638 snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x11c4175f oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x11f84b7f oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x135cbe24 oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x2ab8f902 oxygen_write8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x3c66e442 oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x46db6377 oxygen_pci_remove +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x4e444b0b oxygen_pci_pm +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x5dc8fe6f oxygen_write_i2c +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x62f1a62a oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x68144285 oxygen_write32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x8493d24a oxygen_write_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x9977d98d oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x99c15aec oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xa6281998 oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc415f595 oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc99e3a8c oxygen_pci_probe +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xd3cdd34a oxygen_write16_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xdbe6bb0d oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xec13d0bd oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xf0594784 oxygen_read8 +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x0fa843f8 snd_trident_write_voice_regs +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xaa3dcf32 snd_trident_free_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xd8ba265c snd_trident_stop_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xda6f84b6 snd_trident_alloc_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xf1de0d60 snd_trident_start_voice +EXPORT_SYMBOL sound/soundcore 0x33c1801e sound_class +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x00dbc8a6 snd_emux_lock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x35418e79 snd_emux_unlock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x54cfe6bc snd_emux_new +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x5a65ed3a snd_emux_register +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x655cb202 snd_sf_linear_to_log +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x76ecb770 snd_emux_free +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xf4c66271 snd_emux_terminate_all +EXPORT_SYMBOL sound/synth/snd-util-mem 0x242c9aa0 __snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x32cd15f0 snd_util_mem_avail +EXPORT_SYMBOL sound/synth/snd-util-mem 0x38bda4ab snd_util_memhdr_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x4d30d14c snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x6382adf4 snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x692d9311 snd_util_memhdr_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x9ef790e3 __snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0xbd1236de __snd_util_memblk_new +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x56af78b3 snd_usbmidi_create +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL vmlinux 0x00000000 __symbol_put +EXPORT_SYMBOL vmlinux 0x00000000 current_fs_time +EXPORT_SYMBOL vmlinux 0x00000000 d_tmpfile +EXPORT_SYMBOL vmlinux 0x00000000 do_sync_read +EXPORT_SYMBOL vmlinux 0x00000000 filp_close +EXPORT_SYMBOL vmlinux 0x00000000 finish_open +EXPORT_SYMBOL vmlinux 0x00000000 generic_getxattr +EXPORT_SYMBOL vmlinux 0x00000000 generic_write_sync +EXPORT_SYMBOL vmlinux 0x00000000 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x00000000 in_group_p +EXPORT_SYMBOL vmlinux 0x00000000 inode_add_bytes +EXPORT_SYMBOL vmlinux 0x00000000 iov_shorten +EXPORT_SYMBOL vmlinux 0x00000000 iterate_fd +EXPORT_SYMBOL vmlinux 0x00000000 ns_capable +EXPORT_SYMBOL vmlinux 0x00000000 path_is_under +EXPORT_SYMBOL vmlinux 0x00000000 register_exec_domain +EXPORT_SYMBOL vmlinux 0x00000000 schedule_timeout +EXPORT_SYMBOL vmlinux 0x00000000 sock_register +EXPORT_SYMBOL vmlinux 0x00000000 sys_close +EXPORT_SYMBOL vmlinux 0x00000000 task_nice +EXPORT_SYMBOL vmlinux 0x00000000 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x00000000 vm_brk +EXPORT_SYMBOL vmlinux 0x0003a8a7 ndo_dflt_bridge_getlink +EXPORT_SYMBOL vmlinux 0x00585072 request_firmware +EXPORT_SYMBOL vmlinux 0x005914da sock_alloc_file +EXPORT_SYMBOL vmlinux 0x00801678 flush_scheduled_work +EXPORT_SYMBOL vmlinux 0x0089db92 page_symlink +EXPORT_SYMBOL vmlinux 0x00a2746a arp_send +EXPORT_SYMBOL vmlinux 0x00b9b37b mutex_trylock +EXPORT_SYMBOL vmlinux 0x00bf9f91 efi +EXPORT_SYMBOL vmlinux 0x00bfd14a generic_make_request +EXPORT_SYMBOL vmlinux 0x00c52430 ida_simple_get +EXPORT_SYMBOL vmlinux 0x00e8097b csum_partial_copy_fromiovecend +EXPORT_SYMBOL vmlinux 0x00ff27a1 key_validate +EXPORT_SYMBOL vmlinux 0x01139ffc max_mapnr +EXPORT_SYMBOL vmlinux 0x011db626 generic_file_open +EXPORT_SYMBOL vmlinux 0x01444cd1 idr_replace +EXPORT_SYMBOL vmlinux 0x01481e91 bio_integrity_enabled +EXPORT_SYMBOL vmlinux 0x0151d17e vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0x015c782e dquot_resume +EXPORT_SYMBOL vmlinux 0x0168a4f3 padata_set_cpumasks +EXPORT_SYMBOL vmlinux 0x01809b8d serio_close +EXPORT_SYMBOL vmlinux 0x01902adf netpoll_trap +EXPORT_SYMBOL vmlinux 0x01c05eb3 send_sig +EXPORT_SYMBOL vmlinux 0x01cfdce6 tty_check_change +EXPORT_SYMBOL vmlinux 0x020fe9d9 twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x022baed4 dma_common_get_sgtable +EXPORT_SYMBOL vmlinux 0x0237b57a arch_unregister_cpu +EXPORT_SYMBOL vmlinux 0x02649054 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x026959f5 write_dirty_buffer +EXPORT_SYMBOL vmlinux 0x026ece25 blk_queue_io_min +EXPORT_SYMBOL vmlinux 0x027156e7 from_kuid +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x028080a4 kobject_add +EXPORT_SYMBOL vmlinux 0x029444f0 native_read_tsc +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a6ce5a crc16_table +EXPORT_SYMBOL vmlinux 0x02ee26c1 free_pages_exact +EXPORT_SYMBOL vmlinux 0x02f0246d blk_make_request +EXPORT_SYMBOL vmlinux 0x0306210e generic_file_buffered_write +EXPORT_SYMBOL vmlinux 0x03095c4a f_setown +EXPORT_SYMBOL vmlinux 0x03111115 pci_set_master +EXPORT_SYMBOL vmlinux 0x0319fa4f ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x0347fed0 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0x034f4526 dev_close +EXPORT_SYMBOL vmlinux 0x03592ea0 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x037d2ee4 pci_save_state +EXPORT_SYMBOL vmlinux 0x039d7bca pid_task +EXPORT_SYMBOL vmlinux 0x03a796f1 pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x03a9d563 input_inject_event +EXPORT_SYMBOL vmlinux 0x03b1d1dd pnp_request_card_device +EXPORT_SYMBOL vmlinux 0x03b580eb wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x03b70c52 sock_create +EXPORT_SYMBOL vmlinux 0x03c06156 bitmap_fold +EXPORT_SYMBOL vmlinux 0x03ca1ddf from_kgid_munged +EXPORT_SYMBOL vmlinux 0x03d748f3 get_thermal_instance +EXPORT_SYMBOL vmlinux 0x03ec5293 directly_mappable_cdev_bdi +EXPORT_SYMBOL vmlinux 0x03f91c8a security_inode_init_security +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x0422fe4a inet_csk_timer_bug_msg +EXPORT_SYMBOL vmlinux 0x043801aa phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x044923f9 inode_dio_done +EXPORT_SYMBOL vmlinux 0x0456033c netif_receive_skb +EXPORT_SYMBOL vmlinux 0x04580a86 netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0x046889bc __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0x04695e4c seq_bitmap_list +EXPORT_SYMBOL vmlinux 0x0475090c blk_get_backing_dev_info +EXPORT_SYMBOL vmlinux 0x048555e8 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x0485a2af scsi_host_set_state +EXPORT_SYMBOL vmlinux 0x0487f831 fb_find_best_display +EXPORT_SYMBOL vmlinux 0x048834d1 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x04a1ff82 sk_stream_error +EXPORT_SYMBOL vmlinux 0x04d8c750 release_perfctr_nmi +EXPORT_SYMBOL vmlinux 0x04e633d1 tcf_generic_walker +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x050877b9 dmi_first_match +EXPORT_SYMBOL vmlinux 0x050e2c98 generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0x051c3420 ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x052caffe sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0x054434d6 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x0544f404 update_devfreq +EXPORT_SYMBOL vmlinux 0x05523095 wake_up_process +EXPORT_SYMBOL vmlinux 0x0556f286 iov_iter_copy_from_user +EXPORT_SYMBOL vmlinux 0x057ce975 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0x0593a99b init_timer_key +EXPORT_SYMBOL vmlinux 0x05a51e74 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x05c2a13e ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x05cc9a55 replace_mount_options +EXPORT_SYMBOL vmlinux 0x05d7afd7 generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0x05f2d94c d_splice_alias +EXPORT_SYMBOL vmlinux 0x05fd5047 page_follow_link_light +EXPORT_SYMBOL vmlinux 0x0601eb38 seq_vprintf +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x063dfc77 dquot_transfer +EXPORT_SYMBOL vmlinux 0x06591b7f scsi_register +EXPORT_SYMBOL vmlinux 0x067d8d35 security_release_secctx +EXPORT_SYMBOL vmlinux 0x068c7263 ioremap_cache +EXPORT_SYMBOL vmlinux 0x06a2e70f get_fs_type +EXPORT_SYMBOL vmlinux 0x06a2e995 blk_rq_map_user +EXPORT_SYMBOL vmlinux 0x06c0dae5 __kernel_fpu_end +EXPORT_SYMBOL vmlinux 0x06c1730f __register_chrdev +EXPORT_SYMBOL vmlinux 0x06d2f086 dma_spin_lock +EXPORT_SYMBOL vmlinux 0x06d2f233 dev_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x06e458e0 ida_get_new_above +EXPORT_SYMBOL vmlinux 0x06fe3b14 default_grn +EXPORT_SYMBOL vmlinux 0x070b44ae xfrm_init_replay +EXPORT_SYMBOL vmlinux 0x070c7f08 fb_set_suspend +EXPORT_SYMBOL vmlinux 0x0716a05c proc_create_data +EXPORT_SYMBOL vmlinux 0x0727c4f3 iowrite8 +EXPORT_SYMBOL vmlinux 0x073b6f53 dput +EXPORT_SYMBOL vmlinux 0x073dfa12 generate_resume_trace +EXPORT_SYMBOL vmlinux 0x07608604 acpi_get_vendor_resource +EXPORT_SYMBOL vmlinux 0x0776e40a phy_get_eee_err +EXPORT_SYMBOL vmlinux 0x078526fc dev_warn +EXPORT_SYMBOL vmlinux 0x0799aca4 local_bh_enable +EXPORT_SYMBOL vmlinux 0x079df84b pipe_to_file +EXPORT_SYMBOL vmlinux 0x07a66cf2 tcf_hash_release +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07aa3290 acpi_walk_resource_buffer +EXPORT_SYMBOL vmlinux 0x07abbacd ida_destroy +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07d46cf7 splice_from_pipe_end +EXPORT_SYMBOL vmlinux 0x07d48ab0 lro_receive_skb +EXPORT_SYMBOL vmlinux 0x07d50a24 csum_partial +EXPORT_SYMBOL vmlinux 0x07db2adb seq_write +EXPORT_SYMBOL vmlinux 0x081a34fa d_move +EXPORT_SYMBOL vmlinux 0x081b831f sock_no_listen +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x082ccf2d pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x08462619 blk_mq_init_commands +EXPORT_SYMBOL vmlinux 0x08482f45 alloc_file +EXPORT_SYMBOL vmlinux 0x0857cefb __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0x085ba8cb ip6_expire_frag_queue +EXPORT_SYMBOL vmlinux 0x085f2871 tty_unregister_device +EXPORT_SYMBOL vmlinux 0x08739775 ppp_unit_number +EXPORT_SYMBOL vmlinux 0x0895df99 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0x0897287b acpi_disable_all_gpes +EXPORT_SYMBOL vmlinux 0x08a4601f clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0x08be1139 dquot_get_dqinfo +EXPORT_SYMBOL vmlinux 0x08bf826c _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0x08f838c7 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0x08fb456e bdev_stack_limits +EXPORT_SYMBOL vmlinux 0x0909e152 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0x095cac6b sockfd_lookup +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x0992780d efi_enabled +EXPORT_SYMBOL vmlinux 0x09ac3d4d vm_mmap +EXPORT_SYMBOL vmlinux 0x09c55cec schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09cf98b6 pagevec_lookup +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09eb0c77 from_kprojid +EXPORT_SYMBOL vmlinux 0x09f2f785 abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0x0a17c8ab get_io_context +EXPORT_SYMBOL vmlinux 0x0a2487e0 unblock_all_signals +EXPORT_SYMBOL vmlinux 0x0a2f8967 blk_mq_free_queue +EXPORT_SYMBOL vmlinux 0x0a3131f6 strnchr +EXPORT_SYMBOL vmlinux 0x0a469d23 mfd_clone_cell +EXPORT_SYMBOL vmlinux 0x0a56d356 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x0a57f50e filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x0a5c2c0c dm_put_device +EXPORT_SYMBOL vmlinux 0x0a6f8c6f netdev_printk +EXPORT_SYMBOL vmlinux 0x0a86e25b _raw_read_unlock_irq +EXPORT_SYMBOL vmlinux 0x0a8a7ac9 inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0x0aaafd6f mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x0ab6988b pci_dev_get +EXPORT_SYMBOL vmlinux 0x0ac4b0df bdput +EXPORT_SYMBOL vmlinux 0x0ac525e6 register_sysctl +EXPORT_SYMBOL vmlinux 0x0acb1a3c __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ad8e319 scsi_cmd_print_sense_hdr +EXPORT_SYMBOL vmlinux 0x0add795a __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0x0aeeebc6 netdev_alert +EXPORT_SYMBOL vmlinux 0x0b0d888b icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b2002c4 kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0x0b2da6e6 netlink_ack +EXPORT_SYMBOL vmlinux 0x0b3d64b4 xfrm4_prepare_output +EXPORT_SYMBOL vmlinux 0x0b48677a __kfifo_init +EXPORT_SYMBOL vmlinux 0x0b48c680 pnp_is_active +EXPORT_SYMBOL vmlinux 0x0b4f3bd0 simple_getattr +EXPORT_SYMBOL vmlinux 0x0b61552c gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0x0b6e93a9 kmem_cache_create +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b8cd6ec mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x0bbc5908 gen_estimator_active +EXPORT_SYMBOL vmlinux 0x0bbed7a5 PDE_DATA +EXPORT_SYMBOL vmlinux 0x0bc0c1e5 skb_checksum +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bd138d6 pci_get_slot +EXPORT_SYMBOL vmlinux 0x0beafcde gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x0c01e42b rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x0c0aaefa xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x0c1445ce agp_free_page_array +EXPORT_SYMBOL vmlinux 0x0c45fc96 vfs_lstat +EXPORT_SYMBOL vmlinux 0x0c58a8cd netdev_increment_features +EXPORT_SYMBOL vmlinux 0x0c65e73c scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0x0c78f90a kmap_atomic +EXPORT_SYMBOL vmlinux 0x0c8c9e99 scsi_show_extd_sense +EXPORT_SYMBOL vmlinux 0x0ca7b7a8 acpi_check_region +EXPORT_SYMBOL vmlinux 0x0cae232b utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0x0cc5966d __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x0cd5ab4a blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0x0cdb7d12 __kernel_fpu_begin +EXPORT_SYMBOL vmlinux 0x0ce4d84e scsi_is_target_device +EXPORT_SYMBOL vmlinux 0x0ce900af blk_finish_plug +EXPORT_SYMBOL vmlinux 0x0cfea9e7 linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x0d0aa7be dev_err +EXPORT_SYMBOL vmlinux 0x0d0d85cc input_release_device +EXPORT_SYMBOL vmlinux 0x0d0dce08 rtnl_create_link +EXPORT_SYMBOL vmlinux 0x0d0dff8b sk_free +EXPORT_SYMBOL vmlinux 0x0d20efd0 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0x0d2c5024 blk_integrity_is_initialized +EXPORT_SYMBOL vmlinux 0x0d34419c filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0x0d3ced6b set_security_override +EXPORT_SYMBOL vmlinux 0x0d3dda14 acpi_get_type +EXPORT_SYMBOL vmlinux 0x0d46d16f blk_init_tags +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d59e56c xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0x0d89d9aa __sk_dst_check +EXPORT_SYMBOL vmlinux 0x0d966a79 nla_put +EXPORT_SYMBOL vmlinux 0x0da10ec3 security_sock_graft +EXPORT_SYMBOL vmlinux 0x0dd24f47 dma_async_device_register +EXPORT_SYMBOL vmlinux 0x0de6c64c sb_set_blocksize +EXPORT_SYMBOL vmlinux 0x0e0b8a9f register_framebuffer +EXPORT_SYMBOL vmlinux 0x0e0f39f6 revalidate_disk +EXPORT_SYMBOL vmlinux 0x0e14340f __wait_on_buffer +EXPORT_SYMBOL vmlinux 0x0e24479b __ethtool_get_settings +EXPORT_SYMBOL vmlinux 0x0e6da44a set_normalized_timespec +EXPORT_SYMBOL vmlinux 0x0e93a38f inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x0e93c0d6 blk_end_request +EXPORT_SYMBOL vmlinux 0x0eaf451e hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x0ec4c729 scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x0ed8dffd free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x0ef102c1 give_up_console +EXPORT_SYMBOL vmlinux 0x0efcbb1b set_current_groups +EXPORT_SYMBOL vmlinux 0x0f362da1 seq_putc +EXPORT_SYMBOL vmlinux 0x0f4c91ed ns_to_timespec +EXPORT_SYMBOL vmlinux 0x0f5adcbb netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0x0f87bde7 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0x0f9d302e iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fb8b861 tcp_release_cb +EXPORT_SYMBOL vmlinux 0x0fc1c630 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0x0fd00a68 acpi_clear_event +EXPORT_SYMBOL vmlinux 0x0feb55f6 lookup_one_len +EXPORT_SYMBOL vmlinux 0x0ff2b602 slhc_compress +EXPORT_SYMBOL vmlinux 0x10058e2a rtnl_notify +EXPORT_SYMBOL vmlinux 0x100d80fc posix_unblock_lock +EXPORT_SYMBOL vmlinux 0x102c56de irq_regs +EXPORT_SYMBOL vmlinux 0x1041843a unlock_buffer +EXPORT_SYMBOL vmlinux 0x1045f07b dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0x104987d5 pnp_register_card_driver +EXPORT_SYMBOL vmlinux 0x106e3b87 mmc_hw_reset_check +EXPORT_SYMBOL vmlinux 0x106f13ab crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x10a207ba nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x10ab7e05 devm_gpiod_put +EXPORT_SYMBOL vmlinux 0x10ab7e68 down_killable +EXPORT_SYMBOL vmlinux 0x10b41532 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x10c22075 fget_raw +EXPORT_SYMBOL vmlinux 0x10d16ff2 mpage_readpages +EXPORT_SYMBOL vmlinux 0x10e2ccca splice_from_pipe_next +EXPORT_SYMBOL vmlinux 0x10ee20bb default_blu +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x11267875 scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0x11277f78 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0x11470453 udp_ioctl +EXPORT_SYMBOL vmlinux 0x115b83b6 udp_add_offload +EXPORT_SYMBOL vmlinux 0x115fec97 ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x117cac09 napi_complete +EXPORT_SYMBOL vmlinux 0x119f6d64 vc_cons +EXPORT_SYMBOL vmlinux 0x11a58fd2 truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x11cbf054 elv_dispatch_add_tail +EXPORT_SYMBOL vmlinux 0x11d68f12 scsi_device_resume +EXPORT_SYMBOL vmlinux 0x11dd01ad intel_scu_ipc_command +EXPORT_SYMBOL vmlinux 0x11e2ec12 flex_array_free_parts +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x11facbc8 scsi_unregister +EXPORT_SYMBOL vmlinux 0x120b15f5 input_reset_device +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x120b725d serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0x121050d8 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x12308f9f scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0x12358ef4 gen_pool_add_virt +EXPORT_SYMBOL vmlinux 0x1243b0ea pagevec_lookup_tag +EXPORT_SYMBOL vmlinux 0x125dc4d7 abx500_remove_ops +EXPORT_SYMBOL vmlinux 0x1270e0b2 scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x1289d97c poll_schedule_timeout +EXPORT_SYMBOL vmlinux 0x128a5cf9 complete_all +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12b6c502 dev_printk +EXPORT_SYMBOL vmlinux 0x12da5bb2 __kmalloc +EXPORT_SYMBOL vmlinux 0x13307fde vsscanf +EXPORT_SYMBOL vmlinux 0x1348760d ipmi_request_settime +EXPORT_SYMBOL vmlinux 0x1399efaf neigh_ifdown +EXPORT_SYMBOL vmlinux 0x13a58fd1 padata_free +EXPORT_SYMBOL vmlinux 0x13ad0b85 remove_arg_zero +EXPORT_SYMBOL vmlinux 0x13c5d843 submit_bh +EXPORT_SYMBOL vmlinux 0x13d063ed serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13d4fa94 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0x13f42152 system_entering_hibernation +EXPORT_SYMBOL vmlinux 0x140aae62 padata_set_cpumask +EXPORT_SYMBOL vmlinux 0x1415f951 dmam_alloc_noncoherent +EXPORT_SYMBOL vmlinux 0x1420b379 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0x1422aa40 skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x1424c900 ihold +EXPORT_SYMBOL vmlinux 0x143041b9 set_device_ro +EXPORT_SYMBOL vmlinux 0x143e222f scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x14678877 set_pages_nx +EXPORT_SYMBOL vmlinux 0x146b20d1 dev_uc_add +EXPORT_SYMBOL vmlinux 0x148dad38 bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0x14a78365 x86_hyper +EXPORT_SYMBOL vmlinux 0x14a86f92 copy_strings_kernel +EXPORT_SYMBOL vmlinux 0x14c1b9f3 noop_fsync +EXPORT_SYMBOL vmlinux 0x14c60270 bio_map_user +EXPORT_SYMBOL vmlinux 0x14c989bd padata_start +EXPORT_SYMBOL vmlinux 0x14f13947 noop_llseek +EXPORT_SYMBOL vmlinux 0x14f93f5f md_finish_reshape +EXPORT_SYMBOL vmlinux 0x150389d6 acpi_processor_power_init_bm_check +EXPORT_SYMBOL vmlinux 0x153956ee bio_integrity_tag_size +EXPORT_SYMBOL vmlinux 0x153dffc5 dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0x154c27cb elv_rb_former_request +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x1551dc51 bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x1555702f set_page_dirty +EXPORT_SYMBOL vmlinux 0x1555e3e5 genphy_read_status +EXPORT_SYMBOL vmlinux 0x15574204 dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x1573814a gen_new_estimator +EXPORT_SYMBOL vmlinux 0x15a64ae2 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x15b2366d sock_wfree +EXPORT_SYMBOL vmlinux 0x15b3c00d dqget +EXPORT_SYMBOL vmlinux 0x15b401c3 sync_inode_metadata +EXPORT_SYMBOL vmlinux 0x15c80fb8 padata_unregister_cpumask_notifier +EXPORT_SYMBOL vmlinux 0x15f571ec blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0x160ea4c8 sfi_disabled +EXPORT_SYMBOL vmlinux 0x161633eb buffer_migrate_page +EXPORT_SYMBOL vmlinux 0x16305289 warn_slowpath_null +EXPORT_SYMBOL vmlinux 0x164c85ad pm860x_reg_read +EXPORT_SYMBOL vmlinux 0x164cbc7a lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0x1650b0d5 pci_disable_link_state +EXPORT_SYMBOL vmlinux 0x1651097e textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0x1664e045 phy_disconnect +EXPORT_SYMBOL vmlinux 0x1669bed7 vm_map_ram +EXPORT_SYMBOL vmlinux 0x167e7f9d __get_user_1 +EXPORT_SYMBOL vmlinux 0x168647fa __frontswap_store +EXPORT_SYMBOL vmlinux 0x168f1082 _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x169225f0 serio_unregister_port +EXPORT_SYMBOL vmlinux 0x169aeab6 tty_mutex +EXPORT_SYMBOL vmlinux 0x169c3897 kernel_sendpage +EXPORT_SYMBOL vmlinux 0x16d1d1b8 kill_anon_super +EXPORT_SYMBOL vmlinux 0x16d9f5c5 textsearch_unregister +EXPORT_SYMBOL vmlinux 0x16dcec76 ipmi_set_my_address +EXPORT_SYMBOL vmlinux 0x16ea5d9f lockref_get +EXPORT_SYMBOL vmlinux 0x16f3e858 abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0x170c25ee acpi_get_next_object +EXPORT_SYMBOL vmlinux 0x17121b4b override_creds +EXPORT_SYMBOL vmlinux 0x173890a5 filemap_flush +EXPORT_SYMBOL vmlinux 0x173eafbf tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0x173f4f86 i2c_master_recv +EXPORT_SYMBOL vmlinux 0x1740d92f bio_put +EXPORT_SYMBOL vmlinux 0x1751d37d inet_sock_destruct +EXPORT_SYMBOL vmlinux 0x17582900 do_SAK +EXPORT_SYMBOL vmlinux 0x177579ef sock_no_accept +EXPORT_SYMBOL vmlinux 0x1790d76b _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0x1791a90b ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0x1796c915 key_task_permission +EXPORT_SYMBOL vmlinux 0x17a1135a pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0x17b1125d gen_kill_estimator +EXPORT_SYMBOL vmlinux 0x17bf63dd handle_edge_irq +EXPORT_SYMBOL vmlinux 0x17e3f67a d_obtain_alias +EXPORT_SYMBOL vmlinux 0x17f2e7da i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0x17f341a0 i8042_lock_chip +EXPORT_SYMBOL vmlinux 0x17f3f5b7 lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x17fa81cd __idr_get_new_above +EXPORT_SYMBOL vmlinux 0x180b799f tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0x1826f089 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x182dc568 input_flush_device +EXPORT_SYMBOL vmlinux 0x1833b652 agp_generic_alloc_by_type +EXPORT_SYMBOL vmlinux 0x183fa88b mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0x18461244 __napi_schedule +EXPORT_SYMBOL vmlinux 0x184b82fb mmc_vddrange_to_ocrmask +EXPORT_SYMBOL vmlinux 0x184e6c85 radix_tree_gang_lookup_slot +EXPORT_SYMBOL vmlinux 0x18786463 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x18877f86 get_tz_trend +EXPORT_SYMBOL vmlinux 0x1888ebbd udp_proc_register +EXPORT_SYMBOL vmlinux 0x188a3dfb timespec_trunc +EXPORT_SYMBOL vmlinux 0x189868d7 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x18b0d4d1 get_write_access +EXPORT_SYMBOL vmlinux 0x18b8ebde block_read_full_page +EXPORT_SYMBOL vmlinux 0x18c98f85 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0x18d96501 atomic64_dec_if_positive_cx8 +EXPORT_SYMBOL vmlinux 0x18ea8b14 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0x191999ae __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x197ae9fd pci_remove_bus +EXPORT_SYMBOL vmlinux 0x197ffa9a lease_get_mtime +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19a9e62b complete +EXPORT_SYMBOL vmlinux 0x19ba95cc block_invalidatepage +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19daef7d netlink_unicast +EXPORT_SYMBOL vmlinux 0x1a10c898 ipmi_set_maintenance_mode +EXPORT_SYMBOL vmlinux 0x1a15a131 scsi_scan_host +EXPORT_SYMBOL vmlinux 0x1a298429 grab_cache_page_nowait +EXPORT_SYMBOL vmlinux 0x1a2e112f tty_do_resize +EXPORT_SYMBOL vmlinux 0x1a45cb6c acpi_disabled +EXPORT_SYMBOL vmlinux 0x1a4fea3f lockref_mark_dead +EXPORT_SYMBOL vmlinux 0x1a61bd48 pci_pme_active +EXPORT_SYMBOL vmlinux 0x1a63af34 vga_switcheroo_process_delayed_switch +EXPORT_SYMBOL vmlinux 0x1a74e6ca netif_device_attach +EXPORT_SYMBOL vmlinux 0x1a8cbc36 locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x1a978eb3 __bread +EXPORT_SYMBOL vmlinux 0x1aa729f0 agp_alloc_bridge +EXPORT_SYMBOL vmlinux 0x1aba5db8 ipmi_unregister_smi +EXPORT_SYMBOL vmlinux 0x1ac4e5f8 i2c_del_adapter +EXPORT_SYMBOL vmlinux 0x1ace138d bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0x1ae14ef5 _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x1ae45c64 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x1af1ad6f writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b0ac272 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0x1b1e1088 sg_nents +EXPORT_SYMBOL vmlinux 0x1b253b4f vm_insert_page +EXPORT_SYMBOL vmlinux 0x1b3c3678 inode_init_once +EXPORT_SYMBOL vmlinux 0x1b4055f6 __skb_tx_hash +EXPORT_SYMBOL vmlinux 0x1b570d23 acpi_warning +EXPORT_SYMBOL vmlinux 0x1b60ea07 mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b72924e module_put +EXPORT_SYMBOL vmlinux 0x1b73c033 dev_get_by_name +EXPORT_SYMBOL vmlinux 0x1b76b8c4 dma_find_channel +EXPORT_SYMBOL vmlinux 0x1b7a5b30 alloc_disk_node +EXPORT_SYMBOL vmlinux 0x1b82fefa md_unplug +EXPORT_SYMBOL vmlinux 0x1b8b95ad i8042_unlock_chip +EXPORT_SYMBOL vmlinux 0x1b90402c __register_binfmt +EXPORT_SYMBOL vmlinux 0x1b96ae10 netpoll_send_skb_on_dev +EXPORT_SYMBOL vmlinux 0x1b977e01 pci_disable_ltr +EXPORT_SYMBOL vmlinux 0x1b9e0ff1 scsilun_to_int +EXPORT_SYMBOL vmlinux 0x1ba6f178 dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x1bd08f92 sock_no_mmap +EXPORT_SYMBOL vmlinux 0x1bff735d __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x1c63b01b prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x1c8a04b0 acpi_reset +EXPORT_SYMBOL vmlinux 0x1c9f9b79 twl6040_reg_read +EXPORT_SYMBOL vmlinux 0x1ca23714 mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0x1cad9926 skb_put +EXPORT_SYMBOL vmlinux 0x1cb8b43b phy_driver_unregister +EXPORT_SYMBOL vmlinux 0x1cca43d0 inet_release +EXPORT_SYMBOL vmlinux 0x1ce4ef82 jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0x1d1e53fc frontswap_register_ops +EXPORT_SYMBOL vmlinux 0x1d2a7a4f generic_pipe_buf_unmap +EXPORT_SYMBOL vmlinux 0x1d8a37e6 block_write_end +EXPORT_SYMBOL vmlinux 0x1daba546 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x1db13caa fsnotify_alloc_group +EXPORT_SYMBOL vmlinux 0x1dc36131 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1dd6bcc8 skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x1de74f72 acpi_execute_simple_method +EXPORT_SYMBOL vmlinux 0x1df79f0f new_inode +EXPORT_SYMBOL vmlinux 0x1e047854 warn_slowpath_fmt +EXPORT_SYMBOL vmlinux 0x1e0c2be4 ioremap_wc +EXPORT_SYMBOL vmlinux 0x1e1f4e9b ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0x1e26be3b get_anon_bdev +EXPORT_SYMBOL vmlinux 0x1e2c4086 ___pskb_trim +EXPORT_SYMBOL vmlinux 0x1e2e49f8 xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0x1e564f53 unregister_binfmt +EXPORT_SYMBOL vmlinux 0x1e6294a9 sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e8d05a6 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ec3bed9 hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0x1ec4eb34 flex_array_prealloc +EXPORT_SYMBOL vmlinux 0x1ec5dcff bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x1ecaf621 scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x1ee14e42 jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0x1f007a24 acpi_pm_device_sleep_state +EXPORT_SYMBOL vmlinux 0x1f027be6 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x1f1b5fbc agp_generic_mask_memory +EXPORT_SYMBOL vmlinux 0x1f1df270 eisa_driver_register +EXPORT_SYMBOL vmlinux 0x1f1e6723 inode_get_bytes +EXPORT_SYMBOL vmlinux 0x1f2bb805 simple_transaction_read +EXPORT_SYMBOL vmlinux 0x1f4426cf kernel_connect +EXPORT_SYMBOL vmlinux 0x1f52efa8 icmp_send +EXPORT_SYMBOL vmlinux 0x1f5a3c28 ipmi_smi_add_proc_entry +EXPORT_SYMBOL vmlinux 0x1f72c3ae agp_generic_free_gatt_table +EXPORT_SYMBOL vmlinux 0x1f7e807f kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x1f953f22 netif_napi_del +EXPORT_SYMBOL vmlinux 0x1fad09fb agp_generic_free_by_type +EXPORT_SYMBOL vmlinux 0x1fadf295 bio_map_kern +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fc04b6f input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1fe9f800 unregister_cpu_notifier +EXPORT_SYMBOL vmlinux 0x1fedf0f4 __request_region +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x2005e68a acpi_remove_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x20092385 acpi_enter_sleep_state_s4bios +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x201e9b6b bio_reset +EXPORT_SYMBOL vmlinux 0x20346508 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0x203bde48 lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x203d003f call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x204fa834 security_path_mknod +EXPORT_SYMBOL vmlinux 0x20673bb2 napi_gro_receive +EXPORT_SYMBOL vmlinux 0x2070fe7c __remove_inode_hash +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x208739f6 acpi_load_table +EXPORT_SYMBOL vmlinux 0x208fb681 mmc_align_data_size +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20b17f96 search_binary_handler +EXPORT_SYMBOL vmlinux 0x20b2bb2d param_array_ops +EXPORT_SYMBOL vmlinux 0x20b5aae0 security_path_rmdir +EXPORT_SYMBOL vmlinux 0x20c55ae0 sscanf +EXPORT_SYMBOL vmlinux 0x20c6192f intel_scu_ipc_ioread32 +EXPORT_SYMBOL vmlinux 0x20cb5b1f kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0x20d5c4b3 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0x210a8003 nf_log_set +EXPORT_SYMBOL vmlinux 0x21233427 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0x21254659 acpi_pm_device_run_wake +EXPORT_SYMBOL vmlinux 0x2132c372 bio_init +EXPORT_SYMBOL vmlinux 0x214dbeba mount_pseudo +EXPORT_SYMBOL vmlinux 0x215cff4b tty_throttle +EXPORT_SYMBOL vmlinux 0x215ebd78 bitrev16 +EXPORT_SYMBOL vmlinux 0x21659283 ipmi_smi_watcher_unregister +EXPORT_SYMBOL vmlinux 0x2166467e bio_uncopy_user +EXPORT_SYMBOL vmlinux 0x217dda13 flex_array_get +EXPORT_SYMBOL vmlinux 0x2199337a down_timeout +EXPORT_SYMBOL vmlinux 0x21a27015 key_unlink +EXPORT_SYMBOL vmlinux 0x21a8d7f4 qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0x21bb2c31 dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0x21be9d2e tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0x21dbf860 rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0x21e08ae9 __brelse +EXPORT_SYMBOL vmlinux 0x21e0ea22 acpi_get_id +EXPORT_SYMBOL vmlinux 0x21fb443e _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0x21fc6264 sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x21fceb23 agp_generic_insert_memory +EXPORT_SYMBOL vmlinux 0x22105d6d from_kgid +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x2256fafa div64_u64_rem +EXPORT_SYMBOL vmlinux 0x2269364d dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x2274d6ad __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x22a05cb1 scsi_target_resume +EXPORT_SYMBOL vmlinux 0x22a191f7 eth_header_cache_update +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22cd77a6 uart_register_driver +EXPORT_SYMBOL vmlinux 0x22d941e2 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0x22ed928f blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x22f4062c disk_stack_limits +EXPORT_SYMBOL vmlinux 0x230590e4 agp_generic_destroy_page +EXPORT_SYMBOL vmlinux 0x23096355 d_find_alias +EXPORT_SYMBOL vmlinux 0x231d4001 fb_edid_add_monspecs +EXPORT_SYMBOL vmlinux 0x232d0bbe register_nls +EXPORT_SYMBOL vmlinux 0x2347af19 tcp_sync_mss +EXPORT_SYMBOL vmlinux 0x23532c4d ftrace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x2356040f neigh_table_init +EXPORT_SYMBOL vmlinux 0x23a574fd security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0x23ad99e0 ps2_handle_response +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c3e64c mmc_can_discard +EXPORT_SYMBOL vmlinux 0x23c8f257 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x23f65c73 mutex_lock +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x241ed234 agp_generic_remove_memory +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x243ba94a acpi_device_set_power +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x2443855e sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x244739ad revert_creds +EXPORT_SYMBOL vmlinux 0x24512f8f mmc_start_req +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x2460809f neigh_app_ns +EXPORT_SYMBOL vmlinux 0x2465a28f napi_gro_flush +EXPORT_SYMBOL vmlinux 0x2482e688 vsprintf +EXPORT_SYMBOL vmlinux 0x248d970c kfree_skb_partial +EXPORT_SYMBOL vmlinux 0x2490a4cc ida_remove +EXPORT_SYMBOL vmlinux 0x2492e5eb sk_common_release +EXPORT_SYMBOL vmlinux 0x24b26a5f kernel_write +EXPORT_SYMBOL vmlinux 0x24b33a6d inet_shutdown +EXPORT_SYMBOL vmlinux 0x24c0b422 xfrm_unregister_mode +EXPORT_SYMBOL vmlinux 0x24d1ca5c jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x24d7b4eb cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x24d92ae5 writeback_in_progress +EXPORT_SYMBOL vmlinux 0x24d9c555 user_path_create +EXPORT_SYMBOL vmlinux 0x24de9ecc fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0x24f169fc down_read_trylock +EXPORT_SYMBOL vmlinux 0x24f6a24a d_find_any_alias +EXPORT_SYMBOL vmlinux 0x24fdac79 wake_bit_function +EXPORT_SYMBOL vmlinux 0x250113b4 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x2517c7ae dev_set_allmulti +EXPORT_SYMBOL vmlinux 0x251b5811 wireless_send_event +EXPORT_SYMBOL vmlinux 0x251e2fc3 devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x253ee424 tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0x2551d88c fsnotify_put_group +EXPORT_SYMBOL vmlinux 0x256b9586 set_bh_page +EXPORT_SYMBOL vmlinux 0x257785d8 mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x2585706d pci_find_next_bus +EXPORT_SYMBOL vmlinux 0x2586ddef vga_client_register +EXPORT_SYMBOL vmlinux 0x25af1d17 inode_change_ok +EXPORT_SYMBOL vmlinux 0x25b21ab1 xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x25b4f446 update_region +EXPORT_SYMBOL vmlinux 0x25c677c4 mac_pton +EXPORT_SYMBOL vmlinux 0x25c8f245 jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0x25d2b046 dquot_alloc +EXPORT_SYMBOL vmlinux 0x25e30ceb bio_integrity_set_tag +EXPORT_SYMBOL vmlinux 0x25f9d712 tty_devnum +EXPORT_SYMBOL vmlinux 0x260f4254 ilookup5 +EXPORT_SYMBOL vmlinux 0x2610d8cb inet6_protos +EXPORT_SYMBOL vmlinux 0x263728dd mapping_tagged +EXPORT_SYMBOL vmlinux 0x2639fd5a d_validate +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x263d55e1 blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0x2650d835 sysctl_ip_early_demux +EXPORT_SYMBOL vmlinux 0x265a90d8 pipe_lock +EXPORT_SYMBOL vmlinux 0x266fd366 mmc_erase +EXPORT_SYMBOL vmlinux 0x267783fb scsi_scan_target +EXPORT_SYMBOL vmlinux 0x267e9017 pci_find_capability +EXPORT_SYMBOL vmlinux 0x26852f8e ida_simple_remove +EXPORT_SYMBOL vmlinux 0x2685c3d7 __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x26bb950b __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0x26c600ae ip_route_me_harder +EXPORT_SYMBOL vmlinux 0x26ca1ece swiotlb_sync_single_for_device +EXPORT_SYMBOL vmlinux 0x26e4c221 vga_switcheroo_init_domain_pm_ops +EXPORT_SYMBOL vmlinux 0x26e76fb8 sysctl_udp_wmem_min +EXPORT_SYMBOL vmlinux 0x26f0453a blk_set_default_limits +EXPORT_SYMBOL vmlinux 0x27100619 tcp_hashinfo +EXPORT_SYMBOL vmlinux 0x27148117 eth_change_mtu +EXPORT_SYMBOL vmlinux 0x271cba95 acpi_bus_private_data_handler +EXPORT_SYMBOL vmlinux 0x272d394e mtrr_del +EXPORT_SYMBOL vmlinux 0x273a9742 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0x274d08dc __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0x275cb736 kthread_stop +EXPORT_SYMBOL vmlinux 0x27803824 ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x278b8718 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0x27ae7d0c ec_transaction +EXPORT_SYMBOL vmlinux 0x27aecf25 update_time +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27d17bd5 blk_stop_queue +EXPORT_SYMBOL vmlinux 0x27e78c4b lock_rename +EXPORT_SYMBOL vmlinux 0x27f03aee ip6_xmit +EXPORT_SYMBOL vmlinux 0x27f11b93 bd_set_size +EXPORT_SYMBOL vmlinux 0x27fb52e7 block_commit_write +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x283fd2e8 sync_inodes_sb +EXPORT_SYMBOL vmlinux 0x284a4e35 __netif_schedule +EXPORT_SYMBOL vmlinux 0x28869581 sock_kfree_s +EXPORT_SYMBOL vmlinux 0x2896a139 prepare_binprm +EXPORT_SYMBOL vmlinux 0x2896cc7b netif_rx +EXPORT_SYMBOL vmlinux 0x28a2ed02 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x28b715a6 isapnp_cfg_end +EXPORT_SYMBOL vmlinux 0x28f273aa set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0x28f7a23c audit_log_task_info +EXPORT_SYMBOL vmlinux 0x2902fc4e scsi_allocate_command +EXPORT_SYMBOL vmlinux 0x290eb67c proc_mkdir +EXPORT_SYMBOL vmlinux 0x291d4ebf pci_find_bus +EXPORT_SYMBOL vmlinux 0x2920ac0c alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x2936281d dqput +EXPORT_SYMBOL vmlinux 0x29537c9e alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0x29753305 agp_put_bridge +EXPORT_SYMBOL vmlinux 0x297aa765 pci_clear_master +EXPORT_SYMBOL vmlinux 0x299ac22e vga_switcheroo_set_dynamic_switch +EXPORT_SYMBOL vmlinux 0x299d06ac pci_vpd_truncate +EXPORT_SYMBOL vmlinux 0x29a7e0fc cad_pid +EXPORT_SYMBOL vmlinux 0x29ab0cfd make_kprojid +EXPORT_SYMBOL vmlinux 0x29e0ddd2 dma_common_mmap +EXPORT_SYMBOL vmlinux 0x29f7f39c tc_classify_compat +EXPORT_SYMBOL vmlinux 0x29fdda53 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0x2a031084 pcim_pin_device +EXPORT_SYMBOL vmlinux 0x2a0dbcbb clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x2a125b61 i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0x2a181d65 redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0x2a186566 blk_queue_softirq_done +EXPORT_SYMBOL vmlinux 0x2a2593a7 pci_dev_driver +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a37d074 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2a5def2f intel_scu_ipc_iowrite32 +EXPORT_SYMBOL vmlinux 0x2a62232e security_path_symlink +EXPORT_SYMBOL vmlinux 0x2a657c0f dev_mc_del_global +EXPORT_SYMBOL vmlinux 0x2a72e254 page_put_link +EXPORT_SYMBOL vmlinux 0x2a750e06 inet_ioctl +EXPORT_SYMBOL vmlinux 0x2a79ac13 clkdev_add +EXPORT_SYMBOL vmlinux 0x2a81a823 page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0x2a987f18 netdev_change_features +EXPORT_SYMBOL vmlinux 0x2a9955df skb_checksum_help +EXPORT_SYMBOL vmlinux 0x2a9ed4c3 key_payload_reserve +EXPORT_SYMBOL vmlinux 0x2aa0e4fc strncasecmp +EXPORT_SYMBOL vmlinux 0x2ac91cac intel_gmch_probe +EXPORT_SYMBOL vmlinux 0x2acf0feb vfs_fstat +EXPORT_SYMBOL vmlinux 0x2add70c3 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x2ae402ea alloc_fddidev +EXPORT_SYMBOL vmlinux 0x2ae6aff3 __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0x2b0ba2b0 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x2b2ce78b kstrtos8 +EXPORT_SYMBOL vmlinux 0x2b40eccd jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0x2b4720e9 pcibios_set_irq_routing +EXPORT_SYMBOL vmlinux 0x2b4ce4e9 pci_set_ltr +EXPORT_SYMBOL vmlinux 0x2b6289eb neigh_table_clear +EXPORT_SYMBOL vmlinux 0x2b6ffc70 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0x2b751c85 dev_crit +EXPORT_SYMBOL vmlinux 0x2b7d1aa6 mpage_readpage +EXPORT_SYMBOL vmlinux 0x2b83a12a dev_addr_del +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2ba5422f del_gendisk +EXPORT_SYMBOL vmlinux 0x2ba5e114 bdi_unregister +EXPORT_SYMBOL vmlinux 0x2ba707a8 sysctl_tcp_low_latency +EXPORT_SYMBOL vmlinux 0x2bb55d6e acpi_remove_notify_handler +EXPORT_SYMBOL vmlinux 0x2bc95bd4 memset +EXPORT_SYMBOL vmlinux 0x2bf80f1e pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x2bf8d577 sleep_on_timeout +EXPORT_SYMBOL vmlinux 0x2bfeb410 acpi_get_handle +EXPORT_SYMBOL vmlinux 0x2c14323a kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c4a79bd igrab +EXPORT_SYMBOL vmlinux 0x2c5bdeab scsi_free_command +EXPORT_SYMBOL vmlinux 0x2c6712d7 fsnotify_init_mark +EXPORT_SYMBOL vmlinux 0x2c900d91 cpufreq_put_global_kobject +EXPORT_SYMBOL vmlinux 0x2ca319a6 wrmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x2caece7a skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x2ce3559b __neigh_create +EXPORT_SYMBOL vmlinux 0x2ce7e60a bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x2d03c10d posix_acl_create +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d144e21 rdmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x2d1704d7 mpage_writepage +EXPORT_SYMBOL vmlinux 0x2d1a4b2c mntput +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d37342e cpu_online_mask +EXPORT_SYMBOL vmlinux 0x2d5851eb mmc_remove_host +EXPORT_SYMBOL vmlinux 0x2d595a65 __vlan_find_dev_deep +EXPORT_SYMBOL vmlinux 0x2d89342a scsi_show_sense_hdr +EXPORT_SYMBOL vmlinux 0x2daaaba9 param_get_byte +EXPORT_SYMBOL vmlinux 0x2dabff5d bh_submit_read +EXPORT_SYMBOL vmlinux 0x2dd16564 arch_register_cpu +EXPORT_SYMBOL vmlinux 0x2deda4a1 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x2dedc4c2 acpi_format_exception +EXPORT_SYMBOL vmlinux 0x2def7f76 rtc_cmos_write +EXPORT_SYMBOL vmlinux 0x2df49647 irq_set_chip +EXPORT_SYMBOL vmlinux 0x2df5ac68 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0x2e04387b blk_execute_rq +EXPORT_SYMBOL vmlinux 0x2e0fb4b7 kernel_getpeername +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e2ce9e0 sysctl_tcp_syncookies +EXPORT_SYMBOL vmlinux 0x2e420341 uart_update_timeout +EXPORT_SYMBOL vmlinux 0x2e45c251 kunmap_high +EXPORT_SYMBOL vmlinux 0x2e5712d1 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0x2e60bace memcpy +EXPORT_SYMBOL vmlinux 0x2e62f9e5 __elv_add_request +EXPORT_SYMBOL vmlinux 0x2e713b1a idr_init +EXPORT_SYMBOL vmlinux 0x2e7608c9 __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0x2e964af9 xfrm_state_walk +EXPORT_SYMBOL vmlinux 0x2eb37da6 pci_release_region +EXPORT_SYMBOL vmlinux 0x2ec524ad __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x2eca24b5 pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0x2ecc6669 __ww_mutex_lock +EXPORT_SYMBOL vmlinux 0x2ed50eca pci_disable_msi +EXPORT_SYMBOL vmlinux 0x2ed9f59d scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0x2eeceb42 sk_chk_filter +EXPORT_SYMBOL vmlinux 0x2ef63ad6 scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0x2ef80220 security_file_permission +EXPORT_SYMBOL vmlinux 0x2f012934 blk_rq_init +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f064b55 allocate_resource +EXPORT_SYMBOL vmlinux 0x2f151226 acpi_get_hp_hw_control_from_firmware +EXPORT_SYMBOL vmlinux 0x2f384db3 acpi_is_video_device +EXPORT_SYMBOL vmlinux 0x2f3df0b1 mem_cgroup_subsys +EXPORT_SYMBOL vmlinux 0x2f8afa98 udp6_csum_init +EXPORT_SYMBOL vmlinux 0x2f913940 skb_clone +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fda63e7 mmc_register_driver +EXPORT_SYMBOL vmlinux 0x2fdd4b77 blk_alloc_queue_node +EXPORT_SYMBOL vmlinux 0x2fdef982 seq_release +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2fec0d4c kobject_get +EXPORT_SYMBOL vmlinux 0x2fee110a elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x2ff5b02e mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0x3012f9ac __seq_open_private +EXPORT_SYMBOL vmlinux 0x301cf0c6 nf_log_register +EXPORT_SYMBOL vmlinux 0x301e6d6f dev_alloc_name +EXPORT_SYMBOL vmlinux 0x30226ddf agp_device_command +EXPORT_SYMBOL vmlinux 0x302f2fa0 flush_old_exec +EXPORT_SYMBOL vmlinux 0x307c2fd0 generic_check_addressable +EXPORT_SYMBOL vmlinux 0x3088378e blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0x308ab566 tcp_disconnect +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30acd832 sock_wake_async +EXPORT_SYMBOL vmlinux 0x30b8ed58 led_set_brightness +EXPORT_SYMBOL vmlinux 0x30c51f80 simple_write_begin +EXPORT_SYMBOL vmlinux 0x30cada8f radix_tree_next_hole +EXPORT_SYMBOL vmlinux 0x30e74134 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x3107ce34 free_mdio_bitbang +EXPORT_SYMBOL vmlinux 0x310917fe sort +EXPORT_SYMBOL vmlinux 0x3125a3b9 vfs_setpos +EXPORT_SYMBOL vmlinux 0x312824e0 hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x312b3d63 __scsi_put_command +EXPORT_SYMBOL vmlinux 0x312fa82c mnt_unpin +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x3147857d default_red +EXPORT_SYMBOL vmlinux 0x315c65fd zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x3172d56d blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x318cadb1 reciprocal_value +EXPORT_SYMBOL vmlinux 0x3191f109 __krealloc +EXPORT_SYMBOL vmlinux 0x31e76b57 recalibrate_cpu_khz +EXPORT_SYMBOL vmlinux 0x31f0bb78 __kmap_atomic_idx +EXPORT_SYMBOL vmlinux 0x3202435a wrmsr_safe_regs +EXPORT_SYMBOL vmlinux 0x3222d5bb phy_drivers_register +EXPORT_SYMBOL vmlinux 0x3226418c bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x322f48d4 abx500_dump_all_banks +EXPORT_SYMBOL vmlinux 0x3231d9c3 splice_from_pipe_begin +EXPORT_SYMBOL vmlinux 0x32489ed9 iterate_mounts +EXPORT_SYMBOL vmlinux 0x326425ca pci_unmap_biosrom +EXPORT_SYMBOL vmlinux 0x326e701e pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0x329ba8c0 remap_pfn_range +EXPORT_SYMBOL vmlinux 0x32a691a1 nf_reinject +EXPORT_SYMBOL vmlinux 0x32c4aec6 max8998_write_reg +EXPORT_SYMBOL vmlinux 0x32c7e87d sb_min_blocksize +EXPORT_SYMBOL vmlinux 0x32cea339 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0x32eeaded _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0x3319622b pci_enable_obff +EXPORT_SYMBOL vmlinux 0x3337a243 generic_show_options +EXPORT_SYMBOL vmlinux 0x3340b309 wait_for_key_construction +EXPORT_SYMBOL vmlinux 0x3340f3d3 xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x3342ccd3 input_open_device +EXPORT_SYMBOL vmlinux 0x334f3ae0 jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0x3351e33e tty_name +EXPORT_SYMBOL vmlinux 0x3369a929 cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0x336d9b1b tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x337cce46 put_cmsg +EXPORT_SYMBOL vmlinux 0x338124a5 mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0x33ad1452 eisa_driver_unregister +EXPORT_SYMBOL vmlinux 0x33b130b3 touch_buffer +EXPORT_SYMBOL vmlinux 0x33ba5cd4 param_ops_bool +EXPORT_SYMBOL vmlinux 0x33bbcaf1 vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0x33c7435c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x33ce261f vfs_readlink +EXPORT_SYMBOL vmlinux 0x33db3e84 pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0x33dbfd93 tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x33e31066 ip_defrag +EXPORT_SYMBOL vmlinux 0x33eb28da save_mount_options +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x34184afe current_kernel_time +EXPORT_SYMBOL vmlinux 0x341f631e load_nls_default +EXPORT_SYMBOL vmlinux 0x342383c9 tc_classify +EXPORT_SYMBOL vmlinux 0x342f60fe apm_info +EXPORT_SYMBOL vmlinux 0x3437d4a9 proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x345758ce pci_iounmap +EXPORT_SYMBOL vmlinux 0x346be1f6 netif_rx_ni +EXPORT_SYMBOL vmlinux 0x347013de nla_validate +EXPORT_SYMBOL vmlinux 0x34738ffd generic_file_mmap +EXPORT_SYMBOL vmlinux 0x347eb969 free_task +EXPORT_SYMBOL vmlinux 0x347eb9bd param_set_bool +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34a1d68d inet_addr_type +EXPORT_SYMBOL vmlinux 0x34a7063b nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34fa59a9 dev_driver_string +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x353e21e3 acpi_bios_warning +EXPORT_SYMBOL vmlinux 0x35a8edfd devfreq_add_device +EXPORT_SYMBOL vmlinux 0x35b1fcb3 generic_setxattr +EXPORT_SYMBOL vmlinux 0x35e22055 jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x360b1afe probe_irq_mask +EXPORT_SYMBOL vmlinux 0x360b8d16 x86_cpu_to_apicid +EXPORT_SYMBOL vmlinux 0x362953ac agp_copy_info +EXPORT_SYMBOL vmlinux 0x362a79e8 d_instantiate_unique +EXPORT_SYMBOL vmlinux 0x363cace1 bio_split +EXPORT_SYMBOL vmlinux 0x363d7fc7 netif_napi_add +EXPORT_SYMBOL vmlinux 0x3641506c set_disk_ro +EXPORT_SYMBOL vmlinux 0x367c5531 gen_pool_destroy +EXPORT_SYMBOL vmlinux 0x3686ea09 spi_print_msg +EXPORT_SYMBOL vmlinux 0x36870e7a scsi_host_put +EXPORT_SYMBOL vmlinux 0x368f7f0a devm_gpio_request_one +EXPORT_SYMBOL vmlinux 0x3695cf5a file_open_root +EXPORT_SYMBOL vmlinux 0x36a80d26 bioset_integrity_free +EXPORT_SYMBOL vmlinux 0x36aad357 __wake_up_bit +EXPORT_SYMBOL vmlinux 0x36bd681b groups_alloc +EXPORT_SYMBOL vmlinux 0x36c55ed0 security_path_unlink +EXPORT_SYMBOL vmlinux 0x36c6af51 intel_scu_ipc_iowrite8 +EXPORT_SYMBOL vmlinux 0x36e360e3 __hw_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x36ecd6e1 idr_remove +EXPORT_SYMBOL vmlinux 0x36f4356d vfs_rmdir +EXPORT_SYMBOL vmlinux 0x37201949 generic_delete_inode +EXPORT_SYMBOL vmlinux 0x373c5403 nf_ct_attach +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x374f9747 pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0x37573c32 dev_get_stats +EXPORT_SYMBOL vmlinux 0x3773e9c5 neigh_compat_output +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37c88f02 skb_copy_bits +EXPORT_SYMBOL vmlinux 0x37d81ac1 clk_add_alias +EXPORT_SYMBOL vmlinux 0x37db593a blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x37db8f19 dmi_get_date +EXPORT_SYMBOL vmlinux 0x37e55b5d bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0x37e74642 get_jiffies_64 +EXPORT_SYMBOL vmlinux 0x37f614b7 __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x3802b3a7 poll_initwait +EXPORT_SYMBOL vmlinux 0x38099e13 wrmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x381123a5 scsi_device_get +EXPORT_SYMBOL vmlinux 0x381144a9 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0x3813d9f1 gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x381ccc13 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x38350602 blk_queue_init_tags +EXPORT_SYMBOL vmlinux 0x38384509 ftrace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x3855b754 agp_unbind_memory +EXPORT_SYMBOL vmlinux 0x385cf36e xfrm4_rcv +EXPORT_SYMBOL vmlinux 0x387ced83 get_user_pages +EXPORT_SYMBOL vmlinux 0x387d02d2 nf_hook_slow +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x38872c18 generic_read_dir +EXPORT_SYMBOL vmlinux 0x388799f6 unregister_kmmio_probe +EXPORT_SYMBOL vmlinux 0x388e0080 dquot_destroy +EXPORT_SYMBOL vmlinux 0x388f9128 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x38a3bb1b bioset_create +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38c75362 mmc_hw_reset +EXPORT_SYMBOL vmlinux 0x38ca3c4d dev_alert +EXPORT_SYMBOL vmlinux 0x38d58c1f follow_up +EXPORT_SYMBOL vmlinux 0x38e25793 tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x38e5edb5 phy_detach +EXPORT_SYMBOL vmlinux 0x3905ae88 vga_switcheroo_register_client +EXPORT_SYMBOL vmlinux 0x391ef6a7 get_agp_version +EXPORT_SYMBOL vmlinux 0x391f8a3c scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x394033be bio_integrity_advance +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x394e03f1 simple_transaction_get +EXPORT_SYMBOL vmlinux 0x3968fe04 cdev_alloc +EXPORT_SYMBOL vmlinux 0x3993781b fput +EXPORT_SYMBOL vmlinux 0x39937dbb ip_cmsg_recv +EXPORT_SYMBOL vmlinux 0x39a055f3 acpi_remove_gpe_handler +EXPORT_SYMBOL vmlinux 0x39b4f4c2 splice_from_pipe_feed +EXPORT_SYMBOL vmlinux 0x39e05d38 eth_header +EXPORT_SYMBOL vmlinux 0x39ec017a jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x39f40956 tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0x3a013b7d remove_wait_queue +EXPORT_SYMBOL vmlinux 0x3a031a83 con_is_bound +EXPORT_SYMBOL vmlinux 0x3a08475f platform_thermal_notify +EXPORT_SYMBOL vmlinux 0x3a15e3c5 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x3a1973ad register_console +EXPORT_SYMBOL vmlinux 0x3a2065a7 inet_frag_evictor +EXPORT_SYMBOL vmlinux 0x3a32839e intel_gtt_chipset_flush +EXPORT_SYMBOL vmlinux 0x3a4507a6 fget_light +EXPORT_SYMBOL vmlinux 0x3a51677c scsi_device_set_state +EXPORT_SYMBOL vmlinux 0x3a5a6ba7 pm860x_page_bulk_write +EXPORT_SYMBOL vmlinux 0x3a698d2e sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x3a9b6fb9 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x3ae3ae2e input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0x3af0e66c pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0x3afc8263 netdev_info +EXPORT_SYMBOL vmlinux 0x3b06e57b tty_lock_pair +EXPORT_SYMBOL vmlinux 0x3b1a2e3a textsearch_prepare +EXPORT_SYMBOL vmlinux 0x3b201620 machine_real_restart +EXPORT_SYMBOL vmlinux 0x3b3d4f33 __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x3b48e735 scsi_remove_target +EXPORT_SYMBOL vmlinux 0x3b642173 skb_queue_head +EXPORT_SYMBOL vmlinux 0x3ba8ff73 build_skb +EXPORT_SYMBOL vmlinux 0x3babc6bd swiotlb_free_coherent +EXPORT_SYMBOL vmlinux 0x3bd1b1f6 msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x3bd315ec tty_unlock_pair +EXPORT_SYMBOL vmlinux 0x3bd98bef __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0x3be042b9 agp_bind_memory +EXPORT_SYMBOL vmlinux 0x3bef03b9 flow_cache_lookup +EXPORT_SYMBOL vmlinux 0x3c1b6f85 inode_dio_wait +EXPORT_SYMBOL vmlinux 0x3c1d164e consume_skb +EXPORT_SYMBOL vmlinux 0x3c38bea8 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c851732 ps2_sendbyte +EXPORT_SYMBOL vmlinux 0x3c89746c key_alloc +EXPORT_SYMBOL vmlinux 0x3c9d1211 string_get_size +EXPORT_SYMBOL vmlinux 0x3cb3931b sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x3cb538c5 pnp_device_attach +EXPORT_SYMBOL vmlinux 0x3cc51c5a __pskb_copy +EXPORT_SYMBOL vmlinux 0x3ccb1765 mount_ns +EXPORT_SYMBOL vmlinux 0x3ccb4600 pnp_unregister_card_driver +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3d0cb935 seq_open_private +EXPORT_SYMBOL vmlinux 0x3d1a6a32 i2c_use_client +EXPORT_SYMBOL vmlinux 0x3d36fd5b gen_pool_alloc +EXPORT_SYMBOL vmlinux 0x3d499457 crypto_sha1_update +EXPORT_SYMBOL vmlinux 0x3d73e357 __frontswap_test +EXPORT_SYMBOL vmlinux 0x3d7c1ed7 msrs_alloc +EXPORT_SYMBOL vmlinux 0x3d7cf14b netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x3d91509a pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0x3da171f9 pci_mem_start +EXPORT_SYMBOL vmlinux 0x3dac909f pnp_release_card_device +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dd88eb5 __blk_run_queue +EXPORT_SYMBOL vmlinux 0x3de91b55 skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e2ae3a8 acpi_release_global_lock +EXPORT_SYMBOL vmlinux 0x3e372b4e nla_reserve +EXPORT_SYMBOL vmlinux 0x3e410bdc __mutex_init +EXPORT_SYMBOL vmlinux 0x3e4e61ba udp_prot +EXPORT_SYMBOL vmlinux 0x3e5266de fail_migrate_page +EXPORT_SYMBOL vmlinux 0x3e58f411 dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0x3e65f4fe vga_switcheroo_register_handler +EXPORT_SYMBOL vmlinux 0x3e810bcf dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0x3e882943 pcibios_align_resource +EXPORT_SYMBOL vmlinux 0x3e8b69dc blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3ec63e4b uart_get_divisor +EXPORT_SYMBOL vmlinux 0x3ec64620 mmc_can_trim +EXPORT_SYMBOL vmlinux 0x3ed26fe2 mmc_can_sanitize +EXPORT_SYMBOL vmlinux 0x3ed63055 zlib_inflateReset +EXPORT_SYMBOL vmlinux 0x3eea5a10 blk_mq_run_queues +EXPORT_SYMBOL vmlinux 0x3ef36191 tcp_seq_open +EXPORT_SYMBOL vmlinux 0x3ef78d80 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x3eff5ac2 intel_scu_ipc_writev +EXPORT_SYMBOL vmlinux 0x3f0546a8 ioread32_rep +EXPORT_SYMBOL vmlinux 0x3f3b5e3a dev_uc_sync +EXPORT_SYMBOL vmlinux 0x3f43f096 init_special_inode +EXPORT_SYMBOL vmlinux 0x3f453d11 tcp_gro_receive +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f544320 blk_mq_map_queue +EXPORT_SYMBOL vmlinux 0x3f5fe942 netdev_lower_dev_get_private_rcu +EXPORT_SYMBOL vmlinux 0x3f62688d max8925_bulk_read +EXPORT_SYMBOL vmlinux 0x3f867bc8 bio_copy_data +EXPORT_SYMBOL vmlinux 0x3f9d00f8 pci_dev_put +EXPORT_SYMBOL vmlinux 0x3f9f868f __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x3fa58ef8 wait_for_completion +EXPORT_SYMBOL vmlinux 0x3fc3b1ba pci_assign_resource +EXPORT_SYMBOL vmlinux 0x3fc778d8 blk_mq_free_single_hw_queue +EXPORT_SYMBOL vmlinux 0x3fc77aed ida_pre_get +EXPORT_SYMBOL vmlinux 0x3fd28096 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x3feb6e57 inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x3fec048f sg_next +EXPORT_SYMBOL vmlinux 0x3ff62317 local_bh_disable +EXPORT_SYMBOL vmlinux 0x4010e066 insert_inode_locked +EXPORT_SYMBOL vmlinux 0x402b8281 __request_module +EXPORT_SYMBOL vmlinux 0x40466c9d swiotlb_unmap_sg_attrs +EXPORT_SYMBOL vmlinux 0x4046aead i8042_remove_filter +EXPORT_SYMBOL vmlinux 0x4059792f print_hex_dump +EXPORT_SYMBOL vmlinux 0x405c1144 get_seconds +EXPORT_SYMBOL vmlinux 0x406a2470 tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0x40715dcf key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x407467e5 __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x4097fa45 acpi_read_bit_register +EXPORT_SYMBOL vmlinux 0x409873e3 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x40a27c37 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x40a2d1dd dm_table_get_size +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40ba62d1 touch_atime +EXPORT_SYMBOL vmlinux 0x40c01859 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40c89d46 acpi_get_table_by_index +EXPORT_SYMBOL vmlinux 0x40ca2241 scsi_reset_provider +EXPORT_SYMBOL vmlinux 0x40cb5ea2 phy_device_create +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40df8e61 cpu_info +EXPORT_SYMBOL vmlinux 0x40f2b10c ipmi_alloc_smi_msg +EXPORT_SYMBOL vmlinux 0x41035cff tty_register_ldisc +EXPORT_SYMBOL vmlinux 0x410e4893 skb_dequeue +EXPORT_SYMBOL vmlinux 0x411f1968 gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0x41397844 generic_file_remap_pages +EXPORT_SYMBOL vmlinux 0x41420235 pnp_find_dev +EXPORT_SYMBOL vmlinux 0x41448857 devfreq_resume_device +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x4176b1e0 netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x4177697f vfs_link +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x41a08a86 inet6_bind +EXPORT_SYMBOL vmlinux 0x41ab2ae5 phy_connect_direct +EXPORT_SYMBOL vmlinux 0x41c90ed6 tcp_make_synack +EXPORT_SYMBOL vmlinux 0x41d12fa5 agp_generic_create_gatt_table +EXPORT_SYMBOL vmlinux 0x41d6cb07 wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x4206216f tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x42065150 pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0x42106fc3 d_prune_aliases +EXPORT_SYMBOL vmlinux 0x4211c3c1 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x4222bc94 dma_async_memcpy_buf_to_buf +EXPORT_SYMBOL vmlinux 0x42286b23 vm_insert_pfn +EXPORT_SYMBOL vmlinux 0x423418a5 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0x42350e8d ucs2_strlen +EXPORT_SYMBOL vmlinux 0x42376f2f blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x423b776a ipmi_create_user +EXPORT_SYMBOL vmlinux 0x42595e58 vgacon_text_force +EXPORT_SYMBOL vmlinux 0x4266e23d dcache_dir_open +EXPORT_SYMBOL vmlinux 0x426727b8 ether_setup +EXPORT_SYMBOL vmlinux 0x42764182 blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0x4284cfe5 shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x428f5e9e blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0x4292364c schedule +EXPORT_SYMBOL vmlinux 0x4296ab4b inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0x42977ad4 __hw_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x42a1b208 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x42c8de35 ioremap_nocache +EXPORT_SYMBOL vmlinux 0x42f7af04 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x431026e0 vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x4315e4cc eth_header_cache +EXPORT_SYMBOL vmlinux 0x4336c3df generic_pipe_buf_map +EXPORT_SYMBOL vmlinux 0x434d2d3c neigh_seq_next +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x43583a98 input_allocate_device +EXPORT_SYMBOL vmlinux 0x4364568a tcp_close +EXPORT_SYMBOL vmlinux 0x436c2179 iowrite32 +EXPORT_SYMBOL vmlinux 0x43719dcc sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x439cb751 pv_lock_ops +EXPORT_SYMBOL vmlinux 0x43b02126 module_refcount +EXPORT_SYMBOL vmlinux 0x43d9bd5c vfs_mknod +EXPORT_SYMBOL vmlinux 0x43de7950 skb_copy_and_csum_datagram_iovec +EXPORT_SYMBOL vmlinux 0x43e253ce setattr_copy +EXPORT_SYMBOL vmlinux 0x43f23311 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x4411c503 prandom_seed +EXPORT_SYMBOL vmlinux 0x44366cfc simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0x4437c4d4 inet_register_protosw +EXPORT_SYMBOL vmlinux 0x44410f59 neigh_seq_start +EXPORT_SYMBOL vmlinux 0x44438b96 hex2bin +EXPORT_SYMBOL vmlinux 0x44593952 sock_update_memcg +EXPORT_SYMBOL vmlinux 0x44aaf30f tsc_khz +EXPORT_SYMBOL vmlinux 0x44b170d9 __invalidate_device +EXPORT_SYMBOL vmlinux 0x44d429c9 max8925_reg_read +EXPORT_SYMBOL vmlinux 0x44dda79d dquot_quota_on +EXPORT_SYMBOL vmlinux 0x44e350b6 __memcg_kmem_get_cache +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44f1606d down_trylock +EXPORT_SYMBOL vmlinux 0x45076efa pci_iomap +EXPORT_SYMBOL vmlinux 0x45081703 ec_get_handle +EXPORT_SYMBOL vmlinux 0x4515f49a dst_discard +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x454b99c5 pci_choose_state +EXPORT_SYMBOL vmlinux 0x4578661a _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x4584ac4c eth_header_parse +EXPORT_SYMBOL vmlinux 0x45a6be13 cpufreq_sysfs_remove_file +EXPORT_SYMBOL vmlinux 0x45a765cf pci_add_resource +EXPORT_SYMBOL vmlinux 0x45d5d665 nf_afinfo +EXPORT_SYMBOL vmlinux 0x461b0e1d kernel_recvmsg +EXPORT_SYMBOL vmlinux 0x461da066 contig_page_data +EXPORT_SYMBOL vmlinux 0x4629334c __preempt_count +EXPORT_SYMBOL vmlinux 0x462a2e75 match_strlcpy +EXPORT_SYMBOL vmlinux 0x4638c572 serio_reconnect +EXPORT_SYMBOL vmlinux 0x465cab34 secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0x46608fa0 getnstimeofday +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x4672890c tty_port_close +EXPORT_SYMBOL vmlinux 0x467e1a58 pnp_disable_dev +EXPORT_SYMBOL vmlinux 0x46a1d30e fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0x46a6bec2 led_blink_set +EXPORT_SYMBOL vmlinux 0x46e02af8 tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0x46ed8573 input_event +EXPORT_SYMBOL vmlinux 0x46f65eee inet_dgram_ops +EXPORT_SYMBOL vmlinux 0x46feb099 dm_read_arg +EXPORT_SYMBOL vmlinux 0x4736f40d fsync_bdev +EXPORT_SYMBOL vmlinux 0x47416e14 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x47541725 mmc_fixup_device +EXPORT_SYMBOL vmlinux 0x475f010b acpi_purge_cached_objects +EXPORT_SYMBOL vmlinux 0x478d10b2 ht_destroy_irq +EXPORT_SYMBOL vmlinux 0x4792c572 down_interruptible +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x47af0450 inode_init_always +EXPORT_SYMBOL vmlinux 0x47b09817 __lock_buffer +EXPORT_SYMBOL vmlinux 0x47b3f862 radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x47b6a10f ftrace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0x47bcf84c param_set_ulong +EXPORT_SYMBOL vmlinux 0x47c8baf4 param_ops_uint +EXPORT_SYMBOL vmlinux 0x47d61bf7 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0x47e5b9c6 sget +EXPORT_SYMBOL vmlinux 0x47e84547 nf_log_packet +EXPORT_SYMBOL vmlinux 0x47f24b15 vmap +EXPORT_SYMBOL vmlinux 0x47f8fe6d skb_unlink +EXPORT_SYMBOL vmlinux 0x47ff5a6a udp_seq_open +EXPORT_SYMBOL vmlinux 0x48034724 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x48171684 scsi_put_command +EXPORT_SYMBOL vmlinux 0x48193639 acpi_lid_open +EXPORT_SYMBOL vmlinux 0x481cb9ab acpi_enter_sleep_state_prep +EXPORT_SYMBOL vmlinux 0x481e2294 tcp_ioctl +EXPORT_SYMBOL vmlinux 0x482a2a49 param_set_charp +EXPORT_SYMBOL vmlinux 0x483793a4 path_put +EXPORT_SYMBOL vmlinux 0x485290c4 phy_connect +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x486d2f29 dqstats +EXPORT_SYMBOL vmlinux 0x48846c32 mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x48931fa5 devm_request_and_ioremap +EXPORT_SYMBOL vmlinux 0x489de0f6 km_report +EXPORT_SYMBOL vmlinux 0x48d6a399 lro_receive_frags +EXPORT_SYMBOL vmlinux 0x48edb164 pm860x_page_reg_read +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x49068ecf __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x491037fe migrate_page +EXPORT_SYMBOL vmlinux 0x491d4149 md_flush_request +EXPORT_SYMBOL vmlinux 0x49311e52 pci_enable_ltr +EXPORT_SYMBOL vmlinux 0x495c96f8 posix_acl_init +EXPORT_SYMBOL vmlinux 0x49603fb8 security_sb_copy_data +EXPORT_SYMBOL vmlinux 0x496bb450 vfs_path_lookup +EXPORT_SYMBOL vmlinux 0x497208d7 blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0x4978d68a agp_generic_alloc_page +EXPORT_SYMBOL vmlinux 0x4983e451 inet6_getname +EXPORT_SYMBOL vmlinux 0x499f721d devm_gpiod_get +EXPORT_SYMBOL vmlinux 0x49b07aec tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x49b163b8 acpi_bus_scan +EXPORT_SYMBOL vmlinux 0x49bdb855 dev_open +EXPORT_SYMBOL vmlinux 0x49c2c738 md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0x49e3e9bf jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0x49f7d35b balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0x4a0f2435 input_get_keycode +EXPORT_SYMBOL vmlinux 0x4a1075d3 generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0x4a115cee cdev_del +EXPORT_SYMBOL vmlinux 0x4a358252 __bitmap_subset +EXPORT_SYMBOL vmlinux 0x4a78b5cc netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0x4a8c41d0 xfrm_register_mode +EXPORT_SYMBOL vmlinux 0x4aa30ab8 scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x4aa64b97 blk_run_queue_async +EXPORT_SYMBOL vmlinux 0x4abb969f dst_alloc +EXPORT_SYMBOL vmlinux 0x4acd93d3 release_resource +EXPORT_SYMBOL vmlinux 0x4ae87520 xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0x4af39e87 bdi_register +EXPORT_SYMBOL vmlinux 0x4afe9a77 scsi_partsize +EXPORT_SYMBOL vmlinux 0x4b085dbf agp3_generic_configure +EXPORT_SYMBOL vmlinux 0x4b09e6c2 xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0x4b1ec3e2 kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x4b2010be pci_add_new_bus +EXPORT_SYMBOL vmlinux 0x4b34fbf5 block_all_signals +EXPORT_SYMBOL vmlinux 0x4b3a3482 set_pages_x +EXPORT_SYMBOL vmlinux 0x4b5ef12e input_unregister_handler +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b7ff330 agp_backend_acquire +EXPORT_SYMBOL vmlinux 0x4b8e4109 phy_ethtool_sset +EXPORT_SYMBOL vmlinux 0x4bac272b bitmap_endwrite +EXPORT_SYMBOL vmlinux 0x4bb5393e fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0x4bbf77b7 acpi_device_hid +EXPORT_SYMBOL vmlinux 0x4bc4d5a5 __cond_resched_lock +EXPORT_SYMBOL vmlinux 0x4bd6bfbe jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0x4bdf9ca6 ps2_begin_command +EXPORT_SYMBOL vmlinux 0x4be08733 audit_log +EXPORT_SYMBOL vmlinux 0x4be85a03 memweight +EXPORT_SYMBOL vmlinux 0x4bf7b27d inode_sb_list_lock +EXPORT_SYMBOL vmlinux 0x4c0fc9cf sk_filter +EXPORT_SYMBOL vmlinux 0x4c1182cb bitmap_scnprintf +EXPORT_SYMBOL vmlinux 0x4c27aae4 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0x4c27fd22 dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0x4c2ae700 strnstr +EXPORT_SYMBOL vmlinux 0x4c5aa592 bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0x4c74a1c7 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0x4c7c2bde sock_i_uid +EXPORT_SYMBOL vmlinux 0x4c971bec ipmi_smi_msg_received +EXPORT_SYMBOL vmlinux 0x4c9a0d44 inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x4c9c2fdb bio_integrity_get_tag +EXPORT_SYMBOL vmlinux 0x4cbbd171 __bitmap_weight +EXPORT_SYMBOL vmlinux 0x4cc23af6 flock_lock_file_wait +EXPORT_SYMBOL vmlinux 0x4cd9c2fc blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0x4cdb3178 ns_to_timeval +EXPORT_SYMBOL vmlinux 0x4cdf9db8 invalidate_partition +EXPORT_SYMBOL vmlinux 0x4d00e92b devm_iounmap +EXPORT_SYMBOL vmlinux 0x4d03f812 sock_recvmsg +EXPORT_SYMBOL vmlinux 0x4d32da0e seq_puts +EXPORT_SYMBOL vmlinux 0x4d3a850e netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0x4d3c153f sigprocmask +EXPORT_SYMBOL vmlinux 0x4d3f048f lock_fb_info +EXPORT_SYMBOL vmlinux 0x4d3f07e6 dquot_release +EXPORT_SYMBOL vmlinux 0x4d45d89e udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x4d4bad3d mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x4d7fe233 pci_enable_device +EXPORT_SYMBOL vmlinux 0x4d88235a dev_printk_emit +EXPORT_SYMBOL vmlinux 0x4d974b9c register_sysrq_key +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4da72d4c request_key_async_with_auxdata +EXPORT_SYMBOL vmlinux 0x4daa360a acpi_resource_to_address64 +EXPORT_SYMBOL vmlinux 0x4dbc0f4f pcie_set_mps +EXPORT_SYMBOL vmlinux 0x4dc514c7 kobject_put +EXPORT_SYMBOL vmlinux 0x4dd54c00 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0x4de34a07 cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x4df119fa __bitmap_parse +EXPORT_SYMBOL vmlinux 0x4dfff390 input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e4bced6 set_pages_array_uc +EXPORT_SYMBOL vmlinux 0x4e53ee14 sock_i_ino +EXPORT_SYMBOL vmlinux 0x4e59be5d blk_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x4e64cbe5 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e6f6e43 jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x4e830a3e strnicmp +EXPORT_SYMBOL vmlinux 0x4e9245f7 pci_enable_msi_block_auto +EXPORT_SYMBOL vmlinux 0x4e960bea blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x4ea25709 dql_reset +EXPORT_SYMBOL vmlinux 0x4ea3a7de i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x4f13081e netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0x4f1800e8 pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x4f1bb0a8 free_buffer_head +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f1e9f9c proto_register +EXPORT_SYMBOL vmlinux 0x4f391d0e nla_parse +EXPORT_SYMBOL vmlinux 0x4f46281f bdi_destroy +EXPORT_SYMBOL vmlinux 0x4f47378f agp3_generic_tlbflush +EXPORT_SYMBOL vmlinux 0x4f476e96 init_cdrom_command +EXPORT_SYMBOL vmlinux 0x4f68e5c9 do_gettimeofday +EXPORT_SYMBOL vmlinux 0x4f6b400b _copy_from_user +EXPORT_SYMBOL vmlinux 0x4f6b9a66 registered_fb +EXPORT_SYMBOL vmlinux 0x4f78106c read_cache_page +EXPORT_SYMBOL vmlinux 0x4f783f30 acpi_read +EXPORT_SYMBOL vmlinux 0x4f8b2965 rtnl_unicast +EXPORT_SYMBOL vmlinux 0x4f8b5ddb _copy_to_user +EXPORT_SYMBOL vmlinux 0x4fa370ad locks_free_lock +EXPORT_SYMBOL vmlinux 0x4fdee897 i8042_command +EXPORT_SYMBOL vmlinux 0x4fea952c blkdev_get +EXPORT_SYMBOL vmlinux 0x5000d3c6 thaw_bdev +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x50529870 acpi_get_gpe_status +EXPORT_SYMBOL vmlinux 0x5072cd92 brioctl_set +EXPORT_SYMBOL vmlinux 0x509b64ea acpi_has_method +EXPORT_SYMBOL vmlinux 0x50b18909 end_page_writeback +EXPORT_SYMBOL vmlinux 0x50b2180d phy_attach +EXPORT_SYMBOL vmlinux 0x50b839a3 tcp_gso_segment +EXPORT_SYMBOL vmlinux 0x50c96953 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0x50d68377 arch_phys_wc_del +EXPORT_SYMBOL vmlinux 0x50dc345d __pci_register_driver +EXPORT_SYMBOL vmlinux 0x50e5cfa9 i2c_release_client +EXPORT_SYMBOL vmlinux 0x50eedeb8 printk +EXPORT_SYMBOL vmlinux 0x50ff8832 mmc_cache_ctrl +EXPORT_SYMBOL vmlinux 0x510211dc drop_nlink +EXPORT_SYMBOL vmlinux 0x5112292b skb_pad +EXPORT_SYMBOL vmlinux 0x5117e21f kblockd_schedule_delayed_work +EXPORT_SYMBOL vmlinux 0x5118c382 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0x514df12b tty_port_init +EXPORT_SYMBOL vmlinux 0x5152e605 memcmp +EXPORT_SYMBOL vmlinux 0x5186518f profile_pc +EXPORT_SYMBOL vmlinux 0x519efb76 dquot_commit_info +EXPORT_SYMBOL vmlinux 0x519fce30 serio_rescan +EXPORT_SYMBOL vmlinux 0x51d12d4e acpi_pci_disabled +EXPORT_SYMBOL vmlinux 0x51dce73b xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x51de9ae7 lease_modify +EXPORT_SYMBOL vmlinux 0x51ef33b8 kstrndup +EXPORT_SYMBOL vmlinux 0x52006d56 acpi_walk_resources +EXPORT_SYMBOL vmlinux 0x52026cdf security_sb_parse_opts_str +EXPORT_SYMBOL vmlinux 0x5206459c proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x52095e19 acpi_get_data +EXPORT_SYMBOL vmlinux 0x52160e13 test_set_page_writeback +EXPORT_SYMBOL vmlinux 0x521b36b5 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0x52428cc8 parent_mem_cgroup +EXPORT_SYMBOL vmlinux 0x524f6f51 ipmi_get_my_address +EXPORT_SYMBOL vmlinux 0x52593244 arp_xmit +EXPORT_SYMBOL vmlinux 0x525e026f acpi_os_unmap_generic_address +EXPORT_SYMBOL vmlinux 0x526d9333 acpi_gpiochip_request_interrupts +EXPORT_SYMBOL vmlinux 0x528c709d simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x52a8c970 __scm_send +EXPORT_SYMBOL vmlinux 0x52b0e2e1 commit_creds +EXPORT_SYMBOL vmlinux 0x52b2753b sock_wmalloc +EXPORT_SYMBOL vmlinux 0x52baa002 mmc_wait_for_app_cmd +EXPORT_SYMBOL vmlinux 0x52da6593 write_inode_now +EXPORT_SYMBOL vmlinux 0x52e8d139 unregister_qdisc +EXPORT_SYMBOL vmlinux 0x52ea4bc1 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x52ecc6c9 page_address +EXPORT_SYMBOL vmlinux 0x52f72d58 skb_copy_expand +EXPORT_SYMBOL vmlinux 0x530b1e4c rdmsr_on_cpus +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x531b604e __virt_addr_valid +EXPORT_SYMBOL vmlinux 0x53326531 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x53466d46 inet_confirm_addr +EXPORT_SYMBOL vmlinux 0x534f772e kernel_listen +EXPORT_SYMBOL vmlinux 0x536dcb58 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0x536f8512 poll_freewait +EXPORT_SYMBOL vmlinux 0x5383f34b _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0x53896001 nf_log_unset +EXPORT_SYMBOL vmlinux 0x53a15a71 pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x53b7ab07 sk_run_filter +EXPORT_SYMBOL vmlinux 0x53b9e6dd udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0x53bb01e2 vm_stat +EXPORT_SYMBOL vmlinux 0x53c41ba2 keyring_alloc +EXPORT_SYMBOL vmlinux 0x53d35f24 qdisc_list_del +EXPORT_SYMBOL vmlinux 0x53d6f870 d_genocide +EXPORT_SYMBOL vmlinux 0x53f2ef10 wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x54019aa7 dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x5409775b free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x54152e04 percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x54256519 mfd_add_devices +EXPORT_SYMBOL vmlinux 0x5427c1d8 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x544b0c11 acpi_lid_notifier_register +EXPORT_SYMBOL vmlinux 0x544b6669 uart_match_port +EXPORT_SYMBOL vmlinux 0x5464538f __idr_remove_all +EXPORT_SYMBOL vmlinux 0x54935666 acpi_os_read_port +EXPORT_SYMBOL vmlinux 0x54a24b66 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0x54a97d9b pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54bac241 inode_permission +EXPORT_SYMBOL vmlinux 0x54c1c165 textsearch_register +EXPORT_SYMBOL vmlinux 0x54d86962 release_firmware +EXPORT_SYMBOL vmlinux 0x54e3cc3b param_get_int +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54efb5d6 cpu_number +EXPORT_SYMBOL vmlinux 0x54f22bb1 aio_complete +EXPORT_SYMBOL vmlinux 0x551051ed tty_kref_put +EXPORT_SYMBOL vmlinux 0x55171a0f tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x554197aa inet_select_addr +EXPORT_SYMBOL vmlinux 0x5541ea93 on_each_cpu +EXPORT_SYMBOL vmlinux 0x5567c227 kernel_cpustat +EXPORT_SYMBOL vmlinux 0x556c2740 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x5576bff1 udp_disconnect +EXPORT_SYMBOL vmlinux 0x5594be03 bitmap_remap +EXPORT_SYMBOL vmlinux 0x55addf88 neigh_seq_stop +EXPORT_SYMBOL vmlinux 0x55b2b1aa ata_print_version +EXPORT_SYMBOL vmlinux 0x5614b010 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x5615ac71 pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0x561a2282 pci_enable_msix +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x5638b45c unlock_page +EXPORT_SYMBOL vmlinux 0x5642793a radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x56591d93 truncate_setsize +EXPORT_SYMBOL vmlinux 0x56752031 scsi_execute_req_flags +EXPORT_SYMBOL vmlinux 0x5676a3e5 intel_scu_ipc_ioread8 +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x5705088a __vmalloc +EXPORT_SYMBOL vmlinux 0x57201037 __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x572e85d4 blk_lookup_devt +EXPORT_SYMBOL vmlinux 0x573ed900 vfs_unlink +EXPORT_SYMBOL vmlinux 0x574de986 nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x575698d6 __locks_copy_lock +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x575af70c on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x5768ea6a free_netdev +EXPORT_SYMBOL vmlinux 0x576e234d kill_pgrp +EXPORT_SYMBOL vmlinux 0x5773c6b7 skb_copy +EXPORT_SYMBOL vmlinux 0x5791b98c i2c_del_driver +EXPORT_SYMBOL vmlinux 0x579f404c jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0x579fbcd2 cpu_possible_mask +EXPORT_SYMBOL vmlinux 0x57a943bb __dquot_free_space +EXPORT_SYMBOL vmlinux 0x57ba9336 acpi_bus_get_status +EXPORT_SYMBOL vmlinux 0x57e43e51 swiotlb_dma_mapping_error +EXPORT_SYMBOL vmlinux 0x57e6f361 scsi_release_buffers +EXPORT_SYMBOL vmlinux 0x58351eed tty_hung_up_p +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x58445435 __cleancache_get_page +EXPORT_SYMBOL vmlinux 0x584738f9 rdmsr_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x5857b225 ioread16_rep +EXPORT_SYMBOL vmlinux 0x585cf061 vsc824x_add_skew +EXPORT_SYMBOL vmlinux 0x586103be acpi_setup_gpe_for_wake +EXPORT_SYMBOL vmlinux 0x5862c0ad skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0x587616f1 vfs_fstatat +EXPORT_SYMBOL vmlinux 0x588d08d7 dcache_dir_close +EXPORT_SYMBOL vmlinux 0x5892d54c acpi_remove_address_space_handler +EXPORT_SYMBOL vmlinux 0x5895cabb vm_iomap_memory +EXPORT_SYMBOL vmlinux 0x589e53e1 dev_mc_flush +EXPORT_SYMBOL vmlinux 0x58ba29ae pci_bus_get +EXPORT_SYMBOL vmlinux 0x58d732eb fib_default_rule_add +EXPORT_SYMBOL vmlinux 0x58d7440b tty_register_device +EXPORT_SYMBOL vmlinux 0x58fef6f8 ist_info +EXPORT_SYMBOL vmlinux 0x59081421 inet_frag_kill +EXPORT_SYMBOL vmlinux 0x5921aba8 udp_del_offload +EXPORT_SYMBOL vmlinux 0x592b59af acpi_evaluate_object_typed +EXPORT_SYMBOL vmlinux 0x593c4a1d d_instantiate_no_diralias +EXPORT_SYMBOL vmlinux 0x59408296 dm_unregister_target +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x598b60fd set_bdi_congested +EXPORT_SYMBOL vmlinux 0x598f9772 dma_mark_declared_memory_occupied +EXPORT_SYMBOL vmlinux 0x599a3dd6 _raw_write_unlock_irq +EXPORT_SYMBOL vmlinux 0x59bc9609 acpi_write_bit_register +EXPORT_SYMBOL vmlinux 0x59c7a37e iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0x59ef4509 xfrm_cfg_mutex +EXPORT_SYMBOL vmlinux 0x59fa8144 _dev_info +EXPORT_SYMBOL vmlinux 0x5a138de8 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0x5a2aa62e __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x5a3bb968 netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0x5a4896a8 __put_user_2 +EXPORT_SYMBOL vmlinux 0x5a5536c2 param_ops_invbool +EXPORT_SYMBOL vmlinux 0x5a7a5ac1 x86_hyper_ms_hyperv +EXPORT_SYMBOL vmlinux 0x5a83212b d_rehash +EXPORT_SYMBOL vmlinux 0x5a8fb547 __destroy_inode +EXPORT_SYMBOL vmlinux 0x5a949577 blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x5a9bcc33 __mem_cgroup_count_vm_event +EXPORT_SYMBOL vmlinux 0x5aa3dc03 md_write_start +EXPORT_SYMBOL vmlinux 0x5abd37de scsi_device_put +EXPORT_SYMBOL vmlinux 0x5ac21822 irq_stat +EXPORT_SYMBOL vmlinux 0x5ac376a5 acpi_install_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x5ad1f990 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0x5ad8d610 max8925_set_bits +EXPORT_SYMBOL vmlinux 0x5afe1292 single_release +EXPORT_SYMBOL vmlinux 0x5b167cb1 bio_copy_user +EXPORT_SYMBOL vmlinux 0x5b18aa8f mount_bdev +EXPORT_SYMBOL vmlinux 0x5b19634d div_s64_rem +EXPORT_SYMBOL vmlinux 0x5b271d86 acpi_video_dmi_promote_vendor +EXPORT_SYMBOL vmlinux 0x5b595738 elv_unregister_queue +EXPORT_SYMBOL vmlinux 0x5b5eb42a vfs_llseek +EXPORT_SYMBOL vmlinux 0x5b73aa73 blk_queue_free_tags +EXPORT_SYMBOL vmlinux 0x5b8cabb6 security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0x5ba5ba4d pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0x5bbe97aa scsi_calculate_bounce_limit +EXPORT_SYMBOL vmlinux 0x5bc8d583 copy_from_user_overflow +EXPORT_SYMBOL vmlinux 0x5bc97918 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x5bdaefcc elevator_init +EXPORT_SYMBOL vmlinux 0x5bdb88fb kobject_del +EXPORT_SYMBOL vmlinux 0x5c077d16 key_type_keyring +EXPORT_SYMBOL vmlinux 0x5c286c2c input_set_keycode +EXPORT_SYMBOL vmlinux 0x5c29fb59 inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0x5c3edd59 _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x5c4b74a2 unmap_mapping_range +EXPORT_SYMBOL vmlinux 0x5c51d765 get_super_thawed +EXPORT_SYMBOL vmlinux 0x5c545234 ucs2_strncmp +EXPORT_SYMBOL vmlinux 0x5c66a36d skb_copy_datagram_iovec +EXPORT_SYMBOL vmlinux 0x5c8ec7e0 bio_add_page +EXPORT_SYMBOL vmlinux 0x5c93a21c d_alloc_pseudo +EXPORT_SYMBOL vmlinux 0x5ca1ca2b genphy_suspend +EXPORT_SYMBOL vmlinux 0x5cc1cd1c security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5d031f7e tty_unthrottle +EXPORT_SYMBOL vmlinux 0x5d229000 pci_disable_ido +EXPORT_SYMBOL vmlinux 0x5d29383d fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0x5d39d6d4 input_grab_device +EXPORT_SYMBOL vmlinux 0x5d41c87c param_ops_charp +EXPORT_SYMBOL vmlinux 0x5d41cbdc max8998_read_reg +EXPORT_SYMBOL vmlinux 0x5d550c4d scsi_sd_probe_domain +EXPORT_SYMBOL vmlinux 0x5d5b5a16 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x5d74dbcf pnp_range_reserved +EXPORT_SYMBOL vmlinux 0x5d87330a pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0x5db1e02b pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0x5dce6b75 complete_and_exit +EXPORT_SYMBOL vmlinux 0x5dd0b696 tty_port_destroy +EXPORT_SYMBOL vmlinux 0x5dd94ff4 scsi_execute +EXPORT_SYMBOL vmlinux 0x5dfa9f23 __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0x5e2a088f block_truncate_page +EXPORT_SYMBOL vmlinux 0x5e3fa28e netpoll_print_options +EXPORT_SYMBOL vmlinux 0x5e80f37c ipmi_unregister_for_cmd +EXPORT_SYMBOL vmlinux 0x5e8858ca nf_log_unregister +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5e9ec26a bdget +EXPORT_SYMBOL vmlinux 0x5eac54b3 twl6040_set_pll +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ed79f30 __break_lease +EXPORT_SYMBOL vmlinux 0x5edd965d dev_set_mac_address +EXPORT_SYMBOL vmlinux 0x5ef83273 dev_load +EXPORT_SYMBOL vmlinux 0x5ef9d6ee fddi_change_mtu +EXPORT_SYMBOL vmlinux 0x5f005368 kstrtou8 +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f0a35ab locks_init_lock +EXPORT_SYMBOL vmlinux 0x5f0bd6b7 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0x5f15f297 mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0x5f1a4ccf intel_scu_ipc_update_register +EXPORT_SYMBOL vmlinux 0x5f27544a mempool_destroy +EXPORT_SYMBOL vmlinux 0x5f2ef88f __devcgroup_inode_permission +EXPORT_SYMBOL vmlinux 0x5f301769 kernel_getsockname +EXPORT_SYMBOL vmlinux 0x5f3c8f5c mmc_assume_removable +EXPORT_SYMBOL vmlinux 0x5f58f676 flex_array_get_ptr +EXPORT_SYMBOL vmlinux 0x5f6999e4 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0x5f6a2c3e iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0x5f79351e tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0x5f86b5e3 pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0x5f8ebe57 mnt_set_expiry +EXPORT_SYMBOL vmlinux 0x5f96a38b fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x5f9f369d mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0x5fa5487b mmc_stop_bkops +EXPORT_SYMBOL vmlinux 0x5fa89f83 __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x5fcdcc05 ipmi_get_my_LUN +EXPORT_SYMBOL vmlinux 0x5fda0227 vfs_stat +EXPORT_SYMBOL vmlinux 0x5fde5bec skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0x5fe14698 neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0x5fe41fb6 percpu_counter_set +EXPORT_SYMBOL vmlinux 0x5ff42b08 acpi_video_get_capabilities +EXPORT_SYMBOL vmlinux 0x5ff9163f dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0x6005b9cd sync_blockdev +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x6012ca22 tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x6020bf94 __genl_register_family +EXPORT_SYMBOL vmlinux 0x602102d8 eth_validate_addr +EXPORT_SYMBOL vmlinux 0x602ed00d acpi_current_gpe_count +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x6036ab77 bio_pair_release +EXPORT_SYMBOL vmlinux 0x60504f22 dev_activate +EXPORT_SYMBOL vmlinux 0x605928b6 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x606d0b09 secure_tcpv6_sequence_number +EXPORT_SYMBOL vmlinux 0x6096b747 __dev_get_by_index +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL vmlinux 0x60a88e4e xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0x60b2e38a rwsem_down_write_failed +EXPORT_SYMBOL vmlinux 0x60b86f61 sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x60df1e3b posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x612390ad netpoll_set_trap +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x6133ff2c mount_single +EXPORT_SYMBOL vmlinux 0x614383c0 acpi_get_object_info +EXPORT_SYMBOL vmlinux 0x61461b45 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x614ed950 tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x61538ad0 param_get_charp +EXPORT_SYMBOL vmlinux 0x6179fd75 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0x6198cabc d_lookup +EXPORT_SYMBOL vmlinux 0x619b187b add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0x61b5ade0 down_write +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61fe4176 inode_add_rsv_space +EXPORT_SYMBOL vmlinux 0x62049256 acpi_disable +EXPORT_SYMBOL vmlinux 0x620e4d2e block_write_full_page_endio +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x621652d2 have_submounts +EXPORT_SYMBOL vmlinux 0x621b3c59 inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0x621d77a0 sleep_on +EXPORT_SYMBOL vmlinux 0x6225637e md5_transform +EXPORT_SYMBOL vmlinux 0x6226b9fa machine_to_phys_mapping +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x622fa02a prepare_to_wait +EXPORT_SYMBOL vmlinux 0x6237f6b5 acpi_enable_event +EXPORT_SYMBOL vmlinux 0x6241a2ab __copy_from_user_ll_nocache +EXPORT_SYMBOL vmlinux 0x624d0ad1 input_unregister_device +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x627e30b0 simple_lookup +EXPORT_SYMBOL vmlinux 0x62822d05 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x62827bec security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x62b9e728 blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0x62bd95e7 always_delete_dentry +EXPORT_SYMBOL vmlinux 0x62c64a7c address_space_init_once +EXPORT_SYMBOL vmlinux 0x62cb4cee interruptible_sleep_on +EXPORT_SYMBOL vmlinux 0x62d2b12e vga_switcheroo_init_domain_pm_optimus_hdmi_audio +EXPORT_SYMBOL vmlinux 0x62d4647a mdiobus_free +EXPORT_SYMBOL vmlinux 0x62ea3709 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x62f317a3 __d_drop +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x633edfbd inode_capable +EXPORT_SYMBOL vmlinux 0x636a5691 acpi_register_ioapic +EXPORT_SYMBOL vmlinux 0x637cc354 gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0x63a01291 acpi_leave_sleep_state_prep +EXPORT_SYMBOL vmlinux 0x63a6bcc9 acpi_map_lsapic +EXPORT_SYMBOL vmlinux 0x63ae0138 intel_gtt_get +EXPORT_SYMBOL vmlinux 0x63c8e751 xfrm_state_add +EXPORT_SYMBOL vmlinux 0x63e7338e __block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x63e98968 scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x63eb4fa5 names_cachep +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63fc232f strlen_user +EXPORT_SYMBOL vmlinux 0x6403e338 tcp_memory_pressure +EXPORT_SYMBOL vmlinux 0x641769d4 pci_unregister_driver +EXPORT_SYMBOL vmlinux 0x642bb887 set_pages_array_wb +EXPORT_SYMBOL vmlinux 0x643056aa dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0x64396f45 find_get_pages_tag +EXPORT_SYMBOL vmlinux 0x643b2fc1 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0x64425156 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0x6478134c ec_burst_enable +EXPORT_SYMBOL vmlinux 0x6486d0ec follow_down_one +EXPORT_SYMBOL vmlinux 0x64978692 sg_miter_stop +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x649baec2 tty_port_put +EXPORT_SYMBOL vmlinux 0x649d6480 unregister_quota_format +EXPORT_SYMBOL vmlinux 0x64a4b84d cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x64ab2e44 __get_page_tail +EXPORT_SYMBOL vmlinux 0x64b76a8c inet_recvmsg +EXPORT_SYMBOL vmlinux 0x64d03bc9 blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0x64eae7ad set_memory_array_wb +EXPORT_SYMBOL vmlinux 0x65125138 acpi_check_address_range +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x65210202 alloc_xenballooned_pages +EXPORT_SYMBOL vmlinux 0x653094d9 force_sig +EXPORT_SYMBOL vmlinux 0x65320328 scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x655f1ab0 set_memory_array_wc +EXPORT_SYMBOL vmlinux 0x6565d33f scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x6566c25d mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0x6572e913 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0x65738d84 input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0x657879ce __init_rwsem +EXPORT_SYMBOL vmlinux 0x6585e310 alloc_pages_exact_nid +EXPORT_SYMBOL vmlinux 0x6599e5a0 dev_get_by_flags_rcu +EXPORT_SYMBOL vmlinux 0x65a295bb atomic64_xchg_cx8 +EXPORT_SYMBOL vmlinux 0x65a88f6e i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0x65c35be7 i2c_clients_command +EXPORT_SYMBOL vmlinux 0x65ca6fb6 devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x65d753a3 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65f3ad9a fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x6605f97f flex_array_clear +EXPORT_SYMBOL vmlinux 0x661752c6 fs_bio_set +EXPORT_SYMBOL vmlinux 0x661bad58 twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0x663557a8 set_trace_device +EXPORT_SYMBOL vmlinux 0x66355efc vprintk +EXPORT_SYMBOL vmlinux 0x6638d1ee kmem_cache_free +EXPORT_SYMBOL vmlinux 0x663f7cd0 acpi_install_table_handler +EXPORT_SYMBOL vmlinux 0x664a1d7b register_quota_format +EXPORT_SYMBOL vmlinux 0x66509d09 simple_open +EXPORT_SYMBOL vmlinux 0x6662dafa pnp_stop_dev +EXPORT_SYMBOL vmlinux 0x66753f87 read_dev_sector +EXPORT_SYMBOL vmlinux 0x66886fab agp_alloc_page_array +EXPORT_SYMBOL vmlinux 0x668da8d5 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x669806e9 blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0x66a67dab flex_array_shrink +EXPORT_SYMBOL vmlinux 0x66c8b825 cpu_sibling_map +EXPORT_SYMBOL vmlinux 0x66c97f21 vga_get +EXPORT_SYMBOL vmlinux 0x66f278a4 md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0x670d5cd9 set_anon_super +EXPORT_SYMBOL vmlinux 0x6714f012 dm_get_mapinfo +EXPORT_SYMBOL vmlinux 0x6729d3df __get_user_4 +EXPORT_SYMBOL vmlinux 0x673f815e agp_bridges +EXPORT_SYMBOL vmlinux 0x67431bde ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x675b8f61 param_get_string +EXPORT_SYMBOL vmlinux 0x6780eb82 do_splice_from +EXPORT_SYMBOL vmlinux 0x678b2640 pci_map_biosrom +EXPORT_SYMBOL vmlinux 0x678f3cf0 rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0x67ae7ea7 ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b6b2ef dev_remove_pack +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67c31ebf dquot_scan_active +EXPORT_SYMBOL vmlinux 0x67cb9784 ipmi_poll_interface +EXPORT_SYMBOL vmlinux 0x67dcffb7 lg_lock_init +EXPORT_SYMBOL vmlinux 0x67f7403e _raw_spin_lock +EXPORT_SYMBOL vmlinux 0x6841b1f4 tcf_hash_search +EXPORT_SYMBOL vmlinux 0x68644a6e mmc_set_blockcount +EXPORT_SYMBOL vmlinux 0x68676364 tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x687baa6b inet_frags_init_net +EXPORT_SYMBOL vmlinux 0x688df620 set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0x68996994 serio_open +EXPORT_SYMBOL vmlinux 0x68b83ac6 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x68dfc59f __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0x68e05d57 getrawmonotonic +EXPORT_SYMBOL vmlinux 0x68e2f221 _raw_spin_unlock +EXPORT_SYMBOL vmlinux 0x69394394 devm_gpio_request +EXPORT_SYMBOL vmlinux 0x695b616d dst_release +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x6984eeb4 pci_request_region +EXPORT_SYMBOL vmlinux 0x6988d0ca cpu_dr7 +EXPORT_SYMBOL vmlinux 0x69a0ca7d iowrite16be +EXPORT_SYMBOL vmlinux 0x69a358a6 iomem_resource +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69c30a11 dma_async_memcpy_buf_to_pg +EXPORT_SYMBOL vmlinux 0x69d38ed9 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x69e27c7a bitmap_copy_le +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a089b71 dev_remove_offload +EXPORT_SYMBOL vmlinux 0x6a094ffc splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0x6a0a0e6c __nla_reserve +EXPORT_SYMBOL vmlinux 0x6a27bfce csum_partial_copy_generic +EXPORT_SYMBOL vmlinux 0x6a2d9992 generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x6a48e16b percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a5f951f dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0x6a6c814a pci_set_dma_seg_boundary +EXPORT_SYMBOL vmlinux 0x6a76f3ac blk_iopoll_enable +EXPORT_SYMBOL vmlinux 0x6a7e7efb vga_put +EXPORT_SYMBOL vmlinux 0x6a8f0701 filp_open +EXPORT_SYMBOL vmlinux 0x6aafc8ce agp_generic_destroy_pages +EXPORT_SYMBOL vmlinux 0x6ac888d6 pv_mmu_ops +EXPORT_SYMBOL vmlinux 0x6acb973d iowrite32be +EXPORT_SYMBOL vmlinux 0x6ad814bf vlan_untag +EXPORT_SYMBOL vmlinux 0x6ad85887 acpi_enable_gpe +EXPORT_SYMBOL vmlinux 0x6add5c9a dmi_find_device +EXPORT_SYMBOL vmlinux 0x6ae1b686 free_xenballooned_pages +EXPORT_SYMBOL vmlinux 0x6ae6c755 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0x6ae81e78 gen10g_suspend +EXPORT_SYMBOL vmlinux 0x6af0e4a7 misc_register +EXPORT_SYMBOL vmlinux 0x6af8209d invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x6b06fdce delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x6b1b67d3 __bdevname +EXPORT_SYMBOL vmlinux 0x6b39b090 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x6b42ec19 dcb_getapp +EXPORT_SYMBOL vmlinux 0x6b45bd9f vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0x6bafa111 unregister_netdev +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bca6f65 inet_frags_fini +EXPORT_SYMBOL vmlinux 0x6bdcfd99 qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x6be21d92 write_one_page +EXPORT_SYMBOL vmlinux 0x6be39938 path_get +EXPORT_SYMBOL vmlinux 0x6beb2078 param_set_copystring +EXPORT_SYMBOL vmlinux 0x6bed43b2 nlmsg_notify +EXPORT_SYMBOL vmlinux 0x6c0c8aa2 noop_qdisc +EXPORT_SYMBOL vmlinux 0x6c18f7a6 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0x6c1ce5ce strcspn +EXPORT_SYMBOL vmlinux 0x6c20ac96 sock_edemux +EXPORT_SYMBOL vmlinux 0x6c2e3320 strncmp +EXPORT_SYMBOL vmlinux 0x6c389761 acpi_bus_get_private_data +EXPORT_SYMBOL vmlinux 0x6c39e5da neigh_direct_output +EXPORT_SYMBOL vmlinux 0x6c463f3a tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x6c51a836 sysctl_tcp_notsent_lowat +EXPORT_SYMBOL vmlinux 0x6c52366b module_layout +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c6f8a0f _raw_write_unlock +EXPORT_SYMBOL vmlinux 0x6c702af7 sysctl_udp_rmem_min +EXPORT_SYMBOL vmlinux 0x6c8e767d neigh_for_each +EXPORT_SYMBOL vmlinux 0x6c984bb2 __ht_create_irq +EXPORT_SYMBOL vmlinux 0x6ca4f9f5 cpufreq_global_kobject +EXPORT_SYMBOL vmlinux 0x6ca5b0f8 __net_get_random_once +EXPORT_SYMBOL vmlinux 0x6ca99dd1 netdev_emerg +EXPORT_SYMBOL vmlinux 0x6cc67d42 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0x6cd91e35 __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x6cdc5c6b nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6d0ab178 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0x6d0f1f89 dm_table_get_mode +EXPORT_SYMBOL vmlinux 0x6d1f4a53 skb_store_bits +EXPORT_SYMBOL vmlinux 0x6d27ef64 __bitmap_empty +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d334118 __get_user_8 +EXPORT_SYMBOL vmlinux 0x6d340f64 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x6d62ea16 __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0x6d6d3686 kill_litter_super +EXPORT_SYMBOL vmlinux 0x6d7905de default_file_splice_read +EXPORT_SYMBOL vmlinux 0x6d89fc80 neigh_connected_output +EXPORT_SYMBOL vmlinux 0x6d913eb6 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0x6da3511c skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0x6dcb49dd vfs_readv +EXPORT_SYMBOL vmlinux 0x6ddce68f invalidate_bdev +EXPORT_SYMBOL vmlinux 0x6def2db2 half_md4_transform +EXPORT_SYMBOL vmlinux 0x6df1a22f md_wakeup_thread +EXPORT_SYMBOL vmlinux 0x6e0a1fe2 softnet_data +EXPORT_SYMBOL vmlinux 0x6e1f9c03 scsi_remove_device +EXPORT_SYMBOL vmlinux 0x6e452f8a __block_write_begin +EXPORT_SYMBOL vmlinux 0x6e51ac2e _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0x6e5f8edb ps2_drain +EXPORT_SYMBOL vmlinux 0x6e5fcc9e serio_interrupt +EXPORT_SYMBOL vmlinux 0x6e65f2dc rtc_lock +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e92c69c scsi_print_result +EXPORT_SYMBOL vmlinux 0x6ea24ef9 pci_write_vpd +EXPORT_SYMBOL vmlinux 0x6eacd478 inet6_ioctl +EXPORT_SYMBOL vmlinux 0x6ebc5149 param_ops_long +EXPORT_SYMBOL vmlinux 0x6f20960a full_name_hash +EXPORT_SYMBOL vmlinux 0x6f26fbc4 done_path_create +EXPORT_SYMBOL vmlinux 0x6f4c6b71 lg_local_unlock +EXPORT_SYMBOL vmlinux 0x6f556bdb acpi_get_gpe_device +EXPORT_SYMBOL vmlinux 0x6f838bcd phy_stop +EXPORT_SYMBOL vmlinux 0x6f8a6ad2 gen10g_config_aneg +EXPORT_SYMBOL vmlinux 0x6fc55380 unregister_cdrom +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fd9eaec netdev_notice +EXPORT_SYMBOL vmlinux 0x6fdcf3dc __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0x6feb2039 acpi_write +EXPORT_SYMBOL vmlinux 0x70082b51 generic_ro_fops +EXPORT_SYMBOL vmlinux 0x7023bea8 unregister_acpi_notifier +EXPORT_SYMBOL vmlinux 0x703b4352 _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x70480df5 sock_get_timestamp +EXPORT_SYMBOL vmlinux 0x70523a7a __cond_resched_softirq +EXPORT_SYMBOL vmlinux 0x7054a3e4 request_dma +EXPORT_SYMBOL vmlinux 0x707f43f6 __ctzdi2 +EXPORT_SYMBOL vmlinux 0x707f93dd preempt_schedule +EXPORT_SYMBOL vmlinux 0x7098f314 blk_queue_invalidate_tags +EXPORT_SYMBOL vmlinux 0x709b3edf netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0x70a179c9 gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0x70a27878 inet_add_protocol +EXPORT_SYMBOL vmlinux 0x70acb158 sk_dst_check +EXPORT_SYMBOL vmlinux 0x70bc099d netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0x70bc17d7 inode_wait +EXPORT_SYMBOL vmlinux 0x70d053fd try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x70d1f8f3 strncat +EXPORT_SYMBOL vmlinux 0x70d8ab82 acpi_acquire_global_lock +EXPORT_SYMBOL vmlinux 0x70da9320 agp_generic_alloc_pages +EXPORT_SYMBOL vmlinux 0x70e99c01 inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0x70ecaa20 qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0x70fe43ac xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0x710078de unload_nls +EXPORT_SYMBOL vmlinux 0x710cf317 tcp_proc_register +EXPORT_SYMBOL vmlinux 0x711395a0 read_cache_pages +EXPORT_SYMBOL vmlinux 0x7114a71f bit_waitqueue +EXPORT_SYMBOL vmlinux 0x711829be netlink_set_err +EXPORT_SYMBOL vmlinux 0x7127f12f lro_flush_pkt +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x71a29717 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71b6447b ipv4_specific +EXPORT_SYMBOL vmlinux 0x71bf8b0e unregister_filesystem +EXPORT_SYMBOL vmlinux 0x71f65175 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x72349e46 dev_mc_del +EXPORT_SYMBOL vmlinux 0x72531961 tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0x72544a9b uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x72567ea3 pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x72595f5d __i2c_transfer +EXPORT_SYMBOL vmlinux 0x725acfed vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x726cb82a dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0x728a4f6d zerocopy_sg_from_iovec +EXPORT_SYMBOL vmlinux 0x7296a3c0 pipe_unlock +EXPORT_SYMBOL vmlinux 0x72b243d4 free_dma +EXPORT_SYMBOL vmlinux 0x72b5b2b7 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x72bf2140 mtrr_add +EXPORT_SYMBOL vmlinux 0x72d58de9 kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0x72d614c3 pci_platform_rom +EXPORT_SYMBOL vmlinux 0x72df2f2a up_read +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72f3aa32 acpi_get_physical_device_location +EXPORT_SYMBOL vmlinux 0x730ff4fa input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0x733c3b54 kasprintf +EXPORT_SYMBOL vmlinux 0x735a0bd5 native_io_delay +EXPORT_SYMBOL vmlinux 0x735e5f10 submit_bio +EXPORT_SYMBOL vmlinux 0x737de5e9 radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0x737e0890 __generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x738803e6 strnlen +EXPORT_SYMBOL vmlinux 0x73afd184 framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x73b65ac2 pci_disable_obff +EXPORT_SYMBOL vmlinux 0x73cb3c6b agp_enable +EXPORT_SYMBOL vmlinux 0x73dd54eb irq_fpu_usable +EXPORT_SYMBOL vmlinux 0x73e20c1c strlcpy +EXPORT_SYMBOL vmlinux 0x73e35893 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0x7406566a bio_integrity_split +EXPORT_SYMBOL vmlinux 0x740a1b95 reserve_evntsel_nmi +EXPORT_SYMBOL vmlinux 0x7413793a EISA_bus +EXPORT_SYMBOL vmlinux 0x74184aa5 mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x74238df9 md_write_end +EXPORT_SYMBOL vmlinux 0x74359bc5 agp_collect_device_status +EXPORT_SYMBOL vmlinux 0x743b4ae3 atomic64_inc_not_zero_cx8 +EXPORT_SYMBOL vmlinux 0x744ad34c pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0x7469fcfe radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x747195f0 hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x747e266c pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0x7485e15e unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x74898636 acpi_processor_notify_smm +EXPORT_SYMBOL vmlinux 0x74bb2181 register_sysctl_table +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74ce05b8 flush_delayed_work +EXPORT_SYMBOL vmlinux 0x74ce0b68 twl6040_power +EXPORT_SYMBOL vmlinux 0x74d19aba blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0x74d2e025 swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x74e5c98f ucs2_strnlen +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74f4d4bb sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x75000599 security_path_rename +EXPORT_SYMBOL vmlinux 0x75008b87 get_disk +EXPORT_SYMBOL vmlinux 0x7505bdef memchr_inv +EXPORT_SYMBOL vmlinux 0x75193597 vc_resize +EXPORT_SYMBOL vmlinux 0x751ee015 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0x75256bcb tcp_child_process +EXPORT_SYMBOL vmlinux 0x75271716 save_processor_state +EXPORT_SYMBOL vmlinux 0x7531e3dc acpi_get_event_resources +EXPORT_SYMBOL vmlinux 0x753796fc sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0x7538b132 agp_off +EXPORT_SYMBOL vmlinux 0x754dac78 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x756d1d26 ioctl_by_bdev +EXPORT_SYMBOL vmlinux 0x7572b294 bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x7593d385 div64_s64 +EXPORT_SYMBOL vmlinux 0x75a3f11f bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x75bb675a finish_wait +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75bdea12 iommu_area_alloc +EXPORT_SYMBOL vmlinux 0x75d08c36 led_blink_set_oneshot +EXPORT_SYMBOL vmlinux 0x75d21809 vprintk_emit +EXPORT_SYMBOL vmlinux 0x76041d4c seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x7628f3c7 this_cpu_off +EXPORT_SYMBOL vmlinux 0x762add85 atomic64_inc_return_cx8 +EXPORT_SYMBOL vmlinux 0x76343ea2 acpi_bus_get_device +EXPORT_SYMBOL vmlinux 0x763f185d __mmc_claim_host +EXPORT_SYMBOL vmlinux 0x7641ed47 clk_get +EXPORT_SYMBOL vmlinux 0x764223c3 pci_enable_ido +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x764bd77c request_resource +EXPORT_SYMBOL vmlinux 0x764f8c4f __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x7653595d sock_sendmsg +EXPORT_SYMBOL vmlinux 0x766e7d6f netpoll_cleanup +EXPORT_SYMBOL vmlinux 0x767ddb02 set_memory_wc +EXPORT_SYMBOL vmlinux 0x76838c65 vfs_symlink +EXPORT_SYMBOL vmlinux 0x768703f8 mmc_power_save_host +EXPORT_SYMBOL vmlinux 0x769086b9 uart_suspend_port +EXPORT_SYMBOL vmlinux 0x769e06d7 smp_call_function_many +EXPORT_SYMBOL vmlinux 0x76b3e295 dcb_setapp +EXPORT_SYMBOL vmlinux 0x76bf656d __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76eccb94 generic_block_bmap +EXPORT_SYMBOL vmlinux 0x76f6dd55 blk_queue_end_tag +EXPORT_SYMBOL vmlinux 0x770a0036 isapnp_cfg_begin +EXPORT_SYMBOL vmlinux 0x77130b53 ata_dev_printk +EXPORT_SYMBOL vmlinux 0x771cf835 dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x772f9eec __percpu_counter_add +EXPORT_SYMBOL vmlinux 0x773a9c94 blk_iopoll_enabled +EXPORT_SYMBOL vmlinux 0x77456e0a acpi_root_dir +EXPORT_SYMBOL vmlinux 0x774a83a0 proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0x7797a97c agp_backend_release +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x77b2949b __generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x77b6cc7a phy_start +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77dde976 console_stop +EXPORT_SYMBOL vmlinux 0x77df0847 __set_personality +EXPORT_SYMBOL vmlinux 0x77ecac9f zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x78040c9f mutex_unlock +EXPORT_SYMBOL vmlinux 0x780c137f scm_fp_dup +EXPORT_SYMBOL vmlinux 0x780fdfd1 intel_enable_gtt +EXPORT_SYMBOL vmlinux 0x782567ec memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0x782aec6c ip_getsockopt +EXPORT_SYMBOL vmlinux 0x783b3563 wake_up_atomic_t +EXPORT_SYMBOL vmlinux 0x7855e450 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0x7859a1d3 pci_enable_msi_block +EXPORT_SYMBOL vmlinux 0x7865ce2f udplite_prot +EXPORT_SYMBOL vmlinux 0x787cbfdb dst_destroy +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x788742d6 sk_stream_write_space +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78a81e89 sock_no_getname +EXPORT_SYMBOL vmlinux 0x78b0dad0 pv_cpu_ops +EXPORT_SYMBOL vmlinux 0x78bb2011 dm_ratelimit_state +EXPORT_SYMBOL vmlinux 0x78db38d3 proc_dointvec +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78fd36e7 ipmi_request_supply_msgs +EXPORT_SYMBOL vmlinux 0x78fe417b kmap_atomic_to_page +EXPORT_SYMBOL vmlinux 0x79068fda acpi_install_method +EXPORT_SYMBOL vmlinux 0x7935ab56 scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0x7949852e input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0x796fc5ce scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79c94441 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0x79cd1ff2 pci_disable_device +EXPORT_SYMBOL vmlinux 0x79e7bd5a dump_trace +EXPORT_SYMBOL vmlinux 0x79fcea86 setup_arg_pages +EXPORT_SYMBOL vmlinux 0x7a0ff945 vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0x7a188791 prandom_bytes +EXPORT_SYMBOL vmlinux 0x7a27c184 ewma_init +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a47195e mmc_power_restore_host +EXPORT_SYMBOL vmlinux 0x7a51e313 devm_clk_put +EXPORT_SYMBOL vmlinux 0x7a5411e3 get_phy_device +EXPORT_SYMBOL vmlinux 0x7a81ee81 netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0x7a82cb47 rdmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x7a91726b clkdev_alloc +EXPORT_SYMBOL vmlinux 0x7a925833 cpufreq_get_global_kobject +EXPORT_SYMBOL vmlinux 0x7a98d0cc jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0x7a9bf88d udplite_table +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7ab96ad3 proc_remove +EXPORT_SYMBOL vmlinux 0x7abd2fd3 i2c_master_send +EXPORT_SYMBOL vmlinux 0x7abfeae6 ata_link_printk +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7ad93b2c pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0x7add44b5 posix_acl_valid +EXPORT_SYMBOL vmlinux 0x7ae656e2 register_key_type +EXPORT_SYMBOL vmlinux 0x7ae6d639 __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0x7aec9089 clear_user +EXPORT_SYMBOL vmlinux 0x7afa89fc vsnprintf +EXPORT_SYMBOL vmlinux 0x7b1089f7 pnp_find_card +EXPORT_SYMBOL vmlinux 0x7b134ddf acpi_get_name +EXPORT_SYMBOL vmlinux 0x7b1ade38 lz4_decompress +EXPORT_SYMBOL vmlinux 0x7b30fd7b dma_ops +EXPORT_SYMBOL vmlinux 0x7b52a859 wrmsr_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x7b5c8440 vm_munmap +EXPORT_SYMBOL vmlinux 0x7b9649c1 tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0x7b9a6116 intel_agp_enabled +EXPORT_SYMBOL vmlinux 0x7ba801cd kill_bdev +EXPORT_SYMBOL vmlinux 0x7bacf499 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0x7bd0942a nf_nat_decode_session_hook +EXPORT_SYMBOL vmlinux 0x7bd93dfc try_to_release_page +EXPORT_SYMBOL vmlinux 0x7be30dfe vfs_create +EXPORT_SYMBOL vmlinux 0x7bea16da sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x7bf75438 phy_ethtool_gset +EXPORT_SYMBOL vmlinux 0x7c0d080e eth_rebuild_header +EXPORT_SYMBOL vmlinux 0x7c1372e8 panic +EXPORT_SYMBOL vmlinux 0x7c178136 bioset_integrity_create +EXPORT_SYMBOL vmlinux 0x7c18c7b9 __page_symlink +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c4c2659 seq_lseek +EXPORT_SYMBOL vmlinux 0x7c5aa928 mb_cache_entry_insert +EXPORT_SYMBOL vmlinux 0x7c61340c __release_region +EXPORT_SYMBOL vmlinux 0x7cb0fe9d md_done_sync +EXPORT_SYMBOL vmlinux 0x7cb1ae69 cpu_down +EXPORT_SYMBOL vmlinux 0x7cc53acb netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0x7cc578da param_get_long +EXPORT_SYMBOL vmlinux 0x7cd063c5 send_sig_info +EXPORT_SYMBOL vmlinux 0x7cdb586b kobject_set_name +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7ce83365 acpi_remove_table_handler +EXPORT_SYMBOL vmlinux 0x7ce91fec mmc_gpio_free_cd +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d11c268 jiffies +EXPORT_SYMBOL vmlinux 0x7d21f762 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0x7d2b759c tcf_exts_dump +EXPORT_SYMBOL vmlinux 0x7d31b46b dcache_readdir +EXPORT_SYMBOL vmlinux 0x7d44c2c6 dma_set_mask +EXPORT_SYMBOL vmlinux 0x7d45a4e7 amd_northbridges +EXPORT_SYMBOL vmlinux 0x7d58f47f qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x7d6d9cf5 dev_set_drvdata +EXPORT_SYMBOL vmlinux 0x7d71db48 kset_register +EXPORT_SYMBOL vmlinux 0x7dbc2e57 mmiotrace_printk +EXPORT_SYMBOL vmlinux 0x7dc5994b __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x7dc80082 bitmap_unplug +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7dfb3023 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0x7e11f9db blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x7e1b5c48 generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x7e1dec5c inet_csk_accept +EXPORT_SYMBOL vmlinux 0x7e2a711b release_pages +EXPORT_SYMBOL vmlinux 0x7e394c4e sysctl_local_reserved_ports +EXPORT_SYMBOL vmlinux 0x7e5b225f elevator_change +EXPORT_SYMBOL vmlinux 0x7ec69ad0 ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x7ec7b89c ipv6_push_nfrag_opts +EXPORT_SYMBOL vmlinux 0x7ecb001b __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x7edefbc7 security_task_getsecid +EXPORT_SYMBOL vmlinux 0x7ee73c0c memcg_socket_limit_enabled +EXPORT_SYMBOL vmlinux 0x7ef5b8a0 jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x7efc9f0a scsi_prep_fn +EXPORT_SYMBOL vmlinux 0x7f0b6a59 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x7f14d67e km_state_expired +EXPORT_SYMBOL vmlinux 0x7f154c8b dev_get_drvdata +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f3adf3f skb_tx_error +EXPORT_SYMBOL vmlinux 0x7f53c80c blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x7f5e6d54 sk_receive_skb +EXPORT_SYMBOL vmlinux 0x7f658e80 _raw_write_lock +EXPORT_SYMBOL vmlinux 0x7f676f58 put_io_context +EXPORT_SYMBOL vmlinux 0x7f8641b2 scsi_block_requests +EXPORT_SYMBOL vmlinux 0x7f8e6b1a elv_rb_add +EXPORT_SYMBOL vmlinux 0x7f9fe60b skb_split +EXPORT_SYMBOL vmlinux 0x7fab2c7d inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0x7fb04237 blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0x7fc05f40 kernel_read +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fe67dc9 input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0x7fe8ad48 pcie_get_minimum_link +EXPORT_SYMBOL vmlinux 0x7ff7d029 dev_uc_init +EXPORT_SYMBOL vmlinux 0x8011c21b kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0x804745d9 __idr_pre_get +EXPORT_SYMBOL vmlinux 0x804f922a ipmi_addr_length +EXPORT_SYMBOL vmlinux 0x80662e76 agp_generic_alloc_user +EXPORT_SYMBOL vmlinux 0x806686ec __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x8087781a arp_invalidate +EXPORT_SYMBOL vmlinux 0x80a2487f remove_proc_subtree +EXPORT_SYMBOL vmlinux 0x80a6e482 pci_release_regions +EXPORT_SYMBOL vmlinux 0x80a81858 max8998_bulk_write +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80d9ca85 paravirt_ticketlocks_enabled +EXPORT_SYMBOL vmlinux 0x80dc5de4 block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x80de83fb register_netdev +EXPORT_SYMBOL vmlinux 0x8131ea8c __quota_error +EXPORT_SYMBOL vmlinux 0x81472677 acpi_get_table +EXPORT_SYMBOL vmlinux 0x814e7730 nf_ct_destroy +EXPORT_SYMBOL vmlinux 0x8150c0ba mempool_resize +EXPORT_SYMBOL vmlinux 0x8157fd2b vm_insert_mixed +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x815c56d0 cpu_present_mask +EXPORT_SYMBOL vmlinux 0x815f2897 empty_zero_page +EXPORT_SYMBOL vmlinux 0x817b2f3f proc_set_user +EXPORT_SYMBOL vmlinux 0x818329ba __ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x819e1c25 acpi_evaluate_reference +EXPORT_SYMBOL vmlinux 0x81a0d875 mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0x81b09a21 __scm_destroy +EXPORT_SYMBOL vmlinux 0x81b19784 qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0x81d10f5f trace_seq_putc +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81e6b37f dmi_get_system_info +EXPORT_SYMBOL vmlinux 0x81f60521 scsi_cmd_get_serial +EXPORT_SYMBOL vmlinux 0x820665be ppp_channel_index +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x8212721d xenbus_dev_request_and_reply +EXPORT_SYMBOL vmlinux 0x8235805b memmove +EXPORT_SYMBOL vmlinux 0x82417dff devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x8248905a pnp_start_dev +EXPORT_SYMBOL vmlinux 0x8251bcc3 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x82598042 netdev_master_upper_dev_link_private +EXPORT_SYMBOL vmlinux 0x8260686f bitmap_find_next_zero_area +EXPORT_SYMBOL vmlinux 0x82668550 agp_free_memory +EXPORT_SYMBOL vmlinux 0x826e32c9 pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x82a1a72a scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x82acfb70 blk_iopoll_sched +EXPORT_SYMBOL vmlinux 0x82b72f76 bio_get_nr_vecs +EXPORT_SYMBOL vmlinux 0x82cd0957 generic_readlink +EXPORT_SYMBOL vmlinux 0x82e8342d dmam_pool_create +EXPORT_SYMBOL vmlinux 0x82efebe1 unlock_rename +EXPORT_SYMBOL vmlinux 0x830e547b ioremap_prot +EXPORT_SYMBOL vmlinux 0x83271fda load_nls +EXPORT_SYMBOL vmlinux 0x833c03aa acpi_enable_all_runtime_gpes +EXPORT_SYMBOL vmlinux 0x835028dc scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0x835d8bb2 padata_do_parallel +EXPORT_SYMBOL vmlinux 0x837b3341 ip6_frag_match +EXPORT_SYMBOL vmlinux 0x837cd246 ip_setsockopt +EXPORT_SYMBOL vmlinux 0x8383edd4 nonseekable_open +EXPORT_SYMBOL vmlinux 0x83a476ce bitmap_scnlistprintf +EXPORT_SYMBOL vmlinux 0x83d4cec4 pnpbios_protocol +EXPORT_SYMBOL vmlinux 0x83f8f9dc abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x84060081 xen_poll_irq_timeout +EXPORT_SYMBOL vmlinux 0x8406ede2 tcf_hash_insert +EXPORT_SYMBOL vmlinux 0x8417f512 acpi_update_all_gpes +EXPORT_SYMBOL vmlinux 0x841962f8 param_get_ushort +EXPORT_SYMBOL vmlinux 0x841c9a20 __nlmsg_put +EXPORT_SYMBOL vmlinux 0x8427fd76 inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x84324be8 netpoll_rx_disable +EXPORT_SYMBOL vmlinux 0x8455aea0 kernel_setsockopt +EXPORT_SYMBOL vmlinux 0x845cbf24 simple_rmdir +EXPORT_SYMBOL vmlinux 0x846f1e7c pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0x848b95e2 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0x84a81405 phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x84bdd9ba kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0x84be886f completion_done +EXPORT_SYMBOL vmlinux 0x84cfa064 drop_super +EXPORT_SYMBOL vmlinux 0x84ebf2cf pci_set_mwi +EXPORT_SYMBOL vmlinux 0x84eeda13 scsi_add_device +EXPORT_SYMBOL vmlinux 0x84ffea8b idr_preload +EXPORT_SYMBOL vmlinux 0x8509c540 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0x8518eca9 param_get_short +EXPORT_SYMBOL vmlinux 0x852d20f2 pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0x853bf7c1 param_set_int +EXPORT_SYMBOL vmlinux 0x854091b2 xfrm_state_update +EXPORT_SYMBOL vmlinux 0x854a0254 __napi_complete +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x85773934 dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x857ef648 swiotlb_alloc_coherent +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85dba03b pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85e7deb2 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0x860794f1 bdevname +EXPORT_SYMBOL vmlinux 0x861fba98 wait_for_completion_io +EXPORT_SYMBOL vmlinux 0x86252d60 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0x86341410 tcf_hash_destroy +EXPORT_SYMBOL vmlinux 0x86424774 cdrom_check_events +EXPORT_SYMBOL vmlinux 0x864a25e3 skb_pull +EXPORT_SYMBOL vmlinux 0x864c574d padata_remove_cpu +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x8653476d mb_cache_entry_release +EXPORT_SYMBOL vmlinux 0x8664f62e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x86a4889a kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0x86d4fa32 arp_find +EXPORT_SYMBOL vmlinux 0x86d5255f _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0x86e2f808 skb_free_datagram +EXPORT_SYMBOL vmlinux 0x86f6a797 tcp_enter_memory_pressure +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x87063502 lro_flush_all +EXPORT_SYMBOL vmlinux 0x870bf928 radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x871c0a7e fiemap_check_flags +EXPORT_SYMBOL vmlinux 0x8734315d inet_listen +EXPORT_SYMBOL vmlinux 0x873fe048 generic_file_aio_read +EXPORT_SYMBOL vmlinux 0x876dafc3 ec_write +EXPORT_SYMBOL vmlinux 0x877234f5 swiotlb_dma_supported +EXPORT_SYMBOL vmlinux 0x8779a34f param_ops_byte +EXPORT_SYMBOL vmlinux 0x87824112 scsi_finish_command +EXPORT_SYMBOL vmlinux 0x878ab3ce sysctl_tcp_adv_win_scale +EXPORT_SYMBOL vmlinux 0x8798e453 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0x879ca182 spi_attach_transport +EXPORT_SYMBOL vmlinux 0x87aaddf8 wrmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0x87fcd0a3 vfs_mkdir +EXPORT_SYMBOL vmlinux 0x881039d0 zlib_inflate +EXPORT_SYMBOL vmlinux 0x881398a2 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0x88222b25 dev_deactivate +EXPORT_SYMBOL vmlinux 0x882dab9d sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0x8831a7d2 phy_attach_direct +EXPORT_SYMBOL vmlinux 0x8831fea6 freeze_super +EXPORT_SYMBOL vmlinux 0x8834396c mod_timer +EXPORT_SYMBOL vmlinux 0x8844ee9b dev_disable_lro +EXPORT_SYMBOL vmlinux 0x88488481 cancel_dirty_page +EXPORT_SYMBOL vmlinux 0x88513970 param_set_byte +EXPORT_SYMBOL vmlinux 0x886bb01a pcie_get_mps +EXPORT_SYMBOL vmlinux 0x886cc2c4 cdrom_open +EXPORT_SYMBOL vmlinux 0x88895867 fddi_type_trans +EXPORT_SYMBOL vmlinux 0x88994ebf rename_lock +EXPORT_SYMBOL vmlinux 0x88ec678a ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0x88f58889 icmpv6_send +EXPORT_SYMBOL vmlinux 0x890706b0 inet_bind +EXPORT_SYMBOL vmlinux 0x8916be61 kmap_high +EXPORT_SYMBOL vmlinux 0x892b26a0 set_memory_nx +EXPORT_SYMBOL vmlinux 0x8932f33f end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0x8952c34c blk_mq_alloc_single_hw_queue +EXPORT_SYMBOL vmlinux 0x8953f8ff __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x895a3399 dm_get_device +EXPORT_SYMBOL vmlinux 0x896d8c88 in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x897473df mktime +EXPORT_SYMBOL vmlinux 0x898266e5 tcp_proto_cgroup +EXPORT_SYMBOL vmlinux 0x898b1404 sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x89afe34e __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0x89d30352 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0x89d5538d fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x89ecacc1 fb_set_var +EXPORT_SYMBOL vmlinux 0x89f9fb1a backlight_device_register +EXPORT_SYMBOL vmlinux 0x8a197d4f nf_register_hook +EXPORT_SYMBOL vmlinux 0x8a1ab4ee timeval_to_jiffies +EXPORT_SYMBOL vmlinux 0x8a308954 unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x8a413092 __pci_enable_wake +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a51d565 quota_send_warning +EXPORT_SYMBOL vmlinux 0x8a6860ca mmc_can_erase +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a80d7a5 acpi_error +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8aa624f7 create_syslog_header +EXPORT_SYMBOL vmlinux 0x8aa9401c jbd2_journal_start +EXPORT_SYMBOL vmlinux 0x8aa946c2 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x8ac8ae02 framebuffer_release +EXPORT_SYMBOL vmlinux 0x8ad98084 jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0x8af2bf08 phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x8afa82cb blk_mq_insert_request +EXPORT_SYMBOL vmlinux 0x8b18496f __copy_to_user_ll +EXPORT_SYMBOL vmlinux 0x8b1a7a66 pcie_aspm_enabled +EXPORT_SYMBOL vmlinux 0x8b226a81 acpi_video_dmi_demote_vendor +EXPORT_SYMBOL vmlinux 0x8b35e873 sg_last +EXPORT_SYMBOL vmlinux 0x8b43159b register_cpu_notifier +EXPORT_SYMBOL vmlinux 0x8b4aaf98 blk_queue_make_request +EXPORT_SYMBOL vmlinux 0x8b5f4a2e IO_APIC_get_PCI_irq_vector +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b674d8d __neigh_event_send +EXPORT_SYMBOL vmlinux 0x8b989cf9 acpi_bus_can_wakeup +EXPORT_SYMBOL vmlinux 0x8ba83034 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0x8bb2737f spi_schedule_dv_device +EXPORT_SYMBOL vmlinux 0x8bc35ffa sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x8c05f967 security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0x8c0d7414 blk_peek_request +EXPORT_SYMBOL vmlinux 0x8c183cbe iowrite16 +EXPORT_SYMBOL vmlinux 0x8c1c820f dev_mc_add +EXPORT_SYMBOL vmlinux 0x8c267b16 __nla_put +EXPORT_SYMBOL vmlinux 0x8c3694b3 cdev_add +EXPORT_SYMBOL vmlinux 0x8c43d070 keyring_search +EXPORT_SYMBOL vmlinux 0x8c47cba9 loop_backing_file +EXPORT_SYMBOL vmlinux 0x8c4ac0c6 pneigh_enqueue +EXPORT_SYMBOL vmlinux 0x8c4cfff7 md_check_recovery +EXPORT_SYMBOL vmlinux 0x8c637d43 irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x8c8728cf security_path_chmod +EXPORT_SYMBOL vmlinux 0x8c8ee770 ipmi_destroy_user +EXPORT_SYMBOL vmlinux 0x8c9473e0 tcf_hash_new_index +EXPORT_SYMBOL vmlinux 0x8cbb4803 pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8cda8029 xen_clear_irq_pending +EXPORT_SYMBOL vmlinux 0x8cfc6b9b blk_get_request +EXPORT_SYMBOL vmlinux 0x8d2e268b param_ops_ulong +EXPORT_SYMBOL vmlinux 0x8d3e52b7 fget +EXPORT_SYMBOL vmlinux 0x8d551bef sysctl_tcp_rmem +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d5a9e28 idr_get_next +EXPORT_SYMBOL vmlinux 0x8d6f81b4 __div64_32 +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d7b3f57 dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x8d7ea1d7 register_cdrom +EXPORT_SYMBOL vmlinux 0x8d8d96c6 acpi_get_sleep_type_data +EXPORT_SYMBOL vmlinux 0x8da1a3cb acpi_remove_interface +EXPORT_SYMBOL vmlinux 0x8daf8c42 dql_init +EXPORT_SYMBOL vmlinux 0x8dc6e564 restore_processor_state +EXPORT_SYMBOL vmlinux 0x8dc7fffe filemap_fault +EXPORT_SYMBOL vmlinux 0x8de50ff6 kfree_skb_list +EXPORT_SYMBOL vmlinux 0x8de67dda try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x8e002cda acpi_remove_gpe_block +EXPORT_SYMBOL vmlinux 0x8e0d66f4 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x8e1ec853 scsi_dma_map +EXPORT_SYMBOL vmlinux 0x8e44e02f dev_mc_init +EXPORT_SYMBOL vmlinux 0x8e7820a5 ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0x8e81eba3 mmc_start_bkops +EXPORT_SYMBOL vmlinux 0x8e864a86 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x8e87aed4 idr_for_each +EXPORT_SYMBOL vmlinux 0x8e888ec3 cpumask_next_and +EXPORT_SYMBOL vmlinux 0x8eaf2a5f vga_switcheroo_unregister_handler +EXPORT_SYMBOL vmlinux 0x8eb918be phy_start_interrupts +EXPORT_SYMBOL vmlinux 0x8f045d1c cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x8f2703b7 wbinvd_on_all_cpus +EXPORT_SYMBOL vmlinux 0x8f460c35 xen_biovec_phys_mergeable +EXPORT_SYMBOL vmlinux 0x8f4dab5b skb_push +EXPORT_SYMBOL vmlinux 0x8f6a2889 fasync_helper +EXPORT_SYMBOL vmlinux 0x8f6b0282 dev_addr_flush +EXPORT_SYMBOL vmlinux 0x8f738836 dquot_file_open +EXPORT_SYMBOL vmlinux 0x8f763526 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0x8f775bf3 wait_on_sync_kiocb +EXPORT_SYMBOL vmlinux 0x8f9c199c __get_user_2 +EXPORT_SYMBOL vmlinux 0x8fab7647 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x8fc09846 dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x8fdfab9b pcim_iomap_table +EXPORT_SYMBOL vmlinux 0x8ff4079b pv_irq_ops +EXPORT_SYMBOL vmlinux 0x8ffdb3b8 crc16 +EXPORT_SYMBOL vmlinux 0x901ab299 register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x904409c6 acpi_set_firmware_waking_vector +EXPORT_SYMBOL vmlinux 0x904c1992 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x9052e80a generic_write_end +EXPORT_SYMBOL vmlinux 0x908b53ed param_set_short +EXPORT_SYMBOL vmlinux 0x908bfa5d pci_bus_type +EXPORT_SYMBOL vmlinux 0x909a2d2a jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0x90b4e57e inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0x90b56d0e empty_aops +EXPORT_SYMBOL vmlinux 0x90c5e819 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x90c95c13 dget_parent +EXPORT_SYMBOL vmlinux 0x91092167 get_gendisk +EXPORT_SYMBOL vmlinux 0x911f7a87 netdev_crit +EXPORT_SYMBOL vmlinux 0x913a4ccd agp_generic_enable +EXPORT_SYMBOL vmlinux 0x9141ec9e proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0x9144a8e2 ec_burst_disable +EXPORT_SYMBOL vmlinux 0x91463b1d kstrtos16 +EXPORT_SYMBOL vmlinux 0x91607b5b netdev_state_change +EXPORT_SYMBOL vmlinux 0x91607d95 set_memory_wb +EXPORT_SYMBOL vmlinux 0x91715312 sprintf +EXPORT_SYMBOL vmlinux 0x91967e8e xen_selfballoon_init +EXPORT_SYMBOL vmlinux 0x91a1d3db netif_carrier_on +EXPORT_SYMBOL vmlinux 0x91b7efda d_invalidate +EXPORT_SYMBOL vmlinux 0x91b89c87 sock_no_poll +EXPORT_SYMBOL vmlinux 0x91c6c4e5 bio_integrity_endio +EXPORT_SYMBOL vmlinux 0x91c7cf62 ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x91eef017 tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x9221c997 bmap +EXPORT_SYMBOL vmlinux 0x922ed8fe keyring_clear +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x925520d2 blk_start_plug +EXPORT_SYMBOL vmlinux 0x927e4ed1 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0x92897e3d default_idle +EXPORT_SYMBOL vmlinux 0x92a9c60c time_to_tm +EXPORT_SYMBOL vmlinux 0x92ac49ad thermal_cdev_update +EXPORT_SYMBOL vmlinux 0x92b1a449 install_exec_creds +EXPORT_SYMBOL vmlinux 0x92d3d273 skb_trim +EXPORT_SYMBOL vmlinux 0x92ed2e7e blk_end_request_all +EXPORT_SYMBOL vmlinux 0x92f0d5a6 blk_get_queue +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x931f8ca7 submit_bio_wait +EXPORT_SYMBOL vmlinux 0x93213646 cont_write_begin +EXPORT_SYMBOL vmlinux 0x93215e1d __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0x93350a14 idr_find_slowpath +EXPORT_SYMBOL vmlinux 0x933fe797 __find_get_block +EXPORT_SYMBOL vmlinux 0x93448c57 screen_info +EXPORT_SYMBOL vmlinux 0x93458a3d mmc_of_parse +EXPORT_SYMBOL vmlinux 0x935649f5 register_filesystem +EXPORT_SYMBOL vmlinux 0x9366ac48 fb_find_mode +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x9382d7b7 file_remove_suid +EXPORT_SYMBOL vmlinux 0x938e9b83 scsi_host_get +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93bdce09 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x93bf256f ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0x93c13f94 do_splice_direct +EXPORT_SYMBOL vmlinux 0x93c7735a elv_rb_del +EXPORT_SYMBOL vmlinux 0x93c946e3 fib_default_rule_pref +EXPORT_SYMBOL vmlinux 0x93ce5757 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0x93f33076 account_page_redirty +EXPORT_SYMBOL vmlinux 0x93fca811 __get_free_pages +EXPORT_SYMBOL vmlinux 0x94024c6f xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0x940d2291 inetdev_by_index +EXPORT_SYMBOL vmlinux 0x942b4aa0 __inet6_hash +EXPORT_SYMBOL vmlinux 0x94566d28 tcf_hash_create +EXPORT_SYMBOL vmlinux 0x946a1881 skb_orphan_partial +EXPORT_SYMBOL vmlinux 0x947631fa dev_set_mtu +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x94a2a363 pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0x94a9e398 pci_disable_msix +EXPORT_SYMBOL vmlinux 0x94afdddf uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x94b541b5 cpu_active_mask +EXPORT_SYMBOL vmlinux 0x94d857a0 __skb_get_rxhash +EXPORT_SYMBOL vmlinux 0x94dbdab4 misc_deregister +EXPORT_SYMBOL vmlinux 0x9508f166 param_ops_bint +EXPORT_SYMBOL vmlinux 0x9514393e pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0x95395301 acpi_exception +EXPORT_SYMBOL vmlinux 0x953e9ff6 skb_copy_datagram_const_iovec +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x955d889c blk_alloc_queue +EXPORT_SYMBOL vmlinux 0x956187c7 ps2_init +EXPORT_SYMBOL vmlinux 0x9572a4cb devm_ioremap +EXPORT_SYMBOL vmlinux 0x9593cebc account_page_writeback +EXPORT_SYMBOL vmlinux 0x95adb552 md_register_thread +EXPORT_SYMBOL vmlinux 0x95c1482e simple_unlink +EXPORT_SYMBOL vmlinux 0x95c40562 sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0x95e3506e scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0x95e6e500 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x95f89a33 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x96029707 padata_stop +EXPORT_SYMBOL vmlinux 0x9611bf32 key_reject_and_link +EXPORT_SYMBOL vmlinux 0x96361bd0 ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x963873fd phy_driver_register +EXPORT_SYMBOL vmlinux 0x963bdc05 bio_clone_bioset +EXPORT_SYMBOL vmlinux 0x96499bf2 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0x96543256 blk_put_request +EXPORT_SYMBOL vmlinux 0x96573b80 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x965f222f kthread_create_on_node +EXPORT_SYMBOL vmlinux 0x966122f5 fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0x96666acd tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0x967bc0c2 set_pages_uc +EXPORT_SYMBOL vmlinux 0x967d3ac5 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0x96898769 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x96bdd43d register_qdisc +EXPORT_SYMBOL vmlinux 0x96cbcc81 ipmi_get_version +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96d9db7b ppp_input_error +EXPORT_SYMBOL vmlinux 0x96fe9714 fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0x970359de inet6_release +EXPORT_SYMBOL vmlinux 0x973fa82e register_acpi_notifier +EXPORT_SYMBOL vmlinux 0x9754ec10 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x97583ea3 setup_new_exec +EXPORT_SYMBOL vmlinux 0x9764bbab max8925_reg_write +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x97a60e3d param_get_bool +EXPORT_SYMBOL vmlinux 0x97b4500c __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0x97b59586 lg_local_lock_cpu +EXPORT_SYMBOL vmlinux 0x97bb2854 dmam_free_coherent +EXPORT_SYMBOL vmlinux 0x97c5bd0a acpi_unload_parent_table +EXPORT_SYMBOL vmlinux 0x97d0b53c d_instantiate +EXPORT_SYMBOL vmlinux 0x97dcef29 acpi_processor_unregister_performance +EXPORT_SYMBOL vmlinux 0x97de0ddd acpi_install_gpe_block +EXPORT_SYMBOL vmlinux 0x97eb5717 elv_add_request +EXPORT_SYMBOL vmlinux 0x9801fb61 sock_create_lite +EXPORT_SYMBOL vmlinux 0x98037c1e sock_create_kern +EXPORT_SYMBOL vmlinux 0x981dc0f3 udp_poll +EXPORT_SYMBOL vmlinux 0x9820b644 warn_slowpath_fmt_taint +EXPORT_SYMBOL vmlinux 0x982cce6b jbd2__journal_start +EXPORT_SYMBOL vmlinux 0x982d8367 blk_requeue_request +EXPORT_SYMBOL vmlinux 0x98503a08 _raw_spin_unlock_irq +EXPORT_SYMBOL vmlinux 0x9850c4e7 mmc_detect_change +EXPORT_SYMBOL vmlinux 0x985dfed6 finish_no_open +EXPORT_SYMBOL vmlinux 0x98662457 flush_signals +EXPORT_SYMBOL vmlinux 0x986e6135 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x988ed85d set_memory_x +EXPORT_SYMBOL vmlinux 0x98a344ef devm_free_irq +EXPORT_SYMBOL vmlinux 0x98b1ebd8 tty_register_driver +EXPORT_SYMBOL vmlinux 0x98c3ff75 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0x98c400a4 clocksource_unregister +EXPORT_SYMBOL vmlinux 0x98caf8d2 tcp_read_sock +EXPORT_SYMBOL vmlinux 0x98e3d40e seq_release_private +EXPORT_SYMBOL vmlinux 0x98e56d05 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0x98fa21b0 mod_timer_pinned +EXPORT_SYMBOL vmlinux 0x990395ac single_open +EXPORT_SYMBOL vmlinux 0x99052a84 acpi_os_write_port +EXPORT_SYMBOL vmlinux 0x990a225d devm_gpio_free +EXPORT_SYMBOL vmlinux 0x991735ac dentry_open +EXPORT_SYMBOL vmlinux 0x99216354 pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0x99355aee pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x99591a7a ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x997151a7 wireless_spy_update +EXPORT_SYMBOL vmlinux 0x997c9c61 dentry_path_raw +EXPORT_SYMBOL vmlinux 0x997e642a sock_rfree +EXPORT_SYMBOL vmlinux 0x9994c0ca ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x99958ac9 __module_put_and_exit +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99ac855e i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0x99cdc86b sysctl_tcp_reordering +EXPORT_SYMBOL vmlinux 0x99d4d37e unlink_framebuffer +EXPORT_SYMBOL vmlinux 0x9a0787b2 inet_del_protocol +EXPORT_SYMBOL vmlinux 0x9a10a70e sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a1fc4b4 jiffies_to_timeval +EXPORT_SYMBOL vmlinux 0x9a275cc6 devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0x9a27c08a generic_error_remove_page +EXPORT_SYMBOL vmlinux 0x9a4067d1 kunmap +EXPORT_SYMBOL vmlinux 0x9a5eb9cc kill_block_super +EXPORT_SYMBOL vmlinux 0x9a6a83f9 cmos_lock +EXPORT_SYMBOL vmlinux 0x9a6f1b3e __inode_permission +EXPORT_SYMBOL vmlinux 0x9a7fdaec pnp_device_detach +EXPORT_SYMBOL vmlinux 0x9a80a6f9 sk_wait_data +EXPORT_SYMBOL vmlinux 0x9a9aa0d3 task_tgid_nr_ns +EXPORT_SYMBOL vmlinux 0x9aabfbc0 pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0x9ab93c78 dev_mc_sync +EXPORT_SYMBOL vmlinux 0x9afdfe81 input_close_device +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b374e39 generic_file_splice_write +EXPORT_SYMBOL vmlinux 0x9b388444 get_zeroed_page +EXPORT_SYMBOL vmlinux 0x9b41cb15 blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0x9b4889bb dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x9b5bf0db nla_append +EXPORT_SYMBOL vmlinux 0x9b5ea5c3 single_open_size +EXPORT_SYMBOL vmlinux 0x9b6eb137 ksize +EXPORT_SYMBOL vmlinux 0x9b75cb81 _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x9b98c5e2 generic_listxattr +EXPORT_SYMBOL vmlinux 0x9b9e05f9 alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0x9ba7089d argv_split +EXPORT_SYMBOL vmlinux 0x9bae673a vga_switcheroo_client_fb_set +EXPORT_SYMBOL vmlinux 0x9bd5e98d ip_fragment +EXPORT_SYMBOL vmlinux 0x9be7bde4 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x9be90263 find_get_page +EXPORT_SYMBOL vmlinux 0x9bef1285 phy_scan_fixups +EXPORT_SYMBOL vmlinux 0x9c085143 __dev_remove_offload +EXPORT_SYMBOL vmlinux 0x9c2c944a __copy_from_user_ll_nocache_nozero +EXPORT_SYMBOL vmlinux 0x9c2f1ced neigh_event_ns +EXPORT_SYMBOL vmlinux 0x9c305757 blk_queue_bounce +EXPORT_SYMBOL vmlinux 0x9c3a5026 gen_pool_free +EXPORT_SYMBOL vmlinux 0x9c3fcd22 abx500_register_ops +EXPORT_SYMBOL vmlinux 0x9c491f60 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x9c4b91f5 tcp_splice_read +EXPORT_SYMBOL vmlinux 0x9c56eb5d sock_no_sendpage +EXPORT_SYMBOL vmlinux 0x9c633bad nf_unregister_hook +EXPORT_SYMBOL vmlinux 0x9c76c3cf iterate_supers_type +EXPORT_SYMBOL vmlinux 0x9c794398 sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x9c7ee868 pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0x9c8ecd26 abort_exclusive_wait +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cb773e2 tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x9cdc7d6a blk_start_queue +EXPORT_SYMBOL vmlinux 0x9ce78b5f write_cache_pages +EXPORT_SYMBOL vmlinux 0x9ceb163c memcpy_toiovec +EXPORT_SYMBOL vmlinux 0x9cfd56c5 scsi_print_status +EXPORT_SYMBOL vmlinux 0x9d05f6c4 ktime_get_clocktai +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d33da70 simple_transaction_set +EXPORT_SYMBOL vmlinux 0x9d33ef5e acpi_enable +EXPORT_SYMBOL vmlinux 0x9d39fea4 find_or_create_page +EXPORT_SYMBOL vmlinux 0x9d3aa376 blk_iopoll_init +EXPORT_SYMBOL vmlinux 0x9d4b203b uart_resume_port +EXPORT_SYMBOL vmlinux 0x9d90f95f __crc32c_le_combine +EXPORT_SYMBOL vmlinux 0x9da56fa5 rt6_lookup +EXPORT_SYMBOL vmlinux 0x9da869f0 tty_port_hangup +EXPORT_SYMBOL vmlinux 0x9dc1ef90 inet_sendmsg +EXPORT_SYMBOL vmlinux 0x9dd1ffb8 clear_inode +EXPORT_SYMBOL vmlinux 0x9de447ae mutex_lock_killable +EXPORT_SYMBOL vmlinux 0x9df53b8a mmc_gpio_request_cd +EXPORT_SYMBOL vmlinux 0x9dfe7307 lz4_decompress_unknownoutputsize +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e2000a7 memcpy_toiovecend +EXPORT_SYMBOL vmlinux 0x9e235fc9 xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x9e363b6b acpi_disable_gpe +EXPORT_SYMBOL vmlinux 0x9e4b3747 sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e64fbfe rtc_cmos_read +EXPORT_SYMBOL vmlinux 0x9e6f80f9 vfs_write +EXPORT_SYMBOL vmlinux 0x9e7d6bd0 __udelay +EXPORT_SYMBOL vmlinux 0x9e9f1714 __bitmap_andnot +EXPORT_SYMBOL vmlinux 0x9ea0ad49 __sg_free_table +EXPORT_SYMBOL vmlinux 0x9ea9fef4 iget_failed +EXPORT_SYMBOL vmlinux 0x9ebd4c04 adjust_resource +EXPORT_SYMBOL vmlinux 0x9ed2eec7 param_set_ushort +EXPORT_SYMBOL vmlinux 0x9ed685ee iov_iter_advance +EXPORT_SYMBOL vmlinux 0x9ee6d8e4 dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x9ee97616 inet_frag_find +EXPORT_SYMBOL vmlinux 0x9f05201d inet6_register_protosw +EXPORT_SYMBOL vmlinux 0x9f2bdaac __bitmap_or +EXPORT_SYMBOL vmlinux 0x9f443051 generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f491e5d ftrace_print_symbols_seq_u64 +EXPORT_SYMBOL vmlinux 0x9f629002 tcf_exts_change +EXPORT_SYMBOL vmlinux 0x9f661f5a fb_show_logo +EXPORT_SYMBOL vmlinux 0x9f745f15 from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x9f77a478 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0x9f917b33 set_user_nice +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9faf6a06 mdiobus_write +EXPORT_SYMBOL vmlinux 0x9fb3dd30 memcpy_fromiovec +EXPORT_SYMBOL vmlinux 0x9fb52be5 serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0x9fb8dd6f neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa00aca2a dql_completed +EXPORT_SYMBOL vmlinux 0xa01226a3 ipv6_select_ident +EXPORT_SYMBOL vmlinux 0xa03f67cc input_register_device +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa04535f4 elevator_exit +EXPORT_SYMBOL vmlinux 0xa04a01bd qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xa04c1404 abort_creds +EXPORT_SYMBOL vmlinux 0xa05483ec blk_queue_resize_tags +EXPORT_SYMBOL vmlinux 0xa05c03df mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xa061906e tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0xa06c81e7 netdev_update_features +EXPORT_SYMBOL vmlinux 0xa06df9e1 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0xa07ed110 xz_dec_init +EXPORT_SYMBOL vmlinux 0xa0966e4b unregister_shrinker +EXPORT_SYMBOL vmlinux 0xa0ae03fe blk_queue_prep_rq +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0b93e61 tty_set_operations +EXPORT_SYMBOL vmlinux 0xa0ceef51 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0f69035 tty_port_tty_get +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa10a877e arp_create +EXPORT_SYMBOL vmlinux 0xa119ccb2 tcp_connect +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa13fb0c7 page_readlink +EXPORT_SYMBOL vmlinux 0xa14f3d8c ewma_add +EXPORT_SYMBOL vmlinux 0xa16f9572 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0xa17cd732 i2c_add_adapter +EXPORT_SYMBOL vmlinux 0xa18700a7 check_submounts_and_drop +EXPORT_SYMBOL vmlinux 0xa1941047 tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0xa1a26c78 security_path_link +EXPORT_SYMBOL vmlinux 0xa1b759ce fb_add_videomode +EXPORT_SYMBOL vmlinux 0xa1c552d0 get_task_io_context +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1d4f425 locks_copy_lock +EXPORT_SYMBOL vmlinux 0xa1f392bf i8042_install_filter +EXPORT_SYMBOL vmlinux 0xa1f66aac vlan_vid_del +EXPORT_SYMBOL vmlinux 0xa203db1e __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0xa204490e mntget +EXPORT_SYMBOL vmlinux 0xa20aab1a inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0xa20ce1b8 net_msg_warn +EXPORT_SYMBOL vmlinux 0xa20d11d5 bdi_setup_and_register +EXPORT_SYMBOL vmlinux 0xa215eada devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0xa2330069 dmam_alloc_coherent +EXPORT_SYMBOL vmlinux 0xa237bab6 dmam_release_declared_memory +EXPORT_SYMBOL vmlinux 0xa253a1fd register_gifconf +EXPORT_SYMBOL vmlinux 0xa2848c50 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0xa28a2ace ipmi_set_gets_events +EXPORT_SYMBOL vmlinux 0xa2a98b91 ipmi_get_maintenance_mode +EXPORT_SYMBOL vmlinux 0xa2aaabe8 d_drop +EXPORT_SYMBOL vmlinux 0xa2bebd32 blk_queue_merge_bvec +EXPORT_SYMBOL vmlinux 0xa2c4d0d4 dquot_enable +EXPORT_SYMBOL vmlinux 0xa2ccd6f0 from_kuid_munged +EXPORT_SYMBOL vmlinux 0xa2d36545 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0xa2d6f104 mmc_gpio_free_ro +EXPORT_SYMBOL vmlinux 0xa2e177b8 kern_path +EXPORT_SYMBOL vmlinux 0xa2ef34d7 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xa2f1823d blk_integrity_compare +EXPORT_SYMBOL vmlinux 0xa304eb46 inode_init_owner +EXPORT_SYMBOL vmlinux 0xa32b7f58 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0xa33d9a48 acpi_decode_pld_buffer +EXPORT_SYMBOL vmlinux 0xa34f1ef5 crc32_le +EXPORT_SYMBOL vmlinux 0xa3504378 rwsem_wake +EXPORT_SYMBOL vmlinux 0xa350a8f8 set_memory_array_uc +EXPORT_SYMBOL vmlinux 0xa354ffff ppp_input +EXPORT_SYMBOL vmlinux 0xa35de80f ipv4_config +EXPORT_SYMBOL vmlinux 0xa363dab4 udp_table +EXPORT_SYMBOL vmlinux 0xa36afca1 remove_proc_entry +EXPORT_SYMBOL vmlinux 0xa3a9cc86 ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0xa3b6d999 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0xa3f0e51c blk_fetch_request +EXPORT_SYMBOL vmlinux 0xa3fd65ed __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xa418dfce dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0xa43b1297 vscnprintf +EXPORT_SYMBOL vmlinux 0xa43b9539 memcpy_fromiovecend +EXPORT_SYMBOL vmlinux 0xa456a294 ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xa4599900 rtmsg_ifinfo +EXPORT_SYMBOL vmlinux 0xa459c6e3 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0xa4701e9e timekeeping_inject_offset +EXPORT_SYMBOL vmlinux 0xa476c899 pci_scan_bus +EXPORT_SYMBOL vmlinux 0xa4981dea padata_register_cpumask_notifier +EXPORT_SYMBOL vmlinux 0xa49e9075 jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0xa4a10e84 n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0xa4a761a6 mpage_writepages +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa4be69af dev_notice +EXPORT_SYMBOL vmlinux 0xa4d4f0e6 global_cache_flush +EXPORT_SYMBOL vmlinux 0xa4eb4eff _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0xa4f447b3 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0xa50a111e inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0xa510956f fb_set_cmap +EXPORT_SYMBOL vmlinux 0xa51cdfe8 __FIXADDR_TOP +EXPORT_SYMBOL vmlinux 0xa531a42c sg_miter_start +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa5832719 xfrm_user_policy +EXPORT_SYMBOL vmlinux 0xa598180a __skb_gso_segment +EXPORT_SYMBOL vmlinux 0xa598e29c vesa_modes +EXPORT_SYMBOL vmlinux 0xa5990b0f mark_info_dirty +EXPORT_SYMBOL vmlinux 0xa59e2486 blk_sync_queue +EXPORT_SYMBOL vmlinux 0xa5acfa13 rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0xa5f67323 try_module_get +EXPORT_SYMBOL vmlinux 0xa6186fef kfree_put_link +EXPORT_SYMBOL vmlinux 0xa61c5f7d kill_fasync +EXPORT_SYMBOL vmlinux 0xa628822f net_dma_find_channel +EXPORT_SYMBOL vmlinux 0xa62e6e4f acpi_get_table_with_size +EXPORT_SYMBOL vmlinux 0xa63a2f9b param_get_ulong +EXPORT_SYMBOL vmlinux 0xa63d85ab slhc_remember +EXPORT_SYMBOL vmlinux 0xa6715115 do_settimeofday +EXPORT_SYMBOL vmlinux 0xa675804c utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0xa67da660 mempool_alloc +EXPORT_SYMBOL vmlinux 0xa67e2845 dq_data_lock +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6882283 max8998_bulk_read +EXPORT_SYMBOL vmlinux 0xa68cb910 dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0xa6970398 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0xa6b13658 __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0xa6bd63ca acpi_bios_error +EXPORT_SYMBOL vmlinux 0xa70fabbe release_evntsel_nmi +EXPORT_SYMBOL vmlinux 0xa71e7463 __first_cpu +EXPORT_SYMBOL vmlinux 0xa735db59 prandom_u32 +EXPORT_SYMBOL vmlinux 0xa7443781 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0xa7514e10 xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0xa7bef38f scsi_print_command +EXPORT_SYMBOL vmlinux 0xa7c57a4a loop_register_transfer +EXPORT_SYMBOL vmlinux 0xa7c8eb25 abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0xa7cf6c2f atomic64_dec_return_cx8 +EXPORT_SYMBOL vmlinux 0xa7ee3211 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0xa8232c78 strtobool +EXPORT_SYMBOL vmlinux 0xa838357a security_mmap_file +EXPORT_SYMBOL vmlinux 0xa83e0086 shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0xa840469c input_register_handle +EXPORT_SYMBOL vmlinux 0xa842b822 phy_start_aneg +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa86775cb mount_nodev +EXPORT_SYMBOL vmlinux 0xa86cbf90 gen10g_read_status +EXPORT_SYMBOL vmlinux 0xa8719d5b tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0xa871b21d __sock_create +EXPORT_SYMBOL vmlinux 0xa8721b97 system_state +EXPORT_SYMBOL vmlinux 0xa88c7c6c inet_getname +EXPORT_SYMBOL vmlinux 0xa8a6f639 __check_region +EXPORT_SYMBOL vmlinux 0xa8dc0abf ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0xa8e905f1 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0xa8fef7bb security_unix_may_send +EXPORT_SYMBOL vmlinux 0xa91b5561 acpi_video_backlight_support +EXPORT_SYMBOL vmlinux 0xa92414f0 truncate_pagecache +EXPORT_SYMBOL vmlinux 0xa9293a31 vga_switcheroo_register_audio_client +EXPORT_SYMBOL vmlinux 0xa92a8827 dquot_disable +EXPORT_SYMBOL vmlinux 0xa939667d swiotlb_map_sg +EXPORT_SYMBOL vmlinux 0xa951a8f3 fb_class +EXPORT_SYMBOL vmlinux 0xa955b65a init_task +EXPORT_SYMBOL vmlinux 0xa9748bc6 elv_rb_find +EXPORT_SYMBOL vmlinux 0xa97f6f53 netpoll_rx_enable +EXPORT_SYMBOL vmlinux 0xa9899301 scsi_setup_blk_pc_cmnd +EXPORT_SYMBOL vmlinux 0xa9a47e7a pagecache_write_end +EXPORT_SYMBOL vmlinux 0xa9a8e17f arch_phys_wc_add +EXPORT_SYMBOL vmlinux 0xa9cec366 sock_from_file +EXPORT_SYMBOL vmlinux 0xa9e6bd36 __pagevec_release +EXPORT_SYMBOL vmlinux 0xaa04cafc abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0xaa067bc6 agp_find_bridge +EXPORT_SYMBOL vmlinux 0xaa107f35 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0xaa138f0c inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0xaa2afe81 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0xaa50d8cb pci_fixup_device +EXPORT_SYMBOL vmlinux 0xaa644a69 pci_reenable_device +EXPORT_SYMBOL vmlinux 0xaa6901ac __kfifo_out_r +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa6fa375 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0xaa80c671 bio_copy_kern +EXPORT_SYMBOL vmlinux 0xaa8fea18 acpi_processor_register_performance +EXPORT_SYMBOL vmlinux 0xaa9087c0 param_ops_string +EXPORT_SYMBOL vmlinux 0xaa94e85c scsi_remove_host +EXPORT_SYMBOL vmlinux 0xaa97080e fb_pan_display +EXPORT_SYMBOL vmlinux 0xaaad5ab8 i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0xaacdfcc3 tcf_destroy_chain +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaae4e412 i2c_get_adapter +EXPORT_SYMBOL vmlinux 0xaae8ab0e acpi_bus_power_manageable +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab0380d1 pcim_enable_device +EXPORT_SYMBOL vmlinux 0xab0f1557 simple_rename +EXPORT_SYMBOL vmlinux 0xab18642a generic_file_fsync +EXPORT_SYMBOL vmlinux 0xab28271c i8253_lock +EXPORT_SYMBOL vmlinux 0xab59b950 ps2_command +EXPORT_SYMBOL vmlinux 0xab600421 probe_irq_off +EXPORT_SYMBOL vmlinux 0xab65ed80 set_memory_uc +EXPORT_SYMBOL vmlinux 0xab694444 bsearch +EXPORT_SYMBOL vmlinux 0xab6bde28 sysctl_max_syn_backlog +EXPORT_SYMBOL vmlinux 0xab71f576 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0xab770678 rdmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab7beabc create_empty_buffers +EXPORT_SYMBOL vmlinux 0xab815402 xfrm_lookup +EXPORT_SYMBOL vmlinux 0xab9d2039 tcf_em_register +EXPORT_SYMBOL vmlinux 0xabb928cd d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0xabc6dd63 cpufreq_sysfs_create_file +EXPORT_SYMBOL vmlinux 0xabcaa577 free_anon_bdev +EXPORT_SYMBOL vmlinux 0xabd0c91c rtc_time_to_tm +EXPORT_SYMBOL vmlinux 0xabd10fdf arp_tbl +EXPORT_SYMBOL vmlinux 0xabd8be03 simple_dir_operations +EXPORT_SYMBOL vmlinux 0xabf21628 vfs_fsync +EXPORT_SYMBOL vmlinux 0xabfc49b0 ppp_dev_name +EXPORT_SYMBOL vmlinux 0xac054056 tcp_parse_options +EXPORT_SYMBOL vmlinux 0xac0ba8c1 blk_iopoll_disable +EXPORT_SYMBOL vmlinux 0xac135d5c __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac2d2fb8 gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0xac39832c inode_newsize_ok +EXPORT_SYMBOL vmlinux 0xac58ea5e acpi_unload_table_id +EXPORT_SYMBOL vmlinux 0xac5a4ee8 __lru_cache_add +EXPORT_SYMBOL vmlinux 0xac6d6bc4 dev_get_by_index +EXPORT_SYMBOL vmlinux 0xac822a01 sock_release +EXPORT_SYMBOL vmlinux 0xac88d59f skb_seq_read +EXPORT_SYMBOL vmlinux 0xaca3fd11 sg_miter_next +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xaccabc6a in4_pton +EXPORT_SYMBOL vmlinux 0xace5f6f0 max8998_update_reg +EXPORT_SYMBOL vmlinux 0xacea7bed dquot_free_inode +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad04f29a dma_async_memcpy_pg_to_pg +EXPORT_SYMBOL vmlinux 0xad13c689 acpi_os_execute +EXPORT_SYMBOL vmlinux 0xad1c62c2 mdio_bus_type +EXPORT_SYMBOL vmlinux 0xad2a8bd2 x86_bios_cpu_apicid +EXPORT_SYMBOL vmlinux 0xad306395 gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0xad3f0bfa tty_unregister_driver +EXPORT_SYMBOL vmlinux 0xad4441ad tcp_check_req +EXPORT_SYMBOL vmlinux 0xad68b08e __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0xad6eecca make_bad_inode +EXPORT_SYMBOL vmlinux 0xad70e8cf scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad93dc4c netlink_kernel_release +EXPORT_SYMBOL vmlinux 0xad9e93de inet6_add_protocol +EXPORT_SYMBOL vmlinux 0xada085ad unlock_new_inode +EXPORT_SYMBOL vmlinux 0xada3d120 mmc_add_host +EXPORT_SYMBOL vmlinux 0xadbfd810 dma_pool_create +EXPORT_SYMBOL vmlinux 0xadcccb35 security_dentry_init_security +EXPORT_SYMBOL vmlinux 0xadd7d69b cdev_init +EXPORT_SYMBOL vmlinux 0xadda52bc __bforget +EXPORT_SYMBOL vmlinux 0xadff524e skb_make_writable +EXPORT_SYMBOL vmlinux 0xae04363e invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0xae33ba55 arch_debugfs_dir +EXPORT_SYMBOL vmlinux 0xae3ab1a5 posix_lock_file +EXPORT_SYMBOL vmlinux 0xae4879ac clocksource_register +EXPORT_SYMBOL vmlinux 0xae5b5878 dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0xae729e59 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xae81654a devm_ioremap_nocache +EXPORT_SYMBOL vmlinux 0xae90809b pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0xae95a7c1 dquot_quota_sync +EXPORT_SYMBOL vmlinux 0xaea1112c skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0xaea976a8 acpi_check_resource_conflict +EXPORT_SYMBOL vmlinux 0xaeba3d21 padata_do_serial +EXPORT_SYMBOL vmlinux 0xaec655c7 alloc_pages_exact +EXPORT_SYMBOL vmlinux 0xaeccc446 tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0xaedaacb4 eth_type_trans +EXPORT_SYMBOL vmlinux 0xaef86489 tty_lock +EXPORT_SYMBOL vmlinux 0xaf12585e lock_sock_nested +EXPORT_SYMBOL vmlinux 0xaf2e05be jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0xaf37b349 init_net +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf4b1540 acpi_get_irq_routing_table +EXPORT_SYMBOL vmlinux 0xaf55a86b bio_phys_segments +EXPORT_SYMBOL vmlinux 0xaf611eac amd_nb_misc_ids +EXPORT_SYMBOL vmlinux 0xaf64ad0d zlib_deflate +EXPORT_SYMBOL vmlinux 0xaf6581ca dma_declare_coherent_memory +EXPORT_SYMBOL vmlinux 0xaf7fcecf blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0xaf91d89f __kernel_param_lock +EXPORT_SYMBOL vmlinux 0xaf98f2ff buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0xaf9d9ecc __register_nmi_handler +EXPORT_SYMBOL vmlinux 0xafad493b param_ops_ushort +EXPORT_SYMBOL vmlinux 0xafbb5861 pci_bus_put +EXPORT_SYMBOL vmlinux 0xafd44cdc sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0xafe03d35 unmap_underlying_metadata +EXPORT_SYMBOL vmlinux 0xaffc4c5f i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0xafff9149 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0xb0006237 dump_skip +EXPORT_SYMBOL vmlinux 0xb00f24b8 simple_write_end +EXPORT_SYMBOL vmlinux 0xb01b1db8 intel_gtt_insert_sg_entries +EXPORT_SYMBOL vmlinux 0xb0207ecf ___ratelimit +EXPORT_SYMBOL vmlinux 0xb046f30b simple_empty +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb092483b abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0xb093bfff scsi_adjust_queue_depth +EXPORT_SYMBOL vmlinux 0xb0946f36 __pagevec_lru_add +EXPORT_SYMBOL vmlinux 0xb09b6dd4 __dquot_transfer +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0b26bd8 posix_lock_file_wait +EXPORT_SYMBOL vmlinux 0xb0b847ac __bitmap_full +EXPORT_SYMBOL vmlinux 0xb0d048ee skb_append_datato_frags +EXPORT_SYMBOL vmlinux 0xb0e0ec30 generic_file_splice_read +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0ff3493 alloc_disk +EXPORT_SYMBOL vmlinux 0xb0ffda2f blk_limits_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xb10c45e4 dev_uc_flush +EXPORT_SYMBOL vmlinux 0xb121390a probe_irq_on +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb134e562 dquot_drop +EXPORT_SYMBOL vmlinux 0xb1401c8a tty_port_close_end +EXPORT_SYMBOL vmlinux 0xb160f589 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0xb1645a2e sg_free_table +EXPORT_SYMBOL vmlinux 0xb19760c3 bitmap_onto +EXPORT_SYMBOL vmlinux 0xb198459e isapnp_protocol +EXPORT_SYMBOL vmlinux 0xb1a71113 tcp_prequeue +EXPORT_SYMBOL vmlinux 0xb1af94e0 km_query +EXPORT_SYMBOL vmlinux 0xb1bba4eb i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1cf44df fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xb1cfad22 rdmsr_on_cpu +EXPORT_SYMBOL vmlinux 0xb1d0b0a9 lock_may_read +EXPORT_SYMBOL vmlinux 0xb1d9523e wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0xb1db9e4e param_get_invbool +EXPORT_SYMBOL vmlinux 0xb1ec7446 filemap_fdatawait +EXPORT_SYMBOL vmlinux 0xb1f34564 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0xb219d56c wbinvd_on_cpu +EXPORT_SYMBOL vmlinux 0xb2453027 acpi_gpiochip_free_interrupts +EXPORT_SYMBOL vmlinux 0xb26108e3 zero_fill_bio +EXPORT_SYMBOL vmlinux 0xb2682405 utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0xb2688bae jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0xb2744b36 down_write_trylock +EXPORT_SYMBOL vmlinux 0xb27ba6f1 phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0xb2947494 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0xb294ebc9 elv_abort_queue +EXPORT_SYMBOL vmlinux 0xb2b94674 __crc32c_le +EXPORT_SYMBOL vmlinux 0xb2b95e21 truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0xb2be6e92 netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xb2d48a2e queue_work_on +EXPORT_SYMBOL vmlinux 0xb2f74fb6 intel_gmch_remove +EXPORT_SYMBOL vmlinux 0xb2fb4ec1 tcp_proc_unregister +EXPORT_SYMBOL vmlinux 0xb2fd5ceb __put_user_4 +EXPORT_SYMBOL vmlinux 0xb3205781 d_delete +EXPORT_SYMBOL vmlinux 0xb3284531 acpi_dbg_layer +EXPORT_SYMBOL vmlinux 0xb32db90a km_policy_expired +EXPORT_SYMBOL vmlinux 0xb34cbe7f __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0xb34ef535 x86_hyper_vmware +EXPORT_SYMBOL vmlinux 0xb352177e find_first_bit +EXPORT_SYMBOL vmlinux 0xb381b61f generic_file_direct_write +EXPORT_SYMBOL vmlinux 0xb3cb755c devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xb3e0590d acpi_set_current_resources +EXPORT_SYMBOL vmlinux 0xb3e15018 should_remove_suid +EXPORT_SYMBOL vmlinux 0xb3ed4030 pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb40309ab pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0xb4093431 dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0xb40f424a tty_schedule_flip +EXPORT_SYMBOL vmlinux 0xb41ae030 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb432b707 netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0xb4390f9a mcount +EXPORT_SYMBOL vmlinux 0xb43fef91 security_path_chown +EXPORT_SYMBOL vmlinux 0xb44c4773 ipmi_register_smi +EXPORT_SYMBOL vmlinux 0xb45578b8 memscan +EXPORT_SYMBOL vmlinux 0xb4709322 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0xb4753a79 redraw_screen +EXPORT_SYMBOL vmlinux 0xb491caaf blk_init_queue +EXPORT_SYMBOL vmlinux 0xb4ac7084 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0xb4b4f52f lock_sock_fast +EXPORT_SYMBOL vmlinux 0xb4bbf2be inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0xb4c68b6e pm860x_set_bits +EXPORT_SYMBOL vmlinux 0xb4db8431 input_register_handler +EXPORT_SYMBOL vmlinux 0xb4df9139 km_new_mapping +EXPORT_SYMBOL vmlinux 0xb502547c bio_advance +EXPORT_SYMBOL vmlinux 0xb514eddf blk_put_queue +EXPORT_SYMBOL vmlinux 0xb51ec186 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0xb52bc7ab bprm_change_interp +EXPORT_SYMBOL vmlinux 0xb52ee8be intel_gtt_clear_range +EXPORT_SYMBOL vmlinux 0xb5356122 mount_subtree +EXPORT_SYMBOL vmlinux 0xb5379925 qdisc_reset +EXPORT_SYMBOL vmlinux 0xb54533f7 usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb580ef7b complete_request_key +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5c7e5dc __getblk +EXPORT_SYMBOL vmlinux 0xb5ca1c46 slhc_free +EXPORT_SYMBOL vmlinux 0xb5ca42df input_set_abs_params +EXPORT_SYMBOL vmlinux 0xb5e45f19 skb_queue_tail +EXPORT_SYMBOL vmlinux 0xb5e68876 scsi_print_sense +EXPORT_SYMBOL vmlinux 0xb6244511 sg_init_one +EXPORT_SYMBOL vmlinux 0xb625f804 agp_bridge +EXPORT_SYMBOL vmlinux 0xb62dff46 netpoll_send_udp +EXPORT_SYMBOL vmlinux 0xb6394d4b param_set_bint +EXPORT_SYMBOL vmlinux 0xb64e02ae acpi_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xb66679eb security_inode_permission +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb6798603 key_link +EXPORT_SYMBOL vmlinux 0xb67c6538 dev_get_flags +EXPORT_SYMBOL vmlinux 0xb6822a33 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0xb6896671 crc_t10dif +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb698081b __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6b46a7c param_ops_int +EXPORT_SYMBOL vmlinux 0xb6c5a973 scsi_show_result +EXPORT_SYMBOL vmlinux 0xb6da515a __serio_register_port +EXPORT_SYMBOL vmlinux 0xb6dcc4a9 rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0xb6e4115b dev_add_offload +EXPORT_SYMBOL vmlinux 0xb6ec6f51 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0xb6ed1e53 strncpy +EXPORT_SYMBOL vmlinux 0xb705da9f may_umount +EXPORT_SYMBOL vmlinux 0xb7117ba8 backlight_force_update +EXPORT_SYMBOL vmlinux 0xb758b225 acpi_disable_event +EXPORT_SYMBOL vmlinux 0xb77131b1 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0xb7775f9d xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0xb78b3804 mmc_gpio_request_ro +EXPORT_SYMBOL vmlinux 0xb78f6928 pcie_set_readrq +EXPORT_SYMBOL vmlinux 0xb7b61546 crc32_be +EXPORT_SYMBOL vmlinux 0xb7bf5614 ab3100_event_register +EXPORT_SYMBOL vmlinux 0xb7d202d2 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0xb7dbc040 mmc_request_done +EXPORT_SYMBOL vmlinux 0xb7e31e72 scsi_register_driver +EXPORT_SYMBOL vmlinux 0xb7ed6135 d_alloc +EXPORT_SYMBOL vmlinux 0xb7f55ecc atomic64_add_return_cx8 +EXPORT_SYMBOL vmlinux 0xb81960ca snprintf +EXPORT_SYMBOL vmlinux 0xb81a87e6 seq_pad +EXPORT_SYMBOL vmlinux 0xb835b3e4 radix_tree_prev_hole +EXPORT_SYMBOL vmlinux 0xb83b2c42 vfs_getattr +EXPORT_SYMBOL vmlinux 0xb83b708f cfb_imageblit +EXPORT_SYMBOL vmlinux 0xb84efaf7 phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0xb8634948 i2c_transfer +EXPORT_SYMBOL vmlinux 0xb870e076 abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0xb87335c4 ht_create_irq +EXPORT_SYMBOL vmlinux 0xb874b87a __clzsi2 +EXPORT_SYMBOL vmlinux 0xb88dfe6c would_dump +EXPORT_SYMBOL vmlinux 0xb8a6b7af lock_may_write +EXPORT_SYMBOL vmlinux 0xb8b24f8c devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0xb8b6d0f2 fb_is_primary_device +EXPORT_SYMBOL vmlinux 0xb8c44496 dquot_acquire +EXPORT_SYMBOL vmlinux 0xb8d50b1c mmc_get_card +EXPORT_SYMBOL vmlinux 0xb8d73e97 param_set_uint +EXPORT_SYMBOL vmlinux 0xb8dc4433 put_page +EXPORT_SYMBOL vmlinux 0xb8e7ce2c __put_user_8 +EXPORT_SYMBOL vmlinux 0xb8e877e7 kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xb8f4cf38 input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0xb907513f unpoison_memory +EXPORT_SYMBOL vmlinux 0xb91578e3 fsnotify_get_group +EXPORT_SYMBOL vmlinux 0xb94e5f95 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0xb98a0185 rtc_tm_to_time +EXPORT_SYMBOL vmlinux 0xb9c9c463 secpath_dup +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xb9fd2205 add_efi_memmap +EXPORT_SYMBOL vmlinux 0xba0d5eff elv_dispatch_sort +EXPORT_SYMBOL vmlinux 0xba1fc9a9 nf_getsockopt +EXPORT_SYMBOL vmlinux 0xba27c1c3 ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0xba2d8594 ec_read +EXPORT_SYMBOL vmlinux 0xba37c910 vfs_open +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba7c5d7c genphy_resume +EXPORT_SYMBOL vmlinux 0xba8c2b26 mb_cache_entry_alloc +EXPORT_SYMBOL vmlinux 0xba8ea6ad rwsem_downgrade_wake +EXPORT_SYMBOL vmlinux 0xbaac7ecd tcp_init_sock +EXPORT_SYMBOL vmlinux 0xbaaf8390 user_revoke +EXPORT_SYMBOL vmlinux 0xbab83a80 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0xbabefd48 dquot_initialize +EXPORT_SYMBOL vmlinux 0xbaea694e generic_pipe_buf_confirm +EXPORT_SYMBOL vmlinux 0xbb0077f0 deactivate_super +EXPORT_SYMBOL vmlinux 0xbb189cad disallow_signal +EXPORT_SYMBOL vmlinux 0xbb50f3a4 unregister_exec_domain +EXPORT_SYMBOL vmlinux 0xbb5d343d xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xbb713e6d sk_filter_release_rcu +EXPORT_SYMBOL vmlinux 0xbb741a61 pci_clear_mwi +EXPORT_SYMBOL vmlinux 0xbb7a6f21 twl6040_reg_write +EXPORT_SYMBOL vmlinux 0xbb8ec26c ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0xbb99125c get_default_font +EXPORT_SYMBOL vmlinux 0xbb9e17ce mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0xbbbf6dca scsi_setup_fs_cmnd +EXPORT_SYMBOL vmlinux 0xbbe286e3 __cleancache_put_page +EXPORT_SYMBOL vmlinux 0xbc1afedf up_write +EXPORT_SYMBOL vmlinux 0xbc2031de acpi_processor_get_bios_limit +EXPORT_SYMBOL vmlinux 0xbc435770 dump_stack +EXPORT_SYMBOL vmlinux 0xbc5c64db blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0xbc5e0ba2 pci_claim_resource +EXPORT_SYMBOL vmlinux 0xbc7f746d cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0xbc9f24ca ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbcd11f28 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0xbce79a10 blkdev_fsync +EXPORT_SYMBOL vmlinux 0xbce90a90 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0xbcf098e6 pnp_get_resource +EXPORT_SYMBOL vmlinux 0xbcf14a36 fifo_set_limit +EXPORT_SYMBOL vmlinux 0xbcf64388 blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0xbd04bbfc generic_permission +EXPORT_SYMBOL vmlinux 0xbd06c7bb backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xbd18502f pci_map_rom +EXPORT_SYMBOL vmlinux 0xbd894c14 inode_sub_rsv_space +EXPORT_SYMBOL vmlinux 0xbd894e1e qdisc_destroy +EXPORT_SYMBOL vmlinux 0xbda285ec sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0xbdb1164d thaw_super +EXPORT_SYMBOL vmlinux 0xbdba9828 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0xbdead81e blk_mq_can_queue +EXPORT_SYMBOL vmlinux 0xbdedb834 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0xbe0e5118 nla_memcmp +EXPORT_SYMBOL vmlinux 0xbe196e3f __ip_dev_find +EXPORT_SYMBOL vmlinux 0xbe1a7416 ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0xbe2a0dd3 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0xbe2c0274 add_timer +EXPORT_SYMBOL vmlinux 0xbe532cc4 xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0xbe5f4bcb sk_prot_clear_portaddr_nulls +EXPORT_SYMBOL vmlinux 0xbe82209b uart_remove_one_port +EXPORT_SYMBOL vmlinux 0xbe89ad70 blk_mq_end_io +EXPORT_SYMBOL vmlinux 0xbe8c37d9 intel_scu_ipc_simple_command +EXPORT_SYMBOL vmlinux 0xbeba69d6 spi_display_xfer_agreement +EXPORT_SYMBOL vmlinux 0xbec30d05 x86_match_cpu +EXPORT_SYMBOL vmlinux 0xbec32752 set_binfmt +EXPORT_SYMBOL vmlinux 0xbee90f2f __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbef5314d proto_unregister +EXPORT_SYMBOL vmlinux 0xbefd3169 i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0xbf080e6b jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0xbf12c44f mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xbf2d4847 tcf_hash_lookup +EXPORT_SYMBOL vmlinux 0xbf328398 may_umount_tree +EXPORT_SYMBOL vmlinux 0xbf5aaa06 cap_mmap_file +EXPORT_SYMBOL vmlinux 0xbf5d851a filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0xbf6db41e phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0xbf72ee55 scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0xbf765a01 con_copy_unimap +EXPORT_SYMBOL vmlinux 0xbf7fd2f5 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0xbf893cf7 pci_set_dma_max_seg_size +EXPORT_SYMBOL vmlinux 0xbf8b39e9 isapnp_present +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfaf4a1c scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0xbfb5e9b0 cfb_fillrect +EXPORT_SYMBOL vmlinux 0xbfb68e9c sk_alloc +EXPORT_SYMBOL vmlinux 0xbfbb9a79 tcp_syn_flood_action +EXPORT_SYMBOL vmlinux 0xbfc16a0f pci_alloc_dev +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xbffb9f48 remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0xc00ea12a xfrm6_prepare_output +EXPORT_SYMBOL vmlinux 0xc01af147 scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0xc01b2c58 generic_pipe_buf_steal +EXPORT_SYMBOL vmlinux 0xc01cf848 _raw_read_lock +EXPORT_SYMBOL vmlinux 0xc01eed33 __copy_from_user_ll_nozero +EXPORT_SYMBOL vmlinux 0xc02033d2 release_sock +EXPORT_SYMBOL vmlinux 0xc021af55 eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0xc02bdd5c is_bad_inode +EXPORT_SYMBOL vmlinux 0xc02cf69b clkdev_drop +EXPORT_SYMBOL vmlinux 0xc0418514 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0xc042d14d alloc_anon_inode +EXPORT_SYMBOL vmlinux 0xc0457f15 read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0xc04ae780 mark_page_accessed +EXPORT_SYMBOL vmlinux 0xc05c8061 dm_register_target +EXPORT_SYMBOL vmlinux 0xc068440e __kfifo_alloc +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc08a0bac blk_recount_segments +EXPORT_SYMBOL vmlinux 0xc08e037f tty_write_room +EXPORT_SYMBOL vmlinux 0xc0973410 simple_transaction_release +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0a86c94 seq_escape +EXPORT_SYMBOL vmlinux 0xc0a8ff16 acpi_evaluate_object +EXPORT_SYMBOL vmlinux 0xc0acbecb udp_lib_rehash +EXPORT_SYMBOL vmlinux 0xc0f7012f pci_biosrom_size +EXPORT_SYMBOL vmlinux 0xc0f97e4a console_start +EXPORT_SYMBOL vmlinux 0xc0fddcc4 acpi_match_device_ids +EXPORT_SYMBOL vmlinux 0xc10462fa dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0xc10acee6 bitmap_start_sync +EXPORT_SYMBOL vmlinux 0xc11a169a unregister_key_type +EXPORT_SYMBOL vmlinux 0xc12ec3a6 dns_query +EXPORT_SYMBOL vmlinux 0xc14f85d1 skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0xc15e5494 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0xc1621e9e max8925_bulk_write +EXPORT_SYMBOL vmlinux 0xc175b4ea fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0xc17a80b1 sync_inode +EXPORT_SYMBOL vmlinux 0xc1b3f9ff x86_dma_fallback_dev +EXPORT_SYMBOL vmlinux 0xc1b82d22 register_shrinker +EXPORT_SYMBOL vmlinux 0xc1c2dd09 __hw_addr_flush +EXPORT_SYMBOL vmlinux 0xc1d80607 blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0xc1e04206 nf_register_sockopt +EXPORT_SYMBOL vmlinux 0xc2056e33 jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0xc20c5d35 sock_no_bind +EXPORT_SYMBOL vmlinux 0xc20df1a0 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0xc211c006 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0xc2350b29 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0xc2424641 agp3_generic_cleanup +EXPORT_SYMBOL vmlinux 0xc251295d devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0xc256e762 __bitmap_equal +EXPORT_SYMBOL vmlinux 0xc25c8c97 put_tty_driver +EXPORT_SYMBOL vmlinux 0xc27cb977 sock_get_timestampns +EXPORT_SYMBOL vmlinux 0xc280a525 __copy_from_user_ll +EXPORT_SYMBOL vmlinux 0xc293a804 proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0xc293db94 dma_sync_wait +EXPORT_SYMBOL vmlinux 0xc29bb10a unregister_framebuffer +EXPORT_SYMBOL vmlinux 0xc2bc5baf tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0xc2d711e1 krealloc +EXPORT_SYMBOL vmlinux 0xc2e3bde0 scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2eb5f61 elv_register_queue +EXPORT_SYMBOL vmlinux 0xc2f9c045 timespec_to_jiffies +EXPORT_SYMBOL vmlinux 0xc327e564 kset_unregister +EXPORT_SYMBOL vmlinux 0xc33bb5e6 key_invalidate +EXPORT_SYMBOL vmlinux 0xc34ca6bc skb_find_text +EXPORT_SYMBOL vmlinux 0xc35d37b9 km_policy_notify +EXPORT_SYMBOL vmlinux 0xc3741f29 blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0xc37c2cad put_disk +EXPORT_SYMBOL vmlinux 0xc37d9830 tcp_gro_complete +EXPORT_SYMBOL vmlinux 0xc3873bb9 I_BDEV +EXPORT_SYMBOL vmlinux 0xc389d1cb dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0xc398b423 audit_log_start +EXPORT_SYMBOL vmlinux 0xc3aaf0a9 __put_user_1 +EXPORT_SYMBOL vmlinux 0xc3ddce41 nobh_truncate_page +EXPORT_SYMBOL vmlinux 0xc3ea768b inet_del_offload +EXPORT_SYMBOL vmlinux 0xc3fa6a59 memchr +EXPORT_SYMBOL vmlinux 0xc41cca2f tcf_em_unregister +EXPORT_SYMBOL vmlinux 0xc41e6abf netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0xc41e8f7a wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0xc41f0516 node_states +EXPORT_SYMBOL vmlinux 0xc42343b1 devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0xc4269791 alloc_fcdev +EXPORT_SYMBOL vmlinux 0xc430aafe neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0xc43d6bd6 blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0xc4554217 up +EXPORT_SYMBOL vmlinux 0xc47f46cb sock_kmalloc +EXPORT_SYMBOL vmlinux 0xc499ae1e kstrdup +EXPORT_SYMBOL vmlinux 0xc4c46a45 scsi_init_io +EXPORT_SYMBOL vmlinux 0xc4cb6180 bdgrab +EXPORT_SYMBOL vmlinux 0xc50b7bf4 devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0xc55090d9 dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0xc5534d64 ioread16 +EXPORT_SYMBOL vmlinux 0xc57ab7bc proc_dostring +EXPORT_SYMBOL vmlinux 0xc57ba2c7 check_disk_change +EXPORT_SYMBOL vmlinux 0xc589e044 param_set_long +EXPORT_SYMBOL vmlinux 0xc59aa776 ppp_register_channel +EXPORT_SYMBOL vmlinux 0xc5a6cada skb_append +EXPORT_SYMBOL vmlinux 0xc5be94fc mdiobus_scan +EXPORT_SYMBOL vmlinux 0xc5cdab8b __serio_register_driver +EXPORT_SYMBOL vmlinux 0xc5d493f8 tcp_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xc5d9c46c agp_try_unsupported_boot +EXPORT_SYMBOL vmlinux 0xc5e4196c dma_release_declared_memory +EXPORT_SYMBOL vmlinux 0xc5ec83a6 ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0xc5f2a91f pcim_iounmap +EXPORT_SYMBOL vmlinux 0xc5fdef94 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xc6036c7a netdev_all_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0xc614218d blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc63cc125 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0xc65abeb7 agp3_generic_sizes +EXPORT_SYMBOL vmlinux 0xc6614a48 fsnotify_add_mark +EXPORT_SYMBOL vmlinux 0xc6645b42 mempool_create_node +EXPORT_SYMBOL vmlinux 0xc6700d06 __sb_end_write +EXPORT_SYMBOL vmlinux 0xc6aea796 netpoll_setup +EXPORT_SYMBOL vmlinux 0xc6b23120 intel_scu_ipc_iowrite16 +EXPORT_SYMBOL vmlinux 0xc6b368d3 acpi_gpe_count +EXPORT_SYMBOL vmlinux 0xc6b552e4 dev_add_pack +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6d53c8d skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0xc71feba3 tty_port_open +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc738187b tty_unlock +EXPORT_SYMBOL vmlinux 0xc73b5618 dma_release_from_coherent +EXPORT_SYMBOL vmlinux 0xc74a71bf request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0xc7545c68 dev_addr_add +EXPORT_SYMBOL vmlinux 0xc768de19 cpu_all_bits +EXPORT_SYMBOL vmlinux 0xc76ccfaa dma_supported +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc78218f5 __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7c382d1 read_code +EXPORT_SYMBOL vmlinux 0xc7cc4790 bdget_disk +EXPORT_SYMBOL vmlinux 0xc7cd2988 blk_mq_alloc_reserved_request +EXPORT_SYMBOL vmlinux 0xc7d2d7e8 x86_hyper_xen_hvm +EXPORT_SYMBOL vmlinux 0xc7da1df0 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0xc7e5bd71 neigh_lookup +EXPORT_SYMBOL vmlinux 0xc7ec6c27 strspn +EXPORT_SYMBOL vmlinux 0xc80e5745 blk_queue_unprep_rq +EXPORT_SYMBOL vmlinux 0xc826873b bio_sector_offset +EXPORT_SYMBOL vmlinux 0xc8276a79 nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xc8339e24 string_unescape +EXPORT_SYMBOL vmlinux 0xc834953e pm860x_page_set_bits +EXPORT_SYMBOL vmlinux 0xc83b4d5b posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0xc83bde52 skb_insert +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc852e2c0 blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0xc85d9ad2 __free_pages +EXPORT_SYMBOL vmlinux 0xc8692ab6 call_netdevice_notifiers_info +EXPORT_SYMBOL vmlinux 0xc86d6799 ___preempt_schedule +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc87a97a9 __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0xc8968e88 filemap_write_and_wait +EXPORT_SYMBOL vmlinux 0xc897c382 sg_init_table +EXPORT_SYMBOL vmlinux 0xc8b57c27 autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xc8bade80 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0xc8e435f6 request_key_async +EXPORT_SYMBOL vmlinux 0xc8f450f2 clear_bdi_congested +EXPORT_SYMBOL vmlinux 0xc90ae024 pci_target_state +EXPORT_SYMBOL vmlinux 0xc90fc338 tcp_prot +EXPORT_SYMBOL vmlinux 0xc92170fb rfkill_alloc +EXPORT_SYMBOL vmlinux 0xc92f3e37 dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0xc94a70bc neigh_changeaddr +EXPORT_SYMBOL vmlinux 0xc9559305 inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0xc95a1e03 neigh_destroy +EXPORT_SYMBOL vmlinux 0xc95c984e seq_bitmap +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc983ce7e bitmap_startwrite +EXPORT_SYMBOL vmlinux 0xc996d097 del_timer +EXPORT_SYMBOL vmlinux 0xc9f99200 sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0xc9fd4ac5 netdev_warn +EXPORT_SYMBOL vmlinux 0xca021eb4 devm_ioport_map +EXPORT_SYMBOL vmlinux 0xca029378 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0xca149a95 __inet_stream_connect +EXPORT_SYMBOL vmlinux 0xca19c47c pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0xca394852 __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0xca589746 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0xca5dbc50 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xca8acc78 acpi_dbg_level +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xcaa40ef2 ll_rw_block +EXPORT_SYMBOL vmlinux 0xcab4b12f pci_set_power_state +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb07f41d unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xcb0c5d50 param_get_uint +EXPORT_SYMBOL vmlinux 0xcb1b3217 __scsi_alloc_queue +EXPORT_SYMBOL vmlinux 0xcb21b2c9 mmc_can_reset +EXPORT_SYMBOL vmlinux 0xcb3c6d5a unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0xcb439370 pneigh_lookup +EXPORT_SYMBOL vmlinux 0xcb470f8b set_pages_wb +EXPORT_SYMBOL vmlinux 0xcb488fec tty_pair_get_pty +EXPORT_SYMBOL vmlinux 0xcb4c2368 cleancache_register_ops +EXPORT_SYMBOL vmlinux 0xcb61fc87 free_user_ns +EXPORT_SYMBOL vmlinux 0xcb733bf2 acpi_bus_set_power +EXPORT_SYMBOL vmlinux 0xcba9f04d pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0xcbae6c7a acpi_lid_notifier_unregister +EXPORT_SYMBOL vmlinux 0xcbafc2d4 try_to_writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xcbbf0a6f audit_log_task_context +EXPORT_SYMBOL vmlinux 0xcbc9557f unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0xcbd45a69 i8042_check_port_owner +EXPORT_SYMBOL vmlinux 0xcc1107ce mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0xcc1a8ce4 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc323dcc processors +EXPORT_SYMBOL vmlinux 0xcc37f55c blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0xcc41fb7d pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0xcc463952 add_disk +EXPORT_SYMBOL vmlinux 0xcc4d1bfb atomic64_read_cx8 +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc5b27b5 acpi_extract_package +EXPORT_SYMBOL vmlinux 0xcc6b12c4 tcp_init_cgroup +EXPORT_SYMBOL vmlinux 0xcc71aaab __blk_end_request +EXPORT_SYMBOL vmlinux 0xcc7fa952 local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0xccaaf993 spi_dv_device +EXPORT_SYMBOL vmlinux 0xccb0c113 sock_no_shutdown +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccd6fa10 km_state_notify +EXPORT_SYMBOL vmlinux 0xccdd2cd5 kdb_current_task +EXPORT_SYMBOL vmlinux 0xcce6ef40 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0xcce80cae dev_change_flags +EXPORT_SYMBOL vmlinux 0xccf0e0cf scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0xcd001981 xfrm_register_type +EXPORT_SYMBOL vmlinux 0xcd03d75d stop_tty +EXPORT_SYMBOL vmlinux 0xcd1b6dd1 tty_hangup +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd32b3ae fifo_create_dflt +EXPORT_SYMBOL vmlinux 0xcd3c4886 generic_file_llseek +EXPORT_SYMBOL vmlinux 0xcd5bc1b7 pci_get_class +EXPORT_SYMBOL vmlinux 0xcd60b01a netif_skb_dev_features +EXPORT_SYMBOL vmlinux 0xcd74b1f9 cfb_copyarea +EXPORT_SYMBOL vmlinux 0xcd74fe5f sk_release_kernel +EXPORT_SYMBOL vmlinux 0xcd773d22 xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0xcd77dc0d __secpath_destroy +EXPORT_SYMBOL vmlinux 0xcd9f7b98 tty_pair_get_tty +EXPORT_SYMBOL vmlinux 0xcd9f88a7 inet_accept +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdc40fae panic_notifier_list +EXPORT_SYMBOL vmlinux 0xcdd880ba irq_to_desc +EXPORT_SYMBOL vmlinux 0xcde172ac radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce2f7da3 pagecache_write_begin +EXPORT_SYMBOL vmlinux 0xce4904a4 acpi_leave_sleep_state +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce6e148c ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0xce76b6cd ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0xce7c0e03 xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0xce88efb4 boot_cpu_data +EXPORT_SYMBOL vmlinux 0xceac0432 sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0xceb0ea62 security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0xced933e7 mmc_read_bkops_status +EXPORT_SYMBOL vmlinux 0xcedf00d3 phy_stop_interrupts +EXPORT_SYMBOL vmlinux 0xcee2d796 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0xcef51982 kstrtou16 +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf49da6f kernel_accept +EXPORT_SYMBOL vmlinux 0xcf58718a no_llseek +EXPORT_SYMBOL vmlinux 0xcf5b4508 pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0xcf6cfe1f msrs_free +EXPORT_SYMBOL vmlinux 0xcf976041 blk_integrity_register +EXPORT_SYMBOL vmlinux 0xcf9ef31c security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0xcfd127ae alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0xcfe0167d jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0xcfe05d4d register_kmmio_probe +EXPORT_SYMBOL vmlinux 0xcfe1765e neigh_parms_release +EXPORT_SYMBOL vmlinux 0xd007d02d ip_options_compile +EXPORT_SYMBOL vmlinux 0xd00f1ace genphy_update_link +EXPORT_SYMBOL vmlinux 0xd0181f4f __bitmap_xor +EXPORT_SYMBOL vmlinux 0xd0216784 pnp_unregister_driver +EXPORT_SYMBOL vmlinux 0xd0242587 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0xd041ae8a dev_addr_init +EXPORT_SYMBOL vmlinux 0xd071890c vga_switcheroo_unregister_client +EXPORT_SYMBOL vmlinux 0xd0720a17 on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xd07ecf01 ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0xd093c1c7 scsi_nonblockable_ioctl +EXPORT_SYMBOL vmlinux 0xd0a5dd83 dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0xd0a6ce60 elv_rq_merge_ok +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0ab41e0 netdev_notify_peers +EXPORT_SYMBOL vmlinux 0xd0ac91c7 writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xd0cf6ee5 pcim_iomap +EXPORT_SYMBOL vmlinux 0xd0d42c42 mod_timer_pending +EXPORT_SYMBOL vmlinux 0xd0d8621b strlen +EXPORT_SYMBOL vmlinux 0xd0ed11de kmap_to_page +EXPORT_SYMBOL vmlinux 0xd0ee38b8 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0xd0ef728c xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0xd0f07c6e ipmi_smi_watcher_register +EXPORT_SYMBOL vmlinux 0xd0f0d945 down_read +EXPORT_SYMBOL vmlinux 0xd0f36f0d audit_log_format +EXPORT_SYMBOL vmlinux 0xd0fb0dba sock_no_connect +EXPORT_SYMBOL vmlinux 0xd0fb7cd4 __tasklet_hi_schedule_first +EXPORT_SYMBOL vmlinux 0xd0fef3b2 agp_free_key +EXPORT_SYMBOL vmlinux 0xd116d7ad inet_stream_connect +EXPORT_SYMBOL vmlinux 0xd11c0dc1 __kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xd11c9cd9 mmc_alloc_host +EXPORT_SYMBOL vmlinux 0xd11de82d simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0xd1652a93 acpi_info +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd184fa48 __devm_release_region +EXPORT_SYMBOL vmlinux 0xd18b6eb2 acpi_unmap_lsapic +EXPORT_SYMBOL vmlinux 0xd1912f14 tcp_md5_hash_header +EXPORT_SYMBOL vmlinux 0xd196c9be kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xd1abe7f1 jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0xd1b5a10b scsi_host_lookup +EXPORT_SYMBOL vmlinux 0xd1f4b190 jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0xd1f6c5f3 smp_num_siblings +EXPORT_SYMBOL vmlinux 0xd20f2d2a mmc_release_host +EXPORT_SYMBOL vmlinux 0xd20feb09 kernel_bind +EXPORT_SYMBOL vmlinux 0xd21036ce tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0xd220cf8a jiffies_to_timespec +EXPORT_SYMBOL vmlinux 0xd227c667 xfrm_register_km +EXPORT_SYMBOL vmlinux 0xd2329de3 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0xd23de200 inode_reclaim_rsv_space +EXPORT_SYMBOL vmlinux 0xd251d7b0 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0xd2555f19 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd266efe7 mempool_create +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd2a740ef simple_setattr +EXPORT_SYMBOL vmlinux 0xd2af138b reservation_ww_class +EXPORT_SYMBOL vmlinux 0xd2b336a7 genphy_config_aneg +EXPORT_SYMBOL vmlinux 0xd2c64a49 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0xd2d45276 inet_sendpage +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2e67387 input_unregister_handle +EXPORT_SYMBOL vmlinux 0xd2e6a582 acpi_processor_preregister_performance +EXPORT_SYMBOL vmlinux 0xd313084a __get_user_pages +EXPORT_SYMBOL vmlinux 0xd3394a4c kmap_atomic_prot +EXPORT_SYMBOL vmlinux 0xd3435365 netdev_features_change +EXPORT_SYMBOL vmlinux 0xd3438791 __blk_end_request_all +EXPORT_SYMBOL vmlinux 0xd34d3c7c iterate_dir +EXPORT_SYMBOL vmlinux 0xd3587796 pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0xd35e249a _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0xd380eed6 xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0xd398952e clear_nlink +EXPORT_SYMBOL vmlinux 0xd3b4ec90 __dst_free +EXPORT_SYMBOL vmlinux 0xd3d52b67 twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0xd3dcab0b flex_array_alloc +EXPORT_SYMBOL vmlinux 0xd42c8f3a serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0xd432fa07 blk_end_request_cur +EXPORT_SYMBOL vmlinux 0xd4578578 posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0xd462dcd5 __f_setown +EXPORT_SYMBOL vmlinux 0xd479c901 jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0xd4835ef8 dmi_check_system +EXPORT_SYMBOL vmlinux 0xd4a92ef7 sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0xd4bb065a nf_register_hooks +EXPORT_SYMBOL vmlinux 0xd4bce007 pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0xd4c3b174 printk_emit +EXPORT_SYMBOL vmlinux 0xd4d240fb account_page_dirtied +EXPORT_SYMBOL vmlinux 0xd4e8a557 tty_vhangup +EXPORT_SYMBOL vmlinux 0xd50fef48 acpi_detach_data +EXPORT_SYMBOL vmlinux 0xd51f906e inet_stream_ops +EXPORT_SYMBOL vmlinux 0xd5247be9 mmc_interrupt_hpi +EXPORT_SYMBOL vmlinux 0xd54db544 __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0xd56c48b1 unlazy_fpu +EXPORT_SYMBOL vmlinux 0xd56c765b pskb_expand_head +EXPORT_SYMBOL vmlinux 0xd593bd3b ata_std_end_eh +EXPORT_SYMBOL vmlinux 0xd5a2f3df dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0xd5bd9839 check_disk_size_change +EXPORT_SYMBOL vmlinux 0xd5d80ffc generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0xd5e0ce4a blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0xd5e11fa7 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0xd5f2172f del_timer_sync +EXPORT_SYMBOL vmlinux 0xd5f2a978 __breadahead +EXPORT_SYMBOL vmlinux 0xd613efe9 make_kuid +EXPORT_SYMBOL vmlinux 0xd616683a ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0xd62abc39 _raw_read_unlock +EXPORT_SYMBOL vmlinux 0xd648e564 fb_match_mode +EXPORT_SYMBOL vmlinux 0xd652dda6 kmap +EXPORT_SYMBOL vmlinux 0xd660bb01 dev_emerg +EXPORT_SYMBOL vmlinux 0xd674acf6 pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0xd6775bf7 napi_gro_frags +EXPORT_SYMBOL vmlinux 0xd67a0c60 scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0xd68502e6 blk_queue_find_tag +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd6ac5c0b dev_trans_start +EXPORT_SYMBOL vmlinux 0xd6b33026 cpu_khz +EXPORT_SYMBOL vmlinux 0xd6e713b0 seq_open +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6f816dc devm_gpiod_get_index +EXPORT_SYMBOL vmlinux 0xd716034f gen10g_config_advert +EXPORT_SYMBOL vmlinux 0xd735ae9c agp_allocate_memory +EXPORT_SYMBOL vmlinux 0xd75c79df smp_call_function +EXPORT_SYMBOL vmlinux 0xd766c10d first_ec +EXPORT_SYMBOL vmlinux 0xd7775e45 pci_scan_bus_parented +EXPORT_SYMBOL vmlinux 0xd77a5aa5 __bitmap_and +EXPORT_SYMBOL vmlinux 0xd783f204 dquot_operations +EXPORT_SYMBOL vmlinux 0xd79b5a02 allow_signal +EXPORT_SYMBOL vmlinux 0xd7bd3af2 add_wait_queue +EXPORT_SYMBOL vmlinux 0xd7cc4891 netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0xd7d1377a __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0xd7d320e3 skb_copy_datagram_from_iovec +EXPORT_SYMBOL vmlinux 0xd7dbf137 uart_add_one_port +EXPORT_SYMBOL vmlinux 0xd7dd777b reserve_perfctr_nmi +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7e94579 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0xd7ea505c sk_reset_timer +EXPORT_SYMBOL vmlinux 0xd7ea7094 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xd7fd6ae8 proc_symlink +EXPORT_SYMBOL vmlinux 0xd8202a11 dev_change_carrier +EXPORT_SYMBOL vmlinux 0xd843cebe datagram_poll +EXPORT_SYMBOL vmlinux 0xd84d8bae pci_match_id +EXPORT_SYMBOL vmlinux 0xd84d9f44 freezing_slow_path +EXPORT_SYMBOL vmlinux 0xd85833cb __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0xd8704a1d tcp_recvmsg +EXPORT_SYMBOL vmlinux 0xd87c94c2 inet6_add_offload +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8a09192 vfs_writev +EXPORT_SYMBOL vmlinux 0xd8a212d1 xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0xd8af3d21 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0xd8b49e0c genphy_setup_forced +EXPORT_SYMBOL vmlinux 0xd8bdf775 dump_emit +EXPORT_SYMBOL vmlinux 0xd8c3d372 simple_pin_fs +EXPORT_SYMBOL vmlinux 0xd8c72cf0 ifla_policy +EXPORT_SYMBOL vmlinux 0xd8cbda50 mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0xd8cee357 kfree_skb +EXPORT_SYMBOL vmlinux 0xd8cf2027 dmam_declare_coherent_memory +EXPORT_SYMBOL vmlinux 0xd8d2754f fb_blank +EXPORT_SYMBOL vmlinux 0xd8ded085 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xd8e484f0 register_chrdev_region +EXPORT_SYMBOL vmlinux 0xd8fb8910 inc_nlink +EXPORT_SYMBOL vmlinux 0xd9091363 acpi_install_notify_handler +EXPORT_SYMBOL vmlinux 0xd92afabe bitmap_clear +EXPORT_SYMBOL vmlinux 0xd969b2c7 amd_e400_c1e_detected +EXPORT_SYMBOL vmlinux 0xd9819b6e netif_carrier_off +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd98ac9e4 tcp_shutdown +EXPORT_SYMBOL vmlinux 0xd990546c lg_local_unlock_cpu +EXPORT_SYMBOL vmlinux 0xd9a9bb30 getname +EXPORT_SYMBOL vmlinux 0xd9b597ad unregister_md_personality +EXPORT_SYMBOL vmlinux 0xd9b92886 vfs_statfs +EXPORT_SYMBOL vmlinux 0xd9cb189c kernel_sock_ioctl +EXPORT_SYMBOL vmlinux 0xd9fae116 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0xda0211b9 kernel_getsockopt +EXPORT_SYMBOL vmlinux 0xda08c0d7 pcibios_get_irq_routing_table +EXPORT_SYMBOL vmlinux 0xda0c3849 idr_destroy +EXPORT_SYMBOL vmlinux 0xda225134 mddev_congested +EXPORT_SYMBOL vmlinux 0xda2478d0 param_ops_short +EXPORT_SYMBOL vmlinux 0xda35f3cd kmalloc_dma_caches +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda52e6ad sk_stop_timer +EXPORT_SYMBOL vmlinux 0xda5adb62 inet_frag_maybe_warn_overflow +EXPORT_SYMBOL vmlinux 0xda7ca6cb fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xda8af7ad fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0xda8fd495 isapnp_write_byte +EXPORT_SYMBOL vmlinux 0xdaa511db pci_select_bars +EXPORT_SYMBOL vmlinux 0xdaa57ec3 totalhigh_pages +EXPORT_SYMBOL vmlinux 0xdabb5782 vlan_vid_add +EXPORT_SYMBOL vmlinux 0xdadb87f0 __ps2_command +EXPORT_SYMBOL vmlinux 0xdb19575b register_netdevice +EXPORT_SYMBOL vmlinux 0xdb2dfe7e security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0xdb351047 inode_claim_rsv_space +EXPORT_SYMBOL vmlinux 0xdb36c16d dev_addr_add_multiple +EXPORT_SYMBOL vmlinux 0xdb4cbf16 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0xdb577961 scm_detach_fds +EXPORT_SYMBOL vmlinux 0xdb647705 md_error +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb6d0d6b __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdba44c03 alloc_mdio_bitbang +EXPORT_SYMBOL vmlinux 0xdbc8bf39 kill_pid +EXPORT_SYMBOL vmlinux 0xdbcd416e sysctl_ip_nonlocal_bind +EXPORT_SYMBOL vmlinux 0xdbd4decf blkdev_put +EXPORT_SYMBOL vmlinux 0xdbe2730a find_vma +EXPORT_SYMBOL vmlinux 0xdbf91dc1 ida_init +EXPORT_SYMBOL vmlinux 0xdc047fc4 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc39d7aa dma_alloc_from_coherent +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc54ab1a __module_get +EXPORT_SYMBOL vmlinux 0xdc5612e7 file_update_time +EXPORT_SYMBOL vmlinux 0xdc570f62 lg_global_unlock +EXPORT_SYMBOL vmlinux 0xdc57f532 acpi_install_gpe_handler +EXPORT_SYMBOL vmlinux 0xdc7801e4 phy_device_free +EXPORT_SYMBOL vmlinux 0xdc867257 init_buffer +EXPORT_SYMBOL vmlinux 0xdcae080c spi_release_transport +EXPORT_SYMBOL vmlinux 0xdcb274d9 d_add_ci +EXPORT_SYMBOL vmlinux 0xdcb7da4e dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0xdd037503 dmam_free_noncoherent +EXPORT_SYMBOL vmlinux 0xdd0a2ba2 strlcat +EXPORT_SYMBOL vmlinux 0xdd1a2871 down +EXPORT_SYMBOL vmlinux 0xdd3cb125 iput +EXPORT_SYMBOL vmlinux 0xdd459711 freeze_bdev +EXPORT_SYMBOL vmlinux 0xdd59897e blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0xdd83a0e3 simple_statfs +EXPORT_SYMBOL vmlinux 0xddd0a0e0 kobject_init +EXPORT_SYMBOL vmlinux 0xddda9605 twl6040_set_bits +EXPORT_SYMBOL vmlinux 0xde10eb10 param_set_invbool +EXPORT_SYMBOL vmlinux 0xde16dc16 tboot +EXPORT_SYMBOL vmlinux 0xde1891ea ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0xde355c1f genlmsg_put +EXPORT_SYMBOL vmlinux 0xde4432bf key_put +EXPORT_SYMBOL vmlinux 0xde531106 __alloc_skb +EXPORT_SYMBOL vmlinux 0xde862394 end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0xde9360ba totalram_pages +EXPORT_SYMBOL vmlinux 0xde9b17ed agp3_generic_fetch_size +EXPORT_SYMBOL vmlinux 0xde9b350a swiotlb_unmap_sg +EXPORT_SYMBOL vmlinux 0xdea84eca d_alloc_name +EXPORT_SYMBOL vmlinux 0xdeb5cad7 pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0xdf0da3cc acpi_get_devices +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf38851b set_blocksize +EXPORT_SYMBOL vmlinux 0xdf48a0eb flex_array_put +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf60cc27 __print_symbol +EXPORT_SYMBOL vmlinux 0xdf7adf7d security_path_truncate +EXPORT_SYMBOL vmlinux 0xdf8c695a __ndelay +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdf9cb21a ilookup +EXPORT_SYMBOL vmlinux 0xdfc5169b slhc_init +EXPORT_SYMBOL vmlinux 0xdfc552f2 vfs_rename +EXPORT_SYMBOL vmlinux 0xdfe4ca3a set_nlink +EXPORT_SYMBOL vmlinux 0xe0003fcd rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0xe00543ea pci_restore_state +EXPORT_SYMBOL vmlinux 0xe00fd9b5 wait_iff_congested +EXPORT_SYMBOL vmlinux 0xe01030fb do_sync_write +EXPORT_SYMBOL vmlinux 0xe0494afe i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0xe04f7caa dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xe06141e9 security_sk_clone +EXPORT_SYMBOL vmlinux 0xe075d6eb iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xe087e6b9 scsi_ioctl +EXPORT_SYMBOL vmlinux 0xe0a16a20 intel_scu_ipc_i2c_cntrl +EXPORT_SYMBOL vmlinux 0xe0ac8bd2 acpi_bus_generate_netlink_event +EXPORT_SYMBOL vmlinux 0xe0ae0333 pci_get_device +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0b8f0b1 genl_unregister_family +EXPORT_SYMBOL vmlinux 0xe0c6c2a5 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xe0d39418 elevator_alloc +EXPORT_SYMBOL vmlinux 0xe0f60a2a nla_put_nohdr +EXPORT_SYMBOL vmlinux 0xe0fa4dba iget5_locked +EXPORT_SYMBOL vmlinux 0xe0fa83f2 ipmi_register_for_cmd +EXPORT_SYMBOL vmlinux 0xe0fcb32e dentry_unhash +EXPORT_SYMBOL vmlinux 0xe130c6b9 ps2_end_command +EXPORT_SYMBOL vmlinux 0xe13cd8a7 dmi_name_in_vendors +EXPORT_SYMBOL vmlinux 0xe1761617 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xe18ce87b gen10g_restart_aneg +EXPORT_SYMBOL vmlinux 0xe1a3951e ip_route_input_noref +EXPORT_SYMBOL vmlinux 0xe1b013ec phy_register_fixup +EXPORT_SYMBOL vmlinux 0xe1c8d3f8 iget_locked +EXPORT_SYMBOL vmlinux 0xe1caa87f inet6_del_offload +EXPORT_SYMBOL vmlinux 0xe1cae912 pnp_register_driver +EXPORT_SYMBOL vmlinux 0xe1e67aff bdi_register_dev +EXPORT_SYMBOL vmlinux 0xe1eb79ab sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0xe200f872 secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xe2034333 acpi_evaluate_hotplug_ost +EXPORT_SYMBOL vmlinux 0xe20463eb iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0xe20ede22 cdrom_media_changed +EXPORT_SYMBOL vmlinux 0xe2167fdf read_cache_page_async +EXPORT_SYMBOL vmlinux 0xe21a29ef scsi_rescan_device +EXPORT_SYMBOL vmlinux 0xe2329774 pci_pme_capable +EXPORT_SYMBOL vmlinux 0xe2365474 ip6_route_output +EXPORT_SYMBOL vmlinux 0xe23ae481 blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe243e7a5 dm_io +EXPORT_SYMBOL vmlinux 0xe24d3591 phy_device_register +EXPORT_SYMBOL vmlinux 0xe24d3a97 jiffies_64 +EXPORT_SYMBOL vmlinux 0xe2656454 ip_ct_attach +EXPORT_SYMBOL vmlinux 0xe267224d fsnotify_put_mark +EXPORT_SYMBOL vmlinux 0xe26a70ce sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0xe2792aa1 kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0xe29e1d0e out_of_line_wait_on_atomic_t +EXPORT_SYMBOL vmlinux 0xe2b05d3e pci_get_subsys +EXPORT_SYMBOL vmlinux 0xe2cad546 qdisc_tree_decrease_qlen +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2e8065e memdup_user +EXPORT_SYMBOL vmlinux 0xe2fae716 kmemdup +EXPORT_SYMBOL vmlinux 0xe3091a27 notify_change +EXPORT_SYMBOL vmlinux 0xe3098368 xfrm_init_state +EXPORT_SYMBOL vmlinux 0xe319eb24 acpi_pci_osc_control_set +EXPORT_SYMBOL vmlinux 0xe3383911 blk_complete_request +EXPORT_SYMBOL vmlinux 0xe3390212 serial8250_do_pm +EXPORT_SYMBOL vmlinux 0xe33cbbc4 nobh_write_begin +EXPORT_SYMBOL vmlinux 0xe361e8e9 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0xe36cb8a1 wait_on_page_bit +EXPORT_SYMBOL vmlinux 0xe382b571 tcp_poll +EXPORT_SYMBOL vmlinux 0xe3900846 inet_put_port +EXPORT_SYMBOL vmlinux 0xe396f469 register_md_personality +EXPORT_SYMBOL vmlinux 0xe3b32bbf bio_integrity_prep +EXPORT_SYMBOL vmlinux 0xe3b6c0d4 fb_validate_mode +EXPORT_SYMBOL vmlinux 0xe3c2ca92 lookup_bdev +EXPORT_SYMBOL vmlinux 0xe3cc1c52 scsi_register_interface +EXPORT_SYMBOL vmlinux 0xe3d6f284 fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xe3ff8a49 inet_twsk_deschedule +EXPORT_SYMBOL vmlinux 0xe4094087 skb_kill_datagram +EXPORT_SYMBOL vmlinux 0xe4151f2b inode_set_bytes +EXPORT_SYMBOL vmlinux 0xe42396f2 swiotlb_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0xe4305a99 tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0xe44e4acf kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0xe4541a90 tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0xe45d6239 acpi_bus_register_driver +EXPORT_SYMBOL vmlinux 0xe45f60d8 __wake_up +EXPORT_SYMBOL vmlinux 0xe470b12f generic_removexattr +EXPORT_SYMBOL vmlinux 0xe47c991c eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0xe484e35f ioread32 +EXPORT_SYMBOL vmlinux 0xe48885f1 pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0xe48b5640 bio_add_pc_page +EXPORT_SYMBOL vmlinux 0xe48d69eb kthread_bind +EXPORT_SYMBOL vmlinux 0xe49e547c __kfree_skb +EXPORT_SYMBOL vmlinux 0xe4d66acb netlink_broadcast +EXPORT_SYMBOL vmlinux 0xe4d787d2 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0xe4f4665b ipmi_validate_addr +EXPORT_SYMBOL vmlinux 0xe4fec097 vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0xe50f904f intel_scu_ipc_ioread16 +EXPORT_SYMBOL vmlinux 0xe5122890 flow_cache_genid +EXPORT_SYMBOL vmlinux 0xe5171050 blk_queue_dma_pad +EXPORT_SYMBOL vmlinux 0xe5208918 acpi_gbl_FADT +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe530d757 acpi_clear_gpe +EXPORT_SYMBOL vmlinux 0xe5335eee tcf_register_action +EXPORT_SYMBOL vmlinux 0xe5474899 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0xe54f8058 ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0xe5647ed1 mfd_cell_enable +EXPORT_SYMBOL vmlinux 0xe57878a1 in6_pton +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe591a80b jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0xe59a0119 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0xe59e37f6 security_path_mkdir +EXPORT_SYMBOL vmlinux 0xe5b53661 block_write_begin +EXPORT_SYMBOL vmlinux 0xe5c110e9 do_splice_to +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5d48989 generic_fillattr +EXPORT_SYMBOL vmlinux 0xe5da1733 udp_lib_unhash +EXPORT_SYMBOL vmlinux 0xe5ec0d35 input_free_device +EXPORT_SYMBOL vmlinux 0xe5ed5467 xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xe5f42f9b eisa_bus_type +EXPORT_SYMBOL vmlinux 0xe60a2afb __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0xe64d98fe rdmsr_safe_regs +EXPORT_SYMBOL vmlinux 0xe6779d87 twl6040_get_pll +EXPORT_SYMBOL vmlinux 0xe6929aeb pnpacpi_protocol +EXPORT_SYMBOL vmlinux 0xe697d108 __blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe697dae0 blk_register_region +EXPORT_SYMBOL vmlinux 0xe69e7941 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0xe6ab72a6 ipmi_set_my_LUN +EXPORT_SYMBOL vmlinux 0xe6b3fe21 interruptible_sleep_on_timeout +EXPORT_SYMBOL vmlinux 0xe6ba2e16 dma_mmap_from_coherent +EXPORT_SYMBOL vmlinux 0xe6c48f81 blk_init_queue_node +EXPORT_SYMBOL vmlinux 0xe6de81c7 xfrm6_rcv +EXPORT_SYMBOL vmlinux 0xe6ebc016 key_create_or_update +EXPORT_SYMBOL vmlinux 0xe6ed58f0 generic_shutdown_super +EXPORT_SYMBOL vmlinux 0xe6f0cf63 register_xen_selfballooning +EXPORT_SYMBOL vmlinux 0xe6fbd189 tcp_sendpage +EXPORT_SYMBOL vmlinux 0xe6fbe430 can_do_mlock +EXPORT_SYMBOL vmlinux 0xe7004ac4 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0xe716baed acpi_unregister_ioapic +EXPORT_SYMBOL vmlinux 0xe72c356d alloc_pci_dev +EXPORT_SYMBOL vmlinux 0xe73adb13 block_write_full_page +EXPORT_SYMBOL vmlinux 0xe76496bc i2c_register_driver +EXPORT_SYMBOL vmlinux 0xe76cafa1 security_d_instantiate +EXPORT_SYMBOL vmlinux 0xe7722171 flex_array_free +EXPORT_SYMBOL vmlinux 0xe781b5f6 intel_scu_ipc_readv +EXPORT_SYMBOL vmlinux 0xe7883552 generic_writepages +EXPORT_SYMBOL vmlinux 0xe7971016 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0xe798d71c cpu_core_map +EXPORT_SYMBOL vmlinux 0xe7a664c4 nf_hooks +EXPORT_SYMBOL vmlinux 0xe7a81967 audit_log_secctx +EXPORT_SYMBOL vmlinux 0xe7b7974f __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0xe7b882fa simple_dentry_operations +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7ffeec1 blk_bio_map_sg +EXPORT_SYMBOL vmlinux 0xe8086055 request_key +EXPORT_SYMBOL vmlinux 0xe8128366 kern_path_create +EXPORT_SYMBOL vmlinux 0xe851bb05 queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xe85898da md_integrity_register +EXPORT_SYMBOL vmlinux 0xe86d9de5 open_exec +EXPORT_SYMBOL vmlinux 0xe86e1fb5 nobh_writepage +EXPORT_SYMBOL vmlinux 0xe876890b xfrm_prepare_input +EXPORT_SYMBOL vmlinux 0xe8794ce1 slhc_toss +EXPORT_SYMBOL vmlinux 0xe887354a seq_read +EXPORT_SYMBOL vmlinux 0xe889b800 pci_request_regions +EXPORT_SYMBOL vmlinux 0xe88e7a93 lg_global_lock +EXPORT_SYMBOL vmlinux 0xe895cf65 inode_needs_sync +EXPORT_SYMBOL vmlinux 0xe898bfba crc32_le_combine +EXPORT_SYMBOL vmlinux 0xe8b63ace radix_tree_range_tag_if_tagged +EXPORT_SYMBOL vmlinux 0xe8b68849 wrmsr_on_cpus +EXPORT_SYMBOL vmlinux 0xe8b7ac20 mem_map +EXPORT_SYMBOL vmlinux 0xe8bea3bc qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xe8cb8859 __skb_dst_set_noref +EXPORT_SYMBOL vmlinux 0xe8db0c72 __lock_page +EXPORT_SYMBOL vmlinux 0xe8eba855 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0xe909f6c9 scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe92c31a0 generic_write_checks +EXPORT_SYMBOL vmlinux 0xe92f23c0 xfrm_input +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe97c6876 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0xe97fd5ec phy_print_status +EXPORT_SYMBOL vmlinux 0xe997667b wrmsr_on_cpu +EXPORT_SYMBOL vmlinux 0xe9a04f0e vlan_uses_dev +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xea054b22 nla_policy_len +EXPORT_SYMBOL vmlinux 0xea10212a int_to_scsilun +EXPORT_SYMBOL vmlinux 0xea10655a __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xea16dd4c tcp_destroy_cgroup +EXPORT_SYMBOL vmlinux 0xea1ce092 pnp_possible_config +EXPORT_SYMBOL vmlinux 0xea307628 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0xea4155f6 find_lock_page +EXPORT_SYMBOL vmlinux 0xea433c98 dev_uc_del +EXPORT_SYMBOL vmlinux 0xea64a036 udp_sendmsg +EXPORT_SYMBOL vmlinux 0xea7987f1 key_update +EXPORT_SYMBOL vmlinux 0xea7b8a44 acpi_install_interface +EXPORT_SYMBOL vmlinux 0xea90bdd3 acpi_attach_data +EXPORT_SYMBOL vmlinux 0xeaad6518 proc_set_size +EXPORT_SYMBOL vmlinux 0xeab2df8e inet_frags_init +EXPORT_SYMBOL vmlinux 0xeae3dfd6 __const_udelay +EXPORT_SYMBOL vmlinux 0xeaf1a2db dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0xeafa5fcf scsi_prep_state_check +EXPORT_SYMBOL vmlinux 0xeb2c2861 phy_init_eee +EXPORT_SYMBOL vmlinux 0xeb304459 sock_no_socketpair +EXPORT_SYMBOL vmlinux 0xeb34d288 simple_readpage +EXPORT_SYMBOL vmlinux 0xeb361393 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb3d4c7d inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0xeb55a931 __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xeb562ae3 posix_test_lock +EXPORT_SYMBOL vmlinux 0xeb79fd73 skb_queue_purge +EXPORT_SYMBOL vmlinux 0xebdbe48c radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0xebeca4c4 ps2_handle_ack +EXPORT_SYMBOL vmlinux 0xec112677 padata_add_cpu +EXPORT_SYMBOL vmlinux 0xec1a0e3f starget_for_each_device +EXPORT_SYMBOL vmlinux 0xec24815c xfrm_state_flush +EXPORT_SYMBOL vmlinux 0xec367ec0 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec541a9b xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0xec8239d2 jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0xec88b726 dev_mc_unsync +EXPORT_SYMBOL vmlinux 0xec9e633b sock_init_data +EXPORT_SYMBOL vmlinux 0xecaccf8a simple_release_fs +EXPORT_SYMBOL vmlinux 0xecb721f1 try_wait_for_completion +EXPORT_SYMBOL vmlinux 0xecb84f31 __frontswap_load +EXPORT_SYMBOL vmlinux 0xecc959d1 dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0xeccd3e0c acpi_handle_printk +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xeceba819 tcf_action_exec +EXPORT_SYMBOL vmlinux 0xed2d32e5 nf_setsockopt +EXPORT_SYMBOL vmlinux 0xed597524 qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xed5a661d mmc_put_card +EXPORT_SYMBOL vmlinux 0xed686fa4 kmalloc_caches +EXPORT_SYMBOL vmlinux 0xed79c938 udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0xed7e1295 gen_pool_create +EXPORT_SYMBOL vmlinux 0xed93f29e __kunmap_atomic +EXPORT_SYMBOL vmlinux 0xed9f42af soft_cursor +EXPORT_SYMBOL vmlinux 0xed9f9a20 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedc4dce8 prepare_creds +EXPORT_SYMBOL vmlinux 0xedcbe732 pci_request_region_exclusive +EXPORT_SYMBOL vmlinux 0xede170f3 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0xee02beef __scsi_add_device +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee2d4a82 i2c_verify_client +EXPORT_SYMBOL vmlinux 0xee3a2dcd __netlink_dump_start +EXPORT_SYMBOL vmlinux 0xee3bd9da pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0xee5a5ac9 d_make_root +EXPORT_SYMBOL vmlinux 0xee7eb9e1 pnp_platform_devices +EXPORT_SYMBOL vmlinux 0xee854119 kern_path_mountpoint +EXPORT_SYMBOL vmlinux 0xee8a644d neigh_update +EXPORT_SYMBOL vmlinux 0xee8c5af8 __ip_select_ident +EXPORT_SYMBOL vmlinux 0xee906ae2 swiotlb_map_sg_attrs +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xee9a25d3 fsnotify_destroy_mark +EXPORT_SYMBOL vmlinux 0xeea9dbaf bitmap_bitremap +EXPORT_SYMBOL vmlinux 0xeeafa8bb locks_remove_posix +EXPORT_SYMBOL vmlinux 0xeeb3f9c9 set_groups +EXPORT_SYMBOL vmlinux 0xeec8e606 fb_get_mode +EXPORT_SYMBOL vmlinux 0xeed1a07e vga_switcheroo_get_client_state +EXPORT_SYMBOL vmlinux 0xeef161aa groups_free +EXPORT_SYMBOL vmlinux 0xeef49656 get_super +EXPORT_SYMBOL vmlinux 0xeef6c74b kern_unmount +EXPORT_SYMBOL vmlinux 0xeefe3963 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0xef1b3968 devm_clk_get +EXPORT_SYMBOL vmlinux 0xef1b4fdc __devm_request_region +EXPORT_SYMBOL vmlinux 0xef1d35b7 acpi_install_address_space_handler +EXPORT_SYMBOL vmlinux 0xef4f2659 tcf_hash_check +EXPORT_SYMBOL vmlinux 0xef57d477 set_pages_array_wc +EXPORT_SYMBOL vmlinux 0xef66f0c9 skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0xef7354c7 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0xef848d05 devfreq_interval_update +EXPORT_SYMBOL vmlinux 0xef9aedfc boot_option_idle_override +EXPORT_SYMBOL vmlinux 0xefaf745d sock_no_ioctl +EXPORT_SYMBOL vmlinux 0xefb5512a security_inode_readlink +EXPORT_SYMBOL vmlinux 0xefbf1efd __splice_from_pipe +EXPORT_SYMBOL vmlinux 0xefc2a6d6 cdrom_release +EXPORT_SYMBOL vmlinux 0xefd8ae6b ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0xefdd70ce security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0xefe099c3 acpi_get_event_status +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf0040079 rwsem_down_read_failed +EXPORT_SYMBOL vmlinux 0xf00725ea make_kgid +EXPORT_SYMBOL vmlinux 0xf0187927 __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0xf0347ff5 __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0xf045c736 agp_create_memory +EXPORT_SYMBOL vmlinux 0xf052e205 d_path +EXPORT_SYMBOL vmlinux 0xf05ffa15 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0xf0619801 timekeeping_clocktai +EXPORT_SYMBOL vmlinux 0xf065cbe0 phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0xf065f629 ioread16be +EXPORT_SYMBOL vmlinux 0xf087137d __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0xf09de776 get_random_int +EXPORT_SYMBOL vmlinux 0xf0c064da xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0xf0ce7d50 proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0xf0d68ed6 clk_register_clkdevs +EXPORT_SYMBOL vmlinux 0xf0da5992 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xf0e2f8d6 gen10g_resume +EXPORT_SYMBOL vmlinux 0xf0ef15b4 list_sort +EXPORT_SYMBOL vmlinux 0xf0f1246c kvasprintf +EXPORT_SYMBOL vmlinux 0xf0f29dbc alloc_buffer_head +EXPORT_SYMBOL vmlinux 0xf0fdf6cb __stack_chk_fail +EXPORT_SYMBOL vmlinux 0xf100416a remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xf10de535 ioread8 +EXPORT_SYMBOL vmlinux 0xf1131553 start_tty +EXPORT_SYMBOL vmlinux 0xf11543ff find_first_zero_bit +EXPORT_SYMBOL vmlinux 0xf120d20d vfs_read +EXPORT_SYMBOL vmlinux 0xf12d331c lg_local_lock +EXPORT_SYMBOL vmlinux 0xf1369fcf in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xf13feb57 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0xf143458f acpi_bus_unregister_driver +EXPORT_SYMBOL vmlinux 0xf147dcb2 hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0xf16100b5 mnt_pin +EXPORT_SYMBOL vmlinux 0xf16eaca2 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0xf17ae036 bioset_free +EXPORT_SYMBOL vmlinux 0xf18242e1 atomic64_set_cx8 +EXPORT_SYMBOL vmlinux 0xf18f95de i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0xf18fa2cc unregister_nls +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1deabf2 div64_u64 +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1f56fde dquot_commit +EXPORT_SYMBOL vmlinux 0xf1faac3a _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0xf200589a napi_get_frags +EXPORT_SYMBOL vmlinux 0xf202c5cb radix_tree_insert +EXPORT_SYMBOL vmlinux 0xf20dabd8 free_irq +EXPORT_SYMBOL vmlinux 0xf2129760 __bio_clone +EXPORT_SYMBOL vmlinux 0xf21cfc1c nf_unregister_hooks +EXPORT_SYMBOL vmlinux 0xf2357254 acpi_evaluate_integer +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf2576cb9 ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL vmlinux 0xf260fee4 qdisc_watchdog_schedule_ns +EXPORT_SYMBOL vmlinux 0xf26b5b24 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0xf28ed6e2 machine_to_phys_nr +EXPORT_SYMBOL vmlinux 0xf2913f3d udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0xf2997713 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0xf2a0af8f backlight_device_registered +EXPORT_SYMBOL vmlinux 0xf2afe3ed file_ns_capable +EXPORT_SYMBOL vmlinux 0xf2b1ac8e __getnstimeofday +EXPORT_SYMBOL vmlinux 0xf2cca436 jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0xf2dab66d page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0xf3026387 mfd_cell_disable +EXPORT_SYMBOL vmlinux 0xf312cb9d ucs2_strsize +EXPORT_SYMBOL vmlinux 0xf313da4e sha_transform +EXPORT_SYMBOL vmlinux 0xf32055e7 dev_base_lock +EXPORT_SYMBOL vmlinux 0xf333ba0b dm_kobject_release +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf341d372 pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf35b17db dev_set_group +EXPORT_SYMBOL vmlinux 0xf3621471 unregister_console +EXPORT_SYMBOL vmlinux 0xf37260ab _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0xf37cc1c4 sock_update_classid +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf3962ade dentry_update_name_case +EXPORT_SYMBOL vmlinux 0xf396cd21 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0xf3986b06 acpi_os_map_generic_address +EXPORT_SYMBOL vmlinux 0xf399547a mmc_flush_cache +EXPORT_SYMBOL vmlinux 0xf3a223ff default_llseek +EXPORT_SYMBOL vmlinux 0xf3b157c5 d_set_d_op +EXPORT_SYMBOL vmlinux 0xf3bf0bce __bitmap_complement +EXPORT_SYMBOL vmlinux 0xf3cbb6a8 sock_setsockopt +EXPORT_SYMBOL vmlinux 0xf3ed441f tcp_mtup_init +EXPORT_SYMBOL vmlinux 0xf3ff2ec4 scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0xf409a9d8 follow_down +EXPORT_SYMBOL vmlinux 0xf40b2297 __crypto_memneq +EXPORT_SYMBOL vmlinux 0xf420bfc2 generic_setlease +EXPORT_SYMBOL vmlinux 0xf441ac43 ioread8_rep +EXPORT_SYMBOL vmlinux 0xf47896b3 find_get_pages_contig +EXPORT_SYMBOL vmlinux 0xf4a5c213 avail_to_resrv_perfctr_nmi_bit +EXPORT_SYMBOL vmlinux 0xf4b754fd acpi_resources_are_enforced +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4ce4bdc cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf4f19e51 downgrade_write +EXPORT_SYMBOL vmlinux 0xf4f7d310 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0xf502d273 acpi_get_current_resources +EXPORT_SYMBOL vmlinux 0xf51ae235 touch_nmi_watchdog +EXPORT_SYMBOL vmlinux 0xf5290c8f scsi_get_command +EXPORT_SYMBOL vmlinux 0xf536d22e acpi_set_gpe_wake_mask +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf53fe628 bdev_read_only +EXPORT_SYMBOL vmlinux 0xf551c5c6 genl_notify +EXPORT_SYMBOL vmlinux 0xf5667ced bio_alloc_pages +EXPORT_SYMBOL vmlinux 0xf590c9ee tty_free_termios +EXPORT_SYMBOL vmlinux 0xf5b10e67 acpi_install_global_event_handler +EXPORT_SYMBOL vmlinux 0xf5c05914 generic_segment_checks +EXPORT_SYMBOL vmlinux 0xf5da44d5 sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0xf5eb86ea blk_verify_command +EXPORT_SYMBOL vmlinux 0xf6388c56 sysctl_ip_default_ttl +EXPORT_SYMBOL vmlinux 0xf6423c06 filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0xf644ed4a mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0xf6548e5e inet_frags_exit_net +EXPORT_SYMBOL vmlinux 0xf6559fd3 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf6860679 pci_scan_slot +EXPORT_SYMBOL vmlinux 0xf68687be __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xf68e0716 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0xf6924e1e blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0xf6b37196 phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0xf6bb4729 color_table +EXPORT_SYMBOL vmlinux 0xf6c017f2 ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0xf6c2daf0 tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0xf6c99acc neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0xf6d32757 netif_device_detach +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6f2c7f1 simple_fill_super +EXPORT_SYMBOL vmlinux 0xf7051717 blk_delay_queue +EXPORT_SYMBOL vmlinux 0xf718b2e8 bio_endio +EXPORT_SYMBOL vmlinux 0xf726d02f atomic64_add_unless_cx8 +EXPORT_SYMBOL vmlinux 0xf741c793 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xf745cb16 atomic64_sub_return_cx8 +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf764d8d5 __xfrm_init_state +EXPORT_SYMBOL vmlinux 0xf77966c8 iunique +EXPORT_SYMBOL vmlinux 0xf7952eef xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0xf7a9c5eb __sb_start_write +EXPORT_SYMBOL vmlinux 0xf7adc1b2 xfrm_garbage_collect +EXPORT_SYMBOL vmlinux 0xf7af2872 ip6_frag_init +EXPORT_SYMBOL vmlinux 0xf7d230a3 input_set_capability +EXPORT_SYMBOL vmlinux 0xf7e37635 __wait_on_bit +EXPORT_SYMBOL vmlinux 0xf7eab9b4 vga_tryget +EXPORT_SYMBOL vmlinux 0xf7f827d9 __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0xf7f8b199 pci_read_vpd +EXPORT_SYMBOL vmlinux 0xf7ff9aad devfreq_add_governor +EXPORT_SYMBOL vmlinux 0xf803fe39 bitmap_set +EXPORT_SYMBOL vmlinux 0xf81197d3 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf812f1f3 inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xf827cb83 free_reserved_area +EXPORT_SYMBOL vmlinux 0xf827fa77 bio_integrity_clone +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf8795f90 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0xf884ecfe ip_check_defrag +EXPORT_SYMBOL vmlinux 0xf88b6586 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0xf88e0ee2 acpi_get_table_header +EXPORT_SYMBOL vmlinux 0xf8a70ef4 mdiobus_register +EXPORT_SYMBOL vmlinux 0xf8b26dc8 __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xf8be778e tty_port_close_start +EXPORT_SYMBOL vmlinux 0xf8ecdae7 simple_link +EXPORT_SYMBOL vmlinux 0xf910c020 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0xf914c73b __dev_get_by_name +EXPORT_SYMBOL vmlinux 0xf9158d25 mb_cache_create +EXPORT_SYMBOL vmlinux 0xf91e7fbc try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xf91f4fb7 phy_find_first +EXPORT_SYMBOL vmlinux 0xf9324b1d pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0xf9348cbc xz_dec_run +EXPORT_SYMBOL vmlinux 0xf940a328 __next_cpu +EXPORT_SYMBOL vmlinux 0xf9461e5e gen_replace_estimator +EXPORT_SYMBOL vmlinux 0xf94d0316 bitmap_end_sync +EXPORT_SYMBOL vmlinux 0xf95812ef __put_cred +EXPORT_SYMBOL vmlinux 0xf97456ea _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xf991622b user_path_at +EXPORT_SYMBOL vmlinux 0xf99b5cf8 da903x_query_status +EXPORT_SYMBOL vmlinux 0xf99d7ce3 netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0xf99faf34 fd_install +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9a99899 scsi_mode_sense +EXPORT_SYMBOL vmlinux 0xf9c367e0 iov_pages +EXPORT_SYMBOL vmlinux 0xf9c678c1 bio_integrity_free +EXPORT_SYMBOL vmlinux 0xf9ca4ef6 pcie_port_service_register +EXPORT_SYMBOL vmlinux 0xf9dd1f10 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0xf9e73082 scnprintf +EXPORT_SYMBOL vmlinux 0xf9ec151e netdev_err +EXPORT_SYMBOL vmlinux 0xfa08bfba dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0xfa0dcfe3 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0xfa1c16c3 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0xfa290f66 ipmi_get_smi_info +EXPORT_SYMBOL vmlinux 0xfa30957c mempool_free +EXPORT_SYMBOL vmlinux 0xfa4e9755 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0xfa560471 set_create_files_as +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa5c4a36 inet_add_offload +EXPORT_SYMBOL vmlinux 0xfa692ecd jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0xfa735b06 mmc_free_host +EXPORT_SYMBOL vmlinux 0xfa7a7cc0 xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xfa7b061b dump_align +EXPORT_SYMBOL vmlinux 0xfa7f3156 wl12xx_get_platform_data +EXPORT_SYMBOL vmlinux 0xfa8fbf27 netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0xfaa4d8fa pnp_activate_dev +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfae67b1f cap_mmap_addr +EXPORT_SYMBOL vmlinux 0xfaf98462 bitrev32 +EXPORT_SYMBOL vmlinux 0xfb0443fb acpi_get_parent +EXPORT_SYMBOL vmlinux 0xfb0cecfd vm_event_states +EXPORT_SYMBOL vmlinux 0xfb11c7ad seq_path +EXPORT_SYMBOL vmlinux 0xfb128cc8 blk_run_queue +EXPORT_SYMBOL vmlinux 0xfb130dc6 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0xfb1d5bb4 blk_start_request +EXPORT_SYMBOL vmlinux 0xfb36ef2c blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0xfb604593 md_unregister_thread +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb80c7a0 acpi_walk_namespace +EXPORT_SYMBOL vmlinux 0xfb94103e __clzdi2 +EXPORT_SYMBOL vmlinux 0xfba9b013 blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbca15c4 inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0xfbcde7f3 current_task +EXPORT_SYMBOL vmlinux 0xfbf49477 scsi_prep_return +EXPORT_SYMBOL vmlinux 0xfc02b7ad sysctl_tcp_wmem +EXPORT_SYMBOL vmlinux 0xfc1c48da tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0xfc2f8492 udp_proc_unregister +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc562165 acpi_run_osc +EXPORT_SYMBOL vmlinux 0xfc59ca0c cookie_check_timestamp +EXPORT_SYMBOL vmlinux 0xfc65459a kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0xfc7b3e59 eth_mac_addr +EXPORT_SYMBOL vmlinux 0xfc7d0483 __skb_checksum +EXPORT_SYMBOL vmlinux 0xfc872fd1 get_ibs_caps +EXPORT_SYMBOL vmlinux 0xfcaa04a0 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xfcac0d40 acpi_install_interface_handler +EXPORT_SYMBOL vmlinux 0xfcacae39 bio_unmap_user +EXPORT_SYMBOL vmlinux 0xfcb77cfd ipmi_free_recv_msg +EXPORT_SYMBOL vmlinux 0xfcc2a43c utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfcfa03ff fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0xfd0192da gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0xfd2b204f __blk_end_request_cur +EXPORT_SYMBOL vmlinux 0xfd485ec8 seq_printf +EXPORT_SYMBOL vmlinux 0xfd4e86e8 key_revoke +EXPORT_SYMBOL vmlinux 0xfd56b044 scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0xfd6293c2 boot_tvec_bases +EXPORT_SYMBOL vmlinux 0xfd99623a ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xfd9e1fb3 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0xfda0dbe8 ftrace_print_hex_seq +EXPORT_SYMBOL vmlinux 0xfdb4248c netpoll_parse_options +EXPORT_SYMBOL vmlinux 0xfdb9b629 ioread32be +EXPORT_SYMBOL vmlinux 0xfdbe0288 pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0xfdbe428d do_truncate +EXPORT_SYMBOL vmlinux 0xfdcd906a jbd2_journal_file_inode +EXPORT_SYMBOL vmlinux 0xfdd02fae swiotlb_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0xfdee7d42 _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0xfdf29c26 request_firmware_nowait +EXPORT_SYMBOL vmlinux 0xfdf4ef7a scsi_report_opcode +EXPORT_SYMBOL vmlinux 0xfdfc0b3b fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe047ce6 acpi_enter_sleep_state +EXPORT_SYMBOL vmlinux 0xfe0d8033 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0xfe20ea41 bdi_init +EXPORT_SYMBOL vmlinux 0xfe2dcbba agp_generic_type_to_mask_type +EXPORT_SYMBOL vmlinux 0xfe3b2901 cdrom_ioctl +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe682940 tty_port_tty_set +EXPORT_SYMBOL vmlinux 0xfe6a2bdb dquot_quota_off +EXPORT_SYMBOL vmlinux 0xfe7c4287 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0xfe954dda pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0xfe976280 follow_pfn +EXPORT_SYMBOL vmlinux 0xfe9ebbbb acpi_osi_is_win8 +EXPORT_SYMBOL vmlinux 0xfeb3e063 mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0xfec0113a __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0xfec0fd01 ata_port_printk +EXPORT_SYMBOL vmlinux 0xfec493d1 inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0xfed5db59 mb_cache_shrink +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfee0e3ae padata_alloc +EXPORT_SYMBOL vmlinux 0xfee51f30 devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0xfef96e23 __scsi_print_command +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff2fd5f1 dquot_quotactl_ops +EXPORT_SYMBOL vmlinux 0xff3231e0 blk_queue_start_tag +EXPORT_SYMBOL vmlinux 0xff3b303f sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0xff480992 dump_fpu +EXPORT_SYMBOL vmlinux 0xff51b8ec nobh_write_end +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff7559e4 ioport_resource +EXPORT_SYMBOL vmlinux 0xff814790 ping_prot +EXPORT_SYMBOL vmlinux 0xff9bddfb mdiobus_read +EXPORT_SYMBOL vmlinux 0xff9ca065 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0xffd5a395 default_wake_function +EXPORT_SYMBOL vmlinux 0xffe01742 blk_free_tags +EXPORT_SYMBOL vmlinux 0xfff02516 jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0xffff047e iov_iter_copy_from_user_atomic +EXPORT_SYMBOL_GPL arch/x86/crypto/aes-i586 0x7060bf0a crypto_aes_encrypt_x86 +EXPORT_SYMBOL_GPL arch/x86/crypto/aes-i586 0xe409b491 crypto_aes_decrypt_x86 +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x1cf47903 glue_ctr_crypt_final_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x266e0415 glue_ecb_crypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x3d846483 glue_ctr_crypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x41a9ae93 glue_cbc_encrypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0x8f02ac4d glue_xts_crypt_128bit_one +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xaa8e17ae glue_cbc_decrypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/glue_helper 0xe4844397 glue_xts_crypt_128bit +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-i586 0x28afd262 twofish_enc_blk +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-i586 0x6f068d90 twofish_dec_blk +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x00aaf935 kvm_disable_tdp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x02654080 kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x057e92dd kvm_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x07415e79 kvm_read_guest_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0af05c0c kvm_set_cr3 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0da670b7 kvm_release_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0e9bcb78 kvm_before_handle_nmi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1079a41e kvm_inject_pending_timer_irqs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x11d80965 gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x134d007e kvm_release_page_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x13e0c83c kvm_inject_realmode_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1457b5d5 kvm_requeue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1504dbab __kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x18e257ab __tracepoint_kvm_nested_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1a4342a5 __tracepoint_kvm_invlpga +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1cfe78d1 kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1d1b79bc kvm_queue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1ee977a8 kvm_write_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1f45758d kvm_get_cs_db_l_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x20de5193 kvm_disable_largepages +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x23904ddf kvm_find_cpuid_entry +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2433d6fd __tracepoint_kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2520bfc6 kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x27f674a5 kvm_queue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x280f7ac8 kvm_cpu_has_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x297e7872 kvm_get_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2c3f9d74 kvm_set_cr4 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2f636c31 kvm_spurious_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x317d676e kvm_resched +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x317f9e6b kvm_enable_efer_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x33a36c77 kvm_vcpu_uninit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3416681d kvm_vcpu_cache +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x37169873 kvm_arch_unregister_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3918469e kvm_apic_update_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3a6518f9 kvm_read_guest_page_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3de08404 kvm_set_shared_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3ee59a92 __tracepoint_kvm_skinit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4102628f kvm_read_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4471dc04 kvm_vcpu_block +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4632e7bb kvm_after_handle_nmi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x47fcbcad kvm_clear_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4a33584b kvm_apic_write_nodecode +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4ce62cb9 kvm_set_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x50f1674f kvm_fast_pio_out +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5110b21f kvm_vcpu_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5345d4ad kvm_get_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x54816b1f kvm_get_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5810f08b gfn_to_pfn_async +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5ad91ee4 kvm_mmu_reset_context +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5cdded96 kvm_emulate_wbinvd +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x669da1fd kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6ba65520 kvm_clear_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6d0bed9f kvm_read_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6d538189 kvm_read_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6e3d256e kvm_mmu_invlpg +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x74a1c291 load_pdptrs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x74b2a4e3 kvm_put_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7a637a49 kvm_rdpmc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7aa64803 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7fef98ce x86_emulate_instruction +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x831327da kvm_max_guest_tsc_khz +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x84ceb28c __tracepoint_kvm_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x85189bae handle_mmio_page_fault_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x877537b7 kvm_mmu_get_spte_hierarchy +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x882f141b gfn_to_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x896f8692 kvm_mmu_unprotect_page_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8ac4318a kvm_mmu_load +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8bb03e6e __tracepoint_kvm_write_tsc_offset +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8ce4f3ab kvm_enable_tdp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8da01274 kvm_get_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8df30234 kvm_get_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8e1cd06f kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8e3ebac2 kvm_mmu_unprotect_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9251d372 kvm_get_dirty_log +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x92963ff8 kvm_irq_has_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x945dd16e kvm_vcpu_kick +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9568dcb5 kvm_write_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9747c254 kvm_mmu_sync_roots +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x978b0ace kvm_emulate_hypercall +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x98be9a93 kvm_arch_has_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9a216313 kvm_define_shared_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa00a2dcc kvm_init_shadow_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa0ec3a0a gfn_to_hva_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa1ebba23 kvm_set_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa427b1ce kvm_lmsw +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa5642104 kvm_set_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa78a34c9 kvm_get_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa9838ddf kvm_write_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xaac7c868 __tracepoint_kvm_nested_intr_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xacf7f97c gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xafc65e4c kvm_set_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb0cf0205 gfn_to_hva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb284eed4 __tracepoint_kvm_nested_vmexit_inject +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb2a65cca __tracepoint_kvm_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb3a9308d mark_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb4d9ecf6 kvm_require_cpl +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb76a4f7e kvm_set_xcr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xba0e1bb6 kvm_is_linear_rip +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xba9ed435 kvm_mmu_set_mmio_spte_mask +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbc2b538e __tracepoint_kvm_nested_vmrun +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbe40858f kvm_inject_nmi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbf05ab76 __tracepoint_kvm_inj_virq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbf205f58 kvm_inject_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc3a6fe3a kvm_write_guest_virt_system +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc589de7d kvm_init_shadow_ept_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc5dd37c4 kvm_get_guest_memory_type +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc67898a5 kvm_mmu_unload +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc7666799 kvm_emulate_halt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcb67ce10 __tracepoint_kvm_nested_intercepts +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcd23452d gfn_to_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcfa8e30b kvm_mmu_flush_tlb +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd0459e67 kvm_has_tsc_control +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd0b2727a kvm_mmu_set_mask_ptes +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd0dd4479 kvm_set_cr0 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd4d427f5 kvm_apic_set_eoi_accelerated +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd5ebca2b fx_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd9957fb2 kvm_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdb1543d3 gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdc96113d kvm_arch_register_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xde3755cd kvm_task_switch +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdf6c5569 kvm_mmu_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe1f58ce8 kvm_lapic_set_eoi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe3ddeaec gfn_to_pfn_prot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe6ecb51d kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe805d5ec gfn_to_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe9790e86 __tracepoint_kvm_cr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xed0298ea kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xee4ddcf8 kvm_get_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeed0c32f kvm_emulate_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xefe07c0e kvm_requeue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf25cda4e kvm_is_visible_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf269f022 kvm_set_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf4863bee kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf551b13c kvm_set_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf6408c95 kvm_complete_insn_gp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfde8083f kvm_valid_efer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xff3b2a4d kvm_x86_ops +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x2734bf6c __ablk_encrypt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x4378575c ablk_exit +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x4a8c7aaa ablk_init +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x4c16641d ablk_init_common +EXPORT_SYMBOL_GPL crypto/ablk_helper 0x5ee6dcc7 ablk_decrypt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0xe68c1dcb ablk_encrypt +EXPORT_SYMBOL_GPL crypto/ablk_helper 0xec405913 ablk_set_key +EXPORT_SYMBOL_GPL crypto/af_alg 0x12eb8d8a af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0x3cc3900d af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x763d1267 af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0x7e7cde9c af_alg_wait_for_completion +EXPORT_SYMBOL_GPL crypto/af_alg 0x8de0ac91 af_alg_complete +EXPORT_SYMBOL_GPL crypto/af_alg 0x93957c0c af_alg_cmsg_send +EXPORT_SYMBOL_GPL crypto/af_alg 0xc6126eb0 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xce9d524a af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0xfd508351 af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x86770c54 async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x5177c39f async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0xfeae81c6 async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x5dd8437a async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xfea77194 async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x4604807d async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x464edb9a __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x907c6768 async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xb1a6de13 async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x37bd5103 async_xor +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xf9b17902 async_xor_val +EXPORT_SYMBOL_GPL crypto/authenc 0x587ef278 crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0xb2adfe89 blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x27278ca9 __cast5_encrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x4a2a3ca6 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0xb543ae09 cast5_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1291971c __cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1758daa9 cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1e2c961f __cast6_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x8f04034a __cast6_encrypt +EXPORT_SYMBOL_GPL crypto/cast_common 0x08aa6fb7 cast_s1 +EXPORT_SYMBOL_GPL crypto/cast_common 0x0c5fbf8a cast_s3 +EXPORT_SYMBOL_GPL crypto/cast_common 0xe39dd4b4 cast_s2 +EXPORT_SYMBOL_GPL crypto/cast_common 0xee83a4f3 cast_s4 +EXPORT_SYMBOL_GPL crypto/cryptd 0x03ceaa9a cryptd_alloc_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x09e49c21 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x12249dd3 cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x2ed773f9 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0x2f91547c cryptd_free_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x38b1bcea cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x3d13de14 cryptd_ablkcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x55c9e40f cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x919f6080 cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xd7e489cf cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/des_generic 0xcfd9a2c0 des_ekey +EXPORT_SYMBOL_GPL crypto/lrw 0x29f6a6a6 lrw_crypt +EXPORT_SYMBOL_GPL crypto/lrw 0x3864eb66 lrw_free_table +EXPORT_SYMBOL_GPL crypto/lrw 0xcd074900 lrw_init_table +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x5ddb33e9 __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x77b39cb4 __serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x8a1a99ad __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xbf6690b9 serpent_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0x6c3229bb __twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0xd35146c7 twofish_setkey +EXPORT_SYMBOL_GPL crypto/xts 0x75bc8206 xts_crypt +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0x1c8984c7 acpi_smbus_unregister_callback +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0x87bd07bd acpi_smbus_register_callback +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0xb9a141b0 acpi_smbus_read +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0xe1372311 acpi_smbus_write +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x235bffe8 ahci_platform_suspend +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x3bbf396a ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x3e7a0104 ahci_platform_resume_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x47c25bd0 ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x4c8a9f9f ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x52557d03 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x536b25e7 ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x8c42ccfa ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xb979ebcf ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xbf19336f ahci_platform_suspend_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xeb33a2b4 ahci_platform_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x0e3dfdbb ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x13337e3e ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x1739a131 ahci_shost_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x28a5c11c ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x2cf7c4a0 ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x2febb2b7 ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x3ee92125 ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x579b7363 ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5eacba1f ahci_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x694f923e ahci_thread_fn +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6e05c4e7 ahci_hw_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x7d772eda ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x88262748 ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8ba854ac ahci_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x996fa9ef ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x9c91ebba ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x9f72eecc ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa9be0b2a ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xab9e1345 ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xbb2cc637 ahci_sdev_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xcceb2732 ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd53a5acc ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xf36cf344 ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0xd9b7f862 __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x02ff9464 cfag12864b_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x0ecb2e5d cfag12864b_disable +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x305dc3c6 cfag12864b_isenabled +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x3389f926 cfag12864b_enable +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x9522a342 cfag12864b_getrate +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0xc48e9d95 cfag12864b_buffer +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x14102f23 ks0108_displaystate +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x48a70518 ks0108_writedata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x4f506333 ks0108_startline +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x6edae968 ks0108_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xbf4774db ks0108_writecontrol +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xedde6df2 ks0108_page +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xfee8ef7b ks0108_address +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x01ddc5fc bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0e78b429 bcma_core_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x187a00d1 bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x208c0c72 bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x21dc2c0b bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2311bbef __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x27d228c3 bcma_core_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2dbb4f09 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x50abd811 bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x6cb707e1 bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x759b5d1b bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x89b0196f bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb4a8aecf bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc2e5c43b bcma_find_core +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xcb1ec9a1 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xceb11dea bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd9f5c5ac bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe5e14eee bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe753b5dc bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe934036f bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf37e345c bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf38b71db bcma_core_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf892f3a5 bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x0f4ab88e btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x35a5626a btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x47a6c630 btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x7f89a30f btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x8a98042a btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x8c135cff btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x8f21a877 btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x8f4ea838 btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xb0430a8b btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xbb20f0bc btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/char/scx200_gpio 0x2764068c scx200_gpio_ops +EXPORT_SYMBOL_GPL drivers/dca/dca 0x01a33ab9 dca_unregister_notify +EXPORT_SYMBOL_GPL drivers/dca/dca 0x14851efc free_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x31a2c8df dca_get_tag +EXPORT_SYMBOL_GPL drivers/dca/dca 0x585187d0 dca3_get_tag +EXPORT_SYMBOL_GPL drivers/dca/dca 0x863838de register_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0xac34ecec dca_register_notify +EXPORT_SYMBOL_GPL drivers/dca/dca 0xb4697379 dca_add_requester +EXPORT_SYMBOL_GPL drivers/dca/dca 0xcbef67a6 unregister_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0xd42670fc alloc_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0xd8491159 dca_remove_requester +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x2eb08feb dw_dma_shutdown +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x38d84fec dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x43fcbc7f dw_dma_resume +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xd687e28d dw_dma_suspend +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xef5ba7e6 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x04355210 edac_mc_free +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x08e79b2e edac_device_handle_ce +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x2c3216d8 edac_mc_alloc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x2c9423ae edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x367fd2c1 edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x4071a507 edac_mc_del_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x4cfad237 edac_pci_reset_delay_period +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x52b30d1a edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x617de5e7 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x69259f22 edac_mem_types +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x70cd953e edac_device_handle_ue +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x746a2380 edac_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x755aa139 edac_pci_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x762b4e53 edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x8b702cb4 edac_device_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xa83da953 edac_device_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xae36f3c8 find_mci_by_dev +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xba40f47d edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc7ad1c2f edac_mc_add_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xcdeefceb edac_pci_handle_pe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xd113d41c edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xd27b22c6 edac_pci_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xd2957d66 edac_pci_handle_npe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xfc2002a9 edac_device_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x14878009 amd_report_gart_errors +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x1d34e996 pp_msgs +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x21626132 amd_register_ecc_decoder +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x737912b3 amd_unregister_ecc_decoder +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0xb30b7e56 amd_decode_mce +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xf4ade51f fw_card_release +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0x013fbdac cs5535_gpio_set +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0x93f8fe67 cs5535_gpio_set_irq +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0xc0bb404a cs5535_gpio_setup_event +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0xd3bd9300 cs5535_gpio_isset +EXPORT_SYMBOL_GPL drivers/gpio/gpio-cs5535 0xe07c0954 cs5535_gpio_clear +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x71cda701 bgpio_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0xc9057f2e bgpio_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x0a82c103 __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x5ebd2c65 __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x3a2e1265 drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x468d9725 drm_vm_open_locked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc07b3de9 drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x05876c69 i915_gpu_busy +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x08a7896d i915_gpu_raise +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x2b2c59ae i915_release_power_well +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x402468e9 i915_gpu_lower +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x500858b9 i915_read_mch_val +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x96108893 i915_request_power_well +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0xe7237b0b i915_gpu_turbo_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x26abde97 ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x675ed30d ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x6adf436b ttm_prime_fd_to_handle +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xbc5407bf ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xce36343e ttm_prime_handle_to_fd +EXPORT_SYMBOL_GPL drivers/hid/hid 0x026c2adb hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0bffc316 hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x142e47d2 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x147ac2ff hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x23ff4e49 hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x284dbc74 hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3b8214ba hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3f13dad1 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0x41e96a77 hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x425e2441 hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x429ffdd3 hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x45a5082b hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4906a967 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4b6fe887 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5b2bc448 hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5f58a304 hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x66a9890e hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6d70677a hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7c638687 hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8254c4e5 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8f74a766 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x90432752 hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x92284471 hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x92801673 hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9b22faee hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9fba56e8 hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb1bd1ed6 hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc67cf831 hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcb31ae18 hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd3ec828f hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd43a7c62 hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd91e842e hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xdc99ffa8 hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xdfd2fd71 hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf9eab584 hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x2f622ea1 roccat_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x8c4181ec roccat_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x934a237b roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x1e1bc931 roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x486aca32 roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x7d7a0012 roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xadd07941 roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xb315b725 roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xb59eba6d roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x351b7da7 sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x51f9e892 sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x698bc67c sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x6ad7f3f8 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x76e35896 sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xa108c938 sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xe2c479a4 sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xf2eeaf64 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x01fd453e usbhid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0xd1064493 hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x03b4a79e hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x04889beb hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x1c261dc8 hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2d47a66a hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5dc9af73 hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x97c49977 hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x9dc6501d hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xd4b54e2a hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xd6334ac3 hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xef5d0750 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xf1baeba9 hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xf81ba4e6 hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xfad99f36 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x00fe3d1c vmbus_driver_unregister +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x0a074405 vmbus_sendpacket_multipagebuffer +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x274fa44d vmbus_are_subchannels_present +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x358fafa5 vmbus_prep_negotiate_resp +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x46a417ca vmbus_proto_version +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x4ef01028 vmbus_establish_gpadl +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x575e6124 vmbus_set_sc_create_callback +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x611483c9 vmbus_get_outgoing_channel +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x8b0967f9 vmbus_open +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xa337402f vmbus_recvpacket_raw +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xd4c3e0cf vmbus_sendpacket_pagebuffer +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xde5c4c48 vmbus_close +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xe78c0007 __vmbus_driver_register +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xf45dd651 hyperv_mmio +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xf8939104 vmbus_teardown_gpadl +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x6fc0d5c3 adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xd432e877 adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xda5bfa52 adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x013e3acd pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x037de44a pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x0dd11247 pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x19493e64 pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x22355275 pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x3aabcf9f pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x47b68950 pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x9831c72c pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xb061cddc pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xb640dcdb pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xe3094b64 pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xe85fd25d pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5bb1170b i2c_dw_isr +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5e9e2f69 i2c_dw_enable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x67bf1c2b i2c_dw_func +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x850a9155 i2c_dw_init +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x98e44318 i2c_dw_read_comp_param +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xb7242818 i2c_dw_disable_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xbfc82474 i2c_dw_xfer +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xd00dd6ad i2c_dw_clear_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xe63975cf i2c_dw_disable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xf3a3923b i2c_dw_is_enabled +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-nforce2 0xee8161d4 nforce2_smbus +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x1f1748d5 i2c_del_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xe0a11004 i2c_add_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xa1ed9e06 i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xc1a7c791 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x41053307 ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x4a535f15 ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x4c2d3424 ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x5f4b9dc0 ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x5f794d95 ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x7be8bb1a ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x7ca5bc2d ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xe520632c ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xebe9cabf ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x277661ce adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x2f15fccc adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x3558333c adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x43cfdbe6 adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x5e867580 adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x622e19ff adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x68a522ff adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x6d843f01 adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x7e146ba6 adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x800e1175 adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xdf404315 adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xfb551516 adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x01c0d913 iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x06b46d14 iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x267c0508 iio_channel_release_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2a1fab3c iio_channel_stop_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2c020c00 iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2ea3995d iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x312c02c8 iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3fa3893b iio_update_demux +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x46420b32 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4a19aa6f iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4dbe0aa0 iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x50c5f9d9 iio_scan_mask_set +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5323e500 devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x557f6a98 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5ac23ca8 iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5b946ec0 iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x668e05d4 iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x69f04f72 iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x88cf4205 iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8a0994c4 devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8e2fe224 iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9778575f iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9f042d85 iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9f9a0c60 iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa645a770 devm_iio_device_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xca1899d3 devm_iio_trigger_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xcd7111be iio_scan_mask_query +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xdc12d7fe iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xec4aa928 iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf880a5b7 iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf8f96a7d iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xfb3490ef iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0xb1245331 input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x20164690 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x1842757b cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xa4284669 cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xabb71d26 cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x3ef5a113 cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xda29faba cyttsp_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xe638906b cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0xbfe14d00 cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0xd58e6da8 cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x330a9f0c wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x4204d052 wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x455f547a wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x5aebdb6c wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x5b8a7f73 wm9713_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x643f1c7b wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x65a58eff wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x8a9e62b7 wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x8bde908c wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x97207fed wm9712_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xcf382029 wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xd82d6317 wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x0fd4b20f ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x1b12ca64 ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x35ee9721 ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x58d5688d ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x58d6209b ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x76809916 ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x8d3d5ff5 ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xca497e25 ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xe11a83ef ipack_device_add +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0x23359aff unregister_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0xce1414b2 register_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x250e6251 gigaset_if_receive +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x26f9f54f gigaset_isdn_rcv_err +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x2e4a4427 gigaset_handle_modem_response +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x386c45eb gigaset_fill_inbuf +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x454aa44f gigaset_debuglevel +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x4d1fffbf gigaset_blockdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x5d99192c gigaset_start +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x688d37c4 gigaset_skb_rcvd +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x71c391e0 gigaset_stop +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x74275616 gigaset_initdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x7635e9bb gigaset_freecs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x85f56021 gigaset_initcs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x879058bc gigaset_add_event +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8eff32df gigaset_dbg_buffer +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x93e6d0e9 gigaset_freedriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xb178cbd0 gigaset_m10x_input +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xba0ba046 gigaset_m10x_send_skb +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xc8178b09 gigaset_skb_sent +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xf69c91c8 gigaset_shutdown +EXPORT_SYMBOL_GPL drivers/leds/dell-led 0x86fd1ffb dell_app_wmi_led_set +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x0111b75c lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x1d873042 lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x3516b0cd lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x53660856 lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x62bb7022 lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x83dd63c0 lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x8aac401c lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x92332277 lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x99106672 lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xa77be256 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xe0427667 lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x749e05f2 ledtrig_flash_ctrl +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x7903e46e ledtrig_torch_ctrl +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x10e06e97 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x155ea9c7 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1822fd23 __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1f2ba9ac __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x260d47cf __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x27831e89 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2dec45e0 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x347aebe1 __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x41c861f0 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x49856e5a __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x50e8c39f __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x574ba881 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x628eb712 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6770a402 __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x785cfc9f __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7b488fb1 __tracepoint_bcache_alloc_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x91f2af34 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa09069a3 __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa591c5d6 __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa6890b59 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xaf60c34b __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb950d2ae __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbd4b89b6 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xce0e6218 __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd40fba32 __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xdc5ea5a5 __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf58ce244 __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf5bcbdc7 __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfc1d5275 __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfcdf28c9 __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xffc308e4 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x25a43dde dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x49e2f92b dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6414fef8 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x97a0ef28 dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb3bcec28 dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb6d5c65d dm_deferred_set_add_work +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb70b342a dm_bio_prison_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xd1d349c5 dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xebd06eaf dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xfbdfcf71 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x22163b69 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x3909d3a8 dm_bufio_prefetch +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x594952bd dm_bufio_read +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x62a23587 dm_bufio_get_device_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9b2b253a dm_bufio_get +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa82b2066 dm_bufio_write_dirty_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xb6cdb92f dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc9a3422d dm_bufio_write_dirty_buffers_async +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd4bddf5c dm_bufio_issue_flush +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xdc69e37a dm_bufio_get_block_number +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe004ee92 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe6024e59 dm_bufio_release +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xebcc64a4 dm_bufio_get_block_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xeca7949e dm_bufio_client_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x259ad326 dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x2a9c2841 dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x3c864b04 dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x48241e3f dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x6a182e7a dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xa947f1ec dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xf7558117 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x3a54dc81 dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x714ea9c6 dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x090a7d87 dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x09472122 dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x1f6440f8 dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x336048a6 dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x38efaf5a dm_region_hash_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3a18389a dm_rh_update_states +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x57727a58 dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x634ed2f4 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7774620f dm_rh_stop_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7d053fc5 dm_rh_start_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa53387c7 dm_rh_flush +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa83588eb dm_rh_recovery_end +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa8813ad6 dm_rh_region_to_sector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xc66ce277 dm_rh_get_region_size +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xcab63c3d dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xdaa8ad61 dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xf37a3cfe dm_rh_get_region_key +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfd93482e dm_rh_recovery_in_flight +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0054f69d dm_tm_pre_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x01445176 dm_btree_find_highest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x11eab9fe dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x150c85ce dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1cac81ac dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2025e954 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2c112836 dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2e730a21 dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f40da68 dm_bm_set_read_write +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f74609d dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x32b5f546 dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x33c03da6 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x38c75c44 dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3ad0f55b dm_bm_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x40f7bd91 dm_tm_inc +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5e6aea80 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x619701dc dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x62c1b9ee dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x68fae9d2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x72289260 dm_block_manager_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7ade1071 dm_tm_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7b047bd9 dm_tm_create_non_blocking_clone +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x80c89b3d dm_tm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x832bf228 dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x858c8d94 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89f1e1cc dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x966a8838 dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9b4b5b29 dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9e798e22 dm_bm_set_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa0bbbb49 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa13861b4 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2507774 dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa87c5b4d dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaee02382 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb7bad799 dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb9a6ecf8 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xba5a4bc7 dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbcfdc290 dm_tm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbd50ebbb dm_btree_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbe0497aa dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xca40abd5 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd041d62b dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe44b4b9b dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xead1e727 dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xed1e1f96 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf475af48 dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/raid1 0xa98ac60e md_raid1_congested +EXPORT_SYMBOL_GPL drivers/md/raid10 0x908acdb0 md_raid10_congested +EXPORT_SYMBOL_GPL drivers/md/raid456 0x147815e2 md_raid5_congested +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x0c27b7d6 saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x26d2cc13 saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x410e6011 saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x70d8906d saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x7f669f01 saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x8d248c16 saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xa73ec97a saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xba2ca0db saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xd50d7ac8 saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xeedc4b66 saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x0ab7e9de saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x3e9ce97a saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x4074529d saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x6edb3b2a saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xa5110ccb saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xbb806e0e saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xc382ddd7 saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x07e5ea26 smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x1d6bb8ea smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x37d91069 smsendian_handle_tx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x3af2787b smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x4e6c8f5f sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x562ce53d smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x575ed579 sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x601518f2 sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x63222b29 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x67f78d91 smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x6efcee82 smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7c576277 smsendian_handle_message_header +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x802e3b29 smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x91322114 sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9c2225ed smscore_translate_msg +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9d48d408 smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xd45ef416 smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xd8f36a73 sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xdd1db93b smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xea60e52d smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xf1453770 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0xe36267bf cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0x90087011 tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0xc3f2b60c cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x00a4234e mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x08cb8018 mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1285840f mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1aea2759 mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1b12a9b2 mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x3af2ef2c mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x74979fd9 mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x82fedbb4 mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x83e055f9 mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x84a39fd4 mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x97f30188 mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xadbc1e0e mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xbc3bd1a8 mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xe3cf5dd3 mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xe8b595a7 mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xf98159c4 mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xfc799c39 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x15f355f1 saa7134_queryctrl +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x34de0b10 saa7134_s_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x5a52a9ab saa7134_g_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x60c63ef4 saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x6613c8a2 saa7134_s_std_internal +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x07421d5e ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x51de1a7a ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x657725a1 ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x669c0d46 ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7062adcd ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x802763bb ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x83129fa8 ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/radio/radio-isa 0xd34e5f00 radio_isa_remove +EXPORT_SYMBOL_GPL drivers/media/radio/radio-isa 0xe1e85418 radio_isa_match +EXPORT_SYMBOL_GPL drivers/media/radio/radio-isa 0xe800b60b radio_isa_probe +EXPORT_SYMBOL_GPL drivers/media/radio/radio-isa 0xf2be07d3 radio_isa_pnp_probe +EXPORT_SYMBOL_GPL drivers/media/radio/radio-isa 0xf6536220 radio_isa_pnp_remove +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x052e0cfd radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0xef0a6f63 radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x02578ae5 ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x049db9e2 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x051cd812 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x4583063d ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x45b80357 rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x522095bb rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x553efb91 rc_core_debug +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x67354a2a ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x836648f1 rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x853c7ec6 rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x8fdad675 rc_close +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x977069a7 ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xaad88a35 rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xbc3554de ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xdae807e4 rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xe358b682 rc_open +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xe6f0b5df rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xec70ee7a rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xef3f24f6 rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf2a445d5 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0x567b678d mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0x8acb0833 microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0x14d0796d mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0x3c152a05 r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0x448c5463 tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0xec9d3604 tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x38b6e44e tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0xffab2316 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x84476249 tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x5e34cece tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0xeea5ed20 tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x80a0a88e tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0xb327d8ae tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0xf39c3fb7 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x0768f675 is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x09ebcfe5 cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x1e92e59f cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x2064bb69 cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x2d6849a0 cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x38642d15 cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x3b7a3e79 cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6457f373 cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6dd62892 cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6ee43340 cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x89f46b73 cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x984e5b33 cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x990cc0bd cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xa8938484 cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xb019d408 cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xb17a4211 cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xb2f51303 cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf790830e cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xffad7636 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0x41323607 mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0x941a9ad9 mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x11c8eee0 em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x1bc70e2f em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x26958f5f em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x306e45d0 em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x30d1b0d2 em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x3e5d3763 em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7c166bc2 em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x8af5aea3 em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x9b30b031 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd8fa5be4 em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd9bd8934 em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xec859b07 em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf6034c4e em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xfcf3149c em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x3955af1f tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x51e41829 tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xee25c0d8 tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xf75fc33e tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x01c483a9 v4l2_get_timestamp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x02089d29 v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x08f57a74 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x40ea9f90 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x50609a10 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x813f3de4 v4l2_find_nearest_format +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xbd3ae7cf v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xef0899e4 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x08982d59 v4l2_match_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x221d2fbc v4l2_enum_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x36e8756a v4l2_find_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x4103badb v4l2_print_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x53105839 v4l2_detect_cvt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6976cfe0 v4l2_valid_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6f344bb9 v4l2_calc_aspect_ratio +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x7eaf8e7a v4l2_detect_gtf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xb0891da2 v4l2_dv_timings_presets +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x33b7cc99 v4l2_int_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x908df381 v4l2_int_ioctl_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xa5228b24 v4l2_int_device_try_attach_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xdbfda013 v4l2_int_ioctl_0 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xf06b4662 v4l2_int_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x147fc2de v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x17eb0eee v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x184bedc3 v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x24797733 v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x279b8a36 v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x315743f4 v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x38ce9b43 v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4364eeff v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x57f56093 v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x59b26f5a v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9468397e v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x955ee53f v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xae06718d v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc219ea94 v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc9fb387e v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x08de9947 videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x0e5ab89a videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x10d27789 videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1b8052da videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1ba842c7 videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x23cd0a69 videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3abe0d5e videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x49feb454 videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x5f780ff9 videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6306010e videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x69b0bc21 videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6ad35294 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x739c4097 videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x776a32ca videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x8f491965 videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9703c8e3 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x994b9090 __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xbd63c6b5 videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xcb6751a1 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xd0f0d186 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe9bdd9f9 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf182d4f1 videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf5d578dd videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf6b5023e videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x15de6974 videobuf_dma_contig_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0xa6e9dc48 videobuf_to_dma_contig +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0xc6ecacb8 videobuf_queue_dma_contig_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x1da8282a videobuf_dma_init_kernel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x2eb81293 videobuf_dma_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x34a12e53 videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x3a4d3317 videobuf_dma_init_user +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x3d74db3e videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x6828fe97 videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x83537dc2 videobuf_dma_init_overlay +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x9b40d3cd videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xa825c75b videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xf9973d4f videobuf_dma_map +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x18c78da0 videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x355d531c videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x4120210a videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x03412ba2 vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x12f0b21e vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x13c3fb0e vb2_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x1e9cee9a vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x231f4d99 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2db68248 vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2db98f83 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x3279db36 vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x33321eea vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x39e81e2a vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x3c7627ec vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x3e7b86d2 vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x46b236ae vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x4773e25c vb2_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x52f2d6c0 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x554ec771 vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x6ebfcf0f vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x71587a26 vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x75a65680 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x7c2d271b vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x8e32de89 vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x8edf82da vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x938e0aa6 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x9df3ee6b vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb0876653 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb40791b1 vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xc61896bc vb2_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xce21ebca vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd20528b1 vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xe3b4be88 vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xeffd6208 vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xf3bfba80 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xf48c3dd6 vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xfa1549da vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0x964968b9 vb2_dma_contig_init_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xa9a6f863 vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xe57f0426 vb2_dma_contig_cleanup_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-sg 0x9273e5b5 vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x721ed3cb vb2_put_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0xd0f448ba vb2_get_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0xe08f8ac6 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0xf9b2e5df vb2_get_contig_userptr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-vmalloc 0xc2444edb vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1419ce15 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x19b9bd47 v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2b50a3c3 v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x459454a5 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x48909c4d v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4a1634fd v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x548f7360 v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5a77a1fd v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6294f10c v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x64a9f490 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6be78cc2 v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x792096ea v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x967e3e26 v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9cd293ee v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc8a50955 v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdc2c9410 v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdd5f0aab v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe1318824 v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe6ca762a v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe9c3b0d8 v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xea382378 v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xef199a74 v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xff244c76 v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x1ce31df4 i2o_dma_realloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x81c3875f i2o_dma_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x9c84d741 i2o_dma_map_sg +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xb0dfab92 i2o_pool_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xb20986be i2o_pool_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xb2443bd1 i2o_dma_map_single +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xb3812b54 i2o_dma_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xf964e05c i2o_sg_tablesize +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x462e5b8f pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xef5c372a pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xf4d24e3a pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x08395a84 kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x0e47a1d6 kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x14e53f0f kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x24dca629 kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x2ed45cd9 kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x2f4f0299 kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x4fc15898 kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x51af4e2a kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x1253a8d2 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x399fc6f8 lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xe0718f91 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x0bc14d44 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x2ca1c350 lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x46574663 lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xabcf4d60 lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xbafc1486 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xea7e750a lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xfae5c98e lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x1bf5a6ee mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x3ddb2b60 mc13xxx_common_cleanup +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x494018a6 mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x5b4fedce mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x60832a0c mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xeed802cf mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x236103b2 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x4c816d21 pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x79827b85 pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x8107be61 pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x92fe31f6 pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x95a04f4e pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x9c8c8f61 pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xaadb7591 pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xabd96fd3 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xd5f9ea6a pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xef526211 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x0cfc377f pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xe465a607 pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x3fc4a980 pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x657ebf62 pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xa87a58ad pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xb2da0222 pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xfcac21f8 pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x01a33234 retu_write +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x4fca3918 retu_read +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x0471811b rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x048a38e6 rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x0be52581 rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x1715897c rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x1a84217b rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x21521572 rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x263e6d40 rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x2ba44163 rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x6ab260ca rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x76955eb1 rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x81f09290 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x963a4cf5 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xa737d9e1 rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xb61e1702 rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xb7305c03 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xba8478cc rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xc496de44 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xcbd22b35 rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xce334420 rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xddcc4fe6 rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xdfd59990 rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x09ca644b si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x152fde6b si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x19cfca85 si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x24acf483 si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x34b81776 si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3776b23b si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x40ec8a4c si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x420dbdfd si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x46de1872 si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x47cd01a1 si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4d0f74ff devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x55b4d267 si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5f09204f si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x61bdb538 si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6f430ceb si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x77d5bfeb si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7b8c203d si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x82d6acaa si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8f4e4d25 si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9120dec6 si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9ccc744f si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9f9c953e si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa2476c5c si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb59f2e1a si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xbf14a5a2 si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc2edfdd4 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd3c6c38b si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd7461970 si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe451d3ac si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xed88cf15 si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfc348ef8 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfc7ca1b6 si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfdc3c2c5 si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfdce3f13 si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x243236fe sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x331effa2 sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x9c09d04b sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xb9ab2968 sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xec0554e1 sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x0df25ee7 tps65217_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x676d1a5e tps65217_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x6cc2727c tps65217_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xb8150bbc tps65217_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0xe69c0b88 ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x1ec878b9 cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x57ba2200 cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x6803fe9a cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xd5a80384 cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x27cb133b eeprom_93cx6_multiread +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x63d2ff63 eeprom_93cx6_wren +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x822222db eeprom_93cx6_write +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x98bb5a22 eeprom_93cx6_read +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x2917584d enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x853ed012 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x860b874e enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xb1360208 enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xbb1581d9 enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xfc0ba27d enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xfc1141ff enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x228b5381 lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x233735e3 lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x6231d074 lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x62f6e372 lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x65e0cfe2 lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x852890ec lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xa4abb1a9 lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xd1a714c2 lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x2bd7762f mei_irq_read_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x2d35c5e6 mei_cl_recv +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x4ef89516 mei_cl_set_drvdata +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x5c68faf0 mei_reset +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x68d98b0b mei_cancel_work +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x69663ca1 mei_stop +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x7e8e5877 mei_start +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x7ef11350 mei_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x844630f2 mei_cl_remove_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x9606db76 mei_restart +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x96d800af mei_cl_send +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x9dab9c51 mei_cl_disable_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xb2a46903 mei_irq_write_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xb4b540cf mei_cl_enable_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xb50e01f7 mei_cl_driver_unregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xc54eec7a mei_device_init +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xc93c059c mei_cl_register_event_cb +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xd73adc5d __mei_cl_driver_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xe280416c mei_cl_add_device +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xe421fdb1 mei_deregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xecebc5f1 mei_irq_compl_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xee64428d mei_cl_get_drvdata +EXPORT_SYMBOL_GPL drivers/misc/pti 0x19f09b98 pti_release_masterchannel +EXPORT_SYMBOL_GPL drivers/misc/pti 0x23bde487 pti_request_masterchannel +EXPORT_SYMBOL_GPL drivers/misc/pti 0x52a78e81 pti_writedata +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x9ed70955 st_register +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0xe908af7c st_unregister +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x0f6680ea vmci_qpair_produce_buf_ready +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x1152e318 vmci_qpair_get_produce_indexes +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x13aa5a5d vmci_datagram_create_handle +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x1872c7af vmci_qpair_produce_free_space +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x1a195863 vmci_context_get_priv_flags +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x2e30d970 vmci_qpair_dequeue +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x3ef56cd5 vmci_qpair_alloc +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x4b630dac vmci_get_context_id +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x4c498e60 vmci_qpair_peekv +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x4ea2ccbc vmci_qpair_peek +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x50a255c9 vmci_doorbell_create +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x612df9ae vmci_qpair_detach +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x677c36d0 vmci_is_context_owner +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x69ef87ff vmci_datagram_destroy_handle +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x6bfa603a vmci_qpair_dequev +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x6cc1a5f7 vmci_datagram_create_handle_priv +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x722d488a vmci_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x7d540b50 vmci_qpair_consume_free_space +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x8b8ad67a vmci_qpair_enqueue +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x9624c58c vmci_datagram_send +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x9973b9b2 vmci_qpair_consume_buf_ready +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x9d16164a vmci_send_datagram +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xbbcb4c48 vmci_qpair_enquev +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xccbb53d1 vmci_doorbell_notify +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xcf5ed7ef vmci_event_subscribe +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xdac94780 vmci_qpair_get_consume_indexes +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xe7e7c107 vmci_doorbell_destroy +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x0113f87d sdhci_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x152ad782 sdhci_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x1bc9b735 sdhci_enable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x31b4734c sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x42515dfa sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x44c47033 sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x4ebcce56 sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x56095b2a sdhci_disable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa714dc04 sdhci_send_command +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xecd42ffc sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xfe90fdf3 sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x316f8b06 sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x44b86f81 sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x6b68a2c3 sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xa1c18c7e sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xb21567aa sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xdebc035b sdhci_get_of_property +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xe1f82d00 sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x5408bd34 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x963fbd4a cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xa91698a2 cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x151208b5 cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x98b98ce3 cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xe6ebc733 cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x27456cd1 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x0848728c cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x5db30192 cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xae00aa82 cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0abbe7ce mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x15f01328 mount_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x189e54a5 mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x218864c3 mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2f450f63 mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x30e5eafe mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3909cb9e mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x460f6895 kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5129e698 mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x589ec75e mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x63bd36f8 put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7a2902c1 mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7a4e06d2 mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x83cfbf46 get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x880711cb mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8a99019a mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8ed955b9 get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9bd8606e mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa00552d9 register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa8d4ea1b mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xad1c41b1 __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xad685d41 mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xae62d226 mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb1bb2f12 unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb1d5241d __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb2fa0857 mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbd5ce8f3 mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbeaf1543 register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xcb2954b6 mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xcb2dd635 mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd21f3369 mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd427ee84 mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xdc4c730d mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xdcc65770 mtd_is_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe34a597e mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe8507f87 __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe9334da2 mtd_erase_callback +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xeb811f3a mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xeeeb2455 deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf0d11a0d mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfe42c671 mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x54bcc837 add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x956c594c register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xc87d4e7e deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xeb96c7b2 mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xf5f58caf del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0x4959a15e nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0xf518aa71 nand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/sm_common 0x3488a7c8 sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0x6fdcbfc9 onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0x85dcce08 onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x3e7e0083 ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5cfdd22d ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x605dc8a7 ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x62fd40f9 ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x7c27c0e9 ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x7efefd89 ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x8a2083cb ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x90f542b6 ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xa4d130e8 ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xbd31242f ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc22ebc7b ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xd043f3ca ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xd30d0581 ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xfb7fa839 ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x0436306e alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x4e10f830 c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x5a8d8a5e register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xa222af45 unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xc9c98479 c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xfec19f36 free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x072f7ec5 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x222c295a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2c16e41c close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x36adee37 can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x49cafdb8 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6c02dbf3 alloc_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x73e46111 can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x80d6afc7 can_led_event +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x89f690ef free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xa025fe5e safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xa4810589 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xafa4252c devm_can_led_init +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb346573b can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xd0d19bc7 can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xdc35f17b open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe8030835 can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xfff0bb6d alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x161e2f9c free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x46445827 unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x8bcf2afa register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xf9cc8227 alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x1ef87efe register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x5d35db81 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x94651837 unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xe87d596f alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x18116392 macb_ioctl +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x278c54fa macb_mii_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x5f5ffb21 macb_set_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x68a8409c macb_ethtool_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x7fe404ab macb_set_rx_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x80bd6745 macb_get_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x86773d22 macb_get_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x00f6a903 mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x010a8f82 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x011cd45c mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x016510ba mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0294fc4a mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x05ce6f36 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x07201bd6 mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0b252d8a mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x10d6efa5 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x16ee2002 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1f0087e3 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x21eeb409 mlx4_map_phys_fmr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x24287db3 mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x262179a2 mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x269f5d8a mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2dfb7d3f mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x32e32d17 mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3485da8c mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x37d7f244 mlx4_fmr_unmap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3949ff87 mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3cb0ca33 mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3d4207c9 mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3eb66d09 mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4815d244 mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4a74dc56 mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x52bf8ff3 mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5667f171 mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x593a0f38 mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5b2d2452 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5bff0e6f mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x62b25425 mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x649f6e3d mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6732d624 mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x686bf455 __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x68707409 mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x695f13a1 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6bc16b0a mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x71d93bf8 mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x73332415 mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x777a0d6d mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x79904ed1 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7c4fd79a mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x80784784 mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x810fcff1 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x81b8c76f mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x81bed724 mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x81e434aa mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x85905bb3 mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x85ce6dc9 mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x85f5d883 mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8bcf3d2d mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x91e32fd2 mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x93eb7de2 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9443e51f __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x96077b61 mlx4_fmr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9825bd92 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9a676a5a mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9b3a3e60 mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9c5c2760 mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9c7fa530 mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xadccf0ac mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xae469d6e mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xafd08691 mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb2a22f73 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb49eaa1d mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb8b615bc mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbad62924 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbb56e5c2 mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbbf26dac mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc0326bec __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc0e03632 mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc20250ee mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc27b0b54 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc3706dfa mlx4_fmr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc46e5c67 mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc9a967d6 mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcb2d4520 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd0e0ce6b mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd1ff8aab mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd2c04358 mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd3792de4 mlx4_fmr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd46bcbc5 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd49d4d59 mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd6f8b9a7 mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd7da2687 mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd93cd047 mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd96af9b7 mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdab2df4c mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdc4b209d mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe2b7e010 mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe414ba7f mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe4b37654 mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe9bc28cd mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeb4fba1b mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf39958e5 mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf4f4f1cb mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf513701c mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf5dbd219 mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfb7b0344 mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfe14d89d mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0bd6bb25 mlx5_core_destroy_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x29479f7e mlx5_core_create_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3bc67314 mlx5_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5e2fe627 mlx5_create_map_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x60791d12 mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7a1117e1 mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7b6e5c46 mlx5_core_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x858aae1d mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x937d4206 mlx5_core_xrcd_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x952f2b2f mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9f0a77c2 mlx5_core_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xad5f4cd0 mlx5_core_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd68ea000 mlx5_core_eq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd6c4ef56 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xddc44951 mlx5_destroy_unmap_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf443a93f mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfa5266bb mlx5_core_mad_ifc +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x11da43d5 macvlan_start_xmit +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x19ac5374 macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x3beeadcb macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xbe1c3ce5 macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xec569a8f macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvtap 0x57cb5d65 macvtap_get_socket +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xac25e5f1 usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xd3617ef3 usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xdc90a9a8 usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xe8bb33da usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x17e7b406 cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x591ad16a cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x87ff955a cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x8a44400f cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xb6909a17 cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xb6a36275 cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xcb4b680b cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xf988bd81 cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x2fa89f1a generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x80da5b2e rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x9d12ec33 rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xb15f5715 rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xb7dc1322 rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xbf929cee rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x0617e619 usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x065a5097 usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x18d71fae usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x1e304157 usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x2969f1af usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x2ae664c5 usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x2c9d0f1a usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3068392f usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3141d64e usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x31a72d3f usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x349a5f21 usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x39108887 usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3dec5adf usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x43211458 usbnet_get_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4dd3cad8 usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x54c5262b usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x5664b64b usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x575d5fc5 usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x624bbe38 usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x66acfda6 usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x683af37b usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x77bb640e usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x82d8eeb5 usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9171b733 usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x92915621 usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9a3d5cb3 usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb11447e9 usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb35db251 usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb3f32467 usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xd8ae9c15 usbnet_set_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xded0f17e usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe5b03da3 usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x0238c622 vxlan_get_rx_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x3404af4a vxlan_sock_release +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x6dcdb47a vxlan_xmit_skb +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x7d4b5517 vxlan_src_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x92b9c3d0 vxlan_sock_add +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x0347943e i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x0ba181a8 i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x1909ae54 i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x1e3646b5 i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x1fb89552 i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x27066e36 i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x36e7238e i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x3e88186b i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x66a37228 i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x7b4aa043 i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x8ba09207 i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xac5ee268 i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xbd3c6615 i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xd01df838 i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xdbacc0f5 i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe770f1e8 i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x399eb4b3 cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x47ca0427 cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x98abf90b cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0xa8b0c624 cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/ipw2x00/libipw 0x46ef6bf8 libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x16bd28e3 _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x31c8f224 il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x5be6a60e il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x89439610 il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xc36a9d93 il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x0beb9f93 iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x15463034 iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x16a14b16 iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1b4d0dd0 iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1c661d1d __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x215daec5 iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x21fe9067 iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x2420878d __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x27fa1f68 iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x378b8a3e iwl_nvm_check_version +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x3e0dc6e3 iwl_notification_wait_notify +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x3fc7bef6 iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x4fcac476 __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x58f3256c iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5d0a212e iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x6101306b iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x773ce4e7 __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x7b10ebd7 iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8072081b iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x84616ca6 iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8c5d5ab3 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8caceb62 iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xb939b1cc iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc3afc029 iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xcea0b361 iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xde6c5ff5 iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xe9e9b77d iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xfa0aeddd __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x00d60658 lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x10492f69 lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x1d834384 lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x36a249e5 __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x3c15e123 lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x4a5853f1 lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x936d7025 lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xa3600bf6 lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xb1919c7e lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xbadce146 lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xc1a1776e lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xcf2f832f lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xe1660b12 lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xe3350958 lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xee9c83c6 lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xfce2de86 lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x1184fa3a lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x4450c368 lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x74b986dc lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x92c183b9 lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xa5a90403 lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xc85e6899 lbtf_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xe7e2e463 lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xf7c079d6 lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xfbcb575a __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0x89cf6ecb if_usb_reset_device +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0xd81b9354 if_usb_prog_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x078602e3 mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x158a2f30 mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x4f8e8488 mwifiex_deauthenticate +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x583ec7e7 mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x7964432e mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x85040af9 mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x8b4e46d8 mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x8b7dbdd9 mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x8dc37a35 mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x9f6449ab mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xa3e5394e mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xaf0a2a1e mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xcdce6dd7 mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xeb02ab74 mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x08c3986a p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x16d8fb2c p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x21abb531 p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x5471fdc2 p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x95bb9e0f p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xd855f0d0 p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xe3de2df9 p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xe8fd7060 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xef52e4b4 p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x000819e5 rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x0acfb97c rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x109b6229 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x14b9c8a4 rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1527c474 rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x18d22e47 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1c8c2d63 rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x2142e739 rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x23a6ffe8 rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x28b9a13a rt2800_get_tkip_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x2d29979c rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3c9f3101 rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4eae5a2f rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4fe49635 rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x50e63e23 rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x5ec88356 rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x71b71642 rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7ce21dd6 rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8377bc43 rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x83786e8e rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8e73e387 rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x919ca169 rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x95e020e0 rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x961ae300 rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa62fd1f0 rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa71efe9f rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa83bb073 rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa91eca25 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xae4a4364 rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb4a24fc4 rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb8e8e393 rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xbcfd63f2 rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xda7e19b6 rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe216613a rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xeee38376 rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf1e5fb33 rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf320c3b6 rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xfbf6bc1e rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0e04fa4c rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x4a1ba218 rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x4b753f29 rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x52599861 rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5bc931cc rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x61091bcd rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x7dcb0677 rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x84878c33 rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x8e1cf764 rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xbfaf50b0 rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xda542f5b rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xf2b40b6c rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xf4e70a0b rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x009bb816 rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x0ca8dc01 rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x0f2078c0 rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x0f91062d rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x160713e6 rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x202c155a rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x22a032f2 rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2b6a328c rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2cbc99b5 rt2x00mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x484c872f rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4a5b3535 rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4b3437f9 rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5487a3b2 rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x58b61f0f rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5ec8799b rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5ef9cdfe rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x75888f58 rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x7c7986cf rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x82732478 rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8a380f88 rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8e3ca8e5 rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x90021723 rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x95896cf5 rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa1d69b9d rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa3b5e8bf rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb31b0c93 rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb7513b27 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xbb335295 rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xbc50c006 rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xbc549344 rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xbe5f4075 rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc4162908 rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc9e0b755 rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd48417bb rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd7ef1214 rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xdf0447d2 rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe1b10ae3 rt2x00mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xea130294 rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xec6b4085 rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xef849697 rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf137cec8 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf42fc783 rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xfcef068c rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xff1e9628 rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xff387db0 rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xffcb1151 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x4b90f7df rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x5b528845 rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x633db005 rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xa27583b2 rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xea954e72 rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x02a1381f rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x1a7cba6a rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x3c3626ef rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x65c536cc rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x04fbe7e8 rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x0b68a53c rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x1d74fc39 rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x24f6f721 rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x3b89d58a rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x44e51761 rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x494ae09b rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x51c82013 rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x6097cd21 rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x640b3681 rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x64284a0d rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x6b33e37b rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x8516ec8d rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xcbd18b23 rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xe1b06010 rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xf1707bcb rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x4d29c639 rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x65d81129 dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x9bd8bcfd dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa12f27a8 dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x0bf9996d rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x0d06f896 rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x0d1bbf48 rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x134da061 rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x2cca654d rtl8723_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x368b5489 rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x36b19d04 rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x3b0c2f57 rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x45f8a8c2 rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x49b2ac7e rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x5e8c8aaf rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6fee3a6c rtl8723_phy_set_sw_chnl_cmdarray +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7962e456 rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x853c8991 rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x8fe05437 rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xa1dc1736 rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xa380ef89 rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xa4a6e723 rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xa6f59cf6 rtl8723_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xaf4d6d94 rtl8723_phy_calculate_bit_shift +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xb4e1032f rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xb56b15ee rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xb62af5e9 rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xbfebcfa4 rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xc8249847 rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xdd3b0a8c rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xe3da996c rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xe46dd2da rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xfd56e5c0 rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x05952d02 rtl_dbgp_flag_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x17a6b224 rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x241dedc1 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x3817b6f2 rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x48a784f9 rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x4bacccb3 rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x613e9f2b rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x6c9cdda2 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x7c03a6ef rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x9569cc82 rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x976b4a76 rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xbc9fa7ea rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xbd27ef47 rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xc773da9e rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xcea98e7c rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xd2225d7f rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xdee965a2 rtl_attribute_group +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xe22495ba rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xe358e09c rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf8ff6add rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x1fe3df41 wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x7a74fd87 wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xec449f30 wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x05294fba wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0fce4d82 wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x144a7043 wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1f5c739a wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2a176c23 wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2ce92017 wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2e1d79d5 wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2ecf7107 wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x32d21b30 wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x332c1174 wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x376c8819 wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4747a821 wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4fb60f7e wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x53dff67d wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x549beef9 wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5528f114 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x55dcc514 wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6515b9c6 wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6d84f6ac wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6f59225f wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x76dacf27 wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7a3f04ba wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7a63e59a wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7bba6065 wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7dfafced wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7e45a5a8 wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8638b8bc wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x915ce222 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9592c7be wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9af52fca wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9ed4f511 wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa78e7abe wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xaa0e39c0 wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb4a659aa wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xbe635e62 wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc2f56e92 wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd1b4d88b wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe757a4df wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfb9a6a8a wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfc43f4de wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfda8fa6e wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xff8acea0 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xffedce8c wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x3b577068 nfc_mei_phy_disable +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x55a5cecc nfc_mei_phy_free +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x667f11be mei_phy_ops +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x8b49db2b nfc_mei_phy_alloc +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x8b4e7b3b nfc_mei_event_cb +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0xe82e19a5 nfc_mei_phy_enable +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x1ddae5e4 ntb_transport_create_queue +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x30934216 ntb_transport_max_size +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x32537aca ntb_transport_link_query +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x3d54dbfc ntb_transport_tx_enqueue +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x42454134 ntb_register_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x436098aa ntb_transport_link_down +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x77ae9ef1 ntb_register_client_dev +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x82e6c13d ntb_transport_qp_num +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0x9c992c8f ntb_transport_link_up +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xb4a32159 ntb_unregister_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xc270dc24 ntb_transport_free_queue +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xc37d9036 ntb_transport_rx_remove +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xd40e7a02 ntb_transport_rx_enqueue +EXPORT_SYMBOL_GPL drivers/ntb/ntb 0xfe897ddd ntb_unregister_client_dev +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x08f361a6 phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x08fdf187 phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x09f1a9d3 phy_init +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x170c4802 phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x43b7029d phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x54f2f297 devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x7402e1e5 __of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x77a00b22 devm_phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x902f4667 phy_power_on +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x94cddb96 devm_phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x9add069e phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xab5a445d phy_pm_runtime_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xacd6f002 phy_pm_runtime_allow +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xaeb8db0c __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xbd08ff99 devm_phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xbecd0976 phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xc1c9e72c of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xc75a2264 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xcc9b9bb1 devm_phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xdb5a2835 phy_exit +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xe1ba45a1 phy_power_off +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xe2dc35e8 phy_pm_runtime_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xea04955f of_phy_simple_xlate +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0x21777763 asus_wmi_register_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0xdd54624b asus_wmi_unregister_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_ips 0x46809fa9 ips_link_to_i915_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/mxm-wmi 0x232b5238 mxm_wmi_supported +EXPORT_SYMBOL_GPL drivers/platform/x86/mxm-wmi 0x61cdf799 mxm_wmi_call_mxds +EXPORT_SYMBOL_GPL drivers/platform/x86/mxm-wmi 0xe26032eb mxm_wmi_call_mxmx +EXPORT_SYMBOL_GPL drivers/platform/x86/thinkpad_acpi 0x706cdcef tpacpi_led_set +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x3ecf6cfc wmi_install_notify_handler +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x64ebe677 wmi_query_block +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xa9b7afd8 wmi_set_block +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xb5a6ebe2 wmi_remove_notify_handler +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xc5e3dddf wmi_get_event_data +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xc9d4d6d1 wmi_has_guid +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xe2426710 wmi_evaluate_method +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x191a0854 pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x9166de42 pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0xa4d2f676 pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x5a3639b8 mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x66c0e5cf mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xcd4cd8ef mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x0d30d5a3 wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x4f8175da wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x67bff2de wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x83745ea6 wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x85485c77 wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xb8784a09 wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0xcfd9779b wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1041b950 cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1b4a42d9 cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1c9e8c0e cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x218b0210 cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x21f67163 cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x25777809 cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x25a30e4c cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x27ed0e1d cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x30b0ea38 cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x32b07405 cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x32f5ac3d cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x38f9d2a2 cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3a5c4389 cxgbi_ddp_page_size_factor +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3b591acd cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3d9dadf6 cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3e5ebcfe cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4159a1b9 cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4b5531a8 cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5735a01d cxgbi_ddp_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x60ed98ef cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x66c50370 cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x68010369 cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x68effb2a cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6d453b9e cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6e3ded82 cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x75b6220f cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x761ec34a cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x778674ea cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x77a44e0d cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x77eaa706 cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x785cea9c cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x835b9cb9 cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8aa8672e cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8c2ba369 cxgbi_ddp_ppod_clear +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xad6d1bf4 cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xba76dae7 cxgbi_ddp_ppod_set +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc84b59f9 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcb8b7c44 cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xccfe9a51 cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcf377463 cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd269ce25 cxgbi_ddp_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd2cf03a0 cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe86b0723 cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xee23e8d8 cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf0200f80 cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf20b16b7 cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x143faa6c scsi_register_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x3e72aef9 scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x4c8c3e33 scsi_dh_detach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x593a36c2 scsi_dh_handler_exist +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x82222285 scsi_unregister_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xa09c0972 scsi_dh_activate +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xbc6f986d scsi_dh_set_params +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xf8763bbc scsi_dh_attach +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x015f326c fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x067f1a13 fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0fb51275 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1cea9e00 fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x374c1e1c fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x41dad4bf fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x4286fd41 fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x69890931 fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x78a4e6a9 fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x7e4a7c7c fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x82287458 fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x84432554 __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x84b3d915 fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x8b386bb1 fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x96c61aee fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xb88ff072 fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xbd15cce8 fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xdf4259c7 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xead8f5da fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x15d10a41 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x1d7688be iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x8a902369 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xc451771b iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xdec1bca6 iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xdfdaff7b iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x012de5b9 iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x06459a72 iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x08d3bdbc iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0ede6461 iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0f381048 iscsi_eh_target_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x133b74f8 iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x15b93548 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1aaf7ceb iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2c5aad38 iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2c8ca771 iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2ff7a157 iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x32a1f61e iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x37e4f92f __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3e58ca7e iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x47079e82 iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x521b59ff iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x56daf3a1 iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5d4ab936 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5fb6ef60 iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6219e4ba iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x74afca85 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x78e70059 iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8607aada iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x892c8456 iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8a4258a8 iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x96a9bb7d iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9f15d221 iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbc524b61 iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbcbb9182 iscsi_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbe3090db iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbf620628 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xca7d8c25 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd6431950 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdcf622b7 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe516d6bd iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe552dac3 __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe89b1880 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xea348174 iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xeabcd028 iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf0915258 iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf8818268 iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfb4d6ecb iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfcc8cd37 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfdf8ac72 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x0a902fa7 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x0ef7dbd8 iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x1273457f iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x1dcadebe iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x228c197a iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x3ab6055b iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x446ed998 iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x6bc7f5f0 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x7d951954 iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xa8db1643 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xb7f4df0c iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xbab5bbf8 iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xdadb700e iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xdb9dab0c iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe2d16243 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe5ad2700 iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xf046c37c iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0c67846a sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x12ea3ab6 sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1e68c430 sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2cabc001 sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2e156817 sas_change_queue_type +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x371e9b65 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3e956203 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x46511513 sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x490263fb sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4cb446aa sas_eh_bus_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5a4bf922 sas_domain_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5ad25f8c sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5cbacc3c sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5df3869b sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x605c1fb8 sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6bd46acc sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x76ebcd3d sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x812c7ab5 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x942cdca8 sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x9bf68848 sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa052ba1b sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xaff15888 sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbe0bf114 sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd869e87e sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xff094934 sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x513d9b5c srp_transfer_data +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x623874f7 srp_iu_get +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x718ae411 srp_target_free +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x8e20dd2f srp_iu_put +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xa0fd2cc4 srp_cmd_queue +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xf7ff3579 srp_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x111e3d66 scsi_tgt_alloc_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x1d14f04a scsi_tgt_cmd_to_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x91b7df29 scsi_tgt_tsk_mgmt_request +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xa41fd033 scsi_tgt_free_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xaa303ded scsi_host_get_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xb146282f scsi_host_put_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xc8b9a150 scsi_tgt_it_nexus_destroy +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xcaf5efce scsi_tgt_queue_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xe629c055 scsi_tgt_it_nexus_create +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0005190b iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x01c7d9a7 iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x03e12586 iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0a419c5f iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0cab12a5 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1577eea7 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x171a5fc8 iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1b76aa70 iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x27fe881a iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2b4f3e46 iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2d352f52 iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x34fe27ed iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4ac9d5c4 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4bbfdec4 iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x52fb1cc7 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x600c7783 iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6ac23018 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6c76722f iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x801de845 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x81a5de94 iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8484db62 iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x86911fb7 iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8717d4a6 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x92af9afc iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9deea08e iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa2d627e7 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa7aaf56e iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa9b0f664 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa9ced87d iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb1833d2b iscsi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb458db6b iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb5c76b9e iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xba4ca100 iscsi_is_flashnode_conn_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbc1caeb3 iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc859362c iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd3fdf70b iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe1910584 iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe75bc0d1 iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf3f158a8 iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfc6f0864 iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x4701c1a2 sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x550b716b sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x73ea5c9b sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xd59d41a6 sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x40f17856 srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x458aacf2 srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x51d0d338 srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x6c91b768 srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xb546c72d srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xee891cc0 srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x3c137cd6 ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x6e8da3bf ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xb2047032 ufshcd_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xbdbb4466 ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xdb56764c ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xdb941234 ufshcd_suspend +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x56362077 spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x7c464780 spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xd50dcf51 spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xd9af5eb8 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xe18534e1 spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x065b24b2 dw_spi_xfer_done +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x7daa4b35 dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x9e6900c9 dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xcbd235eb dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xfaf4c93b dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0x081f222f ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0ab8ae3c comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0ba38816 comedi_buf_memcpy_to +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0f72f4fe comedi_buf_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0f758e1b comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x115008c0 comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x12737846 comedi_buf_memcpy_from +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x178bb4c8 comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2446d541 comedi_pcmcia_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2c0f5fea comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3959645e comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3d4811e2 comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x419fa5b4 comedi_to_pcmcia_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x48fe81c8 comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4bdd9172 __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x511d5ae3 comedi_error +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x526520f8 comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x560b603a comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x58f2e8df comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5ead68a6 comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5f78d021 comedi_buf_get +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5fa3c950 comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6e8f597c comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7086ece0 comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x760d00d4 comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x781bacb6 comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x785627d7 comedi_pcmcia_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x812057d1 comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x91e59950 comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x92f85daa comedi_dev_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x960e111c comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x96633bd0 comedi_pcmcia_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9b195d44 comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa2d98dd3 comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa32cd138 comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb4cc23e5 comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb5b34caf comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb9b81260 comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe731947f comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe7ce11e5 comedi_pcmcia_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe8e01145 comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe9a78c18 comedi_pcmcia_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xeb1fbd8b comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xeb3e45a8 comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xec5fdb37 comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xecb89bc7 comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfbbc5863 comedi_pcmcia_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfcfc3e52 comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfcfd2fcf comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x0a83d9fb subdev_8255_init_irq +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x4eb989b0 subdev_8255_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x537f5d9d subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0xbff582e3 addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x35b43e79 amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x61d34992 amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xa5c970fe amplc_dio200_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x29890668 cfc_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x8a33713c cfc_read_array_from_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0xf230a3f2 cfc_write_array_to_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0x8806e760 das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x0b8cccec mite_bytes_written_to_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x162b2169 mite_bytes_read_from_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x1aa0c35d mite_setup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x3b062778 mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x3f28b681 mite_unsetup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x4347827f mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x484c4bc4 mite_bytes_read_from_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x53bd75e5 mite_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x55eba641 mite_bytes_written_to_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x7aec8ec0 mite_setup2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x88aa6037 mite_get_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x961a9510 mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xa4a1f893 mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb53793b1 mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb7a52b0e mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xcacdc388 mite_dma_tcr +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd4ba2591 mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe620ba7f mite_sync_output_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xeca1ce14 mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xf1ed53cc mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xf5b3bff3 mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xf5b4de9f mite_sync_input_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc 0xb0f972fd labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x11e48f8f labpc_drain_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x134542f6 labpc_free_dma_chan +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x32ad8a1e labpc_setup_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x44524d7c labpc_handle_dma_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc_isadma 0x896b7675 labpc_init_dma_chan +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x18cc6e17 ni_tio_rinsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x28a5b845 ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x403689c0 ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x5bdee04e ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x9622ec9b ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xba6ac4ae ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xd6f63068 ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xdb78ed11 ni_tio_winsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x598fbfa0 ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x9322b310 ni_tio_acknowledge_and_confirm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x94466fbb ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xc2526f14 ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xcc201db0 ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xe39efe8e ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x17fcbbf6 comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x1da97deb comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x3458a47d comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x75da6660 comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xe41b86d3 comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xec22bbf4 comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xf1ab28f8 comedi_close +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x2158edf4 dwc2_hcd_init +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x2206b003 dwc2_handle_common_intr +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xb05a818c dwc2_set_all_params +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xdd401f34 dwc2_hcd_remove +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x1a1b5249 oslec_flush +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x2feda75b oslec_hpf_tx +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x3227a28e oslec_snapshot +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x7dc9dddd oslec_adaption_mode +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xb2c66001 oslec_create +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xc8b5a524 oslec_free +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xd370f679 oslec_update +EXPORT_SYMBOL_GPL drivers/staging/iio/addac/adt7316 0x34f97025 adt7316_pm_ops +EXPORT_SYMBOL_GPL drivers/staging/rts5139/rts5139 0xbd5a0e51 rts5139_usb_ids +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0e81c76d spk_serial_out +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x14f06fe7 spk_serial_in_nowait +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x1ae398c0 spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x2daaa393 spk_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x353cea36 spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x475e158a synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x5d727e16 synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x5f23a9c8 speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x691b6bab spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e146195 synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9a888082 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9e5a462b spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb48956f8 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc766ae09 synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xce56e8c5 speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd1b551a2 spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd293931f synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd46c355e spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xdd42e3d8 spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7e810f8 spk_serial_in +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe8020355 spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x09a07c3d usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x195dc23d usbip_start_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x1b1402d6 usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x51d10383 usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x6b682398 usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x7b514d7d dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x8f26e387 usbip_event_happened +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xa8735b25 usbip_event_add +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xbfb36861 sockfd_to_socket +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xd02753dc usbip_header_correct_endian +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xdb39eea1 usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe177e8e1 usbip_recv +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe1ea0586 usbip_dump_header +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xf093bfdb usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xf8b7b65b usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x585ebaac n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/uio/uio 0x7c32d361 uio_event_notify +EXPORT_SYMBOL_GPL drivers/uio/uio 0x904e53c1 uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xd63c2ef5 __uio_register_device +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x0c54d602 usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0xb3a5b117 usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x554619d8 ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x77215fd6 ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0022e9b4 usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x042a38ee usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x090e565c usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x22bdf1fb usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x265bbf2c usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x37251dce usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4e89a583 usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x556ce470 usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7c55cbfc usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x832136a1 usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x903e8fcc usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x94d7075a usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xa63ef692 usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xaa1315e4 usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xae4341d8 usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb0912515 usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb35b88e9 usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb938f74b usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xc4c7e265 config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd59fa67d usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xdee95d24 usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xdf129143 usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xe4f51dca usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xe93ecdbb usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf6f6a8e1 usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf72f35c0 usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf8862a00 usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfe42ba68 usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x8e27d6de gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x94e95ce6 gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x9b33207b gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xf1981607 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x28fbf002 usb_gadget_set_state +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x492db7b2 usb_gadget_map_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x6743300c udc_attach_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xa0c0989c usb_add_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xc29f585e usb_del_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xcbce8dfd usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xe302166c usb_gadget_probe_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xed09d7d4 usb_gadget_unmap_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xf7e67b67 usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x0a5230df fsg_common_set_nluns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x141fce2a fsg_common_remove_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x1ccb58f7 fsg_common_set_num_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x2d10b6a7 fsg_common_create_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x51707c29 fsg_common_run_thread +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x6acb4179 fsg_common_set_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x6f931874 fsg_common_remove_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x7e26d4a5 fsg_common_set_sysfs +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x983a4195 fsg_common_set_cdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x99023bfc fsg_common_put +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9a0221c7 fsg_common_free_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9dc025a5 fsg_common_free_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xa46e6443 fsg_common_get +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd3ae3b65 fsg_common_create_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd468f882 fsg_common_set_ops +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xe4d1591e fsg_config_from_params +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x49d74fd2 ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0xf863a97c ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x1a3bee83 usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x289176db usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x3d3dfc61 usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x465bd928 usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x7d64fd93 ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xa8edebec usb_ftdi_elan_edset_output +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xcbf0bf8a usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xd0b20150 usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xf4c817cf usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x411d3b5c musb_interrupt +EXPORT_SYMBOL_GPL drivers/usb/musb/tusb6010 0xdb65b9a8 tusb_get_revision +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x09e19f81 usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x47fd20a9 usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x5344a63b usb_gen_phy_init +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0xd8fe06f5 isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x08ef7881 samsung_usbphy_get_refclk_freq +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x973da70a samsung_usbphy_parse_dt +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x9b03e477 samsung_usbphy_cfg_sel +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xa98a5ab2 samsung_usbphy_rate_to_clksel_4x12 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xb2b06ab8 samsung_usbphy_set_type +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xc048f962 samsung_usbphy_rate_to_clksel_64xx +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xe25f1856 samsung_usbphy_set_isolation_4210 +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0x26c9fd92 usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x0290331d usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x0a77b7cf usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x0f919774 usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x1b9f172c usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2ed65cce usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2f1eea8a usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x43007349 usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x496e7937 usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x4c7a768e usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x6d05ab1d usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x71c7c88d usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x74880072 usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x911c184c usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x9390e361 usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xb46556b2 usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xbabbdfab usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc41d6415 usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xcf3dc0fb usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xd73fc32c usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xdcc6795b usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xecbdd09f usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x149600e6 usb_stor_transparent_scsi_command +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x1bc3edc2 usb_stor_sense_invalidCDB +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x1c4f677a usb_stor_probe1 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x330a5af4 usb_stor_reset_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x34b2d072 usb_stor_probe2 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x47b23c67 usb_stor_suspend +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x4cc6dd91 usb_stor_Bulk_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x50ff8083 usb_stor_ctrl_transfer +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x5f3ca66d usb_stor_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x79fef750 usb_stor_pre_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x8219fb78 usb_stor_bulk_transfer_sg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x8d67e22e usb_stor_CB_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x8da3a139 usb_stor_bulk_transfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x940e861d usb_stor_set_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x94dad882 usb_stor_Bulk_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xb7231ec9 usb_stor_clear_halt +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xc183900d usb_stor_disconnect +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xc6572a6b usb_stor_CB_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xce73dbaf usb_stor_bulk_srb +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xcf78306e usb_stor_access_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xdf3e7ef5 usb_stor_post_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xf30ac425 usb_stor_control_msg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xf7dbf853 fill_inquiry_response +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x07999055 wa_urb_dequeue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x27111094 __wa_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x4d784b81 rpipe_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x4dc057b9 wa_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x552b7733 wa_urb_enqueue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xa0b63120 rpipe_clear_feature_stalled +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xc543b60e wa_process_errored_transfers_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xcb55ad58 rpipe_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xf4654c3f wa_urb_enqueue_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x0bb6bf5e wusb_cluster_id_get +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x284ca610 wusbhc_giveback_urb +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x678bc4ab __wusb_dev_get_by_usb_dev +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x6b7b7117 wusbhc_handle_dn +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x74bdf53f wusbhc_reset_all +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7f0b7631 wusb_dev_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x85e6d6f7 wusbhc_mmcie_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x86b39dbb wusbhc_b_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xa363e71f wusbhc_rh_start_port_reset +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xac8d1e3c wusbhc_chid_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xb725d128 wusb_cluster_id_put +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xc1e77de6 wusbhc_rh_status_data +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xc369ba3c wusbhc_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xdcc55846 wusbhc_rh_control +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xdd2965af wusbhc_b_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf770a6b4 wusbd +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf8189980 wusbhc_mmcie_rm +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf87751a1 wusbhc_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xfe2e17d7 wusb_et_name +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x06c4d633 i1480_fw_upload +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x987bb7e9 i1480_rceb_check +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0xd098fbf6 i1480_cmd +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x439ee724 umc_driver_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x49a741e1 umc_bus_type +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x6f9da070 umc_match_pci_id +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x7ae6e1c9 umc_device_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x82bc68e3 __umc_driver_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x8db764b9 umc_controller_reset +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xd81fb51b umc_device_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xeb752206 umc_device_create +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0b8aad57 uwb_est_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x1481da53 uwb_rc_get_by_grandpa +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x1a24538b uwb_rc_put +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x265e6bc8 uwb_dev_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x2964b071 uwb_rsv_create +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x31e44d53 uwb_radio_stop +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x350d6364 uwb_rc_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x47c0eb2e uwb_rc_get_by_dev +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4d57ae3c uwb_rsv_type_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5bb45740 uwb_rc_pre_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5e4bc088 __uwb_addr_print +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x65a5b423 uwb_rsv_accept +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x6fd5acbb uwb_notifs_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7310d2aa uwb_rc_mac_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7dcfcd23 uwb_ie_next +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x840c8887 uwb_rsv_modify +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x89ff94e2 uwb_rc_dev_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8c50facc uwb_rc_cmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x98413234 uwb_rsv_state_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x9dfa21b6 uwb_rc_ie_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x9fdfb2c8 uwb_rsv_get_usable_mas +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa1955948 __uwb_rc_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa2438c1e uwb_rsv_destroy +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa3f52e9b uwb_rc_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa4ccdb23 uwb_rc_cmd_async +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa775a1ca uwb_notifs_deregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb3b766b3 uwb_rc_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb4c49aa0 uwb_rc_reset_all +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc50db6fe uwb_rc_neh_grok +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc510c5c8 uwb_rc_alloc +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc76022ce uwb_rc_post_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc9a6432e uwb_pal_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xce9e7ad7 uwb_rc_ie_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd74626fa uwb_pal_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe1716f06 uwb_est_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe2fe2cae uwb_dev_for_each +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe39b1603 uwb_pal_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe7a0906c uwb_est_find_size +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xec6430af uwb_rc_vcmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xedbe74c5 uwb_rc_neh_error +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xedd4e19d uwb_rsv_establish +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf6c10dba uwb_radio_start +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xff763e12 uwb_rsv_terminate +EXPORT_SYMBOL_GPL drivers/uwb/whci 0x666135ed whci_wait_for +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x23f0a58b vfio_group_get_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x67bf8cb4 vfio_add_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x8bdec2ad vfio_device_get_from_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xaf2c0a7f vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xcbc0c408 vfio_register_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xd8e523d6 vfio_del_group_dev +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x007959c7 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0d1cecdb vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x19aaf020 vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x21c3a58f vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x269f7a09 vhost_dev_reset_owner_prepare +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2c1169cd vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x31d3c902 vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x39cb5987 vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x45c2b736 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x533f9c86 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x534c51e4 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5411da29 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x58a96119 vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5b703a21 vhost_init_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x77ed9b04 vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x921a0349 vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x98515bf1 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa1f48649 vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa8f9c052 vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xaf8554cc vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xba03ff47 vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbeb94bbc vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc49b139d vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc8efa74a vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd497e5eb vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd54267d4 vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe3edb3f4 vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xee2c934a vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf056ab2f vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf3cb26b9 vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf427806e vhost_signal +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x1fdb6ca8 auok190x_common_remove +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x2a67e00d auok190x_send_command_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x2aaab0f4 auok190x_common_probe +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x2c0a6a41 auok190x_send_cmdargs_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x536cd373 auok190x_read_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x620b9fb3 auok190x_send_cmdargs_pixels +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x65802bba auok190x_send_command +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x9fb58f7d auok190x_send_cmdargs_pixels_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xb315128f auok190x_pm +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xe58725b4 auok190x_send_cmdargs +EXPORT_SYMBOL_GPL drivers/video/backlight/apple_bl 0x2c63e051 apple_bl_register +EXPORT_SYMBOL_GPL drivers/video/backlight/apple_bl 0xdab0f892 apple_bl_unregister +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x22c6a349 ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x5aef3961 ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x963d20db ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x98570160 ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xa53b58cc ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xbcb76c90 ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xf0a32e44 ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/fb_ddc 0xa0f408ac fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0x04b0528c fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0xbb5393a5 fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0x767cdc42 sis_malloc_new +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0xfef025fa sis_free_new +EXPORT_SYMBOL_GPL drivers/video/vermilion/vmlfb 0x016e6c20 vmlfb_unregister_subsys +EXPORT_SYMBOL_GPL drivers/video/vermilion/vmlfb 0x90c018c6 vmlfb_register_subsys +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x22a7af24 viafb_dma_copy_out_sg +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x292da7a2 viafb_irq_enable +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x30cc9311 viafb_request_dma +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x31469540 viafb_pm_unregister +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0x79e6190a viafb_irq_disable +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0xb4f863e6 viafb_pm_register +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0xc1e313b3 viafb_find_i2c_adapter +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0xcaefb732 viafb_release_dma +EXPORT_SYMBOL_GPL drivers/video/via/viafb 0xfff2dfd2 viafb_gpio_lookup +EXPORT_SYMBOL_GPL drivers/w1/wire 0x1b9c7f83 w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0x45d374de w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x71a0fea3 w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x7c2f2afb w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x969c4441 w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xb75688b1 w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xd6dba624 w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xe00a7e90 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xf091e0dc w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0xf88a5934 w1_next_pullup +EXPORT_SYMBOL_GPL drivers/xen/xen-privcmd 0x5453dd8d xen_privcmd_fops +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x030fddf0 dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x792b8252 dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x8f076e32 dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x9321df95 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc6dc8c2f dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xdc583c08 dlm_unlock +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x0238c3bc locks_start_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x17ce645d locks_end_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x1c4fe03d nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x560e84eb lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x71b11ae4 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x72e8cb72 nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x7b668efc locks_in_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xa14892c0 nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xa3208322 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xebab9511 nlmsvc_ops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x012804ce nfs_generic_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x01fb1749 nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x07af81d0 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0918a076 nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0c87cde5 nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0f72600e nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1016293e nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10e1794b nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1933e139 nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1944bece nfs_fs_mount_common +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1a4974cd nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1c298f79 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1ddc4d83 nfs_readhdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x20674983 nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x20693e5a nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2232d039 nfs_pageio_add_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x24e68837 nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x267a9e31 nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x271a5a80 nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x28131dfa nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x28ddba66 nfs_initiate_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x291b60e6 nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2b2d8040 nfs_put_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2d1268ab nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2e756522 nfs_initiate_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x30165d4a nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x33d890a0 nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x33efe1e2 nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3c54ab0e nfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ca31f35 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3dcdbed2 nfs_set_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f63b8a9 nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4063da2c nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4353c0a7 nfs_clone_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4379e37f nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x43b2cda7 nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4454a8ad nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x44907416 nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4747d078 nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x47bd52fc nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x48bf1a14 unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4a19e6a6 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4ac9d10e nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4c23510e nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4fe72c93 nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x52db210e nfs_writedata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x56de3f8b nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x57555a67 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5c5e03a2 nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5d8e2c23 nfs_file_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e1d863a nfs_sockaddr_match_ipaddr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5f7454df nfs_file_fsync_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x644371bd nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x689b7224 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6ab02c63 nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6c1d7077 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6c283139 nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6cadd8a5 nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6eb1a669 nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7aafe627 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c8ea985 nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7e4d0890 nfs_pageio_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7fd74432 nfs_readdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x82d44f37 nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x837eab54 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89bc5a64 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8d200984 nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9074aad2 nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9243e05b nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x947061fe nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x97b9f780 nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x97ff57d9 nfs_writehdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98a53434 nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9edb79df nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9fd2a8aa nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa08f2a88 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa4aa70e4 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa7828726 nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa7ab113d register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8d2d1ce nfs_callback_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaa45752e nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaaa14361 nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaade8069 nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xac64262f nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xacf95567 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb002d8af nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb060b643 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb606e716 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb6659984 nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb7939853 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb8219bf9 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb897469d nfs_file_splice_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb8cd40c5 nfs_fs_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb936cd7e nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc02f282f nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc2640894 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc2fadcb5 nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4ff1e9f nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc55720d5 nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5ef47d5 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc962acd4 nfs_remount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc984f855 nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc9a63c18 nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc9c2ff71 nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xca64b63e nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcbf2a627 nfs_fill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xccd96ed1 alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xce5b7122 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xce8b4f5f nfs_pageio_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd2513081 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd27ca739 nfs_setlease +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd35f912e put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd66d8733 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd7b862b8 nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdef61055 nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdf28163c nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe008d5f8 nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe17e0afe nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe2b5c23e nfs_try_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe349f5c6 nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe380d62e nfs_destroy_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe3e003ae nfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe55d80b9 nfs_file_splice_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe5e88b0b nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe8d4f0c2 nfs_generic_pagein +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe9ef4ed5 nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xea30f6d7 nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xed8d7beb nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xee053523 nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf10b1db4 nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf3bc402b nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf5c39f39 nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf87a41c5 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfaff937f nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb7ee006 nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc20ac6c nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xffcbd72e nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x08f21856 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x098f5d3a nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x11bda27c __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x170f3ed6 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x193724d3 pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x197a7d0b pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x205fa08a pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x22aad7ba nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x341a276a pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x45371337 pnfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x456474a1 nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x46fa0a56 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x48368ce7 nfs4_proc_getdevicelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x56e3ee4d pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5fe59c2d _pnfs_return_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6617c199 nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x665fa50e __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6923b8f7 nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6b24ab08 pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x72f5f549 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7b433f17 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x83873982 pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8b6922d7 pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8fa2cb8a nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x919f6624 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x967b8252 nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9e05ee1f nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa4e94947 pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa57215d2 nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa628aa4f nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xafc73254 nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb426359c nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb519a768 nfs4_insert_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbe32d295 nfs41_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc3938326 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd646c063 pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd775f532 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdb034914 pnfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdb813e84 __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe55753d6 pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed0394c4 pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf91b9b53 nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfad24fa6 nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x1d877823 nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xa5158f74 nfsacl_encode +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b15079b o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1cb231d0 mlog_not_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1d747ce3 o2hb_check_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x23137804 o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36418553 o2net_send_message +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x43506cc9 o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4e2ce2b7 o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x5b184400 o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x687f6251 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa82a8645 o2nm_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa9f5379a o2net_send_message_vec +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xae808bac o2net_register_handler +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xbaeb4700 o2hb_check_node_heartbeating_from_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc227cf7c o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc3679d7b o2hb_get_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd60f2c6c o2hb_check_local_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xea9801a6 o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf1a5611d o2net_unregister_handler_list +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x4507a3fb dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x60d68cf3 dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x68356e9f dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x6aeda0a0 dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xae9d6400 dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd7ba575e dlm_errmsg +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd8fa57a6 dlm_unregister_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xf430a0bc dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xfb86b96f dlm_errname +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x025e2d69 ocfs2_cluster_connect_agnostic +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x0562c415 ocfs2_cluster_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x16b2e575 ocfs2_dlm_unlock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x1a498494 ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5469ce31 ocfs2_dlm_lvb_valid +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x7083dbd5 ocfs2_dlm_dump_lksb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x89502fe7 ocfs2_cluster_connect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xb4bd060c ocfs2_dlm_lock_status +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbbc4ef97 ocfs2_stack_supports_plocks +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbfcfbaf5 ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xc2fab7b8 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xdc823ea4 ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe2bd47db ocfs2_dlm_lock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe40cffce ocfs2_stack_glue_set_max_proto_version +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe417d940 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL lib/bch 0x231d70fc encode_bch +EXPORT_SYMBOL_GPL lib/bch 0x6b770f49 decode_bch +EXPORT_SYMBOL_GPL lib/bch 0x9463ff71 init_bch +EXPORT_SYMBOL_GPL lib/bch 0xbdf512de free_bch +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x60aeda60 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x63997143 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x021957e1 raid6_datap_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x05513b71 raid6_call +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x0f8a2742 raid6_2data_recov +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x201d8ea3 encode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x29fa419f decode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x300d7e57 free_rs +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x6fbb3bd9 init_rs_non_canonical +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xabda1e2e decode_rs16 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xb050f329 init_rs +EXPORT_SYMBOL_GPL net/802/garp 0x36a6293d garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0x77941dd5 garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0x8436c16d garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0xbfb47780 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0xc2a7534f garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0xe8ee8b75 garp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x67900dcc mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0x743f1bdf mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x98c6976a mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0xd14c5597 mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0xe3a1fadd mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xf02639fc mrp_request_leave +EXPORT_SYMBOL_GPL net/802/stp 0xa9b09ea4 stp_proto_unregister +EXPORT_SYMBOL_GPL net/802/stp 0xaeb1ff35 stp_proto_register +EXPORT_SYMBOL_GPL net/9p/9pnet 0x9bb25fbb p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/9p/9pnet 0xcadcb555 p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/atm/atm 0xb09faf79 register_atmdevice_notifier +EXPORT_SYMBOL_GPL net/atm/atm 0xcfb6a3da unregister_atmdevice_notifier +EXPORT_SYMBOL_GPL net/ax25/ax25 0x30ca40b7 ax25_register_pid +EXPORT_SYMBOL_GPL net/ax25/ax25 0xac93ae05 ax25_bcast +EXPORT_SYMBOL_GPL net/ax25/ax25 0xaeb7451e ax25_defaddr +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x15d9ea1a bt_debugfs +EXPORT_SYMBOL_GPL net/dccp/dccp 0x019898c7 dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0x03b51b68 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0be635f3 dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1a12c37d dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1d99d49a dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x30fa7ca2 dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3c439195 dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4ba273d2 dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4ec35231 dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x51604f70 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5b594d17 dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5ea52872 dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x607a8b02 dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6cc568dc dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6fc7464e dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x74c2e025 dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x795271b0 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7efc73f3 dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8eb68a86 dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9bc3083c dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa1c4ceca dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa6abb9e1 dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa7f25314 dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa840272a dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0xaff3950d dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb251b94b dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbcdb7cdc dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbebc5802 dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcaf14804 dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd28e83cd dccp_insert_option_elapsed_time +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd7d4e4b6 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdc1f74a2 dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xddb6d9e0 dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe1c7f3e6 dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0xefd2e508 dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf209a48d dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf3017e21 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0xfce4756c dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x0e634dbe dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x1aaeb054 dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x29f701ff dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x57bef658 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xb2ccf5d3 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xeee94d70 dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x4c280720 unregister_switch_driver +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xb456bc49 register_switch_driver +EXPORT_SYMBOL_GPL net/ipv4/gre 0x0a93dbf6 gre_cisco_register +EXPORT_SYMBOL_GPL net/ipv4/gre 0x61c4a06a gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0x817113bb gre_cisco_unregister +EXPORT_SYMBOL_GPL net/ipv4/gre 0xd7c3657e gre_build_header +EXPORT_SYMBOL_GPL net/ipv4/gre 0xf477e38f gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x2ded983c inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x83eb9948 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xac45707f inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xbaf4aff6 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xdb35809f inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xeafd68be inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x007ff435 ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x43df648b ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x48994d24 ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x62a3815d ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x661feb08 ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x7124e69c ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x8f90ae22 ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x93c5c662 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x9d5f2d3a ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xceea5dda ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xd7c5af43 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe391a42e ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xeb302da6 ip_tunnel_delete_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xf06e677c ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x84d811ea arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0x2e50f3d8 ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_conntrack_ipv4 0x6d40a921 need_ipv4_conntrack +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x6b6c3d10 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_ipv4 0xf6731457 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_proto_gre 0x636b12c8 nf_nat_need_gre +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x16393c35 tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x723d773b tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x8bac01ed tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xa6e272dd tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xac53b0fd tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0x1647e1a3 xfrm4_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0xf3a1ab1a xfrm4_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x332613ef ip6_tnl_dst_check +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x77a118c0 ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x80d9cf32 ip6_tnl_dst_store +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x83034728 ip6_tnl_dst_reset +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xe0c83012 ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0x2435c317 ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x6eb85693 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_nat_ipv6 0xec462b96 nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0xa6c1e046 xfrm6_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0xcbed90fb xfrm6_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x1978322b l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x19a736d8 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x2711bd4a l2tp_tunnel_sock_lookup +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x2c72dfd3 l2tp_session_queue_purge +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x59a462ab l2tp_tunnel_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x66efdb20 l2tp_session_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x78284529 l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7a120e09 l2tp_session_find_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7dfbd25f l2tp_tunnel_closeall +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x87173582 l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x91dc5cec l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x9970872d __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa1526e4b l2tp_tunnel_sock_put +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa3c3bb5a l2tp_tunnel_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xea0bf167 l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xf221e0b0 l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xf62117ad l2tp_session_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x075d0ebd l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x13792275 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x16e4190b ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x1e547e9d ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x30244916 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3663a36d ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3ae99b15 ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4bf42798 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5d38f601 ieee80211_set_key_tx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x6ad3de5a ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x8b678b8b ieee80211_iterate_active_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xb5fd0228 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd454f4d1 ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xdb8888e2 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xea4674a6 ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf964d501 ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x1500be12 ip_set_nfnl_get +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x1e823285 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x338d324d ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x37720646 ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3fd2677b ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x438b4fd4 ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6344eaf6 ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x67411d08 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7997dcbe ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x8256026b ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x8d7c794d ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9af8974a ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa245639e ip_set_get_ip_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa2d623f3 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xcdf3c1e0 ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xdf9ad761 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xe11c1a4b ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xef13ebbe ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf6110a23 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x46487733 ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x584711b2 ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x921d672e unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xfbb6f916 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x002980ba __nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01f84db5 nf_conntrack_set_hashsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x025dab48 nf_ct_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x037b04cb nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x045072cd nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0be8793e nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0cab4603 nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0daeb968 nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x12da6628 nf_conntrack_l4proto_udp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x13976c3b nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x15b0f2a1 nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x17ca55af nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1802a3d6 nf_ct_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1fe7c391 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x20ec04aa nf_conntrack_l4proto_udp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x217c9d0c nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x226d38f7 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2889cbdd nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289c3714 nf_ct_alloc_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2af66e3a nf_connlabel_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3173ef7c __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3672864e nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x37386cac nf_conntrack_hash_rnd +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3efc481c seq_print_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3f5b1415 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3fe1e450 nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x41ba9fc0 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x45af4dcb nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x53bd0969 nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x53f5c9cf nf_ct_l3proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5a4b3ade nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5bc6dd46 nf_ct_l3proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5dfa58ed __nf_conntrack_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5f14e1eb nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5fc4a0d5 nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6170325b nf_connlabel_match +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62813e5c nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6387ed94 nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x699773a5 nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6ca07d2f nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6e224a7a need_conntrack +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x786efb75 nf_ct_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x78f9b710 nf_ct_l3proto_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7a889be4 nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7c4a2f94 nf_conntrack_l3proto_generic +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x801836e6 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8472a401 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x851b0955 nf_ct_l4proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ef1adee nf_ct_l4proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x90b2d697 nf_conntrack_l4proto_tcp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x90ff6c9f nf_ct_invert_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x91c3242d nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x920f974c nf_ct_iterate_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x954ac796 nf_ct_l3proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x98ce7a64 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9c2ab4ee nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9df766aa nf_ct_l3proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa118d8d3 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa284b415 nf_conntrack_l4proto_tcp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa4a23b0f nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa89c04b1 nf_conntrack_flush_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaa2cb8f4 nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab12a3b5 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab3d1f95 nf_ct_untracked_status_or +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xabdaa4bc __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad1bb027 nf_ct_free_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb1b813b2 nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb4ec9eab nf_ct_l3protos +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb602c57e nf_ct_l3proto_module_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb96b0e26 nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbbb261ac nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbbf758fd nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbc3612bd nfnetlink_parse_nat_setup_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc04d7f74 nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc28e5f15 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc49d3e92 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcb5e0681 nf_ct_l4proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd161e10e nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd57a4443 __nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xddc52a90 nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdeac9253 nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe75cd597 nf_nat_seq_adjust_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe7b94dba nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe82e3161 nf_ct_l4proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xebd65846 nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xecb7d6d8 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xecd8ff77 nf_ct_get_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xed99ed5c nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf4112cd4 nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf4850d59 nf_ct_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x308fe137 nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0x19f672d6 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0x6c3b337f nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x34ad56b6 set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x4e08c2c2 set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x51dd7db6 set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x71f6438e nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x8d2846f9 nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x92d39cc7 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x99e5caf7 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xa3d56d00 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xe1509e81 nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xf892402d nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0x261fd3d0 nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x5c3ff830 nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xb89e2df0 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xcd40e6c2 nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xddfa5a97 nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x45ad2a1b nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x74d7b40f nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x00ebd0b3 ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x122ca518 nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x18e190b5 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x543d8afb ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x72b8ca57 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x88a617e2 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xb9d85378 ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0xb0d5a4df nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0x5003a8c1 nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0d9bae4b nf_nat_l4proto_nlattr_to_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x131f636c nf_nat_l4proto_in_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x17e93922 nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x2e6b84aa nf_nat_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x499733bc nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x50170a2c __nf_nat_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x948ce0db nf_nat_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xaa794288 nf_nat_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xb3dedce9 nf_nat_l4proto_unique_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xe115d2d7 nf_nat_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x11a006b5 synproxy_check_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x3f39b4aa synproxy_tstamp_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x7a2d9c27 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x8841d39b synproxy_build_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x90298227 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb42e336a synproxy_options_size +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xef7db50c synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x01165597 nft_unregister_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x081819f9 nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0fda3c99 nft_validate_output_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x18f48ab0 nft_do_chain_pktinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3d49dab7 nft_validate_input_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x42831de5 nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x58e0222b nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x67180c41 nft_register_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x675f07db nft_unregister_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x816adf5a nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8c127ab2 nft_data_uninit +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x99fedfe3 nft_validate_data_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbc51577a nft_register_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc8e3449f nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xced22cbe nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x46ce7a05 nfnetlink_alloc_skb +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x76eb9d03 nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x88f76f0c nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xa77021a7 nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xbc08b8dc nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xbcdfdc2e nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xe8a6daeb nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x21f6bba6 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xacb9e4a8 nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_log 0xe9632093 nfulnl_log_packet +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x033d8f1d xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x1c401410 xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x40728a63 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x6241404a xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x67897654 xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x69c5ec24 xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x807d2b2c xt_recseq +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x82798c4d xt_hook_link +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x8beef998 xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xae3db898 xt_hook_unlink +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xaf9b7766 xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xb4c0b7c2 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbd5c8f61 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xdb2ca605 xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe420b3a8 xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x3a099777 xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0xf4e9cb5d xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x20669f23 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x25edc912 nci_spi_send +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x41918a87 nci_spi_read +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x08909e48 rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0x130c5dd3 rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0x1cca024e rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x2c5c5514 rds_message_add_rdma_dest_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3101936e rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x365c8258 rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0x3b4fc0fc rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x426b0daf rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0x4524980a rds_send_get_message +EXPORT_SYMBOL_GPL net/rds/rds 0x50cbe7b3 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x513d8abc rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0x52bf4978 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x58239951 rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0x5c329dd0 rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0x5f360f68 rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x73aac73d rds_message_populate_header +EXPORT_SYMBOL_GPL net/rds/rds 0x96b81296 rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x96fafe85 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x97deb61e rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0x9aa8b399 rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0xa27ab62d rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc43eab32 rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0xc874c75a rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0xcc931d93 rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0xdae9bfb6 rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xdbff8098 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0xe9d0f9ba rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0xef582d3a rds_page_copy_user +EXPORT_SYMBOL_GPL net/rds/rds 0xf04bd67b rds_inc_put +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0x477b7557 rxrpc_unregister_security +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0xfa36dd3f rxrpc_register_security +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x00c52ef5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x52ddef41 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x6fd09d74 gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x8d1a827e svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x94f576bf gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xb5dea7ef g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xf8b2ff6e g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0183d151 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x02271b2f rpc_lookup_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0305c9f0 svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x043aa9b3 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x045834e9 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x047f9ca9 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x07fcba1f rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x08de0d59 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x08deb241 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c4e67fc xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0d3606e8 xprt_set_retrans_timeout_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0da68712 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0ddcb204 rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0de8b645 svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f075bea xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f5e52c7 rpcauth_key_timeout_notify +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f668ba9 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x10538a94 rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1181c13f rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x12ef92a2 read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1478d59f svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x14abcecd rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x16071434 rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x17e8a13a rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x190073af xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x19730c83 svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x19a608fe svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1a1fe9bc rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1c1af8fe svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1ea18fa8 rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x20d884a0 unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x20e5454c sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x211558a7 svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x213c0e5c rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x219ca704 rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x227926ad svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x25162b19 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x25a8e8b2 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x27d90d1d rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2a4228f1 bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eb6b3a2 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eec63c9 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eef4c2c rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f8ebbe0 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x324fc7c6 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x332bb375 xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3339bd37 rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x33644a07 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34ee300a rpc_task_reset_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x374d22b0 xprt_set_retrans_timeout_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3989a1bf xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a3ffe7d auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3c58ef11 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3db51df1 svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3e1c2533 xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3e397276 rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x42e809b1 rpc_get_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x42f51cc9 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x43982bc0 auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x455489d4 xs_swapper +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x45695803 xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4604dc11 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x46a6fbaa rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4810436e svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x48544d50 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x48c5e222 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4ba362ba rpc_protocol +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d3d7c07 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4df503f1 rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4fadc24c xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x51ff2eab svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x520d9c1d xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53df224a svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5573734e xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x55851d4c xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x574542df rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5849c401 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5e350332 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5fb2014e rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60b8862e rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60e83357 xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x613c2fb2 rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6276d2e8 xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x641ebced xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x65c71639 rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x68609139 sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x688a3160 xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x68a19192 __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x69a6670f rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6acdb3f3 xdr_partial_copy_from_skb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6da94667 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6db2f9a3 svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6f279db4 xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6fa98bb7 cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x70d3d27f xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x713cd593 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7378ecd9 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x753e6f74 rpc_rmdir +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x76c6b084 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x78710a30 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x790da5d4 svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x791cb4dc svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7c135445 svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7d7657c7 xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80951b28 rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80fe102c cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x810c035e xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x820c87bc rpcauth_generic_bind_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x832ad347 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8371e533 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x88065772 xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8b98d94c rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8bbda9f9 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x901a781a rpcauth_cred_key_to_expire +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x95911a47 xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x95b41669 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x96c71783 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x96dcab3d rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98b75d64 rpcauth_list_flavors +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x99cc53c7 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d0124d0 svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9dbe6b2f svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9fbf720e xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa046d5bc svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa4bb6c1f xprt_lock_and_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa811a73f svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa168c3e xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xac666517 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xae82f329 rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xae8fff0f rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb0116611 rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb102aa45 rpc_lookup_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb11b8878 sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb3b3d316 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb87526d8 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb8e851fd rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb9077e2e rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb9c6ef65 xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xba609480 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb585952 cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbdd4c255 _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc0167350 svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc0ed6939 rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc175dbca rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc1893691 rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc28c951c rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc34b2009 sunrpc_cache_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3880471 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc6130f37 rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc71e4f46 rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8815491 xdr_skb_read_bits +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcc589650 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xccd5b101 rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcd3917e1 svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcd81d6b1 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcde21803 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce485f25 write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcf8caf5c svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd00e3cb9 rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd031550d rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd0476b22 svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd076557e svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd1d6328a svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd2fa2adf rpc_print_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd5504347 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd57d3ba1 rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd70c0be3 xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd8deda37 xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd955c21a sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdab98b0a svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdbacf577 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdcc51653 xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xde3b76c5 svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1ac2bb8 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe30133bd xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe432d8d7 xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe4c6d6da rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe9db9eea rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xea358352 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeaa39a7f rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeca84692 rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xee4094fb rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xef51308b rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf5458651 sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf72c4464 rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9a4716e rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9d1164c rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfaba4ec4 svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfb1d723e rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfbb737cf rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfc9f001d rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfdcc2b76 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe5f75e2 xdr_buf_read_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xff5c734e rpc_put_task_async +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x010d502d vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x08057c46 vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0c79d5ef vm_sockets_get_local_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0e6872ba vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x15c0c57c vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x3f98ac3e vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x42be7c6a vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x56214daa vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x6728693d vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x74e91915 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7f730c80 vsock_core_exit +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x960bc76a vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xaa401d9e vsock_core_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xac51e719 __vsock_create +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xcdb49c32 vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xdace9ead vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xedb93fed vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf593c40a vsock_pending_work +EXPORT_SYMBOL_GPL net/wimax/wimax 0x22130488 wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x4a65eeb4 wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0x52180cf2 wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0x689c1e27 wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0x68d50976 wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0x78bad1c3 wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0x81a9de10 wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x875a46e7 wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0xb0e7dc91 wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xb92b7b81 wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0xd1dd9226 wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xd1ddd588 wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0xda796a07 wimax_msg_send +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x22d9e773 cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x27d3f70b cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x73126a5d cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xa2c7e15f cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xa77fd688 cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xb8b5a97e cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xbbd1af23 cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xc23aeffb cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xdd617309 cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xe9d1eb70 cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xf2322b2c cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x00778770 xfrm_ealg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x056bb269 xfrm_ealg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0a575945 xfrm_count_pfkey_auth_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0b9e5852 xfrm_aead_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x28e23139 xfrm_probe_algs +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x74e1a843 xfrm_aalg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7a8ca627 xfrm_count_pfkey_enc_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7c30b8c7 xfrm_calg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x92dbc6c1 xfrm_aalg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xbc8b0f41 xfrm_calg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xce7a55c1 xfrm_ealg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xe122af95 xfrm_aalg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x0a6906d7 ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x0b95d84d ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x5be4186f ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xfd6a0459 ipcomp_destroy +EXPORT_SYMBOL_GPL sound/core/snd 0x1cc9cc4a snd_kctl_jack_report +EXPORT_SYMBOL_GPL sound/core/snd 0x3ca17104 __snd_printk +EXPORT_SYMBOL_GPL sound/core/snd 0x4791790e snd_kctl_jack_new +EXPORT_SYMBOL_GPL sound/core/snd 0x76c8834c snd_ctl_activate_id +EXPORT_SYMBOL_GPL sound/core/snd 0xa1afd211 snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/core/snd 0xefc0aa59 snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x151e1400 snd_compress_deregister +EXPORT_SYMBOL_GPL sound/core/snd-compress 0xbab9e7c3 snd_compress_new +EXPORT_SYMBOL_GPL sound/core/snd-compress 0xd6d909e7 snd_compress_register +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x5f933225 snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xb1249ea2 snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x007ff785 snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x060dc055 snd_ak4113_build +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x39c4caca snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x3d972347 snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x5c92a05c snd_ak4113_create +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x7676998b snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x05ba621e snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x07a07820 snd_hda_jack_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x07e44e89 is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0872fa4d snd_hda_bind_vol +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x08d34c89 snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x119c720a snd_hda_codec_resume_amp +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x11d88018 _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x129dd033 snd_hda_codec_amp_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1454f85c snd_hda_jack_detect_enable_callback +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x15abaacc snd_hda_codec_flush_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x189d060f snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1ac25eb6 snd_hda_gen_spec_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1b55f401 snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1c92d497 snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1d0f6c97 snd_hda_add_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1f765d77 snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1fac06fc snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1fc88c53 snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2064a7ae snd_hda_delete_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x21819a61 snd_hda_ch_mode_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x27be3c2a snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2ad9851e snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2b7aad8a snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2dafa707 snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2dfe1d9d snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2e6d3df7 snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2eb5d7cd snd_hda_is_supported_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2f60f871 snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x312305e4 snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x35b898df snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x375cacd5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3af6677d snd_hda_codec_update_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3d29e10d snd_hda_query_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3d2b3d41 snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3dfd6951 snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x42c3d651 snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x467cff61 snd_hda_check_board_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x48161466 snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x48f71040 snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4dab1f60 snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4df7e6f0 snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4e1a165c snd_hda_sequence_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x52fed425 snd_hda_jack_tbl_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x53d29f03 snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x553c36bd snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x578deefb __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5a9a478a snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5cfaad0f snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5d77e44c snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5fcdb767 snd_hda_jack_tbl_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x634fdbbb snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6556b3f4 snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x68933f2a snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6b965aea snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6ca32042 snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6cabac6f snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6d5f8595 snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6dc76eea snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6fa077fd snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x719c18b9 snd_hda_parse_generic_codec +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x71cf774c snd_hda_codec_resume_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7355a257 snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x749eefcd snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x74e90e91 snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x750223ba snd_hda_mixer_bind_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x77484488 snd_hda_bus_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7833e458 snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7cefcef8 snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7d009e0d snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7d45dc33 snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7e0a18ae snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7ec4e8e7 snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7fc6c223 snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x80bdb2fb snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x81768def snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x847616ed snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x86e8ccbc snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x877613ef snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x880cb18e hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8817b73b snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8890c0e1 snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x897b1b20 snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8ab824bf snd_hda_mixer_bind_ctls_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8d62fcdd snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8e4c6826 snd_hda_calc_stream_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8f72435c snd_hda_suspend +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x91a7d1dd snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x92234251 snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x945a2b83 snd_hda_get_sub_nodes +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9687585e snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9740df4f snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x989eb042 snd_hda_ch_mode_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9dac5043 __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9dd585c5 snd_hda_mixer_bind_ctls_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9e885000 snd_hda_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa21bcd47 snd_hda_mixer_bind_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa2827d76 snd_hda_get_jack_location +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa2e60994 snd_hda_parse_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa4c7022c snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa58f98d5 snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa5ca9b5a snd_hda_resume +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa69f40f5 snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa7343fcf snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa8257b62 snd_hda_bus_reboot_notify +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xab1f0003 snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xab2fc47f snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xac179c9d snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xae8db395 snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xafbacd3a snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb117ff01 query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb23b6d94 snd_hda_queue_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb28910cd snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb4c27c43 snd_hda_get_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb4e7cc1b snd_hda_codec_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb59a38df snd_hda_check_board_codec_sid_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb7db9c68 snd_hda_jack_detect_state +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb846cfab snd_hda_override_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbde653cf snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbf44de88 snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc08cd3c6 snd_hda_mixer_bind_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc166ab93 snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc652fd69 snd_hda_get_jack_connectivity +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc6cc7b7d snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc892f95f snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xca6b1ab9 snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcb301b6e snd_hda_get_jack_type +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcc9a9467 snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcd2dd3bb snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd5871c5c snd_hda_ch_mode_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd5bc7e3a snd_hda_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd5edbf2f snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xda03d6a9 snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xda4072c1 snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdc21e33b snd_hda_codec_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdf2c7902 snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdf3440aa snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe2e5b963 snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe39a1b0f snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe4378123 snd_hda_query_supported_pcm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe4445ebc snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe539ea09 snd_hda_codec_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe82f3a3e snd_hda_mixer_bind_ctls_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe88bf0ae snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe9d3c1e4 snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeb174742 snd_hda_bind_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeb3b7584 snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeb5ff55b snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeb99359a snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xec7aba9c snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf5f38a07 snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf6ed90f2 snd_hda_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf92190b8 snd_hda_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfa4129b1 snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfc8fb02f snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfe365579 snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xff9035b9 snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x2b0a2ab6 atmel_pcm_free +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0xcff0bfc3 atmel_pcm_mmap +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0xd39614e1 atmel_pcm_new +EXPORT_SYMBOL_GPL sound/soc/codecs/snd-soc-sn95031 0xc0709654 sn95031_jack_detection +EXPORT_SYMBOL_GPL sound/soc/mid-x86/snd-soc-sst-platform 0x25ce19ce sst_unregister_dsp +EXPORT_SYMBOL_GPL sound/soc/mid-x86/snd-soc-sst-platform 0x5303df59 sst_register_dsp +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0408f83b snd_soc_cache_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x06b0fd29 snd_soc_add_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x06dceffb snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x08754111 snd_soc_test_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x09d87afd snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0b270411 snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0b4a3193 snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0e6657dc snd_soc_unregister_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0e87fdce snd_soc_get_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0fda9c57 snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1047a84b snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x120cf052 snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x12e0ea01 snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x138052b0 snd_soc_dapm_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x15dc5b50 snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x163694e7 snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x17b610ef snd_soc_put_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1ac8263d snd_soc_cache_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1b418f58 snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1b7c28e1 snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1b861f9b snd_soc_free_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1c0d8642 snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1e166add snd_soc_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x260695df snd_soc_limit_volume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2976d0f6 snd_soc_info_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2d9f29af dapm_clock_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x31147c35 snd_soc_codec_writable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3246e0e7 snd_soc_cache_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x33cdab9b snd_soc_info_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x34ac936f snd_soc_cnew +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3698e06a snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x37c70e4e snd_soc_dpcm_be_set_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x384c08a8 snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3cdffe69 snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x40be9530 snd_soc_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x441206f0 snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x457d611e snd_soc_new_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x49d33a28 snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4af113b7 snd_soc_update_bits_locked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4bf02a6f snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4f3bba97 snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x50c08131 snd_soc_dapm_get_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x54733f79 snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5586da18 snd_soc_platform_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5760ab43 snd_soc_codec_volatile_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x598fde91 snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5c369242 snd_soc_dapm_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5d0d5650 snd_soc_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5dba7bdd snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x60178074 snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6058fc97 snd_soc_unregister_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x61f3954f snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6305ec8a snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6390e5a8 snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6595ad34 snd_soc_register_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x670d7eca snd_soc_get_dai_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6ad9a19c snd_soc_unregister_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6ba0d473 dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6f3f9d14 snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x73cf7fc4 snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x749e5965 snd_soc_resume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x75cbfed6 snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7bc62b94 snd_soc_pm_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7d757fa4 snd_soc_bytes_info +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x801ea920 snd_soc_jack_get_type +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x80d8f283 devm_snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8357ae04 snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8677a8f8 snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x86d187e4 snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x872856a2 snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x87ebec55 snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8a8a6db9 snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8c922ff0 snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8d716092 snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8f450799 snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x92db8f8c snd_soc_lookup_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9421f99a snd_soc_update_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x953cca53 snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9654d2f8 snd_soc_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x98b7dd50 snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x98fe9c97 snd_soc_put_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9a40e9fb snd_soc_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9ca6c1ed snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9f0ebd77 snd_soc_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9f2b6ab5 snd_soc_dapm_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9fb9ee17 devm_snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa018af9f snd_soc_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa0b1d597 snd_soc_unregister_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa42e2824 snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa515da54 snd_soc_poweroff +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa65a57d1 snd_soc_bytes_put +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa6708c3b soc_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xad7d2783 snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xae7892bb snd_soc_platform_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb10bcec3 snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb34c9e38 dapm_mark_io_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb366834c snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb40f23ef snd_soc_platform_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb4d2957c snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb5c7b9d4 snd_soc_codec_readable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb5f058a3 snd_soc_dapm_kcontrol_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb8d033ab snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbe725edf snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc197df14 snd_soc_codec_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc3dd4bd7 snd_soc_jack_report +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcaa2ae31 snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcada0e80 snd_soc_get_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcbed3965 snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd08f53e9 snd_soc_register_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd126d611 snd_soc_dapm_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd2361145 dapm_reg_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdf20ecca snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdf73f2b5 snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe2a7c7bd dapm_regulator_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe38339d2 snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe69a4092 snd_soc_bytes_get +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe93fa46b snd_soc_jack_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe9bf544a snd_soc_codec_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeaadcf6e snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb29a132 snd_soc_add_codec_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xebc11c39 snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xedd3319e snd_soc_add_card_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf0496b16 snd_soc_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf09bfcf0 snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf09f0978 snd_soc_dpcm_be_get_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf1823a1c snd_soc_codec_set_cache_io +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf1a172fd snd_soc_info_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf1ac7ecf snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf1e59987 snd_soc_debugfs_root +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf3fdd43c snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf4c61fb6 snd_soc_add_platform_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf84cb3dd snd_soc_dapm_put_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf990b20f snd_soc_remove_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfad7b6eb dapm_mark_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfdc3ff09 snd_soc_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfeaa64be snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0x118a3f6e i915_bdw_gpu_busy +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0x7381c75a i915_bdw_read_mch_val +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0x96d7119d i915_bdw_gpu_raise +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0xa17bc3aa i915_bdw_gpu_turbo_disable +EXPORT_SYMBOL_GPL ubuntu/i915/i915_bdw 0xde54f019 i915_bdw_gpu_lower +EXPORT_SYMBOL_GPL vmlinux 0x00000000 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x00000000 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x00000000 kern_mount_data +EXPORT_SYMBOL_GPL vmlinux 0x00000000 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x00000000 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x001ccba6 device_create +EXPORT_SYMBOL_GPL vmlinux 0x002c3d3b platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x0034f3b6 xen_has_pv_nic_devices +EXPORT_SYMBOL_GPL vmlinux 0x00632780 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x009304b6 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x009386b8 cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x009c3858 tcp_peer_is_proven +EXPORT_SYMBOL_GPL vmlinux 0x00b308be part_round_stats +EXPORT_SYMBOL_GPL vmlinux 0x00c4dc87 timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x00c61c53 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x00c83a1c adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x00dcb596 remove_irq +EXPORT_SYMBOL_GPL vmlinux 0x00ebcb5d ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0x01010c6d klist_add_before +EXPORT_SYMBOL_GPL vmlinux 0x011cf028 regulator_suspend_finish +EXPORT_SYMBOL_GPL vmlinux 0x013e6458 get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0x0170cb6c efivar_work +EXPORT_SYMBOL_GPL vmlinux 0x01848a8e local_apic_timer_c2_ok +EXPORT_SYMBOL_GPL vmlinux 0x018daee0 pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0x01bfbef9 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0x01c7b65d rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0x01d11a05 wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01f1fa55 list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0x021844eb spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x023c452a sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x025eec5b dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x026211e2 memory_failure_queue +EXPORT_SYMBOL_GPL vmlinux 0x0297e70c gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x02ac539e n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0x02b24324 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x02d072f8 crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x031eed7d __clocksource_updatefreq_scale +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x035f75e2 debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x039816ba __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0x03983a36 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0x03b7876b thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0x03bbf026 pinctrl_pm_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0x03deba1a tpm_gen_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x03e3686c ata_timing_cycle2mode +EXPORT_SYMBOL_GPL vmlinux 0x03ed120e usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x03f16bf5 ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0x03f3ab64 dma_buf_kunmap +EXPORT_SYMBOL_GPL vmlinux 0x04048c55 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x040de650 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x0412407f xen_swiotlb_sync_single_for_cpu +EXPORT_SYMBOL_GPL vmlinux 0x0444e4e2 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x0445210b percpu_ida_free +EXPORT_SYMBOL_GPL vmlinux 0x04486e88 rcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x045813ab nl_table +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x04691e1f init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x046f036c pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x047ec92a ping_seq_fops +EXPORT_SYMBOL_GPL vmlinux 0x047f59c8 rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x04924b2e fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0x04b4b190 regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0x04bf26af ioremap_page_range +EXPORT_SYMBOL_GPL vmlinux 0x04c3f2c1 gnttab_empty_grant_references +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04e36af2 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x04efa836 cpufreq_frequency_table_cpuinfo +EXPORT_SYMBOL_GPL vmlinux 0x04f4894f spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x0502a580 inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x050398ce pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0x052f0ef0 subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x052ffa45 regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x0532b057 generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0x054aff6e rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x0551f0ce tick_nohz_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x057e4aa6 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x058d00d2 pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0x0593633b crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x05bc0411 usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0x05d1b442 __efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x05deff9c i2c_new_probed_device +EXPORT_SYMBOL_GPL vmlinux 0x05f5317e spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x060d1064 set_memory_ro +EXPORT_SYMBOL_GPL vmlinux 0x0625ef0e debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x062f9370 scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0x062fc169 xen_hvm_resume_frames +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x06650da6 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0x06963c36 intel_msic_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x06caeec1 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0x06d549e6 pinctrl_free_gpio +EXPORT_SYMBOL_GPL vmlinux 0x06e99ed9 md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x06fba147 devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x071e45b4 efivar_entry_set +EXPORT_SYMBOL_GPL vmlinux 0x0731298c pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0x0733fd82 pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x0739dbf7 regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x075eada2 xen_find_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0x07621d6e ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x0762403c edac_put_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x076f4608 mmc_send_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0x078c0137 btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x07982438 usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x079a4c06 sk_unattached_filter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x079cebb7 clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07bb4c53 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x07c23aff iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0x07c5befc fuse_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0x07e5d1d4 mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x07f300c3 smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x07fc478e acpi_dev_resource_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x08238599 xenbus_frontend_closed +EXPORT_SYMBOL_GPL vmlinux 0x0870664c sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0x08b4c56c regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x0917e3f4 extcon_get_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x091e9fea ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x0940cb29 adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x09417c2c tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0x09437748 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x09469482 kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x094a3d7d fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0x0962d0e8 irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x096f6caf pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x09750cf5 acpi_dev_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x0995894a usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x0995baec srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0x09bc9193 netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0x09bd2f1f rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0x09ef6a13 init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0x09ff2f9f pci_cleanup_aer_uncorrect_error_status +EXPORT_SYMBOL_GPL vmlinux 0x0a4b2fcd usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x0a4e6432 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0x0a81733b sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0x0a8ba254 crypto_init_ahash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x0a8c916e reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x0a8ccfb8 iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0x0a9fd3c5 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x0aa4fb03 tpm_write +EXPORT_SYMBOL_GPL vmlinux 0x0aae6728 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0x0ab19ce1 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0x0abeb3bf ping_hash +EXPORT_SYMBOL_GPL vmlinux 0x0acfeac9 crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0x0ade4c61 crypto_rng_type +EXPORT_SYMBOL_GPL vmlinux 0x0af7be80 ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0x0afd4610 zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b10c6c8 driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x0b1a0154 tpm_open +EXPORT_SYMBOL_GPL vmlinux 0x0b1ea5a6 devres_get +EXPORT_SYMBOL_GPL vmlinux 0x0b260a71 queue_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x0b4ce7cc devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0x0b52e502 apei_resources_add +EXPORT_SYMBOL_GPL vmlinux 0x0b56d003 blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0x0b59390b __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0b92af3e tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0x0bae62b1 ktime_get_monotonic_offset +EXPORT_SYMBOL_GPL vmlinux 0x0bb12936 spi_unregister_master +EXPORT_SYMBOL_GPL vmlinux 0x0be4a73c acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x0bf09a85 crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x0bfa3a19 rcu_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x0c0c015e ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0x0c14e54d devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x0c2cdbf1 synchronize_sched +EXPORT_SYMBOL_GPL vmlinux 0x0c541f29 devm_usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x0c5ccfc8 fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0x0c60e3e2 sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0x0c805f93 clflush_cache_range +EXPORT_SYMBOL_GPL vmlinux 0x0c80e3fe efivar_init +EXPORT_SYMBOL_GPL vmlinux 0x0cae5b25 aead_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0x0cc1e40f crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x0ce51e06 __netpoll_free_async +EXPORT_SYMBOL_GPL vmlinux 0x0ceb4e06 spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x0d089e32 crypto_larval_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0d238983 inet6_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x0d281d53 led_classdev_register +EXPORT_SYMBOL_GPL vmlinux 0x0d2b4560 percpu_ida_for_each_free +EXPORT_SYMBOL_GPL vmlinux 0x0d2fd94d inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x0d51208a crypto_attr_alg2 +EXPORT_SYMBOL_GPL vmlinux 0x0d60c263 wait_for_tpm_stat +EXPORT_SYMBOL_GPL vmlinux 0x0d6ffa3f usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0x0d76e750 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0x0d846e8b __get_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x0d9377f8 regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0db2537b relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x0db2d244 xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0x0dd8ba8a rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0e13cb4d apei_resources_release +EXPORT_SYMBOL_GPL vmlinux 0x0e89c8ac alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x0ea08d04 subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x0ed9302e percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL vmlinux 0x0f081678 regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x0f1a09f3 relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0x0f2d7d87 mce_unregister_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0x0f3027c6 dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0x0f751aea input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0x0f7c5357 xenbus_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x0f7e6023 usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0x0f9813fc device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x0f9eb820 __module_address +EXPORT_SYMBOL_GPL vmlinux 0x0fa138de xen_hvm_need_lapic +EXPORT_SYMBOL_GPL vmlinux 0x0fa22cc1 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x0fbb273a dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0x0fbb528c sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x0fc01e9f static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x0fcc1969 copy_from_user_nmi +EXPORT_SYMBOL_GPL vmlinux 0x0fd60a7f crypto_init_spawn2 +EXPORT_SYMBOL_GPL vmlinux 0x0fdfd63e btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x0fe2d570 xenbus_directory +EXPORT_SYMBOL_GPL vmlinux 0x0feb64ce debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x1024a776 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x10409210 xen_remap_domain_mfn_range +EXPORT_SYMBOL_GPL vmlinux 0x1059d04e shash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0x1063558e i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x107e068d user_read +EXPORT_SYMBOL_GPL vmlinux 0x10aba779 bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0x10c2fa88 rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x10e7859f regmap_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x10f915dc __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x110106c1 cper_severity_to_aer +EXPORT_SYMBOL_GPL vmlinux 0x1164348b ata_eh_qc_retry +EXPORT_SYMBOL_GPL vmlinux 0x1172ce54 rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0x117c7305 hwpoison_filter_dev_major +EXPORT_SYMBOL_GPL vmlinux 0x1191f374 __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0x11c6aa27 platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0x11f21c69 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0x11f59b39 wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0x12012541 rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x12030fa6 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0x120d9f50 user_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x121ed3f3 add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0x1230ea05 efivars_kobject +EXPORT_SYMBOL_GPL vmlinux 0x1246a211 fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0x124f2056 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x129dc995 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0x12a17a99 pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0x12aeeac0 platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0x12af17ab sock_update_netprioidx +EXPORT_SYMBOL_GPL vmlinux 0x12b44548 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0x12bcf239 tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0x12e7479f usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x12fb5ac2 pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0x130bd388 check_tsc_disabled +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x13295fbf rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x132fc939 cper_estatus_print +EXPORT_SYMBOL_GPL vmlinux 0x1344d3ee crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0x13459ad2 screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0x1349b59c sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0x135383f6 crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0x1354ae6f task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x135922a6 sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x138aff76 gnttab_init +EXPORT_SYMBOL_GPL vmlinux 0x13921363 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x13ad647f scatterwalk_bytes_sglen +EXPORT_SYMBOL_GPL vmlinux 0x13b89dee pinctrl_request_gpio +EXPORT_SYMBOL_GPL vmlinux 0x13bfee20 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0x13cac8cb usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0x13cf6e7b power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0x13d77394 tps65912_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x13f3e3fb klist_init +EXPORT_SYMBOL_GPL vmlinux 0x1423c8a4 get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0x142aecab cgroup_taskset_first +EXPORT_SYMBOL_GPL vmlinux 0x145784d1 gdt_page +EXPORT_SYMBOL_GPL vmlinux 0x1468e47e wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x146c2e65 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0x149409ee crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x14bb1c4c ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0x14cbcac4 gpio_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x14f43281 blkg_lookup_create +EXPORT_SYMBOL_GPL vmlinux 0x14f875ce devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x14fc0c63 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x14ff0dcd swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0x15010e1f arbitrary_virt_to_machine +EXPORT_SYMBOL_GPL vmlinux 0x15568631 lookup_address +EXPORT_SYMBOL_GPL vmlinux 0x156b462d transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x15726cff device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x1584ad69 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x15892417 async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x15963a71 ata_acpi_stm +EXPORT_SYMBOL_GPL vmlinux 0x159f9ea7 save_stack_trace_tsk +EXPORT_SYMBOL_GPL vmlinux 0x15a4038a iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0x15b0606e e820_any_mapped +EXPORT_SYMBOL_GPL vmlinux 0x16000a3c dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x16022338 pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x1627ac04 xen_unregister_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0x162c3532 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0x16419ed2 pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x16456759 unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x1650bf27 rcutorture_record_progress +EXPORT_SYMBOL_GPL vmlinux 0x1659ab12 usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0x166bee54 cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x168b585a class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x168bbe95 ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x169069f4 relay_open +EXPORT_SYMBOL_GPL vmlinux 0x16e37a21 generic_access_phys +EXPORT_SYMBOL_GPL vmlinux 0x16fb8a1a __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x17083684 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x170f7f27 usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x172e72d4 vdso_enabled +EXPORT_SYMBOL_GPL vmlinux 0x1746f98e __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x1753a32f hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0x17547a16 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0x1756f2cf led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0x175c0590 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x17614bf3 apei_resources_sub +EXPORT_SYMBOL_GPL vmlinux 0x1797029a device_store_int +EXPORT_SYMBOL_GPL vmlinux 0x17a8ed5b crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x17c70cf3 sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x17d2b4c7 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x1829b9ed hwpoison_filter_memcg +EXPORT_SYMBOL_GPL vmlinux 0x1853653c btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x18543c5e pci_hp_change_slot_info +EXPORT_SYMBOL_GPL vmlinux 0x18582826 amd_pmu_disable_virt +EXPORT_SYMBOL_GPL vmlinux 0x1860ae35 crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x1866cec2 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x187699a8 blk_queue_flush_queueable +EXPORT_SYMBOL_GPL vmlinux 0x1878f62b edac_err_assert +EXPORT_SYMBOL_GPL vmlinux 0x18792c57 ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0x189ab436 ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0x189ac6cb input_class +EXPORT_SYMBOL_GPL vmlinux 0x18a27f34 jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0x18c69ad9 usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x18ca8c5e wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0x18e4298e regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x18f83fab gnttab_grant_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0x18fb7ee9 rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x19102d79 __mmu_notifier_invalidate_range_start +EXPORT_SYMBOL_GPL vmlinux 0x1929b621 ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0x192bbb43 wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x192c9fea tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x19341e02 spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x193d48e0 trace_current_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x19496284 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0x194dd5f5 pkey_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x196614ce hw_breakpoint_restore +EXPORT_SYMBOL_GPL vmlinux 0x19808d3d inet_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0x1997ad03 arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0x199ef2ce xenbus_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x19a1dfa4 acpi_get_gpiod_by_index +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19b384a5 hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x19f49249 devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x1a082d69 max77693_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x1a323362 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x1a33ce74 efivar_entry_find +EXPORT_SYMBOL_GPL vmlinux 0x1a39239d ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0x1a8b386c devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x1aacb708 inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0x1acef7d2 pm_freezing +EXPORT_SYMBOL_GPL vmlinux 0x1ad83009 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0x1ae27f95 regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0x1ae76ccc acpi_kobj +EXPORT_SYMBOL_GPL vmlinux 0x1b18c043 rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x1b1f2bda speedstep_get_freqs +EXPORT_SYMBOL_GPL vmlinux 0x1b2427c5 balloon_devinfo_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1b484108 dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x1b52db1c probe_kernel_read +EXPORT_SYMBOL_GPL vmlinux 0x1b670076 blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x1b8822d8 pinctrl_gpio_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1b9623c6 edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x1b9aca3f jprobe_return +EXPORT_SYMBOL_GPL vmlinux 0x1ba0d156 kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0x1ba7daad dma_buf_kmap +EXPORT_SYMBOL_GPL vmlinux 0x1bb15f9b __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x1bc5eebe pinctrl_gpio_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x1bd06aab cpufreq_frequency_table_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x1bea9e09 bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0x1bf72a62 sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0x1c0b1154 sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0x1c148128 netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x1c2067e9 crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0x1c38f8d0 devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1c4bc6c1 find_module +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c5fc3b3 subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x1c69566b platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c82339a regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1c9919ad __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0x1c9cd6f3 regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x1cbbabb0 usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x1cc289c3 ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0x1ccd5054 get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x1cce2faf tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0x1ce98df1 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x1cff7d80 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0x1d16970a adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0x1d2f31a3 nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0x1d429187 gpiochip_add_pin_range +EXPORT_SYMBOL_GPL vmlinux 0x1d459685 xstate_size +EXPORT_SYMBOL_GPL vmlinux 0x1d58ae14 lpddr2_jedec_timings +EXPORT_SYMBOL_GPL vmlinux 0x1d739e1c xen_set_callback_via +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d8fb3bb acpi_dev_resource_address_space +EXPORT_SYMBOL_GPL vmlinux 0x1d9eb979 ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0x1da68d60 iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0x1db6dd5f nf_register_afinfo +EXPORT_SYMBOL_GPL vmlinux 0x1dc29025 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x1dc3fc0e crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x1dc46e91 gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x1deb460c xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0x1dfb3098 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0x1e000879 hwpoison_filter_enable +EXPORT_SYMBOL_GPL vmlinux 0x1e170422 __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x1e391b2f rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x1e3a88fb trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x1e5b03dc pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1e67d36d ping_proc_register +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e88b8a6 blk_queue_flush +EXPORT_SYMBOL_GPL vmlinux 0x1e9bf62c blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0x1e9e5cb1 ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0x1eb1594f gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1eca8bf8 fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0x1edc21cb hwpoison_filter_flags_mask +EXPORT_SYMBOL_GPL vmlinux 0x1eedea55 ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x1f099ac4 ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0x1f1988f7 hwpoison_filter_flags_value +EXPORT_SYMBOL_GPL vmlinux 0x1f290270 usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0x1f3953f6 dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0x1f594d8c cred_to_ucred +EXPORT_SYMBOL_GPL vmlinux 0x1f595eb9 acpiphp_unregister_attention +EXPORT_SYMBOL_GPL vmlinux 0x1f699621 sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0x1f7f6fac register_jprobe +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f8620e2 acpi_bind_one +EXPORT_SYMBOL_GPL vmlinux 0x1f8db7f9 ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x1faa2f14 pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x1facd162 system_trusted_keyring +EXPORT_SYMBOL_GPL vmlinux 0x1fcece42 inet_twdr_twcal_tick +EXPORT_SYMBOL_GPL vmlinux 0x1feff49a set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0x1ff86523 cgroup_add_cftypes +EXPORT_SYMBOL_GPL vmlinux 0x1ffad889 xen_pci_frontend +EXPORT_SYMBOL_GPL vmlinux 0x2028cbd8 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0x2041d420 xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x20487cdc pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x20671650 call_srcu +EXPORT_SYMBOL_GPL vmlinux 0x206aade1 usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0x207388bb udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x2092160d crypto_init_spawn +EXPORT_SYMBOL_GPL vmlinux 0x209ec764 xen_event_channel_op_compat +EXPORT_SYMBOL_GPL vmlinux 0x20a3ac46 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0x20bc3470 orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x20d4a18d __percpu_ida_init +EXPORT_SYMBOL_GPL vmlinux 0x210516dc ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0x2107198c ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0x211dac7c xenbus_dev_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x2145fe4a bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x21574900 devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0x216d3103 acpi_dev_pm_attach +EXPORT_SYMBOL_GPL vmlinux 0x217b755f sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0x21aa20f5 usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x21ba7dc0 con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0x21bd88f7 usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0x21e9ec71 da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0x21f9bd01 ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x21ff5cb3 ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0x221937ac crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0x221be43a irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0x223f6eac fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0x224ef6a6 rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x22732d56 regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0x2279fc70 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x2296c00d crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x22a8dbc4 srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x22c05963 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x23091085 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0x2312e836 elv_register +EXPORT_SYMBOL_GPL vmlinux 0x2327386d device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0x232da5d7 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x2366a2c0 errata +EXPORT_SYMBOL_GPL vmlinux 0x23679939 __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x23769eee devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x2392bc6e pm_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0x23b5b007 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x23cdbaae exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x23dbde3a subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x240580a9 xenbus_probe +EXPORT_SYMBOL_GPL vmlinux 0x2406506c usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0x2417f85d usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x242b9134 __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x2439ff11 blkcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0x2447533c ktime_get_real +EXPORT_SYMBOL_GPL vmlinux 0x2469810f __rcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x2470ef2e blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x248d48a2 __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x248d7f24 pinctrl_find_and_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x248f5ebc find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0x24aac4d9 crypto_aes_expand_key +EXPORT_SYMBOL_GPL vmlinux 0x24c119e0 __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0x24c7698a xenbus_write +EXPORT_SYMBOL_GPL vmlinux 0x24e3e0af setup_irq +EXPORT_SYMBOL_GPL vmlinux 0x24e5c727 __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24edc6e8 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x24ef6d3b pinctrl_select_state +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x24fdc36e register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x2545c170 unregister_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0x258bd534 wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x2590d56f md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0x259acb61 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0x25a98f28 uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x25be08e3 preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x25c672b9 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0x25c9b10f blkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x26061a1d noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x260858d1 ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x260aa4c5 uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0x262f20a8 local_clock +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x267149ac exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x26965721 slow_virt_to_phys +EXPORT_SYMBOL_GPL vmlinux 0x26b71fb4 ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x26c05c0d sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26cbc6b8 ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x26d0e4c1 usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x26d5f018 crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x26eb0688 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0x272b36cf platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0x273524d1 posix_timer_event +EXPORT_SYMBOL_GPL vmlinux 0x2736b2fb pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0x2748b915 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0x276c4025 tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0x27775abd sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0x277cb759 fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0x277d5fbe ata_acpi_gtm +EXPORT_SYMBOL_GPL vmlinux 0x277e667d balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x2787db00 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x27897747 acpi_dma_request_slave_chan_by_name +EXPORT_SYMBOL_GPL vmlinux 0x279cb985 apei_exec_pre_map_gars +EXPORT_SYMBOL_GPL vmlinux 0x27a2e0a4 mmput +EXPORT_SYMBOL_GPL vmlinux 0x27c1e63f usb_amd_find_chipset_info +EXPORT_SYMBOL_GPL vmlinux 0x27ddb33d acpi_dev_resource_io +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x2823cdcd ata_sas_port_async_suspend +EXPORT_SYMBOL_GPL vmlinux 0x282a3a78 usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x28460202 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0x2860d95e regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x286cf848 adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0x28762c8a pinctrl_dev_get_devname +EXPORT_SYMBOL_GPL vmlinux 0x28825f3e simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0x289d4264 inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x28a82da4 snmp_mib_init +EXPORT_SYMBOL_GPL vmlinux 0x28a903c8 timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x28b3b2f3 __class_create +EXPORT_SYMBOL_GPL vmlinux 0x28d8117e subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x28e002aa vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0x28e0fdcb irq_find_host +EXPORT_SYMBOL_GPL vmlinux 0x28e11768 fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0x28e64c64 xen_has_pv_and_legacy_disk_devices +EXPORT_SYMBOL_GPL vmlinux 0x28eb64f0 usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0x29059b53 __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x290ec83f devm_pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x291902f4 rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0x29336e0a wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0x293616f7 class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x293f073e vrtc_cmos_write +EXPORT_SYMBOL_GPL vmlinux 0x2940f257 pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x2996fd68 register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x29c011fa perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0x29c60f5b perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x29e45132 register_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x2a203e2e gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x2a27136c netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x2a29ea83 sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0x2a555310 __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a807706 rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x2aacb323 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x2ac36de7 btree_last +EXPORT_SYMBOL_GPL vmlinux 0x2ad1ece4 zs_get_total_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0x2ad87b95 simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0x2aff5b84 xen_swiotlb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x2b0cdb5e flush_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0x2b175086 acpiphp_register_attention +EXPORT_SYMBOL_GPL vmlinux 0x2b2628ab usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x2b2fbee1 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x2b67f096 speedstep_get_frequency +EXPORT_SYMBOL_GPL vmlinux 0x2b7a6de8 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2b85564f ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x2bd131f0 regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x2be4443b pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x2bfaef4e clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x2c120529 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0x2c153630 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c5e4f8d clk_register +EXPORT_SYMBOL_GPL vmlinux 0x2c6a0410 xen_set_domain_pte +EXPORT_SYMBOL_GPL vmlinux 0x2c73f858 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0x2c7d9c64 xen_store_interface +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c82a2c1 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0x2cac6ee2 blkg_prfill_stat +EXPORT_SYMBOL_GPL vmlinux 0x2cc872ad fsnotify +EXPORT_SYMBOL_GPL vmlinux 0x2ce98559 kcrypto_wq +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2d0d11aa reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2d17a0e1 cgroup_taskset_size +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d37eac8 balloon_mapping_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d4a4e46 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x2d59c954 edac_handlers +EXPORT_SYMBOL_GPL vmlinux 0x2d718286 dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x2d9f2ce3 sched_clock_idle_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x2dac4345 pinctrl_dev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x2df51b14 tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x2e0de3ed __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0x2e222436 max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e2502d9 sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0x2e2a3459 xenbus_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x2e2f1740 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2e30860e usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0x2e372fb7 da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x2e45e488 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x2e57ab59 isa_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x2e6b6d21 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0x2e7bc036 ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x2e7e3bc4 get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x2e7f7cab fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0x2e8b6c8c __pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x2ea0ef66 usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x2ea580cf tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x2ea7a5c8 spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ec39e68 regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x2ec5583d ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0x2ed0bf5a tpm_store_cancel +EXPORT_SYMBOL_GPL vmlinux 0x2edc592e inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2ee05faf cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f45ae76 balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x2f4c3c65 ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x2f518e62 perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0x2f58fef9 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0x2f64415f unregister_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2f7ae6ed platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0x2f857551 machine_check_poll +EXPORT_SYMBOL_GPL vmlinux 0x2faa597b raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x2fd8cba9 freeze_wake +EXPORT_SYMBOL_GPL vmlinux 0x2fe5ff40 fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0x2fe627b0 thermal_generate_netlink_event +EXPORT_SYMBOL_GPL vmlinux 0x2ffc9178 dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x3017a5a0 sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0x302a3263 class_find_device +EXPORT_SYMBOL_GPL vmlinux 0x306db399 i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x308b733a getboottime +EXPORT_SYMBOL_GPL vmlinux 0x30a4f4ca bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x30f12599 bus_register +EXPORT_SYMBOL_GPL vmlinux 0x30f2aac5 regmap_update_bits_check_async +EXPORT_SYMBOL_GPL vmlinux 0x3109b751 cpu_clock +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x3129c73e gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x315384a4 da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x315bb54e __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x31689784 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0x317d59a6 atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x31903448 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0x31a13209 ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x31c0c2d1 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x31c1b667 __inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL vmlinux 0x31d577ca bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x3227ad9e ata_sff_data_xfer_noirq +EXPORT_SYMBOL_GPL vmlinux 0x322f3511 __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0x3245e1be arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0x3256ca45 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x325e677c gnttab_grant_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x325e7eac regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x328995b5 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0x328f4172 device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x32924a4d scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x329bbbde timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x32a486c7 cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x32a60a19 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0x32b31a8c ktime_get_boottime +EXPORT_SYMBOL_GPL vmlinux 0x32b9923a intel_scu_notifier +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32ddd5b6 call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x32fc25de pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0x32fd447a monotonic_to_bootbased +EXPORT_SYMBOL_GPL vmlinux 0x32fd4b62 __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0x3314bef5 ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x332b2fdf sdhci_pci_o2_probe_slot +EXPORT_SYMBOL_GPL vmlinux 0x333228ec intel_msic_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x33520d72 cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x336154ca rcutorture_record_test_transition +EXPORT_SYMBOL_GPL vmlinux 0x33655159 xen_pcpu_hotplug_sync +EXPORT_SYMBOL_GPL vmlinux 0x337a0be2 inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x337fe7d0 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x3389c7ac pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x338edbc5 pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0x33af269e ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0x33b96e5d apei_exec_write_register +EXPORT_SYMBOL_GPL vmlinux 0x34059268 ahash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0x34274fd8 blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x34350715 usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x34442666 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0x347de131 simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x347fd4b3 eventfd_ctx_get +EXPORT_SYMBOL_GPL vmlinux 0x34ac50a4 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x34d5a48e crypto_aead_type +EXPORT_SYMBOL_GPL vmlinux 0x34edcbf9 sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0x352650ee gnttab_batch_map +EXPORT_SYMBOL_GPL vmlinux 0x3550f7d4 print_context_stack +EXPORT_SYMBOL_GPL vmlinux 0x3581f995 enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x3586bfde xenbus_register_driver_common +EXPORT_SYMBOL_GPL vmlinux 0x3587014c bio_clone_mddev +EXPORT_SYMBOL_GPL vmlinux 0x358c007a rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x35990c8f pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0x35ab93d9 led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0x35d13ddd regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x35dc4f84 inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0x35df06bc power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x35e7aec2 ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x35f10f43 nfq_ct_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x35f165f1 devm_reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x35f3ae51 unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x361e2bcc save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0x362998c3 rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3658b0dd tpm_show_durations +EXPORT_SYMBOL_GPL vmlinux 0x3678b0e7 __fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36a1fef6 pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x36b5497e intel_iommu_enabled +EXPORT_SYMBOL_GPL vmlinux 0x36ba2551 intel_scu_devices_destroy +EXPORT_SYMBOL_GPL vmlinux 0x36ba3494 ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0x36e36238 fat_attach +EXPORT_SYMBOL_GPL vmlinux 0x36ea7ccf usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0x36f6e800 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0x3704b7d8 ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x370aea30 pwm_config +EXPORT_SYMBOL_GPL vmlinux 0x37a2b391 da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x37a58f66 unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x381548c7 ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x38259715 perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x38620e38 gnttab_grant_foreign_access_trans_ref +EXPORT_SYMBOL_GPL vmlinux 0x3874de59 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x3878aab8 device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x3893ded9 __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x38a286b0 serial8250_tx_dma +EXPORT_SYMBOL_GPL vmlinux 0x38a9c2c7 input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x38ba5264 subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x38c29881 sec_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x38da87fd __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x38f83c61 kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x38ffe8e5 regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x391a44da iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0x39270d14 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x39470404 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x395e45b0 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x397698be sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x3991e2d2 usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x399f1bd0 regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x39a7a478 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0x39c16bf2 add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0x39d0d55c fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a36f4d8 relay_close +EXPORT_SYMBOL_GPL vmlinux 0x3a38dc65 memory_failure +EXPORT_SYMBOL_GPL vmlinux 0x3a4335d4 tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a7ddb20 sec_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x3a7f88f5 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x3a8f7930 ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0x3a959e7f ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0x3a964337 acpi_processor_get_performance_info +EXPORT_SYMBOL_GPL vmlinux 0x3aa4897b wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3ac289a0 ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x3ac9fa97 cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0x3acb5baf fuse_conn_kill +EXPORT_SYMBOL_GPL vmlinux 0x3acf1717 tpm_register_hardware +EXPORT_SYMBOL_GPL vmlinux 0x3af1d9fb clockevents_unbind +EXPORT_SYMBOL_GPL vmlinux 0x3b385085 tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x3b3e898d skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0x3b525105 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0x3b55911d cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x3b687c58 regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0x3b7145bb apei_exec_read_register_value +EXPORT_SYMBOL_GPL vmlinux 0x3ba96d8e key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x3bc29613 pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0x3be46277 irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x3be6fe6e acpi_subsys_prepare +EXPORT_SYMBOL_GPL vmlinux 0x3be7c427 blk_queue_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x3bf07d24 ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0x3c220217 __rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3c391b29 extcon_set_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x3c4b438c ref_module +EXPORT_SYMBOL_GPL vmlinux 0x3c7f10b0 map_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x3c804331 pinctrl_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x3c8424a0 clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3c8f4428 clk_register_mux +EXPORT_SYMBOL_GPL vmlinux 0x3c9390db pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0x3cad13a8 serial8250_rx_dma +EXPORT_SYMBOL_GPL vmlinux 0x3cc5eabd sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cf04db4 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x3d2cc927 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d3adcbb sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3d56b013 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0x3d7215d3 perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x3d7ea99a gnttab_grant_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x3d816f5c regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0x3dc916b6 crypto_fl_tab +EXPORT_SYMBOL_GPL vmlinux 0x3dd4d3a7 bprintf +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3e02eeef usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x3e1f1e08 usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x3e2e543d cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x3e2fa31f wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3e6ec8c2 crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e757637 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0x3e7f0dfc __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0x3e858c2c da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x3e971b8d regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3ea5196d apei_osc_setup +EXPORT_SYMBOL_GPL vmlinux 0x3ecb876b fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0x3ef3d25d regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0x3efb35c9 get_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0x3f0c1e98 napi_by_id +EXPORT_SYMBOL_GPL vmlinux 0x3f229c4c oops_begin +EXPORT_SYMBOL_GPL vmlinux 0x3f28ea3f device_find_child +EXPORT_SYMBOL_GPL vmlinux 0x3f2f0241 virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0x3f31cc8f regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0x3f53a953 wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x3f6b04e4 crypto_lookup_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x3f790d98 regmap_field_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x3f84d4c9 gnttab_release_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x3fa1c6a9 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x3fce62f3 regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3ffd4876 tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x400a024b acpi_scan_lock_release +EXPORT_SYMBOL_GPL vmlinux 0x402783cb regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x4045c494 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0x4065d168 pm_print_active_wakeup_sources +EXPORT_SYMBOL_GPL vmlinux 0x408a979e split_page +EXPORT_SYMBOL_GPL vmlinux 0x408ee3bd pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x40af0dec ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x40af2c6d devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x40d46b21 crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x41261fc7 debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x41299916 pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x41357e84 rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x414cafd0 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x415123de pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x415bafc2 debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x4160cebc blkdev_aio_write +EXPORT_SYMBOL_GPL vmlinux 0x41615ede inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x41a304f6 power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0x41c2953f virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0x4205ad24 cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x4213a51a efivar_entry_set_safe +EXPORT_SYMBOL_GPL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x42330ede ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x424acc6d scatterwalk_done +EXPORT_SYMBOL_GPL vmlinux 0x424bce92 irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x424e4dfc pci_reset_pri +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x429ee1cc apei_get_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0x42b7f8cd usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x42c989ff iomap_atomic_prot_pfn +EXPORT_SYMBOL_GPL vmlinux 0x42d0ffed ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x42e56b1e vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0x42f05133 task_xstate_cachep +EXPORT_SYMBOL_GPL vmlinux 0x430d764e locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0x43485704 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x435e6c6e crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x436221a8 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x437768fa find_symbol +EXPORT_SYMBOL_GPL vmlinux 0x438b9cd1 blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x43a53735 __alloc_workqueue_key +EXPORT_SYMBOL_GPL vmlinux 0x43b3e88c of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0x43ca88c2 register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x43f0e5a8 __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x44404f11 kdb_register_repeat +EXPORT_SYMBOL_GPL vmlinux 0x445436dc blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x4486bf12 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x44895dbe pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x44ac814b ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x44cc9c55 klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x45024eb0 sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0x4512b086 intel_scu_devices_create +EXPORT_SYMBOL_GPL vmlinux 0x4523cab9 cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0x452d0416 iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0x4541fe0d mtrr_state +EXPORT_SYMBOL_GPL vmlinux 0x454c15ae __smp_call_function_single +EXPORT_SYMBOL_GPL vmlinux 0x4556a2f4 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x45825372 devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x45a94586 da903x_update +EXPORT_SYMBOL_GPL vmlinux 0x45bf1ff3 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x45d14bdf hypercall_page +EXPORT_SYMBOL_GPL vmlinux 0x45d9fbc5 pinctrl_utils_add_config +EXPORT_SYMBOL_GPL vmlinux 0x460e1102 inet6_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x460f31aa rodata_test_data +EXPORT_SYMBOL_GPL vmlinux 0x460f7531 wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x461b24cf ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x4622916a raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0x463f276d __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x4656e2cf sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0x46649969 driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x4672e88b __crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x46873850 regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4689e504 ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x46a04adc tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x46a2eaa2 lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0x46bc59f5 usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0x46c39e32 pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x46db07bc ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0x46e999cb css_next_child +EXPORT_SYMBOL_GPL vmlinux 0x46f13326 watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0x47054351 sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x47070dfd nf_unregister_afinfo +EXPORT_SYMBOL_GPL vmlinux 0x470fa426 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x472dafde clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x47725d4c rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x477a6ec6 cpufreq_frequency_get_table +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47b1d796 ablkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x47cf46f9 dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x47d1bcd0 nf_queue_entry_release_refs +EXPORT_SYMBOL_GPL vmlinux 0x47da8d42 tcp_reno_min_cwnd +EXPORT_SYMBOL_GPL vmlinux 0x47e16833 serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x47ec243d perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0x47f34151 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x4828e77b acpi_scan_lock_acquire +EXPORT_SYMBOL_GPL vmlinux 0x48329f6f fuse_request_send_background +EXPORT_SYMBOL_GPL vmlinux 0x4845de94 usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0x48505557 __scsi_get_command +EXPORT_SYMBOL_GPL vmlinux 0x48682db9 perf_guest_get_msrs +EXPORT_SYMBOL_GPL vmlinux 0x48c99dd4 device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x48ca8947 pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x48cbfa32 inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0x48d587b8 wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0x48e5beaa sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0x48ec480c serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x48f68443 stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0x49022df0 gpiochip_remove_pin_ranges +EXPORT_SYMBOL_GPL vmlinux 0x49063538 debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0x49085d7d tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x490a8df6 x86_platform +EXPORT_SYMBOL_GPL vmlinux 0x493232f2 gnttab_map_refs +EXPORT_SYMBOL_GPL vmlinux 0x49331359 __ip_route_output_key +EXPORT_SYMBOL_GPL vmlinux 0x49339f55 cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0x493c0b43 sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x494710e4 regmap_field_write +EXPORT_SYMBOL_GPL vmlinux 0x4978ba8f irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x4982a57f probe_kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x498d293a trace_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x49dbe837 devm_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x49ed25b0 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x49ff61a4 flush_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x4a18c88a xenbus_dev_remove +EXPORT_SYMBOL_GPL vmlinux 0x4a33ce4a bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x4a3c3cf9 microcode_sanity_check +EXPORT_SYMBOL_GPL vmlinux 0x4a57c5e8 tps65912_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x4a631188 sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x4a6d5335 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x4a7a1297 vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0x4a810eaf rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x4a9830a5 sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0x4aadeb9a ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0x4ae2b8f9 xen_swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0x4afb573b vrtc_cmos_read +EXPORT_SYMBOL_GPL vmlinux 0x4b0150d4 dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x4b5dbe2d pci_ats_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x4b67bf0d sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0x4b7f4082 fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0x4bc62a81 audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4c10d14d __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x4c16f764 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0x4c21ea33 usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x4c2a472b __static_cpu_has_safe +EXPORT_SYMBOL_GPL vmlinux 0x4c2e1f24 clk_disable +EXPORT_SYMBOL_GPL vmlinux 0x4c4dcf72 usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0x4c5472d9 i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0x4c56c095 raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x4c601db6 raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0x4c602bf1 __blkg_release_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4c605194 crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0x4c759827 byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x4c85ca85 __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x4ca4c9df clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x4d2d790c bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0x4d71c9c7 regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x4d7b6790 xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0x4d92b653 pinctrl_utils_add_map_configs +EXPORT_SYMBOL_GPL vmlinux 0x4d9ad6ab power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0x4dc857c5 anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4de6dad3 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x4dee206d input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0x4e109192 ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0x4e242f5f pstore_cannot_block_path +EXPORT_SYMBOL_GPL vmlinux 0x4e3c9ca6 evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x4e57723d apei_read +EXPORT_SYMBOL_GPL vmlinux 0x4e74e625 gnttab_batch_copy +EXPORT_SYMBOL_GPL vmlinux 0x4e95b1ed sec_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x4ea854d0 css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x4eabb919 of_reset_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x4eb9bed5 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0x4ebcb5d3 tpm_read +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f00549d wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0x4f020dee public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x4f1a4488 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0x4f3638b5 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x4f58da72 usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x4f6b0baa efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0x4f8ef009 __efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0x4f9baa3c pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x4fa3c899 tpm_show_pubek +EXPORT_SYMBOL_GPL vmlinux 0x4fabe0fc apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0x4fb7d593 regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0x4fc03ca4 wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x4fc03fa0 pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x4fc06ae9 tpm_show_owned +EXPORT_SYMBOL_GPL vmlinux 0x4fc4fd89 shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x4fc52e8d __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0x4fd4e89d ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4ff42cc3 regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x4ffaadfc pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x50012048 crypto_alloc_instance +EXPORT_SYMBOL_GPL vmlinux 0x5019b894 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x5026585c xen_irq_from_gsi +EXPORT_SYMBOL_GPL vmlinux 0x505dd1f2 regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x506691f1 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x506b0164 efivar_entry_add +EXPORT_SYMBOL_GPL vmlinux 0x506cc085 tracepoint_iter_stop +EXPORT_SYMBOL_GPL vmlinux 0x5086ac3a alg_test +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x50a95163 usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0x50c2f1ad __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x50c55e4a device_del +EXPORT_SYMBOL_GPL vmlinux 0x50c89f23 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x50e44aa4 rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x5108b3fc acpi_os_map_memory +EXPORT_SYMBOL_GPL vmlinux 0x5115db13 ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x5135e896 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0x514b95c4 mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x5160bbeb hwpoison_filter +EXPORT_SYMBOL_GPL vmlinux 0x5160de59 __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0x5187ac4b xen_store_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x518c2fc6 hpet_rtc_dropped_irq +EXPORT_SYMBOL_GPL vmlinux 0x520963f5 bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL vmlinux 0x52212010 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x5246609a dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0x5255ded8 devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0x525cbf07 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0x5272d8bc __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0x52964ce3 hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x52a41251 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x52b6278a device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x5306d5fd __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0x53086252 register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x532ccbcd virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0x5358fc36 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x53614269 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x53691c3d blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0x5391b3b0 srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x53947ff5 cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x539f157b pci_xen_swiotlb_init_late +EXPORT_SYMBOL_GPL vmlinux 0x53b6ccf1 aead_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0x53c8be64 rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x53cb6f42 sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0x53cccd0f crypto_alloc_instance2 +EXPORT_SYMBOL_GPL vmlinux 0x53dac46e xenbus_dev_is_online +EXPORT_SYMBOL_GPL vmlinux 0x53e72b20 pci_intx +EXPORT_SYMBOL_GPL vmlinux 0x54108307 ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x543aa0ec crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0x543df8ba tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x544bd7cb blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x5460c8d8 fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x546e333e irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0x54740eb7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x547690ea device_show_int +EXPORT_SYMBOL_GPL vmlinux 0x547b24b7 ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x549825a9 gov_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x54a2326c efivar_entry_size +EXPORT_SYMBOL_GPL vmlinux 0x54b85079 acpi_subsys_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x54b8ac68 gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0x54e70c32 key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0x5516d046 skcipher_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0x551d8aac tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x553756ff pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0x5539dc25 wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x55510eb9 dm_dispatch_request +EXPORT_SYMBOL_GPL vmlinux 0x55526907 xen_features +EXPORT_SYMBOL_GPL vmlinux 0x556d9c44 proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0x556e015c crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x55967c64 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x55b24be3 sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x55cae5d0 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x55edd53d unregister_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x56336e03 sdhci_pci_o2_probe +EXPORT_SYMBOL_GPL vmlinux 0x56398615 mark_tsc_unstable +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x564f1dca klist_add_after +EXPORT_SYMBOL_GPL vmlinux 0x5654f836 erst_get_record_id_next +EXPORT_SYMBOL_GPL vmlinux 0x565b6892 uuid_le_gen +EXPORT_SYMBOL_GPL vmlinux 0x56694a69 kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0x566d5aaa set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x56886b19 scatterwalk_map +EXPORT_SYMBOL_GPL vmlinux 0x5692386f gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x56947347 dmi_walk +EXPORT_SYMBOL_GPL vmlinux 0x5694e378 acpi_dma_request_slave_chan_by_index +EXPORT_SYMBOL_GPL vmlinux 0x56b63670 lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x56c27661 crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x56c8c54b usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0x56d033cd ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0x56d697ce cpu_up +EXPORT_SYMBOL_GPL vmlinux 0x56e75d47 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x56f0abdb devm_rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x56f437d5 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x570668a7 pciserial_init_ports +EXPORT_SYMBOL_GPL vmlinux 0x57231f45 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0x57520d16 cper_estatus_check_header +EXPORT_SYMBOL_GPL vmlinux 0x576197d9 xen_swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL_GPL vmlinux 0x5772cae1 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0x5773d58c swiotlb_tbl_sync_single +EXPORT_SYMBOL_GPL vmlinux 0x5779d445 xenbus_exists +EXPORT_SYMBOL_GPL vmlinux 0x577e2b8b platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x578d43b2 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57a8d49b sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0x57a9e0df pci_msi_off +EXPORT_SYMBOL_GPL vmlinux 0x57b11ed4 find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x57b1628e spi_alloc_master +EXPORT_SYMBOL_GPL vmlinux 0x57ddec6b page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x57ede3d9 unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x57f42914 blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0x57fbdf89 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0x580016c4 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x5822d590 device_rename +EXPORT_SYMBOL_GPL vmlinux 0x58282334 regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x5829deb3 usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0x5839fc62 gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x58413099 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x5849a8b6 edac_subsys +EXPORT_SYMBOL_GPL vmlinux 0x584c5acb led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x585704ab aer_recover_queue +EXPORT_SYMBOL_GPL vmlinux 0x587524d6 max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x588bc9aa blkcipher_walk_virt_block +EXPORT_SYMBOL_GPL vmlinux 0x5897988d usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x589e4569 syscon_regmap_lookup_by_pdevname +EXPORT_SYMBOL_GPL vmlinux 0x58ca437f pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0x58fe9409 rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0x592cfbc3 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0x5940c1b9 pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0x5947abbe max77693_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x595d6d90 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0x596a3068 ping_proc_unregister +EXPORT_SYMBOL_GPL vmlinux 0x59864563 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0x598afa4e pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x598b4bf0 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0x59980000 cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x59a6e91d clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x59e2743e call_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0x59eae699 ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x5a00114c ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x5a03c45e cgroup_unload_subsys +EXPORT_SYMBOL_GPL vmlinux 0x5a101d06 pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0x5a25c2f4 pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0x5a2b1b67 gnttab_free_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x5a441ebd efi_query_variable_store +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a88674b regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x5abaec3a transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x5acd4895 tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0x5af03a28 gnttab_claim_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x5b04f082 sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x5b13bba2 device_add +EXPORT_SYMBOL_GPL vmlinux 0x5b229134 add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x5b502959 ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x5b7b1868 cpufreq_notify_transition +EXPORT_SYMBOL_GPL vmlinux 0x5b7d542a crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x5ba824d5 ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x5ba915ad blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5babf842 register_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x5bb9f760 crypto_givcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x5bc1da9d regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0x5bce97af ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0x5bffdc57 sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0x5c2cc1a6 __netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x5c3ad16b ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x5c66e90c efivar_run_worker +EXPORT_SYMBOL_GPL vmlinux 0x5caba67a dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x5cabdced dev_pm_qos_remove_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5cb3b4f6 ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x5cfa515b regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x5d12e48f input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0x5d1a9161 sdhci_pci_o2_resume +EXPORT_SYMBOL_GPL vmlinux 0x5d366dec gnttab_cancel_free_callback +EXPORT_SYMBOL_GPL vmlinux 0x5d48a650 m2p_find_override_pfn +EXPORT_SYMBOL_GPL vmlinux 0x5d5e9e3d kobj_completion_del_and_wait +EXPORT_SYMBOL_GPL vmlinux 0x5dbcfa4f boot_cpu_physical_apicid +EXPORT_SYMBOL_GPL vmlinux 0x5dfaedec tpm_show_active +EXPORT_SYMBOL_GPL vmlinux 0x5e19de1b debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0x5e27f7fc virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0x5e445452 tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0x5e4a938f ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5ec7e87a device_reset +EXPORT_SYMBOL_GPL vmlinux 0x5ef3fbf9 led_trigger_show +EXPORT_SYMBOL_GPL vmlinux 0x5ef523d7 usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0x5ef85834 sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0x5f097fec regmap_update_bits_async +EXPORT_SYMBOL_GPL vmlinux 0x5f0a8236 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5f18bea4 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x5f248f72 set_timer_slack +EXPORT_SYMBOL_GPL vmlinux 0x5f26a396 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0x5f2da8c4 check_tsc_unstable +EXPORT_SYMBOL_GPL vmlinux 0x5f419491 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x5f46429b napi_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x5fb49dbb tasklet_hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x5fc27be9 acpi_dev_irq_flags +EXPORT_SYMBOL_GPL vmlinux 0x5fccfc1a usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x5fda713d blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0x5fdfa2c1 amd_pmu_enable_virt +EXPORT_SYMBOL_GPL vmlinux 0x5ff8dde4 relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0x6046bfb1 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x60506751 unmap_kernel_range_noflush +EXPORT_SYMBOL_GPL vmlinux 0x60620886 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x60646937 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0x608b6b20 __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x6091797f synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x60930d37 save_mc_for_early +EXPORT_SYMBOL_GPL vmlinux 0x6094685f wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60ac7b9f dev_get_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x60c4940a ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0x60cd73ed pv_apic_ops +EXPORT_SYMBOL_GPL vmlinux 0x60f50d63 usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x610bc065 uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x610d1573 inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x611006d5 apic +EXPORT_SYMBOL_GPL vmlinux 0x613360ed stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0x61568692 crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0x61a0369c tcp_init_congestion_ops +EXPORT_SYMBOL_GPL vmlinux 0x62202e37 rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x622dacba tick_nohz_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x623803c8 hest_disable +EXPORT_SYMBOL_GPL vmlinux 0x624a6406 hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x625708bf regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0x6295fb8b scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0x62a6b0bd mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0x62e29efc print_context_stack_bp +EXPORT_SYMBOL_GPL vmlinux 0x62edddeb sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x62f29593 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x6313db78 xen_register_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0x63205de1 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x6334802d ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x633ec97d rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x634bf705 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x635ec980 apei_exec_post_unmap_gars +EXPORT_SYMBOL_GPL vmlinux 0x63690c5e led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x638508d0 ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x63ae1b65 dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x63bb8b64 pinctrl_utils_reserve_map +EXPORT_SYMBOL_GPL vmlinux 0x63bd6ec9 alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0x63c62fa0 hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x63caad2e spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0x63d92aaa irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0x63dbf159 pwm_disable +EXPORT_SYMBOL_GPL vmlinux 0x63efb38a usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x63f3b2ee gpiochip_add_pingroup_range +EXPORT_SYMBOL_GPL vmlinux 0x64026d45 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0x64256424 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0x644c2191 locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0x6469aa8d bmp085_probe +EXPORT_SYMBOL_GPL vmlinux 0x64898284 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x64b1a15a sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x64b7069e apei_mce_report_mem_error +EXPORT_SYMBOL_GPL vmlinux 0x64c33cf4 md_ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x651c6207 irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x6527a231 dbgp_external_startup +EXPORT_SYMBOL_GPL vmlinux 0x652aeb6b srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x653cb02d intel_msic_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x6559b1b3 class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x656caa17 usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0x658c8186 amd_get_nb_id +EXPORT_SYMBOL_GPL vmlinux 0x65b51ca2 regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x65bbbc78 schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65d020f2 __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x65f2f018 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x65ff2579 get_matching_microcode +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x6627eec6 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x662a0c3f x509_get_sig_params +EXPORT_SYMBOL_GPL vmlinux 0x663c16d6 gnttab_grant_foreign_access_subpage_ref +EXPORT_SYMBOL_GPL vmlinux 0x66454353 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x66460748 smp_ops +EXPORT_SYMBOL_GPL vmlinux 0x664b5b49 xattr_getsecurity +EXPORT_SYMBOL_GPL vmlinux 0x664eaece sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x6666a43b skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0x666bdd85 pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0x66834a62 pci_bus_sem +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6689916c ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x66b099e1 __ablkcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0x66c17918 tpm_show_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x671495af debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x6717cc35 dm_underlying_device_busy +EXPORT_SYMBOL_GPL vmlinux 0x6731553f attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x6739a503 balloon_set_new_target +EXPORT_SYMBOL_GPL vmlinux 0x674e13e1 public_key_destroy +EXPORT_SYMBOL_GPL vmlinux 0x67567587 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x67643d26 pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x677d6526 regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x678569f5 fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0x679548d4 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x67b11729 wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0x67dfc29a blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x67fac714 ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0x68034e1c __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0x6812cf8d __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0x6814eff4 ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0x685c6406 adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x685fa836 ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x687934e9 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x68956406 static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x68cb9f3f usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0x68dfc1d4 devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0x68e0fa21 xenbus_probe_node +EXPORT_SYMBOL_GPL vmlinux 0x6923ce63 irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x69447467 ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0x6945725e mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0x6949e57c pinctrl_lookup_state +EXPORT_SYMBOL_GPL vmlinux 0x694abd7c file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0x6966a01e kill_pid_info_as_cred +EXPORT_SYMBOL_GPL vmlinux 0x696ae9da xenbus_dev_error +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6988438d pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0x698a899f ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0x698e50ab da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x69994988 ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0x69c7cf74 pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x69e9a2cb ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x6a0ee8f8 arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a1d9cd9 pinctrl_add_gpio_ranges +EXPORT_SYMBOL_GPL vmlinux 0x6a2a6a19 disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x6a5b2b90 crypto_lookup_aead +EXPORT_SYMBOL_GPL vmlinux 0x6a5fb566 rcu_sched_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x6a69b504 regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6ac65ad9 rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0x6ac8179d stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0x6acad21f acpi_get_cpuid +EXPORT_SYMBOL_GPL vmlinux 0x6b1a853f yield_to +EXPORT_SYMBOL_GPL vmlinux 0x6b29a1fa ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0x6b2b0754 irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0x6b3a6eb2 crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x6b5b478e anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6baeab2b pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0x6bb78928 elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6beaf81b pci_enable_pri +EXPORT_SYMBOL_GPL vmlinux 0x6bf1b90d dmi_memdev_name +EXPORT_SYMBOL_GPL vmlinux 0x6bf2b258 skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x6c118a42 dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x6c1251fd apei_exec_read_register +EXPORT_SYMBOL_GPL vmlinux 0x6c1b09ab gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x6c2ab094 class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x6c49c4f2 clockevents_notify +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c655913 register_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6c6cbdf9 crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0x6c749afe __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x6c8fa11b register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x6c904cab disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6cb67efb ata_eh_thaw_port +EXPORT_SYMBOL_GPL vmlinux 0x6cb8b425 bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6cd21997 ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x6cd4ea62 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0x6d2419a7 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d3030f0 wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0x6d31e93b tracepoint_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x6d339861 __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0x6d4dec94 __blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x6d82c0ff irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x6d8f6c6e irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0x6d9a4eba led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0x6d9b3ede spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0x6dc5c57a ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0x6dd71dea vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0x6ddeb409 sysfs_get +EXPORT_SYMBOL_GPL vmlinux 0x6e04a077 usb_bind_phy +EXPORT_SYMBOL_GPL vmlinux 0x6e0a8e33 ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x6e3a6f91 fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0x6e46ba56 devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x6e58ddf0 gnttab_end_foreign_transfer_ref +EXPORT_SYMBOL_GPL vmlinux 0x6e62dcbe bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0x6e6d3ee6 pwm_can_sleep +EXPORT_SYMBOL_GPL vmlinux 0x6e782c23 iomap_create_wc +EXPORT_SYMBOL_GPL vmlinux 0x6e7943ec iommu_group_id +EXPORT_SYMBOL_GPL vmlinux 0x6e85b00b local_touch_nmi +EXPORT_SYMBOL_GPL vmlinux 0x6e85fc14 regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6e95a660 inet_hash +EXPORT_SYMBOL_GPL vmlinux 0x6ea1a1a2 unregister_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0x6ecdcba8 zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x6ed59daf ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0x6eeb7e56 extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0x6ef69ae6 kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x6f1ee69e kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x6f2b786d device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x6f30f4ed find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x6f3f21bb dm_get_rq_mapinfo +EXPORT_SYMBOL_GPL vmlinux 0x6f4b4390 crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0x6f4db047 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0x6f8f08e6 xen_swiotlb_unmap_sg_attrs +EXPORT_SYMBOL_GPL vmlinux 0x6fa6f0ce root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6facb1c3 crypto_register_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x6fe3d8cf ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x6ff02e06 ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6ffd1d02 pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x70201233 unregister_jprobe +EXPORT_SYMBOL_GPL vmlinux 0x70208615 rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0x7029a3eb serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x707ff1bb ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x70825112 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x709bb12c blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0x70bb6280 device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0x70bb651d __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x70cf032f usb_hcd_irq +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x710c8824 vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x71481ce4 led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x715cc156 securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x716286c6 rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x71639d2d bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7179d460 inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0x718cc556 rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x7198df01 percpu_ida_destroy +EXPORT_SYMBOL_GPL vmlinux 0x71dc9998 crypto_il_tab +EXPORT_SYMBOL_GPL vmlinux 0x71e06c97 __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x72093ac9 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0x7267db00 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x72741f25 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x727577a9 rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x72ae8cdf relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0x72e7802d device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x73013896 xenbus_printf +EXPORT_SYMBOL_GPL vmlinux 0x730f9db5 rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0x731dba7a xen_domain_type +EXPORT_SYMBOL_GPL vmlinux 0x733c157d sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0x7342a224 pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x734f325a netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0x735b1cd6 btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0x737cfb42 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x738fd248 intel_msic_reg_update +EXPORT_SYMBOL_GPL vmlinux 0x73a357b6 tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73b95f44 blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x73c832f2 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x73d69364 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x73f0d5ab kobj_completion_release +EXPORT_SYMBOL_GPL vmlinux 0x73f4fd2b xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0x74005c8e crypto_ahash_type +EXPORT_SYMBOL_GPL vmlinux 0x7413743e cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0x741dc3d5 ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0x7422c95e gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x7431815f ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x74388a9d ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x74457e56 apei_resources_fini +EXPORT_SYMBOL_GPL vmlinux 0x74510a63 dm_set_device_limits +EXPORT_SYMBOL_GPL vmlinux 0x7452adff user_return_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x745f48dd fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x7464ea38 dev_pm_qos_add_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x747b5b78 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7489a41f pci_pri_status +EXPORT_SYMBOL_GPL vmlinux 0x74954462 timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74c08941 kvm_async_pf_task_wake +EXPORT_SYMBOL_GPL vmlinux 0x74c582a3 ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0x74deb10c used_vectors +EXPORT_SYMBOL_GPL vmlinux 0x751011b6 rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0x7521afb6 leave_mm +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x753d034f pinctrl_pm_select_sleep_state +EXPORT_SYMBOL_GPL vmlinux 0x755bd351 kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x75662a9d tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0x7566cef4 ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x758a782e blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x75973700 usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x75c2b9f1 memalloc_socks +EXPORT_SYMBOL_GPL vmlinux 0x75c8a11c inet_twdr_twkill_work +EXPORT_SYMBOL_GPL vmlinux 0x75d200a6 fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x75f7af9b devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x763cca66 rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0x76595d6a irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x765b7a39 devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x7660d53d ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x7664b95a crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0x7667d632 tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x766f9815 device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x76aae871 ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0x76af90fd devres_release +EXPORT_SYMBOL_GPL vmlinux 0x76d07d6e gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x76f08fc5 debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x76f27e46 regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0x770cf981 tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x7712771a unbind_from_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x77214cea sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x772f5598 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x775a6ef5 kvm_read_and_reset_pf_reason +EXPORT_SYMBOL_GPL vmlinux 0x7764b2be vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x7790adc0 aout_dump_debugregs +EXPORT_SYMBOL_GPL vmlinux 0x779ed61b pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0x77b00f31 rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x77b14e25 tcp_is_cwnd_limited +EXPORT_SYMBOL_GPL vmlinux 0x77ef0546 platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x781bd59b efivar_entry_set_get_size +EXPORT_SYMBOL_GPL vmlinux 0x781c6eca hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x782adb74 hpet_rtc_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x783df5df usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x784d35ac usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0x785e2d1f tpm_dev_vendor_release +EXPORT_SYMBOL_GPL vmlinux 0x787ca86f ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0x7897aa87 rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0x78a5d102 crypto_blkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x78a74fb3 security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0x78b25f58 iommu_map +EXPORT_SYMBOL_GPL vmlinux 0x78e149a2 adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x78ea227b acpi_bus_no_hotplug +EXPORT_SYMBOL_GPL vmlinux 0x7903fc31 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x793e74b7 mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x79571437 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x796c2d48 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x79763252 trace_buffer_unlock_commit_regs +EXPORT_SYMBOL_GPL vmlinux 0x798d10dd crypto_alloc_ablkcipher +EXPORT_SYMBOL_GPL vmlinux 0x7991fd8d crash_vmclear_loaded_vmcss +EXPORT_SYMBOL_GPL vmlinux 0x799c4837 wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x79a71c48 kernel_stack_pointer +EXPORT_SYMBOL_GPL vmlinux 0x79bc5430 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0x79c5558a pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0x79d1a955 blk_queue_bypass_end +EXPORT_SYMBOL_GPL vmlinux 0x79e69460 intel_iommu_gfx_mapped +EXPORT_SYMBOL_GPL vmlinux 0x7a2f052f __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x7a319404 clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x7a3ac460 tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0x7a4c1438 pv_info +EXPORT_SYMBOL_GPL vmlinux 0x7a944007 rcu_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x7ab3ca18 eventfd_ctx_read +EXPORT_SYMBOL_GPL vmlinux 0x7ac6fdc6 devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7ac8e5b0 acpi_gsi_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x7ada13d0 i2c_new_device +EXPORT_SYMBOL_GPL vmlinux 0x7ae1ae8e cpufreq_frequency_table_put_attr +EXPORT_SYMBOL_GPL vmlinux 0x7b072291 pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0x7b0f1ab3 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7b1d544d edac_handler_set +EXPORT_SYMBOL_GPL vmlinux 0x7b304cd4 usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x7b5bdb6f ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0x7b863032 skb_segment +EXPORT_SYMBOL_GPL vmlinux 0x7b90d1a9 bind_virq_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x7b9e31c6 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x7bb4425a regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x7becb451 use_mm +EXPORT_SYMBOL_GPL vmlinux 0x7bff4171 unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x7c0a4368 css_next_descendant_post +EXPORT_SYMBOL_GPL vmlinux 0x7c227088 clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x7c346357 pkey_algo +EXPORT_SYMBOL_GPL vmlinux 0x7c4a326b devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x7c7d7a46 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x7c90901f crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0x7c965cc7 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0x7cb642fa sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x7cc1b7fd max77693_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7cc7de1c x509_check_signature +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cef22fe wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x7cfd55aa sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x7d1f1968 input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0x7d311b4f pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0x7d36e534 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7d397cc7 gpiod_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d3e16e6 md_run +EXPORT_SYMBOL_GPL vmlinux 0x7d461c59 iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x7d5779dd get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d93e9e9 crypto_unregister_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x7d9f8060 tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0x7dab26b6 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7dc64576 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x7dc784de acpi_subsys_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x7e0515ba usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x7e267862 inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x7e2bef66 rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e80440e regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x7e8223d3 cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0x7e864140 __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0x7e9aa3e8 __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x7eb0e62c unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x7eebe678 each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x7f04ff24 md_stop +EXPORT_SYMBOL_GPL vmlinux 0x7f8481a6 __rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x7f86d4b1 fpu_finit +EXPORT_SYMBOL_GPL vmlinux 0x7f9ed9bb pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0x7fa56a99 od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x7faaeca3 pci_pri_stopped +EXPORT_SYMBOL_GPL vmlinux 0x7fb426b4 PageHuge +EXPORT_SYMBOL_GPL vmlinux 0x7fc5b4e4 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0x7ffe64d1 crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0x8013c44c rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0x801982aa blk_queue_rq_timed_out +EXPORT_SYMBOL_GPL vmlinux 0x801e87cd pwm_request +EXPORT_SYMBOL_GPL vmlinux 0x8066dcd8 inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x80675623 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x806a26f2 acpi_bus_trim +EXPORT_SYMBOL_GPL vmlinux 0x8088bea6 __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x809541a2 __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x80af2cb2 usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80f3268f __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x8120bf98 ata_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x8140842a gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x8149ea54 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0x8153fc39 regmap_fields_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x81631130 __pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x817bfefd fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0x818249c7 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x8186561a dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x81b7aad7 sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x81e4d30c hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0x820aa9f4 __init_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0x8213812a pinctrl_force_sleep +EXPORT_SYMBOL_GPL vmlinux 0x821bcb96 ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0x8221b444 trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x822b611d device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8237e9be crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0x8257555f xen_swiotlb_dma_mapping_error +EXPORT_SYMBOL_GPL vmlinux 0x8258bc96 usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0x828fc40c register_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0x82939ebd rcu_batches_completed_sched +EXPORT_SYMBOL_GPL vmlinux 0x82b9d633 tty_prepare_flip_string_flags +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82dbec19 erst_write +EXPORT_SYMBOL_GPL vmlinux 0x82f89884 wakeup_source_prepare +EXPORT_SYMBOL_GPL vmlinux 0x8318eb66 clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8338ccfa md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x833ccbae hypervisor_kobj +EXPORT_SYMBOL_GPL vmlinux 0x834616bb sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x83789de7 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x838b13e7 ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0x838f2438 fuse_get_req_for_background +EXPORT_SYMBOL_GPL vmlinux 0x83a42a03 __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x83a5ae2e __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0x83a85e8d usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x83d9936d get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0x83deb03d debugfs_remove_recursive +EXPORT_SYMBOL_GPL vmlinux 0x8420755a rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0x8420bccd cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0x8438edab ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x843d70ef acpi_is_root_bridge +EXPORT_SYMBOL_GPL vmlinux 0x84d1b21c anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0x84e19c1b blkio_subsys +EXPORT_SYMBOL_GPL vmlinux 0x84f7a641 cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0x85050965 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x850670db ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x8527fa93 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x853c20be ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0x85526eef usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0x85558bc5 crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x856629e7 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x856a4064 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0x8574010b wm8350_device_exit +EXPORT_SYMBOL_GPL vmlinux 0x8574ca6c gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x85765674 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0x8576dfda hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x8595d8b8 xen_swiotlb_sync_single_for_device +EXPORT_SYMBOL_GPL vmlinux 0x85b14d33 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x85c10896 rcu_batches_completed_bh +EXPORT_SYMBOL_GPL vmlinux 0x85c7f674 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x85cb2c45 xen_has_pv_devices +EXPORT_SYMBOL_GPL vmlinux 0x85d7edfd hpet_set_periodic_freq +EXPORT_SYMBOL_GPL vmlinux 0x85fed29e sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x861ae0aa dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0x86547d17 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0x86623fd7 notify_remote_via_irq +EXPORT_SYMBOL_GPL vmlinux 0x8663c59a acpi_subsys_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x866b9687 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x8675e2da rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x8690518f pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x8692e98c rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x86965a88 usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x869a62f9 tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0x86a09b70 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0x86a51007 gnttab_end_foreign_transfer +EXPORT_SYMBOL_GPL vmlinux 0x86a51333 regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x86aa16e6 klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x86aed0b4 pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x86c86ecc pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0x86d754a0 devm_spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x870e16b7 xen_test_irq_shared +EXPORT_SYMBOL_GPL vmlinux 0x871d9928 debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0x872652bd fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0x87359935 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x873fbaea edac_atomic_assert_error +EXPORT_SYMBOL_GPL vmlinux 0x874a9367 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0x87545ab5 unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x8757ddbb virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0x87624877 rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x8776f614 sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x878ae634 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x87984b16 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x8810ad5e crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0x8831f8b1 kmap_atomic_pfn +EXPORT_SYMBOL_GPL vmlinux 0x883c2740 __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x884204d5 disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x88644ada vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x8881242c crypto_nivaead_type +EXPORT_SYMBOL_GPL vmlinux 0x8888c704 pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0x8892311a xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0x88960c33 shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b0844e btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0x88b5647c trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x88bbb515 led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0x88e29dbb skcipher_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x88e4a649 dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0x891a5a7f gnttab_max_grant_frames +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x89502f0c gnttab_subpage_grants_available +EXPORT_SYMBOL_GPL vmlinux 0x8956aeae apei_exec_ctx_init +EXPORT_SYMBOL_GPL vmlinux 0x8969b2fa ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8977e1b3 xen_swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0x89804b20 blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x898e0e69 user_describe +EXPORT_SYMBOL_GPL vmlinux 0x899851ea spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x89a875ac sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89bf0884 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0x89cb64af ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x89dbdcc1 __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0x8a04b9fe tracepoint_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0x8a05365f dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x8a0b108e regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0x8a0cd944 extcon_find_cable_index +EXPORT_SYMBOL_GPL vmlinux 0x8a2b14ba wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x8a317b94 _submit_bh +EXPORT_SYMBOL_GPL vmlinux 0x8a4da630 device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x8a75c225 led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8a78989f irq_from_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x8a7cb9c4 platform_thermal_package_rate_control +EXPORT_SYMBOL_GPL vmlinux 0x8a84d0ae skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0x8a99a8d2 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ad6ad84 usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0x8b04668e bind_interdomain_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x8b3c1284 show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0x8b59b990 usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x8b66f9e0 xen_platform_pci_unplug +EXPORT_SYMBOL_GPL vmlinux 0x8b978794 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0x8bc42838 extcon_get_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x8bdae15d serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0x8bf14aee acpi_dev_pm_detach +EXPORT_SYMBOL_GPL vmlinux 0x8bf3759d debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c06a108 xenbus_transaction_start +EXPORT_SYMBOL_GPL vmlinux 0x8c531454 ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0x8c5b3669 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x8c5d0ec6 scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x8c718bd0 eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0x8c752bba crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0x8cd6a31e acpi_ec_add_query_handler +EXPORT_SYMBOL_GPL vmlinux 0x8cd9f935 setup_APIC_eilvt +EXPORT_SYMBOL_GPL vmlinux 0x8ce68666 cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0x8d015d06 usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d3d2fac devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0x8d4f8d12 bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0x8d522714 __rcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0x8d7136f2 ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0x8d989e9f sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0x8dcef430 pinctrl_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x8e050d6b wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0x8e10375a shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x8e223dbf clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0x8e22c674 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0x8e32239c irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0x8e42e883 lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x8e6c6d29 rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0x8e6fe831 cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x8e8e57fb tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x8e905157 replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0x8e93d886 tps65912_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x8e9c7933 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x8ea960cb blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8eafff5c rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x8edfb574 injectm +EXPORT_SYMBOL_GPL vmlinux 0x8eee9bc7 invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0x8effebd3 pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x8f4934bc acpi_dev_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x8f599c69 crypto_tfm_in_queue +EXPORT_SYMBOL_GPL vmlinux 0x8f627bd3 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f902a2c gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x8f9ed508 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x8fa22f02 regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0x8fb30b07 xenbus_watch_pathfmt +EXPORT_SYMBOL_GPL vmlinux 0x8fbac9c1 crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0x8fbd430f cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0x8fd134a5 inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x8ff03bd6 pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0x8ffa3f76 __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0x9001c61b seq_open_net +EXPORT_SYMBOL_GPL vmlinux 0x9009602a acpi_bus_get_ejd +EXPORT_SYMBOL_GPL vmlinux 0x90121d52 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0x90147a9a scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0x901c74ec bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0x901c8d5a ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0x90228869 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x9027e149 __mmu_notifier_invalidate_range_end +EXPORT_SYMBOL_GPL vmlinux 0x90379db1 serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0x9062c322 ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x906f3e6f dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0x90705b7f syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x907515ce ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x907fb4b1 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0x90a1004a crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x90de0452 platform_thermal_package_notify +EXPORT_SYMBOL_GPL vmlinux 0x90e09ceb xenbus_free_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x91224d1b iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0x91286982 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x9144dc5e acpi_pci_check_ejectable +EXPORT_SYMBOL_GPL vmlinux 0x918ad429 ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x918e0d39 virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0x919cb703 xfrm_inner_extract_output +EXPORT_SYMBOL_GPL vmlinux 0x91a713c9 pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x91db642c public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0x91e5e10d regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0x91f5ffdc gpiochip_add +EXPORT_SYMBOL_GPL vmlinux 0x9210399e ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x922a99c5 md_is_badblock +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x925ac241 lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0x92727e01 efivars_unregister +EXPORT_SYMBOL_GPL vmlinux 0x929c467f btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0x92b57248 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x92c2428d i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92e2df37 fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x92e35dc1 device_register +EXPORT_SYMBOL_GPL vmlinux 0x92e42365 usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0x92f8aa4d bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x9312d80e evtchn_put +EXPORT_SYMBOL_GPL vmlinux 0x932303bd pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0x9324e78e acpi_dev_resource_memory +EXPORT_SYMBOL_GPL vmlinux 0x933c524b efivar_entry_delete +EXPORT_SYMBOL_GPL vmlinux 0x934ba85e __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x934d85ca do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x93527580 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0x93597f1b single_release_net +EXPORT_SYMBOL_GPL vmlinux 0x93925ea4 arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x93bfd13f xen_swiotlb_set_dma_mask +EXPORT_SYMBOL_GPL vmlinux 0x9406c21e tpm_show_enabled +EXPORT_SYMBOL_GPL vmlinux 0x94194237 handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x94321c26 mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x943fc708 xen_setup_shutdown_event +EXPORT_SYMBOL_GPL vmlinux 0x9456648a platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x946ca9dc list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x948ec4ba regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x94a68723 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x94abb745 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0x94bf14d5 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x94c318be apei_exec_collect_resources +EXPORT_SYMBOL_GPL vmlinux 0x94ec578c pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x9530a590 pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x9551acf8 tcp_done +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x956162df acpi_register_gsi +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95c55148 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x95db581d pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x95fa2af0 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x95fece07 iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0x96031181 rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x9604f045 ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x9618a39c tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0x961a062f devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x9621849f ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x963b0ab1 page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x964add15 xenbus_scanf +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x965f5b39 pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0x967b11fc cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0x969216a6 key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x9693461d regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0x96a22790 vmcore_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x96a81c18 rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0x96dc91bc sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0x970c954f regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x970ed5a4 devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x97134d26 tpm_show_temp_deactivated +EXPORT_SYMBOL_GPL vmlinux 0x972769d3 iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0x9730c462 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x973bce28 rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x974e3627 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0x9764c842 driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0x9771f91b xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x97771490 sysfs_get_dirent_ns +EXPORT_SYMBOL_GPL vmlinux 0x97a3ec56 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x97b093dd btree_update +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97e7f4dd __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x97f3ff06 crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x98197f12 ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x985b96f3 reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x98741ac7 da903x_write +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9891121b usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0x98bb1e99 debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x991d5bb9 pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x9924c496 __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x9973add9 __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x99770914 cpufreq_governor_dbs +EXPORT_SYMBOL_GPL vmlinux 0x99a645cd ping_close +EXPORT_SYMBOL_GPL vmlinux 0x99b91f4a wm8400_block_read +EXPORT_SYMBOL_GPL vmlinux 0x99c3f2d7 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x99c87be9 pinctrl_utils_add_map_mux +EXPORT_SYMBOL_GPL vmlinux 0x99d3deef blkg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x99f05fb8 pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x99f5dd61 irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0x9a00e220 xenbus_unmap_ring +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a5b5921 aead_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0x9a89dbf7 lpddr2_jedec_min_tck +EXPORT_SYMBOL_GPL vmlinux 0x9a9824ef btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9aaa1208 pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9ac7df5a thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9ac7ea07 devres_find +EXPORT_SYMBOL_GPL vmlinux 0x9aca444b get_monotonic_boottime +EXPORT_SYMBOL_GPL vmlinux 0x9ad81d75 crypto_ablkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x9ae1c1ba tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0x9ae4991b blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9b38a964 vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0x9b5c2385 percpu_ida_free_tags +EXPORT_SYMBOL_GPL vmlinux 0x9b5d9d58 ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0x9b6c653a input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9b80e64d attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9b8182e3 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x9b8d9503 hv_register_vmbus_handler +EXPORT_SYMBOL_GPL vmlinux 0x9b8e0691 ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9b9f3648 pcibios_scan_specific_bus +EXPORT_SYMBOL_GPL vmlinux 0x9ba90148 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x9babf390 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0x9bd72b78 apei_write +EXPORT_SYMBOL_GPL vmlinux 0x9bd762ef uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0x9bdffdd9 crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0x9be16099 fat_detach +EXPORT_SYMBOL_GPL vmlinux 0x9be460d4 dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9c091d51 arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0x9c0bef76 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0x9c2b0943 devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x9c2e4b66 acpi_unregister_gsi +EXPORT_SYMBOL_GPL vmlinux 0x9c31902a blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0x9c58e411 wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0x9c7972df ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0x9c963681 xenbus_unmap_ring_vfree +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9cc856f4 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0x9cd0184d init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x9cda40cb sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x9d030b99 stop_machine +EXPORT_SYMBOL_GPL vmlinux 0x9d06688b register_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0x9d0c89a0 trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x9d0ca2a4 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0x9d138533 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x9d2099ce uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0x9d2ad761 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x9d3850e1 gnttab_alloc_grant_references +EXPORT_SYMBOL_GPL vmlinux 0x9d5702f7 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9d62c898 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x9d6735ea wm8400_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x9d8048c6 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x9d8331c0 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x9da14081 sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x9db33005 platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9dcfaf53 perf_trace_buf_prepare +EXPORT_SYMBOL_GPL vmlinux 0x9de7c585 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0x9dfdf722 gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0x9e8bbc86 wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x9e980b8a irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x9ea816f1 regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0x9eabb2f0 spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0x9ebff902 start_thread +EXPORT_SYMBOL_GPL vmlinux 0x9ec26efb led_trigger_store +EXPORT_SYMBOL_GPL vmlinux 0x9ecd9b36 usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9efcc455 vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0x9eff0a69 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x9f0664bf dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0x9f126337 dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x9f212dc4 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0x9f92588e driver_register +EXPORT_SYMBOL_GPL vmlinux 0x9fc89ff8 proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fd39ee8 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x9fe6f299 __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0xa0208e02 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0xa0699624 devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0xa0806129 i2c_unlock_adapter +EXPORT_SYMBOL_GPL vmlinux 0xa0c25e88 ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL vmlinux 0xa0dadbd3 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0xa0fca532 ata_base_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xa111a17b pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xa11216be xen_store_domain_type +EXPORT_SYMBOL_GPL vmlinux 0xa12d929d desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xa156a1f2 erst_get_record_id_end +EXPORT_SYMBOL_GPL vmlinux 0xa159c48f extcon_unregister_interest +EXPORT_SYMBOL_GPL vmlinux 0xa15d3c0b clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0xa171733d shake_page +EXPORT_SYMBOL_GPL vmlinux 0xa1878977 scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0xa196db7f rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0xa19f8f96 inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0xa1b1c7ad usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0xa1bd7822 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xa1c1b6e0 usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0xa1c976ee regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xa1d00b5a put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xa1e532bd dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0xa1e7495f put_pid +EXPORT_SYMBOL_GPL vmlinux 0xa1e970a5 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0xa1ee1de9 rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0xa1f4498d pinctrl_remove_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xa1f79553 xen_create_contiguous_region +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa27cb33b kobj_completion_init +EXPORT_SYMBOL_GPL vmlinux 0xa2928c55 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0xa29c8bdd usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xa2af8dff sysfs_put +EXPORT_SYMBOL_GPL vmlinux 0xa2b2817b devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xa2b9c993 clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0xa2cc008b fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0xa2e97f1c default_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0xa2f09988 lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0xa313d675 sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0xa353fffc xenbus_rm +EXPORT_SYMBOL_GPL vmlinux 0xa36ca79f sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0xa36cc444 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa378c99a dbs_check_cpu +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa38ca244 crypto_init_shash_spawn +EXPORT_SYMBOL_GPL vmlinux 0xa3984328 tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3e7c113 ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0xa3e944ab i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xa3ef0066 tpm_show_caps +EXPORT_SYMBOL_GPL vmlinux 0xa3f06f08 bmp085_remove +EXPORT_SYMBOL_GPL vmlinux 0xa3fb9411 usb_string +EXPORT_SYMBOL_GPL vmlinux 0xa409c665 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa40b95da scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xa410c7c0 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xa422c011 dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0xa432d0aa blk_unprep_request +EXPORT_SYMBOL_GPL vmlinux 0xa44831e7 inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0xa452c297 hpet_mask_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa452f2a4 xen_pirq_from_irq +EXPORT_SYMBOL_GPL vmlinux 0xa45a0795 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xa45d71aa __pci_complete_power_transition +EXPORT_SYMBOL_GPL vmlinux 0xa466de38 acpi_processor_ffh_cstate_enter +EXPORT_SYMBOL_GPL vmlinux 0xa47a6f12 dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa48677a9 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0xa488e202 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0xa48ae8a9 devm_acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0xa4d58669 math_state_restore +EXPORT_SYMBOL_GPL vmlinux 0xa4daef6d scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0xa4f097ba ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0xa5544f0f regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa554c86e generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0xa5603b54 __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0xa5a55d54 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0xa5bb4ae7 __inet_hash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0xa5bceb0a devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xa5be4f5d __rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0xa5bfd98c acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa5f57ec2 devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xa609e8f7 ata_scsi_simulate +EXPORT_SYMBOL_GPL vmlinux 0xa6127ab7 rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xa61b1477 tracepoint_iter_start +EXPORT_SYMBOL_GPL vmlinux 0xa625110d kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0xa62892c6 efivar_sysfs_list +EXPORT_SYMBOL_GPL vmlinux 0xa636e01b acpi_dev_resume_early +EXPORT_SYMBOL_GPL vmlinux 0xa682d0ec bus_find_device_by_name +EXPORT_SYMBOL_GPL vmlinux 0xa6a0a273 max77693_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xa6a4f958 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6cf3d3f efivar_entry_remove +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa70ba4a5 tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0xa70c34a2 cgroup_taskset_next +EXPORT_SYMBOL_GPL vmlinux 0xa720feff rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xa724257f init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0xa72e9c84 usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xa73d7612 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0xa7510d89 led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0xa75312bc call_rcu_sched +EXPORT_SYMBOL_GPL vmlinux 0xa75811d0 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xa75b5547 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0xa78c4d9b pinctrl_find_gpio_range_from_pin +EXPORT_SYMBOL_GPL vmlinux 0xa79bdfed swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0xa7e13f43 dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0xa7f279bb need_load_eval +EXPORT_SYMBOL_GPL vmlinux 0xa7f92105 add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0xa801b359 efivar_entry_iter_begin +EXPORT_SYMBOL_GPL vmlinux 0xa83e73dc palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa85215ce usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0xa8709f51 devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0xa8722075 rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0xa8a1b1d7 class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xa8a8b18e usb_acpi_power_manageable +EXPORT_SYMBOL_GPL vmlinux 0xa8c3b6a3 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0xa8caf474 sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0xa8d666e7 max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xa8d903e1 ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0xa8e3bdc9 tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xa8ea693f page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0xa8fc54f7 register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xa9104a74 virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0xa9126bff hpet_set_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa95f5b39 platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0xa968e5fc inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0xa96980f0 ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xa97b496e device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0xa980af16 RSA_public_key_algorithm +EXPORT_SYMBOL_GPL vmlinux 0xa985756d ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0xa9932777 xenbus_probe_devices +EXPORT_SYMBOL_GPL vmlinux 0xa9a82042 gnttab_trans_grants_available +EXPORT_SYMBOL_GPL vmlinux 0xa9a8fc0b md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0xa9e0a5d9 i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0xa9e1342d do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9e3ca3a ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0xa9fc3f54 gnttab_grant_foreign_access_trans +EXPORT_SYMBOL_GPL vmlinux 0xaa2a72bf __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0xaa32889b blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0xaa45c131 tpm_show_pcrs +EXPORT_SYMBOL_GPL vmlinux 0xaa8ea57f __class_register +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaac361c4 task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xab01acbe gnttab_request_free_callback +EXPORT_SYMBOL_GPL vmlinux 0xab01e0d4 crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0xab119f89 pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0xab3b58ca platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0xab4cc2fd __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xab6babaf pm_qos_request +EXPORT_SYMBOL_GPL vmlinux 0xab7d8f7c register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0xab908aa6 sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xabb06e9b blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0xabb1c5f6 xenbus_dev_changed +EXPORT_SYMBOL_GPL vmlinux 0xac0d94da usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0xac1ae497 pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xac335579 device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xac382a74 cgroup_load_subsys +EXPORT_SYMBOL_GPL vmlinux 0xac9ce195 kvm_async_pf_task_wait +EXPORT_SYMBOL_GPL vmlinux 0xacaa490b wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0xacafa8e7 vector_used_by_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xace5c0fc usb_bus_list +EXPORT_SYMBOL_GPL vmlinux 0xad1c1ac1 dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0xad1e8890 iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0xad317b46 rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0xad339092 pci_get_hp_params +EXPORT_SYMBOL_GPL vmlinux 0xad376749 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0xad3e3159 sis_info133_for_sata +EXPORT_SYMBOL_GPL vmlinux 0xad3f695d inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xad602d2f pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0xad831b6a thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0xad8d8ab0 xen_physdev_op_compat +EXPORT_SYMBOL_GPL vmlinux 0xad98ee26 extcon_set_cable_state +EXPORT_SYMBOL_GPL vmlinux 0xad9a2dc2 sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0xadc785ec kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0xade7237e rtc_irq_set_freq +EXPORT_SYMBOL_GPL vmlinux 0xadf2db4f ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0xadf6aa4d tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xae069076 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0xae4c3689 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae6eaf93 hwpoison_filter_dev_minor +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae7c5411 ms_hyperv +EXPORT_SYMBOL_GPL vmlinux 0xae7c7cbc usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0xae8ff0b9 rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0xaea68a11 usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xaed2fded sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xaedcb0c8 acpi_preset_companion +EXPORT_SYMBOL_GPL vmlinux 0xaef1b1a9 pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0xaf0383f3 ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0xaf11e7a8 sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0xaf16c97e pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0xaf3b41f1 thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0xaf49fda7 hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xaf4e44a3 rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xaf7c763a firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0xaf8b72b9 ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xaf962c57 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0xafa2b7b9 leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xafb0fba9 dev_hard_start_xmit +EXPORT_SYMBOL_GPL vmlinux 0xafb23d81 __get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0xafc3faab hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0xafc6f4c8 pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xafdfb2ba sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xaff36f83 ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0xb018c0ff __mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0xb02ac411 register_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb056919b inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0xb084d995 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0dc91c7 acpi_ec_remove_query_handler +EXPORT_SYMBOL_GPL vmlinux 0xb0f9b781 usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xb10d55bc cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0xb11b883c xenbus_dev_probe +EXPORT_SYMBOL_GPL vmlinux 0xb11ea4b8 pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0xb13f0486 verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xb140d14c ring_buffer_read +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb14a6693 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0xb169ad4e fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0xb16a64f3 rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xb16ff26f task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0xb172ffac efivars_sysfs_init +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb1a7e3f6 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0xb1acbcce rcu_barrier_sched +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1c0c1c2 async_schedule_domain +EXPORT_SYMBOL_GPL vmlinux 0xb1cf2ef7 fuse_request_send +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb20bd21e dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb2275cde get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0xb22c1832 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0xb235b792 usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0xb26e3259 cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0xb2760a54 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0xb2bd6e18 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0xb2c94f08 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb2e8ca0c ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0xb307333f ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0xb30f44ba agp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0xb3169008 disk_get_part +EXPORT_SYMBOL_GPL vmlinux 0xb3253ed9 hpet_rtc_timer_init +EXPORT_SYMBOL_GPL vmlinux 0xb37e1b8d usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0xb383c4e3 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xb39f466f da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0xb3a14e80 devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb3c43d2c regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0xb3c781ba pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0xb3d102f4 class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xb3db25e5 usb_bus_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xb3de8ae0 ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xb3f73d40 xen_unmap_domain_mfn_range +EXPORT_SYMBOL_GPL vmlinux 0xb3fba4dc iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0xb40d7f8f shash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0xb423cec2 regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xb43a7383 sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0xb47ff84c pwm_enable +EXPORT_SYMBOL_GPL vmlinux 0xb48caaee ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4c1ae08 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0xb4e14553 gnttab_query_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb519dd55 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb5229183 dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0xb53620d1 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0xb53d8d95 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0xb544818e css_rightmost_descendant +EXPORT_SYMBOL_GPL vmlinux 0xb58dcfa2 synchronize_sched_expedited +EXPORT_SYMBOL_GPL vmlinux 0xb5a0e11e lpddr2_jedec_addressing_table +EXPORT_SYMBOL_GPL vmlinux 0xb5cb8145 hrtimer_get_res +EXPORT_SYMBOL_GPL vmlinux 0xb5e896fb tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0xb5f17edf perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb6212caa alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0xb6230f1f gnttab_grant_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb66421b2 acpi_str_to_uuid +EXPORT_SYMBOL_GPL vmlinux 0xb6682cc5 usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xb678a64c ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0xb67b2219 cm_suspend_again +EXPORT_SYMBOL_GPL vmlinux 0xb67c64fd __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0xb680901d dma_buf_kunmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0xb6aeb661 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xb6b59c64 udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb6bc49a9 __supported_pte_mask +EXPORT_SYMBOL_GPL vmlinux 0xb6c635af wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb6c9fe29 tps65912_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0xb6ca1512 xenbus_read_otherend_details +EXPORT_SYMBOL_GPL vmlinux 0xb6dc8788 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xb6f1dca3 uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0xb6f2c578 __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0xb6f4fa83 blk_queue_dma_drain +EXPORT_SYMBOL_GPL vmlinux 0xb701c2be usb_acpi_set_power_state +EXPORT_SYMBOL_GPL vmlinux 0xb709e339 efivar_validate +EXPORT_SYMBOL_GPL vmlinux 0xb714246f register_mce_write_callback +EXPORT_SYMBOL_GPL vmlinux 0xb718f2f9 sfi_table_parse +EXPORT_SYMBOL_GPL vmlinux 0xb728330c __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0xb728753c acpi_unbind_one +EXPORT_SYMBOL_GPL vmlinux 0xb77156c7 register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0xb7779e73 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb7800661 ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0xb785c5be regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xb7a7675b sec_reg_update +EXPORT_SYMBOL_GPL vmlinux 0xb7cf9294 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0xb7d7c12e hpet_set_alarm_time +EXPORT_SYMBOL_GPL vmlinux 0xb7dfbbc9 console_drivers +EXPORT_SYMBOL_GPL vmlinux 0xb7e318c2 ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0xb7ea50ff platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0xb7f77027 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0xb8155fed aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb86bcceb klist_next +EXPORT_SYMBOL_GPL vmlinux 0xb88d239c init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0xb8a023e8 crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0xb8b2b1f7 mce_register_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0xb8d0e27c sk_unattached_filter_create +EXPORT_SYMBOL_GPL vmlinux 0xb8eb1bbd __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xb903674c scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0xb9176155 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0xb91bf24b devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0xb92ac419 stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xb92d6b13 kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0xb941c98e regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0xb954d030 regmap_update_bits_check +EXPORT_SYMBOL_GPL vmlinux 0xb999f00c alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0xb99d5837 xenbus_read +EXPORT_SYMBOL_GPL vmlinux 0xb9b425a6 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0xb9b432f2 regulator_set_optimum_mode +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9da2997 snmp_fold_field64 +EXPORT_SYMBOL_GPL vmlinux 0xb9e43711 usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0xb9f6829a class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xb9fa4763 __efivar_entry_iter +EXPORT_SYMBOL_GPL vmlinux 0xba1ff78a ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0xba2b90f5 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0xba304d16 usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0xba61bcf9 seq_release_net +EXPORT_SYMBOL_GPL vmlinux 0xba7405dd bio_trim +EXPORT_SYMBOL_GPL vmlinux 0xba8c5d0b pci_sriov_migration +EXPORT_SYMBOL_GPL vmlinux 0xbab82db7 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0xbace5007 irq_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0xbafd5a19 crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0xbb038ce4 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb11845b spi_setup +EXPORT_SYMBOL_GPL vmlinux 0xbb483396 extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0xbb58b814 iomap_free +EXPORT_SYMBOL_GPL vmlinux 0xbb7362b0 clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0xbb892c16 ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0xbba7ec2b ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xbbb98859 edid_info +EXPORT_SYMBOL_GPL vmlinux 0xbbd4f657 xen_pcpu_id +EXPORT_SYMBOL_GPL vmlinux 0xbc344472 ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0xbc58ee73 rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0xbc64d555 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0xbc6897b8 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0xbc7d702e tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0xbc8d9b45 __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0xbc8e8b96 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0xbc93cf2c swiotlb_tbl_map_single +EXPORT_SYMBOL_GPL vmlinux 0xbca0201a sfi_mrtc_array +EXPORT_SYMBOL_GPL vmlinux 0xbcac6160 pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbcb7f60d usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xbcb838a1 amd_flush_garts +EXPORT_SYMBOL_GPL vmlinux 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbd2d05ef acpi_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0xbd506a46 unregister_hotplug_dock_device +EXPORT_SYMBOL_GPL vmlinux 0xbd5cb8b9 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0xbd6972b4 skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0xbd6d2f04 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0xbd7a37d5 da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xbd94e81e device_create_vargs +EXPORT_SYMBOL_GPL vmlinux 0xbdae5cc4 ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xbdb246b5 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0xbdb257ba hrtimer_start +EXPORT_SYMBOL_GPL vmlinux 0xbdb4fcfa dm_kill_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0xbdbf022c regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0xbdd0cc11 xen_xenbus_fops +EXPORT_SYMBOL_GPL vmlinux 0xbdd295f0 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xbdd2f42a rcu_bh_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0xbdd5f10f apei_hest_parse +EXPORT_SYMBOL_GPL vmlinux 0xbddb3452 of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xbe1887e4 ata_unpack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xbe52ba13 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xbe596218 inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0xbe6089db do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xbe7166e9 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0xbe878d63 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbee30db5 blk_add_request_payload +EXPORT_SYMBOL_GPL vmlinux 0xbef5be2e usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf0add0f crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xbf1dff4a pci_pri_enabled +EXPORT_SYMBOL_GPL vmlinux 0xbf2383b7 ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xbf602120 dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0xbf68a036 rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL vmlinux 0xbfc0e309 usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0xbfc0e31c da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xbfc4498d i2c_lock_adapter +EXPORT_SYMBOL_GPL vmlinux 0xbff22f1e pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0xbffcb3b7 acpi_os_get_iomem +EXPORT_SYMBOL_GPL vmlinux 0xc00131cf visitor64 +EXPORT_SYMBOL_GPL vmlinux 0xc00d57eb ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0xc06b989b sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xc07fcf5e netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc08647ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc087adeb usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0xc090648e regmap_fields_write +EXPORT_SYMBOL_GPL vmlinux 0xc091d637 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0xc0b99f16 ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0xc0bf6ead timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xc0d01bc0 percpu_ref_cancel_init +EXPORT_SYMBOL_GPL vmlinux 0xc0d26387 kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc0e75cec visitor128 +EXPORT_SYMBOL_GPL vmlinux 0xc0ee72f9 dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0xc1123d0a alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0xc11b4470 balloon_stats +EXPORT_SYMBOL_GPL vmlinux 0xc11b45c6 gpiod_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xc11bd00f tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc126439e tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0xc13ccc21 get_device +EXPORT_SYMBOL_GPL vmlinux 0xc159852b ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0xc164642e xenbus_otherend_changed +EXPORT_SYMBOL_GPL vmlinux 0xc1713ad0 pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc18578ed process_srcu +EXPORT_SYMBOL_GPL vmlinux 0xc1b4e6e7 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc1dc0d5d acpi_find_child +EXPORT_SYMBOL_GPL vmlinux 0xc1e06ad1 led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0xc205fa4e synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0xc225a939 pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0xc2296729 iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc2348a99 register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0xc24cc272 xen_swiotlb_sync_sg_for_device +EXPORT_SYMBOL_GPL vmlinux 0xc26351f8 bind_evtchn_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc2939ad4 usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0xc2cc575e ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc2fa376f devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xc2feb01e usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0xc310fb4c ping_err +EXPORT_SYMBOL_GPL vmlinux 0xc33245c6 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc34efe27 snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0xc368ead8 regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0xc36d4c39 unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xc37226a5 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xc39189b0 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0xc393fbb2 tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0xc3a9e963 extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc3a9f354 xen_swiotlb_map_sg_attrs +EXPORT_SYMBOL_GPL vmlinux 0xc3bef09f watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xc3c1cb60 usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xc3c476e7 scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0xc3e33292 regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc40cc1fd usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xc41154b5 mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc411fd8e ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc41503e2 usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0xc41f2f79 rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc434ce6c ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0xc43d52e7 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0xc44d2722 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0xc4641afe powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0xc47b9665 pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc4bbb5ea ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0xc4c8086a tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0xc4d9dd0d regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc5065dd6 regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xc5397da6 xenbus_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xc54a87cb sysfs_notify_dirent +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc5946385 spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0xc5a581da cpufreq_table_validate_and_show +EXPORT_SYMBOL_GPL vmlinux 0xc5bab3fe btree_init +EXPORT_SYMBOL_GPL vmlinux 0xc5d2373d smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xc5d37180 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0xc5f62542 pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0xc60f75ec __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc63a1109 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc65d3eed ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc664ffa3 swiotlb_tbl_unmap_single +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc6711f44 crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0xc676279e relay_flush +EXPORT_SYMBOL_GPL vmlinux 0xc687f358 mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0xc68aa090 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xc690866c irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc6a45b24 iommu_present +EXPORT_SYMBOL_GPL vmlinux 0xc6c621c0 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0xc6d13e91 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0xc6d7e798 bmp085_detect +EXPORT_SYMBOL_GPL vmlinux 0xc6f34a09 usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xc7002ac4 evtchn_make_refcounted +EXPORT_SYMBOL_GPL vmlinux 0xc71558ef stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xc7270e76 regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xc72e1233 __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xc732767e list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0xc757f8a2 iommu_domain_has_cap +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7c6391c mpi_set_buffer +EXPORT_SYMBOL_GPL vmlinux 0xc7e39bca ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc7e55c06 scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0xc82ae721 inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xc84951fc extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc87c1f84 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xc87e487a sched_clock_idle_sleep_event +EXPORT_SYMBOL_GPL vmlinux 0xc88af05c xenbus_register_frontend +EXPORT_SYMBOL_GPL vmlinux 0xc895ca9d sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0xc89b2f8d ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0xc8add232 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0xc8ce0c44 rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0xc8f615f1 ata_acpi_cbl_80wire +EXPORT_SYMBOL_GPL vmlinux 0xc8ffd31a rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc93c6baf filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0xc94d899c sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc97d1140 cpufreq_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0xc9a81f79 iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xc9c3f176 hpet_register_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xc9d42ddb scsi_internal_device_block +EXPORT_SYMBOL_GPL vmlinux 0xc9e5bb15 thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xc9ff7bfc platform_bus +EXPORT_SYMBOL_GPL vmlinux 0xca09b2a5 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0xca0e530e unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0xca657614 max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xca707814 usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca81ea9a xenbus_transaction_end +EXPORT_SYMBOL_GPL vmlinux 0xca85d8cf tracepoint_probe_update_all +EXPORT_SYMBOL_GPL vmlinux 0xca8b8bbe platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0xca988c14 hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0xcab74001 usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0xcab99655 usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0xcabaa499 input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0xcabc06ee devres_add +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcafa09e7 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0xcb002a41 virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb2ded6f raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0xcb31dbfc wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0xcb469d2b ddebug_add_module +EXPORT_SYMBOL_GPL vmlinux 0xcb4c9cfb ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0xcb6cf82e bdi_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0xcb808fd0 attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0xcb86e424 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0xcb8b5a9b blk_queue_bypass_start +EXPORT_SYMBOL_GPL vmlinux 0xcb9b162e clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0xcba07af7 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0xcbba367d skcipher_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0xcbd04703 irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0xcbdc9f64 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0xcbee20b2 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0xcbf098af key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0xcc0adf83 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0xcc1f1c3d inet_twdr_hangman +EXPORT_SYMBOL_GPL vmlinux 0xcc2c479b rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0xcc3b8132 extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xcc5f3824 fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0xcc6ab305 is_dock_device +EXPORT_SYMBOL_GPL vmlinux 0xcc77fdc1 usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0xcc85fcb6 async_schedule +EXPORT_SYMBOL_GPL vmlinux 0xcc8bc3b0 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccd9b41d rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0xccea4e34 perf_get_x86_pmu_capability +EXPORT_SYMBOL_GPL vmlinux 0xcceff3fe usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xcd1516df register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xcd1c397c unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xcd211559 virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0xcd640680 __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xcd64bf16 da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0xcd86f7e9 dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcda4ec24 sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcde5b1d9 modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xcdfdd5c2 class_destroy +EXPORT_SYMBOL_GPL vmlinux 0xce06c538 dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xce0b9b59 max77693_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xce1b0c29 blkg_stat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0xce46e140 ktime_get_ts +EXPORT_SYMBOL_GPL vmlinux 0xce6a9d9a trace_current_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xceb13b60 efivars_register +EXPORT_SYMBOL_GPL vmlinux 0xcece44a7 dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcef1dd0e perf_check_microcode +EXPORT_SYMBOL_GPL vmlinux 0xcf49c2e4 wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf8af6a6 md_new_event +EXPORT_SYMBOL_GPL vmlinux 0xcf8f8137 unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0xcf91faa7 xenbus_bind_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xcfc62f27 xen_start_info +EXPORT_SYMBOL_GPL vmlinux 0xcfc68341 synchronize_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL vmlinux 0xd036f398 usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xd03c7700 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0xd041019a ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0xd0458ccb xenbus_strstate +EXPORT_SYMBOL_GPL vmlinux 0xd05b0763 pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd070f2e7 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0xd0a2d177 xenbus_switch_state +EXPORT_SYMBOL_GPL vmlinux 0xd0a3d426 cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0c410c0 irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xd0c98c6a vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0xd0dd448a led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0xd0f7613d dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xd12561e0 m2p_remove_override +EXPORT_SYMBOL_GPL vmlinux 0xd1270bf2 anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0xd13b0b63 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0xd13f5743 iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xd14bc4d9 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xd14f5bcf percpu_ida_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd1507e59 erst_clear +EXPORT_SYMBOL_GPL vmlinux 0xd16712f3 crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xd1b2db37 tracepoint_probe_register_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xd1c9cbce regmap_read +EXPORT_SYMBOL_GPL vmlinux 0xd1d4b751 nfq_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xd1fc5218 regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd21161a3 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xd217ce9f wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd2306559 device_move +EXPORT_SYMBOL_GPL vmlinux 0xd2322937 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0xd232dd3a tcp_fetch_timewait_stamp +EXPORT_SYMBOL_GPL vmlinux 0xd243fee5 xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0xd258217d clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0xd264adb7 unregister_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd28b80b7 acpi_match_device +EXPORT_SYMBOL_GPL vmlinux 0xd29666ee pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0xd2972aee cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0xd2a730ab tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xd2aaeb4e kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0xd2c58ab2 apei_exec_noop +EXPORT_SYMBOL_GPL vmlinux 0xd2d4dac8 __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xd30ba963 rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0xd32fe193 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xd3768696 sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xd3d87131 device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0xd3eb9dfa dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0xd3fbb411 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4038c54 regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd4b666fe sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4cad45e clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xd4ccec03 pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xd4ecb86a devm_acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xd518f907 tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0xd544e902 pgprot_writecombine +EXPORT_SYMBOL_GPL vmlinux 0xd550560f __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd55ca633 pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0xd592be34 call_filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0xd5a5987b inet_csk_reqsk_queue_prune +EXPORT_SYMBOL_GPL vmlinux 0xd5bd7dac ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0xd5cfdd1b acpi_dev_get_resources +EXPORT_SYMBOL_GPL vmlinux 0xd5f7a759 isa_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xd643ab78 securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xd648a45d bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0xd65218c0 dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd67c49ba usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0xd67f5217 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd683012d spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0xd68528ae usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0xd6ba1076 pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0xd6c2e04b __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0xd6ed3a8e cper_next_record_id +EXPORT_SYMBOL_GPL vmlinux 0xd6f13ac6 xenbus_match +EXPORT_SYMBOL_GPL vmlinux 0xd6f35970 debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0xd6f41344 iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xd6feefa5 agp_num_entries +EXPORT_SYMBOL_GPL vmlinux 0xd705b4c7 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0xd70fe122 gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0xd72320cd pinctrl_force_default +EXPORT_SYMBOL_GPL vmlinux 0xd72a4a39 rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0xd72feba2 xenbus_read_driver_state +EXPORT_SYMBOL_GPL vmlinux 0xd7399d2a efivar_entry_iter_end +EXPORT_SYMBOL_GPL vmlinux 0xd7417d81 pci_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0xd764dbcd acpi_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd777f57c br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0xd77c0bc8 klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xd7ab2c0c speedstep_detect_processor +EXPORT_SYMBOL_GPL vmlinux 0xd7c05f34 virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0xd7d79132 put_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0xd7ebee94 sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0xd81bda7a pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xd81dbf1c bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0xd81de62c ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xd820c283 eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xd8250a5c iounmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0xd8367af8 ata_acpi_gtm_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xd8525ea7 fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0xd86eb55f irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0xd87601cc ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd887901c pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xd8a33fb0 blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0xd8ad8695 i2c_new_dummy +EXPORT_SYMBOL_GPL vmlinux 0xd8b40252 ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xd8ca80ca __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0xd90121f8 crypto_alloc_pcomp +EXPORT_SYMBOL_GPL vmlinux 0xd90b553a ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xd919806a amd_cache_northbridges +EXPORT_SYMBOL_GPL vmlinux 0xd91dcec5 register_hotplug_dock_device +EXPORT_SYMBOL_GPL vmlinux 0xd928691b usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0xd942d353 ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0xd94b737e erst_read +EXPORT_SYMBOL_GPL vmlinux 0xd9a34035 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0xd9c5a86c blk_rq_check_limits +EXPORT_SYMBOL_GPL vmlinux 0xd9ecb670 ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xd9fd787e xenbus_watch_path +EXPORT_SYMBOL_GPL vmlinux 0xda2cfdc3 acpi_dev_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xda44cb37 setup_charger_manager +EXPORT_SYMBOL_GPL vmlinux 0xda6631be sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0xda714a03 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xdabe7b4c driver_attach +EXPORT_SYMBOL_GPL vmlinux 0xdabf9710 serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0xdaf296b9 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdaf73f88 class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0xdb04cacc tracepoint_probe_unregister_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xdb42df0b key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xdb580386 kallsyms_on_each_symbol +EXPORT_SYMBOL_GPL vmlinux 0xdb5d34e0 rcu_batches_completed_preempt +EXPORT_SYMBOL_GPL vmlinux 0xdb679f1d pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0xdb79de07 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdb98c871 virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0xdba4ad93 static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0xdba92031 device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xdbaa5ac9 rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xdbae6525 ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0xdbce3e3b regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0xdbd9edf0 scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0xdbefcd64 hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc14a211 xen_hvm_evtchn_do_upcall +EXPORT_SYMBOL_GPL vmlinux 0xdc18f27c ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0xdc1e15f1 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xdc2e30bc inet_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0xdc3552e7 ata_do_eh +EXPORT_SYMBOL_GPL vmlinux 0xdc3ca5d9 class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdc4791a9 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0xdc512612 spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0xdc59a32f wakeup_source_drop +EXPORT_SYMBOL_GPL vmlinux 0xdc6698fa da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xdc6699cb acpi_dev_free_resource_list +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc90f70a skb_gro_receive +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdcc055b2 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xdcc15883 user_match +EXPORT_SYMBOL_GPL vmlinux 0xdccd51fe ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0xdcfc2a4e pinctrl_utils_dt_free_map +EXPORT_SYMBOL_GPL vmlinux 0xdd2de088 regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0xdd2efc0f ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0xdd33d79a cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0xdd38ebe6 xenbus_dev_fatal +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd65e519 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0xdd74f27a irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xdd794d33 phys_wc_to_mtrr_index +EXPORT_SYMBOL_GPL vmlinux 0xdda59d47 debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0xddb5de2b list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0xddbdb12f dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0xddc7a298 skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0xddcb40fc crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0xddd58dc0 ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0xddd6f6af thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0xde10f7b6 kick_process +EXPORT_SYMBOL_GPL vmlinux 0xde1f7733 PageHeadHuge +EXPORT_SYMBOL_GPL vmlinux 0xde501e28 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xde747356 intel_msic_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xde8f8d69 pinctrl_dev_get_name +EXPORT_SYMBOL_GPL vmlinux 0xdea4c108 devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xdeab82e4 ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0xdeb8b14f subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xdec4dce3 cgroup_taskset_cur_css +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf17218f watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0xdf1882af dbgp_reset_prep +EXPORT_SYMBOL_GPL vmlinux 0xdf2af64c alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0xdf39a116 da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xdf6580bd __blk_put_request +EXPORT_SYMBOL_GPL vmlinux 0xdf66ca81 ucode_cpu_info +EXPORT_SYMBOL_GPL vmlinux 0xdf734be7 pwm_free +EXPORT_SYMBOL_GPL vmlinux 0xdfa1fd06 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0xdfc30f4c rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xdfca8e68 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0xdff84e77 register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xe003e044 __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0xe007de41 kallsyms_lookup_name +EXPORT_SYMBOL_GPL vmlinux 0xe01ee5f2 pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0xe0270a9b unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0xe02eb6d0 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0xe0309b1e input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0xe06315fe security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0xe07fa1a6 tpm_dev_release +EXPORT_SYMBOL_GPL vmlinux 0xe089cfcc agp_memory_reserved +EXPORT_SYMBOL_GPL vmlinux 0xe0ad8bd3 da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe0ba6f6f tcp_death_row +EXPORT_SYMBOL_GPL vmlinux 0xe0c4c876 kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xe0c77bb5 mce_notify_irq +EXPORT_SYMBOL_GPL vmlinux 0xe0d01f7b wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xe0d0dcb0 m2p_add_override +EXPORT_SYMBOL_GPL vmlinux 0xe0ebe947 sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0xe10057cb usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0xe10cd6ad erst_get_record_id_begin +EXPORT_SYMBOL_GPL vmlinux 0xe12b4c9d xenbus_register_backend +EXPORT_SYMBOL_GPL vmlinux 0xe155924d gnttab_unmap_refs +EXPORT_SYMBOL_GPL vmlinux 0xe165e5ff driver_find +EXPORT_SYMBOL_GPL vmlinux 0xe16b228f spi_async +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe1923c28 efivar_entry_get +EXPORT_SYMBOL_GPL vmlinux 0xe19fec0f power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1c32794 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xe1ddd930 ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0xe1fa3b65 ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0xe2135129 regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0xe224ea64 pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0xe26e46f0 acpi_dev_resource_ext_address_space +EXPORT_SYMBOL_GPL vmlinux 0xe27905f9 wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0xe27f9c05 device_attach +EXPORT_SYMBOL_GPL vmlinux 0xe2859749 mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0xe295c0ff is_hpet_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe2bb9073 put_device +EXPORT_SYMBOL_GPL vmlinux 0xe2cff645 rtc_irq_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe2e7840d regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xe2ea0c60 regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe31a7c99 regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xe32ba111 __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0xe3527dac ahash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0xe35ee798 usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0xe36229b5 pin_is_valid +EXPORT_SYMBOL_GPL vmlinux 0xe36798ee blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0xe367c0e1 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0xe368b1b8 user_update +EXPORT_SYMBOL_GPL vmlinux 0xe384a102 usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0xe3a6421b dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe3bc7fd4 hpet_unregister_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xe3c79b93 usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0xe3d35928 usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xe3d41e5b mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0xe3d46d30 xenbus_dev_groups +EXPORT_SYMBOL_GPL vmlinux 0xe41534ce bind_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0xe417fca5 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0xe426643d scsi_internal_device_unblock +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe438f4e1 xenbus_map_ring_valloc +EXPORT_SYMBOL_GPL vmlinux 0xe439815c erst_get_record_count +EXPORT_SYMBOL_GPL vmlinux 0xe4513faf ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe451b29f usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xe4ad2f2b fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0xe4c1ff84 acpi_pci_find_root +EXPORT_SYMBOL_GPL vmlinux 0xe4c331b6 acpi_os_unmap_memory +EXPORT_SYMBOL_GPL vmlinux 0xe4c4b28f gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xe4e68bc8 apei_map_generic_address +EXPORT_SYMBOL_GPL vmlinux 0xe4e85a82 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0xe507c281 sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0xe518a1bc usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0xe52ae762 __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xe53ac38f alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0xe55d0641 spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58fb452 aer_irq +EXPORT_SYMBOL_GPL vmlinux 0xe594d46f hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0xe598647a usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xe5ad0d04 blkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0xe5dd5b5b tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0xe61e6867 pci_reset_bridge_secondary_bus +EXPORT_SYMBOL_GPL vmlinux 0xe64ad8ea unregister_nmi_handler +EXPORT_SYMBOL_GPL vmlinux 0xe651f76e selinux_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe6587ba7 regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xe65f3f06 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0xe667fcdf usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0xe68a9e12 transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0xe68c68bd iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0xe6a0b099 pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0xe6ba40b1 driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0xe6c68334 ddebug_remove_module +EXPORT_SYMBOL_GPL vmlinux 0xe6e1c5fe uuid_be_gen +EXPORT_SYMBOL_GPL vmlinux 0xe6f50166 __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xe7191a4a ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0xe7232e0f user_return_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe7292ba5 security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xe7485d9e regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0xe748a6ca cpufreq_frequency_table_target +EXPORT_SYMBOL_GPL vmlinux 0xe757f40d extcon_register_interest +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe77c2313 device_create_file +EXPORT_SYMBOL_GPL vmlinux 0xe7836454 ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0xe78aa744 get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0xe78d2b99 pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0xe7ce7bd8 __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe845f812 pci_restore_ats_state +EXPORT_SYMBOL_GPL vmlinux 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe892158c xenbus_map_ring +EXPORT_SYMBOL_GPL vmlinux 0xe8a58198 ata_sas_port_async_resume +EXPORT_SYMBOL_GPL vmlinux 0xe8c6585d tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0xe8e0b2bc ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xe8ffcda7 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0xe910bb33 acpi_get_pci_dev +EXPORT_SYMBOL_GPL vmlinux 0xe93b7d1d usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe94b2717 tpm_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0xe953b1d7 __intel_mid_cpu_chip +EXPORT_SYMBOL_GPL vmlinux 0xe960034c arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xe97018f9 ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0xe9767e86 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0xe97dfd43 bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xe97e9e2f eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0xe9c33a8f rtc_irq_register +EXPORT_SYMBOL_GPL vmlinux 0xe9cce7ae bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0xe9cd017d smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xe9ce931a kvm_para_available +EXPORT_SYMBOL_GPL vmlinux 0xe9eb7070 raw_seq_open +EXPORT_SYMBOL_GPL vmlinux 0xea03d087 blocking_notifier_chain_cond_register +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea418e0f atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0xea5ae95e ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0xea75233a ata_eh_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0xea9bbe0a preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xeab0d3b6 inet6_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0xeac24f07 ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xeae4b668 crypto_alg_lookup +EXPORT_SYMBOL_GPL vmlinux 0xeaf12021 pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0xeafe94d5 pwm_set_polarity +EXPORT_SYMBOL_GPL vmlinux 0xeb065b4c inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xeb1c3628 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xeb2798f7 xen_destroy_contiguous_region +EXPORT_SYMBOL_GPL vmlinux 0xeb2cee1f vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xeb2d3c58 __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xeb370805 __apei_exec_run +EXPORT_SYMBOL_GPL vmlinux 0xeb48c47b xenbus_grant_ring +EXPORT_SYMBOL_GPL vmlinux 0xeb4983de ftrace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0xeb5ddd18 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0xeb833c22 xen_has_pv_disk_devices +EXPORT_SYMBOL_GPL vmlinux 0xeb9643f7 skb_gso_transport_seglen +EXPORT_SYMBOL_GPL vmlinux 0xeb9abbee ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xeba93787 tpm_remove_hardware +EXPORT_SYMBOL_GPL vmlinux 0xebec57c4 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xebf65b53 agp_remove_bridge +EXPORT_SYMBOL_GPL vmlinux 0xec1221bb device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0xec1b043e regulator_suspend_prepare +EXPORT_SYMBOL_GPL vmlinux 0xec25f967 klist_del +EXPORT_SYMBOL_GPL vmlinux 0xec564638 pinctrl_pm_select_idle_state +EXPORT_SYMBOL_GPL vmlinux 0xec57a471 bsg_request_fn +EXPORT_SYMBOL_GPL vmlinux 0xec84beaa get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0xecf9fb08 __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xecffabf2 bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0xed062cf8 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0xed266d4d inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0xed44f5f3 ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0xed54fe72 debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xed55a91d tpm_release +EXPORT_SYMBOL_GPL vmlinux 0xed63f275 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0xed6568e3 platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0xed734341 tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0xed741cd4 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0xed7a336d irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0xed9054fd xen_swiotlb_dma_supported +EXPORT_SYMBOL_GPL vmlinux 0xed9f85cf ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xedbc6f67 gnttab_end_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0xedd49930 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xeddb6f45 clk_register_divider +EXPORT_SYMBOL_GPL vmlinux 0xedf2264d netlink_alloc_skb +EXPORT_SYMBOL_GPL vmlinux 0xedf3f1f1 do_machine_check +EXPORT_SYMBOL_GPL vmlinux 0xedf4adf3 devres_alloc +EXPORT_SYMBOL_GPL vmlinux 0xee3ab259 ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0xee4802af rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee74a0f3 unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0xeeaad034 fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0xeead536b rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xeed0494d pci_configure_slot +EXPORT_SYMBOL_GPL vmlinux 0xeef4688c sysfs_schedule_callback +EXPORT_SYMBOL_GPL vmlinux 0xef0477a7 crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0xef1f6e23 apei_resources_request +EXPORT_SYMBOL_GPL vmlinux 0xef2089d1 stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0xef23d470 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0xef409b74 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef735693 single_open_net +EXPORT_SYMBOL_GPL vmlinux 0xef782b88 gnttab_grant_foreign_access_subpage +EXPORT_SYMBOL_GPL vmlinux 0xef92f8d4 tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xefd04404 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0xefd90d96 rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0xeff24206 d_materialise_unique +EXPORT_SYMBOL_GPL vmlinux 0xeff3732b ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xf029ed35 init_fpu +EXPORT_SYMBOL_GPL vmlinux 0xf03bbed8 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf052c11b uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0xf054ac97 intel_msic_irq_read +EXPORT_SYMBOL_GPL vmlinux 0xf0696401 acpi_pci_detect_ejectable +EXPORT_SYMBOL_GPL vmlinux 0xf0a861d8 da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf0f5dbc2 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0xf13572bd attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0xf156d638 tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0xf184172e pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf186c82f nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xf1aa5773 pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1b551d9 ibft_addr +EXPORT_SYMBOL_GPL vmlinux 0xf1e5ed06 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0xf1f5d2ca blk_queue_bio +EXPORT_SYMBOL_GPL vmlinux 0xf1f966c8 regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xf2105bc7 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf22b3ad8 md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0xf23148a4 cper_estatus_check +EXPORT_SYMBOL_GPL vmlinux 0xf27977e2 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0xf281ed3f task_current_syscall +EXPORT_SYMBOL_GPL vmlinux 0xf28d7847 __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xf2946585 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf2c85436 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xf2ca4415 xen_swiotlb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0xf2e9be5e irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0xf2f077cc pkey_id_type_name +EXPORT_SYMBOL_GPL vmlinux 0xf2f2b182 pstore_register +EXPORT_SYMBOL_GPL vmlinux 0xf2fca922 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0xf30fda27 lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf323bd55 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0xf32bdc5d unregister_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf34597eb regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xf357d550 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0xf361f0ae __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0xf38277ad shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0xf383e1c1 xenbus_dev_cancel +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3c9fe37 sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0xf3cd96b3 devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0xf3e1c863 digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0xf3ea0681 posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf43f0e71 gpio_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xf444915d cgroup_is_descendant +EXPORT_SYMBOL_GPL vmlinux 0xf46c391d x86_hyper_kvm +EXPORT_SYMBOL_GPL vmlinux 0xf46d8d3e __clk_register +EXPORT_SYMBOL_GPL vmlinux 0xf480c086 sec_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xf494f618 mmc_regulator_get_ocrmask +EXPORT_SYMBOL_GPL vmlinux 0xf499fdb2 rcu_barrier_bh +EXPORT_SYMBOL_GPL vmlinux 0xf4c56e71 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0xf4cceec0 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0xf4e10b8f power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0xf4e88ed6 __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xf4f352b4 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0xf4fc2d6c __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf50f0aa1 cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0xf527514e acpi_subsys_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xf52860e7 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xf535371d dm_requeue_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf54e3db1 hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf5785b42 evtchn_get +EXPORT_SYMBOL_GPL vmlinux 0xf5834d65 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xf5859137 dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0xf5945bac gnttab_free_grant_references +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5b36574 ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xf5bebe67 usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0xf5fef4e3 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf602f956 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0xf611cb0e rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0xf6274570 iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0xf67ca12e net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0xf67e1f99 inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xf6cae790 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xf6d7d4ca trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0xf6d87a03 __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf6ed5ce7 pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xf6ed8fab regulator_can_change_voltage +EXPORT_SYMBOL_GPL vmlinux 0xf6efa340 bsg_register_queue +EXPORT_SYMBOL_GPL vmlinux 0xf6fe1fcf extcon_update_state +EXPORT_SYMBOL_GPL vmlinux 0xf7016530 xenbus_gather +EXPORT_SYMBOL_GPL vmlinux 0xf7322bc8 pv_time_ops +EXPORT_SYMBOL_GPL vmlinux 0xf7b9409c crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0xf7daadc3 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0xf7dd224d transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0xf7e9d9bf pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0xf80af5b3 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0xf816c866 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xf8200bfc usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0xf82695f8 rtc_set_mmss +EXPORT_SYMBOL_GPL vmlinux 0xf82f16b3 execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf82fdd96 extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf87ba7cb fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xf8802492 print_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xf88bed94 rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xf88c25ec ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0xf89f8549 pci_intx_mask_supported +EXPORT_SYMBOL_GPL vmlinux 0xf8a64e68 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0xf8b09eef usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0xf8d022fc xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0xf8e9438d fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf8ef129e tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3d0b kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0xf9046ecd sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0xf9093c05 xenbus_alloc_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xf911648b unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xf92ce956 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf94d4f1e device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf96dc42a rtc_irq_set_state +EXPORT_SYMBOL_GPL vmlinux 0xf9765833 dmi_match +EXPORT_SYMBOL_GPL vmlinux 0xf97666a0 set_memory_rw +EXPORT_SYMBOL_GPL vmlinux 0xf99700d0 inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9a43952 bmp085_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xf9bb65c0 posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0xf9ca3160 ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xf9d9264e xen_have_vector_callback +EXPORT_SYMBOL_GPL vmlinux 0xf9daff08 debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0xf9efb1fa __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xfa012fe7 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa1f4662 scatterwalk_start +EXPORT_SYMBOL_GPL vmlinux 0xfa270d91 skcipher_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0xfa4c92b6 pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0xfa935f29 tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0xfaae1df9 cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xfab1f078 fuse_get_req +EXPORT_SYMBOL_GPL vmlinux 0xfaef162d spi_master_resume +EXPORT_SYMBOL_GPL vmlinux 0xfb16b0f8 tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0xfb1736a7 pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xfb23e287 devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb3f19ef ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xfb402b3a pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0xfb5741b0 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0xfb64b230 acpi_processor_ffh_cstate_probe +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb7a3b52 dma_buf_export_named +EXPORT_SYMBOL_GPL vmlinux 0xfb83db03 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xfb9d0045 ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0xfbc1d655 posix_timers_register_clock +EXPORT_SYMBOL_GPL vmlinux 0xfbe38bc4 regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xfbec6f65 regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xfbf4c6bb spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc0c49be regmap_write +EXPORT_SYMBOL_GPL vmlinux 0xfc2c14ef iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0xfc3b4246 acpi_bus_update_power +EXPORT_SYMBOL_GPL vmlinux 0xfc4f4953 alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xfc66aef2 regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0xfc7201f7 sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0xfc8a4aae get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0xfc96512c device_schedule_callback_owner +EXPORT_SYMBOL_GPL vmlinux 0xfc968c8b apei_exec_write_register_value +EXPORT_SYMBOL_GPL vmlinux 0xfcab1599 stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0xfcd0e345 driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfcd7047b sdhci_pci_o2_fujin2_pci_init +EXPORT_SYMBOL_GPL vmlinux 0xfcd7bc0b ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0xfcdc7088 ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0xfd03d3d7 tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0xfd05464b klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0xfd1fb9b3 pci_renumber_slot +EXPORT_SYMBOL_GPL vmlinux 0xfd51b281 gnttab_end_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0xfd673e7a devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xfd7243c7 erst_disable +EXPORT_SYMBOL_GPL vmlinux 0xfd8d539c class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xfd9ffa70 ablkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0xfda45b84 rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0xfda7f6d3 pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0xfdb63b3f tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0xfdc4eae4 dma_buf_kmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0xfdc900b8 usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0xfdcb54a8 blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0xfdeb731f fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0xfe0ca716 debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0xfe297ed3 da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0xfe33d40c spi_master_suspend +EXPORT_SYMBOL_GPL vmlinux 0xfe33ed1e tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0xfe711713 debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0xfe727411 get_phys_to_machine +EXPORT_SYMBOL_GPL vmlinux 0xfe8c2443 fuse_put_request +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfeb9e7e3 fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfeda4e1c look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0xfeeac933 __put_net +EXPORT_SYMBOL_GPL vmlinux 0xfef8a166 trace_current_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff0d09c4 ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0xff5045ba regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff5e6e9a sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0xff5f2b0e __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0xff6036de bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xff7f5181 sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0xff95933a platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0xff9eb407 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0xffa6b046 ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0xffdcc2fa usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0xfff91473 ata_pci_bmdma_init --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/i386/lowlatency.compiler +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/i386/lowlatency.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 4.8.2-19ubuntu1) 4.8.2 --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/i386/lowlatency.modules +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/i386/lowlatency.modules @@ -0,0 +1,4086 @@ +3c509 +3c515 +3c574_cs +3c589_cs +3c59x +3w-9xxx +3w-sas +3w-xxxx +53c700 +6lowpan +6pack +8021q +8139cp +8139too +8250_accent +8250_boca +8250_dw +8250_exar_st16c554 +8250_fourport +8250_hub6 +8255 +8255_pci +8390 +8390p +88pm800 +88pm805 +88pm80x +88pm80x_onkey +88pm860x_battery +88pm860x_bl +88pm860x_charger +88pm860x_onkey +88pm860x-ts +9p +9pnet +9pnet_rdma +9pnet_virtio +a100u2w +a3d +a8293 +aacraid +aat2870_bl +aat2870-regulator +ab3100 +ab3100-otp +abituguru +abituguru3 +ablk_helper +ac97_bus +acard-ahci +acecad +acenic +acerhdf +acer-wmi +acpi_extlog +acpi_ipmi +acpi_pad +acpiphp_ibm +acpi_power_meter +acquirewdt +act2000 +act200l-sir +act_csum +act_gact +act_ipt +actisys-sir +act_mirred +act_nat +act_pedit +act_police +act_simple +act_skbedit +ad2s1200 +ad2s1210 +ad2s90 +ad5064 +ad525x_dpot +ad525x_dpot-i2c +ad525x_dpot-spi +ad5360 +ad5380 +ad5398 +ad5421 +ad5446 +ad5449 +ad5504 +ad5624r_spi +ad5686 +ad5755 +ad5764 +ad5791 +ad5930 +ad5933 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7152 +ad7192 +ad7266 +ad7280a +ad7291 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +ad7476 +ad7606 +ad7746 +ad7780 +ad7791 +ad7793 +ad7816 +ad7877 +ad7879 +ad7879-i2c +ad7879-spi +ad7887 +ad7923 +ad799x +ad8366 +ad9523 +ad9832 +ad9834 +ad9850 +ad9852 +ad9910 +ad9951 +adcxx +addi_apci_035 +addi_apci_1032 +addi_apci_1500 +addi_apci_1516 +addi_apci_1564 +addi_apci_16xx +addi_apci_2032 +addi_apci_2200 +addi_apci_3120 +addi_apci_3501 +addi_apci_3xxx +addi_watchdog +ade7753 +ade7754 +ade7758 +ade7759 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adfs +adi +adis16060 +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16204 +adis16209 +adis16220 +adis16240 +adis16260 +adis16400 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adl_pci9118 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1275 +adm8211 +adm9240 +adp5520_bl +adp5520-keys +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +adq12b +ads1015 +ads7828 +ads7846 +ads7871 +ad_sigma_delta +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adv7170 +adv7175 +adv7180 +advansys +advantechwdt +adv_pci1710 +adv_pci1723 +adv_pci1724 +adv_pci_dio +adxl34x +adxl34x-i2c +adxl34x-spi +adxrs450 +aes-i586 +aesni-intel +af_802154 +af9013 +af9033 +af_alg +affs +af_key +af_packet_diag +af-rxrpc +ah4 +ah6 +aha152x +aha152x_cs +aha1542 +aha1740 +ahci +ahci_platform +aic79xx +aic7xxx +aic94xx +aio_aio12_8 +aio_iiro_16 +aiptek +aircable +airo +airo_cs +ak8975 +algif_hash +algif_skcipher +ali-agp +ali-ircc +alim1535_wdt +alim7101_wdt +alphatrack +altera-ci +altera_jtaguart +altera_ps2 +altera-stapl +altera_uart +alx +ambassador +amc6821 +amd5536udc +amd76x_edac +amd76xrom +amd8111e +amd_freq_sensitivity +amd-rng +amilo-rfkill +amplc_dio200 +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pc263 +amplc_pci224 +amplc_pci230 +amplc_pci263 +ams369fg06 +analog +anatop-regulator +ansi_cprng +anubis +aoe +apanel +apds9300 +apds9802als +apds990x +apm +apple_bl +appledisplay +apple-gmux +applesmc +appletalk +appletouch +applicom +ar5523 +ar7part +arc4 +arcfb +arcmsr +arcnet +arc_ps2 +arc-rawmode +arc-rimi +arc_uart +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +arptable_filter +arp_tables +arpt_mangle +as3711_bl +as3711-regulator +as5011 +asb100 +asc7621 +asix +ast +asus_atk0110 +asus-laptop +asus-nb-wmi +asus-wmi +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at86rf230 +at91_ether +atbm8830 +aten +ath +ath10k_core +ath10k_pci +ath3k +ath5k +ath6kl_core +ath6kl_sdio +ath6kl_usb +ath9k +ath9k_common +ath9k_htc +ath9k_hw +ati-agp +ati_remote +ati_remote2 +atl1 +atl1c +atl1e +atl2 +atlas_btns +atm +atmel +atmel_cs +atmel_mxt_ts +atmel_pci +atmel_pwm +atmel-pwm-bl +atmel-ssc +atmtcp +atp +atp870u +atxp1 +aty128fb +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo_k1900fb +auo_k1901fb +auo_k190x +auo-pixcir-ts +authenc +authencesn +auth_rpcgss +autofs4 +avma1_cs +avm_cs +avmfritz +ax25 +ax88179_178a +axnet_cs +b1 +b1dma +b1isa +b1pci +b1pcmcia +b2c2-flexcop +b2c2-flexcop-pci +b2c2-flexcop-usb +b43 +b43legacy +b44 +bas_gigaset +batman-adv +baycom_epp +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm203x +bcm3510 +bcm5974 +bcma +bcma-hcd +bcm_wimax +bd6107 +be2iscsi +be2net +befs +belkin_sa +bfa +bfs +bfusb +bh1770glc +bh1780gli +binfmt_aout +binfmt_misc +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +bluecard_cs +bluetooth +bma150 +bma180 +bmp085-i2c +bmp085-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bonding +bpa10x +bpck +bpck6 +bpctl_mod +bpqether +bq2415x_charger +bq24190_charger +bq24735-charger +bq27x00_battery +br2684 +brcmfmac +brcmsmac +brcmutil +bridge +broadsheetfb +bsd_comp +bt3c_cs +bt819 +bt856 +bt866 +bt878 +btcoexist +btcx-risc +btmrvl +btmrvl_sdio +btmtk_usb +btrfs +btsdio +bttv +btuart_cs +btusb +btwilink +bu21013_ts +budget +budget-av +budget-ci +budget-core +budget-patch +BusLogic +bw-qcam +bypass +c101 +c2port-duramar2150 +c4 +c67x00 +c6xdigio +cachefiles +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camellia_generic +can +can-bcm +can-dev +can-gw +can-raw +capi +capidrv +capmode +carl9170 +carminefb +cassini +cast5_generic +cast6_generic +cast_common +catc +cb710 +cb710-mmc +cb_das16_cs +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +cb_pcimdda +cc770 +cc770_isa +cc770_platform +c_can +c_can_pci +c_can_platform +cciss +ccm +cdc-acm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc-phonet +cdc_subset +cdc-wdm +cedusb +ceph +cfag12864b +cfag12864bfb +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +chipreg +chnl_net +chromeos_laptop +cifs +ci_hdrc +ci_hdrc_msm +ci_hdrc_pci +cirrus +cirrusfb +ck804xrom +classmate-laptop +clearpad_tm1217 +clip +clk-max77686 +clk-s2mps11 +clk-si5351 +clk-twl6040 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_fw +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm36651 +cm4000_cs +cm4040_cs +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cmtp +cnic +cobra +coda +com20020 +com20020_cs +com20020-isa +com20020-pci +com90io +com90xx +comedi +comedi_bond +comedi_fc +comedi_parport +comedi_test +comm +compal-laptop +configfs +contec_pci_dio +cops +cordic +core +coretemp +cosa +cp210x +cpcihp_generic +cpcihp_zt5550 +cpia2 +cpqphp +cpu5wdt +cpuid +cpu-notifier-error-inject +c-qcam +cramfs +cr_bllcd +crc32 +crc32-pclmul +crc7 +crc8 +crc-ccitt +crc-itu-t +cros_ec +cros_ec_i2c +cros_ec_keyb +cros_ec_spi +crvml +cryptd +cryptoloop +crypto_null +crypto_user +crystalhd +cs5345 +cs53l32a +cs5535-mfd +cs553x_nand +cs89x0 +csiostor +ct82c710 +ctr +cts +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx8800 +cx8802 +cx88-alsa +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx88xx +cxacru +cxd2099 +cxd2820r +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxt1e1 +cy8ctmg110_ts +cyapa +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +cyttsp_core +cyttsp_i2c +cyttsp_i2c_common +cyttsp_spi +da9030_battery +da9034-ts +da903x +da903x_bl +da9052-battery +da9052_bl +da9052-hwmon +da9052_onkey +da9052-regulator +da9052_tsi +da9052_wdt +da9055-hwmon +da9055_onkey +da9055-regulator +da9055_wdt +da9063-regulator +da9210-regulator +DAC960 +daqboard2000 +das08 +das08_cs +das08_isa +das08_pci +das16 +das16m1 +das1800 +das6402 +das800 +db9 +dc395x +dca +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +dccp_probe +dcdbas +ddbridge +de2104x +de4x5 +decnet +deflate +defxx +dell-laptop +dell-led +dell_rbu +dell-wmi +dell-wmi-aio +denali +denali_dt +denali_pci +des_generic +designware_i2s +dgap +dgnc +dgrp +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dibx000_common +digi_acceleport +diskonchip +divacapi +divadidd +diva_idi +diva_mnt +divas +dl2k +dlci +dlm +dm1105 +dm9601 +dm-bio-prison +dm-bufio +dm-cache +dm-cache-cleaner +dm-cache-mq +dm-crypt +dm-delay +dme1737 +dmfe +dm-flakey +dmi-sysfs +dm-log +dm-log-userspace +dmm32at +dm-mirror +dm-multipath +dm-persistent-data +dm-queue-length +dm-raid +dm-region-hash +dm-round-robin +dm-service-time +dm-snapshot +dm-switch +dm-thin-pool +dm-verity +dmx3191d +dm-zero +dnet +dn_rtmsg +docg3 +docg4 +donauboe +dpt_i2o +drbd +drm +drm_kms_helper +drm_usb +drxd +drxk +ds1621 +ds1682 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds620 +dsa_core +dsbr100 +dscc4 +dss1_divert +dst +dst_ca +dstr +dt2801 +dt2811 +dt2814 +dt2815 +dt2817 +dt282x +dt3000 +dt3155v4l +dt9812 +dtc +dtl1_cs +dtlk +dummy +dummy-irq +dvb-as102 +dvb-bt8xx +dvb-core +dvb-pll +dvb-ttpci +dvb-ttusb-budget +dvb-usb +dvb-usb-a800 +dvb-usb-af9005 +dvb-usb-af9005-remote +dvb-usb-af9015 +dvb-usb-af9035 +dvb-usb-anysee +dvb-usb-au6610 +dvb-usb-az6007 +dvb-usb-az6027 +dvb-usb-ce6230 +dvb-usb-cinergyT2 +dvb-usb-cxusb +dvb-usb-dib0700 +dvb-usb-dibusb-common +dvb-usb-dibusb-mb +dvb-usb-dibusb-mc +dvb-usb-digitv +dvb-usb-dtt200u +dvb-usb-dtv5100 +dvb-usb-dw2102 +dvb-usb-ec168 +dvb-usb-friio +dvb-usb-gl861 +dvb-usb-gp8psk +dvb-usb-it913x +dvb-usb-lmedm04 +dvb-usb-m920x +dvb-usb-mxl111sf +dvb-usb-nova-t-usb2 +dvb-usb-opera +dvb-usb-pctv452e +dvb-usb-rtl28xxu +dvb-usb-technisat-usb2 +dvb-usb-ttusb2 +dvb-usb-umt-010 +dvb_usb_v2 +dvb-usb-vp702x +dvb-usb-vp7045 +dwc2 +dwc2_pci +dwc2_platform +dwc3 +dwc3-pci +dw_dmac +dw_dmac_core +dw_dmac_pci +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +e4000 +e752x_edac +e7xxx_edac +earth-pt1 +eata +ebt_802_3 +ebtable_broute +ebtable_filter +ebtable_nat +ebtables +ebt_among +ebt_arp +ebt_arpreply +ebt_dnat +ebt_ip +ebt_ip6 +ebt_limit +ebt_log +ebt_mark +ebt_mark_m +ebt_nflog +ebt_pkttype +ebt_redirect +ebt_snat +ebt_stp +ebt_vlan +ec100 +echo +ec_sys +edac_core +edac_mce_amd +edt-ft5x06 +eeepc-laptop +eeepc-wmi +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efficeon-agp +efi-pstore +efs +ehset +einj +elo +elsa_cs +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +emc1403 +emc2103 +emc6w201 +em_canid +em_cmp +emi26 +emi62 +em_ipset +em_meta +em_nbyte +empeg +ems_pci +ems_pcmcia +ems_usb +em_text +emu10k1-gp +em_u32 +enc28j60 +enclosure +ene_ir +eni +enic +epat +epia +epic100 +eql +esas2r +esb2rom +esd_usb2 +esi-sir +esp4 +esp6 +et131x +ethoc +eurotechwdt +evbug +exofs +extcon-adc-jack +extcon-arizona +extcon-gpio +extcon-max77693 +extcon-max8997 +extcon-palmas +ezusb +f2fs +f71805f +f71808e_wdt +f71882fg +f75375s +f81232 +fakelb +fam15h_power +fan53555 +farsync +faulty +fb_ddc +fb_sys_fops +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_cs +fealnx +ff-memless +fid +fintek-cir +firedtv +firestream +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fit2 +fit3 +fixed +fl512 +fld +floppy +fm801-gp +fmc +fmc-chardev +fmc-fakedev +fmc-trivial +fmc-write-eeprom +fm_drv +fmvj18x_cs +fnic +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +freevxfs +friq +frpw +fsa9480 +fscache +fschmd +ft1000 +ft1000_pcmcia +ftdi-elan +ftdi_sio +ftl +fujitsu-laptop +fujitsu-tablet +fujitsu_ts +fusbh200-hcd +g450_pll +g760a +g762 +g_acm_ms +gadgetfs +gamecon +gameport +garmin_gps +garp +g_audio +g_cdc +gcm +g_dbgp +gdmtty +gdmulte +gdmwm +gdth +generic +generic-adc-battery +generic_bl +gen_probe +geode-aes +geode-rng +g_ether +gf128mul +gf2k +g_ffs +gfs2 +ghash-generic +g_hid +gigaset +girbil-sir +gl518sm +gl520sm +gl620a +gluebi +glue_helper +gma500_gfx +g_mass_storage +g_midi +g_ncm +g_NCR5380 +g_NCR5380_mmio +g_nokia +go7007 +go7007-loader +go7007-usb +goku_udc +goldfishfb +gp2ap002a00f +gp2ap020a00f +gpio +gpio-74x164 +gpio-addr-flash +gpio-adp5520 +gpio-adp5588 +gpio-amd8111 +gpio-arizona +gpio_backlight +gpio-charger +gpio-cs5535 +gpio-da9052 +gpio-da9055 +gpio-f7188x +gpio-fan +gpio-generic +gpio-ich +gpio-ir-recv +gpio-it8761e +gpio-janz-ttl +gpio-kempld +gpio_keys +gpio_keys_polled +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-mc33880 +gpio-mcp23s08 +gpio-ml-ioh +gpio_mouse +gpio-pca953x +gpio-pcf857x +gpio-pch +gpio-rdc321x +gpio-regulator +gpio-sch +gpio_tilt_polled +gpio-tps65912 +gpio-ts5500 +gpio-twl6040 +gpio-ucb1400 +gpio-viperboard +gpio-vx855 +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +g_printer +gre +grip +grip_mp +gsc_hpdi +g_serial +gspca_benq +gspca_conex +gspca_cpia1 +gspca_etoms +gspca_finepix +gspca_gl860 +gspca_jeilinj +gspca_jl2005bcd +gspca_kinect +gspca_konica +gspca_m5602 +gspca_main +gspca_mars +gspca_mr97310a +gspca_nw80x +gspca_ov519 +gspca_ov534 +gspca_ov534_9 +gspca_pac207 +gspca_pac7302 +gspca_pac7311 +gspca_se401 +gspca_sn9c2028 +gspca_sn9c20x +gspca_sonixb +gspca_sonixj +gspca_spca1528 +gspca_spca500 +gspca_spca501 +gspca_spca505 +gspca_spca506 +gspca_spca508 +gspca_spca561 +gspca_sq905 +gspca_sq905c +gspca_sq930x +gspca_stk014 +gspca_stk1135 +gspca_stv0680 +gspca_stv06xx +gspca_sunplus +gspca_t613 +gspca_topro +gspca_tv8532 +gspca_vc032x +gspca_vicam +gspca_xirlink_cit +gspca_zc3xx +gtco +guillemot +gunze +g_webcam +gx1fb +gxfb +gx-suspmod +g_zero +hamachi +hampshire +hangcheck-timer +hanwang +hci +hci_uart +hci_vhci +hdaps +hdlc +hdlc_cisco +hdlcdrv +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdpvr +he +hecubafb +hexium_gemini +hexium_orion +hfc4s8s_l1 +hfcmulti +hfcpci +hfcsusb +hfc_usb +hfs +hfsplus +hgafb +hid +hid-a4tech +hid-apple +hid-appleir +hid-aureal +hid-axff +hid-belkin +hid-cherry +hid-chicony +hid-cypress +hid-dr +hid-elecom +hid-elo +hid-emsff +hid-ezkey +hid-gaff +hid-generic +hid-gyration +hid-holtekff +hid-holtek-kbd +hid-holtek-mouse +hid-huion +hid-hyperv +hid-icade +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-lenovo-tpkbd +hid-logitech +hid-logitech-dj +hid-magicmouse +hid-microsoft +hid-monterey +hid-multitouch +hid-ntrig +hid-ortek +hidp +hid-petalynx +hid-picolcd +hid-pl +hid-primax +hid-prodikeys +hid-roccat +hid-roccat-arvo +hid-roccat-common +hid-roccat-isku +hid-roccat-kone +hid-roccat-koneplus +hid-roccat-konepure +hid-roccat-kovaplus +hid-roccat-lua +hid-roccat-pyra +hid-roccat-ryos +hid-roccat-savu +hid-saitek +hid-samsung +hid-sensor-accel-3d +hid-sensor-als +hid-sensor-gyro-3d +hid-sensor-hub +hid-sensor-iio-common +hid-sensor-magn-3d +hid-sensor-trigger +hid-sjoy +hid-sony +hid-speedlink +hid-steelseries +hid-sunplus +hid-thingm +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-uclogic +hid-wacom +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hih6130 +hisax +hisax_fcpcipnp +hisax_isac +hisax_st5481 +hmc5843 +hmc6352 +hopper +horizon +hostap +hostap_cs +hostap_pci +hostap_plx +hostess_sv11 +hp100 +hp_accel +hpfs +hpilo +hpsa +hptiop +hpwdt +hp-wireless +hp-wmi +hsi +hsi_char +hso +hsr +htc-pasic3 +htcpen +htu21 +huawei_cdc_ncm +hv_balloon +hv_netvsc +hv_storvsc +hv_utils +hv_vmbus +hwa-hc +hwa-rc +hwmon-vid +hwpoison-inject +hx8357 +hyperv_fb +hyperv-keyboard +hysdn +i1480-dfu-usb +i1480-est +i2400m +i2400m-usb +i2c-algo-bit +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd756-s4882 +i2c-amd8111 +i2c-cbus-gpio +i2c-designware-core +i2c-designware-pci +i2c-designware-platform +i2c-dev +i2c-diolan-u2c +i2c-eg20t +i2c-gpio +i2c-hid +i2c-i801 +i2c-isch +i2c-ismt +i2c-kempld +i2c-matroxfb +i2c-mux +i2c-mux-gpio +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-mux-pinctrl +i2c-nforce2 +i2c-nforce2-s4985 +i2c-ocores +i2c-parport +i2c-parport-light +i2c-pca-isa +i2c-pca-platform +i2c-piix4 +i2c-scmi +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-tiny-usb +i2c-via +i2c-viapro +i2c-viperboard +i2c-xiic +i2o_block +i2o_bus +i2o_config +i2o_core +i2o_proc +i2o_scsi +i3000_edac +i3200_edac +i40e +i5000_edac +i5100_edac +i5400_edac +i5k_amb +i6300esb +i7300_edac +i740fb +i7core_edac +i810fb +i82092 +i82365 +i82860_edac +i82875p_edac +i82975x_edac +i8k +i915 +i915_bdw +ib700wdt +ib_addr +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mad +ibmaem +ibmasm +ibmasr +ibmpex +ibmphp +ibm_rtl +ib_mthca +ib_sa +ib_srp +ib_srpt +ib_ucm +ib_umad +ib_uverbs +ichxrom +icn +icp_multi +ics932s401 +ideapad-laptop +ideapad_slidebar +idmouse +idt77252 +idtcps +idt_gen2 +ie6xx_wdt +ieee802154 +ifb +iforce +igb +igbvf +iguanair +iio_dummy +iio_hwmon +iio-trig-interrupt +iio-trig-periodic-rtc +iio-trig-sysfs +ii_pci20kc +ili210x +ili922x +ili9320 +imm +imon +ims-pcu +imx074 +in2000 +ina209 +ina2xx +industrialio +industrialio-triggered-buffer +inet_diag +inexio +inftl +initio +input-polldev +int51x1 +intelfb +intel_ips +intel_menlow +intel_mid_battery +intel_mid_dma +intel_mid_powerbtn +intel_mid_thermal +intel-mid-touch +intel_oaktrail +intel_powerclamp +intel_rapl +intel-rng +intel-rst +intel_scu_ipcutil +intel-smartconnect +intel_vr_nor +interact +interval_tree_test +inv-mpu6050 +ioatdma +ioc4 +io_edgeport +io_ti +iowarrior +ip6_gre +ip6table_filter +ip6table_mangle +ip6table_nat +ip6table_raw +ip6_tables +ip6table_security +ip6t_ah +ip6t_eui64 +ip6t_frag +ip6t_hbh +ip6t_ipv6header +ip6t_MASQUERADE +ip6t_mh +ip6t_NPT +ip6t_REJECT +ip6t_rpfilter +ip6t_rt +ip6t_SYNPROXY +ip6_tunnel +ip6_vti +ipack +ipaq +ipcomp +ipcomp6 +ipddp +ipg +ip_gre +iphase +ipheth +ipip +ipmi_devintf +ipmi_poweroff +ipmi_si +ipmi_watchdog +ipoctal +ipr +ips +ip_set +ip_set_bitmap_ip +ip_set_bitmap_ipmac +ip_set_bitmap_port +ip_set_hash_ip +ip_set_hash_ipport +ip_set_hash_ipportip +ip_set_hash_ipportnet +ip_set_hash_net +ip_set_hash_netiface +ip_set_hash_netnet +ip_set_hash_netport +ip_set_hash_netportnet +ip_set_list_set +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +ip_tables +iptable_security +ipt_ah +ipt_CLUSTERIP +ipt_ECN +ipt_MASQUERADE +ipt_REJECT +ipt_rpfilter +ipt_SYNPROXY +ipt_ULOG +ip_tunnel +ip_vs +ip_vs_dh +ip_vs_ftp +ip_vs_lblc +ip_vs_lblcr +ip_vs_lc +ip_vs_nq +ip_vs_pe_sip +ip_vs_rr +ip_vs_sed +ip_vs_sh +ip_vs_wlc +ip_vs_wrr +ip_vti +ipw +ipw2100 +ipw2200 +ipwireless +ipx +ircomm +ircomm-tty +irda +irda-usb +iris +ir-jvc-decoder +ir-kbd-i2c +irlan +ir-lirc-codec +ir-mce_kbd-decoder +ir-nec-decoder +irnet +ir-rc5-decoder +ir-rc5-sz-decoder +ir-rc6-decoder +ir-sanyo-decoder +ir-sony-decoder +irtty-sir +ir-usb +isci +iscsi_boot_sysfs +iscsi_ibft +iscsi_target_mod +iscsi_tcp +isdn +isdn_bsdcomp +isdnhdlc +isicom +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isofs +isp116x-hcd +isp1362-hcd +isp1704_charger +isp1760 +it87 +it8712f_wdt +it87_wdt +it913x-fe +iTCO_vendor_support +iTCO_wdt +itd1000 +ite-cir +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_c2 +iw_cm +iw_cxgb3 +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +iw_nes +ix2505v +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsm +k10temp +k8temp +kafs +kalmia +kaweth +kb3886_bl +kbic +kbtab +kcomedilib +ke_counter +kempld-core +kempld_wdt +kernelcapi +keucr +keyspan +keyspan_pda +keyspan_remote +kfifo_buf +khazad +kingsun-sir +kl5kusb105 +ko2iblnd +kobil_sct +ks0108 +ks0127 +ks8842 +ks8851 +ks8851_mll +ks959-sir +ksdazzle-sir +ksocklnd +ksz884x +ktti +kvaser_pci +kvaser_usb +kvm +kvm-amd +kvm-intel +kxsd9 +kxtj9 +kyrofb +l1oip +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +l2tp_ppp +l440gx +l4f00242t03 +l64781 +lanai +lance +lapb +lapbether +latch-addr-flash +lattice-ecp3-config +lcd +ld9040 +ldusb +lec +leds-88pm860x +leds-adp5520 +leds-atmel-pwm +leds-bd2802 +leds-blinkm +leds-clevo-mail +leds-da903x +leds-da9052 +leds-dac124s085 +leds-gpio +leds-lm3530 +leds-lm3533 +leds-lm355x +leds-lm3642 +leds-lp3944 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lt3593 +leds-max8997 +leds-mc13783 +leds-net48xx +leds-ot200 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pca9685 +leds-pwm +leds-regulator +leds-ss4200 +leds-tca6507 +leds-wm831x-status +leds-wm8350 +leds-wrap +ledtrig-backlight +ledtrig-camera +ledtrig-default-on +ledtrig-gpio +ledtrig-heartbeat +ledtrig-oneshot +ledtrig-timer +ledtrig-transient +legousbtower +lg2160 +lgdt3305 +lgdt330x +lgs8gxx +lg-vl600 +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libahci +libceph +libcfs +libcomposite +libcrc32c +libcxgbi +libertas +libertas_cs +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libore +libosd +libsas +libsrp +lightning +line6usb +lineage-pem +linear +lirc_bt829 +lirc_dev +lirc_igorplugusb +lirc_imon +lirc_parallel +lirc_sasem +lirc_serial +lirc_sir +lirc_zilog +lis3l02dq +lis3lv02d +lis3lv02d_i2c +litelink-sir +lkkbd +llc +llc2 +llog_test +lm25066 +lm3533-als +lm3533_bl +lm3533-core +lm3533-ctrlbank +lm3630a_bl +lm3639_bl +lm63 +lm70 +lm73 +lm75 +lm77 +lm78 +lm80 +lm83 +lm8323 +lm8333 +lm85 +lm87 +lm90 +lm92 +lm93 +lm95234 +lm95241 +lm95245 +lmc +lms283gf05 +lms501kf03 +lmv +lnbp21 +lnbp22 +lnet +lnet_selftest +lockd +logibm +longhaul +longrun +lov +lp +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp8755 +lp8788_bl +lp8788-charger +lpc_ich +lpc_sch +lpddr_cmds +lpfc +lru_cache +lrw +ltc2978 +ltc4151 +ltc4215 +ltc4245 +ltc4261 +ltpc +ltv350qv +lustre +lv5207lp +lvfs +lxfb +lz4 +lz4_compress +lz4hc +lz4hc_compress +m25p80 +m2m-deinterlace +m52790 +m88rs2000 +ma600-sir +mac80211 +mac80211_hwsim +mac802154 +macb +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mac-gaelic +mac-greek +mac_hid +machzwd +mac-iceland +mac-inuit +macmodes +mac-roman +mac-romanian +mac-turkish +macvlan +macvtap +mag3110 +magellan +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +matrix-keymap +matrix_keypad +matroxfb_accel +matroxfb_base +matroxfb_crtc2 +matroxfb_DAC1064 +matroxfb_g450 +matroxfb_maven +matroxfb_misc +matroxfb_Ti3026 +matrox_w1 +max1111 +max11801_ts +max1363 +max1586 +max16064 +max16065 +max1619 +max1668 +max17040_battery +max17042_battery +max197 +max2165 +max3100 +max34440 +max517 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77686 +max77693 +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925_bl +max8925_onkey +max8925_power +max8925-regulator +max8952 +max8973-regulator +max8997 +max8997_charger +max8998 +max8998_charger +mb862xxfb +mb86a16 +mb86a20s +mc13783-adc +mc13783-pwrbutton +mc13783-regulator +mc13783_ts +mc13892-regulator +mc13xxx-core +mc13xxx-i2c +mc13xxx-regulator-core +mc13xxx-spi +mc44s803 +mce_amd_inj +mce-inject +mceusb +mcp2120-sir +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp4725 +mcs5000_ts +mcs7780 +mcs7830 +mcs_touchkey +mct_u232 +md4 +mdacon +mdc +mdc800 +mdio +me4000 +me_daq +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mei +mei-me +mei_phy +mem2mem_testdev +memstick +mena21_wdt +metronomefb +metro-usb +meye +mfd +mga +mgc +michael_mic +microread +microread_i2c +microread_mei +microtek +mii +minix +mip6 +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +mite +mixcomwd +mk712 +mkiss +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mma8450 +mmc_block +mms114 +mos7720 +mos7840 +moxa +mpc624 +mpoa +mpr121_touchkey +mpt2sas +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +mrst_max3110 +ms_block +msdos +msi-laptop +msi-wmi +msp3400 +mspro_block +msr +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt29f_spinand +mt312 +mt352 +mt9m001 +mt9m111 +mt9t031 +mt9t112 +mt9v011 +mt9v022 +mtd +mtd_blkdevs +mtdblock +mtdblock_ro +mtd_dataflash +mtdoops +mtdram +mtdswap +mtip32xx +mtouch +multipath +multiq3 +musb_hdrc +mv88e6060 +mv88e6xxx_drv +mvmdio +mvsas +mv_u3d_core +mv_udc +mvumi +mwave +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxl111sf-demod +mxl111sf-tuner +mxl5005s +mxl5007t +mxm-wmi +mxser +myri10ge +n2 +n411 +nand +nand_bch +nand_ecc +nand_ids +nandsim +natsemi +nau7802 +navman +nbd +nci +ncpfs +NCR53c406a +nct6775 +ne +ne2k-pci +neofb +net1080 +net2272 +net2280 +netconsole +netjet +netlink_diag +netprio_cgroup +netrom +netsc520 +nettel +netxen_nic +newtonkbd +nfc +nfc_digital +nf_conntrack +nf_conntrack_amanda +nf_conntrack_broadcast +nf_conntrack_ftp +nf_conntrack_h323 +nf_conntrack_ipv4 +nf_conntrack_ipv6 +nf_conntrack_irc +nf_conntrack_netbios_ns +nf_conntrack_netlink +nf_conntrack_pptp +nf_conntrack_proto_dccp +nf_conntrack_proto_gre +nf_conntrack_proto_sctp +nf_conntrack_proto_udplite +nf_conntrack_sane +nf_conntrack_sip +nf_conntrack_snmp +nf_conntrack_tftp +nfcsim +nfcwilink +nf_defrag_ipv4 +nf_defrag_ipv6 +nf_nat +nf_nat_amanda +nf_nat_ftp +nf_nat_h323 +nf_nat_ipv4 +nf_nat_ipv6 +nf_nat_irc +nf_nat_pptp +nf_nat_proto_dccp +nf_nat_proto_gre +nf_nat_proto_sctp +nf_nat_proto_udplite +nf_nat_sip +nf_nat_snmp_basic +nf_nat_tftp +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +nfnetlink_log +nfnetlink_queue +nfs +nfs_acl +nfsd +nfs_layout_nfsv41_files +nfsv2 +nfsv3 +nfsv4 +nf_synproxy_core +nf_tables +nf_tables_arp +nf_tables_bridge +nf_tables_ipv4 +nf_tables_ipv6 +nft_chain_nat_ipv4 +nft_chain_nat_ipv6 +nft_chain_route_ipv4 +nft_chain_route_ipv6 +nft_compat +nft_counter +nft_ct +nft_exthdr +nft_hash +nftl +nft_limit +nft_log +nft_meta +nft_nat +nft_rbtree +nft_reject_ipv4 +ngene +n_hdlc +ni65 +ni_6527 +ni_65xx +ni_660x +ni_670x +ni_at_a2150 +ni_at_ao +ni_atmio +ni_atmio16d +nicstar +ni_daq_700 +ni_daq_dio24 +ni_labpc +ni_labpc_cs +ni_labpc_isadma +ni_labpc_pci +nilfs2 +ni_mio_cs +ni_pcidio +ni_pcimio +ni_tio +ni_tiocmd +niu +nlmon +nls_ascii +nls_cp1250 +nls_cp1251 +nls_cp1255 +nls_cp737 +nls_cp775 +nls_cp850 +nls_cp852 +nls_cp855 +nls_cp857 +nls_cp860 +nls_cp861 +nls_cp862 +nls_cp863 +nls_cp864 +nls_cp865 +nls_cp866 +nls_cp869 +nls_cp874 +nls_cp932 +nls_cp936 +nls_cp949 +nls_cp950 +nls_euc-jp +nls_iso8859-1 +nls_iso8859-13 +nls_iso8859-14 +nls_iso8859-15 +nls_iso8859-2 +nls_iso8859-3 +nls_iso8859-4 +nls_iso8859-5 +nls_iso8859-6 +nls_iso8859-7 +nls_iso8859-9 +nls_koi8-r +nls_koi8-ru +nls_koi8-u +nls_utf8 +nmclan_cs +nosy +notifier-error-inject +nouveau +nozomi +n_r3964 +ns558 +ns83820 +nsc_gpio +nsc-ircc +nsp32 +nsp_cs +ntb +ntb_netdev +ntc_thermistor +ntfs +n_tracerouter +n_tracesink +null_blk +nuvoton-cir +nvidiafb +nvme +nvram +nv_tco +nxt200x +nxt6000 +obdclass +obdecho +objlayoutdriver +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stackglue +ocfs2_stack_o2cb +ocfs2_stack_user +ocrdma +old_belkin-sir +omfs +omninet +on20 +on26 +onenand +opencores-kbd +openvswitch +oprofile +opticon +option +or51132 +or51211 +orinoco +orinoco_cs +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +osc +osd +osdblk +osst +oti6858 +output +ov2640 +ov5642 +ov6650 +ov7640 +ov7670 +ov772x +ov9640 +ov9740 +overlayfs +oxu210hp-hcd +ozwpan +p4-clockmod +p54common +p54pci +p54spi +p54usb +p8022 +p8023 +padlock-aes +padlock-sha +palmas-regulator +panasonic-laptop +panel +paride +parkbd +parport +parport_ax88796 +parport_cs +parport_pc +parport_serial +pas16 +pata_acpi +pata_ali +pata_amd +pata_arasan_cf +pata_artop +pata_atiixp +pata_atp867x +pata_cmd640 +pata_cmd64x +pata_cs5520 +pata_cs5530 +pata_cs5535 +pata_cs5536 +pata_cypress +pata_efar +pata_hpt366 +pata_hpt37x +pata_hpt3x2n +pata_hpt3x3 +pata_isapnp +pata_it8213 +pata_it821x +pata_jmicron +pata_legacy +pata_marvell +pata_mpiix +pata_netcell +pata_ninja32 +pata_ns87410 +pata_ns87415 +pata_oldpiix +pata_opti +pata_optidma +pata_pcmcia +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sc1200 +pata_sch +pata_serverworks +pata_sil680 +pata_sl82c105 +pata_triflex +pata_via +pc110pad +pc300too +pc87360 +pc8736x_gpio +pc87413_wdt +pc87427 +pcbc +pcbit +pcd +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_can +pch_dma +pch_gbe +pch_phub +pch_uart +pch_udc +pci +pci200syn +pcips2 +pci-stub +pcl711 +pcl724 +pcl726 +pcl730 +pcl812 +pcl816 +pcl818 +pcm3724 +pcmad +pcmcia +pcmcia_core +pcmciamtd +pcmcia_rsrc +pcmda12 +pcmmio +pcmuio +pcnet32 +pcnet_cs +pcrypt +pcspkr +pcwd +pcwd_pci +pcwd_usb +pd +pd6729 +pda_power +pdc_adma +peak_pci +peak_pcmcia +peak_usb +pegasus +penmount +percpu_test +pf +pfuze100-regulator +pg +phantom +phison +phonet +phram +phy-core +phy-generic +phy-gpio-vbus-usb +phy-isp1301 +phy-rcar-usb +phy-samsung-usb +phy-samsung-usb2 +phy-samsung-usb3 +physmap +pixcir_i2c_ts +pktcdvd +pktgen +pl2303 +platform_lcd +plat_nand +plat-ram +plip +plusb +pluto2 +plx_pci +pm2fb +pm3fb +pm80xx +pmbus +pmbus_core +pmc551 +pmcraid +pm-notifier-error-inject +pms +pn533 +pn544 +pn544_i2c +pn544_mei +pn_pep +poc +port100 +poseidon +powermate +powernow-k6 +powernow-k7 +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +pppoatm +pppoe +pppox +ppp_synctty +pps_core +pps-gpio +pps-ldisc +pps_parport +pptp +prism2_usb +ps2mult +psmouse +psnap +pt +pti +ptlrpc +ptp +ptp_pch +pvpanic +pvrusb2 +pwc +pwm_bl +pxa27x_udc +qcaux +qcserial +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qlogic_cs +qlogicfas +qlogicfas408 +qmi_wwan +qnx4 +qnx6 +qt1010 +qt1070 +qt2160 +quatech2 +quatech_daqp_cs +quickstart +quota_tree +quota_v1 +quota_v2 +qxl +r128 +r592 +r6040 +r8152 +r815x +r8169 +r8187se +r8188eu +r8192e_pci +r8192u_usb +r820t +r82600_edac +r852 +r8712u +r8a66597-hcd +r8a66597-udc +radeon +radeonfb +radio-aimslab +radio-aztech +radio-cadet +radio-gemtek +radio-i2c-si470x +radio-isa +radio-keene +radio-ma901 +radio-maxiradio +radio-miropcm20 +radio-mr800 +radio-rtrack2 +radio-sf16fmi +radio-sf16fmr2 +radio-shark +radio-si4713 +radio-si476x +radio-tea5764 +radio-terratec +radio-timb +radio-trust +radio-typhoon +radio-usb-si470x +radio-wl1273 +radio-zoltrix +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid6test +raid_class +ramoops +raw +ray_cs +rbd +rbtree_test +rc5t583-regulator +rc-adstech-dvb-t-pci +rc-alink-dtu-m +rc-anysee +rc-apac-viewcomp +rcar_vin +rc-asus-pc39 +rc-asus-ps3-100 +rc-ati-tv-wonder-hd-600 +rc-ati-x10 +rc-avermedia +rc-avermedia-a16d +rc-avermedia-cardbus +rc-avermedia-dvbt +rc-avermedia-m135a +rc-avermedia-m733a-rm-k6 +rc-avermedia-rm-ks +rc-avertv-303 +rc-azurewave-ad-tu700 +rc-behold +rc-behold-columbus +rc-budget-ci-old +rc-cinergy +rc-cinergy-1400 +rc-core +rc-delock-61959 +rc-dib0700-nec +rc-dib0700-rc5 +rc-digitalnow-tinytwin +rc-digittrade +rc-dm1105-nec +rc-dntv-live-dvb-t +rc-dntv-live-dvbt-pro +rc-em-terratec +rc-encore-enltv +rc-encore-enltv2 +rc-encore-enltv-fm53 +rc-evga-indtube +rc-eztv +rc-flydvb +rc-flyvideo +rc-fusionhdtv-mce +rc-gadmei-rm008z +rc-genius-tvgo-a11mce +rc-gotview7135 +rc-hauppauge +rc-imon-mce +rc-imon-pad +rc-iodata-bctv7e +rc-it913x-v1 +rc-it913x-v2 +rc-kaiomy +rc-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lirc +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +rc-msi-digivox-ii +rc-msi-digivox-iii +rc-msi-tvanywhere +rc-msi-tvanywhere-plus +rc-nebula +rc-nec-terratec-cinergy-xs +rc-norwood +rc-npgtech +rc-pctv-sedna +rc-pinnacle-color +rc-pinnacle-grey +rc-pinnacle-pctv-hd +rc-pixelview +rc-pixelview-002t +rc-pixelview-mk12 +rc-pixelview-new +rc-powercolor-real-angel +rc-proteus-2309 +rc-purpletv +rc-pv951 +rc-rc6-mce +rc-real-audio-220-32-keys +rc-reddo +rc-snapstream-firefly +rc-streamzap +rc-tbs-nec +rc-technisat-usb2 +rc-terratec-cinergy-xs +rc-terratec-slim +rc-terratec-slim-2 +rc-tevii-nec +rc-tivo +rc-total-media-in-hand +rc-total-media-in-hand-02 +rc-trekstor +rc-tt-1500 +rc-twinhan1027 +rc-videomate-m1f +rc-videomate-s350 +rc-videomate-tv-pvr +rc-winfast +rc-winfast-usbii-deluxe +rdc321x-southbridge +rdma_cm +rdma_ucm +rds +rds_rdma +rds_tcp +redboot +redrat3 +reed_solomon +reiserfs +remoteproc +renesas_usbhs +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd_ftl +rfkill-gpio +rfkill-regulator +rio500 +rionet +rio-scan +rivafb +rj54n1cb0c +rmd128 +rmd160 +rmd256 +rmd320 +rndis_host +rndis_wlan +rocket +romfs +rose +rotary_encoder +rp2 +rpcsec_gss_krb5 +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt61pci +rt73usb +rtc-88pm80x +rtc-88pm860x +rtc-ab3100 +rtc-bq32k +rtc-bq4802 +rtc-da9052 +rtc-da9055 +rtc-ds1286 +rtc-ds1305 +rtc-ds1307 +rtc-ds1374 +rtc-ds1390 +rtc-ds1511 +rtc-ds1553 +rtc-ds1672 +rtc-ds1742 +rtc-ds2404 +rtc-ds3232 +rtc-ds3234 +rtc-em3027 +rtc-fm3130 +rtc-hid-sensor-time +rtc-isl12022 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-moxart +rtc-mrst +rtc-msm6242 +rtc-palmas +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf8523 +rtc-pcf8563 +rtc-pcf8583 +rtc-r9701 +rtc-rc5t583 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3029c2 +rtc-rx4581 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtd520 +rti800 +rti802 +rtl2830 +rtl2832 +rtl8150 +rtl8180 +rtl8187 +rtl8188ee +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192se +rtl8723ae +rtl8723be +rtl8723-common +rtl8821ae +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtl_pci +rtl_usb +rtlwifi +rts5139 +rtsx_pci +rtsx_pci_ms +rtsx_pci_sdmmc +rxkad +s1d13xxxfb +s2250 +s2255drv +s2io +s3fb +s526 +s5h1409 +s5h1411 +s5h1420 +s5m8767 +s626 +s6e63m0 +s921 +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7146 +saa7146_vv +saa7164 +saa717x +saa7185 +saa7706h +safe_serial +salsa20_generic +salsa20-i586 +samsung-keypad +samsung-laptop +samsung-q10 +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_rcar +sata_sil +sata_sil24 +sata_sis +sata_svw +sata_sx4 +sata_uli +sata_via +sata_vsc +savage +savagefb +sb1000 +sbc60xxwdt +sbc7240_wdt +sbc8360 +sbc_epx_c3 +sbc_fitpc2_wdt +sbc_gxx +sbe-2t3e3 +sbni +sbp_target +sbs +sbs-battery +sbshc +sc +sc1200wdt +sc520cdp +sc520_wdt +sc92031 +sca3000 +scb2_flash +scc +sch311x_wdt +sch5627 +sch5636 +sch56xx-common +sch_atm +sch_cbq +sch_choke +sch_codel +sch_drr +sch_dsmark +sch_fq +sch_fq_codel +sch_gred +sch_hfsc +sch_htb +sch_ingress +sch_mqprio +sch_multiq +sch_netem +sch_plug +sch_prio +sch_qfq +sch_red +sch_sfb +sch_sfq +sch_tbf +sch_teql +scsi_debug +scsi_dh +scsi_dh_alua +scsi_dh_emc +scsi_dh_hp_sw +scsi_dh_rdac +scsi_tgt +scsi_transport_fc +scsi_transport_iscsi +scsi_transport_sas +scsi_transport_srp +sctp +sctp_probe +scx200 +scx200_acb +scx200_docflash +scx200_gpio +scx200_hrt +scx200_wdt +sdhci +sdhci-acpi +sdhci-pci +sdhci-pltfm +sdhci-pxav2 +sdhci-pxav3 +sdio_uart +sdla +sdricoh_cs +sdr-msi3101 +sealevel +sedlbauer_cs +seed +sep_driver +seqiv +ser_gigaset +serial2002 +serial_cs +serio_raw +sermouse +serpent_generic +serpent-sse2-i586 +serport +serqt_usb2 +ses +sfc +shark2 +sh_eth +sh_mobile_ceu_camera +sh_mobile_csi2 +shpchp +sht15 +sht21 +sh_veu +si21xx +si4713-i2c +si476x-core +sidewinder +sierra +sierra_net +sil164 +sim710 +sir-dev +sis +sis190 +sis5595 +sis900 +sis-agp +sisfb +sisusbvga +sit +sja1000 +sja1000_isa +sja1000_platform +skel +skfp +skge +sky2 +sl811_cs +sl811-hcd +slcan +slicoss +slip +slram +sm501 +sm501fb +sm7xxfb +smb347-charger +smc9194 +smc91c92_cs +sm_common +smc-ultra +sm_ftl +smm665 +smsc37b787_wdt +smsc47b397 +smsc47m1 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smsc-ircc2 +smscufx +smsdvb +smsmdtv +smssdio +smsusb +snd +snd-ac97-codec +snd-ad1816a +snd-ad1848 +snd-ad1889 +snd-adlib +snd-ak4113 +snd-ak4114 +snd-ak4117 +snd-ak4xxx-adda +snd-ali5451 +snd-aloop +snd-als100 +snd-als300 +snd-als4000 +snd-asihpi +snd-at73c213 +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-azt1605 +snd-azt2316 +snd-azt2320 +snd-azt3328 +snd-bt87x +snd-ca0106 +snd-cmi8328 +snd-cmi8330 +snd-cmipci +snd-compress +snd-cs4231 +snd-cs4236 +snd-cs4281 +snd-cs46xx +snd-cs5530 +snd-cs5535audio +snd-cs8427 +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-emu10k1 +snd-emu10k1-synth +snd-emu10k1x +snd-emu8000-synth +snd-emux-synth +snd-ens1370 +snd-ens1371 +snd-es1688 +snd-es1688-lib +snd-es18xx +snd-es1938 +snd-es1968 +snd-firewire-lib +snd-firewire-speakers +snd-fm801 +snd-gina20 +snd-gina24 +snd-gusclassic +snd-gusextreme +snd-gus-lib +snd-gusmax +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-intel +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1712 +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel8x0 +snd-intel8x0m +snd-interwave +snd-interwave-stb +snd-isight +snd-jazz16 +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-lx6464es +snd-maestro3 +snd-mia +snd-miro +snd-mixart +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-msnd-classic +snd-msnd-lib +snd-msnd-pinnacle +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3sa2 +snd-opl3-synth +snd-opl4-lib +snd-opl4-synth +snd-opti92x-ad1848 +snd-opti92x-cs4231 +snd-opti93x +snd-oxygen +snd-oxygen-lib +snd-page-alloc +snd-pcm +snd-pcsp +snd-pcxhr +snd-pdaudiocf +snd-portman2x4 +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-sb16 +snd-sb16-csp +snd-sb16-dsp +snd-sb8 +snd-sb8-dsp +snd-sbawe +snd-sb-common +snd-sc6000 +snd-scs1x +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-sis7019 +snd-soc-atmel-pcm +snd-soc-core +snd-soc-mfld-machine +snd-soc-si476x +snd-soc-simple-card +snd-soc-sn95031 +snd-soc-sst-platform +snd-sonicvibes +snd-sscape +snd-tea6330t +snd-timer +snd-trident +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usbmidi-lib +snd-usb-us122l +snd-usb-usx2y +snd-util-mem +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx222 +snd-vx-lib +snd-vxpocket +snd-wavefront +snd-wss-lib +snd-ymfpci +soc_camera +soc_camera_platform +soc_mediabus +soc_scale_crop +softdog +softing +softing_cs +solo6x10 +solos-pci +sony-btf-mpx +sony-laptop +sonypi +soundcore +sp5100_tco +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntpc +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_decpc +speakup_dectlk +speakup_dtlk +speakup_dummy +speakup_keypc +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +spectrum_cs +speedfax +speedtch +spi-altera +spi-bitbang +spi-butterfly +spidev +spi-dw +spi-dw-midpci +spi-dw-mmio +spi-gpio +spi_ks8995 +spi-lm70llp +spi-oc-tiny +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-sc18is602 +spi-tle62x0 +spi-topcliff-pch +spi-xcomm +squashfs +sr9700 +ssb +ssb-hcd +ssfdc +sst25l +sstfb +ssu100 +ssv_dnp +st +st1232 +st_accel +st_accel_i2c +st_accel_spi +starfire +stb0899 +stb6000 +stb6100 +st_drv +ste_modem_rproc +stex +st_gyro +st_gyro_i2c +st_gyro_spi +stinger +stir4200 +stk1160 +stkwebcam +st_magn +st_magn_i2c +st_magn_spi +stmmac +stmpe-keypad +stmpe-ts +stowaway +stp +st_pressure +st_pressure_i2c +st_pressure_spi +streamzap +st_sensors +st_sensors_i2c +st_sensors_spi +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv6110 +stv6110x +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sur40 +svcrdma +svgalib +sworks-agp +sx8 +sym53c416 +sym53c500_cs +sym53c8xx +symbolserial +synaptics_i2c +synaptics_i2c_rmi4 +synaptics_usb +synclink +synclink_cs +synclink_gt +synclinkmp +syscopyarea +sysfillrect +sysimgblt +sysv +t128 +t1isa +t1pci +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +tc1100-wmi +tc3589x-keypad +tca6416-keypad +tca8418_keypad +tcic +tcm_fc +tcm_loop +tcm_qla2xxx +tcm_usb_gadget +tcp_bic +tcp_diag +tcp_highspeed +tcp_htcp +tcp_hybla +tcp_illinois +tcp_lp +tcp_probe +tcp_scalable +tcp_vegas +tcp_veno +tcp_westwood +tcp_yeah +tcrypt +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18271 +tda18271c2dd +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda998x +tdfx +tdfxfb +tdo24m +tea +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tef6862 +tehuti +tekram-sir +teles_cs +test-kstrtox +test_power +test-string_helpers +tg3 +tgr192 +thinkpad_acpi +thmc50 +ti-adc081c +ti_dac7512 +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +timb_dma +timberdale +timblogiw +timbuart +timeriomem-rng +tipc +ti_usb_3410_5052 +tlan +tlclk +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmem +tmiofb +tmp006 +tmp102 +tmp401 +tmp421 +tmscsim +toim3232-sir +topstar-laptop +toshiba_acpi +toshiba_bluetooth +touchit213 +touchright +touchwin +tpci200 +tpm_atmel +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_i2c_stm_st33 +tpm_infineon +tpm_nsc +tpm-rng +tps51632-regulator +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65090-charger +tps65090-regulator +tps65217 +tps65217_bl +tps65217-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps80031-regulator +trancevibrator +tranzport +tridentfb +ts2020 +ts5500_flash +ts_bm +tsc2005 +tsc2007 +tsc40 +tscan1 +ts_fsm +tsi568 +tsi57x +tsi721_mport +ts_kmp +tsl2550 +tsl2563 +tsl2583 +tsl2x7x_core +tsl4531 +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +tua6100 +tua9001 +tulip +tuner +tuner_it913x +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +tusb6010 +tvaudio +tveeprom +tvp5150 +tw2804 +tw9903 +tw9906 +tw9910 +twidjoy +twl6040-vibra +twofish_common +twofish_generic +twofish-i586 +typhoon +u132-hcd +u14-34f +uartlite +ubi +ubifs +ucb1400_core +ucb1400_ts +ucd9000 +ucd9200 +uda1342 +udc-core +udf +udl +udlfb +udp_diag +ueagle-atm +u_ether +ufs +ufshcd +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_sercos3 +uli526x +ultrastor +umc +umem +ums-alauda +ums-cypress +ums-datafab +ums-eneub6250 +ums-freecom +ums-isd200 +ums-jumpshot +ums-karma +ums-onetouch +ums-realtek +ums-sddr09 +ums-sddr55 +ums-usbat +unioxx5 +unix_diag +upd64031a +upd64083 +uPD98402 +u_rndis +usb3503 +usb_8dev +usb8xxx +usbatm +usb_debug +usbdux +usbduxfast +usbduxsigma +usb_f_acm +usb_f_ecm +usb_f_ecm_subset +usb_f_eem +usb_f_mass_storage +usb_f_ncm +usb_f_obex +usb_f_phonet +usb_f_rndis +usb_f_serial +usb_f_ss_lb +usb_gigaset +usbhid +usbip-core +usbip-host +usbkbd +usblcd +usbled +usblp +usbmon +usbmouse +usbnet +usbserial +usb-serial-simple +usbsevseg +usb-storage +usbtest +usbtmc +usbtouchscreen +usbtv +usbvision +usb_wwan +u_serial +userspace-consumer +ushc +usnic_verbs +uss720 +uvcvideo +uvesafb +uwb +ux500 +v4l2-common +v4l2-dv-timings +v4l2-int-device +v4l2-mem2mem +vcan +vcnl4000 +ves1820 +ves1x93 +veth +vfio +vfio_iommu_type1 +vfio-pci +vga16fb +vgastate +vgg2432a4 +vhci-hcd +vhost +vhost_net +vhost_scsi +via +via686a +via-camera +via-cputemp +viafb +via-ircc +via-rhine +via-rng +via-sdmmc +via-velocity +via_wdt +video +videobuf2-core +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-memops +videobuf2-vmalloc +videobuf-core +videobuf-dma-contig +videobuf-dma-sg +videobuf-dvb +videobuf-vmalloc +videocodec +videodev +viperboard +viperboard_adc +virtio-rng +virtio_scsi +virtual +visor +vivi +vlsi_ir +vmac +vme +vme_ca91cx42 +vme_pio2 +vme_tsi148 +vme_user +vme_vmivme7805 +vmk80xx +vmlfb +vmw_balloon +vmwgfx +vmw_pvscsi +vmw_vmci +vmw_vsock_vmci_transport +vmxnet3 +vp27smpx +vpx3220 +vringh +vsock +vsxxxaa +vt1211 +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxge +vxlan +w1_bq27000 +w1_ds2408 +w1_ds2413 +w1_ds2423 +w1_ds2431 +w1_ds2433 +w1_ds2760 +w1_ds2780 +w1_ds2781 +w1_ds28e04 +w1-gpio +w1_smem +w1_therm +w35und +w5100 +w5300 +w6692 +w83627ehf +w83627hf +w83627hf_wdt +w83697hf_wdt +w83697ug_wdt +w83781d +w83791d +w83792d +w83793 +w83795 +w83877f_wdt +w83977af_ir +w83977f_wdt +w83l785ts +w83l786ng +w90p910_ts +w9966 +wacom +wacom_i2c +wacom_w8001 +wafer5823wdt +walkera0701 +wanxl +warrior +wbsd +wcn36xx +wd +wd7000 +wdt +wdt_pci +whci +whci-hcd +whc-rc +whiteheat +wil6210 +wimax +winbond-840 +winbond-cir +wire +wishbone-serial +wistron_btns +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wl3501_cs +wlags49_h25_cs +wlags49_h2_cs +wlcore +wlcore_sdio +wlcore_spi +wm831x_backup +wm831x_bl +wm831x-dcdc +wm831x-hwmon +wm831x-isink +wm831x-ldo +wm831x-on +wm831x_power +wm831x-ts +wm831x_wdt +wm8350-hwmon +wm8350_power +wm8350-regulator +wm8350_wdt +wm8400-regulator +wm8739 +wm8775 +wm8994-regulator +wm97xx-ts +wmi +wp512 +wusb-cbaf +wusbcore +wusb-wa +x25 +x25_asy +x38_edac +x86_pkg_temp_thermal +xc4000 +xc5000 +xcbc +xen-blkback +xen-evtchn +xen-fbfront +xenfs +xen-gntalloc +xen-gntdev +xen-kbdfront +xen-netback +xen-pciback +xen-pcifront +xen-privcmd +xen-tpmfront +xen_wdt +xfrm4_mode_beet +xfrm4_mode_transport +xfrm4_mode_tunnel +xfrm4_tunnel +xfrm6_mode_beet +xfrm6_mode_ro +xfrm6_mode_transport +xfrm6_mode_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_ipcomp +xfrm_user +xfs +xgifb +xgmac +xillybus_core +xillybus_pcie +xirc2ps_cs +xircom_cb +xo15-ebook +xor +xpad +xprtrdma +xsens_mt +x_tables +xt_addrtype +xt_AUDIT +xt_bpf +xt_CHECKSUM +xt_CLASSIFY +xt_cluster +xt_comment +xt_connbytes +xt_connlabel +xt_connlimit +xt_connmark +xt_CONNSECMARK +xt_conntrack +xt_cpu +xt_CT +xt_dccp +xt_devgroup +xt_dscp +xt_DSCP +xt_ecn +xt_esp +xt_hashlimit +xt_helper +xt_hl +xt_HL +xt_HMARK +xt_IDLETIMER +xt_iprange +xt_ipvs +xtkbd +xt_LED +xt_length +xt_limit +xt_LOG +xt_mac +xt_mark +xt_multiport +xt_nat +xt_NETMAP +xt_nfacct +xt_NFLOG +xt_NFQUEUE +xt_osf +xt_owner +xt_physdev +xt_pkttype +xt_policy +xt_quota +xt_rateest +xt_RATEEST +xt_realm +xt_recent +xt_REDIRECT +xts +xt_sctp +xt_SECMARK +xt_set +xt_socket +xt_state +xt_statistic +xt_string +xt_tcpmss +xt_TCPMSS +xt_TCPOPTSTRIP +xt_tcpudp +xt_TEE +xt_time +xt_TPROXY +xt_TRACE +xt_u32 +xusbatm +xz_dec_test +yam +yealink +yellowfin +yenta_socket +yurex +z85230 +zatm +zaurus +zd1201 +zd1211rw +zforce_ts +zhenhua +zl10036 +zl10039 +zl10353 +zl6100 +zlib +zr36016 +zr36050 +zr36060 +zr36067 +zr364xx +zram +zte_ev --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/powerpc/powerpc-e500 +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/powerpc/powerpc-e500 @@ -0,0 +1,16566 @@ +EXPORT_SYMBOL crypto/gf128mul 0x0c2f123f gf128mul_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x1068004b gf128mul_bbe +EXPORT_SYMBOL crypto/gf128mul 0x2f2889a0 gf128mul_init_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x384ef9ce gf128mul_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x56af0dbd gf128mul_x_ble +EXPORT_SYMBOL crypto/gf128mul 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL crypto/gf128mul 0xbd17a0df gf128mul_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0xc0890413 gf128mul_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/atm/suni 0x6fe84a28 suni_init +EXPORT_SYMBOL drivers/atm/uPD98402 0x6955548d uPD98402_init +EXPORT_SYMBOL drivers/bcma/bcma 0xe81785f4 bcma_core_dma_translation +EXPORT_SYMBOL drivers/block/drbd/drbd 0x127a5901 drbd_set_st_err_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x35131b36 drbd_role_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x7730f22d drbd_conn_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0xaf27bebf drbd_disk_str +EXPORT_SYMBOL drivers/block/paride/paride 0x0300a23f pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0x10a51b15 pi_write_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x3502da60 pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0x3a526428 pi_read_block +EXPORT_SYMBOL drivers/block/paride/paride 0x4aeb7bf2 paride_unregister +EXPORT_SYMBOL drivers/block/paride/paride 0x5142fc25 pi_read_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x89af5313 paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0xa1c12ae8 pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xab1a82d1 pi_init +EXPORT_SYMBOL drivers/block/paride/paride 0xd1221a65 pi_disconnect +EXPORT_SYMBOL drivers/block/paride/paride 0xe61ee8bb pi_release +EXPORT_SYMBOL drivers/block/paride/paride 0xf5521a1f pi_write_block +EXPORT_SYMBOL drivers/crypto/caam/caam 0xfd2b02dc caam_get_era +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x23a39064 split_key_done +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x3778670e caam_jr_free +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x38abbe04 gen_split_key +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0xbb030d6e caam_jr_strstatus +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0xd674e8e0 caam_jr_alloc +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0xeb27bc23 caam_jr_enqueue +EXPORT_SYMBOL drivers/crypto/talitos 0x0c3cae41 talitos_submit +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x4ef08b3d dw_dma_get_src_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x63bf19bc dw_dma_cyclic_free +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x6e1aa667 dw_dma_cyclic_prep +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x76df2988 dw_dma_cyclic_start +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x7840b161 dw_dma_get_dst_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xc3a92f45 dw_dma_cyclic_stop +EXPORT_SYMBOL drivers/edac/edac_core 0xfe95021f edac_mc_find +EXPORT_SYMBOL drivers/edac/mpc85xx_edac 0x90764c9d mpc85xx_pci_err_probe +EXPORT_SYMBOL drivers/firewire/firewire-core 0x02d1efe9 fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0x04dd92ce fw_core_add_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x136efaf4 fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0x16e91e21 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1bb4374e fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2237b06b fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0x22ac35b7 fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2faac34d fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x30a8fe1e fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0x33d58899 fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x37ff2b5c fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3962d799 fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3c56ef91 fw_workqueue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4d5d4eca fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4f2827c7 fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x532181cb fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6211eb2a fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x65c9438b fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x760773ae fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7c0e581d fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7e431b14 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x83ad0c68 fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x90863005 fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0x91956f57 fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x953ed8ff fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9d7e8819 fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xaef4061f fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb42222ec fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc20bdb24 fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc6054ca6 fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0xcff7aa82 fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd723d679 fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd867497b fw_iso_resource_manage +EXPORT_SYMBOL drivers/fmc/fmc 0x00603c34 fmc_scan_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x3815bb16 fmc_driver_register +EXPORT_SYMBOL drivers/fmc/fmc 0x47266331 fmc_reprogram +EXPORT_SYMBOL drivers/fmc/fmc 0x9ce8b46b fmc_device_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0xa01c68ec fmc_show_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xbeefa30f fmc_device_register_n +EXPORT_SYMBOL drivers/fmc/fmc 0xc196b330 fmc_driver_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0xc4e07287 fmc_find_sdb_device +EXPORT_SYMBOL drivers/fmc/fmc 0xce84a4e2 fmc_device_unregister_n +EXPORT_SYMBOL drivers/fmc/fmc 0xdca13d2a fmc_free_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xe3e24c74 fmc_device_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00025916 drm_mode_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00667d8a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x026c0d6b drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03fd6fa1 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x04d3f76b drm_mode_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x04e0b4b7 drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05c45e1c drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x075c48bd drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ad357a4 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ae4b94c drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0b094c2e drm_edid_to_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0b2d2706 drm_rmmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c532637 drm_pci_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d45342d drm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d746f16 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ec527fc drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0eec6e79 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fccafb1 drm_global_item_unref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x102d6dd1 drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10751235 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12441b00 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12c6276a drm_buffer_read_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13cdaadb drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x142b8b35 drm_buffer_copy_from_user +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a9a178 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1653d623 drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0x175f2813 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0x17944156 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x179ce519 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x189f6401 drm_mm_debug_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x194eadaa drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19e44324 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a770ac3 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1c5fc643 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x202e2abb drm_vblank_pre_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20645642 drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21b5368a drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2241f2a9 drm_addbufs_pci +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22a279c5 drm_select_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23359a6b drm_agp_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2435932e drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x273228cd drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x27764e47 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x27da67a4 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29243a48 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x297ce93c drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29ad006c drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a053f4f drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a942ab2 drm_mm_insert_node_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2b867fda drm_pcie_get_speed_cap_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2c6975ed drm_ati_pcigart_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d80be4d drm_mm_init_scan +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7a4300 drm_rgb_quant_range_selectable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ee29e81 drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f0b064f drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f20186c drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3221ccf6 drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x33806e62 drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x33af5b6e drm_pci_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x33bc84c0 drm_unplug_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x346127a7 drm_global_item_ref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3483f425 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36f91ef3 drm_mm_clean +EXPORT_SYMBOL drivers/gpu/drm/drm 0x388ab50b drm_mm_dump_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38a4f7ae drm_format_num_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ac1fef9 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ae7b2d0 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b9d009a drm_format_plane_cpp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d4b8108 drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eb2bc97 drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eb37b9d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x42269f83 drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x42c77bff drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43384bd9 drm_buffer_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x448f2bd8 drm_agp_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x449401c3 drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0x451be2fc drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4671a2b8 drm_core_reclaim_buffers +EXPORT_SYMBOL drivers/gpu/drm/drm 0x46b07fa8 drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49546658 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x498dcb5e drm_ut_debug_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49fabf0d drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4bc2e143 drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c511235 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e4a8d11 drm_rmmap_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ea1f5a2 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f112c5b drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4fb25ff2 drm_framebuffer_unreference +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e28c07 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0x526f6f71 drm_rect_calc_hscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54688b3a drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54b04e5e drm_mode_create_dirty_info_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54c991f9 drm_platform_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55e703e6 drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x561b4e79 drm_get_connector_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56f533d3 drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c2735c6 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5daba919 drm_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f891ba9 drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6090be61 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x625c8470 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x629c05e1 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x64ebb203 drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x651b5b86 drm_core_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66803841 drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0x671364a6 drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x68b9fcd5 drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6900d335 drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6a113d8c drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b6d7375 drm_timestamp_precision +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c2a1f9f drm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cee2e42 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6dc561eb drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6dcd6907 drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e12073e drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e4ec065 drm_idlelock_take +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e599e47 drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6ec7457d drm_mode_group_init_legacy_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x720aec76 drm_bridge_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7243a1b1 drm_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x73c5ed32 drm_idlelock_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75dbc006 drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75e6696f drm_addbufs_agp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75fb1475 drm_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0x771749d1 drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x796dd9a4 drm_pci_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a4e7297 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7b0ca8fb drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7bca14f6 drm_framebuffer_reference +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7ce62275 drm_addmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7ef14e5a drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80618262 drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81ba930c drm_mm_init_scan_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x82e92db0 drm_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x86cd31e7 drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x870ee720 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x892540df drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x896690de drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8bb1ac1e drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8cc75031 drm_connector_unplug_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dc0fbdc drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8de13715 drm_format_vert_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dfb019d drm_buffer_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8e84664c drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8eeefd66 drm_core_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8eff9111 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f7df3a7 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x90274bce drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9053c70f drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9358b0ff drm_bridge_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x959e7fa3 drm_get_last_vbltimestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96a3d399 drm_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96d9cd04 drm_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9745d638 drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9972db48 drm_rect_calc_vscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x997aa2f0 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a1f7b73 drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b8ba6f8 drm_mode_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d49890a drm_agp_bind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d70fc2a drm_rnodes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9dace6df drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9eccfe56 drm_mode_hsync +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9efc26a3 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1369bec drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1f4e9e6 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa28078b2 drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2f4d1f8 drm_prime_destroy_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5c61dc0 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5dbd572 drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6aa700d drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa96acfcb drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaea56d2a drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafb0cb6f drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafcc7104 drm_mode_connector_detach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb117cd4a drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb375fcb1 drm_agp_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4fae00d drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb572a9f0 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6506726 drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6d02bd0 drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb95beb55 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb966691b drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9e41a4d drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbaf89cb1 drm_get_pci_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbc4d3735 drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbdf0f799 drm_pci_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe001c53 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc017c2e7 drm_agp_unbind +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc053f4b6 drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4000f9f drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc40c5de2 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc414c422 drm_vblank_offdelay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f7cc11 drm_vma_offset_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc882ef9e drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc991c6a6 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca45efbc drm_format_horz_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca5af04e drm_vblank_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcaf68746 drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcc814d19 drm_get_encoder_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xccfb90ad drm_ati_pcigart_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd0fc417 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcec158f0 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf3344db drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf9bab54 drm_agp_bind_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd10d5fc4 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1111f44 drm_global_mutex +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1abf290 drm_sysfs_connector_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1c4909f drm_mode_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1d887b2 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2335101 drm_fb_get_bpp_depth +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd3d1214c drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4a120ab drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd73d2669 drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb5a5852 drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb5d556f drm_crtc_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbb5a9f5 drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc97bfba drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2ef97e4 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe36074e4 drm_agp_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe4c8ce59 drm_getsarea +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe59f8ce9 drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6f46e6e drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7197773 drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7914bfa drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe9990999 drm_prime_init_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec1ab10b drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec69ee7c drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed28ccb2 drm_agp_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed622fa4 drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee6f839c drm_calc_vbltimestamp_from_scanoutpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeeb1cd6e drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeec29470 drm_platform_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefdf9b69 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeff6d026 drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf08d712a drm_mode_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf15ca24d drm_vblank_post_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1832e9c drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf219f21d drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf268dec4 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3b03f94 drm_core_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf446a0e2 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf4dd063e drm_dev_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf5bc509f drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6d3a423 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6d7b81b drm_sysfs_connector_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf7491084 drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf8c6138a drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb497216 drm_mm_insert_node_in_range_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb4a6cb8 drm_agp_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfcdad544 drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd063935 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfdd3a10b drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe2c7b13 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe4a68c7 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffc6c87a drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x069bb0b2 drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x07cd96b3 drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x097c6467 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x098e47d2 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f96ec70 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x163251c8 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x16ec6ce5 drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x19d4fe5f drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1cdb8820 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1fdebd82 drm_fb_helper_fill_fix +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x23afbf9a drm_fb_helper_fill_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2828de42 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x28c131a4 drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2ba76f8d drm_fb_helper_single_add_all_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x30751dab drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x328aec4f drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x343c58a2 drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34871adf drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x488d1a92 drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5448eacb drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5f020663 drm_fb_helper_restore_fbdev_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6344ffd0 drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x711a004a drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84e924ba drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x86310d39 drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa1d3d342 drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa4afa8d8 drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa53938c3 drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa5882c18 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa77858bb drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8d6809d drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xac8da39e i2c_dp_aux_add_bus +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xadbba547 drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb69f6d2d drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc1e0d8bc drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc3d8dde0 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcf5b49aa drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xddb3ec6f drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe7f81c98 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xff3506b1 drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x44b218e4 drm_usb_exit +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0xb41a19f3 drm_get_usb_dev +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0xb4227962 drm_usb_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0226fc88 ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x132b05be ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x136f59fb ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x17ddac51 ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1e3d50c7 ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x20579ca3 ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2281f574 ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x23b4e54a ttm_bo_synccpu_write_grab +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x253973c8 ttm_bo_synccpu_write_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b54aa9a ttm_object_file_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3928d136 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x463f8812 ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x485a5bc0 ttm_ref_object_add +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4fe55235 ttm_bo_add_to_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5030a617 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x54ec1183 ttm_fbdev_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x55f05f24 ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x57cb0ff2 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5a8fdfea ttm_vt_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5cf59609 ttm_bo_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5e559014 ttm_agp_tt_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x64acf1c3 ttm_mem_io_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x67b1d568 ttm_bo_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6dd080ce ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6fcb5523 ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x70a01504 ttm_bo_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x721e7d93 ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7d55da85 ttm_read_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7ea99e1a ttm_agp_tt_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7eec46e3 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80cc6b1d ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80d86f0e ttm_object_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x815db251 ttm_mem_io_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x84a13931 ttm_write_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x868991f8 ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x880a15ad ttm_base_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x89a443de ttm_write_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8d14adbf ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x90019a68 ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x91633448 ttm_prime_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94894449 ttm_base_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9553017a ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x998e45c0 ttm_ref_object_base_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x99cf33ce ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9a5ef744 ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa2a129fd ttm_suspend_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa595de34 ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa73de2a9 ttm_vt_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa780b89a ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaa440ef1 ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb204fc1f ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb80376ce ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb83c6470 ttm_lock_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb8b4682b ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb9bb95a1 ttm_bo_del_sub_from_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc103006a ttm_object_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc22e9ad0 ttm_mem_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc2d61110 ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc47b0525 ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc5aa5d2b ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc5f0c2da ttm_read_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xce6e43a8 ttm_base_object_lookup_for_ref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcefd935e ttm_mem_io_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd1bc317d ttm_mem_io_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7cd26e1 ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7e51f42 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7f51742 ttm_suspend_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd8edb115 ttm_base_object_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe48596a3 ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe5013312 ttm_agp_tt_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe7a886ac ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xec1cef1c ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xef59405f ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf1338e51 ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfb7fab47 ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfbc2c5ec ttm_object_file_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfdf1b73b ttm_mem_global_release +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x0903c239 vid_from_reg +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0xef1c781c vid_which_vrm +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x5196b7fe i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0xc32f4141 i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0x227a0120 amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x7db0ed9c st_accel_common_probe +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xf5402f3f st_accel_common_remove +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x053e2bd6 hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x1f520753 hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x27bc9c4b hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x2a51dfbd hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x70914620 hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x8429b0f2 hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xa1d4df51 hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x10d60140 st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x1553024b st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x18a1e00b st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x287af543 st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x2f00c6d9 st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x345d8d34 st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x3a63c694 st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x4aeb61ba st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x781ba0f0 st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x8ac15b06 st_sensors_sysfs_get_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x8c521dcd st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xa9d979a8 st_sensors_get_buffer_element +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xb2f6169b st_sensors_sysfs_set_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xba8e0390 st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd5fdb89c st_sensors_check_device_support +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0xbaf45521 st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0x4969507e st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x2027a68b st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x5d455256 st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xc159cd26 adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xdce68d21 adis_enable_irq +EXPORT_SYMBOL drivers/iio/industrialio 0x02054de6 iio_buffer_store_enable +EXPORT_SYMBOL drivers/iio/industrialio 0x0ea6b7a8 iio_buffer_show_enable +EXPORT_SYMBOL drivers/iio/industrialio 0x1ddb55e5 iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0x2ae50b77 iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x4d3e12dd iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0x56d63c8e iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x5e1ccf87 iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x698e0c5b iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x6ef0a438 iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x7099d5db iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0x7933c7fb iio_buffer_read_length +EXPORT_SYMBOL drivers/iio/industrialio 0x9243591a iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0x978fea21 iio_buffer_register +EXPORT_SYMBOL drivers/iio/industrialio 0x99e04540 iio_buffer_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xa6bc0ef2 iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0xba6e738e iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0xc3f0d19a iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0xce2e406c iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0xd939891f iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0xdb505cb3 iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xf0fb098c iio_buffer_write_length +EXPORT_SYMBOL drivers/iio/industrialio 0xf1cb475e iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0xfce591da iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x29f9cdf4 iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0xe645c549 iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x6429ae74 iio_kfifo_free +EXPORT_SYMBOL drivers/iio/kfifo_buf 0xe0b85249 iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xe5a81af8 st_magn_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xf44970d7 st_magn_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xec19d9d8 st_press_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xf6fa9b47 st_press_common_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x049ace30 rdma_addr_find_smac_by_sgid +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x04b8b6d7 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x11861452 rdma_copy_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1c3c0ad3 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1ea5767b rdma_addr_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x273f4cca rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x32a8402c rdma_addr_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x446fd7c9 rdma_addr_find_dmac_by_grh +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x59252c9d rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4213ac77 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x444039a6 ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4a7fda21 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x5402209b ib_send_cm_apr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x638f3767 ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x650bf63f cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x6a2fb874 ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x7ae9a2f4 ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x81e49cd9 ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x872dda37 ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x96a51f03 ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x972d7e47 ib_send_cm_lap +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x996602db ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9ad1892b ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xa5b0d271 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xe23b120c ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xf2a465af ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x00ab64f2 ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x04eededf ib_alloc_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x05433c19 ib_alloc_fast_reg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06c6dc31 ib_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06c82fcf mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c1b9ac1 ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x106fe5ea ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x13a29eb0 ib_create_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14f84918 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x171f99f1 ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x185b85ad ib_query_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x192ee335 ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e491a04 ib_unmap_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x255b1f2c ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x263d669e ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a590aaf ib_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2b137528 ib_fmr_pool_map_phys +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2bcd8f5a ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ed6e386 ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2fe32fe1 ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x30942b1d ib_create_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x312f2806 ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x354b0388 ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x38e37972 ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x41478fa7 ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x43264d4a ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x475ccd3c ib_modify_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x47f046d1 ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4d7914a7 ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4f93d65e ib_query_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50dbc447 ib_flush_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x520b2638 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x52d6d76d ib_destroy_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x55ab1900 ib_destroy_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x55f097bd ib_resolve_eth_l2_attrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x585882ea ib_create_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5b3c640c ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5fdb0e1a ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x60937708 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x62b653f2 ib_get_dma_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6be4a246 ib_destroy_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e030e26 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7ddf5875 ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7ea0b80f ib_dereg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7eaa4459 ib_dealloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x82a6fd95 ibnl_add_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x82e6c009 ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86c45b5f ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x87448c2d ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8b48ef91 ib_find_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8c4b6abf ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8d3a1b58 ib_destroy_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x922ef8b9 ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x95527265 ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x95823e7a ib_fmr_pool_unmap +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x99d3c5ee ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x99db591f ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa0ea222a ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa29ee4a8 ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa4723d68 ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa5fe2f6b ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaae3cfe0 ib_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac217df9 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae5961b4 ib_get_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae88c55c ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaf311e0f ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb0b434d4 rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb1a312e1 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb76956e5 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb987ccaf ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbdf95769 ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbeaaefed ib_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc32b59ff ib_destroy_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc3ef977a ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc67f14a5 ibnl_remove_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc9257416 ib_dealloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd2ab05d8 ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd32d18ad ib_free_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xddf953d0 ib_reg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe09cbc13 ib_alloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe598a06f ib_rereg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5cbdec3 ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe894326f ib_dealloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xea2a8a2b ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xeac315c4 ib_get_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xec0b5568 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf284cbe5 ib_alloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf54b6da6 ib_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfc150956 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfe62f987 ib_init_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x3b2e2bf1 ib_register_mad_snoop +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x3d660d90 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x406b9fe7 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x5e09444a ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6a103fec ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6f077fcf ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7b5d4b7a ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x80321242 ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x946d5d27 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xb4bdd429 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xb50d3eef ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xb5fd50f9 ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xc98f6116 ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xd4dba0fc ib_process_mad_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xfd79985b ib_redirect_mad_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x22f07253 ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x2383110f ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x24222f21 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x31a6f553 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x5328d7a6 ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x576fdbac ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x98d1fbd8 ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x9a1cd50d ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xd715ee17 ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xddc330e7 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xe9091c55 ib_init_ah_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xf2ce4ae1 ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2569d757 ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x52a6ce77 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7971c00e ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe350f2aa ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x0c17fb7a iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x487027eb iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x666a1f3e iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x700d34cd iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x8e9f3834 iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xafd08b59 iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xd2cfa868 iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xe015a83e iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x02fa1663 rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x28306afd rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x30ef2af8 rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4bef45f3 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4ca80d4b rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x555b6b72 rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x5ff9afbf rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x66a99c5e rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x6d063741 rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7439e1b6 rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x74844d07 rdma_set_ib_paths +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7bd5d23c rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7dfa48ac rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x98fdad9f rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x9c6b62a7 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xada99331 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc28c9dd8 rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd192be35 rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd344d30a rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xeac4af1b rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf76200ed rdma_set_service_type +EXPORT_SYMBOL drivers/input/gameport/gameport 0x0fb3b729 __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x44a95771 gameport_start_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x53ac6785 gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x830a7d9b gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0x8832bc55 __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xda084aec gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0xeab4f11f gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xec212f66 gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0xec835ae5 gameport_stop_polling +EXPORT_SYMBOL drivers/input/input-polldev 0x05ee5c99 input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xd02453d8 input_unregister_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xd07bf01d input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xd8eea102 input_allocate_polled_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0x43d575b7 matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x3e234598 ad714x_disable +EXPORT_SYMBOL drivers/input/misc/ad714x 0x4db0b435 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/ad714x 0xb7105fb2 ad714x_remove +EXPORT_SYMBOL drivers/input/misc/ad714x 0xf747d7a2 ad714x_enable +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x892d76b2 cma3000_resume +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x89d9444e cma3000_exit +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xca3f100a cma3000_suspend +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xd02023a0 cma3000_init +EXPORT_SYMBOL drivers/input/sparse-keymap 0x2e4ba2da sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0x52005e6e sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0x5d53cdf2 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x74b46a71 sparse_keymap_free +EXPORT_SYMBOL drivers/input/sparse-keymap 0x9de7f0c2 sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/sparse-keymap 0xae057182 sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x47508174 ad7879_probe +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x97f83edf ad7879_remove +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0xe80b3da3 ad7879_pm_ops +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x00e9a1e6 capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x04403fcf unregister_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x14f2aa5a capi20_get_version +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x194ee4c6 capi_ctr_down +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2b8eab1f capilib_free_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2baa6586 capilib_new_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x31c24aa4 capi20_isinstalled +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x47d3fc51 capi_info2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x4e1acbfb attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x50b33ca4 capi_cmsg2message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x568e1e23 capi20_register +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6057c6f3 capi_message2cmsg +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x608f50ed detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x62e32d43 capilib_data_b3_conf +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x71e8d5ba capilib_data_b3_req +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7a26a8b2 capi_ctr_suspend_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7a33596c capi20_get_serial +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7e6f1307 capi20_get_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x8f699913 capilib_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9ca96f87 capi20_put_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9f823278 register_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xa7c4fd6c capi_message2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xaa165d27 capilib_release_appl +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb19fda8d capi_cmd2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb609ee5a capi20_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb60e5e5f capi_cmsg_header +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc10fe128 cdebbuf_free +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe19a11ac capi20_get_profile +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe5afe67c capi_ctr_resume_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe8ad9bd1 capi_cmsg2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xed061606 capi20_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xf91f7aa2 capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x07f7b7f3 avmcard_dma_free +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x2e2463a4 b1_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x366c9502 b1_parse_version +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x3ed0618f b1_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x63261ef2 avmcard_dma_alloc +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x65c8ff2e b1_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x68acc56b b1_free_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x6c74c74c b1_getrevision +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x829e0abc b1_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x85f09690 b1_irq_table +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x90eeaf28 b1_load_t4file +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xb390e760 b1ctl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xb645a04d b1_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xdfd28376 b1_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xe209c7ab b1_loaded +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xe347e0a8 b1_load_config +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xf6b1c1f4 b1_alloc_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xfa10fee4 b1_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x18d4463a b1dma_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x473b0f3d b1dma_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x5e631e84 b1dma_reset +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x7a0034e0 b1dma_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x84970237 b1dmactl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x904bd2bb b1dma_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x92bc990b t1pci_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xa607c5af b1dma_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xaad2cc9b b1pciv4_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xd6f9f1ea b1dma_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0x29562993 b1pcmcia_delcard +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xaec3240e b1pcmcia_addcard_m1 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xea620116 b1pcmcia_addcard_m2 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xf14bf8b1 b1pcmcia_addcard_b1 +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x2974ead1 DIVA_DIDD_Read +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x7ab59853 proc_net_eicon +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x25ed6d10 mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x7189757a mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x9ff472a7 mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xcb27ac33 mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x56917029 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x85454c01 mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x07f4f2ce hisax_unregister +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x148f0c99 FsmFree +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x2d08d5b4 hisax_init_pcmcia +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x7f29ce36 FsmInitTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x93a64734 FsmChangeState +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x9df0cd27 FsmEvent +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xe227344e FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xee93522c hisax_register +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xf0a16657 FsmNew +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xfc27303b HiSax_closecard +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xff2db2cf FsmDelTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x0bdf23e5 isacsx_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x12f9222b isac_init +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x214a9ef7 isacsx_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x3f3b323a isac_d_l2l1 +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x4c9bb7b5 isac_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xc3432b22 isac_irq +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x1756eb69 register_isdn +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x46458501 isdn_ppp_unregister_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xaffa5523 isdn_ppp_register_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xfa06820f isdn_register_divert +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x3b71e4fc isdnhdlc_decode +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x59cc8a7e isdnhdlc_out_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x8ee38862 isdnhdlc_rcv_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0xfd9d4c09 isdnhdlc_encode +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x06ab4289 queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2348cc3c mISDN_FsmFree +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2bed2f55 mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x3bf5ff4e mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x41b22249 mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x42766785 bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x43a33ca0 mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x45df85e8 mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x54451388 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x568959d9 recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x614ede30 mISDN_FsmAddTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6ed0e1bd recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x826d966e mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8a4e99fb mISDN_clock_update +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x918506aa bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x96309324 mISDN_FsmDelTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9ac75b41 recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9c1032e1 get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb1141fcd create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbb55b365 mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbf1f5b03 mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc85c56aa recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd285995f mISDN_clock_get +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd5145151 mISDN_FsmEvent +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe613f430 mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe87943cf mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xeda3bf25 mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf3bde545 recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf663542f dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf9e7832f mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xfa086340 get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xfd0dae91 mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x01087af0 mISDN_dsp_element_unregister +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x60721da7 dsp_audio_law_to_s32 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xa215f1b2 dsp_audio_s16_to_law +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xb98308d8 mISDN_dsp_element_register +EXPORT_SYMBOL drivers/md/bcache/bcache 0x6bb4059e closure_sync +EXPORT_SYMBOL drivers/md/bcache/bcache 0x89fc25aa closure_sub +EXPORT_SYMBOL drivers/md/bcache/bcache 0xaa8901f3 closure_wait +EXPORT_SYMBOL drivers/md/bcache/bcache 0xe3c17af1 __closure_wake_up +EXPORT_SYMBOL drivers/md/bcache/bcache 0xebe492ef __closure_lock +EXPORT_SYMBOL drivers/md/bcache/bcache 0xfb539ad3 closure_put +EXPORT_SYMBOL drivers/md/bcache/bcache 0xfc4972d8 closure_trylock +EXPORT_SYMBOL drivers/md/dm-log 0x44291326 dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0x9952d659 dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0xafd3501b dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-log 0xb3fea12d dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0x2a0d44c9 dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x2f36de48 dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0x6ebb32af dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0xaf896b51 dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0xce93ab3c dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0xfcc87ac1 dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/raid456 0x206821da raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x24075e0a flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x4073424c flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x47fcf7ce flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x59e2b65c flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x5fc84df7 flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x61722bf4 flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x69dff5c2 flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x9ed8f405 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xbea31863 flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc92fbe55 flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xd6a4bfea flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xe8c78155 flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xeb10efb8 flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x495e4b0c btcx_calc_skips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x9e8bccea btcx_riscmem_alloc +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xad2fe38b btcx_sort_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xc368f8e6 btcx_align +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xcae915d1 btcx_riscmem_free +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xcda0ded2 btcx_screen_clips +EXPORT_SYMBOL drivers/media/common/cx2341x 0x1ca0c084 cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0x2f25eee2 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0x32ad6208 cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0x3db8be82 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cx2341x 0x5b88faf6 cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0x61d4f020 cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0xa79937fe cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0xabd94483 cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc184ec1e cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf76ce95 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf8b77a4 cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0x75695f8c cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x4c63f1f9 tveeprom_read +EXPORT_SYMBOL drivers/media/common/tveeprom 0x6f1e330a tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0135fce1 dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x14bd4618 dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x17523ce7 dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x19591134 dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x22d6ce4a dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x23634a89 dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x28ee2ae8 dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x361a7512 dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x365441d0 dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x39353a40 dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3f7224d5 dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4398f8b7 dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x499cd22b dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4d3b9a9c dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4f4cb854 dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5b09e345 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5f176f50 dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x61dded89 dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x62346235 dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x74a5a698 dvb_filter_pes2ts_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x762f046f dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x78d62338 dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7abc8645 dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7b7181ff dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7ba5d8bd dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7d69f63f dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7f61f52c dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7fddcb15 dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80e3832d dvb_filter_get_ac3info +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x81711731 dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8a924d7b dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8e47dce5 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa22bf053 dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xac4ca1b0 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc32f26d5 dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc584feec dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xcc7a6f7f dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd68a099e timeval_usec_diff +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdb576668 dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe2ad75a0 dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe5ae8707 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf4cd1671 dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf826deb0 dvb_filter_pes2ts +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf9be9f58 dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/a8293 0x30a08bca a8293_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9013 0x2160638c af9013_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9033 0x61f5c7ca af9033_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0x63020de3 atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x131bb59d au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x15367182 au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x3ac7b590 au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x424a1a6b au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xaad55db9 au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xbcf65fa8 au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xcff90546 au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xe3bec19d au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xffd039d0 au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0x21a1e3be au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0xc67428ce bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0xd83b5634 cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0xeb999129 cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0x9c43ebda cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x81d4d5ec cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x8bace45b cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0xb89aeedc cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xa5103ccf cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xd7140cef cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0x7111d9d2 cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x41dec856 dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x90043816 dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xc44015f9 dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xcf083699 dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xdd5718c4 dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x0588c33e dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x192ab4ae dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x1d9813d8 dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x261ea474 dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x366c24f5 dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x636d92e1 dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x884f1809 dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x8efbd5c5 dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x92aec386 dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x96314a60 dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x9a547d97 dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xa1c542b9 dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xc98e40eb dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xd6fa8c18 dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xecaaaafa dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0xc49b3aa8 dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x399355c7 dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x3fc49feb dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x85fedc2c dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x92e92387 dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xa531c2da dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xba37f9e9 dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x5c21baf6 dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x7c6b6ea5 dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x9c5a1749 dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x9ff8f1f1 dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x0a2864e5 dib7000p_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x0d0c17dc dib7000p_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x1e2cc560 dib7090_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x35e32ffe dib7000p_set_agc1_min +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x38ad7811 dib7000pc_detection +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x3ffd11f5 dib7090_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x88f96c26 dib7000p_get_agc_values +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x971e4ae1 dib7000p_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xa38a7ee2 dib7090_slave_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xbaac5c11 dib7000p_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xbd848a72 dib7000p_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xc89bfe41 dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xc9b88485 dib7000p_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xd61e3e6c dib7000p_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xe3ce0eae dib7000p_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xe6bc8ba8 dib7090_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x0b26d42f dib8000_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x2ae5a41a dib8000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x37f1ebcb dib8000_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x4e69a263 dib8000_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x5ee7afd9 dib8000_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x60e43999 dib8000_remove_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x647ea844 dib8000_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x656ce38e dib8000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x6cad6672 dib8096p_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x6df14e42 dib8000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x8e4dca83 dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x98b47845 dib8000_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa0d7614b dib8090p_get_dc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa3515c4f dib8000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa7ad9a45 dib8000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xc34cb8b4 dib8096p_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xc522a25b dib8000_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xcdda9efc dib8000_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xe0d9b161 dib8000_pwm_agc_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x86bd167f dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x89b48571 dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xad3ad91c systime +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xbc4c773a dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xd0a8b7ed dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xf8e6a4fa dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x1433f3e8 drxd_config_i2c +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0xc11809e2 drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0x268e04b3 drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0x88e1e1e5 ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0x2986f0e4 dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0x291d6c81 ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0x2cc26f08 isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0x508a4ba0 isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0x4008fce9 isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/it913x-fe 0xb4de1685 it913x_fe_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0x5b283758 itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0xa08bc45c ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0xa3de5cce l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0x5cf5b582 lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0x188a1e63 lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0x36257de1 lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0xa7a69ba4 lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x135747ef lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x9ff72132 lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0xa3ded190 lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0x170005d7 m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0x87a3ea06 mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0xfa64c9dc mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0xfcc2c059 mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0xca633d50 mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0x4b2726bc nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0x72d2180d nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0xca5dca5b or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0x3e504d00 or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0x140c5950 rtl2830_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0xd60cb294 rtl2830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2832 0x4ddaae58 rtl2832_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0x23fda3fc s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0x8f3abaec s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x2fbff222 s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x36a6354d s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0x8eae4dfa s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0x8ef303c7 si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0x5696ff67 sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0xce0a06bc sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0x2ab3ea1f stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0xa6c5f148 stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0x4387323f stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0x8f6fc783 stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0xefc8a452 stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0x11dfa6f0 stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x532770a0 stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x8be4509d stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0xcbc3cb0b stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x5e288261 stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0xc4e85dee stv090x_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0x6443d027 stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0x0e543c6c stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0xbdf4bff5 tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0xb61f22a0 tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0x6ced2333 tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x322de9ab tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0xe2417abf tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10071 0x6ab0ce21 tda10071_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0xb8ba563c tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0xc84aed49 tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0xd9216109 tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0x7499e6fe tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0x89a0530b tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0x558b0885 ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0x3cd47a05 tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0xf9193dbf ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0xd083ad9b ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0xcb9922cc zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0x28b343b7 zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0xa8e78814 zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x010562e2 flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x1efa06bc flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x32c12b25 flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x9f5a4145 flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xc83c73c0 flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xdee5d107 flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xe820a0b9 flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x5a08f425 bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x8120fa35 bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xb0d1db6e bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xd5d0bdef bt878_num +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xf933dff9 bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x11dc4b6d bttv_gpio_enable +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x697cd69c bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x7d4e131a bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xefa79401 bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x4bbfe78e dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x7feb98f5 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x80c2b3a8 dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x988b7f2d dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x9c9662ad write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x9e37adf0 read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xb790b25a rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xc81a473b dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe94b8c9c dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xf10eb791 dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0x4870a48c dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x18437ef2 cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xa25b1ff1 cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xaa559f29 cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xb385e049 cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xc5c3d97f cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x2b1b4cb5 altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x73360330 altera_hw_filt_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x85713849 altera_pid_feed_control +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x9247b72f altera_hw_filt_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x08f6ffef cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x3667c503 cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x5ae70198 cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x7759d0c7 cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x784853c3 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x9d83b01e cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xa43971c8 cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xc5d38741 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x011abea4 vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x90400c3b vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x0f376d13 cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x58267685 cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x629d3665 cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xacf1ec13 cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x102a4efa cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x10ebab5f cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x574b1f70 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x7dbb42c6 cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x82964f8e cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xcc8b0d49 cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x0157f84f cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x0756eddc cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x153a4e86 cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x18a82000 cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x22f33a32 cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4216fc84 cx88_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4b4f7561 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x54916f3c cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6141c8c5 cx88_tuner_callback +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6496d7ab cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x64d398e4 cx88_risc_stopper +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6520de43 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6a02e1e9 cx88_free_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x714fcaa4 cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x76417fe6 cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7642ed3c cx88_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x8661f967 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x904b8696 cx88_audio_thread +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x9c9b702d cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xad22154b cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc48eee14 cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc9d4e325 cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd8a60252 cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xe0b28f90 cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf61b7a18 cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf832171b cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x16aa3f52 ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x1bf07252 ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x1caadb30 ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x1fa6e395 ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x24a48c57 ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x3f8bbc5b ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x414de900 ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x51e69128 ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x631a6e70 ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x6b1a9558 ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x7f4a1716 ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x85ad807d ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x92ef170a ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb1289b3c ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb1f30813 ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc5d609e8 ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xede3c1d4 ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x04e83446 saa7134_tuner_callback +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x08945dee saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x09214a50 saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1211df5d saa7134_devlist +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1f712447 saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x5639e831 saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x5b397c21 saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x66a504f5 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x70c03300 saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x73039031 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x7ea13e36 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x8ab02eda saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x90d47dda saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x986b6d0d saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xace94904 saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x03f90582 ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xc3e4c127 ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x011a5ac6 videocodec_detach +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x629fc1bb videocodec_attach +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x8a5c8743 videocodec_unregister +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0xdbcc60d1 videocodec_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x151ca082 soc_camera_xlate_by_fourcc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x21ca9979 soc_camera_lock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x490923e1 soc_camera_host_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x58cdfaf6 soc_camera_apply_board_flags +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xb46e43d7 soc_camera_host_unregister +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xb68f6f3f soc_camera_power_init +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xc3919c23 soc_camera_power_off +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xd7eb670e soc_camera_power_on +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xf42d48a2 soc_camera_unlock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x25c52d97 soc_mbus_samples_per_pixel +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x2863728e soc_mbus_image_size +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x5f3e3558 soc_mbus_bytes_per_line +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xa9546115 soc_mbus_find_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xc8b28da5 soc_mbus_config_compatible +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xfe2c3a07 soc_mbus_get_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x02851de7 soc_camera_client_scale +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x1de71f5d soc_camera_client_g_rect +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x2e99fdb6 soc_camera_calc_client_output +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0xab2653a7 soc_camera_client_s_crop +EXPORT_SYMBOL drivers/media/radio/tea575x 0x382cf2bb snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0x669bcf50 snd_tea575x_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xbbb5079c snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xe917a416 snd_tea575x_exit +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x04dca738 lirc_unregister_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x1d5229e3 lirc_dev_fop_ioctl +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x2ae03d3c lirc_dev_fop_open +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x4f418aa2 lirc_dev_fop_write +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x65910038 lirc_dev_fop_close +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x810c3943 lirc_dev_fop_poll +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x84667dad lirc_get_pdata +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xc628bd26 lirc_register_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xca2d1721 lirc_dev_fop_read +EXPORT_SYMBOL drivers/media/rc/rc-core 0xaf684a1c ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0xb48b6144 ir_raw_handler_register +EXPORT_SYMBOL drivers/media/tuners/e4000 0x654f8ed8 e4000_attach +EXPORT_SYMBOL drivers/media/tuners/fc0011 0x254cd22a fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0x3f215aab fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x2b756047 fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x59f0e985 fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x80a963d8 fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/fc2580 0xefbd5cbe fc2580_attach +EXPORT_SYMBOL drivers/media/tuners/max2165 0x5461e7db max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0xc346b846 mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0xff35d792 mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0xd476bfd6 mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0xb6dd6567 mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0x9c97aca0 mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0x5b3246f1 qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18212 0xa64009c7 tda18212_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0xc25df13b tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tua9001 0x54b359ee tua9001_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x0cb4b189 tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0x4d89613d xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/tuner_it913x 0x69f3ed50 it913x_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0x753dfd72 xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0x08e34cc5 xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x94a8ae28 cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xa53e958e cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x27da3265 dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x2e99bd41 dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x57b1d162 dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x664dfa24 dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x6a05a69e dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x9a6d4a84 dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xdd208edc dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xedf0e903 dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xfe8f45f4 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x34fd4a25 dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x394fbdfd dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x440e55ae dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x4e24bbe2 usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x530f24e4 dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x656838fe dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x73499494 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x13e247e0 rc_map_af9005_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x5caec218 af9005_rc_decode +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xd4e288db rc_map_af9005_table_size +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x01a2d293 dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x10286512 dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x12fe2422 dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x1534ab96 dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x1bf166f6 dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x39ec8763 dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x78a4d642 dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x7fe1d52f dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb47559e0 rc_map_dibusb_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xd09e949d dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xe3526884 dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xf279f480 dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x8c8d4c22 em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0xac16ad57 em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x55bc4d2b gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x5c2f01b4 gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x92d5e65e gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9f353501 gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xb3eee127 gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xd2eb12bf gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xe0e50c0f gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xe53b2f73 gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x3ef008c7 tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x9a2ba4df tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xdc3f87b1 tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x999ffab7 ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0xb258fb7d ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x42c8e001 v4l2_ctrl_next +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x4adaf0f3 v4l2_ctrl_query_menu_valid_items +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x53c9394f v4l2_ctrl_query_menu +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x5f96a661 v4l2_ctrl_check +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0xabe27502 v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x1b65fa9d v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x589e1e9a v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xf6152f14 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x13615525 videobuf_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x1c804bd8 videobuf_dvb_register_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x65565321 videobuf_dvb_find_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xa4503f63 videobuf_dvb_get_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xe9668aaf videobuf_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xf41d8659 videobuf_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf2-core 0xc9f02eb4 vb2_querybuf +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x02ebbaa5 v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0b3f54d8 v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0c0afa0a v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0c828214 v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x140e371b v4l2_of_get_remote_port_parent +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x14c44a86 v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x159ffe00 v4l2_subdev_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x15b9b7cd video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1a16411c v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x240e4e8f video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2467cc6e v4l2_subdev_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x29dc4298 v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2b3ab2b3 v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2b53b777 v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x358b1ad9 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x35ee97c3 v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x36847d11 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3a22f0b8 v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3b40f3f5 v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3db7f213 v4l2_of_get_remote_port +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4181da43 v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x426fe69c v4l2_ctrl_add_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x43514292 v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4942e904 video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x495426ee v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x49ba46d7 v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x49cb8bd8 v4l2_subdev_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4bad815a v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4ca4897c v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5529112d v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x57a58d11 v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x597abe18 v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5e1163f5 v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6296560c v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x65e838df __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7a3cd015 v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7cb32ade video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7d8b92be v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7e4daef5 v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7f923f2a v4l2_of_parse_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7fc4c965 v4l2_subdev_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7fff3997 v4l2_subdev_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x824c2429 v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8367667c v4l2_subdev_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x852ef6c0 v4l2_subdev_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x86ec8730 v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x876f5c5c v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x87dc752b video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8999d170 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8c001bd1 v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8c6d7287 video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8cfffb1b v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x92e12bf5 v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9851d918 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9b90abf2 v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9f5b9814 v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa32f8d05 v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa378014a v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa3939e80 v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa5aacb57 __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xada438d5 v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb3f32ef4 v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb472e6a8 v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb90cbedf v4l2_of_get_next_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbac4a225 v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc27a8b1 v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbfc0f5f2 v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc0f17546 v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc12cf8f8 v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc4c4d8c6 v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcac7b98f video_usercopy +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2355039 v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe6fce6f2 v4l2_ctrl_merge +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf4eda742 v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf5eb0961 v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfa058656 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/memstick/core/memstick 0x097f5ad3 memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x1ad9e32a memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0x23fb90ea memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x411c4792 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0x4bfb64f4 memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x55f35bef memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5d820a02 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x84b58f8c memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x93580f03 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa5987a36 memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xb18a5778 memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xbecff1e8 memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0xef26d277 memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xf261f666 memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x01888b1f mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x0d7ee4a5 mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x11b4adc4 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x198b8592 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1b300408 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x221e904b mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x282d9d63 mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4526289b mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5c445129 mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6427b33c mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6d63227e mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x72b52645 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x765e302d mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x79f4d89f mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8b03e0d6 mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x966f40c8 mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9aa7208a mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa08513cd mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa1844b5b mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb07a646f mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb2ef0e98 mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb435249f mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb484129c mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb975a010 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xbc0984e5 mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc0e69f82 mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc47c22e8 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc578be5b mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc9a90189 mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd3748a23 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd9a92a75 mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xda436c7b mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xfa8f2e78 mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x014cd68a mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0a455d19 mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1044f372 mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2293dcf3 mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2a97b2d6 mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x30be52bf mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x33db8ce2 mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x362e041f mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x397dcfca mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3f2b8bda mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x406a9a20 mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4922b34f mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x58f24a24 mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x6ce3f383 mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x7608831d mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8460c920 mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x882d8dc4 mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8f3f3d74 mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9a1675c9 mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9cb7b27c mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xaf9a6313 mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xbdf40d81 mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xdef9e8cf mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe6b9bb7a mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe97542bc mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf362092f mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf8b0028f mptscsih_remove +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2a843bef i2o_dump_message +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2aa7ed6c i2o_parm_field_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2fa75938 i2o_driver_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x369fb3f4 i2o_find_iop +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x3890609b i2o_parm_issue +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x3976835a i2o_status_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x525bab4d i2o_exec_lct_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x5c40f110 i2o_iop_find_device +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x5c6497d2 i2o_driver_notify_device_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x600125ea i2o_device_claim +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x6b1c3323 i2o_parm_table_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x8e8686c0 i2o_driver_notify_controller_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x91490150 i2o_driver_notify_device_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x9cb75aa9 i2o_msg_get_wait +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb1087b82 i2o_driver_unregister +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb449d99c i2o_event_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb4c00dcf i2o_controllers +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xe28f70d7 i2o_driver_notify_controller_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xe952729b i2o_device_claim_release +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xf955b956 i2o_msg_post_wait_mem +EXPORT_SYMBOL drivers/mfd/cros_ec 0x54b2ebc1 cros_ec_register +EXPORT_SYMBOL drivers/mfd/cros_ec 0x88508408 cros_ec_prepare_tx +EXPORT_SYMBOL drivers/mfd/cros_ec 0xd4d5a4b0 cros_ec_remove +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x818b86fe pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xe9bd3f7c pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0566348a mc13xxx_irq_request_nounmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0c4396ca mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x13a76454 mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x26a36d75 mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x4d43bb8a mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x5ad3c935 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x7717a901 mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb0ce5bf5 mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb7ebae51 mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xc4919f41 mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xd42460d8 mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xd6813a07 mc13xxx_irq_ack +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xf9404438 mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/tps6105x 0x54aac0da tps6105x_mask_and_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0xe7baf032 tps6105x_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0xe829c5c0 tps6105x_get +EXPORT_SYMBOL drivers/mfd/tps65010 0x02d4ad0f tps65013_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0x0c6ad2cf tps65010_config_vdcdc2 +EXPORT_SYMBOL drivers/mfd/tps65010 0x28485130 tps65010_config_vregs1 +EXPORT_SYMBOL drivers/mfd/tps65010 0x33739de7 tps65010_set_vib +EXPORT_SYMBOL drivers/mfd/tps65010 0x9fd44c69 tps65010_set_led +EXPORT_SYMBOL drivers/mfd/tps65010 0xb14080cc tps65010_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0xd5bb106d tps65010_set_vbus_draw +EXPORT_SYMBOL drivers/mfd/tps65010 0xe99b3f36 tps65010_set_gpio_out_value +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x71b71efb ad_dpot_remove +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x80eea5a5 ad_dpot_probe +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x58765536 altera_init +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x38c3097b ssc_free +EXPORT_SYMBOL drivers/misc/atmel-ssc 0xc44d4323 ssc_request +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x0e9755b9 pwm_channel_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5a8b82f9 pwm_channel_handler +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5d5c2951 pwm_clk_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x6a5e1f70 pwm_channel_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x73330c97 pwm_clk_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0xeb7f2c6f __pwm_channel_onoff +EXPORT_SYMBOL drivers/misc/c2port/core 0x5d1ade03 c2port_device_register +EXPORT_SYMBOL drivers/misc/c2port/core 0xa0922ae9 c2port_device_unregister +EXPORT_SYMBOL drivers/misc/ioc4 0xe1e1a4db ioc4_register_submodule +EXPORT_SYMBOL drivers/misc/ioc4 0xe94f0157 ioc4_unregister_submodule +EXPORT_SYMBOL drivers/misc/tifm_core 0x054edf42 tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x119e2d63 tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x38af2191 tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x39f86aa1 tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0x3bab0d60 tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0x4dfb460f tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x52d075a3 tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x68044cf2 tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0x875953da tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xa98bcdcd tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0xcb22ad79 tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xda3175b2 tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xe2e7d02c tifm_free_device +EXPORT_SYMBOL drivers/mmc/card/mmc_block 0x10b4d03c mmc_cleanup_queue +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x1c71e7e3 cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x6abdbc75 cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x96f23717 cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x13cd0534 register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x26c829d0 unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x53422d0a do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x5c6f2044 map_destroy +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0x3ea9291b mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0x75c19fb7 lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0x21b8831d simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0x126a0ee4 mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/mtd 0xf3f917ea mtd_concat_create +EXPORT_SYMBOL drivers/mtd/nand/denali 0x2cc04bbe denali_remove +EXPORT_SYMBOL drivers/mtd/nand/denali 0xb8d0264a denali_init +EXPORT_SYMBOL drivers/mtd/nand/nand 0x2fd9f7c4 nand_scan_bbt +EXPORT_SYMBOL drivers/mtd/nand/nand 0x4e563420 nand_scan_ident +EXPORT_SYMBOL drivers/mtd/nand/nand 0x58b2f8dd nand_scan_tail +EXPORT_SYMBOL drivers/mtd/nand/nand 0x87083b88 nand_lock +EXPORT_SYMBOL drivers/mtd/nand/nand 0x9be731ea nand_unlock +EXPORT_SYMBOL drivers/mtd/nand/nand 0xcccf0f25 nand_scan +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x158467fb nand_bch_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x70097aa0 nand_bch_free +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0xa4f735f8 nand_bch_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0xd2f21ee0 nand_bch_init +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x19d8db84 nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x3132ee65 __nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x3779c2c5 nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xb4b94377 __nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0x57a31e57 nand_flash_ids +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0xa336feb7 nand_manuf_ids +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x39a107a0 onenand_addr +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x4275cee4 onenand_scan_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x4bdd1b28 flexonenand_region +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x71b51236 onenand_default_bbt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x283d4237 arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x435e5cee arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6276e53a arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x71619e11 arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x71fc1ff4 arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x9018e430 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xb4d2835a arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xc2939e39 arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xd333ee9d alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xf16e22ce arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x06e11710 com20020_netdev_ops +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x4a244000 com20020_check +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xfb7bf961 com20020_found +EXPORT_SYMBOL drivers/net/dpa/dpaa_1588 0x44c29fd5 dpa_ptp_cleanup +EXPORT_SYMBOL drivers/net/dpa/dpaa_1588 0x6600fe0b dpa_ptp_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x35987b3f ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x3be7da14 ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x4e6930ac ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x55bc91bf ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x5ab7d4d5 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x5ba2a44d ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x66182089 __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x7b385f71 ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xcb5e0d43 ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xf5efe164 ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0xf769485c cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x1a110e24 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x341ba612 cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x54d28a4e dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x6c048de6 cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x6ea5a2c6 cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x8ebc62d9 cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x95644880 cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x97106a71 cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x9720c08a t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x9d1bd718 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xbeff4a81 t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xc9c8db6e t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xcbfd8c8e cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xcfed93dc t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xe357caee cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf5f48fe3 t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x15f85507 cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x17a79de8 cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2cbeb302 cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2f358e54 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x362a934e cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x434b9989 cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4c2e3573 cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x53a8460f cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6e2f6ec6 cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x78ffe293 cxgb4_enable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9478ac7a cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9b9193fc cxgb4_disable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb08240f3 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb2602f73 cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb4ca885b cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xbdce3a63 cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc34cc681 cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc4f4c775 cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc9ef4060 cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcd59452b cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd00e5a36 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd1595e42 cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xdcca1932 cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe0a15ed6 cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe3a7ca4b cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf078c680 cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf36f80cb cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf55dff29 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf962260a cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x0805a5a1 vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x0e712340 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x4f650da7 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x69e036dc vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9196d804 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xa44446b1 enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x4f200a36 be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x938d30c2 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xbab62e22 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/freescale/gianfar_driver 0x79f28897 gfar_phc_index +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x05ea1485 set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x07f597f9 mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0e3add7c mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x105c1823 mlx4_set_stats_bitmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x13ea4be7 mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2f468ae1 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x33d9c164 mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3ce1aa4f mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4c9dff9d mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x547e8fcc mlx4_test_interrupts +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x54857830 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6dbb642b mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x742de578 mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8071c37b mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8224c562 mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x91c06c82 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9ff037a9 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa1f4cdd7 mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa274b1f1 mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb92e1050 mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc1cda472 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcc5d93a3 mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd8f56de1 mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xed72a499 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0bdeead6 mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x23c791c7 mlx5_core_dump_fill_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x26875721 mlx5_dev_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x34a3dba0 mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x35489946 mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x363f898b mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3d716ecb mlx5_core_arm_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x519c13a7 mlx5_core_create_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x548b98aa mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x65cf0f47 mlx5_dev_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7627d093 mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7a49dc62 mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7bd6cb83 mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x98e49795 mlx5_core_get_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x99adc4eb mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e91aef9 mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa58f3c6a mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa7dd2ddc mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa8f5d157 mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xab2f54c5 mlx5_cmd_comp_handler +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb3aa0189 mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd522fdd6 mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd52877b2 mlx5_core_destroy_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd71416eb mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd8f27d1a mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe39d3f6c mlx5_core_query_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfa7a142c mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x4ef94973 hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x6f531709 hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x8c2b858b hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xc0d915f4 hdlcdrv_register +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xd9d0ebac hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x02946174 sirdev_write_complete +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x282ab936 sirdev_get_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x2b25a3e1 sirdev_receive +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x419c7453 sirdev_raw_write +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x5f4dd2dc sirdev_set_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x682e3118 irda_register_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x72b9900b sirdev_raw_read +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x75315d0e irda_unregister_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xa2457d5b sirdev_put_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xab7a2c8d sirdev_set_dtr_rts +EXPORT_SYMBOL drivers/net/mdio 0x22bce513 mdio_mii_ioctl +EXPORT_SYMBOL drivers/net/mdio 0x43e4defc mdio45_nway_restart +EXPORT_SYMBOL drivers/net/mdio 0x7577f992 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0xa1a29548 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0xb34a7575 mdio45_ethtool_spauseparam_an +EXPORT_SYMBOL drivers/net/mdio 0xc6b1163f mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0xddc98749 mdio45_ethtool_gset_npage +EXPORT_SYMBOL drivers/net/mii 0x2983b166 mii_check_media +EXPORT_SYMBOL drivers/net/mii 0x2cc453ff mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0x365f739c mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0x6106abad generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0x6489467e mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0x8fcefcaf mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0xcaa4106c mii_link_ok +EXPORT_SYMBOL drivers/net/mii 0xd227d116 mii_check_link +EXPORT_SYMBOL drivers/net/ppp/pppox 0x9166b280 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0x9e804569 pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xdacfbb94 register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/sungem_phy 0x70792ca1 sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x081f516c team_mode_unregister +EXPORT_SYMBOL drivers/net/team/team 0x0965c736 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0x6b9992aa team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0x6d14f5c9 team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0x7f5fdd8b team_mode_register +EXPORT_SYMBOL drivers/net/team/team 0x9f2baf3a team_options_register +EXPORT_SYMBOL drivers/net/team/team 0xabedc20c team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0xeff486be team_modeop_port_enter +EXPORT_SYMBOL drivers/net/usb/usbnet 0x561de61c usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/usb/usbnet 0x9ad6ea8d usbnet_manage_power +EXPORT_SYMBOL drivers/net/usb/usbnet 0x9c3ada61 usbnet_link_change +EXPORT_SYMBOL drivers/net/wan/hdlc 0x07e416c7 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0x0b89f104 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x3fdbd292 register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x68f76e9f hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x804b83c4 hdlc_change_mtu +EXPORT_SYMBOL drivers/net/wan/hdlc 0x961fe610 hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0xbb7c1e62 hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0xc9318a8d alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0xcf290cc0 unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xe9541052 hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0xfc4ef047 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x8fe90386 i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/airo 0x5e6e2641 stop_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0x67be3502 init_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0xdaa2d2c1 reset_airo_card +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x22bb18ee ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x319c6026 ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4e2481d5 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x53358ce3 ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x688c486f ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x79e766d2 ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x850a457c ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x90e9914f ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x97f8d73f ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xbd20445c ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xc3289039 ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xdd86daac ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xeb57de36 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xf5f2a1a8 dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0537cec1 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3398c2b4 ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5c1c3202 ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5eca2ea8 ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x72e4075c ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8246be6c ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x895f9dc2 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaf096710 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb359a289 ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0199ec46 ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x09d119dc ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x18cb2df6 ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x27cf1694 ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x39e02918 ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4c6ddcb4 ath6kl_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4e1380ee ath6kl_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x98a49510 ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x9ea61472 ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xa95ef74e ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xab7ddb29 ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xd0a80bec ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xf8d33161 ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xfa486d88 ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x2c78238d ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x43f0e727 ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x5bead248 ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x67bb1e66 ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x01a081d5 ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x03b1152b ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x07162cb9 ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x07d50a5a ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x086db2e7 ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x08788d52 ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0a28e280 ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0bf5ee1d ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0f4eccdd ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x146b7420 ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x14cd3b52 ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x152ed45d ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x16d7199f ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x17b568d4 ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1befa7d1 ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2295d434 ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2334035b ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2980c583 ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2a328fce ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2d546919 ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x30be9884 ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x33940b85 ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x36218b38 ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x38ea6d82 ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x396d34ed ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3ea2282c ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3ff0d62f ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x405567db ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x40bfd7c7 ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x43040344 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x44d22e50 ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x45fa616c ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x478b4f0b ath9k_hw_cfg_gpio_input +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x49f0847e ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4a783d8d ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4d93d417 ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5286f8d1 ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x52a2eacd ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5921a8cb ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5948ef61 ath9k_hw_cfg_output +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5b23b320 ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5e5c6c8e ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x64dafedb ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x67b3fde5 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x685183d9 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x756e5896 ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7b56f7cd ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7e45645a ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7e8e6be9 ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8112ae59 ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8162b18a ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8c27a32e ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x903378c4 ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9354aa43 ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x940aa2a9 ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x94204de6 ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9598de68 ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9868378e ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x993b9cf4 ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x99d2ee0e ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9c8634bd ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9e8debb8 ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9fe66414 ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa3a41169 ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa797ed2d ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaf614bb6 ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb1d62b9e ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb7a9ba60 ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb7fd3d49 ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb825806f ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc0c5c57a ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc2d9236c ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc7387ea2 ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc8259d7b ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc8a20b19 ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcb585dd9 ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xccb0da11 ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xce3fe769 ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd1bb5753 ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd46f4241 ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xda377ea5 ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe2de951a ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe4d14c14 ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe52f0593 ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe70374da ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe85b9bbe ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xea21b422 ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xef0d6061 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf0963281 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf14d7538 ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf23a9a6e ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf61a7084 ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf73b31cb ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf7c49802 ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf9921468 ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfa9ce53e ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfdaa156a ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xff80d0ed ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/atmel 0x0862c758 init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel 0x34143c81 stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel 0x71683cc7 atmel_open +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0x00feb9e4 brcmf_sdio_probe +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0x9758c0d3 brcmf_sdio_remove +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x1c959170 brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x1d0cc64e brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2dc227f8 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x5221d629 brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x5a8298ba brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x6c88dba5 brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xa59eb4a3 brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xcd5faee0 brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xde266aef brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xe6aceaa3 brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xed046fcf brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xf6b15186 brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xf6d7621d brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xf78c11fd brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x043a53b5 hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x06e01f69 hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x071aeb97 hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x0ad69602 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x112950ea hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x37648b5f hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x49847103 hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x51bdb40b hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x55db5e4d hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x5fc71ced hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x616f75f2 hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x61a5def7 hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x7355979d hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x842a97d4 hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa12ad27f hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb0dca651 hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb11310eb hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb2a945e0 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb97b27f4 hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc4a935ee hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc87c930c hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc8f4ffec hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc9629244 hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xd3fd0cdd hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xd642503f hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe3577189 hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xf0195e28 prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xf69ca77a hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x1694f83f free_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x2ccc6ab3 libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x3214f288 libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x465d16c3 libipw_rx +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x569fe317 libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x70828d46 libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x7ae5cbc0 libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x83ad5f86 libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x88304624 libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x8c2f9527 libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x9f11f09b libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xac1a2f8b libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xbd3b35ed libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xbe841a24 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xca07b1ac libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xce179236 libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xcfddc8f0 libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xe5585d00 libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xf7ba53e0 libipw_change_mtu +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xfc47ce8f libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xff316d28 libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x02a3a4c1 il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x038041ac il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x074515e0 il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x07c3c184 il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0824f2c8 il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0a039b4f il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0adfb4ea il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0b386231 il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0d06f0b8 il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0d65b9d7 il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0d730ef8 il_update_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0f88c250 il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x10bb7b64 il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x13f2c5f5 il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1422911f il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x17c06b76 il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1a709c04 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1aa2786c il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1bd2e0c0 il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2068d908 il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x29818cf2 il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2cb9a150 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2cfc5572 il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x313bf5ec il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3621df73 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x36c55b19 il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3c0c62fa il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3cc4c092 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x40aec693 il_force_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x42482f4d il_set_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x43a6f8f0 il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x44e280b7 il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x455eddbf il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4a3c78bd il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4a56f4b5 il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4aa39103 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4c76b266 il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x520b8aa1 il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x54fbd6a6 il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x564c6740 il_debug_level +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x566dc49a il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x584f3f09 il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5ea0b434 il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x601bb2cc il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x60b72c76 il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x61bbcf86 il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x646a99af il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x686f121d il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x759a3377 il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x790d4693 il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7a60c896 il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7a6e5220 il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7b37cbef il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7e6a6b69 il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7eecd3d2 il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7f2fd3bb il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x81889189 il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x871e9ee1 il_free_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8ea38459 il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8ef12516 il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x93d2175c il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9491d1fd il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x95ddb9f5 il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x95fa7963 _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x97b36615 il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa1676faf il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa2d37003 il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa4eb5a95 il_init_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa51c4d95 il_mac_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa7c00c88 il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xabf13311 il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb1a1182d il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb2c05c69 il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb481618a il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb8e8879e il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbd166bbd _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc1b6b8e1 il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc39cf12c il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc41cf095 il_apm_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc45826c3 il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xca13b394 il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcfb35cb7 il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd32def52 il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd7abfb69 il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd870ff79 il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdcd910f3 il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe435493a il_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xea700826 il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xead5b649 il_set_rate +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xecd882e2 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf0604f98 il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf0f18dd5 il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf1a2bd70 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf26dcc89 il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf501278b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf7f8272d il_leds_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfb3c9f72 il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfbb1e8cd il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfc1e087a il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfc5c3c2d il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfd740663 il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfddca90b il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x08ee1e7d __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0d9eb5ff __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0e7bc05f __tracepoint_iwlwifi_warn +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x201337b4 __tracepoint_iwlwifi_dev_tx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x249e4b06 __tracepoint_iwlwifi_dev_rx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x36dcef55 __tracepoint_iwlwifi_dev_iowrite32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x4919d1a5 __tracepoint_iwlwifi_dbg +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x67381a2a __tracepoint_iwlwifi_dev_ucode_error +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x79e9bf26 __tracepoint_iwlwifi_crit +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x7edec07d __tracepoint_iwlwifi_dev_ioread32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x8bfcc307 __tracepoint_iwlwifi_info +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x9a12c9c5 __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xc0827b2f __tracepoint_iwlwifi_dev_iowrite8 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xda36f3a4 __tracepoint_iwlwifi_err +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x024bc68d free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x0dcc309d orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x2ae504be __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x4f58aff1 orinoco_get_stats +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5c0587c6 orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5ca350a9 orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5dea5bf1 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x62e176ba __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x630c3b10 orinoco_open +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x685c1fda orinoco_up +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x6cbea198 orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x84f60359 alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x896ee660 orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x9c616881 orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xc8ab8cf3 orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xee8e5352 orinoco_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xf36edc31 orinoco_down +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/btcoexist/btcoexist 0x30a1e560 rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0122029b _rtl92c_store_pwrIndex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x02c7e982 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0691b87a rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x09efbe36 rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0e76ee0b _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1767a2d1 rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x216ed76a rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x280dd076 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x33a1f1aa rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3444063b rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3564387f rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x4db06056 rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x56c42a17 _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x5de7fcee rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x5e770a6b _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x63b7d75b rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x64a50e18 rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x6dad4791 rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x704901a2 _rtl92c_phy_dbm_to_txpwr_Idx +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7899f18b rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7ae023ac rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7aec31fb rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x85b3caf0 rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x884e6592 rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8b1acaf0 _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa7a47009 _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa976377e rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xabacebab _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb2155627 rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb3314d48 _rtl92c_phy_calculate_bit_shift +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb4d682e2 rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xba68b7e5 rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xbba227d8 rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc1a68d36 rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc27ebe14 rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc6886888 rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd1bbf15f rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xddd98e53 rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe3121876 rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe3f8f218 _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe9153e83 rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf57af6d7 rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x340ea43e rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0xb04d3273 rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x3eb1ab2b rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x82cff69b rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x9aa1a360 rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0xd42fe5b5 rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x1bbb0ad4 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x1c50e316 rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x207fbb70 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x38322c17 rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x46964f81 efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x50b38dc0 rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x50d389cd rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x514fc71c rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x681249d4 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x6bc947d2 rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x79188a02 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x8837b35a rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x8c5f3278 rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x8e776872 rtl_ps_set_rf_state +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x9881d806 rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x9ac14529 rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xa6df844a rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xac63934d rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xcd967867 rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xde51be88 rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xf081f21e rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xfbe75b35 rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x027cbdcc wl1271_free_tx_id +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x5df33765 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x93d36518 wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xccf3e95e wlcore_tx_complete +EXPORT_SYMBOL drivers/nfc/microread/microread 0x66e096c0 microread_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0x90cf3952 microread_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x5da0decf pn544_hci_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xd2f31dc7 pn544_hci_probe +EXPORT_SYMBOL drivers/parport/parport 0x11e844b2 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x12095124 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0x136eaf5a parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x1438e717 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0x226019c5 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0x2e8bf2a8 parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x30ec28d0 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x330d1025 parport_register_device +EXPORT_SYMBOL drivers/parport/parport 0x37dc101b parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0x3d63f8af parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x49137eae parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x4e6073b5 parport_read +EXPORT_SYMBOL drivers/parport/parport 0x5de134fe parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x6a47782a parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0x6b414d00 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0x7bd6dcce parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0x7e93fe04 parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x82e7ff0f parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x83f2c223 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x859b3db2 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0x93d7a41d parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0x9d26c0a3 parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0xac3e54fe parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0xba1660bb parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0xbf7fa00c parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0xc0e8b2f5 parport_claim +EXPORT_SYMBOL drivers/parport/parport 0xc12f5db9 parport_release +EXPORT_SYMBOL drivers/parport/parport 0xded6c608 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xe0bfd659 parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0xf9608b0b parport_write +EXPORT_SYMBOL drivers/parport/parport_pc 0x8233c593 parport_pc_probe_port +EXPORT_SYMBOL drivers/parport/parport_pc 0xffd69d17 parport_pc_unregister_port +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x072c66f1 pcmcia_request_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x11b8e5c4 pcmcia_get_mac_from_cis +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x42c8f859 pcmcia_loop_config +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x431fa37d pcmcia_fixup_vpp +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x46a778bb pcmcia_get_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x6498c360 pcmcia_map_mem_page +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x6a27579a pcmcia_disable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x6c25193e __pcmcia_request_exclusive_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x742f5665 pcmcia_parse_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x79c322e5 pcmcia_enable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x8e38f706 pcmcia_write_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x9039610a pcmcia_read_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x97790082 pcmcia_fixup_iowidth +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xa39daf77 pcmcia_request_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xbc291e3d pcmcia_dev_present +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xc7a5c49b pcmcia_register_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xe4f64a18 pcmcia_unregister_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xedf6663e pcmcia_request_io +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xfb2b3984 pcmcia_release_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xfefe22f2 pcmcia_loop_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x08ced9d8 pcmcia_socket_list_rwsem +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x212db8d2 pcmcia_socket_list +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x28e02d6d pcmcia_put_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x3fc34288 pcmcia_get_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x79ceaa28 pcmcia_socket_class +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x7ba2163e pcmcia_register_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x95aee095 pccard_register_pcmcia +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x9844b4c2 pcmcia_get_socket_by_nr +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcf97f3bd dead_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xdbe4fd38 pcmcia_parse_uevents +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xe5ddf2ea pcmcia_unregister_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xeda3aaf1 pcmcia_reset_card +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xfe3b2b8b pcmcia_parse_events +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x2fba3d2f pccard_nonstatic_ops +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x77043f6b pccard_static_ops +EXPORT_SYMBOL drivers/pps/pps_core 0x2881312e pps_unregister_source +EXPORT_SYMBOL drivers/pps/pps_core 0x99537418 pps_event +EXPORT_SYMBOL drivers/pps/pps_core 0xd00b8d01 pps_lookup_dev +EXPORT_SYMBOL drivers/pps/pps_core 0xd4acb558 pps_register_source +EXPORT_SYMBOL drivers/ptp/ptp 0x0c506601 ptp_clock_event +EXPORT_SYMBOL drivers/ptp/ptp 0x36c89987 ptp_clock_index +EXPORT_SYMBOL drivers/ptp/ptp 0xdb16102f ptp_clock_unregister +EXPORT_SYMBOL drivers/ptp/ptp 0xde5e4154 ptp_clock_register +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x03454116 rproc_alloc +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x26c4a9cb rproc_add +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x31c3e11e rproc_vq_interrupt +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x3a6e0f3a rproc_del +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x7ebc3d12 rproc_shutdown +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x8eff40bf rproc_put +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xbce91f09 rproc_da_to_va +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xd3b7d2b1 rproc_boot +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xe46f766a rproc_report_crash +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x49083fe8 fcoe_ctlr_destroy_store +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x5be40ed9 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x5f1a2467 fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x6716b25e fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x6f2eb435 fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x815f8676 fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x84fdc28a fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xa277a83f fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xaf1a13a6 fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xb7c56314 fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xd95a041a fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xf19e4c7d fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0008e9db fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0481de4c fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x093b3a87 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0ac06cfc fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0cc3b603 fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1aad5ef3 fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1d0a6997 fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1ddab9ac fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x224603ca libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2a009ce2 fc_rport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2badb13e fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x32c8eb92 fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36e5fbaf fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x46736a93 fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x552e8a2d fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5531c586 fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5a3aa97c fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5edc4aba fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6496975f fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x662ea3a5 fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6afbcb91 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6bbe824d fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6fd7d5c9 fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x71f686fc fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x722b8ebf fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x788b0ded fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7db502e8 fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x80942714 fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x88609d91 fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x88c8d954 fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8af39ea2 fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8db4a75f fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x98fd1c04 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9ab6b6ed fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9f62ac15 fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa30f72c2 fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa445a6d1 fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xaf6de3cb fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb5c8377d fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbbe6d550 fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc9e504bc fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcf6e359e fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd4bf1360 fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd6ff69a9 fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdb900c33 fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe16fc091 fc_change_queue_type +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe95e12d9 fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xea003979 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xea32143e fc_change_queue_depth +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf16fa81d fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf806a627 fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfd96cf88 fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xffb4a06d fc_lport_config +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8a87e724 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x94fce11b sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x9fce15e0 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xbc6dd16d sas_wait_eh +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xe9d5153b sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x2250c66e mraid_mm_adapter_app_handle +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x512c956d mraid_mm_unregister_adp +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x61edca31 mraid_mm_register_adp +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x00ef453f osd_req_read_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x02aaf9e4 osd_req_remove_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x02f0a168 osd_req_list_dev_partitions +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0a340875 osd_req_flush_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0c17edb1 osd_sec_init_nosec_doall_caps +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0c887b98 osd_start_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0e0f1e23 osd_req_get_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x119b57ab osd_req_flush_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x134a7722 osd_req_read_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x1a649f57 osd_req_add_get_attr_page +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x2d19e046 osd_req_list_partition_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x32b67722 osd_req_write +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x33100076 osd_req_read +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x3b86b235 osd_req_format +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x3be03acb osd_req_list_partition_collections +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x4290f029 osd_execute_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x501feab2 osd_req_add_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x5c41e91c osd_req_set_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x69982135 osd_req_decode_sense_full +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7a31ceef osd_dev_fini +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7c967501 osd_req_write_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7e4c4458 osd_req_flush_obsd +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8f05eef0 osd_auto_detect_ver +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x93283643 osd_req_decode_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x96c9eca0 osd_req_list_collection_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9b928e36 osd_req_write_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xabe30e5c osd_req_write_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xac7bdab4 osd_end_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xba1802dd osd_req_remove_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xba62a4f1 osd_finalize_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc795d158 osd_dev_init +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc796cc8a osd_req_read_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xcbc279bf osd_req_flush_collection +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xccc67c93 osd_req_create_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd88a71ec osd_req_add_set_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd8c65070 osd_execute_request_async +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xda5affd0 osd_req_create_object +EXPORT_SYMBOL drivers/scsi/osd/osd 0x31ac1f58 osduld_device_same +EXPORT_SYMBOL drivers/scsi/osd/osd 0x5fc48609 osduld_unregister_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x86b3e3de osduld_path_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0x8db1b54a osduld_device_info +EXPORT_SYMBOL drivers/scsi/osd/osd 0xa3df9b44 osduld_info_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0xbd626d4b osduld_register_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0xe7594d03 osduld_put_device +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x1d9da08d qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x4df51514 qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x60816673 qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x8d6b35b6 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x9b5762cf qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x9e0fb300 qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xb2844acc qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xc4ad744b qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xe2eaa2bf qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xf563796a qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xf73a9f02 qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x04d066af qlogicfas408_info +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x1f55cd70 qlogicfas408_ihandl +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x3fd8cd71 qlogicfas408_detect +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x5347fa1a qlogicfas408_disable_ints +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x63980de1 qlogicfas408_queuecommand +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x860886f7 qlogicfas408_bus_reset +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x9613fdad qlogicfas408_abort +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xe76b3b20 qlogicfas408_get_chip_type +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xf2b95199 qlogicfas408_setup +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xf787eb4a qlogicfas408_biosparam +EXPORT_SYMBOL drivers/scsi/raid_class 0x42061bef raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0x643975a1 raid_class_release +EXPORT_SYMBOL drivers/scsi/raid_class 0xc9ca681a raid_component_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x0c863067 fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x3c807f68 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x45482eae fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x470d0eb6 fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x4f00250c scsi_is_fc_vport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x74a1f42c fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7954b1ea fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7ba74632 fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7c402ae5 fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7e3c3b99 scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7febf188 fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xa133cd53 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xc2ad0d4f fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xf9312eb8 fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x18d01991 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1a01cdb8 sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2be1e6e4 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3853159f sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3a873e0b sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3c96b12a sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3eae0347 sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4095faad sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x41457f37 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x451f4b9a sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x652d5702 sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6a11a2d3 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6a146726 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6d4d0053 sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7195850d sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x91a4971c sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x94dc60ff sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x98747a0d sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x9d802ff9 sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa6d92487 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc39796db sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd245773e scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd85c1263 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd8e1fa4e sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe5de3ce1 sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xeebaa4f4 sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf05b724e scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf781f517 sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x1bb1f351 spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x9cc2b3e1 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xcbc292bf spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xd5bfdbb4 spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xea20d4eb spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x487d7d4f srp_rport_put +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x69c27952 srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x9da33d78 srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xc58ab101 srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x18cb3b34 ufshcd_runtime_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x92b7e13f ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0xb2bc6dfa ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x03614d6b ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x037cf77d ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x07cf4246 ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0x0a70e7ba ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0x1ad4b724 ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0x1d17b0fb ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0x1e79de5b ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0x256e3d96 ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0x3aae314e ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0x46aff942 ssb_bus_pcibus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x4f262ddc ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x52117a16 ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x60f7fc9d ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0x64179fbb ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x794c454f ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x7bc53d80 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0x9e65645e ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xc0512e0f ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xcc7a285f __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0xce50a458 ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0xd481192b ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xe4c595ca ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xf4725ade ssb_commit_settings +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0xc36b7e74 fwtty_port_put +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0xe7f559c6 fwtty_port_get +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x7b987641 adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0xcb0c20e1 adt7316_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x01f78df5 ade7854_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x3363f925 ade7854_probe +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x027ec0bc lnet_set_ip_niaddr +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0bce7eef lnet_counters_get +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1366b7ac LNetSetLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x16035f5f lnet_extract_kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x19670622 LNetNIInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1b191752 lnet_msgtyp2str +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1fe16fd5 LNetGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x204b8151 lnet_counters_reset +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2859af16 lnet_set_reply_msg_len +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2aa9953d lnet_cpt_of_nid +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2ac93e90 lnet_connect_console_error +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x33202a6c LNetGetId +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x352b6ec1 lnet_create_reply_msg +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3558e584 lnet_iov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3c779ee0 LNetPut +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3f4f5b46 LNetNIFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x473ad33b LNetDist +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x4bb00492 lnet_copy_iov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x4f9cb871 lnet_extract_iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x53f6ea26 lnet_unregister_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x543bc51b lnet_copy_kiov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5811a721 LNetInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x58a1ca89 LNetMDUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5fee352c lnet_acceptor_timeout +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x61f784b2 LNetClearLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x643bd824 the_lnet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x64cdea3a LNetCtl +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x68976393 lnet_notify +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x6f7be171 LNetEQGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x722c76e5 LNetMDAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7c21c5fc lnet_kiov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7d59a7fe LNetMEInsert +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x854ab844 LNetEQWait +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8a3064f2 LNetSetAsync +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8b5f5637 lnet_net2ni +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9de986d3 LNetEQAlloc +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9efd8104 lnet_register_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa8c2760b LNetFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa414970 LNetMEUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa9b477e LNetMDBind +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb75f7953 LNetEQFree +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xba5566d2 lnet_acceptor_port +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xbafbb555 lnet_connect +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xbf0760a2 LNetMEAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xc1829344 lnet_parse +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xcea1580b lnet_copy_kiov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xd50e316f lnet_copy_iov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xe83b970b lnet_finalize +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf1b316bf LNetSnprintHandle +EXPORT_SYMBOL drivers/staging/lustre/lnet/selftest/lnet_selftest 0x078db139 lstcon_ioctl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x1c4bb5f9 LU_OBF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x375e6f8d LUSTRE_BFL_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x3ac90df3 seq_client_alloc_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x408ad015 seq_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x72a8ba31 seq_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x75bafe75 client_fid_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x92d8f103 seq_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xae61cff5 LU_DOT_LUSTRE_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xc175092d seq_client_get_seq +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xc997a02f LUSTRE_SEQ_SPACE_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xe3f2bcff client_fid_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xecee2727 LUSTRE_SEQ_ZERO_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x0ebd225c fld_client_proc_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x170dbd07 fld_client_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x2ffbb205 fld_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xb440941b fld_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xc80ded83 fld_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xcb121246 fld_client_del_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xfe8e9ce8 fld_client_add_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x000c507f libcfs_debug_dumplog +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x01db5172 cfs_percpt_atomic_summary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x03387ca6 cfs_curproc_groups_nr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x04d3ce6a lbug_with_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x06401e01 cfs_hash_is_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x069f9bb2 cfs_wi_schedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08917712 cfs_hash_for_each_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08ada613 libcfs_console_backoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0b4b1546 libcfs_lnd2modname +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0cd50581 libcfs_sock_listen +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0d1b8a30 cfs_percpt_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0de6c369 cfs_cap_lower +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0e4820ab cfs_percpt_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0f5eff79 cfs_percpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x10833286 cfs_crypto_hash_update_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x117c8a95 cfs_cpt_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x123b6908 cfs_hash_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12426266 libcfs_run_lbug_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12c54b77 cfs_hash_findadd_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x15565c7f cfs_cpt_set_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x17ac7833 libcfs_deregister_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x18c503cd cfs_percpt_lock_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1a60d439 cfs_parse_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d41c4c0 cfs_hash_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d5a3928 cfs_timer_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1e8cdb47 cfs_race_waitq +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x23f6f445 cfs_restore_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2663147a __cfs_fail_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2761f20f libcfs_sock_abort_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x277e62bd cfs_hash_for_each_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x27b6d3ba cfs_ip_addr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x29aafd0c cfs_hash_hlist_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2a641ef9 cfs_hash_dual_bd_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2b1e0458 cfs_get_environ +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2dbe54b2 cfs_trimwhite +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2efcc0e6 cfs_block_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2fb7eae8 cfs_hash_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x30986343 cfs_range_expr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x31fc5082 cfs_crypto_hash_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3756cbf7 libcfs_sock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x377f93fb cfs_srand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3834f243 proc_call_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x38828b92 cfs_cpt_unset_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x389ca502 libcfs_debug_mb +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x39fdcd2b libcfs_debug_set_level +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3a62a183 cfs_cpt_set_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3c1285bd libcfs_subsystem_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3d5e6098 cfs_race_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3e5e7727 cfs_hash_rehash_cancel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ea730c0 cfs_gettok +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ef0d90c libcfs_kkuc_group_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3f0d9281 cfs_wi_sched_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4087e2b4 cfs_hash_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x411db754 cfs_crypto_hash_final +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x413056d8 cfs_cpt_weight +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x41ab33a1 libcfs_ipif_free_enumeration +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x42e22feb cfs_cpt_table +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x435033fe libcfs_sock_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44688a0a cfs_block_allsigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44839bbb cfs_rand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44f07cfc cfs_pause +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x468bace1 cfs_hash_rehash_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x47fdb4d1 cfs_timer_is_armed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x48f163c6 libcfs_str2anynid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4a99af72 cfs_clear_sigpending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4b982291 cfs_hash_bd_peek_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4d89e988 cfs_block_sigsinv +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4f1f2fa5 cfs_crypto_hash_digest +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4f705272 libcfs_sock_getaddr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x50345570 libcfs_str2net +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5051b6d2 portal_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x509d38b0 libcfs_net2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x52e9cfc1 cfs_cpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x53b383e4 cfs_cpt_unset_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x54ba33e4 cfs_hash_debug_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x54fd9a71 cfs_percpt_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x58a7ee00 libcfs_catastrophe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5946ec2b cfs_percpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5b20921a cfs_hash_for_each_nolock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5c013b81 cfs_expr_list_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5ce62c0e cfs_cpt_table_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d3be65a cfs_crypto_adler32_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d73c3e3 cfs_expr_list_free_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5dce9e80 libcfs_lnd2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62289d65 cfs_array_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62f56738 upcall_cache_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x63b4967a cfs_hash_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x64685fef libcfs_console_min_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6564c55b libcfs_console_max_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x65dd9f0c libcfs_run_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x66136d2d cfs_timer_arm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x67398404 cfs_wi_sched_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x68497dbf cfs_cpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c4cadc8 cfs_hash_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c605eaa cfs_cpt_unset_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c905b5f libcfs_watchdog_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6dfa9ea1 cfs_crypto_adler32_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6e6af71c current_is_32bit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6f928e1b libcfs_debug_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7190502f upcall_cache_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71d28118 libcfs_sock_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71f662a3 libcfs_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x72f4e5f9 cfs_hash_bd_move_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x75161168 upcall_cache_flush_idle +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x752858fb cfs_cpt_table_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7562cd14 cfs_hash_del_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x771695b1 cfs_hash_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x785b7372 cfs_hash_dual_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a3d49ae cfs_expr_list_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a47b94d cfs_hash_size_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7b0b748a cfs_ip_addr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c73bc4b cfs_hash_rehash +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c7986cf waitq_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7d93cded cfs_cpt_of_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7e6f6485 cfs_ip_addr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7fda989d cfs_fail_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8151c3aa cfs_cap_raised +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x83d795e4 cfs_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x841679dd upcall_cache_get_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x857aaea7 libcfs_register_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x87f3bb87 cfs_hash_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c6be9ab cfs_percpt_lock_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c85e4e6 cfs_crypto_hash_speed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8e61d47b cfs_cpt_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f12bb52 libcfs_log_goto +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f45f10d cfs_init_timer +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x91504e8b libcfs_kmemory +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x940ed192 libcfs_stack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x949221dc cfs_hash_cond_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x95620e8c cfs_wi_deschedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x97b0b9bc cfs_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9879b229 cfs_get_random_bytes +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9f82f712 cfs_trace_copyout_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa1cbf250 upcall_cache_flush_all +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa2b68b2a cfs_array_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa2e1f6e4 libcfs_kkuc_group_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa6b9dee6 libcfs_kkuc_group_rem +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa711aec5 cfs_cpt_table_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9088531 cfs_expr_list_values +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9dc74e2 cfs_trace_copyin_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9eae690 cfs_str2mask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xaaf59b75 cfs_cpt_set_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xab887583 init_waitqueue_entry_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xad019238 cfs_str2num_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb00dfd91 cfs_hash_dual_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb53b5569 cfs_cpt_spread_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb65ad3b3 libcfs_kkuc_msg_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb883b006 cfs_percpt_atomic_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xba5ee429 libcfs_sock_getbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbab577e8 cfs_hash_for_each_safe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbada117b cfs_cpt_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb9cb508 cfs_curproc_cap_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbd5d492e cfs_timer_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbf7a37f1 cfs_signal_pending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc0ea7fc0 cfs_expr_list_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc1708189 cfs_hash_dual_bd_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc1b20836 cfs_hash_add_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2911d96 cfs_expr_list_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2dfd791 libcfs_console_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc39fd2f9 libcfs_panic_on_lbug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc3eb614e libcfs_ipif_query +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc47433a6 cfs_capable +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc49b1c62 cfs_percpt_atomic_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc77a24c3 cfs_cpt_set_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc9b78bb4 upcall_cache_downcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcb385db9 libcfs_debug_binary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcbab8493 schedule_timeout_and_set_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcc20e694 libcfs_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xccc45639 cfs_free_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcd38904c cfs_wi_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xce1a88f2 libcfs_arch_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf61bacb __cfs_fail_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf678304 cfs_hash_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd0aa642a cfs_hash_rehash_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd0d8d08a cfs_cpt_unset_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd2965f33 cfs_hash_bd_del_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd39383c7 libcfs_sock_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd46225d8 cfs_percpt_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd48d8f72 cfs_hash_dual_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6a52be3 libcfs_printk +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd7bbf963 cfs_hash_dual_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd7c4f765 add_wait_queue_exclusive_head +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd9541990 cfs_strncasecmp +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd96f406d cfs_cap_raise +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xde17bb8d libcfs_isknown_lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf2789c0 cfs_curproc_cap_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdffc951d cfs_timer_disarm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe3bf6897 cfs_percpt_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe6555032 libcfs_ipif_enumerate +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe7b54314 libcfs_arch_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe8a83005 libcfs_sock_setbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe94553b9 upcall_cache_flush_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xec1f56d5 libcfs_str2nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeccafa5c cfs_cpt_online +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeceac781 cfs_fail_val +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xed80ec9c cfs_hash_debug_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xedf3a25a cfs_timer_deadline +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeed48ba7 cfs_hash_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xefbf6d86 upcall_cache_put_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf2c02048 cfs_cpt_bind +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf372d1c2 cfs_firststr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf440bb38 libcfs_kkuc_group_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf5e4a175 cfs_hash_bd_add_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8a8644b libcfs_id2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8efb8c5 waitq_timedwait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8f54b1c libcfs_sock_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf94025d1 libcfs_str2lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfacb8667 cfs_hash_getref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfe565fa9 cfs_crypto_hash_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xff0f98a6 libcfs_debug_vmsg2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x38ad0b89 ll_stats_ops_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x4763b661 ll_osscapa_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x795c1871 ll_iocontrol_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xcd3cde92 ll_iocontrol_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xf528bf95 ll_direct_rw_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x27095531 lov_stripe_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x46548ae7 lov_lsm_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x56c83337 lov_read_and_clear_async_rc +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x789881bb lov_device_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xa288d560 lov_stripe_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xc2cca789 lov_lsm_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x0924a9a0 l_dentry_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x168efb2c pop_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x17ffc11f fsfilt_register_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x24e1671d lprocfs_counter_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x3bcbdc4b lprocfs_stats_alloc_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x49275745 fsfilt_get_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x4d8d6dfa lprocfs_counter_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x8186527b fsfilt_put_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x8553b369 obd_memory +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x912cf7f8 push_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x9529a888 lustre_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xb4f8ee63 lprocfs_read_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xd54f0e69 fsfilt_unregister_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x14a47f31 it_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x9c22b84f it_open_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xb57d8447 it_set_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xf46a886f it_clear_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mgc/mgc 0xdc287f95 mgc_fsname2resid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01665e34 class_parse_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x016ada3d capa_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x017f28a1 cl_io_lock_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01eac3de obd_devs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0256f217 llog_open_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x02abeb64 class_import_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x035852d0 lustre_swab_llog_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x038b79df cl_lock_user_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x039301d3 cl_page_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0443942b lprocfs_wr_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x057f6d4b class_find_old_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05af1920 dt_quota_glb_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05f84e88 LU_BUF_NULL +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x06304420 llog_osd_get_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0652cb30 cl_2queue_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x070e3154 cl_2queue_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x072e0407 lustre_in_group_p +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07aa68bb lustre_swab_lustre_cfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0836daca lprocfs_register_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x083942ff class_del_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x085f0d01 cl_lock_disclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0933b7ec cl_page_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b7886d2 lu_context_key_degister +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0c584629 cl_page_vmpage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0cf99bff dt_acct_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0d5082a2 llog_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0d626d97 cl_lock_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f1827d9 lprocfs_add_vars +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f98ee55 dt_record_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fa9ba2d cl_page_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fe91547 obdo_to_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11495519 lprocfs_write_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x117f74a8 cl_sync_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1180082f class_conn2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11e7ebad cl_page_cache_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11fb01bf cl_offset +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x120d0902 cl_lock_is_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x12438acc cl_lock_closure_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1491dc30 lu_context_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x14e81b68 dt_index_walk +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x15db8039 cl_wait_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1647866a dt_declare_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x16e7c409 dump_lniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17260880 obdo_cpy_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1818135e lprocfs_alloc_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x18ad90be cl_env_nested_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x18fceddf class_conn2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x199583a8 cl_page_list_move +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x19c84003 class_export_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1a17aa45 dt_store_resolve +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b54732f dt_lookup_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b9623bb class_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b9eba93 llog_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1bf029bf cl_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1bf949c8 cl_object_kill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1c831e77 lprocfs_rd_numrefs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1c9592a5 lu_context_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1d31f2e1 lprocfs_at_hist_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1f13e95d class_config_dump_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1f7a64aa cl_page_is_under_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x208933a0 cl_env_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x211e36b3 lustre_idmap_lookup_uid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21307495 lu_buf_check_and_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x221826f1 class_parse_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x251f7df7 __llog_ctxt_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2547efae lustre_uuid_to_peer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x259ebac6 obd_alloc_fail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25d516b7 cl_pages_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25db2d9d cl_page_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x275cdc7a cl_env_reexit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x27c3854c llog_init_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x28989573 lprocfs_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2935f868 llog_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x297cf5e0 class_handle2object +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x29f15b16 class_search_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ae1cd79 kuc_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2b4c48e9 server_name2svname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2bd56db2 cl_lock_weigh +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d083072 cl_2queue_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d38ab1b dt_txn_hook_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d435f10 llog_declare_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d5c1434 cl_io_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2de1b940 cl_locks_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2f06e0c0 cl_lock_at_pgoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2fb9e258 cl_io_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3015f534 dump_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3072c9e5 lu_object_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x307cae29 cl_unuse_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x317f6de0 llog_obd_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x323a6ccf lu_site_init_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3414103c cl_page_list_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x344021e7 dt_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34580c14 capa_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x353c6805 lustre_common_put_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3556abc5 obd_llog_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x35859dad lprocfs_rd_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x358bcffb lprocfs_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x36144d44 cl_page_make_ready +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x36712db5 lprocfs_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x369938fc lu_object_add_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37e6bfed cl_env_nested_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37ed6e4b at_early_margin +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3836371d cl_object_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38f6b430 dt_store_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38fb0c90 class_match_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3909614e lprocfs_seq_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3995a2e4 class_register_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x39c8580f class_handle_hash_back +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a005065 dt_otable_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ad23e66 dt_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3b3d4a4b class_detach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3c5b9645 lprocfs_rd_timeouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d08999f lustre_end_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3da2aa39 lprocfs_alloc_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3f07c5d5 lprocfs_rd_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3fac048c lprocfs_nid_stats_clear_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x404bd7a7 class_handle_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x40613f20 cl_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x40f6fd7f lustre_process_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4139db9f class_config_llog_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x419c0df4 cl_page_clip +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43a29f50 class_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44469eb0 llog_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4481bf7a lu_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x448e82b6 lprocfs_obd_rd_max_pages_per_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44e41abb lustre_posix_acl_xattr_filter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4590b371 llog_cat_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x474ed5bd lustre_swab_ll_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47b35f7d statfs_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48741d6a cl_io_lock_alloc_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48745aa6 cl_page_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4895d634 cl_page_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48b4498b lprocfs_rd_server_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4929a2a0 local_index_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4932f4c5 lu_env_refill_by_tags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x494cfb52 lustre_acl_xattr_merge2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a0f6ea lustre_posix_acl_xattr_2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a29223 lprocfs_find_named_value +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49e75854 lprocfs_seq_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ac58713 obd_connect_flags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ac99637 llog_thread_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4b385b8a cl_vmpage_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4bb41579 cl_page_list_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4be6c7a9 cl_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4bf356ca lustre_idmap_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c338d92 cl_page_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c4ac035 class_devices_in_group +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c634a0c llog_cat_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d0848a9 cl_object_glimpse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d13458b kuc_len +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d18ad1e cl_lock_hold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d428cee cl_lock_user_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4da257f8 class_fail_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4de36f3c lustre_idmap_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4fba4346 dt_directory_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50c7fc36 ptlrpc_put_connection_superhack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50e32bdc lprocfs_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x513c2fb2 lu_cdebug_printer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x519604e9 lu_kmem_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x519a0899 cl_page_is_vmlocked +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x51f5299a lprocfs_rd_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5247e6cb lprocfs_free_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5318fead cl_req_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5359ef85 lprocfs_rd_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54453b0f cl_lock_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54689bd3 class_disconnect_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54885f87 ldlm_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5490bc7d cl_page_unassume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x558bec27 obd_ioctl_getdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5619c80f lu_object_assign_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x564e9d44 init_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x565938a0 iattr_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5666f209 obdo_from_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x56f0869e class_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x570d09ae lustre_swab_lu_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x573b06ca lu_context_key_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x57496173 class_name2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x576c93f1 llog_declare_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x578473c2 cl_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x57c43293 dt_txn_hook_commit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x57cede99 obd_llog_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5894c455 cl_io_submit_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x593946b9 cl_page_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5953bbeb cl_sync_io_note +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x597e75b3 cl_object_has_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x59845161 lprocfs_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a20d896 obd_memory_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a2360a9 cl_io_commit_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ab2d3da cl_sync_io_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5b7278e4 cl_env_implant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bc022c5 lprocfs_dt_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5c1f8000 lu_context_key_quiesce_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5c45c3a2 lprocfs_obd_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ce95bc8 cl_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d34ae0d cl_lock_mode_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e524ae5 lu_context_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e93341f lprocfs_oh_sum +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5eba830f llog_osd_put_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ed188a9 lprocfs_add_symlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fe97b73 block_debug_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5feca9bb cl_lock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ffc05fc cl_io_read_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60588454 cl_type_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x612ba6cb cl_page_list_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x616df160 lu_env_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x624ffe24 lprocfs_counter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631a518d mea_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631fd7b9 lustre_ext_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6328b8cc dt_try_as_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x632ffd50 cl_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x63d26c12 class_find_client_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x648a7f66 lprocfs_free_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x65645a60 local_index_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x657f0a5d cl_page_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x65c2423d lprocfs_rd_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6669c49f cat_cancel_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x66b5f8af lu_kmem_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67184bc9 lu_device_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6734adbd lprocfs_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x676c0d92 lu_context_key_quiesce +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x677fd7f9 proc_lustre_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67977b42 lprocfs_remove_proc_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67a90622 la_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67dc223a lprocfs_remove +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67ee8273 cl_page_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6890d175 lustre_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69585cee cl_page_list_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69c42114 at_min +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a9362a8 lprocfs_init_mps_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6b5b0350 lu_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ba91ed8 cl_io_loop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6bb6d421 lu_buf_realloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6be27247 cl_page_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c816bb9 cl_page_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ddbd7c7 class_config_parse_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ec183a7 lu_context_key_revive +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ee6b94f class_exp2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f3e6225 dt_quota_slv_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x710fc88b llog_exist +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x712a6906 cl_2queue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x71f5f103 lprocfs_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x71f6853a cl_2queue_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72ddee4c obdo_le_to_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72e8bd25 cl_io_rw_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x73773363 cl_lock_descr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x73fc8926 cl_req_page_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x742559b1 class_unregister_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x750323c9 obdo_from_iattr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7519f618 lprocfs_init_ldlm_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x752f71a8 class_get_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x756a77f3 class_parse_nid_quiet +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x764b70b0 lprocfs_alloc_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x76f2476b lu_context_key_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x774023da lprocfs_rd_conn_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77a99fc7 class_connected_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77d2089a class_name2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7802fcd7 lustre_swab_llogd_conn_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7838afe4 cl_io_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x789796a1 obd_zombie_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x78c90a7b cl_lock_mutex_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x78ec0422 class_manual_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x796728e0 obd_export_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x79f0f2ac cl_req_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7a3bc3cb class_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7a454365 class_num2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7ac43191 lu_env_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b050bbd obdo_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b3fab97 lprocfs_free_per_client_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b4fc57b at_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b816240 lu_object_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7bc12d2a lprocfs_init_ops_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7cd50dd8 class_import_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7daf28bf cl_page_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7edcafa0 cl_env_reenter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f2fd2b1 cl_page_is_owned +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f7f7713 dt_locate_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fad7291 raw_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fe5561a obd_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8027d8b5 lustre_register_client_fill_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8031efb8 lprocfs_dt_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x806cc497 class_add_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8089e427 lu_dev_add_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81484e97 lprocfs_add_simple +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81742d89 obd_ioctl_popdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81eb856a llog_cat_cancel_records +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x82812313 llog_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x828156e8 cl_page_list_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x82fdd302 cl_page_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x831f656c class_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x83e5a99b lu_object_put_nocache +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8489f086 obd_alloc_fail_rate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x849e5385 obd_update_maxusage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x868bd0c4 lprocfs_rd_u64 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8773e650 cl_io_iter_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8830c046 cl_env_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x88ad7fdb obd_export_evict_by_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x88b87068 lprocfs_stats_collect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x891054f1 lprocfs_clear_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8928d654 lu_object_find_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8a7e4dc7 dt_index_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8aa2c358 lprocfs_dt_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b411619 cl_page_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b5f4057 lu_context_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ba6e479 lustre_swab_lu_seq_range +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8bd9553e cl_io_sub_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8c09ad34 cl_env_unplant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8cf40455 llog_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8d5b5f3a lu_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8d658ed0 capa_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f67314c obd_dump_on_eviction +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x90f6958b lu_device_type_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9120a70d obdo_refresh_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92aa9632 cl_enqueue_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92e0dc2d lu_context_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92e58479 obd_dump_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93859814 lprocfs_oh_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93b46468 lu_session_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93f3682f cl_io_is_going +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x94bf97b7 local_oid_storage_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x94e3347f cl_page_list_splice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9505c895 lustre_idmap_lookup_gid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9512d507 lustre_acl_xattr_merge2posix +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9548411f class_unlink_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x955f5220 ldlm_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95735c6c at_extra +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95ec998a lustre_groups_sort +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x966d68b8 llog_cat_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9767adce class_uuid2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x978ea4cc dt_txn_hook_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x97d03783 at_history +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x985ad05b lprocfs_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x98bf6651 cl_object_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9a60a990 cl_lock_mutex_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ac89db3 cl_lock_hold_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ae3939b class_exp2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b0cd72c cl_page_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b1ed9d8 obd_jobid_var +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b75976c class_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9d2165a6 cl_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9d95fc06 dt_txn_callback_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9dbb17b6 lprocfs_dt_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ea02aa4 lprocfs_rd_num_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9fb1871c cl_page_list_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa070829a class_uuid2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa1451986 llog_osd_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa14d6006 cl_lock_enqueue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa21c5ea1 obdo_from_la +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa470e29a cl_lock_extransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa485ebfe lu_object_find_slice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa48c4a30 lustre_idmap_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa500f390 cl_page_gang_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa513f7e4 lustre_groups_from_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5b9055a local_oid_storage_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5fb234f lprocfs_write_frac_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa674c241 kuc_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa68b8d77 cl_env_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa7ac99f7 lu_object_invariant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa7e45527 class_disconnect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa802734a lprocfs_exp_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8cb5247 cl_env_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa21b7a0 lustre_register_quota_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa2db1c1 cl_lock_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa4cacb3 cl_lock_nr_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xab143d71 class_disconnect_stale_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xab2755c2 class_incref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabf45922 capa_decrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac2abf6f md_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac7f1596 kuc_ptr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xacfa35cb lu_object_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xad5f5cf7 cl_lock_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xae6c67db cl_lock_mutex_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaf95e071 llog_cat_declare_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xafe3a591 capa_cpy +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xafed6bc9 cl_page_find_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb01963a6 class_uuid_unparse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb033454f lu_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb04e26f2 local_object_unlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb097b292 cl_object_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0fb9886 cl_lvb2attr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1b89b6d class_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1e5af75 lu_ucred +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb22e4772 dt_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb265e926 cl_io_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb32e4ca2 cl_lock_enclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb3d8c89d cl_page_list_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb41998cd lustre_cfg_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb4a30455 dt_version_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb58d2a59 lu_context_enter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb61b2f8f cl_lock_get_trust +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb67c02f3 lu_device_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6ad0ef6 lprocfs_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6ba5dd5 kuc_ispayload +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb7071013 lu_device_type_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb737badb cl_page_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb743ec6a dt_mode_to_dft +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb78a17c7 cl_conf_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb78db3bd class_export_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb816307f cl_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb936de3f cl_lock_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba5e93d1 cl_req_page_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba985283 lustre_register_client_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbacac922 lprocfs_write_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbbcc5f99 cl_lock_is_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbc74fc59 llog_cat_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbc8ac2c1 lu_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbce41f44 llog_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbcee1990 cl_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbf7a4305 class_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0149102 class_conn2export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0954007 lprocfs_oh_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0bf7ef2 obd_debug_peer_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc134733c cl_lock_state_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc15bdabd lu_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc1bdaa2c llog_cat_init_and_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc1c445c8 dt_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc2581028 cl_io_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc3f0f754 dt_txn_callback_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc4116ef8 cl_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc4e69809 dt_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc5dc4b09 llog_cat_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc66a9441 cl_req_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc7112c2f cl_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc7d40490 lprocfs_exp_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc86595f9 class_new_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc87af30b lu_context_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc883de0d capa_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8a7a096 obdo_to_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8dbaa87 lustre_swab_cfg_marker +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc93c1d7a lprocfs_single_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc9b3c667 dt_lfsck_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xca424e58 lu_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb0ab67f obd_max_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb3614a7 class_process_proc_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb3b583b cl_lock_closure_build +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcc3be9d0 cl_io_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcc568131 cl_page_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xccf7a8de obdo_cpu_to_le +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd7537ee get_devices_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd8a604e lu_buf_check_and_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcde50f5c cl_page_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xceb72b39 cl_io_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xceba25e2 cl_io_iter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcedb140a obdo_cmp_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcf7d41ef local_file_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd080541e cl_object_attr_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd08827c0 server_name2fsname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd0b6995d lu_buf_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd10aa042 lustre_swab_llog_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1b1478b cl_attr2lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1b4c9e1 cl_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1f58645 lustre_swab_llog_hdr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd208db29 llog_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd20afeae lprocfs_rd_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2957ef2 cl_object_attr_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2bf051b dt_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd4155c78 cl_page_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd423fe1b lu_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd53a7224 dt_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd540f111 class_put_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd549c922 lu_site_purge +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd58ad927 cl_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd6bb05de cl_io_rw_advance +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd6c372aa lu_object_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd70fe669 lustre_swab_llogd_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd73d8624 cl_req_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bc8654 obd_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bfbc9c lprocfs_dt_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7e8ebd1 llog_declare_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7f7b340 cl_lock_mode_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd83ccf6e cl_use_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd84bf99c dt_record_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd915afce lu_object_anon +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda192acb cl_unuse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda5b1ced class_find_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdac644c8 lustre_posix_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb13dce1 capa_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb4e1c62 cl_lock_descr_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb6030e0 cl_lock_ext_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdbf60a6b lu_site_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcc40af0 class_check_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd78c0c7 lu_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdda3d949 class_handle_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde71d514 cl_lock_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde7d985b obd_dirty_transit_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe028cf84 capa_encrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe0804caa cl_req_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe0d23388 lu_env_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe0eb928d obdo_from_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe0f0d1fc lu_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe1ca5974 cl_lock_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe253e48d cl_lock_modify +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2923d82 lprocfs_nid_stats_clear_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2dacd90 lu_context_key_degister_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2eb4470 class_get_next_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe30e88e6 cl_io_prepare_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3323f5d class_handle_free_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe43497c5 local_file_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe4fbd27f cl_io_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe71326f9 lprocfs_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe77e6882 lu_object_locate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7d83236 cleanup_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe806a8a0 cl_2queue_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe89aef90 cl_lock_hold_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8e84c32 class_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe98fd4d4 cl_page_list_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe9e9f59a llog_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xea0e8f26 cl_lock_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeacec47c lprocfs_oh_tally_log2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xead647c7 cl_io_submit_rw +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb0dd2f6 lprocfs_rd_connect_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb3f388a _debug_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xebd105ab cl_page_list_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec542769 lu_dev_del_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec5a7fff cl_lock_unhold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec76847f lustre_idmap_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec7d6b85 obd_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xecba16ec llog_cat_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xecd0ef94 cl_lock_signal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee57e8ec lu_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee68bc29 lu_session_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee8792f3 llog_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeeeb79fa do_lcfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xef76f858 block_debug_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf01e2527 server_name2index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf0d88f43 cl_2queue_init_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf168de9f cl_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf238b98c llog_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2897b4a cl_lock_discard_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2fd6695 statfs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf33bc1ad cl_lock_closure_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf33cfb5d cl_page_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf392beaf llog_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3c93c00 llog_copy_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3f781d6 lustre_register_kill_super_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf460572b cl_page_own_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf490d5f9 class_del_profiles +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf5773720 lu_ucred_assert +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf57c3854 lu_context_key_register_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf5857ec1 llog_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf5d2c0fc cl_lock_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf5f1d3b9 llog_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf60d4659 capa_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7020831 lprocfs_dt_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf74a207c lu_context_key_revive_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf78ab5d2 cl_queue_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7a04304 cl_object_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7a64d46 llog_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf82ad9e8 obd_export_evict_by_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf85a2860 class_new_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf874c950 dump_lsm +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8c2df92 obdo_set_parent_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa36a0cc lprocfs_free_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa813d06 capa_hmac +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb9e8618 lprocfs_wr_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbea0098 lu_types_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc3b316a dt_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc7f18d0 obd_pages_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfce4103b lu_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfceb8cee lprocfs_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd06618c llog_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd68d17a class_notify_sptlrpc_conf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd8f5cf4 lu_buf_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfdbe1557 lprocfs_write_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfde759f7 cl_object_attr_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfe16597e lu_ucred_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfe93dc1f cl_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff3f9a21 class_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff57e92d class_match_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff8bce26 llog_cancel_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xffc5fe06 obd_exports_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfffc1f11 lustre_swab_ost_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/osc/osc 0x5c4940c2 osc_update_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x00d95039 ptlrpcd_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0199d241 ldlm_lock_allow_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01d6ef7f ldlm_pools_recalc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x029a17ae ldlm_namespace_new +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x02db52bd ldlm_pool_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x03d2d9c7 ptlrpc_set_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0409662e ldlm_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x048b59d5 lustre_msg_set_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0515f93b RQF_FLD_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x05898ecd llog_origin_handle_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0655b6a5 ldlm_resource_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x06b3942b lustre_swab_lov_user_md_objects +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x071e2258 ptlrpc_stop_all_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x071fc74a RQF_LDLM_ENQUEUE_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x07605c7d interval_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08bb2d27 lustre_swab_obd_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08e8d563 ptlrpc_at_set_req_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x09551bf0 ldlm_lock_change_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x095587d0 lustre_msg_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x098041ce ldlm_lock_fail_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x09b65d7f sptlrpc_svc_ctx_invalidate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a3130b0 RMF_MDT_EPOCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac252b2 lustre_msg_set_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac54708 lustre_errno_hton +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0b4aa73f lustre_pack_reply_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0bcacb5d RMF_MDS_HSM_USER_ITEM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c2d9c43 lustre_swab_lip_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c5801c4 ptlrpc_activate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c60ed4c ldlm_namespace_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0cf343dd RQF_LDLM_INTENT_BASIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x10f18f20 interval_iterate_reverse +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x115017f6 req_layout_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12b6f5a3 ptlrpc_connection_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x133ba012 ptlrpcd_alloc_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x13f8d695 ptlrpc_prep_req_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1474440e ldlm_pool_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1483eca4 ldlm_lock_addref_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x14d192db lustre_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1590b423 sptlrpc_register_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15a3e4db RMF_GETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15a6f433 ldlm_cli_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x169c94a7 ptlrpc_queue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1727c96f ldlm_cli_cancel_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x172fb86d lustre_msg_hdr_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1747d8b3 ldlm_lockname +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x17950f60 RQF_SEC_CTX +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x181f9aa9 llog_origin_handle_next_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x189046f3 client_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x18ab704f req_capsule_server_sized_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19108a0f RQF_OST_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19c08934 RQF_LDLM_INTENT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a0d715f ldlm_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a6a3ce9 RQF_OST_GET_INFO_LAST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a7b7ed7 client_import_find_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a9b76aa RMF_OBD_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1abd3258 RMF_SETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ace4b5f RQF_LDLM_BL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1b94a6d9 sptlrpc_sec_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1bae0270 interval_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1be21715 lustre_msg_size_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c300d8e lustre_msg_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c9f69b0 lprocfs_wr_evict_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d043548 lustre_msg_set_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1dc2051d RMF_SEQ_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1de9c288 lustre_swab_layout_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e8e48a4 sptlrpc_flavor_has_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1eb2a65f RQF_OST_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee46b51 lustre_init_msg_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee9eb3c RQF_MDS_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1fa5778a ldlm_resource_unlink_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2096f5b5 RQF_OST_SET_GRANT_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20d6b82c RQF_LDLM_INTENT_QUOTA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x218a36ce ldlm_cli_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x21cd337b ptlrpc_unregister_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x233790b5 RMF_OST_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x23eb827c ldlm_namespace_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x241e7227 ptlrpc_pinger_add_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x244e5558 lustre_msg_get_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x24aafdba RMF_MGS_TARGET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2567bdde req_capsule_field_present +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2585a629 RMF_SEQ_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2587513c RQF_LDLM_CP_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2651f263 ldlm_lock_fail_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x269554ce RQF_LDLM_INTENT_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x26f99d16 RQF_MGS_CONFIG_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x285e5b99 lustre_msg_set_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x28a2ef01 llog_client_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x293c6126 sptlrpc_cli_enlarge_reqbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x29e0869a sptlrpc_get_hash_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a165d9d lprocfs_wr_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a63a472 lustre_swab_ptlrpc_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a6fdcd8 ldlm_register_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c00c60d ptlrpc_sample_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ca92fa8 ldlm_lock_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ccd5b87 ldlm_cli_cancel_list_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d28a597 sptlrpc_enc_pool_put_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d34bded llog_origin_handle_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d56f168 ptlrpc_pinger_ir_up +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d798316 RMF_MGS_CONFIG_RES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4562fe RQF_LLOG_ORIGIN_HANDLE_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4ca396 RQF_LDLM_INTENT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ebbbf1c ptlrpc_resend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ecd7515 lustre_msg_check_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f0e4f87 RQF_OST_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2fd2f737 lustre_msg_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x301d4fcd RQF_MDS_READPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x302937e0 RQF_MDS_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3043e6b1 ptlrpc_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3060b9c6 sptlrpc_rule_set_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31838cb4 RMF_IDX_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x318a4c57 ldlm_pool_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3261b862 RQF_OST_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3295576a ldlm_cli_cancel_unused_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x33bb7761 ldlm_typename +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x34a1912c ldlm_cli_cancel_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x34bb264e req_capsule_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x35939a3d lustre_swab_fiemap +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x36700b0b req_capsule_other_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3694bf54 llog_origin_handle_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x36a775b8 sptlrpc_cli_wrap_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3715044a ldlm_lock2handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3835ab4b RQF_LLOG_ORIGIN_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3858fb94 RMF_OBD_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3896ba40 ldlm_pool_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38c01799 RQF_LDLM_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38fce533 lustre_msg_set_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39f60a5f RMF_OST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a1e4bcb __lustre_unpack_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ab90f6e lustre_msg_bufcount +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ac00716 lustre_swab_hsm_user_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b5cb8e9 client_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b6b7cba dump_ioo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bc8f134 _ldlm_lock_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bedb0c7 RMF_LLOGD_CONN_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c63e62b RQF_MDS_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ca50f33 RQF_MDS_HSM_CT_REGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d7dc5f9 ldlm_pools_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dc47695 lustre_msg_get_magic +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dddb3e2 dump_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3eddaef3 ldlm_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ee4579b ldlm_pool_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f034caf lustre_msg_get_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f752e78 RQF_MDS_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x401bf5de ptlrpcd_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x41008cef RQF_LDLM_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x42e9ef58 sptlrpc_cli_ctx_expire +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x430cfab2 unlock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43705ee4 RQF_LOG_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43d7efc8 lustre_msg_set_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44036eda RQF_MDS_GET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x440c2a71 RMF_FIEMAP_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4481591d RQF_OST_SET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x450ea0ae lprocfs_wr_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45d05893 lustre_swab_lustre_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45e30cea lustre_swab_ldlm_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x472346cc ldlm_namespace_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47992804 ldlm_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x479af13b ptlrpc_buf_set_swabbed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47f5e903 RMF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x48814c9f lustre_swab_ost_lvb_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x498236e6 ptlrpc_deactivate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x498c03c5 lustre_msg_set_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x49b041c4 ldlm_lock_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a5a2416 RMF_DLM_REQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b09ce4b lustre_swab_mdt_rec_reint +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4bcb49e8 ldlm_blocking_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c085677 ptlrpc_pinger_del_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d7580d0 lustre_swab_hsm_user_item +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e07a492 ldlm_lock2desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e1706e5 lustre_msg_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e696b96 ptlrpcd_queue_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4eb03a6f ptlrpcd_destroy_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f766c3b lustre_swab_generic_32s +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50443f6a ptlrpc_init_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50dd74f8 RMF_STRING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x52c62150 RMF_RCS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53411557 RMF_DLM_REP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53595bfb ptlrpc_commit_replies +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53853766 lprocfs_wr_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5399c7e5 ptlrpc_buf_need_swab +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53a4a004 bulk_sec_desc_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5429c9f0 llog_initiator_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x544a7d4a ptlrpc_mark_interrupted +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x54ae5021 ldlm_lock_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x555eb7fe RQF_MDS_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x588035b4 RMF_UPDATE_REPLY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x59082770 client_disconnect_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x595ab175 lustre_swab_obd_quotactl +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x596582bf RMF_GETINFO_VALLEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x59ca398b ptlrpc_add_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a057439 interval_search +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a549c63 ptlrpc_unpack_req_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a72c573 ptlrpc_nrs_policy_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a962364 client_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5af0d02a ldlm_lock_dump_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b271621 sptlrpc_cli_ctx_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b6ba895 lustre_packed_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5bd97b34 client_import_del_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c6a3a83 RQF_SEQ_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5caae213 ptlrpc_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5d28f3ce sptlrpc_target_export_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5da11228 req_capsule_extend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e0b19b1 RMF_CLUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e2b7558 lustre_msghdr_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e344338 sptlrpc_cli_ctx_wakeup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e3974c2 llog_origin_handle_prev_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e6f435d RQF_OST_BRW_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e80f899 RQF_LLOG_ORIGIN_HANDLE_READ_HEADER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ec3284d RQF_MDS_HSM_CT_UNREGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ef831ee lustre_msg_get_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f5d38ab lustre_pack_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f96ccdd ptlrpc_connection_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6042bc15 RQF_MDS_REINT_RENAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x604e2505 RMF_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x607ec932 lustre_msg_set_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x60cd26ad RQF_MDS_REINT_CREATE_SYM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61289a66 ldlm_lock_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61646e1b RQF_MDS_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x618ad203 RQF_OST_GET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61d6ee70 sptlrpc_import_flush_my_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62192cf8 dump_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x624db4c4 ptlrpc_req_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62aaae3f RQF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6315dd4c RMF_LLOGD_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6352a62d ldlm_get_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x640d86f3 ptlrpc_fail_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x647b6e48 lustre_swab_ldlm_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x653723dc RMF_LOGCOOKIES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x657b00b7 ptlrpc_init_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x662f2d20 sptlrpc_conf_client_adapt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x67cd4a7f sptlrpc_gc_add_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x683243bf ptlrpc_set_next_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x685eeaba RMF_DLM_GL_DESC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68cb2541 interval_is_overlapped +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68f49e5e ptlrpc_expired_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6912990a RQF_OST_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6914e0f0 __ldlm_handle2lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69370b79 ldlm_prep_elc_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x696ba811 lustre_msg_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69c9f04d RQF_MDS_REINT_LINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a3785c9 RMF_EADATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6adc6a68 ptlrpc_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d5db6a6 ldlm_extent_shift_kms +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d72828c sptlrpc_conf_log_update_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d7931cc RQF_UPDATE_OBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6dd05fed ptlrpc_lprocfs_unregister_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ebf0267 ptlrpc_send_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ed20499 ldlm_revalidate_lock_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6edd48c6 sptlrpc_sec_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6eeb8611 ptlrpc_unregister_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6efa82b0 RQF_MGS_TARGET_REG +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f6dc736 lustre_swab_mdt_remote_perm +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6fb92092 sptlrpc_flavor2name_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x703538e4 lustre_swab_hsm_current_action +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x70fbda21 req_capsule_client_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7226fec3 ptlrpc_init_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x723d43b6 sptlrpc_rule_set_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x725a892c RQF_MDS_REINT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7287b6c0 ldlm_pool_get_lvf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x729a3f0d sptlrpc_get_bulk_checksum +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x73310da1 ldlm_cli_cancel_unused +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x73e4e5c9 ptlrpc_add_rqs_to_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74840056 lustre_msg_set_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74a1d256 ptlrpc_cleanup_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74b5b59e ldlm_lock_downgrade +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74c1cb28 ldlm_pool_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75643b5d ptlrpc_obd_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75a2c40d ldlm_put_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76b728e5 lustre_swab_update_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77571cc6 lustre_swab_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77840c82 sptlrpc_rule_set_choose +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78803bfe ldlm_cancel_resource_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78bf9136 lustre_swab_ldlm_lock_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x795d1853 sptlrpc_target_update_exp_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a832f10 RMF_CONN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a83ad7c ptlrpc_request_alloc_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7ae92054 sptlrpc_sec_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b158da4 lustre_swab_ldlm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b654b69 ptlrpc_restart_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b9d15ca ldlm_replay_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7bbf8001 RMF_MDT_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7c4c6107 RQF_LDLM_CONVERT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d1ecd7f RQF_LDLM_INTENT_LAYOUT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d41a8b9 RQF_QUOTA_DQACQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dc0e7cd RMF_QUOTA_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dfb3c18 lustre_msg_clear_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f484453 ldlm_flock_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4925d8 interval_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4c99b1 ldlm_expired_completion_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f5a1cc7 lustre_msg_set_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f6d2357 lustre_msg_is_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80a9e8c3 lustre_msg_get_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80ecb4e3 RMF_MDS_HSM_CURRENT_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x817d7f1f lustre_msg_add_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x823605a8 ptlrpc_req_finished +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x826d3c4f RQF_LDLM_GL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x828f2785 ptlrpc_lprocfs_register_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x837efb00 RMF_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x840249ee ldlm_cli_enqueue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x840e9732 sptlrpc_lprocfs_cliobd_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x84bf828f req_capsule_has_field +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85135801 RMF_DLM_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x858eef6d sptlrpc_cli_unwrap_bulk_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85a9e0d8 RMF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85eecf67 sptlrpc_get_hash_alg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x863db6eb RMF_HSM_USER_STATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x86fa8c3b ldlm_cli_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8760beaf lustre_swab_ldlm_policy_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x876c2551 RMF_GETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87bf7b3c sptlrpc_get_next_secid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87ff2afb ldlm_pool_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8872f3d2 RMF_SETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8877d241 sptlrpc_import_flush_all_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x88fff52d RMF_CAPA2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x89f9edf7 RQF_MDS_REINT_SETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a1ea476 lustre_swab_hsm_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a257736 RQF_MDS_HSM_STATE_GET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a4345b1 ptlrpc_set_add_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8abe752d ldlm_blocking_ast_nocheck +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ac440fa ptlrpc_uuid_to_connection +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b854254 lustre_swab_mgs_config_res +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cb71d4b RQF_MDS_REINT_CREATE_SLAVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d77ea75 lustre_msg_set_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8da3fca7 lustre_msg_add_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8e9abe4d RMF_GENERIC_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f0aceac RQF_MDS_HSM_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8fec0451 lustre_msg_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x919c4ce3 RMF_OBD_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91cf58d3 RQF_MDS_PIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91f97b92 ldlm_init_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x937b1ee0 lustre_swab_mdt_ioepoch +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9553c633 RQF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x95d08f0c lustre_swab_mgs_target_info +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9660ace0 RMF_FLD_MDFLD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x967bfd52 RQF_OBD_PING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x97502432 req_capsule_server_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9798f2f1 RQF_MDS_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x980fcfdc ptlrpc_connection_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x989d8359 req_capsule_set_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x98ff4936 req_capsule_server_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x995e7042 req_capsule_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x998df160 ptlrpc_schedule_difficult_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a258886 RQF_MDS_GETSTATUS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a6f2f6d lustre_msg_set_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b88f6ce RMF_NIOBUF_REMOTE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9bb5198b RQF_MDS_CLOSE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9d7ea314 sptlrpc_pack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9daa13fa sptlrpc_cli_ctx_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9ef0b7e7 ldlm_resource_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9fb088f1 lustre_swab_lov_mds_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa0929039 req_capsule_init_area +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa10f0d3d RMF_UPDATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa163f4c3 dump_rniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2244636 RQF_MDS_GETATTR_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa22c0086 ldlm_error2errno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa255e341 sec2target_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3d2a6ee RMF_CAPA1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa413458e ldlm_pool_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa43ab9c2 req_capsule_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa47787ef RMF_PTLRPC_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4a2d089 RQF_OST_PUNCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4bea5ef lustre_swab_lmv_user_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa537640b lustre_pack_reply_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5458dad ldlm_lock_decref_and_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5880075 ldlm_errno2error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5a251a0 ptlrpc_request_alloc_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa66888dd ptlrpcd_add_rqset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa6c436ca RQF_MDS_WRITEPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7d55cc3 RQF_MDS_REINT_CREATE_RMT_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7e360b1 RMF_OBD_IOOBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7ec567d RMF_CONNECT_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9704f80 lustre_msg_get_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9c4658e lustre_swab_lov_user_md_v3 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9edf09d RQF_OBD_IDX_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xabb1da38 ldlm_destroy_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaddc3979 lustre_swab_lustre_capa_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf4e9658 RQF_MDS_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf50a0d6 RMF_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf9ca4eb ldlm_pool_set_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0751fa4 RQF_LLOG_ORIGIN_HANDLE_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0986854 ptlrpc_service_health_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb13a0c9e target_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1b43d8a dump_rcs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb24b9e99 ptlrpc_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb27c2374 lustre_msg_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb28e58d0 ldlm_lock_allow_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb291473d lustre_msg_early_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb2b1817d lustre_swab_ost_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb424c11c ldlm_completion_ast_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4a7ecf3 lustre_msg_add_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4c07bf9 sptlrpc_import_sec_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb512ebc2 sptlrpc_parse_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb61cb95a RQF_MDS_GETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb665f9d1 ptlrpc_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb68476df interval_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb6aafd03 RQF_MDS_DONE_WRITING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb72fb4aa ptlrpc_reconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7835948 ptlrpc_abort_inflight +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7b38189 RMF_MDT_MD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7fa3cc8 RMF_LLOG_LOG_HDR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb8449341 ptlrpc_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb859221e ldlm_init_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb8a4b9d2 ldlm_reprocess_all_ns +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb8c430a2 ptlrpc_save_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb903634e RQF_OST_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9b631cf lustre_swab_mgs_config_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xba5d704b sptlrpc_gc_add_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xba9cec1e req_capsule_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbaa76097 lustre_msg_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbc1370dc lustre_shrink_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbc8df000 req_capsule_client_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd83bc44 RQF_OBD_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe28f2a6 ldlm_namespace_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe47bc7e ping_evictor_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbeb6217b _debug_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf6c0c4b client_import_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf98b86f RQF_MDS_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbffd4313 RQF_OST_BRW_WRITE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc06c4670 lustre_msg_get_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0867da7 RMF_REC_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0cdf55e RMF_MGS_SEND_PARAM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc146491b ptlrpc_set_add_new_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc1ed015f ldlm_pool_get_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2229f25 target_pack_pool_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2986d28 lustre_swab_ldlm_res_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2990b21 req_capsule_server_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2b1af57 RQF_MGS_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2be922a RMF_SYMTGT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc3859e1b sptlrpc_target_sec_part +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc3e5b4a2 ldlm_enqueue_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc45f494d ptlrpc_set_import_active +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc4fbc79c ldlm_resource_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc559a634 RMF_LAYOUT_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc5b5a1aa sptlrpc_gc_del_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc60a60e1 RQF_OST_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc647f96a ldlm_namespace_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc694be4b RQF_LLOG_ORIGIN_HANDLE_PREV_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc763fabc sptlrpc_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc78a5464 ptlrpc_free_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc79b9c67 ldlm_pools_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7ca8257 RQF_MDS_REINT_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7e47564 ptlrpc_interrupted_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc84f48e4 ptlrpc_unpack_rep_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8f586a9 ptlrpc_connection_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc922a434 ptlrpc_unregister_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc9ad997f ldlm_cli_update_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xca5a81ec ptlrpc_pinger_ir_down +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb16107d ptlrpc_set_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2cc0cf lustre_swab_lquota_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2ceaff sptlrpc_secflags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb74bbc0 req_capsule_server_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcc15420e ldlm_cli_enqueue_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcdffa8a2 lustre_free_reply_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce1a689b sptlrpc_enc_pool_add_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce86066d lustre_msg_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcea5dcfb ptlrpc_wake_delayed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcec513c9 RQF_MDS_UNPIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xced015be sptlrpc_rule_set_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf08df6c ptlrpc_prep_bulk_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf712948 ptlrpc_resend_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9963db lustre_msg_get_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9aab6a RQF_MDS_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd016bde5 ptlrpc_pinger_sending_on_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd0e41d8c req_capsule_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd0f66f85 client_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd135ea83 req_capsule_filled_sizes +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2983334 lustre_swab_swap_layouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd29daae9 ldlm_destroy_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2b0443e target_print_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2bd1af4 ptlrpc_nrs_policy_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2e0d4eb lustre_msg_get_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd3dae408 ldlm_it2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd537ded2 lustre_swab_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd5dd5bdc ptlrpc_start_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd60b9a42 req_capsule_server_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd67a5d7b lustre_swab_update_reply_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd69e0a27 RQF_MDS_IS_SUBDIR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6c3ebfb RMF_FIEMAP_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6c82dc6 __ptlrpc_free_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6cb7a8a ptlrpc_request_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7910326 lustre_swab_obd_statfs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7c08f86 do_set_info_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8293c9a req_capsule_client_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd85b7ec7 req_capsule_client_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8b91b3e lustre_swab_lov_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8f06300 RQF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd9561861 RQF_LDLM_INTENT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda2ac111 sptlrpc_proc_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdad3c6b1 ldlm_namespace_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb1fb0a2 RQF_MDS_REINT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb9cf0b8 ptlrpc_request_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb9d5a6a lustre_swab_niobuf_remote +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdcf910b9 lustre_swab_ost_last_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd0f1001 req_capsule_server_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd0ffb04 sptlrpc_flavor2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd30d7bf RMF_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd4471c3 lprocfs_rd_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xddc40a85 lustre_msg_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde12d36b RMF_MDS_HSM_ARCHIVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde555d70 sptlrpc_enc_pool_del_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdee87192 sptlrpc_conf_log_update_begin +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf57af9c sptlrpc_cli_unwrap_bulk_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf6daedd ptlrpc_request_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf701ae7 lustre_swab_fid2path +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe036cca1 ldlm_pool_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0cc694c RQF_LLOG_ORIGIN_HANDLE_NEXT_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe13b451e ldlm_resource_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe1a0e753 llog_origin_handle_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe1fa3bdf llog_origin_handle_read_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe20f56d2 ldlm_pool_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe22c7416 ptlrpc_set_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe233a8d2 ptlrpc_retain_replayable_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe2713d6e ptlrpc_invalidate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe2f077d8 ptlrpc_request_set_replen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe40e0a50 lustre_msg_get_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe549fcd3 ptlrpc_register_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe57bd972 sptlrpc_current_user_desc_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe5e8169b lustre_errno_ntoh +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe643998e RQF_OST_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6ae6143 ptlrpc_recover_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6f0dc96 RQF_OST_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7062b5f RMF_U32 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe73d6540 sptlrpc_conf_target_get_rules +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7512278 ptlrpcd_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe80af6ee ldlm_glimpse_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe81cf565 sptlrpc_unregister_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe97052a0 sptlrpc_req_replace_dead_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabaa0b1 lustre_swab_mdt_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabac4fc sptlrpc_rule_set_merge +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xebb64e68 req_layout_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec226f66 ping_evictor_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec939a00 RQF_MDS_REINT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecace5c1 RQF_OST_GET_INFO_GENERIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecb3ff97 ptl_send_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed159cf0 ptlrpc_req_set_repsize +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed1c10d6 ptlrpc_connection_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed26976a ptlrpc_lprocfs_brw +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xedc4fb54 lock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xedcb740d sptlrpc_name2flavor_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xef1aeca9 RMF_FLD_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0241d6e lustre_swab_hsm_progress_kernel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0410dc2 ptlrpc_cleanup_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0d52b5f ptlrpc_pinger_suppress_pings +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0e456ca ptlrpcd_wake +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf1300275 _sptlrpc_enlarge_msg_inplace +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf1ea9d59 __ptlrpc_prep_bulk_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf239b58d ptlrpc_disconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf2673fed ldlm_get_enq_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf277c125 RQF_OST_GET_INFO_FIEMAP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf27d49dc sptlrpc_target_choose_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf35f132b lustre_swab_ldlm_resource_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3c91e74 ptlrpc_request_bufs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3d44370 RQF_OST_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3ece29d ptlrpc_req_finished_with_imp_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf43540b9 lustre_swab_mgs_nidtbl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf45085e1 sptlrpc_conf_log_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf4c589ef lustre_pack_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf55c033b RMF_MGS_CONFIG_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf584a16b sptlrpc_part2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf596e9ae sptlrpc_conf_log_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf5ab2dfe ptlrpc_request_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf607fc23 sptlrpc_flavor2name_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf617ab8a lustre_msg_get_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf682a28b ptlrpc_register_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf697b756 ldlm_dump_all_namespaces +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7408f84 lustre_swab_hsm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7ba40c0 RMF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf85cb27e sptlrpc_parse_rule +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf870fed9 RQF_LDLM_GL_DESC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9051bd6 RQF_QC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf94e41e0 deuuidify +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf973aa93 lustre_swab_lov_user_md_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9ee11e2 lustre_msg_set_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9f72dfc RMF_TGTUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa1cffcb ptlrpc_prep_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa51688d interval_insert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb221d85 sptlrpc_enc_pool_get_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb444a98 ptlrpc_prep_fcset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb8854be ptlrpc_replay_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc2fa83f ptlrpc_del_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfcba40d6 ptlrpc_hpreq_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd0211fa ldlm_prep_enqueue_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd148bf8 RMF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff02a0e9 ldlm_lock_set_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff2b5341 ptlrpc_prep_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffc807e8 sptlrpc_unpack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffe29c3f RQF_LDLM_ENQUEUE +EXPORT_SYMBOL drivers/staging/media/cxd2099/cxd2099 0x67c82afc cxd2099_attach +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x7f5344d8 go7007_snd_remove +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x9071767a go7007_parse_video_stream +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x915c9000 go7007_read_interrupt +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x94b88cf9 go7007_snd_init +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xc14bec97 go7007_boot_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xceec67b5 go7007_update_board +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xedba4ad0 go7007_alloc +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xf05aef2c go7007_register_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xf8ac8061 go7007_read_addr +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x02848d54 rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0445fd94 rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x070c3901 rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1152bad2 rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1675f41f alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x18a7a2fd rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1af2cb23 rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x323fea9b rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x336afd88 rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x365c2226 rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x36b6dde8 rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x37580b56 rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x38954e70 rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x391f4a79 rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x40a14c62 dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5955e636 rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6390e0ed rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x65c90064 notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6a5089c0 rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6ae84229 rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6c07aeae rtllib_wpa_supplicant_ioctl +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x781b37d4 rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x78ebdd6e rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7c556d32 rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7f7a2a7b rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8184b963 rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x88856c79 Dot11d_Channelmap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8cdf6561 RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9548c82b rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9843f727 rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xaa2a6793 rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xae4be331 HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb06ac9bf rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb37a1a95 rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb45e9b24 rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbd4d0036 rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbe1420f2 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc4727899 rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc6070b92 rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc693241d rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xca059985 rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xcebb29d9 rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd2430292 free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdad470a2 rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdc7e33ff rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe993f14b rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xeaf45dd2 rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xeb14e64b rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf1f9f1a9 rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf4ae5330 rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf6230109 rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x04e00d49 ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x07169a22 ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0c598af9 ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x11d0fa85 ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x15a34988 ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x15ffb498 DOT11D_ScanComplete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1a851aa1 notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2a1988f9 ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2cd5cb91 ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2cfb646a ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x33d5b5bc ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x345b0195 ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3979fac3 ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3b3539fa Dot11d_Reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3cbb989d ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3f44894e ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x41bb8636 Dot11d_Init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x431d545e ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x477f586c ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4ba8edf7 ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4cd029f5 ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x50579b8a ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5629ce1c ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x58169c95 Dot11d_UpdateCountryIe +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5f7e7ad1 ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x669e3a1b ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6c32c8b5 ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x779bb2e3 SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x78017aad IsLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7c9d5502 ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8486f5d0 ToLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x862d1530 ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8a9f6b47 ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x91c30ab4 ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9521ef07 HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x99fb667e ieee80211_send_probe_requests_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa0381f1d ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa29da229 ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa6006718 ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa6f6b241 ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb118adc5 ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb35b153a ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb55c507f ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbda1e3f6 ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc019b768 ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc1b9b9d2 ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc228b0ba ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc26c62e5 ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd4faff28 ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd55bc995 ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd5824d35 DOT11D_GetMaxTxPwrInDbm +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd9d8047e ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xdc474a28 ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe16a5dbb ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xee6be0a7 ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf989cd46 ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0017f35f set_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x00ea0cde set_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x06d6f244 get_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x09df8f3e set_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0a8d32c3 get_bypass_slave_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1936264c set_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1d2eb8ca get_tap_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x203af1f7 reset_bypass_wd_timer_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2070f14a set_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x27b990ef get_bypass_info_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2ba7cd35 get_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2c3f1c17 get_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2f59e636 get_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2fdb893a get_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x361cf40a get_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x45ca99c3 set_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x550a188c set_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x5cb59e92 get_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x66b60122 set_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x675208c0 set_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x692623f2 get_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x75131ec6 set_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x76c0b7d0 set_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e872825 get_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e8d701e get_wd_expire_time_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x86388b07 get_bp_disc_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x93ae4648 get_wd_set_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x95e42b0d is_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9df5f807 set_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9e21f42e set_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xa689a214 get_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xae117788 get_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xc368d30d get_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xccab5de0 get_bypass_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd3e034b3 get_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9c1ccfc get_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9d38d97 set_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xe640f06e set_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xecdaa456 set_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xedcd3c1b get_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf06d67bf set_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf57c1671 get_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf693c3a1 bp_if_scan_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf8237882 get_bypass_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xfa59240d get_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05af3c4c set_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05b08a42 set_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0b0d5ce0 get_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0fc2e83c reset_bypass_wd_timer +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x123a8133 get_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x157ec89c get_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2440f05a get_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2b01d1d4 set_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2c27a2f0 set_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2da97f4b is_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2e86c67b get_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37416370 get_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37bdab27 get_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x3da96a18 get_bypass_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4025805e get_bypass_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4940a0cc get_bypass_info +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4d21ff51 get_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5147360c get_bp_disc_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x515d4df1 get_bypass_slave +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5560267e set_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5be44d44 set_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6653590c get_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6bda14ec get_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x72c618ae set_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x76d47e6f set_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x794e3815 set_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x7c6cbc16 get_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x84a263dc set_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x8a16f22c set_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x946ff795 get_wd_set_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x94f6aff2 get_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x9d1ecf73 set_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xb1385629 set_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xbff68c45 set_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xc871c561 get_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xcee528df set_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd202dd85 get_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd787f151 get_wd_expire_time +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xdb6a39d2 get_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xebd25ae5 get_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf1e9f8c1 set_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf224abd9 get_tap_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf5a591b2 set_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf643fd4c get_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x38270138 xillybus_endpoint_remove +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x6bdfec96 xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x8945bfe8 xillybus_do_cleanup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xbdd30cb9 xillybus_init_endpoint +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x03a26332 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0a3bc5bb iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0f29b7ef iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x17339fa2 iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1f7aa063 iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x240faef8 iscsit_handle_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x24bce6c3 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2ddc0e8c iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x38923a60 iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3a2b08c6 iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3a57f70d iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x57bec730 iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x57f5e7b7 iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x69a896ef iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x756a2166 iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x77e9fc24 iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7e290390 iscsit_set_unsoliticed_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8e52d582 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x92d05b2f iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9b16fad0 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9cab3d58 iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xacc08598 iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb45d4424 iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbfa55e6f iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc6ce72fa iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xcfc37dff iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe0b11ec3 iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe1fcf466 iscsit_register_transport +EXPORT_SYMBOL drivers/target/target_core_mod 0x002bc834 iscsi_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x02de3b18 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x0702db88 fc_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x093e79e4 spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0x0cd9f806 transport_check_aborted_status +EXPORT_SYMBOL drivers/target/target_core_mod 0x18b6b9c0 core_tpg_clear_object_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x1bf720ed transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x1dd4f30f sbc_execute_unmap +EXPORT_SYMBOL drivers/target/target_core_mod 0x20441048 target_setup_cmd_from_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x20fc5ceb target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x218050ae target_fabric_configfs_free +EXPORT_SYMBOL drivers/target/target_core_mod 0x235b2dfc core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x26255f37 target_put_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x284613be core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x2f213812 sas_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x32f7888f transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x33072943 target_fabric_configfs_init +EXPORT_SYMBOL drivers/target/target_core_mod 0x33a09b6a transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0x36810aec core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a2e3f57 transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x3c0a9572 core_tpg_add_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x3c408cc3 transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x3c4727d7 target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0x44a2275c target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x45f74854 iscsi_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x46acdf31 transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x4a64ad03 target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x4c107675 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x4d91b2e1 core_tpg_del_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x4dff7c99 spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x61781133 core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x64119dd3 transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x643a733a fc_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x6d090198 transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x6fbd7082 sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x6ff28105 transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x734009ce fc_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x760cfd2b target_fabric_configfs_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x7cd1534c spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0x7dbada9d transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x7f8e5f1a target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x840f49db sas_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x85aa880c transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x89458392 target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x8b85076f fc_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x9631cac3 transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0x96a46803 spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x97d11dde sas_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xa07ef121 target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xa21cdb30 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xaa43b6b7 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0xadb1c849 transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0xaf8ac3d8 target_get_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xb44ac632 core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0xb6787750 iscsi_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xbcde33fd core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xbe0c3bd5 transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xc77cacfc transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0xc8419ecb transport_subsystem_release +EXPORT_SYMBOL drivers/target/target_core_mod 0xccc4f7de sas_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0xd1599d7c transport_init_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0xd1fff30e transport_subsystem_register +EXPORT_SYMBOL drivers/target/target_core_mod 0xd255c1f5 core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0xd65928ff transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0xd8aa75c5 transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0xd8dc7944 target_fabric_configfs_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xdea5811e core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0xe1e4b4d5 sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0xe361de3b sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xe43c45b5 __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xf01621c7 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf58caffb target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0xfb37a61f target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0xfbf3bdba iscsi_get_pr_transport_id +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0x7de8417e usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0x84b4c9f9 unregister_gadget_item +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x085a5ad3 gether_set_gadget +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x09784862 gether_get_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x2f1435ac gether_register_netdev +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x3d372803 gether_set_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x426e292d gether_get_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x478e0e43 gether_set_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x4d157e9e gether_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x68e103e7 gether_get_host_addr_cdc +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x88a2b84b gether_setup_name_default +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x9e5b85d5 gether_connect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xa123add1 gether_set_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xb0af3857 gether_get_host_addr_u8 +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xe6e32fa3 gether_get_ifname +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xe85d1262 gether_get_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xed41bd8f gether_setup_name +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3a6d4f22 rndis_free_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3ca38e3a rndis_signal_connect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x4ca90996 rndis_signal_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x5d22b406 rndis_register +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x70970ef1 rndis_set_param_dev +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x785d494b rndis_msg_parser +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x840dd143 rndis_deregister +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x988ad2a2 rndis_set_param_vendor +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x9acf72e4 rndis_set_param_medium +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xa90054ee rndis_uninit +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xac1f4f4d rndis_rm_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xb971ebca rndis_get_next_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xd2fe47b1 rndis_set_host_mac +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xe3931360 rndis_add_hdr +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x069213bf fsg_show_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1710b539 fsg_fs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x17218d5c fsg_show_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1b1cc3af store_cdrom_address +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x2933ee1d fsg_ss_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x31ad4539 fsg_show_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x398778e1 fsg_ss_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x423845e4 fsg_ss_bulk_in_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x56344daf fsg_hs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x5ae3e388 fsg_lun_open +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x7304d1e1 fsg_store_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x784d41de fsg_store_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x7c351bfe fsg_show_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x868309f7 fsg_store_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x95cffb3e fsg_hs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5cae92f fsg_ss_bulk_out_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5f99b69 fsg_fs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb313004e fsg_lun_close +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb52ba28a fsg_intf_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb54d0d95 fsg_fs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xc1349c8f fsg_store_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xd187d4f2 fsg_show_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xd3f4194a fsg_lun_fsync_sub +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xdb1c50f3 fsg_store_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xf4efc0c8 fsg_ss_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_rndis 0xb09a171e rndis_borrow_net +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0x8ed8bd74 sl811h_driver +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xa64a4cea usb_nop_xceiv_unregister +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xd0e43207 usb_nop_xceiv_register +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x0f68a6c6 usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x143a79c5 usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x1cc9d6ef usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x40e5e835 usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x60eabd88 usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xa94a2123 usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xaf8daaed usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xc53b6ea0 usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xc53f3ad3 usb_wwan_set_termios +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xdfb016ff usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xe95b3d87 usb_wwan_ioctl +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xf2010e41 usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xf6c72396 usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x46058e15 usb_serial_resume +EXPORT_SYMBOL drivers/usb/serial/usbserial 0xace87b25 usb_serial_suspend +EXPORT_SYMBOL drivers/vhost/vringh 0x0dda8c5a vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x1f063017 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x2e91ca97 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x367ce26a vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x36dfce73 vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3eaf442a vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x3fa42e4f vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5dafbd4e vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x66af098b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x6d0e7948 vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x7bda5e6d vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x821e9390 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0xaf8e4a0e vringh_notify_disable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xafb47dae vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc884d704 vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc8bee0a4 vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xd11d2709 vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xda4ea4cc vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0xfc7dcad2 vringh_getdesc_user +EXPORT_SYMBOL drivers/video/backlight/generic_bl 0x366d19ef genericbl_limit_intensity +EXPORT_SYMBOL drivers/video/backlight/lcd 0x5bab23aa devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0xa7558b15 devm_lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xc2edb378 lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xd4dcacb4 lcd_device_unregister +EXPORT_SYMBOL drivers/video/cyber2000fb 0x0cc3ede5 cyber2000fb_detach +EXPORT_SYMBOL drivers/video/cyber2000fb 0x534b6f18 cyber2000fb_disable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xb39f68d1 cyber2000fb_enable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xdf4c7920 cyber2000fb_attach +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x48c26f92 g450_mnp2f +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x77156bfb matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x891868fb matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x24a06cdc DAC1064_global_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x2e6f9f51 matrox_G100 +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x613a2c1a matrox_mystique +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xffb7bf9e DAC1064_global_restore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_Ti3026 0xd129d943 matrox_millennium +EXPORT_SYMBOL drivers/video/matrox/matroxfb_accel 0xd0685980 matrox_cfbX_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x168dc186 matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x3d075ef6 matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x8d9443f5 matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xeb2af19b matroxfb_register_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x22cbe2b9 matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x328b6498 matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x1f9d6b61 matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x2f067698 matroxfb_read_pins +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xc2df93bd matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xc5b227c2 matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xd2bdb835 matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/mb862xx/mb862xxfb 0xf2d22422 mb862xxfb_init_accel +EXPORT_SYMBOL drivers/video/output 0x0b08bac9 video_output_unregister +EXPORT_SYMBOL drivers/video/output 0xab852fa8 video_output_register +EXPORT_SYMBOL drivers/video/sis/sisfb 0x3037658e sis_malloc +EXPORT_SYMBOL drivers/video/sis/sisfb 0x454a3cf0 sis_free +EXPORT_SYMBOL drivers/video/svgalib 0x00c7a827 svga_tilefill +EXPORT_SYMBOL drivers/video/svgalib 0x17f3f471 svga_set_default_seq_regs +EXPORT_SYMBOL drivers/video/svgalib 0x1be6dc30 svga_set_textmode_vga_regs +EXPORT_SYMBOL drivers/video/svgalib 0x38521e64 svga_get_caps +EXPORT_SYMBOL drivers/video/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/svgalib 0x5b14e69e svga_settile +EXPORT_SYMBOL drivers/video/svgalib 0x5bb2a6e3 svga_tilecursor +EXPORT_SYMBOL drivers/video/svgalib 0x5dec78cc svga_tilecopy +EXPORT_SYMBOL drivers/video/svgalib 0x6e4adb1e svga_check_timings +EXPORT_SYMBOL drivers/video/svgalib 0x80f24d95 svga_wcrt_multi +EXPORT_SYMBOL drivers/video/svgalib 0x8de63fb4 svga_set_timings +EXPORT_SYMBOL drivers/video/svgalib 0xa736f5d8 svga_tileblit +EXPORT_SYMBOL drivers/video/svgalib 0xd07e4cb9 svga_get_tilemax +EXPORT_SYMBOL drivers/video/svgalib 0xd1429fca svga_wseq_multi +EXPORT_SYMBOL drivers/video/svgalib 0xd22ca511 svga_set_default_atc_regs +EXPORT_SYMBOL drivers/video/svgalib 0xe28d2a49 svga_set_default_gfx_regs +EXPORT_SYMBOL drivers/video/svgalib 0xef774f5d svga_compute_pll +EXPORT_SYMBOL drivers/video/svgalib 0xf2db5956 svga_match_format +EXPORT_SYMBOL drivers/video/syscopyarea 0x4f459b52 sys_copyarea +EXPORT_SYMBOL drivers/video/sysfillrect 0x443575ad sys_fillrect +EXPORT_SYMBOL drivers/video/sysimgblt 0xe16e674b sys_imageblit +EXPORT_SYMBOL drivers/video/vgastate 0x686de290 restore_vga +EXPORT_SYMBOL drivers/video/vgastate 0xe7a2620e save_vga +EXPORT_SYMBOL drivers/virt/fsl_hypervisor 0x45fd1882 fsl_hv_failover_unregister +EXPORT_SYMBOL drivers/virt/fsl_hypervisor 0x77c9b191 fsl_hv_failover_register +EXPORT_SYMBOL drivers/vme/vme 0x00d7e722 vme_lm_count +EXPORT_SYMBOL drivers/vme/vme 0x072f901c vme_master_rmw +EXPORT_SYMBOL drivers/vme/vme 0x0ec5babe vme_dma_free +EXPORT_SYMBOL drivers/vme/vme 0x0fcc3381 vme_slave_request +EXPORT_SYMBOL drivers/vme/vme 0x20df5a3d vme_dma_pci_attribute +EXPORT_SYMBOL drivers/vme/vme 0x37faf527 vme_register_driver +EXPORT_SYMBOL drivers/vme/vme 0x3e95083c vme_slave_get +EXPORT_SYMBOL drivers/vme/vme 0x41862ad4 vme_alloc_consistent +EXPORT_SYMBOL drivers/vme/vme 0x46649cd1 vme_lm_set +EXPORT_SYMBOL drivers/vme/vme 0x48b99a13 vme_lm_free +EXPORT_SYMBOL drivers/vme/vme 0x4baf35a7 vme_master_get +EXPORT_SYMBOL drivers/vme/vme 0x535c8308 vme_dma_pattern_attribute +EXPORT_SYMBOL drivers/vme/vme 0x56917d2b vme_new_dma_list +EXPORT_SYMBOL drivers/vme/vme 0x5aff4177 vme_lm_get +EXPORT_SYMBOL drivers/vme/vme 0x5cb3a087 vme_dma_list_free +EXPORT_SYMBOL drivers/vme/vme 0x606fe472 vme_dma_request +EXPORT_SYMBOL drivers/vme/vme 0x6e3c5ea2 vme_slot_get +EXPORT_SYMBOL drivers/vme/vme 0x6e8683ce vme_bus_type +EXPORT_SYMBOL drivers/vme/vme 0x74056299 vme_unregister_bridge +EXPORT_SYMBOL drivers/vme/vme 0x7bc84cd9 vme_dma_list_add +EXPORT_SYMBOL drivers/vme/vme 0x7cf35220 vme_master_free +EXPORT_SYMBOL drivers/vme/vme 0x7fde2edb vme_master_read +EXPORT_SYMBOL drivers/vme/vme 0x86b06279 vme_master_request +EXPORT_SYMBOL drivers/vme/vme 0x87751605 vme_unregister_driver +EXPORT_SYMBOL drivers/vme/vme 0x90695906 vme_free_consistent +EXPORT_SYMBOL drivers/vme/vme 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL drivers/vme/vme 0x9aeb07e8 vme_lm_attach +EXPORT_SYMBOL drivers/vme/vme 0x9c5522e0 vme_dma_list_exec +EXPORT_SYMBOL drivers/vme/vme 0xa31bdf07 vme_master_set +EXPORT_SYMBOL drivers/vme/vme 0xa80f0534 vme_irq_request +EXPORT_SYMBOL drivers/vme/vme 0xa9ec7542 vme_irq_generate +EXPORT_SYMBOL drivers/vme/vme 0xd0831a31 vme_irq_free +EXPORT_SYMBOL drivers/vme/vme 0xd64bd33b vme_lm_request +EXPORT_SYMBOL drivers/vme/vme 0xd797b9a5 vme_master_write +EXPORT_SYMBOL drivers/vme/vme 0xdff905e5 vme_slave_free +EXPORT_SYMBOL drivers/vme/vme 0xe1f1b637 vme_irq_handler +EXPORT_SYMBOL drivers/vme/vme 0xe693a6ce vme_get_size +EXPORT_SYMBOL drivers/vme/vme 0xedf4b7d2 vme_register_bridge +EXPORT_SYMBOL drivers/vme/vme 0xefd1624a vme_dma_free_attribute +EXPORT_SYMBOL drivers/vme/vme 0xf5a10e25 vme_slave_set +EXPORT_SYMBOL drivers/vme/vme 0xfacd8e72 vme_dma_vme_attribute +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x0257be25 w1_ds2760_store_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x40d2737e w1_ds2760_read +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x73007939 w1_ds2760_recall_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xc8189a29 w1_ds2760_write +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x60d91d48 w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xa38c843b w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x24f6c1af w1_ds2781_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x53bd5cd4 w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/wire 0x0d31bc8f w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0xacfe4fb7 w1_unregister_family +EXPORT_SYMBOL drivers/w1/wire 0xf23d6c0e w1_remove_master_device +EXPORT_SYMBOL drivers/w1/wire 0xfceacbe9 w1_register_family +EXPORT_SYMBOL fs/btrfs/btrfs 0x27476846 ulist_reinit +EXPORT_SYMBOL fs/btrfs/btrfs 0x41e6a9d2 ulist_init +EXPORT_SYMBOL fs/btrfs/btrfs 0x7e2ee765 ulist_free +EXPORT_SYMBOL fs/btrfs/btrfs 0xa2eec2e8 ulist_fini +EXPORT_SYMBOL fs/btrfs/btrfs 0xb1320bc8 ulist_add +EXPORT_SYMBOL fs/btrfs/btrfs 0xb42289d2 ulist_alloc +EXPORT_SYMBOL fs/btrfs/btrfs 0xc2c745db ulist_next +EXPORT_SYMBOL fs/configfs/configfs 0x0858e19a config_item_put +EXPORT_SYMBOL fs/configfs/configfs 0x2263a8a4 configfs_depend_item +EXPORT_SYMBOL fs/configfs/configfs 0x248779ed config_item_get +EXPORT_SYMBOL fs/configfs/configfs 0x49241529 config_group_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0x55081048 configfs_unregister_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0x64aee590 config_item_set_name +EXPORT_SYMBOL fs/configfs/configfs 0x8049ab3a configfs_undepend_item +EXPORT_SYMBOL fs/configfs/configfs 0x8dd1f248 config_group_init +EXPORT_SYMBOL fs/configfs/configfs 0xaeacb88b config_group_find_item +EXPORT_SYMBOL fs/configfs/configfs 0xe6839350 config_item_init +EXPORT_SYMBOL fs/configfs/configfs 0xea09dec6 config_item_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0xf9b468d3 configfs_register_subsystem +EXPORT_SYMBOL fs/exofs/libore 0x0753e3d2 ore_get_rw_state +EXPORT_SYMBOL fs/exofs/libore 0x28806871 ore_verify_layout +EXPORT_SYMBOL fs/exofs/libore 0x39c53c10 extract_attr_from_ios +EXPORT_SYMBOL fs/exofs/libore 0x4527e170 ore_calc_stripe_info +EXPORT_SYMBOL fs/exofs/libore 0x5f5a482b ore_put_io_state +EXPORT_SYMBOL fs/exofs/libore 0x6f1d7d85 ore_write +EXPORT_SYMBOL fs/exofs/libore 0x719071ea ore_get_io_state +EXPORT_SYMBOL fs/exofs/libore 0x99a0848b ore_create +EXPORT_SYMBOL fs/exofs/libore 0xa3d2a634 g_attr_logical_length +EXPORT_SYMBOL fs/exofs/libore 0xd5cc68f4 ore_remove +EXPORT_SYMBOL fs/exofs/libore 0xdd80ef5b ore_read +EXPORT_SYMBOL fs/exofs/libore 0xe032f563 ore_check_io +EXPORT_SYMBOL fs/exofs/libore 0xee5b9767 ore_truncate +EXPORT_SYMBOL fs/fscache/fscache 0x00bf842a __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x1d24e89b __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0x22701178 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x2645f281 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0x2a88703a fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0x2dbeba5d __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x377e1d11 __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0x3b9b5fce fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x3bdcb4d2 fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0x3f85c883 __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x49a8ae7c __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x4ca61c1e fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0x50fb5372 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x51735f02 fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0x664a2179 __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0x72453d95 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x7435c20d fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x84639bed fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0x8560a795 __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x89816ab5 fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0x92053a43 fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0x95411e35 __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x993a496d __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xad9b1d8e __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0xae92428b __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0xaf75a705 fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0xb0c92a26 fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0xb0de49e4 __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0xb1faeb74 fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0xb7094020 __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0xc0a9f4f4 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0xc7b5e88e __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0xcf3420cb fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0xdae84edc fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0xdf9c7417 __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xeb2eca46 fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0xf8888a03 __fscache_invalidate +EXPORT_SYMBOL fs/nfsd/nfsd 0x35e33c1e nfs4_acl_write_who +EXPORT_SYMBOL fs/nfsd/nfsd 0x5a157ae4 nfs4_acl_get_whotype +EXPORT_SYMBOL fs/nfsd/nfsd 0xa0f4b528 nfs4_acl_posix_to_nfsv4 +EXPORT_SYMBOL fs/nfsd/nfsd 0xb25b2957 nfs4_acl_nfsv4_to_posix +EXPORT_SYMBOL fs/nfsd/nfsd 0xe13337f0 nfs4_acl_new +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x0bba2808 qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x3d4ba4be qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0x443cf9bb qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x9a6942e4 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xc2d00e65 qtree_write_dquot +EXPORT_SYMBOL lib/cordic 0x434bfd07 cordic_calc_iq +EXPORT_SYMBOL lib/crc-ccitt 0x3771b461 crc_ccitt +EXPORT_SYMBOL lib/crc-ccitt 0x75811312 crc_ccitt_table +EXPORT_SYMBOL lib/crc-itu-t 0xd29b009f crc_itu_t_table +EXPORT_SYMBOL lib/crc-itu-t 0xf5b4a948 crc_itu_t +EXPORT_SYMBOL lib/crc7 0xa7587646 crc7 +EXPORT_SYMBOL lib/crc7 0xd80c3603 crc7_syndrome_table +EXPORT_SYMBOL lib/crc8 0x41248eaf crc8 +EXPORT_SYMBOL lib/crc8 0xab9ad613 crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xd4534d80 crc8_populate_msb +EXPORT_SYMBOL lib/libcrc32c 0x27000b29 crc32c +EXPORT_SYMBOL lib/lru_cache 0x0c9ff2c3 lc_find +EXPORT_SYMBOL lib/lru_cache 0x0d2dc6b3 lc_reset +EXPORT_SYMBOL lib/lru_cache 0x2bca6ccb lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x3691748f lc_set +EXPORT_SYMBOL lib/lru_cache 0x3e9045d6 lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0x43e46a2d lc_committed +EXPORT_SYMBOL lib/lru_cache 0x452c8b46 lc_del +EXPORT_SYMBOL lib/lru_cache 0x4f65bc48 lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0x60fd5d64 lc_is_used +EXPORT_SYMBOL lib/lru_cache 0x75a91db9 lc_destroy +EXPORT_SYMBOL lib/lru_cache 0x8af6181d lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0xa2873827 lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xb74693bf lc_try_get +EXPORT_SYMBOL lib/lru_cache 0xbb6d3769 lc_create +EXPORT_SYMBOL lib/lru_cache 0xbd032277 lc_put +EXPORT_SYMBOL lib/lru_cache 0xef129f5b lc_get +EXPORT_SYMBOL lib/lru_cache 0xf9b6ff79 lc_get_cumulative +EXPORT_SYMBOL lib/lz4/lz4_compress 0xcbc5d521 lz4_compress +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x26c3aa22 lz4hc_compress +EXPORT_SYMBOL lib/raid6/raid6_pq 0x0bd662f6 raid6_gfmul +EXPORT_SYMBOL lib/raid6/raid6_pq 0x15fe0cd3 raid6_gfexp +EXPORT_SYMBOL lib/raid6/raid6_pq 0x5ba93f9d raid6_gfinv +EXPORT_SYMBOL lib/raid6/raid6_pq 0x7456cc61 raid6_empty_zero_page +EXPORT_SYMBOL lib/raid6/raid6_pq 0xce45a6f1 raid6_gfexi +EXPORT_SYMBOL lib/raid6/raid6_pq 0xd9e91f83 raid6_vgfmul +EXPORT_SYMBOL net/802/p8022 0x26d4c60c register_8022_client +EXPORT_SYMBOL net/802/p8022 0x83dc5797 unregister_8022_client +EXPORT_SYMBOL net/802/p8023 0x7e418edc make_8023_client +EXPORT_SYMBOL net/802/p8023 0xf4c5ecef destroy_8023_client +EXPORT_SYMBOL net/802/psnap 0x855b4403 unregister_snap_client +EXPORT_SYMBOL net/802/psnap 0xfd32668a register_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x0aecde85 p9_payload_gup +EXPORT_SYMBOL net/9p/9pnet 0x11145e2e p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0x178f17d2 p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x1a37c7e9 p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x1d363f1b p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0x1db57e3b p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x21e6a977 p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x35d1e27e p9_idpool_get +EXPORT_SYMBOL net/9p/9pnet 0x36a25794 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0x37ce6d37 v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x44d2c2c0 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0x458687ce v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x4a4e9706 p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0x4d379273 p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0x4f393299 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x51fb1091 p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0x54c07857 p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0x55ad2232 p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x56e1082b p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0x59a82099 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0x6336c19f p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x675f5385 p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x67687c70 p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0x6ceef040 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x6ddee64a p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0x70f1f51f v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0x73c7ed50 p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x7fa78fc6 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0x866c615d p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x87675956 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x911b9a3f p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0x91ce3e94 p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0x977a0030 p9_nr_pages +EXPORT_SYMBOL net/9p/9pnet 0x9d92ed5a p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0xa37f9602 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0xa3eaadfe p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0xb1191b98 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0xb4fa7fdc p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0xba1607a7 v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0xc173ad52 p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0xc5db54a9 p9_idpool_destroy +EXPORT_SYMBOL net/9p/9pnet 0xd0d7b070 p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0xd2b3ebcc p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0xe06805a0 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xef51a352 p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0xf4a111d8 p9_idpool_create +EXPORT_SYMBOL net/9p/9pnet 0xf7bf730a p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0xf84f2022 p9_idpool_put +EXPORT_SYMBOL net/9p/9pnet 0xfd40c79d p9_idpool_check +EXPORT_SYMBOL net/9p/9pnet 0xffbfd657 p9_client_rename +EXPORT_SYMBOL net/appletalk/appletalk 0x3cc77ae3 alloc_ltalkdev +EXPORT_SYMBOL net/appletalk/appletalk 0xd3262f32 aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0xe23099f0 atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0xfc3bca80 atrtr_get_dev +EXPORT_SYMBOL net/atm/atm 0x02c80170 vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x2df4462b atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0x33f2f256 atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0x3ece105b vcc_release_async +EXPORT_SYMBOL net/atm/atm 0x3fd27ee1 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0x422fe0cf atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x4c49ab29 atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0x5d5284e8 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x75b9b32d vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0x8a75bcac atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x914c3d11 atm_charge +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xca87b453 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0xcca239d7 atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0xda8934ea deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/ax25/ax25 0x026c1368 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x3afee63e ax25_findbyuid +EXPORT_SYMBOL net/ax25/ax25 0x44c24885 ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x4e8bf29d ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x54b87c7d ax25_rebuild_header +EXPORT_SYMBOL net/ax25/ax25 0x69d25bcb ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0x7267034b ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x8e8a175e ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0xa86dad96 ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xeb4a5d0f ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0xebfb121f ax25_hard_header +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0046257b bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0f20e9cf bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0x21c5261b bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x266019ea bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x27c01181 hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2ab9f270 bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3a54d586 __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x429cf569 bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4b13cda2 bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4daf0777 hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x55b57f80 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0x56c253a8 hci_recv_stream_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x64df6e49 hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x75ae3117 l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0x77300558 hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7a7b3e60 hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7c640527 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x807c6086 bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0x84aac998 bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0x866f7c0b hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x91c9a325 bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9bdebaca hci_recv_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9dd426a3 bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa2f07bd3 hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa2f33836 l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa5be86bb bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa5ceba17 hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa61b21da bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa901e0af __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xac7879ce l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xafe45246 bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb61a0c3b bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc704f2ee bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcab486b3 bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcc1fb551 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0xce5a775e hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd549457b hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdfe3bdb5 hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe50f532c l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe7863d9b hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf77d6233 l2cap_is_socket +EXPORT_SYMBOL net/bridge/bridge 0x31c8bf6d br_should_route_hook +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x040fa658 ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x18c00abf ebt_do_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x3ff1d311 ebt_register_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +EXPORT_SYMBOL net/caif/caif 0x2a09f713 cfpkt_fromnative +EXPORT_SYMBOL net/caif/caif 0x329dbd06 cfpkt_info +EXPORT_SYMBOL net/caif/caif 0x38701a7c cfcnfg_del_phy_layer +EXPORT_SYMBOL net/caif/caif 0x4a237e57 cfpkt_tonative +EXPORT_SYMBOL net/caif/caif 0x6a44fc70 cfpkt_extr_head +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x966d7de2 cfpkt_add_head +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xb74d1a7a cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/caif/caif 0xc01b32d4 get_cfcnfg +EXPORT_SYMBOL net/caif/caif 0xc5f4f9ab caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0xd0aa6870 caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0xeefcd120 caif_connect_client +EXPORT_SYMBOL net/can/can 0x0a99c95f can_ioctl +EXPORT_SYMBOL net/can/can 0x18b3348b can_rx_register +EXPORT_SYMBOL net/can/can 0x69855535 can_rx_unregister +EXPORT_SYMBOL net/can/can 0xa201e83c can_send +EXPORT_SYMBOL net/can/can 0xaa984c47 can_proto_register +EXPORT_SYMBOL net/can/can 0xf10a47bf can_proto_unregister +EXPORT_SYMBOL net/ceph/libceph 0x081dcd3a osd_req_op_watch_init +EXPORT_SYMBOL net/ceph/libceph 0x086558a9 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x09290ab3 ceph_debugfs_init +EXPORT_SYMBOL net/ceph/libceph 0x0ed1f110 ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0x0f0eaaaf osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0x10523fe5 osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x10940306 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0x128d05dc ceph_osdc_build_request +EXPORT_SYMBOL net/ceph/libceph 0x1379ab67 ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0x1475bf0d ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x18db93c2 ceph_client_id +EXPORT_SYMBOL net/ceph/libceph 0x197effcb ceph_osdc_release_request +EXPORT_SYMBOL net/ceph/libceph 0x1b7ee078 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0x1bfbd213 ceph_osdc_readpages +EXPORT_SYMBOL net/ceph/libceph 0x20d151cb ceph_osdc_setup +EXPORT_SYMBOL net/ceph/libceph 0x23b620ed osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x282729f0 ceph_get_direct_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x2a5e682a osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0x3158173e ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x32429f5f ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0x35f89cbe ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0x36fda9a8 ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x39a204f9 ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x3abec91f ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x3ca78f69 ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0x3d306ea2 ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x3df0ec7c ceph_calc_ceph_pg +EXPORT_SYMBOL net/ceph/libceph 0x3f688151 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x4205ffd7 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0x43c8d341 ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x43e458f6 ceph_file_part +EXPORT_SYMBOL net/ceph/libceph 0x43efd647 ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0x4471fc9b ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x46fd442c osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0x49b4fc74 osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x4b06d18b __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x4bcac665 ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0x5379cea3 ceph_caps_for_mode +EXPORT_SYMBOL net/ceph/libceph 0x5615bdb0 ceph_osdc_set_request_linger +EXPORT_SYMBOL net/ceph/libceph 0x563248ed ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x5a750c29 ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x5bc6cb28 osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0x5f6954d9 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0x5fd6c72e ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x5fe4b2fa ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0x60171139 ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x6b2e3bcd ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x6c5d5ac1 ceph_calc_pg_primary +EXPORT_SYMBOL net/ceph/libceph 0x6d2d06a1 ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0x6ed41be2 ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0x6faf833f ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0x731267da ceph_osdc_cancel_event +EXPORT_SYMBOL net/ceph/libceph 0x732e3799 osd_req_op_cls_response_data +EXPORT_SYMBOL net/ceph/libceph 0x76de1b0f ceph_copy_page_vector_to_user +EXPORT_SYMBOL net/ceph/libceph 0x77692acb ceph_msg_last_put +EXPORT_SYMBOL net/ceph/libceph 0x7c731532 ceph_monc_create_snapid +EXPORT_SYMBOL net/ceph/libceph 0x7da9935d osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x7dedd195 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x7df3aac2 ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x8017bb7d ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x80af5ff5 ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0x8f54bd11 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0x99de4738 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x99e36571 ceph_osdc_cleanup +EXPORT_SYMBOL net/ceph/libceph 0x9ac45348 ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0x9c7a895b ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0x9e69dc73 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0x9f534f4d ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xa40bd703 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0xae3515ba ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb2161666 ceph_osdc_unregister_linger_request +EXPORT_SYMBOL net/ceph/libceph 0xb446dc2b osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb6081d6d ceph_msgr_exit +EXPORT_SYMBOL net/ceph/libceph 0xb9d1b91b ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xbec6cee7 ceph_osdc_create_event +EXPORT_SYMBOL net/ceph/libceph 0xc4a80955 ceph_debugfs_cleanup +EXPORT_SYMBOL net/ceph/libceph 0xc55de604 ceph_parse_options +EXPORT_SYMBOL net/ceph/libceph 0xc9f82b38 ceph_msgr_init +EXPORT_SYMBOL net/ceph/libceph 0xcb50a624 ceph_parse_ips +EXPORT_SYMBOL net/ceph/libceph 0xce8f44a3 ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xcf40b7de ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0xd2c107bb ceph_flags_to_mode +EXPORT_SYMBOL net/ceph/libceph 0xd6c074b1 ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0xd97645a1 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0xdb25337c ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xdc6955e8 ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xdcf0b4ba ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0xddc002c2 ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xdf158d8a ceph_monc_got_mdsmap +EXPORT_SYMBOL net/ceph/libceph 0xe30ce5dd osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0xe573cbc7 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0xe82c9c32 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0xea0aaed9 ceph_osdc_writepages +EXPORT_SYMBOL net/ceph/libceph 0xebf1df11 ceph_osdc_put_event +EXPORT_SYMBOL net/ceph/libceph 0xefbdda56 ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0xf0049310 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0xf2378e7a ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0xfc695a61 ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xfd5c968c osd_req_op_extent_osd_data +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x6b367fca dccp_syn_ack_timeout +EXPORT_SYMBOL net/ieee802154/ieee802154 0x07bab108 ieee802154_nl_disassoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x11b55956 ieee802154_nl_disassoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x15782270 ieee802154_nl_scan_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x213ffdc0 wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0x48892fbc ieee802154_nl_start_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x5f58da2b ieee802154_nl_assoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x82d03d90 wpan_phy_alloc +EXPORT_SYMBOL net/ieee802154/ieee802154 0x8ee3ae93 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0xab1603f2 wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0xd56ab5b7 ieee802154_nl_assoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0xda2513c2 wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0xe3b98879 ieee802154_nl_beacon_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0xf60cb35f wpan_phy_free +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x2874dff1 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xc827e15e arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xf10d50be arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x0f37fda8 ipt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x2ff1a1e8 ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xcd67aa55 ipt_register_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x419b023e xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0x75a70599 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x1f1c0b18 ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x55c8db45 ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x009a5821 ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x1ac7ad9f ip6t_do_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xf2530425 ip6t_register_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x54cebd94 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/tunnel6 0xf542e148 xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x41fd3597 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x8acaeae9 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x16a8bcdf ircomm_disconnect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x33808359 ircomm_flow_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x60356af2 ircomm_close +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xaa440d40 ircomm_data_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xcfa507e3 ircomm_connect_response +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xd5ff7fc5 ircomm_open +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xf4363283 ircomm_control_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xfcc9825f ircomm_connect_request +EXPORT_SYMBOL net/irda/irda 0x0064e0ea hashbin_get_first +EXPORT_SYMBOL net/irda/irda 0x06a3ee58 irias_new_integer_value +EXPORT_SYMBOL net/irda/irda 0x07d3647c irlmp_register_service +EXPORT_SYMBOL net/irda/irda 0x0db565dc irlmp_open_lsap +EXPORT_SYMBOL net/irda/irda 0x13a11712 irlap_open +EXPORT_SYMBOL net/irda/irda 0x1e6cade0 irias_add_integer_attrib +EXPORT_SYMBOL net/irda/irda 0x2036ad06 irda_param_insert +EXPORT_SYMBOL net/irda/irda 0x261fdae8 irda_notify_init +EXPORT_SYMBOL net/irda/irda 0x26918420 irlmp_connect_request +EXPORT_SYMBOL net/irda/irda 0x33cbe2c6 proc_irda +EXPORT_SYMBOL net/irda/irda 0x3e56064f hashbin_new +EXPORT_SYMBOL net/irda/irda 0x448b8aaa irda_qos_bits_to_value +EXPORT_SYMBOL net/irda/irda 0x46c1c4a2 irlmp_unregister_service +EXPORT_SYMBOL net/irda/irda 0x50d74227 alloc_irdadev +EXPORT_SYMBOL net/irda/irda 0x56085cb8 irttp_open_tsap +EXPORT_SYMBOL net/irda/irda 0x5bd465b3 irttp_flow_request +EXPORT_SYMBOL net/irda/irda 0x601bda46 hashbin_remove +EXPORT_SYMBOL net/irda/irda 0x65c8e3d6 irttp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0x6b043eba irda_init_max_qos_capabilies +EXPORT_SYMBOL net/irda/irda 0x6b5fbcef hashbin_get_next +EXPORT_SYMBOL net/irda/irda 0x6b9c5369 irlmp_data_request +EXPORT_SYMBOL net/irda/irda 0x6e0ab3c7 irias_add_string_attrib +EXPORT_SYMBOL net/irda/irda 0x7042bc54 irlmp_register_client +EXPORT_SYMBOL net/irda/irda 0x7521499a async_wrap_skb +EXPORT_SYMBOL net/irda/irda 0x763e54a4 irlmp_unregister_client +EXPORT_SYMBOL net/irda/irda 0x7957f728 irlmp_update_client +EXPORT_SYMBOL net/irda/irda 0x85d88217 irias_delete_object +EXPORT_SYMBOL net/irda/irda 0x8c364ea5 irda_device_set_media_busy +EXPORT_SYMBOL net/irda/irda 0x91815586 irda_param_pack +EXPORT_SYMBOL net/irda/irda 0x98acade3 irttp_dup +EXPORT_SYMBOL net/irda/irda 0x993ad14b irda_param_extract_all +EXPORT_SYMBOL net/irda/irda 0x9ce8b9fb irttp_close_tsap +EXPORT_SYMBOL net/irda/irda 0xa1d41e58 hashbin_delete +EXPORT_SYMBOL net/irda/irda 0xa48f39bb irlmp_connect_response +EXPORT_SYMBOL net/irda/irda 0xa5261ef2 irlmp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0xa6c453fe irlap_close +EXPORT_SYMBOL net/irda/irda 0xa705a94e irlmp_close_lsap +EXPORT_SYMBOL net/irda/irda 0xaa557515 irias_new_object +EXPORT_SYMBOL net/irda/irda 0xb1e166e3 irttp_data_request +EXPORT_SYMBOL net/irda/irda 0xb58031b9 irttp_connect_request +EXPORT_SYMBOL net/irda/irda 0xb9394173 irias_delete_value +EXPORT_SYMBOL net/irda/irda 0xbad727dd iriap_open +EXPORT_SYMBOL net/irda/irda 0xbc0f5b2c iriap_close +EXPORT_SYMBOL net/irda/irda 0xbcd3ef13 irias_object_change_attribute +EXPORT_SYMBOL net/irda/irda 0xbe40ace9 irlmp_discovery_request +EXPORT_SYMBOL net/irda/irda 0xc68e43be irias_add_octseq_attrib +EXPORT_SYMBOL net/irda/irda 0xc9cd4587 irttp_udata_request +EXPORT_SYMBOL net/irda/irda 0xcead7dbb hashbin_find +EXPORT_SYMBOL net/irda/irda 0xd030705a async_unwrap_char +EXPORT_SYMBOL net/irda/irda 0xd2108314 hashbin_insert +EXPORT_SYMBOL net/irda/irda 0xd6deeaae irda_setup_dma +EXPORT_SYMBOL net/irda/irda 0xde4c6b3c irlmp_service_to_hint +EXPORT_SYMBOL net/irda/irda 0xe3463529 hashbin_lock_find +EXPORT_SYMBOL net/irda/irda 0xe3bde43e irias_insert_object +EXPORT_SYMBOL net/irda/irda 0xe487e80c irttp_connect_response +EXPORT_SYMBOL net/irda/irda 0xedd521c2 irlmp_get_discoveries +EXPORT_SYMBOL net/irda/irda 0xef2b533d iriap_getvaluebyclass_request +EXPORT_SYMBOL net/irda/irda 0xf0a694a1 irias_find_object +EXPORT_SYMBOL net/irda/irda 0xf5876b95 hashbin_remove_this +EXPORT_SYMBOL net/l2tp/l2tp_core 0x3c19b374 l2tp_recv_common +EXPORT_SYMBOL net/lapb/lapb 0x1cd9de12 lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0x1fea636c lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0x2067b415 lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0x33e05a5b lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0x5cc24a67 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0x6f63836f lapb_register +EXPORT_SYMBOL net/lapb/lapb 0xa28ca456 lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0xd0c4b5b5 lapb_unregister +EXPORT_SYMBOL net/llc/llc 0x12ebefad llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0x352af6c1 llc_sap_open +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0xa75ef9b5 llc_sap_find +EXPORT_SYMBOL net/llc/llc 0xc35e28f7 llc_sap_list_lock +EXPORT_SYMBOL net/llc/llc 0xc715adac llc_sap_close +EXPORT_SYMBOL net/llc/llc 0xd123f548 llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0xebd7b009 llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0xfb4545fc llc_add_pack +EXPORT_SYMBOL net/mac80211/mac80211 0x009376f2 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x04919e0e ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0x070778ed ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x095b81c0 ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x0a3c9b6d ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0x1251b388 ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x1e0a9550 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x21a2ae71 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0x2438192b ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x2468dda7 ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x2799c6ed ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0x2ee8ee48 ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0x30863b71 ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x33d4a3e1 __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x3437a9d7 ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x39d57556 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x3b216a83 ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x3d10935a ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0x3de5befe ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0x3ed96616 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x45182a53 ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0x4f82d019 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x53d04b98 __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x545951cd ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x55d289c5 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x5b468170 ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x5ba05ad2 ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0x5c28cca5 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x659bc658 ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x67a07ee5 ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x6ada228f ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x6b63fb2d __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x6bdb6551 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x6ebe528f ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x71cf513c ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x72090dfe ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x76f81a7f ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x810da650 ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x87c2725e ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x89b150c4 rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x8b36f67d ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0x8eb05f20 ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0x96852c5a wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x99c6ec36 ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0x9ad38dfb ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0x9c5e6334 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0x9d6099ca __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xa1fc36c4 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xaa157485 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0xadd7f4b7 ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xaf0ac6ff ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xb8853705 ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0xc529f9b1 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0xc7e9782e ieee80211_get_key_tx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xcccafe99 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xd072d01e ieee80211_alloc_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xd510b5aa rate_control_send_low +EXPORT_SYMBOL net/mac80211/mac80211 0xd556c31d ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0xd5c0b8e4 ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xd890e9b7 ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xd8b887d9 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xdc77b951 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0xddb47d52 ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xe6b541a7 ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xead4de5d ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0xeaf17aa9 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0xf032ef2e ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0xf395de03 ieee80211_aes_cmac_calculate_k1_k2 +EXPORT_SYMBOL net/mac80211/mac80211 0xf6952e0d ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0xf6db15b5 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xf7386253 ieee80211_rx +EXPORT_SYMBOL net/mac80211/mac80211 0xf802c750 ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xff7390d6 ieee80211_scan_completed +EXPORT_SYMBOL net/mac802154/mac802154 0x202c2fe9 ieee802154_unregister_device +EXPORT_SYMBOL net/mac802154/mac802154 0x3b33f989 ieee802154_register_device +EXPORT_SYMBOL net/mac802154/mac802154 0x40fa8a9d ieee802154_alloc_device +EXPORT_SYMBOL net/mac802154/mac802154 0xa757dcfb ieee802154_free_device +EXPORT_SYMBOL net/mac802154/mac802154 0xc4d93baf ieee802154_rx_irqsafe +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x12520d86 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x1a0bbc78 ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x205f2a01 register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x2389f5a1 ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x2cadaf2c ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x57c310a0 ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x78b162fd register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x8598b48f ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x877a6c7e ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xb2091e7f unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd09c70e0 ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd5d9f311 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xda468f70 unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xfe5cb056 register_ip_vs_app +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x0d6106b6 __nf_ct_ext_destroy +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x840def3b nf_conntrack_untracked +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xfaf879b8 __nf_ct_ext_add_length +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0x827cc6a1 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_conntrack_proto_gre 0xaa6aa786 nf_ct_gre_keymap_flush +EXPORT_SYMBOL net/netfilter/nf_nat 0x6b482a6b nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0x96eedbb4 nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0xb8d2f664 nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0xbdb5f71f __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xd65c2497 nf_nat_used_tuple +EXPORT_SYMBOL net/netfilter/nf_nat 0xe7426fc0 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/x_tables 0x028f93ce xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0x08c473b7 xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0x0eb3ea76 xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x27d0d6d7 xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x2b3a6e98 xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0x48421525 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0x6b1500c6 xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x71c88914 xt_find_target +EXPORT_SYMBOL net/netfilter/x_tables 0x879fc219 xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0xb28f5ef1 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xbf795ac1 xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0xcaedf084 xt_register_targets +EXPORT_SYMBOL net/nfc/hci/hci 0x0719a65d nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0x12e859cf nfc_hci_send_response +EXPORT_SYMBOL net/nfc/hci/hci 0x24794d14 nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0x3f5ce358 nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0x41ef8f75 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0x43028a27 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x58131c86 nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0x5973ef9f nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0x5eed6991 nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0x64a0b0af nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0x72911cee nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x969e9c80 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0xa3dbe817 nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0xb17ab8d8 nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xb824c445 nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xbca0b4fd nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xc2ed93de nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xcf2fdf3b nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0xd2579b53 nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0xe1724611 nfc_hci_send_event +EXPORT_SYMBOL net/nfc/nci/nci 0x0d1367df nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x6123b49e nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0x69baa9c3 nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0x9e74111e nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0xb42e2ce7 nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nfc 0x14cab3ff nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0x1648e04f nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0x19e9e046 nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x25502116 nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0x28dbcb7a nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0x36c570fc nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x3af2dd9b nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0x4392ec8e nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0x55d1123a nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0x98545c8f nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0xa09695d4 nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0xa34a6d98 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0xa9d6792a nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0xb8a88636 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0xd2eda185 nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0xd3de2b7c nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0xec0eaf09 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0xf14d2f35 nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0xf8373bc7 nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xf89c02e8 nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc_digital 0x521a33bc nfc_digital_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xb119c416 nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xc590d8fb nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xc8cfb6ab nfc_digital_allocate_device +EXPORT_SYMBOL net/phonet/phonet 0x04a65331 phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0x492044e9 pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0x5e7e92d6 phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0xb34e9f26 phonet_proto_register +EXPORT_SYMBOL net/phonet/phonet 0xbd31bacb phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0xc0d4bf7a pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0xe9dbac47 pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0xfb984136 pn_sock_hash +EXPORT_SYMBOL net/rds/rds 0x5031b8c5 rds_str_array +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x0c0f1bf3 rxrpc_kernel_is_data_last +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x23bfa124 rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x260a1719 rxrpc_kernel_data_delivered +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x462841bc rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x4fdd8797 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x5333dd26 rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x6207889d rxrpc_kernel_free_skb +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x97725676 rxrpc_kernel_intercept_rx_messages +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x9c636319 rxrpc_kernel_accept_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xa057de23 rxrpc_kernel_get_abort_code +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xb81ee54a rxrpc_kernel_reject_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xf10e8d20 rxrpc_kernel_get_error_number +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xf35c5a14 rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xf9057ed6 rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xfa0514cd rxrpc_kernel_begin_call +EXPORT_SYMBOL net/sctp/sctp 0xd127da38 sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x13d5cbd3 gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x2f54c12f gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x479d8f99 gss_mech_get +EXPORT_SYMBOL net/sunrpc/sunrpc 0x295666db svc_pool_stats_open +EXPORT_SYMBOL net/wimax/wimax 0x44768218 wimax_reset +EXPORT_SYMBOL net/wimax/wimax 0x76f26ff5 wimax_rfkill +EXPORT_SYMBOL net/wireless/cfg80211 0x09ae1cc5 cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0x09c64fbd ieee80211_frequency_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x1317fd97 cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x179d903a cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x19e03378 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0x1f5fb529 cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0x1f9551c2 wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x203c6b0d wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x23f03ab3 cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x269d429b cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x28f62986 cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x2a264c12 cfg80211_inform_bss_width_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x2ac7064a cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x2c3da59e wiphy_new +EXPORT_SYMBOL net/wireless/cfg80211 0x2e0a48c5 cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0x2f817ce2 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x305c3082 regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0x32856639 __ieee80211_get_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x3d10421a cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x3eb88b2d cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x406a8302 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x4a04e2ca freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0x4ba80571 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0x4c3b5878 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x4c40b2fb ieee80211_bss_get_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x4f4cb6ed cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0x52e00c23 cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x549ae50f ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x5587ce75 cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x560bf854 cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0x5826f185 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0x5934690b cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x594278d0 cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x653da878 cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x67121def cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x67e28dce cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6d6cb9ad ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x742cce07 wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0x78e1a580 cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7fe1a403 cfg80211_find_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x8023dd5a cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0x81eb3c22 cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x86188655 wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0x91800313 cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x951bcc2e cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0x96fd78f4 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0x982e6b6d ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0x9b2344a7 cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x9f54884e cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xa1425906 ieee80211_channel_to_frequency +EXPORT_SYMBOL net/wireless/cfg80211 0xa197b1ff ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xa60792cd cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xa9b482c7 cfg80211_connect_result +EXPORT_SYMBOL net/wireless/cfg80211 0xb0abc58c cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0xb199c455 cfg80211_inform_bss_width +EXPORT_SYMBOL net/wireless/cfg80211 0xb337c294 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0xb4c35cf4 cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0xbd96d708 cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0xc15c8611 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0xc423cd2a cfg80211_del_sta +EXPORT_SYMBOL net/wireless/cfg80211 0xc4c1b129 cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0xc63f1b81 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0xc69cf6bc ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0xc6bfbe37 cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xcbe1419b cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xcdb3ea2b cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0xcf618a57 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0xcfe3849f cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0xd225f137 ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xdfb6b9db cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0xeb8f3867 ieee80211_data_from_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0xecc61a17 cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0xedc1cf75 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0xee42db3c cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xef3e0858 ieee80211_data_to_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0xf2091116 cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xf6697ced cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xf909c052 cfg80211_rx_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xfacf4dff wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0xfced5bcb cfg80211_report_obss_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xfeac1c8c cfg80211_roamed_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xfed4d591 cfg80211_find_vendor_ie +EXPORT_SYMBOL net/wireless/lib80211 0x13a626c7 lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x160d8434 lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0x2d0f99e5 print_ssid +EXPORT_SYMBOL net/wireless/lib80211 0x6d75499b lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x9722b06f lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0xcaadf5b9 lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0xe2f723c7 lib80211_get_crypto_ops +EXPORT_SYMBOL sound/ac97_bus 0x197aaf7b ac97_bus_type +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3243c724 snd_seq_kernel_client_enqueue_blocking +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6c1f1cf8 snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb121e390 snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xcac0a3be snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe2ad37e8 snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x0f0d74c3 snd_seq_device_new +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x3a57f235 snd_seq_autoload_unlock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xa88fbc44 snd_seq_device_register_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xb90668b2 snd_seq_autoload_lock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xc622fb29 snd_seq_device_unregister_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf0a1fdb3 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x072d978b snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x13a17752 snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x2eed26bf snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x4d5ca523 snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x592f6e9b snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xd7c7afcc snd_midi_event_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xe60fb228 snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xecbde43c snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0xbef4e920 snd_virmidi_new +EXPORT_SYMBOL sound/core/snd 0x0192d5b1 snd_card_disconnect +EXPORT_SYMBOL sound/core/snd 0x10b38534 snd_ctl_remove_id +EXPORT_SYMBOL sound/core/snd 0x18e1683f snd_dma_program +EXPORT_SYMBOL sound/core/snd 0x191e88cf snd_dma_pointer +EXPORT_SYMBOL sound/core/snd 0x1db483f6 snd_ctl_boolean_stereo_info +EXPORT_SYMBOL sound/core/snd 0x1dda71eb snd_card_proc_new +EXPORT_SYMBOL sound/core/snd 0x20c919cb _snd_ctl_add_slave +EXPORT_SYMBOL sound/core/snd 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL sound/core/snd 0x2551d5d1 snd_add_device_sysfs_file +EXPORT_SYMBOL sound/core/snd 0x29ce7d42 snd_ctl_new1 +EXPORT_SYMBOL sound/core/snd 0x2ae3deaa release_and_free_resource +EXPORT_SYMBOL sound/core/snd 0x2c7a00d0 snd_card_file_remove +EXPORT_SYMBOL sound/core/snd 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL sound/core/snd 0x3f5581a4 snd_card_free +EXPORT_SYMBOL sound/core/snd 0x42fdf539 snd_card_set_id +EXPORT_SYMBOL sound/core/snd 0x4717d345 snd_jack_report +EXPORT_SYMBOL sound/core/snd 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL sound/core/snd 0x4b015768 snd_iprintf +EXPORT_SYMBOL sound/core/snd 0x4c6503db snd_cards +EXPORT_SYMBOL sound/core/snd 0x51da1e43 snd_ctl_boolean_mono_info +EXPORT_SYMBOL sound/core/snd 0x5a5b7253 snd_device_new +EXPORT_SYMBOL sound/core/snd 0x5d223b64 snd_ctl_add +EXPORT_SYMBOL sound/core/snd 0x602c96f0 copy_to_user_fromio +EXPORT_SYMBOL sound/core/snd 0x62a8584f snd_component_add +EXPORT_SYMBOL sound/core/snd 0x638838d9 snd_info_free_entry +EXPORT_SYMBOL sound/core/snd 0x644cea2b snd_pci_quirk_lookup +EXPORT_SYMBOL sound/core/snd 0x657b4e0e snd_ctl_remove +EXPORT_SYMBOL sound/core/snd 0x65e4a4a2 snd_power_wait +EXPORT_SYMBOL sound/core/snd 0x687ac69f snd_card_create +EXPORT_SYMBOL sound/core/snd 0x68cb1572 snd_ctl_rename_id +EXPORT_SYMBOL sound/core/snd 0x6d796a72 snd_register_device_for_dev +EXPORT_SYMBOL sound/core/snd 0x6fd1e54b snd_seq_root +EXPORT_SYMBOL sound/core/snd 0x70c15ac1 snd_dma_disable +EXPORT_SYMBOL sound/core/snd 0x81b69e41 snd_ctl_enum_info +EXPORT_SYMBOL sound/core/snd 0x82f065d9 snd_ctl_find_numid +EXPORT_SYMBOL sound/core/snd 0x8393a348 snd_info_create_card_entry +EXPORT_SYMBOL sound/core/snd 0x89f36d9e snd_card_free_when_closed +EXPORT_SYMBOL sound/core/snd 0x8f595b11 snd_major +EXPORT_SYMBOL sound/core/snd 0x98a9de57 snd_card_file_add +EXPORT_SYMBOL sound/core/snd 0x9b9195c9 snd_card_unref +EXPORT_SYMBOL sound/core/snd 0x9d34a7e6 snd_ctl_free_one +EXPORT_SYMBOL sound/core/snd 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL sound/core/snd 0xa0fd2427 snd_pci_quirk_lookup_id +EXPORT_SYMBOL sound/core/snd 0xa8365ca7 snd_jack_set_key +EXPORT_SYMBOL sound/core/snd 0xaac8774e snd_info_create_module_entry +EXPORT_SYMBOL sound/core/snd 0xac9ad275 snd_jack_set_parent +EXPORT_SYMBOL sound/core/snd 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL sound/core/snd 0xb7cc3dce snd_ctl_notify +EXPORT_SYMBOL sound/core/snd 0xbccc4e18 snd_device_free +EXPORT_SYMBOL sound/core/snd 0xcaff16a6 snd_unregister_device +EXPORT_SYMBOL sound/core/snd 0xcc7d8990 snd_info_register +EXPORT_SYMBOL sound/core/snd 0xcd3ed03b snd_ctl_register_ioctl +EXPORT_SYMBOL sound/core/snd 0xce3ca308 copy_from_user_toio +EXPORT_SYMBOL sound/core/snd 0xd1dcd41b snd_device_register +EXPORT_SYMBOL sound/core/snd 0xda6b6b9b snd_ctl_unregister_ioctl +EXPORT_SYMBOL sound/core/snd 0xdf19d64c snd_ctl_find_id +EXPORT_SYMBOL sound/core/snd 0xea7e051d snd_card_register +EXPORT_SYMBOL sound/core/snd 0xf51af63b snd_ctl_make_virtual_master +EXPORT_SYMBOL sound/core/snd 0xf88bb9e0 snd_ctl_replace +EXPORT_SYMBOL sound/core/snd 0xff2214e4 snd_jack_new +EXPORT_SYMBOL sound/core/snd-hwdep 0x527a2746 snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-page-alloc 0x2531b407 snd_dma_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x3b91f3af snd_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x43a2c5bb snd_dma_get_reserved_buf +EXPORT_SYMBOL sound/core/snd-page-alloc 0x5c5067cd snd_dma_reserve_buf +EXPORT_SYMBOL sound/core/snd-page-alloc 0xade88e76 snd_malloc_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0xaed852cd snd_dma_alloc_pages_fallback +EXPORT_SYMBOL sound/core/snd-page-alloc 0xe0d3c0c8 snd_dma_alloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x024a07a8 snd_pcm_period_elapsed +EXPORT_SYMBOL sound/core/snd-pcm 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL sound/core/snd-pcm 0x04cda566 snd_interval_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x0b68a7c9 snd_pcm_debug_name +EXPORT_SYMBOL sound/core/snd-pcm 0x0b9aa0c6 snd_pcm_hw_param_last +EXPORT_SYMBOL sound/core/snd-pcm 0x10b1b6a9 snd_pcm_hw_rule_add +EXPORT_SYMBOL sound/core/snd-pcm 0x12d460eb snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x13a29b13 snd_pcm_hw_constraint_integer +EXPORT_SYMBOL sound/core/snd-pcm 0x17daccfc snd_pcm_hw_constraint_list +EXPORT_SYMBOL sound/core/snd-pcm 0x1985d861 snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL sound/core/snd-pcm 0x1cdad8a5 snd_pcm_kernel_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL sound/core/snd-pcm 0x1e93f9c9 snd_pcm_stop +EXPORT_SYMBOL sound/core/snd-pcm 0x29a2eb82 snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL sound/core/snd-pcm 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x388984ea snd_pcm_lib_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL sound/core/snd-pcm 0x4543b2a2 snd_pcm_hw_constraint_step +EXPORT_SYMBOL sound/core/snd-pcm 0x4d9b6d35 snd_pcm_format_size +EXPORT_SYMBOL sound/core/snd-pcm 0x4dd90109 snd_pcm_lib_readv +EXPORT_SYMBOL sound/core/snd-pcm 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL sound/core/snd-pcm 0x5612380d snd_pcm_suspend +EXPORT_SYMBOL sound/core/snd-pcm 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL sound/core/snd-pcm 0x6140ec84 snd_pcm_lib_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL sound/core/snd-pcm 0x66ebc962 snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL sound/core/snd-pcm 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL sound/core/snd-pcm 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL sound/core/snd-pcm 0x7d206727 snd_pcm_lib_mmap_iomem +EXPORT_SYMBOL sound/core/snd-pcm 0x8331e19c snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x87003037 snd_pcm_suspend_all +EXPORT_SYMBOL sound/core/snd-pcm 0x87eb3b92 snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x94098ff8 snd_interval_list +EXPORT_SYMBOL sound/core/snd-pcm 0x94b517fc snd_pcm_hw_param_first +EXPORT_SYMBOL sound/core/snd-pcm 0x9a119c43 snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL sound/core/snd-pcm 0x9a1fd0c3 snd_pcm_lib_read +EXPORT_SYMBOL sound/core/snd-pcm 0x9fdd5475 snd_pcm_new +EXPORT_SYMBOL sound/core/snd-pcm 0xa0e66a81 snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL sound/core/snd-pcm 0xa2f315e1 snd_pcm_hw_rule_noresample +EXPORT_SYMBOL sound/core/snd-pcm 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL sound/core/snd-pcm 0xad1eca8f snd_pcm_open_substream +EXPORT_SYMBOL sound/core/snd-pcm 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL sound/core/snd-pcm 0xba4d8e13 snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL sound/core/snd-pcm 0xc1d61ca3 snd_pcm_mmap_data +EXPORT_SYMBOL sound/core/snd-pcm 0xc5225a29 snd_pcm_lib_writev +EXPORT_SYMBOL sound/core/snd-pcm 0xc6ead00d snd_pcm_set_sync +EXPORT_SYMBOL sound/core/snd-pcm 0xd2ba5728 _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0xd5fb21a2 snd_pcm_link_rwlock +EXPORT_SYMBOL sound/core/snd-pcm 0xd9524061 snd_pcm_limit_hw_rates +EXPORT_SYMBOL sound/core/snd-pcm 0xd9976e2e snd_pcm_new_internal +EXPORT_SYMBOL sound/core/snd-pcm 0xdf7f901a snd_pcm_lib_write +EXPORT_SYMBOL sound/core/snd-pcm 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL sound/core/snd-pcm 0xe8a54b56 snd_pcm_notify +EXPORT_SYMBOL sound/core/snd-pcm 0xebc270ce snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0xf074da13 snd_pcm_set_ops +EXPORT_SYMBOL sound/core/snd-pcm 0xf3797152 snd_interval_ratnum +EXPORT_SYMBOL sound/core/snd-pcm 0xf408321a snd_pcm_release_substream +EXPORT_SYMBOL sound/core/snd-pcm 0xf54041b2 snd_pcm_hw_refine +EXPORT_SYMBOL sound/core/snd-pcm 0xf5bb7bae snd_pcm_lib_malloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xfceedb74 snd_pcm_new_stream +EXPORT_SYMBOL sound/core/snd-pcm 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL sound/core/snd-rawmidi 0x07ce2a02 snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0a47b997 snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0b7f7cc2 snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-rawmidi 0x14cf665c snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x51bdea99 snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0x537fb8ed snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0x695fea83 snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0x786cc0b4 snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0x80c6abc1 snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x86772c4b snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0x8d2fd43a snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0xcbfedac4 snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0xd329653b snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0xdc155da3 snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0xdd9e959a snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-rawmidi 0xef8efcc4 snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf3f8d2f6 snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-timer 0x046fe7ec snd_timer_global_new +EXPORT_SYMBOL sound/core/snd-timer 0x0e47e4c3 snd_timer_start +EXPORT_SYMBOL sound/core/snd-timer 0x0f19da1f snd_timer_interrupt +EXPORT_SYMBOL sound/core/snd-timer 0x1459d7d1 snd_timer_global_register +EXPORT_SYMBOL sound/core/snd-timer 0x56559dd7 snd_timer_resolution +EXPORT_SYMBOL sound/core/snd-timer 0x5cdd6cf7 snd_timer_close +EXPORT_SYMBOL sound/core/snd-timer 0x6b2ee81e snd_timer_global_free +EXPORT_SYMBOL sound/core/snd-timer 0x8690ebb5 snd_timer_notify +EXPORT_SYMBOL sound/core/snd-timer 0x89811489 snd_timer_new +EXPORT_SYMBOL sound/core/snd-timer 0xabece495 snd_timer_open +EXPORT_SYMBOL sound/core/snd-timer 0xafafb024 snd_timer_pause +EXPORT_SYMBOL sound/core/snd-timer 0xe6e63686 snd_timer_stop +EXPORT_SYMBOL sound/core/snd-timer 0xfc646bcd snd_timer_continue +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x8b9af02c snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x259f02d9 snd_opl3_create +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x62cb129a snd_opl3_init +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x64ab97fe snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x6ea94634 snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x89576054 snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xb749c0f4 snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xd9810aba snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xe1afa66a snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xfaa86161 snd_opl3_reset +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x4b563667 snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x75087300 snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x80d46bbb snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xa35ae238 snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xb227448b snd_vx_dsp_boot +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xc8e74404 snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xee3443d6 snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf4d623d9 snd_vx_resume +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xfe068596 snd_vx_create +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x00cca7d6 amdtp_out_stream_set_pcm_format +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x01b25bae iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x1576835a amdtp_out_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x179c3027 fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x1e1052b0 fw_iso_resources_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x216ef40f snd_fw_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x27c0bd8f amdtp_out_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x2f1b29ec cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x30ac9625 fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x3aafe8f1 cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x44fd7d99 iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5088cd6d fw_iso_resources_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x57ad82a8 amdtp_out_stream_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5edb22c5 fcp_avc_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x65900226 amdtp_out_stream_stop +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x94e85c6f amdtp_out_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x9a4e4c24 amdtp_out_stream_pcm_pointer +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xb21e0c0f cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xb22c3f83 amdtp_out_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd098ac33 fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd3620ac1 amdtp_out_stream_start +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd42fc4bb amdtp_out_stream_set_parameters +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xdb2e85ab amdtp_out_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf02a0039 cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf886062f fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xfc2f4b79 cmp_connection_destroy +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x16e9b09b snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x245eda7c snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x395fac3e snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xa00db15f snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xaf273ae0 snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xcce4bdbd snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x2ff91112 snd_ak4117_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x35e2670e snd_ak4117_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x5ba88798 snd_ak4117_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xc44943c0 snd_ak4117_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xdbca7c86 snd_ak4117_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xe0aa3839 snd_ak4117_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x3ee411ad snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x7bafb9d2 snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xd3162ab1 snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xd900eff4 snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x473b063f snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x9286870b snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x662cde39 snd_cs8427_iec958_active +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x6c32cc8c snd_cs8427_create +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x82f07c5a snd_cs8427_reg_write +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xe4b2e3e2 snd_cs8427_iec958_pcm +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xf68e590e snd_cs8427_iec958_build +EXPORT_SYMBOL sound/i2c/snd-i2c 0x232ae4e6 snd_i2c_bus_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x27cb862c snd_i2c_sendbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x2f5c484b snd_i2c_probeaddr +EXPORT_SYMBOL sound/i2c/snd-i2c 0x6fd31578 snd_i2c_device_free +EXPORT_SYMBOL sound/i2c/snd-i2c 0xc7c87669 snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0xe1db1c68 snd_i2c_readbytes +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x10c80094 snd_sbmixer_resume +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x128ba97d snd_sbmixer_read +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x3b776b82 snd_sbdsp_command +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x5c26e5f4 snd_sbdsp_get_byte +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x775f3040 snd_sbdsp_create +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x7b8b9993 snd_sbmixer_add_ctl +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x8c81abce snd_sbdsp_reset +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x97a8c2ad snd_sbmixer_suspend +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xdbd22cc4 snd_sbmixer_write +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xe670214e snd_sbmixer_new +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x8665071d snd_sb16dsp_get_pcm_ops +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x929ad278 snd_sb16dsp_pcm +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xe0b3f690 snd_sb16dsp_interrupt +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xf2861cd0 snd_sb16dsp_configure +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x02129c53 snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x04ee3d34 snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x0b383a3d snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x0c51b47c snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x13dfc3ec snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x1e34907a snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x2d1a8096 snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x2fe30b67 snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x32e56d15 snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x5683c43e snd_ac97_resume +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x59f232d9 snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x71371f98 snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x807ae6a5 snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xab3f528d snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xbe330183 snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xcf5a2eac snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xd9c717bc snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x045d4a83 snd_emu10k1_synth_copy_from_user +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x3322f89d snd_emu10k1_voice_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x3a433def snd_emu10k1_memblk_map +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x42374e2f snd_emu10k1_ptr_read +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x8a122d11 snd_emu10k1_voice_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xa00fdecc snd_emu10k1_synth_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xa6c8b923 snd_emu10k1_ptr_write +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xe1bc0ed8 snd_emu10k1_synth_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xed672210 snd_emu10k1_synth_bzero +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x0ab7ae9c snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x56d8b114 snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xe2fc7b81 snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x07863368 oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x1eb597fa oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x24b9278e oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x29d3154c oxygen_write8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x342d02e1 oxygen_write32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x559fe062 oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x6133390a oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x66a967fa oxygen_pci_probe +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x8d3077dd oxygen_read8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x9ffb80d8 oxygen_write_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xa7170262 oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xbf4c2add oxygen_pci_remove +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xce01a200 oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xd49f4764 oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xde3ca125 oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xebb49058 oxygen_write16_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xeeabb11e oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xf09b9df2 oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xf7c37768 oxygen_write_i2c +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x0f2944d7 snd_trident_alloc_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x12f29646 snd_trident_stop_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x1d454c2e snd_trident_write_voice_regs +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x79fe487b snd_trident_start_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xb62c6341 snd_trident_free_voice +EXPORT_SYMBOL sound/soc/fsl/snd-soc-fsl-utils 0x389625d4 fsl_asoc_get_dma_channel +EXPORT_SYMBOL sound/soundcore 0xa0b3c5fd sound_class +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x3523644a snd_emux_new +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x39c930ba snd_emux_terminate_all +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x655cb202 snd_sf_linear_to_log +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x80f0c2a8 snd_emux_free +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x87fd529c snd_emux_unlock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x9189e0ef snd_emux_lock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xd4ac46ec snd_emux_register +EXPORT_SYMBOL sound/synth/snd-util-mem 0x066e1922 snd_util_mem_avail +EXPORT_SYMBOL sound/synth/snd-util-mem 0x07ffeddf __snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x12d17f88 snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x19418f76 __snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x6f61b8bd snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0xde62793d snd_util_memhdr_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0xded75178 __snd_util_memblk_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0xded8a5a8 snd_util_memhdr_free +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xff0473d7 snd_usbmidi_create +EXPORT_SYMBOL vmlinux 0x00000000 __symbol_put +EXPORT_SYMBOL vmlinux 0x00000000 current_fs_time +EXPORT_SYMBOL vmlinux 0x00000000 d_tmpfile +EXPORT_SYMBOL vmlinux 0x00000000 do_sync_read +EXPORT_SYMBOL vmlinux 0x00000000 filp_close +EXPORT_SYMBOL vmlinux 0x00000000 finish_open +EXPORT_SYMBOL vmlinux 0x00000000 generic_getxattr +EXPORT_SYMBOL vmlinux 0x00000000 generic_write_sync +EXPORT_SYMBOL vmlinux 0x00000000 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x00000000 in_group_p +EXPORT_SYMBOL vmlinux 0x00000000 inode_add_bytes +EXPORT_SYMBOL vmlinux 0x00000000 iov_shorten +EXPORT_SYMBOL vmlinux 0x00000000 iterate_fd +EXPORT_SYMBOL vmlinux 0x00000000 ns_capable +EXPORT_SYMBOL vmlinux 0x00000000 path_is_under +EXPORT_SYMBOL vmlinux 0x00000000 register_exec_domain +EXPORT_SYMBOL vmlinux 0x00000000 schedule_timeout +EXPORT_SYMBOL vmlinux 0x00000000 sock_register +EXPORT_SYMBOL vmlinux 0x00000000 sys_close +EXPORT_SYMBOL vmlinux 0x00000000 task_nice +EXPORT_SYMBOL vmlinux 0x00000000 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x00000000 vm_brk +EXPORT_SYMBOL vmlinux 0x000513fb udp_del_offload +EXPORT_SYMBOL vmlinux 0x00097317 __remove_inode_hash +EXPORT_SYMBOL vmlinux 0x002203ff qman_volatile_dequeue +EXPORT_SYMBOL vmlinux 0x005758e0 fasync_helper +EXPORT_SYMBOL vmlinux 0x005a615e agp_free_page_array +EXPORT_SYMBOL vmlinux 0x00654a32 __mmc_claim_host +EXPORT_SYMBOL vmlinux 0x00801678 flush_scheduled_work +EXPORT_SYMBOL vmlinux 0x00975109 pme_ctx_is_dead +EXPORT_SYMBOL vmlinux 0x00a7267e bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x00cf4a7f of_get_parent +EXPORT_SYMBOL vmlinux 0x00d66392 tcp_prot +EXPORT_SYMBOL vmlinux 0x00e8097b csum_partial_copy_fromiovecend +EXPORT_SYMBOL vmlinux 0x00ecf17a buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x010c026c mmc_fixup_device +EXPORT_SYMBOL vmlinux 0x01139ffc max_mapnr +EXPORT_SYMBOL vmlinux 0x014db919 blk_peek_request +EXPORT_SYMBOL vmlinux 0x0155db1c locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x0169c476 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0x017c8f36 skb_free_datagram +EXPORT_SYMBOL vmlinux 0x017fedcc tcf_register_action +EXPORT_SYMBOL vmlinux 0x01902adf netpoll_trap +EXPORT_SYMBOL vmlinux 0x01985904 serio_reconnect +EXPORT_SYMBOL vmlinux 0x019e7765 __init_rwsem +EXPORT_SYMBOL vmlinux 0x01b99318 d_obtain_alias +EXPORT_SYMBOL vmlinux 0x01c8e84d ida_simple_get +EXPORT_SYMBOL vmlinux 0x01caed0a init_net +EXPORT_SYMBOL vmlinux 0x01d07f18 vlan_vid_del +EXPORT_SYMBOL vmlinux 0x01f5558e dev_get_drvdata +EXPORT_SYMBOL vmlinux 0x01fbee3e unmap_mapping_range +EXPORT_SYMBOL vmlinux 0x020c0271 key_task_permission +EXPORT_SYMBOL vmlinux 0x02649054 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x027179c8 pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x02785db3 alloc_pci_dev +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a6ce5a crc16_table +EXPORT_SYMBOL vmlinux 0x02eb2dc4 generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x02ec9417 tty_unregister_driver +EXPORT_SYMBOL vmlinux 0x02ee26c1 free_pages_exact +EXPORT_SYMBOL vmlinux 0x030fe252 blk_mq_run_queues +EXPORT_SYMBOL vmlinux 0x0310b622 proc_create_data +EXPORT_SYMBOL vmlinux 0x032b35e3 pci_fixup_device +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x0349f8e8 key_revoke +EXPORT_SYMBOL vmlinux 0x03592ea0 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x0359e69f agp_generic_free_by_type +EXPORT_SYMBOL vmlinux 0x03626b68 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x0385efe0 bitmap_start_sync +EXPORT_SYMBOL vmlinux 0x039a275c generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0x03af2c83 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0x03b0d0b2 bio_reset +EXPORT_SYMBOL vmlinux 0x03b1eb6b __devm_release_region +EXPORT_SYMBOL vmlinux 0x03bb3a72 __module_put_and_exit +EXPORT_SYMBOL vmlinux 0x03c06156 bitmap_fold +EXPORT_SYMBOL vmlinux 0x03c63aab netlink_set_err +EXPORT_SYMBOL vmlinux 0x03cc0ed2 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0x03f3ad5d xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x04074f48 ioremap +EXPORT_SYMBOL vmlinux 0x041d1790 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x0422fe4a inet_csk_timer_bug_msg +EXPORT_SYMBOL vmlinux 0x044402ab sk_filter +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x04771a30 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0x048346e1 simple_release_fs +EXPORT_SYMBOL vmlinux 0x04855055 audit_log_start +EXPORT_SYMBOL vmlinux 0x0487f831 fb_find_best_display +EXPORT_SYMBOL vmlinux 0x048c448c dquot_file_open +EXPORT_SYMBOL vmlinux 0x049a7849 inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0x04ca7ff1 __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x04d94570 neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04fec57e mpage_writepages +EXPORT_SYMBOL vmlinux 0x05123d1a ilookup5 +EXPORT_SYMBOL vmlinux 0x0514cdea qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0x0517fcdb xfrm6_rcv +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x052ff49d bio_flush_dcache_pages +EXPORT_SYMBOL vmlinux 0x0530dede _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x0534a815 bdev_stack_limits +EXPORT_SYMBOL vmlinux 0x054434d6 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x0548f648 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0x05596e89 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0x057ce975 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0x058202bb pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0x0593a99b init_timer_key +EXPORT_SYMBOL vmlinux 0x0594d03f dev_uc_flush +EXPORT_SYMBOL vmlinux 0x0598faf6 install_exec_creds +EXPORT_SYMBOL vmlinux 0x05a514a1 _insl_ns +EXPORT_SYMBOL vmlinux 0x05a52c93 skb_copy_datagram_const_iovec +EXPORT_SYMBOL vmlinux 0x05af3ebd send_sig +EXPORT_SYMBOL vmlinux 0x05c7c35e qman_get_null_cb +EXPORT_SYMBOL vmlinux 0x05d4776d unlock_new_inode +EXPORT_SYMBOL vmlinux 0x05d72996 uart_remove_one_port +EXPORT_SYMBOL vmlinux 0x061118be remove_proc_subtree +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x06244dcd add_disk +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x0645932f textsearch_register +EXPORT_SYMBOL vmlinux 0x06489d52 bman_rcr_is_empty +EXPORT_SYMBOL vmlinux 0x066e14fc sync_inode_metadata +EXPORT_SYMBOL vmlinux 0x0675c7eb atomic64_cmpxchg +EXPORT_SYMBOL vmlinux 0x067d8d35 security_release_secctx +EXPORT_SYMBOL vmlinux 0x0687cdc5 find_get_pages_contig +EXPORT_SYMBOL vmlinux 0x068809f6 iterate_dir +EXPORT_SYMBOL vmlinux 0x068cac2f blk_queue_init_tags +EXPORT_SYMBOL vmlinux 0x069660bb netpoll_rx_enable +EXPORT_SYMBOL vmlinux 0x06bbb24a mempool_resize +EXPORT_SYMBOL vmlinux 0x06d02dce free_netdev +EXPORT_SYMBOL vmlinux 0x06d167d1 napi_get_frags +EXPORT_SYMBOL vmlinux 0x06d8c395 iunique +EXPORT_SYMBOL vmlinux 0x06d977db dm_register_target +EXPORT_SYMBOL vmlinux 0x06fe3b14 default_grn +EXPORT_SYMBOL vmlinux 0x06ff8886 flock_lock_file_wait +EXPORT_SYMBOL vmlinux 0x0727c4f3 iowrite8 +EXPORT_SYMBOL vmlinux 0x072ad866 pci_disable_obff +EXPORT_SYMBOL vmlinux 0x07348f7b generic_file_mmap +EXPORT_SYMBOL vmlinux 0x074dbe91 sk_prot_clear_portaddr_nulls +EXPORT_SYMBOL vmlinux 0x074e9213 down_killable +EXPORT_SYMBOL vmlinux 0x0762036e bio_endio +EXPORT_SYMBOL vmlinux 0x0772eb3d phy_detach +EXPORT_SYMBOL vmlinux 0x07931073 mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x0799aca4 local_bh_enable +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07d92d11 sock_no_getname +EXPORT_SYMBOL vmlinux 0x07e3df6c agp_alloc_bridge +EXPORT_SYMBOL vmlinux 0x07e50768 dev_remove_pack +EXPORT_SYMBOL vmlinux 0x07f468d1 security_path_rename +EXPORT_SYMBOL vmlinux 0x07fd0dca dma_async_memcpy_buf_to_pg +EXPORT_SYMBOL vmlinux 0x081b645d pci_unmap_rom +EXPORT_SYMBOL vmlinux 0x0827d953 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x083c2cbe of_get_next_parent +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x0884d205 nf_log_set +EXPORT_SYMBOL vmlinux 0x0898203d d_alloc_pseudo +EXPORT_SYMBOL vmlinux 0x089d4c1a mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x08ae58a5 __block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x08b34b64 tcp_shutdown +EXPORT_SYMBOL vmlinux 0x08c4b632 cdrom_check_events +EXPORT_SYMBOL vmlinux 0x08cc84e7 __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x0926adaa write_one_page +EXPORT_SYMBOL vmlinux 0x09395704 udp_sendmsg +EXPORT_SYMBOL vmlinux 0x09426793 dquot_initialize +EXPORT_SYMBOL vmlinux 0x09525eaf input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0x0964780a filemap_fdatawait +EXPORT_SYMBOL vmlinux 0x096dabcf fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x0974970d napi_gro_frags +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x099a8684 tty_register_device +EXPORT_SYMBOL vmlinux 0x09c55cec schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09ea4680 xfrm_prepare_input +EXPORT_SYMBOL vmlinux 0x09fd93b4 qman_create_fq +EXPORT_SYMBOL vmlinux 0x0a2487e0 unblock_all_signals +EXPORT_SYMBOL vmlinux 0x0a3131f6 strnchr +EXPORT_SYMBOL vmlinux 0x0a33884d n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x0a469d23 mfd_clone_cell +EXPORT_SYMBOL vmlinux 0x0a49f994 mount_subtree +EXPORT_SYMBOL vmlinux 0x0a4f03f2 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x0a6c38a3 fsync_bdev +EXPORT_SYMBOL vmlinux 0x0a7958c7 qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0x0a898e27 unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x0a9f6d59 pme_attr_set +EXPORT_SYMBOL vmlinux 0x0aa29511 dst_discard +EXPORT_SYMBOL vmlinux 0x0aa56e34 kfree_skb +EXPORT_SYMBOL vmlinux 0x0aafa690 skb_copy_and_csum_datagram_iovec +EXPORT_SYMBOL vmlinux 0x0acb1a3c __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ad853db tty_throttle +EXPORT_SYMBOL vmlinux 0x0af162fd tty_pair_get_tty +EXPORT_SYMBOL vmlinux 0x0b0a6fc0 input_release_device +EXPORT_SYMBOL vmlinux 0x0b0d888b icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0x0b1219be blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x0b19b8c3 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b210883 input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x0b434217 create_syslog_header +EXPORT_SYMBOL vmlinux 0x0b48677a __kfifo_init +EXPORT_SYMBOL vmlinux 0x0b56117f of_find_node_by_path +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b83d259 __secpath_destroy +EXPORT_SYMBOL vmlinux 0x0b8bdc97 scsi_nonblockable_ioctl +EXPORT_SYMBOL vmlinux 0x0b8dbfa3 filemap_write_and_wait +EXPORT_SYMBOL vmlinux 0x0b92796f from_kuid +EXPORT_SYMBOL vmlinux 0x0bbc5908 gen_estimator_active +EXPORT_SYMBOL vmlinux 0x0bc2e62e pcim_enable_device +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bc95f70 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0x0c12e626 __debugger_bpt +EXPORT_SYMBOL vmlinux 0x0c1ca2b4 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0x0c269689 tty_pair_get_pty +EXPORT_SYMBOL vmlinux 0x0c45fc96 vfs_lstat +EXPORT_SYMBOL vmlinux 0x0c4ea94c fb_blank +EXPORT_SYMBOL vmlinux 0x0c58a8cd netdev_increment_features +EXPORT_SYMBOL vmlinux 0x0c5a9a8b __bforget +EXPORT_SYMBOL vmlinux 0x0c65e73c scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0x0c678c4e dev_uc_sync +EXPORT_SYMBOL vmlinux 0x0c6d2f79 mmc_gpio_request_cd +EXPORT_SYMBOL vmlinux 0x0c85bca8 netdev_update_features +EXPORT_SYMBOL vmlinux 0x0c8c9e99 scsi_show_extd_sense +EXPORT_SYMBOL vmlinux 0x0c9b6089 nvram_get_size +EXPORT_SYMBOL vmlinux 0x0ca0c882 twl6030_interrupt_mask +EXPORT_SYMBOL vmlinux 0x0cae232b utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0x0cced23f generic_write_checks +EXPORT_SYMBOL vmlinux 0x0cdd2dae jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0x0ce900af blk_finish_plug +EXPORT_SYMBOL vmlinux 0x0d0a3273 iterate_mounts +EXPORT_SYMBOL vmlinux 0x0d0cfa5c simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0x0d5210c4 pcibios_fixup_bus +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d5456fb generic_removexattr +EXPORT_SYMBOL vmlinux 0x0da10ec3 security_sock_graft +EXPORT_SYMBOL vmlinux 0x0dac96fe ipmi_get_smi_info +EXPORT_SYMBOL vmlinux 0x0defbc6a mmc_align_data_size +EXPORT_SYMBOL vmlinux 0x0e03c60b swiotlb_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0x0e264c68 input_unregister_handler +EXPORT_SYMBOL vmlinux 0x0e3a1b71 dm_put_device +EXPORT_SYMBOL vmlinux 0x0e6da44a set_normalized_timespec +EXPORT_SYMBOL vmlinux 0x0e6dcb45 mmc_alloc_host +EXPORT_SYMBOL vmlinux 0x0e6e5432 blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x0e70dac1 pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0x0e8f30f6 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x0ea3c75e simple_getattr +EXPORT_SYMBOL vmlinux 0x0eaaec6b generic_writepages +EXPORT_SYMBOL vmlinux 0x0eaf451e hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x0eb11920 unregister_nls +EXPORT_SYMBOL vmlinux 0x0ee5989d inode_init_once +EXPORT_SYMBOL vmlinux 0x0eec884a dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0x0ef69857 pme_ctx_pmtcc +EXPORT_SYMBOL vmlinux 0x0efcbb1b set_current_groups +EXPORT_SYMBOL vmlinux 0x0f1dc9ae dm_io +EXPORT_SYMBOL vmlinux 0x0f277a4a bio_integrity_clone +EXPORT_SYMBOL vmlinux 0x0f28cb91 nvram_read_byte +EXPORT_SYMBOL vmlinux 0x0f301680 kernel_read +EXPORT_SYMBOL vmlinux 0x0f4584f9 put_io_context +EXPORT_SYMBOL vmlinux 0x0f4c91ed ns_to_timespec +EXPORT_SYMBOL vmlinux 0x0f5faa7e wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x0f600956 dev_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x0f69b4e7 cap_mmap_file +EXPORT_SYMBOL vmlinux 0x0f6f90c4 pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0x0f8c0149 pme2_have_control +EXPORT_SYMBOL vmlinux 0x0f9316c8 fm_mutex_unlock +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fbc4695 dev_alloc_name +EXPORT_SYMBOL vmlinux 0x0fda293f vfs_llseek +EXPORT_SYMBOL vmlinux 0x1037d364 block_write_end +EXPORT_SYMBOL vmlinux 0x103fbf5f key_payload_reserve +EXPORT_SYMBOL vmlinux 0x10412526 dev_deactivate +EXPORT_SYMBOL vmlinux 0x1047a276 nf_getsockopt +EXPORT_SYMBOL vmlinux 0x106b4f8b bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x106f13ab crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x107645a7 neigh_connected_output +EXPORT_SYMBOL vmlinux 0x10a29851 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x10b877cd ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0x10b8a25a generic_ro_fops +EXPORT_SYMBOL vmlinux 0x10bf3f42 led_blink_set_oneshot +EXPORT_SYMBOL vmlinux 0x10cba860 scm_fp_dup +EXPORT_SYMBOL vmlinux 0x10ee20bb default_blu +EXPORT_SYMBOL vmlinux 0x10ee7d2d input_register_handler +EXPORT_SYMBOL vmlinux 0x110013bf bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x110f1e52 blk_integrity_is_initialized +EXPORT_SYMBOL vmlinux 0x11267875 scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0x1137dda7 call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0x11534188 skb_copy +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x1182d83a cpuidle_disable +EXPORT_SYMBOL vmlinux 0x118b65bc dev_set_mac_address +EXPORT_SYMBOL vmlinux 0x1198b5f9 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x11a170cf jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0x11c9185c of_iomap +EXPORT_SYMBOL vmlinux 0x11e06eea skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x122043a8 of_find_node_with_property +EXPORT_SYMBOL vmlinux 0x122f634c arp_send +EXPORT_SYMBOL vmlinux 0x124dc6ea blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0x1291680a pcie_port_service_register +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12a5cd07 tcp_gso_segment +EXPORT_SYMBOL vmlinux 0x12caf35c ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x12da5bb2 __kmalloc +EXPORT_SYMBOL vmlinux 0x12ede88b sync_inode +EXPORT_SYMBOL vmlinux 0x1300cb63 inet_release +EXPORT_SYMBOL vmlinux 0x130d7b1d in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x130f695f lock_may_write +EXPORT_SYMBOL vmlinux 0x13106f0d set_device_ro +EXPORT_SYMBOL vmlinux 0x1329d6e3 cdrom_media_changed +EXPORT_SYMBOL vmlinux 0x13307fde vsscanf +EXPORT_SYMBOL vmlinux 0x1348760d ipmi_request_settime +EXPORT_SYMBOL vmlinux 0x13522cba __pagevec_release +EXPORT_SYMBOL vmlinux 0x13554ece file_ns_capable +EXPORT_SYMBOL vmlinux 0x13767956 qman_enqueue +EXPORT_SYMBOL vmlinux 0x137d7933 pci_request_regions +EXPORT_SYMBOL vmlinux 0x13aace6e md_write_start +EXPORT_SYMBOL vmlinux 0x13af0939 netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0x13b444a7 register_key_type +EXPORT_SYMBOL vmlinux 0x13c21eb0 __alloc_skb +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13d31dc9 blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0x13e38f5c up_read +EXPORT_SYMBOL vmlinux 0x13eb1704 dcb_getapp +EXPORT_SYMBOL vmlinux 0x13f00465 dev_uc_del +EXPORT_SYMBOL vmlinux 0x1407c6e7 kmap_prot +EXPORT_SYMBOL vmlinux 0x1420b379 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0x143631dc bdi_destroy +EXPORT_SYMBOL vmlinux 0x1455811c phy_attach_direct +EXPORT_SYMBOL vmlinux 0x14723e9c kill_anon_super +EXPORT_SYMBOL vmlinux 0x1472af32 bdevname +EXPORT_SYMBOL vmlinux 0x147750cd padata_start +EXPORT_SYMBOL vmlinux 0x14979057 generic_file_splice_read +EXPORT_SYMBOL vmlinux 0x14c3ec1a skb_split +EXPORT_SYMBOL vmlinux 0x14cf950a security_path_rmdir +EXPORT_SYMBOL vmlinux 0x14dd18c7 sk_alloc +EXPORT_SYMBOL vmlinux 0x14f45fcc bman_free_pool +EXPORT_SYMBOL vmlinux 0x15143493 fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0x15282340 vfs_statfs +EXPORT_SYMBOL vmlinux 0x15297a0c km_policy_notify +EXPORT_SYMBOL vmlinux 0x1543ce31 __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x15477b72 clocksource_register +EXPORT_SYMBOL vmlinux 0x154a996a inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x154f2f5e pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0x1551dc51 bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x1565cbbc agp_generic_remove_memory +EXPORT_SYMBOL vmlinux 0x1568c199 simple_transaction_get +EXPORT_SYMBOL vmlinux 0x1578c706 inet_bind +EXPORT_SYMBOL vmlinux 0x15864b03 flex_array_get +EXPORT_SYMBOL vmlinux 0x159b79aa km_new_mapping +EXPORT_SYMBOL vmlinux 0x15a8c366 tcp_proc_unregister +EXPORT_SYMBOL vmlinux 0x15aa7017 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0x15b8a118 mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x15bc6ee5 seq_bitmap +EXPORT_SYMBOL vmlinux 0x15c818ac dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0x15ce60a5 blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0x15d3fd60 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x15f0b012 simple_fill_super +EXPORT_SYMBOL vmlinux 0x15f571ec blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0x160c43a8 security_path_unlink +EXPORT_SYMBOL vmlinux 0x1611f7f2 gen10g_config_aneg +EXPORT_SYMBOL vmlinux 0x161955f1 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0x161d0033 proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0x1640bb71 skb_dequeue +EXPORT_SYMBOL vmlinux 0x164451ef pme_ctx_reconfigure_rx +EXPORT_SYMBOL vmlinux 0x164e7b25 pci_pme_capable +EXPORT_SYMBOL vmlinux 0x16540bbc __cmpdi2 +EXPORT_SYMBOL vmlinux 0x167954ea sock_no_sendpage +EXPORT_SYMBOL vmlinux 0x168ae791 check_submounts_and_drop +EXPORT_SYMBOL vmlinux 0x168e7c95 give_up_console +EXPORT_SYMBOL vmlinux 0x168f02f9 fm_get_handle +EXPORT_SYMBOL vmlinux 0x1690d15a pm860x_page_reg_read +EXPORT_SYMBOL vmlinux 0x16b31ab1 nonseekable_open +EXPORT_SYMBOL vmlinux 0x16dcec76 ipmi_set_my_address +EXPORT_SYMBOL vmlinux 0x16eab516 dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x16f75b91 follow_up +EXPORT_SYMBOL vmlinux 0x17061fb3 generic_setxattr +EXPORT_SYMBOL vmlinux 0x17397342 pci_enable_msi_block +EXPORT_SYMBOL vmlinux 0x17527c0e inet_frags_init +EXPORT_SYMBOL vmlinux 0x17648396 dev_base_lock +EXPORT_SYMBOL vmlinux 0x17694357 twl6030_mmc_card_detect +EXPORT_SYMBOL vmlinux 0x17a666b9 mach_p1020_mbg_pc +EXPORT_SYMBOL vmlinux 0x17aa156a __ucmpdi2 +EXPORT_SYMBOL vmlinux 0x17abc7dd da903x_query_status +EXPORT_SYMBOL vmlinux 0x17b1125d gen_kill_estimator +EXPORT_SYMBOL vmlinux 0x17b41257 i2c_clients_command +EXPORT_SYMBOL vmlinux 0x17ca3913 zero_fill_bio +EXPORT_SYMBOL vmlinux 0x17e28473 fsl_upm_run_pattern +EXPORT_SYMBOL vmlinux 0x17f341a0 i8042_lock_chip +EXPORT_SYMBOL vmlinux 0x1820bc05 bio_copy_user +EXPORT_SYMBOL vmlinux 0x1826f089 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x183e93bc dquot_commit +EXPORT_SYMBOL vmlinux 0x183fa88b mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0x18440849 sk_wait_data +EXPORT_SYMBOL vmlinux 0x184b82fb mmc_vddrange_to_ocrmask +EXPORT_SYMBOL vmlinux 0x184e6c85 radix_tree_gang_lookup_slot +EXPORT_SYMBOL vmlinux 0x18580ba0 kobject_put +EXPORT_SYMBOL vmlinux 0x1870f8c1 qman_fqid_pool_alloc +EXPORT_SYMBOL vmlinux 0x1880d44d pci_set_dma_seg_boundary +EXPORT_SYMBOL vmlinux 0x188a3dfb timespec_trunc +EXPORT_SYMBOL vmlinux 0x189868d7 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x18aebaf3 pcie_set_mps +EXPORT_SYMBOL vmlinux 0x18d8e44a padata_unregister_cpumask_notifier +EXPORT_SYMBOL vmlinux 0x18dbb172 __devm_request_region +EXPORT_SYMBOL vmlinux 0x18f38506 input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0x190424b8 cfb_imageblit +EXPORT_SYMBOL vmlinux 0x19111a40 lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x191b1969 inode_init_always +EXPORT_SYMBOL vmlinux 0x195395b2 devm_gpiod_get_index +EXPORT_SYMBOL vmlinux 0x1973bea6 copy_strings_kernel +EXPORT_SYMBOL vmlinux 0x197d659f pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0x197ec4a0 generic_write_end +EXPORT_SYMBOL vmlinux 0x198ca67f mach_p1022_ds +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19bf64d7 sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x19e78488 of_find_backlight_by_node +EXPORT_SYMBOL vmlinux 0x19ee3973 scsi_allocate_command +EXPORT_SYMBOL vmlinux 0x19fcff2b cdev_add +EXPORT_SYMBOL vmlinux 0x1a01e1fb simple_unlink +EXPORT_SYMBOL vmlinux 0x1a03ac02 submit_bh +EXPORT_SYMBOL vmlinux 0x1a10c898 ipmi_set_maintenance_mode +EXPORT_SYMBOL vmlinux 0x1a111a41 ftrace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x1a20ee32 kobject_add +EXPORT_SYMBOL vmlinux 0x1a5ff9ea proc_set_size +EXPORT_SYMBOL vmlinux 0x1a771e33 tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x1a88a4a4 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0x1aa4742c unregister_netdev +EXPORT_SYMBOL vmlinux 0x1ab4ce23 netif_skb_dev_features +EXPORT_SYMBOL vmlinux 0x1aba5db8 ipmi_unregister_smi +EXPORT_SYMBOL vmlinux 0x1ac39455 eth_header_cache_update +EXPORT_SYMBOL vmlinux 0x1ace138d bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0x1ae84d8b inet_select_addr +EXPORT_SYMBOL vmlinux 0x1af62a99 panic_notifier_list +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b030b1b tty_write_room +EXPORT_SYMBOL vmlinux 0x1b0ac272 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0x1b132009 rename_lock +EXPORT_SYMBOL vmlinux 0x1b15f2e3 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0x1b1e1088 sg_nents +EXPORT_SYMBOL vmlinux 0x1b2efca5 inet_getname +EXPORT_SYMBOL vmlinux 0x1b30f778 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b73a5e8 dev_set_mtu +EXPORT_SYMBOL vmlinux 0x1b82fefa md_unplug +EXPORT_SYMBOL vmlinux 0x1b8b95ad i8042_unlock_chip +EXPORT_SYMBOL vmlinux 0x1b8d335f kernel_getsockname +EXPORT_SYMBOL vmlinux 0x1b9e0ff1 scsilun_to_int +EXPORT_SYMBOL vmlinux 0x1ba23e04 kill_litter_super +EXPORT_SYMBOL vmlinux 0x1bc0daca names_cachep +EXPORT_SYMBOL vmlinux 0x1bc4ff03 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0x1bca2b59 load_fp_state +EXPORT_SYMBOL vmlinux 0x1bfadc06 bio_integrity_free +EXPORT_SYMBOL vmlinux 0x1c09aba3 qman_static_dequeue_get +EXPORT_SYMBOL vmlinux 0x1c0f1379 kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0x1c1779cb tty_check_change +EXPORT_SYMBOL vmlinux 0x1c211807 dev_printk_emit +EXPORT_SYMBOL vmlinux 0x1c80de9c ip_send_check +EXPORT_SYMBOL vmlinux 0x1c8eef54 truncate_pagecache +EXPORT_SYMBOL vmlinux 0x1c9c67a4 alloc_disk_node +EXPORT_SYMBOL vmlinux 0x1c9de10f elv_register_queue +EXPORT_SYMBOL vmlinux 0x1ca09168 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0x1ca20faf blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x1caf1797 tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0x1cb79498 km_query +EXPORT_SYMBOL vmlinux 0x1cc864aa netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0x1cd941cb xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x1cdd5377 vm_mmap +EXPORT_SYMBOL vmlinux 0x1ce352db try_to_writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0x1ce988f0 dquot_quotactl_ops +EXPORT_SYMBOL vmlinux 0x1d2490ed cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x1d5cfa33 jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x1d5d1efb dst_release +EXPORT_SYMBOL vmlinux 0x1d7254bc flush_tlb_page +EXPORT_SYMBOL vmlinux 0x1dafbc91 should_remove_suid +EXPORT_SYMBOL vmlinux 0x1dc36131 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0x1dc8d6e7 dma_common_get_sgtable +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1dd8ba01 mmc_gpio_request_ro +EXPORT_SYMBOL vmlinux 0x1ddf836c scsi_register_driver +EXPORT_SYMBOL vmlinux 0x1defc66a mount_single +EXPORT_SYMBOL vmlinux 0x1e0358fd scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x1e26be3b get_anon_bdev +EXPORT_SYMBOL vmlinux 0x1e378709 tcp_release_cb +EXPORT_SYMBOL vmlinux 0x1e699c2f ip_ct_attach +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e7092b4 agp3_generic_tlbflush +EXPORT_SYMBOL vmlinux 0x1e960feb mach_mpc8569_mds +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ea4d9ea clear_user_page +EXPORT_SYMBOL vmlinux 0x1ebde8ee try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x1ec3bed9 hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0x1f0096a0 blk_requeue_request +EXPORT_SYMBOL vmlinux 0x1f2909dd dquot_free_inode +EXPORT_SYMBOL vmlinux 0x1f3ff447 i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0x1f4600a8 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0x1f58989c d_invalidate +EXPORT_SYMBOL vmlinux 0x1f5ad908 pme_attr_get +EXPORT_SYMBOL vmlinux 0x1f6401e7 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x1f6cf8c1 rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x1f738125 pci_enable_obff +EXPORT_SYMBOL vmlinux 0x1f785e1a qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0x1f79b2a3 scsi_dma_map +EXPORT_SYMBOL vmlinux 0x1f7d4063 of_device_unregister +EXPORT_SYMBOL vmlinux 0x1f7e807f kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x1fa544c3 __nla_put +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fc08c3b skb_unlink +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1fedf0f4 __request_region +EXPORT_SYMBOL vmlinux 0x1ff13980 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x1ff5731e fsl_ifc_ctrl_dev +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x20051916 pci_alloc_dev +EXPORT_SYMBOL vmlinux 0x200932be __i2c_transfer +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x200bc955 backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x201bde34 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0x201e9b00 scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x20344f02 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0x20482ca2 generic_pipe_buf_confirm +EXPORT_SYMBOL vmlinux 0x204abdab dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x20574148 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0x20640d37 textsearch_unregister +EXPORT_SYMBOL vmlinux 0x206687ad cpm_muram_alloc_fixed +EXPORT_SYMBOL vmlinux 0x2068f6de scsi_execute_req_flags +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x208167f3 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0x20969299 bdput +EXPORT_SYMBOL vmlinux 0x209e87a0 get_super_thawed +EXPORT_SYMBOL vmlinux 0x20a18f11 jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20a86b3f of_get_pci_address +EXPORT_SYMBOL vmlinux 0x20b2bb2d param_array_ops +EXPORT_SYMBOL vmlinux 0x20bce299 pcim_iomap_table +EXPORT_SYMBOL vmlinux 0x20c31768 generic_file_splice_write +EXPORT_SYMBOL vmlinux 0x20c55ae0 sscanf +EXPORT_SYMBOL vmlinux 0x20e02f8f phy_start_aneg +EXPORT_SYMBOL vmlinux 0x20e78b52 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0x20f60c0d __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0x20ff55fc security_inode_readlink +EXPORT_SYMBOL vmlinux 0x210476c4 file_update_time +EXPORT_SYMBOL vmlinux 0x21173d2e blk_mq_insert_request +EXPORT_SYMBOL vmlinux 0x214a4169 gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0x215632da proc_remove +EXPORT_SYMBOL vmlinux 0x215da811 inet_shutdown +EXPORT_SYMBOL vmlinux 0x215ebd78 bitrev16 +EXPORT_SYMBOL vmlinux 0x21861dc3 make_bad_inode +EXPORT_SYMBOL vmlinux 0x2186846d elv_add_request +EXPORT_SYMBOL vmlinux 0x21f3dc15 cpm_command +EXPORT_SYMBOL vmlinux 0x21f6ffd1 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x22133fb3 set_page_dirty +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x2239c1ae unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0x2240d149 scsi_print_result +EXPORT_SYMBOL vmlinux 0x2256e479 vfs_unlink +EXPORT_SYMBOL vmlinux 0x2256fafa div64_u64_rem +EXPORT_SYMBOL vmlinux 0x226078f0 dcb_setapp +EXPORT_SYMBOL vmlinux 0x2265b514 qman_get_portal_config +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x2278e94b slhc_remember +EXPORT_SYMBOL vmlinux 0x228b883f softnet_data +EXPORT_SYMBOL vmlinux 0x229aa38c agp_enable +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22d73c62 bman_get_params +EXPORT_SYMBOL vmlinux 0x22eda52f generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x22f1897d mmc_free_host +EXPORT_SYMBOL vmlinux 0x230147c6 kvm_read_guest_atomic +EXPORT_SYMBOL vmlinux 0x230ddda2 max8925_bulk_write +EXPORT_SYMBOL vmlinux 0x23132a81 of_phy_find_device +EXPORT_SYMBOL vmlinux 0x231d4001 fb_edid_add_monspecs +EXPORT_SYMBOL vmlinux 0x232ba526 ppp_register_channel +EXPORT_SYMBOL vmlinux 0x23334bf7 generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x2336846e complete_request_key +EXPORT_SYMBOL vmlinux 0x233917d1 mac_vmode_to_var +EXPORT_SYMBOL vmlinux 0x235e90f3 __wake_up_bit +EXPORT_SYMBOL vmlinux 0x23688478 put_tty_driver +EXPORT_SYMBOL vmlinux 0x238148d7 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0x239448e4 read_code +EXPORT_SYMBOL vmlinux 0x23a574fd security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0x23a7bd49 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0x23b3c937 ipmi_smi_add_proc_entry +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c56f45 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x23c6e329 kfree_skb_partial +EXPORT_SYMBOL vmlinux 0x23e692b2 agp_generic_insert_memory +EXPORT_SYMBOL vmlinux 0x23f2243d mempool_free +EXPORT_SYMBOL vmlinux 0x23f290b7 cont_write_begin +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x2418caaa writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x24380f9a thermal_cdev_update +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x245a5a94 sleep_on_timeout +EXPORT_SYMBOL vmlinux 0x246b3c2a eth_rebuild_header +EXPORT_SYMBOL vmlinux 0x2482e688 vsprintf +EXPORT_SYMBOL vmlinux 0x24858f78 __register_chrdev +EXPORT_SYMBOL vmlinux 0x24893b15 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0x24a427ff lro_receive_skb +EXPORT_SYMBOL vmlinux 0x24b0f90c of_clk_get_by_name +EXPORT_SYMBOL vmlinux 0x24c9c62d kthread_bind +EXPORT_SYMBOL vmlinux 0x24cdd8ed dm_kobject_release +EXPORT_SYMBOL vmlinux 0x24d7b4eb cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x24f1b744 ps2_command +EXPORT_SYMBOL vmlinux 0x24f3b596 md_done_sync +EXPORT_SYMBOL vmlinux 0x24f89c8c mb_cache_shrink +EXPORT_SYMBOL vmlinux 0x24fdac79 wake_bit_function +EXPORT_SYMBOL vmlinux 0x250113b4 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x2533dda1 bman_query_pools +EXPORT_SYMBOL vmlinux 0x2542dd05 mach_mpc8544_ds +EXPORT_SYMBOL vmlinux 0x254b4a8f neigh_destroy +EXPORT_SYMBOL vmlinux 0x254c2f0a end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x2589e69a pci_pme_active +EXPORT_SYMBOL vmlinux 0x25a59b5b netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0x25c677c4 mac_pton +EXPORT_SYMBOL vmlinux 0x25cbb956 redraw_screen +EXPORT_SYMBOL vmlinux 0x25f3bd2e atomic64_xchg +EXPORT_SYMBOL vmlinux 0x25fd8b81 agp_collect_device_status +EXPORT_SYMBOL vmlinux 0x25ffeb87 sget +EXPORT_SYMBOL vmlinux 0x260cf8f8 of_get_property +EXPORT_SYMBOL vmlinux 0x2636fcf2 phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x26439a81 dmam_free_noncoherent +EXPORT_SYMBOL vmlinux 0x26477c07 __vmalloc +EXPORT_SYMBOL vmlinux 0x26502aa7 swiotlb_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0x2650d835 sysctl_ip_early_demux +EXPORT_SYMBOL vmlinux 0x2659d8c2 crypto_sha1_update +EXPORT_SYMBOL vmlinux 0x2663fcc7 bitmap_startwrite +EXPORT_SYMBOL vmlinux 0x266f64da serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x2685c3d7 __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x26968da8 f_setown +EXPORT_SYMBOL vmlinux 0x269a50f8 seq_printf +EXPORT_SYMBOL vmlinux 0x26a83552 udp_proc_unregister +EXPORT_SYMBOL vmlinux 0x26b760c4 slhc_init +EXPORT_SYMBOL vmlinux 0x26b8e03c fb_set_cmap +EXPORT_SYMBOL vmlinux 0x26ba3a34 km_report +EXPORT_SYMBOL vmlinux 0x26bb950b __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0x26be042c bdi_unregister +EXPORT_SYMBOL vmlinux 0x26c0f706 mount_bdev +EXPORT_SYMBOL vmlinux 0x26c5c37f pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0x26d1c095 posix_lock_file +EXPORT_SYMBOL vmlinux 0x26e76fb8 sysctl_udp_wmem_min +EXPORT_SYMBOL vmlinux 0x26f0453a blk_set_default_limits +EXPORT_SYMBOL vmlinux 0x26f2f1ad netlink_ack +EXPORT_SYMBOL vmlinux 0x271ce00f cancel_dirty_page +EXPORT_SYMBOL vmlinux 0x27337559 unlock_buffer +EXPORT_SYMBOL vmlinux 0x2736c0ed inode_get_bytes +EXPORT_SYMBOL vmlinux 0x274d08dc __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0x275cd503 __blk_run_queue +EXPORT_SYMBOL vmlinux 0x276bc659 skb_make_writable +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x27891224 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0x278aa4b5 test_set_page_writeback +EXPORT_SYMBOL vmlinux 0x2795be5b dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0x279b5f2c i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0x27b53139 pme_fd_cmd_pmtcc +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27cfc06d neigh_event_ns +EXPORT_SYMBOL vmlinux 0x27e1a049 printk +EXPORT_SYMBOL vmlinux 0x27f2313e idr_replace +EXPORT_SYMBOL vmlinux 0x2813dd11 pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x283e1fc9 shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x284cebc9 skb_tx_error +EXPORT_SYMBOL vmlinux 0x286a3ca0 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x2872739d swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x288eeace inet_del_protocol +EXPORT_SYMBOL vmlinux 0x288f3f4d pci_device_from_OF_node +EXPORT_SYMBOL vmlinux 0x28973a64 scsi_prep_state_check +EXPORT_SYMBOL vmlinux 0x289bce5a dquot_acquire +EXPORT_SYMBOL vmlinux 0x289d177b follow_pfn +EXPORT_SYMBOL vmlinux 0x28a2ed02 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x28dfaa15 simple_dir_operations +EXPORT_SYMBOL vmlinux 0x28f784f5 __debugger_break_match +EXPORT_SYMBOL vmlinux 0x29141ea4 proto_register +EXPORT_SYMBOL vmlinux 0x2925816c ndisc_mc_map +EXPORT_SYMBOL vmlinux 0x2946c834 scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0x29472ef8 kthread_stop +EXPORT_SYMBOL vmlinux 0x29537c9e alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0x2954ee83 of_find_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0x29649c6b tcp_seq_open +EXPORT_SYMBOL vmlinux 0x296ba90f setattr_copy +EXPORT_SYMBOL vmlinux 0x29a67db1 bman_recovery_cleanup_bpid +EXPORT_SYMBOL vmlinux 0x29ab0ec0 tcp_read_sock +EXPORT_SYMBOL vmlinux 0x29b02d16 phy_start_interrupts +EXPORT_SYMBOL vmlinux 0x29c441f7 blk_queue_unprep_rq +EXPORT_SYMBOL vmlinux 0x29c55a3c mmc_detect_change +EXPORT_SYMBOL vmlinux 0x29f32d8b invalidate_bdev +EXPORT_SYMBOL vmlinux 0x29f84f65 get_agp_version +EXPORT_SYMBOL vmlinux 0x29fdda53 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0x2a0af819 dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x2a1084a0 blk_queue_softirq_done +EXPORT_SYMBOL vmlinux 0x2a19b055 bdi_register_dev +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a320822 block_write_begin +EXPORT_SYMBOL vmlinux 0x2a37d074 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2a3ece64 blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0x2a438c5d address_space_init_once +EXPORT_SYMBOL vmlinux 0x2a79ac13 clkdev_add +EXPORT_SYMBOL vmlinux 0x2a7e6616 locks_remove_posix +EXPORT_SYMBOL vmlinux 0x2aa0e4fc strncasecmp +EXPORT_SYMBOL vmlinux 0x2aa494d9 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0x2aac8ff2 unregister_qdisc +EXPORT_SYMBOL vmlinux 0x2acf0feb vfs_fstat +EXPORT_SYMBOL vmlinux 0x2adffcb5 framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x2aebff62 generic_permission +EXPORT_SYMBOL vmlinux 0x2afb0171 fm_port_pcd_bind +EXPORT_SYMBOL vmlinux 0x2b0ba2b0 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x2b2ce78b kstrtos8 +EXPORT_SYMBOL vmlinux 0x2b39aee0 bman_release +EXPORT_SYMBOL vmlinux 0x2b7d4d33 of_device_alloc +EXPORT_SYMBOL vmlinux 0x2b87fcc4 scsi_prep_fn +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2ba707a8 sysctl_tcp_low_latency +EXPORT_SYMBOL vmlinux 0x2bc41ca6 tcp_parse_options +EXPORT_SYMBOL vmlinux 0x2bc61da1 program_check_exception +EXPORT_SYMBOL vmlinux 0x2be0f12d dql_completed +EXPORT_SYMBOL vmlinux 0x2be29fe7 sk_reset_timer +EXPORT_SYMBOL vmlinux 0x2bec2d44 pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0x2c0e4153 filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x2c1427a5 inet_sendpage +EXPORT_SYMBOL vmlinux 0x2c14323a kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c2e8cd7 wireless_send_event +EXPORT_SYMBOL vmlinux 0x2c7b1fca down_timeout +EXPORT_SYMBOL vmlinux 0x2c900d91 cpufreq_put_global_kobject +EXPORT_SYMBOL vmlinux 0x2c965a0b mach_mpc8572_ds +EXPORT_SYMBOL vmlinux 0x2cc096f2 dev_warn +EXPORT_SYMBOL vmlinux 0x2cd6e494 scsi_register_interface +EXPORT_SYMBOL vmlinux 0x2cd8f755 i2c_master_send +EXPORT_SYMBOL vmlinux 0x2cfacb14 __d_drop +EXPORT_SYMBOL vmlinux 0x2cfb8378 qman_stop_dequeues +EXPORT_SYMBOL vmlinux 0x2d03c10d posix_acl_create +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d2b8fb1 pci_reenable_device +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d37342e cpu_online_mask +EXPORT_SYMBOL vmlinux 0x2d474135 phy_find_first +EXPORT_SYMBOL vmlinux 0x2d89342a scsi_show_sense_hdr +EXPORT_SYMBOL vmlinux 0x2daaaba9 param_get_byte +EXPORT_SYMBOL vmlinux 0x2dac4f1d seq_read +EXPORT_SYMBOL vmlinux 0x2db5b463 led_set_brightness +EXPORT_SYMBOL vmlinux 0x2dbb7e58 d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0x2dd1082b pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0x2de0464f nf_log_packet +EXPORT_SYMBOL vmlinux 0x2deda4a1 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x2df811e9 lookup_bdev +EXPORT_SYMBOL vmlinux 0x2e03960b __register_binfmt +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e22791e dqput +EXPORT_SYMBOL vmlinux 0x2e2ce9e0 sysctl_tcp_syncookies +EXPORT_SYMBOL vmlinux 0x2e48bdcf qman_poll_dqrr +EXPORT_SYMBOL vmlinux 0x2e5d9c7f tcf_exts_dump +EXPORT_SYMBOL vmlinux 0x2e6fd995 xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0x2e9100a7 key_alloc +EXPORT_SYMBOL vmlinux 0x2e97bf98 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x2ec29be6 netdev_all_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x2ec524ad __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x2eeceb42 sk_chk_filter +EXPORT_SYMBOL vmlinux 0x2ef63ad6 scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f064b55 allocate_resource +EXPORT_SYMBOL vmlinux 0x2f238a62 unlock_page +EXPORT_SYMBOL vmlinux 0x2f311e6e kmap_atomic_prot +EXPORT_SYMBOL vmlinux 0x2f3e42ec irq_stat +EXPORT_SYMBOL vmlinux 0x2f55e87a kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0x2f6a03b6 lease_modify +EXPORT_SYMBOL vmlinux 0x2f707246 wait_on_page_bit +EXPORT_SYMBOL vmlinux 0x2f7afb93 register_filesystem +EXPORT_SYMBOL vmlinux 0x2f7b30c2 of_platform_bus_probe +EXPORT_SYMBOL vmlinux 0x2f9d2ffb scsi_device_get +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fbd7c93 dmam_alloc_noncoherent +EXPORT_SYMBOL vmlinux 0x2fc60dd3 vc_resize +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2fea180b mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0x2ff16a43 input_register_handle +EXPORT_SYMBOL vmlinux 0x2ff86e44 sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0x3006b297 pci_match_id +EXPORT_SYMBOL vmlinux 0x30226ddf agp_device_command +EXPORT_SYMBOL vmlinux 0x3038092f devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0x307c2fd0 generic_check_addressable +EXPORT_SYMBOL vmlinux 0x308e6ce5 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0x308f493d freeze_super +EXPORT_SYMBOL vmlinux 0x309892e1 mmc_start_req +EXPORT_SYMBOL vmlinux 0x30a2b319 uart_register_driver +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30b8b35c cpu_to_chip_id +EXPORT_SYMBOL vmlinux 0x30c8d0e6 d_alloc_name +EXPORT_SYMBOL vmlinux 0x30cada8f radix_tree_next_hole +EXPORT_SYMBOL vmlinux 0x30cc168f clk_get +EXPORT_SYMBOL vmlinux 0x30febcca vga_client_register +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x31047816 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0x310917fe sort +EXPORT_SYMBOL vmlinux 0x311d2e68 nf_register_hook +EXPORT_SYMBOL vmlinux 0x312824e0 hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x3144230b xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x3147857d default_red +EXPORT_SYMBOL vmlinux 0x315c65fd zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x31708a41 find_or_create_page +EXPORT_SYMBOL vmlinux 0x318a936c xfrm_register_type +EXPORT_SYMBOL vmlinux 0x318cadb1 reciprocal_value +EXPORT_SYMBOL vmlinux 0x3191f109 __krealloc +EXPORT_SYMBOL vmlinux 0x31987eff pci_enable_device +EXPORT_SYMBOL vmlinux 0x319d0946 vga_get +EXPORT_SYMBOL vmlinux 0x31a45bad irq_to_desc +EXPORT_SYMBOL vmlinux 0x31a7d3dc vfs_readv +EXPORT_SYMBOL vmlinux 0x31b2b9a3 fput +EXPORT_SYMBOL vmlinux 0x31c17929 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0x31f0bb78 __kmap_atomic_idx +EXPORT_SYMBOL vmlinux 0x31f7d40a pme_fd_cmd_fcw +EXPORT_SYMBOL vmlinux 0x320edb26 netdev_notice +EXPORT_SYMBOL vmlinux 0x322f48d4 abx500_dump_all_banks +EXPORT_SYMBOL vmlinux 0x32371a75 __scsi_alloc_queue +EXPORT_SYMBOL vmlinux 0x324078c9 dmam_free_coherent +EXPORT_SYMBOL vmlinux 0x32424b34 qman_query_wq +EXPORT_SYMBOL vmlinux 0x327bf883 of_can_translate_address +EXPORT_SYMBOL vmlinux 0x3284c88d tcf_hash_lookup +EXPORT_SYMBOL vmlinux 0x32860d7e qman_fqid_pool_free +EXPORT_SYMBOL vmlinux 0x32861e0b noop_fsync +EXPORT_SYMBOL vmlinux 0x328a05f1 strncpy +EXPORT_SYMBOL vmlinux 0x32b68aba pci_get_subsys +EXPORT_SYMBOL vmlinux 0x32cca661 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x32e0fbf2 audit_log_task_info +EXPORT_SYMBOL vmlinux 0x32fcfec9 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0x332332c0 kern_path_create +EXPORT_SYMBOL vmlinux 0x33233943 i2c_master_recv +EXPORT_SYMBOL vmlinux 0x33530657 pci_read_vpd +EXPORT_SYMBOL vmlinux 0x33549e12 __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0x335950c9 read_cache_pages +EXPORT_SYMBOL vmlinux 0x336801f8 bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0x336e5067 swiotlb_alloc_coherent +EXPORT_SYMBOL vmlinux 0x337cce46 put_cmsg +EXPORT_SYMBOL vmlinux 0x339329a4 d_genocide +EXPORT_SYMBOL vmlinux 0x33aa48f2 qman_static_dequeue_del +EXPORT_SYMBOL vmlinux 0x33ab3c74 revalidate_disk +EXPORT_SYMBOL vmlinux 0x33acc881 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x33b1b735 revert_creds +EXPORT_SYMBOL vmlinux 0x33b84f74 copy_page +EXPORT_SYMBOL vmlinux 0x33ba5cd4 param_ops_bool +EXPORT_SYMBOL vmlinux 0x33c7435c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x33dbfd93 tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x34184afe current_kernel_time +EXPORT_SYMBOL vmlinux 0x342fe217 pipe_to_file +EXPORT_SYMBOL vmlinux 0x344adbd5 init_cdrom_command +EXPORT_SYMBOL vmlinux 0x345315a5 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0x34561905 pme_ctx_enable +EXPORT_SYMBOL vmlinux 0x3457ff7f scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x345913d7 do_SAK +EXPORT_SYMBOL vmlinux 0x346c4ded rwsem_down_write_failed +EXPORT_SYMBOL vmlinux 0x347013de nla_validate +EXPORT_SYMBOL vmlinux 0x347eb9bd param_set_bool +EXPORT_SYMBOL vmlinux 0x348ab065 ihold +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34b0ead2 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0x34ba483d security_path_mknod +EXPORT_SYMBOL vmlinux 0x34bcb57d lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x34d2b214 prepare_creds +EXPORT_SYMBOL vmlinux 0x34d4215b sock_rfree +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34f628e7 local_flush_tlb_mm +EXPORT_SYMBOL vmlinux 0x34fa33d4 pagecache_write_end +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x351a8171 tcp_syn_flood_action +EXPORT_SYMBOL vmlinux 0x353cff35 __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0x354cec05 skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x354f02e3 gen10g_config_advert +EXPORT_SYMBOL vmlinux 0x35561ab3 dquot_commit_info +EXPORT_SYMBOL vmlinux 0x35ba4d25 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0x35cd37db __dev_get_by_index +EXPORT_SYMBOL vmlinux 0x35d2ac2e sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0x35d5b457 xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0x35dc3443 dev_driver_string +EXPORT_SYMBOL vmlinux 0x35df0072 seq_release_private +EXPORT_SYMBOL vmlinux 0x35e83fee xfrm_user_policy +EXPORT_SYMBOL vmlinux 0x36247b93 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x362cbecc qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x365cd14e free_user_ns +EXPORT_SYMBOL vmlinux 0x366f622c pci_enable_ltr +EXPORT_SYMBOL vmlinux 0x36815df7 gen_pool_add_virt +EXPORT_SYMBOL vmlinux 0x368382e2 of_get_named_gpiod_flags +EXPORT_SYMBOL vmlinux 0x36ac1f37 pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0x36b0e732 try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x36bd681b groups_alloc +EXPORT_SYMBOL vmlinux 0x36be5939 _dev_info +EXPORT_SYMBOL vmlinux 0x36c5eaac tty_port_hangup +EXPORT_SYMBOL vmlinux 0x36d7b11a of_find_matching_node_and_match +EXPORT_SYMBOL vmlinux 0x36e360e3 __hw_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x3710e48d get_task_io_context +EXPORT_SYMBOL vmlinux 0x371d2130 check_legacy_ioport +EXPORT_SYMBOL vmlinux 0x372d726f dev_mc_del +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x3745861d neigh_app_ns +EXPORT_SYMBOL vmlinux 0x37630267 mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x37758991 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0x37a55b9f simple_rename +EXPORT_SYMBOL vmlinux 0x37ad5bdf rtmsg_ifinfo +EXPORT_SYMBOL vmlinux 0x37af165f max8998_read_reg +EXPORT_SYMBOL vmlinux 0x37b32e53 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0x37b72e95 inet6_add_protocol +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37e74642 get_jiffies_64 +EXPORT_SYMBOL vmlinux 0x37f614b7 __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x37f8a57f pci_map_rom +EXPORT_SYMBOL vmlinux 0x381144a9 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0x3818a50b __scsi_add_device +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x381ccc13 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x383c577f tcf_hash_release +EXPORT_SYMBOL vmlinux 0x383caab0 serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0x38458523 default_file_splice_read +EXPORT_SYMBOL vmlinux 0x3884f473 nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388e39ce qman_oos_fq +EXPORT_SYMBOL vmlinux 0x388f9128 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a7b789 skb_copy_expand +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38b3de63 unlock_rename +EXPORT_SYMBOL vmlinux 0x38df8c85 ppp_dev_name +EXPORT_SYMBOL vmlinux 0x38f68b44 scsi_setup_fs_cmnd +EXPORT_SYMBOL vmlinux 0x38fb9933 tty_std_termios +EXPORT_SYMBOL vmlinux 0x39333a98 pcim_iomap +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x397f3369 pci_bus_type +EXPORT_SYMBOL vmlinux 0x3987e6e6 truncate_setsize +EXPORT_SYMBOL vmlinux 0x398c3efa filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0x39a475b9 dget_parent +EXPORT_SYMBOL vmlinux 0x39cb2ea6 dentry_open +EXPORT_SYMBOL vmlinux 0x39cdf63c wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x39f2e638 flush_old_exec +EXPORT_SYMBOL vmlinux 0x3a6d4554 __frontswap_load +EXPORT_SYMBOL vmlinux 0x3a8d042d ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x3a92dc34 mmc_flush_cache +EXPORT_SYMBOL vmlinux 0x3a9af800 fb_find_mode +EXPORT_SYMBOL vmlinux 0x3a9b6fb9 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x3ad4f8e8 d_splice_alias +EXPORT_SYMBOL vmlinux 0x3aee5422 dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0x3b191911 prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x3b31a483 of_get_min_tck +EXPORT_SYMBOL vmlinux 0x3b36fe3d pme_hw_residue_new +EXPORT_SYMBOL vmlinux 0x3b392813 blk_end_request_all +EXPORT_SYMBOL vmlinux 0x3b519feb pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0x3b615a21 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x3b7a5a16 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0x3ba1d64f ioctl_by_bdev +EXPORT_SYMBOL vmlinux 0x3bd1b1f6 msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x3bdb302b blk_queue_resize_tags +EXPORT_SYMBOL vmlinux 0x3be136b0 unload_nls +EXPORT_SYMBOL vmlinux 0x3bef03b9 flow_cache_lookup +EXPORT_SYMBOL vmlinux 0x3c260a8e genphy_update_link +EXPORT_SYMBOL vmlinux 0x3c40b21c i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0x3c652b24 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c9d1211 string_get_size +EXPORT_SYMBOL vmlinux 0x3c9e89a9 inet_frag_find +EXPORT_SYMBOL vmlinux 0x3ca3c078 dcache_dir_close +EXPORT_SYMBOL vmlinux 0x3caa6966 dev_activate +EXPORT_SYMBOL vmlinux 0x3cb38b06 notify_change +EXPORT_SYMBOL vmlinux 0x3cb3931b sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x3cc4b0dc lg_lock_init +EXPORT_SYMBOL vmlinux 0x3ccfe0b2 mutex_lock_killable +EXPORT_SYMBOL vmlinux 0x3cd411cd scsi_print_sense +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3cf5a0f8 fb_show_logo +EXPORT_SYMBOL vmlinux 0x3cf7567a mac_find_mode +EXPORT_SYMBOL vmlinux 0x3cfb3617 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x3cffd163 cur_cpu_spec +EXPORT_SYMBOL vmlinux 0x3d19911a napi_gro_receive +EXPORT_SYMBOL vmlinux 0x3d19dbfb ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0x3d1d163e vfs_path_lookup +EXPORT_SYMBOL vmlinux 0x3d1eb38c skb_copy_bits +EXPORT_SYMBOL vmlinux 0x3d41904f of_get_next_child +EXPORT_SYMBOL vmlinux 0x3d5a29ca jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0x3d60798a sock_update_memcg +EXPORT_SYMBOL vmlinux 0x3d7a8b63 agp_generic_alloc_page +EXPORT_SYMBOL vmlinux 0x3d9a53fb alloc_disk +EXPORT_SYMBOL vmlinux 0x3da3e947 pci_clear_master +EXPORT_SYMBOL vmlinux 0x3dad0ae9 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x3dae9645 blk_start_request +EXPORT_SYMBOL vmlinux 0x3db52dc0 mach_stx_gp3 +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dd8a162 dqget +EXPORT_SYMBOL vmlinux 0x3de372c8 vfs_rename +EXPORT_SYMBOL vmlinux 0x3dec21b9 input_open_device +EXPORT_SYMBOL vmlinux 0x3df594da netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e10fd54 tcf_em_register +EXPORT_SYMBOL vmlinux 0x3e14b5b9 input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0x3e3e03b0 mnt_set_expiry +EXPORT_SYMBOL vmlinux 0x3e4d223c pme_ctx_init +EXPORT_SYMBOL vmlinux 0x3e4ee09f abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x3e58cb63 bioset_create +EXPORT_SYMBOL vmlinux 0x3e882943 pcibios_align_resource +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3ea0247a generic_listxattr +EXPORT_SYMBOL vmlinux 0x3ebd4bba inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0x3ec87b09 tcp_hashinfo +EXPORT_SYMBOL vmlinux 0x3ecfb139 qdisc_watchdog_schedule_ns +EXPORT_SYMBOL vmlinux 0x3ed63055 zlib_inflateReset +EXPORT_SYMBOL vmlinux 0x3ee94600 blk_end_request +EXPORT_SYMBOL vmlinux 0x3f04aed4 clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0x3f0546a8 ioread32_rep +EXPORT_SYMBOL vmlinux 0x3f1491dc genl_unregister_family +EXPORT_SYMBOL vmlinux 0x3f20635d inet6_ioctl +EXPORT_SYMBOL vmlinux 0x3f2a1989 bitmap_end_sync +EXPORT_SYMBOL vmlinux 0x3f348e9a setup_arg_pages +EXPORT_SYMBOL vmlinux 0x3f41ca4f udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f4b1aba tcf_hash_search +EXPORT_SYMBOL vmlinux 0x3f905e68 blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0x3f9c6afc inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0x3fb1cf71 proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x3fb69d8a sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x3fd55724 of_n_size_cells +EXPORT_SYMBOL vmlinux 0x3fdda325 d_make_root +EXPORT_SYMBOL vmlinux 0x3fe0d1c0 slhc_free +EXPORT_SYMBOL vmlinux 0x3fec048f sg_next +EXPORT_SYMBOL vmlinux 0x3ff62317 local_bh_disable +EXPORT_SYMBOL vmlinux 0x3ff8069b tcf_hash_insert +EXPORT_SYMBOL vmlinux 0x3ff8e495 lg_local_unlock_cpu +EXPORT_SYMBOL vmlinux 0x402b8281 __request_module +EXPORT_SYMBOL vmlinux 0x403c15c6 pci_scan_bus_parented +EXPORT_SYMBOL vmlinux 0x403d17f2 inode_add_rsv_space +EXPORT_SYMBOL vmlinux 0x404066c5 idr_for_each +EXPORT_SYMBOL vmlinux 0x40490312 tcf_generic_walker +EXPORT_SYMBOL vmlinux 0x4050e4fe jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x4059792f print_hex_dump +EXPORT_SYMBOL vmlinux 0x405c1144 get_seconds +EXPORT_SYMBOL vmlinux 0x40621187 __bio_clone +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409d12cb neigh_ifdown +EXPORT_SYMBOL vmlinux 0x409d86fa bio_integrity_get_tag +EXPORT_SYMBOL vmlinux 0x40a27c37 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x40a2d1dd dm_table_get_size +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40b57158 pme_initfq +EXPORT_SYMBOL vmlinux 0x40b64451 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0x40beb95b gen_pool_free +EXPORT_SYMBOL vmlinux 0x40c01859 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40e68677 kobject_get +EXPORT_SYMBOL vmlinux 0x40f1ad10 tb_ticks_per_jiffy +EXPORT_SYMBOL vmlinux 0x40f2b10c ipmi_alloc_smi_msg +EXPORT_SYMBOL vmlinux 0x413398b4 vfs_mknod +EXPORT_SYMBOL vmlinux 0x41343611 register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x414a7d4b generic_fillattr +EXPORT_SYMBOL vmlinux 0x415833d0 ping_prot +EXPORT_SYMBOL vmlinux 0x4159c38f ioremap_wc +EXPORT_SYMBOL vmlinux 0x41646cd2 mdiobus_free +EXPORT_SYMBOL vmlinux 0x4168619e bman_pool_max +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x419b3e8f i2c_add_adapter +EXPORT_SYMBOL vmlinux 0x41a76a6d pci_iomap +EXPORT_SYMBOL vmlinux 0x41ac25a1 dev_remove_offload +EXPORT_SYMBOL vmlinux 0x41d1048c pagevec_lookup_tag +EXPORT_SYMBOL vmlinux 0x41d78f0b __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x41ebe920 find_get_pages_tag +EXPORT_SYMBOL vmlinux 0x41ee28c6 skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0x4211c3c1 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x421e1739 dev_get_stats +EXPORT_SYMBOL vmlinux 0x423b776a ipmi_create_user +EXPORT_SYMBOL vmlinux 0x424793d0 flush_signals +EXPORT_SYMBOL vmlinux 0x42595e58 vgacon_text_force +EXPORT_SYMBOL vmlinux 0x4287bedd mach_mpc8536_ds +EXPORT_SYMBOL vmlinux 0x42977ad4 __hw_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x42a1b208 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x42a6d338 seq_pad +EXPORT_SYMBOL vmlinux 0x42c576b6 open_exec +EXPORT_SYMBOL vmlinux 0x42c65986 qman_alloc_fqid_range +EXPORT_SYMBOL vmlinux 0x430154ae bman_irqsource_remove +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x430d9734 bio_phys_segments +EXPORT_SYMBOL vmlinux 0x4315373c __cleancache_get_page +EXPORT_SYMBOL vmlinux 0x4328ca79 elv_abort_queue +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x4355a547 blk_queue_dma_pad +EXPORT_SYMBOL vmlinux 0x4362f37f mb_cache_entry_alloc +EXPORT_SYMBOL vmlinux 0x43632d7d of_find_property +EXPORT_SYMBOL vmlinux 0x436c2179 iowrite32 +EXPORT_SYMBOL vmlinux 0x437790f1 inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x4392dfd5 skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0x43a01f90 complete_all +EXPORT_SYMBOL vmlinux 0x43ee5998 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0x43f16735 sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0x43f23311 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x43f9a67a vfs_write +EXPORT_SYMBOL vmlinux 0x4411c503 prandom_seed +EXPORT_SYMBOL vmlinux 0x4414500c sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x44366cfc simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0x44438b96 hex2bin +EXPORT_SYMBOL vmlinux 0x445e8633 __xfrm_init_state +EXPORT_SYMBOL vmlinux 0x4484c9f6 fm_mutex_lock +EXPORT_SYMBOL vmlinux 0x44857dc9 __wait_on_buffer +EXPORT_SYMBOL vmlinux 0x44b3b895 splice_from_pipe_next +EXPORT_SYMBOL vmlinux 0x44cf882c km_state_notify +EXPORT_SYMBOL vmlinux 0x44de7f8b devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0x44e3b21c security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44eb192e wait_for_completion +EXPORT_SYMBOL vmlinux 0x44ef2c80 block_write_full_page +EXPORT_SYMBOL vmlinux 0x44f5e8b5 of_allnodes +EXPORT_SYMBOL vmlinux 0x44f7929b qm_fq_new +EXPORT_SYMBOL vmlinux 0x44ffea6f kmap_high +EXPORT_SYMBOL vmlinux 0x4519dbdb elv_rq_merge_ok +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x456c2588 get_tz_trend +EXPORT_SYMBOL vmlinux 0x45744513 phy_init_eee +EXPORT_SYMBOL vmlinux 0x4575cab7 jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x45880a2d nobh_write_begin +EXPORT_SYMBOL vmlinux 0x4596db6a sys_sigreturn +EXPORT_SYMBOL vmlinux 0x45a37821 __dquot_transfer +EXPORT_SYMBOL vmlinux 0x45a6be13 cpufreq_sysfs_remove_file +EXPORT_SYMBOL vmlinux 0x45a765cf pci_add_resource +EXPORT_SYMBOL vmlinux 0x45aa14da linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x45b80d4f __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0x45be10d5 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0x45ebaedc blk_end_request_cur +EXPORT_SYMBOL vmlinux 0x45f4a727 mach_xes_mpc8548 +EXPORT_SYMBOL vmlinux 0x45f62f53 mntput +EXPORT_SYMBOL vmlinux 0x4612c59d down_trylock +EXPORT_SYMBOL vmlinux 0x461ebfa0 __copy_tofrom_user +EXPORT_SYMBOL vmlinux 0x462a2e75 match_strlcpy +EXPORT_SYMBOL vmlinux 0x46322630 dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x465cab34 secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0x46608fa0 getnstimeofday +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x46821969 tcp_sendpage +EXPORT_SYMBOL vmlinux 0x46ad5520 tcp_child_process +EXPORT_SYMBOL vmlinux 0x46c1147d qman_poll_slow +EXPORT_SYMBOL vmlinux 0x46d12956 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0x46e44abc skb_pull +EXPORT_SYMBOL vmlinux 0x46feb099 dm_read_arg +EXPORT_SYMBOL vmlinux 0x4715740a abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0x4734d773 phy_stop_interrupts +EXPORT_SYMBOL vmlinux 0x47416e14 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x475f8b68 vga_tryget +EXPORT_SYMBOL vmlinux 0x477d78f6 fd_install +EXPORT_SYMBOL vmlinux 0x47800a3b cdev_init +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x4797a272 ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x47b3f862 radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x47bcf84c param_set_ulong +EXPORT_SYMBOL vmlinux 0x47c8baf4 param_ops_uint +EXPORT_SYMBOL vmlinux 0x47ce39d4 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0x47d396b9 tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0x47ece0ed pme_ctx_ctrl_read_flow +EXPORT_SYMBOL vmlinux 0x48034724 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x481752d7 ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0x481b4155 bdi_init +EXPORT_SYMBOL vmlinux 0x481ed1ad inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0x482a2a49 param_set_charp +EXPORT_SYMBOL vmlinux 0x48404b9a remove_wait_queue +EXPORT_SYMBOL vmlinux 0x484e4849 inode_set_bytes +EXPORT_SYMBOL vmlinux 0x4851bdd4 pci_remove_bus +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x4879cf5c free_task +EXPORT_SYMBOL vmlinux 0x4880516d devm_free_irq +EXPORT_SYMBOL vmlinux 0x488e70d2 eth_mac_addr +EXPORT_SYMBOL vmlinux 0x48a771c5 cpu_core_map +EXPORT_SYMBOL vmlinux 0x48c6db53 of_get_child_by_name +EXPORT_SYMBOL vmlinux 0x48d90ed6 blk_integrity_register +EXPORT_SYMBOL vmlinux 0x48d9cb4a netpoll_setup +EXPORT_SYMBOL vmlinux 0x48dc9c25 blk_stop_queue +EXPORT_SYMBOL vmlinux 0x48e1b2fd init_special_inode +EXPORT_SYMBOL vmlinux 0x48e31f57 mach_ge_imp3a +EXPORT_SYMBOL vmlinux 0x48fabfbf gen_new_estimator +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x49088c53 pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0x492aef19 from_kgid +EXPORT_SYMBOL vmlinux 0x49573188 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0x4959e07b key_link +EXPORT_SYMBOL vmlinux 0x495c96f8 posix_acl_init +EXPORT_SYMBOL vmlinux 0x49603fb8 security_sb_copy_data +EXPORT_SYMBOL vmlinux 0x497022d4 blk_recount_segments +EXPORT_SYMBOL vmlinux 0x499a86c4 serio_unregister_port +EXPORT_SYMBOL vmlinux 0x49b07aec tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x49dc6303 find_lock_page +EXPORT_SYMBOL vmlinux 0x49e4a5cb input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0x49fb5fe8 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0x4a01fcfd kernel_getsockopt +EXPORT_SYMBOL vmlinux 0x4a058675 dump_align +EXPORT_SYMBOL vmlinux 0x4a09591e dev_mc_flush +EXPORT_SYMBOL vmlinux 0x4a09c881 nf_register_sockopt +EXPORT_SYMBOL vmlinux 0x4a30e501 task_tgid_nr_ns +EXPORT_SYMBOL vmlinux 0x4a358252 __bitmap_subset +EXPORT_SYMBOL vmlinux 0x4a5d93c5 uart_add_one_port +EXPORT_SYMBOL vmlinux 0x4ab3f406 dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x4ac788cb alloc_mdio_bitbang +EXPORT_SYMBOL vmlinux 0x4acd93d3 release_resource +EXPORT_SYMBOL vmlinux 0x4ae16ec3 jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0x4afe9a77 scsi_partsize +EXPORT_SYMBOL vmlinux 0x4b085dbf agp3_generic_configure +EXPORT_SYMBOL vmlinux 0x4b098216 pci_disable_msix +EXPORT_SYMBOL vmlinux 0x4b1ec3e2 kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x4b34fbf5 block_all_signals +EXPORT_SYMBOL vmlinux 0x4b42a510 kernel_getpeername +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b7ed27b sleep_on +EXPORT_SYMBOL vmlinux 0x4baf6416 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0x4bcbed09 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0x4be85a03 memweight +EXPORT_SYMBOL vmlinux 0x4c0c0e55 generic_readlink +EXPORT_SYMBOL vmlinux 0x4c11435a _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0x4c1182cb bitmap_scnprintf +EXPORT_SYMBOL vmlinux 0x4c120a38 vfs_create +EXPORT_SYMBOL vmlinux 0x4c1c9253 ip_fragment +EXPORT_SYMBOL vmlinux 0x4c2ae700 strnstr +EXPORT_SYMBOL vmlinux 0x4c2c6245 generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0x4c360e4b sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x4c3b7b6a generic_make_request +EXPORT_SYMBOL vmlinux 0x4c5427f4 skb_store_bits +EXPORT_SYMBOL vmlinux 0x4c75e450 inode_reclaim_rsv_space +EXPORT_SYMBOL vmlinux 0x4c903075 handle_edge_irq +EXPORT_SYMBOL vmlinux 0x4c971bec ipmi_smi_msg_received +EXPORT_SYMBOL vmlinux 0x4c9fa03b elv_rb_del +EXPORT_SYMBOL vmlinux 0x4ca8c6f1 agp_generic_mask_memory +EXPORT_SYMBOL vmlinux 0x4cbbd171 __bitmap_weight +EXPORT_SYMBOL vmlinux 0x4cda02a2 lookup_one_len +EXPORT_SYMBOL vmlinux 0x4cdb3178 ns_to_timeval +EXPORT_SYMBOL vmlinux 0x4ce02080 tcp_gro_complete +EXPORT_SYMBOL vmlinux 0x4cfac698 elevator_init +EXPORT_SYMBOL vmlinux 0x4d017cef nf_log_unregister +EXPORT_SYMBOL vmlinux 0x4d14667c tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0x4d21a27c devm_gpio_free +EXPORT_SYMBOL vmlinux 0x4d3c153f sigprocmask +EXPORT_SYMBOL vmlinux 0x4d3c6123 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x4d45d89e udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x4d5c32ec check_disk_change +EXPORT_SYMBOL vmlinux 0x4d6daf93 blk_init_queue +EXPORT_SYMBOL vmlinux 0x4d71004a __cpm2_setbrg +EXPORT_SYMBOL vmlinux 0x4d75110a eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0x4d8b97d9 eth_header +EXPORT_SYMBOL vmlinux 0x4d974b9c register_sysrq_key +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4d9dcda5 qman_fqid_pool_destroy +EXPORT_SYMBOL vmlinux 0x4da7c931 rwsem_downgrade_wake +EXPORT_SYMBOL vmlinux 0x4de32cab devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x4de34a07 cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x4dec6038 memscan +EXPORT_SYMBOL vmlinux 0x4df119fa __bitmap_parse +EXPORT_SYMBOL vmlinux 0x4df50091 d_path +EXPORT_SYMBOL vmlinux 0x4dfed71c flex_array_get_ptr +EXPORT_SYMBOL vmlinux 0x4e12b8b3 contig_page_data +EXPORT_SYMBOL vmlinux 0x4e2b7602 ata_link_printk +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e44ab51 register_cdrom +EXPORT_SYMBOL vmlinux 0x4e5165e5 of_find_device_by_node +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e6fbfbe qdisc_destroy +EXPORT_SYMBOL vmlinux 0x4e720481 xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0x4e74352a pcim_pin_device +EXPORT_SYMBOL vmlinux 0x4e786d13 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x4e7dcfab vfs_link +EXPORT_SYMBOL vmlinux 0x4e830a3e strnicmp +EXPORT_SYMBOL vmlinux 0x4e9dffb5 ip_fast_csum +EXPORT_SYMBOL vmlinux 0x4eb0d947 i8042_install_filter +EXPORT_SYMBOL vmlinux 0x4ed53dce pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0x4ed7cbf1 writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0x4edb9c23 sk_run_filter +EXPORT_SYMBOL vmlinux 0x4ee528e2 d_find_any_alias +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f221b82 pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0x4f248523 of_find_node_by_name +EXPORT_SYMBOL vmlinux 0x4f391d0e nla_parse +EXPORT_SYMBOL vmlinux 0x4f68e5c9 do_gettimeofday +EXPORT_SYMBOL vmlinux 0x4f696e73 sg_miter_next +EXPORT_SYMBOL vmlinux 0x4f9bfc8d splice_from_pipe_begin +EXPORT_SYMBOL vmlinux 0x4fabbf39 pcie_get_minimum_link +EXPORT_SYMBOL vmlinux 0x4fb52ff9 sock_setsockopt +EXPORT_SYMBOL vmlinux 0x4fbc7f04 dquot_drop +EXPORT_SYMBOL vmlinux 0x4fd53b98 __breadahead +EXPORT_SYMBOL vmlinux 0x4fda5fd9 netif_device_attach +EXPORT_SYMBOL vmlinux 0x4fdee897 i8042_command +EXPORT_SYMBOL vmlinux 0x4fe0d785 blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0x4fe99583 atomic64_dec_if_positive +EXPORT_SYMBOL vmlinux 0x4fec7c48 scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x500cc4b3 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x50306254 __devcgroup_inode_permission +EXPORT_SYMBOL vmlinux 0x50384baf vgacon_remap_base +EXPORT_SYMBOL vmlinux 0x50840aac cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0x509817cf vprintk_emit +EXPORT_SYMBOL vmlinux 0x50ae7d80 __idr_pre_get +EXPORT_SYMBOL vmlinux 0x50c70264 xfrm_unregister_mode +EXPORT_SYMBOL vmlinux 0x50cde8cc lock_sock_nested +EXPORT_SYMBOL vmlinux 0x50d000a0 devfreq_resume_device +EXPORT_SYMBOL vmlinux 0x50d45e03 mmc_erase +EXPORT_SYMBOL vmlinux 0x5102b921 i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0x510efd22 brioctl_set +EXPORT_SYMBOL vmlinux 0x5118c382 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0x51556688 dev_get_flags +EXPORT_SYMBOL vmlinux 0x515e24a7 flush_instruction_cache +EXPORT_SYMBOL vmlinux 0x517f356e netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0x518fca0b twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0x519b0da3 finish_wait +EXPORT_SYMBOL vmlinux 0x51a68891 blk_bio_map_sg +EXPORT_SYMBOL vmlinux 0x51c25c62 mach_p1024_rdb +EXPORT_SYMBOL vmlinux 0x51c93ad0 fm_get_rtc_handle +EXPORT_SYMBOL vmlinux 0x51d2bb87 touch_buffer +EXPORT_SYMBOL vmlinux 0x51dce73b xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x51df0651 netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0x51ecac66 dentry_path_raw +EXPORT_SYMBOL vmlinux 0x51ef33b8 kstrndup +EXPORT_SYMBOL vmlinux 0x52026cdf security_sb_parse_opts_str +EXPORT_SYMBOL vmlinux 0x521b36b5 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0x521e19cd block_commit_write +EXPORT_SYMBOL vmlinux 0x522924c7 jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0x522dcd0a input_register_device +EXPORT_SYMBOL vmlinux 0x52428cc8 parent_mem_cgroup +EXPORT_SYMBOL vmlinux 0x524f6f51 ipmi_get_my_address +EXPORT_SYMBOL vmlinux 0x5253c8e5 twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0x525a189d pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x528c709d simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x52978464 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0x52f1a6e4 dev_addr_init +EXPORT_SYMBOL vmlinux 0x52f98ac9 i2c_register_driver +EXPORT_SYMBOL vmlinux 0x52feddf2 bio_integrity_enabled +EXPORT_SYMBOL vmlinux 0x532c86a0 dev_load +EXPORT_SYMBOL vmlinux 0x53326531 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x533a792f mutex_lock +EXPORT_SYMBOL vmlinux 0x533e5bd8 blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x5348fe19 dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0x53621d14 mount_ns +EXPORT_SYMBOL vmlinux 0x539d86ac sock_edemux +EXPORT_SYMBOL vmlinux 0x53ab24a6 pci_add_new_bus +EXPORT_SYMBOL vmlinux 0x53ad6997 xfrm_init_state +EXPORT_SYMBOL vmlinux 0x53ae85d8 update_region +EXPORT_SYMBOL vmlinux 0x53b342eb scsi_block_requests +EXPORT_SYMBOL vmlinux 0x53bb01e2 vm_stat +EXPORT_SYMBOL vmlinux 0x53ebab1b _outsl_ns +EXPORT_SYMBOL vmlinux 0x53f4ee85 udp_add_offload +EXPORT_SYMBOL vmlinux 0x53f9dc16 tty_name +EXPORT_SYMBOL vmlinux 0x5409775b free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x540a7c18 devm_gpiod_get +EXPORT_SYMBOL vmlinux 0x540dab2f loop_register_transfer +EXPORT_SYMBOL vmlinux 0x5412c7c7 up +EXPORT_SYMBOL vmlinux 0x541e8bad cdrom_release +EXPORT_SYMBOL vmlinux 0x5434ca8e mb_cache_entry_release +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x543f2866 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x5448d66b tcf_exts_change +EXPORT_SYMBOL vmlinux 0x544f46a7 cpufreq_global_kobject +EXPORT_SYMBOL vmlinux 0x548cb517 bman_poll +EXPORT_SYMBOL vmlinux 0x549574d0 xfrm6_prepare_output +EXPORT_SYMBOL vmlinux 0x5499d2a2 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0x54a58ab4 mdiobus_register +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54b1a301 tty_do_resize +EXPORT_SYMBOL vmlinux 0x54c9dc8e qman_fq_fqid +EXPORT_SYMBOL vmlinux 0x54e0ac12 __skb_gso_segment +EXPORT_SYMBOL vmlinux 0x54e3cc3b param_get_int +EXPORT_SYMBOL vmlinux 0x54e461ce eth_header_parse +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54fddfcc unregister_binfmt +EXPORT_SYMBOL vmlinux 0x5502cae7 tty_port_close_start +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x551ffb5f pci_get_device +EXPORT_SYMBOL vmlinux 0x5541ea93 on_each_cpu +EXPORT_SYMBOL vmlinux 0x5543a2fc netif_carrier_off +EXPORT_SYMBOL vmlinux 0x5549253a tcf_hash_destroy +EXPORT_SYMBOL vmlinux 0x556410c4 blk_queue_make_request +EXPORT_SYMBOL vmlinux 0x5567c227 kernel_cpustat +EXPORT_SYMBOL vmlinux 0x5568c553 complete +EXPORT_SYMBOL vmlinux 0x556c2740 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x5575b54c mmc_can_erase +EXPORT_SYMBOL vmlinux 0x5577ef9e udp_table +EXPORT_SYMBOL vmlinux 0x55846fe8 netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x558a60a5 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x5590dadc abort_creds +EXPORT_SYMBOL vmlinux 0x5594be03 bitmap_remap +EXPORT_SYMBOL vmlinux 0x55b20ff2 fsnotify_get_group +EXPORT_SYMBOL vmlinux 0x55c00745 dquot_destroy +EXPORT_SYMBOL vmlinux 0x55c77471 devm_gpiod_put +EXPORT_SYMBOL vmlinux 0x55ca003f neigh_seq_next +EXPORT_SYMBOL vmlinux 0x55cff59c dev_addr_flush +EXPORT_SYMBOL vmlinux 0x55fb072c security_path_truncate +EXPORT_SYMBOL vmlinux 0x56138c9b page_symlink +EXPORT_SYMBOL vmlinux 0x5614b010 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x562fd418 sb_set_blocksize +EXPORT_SYMBOL vmlinux 0x5632898e ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x56365c05 pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0x5642793a radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x5642e466 inode_dio_wait +EXPORT_SYMBOL vmlinux 0x56590436 mach_p1022_rdk +EXPORT_SYMBOL vmlinux 0x56803a4e input_get_keycode +EXPORT_SYMBOL vmlinux 0x56a10763 csum_tcpudp_magic +EXPORT_SYMBOL vmlinux 0x56a22d9d __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x56a302e7 inet_add_protocol +EXPORT_SYMBOL vmlinux 0x56a66942 phy_driver_unregister +EXPORT_SYMBOL vmlinux 0x56a7a1e0 blk_start_queue +EXPORT_SYMBOL vmlinux 0x56c463dc simple_transaction_release +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x57115441 nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0x5713b3cb icmpv6_send +EXPORT_SYMBOL vmlinux 0x5723efbb balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0x572e85d4 blk_lookup_devt +EXPORT_SYMBOL vmlinux 0x573a46c2 dm_unregister_target +EXPORT_SYMBOL vmlinux 0x574576ef pci_enable_msix +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x575af70c on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x5778678b elevator_exit +EXPORT_SYMBOL vmlinux 0x5785384a flex_array_free_parts +EXPORT_SYMBOL vmlinux 0x5786eb88 kill_bdev +EXPORT_SYMBOL vmlinux 0x57886d59 xfrm_cfg_mutex +EXPORT_SYMBOL vmlinux 0x579f65c8 pme_fd_cmd_fcr +EXPORT_SYMBOL vmlinux 0x579fbcd2 cpu_possible_mask +EXPORT_SYMBOL vmlinux 0x57ded72f nf_setsockopt +EXPORT_SYMBOL vmlinux 0x580bcf80 register_console +EXPORT_SYMBOL vmlinux 0x5810e582 fs_bio_set +EXPORT_SYMBOL vmlinux 0x5814e055 bm_pool_free +EXPORT_SYMBOL vmlinux 0x582a4747 cacheable_memcpy +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x583e766b rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0x5857b225 ioread16_rep +EXPORT_SYMBOL vmlinux 0x58623807 proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0x58655f38 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x587616f1 vfs_fstatat +EXPORT_SYMBOL vmlinux 0x5877d8ef qman_static_dequeue_add +EXPORT_SYMBOL vmlinux 0x588477fa blk_mq_free_queue +EXPORT_SYMBOL vmlinux 0x588a3f86 do_splice_direct +EXPORT_SYMBOL vmlinux 0x58a2756a devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x58c1b16c blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0x58d1070a of_get_address +EXPORT_SYMBOL vmlinux 0x58f27719 netdev_master_upper_dev_link_private +EXPORT_SYMBOL vmlinux 0x591241d0 register_sysctl_table +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x595d0946 empty_zero_page +EXPORT_SYMBOL vmlinux 0x5963a6c8 __nla_reserve +EXPORT_SYMBOL vmlinux 0x5993179c sock_from_file +EXPORT_SYMBOL vmlinux 0x59a2a09f bitmap_unplug +EXPORT_SYMBOL vmlinux 0x59af2d11 __get_user_pages +EXPORT_SYMBOL vmlinux 0x59b3378a completion_done +EXPORT_SYMBOL vmlinux 0x59e66ca8 d_validate +EXPORT_SYMBOL vmlinux 0x59f4e4d2 __module_get +EXPORT_SYMBOL vmlinux 0x59fb7284 i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0x5a23cda1 jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x5a2f90fa of_gpio_simple_xlate +EXPORT_SYMBOL vmlinux 0x5a36523e pme_ctx_ctrl_nop +EXPORT_SYMBOL vmlinux 0x5a5536c2 param_ops_invbool +EXPORT_SYMBOL vmlinux 0x5a84ea43 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x5a8c4eb2 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0x5a8cf462 nlmsg_notify +EXPORT_SYMBOL vmlinux 0x5a9665f3 get_fs_type +EXPORT_SYMBOL vmlinux 0x5ab67931 do_IRQ +EXPORT_SYMBOL vmlinux 0x5ab909f5 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0x5abc36da qdisc_reset +EXPORT_SYMBOL vmlinux 0x5ad72c9e tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0x5b19634d div_s64_rem +EXPORT_SYMBOL vmlinux 0x5b28d3f1 dma_async_device_register +EXPORT_SYMBOL vmlinux 0x5b36a4f5 blkdev_put +EXPORT_SYMBOL vmlinux 0x5b39988e ftrace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0x5b54cd2e swiotlb_sync_single_for_device +EXPORT_SYMBOL vmlinux 0x5b69640b abx500_register_ops +EXPORT_SYMBOL vmlinux 0x5b9828c5 dma_spin_lock +EXPORT_SYMBOL vmlinux 0x5bdc60af mb_cache_create +EXPORT_SYMBOL vmlinux 0x5bf63794 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x5c350bb7 gen10g_read_status +EXPORT_SYMBOL vmlinux 0x5c37f319 _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x5c462530 blk_get_backing_dev_info +EXPORT_SYMBOL vmlinux 0x5c4ec416 get_io_context +EXPORT_SYMBOL vmlinux 0x5c5e90f5 __pskb_copy +EXPORT_SYMBOL vmlinux 0x5c73e9a6 sg_miter_stop +EXPORT_SYMBOL vmlinux 0x5c99eecb phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x5cace417 posix_test_lock +EXPORT_SYMBOL vmlinux 0x5ccd4903 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0x5ccdbd61 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0x5ce5e06b __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0x5cef90f2 dcache_dir_open +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5d04f25f dquot_operations +EXPORT_SYMBOL vmlinux 0x5d19594d mmc_gpio_free_ro +EXPORT_SYMBOL vmlinux 0x5d37a3b0 freezing_slow_path +EXPORT_SYMBOL vmlinux 0x5d41c87c param_ops_charp +EXPORT_SYMBOL vmlinux 0x5d550c4d scsi_sd_probe_domain +EXPORT_SYMBOL vmlinux 0x5d58c028 set_anon_super +EXPORT_SYMBOL vmlinux 0x5d58efa0 convert_ifc_address +EXPORT_SYMBOL vmlinux 0x5d5b5a16 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x5d6bdce1 flex_array_alloc +EXPORT_SYMBOL vmlinux 0x5d6f856b ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x5dc4fe03 phy_register_fixup +EXPORT_SYMBOL vmlinux 0x5dfe1da9 dev_set_group +EXPORT_SYMBOL vmlinux 0x5e15425b tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0x5e27321b register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x5e3a8a9c __wake_up +EXPORT_SYMBOL vmlinux 0x5e5504b1 replace_mount_options +EXPORT_SYMBOL vmlinux 0x5e65f612 bio_integrity_advance +EXPORT_SYMBOL vmlinux 0x5e7da774 dev_alert +EXPORT_SYMBOL vmlinux 0x5e80f37c ipmi_unregister_for_cmd +EXPORT_SYMBOL vmlinux 0x5e949c70 tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5eb0401e proc_dostring +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ec4907f search_binary_handler +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5efb20cc bio_add_page +EXPORT_SYMBOL vmlinux 0x5f005368 kstrtou8 +EXPORT_SYMBOL vmlinux 0x5f024032 blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f28c2dc idr_remove +EXPORT_SYMBOL vmlinux 0x5f39a68e inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x5f3c8f5c mmc_assume_removable +EXPORT_SYMBOL vmlinux 0x5f4db9dc gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0x5f576485 pci_write_vpd +EXPORT_SYMBOL vmlinux 0x5f677d6d simple_statfs +EXPORT_SYMBOL vmlinux 0x5f6bb181 seq_putc +EXPORT_SYMBOL vmlinux 0x5f7434ba __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x5f747579 empty_aops +EXPORT_SYMBOL vmlinux 0x5f754e5a memset +EXPORT_SYMBOL vmlinux 0x5f8a2728 isa_io_base +EXPORT_SYMBOL vmlinux 0x5fa1c465 blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0x5fb93880 mddev_congested +EXPORT_SYMBOL vmlinux 0x5fcdcc05 ipmi_get_my_LUN +EXPORT_SYMBOL vmlinux 0x5fda0227 vfs_stat +EXPORT_SYMBOL vmlinux 0x5fe696a7 pci_iounmap +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x6041431a d_rehash +EXPORT_SYMBOL vmlinux 0x604b1ed5 dm_get_device +EXPORT_SYMBOL vmlinux 0x60653be8 ip_getsockopt +EXPORT_SYMBOL vmlinux 0x6067ea13 agp_unbind_memory +EXPORT_SYMBOL vmlinux 0x606d0b09 secure_tcpv6_sequence_number +EXPORT_SYMBOL vmlinux 0x6086fae9 rwsem_wake +EXPORT_SYMBOL vmlinux 0x609b926d do_splice_from +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a5caa1 udp_poll +EXPORT_SYMBOL vmlinux 0x60b86f61 sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x60c72dc7 tty_port_put +EXPORT_SYMBOL vmlinux 0x60cd8ed8 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0x60de3107 sock_no_listen +EXPORT_SYMBOL vmlinux 0x60df1e3b posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x60fc50d5 tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x60fc5c6c xfrm_state_update +EXPORT_SYMBOL vmlinux 0x610b8ee2 mmc_power_save_host +EXPORT_SYMBOL vmlinux 0x610d186b pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0x612283d2 __neigh_create +EXPORT_SYMBOL vmlinux 0x612390ad netpoll_set_trap +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x61337cac flush_tlb_mm +EXPORT_SYMBOL vmlinux 0x613fb610 d_drop +EXPORT_SYMBOL vmlinux 0x61538ad0 param_get_charp +EXPORT_SYMBOL vmlinux 0x6156b780 inet_dgram_ops +EXPORT_SYMBOL vmlinux 0x61994fde phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x61b42383 init_task +EXPORT_SYMBOL vmlinux 0x61b4c268 bman_poll_slow +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61bc8d63 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0x61c2f4e7 skb_clone +EXPORT_SYMBOL vmlinux 0x61db3354 mach_tqm85xx +EXPORT_SYMBOL vmlinux 0x61e341c3 bioset_integrity_free +EXPORT_SYMBOL vmlinux 0x61eb79b4 pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0x61eef2c9 _insb +EXPORT_SYMBOL vmlinux 0x61efcd78 of_phy_attach +EXPORT_SYMBOL vmlinux 0x61f37ab7 ip6_xmit +EXPORT_SYMBOL vmlinux 0x61fdc48a gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x6225637e md5_transform +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x6239d293 dev_disable_lro +EXPORT_SYMBOL vmlinux 0x62538167 slhc_toss +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x6278f975 netdev_crit +EXPORT_SYMBOL vmlinux 0x62822d05 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x62827bec security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x62860fb1 pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0x6297eb7e register_framebuffer +EXPORT_SYMBOL vmlinux 0x62c14944 __scm_send +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x631e9207 mapping_tagged +EXPORT_SYMBOL vmlinux 0x63231951 gen_pool_create +EXPORT_SYMBOL vmlinux 0x6323afb9 lro_flush_pkt +EXPORT_SYMBOL vmlinux 0x6330d08a security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x6336c3d5 blk_mq_can_queue +EXPORT_SYMBOL vmlinux 0x634d8020 qman_enqueue_orp +EXPORT_SYMBOL vmlinux 0x638bdb58 pci_find_bus +EXPORT_SYMBOL vmlinux 0x639ca681 blk_init_queue_node +EXPORT_SYMBOL vmlinux 0x639d8a80 km_policy_expired +EXPORT_SYMBOL vmlinux 0x63bbb51d splice_from_pipe_feed +EXPORT_SYMBOL vmlinux 0x63cc6c52 pme_map_error +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63ec0fb5 pci_platform_rom +EXPORT_SYMBOL vmlinux 0x63f00f44 igrab +EXPORT_SYMBOL vmlinux 0x63fc232f strlen_user +EXPORT_SYMBOL vmlinux 0x6403e338 tcp_memory_pressure +EXPORT_SYMBOL vmlinux 0x642851e6 skb_orphan_partial +EXPORT_SYMBOL vmlinux 0x642fef5a nla_append +EXPORT_SYMBOL vmlinux 0x6469c0f9 generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0x647c66d4 mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0x647c7091 scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x649e12ca security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x64a168da deactivate_locked_super +EXPORT_SYMBOL vmlinux 0x64a4b84d cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x64e0e0b7 netdev_change_features +EXPORT_SYMBOL vmlinux 0x64e64ade sync_blockdev +EXPORT_SYMBOL vmlinux 0x650d1431 bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651a2b8b page_address +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x652fafeb inode_dio_done +EXPORT_SYMBOL vmlinux 0x65400222 __irq_offset_value +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x6565d33f scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x656ded60 path_put +EXPORT_SYMBOL vmlinux 0x6585e310 alloc_pages_exact_nid +EXPORT_SYMBOL vmlinux 0x6594a28b tc_classify_compat +EXPORT_SYMBOL vmlinux 0x65b220bd dev_mc_sync +EXPORT_SYMBOL vmlinux 0x65bb58a2 _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x65c9e813 abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0x65d0b5ca poll_schedule_timeout +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65ed8713 napi_complete +EXPORT_SYMBOL vmlinux 0x65f3ad9a fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x65f72dcd phy_connect_direct +EXPORT_SYMBOL vmlinux 0x6624637f vm_map_ram +EXPORT_SYMBOL vmlinux 0x662b8c2c sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x662e5d59 mutex_trylock +EXPORT_SYMBOL vmlinux 0x66313fae netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0x66484649 scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0x6671f7fa padata_do_parallel +EXPORT_SYMBOL vmlinux 0x668da8d5 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x66af4e8d seq_write +EXPORT_SYMBOL vmlinux 0x66ba72cf phy_scan_fixups +EXPORT_SYMBOL vmlinux 0x66ec2732 key_put +EXPORT_SYMBOL vmlinux 0x66eeabc2 generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x66fc4283 dev_change_carrier +EXPORT_SYMBOL vmlinux 0x670c0840 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0x671bd4e8 fb_validate_mode +EXPORT_SYMBOL vmlinux 0x673f815e agp_bridges +EXPORT_SYMBOL vmlinux 0x67426eb3 fm_get_mem_region +EXPORT_SYMBOL vmlinux 0x675b1fc2 bman_get_portal_config +EXPORT_SYMBOL vmlinux 0x675b8f61 param_get_string +EXPORT_SYMBOL vmlinux 0x676a20c6 inc_nlink +EXPORT_SYMBOL vmlinux 0x676bc06f tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0x6771945d alloc_buffer_head +EXPORT_SYMBOL vmlinux 0x677c18c7 ll_rw_block +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67be2902 elevator_change +EXPORT_SYMBOL vmlinux 0x67cb9784 ipmi_poll_interface +EXPORT_SYMBOL vmlinux 0x67d71a44 vm_event_states +EXPORT_SYMBOL vmlinux 0x681a6c83 max8998_update_reg +EXPORT_SYMBOL vmlinux 0x6821ddc4 pci_enable_msi_block_auto +EXPORT_SYMBOL vmlinux 0x68319642 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0x683a77b6 scsi_get_command +EXPORT_SYMBOL vmlinux 0x6849a15f flex_array_clear +EXPORT_SYMBOL vmlinux 0x68609857 complete_and_exit +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x688126c9 tty_vhangup +EXPORT_SYMBOL vmlinux 0x68886cbf skb_insert +EXPORT_SYMBOL vmlinux 0x6888c964 tcp_recvmsg +EXPORT_SYMBOL vmlinux 0x6889416c sock_wmalloc +EXPORT_SYMBOL vmlinux 0x68a1cc9d twl6040_set_pll +EXPORT_SYMBOL vmlinux 0x68afac34 scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x68b02d7d dquot_enable +EXPORT_SYMBOL vmlinux 0x68b83ac6 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x68e05d57 getrawmonotonic +EXPORT_SYMBOL vmlinux 0x693373d3 fb_class +EXPORT_SYMBOL vmlinux 0x694094ac make_kuid +EXPORT_SYMBOL vmlinux 0x69594bce __dev_remove_offload +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x69a0ca7d iowrite16be +EXPORT_SYMBOL vmlinux 0x69a358a6 iomem_resource +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69cf1ff1 scsi_cmd_get_serial +EXPORT_SYMBOL vmlinux 0x69d38ed9 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x69d7e5b8 __debugger_ipi +EXPORT_SYMBOL vmlinux 0x69db329b blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0x69e27c7a bitmap_copy_le +EXPORT_SYMBOL vmlinux 0x69f1648b starget_for_each_device +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a3f4119 mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0x6a403e80 bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x6a43dd6c tcp_make_synack +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a61f874 to_tm +EXPORT_SYMBOL vmlinux 0x6a740c54 gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x6a76e1b7 __lock_page +EXPORT_SYMBOL vmlinux 0x6a76f3ac blk_iopoll_enable +EXPORT_SYMBOL vmlinux 0x6a80a3f5 cpm_muram_free +EXPORT_SYMBOL vmlinux 0x6a9c3b0f xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x6ac1e8f2 dev_mc_unsync +EXPORT_SYMBOL vmlinux 0x6acb973d iowrite32be +EXPORT_SYMBOL vmlinux 0x6ad5d990 dentry_update_name_case +EXPORT_SYMBOL vmlinux 0x6af5e50e blk_mq_alloc_single_hw_queue +EXPORT_SYMBOL vmlinux 0x6b00cc1a nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0x6b06fdce delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x6b1959ee jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0x6b1b67d3 __bdevname +EXPORT_SYMBOL vmlinux 0x6b2716a8 submit_bio +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b330236 clk_add_alias +EXPORT_SYMBOL vmlinux 0x6b336b9e serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0x6b35808a dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x6b36b8a0 dquot_release +EXPORT_SYMBOL vmlinux 0x6b7f1917 idr_find_slowpath +EXPORT_SYMBOL vmlinux 0x6b7f21ff mmc_remove_host +EXPORT_SYMBOL vmlinux 0x6ba8698c ps2_handle_ack +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bceaebc gen_replace_estimator +EXPORT_SYMBOL vmlinux 0x6bd59ae3 alloc_file +EXPORT_SYMBOL vmlinux 0x6bdcfd99 qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x6beb2078 param_set_copystring +EXPORT_SYMBOL vmlinux 0x6c0a2999 proc_set_user +EXPORT_SYMBOL vmlinux 0x6c0b4510 framebuffer_release +EXPORT_SYMBOL vmlinux 0x6c0c0bf0 read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x6c1a0daf tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x6c1ce5ce strcspn +EXPORT_SYMBOL vmlinux 0x6c2faee3 clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x6c3c047e pme_ctx_exclusive_inc +EXPORT_SYMBOL vmlinux 0x6c41f3e2 phy_drivers_register +EXPORT_SYMBOL vmlinux 0x6c51a836 sysctl_tcp_notsent_lowat +EXPORT_SYMBOL vmlinux 0x6c549273 generic_block_bmap +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c665691 flex_array_shrink +EXPORT_SYMBOL vmlinux 0x6c683a39 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0x6c6b4d88 account_page_redirty +EXPORT_SYMBOL vmlinux 0x6c702af7 sysctl_udp_rmem_min +EXPORT_SYMBOL vmlinux 0x6c7abf8c generic_pipe_buf_steal +EXPORT_SYMBOL vmlinux 0x6c8f041a tcp_close +EXPORT_SYMBOL vmlinux 0x6ca1d1a4 atomic64_read +EXPORT_SYMBOL vmlinux 0x6ca3873a netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0x6ca5b0f8 __net_get_random_once +EXPORT_SYMBOL vmlinux 0x6cdc5c6b nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6ce6af4d vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0x6ce91989 vfs_setpos +EXPORT_SYMBOL vmlinux 0x6ceb99fe __elv_add_request +EXPORT_SYMBOL vmlinux 0x6cecbe1d fget +EXPORT_SYMBOL vmlinux 0x6d0f1f89 dm_table_get_mode +EXPORT_SYMBOL vmlinux 0x6d11c503 sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x6d27eacf phy_device_free +EXPORT_SYMBOL vmlinux 0x6d27ef64 __bitmap_empty +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d344d39 drop_super +EXPORT_SYMBOL vmlinux 0x6d369c67 fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0x6d4e1d8a blk_get_queue +EXPORT_SYMBOL vmlinux 0x6d722f18 input_reset_device +EXPORT_SYMBOL vmlinux 0x6d98af30 phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0x6da928f4 _insw_ns +EXPORT_SYMBOL vmlinux 0x6dc2d2cb dev_crit +EXPORT_SYMBOL vmlinux 0x6dcebf9d __kfree_skb +EXPORT_SYMBOL vmlinux 0x6dd17085 single_open +EXPORT_SYMBOL vmlinux 0x6def2db2 half_md4_transform +EXPORT_SYMBOL vmlinux 0x6e055e00 generic_pipe_buf_unmap +EXPORT_SYMBOL vmlinux 0x6e12f93a register_qdisc +EXPORT_SYMBOL vmlinux 0x6e23324e mmc_can_discard +EXPORT_SYMBOL vmlinux 0x6e236c0f agp_generic_destroy_pages +EXPORT_SYMBOL vmlinux 0x6e379526 kernstart_addr +EXPORT_SYMBOL vmlinux 0x6e4a74c5 bio_pair_release +EXPORT_SYMBOL vmlinux 0x6e631a15 swiotlb_dma_mapping_error +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e764332 idr_destroy +EXPORT_SYMBOL vmlinux 0x6e86f56d pagecache_write_begin +EXPORT_SYMBOL vmlinux 0x6e9ca4a9 dma_find_channel +EXPORT_SYMBOL vmlinux 0x6eb74dff proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x6ebc5149 param_ops_long +EXPORT_SYMBOL vmlinux 0x6ebe8fc5 key_reject_and_link +EXPORT_SYMBOL vmlinux 0x6ee447b0 request_key +EXPORT_SYMBOL vmlinux 0x6ef8bb61 dma_async_memcpy_buf_to_buf +EXPORT_SYMBOL vmlinux 0x6f20960a full_name_hash +EXPORT_SYMBOL vmlinux 0x6f2639d0 blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x6f268538 bman_acquire +EXPORT_SYMBOL vmlinux 0x6f31e61e bmap +EXPORT_SYMBOL vmlinux 0x6f3d4008 console_start +EXPORT_SYMBOL vmlinux 0x6f5e48e7 rt6_lookup +EXPORT_SYMBOL vmlinux 0x6f85b211 ida_remove +EXPORT_SYMBOL vmlinux 0x6f8bb19d block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x6f958122 __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0x6fb1c19d __cleancache_put_page +EXPORT_SYMBOL vmlinux 0x6fb4dc4f jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6ff4c2bf input_set_abs_params +EXPORT_SYMBOL vmlinux 0x6ffdb971 scsi_adjust_queue_depth +EXPORT_SYMBOL vmlinux 0x702008b9 bdi_setup_and_register +EXPORT_SYMBOL vmlinux 0x702698d1 create_empty_buffers +EXPORT_SYMBOL vmlinux 0x7045dea9 qman_modify_cgr +EXPORT_SYMBOL vmlinux 0x7049162c scsi_remove_device +EXPORT_SYMBOL vmlinux 0x70523a7a __cond_resched_softirq +EXPORT_SYMBOL vmlinux 0x7054a3e4 request_dma +EXPORT_SYMBOL vmlinux 0x707f43f6 __ctzdi2 +EXPORT_SYMBOL vmlinux 0x70b20dd4 netdev_features_change +EXPORT_SYMBOL vmlinux 0x70b86a2e security_path_chown +EXPORT_SYMBOL vmlinux 0x70b9d27c skb_queue_purge +EXPORT_SYMBOL vmlinux 0x70bc17d7 inode_wait +EXPORT_SYMBOL vmlinux 0x70c717b0 ipv6_push_nfrag_opts +EXPORT_SYMBOL vmlinux 0x70d053fd try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x70d5e1ff abx500_remove_ops +EXPORT_SYMBOL vmlinux 0x70d888b7 __debugger_fault_handler +EXPORT_SYMBOL vmlinux 0x710f41a1 tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x71345032 ipmi_smi_watcher_unregister +EXPORT_SYMBOL vmlinux 0x7148b7e3 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x71585fef abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0x715b7c6c uart_update_timeout +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x7180b2c0 qman_delete_cgr +EXPORT_SYMBOL vmlinux 0x71882a29 dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0x718b47f9 sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0x719e034b i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71c90087 memcmp +EXPORT_SYMBOL vmlinux 0x71e0b8f2 mmc_interrupt_hpi +EXPORT_SYMBOL vmlinux 0x71f65175 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x721abcd4 ata_dev_printk +EXPORT_SYMBOL vmlinux 0x723648e7 vm_insert_mixed +EXPORT_SYMBOL vmlinux 0x7260b05a pm860x_page_set_bits +EXPORT_SYMBOL vmlinux 0x728ce230 qm_fq_free_flags +EXPORT_SYMBOL vmlinux 0x72a70b7f pme_ctx_scan_orp +EXPORT_SYMBOL vmlinux 0x72b243d4 free_dma +EXPORT_SYMBOL vmlinux 0x72b5b2b7 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x72b5c410 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0x72c7f95c register_netdevice +EXPORT_SYMBOL vmlinux 0x72d4c23c fsl_get_sys_freq +EXPORT_SYMBOL vmlinux 0x72d58de9 kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0x72e4145b unregister_cdrom +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72f777ac set_bdi_congested +EXPORT_SYMBOL vmlinux 0x7315a4e9 twl6030_mmc_card_detect_config +EXPORT_SYMBOL vmlinux 0x73162c0d mdiobus_read +EXPORT_SYMBOL vmlinux 0x731f9b62 block_invalidatepage +EXPORT_SYMBOL vmlinux 0x732fbf29 seq_vprintf +EXPORT_SYMBOL vmlinux 0x733b2383 next_tlbcam_idx +EXPORT_SYMBOL vmlinux 0x733c3b54 kasprintf +EXPORT_SYMBOL vmlinux 0x733c9b15 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0x73448cf0 ipv6_select_ident +EXPORT_SYMBOL vmlinux 0x735d8503 add_wait_queue +EXPORT_SYMBOL vmlinux 0x73635ddc tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0x737652f1 tty_schedule_flip +EXPORT_SYMBOL vmlinux 0x737cd0ea input_inject_event +EXPORT_SYMBOL vmlinux 0x737de5e9 radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0x737e4c26 pm860x_reg_read +EXPORT_SYMBOL vmlinux 0x73845aea dev_set_drvdata +EXPORT_SYMBOL vmlinux 0x738dc26c __find_get_block +EXPORT_SYMBOL vmlinux 0x738fa34b __netif_schedule +EXPORT_SYMBOL vmlinux 0x73b2c156 dcache_readdir +EXPORT_SYMBOL vmlinux 0x73bfcacd pcie_set_readrq +EXPORT_SYMBOL vmlinux 0x73c4284c udp_proc_register +EXPORT_SYMBOL vmlinux 0x73e1a22b devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0x73e20c1c strlcpy +EXPORT_SYMBOL vmlinux 0x74001bf7 sk_stream_error +EXPORT_SYMBOL vmlinux 0x745a2768 sock_wake_async +EXPORT_SYMBOL vmlinux 0x7469fcfe radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x747195f0 hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x747364e3 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0x7474dbb4 netdev_alert +EXPORT_SYMBOL vmlinux 0x7485e15e unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x748a751b mach_socrates +EXPORT_SYMBOL vmlinux 0x748bec9a simple_pin_fs +EXPORT_SYMBOL vmlinux 0x74a429c8 thaw_super +EXPORT_SYMBOL vmlinux 0x74afbd7a __sk_dst_check +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74c9436e __skb_dst_set_noref +EXPORT_SYMBOL vmlinux 0x74ce05b8 flush_delayed_work +EXPORT_SYMBOL vmlinux 0x74d05dfa skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x7505bdef memchr_inv +EXPORT_SYMBOL vmlinux 0x751b6db5 vmap +EXPORT_SYMBOL vmlinux 0x751c2917 __wait_on_bit +EXPORT_SYMBOL vmlinux 0x7527b100 seq_open_private +EXPORT_SYMBOL vmlinux 0x75337421 neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x7538b132 agp_off +EXPORT_SYMBOL vmlinux 0x753e3fe7 tty_port_tty_get +EXPORT_SYMBOL vmlinux 0x753ef650 seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x754dac78 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x755983ac abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x756dd160 start_thread +EXPORT_SYMBOL vmlinux 0x7575efcd key_invalidate +EXPORT_SYMBOL vmlinux 0x757f088f cpm_muram_offset +EXPORT_SYMBOL vmlinux 0x75906e5d pci_release_region +EXPORT_SYMBOL vmlinux 0x7593d385 div64_s64 +EXPORT_SYMBOL vmlinux 0x75994700 add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0x759a1785 elv_dispatch_sort +EXPORT_SYMBOL vmlinux 0x759e3363 read_cache_page_async +EXPORT_SYMBOL vmlinux 0x75aba019 make_kgid +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75bdea12 iommu_area_alloc +EXPORT_SYMBOL vmlinux 0x75d13341 security_mmap_file +EXPORT_SYMBOL vmlinux 0x75e2fedc __get_page_tail +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x764bb162 pci_scan_slot +EXPORT_SYMBOL vmlinux 0x764bd77c request_resource +EXPORT_SYMBOL vmlinux 0x7668f3fd of_scan_pci_bridge +EXPORT_SYMBOL vmlinux 0x767f1bc4 __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0x76843c58 fm_port_enable +EXPORT_SYMBOL vmlinux 0x769c28d5 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x769e06d7 smp_call_function_many +EXPORT_SYMBOL vmlinux 0x76a61f72 neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0x76bf656d __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x76cb7756 d_instantiate +EXPORT_SYMBOL vmlinux 0x76cc6f05 tcp_disconnect +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76f234b1 ktime_get_clocktai +EXPORT_SYMBOL vmlinux 0x771cf835 dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x773a2fd6 mach_mpc85xx_cds +EXPORT_SYMBOL vmlinux 0x773a9c94 blk_iopoll_enabled +EXPORT_SYMBOL vmlinux 0x773c5cd0 __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x77525bd6 dump_skip +EXPORT_SYMBOL vmlinux 0x77533033 ipmi_register_smi +EXPORT_SYMBOL vmlinux 0x777779fc get_pci_dma_ops +EXPORT_SYMBOL vmlinux 0x77787dfc bdget +EXPORT_SYMBOL vmlinux 0x77801826 inet_sendmsg +EXPORT_SYMBOL vmlinux 0x778dd410 skb_seq_read +EXPORT_SYMBOL vmlinux 0x778fb8bb bio_copy_kern +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x779cd697 tcf_hash_check +EXPORT_SYMBOL vmlinux 0x77b851c4 cacheable_memzero +EXPORT_SYMBOL vmlinux 0x77b89017 dma_direct_ops +EXPORT_SYMBOL vmlinux 0x77bb80d6 icmp_send +EXPORT_SYMBOL vmlinux 0x77bc0034 serio_close +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77d84d54 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0x77df0847 __set_personality +EXPORT_SYMBOL vmlinux 0x77ecac9f zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x7811dc68 sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0x781da34a ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x782567ec memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0x7826b557 alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x783b3563 wake_up_atomic_t +EXPORT_SYMBOL vmlinux 0x785283b5 inet_csk_accept +EXPORT_SYMBOL vmlinux 0x785cf641 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x786d97ee in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x78751795 cdev_del +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x789dcc5b switch_mmu_context +EXPORT_SYMBOL vmlinux 0x78c8dcc0 xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78dfdd9f pme_hw_residue_free +EXPORT_SYMBOL vmlinux 0x78fd36e7 ipmi_request_supply_msgs +EXPORT_SYMBOL vmlinux 0x790df6ca __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x7921abde fb_get_mode +EXPORT_SYMBOL vmlinux 0x7930d225 of_device_is_compatible +EXPORT_SYMBOL vmlinux 0x7960e5fd udp_disconnect +EXPORT_SYMBOL vmlinux 0x796ca580 iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0x796fc5ce scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0x798e3164 fm_port_get_handle +EXPORT_SYMBOL vmlinux 0x79921285 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79aa790c sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0x79b50817 neigh_compat_output +EXPORT_SYMBOL vmlinux 0x79c03155 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0x79c9dab5 md_register_thread +EXPORT_SYMBOL vmlinux 0x79cf7d1e __generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x7a188791 prandom_bytes +EXPORT_SYMBOL vmlinux 0x7a27c184 ewma_init +EXPORT_SYMBOL vmlinux 0x7a32351e agp_backend_acquire +EXPORT_SYMBOL vmlinux 0x7a348110 xfrm4_rcv +EXPORT_SYMBOL vmlinux 0x7a40f932 filp_open +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a4a257d sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x7a5deb3f ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x7a5f1390 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x7a606d65 may_umount +EXPORT_SYMBOL vmlinux 0x7a687c63 ether_setup +EXPORT_SYMBOL vmlinux 0x7a694e2a ip_cmsg_recv +EXPORT_SYMBOL vmlinux 0x7a748052 dma_common_mmap +EXPORT_SYMBOL vmlinux 0x7a8b944f kmalloc_dma_caches +EXPORT_SYMBOL vmlinux 0x7a8e6ebe kobject_init +EXPORT_SYMBOL vmlinux 0x7a91726b clkdev_alloc +EXPORT_SYMBOL vmlinux 0x7a925833 cpufreq_get_global_kobject +EXPORT_SYMBOL vmlinux 0x7a987a4f ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0x7a9e0b30 ftrace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7abfeda2 dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0x7ac2d508 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7add44b5 posix_acl_valid +EXPORT_SYMBOL vmlinux 0x7afa89fc vsnprintf +EXPORT_SYMBOL vmlinux 0x7b00de91 insert_inode_locked +EXPORT_SYMBOL vmlinux 0x7b1ade38 lz4_decompress +EXPORT_SYMBOL vmlinux 0x7b454de8 security_path_symlink +EXPORT_SYMBOL vmlinux 0x7b473719 of_dev_put +EXPORT_SYMBOL vmlinux 0x7b5c8440 vm_munmap +EXPORT_SYMBOL vmlinux 0x7b6ae725 of_phy_connect_fixed_link +EXPORT_SYMBOL vmlinux 0x7b7dcafc jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x7b999be8 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0x7ba454c0 tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0x7be4827c pci_dram_offset +EXPORT_SYMBOL vmlinux 0x7bea67fd blk_queue_prep_rq +EXPORT_SYMBOL vmlinux 0x7bf61137 sock_no_mmap +EXPORT_SYMBOL vmlinux 0x7c003aef _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0x7c13421d release_sock +EXPORT_SYMBOL vmlinux 0x7c1372e8 panic +EXPORT_SYMBOL vmlinux 0x7c3793eb audit_log +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c4810a9 locks_free_lock +EXPORT_SYMBOL vmlinux 0x7c61340c __release_region +EXPORT_SYMBOL vmlinux 0x7c67bf37 bdev_read_only +EXPORT_SYMBOL vmlinux 0x7c91e0bf dev_addr_add +EXPORT_SYMBOL vmlinux 0x7c9291d1 csum_partial_copy_generic +EXPORT_SYMBOL vmlinux 0x7c98845d twl_i2c_read +EXPORT_SYMBOL vmlinux 0x7c9ac32e __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0x7ca67168 tty_register_ldisc +EXPORT_SYMBOL vmlinux 0x7cc578da param_get_long +EXPORT_SYMBOL vmlinux 0x7cc83fce phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0x7cca7e78 __page_symlink +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7ceeb041 blk_queue_find_tag +EXPORT_SYMBOL vmlinux 0x7d0bf6fc mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d0f89d2 security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0x7d11c268 jiffies +EXPORT_SYMBOL vmlinux 0x7d2bc57b abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0x7d445e24 of_platform_device_create +EXPORT_SYMBOL vmlinux 0x7d57875c xfrm_garbage_collect +EXPORT_SYMBOL vmlinux 0x7d6959f3 simple_link +EXPORT_SYMBOL vmlinux 0x7d722779 jbd2_journal_file_inode +EXPORT_SYMBOL vmlinux 0x7d78e4ef seq_open +EXPORT_SYMBOL vmlinux 0x7d7b86c2 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x7d7f5fc6 ftrace_print_symbols_seq_u64 +EXPORT_SYMBOL vmlinux 0x7daa9505 simple_setattr +EXPORT_SYMBOL vmlinux 0x7dc0e109 idr_get_next +EXPORT_SYMBOL vmlinux 0x7dcf4ec6 sock_get_timestampns +EXPORT_SYMBOL vmlinux 0x7dd81b9f free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x7dda7e6c dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7df76c4b scm_detach_fds +EXPORT_SYMBOL vmlinux 0x7e0c6bb9 blk_queue_free_tags +EXPORT_SYMBOL vmlinux 0x7e18266a i2c_del_driver +EXPORT_SYMBOL vmlinux 0x7e355212 __memcg_kmem_get_cache +EXPORT_SYMBOL vmlinux 0x7e36277d pci_restore_state +EXPORT_SYMBOL vmlinux 0x7e394c4e sysctl_local_reserved_ports +EXPORT_SYMBOL vmlinux 0x7e49f281 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0x7e87227e slhc_compress +EXPORT_SYMBOL vmlinux 0x7e9d3c7d blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0x7ec2aeeb start_tty +EXPORT_SYMBOL vmlinux 0x7ecb001b __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x7ed279a9 of_phy_connect +EXPORT_SYMBOL vmlinux 0x7ee32621 kfree_put_link +EXPORT_SYMBOL vmlinux 0x7ee73c0c memcg_socket_limit_enabled +EXPORT_SYMBOL vmlinux 0x7f0b2960 qman_fqid_pool_create +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f263822 proto_unregister +EXPORT_SYMBOL vmlinux 0x7f327cd8 inet_stream_ops +EXPORT_SYMBOL vmlinux 0x7f514375 devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x7f693efb inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0x7f75ab51 __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0x7f788473 i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0x7f94e402 iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0x7f99f916 con_copy_unimap +EXPORT_SYMBOL vmlinux 0x7fa96fa0 scsi_device_put +EXPORT_SYMBOL vmlinux 0x7fc62823 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fe3a713 blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x7ff9773a update_time +EXPORT_SYMBOL vmlinux 0x7ff98efb devm_ioport_map +EXPORT_SYMBOL vmlinux 0x7ffbabd1 kdb_current_task +EXPORT_SYMBOL vmlinux 0x8008e734 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0x8010b1e2 skb_copy_datagram_iovec +EXPORT_SYMBOL vmlinux 0x8015a2f0 agp_generic_alloc_pages +EXPORT_SYMBOL vmlinux 0x80313896 twl6040_reg_write +EXPORT_SYMBOL vmlinux 0x803fc755 __lru_cache_add +EXPORT_SYMBOL vmlinux 0x804f922a ipmi_addr_length +EXPORT_SYMBOL vmlinux 0x805d3fba genphy_read_status +EXPORT_SYMBOL vmlinux 0x80765915 xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x80791c36 pci_request_region +EXPORT_SYMBOL vmlinux 0x809a9171 __generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x80b778c0 devm_ioremap_prot +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x81154ef0 sock_kmalloc +EXPORT_SYMBOL vmlinux 0x812d8ee8 __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0x813d1330 netif_napi_del +EXPORT_SYMBOL vmlinux 0x81430565 iput +EXPORT_SYMBOL vmlinux 0x8149ed70 __skb_checksum +EXPORT_SYMBOL vmlinux 0x814e7730 nf_ct_destroy +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x815c56d0 cpu_present_mask +EXPORT_SYMBOL vmlinux 0x81a07f4e _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0x81a6f9cc cdrom_ioctl +EXPORT_SYMBOL vmlinux 0x81ab195a devm_clk_put +EXPORT_SYMBOL vmlinux 0x81b33689 sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81ec9935 swiotlb_dma_supported +EXPORT_SYMBOL vmlinux 0x81fcda2d kmem_cache_free +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x820962e1 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0x824ee00e blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0x8251bcc3 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x825c963d scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0x8260686f bitmap_find_next_zero_area +EXPORT_SYMBOL vmlinux 0x8266b164 kblockd_schedule_delayed_work +EXPORT_SYMBOL vmlinux 0x826dc9e7 __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x8275b4d7 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x82acfb70 blk_iopoll_sched +EXPORT_SYMBOL vmlinux 0x82e5a238 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x82e7d783 vm_iomap_memory +EXPORT_SYMBOL vmlinux 0x82feeed9 uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x83065ba9 devm_request_and_ioremap +EXPORT_SYMBOL vmlinux 0x83150370 __blk_end_request_all +EXPORT_SYMBOL vmlinux 0x832c5618 nf_log_register +EXPORT_SYMBOL vmlinux 0x8331d088 machine_id +EXPORT_SYMBOL vmlinux 0x8338a253 gen10g_resume +EXPORT_SYMBOL vmlinux 0x83582c49 bio_get_nr_vecs +EXPORT_SYMBOL vmlinux 0x8359a38a __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x83660b82 tcf_action_exec +EXPORT_SYMBOL vmlinux 0x837849e9 pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x838a7187 devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0x838d5f3d always_delete_dentry +EXPORT_SYMBOL vmlinux 0x839aeb2f netpoll_rx_disable +EXPORT_SYMBOL vmlinux 0x83a476ce bitmap_scnlistprintf +EXPORT_SYMBOL vmlinux 0x83b93625 do_sync_write +EXPORT_SYMBOL vmlinux 0x83c0bec6 __genl_register_family +EXPORT_SYMBOL vmlinux 0x83c8ab4e fm_set_tx_port_params +EXPORT_SYMBOL vmlinux 0x83c94bc8 jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0x83cbb358 wait_on_sync_kiocb +EXPORT_SYMBOL vmlinux 0x83cbd1f7 padata_stop +EXPORT_SYMBOL vmlinux 0x83d01c52 blk_queue_merge_bvec +EXPORT_SYMBOL vmlinux 0x83d770e9 bio_integrity_split +EXPORT_SYMBOL vmlinux 0x83d8a937 qman_fqid_pool_used +EXPORT_SYMBOL vmlinux 0x83e0eaae input_set_keycode +EXPORT_SYMBOL vmlinux 0x83f81f39 __sock_create +EXPORT_SYMBOL vmlinux 0x8401ba8b commit_creds +EXPORT_SYMBOL vmlinux 0x841962f8 param_get_ushort +EXPORT_SYMBOL vmlinux 0x8431631b unregister_filesystem +EXPORT_SYMBOL vmlinux 0x844404cf ISA_DMA_THRESHOLD +EXPORT_SYMBOL vmlinux 0x8491abc3 blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0x84b0b2c5 pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0x84b183ae strncmp +EXPORT_SYMBOL vmlinux 0x84bd69bf dq_data_lock +EXPORT_SYMBOL vmlinux 0x84dc0bf9 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0x84ec5b28 vsc824x_add_skew +EXPORT_SYMBOL vmlinux 0x84ecfcf8 max8998_bulk_read +EXPORT_SYMBOL vmlinux 0x84ffea8b idr_preload +EXPORT_SYMBOL vmlinux 0x8509c540 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0x851662dd of_dev_get +EXPORT_SYMBOL vmlinux 0x8518eca9 param_get_short +EXPORT_SYMBOL vmlinux 0x853bf7c1 param_set_int +EXPORT_SYMBOL vmlinux 0x85400b24 mmc_release_host +EXPORT_SYMBOL vmlinux 0x8552fe65 agp_alloc_page_array +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x856f2759 from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x85a324a9 uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85e7deb2 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x86629a28 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0x8664f62e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x869239a0 tty_hangup +EXPORT_SYMBOL vmlinux 0x86a4889a kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0x86b0ea1b tty_set_operations +EXPORT_SYMBOL vmlinux 0x86c4ac05 xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0x86deb7e1 netif_device_detach +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x870bf928 radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x871c0a7e fiemap_check_flags +EXPORT_SYMBOL vmlinux 0x8744f94f dma_async_memcpy_pg_to_pg +EXPORT_SYMBOL vmlinux 0x875eb4d3 scsi_free_command +EXPORT_SYMBOL vmlinux 0x8761f800 generic_pipe_buf_map +EXPORT_SYMBOL vmlinux 0x87624dfc new_inode +EXPORT_SYMBOL vmlinux 0x876c8194 serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0x87759cf2 I_BDEV +EXPORT_SYMBOL vmlinux 0x8779a34f param_ops_byte +EXPORT_SYMBOL vmlinux 0x877db481 rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0x8788d85e mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0x878ab3ce sysctl_tcp_adv_win_scale +EXPORT_SYMBOL vmlinux 0x878d60f9 phy_disconnect +EXPORT_SYMBOL vmlinux 0x8798e453 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0x87990528 ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0x879ad06c decrementer_clockevent +EXPORT_SYMBOL vmlinux 0x879ee505 kmap_to_page +EXPORT_SYMBOL vmlinux 0x87a08773 kernel_listen +EXPORT_SYMBOL vmlinux 0x87a37822 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x87bfeaed xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x87dbf5d6 i2c_bit_add_bus +EXPORT_SYMBOL vmlinux 0x87dda889 dev_uc_add +EXPORT_SYMBOL vmlinux 0x87ff14e5 netpoll_print_options +EXPORT_SYMBOL vmlinux 0x880f1d2e blk_mq_alloc_reserved_request +EXPORT_SYMBOL vmlinux 0x881039d0 zlib_inflate +EXPORT_SYMBOL vmlinux 0x88279f25 cpm_muram_alloc +EXPORT_SYMBOL vmlinux 0x882ca1be pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0x882dab9d sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0x8834396c mod_timer +EXPORT_SYMBOL vmlinux 0x88468b18 set_security_override +EXPORT_SYMBOL vmlinux 0x88513970 param_set_byte +EXPORT_SYMBOL vmlinux 0x885ab7af fb_set_var +EXPORT_SYMBOL vmlinux 0x8869b896 cookie_check_timestamp +EXPORT_SYMBOL vmlinux 0x889fd1f2 set_create_files_as +EXPORT_SYMBOL vmlinux 0x88b9f6f8 d_add_ci +EXPORT_SYMBOL vmlinux 0x88ef3be3 inetdev_by_index +EXPORT_SYMBOL vmlinux 0x891fbb10 mempool_destroy +EXPORT_SYMBOL vmlinux 0x8927799f dev_trans_start +EXPORT_SYMBOL vmlinux 0x8953f8ff __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x895efdb4 neigh_direct_output +EXPORT_SYMBOL vmlinux 0x897473df mktime +EXPORT_SYMBOL vmlinux 0x89797060 _raw_read_lock +EXPORT_SYMBOL vmlinux 0x897f061d downgrade_write +EXPORT_SYMBOL vmlinux 0x898b92fd sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0x899d69ee inet_ioctl +EXPORT_SYMBOL vmlinux 0x89afe34e __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0x89d5538d fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x89d90d6f __neigh_event_send +EXPORT_SYMBOL vmlinux 0x8a05e2f4 netif_carrier_on +EXPORT_SYMBOL vmlinux 0x8a1ab4ee timeval_to_jiffies +EXPORT_SYMBOL vmlinux 0x8a2ad3a4 dev_get_by_flags_rcu +EXPORT_SYMBOL vmlinux 0x8a30dc9a dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a4b6286 rtnl_notify +EXPORT_SYMBOL vmlinux 0x8a51d565 quota_send_warning +EXPORT_SYMBOL vmlinux 0x8a5493bb qman_recovery_cleanup_fq +EXPORT_SYMBOL vmlinux 0x8a644aff d_find_alias +EXPORT_SYMBOL vmlinux 0x8a6f0fba skb_append +EXPORT_SYMBOL vmlinux 0x8a6fe581 lro_receive_frags +EXPORT_SYMBOL vmlinux 0x8a7527e1 bm_pool_new +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a876f54 ida_init +EXPORT_SYMBOL vmlinux 0x8a87a279 kernel_accept +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8ab4079e atomic64_add +EXPORT_SYMBOL vmlinux 0x8ac7f3a7 __locks_copy_lock +EXPORT_SYMBOL vmlinux 0x8ad46baf gen10g_restart_aneg +EXPORT_SYMBOL vmlinux 0x8ad7ac89 d_prune_aliases +EXPORT_SYMBOL vmlinux 0x8ad896d0 sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x8adb9fe4 blk_run_queue +EXPORT_SYMBOL vmlinux 0x8ae4c3c1 tcf_hash_new_index +EXPORT_SYMBOL vmlinux 0x8aea262b mach_ksi8560 +EXPORT_SYMBOL vmlinux 0x8aead1c4 sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x8b0c639b backlight_device_register +EXPORT_SYMBOL vmlinux 0x8b111ee4 eth_change_mtu +EXPORT_SYMBOL vmlinux 0x8b1364d1 register_md_personality +EXPORT_SYMBOL vmlinux 0x8b1a7a66 pcie_aspm_enabled +EXPORT_SYMBOL vmlinux 0x8b35e873 sg_last +EXPORT_SYMBOL vmlinux 0x8b3bd652 i2c_bit_algo +EXPORT_SYMBOL vmlinux 0x8b486c4a pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b8b3df5 mmc_add_host +EXPORT_SYMBOL vmlinux 0x8b9d7596 tty_port_close +EXPORT_SYMBOL vmlinux 0x8baf3116 percpu_counter_set +EXPORT_SYMBOL vmlinux 0x8bc4f383 dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x8bdc2cb7 qman_query_cgr +EXPORT_SYMBOL vmlinux 0x8bf2ae1f fsl_lbc_addr +EXPORT_SYMBOL vmlinux 0x8c066f10 inet_accept +EXPORT_SYMBOL vmlinux 0x8c183cbe iowrite16 +EXPORT_SYMBOL vmlinux 0x8c20fa7c generic_file_remap_pages +EXPORT_SYMBOL vmlinux 0x8c637d43 irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x8c7ff794 pci_save_state +EXPORT_SYMBOL vmlinux 0x8c8ee770 ipmi_destroy_user +EXPORT_SYMBOL vmlinux 0x8cb0d977 check_disk_size_change +EXPORT_SYMBOL vmlinux 0x8cbd8346 validate_sp +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8cfd9cde fm_bind +EXPORT_SYMBOL vmlinux 0x8d015dd4 __bswapdi2 +EXPORT_SYMBOL vmlinux 0x8d2d2d2f mach_xes_mpc8540 +EXPORT_SYMBOL vmlinux 0x8d2e268b param_ops_ulong +EXPORT_SYMBOL vmlinux 0x8d354a91 __ip_dev_find +EXPORT_SYMBOL vmlinux 0x8d551bef sysctl_tcp_rmem +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d895e6d of_match_device +EXPORT_SYMBOL vmlinux 0x8dad359d scsi_register +EXPORT_SYMBOL vmlinux 0x8dba7c15 genlmsg_put +EXPORT_SYMBOL vmlinux 0x8dbb7407 md_write_end +EXPORT_SYMBOL vmlinux 0x8dc0c500 dm_get_mapinfo +EXPORT_SYMBOL vmlinux 0x8dc1fec1 netdev_printk +EXPORT_SYMBOL vmlinux 0x8de0b5ac mempool_create +EXPORT_SYMBOL vmlinux 0x8de2cd6f bman_irqsource_get +EXPORT_SYMBOL vmlinux 0x8de7efab blk_complete_request +EXPORT_SYMBOL vmlinux 0x8df519d2 __napi_schedule +EXPORT_SYMBOL vmlinux 0x8e0585c3 __break_lease +EXPORT_SYMBOL vmlinux 0x8e0d66f4 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x8e168fe5 dmam_pool_create +EXPORT_SYMBOL vmlinux 0x8e2532fc of_find_i2c_device_by_node +EXPORT_SYMBOL vmlinux 0x8e437062 mount_pseudo +EXPORT_SYMBOL vmlinux 0x8e4ec01f ppp_channel_index +EXPORT_SYMBOL vmlinux 0x8e70e7d6 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0x8e7e0776 xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0x8e864a86 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x8e888ec3 cpumask_next_and +EXPORT_SYMBOL vmlinux 0x8e8d58da diu_ops +EXPORT_SYMBOL vmlinux 0x8ea3b2fc pci_set_mwi +EXPORT_SYMBOL vmlinux 0x8eb93475 rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x8ec01cda path_get +EXPORT_SYMBOL vmlinux 0x8ec04552 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0x8ed52862 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0x8edbe6cf mach_sbc8548 +EXPORT_SYMBOL vmlinux 0x8ee39f49 sock_no_connect +EXPORT_SYMBOL vmlinux 0x8f00587a agp_allocate_memory +EXPORT_SYMBOL vmlinux 0x8f045d1c cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x8f152407 __block_write_begin +EXPORT_SYMBOL vmlinux 0x8f36dad4 vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x8f62c9ba lock_rename +EXPORT_SYMBOL vmlinux 0x8f6bc32c mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0x8f6f9688 inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0x8f85f835 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x8f95beff scsi_add_device +EXPORT_SYMBOL vmlinux 0x8faa4598 of_translate_address +EXPORT_SYMBOL vmlinux 0x8fbf37e0 profile_pc +EXPORT_SYMBOL vmlinux 0x8fd0438e tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0x8fe98709 pskb_expand_head +EXPORT_SYMBOL vmlinux 0x8ff2f2b0 mach_p1021_rdb_pc +EXPORT_SYMBOL vmlinux 0x8ffcd48e neigh_seq_start +EXPORT_SYMBOL vmlinux 0x8ffdb3b8 crc16 +EXPORT_SYMBOL vmlinux 0x9036ef5a agp_bind_memory +EXPORT_SYMBOL vmlinux 0x90501868 transfer_to_handler +EXPORT_SYMBOL vmlinux 0x90586f82 alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x905b6ab1 __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x905befd4 page_put_link +EXPORT_SYMBOL vmlinux 0x907d9369 may_umount_tree +EXPORT_SYMBOL vmlinux 0x908b53ed param_set_short +EXPORT_SYMBOL vmlinux 0x90bc7444 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x90c5e819 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x90c75624 pci_find_next_bus +EXPORT_SYMBOL vmlinux 0x90d727b7 mmc_wait_for_app_cmd +EXPORT_SYMBOL vmlinux 0x90e146c2 trace_seq_putc +EXPORT_SYMBOL vmlinux 0x90e543c8 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0x90fb472e locks_init_lock +EXPORT_SYMBOL vmlinux 0x9107ae61 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x91146e47 pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x91463b1d kstrtos16 +EXPORT_SYMBOL vmlinux 0x91471ecf kfree_skb_list +EXPORT_SYMBOL vmlinux 0x914d2d52 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0x9153a612 sk_receive_skb +EXPORT_SYMBOL vmlinux 0x915e1208 tb_ticks_per_usec +EXPORT_SYMBOL vmlinux 0x91715312 sprintf +EXPORT_SYMBOL vmlinux 0x9172de4f sock_recvmsg +EXPORT_SYMBOL vmlinux 0x91868db9 poll_freewait +EXPORT_SYMBOL vmlinux 0x919d1163 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x91a4d242 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0x91a85765 mmc_of_parse +EXPORT_SYMBOL vmlinux 0x91a8b817 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0x91a94e8b inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0x921135a5 fib_default_rule_pref +EXPORT_SYMBOL vmlinux 0x9231283d simple_lookup +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x9240bafe pci_set_master +EXPORT_SYMBOL vmlinux 0x92414fa9 bio_integrity_set_tag +EXPORT_SYMBOL vmlinux 0x925520d2 blk_start_plug +EXPORT_SYMBOL vmlinux 0x926eeaa0 kernel_sock_ioctl +EXPORT_SYMBOL vmlinux 0x9280d76f __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0x92899b7d scsi_reset_provider +EXPORT_SYMBOL vmlinux 0x92a7e6c5 bman_new_pool +EXPORT_SYMBOL vmlinux 0x92a9c60c time_to_tm +EXPORT_SYMBOL vmlinux 0x92bc220b lockref_get +EXPORT_SYMBOL vmlinux 0x92c0211f bio_unmap_user +EXPORT_SYMBOL vmlinux 0x92d41d69 kill_fasync +EXPORT_SYMBOL vmlinux 0x92db564d iov_iter_copy_from_user +EXPORT_SYMBOL vmlinux 0x92e34469 xfrm_register_mode +EXPORT_SYMBOL vmlinux 0x92f43bc2 agp_generic_alloc_user +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x93145b6e read_cache_page +EXPORT_SYMBOL vmlinux 0x93215e1d __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0x932d98c1 cpm_muram_dma +EXPORT_SYMBOL vmlinux 0x932da4de input_event +EXPORT_SYMBOL vmlinux 0x933e10ec qman_ip_rev +EXPORT_SYMBOL vmlinux 0x9341360e kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0x93448c57 screen_info +EXPORT_SYMBOL vmlinux 0x9370fe6e kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93bada44 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x93d5a43c phy_stop +EXPORT_SYMBOL vmlinux 0x93f2d51d dev_addr_del +EXPORT_SYMBOL vmlinux 0x93fca811 __get_free_pages +EXPORT_SYMBOL vmlinux 0x94180c60 devm_ioremap +EXPORT_SYMBOL vmlinux 0x94409513 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0x94631b98 qman_irqsource_get +EXPORT_SYMBOL vmlinux 0x94712f93 cfb_fillrect +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x9498da32 sock_create_kern +EXPORT_SYMBOL vmlinux 0x94b541b5 cpu_active_mask +EXPORT_SYMBOL vmlinux 0x94befdce pci_set_dma_max_seg_size +EXPORT_SYMBOL vmlinux 0x94d78b7c qman_create_cgr +EXPORT_SYMBOL vmlinux 0x94ea5d68 ip_defrag +EXPORT_SYMBOL vmlinux 0x9508f166 param_ops_bint +EXPORT_SYMBOL vmlinux 0x950c7d33 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0x9514151a _mcount +EXPORT_SYMBOL vmlinux 0x951b2e81 inet_frags_exit_net +EXPORT_SYMBOL vmlinux 0x952485b1 pme_fd_cmd_nop +EXPORT_SYMBOL vmlinux 0x9524b0ae _outsb +EXPORT_SYMBOL vmlinux 0x9534e36c mmc_can_reset +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x9592d191 vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0x9597e582 __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x959c2ed7 qman_query_fq_np +EXPORT_SYMBOL vmlinux 0x95cb929c of_find_all_nodes +EXPORT_SYMBOL vmlinux 0x95e6e500 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x962398ab seq_puts +EXPORT_SYMBOL vmlinux 0x9636ec70 input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0x965279c3 __serio_register_port +EXPORT_SYMBOL vmlinux 0x96573b80 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x96898769 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x968b2eb1 vfs_symlink +EXPORT_SYMBOL vmlinux 0x969dc323 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x96a601b3 mdio_bus_type +EXPORT_SYMBOL vmlinux 0x96cbcc81 ipmi_get_version +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96ef1df3 get_gendisk +EXPORT_SYMBOL vmlinux 0x970396fd km_state_expired +EXPORT_SYMBOL vmlinux 0x970963c9 ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x971b8d3c finish_no_open +EXPORT_SYMBOL vmlinux 0x97255bdf strlen +EXPORT_SYMBOL vmlinux 0x9730edef pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0x9748927f _outsw_ns +EXPORT_SYMBOL vmlinux 0x9754ec10 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x975eab4c tty_lock_pair +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x97a60e3d param_get_bool +EXPORT_SYMBOL vmlinux 0x97a87c16 inet_frags_init_net +EXPORT_SYMBOL vmlinux 0x97af0b29 user_revoke +EXPORT_SYMBOL vmlinux 0x97b4500c __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0x97b84203 __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0x97d0272e inode_needs_sync +EXPORT_SYMBOL vmlinux 0x9800eee2 pagevec_lookup +EXPORT_SYMBOL vmlinux 0x9809b4ae tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x981661a0 __idr_get_new_above +EXPORT_SYMBOL vmlinux 0x981ab7a4 console_stop +EXPORT_SYMBOL vmlinux 0x982ae102 vm_insert_pfn +EXPORT_SYMBOL vmlinux 0x983db043 simple_readpage +EXPORT_SYMBOL vmlinux 0x98624e4c __blk_end_request +EXPORT_SYMBOL vmlinux 0x98668903 pme_sw_flow_init +EXPORT_SYMBOL vmlinux 0x986abaa9 phy_device_create +EXPORT_SYMBOL vmlinux 0x986e6135 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x987b9654 kobject_del +EXPORT_SYMBOL vmlinux 0x9889e6f3 mach_p1020_rdb_pc +EXPORT_SYMBOL vmlinux 0x9890afc1 of_mdio_find_bus +EXPORT_SYMBOL vmlinux 0x989b3779 sockfd_lookup +EXPORT_SYMBOL vmlinux 0x98af2bdf d_lookup +EXPORT_SYMBOL vmlinux 0x98b54d96 block_write_full_page_endio +EXPORT_SYMBOL vmlinux 0x98d3b3d0 pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x98dc29de ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0x98eaaaef setup_new_exec +EXPORT_SYMBOL vmlinux 0x98f08cf1 misc_deregister +EXPORT_SYMBOL vmlinux 0x98f3c5c0 blkdev_get +EXPORT_SYMBOL vmlinux 0x98fa21b0 mod_timer_pinned +EXPORT_SYMBOL vmlinux 0x98fe7882 DMA_MODE_READ +EXPORT_SYMBOL vmlinux 0x99267ea3 pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0x992ad1ec tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x994cb6a5 from_kuid_munged +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x99591a7a ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x99595b56 release_pages +EXPORT_SYMBOL vmlinux 0x996b5ab8 d_alloc +EXPORT_SYMBOL vmlinux 0x996e3198 mark_page_accessed +EXPORT_SYMBOL vmlinux 0x996fb04c wireless_spy_update +EXPORT_SYMBOL vmlinux 0x99800d45 iterate_supers_type +EXPORT_SYMBOL vmlinux 0x9994c0ca ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x999ed433 netdev_state_change +EXPORT_SYMBOL vmlinux 0x99a52436 mmc_can_sanitize +EXPORT_SYMBOL vmlinux 0x99afe916 _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x99b6177f filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0x99bb8806 memmove +EXPORT_SYMBOL vmlinux 0x99cdc86b sysctl_tcp_reordering +EXPORT_SYMBOL vmlinux 0x99cefe8e freeze_bdev +EXPORT_SYMBOL vmlinux 0x99d9ef60 find_vma +EXPORT_SYMBOL vmlinux 0x9a0919d2 inode_capable +EXPORT_SYMBOL vmlinux 0x9a0d89c4 blk_mq_map_queue +EXPORT_SYMBOL vmlinux 0x9a18e3a7 tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a1fc4b4 jiffies_to_timeval +EXPORT_SYMBOL vmlinux 0x9a1fe3ce __getblk +EXPORT_SYMBOL vmlinux 0x9a4d5c17 inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x9a5beb0f bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0x9a610ac7 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x9a626734 ftrace_print_hex_seq +EXPORT_SYMBOL vmlinux 0x9a861411 security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x9a983804 generic_file_buffered_write +EXPORT_SYMBOL vmlinux 0x9a9e8fc7 mach_p1025_rdb +EXPORT_SYMBOL vmlinux 0x9aa23c1c vfs_read +EXPORT_SYMBOL vmlinux 0x9ab416e2 md_flush_request +EXPORT_SYMBOL vmlinux 0x9ac7ebf1 phy_ethtool_sset +EXPORT_SYMBOL vmlinux 0x9aebd00f dev_add_pack +EXPORT_SYMBOL vmlinux 0x9b0e42e8 tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0x9b11a211 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b388444 get_zeroed_page +EXPORT_SYMBOL vmlinux 0x9b44768b inet6_register_protosw +EXPORT_SYMBOL vmlinux 0x9b68d548 tcp_proc_register +EXPORT_SYMBOL vmlinux 0x9b6eb137 ksize +EXPORT_SYMBOL vmlinux 0x9b74f6b8 nla_reserve +EXPORT_SYMBOL vmlinux 0x9b843c99 security_file_permission +EXPORT_SYMBOL vmlinux 0x9b9dd666 security_path_mkdir +EXPORT_SYMBOL vmlinux 0x9b9e05f9 alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0x9b9e47a9 blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x9b9fdc09 jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0x9ba032e0 udp_lib_unhash +EXPORT_SYMBOL vmlinux 0x9ba7089d argv_split +EXPORT_SYMBOL vmlinux 0x9bb09106 gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0x9bd2f08e do_truncate +EXPORT_SYMBOL vmlinux 0x9bdfed56 skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0x9be7bde4 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x9be8b697 mmc_can_trim +EXPORT_SYMBOL vmlinux 0x9bfbbad3 md_check_recovery +EXPORT_SYMBOL vmlinux 0x9c03a7f7 nf_reinject +EXPORT_SYMBOL vmlinux 0x9c0bad36 put_page +EXPORT_SYMBOL vmlinux 0x9c4611fb pipe_lock +EXPORT_SYMBOL vmlinux 0x9c491f60 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x9c4def48 pme_fd_cmd_scan +EXPORT_SYMBOL vmlinux 0x9c63bc4d blk_alloc_queue_node +EXPORT_SYMBOL vmlinux 0x9c7c0ea9 mach_p1023_rdb +EXPORT_SYMBOL vmlinux 0x9ca4b223 tcp_proto_cgroup +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cbb30ce bio_integrity_endio +EXPORT_SYMBOL vmlinux 0x9cc99288 fm_unbind +EXPORT_SYMBOL vmlinux 0x9cd59766 ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0x9cde7d73 save_mount_options +EXPORT_SYMBOL vmlinux 0x9ce3f83f nvram_write_byte +EXPORT_SYMBOL vmlinux 0x9ceb163c memcpy_toiovec +EXPORT_SYMBOL vmlinux 0x9cef3cc5 __idr_remove_all +EXPORT_SYMBOL vmlinux 0x9cfd56c5 scsi_print_status +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d14983a ppc_enable_pmcs +EXPORT_SYMBOL vmlinux 0x9d267131 inet_del_offload +EXPORT_SYMBOL vmlinux 0x9d3aa376 blk_iopoll_init +EXPORT_SYMBOL vmlinux 0x9d4ce2c4 mfd_cell_enable +EXPORT_SYMBOL vmlinux 0x9d669763 memcpy +EXPORT_SYMBOL vmlinux 0x9d6adab3 dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0x9d72229b fsl_ifc_find +EXPORT_SYMBOL vmlinux 0x9d7ce8dd _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0x9d84cb9d scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0x9d850895 dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0x9d8f70a7 nobh_write_end +EXPORT_SYMBOL vmlinux 0x9d90f95f __crc32c_le_combine +EXPORT_SYMBOL vmlinux 0x9dbb7d0c aio_complete +EXPORT_SYMBOL vmlinux 0x9dee9a84 cpm2_immr +EXPORT_SYMBOL vmlinux 0x9df6fc90 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0x9dfc1edd bman_irqsource_add +EXPORT_SYMBOL vmlinux 0x9dfe7307 lz4_decompress_unknownoutputsize +EXPORT_SYMBOL vmlinux 0x9e07ef6c pci_target_state +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e2000a7 memcpy_toiovecend +EXPORT_SYMBOL vmlinux 0x9e25c8b7 ps2_handle_response +EXPORT_SYMBOL vmlinux 0x9e27b25d xfrm_state_add +EXPORT_SYMBOL vmlinux 0x9e399859 filemap_fault +EXPORT_SYMBOL vmlinux 0x9e44b9b7 of_get_next_available_child +EXPORT_SYMBOL vmlinux 0x9e4b3747 sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e5ff231 jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e640281 blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0x9e6a837d mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x9e9141d0 dev_uc_init +EXPORT_SYMBOL vmlinux 0x9e9f1714 __bitmap_andnot +EXPORT_SYMBOL vmlinux 0x9ea0ad49 __sg_free_table +EXPORT_SYMBOL vmlinux 0x9ebd4c04 adjust_resource +EXPORT_SYMBOL vmlinux 0x9ed2eec7 param_set_ushort +EXPORT_SYMBOL vmlinux 0x9ed685ee iov_iter_advance +EXPORT_SYMBOL vmlinux 0x9ef0a8eb __inode_permission +EXPORT_SYMBOL vmlinux 0x9f01c16c cfb_copyarea +EXPORT_SYMBOL vmlinux 0x9f0c5ecf fm_set_rx_port_params +EXPORT_SYMBOL vmlinux 0x9f2bdaac __bitmap_or +EXPORT_SYMBOL vmlinux 0x9f44b99c would_dump +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f68f3a6 ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0x9f9734f8 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9faa81cb mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0x9fb3dd30 memcpy_fromiovec +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa01985f2 key_type_keyring +EXPORT_SYMBOL vmlinux 0xa019d20a of_create_pci_dev +EXPORT_SYMBOL vmlinux 0xa01ac6f8 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa048a214 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xa04a01bd qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xa05c03df mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xa05cad02 bdgrab +EXPORT_SYMBOL vmlinux 0xa06df9e1 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0xa07ed110 xz_dec_init +EXPORT_SYMBOL vmlinux 0xa0966e4b unregister_shrinker +EXPORT_SYMBOL vmlinux 0xa09f8be2 qman_affine_cpus +EXPORT_SYMBOL vmlinux 0xa0ae2cf6 blk_execute_rq +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0c09058 pci_bus_get +EXPORT_SYMBOL vmlinux 0xa0c9598f pci_claim_resource +EXPORT_SYMBOL vmlinux 0xa0ceef51 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0xa0d1b57a i2c_get_adapter +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0e4a5ea udp_prot +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa109fa16 is_bad_inode +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa126ec49 xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0xa1359d40 invalidate_partition +EXPORT_SYMBOL vmlinux 0xa1415618 twl6030_interrupt_unmask +EXPORT_SYMBOL vmlinux 0xa1452e69 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0xa14f3d8c ewma_add +EXPORT_SYMBOL vmlinux 0xa1abee75 generic_read_dir +EXPORT_SYMBOL vmlinux 0xa1ad0a3b xfrm_init_replay +EXPORT_SYMBOL vmlinux 0xa1b759ce fb_add_videomode +EXPORT_SYMBOL vmlinux 0xa1bdc917 pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1c99385 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xa1c9d952 nobh_writepage +EXPORT_SYMBOL vmlinux 0xa1f8fe75 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0xa204782b tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0xa20ce1b8 net_msg_warn +EXPORT_SYMBOL vmlinux 0xa218430d lro_flush_all +EXPORT_SYMBOL vmlinux 0xa2323be5 uart_get_divisor +EXPORT_SYMBOL vmlinux 0xa2465a07 noop_qdisc +EXPORT_SYMBOL vmlinux 0xa26c615c input_free_device +EXPORT_SYMBOL vmlinux 0xa278e641 skb_push +EXPORT_SYMBOL vmlinux 0xa28481a2 of_device_register +EXPORT_SYMBOL vmlinux 0xa2848c50 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0xa28a2ace ipmi_set_gets_events +EXPORT_SYMBOL vmlinux 0xa2a98b91 ipmi_get_maintenance_mode +EXPORT_SYMBOL vmlinux 0xa2b47260 __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0xa2bbed37 crash_shutdown_register +EXPORT_SYMBOL vmlinux 0xa2c35825 update_devfreq +EXPORT_SYMBOL vmlinux 0xa2e26253 blk_mq_end_io +EXPORT_SYMBOL vmlinux 0xa2ef34d7 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xa2f2d02f ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0xa300de83 dev_mc_add +EXPORT_SYMBOL vmlinux 0xa3016b4d pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0xa303a14f tty_unlock +EXPORT_SYMBOL vmlinux 0xa303d1ff dm_ratelimit_state +EXPORT_SYMBOL vmlinux 0xa312fc1a bio_init +EXPORT_SYMBOL vmlinux 0xa3199c74 ilookup5_nowait +EXPORT_SYMBOL vmlinux 0xa332464a of_get_cpu_node +EXPORT_SYMBOL vmlinux 0xa3328bd3 input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0xa34f1ef5 crc32_le +EXPORT_SYMBOL vmlinux 0xa356c48c inode_sub_rsv_space +EXPORT_SYMBOL vmlinux 0xa35de80f ipv4_config +EXPORT_SYMBOL vmlinux 0xa35e09dd pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0xa36aae19 dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0xa37a30cc iget5_locked +EXPORT_SYMBOL vmlinux 0xa381944f dql_reset +EXPORT_SYMBOL vmlinux 0xa38e691a ioremap_bot +EXPORT_SYMBOL vmlinux 0xa39b4cf2 udelay +EXPORT_SYMBOL vmlinux 0xa39f801e ps2_init +EXPORT_SYMBOL vmlinux 0xa3abc422 abort_exclusive_wait +EXPORT_SYMBOL vmlinux 0xa3d0e5e9 set_bh_page +EXPORT_SYMBOL vmlinux 0xa3e5db46 sk_dst_check +EXPORT_SYMBOL vmlinux 0xa3e75545 flush_tlb_kernel_range +EXPORT_SYMBOL vmlinux 0xa417abd5 blk_rq_init +EXPORT_SYMBOL vmlinux 0xa43a873d arp_find +EXPORT_SYMBOL vmlinux 0xa43b1297 vscnprintf +EXPORT_SYMBOL vmlinux 0xa43b9539 memcpy_fromiovecend +EXPORT_SYMBOL vmlinux 0xa442a491 genphy_setup_forced +EXPORT_SYMBOL vmlinux 0xa44c1d61 netdev_lower_dev_get_private_rcu +EXPORT_SYMBOL vmlinux 0xa44f9618 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0xa4515df9 mmc_start_bkops +EXPORT_SYMBOL vmlinux 0xa4557661 keyring_alloc +EXPORT_SYMBOL vmlinux 0xa457030b request_firmware +EXPORT_SYMBOL vmlinux 0xa45f2743 build_skb +EXPORT_SYMBOL vmlinux 0xa4695739 devm_iounmap +EXPORT_SYMBOL vmlinux 0xa4701e9e timekeeping_inject_offset +EXPORT_SYMBOL vmlinux 0xa4772486 misc_register +EXPORT_SYMBOL vmlinux 0xa4796914 page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0xa48423b8 tcp_md5_hash_header +EXPORT_SYMBOL vmlinux 0xa48d7543 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0xa4a16866 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0xa4a94d26 find_next_bit_le +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa4c44fb6 stop_tty +EXPORT_SYMBOL vmlinux 0xa4cd3505 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0xa4d4f0e6 global_cache_flush +EXPORT_SYMBOL vmlinux 0xa4da152b udp_ioctl +EXPORT_SYMBOL vmlinux 0xa4e831a0 poll_initwait +EXPORT_SYMBOL vmlinux 0xa50a111e inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0xa517925a free_mdio_bitbang +EXPORT_SYMBOL vmlinux 0xa54a5d08 nla_put +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa5709bf3 gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0xa5739ab8 __frontswap_test +EXPORT_SYMBOL vmlinux 0xa57ee318 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0xa598e29c vesa_modes +EXPORT_SYMBOL vmlinux 0xa5ac9a7f alloc_anon_inode +EXPORT_SYMBOL vmlinux 0xa5c271c0 __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0xa5e53ea6 generic_file_open +EXPORT_SYMBOL vmlinux 0xa619c181 pme_ctx_reconfigure_tx +EXPORT_SYMBOL vmlinux 0xa62d8961 dev_add_offload +EXPORT_SYMBOL vmlinux 0xa63a2f9b param_get_ulong +EXPORT_SYMBOL vmlinux 0xa64fb946 ppc_md +EXPORT_SYMBOL vmlinux 0xa65972b8 _memcpy_toio +EXPORT_SYMBOL vmlinux 0xa6715115 do_settimeofday +EXPORT_SYMBOL vmlinux 0xa6757c97 serio_open +EXPORT_SYMBOL vmlinux 0xa675804c utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0xa67f0e36 __vlan_find_dev_deep +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6970398 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0xa6a15d5a gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0xa6af1a94 pme2_exclusive_unset +EXPORT_SYMBOL vmlinux 0xa6b7245b __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0xa6bc744c generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0xa6d0b432 jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0xa6ed2cfa sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0xa6f050af bd_set_size +EXPORT_SYMBOL vmlinux 0xa6f233c2 kern_path +EXPORT_SYMBOL vmlinux 0xa6f68006 alloc_fcdev +EXPORT_SYMBOL vmlinux 0xa6fe648b skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0xa70a0ad9 frontswap_register_ops +EXPORT_SYMBOL vmlinux 0xa71e7463 __first_cpu +EXPORT_SYMBOL vmlinux 0xa720678c lg_global_lock +EXPORT_SYMBOL vmlinux 0xa7277def md_unregister_thread +EXPORT_SYMBOL vmlinux 0xa73436aa fsnotify_alloc_group +EXPORT_SYMBOL vmlinux 0xa735db59 prandom_u32 +EXPORT_SYMBOL vmlinux 0xa73a045a d_set_d_op +EXPORT_SYMBOL vmlinux 0xa73fc98f of_n_addr_cells +EXPORT_SYMBOL vmlinux 0xa78d9eb7 slhc_uncompress +EXPORT_SYMBOL vmlinux 0xa7b520b3 scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0xa7c1ae89 pci_disable_link_state +EXPORT_SYMBOL vmlinux 0xa7d75d73 phy_start +EXPORT_SYMBOL vmlinux 0xa7e94902 kmap_pte +EXPORT_SYMBOL vmlinux 0xa803bc59 netpoll_cleanup +EXPORT_SYMBOL vmlinux 0xa8232c78 strtobool +EXPORT_SYMBOL vmlinux 0xa83089e1 __put_cred +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa84d3494 simple_rmdir +EXPORT_SYMBOL vmlinux 0xa85dfefa dump_emit +EXPORT_SYMBOL vmlinux 0xa8721b97 system_state +EXPORT_SYMBOL vmlinux 0xa880eb22 pcim_iounmap +EXPORT_SYMBOL vmlinux 0xa89464b7 __ashldi3 +EXPORT_SYMBOL vmlinux 0xa89f3adb d_move +EXPORT_SYMBOL vmlinux 0xa8a6f639 __check_region +EXPORT_SYMBOL vmlinux 0xa8b18405 mount_nodev +EXPORT_SYMBOL vmlinux 0xa8b39d2d blk_alloc_queue +EXPORT_SYMBOL vmlinux 0xa8be5c1e netif_receive_skb +EXPORT_SYMBOL vmlinux 0xa8c6538d free_buffer_head +EXPORT_SYMBOL vmlinux 0xa8c8737b elv_rb_find +EXPORT_SYMBOL vmlinux 0xa8ccf264 register_nls +EXPORT_SYMBOL vmlinux 0xa8cee9f7 make_kprojid +EXPORT_SYMBOL vmlinux 0xa8fef7bb security_unix_may_send +EXPORT_SYMBOL vmlinux 0xa92616e4 i2c_bit_add_numbered_bus +EXPORT_SYMBOL vmlinux 0xa9273e1a epapr_hypercall_start +EXPORT_SYMBOL vmlinux 0xa936b4d2 blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0xa94b0ac9 sock_wfree +EXPORT_SYMBOL vmlinux 0xa9571d6d DMA_MODE_WRITE +EXPORT_SYMBOL vmlinux 0xa962df70 blk_rq_map_user +EXPORT_SYMBOL vmlinux 0xa96801f8 clear_inode +EXPORT_SYMBOL vmlinux 0xa986b0c4 flush_dcache_icache_page +EXPORT_SYMBOL vmlinux 0xa98e1e5f iget_failed +EXPORT_SYMBOL vmlinux 0xa9b63345 of_parse_phandle_with_fixed_args +EXPORT_SYMBOL vmlinux 0xa9b7a511 scsi_remove_target +EXPORT_SYMBOL vmlinux 0xa9e61a18 jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0xa9f86461 padata_register_cpumask_notifier +EXPORT_SYMBOL vmlinux 0xa9f902b0 pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0xa9fddde3 skb_trim +EXPORT_SYMBOL vmlinux 0xaa00d727 ps2_sendbyte +EXPORT_SYMBOL vmlinux 0xaa0df48d fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0xaa141537 pci_release_regions +EXPORT_SYMBOL vmlinux 0xaa3bf636 jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0xaa46e87e lg_local_unlock +EXPORT_SYMBOL vmlinux 0xaa501898 swiotlb_map_sg_attrs +EXPORT_SYMBOL vmlinux 0xaa6901ac __kfifo_out_r +EXPORT_SYMBOL vmlinux 0xaa6e4df5 _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa76359e bh_submit_read +EXPORT_SYMBOL vmlinux 0xaa9087c0 param_ops_string +EXPORT_SYMBOL vmlinux 0xaa9c44a9 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0xaa9eea09 udp_seq_open +EXPORT_SYMBOL vmlinux 0xaaa5fc25 __sb_end_write +EXPORT_SYMBOL vmlinux 0xaaab8067 cpu_sibling_map +EXPORT_SYMBOL vmlinux 0xaab81286 ps2_end_command +EXPORT_SYMBOL vmlinux 0xaab908d6 wait_for_key_construction +EXPORT_SYMBOL vmlinux 0xaacf117f inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0xaad49150 input_flush_device +EXPORT_SYMBOL vmlinux 0xaad69e23 qman_fq_state +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaaf045c2 ipmi_smi_watcher_register +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab23688f twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0xab27d9ca ppp_input +EXPORT_SYMBOL vmlinux 0xab455f47 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0xab49b086 clocksource_unregister +EXPORT_SYMBOL vmlinux 0xab4ea61f keyring_search +EXPORT_SYMBOL vmlinux 0xab694444 bsearch +EXPORT_SYMBOL vmlinux 0xab6bde28 sysctl_max_syn_backlog +EXPORT_SYMBOL vmlinux 0xab6c3780 jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab7f96e5 PDE_DATA +EXPORT_SYMBOL vmlinux 0xab9a1fdf scsi_device_lookup +EXPORT_SYMBOL vmlinux 0xab9be441 security_path_chmod +EXPORT_SYMBOL vmlinux 0xaba4d340 tty_unregister_device +EXPORT_SYMBOL vmlinux 0xaba6dfee input_mt_init_slots +EXPORT_SYMBOL vmlinux 0xaba7c7ca i8042_check_port_owner +EXPORT_SYMBOL vmlinux 0xabc6dd63 cpufreq_sysfs_create_file +EXPORT_SYMBOL vmlinux 0xabcaa577 free_anon_bdev +EXPORT_SYMBOL vmlinux 0xabd0c91c rtc_time_to_tm +EXPORT_SYMBOL vmlinux 0xabd19988 md_integrity_register +EXPORT_SYMBOL vmlinux 0xabf6453b agp_generic_destroy_page +EXPORT_SYMBOL vmlinux 0xabf65f98 get_super +EXPORT_SYMBOL vmlinux 0xac030c13 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0xac0ba8c1 blk_iopoll_disable +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac20ea9b rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0xac26b820 _raw_write_lock +EXPORT_SYMBOL vmlinux 0xac5be5fc inode_change_ok +EXPORT_SYMBOL vmlinux 0xac5fd485 fddi_change_mtu +EXPORT_SYMBOL vmlinux 0xac75f4ae skb_append_datato_frags +EXPORT_SYMBOL vmlinux 0xac9b0b72 __destroy_inode +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacb364b1 unregister_exec_domain +EXPORT_SYMBOL vmlinux 0xacb753d2 thaw_bdev +EXPORT_SYMBOL vmlinux 0xacc5b5d2 csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0xaccabc6a in4_pton +EXPORT_SYMBOL vmlinux 0xace726c0 of_mm_gpiochip_add +EXPORT_SYMBOL vmlinux 0xacee44c2 unregister_console +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xacfae397 tcp_enter_memory_pressure +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad0a6e0a flex_array_prealloc +EXPORT_SYMBOL vmlinux 0xad3c47da agp_bridge +EXPORT_SYMBOL vmlinux 0xad46dec2 of_count_phandle_with_args +EXPORT_SYMBOL vmlinux 0xad502cca tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0xad53b426 remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0xad53db67 i2c_verify_client +EXPORT_SYMBOL vmlinux 0xad545762 jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0xad71cf4d __inet_stream_connect +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad90f33a fm_port_get_base_addr +EXPORT_SYMBOL vmlinux 0xadaff625 phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0xadc37167 ip_route_me_harder +EXPORT_SYMBOL vmlinux 0xadc422e3 __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0xadcdff9c ip6_frag_match +EXPORT_SYMBOL vmlinux 0xadd1e971 alignment_exception +EXPORT_SYMBOL vmlinux 0xaddd4770 __debugger_iabr_match +EXPORT_SYMBOL vmlinux 0xaddd8487 agp_generic_create_gatt_table +EXPORT_SYMBOL vmlinux 0xaded1b8f __bread +EXPORT_SYMBOL vmlinux 0xadf0811d get_baudrate +EXPORT_SYMBOL vmlinux 0xae545f06 _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xae729e59 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xae96673d sock_create_lite +EXPORT_SYMBOL vmlinux 0xae9aee6c kernel_connect +EXPORT_SYMBOL vmlinux 0xaebd14e7 ata_print_version +EXPORT_SYMBOL vmlinux 0xaec07d42 devm_gpio_request +EXPORT_SYMBOL vmlinux 0xaec0ecdd swiotlb_unmap_sg_attrs +EXPORT_SYMBOL vmlinux 0xaec1e674 skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0xaec526f1 pme_ctx_scan +EXPORT_SYMBOL vmlinux 0xaec655c7 alloc_pages_exact +EXPORT_SYMBOL vmlinux 0xaecc2f13 sock_alloc_file +EXPORT_SYMBOL vmlinux 0xaedc7146 blk_mq_init_commands +EXPORT_SYMBOL vmlinux 0xaf05b91b of_device_is_available +EXPORT_SYMBOL vmlinux 0xaf063510 _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0xaf2d872c prepare_to_wait +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf499ae2 skb_put +EXPORT_SYMBOL vmlinux 0xaf4b390a soft_cursor +EXPORT_SYMBOL vmlinux 0xaf5581a1 pci_vpd_truncate +EXPORT_SYMBOL vmlinux 0xaf610a13 phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0xaf64ad0d zlib_deflate +EXPORT_SYMBOL vmlinux 0xaf6640c7 do_splice_to +EXPORT_SYMBOL vmlinux 0xaf6da47e dev_open +EXPORT_SYMBOL vmlinux 0xaf77b7bd fsl_lbc_ctrl_dev +EXPORT_SYMBOL vmlinux 0xaf87bc37 scsi_remove_host +EXPORT_SYMBOL vmlinux 0xaf8f65eb blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0xaf91d89f __kernel_param_lock +EXPORT_SYMBOL vmlinux 0xaf9ae09a pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0xafad493b param_ops_ushort +EXPORT_SYMBOL vmlinux 0xafc234cd single_open_size +EXPORT_SYMBOL vmlinux 0xafd01e14 qman_retire_fq +EXPORT_SYMBOL vmlinux 0xafd68c33 flex_array_free +EXPORT_SYMBOL vmlinux 0xafd70bf2 qman_dca +EXPORT_SYMBOL vmlinux 0xafdd3285 __scsi_put_command +EXPORT_SYMBOL vmlinux 0xafe3952a blk_free_tags +EXPORT_SYMBOL vmlinux 0xafff3d1d mempool_alloc +EXPORT_SYMBOL vmlinux 0xb00b47b6 scsi_finish_command +EXPORT_SYMBOL vmlinux 0xb02e82c9 dquot_quota_sync +EXPORT_SYMBOL vmlinux 0xb042b9f0 module_refcount +EXPORT_SYMBOL vmlinux 0xb050b824 sk_free +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb072dd77 bioset_integrity_create +EXPORT_SYMBOL vmlinux 0xb09851e4 dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0aaabd8 phys_mem_access_prot +EXPORT_SYMBOL vmlinux 0xb0b847ac __bitmap_full +EXPORT_SYMBOL vmlinux 0xb0d4f982 ip6_frag_init +EXPORT_SYMBOL vmlinux 0xb0d99fa9 jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0xb0da1011 ata_std_end_eh +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0eba10f get_thermal_instance +EXPORT_SYMBOL vmlinux 0xb0f60b50 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0xb0ffda2f blk_limits_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xb11b7f1d tcp_check_req +EXPORT_SYMBOL vmlinux 0xb1233af9 pci_select_bars +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb14574fd put_disk +EXPORT_SYMBOL vmlinux 0xb14d5c56 tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0xb15bd8fa tb_ticks_per_sec +EXPORT_SYMBOL vmlinux 0xb1645a2e sg_free_table +EXPORT_SYMBOL vmlinux 0xb16b4a2e input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0xb1758023 dma_sync_wait +EXPORT_SYMBOL vmlinux 0xb19760c3 bitmap_onto +EXPORT_SYMBOL vmlinux 0xb1a3daec __skb_get_rxhash +EXPORT_SYMBOL vmlinux 0xb1ae22f6 mmc_register_driver +EXPORT_SYMBOL vmlinux 0xb1ae364b dst_destroy +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1c6e787 wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0xb1c98616 max8998_write_reg +EXPORT_SYMBOL vmlinux 0xb1cf44df fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xb1d2818a ip6_expire_frag_queue +EXPORT_SYMBOL vmlinux 0xb1db9e4e param_get_invbool +EXPORT_SYMBOL vmlinux 0xb1e93e64 iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0xb2049ab1 neigh_parms_release +EXPORT_SYMBOL vmlinux 0xb21c4e37 blk_init_allocated_queue +EXPORT_SYMBOL vmlinux 0xb233762c atomic64_set +EXPORT_SYMBOL vmlinux 0xb2387869 elv_dispatch_add_tail +EXPORT_SYMBOL vmlinux 0xb256e933 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0xb2682405 utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0xb292c1a4 inet6_getname +EXPORT_SYMBOL vmlinux 0xb2a1ce7e inet_frags_fini +EXPORT_SYMBOL vmlinux 0xb2a55653 sk_release_kernel +EXPORT_SYMBOL vmlinux 0xb2acf19d pme_ctx_finish +EXPORT_SYMBOL vmlinux 0xb2ae5953 blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0xb2b94674 __crc32c_le +EXPORT_SYMBOL vmlinux 0xb2be6e92 netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xb2bf20cd __ethtool_get_settings +EXPORT_SYMBOL vmlinux 0xb2d48a2e queue_work_on +EXPORT_SYMBOL vmlinux 0xb2e0b7bc xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0xb2f1ab62 blk_delay_queue +EXPORT_SYMBOL vmlinux 0xb2fa1a40 inet_stream_connect +EXPORT_SYMBOL vmlinux 0xb304acff ida_get_new_above +EXPORT_SYMBOL vmlinux 0xb30de63f pci_dev_driver +EXPORT_SYMBOL vmlinux 0xb343fc82 generic_file_fsync +EXPORT_SYMBOL vmlinux 0xb34c7c4b scsi_is_target_device +EXPORT_SYMBOL vmlinux 0xb3558518 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0xb36f52df cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0xb3756e0d end_page_writeback +EXPORT_SYMBOL vmlinux 0xb37ef81c netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0xb38ef668 mach_corenet_generic +EXPORT_SYMBOL vmlinux 0xb3d123d6 fm_get_tx_port_channel +EXPORT_SYMBOL vmlinux 0xb3dc7cc2 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb4125620 fsnotify_destroy_mark +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb4439657 mmc_stop_bkops +EXPORT_SYMBOL vmlinux 0xb4526a67 security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0xb45fa4f3 blk_queue_io_min +EXPORT_SYMBOL vmlinux 0xb45fc123 cdrom_open +EXPORT_SYMBOL vmlinux 0xb4709322 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0xb4883b72 fddi_type_trans +EXPORT_SYMBOL vmlinux 0xb4ca5767 default_llseek +EXPORT_SYMBOL vmlinux 0xb4d2f840 tcp_poll +EXPORT_SYMBOL vmlinux 0xb4eb135e skb_checksum +EXPORT_SYMBOL vmlinux 0xb4fd9abb pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0xb5177188 pci_bus_put +EXPORT_SYMBOL vmlinux 0xb5252e2a scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0xb54220ba qdisc_list_del +EXPORT_SYMBOL vmlinux 0xb54533f7 usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xb54daa63 tc_classify +EXPORT_SYMBOL vmlinux 0xb54fa54a dmam_alloc_coherent +EXPORT_SYMBOL vmlinux 0xb55663a3 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0xb5582530 agp_generic_free_gatt_table +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb578fbab netdev_info +EXPORT_SYMBOL vmlinux 0xb5842869 i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0xb5882e1f mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0xb5a14572 __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5abeaef jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0xb5d9454c printk_emit +EXPORT_SYMBOL vmlinux 0xb5e8e1ef inet_register_protosw +EXPORT_SYMBOL vmlinux 0xb5f84fc8 led_blink_set +EXPORT_SYMBOL vmlinux 0xb609d565 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0xb6103541 security_path_link +EXPORT_SYMBOL vmlinux 0xb6222adb unlink_framebuffer +EXPORT_SYMBOL vmlinux 0xb6244511 sg_init_one +EXPORT_SYMBOL vmlinux 0xb6394d4b param_set_bint +EXPORT_SYMBOL vmlinux 0xb64ac261 dev_get_by_name +EXPORT_SYMBOL vmlinux 0xb64d268f qman_schedule_fq +EXPORT_SYMBOL vmlinux 0xb6599b9a machine_check_exception +EXPORT_SYMBOL vmlinux 0xb66510ff mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb67cd159 scsi_release_buffers +EXPORT_SYMBOL vmlinux 0xb6822a33 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0xb6896671 crc_t10dif +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6b46a7c param_ops_int +EXPORT_SYMBOL vmlinux 0xb6be7043 load_nls +EXPORT_SYMBOL vmlinux 0xb6c5a973 scsi_show_result +EXPORT_SYMBOL vmlinux 0xb6d2eafb qman_irqsource_add +EXPORT_SYMBOL vmlinux 0xb7067315 pci_enable_ido +EXPORT_SYMBOL vmlinux 0xb71592fc register_gifconf +EXPORT_SYMBOL vmlinux 0xb715cc44 vm_insert_page +EXPORT_SYMBOL vmlinux 0xb71666a0 dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0xb720c17d padata_add_cpu +EXPORT_SYMBOL vmlinux 0xb753bcc8 __ashrdi3 +EXPORT_SYMBOL vmlinux 0xb760591d force_sig +EXPORT_SYMBOL vmlinux 0xb770be3e __percpu_counter_add +EXPORT_SYMBOL vmlinux 0xb77131b1 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0xb77d4bb9 blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0xb77ea4fc bprm_change_interp +EXPORT_SYMBOL vmlinux 0xb79a4e1a store_fp_state +EXPORT_SYMBOL vmlinux 0xb79b8dcd mdiobus_scan +EXPORT_SYMBOL vmlinux 0xb7a99781 __irq_regs +EXPORT_SYMBOL vmlinux 0xb7b61546 crc32_be +EXPORT_SYMBOL vmlinux 0xb7c06af8 napi_gro_flush +EXPORT_SYMBOL vmlinux 0xb7c71413 pci_disable_ltr +EXPORT_SYMBOL vmlinux 0xb7cc66c7 twl6040_set_bits +EXPORT_SYMBOL vmlinux 0xb7d7749d __ww_mutex_lock +EXPORT_SYMBOL vmlinux 0xb7e02405 nf_nat_decode_session_hook +EXPORT_SYMBOL vmlinux 0xb7f5fbdb xfrm_state_walk +EXPORT_SYMBOL vmlinux 0xb7fde971 pme_map +EXPORT_SYMBOL vmlinux 0xb81960ca snprintf +EXPORT_SYMBOL vmlinux 0xb82b1d4d ipv4_specific +EXPORT_SYMBOL vmlinux 0xb835b3e4 radix_tree_prev_hole +EXPORT_SYMBOL vmlinux 0xb841bcdc scsi_print_command +EXPORT_SYMBOL vmlinux 0xb8546971 pci_disable_ido +EXPORT_SYMBOL vmlinux 0xb85abbfd udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0xb861c4b6 pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0xb874b87a __clzsi2 +EXPORT_SYMBOL vmlinux 0xb8ac42c0 netif_rx +EXPORT_SYMBOL vmlinux 0xb8bc23f3 seq_escape +EXPORT_SYMBOL vmlinux 0xb8cd71ee devm_clk_get +EXPORT_SYMBOL vmlinux 0xb8d73e97 param_set_uint +EXPORT_SYMBOL vmlinux 0xb8e049a8 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0xb8e877e7 kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xb925053e seq_release +EXPORT_SYMBOL vmlinux 0xb9262671 follow_down +EXPORT_SYMBOL vmlinux 0xb9375db3 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0xb93ee095 skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0xb9469d9d tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0xb948b9e3 blk_mq_free_single_hw_queue +EXPORT_SYMBOL vmlinux 0xb972c870 inet6_del_offload +EXPORT_SYMBOL vmlinux 0xb9742623 __sb_start_write +EXPORT_SYMBOL vmlinux 0xb976ce57 pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0xb983d6ea tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0xb98a0185 rtc_tm_to_time +EXPORT_SYMBOL vmlinux 0xb98af7a0 vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0xb9acf64a fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0xb9b4ccfb bio_advance +EXPORT_SYMBOL vmlinux 0xb9d5e027 qman_eqcr_is_empty +EXPORT_SYMBOL vmlinux 0xb9dafc82 __invalidate_device +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xba10fcb4 agp_create_memory +EXPORT_SYMBOL vmlinux 0xba3374d0 uart_resume_port +EXPORT_SYMBOL vmlinux 0xba48fab0 mem_cgroup_subsys +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba70cdfb nf_register_hooks +EXPORT_SYMBOL vmlinux 0xba77d7de ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0xba8088fe nf_unregister_hooks +EXPORT_SYMBOL vmlinux 0xbab8ab61 pcie_get_mps +EXPORT_SYMBOL vmlinux 0xbac43729 try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xbacf10cd jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0xbadf8301 find_get_page +EXPORT_SYMBOL vmlinux 0xbb0cfeca kset_unregister +EXPORT_SYMBOL vmlinux 0xbb189cad disallow_signal +EXPORT_SYMBOL vmlinux 0xbb5d343d xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xbb713e6d sk_filter_release_rcu +EXPORT_SYMBOL vmlinux 0xbb7dddf1 get_disk +EXPORT_SYMBOL vmlinux 0xbb90eb28 inet_listen +EXPORT_SYMBOL vmlinux 0xbb99125c get_default_font +EXPORT_SYMBOL vmlinux 0xbba541c0 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0xbba6b60e scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0xbbd45e2d tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0xbbd872c6 request_firmware_nowait +EXPORT_SYMBOL vmlinux 0xbbee85f6 buffer_migrate_page +EXPORT_SYMBOL vmlinux 0xbbf98143 skb_queue_head +EXPORT_SYMBOL vmlinux 0xbc20c06c pci_get_class +EXPORT_SYMBOL vmlinux 0xbc21667f ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0xbc2544ad dev_queue_xmit +EXPORT_SYMBOL vmlinux 0xbc2890f9 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0xbc2bd9dc scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0xbc2fb794 sock_sendmsg +EXPORT_SYMBOL vmlinux 0xbc316de4 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0xbc3f6afa down_read +EXPORT_SYMBOL vmlinux 0xbc492a4d ab3100_event_register +EXPORT_SYMBOL vmlinux 0xbc8eb318 input_set_capability +EXPORT_SYMBOL vmlinux 0xbc9aa2d9 sock_create +EXPORT_SYMBOL vmlinux 0xbca1ed04 bioset_free +EXPORT_SYMBOL vmlinux 0xbca395d3 udplite_prot +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbcc432d4 scsi_prep_return +EXPORT_SYMBOL vmlinux 0xbccdc2f6 flex_array_put +EXPORT_SYMBOL vmlinux 0xbcdedba7 of_get_mac_address +EXPORT_SYMBOL vmlinux 0xbce2ce96 of_get_ddr_timings +EXPORT_SYMBOL vmlinux 0xbcfc4033 netdev_notify_peers +EXPORT_SYMBOL vmlinux 0xbcffd4f6 fsnotify_put_group +EXPORT_SYMBOL vmlinux 0xbd2270ee swiotlb_map_sg +EXPORT_SYMBOL vmlinux 0xbd429935 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0xbd5df1f4 mach_xes_mpc8572 +EXPORT_SYMBOL vmlinux 0xbd5e7e25 remove_proc_entry +EXPORT_SYMBOL vmlinux 0xbd710659 scsi_calculate_bounce_limit +EXPORT_SYMBOL vmlinux 0xbd716a00 scsi_device_resume +EXPORT_SYMBOL vmlinux 0xbd803510 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0xbd88ff7b override_creds +EXPORT_SYMBOL vmlinux 0xbd9859f8 kernel_bind +EXPORT_SYMBOL vmlinux 0xbd9e5d49 __lshrdi3 +EXPORT_SYMBOL vmlinux 0xbda8d82a fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0xbdba9828 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0xbdd910d1 tcp_splice_read +EXPORT_SYMBOL vmlinux 0xbe05d7dc proc_symlink +EXPORT_SYMBOL vmlinux 0xbe0e5118 nla_memcmp +EXPORT_SYMBOL vmlinux 0xbe1fabc5 scsi_mode_sense +EXPORT_SYMBOL vmlinux 0xbe25356e netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0xbe2c0274 add_timer +EXPORT_SYMBOL vmlinux 0xbe4301d3 prepare_binprm +EXPORT_SYMBOL vmlinux 0xbe55316c __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0xbe5ad07c scsi_host_alloc +EXPORT_SYMBOL vmlinux 0xbe73f315 tcf_hash_create +EXPORT_SYMBOL vmlinux 0xbe77aebe down_write_trylock +EXPORT_SYMBOL vmlinux 0xbe9050fa inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xbe9a4cab d_delete +EXPORT_SYMBOL vmlinux 0xbeb07e02 __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xbec25473 of_parse_phandle +EXPORT_SYMBOL vmlinux 0xbee90f2f __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0xbeeda890 inet_frag_maybe_warn_overflow +EXPORT_SYMBOL vmlinux 0xbeede7c7 mmc_gpio_free_cd +EXPORT_SYMBOL vmlinux 0xbef20e5b nla_put_nohdr +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbf10d946 scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0xbf41f78a vga_put +EXPORT_SYMBOL vmlinux 0xbf61016b gen10g_suspend +EXPORT_SYMBOL vmlinux 0xbf6173e0 page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0xbf7d3dc9 fifo_set_limit +EXPORT_SYMBOL vmlinux 0xbf7fd2f5 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0xbf8298bd udp6_csum_init +EXPORT_SYMBOL vmlinux 0xbf8ba54a vprintk +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfacfaca skb_pad +EXPORT_SYMBOL vmlinux 0xbfb8b0b7 _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfc72979 pci_disable_device +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xc009ef90 elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0xc01790ee neigh_seq_stop +EXPORT_SYMBOL vmlinux 0xc018405a dquot_quota_on +EXPORT_SYMBOL vmlinux 0xc02cf69b clkdev_drop +EXPORT_SYMBOL vmlinux 0xc068440e __kfifo_alloc +EXPORT_SYMBOL vmlinux 0xc0684945 blk_get_request +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc0823e4c twl_i2c_write +EXPORT_SYMBOL vmlinux 0xc0a20f9d ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0ab8b12 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0xc0e7dac6 i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0xc0e8013b inode_claim_rsv_space +EXPORT_SYMBOL vmlinux 0xc12ec3a6 dns_query +EXPORT_SYMBOL vmlinux 0xc13defa8 vlan_vid_add +EXPORT_SYMBOL vmlinux 0xc1556a92 pci_get_slot +EXPORT_SYMBOL vmlinux 0xc17f47fc devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0xc187c6ea scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0xc18f1d6a noop_llseek +EXPORT_SYMBOL vmlinux 0xc1959768 netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0xc1a69c81 md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0xc1acb9a1 devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0xc1b1189b set_groups +EXPORT_SYMBOL vmlinux 0xc1b82d22 register_shrinker +EXPORT_SYMBOL vmlinux 0xc1c2dd09 __hw_addr_flush +EXPORT_SYMBOL vmlinux 0xc1c69ef5 release_firmware +EXPORT_SYMBOL vmlinux 0xc1d2f830 mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0xc207852b sock_release +EXPORT_SYMBOL vmlinux 0xc20fef4c dev_change_flags +EXPORT_SYMBOL vmlinux 0xc21f9706 bio_map_user +EXPORT_SYMBOL vmlinux 0xc2260b94 rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0xc226b5ce mmc_hw_reset +EXPORT_SYMBOL vmlinux 0xc2424641 agp3_generic_cleanup +EXPORT_SYMBOL vmlinux 0xc256e762 __bitmap_equal +EXPORT_SYMBOL vmlinux 0xc2bc5541 padata_set_cpumasks +EXPORT_SYMBOL vmlinux 0xc2c83bce blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0xc2d711e1 krealloc +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2f9c045 timespec_to_jiffies +EXPORT_SYMBOL vmlinux 0xc2fa7071 ppp_input_error +EXPORT_SYMBOL vmlinux 0xc32d9228 inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0xc34974fa input_close_device +EXPORT_SYMBOL vmlinux 0xc368849f nvram_sync +EXPORT_SYMBOL vmlinux 0xc376f7ef blkdev_fsync +EXPORT_SYMBOL vmlinux 0xc3955346 mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0xc3add828 filemap_flush +EXPORT_SYMBOL vmlinux 0xc3e8e06b jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0xc3f0de69 mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0xc41c6495 sock_no_accept +EXPORT_SYMBOL vmlinux 0xc41f0516 node_states +EXPORT_SYMBOL vmlinux 0xc42671f3 genl_notify +EXPORT_SYMBOL vmlinux 0xc4363746 sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0xc43daaf8 blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0xc44bcae3 generic_show_options +EXPORT_SYMBOL vmlinux 0xc45755de find_next_zero_bit_le +EXPORT_SYMBOL vmlinux 0xc4708199 cpm_muram_addr +EXPORT_SYMBOL vmlinux 0xc47adba1 fget_light +EXPORT_SYMBOL vmlinux 0xc47cdf9c _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0xc499ae1e kstrdup +EXPORT_SYMBOL vmlinux 0xc4ce68e6 netif_rx_ni +EXPORT_SYMBOL vmlinux 0xc4e38747 bdget_disk +EXPORT_SYMBOL vmlinux 0xc52678db neigh_table_clear +EXPORT_SYMBOL vmlinux 0xc551b1f8 md_wakeup_thread +EXPORT_SYMBOL vmlinux 0xc5534d64 ioread16 +EXPORT_SYMBOL vmlinux 0xc55c2a9d inode_sb_list_lock +EXPORT_SYMBOL vmlinux 0xc57772dd ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0xc587687f __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xc589e044 param_set_long +EXPORT_SYMBOL vmlinux 0xc59ee75e truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0xc5b30c5e scsi_setup_blk_pc_cmnd +EXPORT_SYMBOL vmlinux 0xc5c08eab dpa_uio_bman +EXPORT_SYMBOL vmlinux 0xc5d9c46c agp_try_unsupported_boot +EXPORT_SYMBOL vmlinux 0xc5dbb7d2 register_netdev +EXPORT_SYMBOL vmlinux 0xc5f6cb20 sock_no_bind +EXPORT_SYMBOL vmlinux 0xc5fdef94 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xc61c0c16 agp_generic_enable +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc6344243 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0xc6500d98 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0xc65abeb7 agp3_generic_sizes +EXPORT_SYMBOL vmlinux 0xc663b075 __ioremap +EXPORT_SYMBOL vmlinux 0xc665d6d7 of_parse_phandle_with_args +EXPORT_SYMBOL vmlinux 0xc6670d39 posix_unblock_lock +EXPORT_SYMBOL vmlinux 0xc66b3f79 __scm_destroy +EXPORT_SYMBOL vmlinux 0xc673b08b xfrm_state_flush +EXPORT_SYMBOL vmlinux 0xc68ce529 sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0xc68d4b21 xfrm_lookup +EXPORT_SYMBOL vmlinux 0xc691a919 flush_tlb_range +EXPORT_SYMBOL vmlinux 0xc69fd509 invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0xc6b6a6bf ip_setsockopt +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6cc83da jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0xc6e7a090 mfd_add_devices +EXPORT_SYMBOL vmlinux 0xc6f36605 vlan_untag +EXPORT_SYMBOL vmlinux 0xc70a8336 nf_hook_slow +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc73d4c8a __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0xc74e94b4 blk_make_request +EXPORT_SYMBOL vmlinux 0xc766e73e devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0xc768de19 cpu_all_bits +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc7998b1c __free_pages +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7d441f3 get_phy_device +EXPORT_SYMBOL vmlinux 0xc7daac46 account_page_dirtied +EXPORT_SYMBOL vmlinux 0xc7ec6c27 strspn +EXPORT_SYMBOL vmlinux 0xc7f43735 dma_pool_create +EXPORT_SYMBOL vmlinux 0xc80ff5c4 wait_iff_congested +EXPORT_SYMBOL vmlinux 0xc81e5dc6 qman_query_fq +EXPORT_SYMBOL vmlinux 0xc824d75c sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0xc8276a79 nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xc82dfbed __dst_free +EXPORT_SYMBOL vmlinux 0xc8339e24 string_unescape +EXPORT_SYMBOL vmlinux 0xc8394514 kernel_sendpage +EXPORT_SYMBOL vmlinux 0xc83b4d5b posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc850930f tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0xc8526bc0 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0xc86d1226 phy_print_status +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc881f976 unregister_key_type +EXPORT_SYMBOL vmlinux 0xc882001c try_to_release_page +EXPORT_SYMBOL vmlinux 0xc897c382 sg_init_table +EXPORT_SYMBOL vmlinux 0xc8abe793 cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0xc8b57c27 autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xc8b9a76b bman_recovery_exit +EXPORT_SYMBOL vmlinux 0xc8c5b056 gen_pool_alloc +EXPORT_SYMBOL vmlinux 0xc8d0d2f0 i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0xc91112bf eth_validate_addr +EXPORT_SYMBOL vmlinux 0xc91ff664 down_read_trylock +EXPORT_SYMBOL vmlinux 0xc93f5289 pci_disable_msi +EXPORT_SYMBOL vmlinux 0xc93fbc54 wait_for_completion_io +EXPORT_SYMBOL vmlinux 0xc949328d simple_write_end +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc96fb6d0 qman_start_dequeues +EXPORT_SYMBOL vmlinux 0xc9739051 pci_choose_state +EXPORT_SYMBOL vmlinux 0xc98565f5 ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0xc9875805 locks_copy_lock +EXPORT_SYMBOL vmlinux 0xc993eb07 mb_cache_entry_insert +EXPORT_SYMBOL vmlinux 0xc996d097 del_timer +EXPORT_SYMBOL vmlinux 0xc99e2a55 twl_rev +EXPORT_SYMBOL vmlinux 0xc9a1559f bio_clone_bioset +EXPORT_SYMBOL vmlinux 0xc9ae1819 sock_i_ino +EXPORT_SYMBOL vmlinux 0xc9bce070 mntget +EXPORT_SYMBOL vmlinux 0xc9cc5101 serio_interrupt +EXPORT_SYMBOL vmlinux 0xc9dcdf25 __ip_select_ident +EXPORT_SYMBOL vmlinux 0xc9fd2ed9 phy_attach +EXPORT_SYMBOL vmlinux 0xca026d05 pm860x_page_bulk_write +EXPORT_SYMBOL vmlinux 0xca13393d __insert_inode_hash +EXPORT_SYMBOL vmlinux 0xca18429d consume_skb +EXPORT_SYMBOL vmlinux 0xca47f064 scsi_host_set_state +EXPORT_SYMBOL vmlinux 0xca531e74 mach_p1020_rdb +EXPORT_SYMBOL vmlinux 0xca56e63f set_user_nice +EXPORT_SYMBOL vmlinux 0xca5dbc50 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xca6602e4 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0xca79c3ff genphy_config_aneg +EXPORT_SYMBOL vmlinux 0xca826476 phy_device_register +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xcaa4b738 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0xcaa5865c agp_backend_release +EXPORT_SYMBOL vmlinux 0xcac653d8 sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0xcacd272d atomic64_sub_return +EXPORT_SYMBOL vmlinux 0xcaf673bb tty_port_destroy +EXPORT_SYMBOL vmlinux 0xcaf991b4 scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb060240 module_layout +EXPORT_SYMBOL vmlinux 0xcb0c5d50 param_get_uint +EXPORT_SYMBOL vmlinux 0xcb1b06ca dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0xcb232a50 __quota_error +EXPORT_SYMBOL vmlinux 0xcb2b7e98 __serio_register_driver +EXPORT_SYMBOL vmlinux 0xcb34157e netpoll_send_skb_on_dev +EXPORT_SYMBOL vmlinux 0xcb56733f get_user_pages +EXPORT_SYMBOL vmlinux 0xcbbf0a6f audit_log_task_context +EXPORT_SYMBOL vmlinux 0xcbc9557f unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0xcc019d37 dev_printk +EXPORT_SYMBOL vmlinux 0xcc0649fd bitmap_endwrite +EXPORT_SYMBOL vmlinux 0xcc17504d _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc35af9b textsearch_prepare +EXPORT_SYMBOL vmlinux 0xcc3735eb __inet6_hash +EXPORT_SYMBOL vmlinux 0xcc37f55c blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0xcc449590 __skb_tx_hash +EXPORT_SYMBOL vmlinux 0xcc4b84da of_find_node_by_type +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc729121 blk_queue_bounce +EXPORT_SYMBOL vmlinux 0xcc7fa952 local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0xcc862efd read_dev_sector +EXPORT_SYMBOL vmlinux 0xcc993097 ilookup +EXPORT_SYMBOL vmlinux 0xcc9bb315 redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccd9cde0 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0xcd0529c7 _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0xcd242a5c netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0xcd245c27 tty_port_open +EXPORT_SYMBOL vmlinux 0xcd25fab9 neigh_lookup +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd4721f2 kern_path_mountpoint +EXPORT_SYMBOL vmlinux 0xcd82bdbe directly_mappable_cdev_bdi +EXPORT_SYMBOL vmlinux 0xcd86c87f __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xcd8882b0 irq_set_chip +EXPORT_SYMBOL vmlinux 0xcdbcc6ff have_submounts +EXPORT_SYMBOL vmlinux 0xcdc19ac4 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdce4e64 dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0xcdd502ca i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0xcdd5c03e set_nlink +EXPORT_SYMBOL vmlinux 0xcde172ac radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0xcdf40d8c xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0xce0261d6 vfs_open +EXPORT_SYMBOL vmlinux 0xce04a338 __ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0xce282d82 scsi_execute +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce71dbfb unregister_md_personality +EXPORT_SYMBOL vmlinux 0xce85b064 arp_create +EXPORT_SYMBOL vmlinux 0xce8d0df4 nf_afinfo +EXPORT_SYMBOL vmlinux 0xce8d7d9c xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0xcec32373 ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0xcec32737 simple_transaction_read +EXPORT_SYMBOL vmlinux 0xcec9eb19 sock_kfree_s +EXPORT_SYMBOL vmlinux 0xcee18a15 skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0xcee5c132 devfreq_interval_update +EXPORT_SYMBOL vmlinux 0xcee9bd1e mmc_get_card +EXPORT_SYMBOL vmlinux 0xcef4bbc6 vlan_uses_dev +EXPORT_SYMBOL vmlinux 0xcef51982 kstrtou16 +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf1d7646 isa_mem_base +EXPORT_SYMBOL vmlinux 0xcf21f78a vfs_readlink +EXPORT_SYMBOL vmlinux 0xcf4bdd60 cdev_alloc +EXPORT_SYMBOL vmlinux 0xcf62a521 i2c_transfer +EXPORT_SYMBOL vmlinux 0xcf72d639 ___pskb_trim +EXPORT_SYMBOL vmlinux 0xcf76b2d8 neigh_update +EXPORT_SYMBOL vmlinux 0xcf85ba6a jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0xcf93aeb4 mpage_writepage +EXPORT_SYMBOL vmlinux 0xcf93c2b0 blk_sync_queue +EXPORT_SYMBOL vmlinux 0xcfa52db9 mach_p1023_rds +EXPORT_SYMBOL vmlinux 0xcfb5cb27 blk_queue_start_tag +EXPORT_SYMBOL vmlinux 0xcfb75d4c write_dirty_buffer +EXPORT_SYMBOL vmlinux 0xcfd8e5e9 xfrm_register_km +EXPORT_SYMBOL vmlinux 0xcffa3209 register_quota_format +EXPORT_SYMBOL vmlinux 0xcffa6615 __mem_cgroup_count_vm_event +EXPORT_SYMBOL vmlinux 0xd0181f4f __bitmap_xor +EXPORT_SYMBOL vmlinux 0xd01ed2ad mach_c293_pcie +EXPORT_SYMBOL vmlinux 0xd02553d3 ppp_unit_number +EXPORT_SYMBOL vmlinux 0xd02b2089 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0xd03f2132 invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0xd0720a17 on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xd0756947 netdev_err +EXPORT_SYMBOL vmlinux 0xd077f3bd agp_copy_info +EXPORT_SYMBOL vmlinux 0xd081c1f3 request_key_async_with_auxdata +EXPORT_SYMBOL vmlinux 0xd0a772e1 vfs_rmdir +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0b2fed8 blk_put_queue +EXPORT_SYMBOL vmlinux 0xd0d42c42 mod_timer_pending +EXPORT_SYMBOL vmlinux 0xd0d549b7 netpoll_parse_options +EXPORT_SYMBOL vmlinux 0xd0ee38b8 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0xd0f36f0d audit_log_format +EXPORT_SYMBOL vmlinux 0xd0fb7cd4 __tasklet_hi_schedule_first +EXPORT_SYMBOL vmlinux 0xd0fef3b2 agp_free_key +EXPORT_SYMBOL vmlinux 0xd10c3452 idr_init +EXPORT_SYMBOL vmlinux 0xd11c0dc1 __kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xd1292d2d inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0xd138719c qman_recovery_exit +EXPORT_SYMBOL vmlinux 0xd141b432 netdev_emerg +EXPORT_SYMBOL vmlinux 0xd163d606 remove_arg_zero +EXPORT_SYMBOL vmlinux 0xd17ad921 md_finish_reshape +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd196c9be kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xd1aae87d posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0xd1aeab40 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0xd1ba5dd3 key_validate +EXPORT_SYMBOL vmlinux 0xd1cc0681 percpu_counter_compare +EXPORT_SYMBOL vmlinux 0xd1e3f3c4 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xd1ea4cbb vfs_fsync +EXPORT_SYMBOL vmlinux 0xd211bf9c fb_set_suspend +EXPORT_SYMBOL vmlinux 0xd220cf8a jiffies_to_timespec +EXPORT_SYMBOL vmlinux 0xd22ce772 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0xd248346c sock_no_poll +EXPORT_SYMBOL vmlinux 0xd251d7b0 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0xd2555f19 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xd2585d35 ip_queue_xmit +EXPORT_SYMBOL vmlinux 0xd2599873 sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd2653751 try_module_get +EXPORT_SYMBOL vmlinux 0xd2653eb7 scsi_init_io +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd2af138b reservation_ww_class +EXPORT_SYMBOL vmlinux 0xd2b2e917 mpage_readpages +EXPORT_SYMBOL vmlinux 0xd2b7f9e3 fm_port_unbind +EXPORT_SYMBOL vmlinux 0xd2b98d1e __seq_open_private +EXPORT_SYMBOL vmlinux 0xd2cd5568 interruptible_sleep_on_timeout +EXPORT_SYMBOL vmlinux 0xd2cf623c done_path_create +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2fc19bd proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0xd3047232 scsi_scan_host +EXPORT_SYMBOL vmlinux 0xd3062422 agp_find_bridge +EXPORT_SYMBOL vmlinux 0xd308beae lease_get_mtime +EXPORT_SYMBOL vmlinux 0xd30f5b47 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0xd31ccb06 of_machine_is_compatible +EXPORT_SYMBOL vmlinux 0xd32fbcc4 mach_ppa8548 +EXPORT_SYMBOL vmlinux 0xd3371e44 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0xd34b522c scsi_rescan_device +EXPORT_SYMBOL vmlinux 0xd3a6c97c skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xd3ad7253 tcp_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xd3c747a1 qman_irqsource_remove +EXPORT_SYMBOL vmlinux 0xd3d2665d kern_unmount +EXPORT_SYMBOL vmlinux 0xd3d8539b alloc_fddidev +EXPORT_SYMBOL vmlinux 0xd410cdea scsi_ioctl +EXPORT_SYMBOL vmlinux 0xd427d2bc dev_get_by_index +EXPORT_SYMBOL vmlinux 0xd42accee pneigh_enqueue +EXPORT_SYMBOL vmlinux 0xd4380587 __splice_from_pipe +EXPORT_SYMBOL vmlinux 0xd477265a inet6_protos +EXPORT_SYMBOL vmlinux 0xd480bae4 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0xd4828406 sync_inodes_sb +EXPORT_SYMBOL vmlinux 0xd49f0916 tty_unthrottle +EXPORT_SYMBOL vmlinux 0xd4a4cd2e inet_add_offload +EXPORT_SYMBOL vmlinux 0xd4a66f37 disk_stack_limits +EXPORT_SYMBOL vmlinux 0xd4bc9df7 mnt_unpin +EXPORT_SYMBOL vmlinux 0xd4be38e0 blk_init_tags +EXPORT_SYMBOL vmlinux 0xd4ca855f dst_alloc +EXPORT_SYMBOL vmlinux 0xd4d11ae0 genphy_resume +EXPORT_SYMBOL vmlinux 0xd4ebe60f lock_may_read +EXPORT_SYMBOL vmlinux 0xd4f5866a inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0xd517f595 dev_close +EXPORT_SYMBOL vmlinux 0xd51ea76a nf_log_unset +EXPORT_SYMBOL vmlinux 0xd52239ad qman_set_null_cb +EXPORT_SYMBOL vmlinux 0xd53596c5 kmem_cache_create +EXPORT_SYMBOL vmlinux 0xd545d088 __pci_register_driver +EXPORT_SYMBOL vmlinux 0xd54c4b45 tty_hung_up_p +EXPORT_SYMBOL vmlinux 0xd56ceb19 fsnotify_init_mark +EXPORT_SYMBOL vmlinux 0xd56e285b fsnotify_add_mark +EXPORT_SYMBOL vmlinux 0xd593f9fa tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0xd59c4e0d dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0xd5aaaf13 __dev_remove_pack +EXPORT_SYMBOL vmlinux 0xd5b2e52a single_step_exception +EXPORT_SYMBOL vmlinux 0xd5bef8a5 tty_port_tty_set +EXPORT_SYMBOL vmlinux 0xd5cadc4e mach_mpc8568_mds +EXPORT_SYMBOL vmlinux 0xd5d85669 kernel_setsockopt +EXPORT_SYMBOL vmlinux 0xd5e8444a __div64_32 +EXPORT_SYMBOL vmlinux 0xd5f2172f del_timer_sync +EXPORT_SYMBOL vmlinux 0xd606503d register_sysctl +EXPORT_SYMBOL vmlinux 0xd616683a ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0xd627480b strncat +EXPORT_SYMBOL vmlinux 0xd628edde fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0xd648e564 fb_match_mode +EXPORT_SYMBOL vmlinux 0xd64a56d9 simple_open +EXPORT_SYMBOL vmlinux 0xd6705d8a tty_free_termios +EXPORT_SYMBOL vmlinux 0xd675a45b __f_setown +EXPORT_SYMBOL vmlinux 0xd67fb9e4 loop_backing_file +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd68d8db9 pneigh_lookup +EXPORT_SYMBOL vmlinux 0xd69b30e0 atomic64_add_unless +EXPORT_SYMBOL vmlinux 0xd6c343f1 pme_ctx_disable +EXPORT_SYMBOL vmlinux 0xd6d63e9d lg_local_lock_cpu +EXPORT_SYMBOL vmlinux 0xd6ed0ff9 inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd714a914 netif_napi_add +EXPORT_SYMBOL vmlinux 0xd723b8ca mpage_readpage +EXPORT_SYMBOL vmlinux 0xd7502599 kill_pgrp +EXPORT_SYMBOL vmlinux 0xd758a0be mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0xd75c79df smp_call_function +EXPORT_SYMBOL vmlinux 0xd761a383 ioremap_prot +EXPORT_SYMBOL vmlinux 0xd77a2f5c pme_stat_get +EXPORT_SYMBOL vmlinux 0xd77a5aa5 __bitmap_and +EXPORT_SYMBOL vmlinux 0xd78d18a5 kill_pid +EXPORT_SYMBOL vmlinux 0xd79b5a02 allow_signal +EXPORT_SYMBOL vmlinux 0xd7b1fb4a tcf_destroy_chain +EXPORT_SYMBOL vmlinux 0xd7c335ea inode_permission +EXPORT_SYMBOL vmlinux 0xd7c87034 mach_p1020_rdb_pd +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7ea7094 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xd7f964f5 tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0xd83eaa6e pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0xd85833cb __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0xd86db1e5 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0xd87444fc splice_from_pipe_end +EXPORT_SYMBOL vmlinux 0xd87e9501 mnt_pin +EXPORT_SYMBOL vmlinux 0xd88021b9 of_mdiobus_register +EXPORT_SYMBOL vmlinux 0xd88fa86e kobject_set_name +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8a644fc xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0xd8aa3d79 blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0xd8b7d7a8 bio_uncopy_user +EXPORT_SYMBOL vmlinux 0xd8c318a9 dput +EXPORT_SYMBOL vmlinux 0xd8c6b5e9 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0xd8c72cf0 ifla_policy +EXPORT_SYMBOL vmlinux 0xd8cbd51d inode_init_owner +EXPORT_SYMBOL vmlinux 0xd8ded085 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xd8e1da69 nobh_truncate_page +EXPORT_SYMBOL vmlinux 0xd8e484f0 register_chrdev_region +EXPORT_SYMBOL vmlinux 0xd8e984e8 mmc_put_card +EXPORT_SYMBOL vmlinux 0xd8e9eb3a qdisc_tree_decrease_qlen +EXPORT_SYMBOL vmlinux 0xd8ede2d6 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0xd8f224a9 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0xd9036dd6 posix_lock_file_wait +EXPORT_SYMBOL vmlinux 0xd9053c50 input_allocate_device +EXPORT_SYMBOL vmlinux 0xd92afabe bitmap_clear +EXPORT_SYMBOL vmlinux 0xd930e5b1 kernel_write +EXPORT_SYMBOL vmlinux 0xd9498b22 proc_dointvec +EXPORT_SYMBOL vmlinux 0xd9553b93 tcp_ioctl +EXPORT_SYMBOL vmlinux 0xd9705526 __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0xd977c35a inet_addr_type +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd9937bf7 swiotlb_unmap_sg +EXPORT_SYMBOL vmlinux 0xd99dafdc dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0xd9a9bb30 getname +EXPORT_SYMBOL vmlinux 0xd9bac924 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0xd9ce8f0c strnlen +EXPORT_SYMBOL vmlinux 0xd9daa8c3 max8925_reg_write +EXPORT_SYMBOL vmlinux 0xd9e00578 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0xd9f7f871 key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0xda2478d0 param_ops_short +EXPORT_SYMBOL vmlinux 0xda26b550 write_inode_now +EXPORT_SYMBOL vmlinux 0xda3aba55 jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda5091ba kmalloc_caches +EXPORT_SYMBOL vmlinux 0xda548797 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xda5aa5d2 mach_bsc9131_rdb +EXPORT_SYMBOL vmlinux 0xda654bfc __lock_buffer +EXPORT_SYMBOL vmlinux 0xda662230 __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0xda6854c1 __mutex_init +EXPORT_SYMBOL vmlinux 0xda713308 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0xda73a323 migrate_page +EXPORT_SYMBOL vmlinux 0xda7ca6cb fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xda8af7ad fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0xdaa16b82 of_clk_get +EXPORT_SYMBOL vmlinux 0xdaa53682 dquot_get_dqinfo +EXPORT_SYMBOL vmlinux 0xdaa57ec3 totalhigh_pages +EXPORT_SYMBOL vmlinux 0xdaa8e10a __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0xdab6b2bf netdev_warn +EXPORT_SYMBOL vmlinux 0xdabc1ea8 fsl_lbc_find +EXPORT_SYMBOL vmlinux 0xdac599c9 kill_block_super +EXPORT_SYMBOL vmlinux 0xdad7adff dqstats +EXPORT_SYMBOL vmlinux 0xdaedf90e jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0xdaefa3c0 mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0xdaf06e58 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xdb01198e fsl_upm_find +EXPORT_SYMBOL vmlinux 0xdb0baa43 inet_frag_kill +EXPORT_SYMBOL vmlinux 0xdb169b3c mmc_set_blockcount +EXPORT_SYMBOL vmlinux 0xdb52ac54 scsi_cmd_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xdb5760ec twl6040_reg_read +EXPORT_SYMBOL vmlinux 0xdb5ab343 clear_bdi_congested +EXPORT_SYMBOL vmlinux 0xdb5e00d3 padata_alloc +EXPORT_SYMBOL vmlinux 0xdb6192bb inet_frag_evictor +EXPORT_SYMBOL vmlinux 0xdb685c4d init_buffer +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb6d01fc dev_addr_add_multiple +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb8f45c3 tty_port_close_end +EXPORT_SYMBOL vmlinux 0xdb9f585c sock_init_data +EXPORT_SYMBOL vmlinux 0xdba4e8dd neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0xdbafc6be request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0xdbb24fc2 down_write +EXPORT_SYMBOL vmlinux 0xdbcd416e sysctl_ip_nonlocal_bind +EXPORT_SYMBOL vmlinux 0xdbe3e89f tcp_init_sock +EXPORT_SYMBOL vmlinux 0xdbfa00a9 udp_lib_rehash +EXPORT_SYMBOL vmlinux 0xdc047fc4 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0xdc104f8b pci_assign_resource +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc175b85 simple_empty +EXPORT_SYMBOL vmlinux 0xdc30a929 inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0xdc35c800 pci_unregister_driver +EXPORT_SYMBOL vmlinux 0xdc383c39 scsi_host_get +EXPORT_SYMBOL vmlinux 0xdc3a0a37 mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0xdc3c8b83 submit_bio_wait +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc7288f8 mdiobus_write +EXPORT_SYMBOL vmlinux 0xdc854abc dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0xdc9451a6 skb_checksum_help +EXPORT_SYMBOL vmlinux 0xdc9498dd down +EXPORT_SYMBOL vmlinux 0xdc9b6638 proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0xdca11744 eth_type_trans +EXPORT_SYMBOL vmlinux 0xdca84d37 mach_p1020_utm_pc +EXPORT_SYMBOL vmlinux 0xdcb58bbb flush_dcache_page +EXPORT_SYMBOL vmlinux 0xdcba1b43 mem_map +EXPORT_SYMBOL vmlinux 0xdcc2feae phy_driver_register +EXPORT_SYMBOL vmlinux 0xdcd98717 del_gendisk +EXPORT_SYMBOL vmlinux 0xdcdef5ed ip_route_input_noref +EXPORT_SYMBOL vmlinux 0xdce0c870 write_cache_pages +EXPORT_SYMBOL vmlinux 0xdcea3273 dev_mc_init +EXPORT_SYMBOL vmlinux 0xdcf38732 devfreq_add_governor +EXPORT_SYMBOL vmlinux 0xdd0a2ba2 strlcat +EXPORT_SYMBOL vmlinux 0xdd0ce268 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0xdd2410f8 neigh_for_each +EXPORT_SYMBOL vmlinux 0xdd27fa87 memchr +EXPORT_SYMBOL vmlinux 0xdd33e75d mach_mpc85xx_ads +EXPORT_SYMBOL vmlinux 0xdd3fdc88 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0xdd79b17c ps2_drain +EXPORT_SYMBOL vmlinux 0xdd8284db pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0xddbcc500 powerpc_debugfs_root +EXPORT_SYMBOL vmlinux 0xddccd96c blk_fetch_request +EXPORT_SYMBOL vmlinux 0xdded131d bio_sector_offset +EXPORT_SYMBOL vmlinux 0xde0f1074 pci_set_ltr +EXPORT_SYMBOL vmlinux 0xde10eb10 param_set_invbool +EXPORT_SYMBOL vmlinux 0xde48e9ca _raw_spin_lock +EXPORT_SYMBOL vmlinux 0xde4d9f25 jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0xde6d06cb bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0xde82824d pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0xde91cb74 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0xde9360ba totalram_pages +EXPORT_SYMBOL vmlinux 0xde9b17ed agp3_generic_fetch_size +EXPORT_SYMBOL vmlinux 0xded11844 padata_remove_cpu +EXPORT_SYMBOL vmlinux 0xdef3fc31 from_kgid_munged +EXPORT_SYMBOL vmlinux 0xdefa0ad8 qman_testwrite_cgr +EXPORT_SYMBOL vmlinux 0xdf0607b8 jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0xdf13971c dpa_uio_qman +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf60cc27 __print_symbol +EXPORT_SYMBOL vmlinux 0xdf843bcd pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdfc2686d xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0xdfdc572e __pagevec_lru_add +EXPORT_SYMBOL vmlinux 0xdfee8a74 kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0xdff43ed4 __debugger +EXPORT_SYMBOL vmlinux 0xdff4b1fd pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0xe00b0a5b ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0xe013d145 skb_find_text +EXPORT_SYMBOL vmlinux 0xe03bab92 shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0xe04f7caa dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xe06141e9 security_sk_clone +EXPORT_SYMBOL vmlinux 0xe0674f3d scsi_put_command +EXPORT_SYMBOL vmlinux 0xe074c7ee vfs_getattr +EXPORT_SYMBOL vmlinux 0xe075d6eb iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xe09d16ab swiotlb_free_coherent +EXPORT_SYMBOL vmlinux 0xe0b096ca security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0b9a09d d_instantiate_no_diralias +EXPORT_SYMBOL vmlinux 0xe0cbde30 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0xe0d40cdd netlink_unicast +EXPORT_SYMBOL vmlinux 0xe0ef10c7 ida_simple_remove +EXPORT_SYMBOL vmlinux 0xe0fa83f2 ipmi_register_for_cmd +EXPORT_SYMBOL vmlinux 0xe0fc7e30 input_unregister_handle +EXPORT_SYMBOL vmlinux 0xe103eb8f ip_mc_join_group +EXPORT_SYMBOL vmlinux 0xe10532a8 mmc_power_restore_host +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe155387c truncate_inode_pages +EXPORT_SYMBOL vmlinux 0xe1639ae3 mark_info_dirty +EXPORT_SYMBOL vmlinux 0xe1761617 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xe190bdbb kthread_create_on_node +EXPORT_SYMBOL vmlinux 0xe1d78cd7 scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0xe200f872 secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xe22d319c fib_default_rule_add +EXPORT_SYMBOL vmlinux 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL vmlinux 0xe23ae481 blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe24364c8 bio_put +EXPORT_SYMBOL vmlinux 0xe2476fce arp_tbl +EXPORT_SYMBOL vmlinux 0xe24d3a97 jiffies_64 +EXPORT_SYMBOL vmlinux 0xe2687eeb d_instantiate_unique +EXPORT_SYMBOL vmlinux 0xe2896189 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xe29e1d0e out_of_line_wait_on_atomic_t +EXPORT_SYMBOL vmlinux 0xe2be0bd0 kernel_recvmsg +EXPORT_SYMBOL vmlinux 0xe2be5498 lg_global_unlock +EXPORT_SYMBOL vmlinux 0xe2c91c55 datagram_poll +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2e091a7 file_remove_suid +EXPORT_SYMBOL vmlinux 0xe2e8065e memdup_user +EXPORT_SYMBOL vmlinux 0xe2fae716 kmemdup +EXPORT_SYMBOL vmlinux 0xe2ff5214 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xe30029e2 inet6_bind +EXPORT_SYMBOL vmlinux 0xe32470a6 sk_stop_timer +EXPORT_SYMBOL vmlinux 0xe35c5285 of_find_node_by_phandle +EXPORT_SYMBOL vmlinux 0xe36b4b47 padata_set_cpumask +EXPORT_SYMBOL vmlinux 0xe36d0edf input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0xe3722263 __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0xe37f2d7b md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0xe3963bfa pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0xe39b8c0a scsi_device_set_state +EXPORT_SYMBOL vmlinux 0xe3bae9b3 twl6040_get_pll +EXPORT_SYMBOL vmlinux 0xe3bcb2be netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0xe3ce3b21 skb_queue_tail +EXPORT_SYMBOL vmlinux 0xe3d6f284 fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xe3de50bd qman_destroy_fq +EXPORT_SYMBOL vmlinux 0xe3ef1540 touch_atime +EXPORT_SYMBOL vmlinux 0xe3ef97df secpath_dup +EXPORT_SYMBOL vmlinux 0xe3f22c51 dquot_resume +EXPORT_SYMBOL vmlinux 0xe41eefa3 arp_invalidate +EXPORT_SYMBOL vmlinux 0xe432d5e6 get_write_access +EXPORT_SYMBOL vmlinux 0xe439414a local_flush_tlb_page +EXPORT_SYMBOL vmlinux 0xe4550cc3 __nlmsg_put +EXPORT_SYMBOL vmlinux 0xe45a4ec4 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0xe45b6925 account_page_writeback +EXPORT_SYMBOL vmlinux 0xe473e9ac jbd2_journal_start +EXPORT_SYMBOL vmlinux 0xe47bf784 vfs_mkdir +EXPORT_SYMBOL vmlinux 0xe484e35f ioread32 +EXPORT_SYMBOL vmlinux 0xe4890d3f send_sig_info +EXPORT_SYMBOL vmlinux 0xe49808b4 qman_poll +EXPORT_SYMBOL vmlinux 0xe4a895fa up_write +EXPORT_SYMBOL vmlinux 0xe4aa608f request_key_async +EXPORT_SYMBOL vmlinux 0xe4c1f093 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0xe4c68b6b inet_recvmsg +EXPORT_SYMBOL vmlinux 0xe4ce34e3 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xe4f4665b ipmi_validate_addr +EXPORT_SYMBOL vmlinux 0xe4fe8ca1 _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0xe4feef77 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0xe4ffa3c0 pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0xe5122890 flow_cache_genid +EXPORT_SYMBOL vmlinux 0xe5136f6d pid_task +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe524931c end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0xe53d1faa of_translate_dma_address +EXPORT_SYMBOL vmlinux 0xe54035f6 phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0xe549c6a0 inet_put_port +EXPORT_SYMBOL vmlinux 0xe55b2e72 eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0xe55ee13b tty_port_init +EXPORT_SYMBOL vmlinux 0xe57878a1 in6_pton +EXPORT_SYMBOL vmlinux 0xe57eb6cd __pci_enable_wake +EXPORT_SYMBOL vmlinux 0xe583c76b iget_locked +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe5957e1b net_dma_find_channel +EXPORT_SYMBOL vmlinux 0xe59961d7 fm_port_bind +EXPORT_SYMBOL vmlinux 0xe5a8ee55 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5d93444 scsi_is_host_device +EXPORT_SYMBOL vmlinux 0xe5d98795 phy_connect +EXPORT_SYMBOL vmlinux 0xe5df2453 devm_ioremap_nocache +EXPORT_SYMBOL vmlinux 0xe5ed5467 xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xe635de8e tty_devnum +EXPORT_SYMBOL vmlinux 0xe651d831 writeback_in_progress +EXPORT_SYMBOL vmlinux 0xe652e88c grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0xe66452ab dql_init +EXPORT_SYMBOL vmlinux 0xe6951f5a seq_path +EXPORT_SYMBOL vmlinux 0xe697d108 __blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe6a25151 dentry_unhash +EXPORT_SYMBOL vmlinux 0xe6ab72a6 ipmi_set_my_LUN +EXPORT_SYMBOL vmlinux 0xe6bbae42 scsi_scan_target +EXPORT_SYMBOL vmlinux 0xe6c32702 nf_unregister_hook +EXPORT_SYMBOL vmlinux 0xe6dd236d clear_pages +EXPORT_SYMBOL vmlinux 0xe6ebc016 key_create_or_update +EXPORT_SYMBOL vmlinux 0xe6fbe430 can_do_mlock +EXPORT_SYMBOL vmlinux 0xe7575cc0 pme_ctx_exclusive_dec +EXPORT_SYMBOL vmlinux 0xe76c4770 max8925_set_bits +EXPORT_SYMBOL vmlinux 0xe77b941f pme2_exclusive_set +EXPORT_SYMBOL vmlinux 0xe77d1d60 user_path_at +EXPORT_SYMBOL vmlinux 0xe7a664c4 nf_hooks +EXPORT_SYMBOL vmlinux 0xe7a81967 audit_log_secctx +EXPORT_SYMBOL vmlinux 0xe7c4622e input_unregister_device +EXPORT_SYMBOL vmlinux 0xe7c84014 lockref_mark_dead +EXPORT_SYMBOL vmlinux 0xe7ce7439 _memcpy_fromio +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7d6ed77 pipe_unlock +EXPORT_SYMBOL vmlinux 0xe7eb0175 blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0xe833fa77 gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0xe838f571 neigh_table_init +EXPORT_SYMBOL vmlinux 0xe851bb05 queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xe8887001 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0xe898bfba crc32_le_combine +EXPORT_SYMBOL vmlinux 0xe8b63ace radix_tree_range_tag_if_tagged +EXPORT_SYMBOL vmlinux 0xe8b82fe0 bman_ip_rev +EXPORT_SYMBOL vmlinux 0xe8bea3bc qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xe8befd11 tty_mutex +EXPORT_SYMBOL vmlinux 0xe8cb9198 mach_p1021_mds +EXPORT_SYMBOL vmlinux 0xe8d1725d sk_common_release +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe915e843 xfrm_input +EXPORT_SYMBOL vmlinux 0xe923a9a1 tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0xe929cdce dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0xe92aaf1d dev_notice +EXPORT_SYMBOL vmlinux 0xe931838c devfreq_add_device +EXPORT_SYMBOL vmlinux 0xe933e14c __ps2_command +EXPORT_SYMBOL vmlinux 0xe950499d qman_release_fqid_range +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe9716c07 padata_do_serial +EXPORT_SYMBOL vmlinux 0xe978b78d pme_hw_flow_new +EXPORT_SYMBOL vmlinux 0xe99c3525 splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0xe9a8563a set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0xe9b0c20f dma_set_mask +EXPORT_SYMBOL vmlinux 0xe9b831d7 sk_stream_write_space +EXPORT_SYMBOL vmlinux 0xe9b865c4 posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0xe9bb7b07 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0xe9e45d73 blk_register_region +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xe9ff7abf tty_kref_put +EXPORT_SYMBOL vmlinux 0xea054b22 nla_policy_len +EXPORT_SYMBOL vmlinux 0xea063ac9 generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0xea10212a int_to_scsilun +EXPORT_SYMBOL vmlinux 0xea10655a __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xea16dd4c tcp_destroy_cgroup +EXPORT_SYMBOL vmlinux 0xea2003cc single_release +EXPORT_SYMBOL vmlinux 0xea219209 __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xea39713f arp_xmit +EXPORT_SYMBOL vmlinux 0xea3e7c71 lock_fb_info +EXPORT_SYMBOL vmlinux 0xea418995 inet_twsk_deschedule +EXPORT_SYMBOL vmlinux 0xea4ba8bc simple_write_begin +EXPORT_SYMBOL vmlinux 0xea6a034f call_netdevice_notifiers_info +EXPORT_SYMBOL vmlinux 0xea6e3003 of_find_compatible_node +EXPORT_SYMBOL vmlinux 0xea7987f1 key_update +EXPORT_SYMBOL vmlinux 0xea968c96 ___ratelimit +EXPORT_SYMBOL vmlinux 0xeab0819b pme_ctx_is_disabled +EXPORT_SYMBOL vmlinux 0xeabde530 sock_i_uid +EXPORT_SYMBOL vmlinux 0xeabe2952 rtnl_create_link +EXPORT_SYMBOL vmlinux 0xeae4e343 max8925_reg_read +EXPORT_SYMBOL vmlinux 0xeb0baa72 tcp_connect +EXPORT_SYMBOL vmlinux 0xeb14bbc5 set_blocksize +EXPORT_SYMBOL vmlinux 0xeb34f9a9 ndo_dflt_bridge_getlink +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb55a931 __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xeb59bd1a security_inode_permission +EXPORT_SYMBOL vmlinux 0xeb7a1391 ip_check_defrag +EXPORT_SYMBOL vmlinux 0xeb8b47ac xfrm4_prepare_output +EXPORT_SYMBOL vmlinux 0xebb0621f uart_suspend_port +EXPORT_SYMBOL vmlinux 0xebb0e819 dquot_transfer +EXPORT_SYMBOL vmlinux 0xebd63897 set_disk_ro +EXPORT_SYMBOL vmlinux 0xebdbe48c radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0xec106aba scsi_host_put +EXPORT_SYMBOL vmlinux 0xec17ebb0 of_match_node +EXPORT_SYMBOL vmlinux 0xec1ab33c mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0xec222963 kset_register +EXPORT_SYMBOL vmlinux 0xec2f897e registered_fb +EXPORT_SYMBOL vmlinux 0xec3b20da sock_no_shutdown +EXPORT_SYMBOL vmlinux 0xec4612db eth_header_cache +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec5c7e66 giveup_fpu +EXPORT_SYMBOL vmlinux 0xec717056 blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0xec8ad421 gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0xecb2ff75 serial8250_do_pm +EXPORT_SYMBOL vmlinux 0xecbf4415 bio_integrity_tag_size +EXPORT_SYMBOL vmlinux 0xecc1449e bm_pool_set +EXPORT_SYMBOL vmlinux 0xecc7e9a7 i2c_release_client +EXPORT_SYMBOL vmlinux 0xeccd09ff block_truncate_page +EXPORT_SYMBOL vmlinux 0xecd7b458 fail_migrate_page +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xecee6dfe agp_free_memory +EXPORT_SYMBOL vmlinux 0xed056ad2 input_grab_device +EXPORT_SYMBOL vmlinux 0xed390254 i2c_use_client +EXPORT_SYMBOL vmlinux 0xed597524 qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xed5a6a0b iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0xed5e0ae5 genphy_suspend +EXPORT_SYMBOL vmlinux 0xed76ab0c ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0xed7da5f9 keyring_clear +EXPORT_SYMBOL vmlinux 0xed9034e4 wake_up_process +EXPORT_SYMBOL vmlinux 0xed93f29e __kunmap_atomic +EXPORT_SYMBOL vmlinux 0xed99a5b8 pci_request_region_exclusive +EXPORT_SYMBOL vmlinux 0xed9f9a20 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xedb85044 bio_map_kern +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedbbbc50 __frontswap_store +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedc3f2fc mach_p2020_ds +EXPORT_SYMBOL vmlinux 0xedc410d0 udplite_table +EXPORT_SYMBOL vmlinux 0xedc9ac54 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0xedd8f004 elv_unregister_queue +EXPORT_SYMBOL vmlinux 0xedd93e17 proc_mkdir +EXPORT_SYMBOL vmlinux 0xedefc8b5 pm860x_set_bits +EXPORT_SYMBOL vmlinux 0xee20d87a from_kprojid +EXPORT_SYMBOL vmlinux 0xee246dff ida_destroy +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee38c290 phy_ethtool_gset +EXPORT_SYMBOL vmlinux 0xee5aff46 sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0xee61cf4e inet6_release +EXPORT_SYMBOL vmlinux 0xee66d60d security_d_instantiate +EXPORT_SYMBOL vmlinux 0xee8ad9a0 serio_rescan +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xee995736 scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0xeea4a109 blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0xeea9dbaf bitmap_bitremap +EXPORT_SYMBOL vmlinux 0xeebcb715 mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xeeccc79d rtnl_unicast +EXPORT_SYMBOL vmlinux 0xeee2cac2 uart_match_port +EXPORT_SYMBOL vmlinux 0xeeea8335 skb_copy_datagram_from_iovec +EXPORT_SYMBOL vmlinux 0xeeeeab7e __brelse +EXPORT_SYMBOL vmlinux 0xeef161aa groups_free +EXPORT_SYMBOL vmlinux 0xeef427c1 con_is_bound +EXPORT_SYMBOL vmlinux 0xeefceafd generic_file_llseek +EXPORT_SYMBOL vmlinux 0xef0371cd blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0xef04c802 inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0xef109449 interruptible_sleep_on +EXPORT_SYMBOL vmlinux 0xef173403 mach_p2020_rdb_pc +EXPORT_SYMBOL vmlinux 0xef3bd694 sg_miter_start +EXPORT_SYMBOL vmlinux 0xef4855ad lock_sock_fast +EXPORT_SYMBOL vmlinux 0xef5f8f17 follow_down_one +EXPORT_SYMBOL vmlinux 0xef621764 blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0xef64a280 bio_integrity_prep +EXPORT_SYMBOL vmlinux 0xef9336e1 bio_split +EXPORT_SYMBOL vmlinux 0xefdd70ce security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0xefde1bbe flush_dcache_range +EXPORT_SYMBOL vmlinux 0xefe444f5 agp_put_bridge +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf00526ae scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0xf00cbe17 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0xf01682c4 max8998_bulk_write +EXPORT_SYMBOL vmlinux 0xf0187927 __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0xf0321cdc ip6_route_output +EXPORT_SYMBOL vmlinux 0xf0328144 kunmap_high +EXPORT_SYMBOL vmlinux 0xf0342857 netpoll_send_udp +EXPORT_SYMBOL vmlinux 0xf0381772 i2c_del_adapter +EXPORT_SYMBOL vmlinux 0xf059a1c1 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0xf05ffa15 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0xf0619801 timekeeping_clocktai +EXPORT_SYMBOL vmlinux 0xf065f629 ioread16be +EXPORT_SYMBOL vmlinux 0xf06eeeb4 grab_cache_page_nowait +EXPORT_SYMBOL vmlinux 0xf087137d __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0xf09de776 get_random_int +EXPORT_SYMBOL vmlinux 0xf0aade84 unmap_underlying_metadata +EXPORT_SYMBOL vmlinux 0xf0ab772b bio_alloc_pages +EXPORT_SYMBOL vmlinux 0xf0d68ed6 clk_register_clkdevs +EXPORT_SYMBOL vmlinux 0xf0e57a9f bman_flush_stockpile +EXPORT_SYMBOL vmlinux 0xf0ef15b4 list_sort +EXPORT_SYMBOL vmlinux 0xf0f0746f inet6_add_offload +EXPORT_SYMBOL vmlinux 0xf0f1246c kvasprintf +EXPORT_SYMBOL vmlinux 0xf0fc899f file_open_root +EXPORT_SYMBOL vmlinux 0xf0fd4e8f rwsem_down_read_failed +EXPORT_SYMBOL vmlinux 0xf100416a remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xf106e61a mach_qemu_e500 +EXPORT_SYMBOL vmlinux 0xf10ca3e7 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0xf10de535 ioread8 +EXPORT_SYMBOL vmlinux 0xf11cd6ce down_interruptible +EXPORT_SYMBOL vmlinux 0xf11ddf25 xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0xf12dd76c generic_delete_inode +EXPORT_SYMBOL vmlinux 0xf13feb57 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0xf147dcb2 hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0xf14a207b rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0xf17c807e netlink_kernel_release +EXPORT_SYMBOL vmlinux 0xf17ec8f8 fsnotify_put_mark +EXPORT_SYMBOL vmlinux 0xf1829e50 pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1a070a2 pci_find_capability +EXPORT_SYMBOL vmlinux 0xf1bc50f2 tcp_init_cgroup +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1deabf2 div64_u64 +EXPORT_SYMBOL vmlinux 0xf1e06df1 gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1ee3b7a scsi_target_resume +EXPORT_SYMBOL vmlinux 0xf1efeb1b pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0xf202c5cb radix_tree_insert +EXPORT_SYMBOL vmlinux 0xf205bd5b mmc_cache_ctrl +EXPORT_SYMBOL vmlinux 0xf20dabd8 free_irq +EXPORT_SYMBOL vmlinux 0xf22881e8 lg_local_lock +EXPORT_SYMBOL vmlinux 0xf235bb03 vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf24b092f ip_options_compile +EXPORT_SYMBOL vmlinux 0xf2576cb9 ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL vmlinux 0xf25c87ba vc_cons +EXPORT_SYMBOL vmlinux 0xf2668b1d mmc_hw_reset_check +EXPORT_SYMBOL vmlinux 0xf270d1f1 deactivate_super +EXPORT_SYMBOL vmlinux 0xf27b0afb dev_err +EXPORT_SYMBOL vmlinux 0xf27f72c0 pci_domain_nr +EXPORT_SYMBOL vmlinux 0xf2a0af8f backlight_device_registered +EXPORT_SYMBOL vmlinux 0xf2a1b9be pci_dev_put +EXPORT_SYMBOL vmlinux 0xf2b1ac8e __getnstimeofday +EXPORT_SYMBOL vmlinux 0xf2e2808f tcp_gro_receive +EXPORT_SYMBOL vmlinux 0xf303dd97 nf_ct_attach +EXPORT_SYMBOL vmlinux 0xf31142db xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xf313da4e sha_transform +EXPORT_SYMBOL vmlinux 0xf322a206 bit_waitqueue +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf33509eb elv_rb_add +EXPORT_SYMBOL vmlinux 0xf33d1352 filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0xf3432c69 twl6040_power +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf366505e __blk_end_request_cur +EXPORT_SYMBOL vmlinux 0xf3712909 qman_query_congestion +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf39ef077 bio_copy_data +EXPORT_SYMBOL vmlinux 0xf3bf0bce __bitmap_complement +EXPORT_SYMBOL vmlinux 0xf3cfa691 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0xf3d0f4f0 agp_generic_alloc_by_type +EXPORT_SYMBOL vmlinux 0xf3d998fe __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0xf3de22b1 mach_p2020_rdb +EXPORT_SYMBOL vmlinux 0xf3de7985 max8925_bulk_read +EXPORT_SYMBOL vmlinux 0xf3f4ad8a page_readlink +EXPORT_SYMBOL vmlinux 0xf40b2297 __crypto_memneq +EXPORT_SYMBOL vmlinux 0xf419a6b7 unregister_quota_format +EXPORT_SYMBOL vmlinux 0xf419fe26 ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0xf441ac43 ioread8_rep +EXPORT_SYMBOL vmlinux 0xf4449388 timer_interrupt +EXPORT_SYMBOL vmlinux 0xf4586b69 cad_pid +EXPORT_SYMBOL vmlinux 0xf461dd48 rfkill_alloc +EXPORT_SYMBOL vmlinux 0xf49a8b25 udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0xf4b8444a qman_init_fq +EXPORT_SYMBOL vmlinux 0xf4b97f26 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4c7b2d2 vfs_writev +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf4f6566e sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0xf5108cea mmc_read_bkops_status +EXPORT_SYMBOL vmlinux 0xf5136b0e __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0xf515169f vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0xf5222143 _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0xf5230dd4 agp_generic_type_to_mask_type +EXPORT_SYMBOL vmlinux 0xf52321e0 atomic64_sub +EXPORT_SYMBOL vmlinux 0xf5365f48 remap_pfn_range +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf54545eb abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0xf55bc68d tty_unlock_pair +EXPORT_SYMBOL vmlinux 0xf5998a1f mb_cache_destroy +EXPORT_SYMBOL vmlinux 0xf599f780 __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0xf5a085c4 gen_pool_destroy +EXPORT_SYMBOL vmlinux 0xf5a62ecc _memset_io +EXPORT_SYMBOL vmlinux 0xf5b9eb37 truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0xf5c05914 generic_segment_checks +EXPORT_SYMBOL vmlinux 0xf5d4927a pci_dev_get +EXPORT_SYMBOL vmlinux 0xf5e1558d crash_shutdown_unregister +EXPORT_SYMBOL vmlinux 0xf5eb86ea blk_verify_command +EXPORT_SYMBOL vmlinux 0xf633e8b9 security_inode_init_security +EXPORT_SYMBOL vmlinux 0xf6388c56 sysctl_ip_default_ttl +EXPORT_SYMBOL vmlinux 0xf63ee7fd dev_emerg +EXPORT_SYMBOL vmlinux 0xf65b2c12 ata_port_printk +EXPORT_SYMBOL vmlinux 0xf65b4791 mmc_request_done +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf68687be __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xf69181e8 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0xf6b391b2 blk_queue_invalidate_tags +EXPORT_SYMBOL vmlinux 0xf6bb4729 color_table +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6ef85a3 fget_raw +EXPORT_SYMBOL vmlinux 0xf70384d7 __debugger_sstep +EXPORT_SYMBOL vmlinux 0xf705bab2 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0xf71521ba atomic64_add_return +EXPORT_SYMBOL vmlinux 0xf718f707 simple_transaction_set +EXPORT_SYMBOL vmlinux 0xf71c3ff3 no_llseek +EXPORT_SYMBOL vmlinux 0xf71dc325 pci_clear_mwi +EXPORT_SYMBOL vmlinux 0xf72ea774 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0xf73ec632 tty_register_driver +EXPORT_SYMBOL vmlinux 0xf741c793 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf7622d40 seq_bitmap_list +EXPORT_SYMBOL vmlinux 0xf7924cde page_follow_link_light +EXPORT_SYMBOL vmlinux 0xf7b54f13 zerocopy_sg_from_iovec +EXPORT_SYMBOL vmlinux 0xf7c93505 backlight_force_update +EXPORT_SYMBOL vmlinux 0xf7da18c3 elevator_alloc +EXPORT_SYMBOL vmlinux 0xf7e1a81f blk_put_request +EXPORT_SYMBOL vmlinux 0xf7e47daf md_error +EXPORT_SYMBOL vmlinux 0xf7f6ee9f dquot_quota_off +EXPORT_SYMBOL vmlinux 0xf7fc4d5c load_nls_default +EXPORT_SYMBOL vmlinux 0xf803fe39 bitmap_set +EXPORT_SYMBOL vmlinux 0xf807f35d tcp_sync_mss +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf827cb83 free_reserved_area +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf84b76d2 inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0xf864a58e blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0xf89a3d62 bman_affine_cpus +EXPORT_SYMBOL vmlinux 0xf89c8e07 ida_pre_get +EXPORT_SYMBOL vmlinux 0xf89de2d2 dquot_scan_active +EXPORT_SYMBOL vmlinux 0xf8e398fc memstart_addr +EXPORT_SYMBOL vmlinux 0xf8eb5ab5 pci_scan_bus +EXPORT_SYMBOL vmlinux 0xf9228003 get_immrbase +EXPORT_SYMBOL vmlinux 0xf9301ecb fb_pan_display +EXPORT_SYMBOL vmlinux 0xf9348cbc xz_dec_run +EXPORT_SYMBOL vmlinux 0xf940a328 __next_cpu +EXPORT_SYMBOL vmlinux 0xf9a3cf4e scsicam_bios_param +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9ade52b pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0xf9c367e0 iov_pages +EXPORT_SYMBOL vmlinux 0xf9d8023e scsi_unregister +EXPORT_SYMBOL vmlinux 0xf9e73082 scnprintf +EXPORT_SYMBOL vmlinux 0xfa0f193b udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0xfa15398c flush_icache_user_range +EXPORT_SYMBOL vmlinux 0xfa187487 blk_queue_end_tag +EXPORT_SYMBOL vmlinux 0xfa270879 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0xfa2ac0d4 netlink_broadcast +EXPORT_SYMBOL vmlinux 0xfa2beefe i8042_remove_filter +EXPORT_SYMBOL vmlinux 0xfa2c9983 dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa635412 tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0xfa6c8623 pme_ctx_ctrl_update_flow +EXPORT_SYMBOL vmlinux 0xfa7eb332 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0xfa7f2b64 fm_port_disable +EXPORT_SYMBOL vmlinux 0xfa7f3156 wl12xx_get_platform_data +EXPORT_SYMBOL vmlinux 0xfa81d380 padata_free +EXPORT_SYMBOL vmlinux 0xfaabd951 elv_rb_former_request +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfad7cc5f pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0xfadc7265 skb_kill_datagram +EXPORT_SYMBOL vmlinux 0xfae176d5 dquot_alloc +EXPORT_SYMBOL vmlinux 0xfae24a67 dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0xfae67b1f cap_mmap_addr +EXPORT_SYMBOL vmlinux 0xfae999f1 tty_lock +EXPORT_SYMBOL vmlinux 0xfaf4f27d netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0xfaf98462 bitrev32 +EXPORT_SYMBOL vmlinux 0xfb0b1c12 module_put +EXPORT_SYMBOL vmlinux 0xfb33ecf6 blk_run_queue_async +EXPORT_SYMBOL vmlinux 0xfb42a323 tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0xfb4c7a48 ps2_begin_command +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb94103e __clzdi2 +EXPORT_SYMBOL vmlinux 0xfb94fd95 set_binfmt +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbbb04e9 mach_p1010_rdb +EXPORT_SYMBOL vmlinux 0xfc02b7ad sysctl_tcp_wmem +EXPORT_SYMBOL vmlinux 0xfc031c64 __dquot_free_space +EXPORT_SYMBOL vmlinux 0xfc044a6d xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0xfc1c912f devm_gpio_request_one +EXPORT_SYMBOL vmlinux 0xfc3973cc vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc3b160f mempool_create_node +EXPORT_SYMBOL vmlinux 0xfc612756 seq_lseek +EXPORT_SYMBOL vmlinux 0xfc65459a kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0xfc9bc850 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0xfcaa04a0 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xfcb77cfd ipmi_free_recv_msg +EXPORT_SYMBOL vmlinux 0xfcc2a43c utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0xfcd8cc9b iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfcfa03ff fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0xfd23589a inet_confirm_addr +EXPORT_SYMBOL vmlinux 0xfd4fb56b sock_get_timestamp +EXPORT_SYMBOL vmlinux 0xfd6293c2 boot_tvec_bases +EXPORT_SYMBOL vmlinux 0xfd72a6d4 clear_nlink +EXPORT_SYMBOL vmlinux 0xfd86d062 generic_file_aio_read +EXPORT_SYMBOL vmlinux 0xfd99623a ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xfdae5802 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0xfdb6cedc _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0xfdb9b629 ioread32be +EXPORT_SYMBOL vmlinux 0xfdbe0288 pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0xfdcb496e pme_hw_flow_free +EXPORT_SYMBOL vmlinux 0xfdcf4bd8 block_read_full_page +EXPORT_SYMBOL vmlinux 0xfdd57eca xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0xfded48ed enable_kernel_fp +EXPORT_SYMBOL vmlinux 0xfdf18049 tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0xfdf92259 sock_update_classid +EXPORT_SYMBOL vmlinux 0xfdfc0b3b fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe35aa4a percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0xfe554d86 key_unlink +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe7c4287 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0xfe822d55 get_brgfreq +EXPORT_SYMBOL vmlinux 0xfec06a71 drop_nlink +EXPORT_SYMBOL vmlinux 0xfedadf76 bdi_register +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfef57245 pci_set_power_state +EXPORT_SYMBOL vmlinux 0xfef96e23 __scsi_print_command +EXPORT_SYMBOL vmlinux 0xff0941db netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff3556ca generic_setlease +EXPORT_SYMBOL vmlinux 0xff4c1889 mutex_unlock +EXPORT_SYMBOL vmlinux 0xff4d7b8b security_task_getsecid +EXPORT_SYMBOL vmlinux 0xff6580a8 dquot_disable +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff6dea25 smp_hw_index +EXPORT_SYMBOL vmlinux 0xff7559e4 ioport_resource +EXPORT_SYMBOL vmlinux 0xff98d7f9 tcp_getsockopt +EXPORT_SYMBOL vmlinux 0xff9ca065 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0xffcc5b04 cleancache_register_ops +EXPORT_SYMBOL vmlinux 0xffcceb86 tcp_prequeue +EXPORT_SYMBOL vmlinux 0xffd5a395 default_wake_function +EXPORT_SYMBOL vmlinux 0xffdae10f __napi_complete +EXPORT_SYMBOL vmlinux 0xffe500be dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xffe874f3 user_path_create +EXPORT_SYMBOL vmlinux 0xffeeadc2 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0xfff69349 tcp_simple_retransmit +EXPORT_SYMBOL_GPL crypto/af_alg 0x0eb31281 af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x13932eb4 af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x2694cf3a af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0x58716898 af_alg_wait_for_completion +EXPORT_SYMBOL_GPL crypto/af_alg 0x5aa5a4f2 af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x5ed80cb0 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x6648dffb af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0x93957c0c af_alg_cmsg_send +EXPORT_SYMBOL_GPL crypto/af_alg 0xca449577 af_alg_complete +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x183ff450 async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x29dd8cda async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0xc6aa292c async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x1e698544 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x71901054 async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x089a9197 __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x08cb2b40 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x224a7270 async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xe3055270 async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x5c3fdad6 async_xor +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xaa131cfb async_xor_val +EXPORT_SYMBOL_GPL crypto/authenc 0x587ef278 crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0x3147c17d blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x27278ca9 __cast5_encrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x4a2a3ca6 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0xcb4847d3 cast5_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1291971c __cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1e2c961f __cast6_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x63f4a041 cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x8f04034a __cast6_encrypt +EXPORT_SYMBOL_GPL crypto/cast_common 0x08aa6fb7 cast_s1 +EXPORT_SYMBOL_GPL crypto/cast_common 0x0c5fbf8a cast_s3 +EXPORT_SYMBOL_GPL crypto/cast_common 0xe39dd4b4 cast_s2 +EXPORT_SYMBOL_GPL crypto/cast_common 0xee83a4f3 cast_s4 +EXPORT_SYMBOL_GPL crypto/cryptd 0x18385d15 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0x2021297b cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x262672db cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x26e4a114 cryptd_ablkcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x5b601cc9 cryptd_alloc_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x86ed5c9b cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xa5b38086 cryptd_free_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0xb99061f7 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xc90d7c11 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xcab20a4c cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/des_generic 0xcfd9a2c0 des_ekey +EXPORT_SYMBOL_GPL crypto/lrw 0x0414f8e9 lrw_crypt +EXPORT_SYMBOL_GPL crypto/lrw 0x3864eb66 lrw_free_table +EXPORT_SYMBOL_GPL crypto/lrw 0xcd074900 lrw_init_table +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x5ddb33e9 __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x77b39cb4 __serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x7b6c3de8 serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x8a1a99ad __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/twofish_common 0x0f62991e twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0x6c3229bb __twofish_setkey +EXPORT_SYMBOL_GPL crypto/xts 0xde3ae388 xts_crypt +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x48c5fa58 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x59fbebe7 ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x7d74deec ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x8af7a786 ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xaa6f307f ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xb7235e21 ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xe3617ec1 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x2e4445fd ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x2e7d5f3c ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x46f6d2d9 ahci_shost_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x49fb240d ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x4ca56f64 ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x4e0786bc ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5eacba1f ahci_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x694f923e ahci_thread_fn +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6ab1558b ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6e05c4e7 ahci_hw_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8ba854ac ahci_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8c161f1c ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x9daaab1b ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa344ea11 ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa9cf2dfc ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xaa5f1406 ahci_sdev_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd149ff46 ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd9fc16b9 ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xddbdb6b3 ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea4441ba ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xed40f2f8 ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xf163d5ca ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xfdb7aca6 ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0x35a3a6bf __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/ata/pata_sis 0x5a1aebaf sis_info133_for_sata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x14102f23 ks0108_displaystate +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x48a70518 ks0108_writedata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x4f506333 ks0108_startline +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x6edae968 ks0108_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xbf4774db ks0108_writecontrol +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xedde6df2 ks0108_page +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xfee8ef7b ks0108_address +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0d520efc bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x22bda831 bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2a096797 bcma_core_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2fb104b0 __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x358b161e bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x39cf2497 bcma_core_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x3ae8982a bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x44eae64c bcma_core_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x50f2bbe1 bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x563abe73 bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x73b87b37 bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x96c1c172 bcma_find_core +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x9cc74468 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc45573c6 bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xccb7ac10 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xccc5ade8 bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd30557ac bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe252eb92 bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xeca4fc2a bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xeeca032e bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf8217b4b bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf859812f bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xfd55db69 bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x2905ccbf btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x2bcfb527 btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x34ff99db btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x3dcb5845 btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x4d8b43ac btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x52559566 btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x59f8de94 btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x7afe4fd0 btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xa8657bd9 btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xee178814 btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x3a5f6507 dw_dma_shutdown +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xc154f6da dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xfcecd6b8 dw_dma_remove +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0730521d edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x1cb18ec1 edac_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x23ce58ba edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x28631cf0 edac_pci_handle_npe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x33777395 edac_pci_reset_delay_period +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x3f1d6e54 edac_device_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x41a7d977 edac_mc_add_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x49b2a6f3 edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x69259f22 edac_mem_types +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6953293e edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6c438e25 edac_device_handle_ce +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x731239a6 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x8f5d2f37 find_mci_by_dev +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x91b4843e edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x91d0cf12 edac_pci_handle_pe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x9c9eda62 edac_pci_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x9f59ef33 edac_mc_del_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xa5a843ef edac_mc_free +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xb1a11314 edac_pci_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xb4c72220 edac_device_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc43e81fc edac_device_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xcb584551 edac_device_handle_ue +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xcd70c635 edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xd442656a edac_mc_alloc +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xf4ade51f fw_card_release +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x3660c1c3 bgpio_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0xf764ca86 bgpio_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x2268362c __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0xf2ae5136 __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x03e70d65 drm_vm_open_locked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x9884b10c drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xfe4349f0 drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x275dd3e6 ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x6adf436b ttm_prime_fd_to_handle +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xb84fd3a9 ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xce36343e ttm_prime_handle_to_fd +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xea68710e ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0b3d529c hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x13408f19 hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x16418de7 hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1abb8fbd hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x231f7317 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x35589ad8 hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4038de74 hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x48bb260a hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4906a967 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x50ea5224 hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x55abd5fc hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5d5bbc00 hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x60f97df7 hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x64e789fe hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6baa1149 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6f93ee3a hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7cb1d6f7 hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x817dfb57 hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x92286898 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9ad3a313 hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa145d444 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa80b254c hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb5e30c9a hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb65f40d9 hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc1c7778b hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc7f46587 hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xca81c5cd hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcc8a4885 hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd697d9ac hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd799f1df hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe2296de1 hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe53dc3e4 hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe5d9affc hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf36caa6c hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf83df502 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x2f622ea1 roccat_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x7c8c0fcf roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x8c4181ec roccat_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x2e2c8118 roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x57334d66 roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x74b84cb9 roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x7d27c5a4 roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x8aee6b17 roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xe67bbfb8 roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x1215d1c2 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x4820649d sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x56c82740 sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x58bec103 sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x76c71742 sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x8400e2bf sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xdd0ddad7 sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xe2a56dc1 sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x01fd453e usbhid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0xfe503a2c hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x10e8ca82 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2734cad6 hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x3ec5e7e1 hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x4158ade5 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5b7402d2 hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x6bfe42c3 hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x73574dd6 hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x779e0973 hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x7b3eec1d hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x7c726908 hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xb098bae3 hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xe1f4aef1 hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xffcfdaaa hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x81f79d9d adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xeeef39db adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x154a1390 pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x2c6e924a pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x322f65c9 pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x3bac9a32 pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x40af12d6 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x46e37b2a pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x5e687bbd pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x72e1a211 pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x9bdd4795 pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x9e193994 pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xa95ee7a9 pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xca831c19 pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x06001d49 i2c_dw_is_enabled +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x13f2aacc i2c_dw_disable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x1fcbab14 i2c_dw_func +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x22872de8 i2c_dw_clear_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5bb1170b i2c_dw_isr +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x62b45b71 i2c_dw_enable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x89a79468 i2c_dw_init +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x8a0cd257 i2c_dw_xfer +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xec9f07b9 i2c_dw_disable_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xfe6567c0 i2c_dw_read_comp_param +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x20f1561a i2c_del_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xdd64507a i2c_add_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x315978a5 i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xd52e55a4 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x1cfdbbed ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x1df90db4 ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x40e2bfca ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x498d19dd ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x5e6e5b5a ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x600e450d ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x6afad6d0 ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x70d83422 ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x9ac319d7 ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x1113c24b adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x12b66067 adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x57ff98e4 adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x67406482 adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x82b8c664 adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x95452588 adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x9b063efd adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xc5235d30 adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xc9cc3583 adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xd60b4d6a adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xe87d232a adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xe9485e79 adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x010f47f8 iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0ead1559 iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x139ea979 iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1ab362bd iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x20a7a7d3 iio_scan_mask_query +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x22809ee9 iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x267c0508 iio_channel_release_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x285ff322 iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2a1fab3c iio_channel_stop_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x44470643 iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x44cb2cb8 iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x48014446 iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4d26e6d2 iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4ec1e6e1 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x756d9767 iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7ba0b9e2 devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7fd263d7 iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x811e8602 iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x81f54006 devm_iio_trigger_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x97099744 iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9ea846a9 devm_iio_device_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9fd7f541 iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa5e7a212 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa6169065 iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa7a84460 iio_scan_mask_set +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xafa28c73 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd8aef030 iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd9e6eeff iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xdde2a837 devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe0d001e4 iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe248ec56 iio_update_demux +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe7b4622f iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0xa6f998a8 input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0x05893e9e matrix_keypad_parse_of_params +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x533f47c5 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x65d5f135 cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xafb59525 cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xe4afeb00 cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x2b92ef74 cyttsp_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x4e32e6cf cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x8481c304 cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x1fb35f9e cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0xadc0981c cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x06e6bb73 wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x3b14691f wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x4638bb9f wm9713_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x4f18be79 wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x8a92bb01 wm9712_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x972ca65b wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xb476351e wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xc25df434 wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xcfaf3093 wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xd8bcd1c1 wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xe2d431a2 wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xeccd0d1e wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x020bc474 ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x0bcc470d ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x18d828cc ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x5f368165 ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x72eae5c4 ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x8ab4ace1 ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x8c9582b0 ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xd3288e1f ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xfc6b9718 ipack_get_device +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0x23359aff unregister_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0xce1414b2 register_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x12abb243 gigaset_skb_sent +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x18c577bb gigaset_freedriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x40b63259 gigaset_freecs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x44df6934 gigaset_handle_modem_response +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x454aa44f gigaset_debuglevel +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x821de0ae gigaset_start +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8eff32df gigaset_dbg_buffer +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x9a124d12 gigaset_add_event +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xae6f31f4 gigaset_shutdown +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xbd16061e gigaset_fill_inbuf +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xbdf2a281 gigaset_initdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xcb5a7f97 gigaset_isdn_rcv_err +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xe458fc07 gigaset_stop +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xeb16938f gigaset_skb_rcvd +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xed89a066 gigaset_initcs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xf1ca2e27 gigaset_m10x_input +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xf32cab5d gigaset_if_receive +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xf33a68f0 gigaset_blockdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xf458e19b gigaset_m10x_send_skb +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x0a7c5b03 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x1330efc3 lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x1ffdd4c5 lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x20b690e0 lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x7cbed5c8 lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x85092869 lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x9b763549 lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x9e60b8a2 lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xba2ba611 lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xe4ae623a lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xfb0a49f1 lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x749e05f2 ledtrig_flash_ctrl +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x7903e46e ledtrig_torch_ctrl +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x0a0527be wf_register_client +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x0b50518c wf_register_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x129974b9 wf_put_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x2898c44e wf_get_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x2a6ec089 wf_find_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x5656dbc4 wf_get_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x5ee78728 wf_unregister_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x74dbcb3a wf_unregister_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x75147afa wf_set_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x8ae1ed33 wf_register_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x94765fac wf_critical_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xa2f19a49 wf_is_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xbcace2a5 wf_unregister_client +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xbf47fd56 wf_put_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xed82a14f wf_clear_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xf9591e92 wf_find_sensor +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x10e06e97 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x155ea9c7 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1822fd23 __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1f2ba9ac __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x260d47cf __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x27831e89 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2dec45e0 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x347aebe1 __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x41c861f0 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x49856e5a __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x50e8c39f __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x574ba881 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x628eb712 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6770a402 __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x785cfc9f __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7b488fb1 __tracepoint_bcache_alloc_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x91f2af34 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa09069a3 __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa591c5d6 __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa6890b59 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xaf60c34b __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb950d2ae __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbd4b89b6 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xce0e6218 __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd40fba32 __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xdc5ea5a5 __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf58ce244 __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf5bcbdc7 __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfc1d5275 __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfcdf28c9 __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xffc308e4 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x00e01dcf dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x27ce1116 dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x36f34a89 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6969b025 dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x9ac14566 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb6d5c65d dm_deferred_set_add_work +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb70b342a dm_bio_prison_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xd786f9fa dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xebd06eaf dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xf706f263 dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x06314a25 dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x22163b69 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x3909d3a8 dm_bufio_prefetch +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x594952bd dm_bufio_read +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x62a23587 dm_bufio_get_device_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9b2b253a dm_bufio_get +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa82b2066 dm_bufio_write_dirty_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc9a3422d dm_bufio_write_dirty_buffers_async +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd4bddf5c dm_bufio_issue_flush +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xdc69e37a dm_bufio_get_block_number +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe004ee92 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe6024e59 dm_bufio_release +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xebcc64a4 dm_bufio_get_block_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xeca7949e dm_bufio_client_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x2eba1011 dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x4cac875b dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x55c27c61 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x6bb5f6df dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x720b48aa dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xbb1f72ad dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xbeeedb79 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x2b546814 dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x634484ca dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x09472122 dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x1a595718 dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x38efaf5a dm_region_hash_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3a18389a dm_rh_update_states +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x4e96237b dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x5c86904f dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7774620f dm_rh_stop_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7d053fc5 dm_rh_start_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7f3783f2 dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa53387c7 dm_rh_flush +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa83588eb dm_rh_recovery_end +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa8813ad6 dm_rh_region_to_sector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xc66ce277 dm_rh_get_region_size +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xca3010b8 dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xcab63c3d dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xf37a3cfe dm_rh_get_region_key +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfd93482e dm_rh_recovery_in_flight +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfe71c972 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0054f69d dm_tm_pre_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x01445176 dm_btree_find_highest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x11eab9fe dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x150c85ce dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1cac81ac dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2025e954 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2c112836 dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2e730a21 dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f40da68 dm_bm_set_read_write +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f74609d dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x32b5f546 dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x33c03da6 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x38c75c44 dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3ad0f55b dm_bm_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x40f7bd91 dm_tm_inc +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5e6aea80 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x619701dc dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x62c1b9ee dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x65a95d73 dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x68fae9d2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x72289260 dm_block_manager_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7ade1071 dm_tm_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7b047bd9 dm_tm_create_non_blocking_clone +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x80c89b3d dm_tm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x832bf228 dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x858c8d94 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89f1e1cc dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x966a8838 dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9b4b5b29 dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9e798e22 dm_bm_set_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa0bbbb49 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa13861b4 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2507774 dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa87c5b4d dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaee02382 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb7bad799 dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb9a6ecf8 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbcfdc290 dm_tm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbd50ebbb dm_btree_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbe0497aa dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xca40abd5 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd041d62b dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe44b4b9b dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xead1e727 dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xed1e1f96 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf475af48 dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/raid1 0x0a95e731 md_raid1_congested +EXPORT_SYMBOL_GPL drivers/md/raid10 0xc0cf2c8a md_raid10_congested +EXPORT_SYMBOL_GPL drivers/md/raid456 0xcba95a66 md_raid5_congested +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x0ccfb022 saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x5de9304d saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x75cb3ffb saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x864eb4f7 saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xad0a4625 saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xbc123062 saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xc014d194 saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xd8421c94 saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe1dd3f69 saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xedefa5da saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x0360ab72 saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x03cecb31 saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x074c77ae saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x3a49a4ac saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x43304cd7 saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x4ba0b139 saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x6e255d47 saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x08375e52 smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x091d4330 smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x0a94a0bd smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x37d91069 smsendian_handle_tx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x3971405e smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x3f99eb22 sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x404eed60 sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x49d6f6d9 sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x63222b29 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x638e254e smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x67dbdb8c smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x6a195adf sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7c576277 smsendian_handle_message_header +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x899e6556 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9c2225ed smscore_translate_msg +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa004f061 smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa4b8b3e3 smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa6453362 smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa6cdf375 smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xad55e55a sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbe19a74e smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0x6b6786ed cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0x7316598d tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0xc347a8a5 cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x08d0b744 mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x19aa67c3 mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x275aa37d mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x5468d6be mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x59b152dd mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x70809d38 mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x8157e4db mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x835b13ef mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x85b76708 mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x87bb903c mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb1cd374c mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb3c1c078 mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xc30e3586 mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xe0b74b99 mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xf51dec97 mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xf6d5ff76 mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xff6c24c1 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x16cf7320 saa7134_g_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x3bb6e1f7 saa7134_queryctrl +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x6384a6f0 saa7134_s_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xa9fdc82e saa7134_s_std_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xffe79619 saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x0006b74b ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xcb31be35 ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xe602cdee ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xf2cbb0f2 ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xf3a7d36b ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xf9f61da0 ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xfc9989f5 ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x2de31b43 radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0xea66426a radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x00c6c106 ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1c6a1fe6 ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1d792330 rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x52d094d1 rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x553efb91 rc_core_debug +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x597a0502 rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x59962601 rc_open +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x60122173 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6343ed7c rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x864d7e8c rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x87830b57 rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x92585d12 rc_close +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa3c87783 rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa625ce7c rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd405fd87 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd759cf3a ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xde45a12e ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf6b48c3c rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf713d0b0 ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xffe85f57 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0xbd105fb7 mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0xf5202781 microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0x401d6d2e mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0xc083d9b1 r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0x68dc0668 tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0x46a5d549 tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x326e11b8 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x712e1904 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x85d61f33 tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x3c766d1f tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x72ba6cf4 tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x2f38597a tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x54fefa15 tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0xcc923283 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x3f6919f5 cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x3faa82a4 cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4d279a2f cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x5e0346c0 cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6015d917 cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x67ec7c44 cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x68c00710 cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6dd49fa9 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x95f1c212 cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xb1981a9b cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xb247c080 cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xbde216a5 cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd3806b2f cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xdf54e8bc is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xe60b5145 cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xee116732 cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf09f2662 cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf0f22e7d cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xfd544bce cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0x628a1955 mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0xae47505e mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x413c3239 em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x4f181940 em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x62156409 em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x6ec203a2 em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x8b216bdd em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x98471047 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xa1c6bb0b em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xa1d364c8 em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xb5735b5a em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xb7fd4230 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xbf5b9ed9 em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xeba21d55 em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xeec6fee4 em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf69153d0 em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x64adc459 tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x6e570276 tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xb7d3c993 tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xc7aa6df3 tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x00a322bc v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x01c483a9 v4l2_get_timestamp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x43ea6c6a v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x4711debe v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x5bee9ed8 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x813f3de4 v4l2_find_nearest_format +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xb5a01b16 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xe394e330 v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x08982d59 v4l2_match_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x221d2fbc v4l2_enum_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x36e8756a v4l2_find_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x4103badb v4l2_print_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x53105839 v4l2_detect_cvt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6976cfe0 v4l2_valid_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6f344bb9 v4l2_calc_aspect_ratio +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x7eaf8e7a v4l2_detect_gtf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xb0891da2 v4l2_dv_timings_presets +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x31ae7626 v4l2_int_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x4631cff2 v4l2_int_ioctl_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xa5228b24 v4l2_int_device_try_attach_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xaafaf1c7 v4l2_int_ioctl_0 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xf9895b18 v4l2_int_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x00c8521f v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x077b49ba v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x17eb0eee v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x2378eaec v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3ac13ac0 v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3e986acf v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5c81a667 v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6a1d5fcf v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6e6f3f1d v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x87ead7fb v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x99bc9098 v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa07fe833 v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xbfe3855f v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd1808ea0 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe6e2ca43 v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x0c86c5b4 videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x12fa5e44 videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1730daa1 videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1f67c9fb videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x239dbbf2 videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x48456502 videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x58f6573d videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6bd4b1b5 videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x72d564d9 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x77adb3b6 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7953dd76 videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7e2ae40e __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7fc6b1d3 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9d62038b videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb688d30c videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb80666b3 videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc227e756 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc767762e videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc84bc8db videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xd080f569 videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xd195fe87 videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xd80f37c4 videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xeb165551 videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xffafdb92 videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x900a4e4b videobuf_to_dma_contig +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0xcb0a9c21 videobuf_dma_contig_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0xe8f933b4 videobuf_queue_dma_contig_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x0e91ae25 videobuf_dma_map +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x1585c7bc videobuf_dma_init_overlay +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x35a3e9c1 videobuf_dma_init_user +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x5bcd5294 videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x90003fd1 videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x98880206 videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xa825c75b videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xc1ff46fe videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xe8d5d195 videobuf_dma_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xf0396117 videobuf_dma_init_kernel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x1f94270f videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x27a965b2 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0xdc576b56 videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x0635ccec vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x12efd8a9 vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x20bc2030 vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2661e643 vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2a743801 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2c7dea68 vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x3f8882a3 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x4895eed4 vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x567458d2 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x56eb52e6 vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x592ddb84 vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x64de01b0 vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x653296a5 vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x668978f4 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x7671404d vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x7d5dd7a1 vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x80ef4998 vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x817417b5 vb2_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x85d1990f vb2_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x9235c263 vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x9fa77da6 vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x9fe82303 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb34265ac vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb36477a0 vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb507c1a2 vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xbc876477 vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xc119e760 vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xcfce06e1 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd6d9cd08 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd819f035 vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xdeb60781 vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xe7c6cb44 vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xf9a1e6d4 vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xfb751441 vb2_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xd0faa0d0 vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xe57f0426 vb2_dma_contig_cleanup_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xf8ff71ab vb2_dma_contig_init_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-sg 0xba13fee8 vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x09d65be4 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x3854cdc4 vb2_get_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x70ae65bf vb2_get_contig_userptr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0xcff0ea72 vb2_put_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-vmalloc 0xd7b60389 vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x07e3be0b v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0e3bb99b v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x280f417d v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2c85ea02 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3a2f55ce v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4c017945 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7785db67 v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x90d2eca4 v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa5664e3f v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xae02614d v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb0debf1e v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb6c7a777 v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb7a8ee11 v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbbdc84d8 v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc075e5d9 v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc54eb842 v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc8034379 v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcaeaab4d v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcc2303d5 v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe510a53b v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xec71bcbf v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf0cdb2cd v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf3e80110 v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x36cec1d7 i2o_pool_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x77c21765 i2o_pool_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x90019175 i2o_dma_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xb4289a84 i2o_dma_map_single +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xcce7d7a8 i2o_sg_tablesize +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xd8c9ab5c i2o_dma_realloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xd9696cd4 i2o_dma_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xe1a8e7f6 i2o_dma_map_sg +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x186a96c1 pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x97b81d15 pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xbe43f20f pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x01a32dc9 kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x0326372a kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x4b74e57b kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xc77db464 kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xd173decd kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xe2fb317f kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xe36b11b4 kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xe4dc1f33 kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x0945661a lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x2291e7a9 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xb8837a35 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x4c08904b lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x6ef1ca5f lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x89ee4167 lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xa18b448a lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xc95559dc lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xd3c2d779 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xe8781fcf lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x0864aeb3 mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x3c690747 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x6edcb90f mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x7a56e8a0 mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x7cd34c67 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xdeaa4dd6 mc13xxx_common_cleanup +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x1475cecd pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x3d751713 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x42f1ef1b pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x479e9779 pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x4e5b374f pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xa52a3f1a pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xab3cb942 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xb858bf8b pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xd4b95823 pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xd6e9e1bb pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xf4356f36 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x018a7c5f pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xe6ccb64b pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x121df6fa pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x296ad325 pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xafddeba8 pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xc412b34e pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xeeae6048 pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x01a33234 retu_write +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x4fca3918 retu_read +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x08f07958 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x179bef0f rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x191a0550 rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x3344f285 rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x3635caca rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x3ce22789 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x55a25dcb rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x58a12626 rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x59975557 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x5c3b6275 rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x897f97c0 rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x8aec145b rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x95a001a0 rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x9e7e2813 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xa69b13a1 rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xad5ce0c4 rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xb8842b0d rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xce392dd6 rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xd5a087b6 rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xe195a2ea rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xe34136a1 rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x03ae1cf3 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x13d58ad3 si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x19ff9136 si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x1af3e0eb si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x247b9955 si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x248ad6f4 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x29b649e7 si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x307f4f96 si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3c2551b5 si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4adb6bd7 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x544459b9 si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x61b684c3 si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6933ba44 si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x703bea4a si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x79a43363 si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x810bf3c8 si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8be2df7e si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x92452084 si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x97ef98b2 si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa4bfc768 si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb4fdb241 si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xbd16e930 si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc3357ade si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xce2d0632 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd3840a2c si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xdc5388db si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xdc966fcb si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xdd08a708 si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xef8b3c68 si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf372effd si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf48ade4f si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf5408386 si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfe3fd227 si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xffd9f740 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x1eaf5597 sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x51047f14 sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x7faa636c sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xbb6ceb5e sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xdb7075cb sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x5cb04ffd tps65217_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xa63442ac tps65217_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xa96337ed tps65217_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xeff79298 tps65217_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/twl4030-madc 0x4362dc66 twl4030_get_madc_conversion +EXPORT_SYMBOL_GPL drivers/mfd/twl4030-madc 0x9effbf1a twl4030_madc_conversion +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0xc3753d34 ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x00ead4cf cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x4bd4b864 cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xa3ecf66a cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xdc42bce7 cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x27cb133b eeprom_93cx6_multiread +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x63d2ff63 eeprom_93cx6_wren +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x822222db eeprom_93cx6_write +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x98bb5a22 eeprom_93cx6_read +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x012af2b8 enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x2da321df enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x33ba6656 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x733ba8b3 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x7e8a7df9 enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x8428dcf0 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x9056bff4 enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x093f15b5 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x27152d6b lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x2c914c4c lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x6bd11897 lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x97a05c63 lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xb0c9d75d lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xddd7c28e lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xef5f28b7 lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x4dbbe7cd st_register +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x7a7449f9 st_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x1e9bfe1e sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x2966d53f sdhci_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x2ba9e746 sdhci_enable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x5c387307 sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x73ca1b15 sdhci_send_command +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x90b8c3c2 sdhci_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa4bd6700 sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xad8904f2 sdhci_disable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xadf5bf67 sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xb848840a sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xee2541a8 sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x1df1ce36 sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x270ad22b sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x71395576 sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xa73bb019 sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xa8faf243 sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xce71838f sdhci_get_of_property +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xf0f24b30 sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x47a316b2 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x859416cc cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xbabd3324 cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x3f719ad1 cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x4123d101 cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xcc885557 cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x34eec757 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x37127bda cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x70cfd398 cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xd406ba79 cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x05b0cfdb unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0caaeec8 __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x154608b7 mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1ac97303 mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1cad0bbd mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1d903064 mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x25fa80da mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2e66bbed __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x32d4aafe mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x38177096 mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3a02c250 mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x41a24601 mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x427e1344 register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5a685d5a mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x63052bbf mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6c0d7ae8 mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6f17c03b mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x78d14363 deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7ce1cd9e register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7e0af973 mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7eff1748 put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8606b548 mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x88bd16e6 mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8b3398b6 __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8c2efdf7 kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8e47cf09 mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x94cdfcd7 mount_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa1f6d779 get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa4315481 mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa5fbe203 mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa621d2e8 mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb18813e4 mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb5be3f23 mtd_erase_callback +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xcafabb79 mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xcc764559 mtd_is_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd8256710 mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xda1f1d96 mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf0c68e0e mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf2193ceb get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf8dadd07 mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xff40c3fe mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x423260bd register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x624ac88b add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x9291046f mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xc2cc1be5 deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xfdf82d40 del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0x1c3a84eb nand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0x8389ee1b nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/sm_common 0x91f3b793 sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0xa5af258f onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0xf8d4fcd5 onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x28506e7c ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x2d5e5156 ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x312c3f76 ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x4970b0b8 ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5cd816a8 ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5cfdd22d ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x77ab4aa6 ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x89595bdc ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x8a592e01 ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x8ea70e1a ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xa7a70717 ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc8cf3ac7 ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xde6aaabc ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xe26de21d ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x06ac721f free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x41a58290 unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x4218e5ad c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x6cf90667 register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xbb18b727 alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xbec18752 c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x06a1875e can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x222c295a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2cd34558 alloc_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x33a8145a devm_can_led_init +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x3fbbe7c4 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x511bd4a4 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x74e9591c can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8093fa80 open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x88a1a8f7 alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xae6836d1 free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb346573b can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb4d47fff can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xbe7723a3 close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xc19cb5a7 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xc663ea12 can_led_event +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xd6ca98d4 safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe9362581 can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x1546a421 unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x4b2ddede register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xae7954cf free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xcb88c7bf alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x0d18fa96 register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x2eecc1ad unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x53ac56ec free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x5753de26 alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x0fa5cdf6 macb_ioctl +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x1576af5f macb_mii_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x58a49f53 macb_get_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x59af4298 macb_ethtool_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x7118f38d macb_set_rx_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x961dbbcd macb_get_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xc748db2e macb_set_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x00926536 mlx4_fmr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0310a80f mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x036620a7 mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0c83e878 mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1396fb6c mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1475a4f6 mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1c3700d2 __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1f58260b mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x21aaa8aa mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x22407580 mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x27e2bd29 mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x29325a39 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x29a1ee2f mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2a3dc479 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2b296158 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x319b87ae mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x36315827 mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x363556b0 mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3b9594af mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3bada670 mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3ca15c41 mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3f239fe6 mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3fd3c5e9 mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3ffe8f32 mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x43e9d420 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x456bd3e8 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4ae773fd mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4c2987c2 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4e9e6085 mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x50cca35e mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5261ca28 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x55a07de1 mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5718d779 mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x57982386 mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5c605a44 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5fc81a2d mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x62808ead mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6281f1c5 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x62b6d8f2 __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x69ec3ab9 mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6bbaaab0 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x72d90e84 mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x731a3f39 mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x735bc35c mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x746580e4 mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x787a5631 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7963c52f mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7e4d4ae3 mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7ea3a192 mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7f48d35d mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x81306e14 mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x89ae04d5 mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8b38270d mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8bb793dc mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8c0598f6 mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9171a0c2 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x92378f73 mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x92f3bf39 mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9356514e mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x94e07a93 mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x952b7c95 mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x95af5eb3 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9a48d3ef mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9a6d8b3f mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa3b1c050 mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa42ec933 mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa42fbdae mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa5ce4979 mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa7b4c939 mlx4_map_phys_fmr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaed11ff9 mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb083cab8 mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb0f67b0e mlx4_fmr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb652c267 mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb87745d0 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbac44bc4 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbb6bdfbc mlx4_fmr_unmap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc15ec192 mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc271af26 mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc33841ae mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc3ada770 __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcaf6647d mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd9978795 mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xde6a760f mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe0be6eee mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe0d9cb57 mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe1634dfe mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe583aa2f mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe70cedf8 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe7bd178a mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe92a3fb8 mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeb6a8efc mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xef4bac27 mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf16a4253 mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf32d4cc3 mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf539962d mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf792781d mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfbbad150 mlx4_fmr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfbf24bac mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfdcf3b03 mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xffbc0ebb mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0b24f73f mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x17bbb7ca mlx5_core_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1c687a40 mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1d54904c mlx5_core_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2818dd8c mlx5_destroy_unmap_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2f91682f mlx5_create_map_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x435a544c mlx5_core_mad_ifc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x57fe18f2 mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5b27d849 mlx5_core_destroy_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6b7be5b5 mlx5_core_xrcd_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x71887bec mlx5_core_eq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x947c0448 mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa7d0bfe6 mlx5_core_create_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd6c4ef56 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe1625580 mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf6572a6a mlx5_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xffda32b0 mlx5_core_qp_modify +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x36af076f macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x487af20a macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xbfd0260e macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xe0630d0b macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xe63cca6d macvlan_start_xmit +EXPORT_SYMBOL_GPL drivers/net/macvtap 0x2b02d96d macvtap_get_socket +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x1a5704b1 usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x4719942f usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x8b60e7b5 usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xbea35eaa usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x086b29d9 cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x382907e2 cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x45fbc854 cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x8b278e45 cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xb7f5b8fa cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xe78b586b cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xf37aec76 cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xfe7d9ef3 cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x088b4fb4 generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x95505fec rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xae52b9dd rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xb1508dbe rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xd8210a5c rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xe0e93bed rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x01376a8d usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x1991da06 usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x212cee90 usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x259f56fc usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x269cce9a usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x26ca4e1f usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x26d9b475 usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x300a0318 usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x34cb58f9 usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x35fe71ef usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x377946ec usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x41d43e59 usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4c1ca1bc usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4de1891f usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x530fab73 usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x60ecd848 usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6acbee39 usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x702ae1c6 usbnet_set_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x999f0272 usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa09dfbd0 usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa8012c9f usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb3619e2e usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb99f914b usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xbb142d36 usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xbc9a33f6 usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xbfd0c1a7 usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc300f172 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc88f090d usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe0d4745a usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe4237659 usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe7e6d911 usbnet_get_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf297c058 usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x17eab110 vxlan_sock_release +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x4e830468 vxlan_xmit_skb +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x9636c884 vxlan_get_rx_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x9f09fa3a vxlan_sock_add +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xf6ea32fb vxlan_src_port +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x0c890f9e i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x0e59c5a3 i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x0eee057d i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x1800c0ce i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x26ef1dd2 i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x283760af i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x35950b83 i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x3ea67492 i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x4f940259 i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x66ab0e11 i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x8a9ee15d i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x9ee0f2b5 i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xcbf79408 i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xcf74dd6b i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xdd91c554 i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe45bb685 i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x108c8cf6 cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x13e8baeb cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x7c044647 cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x7ea72092 cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/ipw2x00/libipw 0x74f53c23 libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x070f177d il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x5e333178 il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x68bd7d15 _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xb2e10701 il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xcefacdd1 il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x0d556623 iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1291ef1b iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1ac36ff0 iwl_notification_wait_notify +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x3d548dab iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x49693866 iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5561ddb3 __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5d0a212e iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x6bdc4d2b iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x76baf8cd __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x7cc6a71e iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8c5d5ab3 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8f6b1faf iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x9bd15536 iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x9f17042c iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xa11e0479 __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xa2f1d974 iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xaa6d08eb iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xb29dd28a __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xb8dd1357 iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc59d1518 iwl_nvm_check_version +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc67c31ed iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc7a06e26 __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc8d6bbfb iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd23f085a iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd5dd222f iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xdb02f9c3 iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xde52d560 iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xf184a49b iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x07d24083 lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x103bd3b6 lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x2401de87 lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x33ebf984 lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x41a6ea31 lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x61f5dac3 lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x73152a12 lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x74ee3ad5 lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x7fa46845 __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x80d982f2 lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x877d79da lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x91edcfec lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xac138d31 lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xc72a896d lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xcfdce09f lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xd57a67aa lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x241c31fe __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x4807b843 lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x5562d958 lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x6b116b9e lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xaeb57524 lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xb3a5cb1c lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xc85e6899 lbtf_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xcb503779 lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xdf0baeb5 lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0x605c9e17 if_usb_reset_device +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0xbf0cc8bc if_usb_prog_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x0da247ff mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x0f282da5 mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x1ad8912c mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x643c7056 mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x8367e9a9 mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x868d5154 mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x87a23ccd mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x9c698765 mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xa60145c6 mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xc844fa72 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xd05ae223 mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xd261f01d mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xd856ce55 mwifiex_deauthenticate +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xf2503430 mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x020a4b2f p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x18d56bb7 p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x23b70489 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x4a44635d p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x5cf5bca4 p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x739a0843 p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x9c1a2ef6 p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xaa58ea3a p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xf87dbb7d p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x018e57ff rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x03d316d6 rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x0f9c98af rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x19785d89 rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1a84d29d rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1c7b213f rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x21cb4391 rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x26fe4231 rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x2bb69900 rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x2cda378c rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3320dabe rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x34583ef4 rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x361ed140 rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x36ca4853 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3d45d4ff rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x47f318c9 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4906b213 rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4d059f4d rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x51a5ce90 rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x5613a3ef rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x5f0b7e9b rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x6569182c rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x76d6e2ad rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7de63406 rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8e1809ac rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa2cdaefd rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa63ee548 rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb1132c41 rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb2cfcc85 rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xc34d71dc rt2800_get_tkip_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd09477bb rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd7f926b7 rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xde6e1142 rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe6dc1643 rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xead6a049 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf70f9664 rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf9a03388 rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xfa0fdb7c rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0978d8e9 rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x4827dd12 rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5c8d7227 rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x63160e20 rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x684c68f5 rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x6c3f802b rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x7293052c rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x75941547 rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x82a123ed rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xb36f6564 rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xb3c9a555 rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xee15ea11 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xf9dad6d8 rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x008685dc rt2x00mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1a4bfd96 rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2b785aca rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2cf9262b rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2ec31854 rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2edf86ab rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x30604d8e rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x32d9adb4 rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x33b1e665 rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x463abb5d rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x496f7711 rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4b9085c7 rt2x00mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4fe911b4 rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5c7f662a rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5cbad2ba rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5ce33ecd rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x732d9a93 rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x74fb8438 rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x7df8b98d rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x857c267d rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x885c4784 rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x88e0d18a rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8b72762b rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8d142746 rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x936eee85 rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x96243508 rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x974c2273 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x97baa44e rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9a835a7b rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9e3f0617 rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa50866ef rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xaa9d77a4 rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xaea4a065 rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc145ab62 rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc62b4be6 rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xcde8dde6 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd088a4d6 rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd0e9e8c5 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd2f8eb97 rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd46696a2 rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd90c1d09 rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xda37ec2c rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xdd193cc5 rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe41e56d0 rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe635684a rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xeddbaf8f rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x0afddbc7 rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x4e827a8c rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x94b3025d rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x9b48d2cd rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xc798d649 rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x16fb7ad2 rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x8c795d24 rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xc4656388 rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xe0d72dea rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x061ad299 rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x084881ba rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x0997e8e0 rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x255c8380 rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x3613ec9a rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x4813edf5 rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x4d52dce7 rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x4e2ad8ad rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x5bd757f5 rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x8c3918c8 rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xaf9517ea rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xbc31cad9 rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xcf504294 rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xe5579a81 rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xe9887668 rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xf9def1b8 rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x84361184 rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8abba744 dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa62912b3 dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd1fc384e dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x04b6823c rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x1c51606a rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x27bf907f rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x296c419a rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x37401782 rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x4390d06c rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x4e3d14ac rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x61063270 rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x628c912c rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6fee3a6c rtl8723_phy_set_sw_chnl_cmdarray +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x77caa1fb rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7cb662e8 rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x81f8f7a1 rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x9b44e31f rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xa6c2385f rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xac120be8 rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xaf4d6d94 rtl8723_phy_calculate_bit_shift +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xc942e59c rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xca2217c2 rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xcd0dff2e rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xd06b39c5 rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xd490f20c rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xda1f34cd rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xdcfd7ebc rtl8723_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xee0725e9 rtl8723_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xef6030a2 rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xf63ac092 rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xfd127d9e rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xfd4f4b0c rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x01c6dcd0 rtl_attribute_group +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x022af269 rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x06df4c38 rtl_dbgp_flag_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x0d0b6636 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x241dedc1 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x310300fe rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x35f01808 rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x5280ae23 rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x569654e5 rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x5b311e7c rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x891d149c rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xad1d9e64 rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xb85a7968 rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xbcc6e31d rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xd6af282c rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xda9a2879 rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xe6170f4c rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xef42e11d read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf31dd7e5 rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf8ff6add rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x3751f9d3 wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x4874b680 wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xc9100c69 wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x05294fba wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0b79bcd1 wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1024f0aa wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x10be348d wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x13bb3e0f wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2a4d2b63 wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2b2b2bb4 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2bb327b7 wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x30a5fa86 wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x33285108 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4c9b3e35 wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5047f95f wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x53dff67d wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x599294cf wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x59bcf2a0 wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5b3ba544 wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5ea67871 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x63569f90 wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6a4060d0 wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6c1408ef wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7af49e93 wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x834882fe wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x834fa17c wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x85d1f03e wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8d1db74b wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x943012c0 wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x95dda30d wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9a1f3491 wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa3162a7e wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa70d8228 wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa74da955 wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa78eb3d6 wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb2625887 wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb6c8e13b wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xba782fac wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xbcd9a5ae wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc0534d28 wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc3e6e4f4 wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc55b41ad wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xcea69cda wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xda0ce01d wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf3691745 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf944704d wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x0523bc6f phy_power_off +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x080e6cf0 phy_exit +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x1958885d __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x1b3b2989 devm_phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x1ba63c45 phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x3d2a3fe3 of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x49588021 phy_pm_runtime_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x6e5acd51 phy_power_on +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x70908a32 phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x73838178 devm_phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x7bf0e5d6 of_phy_simple_xlate +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x81b1ddce devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x99858688 phy_init +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xa1adee4f devm_phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xaeec78a9 phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xcbdc650f phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xd6325691 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xd7731498 phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xda555ab8 devm_phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xdae5ac31 phy_pm_runtime_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xdbd75f50 phy_pm_runtime_allow +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xde1026fe __of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xe5419b8e phy_create +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x0b771392 pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x41a121c2 pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x826afbb5 pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x109bca23 mc13xxx_parse_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x660c6443 mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xa42a7d86 mc13xxx_get_num_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xafe6e784 mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xbc0ff593 mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x1962ebd5 wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x5cf2cfc3 wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x912d2707 wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x98e810d6 wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xe88f41d1 wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xefe7a95d wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0xa2c9d9f0 wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0254442a cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0c0e5f18 cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0fab9281 cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x120b3745 cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1fc9ddb1 cxgbi_ddp_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2036c233 cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x26316868 cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x27c80338 cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2a1788a1 cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3748e97d cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3a5c4389 cxgbi_ddp_page_size_factor +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3c207392 cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4146310a cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x448bf0e9 cxgbi_ddp_ppod_set +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x547c9458 cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x56249fc3 cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x57df3a70 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x59178655 cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5ca8ceac cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x623cca06 cxgbi_ddp_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x625b57c2 cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6a8b1d12 cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x71b4eb7d cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7887372e cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7de7f773 cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8b4f7c44 cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8c2ba369 cxgbi_ddp_ppod_clear +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8ea43ee7 cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x90c44eca cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x94b55513 cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x953157f6 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xae11edc3 cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb65717eb cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb6f607cb cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb764e38f cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb8eb925e cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcebe115b cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd02a57d5 cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd5e9bd99 cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd63f943f cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd8e2ce03 cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xddc7614d cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xea8bc342 cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xec135d39 cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf0d64c36 cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xfd0bc030 cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x4ad3dc97 scsi_register_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x593a36c2 scsi_dh_handler_exist +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x93f46cff scsi_dh_set_params +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xc0ed60cf scsi_dh_activate +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xcab02bea scsi_dh_attach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xd0969fbd scsi_unregister_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xf452a400 scsi_dh_detach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xf70e7065 scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0f2f5c5f fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0fb51275 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x3460afe6 fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x374c1e1c fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x3c1f915c fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x3cb6cdc3 __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x4c7c0263 fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x4eeb30b1 fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x4f4bc2d2 fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x54ce8750 fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x5f7c393d fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x68f5e4f3 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x762fd006 fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x835a6c7d fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x84b3d915 fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x9bc68b53 fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xb6e39067 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xdb3003fe fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xe286c12e fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x043f0157 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x14fd73e7 iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x1a4852cb iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x235b4feb iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x440f4909 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x8b816ea0 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x01ecaab2 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0fe9f24c iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1058cc84 iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x17596ebd iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x209f1358 iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x20be5599 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2277d859 iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x231c976d iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2aff0278 iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x31e2da6b __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x393e7a92 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3a964436 iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3e58ca7e iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x468c862e iscsi_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4be25af5 iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6c0a66ac __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6fe7be09 iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7ab8096c iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7faa3068 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x802a43c3 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x877b62ca iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8cf76110 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x93e940e2 iscsi_eh_target_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x98432f4b iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa00afff6 iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa04a49b2 iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa83ba5e6 iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa96c1eeb iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb0c841e1 iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb491760b iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbb18cd3b iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc63f888a iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc711e2f2 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xcd2b6bb1 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xda24b43c iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdb402442 iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe3d799e0 __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe4ad9b34 iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe56c40f7 iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe70b4b20 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xed77ff58 iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf12ca3d0 iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf4e7b56e iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfc6a1555 iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x10dfbb07 iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x1d6053d4 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x3ea4eeca iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x43f936c6 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x623ce961 iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x66cffbcf iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x72bbb789 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x7a07a672 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8d003dc7 iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8e4bdc4c iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xbe5f3726 iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xc5133b91 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xcaf7fe00 iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd26cd671 iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd2d96efe iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd64b227e iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe5a48348 iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x05f33902 sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0dbe8e41 sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1e5e35e1 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1ed5cdbe sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2c748b82 sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4eb623ef sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5629a694 sas_eh_bus_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x56f2603b sas_change_queue_type +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x574a4f32 sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5e341a1c sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6a0af036 sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6d2bb38d sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7040b0a7 sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x879468a0 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8b401d5f sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x95719fea sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x99389eb6 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa34bfa13 sas_domain_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xac337aad sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xca2ffeae sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xceae4b8b sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd9555d21 sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd9573fe6 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf03b9778 sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf58d9b91 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x1d7f9611 srp_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x6c971246 srp_transfer_data +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xa239e924 srp_iu_get +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xb01a215f srp_iu_put +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xed3f028f srp_cmd_queue +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xf30f0507 srp_target_free +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x267f2fbd scsi_tgt_cmd_to_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x4ef85fae scsi_tgt_it_nexus_create +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x7f646a5e scsi_tgt_tsk_mgmt_request +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x9acf2e8a scsi_host_put_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xa310678e scsi_tgt_it_nexus_destroy +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xa3a1cfa6 scsi_tgt_queue_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xa97d26fc scsi_host_get_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xcd5969fe scsi_tgt_free_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xfb59267c scsi_tgt_alloc_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x05957715 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x06e86bd6 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0f852287 iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x24ffb68e iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x25121102 iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x25b436d3 iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x270741e0 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3044c63e iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3bdca240 iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x451290c6 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4544737b iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4970c6f5 iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x565358e5 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5a04348e iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x61e16ac2 iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x632177e3 iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x649b3755 iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6563c1c3 iscsi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6789d5b1 iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x68a86a30 iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6b54a03e iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6bda4f24 iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x765f5e47 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x91a47deb iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x93a1afe7 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9692d672 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xab0eab8a iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xad0bfd81 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xae74c55d iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb76ed202 iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbf4948c9 iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc092ae27 iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xca34304d iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcfd45745 iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xdba1b79f iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xdc088fd2 iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe331a990 iscsi_is_flashnode_conn_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe33986ad iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe4527c8f iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfdc44c8a iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x0b38ce12 sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x31ecda39 sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x67f4ea7d sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xee9e5d83 sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x3cdb6651 srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x98bfd351 srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xace6504d srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xe1b59305 srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xee891cc0 srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xf9c320bc srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x039948f7 ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x0e177be9 ufshcd_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x1766952d ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x1c35aa79 ufshcd_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x34026b75 ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x731a2237 ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x1ead0617 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x21ed4ec8 spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x4b81aa6a spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x979e73bf spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xe513d95c spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x194940a2 dw_spi_xfer_done +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x9c8e4e1f dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xbf1c3a60 dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xcb2bd5b6 dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xcb6652dd dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0x48bbe1be ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x03aef264 comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0887bc5d comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0a84c75e comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1035a376 comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x187221df comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1c9f71ab comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1f3974f1 comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21584429 comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x223ec736 comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x269f2706 comedi_buf_memcpy_to +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x275ff027 comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2fc49d93 comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3091ca52 comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3bc9d4f1 comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3c23001f comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3c5c6d7c comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x42ab24bf comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x45067163 comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5e43dd31 comedi_pcmcia_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6b47c033 comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x70c66c0e comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x745315f4 comedi_to_pcmcia_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x750eb8e7 comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x84a9b533 comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x86c76c37 comedi_pcmcia_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8ac2353c comedi_pcmcia_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8cd11621 comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8f81ea18 __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x91179e5c comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x993af3fd comedi_pcmcia_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9e305081 comedi_pcmcia_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9f3ef5e2 comedi_buf_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa75b0829 comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xae426272 comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb406a104 comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb6b4cc78 comedi_buf_get +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbce647f1 comedi_error +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc0ae3479 comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc38de5af comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc97e4576 comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd0ab8141 comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe3e48488 comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe6f41181 comedi_pcmcia_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe7e731b0 comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe87c1ce8 comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf377208c comedi_buf_memcpy_from +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf560ed62 comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf5ff3496 comedi_dev_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x3cfeb86b subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x46e0d9f1 subdev_8255_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0xe274b51f subdev_8255_init_irq +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0xfcdb54f0 addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x6871f8f7 amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x71b22867 amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xf54c8e10 amplc_dio200_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x186b337e cfc_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0xf1b6b3b3 cfc_write_array_to_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0xfb229acb cfc_read_array_from_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0x16836c56 das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x038d7504 mite_bytes_written_to_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x23c5875a mite_setup2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x2b794280 mite_bytes_read_from_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x32151735 mite_dma_tcr +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x447cae8a mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x691724a1 mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x6ef96804 mite_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x719914c5 mite_setup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x7423bcbe mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x95f19c43 mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x9d145d7f mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb05a46a9 mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb702ca4d mite_sync_input_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb909d7f1 mite_sync_output_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc030b9e2 mite_bytes_read_from_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc3f61a0a mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc60a8fc2 mite_unsetup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd6a22ddf mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe11ce344 mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe4ff0dfb mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe8c48e66 mite_bytes_written_to_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xf919c537 mite_get_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc 0xada6810b labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x2e254703 ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x385293a0 ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x481e0ade ni_tio_rinsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x6ff988d0 ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xa3a62b2d ni_tio_winsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xa6a523cc ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xb5f86770 ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xd6f2b075 ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xa436609b ni_tio_acknowledge_and_confirm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xa956a1a7 ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xb0b0d639 ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xdf5ee0f7 ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xf0f0bdd9 ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xf4e47a14 ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x4bf35ad0 comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x68a71f42 comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x73ab7385 comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x848f681f comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xb9328373 comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xd04330c2 comedi_close +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xdd60341e comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x2206b003 dwc2_handle_common_intr +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x5cfd03bc dwc2_hcd_remove +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xb05a818c dwc2_set_all_params +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xdcd4750b dwc2_hcd_init +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x1a1b5249 oslec_flush +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x2feda75b oslec_hpf_tx +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x3227a28e oslec_snapshot +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x7dc9dddd oslec_adaption_mode +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xb2c66001 oslec_create +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xc8b5a524 oslec_free +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xd370f679 oslec_update +EXPORT_SYMBOL_GPL drivers/staging/rts5139/rts5139 0xbd5a0e51 rts5139_usb_ids +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0e81c76d spk_serial_out +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0ef1d765 speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x14f06fe7 spk_serial_in_nowait +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x20e5ba06 spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x3598da7a spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x475e158a synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x5c70aa6b spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e146195 synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x989eb695 spk_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9a888082 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9f281400 spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb26234d8 synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb35aaab9 speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb48956f8 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc766ae09 synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xcf3f60fb spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd1b551a2 spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe1d8f6c3 synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7e810f8 spk_serial_in +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xf7ac6d10 spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xf8c9f7aa spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x04cc7e13 usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x0d567301 usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x0f852d0a usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x32c6cbb5 usbip_recv +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x54f54744 sockfd_to_socket +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x5dbd87de usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x77908fde usbip_event_add +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x9674884f usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xa173ea25 dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xa4a8ef6d usbip_start_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xa9be0d48 usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xbcd59359 usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xd02753dc usbip_header_correct_endian +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe1ea0586 usbip_dump_header +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xea8affa5 usbip_event_happened +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x585ebaac n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0x0b8223ca pciserial_init_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL drivers/uio/uio 0x0994bd5d __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xbf018224 uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xe49038af uio_event_notify +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x0695355a usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x8139cb2f usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x47091bef ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x54c1d318 ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x170e9bea imx_usbmisc_init +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x74750d38 imx_usbmisc_init_post +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x031a3d9b usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x1f59f85c usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2c0e4842 usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2cc1a35f usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3083b2ca usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3cb95f37 usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3cc63b29 usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x43a83f22 usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4a1e64b5 usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x535b6c34 usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5a385434 usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5cf1e1cc usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6da59e81 usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7120d2e6 usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7c75d9e2 usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7e61b659 usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8612b874 usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x883bf626 usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x935236bd usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x94d7075a usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xbf3e8e48 usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xc4b47457 usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xce31095a config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd0c92e91 usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xeaac5f6a usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf339cfcf usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf87a9c31 usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfc064a26 usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x5d306374 gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x8e27d6de gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xf1981607 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xfc2125f3 gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x0ab44181 udc_attach_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x0e78d8f0 usb_gadget_probe_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x0fd7c706 usb_del_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x54b1b0c6 usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x62462299 usb_gadget_map_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xa5d73569 usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xaeb4353e usb_gadget_set_state +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xd0fb2479 usb_gadget_unmap_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xe1faa366 usb_add_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x0a5230df fsg_common_set_nluns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x141fce2a fsg_common_remove_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x1ccb58f7 fsg_common_set_num_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x2d10b6a7 fsg_common_create_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x51707c29 fsg_common_run_thread +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x6acb4179 fsg_common_set_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x7e26d4a5 fsg_common_set_sysfs +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x99023bfc fsg_common_put +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9a0221c7 fsg_common_free_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9dc025a5 fsg_common_free_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xa33e33c2 fsg_common_set_cdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xa46e6443 fsg_common_get +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xcb3ce64b fsg_common_remove_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd3ae3b65 fsg_common_create_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd468f882 fsg_common_set_ops +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xe4d1591e fsg_config_from_params +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x12d34121 ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0xf586647d ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x051fc0f0 usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x13ff8e2a usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x164a85e2 usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x26ad1e70 usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x600746ef ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x868a292f usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x871089b7 usb_ftdi_elan_edset_output +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xa48d1be6 usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xbf845e1a usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xc9ee034e musb_interrupt +EXPORT_SYMBOL_GPL drivers/usb/musb/tusb6010 0x5304ac0f tusb_get_revision +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x01779179 usb_gen_phy_init +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x772fd0d5 usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xc6156ecd usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0xa73e0307 isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x06f0be19 samsung_usbphy_rate_to_clksel_64xx +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x29d1609a samsung_usbphy_rate_to_clksel_4x12 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x5e02bf0a samsung_usbphy_cfg_sel +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xa53c06f5 samsung_usbphy_parse_dt +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xa7eded07 samsung_usbphy_set_isolation_4210 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xdd2dd9c5 samsung_usbphy_set_type +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xe2159315 samsung_usbphy_get_refclk_freq +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0x9ff00075 usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x0a61a7d8 usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x22bb244d usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2385f4c5 usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x26a97803 usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x39187f6d usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x3b9f7d1e usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x489bb13e usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x4c92b31f usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x50f0c4ba usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x51156278 usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x8796790f usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x90496215 usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x90caf2ed usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc0bea055 usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc61dd477 usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc623c3f4 usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xcc8f31f2 usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xd2c4b5e0 usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xdcb7e5c5 usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xe40f3b0b usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xf597494b usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x087ce1c1 usb_stor_control_msg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x1bc3edc2 usb_stor_sense_invalidCDB +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x38e03aec usb_stor_disconnect +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x44d520f2 usb_stor_suspend +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x49957b68 usb_stor_CB_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x59eaf4be usb_stor_bulk_transfer_sg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x5c414139 usb_stor_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x5cd4a42e usb_stor_CB_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x70e4f8a7 usb_stor_Bulk_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x72ee031a usb_stor_bulk_transfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x76af2d6b usb_stor_transparent_scsi_command +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x77e6dcc2 usb_stor_bulk_srb +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x82cb483c usb_stor_reset_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x83f47adb usb_stor_pre_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x8948b765 usb_stor_access_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x95dd21bd usb_stor_post_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x989e7bca fill_inquiry_response +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x9ff3cdbd usb_stor_probe2 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xaf02de4b usb_stor_Bulk_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xb0e69ad9 usb_stor_probe1 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xb998938d usb_stor_ctrl_transfer +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xd64dce49 usb_stor_clear_halt +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xecb8d66e usb_stor_set_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x3abac827 rpipe_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x74206028 wa_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x7634de35 rpipe_clear_feature_stalled +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x99b7f62f wa_urb_dequeue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xc543b60e wa_process_errored_transfers_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xcb55ad58 rpipe_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xeac3f75a wa_urb_enqueue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xf1634fe2 __wa_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xf4654c3f wa_urb_enqueue_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x0bb6bf5e wusb_cluster_id_get +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x0c37a521 wusbhc_mmcie_rm +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x26748515 wusbhc_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x28651671 wusbhc_handle_dn +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x30788f86 __wusb_dev_get_by_usb_dev +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x3c13781b wusbhc_giveback_urb +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x4a30ee91 wusbhc_mmcie_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7912eb41 wusbhc_rh_start_port_reset +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7f0b7631 wusb_dev_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7f148730 wusbhc_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x9111eaf0 wusbhc_reset_all +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x9c44aafd wusbhc_b_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x9d4e1d7f wusbhc_b_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xb3fda1d9 wusbhc_rh_control +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xb725d128 wusb_cluster_id_put +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xc2cd3cc2 wusbhc_rh_status_data +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xe65d4100 wusbhc_chid_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf770a6b4 wusbd +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xfe2e17d7 wusb_et_name +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x1e7850e5 i1480_rceb_check +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x5459a462 i1480_cmd +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0xf7bd13fd i1480_fw_upload +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x2f979727 umc_device_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x3588bf58 __umc_driver_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x437fe39a umc_match_pci_id +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x441c93db umc_controller_reset +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x58d445a0 umc_device_create +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x8f1fa422 umc_driver_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xa97cf03e umc_bus_type +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xc32a9687 umc_device_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x032214bf uwb_rc_neh_grok +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x060bdc50 uwb_est_find_size +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0aa17748 uwb_pal_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0b8aad57 uwb_est_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0c6cd75d uwb_rc_cmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x12caac20 uwb_rc_alloc +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x16200f93 uwb_rc_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x1a257050 uwb_rsv_establish +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x1cf2aa38 uwb_rc_ie_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x243af4b5 uwb_dev_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4438ed07 uwb_rsv_get_usable_mas +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x46849c15 uwb_pal_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x48f99528 uwb_radio_start +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4b7f59e9 uwb_dev_for_each +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4d57ae3c uwb_rsv_type_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5e4bc088 __uwb_addr_print +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5fc0aff4 uwb_notifs_deregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x736ca8d3 uwb_rc_mac_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7c3b99c8 uwb_rsv_terminate +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7dcfcd23 uwb_ie_next +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x80923fde uwb_rc_pre_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8314de98 uwb_rsv_create +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x83f73915 uwb_rc_neh_error +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x857bbad1 uwb_rc_get_by_dev +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x888af4b7 uwb_rc_put +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x98413234 uwb_rsv_state_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x9d92ce9d uwb_rc_post_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa1e79240 uwb_rsv_accept +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa8db8dea uwb_rc_cmd_async +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xae970ee7 uwb_rc_dev_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb2ae62ca uwb_pal_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb98b39ec uwb_rc_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xbc4c8b07 uwb_rc_get_by_grandpa +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xbc9e9f2d uwb_rc_vcmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc8b9cd4a uwb_rc_reset_all +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd3c85852 uwb_rc_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd4e51947 uwb_rsv_modify +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xdbde469e uwb_rc_ie_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe1716f06 uwb_est_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf192c73a uwb_rsv_destroy +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf2058265 uwb_radio_stop +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf5c9bf37 uwb_notifs_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xfbb5f8dd __uwb_rc_try_get +EXPORT_SYMBOL_GPL drivers/uwb/whci 0xad2a9178 whci_wait_for +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0d51a4fa vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1a2c98b0 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1b0f8d95 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1ddba8aa vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x208584ed vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x219ead00 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x269f7a09 vhost_dev_reset_owner_prepare +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2fbeb575 vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x37ee5483 vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3c57096a vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x41cdc8cc vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4745afa8 vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4e79aeda vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x67d4b207 vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x73f2932e vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7ae2df6e vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8c941d8a vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8d2c833d vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9660205f vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9a24feef vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9ddd394b vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb0f81e37 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb4ff870e vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd3935f79 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe28d8ec6 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe71daaa6 vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xedf59029 vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf95d941f vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xfa85e1df vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xfcde7aba vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xff6200f0 vhost_init_used +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x04b201b0 auok190x_send_cmdargs_pixels +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x06de7f34 auok190x_send_cmdargs_pixels_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x202fdc43 auok190x_read_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x5ae74b0c auok190x_send_cmdargs_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x6bd95798 auok190x_common_remove +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x6e11971b auok190x_send_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x760c93a7 auok190x_pm +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xa55e6fc0 auok190x_send_command_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xb90027ff auok190x_common_probe +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xdae63c1e auok190x_send_command +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x07040633 ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x257f6f08 ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x2a4ebc09 ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xa5757a53 ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xff74e4d8 ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0x00091c8e fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0x61d83fc8 fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0x4d084c86 sis_free_new +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0x8b2dfd66 sis_malloc_new +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x025ac837 unregister_virtio_device +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x60ee36c7 register_virtio_device +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x8a91642d register_virtio_driver +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0xc9637bc2 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0xe4453be9 unregister_virtio_driver +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x3be7c512 vring_transport_features +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x40a49ca0 virtqueue_enable_cb +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x472ef42f vring_new_virtqueue +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x50a012f9 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x5be5542a virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x5d8d9a17 virtqueue_notify +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x614d0fa6 virtqueue_add_sgs +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x7d1166ef virtqueue_is_broken +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x8bc1a758 virtqueue_get_vring_size +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x911ada59 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x9eabe33f virtqueue_kick +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xb3401a93 virtqueue_poll +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xb8a285d8 virtqueue_get_buf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xd299b56f vring_del_virtqueue +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xd8874cd9 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xebfef158 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xef350aa2 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xfb6fc9ac virtqueue_disable_cb +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL drivers/w1/wire 0x02ca10a9 w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x282aae8f w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x402bf941 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x508e1658 w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0x7c2f2afb w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xc7cfb8b0 w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xcaf89237 w1_next_pullup +EXPORT_SYMBOL_GPL drivers/w1/wire 0xdf613bbc w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xe6b3f188 w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0xfa8a1542 w1_read_8 +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x621d1d92 dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x9321df95 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xa0c574ad dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc6dc8c2f dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xd9bb92d9 dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xdc583c08 dlm_unlock +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x17ce645d locks_end_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x861ed299 locks_start_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x887cdc0e nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x8a2af28f lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xb18cb84e nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xbf495d0e nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xde450020 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xe475fee5 nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xe6e5adfb locks_in_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xe9eb07c6 nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x02055fe5 nfs_fs_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x02d5439f nfs_fs_mount_common +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x038630db nfs_initiate_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x03873c4a nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0675f880 nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x06f28e27 nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0a43382e nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0bff1020 nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0c641b86 nfs_set_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1221e45d nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x142c8cdb nfs_initiate_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x14acebd5 nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x14cbdde0 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x16bfbd6b nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x16c2fe44 nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x19a228be nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1b825ced nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1d7f0f58 nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1ec73f3a nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x20cc9dc1 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x243a26c2 nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x27213ecb nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x275ca274 nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2a38b82f nfs_file_fsync_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2cda5d40 nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2eca6e1d alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2fc96c2f nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x314847fd nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x328d75ca nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x32dec8a7 nfs_pageio_add_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x32f03c37 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3438ae41 nfs_destroy_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x356e30cd nfs_put_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x366c258b nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x36e88a6c nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3769f6cf nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x379df71e nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3942f186 nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3984a826 nfs_clone_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3c5ca763 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ca31f35 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3caee7d7 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3d99b1b9 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x43cfa68f nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x492f74ca nfs_file_splice_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4a8377ab nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4c11103c nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4c63a161 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb5eece nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4e794b31 nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4f8bf0e7 nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x506bd0fd nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x50c11ea0 nfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x525c7785 nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x52eb671d nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x52ec1dfd nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5524372c nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e1d863a nfs_sockaddr_match_ipaddr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5ea8c0c0 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5f4049fa nfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x60a582d2 nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x67cec20d nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x77072027 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x789d000a nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7b40f13b nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x84847ec1 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x84d4b1ad nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x88a0d9c1 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89bc5a64 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89bf4daa nfs_try_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8cba0913 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8dd72b56 nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8f16be4e nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91e44d34 nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x93147233 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x93e41cd1 nfs_writedata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x946fe842 nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x961be488 nfs_remount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9751b7c8 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98eb8d82 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x993063fd nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9c13d068 nfs_generic_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa11607ab nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa13918da nfs_pageio_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8b718bf nfs_setlease +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8d2d1ce nfs_callback_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaa07d007 nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaaa14361 nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaaeb18f7 nfs_file_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb5df1de0 nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb606e716 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb6e558c9 nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb77744a0 nfs_pageio_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xba8cb3fa nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbcb5d52c unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbd09da28 nfs_generic_pagein +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbed84948 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbf009573 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc0f05ab8 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc1736837 nfs_writehdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc211afa4 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc35ddab6 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4ff1e9f nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5ef47d5 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc9de240c nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcd1e7ee9 nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd014e9d1 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd0e0bac0 nfs_readhdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd18324a6 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd35adcf6 nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd591bfd3 nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd5e4b330 register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd73da018 nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd8fe71cf nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdb851589 nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xde4c5f30 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdf5184e8 nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe05cded5 nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe1070f87 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe468acd0 nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe55d3f20 nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe972d35a nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe9b1f65d nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xea174926 nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf0149ce6 nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf10e5f0f nfs_readdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf1b81af1 nfs_fill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf4cc186e nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf52c2c3a nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb1945d2 nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb429f12 nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb6d6f15 nfs_file_splice_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb7ee006 nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc79cb4a nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfcb0ca48 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xff32d319 nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x05da81a3 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0afe0d70 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0c76516e pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x11bda27c __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x170f3ed6 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1d3b5d3d _pnfs_return_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x241a549e nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x25beefbb nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x292d10ec pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x305c2933 pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x32ee9253 nfs4_insert_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x34ed6648 nfs41_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3eed11bb pnfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3f5443bc pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x440f968c nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x482a4d76 nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x58c90519 nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x662fddef nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x665fa50e __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x68523fe7 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6feb4b8f pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x71fc6052 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8f34ac6a pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8fac662b pnfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x98f9b70b nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9ef10755 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xaa421151 pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb4928123 nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb51438ba pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb5a1c65a pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb7123c88 pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb78c21bd nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc845c295 nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc8c20a00 pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcb67c730 pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcf2648c9 nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd4ab2c82 nfs4_proc_getdevicelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd683a896 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdb813e84 __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf19388e9 nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf354a0eb pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfb91489b pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfe60c40c nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x7bc213c4 nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xf64f3d26 nfsacl_decode +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x0d968f6b o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1cb231d0 mlog_not_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1d747ce3 o2hb_check_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36418553 o2net_send_message +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x3ed7a3b6 o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x687f6251 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa734cc55 o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa82a8645 o2nm_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa9f5379a o2net_send_message_vec +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xae808bac o2net_register_handler +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xbaeb4700 o2hb_check_node_heartbeating_from_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc3679d7b o2hb_get_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xccc5c524 o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd60f2c6c o2hb_check_local_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xe1cc3811 o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xea059ae2 o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf0fc005c o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf1a5611d o2net_unregister_handler_list +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x1d665d3d dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x20ade309 dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x28c33163 dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x57ba3db3 dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x6dff8ca9 dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x70b8d608 dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd7ba575e dlm_errmsg +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd8fa57a6 dlm_unregister_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xfb86b96f dlm_errname +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x025e2d69 ocfs2_cluster_connect_agnostic +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x0562c415 ocfs2_cluster_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x16b2e575 ocfs2_dlm_unlock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x3a9beb92 ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x424d8947 ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5469ce31 ocfs2_dlm_lvb_valid +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x7083dbd5 ocfs2_dlm_dump_lksb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x89502fe7 ocfs2_cluster_connect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xb4bd060c ocfs2_dlm_lock_status +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbbc4ef97 ocfs2_stack_supports_plocks +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xdc823ea4 ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe2bd47db ocfs2_dlm_lock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe40cffce ocfs2_stack_glue_set_max_proto_version +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe417d940 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xea87e839 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL lib/bch 0x231d70fc encode_bch +EXPORT_SYMBOL_GPL lib/bch 0x6b770f49 decode_bch +EXPORT_SYMBOL_GPL lib/bch 0x9463ff71 init_bch +EXPORT_SYMBOL_GPL lib/bch 0xbdf512de free_bch +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x6e1874d4 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0xa2fcbca5 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x021957e1 raid6_datap_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x05513b71 raid6_call +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x0f8a2742 raid6_2data_recov +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x201d8ea3 encode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x29fa419f decode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x300d7e57 free_rs +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x6fbb3bd9 init_rs_non_canonical +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xabda1e2e decode_rs16 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xb050f329 init_rs +EXPORT_SYMBOL_GPL net/802/garp 0x0a1a0492 garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0x3b02d21c garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0x450bb099 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0xdcbc4f78 garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0xea9c47fd garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0xed91dde9 garp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x155b1107 mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x31e9dd78 mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x5369ef8d mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x645ccb91 mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0x70359419 mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0x92233449 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/stp 0x740bba70 stp_proto_register +EXPORT_SYMBOL_GPL net/802/stp 0xc4b3fa49 stp_proto_unregister +EXPORT_SYMBOL_GPL net/9p/9pnet 0x39a68381 p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/9p/9pnet 0xa93be7e1 p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/atm/atm 0xb09faf79 register_atmdevice_notifier +EXPORT_SYMBOL_GPL net/atm/atm 0xcfb6a3da unregister_atmdevice_notifier +EXPORT_SYMBOL_GPL net/ax25/ax25 0x473a5552 ax25_register_pid +EXPORT_SYMBOL_GPL net/ax25/ax25 0xac93ae05 ax25_bcast +EXPORT_SYMBOL_GPL net/ax25/ax25 0xaeb7451e ax25_defaddr +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xf5579ab8 bt_debugfs +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1d99d49a dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x21ed598c dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x228ffd1f dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x28f08193 dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x31ff560f dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0x35dda9dd dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4a3da681 dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4ec35231 dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5a46abcb dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5e6f0e79 dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x61175c0b dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0x65b0ae92 dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6852f83f dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0x69891419 dccp_insert_option_elapsed_time +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6a4c2eae dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6b4b5711 dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x713c2e4a inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0x78138529 dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0x82153f74 dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8825a470 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8e8487a8 dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8f7417e6 dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x93b9f96a dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9b7e0712 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xabf95e87 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb5a926b2 dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb90260a2 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc40104ba dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcc09dbcb dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcc8f4748 dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0xce24ca74 dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd396acea dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe33734e5 dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe7a593eb dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0xee04667b dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf3017e21 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0xfd379419 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0xff7ff6a9 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x4be1c8e8 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x6869e7bd dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x7b3cebe6 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x84329f70 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xd8ba072e dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xe67c80d3 dccp_v4_connect +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x248fe091 unregister_switch_driver +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x9f437c50 register_switch_driver +EXPORT_SYMBOL_GPL net/ipv4/gre 0x0c9bff44 gre_cisco_unregister +EXPORT_SYMBOL_GPL net/ipv4/gre 0x65e5fce6 gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0x72d93f82 gre_build_header +EXPORT_SYMBOL_GPL net/ipv4/gre 0x7d0ba0a4 gre_cisco_register +EXPORT_SYMBOL_GPL net/ipv4/gre 0xc4273316 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x3a9102bf inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x9b1e91a1 inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xaf031144 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xb475af48 inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xc2836207 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xc84942a5 inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x110335be ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x263e17dc ip_tunnel_delete_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x299e1156 ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x4a184e7c ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x540fd596 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x88b9f582 ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x8dedc809 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x93e7dc01 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa36f564d ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa418fbea ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xbc0c5896 ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xc4f65651 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xd2b9732e ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xf12e8080 ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x26549dbe arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0xc34198e2 ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_conntrack_ipv4 0x6d40a921 need_ipv4_conntrack +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x6b6c3d10 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_ipv4 0x0324daa7 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_proto_gre 0x636b12c8 nf_nat_need_gre +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x76e3c424 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x8a49b301 tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x947e6eb3 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xaa143f1c tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xede4c0c4 tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0x4c9a0585 xfrm4_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0xe18c95b2 xfrm4_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x0780e4b8 ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x0d1f55ff ip6_tnl_dst_check +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x5fd0bb1e ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x849f8140 ip6_tnl_dst_store +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xa44536f2 ip6_tnl_dst_reset +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0x74c007b3 ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x6eb85693 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_nat_ipv6 0xf5290c25 nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0x0bdd5d17 xfrm6_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0xc74be3ab xfrm6_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x206da3ab l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x30b8b4c0 l2tp_session_queue_purge +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x4721f412 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x4cce1ad5 l2tp_session_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x644ef824 l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x64f45162 l2tp_session_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x72f7e7be l2tp_tunnel_closeall +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x84a771ce l2tp_tunnel_sock_put +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x85ea0daa l2tp_tunnel_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x8fc2724e l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa0013bdf l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb3f415e8 l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb7ef295b l2tp_session_find_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb96bac56 l2tp_tunnel_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc8a0d74f l2tp_tunnel_sock_lookup +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc9157023 l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe43d66c4 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x6d926818 l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x0f82c721 ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x0fa35fb6 ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x1cbbb743 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x2c6c1c04 ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3663a36d ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3d7045f5 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4bf42798 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5b3408e5 ieee80211_iterate_active_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5d38f601 ieee80211_set_key_tx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x76721259 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xde497104 ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xeabb987d ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf64f6964 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf8fd2d3a ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xfd4350ed ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x2dfc091b ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x54b4ff6c ip_set_get_ip_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x5e74ad74 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6344eaf6 ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6d691cee ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6dc6cef2 ip_set_nfnl_get +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x82886dc1 ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x82d7ce6b ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x8c4c3773 ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x92868c57 ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa2d623f3 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa82f7c3d ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa9068b5d ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xdd86c616 ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xe7785064 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xef13ebbe ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf6b6dd72 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xfa76263a ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xfb9ccf9a ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x5a8a01c7 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x62e7194e ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x6a5e0862 unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x76d7b35d ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01f84db5 nf_conntrack_set_hashsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x045072cd nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x083c1562 nf_ct_l4proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0ba8a23a nfnetlink_parse_nat_setup_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x153e3fff nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x169b37b3 nf_ct_l4proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x16fb5aff nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x19d154a6 nf_conntrack_l3proto_generic +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1e0881ca nf_conntrack_l4proto_tcp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1e2a6b4d nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x208ef810 nf_nat_seq_adjust_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x21b8890e nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289c3714 nf_ct_alloc_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2a9383f4 nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2c3ee348 nf_conntrack_l4proto_tcp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2c43d4da nf_ct_l3proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2e5a982c nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x37386cac nf_conntrack_hash_rnd +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3e0f95b7 nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3f5b1415 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x41d98fbf nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x427a6aa3 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x48c02a49 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x48c8c6eb nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4b22cc42 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4d01d52f nf_connlabel_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4f35ffaa nf_conntrack_flush_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5ecba059 nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x621cd8dc nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62813e5c nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x656d37b9 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6ca9a325 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6e224a7a need_conntrack +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6fff8279 nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x709fb6d7 nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x732b504d nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x78f9b710 nf_ct_l3proto_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x79e9e23e nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7d8632c0 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7e05a172 nf_ct_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7f5c3296 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x829ec793 nf_conntrack_l4proto_udp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x82b6e807 nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x82be8499 nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8af236b9 nf_connlabel_match +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ba9a6a2 __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8f54054b nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x90ff6c9f nf_ct_invert_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x97b84768 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa1a31cff nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa23a7397 seq_print_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab3d1f95 nf_ct_untracked_status_or +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad1bb027 nf_ct_free_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaf15b3e2 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaf7b8e42 nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb02f3a05 nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb0a8a511 nf_conntrack_l4proto_udp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb19542bd nf_ct_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb384f3cc nf_ct_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb476f8c6 nf_ct_l3proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb602c57e nf_ct_l3proto_module_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb7d43791 nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbe404ca7 nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbfb8fcbb nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc03abe3e nf_ct_l4proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc11c3410 nf_ct_iterate_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc405bf3b nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcaf9547f nf_ct_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd1fe5575 nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd20ae17f __nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd23e0974 __nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd3c34efa nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd52e4ca9 __nf_conntrack_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd53e9989 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd599a07c nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd6d9817d __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe03e3745 nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe072fbd3 nf_ct_l3proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe660be0d nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeb2b07a6 nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeb47e974 nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeb6217f3 nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xee7585e4 nf_ct_l3proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xee8b066d nf_ct_l4proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xefd768ba __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf02e9a41 nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf3f84c3b nf_ct_l3protos +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf75c511d nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfc0a43e4 nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe2e7f52 nf_ct_get_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x7b84401c nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0xfec9dce8 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0x0fc7ec62 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x291f1547 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x34f79c8a nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x541f2519 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x7f7d58cd set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x8e8003fe nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x90e87e1c set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xc79681df set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xcb89891a nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xf0fe1605 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xf7360d19 nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0xbfef449a nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x3f74a531 nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xaf3d6ba0 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xcce5fb00 nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xf369307b nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x35b0c9c8 nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0xc79ec434 nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x3b8ad802 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x50a7efb2 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x653b888a ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x6d3037e2 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xa441aec3 ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xc47249ec ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xfb7a0700 nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0xcb4e7c25 nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0xcb183a7f nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x032e5894 nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x05e887ce nf_nat_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0cb98903 __nf_nat_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0d9bae4b nf_nat_l4proto_nlattr_to_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x131f636c nf_nat_l4proto_in_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x1b93ee10 nf_nat_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x8ca98f62 nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xaa6e86e1 nf_nat_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xee19d194 nf_nat_l4proto_unique_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xf8c5dcba nf_nat_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x11a006b5 synproxy_check_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x4b8d4476 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x5f339439 synproxy_build_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x90298227 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb42e336a synproxy_options_size +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xcb42434e synproxy_tstamp_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xef7db50c synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0fda3c99 nft_validate_output_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3bbd6d22 nft_register_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3d49dab7 nft_validate_input_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3ec78afc nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x41da2b56 nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x60b256d8 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x664e2b12 nft_register_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6f4100b9 nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa104891e nft_data_uninit +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xabe5a212 nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb12717d7 nft_validate_data_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc34df561 nft_do_chain_pktinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xdf14440c nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf396aa59 nft_unregister_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xfe71f4d6 nft_unregister_set +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x2d6dc5be nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x41a94aa4 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x6e98d040 nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x72b3464a nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xaf7a737d nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xb7bc70d5 nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xc1437b67 nfnetlink_alloc_skb +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x21f6bba6 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xee802e6f nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_log 0xb96ba07c nfulnl_log_packet +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x1f17e6c2 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x3451e86f xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x40728a63 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x426520c3 xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x490d1d10 xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4cf34bc8 xt_hook_unlink +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x807d2b2c xt_recseq +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x914b9fa5 xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x93fa8323 xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9926b06e xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xb0274a91 xt_hook_link +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xb6e008a1 xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbffee938 xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe585cf15 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xed282932 xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x00204983 xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x482b6a12 xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x9d603fe4 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0xa278afe1 nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0xdb71b21f nci_spi_send +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x0edb7868 rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0x1dc4b5ce rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x27e34f64 rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0x2c5c5514 rds_message_add_rdma_dest_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3101936e rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3b4fc0fc rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x40f382e8 rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x4553e57a rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0x4d450c0f rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0x50cbe7b3 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x5b19d14c rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0x6745e6c3 rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x6ac3863a rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0x73aac73d rds_message_populate_header +EXPORT_SYMBOL_GPL net/rds/rds 0x77235e7f rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0x78a73cc1 rds_send_get_message +EXPORT_SYMBOL_GPL net/rds/rds 0x874436ac rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0x96fafe85 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x9e0c6054 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0xbc8f328c rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc64860e2 rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0xcaa82881 rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0xe0297bb4 rds_page_copy_user +EXPORT_SYMBOL_GPL net/rds/rds 0xe2e76262 rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0xe4892fab rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0xe52c0fc5 rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0xe7d8b98c rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xef2df685 rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0xf72609e5 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0x20a1b928 rxrpc_unregister_security +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0xd089eed1 rxrpc_register_security +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x00c52ef5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x861b3207 gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x8d1a827e svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xa5c1326a gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xb5dea7ef g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xe0c54610 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xf8b2ff6e g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x015903d5 svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x01748848 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x045834e9 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04d71c4c rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0585fe61 svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0671200b bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x07277827 sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x084907e9 svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x086a82bf __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x09e74981 read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0aba945f xdr_skb_read_bits +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b0201e8 xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c9994ea rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f405137 svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f4a3678 rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f668ba9 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x12854bb0 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x12e9dc84 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x138fcce7 xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x145bd6fe xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x14e2ac68 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x150f40c3 xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x151db822 xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x167b530b xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x17d5d823 svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1999c1df rpc_lookup_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1a4a8d06 svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1a5de95a xdr_buf_read_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1be4decd svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1d382162 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f1177a1 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x206374ff rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x22efbc8b rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23deaec5 cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x256e81b6 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2590301f rpc_protocol +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x265dbe43 _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x27960a5c sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x282894b5 xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2a673e86 svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2c1081a5 xprt_lock_and_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eec63c9 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f8ebbe0 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x318a7273 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3241c0ab xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x338790c9 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34ddc6d4 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x35448c65 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x359459a2 rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x37d3c7c2 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a39a09d rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a40aa70 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3d6cdb07 rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3de98fc4 rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3ee80d24 xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3fa14972 rpcauth_key_timeout_notify +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x40df9a53 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4348eafa rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4852a368 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x488c4332 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x49e41529 svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4a966acd rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4cce83da xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e1a0268 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4fd8c28d svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x50124eb4 svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x50ce3a2b rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x512a7677 rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x520619a5 svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x543dd0e8 xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5461f2fc rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x54de7f61 rpc_lookup_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x55686d3c xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x582917a8 rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x58d4c2fe xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x58fc748c unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a929b84 rpc_task_reset_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5d5bd601 rpc_rmdir +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5e9b7217 svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5f0fd350 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60929dd0 xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x61b3f3f9 rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x62eba0a1 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x644b90a0 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x64ca2c22 xprt_set_retrans_timeout_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x66ea3476 svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x68d6a5ac rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6978a411 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6bfb6286 rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6cf1554b rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6d1014c4 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x704c3616 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x731b6b70 svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x74da7692 rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x752bdfd5 rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7708ced9 rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x78e1df26 rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7927955f svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x798dfba7 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7bee0ab4 xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7d29b831 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7def24da xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7e2355be svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7fcb2162 svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80951b28 rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x81ed2134 sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x848d8b4b rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8545aab8 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x85502e15 svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x85adec9a cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x85e755f8 xs_swapper +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8974e682 rpc_get_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x899d759f xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8d7497c5 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8ebecbb3 xdr_partial_copy_from_skb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x92b8e821 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x937c201e rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x947d6d04 xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x95ba9ea3 svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x96f1ba30 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98485a01 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98b75d64 rpcauth_list_flavors +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98fc16a3 xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x990c1cd8 xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9b419146 rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9f3b572b xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa00221c2 rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa138e98a sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa1ff9ecf svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa2e042e2 rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa4a634ab rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa6471fc3 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa7715887 rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa801201e svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa8afaf30 write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xac3559e7 rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xad06e582 xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xae10e917 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xae23f66d xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb3b2e8c3 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb57577a5 rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb644a69d xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xba210bc7 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb43efd8 xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbcd95e81 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf81c131 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3880471 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3b9c136 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc4b97db6 svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc5bb4138 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8735cd6 svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xca92fd2d xprt_set_retrans_timeout_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xca9d3520 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcbfbc66a rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcfc53431 sunrpc_cache_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd337afee rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd4b720b5 auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd4ddc947 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd56595e1 xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd579b17c rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd62fb12e svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd7367c7c xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd84c5034 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdaf8a615 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdba211c3 rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdcfc1c60 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdfbd2d5e rpc_print_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe0e93bca xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1ac2bb8 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe37658ab rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5837943 auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5c47a26 svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe6695c85 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe88a5098 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe8e7a5f6 sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe9373c9e rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeabd5f76 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeabed20e rpcauth_generic_bind_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeb6fbca7 svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeca09806 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xecf70581 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xed82c7b0 rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf0648957 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf135a8cc rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf3b3de27 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf5ce6abb rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf66abe46 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf7905c1c cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf94bfb85 svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9d1164c rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfd78a547 cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe2cfc2a rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfee3caf0 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xff183332 rpcauth_cred_key_to_expire +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0c79d5ef vm_sockets_get_local_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x10de15e4 vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x141e09f3 vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x158ba28f vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x15c0c57c vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2be788a8 vsock_core_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x5f3201f5 vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x74e91915 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x79070d10 vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7f730c80 vsock_core_exit +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xab8e7d27 vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb2c52cb8 __vsock_create +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb5320555 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb95f85f9 vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc69c5e5c vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xde9af666 vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf593c40a vsock_pending_work +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf9675a82 vsock_stream_has_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0x08dbf591 wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0x09e42741 wimax_msg_send +EXPORT_SYMBOL_GPL net/wimax/wimax 0x33b2c9f3 wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0x5d9029d5 wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0x6bd626f4 wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0x729c2a18 wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x8c2d77e3 wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0x983316ef wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xba12bdb0 wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0xcff9d235 wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0xe0c6126b wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0xe7202b45 wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0xf3ceadfd wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x101c24d8 cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x1fa84598 cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x2b17361a cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x393ee53c cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x3dd6e2fd cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x64c97c29 cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x6879d331 cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x84d4b241 cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xa2b7c4e3 cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xc6e9da14 cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xe2a1ad65 cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x00778770 xfrm_ealg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x056bb269 xfrm_ealg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0a575945 xfrm_count_pfkey_auth_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0b9e5852 xfrm_aead_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x28e23139 xfrm_probe_algs +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x74e1a843 xfrm_aalg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7a8ca627 xfrm_count_pfkey_enc_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7c30b8c7 xfrm_calg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x92dbc6c1 xfrm_aalg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xbc8b0f41 xfrm_calg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xce7a55c1 xfrm_ealg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xe122af95 xfrm_aalg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x4bf507c4 ipcomp_destroy +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x908adb38 ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xa35db6fe ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xe5d953ca ipcomp_input +EXPORT_SYMBOL_GPL sound/core/snd 0x0e77691f snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/core/snd 0x21ebcfa1 snd_kctl_jack_new +EXPORT_SYMBOL_GPL sound/core/snd 0x3ca17104 __snd_printk +EXPORT_SYMBOL_GPL sound/core/snd 0xa4ffe0f7 snd_ctl_activate_id +EXPORT_SYMBOL_GPL sound/core/snd 0xcc737ac0 snd_kctl_jack_report +EXPORT_SYMBOL_GPL sound/core/snd 0xe720f33e snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x0bd62191 snd_compress_new +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x3611656a snd_compress_deregister +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x6f343875 snd_compress_register +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x633b8311 snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa0a1d011 snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x0ca14028 snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x143084b6 snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x2e7165e9 snd_ak4113_create +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x75cf5b22 snd_ak4113_build +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x89fed9e2 snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xc35ebefa snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x003ed04e snd_hda_queue_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x016605a2 snd_hda_codec_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x01edc374 snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0783f294 snd_hda_jack_detect_enable_callback +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0d1722a7 snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0d6d1491 snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0dd3b346 snd_hda_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0e213e85 snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x14a5b47b snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x16f4213c snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x16ffb60f snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x17f7d883 snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x183e529c snd_hda_mixer_bind_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1c469ef4 snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1c896e0d snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1cc8744e snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1dc00847 snd_hda_parse_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2602b886 snd_hda_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x260a2f83 snd_hda_gen_spec_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x27656ff4 snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x277c1453 snd_hda_is_supported_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x28f167f3 snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x29c26cff snd_hda_bus_reboot_notify +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2a0ef6cf snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2cfeb0b5 snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2ff0b5e8 snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3176d909 snd_hda_query_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x321a8da1 snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x324059fb snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x32db56f0 snd_hda_jack_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x34303828 snd_hda_check_board_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x35eda2e1 snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3616aa53 snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x375cacd5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x377fb559 snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x38c06d3a snd_hda_codec_flush_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x39a50378 snd_hda_delete_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3a5dccfe snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3e305177 snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3e3da0e2 snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3f3ae3a4 snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3fbd88d9 snd_hda_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x40021223 snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4104bd38 snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x41d275a4 snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x43f38b1b snd_hda_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4dab1f60 snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4e19d5ba snd_hda_query_supported_pcm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4e394a01 snd_hda_codec_update_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4e901c8f snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5136df9c snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x53b206d1 snd_hda_mixer_bind_ctls_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x53fbdb46 snd_hda_codec_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x54403c88 snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x54e604c4 snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x565ab50f snd_hda_parse_generic_codec +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x566fc963 snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5a3939bd snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5dcbabf6 snd_hda_sequence_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x605a8b7e snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6143507a snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x617146b9 snd_hda_ch_mode_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x61f0d272 snd_hda_mixer_bind_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6247400f snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x627fde7e __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x65f32be6 snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x65f8f6c4 snd_hda_bind_vol +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6b09fe95 snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6be160de __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6ce04038 snd_hda_ch_mode_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x701e1766 snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7055b5c6 snd_hda_suspend +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x715b2ba1 snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x72a47af6 snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x74892b98 snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7721d1cd snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x79cdd91e snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7c2e3a85 snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7de719e1 snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7dfe1342 snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7f2a78e7 snd_hda_codec_resume_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7f910061 snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x80fd31f4 snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8353218c snd_hda_check_board_codec_sid_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8370df60 snd_hda_ch_mode_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8798681e snd_hda_jack_tbl_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8aab0b5c snd_hda_jack_tbl_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8ada9985 snd_hda_add_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8b5c6b75 snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8e4c6826 snd_hda_calc_stream_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x90d209fa snd_hda_mixer_bind_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x93646365 snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9484a3e1 snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x95b28d01 snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x96fa7705 snd_hda_bus_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9703dbb6 snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x986603d2 snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x98b0a7da snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a6ff12f snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9cd19933 snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9ec1ebdb snd_hda_codec_resume_amp +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9ee262c6 snd_hda_get_sub_nodes +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa1a6c17b snd_hda_mixer_bind_ctls_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa2827d76 snd_hda_get_jack_location +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa290dd59 snd_hda_mixer_bind_ctls_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa2ab9305 snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa47ba552 snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa720df73 snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa8c09227 snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xafd43e18 snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb1c463bc snd_hda_resume +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb32897f8 snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb36d839a snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb468d191 snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb4e3b2c3 snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb75b0e64 snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbcff2557 snd_hda_bind_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbddb56f3 snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc0f96cc5 query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc18ef4fd snd_hda_jack_detect_state +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc4b4befa snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc652fd69 snd_hda_get_jack_connectivity +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc972a0a2 snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcb301b6e snd_hda_get_jack_type +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xce096715 snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd56f79b0 snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd6a6eca3 snd_hda_override_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xda01f16b snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdd4a6ecc snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xddc289e9 _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xde01803d snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe0b12a6a snd_hda_codec_amp_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe0f73132 snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe0fd0818 is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe2466e6f snd_hda_get_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe32376ca snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe40284ae snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe485f401 hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe4eb71a5 snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe52e5229 snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe61e9ad5 snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe7dd6d87 snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe7e6cf54 snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe89c6b85 snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe8d6a20e snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xea614423 snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xebda7fb6 snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xebdc7a16 snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xedb14def snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf1aa256d snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf2056eb9 snd_hda_codec_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf2b07115 snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf2edd7e5 snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf9387d25 snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfc35f92f snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfe430431 snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x1636986c atmel_pcm_free +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x312b65b8 atmel_pcm_mmap +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x5bd06b8d atmel_pcm_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x06dceffb snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x09bb3f2d snd_soc_codec_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0a7527ea snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0b8ae5d1 snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0daa4c95 snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0f2b8986 snd_soc_jack_get_type +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x10409e27 snd_soc_add_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1047a84b snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x104c2a73 snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x107dbd4f dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x10904d72 snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x141750f1 snd_soc_platform_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1496949b snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x15e12f0f snd_soc_dapm_put_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x163a0d39 snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x18f16364 snd_soc_debugfs_root +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x19cad2b8 snd_soc_dapm_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1ada5720 snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1d0e7a7f snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x21355783 snd_soc_codec_set_cache_io +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x22fd9af1 snd_soc_dapm_get_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x25d3627b snd_soc_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x271a6059 devm_snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x29b03f6a snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2a260992 snd_soc_codec_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2b6130be snd_soc_dapm_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2d059f59 snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2d264909 snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2d74afb5 snd_soc_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x327d38bd snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x346e9112 snd_soc_dapm_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3960de76 snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3b74ee8a snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3d9b7746 dapm_mark_io_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3ffcfb22 snd_soc_info_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4037630f snd_soc_limit_volume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x42498242 snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x430d57ce snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x449ac549 dapm_clock_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x45f734da snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4951640b snd_soc_pm_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4d4e581a dapm_regulator_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5173ed25 snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x521ea785 snd_soc_put_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5236f9cb snd_soc_new_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5292fca6 snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x54ccf3c9 snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x56566c79 snd_soc_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x62d9bb5e snd_soc_codec_readable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x635d269d snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x63ca21a4 snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x640937cb snd_soc_platform_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x67b015a8 snd_soc_codec_volatile_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x680d8400 snd_soc_jack_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x68614237 snd_soc_test_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x69c29cd5 snd_soc_codec_writable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6d135420 snd_soc_unregister_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6f5b60cd snd_soc_free_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x737d3e6e snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x77cc04b3 snd_soc_put_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x77fce759 snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x78832132 devm_snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e8beb04 snd_soc_lookup_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7f963284 snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x80c80e6c snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x82bdbcbe snd_soc_add_platform_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x838315ff snd_soc_dapm_kcontrol_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x83df39ce snd_soc_info_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8619817b snd_soc_update_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8ef1fe82 snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x918a4911 snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x95cb1744 snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9a610f15 snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9c02b2cd snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9c0d1271 snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9c69f348 snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9ee7cd11 snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa376404f snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa43d3d39 snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa4756f09 snd_soc_info_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa700ecda snd_soc_unregister_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa856e9fe snd_soc_cache_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa92b944a snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xab6228ca snd_soc_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xab958b26 snd_soc_unregister_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xabae80e7 snd_soc_cache_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xabd8cf9d snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xaca8a366 snd_soc_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xad4518e6 snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xae440581 snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xae945046 snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xaea7332c snd_soc_bytes_info +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb1cf502f snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb2027d30 snd_soc_jack_report +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb4bf8da6 snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb731030c snd_soc_bytes_get +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb9943ead snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbc823056 snd_soc_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbe35f3d6 snd_soc_bytes_put +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbfd3cebb snd_soc_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc0b70bdd snd_soc_get_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc3816580 snd_soc_platform_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc3e3cb6f snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc4244b3c snd_soc_get_dai_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc5dfad40 snd_soc_add_card_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc6623cbb snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc67f3670 snd_soc_cnew +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc7414d78 dapm_reg_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xca52fd1c snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xccdce8c0 snd_soc_update_bits_locked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcee87d46 snd_soc_remove_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd1b93ae3 snd_soc_cache_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd2ea9e7c snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd59e1450 snd_soc_add_codec_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xda291c0e snd_soc_dpcm_be_set_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdaceae85 snd_soc_get_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdafacdc2 snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdc975b44 snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdf87ab23 snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe0f53f91 snd_soc_poweroff +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe243f14c snd_soc_dpcm_be_get_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe484e3dd snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe67312b1 snd_soc_dapm_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe6ca89f6 snd_soc_register_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe7755192 snd_soc_register_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe883a55f snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe979e553 soc_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xebb2f392 snd_soc_unregister_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf11472c3 dapm_mark_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf4db3caa snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf6e032f5 snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf813f263 snd_soc_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfb288f0a snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xffc02fc2 snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL vmlinux 0x00000000 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x00000000 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x00000000 kern_mount_data +EXPORT_SYMBOL_GPL vmlinux 0x00000000 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x00000000 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x002da7cf dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x00632780 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x0065ae56 of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x0067348e wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x0082dcb8 sysfs_schedule_callback +EXPORT_SYMBOL_GPL vmlinux 0x009304b6 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x00a7895f attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x00c4dc87 timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x00d350df regulator_can_change_voltage +EXPORT_SYMBOL_GPL vmlinux 0x00e5328a sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x00ebcb5d ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0x00f26b15 skb_gso_transport_seglen +EXPORT_SYMBOL_GPL vmlinux 0x00f747f7 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0x01010c6d klist_add_before +EXPORT_SYMBOL_GPL vmlinux 0x0102c9c9 dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0x010d31d3 scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0x0115cc6d ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x011cf028 regulator_suspend_finish +EXPORT_SYMBOL_GPL vmlinux 0x0159ba7a rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x01614751 dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0x0161e3f9 ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x0195fba9 btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x01bf4785 sdhci_pci_o2_resume +EXPORT_SYMBOL_GPL vmlinux 0x01cc94be da903x_update +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x0207168d add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0x0208f9d4 class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x020bfe97 cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x021ebfda btree_update +EXPORT_SYMBOL_GPL vmlinux 0x0222f43c driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x025e91c9 tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x027d4a05 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x029436ea pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x0299c7d8 ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0x029c0c11 dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x02a7a12a swiotlb_tbl_map_single +EXPORT_SYMBOL_GPL vmlinux 0x02be1fe9 i2c_unlock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x02ebee31 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x02fbfa6a mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x031364c0 rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0x0314a69d inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x031ee647 platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0x03277bf0 unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x033db0ff dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x03533871 da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x0362c343 blkdev_aio_write +EXPORT_SYMBOL_GPL vmlinux 0x036896be device_reset +EXPORT_SYMBOL_GPL vmlinux 0x036a595b i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x036fd37a usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x0372eca9 rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x037ad5d6 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0x03af44ed usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x03db7855 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0x03e27b4a vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x03e3686c ata_timing_cycle2mode +EXPORT_SYMBOL_GPL vmlinux 0x03f7cdb4 devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x043e7a3f rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0x04428279 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x04486e88 rcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x045b452f of_clk_get_parent_count +EXPORT_SYMBOL_GPL vmlinux 0x0460ed5f device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x046fabcc ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0x0471da13 find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0x047b006e regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x048b5f8d twl4030_audio_get_mclk +EXPORT_SYMBOL_GPL vmlinux 0x048ba0fe usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0x04961630 tasklet_hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x04b5549c __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04cf646d kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x04dcc215 rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x04ebd770 pwm_disable +EXPORT_SYMBOL_GPL vmlinux 0x04f13bba adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x04f2db3b md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x04fc2fb8 iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0x05322bc2 flush_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x053b80ba vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0x053eaf08 adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x0551f0ce tick_nohz_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x055db173 user_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x0561fa34 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x05756f80 led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x05c5346c tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0x05e2298d clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x05ffd8d9 ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x061dee59 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0x0623a6b4 dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x06335939 serial8250_tx_dma +EXPORT_SYMBOL_GPL vmlinux 0x063d5922 gfn_to_hva +EXPORT_SYMBOL_GPL vmlinux 0x064be6dc ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x06513863 usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0x065bb73d kvm_init +EXPORT_SYMBOL_GPL vmlinux 0x06860d1f blkcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0x068d6107 pci_pri_stopped +EXPORT_SYMBOL_GPL vmlinux 0x06c79631 ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0x06e294d7 rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0x0705ad30 pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0x073ef9f7 mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x074a0f2e inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x075a2acd dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0x0762403c edac_put_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x076a474b ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x079e4c2e ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x07aeb2af usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07bc79d0 devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0x07bf3b9c device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x07d53fb8 dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0x07f300c3 smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x086b5e8b da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x088b8f02 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x08afd0d5 ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0x08c322c6 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0x08c47386 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x08e1e877 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0x09144c6b i2c_lock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x091c824a machine_power_off +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x09437748 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x09469482 kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x0947770a inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x0948b8f2 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0x0962d0e8 irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x0967a305 pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x096d2c39 wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x09ca2f29 spi_master_suspend +EXPORT_SYMBOL_GPL vmlinux 0x09d5580a lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0x09f636e2 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x0a00d9ed sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0x0a0847bc crypto_tfm_in_queue +EXPORT_SYMBOL_GPL vmlinux 0x0a2cb807 crypto_nivaead_type +EXPORT_SYMBOL_GPL vmlinux 0x0a51ae5b virq_to_hw +EXPORT_SYMBOL_GPL vmlinux 0x0a73005b regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0x0a9fd3c5 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x0abae460 put_pid +EXPORT_SYMBOL_GPL vmlinux 0x0ac3605e thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x0afd4610 zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b1195c2 wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0x0b2825a5 thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x0b3ad31a crypto_alg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0b59390b __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0b5b7d33 regulator_set_optimum_mode +EXPORT_SYMBOL_GPL vmlinux 0x0b929b44 regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x0bfa3a19 rcu_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x0c01833d of_pci_find_msi_chip_by_node +EXPORT_SYMBOL_GPL vmlinux 0x0c0c015e ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0x0c10d8b1 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0x0c1dc302 kvm_read_guest_cached +EXPORT_SYMBOL_GPL vmlinux 0x0c2cdbf1 synchronize_sched +EXPORT_SYMBOL_GPL vmlinux 0x0c2edd6c rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x0c319de5 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0x0c31c9c4 generic_access_phys +EXPORT_SYMBOL_GPL vmlinux 0x0c5bad56 init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0x0c62ec21 kvm_set_memory_region +EXPORT_SYMBOL_GPL vmlinux 0x0c9627d8 fuse_put_request +EXPORT_SYMBOL_GPL vmlinux 0x0ca2649a fuse_request_send +EXPORT_SYMBOL_GPL vmlinux 0x0cba405c sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0x0cc1e40f crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x0cdc4ab4 usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x0cf56f16 aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x0d706d2e rh_set_owner +EXPORT_SYMBOL_GPL vmlinux 0x0d72cc38 blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0x0d7c33bb dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0x0db768b9 bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0x0dbd0e20 of_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x0dd098c8 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0de06988 cpu_first_thread_of_core +EXPORT_SYMBOL_GPL vmlinux 0x0de222f5 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0x0de2fea4 rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x0df428b5 dma_buf_kunmap +EXPORT_SYMBOL_GPL vmlinux 0x0e0f1fde stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0x0e26f482 netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x0e64053f kvm_write_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x0e8802c4 i2c_new_device +EXPORT_SYMBOL_GPL vmlinux 0x0e8cbf04 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x0ed57dfa fuse_request_send_background +EXPORT_SYMBOL_GPL vmlinux 0x0ed9302e percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x0ef1207a blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x0f13572c remove_irq +EXPORT_SYMBOL_GPL vmlinux 0x0f288c92 crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x0f3345de ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x0f470532 mmput +EXPORT_SYMBOL_GPL vmlinux 0x0f63de48 subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x0f6bb240 xattr_getsecurity +EXPORT_SYMBOL_GPL vmlinux 0x0f751aea input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0x0fb317bd skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0x0fc01e9f static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x0fe112dc of_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x0fe36bce crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x0ffb4dab inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0x10098c54 thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x100b8619 bdi_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x101d9cd6 regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0x10239d65 ata_sas_port_async_resume +EXPORT_SYMBOL_GPL vmlinux 0x109a98ff spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0x10bea4b3 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x10fa59fc list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1114011d threads_shift +EXPORT_SYMBOL_GPL vmlinux 0x11321d17 extcon_find_cable_index +EXPORT_SYMBOL_GPL vmlinux 0x1161018e regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x117129da sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x119990cd usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0x119c6db8 usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0x11b7a407 sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x11be4ad3 trace_buffer_unlock_commit_regs +EXPORT_SYMBOL_GPL vmlinux 0x11d9ec7e dm_kill_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x1212a610 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x121cd964 of_pci_range_parser_one +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x121ed3f3 add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0x122319ad bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x12434111 extcon_set_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x124f2056 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x12621acd irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x12638c70 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0x1263b6fd inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0x12952e06 spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x12ac376e regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x12ef65ed led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x12f7ca19 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0x1300f22e sysfs_get +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131bca42 devres_release +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x136a4ee6 btree_init +EXPORT_SYMBOL_GPL vmlinux 0x13825130 da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x13921363 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x13926cea usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0x1393ea4d regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0x13ad647f scatterwalk_bytes_sglen +EXPORT_SYMBOL_GPL vmlinux 0x13e5ea13 __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0x13f9db29 usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0x141e65c8 regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x142a8be4 of_clk_get_parent_name +EXPORT_SYMBOL_GPL vmlinux 0x143f0c07 fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0x143f94b8 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0x14610679 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0x1487fd15 gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL vmlinux 0x14b3e4eb ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0x14bb8bef nf_unregister_afinfo +EXPORT_SYMBOL_GPL vmlinux 0x14bc0877 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0x14c1c04e devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x152ba30e ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0x155cd281 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0x1561eaef fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0x156b2a49 put_device +EXPORT_SYMBOL_GPL vmlinux 0x15774a6c tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0x157b5411 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x15892417 async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x15c21e5e nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x15eae866 led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0x16000a3c dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x16115417 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x162cb7a0 crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1650bf27 rcutorture_record_progress +EXPORT_SYMBOL_GPL vmlinux 0x16518e40 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0x167b608c ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0x168cecfa inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0x16ad9755 pci_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x16af6a20 debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x16c56f4d crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x1720f289 pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x1753a32f hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0x177c338d twl_get_version +EXPORT_SYMBOL_GPL vmlinux 0x1798d574 crypto_alloc_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x17999cb2 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x17b3193f usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x17d14899 ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x17dcc647 __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x180451b6 inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x1853653c btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x185bc2d3 device_del +EXPORT_SYMBOL_GPL vmlinux 0x1866cec2 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x1878f62b edac_err_assert +EXPORT_SYMBOL_GPL vmlinux 0x18a27f34 jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0x18ca3d60 sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0x18d1044f class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x18ddfc31 pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x18f1fc9b irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x18fe77cc ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0x1938d169 regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x193d48e0 trace_current_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x193f7481 tpm_remove_hardware +EXPORT_SYMBOL_GPL vmlinux 0x19439cb1 blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x194686d3 fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0x194dd5f5 pkey_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x195c364d hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0x1967183e ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0x19853e17 gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19a6274e tps65912_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x19b384a5 hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x19ec7362 sec_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x19eedd8d ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x19fe95be spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x1a082d69 max77693_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x1a1bc5fa ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x1a323362 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x1a4de768 platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x1a4efbac crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0x1a5f1dfa rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x1a8c5907 btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x1ac199b6 ata_eh_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x1ac3bb8b devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x1acef7d2 pm_freezing +EXPORT_SYMBOL_GPL vmlinux 0x1afa4118 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0x1b0a3ae4 wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0x1b36b5de ata_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x1b52db1c probe_kernel_read +EXPORT_SYMBOL_GPL vmlinux 0x1b7acfea inet_hash +EXPORT_SYMBOL_GPL vmlinux 0x1b7edd0d anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x1b8cf833 rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0x1b9aca3f jprobe_return +EXPORT_SYMBOL_GPL vmlinux 0x1bab249b rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0x1bcf1d21 rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0x1bd00786 skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0x1bd06aab cpufreq_frequency_table_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x1bda4e09 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0x1beafe7a blk_queue_flush_queueable +EXPORT_SYMBOL_GPL vmlinux 0x1c131cfc usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x1c27c5a0 crypto_init_ahash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x1c522eff uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1ca4580e led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0x1cdedc9f pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x1cfe78d1 kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL vmlinux 0x1d318e8e sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x1d58ae14 lpddr2_jedec_timings +EXPORT_SYMBOL_GPL vmlinux 0x1d646f28 pci_restore_ats_state +EXPORT_SYMBOL_GPL vmlinux 0x1d717b1d ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d91aef0 crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x1dbbb3ae usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x1dc4242c devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x1de054d5 of_clk_del_provider +EXPORT_SYMBOL_GPL vmlinux 0x1de9185a debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x1dfbcf4c mpic_msgr_disable +EXPORT_SYMBOL_GPL vmlinux 0x1e0bfba9 dev_hard_start_xmit +EXPORT_SYMBOL_GPL vmlinux 0x1e225068 kvm_irq_has_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1e2c8da7 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0x1e3635b2 i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0x1e5423e0 crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x1e588d01 cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x1e5b03dc pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1e6913d9 __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0x1e78452e pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e884e92 rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0x1eb1594f gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebcce7d bmp085_detect +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ec8fd45 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x1ed38328 pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0x1ee31b2e disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x1f1fc99d evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x1f2d5f07 bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x1f3be0a6 usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0x1f49d7b0 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0x1f5330a5 rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f87e253 spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x1f8db7f9 ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x1f8e5da5 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1f9d40a0 regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x1fac5352 queue_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x1fc69701 sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x1fcece42 inet_twdr_twcal_tick +EXPORT_SYMBOL_GPL vmlinux 0x1ff2d8a8 skcipher_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2033027c extcon_get_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x2069636e sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x2078362b default_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x20975408 __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x209c8bdf hrtimer_start +EXPORT_SYMBOL_GPL vmlinux 0x20bb7e81 get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0x20bc3470 orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x20de5193 kvm_disable_largepages +EXPORT_SYMBOL_GPL vmlinux 0x20df27f9 balloon_devinfo_alloc +EXPORT_SYMBOL_GPL vmlinux 0x20fa2462 regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x20fb8ebc crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0x210090d9 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0x2114db0a perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x211ff1c3 sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0x21511a8d device_add +EXPORT_SYMBOL_GPL vmlinux 0x21b720f3 ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0x21cafd74 spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x21d36a03 kvm_hypercall +EXPORT_SYMBOL_GPL vmlinux 0x21ec041a kvmppc_hv_ops +EXPORT_SYMBOL_GPL vmlinux 0x21f8defb inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0x22244b02 skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x222aac90 pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0x22371cd8 rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0x22739464 kvm_vcpu_kick +EXPORT_SYMBOL_GPL vmlinux 0x2296c00d crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x22e35ad1 ping_close +EXPORT_SYMBOL_GPL vmlinux 0x22e5d7a2 srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x23108b74 tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0x231bbd50 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0x23477e2f ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0x236452b1 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0x23679939 __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x2392bc6e pm_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0x23945b6c crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x239c42dc crypto_larval_lookup +EXPORT_SYMBOL_GPL vmlinux 0x23b7019b cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0x23d2db30 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x23f59f19 sec_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x23f9537d ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0x242db52e tcp_death_row +EXPORT_SYMBOL_GPL vmlinux 0x2431c4de spi_alloc_master +EXPORT_SYMBOL_GPL vmlinux 0x24413a2e sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x244745ec extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x244db315 devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0x24526f16 arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0x245ec6c9 usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x247868ab __rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x24a8d686 crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x24aac4d9 crypto_aes_expand_key +EXPORT_SYMBOL_GPL vmlinux 0x24aae05e __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x24babfb8 ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x24d4b125 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x24e350f5 rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x24e8b2fe pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x2506055f key_type_user +EXPORT_SYMBOL_GPL vmlinux 0x25711d98 __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x25831f16 regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x2584e07d get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0x25a7ea32 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0x25a9418f usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x25ca5ee4 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0x25cec59d wm8350_device_exit +EXPORT_SYMBOL_GPL vmlinux 0x25d98c11 ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0x25ff29a1 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0x26231c82 netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0x262f20a8 local_clock +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x26613919 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0x26730e78 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x267d3c13 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x268abb61 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0x268efd43 unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x2691412e boot_cpuid_phys +EXPORT_SYMBOL_GPL vmlinux 0x26b71fb4 ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x26bba680 edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26de157f netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0x26e4b9e2 __kvm_set_memory_region +EXPORT_SYMBOL_GPL vmlinux 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL vmlinux 0x27152ae1 kvm_resched +EXPORT_SYMBOL_GPL vmlinux 0x2728d3f1 tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0x272996ff devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x2733ff22 disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x2748789a kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x2776affd blocking_notifier_chain_cond_register +EXPORT_SYMBOL_GPL vmlinux 0x2787db00 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x2795b917 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0x27b40ca4 bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x27c1e63f usb_amd_find_chipset_info +EXPORT_SYMBOL_GPL vmlinux 0x27d2dd6e rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x27e56a37 blk_queue_rq_timed_out +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27f85cb5 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x283bb2fa unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0x285a5f9d percpu_ida_free +EXPORT_SYMBOL_GPL vmlinux 0x286d13b3 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x289a5583 da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x289aa594 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0x28a82da4 snmp_mib_init +EXPORT_SYMBOL_GPL vmlinux 0x28c8b3ce pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x28d71833 crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0x28de6153 crypto_blkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x28fd369a handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0x290eff49 uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0x291824d2 usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x291ec638 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0x2951993e __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x297a1277 platform_bus +EXPORT_SYMBOL_GPL vmlinux 0x29be5982 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x29e84442 regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0x29fa650e ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0x2a0346d6 raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0x2a1b723e ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0x2a248e63 dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x2a3afae1 filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0x2a42131a __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x2a825826 device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x2ab25a26 wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x2ab94412 ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x2ad1ece4 zs_get_total_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0x2adc78da pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x2ae82ed6 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2af64906 rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x2b5c303b smp_send_reschedule +EXPORT_SYMBOL_GPL vmlinux 0x2b607170 ktime_sub_ns +EXPORT_SYMBOL_GPL vmlinux 0x2b70df85 rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0x2b7a574f md_is_badblock +EXPORT_SYMBOL_GPL vmlinux 0x2b7a6de8 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2b886c1d driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x2bc7c562 platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0x2bede091 wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x2bfaef4e clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x2bfc0bc1 call_filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0x2c0dcd33 task_current_syscall +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c97c085 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x2ca9ed06 thermal_generate_netlink_event +EXPORT_SYMBOL_GPL vmlinux 0x2cb87a11 usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0x2ce98559 kcrypto_wq +EXPORT_SYMBOL_GPL vmlinux 0x2d0c76c9 ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x2d17a0e1 cgroup_taskset_size +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d36c57b rh_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2d3a8c42 _submit_bh +EXPORT_SYMBOL_GPL vmlinux 0x2d4069a6 blkg_stat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d59c954 edac_handlers +EXPORT_SYMBOL_GPL vmlinux 0x2d7e43e7 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x2da58228 __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x2dc5a6d1 btree_last +EXPORT_SYMBOL_GPL vmlinux 0x2dde6ba6 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2e222619 ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e2f1740 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2e3cefd2 crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x2e45e488 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x2e4a7fcb power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0x2e64a0c2 debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0x2e868087 inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0x2e8a6be9 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0x2e8ea3c9 ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x2ea9c214 ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ed3c07f blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x2ee34f17 regmap_fields_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x2efc5eb9 pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f4560c2 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0x2f665a7f i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x2fbc699b da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2fcb7af4 crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x2ffb5ff7 btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0x3006b6f5 of_pci_get_devfn +EXPORT_SYMBOL_GPL vmlinux 0x30429b1b usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x3050ec18 perf_trace_buf_prepare +EXPORT_SYMBOL_GPL vmlinux 0x308b733a getboottime +EXPORT_SYMBOL_GPL vmlinux 0x30a49790 reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x30a4f4ca bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x30cb12c2 ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0x310005cb tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0x3109b751 cpu_clock +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x31859993 of_irq_to_resource_table +EXPORT_SYMBOL_GPL vmlinux 0x31a2a809 sec_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x31c0c2d1 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x324e8a6f blkg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x32544f5b regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3256ca45 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x328995b5 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0x3290149c regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x3290dfc5 max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0x32924a4d scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x32934b71 dm_requeue_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32e7bbe1 dma_buf_kunmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x32fb10d3 sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0x32fd447a monotonic_to_bootbased +EXPORT_SYMBOL_GPL vmlinux 0x3346398f devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x335c0cfc crypto_register_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x336154ca rcutorture_record_test_transition +EXPORT_SYMBOL_GPL vmlinux 0x336c0212 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x337786fa usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x33892482 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x339412ce usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0x33991494 sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x33a94a45 of_irq_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x3407544f fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0x34135051 led_trigger_show +EXPORT_SYMBOL_GPL vmlinux 0x34276300 ref_module +EXPORT_SYMBOL_GPL vmlinux 0x345a9312 regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0x347fd4b3 eventfd_ctx_get +EXPORT_SYMBOL_GPL vmlinux 0x3487deb1 cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x3495e876 devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x34a59735 ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0x34ac50a4 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x34ac9379 pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0x34fb0361 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0x35184918 pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x358ff60f twl_get_hfclk_rate +EXPORT_SYMBOL_GPL vmlinux 0x35f10f43 nfq_ct_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x35f165f1 devm_reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x35f30d9e wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x360a6343 kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0x36126ffd sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x361e2bcc save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0x3636c3eb relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0x363f526d ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0x36455348 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x365e2cbd tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x368a7691 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0x3690b1c2 single_open_net +EXPORT_SYMBOL_GPL vmlinux 0x36923a27 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36a64e5c percpu_ida_free_tags +EXPORT_SYMBOL_GPL vmlinux 0x36b15f1e perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0x36b506b9 system_trusted_keyring +EXPORT_SYMBOL_GPL vmlinux 0x36bcd873 posix_timer_event +EXPORT_SYMBOL_GPL vmlinux 0x36c8ff70 bmp085_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x36d6b6f3 scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0x37064287 arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0x370ade5b rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x371ad933 regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0x37330366 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x374446c4 generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0x374668bd irq_find_host +EXPORT_SYMBOL_GPL vmlinux 0x377b8cf8 kvmppc_handle_load +EXPORT_SYMBOL_GPL vmlinux 0x37875783 dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0x37ba4d71 dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x37c57a5f fuse_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0x37c83dca regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0x37d2c2c5 rh_dump_blk +EXPORT_SYMBOL_GPL vmlinux 0x381b7e29 tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x382be1b5 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0x382c2921 mmc_send_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0x38726c43 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x38836505 aead_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0x38a9c2c7 input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x38cf7945 wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x38f71ec8 ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0x3904aa70 ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0x39092593 i2c_new_probed_device +EXPORT_SYMBOL_GPL vmlinux 0x394d6330 ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x395549e1 fuse_get_req_for_background +EXPORT_SYMBOL_GPL vmlinux 0x397ef9ad crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x39eebd5e class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x39faa126 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a3f0601 extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3a48c59a relay_close +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a6ac287 tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0x3abb1cd4 pci_renumber_slot +EXPORT_SYMBOL_GPL vmlinux 0x3abe71fa ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0x3ac17d03 tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0x3acdf325 twl4030_audio_enable_resource +EXPORT_SYMBOL_GPL vmlinux 0x3ad825df da903x_write +EXPORT_SYMBOL_GPL vmlinux 0x3ad82802 of_property_read_u32_index +EXPORT_SYMBOL_GPL vmlinux 0x3b0c8342 kvm_write_guest_cached +EXPORT_SYMBOL_GPL vmlinux 0x3b22f9fc inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0x3b3c8d3f ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x3b3cb82e rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x3b4ee8b7 rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x3bb04505 d_materialise_unique +EXPORT_SYMBOL_GPL vmlinux 0x3bb8f48f platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0x3bfe1182 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0x3c137e9f tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x3c39fd94 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x3c8424a0 clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3c8d28cc of_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x3c9202f6 sysfs_put +EXPORT_SYMBOL_GPL vmlinux 0x3c9390db pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0x3cadf712 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0x3ccffec8 of_irq_parse_one +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cd33fc5 max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x3d26cd60 spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x3d3332ea ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0x3d4c8d32 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0x3d56616d pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x3d686656 shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x3d7db53d kobj_completion_init +EXPORT_SYMBOL_GPL vmlinux 0x3d87bb3f adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3d95a0d8 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x3da03a62 uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0x3da2090c tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x3dc526a9 arizona_of_match +EXPORT_SYMBOL_GPL vmlinux 0x3dc916b6 crypto_fl_tab +EXPORT_SYMBOL_GPL vmlinux 0x3dd4d3a7 bprintf +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3df59f19 alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0x3e09d6e0 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0x3e1af1ca ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x3e266f62 fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0x3e2e543d cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x3e2fa31f wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3e3d920e debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x3e3f5db8 ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0x3e40220b debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x3e54d50c sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0x3e57f609 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0x3e5e47bb devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e716271 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0x3e757637 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0x3e7e153e mark_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x3e7e5f16 irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0x3e845a45 rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x3e8cb20d kvm_vcpu_uninit +EXPORT_SYMBOL_GPL vmlinux 0x3e971b8d regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3eab6020 usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x3ec85b52 usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x3ed3d590 __clk_register +EXPORT_SYMBOL_GPL vmlinux 0x3f135797 led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0x3f1a7b96 __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x3f1d12bb regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3f53287f i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0x3f6bbaa9 rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3f816a12 ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0x3fa2376c transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0x3fc98cee pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x3fdd4e9e inet_csk_reqsk_queue_prune +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x4045c494 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0x404deed2 scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0x40682b94 usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x40790537 gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x40a3e493 md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x40af0dec ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x40d46b21 crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x40f7b341 clk_register_divider +EXPORT_SYMBOL_GPL vmlinux 0x411430b6 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x412ccb47 pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x41336d10 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0x4146678e fat_attach +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x41cadaa1 attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0x41df6b5d sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x4205ad24 cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x422d40e7 bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x424acc6d scatterwalk_done +EXPORT_SYMBOL_GPL vmlinux 0x425c1c0b ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x4260a0f3 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0x4266b34e sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x4287fa68 PageHeadHuge +EXPORT_SYMBOL_GPL vmlinux 0x4298cae2 ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0x429f97f2 led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0x42a0d76f task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x42a4360d blkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x42a4de3c smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x42a70ed5 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x42f72819 kvm_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x42fb89c9 blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x430e5257 of_alias_get_id +EXPORT_SYMBOL_GPL vmlinux 0x4316cc68 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x431b3479 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0x43286494 do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x434d4037 ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0x434e3985 inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x435936d6 key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0x436350f8 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x437d17a6 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x43969dbe rh_alloc_fixed +EXPORT_SYMBOL_GPL vmlinux 0x43a53735 __alloc_workqueue_key +EXPORT_SYMBOL_GPL vmlinux 0x43b466b0 gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL vmlinux 0x43b9d477 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0x43c25add mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x441b2193 gov_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x44404f11 kdb_register_repeat +EXPORT_SYMBOL_GPL vmlinux 0x44686e62 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x446b72a4 ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x44ae4760 usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x44ca92c3 fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x44f94eda blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0x450d7fb8 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x45431550 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x454c15ae __smp_call_function_single +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x457b77ca of_fixed_factor_clk_setup +EXPORT_SYMBOL_GPL vmlinux 0x45974930 regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x459950d6 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x45bcd0b9 pci_reset_bridge_secondary_bus +EXPORT_SYMBOL_GPL vmlinux 0x45bf1ff3 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x45d9af9d pci_intx +EXPORT_SYMBOL_GPL vmlinux 0x45f27b62 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0x45f5a227 usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0x460f7531 wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x462e3eb2 rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x46365374 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0x4637ecf1 anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x464ce1cd sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0x46576864 da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0x4667f8e0 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x4672e88b __crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x4688c96a usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x469a7ad3 unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x46fd12cf sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x4707c240 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x470fa426 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x4724a2b1 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x47519a6d of_irq_parse_and_map_pci +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4765bb20 irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0x477a6ec6 cpufreq_frequency_get_table +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x47a7648a irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47b21077 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x47bc3993 rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0x47c2031d irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x47cfd12b sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0x47d2faf2 hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0x47dff7fb security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0x47eff14f __pci_complete_power_transition +EXPORT_SYMBOL_GPL vmlinux 0x4815e302 usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x481ea6ea sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0x485afde2 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL vmlinux 0x48883347 __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x48897686 __pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x48993846 key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0x48b78054 irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x48c28c72 sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0x48ca8947 pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x48ce0ad8 crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0x48f58b22 clk_register +EXPORT_SYMBOL_GPL vmlinux 0x49310651 dm_dispatch_request +EXPORT_SYMBOL_GPL vmlinux 0x49787899 ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0x4982a57f probe_kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x498d293a trace_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x49e3ebdb unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x49e66d90 __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0x49f5add8 hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x49f93562 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x4a08f44d regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x4a362217 pcibios_finish_adding_to_bus +EXPORT_SYMBOL_GPL vmlinux 0x4a3aeb55 pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0x4a48c481 tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x4a54fb04 crypto_init_shash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x4a5d397a spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x4a6cf3dc usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x4a71efef devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x4aadeb9a ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0x4b17b645 of_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x4b8e0b08 register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x4b98827c rh_init +EXPORT_SYMBOL_GPL vmlinux 0x4bc62a81 audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4c2e1f24 clk_disable +EXPORT_SYMBOL_GPL vmlinux 0x4c3c27d7 usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0x4c4302c9 ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0x4c4d94b3 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x4c4e3a36 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0x4c602bf1 __blkg_release_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4c759827 byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x4c76546c __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x4c908c3a sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0x4c9e6a9c blk_queue_flush +EXPORT_SYMBOL_GPL vmlinux 0x4ca4c9df clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x4cd0ddfb irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0x4d06a13a dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0x4d172ccb ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x4d23e35b key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x4d2a8e22 pci_reset_pri +EXPORT_SYMBOL_GPL vmlinux 0x4d3a78fa spi_async +EXPORT_SYMBOL_GPL vmlinux 0x4d410602 device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x4d4ea2c5 tpm_dev_vendor_release +EXPORT_SYMBOL_GPL vmlinux 0x4d795216 crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x4d9de069 pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x4dcc875a disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x4ddbffb7 pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4df8742f __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x4e0585f0 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0x4e109192 ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0x4e1b6d8f task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x4e242f5f pstore_cannot_block_path +EXPORT_SYMBOL_GPL vmlinux 0x4e306f75 ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x4e6069bb agp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x4e650db5 alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0x4e6e53d4 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0x4e72a619 rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0x4e745e8b ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0x4e7b760f clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x4e812852 stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0x4e929682 gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL vmlinux 0x4ea11c69 dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x4ea1ea8d crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0x4eadb892 regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f020dee public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x4f0e77d7 pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x4f175455 user_update +EXPORT_SYMBOL_GPL vmlinux 0x4f4e8920 tty_prepare_flip_string_flags +EXPORT_SYMBOL_GPL vmlinux 0x4f72173c alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0x4f735f03 do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x4f881b16 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0x4fa02203 usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0x4fabd7e4 usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x4fbaf85d device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x4fd4e89d ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4fd745bf ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4ff09d5e ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0x50293fdf sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0x50314499 adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0x503579d2 rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x5042e8eb ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x50553e56 devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0x50601122 of_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x506691f1 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x506cc085 tracepoint_iter_stop +EXPORT_SYMBOL_GPL vmlinux 0x507dbe82 extcon_unregister_interest +EXPORT_SYMBOL_GPL vmlinux 0x5086ac3a alg_test +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x50c89f23 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50f954b2 xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x5103a67f locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0x512d7a8e bus_register +EXPORT_SYMBOL_GPL vmlinux 0x51698459 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x51846493 trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x51b65a26 rtc_lock +EXPORT_SYMBOL_GPL vmlinux 0x51e8b97c __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x51ee4022 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x51f5e309 cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0x520e9687 anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL vmlinux 0x52212010 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x5231314e devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x5249f012 get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0x5256318e fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x5284c1c9 fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0x52a6d130 of_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x52a71a1a pci_sriov_migration +EXPORT_SYMBOL_GPL vmlinux 0x52d1629e perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x52f80b82 crypto_ablkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x52f9c83c ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x5322f80c hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x5334ba2d kvm_get_dirty_log +EXPORT_SYMBOL_GPL vmlinux 0x5335dd11 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x53402cd7 sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0x5358fc36 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x53614269 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x537873e1 dma_buf_kmap +EXPORT_SYMBOL_GPL vmlinux 0x53865f79 cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x5408d9fa sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x5415682b tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54348516 rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0x5435eeae usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x5460c8d8 fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x546c5565 ppc_tb_freq +EXPORT_SYMBOL_GPL vmlinux 0x54740eb7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x5485fc8b crypto_ahash_type +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54b4b137 scsi_internal_device_block +EXPORT_SYMBOL_GPL vmlinux 0x54b524b5 sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x54c0c403 pci_enable_pri +EXPORT_SYMBOL_GPL vmlinux 0x54e6fdc7 ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x54ee8fff tpm_show_pubek +EXPORT_SYMBOL_GPL vmlinux 0x5505c53c gfn_to_memslot +EXPORT_SYMBOL_GPL vmlinux 0x55098665 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x5513266c pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x554f6100 trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x55551632 dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x556d320f shash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x557c2f69 __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5585e636 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x55b5cedb tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0x55c1b1c1 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x55ca745a usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0x561e4b77 irq_of_parse_and_map +EXPORT_SYMBOL_GPL vmlinux 0x562996a5 bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x564f1dca klist_add_after +EXPORT_SYMBOL_GPL vmlinux 0x5653593a pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x565b6892 uuid_le_gen +EXPORT_SYMBOL_GPL vmlinux 0x56627abe tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0x5671551f init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x56886b19 scatterwalk_map +EXPORT_SYMBOL_GPL vmlinux 0x5692386f gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x56b63670 lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x56d697ce cpu_up +EXPORT_SYMBOL_GPL vmlinux 0x56e75d47 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x57231f45 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0x572fea52 nfq_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x576e2b59 rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x579dc892 pci_configure_slot +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57a520ff cpufreq_governor_dbs +EXPORT_SYMBOL_GPL vmlinux 0x57b82c61 blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x57b9cab1 of_regulator_match +EXPORT_SYMBOL_GPL vmlinux 0x57bc6b18 blkcipher_walk_virt_block +EXPORT_SYMBOL_GPL vmlinux 0x57d0c67e ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x57d8597c usb_string +EXPORT_SYMBOL_GPL vmlinux 0x580a9f8d part_round_stats +EXPORT_SYMBOL_GPL vmlinux 0x582fe158 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0x58308f9e get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x58413099 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x5846dc61 usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x585decea platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0x586178e1 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x5869bb11 device_rename +EXPORT_SYMBOL_GPL vmlinux 0x587bd953 ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x5892f832 release_pmc_hardware +EXPORT_SYMBOL_GPL vmlinux 0x589e4569 syscon_regmap_lookup_by_pdevname +EXPORT_SYMBOL_GPL vmlinux 0x58e9116f __rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x58f6d8d8 perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0x58fe9409 rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0x592c91e1 usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x5947abbe max77693_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x59531655 preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x59533696 ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0x59a6e91d clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x59be580b regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x59e2743e call_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0x59eae699 ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x5a001508 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0x5a04dc17 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x5a109029 class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a8f3b69 of_irq_parse_raw +EXPORT_SYMBOL_GPL vmlinux 0x5ac1ee9d tpm_show_active +EXPORT_SYMBOL_GPL vmlinux 0x5ac247ad ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0x5adc1923 skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0x5afc3fce cgroup_add_cftypes +EXPORT_SYMBOL_GPL vmlinux 0x5afe9f71 __blk_put_request +EXPORT_SYMBOL_GPL vmlinux 0x5b0d97e2 schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0x5b16a9d0 crypto_alloc_ablkcipher +EXPORT_SYMBOL_GPL vmlinux 0x5b3388d2 serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x5b4e379c of_prop_next_u32 +EXPORT_SYMBOL_GPL vmlinux 0x5b59e833 regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x5b5f87e5 rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0x5b748e87 ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x5b8d724d sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x5b925adf crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x5baba1b1 regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0x5bd89ab7 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0x5be3a75a gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x5c0ecf14 blkio_subsys +EXPORT_SYMBOL_GPL vmlinux 0x5c222ff5 dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x5c246a8c class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x5c5cb756 get_device +EXPORT_SYMBOL_GPL vmlinux 0x5c677caa regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x5c6bff18 pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0x5c77aa3a shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x5c984f9f ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x5cabdced dev_pm_qos_remove_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5cf4edd8 serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0x5d12e48f input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0x5d3a174f pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x5d80fd95 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x5d8be1fe do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x5dcc817f wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x5defa9a7 platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0x5df1886c ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0x5dfbe4ce aead_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0x5e16952f register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x5e26aec2 wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e55b23d css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x5e6ab03d pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x5eacae92 usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x5ede8036 relay_open +EXPORT_SYMBOL_GPL vmlinux 0x5efbed9d blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x5efcd3ad usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x5f248f72 set_timer_slack +EXPORT_SYMBOL_GPL vmlinux 0x5f2b186f ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0x5f419491 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x5fc7eced fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0x5fd782a6 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x5fedffa2 crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0x602ca552 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x60506751 unmap_kernel_range_noflush +EXPORT_SYMBOL_GPL vmlinux 0x6077df88 stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x607e2e78 device_create_vargs +EXPORT_SYMBOL_GPL vmlinux 0x607f1820 ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0x6094685f wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL_GPL vmlinux 0x60d6450c regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x60f6d812 devres_alloc +EXPORT_SYMBOL_GPL vmlinux 0x60f6e2ca tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0x610d1638 pci_ats_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x6136a3df platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x615fd917 dev_get_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x61a90c54 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0x61b8dca1 wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0x61e831cc tps65912_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x61ea1bb9 of_scan_bus +EXPORT_SYMBOL_GPL vmlinux 0x61f0cdbd tpm_gen_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x620c0db1 relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x622dacba tick_nohz_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x624a6406 hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x625a3d0e xfrm_inner_extract_output +EXPORT_SYMBOL_GPL vmlinux 0x62657277 dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x6267ea3d regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x628cf201 vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0x62d9f243 ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x62e814dd regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6318757f mdio_mux_uninit +EXPORT_SYMBOL_GPL vmlinux 0x63205de1 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x6325d015 vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x6341f3ff tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x6348daa6 extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0x6353217c usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0x63765be5 show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0x6378d7a8 ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x63832123 cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x6390efda of_modalias_node +EXPORT_SYMBOL_GPL vmlinux 0x63a1304f kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x63a501ee usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0x63aab5bc crypto_lookup_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x63c48b9a __inet_hash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x64256424 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0x6428da4f rh_attach_region +EXPORT_SYMBOL_GPL vmlinux 0x64395ced inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x6450e10c ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0x6451bacd blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0x646f81e8 pci_intx_mask_supported +EXPORT_SYMBOL_GPL vmlinux 0x647b195f pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0x64b5992d gpiochip_add +EXPORT_SYMBOL_GPL vmlinux 0x64bd71ee tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0x6587e1d4 gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x65985c3c ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x659cbff0 rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65f23885 dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x65ff18dd transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x660c492d regmap_field_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x66284627 powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0x662a0c3f x509_get_sig_params +EXPORT_SYMBOL_GPL vmlinux 0x6651b66e ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6679dcc7 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x669da1fd kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL vmlinux 0x66afb53b unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x6712353b sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x6722b075 irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x6746e1b0 map_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x67476b6a setup_irq +EXPORT_SYMBOL_GPL vmlinux 0x674e13e1 public_key_destroy +EXPORT_SYMBOL_GPL vmlinux 0x67643d26 pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x676c73b1 register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x678095af simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x6797487a regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x67a084e6 led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0x67bfb2d0 pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x67c573ec driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x67d0f6ef ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0x67e3e2a2 pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0x67f20878 skcipher_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0x680f9739 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0x6812cf8d __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0x681c8e9e ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0x6822f517 da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x685096dc netlink_alloc_skb +EXPORT_SYMBOL_GPL vmlinux 0x687934e9 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x687f2d09 crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0x68889224 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x68956406 static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x68c64b5a tpm_write +EXPORT_SYMBOL_GPL vmlinux 0x68ef5d03 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0x690283c5 led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0x6923ce63 irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x693f37de ata_base_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x69447467 ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0x6945725e mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0x6946ce9a wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x694c5f0d extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6967421a platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0x696a8477 __ip_route_output_key +EXPORT_SYMBOL_GPL vmlinux 0x6975901b wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0x697a420c timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x697cbbb4 threads_per_core +EXPORT_SYMBOL_GPL vmlinux 0x69897dde stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0x698a899f ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0x69ac9211 devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x69c93dc0 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0x69e8ccc1 usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0x69e9a2cb ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x6a19d533 security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x6a5fb566 rcu_sched_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6a990120 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0x6ab60040 __ablkcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0x6aed0b38 bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x6afcf07e fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6affa466 device_find_child +EXPORT_SYMBOL_GPL vmlinux 0x6b25cf5f rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x6b29a1fa ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0x6b48a910 switch_booke_debug_regs +EXPORT_SYMBOL_GPL vmlinux 0x6b6da889 irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0x6b9e7ad7 of_clk_src_simple_get +EXPORT_SYMBOL_GPL vmlinux 0x6bb44f12 extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6bb49c89 crypto_init_spawn2 +EXPORT_SYMBOL_GPL vmlinux 0x6bbc4012 anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x6bf04154 gfn_to_page +EXPORT_SYMBOL_GPL vmlinux 0x6c1b09ab gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x6c22e1c0 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0x6c49c4f2 clockevents_notify +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c4da7b6 ata_sff_data_xfer_noirq +EXPORT_SYMBOL_GPL vmlinux 0x6c749afe __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x6c8964e8 devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6cb94bba devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x6cbc54d4 subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x6cd21997 ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x6cd4ea62 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0x6cdb4df7 __put_net +EXPORT_SYMBOL_GPL vmlinux 0x6d182ff6 unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0x6d1d1d8d kvmppc_sanity_check +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d31e93b tracepoint_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x6d39cd8f sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0x6d4b897e lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x6d85aff6 cgroup_unload_subsys +EXPORT_SYMBOL_GPL vmlinux 0x6d9e5425 of_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x6ddb3fb8 __netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x6e04a077 usb_bind_phy +EXPORT_SYMBOL_GPL vmlinux 0x6e1842d7 br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0x6e405700 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x6e594cf9 cgroup_load_subsys +EXPORT_SYMBOL_GPL vmlinux 0x6e59fc68 regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x6e6a3649 tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6e8b709e verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x6eb88b29 xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x6ec2efbd regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x6ec70bab ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x6f0f44f6 blk_queue_bypass_start +EXPORT_SYMBOL_GPL vmlinux 0x6f1ee69e kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x6f28c431 ablkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x6f3efb44 rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x6f4ea1de cgroup_taskset_first +EXPORT_SYMBOL_GPL vmlinux 0x6f4fdc2c bmp085_remove +EXPORT_SYMBOL_GPL vmlinux 0x6f57d0c2 cpu_remove_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0x6f5da9e4 crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0x6f618073 inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0x6f981efd dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6fe61dd6 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x6feafcb9 ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0x6ff1a540 tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x7006d72d dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x70612875 cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0x706bc275 ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0x7075d56e sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0x707ff1bb ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x708cf509 exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x709f7026 crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0x70b5a87a disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x70bb623a regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x70bb651d __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x70cc0087 regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0x70cf032f usb_hcd_irq +EXPORT_SYMBOL_GPL vmlinux 0x71067e65 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x71621fe0 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71930ed3 of_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x71ad9dfc sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x71dc9998 crypto_il_tab +EXPORT_SYMBOL_GPL vmlinux 0x723374f8 pci_bus_sem +EXPORT_SYMBOL_GPL vmlinux 0x724525e2 bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x724e3740 split_page +EXPORT_SYMBOL_GPL vmlinux 0x72621798 kill_pid_info_as_cred +EXPORT_SYMBOL_GPL vmlinux 0x7267db00 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x726aef68 cgroup_taskset_next +EXPORT_SYMBOL_GPL vmlinux 0x727093bb regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0x72741f25 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x72788de0 wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x728d8b51 usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0x7296a0eb bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x729f2558 each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x72af92e4 devres_find +EXPORT_SYMBOL_GPL vmlinux 0x72eceab6 cpufreq_table_validate_and_show +EXPORT_SYMBOL_GPL vmlinux 0x73053187 edac_subsys +EXPORT_SYMBOL_GPL vmlinux 0x734756e5 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0x73779a9a tpm_show_temp_deactivated +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73aa977c rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x73c749a7 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x73c832f2 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x73d69364 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x73fa6f20 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0x740b24ba napi_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x74124d99 kick_process +EXPORT_SYMBOL_GPL vmlinux 0x7422c95e gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x7438a9e2 blk_queue_dma_drain +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x7464ea38 dev_pm_qos_add_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x74743570 exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x74784d32 debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x747bcfda usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0x74954462 timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x74b1979d __fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74bb1239 kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL vmlinux 0x7522eb5d __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x75382700 od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x75457e40 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7579bf32 device_attach +EXPORT_SYMBOL_GPL vmlinux 0x75862d71 device_schedule_callback_owner +EXPORT_SYMBOL_GPL vmlinux 0x758a782e blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x75c2b9f1 memalloc_socks +EXPORT_SYMBOL_GPL vmlinux 0x75c8a11c inet_twdr_twkill_work +EXPORT_SYMBOL_GPL vmlinux 0x75de8ad0 sk_unattached_filter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x75f2a044 usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0x75f42f1c ping_proc_unregister +EXPORT_SYMBOL_GPL vmlinux 0x75fc601a of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0x7627efa4 pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x7639a74b rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x76535bef raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x766dd659 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x766e8fbf ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x76d07d6e gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x76ebc963 hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x770cf981 tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x771a9f46 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0x771ccbb7 sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x77214cea sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x774de078 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x77af22f5 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0x77f9d525 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0x78099b22 flush_fp_to_thread +EXPORT_SYMBOL_GPL vmlinux 0x781babda md_run +EXPORT_SYMBOL_GPL vmlinux 0x7869f614 device_move +EXPORT_SYMBOL_GPL vmlinux 0x787a36b2 sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0x78a624c9 __module_address +EXPORT_SYMBOL_GPL vmlinux 0x78b7c1f1 bio_trim +EXPORT_SYMBOL_GPL vmlinux 0x7904428c inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x795c3539 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x796c2d48 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x7992827d blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x79c480da rh_dump +EXPORT_SYMBOL_GPL vmlinux 0x79d2203c shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0x79f207c7 extcon_get_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x79f7d96a devres_get +EXPORT_SYMBOL_GPL vmlinux 0x79fd057f uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0x7a071f70 regmap_fields_write +EXPORT_SYMBOL_GPL vmlinux 0x7a178e6b skb_gro_receive +EXPORT_SYMBOL_GPL vmlinux 0x7a30f327 blkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0x7a944007 rcu_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x7aa64803 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL vmlinux 0x7aa82490 devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x7ab3ca18 eventfd_ctx_read +EXPORT_SYMBOL_GPL vmlinux 0x7adb4728 cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0x7ae1ae8e cpufreq_frequency_table_put_attr +EXPORT_SYMBOL_GPL vmlinux 0x7ae26a79 blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x7afa9187 wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x7b0d0bfe led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0x7b0f1ab3 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7b1d544d edac_handler_set +EXPORT_SYMBOL_GPL vmlinux 0x7b310e67 __netpoll_free_async +EXPORT_SYMBOL_GPL vmlinux 0x7b766674 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x7b9f5b2a perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x7bc4d2a1 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0x7bc905b8 blk_queue_bypass_end +EXPORT_SYMBOL_GPL vmlinux 0x7bd5875d unregister_jprobe +EXPORT_SYMBOL_GPL vmlinux 0x7bdd5d52 fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0x7bebef72 disk_get_part +EXPORT_SYMBOL_GPL vmlinux 0x7c227088 clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x7c346357 pkey_algo +EXPORT_SYMBOL_GPL vmlinux 0x7c3e0f4e pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0x7cc1b7fd max77693_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7cc7de1c x509_check_signature +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7ce83090 input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d05e72c n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0x7d105db2 cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x7d298f46 tpm_show_owned +EXPORT_SYMBOL_GPL vmlinux 0x7d36e534 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7d37c066 pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x7d38574e sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0x7d397cc7 gpiod_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d60e9f3 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x7d7c76b5 __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x7dab26b6 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7dd12fac register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x7dde1709 __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x7dfb9c08 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0x7e17ba7b klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x7e369132 public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0x7e37212b pci_hp_change_slot_info +EXPORT_SYMBOL_GPL vmlinux 0x7e3d681f usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0x7e45e5aa usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0x7e4cd5bd max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7ed23aae driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x7f008202 btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0x7f25f852 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x7f28e02d cpu_remove_dev_attr_group +EXPORT_SYMBOL_GPL vmlinux 0x7f2b6abb shash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0x7f7bc710 klist_next +EXPORT_SYMBOL_GPL vmlinux 0x7f97f5a2 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x7fa4b4a2 of_pci_parse_bus_range +EXPORT_SYMBOL_GPL vmlinux 0x7faaf0f1 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x7fc672f8 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x7fceebc3 ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x7fea112a mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x801dcbcf inet6_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x80308c32 alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x8049cadd regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0x804f631f cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x8057a768 tpm_show_durations +EXPORT_SYMBOL_GPL vmlinux 0x805bb713 of_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x80671309 cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x808f4ecc devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x80949804 rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0x80c894f4 zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80f3268f __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x81172adf debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0x81179621 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x81242f78 ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0x8140842a gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x8149ea54 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0x816a9ada debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0x819d1a7b tpm_show_pcrs +EXPORT_SYMBOL_GPL vmlinux 0x81b22b59 tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0x81f26ed3 pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0x81f31937 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x81f45c82 of_usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0x8237e8ee pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x825aedd5 rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x827399e0 debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x82742370 extcon_set_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x82939ebd rcu_batches_completed_sched +EXPORT_SYMBOL_GPL vmlinux 0x82b49203 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x82bf8428 usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x83134496 rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x83149305 adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x8318eb66 clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x832465a5 __mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x833927f2 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0x834616bb sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x836a6be6 user_read +EXPORT_SYMBOL_GPL vmlinux 0x836d61d0 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x83714ee3 raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x837acd69 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x837ce240 rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x838b13e7 ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0x83a5ae2e __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0x83c3270e regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x83dbf3fc regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0x83ee2b5a udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x83ee349d serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x83faa80c fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0x83fe429c __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0x840a4ffd usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0x841b3c6b md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0x841da239 unregister_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x8420bccd cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0x84261a22 pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x8442a378 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0x848106fb rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x84939f2d dm_get_rq_mapinfo +EXPORT_SYMBOL_GPL vmlinux 0x84bb9c02 crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0x84cdfe60 usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0x85050965 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x850fa6cf ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x8512d076 kvm_put_kvm +EXPORT_SYMBOL_GPL vmlinux 0x852e568d of_get_nand_ecc_mode +EXPORT_SYMBOL_GPL vmlinux 0x856629e7 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x8574ca6c gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x857f5802 crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0x85b14d33 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x85b61ad9 nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0x85c10896 rcu_batches_completed_bh +EXPORT_SYMBOL_GPL vmlinux 0x85c6994d pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0x85c7f674 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x85cf1695 kobj_completion_del_and_wait +EXPORT_SYMBOL_GPL vmlinux 0x860375df sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x8621a97d scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x862c91f0 tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x8630b204 pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x863f87d9 seq_open_net +EXPORT_SYMBOL_GPL vmlinux 0x863ff0f4 __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0x865a380a ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0x866b9687 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x86808000 ping_err +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x8694482c list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0x86a58d12 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0x86b4b3ad ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0x86c15329 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0x86d5fe85 gfn_to_pfn_prot +EXPORT_SYMBOL_GPL vmlinux 0x86dec124 mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x86e9c0c4 serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x8708a481 irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0x873fbaea edac_atomic_assert_error +EXPORT_SYMBOL_GPL vmlinux 0x874e062b device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x877ad796 hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0x877c8d26 fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x8795d6d2 ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x87984b16 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x87bb4e32 of_usb_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x87cf5027 wait_for_tpm_stat +EXPORT_SYMBOL_GPL vmlinux 0x87d65b87 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0x87e153ac get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x8804af3d usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x8810ad5e crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0x88194672 da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x881c4aa1 raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x881c6ce1 crypto_alloc_instance2 +EXPORT_SYMBOL_GPL vmlinux 0x882aed15 spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x884a46ec rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x886378ef device_register +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b5647c trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x88c0b26a devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x88c96895 ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x88dbf5ce kvm_get_kvm +EXPORT_SYMBOL_GPL vmlinux 0x88e0c156 dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x895febb5 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0x896c54ec tpm_register_hardware +EXPORT_SYMBOL_GPL vmlinux 0x89a87bb5 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0x89b61377 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0x89b80566 regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x8a04b9fe tracepoint_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0x8a2b14ba wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x8a439d02 usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0x8a46fe5e ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0x8a542ee1 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x8a573e70 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0x8a7f9c2e pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0x8a834abe crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0x8a8d0b89 scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ae152b5 of_get_nand_bus_width +EXPORT_SYMBOL_GPL vmlinux 0x8aff4b38 ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x8b4660a6 __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x8b6a0053 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x8b70e8ea __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0x8b75882c device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8b7d4145 dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x8bcd9d52 led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x8be6e189 sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c31e5e9 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x8c378a6b ablkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0x8ca3dc49 __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x8cfd4d2b dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x8cfdd897 ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x8d01d70a pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0x8d02d6c1 ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x8d28a695 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x8d29b493 inet6_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x8d893d6d inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x8d8bf3fe user_describe +EXPORT_SYMBOL_GPL vmlinux 0x8d9c30f5 regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0x8da01274 kvm_get_pfn +EXPORT_SYMBOL_GPL vmlinux 0x8da0e3cb tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0x8ddab5a4 blk_add_request_payload +EXPORT_SYMBOL_GPL vmlinux 0x8de04978 pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x8de0e659 ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x8dfd5821 __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x8e10617a regmap_update_bits_check_async +EXPORT_SYMBOL_GPL vmlinux 0x8e1cd06f kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL vmlinux 0x8e5f2096 ata_do_eh +EXPORT_SYMBOL_GPL vmlinux 0x8e864edd cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0x8e9c7933 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x8ee7ee58 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x8ef52996 ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8efa3586 pci_pri_status +EXPORT_SYMBOL_GPL vmlinux 0x8effebd3 pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x8f0d1f03 usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x8f0f97b8 md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0x8f178777 regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x8f1b8e17 crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f8e53b9 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8f902a2c gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x8fd134a5 inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x9004fe52 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x90228869 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x902a3e1a sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0x904b0fce list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0x904c63be i2c_new_dummy +EXPORT_SYMBOL_GPL vmlinux 0x9062c322 ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x90705b7f syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x9077d5ea usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x90821b97 skcipher_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0x909af61e lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0x90a1004a crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x90d412b8 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0x90e652c6 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x90f1311f inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x90f43ff7 stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x90f7bdb3 bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0x91286982 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x917fbebb proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0x918ad429 ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x91990458 netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0x91e3dcdd relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0x9211c0e5 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0x92383975 tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0x923e6ec8 __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x92472b0b ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x924787f1 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x925576e9 bsg_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x925f2c4e crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x927f82b0 blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x92b57248 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x92ca3ee2 tpm_release +EXPORT_SYMBOL_GPL vmlinux 0x92ce3bd2 devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92e56b04 tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0x92f586a2 of_get_named_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x92fe897f regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x930ed9b9 of_usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0x93266fdd pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x933ed54a tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x936687fc hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x939e9fa1 pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0x939ecd84 arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x93a2cb47 reserve_pmc_hardware +EXPORT_SYMBOL_GPL vmlinux 0x93dd54ef kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x93f1b354 pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x942c7d85 pci_cleanup_aer_uncorrect_error_status +EXPORT_SYMBOL_GPL vmlinux 0x943a14d8 __percpu_ida_init +EXPORT_SYMBOL_GPL vmlinux 0x9440d8cb tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x9449e894 __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x9467f98f da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x949e8f6c unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0x94a68723 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x94abb745 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0x94ac4fb0 __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x95099d6f sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x954b77f3 platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0x9554131e sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x9554910e css_rightmost_descendant +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x9562a14f stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0x9565506e ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x95966454 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95c5f8f3 devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x95cd6a7c crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0x95d2b65c tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0x9602f06d wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0x960eee17 xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0x96176b58 regmap_update_bits_check +EXPORT_SYMBOL_GPL vmlinux 0x9621849f ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x962416cd dbs_check_cpu +EXPORT_SYMBOL_GPL vmlinux 0x9630a38a irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0x96371b56 regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9655b911 enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x966a8107 of_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x96ec9642 cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0x96eef255 blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x970208dc devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0x971ec9e6 cred_to_ucred +EXPORT_SYMBOL_GPL vmlinux 0x97223efd generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0x9730c462 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x9745c52a of_fixed_clk_setup +EXPORT_SYMBOL_GPL vmlinux 0x978a968c find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x979b866e crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0x97a3ec56 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x97ae491b ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97ec3100 posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0x97f349a3 tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x982cd486 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x9834964d sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x98359056 kvm_clear_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x983c7494 rh_detach_region +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x985a2513 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x98664ccf udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x98700523 usb_bus_start_enum +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x98c7b192 usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x98cb11ec rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0x98cdf230 ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x98fb6993 inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x98fed8eb xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0x9905a3c1 swiotlb_tbl_sync_single +EXPORT_SYMBOL_GPL vmlinux 0x990a8a88 tps65912_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x991484c4 of_property_count_strings +EXPORT_SYMBOL_GPL vmlinux 0x9924c496 __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x992dc67a ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x995cc7aa sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x9971e987 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0x999063f2 regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x999815a1 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0x99a433d1 ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x99acb166 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x99c5f6c7 regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x99ce509a ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x99fbe45a rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a156caa pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x9a49d937 __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x9a731506 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x9a89dbf7 lpddr2_jedec_min_tck +EXPORT_SYMBOL_GPL vmlinux 0x9aa4e981 of_extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0x9aad6540 klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x9ab046c7 regmap_read +EXPORT_SYMBOL_GPL vmlinux 0x9aca444b get_monotonic_boottime +EXPORT_SYMBOL_GPL vmlinux 0x9acc5876 crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0x9ad08306 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0x9ad0c5fc dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9b629584 mpic_subsys +EXPORT_SYMBOL_GPL vmlinux 0x9b6876aa led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9b737481 tpm_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0x9b863bd9 usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x9b929dde kvm_clear_guest +EXPORT_SYMBOL_GPL vmlinux 0x9b9e6883 bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0x9bb20ef3 __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x9bb4580d usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x9bccf442 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x9be421f2 alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9c0c14f8 pci_pri_enabled +EXPORT_SYMBOL_GPL vmlinux 0x9c439498 inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9c5b2297 tpm_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x9c69f819 sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0x9c72df3b blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x9c7944d1 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x9c8503c0 rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0x9cba15b3 pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x9d030b99 stop_machine +EXPORT_SYMBOL_GPL vmlinux 0x9d045bf8 kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL vmlinux 0x9d138533 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x9d17fab6 bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0x9d5b4c59 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x9d8331c0 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x9d90996b bio_clone_mddev +EXPORT_SYMBOL_GPL vmlinux 0x9dbdd5cc ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0x9dc1d338 ftrace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x9dce1c79 isa_bridge_pcidev +EXPORT_SYMBOL_GPL vmlinux 0x9dcf2fe7 sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x9dfa4483 wm8400_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x9dfdf722 gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0x9dff88c4 sk_unattached_filter_create +EXPORT_SYMBOL_GPL vmlinux 0x9e05a374 devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9e20c6ee devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x9e461116 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x9e4db295 __class_register +EXPORT_SYMBOL_GPL vmlinux 0x9e64fde6 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x9ece3aa8 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9eff42d0 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0x9f02be43 kvm_release_page_clean +EXPORT_SYMBOL_GPL vmlinux 0x9f0664bf dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0x9f23c3d5 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x9f2cc59a power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0x9f3232d5 tps65912_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x9f352507 cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9f3f98e1 of_get_nand_on_flash_bbt +EXPORT_SYMBOL_GPL vmlinux 0x9f4d31e7 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0x9f505bd2 pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x9f557432 regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0x9f7fc740 device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x9f859933 init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x9fba9272 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fe44894 __rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9fedb268 __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0xa001c915 class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xa01d188e power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0xa0208e02 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0xa0284e1d ata_scsi_simulate +EXPORT_SYMBOL_GPL vmlinux 0xa033881c device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0xa06d0821 i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0xa07057a2 device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xa0724f68 kvmppc_prepare_to_enter +EXPORT_SYMBOL_GPL vmlinux 0xa07533ba ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xa0771baf uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0xa08bf219 seq_release_net +EXPORT_SYMBOL_GPL vmlinux 0xa0a27fff pci_address_to_pio +EXPORT_SYMBOL_GPL vmlinux 0xa0a5dd77 ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0xa0a6a947 sysfs_get_dirent_ns +EXPORT_SYMBOL_GPL vmlinux 0xa0e97f53 sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0xa12d929d desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xa151ef96 cgroup_taskset_cur_css +EXPORT_SYMBOL_GPL vmlinux 0xa18c1f6c balloon_mapping_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa191c3ea stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0xa1bd7822 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xa1cf86d2 pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0xa1d46d80 dma_buf_export_named +EXPORT_SYMBOL_GPL vmlinux 0xa20ac65a of_get_regulator_init_data +EXPORT_SYMBOL_GPL vmlinux 0xa20de278 page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0xa2195b34 usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xa2215755 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa237e1e3 init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0xa2417288 elv_register +EXPORT_SYMBOL_GPL vmlinux 0xa25d09a9 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xa25d5bf6 usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa26f54c7 clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0xa28aaf29 rh_create +EXPORT_SYMBOL_GPL vmlinux 0xa2a1204b css_next_descendant_post +EXPORT_SYMBOL_GPL vmlinux 0xa2a470c1 __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xa2be108e debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0xa2c5f11c transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0xa2ce34da irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xa2d010ad fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0xa2dd3fe6 pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0xa308337d dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0xa30f5129 eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0xa3153e18 pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0xa3285a65 rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0xa3336f32 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0xa357d56e ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xa3708035 cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a2d9af walk_system_ram_range +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3bd8206 kvmppc_kvm_pv +EXPORT_SYMBOL_GPL vmlinux 0xa3dc36af __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0xa3e7c113 ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0xa3e81a58 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0xa3fbda47 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xa451daf6 pwm_request +EXPORT_SYMBOL_GPL vmlinux 0xa460c523 ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0xa4726eca need_load_eval +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa4a73536 usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xa4c74617 set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0xa4d28cc4 rtc_irq_set_state +EXPORT_SYMBOL_GPL vmlinux 0xa4d9ca40 bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0xa4e3b8e0 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xa4ea04ee of_property_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0xa51765f0 usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0xa52dd4e1 ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xa578e57b pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0xa57f84e0 raw_seq_open +EXPORT_SYMBOL_GPL vmlinux 0xa57f84f7 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0xa5aa9d46 usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0xa5b00659 ppc_proc_freq +EXPORT_SYMBOL_GPL vmlinux 0xa5e65c08 skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa5efe460 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xa61b1477 tracepoint_iter_start +EXPORT_SYMBOL_GPL vmlinux 0xa625110d kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0xa651e7a0 ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0xa68cd5dd devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0xa6a0a273 max77693_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xa6a49d62 subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xa6ad2430 regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0xa6ce8a74 rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0xa6d7a820 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa6eab28e relay_reset +EXPORT_SYMBOL_GPL vmlinux 0xa70e7f10 cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0xa7150572 __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa724257f init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0xa75312bc call_rcu_sched +EXPORT_SYMBOL_GPL vmlinux 0xa75811d0 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xa7a7d267 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0xa7bf5ece regmap_update_bits_async +EXPORT_SYMBOL_GPL vmlinux 0xa7dbebc9 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0xa7f92105 add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0xa805e14d tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0xa83a7c44 regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa8627eb1 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0xa8aafc8f usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xa8b1a1c9 clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0xa8c17a76 of_reset_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xa8e9838d devm_rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa8e9e071 register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0xa8f9045c regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0xa90ba6f9 tcp_is_cwnd_limited +EXPORT_SYMBOL_GPL vmlinux 0xa90d808c sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0xa9159b4e crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xa94cdbdd debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0xa957e51b shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0xa966dc35 tcp_reno_min_cwnd +EXPORT_SYMBOL_GPL vmlinux 0xa9790478 kobj_completion_release +EXPORT_SYMBOL_GPL vmlinux 0xa980af16 RSA_public_key_algorithm +EXPORT_SYMBOL_GPL vmlinux 0xa98be0c8 sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xa98c6cea sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0xa9aef2e1 gfn_to_hva_memslot +EXPORT_SYMBOL_GPL vmlinux 0xa9cc44cc extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9f1f767 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0xa9f91f45 tcp_done +EXPORT_SYMBOL_GPL vmlinux 0xa9fb74a2 of_device_is_stdout_path +EXPORT_SYMBOL_GPL vmlinux 0xaa17a2e2 rh_alloc_align +EXPORT_SYMBOL_GPL vmlinux 0xaa1ecd4f extcon_register_interest +EXPORT_SYMBOL_GPL vmlinux 0xaa2a72bf __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0xaa3abfb7 regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0xaa45aec1 kvmppc_emulate_instruction +EXPORT_SYMBOL_GPL vmlinux 0xaa4d0ba2 kallsyms_on_each_symbol +EXPORT_SYMBOL_GPL vmlinux 0xaa687b8e da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0xaa91941b cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0xaa95ce3d wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0xaaa0badc __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xab016449 usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xab041ba8 kvm_vcpu_init +EXPORT_SYMBOL_GPL vmlinux 0xab14e2ec fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0xab327ab7 kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL vmlinux 0xab59993b tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0xab59d373 kvmppc_free_lpid +EXPORT_SYMBOL_GPL vmlinux 0xab6babaf pm_qos_request +EXPORT_SYMBOL_GPL vmlinux 0xab857f70 usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xab86b4a3 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xab87b8b4 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0xab8f77c0 regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xaba9ae12 usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0xabaef3d6 user_match +EXPORT_SYMBOL_GPL vmlinux 0xabbf4991 tpm_show_caps +EXPORT_SYMBOL_GPL vmlinux 0xabd67d6b devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0xac58c1c2 crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0xac5c578e max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xac6bf161 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0xac900e9c tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0xaca0e473 ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0xacaa302e swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0xacbc0296 crypto_init_spawn +EXPORT_SYMBOL_GPL vmlinux 0xace322d7 usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xace5c0fc usb_bus_list +EXPORT_SYMBOL_GPL vmlinux 0xace8bc86 ping_proc_register +EXPORT_SYMBOL_GPL vmlinux 0xace8c93d kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xacfe8052 crypto_givcipher_type +EXPORT_SYMBOL_GPL vmlinux 0xad00b5a7 usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0xad2b1631 pwm_set_polarity +EXPORT_SYMBOL_GPL vmlinux 0xad35d4a0 usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0xad376749 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0xad3a8b57 scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0xad53e7cc class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0xad5e46f9 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0xad5eca88 arizona_of_get_type +EXPORT_SYMBOL_GPL vmlinux 0xad767452 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0xad91be44 md_stop +EXPORT_SYMBOL_GPL vmlinux 0xad946432 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xad9a875b rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0xada4ae48 pwm_enable +EXPORT_SYMBOL_GPL vmlinux 0xadc785ec kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0xaddc7645 sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xadf6aa4d tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xae2554c4 of_clk_src_onecell_get +EXPORT_SYMBOL_GPL vmlinux 0xae4e55b7 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae81048c pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xaea2339b inet_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0xaec5305a regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xaec8417c spi_unregister_master +EXPORT_SYMBOL_GPL vmlinux 0xaeeaf007 sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0xaf1f43b5 pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0xaf387449 smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xaf6bed73 vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0xafc550a5 devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xafe4d2ef irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xb027c54e of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0xb0385190 regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0xb05f4537 dm_set_device_limits +EXPORT_SYMBOL_GPL vmlinux 0xb0863eba usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0xb0913148 btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0xb0a0405f mdio_mux_init +EXPORT_SYMBOL_GPL vmlinux 0xb0a92037 sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0db2c96 crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0xb1092c53 thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0xb10d55bc cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0xb12c7a86 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0xb140d14c ring_buffer_read +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb1689eae subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xb16abc74 crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0xb1a7e3f6 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0xb1acbcce rcu_barrier_sched +EXPORT_SYMBOL_GPL vmlinux 0xb1b62d4a fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0xb1b6d07c irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0xb1bcd9e7 crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xb1c0c1c2 async_schedule_domain +EXPORT_SYMBOL_GPL vmlinux 0xb1d854a1 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb2256567 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0xb253421e usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0xb258a4cc rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0xb293c758 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0xb2a293a7 replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0xb2bf09e5 blkg_prfill_stat +EXPORT_SYMBOL_GPL vmlinux 0xb2c5621c pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0xb2c5a034 inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xb2dda807 ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0xb2fea11a rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0xb312dc76 __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xb316d24c pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xb325f3be led_trigger_store +EXPORT_SYMBOL_GPL vmlinux 0xb341c80a __clocksource_updatefreq_scale +EXPORT_SYMBOL_GPL vmlinux 0xb383c4e3 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xb3c39467 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0xb426ac5e ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0xb44d24ae sock_update_netprioidx +EXPORT_SYMBOL_GPL vmlinux 0xb454df00 usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0xb467212d debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0xb47843c8 cpu_add_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0xb4809a8b irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xb4a963fc __inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4d53d7d __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xb4de209a elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4f9404b rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0xb4fd071c usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0xb5052745 sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb5229e89 rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xb5341dff pwm_config +EXPORT_SYMBOL_GPL vmlinux 0xb53620d1 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0xb54605dd spi_master_resume +EXPORT_SYMBOL_GPL vmlinux 0xb54896a1 tpm_read +EXPORT_SYMBOL_GPL vmlinux 0xb58d1eb0 class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0xb58dcfa2 synchronize_sched_expedited +EXPORT_SYMBOL_GPL vmlinux 0xb5a0e11e lpddr2_jedec_addressing_table +EXPORT_SYMBOL_GPL vmlinux 0xb5aa10af atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb5bf3d77 rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0xb5c8edf4 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0xb5cb8145 hrtimer_get_res +EXPORT_SYMBOL_GPL vmlinux 0xb5e896fb tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0xb5f17edf perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb5f4ad2a gpio_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xb5fb9a45 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xb5feab3b yield_to +EXPORT_SYMBOL_GPL vmlinux 0xb60b5707 of_i8042_aux_irq +EXPORT_SYMBOL_GPL vmlinux 0xb60d3d0d __class_create +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb63b9014 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0xb65e6299 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0xb67b2219 cm_suspend_again +EXPORT_SYMBOL_GPL vmlinux 0xb67c64fd __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0xb67cf666 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0xb68e9a66 bmp085_probe +EXPORT_SYMBOL_GPL vmlinux 0xb69dd54b fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0xb6aeb661 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xb6b001bd lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0xb6b259cf bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xb6c635af wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb6d3ad97 fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0xb6db5cca tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0xb6eb9da9 usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0xb6f55cd2 crypto_aead_type +EXPORT_SYMBOL_GPL vmlinux 0xb74c9aff rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0xb7553f04 ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0xb76aa47f get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0xb770aa6d securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0xb786e77d percpu_ida_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb7879dd9 key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xb790d50b da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xb79c21c6 fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0xb79fb656 register_jprobe +EXPORT_SYMBOL_GPL vmlinux 0xb7d00dad dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0xb7dd8555 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xb7ec1fad tpm_show_enabled +EXPORT_SYMBOL_GPL vmlinux 0xb801ef37 blkg_lookup_create +EXPORT_SYMBOL_GPL vmlinux 0xb809b9ee md_ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xb82ee114 blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0xb87e21cc devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb89582f5 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0xb8ad5a98 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xb8f98bd7 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0xb903674c scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0xb9176155 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0xb988328e __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0xb9a5e086 disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9cfadba tcp_peer_is_proven +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9d659f7 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0xb9da2997 snmp_fold_field64 +EXPORT_SYMBOL_GPL vmlinux 0xb9dcdfbd net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0xb9f006dc cpufreq_notify_transition +EXPORT_SYMBOL_GPL vmlinux 0xba0f8d40 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0xba1bd6ee pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0xba4688f7 bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0xbac2e454 regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xbac64cb0 tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0xbac8105a device_store_int +EXPORT_SYMBOL_GPL vmlinux 0xbacad5a3 class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xbaeb88e9 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0xbb038ce4 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb18cc18 devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xbb3d390b sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0xbb60caa4 wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0xbb885753 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0xbba87b64 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0xbbfe4d5e put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xbc3591a2 device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0xbc5e2b55 __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0xbc70f00a con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0xbc8098bf pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0xbc96de60 kvm_release_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xbcac6160 pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbcb07b65 cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0xbcd0ad82 __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0xbcf66979 mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0xbd2ddfa3 fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0xbd3aff94 __mmu_notifier_invalidate_range_start +EXPORT_SYMBOL_GPL vmlinux 0xbd3d0084 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0xbd5cb8b9 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0xbd61d3d8 kvm_is_visible_gfn +EXPORT_SYMBOL_GPL vmlinux 0xbdd295f0 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xbdd2f42a rcu_bh_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0xbdd85534 dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0xbdf0ff3f da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0xbdf716f7 fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0xbdf75be7 tcp_init_congestion_ops +EXPORT_SYMBOL_GPL vmlinux 0xbe067d3f ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0xbe1887e4 ata_unpack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xbe473e6d balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0xbe8ada00 devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbeb3b6ad ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0xbebaa0a6 of_pci_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0xbec4df5a regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0xbecd1fd7 arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xbef01bd8 xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0xbef75efb regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf1cc04b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0xbf39f61d ping_bind +EXPORT_SYMBOL_GPL vmlinux 0xbf718a1d rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0xbf8d4a3b tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0xbf9e50cc i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xbfb65bf9 gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0xbfcb8658 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xbfcf7efc get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0xbfe30d9a ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0xbfe48e26 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0xbff8c633 class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xbffd6251 tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0xc00131cf visitor64 +EXPORT_SYMBOL_GPL vmlinux 0xc0061f30 xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0xc012ffdd adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc0198cc0 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0xc021f0ff ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0xc02bec3c usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xc02ea33d rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0xc061367e mpic_msgr_get +EXPORT_SYMBOL_GPL vmlinux 0xc065a455 cpu_core_index_of_thread +EXPORT_SYMBOL_GPL vmlinux 0xc0661d30 led_classdev_register +EXPORT_SYMBOL_GPL vmlinux 0xc07f80d6 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0xc083c23f tpm_store_cancel +EXPORT_SYMBOL_GPL vmlinux 0xc08647ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc08ef11d device_create +EXPORT_SYMBOL_GPL vmlinux 0xc0bf6ead timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xc0d01bc0 percpu_ref_cancel_init +EXPORT_SYMBOL_GPL vmlinux 0xc0d26387 kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc0d7348e scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0xc0e60e8a ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xc0e75cec visitor128 +EXPORT_SYMBOL_GPL vmlinux 0xc0ee3810 cpufreq_frequency_table_cpuinfo +EXPORT_SYMBOL_GPL vmlinux 0xc106d52e ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0xc11b45c6 gpiod_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xc11bd00f tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc1349bac ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc18578ed process_srcu +EXPORT_SYMBOL_GPL vmlinux 0xc18ac73a sdhci_pci_o2_probe_slot +EXPORT_SYMBOL_GPL vmlinux 0xc192e4ba spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0xc1bf40ae debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0xc1ca4909 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xc1ca914b call_srcu +EXPORT_SYMBOL_GPL vmlinux 0xc1fa519e usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xc1fd546f usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0xc208e5c2 rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc26c707b hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc2a91dbf rtc_set_mmss +EXPORT_SYMBOL_GPL vmlinux 0xc2ad9bf2 pwm_free +EXPORT_SYMBOL_GPL vmlinux 0xc2bea5d3 blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0xc2c25342 usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xc2dbaa35 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0xc2e49614 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0xc2fbaf3d fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0xc306fd71 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0xc311eaf7 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0xc31daa1f proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc3486379 tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xc34efe27 snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0xc358d50b ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0xc35b6887 usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xc3665de5 PageHuge +EXPORT_SYMBOL_GPL vmlinux 0xc37226a5 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xc38dfa71 swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0xc3beb4a1 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0xc3da4a5a sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0xc417a587 device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xc423cf48 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc454fc7b twl_get_type +EXPORT_SYMBOL_GPL vmlinux 0xc45d298a usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0xc46d877e schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0xc471c67a twl4030_audio_disable_resource +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc491325d sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0xc4a591f9 devm_usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xc4b7076c irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0xc4bc9150 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xc4db9318 eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0xc4f9b6fd debugfs_remove_recursive +EXPORT_SYMBOL_GPL vmlinux 0xc4f9bdea kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xc51c5093 preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc5302a05 napi_by_id +EXPORT_SYMBOL_GPL vmlinux 0xc5317748 ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0xc538d90d sysfs_notify_dirent +EXPORT_SYMBOL_GPL vmlinux 0xc54c631f skb_segment +EXPORT_SYMBOL_GPL vmlinux 0xc54f6539 kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL vmlinux 0xc55533b8 pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc57dd4e8 __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xc5a7f8c7 sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xc5c4f8d7 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0xc5ce4bc7 console_drivers +EXPORT_SYMBOL_GPL vmlinux 0xc5d37180 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0xc606cd3c boot_cpuid +EXPORT_SYMBOL_GPL vmlinux 0xc60f75ec __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xc614d6f8 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc63a1109 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc65d3eed ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc6710bed handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0xc68aa090 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xc68aa252 __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xc690866c irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc69d38cd spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0xc6a83d09 dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0xc70e4b59 kvmppc_claim_lpid +EXPORT_SYMBOL_GPL vmlinux 0xc71881a8 ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0xc72e1233 __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xc76adc08 usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0xc77b510b regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xc78143d1 trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7c6391c mpi_set_buffer +EXPORT_SYMBOL_GPL vmlinux 0xc7da17be timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0xc7e39bca ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc7ec237d __init_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0xc7ee5734 regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc7fbc35b device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xc809d106 netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0xc813f0d5 usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0xc817c1f8 kvmppc_emulate_mmio +EXPORT_SYMBOL_GPL vmlinux 0xc817ec16 serial8250_rx_dma +EXPORT_SYMBOL_GPL vmlinux 0xc82d3a4c debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0xc832fc6b crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0xc84f8899 devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xc86d8fdc usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0xc87e02bf usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0xc88058ce input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc88d9836 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0xc891f4e6 usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xc8aa70c3 regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xc8add232 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0xc8bcc832 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xc8f215b5 subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc9163e8a percpu_ida_for_each_free +EXPORT_SYMBOL_GPL vmlinux 0xc94d5fad kvm_read_guest +EXPORT_SYMBOL_GPL vmlinux 0xc94f1863 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc97d1140 cpufreq_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0xc97e9bff register_jprobes +EXPORT_SYMBOL_GPL vmlinux 0xc9cfa97f of_pci_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0xc9dee8c5 ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xca274d21 usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0xca35b98f usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xca53c1df usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0xca6a22fb regmap_field_write +EXPORT_SYMBOL_GPL vmlinux 0xca767be9 pwm_can_sleep +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca85d8cf tracepoint_probe_update_all +EXPORT_SYMBOL_GPL vmlinux 0xca946187 of_clk_add_provider +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcac318d7 dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0xcacec275 crypto_lookup_aead +EXPORT_SYMBOL_GPL vmlinux 0xcadcd0fb driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0xcaeaadd2 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0xcb14dc03 spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb469d2b ddebug_add_module +EXPORT_SYMBOL_GPL vmlinux 0xcb591188 ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0xcb9b162e clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0xcbc06fb1 rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0xcbd0c1c3 skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0xcbd13148 of_pci_msi_chip_remove +EXPORT_SYMBOL_GPL vmlinux 0xcbd5ed06 page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0xcbee20b2 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0xcc10efec watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0xcc134542 regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0xcc1f1c3d inet_twdr_hangman +EXPORT_SYMBOL_GPL vmlinux 0xcc338415 find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xcc44961f kvmppc_alloc_lpid +EXPORT_SYMBOL_GPL vmlinux 0xcc507647 ata_eh_qc_retry +EXPORT_SYMBOL_GPL vmlinux 0xcc53f78e crypto_alloc_instance +EXPORT_SYMBOL_GPL vmlinux 0xcc550bce save_stack_trace_tsk +EXPORT_SYMBOL_GPL vmlinux 0xcc85fcb6 async_schedule +EXPORT_SYMBOL_GPL vmlinux 0xcc8c4990 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xcc97aadd ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xccc5297d pwm_put +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xcd1a3138 sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0xcd40e912 regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0xcd526c7e tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0xcd897ca4 pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcdad6c3e tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xcdb01877 ktime_add_ns +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcde9e898 crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0xce0b9b59 max77693_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xce46e140 ktime_get_ts +EXPORT_SYMBOL_GPL vmlinux 0xce51fdd8 sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0xce6a9d9a trace_current_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce839abd sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0xce9737fe dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0xcea9708e sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0xcebed60d serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0xcecd73c6 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0xced020b2 __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcf0b76eb find_linux_pte_or_hugepte +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf8e19e8 inet_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0xcf91b289 da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0xcfc68341 synchronize_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0xcfc90d29 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0xcfcc415d ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xcfd9a317 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0xcfe1b8da sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0xcff93b2a single_release_net +EXPORT_SYMBOL_GPL vmlinux 0xcffc8fcf class_find_device +EXPORT_SYMBOL_GPL vmlinux 0xd018db22 pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0xd03a858f raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0xd03b07ae reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xd03c7700 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0xd046d3b0 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xd04fab88 kvm_read_guest_page +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd06c64a8 transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xd09eeb08 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0cc5799 ahash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0xd0f4c7a9 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xd11b71b5 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0xd12ebd56 sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0xd13d3eb9 __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0xd14bc4d9 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xd15f836d ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd16712f3 crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xd17a8ab4 blk_rq_check_limits +EXPORT_SYMBOL_GPL vmlinux 0xd1b2db37 tracepoint_probe_register_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xd1c84e4b cgroup_is_descendant +EXPORT_SYMBOL_GPL vmlinux 0xd1dac335 class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xd1f22b71 sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0xd1f34b90 usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0xd1fedce0 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd1fefa81 ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd2151c09 ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd258217d clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0xd265fc6a list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0xd271e258 usb_bus_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd2866441 __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0xd29f8d64 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0xd2a2b6e3 rtc_irq_register +EXPORT_SYMBOL_GPL vmlinux 0xd2a75998 iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0xd2aaeb4e kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0xd2ac2c17 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0xd2af0aba usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0xd2b57b0a usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0xd2c45ea4 of_pci_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0xd302097c dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0xd32fe193 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xd3a4dc8f tcp_fetch_timewait_stamp +EXPORT_SYMBOL_GPL vmlinux 0xd3df9a6d register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0xd3ec2592 cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0xd3f13e1d hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4075c2b ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0xd4178527 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd489610e platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0xd48c7be3 pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xd490b58f sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4cad45e clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xd4f03155 __mmu_notifier_invalidate_range_end +EXPORT_SYMBOL_GPL vmlinux 0xd4f2de4a skcipher_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0xd4facf94 bsg_request_fn +EXPORT_SYMBOL_GPL vmlinux 0xd513ddbf timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0xd5432e6e __scsi_get_command +EXPORT_SYMBOL_GPL vmlinux 0xd57d206a mddev_init +EXPORT_SYMBOL_GPL vmlinux 0xd582227a leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xd58723cb of_pci_msi_chip_add +EXPORT_SYMBOL_GPL vmlinux 0xd5b4824b devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xd5bd7dac ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0xd6009e3b bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xd649bca3 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xd65adadb scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd67fe041 __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xd6c2e04b __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0xd6e347fd digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0xd6fa4589 nl_table +EXPORT_SYMBOL_GPL vmlinux 0xd6feefa5 agp_num_entries +EXPORT_SYMBOL_GPL vmlinux 0xd71550fb devres_add +EXPORT_SYMBOL_GPL vmlinux 0xd72f6972 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd77c0bc8 klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xd7b42508 aead_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0xd7c90aee rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0xd7e8c6d3 regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xd7edf2d3 file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0xd7fbedea regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xd81de62c ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xd820c283 eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xd84a41cd ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0xd8525ea7 fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0xd87601cc ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd88804ce wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xd88aa15b dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xd89285ab securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xd895ed7e debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0xd8a01cf1 tpm_open +EXPORT_SYMBOL_GPL vmlinux 0xd8afe941 reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xd8d2797d pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0xd9163011 crypto_attr_alg2 +EXPORT_SYMBOL_GPL vmlinux 0xd91b11e9 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0xd92bde70 regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0xd9418c16 __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0xd942d353 ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0xd944d8f9 ktime_get_boottime +EXPORT_SYMBOL_GPL vmlinux 0xd99c0657 get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0xd9a34035 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0xd9d187e9 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0xd9eaad53 rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xd9ecb670 ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xda0a4d22 mpic_msgr_enable +EXPORT_SYMBOL_GPL vmlinux 0xda27d230 inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xda35414e register_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0xda44cb37 setup_charger_manager +EXPORT_SYMBOL_GPL vmlinux 0xda4610e1 pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0xda6cb550 ata_sas_port_async_suspend +EXPORT_SYMBOL_GPL vmlinux 0xda814e22 sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0xda8290a8 rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xda8cb2e5 threads_core_mask +EXPORT_SYMBOL_GPL vmlinux 0xda982c77 css_next_child +EXPORT_SYMBOL_GPL vmlinux 0xdac11bae of_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xdac23178 blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0xdadabe4b spi_setup +EXPORT_SYMBOL_GPL vmlinux 0xdadb4bae ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdb047340 usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdb04cacc tracepoint_probe_unregister_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xdb230aa5 relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0xdb31e9d6 dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0xdb35e8a1 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0xdb61dcc8 tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0xdb6ce652 pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0xdb6de9a4 sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdba4ad93 static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0xdba5a2ef md_new_event +EXPORT_SYMBOL_GPL vmlinux 0xdba80fc1 of_fdt_unflatten_tree +EXPORT_SYMBOL_GPL vmlinux 0xdbae829b wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0xdbbce830 ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xdbe9ec87 regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc09c785 pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xdc1e15f1 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdcabdb80 inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xdd2efc0f ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd3e0014 __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xdd4836cd kvm_vcpu_cache +EXPORT_SYMBOL_GPL vmlinux 0xdd66a920 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0xdd66ace8 fb_ddc_read +EXPORT_SYMBOL_GPL vmlinux 0xdd729424 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0xdd9fc4ef palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0xddc4a0fe unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xddd58dc0 ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0xddfdb0c6 srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0xde02d147 screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0xde425ad7 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0xde49217c crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xde63b337 rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xde71b532 cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xde7bbab3 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xdeb6ea30 pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0xdee3a38d blk_queue_bio +EXPORT_SYMBOL_GPL vmlinux 0xdf07b198 blk_unprep_request +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf52db69 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0xdf977e77 driver_register +EXPORT_SYMBOL_GPL vmlinux 0xdfacd845 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xe007de41 kallsyms_lookup_name +EXPORT_SYMBOL_GPL vmlinux 0xe016616c ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0xe02eb6d0 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0xe036b3e9 mpic_msgr_put +EXPORT_SYMBOL_GPL vmlinux 0xe0428ac2 srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0xe045b6a9 fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0xe052cc41 irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xe06345ee usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0xe065113d irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0xe07e08db mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0xe089cfcc agp_memory_reserved +EXPORT_SYMBOL_GPL vmlinux 0xe0956627 rtc_irq_set_freq +EXPORT_SYMBOL_GPL vmlinux 0xe0b05f9c __get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0xe0c31b0b wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xe0d778a3 rq_flush_dcache_pages +EXPORT_SYMBOL_GPL vmlinux 0xe0ea47d7 xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0xe11d069b tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xe1419c20 uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe19eb1c4 percpu_ida_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe1a4f2cb blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1c32794 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xe1f0f004 input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0xe1ff034c uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0xe21cdfda usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xe224c1ef pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xe230de71 usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xe26e7b97 crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0xe28f646e regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xe2a32d40 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0xe2c1f528 fuse_get_req +EXPORT_SYMBOL_GPL vmlinux 0xe2df10f6 crypto_unregister_pcomp +EXPORT_SYMBOL_GPL vmlinux 0xe2f40497 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0xe2fa8d9f simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0xe30079f7 flush_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe30d7b62 find_module +EXPORT_SYMBOL_GPL vmlinux 0xe30fac88 ktime_get_monotonic_offset +EXPORT_SYMBOL_GPL vmlinux 0xe316b343 gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0xe33bd84d tpm_show_timeouts +EXPORT_SYMBOL_GPL vmlinux 0xe384a102 usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0xe3929bdc transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0xe39ebe8b usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0xe3bb04f8 rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0xe3c7620b subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe3da4354 crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xe3dd1369 pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xe3eca2a1 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0xe40f9d2b gfn_to_pfn_async +EXPORT_SYMBOL_GPL vmlinux 0xe42a283c watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xe430a4c8 ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xe46df4bf inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xe4902a6b usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0xe4b225fc bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0xe4c031f8 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xe4c4b28f gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xe4d113e1 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0xe4dc2413 debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0xe4ed3544 rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0xe5082fdc ping_hash +EXPORT_SYMBOL_GPL vmlinux 0xe52ae762 __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xe5482f2f add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xe56018ee inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0xe56cea8c ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58fb452 aer_irq +EXPORT_SYMBOL_GPL vmlinux 0xe59422fe pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0xe5abe8f1 __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0xe5deae5f ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe643b9ce spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xe645104a platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0xe651f76e selinux_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe655dd5b rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0xe6608965 inet6_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0xe6754f5d pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0xe6795d09 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0xe685424c nf_queue_entry_release_refs +EXPORT_SYMBOL_GPL vmlinux 0xe6a3b048 cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xe6b4e479 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0xe6bc6030 gfn_to_pfn +EXPORT_SYMBOL_GPL vmlinux 0xe6c68334 ddebug_remove_module +EXPORT_SYMBOL_GPL vmlinux 0xe6d26d30 dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0xe6dd32ef page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0xe6e1c5fe uuid_be_gen +EXPORT_SYMBOL_GPL vmlinux 0xe6f2b6f7 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xe70886d1 input_class +EXPORT_SYMBOL_GPL vmlinux 0xe7145917 usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0xe731592b pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe76a6547 debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xe79a17d3 kvmppc_handle_store +EXPORT_SYMBOL_GPL vmlinux 0xe79e6a4e spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0xe7a57359 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0xe7bf74ac sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0xe7c610b3 tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xe7df35ba input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe8188cfd tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe83cd4f9 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0xe83cd519 xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0xe8400441 of_property_read_string_index +EXPORT_SYMBOL_GPL vmlinux 0xe8407ea7 clk_register_mux +EXPORT_SYMBOL_GPL vmlinux 0xe85c55e7 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe85cedb5 __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0xe85eb97b driver_find +EXPORT_SYMBOL_GPL vmlinux 0xe85eea79 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0xe862af5e posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe86a17fd regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0xe872f15c nf_register_afinfo +EXPORT_SYMBOL_GPL vmlinux 0xe876131f __blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0xe8b5c6cb get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0xe8d84a7d relay_flush +EXPORT_SYMBOL_GPL vmlinux 0xe8f9dd18 rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0xe938a4cc driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe9452b91 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0xe9660485 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xe96ba147 sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xe97e635b rtc_irq_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe98065f8 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0xe9960473 agp_remove_bridge +EXPORT_SYMBOL_GPL vmlinux 0xe9d60704 ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xe9f736da unregister_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0xe9fb2fc6 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0xe9fccd3f usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea173e4e dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0xea418e0f atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0xea47b708 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0xea611bdd usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0xea680d35 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0xea6aed60 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0xea875dad clockevents_unbind +EXPORT_SYMBOL_GPL vmlinux 0xeac85eeb usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0xeafa9a16 sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xeb1c3628 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xeb3a2f3a __get_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xeb4d3dac platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xeb8ae736 klist_init +EXPORT_SYMBOL_GPL vmlinux 0xeb98215e cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xeb9abbee ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xebd3b1c6 clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0xebec57c4 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xebf76ccb fuse_conn_kill +EXPORT_SYMBOL_GPL vmlinux 0xec1b043e regulator_suspend_prepare +EXPORT_SYMBOL_GPL vmlinux 0xec25f967 klist_del +EXPORT_SYMBOL_GPL vmlinux 0xec78b46f posix_timers_register_clock +EXPORT_SYMBOL_GPL vmlinux 0xed057938 vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0xed25d9d5 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xed298a02 usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xed2aac8f use_mm +EXPORT_SYMBOL_GPL vmlinux 0xed2c0557 debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0xed2c869c serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0xed3aae89 usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0xed43d526 sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0xed65b7c6 rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0xed83b7c9 rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0xed949426 ata_eh_thaw_port +EXPORT_SYMBOL_GPL vmlinux 0xedbf3cbb of_get_dma_window +EXPORT_SYMBOL_GPL vmlinux 0xedc2994d ktime_get_real +EXPORT_SYMBOL_GPL vmlinux 0xedd49930 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xee4c94a5 kvmppc_pr_ops +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee958aa6 cpu_add_dev_attr_group +EXPORT_SYMBOL_GPL vmlinux 0xeeb6f944 __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0xeed00ead fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0xeee52293 regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xef3411ce srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xef409b74 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0xef409df4 hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0xef422dca alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xefb3ad1e crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0xefcdfdd2 set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0xeff6d539 ahash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0xf03682b8 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0xf049c8db inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xf0be1009 inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0xf0c9b7fb ping_seq_fops +EXPORT_SYMBOL_GPL vmlinux 0xf0da9c15 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0xf1002313 swiotlb_tbl_unmap_single +EXPORT_SYMBOL_GPL vmlinux 0xf11200df irq_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0xf1245b5d regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xf126d847 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xf134a677 rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xf158f170 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0xf17ac976 __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0xf1840474 dma_buf_kmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf187f426 usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0xf1884b7d ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xf1a62b6f of_i8042_kbd_irq +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf2389816 arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xf239c575 blk_queue_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xf24204d6 mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0xf2442985 usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xf26c1aec sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0xf27977e2 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0xf29d525a ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0xf29edebf usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0xf2d26166 __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0xf2d26458 dm_underlying_device_busy +EXPORT_SYMBOL_GPL vmlinux 0xf2e49b6e regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xf2f077cc pkey_id_type_name +EXPORT_SYMBOL_GPL vmlinux 0xf2fca922 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0xf3012f6c rh_free +EXPORT_SYMBOL_GPL vmlinux 0xf30fda27 lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0xf318b48c cpufreq_frequency_table_target +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf32e860a gpio_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf36b3233 rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xf3743f7b devm_spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0xf3a8ce3b regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3e2b85b ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xf404cad9 spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xf46c38ab ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0xf484abf0 cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf494f618 mmc_regulator_get_ocrmask +EXPORT_SYMBOL_GPL vmlinux 0xf4954775 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xf499fdb2 rcu_barrier_bh +EXPORT_SYMBOL_GPL vmlinux 0xf49fe611 scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xf4ba1b89 tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0xf4da3546 kvmppc_init_lpid +EXPORT_SYMBOL_GPL vmlinux 0xf4fc2d6c __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf522f5ee pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf54c8633 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5bcf1b2 __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0xf5bf4b87 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0xf5c100de ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0xf5e7f053 rh_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf5fb0cd4 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xf5fef4e3 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf60154a4 extcon_update_state +EXPORT_SYMBOL_GPL vmlinux 0xf60f7f57 tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0xf61f66ef kvm_vcpu_block +EXPORT_SYMBOL_GPL vmlinux 0xf62289a0 ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0xf627e653 mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xf677dbba ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0xf695d06a __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0xf698bd56 security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0xf6e1489d pci_msi_off +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf72a28a0 class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf7565415 dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0xf75d823e devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf76a390c __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xf77a5c82 sec_reg_update +EXPORT_SYMBOL_GPL vmlinux 0xf791971f inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0xf7b1a066 __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0xf7bd2638 trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0xf7eb2966 arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0xf812395f blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0xf816c866 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xf82034b3 wm8400_block_read +EXPORT_SYMBOL_GPL vmlinux 0xf820dab2 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0xf82f16b3 execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf8409386 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xf84c55e0 usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xf859b6be clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0xf8802492 print_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xf8aa06be sec_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xf8b4fac5 of_irq_parse_pci +EXPORT_SYMBOL_GPL vmlinux 0xf8e35291 regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3d0b kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0xf90c94d8 sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xf920044f ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xf92ce956 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf93ee9dd regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xf963b647 blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0xf976e533 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf978dd28 ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xf98ba300 sdhci_pci_o2_probe +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9a4ebdb blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0xf9af278f sdhci_pci_o2_fujin2_pci_init +EXPORT_SYMBOL_GPL vmlinux 0xf9ca3160 ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xfa012fe7 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0xfa01ba5b dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0xfa155380 sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0xfa1e9ff5 power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa1f4662 scatterwalk_start +EXPORT_SYMBOL_GPL vmlinux 0xfa254811 scsi_internal_device_unblock +EXPORT_SYMBOL_GPL vmlinux 0xfa2d0e2c devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0xfa2f00e5 crypto_rng_type +EXPORT_SYMBOL_GPL vmlinux 0xfa4099d3 tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0xfa5729bc platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0xfa5d008c hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0xfaac135b dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xfab60503 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0xfabdbf33 devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xfac59df3 sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0xfaeb4d28 fat_detach +EXPORT_SYMBOL_GPL vmlinux 0xfaedc7df pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0xfb215c82 da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb3472b5 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0xfb52b77d __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb83db03 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xfbb8bb6a vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0xfbbedefd of_prop_next_string +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc2b780f fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0xfc3d64b3 ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0xfc4f4811 usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0xfc677be1 regmap_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xfcc789d9 sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0xfccb76ca crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0xfcd7bc0b ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0xfcea8f79 power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0xfd4028c6 subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0xfd43f934 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0xfd4d757a regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xfdb0899e blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0xfdb77a5f cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0xfe2e3b62 crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0xfe45428a perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfed57d5a regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xfeda4e1c look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0xfef8a166 trace_current_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xff565afe bus_find_device_by_name +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff6f48ac device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0xff8862d7 rh_get_stats +EXPORT_SYMBOL_GPL vmlinux 0xffad1650 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0xffd10e6a irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xffd72761 invalidate_inode_pages2_range --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/powerpc/powerpc-e500.compiler +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/powerpc/powerpc-e500.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 4.8.2-19ubuntu1) 4.8.2 --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/powerpc/powerpc-e500.modules +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/powerpc/powerpc-e500.modules @@ -0,0 +1,3684 @@ +3c574_cs +3c589_cs +3c59x +3w-9xxx +3w-sas +3w-xxxx +6lowpan +6pack +8021q +8139cp +8139too +8250_dw +8250_pci +8255 +8255_pci +8390 +88pm800 +88pm805 +88pm80x +88pm80x_onkey +88pm860x_battery +88pm860x_bl +88pm860x_charger +88pm860x_onkey +88pm860x-ts +9p +9pnet +9pnet_rdma +9pnet_virtio +a100u2w +a3d +a8293 +aacraid +aat2870_bl +aat2870-regulator +ab3100 +ab3100-otp +ac97_bus +acard-ahci +acecad +acenic +act200l-sir +act_csum +act_gact +act_ipt +actisys-sir +act_mirred +act_nat +act_pedit +act_police +act_simple +act_skbedit +ad2s1200 +ad2s1210 +ad2s90 +ad5064 +ad525x_dpot +ad525x_dpot-i2c +ad525x_dpot-spi +ad5360 +ad5380 +ad5398 +ad5421 +ad5446 +ad5449 +ad5504 +ad5624r_spi +ad5686 +ad5755 +ad5764 +ad5791 +ad5930 +ad5933 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7152 +ad7192 +ad7266 +ad7280a +ad7291 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +ad7476 +ad7606 +ad7746 +ad7780 +ad7791 +ad7793 +ad7816 +ad7877 +ad7879 +ad7879-i2c +ad7879-spi +ad7887 +ad7923 +ad799x +ad8366 +ad9523 +ad9832 +ad9834 +ad9850 +ad9852 +ad9910 +ad9951 +adcxx +addi_apci_035 +addi_apci_1032 +addi_apci_1500 +addi_apci_1516 +addi_apci_1564 +addi_apci_16xx +addi_apci_2032 +addi_apci_2200 +addi_apci_3120 +addi_apci_3501 +addi_apci_3xxx +addi_watchdog +ade7753 +ade7754 +ade7758 +ade7759 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adfs +adi +adis16060 +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16204 +adis16209 +adis16220 +adis16240 +adis16260 +adis16400 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adl_pci9118 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1275 +adm8211 +adm9240 +adp5520_bl +adp5520-keys +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +ads1015 +ads7828 +ads7846 +ads7871 +ad_sigma_delta +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adv7170 +adv7175 +adv7180 +advansys +adv_pci1710 +adv_pci1723 +adv_pci1724 +adv_pci_dio +adxl34x +adxl34x-i2c +adxl34x-spi +adxrs450 +af_802154 +af9013 +af9033 +af_alg +affs +af_key +af_packet_diag +af-rxrpc +ah4 +ah6 +aha152x_cs +ahci +ahci_platform +aic79xx +aic7xxx +aic94xx +aiptek +aircable +airo +airo_cs +ak8975 +algif_hash +algif_skcipher +ali-ircc +alim7101_wdt +alphatrack +altera-ci +altera_jtaguart +altera_ps2 +altera-stapl +altera_uart +alx +ambassador +amc6821 +amd5536udc +amd8111e +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pci224 +amplc_pci230 +amplc_pci263 +ams369fg06 +analog +anatop-regulator +ansi_cprng +anubis +aoe +apbps2 +apds9300 +apds9802als +apds990x +appledisplay +appletalk +appletouch +applicom +ar5523 +ar7part +arc4 +arc_emac +arcmsr +arcnet +arc_ps2 +arc-rawmode +arc-rimi +arc_uart +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +arptable_filter +arp_tables +arpt_mangle +as3711_bl +as3711-regulator +as3722-regulator +as5011 +asc7621 +asix +ast +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at86rf230 +at91_ether +ata_piix +atbm8830 +aten +ath +ath10k_core +ath10k_pci +ath3k +ath5k +ath6kl_core +ath6kl_sdio +ath6kl_usb +ath9k +ath9k_common +ath9k_htc +ath9k_hw +ati_remote +ati_remote2 +atl1 +atl1c +atl1e +atl2 +atm +atmel +atmel_cs +atmel_mxt_ts +atmel_pci +atmel_pwm +atmel-pwm-bl +atmel-rng +atmel-ssc +atmtcp +atp870u +atxp1 +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo_k1900fb +auo_k1901fb +auo_k190x +auo-pixcir-ts +authenc +authencesn +auth_rpcgss +autofs4 +avma1_cs +avm_cs +avmfritz +ax25 +ax88179_178a +axnet_cs +b1 +b1dma +b1pci +b1pcmcia +b2c2-flexcop +b2c2-flexcop-pci +b2c2-flexcop-usb +b43 +b43legacy +b44 +bas_gigaset +batman-adv +baycom_epp +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm203x +bcm3510 +bcm5974 +bcma +bcma-hcd +bcm_wimax +bd6107 +be2iscsi +be2net +befs +belkin_sa +bfa +bfs +bfusb +bh1770glc +bh1780gli +binfmt_misc +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +bluecard_cs +bluetooth +bma150 +bma180 +bman_debugfs_interface +bmp085-i2c +bmp085-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bonding +booke_wdt +bpa10x +bpck +bpck6 +bpctl_mod +bpqether +bq2415x_charger +bq24190_charger +bq24735-charger +bq27x00_battery +br2684 +brcmfmac +brcmsmac +brcmutil +bridge +broadsheetfb +bsd_comp +bt3c_cs +bt819 +bt856 +bt866 +bt878 +btcoexist +btcx-risc +btmrvl +btmrvl_sdio +btmtk_usb +btrfs +btsdio +bttv +btuart_cs +btusb +btwilink +bu21013_ts +budget +budget-av +budget-ci +budget-core +budget-patch +BusLogic +bw-qcam +bypass +c4 +c67x00 +caam +caamalg +caamhash +caam_jr +caamrng +cachefiles +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camellia_generic +can +can-bcm +can-dev +can-gw +can-raw +capi +capidrv +capmode +carl9170 +carminefb +cassini +cast5_generic +cast6_generic +cast_common +catc +cb710 +cb710-mmc +cb_das16_cs +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +cb_pcimdda +cc770 +cc770_isa +cc770_platform +c_can +c_can_pci +c_can_platform +cciss +ccm +cdc-acm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc-phonet +cdc_subset +cdc-wdm +cedusb +ceph +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +chipreg +chnl_net +cifs +ci_hdrc +ci_hdrc_imx +ci_hdrc_msm +ci_hdrc_pci +cirrus +cirrusfb +clearpad_tm1217 +clip +clk-max77686 +clk-s2mps11 +clk-si5351 +clk-twl6040 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_fw +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm36651 +cm4000_cs +cm4040_cs +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cmtp +cnic +cobra +coda +com20020 +com20020_cs +com20020-pci +com90io +com90xx +comedi +comedi_bond +comedi_fc +comedi_parport +comedi_test +comm +configfs +contec_pci_dio +cordic +core +cp210x +cpia2 +cpm_uart +c-qcam +cramfs +crc32 +crc7 +crc8 +crc-ccitt +crc-itu-t +cros_ec +cros_ec_i2c +cros_ec_keyb +cros_ec_spi +cryptd +cryptoloop +crypto_null +crypto_user +crystalhd +cs5345 +cs53l32a +csiostor +ctr +cts +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx8800 +cx8802 +cx88-alsa +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx88xx +cxacru +cxd2099 +cxd2820r +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxt1e1 +cy8ctmg110_ts +cyapa +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +cyttsp_core +cyttsp_i2c +cyttsp_i2c_common +cyttsp_spi +da9030_battery +da9034-ts +da903x +da903x_bl +da9052-battery +da9052_bl +da9052-hwmon +da9052_onkey +da9052-regulator +da9052_tsi +da9052_wdt +da9055-hwmon +da9055_onkey +da9055-regulator +da9055_wdt +da9063-regulator +da9210-regulator +DAC960 +daqboard2000 +das08 +das08_cs +das08_pci +db9 +dc395x +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +dccp_probe +ddbridge +de2104x +de4x5 +decnet +deflate +defxx +denali +denali_dt +denali_pci +des_generic +designware_i2s +dgap +dgnc +dgrp +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dibx000_common +digi_acceleport +diskonchip +divacapi +divadidd +diva_idi +diva_mnt +divas +dl2k +dlci +dlm +dm1105 +dm9601 +dm-bio-prison +dm-bufio +dm-cache +dm-cache-cleaner +dm-cache-mq +dm-crypt +dm-delay +dmfe +dm-flakey +dm-log +dm-log-userspace +dm-mirror +dm-multipath +dm-persistent-data +dm-queue-length +dm-raid +dm-region-hash +dm-round-robin +dm-service-time +dm-snapshot +dm-switch +dm-thin-pool +dm-verity +dmx3191d +dm-zero +dnet +dn_rtmsg +docg3 +docg4 +donauboe +dpaa_1588 +dpa_uio +dpt_i2o +drbd +drm +drm_kms_helper +drm_usb +drxd +drxk +ds1621 +ds1682 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds620 +dsa_core +dsbr100 +dscc4 +dss1_divert +dst +dst_ca +dstr +dt3000 +dt3155v4l +dt9812 +dtl1_cs +dummy +dummy-irq +dvb-as102 +dvb-bt8xx +dvb-core +dvb-pll +dvb-ttpci +dvb-ttusb-budget +dvb-usb +dvb-usb-a800 +dvb-usb-af9005 +dvb-usb-af9005-remote +dvb-usb-af9015 +dvb-usb-af9035 +dvb-usb-anysee +dvb-usb-au6610 +dvb-usb-az6007 +dvb-usb-az6027 +dvb-usb-ce6230 +dvb-usb-cinergyT2 +dvb-usb-cxusb +dvb-usb-dib0700 +dvb-usb-dibusb-common +dvb-usb-dibusb-mb +dvb-usb-dibusb-mc +dvb-usb-digitv +dvb-usb-dtt200u +dvb-usb-dtv5100 +dvb-usb-dw2102 +dvb-usb-ec168 +dvb-usb-friio +dvb-usb-gl861 +dvb-usb-gp8psk +dvb-usb-it913x +dvb-usb-lmedm04 +dvb-usb-m920x +dvb-usb-mxl111sf +dvb-usb-nova-t-usb2 +dvb-usb-opera +dvb-usb-pctv452e +dvb-usb-rtl28xxu +dvb-usb-technisat-usb2 +dvb-usb-ttusb2 +dvb-usb-umt-010 +dvb_usb_v2 +dvb-usb-vp702x +dvb-usb-vp7045 +dwc2 +dwc2_pci +dwc2_platform +dwc3 +dwc3-pci +dw_dmac +dw_dmac_core +dw_dmac_pci +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +e4000 +earth-pt1 +eata +ebt_802_3 +ebtable_broute +ebtable_filter +ebtable_nat +ebtables +ebt_among +ebt_arp +ebt_arpreply +ebt_dnat +ebt_ip +ebt_ip6 +ebt_limit +ebt_log +ebt_mark +ebt_mark_m +ebt_nflog +ebt_pkttype +ebt_redirect +ebt_snat +ebt_stp +ebt_vlan +ec100 +echo +edac_core +edt-ft5x06 +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efs +egalax_ts +ehset +elo +elsa_cs +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +emc1403 +emc2103 +emc6w201 +em_canid +em_cmp +emi26 +emi62 +em_ipset +em_meta +em_nbyte +empeg +ems_pci +ems_pcmcia +ems_usb +em_text +emu10k1-gp +em_u32 +enc28j60 +enclosure +eni +enic +epat +epia +epic100 +eql +esas2r +esd_usb2 +esi-sir +esp4 +esp6 +et131x +ethoc +evbug +exofs +extcon-adc-jack +extcon-arizona +extcon-gpio +extcon-max77693 +extcon-max8997 +extcon-palmas +ezusb +f2fs +f75375s +f81232 +fakelb +fan53555 +farsync +faulty +fb_sys_fops +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_cs +fealnx +ff-memless +fid +firedtv +firestream +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fit2 +fit3 +fixed +fld +flexcan +floppy +fm801-gp +fmc +fmc-chardev +fmc-fakedev +fmc-trivial +fmc-write-eeprom +fm_drv +fmvj18x_cs +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +freevxfs +friq +frpw +fsa9480 +fscache +fs_enet +fsl-diu-fb +fsldma +fsl_elbc_nand +fsl_hypervisor +fsl_ifc_nand +fsl_pq_mdio +fsl_qe_udc +fsl_upm +fsl_usb2_udc +ft1000 +ft1000_pcmcia +ftdi-elan +ftdi_sio +ftl +fujitsu_ts +fusbh200-hcd +g450_pll +g760a +g762 +g_acm_ms +gadgetfs +gamecon +gameport +garmin_gps +garp +g_audio +g_cdc +gcm +g_dbgp +gdmtty +gdmulte +gdmwm +gdth +generic +generic-adc-battery +generic_bl +gen_probe +g_ether +gf128mul +gf2k +g_ffs +gfs2 +ghash-generic +g_hid +gianfar_driver +gianfar_ptp +gigaset +girbil-sir +gl518sm +gl520sm +gl620a +gluebi +g_mass_storage +g_midi +g_ncm +g_nokia +go7007 +go7007-loader +go7007-usb +goku_udc +goldfishfb +gp2ap002a00f +gp2ap020a00f +gpio +gpio-74x164 +gpio-addr-flash +gpio-adnp +gpio-adp5520 +gpio-adp5588 +gpio-amd8111 +gpio-arizona +gpio_backlight +gpio-charger +gpio-da9052 +gpio-da9055 +gpio-fan +gpio-generic +gpio-grgpio +gpio-ir-recv +gpio-janz-ttl +gpio-kempld +gpio_keys +gpio_keys_polled +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-mc33880 +gpio-mcp23s08 +gpio-ml-ioh +gpio_mouse +gpio-pca953x +gpio-pcf857x +gpio-rdc321x +gpio-regulator +gpio_tilt_polled +gpio-tps65912 +gpio-ts5500 +gpio-twl4030 +gpio-twl6040 +gpio-ucb1400 +gpio-viperboard +gpio-vx855 +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +g_printer +grcan +gre +grip +grip_mp +gsc_hpdi +g_serial +gspca_benq +gspca_conex +gspca_cpia1 +gspca_etoms +gspca_finepix +gspca_gl860 +gspca_jeilinj +gspca_jl2005bcd +gspca_kinect +gspca_konica +gspca_m5602 +gspca_main +gspca_mars +gspca_mr97310a +gspca_nw80x +gspca_ov519 +gspca_ov534 +gspca_ov534_9 +gspca_pac207 +gspca_pac7302 +gspca_pac7311 +gspca_se401 +gspca_sn9c2028 +gspca_sn9c20x +gspca_sonixb +gspca_sonixj +gspca_spca1528 +gspca_spca500 +gspca_spca501 +gspca_spca505 +gspca_spca506 +gspca_spca508 +gspca_spca561 +gspca_sq905 +gspca_sq905c +gspca_sq930x +gspca_stk014 +gspca_stk1135 +gspca_stv0680 +gspca_stv06xx +gspca_sunplus +gspca_t613 +gspca_topro +gspca_tv8532 +gspca_vc032x +gspca_vicam +gspca_xirlink_cit +gspca_zc3xx +gtco +guillemot +gunze +g_webcam +gxt4500 +g_zero +hamachi +hampshire +hanwang +hci +hci_uart +hci_vhci +hdlc +hdlc_cisco +hdlcdrv +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdpvr +he +hexium_gemini +hexium_orion +hfc4s8s_l1 +hfcmulti +hfcpci +hfcsusb +hfc_usb +hfs +hfsplus +hid +hid-a4tech +hid-apple +hid-appleir +hid-aureal +hid-axff +hid-belkin +hid-cherry +hid-chicony +hid-cypress +hid-dr +hid-elecom +hid-elo +hid-emsff +hid-ezkey +hid-gaff +hid-generic +hid-gyration +hid-holtekff +hid-holtek-kbd +hid-holtek-mouse +hid-huion +hid-icade +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-lenovo-tpkbd +hid-logitech +hid-logitech-dj +hid-magicmouse +hid-microsoft +hid-monterey +hid-multitouch +hid-ntrig +hid-ortek +hidp +hid-petalynx +hid-picolcd +hid-pl +hid-primax +hid-prodikeys +hid-roccat +hid-roccat-arvo +hid-roccat-common +hid-roccat-isku +hid-roccat-kone +hid-roccat-koneplus +hid-roccat-konepure +hid-roccat-kovaplus +hid-roccat-lua +hid-roccat-pyra +hid-roccat-ryos +hid-roccat-savu +hid-saitek +hid-samsung +hid-sensor-accel-3d +hid-sensor-als +hid-sensor-gyro-3d +hid-sensor-hub +hid-sensor-iio-common +hid-sensor-magn-3d +hid-sensor-trigger +hid-sjoy +hid-sony +hid-speedlink +hid-steelseries +hid-sunplus +hid-thingm +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-uclogic +hid-wacom +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hih6130 +hisax +hisax_fcpcipnp +hisax_isac +hisax_st5481 +hmc5843 +hmc6352 +hopper +horizon +hostap +hostap_cs +hostap_pci +hostap_plx +hp100 +hpfs +hpilo +hpsa +hptiop +hsi +hsi_char +hso +hsr +htc-pasic3 +htu21 +huawei_cdc_ncm +hwa-hc +hwa-rc +hwmon-vid +hx8357 +hysdn +i1480-dfu-usb +i1480-est +i2400m +i2400m-usb +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd8111 +i2c-arb-gpio-challenge +i2c-cbus-gpio +i2c-cpm +i2c-designware-core +i2c-designware-pci +i2c-designware-platform +i2c-dev +i2c-diolan-u2c +i2c-eg20t +i2c-gpio +i2c-hid +i2c-i801 +i2c-isch +i2c-kempld +i2c-matroxfb +i2c-mpc +i2c-mux +i2c-mux-gpio +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-nforce2 +i2c-ocores +i2c-parport +i2c-parport-light +i2c-pca-platform +i2c-piix4 +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-tiny-usb +i2c-via +i2c-viapro +i2c-viperboard +i2c-xiic +i2o_block +i2o_bus +i2o_config +i2o_core +i2o_proc +i2o_scsi +i40e +i5k_amb +i6300esb +i740fb +i82092 +ib_addr +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mad +ibmaem +ibmpex +ib_mthca +ib_sa +ib_srp +ib_srpt +ib_ucm +ib_umad +ib_uverbs +icp_multi +ics932s401 +idmouse +idt77252 +ieee802154 +ifb +iforce +igb +igbvf +iguanair +iio_dummy +iio_hwmon +iio-trig-interrupt +iio-trig-periodic-rtc +iio-trig-sysfs +ili210x +ili922x +ili9320 +imm +imon +ims-pcu +imx074 +imx_thermal +ina209 +ina2xx +industrialio +industrialio-triggered-buffer +inet_diag +inexio +inftl +initio +input-polldev +int51x1 +intel_vr_nor +interact +interval_tree_test +inv-mpu6050 +ioc4 +io_edgeport +io_ti +iowarrior +ip6_gre +ip6table_filter +ip6table_mangle +ip6table_nat +ip6table_raw +ip6_tables +ip6table_security +ip6t_ah +ip6t_eui64 +ip6t_frag +ip6t_hbh +ip6t_ipv6header +ip6t_MASQUERADE +ip6t_mh +ip6t_NPT +ip6t_REJECT +ip6t_rpfilter +ip6t_rt +ip6t_SYNPROXY +ip6_tunnel +ip6_vti +ipack +ipaq +ipcomp +ipcomp6 +ipddp +ipg +ip_gre +iphase +ipheth +ipip +ipmi_devintf +ipmi_poweroff +ipmi_si +ipmi_watchdog +ipoctal +ipr +ips +ip_set +ip_set_bitmap_ip +ip_set_bitmap_ipmac +ip_set_bitmap_port +ip_set_hash_ip +ip_set_hash_ipport +ip_set_hash_ipportip +ip_set_hash_ipportnet +ip_set_hash_net +ip_set_hash_netiface +ip_set_hash_netnet +ip_set_hash_netport +ip_set_hash_netportnet +ip_set_list_set +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +ip_tables +iptable_security +ipt_ah +ipt_CLUSTERIP +ipt_ECN +ipt_MASQUERADE +ipt_REJECT +ipt_rpfilter +ipt_SYNPROXY +ipt_ULOG +ip_tunnel +ip_vs +ip_vs_dh +ip_vs_ftp +ip_vs_lblc +ip_vs_lblcr +ip_vs_lc +ip_vs_nq +ip_vs_pe_sip +ip_vs_rr +ip_vs_sed +ip_vs_sh +ip_vs_wlc +ip_vs_wrr +ip_vti +ipw +ipw2100 +ipw2200 +ipwireless +ipx +ircomm +ircomm-tty +irda +irda-usb +ir-jvc-decoder +ir-kbd-i2c +irlan +ir-lirc-codec +ir-mce_kbd-decoder +ir-nec-decoder +irnet +ir-rc5-decoder +ir-rc5-sz-decoder +ir-rc6-decoder +ir-sanyo-decoder +ir-sony-decoder +irtty-sir +ir-usb +iscsi_boot_sysfs +iscsi_target_mod +iscsi_tcp +isdn +isdn_bsdcomp +isdnhdlc +isicom +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isofs +isp116x-hcd +isp1362-hcd +isp1704_charger +isp1760 +it913x-fe +itd1000 +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_c2 +iw_cm +iw_cxgb3 +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +iw_nes +ix2505v +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsm +kafs +kalmia +kaweth +kbic +kbtab +kcomedilib +ke_counter +kempld-core +kempld_wdt +kernelcapi +keucr +keyspan +keyspan_pda +keyspan_remote +kfifo_buf +khazad +kingsun-sir +kl5kusb105 +ko2iblnd +kobil_sct +ks0108 +ks0127 +ks8842 +ks8851 +ks8851_mll +ks959-sir +ksdazzle-sir +ksocklnd +ksz884x +ktti +kvaser_pci +kvaser_usb +kxsd9 +kxtj9 +kyrofb +l1oip +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +l2tp_ppp +l4f00242t03 +l64781 +lanai +lapb +lapbether +latch-addr-flash +lattice-ecp3-config +lcd +ld9040 +ldusb +lec +leds-88pm860x +leds-adp5520 +leds-atmel-pwm +leds-bd2802 +leds-blinkm +leds-da903x +leds-da9052 +leds-dac124s085 +leds-gpio +leds-lm3530 +leds-lm3533 +leds-lm355x +leds-lm3642 +leds-lp3944 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lt3593 +leds-max8997 +leds-mc13783 +leds-ot200 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pca9685 +leds-pwm +leds-regulator +leds-tca6507 +leds-wm831x-status +leds-wm8350 +ledtrig-backlight +ledtrig-camera +ledtrig-default-on +ledtrig-gpio +ledtrig-heartbeat +ledtrig-oneshot +ledtrig-timer +ledtrig-transient +legousbtower +lg2160 +lgdt3305 +lgdt330x +lgs8gxx +lg-vl600 +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libahci +libceph +libcfs +libcomposite +libcrc32c +libcxgbi +libertas +libertas_cs +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libore +libosd +libsas +libsrp +lightning +line6usb +lineage-pem +linear +lirc_bt829 +lirc_dev +lirc_igorplugusb +lirc_imon +lirc_parallel +lirc_sasem +lirc_serial +lirc_sir +lirc_zilog +lis3l02dq +lis3lv02d +lis3lv02d_i2c +lis3lv02d_spi +litelink-sir +lkkbd +llc +llc2 +llog_test +ll_temac +lm25066 +lm3533-als +lm3533_bl +lm3533-core +lm3533-ctrlbank +lm3630a_bl +lm3639_bl +lm63 +lm70 +lm73 +lm75 +lm77 +lm78 +lm80 +lm83 +lm8323 +lm8333 +lm85 +lm87 +lm90 +lm92 +lm93 +lm95234 +lm95241 +lm95245 +lmc +lms283gf05 +lms501kf03 +lmv +lnbp21 +lnbp22 +lnet +lnet_selftest +lockd +lov +lp +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp8755 +lp8788_bl +lp8788-charger +lpc_ich +lpc_sch +lpddr_cmds +lpfc +lru_cache +lrw +ltc2978 +ltc4151 +ltc4215 +ltc4245 +ltc4261 +ltv350qv +lustre +lv5207lp +lvfs +lz4 +lz4_compress +lz4hc +lz4hc_compress +m25p80 +m2m-deinterlace +m52790 +m88rs2000 +ma600-sir +mac80211 +mac80211_hwsim +mac802154 +macb +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mac-gaelic +mac-greek +mac_hid +mac-iceland +mac-inuit +mac-roman +mac-romanian +mac-turkish +macvlan +macvtap +mag3110 +magellan +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +matrix-keymap +matrix_keypad +matroxfb_accel +matroxfb_base +matroxfb_crtc2 +matroxfb_DAC1064 +matroxfb_g450 +matroxfb_maven +matroxfb_misc +matroxfb_Ti3026 +matrox_w1 +max1111 +max11801_ts +max1363 +max1586 +max16064 +max16065 +max1619 +max1668 +max17040_battery +max17042_battery +max197 +max2165 +max3100 +max34440 +max517 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77686 +max77693 +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925_bl +max8925_onkey +max8925_power +max8925-regulator +max8952 +max8973-regulator +max8997 +max8997_charger +max8998 +max8998_charger +mb862xxfb +mb86a16 +mb86a20s +mc13783-adc +mc13783-pwrbutton +mc13783-regulator +mc13783_ts +mc13892-regulator +mc13xxx-core +mc13xxx-i2c +mc13xxx-regulator-core +mc13xxx-spi +mc44s803 +mceusb +mcp2120-sir +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp4725 +mcs5000_ts +mcs7780 +mcs7830 +mcs_touchkey +mct_u232 +md4 +mdc +mdc800 +mdio +me4000 +me_daq +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mem2mem_testdev +memstick +mena21_wdt +metronomefb +metro-usb +mfd +mga +mgc +michael_mic +microread +microread_i2c +microtek +mii +mii-bitbang +minix +mip6 +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +mite +mk712 +mkiss +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mma8450 +mmc_block +mms114 +mos7720 +mos7840 +moxa +mpc85xx_edac +mpoa +mpr121_touchkey +mpt2sas +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +mrst_max3110 +ms_block +msdos +msp3400 +mspro_block +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt29f_spinand +mt312 +mt352 +mt9m001 +mt9m111 +mt9t031 +mt9t112 +mt9v011 +mt9v022 +mtd +mtd_blkdevs +mtdblock +mtdblock_ro +mtd_dataflash +mtdoops +mtdram +mtdswap +mtip32xx +mtouch +multipath +musb_am335x +musb_dsps +musb_hdrc +mv643xx_eth +mv88e6060 +mv88e6xxx_drv +mvmdio +mvsas +mv_u3d_core +mv_udc +mvumi +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxl111sf-demod +mxl111sf-tuner +mxl5005s +mxl5007t +mxser +myri10ge +nand +nand_bch +nand_ecc +nand_ids +nandsim +natsemi +nau7802 +navman +nbd +nci +ncpfs +ne2k-pci +neofb +net1080 +net2272 +net2280 +netconsole +netjet +netlink_diag +netprio_cgroup +netrom +netxen_nic +newtonkbd +nfc +nfc_digital +nf_conntrack +nf_conntrack_amanda +nf_conntrack_broadcast +nf_conntrack_ftp +nf_conntrack_h323 +nf_conntrack_ipv4 +nf_conntrack_ipv6 +nf_conntrack_irc +nf_conntrack_netbios_ns +nf_conntrack_netlink +nf_conntrack_pptp +nf_conntrack_proto_dccp +nf_conntrack_proto_gre +nf_conntrack_proto_sctp +nf_conntrack_proto_udplite +nf_conntrack_sane +nf_conntrack_sip +nf_conntrack_snmp +nf_conntrack_tftp +nfcsim +nfcwilink +nf_defrag_ipv4 +nf_defrag_ipv6 +nf_nat +nf_nat_amanda +nf_nat_ftp +nf_nat_h323 +nf_nat_ipv4 +nf_nat_ipv6 +nf_nat_irc +nf_nat_pptp +nf_nat_proto_dccp +nf_nat_proto_gre +nf_nat_proto_sctp +nf_nat_proto_udplite +nf_nat_sip +nf_nat_snmp_basic +nf_nat_tftp +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +nfnetlink_log +nfnetlink_queue +nfs +nfs_acl +nfsd +nfs_layout_nfsv41_files +nfsv2 +nfsv3 +nfsv4 +nf_synproxy_core +nf_tables +nf_tables_arp +nf_tables_bridge +nf_tables_ipv4 +nf_tables_ipv6 +nft_chain_nat_ipv4 +nft_chain_nat_ipv6 +nft_chain_route_ipv4 +nft_chain_route_ipv6 +nft_compat +nft_counter +nft_ct +nft_exthdr +nft_hash +nftl +nft_limit +nft_log +nft_meta +nft_nat +nft_rbtree +nft_reject_ipv4 +ngene +n_hdlc +ni_6527 +ni_65xx +ni_660x +ni_670x +nicstar +ni_daq_700 +ni_daq_dio24 +ni_labpc +ni_labpc_cs +ni_labpc_pci +nilfs2 +ni_mio_cs +ni_pcidio +ni_pcimio +ni_tio +ni_tiocmd +niu +nlmon +nls_ascii +nls_cp1250 +nls_cp1251 +nls_cp1255 +nls_cp737 +nls_cp775 +nls_cp850 +nls_cp852 +nls_cp855 +nls_cp857 +nls_cp860 +nls_cp861 +nls_cp862 +nls_cp863 +nls_cp864 +nls_cp865 +nls_cp866 +nls_cp869 +nls_cp874 +nls_cp932 +nls_cp936 +nls_cp949 +nls_cp950 +nls_euc-jp +nls_iso8859-1 +nls_iso8859-13 +nls_iso8859-14 +nls_iso8859-15 +nls_iso8859-2 +nls_iso8859-3 +nls_iso8859-4 +nls_iso8859-5 +nls_iso8859-6 +nls_iso8859-7 +nls_iso8859-9 +nls_koi8-r +nls_koi8-ru +nls_koi8-u +nls_utf8 +nmclan_cs +nosy +notifier-error-inject +nouveau +nozomi +n_r3964 +ns558 +ns83820 +nsc-ircc +nsp32 +nsp_cs +ntc_thermistor +ntfs +n_tracerouter +n_tracesink +null_blk +nvidiafb +nvme +nxt200x +nxt6000 +obdclass +obdecho +objlayoutdriver +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stackglue +ocfs2_stack_o2cb +ocfs2_stack_user +ocrdma +ofpart +of_serial +old_belkin-sir +olpc_apsp +omfs +omninet +on20 +on26 +onenand +opencores-kbd +openvswitch +oprofile +opticon +option +or51132 +or51211 +orinoco +orinoco_cs +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +osc +osd +osdblk +osst +oti6858 +output +ov2640 +ov5642 +ov6650 +ov7640 +ov7670 +ov772x +ov9640 +ov9740 +overlayfs +oxu210hp-hcd +ozwpan +p54common +p54pci +p54spi +p54usb +p8022 +p8023 +palmas-regulator +pandora_bl +panel +paride +parkbd +parport +parport_ax88796 +parport_cs +parport_pc +parport_serial +pata_ali +pata_amd +pata_arasan_cf +pata_artop +pata_atiixp +pata_atp867x +pata_cmd640 +pata_cmd64x +pata_cs5520 +pata_cs5530 +pata_cs5536 +pata_cypress +pata_efar +pata_hpt366 +pata_hpt37x +pata_hpt3x2n +pata_hpt3x3 +pata_it8213 +pata_it821x +pata_jmicron +pata_legacy +pata_marvell +pata_mpiix +pata_netcell +pata_ninja32 +pata_ns87410 +pata_ns87415 +pata_of_platform +pata_oldpiix +pata_opti +pata_optidma +pata_pcmcia +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sc1200 +pata_sch +pata_serverworks +pata_sil680 +pata_sis +pata_sl82c105 +pata_triflex +pata_via +pc300too +pcbc +pcd +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_can +pch_phub +pch_uart +pch_udc +pci +pci200syn +pcips2 +pci-stub +pcmcia +pcmcia_core +pcmciamtd +pcmcia_rsrc +pcnet32 +pcnet_cs +pcrypt +pcwd_pci +pcwd_usb +pd +pd6729 +pda_power +pdc_adma +peak_pci +peak_pcmcia +peak_usb +pegasus +penmount +percpu_test +pf +pfuze100-regulator +pg +phantom +phison +phonet +phram +phy-core +phy-exynos-dp-video +phy-fsl-usb2 +phy-generic +phy-gpio-vbus-usb +phy-isp1301 +phy-rcar-usb +phy-samsung-usb +phy-samsung-usb2 +phy-samsung-usb3 +physmap +physmap_of +pixcir_i2c_ts +pktcdvd +pktgen +pl2303 +platform_lcd +plat_nand +plat-ram +plip +plusb +pluto2 +plx_pci +pm2fb +pm3fb +pm80xx +pmbus +pmbus_core +pmc551 +pmcraid +pm-notifier-error-inject +pn533 +pn544 +pn544_i2c +pn_pep +port100 +poseidon +powermate +ppa +ppc-corenet-cpufreq +ppdev +ppp_async +ppp_deflate +ppp_mppe +pppoatm +pppoe +pppox +ppp_synctty +pps_core +pps-gpio +pps-ldisc +pps_parport +pptp +prism2_usb +ps2mult +psmouse +psnap +pt +ptlrpc +ptp +pvrusb2 +pwc +pwm_bl +pwm-pca9685 +pwm-twl +pwm-twl-led +pxa27x_udc +qcaux +qcserial +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qlogic_cs +qlogicfas408 +qman_debugfs_interface +qmi_wwan +qnx4 +qnx6 +qt1010 +qt1070 +qt2160 +quatech2 +quatech_daqp_cs +quota_tree +quota_v1 +quota_v2 +qxl +r128 +r592 +r6040 +r8152 +r815x +r8169 +r8187se +r8188eu +r8192e_pci +r8192u_usb +r820t +r852 +r8712u +r8a66597-hcd +r8a66597-udc +radeon +radio-i2c-si470x +radio-keene +radio-ma901 +radio-maxiradio +radio-mr800 +radio-shark +radio-si4713 +radio-si476x +radio-tea5764 +radio-timb +radio-usb-si470x +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid6test +raid_class +ramoops +raw +ray_cs +rbd +rbtree_test +rc5t583-regulator +rc-adstech-dvb-t-pci +rc-alink-dtu-m +rc-anysee +rc-apac-viewcomp +rcar_vin +rc-asus-pc39 +rc-asus-ps3-100 +rc-ati-tv-wonder-hd-600 +rc-ati-x10 +rc-avermedia +rc-avermedia-a16d +rc-avermedia-cardbus +rc-avermedia-dvbt +rc-avermedia-m135a +rc-avermedia-m733a-rm-k6 +rc-avermedia-rm-ks +rc-avertv-303 +rc-azurewave-ad-tu700 +rc-behold +rc-behold-columbus +rc-budget-ci-old +rc-cinergy +rc-cinergy-1400 +rc-core +rc-delock-61959 +rc-dib0700-nec +rc-dib0700-rc5 +rc-digitalnow-tinytwin +rc-digittrade +rc-dm1105-nec +rc-dntv-live-dvb-t +rc-dntv-live-dvbt-pro +rc-em-terratec +rc-encore-enltv +rc-encore-enltv2 +rc-encore-enltv-fm53 +rc-evga-indtube +rc-eztv +rc-flydvb +rc-flyvideo +rc-fusionhdtv-mce +rc-gadmei-rm008z +rc-genius-tvgo-a11mce +rc-gotview7135 +rc-hauppauge +rc-imon-mce +rc-imon-pad +rc-iodata-bctv7e +rc-it913x-v1 +rc-it913x-v2 +rc-kaiomy +rc-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lirc +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +rc-msi-digivox-ii +rc-msi-digivox-iii +rc-msi-tvanywhere +rc-msi-tvanywhere-plus +rc-nebula +rc-nec-terratec-cinergy-xs +rc-norwood +rc-npgtech +rc-pctv-sedna +rc-pinnacle-color +rc-pinnacle-grey +rc-pinnacle-pctv-hd +rc-pixelview +rc-pixelview-002t +rc-pixelview-mk12 +rc-pixelview-new +rc-powercolor-real-angel +rc-proteus-2309 +rc-purpletv +rc-pv951 +rc-rc6-mce +rc-real-audio-220-32-keys +rc-reddo +rc-snapstream-firefly +rc-streamzap +rc-tbs-nec +rc-technisat-usb2 +rc-terratec-cinergy-xs +rc-terratec-slim +rc-terratec-slim-2 +rc-tevii-nec +rc-tivo +rc-total-media-in-hand +rc-total-media-in-hand-02 +rc-trekstor +rc-tt-1500 +rc-twinhan1027 +rc-videomate-m1f +rc-videomate-s350 +rc-videomate-tv-pvr +rc-winfast +rc-winfast-usbii-deluxe +rdc321x-southbridge +rdma_cm +rdma_ucm +rds +rds_rdma +rds_tcp +redboot +redrat3 +reed_solomon +reiserfs +remoteproc +renesas_usbhs +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd_ftl +rfkill-gpio +rfkill-regulator +rio500 +rionet +rio-scan +rivafb +rj54n1cb0c +rmd128 +rmd160 +rmd256 +rmd320 +rndis_host +rndis_wlan +rocket +romfs +rose +rotary_encoder +rp2 +rpcsec_gss_krb5 +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt61pci +rt73usb +rtc-88pm80x +rtc-88pm860x +rtc-ab3100 +rtc-as3722 +rtc-bq32k +rtc-bq4802 +rtc-cmos +rtc_cmos_setup +rtc-da9052 +rtc-da9055 +rtc-ds1286 +rtc-ds1305 +rtc-ds1307 +rtc-ds1374 +rtc-ds1390 +rtc-ds1511 +rtc-ds1553 +rtc-ds1672 +rtc-ds1742 +rtc-ds2404 +rtc-ds3232 +rtc-ds3234 +rtc-em3027 +rtc-fm3130 +rtc-generic +rtc-hid-sensor-time +rtc-isl12022 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-moxart +rtc-msm6242 +rtc-palmas +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf8523 +rtc-pcf8563 +rtc-pcf8583 +rtc-r9701 +rtc-rc5t583 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3029c2 +rtc-rx4581 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-snvs +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtd520 +rtl2830 +rtl2832 +rtl8150 +rtl8180 +rtl8187 +rtl8188ee +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192se +rtl8723ae +rtl8723be +rtl8723-common +rtl8821ae +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtl_pci +rtl_usb +rtlwifi +rts5139 +rtsx_pci +rtsx_pci_ms +rtsx_pci_sdmmc +rx51_battery +rxkad +s1d13xxxfb +s2250 +s2255drv +s2io +s2mps11 +s3fb +s5h1409 +s5h1411 +s5h1420 +s5m8767 +s626 +s6e63m0 +s921 +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7146 +saa7146_vv +saa7164 +saa717x +saa7185 +saa7706h +safe_serial +salsa20_generic +samsung-keypad +sata_fsl +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_rcar +sata_sil +sata_sil24 +sata_sis +sata_sx4 +sata_uli +sata_via +sata_vsc +savage +savagefb +sbe-2t3e3 +sbp_target +sbs-battery +sc92031 +sca3000 +sch_atm +sch_cbq +sch_choke +sch_codel +sch_drr +sch_dsmark +sch_fq +sch_fq_codel +sch_gred +sch_hfsc +sch_htb +sch_ingress +sch_mqprio +sch_multiq +sch_netem +sch_plug +sch_prio +sch_qfq +sch_red +sch_sfb +sch_sfq +sch_tbf +sch_teql +scsi_debug +scsi_dh +scsi_dh_alua +scsi_dh_emc +scsi_dh_hp_sw +scsi_dh_rdac +scsi_tgt +scsi_transport_fc +scsi_transport_iscsi +scsi_transport_sas +scsi_transport_spi +scsi_transport_srp +sctp +sctp_probe +sdhci +sdhci-of-esdhc +sdhci-of-hlwd +sdhci-pci +sdhci-pltfm +sdhci-pxav2 +sdhci-pxav3 +sdio_uart +sdricoh_cs +sdr-msi3101 +sedlbauer_cs +seed +sep_driver +seqiv +ser_gigaset +serial2002 +serial_cs +serio_raw +sermouse +serpent_generic +serport +serqt_usb2 +ses +sfc +sha1-powerpc +shark2 +sh_eth +sh_mobile_ceu_camera +sh_mobile_csi2 +shpchp +sht15 +sht21 +sh_veu +si21xx +si4713-i2c +si476x-core +sidewinder +sierra +sierra_net +sil164 +sir-dev +sis +sis190 +sis5595 +sis900 +sisfb +sisusbvga +sit +sja1000 +sja1000_isa +sja1000_of_platform +sja1000_platform +skel +skfp +skge +sky2 +sl811_cs +sl811-hcd +slcan +slip +slram +sm501 +sm501fb +sm7xxfb +smb347-charger +smc91c92_cs +sm_common +sm_ftl +smm665 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smsc-ircc2 +smscufx +smsdvb +smsmdtv +smssdio +smsusb +snd +snd-ac97-codec +snd-ad1889 +snd-ak4113 +snd-ak4114 +snd-ak4117 +snd-ak4xxx-adda +snd-ali5451 +snd-aloop +snd-als300 +snd-als4000 +snd-at73c213 +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-azt3328 +snd-bt87x +snd-ca0106 +snd-cmipci +snd-compress +snd-cs4281 +snd-cs46xx +snd-cs5530 +snd-cs5535audio +snd-cs8427 +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-emu10k1 +snd-emu10k1-synth +snd-emu10k1x +snd-emux-synth +snd-ens1370 +snd-ens1371 +snd-es1938 +snd-es1968 +snd-firewire-lib +snd-firewire-speakers +snd-fm801 +snd-gina20 +snd-gina24 +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-intel +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1712 +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel8x0 +snd-intel8x0m +snd-isight +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-lx6464es +snd-maestro3 +snd-mia +snd-mixart +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3-synth +snd-oxygen +snd-oxygen-lib +snd-page-alloc +snd-pcm +snd-pcxhr +snd-pdaudiocf +snd-portman2x4 +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-sb16-dsp +snd-sb-common +snd-scs1x +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-soc-atmel-pcm +snd-soc-core +snd-soc-fsl-dma +snd-soc-fsl-ssi +snd-soc-fsl-utils +snd-soc-p1022-ds +snd-soc-p1022-rdk +snd-soc-si476x +snd-soc-simple-card +snd-soc-wm8776 +snd-soc-wm8960 +snd-sonicvibes +snd-timer +snd-trident +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usbmidi-lib +snd-usb-usx2y +snd-util-mem +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx222 +snd-vx-lib +snd-vxpocket +snd-ymfpci +soc_camera +soc_camera_platform +soc_mediabus +socrates_nand +soc_scale_crop +softdog +softing +softing_cs +solo6x10 +solos-pci +sony-btf-mpx +soundcore +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +spectrum_cs +speedfax +speedtch +spi-altera +spi-bitbang +spi-butterfly +spidev +spi-dw +spi-dw-midpci +spi-dw-mmio +spi-gpio +spi_ks8995 +spi-lm70llp +spi-oc-tiny +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-sc18is602 +spi-tle62x0 +spi-topcliff-pch +spi-xcomm +squashfs +sr9700 +ssb +ssb-hcd +ssd1307fb +ssfdc +sst25l +ssu100 +st +st1232 +st_accel +st_accel_i2c +st_accel_spi +starfire +stb0899 +stb6000 +stb6100 +st_drv +ste_modem_rproc +stex +st_gyro +st_gyro_i2c +st_gyro_spi +stinger +stir4200 +stk1160 +stkwebcam +st_magn +st_magn_i2c +st_magn_spi +stmmac +stmpe-keypad +stmpe-ts +stowaway +stp +st_pressure +st_pressure_i2c +st_pressure_spi +streamzap +st_sensors +st_sensors_i2c +st_sensors_spi +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv6110 +stv6110x +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sur40 +svcrdma +svgalib +sx8 +sym53c500_cs +sym53c8xx +symbolserial +synaptics_i2c +synaptics_i2c_rmi4 +synaptics_usb +synclink +synclink_cs +synclink_gt +synclinkmp +syscopyarea +sysfillrect +sysimgblt +sysv +t1pci +talitos +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +tc3589x-keypad +tca6416-keypad +tca8418_keypad +tcm_fc +tcm_loop +tcm_qla2xxx +tcm_usb_gadget +tcp_bic +tcp_diag +tcp_highspeed +tcp_htcp +tcp_hybla +tcp_illinois +tcp_lp +tcp_probe +tcp_scalable +tcp_vegas +tcp_veno +tcp_westwood +tcp_yeah +tcrypt +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18271 +tda18271c2dd +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda998x +tdfx +tdfxfb +tdo24m +tea +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tef6862 +tehuti +tekram-sir +teles_cs +test-kstrtox +test_power +test-string_helpers +tg3 +tgr192 +thmc50 +ti-adc081c +ti_dac7512 +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +timb_dma +timberdale +timblogiw +timbuart +timeriomem-rng +tipc +ti_usb_3410_5052 +tlan +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmiofb +tmp006 +tmp102 +tmp401 +tmp421 +tmscsim +toim3232-sir +touchit213 +touchright +touchwin +tpci200 +tpm_atmel +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_i2c_stm_st33 +tpm-rng +tps51632-regulator +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65090-charger +tps65090-regulator +tps65217 +tps65217_bl +tps65217-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps80031-regulator +trancevibrator +tranzport +tridentfb +ts2020 +ts_bm +tsc2005 +tsc2007 +tsc40 +ts_fsm +ts_kmp +tsl2550 +tsl2563 +tsl2583 +tsl2x7x_core +tsl4531 +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +tua6100 +tua9001 +tulip +tuner +tuner_it913x +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +tusb6010 +tvaudio +tveeprom +tvp5150 +tw2804 +tw9903 +tw9906 +tw9910 +twidjoy +twl4030_charger +twl4030_keypad +twl4030-madc +twl4030-madc-hwmon +twl4030-pwrbutton +twl4030-vibra +twl4030_wdt +twl6030-gpadc +twl6040-vibra +twofish_common +twofish_generic +typhoon +u132-hcd +uartlite +ubi +ubifs +ucb1400_core +ucb1400_ts +ucd9000 +ucd9200 +uda1342 +udc-core +udf +udl +udlfb +udp_diag +ueagle-atm +u_ether +ufs +ufshcd +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_sercos3 +uli526x +umc +umem +ums-alauda +ums-cypress +ums-datafab +ums-eneub6250 +ums-freecom +ums-isd200 +ums-jumpshot +ums-karma +ums-onetouch +ums-realtek +ums-sddr09 +ums-sddr55 +ums-usbat +unix_diag +upd64031a +upd64083 +uPD98402 +u_rndis +usb3503 +usb_8dev +usb8xxx +usbatm +usb_debug +usbdux +usbduxfast +usbduxsigma +usb_f_acm +usb_f_ecm +usb_f_ecm_subset +usb_f_eem +usb_f_mass_storage +usb_f_ncm +usb_f_obex +usb_f_phonet +usb_f_rndis +usb_f_serial +usb_f_ss_lb +usb_gigaset +usbhid +usbip-core +usbip-host +usbkbd +usblcd +usbled +usblp +usbmisc_imx +usbmon +usbmouse +usbnet +usbserial +usb-serial-simple +usbsevseg +usb-storage +usbtest +usbtmc +usbtouchscreen +usbtv +usbvision +usb_wwan +u_serial +userspace-consumer +ushc +uss720 +uvcvideo +uvesafb +uwb +ux500 +v4l2-common +v4l2-dv-timings +v4l2-int-device +v4l2-mem2mem +vcan +vcnl4000 +ves1820 +ves1x93 +veth +vga16fb +vgastate +vgg2432a4 +vhci-hcd +vhost +vhost_net +vhost_scsi +via +via686a +via-ircc +via-rhine +via-sdmmc +via-velocity +videobuf2-core +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-memops +videobuf2-vmalloc +videobuf-core +videobuf-dma-contig +videobuf-dma-sg +videobuf-dvb +videobuf-vmalloc +videocodec +videodev +viperboard +viperboard_adc +virtio +virtio_balloon +virtio_blk +virtio_console +virtio_mmio +virtio_net +virtio_pci +virtio_ring +virtio-rng +virtio_scsi +virtual +visor +vivi +vlsi_ir +vmac +vme +vme_ca91cx42 +vme_pio2 +vme_tsi148 +vme_user +vme_vmivme7805 +vmk80xx +vmwgfx +vmxnet3 +vp27smpx +vpx3220 +vringh +vsock +vsxxxaa +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxge +vxlan +w1_bq27000 +w1_ds2408 +w1_ds2413 +w1_ds2423 +w1_ds2431 +w1_ds2433 +w1_ds2760 +w1_ds2780 +w1_ds2781 +w1_ds28e04 +w1-gpio +w1_smem +w1_therm +w35und +w5100 +w5300 +w6692 +w83781d +w83791d +w83792d +w83793 +w83795 +w83977af_ir +w83l785ts +w83l786ng +w90p910_ts +w9966 +wacom +wacom_i2c +wacom_w8001 +walkera0701 +wanxl +warrior +wbsd +wcn36xx +wdt_pci +whci +whci-hcd +whc-rc +whiteheat +wil6210 +wimax +winbond-840 +windfarm_core +wire +wishbone-serial +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wl3501_cs +wlags49_h25_cs +wlags49_h2_cs +wlcore +wlcore_sdio +wlcore_spi +wm831x_backup +wm831x_bl +wm831x-dcdc +wm831x-hwmon +wm831x-isink +wm831x-ldo +wm831x-on +wm831x_power +wm831x-ts +wm831x_wdt +wm8350-hwmon +wm8350_power +wm8350-regulator +wm8350_wdt +wm8400-regulator +wm8739 +wm8775 +wm8994-regulator +wm97xx-ts +wp512 +wusb-cbaf +wusbcore +wusb-wa +x25 +x25_asy +xc4000 +xc5000 +xcbc +xfrm4_mode_beet +xfrm4_mode_transport +xfrm4_mode_tunnel +xfrm4_tunnel +xfrm6_mode_beet +xfrm6_mode_ro +xfrm6_mode_transport +xfrm6_mode_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_ipcomp +xfrm_user +xfs +xgifb +xgmac +xilinx_ps2 +xilinx_uartps +xillybus_core +xillybus_of +xillybus_pcie +xirc2ps_cs +xircom_cb +xor +xpad +xprtrdma +xsens_mt +x_tables +xt_addrtype +xt_AUDIT +xt_bpf +xt_CHECKSUM +xt_CLASSIFY +xt_cluster +xt_comment +xt_connbytes +xt_connlabel +xt_connlimit +xt_connmark +xt_CONNSECMARK +xt_conntrack +xt_cpu +xt_CT +xt_dccp +xt_devgroup +xt_dscp +xt_DSCP +xt_ecn +xt_esp +xt_hashlimit +xt_helper +xt_hl +xt_HL +xt_HMARK +xt_IDLETIMER +xt_iprange +xt_ipvs +xtkbd +xt_LED +xt_length +xt_limit +xt_LOG +xt_mac +xt_mark +xt_multiport +xt_nat +xt_NETMAP +xt_nfacct +xt_NFLOG +xt_NFQUEUE +xt_osf +xt_owner +xt_physdev +xt_pkttype +xt_policy +xt_quota +xt_rateest +xt_RATEEST +xt_realm +xt_recent +xt_REDIRECT +xts +xt_sctp +xt_SECMARK +xt_set +xt_socket +xt_state +xt_statistic +xt_string +xt_tcpmss +xt_TCPMSS +xt_TCPOPTSTRIP +xt_tcpudp +xt_TEE +xt_time +xt_TPROXY +xt_TRACE +xt_u32 +xusbatm +xz_dec_test +yam +yealink +yellowfin +yenta_socket +yurex +zatm +zaurus +zd1201 +zd1211rw +zforce_ts +zhenhua +zl10036 +zl10039 +zl10353 +zl6100 +zlib +zr36016 +zr36050 +zr36060 +zr36067 +zr364xx +zram +zte_ev --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/powerpc/powerpc-e500mc +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/powerpc/powerpc-e500mc @@ -0,0 +1,16532 @@ +EXPORT_SYMBOL crypto/gf128mul 0x0c2f123f gf128mul_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x1068004b gf128mul_bbe +EXPORT_SYMBOL crypto/gf128mul 0x2f2889a0 gf128mul_init_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x384ef9ce gf128mul_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x56af0dbd gf128mul_x_ble +EXPORT_SYMBOL crypto/gf128mul 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL crypto/gf128mul 0xbd17a0df gf128mul_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0xc0890413 gf128mul_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/atm/suni 0x6fe84a28 suni_init +EXPORT_SYMBOL drivers/atm/uPD98402 0x6955548d uPD98402_init +EXPORT_SYMBOL drivers/bcma/bcma 0xe81785f4 bcma_core_dma_translation +EXPORT_SYMBOL drivers/block/drbd/drbd 0x127a5901 drbd_set_st_err_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x35131b36 drbd_role_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x7730f22d drbd_conn_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0xaf27bebf drbd_disk_str +EXPORT_SYMBOL drivers/block/paride/paride 0x0300a23f pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0x10a51b15 pi_write_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x3502da60 pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0x3a526428 pi_read_block +EXPORT_SYMBOL drivers/block/paride/paride 0x4aeb7bf2 paride_unregister +EXPORT_SYMBOL drivers/block/paride/paride 0x5142fc25 pi_read_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x89af5313 paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0xa1c12ae8 pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xab1a82d1 pi_init +EXPORT_SYMBOL drivers/block/paride/paride 0xd1221a65 pi_disconnect +EXPORT_SYMBOL drivers/block/paride/paride 0xe61ee8bb pi_release +EXPORT_SYMBOL drivers/block/paride/paride 0xf5521a1f pi_write_block +EXPORT_SYMBOL drivers/crypto/caam/caam 0xfd2b02dc caam_get_era +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x23a39064 split_key_done +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x3778670e caam_jr_free +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x38abbe04 gen_split_key +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0xbb030d6e caam_jr_strstatus +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0xd674e8e0 caam_jr_alloc +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0xeb27bc23 caam_jr_enqueue +EXPORT_SYMBOL drivers/crypto/talitos 0x0c3cae41 talitos_submit +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x4ef08b3d dw_dma_get_src_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x63bf19bc dw_dma_cyclic_free +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x6e1aa667 dw_dma_cyclic_prep +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x76df2988 dw_dma_cyclic_start +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x7840b161 dw_dma_get_dst_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xc3a92f45 dw_dma_cyclic_stop +EXPORT_SYMBOL drivers/edac/edac_core 0xfe95021f edac_mc_find +EXPORT_SYMBOL drivers/edac/mpc85xx_edac 0x90764c9d mpc85xx_pci_err_probe +EXPORT_SYMBOL drivers/firewire/firewire-core 0x02d1efe9 fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0x04dd92ce fw_core_add_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x136efaf4 fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0x16e91e21 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1bb4374e fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2237b06b fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0x22ac35b7 fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2faac34d fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x30a8fe1e fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0x33d58899 fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x37ff2b5c fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3962d799 fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3c56ef91 fw_workqueue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4d5d4eca fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4f2827c7 fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x532181cb fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6211eb2a fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x65c9438b fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x760773ae fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7c0e581d fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7e431b14 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x83ad0c68 fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x90863005 fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0x91956f57 fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x953ed8ff fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9d7e8819 fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xaef4061f fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb42222ec fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc20bdb24 fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc6054ca6 fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0xcff7aa82 fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd723d679 fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd867497b fw_iso_resource_manage +EXPORT_SYMBOL drivers/fmc/fmc 0x00603c34 fmc_scan_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x3815bb16 fmc_driver_register +EXPORT_SYMBOL drivers/fmc/fmc 0x47266331 fmc_reprogram +EXPORT_SYMBOL drivers/fmc/fmc 0x9ce8b46b fmc_device_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0xa01c68ec fmc_show_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xbeefa30f fmc_device_register_n +EXPORT_SYMBOL drivers/fmc/fmc 0xc196b330 fmc_driver_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0xc4e07287 fmc_find_sdb_device +EXPORT_SYMBOL drivers/fmc/fmc 0xce84a4e2 fmc_device_unregister_n +EXPORT_SYMBOL drivers/fmc/fmc 0xdca13d2a fmc_free_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xe3e24c74 fmc_device_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00025916 drm_mode_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00667d8a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x026c0d6b drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03fd6fa1 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x04d3f76b drm_mode_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x04e0b4b7 drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05c45e1c drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x075c48bd drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ad357a4 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ae4b94c drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0b094c2e drm_edid_to_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0b2d2706 drm_rmmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c532637 drm_pci_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d45342d drm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d746f16 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ec527fc drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0eec6e79 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fccafb1 drm_global_item_unref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x102d6dd1 drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10751235 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12441b00 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12c6276a drm_buffer_read_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13cdaadb drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x142b8b35 drm_buffer_copy_from_user +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a9a178 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1653d623 drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0x175f2813 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0x17944156 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x179ce519 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x189f6401 drm_mm_debug_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x194eadaa drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19e44324 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a770ac3 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1c5fc643 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x202e2abb drm_vblank_pre_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20645642 drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x21b5368a drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2241f2a9 drm_addbufs_pci +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22a279c5 drm_select_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23359a6b drm_agp_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2435932e drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x273228cd drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x27764e47 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x27da67a4 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29243a48 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x297ce93c drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29ad006c drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a053f4f drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a942ab2 drm_mm_insert_node_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2b867fda drm_pcie_get_speed_cap_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2c6975ed drm_ati_pcigart_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d80be4d drm_mm_init_scan +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7a4300 drm_rgb_quant_range_selectable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ee29e81 drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f0b064f drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f20186c drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3221ccf6 drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x33806e62 drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x33af5b6e drm_pci_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x33bc84c0 drm_unplug_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x346127a7 drm_global_item_ref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3483f425 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36f91ef3 drm_mm_clean +EXPORT_SYMBOL drivers/gpu/drm/drm 0x388ab50b drm_mm_dump_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38a4f7ae drm_format_num_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ac1fef9 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ae7b2d0 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b9d009a drm_format_plane_cpp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d4b8108 drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eb2bc97 drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eb37b9d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x42269f83 drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x42c77bff drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43384bd9 drm_buffer_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x448f2bd8 drm_agp_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x449401c3 drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0x451be2fc drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4671a2b8 drm_core_reclaim_buffers +EXPORT_SYMBOL drivers/gpu/drm/drm 0x46b07fa8 drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49546658 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x498dcb5e drm_ut_debug_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49fabf0d drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4bc2e143 drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c511235 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e4a8d11 drm_rmmap_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ea1f5a2 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f112c5b drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4fb25ff2 drm_framebuffer_unreference +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e28c07 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0x526f6f71 drm_rect_calc_hscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54688b3a drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54b04e5e drm_mode_create_dirty_info_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54c991f9 drm_platform_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55e703e6 drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x561b4e79 drm_get_connector_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56f533d3 drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c2735c6 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5daba919 drm_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f891ba9 drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6090be61 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x625c8470 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x629c05e1 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x64ebb203 drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x651b5b86 drm_core_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66803841 drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0x671364a6 drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x68b9fcd5 drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6900d335 drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6a113d8c drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b6d7375 drm_timestamp_precision +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c2a1f9f drm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cee2e42 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6dc561eb drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6dcd6907 drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e12073e drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e4ec065 drm_idlelock_take +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e599e47 drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6ec7457d drm_mode_group_init_legacy_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x720aec76 drm_bridge_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7243a1b1 drm_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x73c5ed32 drm_idlelock_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75dbc006 drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75e6696f drm_addbufs_agp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75fb1475 drm_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0x771749d1 drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x796dd9a4 drm_pci_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a4e7297 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7b0ca8fb drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7bca14f6 drm_framebuffer_reference +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7ce62275 drm_addmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7ef14e5a drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80618262 drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81ba930c drm_mm_init_scan_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x82e92db0 drm_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x86cd31e7 drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x870ee720 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x892540df drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x896690de drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8bb1ac1e drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8cc75031 drm_connector_unplug_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dc0fbdc drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8de13715 drm_format_vert_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dfb019d drm_buffer_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8e84664c drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8eeefd66 drm_core_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8eff9111 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f7df3a7 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x90274bce drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9053c70f drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9358b0ff drm_bridge_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x959e7fa3 drm_get_last_vbltimestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96a3d399 drm_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96d9cd04 drm_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9745d638 drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9972db48 drm_rect_calc_vscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x997aa2f0 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a1f7b73 drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b8ba6f8 drm_mode_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d49890a drm_agp_bind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d70fc2a drm_rnodes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9dace6df drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9eccfe56 drm_mode_hsync +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9efc26a3 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1369bec drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1f4e9e6 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa28078b2 drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2f4d1f8 drm_prime_destroy_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5c61dc0 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5dbd572 drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6aa700d drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa96acfcb drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaea56d2a drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafb0cb6f drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafcc7104 drm_mode_connector_detach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb117cd4a drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb375fcb1 drm_agp_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4fae00d drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb572a9f0 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6506726 drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6d02bd0 drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb95beb55 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb966691b drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9e41a4d drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbaf89cb1 drm_get_pci_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbc4d3735 drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbdf0f799 drm_pci_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe001c53 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc017c2e7 drm_agp_unbind +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc053f4b6 drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4000f9f drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc40c5de2 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc414c422 drm_vblank_offdelay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f7cc11 drm_vma_offset_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc882ef9e drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc991c6a6 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca45efbc drm_format_horz_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca5af04e drm_vblank_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcaf68746 drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcc814d19 drm_get_encoder_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xccfb90ad drm_ati_pcigart_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd0fc417 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcec158f0 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf3344db drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf9bab54 drm_agp_bind_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd10d5fc4 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1111f44 drm_global_mutex +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1abf290 drm_sysfs_connector_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1c4909f drm_mode_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1d887b2 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2335101 drm_fb_get_bpp_depth +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd3d1214c drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4a120ab drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd73d2669 drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb5a5852 drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb5d556f drm_crtc_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbb5a9f5 drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc97bfba drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2ef97e4 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe36074e4 drm_agp_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe4c8ce59 drm_getsarea +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe59f8ce9 drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6f46e6e drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7197773 drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7914bfa drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe9990999 drm_prime_init_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec1ab10b drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec69ee7c drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed28ccb2 drm_agp_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed622fa4 drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee6f839c drm_calc_vbltimestamp_from_scanoutpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeeb1cd6e drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeec29470 drm_platform_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefdf9b69 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeff6d026 drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf08d712a drm_mode_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf15ca24d drm_vblank_post_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1832e9c drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf219f21d drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf268dec4 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3b03f94 drm_core_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf446a0e2 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf4dd063e drm_dev_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf5bc509f drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6d3a423 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6d7b81b drm_sysfs_connector_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf7491084 drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf8c6138a drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb497216 drm_mm_insert_node_in_range_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb4a6cb8 drm_agp_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfcdad544 drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd063935 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfdd3a10b drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe2c7b13 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe4a68c7 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffc6c87a drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x069bb0b2 drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x07cd96b3 drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x097c6467 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x098e47d2 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f96ec70 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x163251c8 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x16ec6ce5 drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x19d4fe5f drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1cdb8820 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1fdebd82 drm_fb_helper_fill_fix +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x23afbf9a drm_fb_helper_fill_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2828de42 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x28c131a4 drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2ba76f8d drm_fb_helper_single_add_all_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x30751dab drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x328aec4f drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x343c58a2 drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34871adf drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x488d1a92 drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5448eacb drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5f020663 drm_fb_helper_restore_fbdev_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6344ffd0 drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x711a004a drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84e924ba drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x86310d39 drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa1d3d342 drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa4afa8d8 drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa53938c3 drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa5882c18 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa77858bb drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8d6809d drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xac8da39e i2c_dp_aux_add_bus +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xadbba547 drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb69f6d2d drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc1e0d8bc drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc3d8dde0 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcf5b49aa drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xddb3ec6f drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe7f81c98 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xff3506b1 drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x44b218e4 drm_usb_exit +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0xb41a19f3 drm_get_usb_dev +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0xb4227962 drm_usb_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0226fc88 ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x132b05be ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x136f59fb ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x17ddac51 ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1e3d50c7 ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x20579ca3 ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2281f574 ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x23b4e54a ttm_bo_synccpu_write_grab +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x253973c8 ttm_bo_synccpu_write_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b54aa9a ttm_object_file_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3928d136 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x463f8812 ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x485a5bc0 ttm_ref_object_add +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4fe55235 ttm_bo_add_to_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5030a617 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x54ec1183 ttm_fbdev_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x55f05f24 ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x57cb0ff2 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5a8fdfea ttm_vt_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5cf59609 ttm_bo_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5e559014 ttm_agp_tt_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x64acf1c3 ttm_mem_io_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x67b1d568 ttm_bo_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6dd080ce ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6fcb5523 ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x70a01504 ttm_bo_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x721e7d93 ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7d55da85 ttm_read_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7ea99e1a ttm_agp_tt_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7eec46e3 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80cc6b1d ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80d86f0e ttm_object_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x815db251 ttm_mem_io_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x84a13931 ttm_write_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x868991f8 ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x880a15ad ttm_base_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x89a443de ttm_write_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8d14adbf ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x90019a68 ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x91633448 ttm_prime_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94894449 ttm_base_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9553017a ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x998e45c0 ttm_ref_object_base_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x99cf33ce ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9a5ef744 ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa2a129fd ttm_suspend_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa595de34 ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa73de2a9 ttm_vt_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa780b89a ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaa440ef1 ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb204fc1f ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb80376ce ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb83c6470 ttm_lock_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb8b4682b ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb9bb95a1 ttm_bo_del_sub_from_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc103006a ttm_object_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc22e9ad0 ttm_mem_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc2d61110 ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc47b0525 ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc5aa5d2b ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc5f0c2da ttm_read_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xce6e43a8 ttm_base_object_lookup_for_ref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcefd935e ttm_mem_io_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd1bc317d ttm_mem_io_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7cd26e1 ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7e51f42 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7f51742 ttm_suspend_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd8edb115 ttm_base_object_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe48596a3 ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe5013312 ttm_agp_tt_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe7a886ac ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xec1cef1c ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xef59405f ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf1338e51 ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfb7fab47 ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfbc2c5ec ttm_object_file_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfdf1b73b ttm_mem_global_release +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x0903c239 vid_from_reg +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0xef1c781c vid_which_vrm +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x5196b7fe i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0xc32f4141 i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0x227a0120 amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x7db0ed9c st_accel_common_probe +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xf5402f3f st_accel_common_remove +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x053e2bd6 hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x1f520753 hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x27bc9c4b hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x2a51dfbd hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x70914620 hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x8429b0f2 hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xa1d4df51 hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x10d60140 st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x1553024b st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x18a1e00b st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x287af543 st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x2f00c6d9 st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x345d8d34 st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x3a63c694 st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x4aeb61ba st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x781ba0f0 st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x8ac15b06 st_sensors_sysfs_get_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x8c521dcd st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xa9d979a8 st_sensors_get_buffer_element +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xb2f6169b st_sensors_sysfs_set_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xba8e0390 st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd5fdb89c st_sensors_check_device_support +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0xbaf45521 st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0x4969507e st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x2027a68b st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x5d455256 st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xc159cd26 adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xdce68d21 adis_enable_irq +EXPORT_SYMBOL drivers/iio/industrialio 0x02054de6 iio_buffer_store_enable +EXPORT_SYMBOL drivers/iio/industrialio 0x0ea6b7a8 iio_buffer_show_enable +EXPORT_SYMBOL drivers/iio/industrialio 0x1ddb55e5 iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0x2ae50b77 iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x4d3e12dd iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0x56d63c8e iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x5e1ccf87 iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x698e0c5b iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x6ef0a438 iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x7099d5db iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0x7933c7fb iio_buffer_read_length +EXPORT_SYMBOL drivers/iio/industrialio 0x9243591a iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0x978fea21 iio_buffer_register +EXPORT_SYMBOL drivers/iio/industrialio 0x99e04540 iio_buffer_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xa6bc0ef2 iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0xba6e738e iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0xc3f0d19a iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0xce2e406c iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0xd939891f iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0xdb505cb3 iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xf0fb098c iio_buffer_write_length +EXPORT_SYMBOL drivers/iio/industrialio 0xf1cb475e iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0xfce591da iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x29f9cdf4 iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0xe645c549 iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x6429ae74 iio_kfifo_free +EXPORT_SYMBOL drivers/iio/kfifo_buf 0xe0b85249 iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xe5a81af8 st_magn_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xf44970d7 st_magn_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xec19d9d8 st_press_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xf6fa9b47 st_press_common_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x049ace30 rdma_addr_find_smac_by_sgid +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x04b8b6d7 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x11861452 rdma_copy_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1c3c0ad3 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1ea5767b rdma_addr_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x273f4cca rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x32a8402c rdma_addr_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x446fd7c9 rdma_addr_find_dmac_by_grh +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x59252c9d rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4213ac77 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x444039a6 ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4a7fda21 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x5402209b ib_send_cm_apr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x638f3767 ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x650bf63f cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x6a2fb874 ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x7ae9a2f4 ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x81e49cd9 ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x872dda37 ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x96a51f03 ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x972d7e47 ib_send_cm_lap +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x996602db ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9ad1892b ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xa5b0d271 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xe23b120c ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xf2a465af ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x00ab64f2 ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x04eededf ib_alloc_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x05433c19 ib_alloc_fast_reg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06c6dc31 ib_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06c82fcf mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c1b9ac1 ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x106fe5ea ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x13a29eb0 ib_create_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14f84918 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x171f99f1 ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x185b85ad ib_query_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x192ee335 ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e491a04 ib_unmap_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x255b1f2c ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x263d669e ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a590aaf ib_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2b137528 ib_fmr_pool_map_phys +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2bcd8f5a ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ed6e386 ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2fe32fe1 ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x30942b1d ib_create_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x312f2806 ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x354b0388 ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x38e37972 ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x41478fa7 ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x43264d4a ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x475ccd3c ib_modify_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x47f046d1 ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4d7914a7 ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4f93d65e ib_query_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50dbc447 ib_flush_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x520b2638 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x52d6d76d ib_destroy_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x55ab1900 ib_destroy_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x55f097bd ib_resolve_eth_l2_attrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x585882ea ib_create_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5b3c640c ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5fdb0e1a ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x60937708 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x62b653f2 ib_get_dma_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6be4a246 ib_destroy_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e030e26 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7ddf5875 ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7ea0b80f ib_dereg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7eaa4459 ib_dealloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x82a6fd95 ibnl_add_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x82e6c009 ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86c45b5f ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x87448c2d ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8b48ef91 ib_find_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8c4b6abf ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8d3a1b58 ib_destroy_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x922ef8b9 ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x95527265 ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x95823e7a ib_fmr_pool_unmap +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x99d3c5ee ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x99db591f ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa0ea222a ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa29ee4a8 ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa4723d68 ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa5fe2f6b ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaae3cfe0 ib_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac217df9 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae5961b4 ib_get_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae88c55c ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaf311e0f ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb0b434d4 rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb1a312e1 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb76956e5 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb987ccaf ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbdf95769 ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbeaaefed ib_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc32b59ff ib_destroy_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc3ef977a ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc67f14a5 ibnl_remove_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc9257416 ib_dealloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd2ab05d8 ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd32d18ad ib_free_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xddf953d0 ib_reg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe09cbc13 ib_alloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe598a06f ib_rereg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5cbdec3 ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe894326f ib_dealloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xea2a8a2b ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xeac315c4 ib_get_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xec0b5568 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf284cbe5 ib_alloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf54b6da6 ib_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfc150956 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfe62f987 ib_init_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x3b2e2bf1 ib_register_mad_snoop +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x3d660d90 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x406b9fe7 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x5e09444a ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6a103fec ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6f077fcf ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7b5d4b7a ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x80321242 ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x946d5d27 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xb4bdd429 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xb50d3eef ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xb5fd50f9 ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xc98f6116 ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xd4dba0fc ib_process_mad_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xfd79985b ib_redirect_mad_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x22f07253 ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x2383110f ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x24222f21 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x31a6f553 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x5328d7a6 ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x576fdbac ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x98d1fbd8 ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x9a1cd50d ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xd715ee17 ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xddc330e7 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xe9091c55 ib_init_ah_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xf2ce4ae1 ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2569d757 ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x52a6ce77 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7971c00e ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe350f2aa ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x0c17fb7a iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x487027eb iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x666a1f3e iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x700d34cd iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x8e9f3834 iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xafd08b59 iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xd2cfa868 iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xe015a83e iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x02fa1663 rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x28306afd rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x30ef2af8 rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4bef45f3 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4ca80d4b rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x555b6b72 rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x5ff9afbf rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x66a99c5e rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x6d063741 rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7439e1b6 rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x74844d07 rdma_set_ib_paths +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7bd5d23c rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7dfa48ac rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x98fdad9f rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x9c6b62a7 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xada99331 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc28c9dd8 rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd192be35 rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd344d30a rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xeac4af1b rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf76200ed rdma_set_service_type +EXPORT_SYMBOL drivers/input/gameport/gameport 0x0fb3b729 __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x44a95771 gameport_start_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x53ac6785 gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x830a7d9b gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0x8832bc55 __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xda084aec gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0xeab4f11f gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xec212f66 gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0xec835ae5 gameport_stop_polling +EXPORT_SYMBOL drivers/input/input-polldev 0x05ee5c99 input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xd02453d8 input_unregister_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xd07bf01d input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xd8eea102 input_allocate_polled_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0x43d575b7 matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x3e234598 ad714x_disable +EXPORT_SYMBOL drivers/input/misc/ad714x 0x4db0b435 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/ad714x 0xb7105fb2 ad714x_remove +EXPORT_SYMBOL drivers/input/misc/ad714x 0xf747d7a2 ad714x_enable +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x892d76b2 cma3000_resume +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x89d9444e cma3000_exit +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xca3f100a cma3000_suspend +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xd02023a0 cma3000_init +EXPORT_SYMBOL drivers/input/sparse-keymap 0x2e4ba2da sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0x52005e6e sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0x5d53cdf2 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x74b46a71 sparse_keymap_free +EXPORT_SYMBOL drivers/input/sparse-keymap 0x9de7f0c2 sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/sparse-keymap 0xae057182 sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x47508174 ad7879_probe +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x97f83edf ad7879_remove +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0xe80b3da3 ad7879_pm_ops +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x00e9a1e6 capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x04403fcf unregister_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x14f2aa5a capi20_get_version +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x194ee4c6 capi_ctr_down +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2b8eab1f capilib_free_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2baa6586 capilib_new_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x31c24aa4 capi20_isinstalled +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x47d3fc51 capi_info2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x4e1acbfb attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x50b33ca4 capi_cmsg2message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x568e1e23 capi20_register +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6057c6f3 capi_message2cmsg +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x608f50ed detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x62e32d43 capilib_data_b3_conf +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x71e8d5ba capilib_data_b3_req +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7a26a8b2 capi_ctr_suspend_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7a33596c capi20_get_serial +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7e6f1307 capi20_get_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x8f699913 capilib_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9ca96f87 capi20_put_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9f823278 register_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xa7c4fd6c capi_message2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xaa165d27 capilib_release_appl +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb19fda8d capi_cmd2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb609ee5a capi20_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb60e5e5f capi_cmsg_header +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc10fe128 cdebbuf_free +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe19a11ac capi20_get_profile +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe5afe67c capi_ctr_resume_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe8ad9bd1 capi_cmsg2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xed061606 capi20_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xf91f7aa2 capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x07f7b7f3 avmcard_dma_free +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x2e2463a4 b1_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x366c9502 b1_parse_version +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x3ed0618f b1_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x63261ef2 avmcard_dma_alloc +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x65c8ff2e b1_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x68acc56b b1_free_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x6c74c74c b1_getrevision +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x829e0abc b1_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x85f09690 b1_irq_table +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x90eeaf28 b1_load_t4file +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xb390e760 b1ctl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xb645a04d b1_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xdfd28376 b1_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xe209c7ab b1_loaded +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xe347e0a8 b1_load_config +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xf6b1c1f4 b1_alloc_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xfa10fee4 b1_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x18d4463a b1dma_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x473b0f3d b1dma_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x5e631e84 b1dma_reset +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x7a0034e0 b1dma_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x84970237 b1dmactl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x904bd2bb b1dma_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x92bc990b t1pci_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xa607c5af b1dma_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xaad2cc9b b1pciv4_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xd6f9f1ea b1dma_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0x29562993 b1pcmcia_delcard +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xaec3240e b1pcmcia_addcard_m1 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xea620116 b1pcmcia_addcard_m2 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xf14bf8b1 b1pcmcia_addcard_b1 +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x2974ead1 DIVA_DIDD_Read +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x7ab59853 proc_net_eicon +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x25ed6d10 mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x7189757a mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x9ff472a7 mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xcb27ac33 mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x56917029 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x85454c01 mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x07f4f2ce hisax_unregister +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x148f0c99 FsmFree +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x2d08d5b4 hisax_init_pcmcia +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x7f29ce36 FsmInitTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x93a64734 FsmChangeState +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x9df0cd27 FsmEvent +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xe227344e FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xee93522c hisax_register +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xf0a16657 FsmNew +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xfc27303b HiSax_closecard +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xff2db2cf FsmDelTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x0bdf23e5 isacsx_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x12f9222b isac_init +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x214a9ef7 isacsx_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x3f3b323a isac_d_l2l1 +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x4c9bb7b5 isac_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xc3432b22 isac_irq +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x1756eb69 register_isdn +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x46458501 isdn_ppp_unregister_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xaffa5523 isdn_ppp_register_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xfa06820f isdn_register_divert +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x3b71e4fc isdnhdlc_decode +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x59cc8a7e isdnhdlc_out_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x8ee38862 isdnhdlc_rcv_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0xfd9d4c09 isdnhdlc_encode +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x06ab4289 queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2348cc3c mISDN_FsmFree +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2bed2f55 mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x3bf5ff4e mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x41b22249 mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x42766785 bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x43a33ca0 mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x45df85e8 mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x54451388 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x568959d9 recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x614ede30 mISDN_FsmAddTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6ed0e1bd recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x826d966e mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8a4e99fb mISDN_clock_update +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x918506aa bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x96309324 mISDN_FsmDelTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9ac75b41 recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9c1032e1 get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb1141fcd create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbb55b365 mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbf1f5b03 mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc85c56aa recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd285995f mISDN_clock_get +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd5145151 mISDN_FsmEvent +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe613f430 mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe87943cf mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xeda3bf25 mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf3bde545 recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf663542f dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf9e7832f mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xfa086340 get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xfd0dae91 mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x01087af0 mISDN_dsp_element_unregister +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x60721da7 dsp_audio_law_to_s32 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xa215f1b2 dsp_audio_s16_to_law +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xb98308d8 mISDN_dsp_element_register +EXPORT_SYMBOL drivers/md/bcache/bcache 0x6bb4059e closure_sync +EXPORT_SYMBOL drivers/md/bcache/bcache 0x89fc25aa closure_sub +EXPORT_SYMBOL drivers/md/bcache/bcache 0xaa8901f3 closure_wait +EXPORT_SYMBOL drivers/md/bcache/bcache 0xe3c17af1 __closure_wake_up +EXPORT_SYMBOL drivers/md/bcache/bcache 0xebe492ef __closure_lock +EXPORT_SYMBOL drivers/md/bcache/bcache 0xfb539ad3 closure_put +EXPORT_SYMBOL drivers/md/bcache/bcache 0xfc4972d8 closure_trylock +EXPORT_SYMBOL drivers/md/dm-log 0x44291326 dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0x9952d659 dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0xafd3501b dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-log 0xb3fea12d dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0x2a0d44c9 dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x2f36de48 dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0x6ebb32af dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0xaf896b51 dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0xce93ab3c dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0xfcc87ac1 dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/raid456 0x206821da raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x24075e0a flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x4073424c flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x47fcf7ce flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x59e2b65c flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x5fc84df7 flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x61722bf4 flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x69dff5c2 flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x9ed8f405 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xbea31863 flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc92fbe55 flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xd6a4bfea flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xe8c78155 flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xeb10efb8 flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x495e4b0c btcx_calc_skips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x9e8bccea btcx_riscmem_alloc +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xad2fe38b btcx_sort_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xc368f8e6 btcx_align +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xcae915d1 btcx_riscmem_free +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xcda0ded2 btcx_screen_clips +EXPORT_SYMBOL drivers/media/common/cx2341x 0x1ca0c084 cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0x2f25eee2 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0x32ad6208 cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0x3db8be82 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cx2341x 0x5b88faf6 cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0x61d4f020 cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0xa79937fe cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0xabd94483 cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc184ec1e cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf76ce95 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf8b77a4 cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0x75695f8c cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x4c63f1f9 tveeprom_read +EXPORT_SYMBOL drivers/media/common/tveeprom 0x6f1e330a tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0135fce1 dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x14bd4618 dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x17523ce7 dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x19591134 dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x22d6ce4a dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x23634a89 dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x28ee2ae8 dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x361a7512 dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x365441d0 dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x39353a40 dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3f7224d5 dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4398f8b7 dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x499cd22b dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4d3b9a9c dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4f4cb854 dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5b09e345 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5f176f50 dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x61dded89 dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x62346235 dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x74a5a698 dvb_filter_pes2ts_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x762f046f dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x78d62338 dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7abc8645 dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7b7181ff dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7ba5d8bd dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7d69f63f dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7f61f52c dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7fddcb15 dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80e3832d dvb_filter_get_ac3info +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x81711731 dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8a924d7b dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8e47dce5 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa22bf053 dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xac4ca1b0 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc32f26d5 dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc584feec dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xcc7a6f7f dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd68a099e timeval_usec_diff +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdb576668 dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe2ad75a0 dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe5ae8707 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf4cd1671 dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf826deb0 dvb_filter_pes2ts +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf9be9f58 dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/a8293 0x30a08bca a8293_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9013 0x2160638c af9013_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9033 0x61f5c7ca af9033_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0x63020de3 atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x131bb59d au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x15367182 au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x3ac7b590 au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x424a1a6b au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xaad55db9 au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xbcf65fa8 au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xcff90546 au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xe3bec19d au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xffd039d0 au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0x21a1e3be au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0xc67428ce bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0xd83b5634 cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0xeb999129 cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0x9c43ebda cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x81d4d5ec cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x8bace45b cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0xb89aeedc cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xa5103ccf cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xd7140cef cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0x7111d9d2 cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x41dec856 dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x90043816 dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xc44015f9 dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xcf083699 dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xdd5718c4 dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x0588c33e dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x192ab4ae dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x1d9813d8 dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x261ea474 dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x366c24f5 dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x636d92e1 dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x884f1809 dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x8efbd5c5 dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x92aec386 dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x96314a60 dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x9a547d97 dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xa1c542b9 dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xc98e40eb dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xd6fa8c18 dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xecaaaafa dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0xc49b3aa8 dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x399355c7 dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x3fc49feb dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x85fedc2c dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x92e92387 dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xa531c2da dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xba37f9e9 dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x5c21baf6 dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x7c6b6ea5 dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x9c5a1749 dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x9ff8f1f1 dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x0a2864e5 dib7000p_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x0d0c17dc dib7000p_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x1e2cc560 dib7090_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x35e32ffe dib7000p_set_agc1_min +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x38ad7811 dib7000pc_detection +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x3ffd11f5 dib7090_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x88f96c26 dib7000p_get_agc_values +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x971e4ae1 dib7000p_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xa38a7ee2 dib7090_slave_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xbaac5c11 dib7000p_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xbd848a72 dib7000p_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xc89bfe41 dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xc9b88485 dib7000p_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xd61e3e6c dib7000p_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xe3ce0eae dib7000p_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xe6bc8ba8 dib7090_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x0b26d42f dib8000_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x2ae5a41a dib8000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x37f1ebcb dib8000_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x4e69a263 dib8000_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x5ee7afd9 dib8000_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x60e43999 dib8000_remove_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x647ea844 dib8000_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x656ce38e dib8000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x6cad6672 dib8096p_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x6df14e42 dib8000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x8e4dca83 dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x98b47845 dib8000_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa0d7614b dib8090p_get_dc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa3515c4f dib8000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa7ad9a45 dib8000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xc34cb8b4 dib8096p_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xc522a25b dib8000_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xcdda9efc dib8000_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xe0d9b161 dib8000_pwm_agc_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x86bd167f dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x89b48571 dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xad3ad91c systime +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xbc4c773a dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xd0a8b7ed dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xf8e6a4fa dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x1433f3e8 drxd_config_i2c +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0xc11809e2 drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0x268e04b3 drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0x88e1e1e5 ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0x2986f0e4 dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0x291d6c81 ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0x2cc26f08 isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0x508a4ba0 isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0x4008fce9 isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/it913x-fe 0xb4de1685 it913x_fe_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0x5b283758 itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0xa08bc45c ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0xa3de5cce l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0x5cf5b582 lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0x188a1e63 lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0x36257de1 lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0xa7a69ba4 lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x135747ef lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x9ff72132 lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0xa3ded190 lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0x170005d7 m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0x87a3ea06 mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0xfa64c9dc mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0xfcc2c059 mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0xca633d50 mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0x4b2726bc nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0x72d2180d nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0xca5dca5b or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0x3e504d00 or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0x140c5950 rtl2830_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0xd60cb294 rtl2830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2832 0x4ddaae58 rtl2832_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0x23fda3fc s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0x8f3abaec s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x2fbff222 s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x36a6354d s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0x8eae4dfa s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0x8ef303c7 si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0x5696ff67 sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0xce0a06bc sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0x2ab3ea1f stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0xa6c5f148 stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0x4387323f stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0x8f6fc783 stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0xefc8a452 stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0x11dfa6f0 stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x532770a0 stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x8be4509d stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0xcbc3cb0b stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x5e288261 stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0xc4e85dee stv090x_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0x6443d027 stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0x0e543c6c stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0xbdf4bff5 tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0xb61f22a0 tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0x6ced2333 tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x322de9ab tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0xe2417abf tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10071 0x6ab0ce21 tda10071_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0xb8ba563c tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0xc84aed49 tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0xd9216109 tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0x7499e6fe tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0x89a0530b tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0x558b0885 ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0x3cd47a05 tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0xf9193dbf ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0xd083ad9b ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0xcb9922cc zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0x28b343b7 zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0xa8e78814 zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x010562e2 flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x1efa06bc flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x32c12b25 flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x9f5a4145 flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xc83c73c0 flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xdee5d107 flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xe820a0b9 flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x5a08f425 bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x8120fa35 bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xb0d1db6e bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xd5d0bdef bt878_num +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xf933dff9 bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x11dc4b6d bttv_gpio_enable +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x697cd69c bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x7d4e131a bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xefa79401 bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x4bbfe78e dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x7feb98f5 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x80c2b3a8 dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x988b7f2d dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x9c9662ad write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x9e37adf0 read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xb790b25a rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xc81a473b dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe94b8c9c dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xf10eb791 dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0x4870a48c dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x18437ef2 cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xa25b1ff1 cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xaa559f29 cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xb385e049 cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xc5c3d97f cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x2b1b4cb5 altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x73360330 altera_hw_filt_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x85713849 altera_pid_feed_control +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x9247b72f altera_hw_filt_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x08f6ffef cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x3667c503 cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x5ae70198 cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x7759d0c7 cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x784853c3 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x9d83b01e cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xa43971c8 cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xc5d38741 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x011abea4 vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x90400c3b vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x0f376d13 cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x58267685 cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x629d3665 cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xacf1ec13 cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x102a4efa cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x10ebab5f cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x574b1f70 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x7dbb42c6 cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x82964f8e cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xcc8b0d49 cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x0157f84f cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x0756eddc cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x153a4e86 cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x18a82000 cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x22f33a32 cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4216fc84 cx88_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4b4f7561 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x54916f3c cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6141c8c5 cx88_tuner_callback +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6496d7ab cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x64d398e4 cx88_risc_stopper +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6520de43 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6a02e1e9 cx88_free_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x714fcaa4 cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x76417fe6 cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7642ed3c cx88_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x8661f967 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x904b8696 cx88_audio_thread +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x9c9b702d cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xad22154b cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc48eee14 cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc9d4e325 cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd8a60252 cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xe0b28f90 cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf61b7a18 cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf832171b cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x16aa3f52 ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x1bf07252 ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x1caadb30 ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x1fa6e395 ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x24a48c57 ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x3f8bbc5b ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x414de900 ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x51e69128 ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x631a6e70 ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x6b1a9558 ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x7f4a1716 ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x85ad807d ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x92ef170a ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb1289b3c ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb1f30813 ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc5d609e8 ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xede3c1d4 ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x04e83446 saa7134_tuner_callback +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x08945dee saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x09214a50 saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1211df5d saa7134_devlist +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1f712447 saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x5639e831 saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x5b397c21 saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x66a504f5 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x70c03300 saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x73039031 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x7ea13e36 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x8ab02eda saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x90d47dda saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x986b6d0d saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xace94904 saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x03f90582 ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xc3e4c127 ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x011a5ac6 videocodec_detach +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x629fc1bb videocodec_attach +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x8a5c8743 videocodec_unregister +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0xdbcc60d1 videocodec_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x151ca082 soc_camera_xlate_by_fourcc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x21ca9979 soc_camera_lock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x490923e1 soc_camera_host_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x58cdfaf6 soc_camera_apply_board_flags +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xb46e43d7 soc_camera_host_unregister +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xb68f6f3f soc_camera_power_init +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xc3919c23 soc_camera_power_off +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xd7eb670e soc_camera_power_on +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xf42d48a2 soc_camera_unlock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x25c52d97 soc_mbus_samples_per_pixel +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x2863728e soc_mbus_image_size +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x5f3e3558 soc_mbus_bytes_per_line +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xa9546115 soc_mbus_find_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xc8b28da5 soc_mbus_config_compatible +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xfe2c3a07 soc_mbus_get_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x02851de7 soc_camera_client_scale +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x1de71f5d soc_camera_client_g_rect +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x2e99fdb6 soc_camera_calc_client_output +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0xab2653a7 soc_camera_client_s_crop +EXPORT_SYMBOL drivers/media/radio/tea575x 0x382cf2bb snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0x669bcf50 snd_tea575x_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xbbb5079c snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xe917a416 snd_tea575x_exit +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x04dca738 lirc_unregister_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x1d5229e3 lirc_dev_fop_ioctl +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x2ae03d3c lirc_dev_fop_open +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x4f418aa2 lirc_dev_fop_write +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x65910038 lirc_dev_fop_close +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x810c3943 lirc_dev_fop_poll +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x84667dad lirc_get_pdata +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xc628bd26 lirc_register_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xca2d1721 lirc_dev_fop_read +EXPORT_SYMBOL drivers/media/rc/rc-core 0xaf684a1c ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0xb48b6144 ir_raw_handler_register +EXPORT_SYMBOL drivers/media/tuners/e4000 0x654f8ed8 e4000_attach +EXPORT_SYMBOL drivers/media/tuners/fc0011 0x254cd22a fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0x3f215aab fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x2b756047 fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x59f0e985 fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x80a963d8 fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/fc2580 0xefbd5cbe fc2580_attach +EXPORT_SYMBOL drivers/media/tuners/max2165 0x5461e7db max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0xc346b846 mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0xff35d792 mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0xd476bfd6 mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0xb6dd6567 mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0x9c97aca0 mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0x5b3246f1 qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18212 0xa64009c7 tda18212_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0xc25df13b tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tua9001 0x54b359ee tua9001_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x0cb4b189 tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0x4d89613d xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/tuner_it913x 0x69f3ed50 it913x_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0x753dfd72 xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0x08e34cc5 xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x94a8ae28 cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xa53e958e cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x27da3265 dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x2e99bd41 dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x57b1d162 dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x664dfa24 dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x6a05a69e dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x9a6d4a84 dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xdd208edc dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xedf0e903 dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xfe8f45f4 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x34fd4a25 dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x394fbdfd dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x440e55ae dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x4e24bbe2 usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x530f24e4 dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x656838fe dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x73499494 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x13e247e0 rc_map_af9005_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x5caec218 af9005_rc_decode +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xd4e288db rc_map_af9005_table_size +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x01a2d293 dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x10286512 dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x12fe2422 dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x1534ab96 dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x1bf166f6 dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x39ec8763 dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x78a4d642 dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x7fe1d52f dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb47559e0 rc_map_dibusb_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xd09e949d dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xe3526884 dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xf279f480 dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x8c8d4c22 em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0xac16ad57 em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x55bc4d2b gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x5c2f01b4 gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x92d5e65e gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9f353501 gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xb3eee127 gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xd2eb12bf gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xe0e50c0f gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xe53b2f73 gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x3ef008c7 tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x9a2ba4df tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xdc3f87b1 tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x999ffab7 ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0xb258fb7d ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x42c8e001 v4l2_ctrl_next +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x4adaf0f3 v4l2_ctrl_query_menu_valid_items +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x53c9394f v4l2_ctrl_query_menu +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x5f96a661 v4l2_ctrl_check +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0xabe27502 v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x1b65fa9d v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x589e1e9a v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xf6152f14 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x13615525 videobuf_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x1c804bd8 videobuf_dvb_register_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x65565321 videobuf_dvb_find_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xa4503f63 videobuf_dvb_get_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xe9668aaf videobuf_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xf41d8659 videobuf_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf2-core 0xc9f02eb4 vb2_querybuf +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x02ebbaa5 v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0b3f54d8 v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0c0afa0a v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0c828214 v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x140e371b v4l2_of_get_remote_port_parent +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x14c44a86 v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x159ffe00 v4l2_subdev_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x15b9b7cd video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1a16411c v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x240e4e8f video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2467cc6e v4l2_subdev_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x29dc4298 v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2b3ab2b3 v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2b53b777 v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x358b1ad9 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x35ee97c3 v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x36847d11 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3a22f0b8 v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3b40f3f5 v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3db7f213 v4l2_of_get_remote_port +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4181da43 v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x426fe69c v4l2_ctrl_add_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x43514292 v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4942e904 video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x495426ee v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x49ba46d7 v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x49cb8bd8 v4l2_subdev_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4bad815a v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4ca4897c v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5529112d v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x57a58d11 v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x597abe18 v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5e1163f5 v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6296560c v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x65e838df __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7a3cd015 v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7cb32ade video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7d8b92be v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7e4daef5 v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7f923f2a v4l2_of_parse_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7fc4c965 v4l2_subdev_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7fff3997 v4l2_subdev_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x824c2429 v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8367667c v4l2_subdev_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x852ef6c0 v4l2_subdev_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x86ec8730 v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x876f5c5c v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x87dc752b video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8999d170 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8c001bd1 v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8c6d7287 video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8cfffb1b v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x92e12bf5 v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9851d918 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9b90abf2 v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9f5b9814 v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa32f8d05 v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa378014a v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa3939e80 v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa5aacb57 __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xada438d5 v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb3f32ef4 v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb472e6a8 v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb90cbedf v4l2_of_get_next_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbac4a225 v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc27a8b1 v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbfc0f5f2 v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc0f17546 v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc12cf8f8 v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc4c4d8c6 v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcac7b98f video_usercopy +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2355039 v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe6fce6f2 v4l2_ctrl_merge +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf4eda742 v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf5eb0961 v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfa058656 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/memstick/core/memstick 0x097f5ad3 memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x1ad9e32a memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0x23fb90ea memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x411c4792 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0x4bfb64f4 memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x55f35bef memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5d820a02 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x84b58f8c memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x93580f03 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa5987a36 memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xb18a5778 memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xbecff1e8 memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0xef26d277 memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xf261f666 memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x01888b1f mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x0d7ee4a5 mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x11b4adc4 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x198b8592 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1b300408 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x221e904b mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x282d9d63 mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4526289b mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5c445129 mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6427b33c mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6d63227e mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x72b52645 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x765e302d mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x79f4d89f mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8b03e0d6 mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x966f40c8 mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9aa7208a mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa08513cd mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa1844b5b mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb07a646f mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb2ef0e98 mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb435249f mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb484129c mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb975a010 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xbc0984e5 mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc0e69f82 mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc47c22e8 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc578be5b mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc9a90189 mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd3748a23 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd9a92a75 mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xda436c7b mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xfa8f2e78 mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x014cd68a mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0a455d19 mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1044f372 mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2293dcf3 mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2a97b2d6 mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x30be52bf mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x33db8ce2 mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x362e041f mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x397dcfca mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3f2b8bda mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x406a9a20 mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4922b34f mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x58f24a24 mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x6ce3f383 mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x7608831d mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8460c920 mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x882d8dc4 mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x8f3f3d74 mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9a1675c9 mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9cb7b27c mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xaf9a6313 mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xbdf40d81 mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xdef9e8cf mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe6b9bb7a mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe97542bc mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf362092f mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf8b0028f mptscsih_remove +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2a843bef i2o_dump_message +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2aa7ed6c i2o_parm_field_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2fa75938 i2o_driver_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x369fb3f4 i2o_find_iop +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x3890609b i2o_parm_issue +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x3976835a i2o_status_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x525bab4d i2o_exec_lct_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x5c40f110 i2o_iop_find_device +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x5c6497d2 i2o_driver_notify_device_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x600125ea i2o_device_claim +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x6b1c3323 i2o_parm_table_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x8e8686c0 i2o_driver_notify_controller_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x91490150 i2o_driver_notify_device_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x9cb75aa9 i2o_msg_get_wait +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb1087b82 i2o_driver_unregister +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb449d99c i2o_event_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb4c00dcf i2o_controllers +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xe28f70d7 i2o_driver_notify_controller_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xe952729b i2o_device_claim_release +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xf955b956 i2o_msg_post_wait_mem +EXPORT_SYMBOL drivers/mfd/cros_ec 0x54b2ebc1 cros_ec_register +EXPORT_SYMBOL drivers/mfd/cros_ec 0x88508408 cros_ec_prepare_tx +EXPORT_SYMBOL drivers/mfd/cros_ec 0xd4d5a4b0 cros_ec_remove +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x818b86fe pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xe9bd3f7c pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0566348a mc13xxx_irq_request_nounmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0c4396ca mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x13a76454 mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x26a36d75 mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x4d43bb8a mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x5ad3c935 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x7717a901 mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb0ce5bf5 mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb7ebae51 mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xc4919f41 mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xd42460d8 mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xd6813a07 mc13xxx_irq_ack +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xf9404438 mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/tps6105x 0x54aac0da tps6105x_mask_and_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0xe7baf032 tps6105x_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0xe829c5c0 tps6105x_get +EXPORT_SYMBOL drivers/mfd/tps65010 0x02d4ad0f tps65013_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0x0c6ad2cf tps65010_config_vdcdc2 +EXPORT_SYMBOL drivers/mfd/tps65010 0x28485130 tps65010_config_vregs1 +EXPORT_SYMBOL drivers/mfd/tps65010 0x33739de7 tps65010_set_vib +EXPORT_SYMBOL drivers/mfd/tps65010 0x9fd44c69 tps65010_set_led +EXPORT_SYMBOL drivers/mfd/tps65010 0xb14080cc tps65010_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0xd5bb106d tps65010_set_vbus_draw +EXPORT_SYMBOL drivers/mfd/tps65010 0xe99b3f36 tps65010_set_gpio_out_value +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x71b71efb ad_dpot_remove +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x80eea5a5 ad_dpot_probe +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x58765536 altera_init +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x38c3097b ssc_free +EXPORT_SYMBOL drivers/misc/atmel-ssc 0xc44d4323 ssc_request +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x0e9755b9 pwm_channel_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5a8b82f9 pwm_channel_handler +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5d5c2951 pwm_clk_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x6a5e1f70 pwm_channel_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x73330c97 pwm_clk_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0xeb7f2c6f __pwm_channel_onoff +EXPORT_SYMBOL drivers/misc/c2port/core 0x5d1ade03 c2port_device_register +EXPORT_SYMBOL drivers/misc/c2port/core 0xa0922ae9 c2port_device_unregister +EXPORT_SYMBOL drivers/misc/ioc4 0xe1e1a4db ioc4_register_submodule +EXPORT_SYMBOL drivers/misc/ioc4 0xe94f0157 ioc4_unregister_submodule +EXPORT_SYMBOL drivers/misc/tifm_core 0x054edf42 tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x119e2d63 tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x38af2191 tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x39f86aa1 tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0x3bab0d60 tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0x4dfb460f tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x52d075a3 tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x68044cf2 tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0x875953da tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xa98bcdcd tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0xcb22ad79 tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xda3175b2 tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xe2e7d02c tifm_free_device +EXPORT_SYMBOL drivers/mmc/card/mmc_block 0x10b4d03c mmc_cleanup_queue +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x1c71e7e3 cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x6abdbc75 cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x96f23717 cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x13cd0534 register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x26c829d0 unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x53422d0a do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x5c6f2044 map_destroy +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0x3ea9291b mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0x75c19fb7 lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0x21b8831d simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0x126a0ee4 mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/mtd 0xf3f917ea mtd_concat_create +EXPORT_SYMBOL drivers/mtd/nand/denali 0x2cc04bbe denali_remove +EXPORT_SYMBOL drivers/mtd/nand/denali 0xb8d0264a denali_init +EXPORT_SYMBOL drivers/mtd/nand/nand 0x2fd9f7c4 nand_scan_bbt +EXPORT_SYMBOL drivers/mtd/nand/nand 0x4e563420 nand_scan_ident +EXPORT_SYMBOL drivers/mtd/nand/nand 0x58b2f8dd nand_scan_tail +EXPORT_SYMBOL drivers/mtd/nand/nand 0x87083b88 nand_lock +EXPORT_SYMBOL drivers/mtd/nand/nand 0x9be731ea nand_unlock +EXPORT_SYMBOL drivers/mtd/nand/nand 0xcccf0f25 nand_scan +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x158467fb nand_bch_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x70097aa0 nand_bch_free +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0xa4f735f8 nand_bch_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0xd2f21ee0 nand_bch_init +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x19d8db84 nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x3132ee65 __nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x3779c2c5 nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xb4b94377 __nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0x57a31e57 nand_flash_ids +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0xa336feb7 nand_manuf_ids +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x39a107a0 onenand_addr +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x4275cee4 onenand_scan_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x4bdd1b28 flexonenand_region +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x71b51236 onenand_default_bbt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x283d4237 arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x435e5cee arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6276e53a arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x71619e11 arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x71fc1ff4 arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x9018e430 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xb4d2835a arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xc2939e39 arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xd333ee9d alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xf16e22ce arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x06e11710 com20020_netdev_ops +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x4a244000 com20020_check +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xfb7bf961 com20020_found +EXPORT_SYMBOL drivers/net/dpa/dpaa_1588 0x44c29fd5 dpa_ptp_cleanup +EXPORT_SYMBOL drivers/net/dpa/dpaa_1588 0x6600fe0b dpa_ptp_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x35987b3f ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x3be7da14 ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x4e6930ac ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x55bc91bf ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x5ab7d4d5 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x5ba2a44d ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x66182089 __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x7b385f71 ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xcb5e0d43 ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xf5efe164 ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0xf769485c cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x1a110e24 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x341ba612 cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x54d28a4e dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x6c048de6 cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x6ea5a2c6 cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x8ebc62d9 cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x95644880 cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x97106a71 cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x9720c08a t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x9d1bd718 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xbeff4a81 t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xc9c8db6e t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xcbfd8c8e cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xcfed93dc t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xe357caee cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf5f48fe3 t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x15f85507 cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x17a79de8 cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2cbeb302 cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2f358e54 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x362a934e cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x434b9989 cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4c2e3573 cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x53a8460f cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6e2f6ec6 cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x78ffe293 cxgb4_enable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9478ac7a cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9b9193fc cxgb4_disable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb08240f3 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb2602f73 cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb4ca885b cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xbdce3a63 cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc34cc681 cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc4f4c775 cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc9ef4060 cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcd59452b cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd00e5a36 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd1595e42 cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xdcca1932 cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe0a15ed6 cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe3a7ca4b cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf078c680 cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf36f80cb cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf55dff29 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf962260a cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x0805a5a1 vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x0e712340 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x4f650da7 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x69e036dc vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9196d804 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xa44446b1 enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x4f200a36 be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x938d30c2 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xbab62e22 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/freescale/gianfar_driver 0x79f28897 gfar_phc_index +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x05ea1485 set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x07f597f9 mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0e3add7c mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x105c1823 mlx4_set_stats_bitmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x13ea4be7 mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2f468ae1 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x33d9c164 mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3ce1aa4f mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4c9dff9d mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x547e8fcc mlx4_test_interrupts +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x54857830 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6dbb642b mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x742de578 mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8071c37b mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8224c562 mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x91c06c82 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9ff037a9 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa1f4cdd7 mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa274b1f1 mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb92e1050 mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc1cda472 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcc5d93a3 mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd8f56de1 mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xed72a499 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0bdeead6 mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x23c791c7 mlx5_core_dump_fill_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x26875721 mlx5_dev_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x34a3dba0 mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x35489946 mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x363f898b mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3d716ecb mlx5_core_arm_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x519c13a7 mlx5_core_create_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x548b98aa mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x65cf0f47 mlx5_dev_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7627d093 mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7a49dc62 mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7bd6cb83 mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x98e49795 mlx5_core_get_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x99adc4eb mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e91aef9 mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa58f3c6a mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa7dd2ddc mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa8f5d157 mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xab2f54c5 mlx5_cmd_comp_handler +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb3aa0189 mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd522fdd6 mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd52877b2 mlx5_core_destroy_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd71416eb mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd8f27d1a mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe39d3f6c mlx5_core_query_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfa7a142c mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x4ef94973 hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x6f531709 hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x8c2b858b hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xc0d915f4 hdlcdrv_register +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xd9d0ebac hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x02946174 sirdev_write_complete +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x282ab936 sirdev_get_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x2b25a3e1 sirdev_receive +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x419c7453 sirdev_raw_write +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x5f4dd2dc sirdev_set_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x682e3118 irda_register_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x72b9900b sirdev_raw_read +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x75315d0e irda_unregister_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xa2457d5b sirdev_put_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xab7a2c8d sirdev_set_dtr_rts +EXPORT_SYMBOL drivers/net/mdio 0x22bce513 mdio_mii_ioctl +EXPORT_SYMBOL drivers/net/mdio 0x43e4defc mdio45_nway_restart +EXPORT_SYMBOL drivers/net/mdio 0x7577f992 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0xa1a29548 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0xb34a7575 mdio45_ethtool_spauseparam_an +EXPORT_SYMBOL drivers/net/mdio 0xc6b1163f mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0xddc98749 mdio45_ethtool_gset_npage +EXPORT_SYMBOL drivers/net/mii 0x2983b166 mii_check_media +EXPORT_SYMBOL drivers/net/mii 0x2cc453ff mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0x365f739c mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0x6106abad generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0x6489467e mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0x8fcefcaf mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0xcaa4106c mii_link_ok +EXPORT_SYMBOL drivers/net/mii 0xd227d116 mii_check_link +EXPORT_SYMBOL drivers/net/ppp/pppox 0x9166b280 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0x9e804569 pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xdacfbb94 register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/sungem_phy 0x70792ca1 sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x081f516c team_mode_unregister +EXPORT_SYMBOL drivers/net/team/team 0x0965c736 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0x6b9992aa team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0x6d14f5c9 team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0x7f5fdd8b team_mode_register +EXPORT_SYMBOL drivers/net/team/team 0x9f2baf3a team_options_register +EXPORT_SYMBOL drivers/net/team/team 0xabedc20c team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0xeff486be team_modeop_port_enter +EXPORT_SYMBOL drivers/net/usb/usbnet 0x561de61c usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/usb/usbnet 0x9ad6ea8d usbnet_manage_power +EXPORT_SYMBOL drivers/net/usb/usbnet 0x9c3ada61 usbnet_link_change +EXPORT_SYMBOL drivers/net/wan/hdlc 0x07e416c7 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0x0b89f104 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x3fdbd292 register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x68f76e9f hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x804b83c4 hdlc_change_mtu +EXPORT_SYMBOL drivers/net/wan/hdlc 0x961fe610 hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0xbb7c1e62 hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0xc9318a8d alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0xcf290cc0 unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xe9541052 hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0xfc4ef047 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x8fe90386 i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/airo 0x5e6e2641 stop_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0x67be3502 init_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0xdaa2d2c1 reset_airo_card +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x22bb18ee ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x319c6026 ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4e2481d5 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x53358ce3 ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x688c486f ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x79e766d2 ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x850a457c ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x90e9914f ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x97f8d73f ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xbd20445c ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xc3289039 ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xdd86daac ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xeb57de36 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xf5f2a1a8 dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0537cec1 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3398c2b4 ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5c1c3202 ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5eca2ea8 ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x72e4075c ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8246be6c ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x895f9dc2 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaf096710 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb359a289 ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0199ec46 ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x09d119dc ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x18cb2df6 ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x27cf1694 ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x39e02918 ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4c6ddcb4 ath6kl_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4e1380ee ath6kl_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x98a49510 ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x9ea61472 ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xa95ef74e ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xab7ddb29 ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xd0a80bec ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xf8d33161 ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xfa486d88 ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x2c78238d ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x43f0e727 ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x5bead248 ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x67bb1e66 ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x01a081d5 ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x03b1152b ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x07162cb9 ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x07d50a5a ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x086db2e7 ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x08788d52 ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0a28e280 ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0bf5ee1d ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0f4eccdd ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x146b7420 ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x14cd3b52 ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x152ed45d ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x16d7199f ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x17b568d4 ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1befa7d1 ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2295d434 ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2334035b ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2980c583 ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2a328fce ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2d546919 ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x30be9884 ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x33940b85 ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x36218b38 ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x38ea6d82 ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x396d34ed ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3ea2282c ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3ff0d62f ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x405567db ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x40bfd7c7 ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x43040344 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x44d22e50 ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x45fa616c ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x478b4f0b ath9k_hw_cfg_gpio_input +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x49f0847e ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4a783d8d ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4d93d417 ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5286f8d1 ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x52a2eacd ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5921a8cb ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5948ef61 ath9k_hw_cfg_output +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5b23b320 ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5e5c6c8e ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x64dafedb ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x67b3fde5 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x685183d9 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x756e5896 ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7b56f7cd ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7e45645a ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7e8e6be9 ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8112ae59 ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8162b18a ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8c27a32e ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x903378c4 ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9354aa43 ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x940aa2a9 ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x94204de6 ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9598de68 ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9868378e ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x993b9cf4 ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x99d2ee0e ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9c8634bd ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9e8debb8 ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9fe66414 ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa3a41169 ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa797ed2d ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaf614bb6 ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb1d62b9e ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb7a9ba60 ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb7fd3d49 ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb825806f ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc0c5c57a ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc2d9236c ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc7387ea2 ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc8259d7b ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc8a20b19 ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcb585dd9 ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xccb0da11 ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xce3fe769 ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd1bb5753 ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd46f4241 ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xda377ea5 ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe2de951a ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe4d14c14 ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe52f0593 ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe70374da ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe85b9bbe ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xea21b422 ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xef0d6061 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf0963281 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf14d7538 ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf23a9a6e ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf61a7084 ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf73b31cb ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf7c49802 ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf9921468 ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfa9ce53e ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfdaa156a ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xff80d0ed ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/atmel 0x0862c758 init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel 0x34143c81 stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel 0x71683cc7 atmel_open +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0x00feb9e4 brcmf_sdio_probe +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0x9758c0d3 brcmf_sdio_remove +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x1c959170 brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x1d0cc64e brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2dc227f8 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x5221d629 brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x5a8298ba brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x6c88dba5 brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xa59eb4a3 brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xcd5faee0 brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xde266aef brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xe6aceaa3 brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xed046fcf brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xf6b15186 brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xf6d7621d brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xf78c11fd brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x043a53b5 hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x06e01f69 hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x071aeb97 hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x0ad69602 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x112950ea hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x37648b5f hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x49847103 hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x51bdb40b hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x55db5e4d hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x5fc71ced hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x616f75f2 hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x61a5def7 hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x7355979d hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x842a97d4 hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa12ad27f hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb0dca651 hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb11310eb hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb2a945e0 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb97b27f4 hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc4a935ee hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc87c930c hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc8f4ffec hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc9629244 hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xd3fd0cdd hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xd642503f hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe3577189 hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xf0195e28 prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xf69ca77a hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x1694f83f free_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x2ccc6ab3 libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x3214f288 libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x465d16c3 libipw_rx +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x569fe317 libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x70828d46 libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x7ae5cbc0 libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x83ad5f86 libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x88304624 libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x8c2f9527 libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x9f11f09b libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xac1a2f8b libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xbd3b35ed libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xbe841a24 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xca07b1ac libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xce179236 libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xcfddc8f0 libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xe5585d00 libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xf7ba53e0 libipw_change_mtu +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xfc47ce8f libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xff316d28 libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x02a3a4c1 il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x038041ac il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x074515e0 il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x07c3c184 il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0824f2c8 il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0a039b4f il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0adfb4ea il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0b386231 il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0d06f0b8 il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0d65b9d7 il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0d730ef8 il_update_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0f88c250 il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x10bb7b64 il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x13f2c5f5 il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1422911f il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x17c06b76 il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1a709c04 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1aa2786c il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1bd2e0c0 il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2068d908 il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x29818cf2 il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2cb9a150 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2cfc5572 il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x313bf5ec il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3621df73 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x36c55b19 il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3c0c62fa il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3cc4c092 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x40aec693 il_force_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x42482f4d il_set_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x43a6f8f0 il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x44e280b7 il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x455eddbf il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4a3c78bd il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4a56f4b5 il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4aa39103 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4c76b266 il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x520b8aa1 il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x54fbd6a6 il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x564c6740 il_debug_level +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x566dc49a il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x584f3f09 il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5ea0b434 il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x601bb2cc il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x60b72c76 il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x61bbcf86 il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x646a99af il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x686f121d il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x759a3377 il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x790d4693 il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7a60c896 il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7a6e5220 il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7b37cbef il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7e6a6b69 il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7eecd3d2 il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7f2fd3bb il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x81889189 il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x871e9ee1 il_free_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8ea38459 il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8ef12516 il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x93d2175c il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9491d1fd il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x95ddb9f5 il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x95fa7963 _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x97b36615 il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa1676faf il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa2d37003 il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa4eb5a95 il_init_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa51c4d95 il_mac_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa7c00c88 il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xabf13311 il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb1a1182d il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb2c05c69 il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb481618a il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb8e8879e il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbd166bbd _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc1b6b8e1 il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc39cf12c il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc41cf095 il_apm_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc45826c3 il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xca13b394 il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcfb35cb7 il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd32def52 il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd7abfb69 il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd870ff79 il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdcd910f3 il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe435493a il_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xea700826 il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xead5b649 il_set_rate +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xecd882e2 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf0604f98 il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf0f18dd5 il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf1a2bd70 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf26dcc89 il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf501278b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf7f8272d il_leds_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfb3c9f72 il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfbb1e8cd il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfc1e087a il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfc5c3c2d il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfd740663 il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfddca90b il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x08ee1e7d __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0d9eb5ff __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0e7bc05f __tracepoint_iwlwifi_warn +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x201337b4 __tracepoint_iwlwifi_dev_tx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x249e4b06 __tracepoint_iwlwifi_dev_rx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x36dcef55 __tracepoint_iwlwifi_dev_iowrite32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x4919d1a5 __tracepoint_iwlwifi_dbg +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x67381a2a __tracepoint_iwlwifi_dev_ucode_error +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x79e9bf26 __tracepoint_iwlwifi_crit +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x7edec07d __tracepoint_iwlwifi_dev_ioread32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x8bfcc307 __tracepoint_iwlwifi_info +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x9a12c9c5 __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xc0827b2f __tracepoint_iwlwifi_dev_iowrite8 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xda36f3a4 __tracepoint_iwlwifi_err +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x024bc68d free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x0dcc309d orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x2ae504be __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x4f58aff1 orinoco_get_stats +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5c0587c6 orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5ca350a9 orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5dea5bf1 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x62e176ba __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x630c3b10 orinoco_open +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x685c1fda orinoco_up +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x6cbea198 orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x84f60359 alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x896ee660 orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x9c616881 orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xc8ab8cf3 orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xee8e5352 orinoco_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xf36edc31 orinoco_down +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/btcoexist/btcoexist 0x30a1e560 rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0122029b _rtl92c_store_pwrIndex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x02c7e982 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0691b87a rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x09efbe36 rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0e76ee0b _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1767a2d1 rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x216ed76a rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x280dd076 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x33a1f1aa rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3444063b rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3564387f rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x4db06056 rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x56c42a17 _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x5de7fcee rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x5e770a6b _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x63b7d75b rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x64a50e18 rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x6dad4791 rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x704901a2 _rtl92c_phy_dbm_to_txpwr_Idx +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7899f18b rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7ae023ac rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7aec31fb rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x85b3caf0 rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x884e6592 rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8b1acaf0 _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa7a47009 _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa976377e rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xabacebab _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb2155627 rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb3314d48 _rtl92c_phy_calculate_bit_shift +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb4d682e2 rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xba68b7e5 rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xbba227d8 rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc1a68d36 rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc27ebe14 rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc6886888 rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd1bbf15f rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xddd98e53 rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe3121876 rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe3f8f218 _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe9153e83 rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf57af6d7 rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x340ea43e rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0xb04d3273 rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x3eb1ab2b rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x82cff69b rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x9aa1a360 rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0xd42fe5b5 rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x1bbb0ad4 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x1c50e316 rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x207fbb70 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x38322c17 rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x46964f81 efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x50b38dc0 rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x50d389cd rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x514fc71c rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x681249d4 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x6bc947d2 rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x79188a02 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x8837b35a rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x8c5f3278 rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x8e776872 rtl_ps_set_rf_state +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x9881d806 rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x9ac14529 rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xa6df844a rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xac63934d rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xcd967867 rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xde51be88 rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xf081f21e rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xfbe75b35 rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x027cbdcc wl1271_free_tx_id +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x5df33765 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x93d36518 wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xccf3e95e wlcore_tx_complete +EXPORT_SYMBOL drivers/nfc/microread/microread 0x66e096c0 microread_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0x90cf3952 microread_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x5da0decf pn544_hci_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xd2f31dc7 pn544_hci_probe +EXPORT_SYMBOL drivers/parport/parport 0x11e844b2 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x12095124 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0x136eaf5a parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x1438e717 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0x226019c5 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0x2e8bf2a8 parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x30ec28d0 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x330d1025 parport_register_device +EXPORT_SYMBOL drivers/parport/parport 0x37dc101b parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0x3d63f8af parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x49137eae parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x4e6073b5 parport_read +EXPORT_SYMBOL drivers/parport/parport 0x5de134fe parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x6a47782a parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0x6b414d00 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0x7bd6dcce parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0x7e93fe04 parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x82e7ff0f parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x83f2c223 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x859b3db2 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0x93d7a41d parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0x9d26c0a3 parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0xac3e54fe parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0xba1660bb parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0xbf7fa00c parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0xc0e8b2f5 parport_claim +EXPORT_SYMBOL drivers/parport/parport 0xc12f5db9 parport_release +EXPORT_SYMBOL drivers/parport/parport 0xded6c608 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xe0bfd659 parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0xf9608b0b parport_write +EXPORT_SYMBOL drivers/parport/parport_pc 0x8233c593 parport_pc_probe_port +EXPORT_SYMBOL drivers/parport/parport_pc 0xffd69d17 parport_pc_unregister_port +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x072c66f1 pcmcia_request_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x11b8e5c4 pcmcia_get_mac_from_cis +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x42c8f859 pcmcia_loop_config +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x431fa37d pcmcia_fixup_vpp +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x46a778bb pcmcia_get_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x6498c360 pcmcia_map_mem_page +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x6a27579a pcmcia_disable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x6c25193e __pcmcia_request_exclusive_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x742f5665 pcmcia_parse_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x79c322e5 pcmcia_enable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x8e38f706 pcmcia_write_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x9039610a pcmcia_read_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x97790082 pcmcia_fixup_iowidth +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xa39daf77 pcmcia_request_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xbc291e3d pcmcia_dev_present +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xc7a5c49b pcmcia_register_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xe4f64a18 pcmcia_unregister_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xedf6663e pcmcia_request_io +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xfb2b3984 pcmcia_release_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xfefe22f2 pcmcia_loop_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x08ced9d8 pcmcia_socket_list_rwsem +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x212db8d2 pcmcia_socket_list +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x28e02d6d pcmcia_put_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x3fc34288 pcmcia_get_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x79ceaa28 pcmcia_socket_class +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x7ba2163e pcmcia_register_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x95aee095 pccard_register_pcmcia +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x9844b4c2 pcmcia_get_socket_by_nr +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcf97f3bd dead_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xdbe4fd38 pcmcia_parse_uevents +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xe5ddf2ea pcmcia_unregister_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xeda3aaf1 pcmcia_reset_card +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xfe3b2b8b pcmcia_parse_events +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x2fba3d2f pccard_nonstatic_ops +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x77043f6b pccard_static_ops +EXPORT_SYMBOL drivers/pps/pps_core 0x2881312e pps_unregister_source +EXPORT_SYMBOL drivers/pps/pps_core 0x99537418 pps_event +EXPORT_SYMBOL drivers/pps/pps_core 0xd00b8d01 pps_lookup_dev +EXPORT_SYMBOL drivers/pps/pps_core 0xd4acb558 pps_register_source +EXPORT_SYMBOL drivers/ptp/ptp 0x0c506601 ptp_clock_event +EXPORT_SYMBOL drivers/ptp/ptp 0x36c89987 ptp_clock_index +EXPORT_SYMBOL drivers/ptp/ptp 0xdb16102f ptp_clock_unregister +EXPORT_SYMBOL drivers/ptp/ptp 0xde5e4154 ptp_clock_register +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x03454116 rproc_alloc +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x26c4a9cb rproc_add +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x31c3e11e rproc_vq_interrupt +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x3a6e0f3a rproc_del +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x7ebc3d12 rproc_shutdown +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x8eff40bf rproc_put +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xbce91f09 rproc_da_to_va +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xd3b7d2b1 rproc_boot +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xe46f766a rproc_report_crash +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x49083fe8 fcoe_ctlr_destroy_store +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x5be40ed9 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x5f1a2467 fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x6716b25e fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x6f2eb435 fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x815f8676 fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x84fdc28a fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xa277a83f fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xaf1a13a6 fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xb7c56314 fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xd95a041a fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xf19e4c7d fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0008e9db fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0481de4c fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x093b3a87 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0ac06cfc fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0cc3b603 fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1aad5ef3 fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1d0a6997 fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1ddab9ac fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x224603ca libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2a009ce2 fc_rport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2badb13e fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x32c8eb92 fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36e5fbaf fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x46736a93 fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x552e8a2d fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5531c586 fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5a3aa97c fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5edc4aba fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6496975f fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x662ea3a5 fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6afbcb91 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6bbe824d fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6fd7d5c9 fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x71f686fc fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x722b8ebf fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x788b0ded fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7db502e8 fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x80942714 fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x88609d91 fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x88c8d954 fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8af39ea2 fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8db4a75f fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x98fd1c04 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9ab6b6ed fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9f62ac15 fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa30f72c2 fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa445a6d1 fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xaf6de3cb fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb5c8377d fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbbe6d550 fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc9e504bc fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcf6e359e fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd4bf1360 fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd6ff69a9 fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdb900c33 fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe16fc091 fc_change_queue_type +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe95e12d9 fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xea003979 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xea32143e fc_change_queue_depth +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf16fa81d fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf806a627 fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfd96cf88 fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xffb4a06d fc_lport_config +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8a87e724 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x94fce11b sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x9fce15e0 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xbc6dd16d sas_wait_eh +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xe9d5153b sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x2250c66e mraid_mm_adapter_app_handle +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x512c956d mraid_mm_unregister_adp +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x61edca31 mraid_mm_register_adp +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x00ef453f osd_req_read_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x02aaf9e4 osd_req_remove_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x02f0a168 osd_req_list_dev_partitions +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0a340875 osd_req_flush_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0c17edb1 osd_sec_init_nosec_doall_caps +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0c887b98 osd_start_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0e0f1e23 osd_req_get_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x119b57ab osd_req_flush_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x134a7722 osd_req_read_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x1a649f57 osd_req_add_get_attr_page +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x2d19e046 osd_req_list_partition_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x32b67722 osd_req_write +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x33100076 osd_req_read +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x3b86b235 osd_req_format +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x3be03acb osd_req_list_partition_collections +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x4290f029 osd_execute_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x501feab2 osd_req_add_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x5c41e91c osd_req_set_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x69982135 osd_req_decode_sense_full +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7a31ceef osd_dev_fini +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7c967501 osd_req_write_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7e4c4458 osd_req_flush_obsd +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8f05eef0 osd_auto_detect_ver +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x93283643 osd_req_decode_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x96c9eca0 osd_req_list_collection_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9b928e36 osd_req_write_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xabe30e5c osd_req_write_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xac7bdab4 osd_end_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xba1802dd osd_req_remove_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xba62a4f1 osd_finalize_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc795d158 osd_dev_init +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc796cc8a osd_req_read_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xcbc279bf osd_req_flush_collection +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xccc67c93 osd_req_create_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd88a71ec osd_req_add_set_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd8c65070 osd_execute_request_async +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xda5affd0 osd_req_create_object +EXPORT_SYMBOL drivers/scsi/osd/osd 0x31ac1f58 osduld_device_same +EXPORT_SYMBOL drivers/scsi/osd/osd 0x5fc48609 osduld_unregister_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x86b3e3de osduld_path_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0x8db1b54a osduld_device_info +EXPORT_SYMBOL drivers/scsi/osd/osd 0xa3df9b44 osduld_info_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0xbd626d4b osduld_register_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0xe7594d03 osduld_put_device +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x1d9da08d qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x4df51514 qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x60816673 qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x8d6b35b6 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x9b5762cf qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x9e0fb300 qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xb2844acc qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xc4ad744b qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xe2eaa2bf qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xf563796a qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xf73a9f02 qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x04d066af qlogicfas408_info +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x1f55cd70 qlogicfas408_ihandl +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x3fd8cd71 qlogicfas408_detect +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x5347fa1a qlogicfas408_disable_ints +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x63980de1 qlogicfas408_queuecommand +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x860886f7 qlogicfas408_bus_reset +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x9613fdad qlogicfas408_abort +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xe76b3b20 qlogicfas408_get_chip_type +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xf2b95199 qlogicfas408_setup +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xf787eb4a qlogicfas408_biosparam +EXPORT_SYMBOL drivers/scsi/raid_class 0x42061bef raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0x643975a1 raid_class_release +EXPORT_SYMBOL drivers/scsi/raid_class 0xc9ca681a raid_component_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x0c863067 fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x3c807f68 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x45482eae fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x470d0eb6 fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x4f00250c scsi_is_fc_vport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x74a1f42c fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7954b1ea fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7ba74632 fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7c402ae5 fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7e3c3b99 scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7febf188 fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xa133cd53 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xc2ad0d4f fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xf9312eb8 fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x18d01991 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x1a01cdb8 sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2be1e6e4 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3853159f sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3a873e0b sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3c96b12a sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3eae0347 sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4095faad sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x41457f37 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x451f4b9a sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x652d5702 sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6a11a2d3 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6a146726 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6d4d0053 sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7195850d sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x91a4971c sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x94dc60ff sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x98747a0d sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x9d802ff9 sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa6d92487 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc39796db sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd245773e scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd85c1263 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd8e1fa4e sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe5de3ce1 sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xeebaa4f4 sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf05b724e scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf781f517 sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x1bb1f351 spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x9cc2b3e1 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xcbc292bf spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xd5bfdbb4 spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xea20d4eb spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x487d7d4f srp_rport_put +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x69c27952 srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x9da33d78 srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xc58ab101 srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x18cb3b34 ufshcd_runtime_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x92b7e13f ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0xb2bc6dfa ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x03614d6b ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x037cf77d ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x07cf4246 ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0x0a70e7ba ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0x1ad4b724 ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0x1d17b0fb ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0x1e79de5b ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0x256e3d96 ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0x3aae314e ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0x46aff942 ssb_bus_pcibus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x4f262ddc ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x52117a16 ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x60f7fc9d ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0x64179fbb ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x794c454f ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x7bc53d80 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0x9e65645e ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xc0512e0f ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xcc7a285f __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0xce50a458 ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0xd481192b ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xe4c595ca ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xf4725ade ssb_commit_settings +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0xc36b7e74 fwtty_port_put +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0xe7f559c6 fwtty_port_get +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x7b987641 adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0xcb0c20e1 adt7316_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x01f78df5 ade7854_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x3363f925 ade7854_probe +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x027ec0bc lnet_set_ip_niaddr +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0bce7eef lnet_counters_get +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1366b7ac LNetSetLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x16035f5f lnet_extract_kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x19670622 LNetNIInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1b191752 lnet_msgtyp2str +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1fe16fd5 LNetGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x204b8151 lnet_counters_reset +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2859af16 lnet_set_reply_msg_len +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2aa9953d lnet_cpt_of_nid +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2ac93e90 lnet_connect_console_error +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x33202a6c LNetGetId +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x352b6ec1 lnet_create_reply_msg +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3558e584 lnet_iov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3c779ee0 LNetPut +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3f4f5b46 LNetNIFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x473ad33b LNetDist +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x4bb00492 lnet_copy_iov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x4f9cb871 lnet_extract_iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x53f6ea26 lnet_unregister_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x543bc51b lnet_copy_kiov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5811a721 LNetInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x58a1ca89 LNetMDUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5fee352c lnet_acceptor_timeout +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x61f784b2 LNetClearLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x643bd824 the_lnet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x64cdea3a LNetCtl +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x68976393 lnet_notify +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x6f7be171 LNetEQGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x722c76e5 LNetMDAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7c21c5fc lnet_kiov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7d59a7fe LNetMEInsert +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x854ab844 LNetEQWait +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8a3064f2 LNetSetAsync +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8b5f5637 lnet_net2ni +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9de986d3 LNetEQAlloc +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9efd8104 lnet_register_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa8c2760b LNetFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa414970 LNetMEUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa9b477e LNetMDBind +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb75f7953 LNetEQFree +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xba5566d2 lnet_acceptor_port +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xbafbb555 lnet_connect +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xbf0760a2 LNetMEAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xc1829344 lnet_parse +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xcea1580b lnet_copy_kiov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xd50e316f lnet_copy_iov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xe83b970b lnet_finalize +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf1b316bf LNetSnprintHandle +EXPORT_SYMBOL drivers/staging/lustre/lnet/selftest/lnet_selftest 0x078db139 lstcon_ioctl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x1c4bb5f9 LU_OBF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x375e6f8d LUSTRE_BFL_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x3ac90df3 seq_client_alloc_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x408ad015 seq_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x72a8ba31 seq_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x75bafe75 client_fid_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x92d8f103 seq_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xae61cff5 LU_DOT_LUSTRE_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xc175092d seq_client_get_seq +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xc997a02f LUSTRE_SEQ_SPACE_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xe3f2bcff client_fid_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xecee2727 LUSTRE_SEQ_ZERO_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x0ebd225c fld_client_proc_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x170dbd07 fld_client_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x2ffbb205 fld_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xb440941b fld_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xc80ded83 fld_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xcb121246 fld_client_del_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xfe8e9ce8 fld_client_add_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x000c507f libcfs_debug_dumplog +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x01db5172 cfs_percpt_atomic_summary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x03387ca6 cfs_curproc_groups_nr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x04d3ce6a lbug_with_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x06401e01 cfs_hash_is_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x069f9bb2 cfs_wi_schedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08917712 cfs_hash_for_each_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08ada613 libcfs_console_backoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0b4b1546 libcfs_lnd2modname +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0cd50581 libcfs_sock_listen +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0d1b8a30 cfs_percpt_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0de6c369 cfs_cap_lower +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0e4820ab cfs_percpt_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0f5eff79 cfs_percpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x10833286 cfs_crypto_hash_update_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x117c8a95 cfs_cpt_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x123b6908 cfs_hash_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12426266 libcfs_run_lbug_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12c54b77 cfs_hash_findadd_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x15565c7f cfs_cpt_set_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x17ac7833 libcfs_deregister_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x18c503cd cfs_percpt_lock_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1a60d439 cfs_parse_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d41c4c0 cfs_hash_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d5a3928 cfs_timer_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1e8cdb47 cfs_race_waitq +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x23f6f445 cfs_restore_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2663147a __cfs_fail_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2761f20f libcfs_sock_abort_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x277e62bd cfs_hash_for_each_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x27b6d3ba cfs_ip_addr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x29aafd0c cfs_hash_hlist_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2a641ef9 cfs_hash_dual_bd_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2b1e0458 cfs_get_environ +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2dbe54b2 cfs_trimwhite +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2efcc0e6 cfs_block_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2fb7eae8 cfs_hash_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x30986343 cfs_range_expr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x31fc5082 cfs_crypto_hash_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3756cbf7 libcfs_sock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x377f93fb cfs_srand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3834f243 proc_call_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x38828b92 cfs_cpt_unset_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x389ca502 libcfs_debug_mb +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x39fdcd2b libcfs_debug_set_level +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3a62a183 cfs_cpt_set_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3c1285bd libcfs_subsystem_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3d5e6098 cfs_race_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3e5e7727 cfs_hash_rehash_cancel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ea730c0 cfs_gettok +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ef0d90c libcfs_kkuc_group_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3f0d9281 cfs_wi_sched_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4087e2b4 cfs_hash_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x411db754 cfs_crypto_hash_final +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x413056d8 cfs_cpt_weight +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x41ab33a1 libcfs_ipif_free_enumeration +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x42e22feb cfs_cpt_table +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x435033fe libcfs_sock_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44688a0a cfs_block_allsigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44839bbb cfs_rand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44f07cfc cfs_pause +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x468bace1 cfs_hash_rehash_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x47fdb4d1 cfs_timer_is_armed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x48f163c6 libcfs_str2anynid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4a99af72 cfs_clear_sigpending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4b982291 cfs_hash_bd_peek_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4d89e988 cfs_block_sigsinv +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4f1f2fa5 cfs_crypto_hash_digest +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4f705272 libcfs_sock_getaddr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x50345570 libcfs_str2net +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5051b6d2 portal_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x509d38b0 libcfs_net2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x52e9cfc1 cfs_cpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x53b383e4 cfs_cpt_unset_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x54ba33e4 cfs_hash_debug_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x54fd9a71 cfs_percpt_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x58a7ee00 libcfs_catastrophe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5946ec2b cfs_percpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5b20921a cfs_hash_for_each_nolock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5c013b81 cfs_expr_list_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5ce62c0e cfs_cpt_table_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d3be65a cfs_crypto_adler32_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d73c3e3 cfs_expr_list_free_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5dce9e80 libcfs_lnd2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62289d65 cfs_array_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62f56738 upcall_cache_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x63b4967a cfs_hash_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x64685fef libcfs_console_min_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6564c55b libcfs_console_max_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x65dd9f0c libcfs_run_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x66136d2d cfs_timer_arm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x67398404 cfs_wi_sched_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x68497dbf cfs_cpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c4cadc8 cfs_hash_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c605eaa cfs_cpt_unset_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c905b5f libcfs_watchdog_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6dfa9ea1 cfs_crypto_adler32_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6e6af71c current_is_32bit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6f928e1b libcfs_debug_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7190502f upcall_cache_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71d28118 libcfs_sock_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71f662a3 libcfs_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x72f4e5f9 cfs_hash_bd_move_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x75161168 upcall_cache_flush_idle +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x752858fb cfs_cpt_table_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7562cd14 cfs_hash_del_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x771695b1 cfs_hash_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x785b7372 cfs_hash_dual_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a3d49ae cfs_expr_list_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a47b94d cfs_hash_size_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7b0b748a cfs_ip_addr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c73bc4b cfs_hash_rehash +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c7986cf waitq_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7d93cded cfs_cpt_of_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7e6f6485 cfs_ip_addr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7fda989d cfs_fail_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8151c3aa cfs_cap_raised +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x83d795e4 cfs_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x841679dd upcall_cache_get_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x857aaea7 libcfs_register_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x87f3bb87 cfs_hash_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c6be9ab cfs_percpt_lock_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c85e4e6 cfs_crypto_hash_speed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8e61d47b cfs_cpt_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f12bb52 libcfs_log_goto +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f45f10d cfs_init_timer +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x91504e8b libcfs_kmemory +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x940ed192 libcfs_stack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x949221dc cfs_hash_cond_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x95620e8c cfs_wi_deschedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x97b0b9bc cfs_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9879b229 cfs_get_random_bytes +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9f82f712 cfs_trace_copyout_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa1cbf250 upcall_cache_flush_all +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa2b68b2a cfs_array_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa2e1f6e4 libcfs_kkuc_group_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa6b9dee6 libcfs_kkuc_group_rem +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa711aec5 cfs_cpt_table_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9088531 cfs_expr_list_values +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9dc74e2 cfs_trace_copyin_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9eae690 cfs_str2mask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xaaf59b75 cfs_cpt_set_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xab887583 init_waitqueue_entry_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xad019238 cfs_str2num_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb00dfd91 cfs_hash_dual_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb53b5569 cfs_cpt_spread_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb65ad3b3 libcfs_kkuc_msg_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb883b006 cfs_percpt_atomic_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xba5ee429 libcfs_sock_getbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbab577e8 cfs_hash_for_each_safe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbada117b cfs_cpt_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb9cb508 cfs_curproc_cap_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbd5d492e cfs_timer_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbf7a37f1 cfs_signal_pending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc0ea7fc0 cfs_expr_list_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc1708189 cfs_hash_dual_bd_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc1b20836 cfs_hash_add_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2911d96 cfs_expr_list_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2dfd791 libcfs_console_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc39fd2f9 libcfs_panic_on_lbug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc3eb614e libcfs_ipif_query +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc47433a6 cfs_capable +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc49b1c62 cfs_percpt_atomic_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc77a24c3 cfs_cpt_set_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc9b78bb4 upcall_cache_downcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcb385db9 libcfs_debug_binary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcbab8493 schedule_timeout_and_set_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcc20e694 libcfs_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xccc45639 cfs_free_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcd38904c cfs_wi_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xce1a88f2 libcfs_arch_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf61bacb __cfs_fail_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf678304 cfs_hash_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd0aa642a cfs_hash_rehash_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd0d8d08a cfs_cpt_unset_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd2965f33 cfs_hash_bd_del_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd39383c7 libcfs_sock_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd46225d8 cfs_percpt_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd48d8f72 cfs_hash_dual_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6a52be3 libcfs_printk +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd7bbf963 cfs_hash_dual_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd7c4f765 add_wait_queue_exclusive_head +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd9541990 cfs_strncasecmp +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd96f406d cfs_cap_raise +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xde17bb8d libcfs_isknown_lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf2789c0 cfs_curproc_cap_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdffc951d cfs_timer_disarm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe3bf6897 cfs_percpt_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe6555032 libcfs_ipif_enumerate +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe7b54314 libcfs_arch_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe8a83005 libcfs_sock_setbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe94553b9 upcall_cache_flush_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xec1f56d5 libcfs_str2nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeccafa5c cfs_cpt_online +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeceac781 cfs_fail_val +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xed80ec9c cfs_hash_debug_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xedf3a25a cfs_timer_deadline +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeed48ba7 cfs_hash_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xefbf6d86 upcall_cache_put_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf2c02048 cfs_cpt_bind +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf372d1c2 cfs_firststr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf440bb38 libcfs_kkuc_group_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf5e4a175 cfs_hash_bd_add_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8a8644b libcfs_id2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8efb8c5 waitq_timedwait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8f54b1c libcfs_sock_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf94025d1 libcfs_str2lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfacb8667 cfs_hash_getref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfe565fa9 cfs_crypto_hash_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xff0f98a6 libcfs_debug_vmsg2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x38ad0b89 ll_stats_ops_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x4763b661 ll_osscapa_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x795c1871 ll_iocontrol_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xcd3cde92 ll_iocontrol_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xf528bf95 ll_direct_rw_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x27095531 lov_stripe_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x46548ae7 lov_lsm_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x56c83337 lov_read_and_clear_async_rc +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x789881bb lov_device_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xa288d560 lov_stripe_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xc2cca789 lov_lsm_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x0924a9a0 l_dentry_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x168efb2c pop_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x17ffc11f fsfilt_register_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x24e1671d lprocfs_counter_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x3bcbdc4b lprocfs_stats_alloc_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x49275745 fsfilt_get_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x4d8d6dfa lprocfs_counter_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x8186527b fsfilt_put_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x8553b369 obd_memory +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x912cf7f8 push_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x9529a888 lustre_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xb4f8ee63 lprocfs_read_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xd54f0e69 fsfilt_unregister_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x14a47f31 it_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x9c22b84f it_open_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xb57d8447 it_set_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xf46a886f it_clear_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mgc/mgc 0xdc287f95 mgc_fsname2resid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01665e34 class_parse_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x016ada3d capa_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x017f28a1 cl_io_lock_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01eac3de obd_devs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0256f217 llog_open_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x02abeb64 class_import_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x035852d0 lustre_swab_llog_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x038b79df cl_lock_user_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x039301d3 cl_page_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0443942b lprocfs_wr_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x057f6d4b class_find_old_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05af1920 dt_quota_glb_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05f84e88 LU_BUF_NULL +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x06304420 llog_osd_get_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0652cb30 cl_2queue_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x070e3154 cl_2queue_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x072e0407 lustre_in_group_p +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07aa68bb lustre_swab_lustre_cfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0836daca lprocfs_register_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x083942ff class_del_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x085f0d01 cl_lock_disclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0933b7ec cl_page_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b7886d2 lu_context_key_degister +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0c584629 cl_page_vmpage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0cf99bff dt_acct_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0d5082a2 llog_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0d626d97 cl_lock_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f1827d9 lprocfs_add_vars +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f98ee55 dt_record_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fa9ba2d cl_page_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fe91547 obdo_to_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11495519 lprocfs_write_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x117f74a8 cl_sync_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1180082f class_conn2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11e7ebad cl_page_cache_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11fb01bf cl_offset +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x120d0902 cl_lock_is_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x12438acc cl_lock_closure_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1491dc30 lu_context_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x14e81b68 dt_index_walk +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x15db8039 cl_wait_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1647866a dt_declare_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x16e7c409 dump_lniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17260880 obdo_cpy_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1818135e lprocfs_alloc_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x18ad90be cl_env_nested_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x18fceddf class_conn2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x199583a8 cl_page_list_move +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x19c84003 class_export_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1a17aa45 dt_store_resolve +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b54732f dt_lookup_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b9623bb class_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b9eba93 llog_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1bf029bf cl_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1bf949c8 cl_object_kill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1c831e77 lprocfs_rd_numrefs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1c9592a5 lu_context_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1d31f2e1 lprocfs_at_hist_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1f13e95d class_config_dump_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1f7a64aa cl_page_is_under_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x208933a0 cl_env_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x211e36b3 lustre_idmap_lookup_uid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21307495 lu_buf_check_and_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x221826f1 class_parse_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x251f7df7 __llog_ctxt_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2547efae lustre_uuid_to_peer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x259ebac6 obd_alloc_fail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25d516b7 cl_pages_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25db2d9d cl_page_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x275cdc7a cl_env_reexit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x27c3854c llog_init_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x28989573 lprocfs_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2935f868 llog_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x297cf5e0 class_handle2object +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x29f15b16 class_search_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ae1cd79 kuc_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2b4c48e9 server_name2svname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2bd56db2 cl_lock_weigh +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d083072 cl_2queue_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d38ab1b dt_txn_hook_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d435f10 llog_declare_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d5c1434 cl_io_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2de1b940 cl_locks_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2f06e0c0 cl_lock_at_pgoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2fb9e258 cl_io_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3015f534 dump_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3072c9e5 lu_object_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x307cae29 cl_unuse_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x317f6de0 llog_obd_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x323a6ccf lu_site_init_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3414103c cl_page_list_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x344021e7 dt_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34580c14 capa_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x353c6805 lustre_common_put_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3556abc5 obd_llog_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x35859dad lprocfs_rd_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x358bcffb lprocfs_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x36144d44 cl_page_make_ready +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x36712db5 lprocfs_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x369938fc lu_object_add_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37e6bfed cl_env_nested_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37ed6e4b at_early_margin +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3836371d cl_object_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38f6b430 dt_store_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38fb0c90 class_match_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3909614e lprocfs_seq_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3995a2e4 class_register_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x39c8580f class_handle_hash_back +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a005065 dt_otable_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ad23e66 dt_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3b3d4a4b class_detach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3c5b9645 lprocfs_rd_timeouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d08999f lustre_end_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3da2aa39 lprocfs_alloc_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3f07c5d5 lprocfs_rd_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3fac048c lprocfs_nid_stats_clear_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x404bd7a7 class_handle_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x40613f20 cl_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x40f6fd7f lustre_process_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4139db9f class_config_llog_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x419c0df4 cl_page_clip +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43a29f50 class_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44469eb0 llog_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4481bf7a lu_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x448e82b6 lprocfs_obd_rd_max_pages_per_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44e41abb lustre_posix_acl_xattr_filter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4590b371 llog_cat_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x474ed5bd lustre_swab_ll_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47b35f7d statfs_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48741d6a cl_io_lock_alloc_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48745aa6 cl_page_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4895d634 cl_page_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48b4498b lprocfs_rd_server_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4929a2a0 local_index_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4932f4c5 lu_env_refill_by_tags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x494cfb52 lustre_acl_xattr_merge2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a0f6ea lustre_posix_acl_xattr_2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a29223 lprocfs_find_named_value +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49e75854 lprocfs_seq_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ac58713 obd_connect_flags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ac99637 llog_thread_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4b385b8a cl_vmpage_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4bb41579 cl_page_list_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4be6c7a9 cl_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4bf356ca lustre_idmap_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c338d92 cl_page_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c4ac035 class_devices_in_group +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c634a0c llog_cat_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d0848a9 cl_object_glimpse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d13458b kuc_len +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d18ad1e cl_lock_hold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d428cee cl_lock_user_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4da257f8 class_fail_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4de36f3c lustre_idmap_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4fba4346 dt_directory_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50c7fc36 ptlrpc_put_connection_superhack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50e32bdc lprocfs_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x513c2fb2 lu_cdebug_printer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x519604e9 lu_kmem_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x519a0899 cl_page_is_vmlocked +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x51f5299a lprocfs_rd_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5247e6cb lprocfs_free_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5318fead cl_req_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5359ef85 lprocfs_rd_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54453b0f cl_lock_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54689bd3 class_disconnect_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54885f87 ldlm_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5490bc7d cl_page_unassume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x558bec27 obd_ioctl_getdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5619c80f lu_object_assign_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x564e9d44 init_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x565938a0 iattr_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5666f209 obdo_from_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x56f0869e class_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x570d09ae lustre_swab_lu_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x573b06ca lu_context_key_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x57496173 class_name2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x576c93f1 llog_declare_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x578473c2 cl_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x57c43293 dt_txn_hook_commit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x57cede99 obd_llog_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5894c455 cl_io_submit_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x593946b9 cl_page_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5953bbeb cl_sync_io_note +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x597e75b3 cl_object_has_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x59845161 lprocfs_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a20d896 obd_memory_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a2360a9 cl_io_commit_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ab2d3da cl_sync_io_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5b7278e4 cl_env_implant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bc022c5 lprocfs_dt_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5c1f8000 lu_context_key_quiesce_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5c45c3a2 lprocfs_obd_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ce95bc8 cl_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d34ae0d cl_lock_mode_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e524ae5 lu_context_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e93341f lprocfs_oh_sum +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5eba830f llog_osd_put_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ed188a9 lprocfs_add_symlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fe97b73 block_debug_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5feca9bb cl_lock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ffc05fc cl_io_read_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60588454 cl_type_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x612ba6cb cl_page_list_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x616df160 lu_env_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x624ffe24 lprocfs_counter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631a518d mea_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631fd7b9 lustre_ext_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6328b8cc dt_try_as_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x632ffd50 cl_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x63d26c12 class_find_client_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x648a7f66 lprocfs_free_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x65645a60 local_index_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x657f0a5d cl_page_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x65c2423d lprocfs_rd_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6669c49f cat_cancel_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x66b5f8af lu_kmem_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67184bc9 lu_device_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6734adbd lprocfs_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x676c0d92 lu_context_key_quiesce +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x677fd7f9 proc_lustre_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67977b42 lprocfs_remove_proc_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67a90622 la_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67dc223a lprocfs_remove +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67ee8273 cl_page_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6890d175 lustre_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69585cee cl_page_list_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69c42114 at_min +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a9362a8 lprocfs_init_mps_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6b5b0350 lu_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ba91ed8 cl_io_loop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6bb6d421 lu_buf_realloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6be27247 cl_page_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c816bb9 cl_page_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ddbd7c7 class_config_parse_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ec183a7 lu_context_key_revive +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ee6b94f class_exp2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f3e6225 dt_quota_slv_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x710fc88b llog_exist +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x712a6906 cl_2queue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x71f5f103 lprocfs_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x71f6853a cl_2queue_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72ddee4c obdo_le_to_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72e8bd25 cl_io_rw_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x73773363 cl_lock_descr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x73fc8926 cl_req_page_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x742559b1 class_unregister_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x750323c9 obdo_from_iattr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7519f618 lprocfs_init_ldlm_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x752f71a8 class_get_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x756a77f3 class_parse_nid_quiet +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x764b70b0 lprocfs_alloc_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x76f2476b lu_context_key_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x774023da lprocfs_rd_conn_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77a99fc7 class_connected_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77d2089a class_name2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7802fcd7 lustre_swab_llogd_conn_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7838afe4 cl_io_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x789796a1 obd_zombie_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x78c90a7b cl_lock_mutex_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x78ec0422 class_manual_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x796728e0 obd_export_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x79f0f2ac cl_req_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7a3bc3cb class_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7a454365 class_num2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7ac43191 lu_env_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b050bbd obdo_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b3fab97 lprocfs_free_per_client_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b4fc57b at_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b816240 lu_object_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7bc12d2a lprocfs_init_ops_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7cd50dd8 class_import_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7daf28bf cl_page_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7edcafa0 cl_env_reenter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f2fd2b1 cl_page_is_owned +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f7f7713 dt_locate_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fad7291 raw_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fe5561a obd_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8027d8b5 lustre_register_client_fill_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8031efb8 lprocfs_dt_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x806cc497 class_add_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8089e427 lu_dev_add_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81484e97 lprocfs_add_simple +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81742d89 obd_ioctl_popdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81eb856a llog_cat_cancel_records +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x82812313 llog_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x828156e8 cl_page_list_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x82fdd302 cl_page_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x831f656c class_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x83e5a99b lu_object_put_nocache +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8489f086 obd_alloc_fail_rate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x849e5385 obd_update_maxusage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x868bd0c4 lprocfs_rd_u64 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8773e650 cl_io_iter_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8830c046 cl_env_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x88ad7fdb obd_export_evict_by_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x88b87068 lprocfs_stats_collect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x891054f1 lprocfs_clear_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8928d654 lu_object_find_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8a7e4dc7 dt_index_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8aa2c358 lprocfs_dt_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b411619 cl_page_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b5f4057 lu_context_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ba6e479 lustre_swab_lu_seq_range +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8bd9553e cl_io_sub_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8c09ad34 cl_env_unplant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8cf40455 llog_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8d5b5f3a lu_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8d658ed0 capa_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f67314c obd_dump_on_eviction +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x90f6958b lu_device_type_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9120a70d obdo_refresh_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92aa9632 cl_enqueue_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92e0dc2d lu_context_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92e58479 obd_dump_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93859814 lprocfs_oh_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93b46468 lu_session_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93f3682f cl_io_is_going +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x94bf97b7 local_oid_storage_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x94e3347f cl_page_list_splice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9505c895 lustre_idmap_lookup_gid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9512d507 lustre_acl_xattr_merge2posix +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9548411f class_unlink_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x955f5220 ldlm_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95735c6c at_extra +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95ec998a lustre_groups_sort +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x966d68b8 llog_cat_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9767adce class_uuid2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x978ea4cc dt_txn_hook_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x97d03783 at_history +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x985ad05b lprocfs_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x98bf6651 cl_object_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9a60a990 cl_lock_mutex_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ac89db3 cl_lock_hold_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ae3939b class_exp2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b0cd72c cl_page_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b1ed9d8 obd_jobid_var +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b75976c class_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9d2165a6 cl_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9d95fc06 dt_txn_callback_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9dbb17b6 lprocfs_dt_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ea02aa4 lprocfs_rd_num_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9fb1871c cl_page_list_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa070829a class_uuid2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa1451986 llog_osd_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa14d6006 cl_lock_enqueue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa21c5ea1 obdo_from_la +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa470e29a cl_lock_extransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa485ebfe lu_object_find_slice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa48c4a30 lustre_idmap_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa500f390 cl_page_gang_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa513f7e4 lustre_groups_from_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5b9055a local_oid_storage_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5fb234f lprocfs_write_frac_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa674c241 kuc_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa68b8d77 cl_env_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa7ac99f7 lu_object_invariant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa7e45527 class_disconnect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa802734a lprocfs_exp_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8cb5247 cl_env_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa21b7a0 lustre_register_quota_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa2db1c1 cl_lock_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa4cacb3 cl_lock_nr_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xab143d71 class_disconnect_stale_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xab2755c2 class_incref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabf45922 capa_decrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac2abf6f md_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac7f1596 kuc_ptr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xacfa35cb lu_object_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xad5f5cf7 cl_lock_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xae6c67db cl_lock_mutex_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaf95e071 llog_cat_declare_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xafe3a591 capa_cpy +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xafed6bc9 cl_page_find_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb01963a6 class_uuid_unparse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb033454f lu_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb04e26f2 local_object_unlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb097b292 cl_object_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0fb9886 cl_lvb2attr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1b89b6d class_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1e5af75 lu_ucred +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb22e4772 dt_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb265e926 cl_io_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb32e4ca2 cl_lock_enclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb3d8c89d cl_page_list_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb41998cd lustre_cfg_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb4a30455 dt_version_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb58d2a59 lu_context_enter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb61b2f8f cl_lock_get_trust +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb67c02f3 lu_device_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6ad0ef6 lprocfs_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6ba5dd5 kuc_ispayload +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb7071013 lu_device_type_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb737badb cl_page_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb743ec6a dt_mode_to_dft +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb78a17c7 cl_conf_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb78db3bd class_export_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb816307f cl_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb936de3f cl_lock_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba5e93d1 cl_req_page_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba985283 lustre_register_client_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbacac922 lprocfs_write_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbbcc5f99 cl_lock_is_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbc74fc59 llog_cat_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbc8ac2c1 lu_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbce41f44 llog_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbcee1990 cl_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbf7a4305 class_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0149102 class_conn2export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0954007 lprocfs_oh_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0bf7ef2 obd_debug_peer_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc134733c cl_lock_state_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc15bdabd lu_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc1bdaa2c llog_cat_init_and_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc1c445c8 dt_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc2581028 cl_io_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc3f0f754 dt_txn_callback_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc4116ef8 cl_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc4e69809 dt_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc5dc4b09 llog_cat_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc66a9441 cl_req_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc7112c2f cl_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc7d40490 lprocfs_exp_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc86595f9 class_new_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc87af30b lu_context_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc883de0d capa_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8a7a096 obdo_to_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8dbaa87 lustre_swab_cfg_marker +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc93c1d7a lprocfs_single_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc9b3c667 dt_lfsck_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xca424e58 lu_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb0ab67f obd_max_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb3614a7 class_process_proc_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb3b583b cl_lock_closure_build +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcc3be9d0 cl_io_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcc568131 cl_page_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xccf7a8de obdo_cpu_to_le +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd7537ee get_devices_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd8a604e lu_buf_check_and_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcde50f5c cl_page_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xceb72b39 cl_io_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xceba25e2 cl_io_iter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcedb140a obdo_cmp_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcf7d41ef local_file_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd080541e cl_object_attr_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd08827c0 server_name2fsname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd0b6995d lu_buf_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd10aa042 lustre_swab_llog_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1b1478b cl_attr2lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1b4c9e1 cl_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1f58645 lustre_swab_llog_hdr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd208db29 llog_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd20afeae lprocfs_rd_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2957ef2 cl_object_attr_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2bf051b dt_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd4155c78 cl_page_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd423fe1b lu_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd53a7224 dt_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd540f111 class_put_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd549c922 lu_site_purge +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd58ad927 cl_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd6bb05de cl_io_rw_advance +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd6c372aa lu_object_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd70fe669 lustre_swab_llogd_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd73d8624 cl_req_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bc8654 obd_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bfbc9c lprocfs_dt_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7e8ebd1 llog_declare_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7f7b340 cl_lock_mode_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd83ccf6e cl_use_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd84bf99c dt_record_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd915afce lu_object_anon +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda192acb cl_unuse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda5b1ced class_find_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdac644c8 lustre_posix_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb13dce1 capa_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb4e1c62 cl_lock_descr_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb6030e0 cl_lock_ext_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdbf60a6b lu_site_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcc40af0 class_check_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd78c0c7 lu_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdda3d949 class_handle_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde71d514 cl_lock_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde7d985b obd_dirty_transit_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe028cf84 capa_encrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe0804caa cl_req_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe0d23388 lu_env_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe0eb928d obdo_from_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe0f0d1fc lu_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe1ca5974 cl_lock_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe253e48d cl_lock_modify +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2923d82 lprocfs_nid_stats_clear_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2dacd90 lu_context_key_degister_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2eb4470 class_get_next_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe30e88e6 cl_io_prepare_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3323f5d class_handle_free_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe43497c5 local_file_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe4fbd27f cl_io_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe71326f9 lprocfs_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe77e6882 lu_object_locate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7d83236 cleanup_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe806a8a0 cl_2queue_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe89aef90 cl_lock_hold_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8e84c32 class_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe98fd4d4 cl_page_list_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe9e9f59a llog_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xea0e8f26 cl_lock_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeacec47c lprocfs_oh_tally_log2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xead647c7 cl_io_submit_rw +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb0dd2f6 lprocfs_rd_connect_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb3f388a _debug_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xebd105ab cl_page_list_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec542769 lu_dev_del_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec5a7fff cl_lock_unhold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec76847f lustre_idmap_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec7d6b85 obd_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xecba16ec llog_cat_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xecd0ef94 cl_lock_signal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee57e8ec lu_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee68bc29 lu_session_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee8792f3 llog_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeeeb79fa do_lcfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xef76f858 block_debug_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf01e2527 server_name2index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf0d88f43 cl_2queue_init_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf168de9f cl_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf238b98c llog_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2897b4a cl_lock_discard_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2fd6695 statfs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf33bc1ad cl_lock_closure_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf33cfb5d cl_page_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf392beaf llog_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3c93c00 llog_copy_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3f781d6 lustre_register_kill_super_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf460572b cl_page_own_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf490d5f9 class_del_profiles +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf5773720 lu_ucred_assert +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf57c3854 lu_context_key_register_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf5857ec1 llog_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf5d2c0fc cl_lock_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf5f1d3b9 llog_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf60d4659 capa_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7020831 lprocfs_dt_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf74a207c lu_context_key_revive_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf78ab5d2 cl_queue_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7a04304 cl_object_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7a64d46 llog_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf82ad9e8 obd_export_evict_by_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf85a2860 class_new_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf874c950 dump_lsm +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8c2df92 obdo_set_parent_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa36a0cc lprocfs_free_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa813d06 capa_hmac +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb9e8618 lprocfs_wr_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbea0098 lu_types_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc3b316a dt_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc7f18d0 obd_pages_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfce4103b lu_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfceb8cee lprocfs_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd06618c llog_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd68d17a class_notify_sptlrpc_conf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd8f5cf4 lu_buf_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfdbe1557 lprocfs_write_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfde759f7 cl_object_attr_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfe16597e lu_ucred_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfe93dc1f cl_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff3f9a21 class_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff57e92d class_match_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff8bce26 llog_cancel_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xffc5fe06 obd_exports_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfffc1f11 lustre_swab_ost_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/osc/osc 0x5c4940c2 osc_update_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x00d95039 ptlrpcd_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0199d241 ldlm_lock_allow_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01d6ef7f ldlm_pools_recalc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x029a17ae ldlm_namespace_new +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x02db52bd ldlm_pool_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x03d2d9c7 ptlrpc_set_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0409662e ldlm_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x048b59d5 lustre_msg_set_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0515f93b RQF_FLD_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x05898ecd llog_origin_handle_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0655b6a5 ldlm_resource_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x06b3942b lustre_swab_lov_user_md_objects +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x071e2258 ptlrpc_stop_all_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x071fc74a RQF_LDLM_ENQUEUE_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x07605c7d interval_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08bb2d27 lustre_swab_obd_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08e8d563 ptlrpc_at_set_req_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x09551bf0 ldlm_lock_change_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x095587d0 lustre_msg_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x098041ce ldlm_lock_fail_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x09b65d7f sptlrpc_svc_ctx_invalidate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a3130b0 RMF_MDT_EPOCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac252b2 lustre_msg_set_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac54708 lustre_errno_hton +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0b4aa73f lustre_pack_reply_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0bcacb5d RMF_MDS_HSM_USER_ITEM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c2d9c43 lustre_swab_lip_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c5801c4 ptlrpc_activate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c60ed4c ldlm_namespace_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0cf343dd RQF_LDLM_INTENT_BASIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x10f18f20 interval_iterate_reverse +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x115017f6 req_layout_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12b6f5a3 ptlrpc_connection_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x133ba012 ptlrpcd_alloc_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x13f8d695 ptlrpc_prep_req_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1474440e ldlm_pool_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1483eca4 ldlm_lock_addref_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x14d192db lustre_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1590b423 sptlrpc_register_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15a3e4db RMF_GETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15a6f433 ldlm_cli_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x169c94a7 ptlrpc_queue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1727c96f ldlm_cli_cancel_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x172fb86d lustre_msg_hdr_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1747d8b3 ldlm_lockname +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x17950f60 RQF_SEC_CTX +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x181f9aa9 llog_origin_handle_next_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x189046f3 client_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x18ab704f req_capsule_server_sized_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19108a0f RQF_OST_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19c08934 RQF_LDLM_INTENT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a0d715f ldlm_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a6a3ce9 RQF_OST_GET_INFO_LAST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a7b7ed7 client_import_find_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a9b76aa RMF_OBD_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1abd3258 RMF_SETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ace4b5f RQF_LDLM_BL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1b94a6d9 sptlrpc_sec_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1bae0270 interval_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1be21715 lustre_msg_size_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c300d8e lustre_msg_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c9f69b0 lprocfs_wr_evict_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d043548 lustre_msg_set_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1dc2051d RMF_SEQ_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1de9c288 lustre_swab_layout_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e8e48a4 sptlrpc_flavor_has_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1eb2a65f RQF_OST_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee46b51 lustre_init_msg_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee9eb3c RQF_MDS_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1fa5778a ldlm_resource_unlink_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2096f5b5 RQF_OST_SET_GRANT_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20d6b82c RQF_LDLM_INTENT_QUOTA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x218a36ce ldlm_cli_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x21cd337b ptlrpc_unregister_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x233790b5 RMF_OST_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x23eb827c ldlm_namespace_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x241e7227 ptlrpc_pinger_add_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x244e5558 lustre_msg_get_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x24aafdba RMF_MGS_TARGET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2567bdde req_capsule_field_present +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2585a629 RMF_SEQ_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2587513c RQF_LDLM_CP_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2651f263 ldlm_lock_fail_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x269554ce RQF_LDLM_INTENT_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x26f99d16 RQF_MGS_CONFIG_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x285e5b99 lustre_msg_set_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x28a2ef01 llog_client_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x293c6126 sptlrpc_cli_enlarge_reqbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x29e0869a sptlrpc_get_hash_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a165d9d lprocfs_wr_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a63a472 lustre_swab_ptlrpc_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a6fdcd8 ldlm_register_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c00c60d ptlrpc_sample_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ca92fa8 ldlm_lock_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ccd5b87 ldlm_cli_cancel_list_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d28a597 sptlrpc_enc_pool_put_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d34bded llog_origin_handle_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d56f168 ptlrpc_pinger_ir_up +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d798316 RMF_MGS_CONFIG_RES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4562fe RQF_LLOG_ORIGIN_HANDLE_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4ca396 RQF_LDLM_INTENT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ebbbf1c ptlrpc_resend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ecd7515 lustre_msg_check_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f0e4f87 RQF_OST_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2fd2f737 lustre_msg_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x301d4fcd RQF_MDS_READPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x302937e0 RQF_MDS_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3043e6b1 ptlrpc_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3060b9c6 sptlrpc_rule_set_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31838cb4 RMF_IDX_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x318a4c57 ldlm_pool_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3261b862 RQF_OST_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3295576a ldlm_cli_cancel_unused_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x33bb7761 ldlm_typename +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x34a1912c ldlm_cli_cancel_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x34bb264e req_capsule_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x35939a3d lustre_swab_fiemap +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x36700b0b req_capsule_other_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3694bf54 llog_origin_handle_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x36a775b8 sptlrpc_cli_wrap_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3715044a ldlm_lock2handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3835ab4b RQF_LLOG_ORIGIN_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3858fb94 RMF_OBD_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3896ba40 ldlm_pool_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38c01799 RQF_LDLM_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38fce533 lustre_msg_set_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39f60a5f RMF_OST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a1e4bcb __lustre_unpack_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ab90f6e lustre_msg_bufcount +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ac00716 lustre_swab_hsm_user_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b5cb8e9 client_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b6b7cba dump_ioo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bc8f134 _ldlm_lock_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bedb0c7 RMF_LLOGD_CONN_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c63e62b RQF_MDS_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ca50f33 RQF_MDS_HSM_CT_REGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d7dc5f9 ldlm_pools_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dc47695 lustre_msg_get_magic +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dddb3e2 dump_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3eddaef3 ldlm_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ee4579b ldlm_pool_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f034caf lustre_msg_get_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f752e78 RQF_MDS_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x401bf5de ptlrpcd_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x41008cef RQF_LDLM_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x42e9ef58 sptlrpc_cli_ctx_expire +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x430cfab2 unlock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43705ee4 RQF_LOG_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43d7efc8 lustre_msg_set_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44036eda RQF_MDS_GET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x440c2a71 RMF_FIEMAP_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4481591d RQF_OST_SET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x450ea0ae lprocfs_wr_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45d05893 lustre_swab_lustre_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45e30cea lustre_swab_ldlm_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x472346cc ldlm_namespace_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47992804 ldlm_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x479af13b ptlrpc_buf_set_swabbed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47f5e903 RMF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x48814c9f lustre_swab_ost_lvb_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x498236e6 ptlrpc_deactivate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x498c03c5 lustre_msg_set_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x49b041c4 ldlm_lock_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a5a2416 RMF_DLM_REQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b09ce4b lustre_swab_mdt_rec_reint +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4bcb49e8 ldlm_blocking_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c085677 ptlrpc_pinger_del_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d7580d0 lustre_swab_hsm_user_item +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e07a492 ldlm_lock2desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e1706e5 lustre_msg_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e696b96 ptlrpcd_queue_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4eb03a6f ptlrpcd_destroy_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f766c3b lustre_swab_generic_32s +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50443f6a ptlrpc_init_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50dd74f8 RMF_STRING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x52c62150 RMF_RCS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53411557 RMF_DLM_REP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53595bfb ptlrpc_commit_replies +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53853766 lprocfs_wr_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5399c7e5 ptlrpc_buf_need_swab +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53a4a004 bulk_sec_desc_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5429c9f0 llog_initiator_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x544a7d4a ptlrpc_mark_interrupted +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x54ae5021 ldlm_lock_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x555eb7fe RQF_MDS_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x588035b4 RMF_UPDATE_REPLY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x59082770 client_disconnect_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x595ab175 lustre_swab_obd_quotactl +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x596582bf RMF_GETINFO_VALLEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x59ca398b ptlrpc_add_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a057439 interval_search +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a549c63 ptlrpc_unpack_req_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a72c573 ptlrpc_nrs_policy_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a962364 client_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5af0d02a ldlm_lock_dump_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b271621 sptlrpc_cli_ctx_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b6ba895 lustre_packed_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5bd97b34 client_import_del_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c6a3a83 RQF_SEQ_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5caae213 ptlrpc_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5d28f3ce sptlrpc_target_export_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5da11228 req_capsule_extend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e0b19b1 RMF_CLUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e2b7558 lustre_msghdr_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e344338 sptlrpc_cli_ctx_wakeup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e3974c2 llog_origin_handle_prev_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e6f435d RQF_OST_BRW_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e80f899 RQF_LLOG_ORIGIN_HANDLE_READ_HEADER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ec3284d RQF_MDS_HSM_CT_UNREGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ef831ee lustre_msg_get_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f5d38ab lustre_pack_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f96ccdd ptlrpc_connection_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6042bc15 RQF_MDS_REINT_RENAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x604e2505 RMF_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x607ec932 lustre_msg_set_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x60cd26ad RQF_MDS_REINT_CREATE_SYM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61289a66 ldlm_lock_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61646e1b RQF_MDS_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x618ad203 RQF_OST_GET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61d6ee70 sptlrpc_import_flush_my_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62192cf8 dump_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x624db4c4 ptlrpc_req_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62aaae3f RQF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6315dd4c RMF_LLOGD_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6352a62d ldlm_get_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x640d86f3 ptlrpc_fail_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x647b6e48 lustre_swab_ldlm_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x653723dc RMF_LOGCOOKIES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x657b00b7 ptlrpc_init_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x662f2d20 sptlrpc_conf_client_adapt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x67cd4a7f sptlrpc_gc_add_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x683243bf ptlrpc_set_next_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x685eeaba RMF_DLM_GL_DESC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68cb2541 interval_is_overlapped +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68f49e5e ptlrpc_expired_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6912990a RQF_OST_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6914e0f0 __ldlm_handle2lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69370b79 ldlm_prep_elc_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x696ba811 lustre_msg_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69c9f04d RQF_MDS_REINT_LINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a3785c9 RMF_EADATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6adc6a68 ptlrpc_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d5db6a6 ldlm_extent_shift_kms +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d72828c sptlrpc_conf_log_update_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d7931cc RQF_UPDATE_OBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6dd05fed ptlrpc_lprocfs_unregister_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ebf0267 ptlrpc_send_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ed20499 ldlm_revalidate_lock_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6edd48c6 sptlrpc_sec_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6eeb8611 ptlrpc_unregister_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6efa82b0 RQF_MGS_TARGET_REG +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f6dc736 lustre_swab_mdt_remote_perm +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6fb92092 sptlrpc_flavor2name_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x703538e4 lustre_swab_hsm_current_action +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x70fbda21 req_capsule_client_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7226fec3 ptlrpc_init_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x723d43b6 sptlrpc_rule_set_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x725a892c RQF_MDS_REINT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7287b6c0 ldlm_pool_get_lvf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x729a3f0d sptlrpc_get_bulk_checksum +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x73310da1 ldlm_cli_cancel_unused +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x73e4e5c9 ptlrpc_add_rqs_to_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74840056 lustre_msg_set_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74a1d256 ptlrpc_cleanup_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74b5b59e ldlm_lock_downgrade +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74c1cb28 ldlm_pool_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75643b5d ptlrpc_obd_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75a2c40d ldlm_put_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76b728e5 lustre_swab_update_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77571cc6 lustre_swab_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77840c82 sptlrpc_rule_set_choose +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78803bfe ldlm_cancel_resource_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78bf9136 lustre_swab_ldlm_lock_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x795d1853 sptlrpc_target_update_exp_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a832f10 RMF_CONN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a83ad7c ptlrpc_request_alloc_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7ae92054 sptlrpc_sec_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b158da4 lustre_swab_ldlm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b654b69 ptlrpc_restart_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b9d15ca ldlm_replay_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7bbf8001 RMF_MDT_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7c4c6107 RQF_LDLM_CONVERT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d1ecd7f RQF_LDLM_INTENT_LAYOUT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d41a8b9 RQF_QUOTA_DQACQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dc0e7cd RMF_QUOTA_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dfb3c18 lustre_msg_clear_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f484453 ldlm_flock_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4925d8 interval_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4c99b1 ldlm_expired_completion_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f5a1cc7 lustre_msg_set_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f6d2357 lustre_msg_is_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80a9e8c3 lustre_msg_get_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80ecb4e3 RMF_MDS_HSM_CURRENT_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x817d7f1f lustre_msg_add_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x823605a8 ptlrpc_req_finished +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x826d3c4f RQF_LDLM_GL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x828f2785 ptlrpc_lprocfs_register_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x837efb00 RMF_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x840249ee ldlm_cli_enqueue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x840e9732 sptlrpc_lprocfs_cliobd_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x84bf828f req_capsule_has_field +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85135801 RMF_DLM_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x858eef6d sptlrpc_cli_unwrap_bulk_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85a9e0d8 RMF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85eecf67 sptlrpc_get_hash_alg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x863db6eb RMF_HSM_USER_STATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x86fa8c3b ldlm_cli_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8760beaf lustre_swab_ldlm_policy_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x876c2551 RMF_GETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87bf7b3c sptlrpc_get_next_secid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87ff2afb ldlm_pool_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8872f3d2 RMF_SETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8877d241 sptlrpc_import_flush_all_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x88fff52d RMF_CAPA2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x89f9edf7 RQF_MDS_REINT_SETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a1ea476 lustre_swab_hsm_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a257736 RQF_MDS_HSM_STATE_GET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a4345b1 ptlrpc_set_add_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8abe752d ldlm_blocking_ast_nocheck +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ac440fa ptlrpc_uuid_to_connection +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b854254 lustre_swab_mgs_config_res +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cb71d4b RQF_MDS_REINT_CREATE_SLAVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d77ea75 lustre_msg_set_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8da3fca7 lustre_msg_add_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8e9abe4d RMF_GENERIC_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f0aceac RQF_MDS_HSM_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8fec0451 lustre_msg_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x919c4ce3 RMF_OBD_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91cf58d3 RQF_MDS_PIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91f97b92 ldlm_init_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x937b1ee0 lustre_swab_mdt_ioepoch +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9553c633 RQF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x95d08f0c lustre_swab_mgs_target_info +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9660ace0 RMF_FLD_MDFLD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x967bfd52 RQF_OBD_PING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x97502432 req_capsule_server_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9798f2f1 RQF_MDS_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x980fcfdc ptlrpc_connection_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x989d8359 req_capsule_set_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x98ff4936 req_capsule_server_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x995e7042 req_capsule_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x998df160 ptlrpc_schedule_difficult_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a258886 RQF_MDS_GETSTATUS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a6f2f6d lustre_msg_set_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b88f6ce RMF_NIOBUF_REMOTE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9bb5198b RQF_MDS_CLOSE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9d7ea314 sptlrpc_pack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9daa13fa sptlrpc_cli_ctx_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9ef0b7e7 ldlm_resource_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9fb088f1 lustre_swab_lov_mds_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa0929039 req_capsule_init_area +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa10f0d3d RMF_UPDATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa163f4c3 dump_rniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2244636 RQF_MDS_GETATTR_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa22c0086 ldlm_error2errno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa255e341 sec2target_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3d2a6ee RMF_CAPA1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa413458e ldlm_pool_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa43ab9c2 req_capsule_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa47787ef RMF_PTLRPC_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4a2d089 RQF_OST_PUNCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4bea5ef lustre_swab_lmv_user_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa537640b lustre_pack_reply_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5458dad ldlm_lock_decref_and_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5880075 ldlm_errno2error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5a251a0 ptlrpc_request_alloc_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa66888dd ptlrpcd_add_rqset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa6c436ca RQF_MDS_WRITEPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7d55cc3 RQF_MDS_REINT_CREATE_RMT_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7e360b1 RMF_OBD_IOOBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7ec567d RMF_CONNECT_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9704f80 lustre_msg_get_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9c4658e lustre_swab_lov_user_md_v3 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9edf09d RQF_OBD_IDX_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xabb1da38 ldlm_destroy_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaddc3979 lustre_swab_lustre_capa_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf4e9658 RQF_MDS_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf50a0d6 RMF_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf9ca4eb ldlm_pool_set_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0751fa4 RQF_LLOG_ORIGIN_HANDLE_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0986854 ptlrpc_service_health_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb13a0c9e target_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1b43d8a dump_rcs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb24b9e99 ptlrpc_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb27c2374 lustre_msg_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb28e58d0 ldlm_lock_allow_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb291473d lustre_msg_early_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb2b1817d lustre_swab_ost_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb424c11c ldlm_completion_ast_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4a7ecf3 lustre_msg_add_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4c07bf9 sptlrpc_import_sec_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb512ebc2 sptlrpc_parse_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb61cb95a RQF_MDS_GETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb665f9d1 ptlrpc_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb68476df interval_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb6aafd03 RQF_MDS_DONE_WRITING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb72fb4aa ptlrpc_reconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7835948 ptlrpc_abort_inflight +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7b38189 RMF_MDT_MD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7fa3cc8 RMF_LLOG_LOG_HDR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb8449341 ptlrpc_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb859221e ldlm_init_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb8a4b9d2 ldlm_reprocess_all_ns +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb8c430a2 ptlrpc_save_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb903634e RQF_OST_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9b631cf lustre_swab_mgs_config_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xba5d704b sptlrpc_gc_add_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xba9cec1e req_capsule_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbaa76097 lustre_msg_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbc1370dc lustre_shrink_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbc8df000 req_capsule_client_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd83bc44 RQF_OBD_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe28f2a6 ldlm_namespace_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe47bc7e ping_evictor_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbeb6217b _debug_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf6c0c4b client_import_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf98b86f RQF_MDS_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbffd4313 RQF_OST_BRW_WRITE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc06c4670 lustre_msg_get_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0867da7 RMF_REC_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0cdf55e RMF_MGS_SEND_PARAM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc146491b ptlrpc_set_add_new_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc1ed015f ldlm_pool_get_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2229f25 target_pack_pool_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2986d28 lustre_swab_ldlm_res_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2990b21 req_capsule_server_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2b1af57 RQF_MGS_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2be922a RMF_SYMTGT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc3859e1b sptlrpc_target_sec_part +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc3e5b4a2 ldlm_enqueue_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc45f494d ptlrpc_set_import_active +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc4fbc79c ldlm_resource_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc559a634 RMF_LAYOUT_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc5b5a1aa sptlrpc_gc_del_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc60a60e1 RQF_OST_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc647f96a ldlm_namespace_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc694be4b RQF_LLOG_ORIGIN_HANDLE_PREV_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc763fabc sptlrpc_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc78a5464 ptlrpc_free_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc79b9c67 ldlm_pools_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7ca8257 RQF_MDS_REINT_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7e47564 ptlrpc_interrupted_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc84f48e4 ptlrpc_unpack_rep_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8f586a9 ptlrpc_connection_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc922a434 ptlrpc_unregister_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc9ad997f ldlm_cli_update_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xca5a81ec ptlrpc_pinger_ir_down +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb16107d ptlrpc_set_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2cc0cf lustre_swab_lquota_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2ceaff sptlrpc_secflags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb74bbc0 req_capsule_server_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcc15420e ldlm_cli_enqueue_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcdffa8a2 lustre_free_reply_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce1a689b sptlrpc_enc_pool_add_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce86066d lustre_msg_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcea5dcfb ptlrpc_wake_delayed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcec513c9 RQF_MDS_UNPIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xced015be sptlrpc_rule_set_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf08df6c ptlrpc_prep_bulk_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf712948 ptlrpc_resend_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9963db lustre_msg_get_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9aab6a RQF_MDS_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd016bde5 ptlrpc_pinger_sending_on_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd0e41d8c req_capsule_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd0f66f85 client_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd135ea83 req_capsule_filled_sizes +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2983334 lustre_swab_swap_layouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd29daae9 ldlm_destroy_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2b0443e target_print_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2bd1af4 ptlrpc_nrs_policy_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2e0d4eb lustre_msg_get_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd3dae408 ldlm_it2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd537ded2 lustre_swab_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd5dd5bdc ptlrpc_start_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd60b9a42 req_capsule_server_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd67a5d7b lustre_swab_update_reply_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd69e0a27 RQF_MDS_IS_SUBDIR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6c3ebfb RMF_FIEMAP_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6c82dc6 __ptlrpc_free_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6cb7a8a ptlrpc_request_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7910326 lustre_swab_obd_statfs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7c08f86 do_set_info_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8293c9a req_capsule_client_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd85b7ec7 req_capsule_client_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8b91b3e lustre_swab_lov_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8f06300 RQF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd9561861 RQF_LDLM_INTENT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda2ac111 sptlrpc_proc_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdad3c6b1 ldlm_namespace_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb1fb0a2 RQF_MDS_REINT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb9cf0b8 ptlrpc_request_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb9d5a6a lustre_swab_niobuf_remote +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdcf910b9 lustre_swab_ost_last_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd0f1001 req_capsule_server_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd0ffb04 sptlrpc_flavor2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd30d7bf RMF_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd4471c3 lprocfs_rd_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xddc40a85 lustre_msg_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde12d36b RMF_MDS_HSM_ARCHIVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde555d70 sptlrpc_enc_pool_del_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdee87192 sptlrpc_conf_log_update_begin +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf57af9c sptlrpc_cli_unwrap_bulk_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf6daedd ptlrpc_request_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf701ae7 lustre_swab_fid2path +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe036cca1 ldlm_pool_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0cc694c RQF_LLOG_ORIGIN_HANDLE_NEXT_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe13b451e ldlm_resource_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe1a0e753 llog_origin_handle_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe1fa3bdf llog_origin_handle_read_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe20f56d2 ldlm_pool_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe22c7416 ptlrpc_set_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe233a8d2 ptlrpc_retain_replayable_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe2713d6e ptlrpc_invalidate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe2f077d8 ptlrpc_request_set_replen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe40e0a50 lustre_msg_get_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe549fcd3 ptlrpc_register_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe57bd972 sptlrpc_current_user_desc_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe5e8169b lustre_errno_ntoh +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe643998e RQF_OST_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6ae6143 ptlrpc_recover_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6f0dc96 RQF_OST_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7062b5f RMF_U32 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe73d6540 sptlrpc_conf_target_get_rules +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7512278 ptlrpcd_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe80af6ee ldlm_glimpse_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe81cf565 sptlrpc_unregister_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe97052a0 sptlrpc_req_replace_dead_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabaa0b1 lustre_swab_mdt_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabac4fc sptlrpc_rule_set_merge +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xebb64e68 req_layout_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec226f66 ping_evictor_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec939a00 RQF_MDS_REINT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecace5c1 RQF_OST_GET_INFO_GENERIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecb3ff97 ptl_send_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed159cf0 ptlrpc_req_set_repsize +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed1c10d6 ptlrpc_connection_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed26976a ptlrpc_lprocfs_brw +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xedc4fb54 lock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xedcb740d sptlrpc_name2flavor_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xef1aeca9 RMF_FLD_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0241d6e lustre_swab_hsm_progress_kernel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0410dc2 ptlrpc_cleanup_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0d52b5f ptlrpc_pinger_suppress_pings +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0e456ca ptlrpcd_wake +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf1300275 _sptlrpc_enlarge_msg_inplace +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf1ea9d59 __ptlrpc_prep_bulk_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf239b58d ptlrpc_disconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf2673fed ldlm_get_enq_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf277c125 RQF_OST_GET_INFO_FIEMAP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf27d49dc sptlrpc_target_choose_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf35f132b lustre_swab_ldlm_resource_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3c91e74 ptlrpc_request_bufs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3d44370 RQF_OST_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3ece29d ptlrpc_req_finished_with_imp_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf43540b9 lustre_swab_mgs_nidtbl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf45085e1 sptlrpc_conf_log_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf4c589ef lustre_pack_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf55c033b RMF_MGS_CONFIG_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf584a16b sptlrpc_part2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf596e9ae sptlrpc_conf_log_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf5ab2dfe ptlrpc_request_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf607fc23 sptlrpc_flavor2name_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf617ab8a lustre_msg_get_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf682a28b ptlrpc_register_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf697b756 ldlm_dump_all_namespaces +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7408f84 lustre_swab_hsm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7ba40c0 RMF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf85cb27e sptlrpc_parse_rule +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf870fed9 RQF_LDLM_GL_DESC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9051bd6 RQF_QC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf94e41e0 deuuidify +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf973aa93 lustre_swab_lov_user_md_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9ee11e2 lustre_msg_set_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9f72dfc RMF_TGTUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa1cffcb ptlrpc_prep_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa51688d interval_insert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb221d85 sptlrpc_enc_pool_get_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb444a98 ptlrpc_prep_fcset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb8854be ptlrpc_replay_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc2fa83f ptlrpc_del_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfcba40d6 ptlrpc_hpreq_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd0211fa ldlm_prep_enqueue_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd148bf8 RMF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff02a0e9 ldlm_lock_set_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff2b5341 ptlrpc_prep_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffc807e8 sptlrpc_unpack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffe29c3f RQF_LDLM_ENQUEUE +EXPORT_SYMBOL drivers/staging/media/cxd2099/cxd2099 0x67c82afc cxd2099_attach +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x7f5344d8 go7007_snd_remove +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x9071767a go7007_parse_video_stream +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x915c9000 go7007_read_interrupt +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x94b88cf9 go7007_snd_init +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xc14bec97 go7007_boot_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xceec67b5 go7007_update_board +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xedba4ad0 go7007_alloc +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xf05aef2c go7007_register_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xf8ac8061 go7007_read_addr +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x02848d54 rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0445fd94 rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x070c3901 rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1152bad2 rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1675f41f alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x18a7a2fd rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1af2cb23 rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x323fea9b rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x336afd88 rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x365c2226 rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x36b6dde8 rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x37580b56 rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x38954e70 rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x391f4a79 rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x40a14c62 dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5955e636 rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6390e0ed rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x65c90064 notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6a5089c0 rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6ae84229 rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6c07aeae rtllib_wpa_supplicant_ioctl +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x781b37d4 rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x78ebdd6e rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7c556d32 rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7f7a2a7b rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8184b963 rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x88856c79 Dot11d_Channelmap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8cdf6561 RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9548c82b rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9843f727 rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xaa2a6793 rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xae4be331 HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb06ac9bf rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb37a1a95 rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb45e9b24 rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbd4d0036 rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbe1420f2 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc4727899 rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc6070b92 rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc693241d rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xca059985 rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xcebb29d9 rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd2430292 free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdad470a2 rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdc7e33ff rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe993f14b rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xeaf45dd2 rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xeb14e64b rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf1f9f1a9 rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf4ae5330 rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf6230109 rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x04e00d49 ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x07169a22 ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0c598af9 ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x11d0fa85 ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x15a34988 ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x15ffb498 DOT11D_ScanComplete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1a851aa1 notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2a1988f9 ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2cd5cb91 ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2cfb646a ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x33d5b5bc ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x345b0195 ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3979fac3 ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3b3539fa Dot11d_Reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3cbb989d ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3f44894e ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x41bb8636 Dot11d_Init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x431d545e ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x477f586c ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4ba8edf7 ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4cd029f5 ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x50579b8a ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5629ce1c ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x58169c95 Dot11d_UpdateCountryIe +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5f7e7ad1 ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x669e3a1b ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6c32c8b5 ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x779bb2e3 SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x78017aad IsLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7c9d5502 ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8486f5d0 ToLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x862d1530 ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8a9f6b47 ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x91c30ab4 ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9521ef07 HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x99fb667e ieee80211_send_probe_requests_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa0381f1d ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa29da229 ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa6006718 ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa6f6b241 ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb118adc5 ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb35b153a ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb55c507f ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbda1e3f6 ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc019b768 ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc1b9b9d2 ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc228b0ba ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc26c62e5 ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd4faff28 ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd55bc995 ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd5824d35 DOT11D_GetMaxTxPwrInDbm +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd9d8047e ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xdc474a28 ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe16a5dbb ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xee6be0a7 ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf989cd46 ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0017f35f set_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x00ea0cde set_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x06d6f244 get_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x09df8f3e set_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0a8d32c3 get_bypass_slave_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1936264c set_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1d2eb8ca get_tap_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x203af1f7 reset_bypass_wd_timer_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2070f14a set_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x27b990ef get_bypass_info_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2ba7cd35 get_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2c3f1c17 get_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2f59e636 get_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2fdb893a get_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x361cf40a get_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x45ca99c3 set_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x550a188c set_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x5cb59e92 get_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x66b60122 set_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x675208c0 set_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x692623f2 get_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x75131ec6 set_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x76c0b7d0 set_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e872825 get_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e8d701e get_wd_expire_time_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x86388b07 get_bp_disc_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x93ae4648 get_wd_set_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x95e42b0d is_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9df5f807 set_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9e21f42e set_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xa689a214 get_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xae117788 get_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xc368d30d get_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xccab5de0 get_bypass_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd3e034b3 get_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9c1ccfc get_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9d38d97 set_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xe640f06e set_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xecdaa456 set_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xedcd3c1b get_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf06d67bf set_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf57c1671 get_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf693c3a1 bp_if_scan_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf8237882 get_bypass_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xfa59240d get_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05af3c4c set_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05b08a42 set_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0b0d5ce0 get_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0fc2e83c reset_bypass_wd_timer +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x123a8133 get_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x157ec89c get_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2440f05a get_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2b01d1d4 set_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2c27a2f0 set_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2da97f4b is_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2e86c67b get_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37416370 get_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37bdab27 get_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x3da96a18 get_bypass_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4025805e get_bypass_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4940a0cc get_bypass_info +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4d21ff51 get_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5147360c get_bp_disc_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x515d4df1 get_bypass_slave +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5560267e set_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5be44d44 set_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6653590c get_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6bda14ec get_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x72c618ae set_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x76d47e6f set_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x794e3815 set_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x7c6cbc16 get_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x84a263dc set_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x8a16f22c set_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x946ff795 get_wd_set_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x94f6aff2 get_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x9d1ecf73 set_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xb1385629 set_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xbff68c45 set_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xc871c561 get_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xcee528df set_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd202dd85 get_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd787f151 get_wd_expire_time +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xdb6a39d2 get_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xebd25ae5 get_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf1e9f8c1 set_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf224abd9 get_tap_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf5a591b2 set_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf643fd4c get_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x38270138 xillybus_endpoint_remove +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x6bdfec96 xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x8945bfe8 xillybus_do_cleanup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xbdd30cb9 xillybus_init_endpoint +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x03a26332 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0a3bc5bb iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0f29b7ef iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x17339fa2 iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1f7aa063 iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x240faef8 iscsit_handle_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x24bce6c3 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2ddc0e8c iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x38923a60 iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3a2b08c6 iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3a57f70d iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x57bec730 iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x57f5e7b7 iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x69a896ef iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x756a2166 iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x77e9fc24 iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7e290390 iscsit_set_unsoliticed_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8e52d582 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x92d05b2f iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9b16fad0 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9cab3d58 iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xacc08598 iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb45d4424 iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbfa55e6f iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc6ce72fa iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xcfc37dff iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe0b11ec3 iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe1fcf466 iscsit_register_transport +EXPORT_SYMBOL drivers/target/target_core_mod 0x002bc834 iscsi_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x02de3b18 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x0702db88 fc_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x093e79e4 spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0x0cd9f806 transport_check_aborted_status +EXPORT_SYMBOL drivers/target/target_core_mod 0x18b6b9c0 core_tpg_clear_object_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x1bf720ed transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x1dd4f30f sbc_execute_unmap +EXPORT_SYMBOL drivers/target/target_core_mod 0x20441048 target_setup_cmd_from_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x20fc5ceb target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x218050ae target_fabric_configfs_free +EXPORT_SYMBOL drivers/target/target_core_mod 0x235b2dfc core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x26255f37 target_put_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x284613be core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x2f213812 sas_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x32f7888f transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x33072943 target_fabric_configfs_init +EXPORT_SYMBOL drivers/target/target_core_mod 0x33a09b6a transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0x36810aec core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a2e3f57 transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x3c0a9572 core_tpg_add_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x3c408cc3 transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x3c4727d7 target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0x44a2275c target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x45f74854 iscsi_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x46acdf31 transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x4a64ad03 target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x4c107675 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x4d91b2e1 core_tpg_del_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x4dff7c99 spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x61781133 core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x64119dd3 transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x643a733a fc_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x6d090198 transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x6fbd7082 sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x6ff28105 transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x734009ce fc_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x760cfd2b target_fabric_configfs_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x7cd1534c spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0x7dbada9d transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x7f8e5f1a target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x840f49db sas_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x85aa880c transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x89458392 target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x8b85076f fc_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x9631cac3 transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0x96a46803 spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x97d11dde sas_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xa07ef121 target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xa21cdb30 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xaa43b6b7 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0xadb1c849 transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0xaf8ac3d8 target_get_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xb44ac632 core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0xb6787750 iscsi_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xbcde33fd core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xbe0c3bd5 transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xc77cacfc transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0xc8419ecb transport_subsystem_release +EXPORT_SYMBOL drivers/target/target_core_mod 0xccc4f7de sas_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0xd1599d7c transport_init_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0xd1fff30e transport_subsystem_register +EXPORT_SYMBOL drivers/target/target_core_mod 0xd255c1f5 core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0xd65928ff transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0xd8aa75c5 transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0xd8dc7944 target_fabric_configfs_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xdea5811e core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0xe1e4b4d5 sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0xe361de3b sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xe43c45b5 __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xf01621c7 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf58caffb target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0xfb37a61f target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0xfbf3bdba iscsi_get_pr_transport_id +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0x7de8417e usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0x84b4c9f9 unregister_gadget_item +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x085a5ad3 gether_set_gadget +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x09784862 gether_get_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x2f1435ac gether_register_netdev +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x3d372803 gether_set_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x426e292d gether_get_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x478e0e43 gether_set_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x4d157e9e gether_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x68e103e7 gether_get_host_addr_cdc +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x88a2b84b gether_setup_name_default +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x9e5b85d5 gether_connect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xa123add1 gether_set_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xb0af3857 gether_get_host_addr_u8 +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xe6e32fa3 gether_get_ifname +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xe85d1262 gether_get_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xed41bd8f gether_setup_name +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3a6d4f22 rndis_free_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3ca38e3a rndis_signal_connect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x4ca90996 rndis_signal_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x5d22b406 rndis_register +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x70970ef1 rndis_set_param_dev +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x785d494b rndis_msg_parser +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x840dd143 rndis_deregister +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x988ad2a2 rndis_set_param_vendor +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x9acf72e4 rndis_set_param_medium +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xa90054ee rndis_uninit +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xac1f4f4d rndis_rm_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xb971ebca rndis_get_next_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xd2fe47b1 rndis_set_host_mac +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xe3931360 rndis_add_hdr +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x069213bf fsg_show_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1710b539 fsg_fs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x17218d5c fsg_show_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1b1cc3af store_cdrom_address +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x2933ee1d fsg_ss_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x31ad4539 fsg_show_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x398778e1 fsg_ss_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x423845e4 fsg_ss_bulk_in_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x56344daf fsg_hs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x5ae3e388 fsg_lun_open +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x7304d1e1 fsg_store_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x784d41de fsg_store_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x7c351bfe fsg_show_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x868309f7 fsg_store_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x95cffb3e fsg_hs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5cae92f fsg_ss_bulk_out_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5f99b69 fsg_fs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb313004e fsg_lun_close +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb52ba28a fsg_intf_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb54d0d95 fsg_fs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xc1349c8f fsg_store_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xd187d4f2 fsg_show_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xd3f4194a fsg_lun_fsync_sub +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xdb1c50f3 fsg_store_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xf4efc0c8 fsg_ss_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_rndis 0xb09a171e rndis_borrow_net +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0x8ed8bd74 sl811h_driver +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xa64a4cea usb_nop_xceiv_unregister +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xd0e43207 usb_nop_xceiv_register +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x0f68a6c6 usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x143a79c5 usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x1cc9d6ef usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x40e5e835 usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x60eabd88 usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xa94a2123 usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xaf8daaed usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xc53b6ea0 usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xc53f3ad3 usb_wwan_set_termios +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xdfb016ff usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xe95b3d87 usb_wwan_ioctl +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xf2010e41 usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xf6c72396 usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x46058e15 usb_serial_resume +EXPORT_SYMBOL drivers/usb/serial/usbserial 0xace87b25 usb_serial_suspend +EXPORT_SYMBOL drivers/vhost/vringh 0x0dda8c5a vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x1f063017 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x2e91ca97 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x367ce26a vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x36dfce73 vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3eaf442a vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x3fa42e4f vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5dafbd4e vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x66af098b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x6d0e7948 vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x7bda5e6d vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x821e9390 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0xaf8e4a0e vringh_notify_disable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xafb47dae vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc884d704 vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc8bee0a4 vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xd11d2709 vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xda4ea4cc vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0xfc7dcad2 vringh_getdesc_user +EXPORT_SYMBOL drivers/video/backlight/generic_bl 0x366d19ef genericbl_limit_intensity +EXPORT_SYMBOL drivers/video/backlight/lcd 0x5bab23aa devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0xa7558b15 devm_lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xc2edb378 lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xd4dcacb4 lcd_device_unregister +EXPORT_SYMBOL drivers/video/cyber2000fb 0x0cc3ede5 cyber2000fb_detach +EXPORT_SYMBOL drivers/video/cyber2000fb 0x534b6f18 cyber2000fb_disable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xb39f68d1 cyber2000fb_enable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xdf4c7920 cyber2000fb_attach +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x48c26f92 g450_mnp2f +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x77156bfb matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x891868fb matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x24a06cdc DAC1064_global_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x2e6f9f51 matrox_G100 +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x613a2c1a matrox_mystique +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xffb7bf9e DAC1064_global_restore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_Ti3026 0xd129d943 matrox_millennium +EXPORT_SYMBOL drivers/video/matrox/matroxfb_accel 0xd0685980 matrox_cfbX_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x168dc186 matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x3d075ef6 matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x8d9443f5 matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xeb2af19b matroxfb_register_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x22cbe2b9 matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x328b6498 matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x1f9d6b61 matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x2f067698 matroxfb_read_pins +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xc2df93bd matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xc5b227c2 matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xd2bdb835 matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/mb862xx/mb862xxfb 0xf2d22422 mb862xxfb_init_accel +EXPORT_SYMBOL drivers/video/output 0x0b08bac9 video_output_unregister +EXPORT_SYMBOL drivers/video/output 0xab852fa8 video_output_register +EXPORT_SYMBOL drivers/video/sis/sisfb 0x3037658e sis_malloc +EXPORT_SYMBOL drivers/video/sis/sisfb 0x454a3cf0 sis_free +EXPORT_SYMBOL drivers/video/svgalib 0x00c7a827 svga_tilefill +EXPORT_SYMBOL drivers/video/svgalib 0x17f3f471 svga_set_default_seq_regs +EXPORT_SYMBOL drivers/video/svgalib 0x1be6dc30 svga_set_textmode_vga_regs +EXPORT_SYMBOL drivers/video/svgalib 0x38521e64 svga_get_caps +EXPORT_SYMBOL drivers/video/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/svgalib 0x5b14e69e svga_settile +EXPORT_SYMBOL drivers/video/svgalib 0x5bb2a6e3 svga_tilecursor +EXPORT_SYMBOL drivers/video/svgalib 0x5dec78cc svga_tilecopy +EXPORT_SYMBOL drivers/video/svgalib 0x6e4adb1e svga_check_timings +EXPORT_SYMBOL drivers/video/svgalib 0x80f24d95 svga_wcrt_multi +EXPORT_SYMBOL drivers/video/svgalib 0x8de63fb4 svga_set_timings +EXPORT_SYMBOL drivers/video/svgalib 0xa736f5d8 svga_tileblit +EXPORT_SYMBOL drivers/video/svgalib 0xd07e4cb9 svga_get_tilemax +EXPORT_SYMBOL drivers/video/svgalib 0xd1429fca svga_wseq_multi +EXPORT_SYMBOL drivers/video/svgalib 0xd22ca511 svga_set_default_atc_regs +EXPORT_SYMBOL drivers/video/svgalib 0xe28d2a49 svga_set_default_gfx_regs +EXPORT_SYMBOL drivers/video/svgalib 0xef774f5d svga_compute_pll +EXPORT_SYMBOL drivers/video/svgalib 0xf2db5956 svga_match_format +EXPORT_SYMBOL drivers/video/vgastate 0x686de290 restore_vga +EXPORT_SYMBOL drivers/video/vgastate 0xe7a2620e save_vga +EXPORT_SYMBOL drivers/virt/fsl_hypervisor 0x45fd1882 fsl_hv_failover_unregister +EXPORT_SYMBOL drivers/virt/fsl_hypervisor 0x77c9b191 fsl_hv_failover_register +EXPORT_SYMBOL drivers/vme/vme 0x00d7e722 vme_lm_count +EXPORT_SYMBOL drivers/vme/vme 0x072f901c vme_master_rmw +EXPORT_SYMBOL drivers/vme/vme 0x0ec5babe vme_dma_free +EXPORT_SYMBOL drivers/vme/vme 0x0fcc3381 vme_slave_request +EXPORT_SYMBOL drivers/vme/vme 0x20df5a3d vme_dma_pci_attribute +EXPORT_SYMBOL drivers/vme/vme 0x37faf527 vme_register_driver +EXPORT_SYMBOL drivers/vme/vme 0x3e95083c vme_slave_get +EXPORT_SYMBOL drivers/vme/vme 0x41862ad4 vme_alloc_consistent +EXPORT_SYMBOL drivers/vme/vme 0x46649cd1 vme_lm_set +EXPORT_SYMBOL drivers/vme/vme 0x48b99a13 vme_lm_free +EXPORT_SYMBOL drivers/vme/vme 0x4baf35a7 vme_master_get +EXPORT_SYMBOL drivers/vme/vme 0x535c8308 vme_dma_pattern_attribute +EXPORT_SYMBOL drivers/vme/vme 0x56917d2b vme_new_dma_list +EXPORT_SYMBOL drivers/vme/vme 0x5aff4177 vme_lm_get +EXPORT_SYMBOL drivers/vme/vme 0x5cb3a087 vme_dma_list_free +EXPORT_SYMBOL drivers/vme/vme 0x606fe472 vme_dma_request +EXPORT_SYMBOL drivers/vme/vme 0x6e3c5ea2 vme_slot_get +EXPORT_SYMBOL drivers/vme/vme 0x6e8683ce vme_bus_type +EXPORT_SYMBOL drivers/vme/vme 0x74056299 vme_unregister_bridge +EXPORT_SYMBOL drivers/vme/vme 0x7bc84cd9 vme_dma_list_add +EXPORT_SYMBOL drivers/vme/vme 0x7cf35220 vme_master_free +EXPORT_SYMBOL drivers/vme/vme 0x7fde2edb vme_master_read +EXPORT_SYMBOL drivers/vme/vme 0x86b06279 vme_master_request +EXPORT_SYMBOL drivers/vme/vme 0x87751605 vme_unregister_driver +EXPORT_SYMBOL drivers/vme/vme 0x90695906 vme_free_consistent +EXPORT_SYMBOL drivers/vme/vme 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL drivers/vme/vme 0x9aeb07e8 vme_lm_attach +EXPORT_SYMBOL drivers/vme/vme 0x9c5522e0 vme_dma_list_exec +EXPORT_SYMBOL drivers/vme/vme 0xa31bdf07 vme_master_set +EXPORT_SYMBOL drivers/vme/vme 0xa80f0534 vme_irq_request +EXPORT_SYMBOL drivers/vme/vme 0xa9ec7542 vme_irq_generate +EXPORT_SYMBOL drivers/vme/vme 0xd0831a31 vme_irq_free +EXPORT_SYMBOL drivers/vme/vme 0xd64bd33b vme_lm_request +EXPORT_SYMBOL drivers/vme/vme 0xd797b9a5 vme_master_write +EXPORT_SYMBOL drivers/vme/vme 0xdff905e5 vme_slave_free +EXPORT_SYMBOL drivers/vme/vme 0xe1f1b637 vme_irq_handler +EXPORT_SYMBOL drivers/vme/vme 0xe693a6ce vme_get_size +EXPORT_SYMBOL drivers/vme/vme 0xedf4b7d2 vme_register_bridge +EXPORT_SYMBOL drivers/vme/vme 0xefd1624a vme_dma_free_attribute +EXPORT_SYMBOL drivers/vme/vme 0xf5a10e25 vme_slave_set +EXPORT_SYMBOL drivers/vme/vme 0xfacd8e72 vme_dma_vme_attribute +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x0257be25 w1_ds2760_store_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x40d2737e w1_ds2760_read +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x73007939 w1_ds2760_recall_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xc8189a29 w1_ds2760_write +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x60d91d48 w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xa38c843b w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x24f6c1af w1_ds2781_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x53bd5cd4 w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/wire 0x0d31bc8f w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0xacfe4fb7 w1_unregister_family +EXPORT_SYMBOL drivers/w1/wire 0xf23d6c0e w1_remove_master_device +EXPORT_SYMBOL drivers/w1/wire 0xfceacbe9 w1_register_family +EXPORT_SYMBOL fs/btrfs/btrfs 0x27476846 ulist_reinit +EXPORT_SYMBOL fs/btrfs/btrfs 0x41e6a9d2 ulist_init +EXPORT_SYMBOL fs/btrfs/btrfs 0x7e2ee765 ulist_free +EXPORT_SYMBOL fs/btrfs/btrfs 0xa2eec2e8 ulist_fini +EXPORT_SYMBOL fs/btrfs/btrfs 0xb1320bc8 ulist_add +EXPORT_SYMBOL fs/btrfs/btrfs 0xb42289d2 ulist_alloc +EXPORT_SYMBOL fs/btrfs/btrfs 0xc2c745db ulist_next +EXPORT_SYMBOL fs/configfs/configfs 0x0858e19a config_item_put +EXPORT_SYMBOL fs/configfs/configfs 0x2263a8a4 configfs_depend_item +EXPORT_SYMBOL fs/configfs/configfs 0x248779ed config_item_get +EXPORT_SYMBOL fs/configfs/configfs 0x49241529 config_group_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0x55081048 configfs_unregister_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0x64aee590 config_item_set_name +EXPORT_SYMBOL fs/configfs/configfs 0x8049ab3a configfs_undepend_item +EXPORT_SYMBOL fs/configfs/configfs 0x8dd1f248 config_group_init +EXPORT_SYMBOL fs/configfs/configfs 0xaeacb88b config_group_find_item +EXPORT_SYMBOL fs/configfs/configfs 0xe6839350 config_item_init +EXPORT_SYMBOL fs/configfs/configfs 0xea09dec6 config_item_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0xf9b468d3 configfs_register_subsystem +EXPORT_SYMBOL fs/exofs/libore 0x0753e3d2 ore_get_rw_state +EXPORT_SYMBOL fs/exofs/libore 0x28806871 ore_verify_layout +EXPORT_SYMBOL fs/exofs/libore 0x39c53c10 extract_attr_from_ios +EXPORT_SYMBOL fs/exofs/libore 0x4527e170 ore_calc_stripe_info +EXPORT_SYMBOL fs/exofs/libore 0x5f5a482b ore_put_io_state +EXPORT_SYMBOL fs/exofs/libore 0x6f1d7d85 ore_write +EXPORT_SYMBOL fs/exofs/libore 0x719071ea ore_get_io_state +EXPORT_SYMBOL fs/exofs/libore 0x99a0848b ore_create +EXPORT_SYMBOL fs/exofs/libore 0xa3d2a634 g_attr_logical_length +EXPORT_SYMBOL fs/exofs/libore 0xd5cc68f4 ore_remove +EXPORT_SYMBOL fs/exofs/libore 0xdd80ef5b ore_read +EXPORT_SYMBOL fs/exofs/libore 0xe032f563 ore_check_io +EXPORT_SYMBOL fs/exofs/libore 0xee5b9767 ore_truncate +EXPORT_SYMBOL fs/fscache/fscache 0x00bf842a __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x1d24e89b __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0x22701178 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x2645f281 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0x2a88703a fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0x2dbeba5d __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x377e1d11 __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0x3b9b5fce fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x3bdcb4d2 fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0x3f85c883 __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x49a8ae7c __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x4ca61c1e fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0x50fb5372 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x51735f02 fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0x664a2179 __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0x72453d95 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x7435c20d fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x84639bed fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0x8560a795 __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x89816ab5 fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0x92053a43 fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0x95411e35 __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x993a496d __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xad9b1d8e __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0xae92428b __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0xaf75a705 fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0xb0c92a26 fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0xb0de49e4 __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0xb1faeb74 fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0xb7094020 __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0xc0a9f4f4 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0xc7b5e88e __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0xcf3420cb fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0xdae84edc fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0xdf9c7417 __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xeb2eca46 fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0xf8888a03 __fscache_invalidate +EXPORT_SYMBOL fs/nfsd/nfsd 0x35e33c1e nfs4_acl_write_who +EXPORT_SYMBOL fs/nfsd/nfsd 0x5a157ae4 nfs4_acl_get_whotype +EXPORT_SYMBOL fs/nfsd/nfsd 0xa0f4b528 nfs4_acl_posix_to_nfsv4 +EXPORT_SYMBOL fs/nfsd/nfsd 0xb25b2957 nfs4_acl_nfsv4_to_posix +EXPORT_SYMBOL fs/nfsd/nfsd 0xe13337f0 nfs4_acl_new +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x0bba2808 qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x3d4ba4be qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0x443cf9bb qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x9a6942e4 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xc2d00e65 qtree_write_dquot +EXPORT_SYMBOL lib/cordic 0x434bfd07 cordic_calc_iq +EXPORT_SYMBOL lib/crc-ccitt 0x3771b461 crc_ccitt +EXPORT_SYMBOL lib/crc-ccitt 0x75811312 crc_ccitt_table +EXPORT_SYMBOL lib/crc-itu-t 0xd29b009f crc_itu_t_table +EXPORT_SYMBOL lib/crc-itu-t 0xf5b4a948 crc_itu_t +EXPORT_SYMBOL lib/crc7 0xa7587646 crc7 +EXPORT_SYMBOL lib/crc7 0xd80c3603 crc7_syndrome_table +EXPORT_SYMBOL lib/crc8 0x41248eaf crc8 +EXPORT_SYMBOL lib/crc8 0xab9ad613 crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xd4534d80 crc8_populate_msb +EXPORT_SYMBOL lib/libcrc32c 0x27000b29 crc32c +EXPORT_SYMBOL lib/lru_cache 0x0c9ff2c3 lc_find +EXPORT_SYMBOL lib/lru_cache 0x0d2dc6b3 lc_reset +EXPORT_SYMBOL lib/lru_cache 0x2bca6ccb lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x3691748f lc_set +EXPORT_SYMBOL lib/lru_cache 0x3e9045d6 lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0x43e46a2d lc_committed +EXPORT_SYMBOL lib/lru_cache 0x452c8b46 lc_del +EXPORT_SYMBOL lib/lru_cache 0x4f65bc48 lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0x60fd5d64 lc_is_used +EXPORT_SYMBOL lib/lru_cache 0x75a91db9 lc_destroy +EXPORT_SYMBOL lib/lru_cache 0x8af6181d lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0xa2873827 lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xb74693bf lc_try_get +EXPORT_SYMBOL lib/lru_cache 0xbb6d3769 lc_create +EXPORT_SYMBOL lib/lru_cache 0xbd032277 lc_put +EXPORT_SYMBOL lib/lru_cache 0xef129f5b lc_get +EXPORT_SYMBOL lib/lru_cache 0xf9b6ff79 lc_get_cumulative +EXPORT_SYMBOL lib/lz4/lz4_compress 0xcbc5d521 lz4_compress +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x26c3aa22 lz4hc_compress +EXPORT_SYMBOL lib/raid6/raid6_pq 0x0bd662f6 raid6_gfmul +EXPORT_SYMBOL lib/raid6/raid6_pq 0x15fe0cd3 raid6_gfexp +EXPORT_SYMBOL lib/raid6/raid6_pq 0x5ba93f9d raid6_gfinv +EXPORT_SYMBOL lib/raid6/raid6_pq 0x7456cc61 raid6_empty_zero_page +EXPORT_SYMBOL lib/raid6/raid6_pq 0xce45a6f1 raid6_gfexi +EXPORT_SYMBOL lib/raid6/raid6_pq 0xd9e91f83 raid6_vgfmul +EXPORT_SYMBOL net/802/p8022 0x26d4c60c register_8022_client +EXPORT_SYMBOL net/802/p8022 0x83dc5797 unregister_8022_client +EXPORT_SYMBOL net/802/p8023 0x7e418edc make_8023_client +EXPORT_SYMBOL net/802/p8023 0xf4c5ecef destroy_8023_client +EXPORT_SYMBOL net/802/psnap 0x855b4403 unregister_snap_client +EXPORT_SYMBOL net/802/psnap 0xfd32668a register_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x0aecde85 p9_payload_gup +EXPORT_SYMBOL net/9p/9pnet 0x11145e2e p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0x178f17d2 p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x1a37c7e9 p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x1d363f1b p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0x1db57e3b p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x21e6a977 p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x35d1e27e p9_idpool_get +EXPORT_SYMBOL net/9p/9pnet 0x36a25794 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0x37ce6d37 v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x44d2c2c0 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0x458687ce v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x4a4e9706 p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0x4d379273 p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0x4f393299 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x51fb1091 p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0x54c07857 p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0x55ad2232 p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x56e1082b p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0x59a82099 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0x6336c19f p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x675f5385 p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x67687c70 p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0x6ceef040 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x6ddee64a p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0x70f1f51f v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0x73c7ed50 p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x7fa78fc6 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0x866c615d p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x87675956 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x911b9a3f p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0x91ce3e94 p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0x977a0030 p9_nr_pages +EXPORT_SYMBOL net/9p/9pnet 0x9d92ed5a p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0xa37f9602 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0xa3eaadfe p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0xb1191b98 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0xb4fa7fdc p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0xba1607a7 v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0xc173ad52 p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0xc5db54a9 p9_idpool_destroy +EXPORT_SYMBOL net/9p/9pnet 0xd0d7b070 p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0xd2b3ebcc p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0xe06805a0 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xef51a352 p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0xf4a111d8 p9_idpool_create +EXPORT_SYMBOL net/9p/9pnet 0xf7bf730a p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0xf84f2022 p9_idpool_put +EXPORT_SYMBOL net/9p/9pnet 0xfd40c79d p9_idpool_check +EXPORT_SYMBOL net/9p/9pnet 0xffbfd657 p9_client_rename +EXPORT_SYMBOL net/appletalk/appletalk 0x3cc77ae3 alloc_ltalkdev +EXPORT_SYMBOL net/appletalk/appletalk 0xd3262f32 aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0xe23099f0 atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0xfc3bca80 atrtr_get_dev +EXPORT_SYMBOL net/atm/atm 0x02c80170 vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x2df4462b atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0x33f2f256 atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0x3ece105b vcc_release_async +EXPORT_SYMBOL net/atm/atm 0x3fd27ee1 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0x422fe0cf atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x4c49ab29 atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0x5d5284e8 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x75b9b32d vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0x8a75bcac atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x914c3d11 atm_charge +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xca87b453 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0xcca239d7 atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0xda8934ea deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/ax25/ax25 0x026c1368 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x3afee63e ax25_findbyuid +EXPORT_SYMBOL net/ax25/ax25 0x44c24885 ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x4e8bf29d ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x54b87c7d ax25_rebuild_header +EXPORT_SYMBOL net/ax25/ax25 0x69d25bcb ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0x7267034b ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x8e8a175e ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0xa86dad96 ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xeb4a5d0f ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0xebfb121f ax25_hard_header +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0046257b bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0f20e9cf bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0x21c5261b bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x266019ea bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x27c01181 hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2ab9f270 bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3a54d586 __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x429cf569 bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4b13cda2 bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4daf0777 hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x55b57f80 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0x56c253a8 hci_recv_stream_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x64df6e49 hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x75ae3117 l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0x77300558 hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7a7b3e60 hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7c640527 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x807c6086 bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0x84aac998 bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0x866f7c0b hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x91c9a325 bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9bdebaca hci_recv_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9dd426a3 bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa2f07bd3 hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa2f33836 l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa5be86bb bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa5ceba17 hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa61b21da bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa901e0af __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xac7879ce l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xafe45246 bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb61a0c3b bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc704f2ee bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcab486b3 bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcc1fb551 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0xce5a775e hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd549457b hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdfe3bdb5 hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe50f532c l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe7863d9b hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf77d6233 l2cap_is_socket +EXPORT_SYMBOL net/bridge/bridge 0x31c8bf6d br_should_route_hook +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x040fa658 ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x18c00abf ebt_do_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x3ff1d311 ebt_register_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +EXPORT_SYMBOL net/caif/caif 0x2a09f713 cfpkt_fromnative +EXPORT_SYMBOL net/caif/caif 0x329dbd06 cfpkt_info +EXPORT_SYMBOL net/caif/caif 0x38701a7c cfcnfg_del_phy_layer +EXPORT_SYMBOL net/caif/caif 0x4a237e57 cfpkt_tonative +EXPORT_SYMBOL net/caif/caif 0x6a44fc70 cfpkt_extr_head +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x966d7de2 cfpkt_add_head +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xb74d1a7a cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/caif/caif 0xc01b32d4 get_cfcnfg +EXPORT_SYMBOL net/caif/caif 0xc5f4f9ab caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0xd0aa6870 caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0xeefcd120 caif_connect_client +EXPORT_SYMBOL net/can/can 0x0a99c95f can_ioctl +EXPORT_SYMBOL net/can/can 0x18b3348b can_rx_register +EXPORT_SYMBOL net/can/can 0x69855535 can_rx_unregister +EXPORT_SYMBOL net/can/can 0xa201e83c can_send +EXPORT_SYMBOL net/can/can 0xaa984c47 can_proto_register +EXPORT_SYMBOL net/can/can 0xf10a47bf can_proto_unregister +EXPORT_SYMBOL net/ceph/libceph 0x081dcd3a osd_req_op_watch_init +EXPORT_SYMBOL net/ceph/libceph 0x086558a9 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x09290ab3 ceph_debugfs_init +EXPORT_SYMBOL net/ceph/libceph 0x0ed1f110 ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0x0f0eaaaf osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0x10523fe5 osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x10940306 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0x128d05dc ceph_osdc_build_request +EXPORT_SYMBOL net/ceph/libceph 0x1379ab67 ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0x1475bf0d ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x18db93c2 ceph_client_id +EXPORT_SYMBOL net/ceph/libceph 0x197effcb ceph_osdc_release_request +EXPORT_SYMBOL net/ceph/libceph 0x1b7ee078 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0x1bfbd213 ceph_osdc_readpages +EXPORT_SYMBOL net/ceph/libceph 0x20d151cb ceph_osdc_setup +EXPORT_SYMBOL net/ceph/libceph 0x23b620ed osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x282729f0 ceph_get_direct_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x2a5e682a osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0x3158173e ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x32429f5f ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0x35f89cbe ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0x36fda9a8 ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x39a204f9 ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x3abec91f ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x3ca78f69 ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0x3d306ea2 ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x3df0ec7c ceph_calc_ceph_pg +EXPORT_SYMBOL net/ceph/libceph 0x3f688151 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x4205ffd7 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0x43c8d341 ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x43e458f6 ceph_file_part +EXPORT_SYMBOL net/ceph/libceph 0x43efd647 ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0x4471fc9b ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x46fd442c osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0x49b4fc74 osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x4b06d18b __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x4bcac665 ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0x5379cea3 ceph_caps_for_mode +EXPORT_SYMBOL net/ceph/libceph 0x5615bdb0 ceph_osdc_set_request_linger +EXPORT_SYMBOL net/ceph/libceph 0x563248ed ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x5a750c29 ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x5bc6cb28 osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0x5f6954d9 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0x5fd6c72e ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x5fe4b2fa ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0x60171139 ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x6b2e3bcd ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x6c5d5ac1 ceph_calc_pg_primary +EXPORT_SYMBOL net/ceph/libceph 0x6d2d06a1 ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0x6ed41be2 ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0x6faf833f ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0x731267da ceph_osdc_cancel_event +EXPORT_SYMBOL net/ceph/libceph 0x732e3799 osd_req_op_cls_response_data +EXPORT_SYMBOL net/ceph/libceph 0x76de1b0f ceph_copy_page_vector_to_user +EXPORT_SYMBOL net/ceph/libceph 0x77692acb ceph_msg_last_put +EXPORT_SYMBOL net/ceph/libceph 0x7c731532 ceph_monc_create_snapid +EXPORT_SYMBOL net/ceph/libceph 0x7da9935d osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x7dedd195 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x7df3aac2 ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x8017bb7d ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x80af5ff5 ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0x8f54bd11 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0x99de4738 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x99e36571 ceph_osdc_cleanup +EXPORT_SYMBOL net/ceph/libceph 0x9ac45348 ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0x9c7a895b ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0x9e69dc73 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0x9f534f4d ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xa40bd703 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0xae3515ba ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb2161666 ceph_osdc_unregister_linger_request +EXPORT_SYMBOL net/ceph/libceph 0xb446dc2b osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb6081d6d ceph_msgr_exit +EXPORT_SYMBOL net/ceph/libceph 0xb9d1b91b ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xbec6cee7 ceph_osdc_create_event +EXPORT_SYMBOL net/ceph/libceph 0xc4a80955 ceph_debugfs_cleanup +EXPORT_SYMBOL net/ceph/libceph 0xc55de604 ceph_parse_options +EXPORT_SYMBOL net/ceph/libceph 0xc9f82b38 ceph_msgr_init +EXPORT_SYMBOL net/ceph/libceph 0xcb50a624 ceph_parse_ips +EXPORT_SYMBOL net/ceph/libceph 0xce8f44a3 ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xcf40b7de ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0xd2c107bb ceph_flags_to_mode +EXPORT_SYMBOL net/ceph/libceph 0xd6c074b1 ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0xd97645a1 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0xdb25337c ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xdc6955e8 ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xdcf0b4ba ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0xddc002c2 ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xdf158d8a ceph_monc_got_mdsmap +EXPORT_SYMBOL net/ceph/libceph 0xe30ce5dd osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0xe573cbc7 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0xe82c9c32 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0xea0aaed9 ceph_osdc_writepages +EXPORT_SYMBOL net/ceph/libceph 0xebf1df11 ceph_osdc_put_event +EXPORT_SYMBOL net/ceph/libceph 0xefbdda56 ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0xf0049310 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0xf2378e7a ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0xfc695a61 ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xfd5c968c osd_req_op_extent_osd_data +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x6b367fca dccp_syn_ack_timeout +EXPORT_SYMBOL net/ieee802154/ieee802154 0x07bab108 ieee802154_nl_disassoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x11b55956 ieee802154_nl_disassoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x15782270 ieee802154_nl_scan_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x213ffdc0 wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0x48892fbc ieee802154_nl_start_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x5f58da2b ieee802154_nl_assoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x82d03d90 wpan_phy_alloc +EXPORT_SYMBOL net/ieee802154/ieee802154 0x8ee3ae93 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0xab1603f2 wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0xd56ab5b7 ieee802154_nl_assoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0xda2513c2 wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0xe3b98879 ieee802154_nl_beacon_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0xf60cb35f wpan_phy_free +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x2874dff1 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xc827e15e arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xf10d50be arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x0f37fda8 ipt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x2ff1a1e8 ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xcd67aa55 ipt_register_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x419b023e xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0x75a70599 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x1f1c0b18 ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x55c8db45 ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x009a5821 ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x1ac7ad9f ip6t_do_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xf2530425 ip6t_register_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x54cebd94 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/tunnel6 0xf542e148 xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x41fd3597 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x8acaeae9 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x16a8bcdf ircomm_disconnect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x33808359 ircomm_flow_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x60356af2 ircomm_close +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xaa440d40 ircomm_data_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xcfa507e3 ircomm_connect_response +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xd5ff7fc5 ircomm_open +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xf4363283 ircomm_control_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xfcc9825f ircomm_connect_request +EXPORT_SYMBOL net/irda/irda 0x0064e0ea hashbin_get_first +EXPORT_SYMBOL net/irda/irda 0x06a3ee58 irias_new_integer_value +EXPORT_SYMBOL net/irda/irda 0x07d3647c irlmp_register_service +EXPORT_SYMBOL net/irda/irda 0x0db565dc irlmp_open_lsap +EXPORT_SYMBOL net/irda/irda 0x13a11712 irlap_open +EXPORT_SYMBOL net/irda/irda 0x1e6cade0 irias_add_integer_attrib +EXPORT_SYMBOL net/irda/irda 0x2036ad06 irda_param_insert +EXPORT_SYMBOL net/irda/irda 0x261fdae8 irda_notify_init +EXPORT_SYMBOL net/irda/irda 0x26918420 irlmp_connect_request +EXPORT_SYMBOL net/irda/irda 0x33cbe2c6 proc_irda +EXPORT_SYMBOL net/irda/irda 0x3e56064f hashbin_new +EXPORT_SYMBOL net/irda/irda 0x448b8aaa irda_qos_bits_to_value +EXPORT_SYMBOL net/irda/irda 0x46c1c4a2 irlmp_unregister_service +EXPORT_SYMBOL net/irda/irda 0x50d74227 alloc_irdadev +EXPORT_SYMBOL net/irda/irda 0x56085cb8 irttp_open_tsap +EXPORT_SYMBOL net/irda/irda 0x5bd465b3 irttp_flow_request +EXPORT_SYMBOL net/irda/irda 0x601bda46 hashbin_remove +EXPORT_SYMBOL net/irda/irda 0x65c8e3d6 irttp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0x6b043eba irda_init_max_qos_capabilies +EXPORT_SYMBOL net/irda/irda 0x6b5fbcef hashbin_get_next +EXPORT_SYMBOL net/irda/irda 0x6b9c5369 irlmp_data_request +EXPORT_SYMBOL net/irda/irda 0x6e0ab3c7 irias_add_string_attrib +EXPORT_SYMBOL net/irda/irda 0x7042bc54 irlmp_register_client +EXPORT_SYMBOL net/irda/irda 0x7521499a async_wrap_skb +EXPORT_SYMBOL net/irda/irda 0x763e54a4 irlmp_unregister_client +EXPORT_SYMBOL net/irda/irda 0x7957f728 irlmp_update_client +EXPORT_SYMBOL net/irda/irda 0x85d88217 irias_delete_object +EXPORT_SYMBOL net/irda/irda 0x8c364ea5 irda_device_set_media_busy +EXPORT_SYMBOL net/irda/irda 0x91815586 irda_param_pack +EXPORT_SYMBOL net/irda/irda 0x98acade3 irttp_dup +EXPORT_SYMBOL net/irda/irda 0x993ad14b irda_param_extract_all +EXPORT_SYMBOL net/irda/irda 0x9ce8b9fb irttp_close_tsap +EXPORT_SYMBOL net/irda/irda 0xa1d41e58 hashbin_delete +EXPORT_SYMBOL net/irda/irda 0xa48f39bb irlmp_connect_response +EXPORT_SYMBOL net/irda/irda 0xa5261ef2 irlmp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0xa6c453fe irlap_close +EXPORT_SYMBOL net/irda/irda 0xa705a94e irlmp_close_lsap +EXPORT_SYMBOL net/irda/irda 0xaa557515 irias_new_object +EXPORT_SYMBOL net/irda/irda 0xb1e166e3 irttp_data_request +EXPORT_SYMBOL net/irda/irda 0xb58031b9 irttp_connect_request +EXPORT_SYMBOL net/irda/irda 0xb9394173 irias_delete_value +EXPORT_SYMBOL net/irda/irda 0xbad727dd iriap_open +EXPORT_SYMBOL net/irda/irda 0xbc0f5b2c iriap_close +EXPORT_SYMBOL net/irda/irda 0xbcd3ef13 irias_object_change_attribute +EXPORT_SYMBOL net/irda/irda 0xbe40ace9 irlmp_discovery_request +EXPORT_SYMBOL net/irda/irda 0xc68e43be irias_add_octseq_attrib +EXPORT_SYMBOL net/irda/irda 0xc9cd4587 irttp_udata_request +EXPORT_SYMBOL net/irda/irda 0xcead7dbb hashbin_find +EXPORT_SYMBOL net/irda/irda 0xd030705a async_unwrap_char +EXPORT_SYMBOL net/irda/irda 0xd2108314 hashbin_insert +EXPORT_SYMBOL net/irda/irda 0xd6deeaae irda_setup_dma +EXPORT_SYMBOL net/irda/irda 0xde4c6b3c irlmp_service_to_hint +EXPORT_SYMBOL net/irda/irda 0xe3463529 hashbin_lock_find +EXPORT_SYMBOL net/irda/irda 0xe3bde43e irias_insert_object +EXPORT_SYMBOL net/irda/irda 0xe487e80c irttp_connect_response +EXPORT_SYMBOL net/irda/irda 0xedd521c2 irlmp_get_discoveries +EXPORT_SYMBOL net/irda/irda 0xef2b533d iriap_getvaluebyclass_request +EXPORT_SYMBOL net/irda/irda 0xf0a694a1 irias_find_object +EXPORT_SYMBOL net/irda/irda 0xf5876b95 hashbin_remove_this +EXPORT_SYMBOL net/l2tp/l2tp_core 0x3c19b374 l2tp_recv_common +EXPORT_SYMBOL net/lapb/lapb 0x1cd9de12 lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0x1fea636c lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0x2067b415 lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0x33e05a5b lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0x5cc24a67 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0x6f63836f lapb_register +EXPORT_SYMBOL net/lapb/lapb 0xa28ca456 lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0xd0c4b5b5 lapb_unregister +EXPORT_SYMBOL net/llc/llc 0x12ebefad llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0x352af6c1 llc_sap_open +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0xa75ef9b5 llc_sap_find +EXPORT_SYMBOL net/llc/llc 0xc35e28f7 llc_sap_list_lock +EXPORT_SYMBOL net/llc/llc 0xc715adac llc_sap_close +EXPORT_SYMBOL net/llc/llc 0xd123f548 llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0xebd7b009 llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0xfb4545fc llc_add_pack +EXPORT_SYMBOL net/mac80211/mac80211 0x009376f2 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x04919e0e ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0x070778ed ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x095b81c0 ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x0a3c9b6d ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0x1251b388 ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x1e0a9550 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x21a2ae71 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0x2438192b ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x2468dda7 ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x2799c6ed ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0x2ee8ee48 ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0x30863b71 ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x33d4a3e1 __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x3437a9d7 ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x39d57556 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x3b216a83 ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x3d10935a ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0x3de5befe ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0x3ed96616 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x45182a53 ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0x4f82d019 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x53d04b98 __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x545951cd ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x55d289c5 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x5b468170 ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x5ba05ad2 ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0x5c28cca5 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x659bc658 ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x67a07ee5 ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x6ada228f ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x6b63fb2d __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x6bdb6551 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x6ebe528f ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x71cf513c ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x72090dfe ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x76f81a7f ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x810da650 ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x87c2725e ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x89b150c4 rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x8b36f67d ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0x8eb05f20 ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0x96852c5a wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x99c6ec36 ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0x9ad38dfb ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0x9c5e6334 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0x9d6099ca __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xa1fc36c4 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xaa157485 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0xadd7f4b7 ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xaf0ac6ff ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xb8853705 ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0xc529f9b1 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0xc7e9782e ieee80211_get_key_tx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xcccafe99 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xd072d01e ieee80211_alloc_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xd510b5aa rate_control_send_low +EXPORT_SYMBOL net/mac80211/mac80211 0xd556c31d ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0xd5c0b8e4 ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xd890e9b7 ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xd8b887d9 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xdc77b951 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0xddb47d52 ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xe6b541a7 ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0xead4de5d ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0xeaf17aa9 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0xf032ef2e ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0xf395de03 ieee80211_aes_cmac_calculate_k1_k2 +EXPORT_SYMBOL net/mac80211/mac80211 0xf6952e0d ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0xf6db15b5 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xf7386253 ieee80211_rx +EXPORT_SYMBOL net/mac80211/mac80211 0xf802c750 ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xff7390d6 ieee80211_scan_completed +EXPORT_SYMBOL net/mac802154/mac802154 0x202c2fe9 ieee802154_unregister_device +EXPORT_SYMBOL net/mac802154/mac802154 0x3b33f989 ieee802154_register_device +EXPORT_SYMBOL net/mac802154/mac802154 0x40fa8a9d ieee802154_alloc_device +EXPORT_SYMBOL net/mac802154/mac802154 0xa757dcfb ieee802154_free_device +EXPORT_SYMBOL net/mac802154/mac802154 0xc4d93baf ieee802154_rx_irqsafe +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x12520d86 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x1a0bbc78 ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x205f2a01 register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x2389f5a1 ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x2cadaf2c ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x57c310a0 ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x78b162fd register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x8598b48f ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x877a6c7e ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xb2091e7f unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd09c70e0 ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd5d9f311 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xda468f70 unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xfe5cb056 register_ip_vs_app +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x0d6106b6 __nf_ct_ext_destroy +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x840def3b nf_conntrack_untracked +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xfaf879b8 __nf_ct_ext_add_length +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0x827cc6a1 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_conntrack_proto_gre 0xaa6aa786 nf_ct_gre_keymap_flush +EXPORT_SYMBOL net/netfilter/nf_nat 0x6b482a6b nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0x96eedbb4 nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0xb8d2f664 nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0xbdb5f71f __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xd65c2497 nf_nat_used_tuple +EXPORT_SYMBOL net/netfilter/nf_nat 0xe7426fc0 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/x_tables 0x028f93ce xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0x08c473b7 xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0x0eb3ea76 xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x27d0d6d7 xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x2b3a6e98 xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0x48421525 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0x6b1500c6 xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x71c88914 xt_find_target +EXPORT_SYMBOL net/netfilter/x_tables 0x879fc219 xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0xb28f5ef1 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xbf795ac1 xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0xcaedf084 xt_register_targets +EXPORT_SYMBOL net/nfc/hci/hci 0x0719a65d nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0x12e859cf nfc_hci_send_response +EXPORT_SYMBOL net/nfc/hci/hci 0x24794d14 nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0x3f5ce358 nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0x41ef8f75 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0x43028a27 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x58131c86 nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0x5973ef9f nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0x5eed6991 nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0x64a0b0af nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0x72911cee nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x969e9c80 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0xa3dbe817 nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0xb17ab8d8 nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xb824c445 nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xbca0b4fd nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xc2ed93de nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xcf2fdf3b nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0xd2579b53 nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0xe1724611 nfc_hci_send_event +EXPORT_SYMBOL net/nfc/nci/nci 0x0d1367df nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x6123b49e nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0x69baa9c3 nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0x9e74111e nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0xb42e2ce7 nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nfc 0x14cab3ff nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0x1648e04f nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0x19e9e046 nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x25502116 nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0x28dbcb7a nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0x36c570fc nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x3af2dd9b nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0x4392ec8e nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0x55d1123a nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0x98545c8f nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0xa09695d4 nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0xa34a6d98 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0xa9d6792a nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0xb8a88636 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0xd2eda185 nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0xd3de2b7c nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0xec0eaf09 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0xf14d2f35 nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0xf8373bc7 nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xf89c02e8 nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc_digital 0x521a33bc nfc_digital_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xb119c416 nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xc590d8fb nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xc8cfb6ab nfc_digital_allocate_device +EXPORT_SYMBOL net/phonet/phonet 0x04a65331 phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0x492044e9 pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0x5e7e92d6 phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0xb34e9f26 phonet_proto_register +EXPORT_SYMBOL net/phonet/phonet 0xbd31bacb phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0xc0d4bf7a pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0xe9dbac47 pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0xfb984136 pn_sock_hash +EXPORT_SYMBOL net/rds/rds 0x5031b8c5 rds_str_array +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x0c0f1bf3 rxrpc_kernel_is_data_last +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x23bfa124 rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x260a1719 rxrpc_kernel_data_delivered +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x462841bc rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x4fdd8797 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x5333dd26 rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x6207889d rxrpc_kernel_free_skb +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x97725676 rxrpc_kernel_intercept_rx_messages +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x9c636319 rxrpc_kernel_accept_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xa057de23 rxrpc_kernel_get_abort_code +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xb81ee54a rxrpc_kernel_reject_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xf10e8d20 rxrpc_kernel_get_error_number +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xf35c5a14 rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xf9057ed6 rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xfa0514cd rxrpc_kernel_begin_call +EXPORT_SYMBOL net/sctp/sctp 0xd127da38 sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x13d5cbd3 gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x2f54c12f gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x479d8f99 gss_mech_get +EXPORT_SYMBOL net/sunrpc/sunrpc 0x295666db svc_pool_stats_open +EXPORT_SYMBOL net/wimax/wimax 0x44768218 wimax_reset +EXPORT_SYMBOL net/wimax/wimax 0x76f26ff5 wimax_rfkill +EXPORT_SYMBOL net/wireless/cfg80211 0x09ae1cc5 cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0x09c64fbd ieee80211_frequency_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x1317fd97 cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x179d903a cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x19e03378 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0x1f5fb529 cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0x1f9551c2 wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x203c6b0d wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x23f03ab3 cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x269d429b cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x28f62986 cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x2a264c12 cfg80211_inform_bss_width_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x2ac7064a cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x2c3da59e wiphy_new +EXPORT_SYMBOL net/wireless/cfg80211 0x2e0a48c5 cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0x2f817ce2 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x305c3082 regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0x32856639 __ieee80211_get_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x3d10421a cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x3eb88b2d cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x406a8302 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x4a04e2ca freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0x4ba80571 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0x4c3b5878 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x4c40b2fb ieee80211_bss_get_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x4f4cb6ed cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0x52e00c23 cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x549ae50f ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x5587ce75 cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x560bf854 cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0x5826f185 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0x5934690b cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x594278d0 cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x653da878 cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x67121def cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x67e28dce cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6d6cb9ad ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x742cce07 wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0x78e1a580 cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7fe1a403 cfg80211_find_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x8023dd5a cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0x81eb3c22 cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x86188655 wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0x91800313 cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x951bcc2e cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0x96fd78f4 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0x982e6b6d ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0x9b2344a7 cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x9f54884e cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xa1425906 ieee80211_channel_to_frequency +EXPORT_SYMBOL net/wireless/cfg80211 0xa197b1ff ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xa60792cd cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xa9b482c7 cfg80211_connect_result +EXPORT_SYMBOL net/wireless/cfg80211 0xb0abc58c cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0xb199c455 cfg80211_inform_bss_width +EXPORT_SYMBOL net/wireless/cfg80211 0xb337c294 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0xb4c35cf4 cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0xbd96d708 cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0xc15c8611 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0xc423cd2a cfg80211_del_sta +EXPORT_SYMBOL net/wireless/cfg80211 0xc4c1b129 cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0xc63f1b81 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0xc69cf6bc ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0xc6bfbe37 cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xcbe1419b cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xcdb3ea2b cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0xcf618a57 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0xcfe3849f cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0xd225f137 ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xdfb6b9db cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0xeb8f3867 ieee80211_data_from_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0xecc61a17 cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0xedc1cf75 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0xee42db3c cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xef3e0858 ieee80211_data_to_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0xf2091116 cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xf6697ced cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xf909c052 cfg80211_rx_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xfacf4dff wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0xfced5bcb cfg80211_report_obss_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xfeac1c8c cfg80211_roamed_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xfed4d591 cfg80211_find_vendor_ie +EXPORT_SYMBOL net/wireless/lib80211 0x13a626c7 lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x160d8434 lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0x2d0f99e5 print_ssid +EXPORT_SYMBOL net/wireless/lib80211 0x6d75499b lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x9722b06f lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0xcaadf5b9 lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0xe2f723c7 lib80211_get_crypto_ops +EXPORT_SYMBOL sound/ac97_bus 0x197aaf7b ac97_bus_type +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3243c724 snd_seq_kernel_client_enqueue_blocking +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6c1f1cf8 snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb121e390 snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xcac0a3be snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe2ad37e8 snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x0f0d74c3 snd_seq_device_new +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x3a57f235 snd_seq_autoload_unlock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xa88fbc44 snd_seq_device_register_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xb90668b2 snd_seq_autoload_lock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xc622fb29 snd_seq_device_unregister_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf0a1fdb3 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x072d978b snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x13a17752 snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x2eed26bf snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x4d5ca523 snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x592f6e9b snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xd7c7afcc snd_midi_event_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xe60fb228 snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xecbde43c snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0xbef4e920 snd_virmidi_new +EXPORT_SYMBOL sound/core/snd 0x0192d5b1 snd_card_disconnect +EXPORT_SYMBOL sound/core/snd 0x10b38534 snd_ctl_remove_id +EXPORT_SYMBOL sound/core/snd 0x18e1683f snd_dma_program +EXPORT_SYMBOL sound/core/snd 0x191e88cf snd_dma_pointer +EXPORT_SYMBOL sound/core/snd 0x1db483f6 snd_ctl_boolean_stereo_info +EXPORT_SYMBOL sound/core/snd 0x1dda71eb snd_card_proc_new +EXPORT_SYMBOL sound/core/snd 0x20c919cb _snd_ctl_add_slave +EXPORT_SYMBOL sound/core/snd 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL sound/core/snd 0x2551d5d1 snd_add_device_sysfs_file +EXPORT_SYMBOL sound/core/snd 0x29ce7d42 snd_ctl_new1 +EXPORT_SYMBOL sound/core/snd 0x2ae3deaa release_and_free_resource +EXPORT_SYMBOL sound/core/snd 0x2c7a00d0 snd_card_file_remove +EXPORT_SYMBOL sound/core/snd 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL sound/core/snd 0x3f5581a4 snd_card_free +EXPORT_SYMBOL sound/core/snd 0x42fdf539 snd_card_set_id +EXPORT_SYMBOL sound/core/snd 0x4717d345 snd_jack_report +EXPORT_SYMBOL sound/core/snd 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL sound/core/snd 0x4b015768 snd_iprintf +EXPORT_SYMBOL sound/core/snd 0x4c6503db snd_cards +EXPORT_SYMBOL sound/core/snd 0x51da1e43 snd_ctl_boolean_mono_info +EXPORT_SYMBOL sound/core/snd 0x5a5b7253 snd_device_new +EXPORT_SYMBOL sound/core/snd 0x5d223b64 snd_ctl_add +EXPORT_SYMBOL sound/core/snd 0x602c96f0 copy_to_user_fromio +EXPORT_SYMBOL sound/core/snd 0x62a8584f snd_component_add +EXPORT_SYMBOL sound/core/snd 0x638838d9 snd_info_free_entry +EXPORT_SYMBOL sound/core/snd 0x644cea2b snd_pci_quirk_lookup +EXPORT_SYMBOL sound/core/snd 0x657b4e0e snd_ctl_remove +EXPORT_SYMBOL sound/core/snd 0x65e4a4a2 snd_power_wait +EXPORT_SYMBOL sound/core/snd 0x687ac69f snd_card_create +EXPORT_SYMBOL sound/core/snd 0x68cb1572 snd_ctl_rename_id +EXPORT_SYMBOL sound/core/snd 0x6d796a72 snd_register_device_for_dev +EXPORT_SYMBOL sound/core/snd 0x6fd1e54b snd_seq_root +EXPORT_SYMBOL sound/core/snd 0x70c15ac1 snd_dma_disable +EXPORT_SYMBOL sound/core/snd 0x81b69e41 snd_ctl_enum_info +EXPORT_SYMBOL sound/core/snd 0x82f065d9 snd_ctl_find_numid +EXPORT_SYMBOL sound/core/snd 0x8393a348 snd_info_create_card_entry +EXPORT_SYMBOL sound/core/snd 0x89f36d9e snd_card_free_when_closed +EXPORT_SYMBOL sound/core/snd 0x8f595b11 snd_major +EXPORT_SYMBOL sound/core/snd 0x98a9de57 snd_card_file_add +EXPORT_SYMBOL sound/core/snd 0x9b9195c9 snd_card_unref +EXPORT_SYMBOL sound/core/snd 0x9d34a7e6 snd_ctl_free_one +EXPORT_SYMBOL sound/core/snd 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL sound/core/snd 0xa0fd2427 snd_pci_quirk_lookup_id +EXPORT_SYMBOL sound/core/snd 0xa8365ca7 snd_jack_set_key +EXPORT_SYMBOL sound/core/snd 0xaac8774e snd_info_create_module_entry +EXPORT_SYMBOL sound/core/snd 0xac9ad275 snd_jack_set_parent +EXPORT_SYMBOL sound/core/snd 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL sound/core/snd 0xb7cc3dce snd_ctl_notify +EXPORT_SYMBOL sound/core/snd 0xbccc4e18 snd_device_free +EXPORT_SYMBOL sound/core/snd 0xcaff16a6 snd_unregister_device +EXPORT_SYMBOL sound/core/snd 0xcc7d8990 snd_info_register +EXPORT_SYMBOL sound/core/snd 0xcd3ed03b snd_ctl_register_ioctl +EXPORT_SYMBOL sound/core/snd 0xce3ca308 copy_from_user_toio +EXPORT_SYMBOL sound/core/snd 0xd1dcd41b snd_device_register +EXPORT_SYMBOL sound/core/snd 0xda6b6b9b snd_ctl_unregister_ioctl +EXPORT_SYMBOL sound/core/snd 0xdf19d64c snd_ctl_find_id +EXPORT_SYMBOL sound/core/snd 0xea7e051d snd_card_register +EXPORT_SYMBOL sound/core/snd 0xf51af63b snd_ctl_make_virtual_master +EXPORT_SYMBOL sound/core/snd 0xf88bb9e0 snd_ctl_replace +EXPORT_SYMBOL sound/core/snd 0xff2214e4 snd_jack_new +EXPORT_SYMBOL sound/core/snd-hwdep 0x527a2746 snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-page-alloc 0x2531b407 snd_dma_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x3b91f3af snd_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x43a2c5bb snd_dma_get_reserved_buf +EXPORT_SYMBOL sound/core/snd-page-alloc 0x5c5067cd snd_dma_reserve_buf +EXPORT_SYMBOL sound/core/snd-page-alloc 0xade88e76 snd_malloc_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0xaed852cd snd_dma_alloc_pages_fallback +EXPORT_SYMBOL sound/core/snd-page-alloc 0xe0d3c0c8 snd_dma_alloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x024a07a8 snd_pcm_period_elapsed +EXPORT_SYMBOL sound/core/snd-pcm 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL sound/core/snd-pcm 0x04cda566 snd_interval_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x0b68a7c9 snd_pcm_debug_name +EXPORT_SYMBOL sound/core/snd-pcm 0x0b9aa0c6 snd_pcm_hw_param_last +EXPORT_SYMBOL sound/core/snd-pcm 0x10b1b6a9 snd_pcm_hw_rule_add +EXPORT_SYMBOL sound/core/snd-pcm 0x12d460eb snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x13a29b13 snd_pcm_hw_constraint_integer +EXPORT_SYMBOL sound/core/snd-pcm 0x17daccfc snd_pcm_hw_constraint_list +EXPORT_SYMBOL sound/core/snd-pcm 0x1985d861 snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL sound/core/snd-pcm 0x1cdad8a5 snd_pcm_kernel_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL sound/core/snd-pcm 0x1e93f9c9 snd_pcm_stop +EXPORT_SYMBOL sound/core/snd-pcm 0x29a2eb82 snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL sound/core/snd-pcm 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x388984ea snd_pcm_lib_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL sound/core/snd-pcm 0x4543b2a2 snd_pcm_hw_constraint_step +EXPORT_SYMBOL sound/core/snd-pcm 0x4d9b6d35 snd_pcm_format_size +EXPORT_SYMBOL sound/core/snd-pcm 0x4dd90109 snd_pcm_lib_readv +EXPORT_SYMBOL sound/core/snd-pcm 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL sound/core/snd-pcm 0x5612380d snd_pcm_suspend +EXPORT_SYMBOL sound/core/snd-pcm 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL sound/core/snd-pcm 0x6140ec84 snd_pcm_lib_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL sound/core/snd-pcm 0x66ebc962 snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL sound/core/snd-pcm 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL sound/core/snd-pcm 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL sound/core/snd-pcm 0x7d206727 snd_pcm_lib_mmap_iomem +EXPORT_SYMBOL sound/core/snd-pcm 0x8331e19c snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x87003037 snd_pcm_suspend_all +EXPORT_SYMBOL sound/core/snd-pcm 0x87eb3b92 snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x94098ff8 snd_interval_list +EXPORT_SYMBOL sound/core/snd-pcm 0x94b517fc snd_pcm_hw_param_first +EXPORT_SYMBOL sound/core/snd-pcm 0x9a119c43 snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL sound/core/snd-pcm 0x9a1fd0c3 snd_pcm_lib_read +EXPORT_SYMBOL sound/core/snd-pcm 0x9fdd5475 snd_pcm_new +EXPORT_SYMBOL sound/core/snd-pcm 0xa0e66a81 snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL sound/core/snd-pcm 0xa2f315e1 snd_pcm_hw_rule_noresample +EXPORT_SYMBOL sound/core/snd-pcm 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL sound/core/snd-pcm 0xad1eca8f snd_pcm_open_substream +EXPORT_SYMBOL sound/core/snd-pcm 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL sound/core/snd-pcm 0xba4d8e13 snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL sound/core/snd-pcm 0xc1d61ca3 snd_pcm_mmap_data +EXPORT_SYMBOL sound/core/snd-pcm 0xc5225a29 snd_pcm_lib_writev +EXPORT_SYMBOL sound/core/snd-pcm 0xc6ead00d snd_pcm_set_sync +EXPORT_SYMBOL sound/core/snd-pcm 0xd2ba5728 _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0xd5fb21a2 snd_pcm_link_rwlock +EXPORT_SYMBOL sound/core/snd-pcm 0xd9524061 snd_pcm_limit_hw_rates +EXPORT_SYMBOL sound/core/snd-pcm 0xd9976e2e snd_pcm_new_internal +EXPORT_SYMBOL sound/core/snd-pcm 0xdf7f901a snd_pcm_lib_write +EXPORT_SYMBOL sound/core/snd-pcm 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL sound/core/snd-pcm 0xe8a54b56 snd_pcm_notify +EXPORT_SYMBOL sound/core/snd-pcm 0xebc270ce snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0xf074da13 snd_pcm_set_ops +EXPORT_SYMBOL sound/core/snd-pcm 0xf3797152 snd_interval_ratnum +EXPORT_SYMBOL sound/core/snd-pcm 0xf408321a snd_pcm_release_substream +EXPORT_SYMBOL sound/core/snd-pcm 0xf54041b2 snd_pcm_hw_refine +EXPORT_SYMBOL sound/core/snd-pcm 0xf5bb7bae snd_pcm_lib_malloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xfceedb74 snd_pcm_new_stream +EXPORT_SYMBOL sound/core/snd-pcm 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL sound/core/snd-rawmidi 0x07ce2a02 snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0a47b997 snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0b7f7cc2 snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-rawmidi 0x14cf665c snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x51bdea99 snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0x537fb8ed snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0x695fea83 snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0x786cc0b4 snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0x80c6abc1 snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x86772c4b snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0x8d2fd43a snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0xcbfedac4 snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0xd329653b snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0xdc155da3 snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0xdd9e959a snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-rawmidi 0xef8efcc4 snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf3f8d2f6 snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-timer 0x046fe7ec snd_timer_global_new +EXPORT_SYMBOL sound/core/snd-timer 0x0e47e4c3 snd_timer_start +EXPORT_SYMBOL sound/core/snd-timer 0x0f19da1f snd_timer_interrupt +EXPORT_SYMBOL sound/core/snd-timer 0x1459d7d1 snd_timer_global_register +EXPORT_SYMBOL sound/core/snd-timer 0x56559dd7 snd_timer_resolution +EXPORT_SYMBOL sound/core/snd-timer 0x5cdd6cf7 snd_timer_close +EXPORT_SYMBOL sound/core/snd-timer 0x6b2ee81e snd_timer_global_free +EXPORT_SYMBOL sound/core/snd-timer 0x8690ebb5 snd_timer_notify +EXPORT_SYMBOL sound/core/snd-timer 0x89811489 snd_timer_new +EXPORT_SYMBOL sound/core/snd-timer 0xabece495 snd_timer_open +EXPORT_SYMBOL sound/core/snd-timer 0xafafb024 snd_timer_pause +EXPORT_SYMBOL sound/core/snd-timer 0xe6e63686 snd_timer_stop +EXPORT_SYMBOL sound/core/snd-timer 0xfc646bcd snd_timer_continue +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x8b9af02c snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x259f02d9 snd_opl3_create +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x62cb129a snd_opl3_init +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x64ab97fe snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x6ea94634 snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x89576054 snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xb749c0f4 snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xd9810aba snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xe1afa66a snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xfaa86161 snd_opl3_reset +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x4b563667 snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x75087300 snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x80d46bbb snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xa35ae238 snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xb227448b snd_vx_dsp_boot +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xc8e74404 snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xee3443d6 snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf4d623d9 snd_vx_resume +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xfe068596 snd_vx_create +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x00cca7d6 amdtp_out_stream_set_pcm_format +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x01b25bae iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x1576835a amdtp_out_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x179c3027 fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x1e1052b0 fw_iso_resources_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x216ef40f snd_fw_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x27c0bd8f amdtp_out_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x2f1b29ec cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x30ac9625 fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x3aafe8f1 cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x44fd7d99 iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5088cd6d fw_iso_resources_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x57ad82a8 amdtp_out_stream_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5edb22c5 fcp_avc_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x65900226 amdtp_out_stream_stop +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x94e85c6f amdtp_out_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x9a4e4c24 amdtp_out_stream_pcm_pointer +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xb21e0c0f cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xb22c3f83 amdtp_out_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd098ac33 fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd3620ac1 amdtp_out_stream_start +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd42fc4bb amdtp_out_stream_set_parameters +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xdb2e85ab amdtp_out_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf02a0039 cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf886062f fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xfc2f4b79 cmp_connection_destroy +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x16e9b09b snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x245eda7c snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x395fac3e snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xa00db15f snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xaf273ae0 snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xcce4bdbd snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x2ff91112 snd_ak4117_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x35e2670e snd_ak4117_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x5ba88798 snd_ak4117_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xc44943c0 snd_ak4117_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xdbca7c86 snd_ak4117_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xe0aa3839 snd_ak4117_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x3ee411ad snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x7bafb9d2 snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xd3162ab1 snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xd900eff4 snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x473b063f snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x9286870b snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x662cde39 snd_cs8427_iec958_active +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x6c32cc8c snd_cs8427_create +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x82f07c5a snd_cs8427_reg_write +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xe4b2e3e2 snd_cs8427_iec958_pcm +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xf68e590e snd_cs8427_iec958_build +EXPORT_SYMBOL sound/i2c/snd-i2c 0x232ae4e6 snd_i2c_bus_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x27cb862c snd_i2c_sendbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x2f5c484b snd_i2c_probeaddr +EXPORT_SYMBOL sound/i2c/snd-i2c 0x6fd31578 snd_i2c_device_free +EXPORT_SYMBOL sound/i2c/snd-i2c 0xc7c87669 snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0xe1db1c68 snd_i2c_readbytes +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x10c80094 snd_sbmixer_resume +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x128ba97d snd_sbmixer_read +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x3b776b82 snd_sbdsp_command +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x5c26e5f4 snd_sbdsp_get_byte +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x775f3040 snd_sbdsp_create +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x7b8b9993 snd_sbmixer_add_ctl +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x8c81abce snd_sbdsp_reset +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x97a8c2ad snd_sbmixer_suspend +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xdbd22cc4 snd_sbmixer_write +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xe670214e snd_sbmixer_new +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x8665071d snd_sb16dsp_get_pcm_ops +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x929ad278 snd_sb16dsp_pcm +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xe0b3f690 snd_sb16dsp_interrupt +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xf2861cd0 snd_sb16dsp_configure +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x02129c53 snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x04ee3d34 snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x0b383a3d snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x0c51b47c snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x13dfc3ec snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x1e34907a snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x2d1a8096 snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x2fe30b67 snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x32e56d15 snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x5683c43e snd_ac97_resume +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x59f232d9 snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x71371f98 snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x807ae6a5 snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xab3f528d snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xbe330183 snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xcf5a2eac snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xd9c717bc snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x045d4a83 snd_emu10k1_synth_copy_from_user +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x3322f89d snd_emu10k1_voice_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x3a433def snd_emu10k1_memblk_map +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x42374e2f snd_emu10k1_ptr_read +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x8a122d11 snd_emu10k1_voice_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xa00fdecc snd_emu10k1_synth_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xa6c8b923 snd_emu10k1_ptr_write +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xe1bc0ed8 snd_emu10k1_synth_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xed672210 snd_emu10k1_synth_bzero +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x0ab7ae9c snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x56d8b114 snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xe2fc7b81 snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x07863368 oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x1eb597fa oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x24b9278e oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x29d3154c oxygen_write8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x342d02e1 oxygen_write32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x559fe062 oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x6133390a oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x66a967fa oxygen_pci_probe +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x8d3077dd oxygen_read8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x9ffb80d8 oxygen_write_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xa7170262 oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xbf4c2add oxygen_pci_remove +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xce01a200 oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xd49f4764 oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xde3ca125 oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xebb49058 oxygen_write16_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xeeabb11e oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xf09b9df2 oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xf7c37768 oxygen_write_i2c +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x0f2944d7 snd_trident_alloc_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x12f29646 snd_trident_stop_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x1d454c2e snd_trident_write_voice_regs +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x79fe487b snd_trident_start_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xb62c6341 snd_trident_free_voice +EXPORT_SYMBOL sound/soundcore 0xa0b3c5fd sound_class +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x3523644a snd_emux_new +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x39c930ba snd_emux_terminate_all +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x655cb202 snd_sf_linear_to_log +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x80f0c2a8 snd_emux_free +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x87fd529c snd_emux_unlock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x9189e0ef snd_emux_lock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xd4ac46ec snd_emux_register +EXPORT_SYMBOL sound/synth/snd-util-mem 0x066e1922 snd_util_mem_avail +EXPORT_SYMBOL sound/synth/snd-util-mem 0x07ffeddf __snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x12d17f88 snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x19418f76 __snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x6f61b8bd snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0xde62793d snd_util_memhdr_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0xded75178 __snd_util_memblk_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0xded8a5a8 snd_util_memhdr_free +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xff0473d7 snd_usbmidi_create +EXPORT_SYMBOL vmlinux 0x00000000 __symbol_put +EXPORT_SYMBOL vmlinux 0x00000000 current_fs_time +EXPORT_SYMBOL vmlinux 0x00000000 d_tmpfile +EXPORT_SYMBOL vmlinux 0x00000000 do_sync_read +EXPORT_SYMBOL vmlinux 0x00000000 filp_close +EXPORT_SYMBOL vmlinux 0x00000000 finish_open +EXPORT_SYMBOL vmlinux 0x00000000 generic_getxattr +EXPORT_SYMBOL vmlinux 0x00000000 generic_write_sync +EXPORT_SYMBOL vmlinux 0x00000000 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x00000000 in_group_p +EXPORT_SYMBOL vmlinux 0x00000000 inode_add_bytes +EXPORT_SYMBOL vmlinux 0x00000000 iov_shorten +EXPORT_SYMBOL vmlinux 0x00000000 iterate_fd +EXPORT_SYMBOL vmlinux 0x00000000 ns_capable +EXPORT_SYMBOL vmlinux 0x00000000 path_is_under +EXPORT_SYMBOL vmlinux 0x00000000 register_exec_domain +EXPORT_SYMBOL vmlinux 0x00000000 schedule_timeout +EXPORT_SYMBOL vmlinux 0x00000000 sock_register +EXPORT_SYMBOL vmlinux 0x00000000 sys_close +EXPORT_SYMBOL vmlinux 0x00000000 task_nice +EXPORT_SYMBOL vmlinux 0x00000000 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x00000000 vm_brk +EXPORT_SYMBOL vmlinux 0x000513fb udp_del_offload +EXPORT_SYMBOL vmlinux 0x00097317 __remove_inode_hash +EXPORT_SYMBOL vmlinux 0x002203ff qman_volatile_dequeue +EXPORT_SYMBOL vmlinux 0x005758e0 fasync_helper +EXPORT_SYMBOL vmlinux 0x005a615e agp_free_page_array +EXPORT_SYMBOL vmlinux 0x00654a32 __mmc_claim_host +EXPORT_SYMBOL vmlinux 0x00801678 flush_scheduled_work +EXPORT_SYMBOL vmlinux 0x00975109 pme_ctx_is_dead +EXPORT_SYMBOL vmlinux 0x00a7267e bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x00cf4a7f of_get_parent +EXPORT_SYMBOL vmlinux 0x00d66392 tcp_prot +EXPORT_SYMBOL vmlinux 0x00e8097b csum_partial_copy_fromiovecend +EXPORT_SYMBOL vmlinux 0x00ecf17a buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x010c026c mmc_fixup_device +EXPORT_SYMBOL vmlinux 0x01139ffc max_mapnr +EXPORT_SYMBOL vmlinux 0x014db919 blk_peek_request +EXPORT_SYMBOL vmlinux 0x0155db1c locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x0169c476 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0x017c8f36 skb_free_datagram +EXPORT_SYMBOL vmlinux 0x017fedcc tcf_register_action +EXPORT_SYMBOL vmlinux 0x01902adf netpoll_trap +EXPORT_SYMBOL vmlinux 0x01985904 serio_reconnect +EXPORT_SYMBOL vmlinux 0x019e7765 __init_rwsem +EXPORT_SYMBOL vmlinux 0x01b99318 d_obtain_alias +EXPORT_SYMBOL vmlinux 0x01c8e84d ida_simple_get +EXPORT_SYMBOL vmlinux 0x01caed0a init_net +EXPORT_SYMBOL vmlinux 0x01d07f18 vlan_vid_del +EXPORT_SYMBOL vmlinux 0x01f5558e dev_get_drvdata +EXPORT_SYMBOL vmlinux 0x01fbee3e unmap_mapping_range +EXPORT_SYMBOL vmlinux 0x020c0271 key_task_permission +EXPORT_SYMBOL vmlinux 0x02649054 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x027179c8 pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x02785db3 alloc_pci_dev +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a6ce5a crc16_table +EXPORT_SYMBOL vmlinux 0x02eb2dc4 generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x02ec9417 tty_unregister_driver +EXPORT_SYMBOL vmlinux 0x02ee26c1 free_pages_exact +EXPORT_SYMBOL vmlinux 0x030fe252 blk_mq_run_queues +EXPORT_SYMBOL vmlinux 0x0310b622 proc_create_data +EXPORT_SYMBOL vmlinux 0x032b35e3 pci_fixup_device +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x0349f8e8 key_revoke +EXPORT_SYMBOL vmlinux 0x03592ea0 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x0359e69f agp_generic_free_by_type +EXPORT_SYMBOL vmlinux 0x03626b68 kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x0385efe0 bitmap_start_sync +EXPORT_SYMBOL vmlinux 0x039a275c generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0x03af2c83 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0x03b0d0b2 bio_reset +EXPORT_SYMBOL vmlinux 0x03b1eb6b __devm_release_region +EXPORT_SYMBOL vmlinux 0x03bb3a72 __module_put_and_exit +EXPORT_SYMBOL vmlinux 0x03c06156 bitmap_fold +EXPORT_SYMBOL vmlinux 0x03c63aab netlink_set_err +EXPORT_SYMBOL vmlinux 0x03cc0ed2 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0x03f3ad5d xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x04074f48 ioremap +EXPORT_SYMBOL vmlinux 0x041d1790 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x0422fe4a inet_csk_timer_bug_msg +EXPORT_SYMBOL vmlinux 0x044402ab sk_filter +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x04771a30 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0x048346e1 simple_release_fs +EXPORT_SYMBOL vmlinux 0x04855055 audit_log_start +EXPORT_SYMBOL vmlinux 0x0487f831 fb_find_best_display +EXPORT_SYMBOL vmlinux 0x048c448c dquot_file_open +EXPORT_SYMBOL vmlinux 0x049a7849 inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0x04ca7ff1 __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x04d94570 neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04fec57e mpage_writepages +EXPORT_SYMBOL vmlinux 0x05123d1a ilookup5 +EXPORT_SYMBOL vmlinux 0x0514cdea qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0x0517fcdb xfrm6_rcv +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x052ff49d bio_flush_dcache_pages +EXPORT_SYMBOL vmlinux 0x0530dede _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x0534a815 bdev_stack_limits +EXPORT_SYMBOL vmlinux 0x054434d6 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x0548f648 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0x05596e89 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0x057ce975 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0x058202bb pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0x0593a99b init_timer_key +EXPORT_SYMBOL vmlinux 0x0594d03f dev_uc_flush +EXPORT_SYMBOL vmlinux 0x0598faf6 install_exec_creds +EXPORT_SYMBOL vmlinux 0x05a514a1 _insl_ns +EXPORT_SYMBOL vmlinux 0x05a52c93 skb_copy_datagram_const_iovec +EXPORT_SYMBOL vmlinux 0x05af3ebd send_sig +EXPORT_SYMBOL vmlinux 0x05c7c35e qman_get_null_cb +EXPORT_SYMBOL vmlinux 0x05d4776d unlock_new_inode +EXPORT_SYMBOL vmlinux 0x05d72996 uart_remove_one_port +EXPORT_SYMBOL vmlinux 0x061118be remove_proc_subtree +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x06244dcd add_disk +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x0645932f textsearch_register +EXPORT_SYMBOL vmlinux 0x06489d52 bman_rcr_is_empty +EXPORT_SYMBOL vmlinux 0x066e14fc sync_inode_metadata +EXPORT_SYMBOL vmlinux 0x0675c7eb atomic64_cmpxchg +EXPORT_SYMBOL vmlinux 0x067d8d35 security_release_secctx +EXPORT_SYMBOL vmlinux 0x0687cdc5 find_get_pages_contig +EXPORT_SYMBOL vmlinux 0x068809f6 iterate_dir +EXPORT_SYMBOL vmlinux 0x068cac2f blk_queue_init_tags +EXPORT_SYMBOL vmlinux 0x069660bb netpoll_rx_enable +EXPORT_SYMBOL vmlinux 0x06bbb24a mempool_resize +EXPORT_SYMBOL vmlinux 0x06d02dce free_netdev +EXPORT_SYMBOL vmlinux 0x06d167d1 napi_get_frags +EXPORT_SYMBOL vmlinux 0x06d8c395 iunique +EXPORT_SYMBOL vmlinux 0x06d977db dm_register_target +EXPORT_SYMBOL vmlinux 0x06fe3b14 default_grn +EXPORT_SYMBOL vmlinux 0x06ff8886 flock_lock_file_wait +EXPORT_SYMBOL vmlinux 0x0727c4f3 iowrite8 +EXPORT_SYMBOL vmlinux 0x072ad866 pci_disable_obff +EXPORT_SYMBOL vmlinux 0x07348f7b generic_file_mmap +EXPORT_SYMBOL vmlinux 0x074dbe91 sk_prot_clear_portaddr_nulls +EXPORT_SYMBOL vmlinux 0x074e9213 down_killable +EXPORT_SYMBOL vmlinux 0x0762036e bio_endio +EXPORT_SYMBOL vmlinux 0x0772eb3d phy_detach +EXPORT_SYMBOL vmlinux 0x07931073 mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x0799aca4 local_bh_enable +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07d92d11 sock_no_getname +EXPORT_SYMBOL vmlinux 0x07e3df6c agp_alloc_bridge +EXPORT_SYMBOL vmlinux 0x07e50768 dev_remove_pack +EXPORT_SYMBOL vmlinux 0x07f468d1 security_path_rename +EXPORT_SYMBOL vmlinux 0x07fd0dca dma_async_memcpy_buf_to_pg +EXPORT_SYMBOL vmlinux 0x081b645d pci_unmap_rom +EXPORT_SYMBOL vmlinux 0x0827d953 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x083c2cbe of_get_next_parent +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x0884d205 nf_log_set +EXPORT_SYMBOL vmlinux 0x0898203d d_alloc_pseudo +EXPORT_SYMBOL vmlinux 0x089d4c1a mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x08ae58a5 __block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x08b34b64 tcp_shutdown +EXPORT_SYMBOL vmlinux 0x08c4b632 cdrom_check_events +EXPORT_SYMBOL vmlinux 0x08cc84e7 __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x0926adaa write_one_page +EXPORT_SYMBOL vmlinux 0x09395704 udp_sendmsg +EXPORT_SYMBOL vmlinux 0x09426793 dquot_initialize +EXPORT_SYMBOL vmlinux 0x09525eaf input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0x0964780a filemap_fdatawait +EXPORT_SYMBOL vmlinux 0x096dabcf fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x0974970d napi_gro_frags +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x099a8684 tty_register_device +EXPORT_SYMBOL vmlinux 0x09c55cec schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09ea4680 xfrm_prepare_input +EXPORT_SYMBOL vmlinux 0x09fd93b4 qman_create_fq +EXPORT_SYMBOL vmlinux 0x0a2487e0 unblock_all_signals +EXPORT_SYMBOL vmlinux 0x0a3131f6 strnchr +EXPORT_SYMBOL vmlinux 0x0a33884d n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x0a469d23 mfd_clone_cell +EXPORT_SYMBOL vmlinux 0x0a49f994 mount_subtree +EXPORT_SYMBOL vmlinux 0x0a4f03f2 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x0a6c38a3 fsync_bdev +EXPORT_SYMBOL vmlinux 0x0a7958c7 qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0x0a898e27 unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x0a9f6d59 pme_attr_set +EXPORT_SYMBOL vmlinux 0x0aa29511 dst_discard +EXPORT_SYMBOL vmlinux 0x0aa56e34 kfree_skb +EXPORT_SYMBOL vmlinux 0x0aafa690 skb_copy_and_csum_datagram_iovec +EXPORT_SYMBOL vmlinux 0x0acb1a3c __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ad853db tty_throttle +EXPORT_SYMBOL vmlinux 0x0af162fd tty_pair_get_tty +EXPORT_SYMBOL vmlinux 0x0b0a6fc0 input_release_device +EXPORT_SYMBOL vmlinux 0x0b0d888b icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0x0b1219be blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x0b19b8c3 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b210883 input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x0b434217 create_syslog_header +EXPORT_SYMBOL vmlinux 0x0b48677a __kfifo_init +EXPORT_SYMBOL vmlinux 0x0b56117f of_find_node_by_path +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b83d259 __secpath_destroy +EXPORT_SYMBOL vmlinux 0x0b8bdc97 scsi_nonblockable_ioctl +EXPORT_SYMBOL vmlinux 0x0b8dbfa3 filemap_write_and_wait +EXPORT_SYMBOL vmlinux 0x0b92796f from_kuid +EXPORT_SYMBOL vmlinux 0x0bbc5908 gen_estimator_active +EXPORT_SYMBOL vmlinux 0x0bc2e62e pcim_enable_device +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bc95f70 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0x0c12e626 __debugger_bpt +EXPORT_SYMBOL vmlinux 0x0c1ca2b4 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0x0c269689 tty_pair_get_pty +EXPORT_SYMBOL vmlinux 0x0c45fc96 vfs_lstat +EXPORT_SYMBOL vmlinux 0x0c4ea94c fb_blank +EXPORT_SYMBOL vmlinux 0x0c58a8cd netdev_increment_features +EXPORT_SYMBOL vmlinux 0x0c5a9a8b __bforget +EXPORT_SYMBOL vmlinux 0x0c65e73c scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0x0c678c4e dev_uc_sync +EXPORT_SYMBOL vmlinux 0x0c6d2f79 mmc_gpio_request_cd +EXPORT_SYMBOL vmlinux 0x0c85bca8 netdev_update_features +EXPORT_SYMBOL vmlinux 0x0c8c9e99 scsi_show_extd_sense +EXPORT_SYMBOL vmlinux 0x0c9b6089 nvram_get_size +EXPORT_SYMBOL vmlinux 0x0ca0c882 twl6030_interrupt_mask +EXPORT_SYMBOL vmlinux 0x0cae232b utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0x0cced23f generic_write_checks +EXPORT_SYMBOL vmlinux 0x0cdd2dae jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0x0ce900af blk_finish_plug +EXPORT_SYMBOL vmlinux 0x0d0a3273 iterate_mounts +EXPORT_SYMBOL vmlinux 0x0d0cfa5c simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0x0d5210c4 pcibios_fixup_bus +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d5456fb generic_removexattr +EXPORT_SYMBOL vmlinux 0x0da10ec3 security_sock_graft +EXPORT_SYMBOL vmlinux 0x0dac96fe ipmi_get_smi_info +EXPORT_SYMBOL vmlinux 0x0defbc6a mmc_align_data_size +EXPORT_SYMBOL vmlinux 0x0e03c60b swiotlb_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0x0e264c68 input_unregister_handler +EXPORT_SYMBOL vmlinux 0x0e3a1b71 dm_put_device +EXPORT_SYMBOL vmlinux 0x0e6da44a set_normalized_timespec +EXPORT_SYMBOL vmlinux 0x0e6dcb45 mmc_alloc_host +EXPORT_SYMBOL vmlinux 0x0e6e5432 blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x0e70dac1 pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0x0e8f30f6 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x0ea3c75e simple_getattr +EXPORT_SYMBOL vmlinux 0x0eaaec6b generic_writepages +EXPORT_SYMBOL vmlinux 0x0eaf451e hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x0eb11920 unregister_nls +EXPORT_SYMBOL vmlinux 0x0ee5989d inode_init_once +EXPORT_SYMBOL vmlinux 0x0eec884a dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0x0ef69857 pme_ctx_pmtcc +EXPORT_SYMBOL vmlinux 0x0efcbb1b set_current_groups +EXPORT_SYMBOL vmlinux 0x0f1dc9ae dm_io +EXPORT_SYMBOL vmlinux 0x0f277a4a bio_integrity_clone +EXPORT_SYMBOL vmlinux 0x0f28cb91 nvram_read_byte +EXPORT_SYMBOL vmlinux 0x0f301680 kernel_read +EXPORT_SYMBOL vmlinux 0x0f4584f9 put_io_context +EXPORT_SYMBOL vmlinux 0x0f4c91ed ns_to_timespec +EXPORT_SYMBOL vmlinux 0x0f5faa7e wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x0f600956 dev_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x0f69b4e7 cap_mmap_file +EXPORT_SYMBOL vmlinux 0x0f6f90c4 pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0x0f8c0149 pme2_have_control +EXPORT_SYMBOL vmlinux 0x0f9316c8 fm_mutex_unlock +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fbc4695 dev_alloc_name +EXPORT_SYMBOL vmlinux 0x0fda293f vfs_llseek +EXPORT_SYMBOL vmlinux 0x1037d364 block_write_end +EXPORT_SYMBOL vmlinux 0x103fbf5f key_payload_reserve +EXPORT_SYMBOL vmlinux 0x10412526 dev_deactivate +EXPORT_SYMBOL vmlinux 0x1047a276 nf_getsockopt +EXPORT_SYMBOL vmlinux 0x106b4f8b bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x106f13ab crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x107645a7 neigh_connected_output +EXPORT_SYMBOL vmlinux 0x10a29851 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x10b877cd ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0x10b8a25a generic_ro_fops +EXPORT_SYMBOL vmlinux 0x10bf3f42 led_blink_set_oneshot +EXPORT_SYMBOL vmlinux 0x10cba860 scm_fp_dup +EXPORT_SYMBOL vmlinux 0x10ee20bb default_blu +EXPORT_SYMBOL vmlinux 0x10ee7d2d input_register_handler +EXPORT_SYMBOL vmlinux 0x110013bf bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x110f1e52 blk_integrity_is_initialized +EXPORT_SYMBOL vmlinux 0x11267875 scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0x1137dda7 call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0x11534188 skb_copy +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x1182d83a cpuidle_disable +EXPORT_SYMBOL vmlinux 0x118b65bc dev_set_mac_address +EXPORT_SYMBOL vmlinux 0x1198b5f9 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x11a170cf jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0x11c9185c of_iomap +EXPORT_SYMBOL vmlinux 0x11e06eea skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x122043a8 of_find_node_with_property +EXPORT_SYMBOL vmlinux 0x122f634c arp_send +EXPORT_SYMBOL vmlinux 0x124dc6ea blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0x1291680a pcie_port_service_register +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12a5cd07 tcp_gso_segment +EXPORT_SYMBOL vmlinux 0x12caf35c ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x12da5bb2 __kmalloc +EXPORT_SYMBOL vmlinux 0x12ede88b sync_inode +EXPORT_SYMBOL vmlinux 0x1300cb63 inet_release +EXPORT_SYMBOL vmlinux 0x130d7b1d in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x130f695f lock_may_write +EXPORT_SYMBOL vmlinux 0x13106f0d set_device_ro +EXPORT_SYMBOL vmlinux 0x1329d6e3 cdrom_media_changed +EXPORT_SYMBOL vmlinux 0x13307fde vsscanf +EXPORT_SYMBOL vmlinux 0x1348760d ipmi_request_settime +EXPORT_SYMBOL vmlinux 0x13522cba __pagevec_release +EXPORT_SYMBOL vmlinux 0x13554ece file_ns_capable +EXPORT_SYMBOL vmlinux 0x13767956 qman_enqueue +EXPORT_SYMBOL vmlinux 0x137d7933 pci_request_regions +EXPORT_SYMBOL vmlinux 0x13aace6e md_write_start +EXPORT_SYMBOL vmlinux 0x13af0939 netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0x13b444a7 register_key_type +EXPORT_SYMBOL vmlinux 0x13c21eb0 __alloc_skb +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13d31dc9 blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0x13e38f5c up_read +EXPORT_SYMBOL vmlinux 0x13eb1704 dcb_getapp +EXPORT_SYMBOL vmlinux 0x13f00465 dev_uc_del +EXPORT_SYMBOL vmlinux 0x1407c6e7 kmap_prot +EXPORT_SYMBOL vmlinux 0x1420b379 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0x143631dc bdi_destroy +EXPORT_SYMBOL vmlinux 0x1455811c phy_attach_direct +EXPORT_SYMBOL vmlinux 0x14723e9c kill_anon_super +EXPORT_SYMBOL vmlinux 0x1472af32 bdevname +EXPORT_SYMBOL vmlinux 0x147750cd padata_start +EXPORT_SYMBOL vmlinux 0x14979057 generic_file_splice_read +EXPORT_SYMBOL vmlinux 0x14c3ec1a skb_split +EXPORT_SYMBOL vmlinux 0x14cf950a security_path_rmdir +EXPORT_SYMBOL vmlinux 0x14dd18c7 sk_alloc +EXPORT_SYMBOL vmlinux 0x14f45fcc bman_free_pool +EXPORT_SYMBOL vmlinux 0x15143493 fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0x15282340 vfs_statfs +EXPORT_SYMBOL vmlinux 0x15297a0c km_policy_notify +EXPORT_SYMBOL vmlinux 0x1543ce31 __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x15477b72 clocksource_register +EXPORT_SYMBOL vmlinux 0x154a996a inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x154f2f5e pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0x1551dc51 bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x1565cbbc agp_generic_remove_memory +EXPORT_SYMBOL vmlinux 0x1568c199 simple_transaction_get +EXPORT_SYMBOL vmlinux 0x1578c706 inet_bind +EXPORT_SYMBOL vmlinux 0x15864b03 flex_array_get +EXPORT_SYMBOL vmlinux 0x159b79aa km_new_mapping +EXPORT_SYMBOL vmlinux 0x15a8c366 tcp_proc_unregister +EXPORT_SYMBOL vmlinux 0x15aa7017 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0x15b8a118 mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x15bc6ee5 seq_bitmap +EXPORT_SYMBOL vmlinux 0x15c818ac dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0x15ce60a5 blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0x15d3fd60 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x15f0b012 simple_fill_super +EXPORT_SYMBOL vmlinux 0x15f571ec blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0x160c43a8 security_path_unlink +EXPORT_SYMBOL vmlinux 0x1611f7f2 gen10g_config_aneg +EXPORT_SYMBOL vmlinux 0x161955f1 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0x161d0033 proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0x1640bb71 skb_dequeue +EXPORT_SYMBOL vmlinux 0x164451ef pme_ctx_reconfigure_rx +EXPORT_SYMBOL vmlinux 0x164e7b25 pci_pme_capable +EXPORT_SYMBOL vmlinux 0x16540bbc __cmpdi2 +EXPORT_SYMBOL vmlinux 0x167954ea sock_no_sendpage +EXPORT_SYMBOL vmlinux 0x168ae791 check_submounts_and_drop +EXPORT_SYMBOL vmlinux 0x168e7c95 give_up_console +EXPORT_SYMBOL vmlinux 0x168f02f9 fm_get_handle +EXPORT_SYMBOL vmlinux 0x1690d15a pm860x_page_reg_read +EXPORT_SYMBOL vmlinux 0x16b31ab1 nonseekable_open +EXPORT_SYMBOL vmlinux 0x16dcec76 ipmi_set_my_address +EXPORT_SYMBOL vmlinux 0x16eab516 dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x16f75b91 follow_up +EXPORT_SYMBOL vmlinux 0x17061fb3 generic_setxattr +EXPORT_SYMBOL vmlinux 0x17397342 pci_enable_msi_block +EXPORT_SYMBOL vmlinux 0x17527c0e inet_frags_init +EXPORT_SYMBOL vmlinux 0x17648396 dev_base_lock +EXPORT_SYMBOL vmlinux 0x17694357 twl6030_mmc_card_detect +EXPORT_SYMBOL vmlinux 0x17aa156a __ucmpdi2 +EXPORT_SYMBOL vmlinux 0x17abc7dd da903x_query_status +EXPORT_SYMBOL vmlinux 0x17b1125d gen_kill_estimator +EXPORT_SYMBOL vmlinux 0x17b41257 i2c_clients_command +EXPORT_SYMBOL vmlinux 0x17ca3913 zero_fill_bio +EXPORT_SYMBOL vmlinux 0x17e28473 fsl_upm_run_pattern +EXPORT_SYMBOL vmlinux 0x17f341a0 i8042_lock_chip +EXPORT_SYMBOL vmlinux 0x1820bc05 bio_copy_user +EXPORT_SYMBOL vmlinux 0x1826f089 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x183e93bc dquot_commit +EXPORT_SYMBOL vmlinux 0x183fa88b mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0x18440849 sk_wait_data +EXPORT_SYMBOL vmlinux 0x184b82fb mmc_vddrange_to_ocrmask +EXPORT_SYMBOL vmlinux 0x184e6c85 radix_tree_gang_lookup_slot +EXPORT_SYMBOL vmlinux 0x18580ba0 kobject_put +EXPORT_SYMBOL vmlinux 0x1870f8c1 qman_fqid_pool_alloc +EXPORT_SYMBOL vmlinux 0x1880d44d pci_set_dma_seg_boundary +EXPORT_SYMBOL vmlinux 0x188a3dfb timespec_trunc +EXPORT_SYMBOL vmlinux 0x189868d7 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x18aebaf3 pcie_set_mps +EXPORT_SYMBOL vmlinux 0x18d8e44a padata_unregister_cpumask_notifier +EXPORT_SYMBOL vmlinux 0x18dbb172 __devm_request_region +EXPORT_SYMBOL vmlinux 0x18f38506 input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0x190424b8 cfb_imageblit +EXPORT_SYMBOL vmlinux 0x19111a40 lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x191b1969 inode_init_always +EXPORT_SYMBOL vmlinux 0x195395b2 devm_gpiod_get_index +EXPORT_SYMBOL vmlinux 0x1973bea6 copy_strings_kernel +EXPORT_SYMBOL vmlinux 0x197d659f pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0x197ec4a0 generic_write_end +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19bf64d7 sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x19e78488 of_find_backlight_by_node +EXPORT_SYMBOL vmlinux 0x19ee3973 scsi_allocate_command +EXPORT_SYMBOL vmlinux 0x19fcff2b cdev_add +EXPORT_SYMBOL vmlinux 0x1a01e1fb simple_unlink +EXPORT_SYMBOL vmlinux 0x1a03ac02 submit_bh +EXPORT_SYMBOL vmlinux 0x1a10c898 ipmi_set_maintenance_mode +EXPORT_SYMBOL vmlinux 0x1a111a41 ftrace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x1a20ee32 kobject_add +EXPORT_SYMBOL vmlinux 0x1a5ff9ea proc_set_size +EXPORT_SYMBOL vmlinux 0x1a771e33 tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x1a88a4a4 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0x1aa4742c unregister_netdev +EXPORT_SYMBOL vmlinux 0x1ab4ce23 netif_skb_dev_features +EXPORT_SYMBOL vmlinux 0x1aba5db8 ipmi_unregister_smi +EXPORT_SYMBOL vmlinux 0x1ac39455 eth_header_cache_update +EXPORT_SYMBOL vmlinux 0x1ace138d bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0x1ae84d8b inet_select_addr +EXPORT_SYMBOL vmlinux 0x1af62a99 panic_notifier_list +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b030b1b tty_write_room +EXPORT_SYMBOL vmlinux 0x1b0ac272 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0x1b132009 rename_lock +EXPORT_SYMBOL vmlinux 0x1b15f2e3 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0x1b1e1088 sg_nents +EXPORT_SYMBOL vmlinux 0x1b2efca5 inet_getname +EXPORT_SYMBOL vmlinux 0x1b30f778 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b73a5e8 dev_set_mtu +EXPORT_SYMBOL vmlinux 0x1b82fefa md_unplug +EXPORT_SYMBOL vmlinux 0x1b8b95ad i8042_unlock_chip +EXPORT_SYMBOL vmlinux 0x1b8d335f kernel_getsockname +EXPORT_SYMBOL vmlinux 0x1b9e0ff1 scsilun_to_int +EXPORT_SYMBOL vmlinux 0x1ba23e04 kill_litter_super +EXPORT_SYMBOL vmlinux 0x1bc0daca names_cachep +EXPORT_SYMBOL vmlinux 0x1bc4ff03 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0x1bca2b59 load_fp_state +EXPORT_SYMBOL vmlinux 0x1bfadc06 bio_integrity_free +EXPORT_SYMBOL vmlinux 0x1c09aba3 qman_static_dequeue_get +EXPORT_SYMBOL vmlinux 0x1c0f1379 kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0x1c1779cb tty_check_change +EXPORT_SYMBOL vmlinux 0x1c211807 dev_printk_emit +EXPORT_SYMBOL vmlinux 0x1c80de9c ip_send_check +EXPORT_SYMBOL vmlinux 0x1c8eef54 truncate_pagecache +EXPORT_SYMBOL vmlinux 0x1c9c67a4 alloc_disk_node +EXPORT_SYMBOL vmlinux 0x1c9de10f elv_register_queue +EXPORT_SYMBOL vmlinux 0x1ca09168 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0x1ca20faf blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x1caf1797 tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0x1cb79498 km_query +EXPORT_SYMBOL vmlinux 0x1cc864aa netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0x1cd941cb xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x1cdd5377 vm_mmap +EXPORT_SYMBOL vmlinux 0x1ce352db try_to_writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0x1ce988f0 dquot_quotactl_ops +EXPORT_SYMBOL vmlinux 0x1d2490ed cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x1d5cfa33 jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x1d5d1efb dst_release +EXPORT_SYMBOL vmlinux 0x1d7254bc flush_tlb_page +EXPORT_SYMBOL vmlinux 0x1dafbc91 should_remove_suid +EXPORT_SYMBOL vmlinux 0x1dc36131 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0x1dc8d6e7 dma_common_get_sgtable +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1dd8ba01 mmc_gpio_request_ro +EXPORT_SYMBOL vmlinux 0x1ddf836c scsi_register_driver +EXPORT_SYMBOL vmlinux 0x1defc66a mount_single +EXPORT_SYMBOL vmlinux 0x1e0358fd scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x1e26be3b get_anon_bdev +EXPORT_SYMBOL vmlinux 0x1e378709 tcp_release_cb +EXPORT_SYMBOL vmlinux 0x1e699c2f ip_ct_attach +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e7092b4 agp3_generic_tlbflush +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ea4d9ea clear_user_page +EXPORT_SYMBOL vmlinux 0x1ebde8ee try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x1ec3bed9 hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0x1f0096a0 blk_requeue_request +EXPORT_SYMBOL vmlinux 0x1f2909dd dquot_free_inode +EXPORT_SYMBOL vmlinux 0x1f3ff447 i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0x1f4600a8 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0x1f58989c d_invalidate +EXPORT_SYMBOL vmlinux 0x1f5ad908 pme_attr_get +EXPORT_SYMBOL vmlinux 0x1f6401e7 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x1f6cf8c1 rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x1f738125 pci_enable_obff +EXPORT_SYMBOL vmlinux 0x1f785e1a qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0x1f79b2a3 scsi_dma_map +EXPORT_SYMBOL vmlinux 0x1f7d4063 of_device_unregister +EXPORT_SYMBOL vmlinux 0x1f7e807f kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x1fa544c3 __nla_put +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fc08c3b skb_unlink +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1fedf0f4 __request_region +EXPORT_SYMBOL vmlinux 0x1ff13980 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x1ff5731e fsl_ifc_ctrl_dev +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x20051916 pci_alloc_dev +EXPORT_SYMBOL vmlinux 0x200932be __i2c_transfer +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x200bc955 backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x201bde34 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0x201e9b00 scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x20344f02 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0x20482ca2 generic_pipe_buf_confirm +EXPORT_SYMBOL vmlinux 0x204abdab dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x20574148 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0x20640d37 textsearch_unregister +EXPORT_SYMBOL vmlinux 0x206687ad cpm_muram_alloc_fixed +EXPORT_SYMBOL vmlinux 0x2068f6de scsi_execute_req_flags +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x208167f3 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0x20969299 bdput +EXPORT_SYMBOL vmlinux 0x209e87a0 get_super_thawed +EXPORT_SYMBOL vmlinux 0x20a18f11 jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20a86b3f of_get_pci_address +EXPORT_SYMBOL vmlinux 0x20b2bb2d param_array_ops +EXPORT_SYMBOL vmlinux 0x20bce299 pcim_iomap_table +EXPORT_SYMBOL vmlinux 0x20c31768 generic_file_splice_write +EXPORT_SYMBOL vmlinux 0x20c55ae0 sscanf +EXPORT_SYMBOL vmlinux 0x20e02f8f phy_start_aneg +EXPORT_SYMBOL vmlinux 0x20e78b52 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0x20f60c0d __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0x20ff55fc security_inode_readlink +EXPORT_SYMBOL vmlinux 0x210476c4 file_update_time +EXPORT_SYMBOL vmlinux 0x21173d2e blk_mq_insert_request +EXPORT_SYMBOL vmlinux 0x214a4169 gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0x215632da proc_remove +EXPORT_SYMBOL vmlinux 0x215da811 inet_shutdown +EXPORT_SYMBOL vmlinux 0x215ebd78 bitrev16 +EXPORT_SYMBOL vmlinux 0x21861dc3 make_bad_inode +EXPORT_SYMBOL vmlinux 0x2186846d elv_add_request +EXPORT_SYMBOL vmlinux 0x21f3dc15 cpm_command +EXPORT_SYMBOL vmlinux 0x21f6ffd1 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x22133fb3 set_page_dirty +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x2239c1ae unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0x2240d149 scsi_print_result +EXPORT_SYMBOL vmlinux 0x2256e479 vfs_unlink +EXPORT_SYMBOL vmlinux 0x2256fafa div64_u64_rem +EXPORT_SYMBOL vmlinux 0x226078f0 dcb_setapp +EXPORT_SYMBOL vmlinux 0x2265b514 qman_get_portal_config +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x2278e94b slhc_remember +EXPORT_SYMBOL vmlinux 0x228b883f softnet_data +EXPORT_SYMBOL vmlinux 0x229aa38c agp_enable +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22d73c62 bman_get_params +EXPORT_SYMBOL vmlinux 0x22eda52f generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x22f1897d mmc_free_host +EXPORT_SYMBOL vmlinux 0x230147c6 kvm_read_guest_atomic +EXPORT_SYMBOL vmlinux 0x230ddda2 max8925_bulk_write +EXPORT_SYMBOL vmlinux 0x23132a81 of_phy_find_device +EXPORT_SYMBOL vmlinux 0x231d4001 fb_edid_add_monspecs +EXPORT_SYMBOL vmlinux 0x232ba526 ppp_register_channel +EXPORT_SYMBOL vmlinux 0x23334bf7 generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x2336846e complete_request_key +EXPORT_SYMBOL vmlinux 0x233917d1 mac_vmode_to_var +EXPORT_SYMBOL vmlinux 0x235e90f3 __wake_up_bit +EXPORT_SYMBOL vmlinux 0x23688478 put_tty_driver +EXPORT_SYMBOL vmlinux 0x238148d7 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0x239448e4 read_code +EXPORT_SYMBOL vmlinux 0x23a574fd security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0x23a7bd49 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0x23b3c937 ipmi_smi_add_proc_entry +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c56f45 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x23c6e329 kfree_skb_partial +EXPORT_SYMBOL vmlinux 0x23e692b2 agp_generic_insert_memory +EXPORT_SYMBOL vmlinux 0x23f2243d mempool_free +EXPORT_SYMBOL vmlinux 0x23f290b7 cont_write_begin +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x2418caaa writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x24380f9a thermal_cdev_update +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x245a5a94 sleep_on_timeout +EXPORT_SYMBOL vmlinux 0x246b3c2a eth_rebuild_header +EXPORT_SYMBOL vmlinux 0x2482e688 vsprintf +EXPORT_SYMBOL vmlinux 0x24858f78 __register_chrdev +EXPORT_SYMBOL vmlinux 0x24893b15 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0x24a427ff lro_receive_skb +EXPORT_SYMBOL vmlinux 0x24b0f90c of_clk_get_by_name +EXPORT_SYMBOL vmlinux 0x24c9c62d kthread_bind +EXPORT_SYMBOL vmlinux 0x24cdd8ed dm_kobject_release +EXPORT_SYMBOL vmlinux 0x24d7b4eb cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x24f1b744 ps2_command +EXPORT_SYMBOL vmlinux 0x24f3b596 md_done_sync +EXPORT_SYMBOL vmlinux 0x24f89c8c mb_cache_shrink +EXPORT_SYMBOL vmlinux 0x24fdac79 wake_bit_function +EXPORT_SYMBOL vmlinux 0x250113b4 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x2533dda1 bman_query_pools +EXPORT_SYMBOL vmlinux 0x254b4a8f neigh_destroy +EXPORT_SYMBOL vmlinux 0x254c2f0a end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x2589e69a pci_pme_active +EXPORT_SYMBOL vmlinux 0x25a59b5b netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0x25c677c4 mac_pton +EXPORT_SYMBOL vmlinux 0x25cbb956 redraw_screen +EXPORT_SYMBOL vmlinux 0x25f3bd2e atomic64_xchg +EXPORT_SYMBOL vmlinux 0x25fd8b81 agp_collect_device_status +EXPORT_SYMBOL vmlinux 0x25ffeb87 sget +EXPORT_SYMBOL vmlinux 0x260cf8f8 of_get_property +EXPORT_SYMBOL vmlinux 0x2636fcf2 phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x26439a81 dmam_free_noncoherent +EXPORT_SYMBOL vmlinux 0x26477c07 __vmalloc +EXPORT_SYMBOL vmlinux 0x26502aa7 swiotlb_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0x2650d835 sysctl_ip_early_demux +EXPORT_SYMBOL vmlinux 0x2659d8c2 crypto_sha1_update +EXPORT_SYMBOL vmlinux 0x2663fcc7 bitmap_startwrite +EXPORT_SYMBOL vmlinux 0x266f64da serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x2685c3d7 __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x26968da8 f_setown +EXPORT_SYMBOL vmlinux 0x269a50f8 seq_printf +EXPORT_SYMBOL vmlinux 0x26a83552 udp_proc_unregister +EXPORT_SYMBOL vmlinux 0x26b760c4 slhc_init +EXPORT_SYMBOL vmlinux 0x26b8e03c fb_set_cmap +EXPORT_SYMBOL vmlinux 0x26ba3a34 km_report +EXPORT_SYMBOL vmlinux 0x26bb950b __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0x26be042c bdi_unregister +EXPORT_SYMBOL vmlinux 0x26c0f706 mount_bdev +EXPORT_SYMBOL vmlinux 0x26c5c37f pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0x26d1c095 posix_lock_file +EXPORT_SYMBOL vmlinux 0x26e76fb8 sysctl_udp_wmem_min +EXPORT_SYMBOL vmlinux 0x26f0453a blk_set_default_limits +EXPORT_SYMBOL vmlinux 0x26f2f1ad netlink_ack +EXPORT_SYMBOL vmlinux 0x271ce00f cancel_dirty_page +EXPORT_SYMBOL vmlinux 0x27337559 unlock_buffer +EXPORT_SYMBOL vmlinux 0x2736c0ed inode_get_bytes +EXPORT_SYMBOL vmlinux 0x274d08dc __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0x275cd503 __blk_run_queue +EXPORT_SYMBOL vmlinux 0x276bc659 skb_make_writable +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x27891224 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0x278aa4b5 test_set_page_writeback +EXPORT_SYMBOL vmlinux 0x2795be5b dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0x279b5f2c i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0x27b53139 pme_fd_cmd_pmtcc +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27cfc06d neigh_event_ns +EXPORT_SYMBOL vmlinux 0x27e1a049 printk +EXPORT_SYMBOL vmlinux 0x27f2313e idr_replace +EXPORT_SYMBOL vmlinux 0x2813dd11 pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x283e1fc9 shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x284cebc9 skb_tx_error +EXPORT_SYMBOL vmlinux 0x286a3ca0 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x2872739d swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x288eeace inet_del_protocol +EXPORT_SYMBOL vmlinux 0x288f3f4d pci_device_from_OF_node +EXPORT_SYMBOL vmlinux 0x28973a64 scsi_prep_state_check +EXPORT_SYMBOL vmlinux 0x289bce5a dquot_acquire +EXPORT_SYMBOL vmlinux 0x289d177b follow_pfn +EXPORT_SYMBOL vmlinux 0x28a2ed02 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x28dfaa15 simple_dir_operations +EXPORT_SYMBOL vmlinux 0x28f784f5 __debugger_break_match +EXPORT_SYMBOL vmlinux 0x29141ea4 proto_register +EXPORT_SYMBOL vmlinux 0x2925816c ndisc_mc_map +EXPORT_SYMBOL vmlinux 0x2946c834 scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0x29472ef8 kthread_stop +EXPORT_SYMBOL vmlinux 0x29537c9e alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0x2954ee83 of_find_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0x29649c6b tcp_seq_open +EXPORT_SYMBOL vmlinux 0x296ba90f setattr_copy +EXPORT_SYMBOL vmlinux 0x29a67db1 bman_recovery_cleanup_bpid +EXPORT_SYMBOL vmlinux 0x29ab0ec0 tcp_read_sock +EXPORT_SYMBOL vmlinux 0x29b02d16 phy_start_interrupts +EXPORT_SYMBOL vmlinux 0x29c441f7 blk_queue_unprep_rq +EXPORT_SYMBOL vmlinux 0x29c55a3c mmc_detect_change +EXPORT_SYMBOL vmlinux 0x29f32d8b invalidate_bdev +EXPORT_SYMBOL vmlinux 0x29f84f65 get_agp_version +EXPORT_SYMBOL vmlinux 0x29fdda53 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0x2a0af819 dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x2a1084a0 blk_queue_softirq_done +EXPORT_SYMBOL vmlinux 0x2a19b055 bdi_register_dev +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a320822 block_write_begin +EXPORT_SYMBOL vmlinux 0x2a37d074 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2a3ece64 blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0x2a438c5d address_space_init_once +EXPORT_SYMBOL vmlinux 0x2a79ac13 clkdev_add +EXPORT_SYMBOL vmlinux 0x2a7e6616 locks_remove_posix +EXPORT_SYMBOL vmlinux 0x2aa0e4fc strncasecmp +EXPORT_SYMBOL vmlinux 0x2aa494d9 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0x2aac8ff2 unregister_qdisc +EXPORT_SYMBOL vmlinux 0x2acf0feb vfs_fstat +EXPORT_SYMBOL vmlinux 0x2adffcb5 framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x2aebff62 generic_permission +EXPORT_SYMBOL vmlinux 0x2afb0171 fm_port_pcd_bind +EXPORT_SYMBOL vmlinux 0x2b0ba2b0 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x2b2ce78b kstrtos8 +EXPORT_SYMBOL vmlinux 0x2b39aee0 bman_release +EXPORT_SYMBOL vmlinux 0x2b7d4d33 of_device_alloc +EXPORT_SYMBOL vmlinux 0x2b87fcc4 scsi_prep_fn +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2ba707a8 sysctl_tcp_low_latency +EXPORT_SYMBOL vmlinux 0x2bc41ca6 tcp_parse_options +EXPORT_SYMBOL vmlinux 0x2bc61da1 program_check_exception +EXPORT_SYMBOL vmlinux 0x2be0f12d dql_completed +EXPORT_SYMBOL vmlinux 0x2be29fe7 sk_reset_timer +EXPORT_SYMBOL vmlinux 0x2bec2d44 pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0x2c0e4153 filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x2c1427a5 inet_sendpage +EXPORT_SYMBOL vmlinux 0x2c14323a kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c2e8cd7 wireless_send_event +EXPORT_SYMBOL vmlinux 0x2c7b1fca down_timeout +EXPORT_SYMBOL vmlinux 0x2c900d91 cpufreq_put_global_kobject +EXPORT_SYMBOL vmlinux 0x2cc096f2 dev_warn +EXPORT_SYMBOL vmlinux 0x2cd6e494 scsi_register_interface +EXPORT_SYMBOL vmlinux 0x2cd8f755 i2c_master_send +EXPORT_SYMBOL vmlinux 0x2cfacb14 __d_drop +EXPORT_SYMBOL vmlinux 0x2cfb8378 qman_stop_dequeues +EXPORT_SYMBOL vmlinux 0x2d03c10d posix_acl_create +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d2b8fb1 pci_reenable_device +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d37342e cpu_online_mask +EXPORT_SYMBOL vmlinux 0x2d474135 phy_find_first +EXPORT_SYMBOL vmlinux 0x2d89342a scsi_show_sense_hdr +EXPORT_SYMBOL vmlinux 0x2daaaba9 param_get_byte +EXPORT_SYMBOL vmlinux 0x2dac4f1d seq_read +EXPORT_SYMBOL vmlinux 0x2db5b463 led_set_brightness +EXPORT_SYMBOL vmlinux 0x2dbb7e58 d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0x2dd1082b pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0x2de0464f nf_log_packet +EXPORT_SYMBOL vmlinux 0x2deda4a1 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x2df811e9 lookup_bdev +EXPORT_SYMBOL vmlinux 0x2e03960b __register_binfmt +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e22791e dqput +EXPORT_SYMBOL vmlinux 0x2e2ce9e0 sysctl_tcp_syncookies +EXPORT_SYMBOL vmlinux 0x2e48bdcf qman_poll_dqrr +EXPORT_SYMBOL vmlinux 0x2e5d9c7f tcf_exts_dump +EXPORT_SYMBOL vmlinux 0x2e6fd995 xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0x2e9100a7 key_alloc +EXPORT_SYMBOL vmlinux 0x2e97bf98 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x2ec29be6 netdev_all_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x2ec524ad __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x2eeceb42 sk_chk_filter +EXPORT_SYMBOL vmlinux 0x2ef63ad6 scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f064b55 allocate_resource +EXPORT_SYMBOL vmlinux 0x2f238a62 unlock_page +EXPORT_SYMBOL vmlinux 0x2f311e6e kmap_atomic_prot +EXPORT_SYMBOL vmlinux 0x2f3e42ec irq_stat +EXPORT_SYMBOL vmlinux 0x2f55e87a kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0x2f6a03b6 lease_modify +EXPORT_SYMBOL vmlinux 0x2f707246 wait_on_page_bit +EXPORT_SYMBOL vmlinux 0x2f7afb93 register_filesystem +EXPORT_SYMBOL vmlinux 0x2f7b30c2 of_platform_bus_probe +EXPORT_SYMBOL vmlinux 0x2f9d2ffb scsi_device_get +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fbd7c93 dmam_alloc_noncoherent +EXPORT_SYMBOL vmlinux 0x2fc60dd3 vc_resize +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2fea180b mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0x2ff16a43 input_register_handle +EXPORT_SYMBOL vmlinux 0x2ff86e44 sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0x3006b297 pci_match_id +EXPORT_SYMBOL vmlinux 0x30226ddf agp_device_command +EXPORT_SYMBOL vmlinux 0x3038092f devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0x307c2fd0 generic_check_addressable +EXPORT_SYMBOL vmlinux 0x308e6ce5 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0x308f493d freeze_super +EXPORT_SYMBOL vmlinux 0x309892e1 mmc_start_req +EXPORT_SYMBOL vmlinux 0x30a2b319 uart_register_driver +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30b8b35c cpu_to_chip_id +EXPORT_SYMBOL vmlinux 0x30c8d0e6 d_alloc_name +EXPORT_SYMBOL vmlinux 0x30cada8f radix_tree_next_hole +EXPORT_SYMBOL vmlinux 0x30cc168f clk_get +EXPORT_SYMBOL vmlinux 0x30febcca vga_client_register +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x31047816 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0x310917fe sort +EXPORT_SYMBOL vmlinux 0x311d2e68 nf_register_hook +EXPORT_SYMBOL vmlinux 0x312824e0 hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x3144230b xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x3147857d default_red +EXPORT_SYMBOL vmlinux 0x315c65fd zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x31708a41 find_or_create_page +EXPORT_SYMBOL vmlinux 0x318a936c xfrm_register_type +EXPORT_SYMBOL vmlinux 0x318cadb1 reciprocal_value +EXPORT_SYMBOL vmlinux 0x3191f109 __krealloc +EXPORT_SYMBOL vmlinux 0x31987eff pci_enable_device +EXPORT_SYMBOL vmlinux 0x319d0946 vga_get +EXPORT_SYMBOL vmlinux 0x31a45bad irq_to_desc +EXPORT_SYMBOL vmlinux 0x31a7d3dc vfs_readv +EXPORT_SYMBOL vmlinux 0x31b2b9a3 fput +EXPORT_SYMBOL vmlinux 0x31c17929 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0x31f0bb78 __kmap_atomic_idx +EXPORT_SYMBOL vmlinux 0x31f7d40a pme_fd_cmd_fcw +EXPORT_SYMBOL vmlinux 0x320edb26 netdev_notice +EXPORT_SYMBOL vmlinux 0x322f48d4 abx500_dump_all_banks +EXPORT_SYMBOL vmlinux 0x32371a75 __scsi_alloc_queue +EXPORT_SYMBOL vmlinux 0x324078c9 dmam_free_coherent +EXPORT_SYMBOL vmlinux 0x32424b34 qman_query_wq +EXPORT_SYMBOL vmlinux 0x327bf883 of_can_translate_address +EXPORT_SYMBOL vmlinux 0x3284c88d tcf_hash_lookup +EXPORT_SYMBOL vmlinux 0x32860d7e qman_fqid_pool_free +EXPORT_SYMBOL vmlinux 0x32861e0b noop_fsync +EXPORT_SYMBOL vmlinux 0x328a05f1 strncpy +EXPORT_SYMBOL vmlinux 0x32b68aba pci_get_subsys +EXPORT_SYMBOL vmlinux 0x32cca661 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x32e0fbf2 audit_log_task_info +EXPORT_SYMBOL vmlinux 0x32fcfec9 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0x332332c0 kern_path_create +EXPORT_SYMBOL vmlinux 0x33233943 i2c_master_recv +EXPORT_SYMBOL vmlinux 0x33530657 pci_read_vpd +EXPORT_SYMBOL vmlinux 0x33549e12 __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0x335950c9 read_cache_pages +EXPORT_SYMBOL vmlinux 0x336801f8 bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0x336e5067 swiotlb_alloc_coherent +EXPORT_SYMBOL vmlinux 0x337cce46 put_cmsg +EXPORT_SYMBOL vmlinux 0x339329a4 d_genocide +EXPORT_SYMBOL vmlinux 0x33aa48f2 qman_static_dequeue_del +EXPORT_SYMBOL vmlinux 0x33ab3c74 revalidate_disk +EXPORT_SYMBOL vmlinux 0x33acc881 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x33b1b735 revert_creds +EXPORT_SYMBOL vmlinux 0x33b84f74 copy_page +EXPORT_SYMBOL vmlinux 0x33ba5cd4 param_ops_bool +EXPORT_SYMBOL vmlinux 0x33c7435c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x33dbfd93 tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x34184afe current_kernel_time +EXPORT_SYMBOL vmlinux 0x342fe217 pipe_to_file +EXPORT_SYMBOL vmlinux 0x344adbd5 init_cdrom_command +EXPORT_SYMBOL vmlinux 0x345315a5 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0x34561905 pme_ctx_enable +EXPORT_SYMBOL vmlinux 0x3457ff7f scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x345913d7 do_SAK +EXPORT_SYMBOL vmlinux 0x346c4ded rwsem_down_write_failed +EXPORT_SYMBOL vmlinux 0x347013de nla_validate +EXPORT_SYMBOL vmlinux 0x347eb9bd param_set_bool +EXPORT_SYMBOL vmlinux 0x348ab065 ihold +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34b0ead2 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0x34ba483d security_path_mknod +EXPORT_SYMBOL vmlinux 0x34bcb57d lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x34d2b214 prepare_creds +EXPORT_SYMBOL vmlinux 0x34d4215b sock_rfree +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34f628e7 local_flush_tlb_mm +EXPORT_SYMBOL vmlinux 0x34fa33d4 pagecache_write_end +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x351a8171 tcp_syn_flood_action +EXPORT_SYMBOL vmlinux 0x353cff35 __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0x354cec05 skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x354f02e3 gen10g_config_advert +EXPORT_SYMBOL vmlinux 0x35561ab3 dquot_commit_info +EXPORT_SYMBOL vmlinux 0x35ba4d25 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0x35cd37db __dev_get_by_index +EXPORT_SYMBOL vmlinux 0x35d2ac2e sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0x35d5b457 xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0x35dc3443 dev_driver_string +EXPORT_SYMBOL vmlinux 0x35df0072 seq_release_private +EXPORT_SYMBOL vmlinux 0x35e83fee xfrm_user_policy +EXPORT_SYMBOL vmlinux 0x36247b93 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x362cbecc qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x365cd14e free_user_ns +EXPORT_SYMBOL vmlinux 0x366f622c pci_enable_ltr +EXPORT_SYMBOL vmlinux 0x36815df7 gen_pool_add_virt +EXPORT_SYMBOL vmlinux 0x368382e2 of_get_named_gpiod_flags +EXPORT_SYMBOL vmlinux 0x36ac1f37 pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0x36b0e732 try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x36bd681b groups_alloc +EXPORT_SYMBOL vmlinux 0x36be5939 _dev_info +EXPORT_SYMBOL vmlinux 0x36c5eaac tty_port_hangup +EXPORT_SYMBOL vmlinux 0x36d7b11a of_find_matching_node_and_match +EXPORT_SYMBOL vmlinux 0x36e360e3 __hw_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x3710e48d get_task_io_context +EXPORT_SYMBOL vmlinux 0x371d2130 check_legacy_ioport +EXPORT_SYMBOL vmlinux 0x372d726f dev_mc_del +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x3745861d neigh_app_ns +EXPORT_SYMBOL vmlinux 0x37630267 mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x37758991 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0x37a55b9f simple_rename +EXPORT_SYMBOL vmlinux 0x37ad5bdf rtmsg_ifinfo +EXPORT_SYMBOL vmlinux 0x37af165f max8998_read_reg +EXPORT_SYMBOL vmlinux 0x37b32e53 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0x37b72e95 inet6_add_protocol +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37e74642 get_jiffies_64 +EXPORT_SYMBOL vmlinux 0x37f614b7 __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x37f8a57f pci_map_rom +EXPORT_SYMBOL vmlinux 0x381144a9 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0x3818a50b __scsi_add_device +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x381ccc13 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x383c577f tcf_hash_release +EXPORT_SYMBOL vmlinux 0x383caab0 serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0x38458523 default_file_splice_read +EXPORT_SYMBOL vmlinux 0x3884f473 nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388e39ce qman_oos_fq +EXPORT_SYMBOL vmlinux 0x388f9128 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a7b789 skb_copy_expand +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38b3de63 unlock_rename +EXPORT_SYMBOL vmlinux 0x38df8c85 ppp_dev_name +EXPORT_SYMBOL vmlinux 0x38f68b44 scsi_setup_fs_cmnd +EXPORT_SYMBOL vmlinux 0x38fb9933 tty_std_termios +EXPORT_SYMBOL vmlinux 0x39333a98 pcim_iomap +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x397f3369 pci_bus_type +EXPORT_SYMBOL vmlinux 0x3987e6e6 truncate_setsize +EXPORT_SYMBOL vmlinux 0x398c3efa filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0x39a475b9 dget_parent +EXPORT_SYMBOL vmlinux 0x39cb2ea6 dentry_open +EXPORT_SYMBOL vmlinux 0x39cdf63c wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x39f2e638 flush_old_exec +EXPORT_SYMBOL vmlinux 0x3a6d4554 __frontswap_load +EXPORT_SYMBOL vmlinux 0x3a8d042d ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x3a92dc34 mmc_flush_cache +EXPORT_SYMBOL vmlinux 0x3a9af800 fb_find_mode +EXPORT_SYMBOL vmlinux 0x3a9b6fb9 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x3ad4f8e8 d_splice_alias +EXPORT_SYMBOL vmlinux 0x3aee5422 dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0x3b191911 prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x3b31a483 of_get_min_tck +EXPORT_SYMBOL vmlinux 0x3b36fe3d pme_hw_residue_new +EXPORT_SYMBOL vmlinux 0x3b392813 blk_end_request_all +EXPORT_SYMBOL vmlinux 0x3b519feb pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0x3b615a21 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x3b7a5a16 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0x3ba1d64f ioctl_by_bdev +EXPORT_SYMBOL vmlinux 0x3bd1b1f6 msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x3bdb302b blk_queue_resize_tags +EXPORT_SYMBOL vmlinux 0x3be136b0 unload_nls +EXPORT_SYMBOL vmlinux 0x3bef03b9 flow_cache_lookup +EXPORT_SYMBOL vmlinux 0x3c260a8e genphy_update_link +EXPORT_SYMBOL vmlinux 0x3c40b21c i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0x3c652b24 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c9d1211 string_get_size +EXPORT_SYMBOL vmlinux 0x3c9e89a9 inet_frag_find +EXPORT_SYMBOL vmlinux 0x3ca3c078 dcache_dir_close +EXPORT_SYMBOL vmlinux 0x3caa6966 dev_activate +EXPORT_SYMBOL vmlinux 0x3cb38b06 notify_change +EXPORT_SYMBOL vmlinux 0x3cb3931b sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x3cc4b0dc lg_lock_init +EXPORT_SYMBOL vmlinux 0x3ccfe0b2 mutex_lock_killable +EXPORT_SYMBOL vmlinux 0x3cd411cd scsi_print_sense +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3cf5a0f8 fb_show_logo +EXPORT_SYMBOL vmlinux 0x3cf7567a mac_find_mode +EXPORT_SYMBOL vmlinux 0x3cfb3617 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x3cffd163 cur_cpu_spec +EXPORT_SYMBOL vmlinux 0x3d19911a napi_gro_receive +EXPORT_SYMBOL vmlinux 0x3d19dbfb ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0x3d1d163e vfs_path_lookup +EXPORT_SYMBOL vmlinux 0x3d1eb38c skb_copy_bits +EXPORT_SYMBOL vmlinux 0x3d41904f of_get_next_child +EXPORT_SYMBOL vmlinux 0x3d5a29ca jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0x3d60798a sock_update_memcg +EXPORT_SYMBOL vmlinux 0x3d7a8b63 agp_generic_alloc_page +EXPORT_SYMBOL vmlinux 0x3d9a53fb alloc_disk +EXPORT_SYMBOL vmlinux 0x3da3e947 pci_clear_master +EXPORT_SYMBOL vmlinux 0x3dad0ae9 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x3dae9645 blk_start_request +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dd8a162 dqget +EXPORT_SYMBOL vmlinux 0x3de372c8 vfs_rename +EXPORT_SYMBOL vmlinux 0x3dec21b9 input_open_device +EXPORT_SYMBOL vmlinux 0x3df594da netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e10fd54 tcf_em_register +EXPORT_SYMBOL vmlinux 0x3e14b5b9 input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0x3e3e03b0 mnt_set_expiry +EXPORT_SYMBOL vmlinux 0x3e4d223c pme_ctx_init +EXPORT_SYMBOL vmlinux 0x3e4ee09f abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x3e58cb63 bioset_create +EXPORT_SYMBOL vmlinux 0x3e882943 pcibios_align_resource +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3ea0247a generic_listxattr +EXPORT_SYMBOL vmlinux 0x3ebd4bba inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0x3ec87b09 tcp_hashinfo +EXPORT_SYMBOL vmlinux 0x3ecfb139 qdisc_watchdog_schedule_ns +EXPORT_SYMBOL vmlinux 0x3ed63055 zlib_inflateReset +EXPORT_SYMBOL vmlinux 0x3ee94600 blk_end_request +EXPORT_SYMBOL vmlinux 0x3f04aed4 clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0x3f0546a8 ioread32_rep +EXPORT_SYMBOL vmlinux 0x3f1491dc genl_unregister_family +EXPORT_SYMBOL vmlinux 0x3f20635d inet6_ioctl +EXPORT_SYMBOL vmlinux 0x3f2a1989 bitmap_end_sync +EXPORT_SYMBOL vmlinux 0x3f348e9a setup_arg_pages +EXPORT_SYMBOL vmlinux 0x3f41ca4f udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f4b1aba tcf_hash_search +EXPORT_SYMBOL vmlinux 0x3f905e68 blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0x3f9c6afc inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0x3fb1cf71 proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x3fb69d8a sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x3fd55724 of_n_size_cells +EXPORT_SYMBOL vmlinux 0x3fdda325 d_make_root +EXPORT_SYMBOL vmlinux 0x3fe0d1c0 slhc_free +EXPORT_SYMBOL vmlinux 0x3fec048f sg_next +EXPORT_SYMBOL vmlinux 0x3ff62317 local_bh_disable +EXPORT_SYMBOL vmlinux 0x3ff8069b tcf_hash_insert +EXPORT_SYMBOL vmlinux 0x3ff8e495 lg_local_unlock_cpu +EXPORT_SYMBOL vmlinux 0x402b8281 __request_module +EXPORT_SYMBOL vmlinux 0x403c15c6 pci_scan_bus_parented +EXPORT_SYMBOL vmlinux 0x403d17f2 inode_add_rsv_space +EXPORT_SYMBOL vmlinux 0x404066c5 idr_for_each +EXPORT_SYMBOL vmlinux 0x40490312 tcf_generic_walker +EXPORT_SYMBOL vmlinux 0x4050e4fe jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x4059792f print_hex_dump +EXPORT_SYMBOL vmlinux 0x405c1144 get_seconds +EXPORT_SYMBOL vmlinux 0x40621187 __bio_clone +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409d12cb neigh_ifdown +EXPORT_SYMBOL vmlinux 0x409d86fa bio_integrity_get_tag +EXPORT_SYMBOL vmlinux 0x40a27c37 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x40a2d1dd dm_table_get_size +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40b57158 pme_initfq +EXPORT_SYMBOL vmlinux 0x40b64451 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0x40beb95b gen_pool_free +EXPORT_SYMBOL vmlinux 0x40c01859 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40e68677 kobject_get +EXPORT_SYMBOL vmlinux 0x40f1ad10 tb_ticks_per_jiffy +EXPORT_SYMBOL vmlinux 0x40f2b10c ipmi_alloc_smi_msg +EXPORT_SYMBOL vmlinux 0x413398b4 vfs_mknod +EXPORT_SYMBOL vmlinux 0x41343611 register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x414a7d4b generic_fillattr +EXPORT_SYMBOL vmlinux 0x415833d0 ping_prot +EXPORT_SYMBOL vmlinux 0x4159c38f ioremap_wc +EXPORT_SYMBOL vmlinux 0x41646cd2 mdiobus_free +EXPORT_SYMBOL vmlinux 0x4168619e bman_pool_max +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x419b3e8f i2c_add_adapter +EXPORT_SYMBOL vmlinux 0x41a76a6d pci_iomap +EXPORT_SYMBOL vmlinux 0x41ac25a1 dev_remove_offload +EXPORT_SYMBOL vmlinux 0x41d1048c pagevec_lookup_tag +EXPORT_SYMBOL vmlinux 0x41d78f0b __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x41ebe920 find_get_pages_tag +EXPORT_SYMBOL vmlinux 0x41ee28c6 skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0x4211c3c1 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x421e1739 dev_get_stats +EXPORT_SYMBOL vmlinux 0x423b776a ipmi_create_user +EXPORT_SYMBOL vmlinux 0x424793d0 flush_signals +EXPORT_SYMBOL vmlinux 0x42595e58 vgacon_text_force +EXPORT_SYMBOL vmlinux 0x42977ad4 __hw_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x42a1b208 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x42a6d338 seq_pad +EXPORT_SYMBOL vmlinux 0x42c576b6 open_exec +EXPORT_SYMBOL vmlinux 0x42c65986 qman_alloc_fqid_range +EXPORT_SYMBOL vmlinux 0x430154ae bman_irqsource_remove +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x430d9734 bio_phys_segments +EXPORT_SYMBOL vmlinux 0x4315373c __cleancache_get_page +EXPORT_SYMBOL vmlinux 0x4328ca79 elv_abort_queue +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x4355a547 blk_queue_dma_pad +EXPORT_SYMBOL vmlinux 0x4362f37f mb_cache_entry_alloc +EXPORT_SYMBOL vmlinux 0x43632d7d of_find_property +EXPORT_SYMBOL vmlinux 0x436c2179 iowrite32 +EXPORT_SYMBOL vmlinux 0x437790f1 inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x4392dfd5 skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0x43a01f90 complete_all +EXPORT_SYMBOL vmlinux 0x43ee5998 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0x43f16735 sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0x43f23311 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x43f9a67a vfs_write +EXPORT_SYMBOL vmlinux 0x4411c503 prandom_seed +EXPORT_SYMBOL vmlinux 0x4414500c sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x443575ad sys_fillrect +EXPORT_SYMBOL vmlinux 0x44366cfc simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0x44438b96 hex2bin +EXPORT_SYMBOL vmlinux 0x445e8633 __xfrm_init_state +EXPORT_SYMBOL vmlinux 0x4484c9f6 fm_mutex_lock +EXPORT_SYMBOL vmlinux 0x44857dc9 __wait_on_buffer +EXPORT_SYMBOL vmlinux 0x44b3b895 splice_from_pipe_next +EXPORT_SYMBOL vmlinux 0x44cf882c km_state_notify +EXPORT_SYMBOL vmlinux 0x44de7f8b devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0x44e3b21c security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44eb192e wait_for_completion +EXPORT_SYMBOL vmlinux 0x44ef2c80 block_write_full_page +EXPORT_SYMBOL vmlinux 0x44f5e8b5 of_allnodes +EXPORT_SYMBOL vmlinux 0x44f7929b qm_fq_new +EXPORT_SYMBOL vmlinux 0x44ffea6f kmap_high +EXPORT_SYMBOL vmlinux 0x4519dbdb elv_rq_merge_ok +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x456c2588 get_tz_trend +EXPORT_SYMBOL vmlinux 0x45744513 phy_init_eee +EXPORT_SYMBOL vmlinux 0x4575cab7 jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x45880a2d nobh_write_begin +EXPORT_SYMBOL vmlinux 0x4596db6a sys_sigreturn +EXPORT_SYMBOL vmlinux 0x45a37821 __dquot_transfer +EXPORT_SYMBOL vmlinux 0x45a6be13 cpufreq_sysfs_remove_file +EXPORT_SYMBOL vmlinux 0x45a765cf pci_add_resource +EXPORT_SYMBOL vmlinux 0x45aa14da linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x45b80d4f __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0x45be10d5 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0x45ebaedc blk_end_request_cur +EXPORT_SYMBOL vmlinux 0x45f62f53 mntput +EXPORT_SYMBOL vmlinux 0x4612c59d down_trylock +EXPORT_SYMBOL vmlinux 0x461ebfa0 __copy_tofrom_user +EXPORT_SYMBOL vmlinux 0x462a2e75 match_strlcpy +EXPORT_SYMBOL vmlinux 0x46322630 dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x465cab34 secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0x46608fa0 getnstimeofday +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x46821969 tcp_sendpage +EXPORT_SYMBOL vmlinux 0x46ad5520 tcp_child_process +EXPORT_SYMBOL vmlinux 0x46c1147d qman_poll_slow +EXPORT_SYMBOL vmlinux 0x46d12956 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0x46e44abc skb_pull +EXPORT_SYMBOL vmlinux 0x46feb099 dm_read_arg +EXPORT_SYMBOL vmlinux 0x4715740a abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0x4734d773 phy_stop_interrupts +EXPORT_SYMBOL vmlinux 0x47416e14 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x475f8b68 vga_tryget +EXPORT_SYMBOL vmlinux 0x477d78f6 fd_install +EXPORT_SYMBOL vmlinux 0x47800a3b cdev_init +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x4797a272 ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x47b3f862 radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x47bcf84c param_set_ulong +EXPORT_SYMBOL vmlinux 0x47c8baf4 param_ops_uint +EXPORT_SYMBOL vmlinux 0x47ce39d4 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0x47d396b9 tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0x47ece0ed pme_ctx_ctrl_read_flow +EXPORT_SYMBOL vmlinux 0x48034724 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x481752d7 ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0x481b4155 bdi_init +EXPORT_SYMBOL vmlinux 0x481ed1ad inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0x482a2a49 param_set_charp +EXPORT_SYMBOL vmlinux 0x48404b9a remove_wait_queue +EXPORT_SYMBOL vmlinux 0x484e4849 inode_set_bytes +EXPORT_SYMBOL vmlinux 0x4851bdd4 pci_remove_bus +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x4879cf5c free_task +EXPORT_SYMBOL vmlinux 0x4880516d devm_free_irq +EXPORT_SYMBOL vmlinux 0x488e70d2 eth_mac_addr +EXPORT_SYMBOL vmlinux 0x48a771c5 cpu_core_map +EXPORT_SYMBOL vmlinux 0x48c6db53 of_get_child_by_name +EXPORT_SYMBOL vmlinux 0x48d90ed6 blk_integrity_register +EXPORT_SYMBOL vmlinux 0x48d9cb4a netpoll_setup +EXPORT_SYMBOL vmlinux 0x48dc9c25 blk_stop_queue +EXPORT_SYMBOL vmlinux 0x48e1b2fd init_special_inode +EXPORT_SYMBOL vmlinux 0x48fabfbf gen_new_estimator +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x49088c53 pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0x492aef19 from_kgid +EXPORT_SYMBOL vmlinux 0x49573188 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0x4959e07b key_link +EXPORT_SYMBOL vmlinux 0x495c96f8 posix_acl_init +EXPORT_SYMBOL vmlinux 0x49603fb8 security_sb_copy_data +EXPORT_SYMBOL vmlinux 0x497022d4 blk_recount_segments +EXPORT_SYMBOL vmlinux 0x499a86c4 serio_unregister_port +EXPORT_SYMBOL vmlinux 0x49b07aec tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x49dc6303 find_lock_page +EXPORT_SYMBOL vmlinux 0x49e4a5cb input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0x49fb5fe8 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0x4a01fcfd kernel_getsockopt +EXPORT_SYMBOL vmlinux 0x4a058675 dump_align +EXPORT_SYMBOL vmlinux 0x4a09591e dev_mc_flush +EXPORT_SYMBOL vmlinux 0x4a09c881 nf_register_sockopt +EXPORT_SYMBOL vmlinux 0x4a30e501 task_tgid_nr_ns +EXPORT_SYMBOL vmlinux 0x4a358252 __bitmap_subset +EXPORT_SYMBOL vmlinux 0x4a5d93c5 uart_add_one_port +EXPORT_SYMBOL vmlinux 0x4ab3f406 dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x4ac788cb alloc_mdio_bitbang +EXPORT_SYMBOL vmlinux 0x4acd93d3 release_resource +EXPORT_SYMBOL vmlinux 0x4ae16ec3 jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0x4afe9a77 scsi_partsize +EXPORT_SYMBOL vmlinux 0x4b085dbf agp3_generic_configure +EXPORT_SYMBOL vmlinux 0x4b098216 pci_disable_msix +EXPORT_SYMBOL vmlinux 0x4b1ec3e2 kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x4b34fbf5 block_all_signals +EXPORT_SYMBOL vmlinux 0x4b42a510 kernel_getpeername +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b7ed27b sleep_on +EXPORT_SYMBOL vmlinux 0x4baf6416 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0x4bcbed09 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0x4be85a03 memweight +EXPORT_SYMBOL vmlinux 0x4c0c0e55 generic_readlink +EXPORT_SYMBOL vmlinux 0x4c11435a _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0x4c1182cb bitmap_scnprintf +EXPORT_SYMBOL vmlinux 0x4c120a38 vfs_create +EXPORT_SYMBOL vmlinux 0x4c1c9253 ip_fragment +EXPORT_SYMBOL vmlinux 0x4c2ae700 strnstr +EXPORT_SYMBOL vmlinux 0x4c2c6245 generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0x4c360e4b sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x4c3b7b6a generic_make_request +EXPORT_SYMBOL vmlinux 0x4c5427f4 skb_store_bits +EXPORT_SYMBOL vmlinux 0x4c75e450 inode_reclaim_rsv_space +EXPORT_SYMBOL vmlinux 0x4c903075 handle_edge_irq +EXPORT_SYMBOL vmlinux 0x4c971bec ipmi_smi_msg_received +EXPORT_SYMBOL vmlinux 0x4c9fa03b elv_rb_del +EXPORT_SYMBOL vmlinux 0x4ca8c6f1 agp_generic_mask_memory +EXPORT_SYMBOL vmlinux 0x4cbbd171 __bitmap_weight +EXPORT_SYMBOL vmlinux 0x4cda02a2 lookup_one_len +EXPORT_SYMBOL vmlinux 0x4cdb3178 ns_to_timeval +EXPORT_SYMBOL vmlinux 0x4ce02080 tcp_gro_complete +EXPORT_SYMBOL vmlinux 0x4cfac698 elevator_init +EXPORT_SYMBOL vmlinux 0x4d017cef nf_log_unregister +EXPORT_SYMBOL vmlinux 0x4d14667c tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0x4d21a27c devm_gpio_free +EXPORT_SYMBOL vmlinux 0x4d3c153f sigprocmask +EXPORT_SYMBOL vmlinux 0x4d3c6123 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x4d45d89e udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x4d5c32ec check_disk_change +EXPORT_SYMBOL vmlinux 0x4d6daf93 blk_init_queue +EXPORT_SYMBOL vmlinux 0x4d71004a __cpm2_setbrg +EXPORT_SYMBOL vmlinux 0x4d75110a eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0x4d8b97d9 eth_header +EXPORT_SYMBOL vmlinux 0x4d974b9c register_sysrq_key +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4d9dcda5 qman_fqid_pool_destroy +EXPORT_SYMBOL vmlinux 0x4da7c931 rwsem_downgrade_wake +EXPORT_SYMBOL vmlinux 0x4de32cab devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x4de34a07 cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x4dec6038 memscan +EXPORT_SYMBOL vmlinux 0x4df119fa __bitmap_parse +EXPORT_SYMBOL vmlinux 0x4df50091 d_path +EXPORT_SYMBOL vmlinux 0x4dfed71c flex_array_get_ptr +EXPORT_SYMBOL vmlinux 0x4e12b8b3 contig_page_data +EXPORT_SYMBOL vmlinux 0x4e2b7602 ata_link_printk +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e44ab51 register_cdrom +EXPORT_SYMBOL vmlinux 0x4e5165e5 of_find_device_by_node +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e6fbfbe qdisc_destroy +EXPORT_SYMBOL vmlinux 0x4e720481 xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0x4e74352a pcim_pin_device +EXPORT_SYMBOL vmlinux 0x4e786d13 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x4e7dcfab vfs_link +EXPORT_SYMBOL vmlinux 0x4e830a3e strnicmp +EXPORT_SYMBOL vmlinux 0x4e9dffb5 ip_fast_csum +EXPORT_SYMBOL vmlinux 0x4eb0d947 i8042_install_filter +EXPORT_SYMBOL vmlinux 0x4ed53dce pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0x4ed7cbf1 writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0x4edb9c23 sk_run_filter +EXPORT_SYMBOL vmlinux 0x4ee528e2 d_find_any_alias +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f221b82 pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0x4f248523 of_find_node_by_name +EXPORT_SYMBOL vmlinux 0x4f391d0e nla_parse +EXPORT_SYMBOL vmlinux 0x4f459b52 sys_copyarea +EXPORT_SYMBOL vmlinux 0x4f68e5c9 do_gettimeofday +EXPORT_SYMBOL vmlinux 0x4f696e73 sg_miter_next +EXPORT_SYMBOL vmlinux 0x4f9bfc8d splice_from_pipe_begin +EXPORT_SYMBOL vmlinux 0x4fabbf39 pcie_get_minimum_link +EXPORT_SYMBOL vmlinux 0x4fb52ff9 sock_setsockopt +EXPORT_SYMBOL vmlinux 0x4fbc7f04 dquot_drop +EXPORT_SYMBOL vmlinux 0x4fd53b98 __breadahead +EXPORT_SYMBOL vmlinux 0x4fda5fd9 netif_device_attach +EXPORT_SYMBOL vmlinux 0x4fdee897 i8042_command +EXPORT_SYMBOL vmlinux 0x4fe0d785 blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0x4fe99583 atomic64_dec_if_positive +EXPORT_SYMBOL vmlinux 0x4fec7c48 scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x500cc4b3 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x50306254 __devcgroup_inode_permission +EXPORT_SYMBOL vmlinux 0x50384baf vgacon_remap_base +EXPORT_SYMBOL vmlinux 0x50840aac cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0x509817cf vprintk_emit +EXPORT_SYMBOL vmlinux 0x50ae7d80 __idr_pre_get +EXPORT_SYMBOL vmlinux 0x50c70264 xfrm_unregister_mode +EXPORT_SYMBOL vmlinux 0x50cde8cc lock_sock_nested +EXPORT_SYMBOL vmlinux 0x50d000a0 devfreq_resume_device +EXPORT_SYMBOL vmlinux 0x50d45e03 mmc_erase +EXPORT_SYMBOL vmlinux 0x5102b921 i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0x510efd22 brioctl_set +EXPORT_SYMBOL vmlinux 0x5118c382 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0x51556688 dev_get_flags +EXPORT_SYMBOL vmlinux 0x515e24a7 flush_instruction_cache +EXPORT_SYMBOL vmlinux 0x517f356e netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0x518fca0b twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0x519b0da3 finish_wait +EXPORT_SYMBOL vmlinux 0x51a68891 blk_bio_map_sg +EXPORT_SYMBOL vmlinux 0x51c93ad0 fm_get_rtc_handle +EXPORT_SYMBOL vmlinux 0x51d2bb87 touch_buffer +EXPORT_SYMBOL vmlinux 0x51dce73b xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x51df0651 netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0x51ecac66 dentry_path_raw +EXPORT_SYMBOL vmlinux 0x51ef33b8 kstrndup +EXPORT_SYMBOL vmlinux 0x52026cdf security_sb_parse_opts_str +EXPORT_SYMBOL vmlinux 0x521b36b5 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0x521e19cd block_commit_write +EXPORT_SYMBOL vmlinux 0x522924c7 jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0x522dcd0a input_register_device +EXPORT_SYMBOL vmlinux 0x52428cc8 parent_mem_cgroup +EXPORT_SYMBOL vmlinux 0x524f6f51 ipmi_get_my_address +EXPORT_SYMBOL vmlinux 0x5253c8e5 twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0x525a189d pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x528c709d simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x52978464 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0x52f1a6e4 dev_addr_init +EXPORT_SYMBOL vmlinux 0x52f98ac9 i2c_register_driver +EXPORT_SYMBOL vmlinux 0x52feddf2 bio_integrity_enabled +EXPORT_SYMBOL vmlinux 0x532c86a0 dev_load +EXPORT_SYMBOL vmlinux 0x53326531 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x533a792f mutex_lock +EXPORT_SYMBOL vmlinux 0x533e5bd8 blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x5348fe19 dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0x53621d14 mount_ns +EXPORT_SYMBOL vmlinux 0x539d86ac sock_edemux +EXPORT_SYMBOL vmlinux 0x53ab24a6 pci_add_new_bus +EXPORT_SYMBOL vmlinux 0x53ad6997 xfrm_init_state +EXPORT_SYMBOL vmlinux 0x53ae85d8 update_region +EXPORT_SYMBOL vmlinux 0x53b342eb scsi_block_requests +EXPORT_SYMBOL vmlinux 0x53bb01e2 vm_stat +EXPORT_SYMBOL vmlinux 0x53ebab1b _outsl_ns +EXPORT_SYMBOL vmlinux 0x53f4ee85 udp_add_offload +EXPORT_SYMBOL vmlinux 0x53f9dc16 tty_name +EXPORT_SYMBOL vmlinux 0x5409775b free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x540a7c18 devm_gpiod_get +EXPORT_SYMBOL vmlinux 0x540dab2f loop_register_transfer +EXPORT_SYMBOL vmlinux 0x5412c7c7 up +EXPORT_SYMBOL vmlinux 0x541e8bad cdrom_release +EXPORT_SYMBOL vmlinux 0x5434ca8e mb_cache_entry_release +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x543f2866 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x5448d66b tcf_exts_change +EXPORT_SYMBOL vmlinux 0x544f46a7 cpufreq_global_kobject +EXPORT_SYMBOL vmlinux 0x548cb517 bman_poll +EXPORT_SYMBOL vmlinux 0x549574d0 xfrm6_prepare_output +EXPORT_SYMBOL vmlinux 0x5499d2a2 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0x54a58ab4 mdiobus_register +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54b1a301 tty_do_resize +EXPORT_SYMBOL vmlinux 0x54c9dc8e qman_fq_fqid +EXPORT_SYMBOL vmlinux 0x54e0ac12 __skb_gso_segment +EXPORT_SYMBOL vmlinux 0x54e3cc3b param_get_int +EXPORT_SYMBOL vmlinux 0x54e461ce eth_header_parse +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54fddfcc unregister_binfmt +EXPORT_SYMBOL vmlinux 0x5502cae7 tty_port_close_start +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x551ffb5f pci_get_device +EXPORT_SYMBOL vmlinux 0x5541ea93 on_each_cpu +EXPORT_SYMBOL vmlinux 0x5543a2fc netif_carrier_off +EXPORT_SYMBOL vmlinux 0x5549253a tcf_hash_destroy +EXPORT_SYMBOL vmlinux 0x556410c4 blk_queue_make_request +EXPORT_SYMBOL vmlinux 0x5567c227 kernel_cpustat +EXPORT_SYMBOL vmlinux 0x5568c553 complete +EXPORT_SYMBOL vmlinux 0x556c2740 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x5575b54c mmc_can_erase +EXPORT_SYMBOL vmlinux 0x5577ef9e udp_table +EXPORT_SYMBOL vmlinux 0x55846fe8 netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x558a60a5 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x5590dadc abort_creds +EXPORT_SYMBOL vmlinux 0x5594be03 bitmap_remap +EXPORT_SYMBOL vmlinux 0x55b20ff2 fsnotify_get_group +EXPORT_SYMBOL vmlinux 0x55c00745 dquot_destroy +EXPORT_SYMBOL vmlinux 0x55c77471 devm_gpiod_put +EXPORT_SYMBOL vmlinux 0x55ca003f neigh_seq_next +EXPORT_SYMBOL vmlinux 0x55cff59c dev_addr_flush +EXPORT_SYMBOL vmlinux 0x55fb072c security_path_truncate +EXPORT_SYMBOL vmlinux 0x56138c9b page_symlink +EXPORT_SYMBOL vmlinux 0x5614b010 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x562fd418 sb_set_blocksize +EXPORT_SYMBOL vmlinux 0x5632898e ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x56365c05 pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0x5642793a radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x5642e466 inode_dio_wait +EXPORT_SYMBOL vmlinux 0x56803a4e input_get_keycode +EXPORT_SYMBOL vmlinux 0x56a10763 csum_tcpudp_magic +EXPORT_SYMBOL vmlinux 0x56a22d9d __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x56a302e7 inet_add_protocol +EXPORT_SYMBOL vmlinux 0x56a66942 phy_driver_unregister +EXPORT_SYMBOL vmlinux 0x56a7a1e0 blk_start_queue +EXPORT_SYMBOL vmlinux 0x56c463dc simple_transaction_release +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x57115441 nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0x5713b3cb icmpv6_send +EXPORT_SYMBOL vmlinux 0x5723efbb balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0x572e85d4 blk_lookup_devt +EXPORT_SYMBOL vmlinux 0x573a46c2 dm_unregister_target +EXPORT_SYMBOL vmlinux 0x574576ef pci_enable_msix +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x575af70c on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x5778678b elevator_exit +EXPORT_SYMBOL vmlinux 0x5785384a flex_array_free_parts +EXPORT_SYMBOL vmlinux 0x5786eb88 kill_bdev +EXPORT_SYMBOL vmlinux 0x57886d59 xfrm_cfg_mutex +EXPORT_SYMBOL vmlinux 0x579f65c8 pme_fd_cmd_fcr +EXPORT_SYMBOL vmlinux 0x579fbcd2 cpu_possible_mask +EXPORT_SYMBOL vmlinux 0x57ded72f nf_setsockopt +EXPORT_SYMBOL vmlinux 0x580bcf80 register_console +EXPORT_SYMBOL vmlinux 0x5810e582 fs_bio_set +EXPORT_SYMBOL vmlinux 0x5814e055 bm_pool_free +EXPORT_SYMBOL vmlinux 0x582a4747 cacheable_memcpy +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x583e766b rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0x5857b225 ioread16_rep +EXPORT_SYMBOL vmlinux 0x58623807 proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0x58655f38 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x587616f1 vfs_fstatat +EXPORT_SYMBOL vmlinux 0x5877d8ef qman_static_dequeue_add +EXPORT_SYMBOL vmlinux 0x588477fa blk_mq_free_queue +EXPORT_SYMBOL vmlinux 0x588a3f86 do_splice_direct +EXPORT_SYMBOL vmlinux 0x58a2756a devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x58c1b16c blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0x58d1070a of_get_address +EXPORT_SYMBOL vmlinux 0x58f27719 netdev_master_upper_dev_link_private +EXPORT_SYMBOL vmlinux 0x591241d0 register_sysctl_table +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x595d0946 empty_zero_page +EXPORT_SYMBOL vmlinux 0x5963a6c8 __nla_reserve +EXPORT_SYMBOL vmlinux 0x5993179c sock_from_file +EXPORT_SYMBOL vmlinux 0x59a2a09f bitmap_unplug +EXPORT_SYMBOL vmlinux 0x59af2d11 __get_user_pages +EXPORT_SYMBOL vmlinux 0x59b3378a completion_done +EXPORT_SYMBOL vmlinux 0x59e66ca8 d_validate +EXPORT_SYMBOL vmlinux 0x59f4e4d2 __module_get +EXPORT_SYMBOL vmlinux 0x59fb7284 i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0x5a23cda1 jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x5a2f90fa of_gpio_simple_xlate +EXPORT_SYMBOL vmlinux 0x5a36523e pme_ctx_ctrl_nop +EXPORT_SYMBOL vmlinux 0x5a5536c2 param_ops_invbool +EXPORT_SYMBOL vmlinux 0x5a84ea43 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x5a8c4eb2 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0x5a8cf462 nlmsg_notify +EXPORT_SYMBOL vmlinux 0x5a9665f3 get_fs_type +EXPORT_SYMBOL vmlinux 0x5ab67931 do_IRQ +EXPORT_SYMBOL vmlinux 0x5ab909f5 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0x5abc36da qdisc_reset +EXPORT_SYMBOL vmlinux 0x5ad72c9e tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0x5b19634d div_s64_rem +EXPORT_SYMBOL vmlinux 0x5b28d3f1 dma_async_device_register +EXPORT_SYMBOL vmlinux 0x5b36a4f5 blkdev_put +EXPORT_SYMBOL vmlinux 0x5b39988e ftrace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0x5b54cd2e swiotlb_sync_single_for_device +EXPORT_SYMBOL vmlinux 0x5b69640b abx500_register_ops +EXPORT_SYMBOL vmlinux 0x5b9828c5 dma_spin_lock +EXPORT_SYMBOL vmlinux 0x5bdc60af mb_cache_create +EXPORT_SYMBOL vmlinux 0x5bf63794 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x5c350bb7 gen10g_read_status +EXPORT_SYMBOL vmlinux 0x5c37f319 _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x5c462530 blk_get_backing_dev_info +EXPORT_SYMBOL vmlinux 0x5c4ec416 get_io_context +EXPORT_SYMBOL vmlinux 0x5c5e90f5 __pskb_copy +EXPORT_SYMBOL vmlinux 0x5c73e9a6 sg_miter_stop +EXPORT_SYMBOL vmlinux 0x5c99eecb phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x5cace417 posix_test_lock +EXPORT_SYMBOL vmlinux 0x5ccd4903 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0x5ccdbd61 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0x5ce5e06b __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0x5cef90f2 dcache_dir_open +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5d04f25f dquot_operations +EXPORT_SYMBOL vmlinux 0x5d19594d mmc_gpio_free_ro +EXPORT_SYMBOL vmlinux 0x5d37a3b0 freezing_slow_path +EXPORT_SYMBOL vmlinux 0x5d41c87c param_ops_charp +EXPORT_SYMBOL vmlinux 0x5d550c4d scsi_sd_probe_domain +EXPORT_SYMBOL vmlinux 0x5d58c028 set_anon_super +EXPORT_SYMBOL vmlinux 0x5d58efa0 convert_ifc_address +EXPORT_SYMBOL vmlinux 0x5d5b5a16 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x5d6bdce1 flex_array_alloc +EXPORT_SYMBOL vmlinux 0x5d6f856b ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x5dc4fe03 phy_register_fixup +EXPORT_SYMBOL vmlinux 0x5dfe1da9 dev_set_group +EXPORT_SYMBOL vmlinux 0x5e15425b tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0x5e27321b register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x5e3a8a9c __wake_up +EXPORT_SYMBOL vmlinux 0x5e5504b1 replace_mount_options +EXPORT_SYMBOL vmlinux 0x5e65f612 bio_integrity_advance +EXPORT_SYMBOL vmlinux 0x5e7da774 dev_alert +EXPORT_SYMBOL vmlinux 0x5e80f37c ipmi_unregister_for_cmd +EXPORT_SYMBOL vmlinux 0x5e949c70 tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5eb0401e proc_dostring +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ec4907f search_binary_handler +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5efb20cc bio_add_page +EXPORT_SYMBOL vmlinux 0x5f005368 kstrtou8 +EXPORT_SYMBOL vmlinux 0x5f024032 blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f28c2dc idr_remove +EXPORT_SYMBOL vmlinux 0x5f39a68e inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x5f3c8f5c mmc_assume_removable +EXPORT_SYMBOL vmlinux 0x5f4db9dc gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0x5f576485 pci_write_vpd +EXPORT_SYMBOL vmlinux 0x5f677d6d simple_statfs +EXPORT_SYMBOL vmlinux 0x5f6bb181 seq_putc +EXPORT_SYMBOL vmlinux 0x5f7434ba __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x5f747579 empty_aops +EXPORT_SYMBOL vmlinux 0x5f754e5a memset +EXPORT_SYMBOL vmlinux 0x5f8a2728 isa_io_base +EXPORT_SYMBOL vmlinux 0x5fa1c465 blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0x5fb93880 mddev_congested +EXPORT_SYMBOL vmlinux 0x5fcdcc05 ipmi_get_my_LUN +EXPORT_SYMBOL vmlinux 0x5fda0227 vfs_stat +EXPORT_SYMBOL vmlinux 0x5fe696a7 pci_iounmap +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x6041431a d_rehash +EXPORT_SYMBOL vmlinux 0x604b1ed5 dm_get_device +EXPORT_SYMBOL vmlinux 0x60653be8 ip_getsockopt +EXPORT_SYMBOL vmlinux 0x6067ea13 agp_unbind_memory +EXPORT_SYMBOL vmlinux 0x606d0b09 secure_tcpv6_sequence_number +EXPORT_SYMBOL vmlinux 0x6086fae9 rwsem_wake +EXPORT_SYMBOL vmlinux 0x609b926d do_splice_from +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a5caa1 udp_poll +EXPORT_SYMBOL vmlinux 0x60b86f61 sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x60c72dc7 tty_port_put +EXPORT_SYMBOL vmlinux 0x60cd8ed8 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0x60de3107 sock_no_listen +EXPORT_SYMBOL vmlinux 0x60df1e3b posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x60fc50d5 tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x60fc5c6c xfrm_state_update +EXPORT_SYMBOL vmlinux 0x610b8ee2 mmc_power_save_host +EXPORT_SYMBOL vmlinux 0x610d186b pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0x612283d2 __neigh_create +EXPORT_SYMBOL vmlinux 0x612390ad netpoll_set_trap +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x61337cac flush_tlb_mm +EXPORT_SYMBOL vmlinux 0x613fb610 d_drop +EXPORT_SYMBOL vmlinux 0x61538ad0 param_get_charp +EXPORT_SYMBOL vmlinux 0x6156b780 inet_dgram_ops +EXPORT_SYMBOL vmlinux 0x61994fde phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x61b42383 init_task +EXPORT_SYMBOL vmlinux 0x61b4c268 bman_poll_slow +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61bc8d63 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0x61c2f4e7 skb_clone +EXPORT_SYMBOL vmlinux 0x61e341c3 bioset_integrity_free +EXPORT_SYMBOL vmlinux 0x61eb79b4 pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0x61eef2c9 _insb +EXPORT_SYMBOL vmlinux 0x61efcd78 of_phy_attach +EXPORT_SYMBOL vmlinux 0x61f37ab7 ip6_xmit +EXPORT_SYMBOL vmlinux 0x61fdc48a gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x6225637e md5_transform +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x6239d293 dev_disable_lro +EXPORT_SYMBOL vmlinux 0x62538167 slhc_toss +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x6278f975 netdev_crit +EXPORT_SYMBOL vmlinux 0x62822d05 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x62827bec security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x62860fb1 pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0x6297eb7e register_framebuffer +EXPORT_SYMBOL vmlinux 0x62c14944 __scm_send +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x631e9207 mapping_tagged +EXPORT_SYMBOL vmlinux 0x63231951 gen_pool_create +EXPORT_SYMBOL vmlinux 0x6323afb9 lro_flush_pkt +EXPORT_SYMBOL vmlinux 0x6330d08a security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x6336c3d5 blk_mq_can_queue +EXPORT_SYMBOL vmlinux 0x634d8020 qman_enqueue_orp +EXPORT_SYMBOL vmlinux 0x638bdb58 pci_find_bus +EXPORT_SYMBOL vmlinux 0x639ca681 blk_init_queue_node +EXPORT_SYMBOL vmlinux 0x639d8a80 km_policy_expired +EXPORT_SYMBOL vmlinux 0x63bbb51d splice_from_pipe_feed +EXPORT_SYMBOL vmlinux 0x63cc6c52 pme_map_error +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63ec0fb5 pci_platform_rom +EXPORT_SYMBOL vmlinux 0x63f00f44 igrab +EXPORT_SYMBOL vmlinux 0x63fc232f strlen_user +EXPORT_SYMBOL vmlinux 0x6403e338 tcp_memory_pressure +EXPORT_SYMBOL vmlinux 0x642851e6 skb_orphan_partial +EXPORT_SYMBOL vmlinux 0x642fef5a nla_append +EXPORT_SYMBOL vmlinux 0x6469c0f9 generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0x647c66d4 mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0x647c7091 scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x649e12ca security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x64a168da deactivate_locked_super +EXPORT_SYMBOL vmlinux 0x64a4b84d cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x64e0e0b7 netdev_change_features +EXPORT_SYMBOL vmlinux 0x64e64ade sync_blockdev +EXPORT_SYMBOL vmlinux 0x650d1431 bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651a2b8b page_address +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x652fafeb inode_dio_done +EXPORT_SYMBOL vmlinux 0x65400222 __irq_offset_value +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x6565d33f scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x656ded60 path_put +EXPORT_SYMBOL vmlinux 0x6585e310 alloc_pages_exact_nid +EXPORT_SYMBOL vmlinux 0x6594a28b tc_classify_compat +EXPORT_SYMBOL vmlinux 0x65b220bd dev_mc_sync +EXPORT_SYMBOL vmlinux 0x65bb58a2 _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x65c9e813 abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0x65d0b5ca poll_schedule_timeout +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65ed8713 napi_complete +EXPORT_SYMBOL vmlinux 0x65f3ad9a fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x65f72dcd phy_connect_direct +EXPORT_SYMBOL vmlinux 0x6624637f vm_map_ram +EXPORT_SYMBOL vmlinux 0x662b8c2c sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x662e5d59 mutex_trylock +EXPORT_SYMBOL vmlinux 0x66313fae netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0x66484649 scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0x6671f7fa padata_do_parallel +EXPORT_SYMBOL vmlinux 0x668da8d5 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x66af4e8d seq_write +EXPORT_SYMBOL vmlinux 0x66ba72cf phy_scan_fixups +EXPORT_SYMBOL vmlinux 0x66ec2732 key_put +EXPORT_SYMBOL vmlinux 0x66eeabc2 generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x66fc4283 dev_change_carrier +EXPORT_SYMBOL vmlinux 0x670c0840 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0x671bd4e8 fb_validate_mode +EXPORT_SYMBOL vmlinux 0x673f815e agp_bridges +EXPORT_SYMBOL vmlinux 0x67426eb3 fm_get_mem_region +EXPORT_SYMBOL vmlinux 0x675b1fc2 bman_get_portal_config +EXPORT_SYMBOL vmlinux 0x675b8f61 param_get_string +EXPORT_SYMBOL vmlinux 0x676a20c6 inc_nlink +EXPORT_SYMBOL vmlinux 0x676bc06f tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0x6771945d alloc_buffer_head +EXPORT_SYMBOL vmlinux 0x677c18c7 ll_rw_block +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67be2902 elevator_change +EXPORT_SYMBOL vmlinux 0x67cb9784 ipmi_poll_interface +EXPORT_SYMBOL vmlinux 0x67d71a44 vm_event_states +EXPORT_SYMBOL vmlinux 0x681a6c83 max8998_update_reg +EXPORT_SYMBOL vmlinux 0x6821ddc4 pci_enable_msi_block_auto +EXPORT_SYMBOL vmlinux 0x68319642 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0x683a77b6 scsi_get_command +EXPORT_SYMBOL vmlinux 0x6849a15f flex_array_clear +EXPORT_SYMBOL vmlinux 0x68609857 complete_and_exit +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x688126c9 tty_vhangup +EXPORT_SYMBOL vmlinux 0x68886cbf skb_insert +EXPORT_SYMBOL vmlinux 0x6888c964 tcp_recvmsg +EXPORT_SYMBOL vmlinux 0x6889416c sock_wmalloc +EXPORT_SYMBOL vmlinux 0x68a1cc9d twl6040_set_pll +EXPORT_SYMBOL vmlinux 0x68afac34 scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x68b02d7d dquot_enable +EXPORT_SYMBOL vmlinux 0x68b83ac6 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x68e05d57 getrawmonotonic +EXPORT_SYMBOL vmlinux 0x693373d3 fb_class +EXPORT_SYMBOL vmlinux 0x694094ac make_kuid +EXPORT_SYMBOL vmlinux 0x69594bce __dev_remove_offload +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x69a0ca7d iowrite16be +EXPORT_SYMBOL vmlinux 0x69a358a6 iomem_resource +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69cf1ff1 scsi_cmd_get_serial +EXPORT_SYMBOL vmlinux 0x69d38ed9 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x69d7e5b8 __debugger_ipi +EXPORT_SYMBOL vmlinux 0x69db329b blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0x69e27c7a bitmap_copy_le +EXPORT_SYMBOL vmlinux 0x69f1648b starget_for_each_device +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a3f4119 mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0x6a403e80 bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x6a43dd6c tcp_make_synack +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a61f874 to_tm +EXPORT_SYMBOL vmlinux 0x6a740c54 gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x6a76e1b7 __lock_page +EXPORT_SYMBOL vmlinux 0x6a76f3ac blk_iopoll_enable +EXPORT_SYMBOL vmlinux 0x6a80a3f5 cpm_muram_free +EXPORT_SYMBOL vmlinux 0x6a9c3b0f xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x6ac1e8f2 dev_mc_unsync +EXPORT_SYMBOL vmlinux 0x6acb973d iowrite32be +EXPORT_SYMBOL vmlinux 0x6ad5d990 dentry_update_name_case +EXPORT_SYMBOL vmlinux 0x6af5e50e blk_mq_alloc_single_hw_queue +EXPORT_SYMBOL vmlinux 0x6b00cc1a nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0x6b06fdce delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x6b1959ee jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0x6b1b67d3 __bdevname +EXPORT_SYMBOL vmlinux 0x6b2716a8 submit_bio +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b330236 clk_add_alias +EXPORT_SYMBOL vmlinux 0x6b336b9e serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0x6b35808a dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x6b36b8a0 dquot_release +EXPORT_SYMBOL vmlinux 0x6b7f1917 idr_find_slowpath +EXPORT_SYMBOL vmlinux 0x6b7f21ff mmc_remove_host +EXPORT_SYMBOL vmlinux 0x6ba8698c ps2_handle_ack +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bceaebc gen_replace_estimator +EXPORT_SYMBOL vmlinux 0x6bd59ae3 alloc_file +EXPORT_SYMBOL vmlinux 0x6bdcfd99 qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x6beb2078 param_set_copystring +EXPORT_SYMBOL vmlinux 0x6c0a2999 proc_set_user +EXPORT_SYMBOL vmlinux 0x6c0b4510 framebuffer_release +EXPORT_SYMBOL vmlinux 0x6c0c0bf0 read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x6c1a0daf tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x6c1ce5ce strcspn +EXPORT_SYMBOL vmlinux 0x6c2faee3 clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x6c3c047e pme_ctx_exclusive_inc +EXPORT_SYMBOL vmlinux 0x6c41f3e2 phy_drivers_register +EXPORT_SYMBOL vmlinux 0x6c51a836 sysctl_tcp_notsent_lowat +EXPORT_SYMBOL vmlinux 0x6c549273 generic_block_bmap +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c665691 flex_array_shrink +EXPORT_SYMBOL vmlinux 0x6c683a39 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0x6c6b4d88 account_page_redirty +EXPORT_SYMBOL vmlinux 0x6c702af7 sysctl_udp_rmem_min +EXPORT_SYMBOL vmlinux 0x6c7abf8c generic_pipe_buf_steal +EXPORT_SYMBOL vmlinux 0x6c8f041a tcp_close +EXPORT_SYMBOL vmlinux 0x6ca1d1a4 atomic64_read +EXPORT_SYMBOL vmlinux 0x6ca3873a netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0x6ca5b0f8 __net_get_random_once +EXPORT_SYMBOL vmlinux 0x6cdc5c6b nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6ce6af4d vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0x6ce91989 vfs_setpos +EXPORT_SYMBOL vmlinux 0x6ceb99fe __elv_add_request +EXPORT_SYMBOL vmlinux 0x6cecbe1d fget +EXPORT_SYMBOL vmlinux 0x6d0f1f89 dm_table_get_mode +EXPORT_SYMBOL vmlinux 0x6d11c503 sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x6d27eacf phy_device_free +EXPORT_SYMBOL vmlinux 0x6d27ef64 __bitmap_empty +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d344d39 drop_super +EXPORT_SYMBOL vmlinux 0x6d369c67 fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0x6d4e1d8a blk_get_queue +EXPORT_SYMBOL vmlinux 0x6d722f18 input_reset_device +EXPORT_SYMBOL vmlinux 0x6d98af30 phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0x6da928f4 _insw_ns +EXPORT_SYMBOL vmlinux 0x6dc2d2cb dev_crit +EXPORT_SYMBOL vmlinux 0x6dcebf9d __kfree_skb +EXPORT_SYMBOL vmlinux 0x6dd17085 single_open +EXPORT_SYMBOL vmlinux 0x6def2db2 half_md4_transform +EXPORT_SYMBOL vmlinux 0x6e055e00 generic_pipe_buf_unmap +EXPORT_SYMBOL vmlinux 0x6e12f93a register_qdisc +EXPORT_SYMBOL vmlinux 0x6e23324e mmc_can_discard +EXPORT_SYMBOL vmlinux 0x6e236c0f agp_generic_destroy_pages +EXPORT_SYMBOL vmlinux 0x6e379526 kernstart_addr +EXPORT_SYMBOL vmlinux 0x6e4a74c5 bio_pair_release +EXPORT_SYMBOL vmlinux 0x6e631a15 swiotlb_dma_mapping_error +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e764332 idr_destroy +EXPORT_SYMBOL vmlinux 0x6e86f56d pagecache_write_begin +EXPORT_SYMBOL vmlinux 0x6e9ca4a9 dma_find_channel +EXPORT_SYMBOL vmlinux 0x6eb74dff proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x6ebc5149 param_ops_long +EXPORT_SYMBOL vmlinux 0x6ebe8fc5 key_reject_and_link +EXPORT_SYMBOL vmlinux 0x6ee447b0 request_key +EXPORT_SYMBOL vmlinux 0x6ef8bb61 dma_async_memcpy_buf_to_buf +EXPORT_SYMBOL vmlinux 0x6f20960a full_name_hash +EXPORT_SYMBOL vmlinux 0x6f2639d0 blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x6f268538 bman_acquire +EXPORT_SYMBOL vmlinux 0x6f31e61e bmap +EXPORT_SYMBOL vmlinux 0x6f3d4008 console_start +EXPORT_SYMBOL vmlinux 0x6f5e48e7 rt6_lookup +EXPORT_SYMBOL vmlinux 0x6f85b211 ida_remove +EXPORT_SYMBOL vmlinux 0x6f8bb19d block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x6f958122 __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0x6fb1c19d __cleancache_put_page +EXPORT_SYMBOL vmlinux 0x6fb4dc4f jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6ff4c2bf input_set_abs_params +EXPORT_SYMBOL vmlinux 0x6ffdb971 scsi_adjust_queue_depth +EXPORT_SYMBOL vmlinux 0x702008b9 bdi_setup_and_register +EXPORT_SYMBOL vmlinux 0x702698d1 create_empty_buffers +EXPORT_SYMBOL vmlinux 0x7045dea9 qman_modify_cgr +EXPORT_SYMBOL vmlinux 0x7049162c scsi_remove_device +EXPORT_SYMBOL vmlinux 0x70523a7a __cond_resched_softirq +EXPORT_SYMBOL vmlinux 0x7054a3e4 request_dma +EXPORT_SYMBOL vmlinux 0x707f43f6 __ctzdi2 +EXPORT_SYMBOL vmlinux 0x70b20dd4 netdev_features_change +EXPORT_SYMBOL vmlinux 0x70b86a2e security_path_chown +EXPORT_SYMBOL vmlinux 0x70b9d27c skb_queue_purge +EXPORT_SYMBOL vmlinux 0x70bc17d7 inode_wait +EXPORT_SYMBOL vmlinux 0x70c717b0 ipv6_push_nfrag_opts +EXPORT_SYMBOL vmlinux 0x70d053fd try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x70d5e1ff abx500_remove_ops +EXPORT_SYMBOL vmlinux 0x70d888b7 __debugger_fault_handler +EXPORT_SYMBOL vmlinux 0x710f41a1 tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x71345032 ipmi_smi_watcher_unregister +EXPORT_SYMBOL vmlinux 0x7148b7e3 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x71585fef abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0x715b7c6c uart_update_timeout +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x7180b2c0 qman_delete_cgr +EXPORT_SYMBOL vmlinux 0x71882a29 dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0x718b47f9 sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0x719e034b i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71c90087 memcmp +EXPORT_SYMBOL vmlinux 0x71e0b8f2 mmc_interrupt_hpi +EXPORT_SYMBOL vmlinux 0x71f65175 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x721abcd4 ata_dev_printk +EXPORT_SYMBOL vmlinux 0x723648e7 vm_insert_mixed +EXPORT_SYMBOL vmlinux 0x7260b05a pm860x_page_set_bits +EXPORT_SYMBOL vmlinux 0x728ce230 qm_fq_free_flags +EXPORT_SYMBOL vmlinux 0x72a70b7f pme_ctx_scan_orp +EXPORT_SYMBOL vmlinux 0x72b243d4 free_dma +EXPORT_SYMBOL vmlinux 0x72b5b2b7 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x72b5c410 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0x72c7f95c register_netdevice +EXPORT_SYMBOL vmlinux 0x72d4c23c fsl_get_sys_freq +EXPORT_SYMBOL vmlinux 0x72d58de9 kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0x72e4145b unregister_cdrom +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72f777ac set_bdi_congested +EXPORT_SYMBOL vmlinux 0x7315a4e9 twl6030_mmc_card_detect_config +EXPORT_SYMBOL vmlinux 0x73162c0d mdiobus_read +EXPORT_SYMBOL vmlinux 0x731f9b62 block_invalidatepage +EXPORT_SYMBOL vmlinux 0x732fbf29 seq_vprintf +EXPORT_SYMBOL vmlinux 0x733b2383 next_tlbcam_idx +EXPORT_SYMBOL vmlinux 0x733c3b54 kasprintf +EXPORT_SYMBOL vmlinux 0x733c9b15 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0x73448cf0 ipv6_select_ident +EXPORT_SYMBOL vmlinux 0x735d8503 add_wait_queue +EXPORT_SYMBOL vmlinux 0x73635ddc tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0x737652f1 tty_schedule_flip +EXPORT_SYMBOL vmlinux 0x737cd0ea input_inject_event +EXPORT_SYMBOL vmlinux 0x737de5e9 radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0x737e4c26 pm860x_reg_read +EXPORT_SYMBOL vmlinux 0x73845aea dev_set_drvdata +EXPORT_SYMBOL vmlinux 0x738dc26c __find_get_block +EXPORT_SYMBOL vmlinux 0x738fa34b __netif_schedule +EXPORT_SYMBOL vmlinux 0x73b2c156 dcache_readdir +EXPORT_SYMBOL vmlinux 0x73bfcacd pcie_set_readrq +EXPORT_SYMBOL vmlinux 0x73c4284c udp_proc_register +EXPORT_SYMBOL vmlinux 0x73e1a22b devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0x73e20c1c strlcpy +EXPORT_SYMBOL vmlinux 0x74001bf7 sk_stream_error +EXPORT_SYMBOL vmlinux 0x745a2768 sock_wake_async +EXPORT_SYMBOL vmlinux 0x7469fcfe radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x747195f0 hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x747364e3 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0x7474dbb4 netdev_alert +EXPORT_SYMBOL vmlinux 0x7485e15e unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x748bec9a simple_pin_fs +EXPORT_SYMBOL vmlinux 0x74a429c8 thaw_super +EXPORT_SYMBOL vmlinux 0x74afbd7a __sk_dst_check +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74c9436e __skb_dst_set_noref +EXPORT_SYMBOL vmlinux 0x74ce05b8 flush_delayed_work +EXPORT_SYMBOL vmlinux 0x74d05dfa skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x7505bdef memchr_inv +EXPORT_SYMBOL vmlinux 0x751b6db5 vmap +EXPORT_SYMBOL vmlinux 0x751c2917 __wait_on_bit +EXPORT_SYMBOL vmlinux 0x7527b100 seq_open_private +EXPORT_SYMBOL vmlinux 0x75337421 neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x7538b132 agp_off +EXPORT_SYMBOL vmlinux 0x753e3fe7 tty_port_tty_get +EXPORT_SYMBOL vmlinux 0x753ef650 seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x754dac78 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x755983ac abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x756dd160 start_thread +EXPORT_SYMBOL vmlinux 0x7575efcd key_invalidate +EXPORT_SYMBOL vmlinux 0x757f088f cpm_muram_offset +EXPORT_SYMBOL vmlinux 0x75906e5d pci_release_region +EXPORT_SYMBOL vmlinux 0x7593d385 div64_s64 +EXPORT_SYMBOL vmlinux 0x75994700 add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0x759a1785 elv_dispatch_sort +EXPORT_SYMBOL vmlinux 0x759e3363 read_cache_page_async +EXPORT_SYMBOL vmlinux 0x75aba019 make_kgid +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75bdea12 iommu_area_alloc +EXPORT_SYMBOL vmlinux 0x75d13341 security_mmap_file +EXPORT_SYMBOL vmlinux 0x75e2fedc __get_page_tail +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x764bb162 pci_scan_slot +EXPORT_SYMBOL vmlinux 0x764bd77c request_resource +EXPORT_SYMBOL vmlinux 0x7668f3fd of_scan_pci_bridge +EXPORT_SYMBOL vmlinux 0x767f1bc4 __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0x76843c58 fm_port_enable +EXPORT_SYMBOL vmlinux 0x769c28d5 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x769e06d7 smp_call_function_many +EXPORT_SYMBOL vmlinux 0x76a61f72 neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0x76bf656d __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x76cb7756 d_instantiate +EXPORT_SYMBOL vmlinux 0x76cc6f05 tcp_disconnect +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76f234b1 ktime_get_clocktai +EXPORT_SYMBOL vmlinux 0x771cf835 dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x773a9c94 blk_iopoll_enabled +EXPORT_SYMBOL vmlinux 0x773c5cd0 __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x77525bd6 dump_skip +EXPORT_SYMBOL vmlinux 0x77533033 ipmi_register_smi +EXPORT_SYMBOL vmlinux 0x777779fc get_pci_dma_ops +EXPORT_SYMBOL vmlinux 0x77787dfc bdget +EXPORT_SYMBOL vmlinux 0x77801826 inet_sendmsg +EXPORT_SYMBOL vmlinux 0x778dd410 skb_seq_read +EXPORT_SYMBOL vmlinux 0x778fb8bb bio_copy_kern +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x779cd697 tcf_hash_check +EXPORT_SYMBOL vmlinux 0x77b851c4 cacheable_memzero +EXPORT_SYMBOL vmlinux 0x77b89017 dma_direct_ops +EXPORT_SYMBOL vmlinux 0x77bb80d6 icmp_send +EXPORT_SYMBOL vmlinux 0x77bc0034 serio_close +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77d84d54 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0x77df0847 __set_personality +EXPORT_SYMBOL vmlinux 0x77ecac9f zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x7811dc68 sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0x781da34a ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x782567ec memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0x7826b557 alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x783b3563 wake_up_atomic_t +EXPORT_SYMBOL vmlinux 0x785283b5 inet_csk_accept +EXPORT_SYMBOL vmlinux 0x785cf641 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x786d97ee in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x78751795 cdev_del +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x789dcc5b switch_mmu_context +EXPORT_SYMBOL vmlinux 0x78c8dcc0 xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78dfdd9f pme_hw_residue_free +EXPORT_SYMBOL vmlinux 0x78fd36e7 ipmi_request_supply_msgs +EXPORT_SYMBOL vmlinux 0x790df6ca __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x7921abde fb_get_mode +EXPORT_SYMBOL vmlinux 0x7930d225 of_device_is_compatible +EXPORT_SYMBOL vmlinux 0x7960e5fd udp_disconnect +EXPORT_SYMBOL vmlinux 0x796ca580 iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0x796fc5ce scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0x798e3164 fm_port_get_handle +EXPORT_SYMBOL vmlinux 0x79921285 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79aa790c sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0x79b50817 neigh_compat_output +EXPORT_SYMBOL vmlinux 0x79c03155 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0x79c9dab5 md_register_thread +EXPORT_SYMBOL vmlinux 0x79cf7d1e __generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x7a188791 prandom_bytes +EXPORT_SYMBOL vmlinux 0x7a27c184 ewma_init +EXPORT_SYMBOL vmlinux 0x7a32351e agp_backend_acquire +EXPORT_SYMBOL vmlinux 0x7a348110 xfrm4_rcv +EXPORT_SYMBOL vmlinux 0x7a40f932 filp_open +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a4a257d sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x7a5deb3f ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x7a5f1390 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x7a606d65 may_umount +EXPORT_SYMBOL vmlinux 0x7a687c63 ether_setup +EXPORT_SYMBOL vmlinux 0x7a694e2a ip_cmsg_recv +EXPORT_SYMBOL vmlinux 0x7a748052 dma_common_mmap +EXPORT_SYMBOL vmlinux 0x7a8b944f kmalloc_dma_caches +EXPORT_SYMBOL vmlinux 0x7a8e6ebe kobject_init +EXPORT_SYMBOL vmlinux 0x7a91726b clkdev_alloc +EXPORT_SYMBOL vmlinux 0x7a925833 cpufreq_get_global_kobject +EXPORT_SYMBOL vmlinux 0x7a987a4f ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0x7a9e0b30 ftrace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7abfeda2 dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0x7ac2d508 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7add44b5 posix_acl_valid +EXPORT_SYMBOL vmlinux 0x7afa89fc vsnprintf +EXPORT_SYMBOL vmlinux 0x7b00de91 insert_inode_locked +EXPORT_SYMBOL vmlinux 0x7b1ade38 lz4_decompress +EXPORT_SYMBOL vmlinux 0x7b454de8 security_path_symlink +EXPORT_SYMBOL vmlinux 0x7b473719 of_dev_put +EXPORT_SYMBOL vmlinux 0x7b5c8440 vm_munmap +EXPORT_SYMBOL vmlinux 0x7b6ae725 of_phy_connect_fixed_link +EXPORT_SYMBOL vmlinux 0x7b7dcafc jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x7b999be8 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0x7ba454c0 tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0x7be4827c pci_dram_offset +EXPORT_SYMBOL vmlinux 0x7bea67fd blk_queue_prep_rq +EXPORT_SYMBOL vmlinux 0x7bf61137 sock_no_mmap +EXPORT_SYMBOL vmlinux 0x7c003aef _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0x7c13421d release_sock +EXPORT_SYMBOL vmlinux 0x7c1372e8 panic +EXPORT_SYMBOL vmlinux 0x7c3793eb audit_log +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c4810a9 locks_free_lock +EXPORT_SYMBOL vmlinux 0x7c61340c __release_region +EXPORT_SYMBOL vmlinux 0x7c67bf37 bdev_read_only +EXPORT_SYMBOL vmlinux 0x7c91e0bf dev_addr_add +EXPORT_SYMBOL vmlinux 0x7c9291d1 csum_partial_copy_generic +EXPORT_SYMBOL vmlinux 0x7c98845d twl_i2c_read +EXPORT_SYMBOL vmlinux 0x7c9ac32e __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0x7ca67168 tty_register_ldisc +EXPORT_SYMBOL vmlinux 0x7cc578da param_get_long +EXPORT_SYMBOL vmlinux 0x7cc83fce phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0x7cca7e78 __page_symlink +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7ceeb041 blk_queue_find_tag +EXPORT_SYMBOL vmlinux 0x7d0bf6fc mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d0f89d2 security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0x7d11c268 jiffies +EXPORT_SYMBOL vmlinux 0x7d2bc57b abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0x7d445e24 of_platform_device_create +EXPORT_SYMBOL vmlinux 0x7d57875c xfrm_garbage_collect +EXPORT_SYMBOL vmlinux 0x7d6959f3 simple_link +EXPORT_SYMBOL vmlinux 0x7d722779 jbd2_journal_file_inode +EXPORT_SYMBOL vmlinux 0x7d78e4ef seq_open +EXPORT_SYMBOL vmlinux 0x7d7b86c2 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x7d7f5fc6 ftrace_print_symbols_seq_u64 +EXPORT_SYMBOL vmlinux 0x7daa9505 simple_setattr +EXPORT_SYMBOL vmlinux 0x7dc0e109 idr_get_next +EXPORT_SYMBOL vmlinux 0x7dcf4ec6 sock_get_timestampns +EXPORT_SYMBOL vmlinux 0x7dd81b9f free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x7dda7e6c dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7df76c4b scm_detach_fds +EXPORT_SYMBOL vmlinux 0x7e0c6bb9 blk_queue_free_tags +EXPORT_SYMBOL vmlinux 0x7e18266a i2c_del_driver +EXPORT_SYMBOL vmlinux 0x7e355212 __memcg_kmem_get_cache +EXPORT_SYMBOL vmlinux 0x7e36277d pci_restore_state +EXPORT_SYMBOL vmlinux 0x7e394c4e sysctl_local_reserved_ports +EXPORT_SYMBOL vmlinux 0x7e49f281 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0x7e87227e slhc_compress +EXPORT_SYMBOL vmlinux 0x7e9d3c7d blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0x7ec2aeeb start_tty +EXPORT_SYMBOL vmlinux 0x7ecb001b __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x7ed279a9 of_phy_connect +EXPORT_SYMBOL vmlinux 0x7ee32621 kfree_put_link +EXPORT_SYMBOL vmlinux 0x7ee73c0c memcg_socket_limit_enabled +EXPORT_SYMBOL vmlinux 0x7f0b2960 qman_fqid_pool_create +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f263822 proto_unregister +EXPORT_SYMBOL vmlinux 0x7f327cd8 inet_stream_ops +EXPORT_SYMBOL vmlinux 0x7f514375 devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x7f693efb inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0x7f75ab51 __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0x7f788473 i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0x7f94e402 iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0x7f99f916 con_copy_unimap +EXPORT_SYMBOL vmlinux 0x7fa96fa0 scsi_device_put +EXPORT_SYMBOL vmlinux 0x7fc62823 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fe3a713 blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x7ff9773a update_time +EXPORT_SYMBOL vmlinux 0x7ff98efb devm_ioport_map +EXPORT_SYMBOL vmlinux 0x7ffbabd1 kdb_current_task +EXPORT_SYMBOL vmlinux 0x8008e734 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0x8010b1e2 skb_copy_datagram_iovec +EXPORT_SYMBOL vmlinux 0x8015a2f0 agp_generic_alloc_pages +EXPORT_SYMBOL vmlinux 0x80313896 twl6040_reg_write +EXPORT_SYMBOL vmlinux 0x803fc755 __lru_cache_add +EXPORT_SYMBOL vmlinux 0x804f922a ipmi_addr_length +EXPORT_SYMBOL vmlinux 0x805d3fba genphy_read_status +EXPORT_SYMBOL vmlinux 0x80765915 xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x80791c36 pci_request_region +EXPORT_SYMBOL vmlinux 0x809a9171 __generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x80b778c0 devm_ioremap_prot +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x81154ef0 sock_kmalloc +EXPORT_SYMBOL vmlinux 0x812d8ee8 __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0x813d1330 netif_napi_del +EXPORT_SYMBOL vmlinux 0x81430565 iput +EXPORT_SYMBOL vmlinux 0x8149ed70 __skb_checksum +EXPORT_SYMBOL vmlinux 0x814e7730 nf_ct_destroy +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x815c56d0 cpu_present_mask +EXPORT_SYMBOL vmlinux 0x81a07f4e _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0x81a6f9cc cdrom_ioctl +EXPORT_SYMBOL vmlinux 0x81ab195a devm_clk_put +EXPORT_SYMBOL vmlinux 0x81b33689 sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81ec9935 swiotlb_dma_supported +EXPORT_SYMBOL vmlinux 0x81fcda2d kmem_cache_free +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x820962e1 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0x824ee00e blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0x8251bcc3 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x825c963d scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0x8260686f bitmap_find_next_zero_area +EXPORT_SYMBOL vmlinux 0x8266b164 kblockd_schedule_delayed_work +EXPORT_SYMBOL vmlinux 0x826dc9e7 __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x8275b4d7 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x82acfb70 blk_iopoll_sched +EXPORT_SYMBOL vmlinux 0x82e5a238 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x82e7d783 vm_iomap_memory +EXPORT_SYMBOL vmlinux 0x82feeed9 uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x83065ba9 devm_request_and_ioremap +EXPORT_SYMBOL vmlinux 0x83150370 __blk_end_request_all +EXPORT_SYMBOL vmlinux 0x832c5618 nf_log_register +EXPORT_SYMBOL vmlinux 0x8331d088 machine_id +EXPORT_SYMBOL vmlinux 0x8338a253 gen10g_resume +EXPORT_SYMBOL vmlinux 0x83582c49 bio_get_nr_vecs +EXPORT_SYMBOL vmlinux 0x8359a38a __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x83660b82 tcf_action_exec +EXPORT_SYMBOL vmlinux 0x837849e9 pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x838a7187 devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0x838d5f3d always_delete_dentry +EXPORT_SYMBOL vmlinux 0x839aeb2f netpoll_rx_disable +EXPORT_SYMBOL vmlinux 0x83a476ce bitmap_scnlistprintf +EXPORT_SYMBOL vmlinux 0x83b93625 do_sync_write +EXPORT_SYMBOL vmlinux 0x83c0bec6 __genl_register_family +EXPORT_SYMBOL vmlinux 0x83c8ab4e fm_set_tx_port_params +EXPORT_SYMBOL vmlinux 0x83c94bc8 jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0x83cbb358 wait_on_sync_kiocb +EXPORT_SYMBOL vmlinux 0x83cbd1f7 padata_stop +EXPORT_SYMBOL vmlinux 0x83d01c52 blk_queue_merge_bvec +EXPORT_SYMBOL vmlinux 0x83d770e9 bio_integrity_split +EXPORT_SYMBOL vmlinux 0x83d8a937 qman_fqid_pool_used +EXPORT_SYMBOL vmlinux 0x83e0eaae input_set_keycode +EXPORT_SYMBOL vmlinux 0x83f81f39 __sock_create +EXPORT_SYMBOL vmlinux 0x8401ba8b commit_creds +EXPORT_SYMBOL vmlinux 0x841962f8 param_get_ushort +EXPORT_SYMBOL vmlinux 0x8431631b unregister_filesystem +EXPORT_SYMBOL vmlinux 0x844404cf ISA_DMA_THRESHOLD +EXPORT_SYMBOL vmlinux 0x8491abc3 blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0x84b0b2c5 pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0x84b183ae strncmp +EXPORT_SYMBOL vmlinux 0x84bd69bf dq_data_lock +EXPORT_SYMBOL vmlinux 0x84dc0bf9 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0x84ec5b28 vsc824x_add_skew +EXPORT_SYMBOL vmlinux 0x84ecfcf8 max8998_bulk_read +EXPORT_SYMBOL vmlinux 0x84ffea8b idr_preload +EXPORT_SYMBOL vmlinux 0x8509c540 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0x851662dd of_dev_get +EXPORT_SYMBOL vmlinux 0x8518eca9 param_get_short +EXPORT_SYMBOL vmlinux 0x853bf7c1 param_set_int +EXPORT_SYMBOL vmlinux 0x85400b24 mmc_release_host +EXPORT_SYMBOL vmlinux 0x8552fe65 agp_alloc_page_array +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x856f2759 from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x85a324a9 uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85e7deb2 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x86629a28 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0x8664f62e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x869239a0 tty_hangup +EXPORT_SYMBOL vmlinux 0x86a4889a kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0x86b0ea1b tty_set_operations +EXPORT_SYMBOL vmlinux 0x86c4ac05 xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0x86deb7e1 netif_device_detach +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x870bf928 radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x871c0a7e fiemap_check_flags +EXPORT_SYMBOL vmlinux 0x8744f94f dma_async_memcpy_pg_to_pg +EXPORT_SYMBOL vmlinux 0x875eb4d3 scsi_free_command +EXPORT_SYMBOL vmlinux 0x8761f800 generic_pipe_buf_map +EXPORT_SYMBOL vmlinux 0x87624dfc new_inode +EXPORT_SYMBOL vmlinux 0x876c8194 serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0x87759cf2 I_BDEV +EXPORT_SYMBOL vmlinux 0x8779a34f param_ops_byte +EXPORT_SYMBOL vmlinux 0x877db481 rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0x8788d85e mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0x878ab3ce sysctl_tcp_adv_win_scale +EXPORT_SYMBOL vmlinux 0x878d60f9 phy_disconnect +EXPORT_SYMBOL vmlinux 0x8798e453 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0x87990528 ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0x879ad06c decrementer_clockevent +EXPORT_SYMBOL vmlinux 0x879ee505 kmap_to_page +EXPORT_SYMBOL vmlinux 0x87a08773 kernel_listen +EXPORT_SYMBOL vmlinux 0x87a37822 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x87bfeaed xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x87dbf5d6 i2c_bit_add_bus +EXPORT_SYMBOL vmlinux 0x87dda889 dev_uc_add +EXPORT_SYMBOL vmlinux 0x87ff14e5 netpoll_print_options +EXPORT_SYMBOL vmlinux 0x880f1d2e blk_mq_alloc_reserved_request +EXPORT_SYMBOL vmlinux 0x881039d0 zlib_inflate +EXPORT_SYMBOL vmlinux 0x88279f25 cpm_muram_alloc +EXPORT_SYMBOL vmlinux 0x882ca1be pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0x882dab9d sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0x8834396c mod_timer +EXPORT_SYMBOL vmlinux 0x88468b18 set_security_override +EXPORT_SYMBOL vmlinux 0x88513970 param_set_byte +EXPORT_SYMBOL vmlinux 0x885ab7af fb_set_var +EXPORT_SYMBOL vmlinux 0x8869b896 cookie_check_timestamp +EXPORT_SYMBOL vmlinux 0x889fd1f2 set_create_files_as +EXPORT_SYMBOL vmlinux 0x88b9f6f8 d_add_ci +EXPORT_SYMBOL vmlinux 0x88ef3be3 inetdev_by_index +EXPORT_SYMBOL vmlinux 0x891fbb10 mempool_destroy +EXPORT_SYMBOL vmlinux 0x8927799f dev_trans_start +EXPORT_SYMBOL vmlinux 0x8953f8ff __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x895efdb4 neigh_direct_output +EXPORT_SYMBOL vmlinux 0x897473df mktime +EXPORT_SYMBOL vmlinux 0x89797060 _raw_read_lock +EXPORT_SYMBOL vmlinux 0x897f061d downgrade_write +EXPORT_SYMBOL vmlinux 0x898b92fd sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0x899d69ee inet_ioctl +EXPORT_SYMBOL vmlinux 0x89afe34e __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0x89d5538d fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x89d90d6f __neigh_event_send +EXPORT_SYMBOL vmlinux 0x8a05e2f4 netif_carrier_on +EXPORT_SYMBOL vmlinux 0x8a1ab4ee timeval_to_jiffies +EXPORT_SYMBOL vmlinux 0x8a2ad3a4 dev_get_by_flags_rcu +EXPORT_SYMBOL vmlinux 0x8a30dc9a dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a4b6286 rtnl_notify +EXPORT_SYMBOL vmlinux 0x8a51d565 quota_send_warning +EXPORT_SYMBOL vmlinux 0x8a5493bb qman_recovery_cleanup_fq +EXPORT_SYMBOL vmlinux 0x8a644aff d_find_alias +EXPORT_SYMBOL vmlinux 0x8a6f0fba skb_append +EXPORT_SYMBOL vmlinux 0x8a6fe581 lro_receive_frags +EXPORT_SYMBOL vmlinux 0x8a7527e1 bm_pool_new +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a876f54 ida_init +EXPORT_SYMBOL vmlinux 0x8a87a279 kernel_accept +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8ab4079e atomic64_add +EXPORT_SYMBOL vmlinux 0x8ac7f3a7 __locks_copy_lock +EXPORT_SYMBOL vmlinux 0x8ad46baf gen10g_restart_aneg +EXPORT_SYMBOL vmlinux 0x8ad7ac89 d_prune_aliases +EXPORT_SYMBOL vmlinux 0x8ad896d0 sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x8adb9fe4 blk_run_queue +EXPORT_SYMBOL vmlinux 0x8ae4c3c1 tcf_hash_new_index +EXPORT_SYMBOL vmlinux 0x8aead1c4 sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x8b0c639b backlight_device_register +EXPORT_SYMBOL vmlinux 0x8b111ee4 eth_change_mtu +EXPORT_SYMBOL vmlinux 0x8b1364d1 register_md_personality +EXPORT_SYMBOL vmlinux 0x8b1a7a66 pcie_aspm_enabled +EXPORT_SYMBOL vmlinux 0x8b35e873 sg_last +EXPORT_SYMBOL vmlinux 0x8b3bd652 i2c_bit_algo +EXPORT_SYMBOL vmlinux 0x8b486c4a pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b8b3df5 mmc_add_host +EXPORT_SYMBOL vmlinux 0x8b9d7596 tty_port_close +EXPORT_SYMBOL vmlinux 0x8baf3116 percpu_counter_set +EXPORT_SYMBOL vmlinux 0x8bc4f383 dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x8bdc2cb7 qman_query_cgr +EXPORT_SYMBOL vmlinux 0x8bf2ae1f fsl_lbc_addr +EXPORT_SYMBOL vmlinux 0x8c066f10 inet_accept +EXPORT_SYMBOL vmlinux 0x8c183cbe iowrite16 +EXPORT_SYMBOL vmlinux 0x8c20fa7c generic_file_remap_pages +EXPORT_SYMBOL vmlinux 0x8c637d43 irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x8c7ff794 pci_save_state +EXPORT_SYMBOL vmlinux 0x8c8ee770 ipmi_destroy_user +EXPORT_SYMBOL vmlinux 0x8cb0d977 check_disk_size_change +EXPORT_SYMBOL vmlinux 0x8cbd8346 validate_sp +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8cfd9cde fm_bind +EXPORT_SYMBOL vmlinux 0x8d015dd4 __bswapdi2 +EXPORT_SYMBOL vmlinux 0x8d2e268b param_ops_ulong +EXPORT_SYMBOL vmlinux 0x8d354a91 __ip_dev_find +EXPORT_SYMBOL vmlinux 0x8d551bef sysctl_tcp_rmem +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d895e6d of_match_device +EXPORT_SYMBOL vmlinux 0x8dad359d scsi_register +EXPORT_SYMBOL vmlinux 0x8dba7c15 genlmsg_put +EXPORT_SYMBOL vmlinux 0x8dbb7407 md_write_end +EXPORT_SYMBOL vmlinux 0x8dc0c500 dm_get_mapinfo +EXPORT_SYMBOL vmlinux 0x8dc1fec1 netdev_printk +EXPORT_SYMBOL vmlinux 0x8de0b5ac mempool_create +EXPORT_SYMBOL vmlinux 0x8de2cd6f bman_irqsource_get +EXPORT_SYMBOL vmlinux 0x8de7efab blk_complete_request +EXPORT_SYMBOL vmlinux 0x8df519d2 __napi_schedule +EXPORT_SYMBOL vmlinux 0x8e0585c3 __break_lease +EXPORT_SYMBOL vmlinux 0x8e0d66f4 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x8e168fe5 dmam_pool_create +EXPORT_SYMBOL vmlinux 0x8e2532fc of_find_i2c_device_by_node +EXPORT_SYMBOL vmlinux 0x8e437062 mount_pseudo +EXPORT_SYMBOL vmlinux 0x8e4ec01f ppp_channel_index +EXPORT_SYMBOL vmlinux 0x8e70e7d6 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0x8e7e0776 xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0x8e864a86 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x8e888ec3 cpumask_next_and +EXPORT_SYMBOL vmlinux 0x8e8d58da diu_ops +EXPORT_SYMBOL vmlinux 0x8ea3b2fc pci_set_mwi +EXPORT_SYMBOL vmlinux 0x8eb93475 rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x8ec01cda path_get +EXPORT_SYMBOL vmlinux 0x8ec04552 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0x8ed52862 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0x8ee39f49 sock_no_connect +EXPORT_SYMBOL vmlinux 0x8f00587a agp_allocate_memory +EXPORT_SYMBOL vmlinux 0x8f045d1c cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x8f152407 __block_write_begin +EXPORT_SYMBOL vmlinux 0x8f36dad4 vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x8f62c9ba lock_rename +EXPORT_SYMBOL vmlinux 0x8f6bc32c mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0x8f6f9688 inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0x8f85f835 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x8f95beff scsi_add_device +EXPORT_SYMBOL vmlinux 0x8faa4598 of_translate_address +EXPORT_SYMBOL vmlinux 0x8fbf37e0 profile_pc +EXPORT_SYMBOL vmlinux 0x8fd0438e tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0x8fe98709 pskb_expand_head +EXPORT_SYMBOL vmlinux 0x8ffcd48e neigh_seq_start +EXPORT_SYMBOL vmlinux 0x8ffdb3b8 crc16 +EXPORT_SYMBOL vmlinux 0x9036ef5a agp_bind_memory +EXPORT_SYMBOL vmlinux 0x90501868 transfer_to_handler +EXPORT_SYMBOL vmlinux 0x90586f82 alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x905b6ab1 __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x905befd4 page_put_link +EXPORT_SYMBOL vmlinux 0x907d9369 may_umount_tree +EXPORT_SYMBOL vmlinux 0x908b53ed param_set_short +EXPORT_SYMBOL vmlinux 0x90bc7444 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x90c5e819 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x90c75624 pci_find_next_bus +EXPORT_SYMBOL vmlinux 0x90d727b7 mmc_wait_for_app_cmd +EXPORT_SYMBOL vmlinux 0x90e146c2 trace_seq_putc +EXPORT_SYMBOL vmlinux 0x90e543c8 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0x90fb472e locks_init_lock +EXPORT_SYMBOL vmlinux 0x9107ae61 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x91146e47 pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x91463b1d kstrtos16 +EXPORT_SYMBOL vmlinux 0x91471ecf kfree_skb_list +EXPORT_SYMBOL vmlinux 0x914d2d52 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0x9153a612 sk_receive_skb +EXPORT_SYMBOL vmlinux 0x915e1208 tb_ticks_per_usec +EXPORT_SYMBOL vmlinux 0x91715312 sprintf +EXPORT_SYMBOL vmlinux 0x9172de4f sock_recvmsg +EXPORT_SYMBOL vmlinux 0x91868db9 poll_freewait +EXPORT_SYMBOL vmlinux 0x919d1163 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x91a4d242 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0x91a85765 mmc_of_parse +EXPORT_SYMBOL vmlinux 0x91a8b817 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0x91a94e8b inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0x921135a5 fib_default_rule_pref +EXPORT_SYMBOL vmlinux 0x9231283d simple_lookup +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x9240bafe pci_set_master +EXPORT_SYMBOL vmlinux 0x92414fa9 bio_integrity_set_tag +EXPORT_SYMBOL vmlinux 0x925520d2 blk_start_plug +EXPORT_SYMBOL vmlinux 0x926eeaa0 kernel_sock_ioctl +EXPORT_SYMBOL vmlinux 0x9280d76f __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0x92899b7d scsi_reset_provider +EXPORT_SYMBOL vmlinux 0x92a7e6c5 bman_new_pool +EXPORT_SYMBOL vmlinux 0x92a9c60c time_to_tm +EXPORT_SYMBOL vmlinux 0x92bc220b lockref_get +EXPORT_SYMBOL vmlinux 0x92c0211f bio_unmap_user +EXPORT_SYMBOL vmlinux 0x92d41d69 kill_fasync +EXPORT_SYMBOL vmlinux 0x92db564d iov_iter_copy_from_user +EXPORT_SYMBOL vmlinux 0x92e34469 xfrm_register_mode +EXPORT_SYMBOL vmlinux 0x92f43bc2 agp_generic_alloc_user +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x93145b6e read_cache_page +EXPORT_SYMBOL vmlinux 0x93215e1d __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0x932d98c1 cpm_muram_dma +EXPORT_SYMBOL vmlinux 0x932da4de input_event +EXPORT_SYMBOL vmlinux 0x933e10ec qman_ip_rev +EXPORT_SYMBOL vmlinux 0x9341360e kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0x93448c57 screen_info +EXPORT_SYMBOL vmlinux 0x9370fe6e kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93bada44 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x93d5a43c phy_stop +EXPORT_SYMBOL vmlinux 0x93f2d51d dev_addr_del +EXPORT_SYMBOL vmlinux 0x93fca811 __get_free_pages +EXPORT_SYMBOL vmlinux 0x94180c60 devm_ioremap +EXPORT_SYMBOL vmlinux 0x94409513 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0x94631b98 qman_irqsource_get +EXPORT_SYMBOL vmlinux 0x94712f93 cfb_fillrect +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x9498da32 sock_create_kern +EXPORT_SYMBOL vmlinux 0x94b541b5 cpu_active_mask +EXPORT_SYMBOL vmlinux 0x94befdce pci_set_dma_max_seg_size +EXPORT_SYMBOL vmlinux 0x94d78b7c qman_create_cgr +EXPORT_SYMBOL vmlinux 0x94ea5d68 ip_defrag +EXPORT_SYMBOL vmlinux 0x9508f166 param_ops_bint +EXPORT_SYMBOL vmlinux 0x950c7d33 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0x9514151a _mcount +EXPORT_SYMBOL vmlinux 0x951b2e81 inet_frags_exit_net +EXPORT_SYMBOL vmlinux 0x952485b1 pme_fd_cmd_nop +EXPORT_SYMBOL vmlinux 0x9524b0ae _outsb +EXPORT_SYMBOL vmlinux 0x9534e36c mmc_can_reset +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x9592d191 vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0x9597e582 __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x959c2ed7 qman_query_fq_np +EXPORT_SYMBOL vmlinux 0x95cb929c of_find_all_nodes +EXPORT_SYMBOL vmlinux 0x95e6e500 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x962398ab seq_puts +EXPORT_SYMBOL vmlinux 0x9636ec70 input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0x965279c3 __serio_register_port +EXPORT_SYMBOL vmlinux 0x96573b80 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x96898769 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x968b2eb1 vfs_symlink +EXPORT_SYMBOL vmlinux 0x969dc323 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x96a601b3 mdio_bus_type +EXPORT_SYMBOL vmlinux 0x96cbcc81 ipmi_get_version +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96ef1df3 get_gendisk +EXPORT_SYMBOL vmlinux 0x970396fd km_state_expired +EXPORT_SYMBOL vmlinux 0x970963c9 ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x971b8d3c finish_no_open +EXPORT_SYMBOL vmlinux 0x97255bdf strlen +EXPORT_SYMBOL vmlinux 0x9730edef pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0x9748927f _outsw_ns +EXPORT_SYMBOL vmlinux 0x9754ec10 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x975eab4c tty_lock_pair +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x97a60e3d param_get_bool +EXPORT_SYMBOL vmlinux 0x97a87c16 inet_frags_init_net +EXPORT_SYMBOL vmlinux 0x97af0b29 user_revoke +EXPORT_SYMBOL vmlinux 0x97b4500c __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0x97b84203 __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0x97d0272e inode_needs_sync +EXPORT_SYMBOL vmlinux 0x9800eee2 pagevec_lookup +EXPORT_SYMBOL vmlinux 0x9809b4ae tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x981661a0 __idr_get_new_above +EXPORT_SYMBOL vmlinux 0x981ab7a4 console_stop +EXPORT_SYMBOL vmlinux 0x982ae102 vm_insert_pfn +EXPORT_SYMBOL vmlinux 0x983db043 simple_readpage +EXPORT_SYMBOL vmlinux 0x98624e4c __blk_end_request +EXPORT_SYMBOL vmlinux 0x98668903 pme_sw_flow_init +EXPORT_SYMBOL vmlinux 0x986abaa9 phy_device_create +EXPORT_SYMBOL vmlinux 0x986e6135 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x987b9654 kobject_del +EXPORT_SYMBOL vmlinux 0x9890afc1 of_mdio_find_bus +EXPORT_SYMBOL vmlinux 0x989b3779 sockfd_lookup +EXPORT_SYMBOL vmlinux 0x98af2bdf d_lookup +EXPORT_SYMBOL vmlinux 0x98b54d96 block_write_full_page_endio +EXPORT_SYMBOL vmlinux 0x98d3b3d0 pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x98dc29de ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0x98eaaaef setup_new_exec +EXPORT_SYMBOL vmlinux 0x98f08cf1 misc_deregister +EXPORT_SYMBOL vmlinux 0x98f3c5c0 blkdev_get +EXPORT_SYMBOL vmlinux 0x98fa21b0 mod_timer_pinned +EXPORT_SYMBOL vmlinux 0x98fe7882 DMA_MODE_READ +EXPORT_SYMBOL vmlinux 0x99267ea3 pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0x992ad1ec tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x994cb6a5 from_kuid_munged +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x99591a7a ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x99595b56 release_pages +EXPORT_SYMBOL vmlinux 0x996b5ab8 d_alloc +EXPORT_SYMBOL vmlinux 0x996e3198 mark_page_accessed +EXPORT_SYMBOL vmlinux 0x996fb04c wireless_spy_update +EXPORT_SYMBOL vmlinux 0x99800d45 iterate_supers_type +EXPORT_SYMBOL vmlinux 0x9994c0ca ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x999ed433 netdev_state_change +EXPORT_SYMBOL vmlinux 0x99a52436 mmc_can_sanitize +EXPORT_SYMBOL vmlinux 0x99afe916 _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x99b6177f filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0x99bb8806 memmove +EXPORT_SYMBOL vmlinux 0x99cdc86b sysctl_tcp_reordering +EXPORT_SYMBOL vmlinux 0x99cefe8e freeze_bdev +EXPORT_SYMBOL vmlinux 0x99d9ef60 find_vma +EXPORT_SYMBOL vmlinux 0x9a0919d2 inode_capable +EXPORT_SYMBOL vmlinux 0x9a0d89c4 blk_mq_map_queue +EXPORT_SYMBOL vmlinux 0x9a18e3a7 tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a1fc4b4 jiffies_to_timeval +EXPORT_SYMBOL vmlinux 0x9a1fe3ce __getblk +EXPORT_SYMBOL vmlinux 0x9a4d5c17 inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x9a5beb0f bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0x9a610ac7 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x9a626734 ftrace_print_hex_seq +EXPORT_SYMBOL vmlinux 0x9a861411 security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x9a983804 generic_file_buffered_write +EXPORT_SYMBOL vmlinux 0x9aa23c1c vfs_read +EXPORT_SYMBOL vmlinux 0x9ab416e2 md_flush_request +EXPORT_SYMBOL vmlinux 0x9ac7ebf1 phy_ethtool_sset +EXPORT_SYMBOL vmlinux 0x9aebd00f dev_add_pack +EXPORT_SYMBOL vmlinux 0x9b0e42e8 tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0x9b11a211 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b388444 get_zeroed_page +EXPORT_SYMBOL vmlinux 0x9b44768b inet6_register_protosw +EXPORT_SYMBOL vmlinux 0x9b68d548 tcp_proc_register +EXPORT_SYMBOL vmlinux 0x9b6eb137 ksize +EXPORT_SYMBOL vmlinux 0x9b74f6b8 nla_reserve +EXPORT_SYMBOL vmlinux 0x9b843c99 security_file_permission +EXPORT_SYMBOL vmlinux 0x9b9dd666 security_path_mkdir +EXPORT_SYMBOL vmlinux 0x9b9e05f9 alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0x9b9e47a9 blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x9b9fdc09 jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0x9ba032e0 udp_lib_unhash +EXPORT_SYMBOL vmlinux 0x9ba7089d argv_split +EXPORT_SYMBOL vmlinux 0x9bb09106 gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0x9bd2f08e do_truncate +EXPORT_SYMBOL vmlinux 0x9bdfed56 skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0x9be7bde4 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x9be8b697 mmc_can_trim +EXPORT_SYMBOL vmlinux 0x9bfbbad3 md_check_recovery +EXPORT_SYMBOL vmlinux 0x9c03a7f7 nf_reinject +EXPORT_SYMBOL vmlinux 0x9c0bad36 put_page +EXPORT_SYMBOL vmlinux 0x9c4611fb pipe_lock +EXPORT_SYMBOL vmlinux 0x9c491f60 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x9c4def48 pme_fd_cmd_scan +EXPORT_SYMBOL vmlinux 0x9c63bc4d blk_alloc_queue_node +EXPORT_SYMBOL vmlinux 0x9ca4b223 tcp_proto_cgroup +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cbb30ce bio_integrity_endio +EXPORT_SYMBOL vmlinux 0x9cc99288 fm_unbind +EXPORT_SYMBOL vmlinux 0x9cd59766 ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0x9cde7d73 save_mount_options +EXPORT_SYMBOL vmlinux 0x9ce3f83f nvram_write_byte +EXPORT_SYMBOL vmlinux 0x9ceb163c memcpy_toiovec +EXPORT_SYMBOL vmlinux 0x9cef3cc5 __idr_remove_all +EXPORT_SYMBOL vmlinux 0x9cfd56c5 scsi_print_status +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d14983a ppc_enable_pmcs +EXPORT_SYMBOL vmlinux 0x9d267131 inet_del_offload +EXPORT_SYMBOL vmlinux 0x9d3aa376 blk_iopoll_init +EXPORT_SYMBOL vmlinux 0x9d4ce2c4 mfd_cell_enable +EXPORT_SYMBOL vmlinux 0x9d669763 memcpy +EXPORT_SYMBOL vmlinux 0x9d6adab3 dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0x9d72229b fsl_ifc_find +EXPORT_SYMBOL vmlinux 0x9d7ce8dd _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0x9d84cb9d scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0x9d850895 dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0x9d8f70a7 nobh_write_end +EXPORT_SYMBOL vmlinux 0x9d90f95f __crc32c_le_combine +EXPORT_SYMBOL vmlinux 0x9dbb7d0c aio_complete +EXPORT_SYMBOL vmlinux 0x9dee9a84 cpm2_immr +EXPORT_SYMBOL vmlinux 0x9df6fc90 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0x9dfc1edd bman_irqsource_add +EXPORT_SYMBOL vmlinux 0x9dfe7307 lz4_decompress_unknownoutputsize +EXPORT_SYMBOL vmlinux 0x9e07ef6c pci_target_state +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e2000a7 memcpy_toiovecend +EXPORT_SYMBOL vmlinux 0x9e25c8b7 ps2_handle_response +EXPORT_SYMBOL vmlinux 0x9e27b25d xfrm_state_add +EXPORT_SYMBOL vmlinux 0x9e399859 filemap_fault +EXPORT_SYMBOL vmlinux 0x9e44b9b7 of_get_next_available_child +EXPORT_SYMBOL vmlinux 0x9e4b3747 sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e5ff231 jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e640281 blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0x9e6a837d mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x9e9141d0 dev_uc_init +EXPORT_SYMBOL vmlinux 0x9e9f1714 __bitmap_andnot +EXPORT_SYMBOL vmlinux 0x9ea0ad49 __sg_free_table +EXPORT_SYMBOL vmlinux 0x9ebd4c04 adjust_resource +EXPORT_SYMBOL vmlinux 0x9ed2eec7 param_set_ushort +EXPORT_SYMBOL vmlinux 0x9ed685ee iov_iter_advance +EXPORT_SYMBOL vmlinux 0x9ef0a8eb __inode_permission +EXPORT_SYMBOL vmlinux 0x9f01c16c cfb_copyarea +EXPORT_SYMBOL vmlinux 0x9f2bdaac __bitmap_or +EXPORT_SYMBOL vmlinux 0x9f44b99c would_dump +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f68f3a6 ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0x9f9734f8 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9faa81cb mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0x9fb3dd30 memcpy_fromiovec +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa01985f2 key_type_keyring +EXPORT_SYMBOL vmlinux 0xa019d20a of_create_pci_dev +EXPORT_SYMBOL vmlinux 0xa01ac6f8 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa048a214 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xa04a01bd qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xa05c03df mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xa05cad02 bdgrab +EXPORT_SYMBOL vmlinux 0xa06df9e1 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0xa07ed110 xz_dec_init +EXPORT_SYMBOL vmlinux 0xa0966e4b unregister_shrinker +EXPORT_SYMBOL vmlinux 0xa09f8be2 qman_affine_cpus +EXPORT_SYMBOL vmlinux 0xa0ae2cf6 blk_execute_rq +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0c09058 pci_bus_get +EXPORT_SYMBOL vmlinux 0xa0c9598f pci_claim_resource +EXPORT_SYMBOL vmlinux 0xa0ceef51 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0xa0d1b57a i2c_get_adapter +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0e4a5ea udp_prot +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa109fa16 is_bad_inode +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa126ec49 xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0xa1359d40 invalidate_partition +EXPORT_SYMBOL vmlinux 0xa1415618 twl6030_interrupt_unmask +EXPORT_SYMBOL vmlinux 0xa1452e69 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0xa14f3d8c ewma_add +EXPORT_SYMBOL vmlinux 0xa1abee75 generic_read_dir +EXPORT_SYMBOL vmlinux 0xa1ad0a3b xfrm_init_replay +EXPORT_SYMBOL vmlinux 0xa1b759ce fb_add_videomode +EXPORT_SYMBOL vmlinux 0xa1bdc917 pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1c99385 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xa1c9d952 nobh_writepage +EXPORT_SYMBOL vmlinux 0xa1f8fe75 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0xa204782b tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0xa20ce1b8 net_msg_warn +EXPORT_SYMBOL vmlinux 0xa218430d lro_flush_all +EXPORT_SYMBOL vmlinux 0xa2323be5 uart_get_divisor +EXPORT_SYMBOL vmlinux 0xa2465a07 noop_qdisc +EXPORT_SYMBOL vmlinux 0xa26c615c input_free_device +EXPORT_SYMBOL vmlinux 0xa278e641 skb_push +EXPORT_SYMBOL vmlinux 0xa28481a2 of_device_register +EXPORT_SYMBOL vmlinux 0xa2848c50 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0xa28a2ace ipmi_set_gets_events +EXPORT_SYMBOL vmlinux 0xa2a98b91 ipmi_get_maintenance_mode +EXPORT_SYMBOL vmlinux 0xa2b47260 __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0xa2bbed37 crash_shutdown_register +EXPORT_SYMBOL vmlinux 0xa2c35825 update_devfreq +EXPORT_SYMBOL vmlinux 0xa2e26253 blk_mq_end_io +EXPORT_SYMBOL vmlinux 0xa2ef34d7 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xa2f2d02f ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0xa300de83 dev_mc_add +EXPORT_SYMBOL vmlinux 0xa3016b4d pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0xa303a14f tty_unlock +EXPORT_SYMBOL vmlinux 0xa303d1ff dm_ratelimit_state +EXPORT_SYMBOL vmlinux 0xa312fc1a bio_init +EXPORT_SYMBOL vmlinux 0xa3199c74 ilookup5_nowait +EXPORT_SYMBOL vmlinux 0xa332464a of_get_cpu_node +EXPORT_SYMBOL vmlinux 0xa3328bd3 input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0xa34f1ef5 crc32_le +EXPORT_SYMBOL vmlinux 0xa356c48c inode_sub_rsv_space +EXPORT_SYMBOL vmlinux 0xa35de80f ipv4_config +EXPORT_SYMBOL vmlinux 0xa35e09dd pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0xa36aae19 dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0xa37a30cc iget5_locked +EXPORT_SYMBOL vmlinux 0xa381944f dql_reset +EXPORT_SYMBOL vmlinux 0xa38e691a ioremap_bot +EXPORT_SYMBOL vmlinux 0xa39b4cf2 udelay +EXPORT_SYMBOL vmlinux 0xa39f801e ps2_init +EXPORT_SYMBOL vmlinux 0xa3abc422 abort_exclusive_wait +EXPORT_SYMBOL vmlinux 0xa3d0e5e9 set_bh_page +EXPORT_SYMBOL vmlinux 0xa3e5db46 sk_dst_check +EXPORT_SYMBOL vmlinux 0xa3e75545 flush_tlb_kernel_range +EXPORT_SYMBOL vmlinux 0xa417abd5 blk_rq_init +EXPORT_SYMBOL vmlinux 0xa43a873d arp_find +EXPORT_SYMBOL vmlinux 0xa43b1297 vscnprintf +EXPORT_SYMBOL vmlinux 0xa43b9539 memcpy_fromiovecend +EXPORT_SYMBOL vmlinux 0xa442a491 genphy_setup_forced +EXPORT_SYMBOL vmlinux 0xa44c1d61 netdev_lower_dev_get_private_rcu +EXPORT_SYMBOL vmlinux 0xa44f9618 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0xa4515df9 mmc_start_bkops +EXPORT_SYMBOL vmlinux 0xa4557661 keyring_alloc +EXPORT_SYMBOL vmlinux 0xa457030b request_firmware +EXPORT_SYMBOL vmlinux 0xa45f2743 build_skb +EXPORT_SYMBOL vmlinux 0xa4695739 devm_iounmap +EXPORT_SYMBOL vmlinux 0xa4701e9e timekeeping_inject_offset +EXPORT_SYMBOL vmlinux 0xa4772486 misc_register +EXPORT_SYMBOL vmlinux 0xa4796914 page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0xa48423b8 tcp_md5_hash_header +EXPORT_SYMBOL vmlinux 0xa48d7543 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0xa4a16866 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0xa4a94d26 find_next_bit_le +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa4c44fb6 stop_tty +EXPORT_SYMBOL vmlinux 0xa4cd3505 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0xa4d4f0e6 global_cache_flush +EXPORT_SYMBOL vmlinux 0xa4da152b udp_ioctl +EXPORT_SYMBOL vmlinux 0xa4e831a0 poll_initwait +EXPORT_SYMBOL vmlinux 0xa50a111e inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0xa517925a free_mdio_bitbang +EXPORT_SYMBOL vmlinux 0xa54a5d08 nla_put +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa5709bf3 gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0xa5739ab8 __frontswap_test +EXPORT_SYMBOL vmlinux 0xa57ee318 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0xa598e29c vesa_modes +EXPORT_SYMBOL vmlinux 0xa5ac9a7f alloc_anon_inode +EXPORT_SYMBOL vmlinux 0xa5c271c0 __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0xa5e53ea6 generic_file_open +EXPORT_SYMBOL vmlinux 0xa619c181 pme_ctx_reconfigure_tx +EXPORT_SYMBOL vmlinux 0xa62d8961 dev_add_offload +EXPORT_SYMBOL vmlinux 0xa63a2f9b param_get_ulong +EXPORT_SYMBOL vmlinux 0xa64fb946 ppc_md +EXPORT_SYMBOL vmlinux 0xa65972b8 _memcpy_toio +EXPORT_SYMBOL vmlinux 0xa6715115 do_settimeofday +EXPORT_SYMBOL vmlinux 0xa6757c97 serio_open +EXPORT_SYMBOL vmlinux 0xa675804c utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0xa67f0e36 __vlan_find_dev_deep +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6970398 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0xa6a15d5a gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0xa6af1a94 pme2_exclusive_unset +EXPORT_SYMBOL vmlinux 0xa6b7245b __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0xa6bc744c generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0xa6d0b432 jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0xa6ed2cfa sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0xa6f050af bd_set_size +EXPORT_SYMBOL vmlinux 0xa6f233c2 kern_path +EXPORT_SYMBOL vmlinux 0xa6f68006 alloc_fcdev +EXPORT_SYMBOL vmlinux 0xa6fe648b skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0xa70a0ad9 frontswap_register_ops +EXPORT_SYMBOL vmlinux 0xa71e7463 __first_cpu +EXPORT_SYMBOL vmlinux 0xa720678c lg_global_lock +EXPORT_SYMBOL vmlinux 0xa7277def md_unregister_thread +EXPORT_SYMBOL vmlinux 0xa73436aa fsnotify_alloc_group +EXPORT_SYMBOL vmlinux 0xa735db59 prandom_u32 +EXPORT_SYMBOL vmlinux 0xa73a045a d_set_d_op +EXPORT_SYMBOL vmlinux 0xa73fc98f of_n_addr_cells +EXPORT_SYMBOL vmlinux 0xa78d9eb7 slhc_uncompress +EXPORT_SYMBOL vmlinux 0xa7b520b3 scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0xa7c1ae89 pci_disable_link_state +EXPORT_SYMBOL vmlinux 0xa7d75d73 phy_start +EXPORT_SYMBOL vmlinux 0xa7e94902 kmap_pte +EXPORT_SYMBOL vmlinux 0xa803bc59 netpoll_cleanup +EXPORT_SYMBOL vmlinux 0xa8232c78 strtobool +EXPORT_SYMBOL vmlinux 0xa83089e1 __put_cred +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa84d3494 simple_rmdir +EXPORT_SYMBOL vmlinux 0xa85dfefa dump_emit +EXPORT_SYMBOL vmlinux 0xa8721b97 system_state +EXPORT_SYMBOL vmlinux 0xa880eb22 pcim_iounmap +EXPORT_SYMBOL vmlinux 0xa89464b7 __ashldi3 +EXPORT_SYMBOL vmlinux 0xa89f3adb d_move +EXPORT_SYMBOL vmlinux 0xa8a6f639 __check_region +EXPORT_SYMBOL vmlinux 0xa8b18405 mount_nodev +EXPORT_SYMBOL vmlinux 0xa8b39d2d blk_alloc_queue +EXPORT_SYMBOL vmlinux 0xa8be5c1e netif_receive_skb +EXPORT_SYMBOL vmlinux 0xa8c6538d free_buffer_head +EXPORT_SYMBOL vmlinux 0xa8c8737b elv_rb_find +EXPORT_SYMBOL vmlinux 0xa8ccf264 register_nls +EXPORT_SYMBOL vmlinux 0xa8cee9f7 make_kprojid +EXPORT_SYMBOL vmlinux 0xa8fef7bb security_unix_may_send +EXPORT_SYMBOL vmlinux 0xa92616e4 i2c_bit_add_numbered_bus +EXPORT_SYMBOL vmlinux 0xa9273e1a epapr_hypercall_start +EXPORT_SYMBOL vmlinux 0xa936b4d2 blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0xa94b0ac9 sock_wfree +EXPORT_SYMBOL vmlinux 0xa9571d6d DMA_MODE_WRITE +EXPORT_SYMBOL vmlinux 0xa962df70 blk_rq_map_user +EXPORT_SYMBOL vmlinux 0xa96801f8 clear_inode +EXPORT_SYMBOL vmlinux 0xa986b0c4 flush_dcache_icache_page +EXPORT_SYMBOL vmlinux 0xa98e1e5f iget_failed +EXPORT_SYMBOL vmlinux 0xa9b63345 of_parse_phandle_with_fixed_args +EXPORT_SYMBOL vmlinux 0xa9b7a511 scsi_remove_target +EXPORT_SYMBOL vmlinux 0xa9e61a18 jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0xa9f86461 padata_register_cpumask_notifier +EXPORT_SYMBOL vmlinux 0xa9f902b0 pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0xa9fddde3 skb_trim +EXPORT_SYMBOL vmlinux 0xaa00d727 ps2_sendbyte +EXPORT_SYMBOL vmlinux 0xaa0df48d fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0xaa141537 pci_release_regions +EXPORT_SYMBOL vmlinux 0xaa3bf636 jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0xaa46e87e lg_local_unlock +EXPORT_SYMBOL vmlinux 0xaa501898 swiotlb_map_sg_attrs +EXPORT_SYMBOL vmlinux 0xaa6901ac __kfifo_out_r +EXPORT_SYMBOL vmlinux 0xaa6e4df5 _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa76359e bh_submit_read +EXPORT_SYMBOL vmlinux 0xaa9087c0 param_ops_string +EXPORT_SYMBOL vmlinux 0xaa9c44a9 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0xaa9eea09 udp_seq_open +EXPORT_SYMBOL vmlinux 0xaaa5fc25 __sb_end_write +EXPORT_SYMBOL vmlinux 0xaaab8067 cpu_sibling_map +EXPORT_SYMBOL vmlinux 0xaab81286 ps2_end_command +EXPORT_SYMBOL vmlinux 0xaab908d6 wait_for_key_construction +EXPORT_SYMBOL vmlinux 0xaacf117f inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0xaad49150 input_flush_device +EXPORT_SYMBOL vmlinux 0xaad69e23 qman_fq_state +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaaf045c2 ipmi_smi_watcher_register +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab23688f twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0xab27d9ca ppp_input +EXPORT_SYMBOL vmlinux 0xab455f47 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0xab49b086 clocksource_unregister +EXPORT_SYMBOL vmlinux 0xab4ea61f keyring_search +EXPORT_SYMBOL vmlinux 0xab694444 bsearch +EXPORT_SYMBOL vmlinux 0xab6bde28 sysctl_max_syn_backlog +EXPORT_SYMBOL vmlinux 0xab6c3780 jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab7f96e5 PDE_DATA +EXPORT_SYMBOL vmlinux 0xab9a1fdf scsi_device_lookup +EXPORT_SYMBOL vmlinux 0xab9be441 security_path_chmod +EXPORT_SYMBOL vmlinux 0xaba4d340 tty_unregister_device +EXPORT_SYMBOL vmlinux 0xaba6dfee input_mt_init_slots +EXPORT_SYMBOL vmlinux 0xaba7c7ca i8042_check_port_owner +EXPORT_SYMBOL vmlinux 0xabc6dd63 cpufreq_sysfs_create_file +EXPORT_SYMBOL vmlinux 0xabcaa577 free_anon_bdev +EXPORT_SYMBOL vmlinux 0xabd0c91c rtc_time_to_tm +EXPORT_SYMBOL vmlinux 0xabd19988 md_integrity_register +EXPORT_SYMBOL vmlinux 0xabf6453b agp_generic_destroy_page +EXPORT_SYMBOL vmlinux 0xabf65f98 get_super +EXPORT_SYMBOL vmlinux 0xac030c13 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0xac0ba8c1 blk_iopoll_disable +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac20ea9b rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0xac26b820 _raw_write_lock +EXPORT_SYMBOL vmlinux 0xac5be5fc inode_change_ok +EXPORT_SYMBOL vmlinux 0xac5fd485 fddi_change_mtu +EXPORT_SYMBOL vmlinux 0xac75f4ae skb_append_datato_frags +EXPORT_SYMBOL vmlinux 0xac9b0b72 __destroy_inode +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacb364b1 unregister_exec_domain +EXPORT_SYMBOL vmlinux 0xacb753d2 thaw_bdev +EXPORT_SYMBOL vmlinux 0xacc5b5d2 csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0xaccabc6a in4_pton +EXPORT_SYMBOL vmlinux 0xace726c0 of_mm_gpiochip_add +EXPORT_SYMBOL vmlinux 0xacee44c2 unregister_console +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xacfae397 tcp_enter_memory_pressure +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad0a6e0a flex_array_prealloc +EXPORT_SYMBOL vmlinux 0xad3c47da agp_bridge +EXPORT_SYMBOL vmlinux 0xad46dec2 of_count_phandle_with_args +EXPORT_SYMBOL vmlinux 0xad502cca tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0xad53b426 remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0xad53db67 i2c_verify_client +EXPORT_SYMBOL vmlinux 0xad545762 jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0xad71cf4d __inet_stream_connect +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad90f33a fm_port_get_base_addr +EXPORT_SYMBOL vmlinux 0xadaff625 phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0xadc37167 ip_route_me_harder +EXPORT_SYMBOL vmlinux 0xadc422e3 __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0xadcdff9c ip6_frag_match +EXPORT_SYMBOL vmlinux 0xadd1e971 alignment_exception +EXPORT_SYMBOL vmlinux 0xaddd4770 __debugger_iabr_match +EXPORT_SYMBOL vmlinux 0xaddd8487 agp_generic_create_gatt_table +EXPORT_SYMBOL vmlinux 0xaded1b8f __bread +EXPORT_SYMBOL vmlinux 0xadf0811d get_baudrate +EXPORT_SYMBOL vmlinux 0xae545f06 _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xae729e59 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xae96673d sock_create_lite +EXPORT_SYMBOL vmlinux 0xae9aee6c kernel_connect +EXPORT_SYMBOL vmlinux 0xaebd14e7 ata_print_version +EXPORT_SYMBOL vmlinux 0xaec07d42 devm_gpio_request +EXPORT_SYMBOL vmlinux 0xaec0ecdd swiotlb_unmap_sg_attrs +EXPORT_SYMBOL vmlinux 0xaec1e674 skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0xaec526f1 pme_ctx_scan +EXPORT_SYMBOL vmlinux 0xaec655c7 alloc_pages_exact +EXPORT_SYMBOL vmlinux 0xaecc2f13 sock_alloc_file +EXPORT_SYMBOL vmlinux 0xaedc7146 blk_mq_init_commands +EXPORT_SYMBOL vmlinux 0xaf05b91b of_device_is_available +EXPORT_SYMBOL vmlinux 0xaf063510 _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0xaf2d872c prepare_to_wait +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf499ae2 skb_put +EXPORT_SYMBOL vmlinux 0xaf4b390a soft_cursor +EXPORT_SYMBOL vmlinux 0xaf5581a1 pci_vpd_truncate +EXPORT_SYMBOL vmlinux 0xaf610a13 phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0xaf64ad0d zlib_deflate +EXPORT_SYMBOL vmlinux 0xaf6640c7 do_splice_to +EXPORT_SYMBOL vmlinux 0xaf6da47e dev_open +EXPORT_SYMBOL vmlinux 0xaf77b7bd fsl_lbc_ctrl_dev +EXPORT_SYMBOL vmlinux 0xaf87bc37 scsi_remove_host +EXPORT_SYMBOL vmlinux 0xaf8f65eb blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0xaf91d89f __kernel_param_lock +EXPORT_SYMBOL vmlinux 0xaf9ae09a pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0xafad493b param_ops_ushort +EXPORT_SYMBOL vmlinux 0xafc234cd single_open_size +EXPORT_SYMBOL vmlinux 0xafd01e14 qman_retire_fq +EXPORT_SYMBOL vmlinux 0xafd68c33 flex_array_free +EXPORT_SYMBOL vmlinux 0xafd70bf2 qman_dca +EXPORT_SYMBOL vmlinux 0xafdd3285 __scsi_put_command +EXPORT_SYMBOL vmlinux 0xafe3952a blk_free_tags +EXPORT_SYMBOL vmlinux 0xafff3d1d mempool_alloc +EXPORT_SYMBOL vmlinux 0xb00b47b6 scsi_finish_command +EXPORT_SYMBOL vmlinux 0xb02e82c9 dquot_quota_sync +EXPORT_SYMBOL vmlinux 0xb042b9f0 module_refcount +EXPORT_SYMBOL vmlinux 0xb050b824 sk_free +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb072dd77 bioset_integrity_create +EXPORT_SYMBOL vmlinux 0xb09851e4 dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0aaabd8 phys_mem_access_prot +EXPORT_SYMBOL vmlinux 0xb0b847ac __bitmap_full +EXPORT_SYMBOL vmlinux 0xb0d4f982 ip6_frag_init +EXPORT_SYMBOL vmlinux 0xb0d99fa9 jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0xb0da1011 ata_std_end_eh +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0eba10f get_thermal_instance +EXPORT_SYMBOL vmlinux 0xb0f60b50 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0xb0ffda2f blk_limits_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xb11b7f1d tcp_check_req +EXPORT_SYMBOL vmlinux 0xb1233af9 pci_select_bars +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb14574fd put_disk +EXPORT_SYMBOL vmlinux 0xb14d5c56 tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0xb15bd8fa tb_ticks_per_sec +EXPORT_SYMBOL vmlinux 0xb1645a2e sg_free_table +EXPORT_SYMBOL vmlinux 0xb16b4a2e input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0xb1758023 dma_sync_wait +EXPORT_SYMBOL vmlinux 0xb19760c3 bitmap_onto +EXPORT_SYMBOL vmlinux 0xb1a3daec __skb_get_rxhash +EXPORT_SYMBOL vmlinux 0xb1ae22f6 mmc_register_driver +EXPORT_SYMBOL vmlinux 0xb1ae364b dst_destroy +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1c6e787 wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0xb1c98616 max8998_write_reg +EXPORT_SYMBOL vmlinux 0xb1cf44df fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xb1d2818a ip6_expire_frag_queue +EXPORT_SYMBOL vmlinux 0xb1db9e4e param_get_invbool +EXPORT_SYMBOL vmlinux 0xb1e93e64 iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0xb2049ab1 neigh_parms_release +EXPORT_SYMBOL vmlinux 0xb21c4e37 blk_init_allocated_queue +EXPORT_SYMBOL vmlinux 0xb233762c atomic64_set +EXPORT_SYMBOL vmlinux 0xb2387869 elv_dispatch_add_tail +EXPORT_SYMBOL vmlinux 0xb256e933 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0xb2682405 utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0xb292c1a4 inet6_getname +EXPORT_SYMBOL vmlinux 0xb2a1ce7e inet_frags_fini +EXPORT_SYMBOL vmlinux 0xb2a55653 sk_release_kernel +EXPORT_SYMBOL vmlinux 0xb2acf19d pme_ctx_finish +EXPORT_SYMBOL vmlinux 0xb2ae5953 blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0xb2b94674 __crc32c_le +EXPORT_SYMBOL vmlinux 0xb2be6e92 netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xb2bf20cd __ethtool_get_settings +EXPORT_SYMBOL vmlinux 0xb2d48a2e queue_work_on +EXPORT_SYMBOL vmlinux 0xb2e0b7bc xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0xb2f1ab62 blk_delay_queue +EXPORT_SYMBOL vmlinux 0xb2fa1a40 inet_stream_connect +EXPORT_SYMBOL vmlinux 0xb304acff ida_get_new_above +EXPORT_SYMBOL vmlinux 0xb30de63f pci_dev_driver +EXPORT_SYMBOL vmlinux 0xb343fc82 generic_file_fsync +EXPORT_SYMBOL vmlinux 0xb34c7c4b scsi_is_target_device +EXPORT_SYMBOL vmlinux 0xb3558518 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0xb36f52df cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0xb3756e0d end_page_writeback +EXPORT_SYMBOL vmlinux 0xb37ef81c netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0xb38ef668 mach_corenet_generic +EXPORT_SYMBOL vmlinux 0xb3d123d6 fm_get_tx_port_channel +EXPORT_SYMBOL vmlinux 0xb3dc7cc2 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb4125620 fsnotify_destroy_mark +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb4439657 mmc_stop_bkops +EXPORT_SYMBOL vmlinux 0xb4526a67 security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0xb45fa4f3 blk_queue_io_min +EXPORT_SYMBOL vmlinux 0xb45fc123 cdrom_open +EXPORT_SYMBOL vmlinux 0xb4709322 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0xb4883b72 fddi_type_trans +EXPORT_SYMBOL vmlinux 0xb4ca5767 default_llseek +EXPORT_SYMBOL vmlinux 0xb4d2f840 tcp_poll +EXPORT_SYMBOL vmlinux 0xb4eb135e skb_checksum +EXPORT_SYMBOL vmlinux 0xb4fd9abb pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0xb5177188 pci_bus_put +EXPORT_SYMBOL vmlinux 0xb5252e2a scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0xb54220ba qdisc_list_del +EXPORT_SYMBOL vmlinux 0xb54533f7 usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xb54daa63 tc_classify +EXPORT_SYMBOL vmlinux 0xb54fa54a dmam_alloc_coherent +EXPORT_SYMBOL vmlinux 0xb55663a3 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0xb5582530 agp_generic_free_gatt_table +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb578fbab netdev_info +EXPORT_SYMBOL vmlinux 0xb5842869 i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0xb5882e1f mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0xb5a14572 __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5abeaef jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0xb5d9454c printk_emit +EXPORT_SYMBOL vmlinux 0xb5e8e1ef inet_register_protosw +EXPORT_SYMBOL vmlinux 0xb5f84fc8 led_blink_set +EXPORT_SYMBOL vmlinux 0xb609d565 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0xb6103541 security_path_link +EXPORT_SYMBOL vmlinux 0xb6222adb unlink_framebuffer +EXPORT_SYMBOL vmlinux 0xb6244511 sg_init_one +EXPORT_SYMBOL vmlinux 0xb6394d4b param_set_bint +EXPORT_SYMBOL vmlinux 0xb64ac261 dev_get_by_name +EXPORT_SYMBOL vmlinux 0xb64d268f qman_schedule_fq +EXPORT_SYMBOL vmlinux 0xb6599b9a machine_check_exception +EXPORT_SYMBOL vmlinux 0xb66510ff mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb67cd159 scsi_release_buffers +EXPORT_SYMBOL vmlinux 0xb6822a33 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0xb6896671 crc_t10dif +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6b46a7c param_ops_int +EXPORT_SYMBOL vmlinux 0xb6be7043 load_nls +EXPORT_SYMBOL vmlinux 0xb6c5a973 scsi_show_result +EXPORT_SYMBOL vmlinux 0xb6d2eafb qman_irqsource_add +EXPORT_SYMBOL vmlinux 0xb7067315 pci_enable_ido +EXPORT_SYMBOL vmlinux 0xb71592fc register_gifconf +EXPORT_SYMBOL vmlinux 0xb715cc44 vm_insert_page +EXPORT_SYMBOL vmlinux 0xb71666a0 dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0xb720c17d padata_add_cpu +EXPORT_SYMBOL vmlinux 0xb753bcc8 __ashrdi3 +EXPORT_SYMBOL vmlinux 0xb760591d force_sig +EXPORT_SYMBOL vmlinux 0xb770be3e __percpu_counter_add +EXPORT_SYMBOL vmlinux 0xb77131b1 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0xb77d4bb9 blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0xb77ea4fc bprm_change_interp +EXPORT_SYMBOL vmlinux 0xb79a4e1a store_fp_state +EXPORT_SYMBOL vmlinux 0xb79b8dcd mdiobus_scan +EXPORT_SYMBOL vmlinux 0xb7a99781 __irq_regs +EXPORT_SYMBOL vmlinux 0xb7b61546 crc32_be +EXPORT_SYMBOL vmlinux 0xb7c06af8 napi_gro_flush +EXPORT_SYMBOL vmlinux 0xb7c71413 pci_disable_ltr +EXPORT_SYMBOL vmlinux 0xb7cc66c7 twl6040_set_bits +EXPORT_SYMBOL vmlinux 0xb7d7749d __ww_mutex_lock +EXPORT_SYMBOL vmlinux 0xb7e02405 nf_nat_decode_session_hook +EXPORT_SYMBOL vmlinux 0xb7f5fbdb xfrm_state_walk +EXPORT_SYMBOL vmlinux 0xb7fde971 pme_map +EXPORT_SYMBOL vmlinux 0xb81960ca snprintf +EXPORT_SYMBOL vmlinux 0xb82b1d4d ipv4_specific +EXPORT_SYMBOL vmlinux 0xb835b3e4 radix_tree_prev_hole +EXPORT_SYMBOL vmlinux 0xb841bcdc scsi_print_command +EXPORT_SYMBOL vmlinux 0xb8546971 pci_disable_ido +EXPORT_SYMBOL vmlinux 0xb85abbfd udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0xb861c4b6 pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0xb874b87a __clzsi2 +EXPORT_SYMBOL vmlinux 0xb8ac42c0 netif_rx +EXPORT_SYMBOL vmlinux 0xb8bc23f3 seq_escape +EXPORT_SYMBOL vmlinux 0xb8cd71ee devm_clk_get +EXPORT_SYMBOL vmlinux 0xb8d73e97 param_set_uint +EXPORT_SYMBOL vmlinux 0xb8e049a8 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0xb8e877e7 kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xb925053e seq_release +EXPORT_SYMBOL vmlinux 0xb9262671 follow_down +EXPORT_SYMBOL vmlinux 0xb9375db3 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0xb93ee095 skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0xb9469d9d tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0xb948b9e3 blk_mq_free_single_hw_queue +EXPORT_SYMBOL vmlinux 0xb972c870 inet6_del_offload +EXPORT_SYMBOL vmlinux 0xb9742623 __sb_start_write +EXPORT_SYMBOL vmlinux 0xb976ce57 pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0xb983d6ea tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0xb98a0185 rtc_tm_to_time +EXPORT_SYMBOL vmlinux 0xb98af7a0 vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0xb9acf64a fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0xb9b4ccfb bio_advance +EXPORT_SYMBOL vmlinux 0xb9d5e027 qman_eqcr_is_empty +EXPORT_SYMBOL vmlinux 0xb9dafc82 __invalidate_device +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xba10fcb4 agp_create_memory +EXPORT_SYMBOL vmlinux 0xba3374d0 uart_resume_port +EXPORT_SYMBOL vmlinux 0xba48fab0 mem_cgroup_subsys +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba70cdfb nf_register_hooks +EXPORT_SYMBOL vmlinux 0xba77d7de ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0xba8088fe nf_unregister_hooks +EXPORT_SYMBOL vmlinux 0xbab8ab61 pcie_get_mps +EXPORT_SYMBOL vmlinux 0xbac43729 try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xbacf10cd jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0xbadf8301 find_get_page +EXPORT_SYMBOL vmlinux 0xbb0cfeca kset_unregister +EXPORT_SYMBOL vmlinux 0xbb189cad disallow_signal +EXPORT_SYMBOL vmlinux 0xbb5d343d xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xbb713e6d sk_filter_release_rcu +EXPORT_SYMBOL vmlinux 0xbb7dddf1 get_disk +EXPORT_SYMBOL vmlinux 0xbb90eb28 inet_listen +EXPORT_SYMBOL vmlinux 0xbb99125c get_default_font +EXPORT_SYMBOL vmlinux 0xbba541c0 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0xbba6b60e scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0xbbd45e2d tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0xbbd872c6 request_firmware_nowait +EXPORT_SYMBOL vmlinux 0xbbee85f6 buffer_migrate_page +EXPORT_SYMBOL vmlinux 0xbbf98143 skb_queue_head +EXPORT_SYMBOL vmlinux 0xbc20c06c pci_get_class +EXPORT_SYMBOL vmlinux 0xbc21667f ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0xbc2544ad dev_queue_xmit +EXPORT_SYMBOL vmlinux 0xbc2890f9 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0xbc2bd9dc scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0xbc2fb794 sock_sendmsg +EXPORT_SYMBOL vmlinux 0xbc316de4 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0xbc3f6afa down_read +EXPORT_SYMBOL vmlinux 0xbc492a4d ab3100_event_register +EXPORT_SYMBOL vmlinux 0xbc8eb318 input_set_capability +EXPORT_SYMBOL vmlinux 0xbc9aa2d9 sock_create +EXPORT_SYMBOL vmlinux 0xbca1ed04 bioset_free +EXPORT_SYMBOL vmlinux 0xbca395d3 udplite_prot +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbcc432d4 scsi_prep_return +EXPORT_SYMBOL vmlinux 0xbccdc2f6 flex_array_put +EXPORT_SYMBOL vmlinux 0xbcdedba7 of_get_mac_address +EXPORT_SYMBOL vmlinux 0xbce2ce96 of_get_ddr_timings +EXPORT_SYMBOL vmlinux 0xbcfc4033 netdev_notify_peers +EXPORT_SYMBOL vmlinux 0xbcffd4f6 fsnotify_put_group +EXPORT_SYMBOL vmlinux 0xbd2270ee swiotlb_map_sg +EXPORT_SYMBOL vmlinux 0xbd429935 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0xbd5e7e25 remove_proc_entry +EXPORT_SYMBOL vmlinux 0xbd710659 scsi_calculate_bounce_limit +EXPORT_SYMBOL vmlinux 0xbd716a00 scsi_device_resume +EXPORT_SYMBOL vmlinux 0xbd803510 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0xbd88ff7b override_creds +EXPORT_SYMBOL vmlinux 0xbd9859f8 kernel_bind +EXPORT_SYMBOL vmlinux 0xbd9e5d49 __lshrdi3 +EXPORT_SYMBOL vmlinux 0xbda8d82a fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0xbdba9828 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0xbdd910d1 tcp_splice_read +EXPORT_SYMBOL vmlinux 0xbe05d7dc proc_symlink +EXPORT_SYMBOL vmlinux 0xbe0e5118 nla_memcmp +EXPORT_SYMBOL vmlinux 0xbe1fabc5 scsi_mode_sense +EXPORT_SYMBOL vmlinux 0xbe25356e netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0xbe2c0274 add_timer +EXPORT_SYMBOL vmlinux 0xbe4301d3 prepare_binprm +EXPORT_SYMBOL vmlinux 0xbe55316c __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0xbe5ad07c scsi_host_alloc +EXPORT_SYMBOL vmlinux 0xbe73f315 tcf_hash_create +EXPORT_SYMBOL vmlinux 0xbe77aebe down_write_trylock +EXPORT_SYMBOL vmlinux 0xbe9050fa inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xbe9a4cab d_delete +EXPORT_SYMBOL vmlinux 0xbeb07e02 __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xbec25473 of_parse_phandle +EXPORT_SYMBOL vmlinux 0xbee90f2f __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0xbeeda890 inet_frag_maybe_warn_overflow +EXPORT_SYMBOL vmlinux 0xbeede7c7 mmc_gpio_free_cd +EXPORT_SYMBOL vmlinux 0xbef20e5b nla_put_nohdr +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbf10d946 scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0xbf41f78a vga_put +EXPORT_SYMBOL vmlinux 0xbf61016b gen10g_suspend +EXPORT_SYMBOL vmlinux 0xbf6173e0 page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0xbf7d3dc9 fifo_set_limit +EXPORT_SYMBOL vmlinux 0xbf7fd2f5 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0xbf8298bd udp6_csum_init +EXPORT_SYMBOL vmlinux 0xbf8ba54a vprintk +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfacfaca skb_pad +EXPORT_SYMBOL vmlinux 0xbfb8b0b7 _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfc72979 pci_disable_device +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xc009ef90 elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0xc01790ee neigh_seq_stop +EXPORT_SYMBOL vmlinux 0xc018405a dquot_quota_on +EXPORT_SYMBOL vmlinux 0xc02cf69b clkdev_drop +EXPORT_SYMBOL vmlinux 0xc068440e __kfifo_alloc +EXPORT_SYMBOL vmlinux 0xc0684945 blk_get_request +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc0823e4c twl_i2c_write +EXPORT_SYMBOL vmlinux 0xc0a20f9d ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0ab8b12 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0xc0e7dac6 i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0xc0e8013b inode_claim_rsv_space +EXPORT_SYMBOL vmlinux 0xc12ec3a6 dns_query +EXPORT_SYMBOL vmlinux 0xc13defa8 vlan_vid_add +EXPORT_SYMBOL vmlinux 0xc1556a92 pci_get_slot +EXPORT_SYMBOL vmlinux 0xc17f47fc devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0xc187c6ea scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0xc18f1d6a noop_llseek +EXPORT_SYMBOL vmlinux 0xc1959768 netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0xc1a69c81 md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0xc1acb9a1 devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0xc1b1189b set_groups +EXPORT_SYMBOL vmlinux 0xc1b82d22 register_shrinker +EXPORT_SYMBOL vmlinux 0xc1c2dd09 __hw_addr_flush +EXPORT_SYMBOL vmlinux 0xc1c69ef5 release_firmware +EXPORT_SYMBOL vmlinux 0xc1d2f830 mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0xc207852b sock_release +EXPORT_SYMBOL vmlinux 0xc20fef4c dev_change_flags +EXPORT_SYMBOL vmlinux 0xc21f9706 bio_map_user +EXPORT_SYMBOL vmlinux 0xc2260b94 rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0xc226b5ce mmc_hw_reset +EXPORT_SYMBOL vmlinux 0xc2424641 agp3_generic_cleanup +EXPORT_SYMBOL vmlinux 0xc256e762 __bitmap_equal +EXPORT_SYMBOL vmlinux 0xc2bc5541 padata_set_cpumasks +EXPORT_SYMBOL vmlinux 0xc2c83bce blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0xc2d711e1 krealloc +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2f9c045 timespec_to_jiffies +EXPORT_SYMBOL vmlinux 0xc2fa7071 ppp_input_error +EXPORT_SYMBOL vmlinux 0xc32d9228 inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0xc34974fa input_close_device +EXPORT_SYMBOL vmlinux 0xc368849f nvram_sync +EXPORT_SYMBOL vmlinux 0xc376f7ef blkdev_fsync +EXPORT_SYMBOL vmlinux 0xc3955346 mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0xc3add828 filemap_flush +EXPORT_SYMBOL vmlinux 0xc3e8e06b jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0xc3f0de69 mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0xc41c6495 sock_no_accept +EXPORT_SYMBOL vmlinux 0xc41f0516 node_states +EXPORT_SYMBOL vmlinux 0xc42671f3 genl_notify +EXPORT_SYMBOL vmlinux 0xc4363746 sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0xc43daaf8 blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0xc44bcae3 generic_show_options +EXPORT_SYMBOL vmlinux 0xc45755de find_next_zero_bit_le +EXPORT_SYMBOL vmlinux 0xc4708199 cpm_muram_addr +EXPORT_SYMBOL vmlinux 0xc47adba1 fget_light +EXPORT_SYMBOL vmlinux 0xc47cdf9c _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0xc499ae1e kstrdup +EXPORT_SYMBOL vmlinux 0xc4ce68e6 netif_rx_ni +EXPORT_SYMBOL vmlinux 0xc4e38747 bdget_disk +EXPORT_SYMBOL vmlinux 0xc52678db neigh_table_clear +EXPORT_SYMBOL vmlinux 0xc551b1f8 md_wakeup_thread +EXPORT_SYMBOL vmlinux 0xc5534d64 ioread16 +EXPORT_SYMBOL vmlinux 0xc55c2a9d inode_sb_list_lock +EXPORT_SYMBOL vmlinux 0xc57772dd ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0xc587687f __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xc589e044 param_set_long +EXPORT_SYMBOL vmlinux 0xc59ee75e truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0xc5b30c5e scsi_setup_blk_pc_cmnd +EXPORT_SYMBOL vmlinux 0xc5c08eab dpa_uio_bman +EXPORT_SYMBOL vmlinux 0xc5d9c46c agp_try_unsupported_boot +EXPORT_SYMBOL vmlinux 0xc5dbb7d2 register_netdev +EXPORT_SYMBOL vmlinux 0xc5f6cb20 sock_no_bind +EXPORT_SYMBOL vmlinux 0xc5fdef94 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xc61c0c16 agp_generic_enable +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc6344243 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0xc6500d98 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0xc65abeb7 agp3_generic_sizes +EXPORT_SYMBOL vmlinux 0xc663b075 __ioremap +EXPORT_SYMBOL vmlinux 0xc665d6d7 of_parse_phandle_with_args +EXPORT_SYMBOL vmlinux 0xc6670d39 posix_unblock_lock +EXPORT_SYMBOL vmlinux 0xc66b3f79 __scm_destroy +EXPORT_SYMBOL vmlinux 0xc673b08b xfrm_state_flush +EXPORT_SYMBOL vmlinux 0xc68ce529 sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0xc68d4b21 xfrm_lookup +EXPORT_SYMBOL vmlinux 0xc691a919 flush_tlb_range +EXPORT_SYMBOL vmlinux 0xc69fd509 invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0xc6b48642 fm_set_rx_port_params +EXPORT_SYMBOL vmlinux 0xc6b6a6bf ip_setsockopt +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6cc83da jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0xc6e7a090 mfd_add_devices +EXPORT_SYMBOL vmlinux 0xc6f36605 vlan_untag +EXPORT_SYMBOL vmlinux 0xc70a8336 nf_hook_slow +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc73d4c8a __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0xc74e94b4 blk_make_request +EXPORT_SYMBOL vmlinux 0xc766e73e devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0xc768de19 cpu_all_bits +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc7998b1c __free_pages +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7d441f3 get_phy_device +EXPORT_SYMBOL vmlinux 0xc7daac46 account_page_dirtied +EXPORT_SYMBOL vmlinux 0xc7ec6c27 strspn +EXPORT_SYMBOL vmlinux 0xc7f43735 dma_pool_create +EXPORT_SYMBOL vmlinux 0xc80ff5c4 wait_iff_congested +EXPORT_SYMBOL vmlinux 0xc81e5dc6 qman_query_fq +EXPORT_SYMBOL vmlinux 0xc824d75c sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0xc8276a79 nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xc82dfbed __dst_free +EXPORT_SYMBOL vmlinux 0xc8339e24 string_unescape +EXPORT_SYMBOL vmlinux 0xc8394514 kernel_sendpage +EXPORT_SYMBOL vmlinux 0xc83b4d5b posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc850930f tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0xc8526bc0 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0xc86d1226 phy_print_status +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc881f976 unregister_key_type +EXPORT_SYMBOL vmlinux 0xc882001c try_to_release_page +EXPORT_SYMBOL vmlinux 0xc897c382 sg_init_table +EXPORT_SYMBOL vmlinux 0xc8abe793 cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0xc8b57c27 autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xc8b9a76b bman_recovery_exit +EXPORT_SYMBOL vmlinux 0xc8c5b056 gen_pool_alloc +EXPORT_SYMBOL vmlinux 0xc8d0d2f0 i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0xc91112bf eth_validate_addr +EXPORT_SYMBOL vmlinux 0xc91ff664 down_read_trylock +EXPORT_SYMBOL vmlinux 0xc93f5289 pci_disable_msi +EXPORT_SYMBOL vmlinux 0xc93fbc54 wait_for_completion_io +EXPORT_SYMBOL vmlinux 0xc949328d simple_write_end +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc96fb6d0 qman_start_dequeues +EXPORT_SYMBOL vmlinux 0xc9739051 pci_choose_state +EXPORT_SYMBOL vmlinux 0xc98565f5 ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0xc9875805 locks_copy_lock +EXPORT_SYMBOL vmlinux 0xc993eb07 mb_cache_entry_insert +EXPORT_SYMBOL vmlinux 0xc996d097 del_timer +EXPORT_SYMBOL vmlinux 0xc99e2a55 twl_rev +EXPORT_SYMBOL vmlinux 0xc9a1559f bio_clone_bioset +EXPORT_SYMBOL vmlinux 0xc9ae1819 sock_i_ino +EXPORT_SYMBOL vmlinux 0xc9bce070 mntget +EXPORT_SYMBOL vmlinux 0xc9cc5101 serio_interrupt +EXPORT_SYMBOL vmlinux 0xc9dcdf25 __ip_select_ident +EXPORT_SYMBOL vmlinux 0xc9fd2ed9 phy_attach +EXPORT_SYMBOL vmlinux 0xca026d05 pm860x_page_bulk_write +EXPORT_SYMBOL vmlinux 0xca13393d __insert_inode_hash +EXPORT_SYMBOL vmlinux 0xca18429d consume_skb +EXPORT_SYMBOL vmlinux 0xca47f064 scsi_host_set_state +EXPORT_SYMBOL vmlinux 0xca56e63f set_user_nice +EXPORT_SYMBOL vmlinux 0xca5dbc50 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xca6602e4 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0xca79c3ff genphy_config_aneg +EXPORT_SYMBOL vmlinux 0xca826476 phy_device_register +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xcaa4b738 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0xcaa5865c agp_backend_release +EXPORT_SYMBOL vmlinux 0xcac653d8 sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0xcacd272d atomic64_sub_return +EXPORT_SYMBOL vmlinux 0xcaf673bb tty_port_destroy +EXPORT_SYMBOL vmlinux 0xcaf991b4 scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb060240 module_layout +EXPORT_SYMBOL vmlinux 0xcb0c5d50 param_get_uint +EXPORT_SYMBOL vmlinux 0xcb1b06ca dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0xcb232a50 __quota_error +EXPORT_SYMBOL vmlinux 0xcb2b7e98 __serio_register_driver +EXPORT_SYMBOL vmlinux 0xcb34157e netpoll_send_skb_on_dev +EXPORT_SYMBOL vmlinux 0xcb56733f get_user_pages +EXPORT_SYMBOL vmlinux 0xcbbf0a6f audit_log_task_context +EXPORT_SYMBOL vmlinux 0xcbc9557f unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0xcc019d37 dev_printk +EXPORT_SYMBOL vmlinux 0xcc0649fd bitmap_endwrite +EXPORT_SYMBOL vmlinux 0xcc17504d _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc35af9b textsearch_prepare +EXPORT_SYMBOL vmlinux 0xcc3735eb __inet6_hash +EXPORT_SYMBOL vmlinux 0xcc37f55c blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0xcc449590 __skb_tx_hash +EXPORT_SYMBOL vmlinux 0xcc4b84da of_find_node_by_type +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc729121 blk_queue_bounce +EXPORT_SYMBOL vmlinux 0xcc7fa952 local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0xcc862efd read_dev_sector +EXPORT_SYMBOL vmlinux 0xcc993097 ilookup +EXPORT_SYMBOL vmlinux 0xcc9bb315 redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccd9cde0 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0xcd0529c7 _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0xcd242a5c netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0xcd245c27 tty_port_open +EXPORT_SYMBOL vmlinux 0xcd25fab9 neigh_lookup +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd4721f2 kern_path_mountpoint +EXPORT_SYMBOL vmlinux 0xcd82bdbe directly_mappable_cdev_bdi +EXPORT_SYMBOL vmlinux 0xcd86c87f __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xcd8882b0 irq_set_chip +EXPORT_SYMBOL vmlinux 0xcdbcc6ff have_submounts +EXPORT_SYMBOL vmlinux 0xcdc19ac4 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdce4e64 dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0xcdd502ca i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0xcdd5c03e set_nlink +EXPORT_SYMBOL vmlinux 0xcde172ac radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0xcdf40d8c xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0xce0261d6 vfs_open +EXPORT_SYMBOL vmlinux 0xce04a338 __ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0xce282d82 scsi_execute +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce71dbfb unregister_md_personality +EXPORT_SYMBOL vmlinux 0xce85b064 arp_create +EXPORT_SYMBOL vmlinux 0xce8d0df4 nf_afinfo +EXPORT_SYMBOL vmlinux 0xce8d7d9c xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0xcec32373 ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0xcec32737 simple_transaction_read +EXPORT_SYMBOL vmlinux 0xcec9eb19 sock_kfree_s +EXPORT_SYMBOL vmlinux 0xcee18a15 skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0xcee5c132 devfreq_interval_update +EXPORT_SYMBOL vmlinux 0xcee9bd1e mmc_get_card +EXPORT_SYMBOL vmlinux 0xcef4bbc6 vlan_uses_dev +EXPORT_SYMBOL vmlinux 0xcef51982 kstrtou16 +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf1d7646 isa_mem_base +EXPORT_SYMBOL vmlinux 0xcf21f78a vfs_readlink +EXPORT_SYMBOL vmlinux 0xcf4bdd60 cdev_alloc +EXPORT_SYMBOL vmlinux 0xcf62a521 i2c_transfer +EXPORT_SYMBOL vmlinux 0xcf72d639 ___pskb_trim +EXPORT_SYMBOL vmlinux 0xcf76b2d8 neigh_update +EXPORT_SYMBOL vmlinux 0xcf85ba6a jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0xcf93aeb4 mpage_writepage +EXPORT_SYMBOL vmlinux 0xcf93c2b0 blk_sync_queue +EXPORT_SYMBOL vmlinux 0xcfb5cb27 blk_queue_start_tag +EXPORT_SYMBOL vmlinux 0xcfb75d4c write_dirty_buffer +EXPORT_SYMBOL vmlinux 0xcfd8e5e9 xfrm_register_km +EXPORT_SYMBOL vmlinux 0xcffa3209 register_quota_format +EXPORT_SYMBOL vmlinux 0xcffa6615 __mem_cgroup_count_vm_event +EXPORT_SYMBOL vmlinux 0xd0181f4f __bitmap_xor +EXPORT_SYMBOL vmlinux 0xd01ed2ad mach_c293_pcie +EXPORT_SYMBOL vmlinux 0xd02553d3 ppp_unit_number +EXPORT_SYMBOL vmlinux 0xd02b2089 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0xd03f2132 invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0xd0720a17 on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xd0756947 netdev_err +EXPORT_SYMBOL vmlinux 0xd077f3bd agp_copy_info +EXPORT_SYMBOL vmlinux 0xd081c1f3 request_key_async_with_auxdata +EXPORT_SYMBOL vmlinux 0xd0a772e1 vfs_rmdir +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0b2fed8 blk_put_queue +EXPORT_SYMBOL vmlinux 0xd0d42c42 mod_timer_pending +EXPORT_SYMBOL vmlinux 0xd0d549b7 netpoll_parse_options +EXPORT_SYMBOL vmlinux 0xd0ee38b8 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0xd0f36f0d audit_log_format +EXPORT_SYMBOL vmlinux 0xd0fb7cd4 __tasklet_hi_schedule_first +EXPORT_SYMBOL vmlinux 0xd0fef3b2 agp_free_key +EXPORT_SYMBOL vmlinux 0xd10c3452 idr_init +EXPORT_SYMBOL vmlinux 0xd11c0dc1 __kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xd1292d2d inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0xd138719c qman_recovery_exit +EXPORT_SYMBOL vmlinux 0xd141b432 netdev_emerg +EXPORT_SYMBOL vmlinux 0xd163d606 remove_arg_zero +EXPORT_SYMBOL vmlinux 0xd17ad921 md_finish_reshape +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd196c9be kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xd1aae87d posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0xd1aeab40 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0xd1ba5dd3 key_validate +EXPORT_SYMBOL vmlinux 0xd1cc0681 percpu_counter_compare +EXPORT_SYMBOL vmlinux 0xd1e3f3c4 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xd1ea4cbb vfs_fsync +EXPORT_SYMBOL vmlinux 0xd211bf9c fb_set_suspend +EXPORT_SYMBOL vmlinux 0xd220cf8a jiffies_to_timespec +EXPORT_SYMBOL vmlinux 0xd22ce772 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0xd248346c sock_no_poll +EXPORT_SYMBOL vmlinux 0xd251d7b0 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0xd2555f19 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xd2585d35 ip_queue_xmit +EXPORT_SYMBOL vmlinux 0xd2599873 sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd2653751 try_module_get +EXPORT_SYMBOL vmlinux 0xd2653eb7 scsi_init_io +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd2af138b reservation_ww_class +EXPORT_SYMBOL vmlinux 0xd2b2e917 mpage_readpages +EXPORT_SYMBOL vmlinux 0xd2b7f9e3 fm_port_unbind +EXPORT_SYMBOL vmlinux 0xd2b98d1e __seq_open_private +EXPORT_SYMBOL vmlinux 0xd2cd5568 interruptible_sleep_on_timeout +EXPORT_SYMBOL vmlinux 0xd2cf623c done_path_create +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2fc19bd proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0xd3047232 scsi_scan_host +EXPORT_SYMBOL vmlinux 0xd3062422 agp_find_bridge +EXPORT_SYMBOL vmlinux 0xd308beae lease_get_mtime +EXPORT_SYMBOL vmlinux 0xd30f5b47 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0xd31ccb06 of_machine_is_compatible +EXPORT_SYMBOL vmlinux 0xd32fbcc4 mach_ppa8548 +EXPORT_SYMBOL vmlinux 0xd3371e44 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0xd34b522c scsi_rescan_device +EXPORT_SYMBOL vmlinux 0xd3a6c97c skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xd3ad7253 tcp_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xd3c747a1 qman_irqsource_remove +EXPORT_SYMBOL vmlinux 0xd3d2665d kern_unmount +EXPORT_SYMBOL vmlinux 0xd3d8539b alloc_fddidev +EXPORT_SYMBOL vmlinux 0xd410cdea scsi_ioctl +EXPORT_SYMBOL vmlinux 0xd427d2bc dev_get_by_index +EXPORT_SYMBOL vmlinux 0xd42accee pneigh_enqueue +EXPORT_SYMBOL vmlinux 0xd4380587 __splice_from_pipe +EXPORT_SYMBOL vmlinux 0xd477265a inet6_protos +EXPORT_SYMBOL vmlinux 0xd480bae4 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0xd4828406 sync_inodes_sb +EXPORT_SYMBOL vmlinux 0xd49f0916 tty_unthrottle +EXPORT_SYMBOL vmlinux 0xd4a4cd2e inet_add_offload +EXPORT_SYMBOL vmlinux 0xd4a66f37 disk_stack_limits +EXPORT_SYMBOL vmlinux 0xd4bc9df7 mnt_unpin +EXPORT_SYMBOL vmlinux 0xd4be38e0 blk_init_tags +EXPORT_SYMBOL vmlinux 0xd4ca855f dst_alloc +EXPORT_SYMBOL vmlinux 0xd4d11ae0 genphy_resume +EXPORT_SYMBOL vmlinux 0xd4ebe60f lock_may_read +EXPORT_SYMBOL vmlinux 0xd4f5866a inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0xd517f595 dev_close +EXPORT_SYMBOL vmlinux 0xd51ea76a nf_log_unset +EXPORT_SYMBOL vmlinux 0xd52239ad qman_set_null_cb +EXPORT_SYMBOL vmlinux 0xd53596c5 kmem_cache_create +EXPORT_SYMBOL vmlinux 0xd545d088 __pci_register_driver +EXPORT_SYMBOL vmlinux 0xd54c4b45 tty_hung_up_p +EXPORT_SYMBOL vmlinux 0xd56ceb19 fsnotify_init_mark +EXPORT_SYMBOL vmlinux 0xd56e285b fsnotify_add_mark +EXPORT_SYMBOL vmlinux 0xd593f9fa tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0xd59c4e0d dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0xd5aaaf13 __dev_remove_pack +EXPORT_SYMBOL vmlinux 0xd5b2e52a single_step_exception +EXPORT_SYMBOL vmlinux 0xd5bef8a5 tty_port_tty_set +EXPORT_SYMBOL vmlinux 0xd5d85669 kernel_setsockopt +EXPORT_SYMBOL vmlinux 0xd5e8444a __div64_32 +EXPORT_SYMBOL vmlinux 0xd5f2172f del_timer_sync +EXPORT_SYMBOL vmlinux 0xd606503d register_sysctl +EXPORT_SYMBOL vmlinux 0xd616683a ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0xd627480b strncat +EXPORT_SYMBOL vmlinux 0xd628edde fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0xd648e564 fb_match_mode +EXPORT_SYMBOL vmlinux 0xd64a56d9 simple_open +EXPORT_SYMBOL vmlinux 0xd6705d8a tty_free_termios +EXPORT_SYMBOL vmlinux 0xd675a45b __f_setown +EXPORT_SYMBOL vmlinux 0xd67fb9e4 loop_backing_file +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd68d8db9 pneigh_lookup +EXPORT_SYMBOL vmlinux 0xd69b30e0 atomic64_add_unless +EXPORT_SYMBOL vmlinux 0xd6c343f1 pme_ctx_disable +EXPORT_SYMBOL vmlinux 0xd6d63e9d lg_local_lock_cpu +EXPORT_SYMBOL vmlinux 0xd6ed0ff9 inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd714a914 netif_napi_add +EXPORT_SYMBOL vmlinux 0xd723b8ca mpage_readpage +EXPORT_SYMBOL vmlinux 0xd7502599 kill_pgrp +EXPORT_SYMBOL vmlinux 0xd758a0be mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0xd75c79df smp_call_function +EXPORT_SYMBOL vmlinux 0xd761a383 ioremap_prot +EXPORT_SYMBOL vmlinux 0xd77a2f5c pme_stat_get +EXPORT_SYMBOL vmlinux 0xd77a5aa5 __bitmap_and +EXPORT_SYMBOL vmlinux 0xd78d18a5 kill_pid +EXPORT_SYMBOL vmlinux 0xd79b5a02 allow_signal +EXPORT_SYMBOL vmlinux 0xd7b1fb4a tcf_destroy_chain +EXPORT_SYMBOL vmlinux 0xd7c335ea inode_permission +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7ea7094 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xd7f964f5 tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0xd83eaa6e pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0xd85833cb __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0xd86db1e5 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0xd87444fc splice_from_pipe_end +EXPORT_SYMBOL vmlinux 0xd87e9501 mnt_pin +EXPORT_SYMBOL vmlinux 0xd88021b9 of_mdiobus_register +EXPORT_SYMBOL vmlinux 0xd88fa86e kobject_set_name +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8a644fc xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0xd8aa3d79 blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0xd8b7d7a8 bio_uncopy_user +EXPORT_SYMBOL vmlinux 0xd8c318a9 dput +EXPORT_SYMBOL vmlinux 0xd8c6b5e9 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0xd8c72cf0 ifla_policy +EXPORT_SYMBOL vmlinux 0xd8cbd51d inode_init_owner +EXPORT_SYMBOL vmlinux 0xd8ded085 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xd8e1da69 nobh_truncate_page +EXPORT_SYMBOL vmlinux 0xd8e484f0 register_chrdev_region +EXPORT_SYMBOL vmlinux 0xd8e984e8 mmc_put_card +EXPORT_SYMBOL vmlinux 0xd8e9eb3a qdisc_tree_decrease_qlen +EXPORT_SYMBOL vmlinux 0xd8ede2d6 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0xd8f224a9 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0xd9036dd6 posix_lock_file_wait +EXPORT_SYMBOL vmlinux 0xd9053c50 input_allocate_device +EXPORT_SYMBOL vmlinux 0xd92afabe bitmap_clear +EXPORT_SYMBOL vmlinux 0xd930e5b1 kernel_write +EXPORT_SYMBOL vmlinux 0xd9498b22 proc_dointvec +EXPORT_SYMBOL vmlinux 0xd9553b93 tcp_ioctl +EXPORT_SYMBOL vmlinux 0xd9705526 __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0xd977c35a inet_addr_type +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd9937bf7 swiotlb_unmap_sg +EXPORT_SYMBOL vmlinux 0xd99dafdc dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0xd9a9bb30 getname +EXPORT_SYMBOL vmlinux 0xd9bac924 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0xd9ce8f0c strnlen +EXPORT_SYMBOL vmlinux 0xd9daa8c3 max8925_reg_write +EXPORT_SYMBOL vmlinux 0xd9e00578 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0xd9f7f871 key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0xda2478d0 param_ops_short +EXPORT_SYMBOL vmlinux 0xda26b550 write_inode_now +EXPORT_SYMBOL vmlinux 0xda3aba55 jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda5091ba kmalloc_caches +EXPORT_SYMBOL vmlinux 0xda548797 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xda654bfc __lock_buffer +EXPORT_SYMBOL vmlinux 0xda662230 __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0xda6854c1 __mutex_init +EXPORT_SYMBOL vmlinux 0xda713308 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0xda73a323 migrate_page +EXPORT_SYMBOL vmlinux 0xda7ca6cb fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xda8af7ad fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0xdaa16b82 of_clk_get +EXPORT_SYMBOL vmlinux 0xdaa53682 dquot_get_dqinfo +EXPORT_SYMBOL vmlinux 0xdaa57ec3 totalhigh_pages +EXPORT_SYMBOL vmlinux 0xdaa8e10a __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0xdab6b2bf netdev_warn +EXPORT_SYMBOL vmlinux 0xdabc1ea8 fsl_lbc_find +EXPORT_SYMBOL vmlinux 0xdac599c9 kill_block_super +EXPORT_SYMBOL vmlinux 0xdad7adff dqstats +EXPORT_SYMBOL vmlinux 0xdaedf90e jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0xdaefa3c0 mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0xdaf06e58 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xdb01198e fsl_upm_find +EXPORT_SYMBOL vmlinux 0xdb0baa43 inet_frag_kill +EXPORT_SYMBOL vmlinux 0xdb169b3c mmc_set_blockcount +EXPORT_SYMBOL vmlinux 0xdb52ac54 scsi_cmd_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xdb5760ec twl6040_reg_read +EXPORT_SYMBOL vmlinux 0xdb5ab343 clear_bdi_congested +EXPORT_SYMBOL vmlinux 0xdb5e00d3 padata_alloc +EXPORT_SYMBOL vmlinux 0xdb6192bb inet_frag_evictor +EXPORT_SYMBOL vmlinux 0xdb685c4d init_buffer +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb6d01fc dev_addr_add_multiple +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb8f45c3 tty_port_close_end +EXPORT_SYMBOL vmlinux 0xdb9f585c sock_init_data +EXPORT_SYMBOL vmlinux 0xdba4e8dd neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0xdbafc6be request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0xdbb24fc2 down_write +EXPORT_SYMBOL vmlinux 0xdbcd416e sysctl_ip_nonlocal_bind +EXPORT_SYMBOL vmlinux 0xdbe3e89f tcp_init_sock +EXPORT_SYMBOL vmlinux 0xdbfa00a9 udp_lib_rehash +EXPORT_SYMBOL vmlinux 0xdc047fc4 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0xdc104f8b pci_assign_resource +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc175b85 simple_empty +EXPORT_SYMBOL vmlinux 0xdc30a929 inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0xdc35c800 pci_unregister_driver +EXPORT_SYMBOL vmlinux 0xdc383c39 scsi_host_get +EXPORT_SYMBOL vmlinux 0xdc3a0a37 mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0xdc3c8b83 submit_bio_wait +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc7288f8 mdiobus_write +EXPORT_SYMBOL vmlinux 0xdc854abc dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0xdc9451a6 skb_checksum_help +EXPORT_SYMBOL vmlinux 0xdc9498dd down +EXPORT_SYMBOL vmlinux 0xdc9b6638 proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0xdca11744 eth_type_trans +EXPORT_SYMBOL vmlinux 0xdcb58bbb flush_dcache_page +EXPORT_SYMBOL vmlinux 0xdcba1b43 mem_map +EXPORT_SYMBOL vmlinux 0xdcc2feae phy_driver_register +EXPORT_SYMBOL vmlinux 0xdcd98717 del_gendisk +EXPORT_SYMBOL vmlinux 0xdcdef5ed ip_route_input_noref +EXPORT_SYMBOL vmlinux 0xdce0c870 write_cache_pages +EXPORT_SYMBOL vmlinux 0xdcea3273 dev_mc_init +EXPORT_SYMBOL vmlinux 0xdcf38732 devfreq_add_governor +EXPORT_SYMBOL vmlinux 0xdd0a2ba2 strlcat +EXPORT_SYMBOL vmlinux 0xdd0ce268 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0xdd2410f8 neigh_for_each +EXPORT_SYMBOL vmlinux 0xdd27fa87 memchr +EXPORT_SYMBOL vmlinux 0xdd3fdc88 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0xdd79b17c ps2_drain +EXPORT_SYMBOL vmlinux 0xdd8284db pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0xddbcc500 powerpc_debugfs_root +EXPORT_SYMBOL vmlinux 0xddccd96c blk_fetch_request +EXPORT_SYMBOL vmlinux 0xdded131d bio_sector_offset +EXPORT_SYMBOL vmlinux 0xde0f1074 pci_set_ltr +EXPORT_SYMBOL vmlinux 0xde10eb10 param_set_invbool +EXPORT_SYMBOL vmlinux 0xde48e9ca _raw_spin_lock +EXPORT_SYMBOL vmlinux 0xde4d9f25 jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0xde6d06cb bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0xde82824d pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0xde91cb74 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0xde9360ba totalram_pages +EXPORT_SYMBOL vmlinux 0xde9b17ed agp3_generic_fetch_size +EXPORT_SYMBOL vmlinux 0xded11844 padata_remove_cpu +EXPORT_SYMBOL vmlinux 0xdef3fc31 from_kgid_munged +EXPORT_SYMBOL vmlinux 0xdefa0ad8 qman_testwrite_cgr +EXPORT_SYMBOL vmlinux 0xdf0607b8 jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0xdf13971c dpa_uio_qman +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf60cc27 __print_symbol +EXPORT_SYMBOL vmlinux 0xdf843bcd pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdfc2686d xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0xdfdc572e __pagevec_lru_add +EXPORT_SYMBOL vmlinux 0xdfee8a74 kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0xdff43ed4 __debugger +EXPORT_SYMBOL vmlinux 0xdff4b1fd pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0xe00b0a5b ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0xe013d145 skb_find_text +EXPORT_SYMBOL vmlinux 0xe03bab92 shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0xe04f7caa dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xe06141e9 security_sk_clone +EXPORT_SYMBOL vmlinux 0xe0674f3d scsi_put_command +EXPORT_SYMBOL vmlinux 0xe074c7ee vfs_getattr +EXPORT_SYMBOL vmlinux 0xe075d6eb iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xe09d16ab swiotlb_free_coherent +EXPORT_SYMBOL vmlinux 0xe0b096ca security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0b9a09d d_instantiate_no_diralias +EXPORT_SYMBOL vmlinux 0xe0cbde30 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0xe0d40cdd netlink_unicast +EXPORT_SYMBOL vmlinux 0xe0ef10c7 ida_simple_remove +EXPORT_SYMBOL vmlinux 0xe0fa83f2 ipmi_register_for_cmd +EXPORT_SYMBOL vmlinux 0xe0fc7e30 input_unregister_handle +EXPORT_SYMBOL vmlinux 0xe103eb8f ip_mc_join_group +EXPORT_SYMBOL vmlinux 0xe10532a8 mmc_power_restore_host +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe155387c truncate_inode_pages +EXPORT_SYMBOL vmlinux 0xe1639ae3 mark_info_dirty +EXPORT_SYMBOL vmlinux 0xe16e674b sys_imageblit +EXPORT_SYMBOL vmlinux 0xe1761617 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xe190bdbb kthread_create_on_node +EXPORT_SYMBOL vmlinux 0xe1d78cd7 scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0xe200f872 secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xe22d319c fib_default_rule_add +EXPORT_SYMBOL vmlinux 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL vmlinux 0xe23ae481 blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe24364c8 bio_put +EXPORT_SYMBOL vmlinux 0xe2476fce arp_tbl +EXPORT_SYMBOL vmlinux 0xe24d3a97 jiffies_64 +EXPORT_SYMBOL vmlinux 0xe2687eeb d_instantiate_unique +EXPORT_SYMBOL vmlinux 0xe2896189 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xe29e1d0e out_of_line_wait_on_atomic_t +EXPORT_SYMBOL vmlinux 0xe2be0bd0 kernel_recvmsg +EXPORT_SYMBOL vmlinux 0xe2be5498 lg_global_unlock +EXPORT_SYMBOL vmlinux 0xe2c91c55 datagram_poll +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2e091a7 file_remove_suid +EXPORT_SYMBOL vmlinux 0xe2e8065e memdup_user +EXPORT_SYMBOL vmlinux 0xe2fae716 kmemdup +EXPORT_SYMBOL vmlinux 0xe2ff5214 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xe30029e2 inet6_bind +EXPORT_SYMBOL vmlinux 0xe32470a6 sk_stop_timer +EXPORT_SYMBOL vmlinux 0xe35c5285 of_find_node_by_phandle +EXPORT_SYMBOL vmlinux 0xe36b4b47 padata_set_cpumask +EXPORT_SYMBOL vmlinux 0xe36d0edf input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0xe3722263 __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0xe37f2d7b md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0xe3963bfa pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0xe39b8c0a scsi_device_set_state +EXPORT_SYMBOL vmlinux 0xe3bae9b3 twl6040_get_pll +EXPORT_SYMBOL vmlinux 0xe3bcb2be netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0xe3ce3b21 skb_queue_tail +EXPORT_SYMBOL vmlinux 0xe3d6f284 fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xe3de50bd qman_destroy_fq +EXPORT_SYMBOL vmlinux 0xe3ef1540 touch_atime +EXPORT_SYMBOL vmlinux 0xe3ef97df secpath_dup +EXPORT_SYMBOL vmlinux 0xe3f22c51 dquot_resume +EXPORT_SYMBOL vmlinux 0xe41eefa3 arp_invalidate +EXPORT_SYMBOL vmlinux 0xe432d5e6 get_write_access +EXPORT_SYMBOL vmlinux 0xe439414a local_flush_tlb_page +EXPORT_SYMBOL vmlinux 0xe4550cc3 __nlmsg_put +EXPORT_SYMBOL vmlinux 0xe45a4ec4 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0xe45b6925 account_page_writeback +EXPORT_SYMBOL vmlinux 0xe473e9ac jbd2_journal_start +EXPORT_SYMBOL vmlinux 0xe47bf784 vfs_mkdir +EXPORT_SYMBOL vmlinux 0xe484e35f ioread32 +EXPORT_SYMBOL vmlinux 0xe4890d3f send_sig_info +EXPORT_SYMBOL vmlinux 0xe49808b4 qman_poll +EXPORT_SYMBOL vmlinux 0xe4a895fa up_write +EXPORT_SYMBOL vmlinux 0xe4aa608f request_key_async +EXPORT_SYMBOL vmlinux 0xe4c1f093 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0xe4c68b6b inet_recvmsg +EXPORT_SYMBOL vmlinux 0xe4ce34e3 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xe4f4665b ipmi_validate_addr +EXPORT_SYMBOL vmlinux 0xe4fe8ca1 _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0xe4feef77 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0xe4ffa3c0 pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0xe5122890 flow_cache_genid +EXPORT_SYMBOL vmlinux 0xe5136f6d pid_task +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe524931c end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0xe53d1faa of_translate_dma_address +EXPORT_SYMBOL vmlinux 0xe54035f6 phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0xe549c6a0 inet_put_port +EXPORT_SYMBOL vmlinux 0xe55b2e72 eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0xe55ee13b tty_port_init +EXPORT_SYMBOL vmlinux 0xe57878a1 in6_pton +EXPORT_SYMBOL vmlinux 0xe57eb6cd __pci_enable_wake +EXPORT_SYMBOL vmlinux 0xe583c76b iget_locked +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe5957e1b net_dma_find_channel +EXPORT_SYMBOL vmlinux 0xe59961d7 fm_port_bind +EXPORT_SYMBOL vmlinux 0xe5a8ee55 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5d93444 scsi_is_host_device +EXPORT_SYMBOL vmlinux 0xe5d98795 phy_connect +EXPORT_SYMBOL vmlinux 0xe5df2453 devm_ioremap_nocache +EXPORT_SYMBOL vmlinux 0xe5ed5467 xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xe635de8e tty_devnum +EXPORT_SYMBOL vmlinux 0xe651d831 writeback_in_progress +EXPORT_SYMBOL vmlinux 0xe652e88c grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0xe66452ab dql_init +EXPORT_SYMBOL vmlinux 0xe6951f5a seq_path +EXPORT_SYMBOL vmlinux 0xe697d108 __blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe6a25151 dentry_unhash +EXPORT_SYMBOL vmlinux 0xe6ab72a6 ipmi_set_my_LUN +EXPORT_SYMBOL vmlinux 0xe6bbae42 scsi_scan_target +EXPORT_SYMBOL vmlinux 0xe6c32702 nf_unregister_hook +EXPORT_SYMBOL vmlinux 0xe6dd236d clear_pages +EXPORT_SYMBOL vmlinux 0xe6ebc016 key_create_or_update +EXPORT_SYMBOL vmlinux 0xe6fbe430 can_do_mlock +EXPORT_SYMBOL vmlinux 0xe7575cc0 pme_ctx_exclusive_dec +EXPORT_SYMBOL vmlinux 0xe76c4770 max8925_set_bits +EXPORT_SYMBOL vmlinux 0xe77b941f pme2_exclusive_set +EXPORT_SYMBOL vmlinux 0xe77d1d60 user_path_at +EXPORT_SYMBOL vmlinux 0xe7a664c4 nf_hooks +EXPORT_SYMBOL vmlinux 0xe7a81967 audit_log_secctx +EXPORT_SYMBOL vmlinux 0xe7c4622e input_unregister_device +EXPORT_SYMBOL vmlinux 0xe7c84014 lockref_mark_dead +EXPORT_SYMBOL vmlinux 0xe7ce7439 _memcpy_fromio +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7d6ed77 pipe_unlock +EXPORT_SYMBOL vmlinux 0xe7eb0175 blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0xe833fa77 gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0xe838f571 neigh_table_init +EXPORT_SYMBOL vmlinux 0xe851bb05 queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xe8887001 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0xe898bfba crc32_le_combine +EXPORT_SYMBOL vmlinux 0xe8b63ace radix_tree_range_tag_if_tagged +EXPORT_SYMBOL vmlinux 0xe8b82fe0 bman_ip_rev +EXPORT_SYMBOL vmlinux 0xe8bea3bc qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xe8befd11 tty_mutex +EXPORT_SYMBOL vmlinux 0xe8d1725d sk_common_release +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe915e843 xfrm_input +EXPORT_SYMBOL vmlinux 0xe923a9a1 tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0xe929cdce dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0xe92aaf1d dev_notice +EXPORT_SYMBOL vmlinux 0xe931838c devfreq_add_device +EXPORT_SYMBOL vmlinux 0xe933e14c __ps2_command +EXPORT_SYMBOL vmlinux 0xe950499d qman_release_fqid_range +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe9716c07 padata_do_serial +EXPORT_SYMBOL vmlinux 0xe978b78d pme_hw_flow_new +EXPORT_SYMBOL vmlinux 0xe99c3525 splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0xe9a8563a set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0xe9b0c20f dma_set_mask +EXPORT_SYMBOL vmlinux 0xe9b831d7 sk_stream_write_space +EXPORT_SYMBOL vmlinux 0xe9b865c4 posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0xe9bb7b07 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0xe9e45d73 blk_register_region +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xe9ff7abf tty_kref_put +EXPORT_SYMBOL vmlinux 0xea054b22 nla_policy_len +EXPORT_SYMBOL vmlinux 0xea063ac9 generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0xea10212a int_to_scsilun +EXPORT_SYMBOL vmlinux 0xea10655a __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xea16dd4c tcp_destroy_cgroup +EXPORT_SYMBOL vmlinux 0xea2003cc single_release +EXPORT_SYMBOL vmlinux 0xea219209 __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xea39713f arp_xmit +EXPORT_SYMBOL vmlinux 0xea3e7c71 lock_fb_info +EXPORT_SYMBOL vmlinux 0xea418995 inet_twsk_deschedule +EXPORT_SYMBOL vmlinux 0xea4ba8bc simple_write_begin +EXPORT_SYMBOL vmlinux 0xea6a034f call_netdevice_notifiers_info +EXPORT_SYMBOL vmlinux 0xea6e3003 of_find_compatible_node +EXPORT_SYMBOL vmlinux 0xea7987f1 key_update +EXPORT_SYMBOL vmlinux 0xea968c96 ___ratelimit +EXPORT_SYMBOL vmlinux 0xeab0819b pme_ctx_is_disabled +EXPORT_SYMBOL vmlinux 0xeabde530 sock_i_uid +EXPORT_SYMBOL vmlinux 0xeabe2952 rtnl_create_link +EXPORT_SYMBOL vmlinux 0xeae4e343 max8925_reg_read +EXPORT_SYMBOL vmlinux 0xeb0baa72 tcp_connect +EXPORT_SYMBOL vmlinux 0xeb14bbc5 set_blocksize +EXPORT_SYMBOL vmlinux 0xeb34f9a9 ndo_dflt_bridge_getlink +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb55a931 __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xeb59bd1a security_inode_permission +EXPORT_SYMBOL vmlinux 0xeb7a1391 ip_check_defrag +EXPORT_SYMBOL vmlinux 0xeb8b47ac xfrm4_prepare_output +EXPORT_SYMBOL vmlinux 0xebb0621f uart_suspend_port +EXPORT_SYMBOL vmlinux 0xebb0e819 dquot_transfer +EXPORT_SYMBOL vmlinux 0xebd63897 set_disk_ro +EXPORT_SYMBOL vmlinux 0xebdbe48c radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0xec106aba scsi_host_put +EXPORT_SYMBOL vmlinux 0xec17ebb0 of_match_node +EXPORT_SYMBOL vmlinux 0xec1ab33c mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0xec222963 kset_register +EXPORT_SYMBOL vmlinux 0xec2f897e registered_fb +EXPORT_SYMBOL vmlinux 0xec3b20da sock_no_shutdown +EXPORT_SYMBOL vmlinux 0xec4612db eth_header_cache +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec5c7e66 giveup_fpu +EXPORT_SYMBOL vmlinux 0xec717056 blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0xec8ad421 gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0xecb2ff75 serial8250_do_pm +EXPORT_SYMBOL vmlinux 0xecbf4415 bio_integrity_tag_size +EXPORT_SYMBOL vmlinux 0xecc1449e bm_pool_set +EXPORT_SYMBOL vmlinux 0xecc7e9a7 i2c_release_client +EXPORT_SYMBOL vmlinux 0xeccd09ff block_truncate_page +EXPORT_SYMBOL vmlinux 0xecd7b458 fail_migrate_page +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xecee6dfe agp_free_memory +EXPORT_SYMBOL vmlinux 0xed056ad2 input_grab_device +EXPORT_SYMBOL vmlinux 0xed390254 i2c_use_client +EXPORT_SYMBOL vmlinux 0xed597524 qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xed5a6a0b iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0xed5e0ae5 genphy_suspend +EXPORT_SYMBOL vmlinux 0xed76ab0c ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0xed7da5f9 keyring_clear +EXPORT_SYMBOL vmlinux 0xed9034e4 wake_up_process +EXPORT_SYMBOL vmlinux 0xed93f29e __kunmap_atomic +EXPORT_SYMBOL vmlinux 0xed99a5b8 pci_request_region_exclusive +EXPORT_SYMBOL vmlinux 0xed9f9a20 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xedb85044 bio_map_kern +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedbbbc50 __frontswap_store +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedc410d0 udplite_table +EXPORT_SYMBOL vmlinux 0xedc9ac54 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0xedd8f004 elv_unregister_queue +EXPORT_SYMBOL vmlinux 0xedd93e17 proc_mkdir +EXPORT_SYMBOL vmlinux 0xedefc8b5 pm860x_set_bits +EXPORT_SYMBOL vmlinux 0xee20d87a from_kprojid +EXPORT_SYMBOL vmlinux 0xee246dff ida_destroy +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee38c290 phy_ethtool_gset +EXPORT_SYMBOL vmlinux 0xee5aff46 sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0xee61cf4e inet6_release +EXPORT_SYMBOL vmlinux 0xee66d60d security_d_instantiate +EXPORT_SYMBOL vmlinux 0xee8ad9a0 serio_rescan +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xee995736 scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0xeea4a109 blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0xeea9dbaf bitmap_bitremap +EXPORT_SYMBOL vmlinux 0xeebcb715 mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xeeccc79d rtnl_unicast +EXPORT_SYMBOL vmlinux 0xeee2cac2 uart_match_port +EXPORT_SYMBOL vmlinux 0xeeea8335 skb_copy_datagram_from_iovec +EXPORT_SYMBOL vmlinux 0xeeeeab7e __brelse +EXPORT_SYMBOL vmlinux 0xeef161aa groups_free +EXPORT_SYMBOL vmlinux 0xeef427c1 con_is_bound +EXPORT_SYMBOL vmlinux 0xeefceafd generic_file_llseek +EXPORT_SYMBOL vmlinux 0xef0371cd blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0xef04c802 inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0xef109449 interruptible_sleep_on +EXPORT_SYMBOL vmlinux 0xef3bd694 sg_miter_start +EXPORT_SYMBOL vmlinux 0xef4855ad lock_sock_fast +EXPORT_SYMBOL vmlinux 0xef5f8f17 follow_down_one +EXPORT_SYMBOL vmlinux 0xef621764 blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0xef64a280 bio_integrity_prep +EXPORT_SYMBOL vmlinux 0xef9336e1 bio_split +EXPORT_SYMBOL vmlinux 0xefdd70ce security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0xefde1bbe flush_dcache_range +EXPORT_SYMBOL vmlinux 0xefe444f5 agp_put_bridge +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf00526ae scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0xf00cbe17 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0xf01682c4 max8998_bulk_write +EXPORT_SYMBOL vmlinux 0xf0187927 __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0xf0321cdc ip6_route_output +EXPORT_SYMBOL vmlinux 0xf0328144 kunmap_high +EXPORT_SYMBOL vmlinux 0xf0342857 netpoll_send_udp +EXPORT_SYMBOL vmlinux 0xf0381772 i2c_del_adapter +EXPORT_SYMBOL vmlinux 0xf059a1c1 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0xf05ffa15 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0xf0619801 timekeeping_clocktai +EXPORT_SYMBOL vmlinux 0xf065f629 ioread16be +EXPORT_SYMBOL vmlinux 0xf06eeeb4 grab_cache_page_nowait +EXPORT_SYMBOL vmlinux 0xf087137d __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0xf09de776 get_random_int +EXPORT_SYMBOL vmlinux 0xf0aade84 unmap_underlying_metadata +EXPORT_SYMBOL vmlinux 0xf0ab772b bio_alloc_pages +EXPORT_SYMBOL vmlinux 0xf0d68ed6 clk_register_clkdevs +EXPORT_SYMBOL vmlinux 0xf0e57a9f bman_flush_stockpile +EXPORT_SYMBOL vmlinux 0xf0ef15b4 list_sort +EXPORT_SYMBOL vmlinux 0xf0f0746f inet6_add_offload +EXPORT_SYMBOL vmlinux 0xf0f1246c kvasprintf +EXPORT_SYMBOL vmlinux 0xf0fc899f file_open_root +EXPORT_SYMBOL vmlinux 0xf0fd4e8f rwsem_down_read_failed +EXPORT_SYMBOL vmlinux 0xf100416a remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xf106e61a mach_qemu_e500 +EXPORT_SYMBOL vmlinux 0xf10ca3e7 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0xf10de535 ioread8 +EXPORT_SYMBOL vmlinux 0xf11cd6ce down_interruptible +EXPORT_SYMBOL vmlinux 0xf11ddf25 xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0xf12dd76c generic_delete_inode +EXPORT_SYMBOL vmlinux 0xf13feb57 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0xf147dcb2 hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0xf14a207b rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0xf17c807e netlink_kernel_release +EXPORT_SYMBOL vmlinux 0xf17ec8f8 fsnotify_put_mark +EXPORT_SYMBOL vmlinux 0xf1829e50 pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1a070a2 pci_find_capability +EXPORT_SYMBOL vmlinux 0xf1bc50f2 tcp_init_cgroup +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1deabf2 div64_u64 +EXPORT_SYMBOL vmlinux 0xf1e06df1 gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1ee3b7a scsi_target_resume +EXPORT_SYMBOL vmlinux 0xf1efeb1b pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0xf202c5cb radix_tree_insert +EXPORT_SYMBOL vmlinux 0xf205bd5b mmc_cache_ctrl +EXPORT_SYMBOL vmlinux 0xf20dabd8 free_irq +EXPORT_SYMBOL vmlinux 0xf22881e8 lg_local_lock +EXPORT_SYMBOL vmlinux 0xf235bb03 vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf24b092f ip_options_compile +EXPORT_SYMBOL vmlinux 0xf2576cb9 ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL vmlinux 0xf25c87ba vc_cons +EXPORT_SYMBOL vmlinux 0xf2668b1d mmc_hw_reset_check +EXPORT_SYMBOL vmlinux 0xf270d1f1 deactivate_super +EXPORT_SYMBOL vmlinux 0xf27b0afb dev_err +EXPORT_SYMBOL vmlinux 0xf27f72c0 pci_domain_nr +EXPORT_SYMBOL vmlinux 0xf2a0af8f backlight_device_registered +EXPORT_SYMBOL vmlinux 0xf2a1b9be pci_dev_put +EXPORT_SYMBOL vmlinux 0xf2b1ac8e __getnstimeofday +EXPORT_SYMBOL vmlinux 0xf2e2808f tcp_gro_receive +EXPORT_SYMBOL vmlinux 0xf303dd97 nf_ct_attach +EXPORT_SYMBOL vmlinux 0xf31142db xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xf313da4e sha_transform +EXPORT_SYMBOL vmlinux 0xf322a206 bit_waitqueue +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf33509eb elv_rb_add +EXPORT_SYMBOL vmlinux 0xf33d1352 filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0xf3432c69 twl6040_power +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf366505e __blk_end_request_cur +EXPORT_SYMBOL vmlinux 0xf3712909 qman_query_congestion +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf39ef077 bio_copy_data +EXPORT_SYMBOL vmlinux 0xf3bf0bce __bitmap_complement +EXPORT_SYMBOL vmlinux 0xf3cfa691 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0xf3d0f4f0 agp_generic_alloc_by_type +EXPORT_SYMBOL vmlinux 0xf3d998fe __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0xf3de7985 max8925_bulk_read +EXPORT_SYMBOL vmlinux 0xf3f4ad8a page_readlink +EXPORT_SYMBOL vmlinux 0xf40b2297 __crypto_memneq +EXPORT_SYMBOL vmlinux 0xf419a6b7 unregister_quota_format +EXPORT_SYMBOL vmlinux 0xf419fe26 ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0xf441ac43 ioread8_rep +EXPORT_SYMBOL vmlinux 0xf4449388 timer_interrupt +EXPORT_SYMBOL vmlinux 0xf4586b69 cad_pid +EXPORT_SYMBOL vmlinux 0xf461dd48 rfkill_alloc +EXPORT_SYMBOL vmlinux 0xf49a8b25 udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0xf4b8444a qman_init_fq +EXPORT_SYMBOL vmlinux 0xf4b97f26 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4c7b2d2 vfs_writev +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf4f6566e sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0xf5108cea mmc_read_bkops_status +EXPORT_SYMBOL vmlinux 0xf5136b0e __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0xf515169f vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0xf5222143 _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0xf5230dd4 agp_generic_type_to_mask_type +EXPORT_SYMBOL vmlinux 0xf52321e0 atomic64_sub +EXPORT_SYMBOL vmlinux 0xf5365f48 remap_pfn_range +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf54545eb abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0xf55bc68d tty_unlock_pair +EXPORT_SYMBOL vmlinux 0xf5998a1f mb_cache_destroy +EXPORT_SYMBOL vmlinux 0xf599f780 __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0xf5a085c4 gen_pool_destroy +EXPORT_SYMBOL vmlinux 0xf5a62ecc _memset_io +EXPORT_SYMBOL vmlinux 0xf5b9eb37 truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0xf5c05914 generic_segment_checks +EXPORT_SYMBOL vmlinux 0xf5d4927a pci_dev_get +EXPORT_SYMBOL vmlinux 0xf5e1558d crash_shutdown_unregister +EXPORT_SYMBOL vmlinux 0xf5eb86ea blk_verify_command +EXPORT_SYMBOL vmlinux 0xf633e8b9 security_inode_init_security +EXPORT_SYMBOL vmlinux 0xf6388c56 sysctl_ip_default_ttl +EXPORT_SYMBOL vmlinux 0xf63ee7fd dev_emerg +EXPORT_SYMBOL vmlinux 0xf65b2c12 ata_port_printk +EXPORT_SYMBOL vmlinux 0xf65b4791 mmc_request_done +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf68687be __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xf69181e8 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0xf6b391b2 blk_queue_invalidate_tags +EXPORT_SYMBOL vmlinux 0xf6bb4729 color_table +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6ef85a3 fget_raw +EXPORT_SYMBOL vmlinux 0xf70384d7 __debugger_sstep +EXPORT_SYMBOL vmlinux 0xf705bab2 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0xf71521ba atomic64_add_return +EXPORT_SYMBOL vmlinux 0xf718f707 simple_transaction_set +EXPORT_SYMBOL vmlinux 0xf71c3ff3 no_llseek +EXPORT_SYMBOL vmlinux 0xf71dc325 pci_clear_mwi +EXPORT_SYMBOL vmlinux 0xf72ea774 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0xf73ec632 tty_register_driver +EXPORT_SYMBOL vmlinux 0xf741c793 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf7622d40 seq_bitmap_list +EXPORT_SYMBOL vmlinux 0xf7924cde page_follow_link_light +EXPORT_SYMBOL vmlinux 0xf7b54f13 zerocopy_sg_from_iovec +EXPORT_SYMBOL vmlinux 0xf7c93505 backlight_force_update +EXPORT_SYMBOL vmlinux 0xf7da18c3 elevator_alloc +EXPORT_SYMBOL vmlinux 0xf7e1a81f blk_put_request +EXPORT_SYMBOL vmlinux 0xf7e47daf md_error +EXPORT_SYMBOL vmlinux 0xf7f6ee9f dquot_quota_off +EXPORT_SYMBOL vmlinux 0xf7fc4d5c load_nls_default +EXPORT_SYMBOL vmlinux 0xf803fe39 bitmap_set +EXPORT_SYMBOL vmlinux 0xf807f35d tcp_sync_mss +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf827cb83 free_reserved_area +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf84b76d2 inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0xf864a58e blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0xf89a3d62 bman_affine_cpus +EXPORT_SYMBOL vmlinux 0xf89c8e07 ida_pre_get +EXPORT_SYMBOL vmlinux 0xf89de2d2 dquot_scan_active +EXPORT_SYMBOL vmlinux 0xf8e398fc memstart_addr +EXPORT_SYMBOL vmlinux 0xf8eb5ab5 pci_scan_bus +EXPORT_SYMBOL vmlinux 0xf9228003 get_immrbase +EXPORT_SYMBOL vmlinux 0xf9301ecb fb_pan_display +EXPORT_SYMBOL vmlinux 0xf9348cbc xz_dec_run +EXPORT_SYMBOL vmlinux 0xf940a328 __next_cpu +EXPORT_SYMBOL vmlinux 0xf9a3cf4e scsicam_bios_param +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9ade52b pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0xf9c367e0 iov_pages +EXPORT_SYMBOL vmlinux 0xf9d8023e scsi_unregister +EXPORT_SYMBOL vmlinux 0xf9e73082 scnprintf +EXPORT_SYMBOL vmlinux 0xfa0f193b udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0xfa15398c flush_icache_user_range +EXPORT_SYMBOL vmlinux 0xfa187487 blk_queue_end_tag +EXPORT_SYMBOL vmlinux 0xfa270879 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0xfa2ac0d4 netlink_broadcast +EXPORT_SYMBOL vmlinux 0xfa2beefe i8042_remove_filter +EXPORT_SYMBOL vmlinux 0xfa2c9983 dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa635412 tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0xfa6c8623 pme_ctx_ctrl_update_flow +EXPORT_SYMBOL vmlinux 0xfa7eb332 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0xfa7f2b64 fm_port_disable +EXPORT_SYMBOL vmlinux 0xfa7f3156 wl12xx_get_platform_data +EXPORT_SYMBOL vmlinux 0xfa81d380 padata_free +EXPORT_SYMBOL vmlinux 0xfaabd951 elv_rb_former_request +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfad7cc5f pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0xfadc7265 skb_kill_datagram +EXPORT_SYMBOL vmlinux 0xfae176d5 dquot_alloc +EXPORT_SYMBOL vmlinux 0xfae24a67 dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0xfae67b1f cap_mmap_addr +EXPORT_SYMBOL vmlinux 0xfae999f1 tty_lock +EXPORT_SYMBOL vmlinux 0xfaf4f27d netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0xfaf98462 bitrev32 +EXPORT_SYMBOL vmlinux 0xfb0b1c12 module_put +EXPORT_SYMBOL vmlinux 0xfb33ecf6 blk_run_queue_async +EXPORT_SYMBOL vmlinux 0xfb42a323 tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0xfb4c7a48 ps2_begin_command +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb94103e __clzdi2 +EXPORT_SYMBOL vmlinux 0xfb94fd95 set_binfmt +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfc02b7ad sysctl_tcp_wmem +EXPORT_SYMBOL vmlinux 0xfc031c64 __dquot_free_space +EXPORT_SYMBOL vmlinux 0xfc044a6d xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0xfc1c912f devm_gpio_request_one +EXPORT_SYMBOL vmlinux 0xfc3973cc vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc3b160f mempool_create_node +EXPORT_SYMBOL vmlinux 0xfc612756 seq_lseek +EXPORT_SYMBOL vmlinux 0xfc65459a kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0xfc9bc850 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0xfcaa04a0 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xfcb77cfd ipmi_free_recv_msg +EXPORT_SYMBOL vmlinux 0xfcc2a43c utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0xfcd8cc9b iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfcfa03ff fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0xfd23589a inet_confirm_addr +EXPORT_SYMBOL vmlinux 0xfd4fb56b sock_get_timestamp +EXPORT_SYMBOL vmlinux 0xfd6293c2 boot_tvec_bases +EXPORT_SYMBOL vmlinux 0xfd72a6d4 clear_nlink +EXPORT_SYMBOL vmlinux 0xfd86d062 generic_file_aio_read +EXPORT_SYMBOL vmlinux 0xfd99623a ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xfdae5802 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0xfdb6cedc _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0xfdb9b629 ioread32be +EXPORT_SYMBOL vmlinux 0xfdbe0288 pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0xfdcb496e pme_hw_flow_free +EXPORT_SYMBOL vmlinux 0xfdcf4bd8 block_read_full_page +EXPORT_SYMBOL vmlinux 0xfdd57eca xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0xfded48ed enable_kernel_fp +EXPORT_SYMBOL vmlinux 0xfdf18049 tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0xfdf92259 sock_update_classid +EXPORT_SYMBOL vmlinux 0xfdfc0b3b fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe35aa4a percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0xfe554d86 key_unlink +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe7c4287 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0xfe822d55 get_brgfreq +EXPORT_SYMBOL vmlinux 0xfec06a71 drop_nlink +EXPORT_SYMBOL vmlinux 0xfedadf76 bdi_register +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfef57245 pci_set_power_state +EXPORT_SYMBOL vmlinux 0xfef96e23 __scsi_print_command +EXPORT_SYMBOL vmlinux 0xff0941db netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff3556ca generic_setlease +EXPORT_SYMBOL vmlinux 0xff4c1889 mutex_unlock +EXPORT_SYMBOL vmlinux 0xff4d7b8b security_task_getsecid +EXPORT_SYMBOL vmlinux 0xff6580a8 dquot_disable +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff6dea25 smp_hw_index +EXPORT_SYMBOL vmlinux 0xff7559e4 ioport_resource +EXPORT_SYMBOL vmlinux 0xff98d7f9 tcp_getsockopt +EXPORT_SYMBOL vmlinux 0xff9ca065 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0xffcc5b04 cleancache_register_ops +EXPORT_SYMBOL vmlinux 0xffcceb86 tcp_prequeue +EXPORT_SYMBOL vmlinux 0xffd5a395 default_wake_function +EXPORT_SYMBOL vmlinux 0xffdae10f __napi_complete +EXPORT_SYMBOL vmlinux 0xffe500be dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xffe874f3 user_path_create +EXPORT_SYMBOL vmlinux 0xffeeadc2 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0xfff69349 tcp_simple_retransmit +EXPORT_SYMBOL_GPL crypto/af_alg 0x0eb31281 af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x13932eb4 af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x2694cf3a af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0x58716898 af_alg_wait_for_completion +EXPORT_SYMBOL_GPL crypto/af_alg 0x5aa5a4f2 af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x5ed80cb0 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x6648dffb af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0x93957c0c af_alg_cmsg_send +EXPORT_SYMBOL_GPL crypto/af_alg 0xca449577 af_alg_complete +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x183ff450 async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x29dd8cda async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0xc6aa292c async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x1e698544 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x71901054 async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x089a9197 __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x08cb2b40 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x224a7270 async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xe3055270 async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x5c3fdad6 async_xor +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xaa131cfb async_xor_val +EXPORT_SYMBOL_GPL crypto/authenc 0x587ef278 crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0x3147c17d blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x27278ca9 __cast5_encrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x4a2a3ca6 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0xcb4847d3 cast5_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1291971c __cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1e2c961f __cast6_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x63f4a041 cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x8f04034a __cast6_encrypt +EXPORT_SYMBOL_GPL crypto/cast_common 0x08aa6fb7 cast_s1 +EXPORT_SYMBOL_GPL crypto/cast_common 0x0c5fbf8a cast_s3 +EXPORT_SYMBOL_GPL crypto/cast_common 0xe39dd4b4 cast_s2 +EXPORT_SYMBOL_GPL crypto/cast_common 0xee83a4f3 cast_s4 +EXPORT_SYMBOL_GPL crypto/cryptd 0x18385d15 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0x2021297b cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x262672db cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x26e4a114 cryptd_ablkcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x5b601cc9 cryptd_alloc_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x86ed5c9b cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xa5b38086 cryptd_free_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0xb99061f7 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xc90d7c11 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xcab20a4c cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/des_generic 0xcfd9a2c0 des_ekey +EXPORT_SYMBOL_GPL crypto/lrw 0x0414f8e9 lrw_crypt +EXPORT_SYMBOL_GPL crypto/lrw 0x3864eb66 lrw_free_table +EXPORT_SYMBOL_GPL crypto/lrw 0xcd074900 lrw_init_table +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x5ddb33e9 __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x77b39cb4 __serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x7b6c3de8 serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x8a1a99ad __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/twofish_common 0x0f62991e twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0x6c3229bb __twofish_setkey +EXPORT_SYMBOL_GPL crypto/xts 0xde3ae388 xts_crypt +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x48c5fa58 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x59fbebe7 ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x7d74deec ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x8af7a786 ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xaa6f307f ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xb7235e21 ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xe3617ec1 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x2e4445fd ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x2e7d5f3c ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x46f6d2d9 ahci_shost_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x49fb240d ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x4ca56f64 ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x4e0786bc ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5eacba1f ahci_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x694f923e ahci_thread_fn +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6ab1558b ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6e05c4e7 ahci_hw_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8ba854ac ahci_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8c161f1c ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x9daaab1b ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa344ea11 ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa9cf2dfc ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xaa5f1406 ahci_sdev_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd149ff46 ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd9fc16b9 ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xddbdb6b3 ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea4441ba ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xed40f2f8 ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xf163d5ca ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xfdb7aca6 ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0x35a3a6bf __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/ata/pata_sis 0x5a1aebaf sis_info133_for_sata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x14102f23 ks0108_displaystate +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x48a70518 ks0108_writedata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x4f506333 ks0108_startline +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x6edae968 ks0108_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xbf4774db ks0108_writecontrol +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xedde6df2 ks0108_page +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xfee8ef7b ks0108_address +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0d520efc bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x22bda831 bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2a096797 bcma_core_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2fb104b0 __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x358b161e bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x39cf2497 bcma_core_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x3ae8982a bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x44eae64c bcma_core_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x50f2bbe1 bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x563abe73 bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x73b87b37 bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x96c1c172 bcma_find_core +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x9cc74468 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc45573c6 bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xccb7ac10 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xccc5ade8 bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd30557ac bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe252eb92 bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xeca4fc2a bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xeeca032e bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf8217b4b bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf859812f bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xfd55db69 bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x2905ccbf btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x2bcfb527 btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x34ff99db btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x3dcb5845 btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x4d8b43ac btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x52559566 btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x59f8de94 btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x7afe4fd0 btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xa8657bd9 btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xee178814 btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x3a5f6507 dw_dma_shutdown +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xc154f6da dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xfcecd6b8 dw_dma_remove +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0730521d edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x1cb18ec1 edac_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x23ce58ba edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x28631cf0 edac_pci_handle_npe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x33777395 edac_pci_reset_delay_period +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x3f1d6e54 edac_device_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x41a7d977 edac_mc_add_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x49b2a6f3 edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x69259f22 edac_mem_types +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6953293e edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6c438e25 edac_device_handle_ce +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x731239a6 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x8f5d2f37 find_mci_by_dev +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x91b4843e edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x91d0cf12 edac_pci_handle_pe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x9c9eda62 edac_pci_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x9f59ef33 edac_mc_del_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xa5a843ef edac_mc_free +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xb1a11314 edac_pci_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xb4c72220 edac_device_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc43e81fc edac_device_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xcb584551 edac_device_handle_ue +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xcd70c635 edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xd442656a edac_mc_alloc +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xf4ade51f fw_card_release +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x3660c1c3 bgpio_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0xf764ca86 bgpio_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x2268362c __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0xf2ae5136 __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x03e70d65 drm_vm_open_locked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x9884b10c drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xfe4349f0 drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x275dd3e6 ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x6adf436b ttm_prime_fd_to_handle +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xb84fd3a9 ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xce36343e ttm_prime_handle_to_fd +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xea68710e ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0b3d529c hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x13408f19 hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x16418de7 hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1abb8fbd hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x231f7317 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x35589ad8 hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4038de74 hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x48bb260a hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4906a967 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x50ea5224 hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x55abd5fc hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5d5bbc00 hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x60f97df7 hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x64e789fe hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6baa1149 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6f93ee3a hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7cb1d6f7 hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x817dfb57 hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x92286898 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9ad3a313 hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa145d444 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa80b254c hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb5e30c9a hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb65f40d9 hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc1c7778b hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc7f46587 hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xca81c5cd hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcc8a4885 hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd697d9ac hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd799f1df hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe2296de1 hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe53dc3e4 hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe5d9affc hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf36caa6c hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf83df502 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x2f622ea1 roccat_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x7c8c0fcf roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x8c4181ec roccat_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x2e2c8118 roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x57334d66 roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x74b84cb9 roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x7d27c5a4 roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x8aee6b17 roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xe67bbfb8 roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x1215d1c2 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x4820649d sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x56c82740 sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x58bec103 sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x76c71742 sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x8400e2bf sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xdd0ddad7 sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xe2a56dc1 sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x01fd453e usbhid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0xfe503a2c hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x10e8ca82 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2734cad6 hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x3ec5e7e1 hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x4158ade5 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5b7402d2 hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x6bfe42c3 hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x73574dd6 hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x779e0973 hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x7b3eec1d hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x7c726908 hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xb098bae3 hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xe1f4aef1 hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xffcfdaaa hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x81f79d9d adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xeeef39db adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x154a1390 pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x2c6e924a pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x322f65c9 pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x3bac9a32 pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x40af12d6 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x46e37b2a pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x5e687bbd pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x72e1a211 pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x9bdd4795 pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x9e193994 pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xa95ee7a9 pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xca831c19 pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x06001d49 i2c_dw_is_enabled +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x13f2aacc i2c_dw_disable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x1fcbab14 i2c_dw_func +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x22872de8 i2c_dw_clear_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5bb1170b i2c_dw_isr +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x62b45b71 i2c_dw_enable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x89a79468 i2c_dw_init +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x8a0cd257 i2c_dw_xfer +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xec9f07b9 i2c_dw_disable_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xfe6567c0 i2c_dw_read_comp_param +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x20f1561a i2c_del_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xdd64507a i2c_add_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x315978a5 i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xd52e55a4 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x1cfdbbed ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x1df90db4 ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x40e2bfca ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x498d19dd ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x5e6e5b5a ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x600e450d ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x6afad6d0 ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x70d83422 ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x9ac319d7 ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x1113c24b adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x12b66067 adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x57ff98e4 adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x67406482 adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x82b8c664 adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x95452588 adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x9b063efd adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xc5235d30 adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xc9cc3583 adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xd60b4d6a adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xe87d232a adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xe9485e79 adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x010f47f8 iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0ead1559 iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x139ea979 iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1ab362bd iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x20a7a7d3 iio_scan_mask_query +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x22809ee9 iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x267c0508 iio_channel_release_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x285ff322 iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2a1fab3c iio_channel_stop_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x44470643 iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x44cb2cb8 iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x48014446 iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4d26e6d2 iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4ec1e6e1 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x756d9767 iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7ba0b9e2 devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7fd263d7 iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x811e8602 iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x81f54006 devm_iio_trigger_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x97099744 iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9ea846a9 devm_iio_device_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9fd7f541 iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa5e7a212 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa6169065 iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa7a84460 iio_scan_mask_set +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xafa28c73 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd8aef030 iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd9e6eeff iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xdde2a837 devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe0d001e4 iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe248ec56 iio_update_demux +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe7b4622f iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0xa6f998a8 input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0x05893e9e matrix_keypad_parse_of_params +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x533f47c5 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x65d5f135 cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xafb59525 cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xe4afeb00 cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x2b92ef74 cyttsp_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x4e32e6cf cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x8481c304 cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x1fb35f9e cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0xadc0981c cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x06e6bb73 wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x3b14691f wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x4638bb9f wm9713_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x4f18be79 wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x8a92bb01 wm9712_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x972ca65b wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xb476351e wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xc25df434 wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xcfaf3093 wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xd8bcd1c1 wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xe2d431a2 wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xeccd0d1e wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x020bc474 ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x0bcc470d ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x18d828cc ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x5f368165 ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x72eae5c4 ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x8ab4ace1 ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x8c9582b0 ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xd3288e1f ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xfc6b9718 ipack_get_device +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0x23359aff unregister_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0xce1414b2 register_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x12abb243 gigaset_skb_sent +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x18c577bb gigaset_freedriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x40b63259 gigaset_freecs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x44df6934 gigaset_handle_modem_response +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x454aa44f gigaset_debuglevel +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x821de0ae gigaset_start +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8eff32df gigaset_dbg_buffer +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x9a124d12 gigaset_add_event +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xae6f31f4 gigaset_shutdown +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xbd16061e gigaset_fill_inbuf +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xbdf2a281 gigaset_initdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xcb5a7f97 gigaset_isdn_rcv_err +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xe458fc07 gigaset_stop +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xeb16938f gigaset_skb_rcvd +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xed89a066 gigaset_initcs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xf1ca2e27 gigaset_m10x_input +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xf32cab5d gigaset_if_receive +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xf33a68f0 gigaset_blockdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xf458e19b gigaset_m10x_send_skb +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x0a7c5b03 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x1330efc3 lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x1ffdd4c5 lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x20b690e0 lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x7cbed5c8 lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x85092869 lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x9b763549 lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x9e60b8a2 lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xba2ba611 lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xe4ae623a lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xfb0a49f1 lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x749e05f2 ledtrig_flash_ctrl +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x7903e46e ledtrig_torch_ctrl +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x0a0527be wf_register_client +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x0b50518c wf_register_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x129974b9 wf_put_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x2898c44e wf_get_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x2a6ec089 wf_find_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x5656dbc4 wf_get_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x5ee78728 wf_unregister_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x74dbcb3a wf_unregister_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x75147afa wf_set_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x8ae1ed33 wf_register_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x94765fac wf_critical_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xa2f19a49 wf_is_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xbcace2a5 wf_unregister_client +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xbf47fd56 wf_put_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xed82a14f wf_clear_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xf9591e92 wf_find_sensor +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x10e06e97 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x155ea9c7 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1822fd23 __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1f2ba9ac __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x260d47cf __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x27831e89 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2dec45e0 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x347aebe1 __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x41c861f0 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x49856e5a __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x50e8c39f __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x574ba881 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x628eb712 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6770a402 __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x785cfc9f __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7b488fb1 __tracepoint_bcache_alloc_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x91f2af34 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa09069a3 __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa591c5d6 __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa6890b59 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xaf60c34b __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb950d2ae __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbd4b89b6 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xce0e6218 __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd40fba32 __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xdc5ea5a5 __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf58ce244 __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf5bcbdc7 __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfc1d5275 __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfcdf28c9 __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xffc308e4 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x00e01dcf dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x27ce1116 dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x36f34a89 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6969b025 dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x9ac14566 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb6d5c65d dm_deferred_set_add_work +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb70b342a dm_bio_prison_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xd786f9fa dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xebd06eaf dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xf706f263 dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x06314a25 dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x22163b69 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x3909d3a8 dm_bufio_prefetch +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x594952bd dm_bufio_read +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x62a23587 dm_bufio_get_device_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9b2b253a dm_bufio_get +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa82b2066 dm_bufio_write_dirty_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc9a3422d dm_bufio_write_dirty_buffers_async +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd4bddf5c dm_bufio_issue_flush +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xdc69e37a dm_bufio_get_block_number +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe004ee92 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe6024e59 dm_bufio_release +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xebcc64a4 dm_bufio_get_block_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xeca7949e dm_bufio_client_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x2eba1011 dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x4cac875b dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x55c27c61 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x6bb5f6df dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x720b48aa dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xbb1f72ad dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xbeeedb79 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x2b546814 dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x634484ca dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x09472122 dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x1a595718 dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x38efaf5a dm_region_hash_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3a18389a dm_rh_update_states +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x4e96237b dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x5c86904f dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7774620f dm_rh_stop_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7d053fc5 dm_rh_start_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7f3783f2 dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa53387c7 dm_rh_flush +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa83588eb dm_rh_recovery_end +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa8813ad6 dm_rh_region_to_sector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xc66ce277 dm_rh_get_region_size +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xca3010b8 dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xcab63c3d dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xf37a3cfe dm_rh_get_region_key +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfd93482e dm_rh_recovery_in_flight +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfe71c972 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0054f69d dm_tm_pre_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x01445176 dm_btree_find_highest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x11eab9fe dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x150c85ce dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1cac81ac dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2025e954 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2c112836 dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2e730a21 dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f40da68 dm_bm_set_read_write +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f74609d dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x32b5f546 dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x33c03da6 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x38c75c44 dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3ad0f55b dm_bm_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x40f7bd91 dm_tm_inc +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5e6aea80 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x619701dc dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x62c1b9ee dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x65a95d73 dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x68fae9d2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x72289260 dm_block_manager_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7ade1071 dm_tm_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7b047bd9 dm_tm_create_non_blocking_clone +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x80c89b3d dm_tm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x832bf228 dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x858c8d94 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89f1e1cc dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x966a8838 dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9b4b5b29 dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9e798e22 dm_bm_set_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa0bbbb49 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa13861b4 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2507774 dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa87c5b4d dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaee02382 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb7bad799 dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb9a6ecf8 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbcfdc290 dm_tm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbd50ebbb dm_btree_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbe0497aa dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xca40abd5 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd041d62b dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe44b4b9b dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xead1e727 dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xed1e1f96 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf475af48 dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/raid1 0x0a95e731 md_raid1_congested +EXPORT_SYMBOL_GPL drivers/md/raid10 0xc0cf2c8a md_raid10_congested +EXPORT_SYMBOL_GPL drivers/md/raid456 0xcba95a66 md_raid5_congested +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x0ccfb022 saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x5de9304d saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x75cb3ffb saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x864eb4f7 saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xad0a4625 saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xbc123062 saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xc014d194 saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xd8421c94 saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe1dd3f69 saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xedefa5da saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x0360ab72 saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x03cecb31 saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x074c77ae saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x3a49a4ac saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x43304cd7 saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x4ba0b139 saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x6e255d47 saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x08375e52 smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x091d4330 smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x0a94a0bd smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x37d91069 smsendian_handle_tx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x3971405e smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x3f99eb22 sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x404eed60 sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x49d6f6d9 sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x63222b29 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x638e254e smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x67dbdb8c smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x6a195adf sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7c576277 smsendian_handle_message_header +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x899e6556 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9c2225ed smscore_translate_msg +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa004f061 smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa4b8b3e3 smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa6453362 smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa6cdf375 smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xad55e55a sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbe19a74e smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0x6b6786ed cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0x7316598d tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0xc347a8a5 cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x08d0b744 mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x19aa67c3 mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x275aa37d mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x5468d6be mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x59b152dd mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x70809d38 mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x8157e4db mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x835b13ef mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x85b76708 mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x87bb903c mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb1cd374c mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb3c1c078 mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xc30e3586 mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xe0b74b99 mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xf51dec97 mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xf6d5ff76 mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xff6c24c1 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x16cf7320 saa7134_g_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x3bb6e1f7 saa7134_queryctrl +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x6384a6f0 saa7134_s_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xa9fdc82e saa7134_s_std_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xffe79619 saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x0006b74b ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xcb31be35 ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xe602cdee ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xf2cbb0f2 ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xf3a7d36b ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xf9f61da0 ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xfc9989f5 ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x2de31b43 radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0xea66426a radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x00c6c106 ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1c6a1fe6 ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1d792330 rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x52d094d1 rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x553efb91 rc_core_debug +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x597a0502 rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x59962601 rc_open +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x60122173 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6343ed7c rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x864d7e8c rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x87830b57 rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x92585d12 rc_close +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa3c87783 rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa625ce7c rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd405fd87 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd759cf3a ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xde45a12e ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf6b48c3c rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf713d0b0 ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xffe85f57 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0xbd105fb7 mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0xf5202781 microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0x401d6d2e mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0xc083d9b1 r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0x68dc0668 tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0x46a5d549 tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x326e11b8 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x712e1904 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x85d61f33 tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x3c766d1f tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x72ba6cf4 tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x2f38597a tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x54fefa15 tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0xcc923283 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x3f6919f5 cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x3faa82a4 cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4d279a2f cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x5e0346c0 cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6015d917 cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x67ec7c44 cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x68c00710 cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6dd49fa9 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x95f1c212 cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xb1981a9b cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xb247c080 cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xbde216a5 cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd3806b2f cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xdf54e8bc is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xe60b5145 cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xee116732 cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf09f2662 cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf0f22e7d cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xfd544bce cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0x628a1955 mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0xae47505e mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x413c3239 em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x4f181940 em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x62156409 em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x6ec203a2 em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x8b216bdd em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x98471047 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xa1c6bb0b em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xa1d364c8 em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xb5735b5a em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xb7fd4230 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xbf5b9ed9 em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xeba21d55 em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xeec6fee4 em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf69153d0 em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x64adc459 tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x6e570276 tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xb7d3c993 tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xc7aa6df3 tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x00a322bc v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x01c483a9 v4l2_get_timestamp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x43ea6c6a v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x4711debe v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x5bee9ed8 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x813f3de4 v4l2_find_nearest_format +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xb5a01b16 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xe394e330 v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x08982d59 v4l2_match_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x221d2fbc v4l2_enum_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x36e8756a v4l2_find_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x4103badb v4l2_print_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x53105839 v4l2_detect_cvt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6976cfe0 v4l2_valid_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6f344bb9 v4l2_calc_aspect_ratio +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x7eaf8e7a v4l2_detect_gtf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xb0891da2 v4l2_dv_timings_presets +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x31ae7626 v4l2_int_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x4631cff2 v4l2_int_ioctl_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xa5228b24 v4l2_int_device_try_attach_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xaafaf1c7 v4l2_int_ioctl_0 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xf9895b18 v4l2_int_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x00c8521f v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x077b49ba v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x17eb0eee v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x2378eaec v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3ac13ac0 v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3e986acf v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5c81a667 v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6a1d5fcf v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6e6f3f1d v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x87ead7fb v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x99bc9098 v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa07fe833 v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xbfe3855f v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd1808ea0 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe6e2ca43 v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x0c86c5b4 videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x12fa5e44 videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1730daa1 videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1f67c9fb videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x239dbbf2 videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x48456502 videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x58f6573d videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6bd4b1b5 videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x72d564d9 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x77adb3b6 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7953dd76 videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7e2ae40e __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7fc6b1d3 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9d62038b videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb688d30c videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb80666b3 videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc227e756 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc767762e videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc84bc8db videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xd080f569 videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xd195fe87 videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xd80f37c4 videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xeb165551 videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xffafdb92 videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x900a4e4b videobuf_to_dma_contig +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0xcb0a9c21 videobuf_dma_contig_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0xe8f933b4 videobuf_queue_dma_contig_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x0e91ae25 videobuf_dma_map +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x1585c7bc videobuf_dma_init_overlay +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x35a3e9c1 videobuf_dma_init_user +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x5bcd5294 videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x90003fd1 videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x98880206 videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xa825c75b videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xc1ff46fe videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xe8d5d195 videobuf_dma_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xf0396117 videobuf_dma_init_kernel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x1f94270f videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x27a965b2 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0xdc576b56 videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x0635ccec vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x12efd8a9 vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x20bc2030 vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2661e643 vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2a743801 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2c7dea68 vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x3f8882a3 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x4895eed4 vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x567458d2 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x56eb52e6 vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x592ddb84 vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x64de01b0 vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x653296a5 vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x668978f4 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x7671404d vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x7d5dd7a1 vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x80ef4998 vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x817417b5 vb2_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x85d1990f vb2_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x9235c263 vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x9fa77da6 vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x9fe82303 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb34265ac vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb36477a0 vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb507c1a2 vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xbc876477 vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xc119e760 vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xcfce06e1 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd6d9cd08 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd819f035 vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xdeb60781 vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xe7c6cb44 vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xf9a1e6d4 vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xfb751441 vb2_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xd0faa0d0 vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xe57f0426 vb2_dma_contig_cleanup_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xf8ff71ab vb2_dma_contig_init_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-sg 0xba13fee8 vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x09d65be4 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x3854cdc4 vb2_get_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x70ae65bf vb2_get_contig_userptr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0xcff0ea72 vb2_put_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-vmalloc 0xd7b60389 vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x07e3be0b v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0e3bb99b v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x280f417d v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2c85ea02 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3a2f55ce v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4c017945 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7785db67 v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x90d2eca4 v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa5664e3f v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xae02614d v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb0debf1e v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb6c7a777 v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb7a8ee11 v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbbdc84d8 v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc075e5d9 v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc54eb842 v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc8034379 v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcaeaab4d v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcc2303d5 v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe510a53b v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xec71bcbf v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf0cdb2cd v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf3e80110 v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x36cec1d7 i2o_pool_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x77c21765 i2o_pool_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x90019175 i2o_dma_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xb4289a84 i2o_dma_map_single +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xcce7d7a8 i2o_sg_tablesize +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xd8c9ab5c i2o_dma_realloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xd9696cd4 i2o_dma_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xe1a8e7f6 i2o_dma_map_sg +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x186a96c1 pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x97b81d15 pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xbe43f20f pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x01a32dc9 kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x0326372a kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x4b74e57b kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xc77db464 kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xd173decd kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xe2fb317f kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xe36b11b4 kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xe4dc1f33 kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x0945661a lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x2291e7a9 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xb8837a35 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x4c08904b lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x6ef1ca5f lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x89ee4167 lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xa18b448a lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xc95559dc lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xd3c2d779 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xe8781fcf lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x0864aeb3 mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x3c690747 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x6edcb90f mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x7a56e8a0 mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x7cd34c67 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xdeaa4dd6 mc13xxx_common_cleanup +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x1475cecd pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x3d751713 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x42f1ef1b pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x479e9779 pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x4e5b374f pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xa52a3f1a pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xab3cb942 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xb858bf8b pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xd4b95823 pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xd6e9e1bb pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xf4356f36 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x018a7c5f pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xe6ccb64b pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x121df6fa pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x296ad325 pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xafddeba8 pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xc412b34e pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xeeae6048 pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x01a33234 retu_write +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x4fca3918 retu_read +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x08f07958 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x179bef0f rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x191a0550 rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x3344f285 rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x3635caca rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x3ce22789 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x55a25dcb rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x58a12626 rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x59975557 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x5c3b6275 rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x897f97c0 rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x8aec145b rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x95a001a0 rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x9e7e2813 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xa69b13a1 rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xad5ce0c4 rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xb8842b0d rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xce392dd6 rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xd5a087b6 rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xe195a2ea rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xe34136a1 rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x03ae1cf3 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x13d58ad3 si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x19ff9136 si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x1af3e0eb si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x247b9955 si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x248ad6f4 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x29b649e7 si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x307f4f96 si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3c2551b5 si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4adb6bd7 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x544459b9 si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x61b684c3 si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6933ba44 si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x703bea4a si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x79a43363 si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x810bf3c8 si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8be2df7e si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x92452084 si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x97ef98b2 si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa4bfc768 si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb4fdb241 si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xbd16e930 si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc3357ade si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xce2d0632 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd3840a2c si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xdc5388db si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xdc966fcb si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xdd08a708 si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xef8b3c68 si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf372effd si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf48ade4f si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf5408386 si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfe3fd227 si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xffd9f740 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x1eaf5597 sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x51047f14 sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x7faa636c sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xbb6ceb5e sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xdb7075cb sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x5cb04ffd tps65217_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xa63442ac tps65217_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xa96337ed tps65217_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xeff79298 tps65217_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/twl4030-madc 0x4362dc66 twl4030_get_madc_conversion +EXPORT_SYMBOL_GPL drivers/mfd/twl4030-madc 0x9effbf1a twl4030_madc_conversion +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0xc3753d34 ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x00ead4cf cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x4bd4b864 cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xa3ecf66a cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xdc42bce7 cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x27cb133b eeprom_93cx6_multiread +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x63d2ff63 eeprom_93cx6_wren +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x822222db eeprom_93cx6_write +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x98bb5a22 eeprom_93cx6_read +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x012af2b8 enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x2da321df enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x33ba6656 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x733ba8b3 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x7e8a7df9 enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x8428dcf0 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x9056bff4 enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x093f15b5 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x27152d6b lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x2c914c4c lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x6bd11897 lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x97a05c63 lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xb0c9d75d lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xddd7c28e lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xef5f28b7 lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x4dbbe7cd st_register +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x7a7449f9 st_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x1e9bfe1e sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x2966d53f sdhci_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x2ba9e746 sdhci_enable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x5c387307 sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x73ca1b15 sdhci_send_command +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x90b8c3c2 sdhci_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa4bd6700 sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xad8904f2 sdhci_disable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xadf5bf67 sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xb848840a sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xee2541a8 sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x1df1ce36 sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x270ad22b sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x71395576 sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xa73bb019 sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xa8faf243 sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xce71838f sdhci_get_of_property +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xf0f24b30 sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x47a316b2 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x859416cc cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xbabd3324 cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x3f719ad1 cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x4123d101 cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xcc885557 cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x34eec757 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x37127bda cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x70cfd398 cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xd406ba79 cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x05b0cfdb unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0caaeec8 __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x154608b7 mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1ac97303 mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1cad0bbd mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1d903064 mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x25fa80da mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2e66bbed __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x32d4aafe mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x38177096 mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3a02c250 mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x41a24601 mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x427e1344 register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5a685d5a mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x63052bbf mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6c0d7ae8 mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6f17c03b mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x78d14363 deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7ce1cd9e register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7e0af973 mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7eff1748 put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8606b548 mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x88bd16e6 mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8b3398b6 __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8c2efdf7 kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8e47cf09 mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x94cdfcd7 mount_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa1f6d779 get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa4315481 mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa5fbe203 mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa621d2e8 mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb18813e4 mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb5be3f23 mtd_erase_callback +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xcafabb79 mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xcc764559 mtd_is_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd8256710 mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xda1f1d96 mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf0c68e0e mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf2193ceb get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf8dadd07 mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xff40c3fe mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x423260bd register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x624ac88b add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x9291046f mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xc2cc1be5 deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xfdf82d40 del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0x1c3a84eb nand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0x8389ee1b nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/sm_common 0x91f3b793 sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0xa5af258f onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0xf8d4fcd5 onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x28506e7c ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x2d5e5156 ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x312c3f76 ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x4970b0b8 ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5cd816a8 ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5cfdd22d ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x77ab4aa6 ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x89595bdc ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x8a592e01 ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x8ea70e1a ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xa7a70717 ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc8cf3ac7 ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xde6aaabc ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xe26de21d ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x06ac721f free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x41a58290 unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x4218e5ad c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x6cf90667 register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xbb18b727 alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xbec18752 c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x06a1875e can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x222c295a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2cd34558 alloc_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x33a8145a devm_can_led_init +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x3fbbe7c4 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x511bd4a4 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x74e9591c can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x8093fa80 open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x88a1a8f7 alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xae6836d1 free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb346573b can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb4d47fff can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xbe7723a3 close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xc19cb5a7 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xc663ea12 can_led_event +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xd6ca98d4 safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe9362581 can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x1546a421 unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x4b2ddede register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xae7954cf free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xcb88c7bf alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x0d18fa96 register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x2eecc1ad unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x53ac56ec free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x5753de26 alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x0fa5cdf6 macb_ioctl +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x1576af5f macb_mii_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x58a49f53 macb_get_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x59af4298 macb_ethtool_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x7118f38d macb_set_rx_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x961dbbcd macb_get_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xc748db2e macb_set_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x00926536 mlx4_fmr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0310a80f mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x036620a7 mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0c83e878 mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1396fb6c mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1475a4f6 mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1c3700d2 __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1f58260b mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x21aaa8aa mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x22407580 mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x27e2bd29 mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x29325a39 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x29a1ee2f mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2a3dc479 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2b296158 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x319b87ae mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x36315827 mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x363556b0 mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3b9594af mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3bada670 mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3ca15c41 mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3f239fe6 mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3fd3c5e9 mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3ffe8f32 mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x43e9d420 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x456bd3e8 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4ae773fd mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4c2987c2 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4e9e6085 mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x50cca35e mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5261ca28 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x55a07de1 mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5718d779 mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x57982386 mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5c605a44 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5fc81a2d mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x62808ead mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6281f1c5 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x62b6d8f2 __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x69ec3ab9 mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6bbaaab0 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x72d90e84 mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x731a3f39 mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x735bc35c mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x746580e4 mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x787a5631 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7963c52f mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7e4d4ae3 mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7ea3a192 mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7f48d35d mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x81306e14 mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x89ae04d5 mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8b38270d mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8bb793dc mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8c0598f6 mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9171a0c2 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x92378f73 mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x92f3bf39 mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9356514e mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x94e07a93 mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x952b7c95 mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x95af5eb3 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9a48d3ef mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9a6d8b3f mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa3b1c050 mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa42ec933 mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa42fbdae mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa5ce4979 mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa7b4c939 mlx4_map_phys_fmr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaed11ff9 mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb083cab8 mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb0f67b0e mlx4_fmr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb652c267 mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb87745d0 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbac44bc4 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbb6bdfbc mlx4_fmr_unmap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc15ec192 mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc271af26 mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc33841ae mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc3ada770 __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcaf6647d mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd9978795 mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xde6a760f mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe0be6eee mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe0d9cb57 mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe1634dfe mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe583aa2f mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe70cedf8 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe7bd178a mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe92a3fb8 mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeb6a8efc mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xef4bac27 mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf16a4253 mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf32d4cc3 mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf539962d mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf792781d mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfbbad150 mlx4_fmr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfbf24bac mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfdcf3b03 mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xffbc0ebb mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0b24f73f mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x17bbb7ca mlx5_core_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1c687a40 mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1d54904c mlx5_core_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2818dd8c mlx5_destroy_unmap_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2f91682f mlx5_create_map_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x435a544c mlx5_core_mad_ifc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x57fe18f2 mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5b27d849 mlx5_core_destroy_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6b7be5b5 mlx5_core_xrcd_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x71887bec mlx5_core_eq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x947c0448 mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa7d0bfe6 mlx5_core_create_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd6c4ef56 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe1625580 mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf6572a6a mlx5_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xffda32b0 mlx5_core_qp_modify +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x36af076f macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x487af20a macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xbfd0260e macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xe0630d0b macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xe63cca6d macvlan_start_xmit +EXPORT_SYMBOL_GPL drivers/net/macvtap 0x2b02d96d macvtap_get_socket +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x1a5704b1 usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x4719942f usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x8b60e7b5 usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xbea35eaa usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x086b29d9 cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x382907e2 cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x45fbc854 cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x8b278e45 cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xb7f5b8fa cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xe78b586b cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xf37aec76 cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xfe7d9ef3 cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x088b4fb4 generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x95505fec rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xae52b9dd rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xb1508dbe rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xd8210a5c rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xe0e93bed rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x01376a8d usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x1991da06 usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x212cee90 usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x259f56fc usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x269cce9a usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x26ca4e1f usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x26d9b475 usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x300a0318 usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x34cb58f9 usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x35fe71ef usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x377946ec usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x41d43e59 usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4c1ca1bc usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4de1891f usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x530fab73 usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x60ecd848 usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6acbee39 usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x702ae1c6 usbnet_set_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x999f0272 usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa09dfbd0 usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa8012c9f usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb3619e2e usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb99f914b usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xbb142d36 usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xbc9a33f6 usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xbfd0c1a7 usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc300f172 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc88f090d usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe0d4745a usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe4237659 usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe7e6d911 usbnet_get_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf297c058 usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x17eab110 vxlan_sock_release +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x4e830468 vxlan_xmit_skb +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x9636c884 vxlan_get_rx_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x9f09fa3a vxlan_sock_add +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xf6ea32fb vxlan_src_port +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x0c890f9e i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x0e59c5a3 i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x0eee057d i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x1800c0ce i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x26ef1dd2 i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x283760af i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x35950b83 i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x3ea67492 i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x4f940259 i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x66ab0e11 i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x8a9ee15d i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x9ee0f2b5 i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xcbf79408 i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xcf74dd6b i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xdd91c554 i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe45bb685 i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x108c8cf6 cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x13e8baeb cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x7c044647 cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x7ea72092 cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/ipw2x00/libipw 0x74f53c23 libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x070f177d il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x5e333178 il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x68bd7d15 _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xb2e10701 il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xcefacdd1 il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x0d556623 iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1291ef1b iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1ac36ff0 iwl_notification_wait_notify +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x3d548dab iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x49693866 iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5561ddb3 __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5d0a212e iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x6bdc4d2b iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x76baf8cd __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x7cc6a71e iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8c5d5ab3 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8f6b1faf iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x9bd15536 iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x9f17042c iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xa11e0479 __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xa2f1d974 iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xaa6d08eb iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xb29dd28a __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xb8dd1357 iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc59d1518 iwl_nvm_check_version +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc67c31ed iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc7a06e26 __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc8d6bbfb iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd23f085a iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd5dd222f iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xdb02f9c3 iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xde52d560 iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xf184a49b iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x07d24083 lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x103bd3b6 lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x2401de87 lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x33ebf984 lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x41a6ea31 lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x61f5dac3 lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x73152a12 lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x74ee3ad5 lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x7fa46845 __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x80d982f2 lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x877d79da lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x91edcfec lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xac138d31 lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xc72a896d lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xcfdce09f lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xd57a67aa lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x241c31fe __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x4807b843 lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x5562d958 lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x6b116b9e lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xaeb57524 lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xb3a5cb1c lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xc85e6899 lbtf_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xcb503779 lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xdf0baeb5 lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0x605c9e17 if_usb_reset_device +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0xbf0cc8bc if_usb_prog_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x0da247ff mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x0f282da5 mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x1ad8912c mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x643c7056 mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x8367e9a9 mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x868d5154 mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x87a23ccd mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x9c698765 mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xa60145c6 mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xc844fa72 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xd05ae223 mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xd261f01d mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xd856ce55 mwifiex_deauthenticate +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xf2503430 mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x020a4b2f p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x18d56bb7 p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x23b70489 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x4a44635d p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x5cf5bca4 p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x739a0843 p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x9c1a2ef6 p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xaa58ea3a p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xf87dbb7d p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x018e57ff rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x03d316d6 rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x0f9c98af rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x19785d89 rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1a84d29d rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1c7b213f rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x21cb4391 rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x26fe4231 rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x2bb69900 rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x2cda378c rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3320dabe rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x34583ef4 rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x361ed140 rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x36ca4853 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3d45d4ff rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x47f318c9 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4906b213 rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4d059f4d rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x51a5ce90 rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x5613a3ef rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x5f0b7e9b rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x6569182c rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x76d6e2ad rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7de63406 rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8e1809ac rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa2cdaefd rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa63ee548 rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb1132c41 rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb2cfcc85 rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xc34d71dc rt2800_get_tkip_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd09477bb rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd7f926b7 rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xde6e1142 rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe6dc1643 rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xead6a049 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf70f9664 rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf9a03388 rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xfa0fdb7c rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0978d8e9 rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x4827dd12 rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5c8d7227 rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x63160e20 rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x684c68f5 rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x6c3f802b rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x7293052c rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x75941547 rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x82a123ed rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xb36f6564 rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xb3c9a555 rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xee15ea11 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xf9dad6d8 rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x008685dc rt2x00mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1a4bfd96 rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2b785aca rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2cf9262b rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2ec31854 rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2edf86ab rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x30604d8e rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x32d9adb4 rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x33b1e665 rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x463abb5d rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x496f7711 rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4b9085c7 rt2x00mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4fe911b4 rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5c7f662a rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5cbad2ba rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5ce33ecd rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x732d9a93 rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x74fb8438 rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x7df8b98d rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x857c267d rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x885c4784 rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x88e0d18a rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8b72762b rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8d142746 rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x936eee85 rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x96243508 rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x974c2273 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x97baa44e rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9a835a7b rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9e3f0617 rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa50866ef rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xaa9d77a4 rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xaea4a065 rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc145ab62 rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc62b4be6 rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xcde8dde6 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd088a4d6 rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd0e9e8c5 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd2f8eb97 rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd46696a2 rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd90c1d09 rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xda37ec2c rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xdd193cc5 rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe41e56d0 rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe635684a rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xeddbaf8f rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x0afddbc7 rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x4e827a8c rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x94b3025d rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x9b48d2cd rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xc798d649 rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x16fb7ad2 rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x8c795d24 rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xc4656388 rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xe0d72dea rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x061ad299 rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x084881ba rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x0997e8e0 rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x255c8380 rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x3613ec9a rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x4813edf5 rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x4d52dce7 rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x4e2ad8ad rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x5bd757f5 rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x8c3918c8 rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xaf9517ea rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xbc31cad9 rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xcf504294 rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xe5579a81 rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xe9887668 rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xf9def1b8 rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x84361184 rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8abba744 dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa62912b3 dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd1fc384e dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x04b6823c rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x1c51606a rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x27bf907f rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x296c419a rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x37401782 rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x4390d06c rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x4e3d14ac rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x61063270 rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x628c912c rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6fee3a6c rtl8723_phy_set_sw_chnl_cmdarray +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x77caa1fb rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7cb662e8 rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x81f8f7a1 rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x9b44e31f rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xa6c2385f rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xac120be8 rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xaf4d6d94 rtl8723_phy_calculate_bit_shift +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xc942e59c rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xca2217c2 rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xcd0dff2e rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xd06b39c5 rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xd490f20c rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xda1f34cd rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xdcfd7ebc rtl8723_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xee0725e9 rtl8723_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xef6030a2 rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xf63ac092 rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xfd127d9e rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xfd4f4b0c rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x01c6dcd0 rtl_attribute_group +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x022af269 rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x06df4c38 rtl_dbgp_flag_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x0d0b6636 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x241dedc1 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x310300fe rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x35f01808 rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x5280ae23 rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x569654e5 rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x5b311e7c rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x891d149c rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xad1d9e64 rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xb85a7968 rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xbcc6e31d rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xd6af282c rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xda9a2879 rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xe6170f4c rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xef42e11d read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf31dd7e5 rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf8ff6add rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x3751f9d3 wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x4874b680 wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xc9100c69 wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x05294fba wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0b79bcd1 wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1024f0aa wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x10be348d wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x13bb3e0f wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2a4d2b63 wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2b2b2bb4 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2bb327b7 wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x30a5fa86 wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x33285108 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4c9b3e35 wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5047f95f wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x53dff67d wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x599294cf wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x59bcf2a0 wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5b3ba544 wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5ea67871 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x63569f90 wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6a4060d0 wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6c1408ef wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7af49e93 wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x834882fe wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x834fa17c wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x85d1f03e wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8d1db74b wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x943012c0 wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x95dda30d wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9a1f3491 wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa3162a7e wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa70d8228 wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa74da955 wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa78eb3d6 wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb2625887 wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb6c8e13b wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xba782fac wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xbcd9a5ae wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc0534d28 wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc3e6e4f4 wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc55b41ad wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xcea69cda wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xda0ce01d wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf3691745 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf944704d wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x0523bc6f phy_power_off +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x080e6cf0 phy_exit +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x1958885d __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x1b3b2989 devm_phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x1ba63c45 phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x3d2a3fe3 of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x49588021 phy_pm_runtime_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x6e5acd51 phy_power_on +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x70908a32 phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x73838178 devm_phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x7bf0e5d6 of_phy_simple_xlate +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x81b1ddce devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x99858688 phy_init +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xa1adee4f devm_phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xaeec78a9 phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xcbdc650f phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xd6325691 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xd7731498 phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xda555ab8 devm_phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xdae5ac31 phy_pm_runtime_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xdbd75f50 phy_pm_runtime_allow +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xde1026fe __of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xe5419b8e phy_create +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x0b771392 pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x41a121c2 pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x826afbb5 pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x109bca23 mc13xxx_parse_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x660c6443 mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xa42a7d86 mc13xxx_get_num_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xafe6e784 mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xbc0ff593 mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x1962ebd5 wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x5cf2cfc3 wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x912d2707 wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x98e810d6 wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xe88f41d1 wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xefe7a95d wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0xa2c9d9f0 wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0254442a cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0c0e5f18 cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0fab9281 cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x120b3745 cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1fc9ddb1 cxgbi_ddp_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2036c233 cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x26316868 cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x27c80338 cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2a1788a1 cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3748e97d cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3a5c4389 cxgbi_ddp_page_size_factor +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3c207392 cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4146310a cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x448bf0e9 cxgbi_ddp_ppod_set +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x547c9458 cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x56249fc3 cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x57df3a70 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x59178655 cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5ca8ceac cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x623cca06 cxgbi_ddp_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x625b57c2 cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6a8b1d12 cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x71b4eb7d cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7887372e cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7de7f773 cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8b4f7c44 cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8c2ba369 cxgbi_ddp_ppod_clear +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8ea43ee7 cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x90c44eca cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x94b55513 cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x953157f6 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xae11edc3 cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb65717eb cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb6f607cb cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb764e38f cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb8eb925e cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcebe115b cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd02a57d5 cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd5e9bd99 cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd63f943f cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd8e2ce03 cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xddc7614d cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xea8bc342 cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xec135d39 cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf0d64c36 cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xfd0bc030 cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x4ad3dc97 scsi_register_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x593a36c2 scsi_dh_handler_exist +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x93f46cff scsi_dh_set_params +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xc0ed60cf scsi_dh_activate +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xcab02bea scsi_dh_attach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xd0969fbd scsi_unregister_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xf452a400 scsi_dh_detach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xf70e7065 scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0f2f5c5f fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0fb51275 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x3460afe6 fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x374c1e1c fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x3c1f915c fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x3cb6cdc3 __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x4c7c0263 fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x4eeb30b1 fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x4f4bc2d2 fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x54ce8750 fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x5f7c393d fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x68f5e4f3 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x762fd006 fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x835a6c7d fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x84b3d915 fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x9bc68b53 fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xb6e39067 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xdb3003fe fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xe286c12e fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x043f0157 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x14fd73e7 iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x1a4852cb iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x235b4feb iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x440f4909 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x8b816ea0 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x01ecaab2 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0fe9f24c iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1058cc84 iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x17596ebd iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x209f1358 iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x20be5599 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2277d859 iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x231c976d iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2aff0278 iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x31e2da6b __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x393e7a92 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3a964436 iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3e58ca7e iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x468c862e iscsi_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4be25af5 iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6c0a66ac __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6fe7be09 iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7ab8096c iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7faa3068 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x802a43c3 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x877b62ca iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8cf76110 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x93e940e2 iscsi_eh_target_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x98432f4b iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa00afff6 iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa04a49b2 iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa83ba5e6 iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa96c1eeb iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb0c841e1 iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb491760b iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbb18cd3b iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc63f888a iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc711e2f2 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xcd2b6bb1 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xda24b43c iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdb402442 iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe3d799e0 __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe4ad9b34 iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe56c40f7 iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe70b4b20 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xed77ff58 iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf12ca3d0 iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf4e7b56e iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfc6a1555 iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x10dfbb07 iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x1d6053d4 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x3ea4eeca iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x43f936c6 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x623ce961 iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x66cffbcf iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x72bbb789 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x7a07a672 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8d003dc7 iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8e4bdc4c iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xbe5f3726 iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xc5133b91 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xcaf7fe00 iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd26cd671 iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd2d96efe iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd64b227e iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe5a48348 iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x05f33902 sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0dbe8e41 sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1e5e35e1 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1ed5cdbe sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2c748b82 sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4eb623ef sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5629a694 sas_eh_bus_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x56f2603b sas_change_queue_type +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x574a4f32 sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5e341a1c sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6a0af036 sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6d2bb38d sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7040b0a7 sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x879468a0 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8b401d5f sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x95719fea sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x99389eb6 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa34bfa13 sas_domain_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xac337aad sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xca2ffeae sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xceae4b8b sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd9555d21 sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd9573fe6 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf03b9778 sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf58d9b91 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x1d7f9611 srp_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x6c971246 srp_transfer_data +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xa239e924 srp_iu_get +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xb01a215f srp_iu_put +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xed3f028f srp_cmd_queue +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xf30f0507 srp_target_free +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x267f2fbd scsi_tgt_cmd_to_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x4ef85fae scsi_tgt_it_nexus_create +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x7f646a5e scsi_tgt_tsk_mgmt_request +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x9acf2e8a scsi_host_put_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xa310678e scsi_tgt_it_nexus_destroy +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xa3a1cfa6 scsi_tgt_queue_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xa97d26fc scsi_host_get_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xcd5969fe scsi_tgt_free_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xfb59267c scsi_tgt_alloc_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x05957715 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x06e86bd6 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0f852287 iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x24ffb68e iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x25121102 iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x25b436d3 iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x270741e0 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3044c63e iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3bdca240 iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x451290c6 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4544737b iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4970c6f5 iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x565358e5 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5a04348e iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x61e16ac2 iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x632177e3 iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x649b3755 iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6563c1c3 iscsi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6789d5b1 iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x68a86a30 iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6b54a03e iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6bda4f24 iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x765f5e47 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x91a47deb iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x93a1afe7 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9692d672 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xab0eab8a iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xad0bfd81 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xae74c55d iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb76ed202 iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbf4948c9 iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc092ae27 iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xca34304d iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcfd45745 iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xdba1b79f iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xdc088fd2 iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe331a990 iscsi_is_flashnode_conn_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe33986ad iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe4527c8f iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfdc44c8a iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x0b38ce12 sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x31ecda39 sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x67f4ea7d sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xee9e5d83 sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x3cdb6651 srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x98bfd351 srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xace6504d srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xe1b59305 srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xee891cc0 srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xf9c320bc srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x039948f7 ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x0e177be9 ufshcd_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x1766952d ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x1c35aa79 ufshcd_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x34026b75 ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x731a2237 ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x1ead0617 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x21ed4ec8 spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x4b81aa6a spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x979e73bf spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xe513d95c spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x194940a2 dw_spi_xfer_done +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x9c8e4e1f dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xbf1c3a60 dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xcb2bd5b6 dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xcb6652dd dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0x48bbe1be ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x03aef264 comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0887bc5d comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0a84c75e comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1035a376 comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x187221df comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1c9f71ab comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1f3974f1 comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21584429 comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x223ec736 comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x269f2706 comedi_buf_memcpy_to +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x275ff027 comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2fc49d93 comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3091ca52 comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3bc9d4f1 comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3c23001f comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3c5c6d7c comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x42ab24bf comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x45067163 comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5e43dd31 comedi_pcmcia_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6b47c033 comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x70c66c0e comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x745315f4 comedi_to_pcmcia_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x750eb8e7 comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x84a9b533 comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x86c76c37 comedi_pcmcia_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8ac2353c comedi_pcmcia_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8cd11621 comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8f81ea18 __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x91179e5c comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x993af3fd comedi_pcmcia_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9e305081 comedi_pcmcia_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9f3ef5e2 comedi_buf_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa75b0829 comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xae426272 comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb406a104 comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb6b4cc78 comedi_buf_get +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbce647f1 comedi_error +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc0ae3479 comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc38de5af comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc97e4576 comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd0ab8141 comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe3e48488 comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe6f41181 comedi_pcmcia_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe7e731b0 comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe87c1ce8 comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf377208c comedi_buf_memcpy_from +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf560ed62 comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf5ff3496 comedi_dev_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x3cfeb86b subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x46e0d9f1 subdev_8255_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0xe274b51f subdev_8255_init_irq +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0xfcdb54f0 addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x6871f8f7 amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x71b22867 amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xf54c8e10 amplc_dio200_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x186b337e cfc_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0xf1b6b3b3 cfc_write_array_to_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0xfb229acb cfc_read_array_from_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0x16836c56 das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x038d7504 mite_bytes_written_to_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x23c5875a mite_setup2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x2b794280 mite_bytes_read_from_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x32151735 mite_dma_tcr +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x447cae8a mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x691724a1 mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x6ef96804 mite_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x719914c5 mite_setup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x7423bcbe mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x95f19c43 mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x9d145d7f mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb05a46a9 mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb702ca4d mite_sync_input_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb909d7f1 mite_sync_output_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc030b9e2 mite_bytes_read_from_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc3f61a0a mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc60a8fc2 mite_unsetup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd6a22ddf mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe11ce344 mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe4ff0dfb mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe8c48e66 mite_bytes_written_to_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xf919c537 mite_get_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc 0xada6810b labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x2e254703 ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x385293a0 ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x481e0ade ni_tio_rinsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x6ff988d0 ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xa3a62b2d ni_tio_winsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xa6a523cc ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xb5f86770 ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xd6f2b075 ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xa436609b ni_tio_acknowledge_and_confirm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xa956a1a7 ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xb0b0d639 ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xdf5ee0f7 ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xf0f0bdd9 ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xf4e47a14 ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x4bf35ad0 comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x68a71f42 comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x73ab7385 comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x848f681f comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xb9328373 comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xd04330c2 comedi_close +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xdd60341e comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x2206b003 dwc2_handle_common_intr +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x5cfd03bc dwc2_hcd_remove +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xb05a818c dwc2_set_all_params +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xdcd4750b dwc2_hcd_init +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x1a1b5249 oslec_flush +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x2feda75b oslec_hpf_tx +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x3227a28e oslec_snapshot +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x7dc9dddd oslec_adaption_mode +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xb2c66001 oslec_create +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xc8b5a524 oslec_free +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xd370f679 oslec_update +EXPORT_SYMBOL_GPL drivers/staging/rts5139/rts5139 0xbd5a0e51 rts5139_usb_ids +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0e81c76d spk_serial_out +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0ef1d765 speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x14f06fe7 spk_serial_in_nowait +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x20e5ba06 spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x3598da7a spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x475e158a synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x5c70aa6b spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e146195 synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x989eb695 spk_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9a888082 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9f281400 spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb26234d8 synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb35aaab9 speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb48956f8 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc766ae09 synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xcf3f60fb spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd1b551a2 spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe1d8f6c3 synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7e810f8 spk_serial_in +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xf7ac6d10 spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xf8c9f7aa spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x04cc7e13 usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x0d567301 usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x0f852d0a usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x32c6cbb5 usbip_recv +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x54f54744 sockfd_to_socket +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x5dbd87de usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x77908fde usbip_event_add +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x9674884f usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xa173ea25 dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xa4a8ef6d usbip_start_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xa9be0d48 usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xbcd59359 usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xd02753dc usbip_header_correct_endian +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe1ea0586 usbip_dump_header +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xea8affa5 usbip_event_happened +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x585ebaac n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0x0b8223ca pciserial_init_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL drivers/uio/uio 0x0994bd5d __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xbf018224 uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xe49038af uio_event_notify +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x0695355a usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x8139cb2f usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x47091bef ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x54c1d318 ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x170e9bea imx_usbmisc_init +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x74750d38 imx_usbmisc_init_post +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x031a3d9b usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x1f59f85c usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2c0e4842 usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2cc1a35f usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3083b2ca usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3cb95f37 usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3cc63b29 usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x43a83f22 usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4a1e64b5 usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x535b6c34 usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5a385434 usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5cf1e1cc usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6da59e81 usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7120d2e6 usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7c75d9e2 usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7e61b659 usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8612b874 usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x883bf626 usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x935236bd usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x94d7075a usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xbf3e8e48 usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xc4b47457 usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xce31095a config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd0c92e91 usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xeaac5f6a usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf339cfcf usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf87a9c31 usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfc064a26 usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x5d306374 gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x8e27d6de gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xf1981607 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xfc2125f3 gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x0ab44181 udc_attach_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x0e78d8f0 usb_gadget_probe_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x0fd7c706 usb_del_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x54b1b0c6 usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x62462299 usb_gadget_map_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xa5d73569 usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xaeb4353e usb_gadget_set_state +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xd0fb2479 usb_gadget_unmap_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xe1faa366 usb_add_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x0a5230df fsg_common_set_nluns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x141fce2a fsg_common_remove_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x1ccb58f7 fsg_common_set_num_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x2d10b6a7 fsg_common_create_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x51707c29 fsg_common_run_thread +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x6acb4179 fsg_common_set_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x7e26d4a5 fsg_common_set_sysfs +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x99023bfc fsg_common_put +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9a0221c7 fsg_common_free_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9dc025a5 fsg_common_free_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xa33e33c2 fsg_common_set_cdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xa46e6443 fsg_common_get +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xcb3ce64b fsg_common_remove_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd3ae3b65 fsg_common_create_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd468f882 fsg_common_set_ops +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xe4d1591e fsg_config_from_params +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x12d34121 ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0xf586647d ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x051fc0f0 usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x13ff8e2a usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x164a85e2 usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x26ad1e70 usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x600746ef ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x868a292f usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x871089b7 usb_ftdi_elan_edset_output +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xa48d1be6 usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xbf845e1a usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xc9ee034e musb_interrupt +EXPORT_SYMBOL_GPL drivers/usb/musb/tusb6010 0x5304ac0f tusb_get_revision +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x01779179 usb_gen_phy_init +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x772fd0d5 usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xc6156ecd usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0xa73e0307 isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x06f0be19 samsung_usbphy_rate_to_clksel_64xx +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x29d1609a samsung_usbphy_rate_to_clksel_4x12 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x5e02bf0a samsung_usbphy_cfg_sel +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xa53c06f5 samsung_usbphy_parse_dt +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xa7eded07 samsung_usbphy_set_isolation_4210 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xdd2dd9c5 samsung_usbphy_set_type +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xe2159315 samsung_usbphy_get_refclk_freq +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0x9ff00075 usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x0a61a7d8 usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x22bb244d usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2385f4c5 usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x26a97803 usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x39187f6d usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x3b9f7d1e usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x489bb13e usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x4c92b31f usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x50f0c4ba usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x51156278 usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x8796790f usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x90496215 usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x90caf2ed usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc0bea055 usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc61dd477 usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc623c3f4 usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xcc8f31f2 usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xd2c4b5e0 usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xdcb7e5c5 usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xe40f3b0b usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xf597494b usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x087ce1c1 usb_stor_control_msg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x1bc3edc2 usb_stor_sense_invalidCDB +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x38e03aec usb_stor_disconnect +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x44d520f2 usb_stor_suspend +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x49957b68 usb_stor_CB_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x59eaf4be usb_stor_bulk_transfer_sg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x5c414139 usb_stor_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x5cd4a42e usb_stor_CB_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x70e4f8a7 usb_stor_Bulk_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x72ee031a usb_stor_bulk_transfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x76af2d6b usb_stor_transparent_scsi_command +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x77e6dcc2 usb_stor_bulk_srb +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x82cb483c usb_stor_reset_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x83f47adb usb_stor_pre_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x8948b765 usb_stor_access_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x95dd21bd usb_stor_post_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x989e7bca fill_inquiry_response +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x9ff3cdbd usb_stor_probe2 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xaf02de4b usb_stor_Bulk_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xb0e69ad9 usb_stor_probe1 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xb998938d usb_stor_ctrl_transfer +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xd64dce49 usb_stor_clear_halt +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xecb8d66e usb_stor_set_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x3abac827 rpipe_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x74206028 wa_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x7634de35 rpipe_clear_feature_stalled +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x99b7f62f wa_urb_dequeue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xc543b60e wa_process_errored_transfers_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xcb55ad58 rpipe_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xeac3f75a wa_urb_enqueue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xf1634fe2 __wa_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xf4654c3f wa_urb_enqueue_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x0bb6bf5e wusb_cluster_id_get +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x0c37a521 wusbhc_mmcie_rm +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x26748515 wusbhc_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x28651671 wusbhc_handle_dn +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x30788f86 __wusb_dev_get_by_usb_dev +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x3c13781b wusbhc_giveback_urb +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x4a30ee91 wusbhc_mmcie_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7912eb41 wusbhc_rh_start_port_reset +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7f0b7631 wusb_dev_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7f148730 wusbhc_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x9111eaf0 wusbhc_reset_all +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x9c44aafd wusbhc_b_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x9d4e1d7f wusbhc_b_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xb3fda1d9 wusbhc_rh_control +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xb725d128 wusb_cluster_id_put +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xc2cd3cc2 wusbhc_rh_status_data +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xe65d4100 wusbhc_chid_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf770a6b4 wusbd +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xfe2e17d7 wusb_et_name +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x1e7850e5 i1480_rceb_check +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x5459a462 i1480_cmd +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0xf7bd13fd i1480_fw_upload +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x2f979727 umc_device_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x3588bf58 __umc_driver_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x437fe39a umc_match_pci_id +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x441c93db umc_controller_reset +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x58d445a0 umc_device_create +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x8f1fa422 umc_driver_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xa97cf03e umc_bus_type +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xc32a9687 umc_device_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x032214bf uwb_rc_neh_grok +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x060bdc50 uwb_est_find_size +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0aa17748 uwb_pal_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0b8aad57 uwb_est_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0c6cd75d uwb_rc_cmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x12caac20 uwb_rc_alloc +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x16200f93 uwb_rc_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x1a257050 uwb_rsv_establish +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x1cf2aa38 uwb_rc_ie_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x243af4b5 uwb_dev_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4438ed07 uwb_rsv_get_usable_mas +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x46849c15 uwb_pal_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x48f99528 uwb_radio_start +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4b7f59e9 uwb_dev_for_each +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4d57ae3c uwb_rsv_type_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5e4bc088 __uwb_addr_print +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5fc0aff4 uwb_notifs_deregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x736ca8d3 uwb_rc_mac_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7c3b99c8 uwb_rsv_terminate +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7dcfcd23 uwb_ie_next +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x80923fde uwb_rc_pre_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8314de98 uwb_rsv_create +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x83f73915 uwb_rc_neh_error +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x857bbad1 uwb_rc_get_by_dev +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x888af4b7 uwb_rc_put +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x98413234 uwb_rsv_state_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x9d92ce9d uwb_rc_post_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa1e79240 uwb_rsv_accept +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa8db8dea uwb_rc_cmd_async +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xae970ee7 uwb_rc_dev_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb2ae62ca uwb_pal_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb98b39ec uwb_rc_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xbc4c8b07 uwb_rc_get_by_grandpa +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xbc9e9f2d uwb_rc_vcmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc8b9cd4a uwb_rc_reset_all +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd3c85852 uwb_rc_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd4e51947 uwb_rsv_modify +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xdbde469e uwb_rc_ie_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe1716f06 uwb_est_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf192c73a uwb_rsv_destroy +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf2058265 uwb_radio_stop +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf5c9bf37 uwb_notifs_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xfbb5f8dd __uwb_rc_try_get +EXPORT_SYMBOL_GPL drivers/uwb/whci 0xad2a9178 whci_wait_for +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0d51a4fa vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1a2c98b0 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1b0f8d95 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1ddba8aa vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x208584ed vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x219ead00 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x269f7a09 vhost_dev_reset_owner_prepare +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2fbeb575 vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x37ee5483 vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3c57096a vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x41cdc8cc vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4745afa8 vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4e79aeda vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x67d4b207 vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x73f2932e vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7ae2df6e vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8c941d8a vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8d2c833d vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9660205f vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9a24feef vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9ddd394b vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb0f81e37 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb4ff870e vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd3935f79 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe28d8ec6 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe71daaa6 vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xedf59029 vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf95d941f vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xfa85e1df vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xfcde7aba vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xff6200f0 vhost_init_used +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x04b201b0 auok190x_send_cmdargs_pixels +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x06de7f34 auok190x_send_cmdargs_pixels_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x202fdc43 auok190x_read_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x5ae74b0c auok190x_send_cmdargs_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x6bd95798 auok190x_common_remove +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x6e11971b auok190x_send_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x760c93a7 auok190x_pm +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xa55e6fc0 auok190x_send_command_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xb90027ff auok190x_common_probe +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xdae63c1e auok190x_send_command +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x07040633 ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x257f6f08 ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x2a4ebc09 ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xa5757a53 ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xff74e4d8 ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0x4d084c86 sis_free_new +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0x8b2dfd66 sis_malloc_new +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x025ac837 unregister_virtio_device +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x60ee36c7 register_virtio_device +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x8a91642d register_virtio_driver +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0xc9637bc2 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0xe4453be9 unregister_virtio_driver +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x3be7c512 vring_transport_features +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x40a49ca0 virtqueue_enable_cb +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x472ef42f vring_new_virtqueue +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x50a012f9 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x5be5542a virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x5d8d9a17 virtqueue_notify +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x614d0fa6 virtqueue_add_sgs +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x7d1166ef virtqueue_is_broken +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x8bc1a758 virtqueue_get_vring_size +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x911ada59 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x9eabe33f virtqueue_kick +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xb3401a93 virtqueue_poll +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xb8a285d8 virtqueue_get_buf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xd299b56f vring_del_virtqueue +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xd8874cd9 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xebfef158 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xef350aa2 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xfb6fc9ac virtqueue_disable_cb +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL drivers/w1/wire 0x02ca10a9 w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x282aae8f w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x402bf941 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x508e1658 w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0x7c2f2afb w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xc7cfb8b0 w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xcaf89237 w1_next_pullup +EXPORT_SYMBOL_GPL drivers/w1/wire 0xdf613bbc w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xe6b3f188 w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0xfa8a1542 w1_read_8 +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x621d1d92 dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x9321df95 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xa0c574ad dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc6dc8c2f dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xd9bb92d9 dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xdc583c08 dlm_unlock +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x17ce645d locks_end_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x861ed299 locks_start_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x887cdc0e nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x8a2af28f lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xb18cb84e nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xbf495d0e nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xde450020 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xe475fee5 nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xe6e5adfb locks_in_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xe9eb07c6 nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x02055fe5 nfs_fs_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x02d5439f nfs_fs_mount_common +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x038630db nfs_initiate_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x03873c4a nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0675f880 nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x06f28e27 nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0a43382e nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0bff1020 nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0c641b86 nfs_set_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1221e45d nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x142c8cdb nfs_initiate_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x14acebd5 nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x14cbdde0 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x16bfbd6b nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x16c2fe44 nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x19a228be nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1b825ced nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1d7f0f58 nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1ec73f3a nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x20cc9dc1 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x243a26c2 nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x27213ecb nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x275ca274 nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2a38b82f nfs_file_fsync_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2cda5d40 nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2eca6e1d alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2fc96c2f nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x314847fd nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x328d75ca nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x32dec8a7 nfs_pageio_add_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x32f03c37 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3438ae41 nfs_destroy_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x356e30cd nfs_put_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x366c258b nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x36e88a6c nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3769f6cf nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x379df71e nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3942f186 nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3984a826 nfs_clone_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3c5ca763 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ca31f35 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3caee7d7 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3d99b1b9 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x43cfa68f nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x492f74ca nfs_file_splice_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4a8377ab nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4c11103c nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4c63a161 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb5eece nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4e794b31 nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4f8bf0e7 nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x506bd0fd nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x50c11ea0 nfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x525c7785 nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x52eb671d nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x52ec1dfd nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5524372c nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e1d863a nfs_sockaddr_match_ipaddr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5ea8c0c0 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5f4049fa nfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x60a582d2 nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x67cec20d nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x77072027 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x789d000a nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7b40f13b nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x84847ec1 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x84d4b1ad nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x88a0d9c1 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89bc5a64 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89bf4daa nfs_try_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8cba0913 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8dd72b56 nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8f16be4e nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91e44d34 nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x93147233 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x93e41cd1 nfs_writedata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x946fe842 nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x961be488 nfs_remount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9751b7c8 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98eb8d82 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x993063fd nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9c13d068 nfs_generic_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa11607ab nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa13918da nfs_pageio_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8b718bf nfs_setlease +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8d2d1ce nfs_callback_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaa07d007 nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaaa14361 nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaaeb18f7 nfs_file_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb5df1de0 nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb606e716 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb6e558c9 nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb77744a0 nfs_pageio_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xba8cb3fa nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbcb5d52c unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbd09da28 nfs_generic_pagein +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbed84948 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbf009573 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc0f05ab8 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc1736837 nfs_writehdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc211afa4 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc35ddab6 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4ff1e9f nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5ef47d5 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc9de240c nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcd1e7ee9 nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd014e9d1 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd0e0bac0 nfs_readhdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd18324a6 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd35adcf6 nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd591bfd3 nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd5e4b330 register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd73da018 nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd8fe71cf nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdb851589 nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xde4c5f30 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdf5184e8 nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe05cded5 nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe1070f87 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe468acd0 nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe55d3f20 nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe972d35a nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe9b1f65d nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xea174926 nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf0149ce6 nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf10e5f0f nfs_readdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf1b81af1 nfs_fill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf4cc186e nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf52c2c3a nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb1945d2 nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb429f12 nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb6d6f15 nfs_file_splice_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb7ee006 nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc79cb4a nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfcb0ca48 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xff32d319 nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x05da81a3 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0afe0d70 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0c76516e pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x11bda27c __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x170f3ed6 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1d3b5d3d _pnfs_return_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x241a549e nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x25beefbb nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x292d10ec pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x305c2933 pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x32ee9253 nfs4_insert_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x34ed6648 nfs41_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3eed11bb pnfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3f5443bc pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x440f968c nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x482a4d76 nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x58c90519 nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x662fddef nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x665fa50e __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x68523fe7 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6feb4b8f pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x71fc6052 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8f34ac6a pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8fac662b pnfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x98f9b70b nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9ef10755 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xaa421151 pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb4928123 nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb51438ba pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb5a1c65a pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb7123c88 pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb78c21bd nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc845c295 nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc8c20a00 pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcb67c730 pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcf2648c9 nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd4ab2c82 nfs4_proc_getdevicelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd683a896 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdb813e84 __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf19388e9 nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf354a0eb pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfb91489b pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfe60c40c nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x7bc213c4 nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xf64f3d26 nfsacl_decode +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x0d968f6b o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1cb231d0 mlog_not_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1d747ce3 o2hb_check_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36418553 o2net_send_message +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x3ed7a3b6 o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x687f6251 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa734cc55 o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa82a8645 o2nm_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa9f5379a o2net_send_message_vec +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xae808bac o2net_register_handler +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xbaeb4700 o2hb_check_node_heartbeating_from_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc3679d7b o2hb_get_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xccc5c524 o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd60f2c6c o2hb_check_local_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xe1cc3811 o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xea059ae2 o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf0fc005c o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf1a5611d o2net_unregister_handler_list +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x1d665d3d dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x20ade309 dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x28c33163 dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x57ba3db3 dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x6dff8ca9 dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x70b8d608 dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd7ba575e dlm_errmsg +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd8fa57a6 dlm_unregister_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xfb86b96f dlm_errname +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x025e2d69 ocfs2_cluster_connect_agnostic +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x0562c415 ocfs2_cluster_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x16b2e575 ocfs2_dlm_unlock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x3a9beb92 ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x424d8947 ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5469ce31 ocfs2_dlm_lvb_valid +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x7083dbd5 ocfs2_dlm_dump_lksb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x89502fe7 ocfs2_cluster_connect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xb4bd060c ocfs2_dlm_lock_status +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbbc4ef97 ocfs2_stack_supports_plocks +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xdc823ea4 ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe2bd47db ocfs2_dlm_lock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe40cffce ocfs2_stack_glue_set_max_proto_version +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe417d940 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xea87e839 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL lib/bch 0x231d70fc encode_bch +EXPORT_SYMBOL_GPL lib/bch 0x6b770f49 decode_bch +EXPORT_SYMBOL_GPL lib/bch 0x9463ff71 init_bch +EXPORT_SYMBOL_GPL lib/bch 0xbdf512de free_bch +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x6e1874d4 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0xa2fcbca5 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x021957e1 raid6_datap_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x05513b71 raid6_call +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x0f8a2742 raid6_2data_recov +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x201d8ea3 encode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x29fa419f decode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x300d7e57 free_rs +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x6fbb3bd9 init_rs_non_canonical +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xabda1e2e decode_rs16 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xb050f329 init_rs +EXPORT_SYMBOL_GPL net/802/garp 0x0a1a0492 garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0x3b02d21c garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0x450bb099 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0xdcbc4f78 garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0xea9c47fd garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0xed91dde9 garp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x155b1107 mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x31e9dd78 mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x5369ef8d mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x645ccb91 mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0x70359419 mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0x92233449 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/stp 0x740bba70 stp_proto_register +EXPORT_SYMBOL_GPL net/802/stp 0xc4b3fa49 stp_proto_unregister +EXPORT_SYMBOL_GPL net/9p/9pnet 0x39a68381 p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/9p/9pnet 0xa93be7e1 p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/atm/atm 0xb09faf79 register_atmdevice_notifier +EXPORT_SYMBOL_GPL net/atm/atm 0xcfb6a3da unregister_atmdevice_notifier +EXPORT_SYMBOL_GPL net/ax25/ax25 0x473a5552 ax25_register_pid +EXPORT_SYMBOL_GPL net/ax25/ax25 0xac93ae05 ax25_bcast +EXPORT_SYMBOL_GPL net/ax25/ax25 0xaeb7451e ax25_defaddr +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xf5579ab8 bt_debugfs +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1d99d49a dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x21ed598c dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x228ffd1f dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x28f08193 dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x31ff560f dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0x35dda9dd dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4a3da681 dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4ec35231 dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5a46abcb dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5e6f0e79 dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x61175c0b dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0x65b0ae92 dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6852f83f dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0x69891419 dccp_insert_option_elapsed_time +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6a4c2eae dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6b4b5711 dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x713c2e4a inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0x78138529 dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0x82153f74 dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8825a470 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8e8487a8 dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8f7417e6 dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x93b9f96a dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9b7e0712 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xabf95e87 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb5a926b2 dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb90260a2 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc40104ba dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcc09dbcb dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcc8f4748 dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0xce24ca74 dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd396acea dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe33734e5 dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe7a593eb dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0xee04667b dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf3017e21 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0xfd379419 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0xff7ff6a9 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x4be1c8e8 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x6869e7bd dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x7b3cebe6 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x84329f70 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xd8ba072e dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xe67c80d3 dccp_v4_connect +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x248fe091 unregister_switch_driver +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x9f437c50 register_switch_driver +EXPORT_SYMBOL_GPL net/ipv4/gre 0x0c9bff44 gre_cisco_unregister +EXPORT_SYMBOL_GPL net/ipv4/gre 0x65e5fce6 gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0x72d93f82 gre_build_header +EXPORT_SYMBOL_GPL net/ipv4/gre 0x7d0ba0a4 gre_cisco_register +EXPORT_SYMBOL_GPL net/ipv4/gre 0xc4273316 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x3a9102bf inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x9b1e91a1 inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xaf031144 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xb475af48 inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xc2836207 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xc84942a5 inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x110335be ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x263e17dc ip_tunnel_delete_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x299e1156 ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x4a184e7c ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x540fd596 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x88b9f582 ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x8dedc809 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x93e7dc01 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa36f564d ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa418fbea ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xbc0c5896 ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xc4f65651 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xd2b9732e ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xf12e8080 ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x26549dbe arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0xc34198e2 ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_conntrack_ipv4 0x6d40a921 need_ipv4_conntrack +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x6b6c3d10 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_ipv4 0x0324daa7 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_proto_gre 0x636b12c8 nf_nat_need_gre +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x76e3c424 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x8a49b301 tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x947e6eb3 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xaa143f1c tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xede4c0c4 tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0x4c9a0585 xfrm4_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0xe18c95b2 xfrm4_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x0780e4b8 ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x0d1f55ff ip6_tnl_dst_check +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x5fd0bb1e ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x849f8140 ip6_tnl_dst_store +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xa44536f2 ip6_tnl_dst_reset +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0x74c007b3 ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x6eb85693 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_nat_ipv6 0xf5290c25 nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0x0bdd5d17 xfrm6_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0xc74be3ab xfrm6_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x206da3ab l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x30b8b4c0 l2tp_session_queue_purge +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x4721f412 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x4cce1ad5 l2tp_session_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x644ef824 l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x64f45162 l2tp_session_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x72f7e7be l2tp_tunnel_closeall +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x84a771ce l2tp_tunnel_sock_put +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x85ea0daa l2tp_tunnel_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x8fc2724e l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa0013bdf l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb3f415e8 l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb7ef295b l2tp_session_find_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb96bac56 l2tp_tunnel_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc8a0d74f l2tp_tunnel_sock_lookup +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc9157023 l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe43d66c4 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x6d926818 l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x0f82c721 ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x0fa35fb6 ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x1cbbb743 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x2c6c1c04 ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3663a36d ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3d7045f5 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4bf42798 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5b3408e5 ieee80211_iterate_active_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5d38f601 ieee80211_set_key_tx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x76721259 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xde497104 ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xeabb987d ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf64f6964 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf8fd2d3a ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xfd4350ed ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x2dfc091b ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x54b4ff6c ip_set_get_ip_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x5e74ad74 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6344eaf6 ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6d691cee ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6dc6cef2 ip_set_nfnl_get +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x82886dc1 ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x82d7ce6b ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x8c4c3773 ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x92868c57 ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa2d623f3 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa82f7c3d ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa9068b5d ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xdd86c616 ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xe7785064 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xef13ebbe ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf6b6dd72 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xfa76263a ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xfb9ccf9a ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x5a8a01c7 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x62e7194e ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x6a5e0862 unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x76d7b35d ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01f84db5 nf_conntrack_set_hashsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x045072cd nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x083c1562 nf_ct_l4proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0ba8a23a nfnetlink_parse_nat_setup_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x153e3fff nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x169b37b3 nf_ct_l4proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x16fb5aff nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x19d154a6 nf_conntrack_l3proto_generic +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1e0881ca nf_conntrack_l4proto_tcp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1e2a6b4d nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x208ef810 nf_nat_seq_adjust_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x21b8890e nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289c3714 nf_ct_alloc_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2a9383f4 nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2c3ee348 nf_conntrack_l4proto_tcp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2c43d4da nf_ct_l3proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2e5a982c nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x37386cac nf_conntrack_hash_rnd +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3e0f95b7 nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3f5b1415 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x41d98fbf nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x427a6aa3 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x48c02a49 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x48c8c6eb nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4b22cc42 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4d01d52f nf_connlabel_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4f35ffaa nf_conntrack_flush_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5ecba059 nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x621cd8dc nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62813e5c nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x656d37b9 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6ca9a325 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6e224a7a need_conntrack +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6fff8279 nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x709fb6d7 nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x732b504d nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x78f9b710 nf_ct_l3proto_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x79e9e23e nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7d8632c0 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7e05a172 nf_ct_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7f5c3296 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x829ec793 nf_conntrack_l4proto_udp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x82b6e807 nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x82be8499 nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8af236b9 nf_connlabel_match +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ba9a6a2 __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8f54054b nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x90ff6c9f nf_ct_invert_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x97b84768 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa1a31cff nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa23a7397 seq_print_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab3d1f95 nf_ct_untracked_status_or +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad1bb027 nf_ct_free_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaf15b3e2 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaf7b8e42 nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb02f3a05 nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb0a8a511 nf_conntrack_l4proto_udp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb19542bd nf_ct_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb384f3cc nf_ct_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb476f8c6 nf_ct_l3proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb602c57e nf_ct_l3proto_module_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb7d43791 nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbe404ca7 nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbfb8fcbb nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc03abe3e nf_ct_l4proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc11c3410 nf_ct_iterate_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc405bf3b nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcaf9547f nf_ct_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd1fe5575 nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd20ae17f __nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd23e0974 __nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd3c34efa nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd52e4ca9 __nf_conntrack_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd53e9989 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd599a07c nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd6d9817d __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe03e3745 nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe072fbd3 nf_ct_l3proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe660be0d nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeb2b07a6 nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeb47e974 nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeb6217f3 nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xee7585e4 nf_ct_l3proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xee8b066d nf_ct_l4proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xefd768ba __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf02e9a41 nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf3f84c3b nf_ct_l3protos +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf75c511d nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfc0a43e4 nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfe2e7f52 nf_ct_get_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x7b84401c nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0xfec9dce8 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0x0fc7ec62 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x291f1547 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x34f79c8a nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x541f2519 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x7f7d58cd set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x8e8003fe nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x90e87e1c set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xc79681df set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xcb89891a nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xf0fe1605 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xf7360d19 nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0xbfef449a nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x3f74a531 nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xaf3d6ba0 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xcce5fb00 nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xf369307b nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x35b0c9c8 nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0xc79ec434 nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x3b8ad802 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x50a7efb2 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x653b888a ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x6d3037e2 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xa441aec3 ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xc47249ec ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xfb7a0700 nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0xcb4e7c25 nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0xcb183a7f nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x032e5894 nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x05e887ce nf_nat_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0cb98903 __nf_nat_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0d9bae4b nf_nat_l4proto_nlattr_to_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x131f636c nf_nat_l4proto_in_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x1b93ee10 nf_nat_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x8ca98f62 nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xaa6e86e1 nf_nat_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xee19d194 nf_nat_l4proto_unique_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xf8c5dcba nf_nat_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x11a006b5 synproxy_check_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x4b8d4476 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x5f339439 synproxy_build_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x90298227 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb42e336a synproxy_options_size +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xcb42434e synproxy_tstamp_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xef7db50c synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0fda3c99 nft_validate_output_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3bbd6d22 nft_register_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3d49dab7 nft_validate_input_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3ec78afc nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x41da2b56 nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x60b256d8 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x664e2b12 nft_register_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6f4100b9 nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa104891e nft_data_uninit +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xabe5a212 nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb12717d7 nft_validate_data_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc34df561 nft_do_chain_pktinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xdf14440c nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf396aa59 nft_unregister_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xfe71f4d6 nft_unregister_set +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x2d6dc5be nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x41a94aa4 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x6e98d040 nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x72b3464a nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xaf7a737d nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xb7bc70d5 nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xc1437b67 nfnetlink_alloc_skb +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x21f6bba6 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xee802e6f nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_log 0xb96ba07c nfulnl_log_packet +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x1f17e6c2 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x3451e86f xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x40728a63 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x426520c3 xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x490d1d10 xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4cf34bc8 xt_hook_unlink +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x807d2b2c xt_recseq +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x914b9fa5 xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x93fa8323 xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9926b06e xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xb0274a91 xt_hook_link +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xb6e008a1 xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbffee938 xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe585cf15 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xed282932 xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x00204983 xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x482b6a12 xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x9d603fe4 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0xa278afe1 nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0xdb71b21f nci_spi_send +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x0edb7868 rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0x1dc4b5ce rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x27e34f64 rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0x2c5c5514 rds_message_add_rdma_dest_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3101936e rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3b4fc0fc rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x40f382e8 rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x4553e57a rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0x4d450c0f rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0x50cbe7b3 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x5b19d14c rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0x6745e6c3 rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x6ac3863a rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0x73aac73d rds_message_populate_header +EXPORT_SYMBOL_GPL net/rds/rds 0x77235e7f rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0x78a73cc1 rds_send_get_message +EXPORT_SYMBOL_GPL net/rds/rds 0x874436ac rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0x96fafe85 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x9e0c6054 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0xbc8f328c rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc64860e2 rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0xcaa82881 rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0xe0297bb4 rds_page_copy_user +EXPORT_SYMBOL_GPL net/rds/rds 0xe2e76262 rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0xe4892fab rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0xe52c0fc5 rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0xe7d8b98c rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xef2df685 rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0xf72609e5 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0x20a1b928 rxrpc_unregister_security +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0xd089eed1 rxrpc_register_security +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x00c52ef5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x861b3207 gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x8d1a827e svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xa5c1326a gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xb5dea7ef g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xe0c54610 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xf8b2ff6e g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x015903d5 svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x01748848 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x045834e9 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04d71c4c rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0585fe61 svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0671200b bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x07277827 sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x084907e9 svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x086a82bf __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x09e74981 read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0aba945f xdr_skb_read_bits +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b0201e8 xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c9994ea rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f405137 svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f4a3678 rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f668ba9 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x12854bb0 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x12e9dc84 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x138fcce7 xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x145bd6fe xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x14e2ac68 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x150f40c3 xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x151db822 xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x167b530b xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x17d5d823 svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1999c1df rpc_lookup_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1a4a8d06 svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1a5de95a xdr_buf_read_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1be4decd svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1d382162 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f1177a1 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x206374ff rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x22efbc8b rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23deaec5 cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x256e81b6 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2590301f rpc_protocol +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x265dbe43 _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x27960a5c sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x282894b5 xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2a673e86 svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2c1081a5 xprt_lock_and_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eec63c9 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f8ebbe0 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x318a7273 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3241c0ab xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x338790c9 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34ddc6d4 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x35448c65 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x359459a2 rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x37d3c7c2 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a39a09d rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a40aa70 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3d6cdb07 rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3de98fc4 rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3ee80d24 xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3fa14972 rpcauth_key_timeout_notify +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x40df9a53 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4348eafa rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4852a368 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x488c4332 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x49e41529 svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4a966acd rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4cce83da xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e1a0268 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4fd8c28d svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x50124eb4 svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x50ce3a2b rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x512a7677 rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x520619a5 svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x543dd0e8 xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5461f2fc rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x54de7f61 rpc_lookup_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x55686d3c xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x582917a8 rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x58d4c2fe xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x58fc748c unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a929b84 rpc_task_reset_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5d5bd601 rpc_rmdir +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5e9b7217 svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5f0fd350 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60929dd0 xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x61b3f3f9 rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x62eba0a1 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x644b90a0 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x64ca2c22 xprt_set_retrans_timeout_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x66ea3476 svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x68d6a5ac rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6978a411 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6bfb6286 rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6cf1554b rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6d1014c4 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x704c3616 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x731b6b70 svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x74da7692 rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x752bdfd5 rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7708ced9 rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x78e1df26 rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7927955f svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x798dfba7 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7bee0ab4 xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7d29b831 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7def24da xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7e2355be svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7fcb2162 svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80951b28 rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x81ed2134 sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x848d8b4b rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8545aab8 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x85502e15 svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x85adec9a cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x85e755f8 xs_swapper +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8974e682 rpc_get_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x899d759f xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8d7497c5 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8ebecbb3 xdr_partial_copy_from_skb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x92b8e821 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x937c201e rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x947d6d04 xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x95ba9ea3 svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x96f1ba30 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98485a01 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98b75d64 rpcauth_list_flavors +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98fc16a3 xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x990c1cd8 xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9b419146 rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9f3b572b xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa00221c2 rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa138e98a sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa1ff9ecf svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa2e042e2 rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa4a634ab rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa6471fc3 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa7715887 rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa801201e svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa8afaf30 write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xac3559e7 rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xad06e582 xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xae10e917 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xae23f66d xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb3b2e8c3 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb57577a5 rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb644a69d xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xba210bc7 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb43efd8 xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbcd95e81 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf81c131 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3880471 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3b9c136 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc4b97db6 svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc5bb4138 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8735cd6 svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xca92fd2d xprt_set_retrans_timeout_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xca9d3520 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcbfbc66a rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcfc53431 sunrpc_cache_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd337afee rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd4b720b5 auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd4ddc947 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd56595e1 xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd579b17c rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd62fb12e svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd7367c7c xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd84c5034 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdaf8a615 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdba211c3 rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdcfc1c60 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdfbd2d5e rpc_print_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe0e93bca xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1ac2bb8 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe37658ab rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5837943 auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5c47a26 svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe6695c85 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe88a5098 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe8e7a5f6 sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe9373c9e rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeabd5f76 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeabed20e rpcauth_generic_bind_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeb6fbca7 svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeca09806 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xecf70581 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xed82c7b0 rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf0648957 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf135a8cc rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf3b3de27 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf5ce6abb rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf66abe46 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf7905c1c cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf94bfb85 svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9d1164c rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfd78a547 cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe2cfc2a rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfee3caf0 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xff183332 rpcauth_cred_key_to_expire +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0c79d5ef vm_sockets_get_local_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x10de15e4 vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x141e09f3 vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x158ba28f vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x15c0c57c vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2be788a8 vsock_core_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x5f3201f5 vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x74e91915 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x79070d10 vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7f730c80 vsock_core_exit +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xab8e7d27 vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb2c52cb8 __vsock_create +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb5320555 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb95f85f9 vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc69c5e5c vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xde9af666 vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf593c40a vsock_pending_work +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf9675a82 vsock_stream_has_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0x08dbf591 wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0x09e42741 wimax_msg_send +EXPORT_SYMBOL_GPL net/wimax/wimax 0x33b2c9f3 wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0x5d9029d5 wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0x6bd626f4 wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0x729c2a18 wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x8c2d77e3 wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0x983316ef wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xba12bdb0 wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0xcff9d235 wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0xe0c6126b wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0xe7202b45 wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0xf3ceadfd wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x101c24d8 cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x1fa84598 cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x2b17361a cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x393ee53c cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x3dd6e2fd cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x64c97c29 cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x6879d331 cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x84d4b241 cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xa2b7c4e3 cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xc6e9da14 cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xe2a1ad65 cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x00778770 xfrm_ealg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x056bb269 xfrm_ealg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0a575945 xfrm_count_pfkey_auth_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0b9e5852 xfrm_aead_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x28e23139 xfrm_probe_algs +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x74e1a843 xfrm_aalg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7a8ca627 xfrm_count_pfkey_enc_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7c30b8c7 xfrm_calg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x92dbc6c1 xfrm_aalg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xbc8b0f41 xfrm_calg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xce7a55c1 xfrm_ealg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xe122af95 xfrm_aalg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x4bf507c4 ipcomp_destroy +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x908adb38 ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xa35db6fe ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xe5d953ca ipcomp_input +EXPORT_SYMBOL_GPL sound/core/snd 0x0e77691f snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/core/snd 0x21ebcfa1 snd_kctl_jack_new +EXPORT_SYMBOL_GPL sound/core/snd 0x3ca17104 __snd_printk +EXPORT_SYMBOL_GPL sound/core/snd 0xa4ffe0f7 snd_ctl_activate_id +EXPORT_SYMBOL_GPL sound/core/snd 0xcc737ac0 snd_kctl_jack_report +EXPORT_SYMBOL_GPL sound/core/snd 0xe720f33e snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x0bd62191 snd_compress_new +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x3611656a snd_compress_deregister +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x6f343875 snd_compress_register +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x633b8311 snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa0a1d011 snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x0ca14028 snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x143084b6 snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x2e7165e9 snd_ak4113_create +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x75cf5b22 snd_ak4113_build +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x89fed9e2 snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xc35ebefa snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x003ed04e snd_hda_queue_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x016605a2 snd_hda_codec_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x01edc374 snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0783f294 snd_hda_jack_detect_enable_callback +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0d1722a7 snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0d6d1491 snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0dd3b346 snd_hda_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0e213e85 snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x14a5b47b snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x16f4213c snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x16ffb60f snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x17f7d883 snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x183e529c snd_hda_mixer_bind_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1c469ef4 snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1c896e0d snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1cc8744e snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1dc00847 snd_hda_parse_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2602b886 snd_hda_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x260a2f83 snd_hda_gen_spec_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x27656ff4 snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x277c1453 snd_hda_is_supported_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x28f167f3 snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x29c26cff snd_hda_bus_reboot_notify +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2a0ef6cf snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2cfeb0b5 snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2ff0b5e8 snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3176d909 snd_hda_query_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x321a8da1 snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x324059fb snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x32db56f0 snd_hda_jack_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x34303828 snd_hda_check_board_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x35eda2e1 snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3616aa53 snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x375cacd5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x377fb559 snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x38c06d3a snd_hda_codec_flush_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x39a50378 snd_hda_delete_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3a5dccfe snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3e305177 snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3e3da0e2 snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3f3ae3a4 snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3fbd88d9 snd_hda_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x40021223 snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4104bd38 snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x41d275a4 snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x43f38b1b snd_hda_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4dab1f60 snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4e19d5ba snd_hda_query_supported_pcm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4e394a01 snd_hda_codec_update_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4e901c8f snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5136df9c snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x53b206d1 snd_hda_mixer_bind_ctls_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x53fbdb46 snd_hda_codec_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x54403c88 snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x54e604c4 snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x565ab50f snd_hda_parse_generic_codec +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x566fc963 snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5a3939bd snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5dcbabf6 snd_hda_sequence_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x605a8b7e snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6143507a snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x617146b9 snd_hda_ch_mode_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x61f0d272 snd_hda_mixer_bind_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6247400f snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x627fde7e __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x65f32be6 snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x65f8f6c4 snd_hda_bind_vol +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6b09fe95 snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6be160de __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6ce04038 snd_hda_ch_mode_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x701e1766 snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7055b5c6 snd_hda_suspend +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x715b2ba1 snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x72a47af6 snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x74892b98 snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7721d1cd snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x79cdd91e snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7c2e3a85 snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7de719e1 snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7dfe1342 snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7f2a78e7 snd_hda_codec_resume_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7f910061 snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x80fd31f4 snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8353218c snd_hda_check_board_codec_sid_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8370df60 snd_hda_ch_mode_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8798681e snd_hda_jack_tbl_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8aab0b5c snd_hda_jack_tbl_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8ada9985 snd_hda_add_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8b5c6b75 snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8e4c6826 snd_hda_calc_stream_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x90d209fa snd_hda_mixer_bind_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x93646365 snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9484a3e1 snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x95b28d01 snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x96fa7705 snd_hda_bus_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9703dbb6 snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x986603d2 snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x98b0a7da snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a6ff12f snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9cd19933 snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9ec1ebdb snd_hda_codec_resume_amp +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9ee262c6 snd_hda_get_sub_nodes +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa1a6c17b snd_hda_mixer_bind_ctls_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa2827d76 snd_hda_get_jack_location +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa290dd59 snd_hda_mixer_bind_ctls_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa2ab9305 snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa47ba552 snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa720df73 snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa8c09227 snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xafd43e18 snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb1c463bc snd_hda_resume +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb32897f8 snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb36d839a snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb468d191 snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb4e3b2c3 snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb75b0e64 snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbcff2557 snd_hda_bind_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbddb56f3 snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc0f96cc5 query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc18ef4fd snd_hda_jack_detect_state +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc4b4befa snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc652fd69 snd_hda_get_jack_connectivity +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc972a0a2 snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcb301b6e snd_hda_get_jack_type +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xce096715 snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd56f79b0 snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd6a6eca3 snd_hda_override_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xda01f16b snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdd4a6ecc snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xddc289e9 _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xde01803d snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe0b12a6a snd_hda_codec_amp_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe0f73132 snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe0fd0818 is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe2466e6f snd_hda_get_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe32376ca snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe40284ae snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe485f401 hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe4eb71a5 snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe52e5229 snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe61e9ad5 snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe7dd6d87 snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe7e6cf54 snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe89c6b85 snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe8d6a20e snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xea614423 snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xebda7fb6 snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xebdc7a16 snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xedb14def snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf1aa256d snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf2056eb9 snd_hda_codec_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf2b07115 snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf2edd7e5 snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf9387d25 snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfc35f92f snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfe430431 snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x1636986c atmel_pcm_free +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x312b65b8 atmel_pcm_mmap +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x5bd06b8d atmel_pcm_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x06dceffb snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x09bb3f2d snd_soc_codec_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0a7527ea snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0b8ae5d1 snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0daa4c95 snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0f2b8986 snd_soc_jack_get_type +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x10409e27 snd_soc_add_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1047a84b snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x104c2a73 snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x107dbd4f dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x10904d72 snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x141750f1 snd_soc_platform_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1496949b snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x15e12f0f snd_soc_dapm_put_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x163a0d39 snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x18f16364 snd_soc_debugfs_root +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x19cad2b8 snd_soc_dapm_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1ada5720 snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1d0e7a7f snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x21355783 snd_soc_codec_set_cache_io +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x22fd9af1 snd_soc_dapm_get_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x25d3627b snd_soc_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x271a6059 devm_snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x29b03f6a snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2a260992 snd_soc_codec_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2b6130be snd_soc_dapm_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2d059f59 snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2d264909 snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2d74afb5 snd_soc_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x327d38bd snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x346e9112 snd_soc_dapm_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3960de76 snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3b74ee8a snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3d9b7746 dapm_mark_io_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3ffcfb22 snd_soc_info_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4037630f snd_soc_limit_volume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x42498242 snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x430d57ce snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x449ac549 dapm_clock_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x45f734da snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4951640b snd_soc_pm_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4d4e581a dapm_regulator_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5173ed25 snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x521ea785 snd_soc_put_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5236f9cb snd_soc_new_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5292fca6 snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x54ccf3c9 snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x56566c79 snd_soc_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x62d9bb5e snd_soc_codec_readable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x635d269d snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x63ca21a4 snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x640937cb snd_soc_platform_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x67b015a8 snd_soc_codec_volatile_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x680d8400 snd_soc_jack_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x68614237 snd_soc_test_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x69c29cd5 snd_soc_codec_writable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6d135420 snd_soc_unregister_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6f5b60cd snd_soc_free_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x737d3e6e snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x77cc04b3 snd_soc_put_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x77fce759 snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x78832132 devm_snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e8beb04 snd_soc_lookup_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7f963284 snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x80c80e6c snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x82bdbcbe snd_soc_add_platform_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x838315ff snd_soc_dapm_kcontrol_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x83df39ce snd_soc_info_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8619817b snd_soc_update_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8ef1fe82 snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x918a4911 snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x95cb1744 snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9a610f15 snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9c02b2cd snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9c0d1271 snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9c69f348 snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9ee7cd11 snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa376404f snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa43d3d39 snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa4756f09 snd_soc_info_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa700ecda snd_soc_unregister_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa856e9fe snd_soc_cache_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa92b944a snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xab6228ca snd_soc_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xab958b26 snd_soc_unregister_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xabae80e7 snd_soc_cache_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xabd8cf9d snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xaca8a366 snd_soc_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xad4518e6 snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xae440581 snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xae945046 snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xaea7332c snd_soc_bytes_info +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb1cf502f snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb2027d30 snd_soc_jack_report +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb4bf8da6 snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb731030c snd_soc_bytes_get +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb9943ead snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbc823056 snd_soc_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbe35f3d6 snd_soc_bytes_put +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbfd3cebb snd_soc_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc0b70bdd snd_soc_get_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc3816580 snd_soc_platform_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc3e3cb6f snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc4244b3c snd_soc_get_dai_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc5dfad40 snd_soc_add_card_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc6623cbb snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc67f3670 snd_soc_cnew +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc7414d78 dapm_reg_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xca52fd1c snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xccdce8c0 snd_soc_update_bits_locked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcee87d46 snd_soc_remove_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd1b93ae3 snd_soc_cache_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd2ea9e7c snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd59e1450 snd_soc_add_codec_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xda291c0e snd_soc_dpcm_be_set_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdaceae85 snd_soc_get_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdafacdc2 snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdc975b44 snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdf87ab23 snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe0f53f91 snd_soc_poweroff +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe243f14c snd_soc_dpcm_be_get_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe484e3dd snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe67312b1 snd_soc_dapm_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe6ca89f6 snd_soc_register_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe7755192 snd_soc_register_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe883a55f snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe979e553 soc_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xebb2f392 snd_soc_unregister_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf11472c3 dapm_mark_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf4db3caa snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf6e032f5 snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf813f263 snd_soc_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfb288f0a snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xffc02fc2 snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL vmlinux 0x00000000 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x00000000 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x00000000 kern_mount_data +EXPORT_SYMBOL_GPL vmlinux 0x00000000 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x00000000 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x00091c8e fb_sys_write +EXPORT_SYMBOL_GPL vmlinux 0x002da7cf dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x00632780 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x0065ae56 of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x0067348e wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x0082dcb8 sysfs_schedule_callback +EXPORT_SYMBOL_GPL vmlinux 0x009304b6 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x00a7895f attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x00c4dc87 timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x00d350df regulator_can_change_voltage +EXPORT_SYMBOL_GPL vmlinux 0x00e5328a sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x00ebcb5d ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0x00f26b15 skb_gso_transport_seglen +EXPORT_SYMBOL_GPL vmlinux 0x00f747f7 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0x01010c6d klist_add_before +EXPORT_SYMBOL_GPL vmlinux 0x0102c9c9 dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0x010d31d3 scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0x0115cc6d ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x011cf028 regulator_suspend_finish +EXPORT_SYMBOL_GPL vmlinux 0x0159ba7a rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x01614751 dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0x0161e3f9 ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x0195fba9 btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x01bf4785 sdhci_pci_o2_resume +EXPORT_SYMBOL_GPL vmlinux 0x01cc94be da903x_update +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x0207168d add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0x0208f9d4 class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x020bfe97 cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x021ebfda btree_update +EXPORT_SYMBOL_GPL vmlinux 0x0222f43c driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x025e91c9 tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x027d4a05 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x029436ea pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x0299c7d8 ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0x029c0c11 dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x02a7a12a swiotlb_tbl_map_single +EXPORT_SYMBOL_GPL vmlinux 0x02be1fe9 i2c_unlock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x02ebee31 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x02fbfa6a mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x031364c0 rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0x0314a69d inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x031ee647 platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0x03277bf0 unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x033db0ff dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x03533871 da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x0362c343 blkdev_aio_write +EXPORT_SYMBOL_GPL vmlinux 0x036896be device_reset +EXPORT_SYMBOL_GPL vmlinux 0x036a595b i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x036fd37a usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x0372eca9 rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x037ad5d6 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0x03af44ed usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x03db7855 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0x03e27b4a vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x03e3686c ata_timing_cycle2mode +EXPORT_SYMBOL_GPL vmlinux 0x03f7cdb4 devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x043e7a3f rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0x04428279 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x04486e88 rcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x045b452f of_clk_get_parent_count +EXPORT_SYMBOL_GPL vmlinux 0x0460ed5f device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x046fabcc ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0x0471da13 find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0x047b006e regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x048b5f8d twl4030_audio_get_mclk +EXPORT_SYMBOL_GPL vmlinux 0x048ba0fe usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0x04961630 tasklet_hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x04b5549c __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04cf646d kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x04dcc215 rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x04ebd770 pwm_disable +EXPORT_SYMBOL_GPL vmlinux 0x04f13bba adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x04f2db3b md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x04fc2fb8 iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0x05322bc2 flush_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x053b80ba vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0x053eaf08 adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x0551f0ce tick_nohz_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x055db173 user_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x0561fa34 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x05756f80 led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x05c5346c tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0x05e2298d clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x05ffd8d9 ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x061dee59 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0x0623a6b4 dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x06335939 serial8250_tx_dma +EXPORT_SYMBOL_GPL vmlinux 0x063d5922 gfn_to_hva +EXPORT_SYMBOL_GPL vmlinux 0x064be6dc ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x06513863 usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0x065bb73d kvm_init +EXPORT_SYMBOL_GPL vmlinux 0x06860d1f blkcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0x068d6107 pci_pri_stopped +EXPORT_SYMBOL_GPL vmlinux 0x06c79631 ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0x06e294d7 rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0x0705ad30 pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0x073ef9f7 mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x074a0f2e inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x075a2acd dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0x0762403c edac_put_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x076a474b ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x079e4c2e ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x07aeb2af usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07bc79d0 devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0x07bf3b9c device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x07d53fb8 dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0x07f300c3 smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x086b5e8b da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x088b8f02 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x08afd0d5 ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0x08c322c6 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0x08c47386 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x08e1e877 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0x09144c6b i2c_lock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x091c824a machine_power_off +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x09437748 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x09469482 kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x0947770a inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x0948b8f2 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0x0962d0e8 irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x0967a305 pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x096d2c39 wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x09ca2f29 spi_master_suspend +EXPORT_SYMBOL_GPL vmlinux 0x09d5580a lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0x09f636e2 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x0a00d9ed sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0x0a0847bc crypto_tfm_in_queue +EXPORT_SYMBOL_GPL vmlinux 0x0a2cb807 crypto_nivaead_type +EXPORT_SYMBOL_GPL vmlinux 0x0a51ae5b virq_to_hw +EXPORT_SYMBOL_GPL vmlinux 0x0a73005b regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0x0a9fd3c5 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x0abae460 put_pid +EXPORT_SYMBOL_GPL vmlinux 0x0ac3605e thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x0afd4610 zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b1195c2 wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0x0b2825a5 thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x0b3ad31a crypto_alg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0b59390b __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0b5b7d33 regulator_set_optimum_mode +EXPORT_SYMBOL_GPL vmlinux 0x0b929b44 regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x0bfa3a19 rcu_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x0c01833d of_pci_find_msi_chip_by_node +EXPORT_SYMBOL_GPL vmlinux 0x0c0c015e ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0x0c10d8b1 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0x0c1dc302 kvm_read_guest_cached +EXPORT_SYMBOL_GPL vmlinux 0x0c2cdbf1 synchronize_sched +EXPORT_SYMBOL_GPL vmlinux 0x0c2edd6c rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x0c319de5 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0x0c31c9c4 generic_access_phys +EXPORT_SYMBOL_GPL vmlinux 0x0c5bad56 init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0x0c62ec21 kvm_set_memory_region +EXPORT_SYMBOL_GPL vmlinux 0x0c9627d8 fuse_put_request +EXPORT_SYMBOL_GPL vmlinux 0x0ca2649a fuse_request_send +EXPORT_SYMBOL_GPL vmlinux 0x0cba405c sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0x0cc1e40f crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x0cdc4ab4 usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x0cf56f16 aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x0d706d2e rh_set_owner +EXPORT_SYMBOL_GPL vmlinux 0x0d72cc38 blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0x0d7c33bb dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0x0db768b9 bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0x0dbd0e20 of_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x0dd098c8 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0de06988 cpu_first_thread_of_core +EXPORT_SYMBOL_GPL vmlinux 0x0de222f5 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0x0de2fea4 rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x0df428b5 dma_buf_kunmap +EXPORT_SYMBOL_GPL vmlinux 0x0e0f1fde stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0x0e26f482 netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x0e64053f kvm_write_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x0e8802c4 i2c_new_device +EXPORT_SYMBOL_GPL vmlinux 0x0e8cbf04 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x0ed57dfa fuse_request_send_background +EXPORT_SYMBOL_GPL vmlinux 0x0ed9302e percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x0ef1207a blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x0f13572c remove_irq +EXPORT_SYMBOL_GPL vmlinux 0x0f288c92 crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x0f3345de ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x0f470532 mmput +EXPORT_SYMBOL_GPL vmlinux 0x0f63de48 subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x0f6bb240 xattr_getsecurity +EXPORT_SYMBOL_GPL vmlinux 0x0f751aea input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0x0fb317bd skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0x0fc01e9f static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x0fe112dc of_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x0fe36bce crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x0ffb4dab inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0x10098c54 thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x100b8619 bdi_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x101d9cd6 regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0x10239d65 ata_sas_port_async_resume +EXPORT_SYMBOL_GPL vmlinux 0x109a98ff spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0x10bea4b3 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x10fa59fc list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1114011d threads_shift +EXPORT_SYMBOL_GPL vmlinux 0x11321d17 extcon_find_cable_index +EXPORT_SYMBOL_GPL vmlinux 0x1161018e regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x117129da sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x119990cd usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0x119c6db8 usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0x11b7a407 sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x11be4ad3 trace_buffer_unlock_commit_regs +EXPORT_SYMBOL_GPL vmlinux 0x11d9ec7e dm_kill_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x1212a610 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x121cd964 of_pci_range_parser_one +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x121ed3f3 add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0x122319ad bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x12434111 extcon_set_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x124f2056 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x12621acd irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x12638c70 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0x1263b6fd inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0x12952e06 spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x12ac376e regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x12ef65ed led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x12f7ca19 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0x1300f22e sysfs_get +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131bca42 devres_release +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x136a4ee6 btree_init +EXPORT_SYMBOL_GPL vmlinux 0x13825130 da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x13921363 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x13926cea usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0x1393ea4d regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0x13ad647f scatterwalk_bytes_sglen +EXPORT_SYMBOL_GPL vmlinux 0x13e5ea13 __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0x13f9db29 usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0x141e65c8 regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x142a8be4 of_clk_get_parent_name +EXPORT_SYMBOL_GPL vmlinux 0x143f0c07 fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0x143f94b8 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0x14610679 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0x1487fd15 gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL vmlinux 0x14b3e4eb ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0x14bb8bef nf_unregister_afinfo +EXPORT_SYMBOL_GPL vmlinux 0x14bc0877 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0x14c1c04e devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x152ba30e ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0x155cd281 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0x1561eaef fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0x156b2a49 put_device +EXPORT_SYMBOL_GPL vmlinux 0x15774a6c tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0x157b5411 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x15892417 async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x15c21e5e nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x15eae866 led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0x16000a3c dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x16115417 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x162cb7a0 crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1650bf27 rcutorture_record_progress +EXPORT_SYMBOL_GPL vmlinux 0x16518e40 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0x167b608c ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0x168cecfa inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0x16ad9755 pci_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x16af6a20 debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x16c56f4d crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x1720f289 pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x1753a32f hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0x177c338d twl_get_version +EXPORT_SYMBOL_GPL vmlinux 0x1798d574 crypto_alloc_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x17999cb2 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x17b3193f usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x17d14899 ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x17dcc647 __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x180451b6 inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x1853653c btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x185bc2d3 device_del +EXPORT_SYMBOL_GPL vmlinux 0x1866cec2 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x1878f62b edac_err_assert +EXPORT_SYMBOL_GPL vmlinux 0x18a27f34 jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0x18ca3d60 sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0x18d1044f class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x18ddfc31 pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x18f1fc9b irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x18fe77cc ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0x1938d169 regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x193d48e0 trace_current_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x193f7481 tpm_remove_hardware +EXPORT_SYMBOL_GPL vmlinux 0x19439cb1 blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x194686d3 fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0x194dd5f5 pkey_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x195c364d hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0x1967183e ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0x19853e17 gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19a6274e tps65912_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x19b384a5 hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x19ec7362 sec_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x19eedd8d ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x19fe95be spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x1a082d69 max77693_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x1a1bc5fa ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x1a323362 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x1a4de768 platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x1a4efbac crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0x1a5f1dfa rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x1a8c5907 btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x1ac199b6 ata_eh_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x1ac3bb8b devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x1acef7d2 pm_freezing +EXPORT_SYMBOL_GPL vmlinux 0x1afa4118 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0x1b0a3ae4 wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0x1b36b5de ata_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x1b52db1c probe_kernel_read +EXPORT_SYMBOL_GPL vmlinux 0x1b7acfea inet_hash +EXPORT_SYMBOL_GPL vmlinux 0x1b7edd0d anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x1b8cf833 rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0x1b9aca3f jprobe_return +EXPORT_SYMBOL_GPL vmlinux 0x1bab249b rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0x1bcf1d21 rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0x1bd00786 skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0x1bd06aab cpufreq_frequency_table_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x1bda4e09 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0x1beafe7a blk_queue_flush_queueable +EXPORT_SYMBOL_GPL vmlinux 0x1c131cfc usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x1c27c5a0 crypto_init_ahash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x1c522eff uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1ca4580e led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0x1cdedc9f pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x1cfe78d1 kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL vmlinux 0x1d318e8e sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x1d58ae14 lpddr2_jedec_timings +EXPORT_SYMBOL_GPL vmlinux 0x1d646f28 pci_restore_ats_state +EXPORT_SYMBOL_GPL vmlinux 0x1d717b1d ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d91aef0 crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x1dbbb3ae usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x1dc4242c devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x1de054d5 of_clk_del_provider +EXPORT_SYMBOL_GPL vmlinux 0x1de9185a debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x1dfbcf4c mpic_msgr_disable +EXPORT_SYMBOL_GPL vmlinux 0x1e0bfba9 dev_hard_start_xmit +EXPORT_SYMBOL_GPL vmlinux 0x1e225068 kvm_irq_has_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1e2c8da7 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0x1e3635b2 i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0x1e5423e0 crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x1e588d01 cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x1e5b03dc pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1e6913d9 __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0x1e78452e pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e884e92 rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0x1eb1594f gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebcce7d bmp085_detect +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ec8fd45 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x1ed38328 pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0x1ee31b2e disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x1f1fc99d evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x1f2d5f07 bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x1f3be0a6 usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0x1f49d7b0 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0x1f5330a5 rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f87e253 spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x1f8db7f9 ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x1f8e5da5 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1f9d40a0 regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x1fac5352 queue_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x1fc69701 sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x1fcece42 inet_twdr_twcal_tick +EXPORT_SYMBOL_GPL vmlinux 0x1ff2d8a8 skcipher_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2033027c extcon_get_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x2069636e sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x2078362b default_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x20975408 __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x209c8bdf hrtimer_start +EXPORT_SYMBOL_GPL vmlinux 0x20bb7e81 get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0x20bc3470 orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x20de5193 kvm_disable_largepages +EXPORT_SYMBOL_GPL vmlinux 0x20df27f9 balloon_devinfo_alloc +EXPORT_SYMBOL_GPL vmlinux 0x20fa2462 regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x20fb8ebc crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0x210090d9 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0x2114db0a perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x211ff1c3 sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0x21511a8d device_add +EXPORT_SYMBOL_GPL vmlinux 0x21b720f3 ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0x21cafd74 spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x21d36a03 kvm_hypercall +EXPORT_SYMBOL_GPL vmlinux 0x21ec041a kvmppc_hv_ops +EXPORT_SYMBOL_GPL vmlinux 0x21f8defb inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0x22244b02 skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x222aac90 pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0x22371cd8 rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0x22739464 kvm_vcpu_kick +EXPORT_SYMBOL_GPL vmlinux 0x2296c00d crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x22e35ad1 ping_close +EXPORT_SYMBOL_GPL vmlinux 0x22e5d7a2 srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x23108b74 tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0x231bbd50 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0x23477e2f ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0x236452b1 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0x23679939 __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x2392bc6e pm_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0x23945b6c crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x239c42dc crypto_larval_lookup +EXPORT_SYMBOL_GPL vmlinux 0x23b7019b cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0x23d2db30 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x23f59f19 sec_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x23f9537d ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0x242db52e tcp_death_row +EXPORT_SYMBOL_GPL vmlinux 0x2431c4de spi_alloc_master +EXPORT_SYMBOL_GPL vmlinux 0x24413a2e sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x244745ec extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x244db315 devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0x24526f16 arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0x245ec6c9 usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x247868ab __rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x24a8d686 crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x24aac4d9 crypto_aes_expand_key +EXPORT_SYMBOL_GPL vmlinux 0x24aae05e __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x24babfb8 ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x24d4b125 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x24e350f5 rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x24e8b2fe pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x2506055f key_type_user +EXPORT_SYMBOL_GPL vmlinux 0x25711d98 __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x25831f16 regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x2584e07d get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0x25a7ea32 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0x25a9418f usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x25ca5ee4 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0x25cec59d wm8350_device_exit +EXPORT_SYMBOL_GPL vmlinux 0x25d98c11 ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0x25ff29a1 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0x26231c82 netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0x262f20a8 local_clock +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x26613919 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0x26730e78 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x267d3c13 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x268abb61 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0x268efd43 unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x2691412e boot_cpuid_phys +EXPORT_SYMBOL_GPL vmlinux 0x26b71fb4 ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x26bba680 edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26de157f netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0x26e4b9e2 __kvm_set_memory_region +EXPORT_SYMBOL_GPL vmlinux 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL vmlinux 0x27152ae1 kvm_resched +EXPORT_SYMBOL_GPL vmlinux 0x2728d3f1 tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0x272996ff devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x2733ff22 disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x2748789a kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x2776affd blocking_notifier_chain_cond_register +EXPORT_SYMBOL_GPL vmlinux 0x2787db00 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x2795b917 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0x27b40ca4 bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x27c1e63f usb_amd_find_chipset_info +EXPORT_SYMBOL_GPL vmlinux 0x27d2dd6e rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x27e56a37 blk_queue_rq_timed_out +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27f85cb5 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x283bb2fa unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0x285a5f9d percpu_ida_free +EXPORT_SYMBOL_GPL vmlinux 0x286d13b3 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x289a5583 da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x289aa594 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0x28a82da4 snmp_mib_init +EXPORT_SYMBOL_GPL vmlinux 0x28c8b3ce pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x28d71833 crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0x28de6153 crypto_blkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x28fd369a handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0x290eff49 uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0x291824d2 usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x291ec638 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0x2951993e __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x297a1277 platform_bus +EXPORT_SYMBOL_GPL vmlinux 0x29be5982 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x29e84442 regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0x29fa650e ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0x2a0346d6 raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0x2a1b723e ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0x2a248e63 dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x2a3afae1 filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0x2a42131a __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x2a825826 device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x2ab25a26 wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x2ab94412 ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x2ad1ece4 zs_get_total_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0x2adc78da pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x2ae82ed6 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2af64906 rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x2b5c303b smp_send_reschedule +EXPORT_SYMBOL_GPL vmlinux 0x2b607170 ktime_sub_ns +EXPORT_SYMBOL_GPL vmlinux 0x2b70df85 rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0x2b7a574f md_is_badblock +EXPORT_SYMBOL_GPL vmlinux 0x2b7a6de8 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2b886c1d driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x2bc7c562 platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0x2bede091 wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x2bfaef4e clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x2bfc0bc1 call_filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0x2c0dcd33 task_current_syscall +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c97c085 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x2ca9ed06 thermal_generate_netlink_event +EXPORT_SYMBOL_GPL vmlinux 0x2cb87a11 usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0x2ce98559 kcrypto_wq +EXPORT_SYMBOL_GPL vmlinux 0x2d0c76c9 ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x2d17a0e1 cgroup_taskset_size +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d36c57b rh_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2d3a8c42 _submit_bh +EXPORT_SYMBOL_GPL vmlinux 0x2d4069a6 blkg_stat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d59c954 edac_handlers +EXPORT_SYMBOL_GPL vmlinux 0x2d7e43e7 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x2da58228 __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x2dc5a6d1 btree_last +EXPORT_SYMBOL_GPL vmlinux 0x2dde6ba6 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2e222619 ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e2f1740 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2e3cefd2 crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x2e45e488 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x2e4a7fcb power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0x2e64a0c2 debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0x2e868087 inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0x2e8a6be9 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0x2e8ea3c9 ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x2ea9c214 ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ed3c07f blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x2ee34f17 regmap_fields_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x2efc5eb9 pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f4560c2 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0x2f665a7f i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x2fbc699b da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2fcb7af4 crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x2ffb5ff7 btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0x3006b6f5 of_pci_get_devfn +EXPORT_SYMBOL_GPL vmlinux 0x30429b1b usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x3050ec18 perf_trace_buf_prepare +EXPORT_SYMBOL_GPL vmlinux 0x308b733a getboottime +EXPORT_SYMBOL_GPL vmlinux 0x30a49790 reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x30a4f4ca bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x30cb12c2 ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0x310005cb tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0x3109b751 cpu_clock +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x31859993 of_irq_to_resource_table +EXPORT_SYMBOL_GPL vmlinux 0x31a2a809 sec_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x31c0c2d1 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x324e8a6f blkg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x32544f5b regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3256ca45 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x328995b5 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0x3290149c regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x3290dfc5 max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0x32924a4d scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x32934b71 dm_requeue_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32e7bbe1 dma_buf_kunmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x32fb10d3 sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0x32fd447a monotonic_to_bootbased +EXPORT_SYMBOL_GPL vmlinux 0x3346398f devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x335c0cfc crypto_register_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x336154ca rcutorture_record_test_transition +EXPORT_SYMBOL_GPL vmlinux 0x336c0212 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x337786fa usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x33892482 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x339412ce usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0x33991494 sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x33a94a45 of_irq_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x3407544f fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0x34135051 led_trigger_show +EXPORT_SYMBOL_GPL vmlinux 0x34276300 ref_module +EXPORT_SYMBOL_GPL vmlinux 0x345a9312 regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0x347fd4b3 eventfd_ctx_get +EXPORT_SYMBOL_GPL vmlinux 0x3487deb1 cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x3495e876 devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x34a59735 ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0x34ac50a4 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x34ac9379 pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0x34fb0361 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0x35184918 pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x358ff60f twl_get_hfclk_rate +EXPORT_SYMBOL_GPL vmlinux 0x35f10f43 nfq_ct_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x35f165f1 devm_reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x35f30d9e wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x360a6343 kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0x36126ffd sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x361e2bcc save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0x3636c3eb relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0x363f526d ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0x36455348 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x365e2cbd tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x368a7691 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0x3690b1c2 single_open_net +EXPORT_SYMBOL_GPL vmlinux 0x36923a27 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36a64e5c percpu_ida_free_tags +EXPORT_SYMBOL_GPL vmlinux 0x36b15f1e perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0x36b506b9 system_trusted_keyring +EXPORT_SYMBOL_GPL vmlinux 0x36bcd873 posix_timer_event +EXPORT_SYMBOL_GPL vmlinux 0x36c8ff70 bmp085_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x36d6b6f3 scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0x37064287 arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0x370ade5b rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x371ad933 regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0x37330366 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x374446c4 generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0x374668bd irq_find_host +EXPORT_SYMBOL_GPL vmlinux 0x377b8cf8 kvmppc_handle_load +EXPORT_SYMBOL_GPL vmlinux 0x37875783 dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0x37ba4d71 dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x37c57a5f fuse_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0x37c83dca regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0x37d2c2c5 rh_dump_blk +EXPORT_SYMBOL_GPL vmlinux 0x381b7e29 tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x382be1b5 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0x382c2921 mmc_send_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0x38726c43 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x38836505 aead_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0x38a9c2c7 input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x38cf7945 wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x38f71ec8 ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0x3904aa70 ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0x39092593 i2c_new_probed_device +EXPORT_SYMBOL_GPL vmlinux 0x394d6330 ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x395549e1 fuse_get_req_for_background +EXPORT_SYMBOL_GPL vmlinux 0x397ef9ad crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x39eebd5e class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x39faa126 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a3f0601 extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3a48c59a relay_close +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a6ac287 tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0x3abb1cd4 pci_renumber_slot +EXPORT_SYMBOL_GPL vmlinux 0x3abe71fa ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0x3ac17d03 tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0x3acdf325 twl4030_audio_enable_resource +EXPORT_SYMBOL_GPL vmlinux 0x3ad825df da903x_write +EXPORT_SYMBOL_GPL vmlinux 0x3ad82802 of_property_read_u32_index +EXPORT_SYMBOL_GPL vmlinux 0x3b0c8342 kvm_write_guest_cached +EXPORT_SYMBOL_GPL vmlinux 0x3b22f9fc inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0x3b3c8d3f ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x3b3cb82e rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x3b4ee8b7 rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x3bb04505 d_materialise_unique +EXPORT_SYMBOL_GPL vmlinux 0x3bb8f48f platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0x3bfe1182 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0x3c137e9f tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x3c39fd94 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x3c8424a0 clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3c8d28cc of_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x3c9202f6 sysfs_put +EXPORT_SYMBOL_GPL vmlinux 0x3c9390db pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0x3cadf712 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0x3ccffec8 of_irq_parse_one +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cd33fc5 max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x3d26cd60 spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x3d3332ea ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0x3d4c8d32 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0x3d56616d pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x3d686656 shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x3d7db53d kobj_completion_init +EXPORT_SYMBOL_GPL vmlinux 0x3d87bb3f adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3d95a0d8 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x3da03a62 uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0x3da2090c tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x3dc526a9 arizona_of_match +EXPORT_SYMBOL_GPL vmlinux 0x3dc916b6 crypto_fl_tab +EXPORT_SYMBOL_GPL vmlinux 0x3dd4d3a7 bprintf +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3df59f19 alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0x3e09d6e0 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0x3e1af1ca ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x3e266f62 fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0x3e2e543d cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x3e2fa31f wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3e3d920e debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x3e3f5db8 ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0x3e40220b debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x3e54d50c sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0x3e57f609 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0x3e5e47bb devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e716271 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0x3e757637 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0x3e7e153e mark_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x3e7e5f16 irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0x3e845a45 rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x3e8cb20d kvm_vcpu_uninit +EXPORT_SYMBOL_GPL vmlinux 0x3e971b8d regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3eab6020 usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x3ec85b52 usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x3ed3d590 __clk_register +EXPORT_SYMBOL_GPL vmlinux 0x3f135797 led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0x3f1a7b96 __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x3f1d12bb regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3f53287f i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0x3f6bbaa9 rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3f816a12 ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0x3fa2376c transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0x3fc98cee pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x3fdd4e9e inet_csk_reqsk_queue_prune +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x4045c494 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0x404deed2 scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0x40682b94 usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x40790537 gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x40a3e493 md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x40af0dec ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x40d46b21 crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x40f7b341 clk_register_divider +EXPORT_SYMBOL_GPL vmlinux 0x411430b6 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x412ccb47 pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x41336d10 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0x4146678e fat_attach +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x41cadaa1 attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0x41df6b5d sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x4205ad24 cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x422d40e7 bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x424acc6d scatterwalk_done +EXPORT_SYMBOL_GPL vmlinux 0x425c1c0b ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x4260a0f3 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0x4266b34e sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x4287fa68 PageHeadHuge +EXPORT_SYMBOL_GPL vmlinux 0x4298cae2 ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0x429f97f2 led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0x42a0d76f task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x42a4360d blkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x42a4de3c smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x42a70ed5 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x42f72819 kvm_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x42fb89c9 blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x430e5257 of_alias_get_id +EXPORT_SYMBOL_GPL vmlinux 0x4316cc68 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x431b3479 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0x43286494 do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x434d4037 ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0x434e3985 inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x435936d6 key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0x436350f8 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x437d17a6 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x43969dbe rh_alloc_fixed +EXPORT_SYMBOL_GPL vmlinux 0x43a53735 __alloc_workqueue_key +EXPORT_SYMBOL_GPL vmlinux 0x43b466b0 gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL vmlinux 0x43b9d477 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0x43c25add mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x441b2193 gov_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x44404f11 kdb_register_repeat +EXPORT_SYMBOL_GPL vmlinux 0x44686e62 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x446b72a4 ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x44ae4760 usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x44ca92c3 fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x44f94eda blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0x450d7fb8 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x45431550 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x454c15ae __smp_call_function_single +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x457b77ca of_fixed_factor_clk_setup +EXPORT_SYMBOL_GPL vmlinux 0x45974930 regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x459950d6 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x45bcd0b9 pci_reset_bridge_secondary_bus +EXPORT_SYMBOL_GPL vmlinux 0x45bf1ff3 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x45d9af9d pci_intx +EXPORT_SYMBOL_GPL vmlinux 0x45f27b62 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0x45f5a227 usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0x460f7531 wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x462e3eb2 rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x46365374 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0x4637ecf1 anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x464ce1cd sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0x46576864 da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0x4667f8e0 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x4672e88b __crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x4688c96a usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x469a7ad3 unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x46fd12cf sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x4707c240 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x470fa426 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x4724a2b1 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x47519a6d of_irq_parse_and_map_pci +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4765bb20 irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0x477a6ec6 cpufreq_frequency_get_table +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x47a7648a irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47b21077 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x47bc3993 rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0x47c2031d irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x47cfd12b sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0x47d2faf2 hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0x47dff7fb security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0x47eff14f __pci_complete_power_transition +EXPORT_SYMBOL_GPL vmlinux 0x4815e302 usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x481ea6ea sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0x485afde2 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL vmlinux 0x48883347 __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x48897686 __pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x48993846 key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0x48b78054 irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x48c28c72 sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0x48ca8947 pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x48ce0ad8 crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0x48f58b22 clk_register +EXPORT_SYMBOL_GPL vmlinux 0x49310651 dm_dispatch_request +EXPORT_SYMBOL_GPL vmlinux 0x49787899 ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0x4982a57f probe_kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x498d293a trace_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x49e3ebdb unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x49e66d90 __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0x49f5add8 hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x49f93562 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x4a08f44d regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x4a362217 pcibios_finish_adding_to_bus +EXPORT_SYMBOL_GPL vmlinux 0x4a3aeb55 pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0x4a48c481 tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x4a54fb04 crypto_init_shash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x4a5d397a spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x4a6cf3dc usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x4a71efef devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x4aadeb9a ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0x4b17b645 of_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x4b8e0b08 register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x4b98827c rh_init +EXPORT_SYMBOL_GPL vmlinux 0x4bc62a81 audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4c2e1f24 clk_disable +EXPORT_SYMBOL_GPL vmlinux 0x4c3c27d7 usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0x4c4302c9 ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0x4c4d94b3 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x4c4e3a36 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0x4c602bf1 __blkg_release_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4c759827 byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x4c76546c __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x4c908c3a sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0x4c9e6a9c blk_queue_flush +EXPORT_SYMBOL_GPL vmlinux 0x4ca4c9df clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x4cd0ddfb irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0x4d06a13a dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0x4d172ccb ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x4d23e35b key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x4d2a8e22 pci_reset_pri +EXPORT_SYMBOL_GPL vmlinux 0x4d3a78fa spi_async +EXPORT_SYMBOL_GPL vmlinux 0x4d410602 device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x4d4ea2c5 tpm_dev_vendor_release +EXPORT_SYMBOL_GPL vmlinux 0x4d795216 crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x4d9de069 pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x4dcc875a disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x4ddbffb7 pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4df8742f __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x4e0585f0 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0x4e109192 ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0x4e1b6d8f task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x4e242f5f pstore_cannot_block_path +EXPORT_SYMBOL_GPL vmlinux 0x4e306f75 ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x4e6069bb agp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x4e650db5 alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0x4e6e53d4 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0x4e72a619 rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0x4e745e8b ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0x4e7b760f clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x4e812852 stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0x4e929682 gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL vmlinux 0x4ea11c69 dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x4ea1ea8d crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0x4eadb892 regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f020dee public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x4f0e77d7 pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x4f175455 user_update +EXPORT_SYMBOL_GPL vmlinux 0x4f4e8920 tty_prepare_flip_string_flags +EXPORT_SYMBOL_GPL vmlinux 0x4f72173c alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0x4f735f03 do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x4f881b16 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0x4fa02203 usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0x4fabd7e4 usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x4fbaf85d device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x4fd4e89d ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4fd745bf ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4ff09d5e ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0x50293fdf sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0x50314499 adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0x503579d2 rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x5042e8eb ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x50553e56 devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0x50601122 of_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x506691f1 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x506cc085 tracepoint_iter_stop +EXPORT_SYMBOL_GPL vmlinux 0x507dbe82 extcon_unregister_interest +EXPORT_SYMBOL_GPL vmlinux 0x5086ac3a alg_test +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x50c89f23 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50f954b2 xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x5103a67f locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0x512d7a8e bus_register +EXPORT_SYMBOL_GPL vmlinux 0x51698459 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x51846493 trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x51b65a26 rtc_lock +EXPORT_SYMBOL_GPL vmlinux 0x51e8b97c __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x51ee4022 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x51f5e309 cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0x520e9687 anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL vmlinux 0x52212010 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x5231314e devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x5249f012 get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0x5256318e fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x5284c1c9 fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0x52a6d130 of_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x52a71a1a pci_sriov_migration +EXPORT_SYMBOL_GPL vmlinux 0x52d1629e perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x52f80b82 crypto_ablkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x52f9c83c ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x5322f80c hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x5334ba2d kvm_get_dirty_log +EXPORT_SYMBOL_GPL vmlinux 0x5335dd11 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x53402cd7 sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0x5358fc36 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x53614269 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x537873e1 dma_buf_kmap +EXPORT_SYMBOL_GPL vmlinux 0x53865f79 cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x5408d9fa sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x5415682b tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54348516 rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0x5435eeae usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x5460c8d8 fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x546c5565 ppc_tb_freq +EXPORT_SYMBOL_GPL vmlinux 0x54740eb7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x5485fc8b crypto_ahash_type +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54b4b137 scsi_internal_device_block +EXPORT_SYMBOL_GPL vmlinux 0x54b524b5 sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x54c0c403 pci_enable_pri +EXPORT_SYMBOL_GPL vmlinux 0x54e6fdc7 ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x54ee8fff tpm_show_pubek +EXPORT_SYMBOL_GPL vmlinux 0x5505c53c gfn_to_memslot +EXPORT_SYMBOL_GPL vmlinux 0x55098665 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x5513266c pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x554f6100 trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x55551632 dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x556d320f shash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x557c2f69 __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5585e636 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x55b5cedb tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0x55c1b1c1 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x55ca745a usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0x561e4b77 irq_of_parse_and_map +EXPORT_SYMBOL_GPL vmlinux 0x562996a5 bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x564f1dca klist_add_after +EXPORT_SYMBOL_GPL vmlinux 0x5653593a pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x565b6892 uuid_le_gen +EXPORT_SYMBOL_GPL vmlinux 0x56627abe tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0x5671551f init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x56886b19 scatterwalk_map +EXPORT_SYMBOL_GPL vmlinux 0x5692386f gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x56b63670 lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x56d697ce cpu_up +EXPORT_SYMBOL_GPL vmlinux 0x56e75d47 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x57231f45 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0x572fea52 nfq_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x576e2b59 rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x579dc892 pci_configure_slot +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57a520ff cpufreq_governor_dbs +EXPORT_SYMBOL_GPL vmlinux 0x57b82c61 blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x57b9cab1 of_regulator_match +EXPORT_SYMBOL_GPL vmlinux 0x57bc6b18 blkcipher_walk_virt_block +EXPORT_SYMBOL_GPL vmlinux 0x57d0c67e ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x57d8597c usb_string +EXPORT_SYMBOL_GPL vmlinux 0x580a9f8d part_round_stats +EXPORT_SYMBOL_GPL vmlinux 0x582fe158 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0x58308f9e get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x58413099 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x5846dc61 usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x585decea platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0x586178e1 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x5869bb11 device_rename +EXPORT_SYMBOL_GPL vmlinux 0x587bd953 ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x5892f832 release_pmc_hardware +EXPORT_SYMBOL_GPL vmlinux 0x589e4569 syscon_regmap_lookup_by_pdevname +EXPORT_SYMBOL_GPL vmlinux 0x58e9116f __rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x58f6d8d8 perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0x58fe9409 rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0x592c91e1 usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x5947abbe max77693_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x59531655 preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x59533696 ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0x59a6e91d clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x59be580b regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x59e2743e call_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0x59eae699 ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x5a001508 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0x5a04dc17 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x5a109029 class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a8f3b69 of_irq_parse_raw +EXPORT_SYMBOL_GPL vmlinux 0x5ac1ee9d tpm_show_active +EXPORT_SYMBOL_GPL vmlinux 0x5ac247ad ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0x5adc1923 skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0x5afc3fce cgroup_add_cftypes +EXPORT_SYMBOL_GPL vmlinux 0x5afe9f71 __blk_put_request +EXPORT_SYMBOL_GPL vmlinux 0x5b0d97e2 schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0x5b16a9d0 crypto_alloc_ablkcipher +EXPORT_SYMBOL_GPL vmlinux 0x5b3388d2 serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x5b4e379c of_prop_next_u32 +EXPORT_SYMBOL_GPL vmlinux 0x5b59e833 regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x5b5f87e5 rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0x5b748e87 ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x5b8d724d sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x5b925adf crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x5baba1b1 regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0x5bd89ab7 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0x5be3a75a gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x5c0ecf14 blkio_subsys +EXPORT_SYMBOL_GPL vmlinux 0x5c222ff5 dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x5c246a8c class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x5c5cb756 get_device +EXPORT_SYMBOL_GPL vmlinux 0x5c677caa regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x5c6bff18 pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0x5c77aa3a shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x5c984f9f ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x5cabdced dev_pm_qos_remove_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5cf4edd8 serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0x5d12e48f input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0x5d3a174f pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x5d80fd95 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x5d8be1fe do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x5dcc817f wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x5defa9a7 platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0x5df1886c ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0x5dfbe4ce aead_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0x5e16952f register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x5e26aec2 wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e55b23d css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x5e6ab03d pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x5eacae92 usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x5ede8036 relay_open +EXPORT_SYMBOL_GPL vmlinux 0x5efbed9d blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x5efcd3ad usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x5f248f72 set_timer_slack +EXPORT_SYMBOL_GPL vmlinux 0x5f2b186f ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0x5f419491 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x5fc7eced fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0x5fd782a6 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x5fedffa2 crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0x602ca552 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x60506751 unmap_kernel_range_noflush +EXPORT_SYMBOL_GPL vmlinux 0x6077df88 stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x607e2e78 device_create_vargs +EXPORT_SYMBOL_GPL vmlinux 0x607f1820 ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0x6094685f wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL_GPL vmlinux 0x60d6450c regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x60f6d812 devres_alloc +EXPORT_SYMBOL_GPL vmlinux 0x60f6e2ca tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0x610d1638 pci_ats_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x6136a3df platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x615fd917 dev_get_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x61a90c54 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0x61b8dca1 wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0x61d83fc8 fb_sys_read +EXPORT_SYMBOL_GPL vmlinux 0x61e831cc tps65912_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x61ea1bb9 of_scan_bus +EXPORT_SYMBOL_GPL vmlinux 0x61f0cdbd tpm_gen_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x620c0db1 relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x622dacba tick_nohz_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x624a6406 hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x625a3d0e xfrm_inner_extract_output +EXPORT_SYMBOL_GPL vmlinux 0x62657277 dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x6267ea3d regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x628cf201 vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0x62d9f243 ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x62e814dd regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6318757f mdio_mux_uninit +EXPORT_SYMBOL_GPL vmlinux 0x63205de1 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x6325d015 vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x6341f3ff tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x6348daa6 extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0x6353217c usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0x63765be5 show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0x6378d7a8 ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x63832123 cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x6390efda of_modalias_node +EXPORT_SYMBOL_GPL vmlinux 0x63a1304f kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x63a501ee usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0x63aab5bc crypto_lookup_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x63c48b9a __inet_hash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x64256424 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0x6428da4f rh_attach_region +EXPORT_SYMBOL_GPL vmlinux 0x64395ced inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x6450e10c ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0x6451bacd blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0x646f81e8 pci_intx_mask_supported +EXPORT_SYMBOL_GPL vmlinux 0x647b195f pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0x64b5992d gpiochip_add +EXPORT_SYMBOL_GPL vmlinux 0x64bd71ee tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0x6587e1d4 gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x65985c3c ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x659cbff0 rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65f23885 dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x65ff18dd transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x660c492d regmap_field_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x66284627 powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0x662a0c3f x509_get_sig_params +EXPORT_SYMBOL_GPL vmlinux 0x6651b66e ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6679dcc7 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x669da1fd kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL vmlinux 0x66afb53b unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x6712353b sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x6722b075 irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x6746e1b0 map_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x67476b6a setup_irq +EXPORT_SYMBOL_GPL vmlinux 0x674e13e1 public_key_destroy +EXPORT_SYMBOL_GPL vmlinux 0x67643d26 pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x676c73b1 register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x678095af simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x6797487a regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x67a084e6 led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0x67bfb2d0 pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x67c573ec driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x67d0f6ef ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0x67e3e2a2 pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0x67f20878 skcipher_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0x680f9739 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0x6812cf8d __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0x681c8e9e ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0x6822f517 da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x685096dc netlink_alloc_skb +EXPORT_SYMBOL_GPL vmlinux 0x687934e9 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x687f2d09 crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0x68889224 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x68956406 static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x68c64b5a tpm_write +EXPORT_SYMBOL_GPL vmlinux 0x68ef5d03 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0x690283c5 led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0x6923ce63 irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x693f37de ata_base_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x69447467 ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0x6945725e mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0x6946ce9a wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x694c5f0d extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6967421a platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0x696a8477 __ip_route_output_key +EXPORT_SYMBOL_GPL vmlinux 0x6975901b wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0x697a420c timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x697cbbb4 threads_per_core +EXPORT_SYMBOL_GPL vmlinux 0x69897dde stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0x698a899f ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0x69ac9211 devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x69c93dc0 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0x69e8ccc1 usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0x69e9a2cb ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x6a19d533 security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x6a5fb566 rcu_sched_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6a990120 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0x6ab60040 __ablkcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0x6aed0b38 bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x6afcf07e fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6affa466 device_find_child +EXPORT_SYMBOL_GPL vmlinux 0x6b25cf5f rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x6b29a1fa ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0x6b48a910 switch_booke_debug_regs +EXPORT_SYMBOL_GPL vmlinux 0x6b6da889 irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0x6b9e7ad7 of_clk_src_simple_get +EXPORT_SYMBOL_GPL vmlinux 0x6bb44f12 extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6bb49c89 crypto_init_spawn2 +EXPORT_SYMBOL_GPL vmlinux 0x6bbc4012 anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x6bf04154 gfn_to_page +EXPORT_SYMBOL_GPL vmlinux 0x6c1b09ab gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x6c22e1c0 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0x6c49c4f2 clockevents_notify +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c4da7b6 ata_sff_data_xfer_noirq +EXPORT_SYMBOL_GPL vmlinux 0x6c749afe __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x6c8964e8 devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6cb94bba devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x6cbc54d4 subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x6cd21997 ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x6cd4ea62 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0x6cdb4df7 __put_net +EXPORT_SYMBOL_GPL vmlinux 0x6d182ff6 unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0x6d1d1d8d kvmppc_sanity_check +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d31e93b tracepoint_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x6d39cd8f sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0x6d4b897e lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x6d85aff6 cgroup_unload_subsys +EXPORT_SYMBOL_GPL vmlinux 0x6d9e5425 of_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x6ddb3fb8 __netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x6e04a077 usb_bind_phy +EXPORT_SYMBOL_GPL vmlinux 0x6e1842d7 br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0x6e405700 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x6e594cf9 cgroup_load_subsys +EXPORT_SYMBOL_GPL vmlinux 0x6e59fc68 regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x6e6a3649 tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6e8b709e verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x6eb88b29 xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x6ec2efbd regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x6ec70bab ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x6f0f44f6 blk_queue_bypass_start +EXPORT_SYMBOL_GPL vmlinux 0x6f1ee69e kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x6f28c431 ablkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x6f3efb44 rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x6f4ea1de cgroup_taskset_first +EXPORT_SYMBOL_GPL vmlinux 0x6f4fdc2c bmp085_remove +EXPORT_SYMBOL_GPL vmlinux 0x6f57d0c2 cpu_remove_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0x6f5da9e4 crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0x6f618073 inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0x6f981efd dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6fe61dd6 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x6feafcb9 ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0x6ff1a540 tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x7006d72d dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x70612875 cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0x706bc275 ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0x7075d56e sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0x707ff1bb ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x708cf509 exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x709f7026 crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0x70b5a87a disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x70bb623a regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x70bb651d __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x70cc0087 regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0x70cf032f usb_hcd_irq +EXPORT_SYMBOL_GPL vmlinux 0x71067e65 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x71621fe0 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71930ed3 of_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x71ad9dfc sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x71dc9998 crypto_il_tab +EXPORT_SYMBOL_GPL vmlinux 0x723374f8 pci_bus_sem +EXPORT_SYMBOL_GPL vmlinux 0x724525e2 bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x724e3740 split_page +EXPORT_SYMBOL_GPL vmlinux 0x72621798 kill_pid_info_as_cred +EXPORT_SYMBOL_GPL vmlinux 0x7267db00 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x726aef68 cgroup_taskset_next +EXPORT_SYMBOL_GPL vmlinux 0x727093bb regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0x72741f25 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x72788de0 wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x728d8b51 usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0x7296a0eb bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x729f2558 each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x72af92e4 devres_find +EXPORT_SYMBOL_GPL vmlinux 0x72eceab6 cpufreq_table_validate_and_show +EXPORT_SYMBOL_GPL vmlinux 0x73053187 edac_subsys +EXPORT_SYMBOL_GPL vmlinux 0x734756e5 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0x73779a9a tpm_show_temp_deactivated +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73aa977c rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x73c749a7 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x73c832f2 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x73d69364 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x73fa6f20 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0x740b24ba napi_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x74124d99 kick_process +EXPORT_SYMBOL_GPL vmlinux 0x7422c95e gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x7438a9e2 blk_queue_dma_drain +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x7464ea38 dev_pm_qos_add_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x74743570 exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x74784d32 debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x747bcfda usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0x74954462 timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x74b1979d __fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74bb1239 kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL vmlinux 0x7522eb5d __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x75382700 od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x75457e40 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7579bf32 device_attach +EXPORT_SYMBOL_GPL vmlinux 0x75862d71 device_schedule_callback_owner +EXPORT_SYMBOL_GPL vmlinux 0x758a782e blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x75c2b9f1 memalloc_socks +EXPORT_SYMBOL_GPL vmlinux 0x75c8a11c inet_twdr_twkill_work +EXPORT_SYMBOL_GPL vmlinux 0x75de8ad0 sk_unattached_filter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x75f2a044 usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0x75f42f1c ping_proc_unregister +EXPORT_SYMBOL_GPL vmlinux 0x75fc601a of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0x7627efa4 pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x7639a74b rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x76535bef raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x766dd659 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x766e8fbf ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x76d07d6e gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x76ebc963 hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x770cf981 tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x771a9f46 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0x771ccbb7 sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x77214cea sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x774de078 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x77af22f5 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0x77f9d525 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0x78099b22 flush_fp_to_thread +EXPORT_SYMBOL_GPL vmlinux 0x781babda md_run +EXPORT_SYMBOL_GPL vmlinux 0x7869f614 device_move +EXPORT_SYMBOL_GPL vmlinux 0x787a36b2 sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0x78a624c9 __module_address +EXPORT_SYMBOL_GPL vmlinux 0x78b7c1f1 bio_trim +EXPORT_SYMBOL_GPL vmlinux 0x7904428c inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x795c3539 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x796c2d48 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x7992827d blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x79c480da rh_dump +EXPORT_SYMBOL_GPL vmlinux 0x79d2203c shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0x79f207c7 extcon_get_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x79f7d96a devres_get +EXPORT_SYMBOL_GPL vmlinux 0x79fd057f uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0x7a071f70 regmap_fields_write +EXPORT_SYMBOL_GPL vmlinux 0x7a178e6b skb_gro_receive +EXPORT_SYMBOL_GPL vmlinux 0x7a30f327 blkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0x7a944007 rcu_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x7aa64803 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL vmlinux 0x7aa82490 devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x7ab3ca18 eventfd_ctx_read +EXPORT_SYMBOL_GPL vmlinux 0x7adb4728 cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0x7ae1ae8e cpufreq_frequency_table_put_attr +EXPORT_SYMBOL_GPL vmlinux 0x7ae26a79 blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x7afa9187 wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x7b0d0bfe led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0x7b0f1ab3 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7b1d544d edac_handler_set +EXPORT_SYMBOL_GPL vmlinux 0x7b310e67 __netpoll_free_async +EXPORT_SYMBOL_GPL vmlinux 0x7b766674 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x7b9f5b2a perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x7bc4d2a1 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0x7bc905b8 blk_queue_bypass_end +EXPORT_SYMBOL_GPL vmlinux 0x7bd5875d unregister_jprobe +EXPORT_SYMBOL_GPL vmlinux 0x7bdd5d52 fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0x7bebef72 disk_get_part +EXPORT_SYMBOL_GPL vmlinux 0x7c227088 clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x7c346357 pkey_algo +EXPORT_SYMBOL_GPL vmlinux 0x7c3e0f4e pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0x7cc1b7fd max77693_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7cc7de1c x509_check_signature +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7ce83090 input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d05e72c n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0x7d105db2 cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x7d298f46 tpm_show_owned +EXPORT_SYMBOL_GPL vmlinux 0x7d36e534 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7d37c066 pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x7d38574e sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0x7d397cc7 gpiod_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d60e9f3 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x7d7c76b5 __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x7dab26b6 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7dd12fac register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x7dde1709 __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x7dfb9c08 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0x7e17ba7b klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x7e369132 public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0x7e37212b pci_hp_change_slot_info +EXPORT_SYMBOL_GPL vmlinux 0x7e3d681f usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0x7e45e5aa usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0x7e4cd5bd max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7ed23aae driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x7f008202 btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0x7f25f852 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x7f28e02d cpu_remove_dev_attr_group +EXPORT_SYMBOL_GPL vmlinux 0x7f2b6abb shash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0x7f7bc710 klist_next +EXPORT_SYMBOL_GPL vmlinux 0x7f97f5a2 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x7fa4b4a2 of_pci_parse_bus_range +EXPORT_SYMBOL_GPL vmlinux 0x7faaf0f1 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x7fc672f8 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x7fceebc3 ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x7fea112a mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x801dcbcf inet6_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x80308c32 alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x8049cadd regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0x804f631f cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x8057a768 tpm_show_durations +EXPORT_SYMBOL_GPL vmlinux 0x805bb713 of_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x80671309 cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x808f4ecc devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x80949804 rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0x80c894f4 zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80f3268f __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x81172adf debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0x81179621 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x81242f78 ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0x8140842a gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x8149ea54 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0x816a9ada debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0x819d1a7b tpm_show_pcrs +EXPORT_SYMBOL_GPL vmlinux 0x81b22b59 tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0x81f26ed3 pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0x81f31937 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x81f45c82 of_usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0x8237e8ee pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x825aedd5 rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x827399e0 debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x82742370 extcon_set_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x82939ebd rcu_batches_completed_sched +EXPORT_SYMBOL_GPL vmlinux 0x82b49203 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x82bf8428 usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x83134496 rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x83149305 adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x8318eb66 clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x832465a5 __mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x833927f2 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0x834616bb sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x836a6be6 user_read +EXPORT_SYMBOL_GPL vmlinux 0x836d61d0 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x83714ee3 raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x837acd69 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x837ce240 rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x838b13e7 ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0x83a5ae2e __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0x83c3270e regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x83dbf3fc regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0x83ee2b5a udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x83ee349d serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x83faa80c fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0x83fe429c __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0x840a4ffd usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0x841b3c6b md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0x841da239 unregister_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x8420bccd cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0x84261a22 pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x8442a378 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0x848106fb rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x84939f2d dm_get_rq_mapinfo +EXPORT_SYMBOL_GPL vmlinux 0x84bb9c02 crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0x84cdfe60 usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0x85050965 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x850fa6cf ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x8512d076 kvm_put_kvm +EXPORT_SYMBOL_GPL vmlinux 0x852e568d of_get_nand_ecc_mode +EXPORT_SYMBOL_GPL vmlinux 0x856629e7 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x8574ca6c gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x857f5802 crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0x85b14d33 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x85b61ad9 nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0x85c10896 rcu_batches_completed_bh +EXPORT_SYMBOL_GPL vmlinux 0x85c6994d pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0x85c7f674 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x85cf1695 kobj_completion_del_and_wait +EXPORT_SYMBOL_GPL vmlinux 0x860375df sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x8621a97d scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x862c91f0 tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x8630b204 pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x863f87d9 seq_open_net +EXPORT_SYMBOL_GPL vmlinux 0x863ff0f4 __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0x865a380a ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0x866b9687 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x86808000 ping_err +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x8694482c list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0x86a58d12 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0x86b4b3ad ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0x86c15329 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0x86d5fe85 gfn_to_pfn_prot +EXPORT_SYMBOL_GPL vmlinux 0x86dec124 mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x86e9c0c4 serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x8708a481 irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0x873fbaea edac_atomic_assert_error +EXPORT_SYMBOL_GPL vmlinux 0x874e062b device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x877ad796 hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0x877c8d26 fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x8795d6d2 ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x87984b16 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x87bb4e32 of_usb_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x87cf5027 wait_for_tpm_stat +EXPORT_SYMBOL_GPL vmlinux 0x87d65b87 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0x87e153ac get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x8804af3d usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x8810ad5e crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0x88194672 da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x881c4aa1 raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x881c6ce1 crypto_alloc_instance2 +EXPORT_SYMBOL_GPL vmlinux 0x882aed15 spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x884a46ec rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x886378ef device_register +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b5647c trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x88c0b26a devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x88c96895 ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x88dbf5ce kvm_get_kvm +EXPORT_SYMBOL_GPL vmlinux 0x88e0c156 dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x895febb5 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0x896c54ec tpm_register_hardware +EXPORT_SYMBOL_GPL vmlinux 0x89a87bb5 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0x89b61377 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0x89b80566 regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x8a04b9fe tracepoint_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0x8a2b14ba wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x8a439d02 usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0x8a46fe5e ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0x8a542ee1 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x8a573e70 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0x8a7f9c2e pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0x8a834abe crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0x8a8d0b89 scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ae152b5 of_get_nand_bus_width +EXPORT_SYMBOL_GPL vmlinux 0x8aff4b38 ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x8b4660a6 __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x8b6a0053 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x8b70e8ea __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0x8b75882c device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x8b7d4145 dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x8bcd9d52 led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x8be6e189 sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c31e5e9 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x8c378a6b ablkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0x8ca3dc49 __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x8cfd4d2b dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x8cfdd897 ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x8d01d70a pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0x8d02d6c1 ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x8d28a695 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x8d29b493 inet6_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x8d893d6d inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x8d8bf3fe user_describe +EXPORT_SYMBOL_GPL vmlinux 0x8d9c30f5 regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0x8da01274 kvm_get_pfn +EXPORT_SYMBOL_GPL vmlinux 0x8da0e3cb tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0x8ddab5a4 blk_add_request_payload +EXPORT_SYMBOL_GPL vmlinux 0x8de04978 pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x8de0e659 ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x8dfd5821 __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x8e10617a regmap_update_bits_check_async +EXPORT_SYMBOL_GPL vmlinux 0x8e1cd06f kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL vmlinux 0x8e5f2096 ata_do_eh +EXPORT_SYMBOL_GPL vmlinux 0x8e864edd cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0x8e9c7933 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x8ee7ee58 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x8ef52996 ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8efa3586 pci_pri_status +EXPORT_SYMBOL_GPL vmlinux 0x8effebd3 pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x8f0d1f03 usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x8f0f97b8 md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0x8f178777 regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x8f1b8e17 crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f8e53b9 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8f902a2c gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x8fd134a5 inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x9004fe52 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x90228869 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x902a3e1a sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0x904b0fce list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0x904c63be i2c_new_dummy +EXPORT_SYMBOL_GPL vmlinux 0x9062c322 ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x90705b7f syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x9077d5ea usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x90821b97 skcipher_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0x909af61e lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0x90a1004a crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x90d412b8 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0x90e652c6 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x90f1311f inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x90f43ff7 stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x90f7bdb3 bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0x91286982 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x917fbebb proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0x918ad429 ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x91990458 netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0x91e3dcdd relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0x9211c0e5 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0x92383975 tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0x923e6ec8 __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x92472b0b ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x924787f1 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x925576e9 bsg_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x925f2c4e crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x927f82b0 blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x92b57248 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x92ca3ee2 tpm_release +EXPORT_SYMBOL_GPL vmlinux 0x92ce3bd2 devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92e56b04 tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0x92f586a2 of_get_named_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x92fe897f regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x930ed9b9 of_usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0x93266fdd pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x933ed54a tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x936687fc hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x939e9fa1 pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0x939ecd84 arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x93a2cb47 reserve_pmc_hardware +EXPORT_SYMBOL_GPL vmlinux 0x93dd54ef kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x93f1b354 pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x942c7d85 pci_cleanup_aer_uncorrect_error_status +EXPORT_SYMBOL_GPL vmlinux 0x943a14d8 __percpu_ida_init +EXPORT_SYMBOL_GPL vmlinux 0x9440d8cb tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x9449e894 __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x9467f98f da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x949e8f6c unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0x94a68723 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x94abb745 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0x94ac4fb0 __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x95099d6f sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x954b77f3 platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0x9554131e sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x9554910e css_rightmost_descendant +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x9562a14f stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0x9565506e ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x95966454 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95c5f8f3 devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x95cd6a7c crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0x95d2b65c tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0x9602f06d wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0x960eee17 xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0x96176b58 regmap_update_bits_check +EXPORT_SYMBOL_GPL vmlinux 0x9621849f ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x962416cd dbs_check_cpu +EXPORT_SYMBOL_GPL vmlinux 0x9630a38a irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0x96371b56 regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9655b911 enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x966a8107 of_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x96ec9642 cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0x96eef255 blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x970208dc devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0x971ec9e6 cred_to_ucred +EXPORT_SYMBOL_GPL vmlinux 0x97223efd generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0x9730c462 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x9745c52a of_fixed_clk_setup +EXPORT_SYMBOL_GPL vmlinux 0x978a968c find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x979b866e crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0x97a3ec56 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x97ae491b ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97ec3100 posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0x97f349a3 tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x982cd486 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x9834964d sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x98359056 kvm_clear_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x983c7494 rh_detach_region +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x985a2513 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x98664ccf udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x98700523 usb_bus_start_enum +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x98c7b192 usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x98cb11ec rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0x98cdf230 ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x98fb6993 inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x98fed8eb xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0x9905a3c1 swiotlb_tbl_sync_single +EXPORT_SYMBOL_GPL vmlinux 0x990a8a88 tps65912_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x991484c4 of_property_count_strings +EXPORT_SYMBOL_GPL vmlinux 0x9924c496 __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x992dc67a ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x995cc7aa sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x9971e987 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0x999063f2 regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x999815a1 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0x99a433d1 ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x99acb166 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x99c5f6c7 regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x99ce509a ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x99fbe45a rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a156caa pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x9a49d937 __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x9a731506 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x9a89dbf7 lpddr2_jedec_min_tck +EXPORT_SYMBOL_GPL vmlinux 0x9aa4e981 of_extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0x9aad6540 klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x9ab046c7 regmap_read +EXPORT_SYMBOL_GPL vmlinux 0x9aca444b get_monotonic_boottime +EXPORT_SYMBOL_GPL vmlinux 0x9acc5876 crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0x9ad08306 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0x9ad0c5fc dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9b629584 mpic_subsys +EXPORT_SYMBOL_GPL vmlinux 0x9b6876aa led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9b737481 tpm_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0x9b863bd9 usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x9b929dde kvm_clear_guest +EXPORT_SYMBOL_GPL vmlinux 0x9b9e6883 bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0x9bb20ef3 __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x9bb4580d usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x9bccf442 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x9be421f2 alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9c0c14f8 pci_pri_enabled +EXPORT_SYMBOL_GPL vmlinux 0x9c439498 inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9c5b2297 tpm_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x9c69f819 sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0x9c72df3b blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x9c7944d1 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x9c8503c0 rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0x9cba15b3 pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x9d030b99 stop_machine +EXPORT_SYMBOL_GPL vmlinux 0x9d045bf8 kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL vmlinux 0x9d138533 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x9d17fab6 bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0x9d5b4c59 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x9d8331c0 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x9d90996b bio_clone_mddev +EXPORT_SYMBOL_GPL vmlinux 0x9dbdd5cc ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0x9dc1d338 ftrace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x9dce1c79 isa_bridge_pcidev +EXPORT_SYMBOL_GPL vmlinux 0x9dcf2fe7 sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x9dfa4483 wm8400_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x9dfdf722 gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0x9dff88c4 sk_unattached_filter_create +EXPORT_SYMBOL_GPL vmlinux 0x9e05a374 devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9e20c6ee devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x9e461116 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x9e4db295 __class_register +EXPORT_SYMBOL_GPL vmlinux 0x9e64fde6 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x9ece3aa8 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9eff42d0 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0x9f02be43 kvm_release_page_clean +EXPORT_SYMBOL_GPL vmlinux 0x9f0664bf dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0x9f07cbde fsl_rio_mcheck_exception +EXPORT_SYMBOL_GPL vmlinux 0x9f23c3d5 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x9f2cc59a power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0x9f3232d5 tps65912_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x9f352507 cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9f3f98e1 of_get_nand_on_flash_bbt +EXPORT_SYMBOL_GPL vmlinux 0x9f4d31e7 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0x9f505bd2 pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x9f557432 regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0x9f7fc740 device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x9f859933 init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x9fba9272 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fe44894 __rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9fedb268 __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0xa001c915 class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xa01d188e power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0xa0208e02 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0xa0284e1d ata_scsi_simulate +EXPORT_SYMBOL_GPL vmlinux 0xa033881c device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0xa06d0821 i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0xa07057a2 device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xa0724f68 kvmppc_prepare_to_enter +EXPORT_SYMBOL_GPL vmlinux 0xa07533ba ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xa0771baf uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0xa08bf219 seq_release_net +EXPORT_SYMBOL_GPL vmlinux 0xa0a27fff pci_address_to_pio +EXPORT_SYMBOL_GPL vmlinux 0xa0a5dd77 ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0xa0a6a947 sysfs_get_dirent_ns +EXPORT_SYMBOL_GPL vmlinux 0xa0e97f53 sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0xa12d929d desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xa151ef96 cgroup_taskset_cur_css +EXPORT_SYMBOL_GPL vmlinux 0xa18c1f6c balloon_mapping_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa191c3ea stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0xa1bd7822 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xa1cf86d2 pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0xa1d46d80 dma_buf_export_named +EXPORT_SYMBOL_GPL vmlinux 0xa20ac65a of_get_regulator_init_data +EXPORT_SYMBOL_GPL vmlinux 0xa20de278 page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0xa2195b34 usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xa2215755 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa237e1e3 init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0xa2417288 elv_register +EXPORT_SYMBOL_GPL vmlinux 0xa25d09a9 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xa25d5bf6 usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa26f54c7 clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0xa28aaf29 rh_create +EXPORT_SYMBOL_GPL vmlinux 0xa2a1204b css_next_descendant_post +EXPORT_SYMBOL_GPL vmlinux 0xa2a470c1 __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xa2be108e debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0xa2c5f11c transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0xa2ce34da irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xa2d010ad fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0xa2dd3fe6 pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0xa308337d dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0xa30f5129 eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0xa3153e18 pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0xa3285a65 rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0xa3336f32 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0xa357d56e ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xa3708035 cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a2d9af walk_system_ram_range +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3bd8206 kvmppc_kvm_pv +EXPORT_SYMBOL_GPL vmlinux 0xa3dc36af __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0xa3e7c113 ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0xa3e81a58 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0xa3fbda47 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xa451daf6 pwm_request +EXPORT_SYMBOL_GPL vmlinux 0xa460c523 ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0xa4726eca need_load_eval +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa4a73536 usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xa4c74617 set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0xa4d28cc4 rtc_irq_set_state +EXPORT_SYMBOL_GPL vmlinux 0xa4d9ca40 bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0xa4e3b8e0 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xa4ea04ee of_property_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0xa51765f0 usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0xa52dd4e1 ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xa578e57b pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0xa57f84e0 raw_seq_open +EXPORT_SYMBOL_GPL vmlinux 0xa57f84f7 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0xa5aa9d46 usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0xa5b00659 ppc_proc_freq +EXPORT_SYMBOL_GPL vmlinux 0xa5e65c08 skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa5efe460 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xa61b1477 tracepoint_iter_start +EXPORT_SYMBOL_GPL vmlinux 0xa625110d kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0xa651e7a0 ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0xa68cd5dd devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0xa6a0a273 max77693_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xa6a49d62 subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xa6ad2430 regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0xa6ce8a74 rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0xa6d7a820 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa6eab28e relay_reset +EXPORT_SYMBOL_GPL vmlinux 0xa70e7f10 cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0xa7150572 __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa724257f init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0xa75312bc call_rcu_sched +EXPORT_SYMBOL_GPL vmlinux 0xa75811d0 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xa7a7d267 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0xa7bf5ece regmap_update_bits_async +EXPORT_SYMBOL_GPL vmlinux 0xa7dbebc9 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0xa7f92105 add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0xa805e14d tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0xa83a7c44 regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa8627eb1 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0xa8aafc8f usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xa8b1a1c9 clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0xa8c17a76 of_reset_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xa8e9838d devm_rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa8e9e071 register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0xa8f9045c regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0xa90ba6f9 tcp_is_cwnd_limited +EXPORT_SYMBOL_GPL vmlinux 0xa90d808c sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0xa9159b4e crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xa94cdbdd debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0xa957e51b shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0xa966dc35 tcp_reno_min_cwnd +EXPORT_SYMBOL_GPL vmlinux 0xa9790478 kobj_completion_release +EXPORT_SYMBOL_GPL vmlinux 0xa980af16 RSA_public_key_algorithm +EXPORT_SYMBOL_GPL vmlinux 0xa98be0c8 sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xa98c6cea sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0xa9aef2e1 gfn_to_hva_memslot +EXPORT_SYMBOL_GPL vmlinux 0xa9cc44cc extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9f1f767 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0xa9f91f45 tcp_done +EXPORT_SYMBOL_GPL vmlinux 0xa9fb74a2 of_device_is_stdout_path +EXPORT_SYMBOL_GPL vmlinux 0xaa17a2e2 rh_alloc_align +EXPORT_SYMBOL_GPL vmlinux 0xaa1ecd4f extcon_register_interest +EXPORT_SYMBOL_GPL vmlinux 0xaa2a72bf __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0xaa3abfb7 regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0xaa45aec1 kvmppc_emulate_instruction +EXPORT_SYMBOL_GPL vmlinux 0xaa4d0ba2 kallsyms_on_each_symbol +EXPORT_SYMBOL_GPL vmlinux 0xaa687b8e da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0xaa91941b cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0xaa95ce3d wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0xaaa0badc __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xab016449 usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xab041ba8 kvm_vcpu_init +EXPORT_SYMBOL_GPL vmlinux 0xab14e2ec fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0xab327ab7 kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL vmlinux 0xab59993b tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0xab59d373 kvmppc_free_lpid +EXPORT_SYMBOL_GPL vmlinux 0xab6babaf pm_qos_request +EXPORT_SYMBOL_GPL vmlinux 0xab857f70 usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xab86b4a3 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xab87b8b4 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0xab8f77c0 regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xaba9ae12 usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0xabaef3d6 user_match +EXPORT_SYMBOL_GPL vmlinux 0xabbf4991 tpm_show_caps +EXPORT_SYMBOL_GPL vmlinux 0xabd67d6b devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0xac58c1c2 crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0xac5c578e max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xac6bf161 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0xac900e9c tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0xaca0e473 ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0xacaa302e swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0xacbc0296 crypto_init_spawn +EXPORT_SYMBOL_GPL vmlinux 0xace322d7 usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xace5c0fc usb_bus_list +EXPORT_SYMBOL_GPL vmlinux 0xace8bc86 ping_proc_register +EXPORT_SYMBOL_GPL vmlinux 0xace8c93d kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xacfe8052 crypto_givcipher_type +EXPORT_SYMBOL_GPL vmlinux 0xad00b5a7 usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0xad2b1631 pwm_set_polarity +EXPORT_SYMBOL_GPL vmlinux 0xad35d4a0 usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0xad376749 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0xad3a8b57 scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0xad53e7cc class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0xad5e46f9 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0xad5eca88 arizona_of_get_type +EXPORT_SYMBOL_GPL vmlinux 0xad767452 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0xad91be44 md_stop +EXPORT_SYMBOL_GPL vmlinux 0xad946432 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xad9a875b rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0xada4ae48 pwm_enable +EXPORT_SYMBOL_GPL vmlinux 0xadc785ec kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0xaddc7645 sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xadf6aa4d tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xae2554c4 of_clk_src_onecell_get +EXPORT_SYMBOL_GPL vmlinux 0xae4e55b7 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae81048c pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xaea2339b inet_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0xaec5305a regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xaec8417c spi_unregister_master +EXPORT_SYMBOL_GPL vmlinux 0xaeeaf007 sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0xaf1f43b5 pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0xaf387449 smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xaf6bed73 vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0xafc550a5 devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xafe4d2ef irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xb027c54e of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0xb0385190 regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0xb05f4537 dm_set_device_limits +EXPORT_SYMBOL_GPL vmlinux 0xb0863eba usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0xb0913148 btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0xb0a0405f mdio_mux_init +EXPORT_SYMBOL_GPL vmlinux 0xb0a92037 sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0db2c96 crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0xb1092c53 thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0xb10d55bc cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0xb12c7a86 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0xb140d14c ring_buffer_read +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb1689eae subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xb16abc74 crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0xb1a7e3f6 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0xb1acbcce rcu_barrier_sched +EXPORT_SYMBOL_GPL vmlinux 0xb1b62d4a fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0xb1b6d07c irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0xb1bcd9e7 crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xb1c0c1c2 async_schedule_domain +EXPORT_SYMBOL_GPL vmlinux 0xb1d854a1 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb2256567 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0xb253421e usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0xb258a4cc rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0xb293c758 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0xb2a293a7 replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0xb2bf09e5 blkg_prfill_stat +EXPORT_SYMBOL_GPL vmlinux 0xb2c5621c pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0xb2c5a034 inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xb2dda807 ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0xb2fea11a rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0xb312dc76 __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xb316d24c pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xb325f3be led_trigger_store +EXPORT_SYMBOL_GPL vmlinux 0xb341c80a __clocksource_updatefreq_scale +EXPORT_SYMBOL_GPL vmlinux 0xb383c4e3 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xb3c39467 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0xb426ac5e ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0xb44d24ae sock_update_netprioidx +EXPORT_SYMBOL_GPL vmlinux 0xb454df00 usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0xb467212d debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0xb47843c8 cpu_add_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0xb4809a8b irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xb4a963fc __inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4d53d7d __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xb4de209a elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4f9404b rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0xb4fd071c usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0xb5052745 sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb5229e89 rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xb5341dff pwm_config +EXPORT_SYMBOL_GPL vmlinux 0xb53620d1 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0xb54605dd spi_master_resume +EXPORT_SYMBOL_GPL vmlinux 0xb54896a1 tpm_read +EXPORT_SYMBOL_GPL vmlinux 0xb58d1eb0 class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0xb58dcfa2 synchronize_sched_expedited +EXPORT_SYMBOL_GPL vmlinux 0xb5a0e11e lpddr2_jedec_addressing_table +EXPORT_SYMBOL_GPL vmlinux 0xb5aa10af atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb5bf3d77 rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0xb5c8edf4 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0xb5cb8145 hrtimer_get_res +EXPORT_SYMBOL_GPL vmlinux 0xb5e896fb tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0xb5f17edf perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb5f4ad2a gpio_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xb5fb9a45 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xb5feab3b yield_to +EXPORT_SYMBOL_GPL vmlinux 0xb60b5707 of_i8042_aux_irq +EXPORT_SYMBOL_GPL vmlinux 0xb60d3d0d __class_create +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb63b9014 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0xb65e6299 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0xb67b2219 cm_suspend_again +EXPORT_SYMBOL_GPL vmlinux 0xb67c64fd __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0xb67cf666 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0xb68e9a66 bmp085_probe +EXPORT_SYMBOL_GPL vmlinux 0xb69dd54b fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0xb6aeb661 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xb6b001bd lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0xb6b259cf bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xb6c635af wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb6d3ad97 fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0xb6db5cca tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0xb6eb9da9 usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0xb6f55cd2 crypto_aead_type +EXPORT_SYMBOL_GPL vmlinux 0xb74c9aff rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0xb7553f04 ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0xb76aa47f get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0xb770aa6d securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0xb786e77d percpu_ida_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb7879dd9 key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xb790d50b da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xb79c21c6 fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0xb79fb656 register_jprobe +EXPORT_SYMBOL_GPL vmlinux 0xb7d00dad dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0xb7dd8555 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xb7ec1fad tpm_show_enabled +EXPORT_SYMBOL_GPL vmlinux 0xb801ef37 blkg_lookup_create +EXPORT_SYMBOL_GPL vmlinux 0xb809b9ee md_ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xb82ee114 blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0xb87e21cc devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb89582f5 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0xb8ad5a98 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xb8f98bd7 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0xb903674c scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0xb9176155 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0xb988328e __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0xb9a5e086 disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9cfadba tcp_peer_is_proven +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9d659f7 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0xb9da2997 snmp_fold_field64 +EXPORT_SYMBOL_GPL vmlinux 0xb9dcdfbd net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0xb9f006dc cpufreq_notify_transition +EXPORT_SYMBOL_GPL vmlinux 0xba0f8d40 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0xba1bd6ee pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0xba4688f7 bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0xbac2e454 regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xbac64cb0 tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0xbac8105a device_store_int +EXPORT_SYMBOL_GPL vmlinux 0xbacad5a3 class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xbaeb88e9 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0xbb038ce4 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb18cc18 devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xbb3d390b sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0xbb60caa4 wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0xbb885753 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0xbba87b64 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0xbbfe4d5e put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xbc3591a2 device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0xbc5e2b55 __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0xbc70f00a con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0xbc8098bf pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0xbc96de60 kvm_release_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xbcac6160 pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbcb07b65 cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0xbcd0ad82 __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0xbcf66979 mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0xbd2ddfa3 fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0xbd3aff94 __mmu_notifier_invalidate_range_start +EXPORT_SYMBOL_GPL vmlinux 0xbd3d0084 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0xbd5cb8b9 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0xbd61d3d8 kvm_is_visible_gfn +EXPORT_SYMBOL_GPL vmlinux 0xbdd295f0 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xbdd2f42a rcu_bh_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0xbdd85534 dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0xbdf0ff3f da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0xbdf716f7 fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0xbdf75be7 tcp_init_congestion_ops +EXPORT_SYMBOL_GPL vmlinux 0xbe067d3f ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0xbe1887e4 ata_unpack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xbe473e6d balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0xbe8ada00 devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbeb3b6ad ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0xbebaa0a6 of_pci_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0xbec4df5a regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0xbecd1fd7 arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xbef01bd8 xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0xbef75efb regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf1cc04b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0xbf39f61d ping_bind +EXPORT_SYMBOL_GPL vmlinux 0xbf718a1d rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0xbf8d4a3b tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0xbf9e50cc i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xbfb65bf9 gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0xbfcb8658 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xbfcf7efc get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0xbfe30d9a ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0xbfe48e26 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0xbff8c633 class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xbffd6251 tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0xc00131cf visitor64 +EXPORT_SYMBOL_GPL vmlinux 0xc0061f30 xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0xc012ffdd adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc0198cc0 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0xc021f0ff ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0xc02bec3c usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xc02ea33d rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0xc061367e mpic_msgr_get +EXPORT_SYMBOL_GPL vmlinux 0xc065a455 cpu_core_index_of_thread +EXPORT_SYMBOL_GPL vmlinux 0xc0661d30 led_classdev_register +EXPORT_SYMBOL_GPL vmlinux 0xc07f80d6 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0xc083c23f tpm_store_cancel +EXPORT_SYMBOL_GPL vmlinux 0xc08647ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc08ef11d device_create +EXPORT_SYMBOL_GPL vmlinux 0xc0bf6ead timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xc0d01bc0 percpu_ref_cancel_init +EXPORT_SYMBOL_GPL vmlinux 0xc0d26387 kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc0d7348e scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0xc0e60e8a ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xc0e75cec visitor128 +EXPORT_SYMBOL_GPL vmlinux 0xc0ee3810 cpufreq_frequency_table_cpuinfo +EXPORT_SYMBOL_GPL vmlinux 0xc106d52e ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0xc11b45c6 gpiod_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xc11bd00f tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc1349bac ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc18578ed process_srcu +EXPORT_SYMBOL_GPL vmlinux 0xc18ac73a sdhci_pci_o2_probe_slot +EXPORT_SYMBOL_GPL vmlinux 0xc192e4ba spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0xc1bf40ae debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0xc1ca4909 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xc1ca914b call_srcu +EXPORT_SYMBOL_GPL vmlinux 0xc1fa519e usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xc1fd546f usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0xc208e5c2 rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc26c707b hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc2a91dbf rtc_set_mmss +EXPORT_SYMBOL_GPL vmlinux 0xc2ad9bf2 pwm_free +EXPORT_SYMBOL_GPL vmlinux 0xc2bea5d3 blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0xc2c25342 usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xc2dbaa35 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0xc2e49614 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0xc2fbaf3d fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0xc306fd71 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0xc311eaf7 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0xc31daa1f proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc3486379 tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xc34efe27 snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0xc358d50b ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0xc35b6887 usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xc3665de5 PageHuge +EXPORT_SYMBOL_GPL vmlinux 0xc37226a5 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xc38dfa71 swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0xc3beb4a1 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0xc3da4a5a sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0xc417a587 device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xc423cf48 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc454fc7b twl_get_type +EXPORT_SYMBOL_GPL vmlinux 0xc45d298a usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0xc46d877e schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0xc471c67a twl4030_audio_disable_resource +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc491325d sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0xc4a591f9 devm_usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xc4b7076c irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0xc4bc9150 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xc4db9318 eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0xc4f9b6fd debugfs_remove_recursive +EXPORT_SYMBOL_GPL vmlinux 0xc4f9bdea kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xc51c5093 preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc5302a05 napi_by_id +EXPORT_SYMBOL_GPL vmlinux 0xc5317748 ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0xc538d90d sysfs_notify_dirent +EXPORT_SYMBOL_GPL vmlinux 0xc54c631f skb_segment +EXPORT_SYMBOL_GPL vmlinux 0xc54f6539 kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL vmlinux 0xc55533b8 pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc57dd4e8 __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xc5a7f8c7 sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xc5c4f8d7 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0xc5ce4bc7 console_drivers +EXPORT_SYMBOL_GPL vmlinux 0xc5d37180 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0xc606cd3c boot_cpuid +EXPORT_SYMBOL_GPL vmlinux 0xc60f75ec __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xc614d6f8 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc63a1109 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc65d3eed ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc6710bed handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0xc68aa090 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xc68aa252 __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xc690866c irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc69d38cd spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0xc6a83d09 dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0xc70e4b59 kvmppc_claim_lpid +EXPORT_SYMBOL_GPL vmlinux 0xc71881a8 ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0xc72e1233 __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xc76adc08 usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0xc77b510b regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xc78143d1 trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7c6391c mpi_set_buffer +EXPORT_SYMBOL_GPL vmlinux 0xc7da17be timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0xc7e39bca ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc7ec237d __init_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0xc7ee5734 regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc7fbc35b device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xc809d106 netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0xc813f0d5 usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0xc817c1f8 kvmppc_emulate_mmio +EXPORT_SYMBOL_GPL vmlinux 0xc817ec16 serial8250_rx_dma +EXPORT_SYMBOL_GPL vmlinux 0xc82d3a4c debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0xc832fc6b crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0xc84f8899 devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xc86d8fdc usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0xc87e02bf usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0xc88058ce input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc88d9836 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0xc891f4e6 usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xc8aa70c3 regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xc8add232 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0xc8bcc832 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xc8f215b5 subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc9163e8a percpu_ida_for_each_free +EXPORT_SYMBOL_GPL vmlinux 0xc94d5fad kvm_read_guest +EXPORT_SYMBOL_GPL vmlinux 0xc94f1863 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc97d1140 cpufreq_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0xc97e9bff register_jprobes +EXPORT_SYMBOL_GPL vmlinux 0xc9cfa97f of_pci_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0xc9dee8c5 ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xca274d21 usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0xca35b98f usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xca53c1df usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0xca6a22fb regmap_field_write +EXPORT_SYMBOL_GPL vmlinux 0xca767be9 pwm_can_sleep +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca85d8cf tracepoint_probe_update_all +EXPORT_SYMBOL_GPL vmlinux 0xca946187 of_clk_add_provider +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcac318d7 dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0xcacec275 crypto_lookup_aead +EXPORT_SYMBOL_GPL vmlinux 0xcadcd0fb driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0xcaeaadd2 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0xcb14dc03 spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb469d2b ddebug_add_module +EXPORT_SYMBOL_GPL vmlinux 0xcb591188 ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0xcb9b162e clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0xcbc06fb1 rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0xcbd0c1c3 skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0xcbd13148 of_pci_msi_chip_remove +EXPORT_SYMBOL_GPL vmlinux 0xcbd5ed06 page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0xcbee20b2 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0xcc10efec watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0xcc134542 regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0xcc1f1c3d inet_twdr_hangman +EXPORT_SYMBOL_GPL vmlinux 0xcc338415 find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xcc44961f kvmppc_alloc_lpid +EXPORT_SYMBOL_GPL vmlinux 0xcc507647 ata_eh_qc_retry +EXPORT_SYMBOL_GPL vmlinux 0xcc53f78e crypto_alloc_instance +EXPORT_SYMBOL_GPL vmlinux 0xcc550bce save_stack_trace_tsk +EXPORT_SYMBOL_GPL vmlinux 0xcc85fcb6 async_schedule +EXPORT_SYMBOL_GPL vmlinux 0xcc8c4990 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xcc97aadd ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xccc5297d pwm_put +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xcd1a3138 sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0xcd40e912 regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0xcd526c7e tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0xcd897ca4 pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcdad6c3e tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xcdb01877 ktime_add_ns +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcde9e898 crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0xce0b9b59 max77693_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xce46e140 ktime_get_ts +EXPORT_SYMBOL_GPL vmlinux 0xce51fdd8 sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0xce6a9d9a trace_current_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce839abd sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0xce9737fe dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0xcea9708e sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0xcebed60d serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0xcecd73c6 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0xced020b2 __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcf0b76eb find_linux_pte_or_hugepte +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf8e19e8 inet_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0xcf91b289 da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0xcfc68341 synchronize_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0xcfc90d29 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0xcfcc415d ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xcfd9a317 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0xcfe1b8da sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0xcff93b2a single_release_net +EXPORT_SYMBOL_GPL vmlinux 0xcffc8fcf class_find_device +EXPORT_SYMBOL_GPL vmlinux 0xd018db22 pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0xd03a858f raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0xd03b07ae reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xd03c7700 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0xd046d3b0 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xd04fab88 kvm_read_guest_page +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd06c64a8 transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xd09eeb08 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0cc5799 ahash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0xd0f4c7a9 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xd11b71b5 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0xd12ebd56 sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0xd13d3eb9 __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0xd14bc4d9 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xd15f836d ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd16712f3 crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xd17a8ab4 blk_rq_check_limits +EXPORT_SYMBOL_GPL vmlinux 0xd1b2db37 tracepoint_probe_register_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xd1c84e4b cgroup_is_descendant +EXPORT_SYMBOL_GPL vmlinux 0xd1dac335 class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xd1f22b71 sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0xd1f34b90 usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0xd1fedce0 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd1fefa81 ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd2151c09 ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd258217d clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0xd265fc6a list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0xd271e258 usb_bus_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd2866441 __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0xd29f8d64 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0xd2a2b6e3 rtc_irq_register +EXPORT_SYMBOL_GPL vmlinux 0xd2a75998 iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0xd2aaeb4e kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0xd2ac2c17 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0xd2af0aba usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0xd2b57b0a usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0xd2c45ea4 of_pci_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0xd302097c dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0xd32fe193 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xd3a4dc8f tcp_fetch_timewait_stamp +EXPORT_SYMBOL_GPL vmlinux 0xd3df9a6d register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0xd3ec2592 cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0xd3f13e1d hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4075c2b ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0xd4178527 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd489610e platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0xd48c7be3 pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xd490b58f sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4cad45e clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xd4f03155 __mmu_notifier_invalidate_range_end +EXPORT_SYMBOL_GPL vmlinux 0xd4f2de4a skcipher_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0xd4facf94 bsg_request_fn +EXPORT_SYMBOL_GPL vmlinux 0xd513ddbf timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0xd5432e6e __scsi_get_command +EXPORT_SYMBOL_GPL vmlinux 0xd57d206a mddev_init +EXPORT_SYMBOL_GPL vmlinux 0xd582227a leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xd58723cb of_pci_msi_chip_add +EXPORT_SYMBOL_GPL vmlinux 0xd5b4824b devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xd5bd7dac ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0xd6009e3b bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xd649bca3 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xd65adadb scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd67fe041 __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xd6c2e04b __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0xd6e347fd digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0xd6fa4589 nl_table +EXPORT_SYMBOL_GPL vmlinux 0xd6feefa5 agp_num_entries +EXPORT_SYMBOL_GPL vmlinux 0xd71550fb devres_add +EXPORT_SYMBOL_GPL vmlinux 0xd72f6972 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd77c0bc8 klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xd7b42508 aead_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0xd7c90aee rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0xd7e8c6d3 regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xd7edf2d3 file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0xd7fbedea regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xd81de62c ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xd820c283 eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xd84a41cd ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0xd8525ea7 fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0xd87601cc ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd88804ce wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xd88aa15b dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xd89285ab securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xd895ed7e debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0xd8a01cf1 tpm_open +EXPORT_SYMBOL_GPL vmlinux 0xd8afe941 reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xd8d2797d pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0xd9163011 crypto_attr_alg2 +EXPORT_SYMBOL_GPL vmlinux 0xd91b11e9 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0xd92bde70 regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0xd9418c16 __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0xd942d353 ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0xd944d8f9 ktime_get_boottime +EXPORT_SYMBOL_GPL vmlinux 0xd99c0657 get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0xd9a34035 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0xd9d187e9 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0xd9eaad53 rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xd9ecb670 ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xda0a4d22 mpic_msgr_enable +EXPORT_SYMBOL_GPL vmlinux 0xda27d230 inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xda35414e register_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0xda44cb37 setup_charger_manager +EXPORT_SYMBOL_GPL vmlinux 0xda4610e1 pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0xda6cb550 ata_sas_port_async_suspend +EXPORT_SYMBOL_GPL vmlinux 0xda814e22 sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0xda8290a8 rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xda8cb2e5 threads_core_mask +EXPORT_SYMBOL_GPL vmlinux 0xda982c77 css_next_child +EXPORT_SYMBOL_GPL vmlinux 0xdac11bae of_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xdac23178 blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0xdadabe4b spi_setup +EXPORT_SYMBOL_GPL vmlinux 0xdadb4bae ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdb047340 usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdb04cacc tracepoint_probe_unregister_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xdb230aa5 relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0xdb31e9d6 dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0xdb35e8a1 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0xdb61dcc8 tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0xdb6ce652 pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0xdb6de9a4 sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdba4ad93 static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0xdba5a2ef md_new_event +EXPORT_SYMBOL_GPL vmlinux 0xdba80fc1 of_fdt_unflatten_tree +EXPORT_SYMBOL_GPL vmlinux 0xdbae829b wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0xdbbce830 ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xdbe9ec87 regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc09c785 pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xdc1e15f1 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdcabdb80 inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xdd2efc0f ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd3e0014 __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xdd4836cd kvm_vcpu_cache +EXPORT_SYMBOL_GPL vmlinux 0xdd66a920 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0xdd66ace8 fb_ddc_read +EXPORT_SYMBOL_GPL vmlinux 0xdd729424 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0xdd9fc4ef palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0xddc4a0fe unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xddd58dc0 ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0xddfdb0c6 srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0xde02d147 screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0xde425ad7 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0xde49217c crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xde63b337 rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xde71b532 cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xde7bbab3 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xdeb6ea30 pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0xdee3a38d blk_queue_bio +EXPORT_SYMBOL_GPL vmlinux 0xdf07b198 blk_unprep_request +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf52db69 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0xdf977e77 driver_register +EXPORT_SYMBOL_GPL vmlinux 0xdfacd845 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xe007de41 kallsyms_lookup_name +EXPORT_SYMBOL_GPL vmlinux 0xe016616c ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0xe02eb6d0 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0xe036b3e9 mpic_msgr_put +EXPORT_SYMBOL_GPL vmlinux 0xe0428ac2 srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0xe045b6a9 fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0xe052cc41 irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xe06345ee usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0xe065113d irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0xe07e08db mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0xe089cfcc agp_memory_reserved +EXPORT_SYMBOL_GPL vmlinux 0xe0956627 rtc_irq_set_freq +EXPORT_SYMBOL_GPL vmlinux 0xe0b05f9c __get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0xe0c31b0b wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xe0d778a3 rq_flush_dcache_pages +EXPORT_SYMBOL_GPL vmlinux 0xe0ea47d7 xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0xe11d069b tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xe1419c20 uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe19eb1c4 percpu_ida_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe1a4f2cb blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1c32794 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xe1f0f004 input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0xe1ff034c uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0xe21cdfda usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xe224c1ef pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xe230de71 usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xe26e7b97 crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0xe28f646e regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xe2a32d40 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0xe2c1f528 fuse_get_req +EXPORT_SYMBOL_GPL vmlinux 0xe2df10f6 crypto_unregister_pcomp +EXPORT_SYMBOL_GPL vmlinux 0xe2f40497 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0xe2fa8d9f simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0xe30079f7 flush_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe30d7b62 find_module +EXPORT_SYMBOL_GPL vmlinux 0xe30fac88 ktime_get_monotonic_offset +EXPORT_SYMBOL_GPL vmlinux 0xe316b343 gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0xe33bd84d tpm_show_timeouts +EXPORT_SYMBOL_GPL vmlinux 0xe384a102 usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0xe3929bdc transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0xe39ebe8b usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0xe3bb04f8 rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0xe3c7620b subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe3da4354 crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xe3dd1369 pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xe3eca2a1 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0xe40f9d2b gfn_to_pfn_async +EXPORT_SYMBOL_GPL vmlinux 0xe42a283c watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xe430a4c8 ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xe46df4bf inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xe4902a6b usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0xe4b225fc bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0xe4c031f8 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xe4c4b28f gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xe4d113e1 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0xe4dc2413 debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0xe4ed3544 rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0xe5082fdc ping_hash +EXPORT_SYMBOL_GPL vmlinux 0xe52ae762 __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xe5482f2f add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xe56018ee inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0xe56cea8c ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58fb452 aer_irq +EXPORT_SYMBOL_GPL vmlinux 0xe59422fe pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0xe5abe8f1 __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0xe5deae5f ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe643b9ce spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xe645104a platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0xe651f76e selinux_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe655dd5b rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0xe6608965 inet6_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0xe6754f5d pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0xe6795d09 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0xe685424c nf_queue_entry_release_refs +EXPORT_SYMBOL_GPL vmlinux 0xe6a3b048 cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xe6b4e479 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0xe6bc6030 gfn_to_pfn +EXPORT_SYMBOL_GPL vmlinux 0xe6c68334 ddebug_remove_module +EXPORT_SYMBOL_GPL vmlinux 0xe6d26d30 dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0xe6dd32ef page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0xe6e1c5fe uuid_be_gen +EXPORT_SYMBOL_GPL vmlinux 0xe6f2b6f7 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xe70886d1 input_class +EXPORT_SYMBOL_GPL vmlinux 0xe7145917 usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0xe731592b pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe76a6547 debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xe79a17d3 kvmppc_handle_store +EXPORT_SYMBOL_GPL vmlinux 0xe79e6a4e spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0xe7a57359 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0xe7bf74ac sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0xe7c610b3 tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xe7df35ba input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe8188cfd tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe83cd4f9 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0xe83cd519 xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0xe8400441 of_property_read_string_index +EXPORT_SYMBOL_GPL vmlinux 0xe8407ea7 clk_register_mux +EXPORT_SYMBOL_GPL vmlinux 0xe85c55e7 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe85cedb5 __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0xe85eb97b driver_find +EXPORT_SYMBOL_GPL vmlinux 0xe85eea79 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0xe862af5e posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe86a17fd regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0xe872f15c nf_register_afinfo +EXPORT_SYMBOL_GPL vmlinux 0xe876131f __blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0xe8b5c6cb get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0xe8d84a7d relay_flush +EXPORT_SYMBOL_GPL vmlinux 0xe8f9dd18 rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0xe938a4cc driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe9452b91 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0xe9660485 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xe96ba147 sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xe97e635b rtc_irq_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe98065f8 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0xe9960473 agp_remove_bridge +EXPORT_SYMBOL_GPL vmlinux 0xe9d60704 ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xe9f736da unregister_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0xe9fb2fc6 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0xe9fccd3f usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea173e4e dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0xea418e0f atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0xea47b708 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0xea611bdd usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0xea680d35 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0xea6aed60 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0xea875dad clockevents_unbind +EXPORT_SYMBOL_GPL vmlinux 0xeac85eeb usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0xeafa9a16 sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xeb1c3628 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xeb3a2f3a __get_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xeb4d3dac platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xeb8ae736 klist_init +EXPORT_SYMBOL_GPL vmlinux 0xeb98215e cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xeb9abbee ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xebd3b1c6 clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0xebec57c4 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xebf76ccb fuse_conn_kill +EXPORT_SYMBOL_GPL vmlinux 0xec1b043e regulator_suspend_prepare +EXPORT_SYMBOL_GPL vmlinux 0xec25f967 klist_del +EXPORT_SYMBOL_GPL vmlinux 0xec78b46f posix_timers_register_clock +EXPORT_SYMBOL_GPL vmlinux 0xed057938 vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0xed25d9d5 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xed298a02 usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xed2aac8f use_mm +EXPORT_SYMBOL_GPL vmlinux 0xed2c0557 debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0xed2c869c serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0xed3aae89 usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0xed43d526 sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0xed65b7c6 rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0xed83b7c9 rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0xed949426 ata_eh_thaw_port +EXPORT_SYMBOL_GPL vmlinux 0xedbf3cbb of_get_dma_window +EXPORT_SYMBOL_GPL vmlinux 0xedc2994d ktime_get_real +EXPORT_SYMBOL_GPL vmlinux 0xedd49930 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xee4c94a5 kvmppc_pr_ops +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee958aa6 cpu_add_dev_attr_group +EXPORT_SYMBOL_GPL vmlinux 0xeeb6f944 __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0xeed00ead fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0xeee52293 regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xef3411ce srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xef409b74 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0xef409df4 hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0xef422dca alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xefb3ad1e crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0xefcdfdd2 set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0xeff6d539 ahash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0xf03682b8 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0xf049c8db inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xf0be1009 inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0xf0c9b7fb ping_seq_fops +EXPORT_SYMBOL_GPL vmlinux 0xf0da9c15 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0xf1002313 swiotlb_tbl_unmap_single +EXPORT_SYMBOL_GPL vmlinux 0xf11200df irq_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0xf1245b5d regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xf126d847 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xf134a677 rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xf158f170 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0xf17ac976 __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0xf1840474 dma_buf_kmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf187f426 usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0xf1884b7d ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xf1a62b6f of_i8042_kbd_irq +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf2389816 arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xf239c575 blk_queue_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xf24204d6 mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0xf2442985 usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xf26c1aec sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0xf27977e2 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0xf29d525a ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0xf29edebf usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0xf2d26166 __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0xf2d26458 dm_underlying_device_busy +EXPORT_SYMBOL_GPL vmlinux 0xf2e49b6e regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xf2f077cc pkey_id_type_name +EXPORT_SYMBOL_GPL vmlinux 0xf2fca922 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0xf3012f6c rh_free +EXPORT_SYMBOL_GPL vmlinux 0xf30fda27 lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0xf318b48c cpufreq_frequency_table_target +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf32e860a gpio_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf36b3233 rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xf3743f7b devm_spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0xf3a8ce3b regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3e2b85b ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xf404cad9 spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xf46c38ab ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0xf484abf0 cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf494f618 mmc_regulator_get_ocrmask +EXPORT_SYMBOL_GPL vmlinux 0xf4954775 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xf499fdb2 rcu_barrier_bh +EXPORT_SYMBOL_GPL vmlinux 0xf49fe611 scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xf4ba1b89 tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0xf4da3546 kvmppc_init_lpid +EXPORT_SYMBOL_GPL vmlinux 0xf4fc2d6c __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf522f5ee pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf54c8633 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5bcf1b2 __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0xf5bf4b87 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0xf5c100de ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0xf5e7f053 rh_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf5fb0cd4 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xf5fef4e3 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf60154a4 extcon_update_state +EXPORT_SYMBOL_GPL vmlinux 0xf60f7f57 tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0xf61f66ef kvm_vcpu_block +EXPORT_SYMBOL_GPL vmlinux 0xf62289a0 ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0xf627e653 mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xf677dbba ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0xf695d06a __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0xf698bd56 security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0xf6e1489d pci_msi_off +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf72a28a0 class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf7565415 dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0xf75d823e devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf76a390c __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xf77a5c82 sec_reg_update +EXPORT_SYMBOL_GPL vmlinux 0xf791971f inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0xf7b1a066 __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0xf7bd2638 trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0xf7eb2966 arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0xf812395f blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0xf816c866 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xf82034b3 wm8400_block_read +EXPORT_SYMBOL_GPL vmlinux 0xf820dab2 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0xf82f16b3 execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf8409386 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xf84c55e0 usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xf859b6be clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0xf8802492 print_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xf8aa06be sec_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xf8b4fac5 of_irq_parse_pci +EXPORT_SYMBOL_GPL vmlinux 0xf8e35291 regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3d0b kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0xf90c94d8 sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xf920044f ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xf92ce956 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf93ee9dd regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xf963b647 blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0xf976e533 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf978dd28 ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xf98ba300 sdhci_pci_o2_probe +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9a4ebdb blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0xf9af278f sdhci_pci_o2_fujin2_pci_init +EXPORT_SYMBOL_GPL vmlinux 0xf9ca3160 ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xfa012fe7 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0xfa01ba5b dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0xfa155380 sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0xfa1e9ff5 power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa1f4662 scatterwalk_start +EXPORT_SYMBOL_GPL vmlinux 0xfa254811 scsi_internal_device_unblock +EXPORT_SYMBOL_GPL vmlinux 0xfa2d0e2c devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0xfa2f00e5 crypto_rng_type +EXPORT_SYMBOL_GPL vmlinux 0xfa4099d3 tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0xfa5729bc platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0xfa5d008c hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0xfaac135b dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xfab60503 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0xfabdbf33 devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xfac59df3 sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0xfaeb4d28 fat_detach +EXPORT_SYMBOL_GPL vmlinux 0xfaedc7df pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0xfb215c82 da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb3472b5 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0xfb52b77d __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb83db03 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xfbb8bb6a vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0xfbbedefd of_prop_next_string +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc2b780f fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0xfc3d64b3 ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0xfc4f4811 usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0xfc677be1 regmap_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xfcc789d9 sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0xfccb76ca crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0xfcd7bc0b ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0xfcea8f79 power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0xfd4028c6 subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0xfd43f934 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0xfd4d757a regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xfdb0899e blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0xfdb77a5f cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0xfe2e3b62 crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0xfe45428a perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfed57d5a regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xfeda4e1c look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0xfef8a166 trace_current_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xff565afe bus_find_device_by_name +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff6f48ac device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0xff8862d7 rh_get_stats +EXPORT_SYMBOL_GPL vmlinux 0xffad1650 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0xffd10e6a irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xffd72761 invalidate_inode_pages2_range --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/powerpc/powerpc-e500mc.compiler +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/powerpc/powerpc-e500mc.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 4.8.2-19ubuntu1) 4.8.2 --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/powerpc/powerpc-e500mc.modules +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/powerpc/powerpc-e500mc.modules @@ -0,0 +1,3670 @@ +3c574_cs +3c589_cs +3c59x +3w-9xxx +3w-sas +3w-xxxx +6lowpan +6pack +8021q +8139cp +8139too +8250_dw +8250_pci +8255 +8255_pci +8390 +88pm800 +88pm805 +88pm80x +88pm80x_onkey +88pm860x_battery +88pm860x_bl +88pm860x_charger +88pm860x_onkey +88pm860x-ts +9p +9pnet +9pnet_rdma +9pnet_virtio +a100u2w +a3d +a8293 +aacraid +aat2870_bl +aat2870-regulator +ab3100 +ab3100-otp +ac97_bus +acard-ahci +acecad +acenic +act200l-sir +act_csum +act_gact +act_ipt +actisys-sir +act_mirred +act_nat +act_pedit +act_police +act_simple +act_skbedit +ad2s1200 +ad2s1210 +ad2s90 +ad5064 +ad525x_dpot +ad525x_dpot-i2c +ad525x_dpot-spi +ad5360 +ad5380 +ad5398 +ad5421 +ad5446 +ad5449 +ad5504 +ad5624r_spi +ad5686 +ad5755 +ad5764 +ad5791 +ad5930 +ad5933 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7152 +ad7192 +ad7266 +ad7280a +ad7291 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +ad7476 +ad7606 +ad7746 +ad7780 +ad7791 +ad7793 +ad7816 +ad7877 +ad7879 +ad7879-i2c +ad7879-spi +ad7887 +ad7923 +ad799x +ad8366 +ad9523 +ad9832 +ad9834 +ad9850 +ad9852 +ad9910 +ad9951 +adcxx +addi_apci_035 +addi_apci_1032 +addi_apci_1500 +addi_apci_1516 +addi_apci_1564 +addi_apci_16xx +addi_apci_2032 +addi_apci_2200 +addi_apci_3120 +addi_apci_3501 +addi_apci_3xxx +addi_watchdog +ade7753 +ade7754 +ade7758 +ade7759 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adfs +adi +adis16060 +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16204 +adis16209 +adis16220 +adis16240 +adis16260 +adis16400 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adl_pci9118 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1275 +adm8211 +adm9240 +adp5520_bl +adp5520-keys +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +ads1015 +ads7828 +ads7846 +ads7871 +ad_sigma_delta +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adv7170 +adv7175 +adv7180 +advansys +adv_pci1710 +adv_pci1723 +adv_pci1724 +adv_pci_dio +adxl34x +adxl34x-i2c +adxl34x-spi +adxrs450 +af_802154 +af9013 +af9033 +af_alg +affs +af_key +af_packet_diag +af-rxrpc +ah4 +ah6 +aha152x_cs +ahci +ahci_platform +aic79xx +aic7xxx +aic94xx +aiptek +aircable +airo +airo_cs +ak8975 +algif_hash +algif_skcipher +ali-ircc +alim7101_wdt +alphatrack +altera-ci +altera_jtaguart +altera_ps2 +altera-stapl +altera_uart +alx +ambassador +amc6821 +amd5536udc +amd8111e +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pci224 +amplc_pci230 +amplc_pci263 +ams369fg06 +analog +anatop-regulator +ansi_cprng +anubis +aoe +apbps2 +apds9300 +apds9802als +apds990x +appledisplay +appletalk +appletouch +applicom +ar5523 +ar7part +arc4 +arc_emac +arcmsr +arcnet +arc_ps2 +arc-rawmode +arc-rimi +arc_uart +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +arptable_filter +arp_tables +arpt_mangle +as3711_bl +as3711-regulator +as3722-regulator +as5011 +asc7621 +asix +ast +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at86rf230 +at91_ether +ata_piix +atbm8830 +aten +ath +ath10k_core +ath10k_pci +ath3k +ath5k +ath6kl_core +ath6kl_sdio +ath6kl_usb +ath9k +ath9k_common +ath9k_htc +ath9k_hw +ati_remote +ati_remote2 +atl1 +atl1c +atl1e +atl2 +atm +atmel +atmel_cs +atmel_mxt_ts +atmel_pci +atmel_pwm +atmel-pwm-bl +atmel-rng +atmel-ssc +atmtcp +atp870u +atxp1 +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo_k1900fb +auo_k1901fb +auo_k190x +auo-pixcir-ts +authenc +authencesn +auth_rpcgss +autofs4 +avma1_cs +avm_cs +avmfritz +ax25 +ax88179_178a +axnet_cs +b1 +b1dma +b1pci +b1pcmcia +b2c2-flexcop +b2c2-flexcop-pci +b2c2-flexcop-usb +b43 +b43legacy +b44 +bas_gigaset +batman-adv +baycom_epp +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm203x +bcm3510 +bcm5974 +bcma +bcma-hcd +bcm_wimax +bd6107 +be2iscsi +be2net +befs +belkin_sa +bfa +bfs +bfusb +bh1770glc +bh1780gli +binfmt_misc +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +bluecard_cs +bluetooth +bma150 +bma180 +bman_debugfs_interface +bmp085-i2c +bmp085-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bonding +booke_wdt +bpa10x +bpck +bpck6 +bpctl_mod +bpqether +bq2415x_charger +bq24190_charger +bq24735-charger +bq27x00_battery +br2684 +brcmfmac +brcmsmac +brcmutil +bridge +broadsheetfb +bsd_comp +bt3c_cs +bt819 +bt856 +bt866 +bt878 +btcoexist +btcx-risc +btmrvl +btmrvl_sdio +btmtk_usb +btrfs +btsdio +bttv +btuart_cs +btusb +btwilink +bu21013_ts +budget +budget-av +budget-ci +budget-core +budget-patch +BusLogic +bw-qcam +bypass +c4 +c67x00 +caam +caamalg +caamhash +caam_jr +caamrng +cachefiles +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camellia_generic +can +can-bcm +can-dev +can-gw +can-raw +capi +capidrv +capmode +carl9170 +carminefb +cassini +cast5_generic +cast6_generic +cast_common +catc +cb710 +cb710-mmc +cb_das16_cs +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +cb_pcimdda +cc770 +cc770_isa +cc770_platform +c_can +c_can_pci +c_can_platform +cciss +ccm +cdc-acm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc-phonet +cdc_subset +cdc-wdm +cedusb +ceph +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +chipreg +chnl_net +cifs +ci_hdrc +ci_hdrc_imx +ci_hdrc_msm +ci_hdrc_pci +cirrus +cirrusfb +clearpad_tm1217 +clip +clk-max77686 +clk-s2mps11 +clk-si5351 +clk-twl6040 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_fw +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm36651 +cm4000_cs +cm4040_cs +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cmtp +cnic +cobra +coda +com20020 +com20020_cs +com20020-pci +com90io +com90xx +comedi +comedi_bond +comedi_fc +comedi_parport +comedi_test +comm +configfs +contec_pci_dio +cordic +core +cp210x +cpia2 +cpm_uart +c-qcam +cramfs +crc32 +crc7 +crc8 +crc-ccitt +crc-itu-t +cros_ec +cros_ec_i2c +cros_ec_keyb +cros_ec_spi +cryptd +cryptoloop +crypto_null +crypto_user +crystalhd +cs5345 +cs53l32a +csiostor +ctr +cts +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx8800 +cx8802 +cx88-alsa +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx88xx +cxacru +cxd2099 +cxd2820r +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxt1e1 +cy8ctmg110_ts +cyapa +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +cyttsp_core +cyttsp_i2c +cyttsp_i2c_common +cyttsp_spi +da9030_battery +da9034-ts +da903x +da903x_bl +da9052-battery +da9052_bl +da9052-hwmon +da9052_onkey +da9052-regulator +da9052_tsi +da9052_wdt +da9055-hwmon +da9055_onkey +da9055-regulator +da9055_wdt +da9063-regulator +da9210-regulator +DAC960 +daqboard2000 +das08 +das08_cs +das08_pci +db9 +dc395x +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +dccp_probe +ddbridge +de2104x +de4x5 +decnet +deflate +defxx +denali +denali_dt +denali_pci +des_generic +designware_i2s +dgap +dgnc +dgrp +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dibx000_common +digi_acceleport +diskonchip +divacapi +divadidd +diva_idi +diva_mnt +divas +dl2k +dlci +dlm +dm1105 +dm9601 +dm-bio-prison +dm-bufio +dm-cache +dm-cache-cleaner +dm-cache-mq +dm-crypt +dm-delay +dmfe +dm-flakey +dm-log +dm-log-userspace +dm-mirror +dm-multipath +dm-persistent-data +dm-queue-length +dm-raid +dm-region-hash +dm-round-robin +dm-service-time +dm-snapshot +dm-switch +dm-thin-pool +dm-verity +dmx3191d +dm-zero +dnet +dn_rtmsg +docg3 +docg4 +donauboe +dpaa_1588 +dpa_uio +dpt_i2o +drbd +drm +drm_kms_helper +drm_usb +drxd +drxk +ds1621 +ds1682 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds620 +dsa_core +dsbr100 +dscc4 +dss1_divert +dst +dst_ca +dstr +dt3000 +dt3155v4l +dt9812 +dtl1_cs +dummy +dummy-irq +dvb-as102 +dvb-bt8xx +dvb-core +dvb-pll +dvb-ttpci +dvb-ttusb-budget +dvb-usb +dvb-usb-a800 +dvb-usb-af9005 +dvb-usb-af9005-remote +dvb-usb-af9015 +dvb-usb-af9035 +dvb-usb-anysee +dvb-usb-au6610 +dvb-usb-az6007 +dvb-usb-az6027 +dvb-usb-ce6230 +dvb-usb-cinergyT2 +dvb-usb-cxusb +dvb-usb-dib0700 +dvb-usb-dibusb-common +dvb-usb-dibusb-mb +dvb-usb-dibusb-mc +dvb-usb-digitv +dvb-usb-dtt200u +dvb-usb-dtv5100 +dvb-usb-dw2102 +dvb-usb-ec168 +dvb-usb-friio +dvb-usb-gl861 +dvb-usb-gp8psk +dvb-usb-it913x +dvb-usb-lmedm04 +dvb-usb-m920x +dvb-usb-mxl111sf +dvb-usb-nova-t-usb2 +dvb-usb-opera +dvb-usb-pctv452e +dvb-usb-rtl28xxu +dvb-usb-technisat-usb2 +dvb-usb-ttusb2 +dvb-usb-umt-010 +dvb_usb_v2 +dvb-usb-vp702x +dvb-usb-vp7045 +dwc2 +dwc2_pci +dwc2_platform +dwc3 +dwc3-pci +dw_dmac +dw_dmac_core +dw_dmac_pci +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +e4000 +earth-pt1 +eata +ebt_802_3 +ebtable_broute +ebtable_filter +ebtable_nat +ebtables +ebt_among +ebt_arp +ebt_arpreply +ebt_dnat +ebt_ip +ebt_ip6 +ebt_limit +ebt_log +ebt_mark +ebt_mark_m +ebt_nflog +ebt_pkttype +ebt_redirect +ebt_snat +ebt_stp +ebt_vlan +ec100 +echo +edac_core +edt-ft5x06 +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efs +egalax_ts +ehset +elo +elsa_cs +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +emc1403 +emc2103 +emc6w201 +em_canid +em_cmp +emi26 +emi62 +em_ipset +em_meta +em_nbyte +empeg +ems_pci +ems_pcmcia +ems_usb +em_text +emu10k1-gp +em_u32 +enc28j60 +enclosure +eni +enic +epat +epia +epic100 +eql +esas2r +esd_usb2 +esi-sir +esp4 +esp6 +et131x +ethoc +evbug +exofs +extcon-adc-jack +extcon-arizona +extcon-gpio +extcon-max77693 +extcon-max8997 +extcon-palmas +ezusb +f2fs +f75375s +f81232 +fakelb +fan53555 +farsync +faulty +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_cs +fealnx +ff-memless +fid +firedtv +firestream +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fit2 +fit3 +fixed +fld +flexcan +floppy +fm801-gp +fmc +fmc-chardev +fmc-fakedev +fmc-trivial +fmc-write-eeprom +fm_drv +fmvj18x_cs +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +freevxfs +friq +frpw +fsa9480 +fscache +fs_enet +fsl-diu-fb +fsldma +fsl_elbc_nand +fsl_hypervisor +fsl_ifc_nand +fsl_pq_mdio +fsl_qe_udc +fsl_upm +fsl_usb2_udc +ft1000 +ft1000_pcmcia +ftdi-elan +ftdi_sio +ftl +fujitsu_ts +fusbh200-hcd +g450_pll +g760a +g762 +g_acm_ms +gadgetfs +gamecon +gameport +garmin_gps +garp +g_audio +g_cdc +gcm +g_dbgp +gdmtty +gdmulte +gdmwm +gdth +generic +generic-adc-battery +generic_bl +gen_probe +g_ether +gf128mul +gf2k +g_ffs +gfs2 +ghash-generic +g_hid +gianfar_driver +gianfar_ptp +gigaset +girbil-sir +gl518sm +gl520sm +gl620a +gluebi +g_mass_storage +g_midi +g_ncm +g_nokia +go7007 +go7007-loader +go7007-usb +goku_udc +goldfishfb +gp2ap002a00f +gp2ap020a00f +gpio +gpio-74x164 +gpio-addr-flash +gpio-adnp +gpio-adp5520 +gpio-adp5588 +gpio-amd8111 +gpio-arizona +gpio_backlight +gpio-charger +gpio-da9052 +gpio-da9055 +gpio-fan +gpio-generic +gpio-grgpio +gpio-ir-recv +gpio-janz-ttl +gpio-kempld +gpio_keys +gpio_keys_polled +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-mc33880 +gpio-mcp23s08 +gpio-ml-ioh +gpio_mouse +gpio-pca953x +gpio-pcf857x +gpio-rdc321x +gpio-regulator +gpio_tilt_polled +gpio-tps65912 +gpio-ts5500 +gpio-twl4030 +gpio-twl6040 +gpio-ucb1400 +gpio-viperboard +gpio-vx855 +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +g_printer +grcan +gre +grip +grip_mp +gsc_hpdi +g_serial +gspca_benq +gspca_conex +gspca_cpia1 +gspca_etoms +gspca_finepix +gspca_gl860 +gspca_jeilinj +gspca_jl2005bcd +gspca_kinect +gspca_konica +gspca_m5602 +gspca_main +gspca_mars +gspca_mr97310a +gspca_nw80x +gspca_ov519 +gspca_ov534 +gspca_ov534_9 +gspca_pac207 +gspca_pac7302 +gspca_pac7311 +gspca_se401 +gspca_sn9c2028 +gspca_sn9c20x +gspca_sonixb +gspca_sonixj +gspca_spca1528 +gspca_spca500 +gspca_spca501 +gspca_spca505 +gspca_spca506 +gspca_spca508 +gspca_spca561 +gspca_sq905 +gspca_sq905c +gspca_sq930x +gspca_stk014 +gspca_stk1135 +gspca_stv0680 +gspca_stv06xx +gspca_sunplus +gspca_t613 +gspca_topro +gspca_tv8532 +gspca_vc032x +gspca_vicam +gspca_xirlink_cit +gspca_zc3xx +gtco +guillemot +gunze +g_webcam +gxt4500 +g_zero +hamachi +hampshire +hanwang +hci +hci_uart +hci_vhci +hdlc +hdlc_cisco +hdlcdrv +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdpvr +he +hexium_gemini +hexium_orion +hfc4s8s_l1 +hfcmulti +hfcpci +hfcsusb +hfc_usb +hfs +hfsplus +hid +hid-a4tech +hid-apple +hid-appleir +hid-aureal +hid-axff +hid-belkin +hid-cherry +hid-chicony +hid-cypress +hid-dr +hid-elecom +hid-elo +hid-emsff +hid-ezkey +hid-gaff +hid-generic +hid-gyration +hid-holtekff +hid-holtek-kbd +hid-holtek-mouse +hid-huion +hid-icade +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-lenovo-tpkbd +hid-logitech +hid-logitech-dj +hid-magicmouse +hid-microsoft +hid-monterey +hid-multitouch +hid-ntrig +hid-ortek +hidp +hid-petalynx +hid-picolcd +hid-pl +hid-primax +hid-prodikeys +hid-roccat +hid-roccat-arvo +hid-roccat-common +hid-roccat-isku +hid-roccat-kone +hid-roccat-koneplus +hid-roccat-konepure +hid-roccat-kovaplus +hid-roccat-lua +hid-roccat-pyra +hid-roccat-ryos +hid-roccat-savu +hid-saitek +hid-samsung +hid-sensor-accel-3d +hid-sensor-als +hid-sensor-gyro-3d +hid-sensor-hub +hid-sensor-iio-common +hid-sensor-magn-3d +hid-sensor-trigger +hid-sjoy +hid-sony +hid-speedlink +hid-steelseries +hid-sunplus +hid-thingm +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-uclogic +hid-wacom +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hih6130 +hisax +hisax_fcpcipnp +hisax_isac +hisax_st5481 +hmc5843 +hmc6352 +hopper +horizon +hostap +hostap_cs +hostap_pci +hostap_plx +hp100 +hpfs +hpilo +hpsa +hptiop +hsi +hsi_char +hso +hsr +htc-pasic3 +htu21 +huawei_cdc_ncm +hwa-hc +hwa-rc +hwmon-vid +hx8357 +hysdn +i1480-dfu-usb +i1480-est +i2400m +i2400m-usb +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd8111 +i2c-arb-gpio-challenge +i2c-cbus-gpio +i2c-cpm +i2c-designware-core +i2c-designware-pci +i2c-designware-platform +i2c-dev +i2c-diolan-u2c +i2c-eg20t +i2c-gpio +i2c-hid +i2c-i801 +i2c-isch +i2c-kempld +i2c-matroxfb +i2c-mpc +i2c-mux +i2c-mux-gpio +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-nforce2 +i2c-ocores +i2c-parport +i2c-parport-light +i2c-pca-platform +i2c-piix4 +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-tiny-usb +i2c-via +i2c-viapro +i2c-viperboard +i2c-xiic +i2o_block +i2o_bus +i2o_config +i2o_core +i2o_proc +i2o_scsi +i40e +i5k_amb +i6300esb +i740fb +i82092 +ib_addr +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mad +ibmaem +ibmpex +ib_mthca +ib_sa +ib_srp +ib_srpt +ib_ucm +ib_umad +ib_uverbs +icp_multi +ics932s401 +idmouse +idt77252 +ieee802154 +ifb +iforce +igb +igbvf +iguanair +iio_dummy +iio_hwmon +iio-trig-interrupt +iio-trig-periodic-rtc +iio-trig-sysfs +ili210x +ili922x +ili9320 +imm +imon +ims-pcu +imx074 +imx_thermal +ina209 +ina2xx +industrialio +industrialio-triggered-buffer +inet_diag +inexio +inftl +initio +input-polldev +int51x1 +intel_vr_nor +interact +interval_tree_test +inv-mpu6050 +ioc4 +io_edgeport +io_ti +iowarrior +ip6_gre +ip6table_filter +ip6table_mangle +ip6table_nat +ip6table_raw +ip6_tables +ip6table_security +ip6t_ah +ip6t_eui64 +ip6t_frag +ip6t_hbh +ip6t_ipv6header +ip6t_MASQUERADE +ip6t_mh +ip6t_NPT +ip6t_REJECT +ip6t_rpfilter +ip6t_rt +ip6t_SYNPROXY +ip6_tunnel +ip6_vti +ipack +ipaq +ipcomp +ipcomp6 +ipddp +ipg +ip_gre +iphase +ipheth +ipip +ipmi_devintf +ipmi_poweroff +ipmi_si +ipmi_watchdog +ipoctal +ipr +ips +ip_set +ip_set_bitmap_ip +ip_set_bitmap_ipmac +ip_set_bitmap_port +ip_set_hash_ip +ip_set_hash_ipport +ip_set_hash_ipportip +ip_set_hash_ipportnet +ip_set_hash_net +ip_set_hash_netiface +ip_set_hash_netnet +ip_set_hash_netport +ip_set_hash_netportnet +ip_set_list_set +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +ip_tables +iptable_security +ipt_ah +ipt_CLUSTERIP +ipt_ECN +ipt_MASQUERADE +ipt_REJECT +ipt_rpfilter +ipt_SYNPROXY +ipt_ULOG +ip_tunnel +ip_vs +ip_vs_dh +ip_vs_ftp +ip_vs_lblc +ip_vs_lblcr +ip_vs_lc +ip_vs_nq +ip_vs_pe_sip +ip_vs_rr +ip_vs_sed +ip_vs_sh +ip_vs_wlc +ip_vs_wrr +ip_vti +ipw +ipw2100 +ipw2200 +ipwireless +ipx +ircomm +ircomm-tty +irda +irda-usb +ir-jvc-decoder +ir-kbd-i2c +irlan +ir-lirc-codec +ir-mce_kbd-decoder +ir-nec-decoder +irnet +ir-rc5-decoder +ir-rc5-sz-decoder +ir-rc6-decoder +ir-sanyo-decoder +ir-sony-decoder +irtty-sir +ir-usb +iscsi_boot_sysfs +iscsi_target_mod +iscsi_tcp +isdn +isdn_bsdcomp +isdnhdlc +isicom +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isofs +isp116x-hcd +isp1362-hcd +isp1704_charger +isp1760 +it913x-fe +itd1000 +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_c2 +iw_cm +iw_cxgb3 +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +iw_nes +ix2505v +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsm +kafs +kalmia +kaweth +kbic +kbtab +kcomedilib +ke_counter +kempld-core +kempld_wdt +kernelcapi +keucr +keyspan +keyspan_pda +keyspan_remote +kfifo_buf +khazad +kingsun-sir +kl5kusb105 +ko2iblnd +kobil_sct +ks0108 +ks0127 +ks8842 +ks8851 +ks8851_mll +ks959-sir +ksdazzle-sir +ksocklnd +ksz884x +ktti +kvaser_pci +kvaser_usb +kxsd9 +kxtj9 +kyrofb +l1oip +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +l2tp_ppp +l4f00242t03 +l64781 +lanai +lapb +lapbether +latch-addr-flash +lattice-ecp3-config +lcd +ld9040 +ldusb +lec +leds-88pm860x +leds-adp5520 +leds-atmel-pwm +leds-bd2802 +leds-blinkm +leds-da903x +leds-da9052 +leds-dac124s085 +leds-gpio +leds-lm3530 +leds-lm3533 +leds-lm355x +leds-lm3642 +leds-lp3944 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lt3593 +leds-max8997 +leds-mc13783 +leds-ot200 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pca9685 +leds-pwm +leds-regulator +leds-tca6507 +leds-wm831x-status +leds-wm8350 +ledtrig-backlight +ledtrig-camera +ledtrig-default-on +ledtrig-gpio +ledtrig-heartbeat +ledtrig-oneshot +ledtrig-timer +ledtrig-transient +legousbtower +lg2160 +lgdt3305 +lgdt330x +lgs8gxx +lg-vl600 +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libahci +libceph +libcfs +libcomposite +libcrc32c +libcxgbi +libertas +libertas_cs +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libore +libosd +libsas +libsrp +lightning +line6usb +lineage-pem +linear +lirc_bt829 +lirc_dev +lirc_igorplugusb +lirc_imon +lirc_parallel +lirc_sasem +lirc_serial +lirc_sir +lirc_zilog +lis3l02dq +lis3lv02d +lis3lv02d_i2c +lis3lv02d_spi +litelink-sir +lkkbd +llc +llc2 +llog_test +ll_temac +lm25066 +lm3533-als +lm3533_bl +lm3533-core +lm3533-ctrlbank +lm3630a_bl +lm3639_bl +lm63 +lm70 +lm73 +lm75 +lm77 +lm78 +lm80 +lm83 +lm8323 +lm8333 +lm85 +lm87 +lm90 +lm92 +lm93 +lm95234 +lm95241 +lm95245 +lmc +lms283gf05 +lms501kf03 +lmv +lnbp21 +lnbp22 +lnet +lnet_selftest +lockd +lov +lp +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp8755 +lp8788_bl +lp8788-charger +lpc_ich +lpc_sch +lpddr_cmds +lpfc +lru_cache +lrw +ltc2978 +ltc4151 +ltc4215 +ltc4245 +ltc4261 +ltv350qv +lustre +lv5207lp +lvfs +lz4 +lz4_compress +lz4hc +lz4hc_compress +m25p80 +m2m-deinterlace +m52790 +m88rs2000 +ma600-sir +mac80211 +mac80211_hwsim +mac802154 +macb +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mac-gaelic +mac-greek +mac_hid +mac-iceland +mac-inuit +mac-roman +mac-romanian +mac-turkish +macvlan +macvtap +mag3110 +magellan +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +matrix-keymap +matrix_keypad +matroxfb_accel +matroxfb_base +matroxfb_crtc2 +matroxfb_DAC1064 +matroxfb_g450 +matroxfb_maven +matroxfb_misc +matroxfb_Ti3026 +matrox_w1 +max1111 +max11801_ts +max1363 +max1586 +max16064 +max16065 +max1619 +max1668 +max17040_battery +max17042_battery +max197 +max2165 +max3100 +max34440 +max517 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77686 +max77693 +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925_bl +max8925_onkey +max8925_power +max8925-regulator +max8952 +max8973-regulator +max8997 +max8997_charger +max8998 +max8998_charger +mb862xxfb +mb86a16 +mb86a20s +mc13783-adc +mc13783-pwrbutton +mc13783-regulator +mc13783_ts +mc13892-regulator +mc13xxx-core +mc13xxx-i2c +mc13xxx-regulator-core +mc13xxx-spi +mc44s803 +mceusb +mcp2120-sir +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp4725 +mcs5000_ts +mcs7780 +mcs7830 +mcs_touchkey +mct_u232 +md4 +mdc +mdc800 +mdio +me4000 +me_daq +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mem2mem_testdev +memstick +mena21_wdt +metronomefb +metro-usb +mfd +mga +mgc +michael_mic +microread +microread_i2c +microtek +mii +mii-bitbang +minix +mip6 +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +mite +mk712 +mkiss +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mma8450 +mmc_block +mms114 +mos7720 +mos7840 +moxa +mpc85xx_edac +mpoa +mpr121_touchkey +mpt2sas +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +mrst_max3110 +ms_block +msdos +msp3400 +mspro_block +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt29f_spinand +mt312 +mt352 +mt9m001 +mt9m111 +mt9t031 +mt9t112 +mt9v011 +mt9v022 +mtd +mtd_blkdevs +mtdblock +mtdblock_ro +mtd_dataflash +mtdoops +mtdram +mtdswap +mtip32xx +mtouch +multipath +musb_am335x +musb_dsps +musb_hdrc +mv643xx_eth +mv88e6060 +mv88e6xxx_drv +mvmdio +mvsas +mv_u3d_core +mv_udc +mvumi +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxl111sf-demod +mxl111sf-tuner +mxl5005s +mxl5007t +mxser +myri10ge +nand +nand_bch +nand_ecc +nand_ids +nandsim +natsemi +nau7802 +navman +nbd +nci +ncpfs +ne2k-pci +neofb +net1080 +net2272 +net2280 +netconsole +netjet +netlink_diag +netprio_cgroup +netrom +netxen_nic +newtonkbd +nfc +nfc_digital +nf_conntrack +nf_conntrack_amanda +nf_conntrack_broadcast +nf_conntrack_ftp +nf_conntrack_h323 +nf_conntrack_ipv4 +nf_conntrack_ipv6 +nf_conntrack_irc +nf_conntrack_netbios_ns +nf_conntrack_netlink +nf_conntrack_pptp +nf_conntrack_proto_dccp +nf_conntrack_proto_gre +nf_conntrack_proto_sctp +nf_conntrack_proto_udplite +nf_conntrack_sane +nf_conntrack_sip +nf_conntrack_snmp +nf_conntrack_tftp +nfcsim +nfcwilink +nf_defrag_ipv4 +nf_defrag_ipv6 +nf_nat +nf_nat_amanda +nf_nat_ftp +nf_nat_h323 +nf_nat_ipv4 +nf_nat_ipv6 +nf_nat_irc +nf_nat_pptp +nf_nat_proto_dccp +nf_nat_proto_gre +nf_nat_proto_sctp +nf_nat_proto_udplite +nf_nat_sip +nf_nat_snmp_basic +nf_nat_tftp +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +nfnetlink_log +nfnetlink_queue +nfs +nfs_acl +nfsd +nfs_layout_nfsv41_files +nfsv2 +nfsv3 +nfsv4 +nf_synproxy_core +nf_tables +nf_tables_arp +nf_tables_bridge +nf_tables_ipv4 +nf_tables_ipv6 +nft_chain_nat_ipv4 +nft_chain_nat_ipv6 +nft_chain_route_ipv4 +nft_chain_route_ipv6 +nft_compat +nft_counter +nft_ct +nft_exthdr +nft_hash +nftl +nft_limit +nft_log +nft_meta +nft_nat +nft_rbtree +nft_reject_ipv4 +ngene +n_hdlc +ni_6527 +ni_65xx +ni_660x +ni_670x +nicstar +ni_daq_700 +ni_daq_dio24 +ni_labpc +ni_labpc_cs +ni_labpc_pci +nilfs2 +ni_mio_cs +ni_pcidio +ni_pcimio +ni_tio +ni_tiocmd +niu +nlmon +nls_ascii +nls_cp1250 +nls_cp1251 +nls_cp1255 +nls_cp737 +nls_cp775 +nls_cp850 +nls_cp852 +nls_cp855 +nls_cp857 +nls_cp860 +nls_cp861 +nls_cp862 +nls_cp863 +nls_cp864 +nls_cp865 +nls_cp866 +nls_cp869 +nls_cp874 +nls_cp932 +nls_cp936 +nls_cp949 +nls_cp950 +nls_euc-jp +nls_iso8859-1 +nls_iso8859-13 +nls_iso8859-14 +nls_iso8859-15 +nls_iso8859-2 +nls_iso8859-3 +nls_iso8859-4 +nls_iso8859-5 +nls_iso8859-6 +nls_iso8859-7 +nls_iso8859-9 +nls_koi8-r +nls_koi8-ru +nls_koi8-u +nls_utf8 +nmclan_cs +nosy +notifier-error-inject +nouveau +nozomi +n_r3964 +ns558 +ns83820 +nsc-ircc +nsp32 +nsp_cs +ntc_thermistor +ntfs +n_tracerouter +n_tracesink +null_blk +nvidiafb +nvme +nxt200x +nxt6000 +obdclass +obdecho +objlayoutdriver +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stackglue +ocfs2_stack_o2cb +ocfs2_stack_user +ocrdma +ofpart +of_serial +old_belkin-sir +olpc_apsp +omfs +omninet +on20 +on26 +onenand +opencores-kbd +openvswitch +oprofile +opticon +option +or51132 +or51211 +orinoco +orinoco_cs +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +osc +osd +osdblk +osst +oti6858 +output +ov2640 +ov5642 +ov6650 +ov7640 +ov7670 +ov772x +ov9640 +ov9740 +overlayfs +oxu210hp-hcd +ozwpan +p54common +p54pci +p54spi +p54usb +p8022 +p8023 +palmas-regulator +pandora_bl +panel +paride +parkbd +parport +parport_ax88796 +parport_cs +parport_pc +parport_serial +pata_ali +pata_amd +pata_arasan_cf +pata_artop +pata_atiixp +pata_atp867x +pata_cmd640 +pata_cmd64x +pata_cs5520 +pata_cs5530 +pata_cs5536 +pata_cypress +pata_efar +pata_hpt366 +pata_hpt37x +pata_hpt3x2n +pata_hpt3x3 +pata_it8213 +pata_it821x +pata_jmicron +pata_legacy +pata_marvell +pata_mpiix +pata_netcell +pata_ninja32 +pata_ns87410 +pata_ns87415 +pata_of_platform +pata_oldpiix +pata_opti +pata_optidma +pata_pcmcia +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sc1200 +pata_sch +pata_serverworks +pata_sil680 +pata_sis +pata_sl82c105 +pata_triflex +pata_via +pc300too +pcbc +pcd +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_can +pch_phub +pch_uart +pch_udc +pci +pci200syn +pcips2 +pci-stub +pcmcia +pcmcia_core +pcmciamtd +pcmcia_rsrc +pcnet32 +pcnet_cs +pcrypt +pcwd_pci +pcwd_usb +pd +pd6729 +pda_power +pdc_adma +peak_pci +peak_pcmcia +peak_usb +pegasus +penmount +percpu_test +pf +pfuze100-regulator +pg +phantom +phison +phonet +phram +phy-core +phy-exynos-dp-video +phy-fsl-usb2 +phy-generic +phy-gpio-vbus-usb +phy-isp1301 +phy-rcar-usb +phy-samsung-usb +phy-samsung-usb2 +phy-samsung-usb3 +physmap +physmap_of +pixcir_i2c_ts +pktcdvd +pktgen +pl2303 +platform_lcd +plat_nand +plat-ram +plip +plusb +pluto2 +plx_pci +pm2fb +pm3fb +pm80xx +pmbus +pmbus_core +pmc551 +pmcraid +pm-notifier-error-inject +pn533 +pn544 +pn544_i2c +pn_pep +port100 +poseidon +powermate +ppa +ppc-corenet-cpufreq +ppdev +ppp_async +ppp_deflate +ppp_mppe +pppoatm +pppoe +pppox +ppp_synctty +pps_core +pps-gpio +pps-ldisc +pps_parport +pptp +prism2_usb +ps2mult +psmouse +psnap +pt +ptlrpc +ptp +pvrusb2 +pwc +pwm_bl +pwm-pca9685 +pwm-twl +pwm-twl-led +pxa27x_udc +qcaux +qcserial +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qlogic_cs +qlogicfas408 +qman_debugfs_interface +qmi_wwan +qnx4 +qnx6 +qt1010 +qt1070 +qt2160 +quatech2 +quatech_daqp_cs +quota_tree +quota_v1 +quota_v2 +qxl +r128 +r592 +r6040 +r8152 +r815x +r8169 +r8187se +r8188eu +r8192e_pci +r8192u_usb +r820t +r852 +r8712u +r8a66597-hcd +r8a66597-udc +radeon +radio-i2c-si470x +radio-keene +radio-ma901 +radio-maxiradio +radio-mr800 +radio-shark +radio-si4713 +radio-si476x +radio-tea5764 +radio-timb +radio-usb-si470x +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid6test +raid_class +ramoops +raw +ray_cs +rbd +rbtree_test +rc5t583-regulator +rc-adstech-dvb-t-pci +rc-alink-dtu-m +rc-anysee +rc-apac-viewcomp +rcar_vin +rc-asus-pc39 +rc-asus-ps3-100 +rc-ati-tv-wonder-hd-600 +rc-ati-x10 +rc-avermedia +rc-avermedia-a16d +rc-avermedia-cardbus +rc-avermedia-dvbt +rc-avermedia-m135a +rc-avermedia-m733a-rm-k6 +rc-avermedia-rm-ks +rc-avertv-303 +rc-azurewave-ad-tu700 +rc-behold +rc-behold-columbus +rc-budget-ci-old +rc-cinergy +rc-cinergy-1400 +rc-core +rc-delock-61959 +rc-dib0700-nec +rc-dib0700-rc5 +rc-digitalnow-tinytwin +rc-digittrade +rc-dm1105-nec +rc-dntv-live-dvb-t +rc-dntv-live-dvbt-pro +rc-em-terratec +rc-encore-enltv +rc-encore-enltv2 +rc-encore-enltv-fm53 +rc-evga-indtube +rc-eztv +rc-flydvb +rc-flyvideo +rc-fusionhdtv-mce +rc-gadmei-rm008z +rc-genius-tvgo-a11mce +rc-gotview7135 +rc-hauppauge +rc-imon-mce +rc-imon-pad +rc-iodata-bctv7e +rc-it913x-v1 +rc-it913x-v2 +rc-kaiomy +rc-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lirc +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +rc-msi-digivox-ii +rc-msi-digivox-iii +rc-msi-tvanywhere +rc-msi-tvanywhere-plus +rc-nebula +rc-nec-terratec-cinergy-xs +rc-norwood +rc-npgtech +rc-pctv-sedna +rc-pinnacle-color +rc-pinnacle-grey +rc-pinnacle-pctv-hd +rc-pixelview +rc-pixelview-002t +rc-pixelview-mk12 +rc-pixelview-new +rc-powercolor-real-angel +rc-proteus-2309 +rc-purpletv +rc-pv951 +rc-rc6-mce +rc-real-audio-220-32-keys +rc-reddo +rc-snapstream-firefly +rc-streamzap +rc-tbs-nec +rc-technisat-usb2 +rc-terratec-cinergy-xs +rc-terratec-slim +rc-terratec-slim-2 +rc-tevii-nec +rc-tivo +rc-total-media-in-hand +rc-total-media-in-hand-02 +rc-trekstor +rc-tt-1500 +rc-twinhan1027 +rc-videomate-m1f +rc-videomate-s350 +rc-videomate-tv-pvr +rc-winfast +rc-winfast-usbii-deluxe +rdc321x-southbridge +rdma_cm +rdma_ucm +rds +rds_rdma +rds_tcp +redboot +redrat3 +reed_solomon +reiserfs +remoteproc +renesas_usbhs +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd_ftl +rfkill-gpio +rfkill-regulator +rio500 +rionet +rio-scan +rivafb +rj54n1cb0c +rmd128 +rmd160 +rmd256 +rmd320 +rndis_host +rndis_wlan +rocket +romfs +rose +rotary_encoder +rp2 +rpcsec_gss_krb5 +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt61pci +rt73usb +rtc-88pm80x +rtc-88pm860x +rtc-ab3100 +rtc-as3722 +rtc-bq32k +rtc-bq4802 +rtc-cmos +rtc_cmos_setup +rtc-da9052 +rtc-da9055 +rtc-ds1286 +rtc-ds1305 +rtc-ds1307 +rtc-ds1374 +rtc-ds1390 +rtc-ds1511 +rtc-ds1553 +rtc-ds1672 +rtc-ds1742 +rtc-ds2404 +rtc-ds3234 +rtc-em3027 +rtc-fm3130 +rtc-generic +rtc-hid-sensor-time +rtc-isl12022 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-moxart +rtc-msm6242 +rtc-palmas +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf8523 +rtc-pcf8563 +rtc-pcf8583 +rtc-r9701 +rtc-rc5t583 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3029c2 +rtc-rx4581 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-snvs +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtd520 +rtl2830 +rtl2832 +rtl8150 +rtl8180 +rtl8187 +rtl8188ee +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192se +rtl8723ae +rtl8723be +rtl8723-common +rtl8821ae +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtl_pci +rtl_usb +rtlwifi +rts5139 +rtsx_pci +rtsx_pci_ms +rtsx_pci_sdmmc +rx51_battery +rxkad +s1d13xxxfb +s2250 +s2255drv +s2io +s2mps11 +s3fb +s5h1409 +s5h1411 +s5h1420 +s5m8767 +s626 +s6e63m0 +s921 +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7146 +saa7146_vv +saa7164 +saa717x +saa7185 +saa7706h +safe_serial +salsa20_generic +samsung-keypad +sata_fsl +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_rcar +sata_sil +sata_sil24 +sata_sis +sata_sx4 +sata_uli +sata_via +sata_vsc +savage +savagefb +sbe-2t3e3 +sbp_target +sbs-battery +sc92031 +sca3000 +sch_atm +sch_cbq +sch_choke +sch_codel +sch_drr +sch_dsmark +sch_fq +sch_fq_codel +sch_gred +sch_hfsc +sch_htb +sch_ingress +sch_mqprio +sch_multiq +sch_netem +sch_plug +sch_prio +sch_qfq +sch_red +sch_sfb +sch_sfq +sch_tbf +sch_teql +scsi_debug +scsi_dh +scsi_dh_alua +scsi_dh_emc +scsi_dh_hp_sw +scsi_dh_rdac +scsi_tgt +scsi_transport_fc +scsi_transport_iscsi +scsi_transport_sas +scsi_transport_spi +scsi_transport_srp +sctp +sctp_probe +sdhci +sdhci-of-esdhc +sdhci-of-hlwd +sdhci-pci +sdhci-pltfm +sdhci-pxav2 +sdhci-pxav3 +sdio_uart +sdricoh_cs +sdr-msi3101 +sedlbauer_cs +seed +sep_driver +seqiv +ser_gigaset +serial2002 +serial_cs +serio_raw +sermouse +serpent_generic +serport +serqt_usb2 +ses +sfc +sha1-powerpc +shark2 +sh_eth +sh_mobile_ceu_camera +sh_mobile_csi2 +shpchp +sht15 +sht21 +sh_veu +si21xx +si4713-i2c +si476x-core +sidewinder +sierra +sierra_net +sil164 +sir-dev +sis +sis190 +sis5595 +sis900 +sisfb +sisusbvga +sit +sja1000 +sja1000_isa +sja1000_of_platform +sja1000_platform +skel +skfp +skge +sky2 +sl811_cs +sl811-hcd +slcan +slip +slram +sm501 +sm501fb +sm7xxfb +smb347-charger +smc91c92_cs +sm_common +sm_ftl +smm665 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smsc-ircc2 +smscufx +smsdvb +smsmdtv +smssdio +smsusb +snd +snd-ac97-codec +snd-ad1889 +snd-ak4113 +snd-ak4114 +snd-ak4117 +snd-ak4xxx-adda +snd-ali5451 +snd-aloop +snd-als300 +snd-als4000 +snd-at73c213 +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-azt3328 +snd-bt87x +snd-ca0106 +snd-cmipci +snd-compress +snd-cs4281 +snd-cs46xx +snd-cs5530 +snd-cs5535audio +snd-cs8427 +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-emu10k1 +snd-emu10k1-synth +snd-emu10k1x +snd-emux-synth +snd-ens1370 +snd-ens1371 +snd-es1938 +snd-es1968 +snd-firewire-lib +snd-firewire-speakers +snd-fm801 +snd-gina20 +snd-gina24 +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-intel +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1712 +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel8x0 +snd-intel8x0m +snd-isight +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-lx6464es +snd-maestro3 +snd-mia +snd-mixart +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3-synth +snd-oxygen +snd-oxygen-lib +snd-page-alloc +snd-pcm +snd-pcxhr +snd-pdaudiocf +snd-portman2x4 +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-sb16-dsp +snd-sb-common +snd-scs1x +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-soc-atmel-pcm +snd-soc-core +snd-soc-si476x +snd-soc-simple-card +snd-sonicvibes +snd-timer +snd-trident +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usbmidi-lib +snd-usb-usx2y +snd-util-mem +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx222 +snd-vx-lib +snd-vxpocket +snd-ymfpci +soc_camera +soc_camera_platform +soc_mediabus +soc_scale_crop +softdog +softing +softing_cs +solo6x10 +solos-pci +sony-btf-mpx +soundcore +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +spectrum_cs +speedfax +speedtch +spi-altera +spi-bitbang +spi-butterfly +spidev +spi-dw +spi-dw-midpci +spi-dw-mmio +spi-gpio +spi_ks8995 +spi-lm70llp +spi-oc-tiny +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-sc18is602 +spi-tle62x0 +spi-topcliff-pch +spi-xcomm +squashfs +sr9700 +ssb +ssb-hcd +ssd1307fb +ssfdc +sst25l +ssu100 +st +st1232 +st_accel +st_accel_i2c +st_accel_spi +starfire +stb0899 +stb6000 +stb6100 +st_drv +ste_modem_rproc +stex +st_gyro +st_gyro_i2c +st_gyro_spi +stinger +stir4200 +stk1160 +stkwebcam +st_magn +st_magn_i2c +st_magn_spi +stmmac +stmpe-keypad +stmpe-ts +stowaway +stp +st_pressure +st_pressure_i2c +st_pressure_spi +streamzap +st_sensors +st_sensors_i2c +st_sensors_spi +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv6110 +stv6110x +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sur40 +svcrdma +svgalib +sx8 +sym53c500_cs +sym53c8xx +symbolserial +synaptics_i2c +synaptics_i2c_rmi4 +synaptics_usb +synclink +synclink_cs +synclink_gt +synclinkmp +sysv +t1pci +talitos +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +tc3589x-keypad +tca6416-keypad +tca8418_keypad +tcm_fc +tcm_loop +tcm_qla2xxx +tcm_usb_gadget +tcp_bic +tcp_diag +tcp_highspeed +tcp_htcp +tcp_hybla +tcp_illinois +tcp_lp +tcp_probe +tcp_scalable +tcp_vegas +tcp_veno +tcp_westwood +tcp_yeah +tcrypt +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18271 +tda18271c2dd +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda998x +tdfx +tdfxfb +tdo24m +tea +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tef6862 +tehuti +tekram-sir +teles_cs +test-kstrtox +test_power +test-string_helpers +tg3 +tgr192 +thmc50 +ti-adc081c +ti_dac7512 +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +timb_dma +timberdale +timblogiw +timbuart +timeriomem-rng +tipc +ti_usb_3410_5052 +tlan +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmiofb +tmp006 +tmp102 +tmp401 +tmp421 +tmscsim +toim3232-sir +touchit213 +touchright +touchwin +tpci200 +tpm_atmel +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_i2c_stm_st33 +tpm-rng +tps51632-regulator +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65090-charger +tps65090-regulator +tps65217 +tps65217_bl +tps65217-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps80031-regulator +trancevibrator +tranzport +tridentfb +ts2020 +ts_bm +tsc2005 +tsc2007 +tsc40 +ts_fsm +ts_kmp +tsl2550 +tsl2563 +tsl2583 +tsl2x7x_core +tsl4531 +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +tua6100 +tua9001 +tulip +tuner +tuner_it913x +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +tusb6010 +tvaudio +tveeprom +tvp5150 +tw2804 +tw9903 +tw9906 +tw9910 +twidjoy +twl4030_charger +twl4030_keypad +twl4030-madc +twl4030-madc-hwmon +twl4030-pwrbutton +twl4030-vibra +twl4030_wdt +twl6030-gpadc +twl6040-vibra +twofish_common +twofish_generic +typhoon +u132-hcd +uartlite +ubi +ubifs +ucb1400_core +ucb1400_ts +ucd9000 +ucd9200 +uda1342 +udc-core +udf +udl +udp_diag +ueagle-atm +u_ether +ufs +ufshcd +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_sercos3 +uli526x +umc +umem +ums-alauda +ums-cypress +ums-datafab +ums-eneub6250 +ums-freecom +ums-isd200 +ums-jumpshot +ums-karma +ums-onetouch +ums-realtek +ums-sddr09 +ums-sddr55 +ums-usbat +unix_diag +upd64031a +upd64083 +uPD98402 +u_rndis +usb3503 +usb_8dev +usb8xxx +usbatm +usb_debug +usbdux +usbduxfast +usbduxsigma +usb_f_acm +usb_f_ecm +usb_f_ecm_subset +usb_f_eem +usb_f_mass_storage +usb_f_ncm +usb_f_obex +usb_f_phonet +usb_f_rndis +usb_f_serial +usb_f_ss_lb +usb_gigaset +usbhid +usbip-core +usbip-host +usbkbd +usblcd +usbled +usblp +usbmisc_imx +usbmon +usbmouse +usbnet +usbserial +usb-serial-simple +usbsevseg +usb-storage +usbtest +usbtmc +usbtouchscreen +usbtv +usbvision +usb_wwan +u_serial +userspace-consumer +ushc +uss720 +uvcvideo +uvesafb +uwb +ux500 +v4l2-common +v4l2-dv-timings +v4l2-int-device +v4l2-mem2mem +vcan +vcnl4000 +ves1820 +ves1x93 +veth +vga16fb +vgastate +vgg2432a4 +vhci-hcd +vhost +vhost_net +vhost_scsi +via +via686a +via-ircc +via-rhine +via-sdmmc +via-velocity +videobuf2-core +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-memops +videobuf2-vmalloc +videobuf-core +videobuf-dma-contig +videobuf-dma-sg +videobuf-dvb +videobuf-vmalloc +videocodec +videodev +viperboard +viperboard_adc +virtio +virtio_balloon +virtio_blk +virtio_console +virtio_mmio +virtio_net +virtio_pci +virtio_ring +virtio-rng +virtio_scsi +virtual +visor +vivi +vlsi_ir +vmac +vme +vme_ca91cx42 +vme_pio2 +vme_tsi148 +vme_user +vme_vmivme7805 +vmk80xx +vmwgfx +vmxnet3 +vp27smpx +vpx3220 +vringh +vsock +vsxxxaa +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxge +vxlan +w1_bq27000 +w1_ds2408 +w1_ds2413 +w1_ds2423 +w1_ds2431 +w1_ds2433 +w1_ds2760 +w1_ds2780 +w1_ds2781 +w1_ds28e04 +w1-gpio +w1_smem +w1_therm +w35und +w5100 +w5300 +w6692 +w83781d +w83791d +w83792d +w83793 +w83795 +w83977af_ir +w83l785ts +w83l786ng +w90p910_ts +w9966 +wacom +wacom_i2c +wacom_w8001 +walkera0701 +wanxl +warrior +wbsd +wcn36xx +wdt_pci +whci +whci-hcd +whc-rc +whiteheat +wil6210 +wimax +winbond-840 +windfarm_core +wire +wishbone-serial +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wl3501_cs +wlags49_h25_cs +wlags49_h2_cs +wlcore +wlcore_sdio +wlcore_spi +wm831x_backup +wm831x_bl +wm831x-dcdc +wm831x-hwmon +wm831x-isink +wm831x-ldo +wm831x-on +wm831x_power +wm831x-ts +wm831x_wdt +wm8350-hwmon +wm8350_power +wm8350-regulator +wm8350_wdt +wm8400-regulator +wm8739 +wm8775 +wm8994-regulator +wm97xx-ts +wp512 +wusb-cbaf +wusbcore +wusb-wa +x25 +x25_asy +xc4000 +xc5000 +xcbc +xfrm4_mode_beet +xfrm4_mode_transport +xfrm4_mode_tunnel +xfrm4_tunnel +xfrm6_mode_beet +xfrm6_mode_ro +xfrm6_mode_transport +xfrm6_mode_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_ipcomp +xfrm_user +xfs +xgifb +xgmac +xilinx_ps2 +xilinx_uartps +xillybus_core +xillybus_of +xillybus_pcie +xirc2ps_cs +xircom_cb +xor +xpad +xprtrdma +xsens_mt +x_tables +xt_addrtype +xt_AUDIT +xt_bpf +xt_CHECKSUM +xt_CLASSIFY +xt_cluster +xt_comment +xt_connbytes +xt_connlabel +xt_connlimit +xt_connmark +xt_CONNSECMARK +xt_conntrack +xt_cpu +xt_CT +xt_dccp +xt_devgroup +xt_dscp +xt_DSCP +xt_ecn +xt_esp +xt_hashlimit +xt_helper +xt_hl +xt_HL +xt_HMARK +xt_IDLETIMER +xt_iprange +xt_ipvs +xtkbd +xt_LED +xt_length +xt_limit +xt_LOG +xt_mac +xt_mark +xt_multiport +xt_nat +xt_NETMAP +xt_nfacct +xt_NFLOG +xt_NFQUEUE +xt_osf +xt_owner +xt_physdev +xt_pkttype +xt_policy +xt_quota +xt_rateest +xt_RATEEST +xt_realm +xt_recent +xt_REDIRECT +xts +xt_sctp +xt_SECMARK +xt_set +xt_socket +xt_state +xt_statistic +xt_string +xt_tcpmss +xt_TCPMSS +xt_TCPOPTSTRIP +xt_tcpudp +xt_TEE +xt_time +xt_TPROXY +xt_TRACE +xt_u32 +xusbatm +xz_dec_test +yam +yealink +yellowfin +yenta_socket +yurex +zatm +zaurus +zd1201 +zd1211rw +zforce_ts +zhenhua +zl10036 +zl10039 +zl10353 +zl6100 +zlib +zr36016 +zr36050 +zr36060 +zr36067 +zr364xx +zram +zte_ev --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/powerpc/powerpc-smp +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/powerpc/powerpc-smp @@ -0,0 +1,16439 @@ +EXPORT_SYMBOL crypto/gf128mul 0x0c2f123f gf128mul_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x1068004b gf128mul_bbe +EXPORT_SYMBOL crypto/gf128mul 0x2f2889a0 gf128mul_init_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x384ef9ce gf128mul_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x56af0dbd gf128mul_x_ble +EXPORT_SYMBOL crypto/gf128mul 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL crypto/gf128mul 0xbd17a0df gf128mul_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0xc0890413 gf128mul_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/atm/suni 0x31164379 suni_init +EXPORT_SYMBOL drivers/atm/uPD98402 0x726d3ba3 uPD98402_init +EXPORT_SYMBOL drivers/bcma/bcma 0xdbeb6a9b bcma_core_dma_translation +EXPORT_SYMBOL drivers/block/drbd/drbd 0x127a5901 drbd_set_st_err_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x35131b36 drbd_role_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x7730f22d drbd_conn_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0xaf27bebf drbd_disk_str +EXPORT_SYMBOL drivers/block/paride/paride 0x0300a23f pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0x10a51b15 pi_write_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x3502da60 pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0x3a526428 pi_read_block +EXPORT_SYMBOL drivers/block/paride/paride 0x4aeb7bf2 paride_unregister +EXPORT_SYMBOL drivers/block/paride/paride 0x5142fc25 pi_read_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x89af5313 paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0xa1c12ae8 pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xab1a82d1 pi_init +EXPORT_SYMBOL drivers/block/paride/paride 0xd1221a65 pi_disconnect +EXPORT_SYMBOL drivers/block/paride/paride 0xe61ee8bb pi_release +EXPORT_SYMBOL drivers/block/paride/paride 0xf5521a1f pi_write_block +EXPORT_SYMBOL drivers/char/apm-emulation 0x129e74f2 apm_get_power_status +EXPORT_SYMBOL drivers/char/apm-emulation 0xdf3329b8 apm_queue_event +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x1258d97d dw_dma_cyclic_stop +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x57479741 dw_dma_get_dst_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x6a5272f4 dw_dma_cyclic_start +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x86fb7a4c dw_dma_cyclic_free +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xb391efc9 dw_dma_cyclic_prep +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xc327d410 dw_dma_get_src_addr +EXPORT_SYMBOL drivers/edac/edac_core 0xbe61776a edac_mc_find +EXPORT_SYMBOL drivers/firewire/firewire-core 0x001b481b fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x04dd92ce fw_core_add_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1034e18d fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1489f207 fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x16e91e21 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1b2d77c9 fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x29d767f0 fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2d1c2d91 fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3c56ef91 fw_workqueue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4d5d4eca fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x5376b065 fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x54bd15c1 fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0x56d0d23b fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0x65c9438b fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6a051694 fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x70a9e6cd fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7e431b14 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x8076bd96 fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x84bc0f6b fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x8be5dd48 fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0x90863005 fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa6fc8a3b fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0xaddf356d fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xae73967e fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc15d299b fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc281e652 fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0xcc75d6c5 fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xccb11fd9 fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0xcfdc06b1 fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xda5bb253 fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe31dcbd7 fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf8d7378d fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xff012f7e fw_core_remove_address_handler +EXPORT_SYMBOL drivers/fmc/fmc 0x3ef4cd64 fmc_driver_register +EXPORT_SYMBOL drivers/fmc/fmc 0x5b8cae19 fmc_device_unregister_n +EXPORT_SYMBOL drivers/fmc/fmc 0x67aa4769 fmc_reprogram +EXPORT_SYMBOL drivers/fmc/fmc 0x8b1c0523 fmc_free_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xa961f993 fmc_device_register +EXPORT_SYMBOL drivers/fmc/fmc 0xb4758162 fmc_scan_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xc64acce0 fmc_device_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0xe4ae8a5d fmc_find_sdb_device +EXPORT_SYMBOL drivers/fmc/fmc 0xee1cdfe5 fmc_show_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xf343fcde fmc_driver_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0xfbb65713 fmc_device_register_n +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00025916 drm_mode_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x005b4c74 drm_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00667d8a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0230f699 drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0x026c0d6b drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03759c14 drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x049b6d55 drm_core_reclaim_buffers +EXPORT_SYMBOL drivers/gpu/drm/drm 0x055adf70 drm_core_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0723c74d drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07340df4 drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07ad94ba drm_unplug_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a6cdc58 drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ae4b94c drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c5995dd drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d3161a9 drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ec527fc drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fccafb1 drm_global_item_unref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x105521af drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12c6276a drm_buffer_read_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13cdaadb drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x142b8b35 drm_buffer_copy_from_user +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a9a178 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x164c9c45 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0x17090a1e drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x189f6401 drm_mm_debug_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x194eadaa drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19e44324 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a58efa9 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a770ac3 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1bc3a5e6 drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1c0cbabd drm_bridge_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1cdd157a drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1f77be7d drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20645642 drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22800256 drm_connector_unplug_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22cf2714 drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25abe1de drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2664448b drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29ad006c drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a942ab2 drm_mm_insert_node_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2aacb97d drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2b824f20 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2bbfee0b drm_agp_bind_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2c542732 drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d80be4d drm_mm_init_scan +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d9c3456 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e195154 drm_edid_to_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e34801f drm_mode_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7a4300 drm_rgb_quant_range_selectable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f0b064f drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x32743253 drm_agp_unbind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x32d3cb86 drm_mode_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x33ef034a drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x346127a7 drm_global_item_ref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36f91ef3 drm_mm_clean +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38085fd7 drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38a4f7ae drm_format_num_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x39458e29 drm_dev_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ac1fef9 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ae7b2d0 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b9d009a drm_format_plane_cpp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d4b8108 drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3dbfc040 drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eb37b9d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x412da162 drm_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x42231248 drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43384bd9 drm_buffer_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43762558 drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x446ad79d drm_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4486c0b4 drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44a00c0b drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x46776869 drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x498dcb5e drm_ut_debug_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49fabf0d drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4a2268fe drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b793aea drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c511235 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4db3c369 drm_addbufs_pci +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e6f41c2 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ea1f5a2 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ef1e8d5 drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4fa9caf6 drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4fdac11c drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e28c07 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5218a9fa drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x526f6f71 drm_rect_calc_hscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54ca5b1e drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5602300c drm_select_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x576e6658 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5a268d54 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5aaf4eb9 drm_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f221daf drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6090be61 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x637e3b8c drm_get_last_vbltimestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x63a654a0 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x65f25b88 drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66418d9d drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x666d2703 drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66803841 drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6900d335 drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x690fcc3f drm_agp_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b6d7375 drm_timestamp_precision +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6bc81dec drm_vblank_pre_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cee2e42 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6da2d13a drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6edec835 drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f2e6236 drm_pci_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6f4d52fb drm_rmmap_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7046216a drm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74f9e075 drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7562e083 drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75ff7237 drm_core_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x79e13b26 drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a1633c3 drm_get_connector_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a4e7297 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7b5735da drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c0c7d6c drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x800f5ea0 drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80beea78 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80d222c3 drm_mode_group_init_legacy_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81ba930c drm_mm_init_scan_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8349d741 drm_ati_pcigart_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x844f0a63 drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x865c1de3 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x876839e8 drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ab4b1ee drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8b66f954 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ce8bcbe drm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d77bbe0 drm_addbufs_agp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8de13715 drm_format_vert_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dfb019d drm_buffer_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8e59baf7 drm_agp_bind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ed66da3 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ee667b0 drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8eff9111 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f7df3a7 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x905d3759 drm_agp_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x90b44044 drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9278e15b drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9309a41e drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9447750e drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9745d638 drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0x976996a4 drm_pcie_get_speed_cap_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9878a3b8 drm_pci_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x988496f9 drm_get_encoder_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9972db48 drm_rect_calc_vscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a6b7ca5 drm_rmmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9bd4a682 drm_prime_destroy_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9cb9f88a drm_mm_dump_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d612b8d drm_vblank_post_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d70fc2a drm_rnodes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e7efdd7 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e840e57 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9eccfe56 drm_mode_hsync +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9efc26a3 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9f8c002e drm_core_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1899ec4 drm_mode_connector_detach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1f4e9e6 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa28078b2 drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3826628 drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa47e9374 drm_agp_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5068229 drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa57f1b60 drm_platform_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5dbd572 drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa96acfcb drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa9a1399 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae78b2bc drm_getsarea +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafb0cb6f drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafb312ad drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafcfe6c6 drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb1bccac7 drm_global_mutex +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb211e7e0 drm_prime_init_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb3fef63e drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb424f66a drm_mode_create_dirty_info_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4e6fbd1 drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb572a9f0 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5d4435d drm_framebuffer_reference +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5e231a8 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5e620e6 drm_mode_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb64a290c drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb95beb55 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbaabbc1d drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbc45c582 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbd6bb913 drm_crtc_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbd84c28d drm_agp_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbdb61141 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe001c53 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe03cb62 drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc134d19a drm_get_pci_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc27fc16d drm_idlelock_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4000f9f drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc414c422 drm_vblank_offdelay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc43afaec drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc46ebac0 drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc703ad2c drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc75220ff drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7ea62e9 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f7cc11 drm_vma_offset_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8029618 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8a5eeb6 drm_framebuffer_unreference +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca45efbc drm_format_horz_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca4a088f drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcab39418 drm_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb6ad372 drm_idlelock_take +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcbb086e7 drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcc195e64 drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd0fc417 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcdd1330f drm_agp_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcec158f0 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd01e3764 drm_calc_vbltimestamp_from_scanoutpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd18b9e52 drm_bridge_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd207a476 drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2335101 drm_fb_get_bpp_depth +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd26ad027 drm_vblank_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd3044e41 drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd35523c1 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4ba4f7c drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd939e619 drm_platform_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd985e968 drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd9e9930c drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd9ffdf35 drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb5a5852 drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbb5a9f5 drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe0821f31 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2d10914 drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2ef97e4 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe4edd2a4 drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6f46e6e drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7197773 drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe75e3a84 drm_sysfs_connector_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe80e5c0e drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea4022f2 drm_sysfs_connector_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea8d3bd0 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb19f19c drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb6983f4 drm_ati_pcigart_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec3e0908 drm_addmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee8cbb93 drm_agp_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefdf9b69 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf08d712a drm_mode_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0baa72d drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf219f21d drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf446a0e2 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf55cc2a5 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf5639a9a drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6d3a423 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9ab8c67 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfa147358 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb497216 drm_mm_insert_node_in_range_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfcb0536d drm_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfcd3a5bf drm_pci_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd063935 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfdb6987f drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe4a68c7 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff906525 drm_pci_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffc6c87a drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x098e47d2 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f96ec70 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x163251c8 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x23a8860d drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2851cc85 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2e1b2926 drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34871adf drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4184a9ff drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x489cadfd drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x566156ca drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x598aa54e drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x624f3031 drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x62c6057e drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x65802b2a drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6c53e162 drm_fb_helper_fill_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x711a004a drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7ed0111e drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x805b1b0f drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84e924ba drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x85c6aacd drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92dfad6a drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x93aa77fe drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9659cd0b drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9e5aa283 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa04474a4 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa77858bb drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8d6809d drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbb24a45a drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbf0ba95e drm_fb_helper_restore_fbdev_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc9996a38 drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcef7c29c drm_fb_helper_fill_fix +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd5960218 drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd60b7e20 drm_fb_helper_single_add_all_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd7abd32a i2c_dp_aux_add_bus +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe32aa9cf drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe96d405f drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xeb91f9e4 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf5e0d613 drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfa6ac139 drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfeabc92e drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x42100f9e drm_get_usb_dev +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x4404b611 drm_usb_init +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x45ead73a drm_usb_exit +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x03c838d5 ttm_mem_io_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0d3e36e8 ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1209cca6 ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x132b05be ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x181eeeca ttm_agp_tt_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x19af5be0 ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1a6ad164 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1c405bc2 ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1de0c192 ttm_mem_io_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b54aa9a ttm_object_file_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2eb9f38c ttm_mem_io_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3188b1ca ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3a811f23 ttm_object_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3c970c41 ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3d2a2ac3 ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3d810ce3 ttm_bo_del_sub_from_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3e07b154 ttm_agp_tt_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x462df968 ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x485a5bc0 ttm_ref_object_add +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x538d1ec7 ttm_bo_synccpu_write_grab +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5a8fdfea ttm_vt_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5cf59609 ttm_bo_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5e51d1eb ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6196b330 ttm_bo_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6209e0c5 ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x642e1499 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x65821b07 ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x67b1d568 ttm_bo_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x70b69c80 ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x72c8ef69 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x770fd9ca ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7a5ae127 ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7c64cce7 ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7c7d6f9d ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7d55da85 ttm_read_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x803f075d ttm_bo_synccpu_write_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80af269e ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80d86f0e ttm_object_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x84a13931 ttm_write_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x84fd5630 ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x87def6d1 ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x880a15ad ttm_base_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x89a443de ttm_write_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8d14adbf ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94894449 ttm_base_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x998e45c0 ttm_ref_object_base_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9aa608c0 ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9fa4d348 ttm_agp_tt_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa2a129fd ttm_suspend_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa64af1b6 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa73de2a9 ttm_vt_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb2268089 ttm_prime_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb83c6470 ttm_lock_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbbb7566d ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc1a7b494 ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc22e9ad0 ttm_mem_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc596594e ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc5f0c2da ttm_read_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc680ac61 ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcbc77795 ttm_fbdev_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xce6e43a8 ttm_base_object_lookup_for_ref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd14f54ec ttm_mem_io_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7f51742 ttm_suspend_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd8edb115 ttm_base_object_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdc64cc1c ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe48596a3 ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe49408bc ttm_bo_add_to_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe90261c0 ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xea334742 ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xec1cef1c ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xed8610ea ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xedff6490 ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xee188177 ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xef51b3e5 ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf05cc08c ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfbc2c5ec ttm_object_file_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfdf1b73b ttm_mem_global_release +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x0903c239 vid_from_reg +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0xef1c781c vid_which_vrm +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x5b357ba1 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x810dcc41 i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0x8019c879 amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x468cf149 st_accel_common_probe +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x60ce1dba st_accel_common_remove +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x2d931470 hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x5ffb2e18 hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x6b86111e hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x8cdec5f2 hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xb8d8482f hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x13c7d0d7 hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x6c9b0f85 hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x1b860600 st_sensors_sysfs_get_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x20ac199c st_sensors_get_buffer_element +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x3cb3cdb6 st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x44161fb0 st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x5d2ce53a st_sensors_check_device_support +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x62ba6a94 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x7a8400d0 st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x7b27a49f st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x80fe0f26 st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xa39c8be9 st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xa48e011c st_sensors_sysfs_set_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xa72b3e18 st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xb9885d2e st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xcbec2b14 st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd3adbc51 st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0x43b27071 st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0x861e5ac6 st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x2b014a79 st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x7226a7b2 st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x3e0bbcef adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xf92b5529 adis_enable_irq +EXPORT_SYMBOL drivers/iio/industrialio 0x09602577 iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0x11263292 iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0x1be99425 iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0x25ff90cd iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x2b10b846 iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x33354776 iio_buffer_read_length +EXPORT_SYMBOL drivers/iio/industrialio 0x34965f8e iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0x3611a560 iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x407e720d iio_buffer_show_enable +EXPORT_SYMBOL drivers/iio/industrialio 0x453946d4 iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0x45a5a9dc iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0x48e479ee iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x48feeeff iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0x551da9fd iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0x6d9e561f iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x707ea3e9 iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0x8768b0e5 iio_buffer_store_enable +EXPORT_SYMBOL drivers/iio/industrialio 0xc5e94c2a iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0xcaa4e9be iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xcd05b2c0 iio_buffer_register +EXPORT_SYMBOL drivers/iio/industrialio 0xd7942a4b iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xe1f6161c iio_buffer_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xf9d45c0e iio_buffer_write_length +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x45f3bb81 iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x8fe09488 iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x47bb8378 iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/kfifo_buf 0xfc2d1b46 iio_kfifo_free +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x0fa425b3 st_magn_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x10ce563e st_magn_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x4add6db9 st_press_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x66efcc06 st_press_common_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x049ace30 rdma_addr_find_smac_by_sgid +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x04b8b6d7 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1c3c0ad3 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1ea5767b rdma_addr_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x273f4cca rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x32a8402c rdma_addr_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x446fd7c9 rdma_addr_find_dmac_by_grh +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x59252c9d rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x8b63f571 rdma_copy_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x159cb35d ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x16086745 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x177d5bef ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x1d2af211 ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x2bbf4a72 ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x5f34384a ib_send_cm_lap +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x72118f97 ib_send_cm_apr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9ae9dccb ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9b0e2d09 ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9fb56038 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xa181820a ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xa1a8e6df ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xaff08c18 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xcb189de3 ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xdbedefa6 ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xf92e9e0f ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xfdbf4334 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x019f50ec ib_alloc_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06c82fcf mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x088bcff3 ib_destroy_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x091859d5 ib_destroy_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c1b9ac1 ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0dfbc563 ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0e06892e ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0eba8417 ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1049b071 ib_get_dma_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x10504213 ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1158f491 ib_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x11eaa0ad ib_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x120941d3 ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x12376c8c ibnl_add_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14f84918 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x171f99f1 ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1a8e8a10 ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e491a04 ib_unmap_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x220ceaa1 ib_alloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22e99668 ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x25dfac3a ib_init_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x26db76de ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x273f0ac1 ib_alloc_fast_reg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ed6e386 ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x36653f44 ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3725f29c ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x37959d47 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3956003c ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3967b9e7 ib_modify_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b1ebe7d ib_destroy_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b4fd5c5 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b968119 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x434f3a0b ib_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x48dba5ef ib_rereg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4c42ed9f ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4dfdfb28 ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50dbc447 ib_flush_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x520b2638 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x549063c6 ib_fmr_pool_unmap +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5547526b ib_find_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5c16279e ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5d96875c ib_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x62261f3d ib_dealloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x65bcd7a3 ib_get_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x689f01e9 ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x696c507c ib_dereg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x69aae096 ib_free_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x69b7d093 ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e030e26 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x73031b0e ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x73419928 ib_destroy_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7813fa5e ib_fmr_pool_map_phys +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7bac3402 ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7caac618 ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x89728c45 ib_dealloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8c9d3ea4 ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8d6a66a5 ib_create_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9a5b21e6 ib_resolve_eth_l2_attrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9c05d9f7 ib_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa10a83eb ib_query_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa4cf54f6 ib_alloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa52309d5 ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa7198e48 ib_reg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaac81f4d ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac217df9 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb1a312e1 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb1ba4ab0 ib_create_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb27a9826 ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb59f0acf ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbd0bb984 ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbfcb4e9d ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc305ed98 ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc32b59ff ib_destroy_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc4018ff7 ib_get_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc571dd6f rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc67f14a5 ibnl_remove_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcda9256d ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd03fe60d ib_create_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd48a3ba1 ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd4b154c2 ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdf90c778 ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe1244bca ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe191f5cc ib_dealloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe374f4e2 ib_query_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe42391c6 ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5084c69 ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe8cf7325 ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xef426411 ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf37be251 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfc150956 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x1bbeb81d ib_register_mad_snoop +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x4a7641ef ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x65ba6853 ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6f077fcf ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7782c396 ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7b5d4b7a ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x8db21c12 ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x9145e4f4 ib_redirect_mad_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x941938d0 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x946d5d27 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x9a9598d2 ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xa036ccae ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xb6100764 ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xc270aa57 ib_process_mad_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xd24b6542 ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x22f07253 ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x2a1b7ee9 ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x32a1ff10 ib_init_ah_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x3bd6bc1f ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x5328d7a6 ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x576fdbac ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x68929f85 ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x7ab79f1e ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x9a1cd50d ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xbb09be4c ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xce49297b ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xddc330e7 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2569d757 ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x52a6ce77 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7971c00e ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe350f2aa ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x0029dffc iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x062e3c1e iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x3e06f5c2 iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x86e16c7a iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x8b164edc iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xb75924f7 iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xb9eb0baa iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xc43737cb iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x19ae9885 rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1d99b2c1 rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x2e10d199 rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x41050c4b rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x5d6aeb6d rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x608e882d rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x70381956 rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x76a8925d rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x85b5a576 rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x8b087c32 rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x8ec7ddc6 rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x928d8af1 rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x99af3d81 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x9a6323d8 rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x9acf12d7 rdma_set_ib_paths +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x9d06e2e4 rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x9f23a995 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc63e86f3 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xce4dbaab rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xdd37d696 rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf6505445 rdma_create_id +EXPORT_SYMBOL drivers/input/gameport/gameport 0x108cd544 gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x33c68b0a __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x471d0748 gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0x66462a82 gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x7c23225f __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x825c4bd3 gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0x9595a7de gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0xca036b5e gameport_start_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0xe995b134 gameport_open +EXPORT_SYMBOL drivers/input/input-polldev 0x5d33e166 input_unregister_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x762c5a2c input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x8b467eec input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x9aa817d3 input_allocate_polled_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0x3c4d0dcd matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x21f9ed37 ad714x_disable +EXPORT_SYMBOL drivers/input/misc/ad714x 0x6826490f ad714x_probe +EXPORT_SYMBOL drivers/input/misc/ad714x 0x8f8ee65e ad714x_remove +EXPORT_SYMBOL drivers/input/misc/ad714x 0xcc67d2e9 ad714x_enable +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x892d76b2 cma3000_resume +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x89d9444e cma3000_exit +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xc0c586f5 cma3000_init +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xca3f100a cma3000_suspend +EXPORT_SYMBOL drivers/input/sparse-keymap 0x08a06b32 sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0x24201792 sparse_keymap_free +EXPORT_SYMBOL drivers/input/sparse-keymap 0x4ef71d55 sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0x50573f38 sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/sparse-keymap 0xc5732b75 sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0xcaa8cfca sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x44a62b22 ad7879_probe +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x97f83edf ad7879_remove +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0xb72696a6 ad7879_pm_ops +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x04403fcf unregister_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x04b0c3a7 capi_ctr_suspend_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x128dbc6a capi_ctr_resume_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x14f2aa5a capi20_get_version +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2b8eab1f capilib_free_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2baa6586 capilib_new_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x31c24aa4 capi20_isinstalled +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x38bce022 capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x47d3fc51 capi_info2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x50b33ca4 capi_cmsg2message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x50f2aaf7 capi_ctr_down +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6057c6f3 capi_message2cmsg +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x62e32d43 capilib_data_b3_conf +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x71e8d5ba capilib_data_b3_req +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7a33596c capi20_get_serial +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7e6f1307 capi20_get_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x899720b1 capi20_register +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x8f699913 capilib_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9aa867e0 detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9c534d71 capi20_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9f823278 register_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xa7c4fd6c capi_message2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xaa165d27 capilib_release_appl +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb19fda8d capi_cmd2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb60e5e5f capi_cmsg_header +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc10fe128 cdebbuf_free +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xd2107a19 capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe19a11ac capi20_get_profile +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe8ad9bd1 capi_cmsg2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xed061606 capi20_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xedc49e34 capi20_put_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xf9c85928 attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x1449a80b b1_load_config +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x1c1eaa21 b1_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x32172678 b1_loaded +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x3f300d5c b1_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x668c8912 b1_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x6fde10a6 b1_getrevision +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x7e44b640 b1_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x85f09690 b1_irq_table +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x8919daff b1_alloc_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x94163f8a b1_free_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x9c9dd4c0 b1_parse_version +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x9f42b9c0 avmcard_dma_free +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xdc37f336 b1_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xdfd28376 b1_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xea3f4335 avmcard_dma_alloc +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xec300951 b1_load_t4file +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xefee4cbe b1ctl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xfa10fee4 b1_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x1e9bcc34 b1dma_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x465fa8af b1dma_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x59df09d2 b1dma_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x6ab08bfd b1dma_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x7820bd3f b1dma_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x821319aa b1pciv4_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xb67509db b1dmactl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xbd304eab b1dma_reset +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xcf0531f3 t1pci_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xd6f9f1ea b1dma_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0x29562993 b1pcmcia_delcard +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xaec3240e b1pcmcia_addcard_m1 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xea620116 b1pcmcia_addcard_m2 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xf14bf8b1 b1pcmcia_addcard_b1 +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x2974ead1 DIVA_DIDD_Read +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x7ab59853 proc_net_eicon +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x15ccbd56 mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x488eadd0 mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x6bf7dcf8 mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xa4e75742 mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0xc4fc601b mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0xc8b15cd9 mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x07f4f2ce hisax_unregister +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x148f0c99 FsmFree +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x7f29ce36 FsmInitTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x93a64734 FsmChangeState +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x9df0cd27 FsmEvent +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xa3cc56d9 hisax_init_pcmcia +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xe227344e FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xee93522c hisax_register +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xf0a16657 FsmNew +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xfc27303b HiSax_closecard +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xff2db2cf FsmDelTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x0a5958b5 isac_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x3f3b323a isac_d_l2l1 +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x795caf93 isacsx_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xcd9339a9 isacsx_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xe9fa80fa isac_init +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xfa6c6240 isac_irq +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x0b04a691 register_isdn +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x186dac47 isdn_ppp_register_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x5c130974 isdn_ppp_unregister_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xfa06820f isdn_register_divert +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x3b71e4fc isdnhdlc_decode +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x59cc8a7e isdnhdlc_out_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x8ee38862 isdnhdlc_rcv_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0xfd9d4c09 isdnhdlc_encode +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x15ed35d6 mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x1d01d431 get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2348cc3c mISDN_FsmFree +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2852b56f get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x37139c20 recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x40e8a212 queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x475997a0 mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x4a98c8b3 recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x4c88cb0f recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x54451388 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x5b02d439 recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x614ede30 mISDN_FsmAddTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x633c523c mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x72ec9095 bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x7a4be1d5 create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x7dd1c1cb mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8a4e99fb mISDN_clock_update +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x914fe739 mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x962ac6e6 mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x96309324 mISDN_FsmDelTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa3136a3f mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa5cb3599 mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa6d0d469 bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xacec6c31 mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb82171c9 dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc5fab698 recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xcc37bb33 mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd285995f mISDN_clock_get +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd5145151 mISDN_FsmEvent +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe63e7e03 mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe87943cf mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf9e7832f mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x01087af0 mISDN_dsp_element_unregister +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x60721da7 dsp_audio_law_to_s32 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xa215f1b2 dsp_audio_s16_to_law +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xb98308d8 mISDN_dsp_element_register +EXPORT_SYMBOL drivers/md/bcache/bcache 0x13cb2ae2 closure_sub +EXPORT_SYMBOL drivers/md/bcache/bcache 0x194dd47a closure_wait +EXPORT_SYMBOL drivers/md/bcache/bcache 0x7ed56cfb __closure_lock +EXPORT_SYMBOL drivers/md/bcache/bcache 0x8f50ff17 closure_sync +EXPORT_SYMBOL drivers/md/bcache/bcache 0x93e0a3ba closure_trylock +EXPORT_SYMBOL drivers/md/bcache/bcache 0xe3c17af1 __closure_wake_up +EXPORT_SYMBOL drivers/md/bcache/bcache 0xf17c33c7 closure_put +EXPORT_SYMBOL drivers/md/dm-log 0x37168a1a dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0xaeda77d2 dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0xbb2817bc dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-log 0xd16edf59 dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x6ebb32af dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0x7db50c54 dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0x8708a596 dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0x8a838316 dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0xce93ab3c dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0xfcc87ac1 dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/raid456 0xa0e393fa raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x0695fbe8 flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x0d7d85ac flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x15b9f129 flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x1e9df4e3 flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x38e679f4 flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x49d77a2c flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x712adf32 flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x907d44b8 flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x97c70167 flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xac47c05d flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xb6a15c13 flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc3b09769 flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xd7c04cc8 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x4449d1be btcx_riscmem_alloc +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x495e4b0c btcx_calc_skips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xad2fe38b btcx_sort_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xc368f8e6 btcx_align +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xcda0ded2 btcx_screen_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xfe70a7d9 btcx_riscmem_free +EXPORT_SYMBOL drivers/media/common/cx2341x 0x1ca0c084 cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0x226764f8 cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0x2f25eee2 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0x3db8be82 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cx2341x 0x55565b99 cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0x5b88faf6 cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xab9d5c97 cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc184ec1e cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf76ce95 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf8b77a4 cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xe90b2121 cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0xc4777a8a cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x40b8abd9 tveeprom_read +EXPORT_SYMBOL drivers/media/common/tveeprom 0xaa4207c1 tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0ae9495a dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0c908006 dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x17523ce7 dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x19591134 dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1d8bd516 dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x22d6ce4a dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x28ee2ae8 dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x32eb96a9 dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3328ef51 dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x35e50b43 dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x361a7512 dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x37b79e6f dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3f7224d5 dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4d3b9a9c dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4d8f5bb4 dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4fe9d8d4 dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x55a33e32 dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5f176f50 dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x74a5a698 dvb_filter_pes2ts_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x78d62338 dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7ba5d8bd dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80e3832d dvb_filter_get_ac3info +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x81711731 dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8e47dce5 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa0e883f2 dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa4332654 dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa5d6c473 dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa9b7625f dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xaa71550d dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xac4ca1b0 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xafce1a8f dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb415a315 dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb66f2447 dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb7b0d1cd dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd68a099e timeval_usec_diff +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdb576668 dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdd3f7a93 dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe2ad75a0 dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe5ae8707 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf16ce817 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf4564d99 dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf826deb0 dvb_filter_pes2ts +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf8e4743f dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfc0a5b02 dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-frontends/a8293 0x21da79f0 a8293_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9013 0x59859588 af9013_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9033 0x712e4e8f af9033_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0x64b415ee atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x0b6ffb3e au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x2428c2f8 au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x3b8dae5a au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x3bc30c06 au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x40bfe7ff au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x49912e7b au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x4df37f5b au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xbcdda0e1 au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xd27f8529 au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0xfff74f85 au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0x0ad09e46 bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0xdbb976de cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0x9d83cd1a cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0x9fc1cb30 cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x41da65af cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0xbf7f155e cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0x4740df1b cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xc3c6b3a5 cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xfec1d0f2 cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0xa8f648e0 cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x3e1fcd7b dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x5ff7d89d dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x9a29e654 dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xa963298c dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xdb318064 dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x0f248300 dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x28e9947c dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x370c6b76 dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x6467faee dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x6858bd6b dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x8341045f dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x9a256763 dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x9c910a37 dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xa35601dc dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb23cd31d dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb545deb7 dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb5ca1be2 dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xcb60aed2 dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xe2dfe999 dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xfe9ff726 dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0x6fe5b7da dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x55bc5484 dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x62ef6e69 dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x905db766 dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x9e448bfb dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xb9d2a968 dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xbbf6d188 dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x46368a43 dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x8170d0f4 dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x928c9021 dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xd79ec78a dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x06e22256 dib7000p_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x201e1663 dib7090_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x31430211 dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x3c40ca6c dib7000p_set_agc1_min +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x3ded4d13 dib7000p_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x406ca090 dib7090_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x44232ca6 dib7000pc_detection +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x456a21a7 dib7000p_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x506365f6 dib7000p_get_agc_values +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x5708e4ef dib7000p_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xbae20a48 dib7090_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xbbe6f99c dib7000p_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xc43345d9 dib7000p_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xd3738000 dib7000p_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xf0063d6d dib7090_slave_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xf7ebec62 dib7000p_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x0588b266 dib8000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x1ab27682 dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x491472a0 dib8000_pwm_agc_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x59a59197 dib8000_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x631a044d dib8096p_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x72409468 dib8000_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x73adaae2 dib8000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x8074758b dib8000_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x981c72ae dib8000_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x9860d3d0 dib8000_remove_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x9dd79e86 dib8000_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa9d6d2e8 dib8000_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xb74adbbd dib8000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xb89d4134 dib8000_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xb99e2dd8 dib8000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xbbc55ca2 dib8000_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xcf129a8b dib8096p_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xef2a18d1 dib8090p_get_dc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xfb87a238 dib8000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x31a1ce11 dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x4adfc7b5 dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x6f71aa0e dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x88a986ff dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xa408b7fa dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xad3ad91c systime +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x1a37483e drxd_config_i2c +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x60861e5f drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0xc47ac818 drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0x96f1b612 ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0x1902ce23 dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0x7db18096 ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0xdbebf8a1 isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0x55ba988d isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0xc5a95cca isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/it913x-fe 0xa57b8917 it913x_fe_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0x9d359418 itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0xe4a0b73f ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0x0fe122a7 l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0x0da40845 lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0x0b4aa611 lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0xa0cd9c03 lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0x419a8c5b lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x48fb38c7 lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0xd437d5a6 lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0xcf47de1e lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0xae2a2e6d m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0x97786343 mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0xcea83620 mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0x69c9b5a9 mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0x9a55d919 mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0xee472012 nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0x493afbc2 nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0x6f3dccf5 or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0x6bdd3d24 or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0x5b1dd5f1 rtl2830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0x72dad63a rtl2830_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2832 0xf9e5dc90 rtl2832_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0x5b1855f8 s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0x19522f81 s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x4abdbde2 s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x5070ba27 s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0x32f73e3c s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0xf8e95ff4 si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0xf0541eca sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0x68c8e711 sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0x5a94af9f stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0x225cdfe8 stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0x8158b413 stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0xc39074f5 stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0x857b6175 stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0x7f3aa058 stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x06f537f8 stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0xde3617c5 stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0xb5ea892f stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x19d3cbf6 stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x74818491 stv090x_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0x67a60536 stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0x8a61a5d0 stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0x2b42b100 tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0x0f35091a tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0x8fdb6c36 tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x5ce1da40 tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x8c8d4954 tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10071 0x68d51d8f tda10071_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0xfc91255f tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0x3b3c46e0 tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0xdaa341e3 tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0x17b65ffb tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0xc839cef2 tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0x6440e66c ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0xb84d54a5 tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0xccbb802f ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0xe44f5267 ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0x694d4952 zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0x0fdc3da4 zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0x0a7849c9 zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x37af9c03 flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x72668e97 flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x9a1acd66 flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xa1412b41 flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xa5b70995 flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xfeb0266f flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xffdf3f9b flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x1f653244 bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x27a5cbe6 bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x7b40b57c bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xd5d0bdef bt878_num +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xe8704cff bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x08baa6a9 bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x11dc4b6d bttv_gpio_enable +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x4ba8db57 bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xf0a4a4b4 bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x0ebf02fe dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x14b7bb57 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x2c05281c dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x4340be75 dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x92f66106 write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xa0053239 dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xc622088c dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xce5a2159 rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xd78ec6fc read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe94b8c9c dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0x27d1c0fc dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x451efe57 cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x5f4f2d36 cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x87e914b1 cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xa46ddd04 cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xebd2e23c cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x030fe57c altera_pid_feed_control +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x9247b72f altera_hw_filt_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdecce891 altera_hw_filt_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xec123ef6 altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x39cacdf3 cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x42166b08 cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x4ad90a91 cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x587df46f cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x784853c3 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xbbb73066 cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xc336535f cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xc5d38741 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x51ad886e vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x92d716e6 vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x9ae7d39e cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xa0ce7423 cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xbc0ea32d cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xebc9f261 cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x7d7b7ec1 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x92d975d8 cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x99afd11f cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xd38a548a cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xe5806061 cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xe7a8c031 cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x0471a323 cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x05ebc63c cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x0e760dfe cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x0fcf3977 cx88_risc_stopper +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1912f642 cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x2cfd3429 cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4216fc84 cx88_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x5b81795c cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6141c8c5 cx88_tuner_callback +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x64419895 cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x733f79b4 cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x73765d5f cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7642ed3c cx88_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x76ca2d96 cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7760f61f cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x8b7ff032 cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x904b8696 cx88_audio_thread +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x907ed668 cx88_free_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xa6817bf0 cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc6ae2799 cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xcaf4e78a cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd1249ee8 cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xdd243824 cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xe2c6df44 cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xe516b600 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf3959c18 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x0ec8153b ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x1b95cbea ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x2fd382d3 ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x34c1da94 ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x36623912 ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x488bd843 ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x4de6fe00 ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x61f7a3d6 ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x6462c720 ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x8bdd3a58 ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xabc82847 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb2531fe8 ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb257b79e ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc1c7f2fe ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc64f09f7 ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xd618daed ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xea9f26fd ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x04e83446 saa7134_tuner_callback +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1211df5d saa7134_devlist +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1f910cef saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x2c15574b saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x3b2d814a saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x6b27f484 saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x73039031 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x7af2cce9 saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xaf96cff1 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xb8fe8599 saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xc834d5ef saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xd7b405f5 saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xe8a19b59 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xf962564e saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xfeee473a saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x3e617445 ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xc3e4c127 ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x011a5ac6 videocodec_detach +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x629fc1bb videocodec_attach +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0x8a5c8743 videocodec_unregister +EXPORT_SYMBOL drivers/media/pci/zoran/videocodec 0xdbcc60d1 videocodec_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x0bb33fc6 soc_camera_power_init +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x22b646e3 soc_camera_unlock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x4bd8aa4d soc_camera_xlate_by_fourcc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x56c39dba soc_camera_host_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x88e122ad soc_camera_power_off +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x9bc8b262 soc_camera_lock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xd8e11669 soc_camera_apply_board_flags +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xd9679778 soc_camera_host_unregister +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xe949418f soc_camera_power_on +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x25c52d97 soc_mbus_samples_per_pixel +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x2863728e soc_mbus_image_size +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x5f3e3558 soc_mbus_bytes_per_line +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xa9546115 soc_mbus_find_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xc8b28da5 soc_mbus_config_compatible +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xfe2c3a07 soc_mbus_get_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x0928a3ab soc_camera_client_s_crop +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x2b3dd1ba soc_camera_client_g_rect +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x5869ec85 soc_camera_calc_client_output +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0xe1056584 soc_camera_client_scale +EXPORT_SYMBOL drivers/media/radio/tea575x 0x29b04cfc snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0x715a5294 snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0x80f5f662 snd_tea575x_exit +EXPORT_SYMBOL drivers/media/radio/tea575x 0xf2152aaf snd_tea575x_init +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x04dca738 lirc_unregister_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x051c0c89 lirc_dev_fop_read +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x21d1f473 lirc_dev_fop_poll +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x77fc8c03 lirc_dev_fop_open +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x858b98d7 lirc_dev_fop_ioctl +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x94d5919e lirc_register_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xb2aded88 lirc_dev_fop_write +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xb88ac080 lirc_get_pdata +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xc2c151ee lirc_dev_fop_close +EXPORT_SYMBOL drivers/media/rc/rc-core 0x479355ac ir_raw_handler_register +EXPORT_SYMBOL drivers/media/rc/rc-core 0xd956a142 ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/tuners/e4000 0x102ecd73 e4000_attach +EXPORT_SYMBOL drivers/media/tuners/fc0011 0xe80d62b7 fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0xdc8ef50f fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x485a7165 fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x594ef2ea fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xa05570e9 fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc2580 0x4d9b5cd7 fc2580_attach +EXPORT_SYMBOL drivers/media/tuners/max2165 0xf647e7b2 max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0x7779ca8e mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0x8f6bf0ec mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0xa42898a8 mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0xcd2403bc mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0xdda60b17 mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0x20cb202a qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18212 0xc56fb0c2 tda18212_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0xc1b8242a tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tua9001 0x1cfe2c24 tua9001_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x0cb4b189 tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0x422d3d1a xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/tuner_it913x 0x325f9278 it913x_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0xe355681f xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0x862fc0b1 xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x74c14fbf cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xc6781171 cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x146e3b39 dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x23327c7f dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x315a6635 dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x46931cc6 dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x5253ebc3 dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xa24238b9 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xd495b621 dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xd5d62cbd dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xe7e03547 dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x0d1e49e0 dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x2aadfbe3 usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xd6c3e99a dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xe3c8c383 dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xec6239a2 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xf2750e7a dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xfd62067e dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x13e247e0 rc_map_af9005_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xcaf86efd af9005_rc_decode +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xd4e288db rc_map_af9005_table_size +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x1135e4eb dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x810f7299 dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x925d68f6 dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xa80db71a dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xaa04579d dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xadfe6ba7 dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb25d83ba dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb47559e0 rc_map_dibusb_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb8e303dc dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xc7c95ff6 dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xd88f5faf dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xf2438ce7 dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x37df28e5 em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0xe88c9586 em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x14fbeb0b gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x24d34d6f gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x4285cb26 gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x48f549da gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x5035cb10 gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x7c93ce53 gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x7d3e0c36 gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xe8dd5df4 gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x3cda2b48 tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x56dd1cc3 tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xb2d41786 tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0xc6f380be ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0xed348174 ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x42c8e001 v4l2_ctrl_next +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x4adaf0f3 v4l2_ctrl_query_menu_valid_items +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x53c9394f v4l2_ctrl_query_menu +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x5f96a661 v4l2_ctrl_check +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0xabe27502 v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x21924b85 v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x5abfb368 v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xd844f983 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x3064049c videobuf_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x30d85857 videobuf_dvb_get_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x819a192b videobuf_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x9c713ff3 videobuf_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xb3e6883c videobuf_dvb_find_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xb8fb95de videobuf_dvb_register_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf2-core 0xc6e78e54 vb2_querybuf +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x056d679f v4l2_subdev_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x07463f02 v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0b75bfd0 v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0c72e40e v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0c994b1f v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x140e371b v4l2_of_get_remote_port_parent +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16586c21 v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1ebb4a70 v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x21687f2e v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2171c839 video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x25829a48 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2a80f7d6 v4l2_subdev_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2bfb683f v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2eb4f0f9 __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x311e0654 v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x33a8b253 v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x34ff6e62 v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x36847d11 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3db7f213 v4l2_of_get_remote_port +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3eb98aeb video_usercopy +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3ed4cb3d v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x495426ee v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x58d67c62 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x59c477bd v4l2_subdev_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6115f108 v4l2_subdev_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6462dc47 v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6545ff47 v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x670d1fc1 v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x68e9f6cc v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6d4f8d16 v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6d59b7c7 v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6ef26e68 v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6f914892 v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x73df9b7d v4l2_subdev_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x79240567 v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7a3cd015 v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7ed3f7ba v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7f923f2a v4l2_of_parse_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x80e7ae48 v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x81a8c2c8 v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x83e8e243 v4l2_subdev_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x86755b45 v4l2_subdev_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8ebc7a68 v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x93aa2e44 v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xab8abe97 v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xabaf1c84 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xabe4707c v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xad898e21 v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xae81cebc video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb156dd05 v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb90cbedf v4l2_of_get_next_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbaa3337d v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbac4a225 v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbb48d9cb v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc067393f video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc12cf8f8 v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc3a0a98f video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc3b7d99d v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc5f0132f v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc9c77828 v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcac19814 __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcd08dbd2 v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcd582ae7 v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xce4ea392 v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xde496b57 v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xded4a59c v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdef40a47 video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe6fce6f2 v4l2_ctrl_merge +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe755cac8 v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xeac09b4b v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xee9f0878 v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf0ecb517 v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfac72e6d v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfca416b4 v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfec7f075 video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xffc3adb9 v4l2_ctrl_add_ctrl +EXPORT_SYMBOL drivers/memstick/core/memstick 0x013e47ac memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x08298b84 memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x1b6cd68e memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x26d8fe38 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x37c9bf00 memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5b5c17c8 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5d8568bd memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x678b65ac memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x717c3820 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0x8a8a7b2c memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0x8c9b5da4 memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x95f6324a memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x96fc3bb2 memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xe4c4e93a memstick_resume_host +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x16d2e6ee mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x19abc2a7 mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x21ed9a08 mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x24264b90 mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x29f2e37d mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2b15b5bd mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3129410d mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3ed1b731 mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x43e1e32a mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x43e5b6e5 mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x43eed07c mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4526289b mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x45a3391c mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x477cd659 mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x52c1ff99 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x57dbe056 mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5856e296 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x62d0be82 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x62f5fa5f mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6dc1cbdd mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7bcefe58 mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x81951926 mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8442a6dd mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x85ae8260 mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x868a7cf7 mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8d79e9f1 mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc0e69f82 mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc47c22e8 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc6c98769 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd0bdfaed mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd8e2d4b2 mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd9a92a75 mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe7b1de0a mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1cff2cea mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x33714e4e mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3adcf343 mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3de401b3 mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x515886f7 mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5704c0e0 mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5c592a1e mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x6db40055 mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x6f30370a mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9073bc3c mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x909980c7 mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x91162746 mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9d6bea03 mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9ee04c12 mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xbc48d842 mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xc33a83de mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xc3c0cb92 mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xcc2f11ba mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xcd6353ea mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xda18e55c mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xdd02592a mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe27151ba mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xeef4ca2e mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf18f34ed mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf775f54f mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf7e19181 mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xfa4b1146 mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x09df45c9 i2o_event_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2a299f5c i2o_msg_get_wait +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2a843bef i2o_dump_message +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x3a610efa i2o_parm_field_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x3eea6424 i2o_device_claim +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x5df5d2de i2o_driver_notify_controller_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x60eb99a1 i2o_driver_notify_controller_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x64c6b250 i2o_driver_unregister +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x6a6b1006 i2o_parm_issue +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x6aa4390f i2o_msg_post_wait_mem +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x90e85cb8 i2o_parm_table_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xad88ab86 i2o_driver_notify_device_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb4c00dcf i2o_controllers +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xd672d56d i2o_device_claim_release +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xd6a97876 i2o_iop_find_device +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xd9f802c7 i2o_driver_notify_device_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xdf7be818 i2o_exec_lct_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xdf84e706 i2o_driver_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xe8412498 i2o_find_iop +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xfe90b96f i2o_status_get +EXPORT_SYMBOL drivers/mfd/cros_ec 0x0b8abe83 cros_ec_remove +EXPORT_SYMBOL drivers/mfd/cros_ec 0x23f66624 cros_ec_prepare_tx +EXPORT_SYMBOL drivers/mfd/cros_ec 0x8654e063 cros_ec_resume +EXPORT_SYMBOL drivers/mfd/cros_ec 0xaa94bed9 cros_ec_register +EXPORT_SYMBOL drivers/mfd/cros_ec 0xeed740d3 cros_ec_suspend +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x777eaceb pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xbd6f9474 pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x094f95ac mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x1f45c6ab mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x2280a098 mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x5b39a1dd mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x714cd379 mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x82f58631 mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x9d680c98 mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xbdf5c075 mc13xxx_irq_ack +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xc2c4b446 mc13xxx_irq_request_nounmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xc8f4353d mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xd056320d mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xdf2a5d3b mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xefea10ce mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/tps6105x 0x21cf760e tps6105x_mask_and_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0x8af5cbda tps6105x_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0x9077cdd3 tps6105x_get +EXPORT_SYMBOL drivers/mfd/tps65010 0x02d4ad0f tps65013_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0x0c6ad2cf tps65010_config_vdcdc2 +EXPORT_SYMBOL drivers/mfd/tps65010 0x28485130 tps65010_config_vregs1 +EXPORT_SYMBOL drivers/mfd/tps65010 0x33739de7 tps65010_set_vib +EXPORT_SYMBOL drivers/mfd/tps65010 0x9fd44c69 tps65010_set_led +EXPORT_SYMBOL drivers/mfd/tps65010 0xb14080cc tps65010_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0xd5bb106d tps65010_set_vbus_draw +EXPORT_SYMBOL drivers/mfd/tps65010 0xe99b3f36 tps65010_set_gpio_out_value +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x53f71ee9 ad_dpot_probe +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x5e66e0db ad_dpot_remove +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x58765536 altera_init +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x34bf10e0 ssc_free +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x578d677e ssc_request +EXPORT_SYMBOL drivers/misc/c2port/core 0x2932ee18 c2port_device_unregister +EXPORT_SYMBOL drivers/misc/c2port/core 0xf4d1dbf1 c2port_device_register +EXPORT_SYMBOL drivers/misc/ioc4 0x44a06a13 ioc4_register_submodule +EXPORT_SYMBOL drivers/misc/ioc4 0x49daece7 ioc4_unregister_submodule +EXPORT_SYMBOL drivers/misc/tifm_core 0x221fa28f tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x2f2c93b0 tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0x32cb76cb tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x357e7aa1 tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x39f86aa1 tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0x54dfc8bb tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0x5db22cb0 tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x7138f089 tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x87804aa1 tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xb6e6ea67 tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xd06bf0da tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xec183266 tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0xf1a01753 tifm_unregister_driver +EXPORT_SYMBOL drivers/mmc/card/mmc_block 0x49402509 mmc_cleanup_queue +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x55653f5b cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x72d6ed03 cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xc74e5b0d cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x0bf709cc unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x2a60213e do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x7f76601f map_destroy +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0xce5c7abe register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0x6d843739 mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0x0940fede lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0x5d8eba2d simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0x42ca5702 mtd_concat_create +EXPORT_SYMBOL drivers/mtd/mtd 0xdc21caf3 mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/nand/denali 0x268a8170 denali_remove +EXPORT_SYMBOL drivers/mtd/nand/denali 0x2b88b1af denali_init +EXPORT_SYMBOL drivers/mtd/nand/nand 0x1fa64765 nand_scan_tail +EXPORT_SYMBOL drivers/mtd/nand/nand 0x486f8374 nand_scan +EXPORT_SYMBOL drivers/mtd/nand/nand 0xadb9112b nand_lock +EXPORT_SYMBOL drivers/mtd/nand/nand 0xb099b20d nand_unlock +EXPORT_SYMBOL drivers/mtd/nand/nand 0xdc204889 nand_scan_bbt +EXPORT_SYMBOL drivers/mtd/nand/nand 0xeb584fee nand_scan_ident +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x465f4306 nand_bch_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x60be259f nand_bch_init +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x70097aa0 nand_bch_free +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0xe7f4cdee nand_bch_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x3132ee65 __nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x4fa66842 nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xb4b94377 __nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xdb94b818 nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0x57a31e57 nand_flash_ids +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0xa336feb7 nand_manuf_ids +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x20c2b3ec onenand_scan_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0xb5b757bb onenand_addr +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0xc75f6fd0 flexonenand_region +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0xe59e385c onenand_default_bbt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x0ff49746 arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x16aa40b6 alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x304005bd arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x7139c5d3 arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x8484a50b arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x91f9c851 arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x9320b6c9 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xcd93aa94 arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xd369df5c arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xfbce0e76 arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x4a8f4558 com20020_check +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xa35700b0 com20020_found +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xa5de1eba com20020_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x39e68963 ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x49316619 __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x6cc866f4 ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x945d7a53 ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x961547c2 ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xa0bb1051 ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xb6a8347e ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xd751f874 ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xfab515db ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xfbbec397 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0xe1db5815 cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x295872e1 t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x39302619 t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x5a9394f9 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x7df27d1e t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x8a0c75c0 cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa319ccb0 cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa4112272 cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa586dede cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xad2ce7a4 dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xb2641d2e t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xd4d3e110 cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xd52497ef cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xdc80feee cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xe6ec1c78 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xffa9eabf t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xffc07c8f cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x02259c69 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2f244760 cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x47f1d061 cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4d0a1dae cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5d7aef7b cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6cec7bef cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x70614400 cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x73a98b87 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x81d4ad9e cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x84ce48e1 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x85a7ead2 cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x8913c28e cxgb4_disable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x893cfeca cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x95bd5cd9 cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9cccd56a cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa2edeb31 cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa6b67c99 cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xaf2247aa cxgb4_enable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb770b069 cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb88445ec cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xbc0f0641 cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc39b17f6 cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc637d25c cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc8136b45 cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd00e5a36 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd2c82bbb cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd766ea9b cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xde515cb1 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe43689e9 cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x0e712340 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x0f362850 vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x4f650da7 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9196d804 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x93097abf vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9434cc31 enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x5b6cc436 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xbab62e22 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xe8a750c3 be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x02041051 mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x06834329 mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0922dfc8 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x164e0dd3 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2c342d20 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3c036881 mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x423e7dd2 mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4a63bffa mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4ab22fa0 mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x58f5ee32 mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5d5343bb set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6059e948 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x70f9456d mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x73d6a6a4 mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7992faba mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x813e9aee mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa0862f37 mlx4_test_interrupts +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaa67de96 mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xabe9c627 mlx4_set_stats_bitmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb0fe2c43 mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xce01fd22 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeba0162e mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf89788fe mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf98b40c5 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x038501d4 mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x13d6af65 mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1da8da8d mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4a245125 mlx5_core_arm_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x52840d6b mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x563dcf4e mlx5_core_destroy_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x57390643 mlx5_core_get_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5982ef0c mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x618fa9a6 mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6f3a2880 mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7420023d mlx5_core_dump_fill_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7a0cdbdf mlx5_dev_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7fdcc3e6 mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8dd06eb3 mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8f4570a6 mlx5_cmd_comp_handler +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x931d1c8f mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa6994c58 mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xac87bbfb mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xad873a7e mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xadd02722 mlx5_core_create_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb34b22a3 mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc2cc7897 mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc3c22b1f mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcb7c15a3 mlx5_dev_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xce0dafd6 mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd92e5158 mlx5_core_query_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe3d70c94 mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x6480e607 hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x800be15c hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x938debcc hdlcdrv_register +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xb84b2698 hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xceed95a5 hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x175699f1 sirdev_set_dtr_rts +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x2f75ec4f sirdev_raw_write +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x4581cb78 irda_register_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x56ba64ae sirdev_receive +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x5ca24679 sirdev_put_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x7d86019d sirdev_raw_read +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x8a102140 irda_unregister_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xd0de6dac sirdev_write_complete +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xe6b9a7e2 sirdev_set_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xf128b635 sirdev_get_instance +EXPORT_SYMBOL drivers/net/mdio 0x22bce513 mdio_mii_ioctl +EXPORT_SYMBOL drivers/net/mdio 0x43e4defc mdio45_nway_restart +EXPORT_SYMBOL drivers/net/mdio 0x7577f992 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0xa1a29548 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0xb34a7575 mdio45_ethtool_spauseparam_an +EXPORT_SYMBOL drivers/net/mdio 0xc6b1163f mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0xddc98749 mdio45_ethtool_gset_npage +EXPORT_SYMBOL drivers/net/mii 0x0d7ff12d mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0x548b3387 mii_link_ok +EXPORT_SYMBOL drivers/net/mii 0x6c8b379f mii_check_media +EXPORT_SYMBOL drivers/net/mii 0x9262808e mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0xa9bf6e2f mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0xc24ebdc2 mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0xd07e93cc generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0xfe554b7b mii_check_link +EXPORT_SYMBOL drivers/net/ppp/pppox 0x6a7b1f22 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xea6816e5 pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xed81f515 register_pppox_proto +EXPORT_SYMBOL drivers/net/sungem_phy 0x28a25699 sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x6fb614d8 team_mode_register +EXPORT_SYMBOL drivers/net/team/team 0x93dcd103 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0x98890962 team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0xac53c8bb team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0xb7bb1fc7 team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0xbacde54d team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0xd3260206 team_options_register +EXPORT_SYMBOL drivers/net/team/team 0xdf182294 team_mode_unregister +EXPORT_SYMBOL drivers/net/usb/usbnet 0x0c22c4fe usbnet_manage_power +EXPORT_SYMBOL drivers/net/usb/usbnet 0x2734fdd9 usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/usb/usbnet 0xfec40f7c usbnet_link_change +EXPORT_SYMBOL drivers/net/wan/hdlc 0x0edf0f80 hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0x43b883d3 alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0x7231ef81 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x81ec40d8 hdlc_change_mtu +EXPORT_SYMBOL drivers/net/wan/hdlc 0x845dbcfd hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0x9b6c1ec3 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x9e160c83 hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0xa1b3d95e hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0xc14b2792 unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xc7c5d410 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0xfccb4b14 register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x5d5db34f i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/airo 0x26f978b2 init_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0x8274ded3 stop_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0xb6817205 reset_airo_card +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x029d58d9 ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x26350c49 ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x2e6a796a ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x319c6026 ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x496b706d ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4e2481d5 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x5258a3a3 ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x53358ce3 ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x5fcbf0f3 ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x64dee131 ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x7cb98ecb ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x8590203e dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x9de772fb ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xbe80a8e7 ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x122e778d ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x167d23af ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5fc5d787 ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x71c7b7b9 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x73dca55e ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7449ec7d ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8246be6c ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x895f9dc2 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaf096710 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0199ec46 ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x15a6d588 ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1b07d47d ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x27cf1694 ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x3df04064 ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4c6ddcb4 ath6kl_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4e1380ee ath6kl_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x8cc2209a ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x95b9a611 ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x9a52ca8e ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x9f84b41f ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xab619f22 ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xceda6741 ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xd0e49fb8 ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x46773607 ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x587a2992 ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x68d38034 ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x91fc76f5 ath9k_hw_wow_event_to_string +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x120c0a34 ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x30372b77 ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x571162b2 ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x8febe07e ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x07952951 ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1282a27a ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x134a3868 ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x135082e0 ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1704e02c ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1a8b133c ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1cbc9ba1 ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1efc0b89 ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x230eee1b ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x274667a2 ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x29c3f2a5 ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2c0ac579 ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2c9fa8bc ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x324430fb ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x336e3c66 ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3b735656 ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3c22590e ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4364ac43 ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x44328428 ath9k_hw_cfg_gpio_input +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x46937a0c ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4ae97500 ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4b788236 ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4cf40d48 ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4e134077 ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x50a30d4e ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x52a79feb ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x543496de ath9k_hw_cfg_output +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5444340b ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x571bb026 ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x57b79188 ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5863b622 ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5b431379 ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5c3b0710 ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5cc2ad81 ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5d8533b9 ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5f2eb876 ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5f8ed5a7 ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x611ba6ce ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x622acf04 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x659bffd7 ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6682218d ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6af98e38 ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6ca53eb8 ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x71b10a88 ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x73208501 ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x75f4cf34 ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7ec8e0cf ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x831db5e3 ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x869e6e6c ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8805dcc4 ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8a56053c ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8d5a0eee ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x94ee089e ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x95e9db41 ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x97dd178f ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x98e81012 ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa0e8a2dd ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa25457ff ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa3e13340 ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa50fce71 ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaa17bb97 ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaa260259 ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaae392da ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xabf81a05 ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xac091957 ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xade38749 ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xae7106f3 ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb0c699a6 ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb6fe69bc ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb745d54e ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc0e7b2a4 ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc47ae5ce ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc4a38cde ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc4feeabe ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc5196f19 ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc842a9b0 ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc9338cb2 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc9674ba5 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcddb904d ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd0b31933 ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd1fbf479 ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd39f7841 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd3f6a449 ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd63b4678 ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdd0dc246 ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdec652bc ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe1063f8d ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe3ad87b7 ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe5269a8e ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe7a730ec ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe868cb51 ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe9aa28ae ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xef309426 ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf0f3db69 ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf350fde5 ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf6448172 ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf8172a99 ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfe279ba5 ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/atmel 0x79cfcb64 atmel_open +EXPORT_SYMBOL drivers/net/wireless/atmel 0xce6402cd init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel 0xe5c247d8 stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0x1514e822 brcmf_sdio_remove +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0xa2b3d66d brcmf_sdio_probe +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x22d24411 brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2dc227f8 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x335f30d9 brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x44e1a414 brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x467658e4 brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x5d9440e2 brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x68d3bffd brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x84c41e31 brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x87d75fe4 brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x8aad720b brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xad8f2dc5 brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xb77fe81e brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xba0a49a7 brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xe99daa9d brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x0ad69602 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x0be2f31a hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x19b82222 hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x2828a820 hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x4020bee2 hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x42ff7ff6 hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x432b2d46 hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x4b773ef6 hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x643f8c34 hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x6582589d hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x7d651eca hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x8a9042d6 hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x90af366e hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x91df9407 hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x9659f64e hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa12ad27f hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa2a90a09 hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb2a945e0 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb6488f90 hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc5678685 hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xd52dba3b hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xd55a67dd prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xd8cf3879 hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xefd0f811 hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xf547fe4a hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xfcb84747 hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xfcb87b28 hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xfd4f2070 hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x1525a845 libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x186b4473 libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x1e1155f5 libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x3171858a libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x3bce2cd7 libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x4374c737 libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x4b7da8d3 libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x50195b11 libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x59fb67ea libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x68689ba7 libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x6b23e32f libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x6f31305c libipw_rx +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x7abdadd7 libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x96ac1b82 libipw_change_mtu +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x9f29f29e libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xc15a025b libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xc767b1a0 libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xd3cd4c35 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xd4732e2e free_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xdee1ea3d libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xe2c87032 libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x06c07a2f il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x06cbf1bb il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0f9a2c18 il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0fce3b2e il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x15ffb362 il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1c4028e2 il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x22f0ceba il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x24795e95 il_leds_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x24f71bcf il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2500f32b il_update_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x25e3e2eb il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2666ad07 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x28deeac7 il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2b1f9c16 il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2d5f95a9 il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3165597a il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3442e030 il_free_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x37466e96 il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x382d7c6b il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3a177365 il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3a1a49b1 il_set_rate +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3aec2702 il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3d340a0f il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3eb9aa73 il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3eca8aaf il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x42ebd9f4 il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x489acf7a il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x499a4c0b il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4aa39103 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4b508d3a il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4c3ac897 il_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4cefb6c7 il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4d337aef il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x51522fbd il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x520cb88c il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x564c6740 il_debug_level +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x57b64f19 il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x59cb58a0 il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x642c5559 il_set_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x657c0b93 il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x69161fa6 il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6e631319 il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6fe96c62 il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x71bc4a7d il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x720d7780 il_init_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x77a9dd2c il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7ca2741f il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7da4ca40 il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7ddb2d51 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7eebfe45 il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7f062ef8 il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x81ce093a _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x84043119 il_apm_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x846ff743 il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x848aa408 _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x86d2198b il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8b866416 il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8bddcd36 il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8d544f91 il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8f5f6074 il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8fa57763 il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x937dcf18 il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x96ddcd33 il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa128cae6 il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa35c715e il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa3de809f il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa4ab7c75 il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa5e8f494 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb22bb9f3 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb4179cd8 il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbd685841 il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc0e86fd6 il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc17197a7 il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc39cf12c il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc49a0ec7 il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc649fec3 il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc8d395d3 il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd19297d0 il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd25bd775 il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd383d073 il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd44fab7c il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd8fba7f6 il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd96b054c il_pm_ops +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd9d83a9f il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdba7015e il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdbc140a5 il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdd82c6e1 il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe1754b41 il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe28a053c il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe35c4fb0 il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe5970afd il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe5bb6aea il_mac_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe812f3ac il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe91cdf94 il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xedbe8e96 il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf02caa0a il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf0f2c32a il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf3e712f0 il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf501278b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf5f1184b il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf93404c3 il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf9b48903 il_force_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfa90c725 il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x08ee1e7d __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0d9eb5ff __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0e7bc05f __tracepoint_iwlwifi_warn +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x201337b4 __tracepoint_iwlwifi_dev_tx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x249e4b06 __tracepoint_iwlwifi_dev_rx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x36dcef55 __tracepoint_iwlwifi_dev_iowrite32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x4919d1a5 __tracepoint_iwlwifi_dbg +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x67381a2a __tracepoint_iwlwifi_dev_ucode_error +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x79e9bf26 __tracepoint_iwlwifi_crit +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x7edec07d __tracepoint_iwlwifi_dev_ioread32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x8bfcc307 __tracepoint_iwlwifi_info +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x9a12c9c5 __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xc0827b2f __tracepoint_iwlwifi_dev_iowrite8 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xda36f3a4 __tracepoint_iwlwifi_err +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x14d8f9a9 orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x1622171d __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x362329da orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x447460a4 orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x453393d9 orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x4f13e9c9 orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5029fb89 orinoco_down +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x51e58925 free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x58fc1e93 orinoco_up +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5dea5bf1 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x7e45951f orinoco_open +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x84739e2f orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x991d6be8 orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x9ea6bb02 __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xabe7bf95 orinoco_get_stats +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xbcb0dd0a alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xe00b2e36 orinoco_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/btcoexist/btcoexist 0x0194e4ab rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x02675ea9 rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x04855299 _rtl92c_phy_dbm_to_txpwr_Idx +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x081b6676 rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x118a058f rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1eee3170 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1ffc357f _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x32cad7d7 _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x386cfbf9 _rtl92c_store_pwrIndex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3a711427 rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3b4cf12d rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x471ca5a7 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x49a7d180 _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x54d2a7ea rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x566d9961 rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x56910051 rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x5aadc753 rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x666fd21f rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x6810ba2b rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7aa616b5 rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7ba5cd33 rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8082dd06 rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x837f1c0a _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x95b75624 rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x96d1fb97 rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x9fa937a5 rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xaa29048d _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xae3af8b3 rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xafab0604 rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb3314d48 _rtl92c_phy_calculate_bit_shift +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xda865ecc rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xdaa482da _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xdb75b91c rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe0a91b80 rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe6328fbf rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe81267e1 rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xeeafe515 rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xeff5bd36 rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf5ee0bd1 rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf7210438 _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf726f25f rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf8b47c16 rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xff36e6ec rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x110f6aeb rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x4ac05ccd rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x5930ba6b rtl_pci_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x6eacc442 rtl_pci_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x1055266c rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x37539eff rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x9658893d rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0xacd26dab rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x044d0084 rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x207fbb70 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x20ba13d3 rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x26593f36 rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x35f1335d rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x3b1d17b8 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x43c1c3f7 rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x4b904ce1 rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x4d24ecd4 rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x5d3102b0 rtl_ps_set_rf_state +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x6f944f61 rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x79188a02 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x7be6f6b7 rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x7d08eaac rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x7fa51e42 rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x83d73f23 rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x87a8d8ba rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x88f6f246 rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xae90cd10 rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xb22cfd7e rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xb610ec36 efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xc8ceb1de rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x0fa24def wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x26beeba1 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x7ae6caeb wl1271_free_tx_id +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x91e64932 wlcore_tx_complete +EXPORT_SYMBOL drivers/nfc/microread/microread 0x1330b1d3 microread_probe +EXPORT_SYMBOL drivers/nfc/microread/microread 0x2c394379 microread_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x57f8473e pn544_hci_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xc8562cdc pn544_hci_remove +EXPORT_SYMBOL drivers/parport/parport 0x11e844b2 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x12095124 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0x136eaf5a parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x1438e717 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0x226019c5 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0x2e8bf2a8 parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x30ec28d0 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x330d1025 parport_register_device +EXPORT_SYMBOL drivers/parport/parport 0x37dc101b parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0x3d63f8af parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x49137eae parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x4e6073b5 parport_read +EXPORT_SYMBOL drivers/parport/parport 0x5de134fe parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x6a47782a parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0x6b414d00 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0x7bd6dcce parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0x7e93fe04 parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x82e7ff0f parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x83f2c223 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x859b3db2 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0x93d7a41d parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0x9d26c0a3 parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0xac3e54fe parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0xba1660bb parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0xbf7fa00c parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0xc0e8b2f5 parport_claim +EXPORT_SYMBOL drivers/parport/parport 0xc12f5db9 parport_release +EXPORT_SYMBOL drivers/parport/parport 0xded6c608 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xe0bfd659 parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0xf9608b0b parport_write +EXPORT_SYMBOL drivers/parport/parport_pc 0x1f74672b parport_pc_probe_port +EXPORT_SYMBOL drivers/parport/parport_pc 0xe65c75a8 parport_pc_unregister_port +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x0235feea pcmcia_disable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x07bce291 pcmcia_request_io +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x108c9829 pcmcia_get_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x1a015942 pcmcia_loop_config +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x201cc055 pcmcia_unregister_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x2d2a80bf pcmcia_get_mac_from_cis +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x3699b0b4 __pcmcia_request_exclusive_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x398f25b3 pcmcia_enable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x4eccc826 pcmcia_request_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x60b70cf0 pcmcia_read_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x742f5665 pcmcia_parse_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x760bfcff pcmcia_register_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x8047132d pcmcia_map_mem_page +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x94f0eb02 pcmcia_fixup_vpp +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xa5a2ba33 pcmcia_request_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xa7dd5516 pcmcia_write_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xb386dd30 pcmcia_release_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xcfe6e9b4 pcmcia_dev_present +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xd3805081 pcmcia_loop_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xf9f80d7e pcmcia_fixup_iowidth +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x08ced9d8 pcmcia_socket_list_rwsem +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x18b58006 pcmcia_get_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x1e4c26ab pcmcia_register_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x212db8d2 pcmcia_socket_list +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x38a13002 pcmcia_parse_uevents +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xaa9f3352 pcmcia_reset_card +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xab2919bf pcmcia_get_socket_by_nr +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xb071203a pccard_register_pcmcia +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xc0e6b6f5 pcmcia_socket_class +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcf97f3bd dead_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xe4b712f9 pcmcia_parse_events +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xf0e310b2 pcmcia_put_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xf4f8ee72 pcmcia_unregister_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x1989b99e pccard_nonstatic_ops +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x7e6c7ea1 pccard_static_ops +EXPORT_SYMBOL drivers/pps/pps_core 0x56bcc542 pps_lookup_dev +EXPORT_SYMBOL drivers/pps/pps_core 0xb3b9fbcd pps_register_source +EXPORT_SYMBOL drivers/pps/pps_core 0xeafa233d pps_event +EXPORT_SYMBOL drivers/pps/pps_core 0xeb56969f pps_unregister_source +EXPORT_SYMBOL drivers/ptp/ptp 0x4040f966 ptp_clock_event +EXPORT_SYMBOL drivers/ptp/ptp 0xaefcdceb ptp_clock_index +EXPORT_SYMBOL drivers/ptp/ptp 0xc9b0f431 ptp_clock_register +EXPORT_SYMBOL drivers/ptp/ptp 0xd4659a29 ptp_clock_unregister +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x151fc6f2 rproc_alloc +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x335f5350 rproc_shutdown +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x856363b0 rproc_add +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x95404279 rproc_boot +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xa0c3d98b rproc_da_to_va +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xbd1a5c0c rproc_del +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xd2359dcc rproc_vq_interrupt +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xd2fdab75 rproc_put +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xfb39f290 rproc_report_crash +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x1ae8fae8 fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x457428e8 fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x5595f970 fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x65215f66 fcoe_ctlr_destroy_store +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x85e92ca7 fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xb40d1017 fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xba2b4a68 fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xea6d437f fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xebe25450 fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xf1a5606a fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xf1f65477 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xfecfa58c fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0008e9db fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x06549b13 fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x06df372c fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x15d3eb1c fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1a4febe4 fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1e298589 fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x21882547 fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x21bb4655 fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x23fd126a fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x35ffa371 fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36e5fbaf fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3a7de082 fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3ad36396 fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x42641686 fc_change_queue_type +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x469ed05a fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4965ea01 libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5a09cb61 fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5a3aa97c fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5c464f27 fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5e108f68 fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x646914c7 fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x65c768dd fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x662ea3a5 fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6a2efa4f fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6a4c3506 fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6afbcb91 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7fdfb064 fc_change_queue_depth +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x93ef67cb fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9a246a99 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9b309c14 fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9cc05ae3 fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9fb5de0b fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa05c8a00 fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xae46c9e5 fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xaedeabb3 fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb5c8377d fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbe732514 fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc0b8d9b1 fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc9e504bc fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xca442692 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcf6e359e fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcfc5747d fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdeb9a9d0 fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe0b54af7 fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe6f40c75 fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xeadd09bc fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xefac5376 fc_rport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf0394dc7 fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf274eca3 fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf43ff8f0 fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf806a627 fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf9623b5e fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfebbb5b2 fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x23929a6d sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x2ea050ab sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x65286ac0 sas_wait_eh +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8a87e724 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8af44911 sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x2250c66e mraid_mm_adapter_app_handle +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x512c956d mraid_mm_unregister_adp +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0xbf0725cc mraid_mm_register_adp +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x090d0d36 osd_req_flush_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x09118c05 osd_req_read_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0c17edb1 osd_sec_init_nosec_doall_caps +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x11e63565 osd_req_list_partition_collections +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x175d06dc osd_req_decode_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x208e42ae osd_req_decode_sense_full +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x292b9f15 osd_dev_fini +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x396ecf8d osd_end_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x3c2d8d55 osd_req_read +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x417295e8 osd_req_remove_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x521cf071 osd_req_list_dev_partitions +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x5d034645 osd_req_add_get_attr_page +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x5d86e07d osd_req_add_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x634e31c5 osd_req_create_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x68790b43 osd_finalize_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x6e678baf osd_execute_request_async +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x6efd56e1 osd_req_list_collection_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7260b3cb osd_req_write_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x75c1935e osd_req_create_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7c2e68e5 osd_start_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7c404a54 osd_req_add_set_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8f28286c osd_req_read_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9621ad7e osd_req_set_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9fb3e993 osd_req_format +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xa2e62f4a osd_req_flush_collection +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xad39498a osd_req_flush_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xad80970a osd_req_get_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xb92a4547 osd_req_write_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc2241302 osd_req_list_partition_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc370f5ff osd_execute_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc37d6949 osd_req_flush_obsd +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc58ddbcf osd_req_read_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xcaede310 osd_auto_detect_ver +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xdb75e45d osd_req_write_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xdfb457e8 osd_req_remove_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xed1c5d74 osd_req_write +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xf592901a osd_dev_init +EXPORT_SYMBOL drivers/scsi/osd/osd 0x0ba51058 osduld_put_device +EXPORT_SYMBOL drivers/scsi/osd/osd 0x1c4044c5 osduld_path_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0x529e72bc osduld_register_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x5fc48609 osduld_unregister_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0xa1c95e51 osduld_info_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0xc0bf3f02 osduld_device_info +EXPORT_SYMBOL drivers/scsi/osd/osd 0xdfe6a00c osduld_device_same +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x04fb3fa6 qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x1e8d32d1 qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x5bef76d2 qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x604db7ba qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x675cb297 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x6d2d987c qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x733c547f qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xc249e42c qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xde02e7b2 qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xf25125db qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xffe7f275 qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x1f55cd70 qlogicfas408_ihandl +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x2a44dcd1 qlogicfas408_bus_reset +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x33d1633b qlogicfas408_queuecommand +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x3fd8cd71 qlogicfas408_detect +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x9a4d6eb0 qlogicfas408_disable_ints +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xa1c3c599 qlogicfas408_biosparam +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xc0c2cd5f qlogicfas408_info +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xe76b3b20 qlogicfas408_get_chip_type +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xf2b95199 qlogicfas408_setup +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xfcf1f28c qlogicfas408_abort +EXPORT_SYMBOL drivers/scsi/raid_class 0x0b5979cb raid_class_release +EXPORT_SYMBOL drivers/scsi/raid_class 0x59ccaec1 raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0xf9676a5c raid_component_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x0fc77d8b fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x1c98be75 scsi_is_fc_vport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x345a4a50 fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x3ac7f130 fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x40c05828 fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x47593bde fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7954b1ea fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x9e5d7815 fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xb2173729 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xb39ca6e3 fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xbaf56b3b fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd8bb5c59 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe18a977e scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe213d4ca fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x04db923f sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x11162417 sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x12c502da sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x35935ea3 sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3665d658 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x40019bb1 sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x42720f83 scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5ba3e66d sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x62d7eb24 sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6f59a9d8 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7345bc2a sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x74b1ff9a sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7e8342f4 sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x821376f1 sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x8ec7233c sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x969b55e7 sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x974c92ad sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbea731f7 sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc350972b sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xdcca7a78 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe7044eb9 scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe7d1c09b sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xeadcd83b sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf360f814 sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf5afdfac sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf8536e81 sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf9171df8 sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xff1b113e sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x24cd0134 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x2a8d78b1 spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xa4efdb6f spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xbf91868a spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xecc50447 spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x4cb4776a srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x851e44cf srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x92e1e849 srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xcd07910d srp_rport_put +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x1afc9f40 ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x46b86c4b ufshcd_runtime_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x6276d8d6 ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x079154fb ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x1123167b ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x268b4eff ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0x2d317d0b __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0x3a66b24c ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0x421427ba ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0x5324a848 ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0x534625a2 ssb_bus_pcibus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x62d9b90a ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0x7e8d6947 ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0x83b2b7eb ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0x8510227e ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x8eff411a ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0xa1302d14 ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xa1f7b0bb ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0xaca0b83d ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0xc0512e0f ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xd481192b ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xd4f76a35 ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0xebe600e1 ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xf5a8ae45 ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0xf8bb944d ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0xfdf9a9e7 ssb_device_disable +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0x679c59fe fwtty_port_put +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0xba8f5239 fwtty_port_get +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0xbced56c0 adt7316_remove +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0xfd7a05cd adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x25eb2a1f ade7854_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0xb69267de ade7854_probe +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x03c65e31 lnet_copy_kiov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0acd7045 lnet_parse +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0bce7eef lnet_counters_get +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1366b7ac LNetSetLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x19670622 LNetNIInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1b191752 lnet_msgtyp2str +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1fe16fd5 LNetGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x204b8151 lnet_counters_reset +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x22f73680 lnet_copy_iov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2aa9953d lnet_cpt_of_nid +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2ac93e90 lnet_connect_console_error +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x33202a6c LNetGetId +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3558e584 lnet_iov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3c779ee0 LNetPut +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3ec5b3f6 lnet_set_reply_msg_len +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3f4f5b46 LNetNIFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x45b8b49a lnet_connect +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x473ad33b LNetDist +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x4bb00492 lnet_copy_iov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x4f9cb871 lnet_extract_iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5811a721 LNetInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x58a1ca89 LNetMDUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5fee352c lnet_acceptor_timeout +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x61f784b2 LNetClearLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x64cdea3a LNetCtl +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x6dd9e1d5 lnet_copy_kiov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x6f7be171 LNetEQGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x722c76e5 LNetMDAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7a0ea651 lnet_kiov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7c0ae892 lnet_register_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7d59a7fe LNetMEInsert +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x854ab844 LNetEQWait +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8a3064f2 LNetSetAsync +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x923463d2 the_lnet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9cc3d497 lnet_net2ni +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9de986d3 LNetEQAlloc +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa81be745 lnet_create_reply_msg +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa8c2760b LNetFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa414970 LNetMEUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa9b477e LNetMDBind +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb17cb834 lnet_finalize +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb1d98863 lnet_set_ip_niaddr +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb51fc762 lnet_unregister_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb75f7953 LNetEQFree +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xba5566d2 lnet_acceptor_port +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xbf0760a2 LNetMEAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xd0c2fd2f lnet_extract_kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xe5ba0790 lnet_notify +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf1b316bf LNetSnprintHandle +EXPORT_SYMBOL drivers/staging/lustre/lnet/selftest/lnet_selftest 0x078db139 lstcon_ioctl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x05bd8e5d client_fid_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x1c4bb5f9 LU_OBF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x375e6f8d LUSTRE_BFL_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x3b999d8a seq_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x444185c8 client_fid_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x5ea28a15 seq_client_get_seq +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x7904e514 seq_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xad877e1c seq_client_alloc_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xae61cff5 LU_DOT_LUSTRE_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xc997a02f LUSTRE_SEQ_SPACE_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xd1a96be2 seq_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xecee2727 LUSTRE_SEQ_ZERO_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x07f87362 fld_client_del_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x2e825716 fld_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x33e63dad fld_client_add_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x469c0edd fld_client_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x6acda234 fld_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x9572dbc3 fld_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xbad006c8 fld_client_proc_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x000c507f libcfs_debug_dumplog +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x00c881f6 cfs_cpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x01db5172 cfs_percpt_atomic_summary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x03387ca6 cfs_curproc_groups_nr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0389f857 cfs_cpt_spread_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x04d3ce6a lbug_with_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x06401e01 cfs_hash_is_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x069f9bb2 cfs_wi_schedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08917712 cfs_hash_for_each_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08ada613 libcfs_console_backoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0b4b1546 libcfs_lnd2modname +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0c68bc45 cfs_cpt_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0de6c369 cfs_cap_lower +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0de7ce94 libcfs_sock_getaddr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0e311d38 cfs_percpt_atomic_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0f5eff79 cfs_percpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x10b7e9c3 cfs_cpt_unset_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x123b6908 cfs_hash_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12426266 libcfs_run_lbug_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12c54b77 cfs_hash_findadd_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x151e7546 cfs_cpt_table_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x17ac7833 libcfs_deregister_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x18d45c74 libcfs_sock_abort_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1a60d439 cfs_parse_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d41c4c0 cfs_hash_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d5a3928 cfs_timer_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1e8cdb47 cfs_race_waitq +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x23f6f445 cfs_restore_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x24128775 libcfs_sock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2663147a __cfs_fail_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x277e62bd cfs_hash_for_each_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x27b6d3ba cfs_ip_addr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x29aafd0c cfs_hash_hlist_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2a641ef9 cfs_hash_dual_bd_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2b1e0458 cfs_get_environ +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2dbe54b2 cfs_trimwhite +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2e5044c7 cfs_cpt_set_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2efcc0e6 cfs_block_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2f439265 cfs_percpt_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2fb7eae8 cfs_hash_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x30986343 cfs_range_expr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x31fc5082 cfs_crypto_hash_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x377f93fb cfs_srand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3834f243 proc_call_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x389ca502 libcfs_debug_mb +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x39fdcd2b libcfs_debug_set_level +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3c1285bd libcfs_subsystem_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3d5e6098 cfs_race_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3e5e7727 cfs_hash_rehash_cancel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ea730c0 cfs_gettok +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ef0d90c libcfs_kkuc_group_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4087e2b4 cfs_hash_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x411db754 cfs_crypto_hash_final +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x41ab33a1 libcfs_ipif_free_enumeration +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44688a0a cfs_block_allsigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44728d76 cfs_cpt_bind +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44839bbb cfs_rand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44f07cfc cfs_pause +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x468bace1 cfs_hash_rehash_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x47fdb4d1 cfs_timer_is_armed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x482deff7 cfs_cpt_unset_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x48f163c6 libcfs_str2anynid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4a99af72 cfs_clear_sigpending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4b30a643 libcfs_sock_setbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4b982291 cfs_hash_bd_peek_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4d89e988 cfs_block_sigsinv +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4f1f2fa5 cfs_crypto_hash_digest +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x50345570 libcfs_str2net +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5051b6d2 portal_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x509d38b0 libcfs_net2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x52a19258 libcfs_sock_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x54fd9a71 cfs_percpt_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x58a7ee00 libcfs_catastrophe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5946ec2b cfs_percpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5a785762 cfs_cpt_online +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5b20921a cfs_hash_for_each_nolock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5c013b81 cfs_expr_list_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d3be65a cfs_crypto_adler32_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d73c3e3 cfs_expr_list_free_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5dce9e80 libcfs_lnd2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5df8c623 cfs_cpt_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62289d65 cfs_array_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62f56738 upcall_cache_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x63b4967a cfs_hash_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x64685fef libcfs_console_min_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6564c55b libcfs_console_max_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x65dd9f0c libcfs_run_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x66136d2d cfs_timer_arm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x67398404 cfs_wi_sched_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c0b6b10 libcfs_sock_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c4cadc8 cfs_hash_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c905b5f libcfs_watchdog_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6dfa9ea1 cfs_crypto_adler32_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6e6af71c current_is_32bit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6f928e1b libcfs_debug_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7190502f upcall_cache_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71f662a3 libcfs_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x72bebe1b libcfs_sock_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x72f4e5f9 cfs_hash_bd_move_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x75161168 upcall_cache_flush_idle +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7562cd14 cfs_hash_del_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x771695b1 cfs_hash_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x785b7372 cfs_hash_dual_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x79abe705 libcfs_kkuc_group_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a3d49ae cfs_expr_list_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a47b94d cfs_hash_size_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7b0b748a cfs_ip_addr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c73bc4b cfs_hash_rehash +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c7986cf waitq_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7e6f6485 cfs_ip_addr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7fda989d cfs_fail_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8151c3aa cfs_cap_raised +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8286ffa5 cfs_percpt_lock_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x828d16a2 cfs_cpt_table +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8338752b cfs_hash_debug_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x83d795e4 cfs_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x841679dd upcall_cache_get_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x857aaea7 libcfs_register_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x87f3bb87 cfs_hash_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8b8e6edb cfs_hash_debug_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c85e4e6 cfs_crypto_hash_speed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f12bb52 libcfs_log_goto +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f45f10d cfs_init_timer +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x91504e8b libcfs_kmemory +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x940ed192 libcfs_stack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x949221dc cfs_hash_cond_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x95620e8c cfs_wi_deschedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x97b0b9bc cfs_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x98724434 cfs_crypto_hash_update_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9879b229 cfs_get_random_bytes +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x995d10f6 libcfs_sock_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9f82f712 cfs_trace_copyout_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa1cbf250 upcall_cache_flush_all +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa28a6757 cfs_percpt_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa2b68b2a cfs_array_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa6b9dee6 libcfs_kkuc_group_rem +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa8d5c7f7 cfs_percpt_lock_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9088531 cfs_expr_list_values +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9dc74e2 cfs_trace_copyin_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9eae690 cfs_str2mask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xab887583 init_waitqueue_entry_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xac0f67e3 cfs_cpt_unset_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xad019238 cfs_str2num_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb00dfd91 cfs_hash_dual_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb200d8d9 libcfs_kkuc_msg_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb473e79e cfs_wi_sched_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbab577e8 cfs_hash_for_each_safe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb9cb508 cfs_curproc_cap_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbc275420 cfs_cpt_unset_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbd5d492e cfs_timer_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbf7a37f1 cfs_signal_pending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc0ea7fc0 cfs_expr_list_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc1708189 cfs_hash_dual_bd_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc1b20836 cfs_hash_add_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2911d96 cfs_expr_list_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2dfd791 libcfs_console_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc39fd2f9 libcfs_panic_on_lbug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc3eb614e libcfs_ipif_query +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc47433a6 cfs_capable +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc49b1c62 cfs_percpt_atomic_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc9b78bb4 upcall_cache_downcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcb2160d3 cfs_cpt_of_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcb385db9 libcfs_debug_binary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcbab8493 schedule_timeout_and_set_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcc20e694 libcfs_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xccc45639 cfs_free_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcd38904c cfs_wi_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xce1a88f2 libcfs_arch_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf61bacb __cfs_fail_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf678304 cfs_hash_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf90528c cfs_cpt_table_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd0aa642a cfs_hash_rehash_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd127b5b5 libcfs_sock_listen +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd1319447 cfs_cpt_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd2965f33 cfs_hash_bd_del_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd48d8f72 cfs_hash_dual_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd5396536 cfs_cpt_set_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6a52be3 libcfs_printk +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd7bbf963 cfs_hash_dual_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd7c4f765 add_wait_queue_exclusive_head +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd9541990 cfs_strncasecmp +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd96f406d cfs_cap_raise +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdae98700 libcfs_sock_getbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdce448d0 cfs_cpt_set_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xde17bb8d libcfs_isknown_lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf2789c0 cfs_curproc_cap_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdffc951d cfs_timer_disarm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe3bf6897 cfs_percpt_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe45b62ff cfs_cpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe6555032 libcfs_ipif_enumerate +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe7b54314 libcfs_arch_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe94553b9 upcall_cache_flush_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xec1f56d5 libcfs_str2nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeceac781 cfs_fail_val +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xedf3a25a cfs_timer_deadline +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeed48ba7 cfs_hash_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xefbf6d86 upcall_cache_put_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf0246bf2 cfs_cpt_table_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf372d1c2 cfs_firststr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf440bb38 libcfs_kkuc_group_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf5e4a175 cfs_hash_bd_add_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf63a3d8d cfs_percpt_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf782fbe6 cfs_cpt_weight +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8a8644b libcfs_id2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8efb8c5 waitq_timedwait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf94025d1 libcfs_str2lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfa0d98ca cfs_cpt_set_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfacb8667 cfs_hash_getref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfe565fa9 cfs_crypto_hash_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xff0f98a6 libcfs_debug_vmsg2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x4de8152f ll_stats_ops_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x548ee45c ll_iocontrol_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xacbb8726 ll_direct_rw_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xbd38a6bc ll_osscapa_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xcd3cde92 ll_iocontrol_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x27095531 lov_stripe_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x2aafadd8 lov_lsm_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x3b0b8b9f lov_read_and_clear_async_rc +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xa288d560 lov_stripe_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xf00e4fe8 lov_device_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xf86dc526 lov_lsm_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x1f68d9ed fsfilt_register_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x24e1671d lprocfs_counter_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x3bcbdc4b lprocfs_stats_alloc_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x412541b0 lustre_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x4d8d6dfa lprocfs_counter_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x63263318 push_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x662ab98c pop_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x8553b369 obd_memory +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x9be4004a l_dentry_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xb4f8ee63 lprocfs_read_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xbfe3a39d fsfilt_get_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xc5e6b4c0 fsfilt_unregister_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xea7d9f20 fsfilt_put_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x14a47f31 it_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x9c22b84f it_open_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xb57d8447 it_set_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xf46a886f it_clear_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mgc/mgc 0xdc287f95 mgc_fsname2resid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0012c650 llog_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x014fb6e6 obdo_from_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01543fa2 cl_page_list_move +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01595ce7 capa_cpy +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01665e34 class_parse_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01a3166d cl_page_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x025660b7 lu_device_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x035852d0 lustre_swab_llog_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x03bf2777 class_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x042f0742 cl_io_rw_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0490d6a2 cl_page_find_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x057f6d4b class_find_old_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05af1920 dt_quota_glb_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05edfae5 cl_page_list_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05f84e88 LU_BUF_NULL +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x06231013 lu_context_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07129b96 cl_object_attr_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x072e0407 lustre_in_group_p +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07926937 cl_page_unassume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07aa68bb lustre_swab_lustre_cfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07c257f6 cl_io_iter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0836daca lprocfs_register_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x083942ff class_del_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x08fb7c36 cl_object_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x096b2a2e lprocfs_free_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0a6452cf lu_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0aecc293 cl_object_attr_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b28aa1b obd_export_evict_by_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b4224e2 lprocfs_rd_conn_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b6d6e1e cl_enqueue_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b6fccb6 class_export_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0ca37d0c cl_lock_mutex_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0cf99bff dt_acct_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0d3a9804 lu_object_invariant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0de6bca9 llog_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0e1aec7a lprocfs_rd_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0eb0f605 cl_env_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f2012e5 cl_2queue_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f8cc7ec cl_object_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fe91547 obdo_to_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x10449b5e cl_env_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x10689628 class_conn2export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x109ab386 llog_cat_init_and_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x10d40d98 lu_context_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11495519 lprocfs_write_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x116e969f lu_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1177cb21 lu_dev_del_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x117f74a8 cl_sync_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1377adfb cl_2queue_init_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1491dc30 lu_context_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x14b8eb29 lu_object_add_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17260880 obdo_cpy_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x173d8a0a cl_pages_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x178ffb43 lu_object_assign_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17fedc1d cl_io_prepare_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x18862386 cl_object_glimpse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1a4957af cl_lock_discard_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1a5762c9 cl_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1aeb537d cl_page_list_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b22e1d0 class_process_proc_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b73610f cl_env_nested_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1bda8c8a capa_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1be6fe12 cl_env_implant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1bf029bf cl_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1c7929e3 cl_req_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1ef69ae8 lu_context_key_revive_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1f06f83e lprocfs_rd_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x211e36b3 lustre_idmap_lookup_uid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21307495 lu_buf_check_and_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x217f879a class_config_llog_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21c8f9ef cl_conf_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21f0267d cl_lock_state_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x221826f1 class_parse_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x230e03fa lprocfs_seq_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x231c02b1 llog_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2338ff52 cl_io_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x23524c31 cl_lock_hold_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x23723074 cl_page_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x239586c6 obd_devs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x23967e21 cl_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x24c4bffb cl_lock_closure_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2547efae lustre_uuid_to_peer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x259ba0d5 cl_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x259ebac6 obd_alloc_fail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2616e2f4 llog_cat_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x26a7a86a lu_object_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x272071e0 lu_object_put_nocache +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x275cdc7a cl_env_reexit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2855ffdd dt_record_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x297cf5e0 class_handle2object +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x29a290b7 obdo_from_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x29ba1996 cl_io_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2a1c871f cl_lock_enqueue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ae1cd79 kuc_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2b429cc7 lu_context_enter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2b4c48e9 server_name2svname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2c0ad481 cl_io_loop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2cb66c1a llog_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d7d60ae class_new_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2dcdffd0 llog_declare_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2dec144d cl_page_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2e17763f lprocfs_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2e19f17a cl_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ea7b6c7 cl_page_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ff91247 lprocfs_alloc_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x305b9249 local_file_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x308b50cc lu_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x313efdc8 cl_page_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x31cb8819 llog_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32a5bab3 cl_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3373e047 cl_2queue_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3464ffd5 lu_object_locate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x35c796f4 class_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x36a6ec6f lustre_register_kill_super_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37114b84 local_object_unlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37b92585 cl_page_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37c7351c cl_lock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37ed6e4b at_early_margin +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x380fb552 lu_object_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38546396 llog_thread_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x387a6aac cl_req_page_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38c5f20c lustre_end_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38fb0c90 class_match_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x392393ac class_put_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x39c8580f class_handle_hash_back +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a005065 dt_otable_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a2c2e08 llog_init_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a4a3d6c cl_lock_ext_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a7fd7c1 cl_page_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3b07a785 lustre_process_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3b991d80 cl_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d3f2c4b lprocfs_free_per_client_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3da2aa39 lprocfs_alloc_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3dc73df3 class_config_parse_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3e409046 llog_cat_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3e8e6907 llog_exist +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x404bd7a7 class_handle_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x41fb6209 cl_env_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4303414c cl_io_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43309a0a cl_io_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x439539d8 lprocfs_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43da2bce cl_lock_disclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4423629e cl_io_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44e41abb lustre_posix_acl_xattr_filter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44e89aeb class_exp2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x452421a9 class_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x453b44bb class_name2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x46e9174b cl_lock_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x474ed5bd lustre_swab_ll_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47b35f7d statfs_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48811bcf cl_page_clip +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49306e6b lprocfs_single_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x494cfb52 lustre_acl_xattr_merge2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4983ed19 capa_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a0f6ea lustre_posix_acl_xattr_2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a29223 lprocfs_find_named_value +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4a6265a7 lu_env_refill_by_tags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ac58713 obd_connect_flags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4b13cfb6 dt_txn_callback_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4bf356ca lustre_idmap_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d13458b kuc_len +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d137ba2 cl_page_list_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d8a3ca5 cl_page_list_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4db96327 cl_env_unplant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4de36f3c lustre_idmap_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4e2e3013 cl_io_lock_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4e95dd68 lu_device_type_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4fba4346 dt_directory_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50b57f69 lprocfs_obd_rd_max_pages_per_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50c7fc36 ptlrpc_put_connection_superhack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x511a64cb cl_page_make_ready +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x51e27e5c lprocfs_rd_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x523befbb lprocfs_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x52973f83 cl_io_iter_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x52d83323 class_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x531ad8f7 llog_copy_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5412a9e1 lprocfs_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54425ccc llog_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x545f34ea cl_lock_descr_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54885f87 ldlm_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x549a26df llog_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5562faee cl_lock_hold_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x558bec27 obd_ioctl_getdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x561ad51d lu_context_key_quiesce +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x564e9d44 init_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x566ee3a0 cl_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x56787891 dt_lookup_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x56d1c4f1 cl_io_lock_alloc_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x570d09ae lustre_swab_lu_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x570ed3cb cl_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x576f1e48 obd_export_evict_by_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5803de23 cl_page_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x58a79ef8 class_fail_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x58b79196 class_disconnect_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5953bbeb cl_sync_io_note +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x595b5d2d cl_lock_signal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a20d896 obd_memory_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ab18ebb llog_cancel_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bc022c5 lprocfs_dt_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bd332ef llog_cat_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d34ae0d cl_lock_mode_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e0724d4 cl_env_nested_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e7e08fa llog_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e93341f lprocfs_oh_sum +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ed188a9 lprocfs_add_symlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fabeb96 dt_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fbb4f9b lustre_common_put_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fe97b73 block_debug_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60497c48 lprocfs_rd_numrefs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60abdcfc lu_site_init_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60f32ff0 dt_record_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x624ffe24 lprocfs_counter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631a518d mea_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631fd7b9 lustre_ext_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x633f1540 lu_cdebug_printer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x648a7f66 lprocfs_free_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x64dd3201 cl_lock_unhold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x66b2568c cl_page_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x66daff72 lprocfs_add_vars +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6734adbd lprocfs_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x674df50c lu_context_key_degister_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x677fd7f9 proc_lustre_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67977b42 lprocfs_remove_proc_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67a90622 la_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67dc223a lprocfs_remove +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x68295304 cl_2queue_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6836a322 cl_unuse_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6890d175 lustre_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69525b90 llog_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69c42114 at_min +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a9362a8 lprocfs_init_mps_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6aa673e1 cl_lock_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6b112fc6 dt_txn_hook_commit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6bb6d421 lu_buf_realloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c359b7f dt_store_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c53a8f5 dt_try_as_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c87b78e cl_use_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6cdd85f4 lu_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6d8c6f65 cl_page_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6da9910d class_disconnect_stale_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f3e6225 dt_quota_slv_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f434211 class_import_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f6b5d69 obd_llog_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f72739e cl_page_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f800976 dt_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f841cd5 lu_env_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f866f35 lprocfs_rd_server_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6fd76aca local_file_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x700ffb46 cl_lock_is_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7073b6a6 cl_page_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7102aadc cl_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x714e10bc lu_site_purge +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x71c852bf lu_object_find_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72ddee4c obdo_le_to_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x73f0ff10 local_oid_storage_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x742559b1 class_unregister_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7481d4a7 dt_locate_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7519f618 lprocfs_init_ldlm_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x752f71a8 class_get_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x756a77f3 class_parse_nid_quiet +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x758988f0 llog_cat_cancel_records +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7598c42a cl_io_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x776d0999 dt_txn_hook_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77d2089a class_name2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7802fcd7 lustre_swab_llogd_conn_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x788cd645 dt_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x789796a1 obd_zombie_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x79218570 cl_lock_weigh +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x79480bd4 class_register_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7a218711 lustre_register_client_fill_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7a7a9ae1 cl_io_is_going +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b4fc57b at_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7bc12d2a lprocfs_init_ops_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7bd584ec cl_req_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7c65a80c cl_page_list_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7cededda llog_cat_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7e3b12bb cl_vmpage_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7edcafa0 cl_env_reenter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7eeb0928 class_manual_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fad7291 raw_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fe5561a obd_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7ffb66cc class_exp2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8011ce26 cl_lock_mutex_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x801f1b90 cl_page_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8031efb8 lprocfs_dt_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x80503c22 llog_obd_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x80674009 lu_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x806cc497 class_add_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x815d0ea0 cl_page_is_under_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x815e713b llog_osd_put_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81742d89 obd_ioctl_popdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x826a5ec1 cl_page_vmpage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x82c40496 cl_object_has_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x831f656c class_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x834be9ad cl_io_commit_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8489f086 obd_alloc_fail_rate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x849e5385 obd_update_maxusage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x852b9d50 lprocfs_rd_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x85a45b44 local_oid_storage_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x87339d73 lprocfs_nid_stats_clear_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x884c01eb cl_type_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x88a9a58a dt_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x88b87068 lprocfs_stats_collect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x88f7bfcf lu_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x891054f1 lprocfs_clear_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8927c801 dt_declare_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x89c6c61e dt_index_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8a54861e lprocfs_rd_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8aa2c358 lprocfs_dt_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ae18208 cl_lock_hold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b5f4057 lu_context_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ba38ddc class_export_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ba6e479 lustre_swab_lu_seq_range +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8c6e9d6b lprocfs_wr_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8d658ed0 capa_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8e5bcc53 dump_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8e8c97e6 cl_page_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ec76977 lprocfs_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8eef9177 lprocfs_rd_timeouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f261b95 dt_version_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f67314c obd_dump_on_eviction +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f906a6b cl_page_gang_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8fcd6bd3 capa_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8fd6b844 cl_page_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x905b54e6 lu_env_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x90a8aad0 lprocfs_at_hist_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x912f5aca class_search_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x921bf9b1 cl_lock_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92e58479 obd_dump_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92f00596 llog_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x934add30 class_num2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93859814 lprocfs_oh_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93b46468 lu_session_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x946c6ff1 obdo_from_iattr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x94f9369a lprocfs_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9505c895 lustre_idmap_lookup_gid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9512d507 lustre_acl_xattr_merge2posix +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x955b795c cl_unuse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x955f5220 ldlm_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95735c6c at_extra +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95ec998a lustre_groups_sort +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x973c30e2 lprocfs_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x97429b42 cl_object_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9767adce class_uuid2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x97d03783 at_history +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9819193a cl_queue_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9a7de407 cl_io_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9a8fad40 cl_page_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ab241ba dt_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b1c39ca iattr_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b1ed9d8 obd_jobid_var +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b66abda cl_sync_io_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ba84b16 lu_device_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9cd3c3d6 dt_store_resolve +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ceb44eb lprocfs_wr_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9d202038 cl_lock_at_pgoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9da98359 llog_cat_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9dbb17b6 lprocfs_dt_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9df36b64 lu_context_key_degister +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9e7e112a lu_object_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9fd27a9a lprocfs_obd_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa0aba3cd llog_declare_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa0d6203f cl_lock_nr_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa153062b lu_dev_add_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa1f5d9ff llog_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa21c5ea1 obdo_from_la +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa279ab0f lprocfs_exp_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa32e3616 cl_page_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa35d6dc2 cl_page_list_splice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa48c4a30 lustre_idmap_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa4992cc9 cl_page_is_owned +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa513f7e4 lustre_groups_from_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5c67f6c class_conn2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5fb234f lprocfs_write_frac_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa61a2141 llog_osd_get_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa62cd9ae cl_page_is_vmlocked +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa62e00a1 class_conn2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa6652ab0 class_connected_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa674c241 kuc_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8737d1f local_index_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8b7adac cl_page_list_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa21b7a0 lustre_register_quota_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabda1a90 cl_lock_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabf45922 capa_decrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac7f1596 kuc_ptr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xace27e53 cl_lock_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xacfa9950 cl_page_list_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xad6a3be4 cl_lock_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xada188d9 llog_open_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xae18ec53 cl_object_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xae36ec04 md_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaed3fc89 cl_page_cache_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb00059a7 obdo_refresh_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0140ac0 cat_cancel_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb01963a6 class_uuid_unparse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0fb9886 cl_lvb2attr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1b89b6d class_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1e5af75 lu_ucred +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1ed955a lprocfs_rd_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb23335c7 cl_lock_get_trust +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb296d3e1 llog_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb41998cd lustre_cfg_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb43b2d45 lprocfs_nid_stats_clear_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb4998096 cl_lock_enclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6ba5dd5 kuc_ispayload +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb7365222 lprocfs_rd_u64 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb743ec6a dt_mode_to_dft +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb837568a lu_context_key_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb963779c cl_io_submit_rw +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb9910959 class_devices_in_group +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba20d7ac cl_lock_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba985283 lustre_register_client_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbacac922 lprocfs_write_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbaea54e6 cl_req_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbc7880d5 obd_llog_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbcee1990 cl_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbe4a4690 lprocfs_rd_connect_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbee8fa5c cl_lock_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc01ca6a6 class_find_client_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0954007 lprocfs_oh_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0bf7ef2 obd_debug_peer_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc1086ea5 lprocfs_add_simple +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc11ba9ff lu_context_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc178b261 class_uuid2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc1f2e3d1 class_unlink_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc22d4a94 dump_lniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc24616cf cl_object_attr_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc29f045f cl_object_kill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc3094c98 class_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc3444e21 lu_context_key_quiesce_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc355bd01 lprocfs_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc4ef689d cl_page_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc64dbd11 cl_lock_descr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc728708c lu_object_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc83155e5 cl_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8dbaa87 lustre_swab_cfg_marker +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc987a023 __llog_ctxt_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc9b1bdde dt_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc9b3c667 dt_lfsck_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xca49519f llog_cat_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb0ab67f obd_max_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xccf7a8de obdo_cpu_to_le +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd5e5e6c llog_declare_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd6b9527 cl_lock_user_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd7537ee get_devices_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd8a604e lu_buf_check_and_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xce83a79b cl_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcedb140a obdo_cmp_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcf0ff1b9 dt_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcf7b2f14 lu_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcfa0b511 obd_exports_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcfe6bde9 cl_2queue_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd08827c0 server_name2fsname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd0b5b2e2 cl_io_read_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd0b6995d lu_buf_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd10aa042 lustre_swab_llog_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd11e261d llog_osd_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1b1478b cl_attr2lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1cbedcf cl_lock_closure_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1f58645 lustre_swab_llog_hdr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd27bd670 lu_device_type_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd28a8715 lprocfs_seq_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd29a4566 lu_kmem_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2c1912e lu_kmem_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd33ea4db cl_locks_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd3832ae8 cl_page_list_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd434851b lprocfs_rd_num_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd43ad9f5 cl_req_page_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd6cf5c4f cl_env_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd70fe669 lustre_swab_llogd_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7519495 cl_io_sub_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bc8654 obd_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bfbc9c lprocfs_dt_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7f7b340 cl_lock_mode_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd86187e9 cl_lock_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd9ed7c24 class_disconnect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda5b1ced class_find_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdac246c7 class_detach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdac644c8 lustre_posix_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdae1245c lu_context_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb13dce1 capa_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdbbe4a53 lu_context_key_register_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcadcf1d cl_lock_modify +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcc40af0 class_check_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcdd508e cl_io_submit_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd78c0c7 lu_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdda3d949 class_handle_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdde23d11 dt_index_walk +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xddf00e22 llog_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde7d985b obd_dirty_transit_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdf0867a7 llog_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe028cf84 capa_encrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe16a81a1 cl_wait_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe1af3ac3 llog_cat_declare_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe201f0fc cl_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2eb4470 class_get_next_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3323f5d class_handle_free_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3440edb lu_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe356fd01 lprocfs_alloc_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3fb8dcb cl_req_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe4506b8b cl_page_own_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe4ec84f7 cl_lock_mutex_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe58a8960 cl_lock_is_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe5f4bb1e cl_lock_extransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe616230c obdo_to_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe68a4278 cl_io_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7b31e33 class_import_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7d83236 cleanup_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8e84c32 class_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe9a0e68d dt_txn_callback_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe9add625 class_new_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe9f3ce24 lu_context_key_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe9fb1a48 lu_object_anon +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xea164c46 obd_export_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xea9b7aea class_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeacec47c lprocfs_oh_tally_log2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb0e81b3 local_index_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb3f388a _debug_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xebb3fe94 llog_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec1ef7f0 class_incref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec76847f lustre_idmap_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec7d6b85 obd_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xed037cf5 llog_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xed50d7b9 cl_page_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xed7e098c cl_page_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xedff728d cl_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee68bc29 lu_session_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeeeb79fa do_lcfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xef63cf4b cl_2queue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xef76f858 block_debug_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf01e2527 server_name2index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf07c1fae cl_page_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf09bb2cb cl_offset +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf0aca9bd class_config_dump_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf24bc6df lu_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf25ed000 lu_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2bbe26d cl_req_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2f4bdce dt_txn_hook_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2fd6695 statfs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3c32cac cl_2queue_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf490d5f9 class_del_profiles +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf5773720 lu_ucred_assert +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf5a2ba53 obdo_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf5b29f46 lprocfs_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf60d4659 capa_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf622609a lprocfs_free_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf63c0b87 class_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf65e6e9b cl_lock_user_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf6b0b9ea cl_io_rw_advance +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7020831 lprocfs_dt_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf874c950 dump_lsm +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8c2df92 obdo_set_parent_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf9f5b95b cl_page_list_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa813d06 capa_hmac +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb13807c lprocfs_exp_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbea0098 lu_types_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc21d946 dt_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc7f18d0 obd_pages_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfce4103b lu_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfcf82d66 cl_lock_closure_build +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd0bd37f lprocfs_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd0bde89 lu_context_key_revive +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd68d17a class_notify_sptlrpc_conf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd8f5cf4 lu_buf_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfdbe1557 lprocfs_write_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfdf37e3b lu_site_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfe16597e lu_ucred_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfed76b70 lu_object_find_slice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfef43462 lu_env_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff57e92d class_match_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfffc1f11 lustre_swab_ost_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/osc/osc 0x5c4940c2 osc_update_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x003cb7d1 ptlrpc_request_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x007d3a92 client_disconnect_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x00d95039 ptlrpcd_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01d6ef7f ldlm_pools_recalc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01d7fb1a ldlm_resource_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x02db52bd ldlm_pool_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x03d2d9c7 ptlrpc_set_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x048b59d5 lustre_msg_set_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0515f93b RQF_FLD_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x05a85c80 ldlm_cli_enqueue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x06b3942b lustre_swab_lov_user_md_objects +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x071fc74a RQF_LDLM_ENQUEUE_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x07605c7d interval_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0875d4d8 lprocfs_wr_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08bb2d27 lustre_swab_obd_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0939ec97 llog_origin_handle_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x095587d0 lustre_msg_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a3130b0 RMF_MDT_EPOCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a462f37 ptlrpc_nrs_policy_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ab81dc5 ldlm_lock_downgrade +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac252b2 lustre_msg_set_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac54708 lustre_errno_hton +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0baf300a ldlm_replay_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0bcacb5d RMF_MDS_HSM_USER_ITEM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0be7da7f ptlrpc_save_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0be831d4 sptlrpc_import_sec_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c2d9c43 lustre_swab_lip_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0cf343dd RQF_LDLM_INTENT_BASIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0f807866 sptlrpc_gc_add_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0fe160c3 ptlrpc_pinger_add_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x104595d2 ldlm_lock_fail_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x105bc1bd sptlrpc_req_replace_dead_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x10f18f20 interval_iterate_reverse +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x115017f6 req_layout_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12a918f0 ptlrpc_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12b6f5a3 ptlrpc_connection_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x133f48b7 ptlrpc_request_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x138bd86b ldlm_lock2desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x13e874ab req_capsule_server_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1474440e ldlm_pool_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1483eca4 ldlm_lock_addref_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x14d192db lustre_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15a3e4db RMF_GETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x172fb86d lustre_msg_hdr_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1747d8b3 ldlm_lockname +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1760837d ptlrpc_request_set_replen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x17950f60 RQF_SEC_CTX +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1844548e ldlm_resource_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19108a0f RQF_OST_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19c08934 RQF_LDLM_INTENT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a38d626 sptlrpc_target_sec_part +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a633e92 ptlrpc_req_set_repsize +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a6a3ce9 RQF_OST_GET_INFO_LAST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a9b76aa RMF_OBD_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1aa0192f ptlrpc_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1abd3258 RMF_SETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ace4b5f RQF_LDLM_BL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1b7ede67 ldlm_namespace_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1bae0270 interval_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1be21715 lustre_msg_size_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c26e40d client_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c300d8e lustre_msg_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c801b13 req_capsule_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d043548 lustre_msg_set_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1dc2051d RMF_SEQ_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1de9c288 lustre_swab_layout_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e2d919a ldlm_lock_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e4f1dc0 ptlrpc_disconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e8e48a4 sptlrpc_flavor_has_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1eb2a65f RQF_OST_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee46b51 lustre_init_msg_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee9eb3c RQF_MDS_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1f418e9a ptlrpc_lprocfs_unregister_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2096f5b5 RQF_OST_SET_GRANT_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20d6b82c RQF_LDLM_INTENT_QUOTA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20ffa152 __ldlm_handle2lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x218a36ce ldlm_cli_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x221a12fa ptlrpcd_wake +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x233790b5 RMF_OST_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x244e5558 lustre_msg_get_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x24aafdba RMF_MGS_TARGET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2585a629 RMF_SEQ_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2587513c RQF_LDLM_CP_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x269554ce RQF_LDLM_INTENT_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x26e32e12 req_capsule_client_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x26f99d16 RQF_MGS_CONFIG_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x285e5b99 lustre_msg_set_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x28d0be0d ptlrpc_retain_replayable_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x29e0869a sptlrpc_get_hash_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a63a472 lustre_swab_ptlrpc_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2b7d5384 ptlrpc_unpack_req_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c00c60d ptlrpc_sample_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c0401a6 ldlm_resource_unlink_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c9605df req_capsule_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ca92fa8 ldlm_lock_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ccd5b87 ldlm_cli_cancel_list_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d4aa22e req_capsule_server_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d56f168 ptlrpc_pinger_ir_up +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d798316 RMF_MGS_CONFIG_RES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d8444eb ptlrpc_buf_set_swabbed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e3ddf7f lock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4562fe RQF_LLOG_ORIGIN_HANDLE_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4ca396 RQF_LDLM_INTENT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e6c1c38 do_set_info_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ecd7515 lustre_msg_check_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ed36063 ptlrpc_cleanup_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f0e4f87 RQF_OST_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2fd2f737 lustre_msg_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x301d4fcd RQF_MDS_READPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x302937e0 RQF_MDS_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x303f6f9a sptlrpc_cli_unwrap_bulk_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3060b9c6 sptlrpc_rule_set_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31838cb4 RMF_IDX_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x318a4c57 ldlm_pool_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3261b862 RQF_OST_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3327c76f ptlrpc_nrs_policy_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x33bb7761 ldlm_typename +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x34f3fbf8 ptlrpcd_alloc_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x35939a3d lustre_swab_fiemap +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3597ed24 ldlm_reprocess_all_ns +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x35d4768c ldlm_lock_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3785631d sptlrpc_cli_enlarge_reqbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3835ab4b RQF_LLOG_ORIGIN_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3838b91d sptlrpc_conf_client_adapt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3858fb94 RMF_OBD_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3896ba40 ldlm_pool_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38c01799 RQF_LDLM_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38fce533 lustre_msg_set_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39d1c898 ptlrpc_commit_replies +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39f60a5f RMF_OST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a1e4bcb __lustre_unpack_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ab90f6e lustre_msg_bufcount +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ac00716 lustre_swab_hsm_user_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b6b7cba dump_ioo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b6d4079 req_capsule_server_sized_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bcf9e56 ldlm_lock_change_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bdefa68 ldlm_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bedb0c7 RMF_LLOGD_CONN_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c4d9186 ptlrpc_req_finished +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c63e62b RQF_MDS_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ca50f33 RQF_MDS_HSM_CT_REGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d770b82 ldlm_completion_ast_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d7dc5f9 ldlm_pools_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dc47695 lustre_msg_get_magic +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dddb3e2 dump_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ee4579b ldlm_pool_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f034caf lustre_msg_get_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f752e78 RQF_MDS_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3fd3fbe8 lustre_pack_reply_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3fda0bf9 sptlrpc_sec_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3febd4ce ptlrpc_deactivate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x40dee700 sptlrpc_enc_pool_get_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x41008cef RQF_LDLM_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x419d956a lustre_pack_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43705ee4 RQF_LOG_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43d7efc8 lustre_msg_set_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44036eda RQF_MDS_GET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x440c2a71 RMF_FIEMAP_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44347052 ptlrpc_request_alloc_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x447b8dc4 ptlrpc_resend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4481591d RQF_OST_SET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45d05893 lustre_swab_lustre_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45e30cea lustre_swab_ldlm_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x46f2f6d8 ptlrpc_req_finished_with_imp_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x470fe5b7 ldlm_cli_cancel_unused_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x475cc306 sptlrpc_cli_ctx_expire +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47f5e903 RMF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x48164f44 ldlm_lock_allow_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x48814c9f lustre_swab_ost_lvb_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4916a4e7 ldlm_blocking_ast_nocheck +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x498c03c5 lustre_msg_set_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a1eeb47 llog_origin_handle_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a5a2416 RMF_DLM_REQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b09ce4b lustre_swab_mdt_rec_reint +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b3a7e16 req_capsule_extend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4c1bb767 sptlrpc_target_update_exp_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d32cd27 ldlm_init_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d5f2407 ptlrpc_register_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d7580d0 lustre_swab_hsm_user_item +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4dd8a695 ptlrpc_reconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e1706e5 lustre_msg_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e696b96 ptlrpcd_queue_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4eb03a6f ptlrpcd_destroy_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f766c3b lustre_swab_generic_32s +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4ff29b0b sptlrpc_svc_ctx_invalidate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50443f6a ptlrpc_init_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50dd74f8 RMF_STRING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x52b6612f lprocfs_wr_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x52c62150 RMF_RCS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53411557 RMF_DLM_REP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53812e71 ldlm_cli_update_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53a4a004 bulk_sec_desc_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53fe9d42 llog_origin_handle_next_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x54ae5021 ldlm_lock_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x54e2689e sptlrpc_cli_ctx_wakeup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x555eb7fe RQF_MDS_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x579a4e4c ldlm_cancel_resource_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x57e19e10 ldlm_init_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x588035b4 RMF_UPDATE_REPLY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x588c2deb sptlrpc_conf_target_get_rules +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x595ab175 lustre_swab_obd_quotactl +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x596582bf RMF_GETINFO_VALLEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x59c424d2 ldlm_blocking_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x59ca398b ptlrpc_add_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a057439 interval_search +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a9e0239 ldlm_cli_cancel_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5af0d02a ldlm_lock_dump_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b6ba895 lustre_packed_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5bdfab1f client_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c6a3a83 RQF_SEQ_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5caae213 ptlrpc_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e0b19b1 RMF_CLUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e2b7558 lustre_msghdr_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e6f435d RQF_OST_BRW_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e80f899 RQF_LLOG_ORIGIN_HANDLE_READ_HEADER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ec3284d RQF_MDS_HSM_CT_UNREGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ef831ee lustre_msg_get_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f96ccdd ptlrpc_connection_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6042bc15 RQF_MDS_REINT_RENAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x604e2505 RMF_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x604fa975 ldlm_enqueue_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x607ec932 lustre_msg_set_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x60cd26ad RQF_MDS_REINT_CREATE_SYM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61646e1b RQF_MDS_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x618ad203 RQF_OST_GET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62192cf8 dump_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62aaae3f RQF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6315dd4c RMF_LLOGD_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6352a62d ldlm_get_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x63df0690 req_capsule_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x647b6e48 lustre_swab_ldlm_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x653723dc RMF_LOGCOOKIES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x657b00b7 ptlrpc_init_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x65921886 sptlrpc_unregister_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6596e36a sptlrpc_sec_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x668ff5f7 req_capsule_field_present +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x683243bf ptlrpc_set_next_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x685eeaba RMF_DLM_GL_DESC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68cb2541 interval_is_overlapped +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68f49e5e ptlrpc_expired_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6912990a RQF_OST_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x696ba811 lustre_msg_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69c9f04d RQF_MDS_REINT_LINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a3785c9 RMF_EADATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6bac34ed ldlm_namespace_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6c91c402 ptlrpc_lprocfs_brw +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6cd2e671 sptlrpc_cli_unwrap_bulk_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d72828c sptlrpc_conf_log_update_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d7931cc RQF_UPDATE_OBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6e254581 llog_origin_handle_prev_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ed20499 ldlm_revalidate_lock_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6efa82b0 RQF_MGS_TARGET_REG +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f6dc736 lustre_swab_mdt_remote_perm +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6fb92092 sptlrpc_flavor2name_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x703538e4 lustre_swab_hsm_current_action +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x70b1fe4d ldlm_get_enq_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x71a2612a client_import_del_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x723d43b6 sptlrpc_rule_set_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x725a892c RQF_MDS_REINT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7287b6c0 ldlm_pool_get_lvf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x736ee877 ptlrpc_request_alloc_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x739870a9 req_capsule_set_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x73e4e5c9 ptlrpc_add_rqs_to_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74840056 lustre_msg_set_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75a2c40d ldlm_put_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75fa7145 ldlm_glimpse_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76701a1b ptlrpc_set_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76b728e5 lustre_swab_update_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77571cc6 lustre_swab_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77840c82 sptlrpc_rule_set_choose +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7865b6e2 target_pack_pool_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78bf9136 lustre_swab_ldlm_lock_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a832f10 RMF_CONN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7ace0e27 __ptlrpc_free_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b158da4 lustre_swab_ldlm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b5e147d ptlrpc_set_import_active +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b71d82f req_capsule_filled_sizes +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7bb4e621 ptlrpc_request_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7bbf8001 RMF_MDT_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7bc58703 ldlm_pool_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7c315eff ldlm_pool_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7c4c6107 RQF_LDLM_CONVERT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7cf22c3a req_capsule_client_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d1ecd7f RQF_LDLM_INTENT_LAYOUT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d41a8b9 RQF_QUOTA_DQACQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d6f11e8 ptlrpc_start_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dc0e7cd RMF_QUOTA_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dfb3c18 lustre_msg_clear_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4925d8 interval_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4c99b1 ldlm_expired_completion_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f5a1cc7 lustre_msg_set_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f6d2357 lustre_msg_is_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f8c91e9 ptlrpc_send_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7fe0a1b4 req_capsule_server_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80a9e8c3 lustre_msg_get_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80ecb4e3 RMF_MDS_HSM_CURRENT_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x817d7f1f lustre_msg_add_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x826d3c4f RQF_LDLM_GL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x837efb00 RMF_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x83b2e465 sptlrpc_get_bulk_checksum +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8510c0ea ldlm_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85135801 RMF_DLM_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85a9e0d8 RMF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85eecf67 sptlrpc_get_hash_alg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x863db6eb RMF_HSM_USER_STATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x86fa8c3b ldlm_cli_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8760beaf lustre_swab_ldlm_policy_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x876c2551 RMF_GETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87995e1c ptlrpc_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87a8a07a ldlm_destroy_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87bf7b3c sptlrpc_get_next_secid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87ff2afb ldlm_pool_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8872f3d2 RMF_SETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x88a742a1 sptlrpc_sec_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x88fff52d RMF_CAPA2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x89f9edf7 RQF_MDS_REINT_SETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a1ea476 lustre_swab_hsm_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a257736 RQF_MDS_HSM_STATE_GET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a4345b1 ptlrpc_set_add_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a4bc8c6 ptlrpc_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ab7bfea ldlm_extent_shift_kms +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ac25638 lustre_pack_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ac440fa ptlrpc_uuid_to_connection +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b854254 lustre_swab_mgs_config_res +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8c3d95af sptlrpc_gc_add_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cb71d4b RQF_MDS_REINT_CREATE_SLAVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d77ea75 lustre_msg_set_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8da3fca7 lustre_msg_add_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8db9fb4b ptlrpc_unregister_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8e9abe4d RMF_GENERIC_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f0aceac RQF_MDS_HSM_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8fec0451 lustre_msg_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x905e8b96 req_capsule_other_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x90a0c08c sptlrpc_import_flush_my_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9111d272 ptlrpc_req_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x919c4ce3 RMF_OBD_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91cf58d3 RQF_MDS_PIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x937b1ee0 lustre_swab_mdt_ioepoch +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x93820043 ptlrpc_prep_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x947a639f ldlm_namespace_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9553c633 RQF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x95d08f0c lustre_swab_mgs_target_info +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9660ace0 RMF_FLD_MDFLD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x967bfd52 RQF_OBD_PING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x97863ad5 lprocfs_rd_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9798f2f1 RQF_MDS_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x97c10319 req_capsule_server_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x980fcfdc ptlrpc_connection_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x988ac9c6 ptlrpc_request_bufs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a258886 RQF_MDS_GETSTATUS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a6f2f6d lustre_msg_set_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b391ae1 lustre_free_reply_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b5d53e6 sptlrpc_register_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b88f6ce RMF_NIOBUF_REMOTE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9ba892c6 ldlm_flock_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9bb5198b RQF_MDS_CLOSE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9c072c06 ldlm_namespace_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9c167861 ldlm_lock2handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9d3668e1 ptlrpc_activate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9d7ea314 sptlrpc_pack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9f6c0e66 client_import_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9fb088f1 lustre_swab_lov_mds_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa10f0d3d RMF_UPDATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa163f4c3 dump_rniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa1894e16 sptlrpc_target_export_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2244636 RQF_MDS_GETATTR_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa22c0086 ldlm_error2errno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa32c97b7 ptlrpc_set_add_new_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3d2a6ee RMF_CAPA1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa47787ef RMF_PTLRPC_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4a2d089 RQF_OST_PUNCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4bea5ef lustre_swab_lmv_user_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4ca7da4 ptlrpc_prep_bulk_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5458dad ldlm_lock_decref_and_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5880075 ldlm_errno2error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa66888dd ptlrpcd_add_rqset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa6c436ca RQF_MDS_WRITEPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa710914a sptlrpc_cli_ctx_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7d55cc3 RQF_MDS_REINT_CREATE_RMT_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7e360b1 RMF_OBD_IOOBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7ec567d RMF_CONNECT_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa8538f3c sptlrpc_lprocfs_cliobd_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa8d38f41 ptlrpc_service_health_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9574f78 req_capsule_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9704f80 lustre_msg_get_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9c4658e lustre_swab_lov_user_md_v3 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9edf09d RQF_OBD_IDX_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaa9afbef req_capsule_has_field +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaaf9b01b ldlm_lock_allow_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xac7e128c ldlm_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaddc3979 lustre_swab_lustre_capa_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf4e9658 RQF_MDS_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf50a0d6 RMF_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf9ca4eb ldlm_pool_set_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xafb2a34b ptlrpc_resend_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0649966 ptlrpc_lprocfs_register_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0751fa4 RQF_LLOG_ORIGIN_HANDLE_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0debb75 ptl_send_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1b43d8a dump_rcs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb27c2374 lustre_msg_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb291473d lustre_msg_early_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb2abc635 ldlm_cli_cancel_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb2b1817d lustre_swab_ost_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb2fd8a77 req_capsule_client_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4a7ecf3 lustre_msg_add_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb512ebc2 sptlrpc_parse_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb5d22c83 target_print_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb61cb95a RQF_MDS_GETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb68476df interval_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb6aafd03 RQF_MDS_DONE_WRITING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7b38189 RMF_MDT_MD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7fa3cc8 RMF_LLOG_LOG_HDR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb8a1f487 ldlm_prep_elc_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb8ba9a47 ldlm_prep_enqueue_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb903634e RQF_OST_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb93d9430 client_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9a1519c __ptlrpc_prep_bulk_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9b631cf lustre_swab_mgs_config_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9d089df sptlrpc_enc_pool_put_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xba984a36 llog_origin_handle_read_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbaa76097 lustre_msg_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbad78240 ldlm_pool_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbc1370dc lustre_shrink_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbca90fd0 ldlm_namespace_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd50bbf8 ptlrpc_pinger_sending_on_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd83bc44 RQF_OBD_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe47bc7e ping_evictor_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf2062f0 llog_initiator_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf98b86f RQF_MDS_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbffd4313 RQF_OST_BRW_WRITE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc048b467 ptlrpc_recover_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc06c4670 lustre_msg_get_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0867da7 RMF_REC_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0cdf55e RMF_MGS_SEND_PARAM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0db97a5 lprocfs_wr_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0de40bd sptlrpc_gc_del_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc1070d13 ptlrpc_init_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc1ed015f ldlm_pool_get_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc28f278f req_capsule_server_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2986d28 lustre_swab_ldlm_res_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2b1af57 RQF_MGS_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2be922a RMF_SYMTGT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc559a634 RMF_LAYOUT_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc597ee52 ptlrpc_buf_need_swab +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc60a60e1 RQF_OST_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc694be4b RQF_LLOG_ORIGIN_HANDLE_PREV_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc6e986ed _debug_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc763fabc sptlrpc_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc78a5464 ptlrpc_free_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc79b9c67 ldlm_pools_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7aea0a3 sptlrpc_cli_ctx_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7ca8257 RQF_MDS_REINT_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7e47564 ptlrpc_interrupted_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc86226a6 ptlrpc_queue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8962493 ldlm_destroy_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8f586a9 ptlrpc_connection_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc99528e9 ptlrpc_replay_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc9f3c13e ptlrpc_restart_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xca5a81ec ptlrpc_pinger_ir_down +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcafa51e3 req_capsule_client_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb16107d ptlrpc_set_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2cc0cf lustre_swab_lquota_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2ceaff sptlrpc_secflags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcc7b6e66 sec2target_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcdbcb794 ptlrpc_mark_interrupted +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce1a689b sptlrpc_enc_pool_add_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce86066d lustre_msg_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcec513c9 RQF_MDS_UNPIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xced015be sptlrpc_rule_set_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf8194ac ptlrpc_unregister_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9963db lustre_msg_get_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9aab6a RQF_MDS_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd040fca0 ptlrpcd_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd1a44095 ptlrpc_obd_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd22218e6 ldlm_namespace_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2983334 lustre_swab_swap_layouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2e0d4eb lustre_msg_get_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd3dae408 ldlm_it2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd4ac5ab1 ldlm_namespace_new +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd50f9509 ptlrpc_pinger_del_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd537ded2 lustre_swab_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd67a5d7b lustre_swab_update_reply_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd69e0a27 RQF_MDS_IS_SUBDIR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6c3ebfb RMF_FIEMAP_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd720d999 llog_client_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7910326 lustre_swab_obd_statfs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7cd05ca llog_origin_handle_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8b91b3e lustre_swab_lov_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8f06300 RQF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd9561861 RQF_LDLM_INTENT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda2ac111 sptlrpc_proc_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb1fb0a2 RQF_MDS_REINT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb9d5a6a lustre_swab_niobuf_remote +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdce3fc2c ptlrpc_invalidate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdcf910b9 lustre_swab_ost_last_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd0ffb04 sptlrpc_flavor2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd30d7bf RMF_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdda070b6 req_capsule_server_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xddc40a85 lustre_msg_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xddf81579 lprocfs_wr_evict_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde12d36b RMF_MDS_HSM_ARCHIVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde555d70 sptlrpc_enc_pool_del_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdee87192 sptlrpc_conf_log_update_begin +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf701ae7 lustre_swab_fid2path +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe036cca1 ldlm_pool_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0cc694c RQF_LLOG_ORIGIN_HANDLE_NEXT_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0e2e03f lustre_pack_reply_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe13cf680 ldlm_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe25f876e sptlrpc_cli_wrap_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe3232180 unlock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe40e0a50 lustre_msg_get_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe4171e21 ldlm_cli_cancel_unused +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe46393b3 ptlrpc_cleanup_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe57a419f ptlrpc_abort_inflight +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe57bd972 sptlrpc_current_user_desc_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe5e8169b lustre_errno_ntoh +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe643998e RQF_OST_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6f0dc96 RQF_OST_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7062b5f RMF_U32 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe744d46a ldlm_lock_fail_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7512278 ptlrpcd_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe809af8d _ldlm_lock_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xea73da7e target_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabaa0b1 lustre_swab_mdt_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabac4fc sptlrpc_rule_set_merge +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeb706253 ldlm_register_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xebb64e68 req_layout_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec20d396 llog_origin_handle_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec226f66 ping_evictor_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec2901a2 client_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec939a00 RQF_MDS_REINT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecace5c1 RQF_OST_GET_INFO_GENERIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecba0b29 ldlm_cli_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecc0ecb8 ptlrpc_schedule_difficult_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed1c10d6 ptlrpc_connection_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed482018 ptlrpc_fail_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xedcb740d sptlrpc_name2flavor_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xef1aeca9 RMF_FLD_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xef927977 ldlm_resource_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0241d6e lustre_swab_hsm_progress_kernel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0d52b5f ptlrpc_pinger_suppress_pings +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf10d3f71 ptlrpc_register_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf1300275 _sptlrpc_enlarge_msg_inplace +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf277c125 RQF_OST_GET_INFO_FIEMAP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf27d49dc sptlrpc_target_choose_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf35f132b lustre_swab_ldlm_resource_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3d44370 RQF_OST_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf43540b9 lustre_swab_mgs_nidtbl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf45085e1 sptlrpc_conf_log_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf55c033b RMF_MGS_CONFIG_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf584a16b sptlrpc_part2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf596e9ae sptlrpc_conf_log_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf5b9fe28 ptlrpc_unpack_rep_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf5c22695 ptlrpc_at_set_req_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf607fc23 sptlrpc_flavor2name_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf617ab8a lustre_msg_get_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf697b756 ldlm_dump_all_namespaces +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7408f84 lustre_swab_hsm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf75ade1c sptlrpc_import_flush_all_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf768f626 req_capsule_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7ba40c0 RMF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf8205546 ptlrpc_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf85cb27e sptlrpc_parse_rule +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf870fed9 RQF_LDLM_GL_DESC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9051bd6 RQF_QC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf94e41e0 deuuidify +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf973aa93 lustre_swab_lov_user_md_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9b03278 ptlrpc_stop_all_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9ee11e2 lustre_msg_set_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9f72dfc RMF_TGTUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa47e765 client_import_find_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa51688d interval_insert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfaa73e3f ldlm_resource_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfade0b3d ldlm_cli_enqueue_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb444a98 ptlrpc_prep_fcset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc2fa83f ptlrpc_del_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc8d9fd5 req_capsule_init_area +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd148bf8 RMF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd277ad0 ptlrpc_wake_delayed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfde20b24 ptlrpc_hpreq_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfeda85df ptlrpc_unregister_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff02a0e9 ldlm_lock_set_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff2b5341 ptlrpc_prep_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff6bfa30 ptlrpc_prep_req_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff83bd39 ptlrpc_request_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffc807e8 sptlrpc_unpack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffe29c3f RQF_LDLM_ENQUEUE +EXPORT_SYMBOL drivers/staging/media/cxd2099/cxd2099 0x66e25552 cxd2099_attach +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x087ca415 go7007_update_board +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x283d66e4 go7007_snd_init +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x4125b034 go7007_alloc +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x55891626 go7007_boot_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x8ff5beff go7007_register_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x907cffbb go7007_parse_video_stream +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xb6780bb0 go7007_snd_remove +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xbfd5137d go7007_read_interrupt +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xc01aa794 go7007_read_addr +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0109c0a3 rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x09819e29 rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0ca9c2ba rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0dadae49 rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0def3f3e rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2de5c8fb rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x30b5358f rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x36e3a81c rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3987ccd7 rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x42059833 rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x49e0a237 rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4bf0cb59 Dot11d_Channelmap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x51078c27 rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5cc201cb rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5de173ba rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x60bd2510 HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x647ed696 rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x67674c23 rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x694664ad rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x74371c79 notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x78482e78 rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x837d53a1 rtllib_wpa_supplicant_ioctl +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8fc33857 rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x91a220be rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x92f42ab5 rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x989e8c32 rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9aee8887 rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9b0f3813 rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9e12d528 rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa5d79b6d rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb7373c68 rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb851a11a rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbe0bb065 rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbe1420f2 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc7c18616 dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc8a36636 rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xccfa46cf free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xce5dcc49 RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd06adbeb rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd2098978 rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdd3c2aa4 rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf279d9c rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe05700a5 rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xeaccdf90 rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xec061930 rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf1968907 rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf3b3c931 rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf5333ea6 rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf6db462d alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xfeacc0c3 rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xff5536ac rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x02408e25 Dot11d_Reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x08c14ec9 HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0f6b9e34 ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x11a26994 ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x11b48af1 ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1461d85b ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x153396fa ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x185740d0 ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1da35472 ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x31301641 ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x34ec39db ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x382ca92b ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3c26738c Dot11d_UpdateCountryIe +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3cbb989d ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x49becf52 ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4f154f31 ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x50afdc0f ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5456bab4 ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x594d1a1e ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6120e46a ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x61938ca0 ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x62d7f356 ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x68616073 ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6c32c8b5 ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6d7b013e ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6e66b35c ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x70f0223e ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x74a96fd1 ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x752d076f ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x779eb90a ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x84d7005f ToLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8548c8fb IsLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x85b41097 ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x85c93849 notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8a74cc88 ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb1f4974d ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb2478523 ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb2a5054a ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb4f4660b ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbc7ff0a9 ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbf9b9f0c ieee80211_send_probe_requests_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc901b073 ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc9f07720 DOT11D_ScanComplete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xcbc02c51 Dot11d_Init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xcee7b870 ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd60edf57 ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd6bc029a DOT11D_GetMaxTxPwrInDbm +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xdb0c2643 ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe4e9a6a9 ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe5c960df ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe6cd1312 SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xede6a7df ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xeee32878 ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf5398d18 ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf962684c ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfa7fda2e ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0017f35f set_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x00ea0cde set_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x06d6f244 get_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x09df8f3e set_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0a8d32c3 get_bypass_slave_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1936264c set_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1d2eb8ca get_tap_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x203af1f7 reset_bypass_wd_timer_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2070f14a set_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x27b990ef get_bypass_info_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2ba7cd35 get_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2c3f1c17 get_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2f59e636 get_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2fdb893a get_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x361cf40a get_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x45ca99c3 set_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x550a188c set_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x5cb59e92 get_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x66b60122 set_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x675208c0 set_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x692623f2 get_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x75131ec6 set_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x76c0b7d0 set_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e872825 get_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e8d701e get_wd_expire_time_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x86388b07 get_bp_disc_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x93ae4648 get_wd_set_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x95e42b0d is_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9df5f807 set_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9e21f42e set_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xa689a214 get_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xae117788 get_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xc368d30d get_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xccab5de0 get_bypass_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd3e034b3 get_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9c1ccfc get_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9d38d97 set_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xe640f06e set_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xecdaa456 set_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xedcd3c1b get_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf06d67bf set_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf57c1671 get_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf693c3a1 bp_if_scan_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf8237882 get_bypass_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xfa59240d get_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05af3c4c set_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05b08a42 set_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0b0d5ce0 get_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0fc2e83c reset_bypass_wd_timer +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x123a8133 get_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x157ec89c get_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2440f05a get_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2b01d1d4 set_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2c27a2f0 set_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2da97f4b is_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2e86c67b get_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37416370 get_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37bdab27 get_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x3da96a18 get_bypass_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4025805e get_bypass_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4940a0cc get_bypass_info +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4d21ff51 get_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5147360c get_bp_disc_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x515d4df1 get_bypass_slave +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5560267e set_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5be44d44 set_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6653590c get_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6bda14ec get_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x72c618ae set_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x76d47e6f set_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x794e3815 set_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x7c6cbc16 get_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x84a263dc set_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x8a16f22c set_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x946ff795 get_wd_set_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x94f6aff2 get_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x9d1ecf73 set_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xb1385629 set_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xbff68c45 set_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xc871c561 get_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xcee528df set_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd202dd85 get_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd787f151 get_wd_expire_time +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xdb6a39d2 get_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xebd25ae5 get_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf1e9f8c1 set_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf224abd9 get_tap_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf5a591b2 set_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf643fd4c get_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x716535e8 xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xacc3ba9a xillybus_do_cleanup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xce6a102c xillybus_endpoint_remove +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xe4598747 xillybus_init_endpoint +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0474ef76 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x06fc2d2b iscsit_set_unsoliticed_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0b5d7fb0 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x110cbc16 iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1114b010 iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x22855cb3 iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3fafd4d2 iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x43c23a60 iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4711bd49 iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4e117c3d iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x54d25f8f iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x58257acf iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x72bff8f4 iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7a518886 iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x80320778 iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x847520c7 iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x97fd53f2 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xab3bcac1 iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xba4da563 iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbb723187 iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc1f0025c iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc680b0db iscsit_handle_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc879b07c iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xdc1fc1e0 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe14bb516 iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe314ae19 iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe34db584 iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xeb0df28c iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x018f4fb3 core_tpg_clear_object_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x02de3b18 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x043f23ab spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0x07978273 target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0x088c0b37 iscsi_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x0b8261bc fc_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x0db5d931 fc_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x0dbc7691 core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x0df50367 sbc_execute_unmap +EXPORT_SYMBOL drivers/target/target_core_mod 0x0e7b1665 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0x1148fb21 target_fabric_configfs_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x127e5632 target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x157952f2 sas_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x16431aac sas_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x17c9d116 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x206f8d70 sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x27dfa3fe core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x2cb82f80 spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0x2f9277a9 sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x334c0547 target_put_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x358eba73 iscsi_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a797491 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0x3f1434f7 target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x3f89f40f transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x58aa95ac target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x5a2c05d3 transport_check_aborted_status +EXPORT_SYMBOL drivers/target/target_core_mod 0x5a97760f transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x5c3ca4d1 core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x61d46ed1 transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0x6374e273 iscsi_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x640e02cf transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0x658d97fc transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x6a387689 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x6f527207 target_setup_cmd_from_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x730c64dd transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x74180371 transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x779d094d target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x7890f0bd target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x7dbada9d transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x81f32b1c target_fabric_configfs_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x827216e7 sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0x85aa880c transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x86090c39 transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0x86c0461b __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x883738fc spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x8b05feba transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x91de00c1 iscsi_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x935d9dd8 transport_subsystem_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x99aa09a1 target_get_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x9aee8e6a core_tpg_del_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x9eb627ca spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xa115f6ac transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0xa673adf1 transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xb149cda8 core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0xb68c66be target_fabric_configfs_free +EXPORT_SYMBOL drivers/target/target_core_mod 0xbb79c636 sas_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0xbe16771a sas_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xbe811eab transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xc02dafbe target_fabric_configfs_init +EXPORT_SYMBOL drivers/target/target_core_mod 0xc70652cf fc_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0xcc550dbe transport_init_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0xd618340e core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xd850ca51 core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0xdbfa09e7 core_tpg_add_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xdc7f1e9c transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xdcbf59da transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0xe3407e62 target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0xe8e5b075 target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xec040915 transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xf01621c7 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf27449ba transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0xf690a64c transport_subsystem_release +EXPORT_SYMBOL drivers/target/target_core_mod 0xf96eb304 target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0xfcd75b39 fc_get_fabric_proto_ident +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0x403c4ee8 usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0xe9fc2b0d unregister_gadget_item +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x13b4aab0 gether_set_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x1b743f4c gether_get_host_addr_u8 +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x242ff7ff gether_connect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x3dd7901f gether_setup_name_default +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x4520f8bb gether_set_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x4585a2de gether_set_gadget +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x5c65a839 gether_set_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x684f0e3c gether_get_ifname +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x81e2de13 gether_register_netdev +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x925413fd gether_get_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x98c8f7d3 gether_get_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xcc53fc64 gether_setup_name +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xd591d531 gether_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xe67b398a gether_get_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xf57a1e5a gether_get_host_addr_cdc +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3a6d4f22 rndis_free_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3ca38e3a rndis_signal_connect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x4ca90996 rndis_signal_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x5d22b406 rndis_register +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x695b8621 rndis_add_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x785d494b rndis_msg_parser +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x81d51281 rndis_rm_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x840dd143 rndis_deregister +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x88425121 rndis_set_param_dev +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x988ad2a2 rndis_set_param_vendor +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x9acf72e4 rndis_set_param_medium +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xa90054ee rndis_uninit +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xb971ebca rndis_get_next_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xd2fe47b1 rndis_set_host_mac +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x099c6dfc fsg_store_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x11408b9c fsg_store_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1710b539 fsg_fs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1b1cc3af store_cdrom_address +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1e826409 fsg_lun_fsync_sub +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x2933ee1d fsg_ss_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x320092a6 fsg_store_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x39373cd2 fsg_show_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x398778e1 fsg_ss_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x423845e4 fsg_ss_bulk_in_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x442691a6 fsg_lun_close +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x56344daf fsg_hs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x7b61f56c fsg_show_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x95cffb3e fsg_hs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5cae92f fsg_ss_bulk_out_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5f99b69 fsg_fs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb52ba28a fsg_intf_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb54d0d95 fsg_fs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xbfd920b5 fsg_show_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xc672decf fsg_store_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xd7c6b9ba fsg_store_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xdd121e5a fsg_show_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xee1cabfe fsg_lun_open +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xf4efc0c8 fsg_ss_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xf99e9dff fsg_show_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_rndis 0xd2f44d7a rndis_borrow_net +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0x62d93015 sl811h_driver +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xa64a4cea usb_nop_xceiv_unregister +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xd0e43207 usb_nop_xceiv_register +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x11fd8380 usb_wwan_set_termios +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x2ed2af93 usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x35ce6ebd usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x38191c20 usb_wwan_ioctl +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x42c4d78b usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x499e6d95 usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x4ba1e0d3 usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x61eebcde usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x82115089 usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x821f2759 usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xa51ce35b usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xd6ace254 usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xdceb42af usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x0cdb67d3 usb_serial_resume +EXPORT_SYMBOL drivers/usb/serial/usbserial 0xa258c8ce usb_serial_suspend +EXPORT_SYMBOL drivers/vhost/vringh 0x0dda8c5a vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x1f063017 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x2e91ca97 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x367ce26a vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x36dfce73 vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3eaf442a vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x3fa42e4f vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5dafbd4e vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x66af098b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x6d0e7948 vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x7bda5e6d vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x821e9390 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0xaf8e4a0e vringh_notify_disable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xafb47dae vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc884d704 vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc8bee0a4 vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xd11d2709 vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xda4ea4cc vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0xfc7dcad2 vringh_getdesc_user +EXPORT_SYMBOL drivers/video/backlight/generic_bl 0x366d19ef genericbl_limit_intensity +EXPORT_SYMBOL drivers/video/backlight/lcd 0x890aa59f devm_lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xa7b93d44 lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xc0cbc6d5 devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0xfd175b9e lcd_device_unregister +EXPORT_SYMBOL drivers/video/cyber2000fb 0x0cc3ede5 cyber2000fb_detach +EXPORT_SYMBOL drivers/video/cyber2000fb 0x42e6e474 cyber2000fb_attach +EXPORT_SYMBOL drivers/video/cyber2000fb 0x534b6f18 cyber2000fb_disable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xb39f68d1 cyber2000fb_enable_extregs +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xb349cb57 matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xbf9271de g450_mnp2f +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xd8e3ecb8 matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x4708d223 matrox_G100 +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xc69c7e02 matrox_mystique +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xd3ec2215 DAC1064_global_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xdf19ed5a DAC1064_global_restore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_Ti3026 0xd657d664 matrox_millennium +EXPORT_SYMBOL drivers/video/matrox/matroxfb_accel 0x212dff45 matrox_cfbX_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x39f2b556 matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x9a7cf60f matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xf34ddae0 matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xf726e8f1 matroxfb_register_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0xce7a3be7 matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0xf5d8ac79 matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x1fff2f9d matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x31413b9c matroxfb_read_pins +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xbb039de2 matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xc3335076 matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xfd2f689b matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/mb862xx/mb862xxfb 0x8887c123 mb862xxfb_init_accel +EXPORT_SYMBOL drivers/video/output 0x1e25994b video_output_unregister +EXPORT_SYMBOL drivers/video/output 0x7028fd57 video_output_register +EXPORT_SYMBOL drivers/video/sis/sisfb 0x3037658e sis_malloc +EXPORT_SYMBOL drivers/video/sis/sisfb 0x454a3cf0 sis_free +EXPORT_SYMBOL drivers/video/svgalib 0x17f3f471 svga_set_default_seq_regs +EXPORT_SYMBOL drivers/video/svgalib 0x1be6dc30 svga_set_textmode_vga_regs +EXPORT_SYMBOL drivers/video/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/svgalib 0x54116a09 svga_tilefill +EXPORT_SYMBOL drivers/video/svgalib 0x5fc7fd7a svga_get_tilemax +EXPORT_SYMBOL drivers/video/svgalib 0x6e4adb1e svga_check_timings +EXPORT_SYMBOL drivers/video/svgalib 0x80f24d95 svga_wcrt_multi +EXPORT_SYMBOL drivers/video/svgalib 0x8a35c1e5 svga_tileblit +EXPORT_SYMBOL drivers/video/svgalib 0x8de63fb4 svga_set_timings +EXPORT_SYMBOL drivers/video/svgalib 0x98d57499 svga_get_caps +EXPORT_SYMBOL drivers/video/svgalib 0xc6e82bab svga_tilecopy +EXPORT_SYMBOL drivers/video/svgalib 0xd1429fca svga_wseq_multi +EXPORT_SYMBOL drivers/video/svgalib 0xd22ca511 svga_set_default_atc_regs +EXPORT_SYMBOL drivers/video/svgalib 0xd2a6b1b4 svga_settile +EXPORT_SYMBOL drivers/video/svgalib 0xe28d2a49 svga_set_default_gfx_regs +EXPORT_SYMBOL drivers/video/svgalib 0xef774f5d svga_compute_pll +EXPORT_SYMBOL drivers/video/svgalib 0xf2db5956 svga_match_format +EXPORT_SYMBOL drivers/video/svgalib 0xf54da8cb svga_tilecursor +EXPORT_SYMBOL drivers/video/syscopyarea 0x1df47bf1 sys_copyarea +EXPORT_SYMBOL drivers/video/sysfillrect 0xf44deffa sys_fillrect +EXPORT_SYMBOL drivers/video/sysimgblt 0x797d3a50 sys_imageblit +EXPORT_SYMBOL drivers/video/vgastate 0x686de290 restore_vga +EXPORT_SYMBOL drivers/video/vgastate 0xe7a2620e save_vga +EXPORT_SYMBOL drivers/vme/vme 0x00d7e722 vme_lm_count +EXPORT_SYMBOL drivers/vme/vme 0x072f901c vme_master_rmw +EXPORT_SYMBOL drivers/vme/vme 0x082aafc7 vme_irq_generate +EXPORT_SYMBOL drivers/vme/vme 0x0ec5babe vme_dma_free +EXPORT_SYMBOL drivers/vme/vme 0x17eb0587 vme_bus_type +EXPORT_SYMBOL drivers/vme/vme 0x2157965d vme_dma_pci_attribute +EXPORT_SYMBOL drivers/vme/vme 0x2527a087 vme_slave_set +EXPORT_SYMBOL drivers/vme/vme 0x25d594e3 vme_unregister_bridge +EXPORT_SYMBOL drivers/vme/vme 0x3044e1a8 vme_lm_request +EXPORT_SYMBOL drivers/vme/vme 0x31b8d2b6 vme_unregister_driver +EXPORT_SYMBOL drivers/vme/vme 0x323a3e7e vme_master_request +EXPORT_SYMBOL drivers/vme/vme 0x46649cd1 vme_lm_set +EXPORT_SYMBOL drivers/vme/vme 0x48b99a13 vme_lm_free +EXPORT_SYMBOL drivers/vme/vme 0x4baf35a7 vme_master_get +EXPORT_SYMBOL drivers/vme/vme 0x50a1641e vme_register_bridge +EXPORT_SYMBOL drivers/vme/vme 0x51fade17 vme_irq_request +EXPORT_SYMBOL drivers/vme/vme 0x52c40838 vme_register_driver +EXPORT_SYMBOL drivers/vme/vme 0x535c8308 vme_dma_pattern_attribute +EXPORT_SYMBOL drivers/vme/vme 0x552fc95e vme_irq_free +EXPORT_SYMBOL drivers/vme/vme 0x5aff4177 vme_lm_get +EXPORT_SYMBOL drivers/vme/vme 0x66227eae vme_alloc_consistent +EXPORT_SYMBOL drivers/vme/vme 0x73adef8a vme_dma_list_add +EXPORT_SYMBOL drivers/vme/vme 0x7cf35220 vme_master_free +EXPORT_SYMBOL drivers/vme/vme 0x7fde2edb vme_master_read +EXPORT_SYMBOL drivers/vme/vme 0x84a69fdc vme_slave_get +EXPORT_SYMBOL drivers/vme/vme 0x8703513e vme_slave_request +EXPORT_SYMBOL drivers/vme/vme 0x8f36930b vme_dma_list_exec +EXPORT_SYMBOL drivers/vme/vme 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL drivers/vme/vme 0x94b2590f vme_free_consistent +EXPORT_SYMBOL drivers/vme/vme 0x9aeb07e8 vme_lm_attach +EXPORT_SYMBOL drivers/vme/vme 0xa31bdf07 vme_master_set +EXPORT_SYMBOL drivers/vme/vme 0xb50a8c12 vme_irq_handler +EXPORT_SYMBOL drivers/vme/vme 0xcc970f7a vme_dma_list_free +EXPORT_SYMBOL drivers/vme/vme 0xd797b9a5 vme_master_write +EXPORT_SYMBOL drivers/vme/vme 0xdff905e5 vme_slave_free +EXPORT_SYMBOL drivers/vme/vme 0xe4d8eb48 vme_slot_get +EXPORT_SYMBOL drivers/vme/vme 0xe693a6ce vme_get_size +EXPORT_SYMBOL drivers/vme/vme 0xe80628cc vme_new_dma_list +EXPORT_SYMBOL drivers/vme/vme 0xefd1624a vme_dma_free_attribute +EXPORT_SYMBOL drivers/vme/vme 0xfacd8e72 vme_dma_vme_attribute +EXPORT_SYMBOL drivers/vme/vme 0xfc27c932 vme_dma_request +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x26f92647 w1_ds2760_recall_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x41e7d84f w1_ds2760_write +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x5f47ef18 w1_ds2760_store_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xa029175f w1_ds2760_read +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x29e80431 w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x69eed61b w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x8b8f33ff w1_ds2781_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0xd4221aa5 w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/wire 0x7c12ba12 w1_remove_master_device +EXPORT_SYMBOL drivers/w1/wire 0xad8bce7a w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0xc4ec6ada w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0xce647954 w1_unregister_family +EXPORT_SYMBOL fs/btrfs/btrfs 0x27476846 ulist_reinit +EXPORT_SYMBOL fs/btrfs/btrfs 0x41e6a9d2 ulist_init +EXPORT_SYMBOL fs/btrfs/btrfs 0x7e2ee765 ulist_free +EXPORT_SYMBOL fs/btrfs/btrfs 0xa2eec2e8 ulist_fini +EXPORT_SYMBOL fs/btrfs/btrfs 0xb1320bc8 ulist_add +EXPORT_SYMBOL fs/btrfs/btrfs 0xb42289d2 ulist_alloc +EXPORT_SYMBOL fs/btrfs/btrfs 0xc2c745db ulist_next +EXPORT_SYMBOL fs/configfs/configfs 0x083b50e6 config_item_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0x0bc70f4f config_item_put +EXPORT_SYMBOL fs/configfs/configfs 0x2d504597 config_item_get +EXPORT_SYMBOL fs/configfs/configfs 0x317cbe6d configfs_unregister_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0x48be4a30 config_item_set_name +EXPORT_SYMBOL fs/configfs/configfs 0x717f2f52 configfs_depend_item +EXPORT_SYMBOL fs/configfs/configfs 0x796381ec configfs_register_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0x7c32fdf7 config_item_init +EXPORT_SYMBOL fs/configfs/configfs 0x9db97f30 config_group_find_item +EXPORT_SYMBOL fs/configfs/configfs 0xcc6dfb27 configfs_undepend_item +EXPORT_SYMBOL fs/configfs/configfs 0xf0c8b499 config_group_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0xf1ef2502 config_group_init +EXPORT_SYMBOL fs/exofs/libore 0x08ad4265 extract_attr_from_ios +EXPORT_SYMBOL fs/exofs/libore 0x19d32bbe ore_get_io_state +EXPORT_SYMBOL fs/exofs/libore 0x28806871 ore_verify_layout +EXPORT_SYMBOL fs/exofs/libore 0x30ef5d7e ore_truncate +EXPORT_SYMBOL fs/exofs/libore 0x4527e170 ore_calc_stripe_info +EXPORT_SYMBOL fs/exofs/libore 0x610db1f0 ore_write +EXPORT_SYMBOL fs/exofs/libore 0x6afda23b ore_get_rw_state +EXPORT_SYMBOL fs/exofs/libore 0x7414e53c ore_read +EXPORT_SYMBOL fs/exofs/libore 0x79ad8428 ore_check_io +EXPORT_SYMBOL fs/exofs/libore 0x92078a33 ore_remove +EXPORT_SYMBOL fs/exofs/libore 0x97dc1d15 ore_put_io_state +EXPORT_SYMBOL fs/exofs/libore 0xa3d2a634 g_attr_logical_length +EXPORT_SYMBOL fs/exofs/libore 0xd1cc24ca ore_create +EXPORT_SYMBOL fs/fscache/fscache 0x07c690ec __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x0b268ea7 __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x138e92ae fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0x2123480f fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0x274bd76f __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0x2f22c7b3 fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0x34fbe288 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x3f8cd2e2 __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0x410a9ef6 __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0x45eb964c fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0x45f307b6 __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x46dc7dea fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0x51d5e14f fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x55454361 __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0x65d9725c fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0x6c1a5c8e __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x72453d95 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x739f35b0 __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x81132517 fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0x863a3f4a fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0x91743104 fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0x91ca6455 __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0x9e670465 fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0xa338b60c __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0xa64fe46f __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xab13a75f __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0xac7d69e0 __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xbd98e4ad fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0xc671a360 __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xd0e61a9f fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0xd5d8d023 __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0xf0e12f8a fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0xf1e87357 __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xf45aa8b9 fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0xf9fb5793 __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0xfcd927e4 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xfed23cad __fscache_alloc_page +EXPORT_SYMBOL fs/nfsd/nfsd 0x35e33c1e nfs4_acl_write_who +EXPORT_SYMBOL fs/nfsd/nfsd 0x5a157ae4 nfs4_acl_get_whotype +EXPORT_SYMBOL fs/nfsd/nfsd 0xa0f4b528 nfs4_acl_posix_to_nfsv4 +EXPORT_SYMBOL fs/nfsd/nfsd 0xb25b2957 nfs4_acl_nfsv4_to_posix +EXPORT_SYMBOL fs/nfsd/nfsd 0xe13337f0 nfs4_acl_new +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x153896e1 qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x409862eb qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x5c86f4fe qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0x9a1eee9b qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xe50ae841 qtree_read_dquot +EXPORT_SYMBOL lib/cordic 0x434bfd07 cordic_calc_iq +EXPORT_SYMBOL lib/crc-ccitt 0x3771b461 crc_ccitt +EXPORT_SYMBOL lib/crc-ccitt 0x75811312 crc_ccitt_table +EXPORT_SYMBOL lib/crc-itu-t 0xd29b009f crc_itu_t_table +EXPORT_SYMBOL lib/crc-itu-t 0xf5b4a948 crc_itu_t +EXPORT_SYMBOL lib/crc7 0xa7587646 crc7 +EXPORT_SYMBOL lib/crc7 0xd80c3603 crc7_syndrome_table +EXPORT_SYMBOL lib/crc8 0x41248eaf crc8 +EXPORT_SYMBOL lib/crc8 0xab9ad613 crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xd4534d80 crc8_populate_msb +EXPORT_SYMBOL lib/libcrc32c 0x27000b29 crc32c +EXPORT_SYMBOL lib/lru_cache 0x0c9ff2c3 lc_find +EXPORT_SYMBOL lib/lru_cache 0x0d2dc6b3 lc_reset +EXPORT_SYMBOL lib/lru_cache 0x2bca6ccb lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x3691748f lc_set +EXPORT_SYMBOL lib/lru_cache 0x38fde487 lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0x43e46a2d lc_committed +EXPORT_SYMBOL lib/lru_cache 0x452c8b46 lc_del +EXPORT_SYMBOL lib/lru_cache 0x5aea5399 lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0x60fd5d64 lc_is_used +EXPORT_SYMBOL lib/lru_cache 0x75a91db9 lc_destroy +EXPORT_SYMBOL lib/lru_cache 0x8af6181d lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0xa2873827 lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xb74693bf lc_try_get +EXPORT_SYMBOL lib/lru_cache 0xbb6d3769 lc_create +EXPORT_SYMBOL lib/lru_cache 0xbd032277 lc_put +EXPORT_SYMBOL lib/lru_cache 0xef129f5b lc_get +EXPORT_SYMBOL lib/lru_cache 0xf9b6ff79 lc_get_cumulative +EXPORT_SYMBOL lib/lz4/lz4_compress 0xcbc5d521 lz4_compress +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x26c3aa22 lz4hc_compress +EXPORT_SYMBOL lib/raid6/raid6_pq 0x0bd662f6 raid6_gfmul +EXPORT_SYMBOL lib/raid6/raid6_pq 0x15fe0cd3 raid6_gfexp +EXPORT_SYMBOL lib/raid6/raid6_pq 0x5ba93f9d raid6_gfinv +EXPORT_SYMBOL lib/raid6/raid6_pq 0x7456cc61 raid6_empty_zero_page +EXPORT_SYMBOL lib/raid6/raid6_pq 0xce45a6f1 raid6_gfexi +EXPORT_SYMBOL lib/raid6/raid6_pq 0xd9e91f83 raid6_vgfmul +EXPORT_SYMBOL net/802/p8022 0xa32492b5 register_8022_client +EXPORT_SYMBOL net/802/p8022 0xde8bbb8d unregister_8022_client +EXPORT_SYMBOL net/802/p8023 0x147403e2 make_8023_client +EXPORT_SYMBOL net/802/p8023 0x3bfe1ab9 destroy_8023_client +EXPORT_SYMBOL net/802/psnap 0x6956ac4b unregister_snap_client +EXPORT_SYMBOL net/802/psnap 0x8f854059 register_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x0d9aa9ef p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0x165cc509 p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0x1964d798 p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0x1a37c7e9 p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x23904163 p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0x288fb01b p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x2a4bd1a4 p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0x2d1e15be p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0x35d1e27e p9_idpool_get +EXPORT_SYMBOL net/9p/9pnet 0x367687d3 p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x37ce6d37 v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x3acae799 p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x3c6dcaf0 p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x44d2c2c0 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0x458687ce v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x4a3107ce p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0x561e9e44 p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0x57a136b0 p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0x59a82099 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0x60832bc5 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x62529959 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x69e59b59 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0x7091018b p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x70f1f51f v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0x7882d640 p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0x7b3cde1c p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x87675956 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x8bc323c4 p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x8cba8815 p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0x8d633304 p9_payload_gup +EXPORT_SYMBOL net/9p/9pnet 0x8edd7b81 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0x977a0030 p9_nr_pages +EXPORT_SYMBOL net/9p/9pnet 0xade135cb p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0xb26d5600 p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0xb702a09b p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0xba1607a7 v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0xc3df7cbd p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0xc5db54a9 p9_idpool_destroy +EXPORT_SYMBOL net/9p/9pnet 0xc768b2c0 p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0xd8454568 p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0xdf7defd3 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xee257846 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0xeeb0f655 p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0xf0aaeb4e p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0xf4a111d8 p9_idpool_create +EXPORT_SYMBOL net/9p/9pnet 0xf4a3d56b p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0xf84f2022 p9_idpool_put +EXPORT_SYMBOL net/9p/9pnet 0xf9158a1c p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0xfd40c79d p9_idpool_check +EXPORT_SYMBOL net/9p/9pnet 0xfebef1c0 p9_client_remove +EXPORT_SYMBOL net/appletalk/appletalk 0x0b4b797f atrtr_get_dev +EXPORT_SYMBOL net/appletalk/appletalk 0x2611e511 alloc_ltalkdev +EXPORT_SYMBOL net/appletalk/appletalk 0x46789b07 atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0x49b8c0b5 aarp_send_ddp +EXPORT_SYMBOL net/atm/atm 0x1212cc65 vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0x28dbe67b atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x30e8c8ed vcc_release_async +EXPORT_SYMBOL net/atm/atm 0x426905c8 atm_charge +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x4a46af38 atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0x4e063e54 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0x54150f61 atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0x5a848e62 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x62c48797 deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x685c0cfd atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x7a382efb atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x8c9af82c vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xb1960c99 atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0xca87b453 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/ax25/ax25 0x026c1368 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x08812633 ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0x101707fa ax25_hard_header +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x3afee63e ax25_findbyuid +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x68c6995f ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0x9f549d7a ax25_rebuild_header +EXPORT_SYMBOL net/ax25/ax25 0xa1043c24 ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0xa30ce14b ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0xb2cc913f ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xc64fb218 ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xdbd58b72 ax25_header_ops +EXPORT_SYMBOL net/bluetooth/bluetooth 0x050a6508 hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x06231426 hci_recv_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x07b9a906 bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x134cabc0 bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1ecc48d5 bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x233329da bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2b1f2c0a bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0x37954a45 bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3b612b9c bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3f8677a6 bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0x54545595 l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0x55a730fd hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5ad17438 hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5d47599e hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5d89140b l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5e5768dc __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x63862110 l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x653a887e hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x67d933da bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6e75512f hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x73858b45 l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7a3ef0f4 hci_recv_stream_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7c640527 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x91c9a325 bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9ab5fce6 l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0xaa221071 bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb61a0c3b bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb8027ad9 bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xbbced055 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0xbc4bebb1 hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xbd4332a9 hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc66382e2 __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc9701ec5 bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcc1fb551 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd1c33955 bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd2a4fb6f hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdee9d634 hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe5db43f5 bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe9e4351f hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0xea04e197 hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xfa78630a bt_sock_ioctl +EXPORT_SYMBOL net/bridge/bridge 0x3038c305 br_should_route_hook +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x06bc3add ebt_register_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x8f67c4d5 ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xdf335877 ebt_do_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +EXPORT_SYMBOL net/caif/caif 0x2a09f713 cfpkt_fromnative +EXPORT_SYMBOL net/caif/caif 0x321afabd caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0x329dbd06 cfpkt_info +EXPORT_SYMBOL net/caif/caif 0x38701a7c cfcnfg_del_phy_layer +EXPORT_SYMBOL net/caif/caif 0x4a237e57 cfpkt_tonative +EXPORT_SYMBOL net/caif/caif 0x6600d027 caif_connect_client +EXPORT_SYMBOL net/caif/caif 0x6a44fc70 cfpkt_extr_head +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x8d147b4c caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0x966d7de2 cfpkt_add_head +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xb343be16 get_cfcnfg +EXPORT_SYMBOL net/caif/caif 0xb564fe11 cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/can/can 0x17b3251f can_send +EXPORT_SYMBOL net/can/can 0x332a248c can_rx_unregister +EXPORT_SYMBOL net/can/can 0x34c14a99 can_ioctl +EXPORT_SYMBOL net/can/can 0x3c7b06fc can_proto_register +EXPORT_SYMBOL net/can/can 0x9b65e2ee can_proto_unregister +EXPORT_SYMBOL net/can/can 0xd22bd419 can_rx_register +EXPORT_SYMBOL net/ceph/libceph 0x009859af ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0x08708c06 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x09290ab3 ceph_debugfs_init +EXPORT_SYMBOL net/ceph/libceph 0x0e65a0ad osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0x0f6e2425 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x10940306 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0x1475bf0d ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x16431ffa ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x17e2b330 ceph_osdc_put_event +EXPORT_SYMBOL net/ceph/libceph 0x197effcb ceph_osdc_release_request +EXPORT_SYMBOL net/ceph/libceph 0x1ab5a801 osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0x1ca00cd8 ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x1e995b6c ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x1f82ba52 ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0x20d151cb ceph_osdc_setup +EXPORT_SYMBOL net/ceph/libceph 0x2456cc23 ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x3158173e ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x317abf5c ceph_osdc_build_request +EXPORT_SYMBOL net/ceph/libceph 0x3369df76 ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0x352494ae ceph_osdc_cancel_event +EXPORT_SYMBOL net/ceph/libceph 0x36cc44e5 ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0x3abec91f ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x3df0ec7c ceph_calc_ceph_pg +EXPORT_SYMBOL net/ceph/libceph 0x3f688151 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x4205ffd7 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0x43c8d341 ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x43e458f6 ceph_file_part +EXPORT_SYMBOL net/ceph/libceph 0x43efd647 ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0x45485af7 osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x4702d852 ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x4979b2f4 ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0x4d3634af ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0x50780008 ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x508b109b ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0x510a1b91 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0x5379cea3 ceph_caps_for_mode +EXPORT_SYMBOL net/ceph/libceph 0x54fe2f12 ceph_client_id +EXPORT_SYMBOL net/ceph/libceph 0x550b4a1f ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x569d0452 ceph_osdc_set_request_linger +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x5c383ce7 ceph_osdc_writepages +EXPORT_SYMBOL net/ceph/libceph 0x5fe4b2fa ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0x60f1e61b osd_req_op_watch_init +EXPORT_SYMBOL net/ceph/libceph 0x6286353c osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x66330df6 osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x6b2e3bcd ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x6c5d5ac1 ceph_calc_pg_primary +EXPORT_SYMBOL net/ceph/libceph 0x6c8462a9 ceph_osdc_create_event +EXPORT_SYMBOL net/ceph/libceph 0x6d2d06a1 ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0x6ed41be2 ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0x77692acb ceph_msg_last_put +EXPORT_SYMBOL net/ceph/libceph 0x776c240b ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x7bfcd3c2 ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x7c4053f5 ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0x81a55df6 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0x87e8f1a4 ceph_monc_got_mdsmap +EXPORT_SYMBOL net/ceph/libceph 0x8ce78bd2 ceph_copy_page_vector_to_user +EXPORT_SYMBOL net/ceph/libceph 0x99de4738 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x99e36571 ceph_osdc_cleanup +EXPORT_SYMBOL net/ceph/libceph 0x9eee62b8 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0x9f534f4d ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0x9fd36c2e ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0xa1e37354 ceph_osdc_unregister_linger_request +EXPORT_SYMBOL net/ceph/libceph 0xa40bd703 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0xa7b01501 ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0xad06b1fc osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0xade56d55 ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0xae3515ba ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xaf512ab8 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb06bc3c2 ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0xb1d76898 ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xb201fd3a ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb6081d6d ceph_msgr_exit +EXPORT_SYMBOL net/ceph/libceph 0xb955793c ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0xbbd4f911 ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0xbea41d77 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0xc4a80955 ceph_debugfs_cleanup +EXPORT_SYMBOL net/ceph/libceph 0xc55de604 ceph_parse_options +EXPORT_SYMBOL net/ceph/libceph 0xc5a8916e ceph_osdc_readpages +EXPORT_SYMBOL net/ceph/libceph 0xc76ed911 osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xc81627e4 osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xc9f82b38 ceph_msgr_init +EXPORT_SYMBOL net/ceph/libceph 0xcb50a624 ceph_parse_ips +EXPORT_SYMBOL net/ceph/libceph 0xcc013906 ceph_get_direct_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xcfa6ae81 ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0xd11c8511 ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xd2b7e75c ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0xd2c107bb ceph_flags_to_mode +EXPORT_SYMBOL net/ceph/libceph 0xd2c6cc1b ceph_monc_create_snapid +EXPORT_SYMBOL net/ceph/libceph 0xd955a9d0 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0xdce7cf4c osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xe3a48b5a ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0xe5131195 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xe82c9c32 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0xe99dc4e2 ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xecb07551 ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xf71cf8e4 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0xf816bb12 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0xfe0c16bf osd_req_op_cls_response_data +EXPORT_SYMBOL net/ceph/libceph 0xfff0352f __ceph_open_session +EXPORT_SYMBOL net/dccp/dccp_ipv4 0xb06542d9 dccp_syn_ack_timeout +EXPORT_SYMBOL net/ieee802154/ieee802154 0x14da66d9 ieee802154_nl_scan_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x19b5c9e5 ieee802154_nl_assoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x2a2b156f wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0x2eec2798 wpan_phy_alloc +EXPORT_SYMBOL net/ieee802154/ieee802154 0x5b783609 ieee802154_nl_start_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x83301f8d ieee802154_nl_assoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x86e6c849 ieee802154_nl_beacon_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x9943b4e3 wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0x9c4aa05f wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0xa878c41c ieee802154_nl_disassoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0xabd459b6 ieee802154_nl_disassoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0xaef4bdb8 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0xe675468c wpan_phy_register +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x126d36b3 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x3845d4e2 arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x5d9fff9c arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x0fbb6848 ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x28df3d7f ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xce1d02a3 ipt_do_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x3447b5ac xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0x4abe3039 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x8043979e ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xb8ed5d33 ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xc044658b ip6t_do_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xd8e643ca ip6t_register_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xfcc42ef5 ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x87671500 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/tunnel6 0xe6a733dd xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x45bbbf57 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xeb8d1443 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x144cc707 ircomm_open +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x1b76e83b ircomm_data_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x1f0ae9ca ircomm_control_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x3134b7bd ircomm_connect_response +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x5268eddb ircomm_flow_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x5a348b66 ircomm_connect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x6175ddcf ircomm_disconnect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x71829af7 ircomm_close +EXPORT_SYMBOL net/irda/irda 0x0064e0ea hashbin_get_first +EXPORT_SYMBOL net/irda/irda 0x04d723b5 async_unwrap_char +EXPORT_SYMBOL net/irda/irda 0x052b4f8d irttp_data_request +EXPORT_SYMBOL net/irda/irda 0x06a3ee58 irias_new_integer_value +EXPORT_SYMBOL net/irda/irda 0x07d3647c irlmp_register_service +EXPORT_SYMBOL net/irda/irda 0x1027a9b6 irttp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0x19a40754 irttp_dup +EXPORT_SYMBOL net/irda/irda 0x1c96ee79 irlmp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0x1d277898 alloc_irdadev +EXPORT_SYMBOL net/irda/irda 0x1e6cade0 irias_add_integer_attrib +EXPORT_SYMBOL net/irda/irda 0x1ef0e2ce irttp_udata_request +EXPORT_SYMBOL net/irda/irda 0x2036ad06 irda_param_insert +EXPORT_SYMBOL net/irda/irda 0x2328ccad irttp_connect_request +EXPORT_SYMBOL net/irda/irda 0x3383d68d irlap_close +EXPORT_SYMBOL net/irda/irda 0x33cbe2c6 proc_irda +EXPORT_SYMBOL net/irda/irda 0x3e56064f hashbin_new +EXPORT_SYMBOL net/irda/irda 0x448b8aaa irda_qos_bits_to_value +EXPORT_SYMBOL net/irda/irda 0x45510593 iriap_getvaluebyclass_request +EXPORT_SYMBOL net/irda/irda 0x46c1c4a2 irlmp_unregister_service +EXPORT_SYMBOL net/irda/irda 0x5024cb93 irttp_open_tsap +EXPORT_SYMBOL net/irda/irda 0x595073a8 irttp_flow_request +EXPORT_SYMBOL net/irda/irda 0x5f2c4f17 irda_notify_init +EXPORT_SYMBOL net/irda/irda 0x5fbf976c irlmp_connect_request +EXPORT_SYMBOL net/irda/irda 0x601bda46 hashbin_remove +EXPORT_SYMBOL net/irda/irda 0x625e5083 irttp_connect_response +EXPORT_SYMBOL net/irda/irda 0x6b043eba irda_init_max_qos_capabilies +EXPORT_SYMBOL net/irda/irda 0x6b5fbcef hashbin_get_next +EXPORT_SYMBOL net/irda/irda 0x6e0ab3c7 irias_add_string_attrib +EXPORT_SYMBOL net/irda/irda 0x7042bc54 irlmp_register_client +EXPORT_SYMBOL net/irda/irda 0x763e54a4 irlmp_unregister_client +EXPORT_SYMBOL net/irda/irda 0x7957f728 irlmp_update_client +EXPORT_SYMBOL net/irda/irda 0x85d88217 irias_delete_object +EXPORT_SYMBOL net/irda/irda 0x91815586 irda_param_pack +EXPORT_SYMBOL net/irda/irda 0x993ad14b irda_param_extract_all +EXPORT_SYMBOL net/irda/irda 0x9dd95031 irttp_close_tsap +EXPORT_SYMBOL net/irda/irda 0xa1d41e58 hashbin_delete +EXPORT_SYMBOL net/irda/irda 0xaa557515 irias_new_object +EXPORT_SYMBOL net/irda/irda 0xb9224c68 iriap_open +EXPORT_SYMBOL net/irda/irda 0xb9394173 irias_delete_value +EXPORT_SYMBOL net/irda/irda 0xba5095d5 async_wrap_skb +EXPORT_SYMBOL net/irda/irda 0xbcd3ef13 irias_object_change_attribute +EXPORT_SYMBOL net/irda/irda 0xbe40ace9 irlmp_discovery_request +EXPORT_SYMBOL net/irda/irda 0xc68e43be irias_add_octseq_attrib +EXPORT_SYMBOL net/irda/irda 0xcead7dbb hashbin_find +EXPORT_SYMBOL net/irda/irda 0xd001e9af irlmp_connect_response +EXPORT_SYMBOL net/irda/irda 0xd1746841 irlmp_close_lsap +EXPORT_SYMBOL net/irda/irda 0xd2108314 hashbin_insert +EXPORT_SYMBOL net/irda/irda 0xdd0cc0e8 irda_device_set_media_busy +EXPORT_SYMBOL net/irda/irda 0xde4c6b3c irlmp_service_to_hint +EXPORT_SYMBOL net/irda/irda 0xe3463529 hashbin_lock_find +EXPORT_SYMBOL net/irda/irda 0xe374d604 irlap_open +EXPORT_SYMBOL net/irda/irda 0xe3bde43e irias_insert_object +EXPORT_SYMBOL net/irda/irda 0xe438e631 iriap_close +EXPORT_SYMBOL net/irda/irda 0xe4395d26 irlmp_open_lsap +EXPORT_SYMBOL net/irda/irda 0xedd521c2 irlmp_get_discoveries +EXPORT_SYMBOL net/irda/irda 0xf0a694a1 irias_find_object +EXPORT_SYMBOL net/irda/irda 0xf39b7fe0 irda_setup_dma +EXPORT_SYMBOL net/irda/irda 0xf5876b95 hashbin_remove_this +EXPORT_SYMBOL net/irda/irda 0xf61025c4 irlmp_data_request +EXPORT_SYMBOL net/l2tp/l2tp_core 0x9068e70b l2tp_recv_common +EXPORT_SYMBOL net/lapb/lapb 0x1a6498b9 lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0x3abbbb3d lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0x4c2d4d5d lapb_unregister +EXPORT_SYMBOL net/lapb/lapb 0x53b9b26d lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0x5f486028 lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0x96976a11 lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0x9bae0e92 lapb_register +EXPORT_SYMBOL net/lapb/lapb 0xe4e0afab lapb_getparms +EXPORT_SYMBOL net/llc/llc 0x05539a9a llc_sap_open +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x53f17345 llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0x6e5e3daa llc_add_pack +EXPORT_SYMBOL net/llc/llc 0x8115df93 llc_sap_close +EXPORT_SYMBOL net/llc/llc 0xc06541b4 llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0xc35e28f7 llc_sap_list_lock +EXPORT_SYMBOL net/llc/llc 0xc4c92141 llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0xdee6e576 llc_sap_find +EXPORT_SYMBOL net/mac80211/mac80211 0x009376f2 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x00d05849 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x045adbaf ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x04c82e4e ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0x09939752 ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x0c35af03 ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x0ef10e38 ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0x0f45ab98 ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x10c52757 __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x1e169525 ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x21a2ae71 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0x250e0d58 ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0x283ef072 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x2e25ac8e ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x2f73705a ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0x3177cd0e ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0x32775551 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x347c690f ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0x349edf96 rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x38f69658 ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x3e19b06b ieee80211_alloc_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x449f6e7d ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x4a6748d1 ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x4f664694 ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x51ffd9f5 ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0x545951cd ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x587690d4 ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x5b71bd49 __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x5c28cca5 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x645603c0 ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0x6d0ffa13 ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0x7551d0eb ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x7d4a8cd2 __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x7dee5d81 ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x85569c5e ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x8df4c6d0 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x934a2ed3 rate_control_send_low +EXPORT_SYMBOL net/mac80211/mac80211 0x96b52739 ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0x9c5e6334 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0x9e5291a4 wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xa1fc36c4 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xa2d45ec8 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xa7bbd073 ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xaa157485 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0xab4061c0 ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0xac820c16 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xadd9201d ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0xb13c0e6e ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0xb2cd5b51 ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xb3fe0aaa ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xb55f4f2b ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0xbc32d928 ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xc4156c38 ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0xc520fa91 ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xc7e9782e ieee80211_get_key_tx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xc8418dcc ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0xcccafe99 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xd211288d ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0xd2e4377d ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0xddb47d52 ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xde6dca30 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xdfeaaa72 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0xe0a77242 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0xe3ed9697 ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0xe53ccea8 ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xea00e3c6 ieee80211_rx +EXPORT_SYMBOL net/mac80211/mac80211 0xf395de03 ieee80211_aes_cmac_calculate_k1_k2 +EXPORT_SYMBOL net/mac80211/mac80211 0xf3a406fe ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xf6dca78c ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0xfa5407e5 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xfb353bf0 ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xfd15dd86 ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0xfdb8d971 ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0x09ce61b0 ieee802154_alloc_device +EXPORT_SYMBOL net/mac802154/mac802154 0x2a5b29f6 ieee802154_unregister_device +EXPORT_SYMBOL net/mac802154/mac802154 0x751d8b70 ieee802154_register_device +EXPORT_SYMBOL net/mac802154/mac802154 0xa1d91670 ieee802154_free_device +EXPORT_SYMBOL net/mac802154/mac802154 0xd8bd5136 ieee802154_rx_irqsafe +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x163089ac ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3cc556d1 ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x562dc2ad ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x574ff740 ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x6de622b4 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x7aed4b22 ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xa05dc2a6 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xa2f6f8bf ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xac8efcb7 unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc439e7c7 register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc61a3fba register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xe9d9ebb4 register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xf6acbaa7 unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xfdc0535c ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xaeef4c71 __nf_ct_ext_add_length +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xbf33e670 __nf_ct_ext_destroy +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xd1bd2205 nf_conntrack_untracked +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0x827cc6a1 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_conntrack_proto_gre 0x11a1b9d8 nf_ct_gre_keymap_flush +EXPORT_SYMBOL net/netfilter/nf_nat 0x3e4b949e nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x57ebb78f nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0xa81fe0a4 nf_nat_used_tuple +EXPORT_SYMBOL net/netfilter/nf_nat 0xb1d421fb nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0xc94334f4 nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0xc9b9c920 __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/x_tables 0x06c6c0c8 xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0x08c473b7 xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0x531c9261 xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0x5cc3490e xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0x6c1872a8 xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0x7049d460 xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x9548084b xt_find_target +EXPORT_SYMBOL net/netfilter/x_tables 0xb28f5ef1 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xb37d01a9 xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xbcf471b3 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0xdaef3d88 xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xe4b70bf3 xt_register_matches +EXPORT_SYMBOL net/nfc/hci/hci 0x1a362d42 nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0x1edcf81c nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x22cd46bc nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0x25cc94c1 nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0x26387759 nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x2cb285d1 nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0x3e8597fe nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x40e6f0aa nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0x43028a27 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x4cc4e39c nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0x7400bf3a nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0x8ddc9312 nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0xa9bd81f4 nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xbca0b4fd nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xc9539675 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0xcda0cce5 nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0xcfbda946 nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0xe48b32c4 nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xe9627422 nfc_hci_send_response +EXPORT_SYMBOL net/nfc/hci/hci 0xfb019b1a nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x62e3c53c nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x7135272c nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0x8a2efb8d nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0x94e72cb2 nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0xab7384cf nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nfc 0x10b40530 nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0x15bff3af nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0x165ba156 nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0x17f82920 nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x200a5f75 nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0x29172378 nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0x3c50e3cd nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x41494e14 nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0x5c6f953b nfc_class +EXPORT_SYMBOL net/nfc/nfc 0x668f3f1d nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0x705d3d0f nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0x865763d0 nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0x88d85ed3 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0x8c681806 nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0x9bf55231 nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0xae79425b nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0xb57fcebb nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0xdf93f04e nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xe06dc2c5 nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0xe5ffb8af nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc_digital 0x3d15bf1e nfc_digital_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x4d6920ba nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x87aac2a2 nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xae2fe92d nfc_digital_register_device +EXPORT_SYMBOL net/phonet/phonet 0x0513356b phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0x0b0fa3d7 pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0x17323bf2 pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0x22b6de8a phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0x69f327ba pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0x6a3675b7 phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0xd566e70c pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0xea41a608 phonet_proto_register +EXPORT_SYMBOL net/rds/rds 0x5031b8c5 rds_str_array +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x0c884368 rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x18ceb6b3 rxrpc_kernel_reject_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x2444ead6 rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x42255686 rxrpc_kernel_get_abort_code +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x5384e1d4 rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x5c3043ac rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x6f8c5147 rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x7ad5dbf1 rxrpc_kernel_intercept_rx_messages +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x9f855878 rxrpc_kernel_get_error_number +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xaa7d8037 rxrpc_kernel_data_delivered +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xb39c44f1 rxrpc_kernel_is_data_last +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xc168ee8e rxrpc_kernel_accept_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xd0fa29bb rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xf3f07733 rxrpc_kernel_free_skb +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xfea324e3 key_type_rxrpc +EXPORT_SYMBOL net/sctp/sctp 0x2e567805 sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x333249c6 gss_mech_get +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xac76e645 gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xec88a74b gss_mech_put +EXPORT_SYMBOL net/sunrpc/sunrpc 0xf17cbdcf svc_pool_stats_open +EXPORT_SYMBOL net/wimax/wimax 0x276b9ff0 wimax_reset +EXPORT_SYMBOL net/wimax/wimax 0x88dcfa06 wimax_rfkill +EXPORT_SYMBOL net/wireless/cfg80211 0x069141af ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x08f64a01 cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x09c64fbd ieee80211_frequency_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x11a3d9b9 ieee80211_data_from_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0x181d8545 cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x1883cf55 cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0x19847b77 cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x19975561 cfg80211_del_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x19e03378 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0x1dc4a473 cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0x217b29ed cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x2557f3eb cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x2657029c cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x276e6e18 cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x28823c8b cfg80211_rx_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x322725df cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0x364c3856 cfg80211_roamed_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x3a520623 cfg80211_inform_bss_width +EXPORT_SYMBOL net/wireless/cfg80211 0x3b2b19eb cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x3c07c86b cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0x406a8302 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x40ed4235 cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x460ee13d cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0x4c09045d cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0x4c3b5878 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x4c40b2fb ieee80211_bss_get_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x549ae50f ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x5a03c492 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x61deab5c wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x6504835b cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6c95d664 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0x6ccd7bb8 cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x6d1007dd wiphy_new +EXPORT_SYMBOL net/wireless/cfg80211 0x6d6cb9ad ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x6e7df2d2 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0x71cc0fab cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x7e23ab25 wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef103a6 cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7fe1a403 cfg80211_find_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x82f074b9 cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x873a7784 freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0x8f1ebf40 ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0x982e6b6d ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0x98b20157 cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x9a5d1f0b cfg80211_report_obss_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x9b2a04c4 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0xa1425906 ieee80211_channel_to_frequency +EXPORT_SYMBOL net/wireless/cfg80211 0xa197b1ff ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xa685865c cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xaef625de cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0xb1c74515 cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0xb2282a74 ieee80211_data_to_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0xb28443a1 regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0xbcdb26fd cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0xbee24fa7 wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0xc00ff79e cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0xc15c8611 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0xc3229cf5 cfg80211_connect_result +EXPORT_SYMBOL net/wireless/cfg80211 0xc63f1b81 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0xc6c181dd cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xc7f271e1 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0xca9e54e6 wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xccff171c cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0xcf618a57 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0xd43152cf __ieee80211_get_channel +EXPORT_SYMBOL net/wireless/cfg80211 0xd74247c5 cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xdd0ef037 cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xe22a259f cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0xe31f369c cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xe7902bf6 cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xebe85f69 cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xee42db3c cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xee7244f2 cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xf161f1fd cfg80211_inform_bss_width_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xf3c6b057 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0xf4eff456 wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0xfb8ab797 cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0xfc5135c6 cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0xfcd40cef cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0xfde7a6d5 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0xfed4d591 cfg80211_find_vendor_ie +EXPORT_SYMBOL net/wireless/cfg80211 0xffd15f1c cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/lib80211 0x2d0f99e5 print_ssid +EXPORT_SYMBOL net/wireless/lib80211 0x344afc79 lib80211_get_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x3e261b38 lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x86a45549 lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0xbfdcafe0 lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0xc5f0d915 lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xf2fc0c76 lib80211_crypt_info_init +EXPORT_SYMBOL sound/ac97_bus 0xfc5b4a65 ac97_bus_type +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x2115bb99 snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0x2205cd0c snd_seq_kernel_client_enqueue_blocking +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6c1f1cf8 snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xcac0a3be snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0xcf30b38c snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x28b756cb snd_seq_device_new +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x3a57f235 snd_seq_autoload_unlock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x3f062a91 snd_seq_device_register_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xb90668b2 snd_seq_autoload_lock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xc622fb29 snd_seq_device_unregister_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf0a1fdb3 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x072d978b snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x13a17752 snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x2eed26bf snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x4d5ca523 snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x592f6e9b snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xd7c7afcc snd_midi_event_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xe60fb228 snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xecbde43c snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0xc4e34d87 snd_virmidi_new +EXPORT_SYMBOL sound/core/snd 0x033258b8 snd_ctl_remove +EXPORT_SYMBOL sound/core/snd 0x05cf768b snd_component_add +EXPORT_SYMBOL sound/core/snd 0x08f8de07 snd_info_create_module_entry +EXPORT_SYMBOL sound/core/snd 0x0e6dc1c5 snd_ctl_find_numid +EXPORT_SYMBOL sound/core/snd 0x0e91a8cf snd_ctl_free_one +EXPORT_SYMBOL sound/core/snd 0x18e1683f snd_dma_program +EXPORT_SYMBOL sound/core/snd 0x191e88cf snd_dma_pointer +EXPORT_SYMBOL sound/core/snd 0x21a30a01 snd_info_create_card_entry +EXPORT_SYMBOL sound/core/snd 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL sound/core/snd 0x24fbc76c snd_ctl_add +EXPORT_SYMBOL sound/core/snd 0x2605abbf snd_pci_quirk_lookup +EXPORT_SYMBOL sound/core/snd 0x267bab52 snd_ctl_boolean_mono_info +EXPORT_SYMBOL sound/core/snd 0x3128b43b snd_ctl_unregister_ioctl +EXPORT_SYMBOL sound/core/snd 0x384c3dd1 snd_unregister_device +EXPORT_SYMBOL sound/core/snd 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL sound/core/snd 0x46c8a8ee snd_card_set_id +EXPORT_SYMBOL sound/core/snd 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL sound/core/snd 0x4b015768 snd_iprintf +EXPORT_SYMBOL sound/core/snd 0x506822a1 snd_card_file_add +EXPORT_SYMBOL sound/core/snd 0x553f6b65 snd_card_disconnect +EXPORT_SYMBOL sound/core/snd 0x5c874d00 snd_ctl_find_id +EXPORT_SYMBOL sound/core/snd 0x5e357973 snd_ctl_rename_id +EXPORT_SYMBOL sound/core/snd 0x602c96f0 copy_to_user_fromio +EXPORT_SYMBOL sound/core/snd 0x60599846 snd_card_unref +EXPORT_SYMBOL sound/core/snd 0x630f2f7b snd_ctl_notify +EXPORT_SYMBOL sound/core/snd 0x6ef632aa snd_seq_root +EXPORT_SYMBOL sound/core/snd 0x70c15ac1 snd_dma_disable +EXPORT_SYMBOL sound/core/snd 0x70eb12ff snd_register_device_for_dev +EXPORT_SYMBOL sound/core/snd 0x78f2f213 snd_ctl_new1 +EXPORT_SYMBOL sound/core/snd 0x81b69e41 snd_ctl_enum_info +EXPORT_SYMBOL sound/core/snd 0x8956125a snd_card_free +EXPORT_SYMBOL sound/core/snd 0x8bf44495 snd_card_proc_new +EXPORT_SYMBOL sound/core/snd 0x8cb423c7 snd_jack_set_key +EXPORT_SYMBOL sound/core/snd 0x8f595b11 snd_major +EXPORT_SYMBOL sound/core/snd 0x8fdc2552 snd_cards +EXPORT_SYMBOL sound/core/snd 0x93e55a6e snd_card_free_when_closed +EXPORT_SYMBOL sound/core/snd 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL sound/core/snd 0xa0fd2427 snd_pci_quirk_lookup_id +EXPORT_SYMBOL sound/core/snd 0xadd2d432 snd_ctl_boolean_stereo_info +EXPORT_SYMBOL sound/core/snd 0xb1c8265c snd_card_create +EXPORT_SYMBOL sound/core/snd 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL sound/core/snd 0xb4d055fc snd_jack_report +EXPORT_SYMBOL sound/core/snd 0xb595b979 snd_jack_new +EXPORT_SYMBOL sound/core/snd 0xb92ab946 snd_info_register +EXPORT_SYMBOL sound/core/snd 0xc2e7df8b snd_card_register +EXPORT_SYMBOL sound/core/snd 0xc86a71ad snd_jack_set_parent +EXPORT_SYMBOL sound/core/snd 0xcd271526 snd_ctl_remove_id +EXPORT_SYMBOL sound/core/snd 0xce3ca308 copy_from_user_toio +EXPORT_SYMBOL sound/core/snd 0xcedf3c9d snd_card_file_remove +EXPORT_SYMBOL sound/core/snd 0xcf567d7a snd_ctl_register_ioctl +EXPORT_SYMBOL sound/core/snd 0xd1157735 release_and_free_resource +EXPORT_SYMBOL sound/core/snd 0xd25f9b50 _snd_ctl_add_slave +EXPORT_SYMBOL sound/core/snd 0xd8d54f96 snd_device_free +EXPORT_SYMBOL sound/core/snd 0xde246e58 snd_device_new +EXPORT_SYMBOL sound/core/snd 0xdf14593f snd_power_wait +EXPORT_SYMBOL sound/core/snd 0xe655b36e snd_device_register +EXPORT_SYMBOL sound/core/snd 0xe874fb30 snd_info_free_entry +EXPORT_SYMBOL sound/core/snd 0xe93effc0 snd_ctl_make_virtual_master +EXPORT_SYMBOL sound/core/snd 0xef9c9afc snd_add_device_sysfs_file +EXPORT_SYMBOL sound/core/snd 0xf3d63801 snd_ctl_replace +EXPORT_SYMBOL sound/core/snd-hwdep 0x4535bf50 snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-page-alloc 0x04745860 snd_dma_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x3b91f3af snd_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x3c81afe3 snd_dma_reserve_buf +EXPORT_SYMBOL sound/core/snd-page-alloc 0x4d0c49e5 snd_dma_get_reserved_buf +EXPORT_SYMBOL sound/core/snd-page-alloc 0x83e2a837 snd_dma_alloc_pages_fallback +EXPORT_SYMBOL sound/core/snd-page-alloc 0xade88e76 snd_malloc_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0xc66c3e3b snd_dma_alloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL sound/core/snd-pcm 0x04cda566 snd_interval_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x059a253b snd_pcm_hw_rule_noresample +EXPORT_SYMBOL sound/core/snd-pcm 0x0a402611 snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x0e0c0032 snd_pcm_stop +EXPORT_SYMBOL sound/core/snd-pcm 0x118aa2e9 snd_pcm_hw_constraint_list +EXPORT_SYMBOL sound/core/snd-pcm 0x14183c68 snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL sound/core/snd-pcm 0x156e930b snd_pcm_new +EXPORT_SYMBOL sound/core/snd-pcm 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL sound/core/snd-pcm 0x212fde54 snd_pcm_hw_rule_add +EXPORT_SYMBOL sound/core/snd-pcm 0x22c0e141 snd_pcm_lib_writev +EXPORT_SYMBOL sound/core/snd-pcm 0x22db5ee4 snd_pcm_kernel_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x289b1851 snd_pcm_open_substream +EXPORT_SYMBOL sound/core/snd-pcm 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x3990e563 snd_pcm_suspend +EXPORT_SYMBOL sound/core/snd-pcm 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL sound/core/snd-pcm 0x49c72a89 snd_pcm_lib_mmap_iomem +EXPORT_SYMBOL sound/core/snd-pcm 0x4d5ba21a snd_pcm_mmap_data +EXPORT_SYMBOL sound/core/snd-pcm 0x4d9b6d35 snd_pcm_format_size +EXPORT_SYMBOL sound/core/snd-pcm 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL sound/core/snd-pcm 0x59307ca7 snd_pcm_new_stream +EXPORT_SYMBOL sound/core/snd-pcm 0x597b77c9 snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL sound/core/snd-pcm 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL sound/core/snd-pcm 0x63f0b1c2 snd_pcm_set_sync +EXPORT_SYMBOL sound/core/snd-pcm 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL sound/core/snd-pcm 0x6553dc1d snd_pcm_lib_write +EXPORT_SYMBOL sound/core/snd-pcm 0x6608dff4 snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL sound/core/snd-pcm 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL sound/core/snd-pcm 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL sound/core/snd-pcm 0x7456d56b snd_pcm_period_elapsed +EXPORT_SYMBOL sound/core/snd-pcm 0x755a31a9 snd_pcm_release_substream +EXPORT_SYMBOL sound/core/snd-pcm 0x7785a979 snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL sound/core/snd-pcm 0x7d90a5ac snd_pcm_limit_hw_rates +EXPORT_SYMBOL sound/core/snd-pcm 0x827f8a61 snd_pcm_lib_read +EXPORT_SYMBOL sound/core/snd-pcm 0x94098ff8 snd_interval_list +EXPORT_SYMBOL sound/core/snd-pcm 0x955fb6b6 _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x9a08e86e snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL sound/core/snd-pcm 0x9c17a8ed snd_pcm_debug_name +EXPORT_SYMBOL sound/core/snd-pcm 0xa11e36ee snd_pcm_hw_refine +EXPORT_SYMBOL sound/core/snd-pcm 0xa2a537d3 snd_pcm_hw_param_last +EXPORT_SYMBOL sound/core/snd-pcm 0xa3d24dbe snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL sound/core/snd-pcm 0xb18d1484 snd_pcm_hw_constraint_step +EXPORT_SYMBOL sound/core/snd-pcm 0xb540ad40 snd_pcm_hw_constraint_integer +EXPORT_SYMBOL sound/core/snd-pcm 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL sound/core/snd-pcm 0xba51a193 snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL sound/core/snd-pcm 0xc94fed4c snd_pcm_new_internal +EXPORT_SYMBOL sound/core/snd-pcm 0xca91f38a snd_pcm_suspend_all +EXPORT_SYMBOL sound/core/snd-pcm 0xd036341f snd_pcm_notify +EXPORT_SYMBOL sound/core/snd-pcm 0xd5fb21a2 snd_pcm_link_rwlock +EXPORT_SYMBOL sound/core/snd-pcm 0xd60b7780 snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xdce38df1 snd_pcm_hw_param_first +EXPORT_SYMBOL sound/core/snd-pcm 0xe494fba4 snd_pcm_lib_malloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL sound/core/snd-pcm 0xe5d4913a snd_pcm_lib_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0xe7b5c31a snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0xe932a094 snd_pcm_lib_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xe9dd38a5 snd_pcm_set_ops +EXPORT_SYMBOL sound/core/snd-pcm 0xf3797152 snd_interval_ratnum +EXPORT_SYMBOL sound/core/snd-pcm 0xfb271d0c snd_pcm_lib_readv +EXPORT_SYMBOL sound/core/snd-pcm 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0b97534b snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0x12070040 snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x12ce5256 snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-rawmidi 0x35dcb80f snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-rawmidi 0x36cf3932 snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0x46cd9b67 snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0x4871aa3d snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0x5bf7f399 snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0x6ddf3a13 snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x747874c1 snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x778c467b snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0x7efe73c7 snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0x8c18c1c4 snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0xb373989c snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0xc5a4e2c8 snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0xedb24877 snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf35c5307 snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-timer 0x0f904dc5 snd_timer_new +EXPORT_SYMBOL sound/core/snd-timer 0x228af794 snd_timer_global_new +EXPORT_SYMBOL sound/core/snd-timer 0x2be7e2dd snd_timer_resolution +EXPORT_SYMBOL sound/core/snd-timer 0x2c24ae6b snd_timer_stop +EXPORT_SYMBOL sound/core/snd-timer 0x46ddb0e7 snd_timer_open +EXPORT_SYMBOL sound/core/snd-timer 0x53c77397 snd_timer_continue +EXPORT_SYMBOL sound/core/snd-timer 0x773ac805 snd_timer_global_free +EXPORT_SYMBOL sound/core/snd-timer 0xa31c9f65 snd_timer_global_register +EXPORT_SYMBOL sound/core/snd-timer 0xa894f387 snd_timer_start +EXPORT_SYMBOL sound/core/snd-timer 0xd90fdffe snd_timer_close +EXPORT_SYMBOL sound/core/snd-timer 0xdbe78fc4 snd_timer_notify +EXPORT_SYMBOL sound/core/snd-timer 0xde423fe6 snd_timer_pause +EXPORT_SYMBOL sound/core/snd-timer 0xf2d8200d snd_timer_interrupt +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x2cc53981 snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x107a9234 snd_opl3_init +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x27d9930b snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x66cb8981 snd_opl3_reset +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x72960a99 snd_opl3_create +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x929e0e2b snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x9e81b6b1 snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xc5098faa snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xd407a655 snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xe407c3ef snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x20618f6d snd_vx_resume +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x32dd6d7a snd_vx_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x490ca55c snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x74c18d2b snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xb34c41fb snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xd10593f4 snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xd538ed1c snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xe8269ba2 snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xfbf82746 snd_vx_dsp_boot +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x098b8bfc amdtp_out_stream_set_pcm_format +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x0fca3e8b iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x11550d75 amdtp_out_stream_pcm_pointer +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x130ce6c5 amdtp_out_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x1530e8e1 amdtp_out_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x2a31893f fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x49e2b636 fw_iso_resources_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x4d0d3e14 fcp_avc_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x53b341e2 cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5be613f5 amdtp_out_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5c1b3695 amdtp_out_stream_stop +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5f60d107 amdtp_out_stream_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x6b660b10 fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x72fac28d cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x866c88cc cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x8de376b8 cmp_connection_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xb379892b fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xb7c51372 cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xbdf226a4 iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xbe9ba4ce fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd2b68aef amdtp_out_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd68fc0a6 amdtp_out_stream_set_parameters +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xe1a53f99 snd_fw_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xecd30004 amdtp_out_stream_start +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xed9c79f6 amdtp_out_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf740da1d fw_iso_resources_destroy +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x1ad37e91 snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x1d6af8c0 snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x22e315fc snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x408437df snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xca6f5ed2 snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xec1c855b snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x0024fb3c snd_ak4117_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x2563cf0d snd_ak4117_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x2f1e004c snd_ak4117_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x3f21efe2 snd_ak4117_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xdbbc4663 snd_ak4117_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xeee6c7f3 snd_ak4117_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x389d1ecb snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xb3cbaeb3 snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xf5a43e01 snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xff144f0b snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x3742756b snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x9da0e25f snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x66b97db5 snd_cs8427_iec958_build +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x6abe397a snd_cs8427_iec958_pcm +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xac27824f snd_cs8427_create +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xf6151e54 snd_cs8427_iec958_active +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xfbd7af04 snd_cs8427_reg_write +EXPORT_SYMBOL sound/i2c/snd-i2c 0x0e2f0c3b snd_i2c_device_free +EXPORT_SYMBOL sound/i2c/snd-i2c 0x2573a798 snd_i2c_sendbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x453f32ab snd_i2c_probeaddr +EXPORT_SYMBOL sound/i2c/snd-i2c 0xab9a95d7 snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0xe8dd1980 snd_i2c_bus_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0xf2b8f9a5 snd_i2c_readbytes +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x2565eda3 snd_sbmixer_write +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x265ac23f snd_sbmixer_new +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x300b0171 snd_sbdsp_reset +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x3f17be48 snd_sbmixer_suspend +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x5a895eba snd_sbdsp_get_byte +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x8573040a snd_sbdsp_create +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x89fde748 snd_sbmixer_resume +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x92c1d2f3 snd_sbdsp_command +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xc8242f99 snd_sbmixer_add_ctl +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xe819ea80 snd_sbmixer_read +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x39372c38 snd_sb16dsp_configure +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x56653da5 snd_sb16dsp_pcm +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xb1e0d8aa snd_sb16dsp_get_pcm_ops +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xe0b3f690 snd_sb16dsp_interrupt +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x12879eb1 snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x1407c667 snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x2193f0b7 snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x2beee96f snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x2cecded8 snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x33809a8e snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x77001a94 snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x789828ba snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x858b9fec snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x99336d43 snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xa4184e91 snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xb2294932 snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xb6c1cc80 snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xcca044f4 snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xcd14afdc snd_ac97_resume +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xdf768058 snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xf54be016 snd_ac97_write +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x111afdf3 snd_emu10k1_synth_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x180df379 snd_emu10k1_synth_copy_from_user +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x35bb16d2 snd_emu10k1_synth_bzero +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x52dcbc62 snd_emu10k1_synth_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x68e2c049 snd_emu10k1_voice_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x6ad632e4 snd_emu10k1_voice_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x95b3727f snd_emu10k1_memblk_map +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xcf68ed82 snd_emu10k1_ptr_read +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xe38d7b80 snd_emu10k1_ptr_write +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x526d85e4 snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x87e3eed1 snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xeb85d7ef snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x04d88ddf oxygen_write32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x1183d3de oxygen_write8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x19e3084c oxygen_write_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x2070fff2 oxygen_write_i2c +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x3e2d15f6 oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x5cd4f14d oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x5d410949 oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x7b14ce32 oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x82f527a5 oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x8be28d6d oxygen_pci_remove +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x9676e4bb oxygen_read8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xa30109ce oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xa77d826e oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xa8238ff2 oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xc7da427f oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xd90d56a0 oxygen_pci_pm +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xe436073e oxygen_pci_probe +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xe5264c29 oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xf7d993a7 oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xfcc25899 oxygen_write16_masked +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x2d109caf snd_trident_stop_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x2d70cc62 snd_trident_free_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x7ab6676b snd_trident_start_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x805a7399 snd_trident_alloc_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x9553b8c3 snd_trident_write_voice_regs +EXPORT_SYMBOL sound/soundcore 0xe3647741 sound_class +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x0ab7159a snd_emux_lock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x105d2499 snd_emux_free +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x2090025c snd_emux_unlock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x43b17d0a snd_emux_register +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x48d2bce0 snd_emux_terminate_all +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x655cb202 snd_sf_linear_to_log +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x9538e1d1 snd_emux_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x1201fc85 snd_util_mem_avail +EXPORT_SYMBOL sound/synth/snd-util-mem 0x3fffba45 __snd_util_memblk_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x49c53d8b snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x4db76306 snd_util_memhdr_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x6187ad16 snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0xd287b7d7 snd_util_memhdr_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0xd457f05d __snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0xf013cefe __snd_util_mem_free +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x7ac65b57 snd_usbmidi_create +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL vmlinux 0x00000000 __symbol_put +EXPORT_SYMBOL vmlinux 0x00000000 current_fs_time +EXPORT_SYMBOL vmlinux 0x00000000 d_tmpfile +EXPORT_SYMBOL vmlinux 0x00000000 do_sync_read +EXPORT_SYMBOL vmlinux 0x00000000 filp_close +EXPORT_SYMBOL vmlinux 0x00000000 finish_open +EXPORT_SYMBOL vmlinux 0x00000000 generic_getxattr +EXPORT_SYMBOL vmlinux 0x00000000 generic_write_sync +EXPORT_SYMBOL vmlinux 0x00000000 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x00000000 in_group_p +EXPORT_SYMBOL vmlinux 0x00000000 inode_add_bytes +EXPORT_SYMBOL vmlinux 0x00000000 iov_shorten +EXPORT_SYMBOL vmlinux 0x00000000 iterate_fd +EXPORT_SYMBOL vmlinux 0x00000000 ns_capable +EXPORT_SYMBOL vmlinux 0x00000000 path_is_under +EXPORT_SYMBOL vmlinux 0x00000000 register_exec_domain +EXPORT_SYMBOL vmlinux 0x00000000 schedule_timeout +EXPORT_SYMBOL vmlinux 0x00000000 sock_register +EXPORT_SYMBOL vmlinux 0x00000000 sys_close +EXPORT_SYMBOL vmlinux 0x00000000 task_nice +EXPORT_SYMBOL vmlinux 0x00000000 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x00000000 vm_brk +EXPORT_SYMBOL vmlinux 0x00110cd0 dma_async_memcpy_buf_to_pg +EXPORT_SYMBOL vmlinux 0x003ed69a __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0x003fe728 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0x00694b7a udp_lib_unhash +EXPORT_SYMBOL vmlinux 0x00801678 flush_scheduled_work +EXPORT_SYMBOL vmlinux 0x00868ae3 fail_migrate_page +EXPORT_SYMBOL vmlinux 0x009b196f mount_bdev +EXPORT_SYMBOL vmlinux 0x00b60023 splice_from_pipe_feed +EXPORT_SYMBOL vmlinux 0x00cf4a7f of_get_parent +EXPORT_SYMBOL vmlinux 0x00e8097b csum_partial_copy_fromiovecend +EXPORT_SYMBOL vmlinux 0x00e95ddc sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x00fbf378 search_binary_handler +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x01139ffc max_mapnr +EXPORT_SYMBOL vmlinux 0x0124f9c2 of_find_i2c_device_by_node +EXPORT_SYMBOL vmlinux 0x012a97fc xor_altivec_4 +EXPORT_SYMBOL vmlinux 0x017e4a89 sock_create_kern +EXPORT_SYMBOL vmlinux 0x0186e2de smp_call_function_many +EXPORT_SYMBOL vmlinux 0x01902adf netpoll_trap +EXPORT_SYMBOL vmlinux 0x01907963 tcp_md5_hash_header +EXPORT_SYMBOL vmlinux 0x019e7765 __init_rwsem +EXPORT_SYMBOL vmlinux 0x01a6e494 bdput +EXPORT_SYMBOL vmlinux 0x01bca12e tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0x01c8e84d ida_simple_get +EXPORT_SYMBOL vmlinux 0x01cbd558 security_path_truncate +EXPORT_SYMBOL vmlinux 0x01d2c9f2 of_phy_attach +EXPORT_SYMBOL vmlinux 0x01d73cad sb_set_blocksize +EXPORT_SYMBOL vmlinux 0x01e56385 serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0x01f2ebfa dquot_scan_active +EXPORT_SYMBOL vmlinux 0x01ff0d52 vc_cons +EXPORT_SYMBOL vmlinux 0x02628d72 secpath_dup +EXPORT_SYMBOL vmlinux 0x02649054 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x026d3207 dma_async_memcpy_buf_to_buf +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x0290a240 scsi_mode_sense +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a6ce5a crc16_table +EXPORT_SYMBOL vmlinux 0x02b669c7 scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x02ee26c1 free_pages_exact +EXPORT_SYMBOL vmlinux 0x02f6af48 dev_mc_flush +EXPORT_SYMBOL vmlinux 0x02f7554b ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x0300a0e0 netdev_lower_dev_get_private_rcu +EXPORT_SYMBOL vmlinux 0x03028ff2 try_module_get +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x033ac1ea scsi_prep_return +EXPORT_SYMBOL vmlinux 0x03451b62 tty_port_destroy +EXPORT_SYMBOL vmlinux 0x03592ea0 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x035baa4e inode_init_owner +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x036f3496 inet6_del_offload +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x03a38346 pci_enable_obff +EXPORT_SYMBOL vmlinux 0x03c06156 bitmap_fold +EXPORT_SYMBOL vmlinux 0x03c189a3 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0x03cce890 default_file_splice_read +EXPORT_SYMBOL vmlinux 0x03e49488 ilookup5 +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x03fdc58a mb_cache_entry_release +EXPORT_SYMBOL vmlinux 0x03fe82a3 sk_filter +EXPORT_SYMBOL vmlinux 0x040e0ef8 cdrom_open +EXPORT_SYMBOL vmlinux 0x04144e36 igrab +EXPORT_SYMBOL vmlinux 0x0422fe4a inet_csk_timer_bug_msg +EXPORT_SYMBOL vmlinux 0x042fd0a6 clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x044fd39d d_instantiate_no_diralias +EXPORT_SYMBOL vmlinux 0x04504df9 agp_generic_alloc_user +EXPORT_SYMBOL vmlinux 0x0455881d generic_fillattr +EXPORT_SYMBOL vmlinux 0x0456f116 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0x046e810f crypto_sha512_update +EXPORT_SYMBOL vmlinux 0x04704be0 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x0487f831 fb_find_best_display +EXPORT_SYMBOL vmlinux 0x04c83637 unregister_binfmt +EXPORT_SYMBOL vmlinux 0x04dc7975 scsi_device_resume +EXPORT_SYMBOL vmlinux 0x04e061bc set_bdi_congested +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x050fe99a pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0x05164a02 dquot_operations +EXPORT_SYMBOL vmlinux 0x0520278f pci_scan_slot +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x05263f0f xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x05294dc7 register_gifconf +EXPORT_SYMBOL vmlinux 0x0530dede _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x05351120 cont_write_begin +EXPORT_SYMBOL vmlinux 0x053e5353 security_mmap_file +EXPORT_SYMBOL vmlinux 0x054434d6 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x054a54e8 mb_cache_entry_insert +EXPORT_SYMBOL vmlinux 0x054ff01f from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x056915ab dev_uc_add +EXPORT_SYMBOL vmlinux 0x056a6b78 dquot_disable +EXPORT_SYMBOL vmlinux 0x057ce975 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0x0593a99b init_timer_key +EXPORT_SYMBOL vmlinux 0x05a514a1 _insl_ns +EXPORT_SYMBOL vmlinux 0x05f236ab inet_del_protocol +EXPORT_SYMBOL vmlinux 0x06064c16 vm_insert_page +EXPORT_SYMBOL vmlinux 0x060d0ef0 phy_start_aneg +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x063d85ca mutex_lock +EXPORT_SYMBOL vmlinux 0x0645932f textsearch_register +EXPORT_SYMBOL vmlinux 0x0645c980 empty_aops +EXPORT_SYMBOL vmlinux 0x0649136c sync_inodes_sb +EXPORT_SYMBOL vmlinux 0x064b5332 pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0x065550f8 blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x066812c7 __d_drop +EXPORT_SYMBOL vmlinux 0x0675c7eb atomic64_cmpxchg +EXPORT_SYMBOL vmlinux 0x067d8d35 security_release_secctx +EXPORT_SYMBOL vmlinux 0x069ca327 flush_tlb_mm +EXPORT_SYMBOL vmlinux 0x06a5ddef ppp_register_compressor +EXPORT_SYMBOL vmlinux 0x06bbb24a mempool_resize +EXPORT_SYMBOL vmlinux 0x06fe3b14 default_grn +EXPORT_SYMBOL vmlinux 0x0717de7c kthread_stop +EXPORT_SYMBOL vmlinux 0x07223c9e of_mm_gpiochip_add +EXPORT_SYMBOL vmlinux 0x0727c4f3 iowrite8 +EXPORT_SYMBOL vmlinux 0x072bdf6e pci_enable_ltr +EXPORT_SYMBOL vmlinux 0x07424166 ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x074e9213 down_killable +EXPORT_SYMBOL vmlinux 0x07704dc3 __blk_end_request_cur +EXPORT_SYMBOL vmlinux 0x0784e6b2 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0x078f3325 phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0x0799aca4 local_bh_enable +EXPORT_SYMBOL vmlinux 0x079fe762 netlink_unicast +EXPORT_SYMBOL vmlinux 0x07a1c59e unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x08155825 i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x08337be4 abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0x083c2cbe of_get_next_parent +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x0864415e sock_get_timestampns +EXPORT_SYMBOL vmlinux 0x087d63e9 swiotlb_map_sg_attrs +EXPORT_SYMBOL vmlinux 0x088cf912 finish_no_open +EXPORT_SYMBOL vmlinux 0x090a7241 dev_err +EXPORT_SYMBOL vmlinux 0x093187a8 agp_unbind_memory +EXPORT_SYMBOL vmlinux 0x093815e6 dquot_quota_on +EXPORT_SYMBOL vmlinux 0x0968db41 tcp_close +EXPORT_SYMBOL vmlinux 0x096945af dmam_pool_create +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x098e006e netif_napi_del +EXPORT_SYMBOL vmlinux 0x09a1286b of_dev_put +EXPORT_SYMBOL vmlinux 0x09b17a6e tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0x09c55cec schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09e1ec6d qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x09e20e42 mmc_set_blockcount +EXPORT_SYMBOL vmlinux 0x0a0787e6 set_device_ro +EXPORT_SYMBOL vmlinux 0x0a1a901d unregister_key_type +EXPORT_SYMBOL vmlinux 0x0a2487e0 unblock_all_signals +EXPORT_SYMBOL vmlinux 0x0a3131f6 strnchr +EXPORT_SYMBOL vmlinux 0x0a3214b0 __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0x0a3e9a08 get_thermal_instance +EXPORT_SYMBOL vmlinux 0x0a469d23 mfd_clone_cell +EXPORT_SYMBOL vmlinux 0x0a4850c0 security_path_mknod +EXPORT_SYMBOL vmlinux 0x0aa1a25d input_register_handle +EXPORT_SYMBOL vmlinux 0x0aa43473 skb_copy_bits +EXPORT_SYMBOL vmlinux 0x0ab3a264 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0x0ab7e974 mmc_wait_for_app_cmd +EXPORT_SYMBOL vmlinux 0x0abd1237 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0x0ac28997 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0x0ac4e4a4 generic_make_request +EXPORT_SYMBOL vmlinux 0x0acb1a3c __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ad7e5af serio_reconnect +EXPORT_SYMBOL vmlinux 0x0ade9709 dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0x0affdc78 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x0b0d888b icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0x0b176b00 from_kprojid +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b3bf68e ata_std_end_eh +EXPORT_SYMBOL vmlinux 0x0b48677a __kfifo_init +EXPORT_SYMBOL vmlinux 0x0b54e986 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x0b56117f of_find_node_by_path +EXPORT_SYMBOL vmlinux 0x0b6dcb22 __nla_reserve +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b944b84 starget_for_each_device +EXPORT_SYMBOL vmlinux 0x0b9ff75c max8925_bulk_read +EXPORT_SYMBOL vmlinux 0x0bbc5908 gen_estimator_active +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bcc981b filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0x0bd1f073 jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0x0c003711 blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0x0c12e626 __debugger_bpt +EXPORT_SYMBOL vmlinux 0x0c18d714 ps2_sendbyte +EXPORT_SYMBOL vmlinux 0x0c276094 d_set_d_op +EXPORT_SYMBOL vmlinux 0x0c2cc1d4 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0x0c45fc96 vfs_lstat +EXPORT_SYMBOL vmlinux 0x0c470334 genphy_setup_forced +EXPORT_SYMBOL vmlinux 0x0c485f83 key_reject_and_link +EXPORT_SYMBOL vmlinux 0x0c58a8cd netdev_increment_features +EXPORT_SYMBOL vmlinux 0x0c65e73c scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0x0c7b717a swiotlb_dma_supported +EXPORT_SYMBOL vmlinux 0x0c8c9e99 scsi_show_extd_sense +EXPORT_SYMBOL vmlinux 0x0c9b6089 nvram_get_size +EXPORT_SYMBOL vmlinux 0x0ca0c882 twl6030_interrupt_mask +EXPORT_SYMBOL vmlinux 0x0cae232b utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0x0ccfba4b pci_platform_rom +EXPORT_SYMBOL vmlinux 0x0ce1dd05 get_gendisk +EXPORT_SYMBOL vmlinux 0x0ce2f9af swiotlb_free_coherent +EXPORT_SYMBOL vmlinux 0x0ce36003 tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0x0ce900af blk_finish_plug +EXPORT_SYMBOL vmlinux 0x0cf3d5e4 icmpv6_send +EXPORT_SYMBOL vmlinux 0x0cf51af4 fsnotify_put_group +EXPORT_SYMBOL vmlinux 0x0d2c007a of_dev_get +EXPORT_SYMBOL vmlinux 0x0d3257f6 clear_user_page +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d5f32c0 i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0x0da10ec3 security_sock_graft +EXPORT_SYMBOL vmlinux 0x0da471d6 tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x0dbf38b8 mol_trampoline +EXPORT_SYMBOL vmlinux 0x0dc15af7 scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0x0dc2415a tcp_connect +EXPORT_SYMBOL vmlinux 0x0dc69d12 kern_path_mountpoint +EXPORT_SYMBOL vmlinux 0x0df55035 redraw_screen +EXPORT_SYMBOL vmlinux 0x0e146e10 skb_append +EXPORT_SYMBOL vmlinux 0x0e1a4c1d tcp_child_process +EXPORT_SYMBOL vmlinux 0x0e21925e tcf_register_action +EXPORT_SYMBOL vmlinux 0x0e466a66 jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x0e4f2518 serio_interrupt +EXPORT_SYMBOL vmlinux 0x0e658454 pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0x0e6da44a set_normalized_timespec +EXPORT_SYMBOL vmlinux 0x0e8f30f6 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x0ea78cea ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x0eaf451e hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x0eb11920 unregister_nls +EXPORT_SYMBOL vmlinux 0x0ec39957 of_get_min_tck +EXPORT_SYMBOL vmlinux 0x0ee4831a inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0x0ee8510a skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0x0eec9802 elv_dispatch_sort +EXPORT_SYMBOL vmlinux 0x0ef20db1 kernstart_addr +EXPORT_SYMBOL vmlinux 0x0efc5358 blk_queue_invalidate_tags +EXPORT_SYMBOL vmlinux 0x0efcbb1b set_current_groups +EXPORT_SYMBOL vmlinux 0x0f087561 mddev_congested +EXPORT_SYMBOL vmlinux 0x0f28cb91 nvram_read_byte +EXPORT_SYMBOL vmlinux 0x0f4627b0 dmam_free_coherent +EXPORT_SYMBOL vmlinux 0x0f4c91ed ns_to_timespec +EXPORT_SYMBOL vmlinux 0x0f520269 udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0x0f5faa7e wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fb4bd17 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x0fbc72db unmap_underlying_metadata +EXPORT_SYMBOL vmlinux 0x100d8ab4 pci_request_region +EXPORT_SYMBOL vmlinux 0x100fba06 mark_page_accessed +EXPORT_SYMBOL vmlinux 0x104d3596 __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0x1051d47f swiotlb_map_sg +EXPORT_SYMBOL vmlinux 0x105690cf jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0x105d743e inet_frags_fini +EXPORT_SYMBOL vmlinux 0x105dd369 skb_push +EXPORT_SYMBOL vmlinux 0x106f13ab crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x107e1768 i2c_master_send +EXPORT_SYMBOL vmlinux 0x1083f12d pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x10959648 kernel_getsockopt +EXPORT_SYMBOL vmlinux 0x109eca3a md_check_recovery +EXPORT_SYMBOL vmlinux 0x10ae5ad3 wait_on_page_bit +EXPORT_SYMBOL vmlinux 0x10b65428 pci_pme_capable +EXPORT_SYMBOL vmlinux 0x10c03c43 pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0x10cb18bb tty_lock_pair +EXPORT_SYMBOL vmlinux 0x10ed8053 __ethtool_get_settings +EXPORT_SYMBOL vmlinux 0x10ee20bb default_blu +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x112029ba tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x11267875 scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0x112df177 max8925_reg_write +EXPORT_SYMBOL vmlinux 0x11333c39 scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x11663cec adb_register +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x11799836 simple_statfs +EXPORT_SYMBOL vmlinux 0x117bc7b8 elv_rb_former_request +EXPORT_SYMBOL vmlinux 0x11811500 scsi_register_driver +EXPORT_SYMBOL vmlinux 0x1182d83a cpuidle_disable +EXPORT_SYMBOL vmlinux 0x1195632b netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0x11a0b2df pcie_get_minimum_link +EXPORT_SYMBOL vmlinux 0x11b47040 devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0x11c9185c of_iomap +EXPORT_SYMBOL vmlinux 0x11e62638 dev_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x11ea8f9f bdgrab +EXPORT_SYMBOL vmlinux 0x11ec207f udp_prot +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x11fe418c block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0x120a4665 of_device_register +EXPORT_SYMBOL vmlinux 0x120ad29f put_tty_driver +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x1216cc02 alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x1218688b fsnotify_alloc_group +EXPORT_SYMBOL vmlinux 0x122043a8 of_find_node_with_property +EXPORT_SYMBOL vmlinux 0x1228ea00 iterate_mounts +EXPORT_SYMBOL vmlinux 0x122aceb8 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0x123ef9a5 netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0x124e119e scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0x124fe58e vga_client_register +EXPORT_SYMBOL vmlinux 0x12560d5a netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0x1270297d get_fs_type +EXPORT_SYMBOL vmlinux 0x1274a00f mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0x127db758 nla_reserve +EXPORT_SYMBOL vmlinux 0x12826f38 __pskb_copy +EXPORT_SYMBOL vmlinux 0x128af93f devm_gpiod_get +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12ac0266 blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x12b64636 jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0x12d5af6f sk_stream_error +EXPORT_SYMBOL vmlinux 0x12da5bb2 __kmalloc +EXPORT_SYMBOL vmlinux 0x12e5ef0c rtas_set_power_level +EXPORT_SYMBOL vmlinux 0x12ee60cc skb_copy +EXPORT_SYMBOL vmlinux 0x12fe487c sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0x13307fde vsscanf +EXPORT_SYMBOL vmlinux 0x1341d4b4 mmc_add_host +EXPORT_SYMBOL vmlinux 0x1348760d ipmi_request_settime +EXPORT_SYMBOL vmlinux 0x134bbcec cfb_copyarea +EXPORT_SYMBOL vmlinux 0x136fb9a4 phy_disconnect +EXPORT_SYMBOL vmlinux 0x13941d76 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0x13affbda percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x13bf64aa blk_integrity_is_initialized +EXPORT_SYMBOL vmlinux 0x13c231d4 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13d461e2 dev_get_by_index +EXPORT_SYMBOL vmlinux 0x13d6769c abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0x13e31dfa jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0x13e38f5c up_read +EXPORT_SYMBOL vmlinux 0x13e94005 blk_peek_request +EXPORT_SYMBOL vmlinux 0x13f42152 system_entering_hibernation +EXPORT_SYMBOL vmlinux 0x1407c6e7 kmap_prot +EXPORT_SYMBOL vmlinux 0x1420b379 kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0x1422ebcf xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0x14864f85 sk_reset_timer +EXPORT_SYMBOL vmlinux 0x149fb96d blk_rq_init +EXPORT_SYMBOL vmlinux 0x14cb971f pci_enable_device +EXPORT_SYMBOL vmlinux 0x14e2f698 flush_old_exec +EXPORT_SYMBOL vmlinux 0x150a248c neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0x151eb404 nf_unregister_hook +EXPORT_SYMBOL vmlinux 0x15346381 pci_release_region +EXPORT_SYMBOL vmlinux 0x15477b72 clocksource_register +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x1551dc51 bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x155e087b scsi_block_requests +EXPORT_SYMBOL vmlinux 0x156163ec i2c_use_client +EXPORT_SYMBOL vmlinux 0x15729bba kernel_sendpage +EXPORT_SYMBOL vmlinux 0x157a80e3 nf_nat_decode_session_hook +EXPORT_SYMBOL vmlinux 0x15864b03 flex_array_get +EXPORT_SYMBOL vmlinux 0x15b7fa0d __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0x15b9c827 dentry_path_raw +EXPORT_SYMBOL vmlinux 0x15cbc95a dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x15cc85e3 mmc_hw_reset +EXPORT_SYMBOL vmlinux 0x15d3fd60 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x15da26ed rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x15e65a58 alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x15ea2c0a xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0x15f571ec blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0x1609c493 xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x160bd45c rtas_token +EXPORT_SYMBOL vmlinux 0x161d0033 proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0x16254b31 replace_mount_options +EXPORT_SYMBOL vmlinux 0x16354fac sock_wfree +EXPORT_SYMBOL vmlinux 0x164475d0 blkdev_fsync +EXPORT_SYMBOL vmlinux 0x16540bbc __cmpdi2 +EXPORT_SYMBOL vmlinux 0x16698743 devfreq_add_governor +EXPORT_SYMBOL vmlinux 0x16724454 xfrm_init_state +EXPORT_SYMBOL vmlinux 0x1689795e dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0x16c789f9 read_code +EXPORT_SYMBOL vmlinux 0x16dcec76 ipmi_set_my_address +EXPORT_SYMBOL vmlinux 0x173956f0 seq_bitmap +EXPORT_SYMBOL vmlinux 0x17405883 blk_alloc_queue_node +EXPORT_SYMBOL vmlinux 0x17472d10 udp_lib_rehash +EXPORT_SYMBOL vmlinux 0x174afb1a __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0x17648396 dev_base_lock +EXPORT_SYMBOL vmlinux 0x1768558f twl6040_get_pll +EXPORT_SYMBOL vmlinux 0x179686e1 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0x179a3a3f i2c_del_driver +EXPORT_SYMBOL vmlinux 0x17a9ff82 jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x17aa156a __ucmpdi2 +EXPORT_SYMBOL vmlinux 0x17b1125d gen_kill_estimator +EXPORT_SYMBOL vmlinux 0x17e28473 fsl_upm_run_pattern +EXPORT_SYMBOL vmlinux 0x17e38e08 pagecache_write_end +EXPORT_SYMBOL vmlinux 0x17f341a0 i8042_lock_chip +EXPORT_SYMBOL vmlinux 0x1814307e cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0x181761ac blk_queue_free_tags +EXPORT_SYMBOL vmlinux 0x1826f089 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x183fa88b mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0x184b82fb mmc_vddrange_to_ocrmask +EXPORT_SYMBOL vmlinux 0x184e6c85 radix_tree_gang_lookup_slot +EXPORT_SYMBOL vmlinux 0x18580ba0 kobject_put +EXPORT_SYMBOL vmlinux 0x185af4f5 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x186040d8 agp_find_bridge +EXPORT_SYMBOL vmlinux 0x188a3dfb timespec_trunc +EXPORT_SYMBOL vmlinux 0x189868d7 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x189caff8 scsi_put_command +EXPORT_SYMBOL vmlinux 0x18a69f01 phy_connect_direct +EXPORT_SYMBOL vmlinux 0x18b488e7 neigh_ifdown +EXPORT_SYMBOL vmlinux 0x18c2227f cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x18eedfb9 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0x18f0dd16 phy_attach_direct +EXPORT_SYMBOL vmlinux 0x19111a40 lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x1924dad0 agp_bridge +EXPORT_SYMBOL vmlinux 0x195a2666 skb_dequeue +EXPORT_SYMBOL vmlinux 0x19610e1f cpu_all_bits +EXPORT_SYMBOL vmlinux 0x19671f32 con_is_bound +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19bb11b6 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19e048ec blk_init_queue_node +EXPORT_SYMBOL vmlinux 0x1a10c898 ipmi_set_maintenance_mode +EXPORT_SYMBOL vmlinux 0x1a111a41 ftrace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x1a19268a keyring_search +EXPORT_SYMBOL vmlinux 0x1a1c7583 mdiobus_scan +EXPORT_SYMBOL vmlinux 0x1a1db879 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0x1a20ee32 kobject_add +EXPORT_SYMBOL vmlinux 0x1a310711 locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x1a7a40c0 task_tgid_nr_ns +EXPORT_SYMBOL vmlinux 0x1a7cbd75 dev_open +EXPORT_SYMBOL vmlinux 0x1aa723db dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0x1aa81357 build_skb +EXPORT_SYMBOL vmlinux 0x1ab54380 simple_transaction_get +EXPORT_SYMBOL vmlinux 0x1aba5db8 ipmi_unregister_smi +EXPORT_SYMBOL vmlinux 0x1ace138d bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0x1af62a99 panic_notifier_list +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b0ac272 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0x1b132009 rename_lock +EXPORT_SYMBOL vmlinux 0x1b176271 simple_rmdir +EXPORT_SYMBOL vmlinux 0x1b1cc395 skb_checksum_help +EXPORT_SYMBOL vmlinux 0x1b27b824 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x1b2c58c1 directly_mappable_cdev_bdi +EXPORT_SYMBOL vmlinux 0x1b345701 blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0x1b3cf60f d_make_root +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b7885d5 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0x1b82fefa md_unplug +EXPORT_SYMBOL vmlinux 0x1b8b95ad i8042_unlock_chip +EXPORT_SYMBOL vmlinux 0x1b8db5fc __ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x1b9e0ff1 scsilun_to_int +EXPORT_SYMBOL vmlinux 0x1b9e6cea udp_seq_open +EXPORT_SYMBOL vmlinux 0x1baa830d pci_match_id +EXPORT_SYMBOL vmlinux 0x1baf69aa kthread_bind +EXPORT_SYMBOL vmlinux 0x1bc23c90 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x1bc4ff03 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0x1bca2b59 load_fp_state +EXPORT_SYMBOL vmlinux 0x1c037fb7 devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x1c094952 inode_get_bytes +EXPORT_SYMBOL vmlinux 0x1c2e7a0e scsi_reset_provider +EXPORT_SYMBOL vmlinux 0x1c54a792 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0x1c582c9a netdev_master_upper_dev_link_private +EXPORT_SYMBOL vmlinux 0x1c5b2c15 pmu_wait_complete +EXPORT_SYMBOL vmlinux 0x1c6573d7 sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x1c68dae4 filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0x1c69c6ba kill_block_super +EXPORT_SYMBOL vmlinux 0x1c6d78b1 vfs_mkdir +EXPORT_SYMBOL vmlinux 0x1c76c720 generic_listxattr +EXPORT_SYMBOL vmlinux 0x1c80de9c ip_send_check +EXPORT_SYMBOL vmlinux 0x1c9853c4 ___pskb_trim +EXPORT_SYMBOL vmlinux 0x1ca39aea __lock_buffer +EXPORT_SYMBOL vmlinux 0x1ca9570a __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0x1cbe0a65 input_get_keycode +EXPORT_SYMBOL vmlinux 0x1ccfa9a0 pm860x_page_bulk_write +EXPORT_SYMBOL vmlinux 0x1cd9f052 input_grab_device +EXPORT_SYMBOL vmlinux 0x1cdb6327 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0x1ce1891c register_netdev +EXPORT_SYMBOL vmlinux 0x1d2e07b1 xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0x1d2ef43a gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0x1d7ddd4c eth_header_cache +EXPORT_SYMBOL vmlinux 0x1d8081f6 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x1d843676 eth_header +EXPORT_SYMBOL vmlinux 0x1d90581f mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x1dac8d2b blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x1daee28a percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0x1dbd9efa __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x1dbfc46f __skb_checksum +EXPORT_SYMBOL vmlinux 0x1dc36131 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1dd8288c bio_add_page +EXPORT_SYMBOL vmlinux 0x1dd89c74 framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x1de0684b udp_disconnect +EXPORT_SYMBOL vmlinux 0x1e0e8e63 max8925_bulk_write +EXPORT_SYMBOL vmlinux 0x1e26be3b get_anon_bdev +EXPORT_SYMBOL vmlinux 0x1e3227a6 mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x1e41b7d0 phy_print_status +EXPORT_SYMBOL vmlinux 0x1e527bbd pci_unregister_driver +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e9669af bio_flush_dcache_pages +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ec3bed9 hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0x1ee1fcf9 __ip_select_ident +EXPORT_SYMBOL vmlinux 0x1f08426d devm_gpiod_get_index +EXPORT_SYMBOL vmlinux 0x1f0ca59a pci_get_class +EXPORT_SYMBOL vmlinux 0x1f18ccc9 md_integrity_register +EXPORT_SYMBOL vmlinux 0x1f1eb274 inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0x1f24e901 inode_permission +EXPORT_SYMBOL vmlinux 0x1f3f57bb pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0x1f49b01b tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x1f7e807f kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x1fa23096 get_write_access +EXPORT_SYMBOL vmlinux 0x1fbbe060 mb_cache_shrink +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fcacb73 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fd76ed6 twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1fe9f800 unregister_cpu_notifier +EXPORT_SYMBOL vmlinux 0x1fef0393 bioset_free +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x20030ecd ioremap +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x2031bf06 __destroy_inode +EXPORT_SYMBOL vmlinux 0x20421305 on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x2062f2aa __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0x20640d37 textsearch_unregister +EXPORT_SYMBOL vmlinux 0x2069f2fd __neigh_event_send +EXPORT_SYMBOL vmlinux 0x20724e82 jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x2076a94c of_create_pci_dev +EXPORT_SYMBOL vmlinux 0x20814701 blk_queue_softirq_done +EXPORT_SYMBOL vmlinux 0x2094aa4c unlock_new_inode +EXPORT_SYMBOL vmlinux 0x2098f3b1 tty_pair_get_tty +EXPORT_SYMBOL vmlinux 0x209a811f agp_generic_free_by_type +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20a86b3f of_get_pci_address +EXPORT_SYMBOL vmlinux 0x20ac1b93 simple_dir_operations +EXPORT_SYMBOL vmlinux 0x20b2bb2d param_array_ops +EXPORT_SYMBOL vmlinux 0x20c14ce9 __devm_release_region +EXPORT_SYMBOL vmlinux 0x20c55ae0 sscanf +EXPORT_SYMBOL vmlinux 0x20cc3b73 udp_proc_register +EXPORT_SYMBOL vmlinux 0x20cfdfb9 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x21312e0c __generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x2137fae2 netdev_notify_peers +EXPORT_SYMBOL vmlinux 0x2154498c phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x215ebd78 bitrev16 +EXPORT_SYMBOL vmlinux 0x21755a4f sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0x217fe215 devm_gpio_request +EXPORT_SYMBOL vmlinux 0x219c10fc led_blink_set +EXPORT_SYMBOL vmlinux 0x21a0632a set_binfmt +EXPORT_SYMBOL vmlinux 0x21ef05b0 qdisc_list_del +EXPORT_SYMBOL vmlinux 0x21ef854e dev_get_stats +EXPORT_SYMBOL vmlinux 0x21f32d48 dev_addr_init +EXPORT_SYMBOL vmlinux 0x220f939a __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0x2226632c inode_sub_rsv_space +EXPORT_SYMBOL vmlinux 0x222a8c82 sock_wake_async +EXPORT_SYMBOL vmlinux 0x222caa22 skb_copy_datagram_iovec +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x22358099 pci_disable_obff +EXPORT_SYMBOL vmlinux 0x2256fafa div64_u64_rem +EXPORT_SYMBOL vmlinux 0x226c0363 vsc824x_add_skew +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x2278e94b slhc_remember +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22dbc7b4 dev_printk_emit +EXPORT_SYMBOL vmlinux 0x22f1af54 pci_select_bars +EXPORT_SYMBOL vmlinux 0x22fd3585 scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0x23028b8b dst_destroy +EXPORT_SYMBOL vmlinux 0x23126c6d pci_disable_msi +EXPORT_SYMBOL vmlinux 0x231d4001 fb_edid_add_monspecs +EXPORT_SYMBOL vmlinux 0x232811ef tcf_hash_create +EXPORT_SYMBOL vmlinux 0x232b86ee key_revoke +EXPORT_SYMBOL vmlinux 0x233917d1 mac_vmode_to_var +EXPORT_SYMBOL vmlinux 0x235e90f3 __wake_up_bit +EXPORT_SYMBOL vmlinux 0x236c35de tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0x237810b9 phy_register_fixup +EXPORT_SYMBOL vmlinux 0x2391aa60 dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0x239cfdd0 iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0x239eac65 remove_proc_entry +EXPORT_SYMBOL vmlinux 0x23a3155b bdevname +EXPORT_SYMBOL vmlinux 0x23a331b6 blk_mq_free_single_hw_queue +EXPORT_SYMBOL vmlinux 0x23a574fd security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23d69037 scsi_execute_req_flags +EXPORT_SYMBOL vmlinux 0x23dcb2d3 dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0x23f2243d mempool_free +EXPORT_SYMBOL vmlinux 0x23f261cb padata_register_cpumask_notifier +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x2406d922 tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x2429e51e submit_bh +EXPORT_SYMBOL vmlinux 0x242b2b54 generic_pipe_buf_steal +EXPORT_SYMBOL vmlinux 0x2435fc43 blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x245a5a94 sleep_on_timeout +EXPORT_SYMBOL vmlinux 0x246a8f80 done_path_create +EXPORT_SYMBOL vmlinux 0x246f2e15 ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0x247608b7 lro_receive_skb +EXPORT_SYMBOL vmlinux 0x2482e688 vsprintf +EXPORT_SYMBOL vmlinux 0x24a22bf5 d_obtain_alias +EXPORT_SYMBOL vmlinux 0x24a93c38 kernel_recvmsg +EXPORT_SYMBOL vmlinux 0x24c7d487 set_page_dirty +EXPORT_SYMBOL vmlinux 0x24cdd8ed dm_kobject_release +EXPORT_SYMBOL vmlinux 0x24d7a09a pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0x24d7b4eb cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x24e5829f km_state_expired +EXPORT_SYMBOL vmlinux 0x24f1cbf7 nf_afinfo +EXPORT_SYMBOL vmlinux 0x24fdac79 wake_bit_function +EXPORT_SYMBOL vmlinux 0x250113b4 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x253342d5 dma_async_memcpy_pg_to_pg +EXPORT_SYMBOL vmlinux 0x25626d3c bio_integrity_clone +EXPORT_SYMBOL vmlinux 0x2563e66f names_cachep +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x2588cf02 mnt_unpin +EXPORT_SYMBOL vmlinux 0x2589cfd1 remove_arg_zero +EXPORT_SYMBOL vmlinux 0x25bb3e7e nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x25c677c4 mac_pton +EXPORT_SYMBOL vmlinux 0x25deab7c pci_clear_mwi +EXPORT_SYMBOL vmlinux 0x25eca0a5 dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0x25f3bd2e atomic64_xchg +EXPORT_SYMBOL vmlinux 0x26053471 dmam_free_noncoherent +EXPORT_SYMBOL vmlinux 0x260cf8f8 of_get_property +EXPORT_SYMBOL vmlinux 0x260d04ec scm_detach_fds +EXPORT_SYMBOL vmlinux 0x261c5174 i2c_bit_algo +EXPORT_SYMBOL vmlinux 0x262b0635 vfs_readv +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x26477c07 __vmalloc +EXPORT_SYMBOL vmlinux 0x264f07c5 tty_pair_get_pty +EXPORT_SYMBOL vmlinux 0x2650d835 sysctl_ip_early_demux +EXPORT_SYMBOL vmlinux 0x266070dd invalidate_bdev +EXPORT_SYMBOL vmlinux 0x26799833 input_allocate_device +EXPORT_SYMBOL vmlinux 0x2695c6ed agp_generic_alloc_pages +EXPORT_SYMBOL vmlinux 0x26b760c4 slhc_init +EXPORT_SYMBOL vmlinux 0x26bb950b __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0x26c5bf6a mdiobus_register +EXPORT_SYMBOL vmlinux 0x26e76fb8 sysctl_udp_wmem_min +EXPORT_SYMBOL vmlinux 0x26f0453a blk_set_default_limits +EXPORT_SYMBOL vmlinux 0x27111800 blk_mq_map_queue +EXPORT_SYMBOL vmlinux 0x27141573 mmc_gpio_free_cd +EXPORT_SYMBOL vmlinux 0x272c9acd pmu_battery_count +EXPORT_SYMBOL vmlinux 0x2751c1b2 netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0x2773eecc agp_enable +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x27892acf stop_tty +EXPORT_SYMBOL vmlinux 0x2792d794 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27d95db3 mem_cgroup_subsys +EXPORT_SYMBOL vmlinux 0x27e1a049 printk +EXPORT_SYMBOL vmlinux 0x27e6631e vm_insert_pfn +EXPORT_SYMBOL vmlinux 0x27f2313e idr_replace +EXPORT_SYMBOL vmlinux 0x280f7bcd vga_tryget +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x283ea000 __inet_stream_connect +EXPORT_SYMBOL vmlinux 0x2859f1c1 blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0x288f3f4d pci_device_from_OF_node +EXPORT_SYMBOL vmlinux 0x28a2ed02 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x28ac7e39 security_path_chown +EXPORT_SYMBOL vmlinux 0x28b79e42 mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0x28b808fa notify_change +EXPORT_SYMBOL vmlinux 0x28f784f5 __debugger_break_match +EXPORT_SYMBOL vmlinux 0x28f9b5fe dev_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x28fdece7 dm_register_target +EXPORT_SYMBOL vmlinux 0x29067149 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x2909fe27 dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x29190718 __scsi_add_device +EXPORT_SYMBOL vmlinux 0x292da334 scsi_is_target_device +EXPORT_SYMBOL vmlinux 0x294a7685 ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x29537c9e alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0x29aafe61 of_device_unregister +EXPORT_SYMBOL vmlinux 0x29b1c366 __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x29c1a758 swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x29da2380 pci_disable_ido +EXPORT_SYMBOL vmlinux 0x29e55627 d_drop +EXPORT_SYMBOL vmlinux 0x29fdda53 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0x2a02c5cb __dev_remove_offload +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a4d6588 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x2a612f83 scsi_device_set_state +EXPORT_SYMBOL vmlinux 0x2a7cac99 pci_add_resource +EXPORT_SYMBOL vmlinux 0x2aa0e4fc strncasecmp +EXPORT_SYMBOL vmlinux 0x2acba91c dma_direct_ops +EXPORT_SYMBOL vmlinux 0x2acf0feb vfs_fstat +EXPORT_SYMBOL vmlinux 0x2b0ba2b0 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x2b12925d cpumask_next_and +EXPORT_SYMBOL vmlinux 0x2b2ce78b kstrtos8 +EXPORT_SYMBOL vmlinux 0x2b55f89c simple_transaction_read +EXPORT_SYMBOL vmlinux 0x2b642cd1 posix_lock_file +EXPORT_SYMBOL vmlinux 0x2b669c14 qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0x2b6a5a24 generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x2b7a35dd tcp_release_cb +EXPORT_SYMBOL vmlinux 0x2b7d4e11 page_address +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2ba707a8 sysctl_tcp_low_latency +EXPORT_SYMBOL vmlinux 0x2bc61da1 program_check_exception +EXPORT_SYMBOL vmlinux 0x2bd9f179 elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x2be1d59d user_path_at +EXPORT_SYMBOL vmlinux 0x2c14323a kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x2c1dda76 vmap +EXPORT_SYMBOL vmlinux 0x2c2283af tty_register_driver +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c37cd13 wireless_spy_update +EXPORT_SYMBOL vmlinux 0x2c7b1fca down_timeout +EXPORT_SYMBOL vmlinux 0x2c900d91 cpufreq_put_global_kobject +EXPORT_SYMBOL vmlinux 0x2cbd0f16 pci_release_regions +EXPORT_SYMBOL vmlinux 0x2cc62260 kill_pgrp +EXPORT_SYMBOL vmlinux 0x2cd0aff9 seq_release_private +EXPORT_SYMBOL vmlinux 0x2cd14e1f xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0x2cde4846 pci_scan_bus_parented +EXPORT_SYMBOL vmlinux 0x2d03c10d posix_acl_create +EXPORT_SYMBOL vmlinux 0x2d0fae88 jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d1ea903 kmem_cache_free +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d3ecb61 bprm_change_interp +EXPORT_SYMBOL vmlinux 0x2d3fa823 md_write_end +EXPORT_SYMBOL vmlinux 0x2d6fd558 call_netdevice_notifiers_info +EXPORT_SYMBOL vmlinux 0x2d813f25 blk_init_queue +EXPORT_SYMBOL vmlinux 0x2d89342a scsi_show_sense_hdr +EXPORT_SYMBOL vmlinux 0x2d8fdc50 dev_alloc_name +EXPORT_SYMBOL vmlinux 0x2daaaba9 param_get_byte +EXPORT_SYMBOL vmlinux 0x2ddebd6c max8998_read_reg +EXPORT_SYMBOL vmlinux 0x2deda4a1 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x2df2c1ff vlan_vid_del +EXPORT_SYMBOL vmlinux 0x2e16a219 noop_llseek +EXPORT_SYMBOL vmlinux 0x2e22ff95 __register_chrdev +EXPORT_SYMBOL vmlinux 0x2e27312a nf_log_unregister +EXPORT_SYMBOL vmlinux 0x2e2ce9e0 sysctl_tcp_syncookies +EXPORT_SYMBOL vmlinux 0x2e7499b6 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0x2e8b78b7 netdev_warn +EXPORT_SYMBOL vmlinux 0x2e8ff9aa ps2_drain +EXPORT_SYMBOL vmlinux 0x2e97bf98 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x2ebb6c8a phy_ethtool_sset +EXPORT_SYMBOL vmlinux 0x2ec524ad __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x2ec6e2b5 scsi_target_resume +EXPORT_SYMBOL vmlinux 0x2ee74134 remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x2eeceb42 sk_chk_filter +EXPORT_SYMBOL vmlinux 0x2ef63ad6 scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f0ade01 devfreq_add_device +EXPORT_SYMBOL vmlinux 0x2f385506 kill_bdev +EXPORT_SYMBOL vmlinux 0x2f3c7ce1 phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x2f413898 fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0x2f4829d4 dev_get_by_name +EXPORT_SYMBOL vmlinux 0x2f7f6023 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x2fae96de rtas_data_buf_lock +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fbe071d pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0x2fc76c5c bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x2fd48496 input_flush_device +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x30026305 seq_pad +EXPORT_SYMBOL vmlinux 0x3016f2eb blk_queue_bounce +EXPORT_SYMBOL vmlinux 0x3018656f simple_unlink +EXPORT_SYMBOL vmlinux 0x301acd88 i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0x30226ddf agp_device_command +EXPORT_SYMBOL vmlinux 0x302a9569 save_mount_options +EXPORT_SYMBOL vmlinux 0x302f9fca fget +EXPORT_SYMBOL vmlinux 0x304c1752 xfrm_prepare_input +EXPORT_SYMBOL vmlinux 0x304dae91 i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0x307c2fd0 generic_check_addressable +EXPORT_SYMBOL vmlinux 0x309825d8 truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30b6dfbc poll_schedule_timeout +EXPORT_SYMBOL vmlinux 0x30b8b35c cpu_to_chip_id +EXPORT_SYMBOL vmlinux 0x30cada8f radix_tree_next_hole +EXPORT_SYMBOL vmlinux 0x30cdfca8 giveup_altivec +EXPORT_SYMBOL vmlinux 0x30ce1073 generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0x30ec551d ppp_dev_name +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x310917fe sort +EXPORT_SYMBOL vmlinux 0x31093a9f devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0x312824e0 hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x3133b6e2 bio_reset +EXPORT_SYMBOL vmlinux 0x3144c508 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x3147857d default_red +EXPORT_SYMBOL vmlinux 0x315c65fd zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x318cadb1 reciprocal_value +EXPORT_SYMBOL vmlinux 0x3191f109 __krealloc +EXPORT_SYMBOL vmlinux 0x31a70339 skb_pull +EXPORT_SYMBOL vmlinux 0x31b48497 init_task +EXPORT_SYMBOL vmlinux 0x31c2bd07 __lock_page +EXPORT_SYMBOL vmlinux 0x31c7f1f0 mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0x31d934f5 neigh_seq_next +EXPORT_SYMBOL vmlinux 0x31dc0b97 pci_enable_msi_block_auto +EXPORT_SYMBOL vmlinux 0x31e4fa6d input_set_abs_params +EXPORT_SYMBOL vmlinux 0x31f0bb78 __kmap_atomic_idx +EXPORT_SYMBOL vmlinux 0x31fdccf7 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0x32133abb swiotlb_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0x321fd1f9 pci_dev_put +EXPORT_SYMBOL vmlinux 0x322f48d4 abx500_dump_all_banks +EXPORT_SYMBOL vmlinux 0x3236c364 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0x3243a381 bio_phys_segments +EXPORT_SYMBOL vmlinux 0x32473417 skb_copy_datagram_const_iovec +EXPORT_SYMBOL vmlinux 0x327b9c1b pmu_poll_adb +EXPORT_SYMBOL vmlinux 0x327bf883 of_can_translate_address +EXPORT_SYMBOL vmlinux 0x3284c88d tcf_hash_lookup +EXPORT_SYMBOL vmlinux 0x328a05f1 strncpy +EXPORT_SYMBOL vmlinux 0x3291b5b9 bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x32bddc77 netdev_alert +EXPORT_SYMBOL vmlinux 0x32dcf533 dev_mc_del +EXPORT_SYMBOL vmlinux 0x332b4283 __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x33458963 mapping_tagged +EXPORT_SYMBOL vmlinux 0x33489e69 poll_initwait +EXPORT_SYMBOL vmlinux 0x337cce46 put_cmsg +EXPORT_SYMBOL vmlinux 0x339b1143 blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0x33b1b735 revert_creds +EXPORT_SYMBOL vmlinux 0x33b84f74 copy_page +EXPORT_SYMBOL vmlinux 0x33ba5cd4 param_ops_bool +EXPORT_SYMBOL vmlinux 0x33c7435c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x33cda051 swiotlb_unmap_sg +EXPORT_SYMBOL vmlinux 0x33dbfd93 tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x34000433 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x34184afe current_kernel_time +EXPORT_SYMBOL vmlinux 0x341dbfa3 __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x344adbd5 init_cdrom_command +EXPORT_SYMBOL vmlinux 0x3451ce34 vfs_link +EXPORT_SYMBOL vmlinux 0x346c4ded rwsem_down_write_failed +EXPORT_SYMBOL vmlinux 0x347013de nla_validate +EXPORT_SYMBOL vmlinux 0x347eb9bd param_set_bool +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34a223a9 km_state_notify +EXPORT_SYMBOL vmlinux 0x34c9315d get_io_context +EXPORT_SYMBOL vmlinux 0x34d13626 pci_restore_state +EXPORT_SYMBOL vmlinux 0x34d2b214 prepare_creds +EXPORT_SYMBOL vmlinux 0x34dd7602 user_revoke +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34f62dec sk_wait_data +EXPORT_SYMBOL vmlinux 0x34ffabcb proc_create_data +EXPORT_SYMBOL vmlinux 0x35122aa4 get_task_io_context +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x35199573 dquot_commit_info +EXPORT_SYMBOL vmlinux 0x351f7357 ip_options_compile +EXPORT_SYMBOL vmlinux 0x3560c327 bdev_read_only +EXPORT_SYMBOL vmlinux 0x35658f50 eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0x356cb379 rfkill_alloc +EXPORT_SYMBOL vmlinux 0x356e7872 vga_put +EXPORT_SYMBOL vmlinux 0x35902e7a genphy_config_aneg +EXPORT_SYMBOL vmlinux 0x359dd659 inet_sendpage +EXPORT_SYMBOL vmlinux 0x35a7234c pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0x35c32767 xor_altivec_2 +EXPORT_SYMBOL vmlinux 0x35e881eb qdisc_tree_decrease_qlen +EXPORT_SYMBOL vmlinux 0x35fbd6a1 __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0x3604033f xfrm_unregister_mode +EXPORT_SYMBOL vmlinux 0x366f2c10 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0x368382e2 of_get_named_gpiod_flags +EXPORT_SYMBOL vmlinux 0x36a19f3a cancel_dirty_page +EXPORT_SYMBOL vmlinux 0x36b0e732 try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x36bd681b groups_alloc +EXPORT_SYMBOL vmlinux 0x36c0ad8a genphy_read_status +EXPORT_SYMBOL vmlinux 0x36ca4cdb security_path_chmod +EXPORT_SYMBOL vmlinux 0x36cf4311 pcibios_fixup_bus +EXPORT_SYMBOL vmlinux 0x36d7b11a of_find_matching_node_and_match +EXPORT_SYMBOL vmlinux 0x36e360e3 __hw_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x36f40888 serio_unregister_port +EXPORT_SYMBOL vmlinux 0x371d2130 check_legacy_ioport +EXPORT_SYMBOL vmlinux 0x37383edd rtas_get_power_level +EXPORT_SYMBOL vmlinux 0x37389788 scsi_release_buffers +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x376a98f0 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0x37764068 lock_may_read +EXPORT_SYMBOL vmlinux 0x37b8aa31 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37bfbe57 dma_common_mmap +EXPORT_SYMBOL vmlinux 0x37e74642 get_jiffies_64 +EXPORT_SYMBOL vmlinux 0x37e7c810 generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0x37f614b7 __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x37f6fee5 fsl_lbc_find +EXPORT_SYMBOL vmlinux 0x37fb5458 mark_info_dirty +EXPORT_SYMBOL vmlinux 0x380517a8 blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0x380520ab cad_pid +EXPORT_SYMBOL vmlinux 0x381144a9 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x381becc0 pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0x3832e9e4 ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0x383b2f99 agp_generic_alloc_page +EXPORT_SYMBOL vmlinux 0x383c577f tcf_hash_release +EXPORT_SYMBOL vmlinux 0x384a3dc9 keyring_clear +EXPORT_SYMBOL vmlinux 0x385ea74a udp_lib_get_port +EXPORT_SYMBOL vmlinux 0x387579ad ipmi_smi_watcher_unregister +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x38880e38 pci_enable_msix +EXPORT_SYMBOL vmlinux 0x388f9128 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x38a132a2 pci_dev_get +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38d1a27f try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x38f30c45 xfrm6_prepare_output +EXPORT_SYMBOL vmlinux 0x38fb9933 tty_std_termios +EXPORT_SYMBOL vmlinux 0x3902aeda rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x39266bb7 __sb_start_write +EXPORT_SYMBOL vmlinux 0x3937bc0a bdget +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x397bf37f block_write_full_page +EXPORT_SYMBOL vmlinux 0x39a70deb ping_prot +EXPORT_SYMBOL vmlinux 0x39aa7c92 release_pages +EXPORT_SYMBOL vmlinux 0x39b6876a __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x39c5cd05 dev_get_by_flags_rcu +EXPORT_SYMBOL vmlinux 0x39ca0fc7 ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x39cdf63c wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x39d7bbfa netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0x39e974cb kernel_connect +EXPORT_SYMBOL vmlinux 0x39fccc31 iput +EXPORT_SYMBOL vmlinux 0x39ffe3ab md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0x3a12a2b2 cookie_check_timestamp +EXPORT_SYMBOL vmlinux 0x3a154736 touch_atime +EXPORT_SYMBOL vmlinux 0x3a1d3551 dev_set_drvdata +EXPORT_SYMBOL vmlinux 0x3a261096 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0x3a42816e iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0x3a4a0db0 max8998_bulk_write +EXPORT_SYMBOL vmlinux 0x3a73b445 macio_release_resources +EXPORT_SYMBOL vmlinux 0x3a9b6fb9 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x3aa243ed blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0x3ac6bd4d migrate_page +EXPORT_SYMBOL vmlinux 0x3b615a21 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x3b8f6a97 agp_generic_remove_memory +EXPORT_SYMBOL vmlinux 0x3bd1b1f6 msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x3bde7490 cdrom_release +EXPORT_SYMBOL vmlinux 0x3be136b0 unload_nls +EXPORT_SYMBOL vmlinux 0x3bef03b9 flow_cache_lookup +EXPORT_SYMBOL vmlinux 0x3c0703fa mmc_stop_bkops +EXPORT_SYMBOL vmlinux 0x3c18dba9 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x3c24bbd5 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0x3c59155f twl6040_reg_read +EXPORT_SYMBOL vmlinux 0x3c6470ce kernel_write +EXPORT_SYMBOL vmlinux 0x3c652b24 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c88441d end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0x3c9d1211 string_get_size +EXPORT_SYMBOL vmlinux 0x3c9e6fec md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0x3cbc99a8 fb_set_cmap +EXPORT_SYMBOL vmlinux 0x3cbf8294 mb_cache_create +EXPORT_SYMBOL vmlinux 0x3cc4b0dc lg_lock_init +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3cffd163 cur_cpu_spec +EXPORT_SYMBOL vmlinux 0x3d2b0539 __cleancache_get_page +EXPORT_SYMBOL vmlinux 0x3d3adbe8 fb_get_mode +EXPORT_SYMBOL vmlinux 0x3d41904f of_get_next_child +EXPORT_SYMBOL vmlinux 0x3d7db046 dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0x3d817f3f generic_file_open +EXPORT_SYMBOL vmlinux 0x3d8c80be tcf_em_register +EXPORT_SYMBOL vmlinux 0x3d95a44c check_disk_change +EXPORT_SYMBOL vmlinux 0x3d9669d6 of_find_backlight_by_node +EXPORT_SYMBOL vmlinux 0x3da1b228 kern_path +EXPORT_SYMBOL vmlinux 0x3da97968 fb_set_suspend +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dd1ed39 vm_insert_mixed +EXPORT_SYMBOL vmlinux 0x3de04378 tty_hung_up_p +EXPORT_SYMBOL vmlinux 0x3dfbca1e do_SAK +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e0885a1 request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0x3e227658 rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0x3e2b1a0f __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x3e2c2011 scsi_print_command +EXPORT_SYMBOL vmlinux 0x3e2d3ac4 writeback_in_progress +EXPORT_SYMBOL vmlinux 0x3e4fa048 napi_gro_flush +EXPORT_SYMBOL vmlinux 0x3e83c975 locks_free_lock +EXPORT_SYMBOL vmlinux 0x3e852d33 bitmap_end_sync +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3e9f0b80 cdrom_ioctl +EXPORT_SYMBOL vmlinux 0x3eae9ca2 sk_prot_clear_portaddr_nulls +EXPORT_SYMBOL vmlinux 0x3eb9826d fget_light +EXPORT_SYMBOL vmlinux 0x3ed63055 zlib_inflateReset +EXPORT_SYMBOL vmlinux 0x3efdc749 netlink_set_err +EXPORT_SYMBOL vmlinux 0x3f0546a8 ioread32_rep +EXPORT_SYMBOL vmlinux 0x3f137ce4 simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0x3f3dc4b6 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0x3f406a3b enable_kernel_altivec +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f469931 locks_remove_posix +EXPORT_SYMBOL vmlinux 0x3f49c20e input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0x3f84acb7 uart_register_driver +EXPORT_SYMBOL vmlinux 0x3fa14ae6 __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x3fa94ee8 giveup_fpu +EXPORT_SYMBOL vmlinux 0x3faaf63e of_phy_find_device +EXPORT_SYMBOL vmlinux 0x3fb1cf71 proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x3fd55724 of_n_size_cells +EXPORT_SYMBOL vmlinux 0x3fe09d7a pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0x3fe0d1c0 slhc_free +EXPORT_SYMBOL vmlinux 0x3fec825c sock_from_file +EXPORT_SYMBOL vmlinux 0x3fef1a18 d_alloc +EXPORT_SYMBOL vmlinux 0x3ff62317 local_bh_disable +EXPORT_SYMBOL vmlinux 0x3ff8069b tcf_hash_insert +EXPORT_SYMBOL vmlinux 0x3ff8e495 lg_local_unlock_cpu +EXPORT_SYMBOL vmlinux 0x402b8281 __request_module +EXPORT_SYMBOL vmlinux 0x4039d571 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0x403e1b2e scsi_host_put +EXPORT_SYMBOL vmlinux 0x404066c5 idr_for_each +EXPORT_SYMBOL vmlinux 0x4059792f print_hex_dump +EXPORT_SYMBOL vmlinux 0x405c1144 get_seconds +EXPORT_SYMBOL vmlinux 0x4062743f clear_nlink +EXPORT_SYMBOL vmlinux 0x40743b30 bio_copy_user +EXPORT_SYMBOL vmlinux 0x407987dd blk_queue_prep_rq +EXPORT_SYMBOL vmlinux 0x407e46e2 jbd2_journal_file_inode +EXPORT_SYMBOL vmlinux 0x40892ef0 create_syslog_header +EXPORT_SYMBOL vmlinux 0x40914968 skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0x409416e2 __alloc_skb +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x40a27c37 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x40a2d1dd dm_table_get_size +EXPORT_SYMBOL vmlinux 0x40a5588f dcache_readdir +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40b78c38 ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0x40b93bff eth_mac_addr +EXPORT_SYMBOL vmlinux 0x40beb95b gen_pool_free +EXPORT_SYMBOL vmlinux 0x40c01859 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0x40c3040a mb_cache_entry_alloc +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40e68677 kobject_get +EXPORT_SYMBOL vmlinux 0x40f1ad10 tb_ticks_per_jiffy +EXPORT_SYMBOL vmlinux 0x40f2b10c ipmi_alloc_smi_msg +EXPORT_SYMBOL vmlinux 0x40fca29a sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0x41177a84 uart_suspend_port +EXPORT_SYMBOL vmlinux 0x4121fd46 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x412bac6a kmalloc_dma_caches +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x414f4160 kernel_bind +EXPORT_SYMBOL vmlinux 0x415633fe kfree_skb +EXPORT_SYMBOL vmlinux 0x417017e4 devm_request_and_ioremap +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x419cd3f0 register_filesystem +EXPORT_SYMBOL vmlinux 0x41ab277d block_write_end +EXPORT_SYMBOL vmlinux 0x41cda5ce seq_puts +EXPORT_SYMBOL vmlinux 0x41dfe52c macio_register_driver +EXPORT_SYMBOL vmlinux 0x41f057e6 scsi_unregister +EXPORT_SYMBOL vmlinux 0x4211c3c1 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x422dfc16 mdiobus_write +EXPORT_SYMBOL vmlinux 0x423b776a ipmi_create_user +EXPORT_SYMBOL vmlinux 0x42595e58 vgacon_text_force +EXPORT_SYMBOL vmlinux 0x426ab711 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0x427df828 pci_clear_master +EXPORT_SYMBOL vmlinux 0x428616ad pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0x42956a99 wait_on_sync_kiocb +EXPORT_SYMBOL vmlinux 0x42977ad4 __hw_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x42a1b208 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x42c760d3 request_key_async_with_auxdata +EXPORT_SYMBOL vmlinux 0x42d8eda7 account_page_redirty +EXPORT_SYMBOL vmlinux 0x42f41f8d dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x431d8c2c __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0x4324ea25 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x432fd4cd jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x4355b656 qdisc_watchdog_schedule_ns +EXPORT_SYMBOL vmlinux 0x43579222 kern_path_create +EXPORT_SYMBOL vmlinux 0x4361ad5d i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0x43632d7d of_find_property +EXPORT_SYMBOL vmlinux 0x436c2179 iowrite32 +EXPORT_SYMBOL vmlinux 0x436e37ae skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0x43722b7e i2c_transfer +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x4396b1c5 locks_copy_lock +EXPORT_SYMBOL vmlinux 0x439d62c4 __dev_get_by_index +EXPORT_SYMBOL vmlinux 0x43a01f90 complete_all +EXPORT_SYMBOL vmlinux 0x43a71731 blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0x43c0a579 tty_unregister_driver +EXPORT_SYMBOL vmlinux 0x43ec891f jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0x43f23311 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x440b89b5 dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0x4411c503 prandom_seed +EXPORT_SYMBOL vmlinux 0x442411b1 dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0x44366cfc simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0x4437e365 setattr_copy +EXPORT_SYMBOL vmlinux 0x44438b96 hex2bin +EXPORT_SYMBOL vmlinux 0x44440b48 wait_iff_congested +EXPORT_SYMBOL vmlinux 0x44450b41 scsi_execute +EXPORT_SYMBOL vmlinux 0x4447d156 xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x4474b557 key_unlink +EXPORT_SYMBOL vmlinux 0x44769972 release_sock +EXPORT_SYMBOL vmlinux 0x4491853d linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x44c0242f bdi_register_dev +EXPORT_SYMBOL vmlinux 0x44d42180 agp_generic_type_to_mask_type +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44e9e425 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0x44eb192e wait_for_completion +EXPORT_SYMBOL vmlinux 0x44eb678d agp_generic_destroy_pages +EXPORT_SYMBOL vmlinux 0x44f5e8b5 of_allnodes +EXPORT_SYMBOL vmlinux 0x450253a2 scsi_prep_fn +EXPORT_SYMBOL vmlinux 0x452e003d vfs_create +EXPORT_SYMBOL vmlinux 0x452f320c blk_start_queue +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x4548732c tty_port_put +EXPORT_SYMBOL vmlinux 0x455d434b scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0x45692f36 __seq_open_private +EXPORT_SYMBOL vmlinux 0x45706e50 tcf_destroy_chain +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x4586331e pci_assign_resource +EXPORT_SYMBOL vmlinux 0x458984a3 __mmc_claim_host +EXPORT_SYMBOL vmlinux 0x458b50e5 fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x4596db6a sys_sigreturn +EXPORT_SYMBOL vmlinux 0x459db960 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0x45a6be13 cpufreq_sysfs_remove_file +EXPORT_SYMBOL vmlinux 0x45c7d638 ftrace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x45cea06e dev_uc_init +EXPORT_SYMBOL vmlinux 0x4612c59d down_trylock +EXPORT_SYMBOL vmlinux 0x461ebfa0 __copy_tofrom_user +EXPORT_SYMBOL vmlinux 0x462a2e75 match_strlcpy +EXPORT_SYMBOL vmlinux 0x46343882 netlink_ack +EXPORT_SYMBOL vmlinux 0x463e590d read_cache_page +EXPORT_SYMBOL vmlinux 0x464d4ccd blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0x465757c3 cpu_present_mask +EXPORT_SYMBOL vmlinux 0x4659e6e5 phy_connect +EXPORT_SYMBOL vmlinux 0x465cab34 secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0x46608fa0 getnstimeofday +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x4671f28b mpage_writepage +EXPORT_SYMBOL vmlinux 0x46780172 tcp_sync_mss +EXPORT_SYMBOL vmlinux 0x46a17e03 pci_disable_device +EXPORT_SYMBOL vmlinux 0x46ca9c93 tcp_splice_read +EXPORT_SYMBOL vmlinux 0x46cbe94d fd_install +EXPORT_SYMBOL vmlinux 0x46cf3473 skb_tx_error +EXPORT_SYMBOL vmlinux 0x46d12956 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0x46d2ea15 keyring_alloc +EXPORT_SYMBOL vmlinux 0x46d33955 netdev_state_change +EXPORT_SYMBOL vmlinux 0x46d6e0b9 netif_device_detach +EXPORT_SYMBOL vmlinux 0x46dfb51d d_prune_aliases +EXPORT_SYMBOL vmlinux 0x46f1c018 __devcgroup_inode_permission +EXPORT_SYMBOL vmlinux 0x46feb099 dm_read_arg +EXPORT_SYMBOL vmlinux 0x473019ab simple_setattr +EXPORT_SYMBOL vmlinux 0x47416e14 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x4750062f set_disk_ro +EXPORT_SYMBOL vmlinux 0x47538fc8 dquot_transfer +EXPORT_SYMBOL vmlinux 0x475d16ba devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x4797da76 cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x47aaa35c security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0x47af8ea7 dev_mc_unsync +EXPORT_SYMBOL vmlinux 0x47b3f862 radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x47bcf84c param_set_ulong +EXPORT_SYMBOL vmlinux 0x47c70ba8 pci_add_new_bus +EXPORT_SYMBOL vmlinux 0x47c8baf4 param_ops_uint +EXPORT_SYMBOL vmlinux 0x47e8c430 single_open_size +EXPORT_SYMBOL vmlinux 0x48034724 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x481ce6ce cpu_active_mask +EXPORT_SYMBOL vmlinux 0x48202261 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0x48269d01 update_devfreq +EXPORT_SYMBOL vmlinux 0x482a2a49 param_set_charp +EXPORT_SYMBOL vmlinux 0x482fecef try_to_writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0x48404b9a remove_wait_queue +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x485f72de macio_request_resource +EXPORT_SYMBOL vmlinux 0x4866757d mmc_gpio_request_ro +EXPORT_SYMBOL vmlinux 0x487ad93b xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0x4881efab pmac_get_partition +EXPORT_SYMBOL vmlinux 0x489b61c0 tty_port_init +EXPORT_SYMBOL vmlinux 0x48c6db53 of_get_child_by_name +EXPORT_SYMBOL vmlinux 0x48fabfbf gen_new_estimator +EXPORT_SYMBOL vmlinux 0x48fe48e9 scm_fp_dup +EXPORT_SYMBOL vmlinux 0x48fee2b2 get_tz_trend +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x491c73cc __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0x492882a9 __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0x492a865a dma_common_get_sgtable +EXPORT_SYMBOL vmlinux 0x492be6e6 generic_file_fsync +EXPORT_SYMBOL vmlinux 0x493446cc pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0x493911b3 dev_addr_flush +EXPORT_SYMBOL vmlinux 0x494f2f1f dev_uc_del +EXPORT_SYMBOL vmlinux 0x4958e312 try_to_release_page +EXPORT_SYMBOL vmlinux 0x495c96f8 posix_acl_init +EXPORT_SYMBOL vmlinux 0x49603fb8 security_sb_copy_data +EXPORT_SYMBOL vmlinux 0x49762fcf pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0x497e0fb5 jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0x49ab1487 xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0x49b07aec tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x49c88ab9 scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x4a358252 __bitmap_subset +EXPORT_SYMBOL vmlinux 0x4a3c9885 tty_lock +EXPORT_SYMBOL vmlinux 0x4a946322 blk_queue_start_tag +EXPORT_SYMBOL vmlinux 0x4aa28897 datagram_poll +EXPORT_SYMBOL vmlinux 0x4aaad465 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x4ab44525 seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x4abb08a0 padata_add_cpu +EXPORT_SYMBOL vmlinux 0x4ac48163 find_vma +EXPORT_SYMBOL vmlinux 0x4ad4a05e sock_init_data +EXPORT_SYMBOL vmlinux 0x4ad58e41 misc_deregister +EXPORT_SYMBOL vmlinux 0x4ad98cd4 address_space_init_once +EXPORT_SYMBOL vmlinux 0x4adbec2d dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0x4ade849b dquot_file_open +EXPORT_SYMBOL vmlinux 0x4afe9a77 scsi_partsize +EXPORT_SYMBOL vmlinux 0x4b085dbf agp3_generic_configure +EXPORT_SYMBOL vmlinux 0x4b1ec3e2 kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x4b34fbf5 block_all_signals +EXPORT_SYMBOL vmlinux 0x4b43a51b tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x4b491b59 generic_show_options +EXPORT_SYMBOL vmlinux 0x4b4f242d blk_rq_map_user +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b704f95 dev_emerg +EXPORT_SYMBOL vmlinux 0x4b7ed27b sleep_on +EXPORT_SYMBOL vmlinux 0x4ba168dc uart_write_wakeup +EXPORT_SYMBOL vmlinux 0x4ba376b6 dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x4bb7464f gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x4bcae4cf padata_do_parallel +EXPORT_SYMBOL vmlinux 0x4bcb4201 i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x4be85a03 memweight +EXPORT_SYMBOL vmlinux 0x4bed1e8c xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0x4bed99b3 __percpu_counter_add +EXPORT_SYMBOL vmlinux 0x4c0d8a7d blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x4c11435a _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0x4c1182cb bitmap_scnprintf +EXPORT_SYMBOL vmlinux 0x4c2705ad uart_add_one_port +EXPORT_SYMBOL vmlinux 0x4c2ae700 strnstr +EXPORT_SYMBOL vmlinux 0x4c4f22ba sock_create_lite +EXPORT_SYMBOL vmlinux 0x4c7205f8 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0x4c971bec ipmi_smi_msg_received +EXPORT_SYMBOL vmlinux 0x4cb67010 scsi_register_interface +EXPORT_SYMBOL vmlinux 0x4cba836b xfrm_user_policy +EXPORT_SYMBOL vmlinux 0x4cbbd171 __bitmap_weight +EXPORT_SYMBOL vmlinux 0x4cdb3178 ns_to_timeval +EXPORT_SYMBOL vmlinux 0x4cf18053 prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x4d10f1b1 sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x4d217928 vfs_setpos +EXPORT_SYMBOL vmlinux 0x4d3c153f sigprocmask +EXPORT_SYMBOL vmlinux 0x4d3c530c i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0x4d45d89e udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x4d5184f5 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0x4d724158 give_up_console +EXPORT_SYMBOL vmlinux 0x4d7466d5 __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x4d83b295 sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x4d8fb43f pci_bus_type +EXPORT_SYMBOL vmlinux 0x4d974b9c register_sysrq_key +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4da7c931 rwsem_downgrade_wake +EXPORT_SYMBOL vmlinux 0x4de34a07 cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x4dec6038 memscan +EXPORT_SYMBOL vmlinux 0x4df119fa __bitmap_parse +EXPORT_SYMBOL vmlinux 0x4dfed71c flex_array_get_ptr +EXPORT_SYMBOL vmlinux 0x4e0b6ba4 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e62bbf9 __nla_put +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e786d13 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x4e830a3e strnicmp +EXPORT_SYMBOL vmlinux 0x4e8cf8a7 scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x4e907e34 pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0x4e9dffb5 ip_fast_csum +EXPORT_SYMBOL vmlinux 0x4eae12c1 backlight_force_update +EXPORT_SYMBOL vmlinux 0x4ec03d2e devm_gpiod_put +EXPORT_SYMBOL vmlinux 0x4ed50326 netlink_kernel_release +EXPORT_SYMBOL vmlinux 0x4ee10393 netpoll_print_options +EXPORT_SYMBOL vmlinux 0x4f0f9d05 check_disk_size_change +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f248523 of_find_node_by_name +EXPORT_SYMBOL vmlinux 0x4f391d0e nla_parse +EXPORT_SYMBOL vmlinux 0x4f54fe6b nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0x4f68e5c9 do_gettimeofday +EXPORT_SYMBOL vmlinux 0x4f87a598 sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x4fa46930 pcie_port_service_register +EXPORT_SYMBOL vmlinux 0x4fac6654 scsi_setup_fs_cmnd +EXPORT_SYMBOL vmlinux 0x4fb4dbaa inet_frag_maybe_warn_overflow +EXPORT_SYMBOL vmlinux 0x4fdee897 i8042_command +EXPORT_SYMBOL vmlinux 0x4fe99583 atomic64_dec_if_positive +EXPORT_SYMBOL vmlinux 0x4fed4032 phy_device_register +EXPORT_SYMBOL vmlinux 0x4feff6b6 pci_bus_get +EXPORT_SYMBOL vmlinux 0x4ff7e0d3 __elv_add_request +EXPORT_SYMBOL vmlinux 0x4ffa03f1 register_netdevice +EXPORT_SYMBOL vmlinux 0x5006a6ef ether_setup +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x50384baf vgacon_remap_base +EXPORT_SYMBOL vmlinux 0x50642599 inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0x509817cf vprintk_emit +EXPORT_SYMBOL vmlinux 0x50a9f870 pid_task +EXPORT_SYMBOL vmlinux 0x50ae7d80 __idr_pre_get +EXPORT_SYMBOL vmlinux 0x50ae9eb4 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x50e89b84 tty_unlock_pair +EXPORT_SYMBOL vmlinux 0x5118c382 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0x5123c939 nf_unregister_hooks +EXPORT_SYMBOL vmlinux 0x51271086 i8042_check_port_owner +EXPORT_SYMBOL vmlinux 0x5130e8f0 pci_get_slot +EXPORT_SYMBOL vmlinux 0x5153ac15 scsi_print_sense +EXPORT_SYMBOL vmlinux 0x515d23cb serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x515e24a7 flush_instruction_cache +EXPORT_SYMBOL vmlinux 0x516b6cda __quota_error +EXPORT_SYMBOL vmlinux 0x5189b68e sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x519b0da3 finish_wait +EXPORT_SYMBOL vmlinux 0x51d31f88 invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0x51dce73b xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x51e1f7a9 generic_readlink +EXPORT_SYMBOL vmlinux 0x51ef33b8 kstrndup +EXPORT_SYMBOL vmlinux 0x51f3696e blk_make_request +EXPORT_SYMBOL vmlinux 0x51fb627c d_find_alias +EXPORT_SYMBOL vmlinux 0x51fb8423 blk_stop_queue +EXPORT_SYMBOL vmlinux 0x52026cdf security_sb_parse_opts_str +EXPORT_SYMBOL vmlinux 0x521b36b5 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0x522179d3 mmc_fixup_device +EXPORT_SYMBOL vmlinux 0x5229293e skb_trim +EXPORT_SYMBOL vmlinux 0x52428cc8 parent_mem_cgroup +EXPORT_SYMBOL vmlinux 0x524f6f51 ipmi_get_my_address +EXPORT_SYMBOL vmlinux 0x525b9ccd agp_generic_create_gatt_table +EXPORT_SYMBOL vmlinux 0x525ed088 nf_register_hook +EXPORT_SYMBOL vmlinux 0x52602763 inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0x526ac741 tcp_gso_segment +EXPORT_SYMBOL vmlinux 0x527440df mach_powermac +EXPORT_SYMBOL vmlinux 0x527830ff pmac_xpram_read +EXPORT_SYMBOL vmlinux 0x5278d97d inet_sendmsg +EXPORT_SYMBOL vmlinux 0x528c709d simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x529df4bf vfs_getattr +EXPORT_SYMBOL vmlinux 0x52acf5fa agp_generic_enable +EXPORT_SYMBOL vmlinux 0x52b9dca7 mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0x52c790da bio_integrity_get_tag +EXPORT_SYMBOL vmlinux 0x52ed2b7e pcim_iomap_table +EXPORT_SYMBOL vmlinux 0x52f0d778 jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x530b5ba7 lro_flush_pkt +EXPORT_SYMBOL vmlinux 0x5317d788 start_tty +EXPORT_SYMBOL vmlinux 0x531b5c03 inode_change_ok +EXPORT_SYMBOL vmlinux 0x531d7937 blk_queue_resize_tags +EXPORT_SYMBOL vmlinux 0x53326531 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x5341a0ea pci_write_vpd +EXPORT_SYMBOL vmlinux 0x53487376 rtmsg_ifinfo +EXPORT_SYMBOL vmlinux 0x535e12e9 devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0x5369273c padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x536a4de4 sock_update_memcg +EXPORT_SYMBOL vmlinux 0x5375fb9b seq_putc +EXPORT_SYMBOL vmlinux 0x5383082b pci_disable_link_state +EXPORT_SYMBOL vmlinux 0x538f706e path_get +EXPORT_SYMBOL vmlinux 0x539099f8 __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0x53bb01e2 vm_stat +EXPORT_SYMBOL vmlinux 0x53c6255f input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x53d4ca9b simple_transaction_set +EXPORT_SYMBOL vmlinux 0x53ebab1b _outsl_ns +EXPORT_SYMBOL vmlinux 0x53f7b456 skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x5409775b free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x5412c7c7 up +EXPORT_SYMBOL vmlinux 0x54212080 __nlmsg_put +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x544f46a7 cpufreq_global_kobject +EXPORT_SYMBOL vmlinux 0x5475faff napi_complete +EXPORT_SYMBOL vmlinux 0x54786a89 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x548275db blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0x549d97b2 ps2_begin_command +EXPORT_SYMBOL vmlinux 0x54a753e6 dquot_alloc +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54c44a4c sock_get_timestamp +EXPORT_SYMBOL vmlinux 0x54ca31b8 pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x54e3cc3b param_get_int +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54f139d4 input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0x550958dd input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0x550e1afe blk_get_request +EXPORT_SYMBOL vmlinux 0x550f28e0 vfs_path_lookup +EXPORT_SYMBOL vmlinux 0x55119c53 jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x55133f7f vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x5517308c i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x55279015 nlmsg_notify +EXPORT_SYMBOL vmlinux 0x55303b23 page_put_link +EXPORT_SYMBOL vmlinux 0x5541ea93 on_each_cpu +EXPORT_SYMBOL vmlinux 0x55467ede fsl_upm_find +EXPORT_SYMBOL vmlinux 0x5549253a tcf_hash_destroy +EXPORT_SYMBOL vmlinux 0x5567c227 kernel_cpustat +EXPORT_SYMBOL vmlinux 0x5568c553 complete +EXPORT_SYMBOL vmlinux 0x556c2740 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x5577ef9e udp_table +EXPORT_SYMBOL vmlinux 0x55860239 dev_activate +EXPORT_SYMBOL vmlinux 0x5590dadc abort_creds +EXPORT_SYMBOL vmlinux 0x5594be03 bitmap_remap +EXPORT_SYMBOL vmlinux 0x55de3224 inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0x5611779f tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0x5614b010 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x561d73f0 blk_end_request_all +EXPORT_SYMBOL vmlinux 0x56223812 neigh_update +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x5637dba5 bitmap_start_sync +EXPORT_SYMBOL vmlinux 0x5642793a radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x564ade73 _dev_info +EXPORT_SYMBOL vmlinux 0x5676927a simple_readpage +EXPORT_SYMBOL vmlinux 0x568563d0 bio_endio +EXPORT_SYMBOL vmlinux 0x568fc7d2 complete_request_key +EXPORT_SYMBOL vmlinux 0x56a10763 csum_tcpudp_magic +EXPORT_SYMBOL vmlinux 0x56ae9407 tty_unthrottle +EXPORT_SYMBOL vmlinux 0x56c2b95b rtas_progress +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56cfa721 blk_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x56f7798b blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0x57014f36 input_inject_event +EXPORT_SYMBOL vmlinux 0x570ae66a i2c_master_recv +EXPORT_SYMBOL vmlinux 0x572e85d4 blk_lookup_devt +EXPORT_SYMBOL vmlinux 0x574186e1 agp3_generic_tlbflush +EXPORT_SYMBOL vmlinux 0x574fc34b dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x5763cecd inet_bind +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x577d2316 skb_insert +EXPORT_SYMBOL vmlinux 0x577d9da0 netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x5785384a flex_array_free_parts +EXPORT_SYMBOL vmlinux 0x57958fca block_invalidatepage +EXPORT_SYMBOL vmlinux 0x57ad3c8f pcie_get_mps +EXPORT_SYMBOL vmlinux 0x57c664ff xfrm_register_type +EXPORT_SYMBOL vmlinux 0x57df4338 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0x57f48960 unmap_mapping_range +EXPORT_SYMBOL vmlinux 0x581269f1 generic_file_splice_write +EXPORT_SYMBOL vmlinux 0x581825d7 tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x582a4747 cacheable_memcpy +EXPORT_SYMBOL vmlinux 0x582d2d47 ppp_channel_index +EXPORT_SYMBOL vmlinux 0x5831cade inet_stream_connect +EXPORT_SYMBOL vmlinux 0x58335781 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x583b1225 ipmi_smi_add_proc_entry +EXPORT_SYMBOL vmlinux 0x5857b225 ioread16_rep +EXPORT_SYMBOL vmlinux 0x5860102e skb_seq_read +EXPORT_SYMBOL vmlinux 0x58623807 proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0x58664f2f setup_new_exec +EXPORT_SYMBOL vmlinux 0x587616f1 vfs_fstatat +EXPORT_SYMBOL vmlinux 0x58bf356d twl6040_power +EXPORT_SYMBOL vmlinux 0x58c8d02a napi_gro_receive +EXPORT_SYMBOL vmlinux 0x58c8db57 blk_queue_dma_pad +EXPORT_SYMBOL vmlinux 0x58d1070a of_get_address +EXPORT_SYMBOL vmlinux 0x58e88688 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x591241d0 register_sysctl_table +EXPORT_SYMBOL vmlinux 0x5935453b devm_ioremap_prot +EXPORT_SYMBOL vmlinux 0x593db6e8 splice_from_pipe_next +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x595d0946 empty_zero_page +EXPORT_SYMBOL vmlinux 0x59a20eab posix_test_lock +EXPORT_SYMBOL vmlinux 0x59b05865 buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0x59b3378a completion_done +EXPORT_SYMBOL vmlinux 0x59c451ba mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x59d8223a ioport_resource +EXPORT_SYMBOL vmlinux 0x59e00ad9 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0x59e1edd2 dev_add_pack +EXPORT_SYMBOL vmlinux 0x59f86efc ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x5a4fa681 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0x5a54e386 xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x5a5536c2 param_ops_invbool +EXPORT_SYMBOL vmlinux 0x5a5ecfe1 ip_route_me_harder +EXPORT_SYMBOL vmlinux 0x5a688e4d devm_iounmap +EXPORT_SYMBOL vmlinux 0x5a8fbf42 request_key +EXPORT_SYMBOL vmlinux 0x5ab04c61 blk_run_queue_async +EXPORT_SYMBOL vmlinux 0x5ab67931 do_IRQ +EXPORT_SYMBOL vmlinux 0x5ad9491c blkdev_get +EXPORT_SYMBOL vmlinux 0x5aef1e50 blk_mq_insert_request +EXPORT_SYMBOL vmlinux 0x5af35092 submit_bio_wait +EXPORT_SYMBOL vmlinux 0x5b01091b jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0x5b19634d div_s64_rem +EXPORT_SYMBOL vmlinux 0x5b374087 try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x5b39988e ftrace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0x5b3d675c sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0x5b3e947e generic_pipe_buf_confirm +EXPORT_SYMBOL vmlinux 0x5b43f1f1 rtas_service_present +EXPORT_SYMBOL vmlinux 0x5b81eeff set_blocksize +EXPORT_SYMBOL vmlinux 0x5b897f7c mmc_start_req +EXPORT_SYMBOL vmlinux 0x5b934cf6 phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0x5b938a7a padata_start +EXPORT_SYMBOL vmlinux 0x5b9828c5 dma_spin_lock +EXPORT_SYMBOL vmlinux 0x5ba4439a __page_symlink +EXPORT_SYMBOL vmlinux 0x5ba73e35 input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0x5bb9daec __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0x5bcceb2b cdrom_mode_select +EXPORT_SYMBOL vmlinux 0x5bdab9c0 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0x5bed57cc simple_open +EXPORT_SYMBOL vmlinux 0x5bf45ba6 dev_mc_sync +EXPORT_SYMBOL vmlinux 0x5bf63794 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x5bf8bd9d tcp_hashinfo +EXPORT_SYMBOL vmlinux 0x5c265cba sg_init_one +EXPORT_SYMBOL vmlinux 0x5c37f319 _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x5c8a9057 __bforget +EXPORT_SYMBOL vmlinux 0x5ca895f2 input_set_capability +EXPORT_SYMBOL vmlinux 0x5cccf65b mmc_can_sanitize +EXPORT_SYMBOL vmlinux 0x5ce31923 ioctl_by_bdev +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5cf7391a splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0x5d147c70 key_task_permission +EXPORT_SYMBOL vmlinux 0x5d16f5ab pci_get_subsys +EXPORT_SYMBOL vmlinux 0x5d1a1080 unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x5d205d6e module_layout +EXPORT_SYMBOL vmlinux 0x5d3d0279 netdev_features_change +EXPORT_SYMBOL vmlinux 0x5d41c87c param_ops_charp +EXPORT_SYMBOL vmlinux 0x5d4d7618 of_phy_connect_fixed_link +EXPORT_SYMBOL vmlinux 0x5d521989 vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0x5d550c4d scsi_sd_probe_domain +EXPORT_SYMBOL vmlinux 0x5d5b5a16 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x5d619829 blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0x5d6bdce1 flex_array_alloc +EXPORT_SYMBOL vmlinux 0x5d866485 gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0x5d8fb42f abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0x5de829d0 sock_kmalloc +EXPORT_SYMBOL vmlinux 0x5de95667 fb_set_var +EXPORT_SYMBOL vmlinux 0x5dfaf249 cfb_imageblit +EXPORT_SYMBOL vmlinux 0x5dfb2492 elv_rb_del +EXPORT_SYMBOL vmlinux 0x5dff5036 single_open +EXPORT_SYMBOL vmlinux 0x5e14e1b3 phy_device_free +EXPORT_SYMBOL vmlinux 0x5e27321b register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x5e39f5ac sock_alloc_file +EXPORT_SYMBOL vmlinux 0x5e3a8a9c __wake_up +EXPORT_SYMBOL vmlinux 0x5e529b19 __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x5e570912 d_add_ci +EXPORT_SYMBOL vmlinux 0x5e6980de security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0x5e80f37c ipmi_unregister_for_cmd +EXPORT_SYMBOL vmlinux 0x5e8c6ba5 get_user_pages +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5eb0401e proc_dostring +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5eb58a87 key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x5eb8916d netdev_crit +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5edf040e tty_mutex +EXPORT_SYMBOL vmlinux 0x5ef7473b wake_up_process +EXPORT_SYMBOL vmlinux 0x5f005368 kstrtou8 +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f28c2dc idr_remove +EXPORT_SYMBOL vmlinux 0x5f384663 nf_log_set +EXPORT_SYMBOL vmlinux 0x5f3c8f5c mmc_assume_removable +EXPORT_SYMBOL vmlinux 0x5f412a55 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0x5f549f71 ppc_md +EXPORT_SYMBOL vmlinux 0x5f754e5a memset +EXPORT_SYMBOL vmlinux 0x5f7d433c filemap_fdatawait +EXPORT_SYMBOL vmlinux 0x5f825add blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0x5f8a2728 isa_io_base +EXPORT_SYMBOL vmlinux 0x5fb0c815 netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0x5fcdcc05 ipmi_get_my_LUN +EXPORT_SYMBOL vmlinux 0x5fd3c4a7 sk_free +EXPORT_SYMBOL vmlinux 0x5fda0227 vfs_stat +EXPORT_SYMBOL vmlinux 0x5fe58dde netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0x5fe5fd45 lock_sock_fast +EXPORT_SYMBOL vmlinux 0x5fe86504 sock_i_uid +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x6045d957 ip6_frag_init +EXPORT_SYMBOL vmlinux 0x604fbd42 vfs_symlink +EXPORT_SYMBOL vmlinux 0x606d0b09 secure_tcpv6_sequence_number +EXPORT_SYMBOL vmlinux 0x6086fae9 rwsem_wake +EXPORT_SYMBOL vmlinux 0x608fbbe6 d_find_any_alias +EXPORT_SYMBOL vmlinux 0x60936a3a i2c_del_adapter +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60df1e3b posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x610e230d netdev_printk +EXPORT_SYMBOL vmlinux 0x6113eb36 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0x612390ad netpoll_set_trap +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x61468a16 scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x61538ad0 param_get_charp +EXPORT_SYMBOL vmlinux 0x616b825d dql_init +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61c8a111 eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0x61df88fc mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x61eef2c9 _insb +EXPORT_SYMBOL vmlinux 0x61f1458b vm_mmap +EXPORT_SYMBOL vmlinux 0x6200dc3e dma_pool_create +EXPORT_SYMBOL vmlinux 0x6204db1b pci_enable_msi_block +EXPORT_SYMBOL vmlinux 0x6208d276 mntget +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x6225637e md5_transform +EXPORT_SYMBOL vmlinux 0x6227ecb6 freeze_super +EXPORT_SYMBOL vmlinux 0x62280740 ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x623d7182 _chrp_type +EXPORT_SYMBOL vmlinux 0x623ff276 sg_miter_start +EXPORT_SYMBOL vmlinux 0x62538167 slhc_toss +EXPORT_SYMBOL vmlinux 0x62598794 alloc_buffer_head +EXPORT_SYMBOL vmlinux 0x626455e2 pmac_suspend_agp_for_card +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x62822d05 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x62827bec security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x628332e8 pmu_power_flags +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x62994137 tty_unlock +EXPORT_SYMBOL vmlinux 0x629fcb41 filemap_flush +EXPORT_SYMBOL vmlinux 0x62a2cb9e scsi_cmd_print_sense_hdr +EXPORT_SYMBOL vmlinux 0x62bf8bc4 bio_clone_bioset +EXPORT_SYMBOL vmlinux 0x62cf7e4b neigh_event_ns +EXPORT_SYMBOL vmlinux 0x62fdd9f1 nf_hook_slow +EXPORT_SYMBOL vmlinux 0x6303721d scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0x6306ef9d tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x63231951 gen_pool_create +EXPORT_SYMBOL vmlinux 0x636c7dcd make_kuid +EXPORT_SYMBOL vmlinux 0x637aa05d pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0x6385de50 neigh_table_clear +EXPORT_SYMBOL vmlinux 0x63afa021 set_user_nice +EXPORT_SYMBOL vmlinux 0x63bc5827 inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63f796d2 dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x63fc232f strlen_user +EXPORT_SYMBOL vmlinux 0x6403e338 tcp_memory_pressure +EXPORT_SYMBOL vmlinux 0x6444b4b8 netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0x6466943b __i2c_transfer +EXPORT_SYMBOL vmlinux 0x646cc6ab pmu_poll +EXPORT_SYMBOL vmlinux 0x647230e5 __lru_cache_add +EXPORT_SYMBOL vmlinux 0x647365c7 proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0x6491db79 bio_sector_offset +EXPORT_SYMBOL vmlinux 0x6495325b gen10g_restart_aneg +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x64dad7e7 bio_map_kern +EXPORT_SYMBOL vmlinux 0x64f9dedb thaw_bdev +EXPORT_SYMBOL vmlinux 0x64fb547d scsi_setup_blk_pc_cmnd +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x65400222 __irq_offset_value +EXPORT_SYMBOL vmlinux 0x65404624 register_key_type +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x65567500 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0x6585e310 alloc_pages_exact_nid +EXPORT_SYMBOL vmlinux 0x658e42c5 __f_setown +EXPORT_SYMBOL vmlinux 0x6590062c __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0x65ac01e4 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0x65b46f9d kill_anon_super +EXPORT_SYMBOL vmlinux 0x65bb58a2 _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65f3ad9a fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x666a8939 sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0x6674daaf __getblk +EXPORT_SYMBOL vmlinux 0x66834839 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x668d3f86 mmc_can_erase +EXPORT_SYMBOL vmlinux 0x668da8d5 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x669bc13a account_page_writeback +EXPORT_SYMBOL vmlinux 0x66cbf14b pmac_xpram_write +EXPORT_SYMBOL vmlinux 0x66e3d074 of_find_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0x66ede164 n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x66fb343e blk_bio_map_sg +EXPORT_SYMBOL vmlinux 0x6709e89f netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0x671c7153 pci_request_regions +EXPORT_SYMBOL vmlinux 0x67204ffc kill_pid +EXPORT_SYMBOL vmlinux 0x672ec68a dst_discard +EXPORT_SYMBOL vmlinux 0x673f815e agp_bridges +EXPORT_SYMBOL vmlinux 0x675b8f61 param_get_string +EXPORT_SYMBOL vmlinux 0x676a8aa0 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67cae113 dma_find_channel +EXPORT_SYMBOL vmlinux 0x67cb9784 ipmi_poll_interface +EXPORT_SYMBOL vmlinux 0x67f52f88 __napi_complete +EXPORT_SYMBOL vmlinux 0x67f8f5d1 bio_put +EXPORT_SYMBOL vmlinux 0x6849a15f flex_array_clear +EXPORT_SYMBOL vmlinux 0x68609857 complete_and_exit +EXPORT_SYMBOL vmlinux 0x687abf7d blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x687f71b0 iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0x68b7f95d dev_addr_add +EXPORT_SYMBOL vmlinux 0x68b83ac6 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x68bea5eb free_buffer_head +EXPORT_SYMBOL vmlinux 0x68d12370 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0x68e05d57 getrawmonotonic +EXPORT_SYMBOL vmlinux 0x68e7e775 blk_put_request +EXPORT_SYMBOL vmlinux 0x691274fc fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0x6961197d cap_mmap_file +EXPORT_SYMBOL vmlinux 0x6965381d pm860x_page_reg_read +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x69719ca7 __neigh_create +EXPORT_SYMBOL vmlinux 0x6973970c blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x697e6335 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0x6994222e agp_free_memory +EXPORT_SYMBOL vmlinux 0x699b8a73 genphy_update_link +EXPORT_SYMBOL vmlinux 0x69a0ca7d iowrite16be +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69c8ab47 inet6_add_offload +EXPORT_SYMBOL vmlinux 0x69d38ed9 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x69d7e5b8 __debugger_ipi +EXPORT_SYMBOL vmlinux 0x69e27c7a bitmap_copy_le +EXPORT_SYMBOL vmlinux 0x69f595c5 swiotlb_sync_single_for_device +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a05d53c eth_header_cache_update +EXPORT_SYMBOL vmlinux 0x6a096a30 blk_queue_find_tag +EXPORT_SYMBOL vmlinux 0x6a2bef5b powerpc_debugfs_root +EXPORT_SYMBOL vmlinux 0x6a3f4119 mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0x6a4d9ddd simple_getattr +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a61f874 to_tm +EXPORT_SYMBOL vmlinux 0x6a67145f ip_setsockopt +EXPORT_SYMBOL vmlinux 0x6a6da166 blk_mq_free_queue +EXPORT_SYMBOL vmlinux 0x6a76f3ac blk_iopoll_enable +EXPORT_SYMBOL vmlinux 0x6a796c07 __kfree_skb +EXPORT_SYMBOL vmlinux 0x6a844095 tty_do_resize +EXPORT_SYMBOL vmlinux 0x6ababa51 inet_frag_evictor +EXPORT_SYMBOL vmlinux 0x6acb973d iowrite32be +EXPORT_SYMBOL vmlinux 0x6ae4ef92 fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0x6aeec5e7 input_register_device +EXPORT_SYMBOL vmlinux 0x6b06fdce delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x6b1b67d3 __bdevname +EXPORT_SYMBOL vmlinux 0x6b26663b pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b5cad2b con_copy_unimap +EXPORT_SYMBOL vmlinux 0x6b7f1917 idr_find_slowpath +EXPORT_SYMBOL vmlinux 0x6b9690e2 seq_read +EXPORT_SYMBOL vmlinux 0x6bbc855e tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bceaebc gen_replace_estimator +EXPORT_SYMBOL vmlinux 0x6bdcfd99 qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x6beb2078 param_set_copystring +EXPORT_SYMBOL vmlinux 0x6c116937 agp_generic_mask_memory +EXPORT_SYMBOL vmlinux 0x6c1ce5ce strcspn +EXPORT_SYMBOL vmlinux 0x6c2faee3 clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x6c42188f tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0x6c4ab41e __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0x6c5000ac bitmap_endwrite +EXPORT_SYMBOL vmlinux 0x6c51a836 sysctl_tcp_notsent_lowat +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c665691 flex_array_shrink +EXPORT_SYMBOL vmlinux 0x6c702af7 sysctl_udp_rmem_min +EXPORT_SYMBOL vmlinux 0x6c879583 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x6c8c8c18 netdev_update_features +EXPORT_SYMBOL vmlinux 0x6ca1d1a4 atomic64_read +EXPORT_SYMBOL vmlinux 0x6ca5b0f8 __net_get_random_once +EXPORT_SYMBOL vmlinux 0x6cc30f97 splice_from_pipe_begin +EXPORT_SYMBOL vmlinux 0x6cd515d2 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0x6cdc5c6b nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6ce491f3 inet_frag_find +EXPORT_SYMBOL vmlinux 0x6cef6682 pci_choose_state +EXPORT_SYMBOL vmlinux 0x6d027711 gen10g_suspend +EXPORT_SYMBOL vmlinux 0x6d0c1ead dcb_setapp +EXPORT_SYMBOL vmlinux 0x6d0f1f89 dm_table_get_mode +EXPORT_SYMBOL vmlinux 0x6d0f9155 mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0x6d21eb2c skb_copy_datagram_from_iovec +EXPORT_SYMBOL vmlinux 0x6d24b9a4 read_dev_sector +EXPORT_SYMBOL vmlinux 0x6d27ef64 __bitmap_empty +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d464175 __sg_free_table +EXPORT_SYMBOL vmlinux 0x6d761d42 bio_pair_release +EXPORT_SYMBOL vmlinux 0x6d89130b init_buffer +EXPORT_SYMBOL vmlinux 0x6d958e41 security_path_symlink +EXPORT_SYMBOL vmlinux 0x6da928f4 _insw_ns +EXPORT_SYMBOL vmlinux 0x6dce60fa mutex_trylock +EXPORT_SYMBOL vmlinux 0x6dde3db4 tcp_init_cgroup +EXPORT_SYMBOL vmlinux 0x6def2db2 half_md4_transform +EXPORT_SYMBOL vmlinux 0x6df23888 add_disk +EXPORT_SYMBOL vmlinux 0x6e2c5612 iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0x6e3a46ed gen10g_resume +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e764332 idr_destroy +EXPORT_SYMBOL vmlinux 0x6e7644e0 dcache_dir_close +EXPORT_SYMBOL vmlinux 0x6e7eab98 __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x6e89f6d8 install_exec_creds +EXPORT_SYMBOL vmlinux 0x6e95c08d vfs_write +EXPORT_SYMBOL vmlinux 0x6eb74dff proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x6ebc5149 param_ops_long +EXPORT_SYMBOL vmlinux 0x6ee13ec3 dquot_enable +EXPORT_SYMBOL vmlinux 0x6ee893c0 __frontswap_load +EXPORT_SYMBOL vmlinux 0x6f20960a full_name_hash +EXPORT_SYMBOL vmlinux 0x6f2d8954 devm_ioremap +EXPORT_SYMBOL vmlinux 0x6f402559 bio_integrity_tag_size +EXPORT_SYMBOL vmlinux 0x6f463508 sock_setsockopt +EXPORT_SYMBOL vmlinux 0x6f50e03f max8998_bulk_read +EXPORT_SYMBOL vmlinux 0x6f5f9c24 devfreq_resume_device +EXPORT_SYMBOL vmlinux 0x6f85b211 ida_remove +EXPORT_SYMBOL vmlinux 0x6f918ae0 tcp_syn_flood_action +EXPORT_SYMBOL vmlinux 0x6f945111 release_firmware +EXPORT_SYMBOL vmlinux 0x6faee08c pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6ff3a2be security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0x6ffd0e57 dev_change_flags +EXPORT_SYMBOL vmlinux 0x7010b10f d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0x7011cb14 udp_ioctl +EXPORT_SYMBOL vmlinux 0x70523a7a __cond_resched_softirq +EXPORT_SYMBOL vmlinux 0x7054a3e4 request_dma +EXPORT_SYMBOL vmlinux 0x707f43f6 __ctzdi2 +EXPORT_SYMBOL vmlinux 0x7082fffd generic_pipe_buf_unmap +EXPORT_SYMBOL vmlinux 0x709de6c5 inet_stream_ops +EXPORT_SYMBOL vmlinux 0x709f3454 inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x70b8e0ec jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x70bc17d7 inode_wait +EXPORT_SYMBOL vmlinux 0x70d053fd try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x70d888b7 __debugger_fault_handler +EXPORT_SYMBOL vmlinux 0x70dc5da7 elevator_alloc +EXPORT_SYMBOL vmlinux 0x70f86c70 pmu_queue_request +EXPORT_SYMBOL vmlinux 0x71015cb8 __blk_end_request +EXPORT_SYMBOL vmlinux 0x7113e764 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0x711a0f73 tty_throttle +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x712ad0fc request_firmware +EXPORT_SYMBOL vmlinux 0x712b5c97 phy_init_eee +EXPORT_SYMBOL vmlinux 0x71423699 pneigh_lookup +EXPORT_SYMBOL vmlinux 0x7144222d elv_rb_find +EXPORT_SYMBOL vmlinux 0x7159f133 dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x716285c7 dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x7164a192 make_kprojid +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x7172af83 pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0x71743acc truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0x71850267 inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x7192c48d ata_link_printk +EXPORT_SYMBOL vmlinux 0x71968849 dev_remove_pack +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71b0322a zerocopy_sg_from_iovec +EXPORT_SYMBOL vmlinux 0x71b3ed65 ihold +EXPORT_SYMBOL vmlinux 0x71b6eb5a dm_io +EXPORT_SYMBOL vmlinux 0x71bcb78a __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x71c90087 memcmp +EXPORT_SYMBOL vmlinux 0x71d5b162 agp_alloc_page_array +EXPORT_SYMBOL vmlinux 0x71da88b4 bio_copy_kern +EXPORT_SYMBOL vmlinux 0x71dc51b1 blk_queue_make_request +EXPORT_SYMBOL vmlinux 0x71f65175 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x720d7b42 generic_file_remap_pages +EXPORT_SYMBOL vmlinux 0x720e3122 ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x722e672a bio_alloc_pages +EXPORT_SYMBOL vmlinux 0x72392b89 thaw_super +EXPORT_SYMBOL vmlinux 0x72454aa6 mmc_of_parse +EXPORT_SYMBOL vmlinux 0x72501694 inc_nlink +EXPORT_SYMBOL vmlinux 0x729853d4 jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0x729d512b vm_event_states +EXPORT_SYMBOL vmlinux 0x72b103f7 inode_dio_wait +EXPORT_SYMBOL vmlinux 0x72b243d4 free_dma +EXPORT_SYMBOL vmlinux 0x72b5b2b7 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x72b632e0 ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x72b92957 xfrm_register_mode +EXPORT_SYMBOL vmlinux 0x72d58de9 kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0x72d935b0 blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72ff5377 max8925_reg_read +EXPORT_SYMBOL vmlinux 0x730f6e23 phy_start_interrupts +EXPORT_SYMBOL vmlinux 0x7312a9d7 skb_queue_purge +EXPORT_SYMBOL vmlinux 0x7315a4e9 twl6030_mmc_card_detect_config +EXPORT_SYMBOL vmlinux 0x73183a3d inet6_register_protosw +EXPORT_SYMBOL vmlinux 0x732e27f9 key_invalidate +EXPORT_SYMBOL vmlinux 0x73304796 agp_generic_alloc_by_type +EXPORT_SYMBOL vmlinux 0x733c3b54 kasprintf +EXPORT_SYMBOL vmlinux 0x735d8503 add_wait_queue +EXPORT_SYMBOL vmlinux 0x736956bf tc_classify +EXPORT_SYMBOL vmlinux 0x73701920 nobh_truncate_page +EXPORT_SYMBOL vmlinux 0x73710a3e dqstats +EXPORT_SYMBOL vmlinux 0x73754504 put_disk +EXPORT_SYMBOL vmlinux 0x737de5e9 radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0x738ef550 flush_tlb_page +EXPORT_SYMBOL vmlinux 0x73c0c00f nla_append +EXPORT_SYMBOL vmlinux 0x73e20c1c strlcpy +EXPORT_SYMBOL vmlinux 0x73eed5dd decrementer_clockevent +EXPORT_SYMBOL vmlinux 0x7409a1f3 d_invalidate +EXPORT_SYMBOL vmlinux 0x7429a10c vfs_read +EXPORT_SYMBOL vmlinux 0x743968ad mmc_interrupt_hpi +EXPORT_SYMBOL vmlinux 0x743d70e0 scsi_rescan_device +EXPORT_SYMBOL vmlinux 0x74477fd8 dma_async_device_register +EXPORT_SYMBOL vmlinux 0x7447e10d sk_common_release +EXPORT_SYMBOL vmlinux 0x7469fcfe radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x747195f0 hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x747eb2fe bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x7485e15e unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x74884010 dev_mc_init +EXPORT_SYMBOL vmlinux 0x74a26cbb vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0x74a517e6 pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0x74c07d6e sock_kfree_s +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74ce05b8 flush_delayed_work +EXPORT_SYMBOL vmlinux 0x74e118d1 blk_queue_init_tags +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74fe8730 sys_ctrler +EXPORT_SYMBOL vmlinux 0x7505bdef memchr_inv +EXPORT_SYMBOL vmlinux 0x750a833d jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0x750c719e dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x751c2917 __wait_on_bit +EXPORT_SYMBOL vmlinux 0x7523ff24 nf_log_unset +EXPORT_SYMBOL vmlinux 0x752a871c mem_map +EXPORT_SYMBOL vmlinux 0x7538b132 agp_off +EXPORT_SYMBOL vmlinux 0x754dac78 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x755050b1 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x7554cdee cdev_del +EXPORT_SYMBOL vmlinux 0x756dd160 start_thread +EXPORT_SYMBOL vmlinux 0x7571dc41 audit_log_task_info +EXPORT_SYMBOL vmlinux 0x7593d385 div64_s64 +EXPORT_SYMBOL vmlinux 0x75994700 add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0x75bcff80 kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75bdea12 iommu_area_alloc +EXPORT_SYMBOL vmlinux 0x760646de block_commit_write +EXPORT_SYMBOL vmlinux 0x7609b28a inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x7618e6b3 vfs_llseek +EXPORT_SYMBOL vmlinux 0x761d442a ps2_end_command +EXPORT_SYMBOL vmlinux 0x764125ac dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x765c805a dm_unregister_target +EXPORT_SYMBOL vmlinux 0x7668d0e6 d_instantiate_unique +EXPORT_SYMBOL vmlinux 0x7678487e read_cache_pages +EXPORT_SYMBOL vmlinux 0x76bf656d __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76e06127 kernel_sock_ioctl +EXPORT_SYMBOL vmlinux 0x76e8f30f blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0x76eb9385 dquot_resume +EXPORT_SYMBOL vmlinux 0x76ebead4 dmam_alloc_coherent +EXPORT_SYMBOL vmlinux 0x76f234b1 ktime_get_clocktai +EXPORT_SYMBOL vmlinux 0x772729bc bd_set_size +EXPORT_SYMBOL vmlinux 0x7729f934 ilookup +EXPORT_SYMBOL vmlinux 0x773a9c94 blk_iopoll_enabled +EXPORT_SYMBOL vmlinux 0x7770b233 pcim_iomap +EXPORT_SYMBOL vmlinux 0x77717182 serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0x77838357 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x77b851c4 cacheable_memzero +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77c09f54 __dquot_transfer +EXPORT_SYMBOL vmlinux 0x77c14616 tcp_gro_receive +EXPORT_SYMBOL vmlinux 0x77c3a2b5 netpoll_rx_enable +EXPORT_SYMBOL vmlinux 0x77df0847 __set_personality +EXPORT_SYMBOL vmlinux 0x77ecac9f zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x780207be sk_run_filter +EXPORT_SYMBOL vmlinux 0x7810a177 unlink_framebuffer +EXPORT_SYMBOL vmlinux 0x781624bf fput +EXPORT_SYMBOL vmlinux 0x781dccef ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0x7822f54d scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0x782567ec memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0x783b3563 wake_up_atomic_t +EXPORT_SYMBOL vmlinux 0x784a9b92 have_submounts +EXPORT_SYMBOL vmlinux 0x78509173 put_page +EXPORT_SYMBOL vmlinux 0x786ccecd rtnl_create_link +EXPORT_SYMBOL vmlinux 0x7880ba87 send_sig_info +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x7888b888 mac_find_mode +EXPORT_SYMBOL vmlinux 0x788fe103 iomem_resource +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78c147f8 __get_user_pages +EXPORT_SYMBOL vmlinux 0x78c53221 lookup_one_len +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78f72ab1 atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x78fd36e7 ipmi_request_supply_msgs +EXPORT_SYMBOL vmlinux 0x7905d96c dev_uc_sync +EXPORT_SYMBOL vmlinux 0x790df6ca __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x7930d225 of_device_is_compatible +EXPORT_SYMBOL vmlinux 0x793f97ef neigh_lookup +EXPORT_SYMBOL vmlinux 0x794884a4 devm_ioremap_nocache +EXPORT_SYMBOL vmlinux 0x7955766a tcp_init_sock +EXPORT_SYMBOL vmlinux 0x795bc0e4 security_task_getsecid +EXPORT_SYMBOL vmlinux 0x79667d10 blk_execute_rq +EXPORT_SYMBOL vmlinux 0x796fc5ce scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0x798411ad blk_mq_can_queue +EXPORT_SYMBOL vmlinux 0x79a02593 sk_stream_write_space +EXPORT_SYMBOL vmlinux 0x79a25eed __serio_register_port +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79df128b copy_strings_kernel +EXPORT_SYMBOL vmlinux 0x7a188791 prandom_bytes +EXPORT_SYMBOL vmlinux 0x7a27c184 ewma_init +EXPORT_SYMBOL vmlinux 0x7a3ab65f tcp_prequeue +EXPORT_SYMBOL vmlinux 0x7a430a2f netif_carrier_on +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a61f2be dev_set_group +EXPORT_SYMBOL vmlinux 0x7a8e6ebe kobject_init +EXPORT_SYMBOL vmlinux 0x7a925833 cpufreq_get_global_kobject +EXPORT_SYMBOL vmlinux 0x7a999ef0 noop_qdisc +EXPORT_SYMBOL vmlinux 0x7a9bc700 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7ad703fb uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x7adc8144 ll_rw_block +EXPORT_SYMBOL vmlinux 0x7add44b5 posix_acl_valid +EXPORT_SYMBOL vmlinux 0x7afa89fc vsnprintf +EXPORT_SYMBOL vmlinux 0x7aff5876 mpage_readpages +EXPORT_SYMBOL vmlinux 0x7aff6dce console_start +EXPORT_SYMBOL vmlinux 0x7b022084 bitmap_unplug +EXPORT_SYMBOL vmlinux 0x7b1ade38 lz4_decompress +EXPORT_SYMBOL vmlinux 0x7b22ebd7 macio_dev_put +EXPORT_SYMBOL vmlinux 0x7b5c8440 vm_munmap +EXPORT_SYMBOL vmlinux 0x7b8067b0 agp_allocate_memory +EXPORT_SYMBOL vmlinux 0x7be1cc3c dst_release +EXPORT_SYMBOL vmlinux 0x7be4827c pci_dram_offset +EXPORT_SYMBOL vmlinux 0x7bfe8bc1 netpoll_send_skb_on_dev +EXPORT_SYMBOL vmlinux 0x7c003aef _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0x7c0f6e4a __serio_register_driver +EXPORT_SYMBOL vmlinux 0x7c1372e8 panic +EXPORT_SYMBOL vmlinux 0x7c23dee5 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c4ba457 __netif_schedule +EXPORT_SYMBOL vmlinux 0x7c853d25 pneigh_enqueue +EXPORT_SYMBOL vmlinux 0x7c9291d1 csum_partial_copy_generic +EXPORT_SYMBOL vmlinux 0x7c92efce scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x7c98845d twl_i2c_read +EXPORT_SYMBOL vmlinux 0x7c9f0788 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0x7cb1ae69 cpu_down +EXPORT_SYMBOL vmlinux 0x7cc578da param_get_long +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7ce45a59 shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0x7cf8f1b0 deactivate_super +EXPORT_SYMBOL vmlinux 0x7cfa6ba8 arp_find +EXPORT_SYMBOL vmlinux 0x7d094d0b sync_blockdev +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d11c268 jiffies +EXPORT_SYMBOL vmlinux 0x7d1edd9a freezing_slow_path +EXPORT_SYMBOL vmlinux 0x7d60ec4c xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0x7d7f5fc6 ftrace_print_symbols_seq_u64 +EXPORT_SYMBOL vmlinux 0x7d8c371f serio_close +EXPORT_SYMBOL vmlinux 0x7d95d033 swiotlb_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0x7dbc6309 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0x7dc0e109 idr_get_next +EXPORT_SYMBOL vmlinux 0x7dc15c56 tcf_action_exec +EXPORT_SYMBOL vmlinux 0x7dc27a85 generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0x7dc97879 rtas_get_error_log_max +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7dfeb321 dump_skip +EXPORT_SYMBOL vmlinux 0x7e1bd1d4 from_kgid +EXPORT_SYMBOL vmlinux 0x7e37eb81 mmc_register_driver +EXPORT_SYMBOL vmlinux 0x7e394c4e sysctl_local_reserved_ports +EXPORT_SYMBOL vmlinux 0x7e49f281 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0x7e63de81 __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x7e87227e slhc_compress +EXPORT_SYMBOL vmlinux 0x7e8762c5 filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0x7e90504b inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x7ea3ac5c pskb_expand_head +EXPORT_SYMBOL vmlinux 0x7eb203a5 dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0x7eb53147 cdev_alloc +EXPORT_SYMBOL vmlinux 0x7edf6b45 qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0x7ee73c0c memcg_socket_limit_enabled +EXPORT_SYMBOL vmlinux 0x7ef4f75e netpoll_rx_disable +EXPORT_SYMBOL vmlinux 0x7ef8ecb8 skb_make_writable +EXPORT_SYMBOL vmlinux 0x7efacf87 dev_mc_add +EXPORT_SYMBOL vmlinux 0x7f047d71 pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0x7f131578 skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f3746a1 fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0x7f58da0f adb_client_list +EXPORT_SYMBOL vmlinux 0x7f5c06d4 __bread +EXPORT_SYMBOL vmlinux 0x7f6839d5 sock_sendmsg +EXPORT_SYMBOL vmlinux 0x7f6a1969 sock_rfree +EXPORT_SYMBOL vmlinux 0x7f6ef614 blk_delay_queue +EXPORT_SYMBOL vmlinux 0x7f7ed288 mmc_read_bkops_status +EXPORT_SYMBOL vmlinux 0x7f91e5da simple_fill_super +EXPORT_SYMBOL vmlinux 0x7faa7145 uart_resume_port +EXPORT_SYMBOL vmlinux 0x7fbff506 lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x7fe1dda7 mmc_start_bkops +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7ffd19de pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0x800ce7bf tty_port_close +EXPORT_SYMBOL vmlinux 0x800d893d kfree_skb_partial +EXPORT_SYMBOL vmlinux 0x802cdf87 phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0x8035772c input_reset_device +EXPORT_SYMBOL vmlinux 0x803af0a1 __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0x804f922a ipmi_addr_length +EXPORT_SYMBOL vmlinux 0x80700d8b mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0x808a79c4 __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0x809b54be seq_path +EXPORT_SYMBOL vmlinux 0x809edeb7 nonseekable_open +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80cb68cd path_put +EXPORT_SYMBOL vmlinux 0x80cf3112 max8998_write_reg +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80f9dbbe i2c_bit_add_numbered_bus +EXPORT_SYMBOL vmlinux 0x812496d7 scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x8139cfea alloc_mdio_bitbang +EXPORT_SYMBOL vmlinux 0x813cb77e md_wakeup_thread +EXPORT_SYMBOL vmlinux 0x8149bb47 elevator_exit +EXPORT_SYMBOL vmlinux 0x8149c0d4 bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0x814e7730 nf_ct_destroy +EXPORT_SYMBOL vmlinux 0x8158a13a phy_driver_unregister +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x8169ef15 tcf_generic_walker +EXPORT_SYMBOL vmlinux 0x816afee7 set_bh_page +EXPORT_SYMBOL vmlinux 0x81703815 eth_header_parse +EXPORT_SYMBOL vmlinux 0x81819480 cpu_sibling_map +EXPORT_SYMBOL vmlinux 0x8181c83d pci_claim_resource +EXPORT_SYMBOL vmlinux 0x818752e3 dev_trans_start +EXPORT_SYMBOL vmlinux 0x818b76b4 mach_chrp +EXPORT_SYMBOL vmlinux 0x81a07f4e _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0x81c0a84f rtas_set_indicator +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81e228a2 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x81eae4d5 __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x82077d83 mmc_cache_ctrl +EXPORT_SYMBOL vmlinux 0x820962e1 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0x820f99d0 flush_dcache_page +EXPORT_SYMBOL vmlinux 0x8221522f fs_bio_set +EXPORT_SYMBOL vmlinux 0x8251bcc3 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x8260686f bitmap_find_next_zero_area +EXPORT_SYMBOL vmlinux 0x82611cbe serio_rescan +EXPORT_SYMBOL vmlinux 0x826acedc uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x827054aa bio_copy_data +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x8297c91e tcp_prot +EXPORT_SYMBOL vmlinux 0x82acfb70 blk_iopoll_sched +EXPORT_SYMBOL vmlinux 0x82b7be53 dqget +EXPORT_SYMBOL vmlinux 0x82d6a3f5 dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0x82e5a238 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x8311ad92 uart_get_divisor +EXPORT_SYMBOL vmlinux 0x832a0c7e pci_iomap +EXPORT_SYMBOL vmlinux 0x8333ab89 poll_freewait +EXPORT_SYMBOL vmlinux 0x835cf76b jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0x837d872f i2c_clients_command +EXPORT_SYMBOL vmlinux 0x8380bab0 agp_backend_release +EXPORT_SYMBOL vmlinux 0x83a476ce bitmap_scnlistprintf +EXPORT_SYMBOL vmlinux 0x83ed3217 lease_modify +EXPORT_SYMBOL vmlinux 0x8401ba8b commit_creds +EXPORT_SYMBOL vmlinux 0x84137f60 scsi_adjust_queue_depth +EXPORT_SYMBOL vmlinux 0x841962f8 param_get_ushort +EXPORT_SYMBOL vmlinux 0x844404cf ISA_DMA_THRESHOLD +EXPORT_SYMBOL vmlinux 0x8455c6f0 wireless_send_event +EXPORT_SYMBOL vmlinux 0x846359cf mmc_alloc_host +EXPORT_SYMBOL vmlinux 0x84a2334a truncate_setsize +EXPORT_SYMBOL vmlinux 0x84a8ea92 i2c_release_client +EXPORT_SYMBOL vmlinux 0x84ae702d fb_pan_display +EXPORT_SYMBOL vmlinux 0x84b183ae strncmp +EXPORT_SYMBOL vmlinux 0x84bd69bf dq_data_lock +EXPORT_SYMBOL vmlinux 0x84ffea8b idr_preload +EXPORT_SYMBOL vmlinux 0x8509c540 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0x8518eca9 param_get_short +EXPORT_SYMBOL vmlinux 0x85202356 scsi_host_get +EXPORT_SYMBOL vmlinux 0x8526e765 security_path_rmdir +EXPORT_SYMBOL vmlinux 0x8533f168 tcp_poll +EXPORT_SYMBOL vmlinux 0x853bf7c1 param_set_int +EXPORT_SYMBOL vmlinux 0x8541bccc intercept_table +EXPORT_SYMBOL vmlinux 0x854e1c0b sg_nents +EXPORT_SYMBOL vmlinux 0x85591b7e block_read_full_page +EXPORT_SYMBOL vmlinux 0x855f7e24 vfs_statfs +EXPORT_SYMBOL vmlinux 0x85648e43 end_page_writeback +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x85827bdd pci_target_state +EXPORT_SYMBOL vmlinux 0x85963561 pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85c53cf9 swiotlb_unmap_sg_attrs +EXPORT_SYMBOL vmlinux 0x85d0260c gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0x85d1c3dc inetdev_by_index +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85e7deb2 iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0x863e41e7 i2c_register_driver +EXPORT_SYMBOL vmlinux 0x864da400 bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x865534d7 inet_frag_kill +EXPORT_SYMBOL vmlinux 0x86629a28 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0x8664f62e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0x86728b9f security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x867deaee bio_init +EXPORT_SYMBOL vmlinux 0x8681432a inode_capable +EXPORT_SYMBOL vmlinux 0x8689f525 pipe_unlock +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x8692a752 alloc_disk_node +EXPORT_SYMBOL vmlinux 0x86978394 mount_nodev +EXPORT_SYMBOL vmlinux 0x869c7bc5 scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0x869f40da km_query +EXPORT_SYMBOL vmlinux 0x86a4889a kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0x86b41386 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0x86bf6220 inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x86c5c0e0 tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0x86db1cbb rtas_flash_term_hook +EXPORT_SYMBOL vmlinux 0x86f70184 __genl_register_family +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x870bf928 radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x871c0a7e fiemap_check_flags +EXPORT_SYMBOL vmlinux 0x87364676 i2c_add_adapter +EXPORT_SYMBOL vmlinux 0x873c4799 ip_ct_attach +EXPORT_SYMBOL vmlinux 0x874f7f6a pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x87709b38 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x8779a34f param_ops_byte +EXPORT_SYMBOL vmlinux 0x878ab3ce sysctl_tcp_adv_win_scale +EXPORT_SYMBOL vmlinux 0x8791eab7 ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0x8798e453 __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0x87c0d11f bioset_create +EXPORT_SYMBOL vmlinux 0x87c340db __scm_destroy +EXPORT_SYMBOL vmlinux 0x87fb0fd0 __ps2_command +EXPORT_SYMBOL vmlinux 0x881039d0 zlib_inflate +EXPORT_SYMBOL vmlinux 0x882aa590 lease_get_mtime +EXPORT_SYMBOL vmlinux 0x883251c6 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0x8834396c mod_timer +EXPORT_SYMBOL vmlinux 0x8841407b nf_register_sockopt +EXPORT_SYMBOL vmlinux 0x88468b18 set_security_override +EXPORT_SYMBOL vmlinux 0x88489bc5 i8042_remove_filter +EXPORT_SYMBOL vmlinux 0x88513970 param_set_byte +EXPORT_SYMBOL vmlinux 0x886a34a8 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x887cc4ab __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x8891be82 flush_icache_user_range +EXPORT_SYMBOL vmlinux 0x88b1c0dc skb_store_bits +EXPORT_SYMBOL vmlinux 0x88ed23a8 pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0x88ef945f tcp_proc_register +EXPORT_SYMBOL vmlinux 0x88ff221c inode_init_always +EXPORT_SYMBOL vmlinux 0x891fbb10 mempool_destroy +EXPORT_SYMBOL vmlinux 0x89415e54 pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0x8953f8ff __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x8961ebcf blk_alloc_queue +EXPORT_SYMBOL vmlinux 0x897473df mktime +EXPORT_SYMBOL vmlinux 0x89797060 _raw_read_lock +EXPORT_SYMBOL vmlinux 0x897f061d downgrade_write +EXPORT_SYMBOL vmlinux 0x898eb3f6 ab3100_event_register +EXPORT_SYMBOL vmlinux 0x899c75bc mutex_unlock +EXPORT_SYMBOL vmlinux 0x899f2998 dma_set_mask +EXPORT_SYMBOL vmlinux 0x89acbc59 simple_write_end +EXPORT_SYMBOL vmlinux 0x89b3107b isa_mem_base +EXPORT_SYMBOL vmlinux 0x89d37756 udp_sendmsg +EXPORT_SYMBOL vmlinux 0x89d5538d fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x89dae980 ipv6_select_ident +EXPORT_SYMBOL vmlinux 0x89ddbc7e bdi_init +EXPORT_SYMBOL vmlinux 0x89ee42a9 dcache_dir_open +EXPORT_SYMBOL vmlinux 0x89f13fd3 pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0x8a1ab4ee timeval_to_jiffies +EXPORT_SYMBOL vmlinux 0x8a2cf12b alloc_fcdev +EXPORT_SYMBOL vmlinux 0x8a36636c dev_set_mtu +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a51d565 quota_send_warning +EXPORT_SYMBOL vmlinux 0x8a776ee1 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a876f54 ida_init +EXPORT_SYMBOL vmlinux 0x8a975573 __bio_clone +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8aa76dcc xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x8ab4079e atomic64_add +EXPORT_SYMBOL vmlinux 0x8ac52fea sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0x8addab66 proto_unregister +EXPORT_SYMBOL vmlinux 0x8ae44a1c nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x8ae4c3c1 tcf_hash_new_index +EXPORT_SYMBOL vmlinux 0x8afd0184 kernel_listen +EXPORT_SYMBOL vmlinux 0x8b0b05fd dquot_commit +EXPORT_SYMBOL vmlinux 0x8b16cf75 elv_register_queue +EXPORT_SYMBOL vmlinux 0x8b1a7a66 pcie_aspm_enabled +EXPORT_SYMBOL vmlinux 0x8b3fb8e7 pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x8b43159b register_cpu_notifier +EXPORT_SYMBOL vmlinux 0x8b501562 kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8ba5b20b netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x8bc03c91 do_truncate +EXPORT_SYMBOL vmlinux 0x8bce6d4f sock_recvmsg +EXPORT_SYMBOL vmlinux 0x8bfcfe4d __generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x8c183cbe iowrite16 +EXPORT_SYMBOL vmlinux 0x8c23721b inet_addr_type +EXPORT_SYMBOL vmlinux 0x8c39de1d phy_stop_interrupts +EXPORT_SYMBOL vmlinux 0x8c3f2c08 sync_inode_metadata +EXPORT_SYMBOL vmlinux 0x8c637d43 irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x8c706e65 seq_printf +EXPORT_SYMBOL vmlinux 0x8c7f3dfb page_follow_link_light +EXPORT_SYMBOL vmlinux 0x8c8ee770 ipmi_destroy_user +EXPORT_SYMBOL vmlinux 0x8c99efee macio_unregister_driver +EXPORT_SYMBOL vmlinux 0x8caf9cf5 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0x8cbacc70 kmap_atomic_prot +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8d005414 softnet_data +EXPORT_SYMBOL vmlinux 0x8d015dd4 __bswapdi2 +EXPORT_SYMBOL vmlinux 0x8d191c19 agp_collect_device_status +EXPORT_SYMBOL vmlinux 0x8d1b94bf kdb_current_task +EXPORT_SYMBOL vmlinux 0x8d2e268b param_ops_ulong +EXPORT_SYMBOL vmlinux 0x8d4a1ee9 shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x8d551bef sysctl_tcp_rmem +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d5f1d20 pci_disable_msix +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d9bd80b eth_validate_addr +EXPORT_SYMBOL vmlinux 0x8dad820a ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x8dbbb308 write_dirty_buffer +EXPORT_SYMBOL vmlinux 0x8dbe1d9e __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x8dd0d907 cdev_init +EXPORT_SYMBOL vmlinux 0x8dd7ea61 i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0x8de0b5ac mempool_create +EXPORT_SYMBOL vmlinux 0x8df0952e bdget_disk +EXPORT_SYMBOL vmlinux 0x8df5da63 memstart_addr +EXPORT_SYMBOL vmlinux 0x8e0d66f4 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x8e194c01 md_unregister_thread +EXPORT_SYMBOL vmlinux 0x8e22c349 scsi_dma_map +EXPORT_SYMBOL vmlinux 0x8e37d69b blk_mq_run_queues +EXPORT_SYMBOL vmlinux 0x8e59070e inet_getname +EXPORT_SYMBOL vmlinux 0x8e864a86 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x8ea22d45 insert_inode_locked +EXPORT_SYMBOL vmlinux 0x8ec04552 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0x8ecd3612 misc_register +EXPORT_SYMBOL vmlinux 0x8ed38c64 scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x8f045d1c cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x8f2cd3da pci_fixup_device +EXPORT_SYMBOL vmlinux 0x8f472f2c scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0x8f4f3456 __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x8f85f835 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x8f96e1a4 netif_receive_skb +EXPORT_SYMBOL vmlinux 0x8f99eca6 fb_show_logo +EXPORT_SYMBOL vmlinux 0x8f9cd411 user_path_create +EXPORT_SYMBOL vmlinux 0x8f9f1dd6 clear_inode +EXPORT_SYMBOL vmlinux 0x8faa4598 of_translate_address +EXPORT_SYMBOL vmlinux 0x8fabc615 file_ns_capable +EXPORT_SYMBOL vmlinux 0x8fba964f cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0x8fbf37e0 profile_pc +EXPORT_SYMBOL vmlinux 0x8fd30420 vfs_rmdir +EXPORT_SYMBOL vmlinux 0x8fe0d817 filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x8ff7a0e2 __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x8ffdb3b8 crc16 +EXPORT_SYMBOL vmlinux 0x900953fd xfrm_input +EXPORT_SYMBOL vmlinux 0x900b432e scsi_host_set_state +EXPORT_SYMBOL vmlinux 0x902753f0 xfrm4_prepare_output +EXPORT_SYMBOL vmlinux 0x903692d4 find_get_pages_contig +EXPORT_SYMBOL vmlinux 0x9039a350 force_sig +EXPORT_SYMBOL vmlinux 0x90479345 generic_block_bmap +EXPORT_SYMBOL vmlinux 0x9048309b tcp_proto_cgroup +EXPORT_SYMBOL vmlinux 0x90501868 transfer_to_handler +EXPORT_SYMBOL vmlinux 0x9086b671 pci_reenable_device +EXPORT_SYMBOL vmlinux 0x908b53ed param_set_short +EXPORT_SYMBOL vmlinux 0x909ce163 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0x90c456b0 scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0x90c5e819 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x90d380a8 dquot_initialize +EXPORT_SYMBOL vmlinux 0x90e146c2 trace_seq_putc +EXPORT_SYMBOL vmlinux 0x90e2680d scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0x90f184b8 inet6_getname +EXPORT_SYMBOL vmlinux 0x910d50be mount_pseudo +EXPORT_SYMBOL vmlinux 0x912557ce rtas_busy_delay +EXPORT_SYMBOL vmlinux 0x91463b1d kstrtos16 +EXPORT_SYMBOL vmlinux 0x915e1208 tb_ticks_per_usec +EXPORT_SYMBOL vmlinux 0x91621d6a allocate_resource +EXPORT_SYMBOL vmlinux 0x9168c033 rtas_get_sensor +EXPORT_SYMBOL vmlinux 0x91715312 sprintf +EXPORT_SYMBOL vmlinux 0x917d31d6 i8042_install_filter +EXPORT_SYMBOL vmlinux 0x91889232 bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x919d1163 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x91c7b479 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x91cceeea pmac_register_agp_pm +EXPORT_SYMBOL vmlinux 0x91dce378 sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x92194905 generic_removexattr +EXPORT_SYMBOL vmlinux 0x92305997 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x9245f9c8 dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0x9251de0d unlock_page +EXPORT_SYMBOL vmlinux 0x925520d2 blk_start_plug +EXPORT_SYMBOL vmlinux 0x92679927 tty_kref_put +EXPORT_SYMBOL vmlinux 0x9296107a generic_file_llseek +EXPORT_SYMBOL vmlinux 0x92a20eae wait_for_key_construction +EXPORT_SYMBOL vmlinux 0x92a9c60c time_to_tm +EXPORT_SYMBOL vmlinux 0x92bc220b lockref_get +EXPORT_SYMBOL vmlinux 0x92c1a886 dev_notice +EXPORT_SYMBOL vmlinux 0x92e88e7c tty_hangup +EXPORT_SYMBOL vmlinux 0x92f80fe9 file_remove_suid +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x9309de94 cuda_request +EXPORT_SYMBOL vmlinux 0x9312d2d4 backlight_device_register +EXPORT_SYMBOL vmlinux 0x93215e1d __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0x932b97e4 dma_sync_wait +EXPORT_SYMBOL vmlinux 0x9330cb9f sg_alloc_table +EXPORT_SYMBOL vmlinux 0x933346d1 generic_setlease +EXPORT_SYMBOL vmlinux 0x93448c57 screen_info +EXPORT_SYMBOL vmlinux 0x934aa368 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x938019da generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x939826d4 xfrm_init_replay +EXPORT_SYMBOL vmlinux 0x93a2c1d7 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93cfaaad ip6_route_output +EXPORT_SYMBOL vmlinux 0x93d9d5ee nf_log_register +EXPORT_SYMBOL vmlinux 0x93dd27ab blk_end_request_cur +EXPORT_SYMBOL vmlinux 0x93e37f52 __mem_cgroup_count_vm_event +EXPORT_SYMBOL vmlinux 0x93f9a6c1 sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0x93fca811 __get_free_pages +EXPORT_SYMBOL vmlinux 0x93ffd86e skb_checksum +EXPORT_SYMBOL vmlinux 0x940ae49c twl6040_set_bits +EXPORT_SYMBOL vmlinux 0x941ea2d8 of_phy_connect +EXPORT_SYMBOL vmlinux 0x94231103 get_disk +EXPORT_SYMBOL vmlinux 0x942a7b4a i2c_get_adapter +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x94b02a05 scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0x94cb5b65 posix_unblock_lock +EXPORT_SYMBOL vmlinux 0x94cbd061 dql_reset +EXPORT_SYMBOL vmlinux 0x94f320ad __brelse +EXPORT_SYMBOL vmlinux 0x94f8fbd3 tty_port_hangup +EXPORT_SYMBOL vmlinux 0x9508f166 param_ops_bint +EXPORT_SYMBOL vmlinux 0x9514151a _mcount +EXPORT_SYMBOL vmlinux 0x9524b0ae _outsb +EXPORT_SYMBOL vmlinux 0x95258546 padata_do_serial +EXPORT_SYMBOL vmlinux 0x952638ad agp_generic_insert_memory +EXPORT_SYMBOL vmlinux 0x95330e5b is_bad_inode +EXPORT_SYMBOL vmlinux 0x953b568a mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x9545eb40 dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x9566a8b8 blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x9573f7bf dst_alloc +EXPORT_SYMBOL vmlinux 0x959d8ee0 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0x959f3cb0 dev_remove_offload +EXPORT_SYMBOL vmlinux 0x95bef1ab skb_queue_head +EXPORT_SYMBOL vmlinux 0x95cb929c of_find_all_nodes +EXPORT_SYMBOL vmlinux 0x95d96c84 dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0x95e6e500 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x95f13afc tty_register_ldisc +EXPORT_SYMBOL vmlinux 0x95fc4e60 dev_change_carrier +EXPORT_SYMBOL vmlinux 0x96573b80 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x96596079 simple_lookup +EXPORT_SYMBOL vmlinux 0x9678972a tcp_sendpage +EXPORT_SYMBOL vmlinux 0x96898769 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x96913e06 tty_check_change +EXPORT_SYMBOL vmlinux 0x96bc19e6 fsnotify_add_mark +EXPORT_SYMBOL vmlinux 0x96cbcc81 ipmi_get_version +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96db2f1d skb_copy_expand +EXPORT_SYMBOL vmlinux 0x96dbcca2 ioremap_prot +EXPORT_SYMBOL vmlinux 0x96f4ac6b of_scan_pci_bridge +EXPORT_SYMBOL vmlinux 0x97031f34 ppp_input_error +EXPORT_SYMBOL vmlinux 0x97255bdf strlen +EXPORT_SYMBOL vmlinux 0x9726dfef register_console +EXPORT_SYMBOL vmlinux 0x9735870c kfree_put_link +EXPORT_SYMBOL vmlinux 0x9748927f _outsw_ns +EXPORT_SYMBOL vmlinux 0x974a7b0f tty_port_open +EXPORT_SYMBOL vmlinux 0x9754ec10 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x97618135 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x979c0aba i2c_verify_client +EXPORT_SYMBOL vmlinux 0x97a60e3d param_get_bool +EXPORT_SYMBOL vmlinux 0x97b16196 scsi_ioctl +EXPORT_SYMBOL vmlinux 0x97b4500c __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0x97bae67b generic_file_mmap +EXPORT_SYMBOL vmlinux 0x97ee989e macio_release_resource +EXPORT_SYMBOL vmlinux 0x97f93639 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0x9809c287 PDE_DATA +EXPORT_SYMBOL vmlinux 0x981661a0 __idr_get_new_above +EXPORT_SYMBOL vmlinux 0x98182ba2 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0x985349ce phy_attach +EXPORT_SYMBOL vmlinux 0x986e6135 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x987b9654 kobject_del +EXPORT_SYMBOL vmlinux 0x98b0b44d netif_napi_add +EXPORT_SYMBOL vmlinux 0x98c744c3 fsnotify_get_group +EXPORT_SYMBOL vmlinux 0x98d7faba netdev_emerg +EXPORT_SYMBOL vmlinux 0x98dc20e0 bmap +EXPORT_SYMBOL vmlinux 0x98e13342 inet_shutdown +EXPORT_SYMBOL vmlinux 0x98fa21b0 mod_timer_pinned +EXPORT_SYMBOL vmlinux 0x98fe7882 DMA_MODE_READ +EXPORT_SYMBOL vmlinux 0x991bfabd sk_dst_check +EXPORT_SYMBOL vmlinux 0x9941d9e2 lookup_bdev +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x9954b4bf __scm_send +EXPORT_SYMBOL vmlinux 0x99591a7a ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x9994c0ca ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99a0c320 __get_page_tail +EXPORT_SYMBOL vmlinux 0x99afe916 _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x99bb8806 memmove +EXPORT_SYMBOL vmlinux 0x99c11516 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0x99cdc86b sysctl_tcp_reordering +EXPORT_SYMBOL vmlinux 0x99d24562 blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0x99fa92f8 mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x9a16ec44 dev_add_offload +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a1fc4b4 jiffies_to_timeval +EXPORT_SYMBOL vmlinux 0x9a2984c7 balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0x9a36bcf6 xfrm_lookup +EXPORT_SYMBOL vmlinux 0x9a43a2c0 agp_put_bridge +EXPORT_SYMBOL vmlinux 0x9a626734 ftrace_print_hex_seq +EXPORT_SYMBOL vmlinux 0x9a678904 proc_set_size +EXPORT_SYMBOL vmlinux 0x9a7147bc led_blink_set_oneshot +EXPORT_SYMBOL vmlinux 0x9a7a7621 bioset_integrity_create +EXPORT_SYMBOL vmlinux 0x9a88a675 tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x9a9faf58 input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0x9aab3ce5 jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0x9ac943bf mount_single +EXPORT_SYMBOL vmlinux 0x9ac9f444 neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x9af96ff3 sk_receive_skb +EXPORT_SYMBOL vmlinux 0x9b02a525 tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0x9b19af1b sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0x9b1d2ccf __memcg_kmem_get_cache +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b388444 get_zeroed_page +EXPORT_SYMBOL vmlinux 0x9b3dbb34 blk_queue_unprep_rq +EXPORT_SYMBOL vmlinux 0x9b4d5c82 neigh_destroy +EXPORT_SYMBOL vmlinux 0x9b622d6b mfd_add_devices +EXPORT_SYMBOL vmlinux 0x9b6e260f inet6_ioctl +EXPORT_SYMBOL vmlinux 0x9b6eb137 ksize +EXPORT_SYMBOL vmlinux 0x9b9e05f9 alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0x9b9e784e __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x9ba7089d argv_split +EXPORT_SYMBOL vmlinux 0x9bcc8054 bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0x9bce482f __release_region +EXPORT_SYMBOL vmlinux 0x9be7bde4 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x9c109e00 generic_file_aio_read +EXPORT_SYMBOL vmlinux 0x9c2a455f dm_put_device +EXPORT_SYMBOL vmlinux 0x9c5518f3 iget_locked +EXPORT_SYMBOL vmlinux 0x9c5abcd8 touch_buffer +EXPORT_SYMBOL vmlinux 0x9c603fc8 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x9c71b631 __mutex_init +EXPORT_SYMBOL vmlinux 0x9c774813 kunmap_high +EXPORT_SYMBOL vmlinux 0x9c779831 security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x9c9dc86b inode_reclaim_rsv_space +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cc0d1ac inet_select_addr +EXPORT_SYMBOL vmlinux 0x9ce3f83f nvram_write_byte +EXPORT_SYMBOL vmlinux 0x9ceb163c memcpy_toiovec +EXPORT_SYMBOL vmlinux 0x9cef3cc5 __idr_remove_all +EXPORT_SYMBOL vmlinux 0x9cf65286 padata_free +EXPORT_SYMBOL vmlinux 0x9cfd56c5 scsi_print_status +EXPORT_SYMBOL vmlinux 0x9d04d7a7 rtas +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d14983a ppc_enable_pmcs +EXPORT_SYMBOL vmlinux 0x9d2fb3a8 dquot_get_dqinfo +EXPORT_SYMBOL vmlinux 0x9d302b0c write_one_page +EXPORT_SYMBOL vmlinux 0x9d3434e2 mmc_can_trim +EXPORT_SYMBOL vmlinux 0x9d3aa376 blk_iopoll_init +EXPORT_SYMBOL vmlinux 0x9d4619cd mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0x9d669763 memcpy +EXPORT_SYMBOL vmlinux 0x9d6cf6c7 xfrm4_rcv +EXPORT_SYMBOL vmlinux 0x9d75ab03 security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0x9d79cafd blk_requeue_request +EXPORT_SYMBOL vmlinux 0x9d7ce8dd _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0x9d87e1aa vlan_vid_add +EXPORT_SYMBOL vmlinux 0x9d90f95f __crc32c_le_combine +EXPORT_SYMBOL vmlinux 0x9d9c3160 blk_recount_segments +EXPORT_SYMBOL vmlinux 0x9da0094c blk_mq_alloc_reserved_request +EXPORT_SYMBOL vmlinux 0x9dca68d6 pci_find_bus +EXPORT_SYMBOL vmlinux 0x9dcc6826 read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x9dd5fb02 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x9dea4dbc phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0x9dfbab65 udp_del_offload +EXPORT_SYMBOL vmlinux 0x9dfe7307 lz4_decompress_unknownoutputsize +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e13d2b6 netpoll_send_udp +EXPORT_SYMBOL vmlinux 0x9e1cfc90 ioremap_wc +EXPORT_SYMBOL vmlinux 0x9e2000a7 memcpy_toiovecend +EXPORT_SYMBOL vmlinux 0x9e30f8ab audit_log_start +EXPORT_SYMBOL vmlinux 0x9e41f282 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0x9e44b9b7 of_get_next_available_child +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e672ff6 scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x9e74a828 sg_miter_next +EXPORT_SYMBOL vmlinux 0x9e78cd30 sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0x9e8e072e gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0x9e973403 neigh_direct_output +EXPORT_SYMBOL vmlinux 0x9e97375d rtas_busy_delay_time +EXPORT_SYMBOL vmlinux 0x9e9818b5 udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0x9e9f1714 __bitmap_andnot +EXPORT_SYMBOL vmlinux 0x9eb91a2a __inode_permission +EXPORT_SYMBOL vmlinux 0x9ec78050 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0x9ece8c07 skb_split +EXPORT_SYMBOL vmlinux 0x9ed0506a noop_fsync +EXPORT_SYMBOL vmlinux 0x9ed2eec7 param_set_ushort +EXPORT_SYMBOL vmlinux 0x9ed685ee iov_iter_advance +EXPORT_SYMBOL vmlinux 0x9f20bdfd kernel_accept +EXPORT_SYMBOL vmlinux 0x9f2bdaac __bitmap_or +EXPORT_SYMBOL vmlinux 0x9f315041 security_path_link +EXPORT_SYMBOL vmlinux 0x9f418f47 fb_find_mode +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f53bead pci_bus_put +EXPORT_SYMBOL vmlinux 0x9f6a166b sock_no_connect +EXPORT_SYMBOL vmlinux 0x9f91d6ed bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9f9ddecd pcim_iounmap +EXPORT_SYMBOL vmlinux 0x9fb3dd30 memcpy_fromiovec +EXPORT_SYMBOL vmlinux 0x9fb54619 blk_sync_queue +EXPORT_SYMBOL vmlinux 0x9fb71fc4 tcp_seq_open +EXPORT_SYMBOL vmlinux 0x9fb737df block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x9fbc4538 set_anon_super +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9fe2169c may_umount_tree +EXPORT_SYMBOL vmlinux 0x9febdd9a phy_device_create +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa02d4a1e kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa04a01bd qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xa05c03df mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xa06df9e1 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0xa07ed110 xz_dec_init +EXPORT_SYMBOL vmlinux 0xa0966e4b unregister_shrinker +EXPORT_SYMBOL vmlinux 0xa09a6113 tty_devnum +EXPORT_SYMBOL vmlinux 0xa0a7d11e request_key_async +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0c1e9d2 bio_integrity_set_tag +EXPORT_SYMBOL vmlinux 0xa0c49f30 ata_print_version +EXPORT_SYMBOL vmlinux 0xa0ce13d7 dm_get_mapinfo +EXPORT_SYMBOL vmlinux 0xa0ceef51 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0xa0da37c0 iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0f717f6 scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa11c75cd vfs_readlink +EXPORT_SYMBOL vmlinux 0xa11e9058 dquot_quotactl_ops +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa1415618 twl6030_interrupt_unmask +EXPORT_SYMBOL vmlinux 0xa14ec1ea nla_put +EXPORT_SYMBOL vmlinux 0xa14f3d8c ewma_add +EXPORT_SYMBOL vmlinux 0xa15990ad netdev_notice +EXPORT_SYMBOL vmlinux 0xa17cc471 sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0xa197fad6 padata_stop +EXPORT_SYMBOL vmlinux 0xa1a8887e mpage_writepages +EXPORT_SYMBOL vmlinux 0xa1b759ce fb_add_videomode +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1c99385 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xa1f8fe75 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0xa1fbd28e bh_submit_read +EXPORT_SYMBOL vmlinux 0xa20a7215 __blk_run_queue +EXPORT_SYMBOL vmlinux 0xa20ce1b8 net_msg_warn +EXPORT_SYMBOL vmlinux 0xa2132fa1 pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0xa21c5cbe devfreq_interval_update +EXPORT_SYMBOL vmlinux 0xa2848c50 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0xa288e9a9 generic_writepages +EXPORT_SYMBOL vmlinux 0xa28a2ace ipmi_set_gets_events +EXPORT_SYMBOL vmlinux 0xa2a98b91 ipmi_get_maintenance_mode +EXPORT_SYMBOL vmlinux 0xa2bbed37 crash_shutdown_register +EXPORT_SYMBOL vmlinux 0xa2ce7761 blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0xa2ddbf90 kthread_create_on_node +EXPORT_SYMBOL vmlinux 0xa2edf8ed qdisc_destroy +EXPORT_SYMBOL vmlinux 0xa2ef34d7 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xa2f7e328 fsnotify_put_mark +EXPORT_SYMBOL vmlinux 0xa303d1ff dm_ratelimit_state +EXPORT_SYMBOL vmlinux 0xa31a71a1 submit_bio +EXPORT_SYMBOL vmlinux 0xa32a5a79 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0xa332464a of_get_cpu_node +EXPORT_SYMBOL vmlinux 0xa339ba55 in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xa344c498 no_llseek +EXPORT_SYMBOL vmlinux 0xa34f1ef5 crc32_le +EXPORT_SYMBOL vmlinux 0xa35de80f ipv4_config +EXPORT_SYMBOL vmlinux 0xa36bdb81 block_write_full_page_endio +EXPORT_SYMBOL vmlinux 0xa36e9510 devm_gpio_free +EXPORT_SYMBOL vmlinux 0xa3746034 tty_unregister_device +EXPORT_SYMBOL vmlinux 0xa37a16a5 netif_device_attach +EXPORT_SYMBOL vmlinux 0xa3868942 block_write_begin +EXPORT_SYMBOL vmlinux 0xa38e691a ioremap_bot +EXPORT_SYMBOL vmlinux 0xa3922743 sg_miter_stop +EXPORT_SYMBOL vmlinux 0xa39b4cf2 udelay +EXPORT_SYMBOL vmlinux 0xa3abc422 abort_exclusive_wait +EXPORT_SYMBOL vmlinux 0xa3bd9550 scsi_remove_device +EXPORT_SYMBOL vmlinux 0xa3c30dfc fasync_helper +EXPORT_SYMBOL vmlinux 0xa3c6bd76 elv_dispatch_add_tail +EXPORT_SYMBOL vmlinux 0xa3de484d inet_twsk_deschedule +EXPORT_SYMBOL vmlinux 0xa3e75545 flush_tlb_kernel_range +EXPORT_SYMBOL vmlinux 0xa412bca3 sock_update_classid +EXPORT_SYMBOL vmlinux 0xa41407c6 dentry_open +EXPORT_SYMBOL vmlinux 0xa4187893 soft_cursor +EXPORT_SYMBOL vmlinux 0xa43b1297 vscnprintf +EXPORT_SYMBOL vmlinux 0xa43b9539 memcpy_fromiovecend +EXPORT_SYMBOL vmlinux 0xa44811f7 inode_claim_rsv_space +EXPORT_SYMBOL vmlinux 0xa4701e9e timekeeping_inject_offset +EXPORT_SYMBOL vmlinux 0xa47a474a qdisc_reset +EXPORT_SYMBOL vmlinux 0xa47c7299 kernel_getpeername +EXPORT_SYMBOL vmlinux 0xa48d7543 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0xa4a1ba71 pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0xa4a94d26 find_next_bit_le +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa4d4f0e6 global_cache_flush +EXPORT_SYMBOL vmlinux 0xa4d4fb58 tcf_exts_validate +EXPORT_SYMBOL vmlinux 0xa4dd0c29 __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xa4e09d9e mmc_hw_reset_check +EXPORT_SYMBOL vmlinux 0xa50a111e inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0xa50db4f8 kernel_getsockname +EXPORT_SYMBOL vmlinux 0xa52b86f6 kernel_setsockopt +EXPORT_SYMBOL vmlinux 0xa5392fcb blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0xa544f43c phy_scan_fixups +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa55c23d1 unlock_rename +EXPORT_SYMBOL vmlinux 0xa5776e59 blk_mq_alloc_single_hw_queue +EXPORT_SYMBOL vmlinux 0xa585d78a __skb_tx_hash +EXPORT_SYMBOL vmlinux 0xa5973d0a xfrm6_rcv +EXPORT_SYMBOL vmlinux 0xa598e29c vesa_modes +EXPORT_SYMBOL vmlinux 0xa5a633b9 sg_last +EXPORT_SYMBOL vmlinux 0xa5c1b7ad __pagevec_lru_add +EXPORT_SYMBOL vmlinux 0xa5cef8ad release_resource +EXPORT_SYMBOL vmlinux 0xa61bd53d tcp_proc_unregister +EXPORT_SYMBOL vmlinux 0xa63a2f9b param_get_ulong +EXPORT_SYMBOL vmlinux 0xa64649a6 seq_release +EXPORT_SYMBOL vmlinux 0xa647bfd8 mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0xa652c4ef __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0xa65972b8 _memcpy_toio +EXPORT_SYMBOL vmlinux 0xa65e0ffa km_policy_expired +EXPORT_SYMBOL vmlinux 0xa6715115 do_settimeofday +EXPORT_SYMBOL vmlinux 0xa6719715 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0xa675804c utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6970398 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0xa6af3371 kernel_read +EXPORT_SYMBOL vmlinux 0xa6cdb0a3 inet_frags_init +EXPORT_SYMBOL vmlinux 0xa6d7a783 __block_write_begin +EXPORT_SYMBOL vmlinux 0xa6f028b7 cdrom_check_events +EXPORT_SYMBOL vmlinux 0xa6fae69e blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0xa6fe506c netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0xa720678c lg_global_lock +EXPORT_SYMBOL vmlinux 0xa735db59 prandom_u32 +EXPORT_SYMBOL vmlinux 0xa73fc98f of_n_addr_cells +EXPORT_SYMBOL vmlinux 0xa753ab35 module_put +EXPORT_SYMBOL vmlinux 0xa779d051 dquot_quota_off +EXPORT_SYMBOL vmlinux 0xa78d9eb7 slhc_uncompress +EXPORT_SYMBOL vmlinux 0xa7aa48f1 disk_stack_limits +EXPORT_SYMBOL vmlinux 0xa7ab788d frontswap_register_ops +EXPORT_SYMBOL vmlinux 0xa7b343ec jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0xa7bd37b8 rtnl_notify +EXPORT_SYMBOL vmlinux 0xa7e3f112 sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0xa7e669c1 bio_unmap_user +EXPORT_SYMBOL vmlinux 0xa7f287ab vfs_mknod +EXPORT_SYMBOL vmlinux 0xa8232c78 strtobool +EXPORT_SYMBOL vmlinux 0xa83061e7 md_write_start +EXPORT_SYMBOL vmlinux 0xa83089e1 __put_cred +EXPORT_SYMBOL vmlinux 0xa839c5c8 __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa8568df6 simple_transaction_release +EXPORT_SYMBOL vmlinux 0xa85ada34 dev_addr_del +EXPORT_SYMBOL vmlinux 0xa861ab6e __ioremap +EXPORT_SYMBOL vmlinux 0xa8659fea pagevec_lookup +EXPORT_SYMBOL vmlinux 0xa8721b97 system_state +EXPORT_SYMBOL vmlinux 0xa89464b7 __ashldi3 +EXPORT_SYMBOL vmlinux 0xa8ccf264 register_nls +EXPORT_SYMBOL vmlinux 0xa8cdc159 ppp_input +EXPORT_SYMBOL vmlinux 0xa8d8ada1 __inet6_hash +EXPORT_SYMBOL vmlinux 0xa8e45199 ipv6_push_nfrag_opts +EXPORT_SYMBOL vmlinux 0xa8f93547 netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0xa8fef7bb security_unix_may_send +EXPORT_SYMBOL vmlinux 0xa903a62a set_nlink +EXPORT_SYMBOL vmlinux 0xa9273e1a epapr_hypercall_start +EXPORT_SYMBOL vmlinux 0xa92b84b7 generic_ro_fops +EXPORT_SYMBOL vmlinux 0xa94f48ea inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0xa9571d6d DMA_MODE_WRITE +EXPORT_SYMBOL vmlinux 0xa97bab45 tcp_ioctl +EXPORT_SYMBOL vmlinux 0xa9b63345 of_parse_phandle_with_fixed_args +EXPORT_SYMBOL vmlinux 0xa9effda5 __first_cpu +EXPORT_SYMBOL vmlinux 0xa9f8ec87 genphy_resume +EXPORT_SYMBOL vmlinux 0xaa210f0a pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0xaa46e87e lg_local_unlock +EXPORT_SYMBOL vmlinux 0xaa48d45f blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0xaa4df512 pmu_batteries +EXPORT_SYMBOL vmlinux 0xaa65f49c bio_integrity_free +EXPORT_SYMBOL vmlinux 0xaa6901ac __kfifo_out_r +EXPORT_SYMBOL vmlinux 0xaa6e4df5 _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa9087c0 param_ops_string +EXPORT_SYMBOL vmlinux 0xaa922d0e inet_listen +EXPORT_SYMBOL vmlinux 0xaab63276 nobh_write_begin +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaadca3b1 jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0xaae32bf0 sock_edemux +EXPORT_SYMBOL vmlinux 0xaaea7513 module_refcount +EXPORT_SYMBOL vmlinux 0xaaf39bac bio_get_nr_vecs +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab18888d __frontswap_store +EXPORT_SYMBOL vmlinux 0xab274bfd vmalloc_to_page +EXPORT_SYMBOL vmlinux 0xab3b1683 agp_alloc_bridge +EXPORT_SYMBOL vmlinux 0xab476854 inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0xab49b086 clocksource_unregister +EXPORT_SYMBOL vmlinux 0xab548e17 nf_ct_attach +EXPORT_SYMBOL vmlinux 0xab5cd179 blk_queue_end_tag +EXPORT_SYMBOL vmlinux 0xab694444 bsearch +EXPORT_SYMBOL vmlinux 0xab6bde28 sysctl_max_syn_backlog +EXPORT_SYMBOL vmlinux 0xab75f8e1 alloc_pci_dev +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab8e524e simple_empty +EXPORT_SYMBOL vmlinux 0xaba092eb dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0xabbc22be twl6040_set_pll +EXPORT_SYMBOL vmlinux 0xabc34979 netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0xabc6dd63 cpufreq_sysfs_create_file +EXPORT_SYMBOL vmlinux 0xabcaa577 free_anon_bdev +EXPORT_SYMBOL vmlinux 0xabcea627 genl_unregister_family +EXPORT_SYMBOL vmlinux 0xabd0c91c rtc_time_to_tm +EXPORT_SYMBOL vmlinux 0xabe1601e genl_notify +EXPORT_SYMBOL vmlinux 0xabfa60c5 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0xac07973b vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0xac0ba8c1 blk_iopoll_disable +EXPORT_SYMBOL vmlinux 0xac14c03b xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac26b820 _raw_write_lock +EXPORT_SYMBOL vmlinux 0xac437cfc md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0xac6e4841 input_set_keycode +EXPORT_SYMBOL vmlinux 0xac7059b3 fsnotify_destroy_mark +EXPORT_SYMBOL vmlinux 0xac8880bb udp_poll +EXPORT_SYMBOL vmlinux 0xac88eef9 pci_vpd_truncate +EXPORT_SYMBOL vmlinux 0xaca6d769 __breadahead +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacb4c228 phy_ethtool_gset +EXPORT_SYMBOL vmlinux 0xacb4e488 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0xacc5b5d2 csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0xaccabc6a in4_pton +EXPORT_SYMBOL vmlinux 0xaccf2ec1 fib_default_rule_add +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad0a6e0a flex_array_prealloc +EXPORT_SYMBOL vmlinux 0xad1736fd lro_flush_all +EXPORT_SYMBOL vmlinux 0xad30992a ata_port_printk +EXPORT_SYMBOL vmlinux 0xad3ba578 fb_validate_mode +EXPORT_SYMBOL vmlinux 0xad3bb3a1 pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0xad46dec2 of_count_phandle_with_args +EXPORT_SYMBOL vmlinux 0xad476722 free_user_ns +EXPORT_SYMBOL vmlinux 0xad50cebb i8253_lock +EXPORT_SYMBOL vmlinux 0xad51df73 iget_failed +EXPORT_SYMBOL vmlinux 0xad7d9e6c put_io_context +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xada1b329 del_gendisk +EXPORT_SYMBOL vmlinux 0xadabedad loop_backing_file +EXPORT_SYMBOL vmlinux 0xadca72c1 da903x_query_status +EXPORT_SYMBOL vmlinux 0xadd1e971 alignment_exception +EXPORT_SYMBOL vmlinux 0xadd3d74d tty_vhangup +EXPORT_SYMBOL vmlinux 0xaddd4770 __debugger_iabr_match +EXPORT_SYMBOL vmlinux 0xade7a634 mmc_power_restore_host +EXPORT_SYMBOL vmlinux 0xadea067e netpoll_cleanup +EXPORT_SYMBOL vmlinux 0xadf42bd5 __request_region +EXPORT_SYMBOL vmlinux 0xae09f549 padata_remove_cpu +EXPORT_SYMBOL vmlinux 0xae284627 aio_complete +EXPORT_SYMBOL vmlinux 0xae4f3e82 simple_write_begin +EXPORT_SYMBOL vmlinux 0xae545f06 _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xae5f93c5 tcp_getsockopt +EXPORT_SYMBOL vmlinux 0xae600e27 tty_set_operations +EXPORT_SYMBOL vmlinux 0xae6a47ae blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0xae729e59 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xae8bbd81 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0xae9ce7b9 rtnl_unicast +EXPORT_SYMBOL vmlinux 0xaeac6c25 dev_alert +EXPORT_SYMBOL vmlinux 0xaeae5535 netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0xaebbac24 md_done_sync +EXPORT_SYMBOL vmlinux 0xaec655c7 alloc_pages_exact +EXPORT_SYMBOL vmlinux 0xaee2d1e6 ip_defrag +EXPORT_SYMBOL vmlinux 0xaf05b91b of_device_is_available +EXPORT_SYMBOL vmlinux 0xaf063510 _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0xaf0ba2df pci_enable_device_io +EXPORT_SYMBOL vmlinux 0xaf2d872c prepare_to_wait +EXPORT_SYMBOL vmlinux 0xaf2e9570 rt6_lookup +EXPORT_SYMBOL vmlinux 0xaf3a7ad7 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf5f7994 remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xaf64ad0d zlib_deflate +EXPORT_SYMBOL vmlinux 0xaf739fff kmap_high +EXPORT_SYMBOL vmlinux 0xaf84c788 blk_free_tags +EXPORT_SYMBOL vmlinux 0xaf91d89f __kernel_param_lock +EXPORT_SYMBOL vmlinux 0xafad493b param_ops_ushort +EXPORT_SYMBOL vmlinux 0xafb39758 sk_release_kernel +EXPORT_SYMBOL vmlinux 0xafd07326 check_submounts_and_drop +EXPORT_SYMBOL vmlinux 0xafd68c33 flex_array_free +EXPORT_SYMBOL vmlinux 0xafff3d1d mempool_alloc +EXPORT_SYMBOL vmlinux 0xb01ee433 security_file_permission +EXPORT_SYMBOL vmlinux 0xb020c7a2 register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xb027b447 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0xb034ae52 bio_integrity_endio +EXPORT_SYMBOL vmlinux 0xb0579d15 of_gpio_simple_xlate +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb06e629b grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0xb08a1d49 km_report +EXPORT_SYMBOL vmlinux 0xb0b847ac __bitmap_full +EXPORT_SYMBOL vmlinux 0xb0bf2568 file_open_root +EXPORT_SYMBOL vmlinux 0xb0d61163 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0f4167e mmc_erase +EXPORT_SYMBOL vmlinux 0xb0ffda2f blk_limits_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xb1077e0f dquot_quota_sync +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb13b1d15 tcf_hash_check +EXPORT_SYMBOL vmlinux 0xb159d1f8 would_dump +EXPORT_SYMBOL vmlinux 0xb15b867f filemap_write_and_wait +EXPORT_SYMBOL vmlinux 0xb15bd8fa tb_ticks_per_sec +EXPORT_SYMBOL vmlinux 0xb19760c3 bitmap_onto +EXPORT_SYMBOL vmlinux 0xb1989e4b mntput +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1c6e787 wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0xb1cf44df fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xb1db9e4e param_get_invbool +EXPORT_SYMBOL vmlinux 0xb1fedd5a __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0xb21a2fc6 tcp_check_req +EXPORT_SYMBOL vmlinux 0xb21dbc98 scsi_cmd_get_serial +EXPORT_SYMBOL vmlinux 0xb21e9c6e free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0xb21f43b3 vfs_rename +EXPORT_SYMBOL vmlinux 0xb2251569 neigh_seq_start +EXPORT_SYMBOL vmlinux 0xb226ec7a ip_route_input_noref +EXPORT_SYMBOL vmlinux 0xb233762c atomic64_set +EXPORT_SYMBOL vmlinux 0xb242d3e9 mmc_request_done +EXPORT_SYMBOL vmlinux 0xb246ea6f dump_emit +EXPORT_SYMBOL vmlinux 0xb24ba18b truncate_pagecache +EXPORT_SYMBOL vmlinux 0xb25dcbc4 scsi_scan_target +EXPORT_SYMBOL vmlinux 0xb265dbcd mount_subtree +EXPORT_SYMBOL vmlinux 0xb2682405 utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0xb279b656 fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0xb2afdac7 pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xb2b94674 __crc32c_le +EXPORT_SYMBOL vmlinux 0xb2bb7555 md_error +EXPORT_SYMBOL vmlinux 0xb2be6e92 netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xb2c56ac7 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0xb2c962ae neigh_changeaddr +EXPORT_SYMBOL vmlinux 0xb2d46a2a con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xb2d48a2e queue_work_on +EXPORT_SYMBOL vmlinux 0xb2f72ea3 phys_mem_access_prot +EXPORT_SYMBOL vmlinux 0xb2feee9e abx500_remove_ops +EXPORT_SYMBOL vmlinux 0xb3039961 skb_pad +EXPORT_SYMBOL vmlinux 0xb304acff ida_get_new_above +EXPORT_SYMBOL vmlinux 0xb31526ee sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0xb318efe5 netdev_err +EXPORT_SYMBOL vmlinux 0xb34e3d56 tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0xb354c833 irq_set_chip +EXPORT_SYMBOL vmlinux 0xb361a957 tcf_exts_change +EXPORT_SYMBOL vmlinux 0xb3784676 neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0xb38419cd elv_rq_merge_ok +EXPORT_SYMBOL vmlinux 0xb389dc78 iterate_dir +EXPORT_SYMBOL vmlinux 0xb3db6497 blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0xb3e25147 alloc_fddidev +EXPORT_SYMBOL vmlinux 0xb3ebb668 get_phy_device +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb3fe816c free_netdev +EXPORT_SYMBOL vmlinux 0xb411dc99 __splice_from_pipe +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb428c3fc proc_symlink +EXPORT_SYMBOL vmlinux 0xb441c374 pci_map_rom +EXPORT_SYMBOL vmlinux 0xb4666633 icmp_send +EXPORT_SYMBOL vmlinux 0xb4709322 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0xb4c40828 skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0xb4ca173f vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0xb4ccae0f dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0xb51b9da4 inet_confirm_addr +EXPORT_SYMBOL vmlinux 0xb53772e7 tty_free_termios +EXPORT_SYMBOL vmlinux 0xb53a4336 kmap_pte +EXPORT_SYMBOL vmlinux 0xb5401d5a consume_skb +EXPORT_SYMBOL vmlinux 0xb54533f7 usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xb547db51 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xb55ef8ad vga_get +EXPORT_SYMBOL vmlinux 0xb56abb57 dentry_update_name_case +EXPORT_SYMBOL vmlinux 0xb56b5d30 dqput +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb57ab593 dev_uc_flush +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5a58f4e i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5d9454c printk_emit +EXPORT_SYMBOL vmlinux 0xb5d9b84d xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0xb5de6a39 xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0xb5f33719 macio_enable_devres +EXPORT_SYMBOL vmlinux 0xb600fff8 neigh_table_init +EXPORT_SYMBOL vmlinux 0xb6179101 tcp_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xb62b276f pcie_get_readrq +EXPORT_SYMBOL vmlinux 0xb6394d4b param_set_bint +EXPORT_SYMBOL vmlinux 0xb6599b9a machine_check_exception +EXPORT_SYMBOL vmlinux 0xb66ee595 iget5_locked +EXPORT_SYMBOL vmlinux 0xb6718f46 gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb6810413 vm_iomap_memory +EXPORT_SYMBOL vmlinux 0xb681784e i2c_bit_add_bus +EXPORT_SYMBOL vmlinux 0xb6822a33 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0xb6881be1 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0xb688fe2c flush_dcache_icache_page +EXPORT_SYMBOL vmlinux 0xb6896671 crc_t10dif +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb6a1655b arp_tbl +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6b46a7c param_ops_int +EXPORT_SYMBOL vmlinux 0xb6be7043 load_nls +EXPORT_SYMBOL vmlinux 0xb6c5a973 scsi_show_result +EXPORT_SYMBOL vmlinux 0xb6e9100d d_delete +EXPORT_SYMBOL vmlinux 0xb701d03f udp_add_offload +EXPORT_SYMBOL vmlinux 0xb7057166 framebuffer_release +EXPORT_SYMBOL vmlinux 0xb742a944 abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0xb751b1e0 alloc_file +EXPORT_SYMBOL vmlinux 0xb753bcc8 __ashrdi3 +EXPORT_SYMBOL vmlinux 0xb770d38c tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0xb77131b1 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0xb77ef893 mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0xb7838606 __module_get +EXPORT_SYMBOL vmlinux 0xb79a4e1a store_fp_state +EXPORT_SYMBOL vmlinux 0xb7a99781 __irq_regs +EXPORT_SYMBOL vmlinux 0xb7af8880 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0xb7affad9 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0xb7b560c5 __xfrm_init_state +EXPORT_SYMBOL vmlinux 0xb7b61546 crc32_be +EXPORT_SYMBOL vmlinux 0xb7b6e2a0 unregister_netdev +EXPORT_SYMBOL vmlinux 0xb7e155a4 generic_file_buffered_write +EXPORT_SYMBOL vmlinux 0xb7f2fbcc ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0xb7fd55c6 input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0xb8039f51 generic_delete_inode +EXPORT_SYMBOL vmlinux 0xb81960ca snprintf +EXPORT_SYMBOL vmlinux 0xb835b3e4 radix_tree_prev_hole +EXPORT_SYMBOL vmlinux 0xb8564194 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0xb85b5b69 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0xb86f7e76 __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0xb8748f89 dev_set_mac_address +EXPORT_SYMBOL vmlinux 0xb874b87a __clzsi2 +EXPORT_SYMBOL vmlinux 0xb8806aaa skb_copy_and_csum_datagram_iovec +EXPORT_SYMBOL vmlinux 0xb8810f0e vfs_unlink +EXPORT_SYMBOL vmlinux 0xb8a02dac uart_update_timeout +EXPORT_SYMBOL vmlinux 0xb8a9d6b4 pci_disable_ltr +EXPORT_SYMBOL vmlinux 0xb8aa2342 __check_region +EXPORT_SYMBOL vmlinux 0xb8b8bf76 netpoll_parse_options +EXPORT_SYMBOL vmlinux 0xb8ba7caf netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0xb8d24c8f sb_min_blocksize +EXPORT_SYMBOL vmlinux 0xb8d257d5 dquot_release +EXPORT_SYMBOL vmlinux 0xb8d73e97 param_set_uint +EXPORT_SYMBOL vmlinux 0xb8dee7bd napi_gro_frags +EXPORT_SYMBOL vmlinux 0xb8e28283 ps2_handle_ack +EXPORT_SYMBOL vmlinux 0xb8e8658f uart_remove_one_port +EXPORT_SYMBOL vmlinux 0xb8e877e7 kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xb93a01dc devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0xb93a4431 blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0xb94ecb60 init_special_inode +EXPORT_SYMBOL vmlinux 0xb961bef2 __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0xb97f8a4b mmc_can_discard +EXPORT_SYMBOL vmlinux 0xb981e5b8 xfrm_state_flush +EXPORT_SYMBOL vmlinux 0xb98a0185 rtc_tm_to_time +EXPORT_SYMBOL vmlinux 0xb9c7b064 dev_get_drvdata +EXPORT_SYMBOL vmlinux 0xb9ca7f6e tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0xb9cd0a32 contig_page_data +EXPORT_SYMBOL vmlinux 0xb9ce2e78 input_unregister_handler +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba4b3a0e genlmsg_put +EXPORT_SYMBOL vmlinux 0xba6b660e unlock_buffer +EXPORT_SYMBOL vmlinux 0xba8110e9 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xba9f0577 input_event +EXPORT_SYMBOL vmlinux 0xbab5b1e8 mutex_lock_killable +EXPORT_SYMBOL vmlinux 0xbab9e0a9 fsl_lbc_ctrl_dev +EXPORT_SYMBOL vmlinux 0xbaba9823 xfrm_state_update +EXPORT_SYMBOL vmlinux 0xbacc2835 iterate_supers_type +EXPORT_SYMBOL vmlinux 0xbadf8dac sock_no_poll +EXPORT_SYMBOL vmlinux 0xbb0cfeca kset_unregister +EXPORT_SYMBOL vmlinux 0xbb189cad disallow_signal +EXPORT_SYMBOL vmlinux 0xbb475be0 padata_alloc +EXPORT_SYMBOL vmlinux 0xbb4ecb58 unregister_quota_format +EXPORT_SYMBOL vmlinux 0xbb4f84e8 inet_del_offload +EXPORT_SYMBOL vmlinux 0xbb5d343d xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xbb625be7 blk_start_request +EXPORT_SYMBOL vmlinux 0xbb6534d8 nf_getsockopt +EXPORT_SYMBOL vmlinux 0xbb713e6d sk_filter_release_rcu +EXPORT_SYMBOL vmlinux 0xbb775189 elevator_change +EXPORT_SYMBOL vmlinux 0xbb8e265b elv_add_request +EXPORT_SYMBOL vmlinux 0xbb99125c get_default_font +EXPORT_SYMBOL vmlinux 0xbba08503 tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0xbbaa8e81 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0xbbc4d1e9 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0xbbc5f276 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0xbbde078b tcp_disconnect +EXPORT_SYMBOL vmlinux 0xbc2721ac neigh_parms_release +EXPORT_SYMBOL vmlinux 0xbc316de4 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0xbc32042f dmam_alloc_noncoherent +EXPORT_SYMBOL vmlinux 0xbc3f6afa down_read +EXPORT_SYMBOL vmlinux 0xbc6aeaae scsi_scan_host +EXPORT_SYMBOL vmlinux 0xbc736025 ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0xbc8609dc __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbccdc2f6 flex_array_put +EXPORT_SYMBOL vmlinux 0xbcd9a676 tty_port_close_end +EXPORT_SYMBOL vmlinux 0xbcdedba7 of_get_mac_address +EXPORT_SYMBOL vmlinux 0xbcf150f9 xor_altivec_5 +EXPORT_SYMBOL vmlinux 0xbd081619 pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0xbd2c626d netif_rx_ni +EXPORT_SYMBOL vmlinux 0xbd3b732a follow_pfn +EXPORT_SYMBOL vmlinux 0xbd5d64ca ip_getsockopt +EXPORT_SYMBOL vmlinux 0xbd6b8aae jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0xbd803510 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0xbd88ff7b override_creds +EXPORT_SYMBOL vmlinux 0xbd8d541d flush_hash_pages +EXPORT_SYMBOL vmlinux 0xbd8f549a tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0xbd9e5d49 __lshrdi3 +EXPORT_SYMBOL vmlinux 0xbdba9828 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0xbdbaf871 xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0xbdc0c00d __find_get_block +EXPORT_SYMBOL vmlinux 0xbdc27c98 kmalloc_caches +EXPORT_SYMBOL vmlinux 0xbde3dce7 pci_get_device +EXPORT_SYMBOL vmlinux 0xbdf48348 phy_drivers_register +EXPORT_SYMBOL vmlinux 0xbe094af4 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0xbe0e5118 nla_memcmp +EXPORT_SYMBOL vmlinux 0xbe1affb6 kill_litter_super +EXPORT_SYMBOL vmlinux 0xbe2ad022 arp_invalidate +EXPORT_SYMBOL vmlinux 0xbe2c0274 add_timer +EXPORT_SYMBOL vmlinux 0xbe30af89 __remove_inode_hash +EXPORT_SYMBOL vmlinux 0xbe3f2fb7 ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0xbe501813 padata_set_cpumask +EXPORT_SYMBOL vmlinux 0xbe5bf9e0 agp_generic_free_gatt_table +EXPORT_SYMBOL vmlinux 0xbe63ee40 request_resource +EXPORT_SYMBOL vmlinux 0xbe77aebe down_write_trylock +EXPORT_SYMBOL vmlinux 0xbe80b939 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xbe8b3e51 nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0xbea21c92 pm860x_set_bits +EXPORT_SYMBOL vmlinux 0xbeb2b2e4 xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0xbebad368 sock_create +EXPORT_SYMBOL vmlinux 0xbec25473 of_parse_phandle +EXPORT_SYMBOL vmlinux 0xbec96e7a skb_kill_datagram +EXPORT_SYMBOL vmlinux 0xbee90f2f __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbefe66e8 security_d_instantiate +EXPORT_SYMBOL vmlinux 0xbf152811 seq_lseek +EXPORT_SYMBOL vmlinux 0xbf1afd1f key_type_keyring +EXPORT_SYMBOL vmlinux 0xbf5c2da3 nf_log_packet +EXPORT_SYMBOL vmlinux 0xbf7fd2f5 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0xbf8ba54a vprintk +EXPORT_SYMBOL vmlinux 0xbf988db8 ip6_expire_frag_queue +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfb8b0b7 _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfc43b6a dput +EXPORT_SYMBOL vmlinux 0xbfc93f18 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0xbfd75ef3 scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0xbfe51044 __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xc027b4da register_md_personality +EXPORT_SYMBOL vmlinux 0xc0296d76 fsync_bdev +EXPORT_SYMBOL vmlinux 0xc03a1c0f cleancache_register_ops +EXPORT_SYMBOL vmlinux 0xc0456dcd fddi_change_mtu +EXPORT_SYMBOL vmlinux 0xc05bd836 pci_pme_active +EXPORT_SYMBOL vmlinux 0xc068440e __kfifo_alloc +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc0809c1a agp_backend_acquire +EXPORT_SYMBOL vmlinux 0xc0823e4c twl_i2c_write +EXPORT_SYMBOL vmlinux 0xc0a23dfd genphy_suspend +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0af0bbc mount_ns +EXPORT_SYMBOL vmlinux 0xc0b0e997 find_or_create_page +EXPORT_SYMBOL vmlinux 0xc0cde027 flush_signals +EXPORT_SYMBOL vmlinux 0xc0d84ced cuda_poll +EXPORT_SYMBOL vmlinux 0xc104f59c sk_alloc +EXPORT_SYMBOL vmlinux 0xc12ec3a6 dns_query +EXPORT_SYMBOL vmlinux 0xc147959c ipmi_get_smi_info +EXPORT_SYMBOL vmlinux 0xc15f1448 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0xc176f5ef __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0xc1b1189b set_groups +EXPORT_SYMBOL vmlinux 0xc1b30caf mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0xc1b3ae58 __invalidate_device +EXPORT_SYMBOL vmlinux 0xc1b82d22 register_shrinker +EXPORT_SYMBOL vmlinux 0xc1bf2b29 key_validate +EXPORT_SYMBOL vmlinux 0xc1c2dd09 __hw_addr_flush +EXPORT_SYMBOL vmlinux 0xc1d51afe scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0xc1dd4a7f adb_request +EXPORT_SYMBOL vmlinux 0xc1e78f0e tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0xc21f5f6d tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0xc2424641 agp3_generic_cleanup +EXPORT_SYMBOL vmlinux 0xc256e762 __bitmap_equal +EXPORT_SYMBOL vmlinux 0xc275eec7 inet_register_protosw +EXPORT_SYMBOL vmlinux 0xc2953e89 __block_page_mkwrite +EXPORT_SYMBOL vmlinux 0xc2aed466 dm_get_device +EXPORT_SYMBOL vmlinux 0xc2cab7db end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0xc2d711e1 krealloc +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2e9a255 tcf_exts_dump +EXPORT_SYMBOL vmlinux 0xc2f9c045 timespec_to_jiffies +EXPORT_SYMBOL vmlinux 0xc2faccb9 generic_write_end +EXPORT_SYMBOL vmlinux 0xc3025452 crypto_sha1_update +EXPORT_SYMBOL vmlinux 0xc31a7f9c blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0xc33c12bc devm_free_irq +EXPORT_SYMBOL vmlinux 0xc346e524 proc_set_user +EXPORT_SYMBOL vmlinux 0xc3677e77 remap_pfn_range +EXPORT_SYMBOL vmlinux 0xc368849f nvram_sync +EXPORT_SYMBOL vmlinux 0xc37a6c2d __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0xc37e5a1d mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0xc39650cc blkdev_put +EXPORT_SYMBOL vmlinux 0xc3a5adb6 blk_complete_request +EXPORT_SYMBOL vmlinux 0xc3c305e4 security_inode_init_security +EXPORT_SYMBOL vmlinux 0xc3db8c4b phy_find_first +EXPORT_SYMBOL vmlinux 0xc41f0516 node_states +EXPORT_SYMBOL vmlinux 0xc4213d10 iov_iter_copy_from_user +EXPORT_SYMBOL vmlinux 0xc45755de find_next_zero_bit_le +EXPORT_SYMBOL vmlinux 0xc45c0df1 unregister_cdrom +EXPORT_SYMBOL vmlinux 0xc46cc8c2 scsi_print_result +EXPORT_SYMBOL vmlinux 0xc472b2b4 mdio_bus_type +EXPORT_SYMBOL vmlinux 0xc47cdf9c _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0xc499ae1e kstrdup +EXPORT_SYMBOL vmlinux 0xc4a2e63a neigh_seq_stop +EXPORT_SYMBOL vmlinux 0xc4a44786 validate_sp +EXPORT_SYMBOL vmlinux 0xc4b92b58 ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0xc4d5a3fc pci_domain_nr +EXPORT_SYMBOL vmlinux 0xc4fdaee1 pci_remove_bus +EXPORT_SYMBOL vmlinux 0xc5534d64 ioread16 +EXPORT_SYMBOL vmlinux 0xc55c2a9d inode_sb_list_lock +EXPORT_SYMBOL vmlinux 0xc55de23c percpu_counter_set +EXPORT_SYMBOL vmlinux 0xc5653a84 neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0xc5718627 sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0xc5892056 follow_up +EXPORT_SYMBOL vmlinux 0xc589e044 param_set_long +EXPORT_SYMBOL vmlinux 0xc5bba0c2 eth_type_trans +EXPORT_SYMBOL vmlinux 0xc5c9f867 blk_get_queue +EXPORT_SYMBOL vmlinux 0xc5d12f28 alloc_anon_inode +EXPORT_SYMBOL vmlinux 0xc5d9c46c agp_try_unsupported_boot +EXPORT_SYMBOL vmlinux 0xc5ddf676 mmc_detect_change +EXPORT_SYMBOL vmlinux 0xc5f30929 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0xc5f3a576 read_cache_page_async +EXPORT_SYMBOL vmlinux 0xc5f3cd63 of_mdio_find_bus +EXPORT_SYMBOL vmlinux 0xc5fdef94 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xc6064391 uart_match_port +EXPORT_SYMBOL vmlinux 0xc62b9120 __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc633a1f3 neigh_connected_output +EXPORT_SYMBOL vmlinux 0xc647a3f9 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0xc65abeb7 agp3_generic_sizes +EXPORT_SYMBOL vmlinux 0xc65c7afc register_quota_format +EXPORT_SYMBOL vmlinux 0xc665d6d7 of_parse_phandle_with_args +EXPORT_SYMBOL vmlinux 0xc685ec0c scsi_device_get +EXPORT_SYMBOL vmlinux 0xc69a25fa pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0xc6a0ecf7 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0xc6b22c71 __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6cc7325 skb_free_datagram +EXPORT_SYMBOL vmlinux 0xc6eca7a8 inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0xc70cf337 blk_put_queue +EXPORT_SYMBOL vmlinux 0xc715b465 __skb_dst_set_noref +EXPORT_SYMBOL vmlinux 0xc7169230 seq_vprintf +EXPORT_SYMBOL vmlinux 0xc71835e2 of_find_device_by_node +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc72ae822 zero_fill_bio +EXPORT_SYMBOL vmlinux 0xc72f65b9 __skb_gso_segment +EXPORT_SYMBOL vmlinux 0xc73f9839 pcie_set_readrq +EXPORT_SYMBOL vmlinux 0xc751b75c bio_integrity_split +EXPORT_SYMBOL vmlinux 0xc7761251 d_validate +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc78855ef padata_set_cpumasks +EXPORT_SYMBOL vmlinux 0xc795e23e cpu_core_map +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7ad4c3e seq_write +EXPORT_SYMBOL vmlinux 0xc7ec6c27 strspn +EXPORT_SYMBOL vmlinux 0xc80db596 ppp_unit_number +EXPORT_SYMBOL vmlinux 0xc8276a79 nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xc8300ba0 vm_map_ram +EXPORT_SYMBOL vmlinux 0xc8339e24 string_unescape +EXPORT_SYMBOL vmlinux 0xc83b4d5b posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc89174b8 input_register_handler +EXPORT_SYMBOL vmlinux 0xc8a3d69b simple_release_fs +EXPORT_SYMBOL vmlinux 0xc8a729b6 page_readlink +EXPORT_SYMBOL vmlinux 0xc8b57c27 autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xc8bc0c17 ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0xc8c5b056 gen_pool_alloc +EXPORT_SYMBOL vmlinux 0xc8cc6d79 note_scsi_host +EXPORT_SYMBOL vmlinux 0xc8d11d6f lock_may_write +EXPORT_SYMBOL vmlinux 0xc90df95f vlan_untag +EXPORT_SYMBOL vmlinux 0xc918080a inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xc91ff664 down_read_trylock +EXPORT_SYMBOL vmlinux 0xc921c2ab __skb_get_rxhash +EXPORT_SYMBOL vmlinux 0xc93fbc54 wait_for_completion_io +EXPORT_SYMBOL vmlinux 0xc943b53f pci_request_region_exclusive +EXPORT_SYMBOL vmlinux 0xc94ef773 agp_copy_info +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc996d097 del_timer +EXPORT_SYMBOL vmlinux 0xc99e2a55 twl_rev +EXPORT_SYMBOL vmlinux 0xc9b8c308 __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0xc9df21da blk_fetch_request +EXPORT_SYMBOL vmlinux 0xc9f6a4fd kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0xca165425 xfrm_garbage_collect +EXPORT_SYMBOL vmlinux 0xca289d84 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0xca3b28c6 store_vr_state +EXPORT_SYMBOL vmlinux 0xca5382c5 sock_no_listen +EXPORT_SYMBOL vmlinux 0xca5ca27d find_lock_page +EXPORT_SYMBOL vmlinux 0xca5dbc50 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xca638cd4 ip6_frag_match +EXPORT_SYMBOL vmlinux 0xca825895 pmu_suspend +EXPORT_SYMBOL vmlinux 0xca87188e tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0xca89ff33 mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xca97446d __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0xca9ff231 mmc_release_host +EXPORT_SYMBOL vmlinux 0xcaa6d7cd serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0xcaa88f09 inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0xcaac5863 tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0xcac41c87 fifo_set_limit +EXPORT_SYMBOL vmlinux 0xcacd272d atomic64_sub_return +EXPORT_SYMBOL vmlinux 0xcad08e48 mmu_hash_lock +EXPORT_SYMBOL vmlinux 0xcad9a7eb iunique +EXPORT_SYMBOL vmlinux 0xcae52045 xfrm_cfg_mutex +EXPORT_SYMBOL vmlinux 0xcaef2366 pci_set_dma_max_seg_size +EXPORT_SYMBOL vmlinux 0xcafda649 fddi_type_trans +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb0c5d50 param_get_uint +EXPORT_SYMBOL vmlinux 0xcb24a53e ppp_register_channel +EXPORT_SYMBOL vmlinux 0xcb2827b3 grab_cache_page_nowait +EXPORT_SYMBOL vmlinux 0xcb7c7233 ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0xcb81ffcb skb_queue_tail +EXPORT_SYMBOL vmlinux 0xcbb15d3b unregister_exec_domain +EXPORT_SYMBOL vmlinux 0xcbb490a0 napi_get_frags +EXPORT_SYMBOL vmlinux 0xcbb521ea devm_gpio_request_one +EXPORT_SYMBOL vmlinux 0xcbbf0a6f audit_log_task_context +EXPORT_SYMBOL vmlinux 0xcbc9557f unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0xcc17504d _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc35af9b textsearch_prepare +EXPORT_SYMBOL vmlinux 0xcc37f55c blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0xcc407f7d pci_dev_driver +EXPORT_SYMBOL vmlinux 0xcc47b125 account_page_dirtied +EXPORT_SYMBOL vmlinux 0xcc4b84da of_find_node_by_type +EXPORT_SYMBOL vmlinux 0xcc4bac60 md_flush_request +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc739396 tcp_recvmsg +EXPORT_SYMBOL vmlinux 0xcc7fa952 local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xcd0529c7 _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0xcd11d3bd blk_mq_end_io +EXPORT_SYMBOL vmlinux 0xcd1350b4 buffer_migrate_page +EXPORT_SYMBOL vmlinux 0xcd1772fc ip_fragment +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd2a2203 ps2_init +EXPORT_SYMBOL vmlinux 0xcd2bd5db crypto_sha256_update +EXPORT_SYMBOL vmlinux 0xcd48bb0c gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0xcd7b4b0b md_set_array_sectors +EXPORT_SYMBOL vmlinux 0xcd86c87f __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xcd95b0a2 bio_advance +EXPORT_SYMBOL vmlinux 0xcd967488 pci_alloc_dev +EXPORT_SYMBOL vmlinux 0xcda5bb3a __pagevec_release +EXPORT_SYMBOL vmlinux 0xcdaa834b of_match_device +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdccfe06 agp_bind_memory +EXPORT_SYMBOL vmlinux 0xcdce6462 pm860x_reg_read +EXPORT_SYMBOL vmlinux 0xcdd8c945 jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0xcde172ac radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0xce1c82ec dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0xce273deb pcim_enable_device +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce359ec9 inet_dgram_ops +EXPORT_SYMBOL vmlinux 0xce409cda pmac_set_early_video_resume +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce5d16a4 follow_down_one +EXPORT_SYMBOL vmlinux 0xce6d65bc xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xce74e36f sockfd_lookup +EXPORT_SYMBOL vmlinux 0xce7fd325 of_mdiobus_register +EXPORT_SYMBOL vmlinux 0xcebbbdfd mmc_flush_cache +EXPORT_SYMBOL vmlinux 0xcec97fb1 of_get_ddr_timings +EXPORT_SYMBOL vmlinux 0xceed8203 dev_close +EXPORT_SYMBOL vmlinux 0xcef51982 kstrtou16 +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xceff3bf6 unregister_qdisc +EXPORT_SYMBOL vmlinux 0xcf08bb2e pci_scan_bus +EXPORT_SYMBOL vmlinux 0xcf1b6a7f abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0xcf1fa7f0 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0xcf240438 dquot_destroy +EXPORT_SYMBOL vmlinux 0xcf2422f4 lock_fb_info +EXPORT_SYMBOL vmlinux 0xcf299481 __blk_end_request_all +EXPORT_SYMBOL vmlinux 0xcf40c2fc dev_get_flags +EXPORT_SYMBOL vmlinux 0xcf50f242 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0xcf62131c blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0xcf6bdc3e netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0xcf79e435 bdi_destroy +EXPORT_SYMBOL vmlinux 0xcf8eafac __sk_dst_check +EXPORT_SYMBOL vmlinux 0xcfa1de9c nf_setsockopt +EXPORT_SYMBOL vmlinux 0xcfeeba05 inet_csk_accept +EXPORT_SYMBOL vmlinux 0xd0181f4f __bitmap_xor +EXPORT_SYMBOL vmlinux 0xd0198215 dev_crit +EXPORT_SYMBOL vmlinux 0xd044cb12 ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0xd0496bcb sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0xd05c1b3c security_path_mkdir +EXPORT_SYMBOL vmlinux 0xd0620462 __break_lease +EXPORT_SYMBOL vmlinux 0xd06257a2 input_unregister_device +EXPORT_SYMBOL vmlinux 0xd0720a17 on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xd0887dbc ip6_xmit +EXPORT_SYMBOL vmlinux 0xd0a45fa5 pmu_enable_irled +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0c97753 pci_set_dma_seg_boundary +EXPORT_SYMBOL vmlinux 0xd0d42c42 mod_timer_pending +EXPORT_SYMBOL vmlinux 0xd0dbd71b serio_open +EXPORT_SYMBOL vmlinux 0xd0e0e39f i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0xd0ee38b8 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0xd0f36f0d audit_log_format +EXPORT_SYMBOL vmlinux 0xd0fb7cd4 __tasklet_hi_schedule_first +EXPORT_SYMBOL vmlinux 0xd0fef3b2 agp_free_key +EXPORT_SYMBOL vmlinux 0xd10438a0 gen10g_read_status +EXPORT_SYMBOL vmlinux 0xd10c3452 idr_init +EXPORT_SYMBOL vmlinux 0xd112a942 I_BDEV +EXPORT_SYMBOL vmlinux 0xd113acb4 mmc_put_card +EXPORT_SYMBOL vmlinux 0xd11c0dc1 __kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xd123a4b8 do_splice_direct +EXPORT_SYMBOL vmlinux 0xd1262886 rtas_data_buf +EXPORT_SYMBOL vmlinux 0xd13fba9f pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0xd1659960 scsi_device_put +EXPORT_SYMBOL vmlinux 0xd1727bb3 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd18464f3 console_stop +EXPORT_SYMBOL vmlinux 0xd189f44d arp_xmit +EXPORT_SYMBOL vmlinux 0xd18f2537 pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0xd196c9be kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xd197e9ea tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0xd1aae87d posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0xd1c270cc unregister_md_personality +EXPORT_SYMBOL vmlinux 0xd1cf1f45 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0xd1e3f3c4 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xd1e81b39 inet_add_offload +EXPORT_SYMBOL vmlinux 0xd1f98c8d flush_tlb_range +EXPORT_SYMBOL vmlinux 0xd21ae295 from_kgid_munged +EXPORT_SYMBOL vmlinux 0xd21d7b50 sk_send_sigurg +EXPORT_SYMBOL vmlinux 0xd220cf8a jiffies_to_timespec +EXPORT_SYMBOL vmlinux 0xd23a00bb sock_no_bind +EXPORT_SYMBOL vmlinux 0xd251d7b0 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0xd2530165 inode_dio_done +EXPORT_SYMBOL vmlinux 0xd254bb50 gen10g_config_aneg +EXPORT_SYMBOL vmlinux 0xd2555f19 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xd25adcbe pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd26ea79d ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0xd278734f bio_map_user +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd2892986 swiotlb_dma_mapping_error +EXPORT_SYMBOL vmlinux 0xd2a941d4 sg_init_table +EXPORT_SYMBOL vmlinux 0xd2ac7cf2 skb_unlink +EXPORT_SYMBOL vmlinux 0xd2af138b reservation_ww_class +EXPORT_SYMBOL vmlinux 0xd2cd5568 interruptible_sleep_on_timeout +EXPORT_SYMBOL vmlinux 0xd2ce66f8 scsi_finish_command +EXPORT_SYMBOL vmlinux 0xd2d2f60d ip_cmsg_recv +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2dbccce pci_find_next_bus +EXPORT_SYMBOL vmlinux 0xd2fc19bd proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0xd3172fbf pmac_resume_agp_for_card +EXPORT_SYMBOL vmlinux 0xd3187da4 pcibios_align_resource +EXPORT_SYMBOL vmlinux 0xd31ccb06 of_machine_is_compatible +EXPORT_SYMBOL vmlinux 0xd31f5204 dev_load +EXPORT_SYMBOL vmlinux 0xd32044b7 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0xd327a90b skb_append_datato_frags +EXPORT_SYMBOL vmlinux 0xd328c13a bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xd34ae9be tty_schedule_flip +EXPORT_SYMBOL vmlinux 0xd3680b4a scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0xd3949c48 mmc_align_data_size +EXPORT_SYMBOL vmlinux 0xd3a15c1f dump_align +EXPORT_SYMBOL vmlinux 0xd3be6276 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0xd3d369e0 jbd2_journal_start +EXPORT_SYMBOL vmlinux 0xd3e39291 mmc_can_reset +EXPORT_SYMBOL vmlinux 0xd3e6f60d cpu_possible_mask +EXPORT_SYMBOL vmlinux 0xd409383c pmu_request +EXPORT_SYMBOL vmlinux 0xd40e2f3c may_umount +EXPORT_SYMBOL vmlinux 0xd418e1c0 adjust_resource +EXPORT_SYMBOL vmlinux 0xd4804f03 rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0xd4b55526 phy_stop +EXPORT_SYMBOL vmlinux 0xd4b9e5ee request_firmware_nowait +EXPORT_SYMBOL vmlinux 0xd4bae646 xfrm_state_add +EXPORT_SYMBOL vmlinux 0xd4be7eaa jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0xd507fede dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0xd5358305 bioset_integrity_free +EXPORT_SYMBOL vmlinux 0xd5446154 netif_carrier_off +EXPORT_SYMBOL vmlinux 0xd573b23a twl6040_reg_write +EXPORT_SYMBOL vmlinux 0xd59fb316 inet_accept +EXPORT_SYMBOL vmlinux 0xd5a8e639 generic_write_checks +EXPORT_SYMBOL vmlinux 0xd5b2e52a single_step_exception +EXPORT_SYMBOL vmlinux 0xd5bb6a82 twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0xd5cb0b87 elv_rb_add +EXPORT_SYMBOL vmlinux 0xd5d6f6ed setup_arg_pages +EXPORT_SYMBOL vmlinux 0xd5e8444a __div64_32 +EXPORT_SYMBOL vmlinux 0xd5f2172f del_timer_sync +EXPORT_SYMBOL vmlinux 0xd6052f06 cdrom_media_changed +EXPORT_SYMBOL vmlinux 0xd606503d register_sysctl +EXPORT_SYMBOL vmlinux 0xd616683a ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0xd627480b strncat +EXPORT_SYMBOL vmlinux 0xd648e564 fb_match_mode +EXPORT_SYMBOL vmlinux 0xd64df2b0 ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0xd678f5cb max8998_update_reg +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd69b30e0 atomic64_add_unless +EXPORT_SYMBOL vmlinux 0xd6d09b89 page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0xd6d45481 netdev_change_features +EXPORT_SYMBOL vmlinux 0xd6d52870 create_empty_buffers +EXPORT_SYMBOL vmlinux 0xd6d63e9d lg_local_lock_cpu +EXPORT_SYMBOL vmlinux 0xd6db557f get_super +EXPORT_SYMBOL vmlinux 0xd6e25c12 single_release +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd711624b nobh_writepage +EXPORT_SYMBOL vmlinux 0xd7155976 d_genocide +EXPORT_SYMBOL vmlinux 0xd73520b6 f_setown +EXPORT_SYMBOL vmlinux 0xd7569440 fb_class +EXPORT_SYMBOL vmlinux 0xd75c79df smp_call_function +EXPORT_SYMBOL vmlinux 0xd77a5aa5 __bitmap_and +EXPORT_SYMBOL vmlinux 0xd79b5a02 allow_signal +EXPORT_SYMBOL vmlinux 0xd7a7fedc kblockd_schedule_delayed_work +EXPORT_SYMBOL vmlinux 0xd7abc2e7 switch_mmu_context +EXPORT_SYMBOL vmlinux 0xd7b985fa inode_add_rsv_space +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7ea7094 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xd7eae90c tty_port_tty_set +EXPORT_SYMBOL vmlinux 0xd803d1e0 mmc_gpio_request_cd +EXPORT_SYMBOL vmlinux 0xd816a065 init_net +EXPORT_SYMBOL vmlinux 0xd819342a d_path +EXPORT_SYMBOL vmlinux 0xd81dacaa do_sync_write +EXPORT_SYMBOL vmlinux 0xd87a73ba tty_write_room +EXPORT_SYMBOL vmlinux 0xd88fa86e kobject_set_name +EXPORT_SYMBOL vmlinux 0xd8931d00 freeze_bdev +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8a20424 seq_escape +EXPORT_SYMBOL vmlinux 0xd8af1b47 sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0xd8b1b6b5 d_move +EXPORT_SYMBOL vmlinux 0xd8b41fcc tty_port_tty_get +EXPORT_SYMBOL vmlinux 0xd8b65b7e tcp_gro_complete +EXPORT_SYMBOL vmlinux 0xd8bf4f27 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0xd8c668e0 registered_fb +EXPORT_SYMBOL vmlinux 0xd8c72cf0 ifla_policy +EXPORT_SYMBOL vmlinux 0xd8ce2e4f rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0xd8ded085 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xd8e37de4 agp_free_page_array +EXPORT_SYMBOL vmlinux 0xd8e484f0 register_chrdev_region +EXPORT_SYMBOL vmlinux 0xd8faa5a0 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0xd92514ca agp_special_page +EXPORT_SYMBOL vmlinux 0xd929e410 tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0xd92afabe bitmap_clear +EXPORT_SYMBOL vmlinux 0xd9498b22 proc_dointvec +EXPORT_SYMBOL vmlinux 0xd98060fc dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd9a9bb30 getname +EXPORT_SYMBOL vmlinux 0xd9bac924 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0xd9ce8f0c strnlen +EXPORT_SYMBOL vmlinux 0xd9d65238 __napi_schedule +EXPORT_SYMBOL vmlinux 0xda0bce69 pm860x_page_set_bits +EXPORT_SYMBOL vmlinux 0xda1d724a generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0xda2478d0 param_ops_short +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda65b01f scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0xda7893d1 filp_open +EXPORT_SYMBOL vmlinux 0xda7ca6cb fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xda7e8a66 sync_inode +EXPORT_SYMBOL vmlinux 0xda8af7ad fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0xdaa2b85c always_delete_dentry +EXPORT_SYMBOL vmlinux 0xdaa57ec3 totalhigh_pages +EXPORT_SYMBOL vmlinux 0xdac0e33a register_qdisc +EXPORT_SYMBOL vmlinux 0xdac88559 inet6_release +EXPORT_SYMBOL vmlinux 0xdacc62ea tc_classify_compat +EXPORT_SYMBOL vmlinux 0xdaea46d4 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0xdaf1b3c6 scsi_remove_target +EXPORT_SYMBOL vmlinux 0xdb0dfda5 sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0xdb11359f redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0xdb18dfa0 writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xdb24baf6 input_free_device +EXPORT_SYMBOL vmlinux 0xdb325add sock_release +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb6cadd5 neigh_app_ns +EXPORT_SYMBOL vmlinux 0xdb6f89fd ps2_handle_response +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb89ca5f input_unregister_handle +EXPORT_SYMBOL vmlinux 0xdb9865fe abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0xdba4db01 blk_queue_merge_bvec +EXPORT_SYMBOL vmlinux 0xdbb24fc2 down_write +EXPORT_SYMBOL vmlinux 0xdbcbcf96 proto_register +EXPORT_SYMBOL vmlinux 0xdbcd416e sysctl_ip_nonlocal_bind +EXPORT_SYMBOL vmlinux 0xdbe05398 pci_set_master +EXPORT_SYMBOL vmlinux 0xdbe87e76 ipmi_smi_watcher_register +EXPORT_SYMBOL vmlinux 0xdc047fc4 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc17377e led_set_brightness +EXPORT_SYMBOL vmlinux 0xdc20a831 ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0xdc3a7968 __frontswap_test +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc4310c1 xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0xdc63b06a locks_init_lock +EXPORT_SYMBOL vmlinux 0xdc732024 irq_stat +EXPORT_SYMBOL vmlinux 0xdc942659 pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0xdc9498dd down +EXPORT_SYMBOL vmlinux 0xdce923f8 open_exec +EXPORT_SYMBOL vmlinux 0xdcefb9a5 pmu_resume +EXPORT_SYMBOL vmlinux 0xdd0a2ba2 strlcat +EXPORT_SYMBOL vmlinux 0xdd27fa87 memchr +EXPORT_SYMBOL vmlinux 0xdd363ca3 handle_edge_irq +EXPORT_SYMBOL vmlinux 0xdd418e58 arp_send +EXPORT_SYMBOL vmlinux 0xdd58785f elv_abort_queue +EXPORT_SYMBOL vmlinux 0xdd7e2dc2 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0xdd8406fe jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0xdd99cfbf make_kgid +EXPORT_SYMBOL vmlinux 0xdd9a9975 netdev_all_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0xdde4d94a key_payload_reserve +EXPORT_SYMBOL vmlinux 0xdde546cf abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0xddec3d35 phy_start +EXPORT_SYMBOL vmlinux 0xddef94a9 fib_default_rule_pref +EXPORT_SYMBOL vmlinux 0xddf4664d devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0xde10eb10 param_set_invbool +EXPORT_SYMBOL vmlinux 0xde41c1db swiotlb_alloc_coherent +EXPORT_SYMBOL vmlinux 0xde48e9ca _raw_spin_lock +EXPORT_SYMBOL vmlinux 0xde4e3d69 scsi_free_command +EXPORT_SYMBOL vmlinux 0xde5464b4 phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0xde592435 vlan_uses_dev +EXPORT_SYMBOL vmlinux 0xde6ea6d0 generic_file_aio_write +EXPORT_SYMBOL vmlinux 0xde76dfd7 d_alloc_pseudo +EXPORT_SYMBOL vmlinux 0xde8a8947 devm_ioport_map +EXPORT_SYMBOL vmlinux 0xde91448c load_vr_state +EXPORT_SYMBOL vmlinux 0xde9360ba totalram_pages +EXPORT_SYMBOL vmlinux 0xde9b17ed agp3_generic_fetch_size +EXPORT_SYMBOL vmlinux 0xdee67b77 proc_remove +EXPORT_SYMBOL vmlinux 0xdee9cc14 __locks_copy_lock +EXPORT_SYMBOL vmlinux 0xdf182ca4 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf372ac1 get_agp_version +EXPORT_SYMBOL vmlinux 0xdf4bac86 scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0xdf4de370 net_dma_find_channel +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf58a838 pci_iounmap +EXPORT_SYMBOL vmlinux 0xdf59119f twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0xdf60cc27 __print_symbol +EXPORT_SYMBOL vmlinux 0xdf6955d1 devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdfa04c7a skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0xdfb5988b drop_super +EXPORT_SYMBOL vmlinux 0xdff1891a brioctl_set +EXPORT_SYMBOL vmlinux 0xdff43ed4 __debugger +EXPORT_SYMBOL vmlinux 0xdff56e64 adb_poll +EXPORT_SYMBOL vmlinux 0xe006498f generic_read_dir +EXPORT_SYMBOL vmlinux 0xe010c86b twl6030_mmc_card_detect +EXPORT_SYMBOL vmlinux 0xe02f97b4 gen10g_config_advert +EXPORT_SYMBOL vmlinux 0xe03a864b write_cache_pages +EXPORT_SYMBOL vmlinux 0xe04f7caa dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xe05607a4 gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0xe05cac5e nobh_write_end +EXPORT_SYMBOL vmlinux 0xe06141e9 security_sk_clone +EXPORT_SYMBOL vmlinux 0xe075d6eb iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xe094ef39 sg_next +EXPORT_SYMBOL vmlinux 0xe0969f5e mmc_gpio_free_ro +EXPORT_SYMBOL vmlinux 0xe09a9d2b netdev_info +EXPORT_SYMBOL vmlinux 0xe0aa11f6 eth_rebuild_header +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0b62a59 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0xe0d5a86c bio_integrity_prep +EXPORT_SYMBOL vmlinux 0xe0d8248c __pci_enable_wake +EXPORT_SYMBOL vmlinux 0xe0ef10c7 ida_simple_remove +EXPORT_SYMBOL vmlinux 0xe0fa83f2 ipmi_register_for_cmd +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe144b70f seq_open_private +EXPORT_SYMBOL vmlinux 0xe1761617 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xe1769ac1 generic_file_splice_read +EXPORT_SYMBOL vmlinux 0xe1a8eb0e in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xe1e0fed4 bio_integrity_advance +EXPORT_SYMBOL vmlinux 0xe1f30789 sock_wmalloc +EXPORT_SYMBOL vmlinux 0xe1f8fb96 scsi_remove_host +EXPORT_SYMBOL vmlinux 0xe200f872 secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xe20fa315 d_splice_alias +EXPORT_SYMBOL vmlinux 0xe21e6bbd skb_clone +EXPORT_SYMBOL vmlinux 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL vmlinux 0xe23ae481 blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe23b5d3a dget_parent +EXPORT_SYMBOL vmlinux 0xe23b75df kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0xe24d3a97 jiffies_64 +EXPORT_SYMBOL vmlinux 0xe272e427 __sock_create +EXPORT_SYMBOL vmlinux 0xe27681d7 scsi_calculate_bounce_limit +EXPORT_SYMBOL vmlinux 0xe280270a loop_register_transfer +EXPORT_SYMBOL vmlinux 0xe28698ec skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0xe292fef2 skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0xe29e1d0e out_of_line_wait_on_atomic_t +EXPORT_SYMBOL vmlinux 0xe2b59b72 __cleancache_put_page +EXPORT_SYMBOL vmlinux 0xe2be5498 lg_global_unlock +EXPORT_SYMBOL vmlinux 0xe2c7c9d6 __dst_free +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2dfba94 pagecache_write_begin +EXPORT_SYMBOL vmlinux 0xe2e8065e memdup_user +EXPORT_SYMBOL vmlinux 0xe2f0fc2c page_symlink +EXPORT_SYMBOL vmlinux 0xe2fae716 kmemdup +EXPORT_SYMBOL vmlinux 0xe3208e13 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0xe3414103 pagevec_lookup_tag +EXPORT_SYMBOL vmlinux 0xe358397a jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0xe35c5285 of_find_node_by_phandle +EXPORT_SYMBOL vmlinux 0xe37e1b5b neigh_compat_output +EXPORT_SYMBOL vmlinux 0xe384e0fb pci_scan_bridge +EXPORT_SYMBOL vmlinux 0xe3864081 key_link +EXPORT_SYMBOL vmlinux 0xe3c98263 inet_recvmsg +EXPORT_SYMBOL vmlinux 0xe3d6f284 fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xe3dc80ac write_inode_now +EXPORT_SYMBOL vmlinux 0xe3f260cc blk_end_request +EXPORT_SYMBOL vmlinux 0xe3f9b787 nf_register_hooks +EXPORT_SYMBOL vmlinux 0xe40a11c5 mnt_set_expiry +EXPORT_SYMBOL vmlinux 0xe410085e inode_set_bytes +EXPORT_SYMBOL vmlinux 0xe41588fc __module_put_and_exit +EXPORT_SYMBOL vmlinux 0xe43a6bb0 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0xe4483edc make_bad_inode +EXPORT_SYMBOL vmlinux 0xe44ea250 dev_deactivate +EXPORT_SYMBOL vmlinux 0xe44fe67f __scsi_put_command +EXPORT_SYMBOL vmlinux 0xe45d20cd pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0xe463c1c7 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0xe484e35f ioread32 +EXPORT_SYMBOL vmlinux 0xe4877662 tcp_make_synack +EXPORT_SYMBOL vmlinux 0xe48f8432 sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0xe4951de7 sock_no_accept +EXPORT_SYMBOL vmlinux 0xe496af0f km_policy_notify +EXPORT_SYMBOL vmlinux 0xe496cec1 mdiobus_read +EXPORT_SYMBOL vmlinux 0xe4a895fa up_write +EXPORT_SYMBOL vmlinux 0xe4aa3548 do_splice_to +EXPORT_SYMBOL vmlinux 0xe4b59eb7 rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0xe4b6632c sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0xe4eb2e53 scsi_register +EXPORT_SYMBOL vmlinux 0xe4f4665b ipmi_validate_addr +EXPORT_SYMBOL vmlinux 0xe4f47b7a ipv4_specific +EXPORT_SYMBOL vmlinux 0xe4f7902c inet6_bind +EXPORT_SYMBOL vmlinux 0xe4f7d9a1 lock_sock_nested +EXPORT_SYMBOL vmlinux 0xe4fe8ca1 _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0xe500b666 __netlink_dump_start +EXPORT_SYMBOL vmlinux 0xe5122890 flow_cache_genid +EXPORT_SYMBOL vmlinux 0xe5191172 tcp_parse_options +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe53336ab lock_rename +EXPORT_SYMBOL vmlinux 0xe5349b88 devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0xe53afc60 fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0xe53d1faa of_translate_dma_address +EXPORT_SYMBOL vmlinux 0xe54d5097 blk_queue_io_min +EXPORT_SYMBOL vmlinux 0xe55585df of_platform_device_create +EXPORT_SYMBOL vmlinux 0xe56bd905 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0xe574c7dc ndo_dflt_bridge_getlink +EXPORT_SYMBOL vmlinux 0xe57878a1 in6_pton +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe58af7df tcp_read_sock +EXPORT_SYMBOL vmlinux 0xe59be576 kill_fasync +EXPORT_SYMBOL vmlinux 0xe5a2896e scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0xe5aa4979 elevator_init +EXPORT_SYMBOL vmlinux 0xe5ae0c44 writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5c9b50c serial8250_do_pm +EXPORT_SYMBOL vmlinux 0xe5d4968b pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0xe5e56195 blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0xe5ec768d unregister_filesystem +EXPORT_SYMBOL vmlinux 0xe5ed5467 xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xe641573b jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0xe68f2fcd security_inode_readlink +EXPORT_SYMBOL vmlinux 0xe697d108 __blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe6a517b7 skb_orphan_partial +EXPORT_SYMBOL vmlinux 0xe6a75304 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0xe6ab72a6 ipmi_set_my_LUN +EXPORT_SYMBOL vmlinux 0xe6dd236d clear_pages +EXPORT_SYMBOL vmlinux 0xe6ebc016 key_create_or_update +EXPORT_SYMBOL vmlinux 0xe6f2f359 mnt_pin +EXPORT_SYMBOL vmlinux 0xe6fbe430 can_do_mlock +EXPORT_SYMBOL vmlinux 0xe6fd3ba8 register_cdrom +EXPORT_SYMBOL vmlinux 0xe706afab get_super_thawed +EXPORT_SYMBOL vmlinux 0xe72ce686 md_finish_reshape +EXPORT_SYMBOL vmlinux 0xe7321143 tcp_shutdown +EXPORT_SYMBOL vmlinux 0xe74dc622 __sb_end_write +EXPORT_SYMBOL vmlinux 0xe7a664c4 nf_hooks +EXPORT_SYMBOL vmlinux 0xe7a81967 audit_log_secctx +EXPORT_SYMBOL vmlinux 0xe7b142e6 mfd_cell_disable +EXPORT_SYMBOL vmlinux 0xe7b9b481 blk_run_queue +EXPORT_SYMBOL vmlinux 0xe7bf317d fsl_lbc_addr +EXPORT_SYMBOL vmlinux 0xe7c84014 lockref_mark_dead +EXPORT_SYMBOL vmlinux 0xe7ce7439 _memcpy_fromio +EXPORT_SYMBOL vmlinux 0xe7d47bab macio_request_resources +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7da826f cdev_add +EXPORT_SYMBOL vmlinux 0xe7e19c15 tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0xe7fad326 xfrm_register_km +EXPORT_SYMBOL vmlinux 0xe8023293 netpoll_setup +EXPORT_SYMBOL vmlinux 0xe81ff083 sk_stop_timer +EXPORT_SYMBOL vmlinux 0xe82cc752 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0xe851bb05 queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xe8532641 remove_proc_subtree +EXPORT_SYMBOL vmlinux 0xe85578ae phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0xe864a7d1 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0xe881124c bdev_stack_limits +EXPORT_SYMBOL vmlinux 0xe8849c54 tcp_enter_memory_pressure +EXPORT_SYMBOL vmlinux 0xe898bfba crc32_le_combine +EXPORT_SYMBOL vmlinux 0xe8ae1ccc block_truncate_page +EXPORT_SYMBOL vmlinux 0xe8b63ace radix_tree_range_tag_if_tagged +EXPORT_SYMBOL vmlinux 0xe8b86b5b security_path_unlink +EXPORT_SYMBOL vmlinux 0xe8bea3bc qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xe8c01a80 key_alloc +EXPORT_SYMBOL vmlinux 0xe8d16827 pci_find_capability +EXPORT_SYMBOL vmlinux 0xe8dacb40 blk_mq_init_commands +EXPORT_SYMBOL vmlinux 0xe8e5dd21 abx500_register_ops +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe937bc5a jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0xe944791b irq_to_desc +EXPORT_SYMBOL vmlinux 0xe946cb7f generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe9755da4 pci_set_mwi +EXPORT_SYMBOL vmlinux 0xe99b3a16 find_get_page +EXPORT_SYMBOL vmlinux 0xe9a8563a set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0xe9b865c4 posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0xe9c2a5f8 machine_id +EXPORT_SYMBOL vmlinux 0xe9cef51e __devm_request_region +EXPORT_SYMBOL vmlinux 0xe9d8456a blk_init_tags +EXPORT_SYMBOL vmlinux 0xe9e45d73 blk_register_region +EXPORT_SYMBOL vmlinux 0xe9f44e3e __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xea054b22 nla_policy_len +EXPORT_SYMBOL vmlinux 0xea10212a int_to_scsilun +EXPORT_SYMBOL vmlinux 0xea10655a __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xea16dd4c tcp_destroy_cgroup +EXPORT_SYMBOL vmlinux 0xea23ac94 bio_integrity_enabled +EXPORT_SYMBOL vmlinux 0xea3b0ef8 padata_unregister_cpumask_notifier +EXPORT_SYMBOL vmlinux 0xea6e3003 of_find_compatible_node +EXPORT_SYMBOL vmlinux 0xea7987f1 key_update +EXPORT_SYMBOL vmlinux 0xea825016 key_put +EXPORT_SYMBOL vmlinux 0xea863fdf pcie_set_mps +EXPORT_SYMBOL vmlinux 0xea914391 free_mdio_bitbang +EXPORT_SYMBOL vmlinux 0xea968c96 ___ratelimit +EXPORT_SYMBOL vmlinux 0xeaa2cb0b sget +EXPORT_SYMBOL vmlinux 0xeaa356b2 blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0xead06877 inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0xead241d9 mpage_readpage +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb4c1715 inet_ioctl +EXPORT_SYMBOL vmlinux 0xeb55a931 __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xeb6560cc inet_release +EXPORT_SYMBOL vmlinux 0xeb85a1ce vfs_writev +EXPORT_SYMBOL vmlinux 0xeba2a1f7 rtas_indicator_present +EXPORT_SYMBOL vmlinux 0xebc3df4a do_splice_from +EXPORT_SYMBOL vmlinux 0xebcbee9b dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0xebcd3f61 tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0xebdbe48c radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0xebdf5371 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0xebeee887 from_kuid +EXPORT_SYMBOL vmlinux 0xebf59d56 inet_frags_exit_net +EXPORT_SYMBOL vmlinux 0xec08098f generic_shutdown_super +EXPORT_SYMBOL vmlinux 0xec17ebb0 of_match_node +EXPORT_SYMBOL vmlinux 0xec1b7189 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0xec222963 kset_register +EXPORT_SYMBOL vmlinux 0xec2fa28a backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xec36f49d sock_no_shutdown +EXPORT_SYMBOL vmlinux 0xec57404b blk_integrity_register +EXPORT_SYMBOL vmlinux 0xec576041 input_open_device +EXPORT_SYMBOL vmlinux 0xec780f3f filemap_fault +EXPORT_SYMBOL vmlinux 0xeca5e739 udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0xecbb926f xor_altivec_3 +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xed1432b7 blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0xed45c67b dev_disable_lro +EXPORT_SYMBOL vmlinux 0xed4c4aef xfrm_state_walk +EXPORT_SYMBOL vmlinux 0xed553063 kfree_skb_list +EXPORT_SYMBOL vmlinux 0xed597524 qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xed74e22f generic_pipe_buf_map +EXPORT_SYMBOL vmlinux 0xed93f29e __kunmap_atomic +EXPORT_SYMBOL vmlinux 0xed94ff08 pci_set_power_state +EXPORT_SYMBOL vmlinux 0xed9f9a20 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedc410d0 udplite_table +EXPORT_SYMBOL vmlinux 0xedc7ecaa revalidate_disk +EXPORT_SYMBOL vmlinux 0xedc8609c pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0xedd47a57 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0xeddd805a dev_printk +EXPORT_SYMBOL vmlinux 0xede8f6d1 inode_needs_sync +EXPORT_SYMBOL vmlinux 0xedfcb2bd mmc_remove_host +EXPORT_SYMBOL vmlinux 0xedfd292c of_platform_bus_probe +EXPORT_SYMBOL vmlinux 0xee06fe48 dentry_unhash +EXPORT_SYMBOL vmlinux 0xee246dff ida_destroy +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee31605a gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0xee3496c3 dma_pool_alloc +EXPORT_SYMBOL vmlinux 0xee3a8999 kern_unmount +EXPORT_SYMBOL vmlinux 0xee4637d8 dquot_drop +EXPORT_SYMBOL vmlinux 0xee468b4c proc_mkdir +EXPORT_SYMBOL vmlinux 0xee59412f adb_try_handler_change +EXPORT_SYMBOL vmlinux 0xee89966c ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xee96580f mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0xeea79571 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0xeea9dbaf bitmap_bitremap +EXPORT_SYMBOL vmlinux 0xeeb412a6 generic_permission +EXPORT_SYMBOL vmlinux 0xeee45a16 dev_warn +EXPORT_SYMBOL vmlinux 0xeef161aa groups_free +EXPORT_SYMBOL vmlinux 0xeefa24a0 unregister_console +EXPORT_SYMBOL vmlinux 0xef01b165 mdiobus_free +EXPORT_SYMBOL vmlinux 0xef0e0fb8 __scsi_alloc_queue +EXPORT_SYMBOL vmlinux 0xef109449 interruptible_sleep_on +EXPORT_SYMBOL vmlinux 0xef20c146 inet_put_port +EXPORT_SYMBOL vmlinux 0xef7237e8 tcf_hash_search +EXPORT_SYMBOL vmlinux 0xefac5758 from_kuid_munged +EXPORT_SYMBOL vmlinux 0xefd6c1b3 scsi_nonblockable_ioctl +EXPORT_SYMBOL vmlinux 0xefdbf73c dcb_getapp +EXPORT_SYMBOL vmlinux 0xefdd70ce security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0xefde1bbe flush_dcache_range +EXPORT_SYMBOL vmlinux 0xefef116f fsnotify_init_mark +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf0025fe7 tty_register_device +EXPORT_SYMBOL vmlinux 0xf026b4c7 security_path_rename +EXPORT_SYMBOL vmlinux 0xf032466e security_inode_permission +EXPORT_SYMBOL vmlinux 0xf05ffa15 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0xf0619801 timekeeping_clocktai +EXPORT_SYMBOL vmlinux 0xf0641faa md_register_thread +EXPORT_SYMBOL vmlinux 0xf065cd4b splice_from_pipe_end +EXPORT_SYMBOL vmlinux 0xf065f629 ioread16be +EXPORT_SYMBOL vmlinux 0xf087137d __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0xf08af4b5 agp_generic_destroy_page +EXPORT_SYMBOL vmlinux 0xf09097cd fb_blank +EXPORT_SYMBOL vmlinux 0xf09de776 get_random_int +EXPORT_SYMBOL vmlinux 0xf0c42f33 kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0xf0e0b525 update_region +EXPORT_SYMBOL vmlinux 0xf0e3dbdf eth_change_mtu +EXPORT_SYMBOL vmlinux 0xf0ef15b4 list_sort +EXPORT_SYMBOL vmlinux 0xf0ef8699 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0xf0f1246c kvasprintf +EXPORT_SYMBOL vmlinux 0xf0fd4e8f rwsem_down_read_failed +EXPORT_SYMBOL vmlinux 0xf0fe0036 register_framebuffer +EXPORT_SYMBOL vmlinux 0xf10ca3e7 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0xf10de535 ioread8 +EXPORT_SYMBOL vmlinux 0xf1183285 macio_dev_get +EXPORT_SYMBOL vmlinux 0xf11cd6ce down_interruptible +EXPORT_SYMBOL vmlinux 0xf120872a dql_completed +EXPORT_SYMBOL vmlinux 0xf12fa07d d_rehash +EXPORT_SYMBOL vmlinux 0xf13feb57 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0xf147dcb2 hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0xf173d2d0 phy_detach +EXPORT_SYMBOL vmlinux 0xf1900d65 d_instantiate +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf19e9355 cpu_online_mask +EXPORT_SYMBOL vmlinux 0xf19ecf93 clear_bdi_congested +EXPORT_SYMBOL vmlinux 0xf1a92c76 pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1deabf2 div64_u64 +EXPORT_SYMBOL vmlinux 0xf1e06df1 gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf202c5cb radix_tree_insert +EXPORT_SYMBOL vmlinux 0xf209f690 generic_setxattr +EXPORT_SYMBOL vmlinux 0xf20dabd8 free_irq +EXPORT_SYMBOL vmlinux 0xf20e3dc4 follow_down +EXPORT_SYMBOL vmlinux 0xf225cff9 arp_create +EXPORT_SYMBOL vmlinux 0xf22881e8 lg_local_lock +EXPORT_SYMBOL vmlinux 0xf23c402d inode_init_once +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf2400a9c pipe_lock +EXPORT_SYMBOL vmlinux 0xf247e933 pipe_to_file +EXPORT_SYMBOL vmlinux 0xf2576cb9 ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL vmlinux 0xf27ce949 inet_add_protocol +EXPORT_SYMBOL vmlinux 0xf2821d6e pcim_pin_device +EXPORT_SYMBOL vmlinux 0xf2921752 scsi_get_command +EXPORT_SYMBOL vmlinux 0xf29849ea audit_log +EXPORT_SYMBOL vmlinux 0xf2a0af8f backlight_device_registered +EXPORT_SYMBOL vmlinux 0xf2b1ac8e __getnstimeofday +EXPORT_SYMBOL vmlinux 0xf2d21404 kmap_to_page +EXPORT_SYMBOL vmlinux 0xf2f32b11 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0xf313da4e sha_transform +EXPORT_SYMBOL vmlinux 0xf3173f21 call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0xf322a206 bit_waitqueue +EXPORT_SYMBOL vmlinux 0xf32341a1 input_close_device +EXPORT_SYMBOL vmlinux 0xf3239916 get_pci_dma_ops +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf33a96f7 pci_read_vpd +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf347e5c1 neigh_for_each +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf3be25f2 thermal_cdev_update +EXPORT_SYMBOL vmlinux 0xf3bf0bce __bitmap_complement +EXPORT_SYMBOL vmlinux 0xf3df2564 __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0xf4033be7 simple_rename +EXPORT_SYMBOL vmlinux 0xf4038687 pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0xf40b2297 __crypto_memneq +EXPORT_SYMBOL vmlinux 0xf41345c4 ip_check_defrag +EXPORT_SYMBOL vmlinux 0xf418b8b6 skb_find_text +EXPORT_SYMBOL vmlinux 0xf41a5bbe bdi_setup_and_register +EXPORT_SYMBOL vmlinux 0xf4398d2d blk_get_backing_dev_info +EXPORT_SYMBOL vmlinux 0xf441ac43 ioread8_rep +EXPORT_SYMBOL vmlinux 0xf4449388 timer_interrupt +EXPORT_SYMBOL vmlinux 0xf44b3443 set_create_files_as +EXPORT_SYMBOL vmlinux 0xf45abb0f skb_put +EXPORT_SYMBOL vmlinux 0xf4a580bd netlink_broadcast +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4c9ca05 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0xf4ca65f6 __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf51dc09b __ww_mutex_lock +EXPORT_SYMBOL vmlinux 0xf5222143 _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0xf52321e0 atomic64_sub +EXPORT_SYMBOL vmlinux 0xf52eb23c of_device_alloc +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf545489f jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0xf5455f7b ps2_command +EXPORT_SYMBOL vmlinux 0xf54c51a2 dma_pool_free +EXPORT_SYMBOL vmlinux 0xf54c6e96 __secpath_destroy +EXPORT_SYMBOL vmlinux 0xf55674cb send_sig +EXPORT_SYMBOL vmlinux 0xf56be778 inet6_add_protocol +EXPORT_SYMBOL vmlinux 0xf5a085c4 gen_pool_destroy +EXPORT_SYMBOL vmlinux 0xf5a62ecc _memset_io +EXPORT_SYMBOL vmlinux 0xf5b83a95 invalidate_partition +EXPORT_SYMBOL vmlinux 0xf5b88ec1 __vlan_find_dev_deep +EXPORT_SYMBOL vmlinux 0xf5bc56ed new_inode +EXPORT_SYMBOL vmlinux 0xf5c05914 generic_segment_checks +EXPORT_SYMBOL vmlinux 0xf5c2da12 invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0xf5c4f9fe __free_pages +EXPORT_SYMBOL vmlinux 0xf5e1558d crash_shutdown_unregister +EXPORT_SYMBOL vmlinux 0xf5eb86ea blk_verify_command +EXPORT_SYMBOL vmlinux 0xf6270ee1 lro_receive_frags +EXPORT_SYMBOL vmlinux 0xf632b1fc mmc_get_card +EXPORT_SYMBOL vmlinux 0xf6388c56 sysctl_ip_default_ttl +EXPORT_SYMBOL vmlinux 0xf667b2ce tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0xf67f4ed0 gen_pool_add_virt +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf68b81f1 tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0xf69c6cdc posix_lock_file_wait +EXPORT_SYMBOL vmlinux 0xf6bb4729 color_table +EXPORT_SYMBOL vmlinux 0xf6e9b106 fget_raw +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6f0e432 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0xf70384d7 __debugger_sstep +EXPORT_SYMBOL vmlinux 0xf7120aca alloc_disk +EXPORT_SYMBOL vmlinux 0xf71521ba atomic64_add_return +EXPORT_SYMBOL vmlinux 0xf71c4848 km_new_mapping +EXPORT_SYMBOL vmlinux 0xf720c45e skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0xf741c793 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf79099f1 update_time +EXPORT_SYMBOL vmlinux 0xf795b1de elv_unregister_queue +EXPORT_SYMBOL vmlinux 0xf7a08e09 netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0xf7b12aee __next_cpu +EXPORT_SYMBOL vmlinux 0xf7be85d5 __register_binfmt +EXPORT_SYMBOL vmlinux 0xf7df7b75 scsi_add_device +EXPORT_SYMBOL vmlinux 0xf7dffaca sock_no_socketpair +EXPORT_SYMBOL vmlinux 0xf7fc4d5c load_nls_default +EXPORT_SYMBOL vmlinux 0xf803fe39 bitmap_set +EXPORT_SYMBOL vmlinux 0xf80e7aeb free_task +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf827cb83 free_reserved_area +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf83f6849 xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0xf8466943 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0xf84b76d2 inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0xf85a6b2a udplite_prot +EXPORT_SYMBOL vmlinux 0xf8930028 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0xf8949496 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0xf89c8e07 ida_pre_get +EXPORT_SYMBOL vmlinux 0xf8ba5b05 vfs_open +EXPORT_SYMBOL vmlinux 0xf8d6c4a0 dquot_free_inode +EXPORT_SYMBOL vmlinux 0xf8dc8918 netif_skb_dev_features +EXPORT_SYMBOL vmlinux 0xf8dfb53a bdi_register +EXPORT_SYMBOL vmlinux 0xf8ebfecd xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xf907a1f8 drop_nlink +EXPORT_SYMBOL vmlinux 0xf90b0468 simple_pin_fs +EXPORT_SYMBOL vmlinux 0xf91d448a mmc_power_save_host +EXPORT_SYMBOL vmlinux 0xf922b2d7 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0xf9348cbc xz_dec_run +EXPORT_SYMBOL vmlinux 0xf944370e kmem_cache_create +EXPORT_SYMBOL vmlinux 0xf946bb8c __ip_dev_find +EXPORT_SYMBOL vmlinux 0xf95d693f tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0xf9614997 devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0xf96437e3 pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0xf972d48c udp6_csum_init +EXPORT_SYMBOL vmlinux 0xf9839cd5 phy_driver_register +EXPORT_SYMBOL vmlinux 0xf9883cb0 ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0xf9913637 tty_port_close_start +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9afb08a sock_i_ino +EXPORT_SYMBOL vmlinux 0xf9c367e0 iov_pages +EXPORT_SYMBOL vmlinux 0xf9c9a1f3 vfs_fsync +EXPORT_SYMBOL vmlinux 0xf9d08e58 pci_enable_ido +EXPORT_SYMBOL vmlinux 0xf9e695cb pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0xf9e73082 scnprintf +EXPORT_SYMBOL vmlinux 0xf9f1d213 dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0xfa483183 pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa5b2031 max8925_set_bits +EXPORT_SYMBOL vmlinux 0xfa673ac2 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0xfa6d7ad9 mmc_free_host +EXPORT_SYMBOL vmlinux 0xfa7c371f scsi_allocate_command +EXPORT_SYMBOL vmlinux 0xfa7f3156 wl12xx_get_platform_data +EXPORT_SYMBOL vmlinux 0xfa888aa0 ipmi_register_smi +EXPORT_SYMBOL vmlinux 0xfa97395f sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfacf99f8 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0xfadb5750 pmu_unlock +EXPORT_SYMBOL vmlinux 0xfae61a65 netif_rx +EXPORT_SYMBOL vmlinux 0xfae67b1f cap_mmap_addr +EXPORT_SYMBOL vmlinux 0xfaec9ea5 qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0xfaf228e7 cfb_fillrect +EXPORT_SYMBOL vmlinux 0xfaf98462 bitrev32 +EXPORT_SYMBOL vmlinux 0xfb0bbf16 sock_no_getname +EXPORT_SYMBOL vmlinux 0xfb19ad86 scsi_init_io +EXPORT_SYMBOL vmlinux 0xfb1c065a dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0xfb429019 bdi_unregister +EXPORT_SYMBOL vmlinux 0xfb4abc73 simple_link +EXPORT_SYMBOL vmlinux 0xfb50705a vc_resize +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb86bab8 vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0xfb8a2d59 ata_dev_printk +EXPORT_SYMBOL vmlinux 0xfb94103e __clzdi2 +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbbd8070 scsi_prep_state_check +EXPORT_SYMBOL vmlinux 0xfbc1fef2 nf_reinject +EXPORT_SYMBOL vmlinux 0xfbe8273f dev_driver_string +EXPORT_SYMBOL vmlinux 0xfc0118aa bitmap_startwrite +EXPORT_SYMBOL vmlinux 0xfc02b7ad sysctl_tcp_wmem +EXPORT_SYMBOL vmlinux 0xfc2d089b security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc3aa256 d_lookup +EXPORT_SYMBOL vmlinux 0xfc3b160f mempool_create_node +EXPORT_SYMBOL vmlinux 0xfc422fad xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0xfc65459a kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0xfcaa04a0 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xfcb77cfd ipmi_free_recv_msg +EXPORT_SYMBOL vmlinux 0xfcc2a43c utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0xfcc9512e netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0xfcd8d905 mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0xfcd9d31e sock_no_sendpage +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfcf020ce udp_proc_unregister +EXPORT_SYMBOL vmlinux 0xfcfa03ff fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0xfd01eadc inet_frags_init_net +EXPORT_SYMBOL vmlinux 0xfd047798 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0xfd0933d4 should_remove_suid +EXPORT_SYMBOL vmlinux 0xfd0c5038 adb_unregister +EXPORT_SYMBOL vmlinux 0xfd1605e9 bio_split +EXPORT_SYMBOL vmlinux 0xfd173657 test_set_page_writeback +EXPORT_SYMBOL vmlinux 0xfd276f40 mfd_cell_enable +EXPORT_SYMBOL vmlinux 0xfd6293c2 boot_tvec_bases +EXPORT_SYMBOL vmlinux 0xfd65ea1f page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0xfd66aaf7 __wait_on_buffer +EXPORT_SYMBOL vmlinux 0xfd693232 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0xfd923d6b pci_save_state +EXPORT_SYMBOL vmlinux 0xfd99623a ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xfda87f04 bio_uncopy_user +EXPORT_SYMBOL vmlinux 0xfdb497a4 seq_open +EXPORT_SYMBOL vmlinux 0xfdb6cedc _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0xfdb9b629 ioread32be +EXPORT_SYMBOL vmlinux 0xfde23ecd dquot_acquire +EXPORT_SYMBOL vmlinux 0xfdeaf9ba tty_name +EXPORT_SYMBOL vmlinux 0xfded48ed enable_kernel_fp +EXPORT_SYMBOL vmlinux 0xfdfc0b3b fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe02dd39 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0xfe34fe0f flush_hash_entry +EXPORT_SYMBOL vmlinux 0xfe41b70a find_get_pages_tag +EXPORT_SYMBOL vmlinux 0xfe54fe4d vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe7c4287 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0xfeacd0c1 flock_lock_file_wait +EXPORT_SYMBOL vmlinux 0xfec369c6 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0xfed5bf27 seq_bitmap_list +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfee85aa4 default_llseek +EXPORT_SYMBOL vmlinux 0xfef96e23 __scsi_print_command +EXPORT_SYMBOL vmlinux 0xff00f749 file_update_time +EXPORT_SYMBOL vmlinux 0xff1765c7 rtas_call +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff2dcf12 __pci_register_driver +EXPORT_SYMBOL vmlinux 0xff3dd9ed prepare_binprm +EXPORT_SYMBOL vmlinux 0xff6847de sock_no_mmap +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff6dea25 smp_hw_index +EXPORT_SYMBOL vmlinux 0xff70c1b5 input_release_device +EXPORT_SYMBOL vmlinux 0xff7567ab inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0xff886b17 agp_create_memory +EXPORT_SYMBOL vmlinux 0xff8c3d74 pci_set_ltr +EXPORT_SYMBOL vmlinux 0xff9ca065 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0xffcdb144 d_alloc_name +EXPORT_SYMBOL vmlinux 0xffceabf2 inet6_protos +EXPORT_SYMBOL vmlinux 0xffd5a395 default_wake_function +EXPORT_SYMBOL vmlinux 0xffdb82bc sg_free_table +EXPORT_SYMBOL vmlinux 0xffe7e647 __dquot_free_space +EXPORT_SYMBOL_GPL crypto/af_alg 0x1ecfcd73 af_alg_complete +EXPORT_SYMBOL_GPL crypto/af_alg 0x2f2323a0 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x33ac6e04 af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x58716898 af_alg_wait_for_completion +EXPORT_SYMBOL_GPL crypto/af_alg 0x77a09ee4 af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0x925214c5 af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x93957c0c af_alg_cmsg_send +EXPORT_SYMBOL_GPL crypto/af_alg 0xa621aae6 af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0xa85b88de af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0xc9eb6e0d async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x0c2b3ec5 async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x34f1115f async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x7dff17b7 async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xd27c7be3 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x105534ac async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x748c9208 __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x866914a4 async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x86ef1aa2 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xd2bed391 async_xor +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xea564d44 async_xor_val +EXPORT_SYMBOL_GPL crypto/authenc 0x587ef278 crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0x3147c17d blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x27278ca9 __cast5_encrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x4a2a3ca6 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0xcb4847d3 cast5_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1291971c __cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1e2c961f __cast6_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x63f4a041 cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x8f04034a __cast6_encrypt +EXPORT_SYMBOL_GPL crypto/cast_common 0x08aa6fb7 cast_s1 +EXPORT_SYMBOL_GPL crypto/cast_common 0x0c5fbf8a cast_s3 +EXPORT_SYMBOL_GPL crypto/cast_common 0xe39dd4b4 cast_s2 +EXPORT_SYMBOL_GPL crypto/cast_common 0xee83a4f3 cast_s4 +EXPORT_SYMBOL_GPL crypto/cryptd 0x07aa25b8 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x1d809700 cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x9384d333 cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xb199cced cryptd_alloc_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0xc5827bde cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xc76d3075 cryptd_free_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0xcc1d7130 cryptd_ablkcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xccf7d746 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xe8269c9f cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xf57a98b7 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/des_generic 0xcfd9a2c0 des_ekey +EXPORT_SYMBOL_GPL crypto/lrw 0x1cead328 lrw_crypt +EXPORT_SYMBOL_GPL crypto/lrw 0x3864eb66 lrw_free_table +EXPORT_SYMBOL_GPL crypto/lrw 0xcd074900 lrw_init_table +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x5ddb33e9 __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x77b39cb4 __serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x7b6c3de8 serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x8a1a99ad __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/twofish_common 0x0f62991e twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0x6c3229bb __twofish_setkey +EXPORT_SYMBOL_GPL crypto/xts 0x478e9341 xts_crypt +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x0dc1f9fa ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x3eb1b779 ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x48fc4b14 ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x4d567294 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x9ba42e9e ahci_platform_suspend +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x9c44b5fd ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xc2cc7fef ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xccfdf4b7 ahci_platform_resume +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xe7eba7a3 ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xea7d5edb ahci_platform_suspend_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xf9d294ff ahci_platform_resume_host +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x0cea6b9f ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x0fc7f388 ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x22828f3d ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x240dbd02 ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x244077f8 ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x4ab33017 ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x52f984ab ahci_sdev_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x57611261 ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5865cce9 ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5eacba1f ahci_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x694f923e ahci_thread_fn +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x69d31806 ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6e05c4e7 ahci_hw_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8ba854ac ahci_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x9ee37b1d ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa0a46015 ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa7b11fe6 ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xbadb2ca3 ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xbfa102e1 ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xdc4a1ccc ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xe244df0c ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xee69ab1c ahci_shost_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xf3e2f98d ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0x30f151d5 __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/ata/pata_sis 0x2b59f062 sis_info133_for_sata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x14102f23 ks0108_displaystate +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x48a70518 ks0108_writedata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x4f506333 ks0108_startline +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x6edae968 ks0108_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xbf4774db ks0108_writecontrol +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xedde6df2 ks0108_page +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xfee8ef7b ks0108_address +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0e43f468 bcma_core_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x11e57132 bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x1f27911b bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x25b605d9 bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x28727c33 bcma_core_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x39ca222b bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x62649b49 bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x6ca4b275 bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x755d9976 bcma_find_core +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7e60ef82 bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x9aaa365b bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa63a8d57 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa922b8f0 bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xaa0a23b0 bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb397c343 bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xbe2a8667 bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc393524c __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xc9e64c71 bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xcaf15830 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd3c89a47 bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd8e39754 bcma_core_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe0e4a663 bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf4399187 bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x41f22ab6 btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x665f2cfc btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x74b81546 btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x7c5206a6 btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x7e8d862b btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x88ac27b0 btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x9c87a708 btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x9d8c3756 btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xb4a07a64 btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xe6ef3fc5 btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x058e036d dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x21a8cee2 dw_dma_resume +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x319b05c5 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xbc5049f8 dw_dma_shutdown +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xe8622997 dw_dma_suspend +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x157ea0ac edac_device_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x26c345b2 edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x3334feca edac_mc_free +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x3e0e12cd find_mci_by_dev +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x4b5e1ba0 edac_device_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x4f6b20b0 edac_device_handle_ce +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x564d55c9 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x69259f22 edac_mem_types +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x74e7c675 edac_pci_reset_delay_period +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x82aaf905 edac_device_handle_ue +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x856be16f edac_pci_handle_pe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x8c7182f5 edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x91f9aba4 edac_pci_handle_npe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x9fab5890 edac_mc_alloc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xa81598c7 edac_pci_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xaecbde2c edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xaef434a0 edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc78d3108 edac_mc_del_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc82dc4ab edac_device_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xd4e3afa6 edac_mc_add_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xdb2faab8 edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xde4834b7 edac_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xe051b52f edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xfdbe1ea0 edac_pci_del_device +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xf4ade51f fw_card_release +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x0353f512 bgpio_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x55481cb2 bgpio_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x773a35b7 __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x8cefd32b __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x4f8f38a8 drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xa68dfc5b drm_vm_open_locked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xcc6593ac drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x59aaf497 ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x6adf436b ttm_prime_fd_to_handle +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xb2b9fa3b ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xce36343e ttm_prime_handle_to_fd +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xdfa37ee0 ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x07268674 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0c236358 hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0c26fa76 hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0ea6bdd3 hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1976f16e hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1b02a32b hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1ec3fc58 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x215f594d hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x25a663c3 hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2be57920 hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3352358b hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3d427899 hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x41d4bb3f hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x44b9eeb3 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4906a967 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x49b92ca5 hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7284c588 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7a629451 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7ff6b756 hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x895a0d04 hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x91953b1e hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9907ec08 hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x9d36c571 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa41b949a hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa64c58d1 hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb0bb7865 hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xba79458d hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbc1aca88 hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xca8386f6 hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcc9dbf28 hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd3272949 hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe2764d32 hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf2e84f5a hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf81c6dea hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf991ae19 hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x1872fdb8 roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x2f622ea1 roccat_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x8c4181ec roccat_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x19c51a43 roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x20cc4ff8 roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x5243246e roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xae9943b1 roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xc0f8fee1 roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xcee771e2 roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x1429da75 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x518d0a7e sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x87fad4ae sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x8c6a4a23 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x8edd0a63 sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x93f4e53c sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xdff21aac sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xe5b90e7f sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x01fd453e usbhid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x8eb5be7a hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x17e0db2b hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x1b5c156e hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2b522975 hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5b0177b4 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5e0b455c hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x928821d2 hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xb31e80a6 hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xb65e5998 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xb971abe4 hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xbc02b571 hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xbcba3e5d hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xda55a8c8 hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xe2332ef2 hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x4f888bd2 adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x678c3d38 adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xd9ebd2a7 adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x139b1399 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x18aa7561 pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x5603d557 pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x62f9b182 pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x68a8db9b pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x6a040e68 pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x8242dc21 pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xa7e4177a pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xab0be863 pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xb01a96ca pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xd2439e7f pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xe66ceb86 pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x02e67667 i2c_dw_disable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x0798b522 i2c_dw_enable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x0c3da3cf i2c_dw_is_enabled +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x3fa15f06 i2c_dw_func +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x470806fe i2c_dw_read_comp_param +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5168433f i2c_dw_xfer +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5bb1170b i2c_dw_isr +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xdc0db3eb i2c_dw_clear_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xee462db0 i2c_dw_disable_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xfd6ba61d i2c_dw_init +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x2c43528e i2c_add_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xcc51b27e i2c_del_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x7c8ad8e6 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x7de17903 i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x1e6b436c ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x528fec50 ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x7d651184 ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x7e6c5476 ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xa4db28e7 ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xab7b2f51 ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xc050f0a9 ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xdafa1462 ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xdb028aef ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x0cdf107f adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x166a20dc adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x31658561 adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x5150c210 adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x5e846c22 adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x6fc206ed adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x704299a3 adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x8f004d67 adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xa28692e2 adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xafd7d724 adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xdf099e23 adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xe05f1827 adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0f885a95 iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1138ba19 iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x12e5af94 iio_scan_mask_query +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x15b81fab iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1b9ffdf0 iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1f938ead iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x20b4a5d4 iio_update_demux +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2101da6d iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x21e272ee iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x267c0508 iio_channel_release_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2a1fab3c iio_channel_stop_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2d929154 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x330240a0 iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x375c9532 iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3cc0d5de iio_scan_mask_set +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x44c9e2e1 iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4d9d49e2 iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5359ad7c iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5725f001 iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x582fb05c iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x70c5d5c7 iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7fd2a72b iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8e8c4b2c iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x95f1c984 iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9e5a5b88 devm_iio_trigger_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa6554942 devm_iio_device_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xc88156c7 iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xcff3e85d iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd4ed92bf iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe21c5782 devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xef63d29e iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf4ea51fa devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0x3bb88fac input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0x753a2f16 matrix_keypad_parse_of_params +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xfadeecca adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x15e02811 cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x5e799abe cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xf1a86a59 cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xc58d1e48 cyttsp_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xc5ac39f3 cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xdbac6801 cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x5dcd9e1f cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0xf274d294 cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x0d01ef54 wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x21dfe8a2 wm9713_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x7c3fc626 wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x83546a0c wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x8828084a wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xb4cb61e1 wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xbe991f23 wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xdc1fb9f9 wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xdf083bee wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xed75e83c wm9712_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xf0cbf566 wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xf8ac710b wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x0cef9f02 ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x0ef17ad5 ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x363e5ebb ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x4561d092 ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x47362374 ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x504993ea ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x55579b74 ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xd4d3dee6 ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xdf7c0b5d ipack_device_add +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0x23359aff unregister_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0xce1414b2 register_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x0107113a gigaset_blockdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x028f4811 gigaset_shutdown +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x16530478 gigaset_freecs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x264270cc gigaset_skb_sent +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x3bf41594 gigaset_isdn_rcv_err +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x454aa44f gigaset_debuglevel +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x6efaf274 gigaset_fill_inbuf +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x756a68f2 gigaset_start +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x790395b6 gigaset_skb_rcvd +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8292648f gigaset_stop +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8420edd4 gigaset_if_receive +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8635f743 gigaset_m10x_send_skb +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8eff32df gigaset_dbg_buffer +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x92aa4f82 gigaset_add_event +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x9373be39 gigaset_initdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xe3a76d9a gigaset_freedriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xe747708f gigaset_handle_modem_response +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xe8982adc gigaset_m10x_input +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xfc7184db gigaset_initcs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x4675324a lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x51c2088e lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x68a3b43f lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x7d8dde20 lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xb975556f lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xd0158613 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xe77397e8 lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xe9e6d659 lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xed2b329c lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xedd69f18 lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xf20f3620 lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x749e05f2 ledtrig_flash_ctrl +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x7903e46e ledtrig_torch_ctrl +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x0a0527be wf_register_client +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x21758037 wf_unregister_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x2b5563c0 wf_put_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x2ed094c0 wf_get_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x32222562 wf_find_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x5de61e33 wf_get_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x74c87abd wf_find_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x75147afa wf_set_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x87d21711 wf_unregister_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x94765fac wf_critical_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xa2f19a49 wf_is_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xbcace2a5 wf_unregister_client +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xcc31c97f wf_register_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xed82a14f wf_clear_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xefd4dcd3 wf_put_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xfc23721f wf_register_control +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x10e06e97 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x155ea9c7 __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1822fd23 __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1f2ba9ac __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x260d47cf __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x27831e89 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2dec45e0 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x347aebe1 __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x41c861f0 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x49856e5a __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x50e8c39f __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x574ba881 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x628eb712 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6770a402 __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x785cfc9f __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7b488fb1 __tracepoint_bcache_alloc_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x91f2af34 __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa09069a3 __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa591c5d6 __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa6890b59 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xaf60c34b __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb950d2ae __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbd4b89b6 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xce0e6218 __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd40fba32 __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xdc5ea5a5 __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf58ce244 __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf5bcbdc7 __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfc1d5275 __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfcdf28c9 __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xffc308e4 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x697b003f dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6de64c2d dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x80652cf4 dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x8c68738a dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x963ad5e3 dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x97f2f0cd dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb6d5c65d dm_deferred_set_add_work +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb70b342a dm_bio_prison_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb8f500d8 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xebd06eaf dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x22163b69 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x3909d3a8 dm_bufio_prefetch +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x594952bd dm_bufio_read +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x62a23587 dm_bufio_get_device_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7b3b282e dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9b2b253a dm_bufio_get +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa82b2066 dm_bufio_write_dirty_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc9a3422d dm_bufio_write_dirty_buffers_async +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd4bddf5c dm_bufio_issue_flush +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xdc69e37a dm_bufio_get_block_number +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe004ee92 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe6024e59 dm_bufio_release +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xebcc64a4 dm_bufio_get_block_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xeca7949e dm_bufio_client_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x29ec26fa dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x2db1665c dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5a3b9299 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x82301209 dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x8708ee4f dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x9d3a2bac dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xd9432d6a dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xee48cd1a dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xf60eadee dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x09472122 dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x38efaf5a dm_region_hash_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3a18389a dm_rh_update_states +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x49ef07a7 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x5f046b3d dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7774620f dm_rh_stop_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7d053fc5 dm_rh_start_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x9d86eb4a dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa53387c7 dm_rh_flush +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa83588eb dm_rh_recovery_end +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa8813ad6 dm_rh_region_to_sector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xaa7c99b5 dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xacbf5b8c dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xc66ce277 dm_rh_get_region_size +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xcab63c3d dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xe25113e3 dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xf37a3cfe dm_rh_get_region_key +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfd93482e dm_rh_recovery_in_flight +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0054f69d dm_tm_pre_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x01445176 dm_btree_find_highest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x11eab9fe dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x150c85ce dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1cac81ac dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2025e954 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2c112836 dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2e730a21 dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f40da68 dm_bm_set_read_write +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f74609d dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x32b5f546 dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x33c03da6 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x38c75c44 dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3ad0f55b dm_bm_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x40f7bd91 dm_tm_inc +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4206f986 dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5e6aea80 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x619701dc dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x62c1b9ee dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x68fae9d2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x72289260 dm_block_manager_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7ade1071 dm_tm_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7b047bd9 dm_tm_create_non_blocking_clone +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x80c89b3d dm_tm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x832bf228 dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x858c8d94 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89f1e1cc dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x966a8838 dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9b4b5b29 dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9e798e22 dm_bm_set_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa0bbbb49 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa13861b4 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa2507774 dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa87c5b4d dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaee02382 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb7bad799 dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb9a6ecf8 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbcfdc290 dm_tm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbd50ebbb dm_btree_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbe0497aa dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xca40abd5 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd041d62b dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe44b4b9b dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xead1e727 dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xed1e1f96 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf475af48 dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/raid1 0x94be13ea md_raid1_congested +EXPORT_SYMBOL_GPL drivers/md/raid10 0x1eceac95 md_raid10_congested +EXPORT_SYMBOL_GPL drivers/md/raid456 0x6b6e9782 md_raid5_congested +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x0c863c71 saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x41e2e005 saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x6407250c saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x6c0f2a9c saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x6e56e726 saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x8b74464c saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x971cbef4 saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xa913104f saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xb5562bab saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xc33b23dd saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x2d42f7cf saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x38f508a9 saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x6e0c8a89 saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xa5f0ebb4 saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xd2205991 saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xe7a0411a saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xecacae24 saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x19de3ee4 smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x23d57cbf smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x2d05c557 smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x35a0c60b smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x37d91069 smsendian_handle_tx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x6272f64e sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x63222b29 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x694620d9 smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x6ea09b67 smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7c576277 smsendian_handle_message_header +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x978c9d21 smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9c2225ed smscore_translate_msg +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9ca28a10 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xafe5c52b sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xb329e4d8 smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc8ea0db1 smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc9b0a942 smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xd04a6dc1 smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xd19d1e83 sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xe0b6bccf sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xeb0ee82d sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0x68e5a607 cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0x46f85d08 tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0x7624ff89 cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x03579bd4 mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x07eeac0a mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x083e29d6 mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x3d208920 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x41fb86e9 mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x59d9746d mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x5f4953e2 mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x60912d77 mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x91676855 mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x97f74fda mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x9ede0c61 mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xcd79a063 mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xced8af1c mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xd37d66a0 mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xe0752b8e mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xe8d6967e mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xfc3d0b65 mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x39ac297c saa7134_s_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x58095018 saa7134_g_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x5839152c saa7134_s_std_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xbe3f0448 saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xd80da3d8 saa7134_queryctrl +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x00f6d671 ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x51961e4f ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7b91138b ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xa58f9d11 ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xae005320 ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xbad5bd42 ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xe8d6fa24 ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x609de65f radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x679b84a4 radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x0d64df67 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x31f9c260 rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x427951b3 rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x553efb91 rc_core_debug +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x55613e5d ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x5c2c0b30 rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x5d33c184 rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x5da62f97 ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6108bd1c ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6343ed7c rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6626ee56 rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x88e7487b rc_close +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x8b9fc8fe rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa9873227 rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb24afec7 rc_open +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd289de2d ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd405fd87 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xed39d1f0 rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf85ceba9 ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xffe85f57 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0x092f2d7f mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0x23721d47 microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0xc4742782 mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0xbdd90a5c r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0x837fbff5 tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0x73feec9e tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x77be800c tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x94223abb tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x0e0552c9 tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x55d512e7 tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x61d50e64 tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x08572769 tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x08be2703 tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0x9a523dd7 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x04701e42 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x112d2c80 cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x38d2abd4 cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x42f6a57e cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4cb2b858 is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x541ba175 cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x5561af37 cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x5b184716 cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x79f9aeca cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x80a360f6 cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x89a34303 cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xa1162db7 cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xa356e16c cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xa3e7b158 cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd8199292 cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xe210eb33 cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xe3ae4cc1 cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xe4d17583 cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xff042cac cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0x4f02cf79 mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0xdfe08af4 mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x04cb5d00 em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x10b7befc em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x695e1143 em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x70d1a964 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x8cade971 em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xa217e866 em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xbc2ae776 em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xbebf7c7c em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xc0685cef em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd5fbe240 em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd7ebc475 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xeacc5429 em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf3e0ec93 em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf3e7326b em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x7fba933f tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x9ca0e8a7 tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xee88b0b4 tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xeffb2123 tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x01c483a9 v4l2_get_timestamp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x708d1412 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x77349939 v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x813f3de4 v4l2_find_nearest_format +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x899d3816 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xa4cd80bf v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xcafd0692 v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xe3b280b8 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x08982d59 v4l2_match_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x221d2fbc v4l2_enum_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x36e8756a v4l2_find_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x4103badb v4l2_print_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x53105839 v4l2_detect_cvt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6976cfe0 v4l2_valid_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6f344bb9 v4l2_calc_aspect_ratio +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x7eaf8e7a v4l2_detect_gtf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xb0891da2 v4l2_dv_timings_presets +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x31ae7626 v4l2_int_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x4631cff2 v4l2_int_ioctl_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xa5228b24 v4l2_int_device_try_attach_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xaafaf1c7 v4l2_int_ioctl_0 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xf9895b18 v4l2_int_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0e33ccd3 v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x17eb0eee v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x57e10976 v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6baefe64 v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x74dfcfd8 v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7683ca04 v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x96006abd v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa45bcc00 v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb1fda149 v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb3ecd785 v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb49dc823 v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc5570cdb v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe6aaaca5 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xfb00323a v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xfebbbd51 v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x00551a97 videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x2b3a6fe9 videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x5bb4183b videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x611bc902 videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6516c38c videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6545c36c videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6c084279 videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x737a32d0 videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7439d752 videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7a093898 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7b8b87e6 videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7cd2c8f2 __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9bd500a7 videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb5e75ad8 videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc28de968 videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc44a7406 videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc88c25c3 videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xcd594ebb videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xd2c69ca5 videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xded07b30 videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe42e59b6 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe86d1d9b videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf9b9ffe1 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xfc103168 videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x872f40ac videobuf_queue_dma_contig_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x8e07acdc videobuf_dma_contig_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0xde521962 videobuf_to_dma_contig +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x08b799b8 videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x37c5e8a1 videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x528684fc videobuf_dma_init_user +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x66b55847 videobuf_dma_map +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x89e8ebd5 videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xa825c75b videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xaa3105bc videobuf_dma_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xc74c72d4 videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xe3575eb2 videobuf_dma_init_kernel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xf67a1cb1 videobuf_dma_init_overlay +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x0f85aaf0 videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x4b6b6476 videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x5eed2476 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x099ce2f7 vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x1652567c vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x1abd8231 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x1b168f73 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x1da80d58 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x21a7b3cb vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x255cc034 vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x342dc783 vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x3a6f112d vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x4e5cd905 vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x5ef0ded9 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x5f97da4c vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x615cb9ff vb2_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x657f306e vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x7b96c7b0 vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x7c373b67 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x7c589c7e vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x82b59f04 vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x85d0f280 vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x869db236 vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x8fcc0d35 vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x9cf7ded5 vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa37fc79d vb2_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa41cd875 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa57386de vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xad455cf9 vb2_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xadc499f8 vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb0193ce0 vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb47b5657 vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xcd277132 vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd1e2e3c7 vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xe0a33ada vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xe6585e07 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xfc0e739e vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0x94bed0b0 vb2_dma_contig_init_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xa8c90a71 vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xe57f0426 vb2_dma_contig_cleanup_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-sg 0xd9184f96 vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x097d3ebe vb2_get_contig_userptr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0xbdfbd3eb vb2_put_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0xcdcd163a vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0xe0aaaad6 vb2_get_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-vmalloc 0x60685403 vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0b769f12 v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x229aad6b v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x24b763cc v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2669509a v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2800802e v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2c03fa16 v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x44c78aaf v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x46325e02 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x57a94fd6 v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6dc8f878 v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6fa83607 v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x79df9232 v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x934bd70f v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xaf616eb2 v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb28cadb3 v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb2d92a7f v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb5598a17 v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc3342b40 v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc4895def v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xded0003a v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe26b1b45 v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe56b6f10 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe625ec2e v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x01f46a06 i2o_pool_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x15d1c0a0 i2o_dma_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x2f8c5146 i2o_sg_tablesize +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x391d82ad i2o_dma_realloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x65b71fbd i2o_dma_map_single +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x7adbee6f i2o_pool_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xc038ec80 i2o_dma_map_sg +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xc7bcab37 i2o_dma_alloc +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xad8ab3ac pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd209aedd pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xfb9753c3 pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x52169f6f kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x56dd4a91 kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x84b574d8 kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x925d90b8 kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xb3b39c4d kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xe113d8a9 kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xf6800975 kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xfe365942 kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x4bf09d9e lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x763ffbae lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x858ae496 lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x35352078 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x8abf66f7 lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x93dd9a31 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xa47c8073 lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xdd04c945 lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xe2958592 lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xee2681fa lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x39ef00f2 mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x6f6e788f mc13xxx_common_cleanup +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x82602bca mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x8ade5be9 mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x906fdea2 mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xc2da60ea mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x08a587d9 pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x1afdf0bd pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x1ba42761 pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x4fed37d0 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x967f45fa pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xac7c0ab5 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xc12f788b pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xd548a142 pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xe4c17858 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xea93a8d1 pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xfbb5b13e pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x4604e360 pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x4ab98c09 pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x0af15bb6 pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x32bd7ec4 pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x6606bac8 pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xcf8eac4b pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xcfa88d11 pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x01a33234 retu_write +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x4fca3918 retu_read +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x137df8ad rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x226d6dff rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x22845141 rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x28efc690 rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x3abc52ff rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x4272cf77 rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x4869774b rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x4f3c758c rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x54f43321 rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x5c755128 rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x6b698071 rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x7b761caa rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x803c691b rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x84ddc09a rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x917699e5 rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x94084a13 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xbdbe245b rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xd358de3f rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xe1534669 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xe2bfec6f rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xfed185cf rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x044ac8da si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0935a1d9 si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0bec7daf si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0cefd86a si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x133da471 si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x1499460d si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x243c2fda si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x27edd107 si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2ff0379f si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x312138c4 si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x32345ee4 si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x37f27508 si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4df3a539 si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4f3e9ce7 si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5a2a8a50 si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5cc985a1 si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5effc434 si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5faa1984 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x71148405 si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7c0d67d3 si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8a188d79 si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x968ca411 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa5c60dba si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa7a98b16 si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xab4e3891 si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xaf90f757 si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb0f78539 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb326f93b si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc846fe07 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xcebb13a6 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd4ebd5e2 si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xdc78ffd2 si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf2467f97 si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfb5ebc27 si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x75d185a1 sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x9240cbb7 sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x94fa1af0 sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xbadb5274 sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xcab3ddc2 sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x03ec9dc6 tps65217_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x26a435fa tps65217_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x331dcc7b tps65217_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xf828c3a8 tps65217_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/twl4030-madc 0x4362dc66 twl4030_get_madc_conversion +EXPORT_SYMBOL_GPL drivers/mfd/twl4030-madc 0x9effbf1a twl4030_madc_conversion +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0xb361d8a3 ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x16046da8 cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xa20d5316 cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xd874a663 cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xed67a45b cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x27cb133b eeprom_93cx6_multiread +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x63d2ff63 eeprom_93cx6_wren +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x822222db eeprom_93cx6_write +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x98bb5a22 eeprom_93cx6_read +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x110921d4 enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x1bcfa216 enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x1fc08afa enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x39514924 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x83b80e79 enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x9208a211 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xaa5fc6dc enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x1087c803 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x2443936e lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x3b18f802 lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x3d4aa5a0 lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x65fa12d6 lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x69ca1252 lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x84ebb41d lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xf733feae lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x4dbbe7cd st_register +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x7a7449f9 st_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x06c61b69 sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x34f01787 sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x5ffcb8f9 sdhci_send_command +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x6055dfcf sdhci_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x6d903e56 sdhci_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x6f62cf8e sdhci_disable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x7f5c8cbe sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9030a8ae sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa23a5dd5 sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xc920fbae sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xfb269fa0 sdhci_enable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x2bdcb26b sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x3d299c53 sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x549480bc sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x6316157a sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xba6cc851 sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xeb5f031e sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xfe952cf2 sdhci_get_of_property +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x04bd8802 cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x3b94adea cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xf9a3ad94 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x017b3024 cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x8cd0b472 cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xf282ffa2 cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x8aee7c71 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x34004d45 cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xbcceb883 cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xda453904 cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0dc0d7c4 mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0dda1231 register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1221bc5c mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1957a921 unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1a6c5a32 __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1a9c4341 get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1ad414d7 mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1d234180 mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1f97ed31 mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2acafe2e put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x40c7e444 mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x565500dd mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x59ed3717 mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5c243621 register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5d9fd68a mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x695cd410 mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6fd7d654 __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x71ce3335 get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x76755214 mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7cb70b38 mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7d8ecece mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x825adaf5 mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x82e57349 mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x96905e76 mount_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x975f223c mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xaab48451 mtd_is_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xaeebcddb mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xafdc830e mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb710dab7 deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb85362b2 mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb969ca8f mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb9e4759e mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd006ba20 mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd4dbde45 kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd4f63f68 mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe4bdf789 mtd_erase_callback +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe992408e mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf3a46fd9 __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf66ed92e mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfaf374eb mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xffcdd612 mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x4f91db1a register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x5065f1d1 add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x7f3cd39c deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x95fec50b del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xd52f5d35 mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0x2a20b850 nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0x42a83d66 nand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/sm_common 0x99b2a027 sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0x10f27777 onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0xc308b066 onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x0e41442b ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x2b9ce9a3 ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x53bf0818 ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5cfdd22d ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x6b1d438e ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x71025732 ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x7d97f728 ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x88fd1d0e ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x9c0366b6 ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x9e28abc8 ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xa842c9cb ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xaef90d43 ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xecb0df34 ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xecd8233a ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x05f6b8a0 unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x2da1f34d c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x3df11d8a c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xae351953 free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xcf66d56d register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xfd22a01b alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x06769202 close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x09e43f76 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x217d84e3 safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x222c295a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2668e4e7 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2e2bef92 alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x37137412 free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x40e45937 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x614ae57a can_led_event +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6c5096c2 can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6cc80d1c alloc_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x82fff0aa open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xa83abd0d can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb346573b can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xc5f8e567 can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe34c6bdc can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xf1ab37f8 devm_can_led_init +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xc6ec9661 free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xd15e584d alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xd4703c4e unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xfedf7bbf register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x1169c91a alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x4b7830ba unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x6f6750bd free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xae671eda register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x55d717fd macb_set_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x77dc9677 macb_get_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x9c58c4b2 macb_mii_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xb95d6ff8 macb_get_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xda57ee2b macb_ioctl +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xe15b1a43 macb_set_rx_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xf457ffb2 macb_ethtool_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x02f6d45c mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x039aa792 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0564c18a mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x083e4459 mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x08c316ba mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0eaa3f15 mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x11247195 mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x12fbab70 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x14518a2f mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1585ee7c mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x165aed49 mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1a3a1bb7 mlx4_fmr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1c09b1a9 mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1d097fd9 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2bf08390 mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2c5723fa mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2c849b55 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2df422cd mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x337e2595 mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x33c3dfb3 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x358ac2ac mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x36c73728 mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x36e9762c __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x40c2d55c mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x469a65a5 mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x46ebfbe6 mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x49d6e8aa mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4cd98db2 mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4cf6f9d0 mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4d7a0daa mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x51878e92 mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x52046f73 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x56f74070 mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5948a86e mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x601b0da3 mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x683f2020 mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x68a6ebba mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6975854a mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6cb16670 mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6e616192 mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6fa25922 __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x70de3c9a mlx4_fmr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x79af409d mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x810e84de mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x876417f9 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x88f08f89 mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8fa4a670 mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8fc0280a mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x90c6e070 mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x93d2f77b mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x94b93c6f mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x983b53dc mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x991d830f mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9ac9a6ac mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9c39de16 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9f3bf884 mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa384d17b mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa642b527 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa94e586b mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xac13c14b __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xad206018 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xad52d513 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaf1daf02 mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xafa3265a mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb2be4aa2 mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb5f46d82 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb650a233 mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb66a28f9 mlx4_map_phys_fmr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbb8530de mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbd9a9b37 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbe173fde mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc1bb5bc2 mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc221292d mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc2d06103 mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc4ba84f3 mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc69e4b27 mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc9d4e125 mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcab51a1d __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcbb6d3d0 mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcca48997 mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcf4811af mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcf6d5f2b mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd1eb8cef mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd43dab04 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd6380a26 mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd8076c5f mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd8bb684c mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdbed9b82 mlx4_fmr_unmap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdda87557 mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xde94bc3b mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe0a2719a mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe261dd82 mlx4_fmr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xef300f79 mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeffa022a mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf6c74b71 mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf8eb6581 mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf96710ed mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfa9798de mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfb3cc8b3 mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xff918f71 mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0778f813 mlx5_core_eq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x07cfd81e mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0b963793 mlx5_core_destroy_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1ea8ceb6 mlx5_core_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2d52324a mlx5_destroy_unmap_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x330c6790 mlx5_core_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x38cbba79 mlx5_core_xrcd_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4b29db59 mlx5_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5bd0a6a2 mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5d624212 mlx5_core_mad_ifc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7db53138 mlx5_core_create_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x82bfa1e9 mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x84b0e2b8 mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9d9bda94 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb6ac1a59 mlx5_create_map_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd0e439f2 mlx5_core_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xeec1a26e mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x3cc2cbbf macvlan_start_xmit +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x6ded5ddb macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x6f29464e macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x757b790f macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x86c6adc9 macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvtap 0x1cd23c74 macvtap_get_socket +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x127066a8 usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x4362414e usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xef671516 usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xf75c76a4 usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x20383513 cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x523d7b82 cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x7fc8d0fc cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x9ba56776 cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x9f3450ea cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xd64d58ce cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xd797b0cc cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xdd764459 cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x28b8dd78 rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x4a0d54c5 rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x4d3218a6 rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xacb018c7 rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xd73d3f52 rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xeca51de0 generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x01b10c97 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x26f679ef usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x277cdf8f usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x31ab07bc usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x441f5087 usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4cf8e759 usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x535d6c19 usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x57981796 usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x58543db2 usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6f12abd4 usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6f91c4ad usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x73f305d7 usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8f8ef153 usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa42b635a usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa4a2014b usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa9e242bd usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xab1b22eb usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xad109191 usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xaf3d873f usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb1f4b67f usbnet_get_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb2c6483e usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xbc577c98 usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc25cec42 usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc72a6f3c usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc9567ef8 usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xcc154443 usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xd7b1f55f usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xd817d44c usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xdea0d1b8 usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xec864482 usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf2c4de50 usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xfbaed6ff usbnet_set_settings +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x4737e91d vxlan_xmit_skb +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x5f6e1be5 vxlan_sock_add +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x80daed14 vxlan_sock_release +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xdc0da5f2 vxlan_get_rx_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xdd3e7566 vxlan_src_port +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x0b174f3a i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x2dc9d5bb i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x332e8a27 i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x33e145db i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x3c08912d i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x3cce35d2 i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x41d1f9be i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x4f851495 i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x6fc3a6d0 i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x7af91ce2 i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xa23cdb3f i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xd1f78902 i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xdc18a431 i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xf2d75eff i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xf89026b9 i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xf90cd522 i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x0f684dbc cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x4189601f cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0xb15dc0b0 cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0xe177ee70 cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/ipw2x00/libipw 0xe4b4d189 libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x152734f0 il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x22b44784 _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x2e8b2fc3 il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x964db70a il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xc06190d2 il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x020913c9 iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x0d556623 iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1291ef1b iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1ac36ff0 iwl_notification_wait_notify +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1e7ca46a iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x21de10f9 __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x298f7cd2 __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x2bd48bd5 iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x3d548dab iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x48ab7efb iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5d0a212e iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5f201e76 iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x64a27c33 iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x75db60d3 iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8c5d5ab3 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8d668254 iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xa9da49a9 iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xaa6d08eb iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xabdc63ed iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xb05b65fa iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xbb5ab2da iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xbd98e14f __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc30a97c7 __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc67c31ed iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd09ea371 iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xf620036c iwl_nvm_check_version +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xf6f84b72 iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xfd267579 __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x0fdc48de lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x151d1243 lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x17c3dc1a __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x38cdd9da lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x3d731dd3 lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x43d2f547 lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x6cb8cc47 lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x6e72b4c7 lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x81e0e638 lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x8634e035 lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x9508f99a lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xa10ef559 lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xc94f0821 lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xcf0fa75a lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xebc2e504 lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xfe8b5554 lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x1f810b03 lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x375ce841 lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x3ffe508c __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x4b760b23 lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x6057bd74 lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x96219391 lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xaef9e021 lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xb49af82b lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xc85e6899 lbtf_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0x353b9031 if_usb_prog_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0xacb8a263 if_usb_reset_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x1a445109 mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x1ebc7845 mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x303b9b8f mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x43199886 mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x617964a0 mwifiex_deauthenticate +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x635f0c41 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x6f8295fe mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x70204fb8 mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x76546adc mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x790bb34f mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x8f78e4cc mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x9eee4e7a mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xc39d74a6 mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xdb1a932d mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x22058b04 p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x2b1db093 p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x303c8283 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x33795cbe p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x390ad9e1 p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x4845b1d3 p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x611758c5 p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xc8992cbc p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xe7ff67ef p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x0baae6f7 rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x0fb2c5dc rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x153e477e rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x182c7c6c rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1f0e45aa rt2800_get_tkip_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x29602ac4 rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x30e9a231 rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3e3109a2 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3efc5cd5 rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x42de6f85 rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x486c975b rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4bffe11a rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4cdd80af rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x5240bd26 rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x61ceadf5 rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x65eb80ac rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x66eb7411 rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x6a34bf7e rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7af332ab rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7fd12856 rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x82d2d98c rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x84b4ae76 rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8d46692d rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa6bb47d1 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb51ebeb5 rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xc6541fd0 rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xcd4000ab rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xcdae7c0d rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd05179c5 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd3882c29 rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xea2e1674 rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xedff6a91 rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf0378715 rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf2bd2e51 rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf5b2cff6 rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf699457c rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf87ea0b3 rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xfa11f8eb rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0482a863 rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x1edd8cab rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5aaf12a3 rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x69b712b2 rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x7538651d rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x77636b4b rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x7b63fef7 rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x8e18e8bb rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x959e03b5 rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xccb331e7 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xd5030873 rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xe9a24cd8 rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xfb3b64d7 rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x00d64ab7 rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x0350d67d rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x03ccbceb rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x0531fb90 rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x0e7fecb9 rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1fd11a3d rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x23d7f01d rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2962a6db rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2dfa6e24 rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x346aaf44 rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x36932684 rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3989998a rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x412a004a rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x473f8330 rt2x00mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4f273f16 rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x54c4845c rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5790cbfb rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5e947e69 rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x66fba79c rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6ad150df rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6d5f6a9f rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6e3c6f17 rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x712bbea0 rt2x00mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x76d07085 rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x7c98e0f9 rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8ebbf5e9 rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x988e39b2 rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9f15eec9 rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa0ed79f1 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa1627b06 rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa9bf6cd9 rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xaa771e93 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xad795ef1 rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xaf91b011 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb1cbd001 rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb3173d14 rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd4544366 rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd92e6b5b rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xde982edc rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe5754792 rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe8c110a4 rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe9007efe rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xeb812230 rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xee624918 rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf102a390 rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf29bfd89 rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x1357cbaa rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x5a627939 rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x5f5380f8 rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x69f76bf0 rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xaa928420 rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x19189e41 rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x7cdd5d8a rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x7d3c46e6 rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xc2155f9d rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x02627083 rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x045a3ac2 rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x119fca47 rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x1c0bf7b2 rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x336f5ae5 rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x3b73d8f8 rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x6f736bf3 rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x7692afc7 rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x8163d4f3 rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x928e1beb rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x96086f99 rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xafbe05f9 rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xb2f11eb1 rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xb5ca5574 rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xd7352753 rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xdd1babcf rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x2aaa5a92 rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x73e5d880 dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb0f8bcd7 dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc466e041 dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x0b11a2e2 rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x2472bd77 rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x30b8094b rtl8723_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x3172f323 rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x3751dd7c rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x3a7910ef rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x3eb26905 rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x4f57cf6b rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x5da3af57 rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6fee3a6c rtl8723_phy_set_sw_chnl_cmdarray +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7b0511f0 rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7b33d79d rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7c6f4376 rtl8723_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7d531e58 rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x87578f6d rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x8ec9711e rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x94adc91d rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x99eeda95 rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x9c977439 rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xa934700e rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xaf4d6d94 rtl8723_phy_calculate_bit_shift +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xb32794dd rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xb60a57f1 rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xc2891d5f rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xcaa3e004 rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xe27a434a rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xe591e7c8 rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xe6018408 rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xf1fd2017 rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x014fa663 rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x0d0b6636 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x241dedc1 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x4689bc8d rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x4fb61aaa rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x5720861f rtl_dbgp_flag_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x5a1ae8a8 rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x7bea50d5 rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x7edb1dad rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x828ee681 rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x83114c25 rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x906cf7a6 rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x9d2d0170 rtl_attribute_group +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x9f1d1b74 rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xa06f9689 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xb17d6afe rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xc61b60af rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xe46ada37 rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf4698501 rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf8ff6add rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x1271be4b wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x404f8932 wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xce06f238 wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x05294fba wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x06d3cf8f wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0dbaad4c wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1103d753 wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x11494b0a wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x16052b9a wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x18fa447b wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x190e56a0 wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1a3b325e wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1bdad5aa wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x22efe54a wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2b18f8e4 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3d27a3c4 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4e40a9df wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x50a90fc9 wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x53dff67d wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x56626df3 wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x59f02314 wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5b055a88 wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x660ca4f6 wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6648b9d1 wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6b7e81fd wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x70aaecac wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x725b5945 wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x755eaea8 wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x829b7e99 wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8b73e2e6 wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x97df3b96 wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x992e9c34 wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9a13b859 wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9b21e12a wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa68b393f wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb11a318b wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xba3660e6 wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xbd373fe3 wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xbff91d8e wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc361f07e wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc6575348 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd0ae932d wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xddcce051 wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe075e1a9 wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfb50b72b wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfc4080e3 wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x07c7bece phy_init +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x08fadfa5 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x0e6d5d1b of_phy_simple_xlate +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x1237b684 __of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x245ad526 devm_phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x27b92772 phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x32e841d0 devm_phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x33837133 devm_phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x3fff9564 devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x4d3759b0 __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x5f0ed91e phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x7240eea9 phy_exit +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x7be966f9 phy_pm_runtime_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x7d498adb phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x8e46a57c phy_pm_runtime_allow +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xa231561a of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xa37b9fae phy_power_off +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xa9c34612 phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xb1b93dde phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xe13f8732 phy_pm_runtime_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xf87e6873 phy_power_on +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xfa560b20 phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xfb7f46e5 devm_phy_get +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x09cf4b0f pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x470a512d pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0xef7687b0 pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x17910e31 mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x3ed69426 mc13xxx_get_num_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x653cec11 mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x98f47574 mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xf6057ae2 mc13xxx_parse_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x2c98ef50 wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x2cf1dda4 wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xa6d8b8a5 wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xad202664 wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xb64b8510 wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xe3da461d wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0x57e49e66 wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x02ed85a6 cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0664f52a cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0876b920 cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x08b1c0b0 cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0bb20399 cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0c2f2ca3 cxgbi_ddp_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x14f8a70e cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1e38d8d0 cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2ee57e86 cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3a5c4389 cxgbi_ddp_page_size_factor +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3f88a0a3 cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x41461cff cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4ab41cd9 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x505ce366 cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x53232bce cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5c4818bb cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5e6562b9 cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x66098bf5 cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x688344f2 cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6c39721d cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6f429073 cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x71808cb4 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x76c437ea cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7a069886 cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x841c20bd cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x873ab92a cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8c2ba369 cxgbi_ddp_ppod_clear +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8df8b51c cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x99d3bd23 cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9d38e6dc cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa01496c6 cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb420fd01 cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb42dbfa7 cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb63cffaf cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb7f6c8c1 cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xbc192e5d cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc3e9370d cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd5c0e34f cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd9044beb cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xdfb34747 cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe441cc72 cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe6adcd44 cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xeefbff49 cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf6007d42 cxgbi_ddp_ppod_set +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf71c4f48 cxgbi_ddp_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xfda282a4 cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x0f99ef1f scsi_dh_set_params +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x4c6befe5 scsi_dh_attach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x593a36c2 scsi_dh_handler_exist +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x84800cf5 scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x91497aa6 scsi_dh_activate +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x98846bb1 scsi_unregister_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xcb19c1da scsi_dh_detach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xd8d66814 scsi_register_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x069aa58e fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0fb51275 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x2e0f8c20 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x2e3d4483 fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x374c1e1c fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x3f30f58f fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x5c9d960f fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x66f08ac8 __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x6800e193 fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x6ce095ea fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x84b3d915 fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x97573f83 fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xbbd576fc fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xc13d3f73 fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xc4d0ceab fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xdf34e927 fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf5326358 fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xff61dc94 fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xff769f36 fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x043f0157 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x147b1c9e iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x235b4feb iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x440f4909 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xa2582157 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xa6e3861b iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x00c9c85f iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0a87de06 iscsi_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0b6cc5ae iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0b87e946 __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0c1bacf3 iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0fb3bd88 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x11cba118 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x145ff2f7 iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1fb420ea iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x22f1ddfb iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x252de776 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x25807d81 iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x25c9d6d6 iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3725de27 iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x37ab065d iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3e58ca7e iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x44784180 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4ec84a91 iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5cd90b79 iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x61333587 __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6253fa84 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x653e5507 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x69523bfa iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6dfe0b6c iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x75ab9d0c iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7830865e iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x82ace978 iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8a288711 iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8dd2a64f iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x971415e2 iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9ee60f23 iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa6d0bcf2 iscsi_eh_target_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa83a7bc4 iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xab13ef7d iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb15bff13 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbc70a4c1 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc6c95570 iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xde6b5476 iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdf00792e iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdfd54019 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe47e8bcc iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe862f86c iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf49283d3 iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfca4ef37 iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x0818da04 iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x14cee8a6 iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x39869b62 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x49d3be7d iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x600d2ddd iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x873765e9 iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8ee5a332 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xa26799e3 iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xa8787e1e iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xb1d7865f iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xbbeee744 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xc3091192 iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xc6613ec6 iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xddac04fb iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xdea204cd iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xf511320c iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xfd48bfea iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x04e8bbc5 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x04ec2666 sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0642ed62 sas_domain_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x06c8586e sas_eh_bus_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x11f882b5 sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x154be0e8 sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1891f411 sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1b5bbcf0 sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2b21595e sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3771ed3b sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3a26012a sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3cec9676 sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x44ca46f4 sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x45788528 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x50d417e1 sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x57178da1 sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6bf05cb2 sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6d9c4017 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x89c849f3 sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x9ba826b9 sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xae00d443 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xcd919f30 sas_change_queue_type +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd2ef6fc8 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd67d37bc sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf569c747 sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x2d94aaeb srp_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x63ac3585 srp_iu_put +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xa9b57164 srp_transfer_data +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xc46093d2 srp_target_free +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xe7516fcf srp_cmd_queue +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xedf6d0cf srp_iu_get +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x123ec0d3 scsi_tgt_free_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x1c9fb304 scsi_host_get_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x23241c6c scsi_tgt_it_nexus_create +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x248b4148 scsi_tgt_tsk_mgmt_request +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x61397c10 scsi_tgt_it_nexus_destroy +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x619fa291 scsi_tgt_queue_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x68273776 scsi_tgt_cmd_to_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xa9ce450c scsi_tgt_alloc_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xc1536f1f scsi_host_put_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x021ae58f iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x089e43d1 iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0ded9d02 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x12ca4f8b iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1bab27ce iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x259e09f5 iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3667bedf iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3a4104a2 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x42504e5e iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x483f1733 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4c343ef7 iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5aa9f13c iscsi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x68dbf0d6 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x70ea66ca iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x728a2ca1 iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7376f2b1 iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x747b9f78 iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7bfbc9d3 iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x811c3522 iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x814951de iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x83364e23 iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8478e5dd iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8e6e22ca iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x92c1065d iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9a9f872a iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9bbb2920 iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa596b663 iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa953cf3d iscsi_is_flashnode_conn_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xadfd81fe iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb67f4f91 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbb4b5f9f iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc2f45449 iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc4139bca iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcf0713e4 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe1d00957 iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xecf6a846 iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xedaadd89 iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf390c5d5 iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf903c2c2 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfcb78de5 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x2862d52c sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x3c410908 sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x43362ccd sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x63dd2ab4 sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x70d76e5e srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x980c7999 srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xd0982566 srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xe4c41faa srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xee891cc0 srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xefc3ba0a srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x0c14ab33 ufshcd_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x7159f33a ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x9b4596bf ufshcd_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xaa4a5e3e ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xb242ff25 ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xc56af19d ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x3f67c9bd spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x616e3a73 spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xb4959967 spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xc056d4e2 spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xd538e342 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x31be654a dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x3e02d787 dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x7c9d45d6 dw_spi_xfer_done +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xf43b7e87 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xf7b40099 dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0x86097e06 ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x018c89a0 comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x01ecea1f comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x07e5730b comedi_buf_memcpy_to +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0a4c7640 comedi_pcmcia_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x15dce8c2 comedi_dev_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21202209 comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2557a75f comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x278a8846 comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x30ddb726 comedi_to_pcmcia_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x327a9ff1 comedi_pcmcia_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x40799fa7 comedi_pcmcia_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x42ef225d comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4672277c comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4732688b comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4a759514 comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4aca5909 comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x521f29cb comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x527626b5 comedi_buf_memcpy_from +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x52764270 comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5aafa527 comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x659bd5fd comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x66dd5db2 comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x66e2236f comedi_pcmcia_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x698745a8 comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6b0a74fa comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7107028f comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7138819b __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x75e880b3 comedi_buf_get +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x79191527 comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7bc8d12b comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9155ad57 comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x93eb3608 comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x94c9ebce comedi_error +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9a0eff82 comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9bad7721 comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa5f5e323 comedi_pcmcia_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xaace8086 comedi_buf_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xac9869ca comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb09118d comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc41a7778 comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc7449541 comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xcc880811 comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdc7454d5 comedi_pcmcia_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe5cb92fe comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xec9c57ed comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf06f4cdf comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf81b31d4 comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf9c2a5c3 comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x951a659d subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x979ef45f subdev_8255_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x98de7018 subdev_8255_init_irq +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x4bd14e01 addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xd268b66a amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xe790ae1a amplc_dio200_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xf1e48a91 amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x48365e3c cfc_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0xdb4d00b4 cfc_write_array_to_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0xde45c17c cfc_read_array_from_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0x203631e4 das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x00799556 mite_get_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x03076721 mite_bytes_read_from_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x065040f7 mite_setup2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x13f4bbdc mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x1b001357 mite_bytes_read_from_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x203bb3c7 mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x3264ee38 mite_setup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x4caaa1a9 mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x583efcdb mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x6c7f6095 mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x7d03d54a mite_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x83b527e1 mite_dma_tcr +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x8e5c0519 mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x950e6cfc mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x9ec410c4 mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xad24b0f9 mite_bytes_written_to_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb523c48f mite_bytes_written_to_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xc3f30347 mite_sync_input_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xce6a2896 mite_sync_output_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd099541f mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd2f0152e mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xdc1638f6 mite_unsetup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc 0x65d434de labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x091538da ni_tio_rinsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x50bf800a ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x600ee3b2 ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x73496704 ni_tio_winsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xb13c9ff8 ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xb3e60dd8 ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xd4056634 ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xd59f6dd3 ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x2050b6ed ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x4f054aec ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x9b7c9ead ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x9e1de9d8 ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xf8d3ae1f ni_tio_acknowledge_and_confirm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xff95b44f ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x6507917b comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x6d138d5b comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x7484dcc5 comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x7c4190d3 comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x9195c413 comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xb2e191cf comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xe65d3356 comedi_close +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x1d04aa0f dwc2_hcd_remove +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x2206b003 dwc2_handle_common_intr +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x7cd5f7b5 dwc2_hcd_init +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xb05a818c dwc2_set_all_params +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x1a1b5249 oslec_flush +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x2feda75b oslec_hpf_tx +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x3227a28e oslec_snapshot +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x7dc9dddd oslec_adaption_mode +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xb2c66001 oslec_create +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xc8b5a524 oslec_free +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xd370f679 oslec_update +EXPORT_SYMBOL_GPL drivers/staging/iio/addac/adt7316 0x3247daf0 adt7316_pm_ops +EXPORT_SYMBOL_GPL drivers/staging/rts5139/rts5139 0xbd5a0e51 rts5139_usb_ids +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x034950d7 spk_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0e81c76d spk_serial_out +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0ef1d765 speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x10fc9db0 synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x14ed30ad spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x14f06fe7 spk_serial_in_nowait +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x20e5ba06 spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x39005e6c spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x475e158a synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x5c70aa6b spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x6dd32eea synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x88d54bca spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8a5f0308 spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e146195 synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9a888082 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb35aaab9 speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb48956f8 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc766ae09 synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd1b551a2 spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe6582ffc spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7e810f8 spk_serial_in +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x001747df sockfd_to_socket +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x0810d286 usbip_event_add +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x09be0315 usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x29bc9ea2 usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x2c668b76 dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x5d3ffc7c usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x5ef6b64f usbip_start_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x5fb95657 usbip_recv +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x73afb208 usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x9b726821 usbip_event_happened +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xb73481a4 usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xd02753dc usbip_header_correct_endian +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xd104f7ff usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe1ea0586 usbip_dump_header +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xf0372cbc usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x585ebaac n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0x9bd3f056 pciserial_init_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL drivers/uio/uio 0x33247107 uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x66842f96 uio_event_notify +EXPORT_SYMBOL_GPL drivers/uio/uio 0x73084bb3 __uio_register_device +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x23bbc360 usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x8be15d3f usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0xaf2d1743 ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0xf8c16731 ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x170e9bea imx_usbmisc_init +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x74750d38 imx_usbmisc_init_post +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x005830a1 usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x09d84eac usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0b491528 usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0d0e242d usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x1314559e usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x1a79ba4f usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x27d239eb config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3007ae67 usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x53e94813 usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6d4df2b1 usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x70a3a798 usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7d4e9aaf usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7f237524 usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x816e006d usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x94d7075a usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x966060b3 usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xab2a81e9 usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb4c7de7e usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb7d70c59 usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xbedce60e usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xc72f58bc usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xcafbd2b1 usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xcd6b879b usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xcdb05d50 usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd120100c usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd9106aba usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf18d862d usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf6ce7f17 usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x450e1fb7 gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xa064fc2f gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xb05a511a gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xef041ce7 gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x3a46ac4e usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x3fabf271 usb_gadget_unmap_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x53e6a30d usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x5976d0ca usb_gadget_probe_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xa71a825a udc_attach_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xf567596a usb_del_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xfb59db29 usb_gadget_map_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xfcbd87a9 usb_add_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xfd492467 usb_gadget_set_state +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x0a5230df fsg_common_set_nluns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x141fce2a fsg_common_remove_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x1782a4ae fsg_common_remove_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x1ccb58f7 fsg_common_set_num_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x2d10b6a7 fsg_common_create_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x36a20768 fsg_common_set_cdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x51707c29 fsg_common_run_thread +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x6acb4179 fsg_common_set_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x7e26d4a5 fsg_common_set_sysfs +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x99023bfc fsg_common_put +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9a0221c7 fsg_common_free_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9dc025a5 fsg_common_free_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xa46e6443 fsg_common_get +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd3ae3b65 fsg_common_create_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd468f882 fsg_common_set_ops +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xe4d1591e fsg_config_from_params +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x35abcba3 ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0xaf845848 ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x0490e214 usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x273230b1 usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x2bcb419c usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x408a0993 usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x89b07ad6 usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x97d1e659 usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xc12bda4f usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xc15a9e6f ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xf240aa5f usb_ftdi_elan_edset_output +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x6bdfb3ac musb_interrupt +EXPORT_SYMBOL_GPL drivers/usb/musb/tusb6010 0x37d5dae4 tusb_get_revision +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x0cfcb589 usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x54c66597 usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xf90a9286 usb_gen_phy_init +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0xfc85aea5 isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x0ae048e7 samsung_usbphy_rate_to_clksel_64xx +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x1c458238 samsung_usbphy_rate_to_clksel_4x12 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x4334da78 samsung_usbphy_get_refclk_freq +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x89d7ba8a samsung_usbphy_cfg_sel +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x991b42f8 samsung_usbphy_parse_dt +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xab2cb1a2 samsung_usbphy_set_isolation_4210 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xc7f82e70 samsung_usbphy_set_type +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0x1c2bf119 usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x00a57270 usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x020dbe7a usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x1068145a usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x20616ba6 usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x33311028 usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x37d74ed8 usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x45eb1948 usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x6adae3c0 usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x77f8e549 usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x863fe252 usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa044cf02 usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa48ad160 usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xba7bba6e usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xcbec40d1 usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xd1f16243 usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xdf1b5489 usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xe14fea08 usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xe30c62e6 usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xef4863aa usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xfaf1c6ed usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xfdedbea2 usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x0051e86c usb_stor_bulk_transfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x03d639a8 usb_stor_suspend +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x0beef678 usb_stor_Bulk_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x10bb75a0 usb_stor_access_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x14a6a6fc usb_stor_post_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x156b83f6 usb_stor_pre_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x184354db usb_stor_probe1 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x1bc3edc2 usb_stor_sense_invalidCDB +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x31d78ff0 usb_stor_CB_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x332fc09f usb_stor_CB_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x38e69e26 usb_stor_clear_halt +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x4bcd3593 usb_stor_reset_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x686154d4 usb_stor_Bulk_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x785a9193 usb_stor_ctrl_transfer +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x86527175 usb_stor_control_msg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x97012661 usb_stor_probe2 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xad6665ca usb_stor_bulk_srb +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xb018dce2 usb_stor_set_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xbcf418c2 usb_stor_bulk_transfer_sg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xbeef18b8 fill_inquiry_response +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xc4cee1ee usb_stor_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xd34cb34e usb_stor_disconnect +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xf7a99920 usb_stor_transparent_scsi_command +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x214df124 wa_urb_dequeue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x24393a55 wa_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x59b2a38f wa_urb_enqueue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xc543b60e wa_process_errored_transfers_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xcb55ad58 rpipe_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xed5d8856 __wa_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xf20ff1d1 rpipe_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xf4654c3f wa_urb_enqueue_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xfd789392 rpipe_clear_feature_stalled +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x042a701f wusbhc_reset_all +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x0bb6bf5e wusb_cluster_id_get +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x1b3a53c7 __wusb_dev_get_by_usb_dev +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x286d3390 wusbhc_rh_control +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x3fa3eb1f wusbhc_b_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x4e7dac6e wusbhc_mmcie_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x6910a927 wusbhc_handle_dn +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7637f97d wusbhc_rh_start_port_reset +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7f0b7631 wusb_dev_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x956658d9 wusbhc_rh_status_data +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x99eaaca2 wusbhc_mmcie_rm +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x9ac73f39 wusbhc_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xb725d128 wusb_cluster_id_put +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xcacfad30 wusbhc_giveback_urb +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xdb90143b wusbhc_chid_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xeda420ae wusbhc_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf6630b4a wusbhc_b_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf770a6b4 wusbd +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xfe2e17d7 wusb_et_name +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x5363e9a7 i1480_rceb_check +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x5739bfce i1480_fw_upload +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x59efa651 i1480_cmd +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x06f00852 __umc_driver_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x132db255 umc_controller_reset +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x343688d9 umc_driver_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x7b982822 umc_device_create +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x9c84393c umc_match_pci_id +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xa35a3476 umc_device_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xaef6ca7f umc_bus_type +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xc7ee63f8 umc_device_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0b8aad57 uwb_est_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x1407fed4 uwb_rc_get_by_dev +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x1d776eb7 uwb_rc_pre_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x1de958f4 uwb_rsv_create +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x2050f1ed uwb_pal_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x2399b2d0 uwb_rc_get_by_grandpa +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x27f4c678 uwb_est_find_size +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x3031797a uwb_rsv_terminate +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x3382e510 uwb_rc_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4307a503 uwb_dev_for_each +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4d57ae3c uwb_rsv_type_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4e8185df uwb_rsv_establish +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5e4bc088 __uwb_addr_print +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5e73aa5b uwb_rsv_modify +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x711aca17 uwb_rc_vcmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x78cf7e1a uwb_pal_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x797fc101 uwb_rc_dev_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7dcfcd23 uwb_ie_next +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x864b157b uwb_rc_ie_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x87987293 uwb_rsv_get_usable_mas +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x88bd0000 uwb_rc_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x89db39ad uwb_rc_cmd_async +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x90ab356e uwb_dev_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x967c69a2 uwb_rc_put +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x98413234 uwb_rsv_state_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa4610fa3 uwb_rc_post_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa4c2a31f uwb_rc_neh_error +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa9e558b4 uwb_pal_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb029c665 uwb_notifs_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb43a1601 uwb_rc_alloc +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb53ad0b7 uwb_rc_reset_all +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb679b2b6 uwb_rc_ie_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb8f08763 uwb_rsv_accept +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xbd4c240d __uwb_rc_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc284997c uwb_notifs_deregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xcb4aeeea uwb_radio_stop +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xce34043c uwb_rc_cmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd6069726 uwb_rsv_destroy +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd8c344f0 uwb_rc_mac_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xda1e16f2 uwb_rc_neh_grok +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe1716f06 uwb_est_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf8b40e99 uwb_rc_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xff1cab8b uwb_radio_start +EXPORT_SYMBOL_GPL drivers/uwb/whci 0xe0ded460 whci_wait_for +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x08d7e123 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0a61918b vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x10ff7612 vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x19a159fe vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x269f7a09 vhost_dev_reset_owner_prepare +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x347146f2 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x362a9f47 vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x36d1e640 vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6844a95e vhost_init_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x699c9fa2 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x732b3713 vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7d378205 vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8574a270 vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8614f9f7 vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x94295f8f vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x968d026f vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9835d566 vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x99e6a328 vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9d2bfa25 vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa3a9cfb9 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa5a13485 vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb0f81e37 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb164eaff vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xba36a285 vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc28a7cdd vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc7ddfcd3 vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd62f9a60 vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf0b00554 vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf4ef027a vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xfa5517fe vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xffc734a4 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x147b7a9f auok190x_send_command_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x1cb7b2cf auok190x_common_remove +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x2adc426f auok190x_send_cmdargs_pixels_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x2d8aba4c auok190x_send_cmdargs_pixels +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x2e7b00e8 auok190x_send_cmdargs_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x4c6ef7e0 auok190x_send_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x8712f45d auok190x_pm +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xb2917075 auok190x_common_probe +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xe866d35b auok190x_send_command +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xeef3469d auok190x_read_cmdargs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x490b9a73 ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x8366fa5b ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x85cbfa50 ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x90be0056 ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xa5608b84 ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xd36e56b9 ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xd63aa25c ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0x74416050 fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0xece0ade7 fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0x867a70a9 sis_free_new +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0x8ed74d2a sis_malloc_new +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x07868637 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x57ef52e1 register_virtio_driver +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x6fbf511f register_virtio_device +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x772dd765 unregister_virtio_device +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0xfd547af6 unregister_virtio_driver +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x094ee620 virtqueue_is_broken +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x0d28a3e3 vring_new_virtqueue +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x2215c762 vring_transport_features +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x454288d5 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x48c36942 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x49b684ec virtqueue_get_buf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x517644fb virtqueue_enable_cb +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x5b419e7b virtqueue_notify +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x6f01d70f virtqueue_add_sgs +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x76c40dfd virtqueue_kick +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xa678d38c virtqueue_get_vring_size +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xa6e85098 virtqueue_disable_cb +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xbdbd7f87 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xc3ed85e2 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xcdd131f2 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xd9eec959 vring_del_virtqueue +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xeb9784d1 virtqueue_poll +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xed202258 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL drivers/w1/wire 0x036d0edd w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0x4a159b28 w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x56cc72b4 w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x6d52f346 w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x7c2f2afb w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x87847569 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x958196c7 w1_next_pullup +EXPORT_SYMBOL_GPL drivers/w1/wire 0xab9bef94 w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xb0804847 w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0xe5f2e688 w1_write_block +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x452c478f dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x5196d208 dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x9321df95 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc0598d26 dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc6dc8c2f dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xdc583c08 dlm_unlock +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x0317a1b2 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x17ce645d locks_end_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x1a88c61d nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x49419a5e locks_in_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xa6e3a0da lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xd33e5b69 lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xd39824b6 nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xf67732b1 nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xf9a2d8d8 nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xfcb2875d locks_start_grace +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x02f3644e nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x03578dfc nfs_writedata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x03597d6f unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x040095da nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0585665c nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x05fbe1ed nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0b579e4a nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0d2927e9 nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0db8c50d nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x155782fd nfs_readhdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x15f42ad2 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x16a30280 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x18fc2a08 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1a73eca8 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1a8b58bd nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1b2e2913 nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1d8ba316 nfs_fs_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1f762409 nfs_file_splice_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x211528a4 nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22169e81 nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2306b122 nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x236ac747 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x244f69ea nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x25cdf83c nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2b53bfca nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2bb51f46 nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2c1b4525 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2e58a84a nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2ee53f86 nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x31c934c4 nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3248590f nfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x333d50e4 nfs_fill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x34ab2ed5 nfs_put_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x369b6dbe nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3763462f nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39be139a nfs_setlease +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3b654093 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ca31f35 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3da0cde1 nfs_readdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42c06868 nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4397ebce nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4502be01 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x46b0ad1f nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4776db14 nfs_generic_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x47e1044f put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x48bb000c nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x49a0627e nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cbd8379 nfs_initiate_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4e665a12 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4ef371c0 nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5002c12d nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51468d2c nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x515d3345 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x52919352 nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5a562434 nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e1d863a nfs_sockaddr_match_ipaddr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x61b85e9b nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x62a8f6cf nfs_pageio_add_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6372d173 nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x64c41464 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6520fd73 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x69199bf7 nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x69e9fef3 nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6ad4e3ce nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6c3ded23 nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6d97e252 nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6dae967a nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6df7d47b nfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6f2f64f7 nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6f81615a nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x72afb9ad nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x75798f71 nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x76f460d8 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x797eea90 nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x82576ebd get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x830a7164 nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x83c0cc96 nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89bc5a64 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89f97203 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8b685ff4 nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x96ba62f3 alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x975d26ba nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x991d9242 nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9bd8668c nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9f3fb824 nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa03226ff nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa0f23166 nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa24b6395 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa27cef55 nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa41144ef nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa52826d2 nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa6d89377 nfs_remount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8d2d1ce nfs_callback_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaa3d7a0b nfs_set_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaaa14361 nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xab800d8a nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xacb85f66 nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xadbe1e0b nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xadd2b0e0 nfs_initiate_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb1c9ab5e register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb2259a8a nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb606e716 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbd33c038 nfs_clone_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc021743f nfs_file_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc19a5bd8 nfs_writehdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc2c1bdd2 nfs_generic_pagein +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4416a31 nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4ff1e9f nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5ef47d5 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc9d505cf nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcaeb568a nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcb5e389b nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xce2256c8 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd312dc83 nfs_pageio_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd445e43c nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd58be868 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd6a0298b nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd9e2b105 nfs_file_splice_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdac02270 nfs_file_fsync_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe11b5df1 nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe6dad85c nfs_pageio_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xecc6bde9 nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xee25ff89 nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeebc0a27 nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf085b68c nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf0e94e5f nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf1cb88d1 nfs_destroy_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf1ec4268 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf25d235e nfs_fs_mount_common +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf3610968 nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf5353516 nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf55dedcb nfs_try_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf6103bde nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf670b3e6 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf9f887bb nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb7ee006 nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0458f26d nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0b2857bd nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x11bda27c __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1459080e pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x15219a36 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x170f3ed6 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x260489c5 pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3551c315 pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x358fc217 pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3788b262 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3acbae30 pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3b8f1778 nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3c4533a0 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4793718c nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4e935b79 nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4ed0f59a nfs4_proc_getdevicelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x54d56054 pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5ba8b2b9 pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5f6306fc nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5f87d1e0 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x665fa50e __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6702a7ab nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6e6abcaa nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7080f22b nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x70abf0c4 pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8abbccf2 pnfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8d7b5abb nfs41_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8f585bd8 pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x974a2669 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x984d030d nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa4fd8451 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb3899e94 nfs4_insert_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb67995b2 pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb6de9962 pnfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc3cdce67 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc520e7e7 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcbf2e74d pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd835ea9f nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdb813e84 __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdba1aac7 nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed972aa4 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xef252633 _pnfs_return_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xefd9af26 pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x0e1a1baf nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xf0bffae7 nfsacl_encode +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1cb231d0 mlog_not_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1d747ce3 o2hb_check_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x236f86d8 o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36418553 o2net_send_message +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x512ea2e2 o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x55a956fd o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x5fc5659a o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x687f6251 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x6f0c169b o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x7635606e o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa82a8645 o2nm_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa9f5379a o2net_send_message_vec +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xae808bac o2net_register_handler +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xbaeb4700 o2hb_check_node_heartbeating_from_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xbf3f0e31 o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc3679d7b o2hb_get_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd60f2c6c o2hb_check_local_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf1a5611d o2net_unregister_handler_list +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x09febcc8 dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x46cdb55a dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x54d9e1e4 dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x927e2d17 dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xb48eb918 dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xcce79210 dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd7ba575e dlm_errmsg +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd8fa57a6 dlm_unregister_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xfb86b96f dlm_errname +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x025e2d69 ocfs2_cluster_connect_agnostic +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x0562c415 ocfs2_cluster_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x16b2e575 ocfs2_dlm_unlock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5469ce31 ocfs2_dlm_lvb_valid +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x7083dbd5 ocfs2_dlm_dump_lksb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x89502fe7 ocfs2_cluster_connect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xb476a48f ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xb4bd060c ocfs2_dlm_lock_status +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbbc4ef97 ocfs2_stack_supports_plocks +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbca2dba2 ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xdc823ea4 ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xdcab1ebf ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe2bd47db ocfs2_dlm_lock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe40cffce ocfs2_stack_glue_set_max_proto_version +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe417d940 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL lib/bch 0x231d70fc encode_bch +EXPORT_SYMBOL_GPL lib/bch 0x6b770f49 decode_bch +EXPORT_SYMBOL_GPL lib/bch 0x9463ff71 init_bch +EXPORT_SYMBOL_GPL lib/bch 0xbdf512de free_bch +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x69c67791 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x8139442e notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x021957e1 raid6_datap_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x05513b71 raid6_call +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x0f8a2742 raid6_2data_recov +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x201d8ea3 encode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x29fa419f decode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x300d7e57 free_rs +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x6fbb3bd9 init_rs_non_canonical +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xabda1e2e decode_rs16 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xb050f329 init_rs +EXPORT_SYMBOL_GPL net/802/garp 0x1565c11d garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0x3bd84e55 garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0x53638836 garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0x7d77accb garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x8c731273 garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0xf8155302 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x3b126e3f mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x4a9957de mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x6c9ccf1c mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x9284e2b3 mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0xca49e199 mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0xef5a4943 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/stp 0x400826b4 stp_proto_register +EXPORT_SYMBOL_GPL net/802/stp 0x78716e8f stp_proto_unregister +EXPORT_SYMBOL_GPL net/9p/9pnet 0xd533562a p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/9p/9pnet 0xf20bae76 p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/atm/atm 0xb09faf79 register_atmdevice_notifier +EXPORT_SYMBOL_GPL net/atm/atm 0xcfb6a3da unregister_atmdevice_notifier +EXPORT_SYMBOL_GPL net/ax25/ax25 0x48435bba ax25_register_pid +EXPORT_SYMBOL_GPL net/ax25/ax25 0xac93ae05 ax25_bcast +EXPORT_SYMBOL_GPL net/ax25/ax25 0xaeb7451e ax25_defaddr +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xc7765fdd bt_debugfs +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0364cf64 dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0740854e dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0x08a9decc dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0a91e125 dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1d99d49a dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x284676e8 dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0x297e0840 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0x33b50dcb dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4d199c09 dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4ec35231 dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6535a73a dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7a510dcb dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7b45c4a4 dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0x80243f20 dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8048904d dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8475296a dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8a295b6f dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x90f7a297 dccp_insert_option_elapsed_time +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9c2ba029 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa02df92d dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa14dc862 dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa43189cf dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0xac356c4c dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb63cd81a dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb76d6c8b dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb9ba8b7b dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc0b7b890 dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xce755d68 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0xce98dc94 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcea4440e dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd0c108b8 dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd6ea3e17 dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdb48b404 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe3be6f24 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf3017e21 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf585830c dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf85e093a dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0xfe0611d2 dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x41f39ecc dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x48e09833 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x88715576 dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x8aed8d6d dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xed6982c8 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xf561d1c5 dccp_v4_connect +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x15e9d19f unregister_switch_driver +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x8a9a6349 register_switch_driver +EXPORT_SYMBOL_GPL net/ipv4/gre 0x15620095 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0x23b619bd gre_build_header +EXPORT_SYMBOL_GPL net/ipv4/gre 0x9914fda5 gre_cisco_register +EXPORT_SYMBOL_GPL net/ipv4/gre 0x9b1cc9e0 gre_cisco_unregister +EXPORT_SYMBOL_GPL net/ipv4/gre 0xd43c9fc2 gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x1609533b inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x1b9ac563 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x404ec576 inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x6a83e3f9 inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xd6edf4ac inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xea08001a inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x085f25b3 ip_tunnel_delete_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x08755edb ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x28bc5e7f ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x547053b0 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x66a08937 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x72584cc4 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x9fbf39f6 ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xa99abd90 ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xbadf9678 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xbb6a8df8 ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xc88327b8 ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe46fba77 ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xea653354 ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xfade1d17 ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x0ead2339 arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0x13c76e8d ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_conntrack_ipv4 0x6d40a921 need_ipv4_conntrack +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x6b6c3d10 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_ipv4 0xd3325d26 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_proto_gre 0x636b12c8 nf_nat_need_gre +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x0f8a24b1 tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x240ed8e9 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x83940c53 tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xc37d1b06 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xc3a64ae3 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0x6035b171 xfrm4_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0x94e4adc5 xfrm4_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x110fd47e ip6_tnl_dst_store +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x3d576eb1 ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x89b0bcbd ip6_tnl_dst_check +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x989b7861 ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xb66e41d3 ip6_tnl_dst_reset +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0xe474d0d6 ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x6eb85693 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_nat_ipv6 0xb096a27c nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0x43bc5df6 xfrm6_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0x47ce7fc6 xfrm6_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x12e07a90 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x1bec1c9b l2tp_session_queue_purge +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x1f926485 l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x2b6c83ee l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x3eb334c0 l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x53f982c9 l2tp_tunnel_sock_put +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x5f629f78 l2tp_tunnel_closeall +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7098b043 l2tp_session_find_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7dc97583 l2tp_tunnel_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x8ad84f11 l2tp_tunnel_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x99945d97 l2tp_session_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x9ffd4309 l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa46c6d72 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb1b25d5e l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb7fa8c10 l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xecffb6ae l2tp_session_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xf321f91d l2tp_tunnel_sock_lookup +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x66cfe756 l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x19a302fc ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x21f13658 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3663a36d ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4ae6c0e3 ieee80211_iterate_active_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4bf42798 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4ed90fae ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x568874f8 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5d38f601 ieee80211_set_key_tx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x82280128 ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x8a007a37 ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa38f591c ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa5e115bf ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xbdb311db ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xdd1cc258 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xe2af2401 ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x013ad023 ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x09bc3641 ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x0a888269 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x0d0436ae ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x204e6ed8 ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3bbb2533 ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x463c49b0 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x532bba50 ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x586dec7b ip_set_get_ip_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x6344eaf6 ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7671235a ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x76a4cfca ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9830341c ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa2d623f3 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa48873e9 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xeda2f041 ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xedb10b51 ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xef13ebbe ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xefcc4814 ip_set_nfnl_get +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x0c8cc0eb ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x53ce07c5 ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xc79254a3 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xd9670b75 unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x00efd553 nf_ct_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x00f38199 nfnetlink_parse_nat_setup_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01a14c3e nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01f84db5 nf_conntrack_set_hashsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x022b9421 nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x045072cd nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x09e66bcd __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0c4c69c4 nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0c94e0ea nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0f2e3699 nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1c3c8c26 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1e1a86fd nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2273a7a0 nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x261396be __nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289c3714 nf_ct_alloc_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2d3ec19e nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x34d52f27 nf_connlabel_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x37386cac nf_conntrack_hash_rnd +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x38a6814d nf_conntrack_l3proto_generic +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3f5b1415 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x407798d8 nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4319ddde nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4399c0f7 nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x44352a3b nf_ct_iterate_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x473e728f nf_ct_l4proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x48a2360e nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4b2ffc72 nf_ct_l4proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x583dc159 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5a86d445 nf_ct_l4proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5d55925c nf_conntrack_l4proto_udp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62813e5c nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x65d9c574 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x67526085 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x67b27a89 nf_ct_l4proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6c3b9a8b nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6d566a7d nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6e224a7a need_conntrack +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6e51f638 nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6f63f0de nf_conntrack_l4proto_udp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6fff8279 nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7118a404 seq_print_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x73387099 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7473404c nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x767ee9e8 nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x78f9b710 nf_ct_l3proto_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x79e43d21 nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7a6de16d nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7ac4903f nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7d60aff3 nf_nat_seq_adjust_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7dacd01b nf_ct_l3proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x83f32b30 nf_ct_l3proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x859dc7a9 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x86cf707a nf_ct_get_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x86dae860 nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8a30af17 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8e99e341 nf_ct_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x90ff6c9f nf_ct_invert_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x91d0e590 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x934dfac4 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x94b144f4 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x95a32033 nf_connlabel_match +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x97c2700c nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa008c6da nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa522e38d nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa7174455 nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab3d1f95 nf_ct_untracked_status_or +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad1bb027 nf_ct_free_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb602c57e nf_ct_l3proto_module_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbbe88b8a nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbbeb6adc __nf_conntrack_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc488a5eb nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc4f3e9b9 nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcf0996d0 nf_ct_l3proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd4a540e9 nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd6d2e318 nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd7f59fcf nf_ct_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd953436f nf_ct_l3proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdc5c5157 nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdf8aea1d nf_conntrack_l4proto_tcp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdfa6c099 __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe07e4ada nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe7701932 nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe85351db nf_ct_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe98b93d6 nf_ct_l3protos +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xedb8f684 nf_conntrack_flush_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xedbc3c40 nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xedbc889f nf_conntrack_l4proto_tcp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf551a627 __nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf6bc34f4 nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf78c0154 nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x65ac4bf0 nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0x3644cb00 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0x39a0fd20 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x17d2cb97 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x21b7d7db set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x22370060 nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x4eab2186 set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x575094cc nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x9f765074 set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xb3ad9527 nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xbb94782c set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xc5d13d23 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xf769d5c5 nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0x30cae17a nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x129591c6 nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x4d5d493c nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x703c6461 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x90b1a15f nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x639b3a63 nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x8435baab nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x29c56f27 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x44a182be ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x484f7aea ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x4add6db6 ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x5a06f9ac ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xb58b938e nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xf034e35e ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0x8682c65a nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0x44c6480b nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0d9bae4b nf_nat_l4proto_nlattr_to_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0e6037d7 nf_nat_l4proto_unique_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x102c46cd __nf_nat_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x131f636c nf_nat_l4proto_in_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x4b5c2cfe nf_nat_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x7155933b nf_nat_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x72e0098f nf_nat_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xaead9749 nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xcaa7aadd nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xcec49e12 nf_nat_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x11a006b5 synproxy_check_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x5f339439 synproxy_build_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x811e6437 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x90298227 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb42e336a synproxy_options_size +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xef7db50c synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xfd8d3cfa synproxy_tstamp_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0cad63ea nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0fda3c99 nft_validate_output_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x161d3987 nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3349bfd8 nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x357959ed nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3d49dab7 nft_validate_input_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x47bb2158 nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6024a75c nft_do_chain_pktinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x790fdf54 nft_data_uninit +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7b585cea nft_register_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x82ff377c nft_register_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb9a8bf47 nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xba2b54ec nft_unregister_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xcaca283b nft_validate_data_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd6119f7e nft_unregister_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x05491d42 nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x249d424c nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x60bcb661 nfnetlink_alloc_skb +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xa144a210 nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xb711bcd2 nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xc7588eb9 nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xd9ac89b0 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x21f6bba6 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x51886f3f nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_log 0xb32c70a0 nfulnl_log_packet +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x20c1b3ce xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x333fc78d xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x40728a63 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x687ef64d xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x70c18a07 xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x72b81496 xt_hook_unlink +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x74cdcac8 xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x807d2b2c xt_recseq +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x8cab5cd9 xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbad3f046 xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xd0115024 xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe020b090 xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe7f879a4 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xfddcb406 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xfe324211 xt_hook_link +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x00204983 xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x482b6a12 xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x562a9088 nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x97392266 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0xe778a827 nci_spi_send +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x115d33d2 rds_page_copy_user +EXPORT_SYMBOL_GPL net/rds/rds 0x14570f1e rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0x1cc8563c rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x2c5c5514 rds_message_add_rdma_dest_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3101936e rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3543968f rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0x3bced3f5 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x3d592681 rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0x4622b59b rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x50cbe7b3 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x51841c76 rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x669b5113 rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0x6ac3863a rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0x703c8230 rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0x73aac73d rds_message_populate_header +EXPORT_SYMBOL_GPL net/rds/rds 0x73ac33d1 rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0x785fbe7f rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0x853e6fc0 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0x8823de4e rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x96fafe85 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xb4c56180 rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xcc85c1cc rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0xdad1ab6f rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0xdb42e640 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0xe17e48af rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0xe381e0ae rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0xf609436f rds_send_get_message +EXPORT_SYMBOL_GPL net/rds/rds 0xf6723a63 rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0xf7b64a75 rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0x8df894a5 rxrpc_register_security +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0xfef64c53 rxrpc_unregister_security +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x00c52ef5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x48b6e901 gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x54deb6d0 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x631e7fcd gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x8d1a827e svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xb5dea7ef g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xf8b2ff6e g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0274086a xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x02db7768 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x02e9956b svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x045834e9 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0598e439 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0696eaea xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x089ebc89 svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c3e5584 rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c4c5342 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c814445 rpc_lookup_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c90ccf4 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0ca835b8 xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0d7e181b svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0da67c36 svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0dc89efb sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f668ba9 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f94ed6a svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1029ec14 rpcauth_generic_bind_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x11057e72 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x128630e5 svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1618a45f auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x162d5285 rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x170b82a8 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x179b675f xdr_partial_copy_from_skb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x17c666df svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x18f5514d rpcauth_cred_key_to_expire +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1c1a9164 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x206374ff rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x20ac6fa6 sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x227a2bcc sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23062a5d rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23e13768 rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23fc11f6 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x24ed3544 rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x25a1b51c xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x25a3a4d9 cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x261d8086 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2c18a0f0 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2d6a6eba xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2e65eae9 auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eae709e sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eec63c9 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f525dcc xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f8ebbe0 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31410ebe rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31b9db37 cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31ee7ecb rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3354d431 xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x33784f97 xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34a63a4a sunrpc_cache_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x35448c65 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x366cdc74 rpc_task_reset_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36cd1791 svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x370ca5fe rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x37c72f67 rpc_get_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x38ea7b5f svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x39f95b03 xprt_lock_and_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a40aa70 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3b1ffd05 xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3e19efd4 rpc_protocol +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3ecbbf9c rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x401c3c36 xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x411deef6 rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x412183c1 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x42daeea5 xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x43ed7e53 rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x45672b4b svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x465673a7 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x48bc7350 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x49db7bf1 rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4a261b87 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4bcc02df cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d347ac9 read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e2b5458 rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a00115a xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a7bb3b3 svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5d182c72 rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5d8951e0 cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x60bc552c rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x61e34424 rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x623b3e65 xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x63b8d84b xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x64a9b628 svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x661e8c72 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6a44bd3c svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6b3cbdfe rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x72c7d398 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x73ffa92c svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7708ced9 rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7730cf14 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7ab9b730 rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7c1c95ef xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7db34c19 __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f47489b rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80951b28 rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x819b8ee0 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x82636915 rpc_print_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8276e13c rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x835f3889 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x848d8b4b rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x856903a3 rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8591bb9a xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x86850c03 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8752dbdf svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x88507823 xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x886189e8 svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8a4f8bd9 svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8c2262c7 rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8d725175 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8facdfde rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x91e900dd xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x927144e4 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x93608037 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x94c6db50 rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x950dea6d xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9540e97c xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x974c7ddf _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98b75d64 rpcauth_list_flavors +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9ab2e69f rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9bbd17d2 rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9e302afc rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9fb52021 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9fbe057c xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa3b525b1 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa3d486a9 xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa63c66f2 rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xab77f92d svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xab9c53c7 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xacbbc651 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xad995be5 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb0755a8d rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb515d795 xdr_skb_read_bits +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb54c4139 xs_swapper +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb65f59d6 rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb80d0100 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb8489ee5 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xba6122d9 rpc_rmdir +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf05d962 xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3880471 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc412ffcf rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc52c9ac0 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc5883263 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc62978c8 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc65126c9 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc7345ec9 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc7f673bf xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc810fc2a svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc873a048 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e18857 auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd1afc1b6 xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd29b8792 xprt_set_retrans_timeout_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd3435989 rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd47b284c xprt_set_retrans_timeout_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd51cf6f7 rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd675ea07 svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd940dbbd svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdadf2506 svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdb4572f0 rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdba1a898 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdbb94b75 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdbed8818 unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdda33969 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdf278df8 xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe02b2395 bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1ac2bb8 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1f2fb18 xdr_buf_read_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe27c567c rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe2a8bc12 svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe4b1fc69 rpcauth_key_timeout_notify +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe65fc5ea xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe6c68fd3 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe7982bfd rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe91ac827 rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe96d9e61 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xead26a7d rpc_lookup_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xebeeec5d xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xee200ff1 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xee41ffbc svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xefcc601f rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf13380fb xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf1a6b06f xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf4660ef4 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf4f6a8f6 xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf5cc50c5 svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf5e982aa rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf5ff622e write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf69be47e svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9d1164c rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfa6e6a53 svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfc7ab842 svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe2cfc2a rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe76d8f7 rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfec65e10 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfed3077f svc_wake_up +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0c79d5ef vm_sockets_get_local_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x15c0c57c vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x73781fce vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x73f8376d vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x74e91915 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7f730c80 vsock_core_exit +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x880fb3be vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xa6ab043e vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xac007a29 vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc61c4f61 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xcc57605f vsock_core_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xcf339a57 vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd0a46257 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd6b8c75b __vsock_create +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe802cedb vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf351f512 vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xf593c40a vsock_pending_work +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xfc446f66 vsock_add_pending +EXPORT_SYMBOL_GPL net/wimax/wimax 0x085f0c72 wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0x0e8cb2af wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0x37b7f782 wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x3d6e1e03 wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x4d4e0929 wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0x4f34ccda wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0x6eb34da4 wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0x8242b1ea wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0x85008a43 wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0x86ddaf9f wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0x8d0357e1 wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0x928421e4 wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xc121f008 wimax_msg_send +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x0bab47bb cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x1ec051ab cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x2c8ea29d cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x3803fca3 cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x391674d7 cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x3d3e30a7 cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x868e46e1 cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x885f3da7 cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x8f1bf4ab cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xbe3d1ad3 cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xf2ed6ab1 cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x00778770 xfrm_ealg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x056bb269 xfrm_ealg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0a575945 xfrm_count_pfkey_auth_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0b9e5852 xfrm_aead_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x28e23139 xfrm_probe_algs +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x74e1a843 xfrm_aalg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7a8ca627 xfrm_count_pfkey_enc_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7c30b8c7 xfrm_calg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x92dbc6c1 xfrm_aalg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xbc8b0f41 xfrm_calg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xce7a55c1 xfrm_ealg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xe122af95 xfrm_aalg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x06f092e4 ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x5fcbb9cc ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x7f4672b9 ipcomp_destroy +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xae17610d ipcomp_output +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0x0d593256 aoa_snd_ctl_add +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0x321758f2 aoa_codec_register +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0x390967c7 aoa_fabric_unlink_codec +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0x5271c0ef aoa_codec_unregister +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0x866f946c aoa_fabric_register +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0x9234703d ftr_gpio_methods +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0x9bcb25b2 pmf_gpio_methods +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0xec7f7b3f aoa_fabric_unregister +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0xee2e9eeb aoa_get_card +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0xf1633ed2 aoa_snd_device_new +EXPORT_SYMBOL_GPL sound/aoa/soundbus/snd-aoa-soundbus 0x1285a0e7 soundbus_dev_put +EXPORT_SYMBOL_GPL sound/aoa/soundbus/snd-aoa-soundbus 0x22e9c99a soundbus_unregister_driver +EXPORT_SYMBOL_GPL sound/aoa/soundbus/snd-aoa-soundbus 0x8ca2b5d5 soundbus_remove_one +EXPORT_SYMBOL_GPL sound/aoa/soundbus/snd-aoa-soundbus 0xb275753e soundbus_register_driver +EXPORT_SYMBOL_GPL sound/aoa/soundbus/snd-aoa-soundbus 0xc13c6f50 soundbus_dev_get +EXPORT_SYMBOL_GPL sound/aoa/soundbus/snd-aoa-soundbus 0xd51ffe3b soundbus_add_one +EXPORT_SYMBOL_GPL sound/core/snd 0x3ca17104 __snd_printk +EXPORT_SYMBOL_GPL sound/core/snd 0x5f55f5b8 snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL sound/core/snd 0x91566c86 snd_ctl_activate_id +EXPORT_SYMBOL_GPL sound/core/snd 0xc138196f snd_kctl_jack_new +EXPORT_SYMBOL_GPL sound/core/snd 0xf021832d snd_kctl_jack_report +EXPORT_SYMBOL_GPL sound/core/snd 0xf08f2bc9 snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x4b856687 snd_compress_register +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x7b8e3374 snd_compress_new +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x969e0019 snd_compress_deregister +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x06eedbdd snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x165ae737 snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x17b7224f snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x5b438338 snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x6e435778 snd_ak4113_create +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xe8ba7a2b snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xe9b0dbd6 snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xebbe5106 snd_ak4113_build +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x026bedde snd_hda_mixer_bind_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0360990d snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x06f3652c snd_hda_queue_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x077e95e4 snd_hda_codec_flush_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0c1497d7 snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0d748f8f snd_hda_mixer_bind_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0d8ab2f3 snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x100c31e9 snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1294e928 snd_hda_resume +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1432bb5d snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x16e99d9a snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1cc1c279 snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x22321c8e snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2248c970 snd_hda_jack_tbl_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x27930431 snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2f7baa32 snd_hda_jack_tbl_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x307fabcb snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x30beb00b snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x338ef1ae hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x35d23e9e snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x360ca5b4 snd_hda_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x375cacd5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x390c32d2 snd_hda_jack_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3965e153 snd_hda_query_supported_pcm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3ad7fe74 snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3cf05c92 snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3e3af159 snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3e4c0623 snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3f155e78 snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x40e71afc snd_hda_parse_generic_codec +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x43cdb3cc snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4420b8de snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x457f2a37 snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4620ec22 snd_hda_get_sub_nodes +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x47b8b644 snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x48506a5d snd_hda_delete_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x49428b74 __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4a5d7f26 snd_hda_codec_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4b468602 snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4c20c388 snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4dab1f60 snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4dd5b66c snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4f22ad20 snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4f366311 snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x555820ee snd_hda_jack_detect_state +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x58bd2d21 snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5a6fe104 snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5b5991d7 snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5d55808f snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5fbf72e1 snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6128d04d snd_hda_bind_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x625b495a snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x651ca8e9 snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6538fb3a _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x669da304 snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x67001580 snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6721ab22 snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6d308aaa query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6d9fede1 snd_hda_jack_detect_enable_callback +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6ef510a2 snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6fd826cc snd_hda_mixer_bind_ctls_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x704227cb snd_hda_is_supported_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x70ac6b73 snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x70dbb300 snd_hda_gen_spec_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x72d0232f snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x73a13018 snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x747df414 snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x74d651c8 snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7763885a snd_hda_ch_mode_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x77d7e5f6 snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x792878dd snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7a16785c snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7a8ae3da snd_hda_codec_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7b2b8505 snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7b39d589 snd_hda_sequence_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7d8ff69a snd_hda_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7e8c860a snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x800a4717 snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x812cd89c snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8290e272 snd_hda_query_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x82d8f529 snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x85467325 snd_hda_override_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x870e2486 snd_hda_parse_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x885e8ed3 snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8a5fbba4 snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8bf9156a snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8c3d2b8d snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8cb67e29 snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8e4c6826 snd_hda_calc_stream_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8f0ed23d snd_hda_check_board_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8f1e06ab snd_hda_suspend +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8fc68047 snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8fee4ba0 snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x907e0a0b snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x909a8e2d snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x92241af8 snd_hda_ch_mode_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x923173d6 snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9270bce2 snd_hda_codec_resume_amp +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x930429d3 snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x95851bcc snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x96537550 snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9667adc5 snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9847d84b snd_hda_bind_vol +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x987d0ab6 snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x989750cc snd_hda_bus_reboot_notify +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9f4786cf snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa2827d76 snd_hda_get_jack_location +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa2f2189f snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa41b5e2b snd_hda_add_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa478c45d snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa6984195 snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa69eefe6 snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa6a2f4c0 snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaa131b33 snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaccd91da snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xad3bd33e __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xae3e1028 snd_hda_check_board_codec_sid_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xae495229 snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaeeef515 snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb0ce4e3d snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb13423bc snd_hda_codec_resume_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbc0e4ab9 snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbc2a5506 snd_hda_mixer_bind_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbd60cc9b snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc0b8717b snd_hda_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc0cd3ed2 snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc652fd69 snd_hda_get_jack_connectivity +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcb301b6e snd_hda_get_jack_type +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcc079475 snd_hda_mixer_bind_ctls_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xce81cd5a snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xceaeda5c snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd0bc3cd4 snd_hda_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd1999e14 snd_hda_mixer_bind_ctls_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd7bcce7f snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd87eb8e5 snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdb399101 snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdcbca57a snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdd5334b3 snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdd5bb615 is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xde7b0c3f snd_hda_bus_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe12c6d53 snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe2d45e0b snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe3e4971d snd_hda_codec_amp_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe7ff0a67 snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe9dccd3a snd_hda_codec_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xea1ef46e snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xea8ce47a snd_hda_get_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeb544755 snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xebb5011b snd_hda_ch_mode_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xec2e6a48 snd_hda_codec_update_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xec33e42a snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xed5324dc snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf5065c17 snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf62a75d9 snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf82eb140 snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfa610006 snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0xd1dd43be atmel_pcm_new +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0xe1ce26ff atmel_pcm_free +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0xfbbb7ba7 atmel_pcm_mmap +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x001a6453 snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x03de2199 snd_soc_register_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x05a4f4fe snd_soc_dpcm_be_set_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x06669cb0 snd_soc_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x06dceffb snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x070855e1 snd_soc_pm_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x071a0362 snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0900581c snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0981dbf2 snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0b2be301 snd_soc_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1047a84b snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x10a7236d snd_soc_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x19f46da6 snd_soc_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1a615d48 snd_soc_put_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1c2afdb3 snd_soc_cache_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1edf1837 snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x202cadab snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x21bb8ff9 snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x22c4685d snd_soc_dpcm_be_get_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2444f6aa dapm_reg_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2548c359 snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2678f1ef snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2772d641 snd_soc_cnew +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x29bfe768 dapm_regulator_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2a61b16e snd_soc_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2d55ae6f snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x315712c2 snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x31d526f7 snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x320f37f9 snd_soc_codec_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x32977710 snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x33e5cb52 snd_soc_update_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x37813f17 snd_soc_resume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x37f49097 snd_soc_add_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3815d9d9 snd_soc_dapm_kcontrol_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3cdf0e76 snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x40f2af50 snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x41ec35f3 snd_soc_add_card_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x46c5de66 dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x488c4668 snd_soc_update_bits_locked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4db38212 snd_soc_cache_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4f457280 snd_soc_info_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x503f7170 snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x523289c6 snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5b4874d3 snd_soc_register_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5bb2bf56 snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5fbb08fc snd_soc_dapm_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x622d0c19 snd_soc_dapm_put_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x626464fe snd_soc_info_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x628616a0 snd_soc_poweroff +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x62ec6e5e snd_soc_get_dai_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6395970d dapm_mark_io_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x666e5351 snd_soc_codec_readable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x67586de0 snd_soc_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x68a46654 snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x68c2f900 snd_soc_new_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x69c922e5 snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6ba21e14 snd_soc_get_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6bd48941 snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6cd4db3e snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6effb718 snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6fb7b299 snd_soc_platform_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x72451877 snd_soc_add_codec_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7498c3c3 snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7763b956 snd_soc_unregister_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e11d1c9 snd_soc_jack_get_type +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x815fa73c snd_soc_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x816f0840 snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x81887b1c snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x85d8310c snd_soc_dapm_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8843810a snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x88d3ab26 snd_soc_codec_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8935f965 snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x89edfd19 snd_soc_unregister_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8ab20280 snd_soc_free_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8dad5f4a snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8e2a0716 snd_soc_bytes_put +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8e75ff00 snd_soc_limit_volume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8ff98de7 snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9015b84e snd_soc_info_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x90bb0aef snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x91b87077 dapm_mark_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x972e55ac snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x98d15003 snd_soc_unregister_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x99a24059 snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9aa791cd snd_soc_platform_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9d122c2a snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9e10c899 snd_soc_debugfs_root +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9e900694 snd_soc_test_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa0087dce snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa081b76a soc_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa31c3ab6 snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa4a3f83d snd_soc_dapm_get_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa8792463 snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa8eb313b devm_snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xae120734 snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xaf77bf95 dapm_clock_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb042d6da snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb0a334c7 snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb205791d snd_soc_dapm_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb2c60d9e snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb3f201f9 snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb491cefa snd_soc_codec_volatile_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb6b07bee snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb6e8b9e2 snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xba5040f2 snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbac15a61 snd_soc_bytes_get +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbb978094 snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbdfb3557 snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc1e818f5 snd_soc_add_platform_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc2630753 snd_soc_codec_writable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc2d6da89 snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc6aaff21 snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc75139fa snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcb4dae9b snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcd9460da snd_soc_unregister_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcd95e894 snd_soc_lookup_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcdcf3e86 snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd23072a0 snd_soc_put_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd31894b5 snd_soc_platform_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd49410dd snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdbb3e496 devm_snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdd279e9c snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xde78383c snd_soc_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdebaf145 snd_soc_cache_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdecca215 snd_soc_get_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xded90c18 snd_soc_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe5ea667e snd_soc_codec_set_cache_io +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe9cf26e2 snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf0591249 snd_soc_dapm_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf16851df snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf1c903ad snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf25f7519 snd_soc_bytes_info +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf2fe5160 snd_soc_jack_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf68d0f72 snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfa9ef49b snd_soc_remove_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfe168376 snd_soc_jack_report +EXPORT_SYMBOL_GPL vmlinux 0x00000000 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x00000000 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x00000000 kern_mount_data +EXPORT_SYMBOL_GPL vmlinux 0x00000000 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x00000000 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x001415f6 skcipher_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0x0061be30 usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0x00632780 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x009304b6 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x00c4dc87 timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x00cf7b5a crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0x00ebcb5d ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0x01010c6d klist_add_before +EXPORT_SYMBOL_GPL vmlinux 0x0110a356 spi_master_suspend +EXPORT_SYMBOL_GPL vmlinux 0x011cf028 regulator_suspend_finish +EXPORT_SYMBOL_GPL vmlinux 0x0121a5e1 debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0x014ebdfb skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0x0153c2fd br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0x01895679 dma_buf_kmap +EXPORT_SYMBOL_GPL vmlinux 0x0195fba9 btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x01a201d4 pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x01afff35 blkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x0202d1c7 tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x021ebfda btree_update +EXPORT_SYMBOL_GPL vmlinux 0x0225f563 tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x0234363f usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0x0236d93b gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x0253fe96 anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x025c5257 inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x0289601d ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x028d56b5 usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x029d8f10 crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x02bd2ca2 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x02bd9ecc crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0x031302aa do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x032456ce tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0x03277bf0 unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x03419a12 pmac_i2c_get_controller +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x034535f9 rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0x035000e5 ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x037638b6 crypto_aead_type +EXPORT_SYMBOL_GPL vmlinux 0x03906571 rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0x03b261a4 usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x03d2952b spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0x03e3686c ata_timing_cycle2mode +EXPORT_SYMBOL_GPL vmlinux 0x03e72bf0 usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0x03ffbee2 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0x042ca5a6 rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x042f89cb key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x043d0bc6 regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0x04486e88 rcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x04494b69 crypto_ablkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x0472caae of_pci_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x047c2590 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x04803d28 rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0x048b5f8d twl4030_audio_get_mclk +EXPORT_SYMBOL_GPL vmlinux 0x04961630 tasklet_hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x04b5549c __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04cf646d kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x0507779e netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0x05365420 wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0x0544037a wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x0551f0ce tick_nohz_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x05655f7b kill_pid_info_as_cred +EXPORT_SYMBOL_GPL vmlinux 0x0573d050 ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x0578523f devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x05822004 crypto_alloc_instance +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x05faf4c8 tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x06168801 usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x061dee59 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0x061efc3c pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x0628c06c debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x0665f7f4 extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x067d5bc7 pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x068521f6 skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0x06858d67 usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x06d59f93 ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x06ff5094 serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0x0702e253 unlock_media_bay +EXPORT_SYMBOL_GPL vmlinux 0x071b32d3 scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x07288105 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x075ea305 usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0x0760615e pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x0762403c edac_put_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x0763e8ad crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x07937983 pcibios_finish_adding_to_bus +EXPORT_SYMBOL_GPL vmlinux 0x079662f7 tpm_release +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07ccf3a6 regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x0802771d perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x08323fe3 extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x0834258f fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x085ce438 sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0x0887e1ad tps65912_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x08baaa7d inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x08dcf0f5 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x08dd7fd2 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0x08f845e8 stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x091c824a machine_power_off +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x09437748 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x0944a961 device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x09469482 kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x096c9f59 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0x096dac4b tpm_show_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x098463e1 alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x09c252ab dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0x09e3ba59 fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0x0a0e7c46 regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x0a192879 __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x0a25c8e4 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0x0a51ae5b virq_to_hw +EXPORT_SYMBOL_GPL vmlinux 0x0a59cb0a pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x0a8934a9 tpm_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0x0a9659ec rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0x0a9d1cfa led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0x0a9fd3c5 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x0aa05c83 pmac_low_i2c_lock +EXPORT_SYMBOL_GPL vmlinux 0x0ab4c76b devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x0ab6ae13 bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x0aea1e6e devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x0afd4610 zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b09a859 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x0b1208ee blk_queue_bypass_end +EXPORT_SYMBOL_GPL vmlinux 0x0b239bf5 sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0x0b28b0c1 __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x0b3fb9e8 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x0b59390b __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0b65fda4 dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x0b741a26 dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x0b813e59 extcon_get_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x0b834d18 crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0x0bad0c1d pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0x0beddaa7 usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x0bf47d3a css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x0bfa3a19 rcu_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x0c011bf0 pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x0c0c015e ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0x0c2cdbf1 synchronize_sched +EXPORT_SYMBOL_GPL vmlinux 0x0c5bad56 init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0x0c636b12 ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0x0c77b141 extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x0c9c1476 ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x0ca5612e ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x0ca737f6 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0x0cc1e40f crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x0ccd858e pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0x0cd82627 __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0cea11d5 task_current_syscall +EXPORT_SYMBOL_GPL vmlinux 0x0cfa2b45 regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0x0cfd23be shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0x0cfd726c crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0x0d080e3c irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0x0d25886d ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x0d2ecfae filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0x0d6a3d03 blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x0dbd0e20 of_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x0dc91761 ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x0dd8815b rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0de06988 cpu_first_thread_of_core +EXPORT_SYMBOL_GPL vmlinux 0x0de084d6 stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0x0df14992 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x0df7eba9 dm_requeue_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x0df828f8 irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0x0e1fb8a8 __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0e2ab159 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0x0e5060a0 udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x0e7b64c9 pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0x0e98ac56 screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0x0e9c83be pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x0ea6f530 cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0x0ecf4019 inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0x0ed9302e percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x0ee29e0c pci_reset_pri +EXPORT_SYMBOL_GPL vmlinux 0x0ee800a2 regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x0ee9aeaf devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x0ef1207a blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x0efd3372 usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x0f01f08a usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x0f1f9b8d usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x0f29aca2 fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x0f4d4f32 cgroup_add_cftypes +EXPORT_SYMBOL_GPL vmlinux 0x0f5a90a3 wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x0f751aea input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0x0fc01e9f static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x0fe112dc of_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x101f4138 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0x105a2366 rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0x1067440d wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0x1097819c edac_subsys +EXPORT_SYMBOL_GPL vmlinux 0x109e4657 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x10b92657 da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x10fa59fc list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0x10fc5ab0 find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x1114011d threads_shift +EXPORT_SYMBOL_GPL vmlinux 0x112d4cfc __netpoll_free_async +EXPORT_SYMBOL_GPL vmlinux 0x115fc15c tpm_show_pcrs +EXPORT_SYMBOL_GPL vmlinux 0x11ab2ff6 led_trigger_store +EXPORT_SYMBOL_GPL vmlinux 0x11bcd836 ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0x11be4ad3 trace_buffer_unlock_commit_regs +EXPORT_SYMBOL_GPL vmlinux 0x11d46c7d __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0x120890cf blkdev_aio_write +EXPORT_SYMBOL_GPL vmlinux 0x121162fb crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x121cd7e5 ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0x121cd964 of_pci_range_parser_one +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x121ed3f3 add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0x123de305 regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x12482b7c spi_setup +EXPORT_SYMBOL_GPL vmlinux 0x124cc886 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0x124dcc3c do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x124f2056 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x12509a55 tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0x1251f9b8 pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x128215c1 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0x12a116ff cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x12a70e3d fuse_get_req_for_background +EXPORT_SYMBOL_GPL vmlinux 0x12a980fa fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0x12aab1d3 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x12cc4a19 devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0x12d9c4af pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x12f20d8f pci_restore_ats_state +EXPORT_SYMBOL_GPL vmlinux 0x1308d83c fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0x1315ad2c dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131805be regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x132325a8 ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x13354608 scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0x1339668b relay_open +EXPORT_SYMBOL_GPL vmlinux 0x136a4ee6 btree_init +EXPORT_SYMBOL_GPL vmlinux 0x13707eba put_device +EXPORT_SYMBOL_GPL vmlinux 0x137f38a7 rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0x1381f8e5 driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x13e5ea13 __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0x13ee5564 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x143e5e4d of_pci_msi_chip_remove +EXPORT_SYMBOL_GPL vmlinux 0x147d4bb7 device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x147d7c5d wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x14ab63f5 pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x14d02de3 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x152519b1 tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0x1561eaef fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0x15772ab6 set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0x15892417 async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x15ae5c42 ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x15b44e9a ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0x15bfa599 crypto_lookup_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x15c21e5e nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x15e89c27 device_find_child +EXPORT_SYMBOL_GPL vmlinux 0x16000a3c dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x160c9a97 xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0x16115417 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x1628cdd2 tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0x163ea45a pmf_call_function +EXPORT_SYMBOL_GPL vmlinux 0x1650bf27 rcutorture_record_progress +EXPORT_SYMBOL_GPL vmlinux 0x1657e59d driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x16741b6a ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0x168033bc generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0x16a89192 skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0x16c5dae8 debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0x172e9d1b usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0x1753a32f hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0x177a0530 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0x177c338d twl_get_version +EXPORT_SYMBOL_GPL vmlinux 0x17a596c5 ahash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0x17e0c2b1 __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0x17f0329d skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0x180572f7 md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0x180cc152 usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x183f2577 crypto_alloc_instance2 +EXPORT_SYMBOL_GPL vmlinux 0x1853653c btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x18570516 pmac_i2c_xfer +EXPORT_SYMBOL_GPL vmlinux 0x1866cec2 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x1878f62b edac_err_assert +EXPORT_SYMBOL_GPL vmlinux 0x1889ccb2 dev_hard_start_xmit +EXPORT_SYMBOL_GPL vmlinux 0x18984622 __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x18a27f34 jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0x18a3499b usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0x18a970f7 sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0x18b37ea7 wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0x18c5cc93 need_load_eval +EXPORT_SYMBOL_GPL vmlinux 0x18dcccd7 ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0x18e4a5ef rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x18f080ff rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x1920ab15 netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0x193affcb device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x193d48e0 trace_current_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x194dd5f5 pkey_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x195c364d hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0x196b99ad dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x19a29196 usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19b384a5 hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x19b4471a __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x19f92bc1 page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0x1a082d69 max77693_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x1a323362 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x1a58f263 spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x1a71d77b posix_timer_event +EXPORT_SYMBOL_GPL vmlinux 0x1a8c5907 btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x1aab86f6 swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0x1acef7d2 pm_freezing +EXPORT_SYMBOL_GPL vmlinux 0x1ad1bd6c ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x1ad33dc6 ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0x1afa4118 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0x1b2735db sysfs_notify_dirent +EXPORT_SYMBOL_GPL vmlinux 0x1b52db1c probe_kernel_read +EXPORT_SYMBOL_GPL vmlinux 0x1b7e77ea debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0x1b8ab5f0 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x1b9aca3f jprobe_return +EXPORT_SYMBOL_GPL vmlinux 0x1ba39c64 sysfs_get +EXPORT_SYMBOL_GPL vmlinux 0x1bab249b rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0x1bafd0cd pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x1bafe979 usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x1bd06aab cpufreq_frequency_table_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x1bd69467 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x1bdf3fc9 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0x1c21dbd6 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0x1c3dac25 flush_fp_to_thread +EXPORT_SYMBOL_GPL vmlinux 0x1c4e76aa irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c721425 __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0x1c801f61 tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1cd016dc led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x1cf82066 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0x1cf9b0b4 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0x1d2d132c input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0x1d36716c __rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x1d58ae14 lpddr2_jedec_timings +EXPORT_SYMBOL_GPL vmlinux 0x1d675350 pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1dc1b037 add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x1dfbcf4c mpic_msgr_disable +EXPORT_SYMBOL_GPL vmlinux 0x1dfe677f ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0x1e0047a1 wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0x1e502ee2 bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0x1e5ab54d subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x1e5b03dc pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1eb1594f gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x1eb6c1a3 __blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x1eb7da12 skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1eef6021 blkg_stat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x1ef35e84 ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0x1f0084e1 call_filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0x1f06e8d6 tpm_show_owned +EXPORT_SYMBOL_GPL vmlinux 0x1f15cd82 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0x1f18e3b7 serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0x1f1b8bee devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x1f2686f3 tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x1f2c83f5 devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x1f4146f5 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0x1f7c66c0 pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0x1f851ac8 thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f873dd7 driver_register +EXPORT_SYMBOL_GPL vmlinux 0x1f8db7f9 ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x1f90c7df regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x1fa1dbbc pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x1fb87377 usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x1fbefa89 inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0x1fcece42 inet_twdr_twcal_tick +EXPORT_SYMBOL_GPL vmlinux 0x1fd50691 blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0x1fd98775 sdhci_pci_o2_resume +EXPORT_SYMBOL_GPL vmlinux 0x202f1f6c pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x2045b83f user_read +EXPORT_SYMBOL_GPL vmlinux 0x2049bab8 __destroy_context +EXPORT_SYMBOL_GPL vmlinux 0x206b247e uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0x2072682a hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x2074ea64 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0x209a1f96 dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0x209c8bdf hrtimer_start +EXPORT_SYMBOL_GPL vmlinux 0x20b83bdd tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0x20bc3470 orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x20f789a8 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x2108ab01 sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0x212ab750 blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0x213e4726 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x21c6cfc2 usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x21d36a03 kvm_hypercall +EXPORT_SYMBOL_GPL vmlinux 0x222a9777 of_scan_bus +EXPORT_SYMBOL_GPL vmlinux 0x226f02bc usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0x2296c00d crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x2297f057 kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x22c54ff6 devm_spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x22cbae9b sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0x22d939bc i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0x22dd0f10 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x230a10fc vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x235c8626 get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0x23679939 __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x236e53b6 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x2392bc6e pm_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0x239317dd platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0x239d052f devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x23a46f3d platform_bus +EXPORT_SYMBOL_GPL vmlinux 0x23a61be8 usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x23ae471b put_pid +EXPORT_SYMBOL_GPL vmlinux 0x23b4d786 remove_irq +EXPORT_SYMBOL_GPL vmlinux 0x23bd5ec7 tpm_read +EXPORT_SYMBOL_GPL vmlinux 0x23fb67d3 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x2406dae3 pci_address_to_pio +EXPORT_SYMBOL_GPL vmlinux 0x24283958 key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0x243c8a06 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x2459ce97 __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x246a4d1b pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x248794b4 tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x249a03cf ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x24aac4d9 crypto_aes_expand_key +EXPORT_SYMBOL_GPL vmlinux 0x24b410dc raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x25529568 yield_to +EXPORT_SYMBOL_GPL vmlinux 0x25980039 ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x25a9d845 regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x25b45301 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x25c302b3 ablkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x25d5d6eb gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x25e61a2e rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x25eb3ba1 ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0x25fbbfbf ata_sas_port_async_resume +EXPORT_SYMBOL_GPL vmlinux 0x25ff63e5 crypto_tfm_in_queue +EXPORT_SYMBOL_GPL vmlinux 0x26050343 i2c_unlock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x262f1ead spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x262f20a8 local_clock +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x265fe673 ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x267b210c rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0x268541be pci_intx +EXPORT_SYMBOL_GPL vmlinux 0x268761c9 rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0x268efd43 unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x2691412e boot_cpuid_phys +EXPORT_SYMBOL_GPL vmlinux 0x26b71fb4 ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x26c618ec ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26f3539e class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x270ab4d7 pci_ats_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x27116452 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2711668f spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x2748789a kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x2776affd blocking_notifier_chain_cond_register +EXPORT_SYMBOL_GPL vmlinux 0x278362aa sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x2787db00 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x27c1e63f usb_amd_find_chipset_info +EXPORT_SYMBOL_GPL vmlinux 0x27eacc6f sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x281151e3 show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0x2849f855 rq_flush_dcache_pages +EXPORT_SYMBOL_GPL vmlinux 0x2857fb01 usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0x2874352b inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0x287b0f9b driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x28948e60 subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x28a12322 rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0x28a82da4 snmp_mib_init +EXPORT_SYMBOL_GPL vmlinux 0x28aba5d1 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0x28c74084 ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0x28d1a46e da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x28d74df8 __module_address +EXPORT_SYMBOL_GPL vmlinux 0x28f080e5 cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x2945e58a dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0x2947e9fe ablkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0x2977d4df of_regulator_match +EXPORT_SYMBOL_GPL vmlinux 0x29853194 ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x298dfaaf regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x29baa0c8 tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x29c0c3cf ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0x29eab652 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0x2a0a9fa3 inet6_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x2a1213e0 usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x2a2b7850 of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x2a480c37 dm_underlying_device_busy +EXPORT_SYMBOL_GPL vmlinux 0x2a4c0deb ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x2a4ecf45 ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a686e02 sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0x2a8d84b2 dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x2a99dcdb regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0x2aaedfc6 attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x2ad1ece4 zs_get_total_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0x2aff4c7d pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0x2b11116a ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x2b13e4c0 ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0x2b2387c1 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x2b45833e regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0x2b5c303b smp_send_reschedule +EXPORT_SYMBOL_GPL vmlinux 0x2b607170 ktime_sub_ns +EXPORT_SYMBOL_GPL vmlinux 0x2b7a574f md_is_badblock +EXPORT_SYMBOL_GPL vmlinux 0x2b7a6de8 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2b94eedb bus_find_device_by_name +EXPORT_SYMBOL_GPL vmlinux 0x2bba4861 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x2bde678d ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0x2be981e8 crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c243a40 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0x2c3dcee1 regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c97c085 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x2cc3e675 pmac_i2c_close +EXPORT_SYMBOL_GPL vmlinux 0x2ce8c357 rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x2ce98559 kcrypto_wq +EXPORT_SYMBOL_GPL vmlinux 0x2d17a0e1 cgroup_taskset_size +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d247b7c regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d59c954 edac_handlers +EXPORT_SYMBOL_GPL vmlinux 0x2dbd57fb pci_hp_change_slot_info +EXPORT_SYMBOL_GPL vmlinux 0x2dc5a6d1 btree_last +EXPORT_SYMBOL_GPL vmlinux 0x2e198b83 irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e2f1740 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2e45e488 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x2ea5cb48 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0x2eaf96b8 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ec948cd ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x2ecc2341 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0x2ef6b5bf smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x2efa32f0 spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f220d76 nl_table +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f455f75 pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x2f75b085 spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x2f832104 __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x2fb359b3 eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0x2fb5bdef pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0x2fd8cba9 freeze_wake +EXPORT_SYMBOL_GPL vmlinux 0x2fdb3ac8 __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0x2fe545ca ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0x2fede00b dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x2ffb5ff7 btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0x3006b6f5 of_pci_get_devfn +EXPORT_SYMBOL_GPL vmlinux 0x3023182b pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0x302f6564 page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x3050ec18 perf_trace_buf_prepare +EXPORT_SYMBOL_GPL vmlinux 0x30754568 tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0x3080e6f2 transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0x308b733a getboottime +EXPORT_SYMBOL_GPL vmlinux 0x30a49790 reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x30a4f4ca bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x30c3098c stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0x30d2a777 crypto_nivaead_type +EXPORT_SYMBOL_GPL vmlinux 0x30e81ec0 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0x30fd4994 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x3109b751 cpu_clock +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x312da237 vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0x3137eac9 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x313aed33 inet_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x314fbbe5 device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0x31904c96 blkg_lookup_create +EXPORT_SYMBOL_GPL vmlinux 0x31b3d729 __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x31bb2f9d devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0x31c0c2d1 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x322425ac irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x3236843f dma_buf_kunmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x3241f705 agp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x3243f63e posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x324a9d05 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0x3256ca45 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x32777009 regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x328995b5 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32c4bcac ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x32e85614 i2c_lock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x32fd447a monotonic_to_bootbased +EXPORT_SYMBOL_GPL vmlinux 0x330ed74c register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x335e1b7f tcp_init_congestion_ops +EXPORT_SYMBOL_GPL vmlinux 0x336154ca rcutorture_record_test_transition +EXPORT_SYMBOL_GPL vmlinux 0x337786fa usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x339d910a platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0x34209ab6 ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x344c712b usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x347fd4b3 eventfd_ctx_get +EXPORT_SYMBOL_GPL vmlinux 0x348a362a regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0x34ac50a4 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x34c4dd69 mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x34d4cae0 crypto_lookup_aead +EXPORT_SYMBOL_GPL vmlinux 0x3509a51c devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x35136032 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0x3519cc3a hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0x351d848c ata_sff_data_xfer_noirq +EXPORT_SYMBOL_GPL vmlinux 0x3530aeb1 dev_get_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x3536b8f3 pwm_config +EXPORT_SYMBOL_GPL vmlinux 0x354b1c85 inet_hash +EXPORT_SYMBOL_GPL vmlinux 0x3567fd1f irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0x358ff60f twl_get_hfclk_rate +EXPORT_SYMBOL_GPL vmlinux 0x35c1bf84 devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x35d2cf79 extcon_set_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x35eb4af6 eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0x35f10f43 nfq_ct_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x35f165f1 devm_reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x360a6343 kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0x361e2bcc save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0x363d4b25 da903x_update +EXPORT_SYMBOL_GPL vmlinux 0x367aae55 uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36b506b9 system_trusted_keyring +EXPORT_SYMBOL_GPL vmlinux 0x36c42056 pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0x36dd652c rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x36f261da ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0x376a5789 __get_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x377b2f37 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x37d91a58 __inet_hash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x37dd5820 __ip_route_output_key +EXPORT_SYMBOL_GPL vmlinux 0x383e13fd dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0x38457023 iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0x38510211 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x38534c73 smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x38a9c2c7 input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x38aafdbe debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0x38d74dbb debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0x38d7f248 spi_alloc_master +EXPORT_SYMBOL_GPL vmlinux 0x38dbf78e vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0x38f37cb6 crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x38f3c08d pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0x390d1516 sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x392988a5 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0x3929f42c wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0x393b6c48 flush_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x393f64b6 bmp085_detect +EXPORT_SYMBOL_GPL vmlinux 0x39480a70 crypto_register_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x3948fb95 __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x3954af29 blkcipher_walk_virt_block +EXPORT_SYMBOL_GPL vmlinux 0x397ef9ad crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x399d0876 ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0x39ae2763 device_attach +EXPORT_SYMBOL_GPL vmlinux 0x39b6ec49 ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0x39e1f4fe relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0x39e232c4 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0x39e2aa61 irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a4a268f __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x3a4c6000 of_irq_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a511c32 blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a9cfe4e dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0x3acdf325 twl4030_audio_enable_resource +EXPORT_SYMBOL_GPL vmlinux 0x3ad4061a sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x3ad82802 of_property_read_u32_index +EXPORT_SYMBOL_GPL vmlinux 0x3af82a49 elv_register +EXPORT_SYMBOL_GPL vmlinux 0x3b0a7f17 irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x3b36cf1a regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x3b3a0817 regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3b45b15c usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0x3b579b68 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x3b657d1e blkg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x3b96ed56 mmput +EXPORT_SYMBOL_GPL vmlinux 0x3b9c9190 devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x3ba61fb0 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x3bc0cc13 sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x3be2cacd tcp_is_cwnd_limited +EXPORT_SYMBOL_GPL vmlinux 0x3c229c32 wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0x3c31e8ad dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0x3c8d28cc of_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x3c901427 css_next_descendant_post +EXPORT_SYMBOL_GPL vmlinux 0x3c9390db pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0x3ccffec8 of_irq_parse_one +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cd065db dm_dispatch_request +EXPORT_SYMBOL_GPL vmlinux 0x3cd7448b regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0x3ce81887 fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x3d008473 sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0x3d2dbc98 __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d490d2e fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0x3d4c8d32 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0x3d5229c6 class_find_device +EXPORT_SYMBOL_GPL vmlinux 0x3d7db53d kobj_completion_init +EXPORT_SYMBOL_GPL vmlinux 0x3da8a143 ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x3db3dd30 scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0x3dc32d4e devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x3dc526a9 arizona_of_match +EXPORT_SYMBOL_GPL vmlinux 0x3dc916b6 crypto_fl_tab +EXPORT_SYMBOL_GPL vmlinux 0x3dd4d3a7 bprintf +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3dea702b anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3df59f19 alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0x3dfde3ac pmf_get_function +EXPORT_SYMBOL_GPL vmlinux 0x3e0996ee pci_enable_pri +EXPORT_SYMBOL_GPL vmlinux 0x3e0af5ac ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0x3e204d80 ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x3e2e543d cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x3e2fa31f wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3e4a754d power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x3e6fbb87 of_pci_find_msi_chip_by_node +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e884a31 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x3e971b8d regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3ebaea42 regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x3eeb7996 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x3efb35c9 get_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0x3f07bb9d percpu_ida_free_tags +EXPORT_SYMBOL_GPL vmlinux 0x3f10754e dma_buf_export_named +EXPORT_SYMBOL_GPL vmlinux 0x3f53da64 ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0x3f8db73c usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0x3fa4b1bb udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x3fa8707b srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x3fcf6a25 blk_add_request_payload +EXPORT_SYMBOL_GPL vmlinux 0x3fd11c8e __get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x3fe20fa0 spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x3fefdadc single_release_net +EXPORT_SYMBOL_GPL vmlinux 0x402b9857 get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0x40354fc5 cgroup_taskset_cur_css +EXPORT_SYMBOL_GPL vmlinux 0x403b00d3 fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x4045c494 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0x40598a90 pmac_i2c_get_adapter +EXPORT_SYMBOL_GPL vmlinux 0x405a0878 tcp_done +EXPORT_SYMBOL_GPL vmlinux 0x4065d168 pm_print_active_wakeup_sources +EXPORT_SYMBOL_GPL vmlinux 0x409242dc pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0x40af0dec ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x40c93c75 blkg_prfill_stat +EXPORT_SYMBOL_GPL vmlinux 0x40d46b21 crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x40e48e97 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x415b31ae ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x41616445 find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x41892fbf wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0x41c256c7 __netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x41f1ee55 rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x42020fd4 pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0x4205ad24 cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x4205f732 fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x422a714a pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0x425c1c0b ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x425e95ed usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x42a7eb3d platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x42b364ef scatterwalk_done +EXPORT_SYMBOL_GPL vmlinux 0x42f6028d ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x430e5257 of_alias_get_id +EXPORT_SYMBOL_GPL vmlinux 0x431c00b4 get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0x434e3985 inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x435a82f1 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x436c96cc tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x43701836 irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x43a53735 __alloc_workqueue_key +EXPORT_SYMBOL_GPL vmlinux 0x43eb24b1 regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x44404f11 kdb_register_repeat +EXPORT_SYMBOL_GPL vmlinux 0x445602f3 sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0x446789a3 pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x448e9665 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0x4492ff3e pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x44940658 pmf_unregister_irq_client +EXPORT_SYMBOL_GPL vmlinux 0x4495c8de inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x449fbc9b blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0x44b0bc6f bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x44e0c79e usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0x44eff47d percpu_ida_free +EXPORT_SYMBOL_GPL vmlinux 0x45070279 od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x451f2640 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0x45401c0a cgroup_unload_subsys +EXPORT_SYMBOL_GPL vmlinux 0x454c15ae __smp_call_function_single +EXPORT_SYMBOL_GPL vmlinux 0x454d7412 led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x455db442 tps65912_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x458742d4 sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0x458ca003 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0x458dfbc8 tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0x45bc5192 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x45bf1ff3 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x45d9ed00 devm_rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x46077fa8 arizona_of_get_type +EXPORT_SYMBOL_GPL vmlinux 0x460eee7d netlink_alloc_skb +EXPORT_SYMBOL_GPL vmlinux 0x460f7531 wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x462af0cc dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0x46552388 ata_eh_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x465f1270 ping_proc_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4672e88b __crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x4683082d tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0x4688c96a usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x46ae3bbe wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x46d6983f sock_update_netprioidx +EXPORT_SYMBOL_GPL vmlinux 0x46eaeca5 pmac_i2c_find_bus +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x473244b9 blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x473a3c41 aead_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x477a6ec6 cpufreq_frequency_get_table +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x478a5472 regmap_field_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47b21077 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x4807efab ata_do_eh +EXPORT_SYMBOL_GPL vmlinux 0x481b1236 netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x483648e6 gpio_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x4864db16 cpu_add_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0x487744bb regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x487a9b17 blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0x489e677d inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x48a65773 usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0x48ba9d88 aead_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0x48bcdceb hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x48ca8947 pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x4907cca9 platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0x49412d51 rtc_irq_register +EXPORT_SYMBOL_GPL vmlinux 0x4943a338 __init_new_context +EXPORT_SYMBOL_GPL vmlinux 0x4950b5dd devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x4962faa5 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0x4972b1b1 find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x4982a57f probe_kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x4985e12f cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x49881cee pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0x498d293a trace_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x49a21ef1 regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x49c136cd pmac_i2c_get_dev_addr +EXPORT_SYMBOL_GPL vmlinux 0x49c142d7 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0x49d6e689 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0x4a116447 pmac_backlight_mutex +EXPORT_SYMBOL_GPL vmlinux 0x4a1832d4 tcp_death_row +EXPORT_SYMBOL_GPL vmlinux 0x4a2547c2 threads_core_mask +EXPORT_SYMBOL_GPL vmlinux 0x4a339545 split_page +EXPORT_SYMBOL_GPL vmlinux 0x4a8248bb pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x4aabc332 regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x4aadeb9a ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0x4ad5ee6e bmp085_remove +EXPORT_SYMBOL_GPL vmlinux 0x4ada301b crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x4af14347 pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x4b084450 unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x4b17b645 of_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x4b24d402 regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x4b35cd0e locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0x4b3807ba mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x4b3cc2cd ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0x4b564ef8 platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0x4b6bef5e bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x4b6f547f queue_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x4b909854 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0x4ba8bcbd ata_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x4bc62a81 audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4bd7607f usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0x4bd9288c nfq_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x4be1bae9 ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0x4bf23632 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x4bf760df fat_attach +EXPORT_SYMBOL_GPL vmlinux 0x4c1f4ca9 bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4c2ad1a0 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x4c50c691 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0x4c602bf1 __blkg_release_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4c759827 byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x4cb0354b debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x4cb06dcb rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0x4cd1d220 device_store_int +EXPORT_SYMBOL_GPL vmlinux 0x4d172ccb ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x4d23e35b key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x4d330e5a regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0x4d468b1f tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0x4d612f55 rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0x4d8b2472 rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x4d8e4942 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0x4d90c450 ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x4dabd085 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4df148d2 cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x4df72425 sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0x4dfb1c15 pmac_i2c_get_bus_node +EXPORT_SYMBOL_GPL vmlinux 0x4e109192 ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0x4e242f5f pstore_cannot_block_path +EXPORT_SYMBOL_GPL vmlinux 0x4e3993df ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0x4e5da6eb ping_err +EXPORT_SYMBOL_GPL vmlinux 0x4e650db5 alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0x4e6bbade of_pci_msi_chip_add +EXPORT_SYMBOL_GPL vmlinux 0x4e6c2d66 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0x4e73ed10 ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0x4e755bdb trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0x4ea35740 task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x4eac04d4 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0x4eb8b605 thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x4ef33b59 task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f020dee public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x4f3f331c regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0x4f57609c sec_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x4f72173c alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0x4f81d161 device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x4f82603b ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x4f881b16 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0x4fb3fc98 pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0x4fbc8666 device_register +EXPORT_SYMBOL_GPL vmlinux 0x4fd4e89d ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4fe6515e regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4feb4e8a __scsi_get_command +EXPORT_SYMBOL_GPL vmlinux 0x4ff7d83f ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0x50134961 blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0x502c3282 trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x50586c5e sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0x50601122 of_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x506691f1 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x506cc085 tracepoint_iter_stop +EXPORT_SYMBOL_GPL vmlinux 0x5086ac3a alg_test +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x5094e03d usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x50acfb67 led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0x50af30f1 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x50c89f23 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x50cca9a1 uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0x50d74ca1 mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0x50e4d56b register_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x5125747b pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x515ad9aa dma_buf_kunmap +EXPORT_SYMBOL_GPL vmlinux 0x518305a6 tps65912_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x51846493 trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x519f4ed8 regmap_fields_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x51af023b sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x51b3c16e perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x51b65a26 rtc_lock +EXPORT_SYMBOL_GPL vmlinux 0x51c769cc tpm_register_hardware +EXPORT_SYMBOL_GPL vmlinux 0x52017e8d pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL vmlinux 0x52119f72 wakeup_source_drop +EXPORT_SYMBOL_GPL vmlinux 0x52212010 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x5245e2a5 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0x52658156 tpm_remove_hardware +EXPORT_SYMBOL_GPL vmlinux 0x52899a6d device_schedule_callback_owner +EXPORT_SYMBOL_GPL vmlinux 0x529cfe31 tpm_show_temp_deactivated +EXPORT_SYMBOL_GPL vmlinux 0x52af2be0 wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x52c0d5d8 scatterwalk_bytes_sglen +EXPORT_SYMBOL_GPL vmlinux 0x52d27462 edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x52d65bdd exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x52f213af extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0x5328655d sdhci_pci_o2_probe_slot +EXPORT_SYMBOL_GPL vmlinux 0x5335dd11 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x5358fc36 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x53593b60 devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x535b4de4 ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0x53614269 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x53bf8e85 perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0x53def254 cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0x53ef1493 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0x5417faa9 uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x543d7221 of_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x5460c8d8 fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x546c5565 ppc_tb_freq +EXPORT_SYMBOL_GPL vmlinux 0x54740eb7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x54817b20 of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0x5488bc57 input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0x54892487 i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54ba1c59 regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x54db2892 usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x54f05f81 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0x550ad53b con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0x552d5ea2 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0x5536ba6e bsg_request_fn +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5542ca5f pwm_free +EXPORT_SYMBOL_GPL vmlinux 0x556a5e08 raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x55f5d0b5 sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0x55f75216 uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0x5602fde3 lock_media_bay +EXPORT_SYMBOL_GPL vmlinux 0x561e4b77 irq_of_parse_and_map +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x56471b8d bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0x564f1dca klist_add_after +EXPORT_SYMBOL_GPL vmlinux 0x565b6892 uuid_le_gen +EXPORT_SYMBOL_GPL vmlinux 0x5679080a devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0x5692386f gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x569a78bc usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x56b63670 lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x56b6a2fe pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0x56ba916d ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x56d697ce cpu_up +EXPORT_SYMBOL_GPL vmlinux 0x56d6fcd6 bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x56e75d47 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x56f7f281 pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x57231f45 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0x573ef44b power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0x5745bd11 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x574b2f0e ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x5751e8a8 relay_flush +EXPORT_SYMBOL_GPL vmlinux 0x5752cdef sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0x577768af wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x57865986 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0x579c2528 rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57f85de6 md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x58081391 dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0x580e8356 cpu_remove_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0x58413099 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x58927f3a pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0x5892f832 release_pmc_hardware +EXPORT_SYMBOL_GPL vmlinux 0x589e4569 syscon_regmap_lookup_by_pdevname +EXPORT_SYMBOL_GPL vmlinux 0x58e2f51c _submit_bh +EXPORT_SYMBOL_GPL vmlinux 0x58fe12d2 ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0x58fe9409 rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0x5903bdc4 __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0x5947abbe max77693_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x597643f2 part_round_stats +EXPORT_SYMBOL_GPL vmlinux 0x597ef640 rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0x5986ca03 sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0x599fc656 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x59e2743e call_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0x59eae699 ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x59eccc22 tpm_write +EXPORT_SYMBOL_GPL vmlinux 0x59eed034 ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0x5a1665bd usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0x5a224605 xattr_getsecurity +EXPORT_SYMBOL_GPL vmlinux 0x5a70e3fa usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a7e2b9c subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x5a8f3b69 of_irq_parse_raw +EXPORT_SYMBOL_GPL vmlinux 0x5ac4387c get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x5afb47fc of_irq_to_resource_table +EXPORT_SYMBOL_GPL vmlinux 0x5b0d97e2 schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0x5b0dcd85 device_create_vargs +EXPORT_SYMBOL_GPL vmlinux 0x5b35b498 devres_find +EXPORT_SYMBOL_GPL vmlinux 0x5b41f0a6 sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x5b4261a9 scsi_internal_device_unblock +EXPORT_SYMBOL_GPL vmlinux 0x5b4e379c of_prop_next_u32 +EXPORT_SYMBOL_GPL vmlinux 0x5b5c0fa7 spi_unregister_master +EXPORT_SYMBOL_GPL vmlinux 0x5b7ebcec devm_usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x5b9f64b9 devres_add +EXPORT_SYMBOL_GPL vmlinux 0x5bb0f21d usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0x5bcaaa34 ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0x5be1ae0f ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0x5be3a75a gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x5be65229 tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x5bee6a6c pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x5c1f9e93 napi_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x5c263059 inhibit_secondary_onlining +EXPORT_SYMBOL_GPL vmlinux 0x5c306bc0 crypto_init_ahash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x5c321532 bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0x5c6ccfdf vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0x5c71634a ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x5c9f486c ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0x5cabdced dev_pm_qos_remove_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5cf42eae __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0x5d12e48f input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0x5d23eedc user_match +EXPORT_SYMBOL_GPL vmlinux 0x5d32f907 balloon_devinfo_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5d51bcf7 scatterwalk_start +EXPORT_SYMBOL_GPL vmlinux 0x5d8a8150 scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0x5dcfb2ef dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0x5ddf7bbb add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0x5e085682 platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0x5e0892ab pci_msi_off +EXPORT_SYMBOL_GPL vmlinux 0x5e12022b ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x5e28b798 tcp_peer_is_proven +EXPORT_SYMBOL_GPL vmlinux 0x5e3063c5 crypto_init_spawn +EXPORT_SYMBOL_GPL vmlinux 0x5e43f1fa regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x5e50fd0a blk_queue_flush +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e546a30 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x5e79c15a fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0x5e9606ac crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5f191fa8 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x5f248f72 set_timer_slack +EXPORT_SYMBOL_GPL vmlinux 0x5f2d639b tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x5f419491 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x5fa7f6aa inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0x5faead61 cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x5fd9f9bb unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0x601aa4da ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x60506751 unmap_kernel_range_noflush +EXPORT_SYMBOL_GPL vmlinux 0x60662cd2 crypto_blkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x607d655b regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x60814d62 ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x6094685f wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL_GPL vmlinux 0x60b44840 rtc_set_mmss +EXPORT_SYMBOL_GPL vmlinux 0x60bf8b49 napi_by_id +EXPORT_SYMBOL_GPL vmlinux 0x60defe55 ping_proc_register +EXPORT_SYMBOL_GPL vmlinux 0x6126cc82 simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0x6127f4eb percpu_ida_for_each_free +EXPORT_SYMBOL_GPL vmlinux 0x6144a425 rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0x61540e1e inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0x615664aa rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x615e39f7 blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0x618d6292 cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0x6196452a crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x61978d93 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0x61a47cb1 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x61a614f9 blk_queue_rq_timed_out +EXPORT_SYMBOL_GPL vmlinux 0x61a90c54 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0x61add595 usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x61b8b60f device_add +EXPORT_SYMBOL_GPL vmlinux 0x61d2106a mdio_mux_init +EXPORT_SYMBOL_GPL vmlinux 0x61e3f0c5 init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x61e477de usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0x61f4802c scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0x61fcfa46 tpm_dev_vendor_release +EXPORT_SYMBOL_GPL vmlinux 0x620ad734 pmf_put_function +EXPORT_SYMBOL_GPL vmlinux 0x6216bd73 percpu_ida_destroy +EXPORT_SYMBOL_GPL vmlinux 0x62209a82 regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x622dacba tick_nohz_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x6248e01a raw_seq_open +EXPORT_SYMBOL_GPL vmlinux 0x624a6406 hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x625d8535 usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0x62635533 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x6280ce4d rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x62b489ba css_next_child +EXPORT_SYMBOL_GPL vmlinux 0x62bdb35e bdi_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x62c18c04 device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x62db92cb usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0x62e18907 register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0x6318757f mdio_mux_uninit +EXPORT_SYMBOL_GPL vmlinux 0x63205de1 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x636c8dbc usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0x6390efda of_modalias_node +EXPORT_SYMBOL_GPL vmlinux 0x63a1304f kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x63c296e8 device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0x63d82d70 swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0x63fde7a5 tpm_store_cancel +EXPORT_SYMBOL_GPL vmlinux 0x64189aaf class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x64256424 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0x6453f77c pmac_has_backlight_type +EXPORT_SYMBOL_GPL vmlinux 0x64594574 inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x647c94c5 crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x6500d178 usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x650a4697 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0x6550fb64 spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65e15c93 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x65ea40ad __class_register +EXPORT_SYMBOL_GPL vmlinux 0x65f9bffa wakeup_source_prepare +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x662a0c3f x509_get_sig_params +EXPORT_SYMBOL_GPL vmlinux 0x66517c07 wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x6679dcc7 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0x667bd14c usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6695476d ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0x66a72b56 __inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0x66afb53b unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x66bb1c41 sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x66bd6561 skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x66c1029c pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x66f95c61 sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0x672cc3de ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x674e13e1 public_key_destroy +EXPORT_SYMBOL_GPL vmlinux 0x67643d26 pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x678450c2 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x679722d3 sysfs_get_dirent_ns +EXPORT_SYMBOL_GPL vmlinux 0x679c1962 device_rename +EXPORT_SYMBOL_GPL vmlinux 0x67b4dd31 dma_buf_kmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x67b89c2c srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x67d7f5e0 css_rightmost_descendant +EXPORT_SYMBOL_GPL vmlinux 0x67ef3fc7 crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0x680bc9ba unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0x6812cf8d __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0x6835e928 da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x683e2c94 inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0x68687156 lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0x687934e9 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x68956406 static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x69062125 regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x691622d3 blk_rq_check_limits +EXPORT_SYMBOL_GPL vmlinux 0x6919d8db arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x6920e722 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x6923ce63 irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x692901b4 user_update +EXPORT_SYMBOL_GPL vmlinux 0x69447467 ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0x6945291b tcp_fetch_timewait_stamp +EXPORT_SYMBOL_GPL vmlinux 0x6945725e mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0x69508012 usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0x697a420c timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x697c80bf zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x697cbbb4 threads_per_core +EXPORT_SYMBOL_GPL vmlinux 0x698a899f ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0x69cd7398 tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0x69e170e7 tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x69e9a2cb ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x69ef7aaa sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0x6a02084e clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x6a04c392 relay_close +EXPORT_SYMBOL_GPL vmlinux 0x6a15c9f7 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x6a4290b6 rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x6a5fb566 rcu_sched_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x6a801286 __class_create +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6ab116d1 anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x6ab2abfd pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0x6ac57f4a rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x6acc9096 sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0x6ad352f1 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0x6ae45022 pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x6afd33cf handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0x6afedb45 subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6b29a1fa ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0x6b322957 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x6b35333b dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x6b8e44ea pmf_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x6bbca52a regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6bbe2599 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0x6bf14bfa rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0x6bf4d9d3 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0x6c1b09ab gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x6c49c4f2 clockevents_notify +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c749afe __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6cd21997 ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x6cd4ea62 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0x6ce6001e platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0x6d0b78e9 register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x6d0d1a80 pci_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x6d24051d usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d31e93b tracepoint_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x6d3d1568 tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0x6d4abc88 da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x6d555cfc pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0x6d59799f ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0x6d65729b usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0x6d76e5ab extcon_find_cable_index +EXPORT_SYMBOL_GPL vmlinux 0x6d967857 spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0x6d9f4702 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x6dca89e6 irq_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0x6de4e517 cpufreq_frequency_table_cpuinfo +EXPORT_SYMBOL_GPL vmlinux 0x6def5139 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0x6df0c955 regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0x6df9796a usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0x6dff67f6 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x6e04a077 usb_bind_phy +EXPORT_SYMBOL_GPL vmlinux 0x6e28e738 device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x6e356ba8 cpu_add_dev_attr_group +EXPORT_SYMBOL_GPL vmlinux 0x6e5fb684 arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x6e633767 pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x6e80393f key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6ed0c2d9 usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x6f166867 ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0x6f1ee69e kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x6f2d9d3f usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0x6f916662 gpio_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x6fbaf46c stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x6fd0d927 security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x6fec44c7 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x70028580 usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0x70034dd6 irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x7039ad03 pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0x704abffa pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x707ff1bb ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x70a34c26 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0x70b5a87a disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x70bb651d __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x70beefd9 pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0x70cf032f usb_hcd_irq +EXPORT_SYMBOL_GPL vmlinux 0x70da6a13 relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x711fc29a pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0x713c2e58 crypto_alloc_ablkcipher +EXPORT_SYMBOL_GPL vmlinux 0x714dcc98 devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71818fe4 usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0x71930ed3 of_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x71dc9998 crypto_il_tab +EXPORT_SYMBOL_GPL vmlinux 0x72259e49 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0x723374f8 pci_bus_sem +EXPORT_SYMBOL_GPL vmlinux 0x72364a05 platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x724926f3 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x725cf476 sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x726689ad pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0x7267db00 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x72741f25 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x72797b71 dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0x729f56c0 tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0x72bcdf36 smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x72d4cd38 regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0x72f4285b simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x72fea274 inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x7328ff9e regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x734d8376 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0x734f6537 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0x73582ec5 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x7374aa6e i2c_new_device +EXPORT_SYMBOL_GPL vmlinux 0x737b6835 cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0x737d7dac sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0x739aa1a1 pmac_i2c_setmode +EXPORT_SYMBOL_GPL vmlinux 0x739b1dee arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73a5b842 __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x73b95ca1 regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x73baba3a sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x73c832f2 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x73d69364 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x73e7e2fc pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x73fc1c59 ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0x74085d3a ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0x7422c95e gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x743e58cc ata_base_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x7464ea38 dev_pm_qos_add_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x747a2a37 sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0x74954462 timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74d7e35d da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x7533df4c led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0x754579cc devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x754d3eb1 spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0x756362b3 bsg_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x7571efd2 __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0x758a782e blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x75a6e497 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x75afdcad __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x75c2b9f1 memalloc_socks +EXPORT_SYMBOL_GPL vmlinux 0x75c8a11c inet_twdr_twkill_work +EXPORT_SYMBOL_GPL vmlinux 0x75cbdd56 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x75d17d0b pmac_i2c_open +EXPORT_SYMBOL_GPL vmlinux 0x75ee80de pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0x75f2a044 usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0x75fe8c73 pwm_enable +EXPORT_SYMBOL_GPL vmlinux 0x760a192b ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0x76171e34 dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0x76187756 rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x7649805b __pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x767944d1 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x76a4fbb5 inet_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0x76bccf24 sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x76cb1583 crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x76d07d6e gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x76ebc963 hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x770cf981 tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x771a9f46 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0x77214cea sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x77414412 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x77e08e0b tpm_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x77e9a97e i2c_new_dummy +EXPORT_SYMBOL_GPL vmlinux 0x77f06b8e sec_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x77f7a5a4 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x78e6f641 extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x78e730e3 __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x790a8f7e transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x791c023c led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0x793c5ee2 bio_clone_mddev +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x796c2d48 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x7992827d blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x79a73ada sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x79b9cdff sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x79b9f504 fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0x79e6e11e usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0x7a774355 balloon_mapping_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7a944007 rcu_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x7ab3ca18 eventfd_ctx_read +EXPORT_SYMBOL_GPL vmlinux 0x7acbe6a2 sec_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x7ae1ae8e cpufreq_frequency_table_put_attr +EXPORT_SYMBOL_GPL vmlinux 0x7ae5b88d ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x7b0f1ab3 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7b0f2127 find_linux_pte_or_hugepte +EXPORT_SYMBOL_GPL vmlinux 0x7b1d544d edac_handler_set +EXPORT_SYMBOL_GPL vmlinux 0x7b7fa878 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x7bc3711f pwm_request +EXPORT_SYMBOL_GPL vmlinux 0x7bc7f2de stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0x7bd5875d unregister_jprobe +EXPORT_SYMBOL_GPL vmlinux 0x7bd95cb7 sysfs_put +EXPORT_SYMBOL_GPL vmlinux 0x7c0eefe9 ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0x7c346357 pkey_algo +EXPORT_SYMBOL_GPL vmlinux 0x7c6ac4b0 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x7c93bd83 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0x7ca19ead hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x7cc1b7fd max77693_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7cc7de1c x509_check_signature +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d0946ea crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x7d0f2b26 usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x7d2a17e4 dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x7d36e534 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7d397cc7 gpiod_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d66ecb1 __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x7d75a50e inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0x7d7c76b5 __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x7d87bb6a crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0x7da6d51b tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0x7dab26b6 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7dab4e4f __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0x7dd12fac register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x7dfb9c08 __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0x7e049ce1 md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x7e17ba7b klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x7e34331b usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0x7e47f5b2 sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7eb7b3f8 of_get_dma_window +EXPORT_SYMBOL_GPL vmlinux 0x7ec57e43 __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x7f008202 btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0x7f0ac6b3 rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x7f4bba2b rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x7f58bdc0 devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x7f63145d xfrm_inner_extract_output +EXPORT_SYMBOL_GPL vmlinux 0x7f7bc710 klist_next +EXPORT_SYMBOL_GPL vmlinux 0x7f8eb187 set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x7fb9d4b0 pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x7fc672f8 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x7fea112a mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x803de77e wm8400_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x808fa0f3 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0x809f6105 da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80f3268f __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x80f37ed8 irq_find_host +EXPORT_SYMBOL_GPL vmlinux 0x80f7b6a9 ping_seq_fops +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x8140842a gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x8149ea54 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0x816f931d ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8172231b tpm_show_active +EXPORT_SYMBOL_GPL vmlinux 0x81c82a38 ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0x81cb53ab wait_for_tpm_stat +EXPORT_SYMBOL_GPL vmlinux 0x81d308b5 rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x81e557b1 sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0x81f45c82 of_usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0x8224394f pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x8236f8c5 check_media_bay +EXPORT_SYMBOL_GPL vmlinux 0x82411767 bmp085_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x826237fb inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x8267039c pci_renumber_slot +EXPORT_SYMBOL_GPL vmlinux 0x82689700 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0x827344ae __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x829220a0 ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x82939ebd rcu_batches_completed_sched +EXPORT_SYMBOL_GPL vmlinux 0x82989bce pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x82c5f585 ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x82d12cf2 unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82e7395f __put_net +EXPORT_SYMBOL_GPL vmlinux 0x830b256b ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x831270e5 dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x833d74cd regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x8341113d regmap_update_bits_check_async +EXPORT_SYMBOL_GPL vmlinux 0x834616bb sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8347a126 usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0x8352cd31 rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x836d61d0 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x838b13e7 ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0x83a5ae2e __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0x83be431f crypto_alg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x83c6f74d securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x83da3822 platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x841da239 unregister_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x8420bccd cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0x8439410e regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x847a752c ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0x848d8ec2 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0x84945ea9 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x84a79c9d ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x84afb77b pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x84fb2f37 pmf_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x85050965 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x850f1713 rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x851cfd2e sdhci_pci_o2_probe +EXPORT_SYMBOL_GPL vmlinux 0x851e5333 regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0x852cded4 adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0x852e568d of_get_nand_ecc_mode +EXPORT_SYMBOL_GPL vmlinux 0x8533c707 ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0x856629e7 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x856de549 regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x856fd516 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x8574ca6c gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x8587981f fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0x8589d778 pci_configure_slot +EXPORT_SYMBOL_GPL vmlinux 0x85a6fa53 adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x85c10896 rcu_batches_completed_bh +EXPORT_SYMBOL_GPL vmlinux 0x85c7f674 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x85cf1695 kobj_completion_del_and_wait +EXPORT_SYMBOL_GPL vmlinux 0x85f97893 setup_irq +EXPORT_SYMBOL_GPL vmlinux 0x86251229 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x8643c62e sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0x866b9687 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x867cf92e unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0x868189e8 inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8682f480 lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0x8686b345 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x86930184 blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0x8694482c list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0x86953079 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x86aa91f8 bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0x86af2f2d balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x86b3a7be ata_eh_thaw_port +EXPORT_SYMBOL_GPL vmlinux 0x86bb85b2 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0x86bf4a15 da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x86eebb23 usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x87011759 usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0x87057ef0 ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0x8705999d perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x871bae11 __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0x873fbaea edac_atomic_assert_error +EXPORT_SYMBOL_GPL vmlinux 0x8753d80e gpiochip_add +EXPORT_SYMBOL_GPL vmlinux 0x877ad796 hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0x8780456f debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x87984b16 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x87a77506 rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x87a86b17 ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x87a9a3f2 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0x87bb4e32 of_usb_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x87d34379 stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0x87e24a75 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0x87e802a7 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x87ecd6cd spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x87f626c3 __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x87fdf56a debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x8804af3d usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x8809be7d ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0x880b68c0 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0x8810ad5e crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0x8827058d ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0x88568525 i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x8860872a adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0x886cfdb4 n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0x88766997 pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b5647c trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x88cd247b ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x88ce1efd ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0x88db8881 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x88dbc77e spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x89109596 inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x89146c31 rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x892aa399 ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0x892b70a7 pci_pri_status +EXPORT_SYMBOL_GPL vmlinux 0x8972d340 class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x898a9590 ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0x898ed2e0 pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x899698ed pwm_can_sleep +EXPORT_SYMBOL_GPL vmlinux 0x89abf9e7 __mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89e3b971 tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x89f054a0 blkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0x8a04b9fe tracepoint_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0x8a0d44b6 device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x8a1babcb blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x8a2b14ba wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x8a31d0f3 sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x8a35ecf7 pmac_backlight +EXPORT_SYMBOL_GPL vmlinux 0x8a4b25a5 wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x8a6a0969 disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x8a9474bf ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0x8ab02950 blk_queue_bio +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ae081d4 xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0x8ae152b5 of_get_nand_bus_width +EXPORT_SYMBOL_GPL vmlinux 0x8b21baad unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0x8b5c47d6 platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0x8b70e8ea __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0x8bcb331b seq_release_net +EXPORT_SYMBOL_GPL vmlinux 0x8bcd634d vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0x8bf065dc public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0x8bf52728 __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0x8c033e27 __init_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c0a1961 ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8c0fe1fa pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0x8c24b94d shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x8c2c4ad6 dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x8c77f706 wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0x8c8555f5 of_extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0x8c9e6c7f class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x8ce21c09 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x8ce50550 devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8cec8ffd dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x8d0a418f regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x8d3365c2 class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x8d4949bd usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x8d6a72d4 inet_csk_reqsk_queue_prune +EXPORT_SYMBOL_GPL vmlinux 0x8d6bedad blk_queue_flush_queueable +EXPORT_SYMBOL_GPL vmlinux 0x8d7c2854 dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0x8da17b42 scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x8dc2fca5 tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x8dfd5821 __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x8e4c0b0f fuse_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8e7ae578 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x8e94e726 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x8e9c7933 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x8e9df4e4 skcipher_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0x8ea7da1c da903x_write +EXPORT_SYMBOL_GPL vmlinux 0x8ef492a0 raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x8effebd3 pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x8f050b75 wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8f062757 input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0x8f270a14 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x8f2f76f4 usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x8f3d116f rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f727321 regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x8f8e53b9 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8f902a2c gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x8f9c39ad __rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8fa99f0b net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0x8fb81c40 cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0x8fc16c71 ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0x8fc89d1c tps65912_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x8fcef5e6 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0x8fd134a5 inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x8feeed3e shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x9006d2ed ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x90115ce8 irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x901ffc8b wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0x902092bd usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0x90448e27 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x904b0fce list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0x9062c322 ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x9069cc7b proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0x90705b7f syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x9077d5ea usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x9080ad0f pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x909fc9a8 sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0x90a1004a crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x90a3f7d5 irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0x90a52fab pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x90bd40d0 ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x90d54113 blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0x90ef5743 __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x91286982 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x91286e20 wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0x9138974e ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9180fe77 usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0x918ad429 ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x91a01144 isa_bridge_pcidev +EXPORT_SYMBOL_GPL vmlinux 0x91c14bd0 tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0x92368f7b sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x92452560 pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x926d3987 debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0x92811bf1 __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0x92b57248 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x92bd9233 da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92f586a2 of_get_named_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x930ed9b9 of_usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0x9316a0df platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0x9324094c crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0x93421c05 transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x9356e9ad __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x936b974b generic_access_phys +EXPORT_SYMBOL_GPL vmlinux 0x93958ccd scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x93a2cb47 reserve_pmc_hardware +EXPORT_SYMBOL_GPL vmlinux 0x93ed261f ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x94561b3d stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0x9474a6d1 ftrace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x94a68723 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x94abb745 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x9545a465 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0x9554ea8e pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x956c691e bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x957ec315 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0x9583eb35 __pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x95ac7e74 adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x95afc294 device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95bef579 ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x95f4606a find_module +EXPORT_SYMBOL_GPL vmlinux 0x9621849f ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x964ce83a sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x964ff06a ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9655b911 enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x965b5df1 rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0x965ec7f8 __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0x96e02e8d device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0x96e411fc regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0x971ec9e6 cred_to_ucred +EXPORT_SYMBOL_GPL vmlinux 0x9730c462 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x973f17fa __rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x974928fe usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x974fb55e clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0x9759aae1 ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x976082c9 rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0x979ec331 sec_reg_update +EXPORT_SYMBOL_GPL vmlinux 0x97a3ec56 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97ea5dca max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0x982cd486 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x983ed00d device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x984a000a of_get_regulator_init_data +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x98517692 tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0x98523c6a dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0x987692b0 dm_kill_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x98801496 tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0x989f6667 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0x98a79465 netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0x98b0761c crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0x98d18052 extcon_get_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x98e5ad1d regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0x98e652b3 ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x990ff788 shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x9912b57b uninhibit_secondary_onlining +EXPORT_SYMBOL_GPL vmlinux 0x991484c4 of_property_count_strings +EXPORT_SYMBOL_GPL vmlinux 0x99164dcf regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9924c496 __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x992d67a0 tcp_reno_min_cwnd +EXPORT_SYMBOL_GPL vmlinux 0x99323f0a bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0x99332d74 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x9937fbae each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x997a14f9 __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x99924212 sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x99d72019 __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x99ee81d1 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x99f1972a xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a301fa9 irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x9a49d937 __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x9a81a4e6 inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x9a89dbf7 lpddr2_jedec_min_tck +EXPORT_SYMBOL_GPL vmlinux 0x9a9baa02 irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0x9aa99735 power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0x9aad6540 klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9aca444b get_monotonic_boottime +EXPORT_SYMBOL_GPL vmlinux 0x9acc5876 crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9aecddf2 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0x9b33c5db device_reset +EXPORT_SYMBOL_GPL vmlinux 0x9b7ff2d5 rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0x9b90f28c __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0x9b92a7f9 usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0x9be421f2 alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9bf133e7 serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x9c208725 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0x9c2d0036 pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0x9c30aef7 ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x9c4e2d95 shash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0x9c5dde1e bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0x9c6f547d devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9c9546c7 perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9cc6ae56 usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x9ce89add regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x9cec2722 ping_close +EXPORT_SYMBOL_GPL vmlinux 0x9d138533 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x9d14a31a bus_register +EXPORT_SYMBOL_GPL vmlinux 0x9d425bd6 device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9d77f7e7 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x9d8331c0 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x9d833848 page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x9d834391 tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0x9de2a31a usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0x9def1467 save_stack_trace_tsk +EXPORT_SYMBOL_GPL vmlinux 0x9dfdf722 gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0x9e1d74d4 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x9e319dfe tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0x9e362768 elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9e46d3f0 driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9e4902d4 cpufreq_governor_dbs +EXPORT_SYMBOL_GPL vmlinux 0x9e6fe603 class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0x9e9433a0 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9e9ad0c2 blkio_subsys +EXPORT_SYMBOL_GPL vmlinux 0x9ebdea87 srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0x9ec6db23 i2c_new_probed_device +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9ee8dbe7 crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x9ef277b2 ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0x9ef84d3d shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x9f03370b input_class +EXPORT_SYMBOL_GPL vmlinux 0x9f0664bf dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0x9f3f98e1 of_get_nand_on_flash_bbt +EXPORT_SYMBOL_GPL vmlinux 0x9f4102c8 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0x9f555211 reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x9f710cc1 hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x9f859933 init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x9f89d112 ref_module +EXPORT_SYMBOL_GPL vmlinux 0x9f8cc9b4 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0x9fa38212 ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0x9fce4586 sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fdaad48 fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9fedb268 __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0x9ff66255 sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0xa008f368 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0xa0151cd3 rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0xa016af05 crypto_ahash_type +EXPORT_SYMBOL_GPL vmlinux 0xa02539e3 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0xa02a2ce6 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa03ff6a6 ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0xa04238cb regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0xa072c93c securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xa0742a53 rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0xa07a72f5 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xa0815737 rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xa097e26b regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0xa12d929d desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xa14606c3 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xa1497417 skcipher_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0xa1910d60 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xa1ab2354 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xa1b3615f scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xa1bd7822 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0xa1d674f9 regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0xa1d9edcd class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xa1dafed0 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xa1f400bf ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0xa2096119 blk_queue_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xa215bcc7 tpm_show_durations +EXPORT_SYMBOL_GPL vmlinux 0xa24def7e crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0xa26093b6 regulator_can_change_voltage +EXPORT_SYMBOL_GPL vmlinux 0xa26aa988 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa31058de irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0xa335d381 watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0xa345f69b extcon_set_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0xa357d56e ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xa37669ae rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a2d9af walk_system_ram_range +EXPORT_SYMBOL_GPL vmlinux 0xa3a9c14e input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3e61264 ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0xa3e7c113 ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0xa3e81a58 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0xa3f00576 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0xa3f178e6 regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0xa3fda731 devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0xa416010f cgroup_is_descendant +EXPORT_SYMBOL_GPL vmlinux 0xa4198a0a device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0xa4297f3e debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0xa452146d crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0xa463bf6e flush_altivec_to_thread +EXPORT_SYMBOL_GPL vmlinux 0xa46d72bb security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa4a76cb9 ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0xa4c47321 subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xa4cd75dc ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0xa4e491a5 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0xa4ea04ee of_property_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0xa5015441 serial8250_tx_dma +EXPORT_SYMBOL_GPL vmlinux 0xa50be6fa crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0xa5275843 dm_get_rq_mapinfo +EXPORT_SYMBOL_GPL vmlinux 0xa599c489 ahash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0xa5adff58 sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0xa5b00659 ppc_proc_freq +EXPORT_SYMBOL_GPL vmlinux 0xa5b18677 regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0xa5bf50db inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0xa5c7cfa3 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa5efe460 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xa5f9dacc sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0xa60c7b9c usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0xa61b1477 tracepoint_iter_start +EXPORT_SYMBOL_GPL vmlinux 0xa62142f3 usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0xa625110d kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0xa6255d80 usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa6483cd7 ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0xa676ca78 debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0xa68c8952 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0xa6a0a273 max77693_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xa6a587d4 fuse_request_send_background +EXPORT_SYMBOL_GPL vmlinux 0xa6af0d67 __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6cf2e07 led_classdev_register +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa71d518b led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0xa724257f init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0xa7354b2d devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa73d8f12 user_describe +EXPORT_SYMBOL_GPL vmlinux 0xa74a6071 debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0xa75312bc call_rcu_sched +EXPORT_SYMBOL_GPL vmlinux 0xa75811d0 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xa7973968 scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0xa7e051cf pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0xa7ea4b49 sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xa7f92105 add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0xa7fea82a device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xa823068b pmac_i2c_match_adapter +EXPORT_SYMBOL_GPL vmlinux 0xa831dae9 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xa833b6ae sk_unattached_filter_create +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa8656bfa cgroup_load_subsys +EXPORT_SYMBOL_GPL vmlinux 0xa8729851 sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0xa87cbeec blkcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0xa88a8577 rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0xa8ac4ad7 wm8400_block_read +EXPORT_SYMBOL_GPL vmlinux 0xa8bee72c __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xa8c17a76 of_reset_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xa8f5ce54 sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0xa92b19cc ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0xa9360d0e pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa959060d cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xa96e515a max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xa973a2d3 rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0xa9778586 regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xa9790478 kobj_completion_release +EXPORT_SYMBOL_GPL vmlinux 0xa980af16 RSA_public_key_algorithm +EXPORT_SYMBOL_GPL vmlinux 0xa9bba5d3 hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9fb74a2 of_device_is_stdout_path +EXPORT_SYMBOL_GPL vmlinux 0xaa04ce43 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0xaa238563 blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0xaa2a72bf __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0xaa416f62 flush_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0xaa431ca5 tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0xaa4d0ba2 kallsyms_on_each_symbol +EXPORT_SYMBOL_GPL vmlinux 0xaa68d283 devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xaa70163b pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xaa849e50 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaaaa0fde pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xaab7c007 device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0xaad344f7 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0xab4b1d46 dm_set_device_limits +EXPORT_SYMBOL_GPL vmlinux 0xab6babaf pm_qos_request +EXPORT_SYMBOL_GPL vmlinux 0xab87b8b4 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0xab8802aa mpic_subsys +EXPORT_SYMBOL_GPL vmlinux 0xac587fd5 perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0xac93b3dc unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xaca1712a blk_queue_dma_drain +EXPORT_SYMBOL_GPL vmlinux 0xace5c0fc usb_bus_list +EXPORT_SYMBOL_GPL vmlinux 0xace8c93d kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xad5a7dea regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0xad96d1de extcon_register_interest +EXPORT_SYMBOL_GPL vmlinux 0xada7d48e md_new_event +EXPORT_SYMBOL_GPL vmlinux 0xadc785ec kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0xadcd71d7 rtc_irq_unregister +EXPORT_SYMBOL_GPL vmlinux 0xadea5b82 md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0xadf6aa4d tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xae3f690b crypto_rng_type +EXPORT_SYMBOL_GPL vmlinux 0xae643a58 crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae7a4867 crypto_givcipher_type +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae7f4781 wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0xae92ed3b gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0xaea9c248 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0xaeb838d1 debugfs_remove_recursive +EXPORT_SYMBOL_GPL vmlinux 0xaecf8c9f pmf_do_irq +EXPORT_SYMBOL_GPL vmlinux 0xaee0205e device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0xaf2cb6d5 dbs_check_cpu +EXPORT_SYMBOL_GPL vmlinux 0xaf448da9 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0xaf84919e sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0xaf97df30 cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0xafb0eb08 d_materialise_unique +EXPORT_SYMBOL_GPL vmlinux 0xafc1754a irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0xb006dc0b perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0xb00901bc skcipher_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb00acad7 regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb03fe010 cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0xb04460a9 get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0xb0542567 pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0xb0661887 rtc_irq_set_freq +EXPORT_SYMBOL_GPL vmlinux 0xb07d6a97 usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0xb0860863 cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0xb0913148 btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0f0d42c driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0xb0ffdd92 spi_async +EXPORT_SYMBOL_GPL vmlinux 0xb10d55bc cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0xb11a8954 pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0xb1250f7e ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0xb140d14c ring_buffer_read +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb158feb5 wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xb170660f led_trigger_show +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb1acbcce rcu_barrier_sched +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1c0c1c2 async_schedule_domain +EXPORT_SYMBOL_GPL vmlinux 0xb1dd8ccd anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1e8d6d8 blk_unprep_request +EXPORT_SYMBOL_GPL vmlinux 0xb2114ca8 fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb2256567 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0xb238a230 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0xb24fcb1f tpm_show_caps +EXPORT_SYMBOL_GPL vmlinux 0xb2581e0e i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xb266242e platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0xb293c758 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0xb29e863b shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0xb2b74efd wm8350_device_exit +EXPORT_SYMBOL_GPL vmlinux 0xb2c5621c pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0xb2c8cfef fuse_request_send +EXPORT_SYMBOL_GPL vmlinux 0xb2df3fdc usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0xb2e1bd96 usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb3025492 devres_release +EXPORT_SYMBOL_GPL vmlinux 0xb31e373d evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0xb341c80a __clocksource_updatefreq_scale +EXPORT_SYMBOL_GPL vmlinux 0xb34fc224 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0xb35da168 crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0xb3910cb4 trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xb3a82101 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0xb3af6472 max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xb3c5e8f2 led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0xb3dc7362 class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xb3fdd65e invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0xb402ada4 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0xb41598a0 ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0xb41adfd0 cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0xb429db45 cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0xb43ce03c inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xb460d451 pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0xb49c2a80 netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0xb4ae8348 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4bb66ef da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4bee351 register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xb4d53d7d __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xb4d80f12 skb_segment +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4f55ff9 cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0xb4fa1b59 crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb53620d1 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0xb55577dd debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xb56c5424 mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0xb572c47d __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xb5748f8d dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xb58dcfa2 synchronize_sched_expedited +EXPORT_SYMBOL_GPL vmlinux 0xb596b4fa dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0xb5994b1e regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xb5a0e11e lpddr2_jedec_addressing_table +EXPORT_SYMBOL_GPL vmlinux 0xb5a974e1 ping_hash +EXPORT_SYMBOL_GPL vmlinux 0xb5aa10af atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb5c8edf4 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0xb5cb8145 hrtimer_get_res +EXPORT_SYMBOL_GPL vmlinux 0xb5e896fb tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0xb5f17edf perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb60b5707 of_i8042_aux_irq +EXPORT_SYMBOL_GPL vmlinux 0xb60ed541 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb67b2219 cm_suspend_again +EXPORT_SYMBOL_GPL vmlinux 0xb67c64fd __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0xb67e2d80 mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0xb67e9193 ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0xb6903e35 subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0xb6aeb661 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xb6b79a6f wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xb6c635af wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb6e64b85 generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0xb6fd2b76 usb_bus_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xb713be0e debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0xb7879dd9 key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xb79fb656 register_jprobe +EXPORT_SYMBOL_GPL vmlinux 0xb7dd8555 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xb7e79eed device_show_int +EXPORT_SYMBOL_GPL vmlinux 0xb80295bc usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0xb809b9ee md_ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xb8176aeb tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0xb821393d spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0xb83ccb78 regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0xb852a487 subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0xb85c0601 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xb85d7368 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xb886b2ee regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0xb896ac11 da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xb8b2c01d fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0xb8c2e90a scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0xb8c993ba driver_find +EXPORT_SYMBOL_GPL vmlinux 0xb8cc622b regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0xb8ebddfc ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0xb8ef4ec8 kick_process +EXPORT_SYMBOL_GPL vmlinux 0xb8fbb004 rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0xb8fecc81 of_irq_parse_pci +EXPORT_SYMBOL_GPL vmlinux 0xb90a4749 sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0xb91115f3 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0xb9176155 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0xb9744550 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0xb9a2e077 usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9da2997 snmp_fold_field64 +EXPORT_SYMBOL_GPL vmlinux 0xb9f558b6 transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0xba14f1f8 usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xba158769 rtas_cancel_event_scan +EXPORT_SYMBOL_GPL vmlinux 0xba597cb3 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0xba5af635 sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xba5bb846 wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0xba78d262 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0xba817e73 usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0xba8ecae7 skb_gso_transport_seglen +EXPORT_SYMBOL_GPL vmlinux 0xba993279 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xba9b76b7 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xbae031d0 __pci_complete_power_transition +EXPORT_SYMBOL_GPL vmlinux 0xbb038ce4 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb1986ee pmf_register_irq_client +EXPORT_SYMBOL_GPL vmlinux 0xbb3b4fee rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0xbb885753 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0xbbb00780 inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0xbbfefeda pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xbc353cf7 ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0xbca3fcc1 ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xbca52ae8 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xbca96550 pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0xbcac6160 pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbcb2faf0 sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xbcdb1997 ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0xbd134743 inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0xbd2b0a5d fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0xbd5cb8b9 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0xbd6a0409 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0xbd92a351 fuse_conn_kill +EXPORT_SYMBOL_GPL vmlinux 0xbda41c7d rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xbdbcfe0d tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0xbdd295f0 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xbdd2f42a rcu_bh_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0xbde0691a pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0xbe13e5a5 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0xbe1887e4 ata_unpack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xbe1e8da4 pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0xbe2712bc percpu_ida_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbe43987a tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xbe6f4f99 regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xbe8b0551 usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbec34d9c crypto_larval_lookup +EXPORT_SYMBOL_GPL vmlinux 0xbeea25de wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf1cc04b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0xbf23dca5 irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0xbf3c2c76 pwm_set_polarity +EXPORT_SYMBOL_GPL vmlinux 0xbfe3c6bf replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0xbff6ecb5 xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0xc00131cf visitor64 +EXPORT_SYMBOL_GPL vmlinux 0xc016174f pci_reset_bridge_secondary_bus +EXPORT_SYMBOL_GPL vmlinux 0xc01af839 __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0xc02bec3c usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xc02ec37c scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0xc061367e mpic_msgr_get +EXPORT_SYMBOL_GPL vmlinux 0xc065a455 cpu_core_index_of_thread +EXPORT_SYMBOL_GPL vmlinux 0xc07f80d6 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0xc08647ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc0bf6ead timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xc0d01bc0 percpu_ref_cancel_init +EXPORT_SYMBOL_GPL vmlinux 0xc0d26387 kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc0e3a28a spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0xc0e75cec visitor128 +EXPORT_SYMBOL_GPL vmlinux 0xc0e8a218 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0xc0fb62f3 palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0xc102b274 bmp085_probe +EXPORT_SYMBOL_GPL vmlinux 0xc11b45c6 gpiod_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xc11bd00f tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc1333ac6 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0xc1369514 pmac_low_i2c_unlock +EXPORT_SYMBOL_GPL vmlinux 0xc13a3b88 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0xc16c44b6 ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc1754df6 pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0xc181ca2f default_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0xc18578ed process_srcu +EXPORT_SYMBOL_GPL vmlinux 0xc1c7757d dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0xc1ca914b call_srcu +EXPORT_SYMBOL_GPL vmlinux 0xc1dfa0c8 vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0xc1f33a5e pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xc1f93ddf fat_detach +EXPORT_SYMBOL_GPL vmlinux 0xc20c7303 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc255dfcb pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0xc25e6d3b pci_pri_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc294a9bb fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0xc2b0549a ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xc2c25342 usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xc2d4f708 wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xc30b3a36 scatterwalk_map +EXPORT_SYMBOL_GPL vmlinux 0xc32c80dc user_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc34efe27 snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0xc35dc12e da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0xc37226a5 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xc388227e regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xc38efb4d proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0xc397a60d __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xc39b3718 pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xc3a276a7 i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0xc400a4cb uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc454fc7b twl_get_type +EXPORT_SYMBOL_GPL vmlinux 0xc46c95eb devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xc46d877e schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0xc4718805 ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0xc471c67a twl4030_audio_disable_resource +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc49879f9 rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xc4d72584 agp_remove_bridge +EXPORT_SYMBOL_GPL vmlinux 0xc4f9bdea kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xc5244fb8 dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0xc524e7ff ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0xc54a079f posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0xc5637532 regmap_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc57e822b cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0xc5b8bf59 sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xc5d089e8 get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0xc5d37180 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0xc606cd3c boot_cpuid +EXPORT_SYMBOL_GPL vmlinux 0xc6098786 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0xc60f75ec __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xc616c390 usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc63a1109 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc65686ae swiotlb_tbl_sync_single +EXPORT_SYMBOL_GPL vmlinux 0xc65d3eed ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc66c376e tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0xc68aa090 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xc68aa252 __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xc690866c irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xc69389d8 clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc6a9de1a regmap_write +EXPORT_SYMBOL_GPL vmlinux 0xc6f0fa9d irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xc7172be9 debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0xc72e1233 __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xc77662d5 cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0xc776f823 pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0xc79cf487 raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7a85409 tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0xc7c6391c mpi_set_buffer +EXPORT_SYMBOL_GPL vmlinux 0xc7da17be timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0xc7e39bca ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc7e8e3dd bio_trim +EXPORT_SYMBOL_GPL vmlinux 0xc80a025f fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0xc83dc2f4 __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0xc8755a1c sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc88f8398 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc895fff5 tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0xc89aa382 tty_prepare_flip_string_flags +EXPORT_SYMBOL_GPL vmlinux 0xc8a13fb5 rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0xc8add232 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0xc8bbecea rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc8e84929 cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc920ed56 __fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0xc92b581d crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0xc9332107 usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0xc93e5563 swiotlb_tbl_unmap_single +EXPORT_SYMBOL_GPL vmlinux 0xc94daaf4 of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0xc94ed5ff rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc974647e serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0xc97d1140 cpufreq_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0xc97e9bff register_jprobes +EXPORT_SYMBOL_GPL vmlinux 0xc98fc745 fuse_put_request +EXPORT_SYMBOL_GPL vmlinux 0xc9b28c41 sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0xc9ba89c3 ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0xc9cfa97f of_pci_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xc9f589f7 sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0xc9f5ae85 sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0xc9fa85c1 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0xca150d42 unregister_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0xca326629 crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0xca3deea3 devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0xca45e4db device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca85d8cf tracepoint_probe_update_all +EXPORT_SYMBOL_GPL vmlinux 0xcaa0d5af thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcabd7557 inet6_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcac06ba3 get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0xcad4ad08 pmf_do_functions +EXPORT_SYMBOL_GPL vmlinux 0xcb11a899 relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb469d2b ddebug_add_module +EXPORT_SYMBOL_GPL vmlinux 0xcb4b82ee irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0xcb7bb30b regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0xcb9b6cf3 usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0xcb9c9ae0 pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xcba46c7b usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xcbee20b2 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0xcc1f1c3d inet_twdr_hangman +EXPORT_SYMBOL_GPL vmlinux 0xcc85fcb6 async_schedule +EXPORT_SYMBOL_GPL vmlinux 0xcc8c4990 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xccc2f80a extcon_unregister_interest +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccd07af9 crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0xcd14f89e regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0xcd1a817b cgroup_taskset_next +EXPORT_SYMBOL_GPL vmlinux 0xcd2e80f2 xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0xcd31ccfd __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0xcd403150 regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0xcd8ff623 crypto_unregister_pcomp +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcdaa8f96 crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xcdb01877 ktime_add_ns +EXPORT_SYMBOL_GPL vmlinux 0xcdc8238f power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcde9e898 crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0xcdfb50f3 blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0xce0b9b59 max77693_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xce0bbfaa rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0xce1ba5c0 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xce27e36c cpufreq_frequency_table_target +EXPORT_SYMBOL_GPL vmlinux 0xce2e4751 mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0xce46e140 ktime_get_ts +EXPORT_SYMBOL_GPL vmlinux 0xce639716 __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0xce6a9d9a trace_current_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce75b298 pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0xce7d85d4 ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0xceac81a3 ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0xcecb35c9 crypto_init_shash_spawn +EXPORT_SYMBOL_GPL vmlinux 0xced9224b sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcf1961de mmc_send_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0xcf4b924e spi_master_resume +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcfc68341 synchronize_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0xcfcd8698 regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0xcfd9a317 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0xcfe9e8f6 get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0xcfeb7adb usb_string +EXPORT_SYMBOL_GPL vmlinux 0xd03b07ae reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xd03c7700 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0xd0473be8 macio_find +EXPORT_SYMBOL_GPL vmlinux 0xd0502347 posix_timers_register_clock +EXPORT_SYMBOL_GPL vmlinux 0xd057f1ea ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd074622c transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0xd082b8ae led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0xd096cfe8 usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0xd0af4f30 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0cc18e5 debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0xd0e7531c pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0xd1191470 fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0xd14bc4d9 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xd16712f3 crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xd1822f0b cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xd1863d20 device_del +EXPORT_SYMBOL_GPL vmlinux 0xd18faa67 pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0xd19ac235 pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0xd1b2db37 tracepoint_probe_register_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xd1be3ea9 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0xd1c1b773 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0xd1c4083d i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xd1d64e46 rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd2345e7f md_stop +EXPORT_SYMBOL_GPL vmlinux 0xd235c24c lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0xd246bcf8 xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0xd25bd1b7 mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0xd265fc6a list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd2866bf2 nf_register_afinfo +EXPORT_SYMBOL_GPL vmlinux 0xd2a0b63c ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0xd2aaeb4e kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0xd2c45ea4 of_pci_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0xd2f0fb93 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0xd30e00d3 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0xd3197e69 devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0xd322b6db netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0xd3265fa6 rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0xd32fe193 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xd3454a75 pmf_find_function +EXPORT_SYMBOL_GPL vmlinux 0xd3545a6e max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xd3559fb6 blk_queue_bypass_start +EXPORT_SYMBOL_GPL vmlinux 0xd3585673 regmap_update_bits_async +EXPORT_SYMBOL_GPL vmlinux 0xd373a29e devres_get +EXPORT_SYMBOL_GPL vmlinux 0xd3883e11 ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xd3cb8ca4 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0xd3d72f35 of_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0xd3e2504d __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd40d1484 xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd489c743 usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0xd495ecd6 rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xd4ac6d78 scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xd4af3f19 unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0xd4bfdbe9 led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4cf6b99 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xd4eb7835 bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0xd50c3782 __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd513ddbf timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0xd5800fa3 fuse_get_req +EXPORT_SYMBOL_GPL vmlinux 0xd582227a leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xd5851295 thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0xd590720e bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xd5b5b61b blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0xd5bd7dac ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0xd5c7e18b sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xd5def764 tpm_show_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd5ec3da7 ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xd5ff9564 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0xd615dba5 rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0xd63d9ef0 led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0xd6433455 power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0xd65b4f25 do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xd6651760 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd6c2e04b __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0xd6dd0922 dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0xd6e347fd digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0xd6f1145e crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0xd6feefa5 agp_num_entries +EXPORT_SYMBOL_GPL vmlinux 0xd71beeec regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xd72905da ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0xd76352f3 regmap_read +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd76d1b38 inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0xd77a86e7 device_create +EXPORT_SYMBOL_GPL vmlinux 0xd77b2fa4 wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd77c0bc8 klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xd79c825c usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0xd79eabc9 ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0xd7a92bda evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0xd7d79132 put_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0xd7e359d4 fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0xd7f87d23 extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xd80e8e09 pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0xd81de62c ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xd820c283 eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xd836071c devres_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd8385d39 dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0xd83da6a7 dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0xd8525ea7 fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0xd87601cc ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0xd87d684e dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd8bb9cc7 ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xd8ee46c5 regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xd8f15365 of_irq_parse_and_map_pci +EXPORT_SYMBOL_GPL vmlinux 0xd911e368 ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0xd93f1211 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0xd942d353 ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0xd944d8f9 ktime_get_boottime +EXPORT_SYMBOL_GPL vmlinux 0xd9598cd7 sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0xd9842d81 lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xd98b1284 pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0xd9b44785 verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xd9cd9639 dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0xd9e3911d rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd9ecb670 ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xd9fce6ee adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xda0a4d22 mpic_msgr_enable +EXPORT_SYMBOL_GPL vmlinux 0xda0b9876 rtc_irq_set_state +EXPORT_SYMBOL_GPL vmlinux 0xda0eb854 of_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xda202968 watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xda44cb37 setup_charger_manager +EXPORT_SYMBOL_GPL vmlinux 0xda4bd899 md_run +EXPORT_SYMBOL_GPL vmlinux 0xda550544 usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xda7ec8c5 crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0xda981607 ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xdaaf8224 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0xdab32e39 skb_gro_receive +EXPORT_SYMBOL_GPL vmlinux 0xdac11bae of_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xdae77243 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdb04cacc tracepoint_probe_unregister_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xdb1f4191 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0xdb27477d inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0xdb3af96f ata_eh_qc_retry +EXPORT_SYMBOL_GPL vmlinux 0xdb41c506 dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0xdb4a648a ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0xdb4c345a ata_scsi_simulate +EXPORT_SYMBOL_GPL vmlinux 0xdb6dd0b3 devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xdb7b39ee serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xdb89f802 sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdb97d278 rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xdba4ad93 static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0xdba80fc1 of_fdt_unflatten_tree +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc09fd90 regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xdc1e15f1 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xdc2065ec gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0xdc461430 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdcd727ee adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xdd2efc0f ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd671489 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0xdd729424 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0xdd89d6ba single_open_net +EXPORT_SYMBOL_GPL vmlinux 0xddd58dc0 ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0xddda5bbc crypto_attr_alg2 +EXPORT_SYMBOL_GPL vmlinux 0xddec0625 pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xddfdb0c6 srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0xde2c8c91 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0xde44b5c2 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xde58f31c ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0xdea62d2a tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0xdeabd048 sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0xdef3f9a7 platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf18a720 security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0xdf38e5bb fb_ddc_read +EXPORT_SYMBOL_GPL vmlinux 0xdf59a3f0 fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0xdfda75a5 arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0xdfe637b1 cpufreq_table_validate_and_show +EXPORT_SYMBOL_GPL vmlinux 0xdff204c2 sk_unattached_filter_destroy +EXPORT_SYMBOL_GPL vmlinux 0xdff77e6a disk_get_part +EXPORT_SYMBOL_GPL vmlinux 0xe007de41 kallsyms_lookup_name +EXPORT_SYMBOL_GPL vmlinux 0xe02eb6d0 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0xe032e805 crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0xe036b3e9 mpic_msgr_put +EXPORT_SYMBOL_GPL vmlinux 0xe060874c crypto_alloc_pcomp +EXPORT_SYMBOL_GPL vmlinux 0xe07ca631 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0xe08115fc blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe089cfcc agp_memory_reserved +EXPORT_SYMBOL_GPL vmlinux 0xe0a345f7 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0xe0c81b18 tpm_show_pubek +EXPORT_SYMBOL_GPL vmlinux 0xe0c82cd8 pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0xe0fbea3c rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xe118a89c ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0xe11a1fdd power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0xe12a209e dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xe12ebfc5 pci_intx_mask_supported +EXPORT_SYMBOL_GPL vmlinux 0xe1328408 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0xe165903d fat_scan +EXPORT_SYMBOL_GPL vmlinux 0xe16591ab stop_machine +EXPORT_SYMBOL_GPL vmlinux 0xe16d4600 gov_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe17e79e0 tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0xe18b7c2c cpu_remove_dev_attr_group +EXPORT_SYMBOL_GPL vmlinux 0xe198c95e cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1c932ad pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0xe1ce36a4 rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xe1de532a regmap_fields_write +EXPORT_SYMBOL_GPL vmlinux 0xe1ffc921 arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0xe22d2e04 pci_sriov_migration +EXPORT_SYMBOL_GPL vmlinux 0xe22e5d3c thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe254c35b usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xe27274a5 tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0xe2b8363a vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe30fac88 ktime_get_monotonic_offset +EXPORT_SYMBOL_GPL vmlinux 0xe3149a27 sysfs_schedule_callback +EXPORT_SYMBOL_GPL vmlinux 0xe316b343 gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0xe3230b2d pmac_i2c_adapter_to_bus +EXPORT_SYMBOL_GPL vmlinux 0xe32a0f91 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0xe3352c95 bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xe36c3ef3 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe382c2ca irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xe384a102 usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0xe39a02c7 exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0xe4040e7a dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0xe4127276 scsi_internal_device_block +EXPORT_SYMBOL_GPL vmlinux 0xe413d9db sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe431d89b crypto_init_spawn2 +EXPORT_SYMBOL_GPL vmlinux 0xe4933e85 usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xe4a8fb7f sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0xe4c031f8 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xe4c4b28f gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xe4e04297 ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0xe5147670 regmap_field_write +EXPORT_SYMBOL_GPL vmlinux 0xe5182902 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0xe520154b crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0xe5524eab of_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0xe55951fd init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0xe562ff9c xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58fb452 aer_irq +EXPORT_SYMBOL_GPL vmlinux 0xe595c23f ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0xe5cb7f20 sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0xe5d09e87 usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xe5e495fd usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0xe602ad94 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0xe6117688 srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xe6215d17 da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0xe646f19e console_drivers +EXPORT_SYMBOL_GPL vmlinux 0xe651f76e selinux_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe65faced crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xe671f33c pmac_i2c_get_channel +EXPORT_SYMBOL_GPL vmlinux 0xe6b5771a __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xe6c68334 ddebug_remove_module +EXPORT_SYMBOL_GPL vmlinux 0xe6e1c5fe uuid_be_gen +EXPORT_SYMBOL_GPL vmlinux 0xe70a7ecc disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe7145917 usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0xe72f9384 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0xe7302027 rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xe7544250 rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0xe759fcfc sec_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe76a3720 usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0xe77801b8 pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0xe78b6120 sdhci_pci_o2_fujin2_pci_init +EXPORT_SYMBOL_GPL vmlinux 0xe7e1d44c max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0xe7f395b6 ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0xe7ff7b8c class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe82b4b07 cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0xe8400441 of_property_read_string_index +EXPORT_SYMBOL_GPL vmlinux 0xe84a5fdf usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0xe85aed6b ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0xe85c55e7 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe8799eeb pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0xe8fcf0f1 tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xe9374fe8 usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe9410f4c sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0xe98b408f clockevents_unbind +EXPORT_SYMBOL_GPL vmlinux 0xe99e6c28 ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0xe9a67ad3 power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0xe9e8ae72 seq_open_net +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea23a502 pci_cleanup_aer_uncorrect_error_status +EXPORT_SYMBOL_GPL vmlinux 0xea418e0f atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0xea52f287 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0xea5786a8 relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0xea5ed719 file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0xea689f9e fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0xea783cb9 aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0xeac79834 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xeb1c3628 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xeb30b2fe cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0xeb4f906e cgroup_taskset_first +EXPORT_SYMBOL_GPL vmlinux 0xeb8ae736 klist_init +EXPORT_SYMBOL_GPL vmlinux 0xeb98215e cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xeb9abbee ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xeba202d9 cpufreq_notify_transition +EXPORT_SYMBOL_GPL vmlinux 0xebaf91b0 device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xebb34252 arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0xebe738b0 tpm_open +EXPORT_SYMBOL_GPL vmlinux 0xebec57c4 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xebf3af35 use_mm +EXPORT_SYMBOL_GPL vmlinux 0xec0f5ca7 nf_queue_entry_release_refs +EXPORT_SYMBOL_GPL vmlinux 0xec1419d6 tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0xec1b043e regulator_suspend_prepare +EXPORT_SYMBOL_GPL vmlinux 0xec25f967 klist_del +EXPORT_SYMBOL_GPL vmlinux 0xec5e9cd5 ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0xecc87217 ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0xeccf9426 crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0xecdfd26f powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0xece21aab regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xed007c88 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0xed539c83 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xed5df80b pwm_disable +EXPORT_SYMBOL_GPL vmlinux 0xed9ea69a arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0xedc2994d ktime_get_real +EXPORT_SYMBOL_GPL vmlinux 0xedd49930 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xedfa514f register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0xee1e2bca __blk_put_request +EXPORT_SYMBOL_GPL vmlinux 0xee596956 crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee77998c sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0xee9a5a26 rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xeeab784c dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xeead2e1a sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0xeeba35b4 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0xeebca936 nf_unregister_afinfo +EXPORT_SYMBOL_GPL vmlinux 0xeec28e82 regulator_set_optimum_mode +EXPORT_SYMBOL_GPL vmlinux 0xeed158d3 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0xeeffcedb __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0xef0101b6 regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xef2a7296 wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xef409b74 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0xef422dca alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xef5d6ed4 tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef6d4ba4 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0xef829675 iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0xefbaab9e regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xeff4adfe class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xf00fb772 pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xf026e57a udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf06b4421 driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xf07335a0 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0xf084b034 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0xf0afe142 usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0xf0ed62d9 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xf1495612 attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0xf158f170 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0xf1639b6e nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf1a62b6f of_i8042_kbd_irq +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1cb01f2 serial8250_rx_dma +EXPORT_SYMBOL_GPL vmlinux 0xf1cd768e ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0xf1edf58b da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xf1ef7444 class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf2678b74 user_instantiate +EXPORT_SYMBOL_GPL vmlinux 0xf27977e2 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0xf29acf21 debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0xf29c403e blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0xf2f077cc pkey_id_type_name +EXPORT_SYMBOL_GPL vmlinux 0xf2fca922 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0xf30c1e3f ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0xf30fda27 lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf33ff4e9 usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0xf37ee774 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xf39b9f2a device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3c349aa __ablkcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0xf3ebc449 regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xf3f48237 ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xf41c613e wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xf447f605 raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0xf48e9838 inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xf494f618 mmc_regulator_get_ocrmask +EXPORT_SYMBOL_GPL vmlinux 0xf4954775 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xf499fdb2 rcu_barrier_bh +EXPORT_SYMBOL_GPL vmlinux 0xf4fc2d6c __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf5375569 swiotlb_tbl_map_single +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf5718c76 get_device +EXPORT_SYMBOL_GPL vmlinux 0xf57249bf __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0xf57cd7bc cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf59599df extcon_update_state +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5b8e7df rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0xf5bc7491 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf5bcf1b2 __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0xf5d648d1 dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xf5de5645 inet6_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0xf5e53610 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xf5fb0cd4 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xf5fbe1d8 pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0xf5fef4e3 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf66dc65c usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0xf69b6301 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0xf6a61185 pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0xf6a92cfb dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf6b42ebe ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0xf6cc09f0 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0xf6e0afab ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf7015bce get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0xf71ee1e6 regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xf728370d fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0xf738c1e0 tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xf76e321f usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0xf7c49324 of_pci_parse_bus_range +EXPORT_SYMBOL_GPL vmlinux 0xf7cd27ed dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0xf7d43e08 da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0xf7d65597 sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0xf7e3ae19 sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0xf7f085f8 regmap_init +EXPORT_SYMBOL_GPL vmlinux 0xf8039882 ata_sas_port_async_suspend +EXPORT_SYMBOL_GPL vmlinux 0xf80deb11 shash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0xf813def2 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xf816c866 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xf82f16b3 execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf834bccd usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0xf8409386 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xf846506f irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf87ce634 __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0xf8802492 print_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xf89309e8 inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xf8e71d95 irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3d0b kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0xf92ce956 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf9329156 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0xf95121db pci_pri_stopped +EXPORT_SYMBOL_GPL vmlinux 0xf95fada7 devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0xf9748370 __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xf988652d rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9a361a0 regmap_update_bits_check +EXPORT_SYMBOL_GPL vmlinux 0xf9ca3160 ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xf9f9f875 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0xfa012fe7 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa218950 usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0xfa5ab195 sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0xfa5d008c hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0xfa8fb8dc rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0xfab60503 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0xfab97ca4 pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0xfac84b82 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0xfacf7828 aead_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0xfad80884 crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0xfb0f50eb map_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xfb2b0d7f __percpu_ida_init +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb525dfc pmac_i2c_get_type +EXPORT_SYMBOL_GPL vmlinux 0xfb52b77d __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0xfb625a21 sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0xfb6ecae9 regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfba70693 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfbb25e4c usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0xfbb32952 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0xfbb457a0 pmf_call_one +EXPORT_SYMBOL_GPL vmlinux 0xfbbedefd of_prop_next_string +EXPORT_SYMBOL_GPL vmlinux 0xfbd1a257 thermal_generate_netlink_event +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc29e70a hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0xfc39feb3 dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xfc5cf2b9 get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0xfc98388b pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0xfc9ae03f rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xfc9b4dd7 sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0xfcb302e3 platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0xfcd7bc0b ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0xfcffb4e1 pmac_i2c_get_flags +EXPORT_SYMBOL_GPL vmlinux 0xfd4ae649 device_move +EXPORT_SYMBOL_GPL vmlinux 0xfd5220cc tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0xfd8cbaa5 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0xfd9f3e9c ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0xfda3b592 devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0xfdab678a usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xfde58271 rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xfe3428b1 mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xfe676c5d blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0xfe6e10ff tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0xfe6e49ce devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xfe8ea89a simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0xfe93ffc6 usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xfe94198d skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0xfe96ce8a pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfe9efd5b tpm_gen_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfeda4e1c look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0xfedf0b8f xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0xfee661a0 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0xfee94eb1 fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0xfef8a166 trace_current_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xff16a199 devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xff408cf5 uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xffadf921 spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xffbc24a9 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0xffe51829 blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xffeca2c3 regmap_check_range_table --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/powerpc/powerpc-smp.compiler +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/powerpc/powerpc-smp.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 4.8.2-19ubuntu1) 4.8.2 --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/powerpc/powerpc-smp.modules +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/powerpc/powerpc-smp.modules @@ -0,0 +1,3658 @@ +3c574_cs +3c589_cs +3c59x +3w-9xxx +3w-sas +3w-xxxx +6lowpan +6pack +8021q +8139cp +8139too +8250_dw +8250_pci +8255 +8255_pci +8390 +88pm800 +88pm805 +88pm80x +88pm80x_onkey +88pm860x_battery +88pm860x_bl +88pm860x_charger +88pm860x_onkey +88pm860x-ts +9p +9pnet +9pnet_rdma +9pnet_virtio +a100u2w +a3d +a8293 +aacraid +aat2870_bl +aat2870-regulator +ab3100 +ab3100-otp +ac97_bus +acard-ahci +acecad +acenic +act200l-sir +act_csum +act_gact +act_ipt +actisys-sir +act_mirred +act_nat +act_pedit +act_police +act_simple +act_skbedit +ad2s1200 +ad2s1210 +ad2s90 +ad5064 +ad525x_dpot +ad525x_dpot-i2c +ad525x_dpot-spi +ad5360 +ad5380 +ad5398 +ad5421 +ad5446 +ad5449 +ad5504 +ad5624r_spi +ad5686 +ad5755 +ad5764 +ad5791 +ad5930 +ad5933 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7152 +ad7192 +ad7266 +ad7280a +ad7291 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +ad7476 +ad7606 +ad7746 +ad7780 +ad7791 +ad7793 +ad7816 +ad7877 +ad7879 +ad7879-i2c +ad7879-spi +ad7887 +ad7923 +ad799x +ad8366 +ad9523 +ad9832 +ad9834 +ad9850 +ad9852 +ad9910 +ad9951 +adcxx +addi_apci_035 +addi_apci_1032 +addi_apci_1500 +addi_apci_1516 +addi_apci_1564 +addi_apci_16xx +addi_apci_2032 +addi_apci_2200 +addi_apci_3120 +addi_apci_3501 +addi_apci_3xxx +addi_watchdog +ade7753 +ade7754 +ade7758 +ade7759 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adfs +adi +adis16060 +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16204 +adis16209 +adis16220 +adis16240 +adis16260 +adis16400 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adl_pci9118 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1275 +adm8211 +adm9240 +adp5520_bl +adp5520-keys +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +ads1015 +ads7828 +ads7846 +ads7871 +ad_sigma_delta +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adv7170 +adv7175 +adv7180 +advansys +adv_pci1710 +adv_pci1723 +adv_pci1724 +adv_pci_dio +adxl34x +adxl34x-i2c +adxl34x-spi +adxrs450 +af_802154 +af9013 +af9033 +af_alg +affs +af_key +af_packet_diag +af-rxrpc +ah4 +ah6 +aha152x_cs +ahci +ahci_platform +aic79xx +aic7xxx +aic94xx +aiptek +aircable +airo +airo_cs +airport +ak8975 +algif_hash +algif_skcipher +ali-ircc +alim7101_wdt +alphatrack +altera-ci +altera_jtaguart +altera_ps2 +altera-stapl +altera_uart +alx +ambassador +amc6821 +amd5536udc +amd8111e +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pci224 +amplc_pci230 +amplc_pci263 +ams +ams369fg06 +analog +anatop-regulator +ansi_cprng +ans-lcd +anubis +aoe +apbps2 +apds9300 +apds9802als +apds990x +apm_emu +apm-emulation +apm_power +apm-power +appledisplay +appletalk +appletouch +applicom +ar5523 +ar7part +arc4 +arc_emac +arcmsr +arcnet +arc_ps2 +arc-rawmode +arc-rimi +arc_uart +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +arptable_filter +arp_tables +arpt_mangle +as3711_bl +as3711-regulator +as3722-regulator +as5011 +asc7621 +asix +ast +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at86rf230 +at91_ether +ata_piix +atbm8830 +aten +ath +ath10k_core +ath10k_pci +ath3k +ath5k +ath6kl_core +ath6kl_sdio +ath6kl_usb +ath9k +ath9k_common +ath9k_htc +ath9k_hw +ati_remote +ati_remote2 +atl1 +atl1c +atl1e +atl2 +atm +atmel +atmel_cs +atmel_mxt_ts +atmel_pci +atmel-ssc +atmtcp +atp870u +atxp1 +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo_k1900fb +auo_k1901fb +auo_k190x +auo-pixcir-ts +authenc +authencesn +auth_rpcgss +autofs4 +avma1_cs +avm_cs +avmfritz +ax25 +ax88179_178a +axnet_cs +b1 +b1dma +b1pci +b1pcmcia +b2c2-flexcop +b2c2-flexcop-pci +b2c2-flexcop-usb +b43 +b43legacy +b44 +bas_gigaset +batman-adv +baycom_epp +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm203x +bcm3510 +bcm5974 +bcma +bcma-hcd +bcm_wimax +bd6107 +be2iscsi +be2net +befs +belkin_sa +bfa +bfs +bfusb +bh1770glc +bh1780gli +binfmt_misc +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +bluecard_cs +bluetooth +bma150 +bma180 +bmac +bmp085-i2c +bmp085-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bonding +bpa10x +bpck +bpck6 +bpctl_mod +bpqether +bq2415x_charger +bq24190_charger +bq24735-charger +bq27x00_battery +br2684 +brcmfmac +brcmsmac +brcmutil +bridge +broadsheetfb +bsd_comp +bt3c_cs +bt819 +bt856 +bt866 +bt878 +btcoexist +btcx-risc +btmrvl +btmrvl_sdio +btmtk_usb +btrfs +btsdio +bttv +btuart_cs +btusb +btwilink +bu21013_ts +budget +budget-av +budget-ci +budget-core +budget-patch +BusLogic +bw-qcam +bypass +c4 +c67x00 +cachefiles +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camellia_generic +can +can-bcm +can-dev +can-gw +can-raw +capi +capidrv +capmode +carl9170 +carminefb +cassini +cast5_generic +cast6_generic +cast_common +catc +cb710 +cb710-mmc +cb_das16_cs +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +cb_pcimdda +cc770 +cc770_isa +cc770_platform +c_can +c_can_pci +c_can_platform +cciss +ccm +cdc-acm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc-phonet +cdc_subset +cdc-wdm +cedusb +ceph +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +chipreg +chnl_net +cifs +ci_hdrc +ci_hdrc_imx +ci_hdrc_msm +ci_hdrc_pci +cirrus +cirrusfb +clearpad_tm1217 +clip +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_fw +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm36651 +cm4000_cs +cm4040_cs +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cmtp +cnic +cobra +coda +com20020 +com20020_cs +com20020-pci +com90io +com90xx +comedi +comedi_bond +comedi_fc +comedi_parport +comedi_test +comm +configfs +contec_pci_dio +cordic +core +cp210x +cpia2 +cpu-notifier-error-inject +c-qcam +cramfs +crc32 +crc7 +crc8 +crc-ccitt +crc-itu-t +cros_ec +cros_ec_i2c +cros_ec_keyb +cros_ec_spi +cryptd +cryptoloop +crypto_null +crypto_user +crystalhd +cs5345 +cs53l32a +csiostor +ctr +cts +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx8800 +cx8802 +cx88-alsa +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx88xx +cxacru +cxd2099 +cxd2820r +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxt1e1 +cy8ctmg110_ts +cyapa +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +cyttsp_core +cyttsp_i2c +cyttsp_i2c_common +cyttsp_spi +da9030_battery +da9034-ts +da903x +da903x_bl +da9052-battery +da9052_bl +da9052-hwmon +da9052_onkey +da9052-regulator +da9052_tsi +da9052_wdt +da9055-hwmon +da9055_onkey +da9055-regulator +da9055_wdt +da9063-regulator +da9210-regulator +DAC960 +daqboard2000 +das08 +das08_cs +das08_pci +db9 +dc395x +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +dccp_probe +ddbridge +de2104x +de4x5 +decnet +deflate +defxx +denali +denali_pci +des_generic +dgap +dgnc +dgrp +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dibx000_common +digi_acceleport +diskonchip +divacapi +divadidd +diva_idi +diva_mnt +divas +dl2k +dlci +dlm +dm1105 +dm9601 +dm-bio-prison +dm-bufio +dm-cache +dm-cache-cleaner +dm-cache-mq +dm-crypt +dm-delay +dmfe +dm-flakey +dm-log +dm-log-userspace +dm-mirror +dm-multipath +dm-persistent-data +dm-queue-length +dm-raid +dm-region-hash +dm-round-robin +dm-service-time +dm-snapshot +dm-switch +dm-thin-pool +dm-verity +dmx3191d +dm-zero +dnet +dn_rtmsg +docg3 +docg4 +donauboe +dpt_i2o +drbd +drm +drm_kms_helper +drm_usb +drxd +drxk +ds1621 +ds1682 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds620 +dsa_core +dsbr100 +dscc4 +dss1_divert +dst +dst_ca +dstr +dt3000 +dt3155v4l +dt9812 +dtl1_cs +dummy +dummy-irq +dvb-as102 +dvb-bt8xx +dvb-core +dvb-pll +dvb-ttpci +dvb-ttusb-budget +dvb-usb +dvb-usb-a800 +dvb-usb-af9005 +dvb-usb-af9005-remote +dvb-usb-af9015 +dvb-usb-af9035 +dvb-usb-anysee +dvb-usb-au6610 +dvb-usb-az6007 +dvb-usb-az6027 +dvb-usb-ce6230 +dvb-usb-cinergyT2 +dvb-usb-cxusb +dvb-usb-dib0700 +dvb-usb-dibusb-common +dvb-usb-dibusb-mb +dvb-usb-dibusb-mc +dvb-usb-digitv +dvb-usb-dtt200u +dvb-usb-dtv5100 +dvb-usb-dw2102 +dvb-usb-ec168 +dvb-usb-friio +dvb-usb-gl861 +dvb-usb-gp8psk +dvb-usb-it913x +dvb-usb-lmedm04 +dvb-usb-m920x +dvb-usb-mxl111sf +dvb-usb-nova-t-usb2 +dvb-usb-opera +dvb-usb-pctv452e +dvb-usb-rtl28xxu +dvb-usb-technisat-usb2 +dvb-usb-ttusb2 +dvb-usb-umt-010 +dvb_usb_v2 +dvb-usb-vp702x +dvb-usb-vp7045 +dwc2 +dwc2_pci +dwc2_platform +dwc3 +dwc3-pci +dw_dmac +dw_dmac_core +dw_dmac_pci +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +e4000 +earth-pt1 +eata +ebt_802_3 +ebtable_broute +ebtable_filter +ebtable_nat +ebtables +ebt_among +ebt_arp +ebt_arpreply +ebt_dnat +ebt_ip +ebt_ip6 +ebt_limit +ebt_log +ebt_mark +ebt_mark_m +ebt_nflog +ebt_pkttype +ebt_redirect +ebt_snat +ebt_stp +ebt_vlan +ec100 +echo +edac_core +edt-ft5x06 +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efs +egalax_ts +ehset +elo +elsa_cs +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +emc1403 +emc2103 +emc6w201 +em_canid +em_cmp +emi26 +emi62 +em_ipset +em_meta +em_nbyte +empeg +ems_pci +ems_pcmcia +ems_usb +em_text +emu10k1-gp +em_u32 +enc28j60 +enclosure +eni +enic +epat +epia +epic100 +eql +esas2r +esd_usb2 +esi-sir +esp4 +esp6 +et131x +ethoc +evbug +exofs +extcon-adc-jack +extcon-arizona +extcon-gpio +extcon-max77693 +extcon-max8997 +extcon-palmas +ezusb +f2fs +f75375s +f81232 +fakelb +fan53555 +farsync +faulty +fb_sys_fops +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_cs +fealnx +ff-memless +fid +firedtv +firestream +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fit2 +fit3 +fixed +fld +flexcan +floppy +fm801-gp +fmc +fmc-chardev +fmc-fakedev +fmc-trivial +fmc-write-eeprom +fm_drv +fmvj18x_cs +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +freevxfs +friq +frpw +fsa9480 +fscache +fsl_elbc_nand +ft1000 +ft1000_pcmcia +ftdi-elan +ftdi_sio +ftl +fujitsu_ts +fusb300_udc +fusbh200-hcd +g450_pll +g760a +g762 +g_acm_ms +gadgetfs +gamecon +gameport +garmin_gps +garp +g_audio +g_cdc +gcm +g_dbgp +gdmtty +gdmulte +gdmwm +gdth +generic +generic-adc-battery +generic_bl +gen_probe +g_ether +gf128mul +gf2k +g_ffs +gfs2 +ghash-generic +g_hid +gigaset +girbil-sir +gl518sm +gl520sm +gl620a +gluebi +g_mass_storage +g_midi +g_ncm +g_nokia +go7007 +go7007-loader +go7007-usb +goku_udc +goldfishfb +gp2ap002a00f +gp2ap020a00f +gpio +gpio-74x164 +gpio-addr-flash +gpio-adnp +gpio-adp5520 +gpio-adp5588 +gpio-amd8111 +gpio-arizona +gpio_backlight +gpio-charger +gpio-da9052 +gpio-da9055 +gpio-fan +gpio-generic +gpio-grgpio +gpio-ir-recv +gpio-janz-ttl +gpio-kempld +gpio_keys +gpio_keys_polled +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-mc33880 +gpio-mcp23s08 +gpio-ml-ioh +gpio_mouse +gpio-pca953x +gpio-pcf857x +gpio-rdc321x +gpio-regulator +gpio_tilt_polled +gpio-tps65912 +gpio-ts5500 +gpio-twl4030 +gpio-twl6040 +gpio-ucb1400 +gpio-viperboard +gpio-vx855 +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +g_printer +grcan +gre +grip +grip_mp +gsc_hpdi +g_serial +gspca_benq +gspca_conex +gspca_cpia1 +gspca_etoms +gspca_finepix +gspca_gl860 +gspca_jeilinj +gspca_jl2005bcd +gspca_kinect +gspca_konica +gspca_m5602 +gspca_main +gspca_mars +gspca_mr97310a +gspca_nw80x +gspca_ov519 +gspca_ov534 +gspca_ov534_9 +gspca_pac207 +gspca_pac7302 +gspca_pac7311 +gspca_se401 +gspca_sn9c2028 +gspca_sn9c20x +gspca_sonixb +gspca_sonixj +gspca_spca1528 +gspca_spca500 +gspca_spca501 +gspca_spca505 +gspca_spca506 +gspca_spca508 +gspca_spca561 +gspca_sq905 +gspca_sq905c +gspca_sq930x +gspca_stk014 +gspca_stk1135 +gspca_stv0680 +gspca_stv06xx +gspca_sunplus +gspca_t613 +gspca_topro +gspca_tv8532 +gspca_vc032x +gspca_vicam +gspca_xirlink_cit +gspca_zc3xx +gtco +guillemot +gunze +g_webcam +gxt4500 +g_zero +hamachi +hampshire +hanwang +hci +hci_uart +hci_vhci +hdlc +hdlc_cisco +hdlcdrv +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdpvr +he +hexium_gemini +hexium_orion +hfc4s8s_l1 +hfcmulti +hfcpci +hfcsusb +hfc_usb +hfs +hfsplus +hid +hid-a4tech +hid-apple +hid-appleir +hid-aureal +hid-axff +hid-belkin +hid-cherry +hid-chicony +hid-cypress +hid-dr +hid-elecom +hid-elo +hid-emsff +hid-ezkey +hid-gaff +hid-generic +hid-gyration +hid-holtekff +hid-holtek-kbd +hid-holtek-mouse +hid-huion +hid-icade +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-lenovo-tpkbd +hid-logitech +hid-logitech-dj +hid-magicmouse +hid-microsoft +hid-monterey +hid-multitouch +hid-ntrig +hid-ortek +hidp +hid-petalynx +hid-picolcd +hid-pl +hid-primax +hid-prodikeys +hid-roccat +hid-roccat-arvo +hid-roccat-common +hid-roccat-isku +hid-roccat-kone +hid-roccat-koneplus +hid-roccat-konepure +hid-roccat-kovaplus +hid-roccat-lua +hid-roccat-pyra +hid-roccat-ryos +hid-roccat-savu +hid-saitek +hid-samsung +hid-sensor-accel-3d +hid-sensor-als +hid-sensor-gyro-3d +hid-sensor-hub +hid-sensor-iio-common +hid-sensor-magn-3d +hid-sensor-trigger +hid-sjoy +hid-sony +hid-speedlink +hid-steelseries +hid-sunplus +hid-thingm +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-uclogic +hid-wacom +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hifn_795x +hih6130 +hisax +hisax_fcpcipnp +hisax_isac +hisax_st5481 +hmc5843 +hmc6352 +hopper +horizon +hostap +hostap_cs +hostap_pci +hostap_plx +hp100 +hpfs +hpilo +hpsa +hptiop +hsi +hsi_char +hso +hsr +htc-pasic3 +htu21 +huawei_cdc_ncm +hwa-hc +hwa-rc +hwmon-vid +hx8357 +hysdn +i1480-dfu-usb +i1480-est +i2400m +i2400m-usb +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd8111 +i2c-arb-gpio-challenge +i2c-cbus-gpio +i2c-designware-core +i2c-designware-pci +i2c-dev +i2c-diolan-u2c +i2c-eg20t +i2c-gpio +i2c-hid +i2c-hydra +i2c-i801 +i2c-isch +i2c-kempld +i2c-matroxfb +i2c-mpc +i2c-mux +i2c-mux-gpio +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-nforce2 +i2c-ocores +i2c-parport +i2c-parport-light +i2c-pca-platform +i2c-piix4 +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-tiny-usb +i2c-via +i2c-viapro +i2c-viperboard +i2c-xiic +i2o_block +i2o_bus +i2o_config +i2o_core +i2o_proc +i2o_scsi +i40e +i5k_amb +i6300esb +i740fb +i82092 +ib_addr +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mad +ibmaem +ibmpex +ib_mthca +ib_sa +ib_srp +ib_srpt +ib_ucm +ib_umad +ib_uverbs +icp_multi +ics932s401 +idmouse +idt77252 +ieee802154 +ifb +iforce +igb +igbvf +iguanair +iio_dummy +iio_hwmon +iio-trig-interrupt +iio-trig-periodic-rtc +iio-trig-sysfs +ili210x +ili922x +ili9320 +imm +imon +ims-pcu +imx074 +imx_thermal +ina209 +ina2xx +industrialio +industrialio-triggered-buffer +inet_diag +inexio +inftl +initio +input-polldev +int51x1 +intel_vr_nor +interact +interval_tree_test +inv-mpu6050 +ioc4 +io_edgeport +io_ti +iowarrior +ip6_gre +ip6table_filter +ip6table_mangle +ip6table_nat +ip6table_raw +ip6_tables +ip6table_security +ip6t_ah +ip6t_eui64 +ip6t_frag +ip6t_hbh +ip6t_ipv6header +ip6t_MASQUERADE +ip6t_mh +ip6t_NPT +ip6t_REJECT +ip6t_rpfilter +ip6t_rt +ip6t_SYNPROXY +ip6_tunnel +ip6_vti +ipack +ipaq +ipcomp +ipcomp6 +ipddp +ipg +ip_gre +iphase +ipheth +ipip +ipmi_devintf +ipmi_poweroff +ipmi_si +ipmi_watchdog +ipoctal +ipr +ips +ip_set +ip_set_bitmap_ip +ip_set_bitmap_ipmac +ip_set_bitmap_port +ip_set_hash_ip +ip_set_hash_ipport +ip_set_hash_ipportip +ip_set_hash_ipportnet +ip_set_hash_net +ip_set_hash_netiface +ip_set_hash_netnet +ip_set_hash_netport +ip_set_hash_netportnet +ip_set_list_set +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +ip_tables +iptable_security +ipt_ah +ipt_CLUSTERIP +ipt_ECN +ipt_MASQUERADE +ipt_REJECT +ipt_rpfilter +ipt_SYNPROXY +ipt_ULOG +ip_tunnel +ip_vs +ip_vs_dh +ip_vs_ftp +ip_vs_lblc +ip_vs_lblcr +ip_vs_lc +ip_vs_nq +ip_vs_pe_sip +ip_vs_rr +ip_vs_sed +ip_vs_sh +ip_vs_wlc +ip_vs_wrr +ip_vti +ipw +ipw2100 +ipw2200 +ipwireless +ipx +ircomm +ircomm-tty +irda +irda-usb +ir-jvc-decoder +ir-kbd-i2c +irlan +ir-lirc-codec +ir-mce_kbd-decoder +ir-nec-decoder +irnet +ir-rc5-decoder +ir-rc5-sz-decoder +ir-rc6-decoder +ir-sanyo-decoder +ir-sony-decoder +irtty-sir +ir-usb +iscsi_boot_sysfs +iscsi_target_mod +iscsi_tcp +isdn +isdn_bsdcomp +isdnhdlc +isicom +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isofs +isp116x-hcd +isp1362-hcd +isp1704_charger +isp1760 +it913x-fe +itd1000 +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_c2 +iw_cm +iw_cxgb3 +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +iw_nes +ix2505v +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsm +kafs +kalmia +kaweth +kbic +kbtab +kcomedilib +ke_counter +kempld-core +kempld_wdt +kernelcapi +keucr +keyspan +keyspan_pda +keyspan_remote +kfifo_buf +khazad +kingsun-sir +kl5kusb105 +ko2iblnd +kobil_sct +ks0108 +ks0127 +ks8842 +ks8851 +ks8851_mll +ks959-sir +ksdazzle-sir +ksocklnd +ksz884x +ktti +kvaser_pci +kvaser_usb +kxsd9 +kxtj9 +kyrofb +l1oip +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +l2tp_ppp +l4f00242t03 +l64781 +lanai +lapb +lapbether +latch-addr-flash +lattice-ecp3-config +lcd +ld9040 +ldusb +lec +leds-88pm860x +leds-adp5520 +leds-bd2802 +leds-blinkm +leds-da903x +leds-da9052 +leds-dac124s085 +leds-gpio +leds-lm3530 +leds-lm3533 +leds-lm355x +leds-lm3642 +leds-lp3944 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lt3593 +leds-max8997 +leds-mc13783 +leds-ot200 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pca9685 +leds-pwm +leds-regulator +leds-tca6507 +leds-wm831x-status +leds-wm8350 +ledtrig-backlight +ledtrig-camera +ledtrig-default-on +ledtrig-gpio +ledtrig-heartbeat +ledtrig-oneshot +ledtrig-timer +ledtrig-transient +legousbtower +lg2160 +lgdt3305 +lgdt330x +lgs8gxx +lg-vl600 +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libahci +libceph +libcfs +libcomposite +libcrc32c +libcxgbi +libertas +libertas_cs +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libore +libosd +libsas +libsrp +lightning +line6usb +lineage-pem +linear +lirc_bt829 +lirc_dev +lirc_igorplugusb +lirc_imon +lirc_parallel +lirc_sasem +lirc_serial +lirc_sir +lirc_zilog +lis3l02dq +lis3lv02d +lis3lv02d_i2c +lis3lv02d_spi +litelink-sir +lkkbd +llc +llc2 +llog_test +ll_temac +lm25066 +lm3533-als +lm3533_bl +lm3533-core +lm3533-ctrlbank +lm3630a_bl +lm3639_bl +lm63 +lm70 +lm73 +lm75 +lm77 +lm78 +lm80 +lm83 +lm8323 +lm8333 +lm85 +lm87 +lm90 +lm92 +lm93 +lm95234 +lm95241 +lm95245 +lmc +lms283gf05 +lms501kf03 +lmv +lnbp21 +lnbp22 +lnet +lnet_selftest +lockd +lov +lp +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp8755 +lp8788_bl +lp8788-charger +lpc_ich +lpc_sch +lpddr_cmds +lpfc +lru_cache +lrw +ltc2978 +ltc4151 +ltc4215 +ltc4245 +ltc4261 +ltv350qv +lustre +lv5207lp +lvfs +lz4 +lz4_compress +lz4hc +lz4hc_compress +m25p80 +m2m-deinterlace +m52790 +m88rs2000 +ma600-sir +mac53c94 +mac80211 +mac80211_hwsim +mac802154 +macb +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mace +mac-gaelic +mac-greek +mac_hid +mac-iceland +mac-inuit +mac-roman +mac-romanian +mac-turkish +macvlan +macvtap +mag3110 +magellan +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +matrix-keymap +matrix_keypad +matroxfb_accel +matroxfb_base +matroxfb_crtc2 +matroxfb_DAC1064 +matroxfb_g450 +matroxfb_maven +matroxfb_misc +matroxfb_Ti3026 +matrox_w1 +max1111 +max11801_ts +max1363 +max1586 +max16064 +max16065 +max1619 +max1668 +max17040_battery +max17042_battery +max197 +max2165 +max3100 +max34440 +max517 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77686 +max77693 +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925_bl +max8925_onkey +max8925_power +max8925-regulator +max8952 +max8973-regulator +max8997 +max8997_charger +max8998 +max8998_charger +mb862xxfb +mb86a16 +mb86a20s +mc13783-adc +mc13783-pwrbutton +mc13783-regulator +mc13783_ts +mc13892-regulator +mc13xxx-core +mc13xxx-i2c +mc13xxx-regulator-core +mc13xxx-spi +mc44s803 +mceusb +mcp2120-sir +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp4725 +mcs5000_ts +mcs7780 +mcs7830 +mcs_touchkey +mct_u232 +md4 +mdc +mdc800 +mdio +me4000 +me_daq +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mem2mem_testdev +memstick +mena21_wdt +mesh +metronomefb +metro-usb +mfd +mga +mgc +michael_mic +microread +microread_i2c +microtek +mii +minix +mip6 +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +mite +mk712 +mkiss +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mma8450 +mmc_block +mms114 +mos7720 +mos7840 +moxa +mpoa +mpr121_touchkey +mpt2sas +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +mrst_max3110 +ms_block +msdos +msp3400 +mspro_block +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt29f_spinand +mt312 +mt352 +mt9m001 +mt9m111 +mt9t031 +mt9t112 +mt9v011 +mt9v022 +mtd +mtd_blkdevs +mtdblock +mtdblock_ro +mtd_dataflash +mtdoops +mtdram +mtdswap +mtip32xx +mtouch +multipath +musb_am335x +musb_dsps +musb_hdrc +mv643xx_eth +mv88e6060 +mv88e6xxx_drv +mvmdio +mvsas +mv_u3d_core +mv_udc +mvumi +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxl111sf-demod +mxl111sf-tuner +mxl5005s +mxl5007t +mxser +myri10ge +nand +nand_bch +nand_ecc +nand_ids +nandsim +natsemi +nau7802 +navman +nbd +nci +ncpfs +ne2k-pci +neofb +net1080 +net2272 +net2280 +netconsole +netjet +netlink_diag +netprio_cgroup +netrom +netxen_nic +newtonkbd +nfc +nfc_digital +nf_conntrack +nf_conntrack_amanda +nf_conntrack_broadcast +nf_conntrack_ftp +nf_conntrack_h323 +nf_conntrack_ipv4 +nf_conntrack_ipv6 +nf_conntrack_irc +nf_conntrack_netbios_ns +nf_conntrack_netlink +nf_conntrack_pptp +nf_conntrack_proto_dccp +nf_conntrack_proto_gre +nf_conntrack_proto_sctp +nf_conntrack_proto_udplite +nf_conntrack_sane +nf_conntrack_sip +nf_conntrack_snmp +nf_conntrack_tftp +nfcsim +nfcwilink +nf_defrag_ipv4 +nf_defrag_ipv6 +nf_nat +nf_nat_amanda +nf_nat_ftp +nf_nat_h323 +nf_nat_ipv4 +nf_nat_ipv6 +nf_nat_irc +nf_nat_pptp +nf_nat_proto_dccp +nf_nat_proto_gre +nf_nat_proto_sctp +nf_nat_proto_udplite +nf_nat_sip +nf_nat_snmp_basic +nf_nat_tftp +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +nfnetlink_log +nfnetlink_queue +nfs +nfs_acl +nfsd +nfs_layout_nfsv41_files +nfsv2 +nfsv3 +nfsv4 +nf_synproxy_core +nf_tables +nf_tables_arp +nf_tables_bridge +nf_tables_ipv4 +nf_tables_ipv6 +nft_chain_nat_ipv4 +nft_chain_nat_ipv6 +nft_chain_route_ipv4 +nft_chain_route_ipv6 +nft_compat +nft_counter +nft_ct +nft_exthdr +nft_hash +nftl +nft_limit +nft_log +nft_meta +nft_nat +nft_rbtree +nft_reject_ipv4 +ngene +n_hdlc +ni_6527 +ni_65xx +ni_660x +ni_670x +nicstar +ni_daq_700 +ni_daq_dio24 +ni_labpc +ni_labpc_cs +ni_labpc_pci +nilfs2 +ni_mio_cs +ni_pcidio +ni_pcimio +ni_tio +ni_tiocmd +niu +nlmon +nls_ascii +nls_cp1250 +nls_cp1251 +nls_cp1255 +nls_cp737 +nls_cp775 +nls_cp850 +nls_cp852 +nls_cp855 +nls_cp857 +nls_cp860 +nls_cp861 +nls_cp862 +nls_cp863 +nls_cp864 +nls_cp865 +nls_cp866 +nls_cp869 +nls_cp874 +nls_cp932 +nls_cp936 +nls_cp949 +nls_cp950 +nls_euc-jp +nls_iso8859-1 +nls_iso8859-13 +nls_iso8859-14 +nls_iso8859-15 +nls_iso8859-2 +nls_iso8859-3 +nls_iso8859-4 +nls_iso8859-5 +nls_iso8859-6 +nls_iso8859-7 +nls_iso8859-9 +nls_koi8-r +nls_koi8-ru +nls_koi8-u +nls_utf8 +nmclan_cs +nosy +notifier-error-inject +nouveau +nozomi +n_r3964 +ns558 +ns83820 +nsc-ircc +nsp32 +nsp_cs +ntc_thermistor +ntfs +n_tracerouter +n_tracesink +null_blk +nvidiafb +nvme +nxt200x +nxt6000 +obdclass +obdecho +objlayoutdriver +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stackglue +ocfs2_stack_o2cb +ocfs2_stack_user +ocrdma +ofpart +of_serial +old_belkin-sir +olpc_apsp +omfs +omninet +on20 +on26 +onenand +opencores-kbd +openvswitch +oprofile +opticon +option +or51132 +or51211 +orinoco +orinoco_cs +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +osc +osd +osdblk +osst +oti6858 +output +ov2640 +ov5642 +ov6650 +ov7640 +ov7670 +ov772x +ov9640 +ov9740 +overlayfs +oxu210hp-hcd +ozwpan +p54common +p54pci +p54spi +p54usb +p8022 +p8023 +palmas-regulator +pandora_bl +panel +paride +parkbd +parport +parport_ax88796 +parport_cs +parport_pc +parport_serial +pata_ali +pata_amd +pata_arasan_cf +pata_artop +pata_atiixp +pata_atp867x +pata_cmd640 +pata_cmd64x +pata_cs5520 +pata_cs5530 +pata_cs5536 +pata_cypress +pata_efar +pata_hpt366 +pata_hpt37x +pata_hpt3x2n +pata_hpt3x3 +pata_it8213 +pata_it821x +pata_jmicron +pata_legacy +pata_marvell +pata_mpiix +pata_netcell +pata_ninja32 +pata_ns87410 +pata_ns87415 +pata_of_platform +pata_oldpiix +pata_opti +pata_optidma +pata_pcmcia +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sc1200 +pata_sch +pata_serverworks +pata_sil680 +pata_sis +pata_sl82c105 +pata_triflex +pata_via +pc300too +pcbc +pcd +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_can +pch_phub +pch_uart +pch_udc +pci +pci200syn +pcips2 +pci-stub +pcmcia +pcmcia_core +pcmciamtd +pcmcia_rsrc +pcnet32 +pcnet_cs +pcrypt +pcspkr +pcwd_pci +pcwd_usb +pd +pd6729 +pda_power +pdc_adma +peak_pci +peak_pcmcia +peak_usb +pegasus +penmount +percpu_test +pf +pfuze100-regulator +pg +phantom +phison +phonet +phram +phy-core +phy-exynos-dp-video +phy-generic +phy-gpio-vbus-usb +phy-isp1301 +phy-rcar-usb +phy-samsung-usb +phy-samsung-usb2 +phy-samsung-usb3 +physmap +physmap_of +pixcir_i2c_ts +pktcdvd +pktgen +pl2303 +platform_lcd +plat_nand +plat-ram +plip +plusb +pluto2 +plx_pci +pm2fb +pm3fb +pm80xx +pmbus +pmbus_core +pmc551 +pmcraid +pm-notifier-error-inject +pmu_battery +pn533 +pn544 +pn544_i2c +pn_pep +port100 +poseidon +powermate +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +pppoatm +pppoe +pppox +ppp_synctty +pps_core +pps-gpio +pps-ldisc +pps_parport +pptp +prism2_usb +ps2mult +psmouse +psnap +pt +ptlrpc +ptp +pvrusb2 +pwc +pwm_bl +pwm-pca9685 +pwm-twl +pwm-twl-led +pxa27x_udc +qcaux +qcserial +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qlogic_cs +qlogicfas408 +qmi_wwan +qnx4 +qnx6 +qt1010 +qt1070 +qt2160 +quatech2 +quatech_daqp_cs +quota_tree +quota_v1 +quota_v2 +qxl +r128 +r592 +r6040 +r8152 +r815x +r8169 +r8187se +r8188eu +r8192e_pci +r8192u_usb +r820t +r852 +r8712u +r8a66597-hcd +r8a66597-udc +rack-meter +radeon +radio-i2c-si470x +radio-keene +radio-ma901 +radio-maxiradio +radio-mr800 +radio-shark +radio-si4713 +radio-si476x +radio-tea5764 +radio-timb +radio-usb-si470x +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid6test +raid_class +ramoops +raw +ray_cs +rbd +rbtree_test +rc5t583-regulator +rc-adstech-dvb-t-pci +rc-alink-dtu-m +rc-anysee +rc-apac-viewcomp +rcar_vin +rc-asus-pc39 +rc-asus-ps3-100 +rc-ati-tv-wonder-hd-600 +rc-ati-x10 +rc-avermedia +rc-avermedia-a16d +rc-avermedia-cardbus +rc-avermedia-dvbt +rc-avermedia-m135a +rc-avermedia-m733a-rm-k6 +rc-avermedia-rm-ks +rc-avertv-303 +rc-azurewave-ad-tu700 +rc-behold +rc-behold-columbus +rc-budget-ci-old +rc-cinergy +rc-cinergy-1400 +rc-core +rc-delock-61959 +rc-dib0700-nec +rc-dib0700-rc5 +rc-digitalnow-tinytwin +rc-digittrade +rc-dm1105-nec +rc-dntv-live-dvb-t +rc-dntv-live-dvbt-pro +rc-em-terratec +rc-encore-enltv +rc-encore-enltv2 +rc-encore-enltv-fm53 +rc-evga-indtube +rc-eztv +rc-flydvb +rc-flyvideo +rc-fusionhdtv-mce +rc-gadmei-rm008z +rc-genius-tvgo-a11mce +rc-gotview7135 +rc-hauppauge +rc-imon-mce +rc-imon-pad +rc-iodata-bctv7e +rc-it913x-v1 +rc-it913x-v2 +rc-kaiomy +rc-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lirc +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +rc-msi-digivox-ii +rc-msi-digivox-iii +rc-msi-tvanywhere +rc-msi-tvanywhere-plus +rc-nebula +rc-nec-terratec-cinergy-xs +rc-norwood +rc-npgtech +rc-pctv-sedna +rc-pinnacle-color +rc-pinnacle-grey +rc-pinnacle-pctv-hd +rc-pixelview +rc-pixelview-002t +rc-pixelview-mk12 +rc-pixelview-new +rc-powercolor-real-angel +rc-proteus-2309 +rc-purpletv +rc-pv951 +rc-rc6-mce +rc-real-audio-220-32-keys +rc-reddo +rc-snapstream-firefly +rc-streamzap +rc-tbs-nec +rc-technisat-usb2 +rc-terratec-cinergy-xs +rc-terratec-slim +rc-terratec-slim-2 +rc-tevii-nec +rc-tivo +rc-total-media-in-hand +rc-total-media-in-hand-02 +rc-trekstor +rc-tt-1500 +rc-twinhan1027 +rc-videomate-m1f +rc-videomate-s350 +rc-videomate-tv-pvr +rc-winfast +rc-winfast-usbii-deluxe +rdc321x-southbridge +rdma_cm +rdma_ucm +rds +rds_rdma +rds_tcp +redboot +redrat3 +reed_solomon +reiserfs +remoteproc +renesas_usbhs +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd_ftl +rfkill-gpio +rfkill-regulator +rio500 +rionet +rio-scan +rivafb +rj54n1cb0c +rmd128 +rmd160 +rmd256 +rmd320 +rndis_host +rndis_wlan +rocket +romfs +rose +rotary_encoder +rp2 +rpcsec_gss_krb5 +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt61pci +rt73usb +rtc-88pm80x +rtc-88pm860x +rtc-ab3100 +rtc-as3722 +rtc-bq32k +rtc-bq4802 +rtc-cmos +rtc_cmos_setup +rtc-da9052 +rtc-da9055 +rtc-ds1286 +rtc-ds1305 +rtc-ds1307 +rtc-ds1374 +rtc-ds1390 +rtc-ds1511 +rtc-ds1553 +rtc-ds1672 +rtc-ds1742 +rtc-ds2404 +rtc-ds3232 +rtc-ds3234 +rtc-em3027 +rtc-fm3130 +rtc-generic +rtc-hid-sensor-time +rtc-isl12022 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-moxart +rtc-msm6242 +rtc-palmas +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf8523 +rtc-pcf8563 +rtc-pcf8583 +rtc-r9701 +rtc-rc5t583 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3029c2 +rtc-rx4581 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-snvs +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtd520 +rtl2830 +rtl2832 +rtl8150 +rtl8180 +rtl8187 +rtl8188ee +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192se +rtl8723ae +rtl8723be +rtl8723-common +rtl8821ae +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtl_pci +rtl_usb +rtlwifi +rts5139 +rtsx_pci +rtsx_pci_ms +rtsx_pci_sdmmc +rx51_battery +rxkad +s1d13xxxfb +s2250 +s2255drv +s2io +s2mps11 +s3fb +s5h1409 +s5h1411 +s5h1420 +s5m8767 +s626 +s6e63m0 +s921 +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7146 +saa7146_vv +saa7164 +saa717x +saa7185 +saa7706h +safe_serial +salsa20_generic +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_rcar +sata_sil +sata_sil24 +sata_sis +sata_sx4 +sata_uli +sata_via +sata_vsc +savage +savagefb +sbe-2t3e3 +sbp_target +sbs-battery +sc92031 +sca3000 +sch_atm +sch_cbq +sch_choke +sch_codel +sch_drr +sch_dsmark +sch_fq +sch_fq_codel +sch_gred +sch_hfsc +sch_htb +sch_ingress +sch_mqprio +sch_multiq +sch_netem +sch_plug +sch_prio +sch_qfq +sch_red +sch_sfb +sch_sfq +sch_tbf +sch_teql +scsi_debug +scsi_dh +scsi_dh_alua +scsi_dh_emc +scsi_dh_hp_sw +scsi_dh_rdac +scsi_tgt +scsi_transport_fc +scsi_transport_iscsi +scsi_transport_sas +scsi_transport_spi +scsi_transport_srp +sctp +sctp_probe +sdhci +sdhci-of-esdhc +sdhci-of-hlwd +sdhci-pci +sdhci-pltfm +sdio_uart +sdricoh_cs +sdr-msi3101 +sedlbauer_cs +seed +sep_driver +seqiv +ser_gigaset +serial2002 +serial_cs +serio_raw +sermouse +serpent_generic +serport +serqt_usb2 +ses +sfc +sha1-powerpc +shark2 +sh_eth +shpchp +sht15 +sht21 +sh_veu +si21xx +si4713-i2c +si476x-core +sidewinder +sierra +sierra_net +sil164 +sir-dev +sis +sis190 +sis5595 +sis900 +sisfb +sisusbvga +sit +sja1000 +sja1000_isa +sja1000_of_platform +sja1000_platform +skel +skfp +skge +sky2 +sl811_cs +sl811-hcd +slcan +slip +slram +sm501 +sm501fb +sm7xxfb +smb347-charger +smc91c92_cs +sm_common +sm_ftl +smm665 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smsc-ircc2 +smscufx +smsdvb +smsmdtv +smssdio +smsusb +snd +snd-ac97-codec +snd-ad1889 +snd-ak4113 +snd-ak4114 +snd-ak4117 +snd-ak4xxx-adda +snd-ali5451 +snd-aloop +snd-als300 +snd-als4000 +snd-aoa +snd-aoa-codec-onyx +snd-aoa-codec-tas +snd-aoa-codec-toonie +snd-aoa-fabric-layout +snd-aoa-i2sbus +snd-aoa-soundbus +snd-at73c213 +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-azt3328 +snd-bt87x +snd-ca0106 +snd-cmipci +snd-compress +snd-cs4281 +snd-cs46xx +snd-cs5530 +snd-cs5535audio +snd-cs8427 +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-emu10k1 +snd-emu10k1-synth +snd-emu10k1x +snd-emux-synth +snd-ens1370 +snd-ens1371 +snd-es1938 +snd-es1968 +snd-firewire-lib +snd-firewire-speakers +snd-fm801 +snd-gina20 +snd-gina24 +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-intel +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1712 +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel8x0 +snd-intel8x0m +snd-isight +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-lx6464es +snd-maestro3 +snd-mia +snd-mixart +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3-synth +snd-oxygen +snd-oxygen-lib +snd-page-alloc +snd-pcm +snd-pcxhr +snd-pdaudiocf +snd-portman2x4 +snd-powermac +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-sb16-dsp +snd-sb-common +snd-scs1x +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-soc-atmel-pcm +snd-soc-core +snd-soc-si476x +snd-soc-simple-card +snd-sonicvibes +snd-timer +snd-trident +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usbmidi-lib +snd-usb-usx2y +snd-util-mem +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx222 +snd-vx-lib +snd-vxpocket +snd-ymfpci +soc_camera +soc_camera_platform +soc_mediabus +soc_scale_crop +softdog +softing +softing_cs +solo6x10 +solos-pci +sony-btf-mpx +soundcore +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +spectrum_cs +speedfax +speedtch +spi-altera +spi-bitbang +spi-butterfly +spidev +spi-dw +spi-dw-midpci +spi-gpio +spi_ks8995 +spi-lm70llp +spi-oc-tiny +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-sc18is602 +spi-tle62x0 +spi-topcliff-pch +spi-xcomm +squashfs +sr9700 +ssb +ssb-hcd +ssd1307fb +ssfdc +sst25l +ssu100 +st +st1232 +st_accel +st_accel_i2c +st_accel_spi +starfire +stb0899 +stb6000 +stb6100 +st_drv +ste_modem_rproc +stex +st_gyro +st_gyro_i2c +st_gyro_spi +stinger +stir4200 +stk1160 +stkwebcam +st_magn +st_magn_i2c +st_magn_spi +stmmac +stmpe-keypad +stmpe-ts +stowaway +stp +st_pressure +st_pressure_i2c +st_pressure_spi +streamzap +st_sensors +st_sensors_i2c +st_sensors_spi +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv6110 +stv6110x +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sur40 +svcrdma +svgalib +swim3 +sx8 +sym53c500_cs +sym53c8xx +symbolserial +synaptics_i2c +synaptics_i2c_rmi4 +synaptics_usb +synclink +synclink_cs +synclink_gt +synclinkmp +syscopyarea +sysfillrect +sysimgblt +sysv +t1pci +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +tc3589x-keypad +tca6416-keypad +tca8418_keypad +tcm_fc +tcm_loop +tcm_qla2xxx +tcm_usb_gadget +tcp_bic +tcp_diag +tcp_highspeed +tcp_htcp +tcp_hybla +tcp_illinois +tcp_lp +tcp_probe +tcp_scalable +tcp_vegas +tcp_veno +tcp_westwood +tcp_yeah +tcrypt +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18271 +tda18271c2dd +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda998x +tdfx +tdfxfb +tdo24m +tea +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tef6862 +tehuti +tekram-sir +teles_cs +test-kstrtox +test_power +test-string_helpers +tg3 +tgr192 +therm_windtunnel +thmc50 +ti-adc081c +ti_dac7512 +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +timb_dma +timberdale +timblogiw +timbuart +timeriomem-rng +tipc +ti_usb_3410_5052 +tlan +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmiofb +tmp006 +tmp102 +tmp401 +tmp421 +tmscsim +toim3232-sir +touchit213 +touchright +touchwin +tpci200 +tpm_atmel +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_i2c_stm_st33 +tpm-rng +tps51632-regulator +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65090-charger +tps65090-regulator +tps65217 +tps65217_bl +tps65217-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps80031-regulator +trancevibrator +tranzport +tridentfb +ts2020 +ts_bm +tsc2005 +tsc2007 +tsc40 +ts_fsm +ts_kmp +tsl2550 +tsl2563 +tsl2583 +tsl2x7x_core +tsl4531 +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +tua6100 +tua9001 +tulip +tuner +tuner_it913x +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +tusb6010 +tvaudio +tveeprom +tvp5150 +tw2804 +tw9903 +tw9906 +tw9910 +twidjoy +twl4030_charger +twl4030_keypad +twl4030-madc +twl4030-madc-hwmon +twl4030-pwrbutton +twl4030-vibra +twl4030_wdt +twl6030-gpadc +twl6040-vibra +twofish_common +twofish_generic +typhoon +u132-hcd +uartlite +ubi +ubifs +ucb1400_core +ucb1400_ts +ucd9000 +ucd9200 +uda1342 +udc-core +udf +udl +udlfb +udp_diag +ueagle-atm +u_ether +ufs +ufshcd +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_sercos3 +uli526x +umc +umem +ums-alauda +ums-cypress +ums-datafab +ums-eneub6250 +ums-freecom +ums-isd200 +ums-jumpshot +ums-karma +ums-onetouch +ums-realtek +ums-sddr09 +ums-sddr55 +ums-usbat +uninorth-agp +unix_diag +upd64031a +upd64083 +uPD98402 +u_rndis +usb3503 +usb_8dev +usb8xxx +usbatm +usb_debug +usbdux +usbduxfast +usbduxsigma +usb_f_acm +usb_f_ecm +usb_f_ecm_subset +usb_f_eem +usb_f_mass_storage +usb_f_ncm +usb_f_obex +usb_f_phonet +usb_f_rndis +usb_f_serial +usb_f_ss_lb +usb_gigaset +usbhid +usbip-core +usbip-host +usbkbd +usblcd +usbled +usblp +usbmisc_imx +usbmon +usbmouse +usbnet +usbserial +usb-serial-simple +usbsevseg +usb-storage +usbtest +usbtmc +usbtouchscreen +usbtv +usbvision +usb_wwan +u_serial +userspace-consumer +ushc +uss720 +uvcvideo +uvesafb +uwb +ux500 +v4l2-common +v4l2-dv-timings +v4l2-int-device +v4l2-mem2mem +vcan +vcnl4000 +ves1820 +ves1x93 +veth +vga16fb +vgastate +vgg2432a4 +vhci-hcd +vhost +vhost_net +vhost_scsi +via +via686a +via-ircc +via-rhine +via-sdmmc +via-velocity +videobuf2-core +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-memops +videobuf2-vmalloc +videobuf-core +videobuf-dma-contig +videobuf-dma-sg +videobuf-dvb +videobuf-vmalloc +videocodec +videodev +viperboard +viperboard_adc +virtio +virtio_balloon +virtio_blk +virtio_console +virtio_mmio +virtio_net +virtio_pci +virtio_ring +virtio-rng +virtio_scsi +virtual +visor +vivi +vlsi_ir +vmac +vme +vme_ca91cx42 +vme_pio2 +vme_tsi148 +vme_user +vme_vmivme7805 +vmk80xx +vmwgfx +vmxnet3 +vp27smpx +vpx3220 +vringh +vsock +vsxxxaa +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxge +vxlan +w1_bq27000 +w1_ds2408 +w1_ds2413 +w1_ds2423 +w1_ds2431 +w1_ds2433 +w1_ds2760 +w1_ds2780 +w1_ds2781 +w1_ds28e04 +w1-gpio +w1_smem +w1_therm +w35und +w5100 +w5300 +w6692 +w83781d +w83791d +w83792d +w83793 +w83795 +w83977af_ir +w83l785ts +w83l786ng +w9966 +wacom +wacom_i2c +wacom_w8001 +walkera0701 +wanxl +warrior +wbsd +wcn36xx +wdrtas +wdt_pci +whci +whci-hcd +whc-rc +whiteheat +wil6210 +wimax +winbond-840 +windfarm_core +wire +wishbone-serial +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wl3501_cs +wlags49_h25_cs +wlags49_h2_cs +wlcore +wlcore_sdio +wlcore_spi +wm831x_backup +wm831x_bl +wm831x-dcdc +wm831x-hwmon +wm831x-isink +wm831x-ldo +wm831x-on +wm831x_power +wm831x-ts +wm831x_wdt +wm8350-hwmon +wm8350_power +wm8350-regulator +wm8350_wdt +wm8400-regulator +wm8739 +wm8775 +wm8994-regulator +wm97xx-ts +wp512 +wusb-cbaf +wusbcore +wusb-wa +x25 +x25_asy +xc4000 +xc5000 +xcbc +xfrm4_mode_beet +xfrm4_mode_transport +xfrm4_mode_tunnel +xfrm4_tunnel +xfrm6_mode_beet +xfrm6_mode_ro +xfrm6_mode_transport +xfrm6_mode_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_ipcomp +xfrm_user +xfs +xgifb +xgmac +xilinx_ps2 +xilinx_uartps +xillybus_core +xillybus_of +xillybus_pcie +xirc2ps_cs +xircom_cb +xor +xpad +xprtrdma +xsens_mt +x_tables +xt_addrtype +xt_AUDIT +xt_bpf +xt_CHECKSUM +xt_CLASSIFY +xt_cluster +xt_comment +xt_connbytes +xt_connlabel +xt_connlimit +xt_connmark +xt_CONNSECMARK +xt_conntrack +xt_cpu +xt_CT +xt_dccp +xt_devgroup +xt_dscp +xt_DSCP +xt_ecn +xt_esp +xt_hashlimit +xt_helper +xt_hl +xt_HL +xt_HMARK +xt_IDLETIMER +xt_iprange +xt_ipvs +xtkbd +xt_LED +xt_length +xt_limit +xt_LOG +xt_mac +xt_mark +xt_multiport +xt_nat +xt_NETMAP +xt_nfacct +xt_NFLOG +xt_NFQUEUE +xt_osf +xt_owner +xt_physdev +xt_pkttype +xt_policy +xt_quota +xt_rateest +xt_RATEEST +xt_realm +xt_recent +xt_REDIRECT +xts +xt_sctp +xt_SECMARK +xt_set +xt_socket +xt_state +xt_statistic +xt_string +xt_tcpmss +xt_TCPMSS +xt_TCPOPTSTRIP +xt_tcpudp +xt_TEE +xt_time +xt_TPROXY +xt_TRACE +xt_u32 +xusbatm +xz_dec_test +yam +yealink +yellowfin +yenta_socket +yurex +zatm +zaurus +zd1201 +zd1211rw +zforce_ts +zhenhua +zl10036 +zl10039 +zl10353 +zl6100 +zlib +zr36016 +zr36050 +zr36060 +zr36067 +zr364xx +zram +zte_ev --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/powerpc/powerpc64-emb +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/powerpc/powerpc64-emb @@ -0,0 +1,16534 @@ +EXPORT_SYMBOL crypto/gf128mul 0x0c2f123f gf128mul_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x1068004b gf128mul_bbe +EXPORT_SYMBOL crypto/gf128mul 0x2f2889a0 gf128mul_init_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x384ef9ce gf128mul_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x56af0dbd gf128mul_x_ble +EXPORT_SYMBOL crypto/gf128mul 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL crypto/gf128mul 0xbd17a0df gf128mul_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0xc0890413 gf128mul_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/atm/suni 0x17a4d3a5 suni_init +EXPORT_SYMBOL drivers/bcma/bcma 0xc4d6b75f bcma_core_dma_translation +EXPORT_SYMBOL drivers/block/drbd/drbd 0x127a5901 drbd_set_st_err_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x35131b36 drbd_role_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x7730f22d drbd_conn_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0xaf27bebf drbd_disk_str +EXPORT_SYMBOL drivers/block/paride/paride 0x0ac1c49c paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0x3f43b155 pi_write_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x6250ec0c pi_disconnect +EXPORT_SYMBOL drivers/block/paride/paride 0x6ba143fb pi_read_block +EXPORT_SYMBOL drivers/block/paride/paride 0xa7d9ab0d pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xbc0ec868 pi_write_block +EXPORT_SYMBOL drivers/block/paride/paride 0xc9197560 pi_read_regr +EXPORT_SYMBOL drivers/block/paride/paride 0xcb42049e pi_release +EXPORT_SYMBOL drivers/block/paride/paride 0xd056ce81 pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0xf02e4253 pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xf37d36af paride_unregister +EXPORT_SYMBOL drivers/block/paride/paride 0xfe462444 pi_init +EXPORT_SYMBOL drivers/crypto/caam/caam 0xfd2b02dc caam_get_era +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x3b86c461 caam_jr_free +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x56b9feea caam_jr_alloc +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x7a3ed661 split_key_done +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0x94bd4db7 caam_jr_enqueue +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0xbb030d6e caam_jr_strstatus +EXPORT_SYMBOL drivers/crypto/caam/caam_jr 0xc0773363 gen_split_key +EXPORT_SYMBOL drivers/crypto/talitos 0x051e9b12 talitos_submit +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x02f1eddd dw_dma_cyclic_free +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x1a6f3b84 dw_dma_get_dst_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x25f952c5 dw_dma_cyclic_start +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x27defbff dw_dma_cyclic_stop +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xb16a815f dw_dma_cyclic_prep +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xb65bd3a5 dw_dma_get_src_addr +EXPORT_SYMBOL drivers/edac/edac_core 0x8894da01 edac_mc_find +EXPORT_SYMBOL drivers/firewire/firewire-core 0x02af3d99 fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x04d0f641 fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x08ae1d65 fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0d141fbe fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0f7d6af8 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x16e91e21 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1869be01 fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1da69e85 fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1f119492 fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x25d46aee fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2dbea50b fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2fcf54de fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3c56ef91 fw_workqueue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4797b34b fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4a5167b3 fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x645b715f fw_core_add_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x65c9438b fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6cfe8746 fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6da3297d fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x71780773 fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86095190 fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x88378874 fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0x90863005 fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9c084e2a fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9e2bfc83 fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb502117d fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0xbd2caf43 fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0xbe0e291d fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc13ba4d8 fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc3850db5 fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0xdfeaa080 fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf6457ac4 fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf94bf129 fw_core_remove_address_handler +EXPORT_SYMBOL drivers/fmc/fmc 0x039a5774 fmc_free_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x2db4298d fmc_show_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x3499cc85 fmc_find_sdb_device +EXPORT_SYMBOL drivers/fmc/fmc 0x51a823ad fmc_scan_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x52a543a0 fmc_device_unregister_n +EXPORT_SYMBOL drivers/fmc/fmc 0x732c490b fmc_device_register +EXPORT_SYMBOL drivers/fmc/fmc 0x81d9723d fmc_reprogram +EXPORT_SYMBOL drivers/fmc/fmc 0x8c1aff4e fmc_device_register_n +EXPORT_SYMBOL drivers/fmc/fmc 0xad51a514 fmc_driver_register +EXPORT_SYMBOL drivers/fmc/fmc 0xd125da0c fmc_device_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0xf45ce8b0 fmc_driver_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00025916 drm_mode_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00667d8a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x01649fb8 drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x026c0d6b drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x04feab23 drm_connector_unplug_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x050633e0 drm_vblank_pre_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x05aabd04 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x062c76bc drm_agp_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x069bfeed drm_platform_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07694ed3 drm_get_pci_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x091af704 drm_agp_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ae4b94c drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ca0105c drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0cd86382 drm_mm_dump_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0e3fe58c drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x112f8ddb drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12c6276a drm_buffer_read_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x142b8b35 drm_buffer_copy_from_user +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a9a178 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14c8b90b drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x189f6401 drm_mm_debug_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x194eadaa drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19e44324 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a757c79 drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a770ac3 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1fdb7eaa drm_prime_init_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20645642 drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20b37c60 drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22fbe6d8 drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23acf4cc drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23d112dd drm_pci_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23eccc48 drm_rmmap_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2471a8c4 drm_unplug_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25fe6fe3 drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x264f5b88 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29ad006c drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29da5a7f drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a942ab2 drm_mm_insert_node_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2cc6e8a2 drm_prime_destroy_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d80be4d drm_mm_init_scan +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2dce0942 drm_framebuffer_unreference +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e043dce drm_vblank_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7a4300 drm_rgb_quant_range_selectable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2eb54ed3 drm_agp_bind_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f0b064f drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f6fcc14 drm_get_connector_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x309c98c0 drm_mode_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x30b595c0 drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3204b5a5 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x334010f2 drm_mode_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36744350 drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x369bb73b drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36f91ef3 drm_mm_clean +EXPORT_SYMBOL drivers/gpu/drm/drm 0x37f991b1 drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38a4f7ae drm_format_num_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38c67b8f drm_core_reclaim_buffers +EXPORT_SYMBOL drivers/gpu/drm/drm 0x391ab139 drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ac1fef9 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ae7b2d0 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b595a69 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b9d009a drm_format_plane_cpp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3bc6d51a drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3bfb99df drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d13b88f drm_bridge_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d4b8108 drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3dbb1fca drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e1d83dc drm_bridge_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eb37b9d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3f5cb7b9 drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3f77602b drm_mode_group_init_legacy_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3fa13c42 drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x41389e5b drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x41cb569d drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43384bd9 drm_buffer_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x440b13a8 drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x465ffb01 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x46af9bfe drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x478aad02 drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0x498ba779 drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x498dcb5e drm_ut_debug_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49fabf0d drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c511235 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d8cb0a8 drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4dd17e51 drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ea1f5a2 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ef045e3 drm_select_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50bb2936 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e28c07 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0x51aa78c8 drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x51eb51e7 drm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x526f6f71 drm_rect_calc_hscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x53721dd6 drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54ea5766 drm_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x569fd266 drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59f4af9b drm_idlelock_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5a2c7645 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d7318dc drm_global_item_ref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e5e95de drm_pci_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e6921c2 drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5ee59bc9 drm_agp_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5fa68cbc drm_pci_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5fe2705e drm_core_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6090be61 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x629c05e1 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x637dc692 drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x643e0187 drm_sysfs_connector_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x65d6b3b0 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6613326b drm_getsarea +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66803841 drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0x68253e78 drm_crtc_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x68f5f50d drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6900d335 drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b1fbeaf drm_get_last_vbltimestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b6d7375 drm_timestamp_precision +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6ca7ce85 drm_calc_vbltimestamp_from_scanoutpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cc3c29e drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cee2e42 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e1e73d3 drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x70a60fbe drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x70e218a6 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71190dda drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x73540ccd drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75399cbd drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a4e7297 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7b66d8bf drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d98a014 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80d156f2 drm_pci_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80e87eb8 drm_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81b0c79e drm_agp_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81ba930c drm_mm_init_scan_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81e773e4 drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x82ee8280 drm_dev_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8333dec1 drm_addmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x838c0284 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83913470 drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x84ec84a0 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x863bd898 drm_addbufs_agp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x892245f6 drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x894c107b drm_rmmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a099d7d drm_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c86938c drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d47b873 drm_agp_unbind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8de13715 drm_format_vert_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dfb019d drm_buffer_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8eff9111 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f51d074 drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f669a78 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f7df3a7 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x921c45de drm_agp_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x92e68d17 drm_vblank_post_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x947b9dd1 drm_platform_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x94f71107 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9745d638 drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9972db48 drm_rect_calc_vscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a4ba37e drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b430e5c drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9ca7ae15 drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9cd14de5 drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d39b6e5 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d70fc2a drm_rnodes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9eccfe56 drm_mode_hsync +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa102dbf0 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa15412aa drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1f4e9e6 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa28078b2 drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2c72846 drm_ati_pcigart_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa37a846a drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3a02e8c drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa429ebcc drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5dbd572 drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8bb2f00 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa96acfcb drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac70291d drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad535322 drm_mode_create_dirty_info_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae45e900 drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafb0cb6f drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafda1396 drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0e7d222 drm_ati_pcigart_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0f24485 drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb1c86c3b drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb312033e drm_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4420715 drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5540008 drm_global_item_unref +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb572a9f0 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb69dd30a drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb95beb55 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xba8a51ad drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbaf18dd2 drm_mode_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbba56624 drm_compat_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe001c53 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2ea84f0 drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc315bc8d drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc36f7455 drm_core_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc3c70b18 drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4000f9f drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc414c422 drm_vblank_offdelay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4caf0b4 drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc53d8607 drm_sysfs_connector_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f7cc11 drm_vma_offset_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca45efbc drm_format_horz_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcafcff0b drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcc6aa4b0 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcca2c97b drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcca5a9b8 drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd0fc417 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0xce4a537c drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcec158f0 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd0aa3a1a drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2335101 drm_fb_get_bpp_depth +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd35d4408 drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd57c30f1 drm_mode_connector_detach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6a10bfc drm_global_mutex +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6c73428 drm_agp_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd7e07e70 drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0xda23b6bb drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdafd3acf drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb694f07 drm_get_encoder_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbb5a9f5 drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbe9d89e drm_framebuffer_reference +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd84bf5d drm_core_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2ef97e4 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe407aee1 drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe5129e96 drm_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe54f841c drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe5cca1f5 drm_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6f46e6e drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6f78cd9 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7197773 drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea029405 drm_addbufs_pci +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea6a23f3 drm_edid_to_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee302db0 drm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xef5992b2 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefc9d827 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefdf9b69 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf04f7751 drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf08d712a drm_mode_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1950e23 drm_pcie_get_speed_cap_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1bd15b9 drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1bd60d4 drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf219f21d drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf446a0e2 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf4e5dd0f drm_agp_bind +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6225d37 drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf638eae4 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6d3a423 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6ddd32d drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf8635ec6 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf881406b drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfa4324d0 drm_idlelock_take +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb497216 drm_mm_insert_node_in_range_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd063935 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfde33b99 drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe4a68c7 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffc6c87a drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffd92536 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffe28055 drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0781b6b7 drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x078875a1 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x098e47d2 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0d4e7328 i2c_dp_aux_add_bus +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0e5e8a0a drm_fb_helper_fill_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f96ec70 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x163251c8 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1ea26c7e drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34871adf drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x37476e4d drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x404cf7d3 drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x421ddeff drm_fb_helper_single_add_all_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x428dbbc2 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x448461e9 drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4960d447 drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4a41c7a7 drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x524a2330 drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5b2bf63e drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x64b9b084 drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x65b7fadc drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6681c38c drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6dcc2d4f drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x711a004a drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7ef84a83 drm_fb_helper_fill_fix +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84e924ba drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8e407f5d drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92e07427 drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x935b73ad drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9b0ce3d4 drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa13ba223 drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa77858bb drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8d6809d drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xae9dd75b drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb82f7a0c drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbbaaebed drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc8eae7b5 drm_fb_helper_restore_fbdev_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd763a848 drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xee151c10 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf334130e drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf43855f9 drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x0b7bd635 drm_get_usb_dev +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x49e63fc3 drm_usb_init +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0xc1df766a drm_usb_exit +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0327be06 ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x05df388c ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x068f6860 ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0d775da5 ttm_mem_io_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0e95fb17 ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x105261aa ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x12486eed ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x15691814 ttm_bo_del_sub_from_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1e4b4ecb ttm_agp_tt_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1f463d56 ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1f78684a ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x24097561 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b54aa9a ttm_object_file_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2c41d806 ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x338118fc ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x37b6ff32 ttm_object_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4234542e ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x427573d1 ttm_fbdev_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x485a5bc0 ttm_ref_object_add +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4b6d3f5f ttm_bo_add_to_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4e8dd264 ttm_bo_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4ff69d18 ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x53b7fe00 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x564e1aee ttm_bo_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5a8fdfea ttm_vt_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5ba451e1 ttm_bo_synccpu_write_grab +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5e56be2d ttm_prime_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6052860c ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6063fee5 ttm_mem_io_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x66f34597 ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x678c9634 ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x78b7d2a3 ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x79a313a8 ttm_bo_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7d55da85 ttm_read_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7e7c955a ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80d86f0e ttm_object_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8110e4ba ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x84a13931 ttm_write_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x880a15ad ttm_base_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x886cf055 ttm_mem_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x89a443de ttm_write_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8d14adbf ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x90cb2c50 ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x93386ecb ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94894449 ttm_base_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9955c5b6 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x998e45c0 ttm_ref_object_base_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9b60458b ttm_agp_tt_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9e5a434d ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9efeff6c ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa2a129fd ttm_suspend_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa37994e8 ttm_mem_io_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa3f1a588 ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa591f9d3 ttm_bo_synccpu_write_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa73de2a9 ttm_vt_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaf13faa2 ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb06e0352 ttm_agp_tt_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb0c116fa ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb83c6470 ttm_lock_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb86d5ce2 ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbddc6852 ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc4f6aa1c ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc5f0c2da ttm_read_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc7907afd ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc9308a26 ttm_mem_io_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcd4cdfc0 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xce6e43a8 ttm_base_object_lookup_for_ref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd24ef8df ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7f51742 ttm_suspend_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd8edb115 ttm_base_object_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd9597b10 ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd9e24ea4 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe55dcf2c ttm_mem_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xeb1e9a21 ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xedacd115 ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf833075f ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfbc2c5ec ttm_object_file_release +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x0903c239 vid_from_reg +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0xef1c781c vid_which_vrm +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x854928ee i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0xfca35c46 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0xd1c704fe amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x3e438a05 st_accel_common_probe +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x785dce37 st_accel_common_remove +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x0c302d01 hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x578dde3c hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x62c2eb0d hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x7547a140 hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xcab4a080 hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x7e17375e hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xb8f43405 hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x30a0b543 st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x39f8c297 st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x3d7dcd5f st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x4aea4c8a st_sensors_check_device_support +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x60e16319 st_sensors_sysfs_set_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x7d411859 st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x877e48b7 st_sensors_sysfs_get_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xa30f5078 st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xaa3b7c6f st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd5200526 st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xda7aef3e st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xdff4744d st_sensors_get_buffer_element +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xe34efd81 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xe78f2faf st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xf4e3dec5 st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0x87a5e391 st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0xecb8a07e st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x27967db6 st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x57451e60 st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x5612993c adis_enable_irq +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0xb316cca8 adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/industrialio 0x011c6d7a iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0x055c83a7 iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0x1193b455 iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x19a51d20 iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x31d045f4 iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0x400a2666 iio_buffer_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x5c5093d8 iio_buffer_read_length +EXPORT_SYMBOL drivers/iio/industrialio 0x62228a14 iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0x69f070ba iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x707a830a iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0x7bc1cfe1 iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0x7e2e91f7 iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x969d3d62 iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0xaac8351e iio_buffer_write_length +EXPORT_SYMBOL drivers/iio/industrialio 0xb1196c2a iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xb49f3db2 iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0xc014dac7 iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0xc2dfcec5 iio_buffer_show_enable +EXPORT_SYMBOL drivers/iio/industrialio 0xc3978ff9 iio_buffer_store_enable +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xe03c51e8 iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0xe5febd08 iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0xea59e7d4 iio_buffer_register +EXPORT_SYMBOL drivers/iio/industrialio 0xf454ede4 iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x483d0b33 iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x6b8b03bc iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x445be5ba iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x793164a1 iio_kfifo_free +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x3ceb8897 st_magn_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x71715f9a st_magn_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xa81aba53 st_press_common_remove +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xb9da36c4 st_press_common_probe +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x049ace30 rdma_addr_find_smac_by_sgid +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x04b8b6d7 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1c3c0ad3 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1ea5767b rdma_addr_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x273f4cca rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x32a8402c rdma_addr_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x446fd7c9 rdma_addr_find_dmac_by_grh +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x59252c9d rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0xbef89f90 rdma_copy_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x27126cc9 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x384ac998 ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x60495b1b ib_send_cm_apr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x6328904c ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x682b4e33 ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x687753b5 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x8e679a95 ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x94f71685 ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9aca7870 ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9f3cb802 ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xa6a1fde0 ib_send_cm_lap +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xbb4ace5c cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xd4da9030 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xdb8e6b04 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xe3ef18d5 ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xe9e9dcda ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xec49b100 ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x00a000ef ib_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06c82fcf mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x08efa2ef ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0b0f0a74 ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0bb4334a ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c1b9ac1 ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x11a0c54d ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1499d50c ib_alloc_fast_reg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14d98c2f ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14f84918 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1662ea80 ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x171f99f1 ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x17bb1695 ib_query_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e38403b ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e491a04 ib_unmap_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22f3cf93 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2b538130 ib_dealloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2eb5f684 ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ed6e386 ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x34a76d4c ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x38eb133c ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3a02a262 ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4545e392 ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x45c39a77 ib_query_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4bb8622e ib_destroy_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50dbc447 ib_flush_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x534e29c8 ib_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x53f60a3b ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5c4b3eaa ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5c8c5785 ibnl_add_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61628f97 ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6dae446e ib_dereg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e030e26 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f231828 ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7458606e ib_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x779301a3 ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x77f00309 ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x78fdfe8e ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7aa0ef02 ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7aac7417 ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x80d31b49 ib_destroy_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x82b8e51b ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x87c8b75b ib_init_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8a967129 ib_alloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8b21c27a ib_destroy_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90535161 ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x93c84961 ib_create_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x94fe7916 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9fa0e374 rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa432baf6 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa5519fd8 ib_reg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa76c6350 ib_create_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa782a3b6 ib_get_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa7c9d285 ib_rereg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa873c66d ib_find_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac217df9 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xad926b60 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae0fc4bc ib_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb93d221a ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbaf8843c ib_free_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbb06dd22 ib_get_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbb722c81 ib_dealloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbce92080 ib_alloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc32b59ff ib_destroy_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc4020eb5 ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc654812a ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc67f14a5 ibnl_remove_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc67fd8a1 ib_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc97b41cb ib_dealloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xce3aa947 ib_fmr_pool_unmap +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd0320850 ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd0f1ef7d ib_destroy_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd109f7c6 ib_fmr_pool_map_phys +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe0216841 ib_modify_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe112d340 ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe24a10e3 ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe559b581 ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe57fa608 ib_get_dma_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe9383d9b ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xea280113 ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xec4688ed ib_alloc_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xec95c3dc ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf11e9f58 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf6283ad3 ib_create_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf6a5aa8b ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf792524d ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf8e7dbaa ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfa087bd5 ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfa7d2231 ib_resolve_eth_l2_attrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfc150956 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x2030b072 ib_process_mad_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x2e837bed ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x47d404a6 ib_register_mad_snoop +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x662fea5c ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6f077fcf ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x73a1198d ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7b5d4b7a ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7ec50df2 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7ed4554e ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x8b217c6f ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x90abe335 ib_redirect_mad_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x946d5d27 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xab923452 ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xae093d3f ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xf49a5417 ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x0a77a6fa ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x21a98784 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x22f07253 ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x2f4f2f36 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x5328d7a6 ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x576fdbac ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x5b4c429f ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x714f0ccc ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x91440cad ib_init_ah_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x9a1cd50d ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xa1223289 ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xddc330e7 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2569d757 ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x52a6ce77 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7971c00e ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe350f2aa ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x0ba33d07 iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x0d332bee iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x6d8d7f8a iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x7d2f997b iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x80d1bfef iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xd112bcd2 iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xe2cda9b4 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf5fdaf1e iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x04c9fbba rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x052bddd4 rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x0f52d13e rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x3182d656 rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x41288065 rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x52c02c07 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x531f38ad rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x58efd4bd rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x5f8c472a rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x69dd449f rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x6c69e54f rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x6e59545d rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x789a8eb1 rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x879c66e9 rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x8934533c rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x96bfa629 rdma_set_ib_paths +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x98591022 rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc02b9330 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc2cb0188 rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd48d0f02 rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xfaa3ee0d rdma_resolve_addr +EXPORT_SYMBOL drivers/input/gameport/gameport 0x119a414c gameport_start_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x2f634676 gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0x61f82b54 gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x8332ceca __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x9b740755 __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0xc18a6204 gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0xc6678a09 gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xf21ba92e gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0xf272c098 gameport_open +EXPORT_SYMBOL drivers/input/input-polldev 0x09e7b439 input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x5aadfb67 input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0x87600177 input_unregister_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xb7dd9bbe input_register_polled_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0x3b0b3f7b matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x18a38628 ad714x_remove +EXPORT_SYMBOL drivers/input/misc/ad714x 0x3597f293 ad714x_disable +EXPORT_SYMBOL drivers/input/misc/ad714x 0x6e9552ab ad714x_probe +EXPORT_SYMBOL drivers/input/misc/ad714x 0xdd098356 ad714x_enable +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x892d76b2 cma3000_resume +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x89d9444e cma3000_exit +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x995e035e cma3000_init +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xca3f100a cma3000_suspend +EXPORT_SYMBOL drivers/input/sparse-keymap 0x243f9094 sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0x3c514205 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x6ccafbd8 sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0xb3c16fef sparse_keymap_free +EXPORT_SYMBOL drivers/input/sparse-keymap 0xc0460d96 sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0xda92b5e7 sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x631a55e6 ad7879_pm_ops +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x97f83edf ad7879_remove +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0xa03ca38c ad7879_probe +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x04403fcf unregister_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x14f2aa5a capi20_get_version +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x15a8452a detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x173cbe9d capi_ctr_suspend_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x1776714b capi_ctr_resume_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2b8eab1f capilib_free_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2baa6586 capilib_new_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x31c24aa4 capi20_isinstalled +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x43ea15a0 capi20_register +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x46bf37e5 capi20_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x47d3fc51 capi_info2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x50b33ca4 capi_cmsg2message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x5fd77a2b attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6057c6f3 capi_message2cmsg +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x62e32d43 capilib_data_b3_conf +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x71e8d5ba capilib_data_b3_req +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7292ab34 cdebbuf_free +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x72a25a72 capi_cmsg2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7a33596c capi20_get_serial +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7e6f1307 capi20_get_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x873c3189 capi_ctr_down +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x8f699913 capilib_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x969b24e3 capi20_put_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9f823278 register_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xaa165d27 capilib_release_appl +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb19fda8d capi_cmd2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb60e5e5f capi_cmsg_header +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xc15f7282 capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xcdd46c65 capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe19a11ac capi20_get_profile +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xed061606 capi20_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xfd552f7a capi_message2str +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x1b569ad5 b1_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x30a70de9 b1_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x3588026f b1_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x3a4dddc4 b1_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x5913386d b1_getrevision +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x61bbac75 b1ctl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x6d34156a b1_load_config +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x764cdc69 b1_loaded +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x85f09690 b1_irq_table +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xa4c64be2 avmcard_dma_free +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xa6873b06 b1_load_t4file +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xad1ba66d b1_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xc75699ed b1_free_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xca06aabd b1_parse_version +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xdfd28376 b1_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xe8cea950 b1_alloc_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xf6a638bb avmcard_dma_alloc +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xfa10fee4 b1_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x0b5b0f99 b1dma_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x1d3191e1 t1pci_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x5f80fb46 b1dma_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x82261cbe b1pciv4_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x8582bcfc b1dma_reset +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x9214d967 b1dma_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x9b6185cc b1dmactl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xbb66a45f b1dma_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xcfb0c2b0 b1dma_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xd6f9f1ea b1dma_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0x29562993 b1pcmcia_delcard +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xaec3240e b1pcmcia_addcard_m1 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xea620116 b1pcmcia_addcard_m2 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xf14bf8b1 b1pcmcia_addcard_b1 +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x2974ead1 DIVA_DIDD_Read +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x7ab59853 proc_net_eicon +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x430c911d mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x7ce3e841 mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x8722ecc0 mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xb12a66ad mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x6d2fefd2 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0xb8375a1f mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x07f4f2ce hisax_unregister +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x148f0c99 FsmFree +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x7f29ce36 FsmInitTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x9366ca58 hisax_init_pcmcia +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x93a64734 FsmChangeState +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x9df0cd27 FsmEvent +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xe227344e FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xee93522c hisax_register +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xf0a16657 FsmNew +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xfc27303b HiSax_closecard +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xff2db2cf FsmDelTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x3a1ecf4f isacsx_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x3f3b323a isac_d_l2l1 +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x48201737 isac_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xac980034 isac_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xc376db12 isacsx_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xc6a121e4 isac_init +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x24a21140 register_isdn +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x5620e656 isdn_ppp_register_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xf461c0e0 isdn_ppp_unregister_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xfa06820f isdn_register_divert +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x3b71e4fc isdnhdlc_decode +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x59cc8a7e isdnhdlc_out_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x8ee38862 isdnhdlc_rcv_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0xfd9d4c09 isdnhdlc_encode +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x1316c2c3 bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2348cc3c mISDN_FsmFree +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x392f8d5f mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x42c7017b recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x4ce26130 dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50fac4a8 mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x54451388 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x5f8156e8 recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x611d5ada mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x614ede30 mISDN_FsmAddTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x73aaeeb4 bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x883567b6 mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8a4e99fb mISDN_clock_update +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x96309324 mISDN_FsmDelTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x97847663 create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9a45b0b9 mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9f53f747 mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa08109a9 mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xaa41dd3e get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb36aa82d mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb7cf7bb4 get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb91bb5d6 mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3a7f384 mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3c539d7 recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xca3a8d45 recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd285995f mISDN_clock_get +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd5145151 mISDN_FsmEvent +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd5d2dfc3 recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd7dd731f queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xde9f3bae mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe87943cf mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf9e7832f mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x01087af0 mISDN_dsp_element_unregister +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x60721da7 dsp_audio_law_to_s32 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xa215f1b2 dsp_audio_s16_to_law +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xb98308d8 mISDN_dsp_element_register +EXPORT_SYMBOL drivers/md/bcache/bcache 0x13a50bad closure_trylock +EXPORT_SYMBOL drivers/md/bcache/bcache 0x29b07b6b closure_wait +EXPORT_SYMBOL drivers/md/bcache/bcache 0x4085b787 closure_sub +EXPORT_SYMBOL drivers/md/bcache/bcache 0x6b821627 closure_put +EXPORT_SYMBOL drivers/md/bcache/bcache 0x9cac60e3 closure_sync +EXPORT_SYMBOL drivers/md/bcache/bcache 0xa805922a __closure_lock +EXPORT_SYMBOL drivers/md/bcache/bcache 0xe3c17af1 __closure_wake_up +EXPORT_SYMBOL drivers/md/dm-log 0x0b0cdceb dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-log 0x6ccacde3 dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0x8ff21394 dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0xb6b8a6df dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x02a31430 dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0x25e79c68 dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x441b0a9b dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0x6f5d6b4e dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0xe0d754e4 dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0xf302e6fe dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/raid456 0x50bab614 raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x032288fd flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x0e610e12 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x2b1c8d40 flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x39947973 flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x3fbc11ed flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x42b2ff2f flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x8d1ede3c flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x8d654fcb flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xcb22c2db flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xd1874477 flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xd9450ceb flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xf3097085 flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xfd36f6ad flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x434459d0 btcx_riscmem_alloc +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x495e4b0c btcx_calc_skips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xad2fe38b btcx_sort_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xb1be99c0 btcx_riscmem_free +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xc368f8e6 btcx_align +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xcda0ded2 btcx_screen_clips +EXPORT_SYMBOL drivers/media/common/cx2341x 0x12969cdf cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0x1ca0c084 cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0x2f25eee2 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0x3db8be82 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cx2341x 0x488a2f69 cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0x54f554e2 cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0x5b88faf6 cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xab00440c cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc184ec1e cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf76ce95 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf8b77a4 cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0x70f32899 cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0xb85ee34d tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/common/tveeprom 0xf790605f tveeprom_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0034a4c9 dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0b0ce98f dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0bdf4191 dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0cf9c723 dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x17523ce7 dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1e8fd8bb dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2457fbfc dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x245e133f dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x27ea1eeb dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2989cfdc dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x32706276 dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x359f474e dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x403c645f dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x528b1c25 dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5c06997b dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5c0ea535 dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x61af049e dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x70af1058 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x74a5a698 dvb_filter_pes2ts_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x78db694b dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7f4f9b54 dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80e3832d dvb_filter_get_ac3info +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x85a5e7d3 dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x989231c3 dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa0669b7c dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa3178da2 dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xabe5ea72 dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xac4ca1b0 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xaf6751c4 dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc5e5dc03 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xcf589e8c dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd68a099e timeval_usec_diff +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd8f7184c dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdf3449d1 dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdfe9478a dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe2a5ff24 dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe5ae8707 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xec8c36c7 dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf28e7431 dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf616a698 dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf826deb0 dvb_filter_pes2ts +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf8f4bfcb dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf987a84e dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfeffddaa dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/a8293 0xa3a7dd28 a8293_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9013 0x75860052 af9013_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9033 0x25863e13 af9033_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0xd792d122 atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x2737f553 au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x5dde8e9c au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x73ae8b0d au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x8c739064 au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x9eb6b795 au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x9f6c3b9f au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xac8af070 au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xafdcdb15 au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xfd7de8ef au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0x8786c74a au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0x315b9076 bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0xfcf9fe14 cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0x05d96781 cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0xb88143fa cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x27572be8 cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0xb2450d03 cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0xdc74df94 cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x14529b82 cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xbbe4c5c5 cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0x690715f2 cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x18e44e77 dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x674829e5 dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xac78040a dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xd37feccf dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xd9451e36 dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x037d492c dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x17d533cd dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x24f708c9 dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x273ce6cd dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x2aa54de3 dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x2c6f97ca dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x33676e21 dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x56c89106 dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x6ecaa8da dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x75eb1168 dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x923df523 dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xae6bbc7f dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb4283041 dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xe1ede612 dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xe413694b dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0x2a6893a9 dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x1c0feed0 dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x2d5ec286 dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x37378870 dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x3e9e4169 dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x7845e93e dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xf1c11fa9 dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x6b3c642b dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x873f17a3 dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xd4c2ac36 dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xf293e861 dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x15cbf18e dib7000p_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x203be937 dib7000p_get_agc_values +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x464335a7 dib7000p_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x48256657 dib7090_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x56fc5ce9 dib7090_slave_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x89adb01d dib7000p_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x8b6b47f2 dib7090_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x98694ae6 dib7000p_set_agc1_min +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xa0ab36ce dib7000p_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xa466b1eb dib7000p_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xb02f91e8 dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xc3f3bd4c dib7000p_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xc699456d dib7000p_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xc8f60aeb dib7000p_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xc96cf98e dib7000pc_detection +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xd091267a dib7090_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x04bf96c0 dib8000_pwm_agc_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x42069d22 dib8000_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x57ace765 dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x61a70141 dib8096p_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x6532613d dib8000_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x6c5facc6 dib8000_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x6caf55b1 dib8000_remove_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x6f8b0883 dib8000_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x74d6245b dib8000_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x8dea3fa5 dib8000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x9d0cb635 dib8000_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa41e7c6b dib8000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa79a43aa dib8000_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xb9ecf4d8 dib8090p_get_dc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xd70cbf92 dib8000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xde41c8b8 dib8000_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xe355574e dib8000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xe8211ebc dib8000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xeee0ced4 dib8096p_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x24e999fb dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x6b336ffc dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x7902681c dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xad3ad91c systime +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xc04cb494 dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xc3076601 dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x45f71b82 drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0xff58b468 drxd_config_i2c +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0x6e7ff20c drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0x99cfb41a ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0x871b8477 dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0x22710770 ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0x91845ecd isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0x3922142a isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0xc3d66eb0 isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/it913x-fe 0x9b80b55e it913x_fe_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0x15bfb35a itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0xd3cb2669 ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0x74193f8e l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0xdd31df23 lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0xb00687ff lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0xf3275d18 lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0x758f550f lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x2b8dc588 lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x6434f8c2 lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0xf9eadfae lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0xf2633b95 m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0xc3d013df mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0xe7a01b8a mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0x78fe94b7 mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0x4a9a16e0 mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0x11e38f1d nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0x94689805 nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0x909963fa or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0x2b3363c8 or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0x5826c61d rtl2830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0xa54efe1d rtl2830_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2832 0xcfcf9e4b rtl2832_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0x771bc022 s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0xca478628 s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x87e49200 s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0xc9df80f6 s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0x8722b984 s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0x60b3f56f si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0x0b123307 sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0x938ecadc sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0x583488a0 stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0x9482bfb7 stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0x81edd17f stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0x39ef884e stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0x2ebe1eac stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0x4b6c682f stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x05ce2414 stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0xdd0d0429 stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0x96d91e70 stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x926a0653 stv090x_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0xa5e20861 stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0x73e48519 stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0xeffc7cb5 stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0x8ff4307d tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0x537c1ce2 tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0xc952650f tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x2bbffb8c tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0xfbd36898 tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10071 0xb867703b tda10071_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0xcbfab409 tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0xcbcb8f5f tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0xfde3c929 tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0xaf4edfe1 tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0xab8b4f95 tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0xf4005f52 ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0x0e9334fa tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0xd876d45f ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0xcd477fcd ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0x6d05c0e6 zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0xb7915f9b zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0x575ef187 zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x2cd2812c flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x5a86e0ec flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x5ebf56e0 flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x9bb6754a flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xa4e051c5 flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xe397146f flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xf623efde flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x7d20f528 bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xafd331e7 bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xc824413b bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xd5d0bdef bt878_num +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xdf874c00 bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x11dc4b6d bttv_gpio_enable +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x2d26adea bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbbaa3865 bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xf2e0c22f bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x17b736a7 dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x18e33ed1 rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x4f1abca9 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x6ae45398 dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x6eb3ca5c dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x8b97bb93 write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xaf973fd7 dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xc59d7b54 dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xc7aebe61 read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe94b8c9c dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0xfec48a42 dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x370b0da3 cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x5a600e68 cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x6f1e74dc cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x8d446471 cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xa318c023 cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x194dc75e altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x3fcf8b99 altera_hw_filt_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x9247b72f altera_hw_filt_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe7f0e33a altera_pid_feed_control +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x0bddf586 cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x5736a55a cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x7749d66a cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x784853c3 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x94645ad0 cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xb6d62e8f cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xc5d38741 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xcac34dd7 cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x4e16d258 vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0xd26cebed vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x53bad86a cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x581bfae9 cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x8ce9a850 cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x8ebef452 cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x0b380a58 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x4abf737c cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x5c29b04e cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xa347c29a cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xc1045bbe cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xca5cd909 cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x073829e6 cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x12914ed1 cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x129ea89c cx88_free_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x261dc40a cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x26510dc9 cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x3b77f0e8 cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4216fc84 cx88_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x50595195 cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6141c8c5 cx88_tuner_callback +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6982e8ef cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7642ed3c cx88_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7abadf19 cx88_risc_stopper +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x80e3d234 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x904b8696 cx88_audio_thread +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x9e33ce59 cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xa0e236ee cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xb98f4b56 cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xbb77d9ba cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc262d9e5 cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc90a1430 cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd29e1afd cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xe77ff84c cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xedb79b45 cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf0db5599 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xfb529639 cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xfc76fd5c cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x0191f657 ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x1b424e82 ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x26cc2ae6 ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x38e80aa1 ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x646a3241 ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x724d937c ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x7d2b201a ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x922aab0e ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xac93231d ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xbb81357a ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xd05c9644 ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xe09eef59 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xe142ba04 ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xedb5c1c3 ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xf42d61a9 ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xf87b641e ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xfd76fb50 ivtv_api +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x04e83446 saa7134_tuner_callback +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1211df5d saa7134_devlist +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x19f5b1bb saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x2ce49ec5 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x3304b935 saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x40f38806 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x49cf521e saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x5569c372 saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x5edd6f66 saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x61433871 saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x6e069e36 saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x73039031 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x7c9bc5b6 saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x9403a057 saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xa6d7e8d4 saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x1f6732b2 ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xc3e4c127 ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x03342eaf soc_camera_host_unregister +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x2e123930 soc_camera_power_init +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x3c0a36df soc_camera_xlate_by_fourcc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x46094d1a soc_camera_apply_board_flags +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x5d96f9a7 soc_camera_power_on +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x7351c42c soc_camera_lock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x778941b2 soc_camera_power_off +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xc3c7bd3a soc_camera_host_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xd914ce48 soc_camera_unlock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x25c52d97 soc_mbus_samples_per_pixel +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x2863728e soc_mbus_image_size +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x5f3e3558 soc_mbus_bytes_per_line +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xa9546115 soc_mbus_find_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xc8b28da5 soc_mbus_config_compatible +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xfe2c3a07 soc_mbus_get_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x4bd0a861 soc_camera_calc_client_output +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x90086311 soc_camera_client_g_rect +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0xbb3542b3 soc_camera_client_s_crop +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0xe7fbfd66 soc_camera_client_scale +EXPORT_SYMBOL drivers/media/radio/tea575x 0x15efd394 snd_tea575x_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0x7f6ced2b snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0x9d78efd4 snd_tea575x_exit +EXPORT_SYMBOL drivers/media/radio/tea575x 0xe9382e22 snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x04dca738 lirc_unregister_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x4adac2f5 lirc_dev_fop_open +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x509b2cbb lirc_dev_fop_poll +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x76b0a24f lirc_dev_fop_ioctl +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xaddd0114 lirc_register_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xae34089f lirc_dev_fop_close +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xbad95e59 lirc_dev_fop_read +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xe6c993f0 lirc_dev_fop_write +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xf98a558c lirc_get_pdata +EXPORT_SYMBOL drivers/media/rc/rc-core 0x83916370 ir_raw_handler_register +EXPORT_SYMBOL drivers/media/rc/rc-core 0xf20fa1a4 ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/tuners/e4000 0x402e614a e4000_attach +EXPORT_SYMBOL drivers/media/tuners/fc0011 0xc61dd9b7 fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0xfa6c4ead fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x13eb5722 fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x98bfaff8 fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xccbe2be9 fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc2580 0x9c7f6eae fc2580_attach +EXPORT_SYMBOL drivers/media/tuners/max2165 0x27a3d5cb max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0x41538855 mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0xadf1ce6b mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0x86b2a62f mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0xb8741aea mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0xbf0fba1d mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0x559b397c qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18212 0x7d9730d8 tda18212_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0xd5faa405 tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tua9001 0x2644e6e6 tua9001_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x0cb4b189 tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0xc9cf737a xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/tuner_it913x 0x51296f37 it913x_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0x3040c1b6 xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0x03295a9e xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x3cdad422 cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xb389cf85 cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x22956c4b dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x5019c9b0 dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x5770dc2f dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x68e8d86c dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x71174bad dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xb93cce26 dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xb9a58266 dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xd78242f3 dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xfdf2661f dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x48a2de45 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x491a1eaf dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xb289bac7 dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xc9e99a61 dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xd1472aa9 usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xd7e72465 dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xdd790615 dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x13e247e0 rc_map_af9005_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x4b8f8a3a af9005_rc_decode +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xd4e288db rc_map_af9005_table_size +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x2fd69d71 dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x4c071e33 dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x4d5ac76a dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x84576db2 dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x92098f2c dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x9b45f561 dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb47559e0 rc_map_dibusb_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xcb6f20a9 dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xd20cf6e3 dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xd76ecd6b dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xd96be624 dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xfff5b1ec dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x4afc5dcd em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0xb59a0e23 em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x20426928 gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x266af79d gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x2e464d91 gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x3b8c88de gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x5b397e93 gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x78c0ff7f gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xbc41cf99 gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xedfcada4 gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x1e785a20 tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x2415a1fe tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x4e8ee15e tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x02764c88 ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x29b14d42 ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x42c8e001 v4l2_ctrl_next +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x4adaf0f3 v4l2_ctrl_query_menu_valid_items +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x53c9394f v4l2_ctrl_query_menu +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x5f96a661 v4l2_ctrl_check +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0xabe27502 v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x4a6d03e4 v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x5a545733 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xbd900a74 v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x07dcf4ab videobuf_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x13048ea5 videobuf_dvb_find_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x6419af89 videobuf_dvb_register_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xc1757da3 videobuf_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xe1cd4e41 videobuf_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xeac95bb8 videobuf_dvb_get_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf2-core 0xbcf62932 vb2_querybuf +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x013c3085 video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0d5933b6 v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0dc22711 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x112e5279 v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x115b88cc v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x140e371b v4l2_of_get_remote_port_parent +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x166759bd v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1987de90 v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x28052802 v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2d0b9cc9 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2fbfe936 v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x31da81e2 v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x32e742a5 v4l2_ctrl_add_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x35e0ee24 v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x36847d11 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x369b8e96 v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x38d44202 v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3b329c74 v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3db7f213 v4l2_of_get_remote_port +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3e0aac49 v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3f45a66f video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x46010f6c v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x495426ee v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4e174cc6 v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5b7786df v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x61d9f9aa v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x62d2cac9 v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x635e0afb v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x668dee13 v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x68bbf6f9 v4l2_subdev_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x68c1c782 __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6aa3e9ea v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6fdc57ca v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7524df1e v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x76b4168d v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x77aa1f86 v4l2_subdev_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x77eae4f2 v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7a3cd015 v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7e5186d2 v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7f923f2a v4l2_of_parse_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x81ff5b98 v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x83193c7e v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x84e75ade v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8542c804 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x86a17da8 v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x86c55810 v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x877cfe0c v4l2_subdev_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x87ba36f0 v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8e1e1626 v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x94d5b5dc video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x95a74c27 video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x98b302c2 v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9af0a58f v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa10f7c8a v4l2_subdev_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa3702ed5 v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa40645ec v4l2_subdev_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa4bb97f2 v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa7d4fdda video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xadbd3f5e video_usercopy +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xade72f75 video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xae182beb v4l2_subdev_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb0688b02 v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb1d8cd40 v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb90cbedf v4l2_of_get_next_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbac4a225 v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc394b82 v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc12cf8f8 v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc8a0ab77 v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xce173fe3 v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xceafa8c3 v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd6a93e1a __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe6fce6f2 v4l2_ctrl_merge +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xeb24e0e6 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf1119f62 v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf16ac794 v4l2_subdev_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf572dcc1 v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/memstick/core/memstick 0x06270352 memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x2afdd836 memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x42e51e4d memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x44d2ae04 memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5d820a02 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x9936ae04 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa0edd097 memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xacd0ecd0 memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xb48f3731 memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0xd66bf7f8 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0xdc07e67e memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xe125a3c1 memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xee4636d1 memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0xfd89e266 memstick_add_host +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x07c9994a mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x17e86769 mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x26076faa mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x265f693a mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x27758776 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2b489c02 mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3678e667 mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3a774db9 mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3f623cb3 mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4526289b mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4787c916 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4bf042a9 mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x53a88512 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5ace267a mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5eef3573 mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x68e99ffb mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6a6b866d mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6a9f3c32 mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6eebb448 mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x72d618b4 mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x78a8707b mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7c48e9a4 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x91ecb6df mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9ece77d5 mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa7a92a3e mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb10595a0 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb7677a8d mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc0e69f82 mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc47c22e8 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc727621d mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc991b5af mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd9a92a75 mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe9af517e mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x07c3aac7 mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1236cc55 mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x12f99a28 mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1363c37c mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2273c42f mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2547a2ba mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5c5dd814 mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x6235df48 mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x6a330459 mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x73b717e8 mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x78d1f27c mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x79219b52 mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x843b03d2 mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x920c9d7f mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x93582b45 mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9f9abef3 mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xb5fa5f5c mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xb87e2b0c mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xba856cab mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xbf3cae9c mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd069f7c3 mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd952e601 mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xdd590c0e mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xeab6fbe3 mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf3f38ec1 mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xfdf1109d mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xfe2f5100 mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x04b33906 i2o_driver_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x077a0ed6 i2o_driver_notify_device_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x0a539cf0 i2o_cntxt_list_add +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x1f823a7e i2o_parm_field_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2a2bf077 i2o_msg_post_wait_mem +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2a843bef i2o_dump_message +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2ad12455 i2o_cntxt_list_get_ptr +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2c317fe3 i2o_driver_notify_controller_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x3a381437 i2o_driver_unregister +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x45619121 i2o_iop_find_device +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x4f43de88 i2o_driver_notify_device_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x60d1a3c7 i2o_parm_issue +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x80c22d57 i2o_device_claim_release +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x8510708c i2o_parm_table_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x8ce9c7e1 i2o_driver_notify_controller_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x962f1c12 i2o_cntxt_list_remove +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xa442b261 i2o_exec_lct_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xacee5ebe i2o_status_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb4c00dcf i2o_controllers +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xbe98298e i2o_cntxt_list_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xc91e9fcf i2o_msg_get_wait +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xdb33088a i2o_device_claim +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xe983feab i2o_event_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xe9d11413 i2o_find_iop +EXPORT_SYMBOL drivers/mfd/cros_ec 0x6c194dff cros_ec_register +EXPORT_SYMBOL drivers/mfd/cros_ec 0xad38db7d cros_ec_prepare_tx +EXPORT_SYMBOL drivers/mfd/cros_ec 0xc9a65e8c cros_ec_remove +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xc1168d22 pasic3_write_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xdc4b9169 pasic3_read_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0ac853fc mc13xxx_irq_request_nounmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x1a1bf78f mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x275554ee mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x2dc0f24a mc13xxx_irq_ack +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x4d70f17c mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x627d03bf mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x77065e74 mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x7ca2a871 mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x839e9569 mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x8552e891 mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x88833cd7 mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x93c05118 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xaa6bdf5c mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/tps6105x 0x2701e060 tps6105x_mask_and_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0x2cc08b69 tps6105x_get +EXPORT_SYMBOL drivers/mfd/tps6105x 0xe4c5de74 tps6105x_set +EXPORT_SYMBOL drivers/mfd/tps65010 0x02d4ad0f tps65013_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0x0c6ad2cf tps65010_config_vdcdc2 +EXPORT_SYMBOL drivers/mfd/tps65010 0x28485130 tps65010_config_vregs1 +EXPORT_SYMBOL drivers/mfd/tps65010 0x33739de7 tps65010_set_vib +EXPORT_SYMBOL drivers/mfd/tps65010 0x9fd44c69 tps65010_set_led +EXPORT_SYMBOL drivers/mfd/tps65010 0xb14080cc tps65010_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0xd5bb106d tps65010_set_vbus_draw +EXPORT_SYMBOL drivers/mfd/tps65010 0xe99b3f36 tps65010_set_gpio_out_value +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x1a3f569d ad_dpot_remove +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0xfd5556b1 ad_dpot_probe +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x49163704 altera_init +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x3cd9e647 ssc_free +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x8a262051 ssc_request +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x0e9755b9 pwm_channel_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5a8b82f9 pwm_channel_handler +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x5d5c2951 pwm_clk_free +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x6a5e1f70 pwm_channel_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0x73330c97 pwm_clk_alloc +EXPORT_SYMBOL drivers/misc/atmel_pwm 0xeb7f2c6f __pwm_channel_onoff +EXPORT_SYMBOL drivers/misc/c2port/core 0x38087cf7 c2port_device_register +EXPORT_SYMBOL drivers/misc/c2port/core 0x67b6b5d2 c2port_device_unregister +EXPORT_SYMBOL drivers/misc/ioc4 0x233308bd ioc4_register_submodule +EXPORT_SYMBOL drivers/misc/ioc4 0x8421f8d1 ioc4_unregister_submodule +EXPORT_SYMBOL drivers/misc/tifm_core 0x024a8c76 tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0x089b9843 tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x2ea9a79e tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x341705af tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x4601ca5f tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0x61c3162d tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x6cf144cd tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x7a1e4090 tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x9c036cd7 tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xa8c2ec46 tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0xc57177dd tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xf3d3f448 tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0xf6575746 tifm_free_device +EXPORT_SYMBOL drivers/mmc/card/mmc_block 0x0865b6d9 mmc_cleanup_queue +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0xcd25bbf8 mmc_spi_get_pdata +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0xf0dc87be mmc_spi_put_pdata +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x4a02d999 cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x512a2ea5 cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xd0e07b08 cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x0d9bdd8e unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x1e23b6f7 do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x846cf787 map_destroy +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0xa71390ad register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0xfb43b3fd mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0x443a01ad lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0x192e6238 simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0x0e59ac29 mtd_concat_create +EXPORT_SYMBOL drivers/mtd/mtd 0xefe4fea2 mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/nand/denali 0x53e89235 denali_remove +EXPORT_SYMBOL drivers/mtd/nand/denali 0x925bb530 denali_init +EXPORT_SYMBOL drivers/mtd/nand/nand 0x543506f7 nand_scan_bbt +EXPORT_SYMBOL drivers/mtd/nand/nand 0x861900bf nand_unlock +EXPORT_SYMBOL drivers/mtd/nand/nand 0x986fbc68 nand_scan_ident +EXPORT_SYMBOL drivers/mtd/nand/nand 0xa11cf64d nand_lock +EXPORT_SYMBOL drivers/mtd/nand/nand 0xd17ef8be nand_scan_tail +EXPORT_SYMBOL drivers/mtd/nand/nand 0xfa43c519 nand_scan +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x70097aa0 nand_bch_free +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x7aeea966 nand_bch_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0xd961b8e7 nand_bch_init +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0xdbdd80cf nand_bch_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x3132ee65 __nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x4c423b91 nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x7da042ec nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xb4b94377 __nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0x57a31e57 nand_flash_ids +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0xa336feb7 nand_manuf_ids +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x29e01211 flexonenand_region +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x2f4b72ad onenand_default_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x3a1c3af9 onenand_scan_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0xbc73e51e onenand_addr +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x0c9fb317 arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x25ab6fd9 arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x58a7f931 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x75d2d4ab arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x85a25df9 arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xa7e0012b arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xb6a44148 arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xbc027bf9 arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xd7763a80 alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xe96d6e61 arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x022a1e32 com20020_netdev_ops +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x958687c7 com20020_found +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xb096210d com20020_check +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x09c63948 ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x3364eecd ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x67bc9238 ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x7556bd35 __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x9c96e933 ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xa912d647 ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xb4a10637 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xba68c165 ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xd592766c ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xd5bbb4f4 ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x32ff5389 cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x3e2bfe32 dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x3faa8a90 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x4df9a613 cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x61306894 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x643c727d cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x77871dd7 t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x7903d9a4 t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x8fcdfd66 cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x90f4b7e3 cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xbc62feea t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xbfda9492 t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xc1b4f728 cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xc3cc3862 cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xd8d62c82 cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xde17325a t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xeb8e620c cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x07fc84db cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x10fa151e cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x122ca800 cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x1ac95137 cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x211d1c11 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x26d8175e cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x27b36e29 cxgb4_enable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2f358e54 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x434b9989 cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4c2e3573 cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x518f3e2d cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x56f205f0 cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5710de2e cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6808c453 cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6db68fba cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6e2f6ec6 cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x75aaafec cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x7ac74220 cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x834e7bbc cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x85f182eb cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x96ac860e cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa593b9d9 cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb5347768 cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xbcf49249 cxgb4_disable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc4f4c775 cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc5730e3f cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd00e5a36 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe5ab16b4 cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf55dff29 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x0e712340 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x4b8301d8 enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x4f650da7 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x79e393fa vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9196d804 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xa82b5bc6 vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xa81a1847 be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xbab62e22 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xc553c1e5 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/freescale/gianfar_driver 0x79f28897 gfar_phc_index +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x039cf05e mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x08ccd35b mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0f61799d mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x10434c93 mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1fa089af mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x30be46e7 mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3106e9af mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x312a1edd set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x373e88f4 mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x392d22d1 mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3a75e1c0 mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x40ca393d mlx4_test_interrupts +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x50362844 mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x65577d30 mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6b3bd9fc mlx4_set_stats_bitmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6d15a3eb mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7e9430fb mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8971da48 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x96cd4e33 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa5de640a mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xac2987c7 mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb0128e96 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xec705b2c mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xee5b7410 mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x00d359cc mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x04b25107 mlx5_core_query_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x11ac8061 mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1bebf0c3 mlx5_dev_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1c9bff82 mlx5_core_dump_fill_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2d9c4c49 mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3770f70b mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3b4117e0 mlx5_dev_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4013da61 mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x54434e0c mlx5_core_arm_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x663e5c28 mlx5_core_create_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7d63b22d mlx5_cmd_comp_handler +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x88f7bd50 mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8cb593ba mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9b9a89f8 mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa05f657b mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa943dfef mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbf03336d mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc42e4860 mlx5_core_get_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd318228a mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdb5f894b mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe064772d mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe5fe018c mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe882c040 mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf531751b mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf81ffbbc mlx5_core_destroy_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfbf53799 mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x13a4820d hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x29cab656 hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x539d17c7 hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x94be6d9d hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xf709c96e hdlcdrv_register +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x0eaab4a4 sirdev_raw_read +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x43311a0d sirdev_write_complete +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x67de70c6 sirdev_receive +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x6feb448b sirdev_set_dtr_rts +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x90482821 sirdev_put_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xa54e96fc sirdev_set_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xb3fdb6f7 irda_register_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xb6754aa3 sirdev_get_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xbc4627ed sirdev_raw_write +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xd36a2323 irda_unregister_dongle +EXPORT_SYMBOL drivers/net/mdio 0x22bce513 mdio_mii_ioctl +EXPORT_SYMBOL drivers/net/mdio 0x43e4defc mdio45_nway_restart +EXPORT_SYMBOL drivers/net/mdio 0x7577f992 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0xa1a29548 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0xb34a7575 mdio45_ethtool_spauseparam_an +EXPORT_SYMBOL drivers/net/mdio 0xc6b1163f mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0xddc98749 mdio45_ethtool_gset_npage +EXPORT_SYMBOL drivers/net/mii 0x0fad15fb mii_check_link +EXPORT_SYMBOL drivers/net/mii 0x1d9d5342 mii_link_ok +EXPORT_SYMBOL drivers/net/mii 0x35b59274 mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0x5e66abae mii_check_media +EXPORT_SYMBOL drivers/net/mii 0x5fb17f61 mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0xa4ac1285 mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0xe45ca521 generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0xfc8a55ab mii_check_gmii_support +EXPORT_SYMBOL drivers/net/ppp/pppox 0x60d21ed5 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xb0ea8433 register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe3b25562 pppox_ioctl +EXPORT_SYMBOL drivers/net/sungem_phy 0xcd75d46b sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x02b5d974 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0x1a4abae7 team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0x225550a3 team_mode_unregister +EXPORT_SYMBOL drivers/net/team/team 0x6fec187d team_options_register +EXPORT_SYMBOL drivers/net/team/team 0x718727c5 team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0x7e42f46b team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0x88626cd5 team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0xc4d81094 team_mode_register +EXPORT_SYMBOL drivers/net/usb/usbnet 0x225524d3 usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/usb/usbnet 0x6e361685 usbnet_link_change +EXPORT_SYMBOL drivers/net/usb/usbnet 0xb6aa7483 usbnet_manage_power +EXPORT_SYMBOL drivers/net/wan/hdlc 0x25c8de9f hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0x2ca1ef13 hdlc_change_mtu +EXPORT_SYMBOL drivers/net/wan/hdlc 0x316ebbc7 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0x3196844a attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x6dafd7d1 hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x74ba62bd unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xbd59e848 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xc7fc28d2 hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0xcb70ca7d register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xdaa646db hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0xeb6271a5 alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x897e46d4 i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/airo 0x3c33751f stop_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0x88d0a4a3 reset_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0xbb62a94e init_airo_card +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x0e974e00 ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x1cbdf2a7 ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x319c6026 ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x33fb8ce0 ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x3e5d0d01 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4e2481d5 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x53358ce3 ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x55ebd6b3 ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x7cdce2fe dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x80a0b279 ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x828fd5c2 ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x82f94ef1 ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xcc4374c1 ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xf9411999 ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0a985734 ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x2f719cb4 ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x4611dd6a ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8246be6c ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x895f9dc2 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaf096710 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb6d032d9 ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xda39b540 ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xedddc658 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0199ec46 ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0f45f96e ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x27cf1694 ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4c6ddcb4 ath6kl_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4e1380ee ath6kl_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4f9df88a ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x6b2f721a ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x95f434f7 ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xc33318f4 ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xc6fc6ab5 ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xcccf615f ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xcf16b8fe ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xe2bb8b67 ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xfba0076f ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x3255f226 ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x94c83100 ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb561b5ef ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb6ee7d2e ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0cc3f619 ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0d337f07 ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x11caaa62 ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x12c4d43a ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x12dbc643 ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x176bc19e ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x17bcb693 ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1a6aa751 ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1c7e2428 ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2259e515 ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2330eb50 ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x238d102b ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x23ba8261 ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x26a55255 ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x26c65fc5 ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x27700248 ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x29ac25c1 ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2c8d86a0 ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2cd66714 ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2f8ca71f ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x338e87ab ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x33a6efff ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3838c14d ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x38461981 ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x38fbfba3 ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3a4e5e4b ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3f661bb0 ath9k_hw_cfg_output +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x44031913 ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4810a141 ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x496123bc ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4ae44089 ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4bca3300 ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4bfa16d6 ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4d896a7a ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4f13038a ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4f9b07b1 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4feaf628 ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x59e73699 ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5a706a04 ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5ac34b49 ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5d4215a4 ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x600a9ec9 ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x61157b20 ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x64ab9ab2 ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x64db8487 ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x664fda95 ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7254df31 ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x72ecad13 ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x753c2657 ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x779c2583 ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7d5500bb ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7daa2cd9 ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7e3392f9 ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8390b6fd ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8493fba5 ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x84b4f844 ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8b92115d ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8c13bf40 ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8e89c1e7 ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9af10f25 ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9c645f87 ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa1844a41 ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa74b482a ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa87adeeb ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaac9c6b4 ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xabdc9b92 ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xae454a40 ath9k_hw_cfg_gpio_input +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaef534fe ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb776efda ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbb3ba116 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbe79a5a5 ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc1c203b1 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc1cfcab1 ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc34ca4d2 ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc65eb334 ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcfe065e9 ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd1a361d3 ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd4e2e41e ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd9456d18 ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdc552fb2 ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xde341613 ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe0444683 ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe4150494 ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe4e9cf66 ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe6580a18 ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe6dd234b ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe84471d9 ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xea89f5c5 ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xed878552 ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xee25b43e ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xeea18831 ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xef244d26 ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf07919a1 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf1a9297f ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf3be970a ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf408bf2e ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf4c01681 ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfe76f057 ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/atmel 0x0f58122b atmel_open +EXPORT_SYMBOL drivers/net/wireless/atmel 0x1daf4738 init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel 0xdf25c42c stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0x8b7766f7 brcmf_sdio_remove +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0xbb1a095b brcmf_sdio_probe +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x03b8c7fb brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x14625435 brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2dc227f8 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2defaf4e brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x596f99d4 brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x59b59e08 brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x7494f804 brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x8680d5cf brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x9264903c brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xa3f332d2 brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xaf80487c brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xc0c7fd0c brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xe4c24b54 brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xebee080a brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x0a0629a4 hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x1043e879 hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x1723ac32 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x2e9c2b80 hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x47eef4f5 hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x4ad31478 hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x5eec28ec hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x71f26da6 hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x7393b45e hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x74fc83ec hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x78e190ce hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x83e197a7 hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x83f21b1e hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x893b1157 hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x896c0c07 hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x9c17a369 prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x9e866769 hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa12ad27f hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa34fe5f7 hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xaed1c3eb hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xaeed6fbb hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb2a945e0 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb9e09ce0 hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc719ce86 hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe17859e5 hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe48f1daf hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xf99b1452 hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xfd82094a hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x0df63d73 libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x0f3a84cc libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x14fd1284 libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x158dc8c9 libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x246b6929 libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x43245d92 libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x70e20cf3 free_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x79159df5 libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x86d4161a libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x8b1b5fff libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x8e0c15ba libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x9f10dd74 libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xa683a840 libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xb0cfccad libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xbcd0fc75 libipw_change_mtu +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xc443189c libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xd1639be3 libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xd2602a0c libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xdc4a95b7 libipw_rx +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xde26354f libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xf4b0a313 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x05fc8088 il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x083ed3ae il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x08682453 il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x08cf8b45 il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x09436f3c il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0efb8953 il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x12b309fc il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x133a522b il_init_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x13756193 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x14eafef5 il_update_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x150a769f il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x17f8fca8 il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x187f0478 il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1a8a2fd6 il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1eb2562f il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x203d77f8 il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x24134c11 il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x27ceee87 il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x29698589 il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2ab20a62 il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2ea33cb9 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x31c58a27 il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x330a197a il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x363d86d7 il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x378a0a3e il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3eac8d4a il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x40c760be il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x43578587 il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x43c8a020 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x444954e7 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x460737c7 il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4aa39103 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4bf49a5a il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x50cb7025 il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5326ec01 il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x564c6740 il_debug_level +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x58a77964 il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x58e4d7a6 il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x594de6db il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5988503d il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5b71f5b3 il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5c35c42f il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5d70e0ba il_free_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5df90e35 il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x60c4de7f il_apm_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6101737f il_leds_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x65aa7557 il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x66b7e060 il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6a4f2c06 il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x73f87e7d il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x76a64f4b il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7933645f il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7af9f6d6 il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x84815355 il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x85fba427 il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8848af5f il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x88c25561 il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x90ae7d0e il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9222ba80 il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x959f1364 _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x96585202 il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9cbd4c05 il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa1ff5064 _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa2f47868 il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa5200ca9 il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa53611cf il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa79f7dac il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xacd8dbd9 il_set_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb00a8b38 il_force_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7c8a2c9 il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xba02aabd il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbceb3b6c il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc39cf12c il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcc23e47f il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xccf5aaab il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcfd3a319 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd3f65ad0 il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd58ee6a2 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd6b14fc9 il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd938c505 il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdbbe8fc3 il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xde506688 il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdf605908 il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe01bcbea il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe3116a49 il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe435493a il_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe5a30a19 il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe84c4ab0 il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe935ec87 il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xea2ce6dd il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xeac1cc08 il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xeb9b66cd il_set_rate +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xec069405 il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xed79b187 il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xeefd50ea il_mac_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf129af5b il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf501278b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf61c232e il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf8d664c3 il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf9eb2cfe il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfd3705db il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xff166c9e il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x08dd8699 __tracepoint_iwlwifi_dev_rx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0c50fa2b __tracepoint_iwlwifi_dev_tx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x1ecc5465 __tracepoint_iwlwifi_err +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x2f7b7e55 __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x3b9d00d6 __tracepoint_iwlwifi_dev_ioread32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x675bcb86 __tracepoint_iwlwifi_info +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x779dd6f5 __tracepoint_iwlwifi_dev_iowrite32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x85c1bb84 __tracepoint_iwlwifi_dev_iowrite8 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x8de37664 __tracepoint_iwlwifi_dbg +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x954eb7a7 __tracepoint_iwlwifi_crit +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x963a6f8a __tracepoint_iwlwifi_dev_ucode_error +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xb8f7026f __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xe2dcc8de __tracepoint_iwlwifi_warn +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xf9ec6bdd __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x142d2d00 free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x22c0787b orinoco_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x2734b33b orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x35cd5d63 alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x3915fd7f orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x3c4ecded orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x4aec13e2 orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x556d2924 __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5dea5bf1 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x603d2e63 orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x6552ffe3 orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x9a1968b0 orinoco_open +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xa10827d2 orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xa42b6e66 __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xbac332fa orinoco_down +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xc2484a9a orinoco_get_stats +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xcc3e932d orinoco_up +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/btcoexist/btcoexist 0xa1cc1d48 rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0983c949 rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0b451403 rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0ccd78d6 rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0f7f57e2 _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1203420a rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x14241777 rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x210276e5 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x2b731419 rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x2dd3f8ea _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x346660da _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x34fe38c3 _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3907da26 rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3b50a454 rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3b6a632c rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3d8d6b5f rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x52b82b0f rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x56e464e7 _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x5c0f4a84 rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x70fda0c1 rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x78be8a5e _rtl92c_phy_dbm_to_txpwr_Idx +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x837e0ee0 rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x895a8c65 rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8e00f7e8 rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x927f7d87 rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x95ebcc2f _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa09e07a9 rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa0ee5901 _rtl92c_store_pwrIndex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa4b5310b rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa7af6b4a rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xaabdbe66 rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xae5def99 _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb1dbced3 rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb3314d48 _rtl92c_phy_calculate_bit_shift +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xbb5b7d1c rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xbe6c1b66 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xbf0e4def rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc0d61cdf rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc1cf3a8b rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd382f18a rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe4a37138 rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe71d81f7 rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf8c749be rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x6ed7adf0 rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0xfc563c79 rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x89ac22cb rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x8febd26c rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x9c698f7d rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0xa2b1be26 rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x0bff73cb rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x1c3ce807 efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x207fbb70 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x3512555b rtl_ps_set_rf_state +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x353b00a2 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x39db869a rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x4b15dfa8 rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x5585db5a rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x6196c45a rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x6dcb3916 rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x7407a04e rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x78d3e563 rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x79188a02 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x89e4f43d rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xa7215856 rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xb04b39ef rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xca9fce36 rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xcb1bc9dc rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xd6a51e96 rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xdb35daa8 rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xee77b4cf rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xff22ab28 rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x0d92f36d wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x1bbb5fde wlcore_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x3e42b137 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x5e33d806 wl1271_free_tx_id +EXPORT_SYMBOL drivers/nfc/microread/microread 0x7519f2da microread_probe +EXPORT_SYMBOL drivers/nfc/microread/microread 0x8431e6cc microread_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xad4d2f00 pn544_hci_probe +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xe07ec820 pn544_hci_remove +EXPORT_SYMBOL drivers/parport/parport 0x0a09d526 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0x105c5caa parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x1f231264 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0x216d020f parport_read +EXPORT_SYMBOL drivers/parport/parport 0x2e8c7560 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x34c2c51c parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x34f93c24 parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x352979cc parport_register_device +EXPORT_SYMBOL drivers/parport/parport 0x3d670b5b parport_release +EXPORT_SYMBOL drivers/parport/parport 0x4227a809 parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x42858fb6 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0x44bfa97a parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x636fe32a parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0x6b8c2f75 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x6e79ef30 parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0x6e7f3804 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x79af6782 parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0x7c96c760 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0x7f629641 parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0x9e8c538b parport_claim +EXPORT_SYMBOL drivers/parport/parport 0xa345abc5 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xab2e1804 parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0xadd6ece5 parport_write +EXPORT_SYMBOL drivers/parport/parport 0xb08d6a71 parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0xb160a878 parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0xb7f79360 parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0xcb2bdd45 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0xd07aef04 parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0xdb2215de parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0xef5fab64 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport_pc 0x136aaa93 parport_pc_probe_port +EXPORT_SYMBOL drivers/parport/parport_pc 0x58a0fda2 parport_pc_unregister_port +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x07dc4672 pcmcia_request_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x1599e36a pcmcia_loop_config +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x17802aae pcmcia_get_mac_from_cis +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x17dd74b0 pcmcia_write_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x1d80cb62 pcmcia_register_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x27dcf2a6 pcmcia_unregister_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x4e0e8984 pcmcia_loop_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x5d963fdd __pcmcia_request_exclusive_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x5f9da72f pcmcia_enable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x66e1fbd7 pcmcia_disable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x742f5665 pcmcia_parse_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x9ab4db97 pcmcia_dev_present +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xa48ebf0c pcmcia_get_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xac134e8d pcmcia_request_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xb2ece268 pcmcia_read_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xd6e827c5 pcmcia_release_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xec5d9a32 pcmcia_map_mem_page +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xece7da94 pcmcia_request_io +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xf495a672 pcmcia_fixup_vpp +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xfc7bb4b4 pcmcia_fixup_iowidth +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x08ced9d8 pcmcia_socket_list_rwsem +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x0bc12e95 pcmcia_get_socket_by_nr +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x1668a114 pcmcia_reset_card +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x212db8d2 pcmcia_socket_list +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x2be59eba pcmcia_unregister_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x5dd63e5d pcmcia_put_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x70f224d9 pcmcia_parse_uevents +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x8783152f pcmcia_parse_events +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x8b999fc3 pcmcia_socket_class +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xa3ab0da4 pccard_register_pcmcia +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xa912d25e pcmcia_register_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xb66fe645 pcmcia_get_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcf97f3bd dead_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x415489ed pccard_nonstatic_ops +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0x6f99838a pccard_static_ops +EXPORT_SYMBOL drivers/pps/pps_core 0x47956b31 pps_event +EXPORT_SYMBOL drivers/pps/pps_core 0x7c162bf2 pps_register_source +EXPORT_SYMBOL drivers/pps/pps_core 0xbf8e2e23 pps_lookup_dev +EXPORT_SYMBOL drivers/pps/pps_core 0xf335443f pps_unregister_source +EXPORT_SYMBOL drivers/ptp/ptp 0x084bc0d9 ptp_clock_event +EXPORT_SYMBOL drivers/ptp/ptp 0x14899f7b ptp_clock_register +EXPORT_SYMBOL drivers/ptp/ptp 0x6bf411dd ptp_clock_index +EXPORT_SYMBOL drivers/ptp/ptp 0xc2e19573 ptp_clock_unregister +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x66c802d6 rproc_add +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x69d0f4be rproc_alloc +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x731b3c8c rproc_del +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x7e768059 rproc_report_crash +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x86c80d40 rproc_put +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xa86137b8 rproc_da_to_va +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xc601cd16 rproc_boot +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xc7b75bea rproc_shutdown +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xce21afbb rproc_vq_interrupt +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x12f9e29f fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x389386ca fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x7238233a fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x77ea7596 fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x845d391f fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x8a8ccc77 fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x8d6a1a15 fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xa280f05e fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xbe108b37 fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xd0a70b95 fcoe_ctlr_destroy_store +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xeee3fd2a fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xf3622d9f fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0008e9db fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x05b04494 fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x09c08844 fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x106dce31 fc_change_queue_type +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1c75ca9d fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1f9d5371 fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2487ae02 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x257add77 fc_rport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2df59fd9 fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3049417e fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x34202faf fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x342262fa fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36e5fbaf fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3bb1452b fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4218535b fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4a3cbf69 fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4af161f8 fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x535490cd fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x56dc1457 fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5daadda0 fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5ddd96e2 fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x63071a01 libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x63fa8533 fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6fc2ddc8 fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x74dc3f95 fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x86971f9d fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x892b3bbd fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9067d0e7 fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x942e73c4 fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x999e3eb0 fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9b888b7d fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9c97c317 fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa4de4b7b fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xaa9b6846 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xaff8a233 fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb37b1720 fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb78869b9 fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb88d0c14 fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbafda1c3 fc_change_queue_depth +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbe0d77e5 fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc06745cf fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc0fcd714 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc1d01280 fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcd2e595e fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd26b1bd0 fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd5731161 fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd5d64645 fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe3d8e2b0 fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe8e8307f fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf3a9b309 fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf8630d51 fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf9ca1011 fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfd686528 fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x625042cc sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x652056c9 sas_wait_eh +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x7ed94e72 sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8a87e724 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xb878f606 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x2250c66e mraid_mm_adapter_app_handle +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x512c956d mraid_mm_unregister_adp +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x9ef3d113 mraid_mm_register_adp +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x01c5d52e osd_req_list_dev_partitions +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x01e0804d osd_req_read_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0b5b623d osd_req_list_partition_collections +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0c17edb1 osd_sec_init_nosec_doall_caps +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x14422f1b osd_req_remove_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x15da0d69 osd_req_create_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x34cbe7e2 osd_req_decode_sense_full +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x3ff4b4a6 osd_req_add_set_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x41ac48b8 osd_req_create_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x42d26238 osd_req_read_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x442baeb4 osd_req_remove_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x47dfe0fe osd_execute_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x566d2c57 osd_req_format +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x5d34e4f7 osd_req_write_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x63f52c00 osd_req_add_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x70bfb9f3 osd_end_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x75ef0a29 osd_execute_request_async +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x79235af5 osd_req_read +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7c76934c osd_finalize_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7d57850f osd_req_decode_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x892168ad osd_req_add_get_attr_page +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x94bbd12e osd_req_list_collection_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x96a34ec3 osd_req_get_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x980292ff osd_req_flush_obsd +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9b27084e osd_req_flush_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xa55c5a1c osd_auto_detect_ver +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xace63e6d osd_dev_fini +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xb15bfd41 osd_req_list_partition_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xb18c218c osd_req_read_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc85b4a4e osd_req_set_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd4fbc132 osd_start_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd9ceb762 osd_dev_init +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xdc546b46 osd_req_flush_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xe1939eb0 osd_req_write_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xe4258132 osd_req_write_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xf193d6d5 osd_req_write +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xf85e8695 osd_req_flush_collection +EXPORT_SYMBOL drivers/scsi/osd/osd 0x2513153b osduld_put_device +EXPORT_SYMBOL drivers/scsi/osd/osd 0x58753455 osduld_register_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x5fc48609 osduld_unregister_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x9d41c4a7 osduld_device_same +EXPORT_SYMBOL drivers/scsi/osd/osd 0x9e4496cf osduld_path_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0xbfb7fd85 osduld_info_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0xca1dca51 osduld_device_info +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x185811ad qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x3c5b053a qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x41bfc2f7 qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x766723a7 qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x884f4f55 qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xa2d5592b qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xb8d1a7d3 qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xbe866bab qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xc02fac35 qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xe25b63ab qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xfbaa49a4 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x071ed791 qlogicfas408_queuecommand +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x1f55cd70 qlogicfas408_ihandl +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x3fd8cd71 qlogicfas408_detect +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x4fd3cff3 qlogicfas408_abort +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x86244f5f qlogicfas408_bus_reset +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x8eb7ff94 qlogicfas408_biosparam +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xa6f9920a qlogicfas408_disable_ints +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xe76b3b20 qlogicfas408_get_chip_type +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xf2b95199 qlogicfas408_setup +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xf7e637d7 qlogicfas408_info +EXPORT_SYMBOL drivers/scsi/raid_class 0x84014a8f raid_component_add +EXPORT_SYMBOL drivers/scsi/raid_class 0x8fa7db38 raid_class_release +EXPORT_SYMBOL drivers/scsi/raid_class 0xba5615e3 raid_class_attach +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x00f82fe1 fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x10300101 fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x18059c3a fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x24677acd fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x4392d3f7 fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x4d32c64f scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x6f156600 fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7954b1ea fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x985b47ab fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xbbfd0fde fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xced2327e fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xf18f81c4 fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xfa82243e fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xfe8d1b42 scsi_is_fc_vport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x01ad07cf sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x23e3fc88 sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3c50f1d0 sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4180f823 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x470e4a40 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x515c21e8 scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x55bc00cf sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x57ca9763 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x58e5109a sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5c1b906f scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x640d12e1 sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x64638ef8 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6cb04f0e sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x74747f67 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x94f20955 sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x956377c2 sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x9672a07d sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x97e27cfa sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa09ad930 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa1fd6e9c sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa2d87f06 sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb3c55a61 sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc49fc6d2 sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc5318a15 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc824e1ac sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xdc068bf9 scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xdeb319ed sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf32f6024 sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3db992e6 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x4492a93a spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x4e9fd59c spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x559fd813 spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x80f4e5b8 spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x49780fef srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x8690e912 srp_rport_put +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x8f4cf46b srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xc2bd5ee0 srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x15ea8f40 ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x78e51ee4 ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x8840223e ufshcd_runtime_resume +EXPORT_SYMBOL drivers/ssb/ssb 0x1439f1a0 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0x229b38c3 ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0x2a29eca4 ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x2e320043 ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x2ed88f52 ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x370d6165 __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0x6e45094e ssb_bus_pcibus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x707d5ebe ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0x858faf35 ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0xa6e6e286 ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xb34da368 ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0xc0512e0f ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xc69c6bc8 ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0xd1364500 ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0xd210582c ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xd481192b ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xd71a882c ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0xe1258cd3 ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0xe1851e65 ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0xe7599562 ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0xeb63bd9b ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0xed450094 ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0xf3f15d4d ssb_set_devtypedata +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0x3b0201a7 fwtty_port_put +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0x6afd25de fwtty_port_get +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x060b4321 adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x5515a0a7 adt7316_remove +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0xc56d4939 ade7854_probe +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0xfaf26314 ade7854_remove +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0264d470 lnet_extract_iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0363b57a lnet_copy_iov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x08abacd3 lnet_copy_iov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0bce7eef lnet_counters_get +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1366b7ac LNetSetLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x19670622 LNetNIInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1b191752 lnet_msgtyp2str +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1d9527a2 lnet_kiov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1e3797b8 lnet_finalize +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1fe16fd5 LNetGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x204b8151 lnet_counters_reset +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2aa9953d lnet_cpt_of_nid +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2ac93e90 lnet_connect_console_error +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x33202a6c LNetGetId +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3605d56a lnet_copy_kiov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3c779ee0 LNetPut +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3f4f5b46 LNetNIFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x473ad33b LNetDist +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5811a721 LNetInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x58a1ca89 LNetMDUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5fee352c lnet_acceptor_timeout +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x61f784b2 LNetClearLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x64cdea3a LNetCtl +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x6f7be171 LNetEQGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x722c76e5 LNetMDAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x76af65d3 lnet_connect +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7d59a7fe LNetMEInsert +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x854ab844 LNetEQWait +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8a3064f2 LNetSetAsync +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x95e6c3a1 lnet_register_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9ae1e989 lnet_net2ni +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9cb5ae27 lnet_extract_kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9de986d3 LNetEQAlloc +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa3d61f8d lnet_iov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa8a26914 lnet_set_ip_niaddr +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa8c2760b LNetFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa414970 LNetMEUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa9b477e LNetMDBind +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb2bae6d0 lnet_unregister_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb4babe55 the_lnet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb75f7953 LNetEQFree +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xba5566d2 lnet_acceptor_port +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xbf0760a2 LNetMEAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xc57c6294 lnet_copy_kiov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xc9b5d204 lnet_create_reply_msg +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xd448b56f lnet_parse +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xd687ce81 lnet_notify +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xed54ad94 lnet_set_reply_msg_len +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf1b316bf LNetSnprintHandle +EXPORT_SYMBOL drivers/staging/lustre/lnet/selftest/lnet_selftest 0x078db139 lstcon_ioctl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x1c4bb5f9 LU_OBF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x375e6f8d LUSTRE_BFL_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x4bd69e61 seq_client_get_seq +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x65c1e13c seq_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x7503dd45 client_fid_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xa9e74150 client_fid_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xaa0072d2 seq_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xae61cff5 LU_DOT_LUSTRE_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xc997a02f LUSTRE_SEQ_SPACE_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xcb6c6c27 seq_client_alloc_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xecee2727 LUSTRE_SEQ_ZERO_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xf398135f seq_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x05bef7e5 fld_client_add_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x273ea152 fld_client_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x553dfa37 fld_client_del_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x7815fb52 fld_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x99df7f96 fld_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xa2cd0198 fld_client_proc_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xe28bb1c4 fld_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x000c507f libcfs_debug_dumplog +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x01db5172 cfs_percpt_atomic_summary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x03387ca6 cfs_curproc_groups_nr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x04d3ce6a lbug_with_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x06401e01 cfs_hash_is_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x069f9bb2 cfs_wi_schedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x07aea7ef libcfs_sock_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08917712 cfs_hash_for_each_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08ada613 libcfs_console_backoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0b4b1546 libcfs_lnd2modname +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0d1b8a30 cfs_percpt_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0de6c369 cfs_cap_lower +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0e4820ab cfs_percpt_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0f5eff79 cfs_percpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x117c8a95 cfs_cpt_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x123b6908 cfs_hash_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12426266 libcfs_run_lbug_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12a511e8 cfs_hash_debug_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12c54b77 cfs_hash_findadd_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x15565c7f cfs_cpt_set_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x17ac7833 libcfs_deregister_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x18c503cd cfs_percpt_lock_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1a60d439 cfs_parse_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d41c4c0 cfs_hash_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d5a3928 cfs_timer_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1e8cdb47 cfs_race_waitq +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x254292f4 libcfs_sock_abort_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2663147a __cfs_fail_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x277e62bd cfs_hash_for_each_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x27b6d3ba cfs_ip_addr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x29aafd0c cfs_hash_hlist_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2a08d4c0 libcfs_sock_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2a641ef9 cfs_hash_dual_bd_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2b1e0458 cfs_get_environ +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2dbe54b2 cfs_trimwhite +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2fb7eae8 cfs_hash_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x30986343 cfs_range_expr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3122748c libcfs_sock_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x31fc5082 cfs_crypto_hash_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x335dc9df libcfs_kkuc_group_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x34c1f332 cfs_crypto_hash_update_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x361e82d4 cfs_firststr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x377f93fb cfs_srand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x38828b92 cfs_cpt_unset_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x389ca502 libcfs_debug_mb +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x39fdcd2b libcfs_debug_set_level +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3a62a183 cfs_cpt_set_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3c1285bd libcfs_subsystem_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3d5e6098 cfs_race_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3e5e7727 cfs_hash_rehash_cancel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ea730c0 cfs_gettok +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ef0d90c libcfs_kkuc_group_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3f0d9281 cfs_wi_sched_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4087e2b4 cfs_hash_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x411db754 cfs_crypto_hash_final +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x413056d8 cfs_cpt_weight +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x41ab33a1 libcfs_ipif_free_enumeration +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x42e22feb cfs_cpt_table +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44839bbb cfs_rand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44f07cfc cfs_pause +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x468bace1 cfs_hash_rehash_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x47fdb4d1 cfs_timer_is_armed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x48f163c6 libcfs_str2anynid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x49bfb486 cfs_hash_debug_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4a99af72 cfs_clear_sigpending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4b982291 cfs_hash_bd_peek_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4f1f2fa5 cfs_crypto_hash_digest +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x50345570 libcfs_str2net +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5051b6d2 portal_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x509d38b0 libcfs_net2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x52e9cfc1 cfs_cpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x53b383e4 cfs_cpt_unset_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x54fd9a71 cfs_percpt_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x58a7ee00 libcfs_catastrophe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5946ec2b cfs_percpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5b20921a cfs_hash_for_each_nolock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5c013b81 cfs_expr_list_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5ce62c0e cfs_cpt_table_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d3be65a cfs_crypto_adler32_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d73c3e3 cfs_expr_list_free_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5dce9e80 libcfs_lnd2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x60064133 libcfs_sock_getaddr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62289d65 cfs_array_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62ee94c3 libcfs_sock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62f56738 upcall_cache_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x63b4967a cfs_hash_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x64685fef libcfs_console_min_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6564c55b libcfs_console_max_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x65dd7fe1 libcfs_sock_listen +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x65dd9f0c libcfs_run_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x66136d2d cfs_timer_arm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x67398404 cfs_wi_sched_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x68497dbf cfs_cpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c4cadc8 cfs_hash_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c605eaa cfs_cpt_unset_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c905b5f libcfs_watchdog_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6dfa9ea1 cfs_crypto_adler32_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6e6af71c current_is_32bit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6f928e1b libcfs_debug_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7190502f upcall_cache_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71f662a3 libcfs_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x72f4e5f9 cfs_hash_bd_move_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x75161168 upcall_cache_flush_idle +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x752858fb cfs_cpt_table_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7562cd14 cfs_hash_del_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x771695b1 cfs_hash_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x785b7372 cfs_hash_dual_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a3d49ae cfs_expr_list_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a47b94d cfs_hash_size_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7b0b748a cfs_ip_addr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c73bc4b cfs_hash_rehash +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c7986cf waitq_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7d93cded cfs_cpt_of_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7e6f6485 cfs_ip_addr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7fda989d cfs_fail_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7ffcad5f libcfs_sock_getbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8151c3aa cfs_cap_raised +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x83d795e4 cfs_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x841679dd upcall_cache_get_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x857aaea7 libcfs_register_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x87f3bb87 cfs_hash_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8840f591 cfs_block_allsigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c6be9ab cfs_percpt_lock_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c85e4e6 cfs_crypto_hash_speed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8e61d47b cfs_cpt_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f12bb52 libcfs_log_goto +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f45f10d cfs_init_timer +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x913e6386 libcfs_sock_setbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x91504e8b libcfs_kmemory +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x940ed192 libcfs_stack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x949221dc cfs_hash_cond_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x95620e8c cfs_wi_deschedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x97b0b9bc cfs_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9879b229 cfs_get_random_bytes +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9e420643 cfs_restore_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9f82f712 cfs_trace_copyout_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa1cbf250 upcall_cache_flush_all +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa2b68b2a cfs_array_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa6b9dee6 libcfs_kkuc_group_rem +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa711aec5 cfs_cpt_table_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9088531 cfs_expr_list_values +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9dc74e2 cfs_trace_copyin_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9eae690 cfs_str2mask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xaadf5d8c libcfs_kkuc_msg_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xaaf59b75 cfs_cpt_set_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xab887583 init_waitqueue_entry_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xad019238 cfs_str2num_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb00dfd91 cfs_hash_dual_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb53b5569 cfs_cpt_spread_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb883b006 cfs_percpt_atomic_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbab577e8 cfs_hash_for_each_safe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbada117b cfs_cpt_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb972619 proc_call_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb9cb508 cfs_curproc_cap_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbd5d492e cfs_timer_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbf7a37f1 cfs_signal_pending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc0ea7fc0 cfs_expr_list_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc1708189 cfs_hash_dual_bd_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc1b20836 cfs_hash_add_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2911d96 cfs_expr_list_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2dfd791 libcfs_console_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc39fd2f9 libcfs_panic_on_lbug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc3eb614e libcfs_ipif_query +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc47433a6 cfs_capable +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc49b1c62 cfs_percpt_atomic_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc73ecb77 libcfs_sock_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc77a24c3 cfs_cpt_set_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc9b78bb4 upcall_cache_downcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcb385db9 libcfs_debug_binary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcbab8493 schedule_timeout_and_set_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcc20e694 libcfs_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xccc45639 cfs_free_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcd38904c cfs_wi_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xce1a88f2 libcfs_arch_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf61bacb __cfs_fail_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf678304 cfs_hash_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd0aa642a cfs_hash_rehash_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd0d8d08a cfs_cpt_unset_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd2965f33 cfs_hash_bd_del_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd46225d8 cfs_percpt_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd48d8f72 cfs_hash_dual_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6a52be3 libcfs_printk +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6f1fc60 cfs_strncasecmp +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd7bbf963 cfs_hash_dual_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd7c4f765 add_wait_queue_exclusive_head +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd96f406d cfs_cap_raise +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xde17bb8d libcfs_isknown_lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf2789c0 cfs_curproc_cap_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdfecb98d cfs_block_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdffc951d cfs_timer_disarm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe3bf6897 cfs_percpt_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe6555032 libcfs_ipif_enumerate +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe7b54314 libcfs_arch_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe94553b9 upcall_cache_flush_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xea411f63 cfs_block_sigsinv +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xec1f56d5 libcfs_str2nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeccafa5c cfs_cpt_online +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeceac781 cfs_fail_val +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xedf3a25a cfs_timer_deadline +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeed48ba7 cfs_hash_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xefbf6d86 upcall_cache_put_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf2c02048 cfs_cpt_bind +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf440bb38 libcfs_kkuc_group_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf5e4a175 cfs_hash_bd_add_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8a8644b libcfs_id2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8efb8c5 waitq_timedwait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf94025d1 libcfs_str2lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfacb8667 cfs_hash_getref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfe565fa9 cfs_crypto_hash_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xff0f98a6 libcfs_debug_vmsg2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x8800374d ll_stats_ops_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x9d97e65b ll_direct_rw_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xcd3cde92 ll_iocontrol_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xdec92b1b ll_osscapa_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xf77df9d6 ll_iocontrol_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x27095531 lov_stripe_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x470fac63 lov_read_and_clear_async_rc +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x915eb9ec lov_device_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xa288d560 lov_stripe_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xa7c430aa lov_lsm_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xc3e9c8bb lov_lsm_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x0ecfd3ca lustre_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x180b060c push_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x24e1671d lprocfs_counter_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x2dbb3714 fsfilt_unregister_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x3bcbdc4b lprocfs_stats_alloc_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x427a0b4e l_dentry_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x4d8d6dfa lprocfs_counter_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x750bb335 fsfilt_put_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x8553b369 obd_memory +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x8ff597c0 pop_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xb4f8ee63 lprocfs_read_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xe611dce4 fsfilt_register_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xec33d567 fsfilt_get_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x14a47f31 it_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x9c22b84f it_open_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xb57d8447 it_set_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xf46a886f it_clear_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mgc/mgc 0xdc287f95 mgc_fsname2resid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x00a2fd23 lu_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x00bfe957 cl_page_list_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01665e34 class_parse_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x018efdae cl_lock_ext_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x018fb099 lu_object_assign_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x035852d0 lustre_swab_llog_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x051307b8 class_config_llog_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x057f6d4b class_find_old_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x05fe15ee cl_page_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0649b31b lprocfs_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x065c2402 cl_lock_is_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x06ec234c lprocfs_rd_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x072e0407 lustre_in_group_p +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07610d7a lu_dev_add_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07aa68bb lustre_swab_lustre_cfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0836daca lprocfs_register_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x083942ff class_del_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0880912b cl_object_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x08a781f6 dt_record_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0a7083a6 dt_index_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0ace6da1 cl_lock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b2b650c cl_lock_mutex_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0ba56420 cl_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0e30f89f cl_lock_descr_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0e820283 class_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0ebe7375 lprocfs_seq_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f85f23f lu_context_key_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f9796c6 cl_lock_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fe91547 obdo_to_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1081ef37 cl_io_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x10b319a9 cl_page_list_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11495519 lprocfs_write_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x117f74a8 cl_sync_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11d76703 llog_cat_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x123e5b5b dt_directory_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x13987c71 lprocfs_free_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1447e2a3 cl_page_list_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1455137b dt_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1491dc30 lu_context_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x151406d6 llog_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x16d089e4 cl_page_list_splice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x16f17d15 llog_cat_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17260880 obdo_cpy_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1752b2df llog_cat_cancel_records +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1830eda9 llog_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1866cac1 cl_page_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x18d7d3be class_import_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1963c0e3 cl_env_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1a485c09 cl_env_implant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1a6b18b3 cl_2queue_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1bb135db class_detach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1bd3dd33 cl_env_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1bf029bf cl_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1da9ed5f cl_page_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1dd947d0 lu_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1e62148b cl_lock_state_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1eebcac4 class_exp2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1f691b64 llog_cat_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1f7b97f2 llog_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1fbfffc0 cl_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1ffb26f9 cl_pages_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x210998c9 cl_lock_discard_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x211e36b3 lustre_idmap_lookup_uid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21e0d6cd lu_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x21ee2438 cl_page_make_ready +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x221826f1 class_parse_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2221197a lprocfs_rd_connect_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x222fb9d0 cl_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x225317d8 cl_lock_hold_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x22b50e75 lprocfs_at_hist_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x246089c5 dt_declare_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2547efae lustre_uuid_to_peer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25803f6d lprocfs_rd_num_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25a84317 lu_context_enter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25af5865 cl_page_clip +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25dd9b4f llog_open_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25ef13cd class_export_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x25f3d38d lustre_register_kill_super_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x26c3d11b cl_page_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x275cdc7a cl_env_reexit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2792fa9d cl_io_submit_rw +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x28272908 cl_page_is_vmlocked +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x28784115 class_unlink_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x28c647e8 lu_object_put_nocache +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x29195586 cl_req_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2951e164 class_devices_in_group +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2964e743 cl_req_page_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x297cf5e0 class_handle2object +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x29e14e2e class_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ae1cd79 kuc_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2b6b2c76 cl_lock_extransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2dadfeb3 lu_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2e238179 cl_2queue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2e42fb63 cl_2queue_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2e70b7de cl_locks_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3044400a dt_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x30695018 cl_page_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x307c6edd llog_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x321767cb lprocfs_rd_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32b32c22 cl_object_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32ba7a38 dt_quota_slv_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3327302d lprocfs_rd_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x33c151e3 lu_buf_realloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34384dce class_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34ab9941 dt_try_as_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34d8b46b cl_lock_is_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34fae15c local_index_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x365e4591 cl_page_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x369cbf6f llog_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x373fe60c cl_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3794a6b1 cl_io_loop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37ed6e4b at_early_margin +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37f90c40 cl_page_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38fb0c90 class_match_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x39c8580f class_handle_hash_back +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x39e52b6f lprocfs_alloc_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3aaff2cf cl_io_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ab0c4d2 cl_type_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ad0869a class_config_parse_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3af08e67 dt_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d5bcb2c dt_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d5e0674 cl_page_is_owned +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3da2aa39 lprocfs_alloc_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3eab7bfe LU_BUF_NULL +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3eedeb25 lprocfs_exp_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3f239cb5 cl_req_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3fe06103 llog_cat_declare_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ffe4615 class_exp2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x40120563 cl_object_attr_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x404bd7a7 class_handle_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x41293d5c dt_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x41ca780c lu_object_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x41d9ab5a dt_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4281cc40 class_disconnect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4287f8a1 cl_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43003532 cl_page_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43c323bd cl_page_own_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43e38947 cl_lock_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x442385f4 llog_osd_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44e41abb lustre_posix_acl_xattr_filter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x450ef0d6 lprocfs_single_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x452f559a lu_buf_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x459eb363 cl_page_list_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x466cf2bb llog_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x46ce01b3 cl_lock_modify +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x474ed5bd lustre_swab_ll_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47680d64 obdo_to_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47773b25 cl_2queue_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47a3edc9 cl_page_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47b35f7d statfs_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4808c1d6 lu_context_key_degister +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x481930b3 cl_lock_weigh +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48a78a8c lu_object_find_slice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x48b7379c cl_req_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4902d9ce dt_version_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x494cfb52 lustre_acl_xattr_merge2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x498a3f3c lu_context_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a0f6ea lustre_posix_acl_xattr_2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ac58713 obd_connect_flags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4b864360 cl_lock_closure_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4bf1390b cl_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4bf356ca lustre_idmap_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c190aad lprocfs_find_named_value +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c4108c9 obd_llog_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c4c700b obd_alloc_fail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4cab6306 lu_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4cc7d79f lu_env_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d13458b kuc_len +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d1e06cd cl_page_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4de36f3c lustre_idmap_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ea4dd8c llog_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4f57785e lprocfs_nid_stats_clear_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4f5ce301 lu_kmem_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4f819973 cl_2queue_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50c7fc36 ptlrpc_put_connection_superhack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x51677d44 class_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x52ad3365 lu_device_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x53f0a72d cl_object_glimpse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x544112fa cl_req_page_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5481c51b class_config_dump_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54885f87 ldlm_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54de1490 llog_declare_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x558bec27 obd_ioctl_getdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x56218da5 llog_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x56495809 cl_lock_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x564e9d44 init_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x570d09ae lustre_swab_lu_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x573cd19e lprocfs_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5751874b class_process_proc_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x57db61c3 lu_env_refill_by_tags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x582b013d dt_quota_glb_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x593a0f25 cl_env_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5953bbeb cl_sync_io_note +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x597e8aeb class_disconnect_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x59d08e15 class_connected_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a20d896 obd_memory_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bc022c5 lprocfs_dt_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5c504b15 lu_object_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5c81a345 cl_lock_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5cd1e46e __llog_ctxt_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d34ae0d cl_lock_mode_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d6374d7 cl_use_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e7308fb cl_page_is_under_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e93341f lprocfs_oh_sum +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ed188a9 lprocfs_add_symlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5edfa66b cl_page_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fe490a9 dt_store_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fe97b73 block_debug_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60366c36 cl_lock_unhold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x606e3458 cl_page_list_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60bd8eda dt_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x61fde455 lu_env_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x624ffe24 lprocfs_counter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x627eaecb local_file_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x62e015ef lprocfs_rd_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x62f5eeb4 obdo_from_iattr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631a518d mea_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631fd7b9 lustre_ext_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6333a50a local_index_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x63755602 llog_declare_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6413730a lu_context_key_revive +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x64372afb class_name2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x648a7f66 lprocfs_free_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6505776d cl_conf_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x655c47fe lprocfs_exp_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x665129fa lprocfs_wr_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6734adbd lprocfs_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x675244fa dt_otable_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x676cee3b llog_obd_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x677fd7f9 proc_lustre_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67977b42 lprocfs_remove_proc_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x679c1e0a cl_lock_hold_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67a90622 la_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67dc223a lprocfs_remove +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6890d175 lustre_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x68b580d2 class_incref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69297ff0 cl_page_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69c42114 at_min +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a214a72 lprocfs_nid_stats_clear_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a702ada obdo_refresh_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a923994 lu_object_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a9362a8 lprocfs_init_mps_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6aa2c9f4 cl_page_list_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ad0c929 lu_context_key_quiesce_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6bf1ea76 cl_object_attr_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c8d7b9d obd_export_evict_by_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ce7c23f class_num2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6d784077 class_new_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6da334d4 dt_index_walk +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6eb2732b cl_object_has_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f6049f7 cl_page_gang_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7158dfc1 cl_io_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72ddee4c obdo_le_to_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x73bd0df9 cl_enqueue_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x742559b1 class_unregister_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x74581962 cl_object_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7518f513 class_conn2export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7519f618 lprocfs_init_ldlm_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x752f71a8 class_get_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x754c23da llog_exist +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7550f55f lu_object_find_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x756a77f3 class_parse_nid_quiet +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77a141e5 class_register_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77b9fdc0 local_oid_storage_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77c3764f dt_txn_hook_commit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77d2089a class_name2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77e01ee2 cat_cancel_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7802fcd7 lustre_swab_llogd_conn_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x782b28fd cl_page_unassume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x789796a1 obd_zombie_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x78a5c766 lprocfs_add_simple +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x792dbbc7 cl_wait_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b4fc57b at_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b67b345 cl_page_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7bc12d2a lprocfs_init_ops_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7bd3b2f3 lprocfs_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7c141d12 cl_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7c24b62e llog_init_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7cbaebf2 cl_object_kill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7cc50f90 cl_unuse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7d2fbf0a dump_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7e5d54c4 obd_export_evict_by_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7ea0d75b cl_lock_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7edcafa0 cl_env_reenter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7ee9f577 lu_cdebug_printer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7ef05dbe lu_device_type_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7efdfcd1 cl_page_vmpage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f7d7cd9 lu_buf_check_and_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fad7291 raw_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fe5561a obd_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8031efb8 lprocfs_dt_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x803cf143 cl_2queue_init_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8055561e lu_object_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x806cc497 class_add_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x80bd85d5 lu_object_locate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x80d57f5a iattr_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x80e3221f cl_io_iter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x811b5e89 cl_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x815ab08c lprocfs_rd_u64 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81742d89 obd_ioctl_popdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x823ed358 llog_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x83197bd8 lprocfs_seq_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x831f656c class_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8354398f cl_lock_enclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x83ad3041 lu_site_purge +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x844fe247 cl_req_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8462a6ea llog_osd_get_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8478507d lu_kmem_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8489f086 obd_alloc_fail_rate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x849e5385 obd_update_maxusage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8503c454 lu_buf_check_and_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8544fc1f lprocfs_obd_rd_max_pages_per_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x87b6b876 cl_object_attr_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x883e0983 lu_object_anon +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8861e672 cl_lock_mutex_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8869027d class_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x88b87068 lprocfs_stats_collect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x891054f1 lprocfs_clear_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x893e52ec lu_site_init_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x89537baa obdo_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x895adbd0 class_disconnect_stale_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8a20381d cl_lock_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8a6c7fe7 cl_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8aa2c358 lprocfs_dt_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b5f4057 lu_context_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ba477fc lprocfs_rd_timeouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ba6e479 lustre_swab_lu_seq_range +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8bd233cd cl_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8d4d2830 cl_lock_enqueue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8d658ed0 capa_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8d9b4a4a obdo_from_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8dc878fd lu_context_key_register_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8e10e6d6 server_name2svname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8e171305 llog_copy_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8e6bb4c8 llog_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8eadb98b cl_offset +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f67314c obd_dump_on_eviction +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f82e189 dump_lniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8fa0a689 lu_context_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x908f96c2 llog_cat_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x909d7cd4 cl_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x90fa51e5 lprocfs_rd_conn_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x91b8059d class_conn2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92e58479 obd_dump_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9301c7c8 capa_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93859814 lprocfs_oh_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93b46468 lu_session_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x94b30b8b lu_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9505c895 lustre_idmap_lookup_gid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9512d507 lustre_acl_xattr_merge2posix +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x955f5220 ldlm_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95735c6c at_extra +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95ec998a lustre_groups_sort +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x96784a9b cl_io_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x969a9c48 class_find_client_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9767adce class_uuid2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x97d03783 at_history +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x98d3b591 cl_lock_user_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9910257d cl_io_is_going +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9973c37b llog_declare_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x99a6e64c cl_page_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x99d5ce77 lprocfs_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9a7c5bf8 class_export_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9a89c41a lu_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b1ed9d8 obd_jobid_var +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9bc3dbce cl_page_cache_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9bf34b9e cl_env_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9c7b4993 cl_lock_user_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9dbb17b6 lprocfs_dt_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9e3fde5a lprocfs_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ef04963 dt_record_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa1703f35 lprocfs_rd_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa21c5ea1 obdo_from_la +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa28de2a4 cl_lock_descr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa3362b8b llog_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa3734b76 dt_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa3a478ae cl_lock_hold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa46c73ca lu_device_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa48c4a30 lustre_idmap_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa4e1c43c lu_object_invariant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa513f7e4 lustre_groups_from_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5c1d55c cl_page_find_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5fb234f lprocfs_write_frac_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa674c241 kuc_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa6e2fbae cl_page_list_move +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa7918dbc cl_req_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa79a7db5 cl_lock_closure_build +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa7b63eea class_import_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa7c3fa2d cl_object_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa21b7a0 lustre_register_quota_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa5bba09 cl_io_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaaf0a972 lprocfs_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xab24b040 cl_io_rw_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xab54e549 lustre_register_client_fill_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabf45922 capa_decrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac12f525 lustre_common_put_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac1b9e21 obd_devs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac7f1596 kuc_ptr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xae41116e class_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xae7feb65 lu_env_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaf564047 llog_thread_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb01963a6 class_uuid_unparse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb051b310 lu_object_add_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0af129e lprocfs_alloc_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0fb9886 cl_lvb2attr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1b89b6d class_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1e5af75 lu_ucred +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb219b7e9 lu_site_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb270ef3c cl_page_list_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb2d65bee cl_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb3f2478d cl_lock_signal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb41998cd lustre_cfg_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb5e515fb lu_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb635af9e dt_acct_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb63f8996 llog_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6ba5dd5 kuc_ispayload +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb743ec6a dt_mode_to_dft +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb77021b2 cl_io_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb776b531 cl_page_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb7d0e5fb cl_io_read_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb82b9e52 lprocfs_free_per_client_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb843fdee lustre_end_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb8623dbc llog_cancel_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb988a1e1 cl_page_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb9890797 cl_lock_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb9952450 cl_lock_at_pgoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba19ce58 cl_vmpage_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba985283 lustre_register_client_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbacac922 lprocfs_write_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbcee1990 cl_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbddc97b8 llog_cat_init_and_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbddcb173 lu_dev_del_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbdf9a687 cl_env_nested_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbe2676e6 cl_env_unplant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbeafa4e0 cl_unuse_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbf535504 obdo_from_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc06727be lprocfs_free_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0954007 lprocfs_oh_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0b9c94b llog_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0bf7ef2 obd_debug_peer_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0ddead3 cl_page_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc18d06cf lu_buf_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc2202a26 cl_io_prepare_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc264cfdf class_manual_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc3d52052 llog_cat_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc59e1e46 lprocfs_add_vars +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc5c47889 cl_sync_io_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc6f1f2cd cl_queue_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc7209f33 cl_page_list_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc7a9ed90 cl_lock_disclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc7d2d24b cl_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc7f7869f class_uuid2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8dbaa87 lustre_swab_cfg_marker +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8f2513f dt_txn_hook_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb0ab67f obd_max_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb681d2a cl_lock_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcc1bd04a class_search_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xccb1bedd cl_page_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xccf7a8de obdo_cpu_to_le +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd3e5793 lprocfs_rd_server_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd7537ee get_devices_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcde45faf cl_page_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xce116c92 cl_io_submit_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xce940587 class_conn2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcedb140a obdo_cmp_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcf0dec1a local_file_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd011f26c dt_store_resolve +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd08827c0 server_name2fsname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd0fbf539 lprocfs_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd10aa042 lustre_swab_llog_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd16f3462 llog_osd_put_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1b1478b cl_attr2lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1f58645 lustre_swab_llog_hdr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2fae5cf lprocfs_rd_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd370bd23 llog_cat_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd398ce6c cl_io_lock_alloc_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd3c95ab1 cl_page_list_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd4c07e80 md_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd66abd15 cl_page_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd70fe669 lustre_swab_llogd_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7512b39 cl_env_nested_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bc8654 obd_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bfbc9c lprocfs_dt_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7f7b340 cl_lock_mode_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd81d33d3 cl_2queue_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd8a1ce28 lu_context_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd90d5286 cl_io_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd90e631d cl_lock_nr_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd9863a45 cl_io_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda5b1ced class_find_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdac644c8 lustre_posix_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdad6a59a local_object_unlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb060c57 class_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb13dce1 capa_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdc3c63fc capa_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdc79d520 lprocfs_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdc94559c lprocfs_rd_numrefs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcc40af0 class_check_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd78c0c7 lu_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdda3d949 class_handle_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde2b38ec cl_io_iter_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde7d985b obd_dirty_transit_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdea58394 llog_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdeb9c691 class_fail_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdf21ee07 obd_llog_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdfdc9bd9 obd_exports_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdff6f475 lprocfs_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe028cf84 capa_encrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe19b3fe7 cl_page_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe19e2a25 lu_context_key_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe1ecdaf3 cl_io_lock_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2eb4470 class_get_next_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3323f5d class_handle_free_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3a8828e dt_lookup_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3d83f9a cl_io_sub_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe518f3ff dt_txn_callback_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe636f008 lu_context_key_degister_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7d83236 cleanup_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe87a3d2f lu_context_key_quiesce +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe89e4de9 class_new_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8e84c32 class_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe93c7ac5 lu_context_key_revive_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeacec47c lprocfs_oh_tally_log2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb3f388a _debug_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb661e44 capa_cpy +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec6b2cd4 obd_export_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec76847f lustre_idmap_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec7d6b85 obd_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee68bc29 lu_session_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeeeb79fa do_lcfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xef76f858 block_debug_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeffdba75 cl_io_commit_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf01e2527 server_name2index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf085d83f lu_device_type_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf1ebba6a class_put_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf22dee61 cl_lock_get_trust +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf23189b8 lu_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2fd6695 statfs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf32a9c85 lu_context_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf33caa2a capa_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3a42ffa lprocfs_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3bc5b9d dt_lfsck_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf490d5f9 class_del_profiles +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf499993d cl_lock_closure_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf5226463 cl_lock_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf5773720 lu_ucred_assert +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf60d4659 capa_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7020831 lprocfs_dt_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7a7e0bb cl_lock_mutex_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf81f4201 dt_txn_hook_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf874c950 dump_lsm +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8c2df92 obdo_set_parent_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8f84183 lprocfs_wr_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf905e9d9 dt_txn_callback_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf970f6a3 local_oid_storage_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa813d06 capa_hmac +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbb6e3b9 llog_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbea0098 lu_types_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc7f18d0 obd_pages_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc80bad9 dt_locate_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfcdfd923 lu_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfce4103b lu_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfcfca709 lprocfs_obd_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd68d17a class_notify_sptlrpc_conf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfdbe1557 lprocfs_write_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfe16597e lu_ucred_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfe280b9f lustre_process_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfe4d62b3 llog_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff56f9f4 cl_io_rw_advance +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff57e92d class_match_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfffc1f11 lustre_swab_ost_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/osc/osc 0x5c4940c2 osc_update_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x002905ef sptlrpc_lprocfs_cliobd_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x00d95039 ptlrpcd_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x00e66c23 req_capsule_client_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0193b077 ldlm_namespace_new +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01d6ef7f ldlm_pools_recalc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x021be7f7 ldlm_cli_cancel_unused +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x02db52bd ldlm_pool_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x030930df ptlrpc_save_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x034e6ff5 ldlm_namespace_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x035aedac sptlrpc_register_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x03d2d9c7 ptlrpc_set_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x048b59d5 lustre_msg_set_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0515f93b RQF_FLD_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x05ecdc9b target_pack_pool_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x06b3942b lustre_swab_lov_user_md_objects +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x071fc74a RQF_LDLM_ENQUEUE_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x07605c7d interval_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08b30cbb ldlm_cli_enqueue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08bb2d27 lustre_swab_obd_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0938b1da ldlm_lock2desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x095587d0 lustre_msg_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a3130b0 RMF_MDT_EPOCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac252b2 lustre_msg_set_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac54708 lustre_errno_hton +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0bcacb5d RMF_MDS_HSM_USER_ITEM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0bd06527 sptlrpc_svc_ctx_invalidate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c29b291 sptlrpc_target_export_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c2d9c43 lustre_swab_lip_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0cac8656 ptlrpc_wake_delayed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0cf343dd RQF_LDLM_INTENT_BASIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0d0cc027 sptlrpc_cli_ctx_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0d20c130 __ldlm_handle2lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0e9b3073 ptlrpc_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0fecf4e7 sptlrpc_sec_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x10f18f20 interval_iterate_reverse +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x115017f6 req_layout_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x116265a3 __ptlrpc_prep_bulk_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x119356fc ptlrpc_request_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12b6f5a3 ptlrpc_connection_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1474440e ldlm_pool_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1483eca4 ldlm_lock_addref_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x14d192db lustre_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1592c4ed ptlrpc_obd_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15a3e4db RMF_GETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15cda2aa ldlm_replay_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x171e3e3f client_import_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x172d7164 ptlrpc_request_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x172fb86d lustre_msg_hdr_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1747d8b3 ldlm_lockname +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x17950f60 RQF_SEC_CTX +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x18582372 ldlm_lock_fail_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1888c17d ptlrpc_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19108a0f RQF_OST_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19c08934 RQF_LDLM_INTENT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a6a3ce9 RQF_OST_GET_INFO_LAST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a9b76aa RMF_OBD_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1abd3258 RMF_SETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ace4b5f RQF_LDLM_BL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1bae0270 interval_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1be21715 lustre_msg_size_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c300d8e lustre_msg_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c7d4f3a ldlm_blocking_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d043548 lustre_msg_set_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1dc2051d RMF_SEQ_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1de9c288 lustre_swab_layout_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e8e48a4 sptlrpc_flavor_has_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1eb2a65f RQF_OST_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee46b51 lustre_init_msg_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee9eb3c RQF_MDS_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ef8bd51 sptlrpc_enc_pool_get_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1fa55d33 req_capsule_server_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2096f5b5 RQF_OST_SET_GRANT_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20d6b82c RQF_LDLM_INTENT_QUOTA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x218a36ce ldlm_cli_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x227b192a req_capsule_set_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x231f334f ptlrpc_request_alloc_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x233790b5 RMF_OST_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x244e5558 lustre_msg_get_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x24aafdba RMF_MGS_TARGET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2585a629 RMF_SEQ_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2587513c RQF_LDLM_CP_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x25de9045 do_set_info_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x269554ce RQF_LDLM_INTENT_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x26f99d16 RQF_MGS_CONFIG_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2782e2c6 req_capsule_server_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x27dfcc3a ldlm_lock_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x285e5b99 lustre_msg_set_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x29b75924 sptlrpc_conf_target_get_rules +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x29e0869a sptlrpc_get_hash_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a63a472 lustre_swab_ptlrpc_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2aa0eef4 ptlrpc_stop_all_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2bfad0b7 ptlrpc_invalidate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c00c60d ptlrpc_sample_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ca92fa8 ldlm_lock_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ccd5b87 ldlm_cli_cancel_list_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d56f168 ptlrpc_pinger_ir_up +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d798316 RMF_MGS_CONFIG_RES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e2ff0d6 req_capsule_client_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4562fe RQF_LLOG_ORIGIN_HANDLE_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4ca396 RQF_LDLM_INTENT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ecd7515 lustre_msg_check_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ed93606 target_print_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f0e4f87 RQF_OST_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2fd2f737 lustre_msg_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x30191518 ptlrpc_resend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x301d38f4 llog_origin_handle_read_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x301d4fcd RQF_MDS_READPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x302937e0 RQF_MDS_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3060b9c6 sptlrpc_rule_set_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x30c2b9dd req_capsule_filled_sizes +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x314bc61e ldlm_destroy_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31838cb4 RMF_IDX_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x318a4c57 ldlm_pool_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x318d56c1 ptlrpc_buf_need_swab +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31d8bd68 ptlrpc_register_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31e62f71 ldlm_namespace_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31fbf1e7 ptlrpc_restart_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3204ddea ptlrpc_req_finished_with_imp_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3261b862 RQF_OST_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x32a16416 ptlrpc_mark_interrupted +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x32a70d44 req_capsule_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x32c25fc6 ldlm_glimpse_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x33831aed ldlm_flock_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x33bb7761 ldlm_typename +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x34f8fffb sptlrpc_cli_ctx_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x355b8ba3 ptlrpc_replay_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x35939a3d lustre_swab_fiemap +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x37107c78 ldlm_namespace_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x378c4d80 ptlrpc_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x381035f3 llog_client_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3830bb41 lprocfs_wr_evict_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3835ab4b RQF_LLOG_ORIGIN_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3858fb94 RMF_OBD_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3896ba40 ldlm_pool_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38c01799 RQF_LDLM_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38fce533 lustre_msg_set_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39f60a5f RMF_OST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a1e4bcb __lustre_unpack_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a95ebbe ptlrpc_schedule_difficult_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ab90f6e lustre_msg_bufcount +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ac00716 lustre_swab_hsm_user_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b41d909 ptlrpc_retain_replayable_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b6b7cba dump_ioo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bedb0c7 RMF_LLOGD_CONN_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c498667 sptlrpc_sec_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c63e62b RQF_MDS_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c997e04 sptlrpc_cli_wrap_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ca50f33 RQF_MDS_HSM_CT_REGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d7dc5f9 ldlm_pools_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dc47695 lustre_msg_get_magic +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dddb3e2 dump_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ee4579b ldlm_pool_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f034caf lustre_msg_get_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f752e78 RQF_MDS_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x41008cef RQF_LDLM_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x413ad7ac ldlm_lock_downgrade +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x417b4e57 req_capsule_server_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4276473a sptlrpc_conf_client_adapt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x428ff360 ldlm_cli_enqueue_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x42eb2ee4 ldlm_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x431ffdc2 llog_initiator_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43705ee4 RQF_LOG_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43d7efc8 lustre_msg_set_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44036eda RQF_MDS_GET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x440c2a71 RMF_FIEMAP_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4481591d RQF_OST_SET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44dad617 ptlrpc_request_alloc_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44eed3a7 _ldlm_lock_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45d05893 lustre_swab_lustre_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45e30cea lustre_swab_ldlm_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x474e4a66 ldlm_cli_cancel_unused_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47f5e903 RMF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x48814c9f lustre_swab_ost_lvb_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x498c03c5 lustre_msg_set_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a136beb ldlm_destroy_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a5a2416 RMF_DLM_REQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a65a1c5 ptlrpc_disconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b09ce4b lustre_swab_mdt_rec_reint +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4ccbb4e4 ptlrpc_request_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d38a58a ptlrpc_lprocfs_unregister_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d7580d0 lustre_swab_hsm_user_item +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e1706e5 lustre_msg_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e696b96 ptlrpcd_queue_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e80db32 ldlm_blocking_ast_nocheck +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4eb03a6f ptlrpcd_destroy_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f766c3b lustre_swab_generic_32s +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50443f6a ptlrpc_init_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50dd74f8 RMF_STRING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x52c62150 RMF_RCS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53411557 RMF_DLM_REP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53592e01 client_disconnect_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53a4a004 bulk_sec_desc_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53fa0846 ptlrpc_request_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x54ae5021 ldlm_lock_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x555eb7fe RQF_MDS_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x561bbe2d llog_origin_handle_prev_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x56d14439 client_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x588035b4 RMF_UPDATE_REPLY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5896245a ldlm_pool_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x595ab175 lustre_swab_obd_quotactl +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x596582bf RMF_GETINFO_VALLEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x59ca398b ptlrpc_add_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a057439 interval_search +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a2e6df8 ldlm_lock_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a884e9b ldlm_namespace_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5af0d02a ldlm_lock_dump_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b6ba895 lustre_packed_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c6a3a83 RQF_SEQ_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5caae213 ptlrpc_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e0b19b1 RMF_CLUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e2b7558 lustre_msghdr_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e6f435d RQF_OST_BRW_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e80f899 RQF_LLOG_ORIGIN_HANDLE_READ_HEADER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ec3284d RQF_MDS_HSM_CT_UNREGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ef831ee lustre_msg_get_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f96ccdd ptlrpc_connection_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5fa6cf54 ldlm_enqueue_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6042bc15 RQF_MDS_REINT_RENAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x604e2505 RMF_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x607ec932 lustre_msg_set_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x60cd26ad RQF_MDS_REINT_CREATE_SYM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61646e1b RQF_MDS_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61835d32 ptlrpc_set_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x618ad203 RQF_OST_GET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6198afd9 ldlm_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61e78ed9 sptlrpc_enc_pool_put_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62192cf8 dump_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62aaae3f RQF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6315dd4c RMF_LLOGD_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6352a62d ldlm_get_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x647b6e48 lustre_swab_ldlm_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x653723dc RMF_LOGCOOKIES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x657b00b7 ptlrpc_init_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x676f950b ldlm_pool_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x683243bf ptlrpc_set_next_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x685eeaba RMF_DLM_GL_DESC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68cb2541 interval_is_overlapped +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68f49e5e ptlrpc_expired_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6912990a RQF_OST_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x696ba811 lustre_msg_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69ae9c53 ldlm_register_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69bcf851 req_capsule_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69c9f04d RQF_MDS_REINT_LINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a3785c9 RMF_EADATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6bb22a84 sptlrpc_cli_enlarge_reqbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6c397b46 llog_origin_handle_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6c9fa656 lprocfs_rd_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6cfe693e ldlm_completion_ast_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d72828c sptlrpc_conf_log_update_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d7931cc RQF_UPDATE_OBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6e2083ed ldlm_lock_allow_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ed20499 ldlm_revalidate_lock_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6efa82b0 RQF_MGS_TARGET_REG +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f6dc736 lustre_swab_mdt_remote_perm +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6fabda85 ptlrpc_set_import_active +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6fb92092 sptlrpc_flavor2name_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x703538e4 lustre_swab_hsm_current_action +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x70d2f5ef ptlrpc_queue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x719052a6 ldlm_resource_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x72201a70 ldlm_resource_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x723d43b6 sptlrpc_rule_set_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x725a892c RQF_MDS_REINT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x72868007 req_capsule_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7287b6c0 ldlm_pool_get_lvf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x72abbaa1 lustre_free_reply_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x72bff0d5 ptlrpc_req_set_repsize +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x72ccaff2 sptlrpc_cli_unwrap_bulk_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x731a8a85 ldlm_reprocess_all_ns +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x73362234 sptlrpc_import_flush_all_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x73521f9d ptlrpc_unregister_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x73e4e5c9 ptlrpc_add_rqs_to_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74755d95 ldlm_lock_fail_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74840056 lustre_msg_set_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74fb6ed1 ptlrpc_deactivate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75a2c40d ldlm_put_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75b1c885 ptlrpc_nrs_policy_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75c49650 lustre_pack_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7640a9c2 sptlrpc_gc_del_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76b728e5 lustre_swab_update_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77571cc6 lustre_swab_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77840c82 sptlrpc_rule_set_choose +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x787787f7 ldlm_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78bf9136 lustre_swab_ldlm_lock_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x794ff7d3 ptlrpc_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x79a0b6d7 ptlrpc_send_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a832f10 RMF_CONN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b158da4 lustre_swab_ldlm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7bbf8001 RMF_MDT_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7c4c6107 RQF_LDLM_CONVERT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7cfbbe70 sptlrpc_cli_ctx_expire +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d0a67d4 lprocfs_wr_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d1ecd7f RQF_LDLM_INTENT_LAYOUT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d41a8b9 RQF_QUOTA_DQACQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dc0e7cd RMF_QUOTA_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dfb3c18 lustre_msg_clear_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7e265a74 ptlrpc_request_set_replen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7e520f5f ldlm_cancel_resource_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7ee6141f ptlrpcd_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4925d8 interval_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4c99b1 ldlm_expired_completion_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f5a1cc7 lustre_msg_set_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f6d2357 lustre_msg_is_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80016aa2 req_capsule_server_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80a9e8c3 lustre_msg_get_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80b0e836 ptlrpc_unregister_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80ecb4e3 RMF_MDS_HSM_CURRENT_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8175cff4 ptlrpc_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x817d7f1f lustre_msg_add_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x81b53d53 ldlm_resource_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x826d3c4f RQF_LDLM_GL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x837efb00 RMF_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x840ae33e lustre_pack_reply_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85135801 RMF_DLM_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85a9e0d8 RMF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85eecf67 sptlrpc_get_hash_alg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x863db6eb RMF_HSM_USER_STATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x868eef3a client_import_find_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x86fa8c3b ldlm_cli_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8760beaf lustre_swab_ldlm_policy_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x876c2551 RMF_GETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87bf7b3c sptlrpc_get_next_secid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87ff2afb ldlm_pool_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8815de8b req_capsule_other_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8872f3d2 RMF_SETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x88fff52d RMF_CAPA2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x89f9edf7 RQF_MDS_REINT_SETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a1ea476 lustre_swab_hsm_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a257736 RQF_MDS_HSM_STATE_GET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a4345b1 ptlrpc_set_add_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ac440fa ptlrpc_uuid_to_connection +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b0e4508 ldlm_init_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b2a897d sptlrpc_sec_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b854254 lustre_swab_mgs_config_res +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8bd8855f req_capsule_field_present +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cb62553 ldlm_lock_allow_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cb71d4b RQF_MDS_REINT_CREATE_SLAVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d4b4061 sptlrpc_target_sec_part +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d77ea75 lustre_msg_set_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8da3fca7 lustre_msg_add_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8da785a1 ptlrpc_cleanup_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8e9abe4d RMF_GENERIC_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8edfe2d0 ptlrpc_hpreq_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f0aceac RQF_MDS_HSM_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8fbc201a req_capsule_server_sized_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8fec0451 lustre_msg_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x919c4ce3 RMF_OBD_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91a20ce0 llog_origin_handle_next_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91cf58d3 RQF_MDS_PIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x92202845 ldlm_cli_cancel_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x92e1063f ptlrpc_reconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x937b1ee0 lustre_swab_mdt_ioepoch +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9553c633 RQF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x95d08f0c lustre_swab_mgs_target_info +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x96397b7e ptlrpc_service_health_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x966071de lprocfs_wr_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9660ace0 RMF_FLD_MDFLD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x96687768 llog_origin_handle_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x967bfd52 RQF_OBD_PING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9694822d ptlrpc_resend_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9749b325 ptl_send_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x979390fa target_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9798f2f1 RQF_MDS_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x980fcfdc ptlrpc_connection_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x98499f48 ptlrpc_pinger_sending_on_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x985a2b57 req_capsule_client_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x986dedd9 ldlm_namespace_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x98764d64 ptlrpc_buf_set_swabbed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9985d2af __ptlrpc_free_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a258886 RQF_MDS_GETSTATUS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a5a2636 llog_origin_handle_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a6f2f6d lustre_msg_set_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b88f6ce RMF_NIOBUF_REMOTE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b9e3e70 ptlrpcd_wake +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9bb5198b RQF_MDS_CLOSE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9c7ddbe3 ptlrpc_request_bufs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9d7ea314 sptlrpc_pack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9e925676 req_capsule_server_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9f429b3e ldlm_namespace_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9f7d62f6 ldlm_cli_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9fb088f1 lustre_swab_lov_mds_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9fd1c980 sptlrpc_import_flush_my_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa10f0d3d RMF_UPDATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa163f4c3 dump_rniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2244636 RQF_MDS_GETATTR_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa22c0086 ldlm_error2errno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2403f30 ldlm_lock2handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3d2a6ee RMF_CAPA1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa47787ef RMF_PTLRPC_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4a2d089 RQF_OST_PUNCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4bea5ef lustre_swab_lmv_user_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4e9ca0c lock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5458dad ldlm_lock_decref_and_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5880075 ldlm_errno2error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa61fc222 ptlrpc_lprocfs_brw +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa66888dd ptlrpcd_add_rqset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa6a6f312 sptlrpc_unregister_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa6c436ca RQF_MDS_WRITEPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7d55cc3 RQF_MDS_REINT_CREATE_RMT_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7e360b1 RMF_OBD_IOOBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7ec567d RMF_CONNECT_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa885d0ff sptlrpc_cli_unwrap_bulk_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9704f80 lustre_msg_get_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9c4658e lustre_swab_lov_user_md_v3 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9edf09d RQF_OBD_IDX_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xad1b1da0 ldlm_pool_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xadd79f21 sptlrpc_req_replace_dead_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaddc3979 lustre_swab_lustre_capa_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xae4a2ae3 sptlrpc_cli_ctx_wakeup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf4e9658 RQF_MDS_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf50a0d6 RMF_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf5c62b6 ptlrpc_at_set_req_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf9ca4eb ldlm_pool_set_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0751fa4 RQF_LLOG_ORIGIN_HANDLE_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0d5f0c8 req_capsule_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1ac3014 ptlrpc_fail_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1b43d8a dump_rcs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb27c2374 lustre_msg_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb291473d lustre_msg_early_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb2b1817d lustre_swab_ost_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb2b276be ptlrpc_abort_inflight +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4229603 ldlm_prep_elc_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4a7ecf3 lustre_msg_add_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb512ebc2 sptlrpc_parse_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb61cb95a RQF_MDS_GETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb68476df interval_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb6aafd03 RQF_MDS_DONE_WRITING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb767805f req_capsule_init_area +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7a1102f sptlrpc_gc_add_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7b38189 RMF_MDT_MD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7db413b ptlrpc_pinger_del_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7fa3cc8 RMF_LLOG_LOG_HDR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb813e89d ptlrpc_prep_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb903634e RQF_OST_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9b631cf lustre_swab_mgs_config_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9f93ce5 ldlm_resource_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbaa76097 lustre_msg_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbc1370dc lustre_shrink_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd511f66 ldlm_extent_shift_kms +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd83bc44 RQF_OBD_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe47bc7e ping_evictor_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf60e722 ptlrpc_unpack_req_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf98b86f RQF_MDS_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbff2e0c8 ldlm_lock_change_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbffd4313 RQF_OST_BRW_WRITE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc06c4670 lustre_msg_get_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0867da7 RMF_REC_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0cdf55e RMF_MGS_SEND_PARAM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc1ed015f ldlm_pool_get_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc298007d ptlrpc_register_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2986d28 lustre_swab_ldlm_res_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2b1af57 RQF_MGS_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2be922a RMF_SYMTGT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc559a634 RMF_LAYOUT_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc55c726e req_capsule_server_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc60a60e1 RQF_OST_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc6347314 req_capsule_extend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc694be4b RQF_LLOG_ORIGIN_HANDLE_PREV_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc6fe2ee0 ptlrpcd_alloc_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc763fabc sptlrpc_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc78a5464 ptlrpc_free_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc79b9c67 ldlm_pools_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7ca8257 RQF_MDS_REINT_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7e47564 ptlrpc_interrupted_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8e0fff8 ptlrpc_commit_replies +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8f586a9 ptlrpc_connection_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc9c70e9d llog_origin_handle_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xca5a81ec ptlrpc_pinger_ir_down +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcaa66e88 ptlrpc_req_finished +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb16107d ptlrpc_set_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2cc0cf lustre_swab_lquota_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2ceaff sptlrpc_secflags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb48a6bc ptlrpc_activate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce1a689b sptlrpc_enc_pool_add_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce86066d lustre_msg_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce8e7ee8 ptlrpc_prep_bulk_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcec513c9 RQF_MDS_UNPIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xced015be sptlrpc_rule_set_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9963db lustre_msg_get_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9aab6a RQF_MDS_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcfd2e9d6 sptlrpc_get_bulk_checksum +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd01ba121 ldlm_resource_unlink_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd02f37c6 ptlrpc_cleanup_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd11182b1 ldlm_prep_enqueue_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2983334 lustre_swab_swap_layouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2e0d4eb lustre_msg_get_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd3abbe63 ptlrpc_init_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd3dae408 ldlm_it2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd537ded2 lustre_swab_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd67a5d7b lustre_swab_update_reply_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd69e0a27 RQF_MDS_IS_SUBDIR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6c3ebfb RMF_FIEMAP_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7910326 lustre_swab_obd_statfs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8b91b3e lustre_swab_lov_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8f06300 RQF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd9561861 RQF_LDLM_INTENT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd999c4ac req_capsule_has_field +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda03c610 ldlm_init_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda2ac111 sptlrpc_proc_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb1fb0a2 RQF_MDS_REINT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb9d5a6a lustre_swab_niobuf_remote +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdcf910b9 lustre_swab_ost_last_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd0ffb04 sptlrpc_flavor2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd30d7bf RMF_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd9c611a client_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xddc40a85 lustre_msg_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde12d36b RMF_MDS_HSM_ARCHIVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde555d70 sptlrpc_enc_pool_del_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdee87192 sptlrpc_conf_log_update_begin +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf701ae7 lustre_swab_fid2path +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe036cca1 ldlm_pool_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0cc694c RQF_LLOG_ORIGIN_HANDLE_NEXT_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe10c4189 lustre_pack_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe1301a0f ptlrpc_unpack_rep_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe1566f90 ldlm_get_enq_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe24c5ecb sptlrpc_gc_add_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe2e7d6d4 ptlrpc_req_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe312ade2 ptlrpc_nrs_policy_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe3696cb6 sptlrpc_import_sec_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe3c62545 ldlm_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe3edaa5a client_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe4039776 ptlrpc_recover_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe40e0a50 lustre_msg_get_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe44f5a74 ptlrpc_set_add_new_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe57bd972 sptlrpc_current_user_desc_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe5e8169b lustre_errno_ntoh +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe643998e RQF_OST_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6f0dc96 RQF_OST_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7062b5f RMF_U32 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7512278 ptlrpcd_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabaa0b1 lustre_swab_mdt_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabac4fc sptlrpc_rule_set_merge +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xebb64e68 req_layout_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec226f66 ping_evictor_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec939a00 RQF_MDS_REINT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecace5c1 RQF_OST_GET_INFO_GENERIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed1c10d6 ptlrpc_connection_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xedaa23f3 ptlrpc_lprocfs_register_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xedcb740d sptlrpc_name2flavor_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xef1aeca9 RMF_FLD_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0241d6e lustre_swab_hsm_progress_kernel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf09cc244 client_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0affab6 lustre_pack_reply_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0d52b5f ptlrpc_pinger_suppress_pings +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf1300275 _sptlrpc_enlarge_msg_inplace +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf277c125 RQF_OST_GET_INFO_FIEMAP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf27d49dc sptlrpc_target_choose_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf35f132b lustre_swab_ldlm_resource_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf39e0560 sec2target_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3d44370 RQF_OST_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf43540b9 lustre_swab_mgs_nidtbl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf45085e1 sptlrpc_conf_log_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf4b7928a req_capsule_client_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf4ebc516 ptlrpc_pinger_add_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf55c033b RMF_MGS_CONFIG_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf568ba07 ptlrpc_start_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf584a16b sptlrpc_part2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf596e9ae sptlrpc_conf_log_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf5cf1e61 req_capsule_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf607fc23 sptlrpc_flavor2name_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf617ab8a lustre_msg_get_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf6798759 unlock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf697b756 ldlm_dump_all_namespaces +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7408f84 lustre_swab_hsm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7ba40c0 RMF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf85cb27e sptlrpc_parse_rule +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf870fed9 RQF_LDLM_GL_DESC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf8eaf4e8 ptlrpc_prep_req_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9051bd6 RQF_QC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf94e41e0 deuuidify +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf973aa93 lustre_swab_lov_user_md_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9ee11e2 lustre_msg_set_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9f72dfc RMF_TGTUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa51688d interval_insert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa584f31 ptlrpc_unregister_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfabf9b19 sptlrpc_target_update_exp_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb444a98 ptlrpc_prep_fcset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc2fa83f ptlrpc_del_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd148bf8 RMF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd4d39e4 lprocfs_wr_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfdb0164f ldlm_cli_update_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfe5d84e7 ldlm_cli_cancel_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff02a0e9 ldlm_lock_set_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff2b5341 ptlrpc_prep_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff2f11a9 client_import_del_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffa4bdb1 _debug_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffc807e8 sptlrpc_unpack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffe29c3f RQF_LDLM_ENQUEUE +EXPORT_SYMBOL drivers/staging/media/cxd2099/cxd2099 0xa44cdd9c cxd2099_attach +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x48cedf74 go7007_register_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x64d26dfb go7007_update_board +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x73146592 go7007_parse_video_stream +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x8bf1e09d go7007_snd_remove +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x9310ede0 go7007_read_addr +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x97041786 go7007_read_interrupt +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xb6266593 go7007_alloc +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xef99bd65 go7007_boot_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xf7ad17ea go7007_snd_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x013eb7bd rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0386ad6f dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x03986f7f rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x04381230 rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x04a1819d alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x081b05c5 rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x08eb2ff0 rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x094e38f8 rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x138cfb60 rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x239e9839 rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x23d3cbac rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x26f8ac1f rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3445c880 rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3881c6e1 free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3965fafc rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x39fcf819 rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3a3652c1 HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4a8be626 rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5a568a8c rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5bd86b23 rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5bf95197 rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5fb5e08d rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6cd30965 rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x73d75d63 rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x73f47048 RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7a35d94a rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7d608479 notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7dc7b496 rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x80f728ae Dot11d_Channelmap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x970ce5b0 rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9743b625 rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9d53ab5e rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9eef891f rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x9f2c2bef rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa2743638 rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa2b6b784 rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb966052b rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbe1420f2 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc451f201 rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc4b5b9b8 rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc7099bf9 rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xceeb35f5 rtllib_wpa_supplicant_ioctl +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd61c8ab0 rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd8d6dbe6 rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe9df5d37 rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xeab6e8b2 rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf056a474 rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf2da5384 rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf3765334 rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xfb9224de rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xfbd4d9bc rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x01d86e81 ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x02bdecaa ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x03ef39e9 ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x09939948 DOT11D_ScanComplete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0baa4fa7 ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0c1c7e58 ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0eafc3bf ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0faca573 ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x149cc1da ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1a301477 ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x27251e81 ToLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x29327ac9 ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2a1159ee ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3b673eb7 ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3e8c46cc ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4c542161 ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4cc112c7 ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x4f441180 ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5087c9c0 SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x56f5f16c Dot11d_Reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5c0d6435 ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5e2170f0 notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x639cd7c2 ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x66fc06ab ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7207f0fd ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x721505b0 ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x74e73689 ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x76911a7e Dot11d_UpdateCountryIe +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7b15a948 ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x85ce9caf ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x85f9467a ieee80211_send_probe_requests_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8c0ca637 IsLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8e939929 ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8eafbb1b ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8f9f2e46 ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x92e0e3e9 ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9566bd17 ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x96992e3c ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9dc3cb56 ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9fd2f4db ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa62b782d ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb143b577 ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc1f7bae7 ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc74f0a6e Dot11d_Init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd06cf3e9 ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd379dcb2 ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xdc781bd9 ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe218a8f2 ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe25a35a3 ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe622d108 ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xee28c882 ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf1d3187b HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf3711219 ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf6c72a81 ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfac1cb99 ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfd9dfc6a DOT11D_GetMaxTxPwrInDbm +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0017f35f set_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x00ea0cde set_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x06d6f244 get_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x09df8f3e set_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0a8d32c3 get_bypass_slave_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1936264c set_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1d2eb8ca get_tap_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x203af1f7 reset_bypass_wd_timer_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2070f14a set_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x27b990ef get_bypass_info_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2ba7cd35 get_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2c3f1c17 get_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2f59e636 get_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2fdb893a get_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x361cf40a get_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x45ca99c3 set_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x550a188c set_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x5cb59e92 get_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x66b60122 set_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x675208c0 set_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x692623f2 get_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x75131ec6 set_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x76c0b7d0 set_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e872825 get_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e8d701e get_wd_expire_time_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x86388b07 get_bp_disc_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x93ae4648 get_wd_set_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x95e42b0d is_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9df5f807 set_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9e21f42e set_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xa689a214 get_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xae117788 get_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xc368d30d get_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xccab5de0 get_bypass_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd3e034b3 get_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9c1ccfc get_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9d38d97 set_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xe640f06e set_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xecdaa456 set_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xedcd3c1b get_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf06d67bf set_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf57c1671 get_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf693c3a1 bp_if_scan_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf8237882 get_bypass_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xfa59240d get_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05af3c4c set_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05b08a42 set_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0b0d5ce0 get_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0fc2e83c reset_bypass_wd_timer +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x123a8133 get_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x157ec89c get_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2440f05a get_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2b01d1d4 set_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2c27a2f0 set_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2da97f4b is_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2e86c67b get_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37416370 get_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37bdab27 get_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x3da96a18 get_bypass_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4025805e get_bypass_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4940a0cc get_bypass_info +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4d21ff51 get_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5147360c get_bp_disc_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x515d4df1 get_bypass_slave +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5560267e set_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5be44d44 set_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6653590c get_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6bda14ec get_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x72c618ae set_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x76d47e6f set_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x794e3815 set_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x7c6cbc16 get_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x84a263dc set_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x8a16f22c set_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x946ff795 get_wd_set_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x94f6aff2 get_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x9d1ecf73 set_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xb1385629 set_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xbff68c45 set_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xc871c561 get_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xcee528df set_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd202dd85 get_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd787f151 get_wd_expire_time +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xdb6a39d2 get_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xebd25ae5 get_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf1e9f8c1 set_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf224abd9 get_tap_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf5a591b2 set_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf643fd4c get_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x2ea6f10f xillybus_endpoint_remove +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x3f719237 xillybus_do_cleanup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x486b1abf xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xe746422e xillybus_init_endpoint +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x020832bd iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x035649fe iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0aeb2fef iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x27ad8c44 iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x305e7b6c iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3c0c464b iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x45c48fe7 iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x538ac611 iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6aa60649 iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x78906cd5 iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7c865ba1 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8b4bb264 iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x910cdec7 iscsit_set_unsoliticed_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x92778da1 iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9738b638 iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x976238cb iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa2c90dce iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa49c6de3 iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa611bd2b iscsit_handle_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xb6158ca3 iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc74779a2 iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xccb078ad iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xcd2cbc3a iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd04bed5d iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xdc5d237f iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe25f07ca iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe3f5f1b8 iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xfd1d714a iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/target_core_mod 0x02de3b18 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x037aa139 target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x08c1225f target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x09741f04 iscsi_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x0a79f61e transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x120f72c8 target_setup_cmd_from_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x1315388d target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0x16942a0f fc_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x1aa59448 target_fabric_configfs_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x1b18a104 target_get_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x1ba9793c transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x28473e58 transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x29326cfc iscsi_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x3370d597 core_tpg_add_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x44d64fda sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0x4a0705f3 fc_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x50c31fd5 sas_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x58055d3e target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0x5efba1c8 transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x5f11b867 sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x6c037332 target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0x6dc537d2 target_fabric_configfs_init +EXPORT_SYMBOL drivers/target/target_core_mod 0x6e52da4a transport_check_aborted_status +EXPORT_SYMBOL drivers/target/target_core_mod 0x7005ba49 spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x740fb697 core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x74b9ee5e core_tpg_del_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x74bd63f3 transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x750f9efe target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x7538b9d9 transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0x77ffd303 transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x7909cf1b transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0x7dbada9d transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x821432c4 fc_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x838285f6 core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x83ca637b spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x85aa880c transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x87c667ea core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0x8cbba96a sas_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x9052fc66 transport_subsystem_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x93996afb iscsi_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x9d17208b transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xa39f440d transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xa5338dc6 sas_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xa6f60e80 transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xa7f00d1b core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0xa9514871 core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0xa98ef463 iscsi_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xac18660f __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xad7e3608 target_fabric_configfs_free +EXPORT_SYMBOL drivers/target/target_core_mod 0xb0f5c599 target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xb8696b83 sas_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xc9e6e936 target_fabric_configfs_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xce913149 transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0xcfea3f23 transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0xd046bc0c transport_init_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0xd35d43b2 transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xdb5fc616 core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0xde46a9cb spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0xde64d54b core_tpg_clear_object_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0xdf78d24c fc_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0xe10345fc target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xe40ebe18 core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xeca70d8b transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0xede63bee target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xeed4ee5d transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xf01621c7 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf3d176a2 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0xf67581d6 spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0xf809bf83 target_put_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xf8bc2975 sbc_execute_unmap +EXPORT_SYMBOL drivers/target/target_core_mod 0xf9eedf38 sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xfa467916 transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xfd780e5d transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0xfe91c671 transport_subsystem_release +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0x1659a9bd usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0x4d325fd7 unregister_gadget_item +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x0b44d3cd gether_connect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x100f5bf9 gether_setup_name_default +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x19f0b8e7 gether_get_host_addr_u8 +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x1d6b3aca gether_set_gadget +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x4b2fdf44 gether_register_netdev +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x4e619282 gether_get_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x539b6080 gether_get_host_addr_cdc +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x77d4672b gether_set_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x89384e70 gether_get_ifname +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x8bb7bad2 gether_setup_name +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x992f9012 gether_get_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xb07437d6 gether_set_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xd8f0b2f5 gether_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xe9a073ee gether_get_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xfd438b84 gether_set_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x2db5a806 rndis_add_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3a6d4f22 rndis_free_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3ca38e3a rndis_signal_connect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x4ca90996 rndis_signal_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x59cdd6a5 rndis_rm_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x5d22b406 rndis_register +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x60e3af3b rndis_set_param_dev +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x785d494b rndis_msg_parser +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x840dd143 rndis_deregister +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x988ad2a2 rndis_set_param_vendor +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x9acf72e4 rndis_set_param_medium +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xa90054ee rndis_uninit +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xb971ebca rndis_get_next_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xd2fe47b1 rndis_set_host_mac +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1710b539 fsg_fs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1b1cc3af store_cdrom_address +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x236ca09a fsg_show_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x2933ee1d fsg_ss_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x35a2d5a1 fsg_lun_open +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x39388f40 fsg_lun_fsync_sub +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x398778e1 fsg_ss_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x423845e4 fsg_ss_bulk_in_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x43ac062b fsg_lun_close +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x46877f56 fsg_show_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x50c3ecc0 fsg_store_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x56344daf fsg_hs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x7e0573a1 fsg_store_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x81e9c9b9 fsg_store_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x95cffb3e fsg_hs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5cae92f fsg_ss_bulk_out_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5f37c4c fsg_store_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5f99b69 fsg_fs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa8dacccd fsg_show_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb52ba28a fsg_intf_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb54d0d95 fsg_fs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xd05ad08f fsg_store_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xd2296c1b fsg_show_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xe7116d1d fsg_show_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xf4efc0c8 fsg_ss_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_rndis 0xc1e9c1b7 rndis_borrow_net +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0x2f0bcf19 sl811h_driver +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xa64a4cea usb_nop_xceiv_unregister +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xd0e43207 usb_nop_xceiv_register +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x126b479c usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x1d01a848 usb_wwan_set_termios +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x427b5adb usb_wwan_ioctl +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x4cba1166 usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x57432d90 usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x637ac8e5 usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x692fa3f3 usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x6bd6796e usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xab31b9e3 usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xc64d63a3 usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xc857d02e usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xd789600d usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xe492cbbe usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x18b39be3 usb_serial_resume +EXPORT_SYMBOL drivers/usb/serial/usbserial 0xe89c03d5 usb_serial_suspend +EXPORT_SYMBOL drivers/vhost/vringh 0x0dda8c5a vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x1f063017 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x2eae4a2a vringh_getdesc_user +EXPORT_SYMBOL drivers/vhost/vringh 0x36dfce73 vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3b304ebb vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3eaf442a vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x3fa42e4f vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x4311cd91 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5dafbd4e vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x66af098b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x6d0e7948 vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x76bd9a5d vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x97fa07e9 vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xaf8e4a0e vringh_notify_disable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xafb47dae vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc884d704 vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc8bee0a4 vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xda4ea4cc vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0xde804bb9 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/video/backlight/generic_bl 0x366d19ef genericbl_limit_intensity +EXPORT_SYMBOL drivers/video/backlight/lcd 0x0c037ba1 lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0x7ac0d977 lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0xc00b166c devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0xcaf79994 devm_lcd_device_register +EXPORT_SYMBOL drivers/video/cyber2000fb 0x0cc3ede5 cyber2000fb_detach +EXPORT_SYMBOL drivers/video/cyber2000fb 0x1193b12d cyber2000fb_attach +EXPORT_SYMBOL drivers/video/cyber2000fb 0x534b6f18 cyber2000fb_disable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xb39f68d1 cyber2000fb_enable_extregs +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x7ed9dcbf matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xc7702d4a g450_mnp2f +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xfecab8a0 matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x75c67fcd matrox_G100 +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x83f6351c DAC1064_global_restore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x8b608618 DAC1064_global_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xbc322d7a matrox_mystique +EXPORT_SYMBOL drivers/video/matrox/matroxfb_Ti3026 0xc3d35f7a matrox_millennium +EXPORT_SYMBOL drivers/video/matrox/matroxfb_accel 0xc773c69c matrox_cfbX_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x8d65a556 matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x9af729ed matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xbec708ed matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xe3da92d1 matroxfb_register_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x85e66eb0 matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0xf48f29dc matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x40c5a730 matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x658a1c1e matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x6b0f85e5 matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x8be7310b matroxfb_read_pins +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xe1f795fa matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/mb862xx/mb862xxfb 0xe4dbb429 mb862xxfb_init_accel +EXPORT_SYMBOL drivers/video/output 0x49f869b7 video_output_register +EXPORT_SYMBOL drivers/video/output 0x7abb3fd8 video_output_unregister +EXPORT_SYMBOL drivers/video/sis/sisfb 0x3037658e sis_malloc +EXPORT_SYMBOL drivers/video/sis/sisfb 0x454a3cf0 sis_free +EXPORT_SYMBOL drivers/video/svgalib 0x01f9179e svga_tilecursor +EXPORT_SYMBOL drivers/video/svgalib 0x13f09380 svga_get_caps +EXPORT_SYMBOL drivers/video/svgalib 0x17f3f471 svga_set_default_seq_regs +EXPORT_SYMBOL drivers/video/svgalib 0x1be6dc30 svga_set_textmode_vga_regs +EXPORT_SYMBOL drivers/video/svgalib 0x304c863c svga_get_tilemax +EXPORT_SYMBOL drivers/video/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/svgalib 0x6e4adb1e svga_check_timings +EXPORT_SYMBOL drivers/video/svgalib 0x7a8926d7 svga_tilefill +EXPORT_SYMBOL drivers/video/svgalib 0x80f24d95 svga_wcrt_multi +EXPORT_SYMBOL drivers/video/svgalib 0x8de63fb4 svga_set_timings +EXPORT_SYMBOL drivers/video/svgalib 0x90ed6e76 svga_tileblit +EXPORT_SYMBOL drivers/video/svgalib 0x998df1f7 svga_settile +EXPORT_SYMBOL drivers/video/svgalib 0xd1429fca svga_wseq_multi +EXPORT_SYMBOL drivers/video/svgalib 0xd22ca511 svga_set_default_atc_regs +EXPORT_SYMBOL drivers/video/svgalib 0xe264e736 svga_tilecopy +EXPORT_SYMBOL drivers/video/svgalib 0xe28d2a49 svga_set_default_gfx_regs +EXPORT_SYMBOL drivers/video/svgalib 0xef774f5d svga_compute_pll +EXPORT_SYMBOL drivers/video/svgalib 0xf2db5956 svga_match_format +EXPORT_SYMBOL drivers/video/vgastate 0x686de290 restore_vga +EXPORT_SYMBOL drivers/video/vgastate 0xe7a2620e save_vga +EXPORT_SYMBOL drivers/virt/fsl_hypervisor 0x45fd1882 fsl_hv_failover_unregister +EXPORT_SYMBOL drivers/virt/fsl_hypervisor 0x77c9b191 fsl_hv_failover_register +EXPORT_SYMBOL drivers/vme/vme 0x00d7e722 vme_lm_count +EXPORT_SYMBOL drivers/vme/vme 0x03c28f49 vme_dma_list_exec +EXPORT_SYMBOL drivers/vme/vme 0x072f901c vme_master_rmw +EXPORT_SYMBOL drivers/vme/vme 0x0980380c vme_unregister_bridge +EXPORT_SYMBOL drivers/vme/vme 0x0c6bdc3f vme_master_read +EXPORT_SYMBOL drivers/vme/vme 0x0ec5babe vme_dma_free +EXPORT_SYMBOL drivers/vme/vme 0x1156f382 vme_dma_request +EXPORT_SYMBOL drivers/vme/vme 0x20df5a3d vme_dma_pci_attribute +EXPORT_SYMBOL drivers/vme/vme 0x25ec5833 vme_dma_list_free +EXPORT_SYMBOL drivers/vme/vme 0x3e95083c vme_slave_get +EXPORT_SYMBOL drivers/vme/vme 0x46649cd1 vme_lm_set +EXPORT_SYMBOL drivers/vme/vme 0x48b99a13 vme_lm_free +EXPORT_SYMBOL drivers/vme/vme 0x4baf35a7 vme_master_get +EXPORT_SYMBOL drivers/vme/vme 0x52983a4f vme_master_write +EXPORT_SYMBOL drivers/vme/vme 0x535c8308 vme_dma_pattern_attribute +EXPORT_SYMBOL drivers/vme/vme 0x5aff4177 vme_lm_get +EXPORT_SYMBOL drivers/vme/vme 0x7119cb2e vme_lm_request +EXPORT_SYMBOL drivers/vme/vme 0x79a33f85 vme_get_size +EXPORT_SYMBOL drivers/vme/vme 0x7cf35220 vme_master_free +EXPORT_SYMBOL drivers/vme/vme 0x823c211c vme_register_driver +EXPORT_SYMBOL drivers/vme/vme 0x8a128738 vme_irq_generate +EXPORT_SYMBOL drivers/vme/vme 0x8e6f8419 vme_irq_handler +EXPORT_SYMBOL drivers/vme/vme 0x92375a26 vme_irq_free +EXPORT_SYMBOL drivers/vme/vme 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL drivers/vme/vme 0x9aeb07e8 vme_lm_attach +EXPORT_SYMBOL drivers/vme/vme 0xa2a335bd vme_alloc_consistent +EXPORT_SYMBOL drivers/vme/vme 0xa31bdf07 vme_master_set +EXPORT_SYMBOL drivers/vme/vme 0xaead9550 vme_unregister_driver +EXPORT_SYMBOL drivers/vme/vme 0xbef93881 vme_master_request +EXPORT_SYMBOL drivers/vme/vme 0xca5ee09a vme_free_consistent +EXPORT_SYMBOL drivers/vme/vme 0xd87bf139 vme_dma_list_add +EXPORT_SYMBOL drivers/vme/vme 0xdff905e5 vme_slave_free +EXPORT_SYMBOL drivers/vme/vme 0xe169950b vme_new_dma_list +EXPORT_SYMBOL drivers/vme/vme 0xe39f8624 vme_slave_request +EXPORT_SYMBOL drivers/vme/vme 0xe93f6bf5 vme_irq_request +EXPORT_SYMBOL drivers/vme/vme 0xec8e9c59 vme_register_bridge +EXPORT_SYMBOL drivers/vme/vme 0xefd1624a vme_dma_free_attribute +EXPORT_SYMBOL drivers/vme/vme 0xf476ca29 vme_slot_get +EXPORT_SYMBOL drivers/vme/vme 0xf5a10e25 vme_slave_set +EXPORT_SYMBOL drivers/vme/vme 0xf7f704a9 vme_bus_type +EXPORT_SYMBOL drivers/vme/vme 0xfacd8e72 vme_dma_vme_attribute +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x435e27e9 w1_ds2760_read +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x5032c74b w1_ds2760_write +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xab04a5ea w1_ds2760_recall_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xfb96ad8b w1_ds2760_store_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x8a98563a w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xe701aef7 w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x196ca5f7 w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x603aa2a8 w1_ds2781_io +EXPORT_SYMBOL drivers/w1/wire 0x04559d97 w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0x119bc8a7 w1_unregister_family +EXPORT_SYMBOL drivers/w1/wire 0x204610c8 w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0x7315374f w1_remove_master_device +EXPORT_SYMBOL fs/btrfs/btrfs 0x27476846 ulist_reinit +EXPORT_SYMBOL fs/btrfs/btrfs 0x41e6a9d2 ulist_init +EXPORT_SYMBOL fs/btrfs/btrfs 0x7e2ee765 ulist_free +EXPORT_SYMBOL fs/btrfs/btrfs 0xa2eec2e8 ulist_fini +EXPORT_SYMBOL fs/btrfs/btrfs 0xb1320bc8 ulist_add +EXPORT_SYMBOL fs/btrfs/btrfs 0xb42289d2 ulist_alloc +EXPORT_SYMBOL fs/btrfs/btrfs 0xc2c745db ulist_next +EXPORT_SYMBOL fs/configfs/configfs 0x16ab1b67 config_item_get +EXPORT_SYMBOL fs/configfs/configfs 0x2c25e5c4 config_item_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0x2e12f743 config_group_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0x844dd95f config_item_set_name +EXPORT_SYMBOL fs/configfs/configfs 0x9759bf0b config_item_init +EXPORT_SYMBOL fs/configfs/configfs 0x9b2835af configfs_depend_item +EXPORT_SYMBOL fs/configfs/configfs 0x9bfb4781 configfs_undepend_item +EXPORT_SYMBOL fs/configfs/configfs 0xaf06bd13 configfs_unregister_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0xb4a1c717 config_group_find_item +EXPORT_SYMBOL fs/configfs/configfs 0xb6f959eb config_group_init +EXPORT_SYMBOL fs/configfs/configfs 0xbb83b782 configfs_register_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0xd192c57c config_item_put +EXPORT_SYMBOL fs/exofs/libore 0x28806871 ore_verify_layout +EXPORT_SYMBOL fs/exofs/libore 0x3e80a1d7 ore_get_rw_state +EXPORT_SYMBOL fs/exofs/libore 0x4527e170 ore_calc_stripe_info +EXPORT_SYMBOL fs/exofs/libore 0x5acea4ef ore_remove +EXPORT_SYMBOL fs/exofs/libore 0x5ae20efc ore_truncate +EXPORT_SYMBOL fs/exofs/libore 0x7faab88b ore_put_io_state +EXPORT_SYMBOL fs/exofs/libore 0x8aae1069 ore_check_io +EXPORT_SYMBOL fs/exofs/libore 0x922e59a6 ore_create +EXPORT_SYMBOL fs/exofs/libore 0x957e33fd extract_attr_from_ios +EXPORT_SYMBOL fs/exofs/libore 0x95e876c7 ore_get_io_state +EXPORT_SYMBOL fs/exofs/libore 0xa3d2a634 g_attr_logical_length +EXPORT_SYMBOL fs/exofs/libore 0xb96d90e0 ore_read +EXPORT_SYMBOL fs/exofs/libore 0xfc7402c5 ore_write +EXPORT_SYMBOL fs/fscache/fscache 0x0fcd11f8 fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0x1352e50e fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0x151292da __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0x1f58dc7b fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0x1ff03f8d __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x29709e3b fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0x2e7c2b3d __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x38bbbdfd fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0x3be193a1 __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x3cadcb5a __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x40442405 __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x40835c39 fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x436fd5f7 __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x47d80e5b __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x47f0007c __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0x4d82fd9e fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0x4e60a3cd __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x549c6f3b fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0x6dd46c41 __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x72453d95 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x77048f3b __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x7d2612c6 fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0x905d87c3 __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x98948de1 fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x9f27eb09 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0xa25aa780 fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0xa99b69bd fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0xaaebd2a4 __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0xb0394f66 __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0xb8ed672c __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0xbe24c50d __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0xca02606c fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0xcd553fd5 fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0xcdc9f6d8 __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0xd68cd9ad __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0xdc682184 fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0xe09fd14b __fscache_write_page +EXPORT_SYMBOL fs/nfsd/nfsd 0x35e33c1e nfs4_acl_write_who +EXPORT_SYMBOL fs/nfsd/nfsd 0x5a157ae4 nfs4_acl_get_whotype +EXPORT_SYMBOL fs/nfsd/nfsd 0xa0f4b528 nfs4_acl_posix_to_nfsv4 +EXPORT_SYMBOL fs/nfsd/nfsd 0xb25b2957 nfs4_acl_nfsv4_to_posix +EXPORT_SYMBOL fs/nfsd/nfsd 0xe13337f0 nfs4_acl_new +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x09a25739 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x146017a4 qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x22896ddf qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x612d9a38 qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xebf63bc4 qtree_entry_unused +EXPORT_SYMBOL lib/cordic 0x434bfd07 cordic_calc_iq +EXPORT_SYMBOL lib/crc-ccitt 0x1a703ba1 crc_ccitt +EXPORT_SYMBOL lib/crc-ccitt 0x75811312 crc_ccitt_table +EXPORT_SYMBOL lib/crc-itu-t 0x6d356209 crc_itu_t +EXPORT_SYMBOL lib/crc-itu-t 0xd29b009f crc_itu_t_table +EXPORT_SYMBOL lib/crc7 0x6c1f6fee crc7 +EXPORT_SYMBOL lib/crc7 0xd80c3603 crc7_syndrome_table +EXPORT_SYMBOL lib/crc8 0xab9ad613 crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xd09b2cba crc8 +EXPORT_SYMBOL lib/crc8 0xd4534d80 crc8_populate_msb +EXPORT_SYMBOL lib/libcrc32c 0x27000b29 crc32c +EXPORT_SYMBOL lib/lru_cache 0x075e51fa lc_del +EXPORT_SYMBOL lib/lru_cache 0x2cda8c02 lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0x38e98b01 lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0x3aebca20 lc_try_get +EXPORT_SYMBOL lib/lru_cache 0x685c14b0 lc_destroy +EXPORT_SYMBOL lib/lru_cache 0x702b6f49 lc_put +EXPORT_SYMBOL lib/lru_cache 0x8c21fdc7 lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x8d7f0a81 lc_set +EXPORT_SYMBOL lib/lru_cache 0x98ada376 lc_committed +EXPORT_SYMBOL lib/lru_cache 0x9dd0b07e lc_find +EXPORT_SYMBOL lib/lru_cache 0xa08057ee lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xa73e2215 lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0xc8497f6a lc_create +EXPORT_SYMBOL lib/lru_cache 0xc88f82dd lc_is_used +EXPORT_SYMBOL lib/lru_cache 0xe66a1b75 lc_reset +EXPORT_SYMBOL lib/lru_cache 0xeadc1047 lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0xf4122c19 lc_get +EXPORT_SYMBOL lib/lz4/lz4_compress 0x0c222eb5 lz4_compress +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x682a23e0 lz4hc_compress +EXPORT_SYMBOL lib/raid6/raid6_pq 0x0bd662f6 raid6_gfmul +EXPORT_SYMBOL lib/raid6/raid6_pq 0x15fe0cd3 raid6_gfexp +EXPORT_SYMBOL lib/raid6/raid6_pq 0x5ba93f9d raid6_gfinv +EXPORT_SYMBOL lib/raid6/raid6_pq 0x7456cc61 raid6_empty_zero_page +EXPORT_SYMBOL lib/raid6/raid6_pq 0xce45a6f1 raid6_gfexi +EXPORT_SYMBOL lib/raid6/raid6_pq 0xd9e91f83 raid6_vgfmul +EXPORT_SYMBOL net/802/p8022 0x601f1d4d unregister_8022_client +EXPORT_SYMBOL net/802/p8022 0x73f8a1ac register_8022_client +EXPORT_SYMBOL net/802/p8023 0x2098f0b1 destroy_8023_client +EXPORT_SYMBOL net/802/p8023 0xfb8f9d13 make_8023_client +EXPORT_SYMBOL net/802/psnap 0x63a79026 unregister_snap_client +EXPORT_SYMBOL net/802/psnap 0x99f3769b register_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x07a277f6 p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x0e22272e v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0x0f856bff p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0x17c4a9f1 v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0x20c9a2e7 p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0x2a39e543 p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0x2f7572ed v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x35d1e27e p9_idpool_get +EXPORT_SYMBOL net/9p/9pnet 0x36175592 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x3aeaa2d6 p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x3f681ac4 p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0x44466372 p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0x44d2c2c0 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0x452d48e3 p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0x4b1ce476 p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0x52a74817 p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x5f2d9e28 p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0x62a5fab5 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0x69c7759b p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0x7e845f88 p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x8662780e p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0x8df95c95 p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0x92a4376f p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x936554f8 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0x9589d450 p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x977a0030 p9_nr_pages +EXPORT_SYMBOL net/9p/9pnet 0x97f01305 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x9a01d586 p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0xa22837ec p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0xa2b692bd p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0xa32b8ae0 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0xb95c5aea p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0xbd33f382 p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0xbf752dab p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0xc5db54a9 p9_idpool_destroy +EXPORT_SYMBOL net/9p/9pnet 0xc8a733c6 p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0xcc13a323 p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0xcee78adf p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0xd25bebe7 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0xd8c44aea p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0xdb3c3e35 p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0xe050a441 p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xe942395b p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0xf1a49843 p9_payload_gup +EXPORT_SYMBOL net/9p/9pnet 0xf2026dc8 p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0xf4a111d8 p9_idpool_create +EXPORT_SYMBOL net/9p/9pnet 0xf6d99a77 p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0xf84f2022 p9_idpool_put +EXPORT_SYMBOL net/9p/9pnet 0xf87ed60e p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0xfd40c79d p9_idpool_check +EXPORT_SYMBOL net/appletalk/appletalk 0x00458ddf atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0x2dc7f52c aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0x7e3eb569 atrtr_get_dev +EXPORT_SYMBOL net/appletalk/appletalk 0xada2d5e7 alloc_ltalkdev +EXPORT_SYMBOL net/atm/atm 0x03aa8c2e vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x2cc85195 atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0x2e0b155a atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x355dbb70 atm_charge +EXPORT_SYMBOL net/atm/atm 0x42d1e918 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x5149ebbf atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0x7a78b0a6 deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x84e862ea atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xb6073b09 atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0xc5ec7484 atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0xc973c15f atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0xca87b453 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0xdea31ba8 vcc_release_async +EXPORT_SYMBOL net/atm/atm 0xefbf1e96 vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/ax25/ax25 0x026c1368 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x0eb1d56a ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0x1719bf18 ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x3978a70b ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0x3afee63e ax25_findbyuid +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0x9a544d6c ax25_rebuild_header +EXPORT_SYMBOL net/ax25/ax25 0xa022a9af ax25_hard_header +EXPORT_SYMBOL net/ax25/ax25 0xa0c0b2de ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0xaca73273 ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0xacd60a1f ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xfd9c7bdf ax25_listen_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0bf9d4ec l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0f2f4089 hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0f69fe80 bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1314376d hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2c7fbc34 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3527e158 hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3d390dec hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x434742f3 bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4777c240 l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0x49cbac6e hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4d89b976 bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4d89d0ec hci_recv_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x51010de1 bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5161e54b hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x51d6da70 bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0x56d23511 bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5d7d32ce bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x601c7589 hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x63eee1f6 hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6baac2f4 __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x76b4c825 l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x78b321c7 l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7c640527 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7fa5df86 bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0x82828b63 bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9095c97a bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0x91c9a325 bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x954e6a5d bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x978a1639 bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0x98f42398 hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9d641d49 bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9ebae82f hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa5e62d14 hci_recv_stream_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa7a946cd l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb61a0c3b bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcc1fb551 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcfe64a10 __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdd3a2d8d bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe226a3c6 hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe54cb9bb bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf40b4ed7 hci_unregister_cb +EXPORT_SYMBOL net/bridge/bridge 0x49b62c86 br_should_route_hook +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x148e1e82 ebt_do_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xaad9e49e ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xdf02536c ebt_register_table +EXPORT_SYMBOL net/caif/caif 0x057f1991 caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +EXPORT_SYMBOL net/caif/caif 0x2a09f713 cfpkt_fromnative +EXPORT_SYMBOL net/caif/caif 0x329dbd06 cfpkt_info +EXPORT_SYMBOL net/caif/caif 0x38701a7c cfcnfg_del_phy_layer +EXPORT_SYMBOL net/caif/caif 0x399e8e5e cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x4a237e57 cfpkt_tonative +EXPORT_SYMBOL net/caif/caif 0x65b53419 caif_connect_client +EXPORT_SYMBOL net/caif/caif 0x6a44fc70 cfpkt_extr_head +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x943f5863 caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0x966d7de2 cfpkt_add_head +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/caif/caif 0xfe45f8ee get_cfcnfg +EXPORT_SYMBOL net/can/can 0x09ee0c8b can_rx_register +EXPORT_SYMBOL net/can/can 0x59181742 can_ioctl +EXPORT_SYMBOL net/can/can 0x5e3d1fe5 can_proto_register +EXPORT_SYMBOL net/can/can 0x85942d25 can_proto_unregister +EXPORT_SYMBOL net/can/can 0xe9e2a256 can_send +EXPORT_SYMBOL net/can/can 0xfb5be731 can_rx_unregister +EXPORT_SYMBOL net/ceph/libceph 0x0084adfb osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x0096c622 ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x01bddbb7 ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x031c949c ceph_osdc_set_request_linger +EXPORT_SYMBOL net/ceph/libceph 0x037a8ffd ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x09290ab3 ceph_debugfs_init +EXPORT_SYMBOL net/ceph/libceph 0x0d61c270 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0x0f534a88 osd_req_op_cls_response_data +EXPORT_SYMBOL net/ceph/libceph 0x12f85218 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0x1475bf0d ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x15a06ae0 ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0x197effcb ceph_osdc_release_request +EXPORT_SYMBOL net/ceph/libceph 0x20d151cb ceph_osdc_setup +EXPORT_SYMBOL net/ceph/libceph 0x21e1efa9 ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x228a05b9 ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x22f6d62c ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0x25285c87 ceph_osdc_build_request +EXPORT_SYMBOL net/ceph/libceph 0x260492e2 osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0x2852d2b2 ceph_client_id +EXPORT_SYMBOL net/ceph/libceph 0x319dd9ef osd_req_op_watch_init +EXPORT_SYMBOL net/ceph/libceph 0x35592be2 ceph_monc_create_snapid +EXPORT_SYMBOL net/ceph/libceph 0x3abec91f ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x3cf45443 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0x3df0ec7c ceph_calc_ceph_pg +EXPORT_SYMBOL net/ceph/libceph 0x3f688151 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x4205ffd7 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0x42b384f8 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0x437e8f72 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x43e458f6 ceph_file_part +EXPORT_SYMBOL net/ceph/libceph 0x43efd647 ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0x4418dcba osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x45713cfc ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0x45fc4e07 ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x479ef549 ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x47aeed08 ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0x4a283545 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x4a8f6027 ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0x4b42ce8a ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0x5379cea3 ceph_caps_for_mode +EXPORT_SYMBOL net/ceph/libceph 0x53cba3c9 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0x547b9683 __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x570ceb67 ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x578ff9b3 ceph_copy_page_vector_to_user +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x5b05907d ceph_get_direct_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x66f5ae66 osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x69d02331 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0x6b2e3bcd ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x6c5d5ac1 ceph_calc_pg_primary +EXPORT_SYMBOL net/ceph/libceph 0x6d79b048 ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x7168baf8 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0x77692acb ceph_msg_last_put +EXPORT_SYMBOL net/ceph/libceph 0x7a687029 ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0x7be7cb0c ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0x7fbe91ac osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0x81eae1b6 ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0x87b3dd00 ceph_monc_got_mdsmap +EXPORT_SYMBOL net/ceph/libceph 0x8de71bea ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x8f5e28d5 ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0x8fe41e30 osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x95544eeb osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0x99de4738 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x99e36571 ceph_osdc_cleanup +EXPORT_SYMBOL net/ceph/libceph 0x9f534f4d ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xa0c54ba9 ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0xa2eca4ff ceph_osdc_unregister_linger_request +EXPORT_SYMBOL net/ceph/libceph 0xa483ed7a ceph_osdc_cancel_event +EXPORT_SYMBOL net/ceph/libceph 0xa7f49f81 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xa83e8a85 ceph_osdc_writepages +EXPORT_SYMBOL net/ceph/libceph 0xae081bae ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0xae3515ba ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xaee9bae4 ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb6081d6d ceph_msgr_exit +EXPORT_SYMBOL net/ceph/libceph 0xb9aba59f ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xbabdd8d9 osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0xc10c6720 ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xc440d4b6 osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0xc4a80955 ceph_debugfs_cleanup +EXPORT_SYMBOL net/ceph/libceph 0xc55de604 ceph_parse_options +EXPORT_SYMBOL net/ceph/libceph 0xc982cc77 ceph_osdc_create_event +EXPORT_SYMBOL net/ceph/libceph 0xc9f82b38 ceph_msgr_init +EXPORT_SYMBOL net/ceph/libceph 0xcb50a624 ceph_parse_ips +EXPORT_SYMBOL net/ceph/libceph 0xccabe5ea ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xd2c107bb ceph_flags_to_mode +EXPORT_SYMBOL net/ceph/libceph 0xd8a3fb26 ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0xd97e8c47 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xdc027148 ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0xe0801dbb ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0xe2f5cdb7 ceph_osdc_put_event +EXPORT_SYMBOL net/ceph/libceph 0xe82c9c32 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0xe9537426 osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0xed229339 ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0xedfb5102 ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0xee7948da ceph_osdc_readpages +EXPORT_SYMBOL net/ceph/libceph 0xf2cac80a ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xf5774cba ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0xf7ca7a32 ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xf93f3feb ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0xf94f235e ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0xfc5a52cc ceph_msg_data_add_bio +EXPORT_SYMBOL net/dccp/dccp_ipv4 0xdd0249cd dccp_syn_ack_timeout +EXPORT_SYMBOL net/ieee802154/ieee802154 0x102060bc ieee802154_nl_scan_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x17a219f6 ieee802154_nl_disassoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x3a9fe3c7 ieee802154_nl_beacon_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x5195b8ef wpan_phy_alloc +EXPORT_SYMBOL net/ieee802154/ieee802154 0x68b2e4bf wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0x7bc7e27b ieee802154_nl_assoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x8507696d ieee802154_nl_disassoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0xb3ac3490 ieee802154_nl_start_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0xbff4c634 wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0xc02226b8 ieee802154_nl_assoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0xf1a3f094 wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0xf3953373 wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0xf3a24673 wpan_phy_find +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x53bc13f8 arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xa74a0ad2 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xbfe5329e arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x79d3ebec ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x82877132 ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xf236b95e ipt_do_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x3ba8bbfd xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0x5597e09e xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x394107ef ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x45acb8b6 ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x1b40d160 ip6t_do_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x1e184404 ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x3ca182d9 ip6t_register_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x05e86b54 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/tunnel6 0xb26b6024 xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x18b2ce91 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xa2e12a2f xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x782aecce ircomm_connect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x7e68be89 ircomm_open +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xaed63479 ircomm_flow_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xd442ef9b ircomm_data_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xe421ef04 ircomm_control_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xe7d6170d ircomm_close +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xf65ebf1c ircomm_connect_response +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xfa26cb77 ircomm_disconnect_request +EXPORT_SYMBOL net/irda/irda 0x0064e0ea hashbin_get_first +EXPORT_SYMBOL net/irda/irda 0x06a3ee58 irias_new_integer_value +EXPORT_SYMBOL net/irda/irda 0x07a11e63 async_unwrap_char +EXPORT_SYMBOL net/irda/irda 0x07d3647c irlmp_register_service +EXPORT_SYMBOL net/irda/irda 0x0e8594ae irttp_udata_request +EXPORT_SYMBOL net/irda/irda 0x19a92fa1 irlmp_connect_request +EXPORT_SYMBOL net/irda/irda 0x1e6cade0 irias_add_integer_attrib +EXPORT_SYMBOL net/irda/irda 0x2036ad06 irda_param_insert +EXPORT_SYMBOL net/irda/irda 0x26625423 iriap_getvaluebyclass_request +EXPORT_SYMBOL net/irda/irda 0x27d68191 irlap_close +EXPORT_SYMBOL net/irda/irda 0x33a750c4 irttp_open_tsap +EXPORT_SYMBOL net/irda/irda 0x33cbe2c6 proc_irda +EXPORT_SYMBOL net/irda/irda 0x38ea1eec iriap_open +EXPORT_SYMBOL net/irda/irda 0x3e56064f hashbin_new +EXPORT_SYMBOL net/irda/irda 0x400c8a78 alloc_irdadev +EXPORT_SYMBOL net/irda/irda 0x448b8aaa irda_qos_bits_to_value +EXPORT_SYMBOL net/irda/irda 0x46c1c4a2 irlmp_unregister_service +EXPORT_SYMBOL net/irda/irda 0x4a394ea5 irda_notify_init +EXPORT_SYMBOL net/irda/irda 0x527ba719 irttp_flow_request +EXPORT_SYMBOL net/irda/irda 0x54f82600 irttp_dup +EXPORT_SYMBOL net/irda/irda 0x5514ef38 irlmp_close_lsap +EXPORT_SYMBOL net/irda/irda 0x601bda46 hashbin_remove +EXPORT_SYMBOL net/irda/irda 0x6ab79caa async_wrap_skb +EXPORT_SYMBOL net/irda/irda 0x6b043eba irda_init_max_qos_capabilies +EXPORT_SYMBOL net/irda/irda 0x6b5fbcef hashbin_get_next +EXPORT_SYMBOL net/irda/irda 0x6e0ab3c7 irias_add_string_attrib +EXPORT_SYMBOL net/irda/irda 0x7042bc54 irlmp_register_client +EXPORT_SYMBOL net/irda/irda 0x763e54a4 irlmp_unregister_client +EXPORT_SYMBOL net/irda/irda 0x7957f728 irlmp_update_client +EXPORT_SYMBOL net/irda/irda 0x85d88217 irias_delete_object +EXPORT_SYMBOL net/irda/irda 0x88da8e26 irttp_data_request +EXPORT_SYMBOL net/irda/irda 0x91815586 irda_param_pack +EXPORT_SYMBOL net/irda/irda 0x95dbb455 irlmp_connect_response +EXPORT_SYMBOL net/irda/irda 0x993ad14b irda_param_extract_all +EXPORT_SYMBOL net/irda/irda 0xa1d41e58 hashbin_delete +EXPORT_SYMBOL net/irda/irda 0xa621afa1 irlmp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0xa8195bb0 irttp_connect_response +EXPORT_SYMBOL net/irda/irda 0xaa557515 irias_new_object +EXPORT_SYMBOL net/irda/irda 0xaaee2205 irlmp_open_lsap +EXPORT_SYMBOL net/irda/irda 0xb34ed216 irlmp_data_request +EXPORT_SYMBOL net/irda/irda 0xb9394173 irias_delete_value +EXPORT_SYMBOL net/irda/irda 0xbcd3ef13 irias_object_change_attribute +EXPORT_SYMBOL net/irda/irda 0xbe40ace9 irlmp_discovery_request +EXPORT_SYMBOL net/irda/irda 0xc68e43be irias_add_octseq_attrib +EXPORT_SYMBOL net/irda/irda 0xcead7dbb hashbin_find +EXPORT_SYMBOL net/irda/irda 0xd2108314 hashbin_insert +EXPORT_SYMBOL net/irda/irda 0xd3034a4a irttp_close_tsap +EXPORT_SYMBOL net/irda/irda 0xd6deeaae irda_setup_dma +EXPORT_SYMBOL net/irda/irda 0xdb893a07 irttp_connect_request +EXPORT_SYMBOL net/irda/irda 0xdba441c8 irttp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0xde4c6b3c irlmp_service_to_hint +EXPORT_SYMBOL net/irda/irda 0xe3463529 hashbin_lock_find +EXPORT_SYMBOL net/irda/irda 0xe3bde43e irias_insert_object +EXPORT_SYMBOL net/irda/irda 0xedd521c2 irlmp_get_discoveries +EXPORT_SYMBOL net/irda/irda 0xee2f5bae irda_device_set_media_busy +EXPORT_SYMBOL net/irda/irda 0xf00078ae irlap_open +EXPORT_SYMBOL net/irda/irda 0xf0a694a1 irias_find_object +EXPORT_SYMBOL net/irda/irda 0xf5876b95 hashbin_remove_this +EXPORT_SYMBOL net/irda/irda 0xfc4abfc5 iriap_close +EXPORT_SYMBOL net/l2tp/l2tp_core 0xbedde75a l2tp_recv_common +EXPORT_SYMBOL net/lapb/lapb 0x0d19dcd4 lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0x60be0acd lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0x663cbe4d lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0x6da77168 lapb_register +EXPORT_SYMBOL net/lapb/lapb 0x81cd048f lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0xde661644 lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0xe55d8f70 lapb_unregister +EXPORT_SYMBOL net/lapb/lapb 0xf9bbd724 lapb_connect_request +EXPORT_SYMBOL net/llc/llc 0x15371f76 llc_sap_open +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x3926986c llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0x4d51a9dd llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x7a3fd010 llc_sap_find +EXPORT_SYMBOL net/llc/llc 0x7ff61dc0 llc_sap_close +EXPORT_SYMBOL net/llc/llc 0x88e00885 llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0xafe7d7b9 llc_add_pack +EXPORT_SYMBOL net/llc/llc 0xc35e28f7 llc_sap_list_lock +EXPORT_SYMBOL net/mac80211/mac80211 0x009376f2 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x02b7a870 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0x050f911b ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0x075a8966 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x0902f5cf ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x0aa4cf9e ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x0cb9a777 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x144fbecf ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0x155cff40 ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x15b6306e ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x15f5ba3c ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x161e0d51 ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x180d266a ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x21a2ae71 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0x22536073 ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x263975f9 ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x33d71985 ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x359313d3 ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x4062b333 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0x42c996fa ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0x4893023b ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x545951cd ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x5a3d2fff ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0x5b3b1d37 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x5c28cca5 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x5e986f93 ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x5f131ae2 ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0x605dca64 ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0x656179fc ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x6add8e9a wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x6c4fd9c5 ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x6fb5b5fd ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0x752462b5 ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x7a008655 ieee80211_rx +EXPORT_SYMBOL net/mac80211/mac80211 0x7a229011 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x80360e4b ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0x83620ea2 ieee80211_alloc_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x83883c66 rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x8a236597 rate_control_send_low +EXPORT_SYMBOL net/mac80211/mac80211 0x90d24a29 ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0x9a2df007 ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x9c5e6334 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0x9e8a5b8b __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xa1fc36c4 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xa47349ff ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0xa52e219d ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0xa56f6656 ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xa6e90ff0 ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xaa157485 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0xaf570f6d ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0xb0d72cf6 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0xb16f6201 ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0xb7f9d32c ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0xc16a2d46 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xc7e90c1d ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0xc7e9782e ieee80211_get_key_tx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xcccafe99 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xd0a66f7d __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xd5147120 __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0xdb2caeac ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xddb47d52 ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xdfe9f916 ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0xe194cb23 ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xe841bdb5 ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0xe879290b ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0xeae6e0d3 __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xec2c4a94 ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xed702874 ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0xf2dc6ee5 ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xf395de03 ieee80211_aes_cmac_calculate_k1_k2 +EXPORT_SYMBOL net/mac80211/mac80211 0xf47a7871 ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0xf49f7928 ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0xf6f8b67e ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac802154/mac802154 0x13958a41 ieee802154_unregister_device +EXPORT_SYMBOL net/mac802154/mac802154 0x43558641 ieee802154_free_device +EXPORT_SYMBOL net/mac802154/mac802154 0xa521093d ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0xea96e08a ieee802154_alloc_device +EXPORT_SYMBOL net/mac802154/mac802154 0xecd01677 ieee802154_register_device +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x099f53cd ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x166df58c ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x224b238a ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3413392c register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x34a467bc unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3c1bd572 ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x4551f9e0 register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x4a162b44 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x4ac990e0 register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x5cc1bd9b ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x969a0a4c unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xa1812a27 ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xbb9ee6ce ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc1c863d7 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x2cd1c570 nf_conntrack_untracked +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xa50da4ca __nf_ct_ext_add_length +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xd5f53b02 __nf_ct_ext_destroy +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0x827cc6a1 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_conntrack_proto_gre 0x1d6aa9a3 nf_ct_gre_keymap_flush +EXPORT_SYMBOL net/netfilter/nf_nat 0x05d6711d nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0x4eb27cf3 nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0xcddcffda nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0xdaaec8cd nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xdfcdae5a __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xefa8187f nf_nat_used_tuple +EXPORT_SYMBOL net/netfilter/x_tables 0x045769d8 xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x08c473b7 xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0x0fb3b8ca xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0x253e8b44 xt_compat_init_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x41dccaf4 xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x453cf3e2 xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0x56b5a441 xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x64284301 xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xb28f5ef1 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xc7d46cb0 xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0xcb4ac252 xt_find_target +EXPORT_SYMBOL net/netfilter/x_tables 0xcce61bda xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0xdbb0199e xt_unregister_match +EXPORT_SYMBOL net/nfc/hci/hci 0x1ccda2fd nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0x20a1eb8e nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0x2ad43d6d nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0x43028a27 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x49a892e2 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x49b3f766 nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0x5401aed1 nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0x5a4233f6 nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0x9b4981e6 nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0xa10b62ad nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0xba474741 nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xbca0b4fd nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xc65a5824 nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xde39ab4b nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0xdfa0cf14 nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xe015090d nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0xf1520387 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0xf70d9703 nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0xf9dd2a40 nfc_hci_send_response +EXPORT_SYMBOL net/nfc/hci/hci 0xffc7e88f nfc_hci_set_param +EXPORT_SYMBOL net/nfc/nci/nci 0x4e66b045 nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0x75b21b24 nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x83f5b4d3 nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0x9e159133 nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xfbce05e9 nci_recv_frame +EXPORT_SYMBOL net/nfc/nfc 0x18aba86d nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0x2fc55e35 nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0x3b469a07 nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0x4e145853 nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0x52891357 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0x5b1d62c6 nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0x629d7960 nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0x734d1d9c nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x8160b932 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0x8257cbf1 nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0x8a1474d5 nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0x9d3140fb nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0xa72f2ff7 nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0xae738f21 nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0xafea81b0 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0xb6402dd1 nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xc51dd160 nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0xc9080333 nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0xd7de5255 nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0xee77e73e nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x1b2df7ee nfc_digital_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x1ce428c9 nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x64586877 nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xfdc866c8 nfc_digital_free_device +EXPORT_SYMBOL net/phonet/phonet 0x0066fc6c pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0x16870462 phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0x1adbb766 phonet_proto_register +EXPORT_SYMBOL net/phonet/phonet 0x5ca325ed pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0x602151ad phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0x8cc466b3 phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0xcf781c90 pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0xdd769ac8 pn_sock_get_port +EXPORT_SYMBOL net/rds/rds 0x7505d413 rds_str_array +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x2465bebb rxrpc_kernel_is_data_last +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x318c2f45 rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x3ce314f2 rxrpc_kernel_reject_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x6e44e830 rxrpc_kernel_free_skb +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x89c3fbec rxrpc_kernel_get_abort_code +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x97ea7c8c rxrpc_kernel_get_error_number +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xab79d792 rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xb5837c75 rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xb5ca6838 rxrpc_kernel_intercept_rx_messages +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xbdcd8aef rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xc346e493 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xcf5a854b rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xd0ee9df2 rxrpc_kernel_data_delivered +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xe4a38fed rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xed143158 rxrpc_kernel_accept_call +EXPORT_SYMBOL net/sctp/sctp 0xe2a5aae4 sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x13f9c3a1 gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x98a9ac72 gss_mech_get +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xa1fa0cdf gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/sunrpc 0x9c3e087e svc_pool_stats_open +EXPORT_SYMBOL net/wimax/wimax 0x15c1c372 wimax_rfkill +EXPORT_SYMBOL net/wimax/wimax 0x35438247 wimax_reset +EXPORT_SYMBOL net/wireless/cfg80211 0x01a0080e __ieee80211_get_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x0411f9fe cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x06a2597c cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x09c64fbd ieee80211_frequency_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x10aef5f3 wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0x142c0a7e cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x16475d37 cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0x17c614b1 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x19e03378 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0x1b154d44 freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0x1e2c1566 cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x213cdb5f cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x25eb0008 cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0x275880cf cfg80211_rx_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x2a3c813e cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x2b7b6510 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0x2df3af1b wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0x34a7ef1a cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0x35eecbc5 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0x39a1de10 cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0x406a8302 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x431f729d cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x48e86f26 cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x49223886 cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0x4c3b5878 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x4c40b2fb ieee80211_bss_get_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x504b7da4 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x51c9e3c0 cfg80211_report_obss_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x549ae50f ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x5f68bb16 cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x6704f01c cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6ca6ac28 ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0x6d6cb9ad ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x70051209 cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x730a2914 cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0x783d8f0a cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0x79735960 cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7fe1a403 cfg80211_find_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x8924a4af cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0x8c52aba4 cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x8c9ee582 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0x8f6aa206 wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x94cbb4c6 cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0x9533c36f cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x95f0280e cfg80211_inform_bss_width_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x97b25a57 cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x98263e8a wiphy_new +EXPORT_SYMBOL net/wireless/cfg80211 0x982e6b6d ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0x9c63d6d9 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0xa1425906 ieee80211_channel_to_frequency +EXPORT_SYMBOL net/wireless/cfg80211 0xa1683513 wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xa197b1ff ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xa66425d0 cfg80211_inform_bss_width +EXPORT_SYMBOL net/wireless/cfg80211 0xaa74a223 ieee80211_data_to_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0xb0f09dd2 cfg80211_roamed_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xb2c7c0e8 cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0xb7093f5d regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0xbbfc895b ieee80211_data_from_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0xbc8cbd4d cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0xbcfc35a7 cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0xbe7c2edd cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xbfa7b95b cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0xc15c8611 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0xc63f1b81 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0xcab238b1 cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0xcf618a57 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0xd0ff5612 cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xd44f34c0 ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xd9d6a999 cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0xda18e00f cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xddc94a65 cfg80211_del_sta +EXPORT_SYMBOL net/wireless/cfg80211 0xe69a8b76 cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0xe69f3cbf cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0xe9ac725e cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0xee42db3c cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xf3319332 cfg80211_connect_result +EXPORT_SYMBOL net/wireless/cfg80211 0xf614fceb cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0xf7592fae cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0xf9219646 cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xf988d31f wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0xfb0e11ed cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0xfed4d591 cfg80211_find_vendor_ie +EXPORT_SYMBOL net/wireless/lib80211 0x2d0f99e5 print_ssid +EXPORT_SYMBOL net/wireless/lib80211 0x3bab804f lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0x749f2792 lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0x7cd3efa8 lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xbdaf5be9 lib80211_get_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xdf181e6e lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0xfd85e917 lib80211_register_crypto_ops +EXPORT_SYMBOL sound/ac97_bus 0xb4dc0a70 ac97_bus_type +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1c9b3e5c snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7fcd97e9 snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq 0x9e77aa24 snd_seq_kernel_client_enqueue_blocking +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xcac0a3be snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0xceb994cd snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x3a57f235 snd_seq_autoload_unlock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x9448f68f snd_seq_device_new +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xb90668b2 snd_seq_autoload_lock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xc1beb8c5 snd_seq_device_register_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xc622fb29 snd_seq_device_unregister_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf0a1fdb3 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x072d978b snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x13a17752 snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x2eed26bf snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x4d5ca523 snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x592f6e9b snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xd7c7afcc snd_midi_event_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xe60fb228 snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xecbde43c snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0x9b4c96a3 snd_virmidi_new +EXPORT_SYMBOL sound/core/snd 0x0a33669e snd_card_file_remove +EXPORT_SYMBOL sound/core/snd 0x0cb39cae snd_info_create_card_entry +EXPORT_SYMBOL sound/core/snd 0x0d83919a snd_pci_quirk_lookup +EXPORT_SYMBOL sound/core/snd 0x0fbe85d3 snd_add_device_sysfs_file +EXPORT_SYMBOL sound/core/snd 0x13bd8f45 snd_ctl_notify +EXPORT_SYMBOL sound/core/snd 0x1730383f snd_device_new +EXPORT_SYMBOL sound/core/snd 0x18e1683f snd_dma_program +EXPORT_SYMBOL sound/core/snd 0x191e88cf snd_dma_pointer +EXPORT_SYMBOL sound/core/snd 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL sound/core/snd 0x25e848a8 snd_info_create_module_entry +EXPORT_SYMBOL sound/core/snd 0x2ae3deaa release_and_free_resource +EXPORT_SYMBOL sound/core/snd 0x2dfde420 snd_card_proc_new +EXPORT_SYMBOL sound/core/snd 0x30fc5422 snd_device_register +EXPORT_SYMBOL sound/core/snd 0x33905dae snd_ctl_find_numid +EXPORT_SYMBOL sound/core/snd 0x342a2354 copy_to_user_fromio +EXPORT_SYMBOL sound/core/snd 0x38cd1366 snd_card_unref +EXPORT_SYMBOL sound/core/snd 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL sound/core/snd 0x47d3bcad snd_ctl_find_id +EXPORT_SYMBOL sound/core/snd 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL sound/core/snd 0x4b015768 snd_iprintf +EXPORT_SYMBOL sound/core/snd 0x51b71cbe snd_unregister_device +EXPORT_SYMBOL sound/core/snd 0x529f70e6 snd_card_free_when_closed +EXPORT_SYMBOL sound/core/snd 0x5547cd67 snd_ctl_free_one +EXPORT_SYMBOL sound/core/snd 0x5cc06401 snd_power_wait +EXPORT_SYMBOL sound/core/snd 0x66e0eaa0 snd_ctl_unregister_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0x70c15ac1 snd_dma_disable +EXPORT_SYMBOL sound/core/snd 0x71c69825 snd_card_file_add +EXPORT_SYMBOL sound/core/snd 0x72481373 snd_ctl_new1 +EXPORT_SYMBOL sound/core/snd 0x725b77ba snd_info_free_entry +EXPORT_SYMBOL sound/core/snd 0x7ae599bd snd_ctl_rename_id +EXPORT_SYMBOL sound/core/snd 0x7e1ef815 snd_jack_set_key +EXPORT_SYMBOL sound/core/snd 0x81b69e41 snd_ctl_enum_info +EXPORT_SYMBOL sound/core/snd 0x8d239319 snd_ctl_remove_id +EXPORT_SYMBOL sound/core/snd 0x8f595b11 snd_major +EXPORT_SYMBOL sound/core/snd 0x93444ca2 snd_ctl_unregister_ioctl +EXPORT_SYMBOL sound/core/snd 0x94086384 snd_device_free +EXPORT_SYMBOL sound/core/snd 0x96947a6a snd_card_disconnect +EXPORT_SYMBOL sound/core/snd 0x985b6ca2 snd_ctl_boolean_mono_info +EXPORT_SYMBOL sound/core/snd 0x9a52fcf8 snd_card_free +EXPORT_SYMBOL sound/core/snd 0x9cd2b782 snd_info_register +EXPORT_SYMBOL sound/core/snd 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL sound/core/snd 0xa0fd2427 snd_pci_quirk_lookup_id +EXPORT_SYMBOL sound/core/snd 0xadf35992 snd_card_register +EXPORT_SYMBOL sound/core/snd 0xb0df42ad snd_cards +EXPORT_SYMBOL sound/core/snd 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL sound/core/snd 0xbe778395 snd_ctl_make_virtual_master +EXPORT_SYMBOL sound/core/snd 0xd6564099 snd_jack_report +EXPORT_SYMBOL sound/core/snd 0xd890f09d snd_ctl_add +EXPORT_SYMBOL sound/core/snd 0xd98bc54f snd_card_set_id +EXPORT_SYMBOL sound/core/snd 0xdbea6a28 snd_jack_new +EXPORT_SYMBOL sound/core/snd 0xe64dc505 snd_ctl_replace +EXPORT_SYMBOL sound/core/snd 0xea53120a snd_ctl_register_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0xedda8669 snd_card_create +EXPORT_SYMBOL sound/core/snd 0xee137d36 snd_ctl_remove +EXPORT_SYMBOL sound/core/snd 0xee592094 snd_register_device_for_dev +EXPORT_SYMBOL sound/core/snd 0xf3864474 snd_ctl_register_ioctl +EXPORT_SYMBOL sound/core/snd 0xf6694a5c snd_seq_root +EXPORT_SYMBOL sound/core/snd 0xfa40ed71 snd_ctl_boolean_stereo_info +EXPORT_SYMBOL sound/core/snd 0xfc7bd74b snd_jack_set_parent +EXPORT_SYMBOL sound/core/snd 0xfd5f2c80 snd_component_add +EXPORT_SYMBOL sound/core/snd 0xffd6a7ba _snd_ctl_add_slave +EXPORT_SYMBOL sound/core/snd 0xfffd89db copy_from_user_toio +EXPORT_SYMBOL sound/core/snd-hwdep 0x2a04fec8 snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-page-alloc 0x06b310c9 snd_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x0de7b53c snd_dma_alloc_pages_fallback +EXPORT_SYMBOL sound/core/snd-page-alloc 0x0e178461 snd_dma_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x5898dcba snd_malloc_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x727dc76e snd_dma_get_reserved_buf +EXPORT_SYMBOL sound/core/snd-page-alloc 0xa75d6da7 snd_dma_alloc_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0xbd2a1bdd snd_dma_reserve_buf +EXPORT_SYMBOL sound/core/snd-pcm 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL sound/core/snd-pcm 0x04cda566 snd_interval_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x08a6163b snd_pcm_lib_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x09da122b snd_pcm_hw_rule_add +EXPORT_SYMBOL sound/core/snd-pcm 0x0c0622e4 snd_pcm_set_sync +EXPORT_SYMBOL sound/core/snd-pcm 0x19c1fea7 snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL sound/core/snd-pcm 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL sound/core/snd-pcm 0x245455b8 snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL sound/core/snd-pcm 0x2d8b561a snd_pcm_lib_read +EXPORT_SYMBOL sound/core/snd-pcm 0x33f53830 snd_pcm_suspend_all +EXPORT_SYMBOL sound/core/snd-pcm 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x39bb3393 snd_pcm_notify +EXPORT_SYMBOL sound/core/snd-pcm 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL sound/core/snd-pcm 0x3c8cabe2 snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL sound/core/snd-pcm 0x427e6394 snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL sound/core/snd-pcm 0x42f08e2d _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x4bf18dae snd_pcm_debug_name +EXPORT_SYMBOL sound/core/snd-pcm 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL sound/core/snd-pcm 0x596d025f snd_pcm_hw_constraint_integer +EXPORT_SYMBOL sound/core/snd-pcm 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL sound/core/snd-pcm 0x62f89d39 snd_pcm_lib_mmap_iomem +EXPORT_SYMBOL sound/core/snd-pcm 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL sound/core/snd-pcm 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL sound/core/snd-pcm 0x69ddd95b snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x6cb2b886 snd_pcm_lib_malloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x6e4f6026 snd_pcm_new_stream +EXPORT_SYMBOL sound/core/snd-pcm 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL sound/core/snd-pcm 0x70dcbfaa snd_pcm_stop +EXPORT_SYMBOL sound/core/snd-pcm 0x73ea6d93 snd_pcm_period_elapsed +EXPORT_SYMBOL sound/core/snd-pcm 0x755e665a snd_pcm_hw_constraint_list +EXPORT_SYMBOL sound/core/snd-pcm 0x789262f9 snd_pcm_limit_hw_rates +EXPORT_SYMBOL sound/core/snd-pcm 0x7e3a882f snd_pcm_mmap_data +EXPORT_SYMBOL sound/core/snd-pcm 0x834dc955 snd_pcm_format_size +EXPORT_SYMBOL sound/core/snd-pcm 0x8a61979b snd_pcm_new +EXPORT_SYMBOL sound/core/snd-pcm 0x94098ff8 snd_interval_list +EXPORT_SYMBOL sound/core/snd-pcm 0x94a7a988 snd_pcm_hw_param_last +EXPORT_SYMBOL sound/core/snd-pcm 0x94eb1fb1 snd_pcm_hw_constraint_step +EXPORT_SYMBOL sound/core/snd-pcm 0x9ddf3724 snd_pcm_suspend +EXPORT_SYMBOL sound/core/snd-pcm 0xa2110ac4 snd_pcm_hw_rule_noresample +EXPORT_SYMBOL sound/core/snd-pcm 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL sound/core/snd-pcm 0xa9688de0 snd_pcm_hw_refine +EXPORT_SYMBOL sound/core/snd-pcm 0xaefcad8b snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL sound/core/snd-pcm 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL sound/core/snd-pcm 0xbcc54eeb snd_pcm_lib_writev +EXPORT_SYMBOL sound/core/snd-pcm 0xbda8817f snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xc81f5d7a snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL sound/core/snd-pcm 0xcd2e7213 snd_pcm_set_ops +EXPORT_SYMBOL sound/core/snd-pcm 0xcd31ef24 snd_pcm_new_internal +EXPORT_SYMBOL sound/core/snd-pcm 0xceea46d2 snd_pcm_lib_write +EXPORT_SYMBOL sound/core/snd-pcm 0xd1a9427b snd_pcm_release_substream +EXPORT_SYMBOL sound/core/snd-pcm 0xd5fb21a2 snd_pcm_link_rwlock +EXPORT_SYMBOL sound/core/snd-pcm 0xda490a68 snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0xe0c099b2 snd_pcm_open_substream +EXPORT_SYMBOL sound/core/snd-pcm 0xe556f325 snd_pcm_lib_readv +EXPORT_SYMBOL sound/core/snd-pcm 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL sound/core/snd-pcm 0xe80a1613 snd_pcm_kernel_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0xeac6e6e7 snd_pcm_lib_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xf3797152 snd_interval_ratnum +EXPORT_SYMBOL sound/core/snd-pcm 0xf5ad8e45 snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0xfe3e394c snd_pcm_hw_param_first +EXPORT_SYMBOL sound/core/snd-pcm 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL sound/core/snd-rawmidi 0x05c71832 snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0eede5c1 snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x1991fdcd snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x2e973432 snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-rawmidi 0x30e67b0e snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0x3bd2ebd6 snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0x3ed2135e snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0x3f6542ca snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x422336aa snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0x85e617e7 snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0x91792755 snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-rawmidi 0x9d57f7ce snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-rawmidi 0xa1d9c78a snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0xbd46f4d9 snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0xcd65b7d8 snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0xddac40c9 snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-rawmidi 0xea3d66e7 snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-timer 0x03c0c24c snd_timer_stop +EXPORT_SYMBOL sound/core/snd-timer 0x21ab25d3 snd_timer_global_register +EXPORT_SYMBOL sound/core/snd-timer 0x21c009fa snd_timer_start +EXPORT_SYMBOL sound/core/snd-timer 0x2b657a42 snd_timer_open +EXPORT_SYMBOL sound/core/snd-timer 0x452540b2 snd_timer_new +EXPORT_SYMBOL sound/core/snd-timer 0x6889bc8b snd_timer_global_new +EXPORT_SYMBOL sound/core/snd-timer 0x70bc6a77 snd_timer_interrupt +EXPORT_SYMBOL sound/core/snd-timer 0x83fb826c snd_timer_notify +EXPORT_SYMBOL sound/core/snd-timer 0xb8d479db snd_timer_global_free +EXPORT_SYMBOL sound/core/snd-timer 0xc5eb3ca7 snd_timer_pause +EXPORT_SYMBOL sound/core/snd-timer 0xc824ba7d snd_timer_resolution +EXPORT_SYMBOL sound/core/snd-timer 0xcfdacd93 snd_timer_continue +EXPORT_SYMBOL sound/core/snd-timer 0xe34b4821 snd_timer_close +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xfaa8294a snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x03659aff snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x0b23cd3a snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x3fa1c42b snd_opl3_reset +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x63c72620 snd_opl3_create +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x8c36d177 snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xa5d0dcd6 snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xcf911d1f snd_opl3_init +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xdbfee1da snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xe669e9c9 snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x0a71e0cf snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x60154661 snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x66b15666 snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x6e8a87d1 snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x8165cd4a snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xa99cde94 snd_vx_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xd98c6a0d snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xda914913 snd_vx_dsp_boot +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf09a62a5 snd_vx_resume +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x070ab856 fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x07aa1be1 amdtp_out_stream_set_pcm_format +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x262952ce fcp_avc_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x3bded537 amdtp_out_stream_set_parameters +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x4574528d cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x4612fa31 fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x481d9709 cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x4a038fd0 amdtp_out_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x4b521f62 cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x4f70b60a fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x55ace83d amdtp_out_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x56f95609 cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x641e417d iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x6640550b fw_iso_resources_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x792cedf2 fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x7ed6dc20 fw_iso_resources_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x82f2fa2a amdtp_out_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x99e53c77 amdtp_out_stream_start +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x9d5bb049 cmp_connection_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc65dd859 iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc706aa09 amdtp_out_stream_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd61d2347 amdtp_out_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xed7e0abd snd_fw_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xee701774 amdtp_out_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf4cea073 amdtp_out_stream_stop +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf53e4177 amdtp_out_stream_pcm_pointer +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x5270f421 snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x7eb31d52 snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x9b4a446c snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xa388a6a4 snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xbe0c5a5d snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xcb01885a snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x04bad88d snd_ak4117_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x342b0739 snd_ak4117_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x63a69849 snd_ak4117_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x97036422 snd_ak4117_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xc2e22f24 snd_ak4117_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xc65a21bc snd_ak4117_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x04adc8db snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x14898c15 snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x59e6c7a7 snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x792b2750 snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x6cce9e54 snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0xf36821f6 snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x72b56e1c snd_cs8427_iec958_active +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x7a0d75e1 snd_cs8427_create +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x87498982 snd_cs8427_reg_write +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xd7329ecb snd_cs8427_iec958_pcm +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xdd4231b2 snd_cs8427_iec958_build +EXPORT_SYMBOL sound/i2c/snd-i2c 0x10140577 snd_i2c_readbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x1879b2d2 snd_i2c_bus_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x3faa9fba snd_i2c_sendbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x7bb45ad8 snd_i2c_device_free +EXPORT_SYMBOL sound/i2c/snd-i2c 0x94946af6 snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x99208537 snd_i2c_probeaddr +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x08048159 snd_sbdsp_reset +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x1681f9a1 snd_sbmixer_resume +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x2140c73f snd_sbdsp_get_byte +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x24eb42d3 snd_sbmixer_read +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x836f9958 snd_sbdsp_create +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x90c9a817 snd_sbmixer_suspend +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x96db001a snd_sbdsp_command +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xa61e7971 snd_sbmixer_new +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xd8ac96b4 snd_sbmixer_write +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xecb86dc3 snd_sbmixer_add_ctl +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x056642be snd_sb16dsp_get_pcm_ops +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x5e48eece snd_sb16dsp_configure +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x949695e4 snd_sb16dsp_pcm +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xe0b3f690 snd_sb16dsp_interrupt +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x016e4d3c snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x125b3bd7 snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x1583bed2 snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x3faeb364 snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x698af7bc snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x6a949b2b snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x762fa745 snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x7cbdbc6c snd_ac97_resume +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x7fed4771 snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x8a3d4a95 snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xa795e9b7 snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xb46bde97 snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xb90f3150 snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xcd28d14c snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xd8562e4c snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xdb168d42 snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xe9d5c3c0 snd_ac97_update_power +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x1c5659c0 snd_emu10k1_voice_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x2dcf7837 snd_emu10k1_voice_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x38e67859 snd_emu10k1_synth_copy_from_user +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x5e6a8168 snd_emu10k1_synth_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x93111999 snd_emu10k1_ptr_read +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x931b5c53 snd_emu10k1_synth_bzero +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xd347532f snd_emu10k1_ptr_write +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xd8497d9e snd_emu10k1_synth_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xf78a36c5 snd_emu10k1_memblk_map +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xa6e0c5ce snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xe0c86935 snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xe83291f4 snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x11dd558a oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x14311dca oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x21ded3c1 oxygen_write_i2c +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x26fa4865 oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x3bcc0757 oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x46f49761 oxygen_write32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x4f5b7bf0 oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x6528a5b8 oxygen_write16_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x69d77c4b oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x6b6b07ae oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x744a0357 oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x995b8cf0 oxygen_read8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x9b9b1c0f oxygen_pci_remove +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x9e108ff9 oxygen_pci_probe +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xbc4c4556 oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xe0966f1b oxygen_write8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xe4071e7e oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xee795b5b oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xf2452b3b oxygen_write_uart +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x7f6db72a snd_trident_stop_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x8170b1cc snd_trident_free_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xafa3c8f6 snd_trident_alloc_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xe7690ee9 snd_trident_write_voice_regs +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xf7477045 snd_trident_start_voice +EXPORT_SYMBOL sound/soundcore 0xccad175c sound_class +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x33d681de snd_emux_lock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x655cb202 snd_sf_linear_to_log +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x731166d5 snd_emux_new +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x75a54654 snd_emux_terminate_all +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x902fb2a4 snd_emux_free +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xa53206b4 snd_emux_register +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xb705d924 snd_emux_unlock_voice +EXPORT_SYMBOL sound/synth/snd-util-mem 0x1a3afa6d __snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x2b6fbbbf snd_util_mem_avail +EXPORT_SYMBOL sound/synth/snd-util-mem 0x2fff611d snd_util_memhdr_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x6fc0dc5b __snd_util_memblk_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x7e09df31 __snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0xcd9fc242 snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0xd280b3fe snd_util_memhdr_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0xd5201b54 snd_util_mem_free +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xb51793b3 snd_usbmidi_create +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL vmlinux 0x00000000 __symbol_put +EXPORT_SYMBOL vmlinux 0x00000000 current_fs_time +EXPORT_SYMBOL vmlinux 0x00000000 d_tmpfile +EXPORT_SYMBOL vmlinux 0x00000000 do_sync_read +EXPORT_SYMBOL vmlinux 0x00000000 filp_close +EXPORT_SYMBOL vmlinux 0x00000000 finish_open +EXPORT_SYMBOL vmlinux 0x00000000 generic_getxattr +EXPORT_SYMBOL vmlinux 0x00000000 generic_write_sync +EXPORT_SYMBOL vmlinux 0x00000000 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x00000000 in_group_p +EXPORT_SYMBOL vmlinux 0x00000000 inode_add_bytes +EXPORT_SYMBOL vmlinux 0x00000000 iov_shorten +EXPORT_SYMBOL vmlinux 0x00000000 iterate_fd +EXPORT_SYMBOL vmlinux 0x00000000 ns_capable +EXPORT_SYMBOL vmlinux 0x00000000 path_is_under +EXPORT_SYMBOL vmlinux 0x00000000 register_exec_domain +EXPORT_SYMBOL vmlinux 0x00000000 schedule_timeout +EXPORT_SYMBOL vmlinux 0x00000000 sock_register +EXPORT_SYMBOL vmlinux 0x00000000 sys_close +EXPORT_SYMBOL vmlinux 0x00000000 task_nice +EXPORT_SYMBOL vmlinux 0x00000000 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x00000000 vm_brk +EXPORT_SYMBOL vmlinux 0x00025da3 from_kgid +EXPORT_SYMBOL vmlinux 0x0019ed59 textsearch_unregister +EXPORT_SYMBOL vmlinux 0x004f4a5f nonseekable_open +EXPORT_SYMBOL vmlinux 0x004f6c71 lro_receive_frags +EXPORT_SYMBOL vmlinux 0x005edb1f neigh_seq_stop +EXPORT_SYMBOL vmlinux 0x005f95cc __f_setown +EXPORT_SYMBOL vmlinux 0x007f3d03 max8925_set_bits +EXPORT_SYMBOL vmlinux 0x007ff178 fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0x00801678 flush_scheduled_work +EXPORT_SYMBOL vmlinux 0x00cf4a7f of_get_parent +EXPORT_SYMBOL vmlinux 0x00db1d48 netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0x00e998d3 vm_insert_page +EXPORT_SYMBOL vmlinux 0x00fa07de xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x0102b27d kernel_bind +EXPORT_SYMBOL vmlinux 0x0104951b netdev_update_features +EXPORT_SYMBOL vmlinux 0x01092ef4 rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x01139ffc max_mapnr +EXPORT_SYMBOL vmlinux 0x012a97fc xor_altivec_4 +EXPORT_SYMBOL vmlinux 0x0137c8bc scsi_unregister +EXPORT_SYMBOL vmlinux 0x01495839 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x01557742 __break_lease +EXPORT_SYMBOL vmlinux 0x01902adf netpoll_trap +EXPORT_SYMBOL vmlinux 0x019e7765 __init_rwsem +EXPORT_SYMBOL vmlinux 0x01b755b2 md_register_thread +EXPORT_SYMBOL vmlinux 0x01c8e84d ida_simple_get +EXPORT_SYMBOL vmlinux 0x01d1a23f generic_delete_inode +EXPORT_SYMBOL vmlinux 0x01f60e93 in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x023fe00c register_qdisc +EXPORT_SYMBOL vmlinux 0x0246a7c1 alloc_anon_inode +EXPORT_SYMBOL vmlinux 0x024d4792 blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0x02649054 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x0274d05b of_get_ddr_timings +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x0294f256 jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0x02975361 skb_make_writable +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a6ce5a crc16_table +EXPORT_SYMBOL vmlinux 0x02ab3209 tc_classify +EXPORT_SYMBOL vmlinux 0x02b6679a blk_queue_invalidate_tags +EXPORT_SYMBOL vmlinux 0x02ba1ad7 netif_napi_add +EXPORT_SYMBOL vmlinux 0x02d12433 dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0x02ec56ca inode_init_always +EXPORT_SYMBOL vmlinux 0x02fc1d76 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x031e6d78 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x03350acf xfrm_lookup +EXPORT_SYMBOL vmlinux 0x0344f3cf vfs_symlink +EXPORT_SYMBOL vmlinux 0x03592ea0 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x0361471b register_netdev +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x036cc796 pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x0376c369 filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0x0376e8e9 max8925_bulk_write +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x0384d009 commit_creds +EXPORT_SYMBOL vmlinux 0x03915275 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x039f6bea seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x03bc8d17 xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x03c06156 bitmap_fold +EXPORT_SYMBOL vmlinux 0x03e90cd4 bitmap_unplug +EXPORT_SYMBOL vmlinux 0x03ebda85 dns_query +EXPORT_SYMBOL vmlinux 0x03f95183 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x04074f48 ioremap +EXPORT_SYMBOL vmlinux 0x0422fe4a inet_csk_timer_bug_msg +EXPORT_SYMBOL vmlinux 0x042f6a55 sk_common_release +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x0456f467 sock_get_timestampns +EXPORT_SYMBOL vmlinux 0x0477b9df netpoll_parse_options +EXPORT_SYMBOL vmlinux 0x0478334e md_write_start +EXPORT_SYMBOL vmlinux 0x0478ab60 ipv6_select_ident +EXPORT_SYMBOL vmlinux 0x0487f831 fb_find_best_display +EXPORT_SYMBOL vmlinux 0x04a702f6 simple_readpage +EXPORT_SYMBOL vmlinux 0x04dbb2a1 vm_map_ram +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04ea5d10 ksize +EXPORT_SYMBOL vmlinux 0x04fe948f mmc_erase +EXPORT_SYMBOL vmlinux 0x051453fc ps2_drain +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x0530dede _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x05317be4 mdiobus_read +EXPORT_SYMBOL vmlinux 0x0532695f wait_on_page_bit +EXPORT_SYMBOL vmlinux 0x054434d6 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x0556b490 account_page_dirtied +EXPORT_SYMBOL vmlinux 0x055c8559 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x05642987 gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0x057ed396 tty_lock +EXPORT_SYMBOL vmlinux 0x0593a99b init_timer_key +EXPORT_SYMBOL vmlinux 0x05a514a1 _insl_ns +EXPORT_SYMBOL vmlinux 0x05ccaec2 dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x05fd68e1 dev_addr_add +EXPORT_SYMBOL vmlinux 0x06065d52 loop_register_transfer +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x063a86fb __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x06489d52 bman_rcr_is_empty +EXPORT_SYMBOL vmlinux 0x0653a2ab dma_async_memcpy_buf_to_buf +EXPORT_SYMBOL vmlinux 0x0670f238 blk_mq_end_io +EXPORT_SYMBOL vmlinux 0x0671fa28 phy_attach_direct +EXPORT_SYMBOL vmlinux 0x067d8d35 security_release_secctx +EXPORT_SYMBOL vmlinux 0x06bbb24a mempool_resize +EXPORT_SYMBOL vmlinux 0x06c72e54 update_region +EXPORT_SYMBOL vmlinux 0x06ddf9b1 fsl_ifc_ctrl_dev +EXPORT_SYMBOL vmlinux 0x06f2f0c8 textsearch_prepare +EXPORT_SYMBOL vmlinux 0x06f73237 input_event +EXPORT_SYMBOL vmlinux 0x06fe3b14 default_grn +EXPORT_SYMBOL vmlinux 0x07006632 padata_start +EXPORT_SYMBOL vmlinux 0x0727c4f3 iowrite8 +EXPORT_SYMBOL vmlinux 0x072c65cb revalidate_disk +EXPORT_SYMBOL vmlinux 0x074e9213 down_killable +EXPORT_SYMBOL vmlinux 0x0762464b ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x0799aca4 local_bh_enable +EXPORT_SYMBOL vmlinux 0x079ed1e7 dev_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x07a72fba scsi_prep_state_check +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07d872b5 of_scan_pci_bridge +EXPORT_SYMBOL vmlinux 0x07eb4559 tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0x07f9a48f net_dma_find_channel +EXPORT_SYMBOL vmlinux 0x0807f014 unregister_console +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x083c2cbe of_get_next_parent +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x08824065 pcie_set_mps +EXPORT_SYMBOL vmlinux 0x08a0b32f invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x08a882b0 iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0x08cc84e7 __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x08df346e dev_change_carrier +EXPORT_SYMBOL vmlinux 0x090a24ec input_unregister_device +EXPORT_SYMBOL vmlinux 0x09227f08 __register_chrdev +EXPORT_SYMBOL vmlinux 0x0927fd4b vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0x0931467e skb_find_text +EXPORT_SYMBOL vmlinux 0x0936cce4 xfrm6_prepare_output +EXPORT_SYMBOL vmlinux 0x09370a75 keyring_alloc +EXPORT_SYMBOL vmlinux 0x096b9932 netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0x096e7367 proc_set_user +EXPORT_SYMBOL vmlinux 0x097807b5 locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x097bbe5e add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0x098943a4 blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x09994a00 compat_sock_get_timestamp +EXPORT_SYMBOL vmlinux 0x09b6dc0c ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x09c55cec schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09cd1687 mmc_gpio_request_cd +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x0a065d17 nla_put +EXPORT_SYMBOL vmlinux 0x0a1e7b83 sg_miter_next +EXPORT_SYMBOL vmlinux 0x0a214566 page_follow_link_light +EXPORT_SYMBOL vmlinux 0x0a2487e0 unblock_all_signals +EXPORT_SYMBOL vmlinux 0x0a4595d9 seq_release_private +EXPORT_SYMBOL vmlinux 0x0a64d537 d_alloc_pseudo +EXPORT_SYMBOL vmlinux 0x0a9b3cb5 sock_alloc_file +EXPORT_SYMBOL vmlinux 0x0a9f6d59 pme_attr_set +EXPORT_SYMBOL vmlinux 0x0ab7ccb2 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0x0ac9a875 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0x0acb1a3c __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0afc4f59 qman_enqueue_orp +EXPORT_SYMBOL vmlinux 0x0b0d855f dst_discard +EXPORT_SYMBOL vmlinux 0x0b0d888b icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0x0b1b950a do_splice_to +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b30fa63 sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0x0b38ac45 dev_get_by_flags_rcu +EXPORT_SYMBOL vmlinux 0x0b56117f of_find_node_by_path +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b8695b7 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0x0bb4fe40 __splice_from_pipe +EXPORT_SYMBOL vmlinux 0x0bb8be42 generic_write_checks +EXPORT_SYMBOL vmlinux 0x0bbc4430 xfrm_garbage_collect +EXPORT_SYMBOL vmlinux 0x0bbc5908 gen_estimator_active +EXPORT_SYMBOL vmlinux 0x0bbec8d8 rtnl_notify +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0c431806 page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0x0c45fc96 vfs_lstat +EXPORT_SYMBOL vmlinux 0x0c58a8cd netdev_increment_features +EXPORT_SYMBOL vmlinux 0x0c60abfa skb_tx_error +EXPORT_SYMBOL vmlinux 0x0c65e73c scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0x0c8c9e99 scsi_show_extd_sense +EXPORT_SYMBOL vmlinux 0x0ca0c882 twl6030_interrupt_mask +EXPORT_SYMBOL vmlinux 0x0cae232b utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0x0ce900af blk_finish_plug +EXPORT_SYMBOL vmlinux 0x0cff0fcf blk_queue_io_min +EXPORT_SYMBOL vmlinux 0x0d0a251c unlock_rename +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d6c963c copy_from_user +EXPORT_SYMBOL vmlinux 0x0d82328f vga_put +EXPORT_SYMBOL vmlinux 0x0d935876 ata_std_end_eh +EXPORT_SYMBOL vmlinux 0x0da10ec3 security_sock_graft +EXPORT_SYMBOL vmlinux 0x0da65c4f dev_add_offload +EXPORT_SYMBOL vmlinux 0x0de831dc swiotlb_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0x0df4377a set_binfmt +EXPORT_SYMBOL vmlinux 0x0dfa9ec4 __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x0e2cabcf jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0x0e31fa00 cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0x0e440b8d inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0x0e50c99e iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0x0e6da44a set_normalized_timespec +EXPORT_SYMBOL vmlinux 0x0e769ace alloc_fcdev +EXPORT_SYMBOL vmlinux 0x0e883302 devm_gpio_request_one +EXPORT_SYMBOL vmlinux 0x0e8f30f6 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x0e915a0d uart_match_port +EXPORT_SYMBOL vmlinux 0x0ea359fd dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0x0ed83366 __blk_end_request +EXPORT_SYMBOL vmlinux 0x0eefb814 _dev_info +EXPORT_SYMBOL vmlinux 0x0efa873f mb_cache_entry_alloc +EXPORT_SYMBOL vmlinux 0x0efcbb1b set_current_groups +EXPORT_SYMBOL vmlinux 0x0f095add vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0x0f1b486b scsi_remove_device +EXPORT_SYMBOL vmlinux 0x0f4c91ed ns_to_timespec +EXPORT_SYMBOL vmlinux 0x0f5faa7e wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x0f6f9125 __ethtool_get_settings +EXPORT_SYMBOL vmlinux 0x0f78d891 inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0x0f86605c dquot_enable +EXPORT_SYMBOL vmlinux 0x0f8c0149 pme2_have_control +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fc7a2e8 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0x0fe9682e compat_mc_setsockopt +EXPORT_SYMBOL vmlinux 0x0ff970a3 qman_create_fq +EXPORT_SYMBOL vmlinux 0x1009a237 agp_create_memory +EXPORT_SYMBOL vmlinux 0x10303cd2 tty_pair_get_pty +EXPORT_SYMBOL vmlinux 0x10310cc7 truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x1051275e km_new_mapping +EXPORT_SYMBOL vmlinux 0x10a9c079 input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0x10b84d5c udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0x10bcf009 mmc_power_save_host +EXPORT_SYMBOL vmlinux 0x10c3b1e7 bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x10ee20bb default_blu +EXPORT_SYMBOL vmlinux 0x10f7cd21 compat_sock_get_timestampns +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x1112c256 __devcgroup_inode_permission +EXPORT_SYMBOL vmlinux 0x11267875 scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0x1131633f __bio_clone +EXPORT_SYMBOL vmlinux 0x114da6ce padata_set_cpumask +EXPORT_SYMBOL vmlinux 0x115cb933 keyring_clear +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x1182d83a cpuidle_disable +EXPORT_SYMBOL vmlinux 0x11c9185c of_iomap +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x122043a8 of_find_node_with_property +EXPORT_SYMBOL vmlinux 0x1235a2e6 account_page_writeback +EXPORT_SYMBOL vmlinux 0x124c4853 __scm_send +EXPORT_SYMBOL vmlinux 0x124d31a5 xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x126e96d0 bdi_register +EXPORT_SYMBOL vmlinux 0x127c9e5f bh_submit_read +EXPORT_SYMBOL vmlinux 0x1288a113 simple_dir_operations +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12dfeb12 vprintk_emit +EXPORT_SYMBOL vmlinux 0x130a0c04 bio_advance +EXPORT_SYMBOL vmlinux 0x1314b935 __wait_on_buffer +EXPORT_SYMBOL vmlinux 0x13188c56 skb_append +EXPORT_SYMBOL vmlinux 0x13307fde vsscanf +EXPORT_SYMBOL vmlinux 0x1348760d ipmi_request_settime +EXPORT_SYMBOL vmlinux 0x134b147c eth_header +EXPORT_SYMBOL vmlinux 0x1352ad5b of_device_register +EXPORT_SYMBOL vmlinux 0x136c1cb5 igrab +EXPORT_SYMBOL vmlinux 0x13a40b3b fsync_bdev +EXPORT_SYMBOL vmlinux 0x13cc9e08 blk_queue_dma_pad +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13daee86 i2c_del_adapter +EXPORT_SYMBOL vmlinux 0x13e38f5c up_read +EXPORT_SYMBOL vmlinux 0x13f53dd4 generic_file_remap_pages +EXPORT_SYMBOL vmlinux 0x141cba21 max8998_write_reg +EXPORT_SYMBOL vmlinux 0x141cdca4 phy_init_eee +EXPORT_SYMBOL vmlinux 0x147ef658 register_framebuffer +EXPORT_SYMBOL vmlinux 0x148189f0 inet_frag_find +EXPORT_SYMBOL vmlinux 0x14beeb9b invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0x14d3745a is_bad_inode +EXPORT_SYMBOL vmlinux 0x14f45fcc bman_free_pool +EXPORT_SYMBOL vmlinux 0x1533423b swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x1551dc51 bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x1581e45c vm_mmap +EXPORT_SYMBOL vmlinux 0x15864b03 flex_array_get +EXPORT_SYMBOL vmlinux 0x15872b62 skb_unlink +EXPORT_SYMBOL vmlinux 0x158faeb6 iov_iter_copy_from_user +EXPORT_SYMBOL vmlinux 0x1592aa0f pci_assign_resource +EXPORT_SYMBOL vmlinux 0x15d3fd60 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x15e8f630 jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0x15f571ec blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0x1600f578 qman_retire_fq +EXPORT_SYMBOL vmlinux 0x164f32c1 fsnotify_put_group +EXPORT_SYMBOL vmlinux 0x167c5967 print_hex_dump +EXPORT_SYMBOL vmlinux 0x168339fb __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0x1693b281 alloc_pci_dev +EXPORT_SYMBOL vmlinux 0x16dcec76 ipmi_set_my_address +EXPORT_SYMBOL vmlinux 0x16e330fd inet_frag_kill +EXPORT_SYMBOL vmlinux 0x16e7c8a6 tty_pair_get_tty +EXPORT_SYMBOL vmlinux 0x16f46fe9 jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0x17086ec6 kill_litter_super +EXPORT_SYMBOL vmlinux 0x17110fd9 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0x172ad9ba pm860x_set_bits +EXPORT_SYMBOL vmlinux 0x1743414f __debugger_fault_handler +EXPORT_SYMBOL vmlinux 0x17648396 dev_base_lock +EXPORT_SYMBOL vmlinux 0x178fbcb2 tcp_connect +EXPORT_SYMBOL vmlinux 0x17accfb3 xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0x17b1125d gen_kill_estimator +EXPORT_SYMBOL vmlinux 0x17b98008 eth_type_trans +EXPORT_SYMBOL vmlinux 0x17c7bc8e skb_copy_datagram_from_iovec +EXPORT_SYMBOL vmlinux 0x17ca7d5a max8998_bulk_write +EXPORT_SYMBOL vmlinux 0x17e28473 fsl_upm_run_pattern +EXPORT_SYMBOL vmlinux 0x17e64915 user_path_create +EXPORT_SYMBOL vmlinux 0x17f341a0 i8042_lock_chip +EXPORT_SYMBOL vmlinux 0x17fda159 do_truncate +EXPORT_SYMBOL vmlinux 0x17ff6bfc always_delete_dentry +EXPORT_SYMBOL vmlinux 0x1805a33f pipe_to_file +EXPORT_SYMBOL vmlinux 0x180d8b50 of_get_min_tck +EXPORT_SYMBOL vmlinux 0x181cc990 ip_setsockopt +EXPORT_SYMBOL vmlinux 0x182383fb nobh_write_begin +EXPORT_SYMBOL vmlinux 0x183fa88b mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0x184b82fb mmc_vddrange_to_ocrmask +EXPORT_SYMBOL vmlinux 0x184e6c85 radix_tree_gang_lookup_slot +EXPORT_SYMBOL vmlinux 0x1857aa39 proc_dointvec +EXPORT_SYMBOL vmlinux 0x185d91c6 filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0x18662d78 deactivate_super +EXPORT_SYMBOL vmlinux 0x1870f8c1 qman_fqid_pool_alloc +EXPORT_SYMBOL vmlinux 0x18756ea0 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x18882f7b blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x188a3dfb timespec_trunc +EXPORT_SYMBOL vmlinux 0x188b4417 netdev_crit +EXPORT_SYMBOL vmlinux 0x189868d7 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x189d4a1a nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0x18be20cf crypto_sha1_update +EXPORT_SYMBOL vmlinux 0x18bf74c2 blk_fetch_request +EXPORT_SYMBOL vmlinux 0x18dae460 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0x18f77a09 gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0x18ff3064 bdev_read_only +EXPORT_SYMBOL vmlinux 0x19111a40 lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x19232a1d flock_lock_file_wait +EXPORT_SYMBOL vmlinux 0x19444627 memcpy_fromiovecend +EXPORT_SYMBOL vmlinux 0x19488fb8 pm860x_page_reg_read +EXPORT_SYMBOL vmlinux 0x194e2230 netdev_features_change +EXPORT_SYMBOL vmlinux 0x198857be rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0x199ec4fb arch_spin_unlock_wait +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x199f5767 blk_stop_queue +EXPORT_SYMBOL vmlinux 0x19a5f224 open_exec +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19c8961d md_finish_reshape +EXPORT_SYMBOL vmlinux 0x1a10c898 ipmi_set_maintenance_mode +EXPORT_SYMBOL vmlinux 0x1a111a41 ftrace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x1a73f3c8 free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x1a86b4a7 inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0x1a8ac4f0 __inet6_hash +EXPORT_SYMBOL vmlinux 0x1aa4b3f0 sb_set_blocksize +EXPORT_SYMBOL vmlinux 0x1aba5db8 ipmi_unregister_smi +EXPORT_SYMBOL vmlinux 0x1ac5d3cb strcspn +EXPORT_SYMBOL vmlinux 0x1acb5d40 dscr_default +EXPORT_SYMBOL vmlinux 0x1ace138d bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0x1ad99088 d_instantiate +EXPORT_SYMBOL vmlinux 0x1af62a99 panic_notifier_list +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b0208ec fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0x1b132009 rename_lock +EXPORT_SYMBOL vmlinux 0x1b1dbb43 dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x1b1e1088 sg_nents +EXPORT_SYMBOL vmlinux 0x1b353088 clk_register_clkdevs +EXPORT_SYMBOL vmlinux 0x1b386709 lock_sock_fast +EXPORT_SYMBOL vmlinux 0x1b427b3f sock_create_kern +EXPORT_SYMBOL vmlinux 0x1b4b7dc7 inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0x1b5af6c9 vsc824x_add_skew +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b63aaa0 swiotlb_alloc_coherent +EXPORT_SYMBOL vmlinux 0x1b736985 kvm_read_guest_atomic +EXPORT_SYMBOL vmlinux 0x1b82fefa md_unplug +EXPORT_SYMBOL vmlinux 0x1b8b95ad i8042_unlock_chip +EXPORT_SYMBOL vmlinux 0x1b8c1340 check_disk_size_change +EXPORT_SYMBOL vmlinux 0x1b9e0ff1 scsilun_to_int +EXPORT_SYMBOL vmlinux 0x1bb59812 irq_set_chip +EXPORT_SYMBOL vmlinux 0x1bc4ff03 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0x1bca2b59 load_fp_state +EXPORT_SYMBOL vmlinux 0x1bdc26cf sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x1bf3c199 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0x1bfec830 __iounmap_at +EXPORT_SYMBOL vmlinux 0x1c09aba3 qman_static_dequeue_get +EXPORT_SYMBOL vmlinux 0x1c0a84d7 tty_register_driver +EXPORT_SYMBOL vmlinux 0x1c37fc05 proc_set_size +EXPORT_SYMBOL vmlinux 0x1c3e02e4 memcmp +EXPORT_SYMBOL vmlinux 0x1c45b470 pci_enable_ido +EXPORT_SYMBOL vmlinux 0x1c4e18c0 scsi_scan_target +EXPORT_SYMBOL vmlinux 0x1c5d1b98 get_super_thawed +EXPORT_SYMBOL vmlinux 0x1c5ff07e pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0x1c80de9c ip_send_check +EXPORT_SYMBOL vmlinux 0x1c9cad20 single_release +EXPORT_SYMBOL vmlinux 0x1ca5dd1b qman_fq_state +EXPORT_SYMBOL vmlinux 0x1cb19831 sk_run_filter +EXPORT_SYMBOL vmlinux 0x1cd7a033 alloc_disk_node +EXPORT_SYMBOL vmlinux 0x1ce9ff9b agp_generic_alloc_user +EXPORT_SYMBOL vmlinux 0x1ceb7d81 inet_addr_type +EXPORT_SYMBOL vmlinux 0x1dbc4d0c proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x1dc36131 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1dd8831f pme_ctx_init +EXPORT_SYMBOL vmlinux 0x1de33e0d pci_claim_resource +EXPORT_SYMBOL vmlinux 0x1df22b17 abx500_remove_ops +EXPORT_SYMBOL vmlinux 0x1df9648f dquot_quota_sync +EXPORT_SYMBOL vmlinux 0x1e2201d8 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0x1e235a70 input_release_device +EXPORT_SYMBOL vmlinux 0x1e26be3b get_anon_bdev +EXPORT_SYMBOL vmlinux 0x1e2f91d6 tty_port_close +EXPORT_SYMBOL vmlinux 0x1e38d452 jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0x1e3c7a78 swiotlb_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0x1e46b84d init_special_inode +EXPORT_SYMBOL vmlinux 0x1e6104a4 pci_remove_bus +EXPORT_SYMBOL vmlinux 0x1e6720f1 input_get_keycode +EXPORT_SYMBOL vmlinux 0x1e67a2a0 blk_bio_map_sg +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e6ff4f1 gen10g_read_status +EXPORT_SYMBOL vmlinux 0x1e815d90 sock_release +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ea57910 blk_mq_map_queue +EXPORT_SYMBOL vmlinux 0x1eb94347 phy_drivers_register +EXPORT_SYMBOL vmlinux 0x1ec3bed9 hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0x1eda822e ppp_register_compressor +EXPORT_SYMBOL vmlinux 0x1ef2acc5 vga_client_register +EXPORT_SYMBOL vmlinux 0x1ef863f6 dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x1f190d3a set_security_override +EXPORT_SYMBOL vmlinux 0x1f380e2f ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0x1f40f7c9 dquot_acquire +EXPORT_SYMBOL vmlinux 0x1f4602d3 kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0x1f4d346d get_write_access +EXPORT_SYMBOL vmlinux 0x1f559a01 skb_copy_bits +EXPORT_SYMBOL vmlinux 0x1f5ad908 pme_attr_get +EXPORT_SYMBOL vmlinux 0x1f6ce67a sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x1f87b00e blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x1f8e300d atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x1fae485d mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x1fb17685 block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x1fb8f039 tcp_init_sock +EXPORT_SYMBOL vmlinux 0x1fbaf237 padata_stop +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fc32689 blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fd3aaf4 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1feabfe1 blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0x1fedf0f4 __request_region +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x200296b9 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0x2004b74c pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x20059b75 block_write_full_page +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x20359f36 neigh_direct_output +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x205dae1d names_cachep +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x208fc969 blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0x209a5066 __scm_destroy +EXPORT_SYMBOL vmlinux 0x209be718 d_invalidate +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20a86b3f of_get_pci_address +EXPORT_SYMBOL vmlinux 0x20b2bb2d param_array_ops +EXPORT_SYMBOL vmlinux 0x20c0fcb4 udp_seq_open +EXPORT_SYMBOL vmlinux 0x20c55ae0 sscanf +EXPORT_SYMBOL vmlinux 0x20dca001 blk_queue_free_tags +EXPORT_SYMBOL vmlinux 0x20e4028a n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x20e5e92e dev_uc_del +EXPORT_SYMBOL vmlinux 0x2101fa1c skb_copy_and_csum_datagram_iovec +EXPORT_SYMBOL vmlinux 0x2109db93 netlink_kernel_release +EXPORT_SYMBOL vmlinux 0x210ceff1 devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x211f4805 arp_create +EXPORT_SYMBOL vmlinux 0x212fc15f nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x21479ec2 netpoll_send_udp +EXPORT_SYMBOL vmlinux 0x214e240e pci_scan_bus_parented +EXPORT_SYMBOL vmlinux 0x2151e7a8 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x215ebd78 bitrev16 +EXPORT_SYMBOL vmlinux 0x21612e71 get_agp_version +EXPORT_SYMBOL vmlinux 0x21858619 block_invalidatepage +EXPORT_SYMBOL vmlinux 0x218b0047 md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0x21931a0c sock_no_shutdown +EXPORT_SYMBOL vmlinux 0x21985c8c gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0x21c4b2c5 flush_tlb_range +EXPORT_SYMBOL vmlinux 0x21ce9bab ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x21d12a51 netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x21d1a87a pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0x21f3670b dev_remove_offload +EXPORT_SYMBOL vmlinux 0x222acc90 dput +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x223740d1 security_path_unlink +EXPORT_SYMBOL vmlinux 0x2255c549 ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x22597cb5 __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x2265b514 qman_get_portal_config +EXPORT_SYMBOL vmlinux 0x2272ce4f key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x2278e94b slhc_remember +EXPORT_SYMBOL vmlinux 0x229fa942 phy_device_free +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22b32dbd __frontswap_store +EXPORT_SYMBOL vmlinux 0x22d3a774 phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x22d73c62 bman_get_params +EXPORT_SYMBOL vmlinux 0x22db0192 generic_file_splice_write +EXPORT_SYMBOL vmlinux 0x22dc20fe inet_bind +EXPORT_SYMBOL vmlinux 0x22ddea86 twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0x22df258c mmc_start_bkops +EXPORT_SYMBOL vmlinux 0x22e7707b blk_mq_alloc_reserved_request +EXPORT_SYMBOL vmlinux 0x2312b99a inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0x231d4001 fb_edid_add_monspecs +EXPORT_SYMBOL vmlinux 0x231edf62 cdrom_ioctl +EXPORT_SYMBOL vmlinux 0x231fbfcd tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0x2326efbc blk_queue_merge_bvec +EXPORT_SYMBOL vmlinux 0x233917d1 mac_vmode_to_var +EXPORT_SYMBOL vmlinux 0x233abfba netpoll_cleanup +EXPORT_SYMBOL vmlinux 0x235e90f3 __wake_up_bit +EXPORT_SYMBOL vmlinux 0x23a44a7c mb_cache_shrink +EXPORT_SYMBOL vmlinux 0x23a574fd security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0x23b755d3 pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23bb947d netif_skb_dev_features +EXPORT_SYMBOL vmlinux 0x23c72bfc read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x23c9891c kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x23e45d4e xfrm_cfg_mutex +EXPORT_SYMBOL vmlinux 0x23eadeea __mutex_init +EXPORT_SYMBOL vmlinux 0x23f0a5ef dquot_file_open +EXPORT_SYMBOL vmlinux 0x23f2243d mempool_free +EXPORT_SYMBOL vmlinux 0x23f6eeeb mntput +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x2406d6dd fget_raw +EXPORT_SYMBOL vmlinux 0x240a639e tcp_syn_flood_action +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x244bba02 tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x245a5a94 sleep_on_timeout +EXPORT_SYMBOL vmlinux 0x246c058a dquot_scan_active +EXPORT_SYMBOL vmlinux 0x2482e688 vsprintf +EXPORT_SYMBOL vmlinux 0x2484adc3 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0x2487ea83 netif_napi_del +EXPORT_SYMBOL vmlinux 0x24abf4c9 mb_cache_entry_insert +EXPORT_SYMBOL vmlinux 0x24b0f90c of_clk_get_by_name +EXPORT_SYMBOL vmlinux 0x24b254ea lock_may_read +EXPORT_SYMBOL vmlinux 0x24c8117f mmc_start_req +EXPORT_SYMBOL vmlinux 0x24caacad remove_arg_zero +EXPORT_SYMBOL vmlinux 0x24cba7ab flush_icache_user_range +EXPORT_SYMBOL vmlinux 0x24d64c3b netif_carrier_off +EXPORT_SYMBOL vmlinux 0x24e05fdc sb_min_blocksize +EXPORT_SYMBOL vmlinux 0x24e294de unlock_page +EXPORT_SYMBOL vmlinux 0x24e2fe51 sock_create_lite +EXPORT_SYMBOL vmlinux 0x24ee32fc i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0x24fdac79 wake_bit_function +EXPORT_SYMBOL vmlinux 0x250b2ee1 skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0x2513674f dqput +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x25309c44 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x2533dda1 bman_query_pools +EXPORT_SYMBOL vmlinux 0x253e8a39 netdev_master_upper_dev_link_private +EXPORT_SYMBOL vmlinux 0x2540a709 skb_copy_expand +EXPORT_SYMBOL vmlinux 0x254f561d shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x2576684d mmc_get_card +EXPORT_SYMBOL vmlinux 0x257fdbbc tty_write_room +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x25985fa1 kfree_skb_partial +EXPORT_SYMBOL vmlinux 0x25b28b70 dev_addr_flush +EXPORT_SYMBOL vmlinux 0x25c677c4 mac_pton +EXPORT_SYMBOL vmlinux 0x25cd7b1a lro_flush_all +EXPORT_SYMBOL vmlinux 0x25dbeae9 netpoll_rx_enable +EXPORT_SYMBOL vmlinux 0x25e323e7 i2c_register_driver +EXPORT_SYMBOL vmlinux 0x25f5ee99 blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x25ffe900 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0x260766eb unlink_framebuffer +EXPORT_SYMBOL vmlinux 0x260cf8f8 of_get_property +EXPORT_SYMBOL vmlinux 0x2633b02c tty_port_tty_get +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x263c04f5 __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x263e0282 blk_init_queue_node +EXPORT_SYMBOL vmlinux 0x2641224a generic_ro_fops +EXPORT_SYMBOL vmlinux 0x26477c07 __vmalloc +EXPORT_SYMBOL vmlinux 0x2650d835 sysctl_ip_early_demux +EXPORT_SYMBOL vmlinux 0x2657bc86 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0x2665d53a key_create_or_update +EXPORT_SYMBOL vmlinux 0x266e5609 md_integrity_register +EXPORT_SYMBOL vmlinux 0x2685c3d7 __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x26b760c4 slhc_init +EXPORT_SYMBOL vmlinux 0x26da32b2 dquot_quota_off +EXPORT_SYMBOL vmlinux 0x26e76fb8 sysctl_udp_wmem_min +EXPORT_SYMBOL vmlinux 0x26f0453a blk_set_default_limits +EXPORT_SYMBOL vmlinux 0x2712f4f5 crc32_le_combine +EXPORT_SYMBOL vmlinux 0x271b4496 scsi_add_device +EXPORT_SYMBOL vmlinux 0x2729aa0d mmc_gpio_free_cd +EXPORT_SYMBOL vmlinux 0x274d08dc __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0x27646df3 start_thread +EXPORT_SYMBOL vmlinux 0x276cf07a mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0x276d56b0 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x27a932fa inet_accept +EXPORT_SYMBOL vmlinux 0x27a994d5 tty_port_close_start +EXPORT_SYMBOL vmlinux 0x27b3a6ab flush_tlb_mm +EXPORT_SYMBOL vmlinux 0x27b48268 key_type_keyring +EXPORT_SYMBOL vmlinux 0x27b53139 pme_fd_cmd_pmtcc +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27e1a049 printk +EXPORT_SYMBOL vmlinux 0x27f2313e idr_replace +EXPORT_SYMBOL vmlinux 0x27fe5cf8 tcp_md5_hash_header +EXPORT_SYMBOL vmlinux 0x280b9f5e i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x282e51a3 no_llseek +EXPORT_SYMBOL vmlinux 0x28318305 snprintf +EXPORT_SYMBOL vmlinux 0x28342b55 tty_schedule_flip +EXPORT_SYMBOL vmlinux 0x283ef283 scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0x28444da6 __frontswap_test +EXPORT_SYMBOL vmlinux 0x284e3e5d blk_init_tags +EXPORT_SYMBOL vmlinux 0x285247a5 gen10g_suspend +EXPORT_SYMBOL vmlinux 0x28591343 ppc_md +EXPORT_SYMBOL vmlinux 0x28872165 cookie_check_timestamp +EXPORT_SYMBOL vmlinux 0x288cbdae ps2_sendbyte +EXPORT_SYMBOL vmlinux 0x28a2ed02 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x28a8e2a9 skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0x28abfe6e scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x28d94c02 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0x28e43d9f skb_copy_datagram_const_iovec +EXPORT_SYMBOL vmlinux 0x292187fb simple_rmdir +EXPORT_SYMBOL vmlinux 0x29275584 iput +EXPORT_SYMBOL vmlinux 0x292cab59 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0x2939d290 netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0x29537c9e alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0x295946a2 vfs_setpos +EXPORT_SYMBOL vmlinux 0x295b8609 dev_warn +EXPORT_SYMBOL vmlinux 0x296373ae scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0x2968d499 fb_get_mode +EXPORT_SYMBOL vmlinux 0x29a67db1 bman_recovery_cleanup_bpid +EXPORT_SYMBOL vmlinux 0x29c37af4 splice_from_pipe_begin +EXPORT_SYMBOL vmlinux 0x29c7a4a2 prepare_binprm +EXPORT_SYMBOL vmlinux 0x29d7963f mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x29ef3c31 d_genocide +EXPORT_SYMBOL vmlinux 0x29f8b535 account_page_redirty +EXPORT_SYMBOL vmlinux 0x2a0fe3fc nobh_writepage +EXPORT_SYMBOL vmlinux 0x2a147f73 pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x2a229f84 skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a37d074 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2a3b8a68 i2c_get_adapter +EXPORT_SYMBOL vmlinux 0x2a4b4e87 write_one_page +EXPORT_SYMBOL vmlinux 0x2a55dddc vfs_open +EXPORT_SYMBOL vmlinux 0x2a5b38d6 blk_delay_queue +EXPORT_SYMBOL vmlinux 0x2a613f62 mark_info_dirty +EXPORT_SYMBOL vmlinux 0x2a79ac13 clkdev_add +EXPORT_SYMBOL vmlinux 0x2a8232d7 generic_pipe_buf_steal +EXPORT_SYMBOL vmlinux 0x2aa0c4bc blk_rq_init +EXPORT_SYMBOL vmlinux 0x2acb9806 input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0x2acf0feb vfs_fstat +EXPORT_SYMBOL vmlinux 0x2ae67a89 __seq_open_private +EXPORT_SYMBOL vmlinux 0x2b0ba2b0 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x2b0d0c53 devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0x2b180b96 d_find_any_alias +EXPORT_SYMBOL vmlinux 0x2b2ce78b kstrtos8 +EXPORT_SYMBOL vmlinux 0x2b2ecc24 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0x2b3215ed neigh_connected_output +EXPORT_SYMBOL vmlinux 0x2b39aee0 bman_release +EXPORT_SYMBOL vmlinux 0x2b5e5cf4 swiotlb_map_sg +EXPORT_SYMBOL vmlinux 0x2b6d2aed xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x2b782556 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2ba5f75f buffer_migrate_page +EXPORT_SYMBOL vmlinux 0x2ba7052e devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0x2ba707a8 sysctl_tcp_low_latency +EXPORT_SYMBOL vmlinux 0x2bb5f990 bio_alloc_pages +EXPORT_SYMBOL vmlinux 0x2bb89fe1 dm_kobject_release +EXPORT_SYMBOL vmlinux 0x2bd390dd finish_no_open +EXPORT_SYMBOL vmlinux 0x2bdd6e28 node_states +EXPORT_SYMBOL vmlinux 0x2be0f12d dql_completed +EXPORT_SYMBOL vmlinux 0x2beab315 mmc_hw_reset_check +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c3f070b seq_putc +EXPORT_SYMBOL vmlinux 0x2c54a746 d_prune_aliases +EXPORT_SYMBOL vmlinux 0x2c7b1fca down_timeout +EXPORT_SYMBOL vmlinux 0x2c8412dd phy_ethtool_sset +EXPORT_SYMBOL vmlinux 0x2c900d91 cpufreq_put_global_kobject +EXPORT_SYMBOL vmlinux 0x2c942fde xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0x2ca3fd22 inet_sendmsg +EXPORT_SYMBOL vmlinux 0x2cabec96 dm_unregister_target +EXPORT_SYMBOL vmlinux 0x2cb7239d padata_free +EXPORT_SYMBOL vmlinux 0x2cb8fdc6 key_put +EXPORT_SYMBOL vmlinux 0x2ccbfc77 inet_frags_exit_net +EXPORT_SYMBOL vmlinux 0x2cee4ab1 kmalloc_dma_caches +EXPORT_SYMBOL vmlinux 0x2cf13bbe pci_enable_ltr +EXPORT_SYMBOL vmlinux 0x2cf73cb7 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x2cfb8378 qman_stop_dequeues +EXPORT_SYMBOL vmlinux 0x2d03c10d posix_acl_create +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d37342e cpu_online_mask +EXPORT_SYMBOL vmlinux 0x2d434561 kobject_del +EXPORT_SYMBOL vmlinux 0x2d803e54 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x2d820d79 agp_enable +EXPORT_SYMBOL vmlinux 0x2d89342a scsi_show_sense_hdr +EXPORT_SYMBOL vmlinux 0x2d9a5b0b netdev_notify_peers +EXPORT_SYMBOL vmlinux 0x2d9c7601 tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0x2daaaba9 param_get_byte +EXPORT_SYMBOL vmlinux 0x2de111f4 ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0x2debbe15 dev_mc_unsync +EXPORT_SYMBOL vmlinux 0x2deda4a1 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x2df3a9d9 con_is_bound +EXPORT_SYMBOL vmlinux 0x2e0d2f7f queue_work_on +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e2b40d2 strncat +EXPORT_SYMBOL vmlinux 0x2e2ce9e0 sysctl_tcp_syncookies +EXPORT_SYMBOL vmlinux 0x2e48bdcf qman_poll_dqrr +EXPORT_SYMBOL vmlinux 0x2eae1688 console_stop +EXPORT_SYMBOL vmlinux 0x2eb3a0c0 i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x2ec33766 pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x2eeceb42 sk_chk_filter +EXPORT_SYMBOL vmlinux 0x2eed408a mount_nodev +EXPORT_SYMBOL vmlinux 0x2ef38337 register_key_type +EXPORT_SYMBOL vmlinux 0x2ef63ad6 scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0x2ef8fd19 mmc_can_sanitize +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f064b55 allocate_resource +EXPORT_SYMBOL vmlinux 0x2f0b08c6 mnt_unpin +EXPORT_SYMBOL vmlinux 0x2f0eabab set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0x2f1ab5bd security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x2f287f0d copy_to_user +EXPORT_SYMBOL vmlinux 0x2f3aecc5 uart_add_one_port +EXPORT_SYMBOL vmlinux 0x2f3e42ec irq_stat +EXPORT_SYMBOL vmlinux 0x2f48d028 sock_no_bind +EXPORT_SYMBOL vmlinux 0x2f4b5a5b ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x2f53fa55 bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x2f62cfd0 agp_copy_info +EXPORT_SYMBOL vmlinux 0x2f71a2c7 fb_blank +EXPORT_SYMBOL vmlinux 0x2f736191 write_inode_now +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fd05c04 udp6_csum_init +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2ff119db find_get_pages_tag +EXPORT_SYMBOL vmlinux 0x30226ddf agp_device_command +EXPORT_SYMBOL vmlinux 0x303bc2f0 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x3056bb5b ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x306ba7f1 scsi_device_get +EXPORT_SYMBOL vmlinux 0x3071299e xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0x30786c58 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0x307c2fd0 generic_check_addressable +EXPORT_SYMBOL vmlinux 0x309fbed9 inet_del_protocol +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30af07ef block_write_end +EXPORT_SYMBOL vmlinux 0x30b8b35c cpu_to_chip_id +EXPORT_SYMBOL vmlinux 0x30cada8f radix_tree_next_hole +EXPORT_SYMBOL vmlinux 0x30d87d06 blk_requeue_request +EXPORT_SYMBOL vmlinux 0x30db0971 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x3147857d default_red +EXPORT_SYMBOL vmlinux 0x3147e5f4 __ip_dev_find +EXPORT_SYMBOL vmlinux 0x3156b3e0 pci_unregister_driver +EXPORT_SYMBOL vmlinux 0x315c65fd zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x318cadb1 reciprocal_value +EXPORT_SYMBOL vmlinux 0x318d75db fsl_lbc_ctrl_dev +EXPORT_SYMBOL vmlinux 0x31929705 inet_stream_ops +EXPORT_SYMBOL vmlinux 0x319e0726 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x31a79838 invalidate_partition +EXPORT_SYMBOL vmlinux 0x31d59700 vfs_readlink +EXPORT_SYMBOL vmlinux 0x31d61e9a cur_cpu_spec +EXPORT_SYMBOL vmlinux 0x31dc043a agp_allocate_memory +EXPORT_SYMBOL vmlinux 0x31e1059f generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0x31f7d40a pme_fd_cmd_fcw +EXPORT_SYMBOL vmlinux 0x322f48d4 abx500_dump_all_banks +EXPORT_SYMBOL vmlinux 0x32346bf0 tcp_sendpage +EXPORT_SYMBOL vmlinux 0x3237b968 bio_integrity_prep +EXPORT_SYMBOL vmlinux 0x32399836 __block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x32424b34 qman_query_wq +EXPORT_SYMBOL vmlinux 0x32566c73 dev_disable_lro +EXPORT_SYMBOL vmlinux 0x326a0dd0 padata_set_cpumasks +EXPORT_SYMBOL vmlinux 0x3277484a pci_scan_slot +EXPORT_SYMBOL vmlinux 0x327bf883 of_can_translate_address +EXPORT_SYMBOL vmlinux 0x327cc777 wait_on_sync_kiocb +EXPORT_SYMBOL vmlinux 0x3284c88d tcf_hash_lookup +EXPORT_SYMBOL vmlinux 0x32860d7e qman_fqid_pool_free +EXPORT_SYMBOL vmlinux 0x32867b74 qman_fq_fqid +EXPORT_SYMBOL vmlinux 0x32a4d1e3 iunique +EXPORT_SYMBOL vmlinux 0x32b2bc9b pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x32e29149 framebuffer_release +EXPORT_SYMBOL vmlinux 0x331bae96 check_disk_change +EXPORT_SYMBOL vmlinux 0x3327ea3e genlmsg_put +EXPORT_SYMBOL vmlinux 0x33297b03 i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0x332e5a4c __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0x333ab7bf xfrm_prepare_input +EXPORT_SYMBOL vmlinux 0x333cb37c __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0x33512339 kill_fasync +EXPORT_SYMBOL vmlinux 0x3382b64c jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x3392429c security_path_chown +EXPORT_SYMBOL vmlinux 0x33aa48f2 qman_static_dequeue_del +EXPORT_SYMBOL vmlinux 0x33b84f74 copy_page +EXPORT_SYMBOL vmlinux 0x33ba5cd4 param_ops_bool +EXPORT_SYMBOL vmlinux 0x33c70b06 devm_ioremap_prot +EXPORT_SYMBOL vmlinux 0x33c7435c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x33d94289 textsearch_register +EXPORT_SYMBOL vmlinux 0x33d9cc37 fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x33fcf44a __kfifo_out_r +EXPORT_SYMBOL vmlinux 0x3406db84 devm_ioremap_nocache +EXPORT_SYMBOL vmlinux 0x340d56a0 blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0x34184afe current_kernel_time +EXPORT_SYMBOL vmlinux 0x3448e936 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x344adbd5 init_cdrom_command +EXPORT_SYMBOL vmlinux 0x345fcd30 devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x346c4ded rwsem_down_write_failed +EXPORT_SYMBOL vmlinux 0x347013de nla_validate +EXPORT_SYMBOL vmlinux 0x34771d3e zerocopy_sg_from_iovec +EXPORT_SYMBOL vmlinux 0x347eb9bd param_set_bool +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34a30858 end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0x34a91378 pci_enable_device +EXPORT_SYMBOL vmlinux 0x34d5018a end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x35029585 xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x35127109 compat_mc_getsockopt +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x35181bb8 fddi_type_trans +EXPORT_SYMBOL vmlinux 0x351891bb twl6040_reg_read +EXPORT_SYMBOL vmlinux 0x3539f11b match_strlcpy +EXPORT_SYMBOL vmlinux 0x355e7896 __lru_cache_add +EXPORT_SYMBOL vmlinux 0x356581aa devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0x356790f5 ipmi_smi_add_proc_entry +EXPORT_SYMBOL vmlinux 0x356c622c scsi_print_sense +EXPORT_SYMBOL vmlinux 0x3571dda2 dev_mc_del +EXPORT_SYMBOL vmlinux 0x35ab76af sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0x35af8b8e security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0x35b3a490 bio_unmap_user +EXPORT_SYMBOL vmlinux 0x35c32767 xor_altivec_2 +EXPORT_SYMBOL vmlinux 0x35c5f373 do_SAK +EXPORT_SYMBOL vmlinux 0x35defc50 iov_iter_advance +EXPORT_SYMBOL vmlinux 0x35e2da77 tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x35ed2d45 set_bdi_congested +EXPORT_SYMBOL vmlinux 0x361e66e2 dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0x362437b3 scsi_register_driver +EXPORT_SYMBOL vmlinux 0x362a5f5f tcp_rcv_established +EXPORT_SYMBOL vmlinux 0x365b77c1 pagevec_lookup +EXPORT_SYMBOL vmlinux 0x3675fe95 tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0x368382e2 of_get_named_gpiod_flags +EXPORT_SYMBOL vmlinux 0x36868732 locks_copy_lock +EXPORT_SYMBOL vmlinux 0x36957544 vlan_vid_add +EXPORT_SYMBOL vmlinux 0x369e1115 kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0x36a8a1f9 kern_path_mountpoint +EXPORT_SYMBOL vmlinux 0x36afcac3 ata_port_printk +EXPORT_SYMBOL vmlinux 0x36b0e732 try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x36bd681b groups_alloc +EXPORT_SYMBOL vmlinux 0x36c735ad kset_unregister +EXPORT_SYMBOL vmlinux 0x36ca68f0 fput +EXPORT_SYMBOL vmlinux 0x36d6e5f1 wait_iff_congested +EXPORT_SYMBOL vmlinux 0x36d7b11a of_find_matching_node_and_match +EXPORT_SYMBOL vmlinux 0x36de4956 pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0x36e360e3 __hw_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x36ea984a jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x371d2130 check_legacy_ioport +EXPORT_SYMBOL vmlinux 0x372dd649 padata_unregister_cpumask_notifier +EXPORT_SYMBOL vmlinux 0x37344510 proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x3738e0fc input_grab_device +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x3756df4a sock_no_connect +EXPORT_SYMBOL vmlinux 0x379f233a dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x37b8ae6a blk_queue_make_request +EXPORT_SYMBOL vmlinux 0x37be75fb blk_integrity_is_initialized +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37c7d222 dev_emerg +EXPORT_SYMBOL vmlinux 0x3801075f blk_queue_prep_rq +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x3829a031 input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x3832c669 i2c_add_adapter +EXPORT_SYMBOL vmlinux 0x383b9f07 mark_page_accessed +EXPORT_SYMBOL vmlinux 0x383c577f tcf_hash_release +EXPORT_SYMBOL vmlinux 0x3849bc9e nf_log_register +EXPORT_SYMBOL vmlinux 0x3850c764 seq_vprintf +EXPORT_SYMBOL vmlinux 0x3852bf10 padata_add_cpu +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388f9128 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38af66e2 dquot_quotactl_ops +EXPORT_SYMBOL vmlinux 0x38c169ba ata_print_version +EXPORT_SYMBOL vmlinux 0x38fb9933 tty_std_termios +EXPORT_SYMBOL vmlinux 0x392a40b3 blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0x392cf705 blk_get_backing_dev_info +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x3955fcf6 __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x396a5b08 pci_add_new_bus +EXPORT_SYMBOL vmlinux 0x396e144a would_dump +EXPORT_SYMBOL vmlinux 0x399ad043 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0x399f6af8 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0x39a3549c dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x39cdf63c wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x39d2fde6 start_tty +EXPORT_SYMBOL vmlinux 0x39e1f87b agp_generic_mask_memory +EXPORT_SYMBOL vmlinux 0x39e48a82 set_disk_ro +EXPORT_SYMBOL vmlinux 0x3a11822c nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0x3a20ff73 __crc32c_le +EXPORT_SYMBOL vmlinux 0x3a21b59a __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0x3a5b5274 mmc_wait_for_app_cmd +EXPORT_SYMBOL vmlinux 0x3a5c8acc of_dev_get +EXPORT_SYMBOL vmlinux 0x3a608939 backlight_force_update +EXPORT_SYMBOL vmlinux 0x3a672185 xfrm4_rcv +EXPORT_SYMBOL vmlinux 0x3a72d7e2 __pci_register_driver +EXPORT_SYMBOL vmlinux 0x3a76a0df ip6_expire_frag_queue +EXPORT_SYMBOL vmlinux 0x3a861289 scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0x3a8c691f tty_port_put +EXPORT_SYMBOL vmlinux 0x3a9b6fb9 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x3aa3ebb5 cap_mmap_file +EXPORT_SYMBOL vmlinux 0x3abbafd4 __destroy_inode +EXPORT_SYMBOL vmlinux 0x3ae62d78 input_register_handler +EXPORT_SYMBOL vmlinux 0x3b35ae99 vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0x3b36fe3d pme_hw_residue_new +EXPORT_SYMBOL vmlinux 0x3b615a21 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x3b622a4e devm_gpio_request +EXPORT_SYMBOL vmlinux 0x3b645037 pm860x_page_set_bits +EXPORT_SYMBOL vmlinux 0x3b7e028b mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0x3b7f15fa jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x3bb181f7 i2c_use_client +EXPORT_SYMBOL vmlinux 0x3bd1b1f6 msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x3bd31852 jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x3bea40bc security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0x3bef03b9 flow_cache_lookup +EXPORT_SYMBOL vmlinux 0x3c0b3346 tcp_read_sock +EXPORT_SYMBOL vmlinux 0x3c1ecb83 netdev_info +EXPORT_SYMBOL vmlinux 0x3c2b1dd1 wait_for_key_construction +EXPORT_SYMBOL vmlinux 0x3c2be2ea d_move +EXPORT_SYMBOL vmlinux 0x3c2c033c bitmap_startwrite +EXPORT_SYMBOL vmlinux 0x3c378629 sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x3c633a47 get_super +EXPORT_SYMBOL vmlinux 0x3c732cb7 linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x3c75a767 mmc_alloc_host +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c881edb blk_put_request +EXPORT_SYMBOL vmlinux 0x3c9d1211 string_get_size +EXPORT_SYMBOL vmlinux 0x3cab83c3 in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x3cb6026e truncate_inode_pages +EXPORT_SYMBOL vmlinux 0x3cc4b0dc lg_lock_init +EXPORT_SYMBOL vmlinux 0x3cdf8d68 tty_unthrottle +EXPORT_SYMBOL vmlinux 0x3ce29ba2 blk_rq_map_user +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3ceecdc1 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0x3cefc68d eth_validate_addr +EXPORT_SYMBOL vmlinux 0x3cf0e2b8 fail_migrate_page +EXPORT_SYMBOL vmlinux 0x3d01df69 ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0x3d32f1b5 blk_run_queue_async +EXPORT_SYMBOL vmlinux 0x3d41904f of_get_next_child +EXPORT_SYMBOL vmlinux 0x3d467aff agp3_generic_tlbflush +EXPORT_SYMBOL vmlinux 0x3d5844b3 strnicmp +EXPORT_SYMBOL vmlinux 0x3d609c73 blk_free_tags +EXPORT_SYMBOL vmlinux 0x3d68c692 scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x3d7d46c8 xfrm_state_flush +EXPORT_SYMBOL vmlinux 0x3d7edba2 xfrm_input +EXPORT_SYMBOL vmlinux 0x3d8b0afc set_groups +EXPORT_SYMBOL vmlinux 0x3da4d777 pme_ctx_is_dead +EXPORT_SYMBOL vmlinux 0x3db0d4b1 ether_setup +EXPORT_SYMBOL vmlinux 0x3db7d6d6 make_kuid +EXPORT_SYMBOL vmlinux 0x3dba9797 blk_mq_alloc_single_hw_queue +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3de40a8c input_inject_event +EXPORT_SYMBOL vmlinux 0x3deb252d __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e0718fb dst_alloc +EXPORT_SYMBOL vmlinux 0x3e4650a2 tcf_action_exec +EXPORT_SYMBOL vmlinux 0x3e59c55e softnet_data +EXPORT_SYMBOL vmlinux 0x3e7b3cd4 netpoll_send_skb_on_dev +EXPORT_SYMBOL vmlinux 0x3e882943 pcibios_align_resource +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3e91b57c __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x3ea740ad find_lock_page +EXPORT_SYMBOL vmlinux 0x3ed63055 zlib_inflateReset +EXPORT_SYMBOL vmlinux 0x3ef3aa71 mmc_add_host +EXPORT_SYMBOL vmlinux 0x3efa5f2a mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0x3f0546a8 ioread32_rep +EXPORT_SYMBOL vmlinux 0x3f406a3b enable_kernel_altivec +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f487274 alloc_file +EXPORT_SYMBOL vmlinux 0x3f677343 bio_uncopy_user +EXPORT_SYMBOL vmlinux 0x3f8e93d5 mmc_release_host +EXPORT_SYMBOL vmlinux 0x3fc177e4 elv_abort_queue +EXPORT_SYMBOL vmlinux 0x3fd55724 of_n_size_cells +EXPORT_SYMBOL vmlinux 0x3fe0d1c0 slhc_free +EXPORT_SYMBOL vmlinux 0x3fe2ccbe memweight +EXPORT_SYMBOL vmlinux 0x3fec048f sg_next +EXPORT_SYMBOL vmlinux 0x3ff219a1 mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x3ff62317 local_bh_disable +EXPORT_SYMBOL vmlinux 0x3ff8069b tcf_hash_insert +EXPORT_SYMBOL vmlinux 0x3ff8e495 lg_local_unlock_cpu +EXPORT_SYMBOL vmlinux 0x400135fa md_wakeup_thread +EXPORT_SYMBOL vmlinux 0x40079af9 kernel_getsockopt +EXPORT_SYMBOL vmlinux 0x4009438c napi_complete +EXPORT_SYMBOL vmlinux 0x402b8281 __request_module +EXPORT_SYMBOL vmlinux 0x40351291 kern_path +EXPORT_SYMBOL vmlinux 0x404066c5 idr_for_each +EXPORT_SYMBOL vmlinux 0x405c1144 get_seconds +EXPORT_SYMBOL vmlinux 0x40636411 sock_init_data +EXPORT_SYMBOL vmlinux 0x407a5eda jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0x4095bc7a inet_recvmsg +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x40a27c37 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40b57158 pme_initfq +EXPORT_SYMBOL vmlinux 0x40b91887 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0x40bcc492 md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0x40c01859 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40c7675a pci_disable_obff +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40f2b10c ipmi_alloc_smi_msg +EXPORT_SYMBOL vmlinux 0x412d003a generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x414a8456 __dst_free +EXPORT_SYMBOL vmlinux 0x4159c38f ioremap_wc +EXPORT_SYMBOL vmlinux 0x4168619e bman_pool_max +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x41cd8bad devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x41d31d49 __breadahead +EXPORT_SYMBOL vmlinux 0x41ee970c __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0x420ec222 generic_file_splice_read +EXPORT_SYMBOL vmlinux 0x4211c3c1 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x423b776a ipmi_create_user +EXPORT_SYMBOL vmlinux 0x4240b092 consume_skb +EXPORT_SYMBOL vmlinux 0x42595e58 vgacon_text_force +EXPORT_SYMBOL vmlinux 0x425b75de genphy_update_link +EXPORT_SYMBOL vmlinux 0x42788865 napi_get_frags +EXPORT_SYMBOL vmlinux 0x428095fd blk_queue_find_tag +EXPORT_SYMBOL vmlinux 0x42977ad4 __hw_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x42a1b208 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x42a98833 kernel_listen +EXPORT_SYMBOL vmlinux 0x42b0cc2f arp_send +EXPORT_SYMBOL vmlinux 0x42c65986 qman_alloc_fqid_range +EXPORT_SYMBOL vmlinux 0x42c920fb pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0x42dcde6a mmc_hw_reset +EXPORT_SYMBOL vmlinux 0x42e115a3 mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x42fc922c sk_free +EXPORT_SYMBOL vmlinux 0x430154ae bman_irqsource_remove +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x4304eaf5 ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x430af9ea pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x43185b4a devm_iounmap +EXPORT_SYMBOL vmlinux 0x431ad50b security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0x43220c44 dcb_getapp +EXPORT_SYMBOL vmlinux 0x434c22ee flush_dcache_icache_page +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x4357aba4 arp_xmit +EXPORT_SYMBOL vmlinux 0x43632d7d of_find_property +EXPORT_SYMBOL vmlinux 0x436c2179 iowrite32 +EXPORT_SYMBOL vmlinux 0x43763688 tcp_child_process +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x4396b988 max8925_bulk_read +EXPORT_SYMBOL vmlinux 0x43a01f90 complete_all +EXPORT_SYMBOL vmlinux 0x43f23311 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x43f5bdfa ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x43fad1f9 tcp_sync_mss +EXPORT_SYMBOL vmlinux 0x43ff09e6 jbd2_journal_start +EXPORT_SYMBOL vmlinux 0x4404a71e wake_up_process +EXPORT_SYMBOL vmlinux 0x4411c503 prandom_seed +EXPORT_SYMBOL vmlinux 0x445d8f2a sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x446402be mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0x44723d7d udp_disconnect +EXPORT_SYMBOL vmlinux 0x4481d54d scsi_rescan_device +EXPORT_SYMBOL vmlinux 0x4483be16 devm_free_irq +EXPORT_SYMBOL vmlinux 0x4485511e tty_devnum +EXPORT_SYMBOL vmlinux 0x4488c2c6 inet_confirm_addr +EXPORT_SYMBOL vmlinux 0x448a8d9f netdev_warn +EXPORT_SYMBOL vmlinux 0x448eac3e kmemdup +EXPORT_SYMBOL vmlinux 0x449720fb scm_detach_fds +EXPORT_SYMBOL vmlinux 0x44bbd8e4 dst_release +EXPORT_SYMBOL vmlinux 0x44bc655d dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0x44bcfc5f sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0x44bf8211 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0x44ddd772 from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44eb192e wait_for_completion +EXPORT_SYMBOL vmlinux 0x44f5e8b5 of_allnodes +EXPORT_SYMBOL vmlinux 0x44f7929b qm_fq_new +EXPORT_SYMBOL vmlinux 0x44fa9bb5 pci_set_dma_max_seg_size +EXPORT_SYMBOL vmlinux 0x451d0e48 simple_empty +EXPORT_SYMBOL vmlinux 0x451d5d67 scsi_scan_host +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x457afb23 skb_queue_tail +EXPORT_SYMBOL vmlinux 0x458bfe81 tcp_poll +EXPORT_SYMBOL vmlinux 0x45a55ec8 __iounmap +EXPORT_SYMBOL vmlinux 0x45a6be13 cpufreq_sysfs_remove_file +EXPORT_SYMBOL vmlinux 0x45a765cf pci_add_resource +EXPORT_SYMBOL vmlinux 0x45cf81bf twl6030_mmc_card_detect +EXPORT_SYMBOL vmlinux 0x45e10f82 key_reject_and_link +EXPORT_SYMBOL vmlinux 0x45e9cec1 ppp_input_error +EXPORT_SYMBOL vmlinux 0x45ea1630 make_bad_inode +EXPORT_SYMBOL vmlinux 0x46015ca3 elv_dispatch_sort +EXPORT_SYMBOL vmlinux 0x4612c59d down_trylock +EXPORT_SYMBOL vmlinux 0x461ac773 kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x461ebfa0 __copy_tofrom_user +EXPORT_SYMBOL vmlinux 0x46366225 xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0x465cab34 secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0x465cfdbd dm_io +EXPORT_SYMBOL vmlinux 0x46608fa0 getnstimeofday +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x46857b1d tcp_enter_memory_pressure +EXPORT_SYMBOL vmlinux 0x46888b99 __devm_release_region +EXPORT_SYMBOL vmlinux 0x468d2ba8 save_mount_options +EXPORT_SYMBOL vmlinux 0x468d98d6 sk_reset_timer +EXPORT_SYMBOL vmlinux 0x468f68a8 scsi_remove_target +EXPORT_SYMBOL vmlinux 0x46c1147d qman_poll_slow +EXPORT_SYMBOL vmlinux 0x46cd9b84 key_link +EXPORT_SYMBOL vmlinux 0x46d12956 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0x46e0371d __find_get_block +EXPORT_SYMBOL vmlinux 0x46ede0bd zero_fill_bio +EXPORT_SYMBOL vmlinux 0x46feb099 dm_read_arg +EXPORT_SYMBOL vmlinux 0x471be401 pci_domain_nr +EXPORT_SYMBOL vmlinux 0x472216c3 rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0x47416e14 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x474a302f search_binary_handler +EXPORT_SYMBOL vmlinux 0x47583cb3 genphy_setup_forced +EXPORT_SYMBOL vmlinux 0x476959d5 ppp_channel_index +EXPORT_SYMBOL vmlinux 0x4780f78d qman_init_fq +EXPORT_SYMBOL vmlinux 0x4789dd06 iget_locked +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x479a032c kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0x479bcb6c bioset_integrity_create +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x47a6e5ea blkdev_fsync +EXPORT_SYMBOL vmlinux 0x47a8affa xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x47b3f862 radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x47bcf84c param_set_ulong +EXPORT_SYMBOL vmlinux 0x47c8baf4 param_ops_uint +EXPORT_SYMBOL vmlinux 0x47e163c4 mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0x47ea129c invalidate_bdev +EXPORT_SYMBOL vmlinux 0x47fa1a0e pcim_pin_device +EXPORT_SYMBOL vmlinux 0x48034724 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x4803f2de dev_get_by_name +EXPORT_SYMBOL vmlinux 0x4811393f __cleancache_get_page +EXPORT_SYMBOL vmlinux 0x4829a47e memcpy +EXPORT_SYMBOL vmlinux 0x482a2a49 param_set_charp +EXPORT_SYMBOL vmlinux 0x48404b9a remove_wait_queue +EXPORT_SYMBOL vmlinux 0x4841bdee strnchr +EXPORT_SYMBOL vmlinux 0x48499109 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x485bacc8 vfs_rename +EXPORT_SYMBOL vmlinux 0x485c2c90 pci_request_region_exclusive +EXPORT_SYMBOL vmlinux 0x48693370 blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0x486ece80 mpage_readpages +EXPORT_SYMBOL vmlinux 0x487b9bab decrementer_clockevent +EXPORT_SYMBOL vmlinux 0x489b4cf2 __pagevec_lru_add +EXPORT_SYMBOL vmlinux 0x48a771c5 cpu_core_map +EXPORT_SYMBOL vmlinux 0x48c6db53 of_get_child_by_name +EXPORT_SYMBOL vmlinux 0x48e2e5b0 skb_seq_read +EXPORT_SYMBOL vmlinux 0x48fabfbf gen_new_estimator +EXPORT_SYMBOL vmlinux 0x49015534 __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x49127ee7 truncate_pagecache +EXPORT_SYMBOL vmlinux 0x492038c9 dev_add_pack +EXPORT_SYMBOL vmlinux 0x4922a981 bio_integrity_set_tag +EXPORT_SYMBOL vmlinux 0x492c93a3 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0x49408d77 dentry_unhash +EXPORT_SYMBOL vmlinux 0x49438318 blk_start_request +EXPORT_SYMBOL vmlinux 0x49587751 dquot_initialize +EXPORT_SYMBOL vmlinux 0x495c96f8 posix_acl_init +EXPORT_SYMBOL vmlinux 0x49603fb8 security_sb_copy_data +EXPORT_SYMBOL vmlinux 0x496a9378 d_obtain_alias +EXPORT_SYMBOL vmlinux 0x49867f60 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x49a6d931 ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0x49b07aec tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x49b97846 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0x49d0e3e6 generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x49e4a6e1 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x49ec5530 fasync_helper +EXPORT_SYMBOL vmlinux 0x49fe8806 agp_free_page_array +EXPORT_SYMBOL vmlinux 0x4a0906a5 swiotlb_sync_single_for_device +EXPORT_SYMBOL vmlinux 0x4a09e090 d_drop +EXPORT_SYMBOL vmlinux 0x4a1d87a8 pci_select_bars +EXPORT_SYMBOL vmlinux 0x4a358252 __bitmap_subset +EXPORT_SYMBOL vmlinux 0x4a5b4293 mount_ns +EXPORT_SYMBOL vmlinux 0x4a6cc59f xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x4a8e4929 lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x4a97f80c blk_mq_can_queue +EXPORT_SYMBOL vmlinux 0x4ab2464f scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x4ab47158 pcie_port_service_register +EXPORT_SYMBOL vmlinux 0x4acc69a3 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0x4acd93d3 release_resource +EXPORT_SYMBOL vmlinux 0x4ad863e5 devm_gpiod_get +EXPORT_SYMBOL vmlinux 0x4af2567a fb_set_cmap +EXPORT_SYMBOL vmlinux 0x4af45c75 ip_cmsg_recv +EXPORT_SYMBOL vmlinux 0x4afe9a77 scsi_partsize +EXPORT_SYMBOL vmlinux 0x4b048bca __nla_put +EXPORT_SYMBOL vmlinux 0x4b06e5ff seq_printf +EXPORT_SYMBOL vmlinux 0x4b085dbf agp3_generic_configure +EXPORT_SYMBOL vmlinux 0x4b1040a3 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0x4b1ce4f7 sock_no_mmap +EXPORT_SYMBOL vmlinux 0x4b42e5f3 dentry_path_raw +EXPORT_SYMBOL vmlinux 0x4b549d24 napi_gro_flush +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b7ed27b sleep_on +EXPORT_SYMBOL vmlinux 0x4b9d4889 phy_disconnect +EXPORT_SYMBOL vmlinux 0x4ba4cbb6 pci_scan_bus +EXPORT_SYMBOL vmlinux 0x4bae4d51 dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x4c11435a _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0x4c1182cb bitmap_scnprintf +EXPORT_SYMBOL vmlinux 0x4c527e10 cdrom_check_events +EXPORT_SYMBOL vmlinux 0x4c5c341e tcp_proc_unregister +EXPORT_SYMBOL vmlinux 0x4c6fe195 agp_generic_alloc_pages +EXPORT_SYMBOL vmlinux 0x4c8fa341 init_net +EXPORT_SYMBOL vmlinux 0x4c971bec ipmi_smi_msg_received +EXPORT_SYMBOL vmlinux 0x4ca88c2f phy_driver_unregister +EXPORT_SYMBOL vmlinux 0x4ca9669f scnprintf +EXPORT_SYMBOL vmlinux 0x4cab0e63 seq_read +EXPORT_SYMBOL vmlinux 0x4cb0e988 gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0x4cbbd171 __bitmap_weight +EXPORT_SYMBOL vmlinux 0x4cbe9b79 blk_init_queue +EXPORT_SYMBOL vmlinux 0x4ccec8e6 pci_set_master +EXPORT_SYMBOL vmlinux 0x4cdb3178 ns_to_timeval +EXPORT_SYMBOL vmlinux 0x4ced6acf jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0x4d11420d tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0x4d2cd7fc neigh_seq_start +EXPORT_SYMBOL vmlinux 0x4d62f73f pci_map_rom +EXPORT_SYMBOL vmlinux 0x4d8fdec0 generic_pipe_buf_map +EXPORT_SYMBOL vmlinux 0x4d974b9c register_sysrq_key +EXPORT_SYMBOL vmlinux 0x4d9b2c5b nf_ip_checksum +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4d9dcda5 qman_fqid_pool_destroy +EXPORT_SYMBOL vmlinux 0x4da7c931 rwsem_downgrade_wake +EXPORT_SYMBOL vmlinux 0x4dcc0e20 udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0x4de34a07 cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x4df119fa __bitmap_parse +EXPORT_SYMBOL vmlinux 0x4dfed71c flex_array_get_ptr +EXPORT_SYMBOL vmlinux 0x4e0e53f4 padata_alloc +EXPORT_SYMBOL vmlinux 0x4e2f1622 pme_ctx_reconfigure_tx +EXPORT_SYMBOL vmlinux 0x4e303949 security_task_getsecid +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e3aac3e sync_inode_metadata +EXPORT_SYMBOL vmlinux 0x4e3d11b5 __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x4e3d9380 kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x4e58f6cb update_time +EXPORT_SYMBOL vmlinux 0x4e687803 __module_get +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e786d13 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x4e9dffb5 ip_fast_csum +EXPORT_SYMBOL vmlinux 0x4eacd246 single_open_size +EXPORT_SYMBOL vmlinux 0x4eb26e37 blk_execute_rq +EXPORT_SYMBOL vmlinux 0x4ebe8a25 register_filesystem +EXPORT_SYMBOL vmlinux 0x4edd72f7 block_all_signals +EXPORT_SYMBOL vmlinux 0x4ee353b9 tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0x4ef40085 agp_generic_destroy_page +EXPORT_SYMBOL vmlinux 0x4ef41845 uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f248523 of_find_node_by_name +EXPORT_SYMBOL vmlinux 0x4f34c771 locks_free_lock +EXPORT_SYMBOL vmlinux 0x4f391d0e nla_parse +EXPORT_SYMBOL vmlinux 0x4f5b238d serio_close +EXPORT_SYMBOL vmlinux 0x4f68e5c9 do_gettimeofday +EXPORT_SYMBOL vmlinux 0x4f818fd0 dquot_quota_on +EXPORT_SYMBOL vmlinux 0x4f8d0363 input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x4f91cf25 filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x4fd417fa neigh_for_each +EXPORT_SYMBOL vmlinux 0x4fd59d43 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0x4fdca220 blk_make_request +EXPORT_SYMBOL vmlinux 0x4fdee897 i8042_command +EXPORT_SYMBOL vmlinux 0x50028846 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0x5008eba1 led_blink_set_oneshot +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x501dc60c netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x50266d03 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0x509b0c9b request_key_async +EXPORT_SYMBOL vmlinux 0x50a62cd2 ___pskb_trim +EXPORT_SYMBOL vmlinux 0x50a90e8d bsearch +EXPORT_SYMBOL vmlinux 0x50ae7d80 __idr_pre_get +EXPORT_SYMBOL vmlinux 0x50b106e7 tty_port_open +EXPORT_SYMBOL vmlinux 0x50b2c68d mmc_set_blockcount +EXPORT_SYMBOL vmlinux 0x50cfbad4 tty_kref_put +EXPORT_SYMBOL vmlinux 0x50d2592d hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0x50db82d3 read_code +EXPORT_SYMBOL vmlinux 0x5106d400 dm_get_device +EXPORT_SYMBOL vmlinux 0x510f7422 xfrm_state_update +EXPORT_SYMBOL vmlinux 0x5118c382 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0x5134b764 input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0x5143717b freeze_bdev +EXPORT_SYMBOL vmlinux 0x51518929 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0x5156dab0 inet_listen +EXPORT_SYMBOL vmlinux 0x5156e04a __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x519b0da3 finish_wait +EXPORT_SYMBOL vmlinux 0x51a283c5 d_delete +EXPORT_SYMBOL vmlinux 0x51abda36 generic_pipe_buf_unmap +EXPORT_SYMBOL vmlinux 0x51dce73b xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x51ddd9cb blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0x51eb1da9 bio_get_nr_vecs +EXPORT_SYMBOL vmlinux 0x51eb2d7e generic_file_mmap +EXPORT_SYMBOL vmlinux 0x52005b43 qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0x52026cdf security_sb_parse_opts_str +EXPORT_SYMBOL vmlinux 0x520e266f lock_fb_info +EXPORT_SYMBOL vmlinux 0x521b36b5 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0x521b7e49 from_kuid_munged +EXPORT_SYMBOL vmlinux 0x523439fb simple_setattr +EXPORT_SYMBOL vmlinux 0x52428cc8 parent_mem_cgroup +EXPORT_SYMBOL vmlinux 0x5245f6a4 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x524f6f51 ipmi_get_my_address +EXPORT_SYMBOL vmlinux 0x5253bdf2 __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0x52557f04 migrate_page +EXPORT_SYMBOL vmlinux 0x525692a1 bio_integrity_enabled +EXPORT_SYMBOL vmlinux 0x52587088 simple_lookup +EXPORT_SYMBOL vmlinux 0x526d3b6e napi_gro_frags +EXPORT_SYMBOL vmlinux 0x526dc138 qman_set_null_cb +EXPORT_SYMBOL vmlinux 0x5283f7b3 tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x52926c1e pme_ctx_disable +EXPORT_SYMBOL vmlinux 0x52abb3e2 set_user_nice +EXPORT_SYMBOL vmlinux 0x52b9e8bf dump_emit +EXPORT_SYMBOL vmlinux 0x52ef720a pci_reenable_device +EXPORT_SYMBOL vmlinux 0x52f40317 pci_alloc_dev +EXPORT_SYMBOL vmlinux 0x52f482c7 compat_nf_getsockopt +EXPORT_SYMBOL vmlinux 0x53030111 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0x53319ece poll_schedule_timeout +EXPORT_SYMBOL vmlinux 0x53326531 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x5352c7e8 netdev_all_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x53544af2 generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x536cc847 memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0x5377e556 hex2bin +EXPORT_SYMBOL vmlinux 0x53ae1522 mem_map +EXPORT_SYMBOL vmlinux 0x53b29dbd jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0x53c67601 pci_bus_put +EXPORT_SYMBOL vmlinux 0x53e20dd8 kblockd_schedule_delayed_work +EXPORT_SYMBOL vmlinux 0x53ebab1b _outsl_ns +EXPORT_SYMBOL vmlinux 0x53f245cd pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0x53fc189a pci_set_power_state +EXPORT_SYMBOL vmlinux 0x5409775b free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x5412c7c7 up +EXPORT_SYMBOL vmlinux 0x5415383e __napi_complete +EXPORT_SYMBOL vmlinux 0x54245b39 kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0x54250960 serial8250_do_pm +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x545bc43f xfrm_user_policy +EXPORT_SYMBOL vmlinux 0x547b666d security_path_link +EXPORT_SYMBOL vmlinux 0x54824b13 cpufreq_global_kobject +EXPORT_SYMBOL vmlinux 0x548cb517 bman_poll +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54bcc466 netdev_err +EXPORT_SYMBOL vmlinux 0x54bd0290 netif_rx +EXPORT_SYMBOL vmlinux 0x54e3cc3b param_get_int +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54f7bfc0 inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x5505047d xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x551671b6 dma_direct_ops +EXPORT_SYMBOL vmlinux 0x5518d580 have_submounts +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x55216590 phy_register_fixup +EXPORT_SYMBOL vmlinux 0x5521669c skb_push +EXPORT_SYMBOL vmlinux 0x553bc2cb jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x5541ea93 on_each_cpu +EXPORT_SYMBOL vmlinux 0x5549253a tcf_hash_destroy +EXPORT_SYMBOL vmlinux 0x5567c227 kernel_cpustat +EXPORT_SYMBOL vmlinux 0x5568c553 complete +EXPORT_SYMBOL vmlinux 0x556c2740 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x55718792 phy_connect_direct +EXPORT_SYMBOL vmlinux 0x5577ef9e udp_table +EXPORT_SYMBOL vmlinux 0x5594be03 bitmap_remap +EXPORT_SYMBOL vmlinux 0x5598da66 key_alloc +EXPORT_SYMBOL vmlinux 0x55ccd4d2 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0x55d4681e pci_find_capability +EXPORT_SYMBOL vmlinux 0x55f09c51 input_set_capability +EXPORT_SYMBOL vmlinux 0x5600d05b input_close_device +EXPORT_SYMBOL vmlinux 0x5614b010 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x563b8e7d pci_disable_link_state +EXPORT_SYMBOL vmlinux 0x5642793a radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x56556cba giveup_fpu +EXPORT_SYMBOL vmlinux 0x5656caf2 file_remove_suid +EXPORT_SYMBOL vmlinux 0x567f6c6e dev_get_stats +EXPORT_SYMBOL vmlinux 0x56a10763 csum_tcpudp_magic +EXPORT_SYMBOL vmlinux 0x56bf3cf7 netpoll_print_options +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56d5651e fsnotify_destroy_mark +EXPORT_SYMBOL vmlinux 0x56ee46d3 disk_stack_limits +EXPORT_SYMBOL vmlinux 0x56f762f7 scsi_prep_fn +EXPORT_SYMBOL vmlinux 0x56f93859 address_space_init_once +EXPORT_SYMBOL vmlinux 0x57048538 bdi_init +EXPORT_SYMBOL vmlinux 0x5711a47a i8042_check_port_owner +EXPORT_SYMBOL vmlinux 0x5716df45 thaw_bdev +EXPORT_SYMBOL vmlinux 0x5729dbca dev_open +EXPORT_SYMBOL vmlinux 0x572e85d4 blk_lookup_devt +EXPORT_SYMBOL vmlinux 0x572ef263 alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x57545a2d pci_enable_msi_block +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x575af70c on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x575bd81c inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x57790079 dma_common_get_sgtable +EXPORT_SYMBOL vmlinux 0x577d1230 __devm_request_region +EXPORT_SYMBOL vmlinux 0x5785384a flex_array_free_parts +EXPORT_SYMBOL vmlinux 0x5792f848 strlcpy +EXPORT_SYMBOL vmlinux 0x579f65c8 pme_fd_cmd_fcr +EXPORT_SYMBOL vmlinux 0x579fbcd2 cpu_possible_mask +EXPORT_SYMBOL vmlinux 0x57ad2ca4 kill_anon_super +EXPORT_SYMBOL vmlinux 0x57d484f0 generic_setxattr +EXPORT_SYMBOL vmlinux 0x57edc789 bio_add_page +EXPORT_SYMBOL vmlinux 0x5809ad87 kernel_sendpage +EXPORT_SYMBOL vmlinux 0x580d79c1 generic_write_end +EXPORT_SYMBOL vmlinux 0x5814e055 bm_pool_free +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x58503723 scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x5857b225 ioread16_rep +EXPORT_SYMBOL vmlinux 0x587616f1 vfs_fstatat +EXPORT_SYMBOL vmlinux 0x5877d8ef qman_static_dequeue_add +EXPORT_SYMBOL vmlinux 0x589a0137 scsi_dma_map +EXPORT_SYMBOL vmlinux 0x589ab366 max8998_update_reg +EXPORT_SYMBOL vmlinux 0x58d1070a of_get_address +EXPORT_SYMBOL vmlinux 0x59035683 fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x595d0946 empty_zero_page +EXPORT_SYMBOL vmlinux 0x5967c929 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x5991219c cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x59abcfb8 dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0x59b3378a completion_done +EXPORT_SYMBOL vmlinux 0x59f6d279 cdev_add +EXPORT_SYMBOL vmlinux 0x5a025f7b arch_local_irq_restore +EXPORT_SYMBOL vmlinux 0x5a0aaa12 proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x5a23d3c2 register_cdrom +EXPORT_SYMBOL vmlinux 0x5a2e967f complete_request_key +EXPORT_SYMBOL vmlinux 0x5a3fd062 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0x5a5536c2 param_ops_invbool +EXPORT_SYMBOL vmlinux 0x5a67c917 compat_ip_getsockopt +EXPORT_SYMBOL vmlinux 0x5a755087 nf_log_packet +EXPORT_SYMBOL vmlinux 0x5a921311 strncmp +EXPORT_SYMBOL vmlinux 0x5a9f1d63 memmove +EXPORT_SYMBOL vmlinux 0x5ab80a1f cdrom_media_changed +EXPORT_SYMBOL vmlinux 0x5abd4f45 inode_permission +EXPORT_SYMBOL vmlinux 0x5abe5815 inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x5ad263a7 __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0x5ada4db3 vfs_statfs +EXPORT_SYMBOL vmlinux 0x5ae50279 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x5aeccf24 wireless_spy_update +EXPORT_SYMBOL vmlinux 0x5af898a7 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x5b0f9b61 dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x5b39988e ftrace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0x5b56860c vm_munmap +EXPORT_SYMBOL vmlinux 0x5b9828c5 dma_spin_lock +EXPORT_SYMBOL vmlinux 0x5baa9b74 bdi_destroy +EXPORT_SYMBOL vmlinux 0x5bb6f366 dm_get_mapinfo +EXPORT_SYMBOL vmlinux 0x5bc10524 printk_emit +EXPORT_SYMBOL vmlinux 0x5bda94d9 key_revoke +EXPORT_SYMBOL vmlinux 0x5be2dc86 skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0x5bf63794 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x5c018f5d mach_corenet_generic +EXPORT_SYMBOL vmlinux 0x5c1f7f9f kernel_accept +EXPORT_SYMBOL vmlinux 0x5c2d9fd2 agp_generic_alloc_by_type +EXPORT_SYMBOL vmlinux 0x5c2fdf46 flush_signals +EXPORT_SYMBOL vmlinux 0x5c316648 netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0x5c37f319 _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x5c42331c of_mdio_find_bus +EXPORT_SYMBOL vmlinux 0x5c52a39f tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x5c5b83a0 scsi_get_command +EXPORT_SYMBOL vmlinux 0x5c6755d5 jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x5c81893f neigh_ifdown +EXPORT_SYMBOL vmlinux 0x5c81ea19 of_phy_attach +EXPORT_SYMBOL vmlinux 0x5c930f62 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x5cbe83bb bdi_setup_and_register +EXPORT_SYMBOL vmlinux 0x5cc53c4f scsi_setup_fs_cmnd +EXPORT_SYMBOL vmlinux 0x5cd3f3eb blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0x5ce995ba sync_inode +EXPORT_SYMBOL vmlinux 0x5cf30e10 __debugger_ipi +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5d1b63be bdget_disk +EXPORT_SYMBOL vmlinux 0x5d41c87c param_ops_charp +EXPORT_SYMBOL vmlinux 0x5d550c4d scsi_sd_probe_domain +EXPORT_SYMBOL vmlinux 0x5d58efa0 convert_ifc_address +EXPORT_SYMBOL vmlinux 0x5d5b5a16 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x5d5f0ac7 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0x5d66e562 pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0x5d6bdce1 flex_array_alloc +EXPORT_SYMBOL vmlinux 0x5d75b14e ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0x5d832826 i2c_transfer +EXPORT_SYMBOL vmlinux 0x5dbe0939 console_start +EXPORT_SYMBOL vmlinux 0x5dd05545 eth_change_mtu +EXPORT_SYMBOL vmlinux 0x5dd0681f pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x5e0c3b45 xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0x5e0e4e3f scsi_nonblockable_ioctl +EXPORT_SYMBOL vmlinux 0x5e15425b tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0x5e3a8a9c __wake_up +EXPORT_SYMBOL vmlinux 0x5e7ae993 input_reset_device +EXPORT_SYMBOL vmlinux 0x5e7c24e3 nf_log_unregister +EXPORT_SYMBOL vmlinux 0x5e7e56cd dev_set_drvdata +EXPORT_SYMBOL vmlinux 0x5e80f37c ipmi_unregister_for_cmd +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5eaf51a2 scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ec7d057 abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x5ecb330c request_key +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ed677c1 abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0x5ee1092a md_set_array_sectors +EXPORT_SYMBOL vmlinux 0x5ef4948f genphy_read_status +EXPORT_SYMBOL vmlinux 0x5efb4d3a tcp_init_cgroup +EXPORT_SYMBOL vmlinux 0x5f005368 kstrtou8 +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f13b23a set_anon_super +EXPORT_SYMBOL vmlinux 0x5f26ed6e serio_interrupt +EXPORT_SYMBOL vmlinux 0x5f28c2dc idr_remove +EXPORT_SYMBOL vmlinux 0x5f3c8f5c mmc_assume_removable +EXPORT_SYMBOL vmlinux 0x5f47fa4e devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0x5f4bb1cf scsi_host_put +EXPORT_SYMBOL vmlinux 0x5f4bceb9 tty_unregister_driver +EXPORT_SYMBOL vmlinux 0x5f697c0e tcp_close +EXPORT_SYMBOL vmlinux 0x5f7cc002 mpage_writepages +EXPORT_SYMBOL vmlinux 0x5f85aa95 unregister_md_personality +EXPORT_SYMBOL vmlinux 0x5f8a2728 isa_io_base +EXPORT_SYMBOL vmlinux 0x5f905047 i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0x5fb0d7f2 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0x5fcdcc05 ipmi_get_my_LUN +EXPORT_SYMBOL vmlinux 0x5fda0227 vfs_stat +EXPORT_SYMBOL vmlinux 0x5fdc8718 scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0x5fe1371d scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0x5feaae84 of_phy_find_device +EXPORT_SYMBOL vmlinux 0x5ff77e28 seq_open_private +EXPORT_SYMBOL vmlinux 0x60013864 i2c_bit_add_numbered_bus +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x600b553b vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x6028ae72 pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x606d0b09 secure_tcpv6_sequence_number +EXPORT_SYMBOL vmlinux 0x606e041f mount_single +EXPORT_SYMBOL vmlinux 0x60859e5b blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0x6086fae9 rwsem_wake +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a1896e udp_proc_register +EXPORT_SYMBOL vmlinux 0x60adcf5f xfrm_state_add +EXPORT_SYMBOL vmlinux 0x60ce43c4 pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x60d045b7 elv_rb_del +EXPORT_SYMBOL vmlinux 0x60d1dd90 dquot_operations +EXPORT_SYMBOL vmlinux 0x60df1e3b posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x60e3b61a bio_clone_bioset +EXPORT_SYMBOL vmlinux 0x60ef9030 mmc_can_discard +EXPORT_SYMBOL vmlinux 0x611a0304 neigh_app_ns +EXPORT_SYMBOL vmlinux 0x611b8362 dma_async_memcpy_buf_to_pg +EXPORT_SYMBOL vmlinux 0x611f3e18 filemap_fault +EXPORT_SYMBOL vmlinux 0x612390ad netpoll_set_trap +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x613bf78e neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x61538ad0 param_get_charp +EXPORT_SYMBOL vmlinux 0x616b2ef2 bio_flush_dcache_pages +EXPORT_SYMBOL vmlinux 0x616c4875 blk_queue_bounce +EXPORT_SYMBOL vmlinux 0x6173f90f neigh_table_clear +EXPORT_SYMBOL vmlinux 0x618b8a10 md_unregister_thread +EXPORT_SYMBOL vmlinux 0x619cb7dd simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x61b4c268 bman_poll_slow +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61d0fb9e inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0x61ec3aee scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0x61eef2c9 _insb +EXPORT_SYMBOL vmlinux 0x620c36c0 sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x6225637e md5_transform +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x62538167 slhc_toss +EXPORT_SYMBOL vmlinux 0x62539b81 ftrace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x6268b2fe abx500_register_ops +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x62827bec security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x629d3265 generic_writepages +EXPORT_SYMBOL vmlinux 0x62d6c2ce jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0x62ff1356 ppp_unit_number +EXPORT_SYMBOL vmlinux 0x63075302 tcp_check_req +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x631d9fb8 datagram_poll +EXPORT_SYMBOL vmlinux 0x63231951 gen_pool_create +EXPORT_SYMBOL vmlinux 0x632e8764 vfs_llseek +EXPORT_SYMBOL vmlinux 0x63396aec __debugger_break_match +EXPORT_SYMBOL vmlinux 0x6340192a unregister_qdisc +EXPORT_SYMBOL vmlinux 0x634686a7 __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0x637af172 netdev_alert +EXPORT_SYMBOL vmlinux 0x63cb5695 __invalidate_device +EXPORT_SYMBOL vmlinux 0x63cc6c52 pme_map_error +EXPORT_SYMBOL vmlinux 0x63d98953 mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0x63dc61d2 pneigh_enqueue +EXPORT_SYMBOL vmlinux 0x63e7bd12 __cputime_usec_factor +EXPORT_SYMBOL vmlinux 0x63eb525c pcim_iomap +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63fc232f strlen_user +EXPORT_SYMBOL vmlinux 0x6403e338 tcp_memory_pressure +EXPORT_SYMBOL vmlinux 0x640e7bd7 xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x641a5a2a __dquot_free_space +EXPORT_SYMBOL vmlinux 0x64279261 proc_symlink +EXPORT_SYMBOL vmlinux 0x64700167 dget_parent +EXPORT_SYMBOL vmlinux 0x6494e48d iget5_locked +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x64a4b84d cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x64bbc288 string_unescape +EXPORT_SYMBOL vmlinux 0x64cc153b fb_show_logo +EXPORT_SYMBOL vmlinux 0x64ec315e pid_task +EXPORT_SYMBOL vmlinux 0x64edd764 __serio_register_port +EXPORT_SYMBOL vmlinux 0x64f362a9 blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x65011620 d_splice_alias +EXPORT_SYMBOL vmlinux 0x65064629 __ps2_command +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x65181234 agp_bind_memory +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x652ce9aa nla_memcmp +EXPORT_SYMBOL vmlinux 0x65367635 __netif_schedule +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x655c8855 xfrm_unregister_mode +EXPORT_SYMBOL vmlinux 0x655fe0b2 eth_rebuild_header +EXPORT_SYMBOL vmlinux 0x6599c967 qman_enqueue +EXPORT_SYMBOL vmlinux 0x65a6caa6 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0x65abbe1e pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0x65bb58a2 _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65e0d6d7 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x65e84092 tty_mutex +EXPORT_SYMBOL vmlinux 0x65f3ad9a fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x66146f29 __bread +EXPORT_SYMBOL vmlinux 0x66456b72 __brelse +EXPORT_SYMBOL vmlinux 0x6650babc bitmap_endwrite +EXPORT_SYMBOL vmlinux 0x6655908a tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0x666ab85a neigh_event_ns +EXPORT_SYMBOL vmlinux 0x66742446 i2c_master_recv +EXPORT_SYMBOL vmlinux 0x6687e47f mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x668da8d5 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x66accfc9 clk_add_alias +EXPORT_SYMBOL vmlinux 0x66e16829 flush_old_exec +EXPORT_SYMBOL vmlinux 0x66e23361 inet_frag_maybe_warn_overflow +EXPORT_SYMBOL vmlinux 0x673f815e agp_bridges +EXPORT_SYMBOL vmlinux 0x6746a6be pme_ctx_reconfigure_rx +EXPORT_SYMBOL vmlinux 0x6755a076 __elv_add_request +EXPORT_SYMBOL vmlinux 0x675b1fc2 bman_get_portal_config +EXPORT_SYMBOL vmlinux 0x675b8f61 param_get_string +EXPORT_SYMBOL vmlinux 0x675e11ad __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0x6763a1d0 fsnotify_get_group +EXPORT_SYMBOL vmlinux 0x676c647e sock_recvmsg +EXPORT_SYMBOL vmlinux 0x6782c87f gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0x67992b39 dev_mc_add +EXPORT_SYMBOL vmlinux 0x67b122ff tty_register_device +EXPORT_SYMBOL vmlinux 0x67b50d68 max8925_reg_read +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67b97a97 ip6_route_output +EXPORT_SYMBOL vmlinux 0x67cb9784 ipmi_poll_interface +EXPORT_SYMBOL vmlinux 0x67d80bda __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0x67e83e9e __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0x6849a15f flex_array_clear +EXPORT_SYMBOL vmlinux 0x685e63fd swiotlb_unmap_sg +EXPORT_SYMBOL vmlinux 0x68609857 complete_and_exit +EXPORT_SYMBOL vmlinux 0x686fc5de page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x68756d91 sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x68893846 ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0x688bb042 pci_target_state +EXPORT_SYMBOL vmlinux 0x68977d80 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0x68b83ac6 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x68d4ede4 block_read_full_page +EXPORT_SYMBOL vmlinux 0x68e05d57 getrawmonotonic +EXPORT_SYMBOL vmlinux 0x68e316ba pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0x692ab3b4 d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0x693a344f grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x6995fd81 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0x69a0ca7d iowrite16be +EXPORT_SYMBOL vmlinux 0x69a358a6 iomem_resource +EXPORT_SYMBOL vmlinux 0x69abb1b7 simple_rename +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69c96bf0 pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0x69d38ed9 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x69e27c7a bitmap_copy_le +EXPORT_SYMBOL vmlinux 0x69e8a29b twl6040_set_pll +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a091e72 nf_hook_slow +EXPORT_SYMBOL vmlinux 0x6a0bc3a1 netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0x6a1cd012 vfs_fsync +EXPORT_SYMBOL vmlinux 0x6a2d2bf7 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0x6a3f4119 mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0x6a461c4f alloc_buffer_head +EXPORT_SYMBOL vmlinux 0x6a50cd95 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0x6a52f257 mb_cache_create +EXPORT_SYMBOL vmlinux 0x6a5d9ed2 inet_shutdown +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a5fa363 sigprocmask +EXPORT_SYMBOL vmlinux 0x6a61f874 to_tm +EXPORT_SYMBOL vmlinux 0x6a740c54 gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x6a76f3ac blk_iopoll_enable +EXPORT_SYMBOL vmlinux 0x6a967c8c sock_sendmsg +EXPORT_SYMBOL vmlinux 0x6aad901d netdev_change_features +EXPORT_SYMBOL vmlinux 0x6aaf9bac lookup_bdev +EXPORT_SYMBOL vmlinux 0x6ab0ab7a path_get +EXPORT_SYMBOL vmlinux 0x6abdd071 __dev_remove_offload +EXPORT_SYMBOL vmlinux 0x6ac26b8b scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0x6ac88a81 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0x6acb973d iowrite32be +EXPORT_SYMBOL vmlinux 0x6af442c4 lro_receive_skb +EXPORT_SYMBOL vmlinux 0x6b06fdce delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x6b11ac7c inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x6b1b67d3 __bdevname +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b3c577a xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0x6b5cebb2 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0x6b5dfe73 __debugger_bpt +EXPORT_SYMBOL vmlinux 0x6b640864 nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6b710966 tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0x6b7f1917 idr_find_slowpath +EXPORT_SYMBOL vmlinux 0x6b886690 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0x6b8e5d43 bio_pair_release +EXPORT_SYMBOL vmlinux 0x6b90246d mach_chroma_md +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bceaebc gen_replace_estimator +EXPORT_SYMBOL vmlinux 0x6bd33a40 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0x6bdcfd99 qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x6beb2078 param_set_copystring +EXPORT_SYMBOL vmlinux 0x6c058bce inet6_add_protocol +EXPORT_SYMBOL vmlinux 0x6c1a7260 abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x6c297596 skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x6c51a836 sysctl_tcp_notsent_lowat +EXPORT_SYMBOL vmlinux 0x6c584570 unregister_binfmt +EXPORT_SYMBOL vmlinux 0x6c5ba0b5 serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0x6c5d191b pci_dev_put +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c665691 flex_array_shrink +EXPORT_SYMBOL vmlinux 0x6c702af7 sysctl_udp_rmem_min +EXPORT_SYMBOL vmlinux 0x6c972d23 ab3100_event_register +EXPORT_SYMBOL vmlinux 0x6cb6581e udp_prot +EXPORT_SYMBOL vmlinux 0x6cd8c86b __crc32c_le_combine +EXPORT_SYMBOL vmlinux 0x6cea5900 scsi_put_command +EXPORT_SYMBOL vmlinux 0x6cedf926 pcim_iomap_table +EXPORT_SYMBOL vmlinux 0x6d0f1f89 dm_table_get_mode +EXPORT_SYMBOL vmlinux 0x6d27ef64 __bitmap_empty +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d666e31 qdisc_watchdog_schedule_ns +EXPORT_SYMBOL vmlinux 0x6d698272 __dquot_transfer +EXPORT_SYMBOL vmlinux 0x6d6da5ee do_splice_direct +EXPORT_SYMBOL vmlinux 0x6da5b36f dmam_alloc_coherent +EXPORT_SYMBOL vmlinux 0x6da928f4 _insw_ns +EXPORT_SYMBOL vmlinux 0x6da9edf1 filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0x6dc42d1a mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0x6dd43c72 read_cache_page +EXPORT_SYMBOL vmlinux 0x6dd93237 pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0x6de5e260 devm_gpiod_put +EXPORT_SYMBOL vmlinux 0x6def2db2 half_md4_transform +EXPORT_SYMBOL vmlinux 0x6df66e65 pci_clear_master +EXPORT_SYMBOL vmlinux 0x6e01a329 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0x6e700044 registered_fb +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e764332 idr_destroy +EXPORT_SYMBOL vmlinux 0x6e7f1263 uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x6e808af0 phy_stop +EXPORT_SYMBOL vmlinux 0x6e82bd09 mmc_stop_bkops +EXPORT_SYMBOL vmlinux 0x6ea932cc nf_register_hook +EXPORT_SYMBOL vmlinux 0x6eacb5d3 inode_init_once +EXPORT_SYMBOL vmlinux 0x6ebc5149 param_ops_long +EXPORT_SYMBOL vmlinux 0x6ec076b6 fget +EXPORT_SYMBOL vmlinux 0x6ed6263a from_kprojid +EXPORT_SYMBOL vmlinux 0x6f0dc366 contig_page_data +EXPORT_SYMBOL vmlinux 0x6f20960a full_name_hash +EXPORT_SYMBOL vmlinux 0x6f268538 bman_acquire +EXPORT_SYMBOL vmlinux 0x6f2be535 qdisc_reset +EXPORT_SYMBOL vmlinux 0x6f31a447 fsnotify_add_mark +EXPORT_SYMBOL vmlinux 0x6f59063f tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0x6f620d7f dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x6f75f775 get_pci_dma_ops +EXPORT_SYMBOL vmlinux 0x6f813788 mfd_cell_enable +EXPORT_SYMBOL vmlinux 0x6f85b211 ida_remove +EXPORT_SYMBOL vmlinux 0x6f878514 elv_rb_find +EXPORT_SYMBOL vmlinux 0x6f9df543 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x6fa7521b giveup_altivec +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fd040ec generic_segment_checks +EXPORT_SYMBOL vmlinux 0x70014f1f scsi_release_buffers +EXPORT_SYMBOL vmlinux 0x7005be5d sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0x701af222 bioset_integrity_free +EXPORT_SYMBOL vmlinux 0x702ac2b3 pci_disable_device +EXPORT_SYMBOL vmlinux 0x704435f5 wireless_send_event +EXPORT_SYMBOL vmlinux 0x7045dea9 qman_modify_cgr +EXPORT_SYMBOL vmlinux 0x704c4365 __cputime_sec_factor +EXPORT_SYMBOL vmlinux 0x70523a7a __cond_resched_softirq +EXPORT_SYMBOL vmlinux 0x7054a3e4 request_dma +EXPORT_SYMBOL vmlinux 0x70781b05 pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0x707f43f6 __ctzdi2 +EXPORT_SYMBOL vmlinux 0x70970071 dev_remove_pack +EXPORT_SYMBOL vmlinux 0x709c24e9 dma_pool_create +EXPORT_SYMBOL vmlinux 0x70baa59a make_kprojid +EXPORT_SYMBOL vmlinux 0x70bc17d7 inode_wait +EXPORT_SYMBOL vmlinux 0x70ca66f4 fsnotify_put_mark +EXPORT_SYMBOL vmlinux 0x70d053fd try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x7111eb28 ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0x71147980 netlink_ack +EXPORT_SYMBOL vmlinux 0x711deccd mmc_remove_host +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x713dc928 netlink_broadcast +EXPORT_SYMBOL vmlinux 0x714c90a0 of_platform_bus_probe +EXPORT_SYMBOL vmlinux 0x715e53c7 proc_mkdir +EXPORT_SYMBOL vmlinux 0x716aa2c7 user_revoke +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x717a0f48 dmam_pool_create +EXPORT_SYMBOL vmlinux 0x7180b2c0 qman_delete_cgr +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71ecf573 bio_map_user +EXPORT_SYMBOL vmlinux 0x71ef77f1 drop_nlink +EXPORT_SYMBOL vmlinux 0x71fb20df eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0x72077b8b give_up_console +EXPORT_SYMBOL vmlinux 0x720d1fb5 dev_uc_add +EXPORT_SYMBOL vmlinux 0x720e4d84 kernel_sock_ioctl +EXPORT_SYMBOL vmlinux 0x72261590 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0x723df7ac skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0x7246d10c pci_iounmap +EXPORT_SYMBOL vmlinux 0x725b31c9 phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0x72701131 dquot_transfer +EXPORT_SYMBOL vmlinux 0x728ce230 qm_fq_free_flags +EXPORT_SYMBOL vmlinux 0x72927923 mmc_can_trim +EXPORT_SYMBOL vmlinux 0x72985049 ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x72b243d4 free_dma +EXPORT_SYMBOL vmlinux 0x72baa20d default_file_splice_read +EXPORT_SYMBOL vmlinux 0x72bda8cd bio_map_kern +EXPORT_SYMBOL vmlinux 0x72c218f9 tcp_release_cb +EXPORT_SYMBOL vmlinux 0x72c98139 __arch_hweight64 +EXPORT_SYMBOL vmlinux 0x72ca543e qman_query_fq +EXPORT_SYMBOL vmlinux 0x72ccca3e free_buffer_head +EXPORT_SYMBOL vmlinux 0x72d00ada tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0x72d4c23c fsl_get_sys_freq +EXPORT_SYMBOL vmlinux 0x72e49461 twl6040_set_bits +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72fd76a4 __block_write_begin +EXPORT_SYMBOL vmlinux 0x730fc274 mmc_interrupt_hpi +EXPORT_SYMBOL vmlinux 0x7315a4e9 twl6030_mmc_card_detect_config +EXPORT_SYMBOL vmlinux 0x731a747a pci_io_base +EXPORT_SYMBOL vmlinux 0x731c8064 devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0x731ca8f9 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0x732e21d1 elv_rq_merge_ok +EXPORT_SYMBOL vmlinux 0x733b2383 next_tlbcam_idx +EXPORT_SYMBOL vmlinux 0x733c3b54 kasprintf +EXPORT_SYMBOL vmlinux 0x735d8503 add_wait_queue +EXPORT_SYMBOL vmlinux 0x737de5e9 radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0x737e020d agp_unbind_memory +EXPORT_SYMBOL vmlinux 0x739d23f3 i2c_bit_add_bus +EXPORT_SYMBOL vmlinux 0x73cfa82c blk_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x73fef4a1 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0x743dbab2 dmam_free_coherent +EXPORT_SYMBOL vmlinux 0x74588c5b sk_receive_skb +EXPORT_SYMBOL vmlinux 0x745eec62 bio_reset +EXPORT_SYMBOL vmlinux 0x745f99b5 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0x7469fcfe radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x747195f0 hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x7485e15e unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x74872f89 dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0x74980653 pci_find_bus +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74d325f8 mac_find_mode +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x75046744 sock_i_ino +EXPORT_SYMBOL vmlinux 0x750c6bc2 input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0x751c2917 __wait_on_bit +EXPORT_SYMBOL vmlinux 0x752f653e __sk_dst_check +EXPORT_SYMBOL vmlinux 0x7532588a alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x7538b132 agp_off +EXPORT_SYMBOL vmlinux 0x754dac78 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x75533caf cancel_dirty_page +EXPORT_SYMBOL vmlinux 0x755dcaac dev_get_flags +EXPORT_SYMBOL vmlinux 0x75628107 bio_sector_offset +EXPORT_SYMBOL vmlinux 0x758b0f00 security_file_permission +EXPORT_SYMBOL vmlinux 0x759031d7 phy_scan_fixups +EXPORT_SYMBOL vmlinux 0x75994700 add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75bdea12 iommu_area_alloc +EXPORT_SYMBOL vmlinux 0x75be6702 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x75ceeafb xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0x75dfb027 nf_ct_attach +EXPORT_SYMBOL vmlinux 0x75e6eba7 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x760dff95 i2c_master_send +EXPORT_SYMBOL vmlinux 0x761cbc88 sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x764bd77c request_resource +EXPORT_SYMBOL vmlinux 0x765ff474 crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x76828ff3 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0x7692697f phy_device_register +EXPORT_SYMBOL vmlinux 0x769e06d7 smp_call_function_many +EXPORT_SYMBOL vmlinux 0x76adefb5 elevator_change +EXPORT_SYMBOL vmlinux 0x76bf656d __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x76bf9a9f seq_write +EXPORT_SYMBOL vmlinux 0x76c87b6f netdev_notice +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76d8157d scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x76ed0922 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x76fa47ce mutex_lock_killable +EXPORT_SYMBOL vmlinux 0x77000d62 loop_backing_file +EXPORT_SYMBOL vmlinux 0x7702a07c kmalloc_caches +EXPORT_SYMBOL vmlinux 0x771bfe83 key_invalidate +EXPORT_SYMBOL vmlinux 0x771cf835 dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x772cc1d7 get_io_context +EXPORT_SYMBOL vmlinux 0x773a9c94 blk_iopoll_enabled +EXPORT_SYMBOL vmlinux 0x773fa409 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x77add1d0 devm_ioremap +EXPORT_SYMBOL vmlinux 0x77b2f8c5 machine_id +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77cd4d17 lock_may_write +EXPORT_SYMBOL vmlinux 0x77d0a853 framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x77df0847 __set_personality +EXPORT_SYMBOL vmlinux 0x77ecac9f zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x77fd219e set_device_ro +EXPORT_SYMBOL vmlinux 0x7809dde1 follow_pfn +EXPORT_SYMBOL vmlinux 0x781a49be xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0x781ed49b mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0x7824de27 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x783b3563 wake_up_atomic_t +EXPORT_SYMBOL vmlinux 0x783ed93a generic_listxattr +EXPORT_SYMBOL vmlinux 0x7845fd85 scsi_register +EXPORT_SYMBOL vmlinux 0x7846af3e __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x78824b06 alloc_disk +EXPORT_SYMBOL vmlinux 0x7886200a blk_end_request_cur +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78bba2e3 tcp_recvmsg +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78dfdd9f pme_hw_residue_free +EXPORT_SYMBOL vmlinux 0x78e8761d set_bh_page +EXPORT_SYMBOL vmlinux 0x78fd36e7 ipmi_request_supply_msgs +EXPORT_SYMBOL vmlinux 0x790df6ca __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x7930d225 of_device_is_compatible +EXPORT_SYMBOL vmlinux 0x793f519d security_path_mknod +EXPORT_SYMBOL vmlinux 0x794c9cfa dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x796fc5ce scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0x7974c1a3 devm_clk_get +EXPORT_SYMBOL vmlinux 0x797c8fa9 cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x797f4f87 scsi_calculate_bounce_limit +EXPORT_SYMBOL vmlinux 0x7984eefc key_update +EXPORT_SYMBOL vmlinux 0x79a54617 block_commit_write +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79c00c06 pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0x79c7c799 twl6040_get_pll +EXPORT_SYMBOL vmlinux 0x79e550ff pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0x79e6a57a new_inode +EXPORT_SYMBOL vmlinux 0x7a188791 prandom_bytes +EXPORT_SYMBOL vmlinux 0x7a2251b4 blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0x7a25a3f5 prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x7a27c184 ewma_init +EXPORT_SYMBOL vmlinux 0x7a40aaa0 dm_put_device +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a56c33f sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x7a7bbd23 md_check_recovery +EXPORT_SYMBOL vmlinux 0x7a7fb031 __skb_tx_hash +EXPORT_SYMBOL vmlinux 0x7a880867 blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0x7a91726b clkdev_alloc +EXPORT_SYMBOL vmlinux 0x7a925833 cpufreq_get_global_kobject +EXPORT_SYMBOL vmlinux 0x7ab23b92 swiotlb_dma_supported +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7ac8811a insert_inode_locked +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7add44b5 posix_acl_valid +EXPORT_SYMBOL vmlinux 0x7aef8059 nf_unregister_hooks +EXPORT_SYMBOL vmlinux 0x7af226ae netdev_emerg +EXPORT_SYMBOL vmlinux 0x7afdf71b pci_pme_active +EXPORT_SYMBOL vmlinux 0x7b16235f hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x7b1f00d1 dquot_alloc +EXPORT_SYMBOL vmlinux 0x7b21281e __scsi_add_device +EXPORT_SYMBOL vmlinux 0x7b2aef6c __krealloc +EXPORT_SYMBOL vmlinux 0x7b4cad8b pneigh_lookup +EXPORT_SYMBOL vmlinux 0x7b539cdc thaw_super +EXPORT_SYMBOL vmlinux 0x7b5a3335 jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x7b6610c9 iterate_supers_type +EXPORT_SYMBOL vmlinux 0x7b6aa288 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0x7ba036aa phy_detach +EXPORT_SYMBOL vmlinux 0x7bab2da0 poll_initwait +EXPORT_SYMBOL vmlinux 0x7bae5438 __pci_enable_wake +EXPORT_SYMBOL vmlinux 0x7bc665c3 tcf_hash_search +EXPORT_SYMBOL vmlinux 0x7beb68be skb_queue_head +EXPORT_SYMBOL vmlinux 0x7bf1c9fe __blk_end_request_cur +EXPORT_SYMBOL vmlinux 0x7c003aef _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0x7c1372e8 panic +EXPORT_SYMBOL vmlinux 0x7c160487 vfs_readv +EXPORT_SYMBOL vmlinux 0x7c1dcff9 writeback_in_progress +EXPORT_SYMBOL vmlinux 0x7c2d098f krealloc +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c482a8c skb_trim +EXPORT_SYMBOL vmlinux 0x7c61340c __release_region +EXPORT_SYMBOL vmlinux 0x7c6842f0 kmem_cache_free +EXPORT_SYMBOL vmlinux 0x7c6d7fed register_sysctl +EXPORT_SYMBOL vmlinux 0x7c7b1d82 of_device_unregister +EXPORT_SYMBOL vmlinux 0x7c9291d1 csum_partial_copy_generic +EXPORT_SYMBOL vmlinux 0x7c98845d twl_i2c_read +EXPORT_SYMBOL vmlinux 0x7c9ac32e __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0x7cab6d44 blk_start_queue +EXPORT_SYMBOL vmlinux 0x7cc52eb2 kill_block_super +EXPORT_SYMBOL vmlinux 0x7cc578da param_get_long +EXPORT_SYMBOL vmlinux 0x7cc586fb __serio_register_driver +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7ce968dd replace_mount_options +EXPORT_SYMBOL vmlinux 0x7ceb9742 pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0x7cf3a16b put_cmsg +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d11c268 jiffies +EXPORT_SYMBOL vmlinux 0x7d1ee074 dma_iommu_ops +EXPORT_SYMBOL vmlinux 0x7d29419d blk_mq_free_single_hw_queue +EXPORT_SYMBOL vmlinux 0x7d4303ca release_pages +EXPORT_SYMBOL vmlinux 0x7d4a3984 try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x7d5b60a9 udp_poll +EXPORT_SYMBOL vmlinux 0x7d97090d tcp_prequeue +EXPORT_SYMBOL vmlinux 0x7da9d254 dquot_release +EXPORT_SYMBOL vmlinux 0x7daa95dd jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0x7dadc8bc sync_blockdev +EXPORT_SYMBOL vmlinux 0x7dbdfc93 input_unregister_handler +EXPORT_SYMBOL vmlinux 0x7dc0e109 idr_get_next +EXPORT_SYMBOL vmlinux 0x7dcc4e49 qman_query_fq_np +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7e0d6caa pme_ctx_finish +EXPORT_SYMBOL vmlinux 0x7e129710 i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0x7e1d029b dquot_get_dqinfo +EXPORT_SYMBOL vmlinux 0x7e394c4e sysctl_local_reserved_ports +EXPORT_SYMBOL vmlinux 0x7e49f281 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0x7e4a3a79 tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0x7e637c10 mdiobus_write +EXPORT_SYMBOL vmlinux 0x7e87227e slhc_compress +EXPORT_SYMBOL vmlinux 0x7eb1ca65 tcp_parse_options +EXPORT_SYMBOL vmlinux 0x7ebbaa4d find_or_create_page +EXPORT_SYMBOL vmlinux 0x7ecb001b __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x7ecc726f put_tty_driver +EXPORT_SYMBOL vmlinux 0x7eceab51 unregister_key_type +EXPORT_SYMBOL vmlinux 0x7f09908b stop_tty +EXPORT_SYMBOL vmlinux 0x7f0b2960 qman_fqid_pool_create +EXPORT_SYMBOL vmlinux 0x7f116959 __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0x7f16cc92 get_disk +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f3537fd blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x7f3b1eea scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0x7f67a492 register_quota_format +EXPORT_SYMBOL vmlinux 0x7f6e2e1b kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0x7f7ddff7 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0x7f8ae5f6 pci_save_state +EXPORT_SYMBOL vmlinux 0x7f984449 serio_rescan +EXPORT_SYMBOL vmlinux 0x7f99831c splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fe38f48 sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x7fe7b462 __quota_error +EXPORT_SYMBOL vmlinux 0x7ff712c7 abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0x7ffc69d5 ioctl_by_bdev +EXPORT_SYMBOL vmlinux 0x802d0e93 crc32_le +EXPORT_SYMBOL vmlinux 0x803bf669 compat_ip_setsockopt +EXPORT_SYMBOL vmlinux 0x8044c89f inode_init_owner +EXPORT_SYMBOL vmlinux 0x804f922a ipmi_addr_length +EXPORT_SYMBOL vmlinux 0x80671e34 __put_cred +EXPORT_SYMBOL vmlinux 0x808603a8 sock_no_poll +EXPORT_SYMBOL vmlinux 0x8089f3bc scsi_prep_return +EXPORT_SYMBOL vmlinux 0x80913586 kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0x809b9cd6 simple_transaction_set +EXPORT_SYMBOL vmlinux 0x80a8397b tty_name +EXPORT_SYMBOL vmlinux 0x80ab3384 pci_get_device +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80f7e03b __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x80f8ee59 frontswap_register_ops +EXPORT_SYMBOL vmlinux 0x8117f3f3 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0x811d76db scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x81261c81 elv_add_request +EXPORT_SYMBOL vmlinux 0x812a634d sk_wait_data +EXPORT_SYMBOL vmlinux 0x814e7730 nf_ct_destroy +EXPORT_SYMBOL vmlinux 0x814ff307 xfrm_init_replay +EXPORT_SYMBOL vmlinux 0x8151d391 try_module_get +EXPORT_SYMBOL vmlinux 0x8152b2aa of_node_put +EXPORT_SYMBOL vmlinux 0x81533963 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x815c56d0 cpu_present_mask +EXPORT_SYMBOL vmlinux 0x81655238 __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0x8191eb53 sk_release_kernel +EXPORT_SYMBOL vmlinux 0x81961a2a seq_pad +EXPORT_SYMBOL vmlinux 0x81a07f4e _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0x81bee8e9 irq_to_desc +EXPORT_SYMBOL vmlinux 0x81d5fde9 remap_pfn_range +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81de4f37 dquot_commit_info +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x82317bfd fb_set_var +EXPORT_SYMBOL vmlinux 0x823779ae compat_ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x8251bcc3 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x82547779 block_write_begin +EXPORT_SYMBOL vmlinux 0x8260686f bitmap_find_next_zero_area +EXPORT_SYMBOL vmlinux 0x8276ca78 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x82830fa1 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0x82aaa4b4 fifo_set_limit +EXPORT_SYMBOL vmlinux 0x82acfb70 blk_iopoll_sched +EXPORT_SYMBOL vmlinux 0x82e5a238 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x82fb1d2a load_nls_default +EXPORT_SYMBOL vmlinux 0x82fd1827 __pagevec_release +EXPORT_SYMBOL vmlinux 0x82ff588a page_put_link +EXPORT_SYMBOL vmlinux 0x83011d49 arp_find +EXPORT_SYMBOL vmlinux 0x8312bea3 sys_copyarea +EXPORT_SYMBOL vmlinux 0x831ffc87 local_flush_tlb_mm +EXPORT_SYMBOL vmlinux 0x832293e4 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0x832d9557 buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0x8366d486 __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0x83725f54 pci_choose_state +EXPORT_SYMBOL vmlinux 0x837fbae0 compat_ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x8385b5d0 of_platform_device_create +EXPORT_SYMBOL vmlinux 0x839b602a uart_get_divisor +EXPORT_SYMBOL vmlinux 0x83a24d8d mmc_flush_cache +EXPORT_SYMBOL vmlinux 0x83a476ce bitmap_scnlistprintf +EXPORT_SYMBOL vmlinux 0x83b27fdf d_make_root +EXPORT_SYMBOL vmlinux 0x83b30051 mmc_read_bkops_status +EXPORT_SYMBOL vmlinux 0x83b83453 sk_filter +EXPORT_SYMBOL vmlinux 0x83d8a937 qman_fqid_pool_used +EXPORT_SYMBOL vmlinux 0x8418674d scsi_block_requests +EXPORT_SYMBOL vmlinux 0x841962f8 param_get_ushort +EXPORT_SYMBOL vmlinux 0x844b0c27 sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x84532c13 inet_add_offload +EXPORT_SYMBOL vmlinux 0x8468a190 blk_get_request +EXPORT_SYMBOL vmlinux 0x84746823 init_task +EXPORT_SYMBOL vmlinux 0x8475f02d sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0x8490ac30 ndo_dflt_bridge_getlink +EXPORT_SYMBOL vmlinux 0x849fe807 csum_and_copy_from_user +EXPORT_SYMBOL vmlinux 0x84bd69bf dq_data_lock +EXPORT_SYMBOL vmlinux 0x84c522fe __dev_get_by_index +EXPORT_SYMBOL vmlinux 0x84c79e96 tty_hangup +EXPORT_SYMBOL vmlinux 0x84cf35f3 aio_complete +EXPORT_SYMBOL vmlinux 0x84f1765c kdb_current_task +EXPORT_SYMBOL vmlinux 0x84f4e7ce inode_reclaim_rsv_space +EXPORT_SYMBOL vmlinux 0x84fdd890 netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0x84ffea8b idr_preload +EXPORT_SYMBOL vmlinux 0x8509c540 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0x8518eca9 param_get_short +EXPORT_SYMBOL vmlinux 0x85215809 notify_change +EXPORT_SYMBOL vmlinux 0x853be04e audit_log_task_info +EXPORT_SYMBOL vmlinux 0x853bf7c1 param_set_int +EXPORT_SYMBOL vmlinux 0x8546235f xfrm_register_km +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x85783850 __nlmsg_put +EXPORT_SYMBOL vmlinux 0x857edc03 kmem_cache_create +EXPORT_SYMBOL vmlinux 0x8591b45f scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x85aa530f arp_invalidate +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85fee27e clear_nlink +EXPORT_SYMBOL vmlinux 0x863213e2 agp_bridge +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x8664f62e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0x86712e67 PDE_DATA +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x869ff061 phy_stop_interrupts +EXPORT_SYMBOL vmlinux 0x86c34b6f ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x86dc59ea dmam_free_noncoherent +EXPORT_SYMBOL vmlinux 0x86e0e688 register_gifconf +EXPORT_SYMBOL vmlinux 0x86f372da sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x870bf928 radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x87132687 nf_getsockopt +EXPORT_SYMBOL vmlinux 0x871c0a7e fiemap_check_flags +EXPORT_SYMBOL vmlinux 0x87236b53 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0x8725b0d4 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0x873a53ea __arch_hweight8 +EXPORT_SYMBOL vmlinux 0x873bfb31 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0x874b7b55 max8925_reg_write +EXPORT_SYMBOL vmlinux 0x874eb042 icmp_send +EXPORT_SYMBOL vmlinux 0x876decee __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x8779a34f param_ops_byte +EXPORT_SYMBOL vmlinux 0x878ab3ce sysctl_tcp_adv_win_scale +EXPORT_SYMBOL vmlinux 0x87a2b426 ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x880a5ea2 skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x880e5e9c dev_set_mtu +EXPORT_SYMBOL vmlinux 0x880f6c64 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0x881039d0 zlib_inflate +EXPORT_SYMBOL vmlinux 0x8819036d of_phy_connect_fixed_link +EXPORT_SYMBOL vmlinux 0x8834396c mod_timer +EXPORT_SYMBOL vmlinux 0x8843c193 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x88513970 param_set_byte +EXPORT_SYMBOL vmlinux 0x8858a9bb pci_enable_msi_block_auto +EXPORT_SYMBOL vmlinux 0x885c9a69 mount_bdev +EXPORT_SYMBOL vmlinux 0x885fd270 poll_freewait +EXPORT_SYMBOL vmlinux 0x88612bdb blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0x887e779a __alloc_skb +EXPORT_SYMBOL vmlinux 0x888450a7 inode_set_bytes +EXPORT_SYMBOL vmlinux 0x88ad1401 __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0x891fbb10 mempool_destroy +EXPORT_SYMBOL vmlinux 0x8922488e dcb_setapp +EXPORT_SYMBOL vmlinux 0x89443153 alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x895108f3 proc_dostring +EXPORT_SYMBOL vmlinux 0x897473df mktime +EXPORT_SYMBOL vmlinux 0x897684ac clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x89797060 _raw_read_lock +EXPORT_SYMBOL vmlinux 0x897f061d downgrade_write +EXPORT_SYMBOL vmlinux 0x89afe34e __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0x89cef098 dentry_open +EXPORT_SYMBOL vmlinux 0x89d5538d fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x89e4514b scsi_free_command +EXPORT_SYMBOL vmlinux 0x89fbd86d __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0x8a00dbcd rt6_lookup +EXPORT_SYMBOL vmlinux 0x8a19c043 dev_uc_flush +EXPORT_SYMBOL vmlinux 0x8a1ab4ee timeval_to_jiffies +EXPORT_SYMBOL vmlinux 0x8a1e356f vm_iomap_memory +EXPORT_SYMBOL vmlinux 0x8a2fb922 kobject_init +EXPORT_SYMBOL vmlinux 0x8a4468ae swiotlb_map_sg_attrs +EXPORT_SYMBOL vmlinux 0x8a4503f2 d_add_ci +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a51d565 quota_send_warning +EXPORT_SYMBOL vmlinux 0x8a5493bb qman_recovery_cleanup_fq +EXPORT_SYMBOL vmlinux 0x8a6af65c kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x8a7527e1 bm_pool_new +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a876f54 ida_init +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8ae4c3c1 tcf_hash_new_index +EXPORT_SYMBOL vmlinux 0x8b02c24c call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0x8b032f78 skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0x8b19506f dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0x8b1a7a66 pcie_aspm_enabled +EXPORT_SYMBOL vmlinux 0x8b35e873 sg_last +EXPORT_SYMBOL vmlinux 0x8b3dae76 splice_from_pipe_end +EXPORT_SYMBOL vmlinux 0x8b4453bc n_tty_compat_ioctl_helper +EXPORT_SYMBOL vmlinux 0x8b55cac7 kobject_put +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8ba21106 rfkill_alloc +EXPORT_SYMBOL vmlinux 0x8baf3116 percpu_counter_set +EXPORT_SYMBOL vmlinux 0x8bdc2cb7 qman_query_cgr +EXPORT_SYMBOL vmlinux 0x8bf2ae1f fsl_lbc_addr +EXPORT_SYMBOL vmlinux 0x8c183cbe iowrite16 +EXPORT_SYMBOL vmlinux 0x8c2f8201 put_io_context +EXPORT_SYMBOL vmlinux 0x8c311065 security_path_mkdir +EXPORT_SYMBOL vmlinux 0x8c3665c3 pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0x8c59d5e7 pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0x8c637d43 irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x8c638e9b pcim_iounmap +EXPORT_SYMBOL vmlinux 0x8c6bb84b tcf_exts_dump +EXPORT_SYMBOL vmlinux 0x8c7a1ea6 alloc_fddidev +EXPORT_SYMBOL vmlinux 0x8c8ba7d2 __memcg_kmem_get_cache +EXPORT_SYMBOL vmlinux 0x8c8ee770 ipmi_destroy_user +EXPORT_SYMBOL vmlinux 0x8c904c52 skb_free_datagram +EXPORT_SYMBOL vmlinux 0x8cc413d1 done_path_create +EXPORT_SYMBOL vmlinux 0x8cc457f4 try_to_release_page +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8cdcd8d5 pci_disable_ido +EXPORT_SYMBOL vmlinux 0x8cf07dda sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x8cf0d65d udp_sendmsg +EXPORT_SYMBOL vmlinux 0x8d015dd4 __bswapdi2 +EXPORT_SYMBOL vmlinux 0x8d20bd38 writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x8d2e268b param_ops_ulong +EXPORT_SYMBOL vmlinux 0x8d521ebd blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0x8d551bef sysctl_tcp_rmem +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d57173a bprm_change_interp +EXPORT_SYMBOL vmlinux 0x8d59d61b blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x8d5bdbd1 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d7a3f62 get_user_pages +EXPORT_SYMBOL vmlinux 0x8d944cbb copy_in_user +EXPORT_SYMBOL vmlinux 0x8d975fed fsnotify_init_mark +EXPORT_SYMBOL vmlinux 0x8da179b5 inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x8dab405a mach_qemu_e500 +EXPORT_SYMBOL vmlinux 0x8db791d6 genl_unregister_family +EXPORT_SYMBOL vmlinux 0x8de0b5ac mempool_create +EXPORT_SYMBOL vmlinux 0x8de2cd6f bman_irqsource_get +EXPORT_SYMBOL vmlinux 0x8df22837 inet_ioctl +EXPORT_SYMBOL vmlinux 0x8df92f66 memchr_inv +EXPORT_SYMBOL vmlinux 0x8e2c1fbe xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0x8e332829 flush_delayed_work +EXPORT_SYMBOL vmlinux 0x8e462a7e pci_bus_type +EXPORT_SYMBOL vmlinux 0x8e46664b sg_miter_stop +EXPORT_SYMBOL vmlinux 0x8e7c3204 splice_from_pipe_feed +EXPORT_SYMBOL vmlinux 0x8e864a86 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x8e888ec3 cpumask_next_and +EXPORT_SYMBOL vmlinux 0x8e8d58da diu_ops +EXPORT_SYMBOL vmlinux 0x8e926519 fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0x8e9343b6 mmc_power_restore_host +EXPORT_SYMBOL vmlinux 0x8ea578d7 elv_rb_add +EXPORT_SYMBOL vmlinux 0x8ebefc56 __remove_inode_hash +EXPORT_SYMBOL vmlinux 0x8ec04552 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0x8ed38ba1 fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0x8ee7f6bb mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x8efadab1 __inode_permission +EXPORT_SYMBOL vmlinux 0x8f034850 mmc_of_parse +EXPORT_SYMBOL vmlinux 0x8f0d6fe1 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0x8f3aab5a dev_set_group +EXPORT_SYMBOL vmlinux 0x8f3ed651 eth_header_cache +EXPORT_SYMBOL vmlinux 0x8f821a1d dev_activate +EXPORT_SYMBOL vmlinux 0x8f85f835 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x8f8f8e95 ipmi_smi_watcher_register +EXPORT_SYMBOL vmlinux 0x8f963c5c mmc_gpio_request_ro +EXPORT_SYMBOL vmlinux 0x8fa55695 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0x8faa4598 of_translate_address +EXPORT_SYMBOL vmlinux 0x8fab2d27 cdrom_release +EXPORT_SYMBOL vmlinux 0x8fb19e72 tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0x8fba78d9 scsi_execute +EXPORT_SYMBOL vmlinux 0x8fd85f08 pcibios_fixup_bus +EXPORT_SYMBOL vmlinux 0x8fdb27f9 scsi_cmd_get_serial +EXPORT_SYMBOL vmlinux 0x9003a5fc tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x904f4892 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0x90763533 input_allocate_device +EXPORT_SYMBOL vmlinux 0x907688c3 ip_fragment +EXPORT_SYMBOL vmlinux 0x908b53ed param_set_short +EXPORT_SYMBOL vmlinux 0x90a2ca85 nla_reserve +EXPORT_SYMBOL vmlinux 0x90ac1d63 bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x90b8f7e8 __skb_dst_set_noref +EXPORT_SYMBOL vmlinux 0x90c720d1 input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0x90d2900a tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0x90e146c2 trace_seq_putc +EXPORT_SYMBOL vmlinux 0x90e3a328 bio_split +EXPORT_SYMBOL vmlinux 0x90e54e85 twl6040_reg_write +EXPORT_SYMBOL vmlinux 0x910661eb unregister_nls +EXPORT_SYMBOL vmlinux 0x910d2147 vm_insert_mixed +EXPORT_SYMBOL vmlinux 0x9118b4b1 jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0x912cac70 proto_register +EXPORT_SYMBOL vmlinux 0x91463b1d kstrtos16 +EXPORT_SYMBOL vmlinux 0x915e1208 tb_ticks_per_usec +EXPORT_SYMBOL vmlinux 0x9166fada strncpy +EXPORT_SYMBOL vmlinux 0x91715312 sprintf +EXPORT_SYMBOL vmlinux 0x919d1163 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x91ac822f vscnprintf +EXPORT_SYMBOL vmlinux 0x91b144d6 cont_write_begin +EXPORT_SYMBOL vmlinux 0x91bead1d pci_iomap +EXPORT_SYMBOL vmlinux 0x91d9e93e key_unlink +EXPORT_SYMBOL vmlinux 0x9214f3c1 get_fs_type +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x924f56ad devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x925520d2 blk_start_plug +EXPORT_SYMBOL vmlinux 0x926a7229 neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0x926f8625 km_policy_expired +EXPORT_SYMBOL vmlinux 0x9270bfca skb_pad +EXPORT_SYMBOL vmlinux 0x9284fd57 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x9291cd3b memdup_user +EXPORT_SYMBOL vmlinux 0x92a7e6c5 bman_new_pool +EXPORT_SYMBOL vmlinux 0x92a9c60c time_to_tm +EXPORT_SYMBOL vmlinux 0x92ba0355 tty_unlock +EXPORT_SYMBOL vmlinux 0x92bc220b lockref_get +EXPORT_SYMBOL vmlinux 0x92c66fa7 bdi_unregister +EXPORT_SYMBOL vmlinux 0x92d050df iov_pages +EXPORT_SYMBOL vmlinux 0x92eebc0c tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x932f15ef inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x93340831 tty_throttle +EXPORT_SYMBOL vmlinux 0x933e10ec qman_ip_rev +EXPORT_SYMBOL vmlinux 0x93448c57 screen_info +EXPORT_SYMBOL vmlinux 0x93482445 simple_getattr +EXPORT_SYMBOL vmlinux 0x934aaa31 pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0x9352ef1a __vlan_find_dev_deep +EXPORT_SYMBOL vmlinux 0x936e4498 may_umount +EXPORT_SYMBOL vmlinux 0x936e6111 proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x937b8e0d inet_sendpage +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93a8d611 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0x93b1edae blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93c6ee48 pagecache_write_end +EXPORT_SYMBOL vmlinux 0x93fca811 __get_free_pages +EXPORT_SYMBOL vmlinux 0x942870fb key_validate +EXPORT_SYMBOL vmlinux 0x943a9b78 fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0x943dc80f csum_and_copy_to_user +EXPORT_SYMBOL vmlinux 0x94500d73 netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0x945d99bc swiotlb_free_coherent +EXPORT_SYMBOL vmlinux 0x94631b98 qman_irqsource_get +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x94a5dbdd posix_test_lock +EXPORT_SYMBOL vmlinux 0x94b541b5 cpu_active_mask +EXPORT_SYMBOL vmlinux 0x94d78b7c qman_create_cgr +EXPORT_SYMBOL vmlinux 0x94f85a16 ip6_xmit +EXPORT_SYMBOL vmlinux 0x9508f166 param_ops_bint +EXPORT_SYMBOL vmlinux 0x950e3037 blk_get_queue +EXPORT_SYMBOL vmlinux 0x9514151a _mcount +EXPORT_SYMBOL vmlinux 0x952485b1 pme_fd_cmd_nop +EXPORT_SYMBOL vmlinux 0x9524b0ae _outsb +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x955a7959 posix_unblock_lock +EXPORT_SYMBOL vmlinux 0x95a595b0 i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0x95ab2699 kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0x95b43d0f kthread_stop +EXPORT_SYMBOL vmlinux 0x95cb929c of_find_all_nodes +EXPORT_SYMBOL vmlinux 0x95e5af6e thermal_cdev_update +EXPORT_SYMBOL vmlinux 0x95feb1dc ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x969e4711 sk_prot_clear_portaddr_nulls +EXPORT_SYMBOL vmlinux 0x96a4da64 get_gendisk +EXPORT_SYMBOL vmlinux 0x96b29254 strncasecmp +EXPORT_SYMBOL vmlinux 0x96b4c780 mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0x96c615d0 scsi_print_result +EXPORT_SYMBOL vmlinux 0x96cbcc81 ipmi_get_version +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96d29c69 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x96e48870 sget +EXPORT_SYMBOL vmlinux 0x96f8a4d9 inet6_bind +EXPORT_SYMBOL vmlinux 0x9703b0c8 scsi_allocate_command +EXPORT_SYMBOL vmlinux 0x971e4bab pci_unmap_rom +EXPORT_SYMBOL vmlinux 0x972c3494 blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0x97355f4e fs_bio_set +EXPORT_SYMBOL vmlinux 0x973da904 dma_common_mmap +EXPORT_SYMBOL vmlinux 0x9748927f _outsw_ns +EXPORT_SYMBOL vmlinux 0x974a1e9f blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0x9754ec10 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x97868aef __kfifo_alloc +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x97a60e3d param_get_bool +EXPORT_SYMBOL vmlinux 0x97a87c16 inet_frags_init_net +EXPORT_SYMBOL vmlinux 0x97c0ea84 pci_release_region +EXPORT_SYMBOL vmlinux 0x97d91aff inode_get_bytes +EXPORT_SYMBOL vmlinux 0x97dcbcd0 register_md_personality +EXPORT_SYMBOL vmlinux 0x98162556 agp_backend_release +EXPORT_SYMBOL vmlinux 0x98163d49 tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x981661a0 __idr_get_new_above +EXPORT_SYMBOL vmlinux 0x981ca480 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0x98245401 i2c_clients_command +EXPORT_SYMBOL vmlinux 0x9829fc11 __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0x982ed156 proc_remove +EXPORT_SYMBOL vmlinux 0x98668903 pme_sw_flow_init +EXPORT_SYMBOL vmlinux 0x986bff85 do_splice_from +EXPORT_SYMBOL vmlinux 0x986e6135 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x987fbac6 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x98a0f5a8 pme_ctx_ctrl_nop +EXPORT_SYMBOL vmlinux 0x98a1387d vfs_read +EXPORT_SYMBOL vmlinux 0x98bd12b8 dev_mc_flush +EXPORT_SYMBOL vmlinux 0x98bffff4 fb_pan_display +EXPORT_SYMBOL vmlinux 0x98cf60b3 strlen +EXPORT_SYMBOL vmlinux 0x98d66824 elv_rb_former_request +EXPORT_SYMBOL vmlinux 0x98e2a489 ipmi_smi_watcher_unregister +EXPORT_SYMBOL vmlinux 0x98e445da register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x98f1182b sg_miter_start +EXPORT_SYMBOL vmlinux 0x98f1d019 ps2_begin_command +EXPORT_SYMBOL vmlinux 0x98fa21b0 mod_timer_pinned +EXPORT_SYMBOL vmlinux 0x990df0b9 dev_printk +EXPORT_SYMBOL vmlinux 0x99195078 vsnprintf +EXPORT_SYMBOL vmlinux 0x991c50fb should_remove_suid +EXPORT_SYMBOL vmlinux 0x99286fcc blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0x9936e725 scm_fp_dup +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x99591a7a ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x996dfd0c flush_dcache_page +EXPORT_SYMBOL vmlinux 0x9971b866 twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0x9994c0ca ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99afe916 _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x99b2c558 of_dev_put +EXPORT_SYMBOL vmlinux 0x99cdc86b sysctl_tcp_reordering +EXPORT_SYMBOL vmlinux 0x99d3a43c dm_table_get_size +EXPORT_SYMBOL vmlinux 0x99df023a send_sig_info +EXPORT_SYMBOL vmlinux 0x9a09f1e5 elv_register_queue +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a1fc4b4 jiffies_to_timeval +EXPORT_SYMBOL vmlinux 0x9a2dc53b dma_async_device_register +EXPORT_SYMBOL vmlinux 0x9a40f93b sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x9a481023 __sb_start_write +EXPORT_SYMBOL vmlinux 0x9a48d251 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0x9a51cf3a kthread_create_on_node +EXPORT_SYMBOL vmlinux 0x9a5ffc64 __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x9a626734 ftrace_print_hex_seq +EXPORT_SYMBOL vmlinux 0x9aaf240b netdev_lower_dev_get_private_rcu +EXPORT_SYMBOL vmlinux 0x9ab930cf mutex_trylock +EXPORT_SYMBOL vmlinux 0x9ac1417d scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x9ac40397 register_netdevice +EXPORT_SYMBOL vmlinux 0x9ad0bf36 scsi_init_io +EXPORT_SYMBOL vmlinux 0x9ae78438 clear_inode +EXPORT_SYMBOL vmlinux 0x9af89f98 memcpy_fromiovec +EXPORT_SYMBOL vmlinux 0x9b0ae724 abort_creds +EXPORT_SYMBOL vmlinux 0x9b0b9d8c from_kgid_munged +EXPORT_SYMBOL vmlinux 0x9b0ccfd3 generic_file_buffered_write +EXPORT_SYMBOL vmlinux 0x9b13b320 udp_lib_rehash +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b3808d9 uart_resume_port +EXPORT_SYMBOL vmlinux 0x9b388444 get_zeroed_page +EXPORT_SYMBOL vmlinux 0x9b45fb3d netif_rx_ni +EXPORT_SYMBOL vmlinux 0x9b555461 sys_imageblit +EXPORT_SYMBOL vmlinux 0x9b6c5821 __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x9b6ee420 generic_read_dir +EXPORT_SYMBOL vmlinux 0x9b6f1468 pme_ctx_scan_orp +EXPORT_SYMBOL vmlinux 0x9b79dee5 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x9b94ae81 bio_put +EXPORT_SYMBOL vmlinux 0x9b99c154 ll_rw_block +EXPORT_SYMBOL vmlinux 0x9b9e05f9 alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0x9ba7089d argv_split +EXPORT_SYMBOL vmlinux 0x9bb1b859 security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x9bc0e1ab pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0x9be7bde4 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x9bebf9d6 grab_cache_page_nowait +EXPORT_SYMBOL vmlinux 0x9c242d3b clocksource_unregister +EXPORT_SYMBOL vmlinux 0x9c2cfae2 generic_make_request +EXPORT_SYMBOL vmlinux 0x9c3f4fd5 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0x9c491f60 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x9c4def48 pme_fd_cmd_scan +EXPORT_SYMBOL vmlinux 0x9c682730 page_readlink +EXPORT_SYMBOL vmlinux 0x9c772a0c pci_release_regions +EXPORT_SYMBOL vmlinux 0x9c924b0f dev_crit +EXPORT_SYMBOL vmlinux 0x9c959f7a devm_request_and_ioremap +EXPORT_SYMBOL vmlinux 0x9ca243f2 inode_capable +EXPORT_SYMBOL vmlinux 0x9ca4b223 tcp_proto_cgroup +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9caeb0fd sock_edemux +EXPORT_SYMBOL vmlinux 0x9ccd1b37 sys_fillrect +EXPORT_SYMBOL vmlinux 0x9cce6903 lro_flush_pkt +EXPORT_SYMBOL vmlinux 0x9cce9ab5 pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0x9cef3cc5 __idr_remove_all +EXPORT_SYMBOL vmlinux 0x9cfd56c5 scsi_print_status +EXPORT_SYMBOL vmlinux 0x9d05f6c4 ktime_get_clocktai +EXPORT_SYMBOL vmlinux 0x9d0c8391 mmc_cache_ctrl +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d138257 netpoll_setup +EXPORT_SYMBOL vmlinux 0x9d14983a ppc_enable_pmcs +EXPORT_SYMBOL vmlinux 0x9d3aa376 blk_iopoll_init +EXPORT_SYMBOL vmlinux 0x9d72229b fsl_ifc_find +EXPORT_SYMBOL vmlinux 0x9d7ce8dd _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0x9d98c7d6 eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0x9dcdf743 input_register_device +EXPORT_SYMBOL vmlinux 0x9dd21cbc tty_set_operations +EXPORT_SYMBOL vmlinux 0x9dd26550 qman_schedule_fq +EXPORT_SYMBOL vmlinux 0x9dfc1edd bman_irqsource_add +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e2f8c90 lz4_decompress_unknownoutputsize +EXPORT_SYMBOL vmlinux 0x9e44b9b7 of_get_next_available_child +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e720dfc gen10g_config_aneg +EXPORT_SYMBOL vmlinux 0x9e90a50f agp_alloc_page_array +EXPORT_SYMBOL vmlinux 0x9e94db91 mem_cgroup_subsys +EXPORT_SYMBOL vmlinux 0x9e9f1714 __bitmap_andnot +EXPORT_SYMBOL vmlinux 0x9ea0ad49 __sg_free_table +EXPORT_SYMBOL vmlinux 0x9eaa0f38 tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0x9eb04e32 inet_put_port +EXPORT_SYMBOL vmlinux 0x9ebd4c04 adjust_resource +EXPORT_SYMBOL vmlinux 0x9ec4e53e dev_get_by_index +EXPORT_SYMBOL vmlinux 0x9ed2eec7 param_set_ushort +EXPORT_SYMBOL vmlinux 0x9ef819ac cfb_imageblit +EXPORT_SYMBOL vmlinux 0x9f002450 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0x9f11b30c max8998_bulk_read +EXPORT_SYMBOL vmlinux 0x9f1fc9c3 napi_gro_receive +EXPORT_SYMBOL vmlinux 0x9f2bdaac __bitmap_or +EXPORT_SYMBOL vmlinux 0x9f332ea5 inc_nlink +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f722343 generic_setlease +EXPORT_SYMBOL vmlinux 0x9f7aa21e kfree_skb +EXPORT_SYMBOL vmlinux 0x9f8ae165 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9f9a9bbf scsi_remove_host +EXPORT_SYMBOL vmlinux 0x9fb9ab00 pci_find_next_bus +EXPORT_SYMBOL vmlinux 0x9fbd945d d_alloc +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9fea0c36 tcp_seq_open +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa006d9cf unregister_quota_format +EXPORT_SYMBOL vmlinux 0xa0309d7a km_policy_notify +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa04a01bd qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xa05c03df mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xa07a37f0 memchr +EXPORT_SYMBOL vmlinux 0xa07ed110 xz_dec_init +EXPORT_SYMBOL vmlinux 0xa09f8be2 qman_affine_cpus +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0b2a0a5 dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0xa0bfe38e handle_edge_irq +EXPORT_SYMBOL vmlinux 0xa0ceef51 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0xa0cf1123 tcf_exts_change +EXPORT_SYMBOL vmlinux 0xa0cfcc31 security_d_instantiate +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa0fd1e43 phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0xa0ff74d6 udp_memory_allocated +EXPORT_SYMBOL vmlinux 0xa100536f agp_find_bridge +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa1415618 twl6030_interrupt_unmask +EXPORT_SYMBOL vmlinux 0xa14b5df9 simple_write_begin +EXPORT_SYMBOL vmlinux 0xa14f3d8c ewma_add +EXPORT_SYMBOL vmlinux 0xa153f5a8 key_payload_reserve +EXPORT_SYMBOL vmlinux 0xa162b3eb genphy_resume +EXPORT_SYMBOL vmlinux 0xa19a51bd neigh_destroy +EXPORT_SYMBOL vmlinux 0xa1a7f941 elevator_exit +EXPORT_SYMBOL vmlinux 0xa1b38c59 install_exec_creds +EXPORT_SYMBOL vmlinux 0xa1b759ce fb_add_videomode +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1c99385 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xa1f8fe75 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0xa2026975 kobject_set_name +EXPORT_SYMBOL vmlinux 0xa202a8e5 kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0xa2045a9a neigh_resolve_output +EXPORT_SYMBOL vmlinux 0xa20ce1b8 net_msg_warn +EXPORT_SYMBOL vmlinux 0xa211c1c9 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0xa249c0fd xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0xa255ad6e __sock_create +EXPORT_SYMBOL vmlinux 0xa2745ee5 elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0xa2848c50 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0xa28a2ace ipmi_set_gets_events +EXPORT_SYMBOL vmlinux 0xa2a75c69 dquot_destroy +EXPORT_SYMBOL vmlinux 0xa2a98b91 ipmi_get_maintenance_mode +EXPORT_SYMBOL vmlinux 0xa2bbed37 crash_shutdown_register +EXPORT_SYMBOL vmlinux 0xa2d40bb1 gen10g_resume +EXPORT_SYMBOL vmlinux 0xa2d56d2f bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0xa2d69839 compat_tcp_getsockopt +EXPORT_SYMBOL vmlinux 0xa2ef34d7 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xa303d1ff dm_ratelimit_state +EXPORT_SYMBOL vmlinux 0xa30e206a tty_unregister_device +EXPORT_SYMBOL vmlinux 0xa31318f1 pci_request_region +EXPORT_SYMBOL vmlinux 0xa332464a of_get_cpu_node +EXPORT_SYMBOL vmlinux 0xa35de80f ipv4_config +EXPORT_SYMBOL vmlinux 0xa3696793 neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0xa374e76d netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0xa381944f dql_reset +EXPORT_SYMBOL vmlinux 0xa39b4cf2 udelay +EXPORT_SYMBOL vmlinux 0xa3abc422 abort_exclusive_wait +EXPORT_SYMBOL vmlinux 0xa3b9e56d register_console +EXPORT_SYMBOL vmlinux 0xa3d79291 ip_route_me_harder +EXPORT_SYMBOL vmlinux 0xa3df8491 set_blocksize +EXPORT_SYMBOL vmlinux 0xa3e2d98f __starget_for_each_device +EXPORT_SYMBOL vmlinux 0xa3e75545 flush_tlb_kernel_range +EXPORT_SYMBOL vmlinux 0xa3ef49f7 genphy_suspend +EXPORT_SYMBOL vmlinux 0xa3f51dde skb_kill_datagram +EXPORT_SYMBOL vmlinux 0xa3faf77d blk_run_queue +EXPORT_SYMBOL vmlinux 0xa3fc3d50 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0xa400159f crc32_be +EXPORT_SYMBOL vmlinux 0xa41882ee brioctl_set +EXPORT_SYMBOL vmlinux 0xa4511467 crc16 +EXPORT_SYMBOL vmlinux 0xa452ee06 twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0xa4701e9e timekeeping_inject_offset +EXPORT_SYMBOL vmlinux 0xa4a2e4ee netlink_set_err +EXPORT_SYMBOL vmlinux 0xa4a94d26 find_next_bit_le +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa4bdd447 __cputime_clockt_factor +EXPORT_SYMBOL vmlinux 0xa4ca5db7 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0xa4d4f0e6 global_cache_flush +EXPORT_SYMBOL vmlinux 0xa4ed8f3a inet_del_offload +EXPORT_SYMBOL vmlinux 0xa4fce3fb neigh_parms_release +EXPORT_SYMBOL vmlinux 0xa50a111e inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0xa519a392 agp_generic_insert_memory +EXPORT_SYMBOL vmlinux 0xa520f831 jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0xa5254af1 sk_alloc +EXPORT_SYMBOL vmlinux 0xa52999bc scsi_device_put +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa55c6830 register_sysctl_table +EXPORT_SYMBOL vmlinux 0xa55ea44b inet_release +EXPORT_SYMBOL vmlinux 0xa56084d6 vc_cons +EXPORT_SYMBOL vmlinux 0xa5611c67 __getblk +EXPORT_SYMBOL vmlinux 0xa5964b25 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0xa598e29c vesa_modes +EXPORT_SYMBOL vmlinux 0xa5a36c4d mount_subtree +EXPORT_SYMBOL vmlinux 0xa5a74aa4 neigh_table_init +EXPORT_SYMBOL vmlinux 0xa5b2c668 __blk_end_request_all +EXPORT_SYMBOL vmlinux 0xa5b3b138 dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0xa5bc8447 uart_update_timeout +EXPORT_SYMBOL vmlinux 0xa5e76da2 remove_proc_entry +EXPORT_SYMBOL vmlinux 0xa616c20a lock_rename +EXPORT_SYMBOL vmlinux 0xa63837e8 page_symlink +EXPORT_SYMBOL vmlinux 0xa63a2f9b param_get_ulong +EXPORT_SYMBOL vmlinux 0xa65972b8 _memcpy_toio +EXPORT_SYMBOL vmlinux 0xa6715115 do_settimeofday +EXPORT_SYMBOL vmlinux 0xa675804c utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa69f9001 kernel_write +EXPORT_SYMBOL vmlinux 0xa6af1a94 pme2_exclusive_unset +EXPORT_SYMBOL vmlinux 0xa6b285b4 km_query +EXPORT_SYMBOL vmlinux 0xa6b47536 mmc_gpio_free_ro +EXPORT_SYMBOL vmlinux 0xa6caef26 rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0xa6d65395 compat_nf_setsockopt +EXPORT_SYMBOL vmlinux 0xa6e54d45 xfrm_init_state +EXPORT_SYMBOL vmlinux 0xa7000999 follow_down +EXPORT_SYMBOL vmlinux 0xa715574a netif_carrier_on +EXPORT_SYMBOL vmlinux 0xa71e7463 __first_cpu +EXPORT_SYMBOL vmlinux 0xa720678c lg_global_lock +EXPORT_SYMBOL vmlinux 0xa735db59 prandom_u32 +EXPORT_SYMBOL vmlinux 0xa73fc98f of_n_addr_cells +EXPORT_SYMBOL vmlinux 0xa758098c of_gpio_simple_xlate +EXPORT_SYMBOL vmlinux 0xa75af603 load_nls +EXPORT_SYMBOL vmlinux 0xa760a2a7 jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0xa766bce3 add_disk +EXPORT_SYMBOL vmlinux 0xa786e792 compat_sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0xa78d9eb7 slhc_uncompress +EXPORT_SYMBOL vmlinux 0xa79513fe inode_needs_sync +EXPORT_SYMBOL vmlinux 0xa7988469 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xa79e37c8 iterate_dir +EXPORT_SYMBOL vmlinux 0xa7a95489 pci_read_vpd +EXPORT_SYMBOL vmlinux 0xa7a9cdc1 serio_unregister_driver +EXPORT_SYMBOL vmlinux 0xa7c79e3e security_dentry_init_security +EXPORT_SYMBOL vmlinux 0xa7e1e709 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0xa7e8d7ab bio_integrity_advance +EXPORT_SYMBOL vmlinux 0xa7edbb47 pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0xa80219b6 kobject_add +EXPORT_SYMBOL vmlinux 0xa8037434 pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0xa8172592 request_key_async_with_auxdata +EXPORT_SYMBOL vmlinux 0xa8232c78 strtobool +EXPORT_SYMBOL vmlinux 0xa83f1f3e eth_mac_addr +EXPORT_SYMBOL vmlinux 0xa8405b24 shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa84482be blk_mq_free_queue +EXPORT_SYMBOL vmlinux 0xa8454f1b ip_getsockopt +EXPORT_SYMBOL vmlinux 0xa84c2872 submit_bio_wait +EXPORT_SYMBOL vmlinux 0xa868989a qdisc_list_del +EXPORT_SYMBOL vmlinux 0xa8721b97 system_state +EXPORT_SYMBOL vmlinux 0xa877bf48 sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0xa88fa614 of_find_i2c_device_by_node +EXPORT_SYMBOL vmlinux 0xa89578a1 __skb_gso_segment +EXPORT_SYMBOL vmlinux 0xa89cc16b get_phy_device +EXPORT_SYMBOL vmlinux 0xa8a6f639 __check_region +EXPORT_SYMBOL vmlinux 0xa8c9c661 pci_match_id +EXPORT_SYMBOL vmlinux 0xa8dc3a6a phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0xa8f2500e pme_ctx_enable +EXPORT_SYMBOL vmlinux 0xa8f3c8db padata_register_cpumask_notifier +EXPORT_SYMBOL vmlinux 0xa8fef7bb security_unix_may_send +EXPORT_SYMBOL vmlinux 0xa916b694 strnlen +EXPORT_SYMBOL vmlinux 0xa91c9dc7 scsi_host_set_state +EXPORT_SYMBOL vmlinux 0xa9273e1a epapr_hypercall_start +EXPORT_SYMBOL vmlinux 0xa927d5d5 posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0xa92f85fa agp_alloc_bridge +EXPORT_SYMBOL vmlinux 0xa933fc3b md_flush_request +EXPORT_SYMBOL vmlinux 0xa93ba88e proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0xa95bc41d setup_arg_pages +EXPORT_SYMBOL vmlinux 0xa981fa2d iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0xa98e2e36 filemap_fdatawait +EXPORT_SYMBOL vmlinux 0xa998660a tty_lock_pair +EXPORT_SYMBOL vmlinux 0xa9b63345 of_parse_phandle_with_fixed_args +EXPORT_SYMBOL vmlinux 0xa9bbe022 mdiobus_free +EXPORT_SYMBOL vmlinux 0xa9df26da skb_queue_purge +EXPORT_SYMBOL vmlinux 0xa9e91d3d send_sig +EXPORT_SYMBOL vmlinux 0xa9ef42b7 dquot_disable +EXPORT_SYMBOL vmlinux 0xa9fef74f scsi_host_alloc +EXPORT_SYMBOL vmlinux 0xaa0073b7 __net_get_random_once +EXPORT_SYMBOL vmlinux 0xaa016a4d tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0xaa0b2351 twl6040_power +EXPORT_SYMBOL vmlinux 0xaa2b7f68 netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0xaa46e87e lg_local_unlock +EXPORT_SYMBOL vmlinux 0xaa65f353 dev_addr_init +EXPORT_SYMBOL vmlinux 0xaa6e4df5 _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa79af55 dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0xaa8d0ef2 pme_ctx_ctrl_read_flow +EXPORT_SYMBOL vmlinux 0xaa9087c0 param_ops_string +EXPORT_SYMBOL vmlinux 0xaaab8067 cpu_sibling_map +EXPORT_SYMBOL vmlinux 0xaab0fdcf simple_transaction_get +EXPORT_SYMBOL vmlinux 0xaab836b7 ppp_input +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab0304f3 pcie_set_readrq +EXPORT_SYMBOL vmlinux 0xab1b209e bio_integrity_get_tag +EXPORT_SYMBOL vmlinux 0xab2894e2 __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xab2965e9 mmc_register_driver +EXPORT_SYMBOL vmlinux 0xab5adcf3 icmpv6_send +EXPORT_SYMBOL vmlinux 0xab640251 pci_get_slot +EXPORT_SYMBOL vmlinux 0xab6bde28 sysctl_max_syn_backlog +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xabc0b29f drop_super +EXPORT_SYMBOL vmlinux 0xabc6dd63 cpufreq_sysfs_create_file +EXPORT_SYMBOL vmlinux 0xabcaa577 free_anon_bdev +EXPORT_SYMBOL vmlinux 0xabcd218c inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0xabcf2403 test_set_page_writeback +EXPORT_SYMBOL vmlinux 0xabd0c91c rtc_time_to_tm +EXPORT_SYMBOL vmlinux 0xabf075b7 dev_printk_emit +EXPORT_SYMBOL vmlinux 0xabf462f6 starget_for_each_device +EXPORT_SYMBOL vmlinux 0xabff87ac pme_ctx_scan +EXPORT_SYMBOL vmlinux 0xac0031d2 kthread_bind +EXPORT_SYMBOL vmlinux 0xac071a0e kill_pgrp +EXPORT_SYMBOL vmlinux 0xac09eb89 vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0xac0ba8c1 blk_iopoll_disable +EXPORT_SYMBOL vmlinux 0xac0f70a4 gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0xac19a356 tcf_destroy_chain +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac26b820 _raw_write_lock +EXPORT_SYMBOL vmlinux 0xac40a3e2 __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacc5b5d2 csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0xaccabc6a in4_pton +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xad01744f kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad0a6e0a flex_array_prealloc +EXPORT_SYMBOL vmlinux 0xad164875 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xad3cc768 md_done_sync +EXPORT_SYMBOL vmlinux 0xad46dec2 of_count_phandle_with_args +EXPORT_SYMBOL vmlinux 0xad5205fe generic_show_options +EXPORT_SYMBOL vmlinux 0xad79b126 dquot_free_inode +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xadb62cb7 netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0xae324a34 __frontswap_load +EXPORT_SYMBOL vmlinux 0xae44cf83 ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0xae4b656d bd_set_size +EXPORT_SYMBOL vmlinux 0xae515560 cdrom_open +EXPORT_SYMBOL vmlinux 0xae545f06 _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xae634901 nf_register_hooks +EXPORT_SYMBOL vmlinux 0xae729e59 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xae733404 __lock_buffer +EXPORT_SYMBOL vmlinux 0xaea695c6 devfreq_add_device +EXPORT_SYMBOL vmlinux 0xaec3fd93 sock_wake_async +EXPORT_SYMBOL vmlinux 0xaec8af23 udplite_prot +EXPORT_SYMBOL vmlinux 0xaed7b507 ip_route_input_noref +EXPORT_SYMBOL vmlinux 0xaee0a475 tty_register_ldisc +EXPORT_SYMBOL vmlinux 0xaef8b684 dev_mc_sync +EXPORT_SYMBOL vmlinux 0xaf043b99 d_rehash +EXPORT_SYMBOL vmlinux 0xaf05b91b of_device_is_available +EXPORT_SYMBOL vmlinux 0xaf063510 _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0xaf2d872c prepare_to_wait +EXPORT_SYMBOL vmlinux 0xaf37024a file_update_time +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf500512 mfd_add_devices +EXPORT_SYMBOL vmlinux 0xaf64ad0d zlib_deflate +EXPORT_SYMBOL vmlinux 0xaf6ae696 kstrndup +EXPORT_SYMBOL vmlinux 0xaf6eba3e prepare_creds +EXPORT_SYMBOL vmlinux 0xaf91d89f __kernel_param_lock +EXPORT_SYMBOL vmlinux 0xafad493b param_ops_ushort +EXPORT_SYMBOL vmlinux 0xafb95a1f register_shrinker +EXPORT_SYMBOL vmlinux 0xafc51299 tcp_shutdown +EXPORT_SYMBOL vmlinux 0xafd68c33 flex_array_free +EXPORT_SYMBOL vmlinux 0xafd70bf2 qman_dca +EXPORT_SYMBOL vmlinux 0xafe0f3b5 unlock_new_inode +EXPORT_SYMBOL vmlinux 0xafff3d1d mempool_alloc +EXPORT_SYMBOL vmlinux 0xb0015afa __ip_select_ident +EXPORT_SYMBOL vmlinux 0xb01f3b8a __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0xb028e7ce filp_open +EXPORT_SYMBOL vmlinux 0xb0310c72 set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb064e023 nla_put_nohdr +EXPORT_SYMBOL vmlinux 0xb06500b6 free_user_ns +EXPORT_SYMBOL vmlinux 0xb06c08e1 bitmap_end_sync +EXPORT_SYMBOL vmlinux 0xb071c395 sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0xb074ca7d seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0xb08717f1 input_unregister_handle +EXPORT_SYMBOL vmlinux 0xb097da59 nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0b847ac __bitmap_full +EXPORT_SYMBOL vmlinux 0xb0d7361d bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0f0445e gen10g_config_advert +EXPORT_SYMBOL vmlinux 0xb0ffda2f blk_limits_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xb111f285 bdi_register_dev +EXPORT_SYMBOL vmlinux 0xb1255698 proc_create_data +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb1335e69 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0xb15bd8fa tb_ticks_per_sec +EXPORT_SYMBOL vmlinux 0xb1645a2e sg_free_table +EXPORT_SYMBOL vmlinux 0xb165ef45 __irq_regs +EXPORT_SYMBOL vmlinux 0xb16cdd09 inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0xb16f5ac4 clear_user_page +EXPORT_SYMBOL vmlinux 0xb17433eb mpage_readpage +EXPORT_SYMBOL vmlinux 0xb181a5ee serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0xb18bf55f agp_backend_acquire +EXPORT_SYMBOL vmlinux 0xb19760c3 bitmap_onto +EXPORT_SYMBOL vmlinux 0xb1979841 phy_print_status +EXPORT_SYMBOL vmlinux 0xb1aacc47 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0xb1b02ca9 kfree_skb_list +EXPORT_SYMBOL vmlinux 0xb1c33bbf build_skb +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1c6e787 wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0xb1cf44df fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xb1cfc274 scsi_print_command +EXPORT_SYMBOL vmlinux 0xb1db9e4e param_get_invbool +EXPORT_SYMBOL vmlinux 0xb1e2f829 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0xb1e8a5d7 blk_queue_start_tag +EXPORT_SYMBOL vmlinux 0xb1f8750e blk_mq_run_queues +EXPORT_SYMBOL vmlinux 0xb207d7e2 scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0xb207ff24 __d_drop +EXPORT_SYMBOL vmlinux 0xb21d55f8 xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0xb23fed48 tcf_hash_create +EXPORT_SYMBOL vmlinux 0xb25cbe92 put_page +EXPORT_SYMBOL vmlinux 0xb2654cbd vfs_mkdir +EXPORT_SYMBOL vmlinux 0xb2682405 utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0xb2744b56 tcp_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xb2a2d054 pme_ctx_exclusive_inc +EXPORT_SYMBOL vmlinux 0xb2be6e92 netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xb2d61373 jbd2_journal_file_inode +EXPORT_SYMBOL vmlinux 0xb2f97c74 skb_checksum_help +EXPORT_SYMBOL vmlinux 0xb304acff ida_get_new_above +EXPORT_SYMBOL vmlinux 0xb31bbdff dma_async_memcpy_pg_to_pg +EXPORT_SYMBOL vmlinux 0xb3300631 fb_validate_mode +EXPORT_SYMBOL vmlinux 0xb34d39f9 vfs_mknod +EXPORT_SYMBOL vmlinux 0xb35e84a2 ip_ct_attach +EXPORT_SYMBOL vmlinux 0xb3698b7f inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0xb39b0bc2 register_nls +EXPORT_SYMBOL vmlinux 0xb39fedb9 i2c_release_client +EXPORT_SYMBOL vmlinux 0xb3d35515 qman_oos_fq +EXPORT_SYMBOL vmlinux 0xb3f1fc32 pci_set_dma_seg_boundary +EXPORT_SYMBOL vmlinux 0xb3f36e3e pci_pme_capable +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb40496d8 gen10g_restart_aneg +EXPORT_SYMBOL vmlinux 0xb40e48f7 bio_integrity_endio +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb42c091e splice_from_pipe_next +EXPORT_SYMBOL vmlinux 0xb45c8a29 redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0xb469cb6f inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0xb4709322 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0xb47189b5 reservation_ww_class +EXPORT_SYMBOL vmlinux 0xb47bc696 vm_stat +EXPORT_SYMBOL vmlinux 0xb4b08015 tty_port_hangup +EXPORT_SYMBOL vmlinux 0xb4b4ce20 skb_orphan_partial +EXPORT_SYMBOL vmlinux 0xb4b9d0b0 pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0xb4dad02b of_match_device +EXPORT_SYMBOL vmlinux 0xb4e5401c vfs_path_lookup +EXPORT_SYMBOL vmlinux 0xb4f2e2c3 tcp_gro_complete +EXPORT_SYMBOL vmlinux 0xb4ff3c43 sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0xb5326eee xfrm_state_walk +EXPORT_SYMBOL vmlinux 0xb535b9f6 qman_destroy_fq +EXPORT_SYMBOL vmlinux 0xb54533f7 usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb579711f __i2c_transfer +EXPORT_SYMBOL vmlinux 0xb57f2457 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0xb5832ccd serio_reconnect +EXPORT_SYMBOL vmlinux 0xb587f461 jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0xb58bb218 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xb599c066 ipv6_push_nfrag_opts +EXPORT_SYMBOL vmlinux 0xb59c5a94 security_path_chmod +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5d2c478 pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0xb5e013ef km_state_expired +EXPORT_SYMBOL vmlinux 0xb5e4c5ba pci_enable_msix +EXPORT_SYMBOL vmlinux 0xb5ebb250 __free_pages +EXPORT_SYMBOL vmlinux 0xb6244511 sg_init_one +EXPORT_SYMBOL vmlinux 0xb6394d4b param_set_bint +EXPORT_SYMBOL vmlinux 0xb6399c02 ip6_frag_match +EXPORT_SYMBOL vmlinux 0xb6541279 eth_header_cache_update +EXPORT_SYMBOL vmlinux 0xb65e91c0 __nla_reserve +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb6822a33 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6b46a7c param_ops_int +EXPORT_SYMBOL vmlinux 0xb6c5a973 scsi_show_result +EXPORT_SYMBOL vmlinux 0xb6d2eafb qman_irqsource_add +EXPORT_SYMBOL vmlinux 0xb6f23143 vlan_vid_del +EXPORT_SYMBOL vmlinux 0xb70886db fixed_size_llseek +EXPORT_SYMBOL vmlinux 0xb730c8f8 clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0xb7413e89 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0xb76555bd __locks_copy_lock +EXPORT_SYMBOL vmlinux 0xb76f43e3 tcp_proc_register +EXPORT_SYMBOL vmlinux 0xb770be3e __percpu_counter_add +EXPORT_SYMBOL vmlinux 0xb77131b1 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0xb77c2eaa phy_start_aneg +EXPORT_SYMBOL vmlinux 0xb782d9ab xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0xb784ca7a i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0xb791c759 fddi_change_mtu +EXPORT_SYMBOL vmlinux 0xb7946c97 pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0xb79a4e1a store_fp_state +EXPORT_SYMBOL vmlinux 0xb7a45796 inet6_ioctl +EXPORT_SYMBOL vmlinux 0xb7aa61ea dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0xb7bd0415 of_mdiobus_register +EXPORT_SYMBOL vmlinux 0xb7cb05bf nf_nat_decode_session_hook +EXPORT_SYMBOL vmlinux 0xb7d37964 scsi_device_set_state +EXPORT_SYMBOL vmlinux 0xb7fde971 pme_map +EXPORT_SYMBOL vmlinux 0xb803da1b pci_fixup_device +EXPORT_SYMBOL vmlinux 0xb81c3972 scsi_finish_command +EXPORT_SYMBOL vmlinux 0xb825979d mpage_writepage +EXPORT_SYMBOL vmlinux 0xb835b3e4 radix_tree_prev_hole +EXPORT_SYMBOL vmlinux 0xb83658d9 release_sock +EXPORT_SYMBOL vmlinux 0xb855c2c1 update_devfreq +EXPORT_SYMBOL vmlinux 0xb8560285 simple_unlink +EXPORT_SYMBOL vmlinux 0xb874b87a __clzsi2 +EXPORT_SYMBOL vmlinux 0xb8864f8d ppp_dev_name +EXPORT_SYMBOL vmlinux 0xb89e5c8c pme_ctx_is_disabled +EXPORT_SYMBOL vmlinux 0xb8ce991f i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0xb8d73e97 param_set_uint +EXPORT_SYMBOL vmlinux 0xb8ee0ed4 nf_reinject +EXPORT_SYMBOL vmlinux 0xb911b282 blk_complete_request +EXPORT_SYMBOL vmlinux 0xb9402df3 tcp_hashinfo +EXPORT_SYMBOL vmlinux 0xb94451ab seq_open +EXPORT_SYMBOL vmlinux 0xb956a996 pipe_lock +EXPORT_SYMBOL vmlinux 0xb95b2334 sockfd_lookup +EXPORT_SYMBOL vmlinux 0xb98a0185 rtc_tm_to_time +EXPORT_SYMBOL vmlinux 0xb9b4e181 alloc_pages_exact_nid +EXPORT_SYMBOL vmlinux 0xb9c7f02d netpoll_rx_disable +EXPORT_SYMBOL vmlinux 0xb9d54632 inet_csk_accept +EXPORT_SYMBOL vmlinux 0xb9d5e027 qman_eqcr_is_empty +EXPORT_SYMBOL vmlinux 0xb9d69ec8 sock_setsockopt +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xb9fb09f8 elv_dispatch_add_tail +EXPORT_SYMBOL vmlinux 0xb9fc7573 unmap_mapping_range +EXPORT_SYMBOL vmlinux 0xba0cfa42 release_firmware +EXPORT_SYMBOL vmlinux 0xba1196c5 blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0xba121109 __neigh_create +EXPORT_SYMBOL vmlinux 0xba485c13 skb_dequeue +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba4de6ff d_path +EXPORT_SYMBOL vmlinux 0xba6a4b65 scsi_target_resume +EXPORT_SYMBOL vmlinux 0xba720b2a vfs_create +EXPORT_SYMBOL vmlinux 0xba9316e3 locks_remove_posix +EXPORT_SYMBOL vmlinux 0xbab3e40f block_write_full_page_endio +EXPORT_SYMBOL vmlinux 0xbace098d inet_sock_destruct +EXPORT_SYMBOL vmlinux 0xbae3ddb0 mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0xbb093b44 dev_alloc_name +EXPORT_SYMBOL vmlinux 0xbb0ae861 rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0xbb184f5e dev_close +EXPORT_SYMBOL vmlinux 0xbb189cad disallow_signal +EXPORT_SYMBOL vmlinux 0xbb1c2270 dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0xbb234cb9 create_empty_buffers +EXPORT_SYMBOL vmlinux 0xbb4f4766 simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0xbb516f3b of_device_alloc +EXPORT_SYMBOL vmlinux 0xbb5d343d xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xbb713e6d sk_filter_release_rcu +EXPORT_SYMBOL vmlinux 0xbb99125c get_default_font +EXPORT_SYMBOL vmlinux 0xbbaeb559 memcg_socket_limit_enabled +EXPORT_SYMBOL vmlinux 0xbbb6b412 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xbc12149f local_flush_tlb_page +EXPORT_SYMBOL vmlinux 0xbc18e93c write_cache_pages +EXPORT_SYMBOL vmlinux 0xbc19e283 scsi_setup_blk_pc_cmnd +EXPORT_SYMBOL vmlinux 0xbc2fd264 scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0xbc316de4 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0xbc3183d3 ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0xbc3f6afa down_read +EXPORT_SYMBOL vmlinux 0xbc875e14 ip_check_defrag +EXPORT_SYMBOL vmlinux 0xbc87e74f dmam_alloc_noncoherent +EXPORT_SYMBOL vmlinux 0xbc8bc0fd I_BDEV +EXPORT_SYMBOL vmlinux 0xbc9aa0b6 blk_queue_end_tag +EXPORT_SYMBOL vmlinux 0xbc9f0b5c gen_pool_add_virt +EXPORT_SYMBOL vmlinux 0xbcbf4e02 seq_bitmap_list +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbccdc2f6 flex_array_put +EXPORT_SYMBOL vmlinux 0xbcd43f29 __module_put_and_exit +EXPORT_SYMBOL vmlinux 0xbcddb1e5 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0xbcdedba7 of_get_mac_address +EXPORT_SYMBOL vmlinux 0xbcec8611 skb_put +EXPORT_SYMBOL vmlinux 0xbcf150f9 xor_altivec_5 +EXPORT_SYMBOL vmlinux 0xbd29444e inetdev_by_index +EXPORT_SYMBOL vmlinux 0xbd325557 simple_release_fs +EXPORT_SYMBOL vmlinux 0xbd33646a inet_add_protocol +EXPORT_SYMBOL vmlinux 0xbd462b55 __kfifo_init +EXPORT_SYMBOL vmlinux 0xbd4eebac bitmap_start_sync +EXPORT_SYMBOL vmlinux 0xbd803510 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0xbdb4a5a8 eth_header_parse +EXPORT_SYMBOL vmlinux 0xbde09e31 generic_block_bmap +EXPORT_SYMBOL vmlinux 0xbe03f26c bio_copy_kern +EXPORT_SYMBOL vmlinux 0xbe075e2d kernel_setsockopt +EXPORT_SYMBOL vmlinux 0xbe0a2849 blk_mq_init_commands +EXPORT_SYMBOL vmlinux 0xbe25390a pci_get_subsys +EXPORT_SYMBOL vmlinux 0xbe27620e pci_get_class +EXPORT_SYMBOL vmlinux 0xbe2ab3da __scsi_put_command +EXPORT_SYMBOL vmlinux 0xbe2c0274 add_timer +EXPORT_SYMBOL vmlinux 0xbe2ea65c alloc_mdio_bitbang +EXPORT_SYMBOL vmlinux 0xbe527bbe netif_device_attach +EXPORT_SYMBOL vmlinux 0xbe77aebe down_write_trylock +EXPORT_SYMBOL vmlinux 0xbec25473 of_parse_phandle +EXPORT_SYMBOL vmlinux 0xbec39a4c lease_modify +EXPORT_SYMBOL vmlinux 0xbee0a423 follow_up +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbf015fcc request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0xbf1fd80c dcache_dir_close +EXPORT_SYMBOL vmlinux 0xbf2fd637 __blk_run_queue +EXPORT_SYMBOL vmlinux 0xbf6b575b inode_dio_wait +EXPORT_SYMBOL vmlinux 0xbf7bbe46 d_validate +EXPORT_SYMBOL vmlinux 0xbf7fd2f5 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0xbf8ba54a vprintk +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfabfe59 __debugger_iabr_match +EXPORT_SYMBOL vmlinux 0xbfb554b4 sock_kmalloc +EXPORT_SYMBOL vmlinux 0xbfb8b0b7 _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0xbfbc58a7 dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfc74f8b sk_stop_timer +EXPORT_SYMBOL vmlinux 0xbfdc0482 noop_llseek +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xbffeb647 jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0xbfffbc9d ip_options_compile +EXPORT_SYMBOL vmlinux 0xc00029b6 padata_remove_cpu +EXPORT_SYMBOL vmlinux 0xc00fe91f bmap +EXPORT_SYMBOL vmlinux 0xc015261e netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0xc029583b scsi_is_target_device +EXPORT_SYMBOL vmlinux 0xc02cf69b clkdev_drop +EXPORT_SYMBOL vmlinux 0xc035de45 noop_fsync +EXPORT_SYMBOL vmlinux 0xc0492a92 block_truncate_page +EXPORT_SYMBOL vmlinux 0xc06d86d9 pci_clear_mwi +EXPORT_SYMBOL vmlinux 0xc06fe02e i8042_remove_filter +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc076fb96 blk_queue_softirq_done +EXPORT_SYMBOL vmlinux 0xc0823e4c twl_i2c_write +EXPORT_SYMBOL vmlinux 0xc0955b0d of_find_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0xc0959a93 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0bf38d6 backlight_device_register +EXPORT_SYMBOL vmlinux 0xc0c24b4f compat_sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0xc0f27a13 init_buffer +EXPORT_SYMBOL vmlinux 0xc106b1a0 nf_register_sockopt +EXPORT_SYMBOL vmlinux 0xc1089365 dev_err +EXPORT_SYMBOL vmlinux 0xc10b088e d_lookup +EXPORT_SYMBOL vmlinux 0xc116a43f iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0xc148da1f inet6_protos +EXPORT_SYMBOL vmlinux 0xc14bec28 generic_file_open +EXPORT_SYMBOL vmlinux 0xc177315a blk_recount_segments +EXPORT_SYMBOL vmlinux 0xc1b0abbe dquot_drop +EXPORT_SYMBOL vmlinux 0xc1c2dd09 __hw_addr_flush +EXPORT_SYMBOL vmlinux 0xc1c4e5ab i8042_install_filter +EXPORT_SYMBOL vmlinux 0xc1c5ef7e scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0xc1e01820 serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0xc1f2e379 simple_write_end +EXPORT_SYMBOL vmlinux 0xc20a0db6 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0xc21444b4 xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0xc23a6de9 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0xc23c0f25 vfs_link +EXPORT_SYMBOL vmlinux 0xc2424641 agp3_generic_cleanup +EXPORT_SYMBOL vmlinux 0xc24271cb gen_pool_alloc +EXPORT_SYMBOL vmlinux 0xc243235f xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0xc256e762 __bitmap_equal +EXPORT_SYMBOL vmlinux 0xc274092c bio_integrity_tag_size +EXPORT_SYMBOL vmlinux 0xc2885eb2 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0xc290d2a6 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0xc29bf967 strspn +EXPORT_SYMBOL vmlinux 0xc2a1ee04 unload_nls +EXPORT_SYMBOL vmlinux 0xc2a3bb30 qdisc_tree_decrease_qlen +EXPORT_SYMBOL vmlinux 0xc2afbd1d submit_bio +EXPORT_SYMBOL vmlinux 0xc2b825a5 blk_queue_unprep_rq +EXPORT_SYMBOL vmlinux 0xc2c4d611 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0xc2c59eb8 agp_generic_type_to_mask_type +EXPORT_SYMBOL vmlinux 0xc2caf787 proto_unregister +EXPORT_SYMBOL vmlinux 0xc2d2fc74 skb_clone +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2eade07 vfs_rmdir +EXPORT_SYMBOL vmlinux 0xc2f4405a ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0xc2f9c045 timespec_to_jiffies +EXPORT_SYMBOL vmlinux 0xc30b7e5d blkdev_get +EXPORT_SYMBOL vmlinux 0xc310b981 strnstr +EXPORT_SYMBOL vmlinux 0xc314c3d2 __cputime_jiffies_factor +EXPORT_SYMBOL vmlinux 0xc31abe55 pci_disable_msix +EXPORT_SYMBOL vmlinux 0xc33f7b7e inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0xc34ae5c1 inode_change_ok +EXPORT_SYMBOL vmlinux 0xc36d8cfa simple_open +EXPORT_SYMBOL vmlinux 0xc3921506 nobh_truncate_page +EXPORT_SYMBOL vmlinux 0xc3a9f5ba setattr_copy +EXPORT_SYMBOL vmlinux 0xc3b67bde ps2_init +EXPORT_SYMBOL vmlinux 0xc3ba139d override_creds +EXPORT_SYMBOL vmlinux 0xc3defcf9 generic_readlink +EXPORT_SYMBOL vmlinux 0xc3df0f1c mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0xc3fcdf8a jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0xc41ff4ee request_firmware +EXPORT_SYMBOL vmlinux 0xc42cb1c3 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0xc433b9f8 cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0xc45755de find_next_zero_bit_le +EXPORT_SYMBOL vmlinux 0xc45d531c led_set_brightness +EXPORT_SYMBOL vmlinux 0xc4767879 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0xc4769c5c ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0xc47cdf9c _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0xc48307db lz4_decompress +EXPORT_SYMBOL vmlinux 0xc499ae1e kstrdup +EXPORT_SYMBOL vmlinux 0xc4a7ebcf input_open_device +EXPORT_SYMBOL vmlinux 0xc4b0358c tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0xc4b0fe94 bio_integrity_clone +EXPORT_SYMBOL vmlinux 0xc4c70d7c blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0xc4c931a1 bio_endio +EXPORT_SYMBOL vmlinux 0xc4ffce20 swiotlb_dma_mapping_error +EXPORT_SYMBOL vmlinux 0xc512ad4e tcp_make_synack +EXPORT_SYMBOL vmlinux 0xc515b025 pm860x_page_bulk_write +EXPORT_SYMBOL vmlinux 0xc525b5f9 inet_frags_init +EXPORT_SYMBOL vmlinux 0xc53e3e62 inet_dgram_ops +EXPORT_SYMBOL vmlinux 0xc54ef2ea security_inode_permission +EXPORT_SYMBOL vmlinux 0xc5534d64 ioread16 +EXPORT_SYMBOL vmlinux 0xc55c2a9d inode_sb_list_lock +EXPORT_SYMBOL vmlinux 0xc589e044 param_set_long +EXPORT_SYMBOL vmlinux 0xc58cfed7 jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0xc5bd37c6 xfrm_register_mode +EXPORT_SYMBOL vmlinux 0xc5c08eab dpa_uio_bman +EXPORT_SYMBOL vmlinux 0xc5d9c46c agp_try_unsupported_boot +EXPORT_SYMBOL vmlinux 0xc5e18e2a serio_unregister_port +EXPORT_SYMBOL vmlinux 0xc5f9724f uart_register_driver +EXPORT_SYMBOL vmlinux 0xc5fdef94 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xc601a79d ps2_handle_ack +EXPORT_SYMBOL vmlinux 0xc6066cbf jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0xc611963f scsi_ioctl +EXPORT_SYMBOL vmlinux 0xc6264d46 seq_lseek +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc64a1e6a lease_get_mtime +EXPORT_SYMBOL vmlinux 0xc65abeb7 agp3_generic_sizes +EXPORT_SYMBOL vmlinux 0xc65db174 tc_classify_compat +EXPORT_SYMBOL vmlinux 0xc663b075 __ioremap +EXPORT_SYMBOL vmlinux 0xc665d6d7 of_parse_phandle_with_args +EXPORT_SYMBOL vmlinux 0xc666a132 crc_t10dif +EXPORT_SYMBOL vmlinux 0xc6675b69 of_phy_connect +EXPORT_SYMBOL vmlinux 0xc6740768 elv_unregister_queue +EXPORT_SYMBOL vmlinux 0xc67831ac scsi_execute_req_flags +EXPORT_SYMBOL vmlinux 0xc6867e99 dev_addr_del_multiple +EXPORT_SYMBOL vmlinux 0xc690ebfc __get_user_pages +EXPORT_SYMBOL vmlinux 0xc69bf85c bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0xc6c314bf __ww_mutex_lock +EXPORT_SYMBOL vmlinux 0xc6cb465a __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6ccbb00 find_get_page +EXPORT_SYMBOL vmlinux 0xc6da7a96 posix_lock_file +EXPORT_SYMBOL vmlinux 0xc708e4e2 seq_escape +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc736a33a blk_register_region +EXPORT_SYMBOL vmlinux 0xc74f3bf8 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0xc768de19 cpu_all_bits +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a1a27b audit_log_start +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7b6bfa7 bio_copy_data +EXPORT_SYMBOL vmlinux 0xc7e63f1f fget_light +EXPORT_SYMBOL vmlinux 0xc7e8c21d skb_store_bits +EXPORT_SYMBOL vmlinux 0xc7edb31f sync_inodes_sb +EXPORT_SYMBOL vmlinux 0xc7f45a6c agp_generic_alloc_page +EXPORT_SYMBOL vmlinux 0xc80fca4b netdev_state_change +EXPORT_SYMBOL vmlinux 0xc82e7b21 neigh_compat_output +EXPORT_SYMBOL vmlinux 0xc83b4d5b posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc85eaa71 simple_transaction_read +EXPORT_SYMBOL vmlinux 0xc866e27b sock_no_sendpage +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc897c382 sg_init_table +EXPORT_SYMBOL vmlinux 0xc8a913f0 inet_select_addr +EXPORT_SYMBOL vmlinux 0xc8b57c27 autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xc8b9a76b bman_recovery_exit +EXPORT_SYMBOL vmlinux 0xc8dba9a1 blk_peek_request +EXPORT_SYMBOL vmlinux 0xc8fab875 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0xc901ade2 udp_proc_unregister +EXPORT_SYMBOL vmlinux 0xc91ff664 down_read_trylock +EXPORT_SYMBOL vmlinux 0xc92cfb7b netdev_printk +EXPORT_SYMBOL vmlinux 0xc9335efa pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0xc935761c padata_do_parallel +EXPORT_SYMBOL vmlinux 0xc93fbc54 wait_for_completion_io +EXPORT_SYMBOL vmlinux 0xc94d1f91 __mmc_claim_host +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc96fb6d0 qman_start_dequeues +EXPORT_SYMBOL vmlinux 0xc977cefc tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0xc978479a xz_dec_run +EXPORT_SYMBOL vmlinux 0xc9861666 misc_register +EXPORT_SYMBOL vmlinux 0xc986edf7 __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xc996d097 del_timer +EXPORT_SYMBOL vmlinux 0xc99e2a55 twl_rev +EXPORT_SYMBOL vmlinux 0xc9a7e3e7 blk_stack_limits +EXPORT_SYMBOL vmlinux 0xc9ad8f1e request_firmware_nowait +EXPORT_SYMBOL vmlinux 0xc9b13b0f put_disk +EXPORT_SYMBOL vmlinux 0xc9cae58e kernel_read +EXPORT_SYMBOL vmlinux 0xc9edae62 module_layout +EXPORT_SYMBOL vmlinux 0xc9f0e52a dev_uc_unsync +EXPORT_SYMBOL vmlinux 0xc9f8d89a udp_add_offload +EXPORT_SYMBOL vmlinux 0xca0de0bc udp_del_offload +EXPORT_SYMBOL vmlinux 0xca0e2a2e blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0xca11ac3e ata_link_printk +EXPORT_SYMBOL vmlinux 0xca1a06ae validate_sp +EXPORT_SYMBOL vmlinux 0xca3b28c6 store_vr_state +EXPORT_SYMBOL vmlinux 0xca3d97e6 qman_get_null_cb +EXPORT_SYMBOL vmlinux 0xca50f9ac jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0xca5dbc50 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xca6fd8a4 inet6_getname +EXPORT_SYMBOL vmlinux 0xca8c3015 tcp_splice_read +EXPORT_SYMBOL vmlinux 0xca928107 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xcaf27b56 simple_pin_fs +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb0892b4 scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0xcb0c5d50 param_get_uint +EXPORT_SYMBOL vmlinux 0xcb0dc88e pci_restore_state +EXPORT_SYMBOL vmlinux 0xcb16b948 pci_platform_rom +EXPORT_SYMBOL vmlinux 0xcb41bb45 fib_default_rule_add +EXPORT_SYMBOL vmlinux 0xcb462d1e blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0xcb54dd9d unregister_cdrom +EXPORT_SYMBOL vmlinux 0xcb5b310f generic_pipe_buf_confirm +EXPORT_SYMBOL vmlinux 0xcb723378 ip_defrag +EXPORT_SYMBOL vmlinux 0xcb77ec09 dentry_update_name_case +EXPORT_SYMBOL vmlinux 0xcb85f4e1 inet_register_protosw +EXPORT_SYMBOL vmlinux 0xcbb2564b pagecache_write_begin +EXPORT_SYMBOL vmlinux 0xcbb79b46 __get_page_tail +EXPORT_SYMBOL vmlinux 0xcbbf0a6f audit_log_task_context +EXPORT_SYMBOL vmlinux 0xcbc9557f unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0xcbca481f nf_afinfo +EXPORT_SYMBOL vmlinux 0xcbd3ddca inode_sub_rsv_space +EXPORT_SYMBOL vmlinux 0xcbdf26b9 mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0xcc152f6e phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0xcc17504d _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xcc1ca59f tcp_disconnect +EXPORT_SYMBOL vmlinux 0xcc1d98e9 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc29583a __kfree_skb +EXPORT_SYMBOL vmlinux 0xcc37f55c blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0xcc395155 bio_copy_user +EXPORT_SYMBOL vmlinux 0xcc4b84da of_find_node_by_type +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc7fa952 local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0xcc89fcd0 filemap_write_and_wait +EXPORT_SYMBOL vmlinux 0xcca18876 security_path_symlink +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xcccb37ec seq_puts +EXPORT_SYMBOL vmlinux 0xcccd6c52 fb_find_mode +EXPORT_SYMBOL vmlinux 0xcce62760 simple_fill_super +EXPORT_SYMBOL vmlinux 0xcd0529c7 _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0xcd20667a kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0xcd23d8f2 of_mm_gpiochip_add +EXPORT_SYMBOL vmlinux 0xcd2463d0 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd6759c7 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0xcd778194 read_cache_pages +EXPORT_SYMBOL vmlinux 0xcd864aaa inet_stream_connect +EXPORT_SYMBOL vmlinux 0xcd86c87f __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xcd8f5cc5 dev_change_flags +EXPORT_SYMBOL vmlinux 0xcd927369 agp_generic_remove_memory +EXPORT_SYMBOL vmlinux 0xcda25baa sock_rfree +EXPORT_SYMBOL vmlinux 0xcdb6ccf7 input_register_handle +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdc9b3ff generic_file_aio_read +EXPORT_SYMBOL vmlinux 0xcdcf3749 tty_port_close_end +EXPORT_SYMBOL vmlinux 0xcde172ac radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0xcde41dbd pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce2c512f sock_i_uid +EXPORT_SYMBOL vmlinux 0xce2dead6 dev_alert +EXPORT_SYMBOL vmlinux 0xce3b3f09 profile_pc +EXPORT_SYMBOL vmlinux 0xce4e47b6 __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0xce53369c jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce6e09ff __inet_stream_connect +EXPORT_SYMBOL vmlinux 0xce977388 inet6_release +EXPORT_SYMBOL vmlinux 0xce984aa6 free_task +EXPORT_SYMBOL vmlinux 0xcea7f495 xfrm_register_type +EXPORT_SYMBOL vmlinux 0xced35884 pci_enable_obff +EXPORT_SYMBOL vmlinux 0xced777cb proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0xceed68f2 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0xcef51982 kstrtou16 +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf0c0aad da903x_query_status +EXPORT_SYMBOL vmlinux 0xcf0e997c netif_device_detach +EXPORT_SYMBOL vmlinux 0xcf1205d5 mddev_congested +EXPORT_SYMBOL vmlinux 0xcf18a3ff of_find_backlight_by_node +EXPORT_SYMBOL vmlinux 0xcf3f3e8c ps2_command +EXPORT_SYMBOL vmlinux 0xcf6272fc mb_cache_entry_release +EXPORT_SYMBOL vmlinux 0xcfb427ba tty_port_destroy +EXPORT_SYMBOL vmlinux 0xcfb49808 bio_phys_segments +EXPORT_SYMBOL vmlinux 0xcfd61c11 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0xcfd9acda sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0xcfe0118e dev_mc_init +EXPORT_SYMBOL vmlinux 0xcff23fe2 md_error +EXPORT_SYMBOL vmlinux 0xcffbc4ee pme_ctx_pmtcc +EXPORT_SYMBOL vmlinux 0xcffea613 devfreq_add_governor +EXPORT_SYMBOL vmlinux 0xd00ef980 mmc_align_data_size +EXPORT_SYMBOL vmlinux 0xd0181f4f __bitmap_xor +EXPORT_SYMBOL vmlinux 0xd0206a64 devfreq_interval_update +EXPORT_SYMBOL vmlinux 0xd021b8ed phy_device_create +EXPORT_SYMBOL vmlinux 0xd025ecb7 tcf_register_action +EXPORT_SYMBOL vmlinux 0xd02ba20b skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0xd03559b0 padata_do_serial +EXPORT_SYMBOL vmlinux 0xd04b744d generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0xd058f9d1 sock_no_accept +EXPORT_SYMBOL vmlinux 0xd0720a17 on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xd085d532 sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0xd088cd7d file_ns_capable +EXPORT_SYMBOL vmlinux 0xd0a0c49f balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0be3123 blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0xd0c5206d scsi_register_interface +EXPORT_SYMBOL vmlinux 0xd0d42c42 mod_timer_pending +EXPORT_SYMBOL vmlinux 0xd0ee38b8 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0xd0f36f0d audit_log_format +EXPORT_SYMBOL vmlinux 0xd0fb7cd4 __tasklet_hi_schedule_first +EXPORT_SYMBOL vmlinux 0xd0fc852c gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0xd0fef3b2 agp_free_key +EXPORT_SYMBOL vmlinux 0xd10c3452 idr_init +EXPORT_SYMBOL vmlinux 0xd11c0dc1 __kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xd11dc75d tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0xd138719c qman_recovery_exit +EXPORT_SYMBOL vmlinux 0xd161e485 elevator_alloc +EXPORT_SYMBOL vmlinux 0xd1628914 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd18f981a qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0xd1a8b8f1 clk_get +EXPORT_SYMBOL vmlinux 0xd1cc0681 percpu_counter_compare +EXPORT_SYMBOL vmlinux 0xd1e412be ps2_end_command +EXPORT_SYMBOL vmlinux 0xd1e4629f blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0xd20ad024 pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0xd210a536 dev_trans_start +EXPORT_SYMBOL vmlinux 0xd220cf8a jiffies_to_timespec +EXPORT_SYMBOL vmlinux 0xd24863ea check_submounts_and_drop +EXPORT_SYMBOL vmlinux 0xd251d7b0 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0xd2555f19 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xd2564225 unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0xd25977cd noop_qdisc +EXPORT_SYMBOL vmlinux 0xd25d3c23 try_to_writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd2632efb tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0xd2685718 vfs_write +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd27efac5 locks_init_lock +EXPORT_SYMBOL vmlinux 0xd28ceff4 sock_wfree +EXPORT_SYMBOL vmlinux 0xd294c066 phy_start_interrupts +EXPORT_SYMBOL vmlinux 0xd2b09ce5 __kmalloc +EXPORT_SYMBOL vmlinux 0xd2c6693e dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0xd2c74f78 pci_dev_driver +EXPORT_SYMBOL vmlinux 0xd2cd5568 interruptible_sleep_on_timeout +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd3010ed6 posix_lock_file_wait +EXPORT_SYMBOL vmlinux 0xd30209bf __page_symlink +EXPORT_SYMBOL vmlinux 0xd31068fc ihold +EXPORT_SYMBOL vmlinux 0xd31ccb06 of_machine_is_compatible +EXPORT_SYMBOL vmlinux 0xd326d8a0 nf_log_set +EXPORT_SYMBOL vmlinux 0xd36257ba memcpy_toiovecend +EXPORT_SYMBOL vmlinux 0xd3764404 key_task_permission +EXPORT_SYMBOL vmlinux 0xd3956485 __mem_cgroup_count_vm_event +EXPORT_SYMBOL vmlinux 0xd39d3780 set_page_dirty +EXPORT_SYMBOL vmlinux 0xd3a5a0bc sk_stream_write_space +EXPORT_SYMBOL vmlinux 0xd3aecd92 of_find_device_by_node +EXPORT_SYMBOL vmlinux 0xd3c747a1 qman_irqsource_remove +EXPORT_SYMBOL vmlinux 0xd3c8b215 bio_integrity_trim +EXPORT_SYMBOL vmlinux 0xd3ddb7c2 netlink_unicast +EXPORT_SYMBOL vmlinux 0xd40987f9 sk_dst_check +EXPORT_SYMBOL vmlinux 0xd4246b0a sock_create +EXPORT_SYMBOL vmlinux 0xd42bcd64 scsi_device_resume +EXPORT_SYMBOL vmlinux 0xd430189e __generic_file_aio_write +EXPORT_SYMBOL vmlinux 0xd43eed53 ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0xd45aa026 setup_new_exec +EXPORT_SYMBOL vmlinux 0xd4668b1c mmc_detect_change +EXPORT_SYMBOL vmlinux 0xd477152e set_create_files_as +EXPORT_SYMBOL vmlinux 0xd47bfecc __scsi_alloc_queue +EXPORT_SYMBOL vmlinux 0xd4a1feb2 simple_statfs +EXPORT_SYMBOL vmlinux 0xd4c8a085 pm860x_reg_read +EXPORT_SYMBOL vmlinux 0xd4d1b859 input_set_abs_params +EXPORT_SYMBOL vmlinux 0xd4e198d4 keyring_search +EXPORT_SYMBOL vmlinux 0xd4e5cbf2 led_blink_set +EXPORT_SYMBOL vmlinux 0xd50bb94f ata_dev_printk +EXPORT_SYMBOL vmlinux 0xd510f55c single_open +EXPORT_SYMBOL vmlinux 0xd543b2dd jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0xd56ee9d6 xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0xd5807381 security_inode_readlink +EXPORT_SYMBOL vmlinux 0xd58ec762 ipv4_specific +EXPORT_SYMBOL vmlinux 0xd5aa11bb generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0xd5e2b854 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0xd5f2172f del_timer_sync +EXPORT_SYMBOL vmlinux 0xd616683a ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0xd648e564 fb_match_mode +EXPORT_SYMBOL vmlinux 0xd64b055a bioset_free +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd688b0d8 pcie_get_mps +EXPORT_SYMBOL vmlinux 0xd69fda3a kill_pid +EXPORT_SYMBOL vmlinux 0xd6a57b0d bdput +EXPORT_SYMBOL vmlinux 0xd6b63d3b bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0xd6c569a8 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0xd6d07b4d pci_vpd_truncate +EXPORT_SYMBOL vmlinux 0xd6d63e9d lg_local_lock_cpu +EXPORT_SYMBOL vmlinux 0xd6e68bc5 i2c_bit_algo +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6ef9ea5 bio_integrity_free +EXPORT_SYMBOL vmlinux 0xd6f4ac83 tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0xd6fd4053 __arch_hweight32 +EXPORT_SYMBOL vmlinux 0xd6fe3561 seq_path +EXPORT_SYMBOL vmlinux 0xd707ab83 pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0xd712a41e inet6_del_offload +EXPORT_SYMBOL vmlinux 0xd7171885 kobject_get +EXPORT_SYMBOL vmlinux 0xd75c79df smp_call_function +EXPORT_SYMBOL vmlinux 0xd761a383 ioremap_prot +EXPORT_SYMBOL vmlinux 0xd7754f8d vga_get +EXPORT_SYMBOL vmlinux 0xd77a2f5c pme_stat_get +EXPORT_SYMBOL vmlinux 0xd77a5aa5 __bitmap_and +EXPORT_SYMBOL vmlinux 0xd786ad5a jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0xd79b5a02 allow_signal +EXPORT_SYMBOL vmlinux 0xd7b03e21 d_find_alias +EXPORT_SYMBOL vmlinux 0xd7cbddda memcpy_toiovec +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7ea7094 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xd7f96c70 vlan_untag +EXPORT_SYMBOL vmlinux 0xd805694b __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0xd815da40 nf_log_unset +EXPORT_SYMBOL vmlinux 0xd82c4e6c agp_generic_enable +EXPORT_SYMBOL vmlinux 0xd872e64b gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0xd8888a18 pci_write_vpd +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8c72cf0 ifla_policy +EXPORT_SYMBOL vmlinux 0xd8ded085 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xd8e484f0 register_chrdev_region +EXPORT_SYMBOL vmlinux 0xd9119a2e freeze_super +EXPORT_SYMBOL vmlinux 0xd92afabe bitmap_clear +EXPORT_SYMBOL vmlinux 0xd92b57e0 qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0xd92e16ba csum_partial_copy_fromiovecend +EXPORT_SYMBOL vmlinux 0xd9499e07 skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0xd949eae3 kern_unmount +EXPORT_SYMBOL vmlinux 0xd9546783 blk_queue_resize_tags +EXPORT_SYMBOL vmlinux 0xd95c4025 skb_checksum +EXPORT_SYMBOL vmlinux 0xd96b6000 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd98c16f9 abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0xd98e48a4 cdev_init +EXPORT_SYMBOL vmlinux 0xd9a9bb30 getname +EXPORT_SYMBOL vmlinux 0xd9bac924 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0xd9bd1e00 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0xd9c18359 vm_insert_pfn +EXPORT_SYMBOL vmlinux 0xd9eef7f6 phy_driver_register +EXPORT_SYMBOL vmlinux 0xd9f102fb unmap_underlying_metadata +EXPORT_SYMBOL vmlinux 0xda09fafb md_write_end +EXPORT_SYMBOL vmlinux 0xda0e167e dquot_commit +EXPORT_SYMBOL vmlinux 0xda13486a __dev_get_by_name +EXPORT_SYMBOL vmlinux 0xda2478d0 param_ops_short +EXPORT_SYMBOL vmlinux 0xda304a0c scsi_reset_provider +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda4f53ae force_sig +EXPORT_SYMBOL vmlinux 0xda661f56 jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0xda78f6df inet_dgram_connect +EXPORT_SYMBOL vmlinux 0xda7ca6cb fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xda868eca lock_sock_nested +EXPORT_SYMBOL vmlinux 0xda89dd8f inet_frags_fini +EXPORT_SYMBOL vmlinux 0xda8af7ad fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0xda8bdf5d nla_append +EXPORT_SYMBOL vmlinux 0xda9ca538 ps2_handle_response +EXPORT_SYMBOL vmlinux 0xdaa16b82 of_clk_get +EXPORT_SYMBOL vmlinux 0xdaafb2c7 nobh_write_end +EXPORT_SYMBOL vmlinux 0xdabc1ea8 fsl_lbc_find +EXPORT_SYMBOL vmlinux 0xdad7adff dqstats +EXPORT_SYMBOL vmlinux 0xdae53b2c tcp_gso_segment +EXPORT_SYMBOL vmlinux 0xdaea043d devm_gpiod_get_index +EXPORT_SYMBOL vmlinux 0xdaea6e0d mfd_clone_cell +EXPORT_SYMBOL vmlinux 0xdaf6b788 inet6_register_protosw +EXPORT_SYMBOL vmlinux 0xdafc9214 dev_addr_del +EXPORT_SYMBOL vmlinux 0xdb01198e fsl_upm_find +EXPORT_SYMBOL vmlinux 0xdb27927f pci_disable_msi +EXPORT_SYMBOL vmlinux 0xdb2d0f26 kern_path_create +EXPORT_SYMBOL vmlinux 0xdb4d78fd skb_copy +EXPORT_SYMBOL vmlinux 0xdb4d9e96 pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0xdb5673db blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb68bf7c simple_dentry_operations +EXPORT_SYMBOL vmlinux 0xdb7038e7 ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb7b5a4f devm_ioport_map +EXPORT_SYMBOL vmlinux 0xdb93da3a empty_aops +EXPORT_SYMBOL vmlinux 0xdb96c5a3 __lock_page +EXPORT_SYMBOL vmlinux 0xdb9fce66 vfs_writev +EXPORT_SYMBOL vmlinux 0xdbab0d37 cad_pid +EXPORT_SYMBOL vmlinux 0xdbb24fc2 down_write +EXPORT_SYMBOL vmlinux 0xdbcd416e sysctl_ip_nonlocal_bind +EXPORT_SYMBOL vmlinux 0xdbcde30d generic_removexattr +EXPORT_SYMBOL vmlinux 0xdbd68604 __skb_get_rxhash +EXPORT_SYMBOL vmlinux 0xdbfdd572 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0xdc047fc4 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0xdc0cc8a3 create_syslog_header +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc3563d8 tcf_hash_check +EXPORT_SYMBOL vmlinux 0xdc37f034 con_copy_unimap +EXPORT_SYMBOL vmlinux 0xdc3c41a8 __crypto_memneq +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc4b4b74 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0xdc6e73c6 ipmi_register_smi +EXPORT_SYMBOL vmlinux 0xdc70b6ac skb_append_datato_frags +EXPORT_SYMBOL vmlinux 0xdc9498dd down +EXPORT_SYMBOL vmlinux 0xdc994f27 blk_sync_queue +EXPORT_SYMBOL vmlinux 0xdcb2cf93 kernel_connect +EXPORT_SYMBOL vmlinux 0xdcb764ad memset +EXPORT_SYMBOL vmlinux 0xdcdbbad7 dev_uc_init +EXPORT_SYMBOL vmlinux 0xdce27edc __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0xdce880b4 jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0xdd2ce33d cdev_alloc +EXPORT_SYMBOL vmlinux 0xdd3367d1 scsi_adjust_queue_depth +EXPORT_SYMBOL vmlinux 0xdd513f52 generic_fillattr +EXPORT_SYMBOL vmlinux 0xdd5b27bf tty_port_tty_set +EXPORT_SYMBOL vmlinux 0xdd955144 __debugger +EXPORT_SYMBOL vmlinux 0xddcd1163 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0xddd0a097 simple_transaction_release +EXPORT_SYMBOL vmlinux 0xddf93e3f powerpc_debugfs_root +EXPORT_SYMBOL vmlinux 0xde10eb10 param_set_invbool +EXPORT_SYMBOL vmlinux 0xde2e6493 scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0xde48e9ca _raw_spin_lock +EXPORT_SYMBOL vmlinux 0xde6151db tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0xde619203 backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xde66ed6d paca +EXPORT_SYMBOL vmlinux 0xde7e7960 tcf_em_register +EXPORT_SYMBOL vmlinux 0xde91448c load_vr_state +EXPORT_SYMBOL vmlinux 0xde9360ba totalram_pages +EXPORT_SYMBOL vmlinux 0xde9b17ed agp3_generic_fetch_size +EXPORT_SYMBOL vmlinux 0xdea765aa mmc_can_reset +EXPORT_SYMBOL vmlinux 0xded26ade agp_generic_create_gatt_table +EXPORT_SYMBOL vmlinux 0xdee768d3 kill_bdev +EXPORT_SYMBOL vmlinux 0xdee96d82 genphy_config_aneg +EXPORT_SYMBOL vmlinux 0xdefa0ad8 qman_testwrite_cgr +EXPORT_SYMBOL vmlinux 0xdf04a0de neigh_lookup +EXPORT_SYMBOL vmlinux 0xdf0b08af __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0xdf10619b skb_split +EXPORT_SYMBOL vmlinux 0xdf13971c dpa_uio_qman +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf344d5f bdevname +EXPORT_SYMBOL vmlinux 0xdf380fcb inode_dio_done +EXPORT_SYMBOL vmlinux 0xdf4ab510 sock_no_socketpair +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf55e0b1 security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0xdf60cc27 __print_symbol +EXPORT_SYMBOL vmlinux 0xdf68cf4d qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0xdf6d6cfb mnt_set_expiry +EXPORT_SYMBOL vmlinux 0xdf84bccc qman_volatile_dequeue +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdfb726d0 security_mmap_file +EXPORT_SYMBOL vmlinux 0xdfc95d5e secpath_dup +EXPORT_SYMBOL vmlinux 0xdfd1ce1e module_put +EXPORT_SYMBOL vmlinux 0xdfede9a2 devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0xe00585b7 vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0xe00beb63 fb_class +EXPORT_SYMBOL vmlinux 0xe026da6c dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0xe0470282 tty_port_init +EXPORT_SYMBOL vmlinux 0xe04f7caa dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xe06141e9 security_sk_clone +EXPORT_SYMBOL vmlinux 0xe071ea84 mmc_can_erase +EXPORT_SYMBOL vmlinux 0xe075d6eb iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xe07de1de seq_release +EXPORT_SYMBOL vmlinux 0xe08fabce iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0xe09b22c1 simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0xe0a34506 dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0xe0a796f7 pci_bus_get +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0d23191 dqget +EXPORT_SYMBOL vmlinux 0xe0e173d9 dev_uc_sync +EXPORT_SYMBOL vmlinux 0xe0ef10c7 ida_simple_remove +EXPORT_SYMBOL vmlinux 0xe0fa83f2 ipmi_register_for_cmd +EXPORT_SYMBOL vmlinux 0xe10bbffd __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe15198ec dev_load +EXPORT_SYMBOL vmlinux 0xe15377c1 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0xe15753ee __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0xe15b6785 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0xe15f6ad8 elevator_init +EXPORT_SYMBOL vmlinux 0xe1761617 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xe17c08b6 bdget +EXPORT_SYMBOL vmlinux 0xe190f5ae revert_creds +EXPORT_SYMBOL vmlinux 0xe1b98646 find_vma +EXPORT_SYMBOL vmlinux 0xe1c77829 security_path_truncate +EXPORT_SYMBOL vmlinux 0xe1d162fd mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0xe1d28bd0 sock_update_memcg +EXPORT_SYMBOL vmlinux 0xe1d334d8 dma_set_mask +EXPORT_SYMBOL vmlinux 0xe1d5849f skb_copy_datagram_iovec +EXPORT_SYMBOL vmlinux 0xe1f8049c truncate_setsize +EXPORT_SYMBOL vmlinux 0xe200f872 secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xe207104b __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0xe2106dad i2c_del_driver +EXPORT_SYMBOL vmlinux 0xe213984d directly_mappable_cdev_bdi +EXPORT_SYMBOL vmlinux 0xe213e5be __genl_register_family +EXPORT_SYMBOL vmlinux 0xe2153e59 __ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0xe220ceb8 __debugger_sstep +EXPORT_SYMBOL vmlinux 0xe226ade5 tcf_generic_walker +EXPORT_SYMBOL vmlinux 0xe22be331 genl_notify +EXPORT_SYMBOL vmlinux 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL vmlinux 0xe23ae481 blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe24d3a97 jiffies_64 +EXPORT_SYMBOL vmlinux 0xe26bf163 of_create_pci_dev +EXPORT_SYMBOL vmlinux 0xe29e1d0e out_of_line_wait_on_atomic_t +EXPORT_SYMBOL vmlinux 0xe2a58d43 qdisc_destroy +EXPORT_SYMBOL vmlinux 0xe2be5498 lg_global_unlock +EXPORT_SYMBOL vmlinux 0xe2ce49bb cdev_del +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2d94b3d arp_tbl +EXPORT_SYMBOL vmlinux 0xe3223e55 dev_notice +EXPORT_SYMBOL vmlinux 0xe3249f80 audit_log +EXPORT_SYMBOL vmlinux 0xe328b58d __sb_end_write +EXPORT_SYMBOL vmlinux 0xe32a4cf1 tty_do_resize +EXPORT_SYMBOL vmlinux 0xe34e2291 dst_destroy +EXPORT_SYMBOL vmlinux 0xe35c5285 of_find_node_by_phandle +EXPORT_SYMBOL vmlinux 0xe3663adc skb_insert +EXPORT_SYMBOL vmlinux 0xe38fea02 read_cache_page_async +EXPORT_SYMBOL vmlinux 0xe3a53f4c sort +EXPORT_SYMBOL vmlinux 0xe3b23778 filemap_flush +EXPORT_SYMBOL vmlinux 0xe3bac0e5 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0xe3d6f284 fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xe3d827e3 agp_generic_free_by_type +EXPORT_SYMBOL vmlinux 0xe3e67114 phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0xe3eb0957 dcache_readdir +EXPORT_SYMBOL vmlinux 0xe3f39662 get_thermal_instance +EXPORT_SYMBOL vmlinux 0xe3fafba8 pci_disable_ltr +EXPORT_SYMBOL vmlinux 0xe40a891f kernel_getpeername +EXPORT_SYMBOL vmlinux 0xe438ae31 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0xe47c00bc sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0xe484e35f ioread32 +EXPORT_SYMBOL vmlinux 0xe49808b4 qman_poll +EXPORT_SYMBOL vmlinux 0xe4a895fa up_write +EXPORT_SYMBOL vmlinux 0xe4aa598f get_tz_trend +EXPORT_SYMBOL vmlinux 0xe4ab00bb of_node_get +EXPORT_SYMBOL vmlinux 0xe4b870bb unregister_exec_domain +EXPORT_SYMBOL vmlinux 0xe4e3f590 skb_pull +EXPORT_SYMBOL vmlinux 0xe4e87cf3 netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0xe4f4665b ipmi_validate_addr +EXPORT_SYMBOL vmlinux 0xe4fe8ca1 _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0xe5122890 flow_cache_genid +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe53d1faa of_translate_dma_address +EXPORT_SYMBOL vmlinux 0xe559672c tty_hung_up_p +EXPORT_SYMBOL vmlinux 0xe55dfb5f vfs_unlink +EXPORT_SYMBOL vmlinux 0xe56fccda generic_block_fiemap +EXPORT_SYMBOL vmlinux 0xe57878a1 in6_pton +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe5879cae nf_unregister_hook +EXPORT_SYMBOL vmlinux 0xe5893ee3 task_tgid_nr_ns +EXPORT_SYMBOL vmlinux 0xe5a4277d skb_try_coalesce +EXPORT_SYMBOL vmlinux 0xe5b58b60 generic_file_llseek +EXPORT_SYMBOL vmlinux 0xe5c37e24 ip_mc_join_group +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5d2f224 bioset_create +EXPORT_SYMBOL vmlinux 0xe5e1ea15 iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0xe5ed5467 xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xe5f98c39 blk_put_queue +EXPORT_SYMBOL vmlinux 0xe60015e1 dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0xe61d1fae dump_align +EXPORT_SYMBOL vmlinux 0xe62030ee rtnl_unicast +EXPORT_SYMBOL vmlinux 0xe62ca9f0 dev_driver_string +EXPORT_SYMBOL vmlinux 0xe62d2f4e mount_pseudo +EXPORT_SYMBOL vmlinux 0xe635c087 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0xe64cf4ce __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0xe66452ab dql_init +EXPORT_SYMBOL vmlinux 0xe66a15d8 devm_gpio_free +EXPORT_SYMBOL vmlinux 0xe674c7d5 pcie_get_minimum_link +EXPORT_SYMBOL vmlinux 0xe678a8cc blk_end_request +EXPORT_SYMBOL vmlinux 0xe6851544 f_setown +EXPORT_SYMBOL vmlinux 0xe68c73e3 blk_mq_insert_request +EXPORT_SYMBOL vmlinux 0xe697d108 __blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe6996a6a vga_tryget +EXPORT_SYMBOL vmlinux 0xe69a663d unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xe69a9df4 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0xe6ab72a6 ipmi_set_my_LUN +EXPORT_SYMBOL vmlinux 0xe6b3d9db tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0xe6bc9e4a kset_register +EXPORT_SYMBOL vmlinux 0xe6c4a26a pagevec_lookup_tag +EXPORT_SYMBOL vmlinux 0xe6d885fd udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0xe6fbe430 can_do_mlock +EXPORT_SYMBOL vmlinux 0xe6ff9dc0 fsnotify_alloc_group +EXPORT_SYMBOL vmlinux 0xe7110366 sock_from_file +EXPORT_SYMBOL vmlinux 0xe71d528c submit_bh +EXPORT_SYMBOL vmlinux 0xe728327c flush_tlb_page +EXPORT_SYMBOL vmlinux 0xe72bd652 km_state_notify +EXPORT_SYMBOL vmlinux 0xe7438efc dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0xe74fc6f3 phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0xe76b43ee tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0xe7a664c4 nf_hooks +EXPORT_SYMBOL vmlinux 0xe7a81967 audit_log_secctx +EXPORT_SYMBOL vmlinux 0xe7c0ccbf i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0xe7c84014 lockref_mark_dead +EXPORT_SYMBOL vmlinux 0xe7ce7439 _memcpy_fromio +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7d9abb4 sock_update_classid +EXPORT_SYMBOL vmlinux 0xe7f344d4 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0xe8257cfb dump_skip +EXPORT_SYMBOL vmlinux 0xe828bc99 simple_link +EXPORT_SYMBOL vmlinux 0xe833fa77 gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0xe866a9e3 tcp_ioctl +EXPORT_SYMBOL vmlinux 0xe8868a92 pcim_enable_device +EXPORT_SYMBOL vmlinux 0xe8b63ace radix_tree_range_tag_if_tagged +EXPORT_SYMBOL vmlinux 0xe8b82fe0 bman_ip_rev +EXPORT_SYMBOL vmlinux 0xe8bacb23 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0xe8bea3bc qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xe8c438f3 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0xe8eb1bc1 phys_mem_access_prot +EXPORT_SYMBOL vmlinux 0xe8fd7dc6 tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe9398b6e module_refcount +EXPORT_SYMBOL vmlinux 0xe94c12a9 write_dirty_buffer +EXPORT_SYMBOL vmlinux 0xe94c9f02 security_path_rmdir +EXPORT_SYMBOL vmlinux 0xe950499d qman_release_fqid_range +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe978b78d pme_hw_flow_new +EXPORT_SYMBOL vmlinux 0xe991576d dcache_dir_open +EXPORT_SYMBOL vmlinux 0xe99aa59e d_instantiate_no_diralias +EXPORT_SYMBOL vmlinux 0xe99b0dff rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0xe9da9cad blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0xe9e545e0 kfree_put_link +EXPORT_SYMBOL vmlinux 0xe9ee0b68 vlan_uses_dev +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xea054b22 nla_policy_len +EXPORT_SYMBOL vmlinux 0xea10212a int_to_scsilun +EXPORT_SYMBOL vmlinux 0xea10655a __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xea16dd4c tcp_destroy_cgroup +EXPORT_SYMBOL vmlinux 0xea317bcf call_netdevice_notifiers_info +EXPORT_SYMBOL vmlinux 0xea34d85a rtmsg_ifinfo +EXPORT_SYMBOL vmlinux 0xea36401d mutex_lock +EXPORT_SYMBOL vmlinux 0xea37944d default_llseek +EXPORT_SYMBOL vmlinux 0xea44f4e2 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0xea4a6c7a end_page_writeback +EXPORT_SYMBOL vmlinux 0xea583e42 sk_stream_error +EXPORT_SYMBOL vmlinux 0xea58442e dma_find_channel +EXPORT_SYMBOL vmlinux 0xea6e3003 of_find_compatible_node +EXPORT_SYMBOL vmlinux 0xea7ea70f mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0xea96650a make_kgid +EXPORT_SYMBOL vmlinux 0xea968c96 ___ratelimit +EXPORT_SYMBOL vmlinux 0xeaa74d13 user_path_at +EXPORT_SYMBOL vmlinux 0xeae2d3e4 blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0xeaf48ab4 cfb_fillrect +EXPORT_SYMBOL vmlinux 0xeb05d45d remove_proc_subtree +EXPORT_SYMBOL vmlinux 0xeb24f22a udp_ioctl +EXPORT_SYMBOL vmlinux 0xeb273178 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0xeb2e2770 nf_setsockopt +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb37ab3d inode_add_rsv_space +EXPORT_SYMBOL vmlinux 0xeb44339a free_pages_exact +EXPORT_SYMBOL vmlinux 0xeb4966f0 kernel_getsockname +EXPORT_SYMBOL vmlinux 0xeb56ae0b clocksource_register +EXPORT_SYMBOL vmlinux 0xeb86432d vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0xeb8e8adc pci_set_ltr +EXPORT_SYMBOL vmlinux 0xeb99f650 phy_attach +EXPORT_SYMBOL vmlinux 0xeb9baef5 sock_no_listen +EXPORT_SYMBOL vmlinux 0xeb9e3ad9 phy_start +EXPORT_SYMBOL vmlinux 0xeba386d5 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0xeba43ca0 sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0xebaa98db ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0xebbfd424 blkdev_put +EXPORT_SYMBOL vmlinux 0xebc1037e __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0xebcab3a6 ppc_pci_io +EXPORT_SYMBOL vmlinux 0xebcfb497 devm_clk_put +EXPORT_SYMBOL vmlinux 0xebdbe48c radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0xebfb04b7 mutex_unlock +EXPORT_SYMBOL vmlinux 0xec16637a serio_open +EXPORT_SYMBOL vmlinux 0xec17ebb0 of_match_node +EXPORT_SYMBOL vmlinux 0xec2e00c2 udp_lib_unhash +EXPORT_SYMBOL vmlinux 0xec413977 scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec91a426 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0xec969c53 xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0xec990e17 ping_prot +EXPORT_SYMBOL vmlinux 0xecaff9d6 pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0xecb9694d max8998_read_reg +EXPORT_SYMBOL vmlinux 0xecbb926f xor_altivec_3 +EXPORT_SYMBOL vmlinux 0xecc1449e bm_pool_set +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xed08bd8a __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xed16ab89 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0xed227b9a __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xed28ebcd xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0xed597524 qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xed64e68c fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0xed70a60d devfreq_resume_device +EXPORT_SYMBOL vmlinux 0xed80446a mmc_fixup_device +EXPORT_SYMBOL vmlinux 0xed9f9a20 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xeda8c1d3 mapping_tagged +EXPORT_SYMBOL vmlinux 0xedb0901a dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedc410d0 udplite_table +EXPORT_SYMBOL vmlinux 0xedc85ec5 __secpath_destroy +EXPORT_SYMBOL vmlinux 0xedea9989 dma_sync_wait +EXPORT_SYMBOL vmlinux 0xedf4a0a8 seq_bitmap +EXPORT_SYMBOL vmlinux 0xee0d6d40 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0xee246dff ida_destroy +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee2df648 dquot_resume +EXPORT_SYMBOL vmlinux 0xee8eb96a neigh_seq_next +EXPORT_SYMBOL vmlinux 0xee8f9c64 blk_alloc_queue +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xee9f9340 blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0xeea9dbaf bitmap_bitremap +EXPORT_SYMBOL vmlinux 0xeeb0471b fd_install +EXPORT_SYMBOL vmlinux 0xeeb0c3bd truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0xeeb5bd3b __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0xeec07011 inet_getname +EXPORT_SYMBOL vmlinux 0xeeec26a7 queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xeef161aa groups_free +EXPORT_SYMBOL vmlinux 0xef109449 interruptible_sleep_on +EXPORT_SYMBOL vmlinux 0xef33ab2d jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0xef397b10 get_task_io_context +EXPORT_SYMBOL vmlinux 0xef3dbbd8 unregister_shrinker +EXPORT_SYMBOL vmlinux 0xef65ef81 dm_register_target +EXPORT_SYMBOL vmlinux 0xef7198c3 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0xef8f4512 scsi_mode_sense +EXPORT_SYMBOL vmlinux 0xef96a28a sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0xefa05990 redraw_screen +EXPORT_SYMBOL vmlinux 0xefbe03f4 pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0xefd87682 sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xefd95098 inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0xefdd70ce security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0xefde1bbe flush_dcache_range +EXPORT_SYMBOL vmlinux 0xefea8d04 __skb_checksum +EXPORT_SYMBOL vmlinux 0xeff88961 agp_generic_free_gatt_table +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf00c6fed free_netdev +EXPORT_SYMBOL vmlinux 0xf010fbcc clear_bdi_congested +EXPORT_SYMBOL vmlinux 0xf0187927 __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0xf036c9ad tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0xf038bb95 misc_deregister +EXPORT_SYMBOL vmlinux 0xf05ffa15 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0xf0619801 timekeeping_clocktai +EXPORT_SYMBOL vmlinux 0xf065f629 ioread16be +EXPORT_SYMBOL vmlinux 0xf070fe8e del_gendisk +EXPORT_SYMBOL vmlinux 0xf084a19b pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0xf087137d __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0xf08a183c touch_buffer +EXPORT_SYMBOL vmlinux 0xf09de776 get_random_int +EXPORT_SYMBOL vmlinux 0xf0e54bab swiotlb_unmap_sg_attrs +EXPORT_SYMBOL vmlinux 0xf0e57a9f bman_flush_stockpile +EXPORT_SYMBOL vmlinux 0xf0ee3bd4 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0xf0ef15b4 list_sort +EXPORT_SYMBOL vmlinux 0xf0f1246c kvasprintf +EXPORT_SYMBOL vmlinux 0xf0fd4e8f rwsem_down_read_failed +EXPORT_SYMBOL vmlinux 0xf100416a remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xf101c86d security_inode_init_security +EXPORT_SYMBOL vmlinux 0xf1066f32 tty_free_termios +EXPORT_SYMBOL vmlinux 0xf10ca3e7 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0xf10de535 ioread8 +EXPORT_SYMBOL vmlinux 0xf117da89 phy_connect +EXPORT_SYMBOL vmlinux 0xf11b6374 pme_ctx_ctrl_update_flow +EXPORT_SYMBOL vmlinux 0xf11cd6ce down_interruptible +EXPORT_SYMBOL vmlinux 0xf11e3365 pci_dev_get +EXPORT_SYMBOL vmlinux 0xf13feb57 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0xf147dcb2 hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0xf15e8999 ipmi_get_smi_info +EXPORT_SYMBOL vmlinux 0xf16636fe __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0xf170b36c i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0xf1797bd8 blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0xf183189b __ioremap_at +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1e06df1 gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0xf1e21ead ilookup5 +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1e9ab5a freezing_slow_path +EXPORT_SYMBOL vmlinux 0xf1edf275 dev_deactivate +EXPORT_SYMBOL vmlinux 0xf2016a62 lookup_one_len +EXPORT_SYMBOL vmlinux 0xf202c5cb radix_tree_insert +EXPORT_SYMBOL vmlinux 0xf20dabd8 free_irq +EXPORT_SYMBOL vmlinux 0xf21206c5 fb_set_suspend +EXPORT_SYMBOL vmlinux 0xf223b601 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0xf22881e8 lg_local_lock +EXPORT_SYMBOL vmlinux 0xf236b181 pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf247d014 sock_kfree_s +EXPORT_SYMBOL vmlinux 0xf2576cb9 ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL vmlinux 0xf25d1cfd rtnl_create_link +EXPORT_SYMBOL vmlinux 0xf26ca3e7 dev_get_drvdata +EXPORT_SYMBOL vmlinux 0xf271becc xfrm6_rcv +EXPORT_SYMBOL vmlinux 0xf2897917 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0xf296f039 iget_failed +EXPORT_SYMBOL vmlinux 0xf2a0af8f backlight_device_registered +EXPORT_SYMBOL vmlinux 0xf2b1ac8e __getnstimeofday +EXPORT_SYMBOL vmlinux 0xf2c02eed tcp_gro_receive +EXPORT_SYMBOL vmlinux 0xf2d96a9d scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0xf2f3c4b4 __register_binfmt +EXPORT_SYMBOL vmlinux 0xf2fbbf7e remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0xf3039261 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0xf30d3387 mmc_put_card +EXPORT_SYMBOL vmlinux 0xf313da4e sha_transform +EXPORT_SYMBOL vmlinux 0xf31aca61 vc_resize +EXPORT_SYMBOL vmlinux 0xf322a206 bit_waitqueue +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf346cf70 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf354f04d input_flush_device +EXPORT_SYMBOL vmlinux 0xf356df69 tty_check_change +EXPORT_SYMBOL vmlinux 0xf36682bb mdiobus_register +EXPORT_SYMBOL vmlinux 0xf366fa69 blk_end_request_all +EXPORT_SYMBOL vmlinux 0xf3712909 qman_query_congestion +EXPORT_SYMBOL vmlinux 0xf37390c7 i2c_verify_client +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf38a12b9 sock_get_timestamp +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf3a94b64 dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0xf3af1a77 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0xf3b08ea9 mdio_bus_type +EXPORT_SYMBOL vmlinux 0xf3bd1039 pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0xf3bf0bce __bitmap_complement +EXPORT_SYMBOL vmlinux 0xf3de6eea agp_free_memory +EXPORT_SYMBOL vmlinux 0xf3e16312 __napi_schedule +EXPORT_SYMBOL vmlinux 0xf3e428e2 netif_receive_skb +EXPORT_SYMBOL vmlinux 0xf3ffd85e input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0xf405d627 blk_integrity_register +EXPORT_SYMBOL vmlinux 0xf4083279 may_umount_tree +EXPORT_SYMBOL vmlinux 0xf40b2040 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0xf441ac43 ioread8_rep +EXPORT_SYMBOL vmlinux 0xf45c40be generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0xf46e3dd2 scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0xf474ccbe free_mdio_bitbang +EXPORT_SYMBOL vmlinux 0xf47b0878 mdiobus_scan +EXPORT_SYMBOL vmlinux 0xf49186c4 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0xf4a02e46 uart_suspend_port +EXPORT_SYMBOL vmlinux 0xf4a4197a tty_unlock_pair +EXPORT_SYMBOL vmlinux 0xf4bc2c8a dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4bf9989 mach_psr2_md +EXPORT_SYMBOL vmlinux 0xf4cd5ae0 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0xf4e0cae5 pme_ctx_exclusive_dec +EXPORT_SYMBOL vmlinux 0xf4e1821e ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0xf4e991bc inode_claim_rsv_space +EXPORT_SYMBOL vmlinux 0xf4e9ec88 scsi_host_get +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf51bf88b nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xf5222143 _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0xf52b2f20 cfb_copyarea +EXPORT_SYMBOL vmlinux 0xf5319280 read_dev_sector +EXPORT_SYMBOL vmlinux 0xf53cb4b3 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf53df0a5 gen_pool_free +EXPORT_SYMBOL vmlinux 0xf55b3b3d __arch_hweight16 +EXPORT_SYMBOL vmlinux 0xf5943c45 kernel_recvmsg +EXPORT_SYMBOL vmlinux 0xf5a085c4 gen_pool_destroy +EXPORT_SYMBOL vmlinux 0xf5a62ecc _memset_io +EXPORT_SYMBOL vmlinux 0xf5e1558d crash_shutdown_unregister +EXPORT_SYMBOL vmlinux 0xf5ea763e cleancache_register_ops +EXPORT_SYMBOL vmlinux 0xf5eb86ea blk_verify_command +EXPORT_SYMBOL vmlinux 0xf5ee079c nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0xf610330e unregister_netdev +EXPORT_SYMBOL vmlinux 0xf623cb9a pci_request_regions +EXPORT_SYMBOL vmlinux 0xf62f388f mmc_request_done +EXPORT_SYMBOL vmlinux 0xf6388c56 sysctl_ip_default_ttl +EXPORT_SYMBOL vmlinux 0xf63b7c71 bio_init +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf68687be __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xf68e9d13 ppp_register_channel +EXPORT_SYMBOL vmlinux 0xf699563c sock_wmalloc +EXPORT_SYMBOL vmlinux 0xf69d5b71 fib_default_rule_pref +EXPORT_SYMBOL vmlinux 0xf6bb4729 color_table +EXPORT_SYMBOL vmlinux 0xf6d7dca0 __bforget +EXPORT_SYMBOL vmlinux 0xf6e78bee __xfrm_init_state +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf711b3fd pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0xf7289d14 __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0xf72e71e9 agp_collect_device_status +EXPORT_SYMBOL vmlinux 0xf72f97a9 km_report +EXPORT_SYMBOL vmlinux 0xf741c793 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf75fa152 dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0xf7755673 pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0xf778c08b input_set_keycode +EXPORT_SYMBOL vmlinux 0xf77d641e sock_no_getname +EXPORT_SYMBOL vmlinux 0xf78d389a soft_cursor +EXPORT_SYMBOL vmlinux 0xf7a9e4de neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0xf7ac0737 inet6_add_offload +EXPORT_SYMBOL vmlinux 0xf7adcaf3 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0xf7b9a321 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0xf7e61bc8 xfrm4_prepare_output +EXPORT_SYMBOL vmlinux 0xf7f1bfda jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0xf7f1f1bd ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0xf7fcf44e ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0xf803fe39 bitmap_set +EXPORT_SYMBOL vmlinux 0xf80de9ff hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf812cff6 memscan +EXPORT_SYMBOL vmlinux 0xf827cb83 free_reserved_area +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf84b76d2 inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0xf85f8401 set_nlink +EXPORT_SYMBOL vmlinux 0xf8708bfc pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0xf89a3d62 bman_affine_cpus +EXPORT_SYMBOL vmlinux 0xf89c8e07 ida_pre_get +EXPORT_SYMBOL vmlinux 0xf8c1d72a copy_strings_kernel +EXPORT_SYMBOL vmlinux 0xf8cc6bf2 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0xf8d60f7d compat_tcp_setsockopt +EXPORT_SYMBOL vmlinux 0xf8f3940a nlmsg_notify +EXPORT_SYMBOL vmlinux 0xf8fd6355 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0xf9228003 get_immrbase +EXPORT_SYMBOL vmlinux 0xf924db78 pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0xf940a328 __next_cpu +EXPORT_SYMBOL vmlinux 0xf95308b5 blk_alloc_queue_node +EXPORT_SYMBOL vmlinux 0xf954ed11 cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0xf957e1b6 phy_ethtool_gset +EXPORT_SYMBOL vmlinux 0xf982993f bdev_stack_limits +EXPORT_SYMBOL vmlinux 0xf98bcfeb tcp_prot +EXPORT_SYMBOL vmlinux 0xf997196a generic_file_fsync +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9a9c1ec ip6_frag_init +EXPORT_SYMBOL vmlinux 0xf9ae1c83 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0xf9b79453 mmc_free_host +EXPORT_SYMBOL vmlinux 0xf9c0b663 strlcat +EXPORT_SYMBOL vmlinux 0xfa2844ea mntget +EXPORT_SYMBOL vmlinux 0xfa3c2f91 vmap +EXPORT_SYMBOL vmlinux 0xfa3dd2bf agp_put_bridge +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa7f3156 wl12xx_get_platform_data +EXPORT_SYMBOL vmlinux 0xfa85f17a abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0xfa91fa66 pskb_expand_head +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfacb239b from_kuid +EXPORT_SYMBOL vmlinux 0xfacd005d do_sync_write +EXPORT_SYMBOL vmlinux 0xfad14718 tcp_getsockopt +EXPORT_SYMBOL vmlinux 0xfad25e37 writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xfae1208d agp_generic_destroy_pages +EXPORT_SYMBOL vmlinux 0xfae67b1f cap_mmap_addr +EXPORT_SYMBOL vmlinux 0xfaef8a5d __pskb_copy +EXPORT_SYMBOL vmlinux 0xfaf98462 bitrev32 +EXPORT_SYMBOL vmlinux 0xfb30895d scsi_cmd_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xfb387602 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0xfb63d5de netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb741dbb inet_twsk_deschedule +EXPORT_SYMBOL vmlinux 0xfb7ae1fb iterate_mounts +EXPORT_SYMBOL vmlinux 0xfb94103e __clzdi2 +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbbc4079 d_alloc_name +EXPORT_SYMBOL vmlinux 0xfbc6a012 ilookup +EXPORT_SYMBOL vmlinux 0xfbf53b9e phy_find_first +EXPORT_SYMBOL vmlinux 0xfbfe103f abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0xfc02b7ad sysctl_tcp_wmem +EXPORT_SYMBOL vmlinux 0xfc134266 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0xfc28b3a4 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0xfc2fdbb2 follow_down_one +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc3b160f mempool_create_node +EXPORT_SYMBOL vmlinux 0xfc43708b path_put +EXPORT_SYMBOL vmlinux 0xfc5091a6 inet_frag_evictor +EXPORT_SYMBOL vmlinux 0xfc7f07b7 unlock_buffer +EXPORT_SYMBOL vmlinux 0xfc883d48 neigh_update +EXPORT_SYMBOL vmlinux 0xfc8e2543 unregister_filesystem +EXPORT_SYMBOL vmlinux 0xfc9e3937 __cleancache_put_page +EXPORT_SYMBOL vmlinux 0xfcaa04a0 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xfcb77cfd ipmi_free_recv_msg +EXPORT_SYMBOL vmlinux 0xfcb926cd kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xfcc2a43c utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0xfcebbd5b pme2_exclusive_set +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfcfa03ff fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0xfd6293c2 boot_tvec_bases +EXPORT_SYMBOL vmlinux 0xfd6c8152 mnt_pin +EXPORT_SYMBOL vmlinux 0xfd7684fb bdgrab +EXPORT_SYMBOL vmlinux 0xfd82e221 generic_permission +EXPORT_SYMBOL vmlinux 0xfd99623a ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xfdb6cedc _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0xfdb9b629 ioread32be +EXPORT_SYMBOL vmlinux 0xfdbe0288 pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0xfdcb496e pme_hw_flow_free +EXPORT_SYMBOL vmlinux 0xfdd18825 vfs_getattr +EXPORT_SYMBOL vmlinux 0xfded48ed enable_kernel_fp +EXPORT_SYMBOL vmlinux 0xfdee1de9 touch_atime +EXPORT_SYMBOL vmlinux 0xfdf8f3fc __generic_block_fiemap +EXPORT_SYMBOL vmlinux 0xfdf98964 find_get_pages_contig +EXPORT_SYMBOL vmlinux 0xfdfc0b3b fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe35aa4a percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0xfe4e6f59 security_path_rename +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe5dbbaa d_instantiate_unique +EXPORT_SYMBOL vmlinux 0xfe7c4287 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0xfe7de3ab crypto_sha256_update +EXPORT_SYMBOL vmlinux 0xfe80a4e1 file_open_root +EXPORT_SYMBOL vmlinux 0xfeb85801 uart_remove_one_port +EXPORT_SYMBOL vmlinux 0xfecb2b8b tty_vhangup +EXPORT_SYMBOL vmlinux 0xfed7a159 vm_event_states +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfee0a775 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0xfeebc7c4 __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0xfef96e23 __scsi_print_command +EXPORT_SYMBOL vmlinux 0xff007b75 phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0xff03e522 dev_set_mac_address +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff34ad0a pipe_unlock +EXPORT_SYMBOL vmlinux 0xff570d16 pci_set_mwi +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff6a7461 blk_queue_init_tags +EXPORT_SYMBOL vmlinux 0xff7559e4 ioport_resource +EXPORT_SYMBOL vmlinux 0xff83d3a7 __neigh_event_send +EXPORT_SYMBOL vmlinux 0xff95a442 d_set_d_op +EXPORT_SYMBOL vmlinux 0xff9ca065 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0xffb7fae8 input_free_device +EXPORT_SYMBOL vmlinux 0xffc1a679 bio_integrity_split +EXPORT_SYMBOL vmlinux 0xffd5a395 default_wake_function +EXPORT_SYMBOL_GPL crypto/af_alg 0x289197b2 af_alg_cmsg_send +EXPORT_SYMBOL_GPL crypto/af_alg 0x554d2e9f af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x58716898 af_alg_wait_for_completion +EXPORT_SYMBOL_GPL crypto/af_alg 0x5f59ffe9 af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x9214b033 af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0xbca5ffb4 af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0xe1a2a744 af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0xe5e9cdb1 af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0xf08bf126 af_alg_complete +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x04e2956f async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0xc37255c0 async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0xd0cbfb46 async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x5e078bce async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xdae8947b async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x17640bd8 async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x7816ad35 async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x965fbc93 __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xe00d0842 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x32918c10 async_xor_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xf2d1caeb async_xor +EXPORT_SYMBOL_GPL crypto/authenc 0x587ef278 crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0x79bad4c7 blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x1ead37c5 cast5_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x27278ca9 __cast5_encrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x4a2a3ca6 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1291971c __cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1e2c961f __cast6_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x78702305 cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x8f04034a __cast6_encrypt +EXPORT_SYMBOL_GPL crypto/cast_common 0x08aa6fb7 cast_s1 +EXPORT_SYMBOL_GPL crypto/cast_common 0x0c5fbf8a cast_s3 +EXPORT_SYMBOL_GPL crypto/cast_common 0xe39dd4b4 cast_s2 +EXPORT_SYMBOL_GPL crypto/cast_common 0xee83a4f3 cast_s4 +EXPORT_SYMBOL_GPL crypto/cryptd 0x01841a8f cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x1d56516e cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x30fdd0ed cryptd_alloc_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x5121b4ae cryptd_ablkcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x5201f8fe cryptd_free_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x6e0844f1 cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x76578d3f cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x7edc87c5 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xab1f3588 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xf5741dd4 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/des_generic 0xcfd9a2c0 des_ekey +EXPORT_SYMBOL_GPL crypto/lrw 0x3864eb66 lrw_free_table +EXPORT_SYMBOL_GPL crypto/lrw 0x4dc2be03 lrw_crypt +EXPORT_SYMBOL_GPL crypto/lrw 0xcd074900 lrw_init_table +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x5ddb33e9 __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x77b39cb4 __serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x8a1a99ad __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xd18895df serpent_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0x03b19c1d twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0x6c3229bb __twofish_setkey +EXPORT_SYMBOL_GPL crypto/xts 0x7a93a657 xts_crypt +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x0d8b355f ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x34f95518 ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x477da079 ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x5ff048e1 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x948ffa22 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xb885d837 ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xe43c6340 ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x0eb41485 ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x1088a42b ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x19f4206f ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x4171e96d ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x4583825a ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5eacba1f ahci_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x694f923e ahci_thread_fn +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6e05c4e7 ahci_hw_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6fff5104 ahci_sdev_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x73552d85 ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x760cdf78 ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x851f7bd3 ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8ba854ac ahci_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x9c4d969f ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x9d26fe47 ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa83d13b0 ahci_shost_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xac9eff71 ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xb349c108 ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xb9486626 ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd040646e ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd77f5c7c ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xe231a74a ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xe7938528 ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0x8ad5dda6 __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/ata/pata_sis 0xf2c24a33 sis_info133_for_sata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x14102f23 ks0108_displaystate +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x48a70518 ks0108_writedata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x4f506333 ks0108_startline +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x6edae968 ks0108_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xbf4774db ks0108_writecontrol +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xedde6df2 ks0108_page +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xfee8ef7b ks0108_address +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x00a39b58 bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0ed37f95 bcma_core_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x33386236 bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x3ec12632 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x55b4ef0d bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x5ccf94f7 bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x67a522d7 bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8131b5af bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x828ee5ee bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x85f00d00 bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8e00900e bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xa252f0d5 bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xae78deba __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb2f189ba bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xca7b8a0d bcma_find_core +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xcb54bb5b bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd7a823bc bcma_core_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe3aebfce bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe5292820 bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xed1f3841 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf3b5ca76 bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf423f972 bcma_core_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xfc35a21a bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x02ce5e71 btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x041b9dc4 btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x23564d46 btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x25906857 btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x68f59a69 btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x776a31bb btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x87e94368 btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x9a5e8fba btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xb8abb156 btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xf8b52656 btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x0b01ce0d dw_dma_shutdown +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x5827f505 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xc83deb70 dw_dma_remove +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0cc7318f edac_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x12893a0d edac_device_handle_ue +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x26a1e846 edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x3a9bb199 edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x4ca1930b edac_mc_del_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x5c34685f edac_pci_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x69259f22 edac_mem_types +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x71815b7a edac_pci_reset_delay_period +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x75f553bf edac_pci_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x7adb4e59 edac_pci_handle_npe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x7fb53ae0 edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x84c550e6 edac_mc_add_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x94865255 edac_mc_alloc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xa5b28a6e edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xa77aba14 edac_device_handle_ce +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xa78c6fd5 find_mci_by_dev +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xaa6836f6 edac_device_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc2372e34 edac_device_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc5f95b7e edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc8f2ae0e edac_pci_handle_pe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xd24b5663 edac_device_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xe0e806b1 edac_mc_free +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xeaafb1fa edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xf3804a16 edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xf4ade51f fw_card_release +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x7c4be60a bgpio_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0xc2b52cb9 bgpio_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x73b8f216 __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x8027bf1a __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xa3e391e9 drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xab2f7c22 drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf5abc9a9 drm_vm_open_locked +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x166faf0f ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x3876d553 ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x53c745da ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x6adf436b ttm_prime_fd_to_handle +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xce36343e ttm_prime_handle_to_fd +EXPORT_SYMBOL_GPL drivers/hid/hid 0x016a7b6f hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0e2bdf55 hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x14c8caa7 hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1cd605b2 hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x283f58b6 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x39a77ba2 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4906a967 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5850d8bc hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5a1f3e83 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5e6dd473 hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5e81e43a hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5ec5d5b7 hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5fdc8a23 hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x63999966 hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x73528065 hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7491ccee hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7e4c308c hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x83c182d9 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x89144630 hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8babac33 hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8ead7693 hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x90392517 hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x96531636 hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcd3f1b32 hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd2df1fe3 hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd7c83cfb hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xda295bea hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0xdedab721 hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xdf1160dd hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe0d585cc hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe4f17ed4 hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xed579a5c hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0xef2231c1 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf0b277af hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfba6bc28 hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x2f622ea1 roccat_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x8c4181ec roccat_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0xadcffb7c roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x3b94d449 roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x77442554 roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xb2095e87 roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xd1c0236e roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xe7f1ea15 roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xf74888c8 roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x0ee23919 sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x1e1746bb sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x259204d2 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x62ae2a68 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x7917e046 sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x9f541c82 sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xa3eaa992 sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xe2cceedd sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x01fd453e usbhid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x89a35355 hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x084e48f6 hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x1d822c70 hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x24530a65 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x64848eb2 hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x658054f6 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x8b0ede83 hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x99603161 hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x9b441246 hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xa4936db6 hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xbec95e49 hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xc417b6ad hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xe27fc71a hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xe48473af hsi_event +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x23f1a4f8 adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x9e09284e adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x0a48b8e3 pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x108eea85 pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x1d871236 pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x2514beb8 pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x4217f802 pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x5c36f1c3 pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x71b1992d pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xbaefe4ed pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xc62f24f4 pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xd3872ba5 pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xd4337883 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xda592b8e pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x1f2c6d24 i2c_dw_read_comp_param +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x28214634 i2c_dw_init +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x2d643d5f i2c_dw_disable_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x326291a3 i2c_dw_func +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x3d40dae3 i2c_dw_enable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5bb1170b i2c_dw_isr +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x8356d121 i2c_dw_clear_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x952acd9a i2c_dw_disable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x9f20384e i2c_dw_xfer +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xf28bb801 i2c_dw_is_enabled +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x205b69dd i2c_del_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0xd17c417e i2c_add_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x96dd9f88 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xb1171269 i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x032bd7d5 ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x376722f4 ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x47b1e34a ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x86a8496e ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xa5cb14c5 ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xc6e8a278 ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xcec111e4 ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xda98dc44 ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xebdb8bb5 ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x27ac2b64 adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x5e9264d6 adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x65b58fcf adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x7c268648 adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x839d435f adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xa9d5f180 adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xb4a1360c adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xba78c34b adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xdd123918 adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xe3974609 adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xe9224ab8 adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xf40e3397 adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x066a728e iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x19a4c6f5 iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x25986725 iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x267c0508 iio_channel_release_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2928abbf iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2a1fab3c iio_channel_stop_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x45b41909 devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x45cfaa3b iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x45ef209a devm_iio_device_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x52c03882 iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5a6697ad iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x60efebbf iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6777d739 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6b7c21e1 iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7876b955 devm_iio_trigger_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7abadca6 iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7ee6871b iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8758aa54 iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x942b2214 iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x99203b21 iio_update_demux +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9d35cce6 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9ecb1860 iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xac965ee8 iio_scan_mask_query +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xcd66f844 devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd12aa4ef iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xddef6443 iio_scan_mask_set +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe2799e4b iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe3497a53 iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe5243542 iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xeeec2a61 iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf1b2ef92 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf47408c1 iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0xaf3cfa55 input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0xf95fe7db matrix_keypad_parse_of_params +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x17cc95e7 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x37768e9e cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x3a9b9c25 cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x63e85542 cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x0f90ab41 cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x92ec5ec1 cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xbba8457b cyttsp_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x673ddde6 cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x922e3e7c cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x09608ceb wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x096fa27e wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x2dfe6f89 wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x520220c1 wm9713_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x83163d05 wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x97633504 wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x9ea8205f wm9712_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xa1669a40 wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xb738cd4b wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xb8c5d997 wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xcb65fb72 wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xeea4b2b3 wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x2231109e ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x26b90d07 ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x40597b11 ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x4a5e348e ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x6f1262ad ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x7b58ec78 ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xa4b00364 ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xb9b11064 ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xdb55e0a9 ipack_device_init +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0x23359aff unregister_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0xce1414b2 register_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x07e7b094 gigaset_stop +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x1785f069 gigaset_skb_sent +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x3d1dca72 gigaset_if_receive +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x454aa44f gigaset_debuglevel +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x7d27ae04 gigaset_skb_rcvd +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x7ec5af9d gigaset_m10x_input +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x818e4472 gigaset_isdn_rcv_err +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8772125a gigaset_initdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x88e257d7 gigaset_add_event +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x936da135 gigaset_initcs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x9488b3db gigaset_handle_modem_response +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xa1cf3691 gigaset_freecs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xa3151853 gigaset_dbg_buffer +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xa674a074 gigaset_freedriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xaf0f917c gigaset_blockdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xc98cc099 gigaset_shutdown +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xde4f4b91 gigaset_fill_inbuf +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xe6a84e55 gigaset_start +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xff35fbdf gigaset_m10x_send_skb +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x278ddc54 lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x3441db80 lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x43e9e5b4 lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x5ddfe2eb lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xab513997 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xbcf2dd7c lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xcb37e16d lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xe6705e97 lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xf7bfe012 lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xfcda82d6 lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xfd1faac9 lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x749e05f2 ledtrig_flash_ctrl +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x7903e46e ledtrig_torch_ctrl +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x01a7b085 wf_get_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x022b65f0 wf_register_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x03be5c3b wf_put_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x0a0527be wf_register_client +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x101dff17 wf_find_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x214edcaf wf_get_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x5c283a4d wf_put_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x75147afa wf_set_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x7d19b864 wf_unregister_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x7d352e4a wf_unregister_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x94765fac wf_critical_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xa2f19a49 wf_is_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xbcace2a5 wf_unregister_client +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xc16d07f4 wf_find_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xd112fbca wf_register_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xed82a14f wf_clear_overtemp +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x0ec17d44 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x26062738 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x40c27b88 __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x4c49fc16 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x51a15737 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x616b6217 __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6907ac0d __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7be42a1c __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7e532a71 __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x8a4afa11 __tracepoint_bcache_alloc_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x914361f4 __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x9272fb0f __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x938cc2b2 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa649dd21 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb157059f __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb317649e __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb493772a __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb834c124 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbb1fc0a4 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbc4fcb1e __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc1474d91 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc379085a __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc5aed8ad __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc7eda602 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xce055cbe __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe20fe821 __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe24daf87 __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe2ed0930 __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xea2303e0 __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xef1156ee __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfc131205 __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x077a4221 dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x152e57b9 dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x23a71cdb dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x30e8d5b3 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x48973bed dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x8837ef39 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb6d5c65d dm_deferred_set_add_work +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb70b342a dm_bio_prison_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xbc36eb65 dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xebd06eaf dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6aba7f5e dm_bufio_get_block_number +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x8bce6b6a dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9310ba06 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9c256008 dm_bufio_get_device_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa1d2413a dm_bufio_read +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa448e19f dm_bufio_prefetch +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa82b2066 dm_bufio_write_dirty_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xafbda3f3 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc9a3422d dm_bufio_write_dirty_buffers_async +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xcbb1bae2 dm_bufio_get +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd4bddf5c dm_bufio_issue_flush +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe6024e59 dm_bufio_release +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xebcc64a4 dm_bufio_get_block_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xeca7949e dm_bufio_client_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x12ab940b dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x222fd038 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x7071a981 dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xa17a9685 dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xa256736e dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xc7229cd5 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xfa96b346 dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xb76d949c dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xee6b81b5 dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x1b942881 dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x38efaf5a dm_region_hash_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3a18389a dm_rh_update_states +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x4430764e dm_rh_region_to_sector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x45ab972a dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x776929a5 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7774620f dm_rh_stop_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7d053fc5 dm_rh_start_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa53387c7 dm_rh_flush +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa68e1f06 dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa83588eb dm_rh_recovery_end +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xb8dd1cbb dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xcf06a693 dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xed0e14cd dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xf51aa8fc dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfad9d53a dm_rh_get_region_size +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfc62ef4e dm_rh_get_region_key +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfd93482e dm_rh_recovery_in_flight +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0054f69d dm_tm_pre_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x01445176 dm_btree_find_highest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x17c36f29 dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1cac81ac dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2025e954 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2c112836 dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f40da68 dm_bm_set_read_write +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f74609d dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x32b5f546 dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x38c75c44 dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3ad0f55b dm_bm_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x40f7bd91 dm_tm_inc +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x42dbdfc3 dm_tm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x49b35849 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x55b4bd4d dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5e6aea80 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x62c1b9ee dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x68fae9d2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x72289260 dm_block_manager_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7ade1071 dm_tm_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7b047bd9 dm_tm_create_non_blocking_clone +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x80c89b3d dm_tm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x827a42f4 dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x832bf228 dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x858c8d94 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89f1e1cc dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89f803af dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x966a8838 dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9e798e22 dm_bm_set_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9f624559 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa0bbbb49 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa13861b4 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa87c5b4d dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaee02382 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xafeda29f dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb7bad799 dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb9a6ecf8 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbd50ebbb dm_btree_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xca40abd5 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd041d62b dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd29923fb dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe44b4b9b dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xed1e1f96 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf375d009 dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf475af48 dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf5455120 dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/raid1 0x2b132a40 md_raid1_congested +EXPORT_SYMBOL_GPL drivers/md/raid10 0xc09b6e9e md_raid10_congested +EXPORT_SYMBOL_GPL drivers/md/raid456 0xa18e171c md_raid5_congested +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x0a4febbd saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x20d288c9 saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x53c00fe9 saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x5d17c5d8 saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x776d37be saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x7c9f613a saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x88eab529 saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xbaee6950 saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xbc0ecc70 saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xf122b54e saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x19b159b9 saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x47e3d797 saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x48617785 saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x7616cf9f saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x96379e51 saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xcae60bea saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xd489b843 saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x04a2b533 smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x04fc104f smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x0f809e1e sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x37d91069 smsendian_handle_tx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x4b9946eb smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x64e82983 smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x6ee9d626 smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x76d600f0 smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7c576277 smsendian_handle_message_header +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x877455f2 smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x884c5cc2 smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x8d70f0bc smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x99a81ab3 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9c2225ed smscore_translate_msg +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc359ff62 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc9b80298 sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xd7eab9c6 smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xdfa2fd8c sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xe2dec456 sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xe2ecbcb7 smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xfdf3ed98 sms_board_power +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0x4fa52ecd cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0xa0f877f4 tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0x343aa9d7 cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x106293c8 mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x12409883 mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x32589400 mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x3cbc7459 mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x53fad345 mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x59b692a0 mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x6395be96 mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x71c0d48d mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x81dcc007 mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x9b3811dc mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xa738e970 mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb326e9fc mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb9b07216 mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xbd4e209c mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xc69aae35 mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xc7d6d2a4 mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xfe03b0a3 mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x78e8be82 saa7134_s_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xa3646b2d saa7134_s_std_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xbcf88a1f saa7134_queryctrl +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xd4b5fed2 saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xfd28366b saa7134_g_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x15e2687a ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x1c8e7b88 ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x23b09bbd ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x4abec486 ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x4c7a798c ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xa07b9777 ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xc62f2047 ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x6e12246d radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0xa1f5ce65 radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x081260c0 rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x37197302 ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x553efb91 rc_core_debug +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x56459b2e rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x591bc34e rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6108bc0b rc_close +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6343ed7c rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7113a4e4 ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x7aaec2b6 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa455f8ca rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb601876a rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb64bcb7e ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xc2c391da rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd405fd87 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xdc4ee3cb ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xdc9c749c rc_open +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xdff46514 ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xe4ffe444 rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xfd387f2f rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xffe85f57 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0x3f056fa4 mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0xd8108f42 microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0xc49d8054 mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0x0886103f r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0xbc063369 tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0x4addc994 tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x561f7074 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x75d1a283 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0xe903e420 tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x995f6e93 tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0xed9870d8 tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x7f939096 tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0xb01a4556 tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0xf397a267 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x01f29799 cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x40aeedc3 cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4f648b8d cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x562ec0c6 cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x56f516ab cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x625d43c5 is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x6e6c8d87 cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x7449d7a1 cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x7acb635a cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x7c149e7c cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x7e4afe24 cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x96201752 cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x97fa711e cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x9afdaa0c cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xc033092f cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xc3a3cc7c cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xcfff89e3 cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd7841a34 cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xedb91c21 cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0xfa45c52f mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0x55ac6c22 mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x0282e3d1 em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x11ddc6a2 em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x16f7bb35 em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x259e66ee em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x3084d329 em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x4567f176 em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xaf7b7764 em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xb56e3830 em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xb71030c2 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xbc54d61a em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xc13fb411 em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xc9919402 em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd905742a em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xeeefee90 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x3e0316ea tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x94ef8ebb tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x96bbe014 tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xabc64c9b tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x01c483a9 v4l2_get_timestamp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x026c7143 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x0e75ca0d v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x0f7b645c v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x2b4c0382 v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x813f3de4 v4l2_find_nearest_format +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xaf319d83 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xe83d85c7 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x08982d59 v4l2_match_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x221d2fbc v4l2_enum_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x36e8756a v4l2_find_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x4103badb v4l2_print_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x53105839 v4l2_detect_cvt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6976cfe0 v4l2_valid_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6f344bb9 v4l2_calc_aspect_ratio +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x7eaf8e7a v4l2_detect_gtf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xb0891da2 v4l2_dv_timings_presets +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x31c52b32 v4l2_int_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x56666160 v4l2_int_ioctl_0 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x84f75e40 v4l2_int_ioctl_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xa5228b24 v4l2_int_device_try_attach_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xdc741169 v4l2_int_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x17eb0eee v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1a9bfc3a v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x21ecaa5b v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3152c224 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x39df8f98 v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x57cf3e59 v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7172c1bf v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x80fa65dd v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x94709972 v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9e0c6116 v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa1a23f11 v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa7e9ff17 v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc4c41f7e v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xdeb3cae4 v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xeb592b2a v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x00099a5e videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1f4bd921 videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x32004849 videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x3b2bf68a __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4194b8e7 videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x52909976 videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x5428d8ae videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x547ee5fd videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x56710e9e videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x64bfad1f videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x76c9347d videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x83b7e58e videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x84d8760d videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x88357b96 videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x8b35de63 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa7d41035 videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xbaa5f455 videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xbb6469e5 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc4ad2b0e videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc6cd3a36 videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xcb9a22a2 videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xdaabb107 videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xea5e7a71 videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf5c6555a videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x2aa25a8b videobuf_dma_contig_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x30bb86e5 videobuf_queue_dma_contig_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0xfb99ba11 videobuf_to_dma_contig +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x40f1c99d videobuf_dma_init_user +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x464ed2a7 videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x51d3bd6e videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x553a86d0 videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x69ba329d videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x7b37004c videobuf_dma_init_kernel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x7dcfb3c4 videobuf_dma_init_overlay +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x7fa90766 videobuf_dma_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xc44e49d9 videobuf_dma_map +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xfdc99d6e videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x5d1b684a videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x8aa0e931 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x94b36fc1 videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x0936ab17 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x0cfdf5b7 vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x18cf7c39 vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x23090128 vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x24f295f2 vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2d94a112 vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x319ff154 vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x360262a4 vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x3696db5b vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x407bcab2 vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x46f4f11c vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x4fb885b1 vb2_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x50848d22 vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x5a0a1067 vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x5ad8cfbe vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x65f640db vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x6a4c6b98 vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x6d47e016 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x71b436c5 vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x742a09bd vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x76954ad7 vb2_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x86ff052d vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x8943b978 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa2d769d1 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa3554a1a vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xad6297ce vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xafb2087f vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xbedfe76d vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xbfaecec2 vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xc14ef8b6 vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xcc8ffba2 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xded083e6 vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xeb4ff2b6 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xfb7fc0ec vb2_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0x28e5fbd3 vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0x52ed98e5 vb2_dma_contig_init_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xe57f0426 vb2_dma_contig_cleanup_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-sg 0xdf7a23a2 vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x10a0ec45 vb2_put_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x24f59da4 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x5b7c7f27 vb2_get_contig_userptr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x7fc1c748 vb2_get_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-vmalloc 0x41dac2da vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x067de917 v4l2_compat_ioctl32 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0e5c846b v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x122bb3db v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x14e82a6c v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1d49ad30 v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x299de166 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2ac76f75 v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x42d29533 v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4a8d9b71 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x533a3835 v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5b1e2091 v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5f0a4502 v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5f9f73b4 v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6562d087 v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7d49b1bf v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8b26ae71 v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x930a9856 v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x991342c9 v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9aecff83 v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9fa7b8a9 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa0dbb517 v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xad8b2375 v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbb6a3127 v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc56ad94d v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x0246c360 i2o_dma_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x20142ee1 i2o_dma_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x4df231f6 i2o_dma_realloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x771eca32 i2o_dma_map_single +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x864331e4 i2o_sg_tablesize +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x9217562a i2o_pool_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x9ea67b6d i2o_dma_map_sg +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xa81d745d i2o_pool_alloc +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x34e99e70 pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x3b8eec7e pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xe2580221 pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x199107b0 kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x32fc020f kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x874fd99b kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x99e2d7d9 kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x9f4619cd kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xb45bfe4e kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xd2adfbd2 kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xe686d969 kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x2f84e242 lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x8f739113 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xcb742f02 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x14737017 lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x16bacf54 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x1d055cb8 lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x1f1c407f lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x733fe2fd lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x9b589f94 lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xa298c73f lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x14c27a17 mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x70868462 mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xb3a9cac7 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xc788d8aa mc13xxx_common_cleanup +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xe11c748f mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xf31381e7 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x0275361e pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x07c6c611 pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x1c5d26fa pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x25b0b80e pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x2d29aad3 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x48820b78 pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x5166b816 pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x9d768c2b pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xccd82b78 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xddfd6793 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xeedc3e57 pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x1222bfb1 pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x58c04306 pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x288d9827 pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x55a8c08a pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xdec8eb56 pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xdfd19617 pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xf55ac13f pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x01a33234 retu_write +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x4fca3918 retu_read +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x04d9d30f rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x100baadc rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x111f2a03 rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x131ce86b rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x2c9ad1e4 rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x3ea7cda9 rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x525e977e rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x6f9e3da5 rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x7d767030 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x844d5a4f rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x8550fc81 rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x8c3c9d85 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x8f03b71d rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x923f8aa0 rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x95be777a rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xab81f70a rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xd3149f85 rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xd4715be4 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xdcf19f54 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xe17c8070 rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xf7f266e6 rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x03fd4ebf si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x11bf1958 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x1e560d16 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x28098aa6 si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x28d04a35 si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2b515f94 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x332e5ad4 si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x383127ba si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x40c03f18 si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x41fb30ae si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x43039ae0 si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4838243a si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4b97c438 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4c3c884d si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x56262675 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5699d574 si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x616d9571 si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6d5f8ee4 si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x6e50b575 si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x76208818 si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x78edce23 si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x790707f2 si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7a21ca9a si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7e7dde62 si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x831dcfb1 si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x945518d8 si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x96c8de33 si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa16ebf8e si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xacc969f5 si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc01193f7 si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc5c2556a si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd3085413 si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe6e403bc si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xed6b26ca si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x30c2124c sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x433562c1 sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x6f41d203 sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x74f2ea5b sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x818534f3 sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x3104fe0d tps65217_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x7eecf2b2 tps65217_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xb50f2e85 tps65217_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xcfa0668a tps65217_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/twl4030-madc 0x4362dc66 twl4030_get_madc_conversion +EXPORT_SYMBOL_GPL drivers/mfd/twl4030-madc 0x9effbf1a twl4030_madc_conversion +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0x5e0cd5a7 ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x003c9b5a cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x058bc018 cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x07dd9fca cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x8dd5d372 cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x27cb133b eeprom_93cx6_multiread +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x63d2ff63 eeprom_93cx6_wren +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x822222db eeprom_93cx6_write +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x98bb5a22 eeprom_93cx6_read +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x0b4faf9a enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x2ae4c3b4 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x4b71d6af enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xb1743358 enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xc44000e2 enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xd00a3b79 enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xe16cb057 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x098d4bff lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x0b3fe5e7 lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x25b20acb lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x39c01e05 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x487b0076 lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x7153a857 lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xabdb6191 lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xfd27a0fd lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x42b7cffd st_register +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0xb2aed73d st_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x213ca60a sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x30f72ba5 sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x319c0a76 sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x4db70e98 sdhci_send_command +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x771f1e48 sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x94ca5430 sdhci_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa9e7ec80 sdhci_enable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xc7adab80 sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xe49bab57 sdhci_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xf94f3c30 sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xf9b743a8 sdhci_disable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x44c2de93 sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x70613bb5 sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x9cd0db79 sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xa26b7059 sdhci_get_of_property +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xc3d4e8bd sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xd0b87cb1 sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xefe4b5e1 sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x10123129 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xd2253157 cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xed0c14bf cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x43a36dd7 cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xb05aa251 cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xce08e981 cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x635fe0cc cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x039be7fe cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x5c254171 cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xcb6f95a8 cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x070c82ec get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0a2bd4c8 deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0ce7af61 __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1c0fc246 mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1e587846 mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1eb09e4b mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x25b40a7a mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2b25308b mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2baa5e61 mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x38a0dbdc mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3996c1c0 __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4189d50b mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4b73e68a mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4e331100 mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5289774b mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x58b4d2ff mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5ac04b96 mtd_is_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x61f3fd05 mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6860dec7 unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x69d39286 mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6a2f3c05 mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6c448300 mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x74cb6915 register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x79fcffb6 mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8ac1ccf4 kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x93a686a9 mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9e76ff77 mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xac9c76c0 mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xad7d27b4 mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xaffa1027 get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb1897727 __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbece948d mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc570c5ef mount_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xcfbd2b34 mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd1fac580 mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd82806bc register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xdfa1a8d1 mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe7769f06 mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xeb68d6fe mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf06b17ca mtd_erase_callback +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfd1306d0 put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x524f2cf2 del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x682ac379 deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x771fc19e register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x7c871dac add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xe11624fd mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0xb2de1ed3 nand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0xec99a422 nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/sm_common 0x78920056 sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0xf551ade6 onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0xf5ea1983 onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x108063e5 ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x1141c9cc ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x12c1a4cd ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x32a3ef9f ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5cfdd22d ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x605b0c9d ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x72a58d8e ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x745a98b1 ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x7c783307 ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x96622989 ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xab47b370 ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc72c96d0 ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf3e1d8d8 ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf778d8b4 ubi_leb_read +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x8bfd40cb free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x985dbe10 c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x991d5d3f alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xd1bdeaa5 register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xddc36851 c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xe882c738 unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x0d88c4fb can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x1b13eab6 devm_can_led_init +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x222c295a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x3908e5ef can_led_event +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x5396c210 can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x5565ff09 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x634ba951 open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x78ea5b57 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x7e460b61 close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x9bab02e8 can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xa00859ef alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xa011f3ff safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xa9863a26 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb346573b can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb5d58307 alloc_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xba737e1e can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xe9024a1a free_candev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x122d4e59 unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x2eb311ba register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x5aed68bb alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x6bc66444 free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x38d7cd93 register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x7556343e alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x9287c166 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xb6501d47 unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x24fffce9 macb_get_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x5fa3be78 macb_ethtool_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x9a1591f7 macb_set_rx_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xb4e9b2cd macb_get_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xcd4eca9f macb_set_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xd2240ad4 macb_ioctl +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xeee8cb40 macb_mii_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x02bdaf98 mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x02c427cc mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0c6e1a35 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0d2948e8 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0fec2c3c mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x12240736 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x13088044 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1355f364 mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x15239fac mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x17a100fb mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x18881e85 mlx4_fmr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x196c4b5a mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1a7fccf8 mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1bdb1421 mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1ffa659c mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x240ad50a mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2638b6c4 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x268bd4ab mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2a883245 mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2e08e40a mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2fa3a020 mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x31687444 mlx4_map_phys_fmr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x32facc87 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x344e6825 mlx4_fmr_unmap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x35bd0704 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x36ef1371 mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x391a0a90 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3b240800 mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4c57e695 mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x52300274 mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x56c9ee65 mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x578978ae mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5810e266 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x59e6ca24 mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5d744565 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5f11cd59 mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6005744a mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x679d04d0 mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x68140cf6 mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6af385a8 mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6e0f4399 mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6fdbd562 mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x72325bb5 mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7289c911 mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x732cc7ac mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x76158f2f mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x77153797 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x786a7bc0 mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7ee0b591 mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x81147adb mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x81e4c7be mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8297fcbd mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x85bcb0e6 mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8e4d3b2e mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x93082b2f mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9daac32e mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9e82442d mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9fa1d506 mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa234e64a mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa2a91b47 mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa32c956a mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa4e84ea8 __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa5321211 mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa7069482 mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb0a796f7 __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb2f060a6 mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb542a3d7 mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb7128b51 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb76d0c3f mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb782986e mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbb0820de mlx4_fmr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbb6a8bd5 mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbd7dc3b7 mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbd7e33fb mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc231b4da mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc61e47a2 mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc96c7c88 mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc9beb142 mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xccd2e601 mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcd245163 mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd1587132 mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd2c54d3a mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd3854b49 mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd82551f6 mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdaa12bd4 mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdd0bd472 mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe2415f6e mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe25c1614 mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe633a545 mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe69d8ee4 mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe7250c7c mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe88ecb96 mlx4_fmr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe96a32d8 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xee548f5b mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf36fc7fb mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf4b0b86d __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf6b174e9 mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf940772c mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfbeb84ab mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xffd39cdb mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x00d0e279 mlx5_core_xrcd_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0a84bc04 mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x16b9e8a7 mlx5_core_mad_ifc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x22005f61 mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x314d8bc6 mlx5_create_map_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x44ba717e mlx5_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4c2c1ade mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4e3f5bc6 mlx5_core_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x74cd9230 mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x75693223 mlx5_destroy_unmap_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x803f9a7d mlx5_core_create_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x989a8b6a mlx5_core_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa9f8b69f mlx5_core_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbc688824 mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcd7a7f28 mlx5_core_destroy_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd6c4ef56 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf4e4d70e mlx5_core_eq_query +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x033ff242 macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x15921bd3 macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x3e678ada macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x3ff474e2 macvlan_start_xmit +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x490e4ab5 macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvtap 0x4bbb5b0f macvtap_get_socket +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x04f0285d usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x11d60c77 usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x490caa71 usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x6aa68f2c usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x0ed3c16d cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x27b68198 cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x4aadbf6e cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x844183b9 cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x8964c3bf cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xaab483c7 cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xecea3de4 cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xfe8c596c cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x038ebdf5 rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x6093138e rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x79be8b96 generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xa3e760b0 rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xa6483903 rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xaab41ab6 rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x0302e816 usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x0a938f51 usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x119ca6a4 usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x26e0e646 usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3d424300 usbnet_get_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3e791808 usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3fb30b29 usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4b143e8e usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x502e3e4a usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x56db98fd usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x5880aea2 usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x604610a7 usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x64f4d8d1 usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6648fa42 usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x70e768e9 usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7925f155 usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x7cdd06b7 usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8faa4cbe usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x94f031ec usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x97c68744 usbnet_set_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9aec100e usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa035d4ea usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xae48a681 usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc03ff8ed usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xca44e734 usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe7e5cf2c usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe85f1cc4 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe98e5690 usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xec6108be usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf1944328 usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xfbb93d4f usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xffc442dd usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x09939594 vxlan_xmit_skb +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x1ee07349 vxlan_sock_release +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x8abd7ed9 vxlan_src_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xb435205e vxlan_sock_add +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xd5b45834 vxlan_get_rx_port +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x1c6629f7 i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x679fe737 i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x6da72c84 i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x6dc6a5b5 i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x71ed9ef8 i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x7cca401e i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x9c062c36 i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xa7f5b705 i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xc0e3a673 i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xcedb7978 i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xd78efdef i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xdc77a7f7 i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xde39b8ce i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xf6e45f0e i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xfe62d232 i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xffa08db1 i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x384dbbfc cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x7724b3a5 cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x9caccd55 cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0xc65312e2 cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ipw2x00/libipw 0x48261a02 libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x16a2df38 il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x2532833a _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x32f59e18 il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x8ea7cac0 il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xac9cebbd il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x0d556623 iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1291ef1b iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x15ff49db iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x16b1d59e iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1ac36ff0 iwl_notification_wait_notify +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x36e69307 iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x37125f3c iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x371b5f25 iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x3982629e iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x3d548dab iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5671d530 iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5d0a212e iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x63a312ad __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x68f92201 iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x6b0d5d49 __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8a98c877 __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8c5d5ab3 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x92794a50 iwl_nvm_check_version +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x933281ba iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xa049e80a iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xaa6d08eb iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xac126104 __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc4f8a58f iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc67c31ed iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd70e85d2 __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xdbf5e422 iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xe8c59eab iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xf6c8972a iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x0298d067 lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x150946d6 lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x1c0f6b0f lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x21956daf lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x55637249 lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x62479a9a lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x7d45095d lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x7ec4343b __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x8348604d lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x98513e6d lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xb1906387 lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xbf6f66f1 lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xc3603555 lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xd35c47c6 lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xd3831ce7 lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf0ddc74c lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x169b4026 lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x372190a7 lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x54ef30b2 lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x5db842ce lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x98d2b0b4 lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xc85e6899 lbtf_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xcd148545 __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xf4be898f lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xfd6cc851 lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0x0535f1cd if_usb_reset_device +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0xb52c068d if_usb_prog_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x0431be00 mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x0d8c26e9 mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x0ee3699e mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x1ef14b33 mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x1f85cb88 mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x2079b6da mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x46fba671 mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x4880d120 mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x6f4cba53 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x8b041a9e mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xaaed5dae mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xc92cefe4 mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xca248940 mwifiex_deauthenticate +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xfec2720c mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x02e69c2f p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x491befa8 p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x4ea33dd6 p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x89cf591f p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x8a037bc2 p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x929c4a31 p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xc64ba1fd p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xd20ab733 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xda9b93a5 p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x06329ef8 rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x2263db47 rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x2463b0a9 rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x252ca27e rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x2c85845d rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x329e5037 rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4a6b8bc0 rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4a957c96 rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4b2a8841 rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4cccf38a rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x542cf030 rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x58addbb9 rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x5a8b840b rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x5e0cabe1 rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x69ddcaa6 rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x6bca5606 rt2800_get_tkip_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x6bf5a073 rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x6fae17f2 rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x761c290b rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x76946835 rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7bf3567c rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7d5e0679 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x829e72fc rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8c763f19 rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x9bb0e5f2 rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xa2ff1d67 rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xabc7af11 rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xade05254 rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xaf20abe5 rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb2397ae8 rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xbcc37361 rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xce8debfd rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xdbe0a884 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xdfa44004 rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe3f6d17f rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xedaace74 rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf2a6e99a rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xfb9a064f rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x128f7db5 rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x14b8b3de rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x1eb14309 rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x1f330245 rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x36baec89 rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x3cc0936e rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x43d15687 rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x4f5357a1 rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x540faafe rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x7d5a8da2 rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x80bbdcca rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xad6ce7a6 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xd31bfe46 rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x084b15a8 rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x117f4054 rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x15ba2870 rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1c7e8b21 rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x30493c30 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x374ec8be rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3a75f667 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3c3364e4 rt2x00mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x46377d72 rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x467c6bbb rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x470e4a9b rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x49a8a0e2 rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4c70d978 rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4cf3b27b rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x50f6d78a rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x57ddc881 rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6b92e68f rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6fed1949 rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x76b486dd rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x794e507f rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x798f9093 rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x79e48aa5 rt2x00mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x7effa425 rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x80c94ad4 rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x850d5b75 rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x863c795d rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x890c8ad8 rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8bc2dd20 rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x966ccea1 rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9df073fe rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa3ab8e4f rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa40babda rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb0afc918 rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb3c92b3a rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xbf8ca080 rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xcaca2793 rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xceb5d00e rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd167de62 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd8aadbbb rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xdc216c5c rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe4451756 rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe982de4c rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xee1079ca rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf07806b4 rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf25adf0a rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf39f73f1 rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x26861c7b rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x3771a33d rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x87d105a7 rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x95d393b7 rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xa541c2c3 rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x4d805706 rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x4deabcf6 rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x5e846f2a rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x6f09cab7 rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x051104bb rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x1e2c3469 rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x20952246 rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x230bfa58 rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x3236219b rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x62796bf7 rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x975c1ccb rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x99e87a1b rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x9d99262e rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xb9d366e3 rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xcb3b7811 rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xd9cb593f rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xdafc7dda rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xe70bb963 rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xf876957f rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xfec22517 rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0cf8e81f dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x77cf02ee rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb866bcf2 dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd014920e dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x0646a900 rtl8723_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x07233bdc rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x10ac4006 rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x2a9d580a rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x2dc9e47e rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x3c40456a rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x3f284d36 rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x62d8667e rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6856e82f rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6fee3a6c rtl8723_phy_set_sw_chnl_cmdarray +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x8046dc66 rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x8694a6ab rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x8d15533d rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x9d436e97 rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xa64f94d6 rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xade14709 rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xaf4d6d94 rtl8723_phy_calculate_bit_shift +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xb1b56fa0 rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xb6386470 rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xc1edb773 rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xc8b193c5 rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xcc678042 rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xcc859d1e rtl8723_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xd0bf5fb9 rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xd82224ee rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xdd5137ae rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xdd70801e rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xece1fce8 rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xfe19dc83 rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x0ae22067 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x0d0b6636 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x197d18c9 rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x241dedc1 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x476c3c90 rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x4c810b85 rtl_dbgp_flag_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x6b4de810 rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x6e21ef18 rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x8084cfc8 rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x86e4cbf4 rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x9a79ac61 rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xa6e2870b rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xb0621354 rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xc3a53d2d rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xc7075e9d rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xceb24018 rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xe0dec4ed rtl_attribute_group +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xe1cffa9a rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xe965561e rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf3e867f9 rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xc44cbb6f wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xd55fdf26 wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xedde41c1 wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x050522a6 wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0579e49e wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x08671d8b wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1083db22 wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x14510ec2 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x161c5426 wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1ca067b2 wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1d720a3e wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1ed634a4 wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x22cefcaa wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x232dee6b wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2866811b wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2a8377b1 wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3b92a754 wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x457ba47e wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x49cc9939 wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4c62511f wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x53dff67d wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x56abb117 wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5a86cf52 wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5bb814a9 wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x79a2d24d wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7dc78aaf wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x808ca3d9 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x82431bdf wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x825534df wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8599cff5 wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x86c3b7d7 wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8d076d3a wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x912cd489 wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x95c3d270 wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x98e7c652 wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9b703f8e wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa4417c62 wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa9989ba1 wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xada678e7 wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb97c8e98 wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc21052b9 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd39bb505 wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xda9ea89e wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xdbc14177 wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe91ab272 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf700665b wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x168c822a phy_pm_runtime_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x2acafa90 phy_pm_runtime_allow +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x2eb565cb of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x4a2a80d7 devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x5d88e706 phy_power_on +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x6884c1fb phy_pm_runtime_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x70f1cf42 phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x7140ee1b phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x72ea7b15 devm_phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x76a2732e phy_exit +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x8b72e4fe phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x8d665651 devm_phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xa0410d60 __of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xa345dc0d phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xb337a5ee phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xc2cce635 phy_init +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xc8e652dc of_phy_simple_xlate +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xd9d0b6a6 phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xdc9f29ec __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xf26a6bb8 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xf5e9fa23 phy_power_off +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xf92c31c9 devm_phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xfb376320 devm_phy_get +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x26ffe3bf pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0xb580d46e pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0xf8dcded7 pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x5bfa71d5 mc13xxx_parse_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x5f352b8d mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x89d4bfea mc13xxx_get_num_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xc9738423 mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xff7a1de9 mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x74ceb36f wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x937120cb wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xe7272ae0 wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xe9177a60 wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xee9fe432 wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xf0709c58 wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0x2b7ce897 wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x06ac1596 cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x077c762c cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x07de7af1 cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0f4bc797 cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x14a0ef71 cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1e3942ae cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1e5bde84 cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2936e1b0 cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x298a5516 cxgbi_ddp_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2aed2d2c cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2c9324a2 cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2d86d955 cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x30009d2f cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3379cc28 cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3412d615 cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3a5c4389 cxgbi_ddp_page_size_factor +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3d3274ed cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x44954e3f cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x50807e89 cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5083065f cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5735930f cxgbi_ddp_ppod_set +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5c38f31b cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6392adc8 cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x67dc9dc9 cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x737a71fa cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7ade4c63 cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7b1ba4fb cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8c2ba369 cxgbi_ddp_ppod_clear +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xab2ba096 cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb350efd0 cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xba3d677a cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xbc600b84 cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc49d2ee7 cxgbi_ddp_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc5b5c23f cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc6234920 cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc91ed161 cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcde94683 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xce2fba96 cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd3937265 cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd734dd5e cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xdb644ffc cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xde93f756 cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe14d034e cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe163e2a4 cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe209cd32 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe931beb4 cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x503f89b3 scsi_register_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x593a36c2 scsi_dh_handler_exist +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x802ee90c scsi_unregister_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x9ba9d2c9 scsi_dh_detach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xb202a80d scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xe041a11d scsi_dh_attach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xf2aa7fc4 scsi_dh_set_params +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xf5d65290 scsi_dh_activate +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x04dde054 fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0857dfe9 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0fb51275 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1b589143 fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1cf65fbf fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1fd26843 fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x207bfae5 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x322e3838 __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x37146bb0 fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x374c1e1c fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x3c6fd624 fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x4f5d8bc8 fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x690d6ed3 fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x6ef26aca fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x84b3d915 fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x9c5e9d41 fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x9c608893 fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xb3f6cb01 fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xe1c4d45b fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x120761db iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x6ce0e193 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x959002c7 iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xa514d588 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xab517dac iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xb06e2319 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x021bde3e iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0c708b3c iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x102d4959 iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1a3c2a34 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1d0a21bd iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x24b61c5b iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3cef1765 iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3e58ca7e iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3fb11eab iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3ff46c17 iscsi_eh_target_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x45f5bb58 iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x46edfbf7 iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4776a96a iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x48639c4c iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x569bbabd iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6ac71937 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6dd3c2d8 iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x707c5423 iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7451da41 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x882f6558 iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x88658291 iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8a23d5d7 iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x965d4bf3 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x984c34da iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x99ebbe67 __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa7fc209f iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xaaf8858a iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xae5e00e5 iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb2d95085 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc1379d41 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc8da0893 iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc940f91e iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xce4049f7 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdc73d1d0 iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xddc0b777 iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe2feea04 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe4f6947e iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xebf66c4d __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xed1d83b0 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf4cf5934 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf52f1608 iscsi_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf6ceb86f iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf743bc33 iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfb765a83 iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x170c73af iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x36b2beab iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x38def113 iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x52e7a2ff iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x5456485d iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x859225bd iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8bdde237 iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x9191d669 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x93fef2b8 iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xa8a46719 iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xaee62ad1 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xb6c4262e iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xbf530df9 iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd1c41f58 iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd5c2fc8b iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xdd010beb iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe0f5ac2f iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x06d369f3 sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x085cb067 sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0959a211 sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x127eaa4b sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1e4f202d sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3f791716 sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x47d34990 sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4b212323 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4eb31b37 sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5f2faf95 sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x61c7fec1 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x70e2eb0a sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x75bd6b80 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7631256c sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8236eb39 sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa4a0df73 sas_change_queue_type +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa620c806 sas_eh_bus_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb5b346bb sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbea665ff sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc32f95ab sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc3b096bb sas_domain_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd5591520 sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd8a88ead sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe4a7f8e3 sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xeb5931d6 sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x1d9916e3 srp_iu_put +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x654743c7 srp_iu_get +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xa644e65d srp_cmd_queue +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xb3c5fbcd srp_target_free +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xb6992150 srp_transfer_data +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xc87b0d75 srp_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x59f87492 scsi_tgt_it_nexus_create +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x6ab627e7 scsi_tgt_it_nexus_destroy +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x7b6818e9 scsi_tgt_cmd_to_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x7c6ac165 scsi_tgt_queue_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xa0a44f86 scsi_tgt_alloc_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xbd487bd6 scsi_host_put_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xc0f54266 scsi_tgt_free_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xc130eeaf scsi_host_get_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xc92c956b scsi_tgt_tsk_mgmt_request +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x01d1e7ad iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0544660b iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x088411b8 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0e79936e iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x125df812 iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1448d739 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1a174071 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1b649f91 iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1c0a0f69 iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2a941af6 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2be34ef3 iscsi_is_flashnode_conn_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3c0f1ac4 iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x3d68d7c3 iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4249854e iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4272e46b iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x44ea1959 iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4cc55295 iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x536408fe iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5d5c56b8 iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x693b594d iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6d18a0ec iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7008c6af iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x74c2c7dd iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8ad7aa3d iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8b8be54d iscsi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x94cbdfc9 iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9cd248db iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbc17eb8a iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc2d7157e iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc6e9535d iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc706f62a iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc8907daa iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd84a0457 iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe5616dc9 iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe6b3c5b5 iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf1fc7b56 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf3dc4c44 iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf5dd74ec iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf6a50da7 iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf6c6fd8b iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x5f934aa9 sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x60e9396b sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xb59e908b sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xcf788cf0 sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x79ef0fc7 srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x9f75cd3b srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xbc925f43 srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xd4bf7c8d srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xee891cc0 srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xfba2c05c srp_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x12683801 ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x35e93077 ufshcd_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x62598406 ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xc4155a57 ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xc5437012 ufshcd_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xcb6863f0 ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xa3bbd0cc spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xcd8bd7aa spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xd508e8db spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xea25ba58 spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xedff0326 spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x24c5d6ed dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x5a127d62 dw_spi_xfer_done +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x5ca495c0 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x781e528f dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x869a2a0c dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0xcfe96c36 ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x03e296e9 comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x03ec6b79 comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x046b5991 comedi_pcmcia_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x06edd2a0 comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0863411e comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0999c55a comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cbaafb9 comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x10b6afb4 comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x16537951 comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x16675568 comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x25e48838 comedi_error +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x29ab4017 comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2cb94716 comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2e7be633 comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x308ce980 comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3339d3a1 comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x35ec62ee comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x386bfea4 comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x401c1b07 comedi_buf_get +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x42931db3 comedi_pcmcia_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4d74c980 comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x51b23ba3 comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x59a66ea9 comedi_pcmcia_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5f75dead comedi_to_pcmcia_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x63ee5365 comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x69f37fd5 comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x758fdbc7 comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x75b99325 comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7a597d47 comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7ad92f10 comedi_buf_memcpy_to +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7c6ef149 comedi_buf_memcpy_from +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x830f3341 comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x84791642 comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8ab1627b comedi_pcmcia_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8e0ebc4a comedi_buf_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9976ea8b comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x9c19a64c comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xab90572b comedi_pcmcia_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xad464c24 comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb0691bb8 comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb34289bb comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb3f7d02a comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb8e0bff3 __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd557637e comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd99b99a7 comedi_pcmcia_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe55b63ae comedi_dev_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xeb465466 comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf4d5ee42 comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x45c38092 subdev_8255_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x5da460c8 subdev_8255_init_irq +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x8144a33d subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x142048d6 addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x4076da4a amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x5f40acd8 amplc_dio200_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0x88481fac amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x63373fb7 cfc_write_array_to_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0xb5a725ee cfc_read_array_from_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0xed9ff5bb cfc_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0x7c28d1ae das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x09f60e3c mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x0b447bb5 mite_bytes_written_to_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x0e4e76f4 mite_get_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x12deeec6 mite_sync_output_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x1a89603a mite_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x1f272926 mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x2d75d200 mite_setup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x4d160e9e mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x4ea0f728 mite_dma_tcr +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x50c982ab mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x52d351b6 mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x5a156d39 mite_bytes_read_from_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x63cc3743 mite_unsetup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xa92b34d2 mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xab46d4ef mite_bytes_written_to_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xbdf9ac64 mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xbf60647d mite_setup2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xce2cd05a mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xd14453a0 mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe430ea59 mite_sync_input_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xf7dc24bd mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xfa17c263 mite_bytes_read_from_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc 0x4eb43a34 labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x0b30a024 ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x17310ee8 ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x43d9b846 ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x48687648 ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x88586430 ni_tio_rinsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x89e7f0b8 ni_tio_winsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xb1fe4ac7 ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xc5c8b8c2 ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x1a2f6251 ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x5f0fd7cd ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x9aa882a2 ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xb59b1171 ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xba5eac42 ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xde12b13a ni_tio_acknowledge_and_confirm +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x225f24ef comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x431b4539 comedi_close +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x5fda3850 comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x62cc70a4 comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x7f8e282b comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x871cb5d7 comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xdf0abdf2 comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x2206b003 dwc2_handle_common_intr +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x30aecfbe dwc2_hcd_init +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xa83e57f0 dwc2_hcd_remove +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xb05a818c dwc2_set_all_params +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x1a1b5249 oslec_flush +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x2feda75b oslec_hpf_tx +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x3227a28e oslec_snapshot +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x7dc9dddd oslec_adaption_mode +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xb2c66001 oslec_create +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xc8b5a524 oslec_free +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xd370f679 oslec_update +EXPORT_SYMBOL_GPL drivers/staging/rts5139/rts5139 0xbd5a0e51 rts5139_usb_ids +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x03dbbc1a spk_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0e81c76d spk_serial_out +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0ef1d765 speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x14f06fe7 spk_serial_in_nowait +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x17c8caaa spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x2961c2b7 spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x381d82fe spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x3fdcc494 spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x475e158a synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x5c0db918 synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x62d54bfa spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x62f138bc spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x771bf71a spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e146195 synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9a888082 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb35aaab9 speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb48956f8 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc766ae09 synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xcfb4b06b synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd1b551a2 spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7e810f8 spk_serial_in +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x2145a7cd usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x3118aeca usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x31ed20fe dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x39bf8160 usbip_start_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x3a737687 usbip_event_happened +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x56433c1b usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x942dc724 usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x9fc8f8c1 sockfd_to_socket +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xbca05857 usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xcb4b070b usbip_recv +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xd02753dc usbip_header_correct_endian +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xd265ac76 usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe1ea0586 usbip_dump_header +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xef047f6c usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xf28c167b usbip_event_add +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x585ebaac n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0x06dc018d pciserial_init_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL drivers/uio/uio 0x2d32a336 uio_event_notify +EXPORT_SYMBOL_GPL drivers/uio/uio 0x364a9763 uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x54b89815 __uio_register_device +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x4f57cb6b usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x6cef6eb9 usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x1c0f9310 ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x7a2d4301 ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x170e9bea imx_usbmisc_init +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x74750d38 imx_usbmisc_init_post +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0360b5d6 usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x04baa77c usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x453cee5c usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x555f9004 usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x558172aa usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x57077140 usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5abb1869 usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5b75b33c usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x64659a8e usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6a73089e usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7291152d usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x72f82bc3 usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x74741937 usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x75068a06 usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7fd030bd usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x895f28bf usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x9397b5e7 usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x94d7075a usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x99241dcc usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xaa89a3a9 usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb69f6c93 usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xbba58449 usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xbe784cb9 usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xc80d6428 usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd66a806b usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xee3e6a69 config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf9482e74 usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xffd6ecff usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x8e27d6de gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xbe665413 gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xd6c42a02 gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xf1981607 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x172e780b usb_add_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x424a8ceb udc_attach_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xb73fb280 usb_gadget_probe_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xc62e99dd usb_gadget_map_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xcd6c3947 usb_gadget_unmap_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xcd8aa00d usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xdfb53bcc usb_gadget_set_state +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xe0a3bb3b usb_del_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xebeb56e7 usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x0a5230df fsg_common_set_nluns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x141fce2a fsg_common_remove_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x1ccb58f7 fsg_common_set_num_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x2d10b6a7 fsg_common_create_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x51707c29 fsg_common_run_thread +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x6acb4179 fsg_common_set_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x6e3f70d1 fsg_common_set_cdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x7e26d4a5 fsg_common_set_sysfs +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x99023bfc fsg_common_put +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9a0221c7 fsg_common_free_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9c497a4f fsg_common_remove_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9dc025a5 fsg_common_free_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xa46e6443 fsg_common_get +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd3ae3b65 fsg_common_create_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd468f882 fsg_common_set_ops +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xe4d1591e fsg_config_from_params +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x2d1fdcdd ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x5e71d740 ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x0a11b812 usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x0ad32506 usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x1be9e4e8 usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x2e911511 usb_ftdi_elan_edset_output +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x480d4f33 usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x62039033 usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x7db03a41 usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xb9381763 ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xe61a3a1a usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x39d8090c musb_interrupt +EXPORT_SYMBOL_GPL drivers/usb/musb/tusb6010 0x7a5aeb79 tusb_get_revision +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x3f5f966c usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xaf139c1d usb_gen_phy_init +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xc77f7058 usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0x72de7e42 isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x1631bb09 samsung_usbphy_set_type +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x20d357ea samsung_usbphy_cfg_sel +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x5f099efd samsung_usbphy_parse_dt +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x90f9c3e7 samsung_usbphy_rate_to_clksel_64xx +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xd92d9a98 samsung_usbphy_set_isolation_4210 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xe593e0b3 samsung_usbphy_get_refclk_freq +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xf98c4396 samsung_usbphy_rate_to_clksel_4x12 +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0x024f0b56 usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x1ab0809e usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x1e8283bb usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2266ca80 usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x3924be1d usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x3ae4781e usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x3b06e605 usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x3f3fc774 usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x463e57b5 usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x529f8712 usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x6b403982 usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x842f3f07 usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa086a7c5 usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa87edb46 usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xb1f4809d usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xb5f3fc88 usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xbc6a4c9a usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xcbe5f744 usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xcf8d8cdb usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xe061242b usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xea3f1286 usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xeed00397 usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x03da7c02 usb_stor_transparent_scsi_command +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x0a4362e3 usb_stor_CB_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x122763b0 usb_stor_access_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x1bc3edc2 usb_stor_sense_invalidCDB +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x1d4f0491 usb_stor_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x21a8bbdd usb_stor_Bulk_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x30ed7930 usb_stor_bulk_transfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x3235b8af usb_stor_pre_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x3a1408ad usb_stor_suspend +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x43b88c0d usb_stor_set_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x4d9a25e2 usb_stor_probe1 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x6b92b013 usb_stor_clear_halt +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x6f63c91e fill_inquiry_response +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x7bb5ad30 usb_stor_CB_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x9fc7eec0 usb_stor_bulk_srb +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xa5de51ab usb_stor_disconnect +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xb4c868b1 usb_stor_bulk_transfer_sg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xb91765ba usb_stor_ctrl_transfer +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xdd934ba1 usb_stor_post_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xec32bd7a usb_stor_probe2 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xec499b99 usb_stor_Bulk_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xf5509b0a usb_stor_reset_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xf5c45023 usb_stor_control_msg +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x0bd816f0 wa_process_errored_transfers_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x122f15ac wa_urb_enqueue_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x26b96b34 wa_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x32f2a86e rpipe_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x391cd96f rpipe_clear_feature_stalled +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x61f9f820 wa_urb_enqueue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x9673e465 __wa_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xcb55ad58 rpipe_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xcdc74148 wa_urb_dequeue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x051f251b wusbhc_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x0bb6bf5e wusb_cluster_id_get +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x1c984d03 wusbhc_b_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x3c782791 wusbhc_rh_control +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x47361384 wusbhc_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x6dd65e48 wusbhc_handle_dn +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7ec2214c wusbhc_b_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7f0b7631 wusb_dev_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x967f74da wusbhc_reset_all +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x9f84ac77 __wusb_dev_get_by_usb_dev +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x9f890333 wusbhc_giveback_urb +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xb725d128 wusb_cluster_id_put +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xc2630ae4 wusbhc_rh_start_port_reset +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xc693eebd wusbhc_mmcie_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xcd342775 wusbhc_rh_status_data +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xcd86247a wusbhc_mmcie_rm +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xdf6728f7 wusbhc_chid_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf770a6b4 wusbd +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xfe2e17d7 wusb_et_name +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x49ada641 i1480_cmd +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x6f0dccd5 i1480_rceb_check +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0xdb0d129f i1480_fw_upload +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x10bd11f6 umc_device_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x33790067 umc_bus_type +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x3523f99b __umc_driver_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x368ac6b8 umc_device_create +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x75e0484a umc_driver_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x8c0959e2 umc_match_pci_id +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x9df49a04 umc_device_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xd4b0a2b6 umc_controller_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0d78016e __uwb_addr_print +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0e4829d5 uwb_rc_alloc +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0fc02440 uwb_est_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x12d2eb1b uwb_rc_vcmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x1526e1c2 uwb_notifs_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x191d1d7a uwb_pal_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x192008ae uwb_rsv_accept +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x2034ceca uwb_rc_neh_error +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x21f17c1a uwb_rc_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x2f17cbcc uwb_rsv_destroy +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x3639ad5a uwb_rsv_create +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x3a5617d2 uwb_est_find_size +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x41ad552d uwb_rc_get_by_dev +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x46dd7b27 uwb_rc_mac_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4c1a65d1 uwb_rc_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4d57ae3c uwb_rsv_type_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4e1dddef __uwb_rc_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x567a2826 uwb_rc_ie_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5a424e39 uwb_rc_pre_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5e5d61cd uwb_rsv_terminate +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x6ae38f1f uwb_radio_start +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7af2c392 uwb_rc_post_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x809f9ade uwb_rc_reset_all +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x816b9e92 uwb_est_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x86424b8a uwb_pal_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x9805382b uwb_rc_cmd_async +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x98413234 uwb_rsv_state_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa4544979 uwb_rc_get_by_grandpa +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa8c063cc uwb_radio_stop +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xabe1696c uwb_dev_for_each +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xac97316b uwb_ie_next +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb46eb45e uwb_rc_put +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xbcebfbac uwb_rsv_modify +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc41735e8 uwb_rc_dev_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc9b095ae uwb_rsv_get_usable_mas +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd051346a uwb_rc_neh_grok +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd3516942 uwb_notifs_deregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd9f8450f uwb_rc_ie_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xdf812155 uwb_pal_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe2d7de0b uwb_rc_cmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xece9bc67 uwb_rc_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf0441f4f uwb_dev_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf0fb3f8f uwb_rsv_establish +EXPORT_SYMBOL_GPL drivers/uwb/whci 0x0519541f whci_wait_for +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x029587e9 vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x069b7c79 vhost_init_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0c55fb0e vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x19289629 vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1b75abd2 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x20accfa1 vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x25f0ee18 vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x26376bed vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x269f7a09 vhost_dev_reset_owner_prepare +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2b90780f vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2fc0f6f1 vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2ff4f66f vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x318a7183 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x39441b8f vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4b21fd0e vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x617c6d01 vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x733fe239 vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x75537fb2 vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7c489c63 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8d834768 vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x933d8177 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x95a7dd21 vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9f28b49a vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb0f81e37 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbbf81779 vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbfda0e80 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xd4f3fc62 vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xdfcb0029 vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xeebc6f3e vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf8a08baa vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf8c0d6bc vhost_log_write +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x13a9cb8a auok190x_pm +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x14a9606c auok190x_send_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x6dc12bad auok190x_send_cmdargs_pixels +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x73cb3cf8 auok190x_send_cmdargs_pixels_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x8c2e24d4 auok190x_send_command_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x9cdd4bd8 auok190x_read_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xbab0bdd2 auok190x_send_cmdargs_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xcf69c1f2 auok190x_common_probe +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xd0c3c73a auok190x_send_command +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xed72dd0c auok190x_common_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x1fcd9dbe ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x6d7ebdd2 ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x94e4c728 ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xbc9094b2 ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xd390f48e ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0xe3e7cef2 sis_free_new +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0xf0903465 sis_malloc_new +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x10c01f22 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x22783e92 unregister_virtio_driver +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x8fd39022 register_virtio_device +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0xd13de3cb register_virtio_driver +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0xeb143e48 unregister_virtio_device +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x1539cb9d virtqueue_disable_cb +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x24921a9a virtqueue_notify +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x30587845 virtqueue_get_vring_size +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x42bb3d56 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x4365848a virtqueue_add_outbuf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x5af9e483 virtqueue_is_broken +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x7d99e66f virtqueue_add_inbuf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x86d678bf virtqueue_poll +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x8c6717d3 virtqueue_enable_cb +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x92f2467b virtqueue_kick_prepare +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x95127625 vring_del_virtqueue +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x9c915eb4 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xac6aa441 virtqueue_add_sgs +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xd92d1ba2 virtqueue_get_buf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xea948494 virtqueue_kick +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xef051e60 vring_transport_features +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xf0a4120e vring_new_virtqueue +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xf8f6b2f6 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL drivers/w1/wire 0x1f0cfb37 w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0x3c8fdfc2 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x48122d3d w1_next_pullup +EXPORT_SYMBOL_GPL drivers/w1/wire 0x617dd157 w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0x7c2f2afb w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xbf05e89f w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xc4e55472 w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0xcbe26da5 w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xe1163cfb w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xede5ccf8 w1_read_block +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x40e39d58 dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x9321df95 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xa17cef16 dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xaa578ed6 dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc6dc8c2f dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xdc583c08 dlm_unlock +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x044846b3 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x09c8e374 locks_start_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x116dac2c nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x17ce645d locks_end_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x2e53c745 locks_in_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x5a4ab7d9 nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x7b3bf366 lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x9223216c nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xcb3fa863 nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xf7245fd0 nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0131fdd9 nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0a048707 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0cc81775 nfs_setlease +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x109a0af0 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x12822ea8 nfs_pageio_add_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x152a1c9a nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x157ee6eb nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x16b7042c nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x186d8d68 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x18aad7e9 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x18eb97ec nfs_generic_pagein +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1aae36d9 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1d5d7eda nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1dcf0fc5 nfs_initiate_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1e480f3a nfs_try_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x21aee3b4 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x249060ef nfs_put_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26623982 nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26c30bc5 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2cc5cd34 nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2e434fe2 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2fbbdb2f nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x304b7be1 nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x31b01d60 nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x33319f72 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x33937ec7 nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x34231c6d nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x361da697 nfs_file_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x376ecd74 nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x397f2e81 nfs_pageio_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ca31f35 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3d077227 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3de13fe7 nfs_writedata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f3116a7 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4055d5d3 nfs_readhdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x43b3ad51 nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x44985be1 nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x45d1e073 nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x471afb25 nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4859a4b0 nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4987560a nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4b58d167 nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4c8b1ee7 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cf0643f nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4ec92326 nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4f28f35d nfs_clone_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x540431e0 nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x56070a94 nfs_pageio_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5758e49d nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5c2291cd nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5dcfddd5 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e1d863a nfs_sockaddr_match_ipaddr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5ea774d1 nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6034e0c4 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x60e5a813 nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x63f2b893 nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6495e675 nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6784e242 nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6e432f68 nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6f542af3 register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x718656ff nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x728c09fd nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7830c280 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7aa26769 nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7aea316a nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c9722ba nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7f0af1fc nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7f8836fd nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7f92f2bd nfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x82382a6e nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x837df545 nfs_initiate_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8545b7bb nfs_readdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x897835b5 nfs_remount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89bc5a64 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8ad16f30 nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8cfebea4 nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8e3f5509 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8e945344 nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8fdf3def nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x907dd053 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9309e6e7 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9360d426 nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9449ebee nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x968d902a nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x985d7122 nfs_file_splice_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98c90250 nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9ee724ab nfs_destroy_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9f1c97b7 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9fd95615 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa28056a5 nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa37417f2 nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8d2d1ce nfs_callback_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaa508356 alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xab661832 nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xad31662e nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaddd4513 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xae86edc4 unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb1350caa nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb16a4981 nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb1ed88c2 nfs_fs_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb3913049 nfs_file_fsync_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb606e716 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb7aed4fb nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb9d00ab4 nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbbfba93a nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbd2e4420 nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbff8633b nfs_generic_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc35a41ac nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4ff1e9f nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5ef47d5 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc7bcd768 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc7e04b03 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc9c6f6c6 nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcef37cb1 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd2ea750c nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd47bdd19 nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd6e6c44c nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdbae6e53 nfs_file_splice_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdc085807 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdcd72f7f nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe3c85452 nfs_writehdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe43dbbb0 nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe46303ae nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe4867fbb get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe83503a6 nfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe850db77 nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe895c0f7 nfs_set_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xea5e7d97 nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xebe91ee3 nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xecf954e6 nfs_fs_mount_common +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xee4e55ff nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xef95471b nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf29234df nfs_fill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf584cdc4 nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf6b714b6 nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb7ee006 nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x06c36816 __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x08d1dd41 nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0ddfe414 pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0e307370 nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x131f6e5e nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x170f3ed6 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x25f66d04 nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2ad2bf75 pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x30ef2397 nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x311b8ee0 nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x335011a4 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3dfe6fe3 __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x471de0a9 __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x499d5828 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5ab67473 nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5eea21df pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6158d8a6 nfs4_proc_getdevicelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x66eb08a8 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x69c9ecec pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x70edbce0 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7c7280bc pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7cff8c6b pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x84fc9fe1 pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x86f60482 nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8f33ddaa nfs4_insert_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x92207c6d nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x970a85b1 pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x98c8de13 nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa283617a pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xaa8fed27 pnfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xab3dbbbf _pnfs_return_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb0cba9f7 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb5225864 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc06f690a nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcd832adb pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xce69466b pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd2894048 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd785d33c nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe86aeda5 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xec52d5f1 pnfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf4e1d26d nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf9a972c1 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfb378762 nfs41_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x6bf0e147 nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x73aff0a6 nfsacl_encode +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x14e70195 o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1d747ce3 o2hb_check_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36418553 o2net_send_message +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36a28a9e o2net_send_message_vec +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4fac377a o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x546f5db3 o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x7ec6893b o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x81a17396 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa82a8645 o2nm_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xaa0e0616 o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xae808bac o2net_register_handler +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xbaeb4700 o2hb_check_node_heartbeating_from_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc3679d7b o2hb_get_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd60f2c6c o2hb_check_local_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xdf598137 o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf1a5611d o2net_unregister_handler_list +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf56c2017 mlog_not_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xfcab0ddb o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x0b4a2809 dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x63d5bf67 dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x6e559aed dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x711cc2d2 dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7674f849 dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd7ba575e dlm_errmsg +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd8fa57a6 dlm_unregister_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xec4dd8dd dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xfb86b96f dlm_errname +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x025e2d69 ocfs2_cluster_connect_agnostic +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x0562c415 ocfs2_cluster_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x16b2e575 ocfs2_dlm_unlock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5469ce31 ocfs2_dlm_lvb_valid +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x59df316d ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x7083dbd5 ocfs2_dlm_dump_lksb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x89502fe7 ocfs2_cluster_connect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xb4bd060c ocfs2_dlm_lock_status +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbaca40f4 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbbc4ef97 ocfs2_stack_supports_plocks +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xdc823ea4 ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe2bd47db ocfs2_dlm_lock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe40cffce ocfs2_stack_glue_set_max_proto_version +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe417d940 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe546c9ab ocfs2_plock +EXPORT_SYMBOL_GPL lib/bch 0x231d70fc encode_bch +EXPORT_SYMBOL_GPL lib/bch 0x6b770f49 decode_bch +EXPORT_SYMBOL_GPL lib/bch 0x9463ff71 init_bch +EXPORT_SYMBOL_GPL lib/bch 0xbdf512de free_bch +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x7823eb67 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x9f21f362 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x1803a6ed raid6_2data_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0xe4b051cf raid6_datap_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0xfdfcb8cb raid6_call +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x201d8ea3 encode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x29fa419f decode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x300d7e57 free_rs +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x6fbb3bd9 init_rs_non_canonical +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xabda1e2e decode_rs16 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xb050f329 init_rs +EXPORT_SYMBOL_GPL net/802/garp 0x63497242 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x83e9c765 garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0x94b2da26 garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0xaaabc6c8 garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0xe4efe037 garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0xef5a7d53 garp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x14c83380 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x29a3925c mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x6a3e4252 mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0x7aa90c5e mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0xe7af7d83 mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0xfd96ea07 mrp_request_join +EXPORT_SYMBOL_GPL net/802/stp 0x14ae2105 stp_proto_unregister +EXPORT_SYMBOL_GPL net/802/stp 0x2aee0655 stp_proto_register +EXPORT_SYMBOL_GPL net/9p/9pnet 0x4baca496 p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/9p/9pnet 0xd97ef61e p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/atm/atm 0xb09faf79 register_atmdevice_notifier +EXPORT_SYMBOL_GPL net/atm/atm 0xcfb6a3da unregister_atmdevice_notifier +EXPORT_SYMBOL_GPL net/ax25/ax25 0x3284a230 ax25_register_pid +EXPORT_SYMBOL_GPL net/ax25/ax25 0xac93ae05 ax25_bcast +EXPORT_SYMBOL_GPL net/ax25/ax25 0xaeb7451e ax25_defaddr +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x01c07631 bt_debugfs +EXPORT_SYMBOL_GPL net/dccp/dccp 0x05866140 dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x096b1e7d dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x19766031 compat_dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1d99d49a dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1eecce70 dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0x280667bb dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x29b55263 dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2bcb820b dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x33c95775 dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0x48c4e127 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4e7bb9f1 dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4ec35231 dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4fb8d74b dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5341ec7a dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5cdcfb83 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5d2ecdea dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0x615a5866 dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0x66933f85 dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6f543cf0 compat_dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7c02cad8 dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x865dfeac dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0xac7e55c2 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb764c266 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbb82855e dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbb9cd064 dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbc5f1486 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbcf0084e dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc40104ba dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc6bbb6d5 dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc9370110 dccp_insert_option_elapsed_time +EXPORT_SYMBOL_GPL net/dccp/dccp 0xca741415 dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcdf5910d dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd335a170 dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd4edd836 dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd78f7479 dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xecd52366 dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0xed7a250a dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0xef325d86 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0xefcd594b dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf3017e21 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x42de0246 dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x57fbc59d dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x8b3a393d dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x99fde4f7 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xd4d3e937 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xdacfa2e5 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x54b964b1 unregister_switch_driver +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x9340202c register_switch_driver +EXPORT_SYMBOL_GPL net/ipv4/gre 0x55d82042 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0x73cdcc6c gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0x8738a45a gre_cisco_unregister +EXPORT_SYMBOL_GPL net/ipv4/gre 0xb25d6450 gre_cisco_register +EXPORT_SYMBOL_GPL net/ipv4/gre 0xc17439aa gre_build_header +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x4262f85c inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x45fcdc39 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x78558267 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x947e86ea inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xa808e7cc inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xc5f365f8 inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x2765ee89 ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x35ec5625 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x5d4b47c9 ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x75600032 ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x886a0045 ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x89695868 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x91e1643c ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xaf7f0c3a ip_tunnel_delete_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xd2249b81 ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe1823035 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe1e2ff08 ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe624e3bf ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe885ab7d ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xfc33c66b ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x18e75cdb arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0xb41264f5 ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_conntrack_ipv4 0x6d40a921 need_ipv4_conntrack +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x6b6c3d10 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_ipv4 0x1a73acb0 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_proto_gre 0x636b12c8 nf_nat_need_gre +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x0f2f0d45 tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x4d0e4dc3 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x7d3ed88a tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xb5303b15 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xca62ce2b tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0x1458025d xfrm4_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0x9d2827e5 xfrm4_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x2a46da08 ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x379c0c7e ip6_tnl_dst_check +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x884cd8bb ip6_tnl_dst_reset +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xf45bed0c ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xf9229b88 ip6_tnl_dst_store +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0xa2cab72b ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x6eb85693 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_nat_ipv6 0x462dc716 nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0x76d07fc9 xfrm6_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0xa6b107f2 xfrm6_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x02be2c8d l2tp_session_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x0fd08c76 l2tp_session_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x33ba4637 l2tp_tunnel_sock_lookup +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x48d08b8a l2tp_session_queue_purge +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x65a5cee9 l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x6bde1c7d l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x6be66395 __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x78863e28 l2tp_tunnel_sock_put +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x89f242fb l2tp_tunnel_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x90c78dce l2tp_tunnel_closeall +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xbbe4f609 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xbce74117 l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc6e9d9d6 l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd21180ab l2tp_session_find_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xddbe0120 l2tp_tunnel_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe161069a l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xf802cd68 l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0xc6460a95 l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x2378022e ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x2974c66d ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3663a36d ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4b551fa6 ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4bf42798 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5d38f601 ieee80211_set_key_tx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5f0e174b ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x74e78efe ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x922862e0 ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x9b114fd6 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd09bef08 ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd1429611 ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xdddf1028 ieee80211_iterate_active_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xe2254ec7 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xf5922cff ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x02e58cdb ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x1c00deb9 ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x29da77e6 ip_set_nfnl_get +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x36dc206d ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x4bd049c3 ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x4d1a5001 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x50d6ff47 ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x71841acf ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x795a9075 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x86a73e0c ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa2d623f3 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc41f333e ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xd48e5548 ip_set_get_ip_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xd4bbd462 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xed2434e4 ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xef13ebbe ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf1e48cac ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf3b4d4ae ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf4ba76f0 ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x0047a43e unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xa59c735f ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xfd7e2e36 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xffd3e029 ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x00db79ec nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01f84db5 nf_conntrack_set_hashsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0328661c nf_ct_l4proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x045072cd nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x102ac566 nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x11a6cf21 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x126e9069 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x12cefb09 __nf_conntrack_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1349ec31 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x19b8e6a9 nf_ct_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1af92b4d nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1c9ca21b nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1d179ba5 nf_ct_l3proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x254daacc __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2802a629 nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289c3714 nf_ct_alloc_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x34c6292a nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x364941fb nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x37386cac nf_conntrack_hash_rnd +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3ae5dc9b nf_ct_l4proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3f5b1415 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3fd2f74e nf_ct_get_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x45e7c750 nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x49a99db5 nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4c9d4eba __nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4fe411d8 nf_connlabel_match +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x51f2a3c3 nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x57d07b64 nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5826536f nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5c58373a nf_ct_l3proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5f5aefcd nf_conntrack_l4proto_tcp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5f5e6186 nf_connlabel_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62813e5c nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x63888abe nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x670ca1bb nfnetlink_parse_nat_setup_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6c32f8aa nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6d6c8d4f nf_conntrack_l4proto_tcp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6d96917b nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6e224a7a need_conntrack +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6ed51d7f nf_ct_l3protos +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6fff8279 nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x73983842 nf_ct_l4proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x75e20a3e nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7754d0c2 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x77626836 nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x77a50093 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x78f9b710 nf_ct_l3proto_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7b45bb50 nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7b5bd3ac nf_conntrack_flush_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7e75b2db __nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8a289eea __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8b364028 nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8bf75606 nf_ct_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x90ff6c9f nf_ct_invert_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x91b71d29 nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9ed3c457 nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa0fc6bb1 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa224c9f0 nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa300dfdb nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa74b3ee4 nf_conntrack_l3proto_generic +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab3d1f95 nf_ct_untracked_status_or +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab5a87e3 nf_ct_l4proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad1bb027 nf_ct_free_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaef583bc nf_ct_l3proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb165535d nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb602c57e nf_ct_l3proto_module_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc04e93c1 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc292bcc9 nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc8e17607 nf_conntrack_l4proto_udp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc9de95fc nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcdc49c3d nf_nat_seq_adjust_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcfc58b83 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd0e24856 nf_ct_l3proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd4542f0f nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd4f1cdc6 nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdf91665d nf_ct_iterate_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe165476e nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe2d836dd nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe68c2e9a nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe99eb9fc nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xedc9e7d3 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xede54003 nf_ct_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xee6386e2 nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf0a78d79 seq_print_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf1599f6e nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfad71485 nf_conntrack_l4proto_udp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfbba8c5a nf_ct_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfcb617cf nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfcb7cfef nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfdba4264 nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x2f0cb69d nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0x1c767cf4 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0x614ac778 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x5f69e6c2 set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x80a9497a nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x8c059e2d set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xcfd3d2a1 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xd810c153 set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xd877a6ac nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xea981d97 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xf0198562 nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xf0859099 nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xfc3c6ae1 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0x9ddc5e64 nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x6ee48c25 nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x786fde11 nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xacd9ba3e nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xeeb3cb06 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x13fa7d10 nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x78a58b49 nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x918dc9ed ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xa1bf09a1 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xafde0479 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xde35af0e ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xe432d679 nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xea2721de ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xf107a70f ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0x865796aa nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0x4e00d5a5 nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x06ab26fb nf_nat_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0d9bae4b nf_nat_l4proto_nlattr_to_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x131f636c nf_nat_l4proto_in_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3827b6ca nf_nat_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x39b76ed4 nf_nat_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3f52ebef nf_nat_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x47ee83aa __nf_nat_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x6c235d6a nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x883ffc19 nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x90a53262 nf_nat_l4proto_unique_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x11a006b5 synproxy_check_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x5f339439 synproxy_build_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x90298227 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xa9768305 synproxy_tstamp_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb42e336a synproxy_options_size +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xc219e9ad synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xef7db50c synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0fda3c99 nft_validate_output_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x11f44025 nft_unregister_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x18d055dd nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3d49dab7 nft_validate_input_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x405ec758 nft_data_uninit +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x42eea4ef nft_validate_data_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x66ac1571 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7755d0cf nft_do_chain_pktinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x83c4fcd2 nft_register_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x852d1574 nft_register_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x86017e2c nft_unregister_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb4dfd147 nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbdd218e7 nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd912c690 nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf8d757fa nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x1a18dbef nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x4114347b nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5706d83c nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x7b120346 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x8b15547e nfnetlink_alloc_skb +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x8d49cf22 nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x9e5c040e nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x21f6bba6 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x53d5782c nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_log 0xd875d34a nfulnl_log_packet +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x06dc461c xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0976e7de xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0c1c6f70 xt_compat_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x161d1417 xt_compat_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x29d7d936 xt_compat_target_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x3a1939b5 xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x40728a63 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4cc7a7b7 xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x4dd966bd xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x553eef64 xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5d928f7b xt_compat_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5e6539e8 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5f82f1f7 xt_compat_flush_offsets +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x691a6d69 xt_compat_calc_jump +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x73c461fb xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x7946a57e xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x807d2b2c xt_recseq +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa9f1f040 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xb6c5306b xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xba78bcf5 xt_compat_match_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xcc45948a xt_compat_match_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xdda7e19f xt_hook_unlink +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xde4d519d xt_hook_link +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe0b4971b xt_compat_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xec24fd82 xt_compat_add_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xf3c49ce9 xt_compat_target_offset +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x00204983 xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x482b6a12 xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x352a1d43 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x66aeeaf0 nci_spi_send +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0xd0300909 nci_spi_read +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x03a79a96 rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0x0e7dd5a3 rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0x13f78ee6 rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0x2c5c5514 rds_message_add_rdma_dest_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3101936e rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3617144f rds_page_copy_user +EXPORT_SYMBOL_GPL net/rds/rds 0x3748af59 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x3b4fc0fc rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x472b6a06 rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x50cbe7b3 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x58ef4920 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0x63c15a3a rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x6ac3863a rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0x6ac3c047 rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0x73107efc rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0x73aac73d rds_message_populate_header +EXPORT_SYMBOL_GPL net/rds/rds 0x7bc62829 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x7e6cb3d5 rds_send_get_message +EXPORT_SYMBOL_GPL net/rds/rds 0x89c40bd7 rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0x8a7645f1 rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x8d33aa6d rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0xb359b3a0 rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0xb9095bf9 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0xbf72b307 rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0xbfebc72b rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc7e065b1 rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0xce8a8850 rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0xd88460fe rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0xee8587eb rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0x9c44c5cb rxrpc_register_security +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0x9e295e75 rxrpc_unregister_security +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x00c52ef5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x2430353a gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x65d664d1 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x8d1a827e svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xb5dea7ef g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xceef24d8 gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xf8b2ff6e g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x00d33d6f xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x023e21e0 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x02ce5e92 xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x03b7905d xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04333433 rpc_protocol +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x045834e9 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04ac418a svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x053e5553 rpcauth_key_timeout_notify +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0aea4ca2 sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b9037a2 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0bf1871d svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c9f0662 rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0d1004a1 xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f668ba9 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x126a8cce svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x191b5feb rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1d0f6305 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1ea9958b rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f2a9970 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x206374ff rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x21773d43 __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x237314b8 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x24471e0a svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x24b8c236 rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x256f51b9 write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x27eb1e27 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x29010389 rpcauth_cred_key_to_expire +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x29689100 xprt_lock_and_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2b1d1d49 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2cbc0660 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2d585cd6 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2db50037 svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eec63c9 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3030e8bf xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x30549942 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x30b959ef rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31d2c95b xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x329ad2b1 svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x335693a8 rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x348e3dec rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x35c68168 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36a0e38a rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3703a120 svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a40aa70 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a6f5c55 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3c71ed14 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3cf39e6e xprt_set_retrans_timeout_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3d6749db svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3daca8bd svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f88b984 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f9733d2 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3fc9d74d read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x42118f06 rpcauth_generic_bind_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4218f247 rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x423fb6ea svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x432e50d3 svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4464fdd7 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x45deebb9 rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x46ab54c0 _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x49192de4 rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4badef4c sunrpc_cache_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4c66ec4a rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d3d7c07 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e5e04db xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4f241da9 xdr_partial_copy_from_skb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x52264fd4 svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53e3441b rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x55623e4e sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x564cc2aa xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x576642c0 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x57bf1ba5 bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x57ed79b6 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a281c82 rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5e88be6d cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5fdae5f1 rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x63bb1fd7 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x63ef1de8 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x65110cfe xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x656fe1c5 sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x695ff2db cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6afb6d5d rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6b619c31 xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6bf40db2 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6c9fb2f9 rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x70447758 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x72a9db60 svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x75be36c0 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7708ced9 rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x776b79d6 rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x790332a9 svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7ba0536a xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f7c4d4c xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f7f8ed9 xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80064d5b rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80951b28 rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x812993ea xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x81bd9ee9 rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x848d8b4b rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x84dd3aab rpc_lookup_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x867dfdc7 rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x86daf8b7 rpc_rmdir +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8885ef91 rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8be2a295 rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8ca4e403 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8fc32c99 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9115a1c2 xprt_set_retrans_timeout_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x91270562 xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x91a5a300 svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x91ae45a7 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x940a9bb6 auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9475fcb2 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9556ac9d xdr_buf_read_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98b75d64 rpcauth_list_flavors +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x99d016af rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9aac15bc rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9db9a29a xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa25d2583 rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa280a371 xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa2f9a2dd xs_swapper +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa30c8928 unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa33944a0 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa679d71f auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa6c1c73f svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaab75c18 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xab173ea7 rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xabda5dd9 rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xafede133 rpc_print_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb106cf47 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb10cda7a rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb212a38e svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb35492b6 rpc_lookup_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb418980a auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb4c4a5bc cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb5bdeb13 svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb6c5c17c rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb8e7fd7c xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb8f23a12 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb93008e8 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbc367439 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbd71d943 svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbdfa4e59 rpc_get_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbe677702 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbfcb3099 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc18ee5dc xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3880471 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3cd4eb2 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xca05b1ca svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xca350778 svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcaebfc3b svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcaf7ea2a rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xccc48f4b rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce537a85 xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcf657699 rpc_task_reset_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd04e822e rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd14bf09d cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd1da8fb2 xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd269f9c6 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd28bd26d svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd37fa287 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd71f372e xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd9c4c2c5 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdaea3e53 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdc0db124 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdc0e5662 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdd5ea3d4 xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xde1538ec rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdec331b4 svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdf49f91f rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1ac2bb8 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe2531501 sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe46dc66b svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe4b88672 xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5b80bf1 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe6e9e647 rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe74357ee xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe7c5b636 svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeae6590e rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xec0ba020 xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xec25b325 rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf05dcba7 rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf1177523 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf2789ee2 svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf33233e4 rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf33d32a0 xdr_skb_read_bits +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf498cd7e rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf6335332 svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf69a1ac1 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf7a8b206 xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf891f2df svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf89c3b5d svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9d1164c rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfc5b09a9 rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe1b89d3 rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe2cfc2a rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0c79d5ef vm_sockets_get_local_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x15c0c57c vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x1790c28d vsock_core_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x19869c54 vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x20f9e516 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2d72ece0 vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x43c15623 vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x59d943c8 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x5cd65ca9 vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x79bc90c7 vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7f730c80 vsock_core_exit +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x949f5ebc __vsock_create +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x970b77bc vsock_pending_work +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x978cedc2 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9d041499 vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb994ac73 vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc67727ca vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xcea78d2a vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/wimax/wimax 0x12992c03 wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0x1507c287 wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0x37846132 wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0x3d89437f wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x4c3db861 wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0x516919bc wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0x70889a4e wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0xa796a078 wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0xce6da75a wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0xe0c193ca wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0xe960f3d0 wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0xeeac3729 wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xfb73f1bd wimax_msg_send +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x0c433111 cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x18ff634d cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x1de6d690 cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x4368b85f cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x473af379 cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x49966fd2 cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x65cc1adb cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x8dec5cc5 cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x94d11c56 cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xd0bd08bc cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xf285e5a6 cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x00778770 xfrm_ealg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x056bb269 xfrm_ealg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0a575945 xfrm_count_pfkey_auth_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0b9e5852 xfrm_aead_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x28e23139 xfrm_probe_algs +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x74e1a843 xfrm_aalg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7a8ca627 xfrm_count_pfkey_enc_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7c30b8c7 xfrm_calg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x92dbc6c1 xfrm_aalg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xbc8b0f41 xfrm_calg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xce7a55c1 xfrm_ealg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xe122af95 xfrm_aalg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x2335fc92 ipcomp_destroy +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x86baf278 ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xdd8e99f9 ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xefa4966c ipcomp_init_state +EXPORT_SYMBOL_GPL sound/core/snd 0x2f7001a2 snd_kctl_jack_report +EXPORT_SYMBOL_GPL sound/core/snd 0x3ca17104 __snd_printk +EXPORT_SYMBOL_GPL sound/core/snd 0x6380e9c3 snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL sound/core/snd 0xa6cd93d0 snd_ctl_activate_id +EXPORT_SYMBOL_GPL sound/core/snd 0xcfb54de7 snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/core/snd 0xd7c432ba snd_kctl_jack_new +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x74e5ad5e snd_compress_register +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x76b1333b snd_compress_deregister +EXPORT_SYMBOL_GPL sound/core/snd-compress 0xebe2ad10 snd_compress_new +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x65359aa0 snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x69498ecb snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x216364cf snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x4bc6bfe7 snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x7b4caedb snd_ak4113_create +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xc0836c19 snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xeb7aee6f snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xef47cfb3 snd_ak4113_build +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x005670ae snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x00658004 snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x02e8e9a5 snd_hda_add_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x09891531 snd_hda_gen_spec_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x09dcd963 snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0c4e6402 snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0eaafbe3 snd_hda_jack_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x11953c12 snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x180ca842 snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x18ee2ca4 snd_hda_bus_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1a23fb58 snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1b012218 snd_hda_bus_reboot_notify +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1c3027bb snd_hda_bind_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1e0e3f83 snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x20d94602 query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x21a417c2 snd_hda_check_board_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x24865f39 is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x24e9904f snd_hda_jack_tbl_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x266913bd snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x26fb79e2 snd_hda_get_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x282ef0b2 snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x29daf30d snd_hda_jack_tbl_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2b5ba478 snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2ef0b534 snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x30137df5 snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3024a0ee snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x32ba8be9 snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x336e2ba4 snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x344ba3e2 snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x34e35f21 snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3570987a snd_hda_parse_generic_codec +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x375cacd5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x37a19b39 snd_hda_jack_detect_enable_callback +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3990c231 snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3a959f7c snd_hda_delete_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3b33c5b0 snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3bb93038 snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3d77af60 snd_hda_is_supported_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3ff1d28c snd_hda_mixer_bind_ctls_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x411a6e1e snd_hda_codec_amp_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x470a7552 snd_hda_codec_resume_amp +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x47806135 snd_hda_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x47ae12d6 snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4b9ecea9 snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4dab1f60 snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4f193f32 snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4fc7946f snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5097b86a snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x50d2dd28 snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x522965cf snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x557ff0ea snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x575ac6bb snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5bcd3a2f snd_hda_mixer_bind_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5bdbc7f4 snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5f3544fe snd_hda_codec_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x63264b8a snd_hda_resume +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6715395b snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6a4a26c0 snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6afb32d9 snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6cc67441 snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6e11de9f snd_hda_ch_mode_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6f8d865e snd_hda_codec_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x71ca6199 snd_hda_mixer_bind_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x71dc9c42 snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x72d43e84 snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x73907ab0 snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x73ad22a5 snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x77fda27e snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7853be46 snd_hda_ch_mode_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x79041f5e snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7b0b206f snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7b8847e5 snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7c8dd2d1 snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x83c5a034 snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x85b90dca snd_hda_parse_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x86a162f7 snd_hda_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x87d332b1 snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x886d4358 snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x89ee995c snd_hda_override_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8b220732 snd_hda_sequence_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8b889473 snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8d1d94ab snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8e271cc4 snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8e4c6826 snd_hda_calc_stream_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9139ce21 snd_hda_get_sub_nodes +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x938ed37c snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x94a75143 snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x95b894a6 snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x97a35da6 snd_hda_jack_detect_state +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x995d586d snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a1517f5 snd_hda_check_board_codec_sid_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9e49f802 snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9ebb916a snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9efdd024 snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9f09ada9 snd_hda_query_supported_pcm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9fdebece snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa2827d76 snd_hda_get_jack_location +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa679a150 snd_hda_codec_resume_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa745699c snd_hda_ch_mode_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa7f3dd02 snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaa9b3eec snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xabf7dba3 snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xadbd43d3 snd_hda_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaedbfc04 snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaf6c6d40 snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb1bd045e snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb28ce92e snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb306520c snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb4c9b10b __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb4fa3ef2 snd_hda_mixer_bind_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb673959a snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb70e854a snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb8ce9c16 snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbcf46b64 snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbe3144c0 snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc0501ecc snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc23ac2ee snd_hda_codec_update_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc652fd69 snd_hda_get_jack_connectivity +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc77f395c snd_hda_suspend +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc87a980c snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcb301b6e snd_hda_get_jack_type +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcc3c7a44 snd_hda_codec_flush_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcce49795 snd_hda_bind_vol +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xce540ffb snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcff428f3 snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd06a8ff3 snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd1a6a185 snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd2cdf392 snd_hda_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd580fe19 snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd5e1b5e7 snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd6f20b09 snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd72c678d snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd7640b74 hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xda1b51b8 snd_hda_mixer_bind_ctls_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xda2290da snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdab2d46f snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdb6a8a87 snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdfe9cad7 snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdffc37f9 snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe5f17844 _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe916159b snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe96a39e1 __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xea1dbd1e snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xec36012f snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xede78134 snd_hda_codec_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeea1eb6b snd_hda_query_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf01c0a0e snd_hda_mixer_bind_ctls_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf0970a20 snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf1bb0efe snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf32cc9da snd_hda_queue_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf3a0b194 snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfb636d29 snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfc094132 snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfca2ff2f snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfe3f765a snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xffc9786c snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x3a03e429 atmel_pcm_free +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0xcf64e1a2 atmel_pcm_new +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0xddc702d2 atmel_pcm_mmap +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x032ec2c1 snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x056333ae snd_soc_codec_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x06dceffb snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x099555f3 snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0a4d1130 snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0cdea2dd snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0f2e7be8 snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0f716deb snd_soc_unregister_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1047a84b snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1865b77f snd_soc_dapm_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x20a6587c snd_soc_info_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x228bd9fa snd_soc_dapm_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x238fd909 snd_soc_dapm_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x23a750bb snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x23f3b0b3 snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x24c52e51 snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x253fdc5c snd_soc_new_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2a39f386 snd_soc_cache_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2baf8b36 snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2c56887c snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2d7915de snd_soc_platform_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2e762e21 snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x30354ff4 snd_soc_add_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x309f9ce5 snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x31949628 snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x336270e5 snd_soc_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x345b9180 dapm_regulator_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x35f5a703 snd_soc_pm_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3772f7fc snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x37896842 snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x38a85b74 snd_soc_platform_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3a477ebb snd_soc_unregister_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3bbc445e snd_soc_debugfs_root +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3e9b45df snd_soc_update_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3ed858b0 snd_soc_get_dai_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4041f021 snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x410674f8 snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x442d3f17 snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4c1930a9 snd_soc_free_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4c9c6bb1 snd_soc_add_card_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4ce8a696 snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4d21dc7a snd_soc_bytes_put +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5422e882 snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x54d289c7 snd_soc_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5660ec26 snd_soc_dapm_get_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x574a9275 snd_soc_add_codec_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x58165a65 snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x583f5ccc snd_soc_bytes_get +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5b447603 snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5cc2b1e1 dapm_clock_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x62f02dfd snd_soc_put_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x63946fd2 snd_soc_info_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x673d682a snd_soc_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x679112a6 snd_soc_jack_get_type +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x69f00130 snd_soc_jack_report +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6b1311c4 snd_soc_lookup_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6d297e3d snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6d6fbea4 snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6e4f658b snd_soc_get_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x70ac8943 dapm_mark_io_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x70be92df devm_snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x757d09bd snd_soc_dapm_kcontrol_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x75bcbed9 snd_soc_platform_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x772f40e9 snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x77ea45c2 snd_soc_register_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7b66aba0 snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7c015a4c snd_soc_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7df30fbe snd_soc_put_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x80a781af snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x80e49113 dapm_reg_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x838c880a snd_soc_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8a44ddca snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8c4aec38 snd_soc_info_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8dde9306 snd_soc_jack_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8f368b50 snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9012ceb1 snd_soc_remove_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x91f9d443 snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x92169beb devm_snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x92c233c0 snd_soc_limit_volume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9352b3a4 snd_soc_cache_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x93f6b1cf snd_soc_dpcm_be_get_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x96587535 snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x976f1a3e snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x98a68521 snd_soc_codec_writable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x98f1efb2 snd_soc_get_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x992c1729 snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9b0ca7ca snd_soc_codec_readable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9c04ba27 snd_soc_register_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9d469c35 snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa2960611 snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa366ccb1 snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa374da23 snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa478a6f1 snd_soc_unregister_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa619e48f snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa653126d snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa8896f05 snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xad8ab718 snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xae315961 snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb183faa9 snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc045f9e6 snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc07ef27c snd_soc_test_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc0e27947 snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc17c3030 snd_soc_dapm_put_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc7ce8b21 snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xca4862b3 snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcc02f837 dapm_mark_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcd2db488 snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd0005d6c snd_soc_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd0af609f snd_soc_codec_set_cache_io +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd51faf4a snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd5a09515 snd_soc_bytes_info +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd72b865b snd_soc_cache_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd74e091e snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd9068d6e snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd9e0df02 snd_soc_dapm_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdcd18527 soc_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdf151aa2 snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe0d97e51 snd_soc_codec_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe2de5734 snd_soc_poweroff +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe3022292 snd_soc_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe69c7f30 snd_soc_cnew +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe6b2b1b9 snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe7407c33 snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe8a3ea91 snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb5cecd0 snd_soc_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb79e70f snd_soc_codec_volatile_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeffca70e dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf0319ab8 snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf3bb16f3 snd_soc_dpcm_be_set_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf54e0a5e snd_soc_unregister_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf5a15ab6 snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf5cdbe9d snd_soc_add_platform_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf79b8f77 snd_soc_update_bits_locked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfac4850d snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL vmlinux 0x00000000 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x00000000 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x00000000 compat_alloc_user_space +EXPORT_SYMBOL_GPL vmlinux 0x00000000 kern_mount_data +EXPORT_SYMBOL_GPL vmlinux 0x00000000 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x00000000 sigset_from_compat +EXPORT_SYMBOL_GPL vmlinux 0x00000000 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x0005d0c4 md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x000e13a0 ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0x0031a689 pci_ats_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x003499c0 page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0x006248f6 regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x006646f5 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0x006bc072 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x006f5876 pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x0070ef14 __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0x007c7481 alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0x009304b6 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x00c28174 spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x00c4dc87 timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x00e2166b tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0x00ebcb5d ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0x00fcf82d __kvm_set_memory_region +EXPORT_SYMBOL_GPL vmlinux 0x01010c6d klist_add_before +EXPORT_SYMBOL_GPL vmlinux 0x01014cdf ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0x01163bf6 sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0x011cf028 regulator_suspend_finish +EXPORT_SYMBOL_GPL vmlinux 0x01cb6fbc sdhci_pci_o2_probe +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x021ebfda btree_update +EXPORT_SYMBOL_GPL vmlinux 0x0261c6b8 rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0x02879c33 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x029a4c81 pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0x02a40644 cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0x02ae58dc crypto_init_ahash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x0334ec6f jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x035f0df8 blk_add_request_payload +EXPORT_SYMBOL_GPL vmlinux 0x035f8ecf kvmppc_handle_store +EXPORT_SYMBOL_GPL vmlinux 0x0360acf9 preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x0367b3b6 irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x036dd942 cpu_remove_dev_attr_group +EXPORT_SYMBOL_GPL vmlinux 0x039677ea fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0x03b7d68c pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x03e3686c ata_timing_cycle2mode +EXPORT_SYMBOL_GPL vmlinux 0x042b4900 palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0x04486e88 rcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x045b452f of_clk_get_parent_count +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x047f2b91 fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0x048b5f8d twl4030_audio_get_mclk +EXPORT_SYMBOL_GPL vmlinux 0x0490b295 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x04a6669a tps65912_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x04b03913 device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x04b5549c __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04c63d08 sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0x04df8fbc lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0x050ac233 regmap_fields_write +EXPORT_SYMBOL_GPL vmlinux 0x0511a8d3 usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0x053494cb tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0x054b1452 tps65912_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x0551f0ce tick_nohz_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x05593fde napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x05805373 trace_buffer_unlock_commit_regs +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x0599776c crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0x059bfc17 sk_unattached_filter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x05ade303 inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x05afd6df crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x05b2617c __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0x05fd1b5b pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x06054283 pcibios_unmap_io_space +EXPORT_SYMBOL_GPL vmlinux 0x0608fb5e ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0x060ef7c3 gpio_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x061dee59 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x06693795 usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0x06a629bb blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0x06acbe39 pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0x06bf60cf regmap_read +EXPORT_SYMBOL_GPL vmlinux 0x06c1d6f0 class_find_device +EXPORT_SYMBOL_GPL vmlinux 0x06c3deb2 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x06c74fed perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0x06c8edec dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x06c90406 __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x06cfb2c3 __put_net +EXPORT_SYMBOL_GPL vmlinux 0x06e42018 class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x06e7f72e cpufreq_governor_dbs +EXPORT_SYMBOL_GPL vmlinux 0x06fd7b74 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x071513d1 __pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x072d1d16 lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0x072edd79 call_srcu +EXPORT_SYMBOL_GPL vmlinux 0x0762403c edac_put_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x0768d5d9 pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x079dc62f dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x079f0e88 bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07bf905f usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x07df53b2 ata_eh_qc_retry +EXPORT_SYMBOL_GPL vmlinux 0x07f300c3 smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x07f7a253 __mmu_notifier_invalidate_range_start +EXPORT_SYMBOL_GPL vmlinux 0x086a2a78 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0x088bfa7e cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x08bc0870 compat_put_timespec +EXPORT_SYMBOL_GPL vmlinux 0x08c13a8c fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x08c9cbb7 seq_open_net +EXPORT_SYMBOL_GPL vmlinux 0x08d3c51b usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x08d7692d crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0x08f6c174 tpm_read +EXPORT_SYMBOL_GPL vmlinux 0x090ca76b sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0x091c824a machine_power_off +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x093060e9 i2c_new_device +EXPORT_SYMBOL_GPL vmlinux 0x09314591 ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0x09376b10 hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x0941ee0e gpio_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x09437748 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x09469482 kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x099668b7 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0x09b229c7 da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x09d54177 hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0x09eee894 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0x0a0d74a4 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x0a23363f public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0x0a3cb33e sec_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x0a51ae5b virq_to_hw +EXPORT_SYMBOL_GPL vmlinux 0x0a9fd3c5 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x0aa4e1ff kick_process +EXPORT_SYMBOL_GPL vmlinux 0x0aca86ce security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0x0ae9ce34 sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b3f5a95 devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0x0b4bc7c3 subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x0b55a521 __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0b6950b0 devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x0ba1da90 powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0x0bae62b1 ktime_get_monotonic_offset +EXPORT_SYMBOL_GPL vmlinux 0x0bb3af76 dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0x0bd7a213 remove_irq +EXPORT_SYMBOL_GPL vmlinux 0x0bebc6b0 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0x0bfa3a19 rcu_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x0c0b565e ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x0c0c015e ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0x0c20411f lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0x0c2cdbf1 synchronize_sched +EXPORT_SYMBOL_GPL vmlinux 0x0c58d539 clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x0c6a9d1d gfn_to_pfn_async +EXPORT_SYMBOL_GPL vmlinux 0x0c782aa1 ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0x0c886eb3 device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x0ca7a61c ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x0ca82b04 page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x0cc041ea ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x0cc1e40f crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x0ce6a26c ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0x0cf39152 __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0d07b83a driver_find +EXPORT_SYMBOL_GPL vmlinux 0x0d381522 pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x0d706d2e rh_set_owner +EXPORT_SYMBOL_GPL vmlinux 0x0d8409fd serial8250_rx_dma +EXPORT_SYMBOL_GPL vmlinux 0x0dd5df54 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0de06988 cpu_first_thread_of_core +EXPORT_SYMBOL_GPL vmlinux 0x0df48a68 ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0x0e0c3ee4 devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0e23b00f cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x0e291128 ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0x0e3dbd84 napi_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x0e4ca541 extcon_register_interest +EXPORT_SYMBOL_GPL vmlinux 0x0ecf823a static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x0ed9302e percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x0ef1207a blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x0f0dfc6f rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0f119725 dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x0f1b3c1d crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0x0f3a74f9 securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x0f3c2016 kvm_resched +EXPORT_SYMBOL_GPL vmlinux 0x0f3fdc2f css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x0f403540 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x0f61f121 dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x0f623356 anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x0f69f192 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0x0f751aea input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0x0f783bc7 spi_setup +EXPORT_SYMBOL_GPL vmlinux 0x0f829771 blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x0f91b962 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0x0fb06acb ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x0fc0e2fb adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0x0fca420c pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0x0fdda895 dma_buf_export_named +EXPORT_SYMBOL_GPL vmlinux 0x0fe112dc of_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x0fe733a3 rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x106ea4f0 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0x10953907 realmode_pfn_to_page +EXPORT_SYMBOL_GPL vmlinux 0x109779cc fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0x10e7adab of_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x10fa59fc list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0x11088904 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0x11097881 ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x111332c6 usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x1114011d threads_shift +EXPORT_SYMBOL_GPL vmlinux 0x1126c736 da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x11365d41 css_next_child +EXPORT_SYMBOL_GPL vmlinux 0x113e3702 regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0x11583a83 input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0x1172ce54 rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0x11763961 regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x119280ba input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0x119f14f9 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0x11cb0cf2 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x11f0ed69 cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x12059335 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0x121cd964 of_pci_range_parser_one +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x121ed3f3 add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0x1243f156 flush_altivec_to_thread +EXPORT_SYMBOL_GPL vmlinux 0x12459bcd platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0x124f2056 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x125d110d pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x1260d4d8 dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x126d5f2c dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0x12700d09 wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x12767983 pwm_disable +EXPORT_SYMBOL_GPL vmlinux 0x128c2ffb bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0x1293f964 sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0x12aeb447 sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x132cdc05 locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0x1360def2 ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0x136a4ee6 btree_init +EXPORT_SYMBOL_GPL vmlinux 0x13760206 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0x13921363 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x13970f11 blkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x13ad647f scatterwalk_bytes_sglen +EXPORT_SYMBOL_GPL vmlinux 0x13b06186 simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x13c748c6 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x13ce87e8 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0x13e5ea13 __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0x13e716ee clk_register_divider +EXPORT_SYMBOL_GPL vmlinux 0x13f9e570 regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0x140f9c83 dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0x1416c8d6 put_compat_timeval +EXPORT_SYMBOL_GPL vmlinux 0x14264d76 led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0x142a8be4 of_clk_get_parent_name +EXPORT_SYMBOL_GPL vmlinux 0x1436333e __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0x144b9520 debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x145b1214 regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0x147b484c pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x147f528c ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x14aaed3b devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x15026a32 snmp_mib_init +EXPORT_SYMBOL_GPL vmlinux 0x15156209 fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x152c21eb mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x15327693 pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0x1545a493 blk_queue_flush_queueable +EXPORT_SYMBOL_GPL vmlinux 0x155651b8 set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x15892417 async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x158f3a49 __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x15c21e5e nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x16000a3c dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x16115417 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x1618ab76 do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x1627856f unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x1650bf27 rcutorture_record_progress +EXPORT_SYMBOL_GPL vmlinux 0x168c5ada cgroup_taskset_next +EXPORT_SYMBOL_GPL vmlinux 0x168f2fe3 da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0x16abaaf7 posix_timer_event +EXPORT_SYMBOL_GPL vmlinux 0x16b13475 register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x16ba17c4 crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0x16f487cc scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0x170e9a89 blk_queue_bypass_end +EXPORT_SYMBOL_GPL vmlinux 0x171035b5 bus_find_device_by_name +EXPORT_SYMBOL_GPL vmlinux 0x171844de replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0x1720154e ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x1753a32f hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0x1763e9cc tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0x1769241f tps65912_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x177c338d twl_get_version +EXPORT_SYMBOL_GPL vmlinux 0x1789e121 usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x17a54f04 ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0x17b6637e rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0x180034d4 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0x1832e02e devm_rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1848d7d7 __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0x1853653c btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x18542db4 pwm_config +EXPORT_SYMBOL_GPL vmlinux 0x1863c032 tcp_death_row +EXPORT_SYMBOL_GPL vmlinux 0x1866cec2 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x1878f62b edac_err_assert +EXPORT_SYMBOL_GPL vmlinux 0x18853d89 evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x18bfda41 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x18f2c08c fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0x1900904e da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0x191cb203 sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x19212a44 usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0x19292ca8 stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0x19360df3 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0x193d48e0 trace_current_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x194dd5f5 pkey_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x19534fad pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0x1967a3d0 pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x1975cf8e blkg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x198c1084 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x199466d5 tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19a94039 register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x19aff622 eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0x19b0d461 __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0x19b31344 alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0x19b384a5 hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x19be9c6e of_get_regulator_init_data +EXPORT_SYMBOL_GPL vmlinux 0x19ce92af __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0x1a082d69 max77693_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x1a0b0fa2 kvmppc_sanity_check +EXPORT_SYMBOL_GPL vmlinux 0x1a323362 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x1a459d25 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x1a4bb391 ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x1a4c8c18 zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x1a6f7454 platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0x1a8c5907 btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x1aad3ba3 bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0x1ac50586 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x1ac90f38 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0x1acef7d2 pm_freezing +EXPORT_SYMBOL_GPL vmlinux 0x1afe9384 irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x1b239c76 blkg_prfill_stat +EXPORT_SYMBOL_GPL vmlinux 0x1b498252 tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0x1b58198a od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x1b5ceadb cgroup_unload_subsys +EXPORT_SYMBOL_GPL vmlinux 0x1b927daa __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1b9aca3f jprobe_return +EXPORT_SYMBOL_GPL vmlinux 0x1bccd76e ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x1bd06aab cpufreq_frequency_table_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x1bd09f8f ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x1c055bcc devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0x1c16bbed isa_bridge_pcidev +EXPORT_SYMBOL_GPL vmlinux 0x1c392ea0 dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x1c3a6490 regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x1c420e32 mmc_send_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0x1c570c2b max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1ca6f6b1 subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x1cbee39a ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x1cdb2147 zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0x1cfe78d1 kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL vmlinux 0x1d083ca6 shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x1d0c3577 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1d2215b7 __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0x1d228511 ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0x1d2ffe5a get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0x1d30da28 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0x1d58ae14 lpddr2_jedec_timings +EXPORT_SYMBOL_GPL vmlinux 0x1d6672b9 dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d79cf82 ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0x1da9dea9 ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0x1db652e9 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0x1dd06f26 gpiochip_add +EXPORT_SYMBOL_GPL vmlinux 0x1de054d5 of_clk_del_provider +EXPORT_SYMBOL_GPL vmlinux 0x1dfbcf4c mpic_msgr_disable +EXPORT_SYMBOL_GPL vmlinux 0x1dfd0d6b regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x1e07c8f1 i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0x1e250b35 mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x1e2a4f9c pci_enable_pri +EXPORT_SYMBOL_GPL vmlinux 0x1e3385f3 pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0x1e5b03dc pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e979964 pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0x1e9b5854 wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0x1ea19135 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x1ea69f8c irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x1eb1594f gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1edbde03 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0x1ee7f590 iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0x1ef02d1c _submit_bh +EXPORT_SYMBOL_GPL vmlinux 0x1f344f4b cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0x1f4111da device_rename +EXPORT_SYMBOL_GPL vmlinux 0x1f711522 tcp_init_congestion_ops +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f8db7f9 ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x1f92b866 spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x1fbef1e0 usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0x1fcece42 inet_twdr_twcal_tick +EXPORT_SYMBOL_GPL vmlinux 0x1feccc98 ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0x200e6a1d skb_gro_receive +EXPORT_SYMBOL_GPL vmlinux 0x2039d974 wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x204147bd fb_sys_write +EXPORT_SYMBOL_GPL vmlinux 0x2044da8f regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x2051a92f uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0x2053a081 gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL vmlinux 0x2061a22c posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0x20bc3470 orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x20de5193 kvm_disable_largepages +EXPORT_SYMBOL_GPL vmlinux 0x20df4e3f regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x20f52b61 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x20f777e8 anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x2103f9ea pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x211620df stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0x2119950c ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0x212b4e20 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x213ec16f crypto_init_spawn2 +EXPORT_SYMBOL_GPL vmlinux 0x21d36a03 kvm_hypercall +EXPORT_SYMBOL_GPL vmlinux 0x2206fb8f pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0x22160b45 regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x222a5eb7 dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x2239777f ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0x223e2f0d device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x227f60a5 __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x2296c00d crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x2297ed73 platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x22cb8392 usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0x22eac31e sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0x22f9f294 devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0x232847fc device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x23359fef sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x2337f843 usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x233c2d38 rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x235df0ce sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x2376e586 cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0x2378d857 usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x238806cf kvm_irq_has_notifier +EXPORT_SYMBOL_GPL vmlinux 0x23b3ea8a kvmppc_hv_ops +EXPORT_SYMBOL_GPL vmlinux 0x23bb315c fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x23e654b5 fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0x23ecb865 tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x24011e14 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x24088fad usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x2410c189 adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x241cba21 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x242bf586 rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0x242e0dfd regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x2447533c ktime_get_real +EXPORT_SYMBOL_GPL vmlinux 0x246b8e19 usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x249a6fae dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0x24aac4d9 crypto_aes_expand_key +EXPORT_SYMBOL_GPL vmlinux 0x24bd0f33 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x251a4527 usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0x252579f6 da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2538ad7d part_round_stats +EXPORT_SYMBOL_GPL vmlinux 0x253b0082 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x25471411 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x25533229 rtc_irq_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2563db7c led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0x25a71268 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0x25b402a4 ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0x25bb9131 sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x25da9ff8 sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x2600bae2 i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0x26058e5d gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x262f20a8 local_clock +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x26751277 raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x268f7e09 elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x26b71fb4 ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26d428ab usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0x26ef8085 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x26f632f0 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL vmlinux 0x2708857f __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x272381ee __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x274b88c5 i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x2776affd blocking_notifier_chain_cond_register +EXPORT_SYMBOL_GPL vmlinux 0x27858044 d_materialise_unique +EXPORT_SYMBOL_GPL vmlinux 0x27c0c4be eventfd_ctx_read +EXPORT_SYMBOL_GPL vmlinux 0x27c1e63f usb_amd_find_chipset_info +EXPORT_SYMBOL_GPL vmlinux 0x27df65cf blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0x27e7d953 ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x2803fd03 of_pci_msi_chip_remove +EXPORT_SYMBOL_GPL vmlinux 0x282e6e6f subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x283eed7c get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0x28432419 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0x285a5f9d percpu_ida_free +EXPORT_SYMBOL_GPL vmlinux 0x28652329 blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x286d695d crypto_larval_lookup +EXPORT_SYMBOL_GPL vmlinux 0x28a128f9 balloon_mapping_alloc +EXPORT_SYMBOL_GPL vmlinux 0x28a903c8 timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x28b7aef4 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0x28dfbc64 da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x28e2ea50 rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x28f7f5c4 find_module +EXPORT_SYMBOL_GPL vmlinux 0x28fbdb6e ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0x29414a0c dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0x29620ac6 ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0x297dcd01 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0x29adc7ab security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0x29b27fe1 raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x29bed564 rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0x29bf4f3e tpm_show_temp_deactivated +EXPORT_SYMBOL_GPL vmlinux 0x29c56b3f filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0x29d6097d md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0x29fa50c7 flush_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0x2a172350 crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0x2a2245c2 bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x2a2afab1 irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0x2a365fae ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x2a37f49d nf_unregister_afinfo +EXPORT_SYMBOL_GPL vmlinux 0x2a3b8e9e bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x2a4e6632 sysfs_schedule_callback +EXPORT_SYMBOL_GPL vmlinux 0x2a5caa7c srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2a61ce7f disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x2a69aa02 ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0x2a800b8e ftrace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x2ad1ece4 zs_get_total_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0x2ad92fbb thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0x2ae3eaf9 inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x2af6e049 devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2b12cadd __blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x2b5c303b smp_send_reschedule +EXPORT_SYMBOL_GPL vmlinux 0x2b7a6de8 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2b7a9a37 n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0x2b8d90c0 kobj_completion_del_and_wait +EXPORT_SYMBOL_GPL vmlinux 0x2b95b67d pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0x2b9716d8 power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0x2bc27f47 devres_add +EXPORT_SYMBOL_GPL vmlinux 0x2bd1aec0 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0x2bfaef4e clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x2c07885f spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c361507 device_move +EXPORT_SYMBOL_GPL vmlinux 0x2c6dc0a8 wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c97f8a2 of_reconfig_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x2cb60620 regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0x2cdb00ea spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x2ce52dca debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0x2ce98559 kcrypto_wq +EXPORT_SYMBOL_GPL vmlinux 0x2d115710 __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0x2d17a0e1 cgroup_taskset_size +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d36c57b rh_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2d413ec8 sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d4c7101 scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0x2d51cef6 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x2d54be58 regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x2d59c954 edac_handlers +EXPORT_SYMBOL_GPL vmlinux 0x2d5fc9d7 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x2d8a4266 devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x2d9a47ae __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x2db38f41 led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0x2dba276a __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x2dc5a6d1 btree_last +EXPORT_SYMBOL_GPL vmlinux 0x2ddd887e reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2decca25 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0x2e1da9fb probe_kernel_read +EXPORT_SYMBOL_GPL vmlinux 0x2e1f4b0d cpufreq_frequency_table_cpuinfo +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e2f1740 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2e45e488 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x2e6213e2 sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0x2e638ad3 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x2e698129 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0x2e749d99 dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x2e79ff8e regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x2e91cd82 inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x2ea7f8ad devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x2eb5d325 srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ec493ff alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0x2ee9f149 pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f11b7f6 cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x2f22bf51 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0x2f32db10 usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f7d2db8 regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0x2fa059f3 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0x2fa30ffd sysfs_get +EXPORT_SYMBOL_GPL vmlinux 0x2fa47526 unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x2fcae6bf usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0x2fcc75cf ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x2ffb5ff7 btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0x3006b6f5 of_pci_get_devfn +EXPORT_SYMBOL_GPL vmlinux 0x3007cde6 rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0x300e23b9 sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0x301249e9 key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0x30622195 pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0x308b733a getboottime +EXPORT_SYMBOL_GPL vmlinux 0x30b135c2 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0x30d2812d crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x30dca121 devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x3109b751 cpu_clock +EXPORT_SYMBOL_GPL vmlinux 0x31240a86 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x31617088 tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0x31859993 of_irq_to_resource_table +EXPORT_SYMBOL_GPL vmlinux 0x31a7fb6c pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x31c0c2d1 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x31dc449d thermal_generate_netlink_event +EXPORT_SYMBOL_GPL vmlinux 0x31eadc07 crypto_rng_type +EXPORT_SYMBOL_GPL vmlinux 0x321bdbb1 compat_get_timeval +EXPORT_SYMBOL_GPL vmlinux 0x32218e41 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x323bb395 ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x3256ca45 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x3260733c dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0x3263ecb7 wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x328995b5 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0x329bbbde timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x32b31a8c ktime_get_boottime +EXPORT_SYMBOL_GPL vmlinux 0x32bded08 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32c4261d rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x32c80375 kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x32cafc8b srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x32dbc1c0 dm_kill_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x32fd447a monotonic_to_bootbased +EXPORT_SYMBOL_GPL vmlinux 0x3310bf11 pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x33394c6a device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0x333df8e9 inet6_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x334d6696 sdhci_pci_o2_fujin2_pci_init +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x336154ca rcutorture_record_test_transition +EXPORT_SYMBOL_GPL vmlinux 0x337786fa usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x337e8447 class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0x339dc6af dma_buf_kmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x33a035b2 regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x33a94a45 of_irq_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x33b4ae76 usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0x33f7ab15 get_compat_timespec +EXPORT_SYMBOL_GPL vmlinux 0x33fb334e tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x3430e31c usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x3440f2c6 regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0x3465fce6 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0x346cd04d rtc_irq_set_state +EXPORT_SYMBOL_GPL vmlinux 0x347fd4b3 eventfd_ctx_get +EXPORT_SYMBOL_GPL vmlinux 0x348f8e05 rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0x349f5f47 PageHuge +EXPORT_SYMBOL_GPL vmlinux 0x34c263be dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0x34c44c5b cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x34c4a26c cpu_add_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0x34cc08d6 cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0x3534a576 lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x35599ae9 simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0x358ff60f twl_get_hfclk_rate +EXPORT_SYMBOL_GPL vmlinux 0x3593e8ab rtc_irq_register +EXPORT_SYMBOL_GPL vmlinux 0x35d47458 rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x35ea832c da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x35ec7a15 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x35eeaa88 perf_trace_buf_prepare +EXPORT_SYMBOL_GPL vmlinux 0x35f10f43 nfq_ct_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x35f165f1 devm_reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x3603e7d5 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x361e2bcc save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0x362a54c7 inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x362cb700 gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0x363979b3 regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x3666e99c tpm_release +EXPORT_SYMBOL_GPL vmlinux 0x36749eb3 rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x368f1fea static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x36943c0e save_stack_trace_tsk +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36a64e5c percpu_ida_free_tags +EXPORT_SYMBOL_GPL vmlinux 0x36c5372e inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x36e7cdd0 relay_flush +EXPORT_SYMBOL_GPL vmlinux 0x36e7d80e ata_eh_thaw_port +EXPORT_SYMBOL_GPL vmlinux 0x36f63718 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0x3706822b tpm_show_durations +EXPORT_SYMBOL_GPL vmlinux 0x37078f3f ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x370dc0ea ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0x3744ddec ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x3786c3b5 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0x37a9d78d __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x37b48662 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0x37d2c2c5 rh_dump_blk +EXPORT_SYMBOL_GPL vmlinux 0x37dfaabc arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0x3803d2af ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0x38075b36 crypto_alloc_ablkcipher +EXPORT_SYMBOL_GPL vmlinux 0x381be7c8 usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0x382accd3 page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x386196c2 tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0x38ab2f4b spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x38ab5136 devm_usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x38e0ee7c pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x38e146c2 da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x38f57702 tpm_store_cancel +EXPORT_SYMBOL_GPL vmlinux 0x391291f6 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x392defa0 seq_release_net +EXPORT_SYMBOL_GPL vmlinux 0x3964e3bd crypto_init_spawn +EXPORT_SYMBOL_GPL vmlinux 0x39705045 tcp_reno_min_cwnd +EXPORT_SYMBOL_GPL vmlinux 0x397ef9ad crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x39a4bdd3 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0x39e7368c ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x39f61c73 acop_handle_fault +EXPORT_SYMBOL_GPL vmlinux 0x39fd1b6b ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0x39fd96ff crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x3a256bd0 irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a2ebd2f devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0x3a4c01b9 da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x3a4da046 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a5f5496 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3a833377 power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0x3a911c5e cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x3a97dcff sock_update_netprioidx +EXPORT_SYMBOL_GPL vmlinux 0x3aba87fa rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0x3acdf325 twl4030_audio_enable_resource +EXPORT_SYMBOL_GPL vmlinux 0x3ad0e201 scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x3ad20d0a fuse_get_req_for_background +EXPORT_SYMBOL_GPL vmlinux 0x3ad7c1f4 pci_intx +EXPORT_SYMBOL_GPL vmlinux 0x3ad82802 of_property_read_u32_index +EXPORT_SYMBOL_GPL vmlinux 0x3ad9a92c pci_restore_ats_state +EXPORT_SYMBOL_GPL vmlinux 0x3b40b577 usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x3b52cf47 init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0x3b58cf7e debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0x3b8e83fb ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x3b9f2822 lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0x3ba94b9e usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0x3bc01078 __mmu_notifier_invalidate_range_end +EXPORT_SYMBOL_GPL vmlinux 0x3bcbc6e0 fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0x3bf48cfa of_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x3c33f665 xfrm_inner_extract_output +EXPORT_SYMBOL_GPL vmlinux 0x3c6e9d65 spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x3c8424a0 clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3c861fba inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x3c8d28cc of_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x3c9390db pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0x3ccffec8 of_irq_parse_one +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cf06147 tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x3cf15452 ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x3d3220c4 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0x3d39b6ab fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0x3d3add7f devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x3d7b5c93 regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x3da4fb3a blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x3da878d7 usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x3dc526a9 arizona_of_match +EXPORT_SYMBOL_GPL vmlinux 0x3dc916b6 crypto_fl_tab +EXPORT_SYMBOL_GPL vmlinux 0x3dd2b243 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0x3ddca3fb pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3e2e543d cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x3e2eee80 wm8400_block_read +EXPORT_SYMBOL_GPL vmlinux 0x3e2fa31f wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3e6b5b99 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e92f6a8 tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0x3e971b8d regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3ec1c0f1 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0x3ed7631e pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x3efea15e ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x3f60ec24 of_pci_msi_chip_add +EXPORT_SYMBOL_GPL vmlinux 0x3f6db736 ablkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x3f70225e led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x3f88351d of_scan_bus +EXPORT_SYMBOL_GPL vmlinux 0x3fb14423 md_ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x3fc72d3d __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x3fc88f32 crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x3fe7332a bmp085_probe +EXPORT_SYMBOL_GPL vmlinux 0x3febf86c usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x3fef7431 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x4045c494 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0x405092c6 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0x4059a3ef __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0x407b1649 crypto_attr_alg2 +EXPORT_SYMBOL_GPL vmlinux 0x4080cd99 of_pci_find_msi_chip_by_node +EXPORT_SYMBOL_GPL vmlinux 0x4081d1d4 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x408d7328 crypto_init_shash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x40943bda usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x40af0dec ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x40d46b21 crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x41259873 device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x41380016 ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0x4141c519 extcon_get_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x41435f25 regmap_update_bits_check_async +EXPORT_SYMBOL_GPL vmlinux 0x41450df4 sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x4159267e regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x417c286c uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x417cd5f6 ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x4185ada3 devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x41b9ff40 regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x41d81c5d of_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x41dfd127 cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0x41ec8941 adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x41ed7789 tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x4247860e rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0x424acc6d scatterwalk_done +EXPORT_SYMBOL_GPL vmlinux 0x42517056 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x425d4dd2 ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x42c07077 rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x430e5257 of_alias_get_id +EXPORT_SYMBOL_GPL vmlinux 0x434e3985 inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x434e8744 user_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x4371bb34 __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x43775e2c crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x4386f05b crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x43916584 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0x43969dbe rh_alloc_fixed +EXPORT_SYMBOL_GPL vmlinux 0x43a34fb8 sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x43a53735 __alloc_workqueue_key +EXPORT_SYMBOL_GPL vmlinux 0x43acc83e kvm_get_kvm +EXPORT_SYMBOL_GPL vmlinux 0x43b466b0 gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL vmlinux 0x43d72911 da903x_write +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x44074cf5 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0x4428ee1e netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0x442d62ac rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0x44404f11 kdb_register_repeat +EXPORT_SYMBOL_GPL vmlinux 0x4448ff08 bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x4463f16e blkcipher_walk_virt_block +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x44a91c58 pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0x4503cf1c eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0x450fb522 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x453d5a5c devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x454c15ae __smp_call_function_single +EXPORT_SYMBOL_GPL vmlinux 0x456eae73 trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x457b77ca of_fixed_factor_clk_setup +EXPORT_SYMBOL_GPL vmlinux 0x459233c8 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x45a1c694 screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0x45b03e1f da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x45bf1ff3 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x45d842fb fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x45fe3b79 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0x4605e1d6 sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0x460f7531 wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x46143ea6 regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x464e8884 regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0x4658a6dc evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x4672e88b __crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x467d824e crypto_alloc_instance2 +EXPORT_SYMBOL_GPL vmlinux 0x4688c96a usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x46b28de4 spi_master_resume +EXPORT_SYMBOL_GPL vmlinux 0x46b96307 crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x470fa426 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x47332a15 kvm_write_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x4749284e led_trigger_show +EXPORT_SYMBOL_GPL vmlinux 0x475503a5 ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0x4756e64e wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x477a6ec6 cpufreq_frequency_get_table +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x478b2d85 inet_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0x478cfbe2 class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47b21077 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x47f98106 stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0x480f322f xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0x48126486 vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0x4841622c blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL vmlinux 0x48e41c94 kallsyms_on_each_symbol +EXPORT_SYMBOL_GPL vmlinux 0x48e7e2a9 crypto_nivaead_type +EXPORT_SYMBOL_GPL vmlinux 0x48ff56bd wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x494b0465 task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x496662da pci_intx_mask_supported +EXPORT_SYMBOL_GPL vmlinux 0x498b9295 dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0x498d293a trace_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x4999d0f4 edac_subsys +EXPORT_SYMBOL_GPL vmlinux 0x49ac8bad get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x49c5cf2d blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0x4a2553d3 pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x4a28b68a get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x4a4595cb cgroup_taskset_first +EXPORT_SYMBOL_GPL vmlinux 0x4a5446fa nf_queue_entry_release_refs +EXPORT_SYMBOL_GPL vmlinux 0x4a785013 gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL vmlinux 0x4a8cf5cf perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x4a90160e bprintf +EXPORT_SYMBOL_GPL vmlinux 0x4aadeb9a ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0x4ab3b545 rtc_set_mmss +EXPORT_SYMBOL_GPL vmlinux 0x4ab61cbe debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0x4acbacbb debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0x4ad955c8 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x4affd08b put_compat_timespec +EXPORT_SYMBOL_GPL vmlinux 0x4b0403fc dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0x4b154305 iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0x4b351a18 ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x4b497272 regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x4b51fc87 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4b7a2f9f bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0x4b98827c rh_init +EXPORT_SYMBOL_GPL vmlinux 0x4bb50060 irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0x4bc62a81 audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4c2e1f24 clk_disable +EXPORT_SYMBOL_GPL vmlinux 0x4c368bec fuse_request_send_background +EXPORT_SYMBOL_GPL vmlinux 0x4c602bf1 __blkg_release_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4c759827 byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x4c852bba driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x4c990bff usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x4ca2a5eb gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x4ca4c9df clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x4cca00e5 devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x4ce732cb rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x4ceb5cbb devres_find +EXPORT_SYMBOL_GPL vmlinux 0x4cf275df sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x4cfbb36e pcibios_finish_adding_to_bus +EXPORT_SYMBOL_GPL vmlinux 0x4d172ccb ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x4d4e46a3 __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x4d70eb5c sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0x4d731723 shash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0x4d750b22 tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0x4da5f856 platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0x4ddcb03e regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4dea1df1 cred_to_ucred +EXPORT_SYMBOL_GPL vmlinux 0x4e0f6d8f usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x4e109192 ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0x4e18e7d7 inet_csk_compat_setsockopt +EXPORT_SYMBOL_GPL vmlinux 0x4e1a1d3c trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x4e242f5f pstore_cannot_block_path +EXPORT_SYMBOL_GPL vmlinux 0x4e3e91b3 ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0x4e72640b wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x4e82d026 ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0x4ec7b8e3 tracepoint_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f020dee public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x4f0c64d8 add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0x4f159391 __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x4f2d27c7 register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x4fc2a3da usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0x4fd4e89d ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x501fb305 pci_sriov_migration +EXPORT_SYMBOL_GPL vmlinux 0x50402810 devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x5052ccb4 crypto_ablkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x5054174d srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0x5055179d device_create +EXPORT_SYMBOL_GPL vmlinux 0x50601122 of_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x506169ba device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x5065fc2f vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0x506691f1 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x5086ac3a alg_test +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x50a444f1 fb_ddc_read +EXPORT_SYMBOL_GPL vmlinux 0x50dcb795 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x5115a70f device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x51493b6d css_next_descendant_post +EXPORT_SYMBOL_GPL vmlinux 0x514fa781 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x5166c630 rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x51846493 trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x519de6af pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x51a42538 regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0x51b65a26 rtc_lock +EXPORT_SYMBOL_GPL vmlinux 0x51d0e0ea gfn_to_page +EXPORT_SYMBOL_GPL vmlinux 0x51ec43c2 spi_alloc_master +EXPORT_SYMBOL_GPL vmlinux 0x51f71b30 crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0x51fa6700 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0x5205e64d disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL vmlinux 0x522198c3 kvm_vcpu_cache +EXPORT_SYMBOL_GPL vmlinux 0x522f538b tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x523367f1 __netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x52539107 transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x5278b4f2 regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x5292fd3c ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x52b7d9d8 crypto_unregister_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x52db9738 sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x52dd53d3 of_regulator_match +EXPORT_SYMBOL_GPL vmlinux 0x52e45efc dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x52fe6d2c devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x5335dd11 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x533f95ca regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x5358fc36 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x535b5e8e pcibios_add_pci_devices +EXPORT_SYMBOL_GPL vmlinux 0x53614269 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x5387c7b1 do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x53925ebb ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x53c16383 regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x5406790a devm_clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5408fec2 get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0x54131c3d inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54215db5 visitor64 +EXPORT_SYMBOL_GPL vmlinux 0x5460c8d8 fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x546c5565 ppc_tb_freq +EXPORT_SYMBOL_GPL vmlinux 0x54701d45 alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x54740eb7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x548e02b5 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54cb8909 led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0x54ce433a usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0x54dfc6a9 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0x54eb7d42 fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0x54f8685b srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x55156aa6 smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x557da3c0 ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x558408f9 rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x5586d9ac tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0x558ae2a6 need_load_eval +EXPORT_SYMBOL_GPL vmlinux 0x55a41fee rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x55b7aa6e cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0x55b8d13f transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x55e3e70f pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x55effced inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0x561e4b77 irq_of_parse_and_map +EXPORT_SYMBOL_GPL vmlinux 0x5626a619 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x5627fd2c tpm_show_active +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x5632abde pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0x563b1a7f __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x563fd082 console_drivers +EXPORT_SYMBOL_GPL vmlinux 0x564f1dca klist_add_after +EXPORT_SYMBOL_GPL vmlinux 0x56588446 swiotlb_tbl_map_single +EXPORT_SYMBOL_GPL vmlinux 0x565b6892 uuid_le_gen +EXPORT_SYMBOL_GPL vmlinux 0x565b6b90 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0x566ef9c7 device_register +EXPORT_SYMBOL_GPL vmlinux 0x56886b19 scatterwalk_map +EXPORT_SYMBOL_GPL vmlinux 0x5692386f gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x56d697ce cpu_up +EXPORT_SYMBOL_GPL vmlinux 0x56e75d47 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x57231f45 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0x57239bfa arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0x575c5f94 execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0x5763cb64 tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x578824b8 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57b24d6e mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x57c3f7f8 tpm_register_hardware +EXPORT_SYMBOL_GPL vmlinux 0x57f0e4a5 gfn_to_hva +EXPORT_SYMBOL_GPL vmlinux 0x5814cf13 driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5838f7f9 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x58413099 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x5864117e irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x586b1dea i2c_new_dummy +EXPORT_SYMBOL_GPL vmlinux 0x5892f832 release_pmc_hardware +EXPORT_SYMBOL_GPL vmlinux 0x589e4569 syscon_regmap_lookup_by_pdevname +EXPORT_SYMBOL_GPL vmlinux 0x58d1434c kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL vmlinux 0x58fe9409 rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0x59052d8a ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0x5915aa36 regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x591b058c scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x5933cc8e find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x5947abbe max77693_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x596e8a6f posix_timers_register_clock +EXPORT_SYMBOL_GPL vmlinux 0x5992cc8f i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x599d3a10 regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x59a6e91d clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x59b2adbf input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x59c554f2 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x59e2743e call_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0x59eae699 ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x5a08219d hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0x5a15e7db rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x5a399234 split_page +EXPORT_SYMBOL_GPL vmlinux 0x5a435ec1 ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0x5a6b6f25 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5a774703 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a7f3e93 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x5a8f3b69 of_irq_parse_raw +EXPORT_SYMBOL_GPL vmlinux 0x5ab29c5e ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0x5aca54c7 crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x5ada6e47 user_describe +EXPORT_SYMBOL_GPL vmlinux 0x5b3e372d sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x5b4e379c of_prop_next_u32 +EXPORT_SYMBOL_GPL vmlinux 0x5b55b58e inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x5b86fe52 user_read +EXPORT_SYMBOL_GPL vmlinux 0x5b9694e1 device_schedule_callback_owner +EXPORT_SYMBOL_GPL vmlinux 0x5bc85fd2 perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0x5bcf05e6 uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0x5bdd7813 __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x5bf5c3f8 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0x5bfbdddf __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x5c00074b edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x5c1be3ce device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x5ca93699 tracepoint_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x5cabdced dev_pm_qos_remove_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5cbaf17d inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0x5cc6542d irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x5cc997dd rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x5cd09f22 dma_buf_kmap +EXPORT_SYMBOL_GPL vmlinux 0x5cf8a882 __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x5d12e48f input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0x5d51606d cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x5d518b5b wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0x5d52970e ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0x5d5445e5 sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0x5d711aa5 rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0x5d77952d hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x5d84251d cgroup_add_cftypes +EXPORT_SYMBOL_GPL vmlinux 0x5d8564ae ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0x5d97fdae regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x5d9ae9ca agp_remove_bridge +EXPORT_SYMBOL_GPL vmlinux 0x5dacc4e5 arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x5dad1541 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x5dba5681 extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5df18221 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0x5df38d12 rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0x5e2c6473 ata_eh_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x5e39d557 css_rightmost_descendant +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e571e58 tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x5e5fa08f __netpoll_free_async +EXPORT_SYMBOL_GPL vmlinux 0x5e6b4031 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x5e87fa60 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x5e8b8f1a wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0x5e9d6c98 stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0x5ea28910 raw_seq_open +EXPORT_SYMBOL_GPL vmlinux 0x5ea422f3 platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x5ed556e9 hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x5ee7542e reserve_pmc_hardware +EXPORT_SYMBOL_GPL vmlinux 0x5f248f72 set_timer_slack +EXPORT_SYMBOL_GPL vmlinux 0x5f29f49f crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x5f419491 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x5f79a98b __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x5f93e18d swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0x5fa4de40 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x5fc5ad49 __inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0x5fcec54f rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x5fe855d5 netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0x60096d6c usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0x600c2485 regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x6012d2a6 usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x60467b06 btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0x60506751 unmap_kernel_range_noflush +EXPORT_SYMBOL_GPL vmlinux 0x60635b13 ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x6094685f wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0x60982f9e irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL_GPL vmlinux 0x60c5334e ahash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0x60e18007 usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x610b6557 stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x611af8b3 sdhci_pci_o2_probe_slot +EXPORT_SYMBOL_GPL vmlinux 0x61264995 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x612ae497 nf_register_afinfo +EXPORT_SYMBOL_GPL vmlinux 0x612edb3b blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x6142dc3b ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x6143b664 power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0x614686a7 cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x6183ff15 sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x61a90c54 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0x620c6a3d pci_reset_pri +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x622dacba tick_nohz_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x62363e6e devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0x623d7412 devm_spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x62687792 skb_segment +EXPORT_SYMBOL_GPL vmlinux 0x627e87cd vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0x62a97b07 arizona_of_get_type +EXPORT_SYMBOL_GPL vmlinux 0x62b71d35 user_match +EXPORT_SYMBOL_GPL vmlinux 0x62daeae5 device_create_vargs +EXPORT_SYMBOL_GPL vmlinux 0x630d16a0 serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x6318757f mdio_mux_uninit +EXPORT_SYMBOL_GPL vmlinux 0x63205de1 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x63840a3b serial8250_tx_dma +EXPORT_SYMBOL_GPL vmlinux 0x638cdcd2 ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x63902c55 ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x6390efda of_modalias_node +EXPORT_SYMBOL_GPL vmlinux 0x639cad4c cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x63a63bb0 pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0x63b8f32a blkcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0x63daece7 __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x63e3d174 generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0x63eeb6cf xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0x63f00bd5 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0x6411f384 device_find_child +EXPORT_SYMBOL_GPL vmlinux 0x6428da4f rh_attach_region +EXPORT_SYMBOL_GPL vmlinux 0x642de263 netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x64622209 md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x64c90910 mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x64e58193 usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0x6504a293 tasklet_hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x650a9589 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x651a2afa dm_get_rq_mapinfo +EXPORT_SYMBOL_GPL vmlinux 0x6520b0ed rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x6543e9e1 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x65760161 __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x657e9798 crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0x65bbbc78 schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65d97775 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0x65e8a7aa pm_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0x65f4d435 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x662a0c3f x509_get_sig_params +EXPORT_SYMBOL_GPL vmlinux 0x662b3b29 usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0x664faee0 extcon_set_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x6653055a usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0x6661f0e2 ping_proc_unregister +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6695f8fe inet6_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0x669da1fd kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL vmlinux 0x66aee3ae kobj_completion_release +EXPORT_SYMBOL_GPL vmlinux 0x66afb53b unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x66c1c77b attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x66c385e0 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x670ec20e ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0x672b0712 usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x674e13e1 public_key_destroy +EXPORT_SYMBOL_GPL vmlinux 0x67617a8a sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0x676b9961 __class_create +EXPORT_SYMBOL_GPL vmlinux 0x677c7706 ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0x67942896 __pci_complete_power_transition +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x67cd4227 wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0x67f0e89f usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0x6831107e uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0x6848ca0e input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0x684a2286 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x687934e9 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x688a9172 crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x6898d47f serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x68a9c0a3 irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x68af82af rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x68ceae96 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0x68e00f34 tcp_fetch_timewait_stamp +EXPORT_SYMBOL_GPL vmlinux 0x69079d05 ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0x691f26ef debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0x6921aa34 compat_put_timeval +EXPORT_SYMBOL_GPL vmlinux 0x6923ce63 irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x692651dd map_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x693d7ed4 digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0x69447467 ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0x69476082 uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x697cbbb4 threads_per_core +EXPORT_SYMBOL_GPL vmlinux 0x698a899f ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0x699ee1f1 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x69c75b85 sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0x69e9a2cb ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x6a02ec92 dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6a0979b3 generic_access_phys +EXPORT_SYMBOL_GPL vmlinux 0x6a1bdd4e regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x6a3e0c17 kvmppc_handle_load +EXPORT_SYMBOL_GPL vmlinux 0x6a412a5f fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x6a4409a7 fuse_request_send +EXPORT_SYMBOL_GPL vmlinux 0x6a4dc753 crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x6a5fb566 rcu_sched_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x6a68e1a4 do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x6a6cafd2 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x6a80ae53 usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6a8657bd da903x_update +EXPORT_SYMBOL_GPL vmlinux 0x6a8878e9 skcipher_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0x6aad232d xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0x6acb8d84 ppc64_caches +EXPORT_SYMBOL_GPL vmlinux 0x6acfd0ab blk_rq_check_limits +EXPORT_SYMBOL_GPL vmlinux 0x6ae2ff5b clk_register_mux +EXPORT_SYMBOL_GPL vmlinux 0x6b205c26 ahash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0x6b29a1fa ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0x6b48a910 switch_booke_debug_regs +EXPORT_SYMBOL_GPL vmlinux 0x6b491512 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x6b495665 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0x6b70da4f inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0x6b83f73d sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0x6b93bf60 inet_twdr_twkill_work +EXPORT_SYMBOL_GPL vmlinux 0x6b9e7ad7 of_clk_src_simple_get +EXPORT_SYMBOL_GPL vmlinux 0x6baabc91 crypto_givcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x6bb25c03 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0x6bb907ed skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x6bce580a exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x6bdc708d posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6beff258 use_cop +EXPORT_SYMBOL_GPL vmlinux 0x6c090f04 pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x6c1b09ab gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x6c23453e power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x6c33d063 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x6c49c4f2 clockevents_notify +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c55a446 __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0x6c55fbc3 rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x6c5ee507 mmput +EXPORT_SYMBOL_GPL vmlinux 0x6c84e6f6 led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6c92998e usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6ccf2b97 __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x6cd21997 ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x6cd4ea62 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0x6cdab463 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0x6cf65e7d ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0x6cfb3246 __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x6d2785b5 pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d58231f kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL vmlinux 0x6d7616ab fuse_put_request +EXPORT_SYMBOL_GPL vmlinux 0x6d94a5c9 usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x6d988e55 dm_set_device_limits +EXPORT_SYMBOL_GPL vmlinux 0x6d9e5425 of_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x6df2e9e0 kvm_release_page_clean +EXPORT_SYMBOL_GPL vmlinux 0x6df8f4cd pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x6e04a077 usb_bind_phy +EXPORT_SYMBOL_GPL vmlinux 0x6e379526 kernstart_addr +EXPORT_SYMBOL_GPL vmlinux 0x6e61e236 dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0x6e73eb5a sysfs_put +EXPORT_SYMBOL_GPL vmlinux 0x6e815646 sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6eaa758e input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0x6ed8a657 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x6f1ee69e kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x6f362a9f regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x6f73a738 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x6f8b4b12 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x6fa88dc2 tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x6fe3d8cf ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x703146cc input_class +EXPORT_SYMBOL_GPL vmlinux 0x70669580 ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x7073ba9e tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x707ff1bb ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x70cf032f usb_hcd_irq +EXPORT_SYMBOL_GPL vmlinux 0x70e5b465 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0x70fa1cc9 sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0x70fa1f25 __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x711a82f0 subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x711e18e9 thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0x7120b702 usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0x712c6465 kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x71478c46 arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0x71549fe6 kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x71621fe0 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71684bea __class_register +EXPORT_SYMBOL_GPL vmlinux 0x71899de4 usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0x71930ed3 of_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x71b0485c ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x71b8ba00 bsg_request_fn +EXPORT_SYMBOL_GPL vmlinux 0x71d6d02b tpm_open +EXPORT_SYMBOL_GPL vmlinux 0x71db0a27 bsg_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x71dc9998 crypto_il_tab +EXPORT_SYMBOL_GPL vmlinux 0x71f9883d rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0x7225d5aa pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x723374f8 pci_bus_sem +EXPORT_SYMBOL_GPL vmlinux 0x724e69bf regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x72741f25 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x7278e3b0 __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0x72a68906 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x72ba850d wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x72d1a9ac crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x72f88109 usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x72fa6b32 __rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x7355d5ab watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x738a458c ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x73a04196 regmap_field_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73a49efa power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x73c2554f __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0x73c832f2 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x73ce119f dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x73d50d41 blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x73d69364 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x73f62dcb crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x741de562 extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7422c95e gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x7464ea38 dev_pm_qos_add_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x74954462 timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x749d0aa8 pwm_can_sleep +EXPORT_SYMBOL_GPL vmlinux 0x74b9dded usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74f5691d default_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x750ec7a0 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0x75133f6e visitor128 +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x75331d9f cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0x754cfead uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0x755723b9 pcibios_map_io_space +EXPORT_SYMBOL_GPL vmlinux 0x757b49d2 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0x758a782e blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x758c52e1 devres_get +EXPORT_SYMBOL_GPL vmlinux 0x759ac8e2 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0x75bc11d1 PageHeadHuge +EXPORT_SYMBOL_GPL vmlinux 0x75f2a044 usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0x767186f0 tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x7675f6c6 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x7696541b md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0x76bca5e0 usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x76d07d6e gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x76d8367c sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0x7724bc82 ref_module +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x774934a0 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x77830463 use_mm +EXPORT_SYMBOL_GPL vmlinux 0x7787d803 tpm_write +EXPORT_SYMBOL_GPL vmlinux 0x77e1d4df usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x783a7ee1 sysfs_get_dirent_ns +EXPORT_SYMBOL_GPL vmlinux 0x78534631 crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x78537b3b gov_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x785ec7b0 perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x787c882b lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x787ff005 rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0x78839b99 tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x7893548f register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0x78bda6b9 sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x78f0f0aa bio_clone_mddev +EXPORT_SYMBOL_GPL vmlinux 0x78f571df crypto_register_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x79463fe0 sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x7966be8a perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0x796c2d48 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x79859a38 tcp_is_cwnd_limited +EXPORT_SYMBOL_GPL vmlinux 0x798635ec pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0x7992827d blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7992a7f8 rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x7998cc64 clk_register +EXPORT_SYMBOL_GPL vmlinux 0x799914bc device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x79c480da rh_dump +EXPORT_SYMBOL_GPL vmlinux 0x7a41384e tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x7a5a26a1 rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0x7a6d03b6 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x7a8a9408 anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7a944007 rcu_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x7aa64803 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL vmlinux 0x7acccfc4 register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x7ae1ae8e cpufreq_frequency_table_put_attr +EXPORT_SYMBOL_GPL vmlinux 0x7b010365 unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x7b0f1ab3 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7b0f2127 find_linux_pte_or_hugepte +EXPORT_SYMBOL_GPL vmlinux 0x7b1d544d edac_handler_set +EXPORT_SYMBOL_GPL vmlinux 0x7b2242b3 ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0x7b292d19 static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0x7b2b6926 find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x7b409a84 bmp085_remove +EXPORT_SYMBOL_GPL vmlinux 0x7bcb5d8c dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0x7bd76ccf tpm_show_caps +EXPORT_SYMBOL_GPL vmlinux 0x7c18ada6 fb_sys_read +EXPORT_SYMBOL_GPL vmlinux 0x7c227088 clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x7c346357 pkey_algo +EXPORT_SYMBOL_GPL vmlinux 0x7c47a665 class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7c5cb6c3 __fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0x7c644588 ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0x7c685135 usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0x7c8f7221 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7cc1b7fd max77693_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7cc7de1c x509_check_signature +EXPORT_SYMBOL_GPL vmlinux 0x7ccd2186 da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7ce50c72 rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0x7ce59f90 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cf8258f ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0x7d06d9f9 tpm_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0x7d36e534 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7d397cc7 gpiod_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7da02e9d proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0x7dab26b6 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7dabcf23 max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7df3196f devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x7e17ba7b klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x7e3c4437 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e77716a devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x7e835f06 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x7ea1a2bc probe_kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x7ea5f3ff cpufreq_notify_transition +EXPORT_SYMBOL_GPL vmlinux 0x7ee4e840 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x7ef35e63 sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x7f008202 btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0x7f38d0c5 tpm_gen_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x7f7bc710 klist_next +EXPORT_SYMBOL_GPL vmlinux 0x7fa07814 scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x7fa4b4a2 of_pci_parse_bus_range +EXPORT_SYMBOL_GPL vmlinux 0x7fb588ff wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x7fc4c127 pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x7ff3d153 ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0x8002a08d extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0x8018b598 pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x8042a013 get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0x804aa709 subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x80a4c8dd usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0x80bd1eb0 crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0x80d3927f __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80d90c92 init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x80f3268f __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x80f901fc tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x8114b8d6 md_is_badblock +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x8140842a gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x8149ea54 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0x81879bd5 regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x819c8716 devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0x81a0ed68 nl_table +EXPORT_SYMBOL_GPL vmlinux 0x81ebea5a usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x81f45c82 of_usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0x81f7e294 spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x822725c5 put_pid +EXPORT_SYMBOL_GPL vmlinux 0x8238fb6d each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x826fc8e3 da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x827dd081 sdhci_pci_o2_resume +EXPORT_SYMBOL_GPL vmlinux 0x82939ebd rcu_batches_completed_sched +EXPORT_SYMBOL_GPL vmlinux 0x82a1ba1b rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x82a8ce0c sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0x82aa2106 devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82ea65d3 wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0x830e04fd ata_do_eh +EXPORT_SYMBOL_GPL vmlinux 0x8318eb66 clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x834378ab sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x834616bb sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x835e9967 pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x836d61d0 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x837ae513 ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0x838b13e7 ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0x83c1fe88 inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x83c27577 perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x8408ee2a regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x8412f7dc fat_attach +EXPORT_SYMBOL_GPL vmlinux 0x8420bccd cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0x8420c845 ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0x848219de ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x8487a2b6 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x8491c2ac crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x84a56eb6 __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0x84aa229e ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0x84aa40b7 crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0x84ad2f6b regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0x84c2eba6 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0x84ca03cf dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x84d9decf kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x84fae9fb scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0x84ff61b9 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0x85050965 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x85154d8f ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x852e568d of_get_nand_ecc_mode +EXPORT_SYMBOL_GPL vmlinux 0x8538b4ec inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x853fd331 spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x859dc8cf sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0x85b14d33 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0x85c10896 rcu_batches_completed_bh +EXPORT_SYMBOL_GPL vmlinux 0x85c7f674 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x85ea1d17 ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x85f39073 pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0x85f7687c rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x85fefad0 con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0x86013a9c crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0x860dc4cc crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0x86423f2c __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x866b9687 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x8694482c list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0x86ada0f3 rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x86c28ee0 aead_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x8702e548 process_srcu +EXPORT_SYMBOL_GPL vmlinux 0x8709e4d8 ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x873e8e1f __get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x873fbaea edac_atomic_assert_error +EXPORT_SYMBOL_GPL vmlinux 0x87747ba4 platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0x87767901 tpm_show_owned +EXPORT_SYMBOL_GPL vmlinux 0x87b3f91b pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x87bb4e32 of_usb_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x8804af3d usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x8810ad5e crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0x8824d382 ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x88356423 pci_reset_bridge_secondary_bus +EXPORT_SYMBOL_GPL vmlinux 0x88449cf6 ping_err +EXPORT_SYMBOL_GPL vmlinux 0x88671e4b inet_csk_compat_getsockopt +EXPORT_SYMBOL_GPL vmlinux 0x886ef0c6 extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b5647c trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x88b97d87 crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x890e2a1b sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x891d1806 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x893d4808 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0x89b4b823 sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x8a21b50c ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x8a2b14ba wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x8a2cc096 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x8a2fc429 usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0x8a5dfe30 get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0x8a8fd267 arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x8ab2712f netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0x8ab621a6 ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8abad09a crypto_blkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x8ae152b5 of_get_nand_bus_width +EXPORT_SYMBOL_GPL vmlinux 0x8b260ec7 inet_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x8b35c69e fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x8b46086f crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0x8b70e8ea __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0x8b92fc60 rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0x8bf8141c ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0x8c0219a5 ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x8c03caa2 usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c0869f3 platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8c2e7af9 device_del +EXPORT_SYMBOL_GPL vmlinux 0x8c4381d1 regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x8c945332 dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x8c9deda4 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x8cb22ad7 rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x8ce0b9f8 rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0x8cea765f memalloc_socks +EXPORT_SYMBOL_GPL vmlinux 0x8d164205 tcp_done +EXPORT_SYMBOL_GPL vmlinux 0x8d36c088 look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0x8d53c4a2 debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x8da01274 kvm_get_pfn +EXPORT_SYMBOL_GPL vmlinux 0x8daa8371 sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x8dfd5821 __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x8e0ee77f ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x8e1cd06f kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL vmlinux 0x8e1fc4b5 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x8e5c84cf da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0x8e9c7933 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x8edfd0de cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x8f075748 netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x8f185553 crypto_lookup_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x8f33b486 kvm_release_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f76c613 kvm_read_guest_page +EXPORT_SYMBOL_GPL vmlinux 0x8f866ad6 regulator_can_change_voltage +EXPORT_SYMBOL_GPL vmlinux 0x8f8a365c ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x8f8e53b9 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8f8fcac0 driver_register +EXPORT_SYMBOL_GPL vmlinux 0x8f902a2c gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x8faa4910 tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0x8fd134a5 inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x9005eec8 __mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x900dc3fa queue_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x90228869 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x9049e416 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0x904b0fce list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0x9062c322 ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x90694f26 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x90705b7f syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x9077d5ea usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x90a1004a crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x91286982 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x9146651c rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x918ad429 ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x9193f8ab irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x91b01193 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0x91d0b498 usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x920cc389 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x92241756 class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x9238a2e0 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0x9241ec8b rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x92445687 sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x92540bef cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0x925ceb11 rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x926070e3 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0x928e9e09 kvm_vcpu_block +EXPORT_SYMBOL_GPL vmlinux 0x92a4f3bc bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0x92bad4a2 usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92d57652 aead_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0x92d608f4 usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92f586a2 of_get_named_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x92f721f3 regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x930ed9b9 of_usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0x931fa164 sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x9354bde9 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x935742fc ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x935db79a ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x9398eeed dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0x940685ca kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x943768c0 unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0x943a14d8 __percpu_ida_init +EXPORT_SYMBOL_GPL vmlinux 0x94483b79 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x948f7c8d rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x949f7342 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x94a68723 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x94bebaa9 devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0x94ca722c sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x94d972b7 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x94e0253d xattr_getsecurity +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x952048c3 vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x954a647d scsi_internal_device_block +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x959022a5 max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x95ad4e39 __rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x95b94c53 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95c1230f crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x95e9da74 regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0x9610504e irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x9615ddd1 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0x9621849f ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x962b7e28 task_current_syscall +EXPORT_SYMBOL_GPL vmlinux 0x96376f3d spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9664cf5e relay_close +EXPORT_SYMBOL_GPL vmlinux 0x96cdc6a2 debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0x970ca9f8 sec_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x971c423c crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0x9730c462 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x9735f061 register_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x9745c52a of_fixed_clk_setup +EXPORT_SYMBOL_GPL vmlinux 0x9751d4e3 ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x976ec759 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0x97a85184 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x97c438b5 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x97c5aa1f regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0x97d04e57 ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97ea6184 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x97f1570d pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0x97fcacbf tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0x9814092b __rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x982b1f6e user_update +EXPORT_SYMBOL_GPL vmlinux 0x982cd486 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x983c7494 rh_detach_region +EXPORT_SYMBOL_GPL vmlinux 0x984228b8 tps65912_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x9849e043 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x984c3017 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x98711081 pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x98753a47 devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9879e704 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0x987bc8b0 get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0x98854595 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x98971ef0 __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x98a02a70 register_jprobe +EXPORT_SYMBOL_GPL vmlinux 0x98ba88a1 wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x99121985 usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0x991484c4 of_property_count_strings +EXPORT_SYMBOL_GPL vmlinux 0x9924c496 __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x993c0032 hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0x993e0641 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x998a6ac7 platform_bus +EXPORT_SYMBOL_GPL vmlinux 0x998c2b69 sysfs_notify_dirent +EXPORT_SYMBOL_GPL vmlinux 0x99b7ff4b bus_register +EXPORT_SYMBOL_GPL vmlinux 0x99d35861 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0x99e02dbb bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x99eeb903 crypto_lookup_aead +EXPORT_SYMBOL_GPL vmlinux 0x99f73f86 blk_queue_rq_timed_out +EXPORT_SYMBOL_GPL vmlinux 0x99fb1891 debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0x9a06e39b ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a3dbc3c ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0x9a40965b pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x9a49d937 __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x9a4e61ee sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0x9a89dbf7 lpddr2_jedec_min_tck +EXPORT_SYMBOL_GPL vmlinux 0x9a9bbb7e device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x9aa52e59 usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x9aa6f3db crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x9aad6540 klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x9abd96b0 subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9ac09a2a regmap_update_bits_check +EXPORT_SYMBOL_GPL vmlinux 0x9ac2e8aa cpufreq_table_validate_and_show +EXPORT_SYMBOL_GPL vmlinux 0x9aca444b get_monotonic_boottime +EXPORT_SYMBOL_GPL vmlinux 0x9acc5876 crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0x9ad0cb17 kvm_write_guest_cached +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9b4eb22c usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x9b5d2b17 init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x9b78c864 of_irq_parse_pci +EXPORT_SYMBOL_GPL vmlinux 0x9b9cb9c3 kvm_put_kvm +EXPORT_SYMBOL_GPL vmlinux 0x9ba2bb2b gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x9bb53009 pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x9bc8987a blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0x9bcf713f tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x9be4542c pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9bf5a4e2 stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0x9c2ec6dc extcon_set_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x9c5ee436 serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x9c729a98 bdi_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x9c73621c pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x9c8621c0 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0x9c8d20a4 cgroup_is_descendant +EXPORT_SYMBOL_GPL vmlinux 0x9c90bca0 regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x9c95c7b5 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0x9c9da1bf skcipher_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0x9cbd68c9 device_add +EXPORT_SYMBOL_GPL vmlinux 0x9cc15476 regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0x9cebc7bc sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x9d030b99 stop_machine +EXPORT_SYMBOL_GPL vmlinux 0x9d053efa rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x9d138533 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x9d1ce041 tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x9d29cb12 rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x9d35b417 bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x9d65b101 sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0x9d7aeee8 dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0x9d7d628c fsl_rio_mcheck_exception +EXPORT_SYMBOL_GPL vmlinux 0x9df4be3b gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x9e0ccf07 class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9ead0be1 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0x9eadf36f md_new_event +EXPORT_SYMBOL_GPL vmlinux 0x9eaf6cae securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x9ec95729 wait_for_tpm_stat +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9ee02fce device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0x9efa9f41 extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0x9f0664bf dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0x9f359fe9 dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0x9f3f98e1 of_get_nand_on_flash_bbt +EXPORT_SYMBOL_GPL vmlinux 0x9f50ccc0 __inet_hash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x9f5108df rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x9fa1738c regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x9fbbad33 cgroup_load_subsys +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9fedb268 __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0xa0101854 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0xa0176775 smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xa0208e02 irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0xa02cb6e5 watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0xa03a6289 ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0xa06c3766 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xa084003e gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0xa09da2bb put_device +EXPORT_SYMBOL_GPL vmlinux 0xa0a27fff pci_address_to_pio +EXPORT_SYMBOL_GPL vmlinux 0xa0aa6a2a dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0xa0c23a58 pwm_set_polarity +EXPORT_SYMBOL_GPL vmlinux 0xa0e027a2 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0xa0e7f3a9 ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0xa0f1d195 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0xa0fac537 hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0xa0fcb7f0 rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0xa0ff9a22 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xa11562af crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0xa128328a sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0xa12d929d desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xa12de6d8 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0xa147177c irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0xa1b134ff transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa1eb0096 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0xa1f30ca0 dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0xa20d93d0 blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0xa20eeade wm8350_device_exit +EXPORT_SYMBOL_GPL vmlinux 0xa2136493 wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xa2685831 usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa27cc36c fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0xa28aaf29 rh_create +EXPORT_SYMBOL_GPL vmlinux 0xa29e5e54 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0xa2befa2b sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0xa3071123 bmp085_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xa30f3b50 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0xa325711d init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0xa358f803 led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa3715db0 rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a19940 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0xa3a2d9af walk_system_ram_range +EXPORT_SYMBOL_GPL vmlinux 0xa3acddc3 sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3e7c113 ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0xa4370753 clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0xa4617cf9 thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0xa4709ef9 system_trusted_keyring +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa484345b fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0xa4d7afbf __ablkcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0xa4e3aecd fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0xa4ea04ee of_property_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0xa4f66367 mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0xa5038b15 attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0xa50a9333 vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0xa5132203 sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0xa51f150f dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0xa5315a79 mark_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xa5626be3 usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0xa56ca855 tracepoint_iter_stop +EXPORT_SYMBOL_GPL vmlinux 0xa585f058 usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0xa5aa48a3 __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0xa5b00659 ppc_proc_freq +EXPORT_SYMBOL_GPL vmlinux 0xa5b4c848 regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0xa5d6e34f gfn_to_pfn_prot +EXPORT_SYMBOL_GPL vmlinux 0xa5ec85ec hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa5efe460 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xa5f389eb of_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xa6186dfa unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0xa61b36ff sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xa625110d kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0xa64872e4 mdio_mux_init +EXPORT_SYMBOL_GPL vmlinux 0xa674ac16 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0xa67bf29c pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xa6844777 regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0xa6907f82 skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0xa69cfa41 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xa6a0a273 max77693_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa705f6a5 debugfs_remove_recursive +EXPORT_SYMBOL_GPL vmlinux 0xa71d9677 kvm_clear_guest +EXPORT_SYMBOL_GPL vmlinux 0xa724257f init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0xa75312bc call_rcu_sched +EXPORT_SYMBOL_GPL vmlinux 0xa75811d0 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xa78c424c devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0xa7a4705c hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xa7c32839 regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xa7f92105 add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0xa814faa5 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0xa81f4d52 transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa88a6977 ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0xa8975867 __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xa8b031d2 uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0xa8b1b35e cpu_add_dev_attr_group +EXPORT_SYMBOL_GPL vmlinux 0xa8da1a9f skb_morph +EXPORT_SYMBOL_GPL vmlinux 0xa8de4ddf devres_release +EXPORT_SYMBOL_GPL vmlinux 0xa8e06b96 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0xa8f7bb26 dev_hard_start_xmit +EXPORT_SYMBOL_GPL vmlinux 0xa8fcd326 sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xa90dac19 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0xa91191dd shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0xa925e478 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0xa928254c thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0xa92fa2bc device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xa93271a5 gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0xa977c6a7 usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0xa980af16 RSA_public_key_algorithm +EXPORT_SYMBOL_GPL vmlinux 0xa98a7a6d clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0xa9aef2e1 gfn_to_hva_memslot +EXPORT_SYMBOL_GPL vmlinux 0xa9ce341e usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0xa9d5e5d3 of_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xa9dc4156 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9fb74a2 of_device_is_stdout_path +EXPORT_SYMBOL_GPL vmlinux 0xaa0290a1 usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0xaa17a2e2 rh_alloc_align +EXPORT_SYMBOL_GPL vmlinux 0xaa54c8b9 regmap_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xaa5f7578 dm_requeue_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0xaa5faef5 dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0xaa8a4085 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0xaaa7406b ata_scsi_simulate +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaad919da sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xaae2aaa6 dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0xab23bd04 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xab26117f devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0xab3f64c6 __init_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0xab59d373 kvmppc_free_lpid +EXPORT_SYMBOL_GPL vmlinux 0xab6babaf pm_qos_request +EXPORT_SYMBOL_GPL vmlinux 0xab6f66bc regmap_field_write +EXPORT_SYMBOL_GPL vmlinux 0xab74526c led_trigger_store +EXPORT_SYMBOL_GPL vmlinux 0xab7ca8c2 dm_underlying_device_busy +EXPORT_SYMBOL_GPL vmlinux 0xab85c250 clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0xab9e9aa1 kvm_read_guest_cached +EXPORT_SYMBOL_GPL vmlinux 0xac350dbb ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0xac41e65b crypto_alloc_pcomp +EXPORT_SYMBOL_GPL vmlinux 0xac680d7b regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xac92ef2a sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0xacb8ebd0 sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0xacbf0231 ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xace5c0fc usb_bus_list +EXPORT_SYMBOL_GPL vmlinux 0xacfe997e powerpc_firmware_features +EXPORT_SYMBOL_GPL vmlinux 0xad039c54 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xad1c0d97 pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0xad376749 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0xad42e10f rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0xad5a7259 get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0xada63a26 cgroup_taskset_cur_css +EXPORT_SYMBOL_GPL vmlinux 0xadb74e84 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0xadc785ec kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0xadd078eb mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0xadd55edd bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xadf6aa4d tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xae2554c4 of_clk_src_onecell_get +EXPORT_SYMBOL_GPL vmlinux 0xae3d57d1 rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xae670700 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae714393 regmap_init +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xaeac7b05 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0xaed517fe ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xaee508ab net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0xaee9f581 trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0xaeffcc4d pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0xaf615fb1 relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0xaf65d056 usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0xaf6acd72 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xaf75e84e kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xaf907626 hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0xaf9587d1 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0xafb37136 invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0xafda3f40 pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0xafdfe6c8 regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0xb082af04 rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0xb08bdfbc sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0cea5cf wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0xb0d1656c gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0xb0e0e543 sec_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xb10c6113 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0xb10d55bc cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0xb128b9af usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0xb12e5e11 dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xb140d14c ring_buffer_read +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb1a7e3f6 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0xb1acbcce rcu_barrier_sched +EXPORT_SYMBOL_GPL vmlinux 0xb1ad1de5 usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0xb1b049cd pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0xb1c0c1c2 async_schedule_domain +EXPORT_SYMBOL_GPL vmlinux 0xb1d1b078 fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1e9ab8c usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0xb1ed4935 ata_sff_data_xfer_noirq +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb22a6a75 usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0xb22febb0 clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0xb233f547 rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0xb24075f8 dev_get_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0xb2583e0d pwm_request +EXPORT_SYMBOL_GPL vmlinux 0xb25c0ba8 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xb2635aae crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb278ef41 usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0xb289ef27 regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xb29220c5 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0xb293c758 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0xb29b9aec pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0xb2bd03f4 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xb2bf059f bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0xb2cf2049 spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0xb30bf144 inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0xb347bb2c work_busy +EXPORT_SYMBOL_GPL vmlinux 0xb34a9b40 usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0xb36ad428 ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0xb383c4e3 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0xb38d7842 __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0xb3a76cc6 cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0xb3c307ef usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0xb3c8ae4f kobj_completion_init +EXPORT_SYMBOL_GPL vmlinux 0xb3d812db cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0xb3ff1073 wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0xb4233108 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0xb43dc769 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0xb457bc08 arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0xb4618114 ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0xb48050ca platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0xb480a671 mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4d0eff5 kvm_get_dirty_log +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4fbba84 pci_cleanup_aer_uncorrect_error_status +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb53620d1 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0xb552e7ba ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0xb58dcfa2 synchronize_sched_expedited +EXPORT_SYMBOL_GPL vmlinux 0xb590586f irq_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0xb599acec perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0xb5a0e11e lpddr2_jedec_addressing_table +EXPORT_SYMBOL_GPL vmlinux 0xb5aa10af atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb5afa9c5 file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0xb5b5c2f6 ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0xb5b61c62 of_reset_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xb5c8edf4 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0xb5cb8145 hrtimer_get_res +EXPORT_SYMBOL_GPL vmlinux 0xb5d34289 anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0xb5f17edf perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb5f2fc99 scom_find_parent +EXPORT_SYMBOL_GPL vmlinux 0xb60b5707 of_i8042_aux_irq +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb643c250 xics_wake_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb6749110 crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xb67b2219 cm_suspend_again +EXPORT_SYMBOL_GPL vmlinux 0xb6a499a6 irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0xb6aeb661 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xb6c635af wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb72739fb blk_queue_dma_drain +EXPORT_SYMBOL_GPL vmlinux 0xb72809c3 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0xb7702655 swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0xb786e77d percpu_ida_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb7a7cf22 irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xb7a838df crypto_ahash_type +EXPORT_SYMBOL_GPL vmlinux 0xb7b09ac9 md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0xb7c35925 flush_fp_to_thread +EXPORT_SYMBOL_GPL vmlinux 0xb7f701ca ping_close +EXPORT_SYMBOL_GPL vmlinux 0xb7f77027 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0xb8187226 of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0xb81faee1 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xb8257bc3 hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0xb8518e91 pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0xb85a59f4 regulator_set_optimum_mode +EXPORT_SYMBOL_GPL vmlinux 0xb8661df8 led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0xb876f651 regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0xb87f9e72 platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0xb89b25a4 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xb8ae930f dma_buf_kunmap +EXPORT_SYMBOL_GPL vmlinux 0xb8d7134a rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xb8d7aaf5 sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0xb8e45155 md_run +EXPORT_SYMBOL_GPL vmlinux 0xb903674c scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0xb90f356a sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0xb9493331 sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0xb9858f6a xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0xb987a304 bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0xb98ff94e fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xb998719a gfn_to_memslot +EXPORT_SYMBOL_GPL vmlinux 0xb9b0289f i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9bca61a drop_cop +EXPORT_SYMBOL_GPL vmlinux 0xb9c20eb3 pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9f70aca ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xba0960f3 register_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0xba0a9e03 dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xba4357c0 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0xba4364d2 tty_prepare_flip_string_flags +EXPORT_SYMBOL_GPL vmlinux 0xba5578c6 regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0xba744828 skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0xba7c500c bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0xba8bf294 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0xba9abde0 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0xbab5480a regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xbab75dd3 shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0xbaf0e78a dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbb038ce4 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb0c0d49 alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0xbb300793 fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0xbb365001 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0xbb4b57c6 sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0xbb4e968b vtime_account_system +EXPORT_SYMBOL_GPL vmlinux 0xbb638f13 pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0xbb7f8fdd usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0xbb885753 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0xbba8833c device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0xbbb0bc6d tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0xbbc0c1c3 ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xbbf4f9ae thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbc25a32f aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbc541228 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0xbc585e23 blk_queue_bypass_start +EXPORT_SYMBOL_GPL vmlinux 0xbcac6160 pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbcb06f6c tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0xbcc1c4b8 driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xbccfc633 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0xbd0a3531 rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0xbd11a719 regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xbd5cb8b9 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0xbd69bff6 nfq_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xbd9199ed usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0xbdac8894 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0xbdaf5686 get_compat_timeval +EXPORT_SYMBOL_GPL vmlinux 0xbdb104e4 usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0xbdbe243e pwm_free +EXPORT_SYMBOL_GPL vmlinux 0xbdd22e96 udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xbdd295f0 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xbdd2f42a rcu_bh_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0xbdda4d5b sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0xbdfa9f6b bmp085_detect +EXPORT_SYMBOL_GPL vmlinux 0xbe04dec5 security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xbe08f701 disk_get_part +EXPORT_SYMBOL_GPL vmlinux 0xbe149316 driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0xbe1887e4 ata_unpack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xbe25b5ad led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0xbe3f6fd5 inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbe96dfd8 of_reconfig_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbe9a586f ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0xbea3b445 pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbebaa0a6 of_pci_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0xbebbe97e gfn_to_pfn +EXPORT_SYMBOL_GPL vmlinux 0xbec27bdb kvm_set_memory_region +EXPORT_SYMBOL_GPL vmlinux 0xbef4a638 blk_unprep_request +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf04aba8 crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0xbf088d68 usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0xbf1cc04b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0xbf589163 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xbf6e5d35 fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0xbfc9b536 preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbfd8e7e1 led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0xbfee0c76 regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0xbff5a1f7 usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xc016e5ad ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0xc02bec3c usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xc061367e mpic_msgr_get +EXPORT_SYMBOL_GPL vmlinux 0xc065a455 cpu_core_index_of_thread +EXPORT_SYMBOL_GPL vmlinux 0xc07f80d6 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0xc08399f5 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0xc08647ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc090ead9 add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xc09de073 inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0xc0ae3c61 pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0xc0b85281 usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0xc0bf6ead timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xc0d01bc0 percpu_ref_cancel_init +EXPORT_SYMBOL_GPL vmlinux 0xc0d26387 kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc0da446a kvm_read_guest +EXPORT_SYMBOL_GPL vmlinux 0xc10b9bfb pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0xc10c7192 cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0xc11b45c6 gpiod_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xc11bd00f tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc156b5a7 regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xc1647dcc hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc17d7a07 rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0xc19bbbb2 ping_hash +EXPORT_SYMBOL_GPL vmlinux 0xc20c298a __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc22fceff pci_msi_off +EXPORT_SYMBOL_GPL vmlinux 0xc23cddaf ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0xc2487a41 inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc285cca0 kvmppc_emulate_instruction +EXPORT_SYMBOL_GPL vmlinux 0xc2b188cb tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0xc2b3c522 raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0xc2c25342 usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xc2ceedf6 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0xc2dab4bb driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0xc3128762 pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xc33cbf74 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc34efe27 snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0xc35e7411 __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc37226a5 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xc385a94d generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0xc392bd78 __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0xc39dcb64 dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xc39e5532 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xc3b6b233 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0xc3c6c9cc hrtimer_start +EXPORT_SYMBOL_GPL vmlinux 0xc3cee55a usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0xc3dd963c sec_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xc40d6457 reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xc415c9b7 udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0xc4214832 regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc42defa7 cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xc454fc7b twl_get_type +EXPORT_SYMBOL_GPL vmlinux 0xc46bf357 kvm_set_page_dirty +EXPORT_SYMBOL_GPL vmlinux 0xc471c67a twl4030_audio_disable_resource +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc4a16a61 unregister_jprobe +EXPORT_SYMBOL_GPL vmlinux 0xc4c7e773 skb_gso_transport_seglen +EXPORT_SYMBOL_GPL vmlinux 0xc5607015 extcon_unregister_interest +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc58d0c5c sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0xc5965a1b rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0xc5a63354 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0xc5c3609f blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0xc5ca6df7 crypto_tfm_in_queue +EXPORT_SYMBOL_GPL vmlinux 0xc5dcac83 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0xc5dfe89b extcon_find_cable_index +EXPORT_SYMBOL_GPL vmlinux 0xc60f75ec __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc63a1109 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc6407778 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xc64ce02e sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0xc65d3eed ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc66af725 handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0xc67e6d9f root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc681cb60 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0xc68aa252 __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xc690866c irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc6afe151 ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0xc6b15ca8 blkdev_aio_write +EXPORT_SYMBOL_GPL vmlinux 0xc6d9db9b tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0xc6e25e99 tracepoint_iter_start +EXPORT_SYMBOL_GPL vmlinux 0xc6f4ce6e tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0xc70e4b59 kvmppc_claim_lpid +EXPORT_SYMBOL_GPL vmlinux 0xc72e1233 __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xc72efa7d clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0xc7481806 spi_async +EXPORT_SYMBOL_GPL vmlinux 0xc7597954 usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xc7927ebc skcipher_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7c013ca ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0xc7c6391c mpi_set_buffer +EXPORT_SYMBOL_GPL vmlinux 0xc7c75fdc ata_base_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xc7cab539 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0xc7dabe69 device_attach +EXPORT_SYMBOL_GPL vmlinux 0xc7df9578 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0xc7e39bca ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc7e3d24f inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc7ed293c usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0xc7ff5062 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0xc82c5da2 skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0xc840038d relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0xc879b92b kvm_clear_guest_page +EXPORT_SYMBOL_GPL vmlinux 0xc879c7b3 key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0xc87c1f84 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xc87ca811 led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0xc88afdf6 __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xc898c6ab ata_sas_port_async_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc8add232 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0xc8c98633 usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xc8fdeeff inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc9163e8a percpu_ida_for_each_free +EXPORT_SYMBOL_GPL vmlinux 0xc9191d3c scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc961ac32 tpm_remove_hardware +EXPORT_SYMBOL_GPL vmlinux 0xc9641b48 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0xc976639a rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0xc97d1140 cpufreq_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0xc9a28c2f ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xc9c8a93c class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xc9cfa97f of_pci_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xca1746ba ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0xca1909a8 raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0xca377ba3 bio_trim +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca85d8cf tracepoint_probe_update_all +EXPORT_SYMBOL_GPL vmlinux 0xca892ba7 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0xca946187 of_clk_add_provider +EXPORT_SYMBOL_GPL vmlinux 0xcab128dc subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0xcab49cb1 irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcac5aca0 get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0xcae36a40 regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0xcaefcb87 unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb1a1d79 device_store_int +EXPORT_SYMBOL_GPL vmlinux 0xcb28d7b9 pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xcb2cabb5 i2c_unlock_adapter +EXPORT_SYMBOL_GPL vmlinux 0xcb3827ac crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0xcb469d2b ddebug_add_module +EXPORT_SYMBOL_GPL vmlinux 0xcb5c6ed0 wm8400_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xcb9b162e clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0xcbbb53bb dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xcbbd2564 ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0xcbe6532a wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xcbe9d5be devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0xcbee20b2 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0xcc07935a blk_queue_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xcc1f1c3d inet_twdr_hangman +EXPORT_SYMBOL_GPL vmlinux 0xcc23c570 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcc268e13 kvmppc_prepare_to_enter +EXPORT_SYMBOL_GPL vmlinux 0xcc27775f bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xcc2b325d devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0xcc417037 rq_flush_dcache_pages +EXPORT_SYMBOL_GPL vmlinux 0xcc44961f kvmppc_alloc_lpid +EXPORT_SYMBOL_GPL vmlinux 0xcc4b903d regmap_update_bits_async +EXPORT_SYMBOL_GPL vmlinux 0xcc85fcb6 async_schedule +EXPORT_SYMBOL_GPL vmlinux 0xcc8c4990 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xcc99919f ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xcceb0634 ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xcd1457ab __module_address +EXPORT_SYMBOL_GPL vmlinux 0xcd2cf13b blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0xcd300235 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0xcd5d7387 tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0xcd64f267 usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xcd7a6658 get_device +EXPORT_SYMBOL_GPL vmlinux 0xcd827d1f fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0xcd85f019 rtc_irq_set_freq +EXPORT_SYMBOL_GPL vmlinux 0xcd88d95d mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xcd8a3d40 crypto_aead_type +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcdbb767e __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcdd07e95 elv_register +EXPORT_SYMBOL_GPL vmlinux 0xce0b9b59 max77693_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xce0c6877 sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0xce17dc26 class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xce22f928 kill_pid_info_as_cred +EXPORT_SYMBOL_GPL vmlinux 0xce46e140 ktime_get_ts +EXPORT_SYMBOL_GPL vmlinux 0xce522cef regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xce6a9d9a trace_current_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xceb1f126 mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0xcedbeabc debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcefc34d7 xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0xceff7467 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0xcf3320b4 scsi_internal_device_unblock +EXPORT_SYMBOL_GPL vmlinux 0xcf33e870 __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0xcf38c226 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf637514 inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0xcf68a5ec clockevents_unbind +EXPORT_SYMBOL_GPL vmlinux 0xcf901458 crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0xcfa39eca __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0xcfc68341 synchronize_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0xcfd1ac68 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0xcfd2eee1 i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xcff3fa1f regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0xd03c7700 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0xd040a6dd crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0xd047f34d blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0xd0490a1e spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd0b5b416 tpm_dev_release +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0c8d27a regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0xd14bc4d9 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xd14e8de8 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0xd155f0aa ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0xd16712f3 crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xd1af83d4 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0xd1b195e7 rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0xd1b2db37 tracepoint_probe_register_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xd1bcf62d usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0xd1cd8df6 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xd1ead144 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0xd1f12ee1 of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd23c8884 proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0xd24402a8 sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0xd251d8a8 rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0xd25318c8 tcp_peer_is_proven +EXPORT_SYMBOL_GPL vmlinux 0xd258217d clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0xd25830ed extcon_update_state +EXPORT_SYMBOL_GPL vmlinux 0xd25a5d6b fuse_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd2627b57 tpm_show_timeouts +EXPORT_SYMBOL_GPL vmlinux 0xd265fc6a list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0xd26e5fe1 device_reset +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd27de53e tpm_dev_vendor_release +EXPORT_SYMBOL_GPL vmlinux 0xd2b41f2f usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xd2b6a5ef inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xd2baebc7 sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0xd2bd45c2 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0xd2c45ea4 of_pci_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0xd30f3942 tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0xd31b6683 task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0xd32fe193 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xd3387dac pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xd33c249a pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0xd38e2e46 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xd3ac5a34 ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0xd3acf9fb devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xd3bf989c pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xd3cc3099 usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0xd3e4d257 swiotlb_tbl_sync_single +EXPORT_SYMBOL_GPL vmlinux 0xd3f02292 ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0xd3f67c71 led_classdev_register +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4136f3b sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xd427f445 vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd49090c8 wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4cad45e clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xd4dabae4 ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0xd527fa8c platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0xd582227a leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xd5b39ad5 usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xd5bd7dac ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0xd5df315d hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xd62d9d0d ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xd6482e3b debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0xd650235a adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0xd661eb20 skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0xd66e370e dma_buf_kunmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0xd672a43d skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd67ed454 kvmppc_emulate_mmio +EXPORT_SYMBOL_GPL vmlinux 0xd69c448d tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0xd6a89114 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0xd6c31411 transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0xd6c42c1c class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xd6e3e15c vtime_common_account_irq_enter +EXPORT_SYMBOL_GPL vmlinux 0xd6feefa5 agp_num_entries +EXPORT_SYMBOL_GPL vmlinux 0xd705b4c7 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0xd7216d97 swiotlb_tbl_unmap_single +EXPORT_SYMBOL_GPL vmlinux 0xd731ded8 blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xd752f5af debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd77c0bc8 klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xd7a4a7e6 platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0xd7c3f209 device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd7d199c1 usb_bus_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xd7f6506e scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0xd7f6e641 regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0xd80c2071 cpufreq_frequency_table_target +EXPORT_SYMBOL_GPL vmlinux 0xd80f6461 __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0xd81de62c ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xd81ef0e8 ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0xd820c283 eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xd828a786 unregister_jprobes +EXPORT_SYMBOL_GPL vmlinux 0xd8328a90 extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xd8495abc scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xd8525ea7 fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0xd87601cc ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd880dbab debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0xd8c3a2e1 ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0xd8c505d9 debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0xd942d353 ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0xd97545e3 balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0xd9784c74 pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0xd9a34035 __clk_get_flags +EXPORT_SYMBOL_GPL vmlinux 0xd9b03851 inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xd9b36f70 tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0xd9cde59d unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xd9ecb670 ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xd9f4c253 wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0xda097122 __clocksource_updatefreq_scale +EXPORT_SYMBOL_GPL vmlinux 0xda0a4d22 mpic_msgr_enable +EXPORT_SYMBOL_GPL vmlinux 0xda1fcb08 inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0xda23744b __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0xda2c3211 platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0xda44cb37 setup_charger_manager +EXPORT_SYMBOL_GPL vmlinux 0xda68a1ce ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xda899fe2 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0xda8cb2e5 threads_core_mask +EXPORT_SYMBOL_GPL vmlinux 0xdaa6f32b ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0xdac9e923 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xdaf352a9 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdb03fe37 fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0xdb04cacc tracepoint_probe_unregister_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xdb1d3fe3 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0xdb28fbd8 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xdb2ad162 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0xdb30761a xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0xdb3566a8 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xdb66642b spi_unregister_master +EXPORT_SYMBOL_GPL vmlinux 0xdb71f780 kvm_vcpu_init +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdba80fc1 of_fdt_unflatten_tree +EXPORT_SYMBOL_GPL vmlinux 0xdbb6e3f1 devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xdbe1e115 disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0xdbe1f48c rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0xdbe83825 usb_string +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc1e15f1 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xdc4de428 ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0xdc69dfa7 regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0xdc7cc23f pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc8c401d relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdccc810b irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0xdcf81f43 driver_attach +EXPORT_SYMBOL_GPL vmlinux 0xdd2efc0f ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0xdd2fa193 usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd729424 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0xdda2b358 xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0xddc3b2f9 ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0xddd58dc0 ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0xdde3aa14 __clk_register +EXPORT_SYMBOL_GPL vmlinux 0xde2902e6 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xde33a5f5 tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0xde3f18b5 kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL vmlinux 0xde5b2626 pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0xde5d4ee4 tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0xdeaed23b ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0xdee7966e unregister_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0xdeed570f ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0xdef91cd6 sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf77e6c4 balloon_devinfo_alloc +EXPORT_SYMBOL_GPL vmlinux 0xdfa93cef scom_controller +EXPORT_SYMBOL_GPL vmlinux 0xdfa9f9af crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0xdfbe513b irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xdfef932f spi_master_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe007de41 kallsyms_lookup_name +EXPORT_SYMBOL_GPL vmlinux 0xe02eb6d0 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0xe036b3e9 mpic_msgr_put +EXPORT_SYMBOL_GPL vmlinux 0xe045dbce wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0xe089cfcc agp_memory_reserved +EXPORT_SYMBOL_GPL vmlinux 0xe09b8d63 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0xe11788b6 fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0xe122da78 __scsi_get_command +EXPORT_SYMBOL_GPL vmlinux 0xe13c355f module_mutex +EXPORT_SYMBOL_GPL vmlinux 0xe13e1e14 subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xe153cc4f ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0xe15ce471 devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xe16fc993 ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe18703ce call_filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0xe18e02e9 inet_csk_reqsk_queue_prune +EXPORT_SYMBOL_GPL vmlinux 0xe1961a68 mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0xe19eb1c4 percpu_ida_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe1acfc17 gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xe1b46bcd usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1c32794 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xe1daceb8 netlink_alloc_skb +EXPORT_SYMBOL_GPL vmlinux 0xe1f26411 ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0xe1f49e0a __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0xe20a861b cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xe2245d60 kvm_vcpu_kick +EXPORT_SYMBOL_GPL vmlinux 0xe22cb4c2 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0xe26b6c45 find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0xe26bb08d kvmppc_kvm_pv +EXPORT_SYMBOL_GPL vmlinux 0xe29e1105 inet_hash +EXPORT_SYMBOL_GPL vmlinux 0xe2b8c606 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0xe2ddbb10 rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe31df509 da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0xe34bf9b7 blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0xe364ff80 pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe3792447 i2c_lock_adapter +EXPORT_SYMBOL_GPL vmlinux 0xe38178e3 blkg_lookup_create +EXPORT_SYMBOL_GPL vmlinux 0xe384a102 usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0xe38d4ddb dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0xe3960f6e shash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0xe39ed038 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0xe3ac0fde cpu_remove_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0xe3d00e4d usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe3d7750e btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0xe3fec60e __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0xe4485eea scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0xe453ea93 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe47297f4 blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0xe47db5e9 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe49d5403 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0xe4a398da crypto_alg_lookup +EXPORT_SYMBOL_GPL vmlinux 0xe4c031f8 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xe4c4b28f gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xe4e4ad8e fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0xe50e5c95 adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe50fb26e spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xe51c040f register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xe52ae762 __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xe55265b4 sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0xe5540302 enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xe5548d7a of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xe5583b93 ping_proc_register +EXPORT_SYMBOL_GPL vmlinux 0xe564108d usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0xe56d0649 usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58fb452 aer_irq +EXPORT_SYMBOL_GPL vmlinux 0xe5975ab7 debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0xe5a810e6 kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL vmlinux 0xe5b68a5c alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xe5d5b27a pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0xe5db9041 securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0xe61ccbf4 clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0xe651f76e selinux_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe661df8a fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe6644bec usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0xe6673cc6 devres_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe67c7450 ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0xe68be4e5 kvm_init +EXPORT_SYMBOL_GPL vmlinux 0xe68cc406 __get_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xe68d9976 tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0xe6b6f315 pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xe6c68334 ddebug_remove_module +EXPORT_SYMBOL_GPL vmlinux 0xe6e1c5fe uuid_be_gen +EXPORT_SYMBOL_GPL vmlinux 0xe6f1136e ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0xe70f3261 spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0xe7112e53 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0xe7336c61 devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe73f78bf usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe781b320 dm_dispatch_request +EXPORT_SYMBOL_GPL vmlinux 0xe7864216 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0xe7c8ae75 skcipher_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe7f8704b tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe820c8c1 verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xe838bfa9 ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe8400441 of_property_read_string_index +EXPORT_SYMBOL_GPL vmlinux 0xe85c55e7 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe864e60e crypto_alloc_instance +EXPORT_SYMBOL_GPL vmlinux 0xe88e3cdc platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xe89bd243 ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe8b6ddde key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0xe8b76d4a rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xe8bc206a stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xe8e0cd9d setup_irq +EXPORT_SYMBOL_GPL vmlinux 0xe9224828 __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xe923add9 regmap_fields_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe9595ff1 blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0xe9de5a59 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0xea102e70 br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea24dd8e rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0xea418e0f atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0xea628c20 bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0xea859b17 shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xeab4d91b irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0xeb1c3628 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xeb1c4e97 ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0xeb373308 ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0xeb4da521 flush_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0xeb8ae736 klist_init +EXPORT_SYMBOL_GPL vmlinux 0xebaa1115 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0xebb27e4d cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xebb32a3b pci_hp_change_slot_info +EXPORT_SYMBOL_GPL vmlinux 0xebec57c4 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xebf962f6 regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0xec029658 sk_unattached_filter_create +EXPORT_SYMBOL_GPL vmlinux 0xec0e9de4 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0xec137a35 kvmppc_pr_ops +EXPORT_SYMBOL_GPL vmlinux 0xec1b043e regulator_suspend_prepare +EXPORT_SYMBOL_GPL vmlinux 0xec25f967 klist_del +EXPORT_SYMBOL_GPL vmlinux 0xec38ec8d show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0xec39d6ee usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0xec3a8c97 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xec4404cc pstore_register +EXPORT_SYMBOL_GPL vmlinux 0xec6da538 pwm_enable +EXPORT_SYMBOL_GPL vmlinux 0xec8b79a3 ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xecdbd801 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0xed153b92 ata_sg_init +EXPORT_SYMBOL_GPL vmlinux 0xed4fee40 pci_configure_slot +EXPORT_SYMBOL_GPL vmlinux 0xed541a6b blkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0xed75162d tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xed7aecfe clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0xeda4ccf1 key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0xeda4d481 i2c_new_probed_device +EXPORT_SYMBOL_GPL vmlinux 0xedaced14 exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0xedd49930 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xede0c319 shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0xee147060 set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0xee275256 cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0xee47f53b tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0xee4a6828 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee850acb crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0xee8da4ca kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xeea02d78 ata_sas_port_async_resume +EXPORT_SYMBOL_GPL vmlinux 0xeea5b819 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0xeeea9b48 kvm_is_visible_gfn +EXPORT_SYMBOL_GPL vmlinux 0xef264a11 tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef8c4a31 tpm_show_enabled +EXPORT_SYMBOL_GPL vmlinux 0xef98c182 fuse_get_req +EXPORT_SYMBOL_GPL vmlinux 0xefa323c4 rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0xefe94866 irq_find_host +EXPORT_SYMBOL_GPL vmlinux 0xeff40b09 regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0xeff8400b __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xeffa6b8f __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0xf012c38b blkio_subsys +EXPORT_SYMBOL_GPL vmlinux 0xf06b1937 sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0xf0a35479 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0xf0a53268 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0xf0b22dd6 usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xf0b65484 of_irq_parse_and_map_pci +EXPORT_SYMBOL_GPL vmlinux 0xf0c085bd aead_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0xf0c835af agp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0xf0cae83e yield_to +EXPORT_SYMBOL_GPL vmlinux 0xf0f5dbc2 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0xf1055bf9 fat_detach +EXPORT_SYMBOL_GPL vmlinux 0xf110db8d mpic_subsys +EXPORT_SYMBOL_GPL vmlinux 0xf14c2696 ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0xf158f170 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0xf1691b96 ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0xf1820c59 relay_open +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf1a136b0 pci_renumber_slot +EXPORT_SYMBOL_GPL vmlinux 0xf1a62b6f of_i8042_kbd_irq +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1bc407b regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0xf1f7b105 xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0xf20c0e86 sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf2202064 class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xf258f68a regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0xf25c1ad9 tpm_show_pubek +EXPORT_SYMBOL_GPL vmlinux 0xf25dc355 spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0xf265d5c0 fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0xf27977e2 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0xf295e2a9 ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0xf2bc2550 pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0xf2cabffd inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0xf2d33099 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0xf2eab0a5 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xf2f077cc pkey_id_type_name +EXPORT_SYMBOL_GPL vmlinux 0xf2fca922 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0xf3012f6c rh_free +EXPORT_SYMBOL_GPL vmlinux 0xf3129fe3 ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xf315de33 regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0xf319b4a5 max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf3310fb8 tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf3478133 devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xf35e954b blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0xf38c8e8f ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0xf397c9a5 irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0xf3a7abdb devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3b85133 usb_bus_start_enum +EXPORT_SYMBOL_GPL vmlinux 0xf3c3a3ea tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xf3ed1dc3 extcon_get_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0xf420a36d blkg_stat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0xf447ba65 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xf472154b irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xf473f6fa ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0xf4755db7 vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0xf494f618 mmc_regulator_get_ocrmask +EXPORT_SYMBOL_GPL vmlinux 0xf499fdb2 rcu_barrier_bh +EXPORT_SYMBOL_GPL vmlinux 0xf4ae014b ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0xf4b2308e regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xf4d13ba2 kvm_vcpu_uninit +EXPORT_SYMBOL_GPL vmlinux 0xf4d93385 ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xf4da3546 kvmppc_init_lpid +EXPORT_SYMBOL_GPL vmlinux 0xf4fc2d6c __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf5619d9a rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0xf57b9887 devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xf58ea1b4 pci_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0xf59a2ef1 rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0xf59ca46f debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5aece18 blk_queue_flush +EXPORT_SYMBOL_GPL vmlinux 0xf5bcf1b2 __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0xf5d4f27c single_release_net +EXPORT_SYMBOL_GPL vmlinux 0xf5e1146a debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0xf5e7f053 rh_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf5fef4e3 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf60025cc rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0xf61736ba rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0xf620174d fuse_conn_kill +EXPORT_SYMBOL_GPL vmlinux 0xf650660f pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0xf6523a92 usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xf680e5a6 blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0xf684aaa5 regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xf6c08392 tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf704bdff pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xf71b1380 of_get_dma_window +EXPORT_SYMBOL_GPL vmlinux 0xf7237c14 scom_map_device +EXPORT_SYMBOL_GPL vmlinux 0xf73c2d5c sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf797465a raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0xf7ac2733 debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0xf7d7b635 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0xf7dfdccd serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0xf80620dd __ip_route_output_key +EXPORT_SYMBOL_GPL vmlinux 0xf816c866 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf837e0eb unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0xf845f45a ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0xf8741fb3 __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xf8802492 print_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xf8a320e2 crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0xf8b1c0d0 ping_seq_fops +EXPORT_SYMBOL_GPL vmlinux 0xf8b78559 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0xf8e398fc memstart_addr +EXPORT_SYMBOL_GPL vmlinux 0xf8ee31db dbs_check_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3d0b kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0xf90f7b1d inet6_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0xf910c71a serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0xf92ce956 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf953daa0 hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf96f8147 crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0xf97fa91a ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xf9933c03 reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xf99e53c9 usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9a53487 pci_pri_status +EXPORT_SYMBOL_GPL vmlinux 0xf9ae2a4f class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xf9af9396 vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0xf9ca3160 ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xf9cf401b adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xf9d2611b alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0xf9ddec67 usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0xf9e6d3d6 sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xf9f9687f pci_pri_enabled +EXPORT_SYMBOL_GPL vmlinux 0xfa012fe7 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0xfa0cbe12 tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa1f4662 scatterwalk_start +EXPORT_SYMBOL_GPL vmlinux 0xfa2730b6 blk_queue_bio +EXPORT_SYMBOL_GPL vmlinux 0xfa2faeaa tpm_show_pcrs +EXPORT_SYMBOL_GPL vmlinux 0xfa901b31 compat_get_timespec +EXPORT_SYMBOL_GPL vmlinux 0xfaa26fd4 pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0xfaa37d33 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xfab60503 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0xfac744e3 ablkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0xfae42d16 led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0xfafec8d1 crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0xfb22bc6c cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0xfb25f3da __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb4eaac5 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0xfb52b77d __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0xfb53b70f uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0xfb685485 relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb9b5c93 of_extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xfbbedefd of_prop_next_string +EXPORT_SYMBOL_GPL vmlinux 0xfbfa77f0 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc10fccd ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xfc137a50 nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0xfc201b66 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0xfc232fda regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0xfc7252fc __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0xfc72d987 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0xfca7db6e tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0xfcb6e6ce pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0xfcc70b23 single_open_net +EXPORT_SYMBOL_GPL vmlinux 0xfcd7bc0b ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0xfcdea40f pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xfd71d684 pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0xfd8fd49f ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0xfd991be4 usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xfdf822ea fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0xfdfaad52 sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0xfe1fa0db of_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0xfe4ef241 napi_by_id +EXPORT_SYMBOL_GPL vmlinux 0xfe5d803b md_stop +EXPORT_SYMBOL_GPL vmlinux 0xfe63cdec blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0xfe75ec7f ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0xfe7e35d9 pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xfe810d54 tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0xfe9525bb platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfeabd565 pci_pri_stopped +EXPORT_SYMBOL_GPL vmlinux 0xfebc11f0 pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfed1deb8 __blk_put_request +EXPORT_SYMBOL_GPL vmlinux 0xfedc738a bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0xfef8a166 trace_current_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xfeff450a sec_reg_update +EXPORT_SYMBOL_GPL vmlinux 0xff0e7620 __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff8862d7 rh_get_stats +EXPORT_SYMBOL_GPL vmlinux 0xffb17c1f blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0xffb72056 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0xffc9f58d pcibios_remove_pci_devices +EXPORT_SYMBOL_GPL vmlinux 0xffe518d3 regmap_can_raw_write --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/powerpc/powerpc64-emb.compiler +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/powerpc/powerpc64-emb.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 4.8.2-19ubuntu1) 4.8.2 --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/powerpc/powerpc64-emb.modules +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/powerpc/powerpc64-emb.modules @@ -0,0 +1,3634 @@ +3c574_cs +3c589_cs +3c59x +3w-9xxx +3w-sas +3w-xxxx +6lowpan +6pack +8021q +8139cp +8139too +8250_dw +8250_pci +8255 +8255_pci +8390 +88pm800 +88pm805 +88pm80x +88pm80x_onkey +88pm860x_battery +88pm860x_bl +88pm860x_charger +88pm860x_onkey +88pm860x-ts +9p +9pnet +9pnet_rdma +9pnet_virtio +a100u2w +a3d +a8293 +aacraid +aat2870_bl +aat2870-regulator +ab3100 +ab3100-otp +ac97_bus +acard-ahci +acecad +acenic +act200l-sir +act_csum +act_gact +act_ipt +actisys-sir +act_mirred +act_nat +act_pedit +act_police +act_simple +act_skbedit +ad2s1200 +ad2s1210 +ad2s90 +ad5064 +ad525x_dpot +ad525x_dpot-i2c +ad525x_dpot-spi +ad5360 +ad5380 +ad5398 +ad5421 +ad5446 +ad5449 +ad5504 +ad5624r_spi +ad5686 +ad5755 +ad5764 +ad5791 +ad5930 +ad5933 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7152 +ad7192 +ad7266 +ad7280a +ad7291 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +ad7476 +ad7606 +ad7746 +ad7780 +ad7791 +ad7793 +ad7816 +ad7877 +ad7879 +ad7879-i2c +ad7879-spi +ad7887 +ad7923 +ad799x +ad8366 +ad9523 +ad9832 +ad9834 +ad9850 +ad9852 +ad9910 +ad9951 +adcxx +addi_apci_035 +addi_apci_1032 +addi_apci_1500 +addi_apci_1516 +addi_apci_1564 +addi_apci_16xx +addi_apci_2032 +addi_apci_2200 +addi_apci_3501 +addi_apci_3xxx +addi_watchdog +ade7753 +ade7754 +ade7758 +ade7759 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adfs +adi +adis16060 +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16204 +adis16209 +adis16220 +adis16240 +adis16260 +adis16400 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1275 +adm8211 +adm9240 +adp5520_bl +adp5520-keys +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +ads1015 +ads7828 +ads7846 +ads7871 +ad_sigma_delta +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adv7180 +adv_pci1710 +adv_pci1723 +adv_pci1724 +adv_pci_dio +adxl34x +adxl34x-i2c +adxl34x-spi +adxrs450 +af_802154 +af9013 +af9033 +af_alg +affs +af_key +af_packet_diag +af-rxrpc +ah4 +ah6 +aha152x_cs +ahci +ahci_platform +aic79xx +aic7xxx +aic94xx +aiptek +aircable +airo +airo_cs +ak8975 +algif_hash +algif_skcipher +ali-ircc +alim7101_wdt +alphatrack +altera-ci +altera_jtaguart +altera_ps2 +altera-stapl +altera_uart +alx +amc6821 +amd5536udc +amd8111e +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pci224 +amplc_pci230 +amplc_pci263 +ams369fg06 +analog +anatop-regulator +ansi_cprng +anubis +aoe +apbps2 +apds9300 +apds9802als +apds990x +appledisplay +appletalk +appletouch +applicom +ar5523 +ar7part +arc4 +arc_emac +arcmsr +arcnet +arc_ps2 +arc-rawmode +arc-rimi +arc_uart +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +arptable_filter +arp_tables +arpt_mangle +as3711_bl +as3711-regulator +as3722-regulator +as5011 +asc7621 +asix +ast +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at86rf230 +at91_ether +ata_piix +atbm8830 +aten +ath +ath10k_core +ath10k_pci +ath3k +ath5k +ath6kl_core +ath6kl_sdio +ath6kl_usb +ath9k +ath9k_common +ath9k_htc +ath9k_hw +ati_remote +ati_remote2 +atl1 +atl1c +atl1e +atl2 +atm +atmel +atmel_cs +atmel_mxt_ts +atmel_pci +atmel_pwm +atmel-pwm-bl +atmel-rng +atmel-ssc +atmtcp +atp870u +atxp1 +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo_k1900fb +auo_k1901fb +auo_k190x +auo-pixcir-ts +authenc +authencesn +auth_rpcgss +autofs4 +avma1_cs +avm_cs +avmfritz +ax25 +ax88179_178a +axnet_cs +b1 +b1dma +b1pci +b1pcmcia +b2c2-flexcop +b2c2-flexcop-pci +b2c2-flexcop-usb +b43 +b43legacy +b44 +bas_gigaset +batman-adv +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm203x +bcm3510 +bcm5974 +bcma +bcma-hcd +bcm_wimax +bd6107 +be2iscsi +be2net +befs +belkin_sa +bfa +bfs +bfusb +bh1770glc +bh1780gli +binfmt_misc +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +bluecard_cs +bluetooth +bma150 +bma180 +bman_debugfs_interface +bmp085-i2c +bmp085-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bonding +booke_wdt +bpa10x +bpck +bpctl_mod +bpqether +bq2415x_charger +bq24190_charger +bq24735-charger +bq27x00_battery +br2684 +brcmfmac +brcmsmac +brcmutil +bridge +broadsheetfb +bsd_comp +bt3c_cs +bt878 +btcoexist +btcx-risc +btmrvl +btmrvl_sdio +btmtk_usb +btrfs +btsdio +bttv +btuart_cs +btusb +btwilink +bu21013_ts +budget +budget-av +budget-ci +budget-core +budget-patch +bw-qcam +bypass +c4 +c67x00 +caam +caamalg +caamhash +caam_jr +caamrng +cachefiles +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camellia_generic +can +can-bcm +can-dev +can-gw +can-raw +capi +capidrv +capmode +carl9170 +carminefb +cassini +cast5_generic +cast6_generic +cast_common +catc +cb710 +cb710-mmc +cb_das16_cs +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +cb_pcimdda +cc770 +cc770_isa +cc770_platform +c_can +c_can_pci +c_can_platform +cciss +ccm +cdc-acm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc-phonet +cdc_subset +cdc-wdm +cedusb +ceph +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +chipreg +chnl_net +cifs +ci_hdrc +ci_hdrc_imx +ci_hdrc_msm +ci_hdrc_pci +cirrus +cirrusfb +clearpad_tm1217 +clip +clk-max77686 +clk-s2mps11 +clk-si5351 +clk-twl6040 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_fw +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm36651 +cm4000_cs +cm4040_cs +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cmtp +cnic +cobra +coda +com20020 +com20020_cs +com20020-pci +com90io +com90xx +comedi +comedi_bond +comedi_fc +comedi_parport +comedi_test +comm +configfs +contec_pci_dio +cordic +core +cp210x +cpc925_edac +cpia2 +c-qcam +cramfs +crc32 +crc7 +crc8 +crc-ccitt +crc-itu-t +cros_ec +cros_ec_i2c +cros_ec_keyb +cros_ec_spi +cryptd +cryptoloop +crypto_null +crypto_user +crystalhd +cs5345 +cs53l32a +csiostor +ctr +cts +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx8800 +cx8802 +cx88-alsa +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx88xx +cxacru +cxd2099 +cxd2820r +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxt1e1 +cy8ctmg110_ts +cyapa +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +cyttsp_core +cyttsp_i2c +cyttsp_i2c_common +cyttsp_spi +da9030_battery +da9034-ts +da903x +da903x_bl +da9052-battery +da9052_bl +da9052-hwmon +da9052_onkey +da9052-regulator +da9052_tsi +da9052_wdt +da9055-hwmon +da9055_onkey +da9055-regulator +da9055_wdt +da9063-regulator +da9210-regulator +DAC960 +daqboard2000 +das08 +das08_cs +das08_pci +db9 +dc395x +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +dccp_probe +ddbridge +de2104x +de4x5 +decnet +deflate +defxx +denali +denali_dt +denali_pci +des_generic +designware_i2s +dgap +dgnc +dgrp +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dibx000_common +digi_acceleport +diskonchip +divacapi +divadidd +diva_idi +diva_mnt +divas +dl2k +dlci +dlm +dm1105 +dm9601 +dm-bio-prison +dm-bufio +dm-cache +dm-cache-cleaner +dm-cache-mq +dm-crypt +dm-delay +dmfe +dm-flakey +dm-log +dm-log-userspace +dm-mirror +dm-multipath +dm-persistent-data +dm-queue-length +dm-raid +dm-region-hash +dm-round-robin +dm-service-time +dm-snapshot +dm-switch +dm-thin-pool +dm-verity +dmx3191d +dm-zero +dnet +dn_rtmsg +docg3 +docg4 +dpa_uio +drbd +drm +drm_kms_helper +drm_usb +drxd +drxk +ds1621 +ds1682 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds620 +dsa_core +dsbr100 +dscc4 +dss1_divert +dst +dst_ca +dstr +dt3000 +dt3155v4l +dt9812 +dtl1_cs +dummy +dummy-irq +dvb-as102 +dvb-bt8xx +dvb-core +dvb-pll +dvb-ttpci +dvb-ttusb-budget +dvb-usb +dvb-usb-a800 +dvb-usb-af9005 +dvb-usb-af9005-remote +dvb-usb-af9015 +dvb-usb-af9035 +dvb-usb-anysee +dvb-usb-au6610 +dvb-usb-az6007 +dvb-usb-az6027 +dvb-usb-ce6230 +dvb-usb-cinergyT2 +dvb-usb-cxusb +dvb-usb-dib0700 +dvb-usb-dibusb-common +dvb-usb-dibusb-mb +dvb-usb-dibusb-mc +dvb-usb-digitv +dvb-usb-dtt200u +dvb-usb-dtv5100 +dvb-usb-dw2102 +dvb-usb-ec168 +dvb-usb-friio +dvb-usb-gl861 +dvb-usb-gp8psk +dvb-usb-it913x +dvb-usb-lmedm04 +dvb-usb-m920x +dvb-usb-mxl111sf +dvb-usb-nova-t-usb2 +dvb-usb-opera +dvb-usb-pctv452e +dvb-usb-rtl28xxu +dvb-usb-technisat-usb2 +dvb-usb-ttusb2 +dvb-usb-umt-010 +dvb_usb_v2 +dvb-usb-vp702x +dvb-usb-vp7045 +dwc2 +dwc2_pci +dwc2_platform +dwc3 +dwc3-pci +dw_dmac +dw_dmac_core +dw_dmac_pci +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +e4000 +earth-pt1 +eata +ebt_802_3 +ebtable_broute +ebtable_filter +ebtable_nat +ebtables +ebt_among +ebt_arp +ebt_arpreply +ebt_dnat +ebt_ip +ebt_ip6 +ebt_limit +ebt_log +ebt_mark +ebt_mark_m +ebt_nflog +ebt_pkttype +ebt_redirect +ebt_snat +ebt_stp +ebt_vlan +ec100 +echo +edac_core +edt-ft5x06 +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efs +egalax_ts +ehset +elo +elsa_cs +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +emc1403 +emc2103 +emc6w201 +em_canid +em_cmp +emi26 +emi62 +em_ipset +em_meta +em_nbyte +empeg +ems_pci +ems_pcmcia +ems_usb +em_text +emu10k1-gp +em_u32 +enc28j60 +enclosure +eni +enic +epat +epia +epic100 +eql +esas2r +esd_usb2 +esi-sir +esp4 +esp6 +et131x +ethoc +evbug +exofs +extcon-adc-jack +extcon-arizona +extcon-gpio +extcon-max77693 +extcon-max8997 +extcon-palmas +ezusb +f2fs +f75375s +f81232 +fakelb +fan53555 +farsync +faulty +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_cs +fealnx +ff-memless +fid +firedtv +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fit2 +fit3 +fixed +fld +flexcan +floppy +fm801-gp +fmc +fmc-chardev +fmc-fakedev +fmc-trivial +fmc-write-eeprom +fm_drv +fmvj18x_cs +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +freevxfs +friq +frpw +fsa9480 +fscache +fsl-diu-fb +fsldma +fsl_elbc_nand +fsl_hypervisor +fsl_ifc_nand +fsl_pq_mdio +fsl_usb2_udc +ft1000 +ft1000_pcmcia +ftdi-elan +ftdi_sio +ftl +fujitsu_ts +fusbh200-hcd +g450_pll +g760a +g762 +g_acm_ms +gadgetfs +gamecon +gameport +garmin_gps +garp +g_audio +g_cdc +gcm +g_dbgp +gdmtty +gdmulte +gdmwm +gdth +generic +generic-adc-battery +generic_bl +gen_probe +g_ether +gf128mul +gf2k +g_ffs +gfs2 +ghash-generic +g_hid +gianfar_driver +gianfar_ptp +gigaset +girbil-sir +gl518sm +gl520sm +gl620a +gluebi +g_mass_storage +g_midi +g_ncm +g_nokia +go7007 +go7007-loader +go7007-usb +goku_udc +goldfishfb +gp2ap002a00f +gp2ap020a00f +gpio +gpio-74x164 +gpio-addr-flash +gpio-adnp +gpio-adp5520 +gpio-adp5588 +gpio-amd8111 +gpio-arizona +gpio_backlight +gpio-charger +gpio-da9052 +gpio-da9055 +gpio-fan +gpio-generic +gpio-grgpio +gpio-ir-recv +gpio-janz-ttl +gpio-kempld +gpio_keys +gpio_keys_polled +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-mc33880 +gpio-mcp23s08 +gpio-ml-ioh +gpio_mouse +gpio-pca953x +gpio-pcf857x +gpio-rdc321x +gpio-regulator +gpio_tilt_polled +gpio-tps65912 +gpio-ts5500 +gpio-twl4030 +gpio-twl6040 +gpio-ucb1400 +gpio-viperboard +gpio-vx855 +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +g_printer +grcan +gre +grip +grip_mp +gsc_hpdi +g_serial +gspca_benq +gspca_conex +gspca_cpia1 +gspca_etoms +gspca_finepix +gspca_gl860 +gspca_jeilinj +gspca_jl2005bcd +gspca_kinect +gspca_konica +gspca_m5602 +gspca_main +gspca_mars +gspca_mr97310a +gspca_nw80x +gspca_ov519 +gspca_ov534 +gspca_ov534_9 +gspca_pac207 +gspca_pac7302 +gspca_pac7311 +gspca_se401 +gspca_sn9c2028 +gspca_sn9c20x +gspca_sonixb +gspca_sonixj +gspca_spca1528 +gspca_spca500 +gspca_spca501 +gspca_spca505 +gspca_spca506 +gspca_spca508 +gspca_spca561 +gspca_sq905 +gspca_sq905c +gspca_sq930x +gspca_stk014 +gspca_stk1135 +gspca_stv0680 +gspca_stv06xx +gspca_sunplus +gspca_t613 +gspca_topro +gspca_tv8532 +gspca_vc032x +gspca_vicam +gspca_xirlink_cit +gspca_zc3xx +gtco +guillemot +gunze +g_webcam +gxt4500 +g_zero +hamachi +hampshire +hangcheck-timer +hanwang +hci +hci_uart +hci_vhci +hdlc +hdlc_cisco +hdlcdrv +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdpvr +he +hexium_gemini +hexium_orion +hfc4s8s_l1 +hfcmulti +hfcpci +hfcsusb +hfc_usb +hfs +hfsplus +hid +hid-a4tech +hid-apple +hid-appleir +hid-aureal +hid-axff +hid-belkin +hid-cherry +hid-chicony +hid-cypress +hid-dr +hid-elecom +hid-elo +hid-emsff +hid-ezkey +hid-gaff +hid-generic +hid-gyration +hid-holtekff +hid-holtek-kbd +hid-holtek-mouse +hid-huion +hid-icade +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-lenovo-tpkbd +hid-logitech +hid-logitech-dj +hid-magicmouse +hid-microsoft +hid-monterey +hid-multitouch +hid-ntrig +hid-ortek +hidp +hid-petalynx +hid-picolcd +hid-pl +hid-primax +hid-prodikeys +hid-roccat +hid-roccat-arvo +hid-roccat-common +hid-roccat-isku +hid-roccat-kone +hid-roccat-koneplus +hid-roccat-konepure +hid-roccat-kovaplus +hid-roccat-lua +hid-roccat-pyra +hid-roccat-ryos +hid-roccat-savu +hid-saitek +hid-samsung +hid-sensor-accel-3d +hid-sensor-als +hid-sensor-gyro-3d +hid-sensor-hub +hid-sensor-iio-common +hid-sensor-magn-3d +hid-sensor-trigger +hid-sjoy +hid-sony +hid-speedlink +hid-steelseries +hid-sunplus +hid-thingm +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-uclogic +hid-wacom +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hih6130 +hisax +hisax_fcpcipnp +hisax_isac +hisax_st5481 +hmc5843 +hmc6352 +hopper +hostap +hostap_cs +hostap_pci +hostap_plx +hp100 +hpfs +hpilo +hpsa +hptiop +hsi +hsi_char +hso +hsr +htc-pasic3 +htu21 +huawei_cdc_ncm +hwa-hc +hwa-rc +hwmon-vid +hx8357 +hysdn +i1480-dfu-usb +i1480-est +i2400m +i2400m-usb +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd8111 +i2c-arb-gpio-challenge +i2c-cbus-gpio +i2c-designware-core +i2c-designware-pci +i2c-designware-platform +i2c-dev +i2c-diolan-u2c +i2c-eg20t +i2c-gpio +i2c-hid +i2c-i801 +i2c-isch +i2c-kempld +i2c-matroxfb +i2c-mpc +i2c-mux +i2c-mux-gpio +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-nforce2 +i2c-ocores +i2c-parport +i2c-parport-light +i2c-pca-platform +i2c-piix4 +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-tiny-usb +i2c-via +i2c-viapro +i2c-viperboard +i2c-xiic +i2o_block +i2o_bus +i2o_core +i2o_proc +i2o_scsi +i40e +i5k_amb +i6300esb +i740fb +i82092 +ib_addr +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mad +ibmaem +ibmpex +ib_mthca +ib_qib +ib_sa +ib_srp +ib_srpt +ib_ucm +ib_umad +ib_uverbs +icp_multi +ics932s401 +idmouse +idt77252 +ieee802154 +ifb +iforce +igb +igbvf +iguanair +iio_dummy +iio_hwmon +iio-trig-interrupt +iio-trig-periodic-rtc +iio-trig-sysfs +ili210x +ili922x +ili9320 +imm +imon +ims-pcu +imx074 +imx_thermal +ina209 +ina2xx +industrialio +industrialio-triggered-buffer +inet_diag +inexio +inftl +initio +input-polldev +int51x1 +intel_vr_nor +interact +interval_tree_test +inv-mpu6050 +ioc4 +io_edgeport +io_ti +iowarrior +ip6_gre +ip6table_filter +ip6table_mangle +ip6table_nat +ip6table_raw +ip6_tables +ip6table_security +ip6t_ah +ip6t_eui64 +ip6t_frag +ip6t_hbh +ip6t_ipv6header +ip6t_MASQUERADE +ip6t_mh +ip6t_NPT +ip6t_REJECT +ip6t_rpfilter +ip6t_rt +ip6t_SYNPROXY +ip6_tunnel +ip6_vti +ipack +ipaq +ipcomp +ipcomp6 +ipddp +ipg +ip_gre +iphase +ipheth +ipip +ipmi_devintf +ipmi_poweroff +ipmi_si +ipmi_watchdog +ipoctal +ipr +ips +ip_set +ip_set_bitmap_ip +ip_set_bitmap_ipmac +ip_set_bitmap_port +ip_set_hash_ip +ip_set_hash_ipport +ip_set_hash_ipportip +ip_set_hash_ipportnet +ip_set_hash_net +ip_set_hash_netiface +ip_set_hash_netnet +ip_set_hash_netport +ip_set_hash_netportnet +ip_set_list_set +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +ip_tables +iptable_security +ipt_ah +ipt_CLUSTERIP +ipt_ECN +ipt_MASQUERADE +ipt_REJECT +ipt_rpfilter +ipt_SYNPROXY +ipt_ULOG +ip_tunnel +ip_vs +ip_vs_dh +ip_vs_ftp +ip_vs_lblc +ip_vs_lblcr +ip_vs_lc +ip_vs_nq +ip_vs_pe_sip +ip_vs_rr +ip_vs_sed +ip_vs_sh +ip_vs_wlc +ip_vs_wrr +ip_vti +ipw +ipw2100 +ipw2200 +ipwireless +ipx +ircomm +ircomm-tty +irda +irda-usb +ir-jvc-decoder +ir-kbd-i2c +irlan +ir-lirc-codec +ir-mce_kbd-decoder +ir-nec-decoder +irnet +ir-rc5-decoder +ir-rc5-sz-decoder +ir-rc6-decoder +ir-sanyo-decoder +ir-sony-decoder +irtty-sir +ir-usb +iscsi_boot_sysfs +iscsi_target_mod +iscsi_tcp +isdn +isdn_bsdcomp +isdnhdlc +isicom +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isofs +isp116x-hcd +isp1362-hcd +isp1704_charger +isp1760 +it913x-fe +itd1000 +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_c2 +iw_cm +iw_cxgb3 +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +iw_nes +ix2505v +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsm +kafs +kalmia +kaweth +kbic +kbtab +kcomedilib +ke_counter +kempld-core +kempld_wdt +kernelcapi +keucr +keyspan +keyspan_pda +keyspan_remote +kfifo_buf +khazad +kingsun-sir +kl5kusb105 +ko2iblnd +kobil_sct +ks0108 +ks8842 +ks8851 +ks8851_mll +ks959-sir +ksdazzle-sir +ksocklnd +ksz884x +ktti +kvaser_pci +kvaser_usb +kxsd9 +kxtj9 +kyrofb +l1oip +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +l2tp_ppp +l4f00242t03 +l64781 +lanai +lapb +lapbether +latch-addr-flash +lattice-ecp3-config +lcd +ld9040 +ldusb +lec +leds-88pm860x +leds-adp5520 +leds-atmel-pwm +leds-bd2802 +leds-blinkm +leds-da903x +leds-da9052 +leds-dac124s085 +leds-gpio +leds-lm3530 +leds-lm3533 +leds-lm355x +leds-lm3642 +leds-lp3944 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lt3593 +leds-max8997 +leds-mc13783 +leds-ot200 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pca9685 +leds-pwm +leds-regulator +leds-tca6507 +leds-wm831x-status +leds-wm8350 +ledtrig-backlight +ledtrig-camera +ledtrig-default-on +ledtrig-gpio +ledtrig-heartbeat +ledtrig-oneshot +ledtrig-timer +ledtrig-transient +legousbtower +lg2160 +lgdt3305 +lgdt330x +lgs8gxx +lg-vl600 +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libahci +libceph +libcfs +libcomposite +libcrc32c +libcxgbi +libertas +libertas_cs +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libore +libosd +libsas +libsrp +lightning +line6usb +lineage-pem +linear +lirc_bt829 +lirc_dev +lirc_igorplugusb +lirc_imon +lirc_parallel +lirc_sasem +lirc_serial +lirc_sir +lirc_zilog +lis3l02dq +lis3lv02d +lis3lv02d_i2c +lis3lv02d_spi +litelink-sir +lkkbd +llc +llc2 +llog_test +ll_temac +lm25066 +lm3533-als +lm3533_bl +lm3533-core +lm3533-ctrlbank +lm3630a_bl +lm3639_bl +lm63 +lm70 +lm73 +lm75 +lm77 +lm78 +lm80 +lm83 +lm8323 +lm8333 +lm85 +lm87 +lm90 +lm92 +lm93 +lm95234 +lm95241 +lm95245 +lms283gf05 +lms501kf03 +lmv +lnbp21 +lnbp22 +lnet +lnet_selftest +lockd +lov +lp +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp8755 +lp8788_bl +lp8788-charger +lpc_ich +lpc_sch +lpddr_cmds +lpfc +lru_cache +lrw +ltc2978 +ltc4151 +ltc4215 +ltc4245 +ltc4261 +ltv350qv +lustre +lv5207lp +lvfs +lz4 +lz4_compress +lz4hc +lz4hc_compress +m25p80 +m2m-deinterlace +m52790 +m88rs2000 +ma600-sir +mac80211 +mac80211_hwsim +mac802154 +macb +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mac-gaelic +mac-greek +mac_hid +mac-iceland +mac-inuit +mac-roman +mac-romanian +mac-turkish +macvlan +macvtap +mag3110 +magellan +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +matrix-keymap +matrix_keypad +matroxfb_accel +matroxfb_base +matroxfb_crtc2 +matroxfb_DAC1064 +matroxfb_g450 +matroxfb_maven +matroxfb_misc +matroxfb_Ti3026 +matrox_w1 +max1111 +max11801_ts +max1363 +max1586 +max16064 +max16065 +max1619 +max1668 +max17040_battery +max17042_battery +max197 +max2165 +max3100 +max34440 +max517 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77686 +max77693 +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925_bl +max8925_onkey +max8925_power +max8925-regulator +max8952 +max8973-regulator +max8997 +max8997_charger +max8998 +max8998_charger +mb862xxfb +mb86a16 +mb86a20s +mc13783-adc +mc13783-pwrbutton +mc13783-regulator +mc13783_ts +mc13892-regulator +mc13xxx-core +mc13xxx-i2c +mc13xxx-regulator-core +mc13xxx-spi +mc44s803 +mceusb +mcp2120-sir +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp4725 +mcs5000_ts +mcs7780 +mcs7830 +mcs_touchkey +mct_u232 +md4 +mdc +mdc800 +mdio +me4000 +me_daq +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mem2mem_testdev +memstick +mena21_wdt +metronomefb +metro-usb +mfd +mga +mgc +michael_mic +microread +microread_i2c +microtek +mii +minix +mip6 +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +mite +mk712 +mkiss +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mma8450 +mmc_block +mmc_spi +mms114 +mos7720 +mos7840 +moxa +mpoa +mpr121_touchkey +mpt2sas +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +mrst_max3110 +ms_block +msdos +msp3400 +mspro_block +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt29f_spinand +mt312 +mt352 +mt9m001 +mt9m111 +mt9t031 +mt9t112 +mt9v011 +mt9v022 +mtd +mtd_blkdevs +mtdblock +mtdblock_ro +mtd_dataflash +mtdoops +mtdram +mtdswap +mtip32xx +mtouch +multipath +musb_am335x +musb_dsps +musb_hdrc +mv88e6060 +mv88e6xxx_drv +mvmdio +mvsas +mv_u3d_core +mv_udc +mvumi +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxl111sf-demod +mxl111sf-tuner +mxl5005s +mxl5007t +mxser +myri10ge +nand +nand_bch +nand_ecc +nand_ids +nandsim +natsemi +nau7802 +navman +nbd +nci +ncpfs +ne2k-pci +neofb +net1080 +net2272 +net2280 +netconsole +netjet +netlink_diag +netprio_cgroup +netrom +netxen_nic +newtonkbd +nfc +nfc_digital +nf_conntrack +nf_conntrack_amanda +nf_conntrack_broadcast +nf_conntrack_ftp +nf_conntrack_h323 +nf_conntrack_ipv4 +nf_conntrack_ipv6 +nf_conntrack_irc +nf_conntrack_netbios_ns +nf_conntrack_netlink +nf_conntrack_pptp +nf_conntrack_proto_dccp +nf_conntrack_proto_gre +nf_conntrack_proto_sctp +nf_conntrack_proto_udplite +nf_conntrack_sane +nf_conntrack_sip +nf_conntrack_snmp +nf_conntrack_tftp +nfcsim +nfcwilink +nf_defrag_ipv4 +nf_defrag_ipv6 +nf_nat +nf_nat_amanda +nf_nat_ftp +nf_nat_h323 +nf_nat_ipv4 +nf_nat_ipv6 +nf_nat_irc +nf_nat_pptp +nf_nat_proto_dccp +nf_nat_proto_gre +nf_nat_proto_sctp +nf_nat_proto_udplite +nf_nat_sip +nf_nat_snmp_basic +nf_nat_tftp +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +nfnetlink_log +nfnetlink_queue +nfs +nfs_acl +nfsd +nfs_layout_nfsv41_files +nfsv2 +nfsv3 +nfsv4 +nf_synproxy_core +nf_tables +nf_tables_arp +nf_tables_bridge +nf_tables_ipv4 +nf_tables_ipv6 +nft_chain_nat_ipv4 +nft_chain_nat_ipv6 +nft_chain_route_ipv4 +nft_chain_route_ipv6 +nft_compat +nft_counter +nft_ct +nft_exthdr +nft_hash +nftl +nft_limit +nft_log +nft_meta +nft_nat +nft_rbtree +nft_reject_ipv4 +ngene +n_hdlc +ni_6527 +ni_65xx +ni_660x +ni_670x +nicstar +ni_daq_700 +ni_daq_dio24 +ni_labpc +ni_labpc_cs +ni_labpc_pci +nilfs2 +ni_mio_cs +ni_pcidio +ni_pcimio +ni_tio +ni_tiocmd +niu +nlmon +nls_ascii +nls_cp1250 +nls_cp1251 +nls_cp1255 +nls_cp737 +nls_cp775 +nls_cp850 +nls_cp852 +nls_cp855 +nls_cp857 +nls_cp860 +nls_cp861 +nls_cp862 +nls_cp863 +nls_cp864 +nls_cp865 +nls_cp866 +nls_cp869 +nls_cp874 +nls_cp932 +nls_cp936 +nls_cp949 +nls_cp950 +nls_euc-jp +nls_iso8859-1 +nls_iso8859-13 +nls_iso8859-14 +nls_iso8859-15 +nls_iso8859-2 +nls_iso8859-3 +nls_iso8859-4 +nls_iso8859-5 +nls_iso8859-6 +nls_iso8859-7 +nls_iso8859-9 +nls_koi8-r +nls_koi8-ru +nls_koi8-u +nls_utf8 +nmclan_cs +nosy +notifier-error-inject +nouveau +nozomi +n_r3964 +ns558 +ns83820 +nsc-ircc +ntc_thermistor +ntfs +n_tracerouter +n_tracesink +null_blk +nvidiafb +nvme +nxt200x +nxt6000 +obdclass +obdecho +objlayoutdriver +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stackglue +ocfs2_stack_o2cb +ocfs2_stack_user +ocrdma +of_mmc_spi +ofpart +of_serial +old_belkin-sir +olpc_apsp +omfs +omninet +on20 +on26 +onenand +opencores-kbd +openvswitch +oprofile +opticon +option +or51132 +or51211 +orinoco +orinoco_cs +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +osc +osd +osdblk +osst +oti6858 +output +ov2640 +ov5642 +ov6650 +ov7640 +ov7670 +ov772x +ov9640 +ov9740 +overlayfs +oxu210hp-hcd +ozwpan +p54common +p54pci +p54spi +p54usb +p8022 +p8023 +palmas-regulator +pandora_bl +panel +paride +parkbd +parport +parport_ax88796 +parport_cs +parport_pc +parport_serial +pata_ali +pata_amd +pata_arasan_cf +pata_artop +pata_atiixp +pata_atp867x +pata_cmd640 +pata_cmd64x +pata_cs5520 +pata_cs5530 +pata_cs5536 +pata_cypress +pata_efar +pata_hpt366 +pata_hpt37x +pata_hpt3x2n +pata_hpt3x3 +pata_it8213 +pata_it821x +pata_jmicron +pata_legacy +pata_marvell +pata_mpiix +pata_netcell +pata_ninja32 +pata_ns87410 +pata_ns87415 +pata_of_platform +pata_oldpiix +pata_opti +pata_optidma +pata_pcmcia +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sc1200 +pata_sch +pata_serverworks +pata_sil680 +pata_sis +pata_sl82c105 +pata_triflex +pata_via +pc300too +pcbc +pcd +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_can +pch_phub +pch_uart +pch_udc +pci +pci200syn +pcips2 +pci-stub +pcmcia +pcmcia_core +pcmciamtd +pcmcia_rsrc +pcnet32 +pcnet_cs +pcrypt +pcwd_pci +pcwd_usb +pd +pd6729 +pda_power +pdc_adma +peak_pci +peak_pcmcia +peak_usb +pegasus +penmount +percpu_test +pf +pfuze100-regulator +pg +phantom +phison +phonet +phram +phy-core +phy-exynos-dp-video +phy-fsl-usb2 +phy-generic +phy-gpio-vbus-usb +phy-isp1301 +phy-rcar-usb +phy-samsung-usb +phy-samsung-usb2 +phy-samsung-usb3 +physmap +physmap_of +pixcir_i2c_ts +pktcdvd +pktgen +pl2303 +platform_lcd +plat_nand +plat-ram +plip +plusb +pluto2 +plx_pci +pm2fb +pm3fb +pm80xx +pmbus +pmbus_core +pmc551 +pmcraid +pm-notifier-error-inject +pn533 +pn544 +pn544_i2c +pn_pep +port100 +poseidon +powermate +ppa +ppc-corenet-cpufreq +ppdev +ppp_async +ppp_deflate +ppp_mppe +pppoatm +pppoe +pppox +ppp_synctty +pps_core +pps-gpio +pps-ldisc +pps_parport +pptp +prism2_usb +ps2mult +psmouse +psnap +pt +ptlrpc +ptp +pvrusb2 +pwc +pwm_bl +pwm-pca9685 +pwm-twl +pwm-twl-led +pxa27x_udc +qcaux +qcserial +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qlogic_cs +qlogicfas408 +qman_debugfs_interface +qmi_wwan +qnx4 +qnx6 +qt1010 +qt1070 +qt2160 +quatech2 +quatech_daqp_cs +quota_tree +quota_v1 +quota_v2 +qxl +r128 +r592 +r6040 +r8152 +r815x +r8169 +r8187se +r8188eu +r8192e_pci +r8192u_usb +r820t +r852 +r8712u +r8a66597-hcd +r8a66597-udc +radeon +radio-i2c-si470x +radio-keene +radio-ma901 +radio-maxiradio +radio-mr800 +radio-shark +radio-si4713 +radio-si476x +radio-tea5764 +radio-timb +radio-usb-si470x +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid6test +raid_class +ramoops +raw +ray_cs +rbd +rbtree_test +rc5t583-regulator +rc-adstech-dvb-t-pci +rc-alink-dtu-m +rc-anysee +rc-apac-viewcomp +rcar_vin +rc-asus-pc39 +rc-asus-ps3-100 +rc-ati-tv-wonder-hd-600 +rc-ati-x10 +rc-avermedia +rc-avermedia-a16d +rc-avermedia-cardbus +rc-avermedia-dvbt +rc-avermedia-m135a +rc-avermedia-m733a-rm-k6 +rc-avermedia-rm-ks +rc-avertv-303 +rc-azurewave-ad-tu700 +rc-behold +rc-behold-columbus +rc-budget-ci-old +rc-cinergy +rc-cinergy-1400 +rc-core +rc-delock-61959 +rc-dib0700-nec +rc-dib0700-rc5 +rc-digitalnow-tinytwin +rc-digittrade +rc-dm1105-nec +rc-dntv-live-dvb-t +rc-dntv-live-dvbt-pro +rc-em-terratec +rc-encore-enltv +rc-encore-enltv2 +rc-encore-enltv-fm53 +rc-evga-indtube +rc-eztv +rc-flydvb +rc-flyvideo +rc-fusionhdtv-mce +rc-gadmei-rm008z +rc-genius-tvgo-a11mce +rc-gotview7135 +rc-hauppauge +rc-imon-mce +rc-imon-pad +rc-iodata-bctv7e +rc-it913x-v1 +rc-it913x-v2 +rc-kaiomy +rc-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lirc +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +rc-msi-digivox-ii +rc-msi-digivox-iii +rc-msi-tvanywhere +rc-msi-tvanywhere-plus +rc-nebula +rc-nec-terratec-cinergy-xs +rc-norwood +rc-npgtech +rc-pctv-sedna +rc-pinnacle-color +rc-pinnacle-grey +rc-pinnacle-pctv-hd +rc-pixelview +rc-pixelview-002t +rc-pixelview-mk12 +rc-pixelview-new +rc-powercolor-real-angel +rc-proteus-2309 +rc-purpletv +rc-pv951 +rc-rc6-mce +rc-real-audio-220-32-keys +rc-reddo +rc-snapstream-firefly +rc-streamzap +rc-tbs-nec +rc-technisat-usb2 +rc-terratec-cinergy-xs +rc-terratec-slim +rc-terratec-slim-2 +rc-tevii-nec +rc-tivo +rc-total-media-in-hand +rc-total-media-in-hand-02 +rc-trekstor +rc-tt-1500 +rc-twinhan1027 +rc-videomate-m1f +rc-videomate-s350 +rc-videomate-tv-pvr +rc-winfast +rc-winfast-usbii-deluxe +rdc321x-southbridge +rdma_cm +rdma_ucm +rds +rds_rdma +rds_tcp +redboot +redrat3 +reed_solomon +reiserfs +remoteproc +renesas_usbhs +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd_ftl +rfkill-gpio +rfkill-regulator +rio500 +rionet +rio-scan +rivafb +rj54n1cb0c +rmd128 +rmd160 +rmd256 +rmd320 +rndis_host +rndis_wlan +rocket +romfs +rose +rotary_encoder +rp2 +rpcsec_gss_krb5 +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt61pci +rt73usb +rtc-88pm80x +rtc-88pm860x +rtc-ab3100 +rtc-as3722 +rtc-bq32k +rtc-bq4802 +rtc-cmos +rtc_cmos_setup +rtc-da9052 +rtc-da9055 +rtc-ds1286 +rtc-ds1305 +rtc-ds1307 +rtc-ds1374 +rtc-ds1390 +rtc-ds1511 +rtc-ds1553 +rtc-ds1672 +rtc-ds1742 +rtc-ds2404 +rtc-ds3234 +rtc-em3027 +rtc-fm3130 +rtc-generic +rtc-hid-sensor-time +rtc-isl12022 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-moxart +rtc-msm6242 +rtc-palmas +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf8523 +rtc-pcf8563 +rtc-pcf8583 +rtc-r9701 +rtc-rc5t583 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3029c2 +rtc-rx4581 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-snvs +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtd520 +rtl2830 +rtl2832 +rtl8150 +rtl8180 +rtl8187 +rtl8188ee +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192se +rtl8723ae +rtl8723be +rtl8723-common +rtl8821ae +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtl_pci +rtl_usb +rtlwifi +rts5139 +rtsx_pci +rtsx_pci_ms +rtsx_pci_sdmmc +rx51_battery +rxkad +s1d13xxxfb +s2250 +s2255drv +s2io +s2mps11 +s3fb +s5h1409 +s5h1411 +s5h1420 +s5m8767 +s626 +s6e63m0 +s921 +saa6588 +saa6752hs +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7146 +saa7146_vv +saa7164 +saa717x +saa7706h +safe_serial +salsa20_generic +samsung-keypad +sata_fsl +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_rcar +sata_sil +sata_sil24 +sata_sis +sata_sx4 +sata_uli +sata_via +sata_vsc +savage +savagefb +sbe-2t3e3 +sbp_target +sbs-battery +sc92031 +sca3000 +sch_atm +sch_cbq +sch_choke +sch_codel +sch_drr +sch_dsmark +sch_fq +sch_fq_codel +sch_gred +sch_hfsc +sch_htb +sch_ingress +sch_mqprio +sch_multiq +sch_netem +sch_plug +sch_prio +sch_qfq +sch_red +sch_sfb +sch_sfq +sch_tbf +sch_teql +scsi_debug +scsi_dh +scsi_dh_alua +scsi_dh_emc +scsi_dh_hp_sw +scsi_dh_rdac +scsi_tgt +scsi_transport_fc +scsi_transport_iscsi +scsi_transport_sas +scsi_transport_spi +scsi_transport_srp +sctp +sctp_probe +sdhci +sdhci-of-esdhc +sdhci-of-hlwd +sdhci-pci +sdhci-pltfm +sdhci-pxav2 +sdhci-pxav3 +sdio_uart +sdricoh_cs +sdr-msi3101 +sedlbauer_cs +seed +sep_driver +seqiv +ser_gigaset +serial2002 +serial_cs +serio_raw +sermouse +serpent_generic +serport +serqt_usb2 +ses +sfc +sha1-powerpc +shark2 +sh_eth +sh_mobile_ceu_camera +sh_mobile_csi2 +shpchp +sht15 +sht21 +sh_veu +si21xx +si4713-i2c +si476x-core +sidewinder +sierra +sierra_net +sil164 +sir-dev +sis +sis190 +sis5595 +sis900 +sisfb +sisusbvga +sit +sja1000 +sja1000_isa +sja1000_of_platform +sja1000_platform +skd +skel +skfp +skge +sky2 +sl811_cs +sl811-hcd +slcan +slip +slram +sm501 +sm501fb +sm7xxfb +smb347-charger +smc91c92_cs +sm_common +sm_ftl +smm665 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smsc-ircc2 +smscufx +smsdvb +smsmdtv +smssdio +smsusb +snd +snd-ac97-codec +snd-ad1889 +snd-ak4113 +snd-ak4114 +snd-ak4117 +snd-ak4xxx-adda +snd-ali5451 +snd-aloop +snd-als300 +snd-als4000 +snd-at73c213 +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-azt3328 +snd-bt87x +snd-ca0106 +snd-cmipci +snd-compress +snd-cs4281 +snd-cs46xx +snd-cs5530 +snd-cs5535audio +snd-cs8427 +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-emu10k1 +snd-emu10k1-synth +snd-emu10k1x +snd-emux-synth +snd-ens1370 +snd-ens1371 +snd-es1938 +snd-es1968 +snd-firewire-lib +snd-firewire-speakers +snd-fm801 +snd-gina20 +snd-gina24 +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-intel +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1712 +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel8x0 +snd-intel8x0m +snd-isight +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-lx6464es +snd-maestro3 +snd-mia +snd-mixart +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3-synth +snd-oxygen +snd-oxygen-lib +snd-page-alloc +snd-pcm +snd-pcxhr +snd-pdaudiocf +snd-portman2x4 +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-sb16-dsp +snd-sb-common +snd-scs1x +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-soc-atmel-pcm +snd-soc-core +snd-soc-si476x +snd-soc-simple-card +snd-sonicvibes +snd-timer +snd-trident +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usbmidi-lib +snd-usb-usx2y +snd-util-mem +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx222 +snd-vx-lib +snd-vxpocket +snd-ymfpci +soc_camera +soc_camera_platform +soc_mediabus +soc_scale_crop +softdog +softing +softing_cs +solo6x10 +solos-pci +sony-btf-mpx +soundcore +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +spectrum_cs +speedfax +speedtch +spi-altera +spi-bitbang +spi-butterfly +spidev +spi-dw +spi-dw-midpci +spi-dw-mmio +spi-gpio +spi_ks8995 +spi-lm70llp +spi-oc-tiny +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-sc18is602 +spi-tle62x0 +spi-topcliff-pch +spi-xcomm +squashfs +sr9700 +ssb +ssb-hcd +ssd1307fb +ssfdc +sst25l +ssu100 +st +st1232 +st_accel +st_accel_i2c +st_accel_spi +starfire +stb0899 +stb6000 +stb6100 +st_drv +ste_modem_rproc +stex +st_gyro +st_gyro_i2c +st_gyro_spi +stinger +stir4200 +stk1160 +stkwebcam +st_magn +st_magn_i2c +st_magn_spi +stmmac +stmpe-keypad +stmpe-ts +stowaway +stp +st_pressure +st_pressure_i2c +st_pressure_spi +streamzap +st_sensors +st_sensors_i2c +st_sensors_spi +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv6110 +stv6110x +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sur40 +svcrdma +svgalib +sx8 +sym53c500_cs +sym53c8xx +symbolserial +synaptics_i2c +synaptics_i2c_rmi4 +synaptics_usb +synclink +synclink_cs +synclink_gt +synclinkmp +sysv +t1pci +talitos +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +tc3589x-keypad +tca6416-keypad +tca8418_keypad +tcm_fc +tcm_loop +tcm_qla2xxx +tcm_usb_gadget +tcp_bic +tcp_diag +tcp_highspeed +tcp_htcp +tcp_hybla +tcp_illinois +tcp_lp +tcp_probe +tcp_scalable +tcp_vegas +tcp_veno +tcp_westwood +tcp_yeah +tcrypt +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18271 +tda18271c2dd +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda998x +tdfx +tdfxfb +tdo24m +tea +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tef6862 +tehuti +tekram-sir +teles_cs +test-kstrtox +test_power +test-string_helpers +tg3 +tgr192 +thmc50 +ti-adc081c +ti_dac7512 +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +timb_dma +timberdale +timblogiw +timbuart +timeriomem-rng +tipc +ti_usb_3410_5052 +tlan +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmiofb +tmp006 +tmp102 +tmp401 +tmp421 +tmscsim +toim3232-sir +touchit213 +touchright +touchwin +tpci200 +tpm_atmel +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_i2c_stm_st33 +tpm-rng +tps51632-regulator +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65090-charger +tps65090-regulator +tps65217 +tps65217_bl +tps65217-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps80031-regulator +trancevibrator +tranzport +tridentfb +ts2020 +ts_bm +tsc2005 +tsc2007 +tsc40 +ts_fsm +ts_kmp +tsl2550 +tsl2563 +tsl2583 +tsl2x7x_core +tsl4531 +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +tua6100 +tua9001 +tulip +tuner +tuner_it913x +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +tusb6010 +tvaudio +tveeprom +tvp5150 +tw2804 +tw9903 +tw9906 +tw9910 +twidjoy +twl4030_charger +twl4030_keypad +twl4030-madc +twl4030-madc-hwmon +twl4030-pwrbutton +twl4030-vibra +twl4030_wdt +twl6030-gpadc +twl6040-vibra +twofish_common +twofish_generic +typhoon +u132-hcd +uartlite +ubi +ubifs +ucb1400_core +ucb1400_ts +ucd9000 +ucd9200 +uda1342 +udc-core +udf +udl +udp_diag +ueagle-atm +u_ether +ufs +ufshcd +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_sercos3 +uli526x +umc +umem +ums-alauda +ums-cypress +ums-datafab +ums-eneub6250 +ums-freecom +ums-isd200 +ums-jumpshot +ums-karma +ums-onetouch +ums-realtek +ums-sddr09 +ums-sddr55 +ums-usbat +unix_diag +upd64031a +upd64083 +u_rndis +usb3503 +usb_8dev +usb8xxx +usbatm +usb_debug +usbdux +usbduxfast +usbduxsigma +usb_f_acm +usb_f_ecm +usb_f_ecm_subset +usb_f_eem +usb_f_mass_storage +usb_f_ncm +usb_f_obex +usb_f_phonet +usb_f_rndis +usb_f_serial +usb_f_ss_lb +usb_gigaset +usbhid +usbip-core +usbip-host +usbkbd +usblcd +usbled +usblp +usbmisc_imx +usbmon +usbmouse +usbnet +usbserial +usb-serial-simple +usbsevseg +usb-storage +usbtest +usbtmc +usbtouchscreen +usbtv +usbvision +usb_wwan +u_serial +userspace-consumer +ushc +uss720 +uvcvideo +uvesafb +uwb +ux500 +v4l2-common +v4l2-dv-timings +v4l2-int-device +v4l2-mem2mem +vcan +vcnl4000 +ves1820 +ves1x93 +veth +vga16fb +vgastate +vgg2432a4 +vhci-hcd +vhost +vhost_net +vhost_scsi +via +via686a +via-ircc +via-rhine +via-sdmmc +via-velocity +videobuf2-core +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-memops +videobuf2-vmalloc +videobuf-core +videobuf-dma-contig +videobuf-dma-sg +videobuf-dvb +videobuf-vmalloc +videodev +viperboard +viperboard_adc +virtio +virtio_balloon +virtio_blk +virtio_console +virtio_mmio +virtio_net +virtio_pci +virtio_ring +virtio-rng +virtio_scsi +virtual +visor +vivi +vlsi_ir +vmac +vme +vme_pio2 +vme_user +vme_vmivme7805 +vmk80xx +vmwgfx +vmxnet3 +vp27smpx +vringh +vsock +vsxxxaa +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxge +vxlan +w1_bq27000 +w1_ds2408 +w1_ds2413 +w1_ds2423 +w1_ds2431 +w1_ds2433 +w1_ds2760 +w1_ds2780 +w1_ds2781 +w1_ds28e04 +w1-gpio +w1_smem +w1_therm +w35und +w5100 +w5300 +w6692 +w83781d +w83791d +w83792d +w83793 +w83795 +w83977af_ir +w83l785ts +w83l786ng +w90p910_ts +w9966 +wacom +wacom_i2c +wacom_w8001 +walkera0701 +wanxl +warrior +wbsd +wcn36xx +wdt_pci +whci +whci-hcd +whc-rc +whiteheat +wil6210 +wimax +winbond-840 +windfarm_core +wire +wishbone-serial +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wl3501_cs +wlags49_h25_cs +wlags49_h2_cs +wlcore +wlcore_sdio +wlcore_spi +wm831x_backup +wm831x_bl +wm831x-dcdc +wm831x-hwmon +wm831x-isink +wm831x-ldo +wm831x-on +wm831x_power +wm831x-ts +wm831x_wdt +wm8350-hwmon +wm8350_power +wm8350-regulator +wm8350_wdt +wm8400-regulator +wm8739 +wm8775 +wm8994-regulator +wm97xx-ts +wp512 +wusb-cbaf +wusbcore +wusb-wa +x25 +x25_asy +xc4000 +xc5000 +xcbc +xfrm4_mode_beet +xfrm4_mode_transport +xfrm4_mode_tunnel +xfrm4_tunnel +xfrm6_mode_beet +xfrm6_mode_ro +xfrm6_mode_transport +xfrm6_mode_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_ipcomp +xfrm_user +xfs +xgifb +xgmac +xilinx_ps2 +xilinx_uartps +xillybus_core +xillybus_of +xillybus_pcie +xirc2ps_cs +xircom_cb +xor +xpad +xprtrdma +xsens_mt +x_tables +xt_addrtype +xt_AUDIT +xt_bpf +xt_CHECKSUM +xt_CLASSIFY +xt_cluster +xt_comment +xt_connbytes +xt_connlabel +xt_connlimit +xt_connmark +xt_CONNSECMARK +xt_conntrack +xt_cpu +xt_CT +xt_dccp +xt_devgroup +xt_dscp +xt_DSCP +xt_ecn +xt_esp +xt_hashlimit +xt_helper +xt_hl +xt_HL +xt_HMARK +xt_IDLETIMER +xt_iprange +xt_ipvs +xtkbd +xt_LED +xt_length +xt_limit +xt_LOG +xt_mac +xt_mark +xt_multiport +xt_nat +xt_NETMAP +xt_nfacct +xt_NFLOG +xt_NFQUEUE +xt_osf +xt_owner +xt_physdev +xt_pkttype +xt_policy +xt_quota +xt_rateest +xt_RATEEST +xt_realm +xt_recent +xt_REDIRECT +xts +xt_sctp +xt_SECMARK +xt_set +xt_socket +xt_state +xt_statistic +xt_string +xt_tcpmss +xt_TCPMSS +xt_TCPOPTSTRIP +xt_tcpudp +xt_TEE +xt_time +xt_TPROXY +xt_TRACE +xt_u32 +xusbatm +xz_dec_test +yam +yealink +yellowfin +yenta_socket +yurex +zaurus +zd1201 +zd1211rw +zforce_ts +zhenhua +zl10036 +zl10039 +zl10353 +zl6100 +zlib +zr364xx +zram +zte_ev --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/powerpc/powerpc64-smp +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/powerpc/powerpc64-smp @@ -0,0 +1,16918 @@ +EXPORT_SYMBOL arch/powerpc/kvm/kvm 0x8528cb3f kvm_read_guest_atomic +EXPORT_SYMBOL crypto/gf128mul 0x0c2f123f gf128mul_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x1068004b gf128mul_bbe +EXPORT_SYMBOL crypto/gf128mul 0x2f2889a0 gf128mul_init_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x384ef9ce gf128mul_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x56af0dbd gf128mul_x_ble +EXPORT_SYMBOL crypto/gf128mul 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL crypto/gf128mul 0xbd17a0df gf128mul_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0xc0890413 gf128mul_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/atm/suni 0x15b79e18 suni_init +EXPORT_SYMBOL drivers/bcma/bcma 0xf08680e3 bcma_core_dma_translation +EXPORT_SYMBOL drivers/block/drbd/drbd 0x127a5901 drbd_set_st_err_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x35131b36 drbd_role_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x7730f22d drbd_conn_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0xaf27bebf drbd_disk_str +EXPORT_SYMBOL drivers/block/paride/paride 0x0ac1c49c paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0x3f43b155 pi_write_regr +EXPORT_SYMBOL drivers/block/paride/paride 0x6250ec0c pi_disconnect +EXPORT_SYMBOL drivers/block/paride/paride 0x6ba143fb pi_read_block +EXPORT_SYMBOL drivers/block/paride/paride 0xa7d9ab0d pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xbc0ec868 pi_write_block +EXPORT_SYMBOL drivers/block/paride/paride 0xc9197560 pi_read_regr +EXPORT_SYMBOL drivers/block/paride/paride 0xcb42049e pi_release +EXPORT_SYMBOL drivers/block/paride/paride 0xd056ce81 pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0xf02e4253 pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xf37d36af paride_unregister +EXPORT_SYMBOL drivers/block/paride/paride 0xfe462444 pi_init +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x29fa5824 dw_dma_cyclic_stop +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x7096ab7e dw_dma_cyclic_free +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x73ce89a8 dw_dma_cyclic_start +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xaefa1af5 dw_dma_get_dst_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xc44d2404 dw_dma_get_src_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xe3f82f97 dw_dma_cyclic_prep +EXPORT_SYMBOL drivers/edac/edac_core 0x0d29ab84 edac_mc_find +EXPORT_SYMBOL drivers/firewire/firewire-core 0x007f40bd fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0x04d0f641 fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0f7d6af8 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x16e91e21 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1e74924a fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2d0719c8 fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3c56ef91 fw_workqueue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x47bf7520 fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0x519d2133 fw_card_add +EXPORT_SYMBOL drivers/firewire/firewire-core 0x54bf9abf fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x56eccda4 fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x5faac04c fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x645b715f fw_core_add_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x65c9438b fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x690b91f7 fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6fded31f fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7191040e fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0x75e9a6f9 fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x7ab17ef8 fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x8be18f36 fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0x90863005 fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9926c106 fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa01f6334 fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa46e6430 fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb167124a fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb6a10857 fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc15ca22b fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc29966b8 fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc61860fd fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd500fed7 fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0xda8588af fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe2c488b5 fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe88d6f92 fw_run_transaction +EXPORT_SYMBOL drivers/fmc/fmc 0x03137e01 fmc_device_register +EXPORT_SYMBOL drivers/fmc/fmc 0x1face401 fmc_device_unregister_n +EXPORT_SYMBOL drivers/fmc/fmc 0x21133a0c fmc_device_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0x310e150f fmc_device_register_n +EXPORT_SYMBOL drivers/fmc/fmc 0x32988cd0 fmc_scan_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x3355572f fmc_reprogram +EXPORT_SYMBOL drivers/fmc/fmc 0x49b206cb fmc_find_sdb_device +EXPORT_SYMBOL drivers/fmc/fmc 0x49d8a5a1 fmc_driver_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0x652fa261 fmc_free_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xb45262f8 fmc_driver_register +EXPORT_SYMBOL drivers/fmc/fmc 0xf0992a37 fmc_show_sdb_tree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00025916 drm_mode_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00667d8a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0185c235 drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x02136eb1 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0x026c0d6b drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03846fb6 drm_edid_to_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0395c983 drm_agp_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03ca5307 drm_prime_destroy_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x061ecc7e drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07e3d228 drm_get_pci_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x080ca581 drm_mode_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ae4b94c drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c7bce91 drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c9ae53c drm_vblank_post_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0cb36964 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ff8bb3d drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x115a0daa drm_addbufs_pci +EXPORT_SYMBOL drivers/gpu/drm/drm 0x116a71d4 drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12c6276a drm_buffer_read_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x142b8b35 drm_buffer_copy_from_user +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a1bac7 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a9a178 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x157d67a7 drm_pci_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x189f6401 drm_mm_debug_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x194eadaa drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19e44324 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19fb1996 drm_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a770ac3 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1ce4f54a drm_agp_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1d105c90 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1f7b5aa9 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20645642 drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20b37c60 drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22a51b00 drm_agp_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x270a5fa3 drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x284eb0a3 drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29ad006c drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29e8410c drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a942ab2 drm_mm_insert_node_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2aba1832 drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2aead6c4 drm_compat_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ca4f893 drm_pci_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d80be4d drm_mm_init_scan +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2dac4db7 drm_bridge_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7a4300 drm_rgb_quant_range_selectable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ee34503 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ee3aac2 drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f0b064f drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f77651d drm_platform_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x306f904c drm_select_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0x30737beb drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3327386d drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x34467ff7 drm_addbufs_agp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3630607c drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36f91ef3 drm_mm_clean +EXPORT_SYMBOL drivers/gpu/drm/drm 0x376e76ff drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x37eb54fd drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38a4f7ae drm_format_num_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38aa3523 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3924acc8 drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ac1fef9 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ae7b2d0 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b280fbd drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b9d009a drm_format_plane_cpp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3bd160b0 drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c6de498 drm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d3166d5 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d4b8108 drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3de20c8b drm_bridge_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e4c1c11 drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e709692 drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eb37b9d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3f1a3f84 drm_sysfs_connector_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3f7fa2d5 drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4068d307 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x406aa116 drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x40ac6526 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4276ffa6 drm_unplug_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x42ebe0a8 drm_idlelock_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43384bd9 drm_buffer_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x498dcb5e drm_ut_debug_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49fabf0d drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4af1c5be drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4bc932b0 drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c511235 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d2f88df drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4d7af117 drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ea1f5a2 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50742b38 drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e28c07 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e37354 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x526f6f71 drm_rect_calc_hscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x53371283 drm_mode_group_init_legacy_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55ff8ca1 drm_mode_connector_detach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5710e1e3 drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x576ea051 drm_prime_init_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5912b6dd drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59a3513a drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59c1df18 drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5bad7942 drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c56f850 drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d7318dc drm_global_item_ref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6090be61 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x611324ef drm_vblank_pre_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x629c05e1 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6557dc04 drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66034cf6 drm_framebuffer_reference +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66803841 drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6740fe59 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6771b02a drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x679ba548 drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x679e8ff2 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6882df73 drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6900d335 drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x69b44196 drm_mode_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b6d7375 drm_timestamp_precision +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cc3c29e drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cee2e42 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e21f104 drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71dcfd28 drm_platform_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75d0df03 drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x78c42a2a drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a4e7297 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c7cb09e drm_rmmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d48f95c drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e59e18e drm_crtc_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7efaad9d drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x803d92d6 drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81ba930c drm_mm_init_scan_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81e773e4 drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x82e19968 drm_core_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x830cf677 drm_idlelock_take +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8446f429 drm_mode_create_dirty_info_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x863d06e0 drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a58a790 drm_pci_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ac1cb99 drm_sysfs_connector_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ae3bfca drm_calc_vbltimestamp_from_scanoutpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8bbbc3db drm_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8cbe8487 drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dd65d4c drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8de13715 drm_format_vert_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dfb019d drm_buffer_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8e823f13 drm_agp_unbind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8eff9111 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f7df3a7 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x92496b36 drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x94948374 drm_get_last_vbltimestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x956c5373 drm_pci_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96a129ce drm_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9745d638 drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0x976e2dbf drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9972db48 drm_rect_calc_vscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9c253ed1 drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9cea164e drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d70fc2a drm_rnodes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e680a17 drm_vblank_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9eccfe56 drm_mode_hsync +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9f6433fa drm_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1f4e9e6 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa28078b2 drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3a02e8c drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4854260 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa48630f2 drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5dbd572 drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5f74179 drm_mm_dump_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa64248fe drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6a9f939 drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa72366dc drm_core_reclaim_buffers +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa953137e drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa96acfcb drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa9f18a47 drm_global_mutex +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa3b8373 drm_agp_bind_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad915a02 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae675132 drm_dev_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafb0cb6f drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb34f7623 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb51e31c5 drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5540008 drm_global_item_unref +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb572a9f0 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6b7fa48 drm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb95beb55 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9a634a1 drm_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb0488fc drm_pcie_get_speed_cap_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb88f7f8 drm_agp_bind +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbd161894 drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbdb5009f drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe001c53 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe2e36da drm_rmmap_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe55a86e drm_core_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe96d2ab drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbeb30622 drm_connector_unplug_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbf87e17e drm_addmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc07015f7 drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc1aefeca drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc1e5e05c drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc239994d drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4000f9f drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc414c422 drm_vblank_offdelay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4234a90 drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5872b98 drm_framebuffer_unreference +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc58c9b8e drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc6db8381 drm_core_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc720f5b9 drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f7cc11 drm_vma_offset_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc94254ba drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca45efbc drm_format_horz_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0xccec8361 drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd0fc417 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd8ac7ea drm_agp_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcec158f0 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf655b86 drm_agp_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf9f2ddb drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2335101 drm_fb_get_bpp_depth +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd30846e5 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd389a9f6 drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4156c68 drm_ati_pcigart_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd5c182aa drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd614a052 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd8d00232 drm_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb049c2b drm_getsarea +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbb5a9f5 drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd018efe drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf8f2374 drm_ati_pcigart_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe0602acf drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe09aa18a drm_get_connector_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2793ca6 drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2ef97e4 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6f46e6e drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7197773 drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe73d82f1 drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7ebfe5f drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeae8ed10 drm_agp_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec46c022 drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefdf9b69 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf08d712a drm_mode_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1d8c2cd drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1d94719 drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf219f21d drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf23b8d15 drm_get_encoder_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3238967 drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf446a0e2 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6d3a423 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf71573ce drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf840ee90 drm_mode_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf8b2990e drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfa0036c3 drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfaa13789 drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb1e179e drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb497216 drm_mm_insert_node_in_range_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb8fcec6 drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc611f8d drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd063935 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe2413f9 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe4a68c7 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe56f3b4 drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffc6c87a drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x035d9b75 drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x08f1338e drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x098e47d2 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0abc8bbc drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0c37b268 drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f96ec70 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x163251c8 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1b16653a drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1e8642b8 i2c_dp_aux_add_bus +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x23a56e78 drm_fb_helper_fill_fix +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2e0ab45b drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34871adf drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3defcbbd drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4886fddf drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4d844644 drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x512c85da drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5c6acb87 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6d7e6a2c drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x711a004a drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7740fd15 drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84e924ba drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x900ad8ed drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9893539f drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9df618b9 drm_fb_helper_fill_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa530189c drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa77858bb drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8d6809d drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xade769b6 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xae1ec39e drm_fb_helper_restore_fbdev_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb7810ee2 drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbdd21d7a drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbe39ae9e drm_fb_helper_single_add_all_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc2cef5b8 drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc3b12a05 drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcba731d4 drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd2401551 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd6a9ec54 drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe1a2b6cb drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfcec1295 drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfeebd66d drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0xce4d9b66 drm_usb_exit +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0xe1a4e7e5 drm_get_usb_dev +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0xe4be981c drm_usb_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x06d01553 ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0e43e98a ttm_bo_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1193df01 ttm_agp_tt_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x14da608c ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x158055db ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1963c321 ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1ee4d069 ttm_mem_io_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x215373a3 ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x257f0ac3 ttm_mem_io_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x27af2b7b ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x29a1e970 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b54aa9a ttm_object_file_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2c2ef698 ttm_bo_del_sub_from_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3c9593ba ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3fa1c7bc ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x45b37f4a ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x485a5bc0 ttm_ref_object_add +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x48996371 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x48bf80be ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4e8dd264 ttm_bo_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x53748a5e ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x564e1aee ttm_bo_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5a8fdfea ttm_vt_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5dc74e31 ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6052860c ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x62bdc706 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6582ec72 ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6729f9dd ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x68b0126f ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x696d9bb4 ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6d324be1 ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x71d21be1 ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7d55da85 ttm_read_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80d86f0e ttm_object_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x84a13931 ttm_write_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x853e29cd ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x85895d74 ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x880a15ad ttm_base_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8854ba0d ttm_agp_tt_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x886cf055 ttm_mem_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x89a443de ttm_write_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8d14adbf ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x92b7c574 ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94894449 ttm_base_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x955a357b ttm_mem_io_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x95ec76d7 ttm_prime_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x998e45c0 ttm_ref_object_base_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x99f38300 ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x99fb84a3 ttm_object_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9c95d348 ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa2a129fd ttm_suspend_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa42d4d71 ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa73de2a9 ttm_vt_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xaa39df20 ttm_mem_io_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb83c6470 ttm_lock_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbb56612c ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbd15983d ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc4899349 ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc5f0c2da ttm_read_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc64773e1 ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xce6e43a8 ttm_base_object_lookup_for_ref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd14b31d6 ttm_bo_synccpu_write_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd24ef8df ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd5d53293 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7c3f39f ttm_bo_synccpu_write_grab +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7f51742 ttm_suspend_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd8edb115 ttm_base_object_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd9597b10 ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdac86506 ttm_bo_add_to_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe1253c9b ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe55dcf2c ttm_mem_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe597ba03 ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe8b2a46b ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf1e97b2c ttm_agp_tt_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf46a389a ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfbc2c5ec ttm_object_file_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfe9ccd09 ttm_fbdev_mmap +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x0903c239 vid_from_reg +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0xef1c781c vid_which_vrm +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x2564eba7 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x8a68e853 i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0xeabcc43d amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x1e48e85b st_accel_common_remove +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xdd4f6df0 st_accel_common_probe +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x702ebd2c hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x95844f20 hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xd088a7ca hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xe28d66f0 hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xfe618db9 hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x0846ffb1 hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xa40c4fcf hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x12bfbb9a st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x1c1bbfd0 st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x3ddfba98 st_sensors_check_device_support +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x451a3a50 st_sensors_sysfs_get_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x5e92b5f3 st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x691e1750 st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x74527bb0 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x8ff9755b st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x9db7389d st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x9fbca72f st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xa46c02e9 st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xb04ea5a2 st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xea3350da st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xf84a5b91 st_sensors_get_buffer_element +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xf978b1e6 st_sensors_sysfs_set_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0x8333a097 st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0x12489619 st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x48e10283 st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0xe92eae36 st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x0cea9a6c adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x4eddeeaf adis_enable_irq +EXPORT_SYMBOL drivers/iio/industrialio 0x0a0c3f8a iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x163eb7a9 iio_buffer_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x246f2406 iio_buffer_store_enable +EXPORT_SYMBOL drivers/iio/industrialio 0x280dbe3d iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x2f154644 iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio 0x3dae4a2c iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0x4c098742 iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0x4f35e1c5 iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0x5b9ac8de iio_buffer_read_length +EXPORT_SYMBOL drivers/iio/industrialio 0x63762d2e iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0x88f3d477 iio_buffer_write_length +EXPORT_SYMBOL drivers/iio/industrialio 0x8957b096 iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x8b450973 iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x923cd6e4 iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x93de3012 iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0xbefc13b8 iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0xcef384c2 iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0xd0d64245 iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0xd936cba9 iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0xd9b88b7e iio_buffer_show_enable +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xe7bc54e9 iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0xe7d27485 iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0xe9f8bd49 iio_buffer_register +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x360fbade iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0x3bc537b5 iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x8cb3dee3 iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/kfifo_buf 0xe119d9dd iio_kfifo_free +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x096ad8c2 st_magn_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x0e17cbb6 st_magn_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x979f586d st_press_common_remove +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0xfb495453 st_press_common_probe +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x049ace30 rdma_addr_find_smac_by_sgid +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x04b8b6d7 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1c3c0ad3 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1ea5767b rdma_addr_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x273f4cca rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x32a8402c rdma_addr_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x446fd7c9 rdma_addr_find_dmac_by_grh +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x59252c9d rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0xc1e89bad rdma_copy_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x14baf8a7 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x198cce0b ib_send_cm_apr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x217273d1 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x312239d9 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x33233ae0 ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4456be71 ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4c85333e ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x7280ef00 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x86138c1b ib_send_cm_lap +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x90ee78bb ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x9c58e4b1 ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xa2937aa1 ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xa608313e ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xcfc95a75 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xde16d4d8 ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xeb01e829 ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xfce486c1 ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x003b2fe9 ib_alloc_fast_reg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0314fd94 ib_alloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x05d8640a ib_fmr_pool_map_phys +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06c82fcf mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x073df196 rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x083b1560 ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x093ee97a ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x09a9eb46 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c1b9ac1 ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0dce6d15 ib_destroy_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0fd6683f ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14f84918 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x171f99f1 ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1a01e6ba ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e491a04 ib_unmap_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e4c2693 ibnl_add_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2253f10c ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22f3cf93 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x29c4ae5c ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ed6e386 ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x323875ed ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x343f6536 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3602c446 ib_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x39b93fc6 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3e8dd8bb ib_free_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fa2c19d ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x40f7627a ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x463c8e2d ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x48e1dd02 ib_get_dma_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x49ddee07 ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4bbb6599 ib_find_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50dbc447 ib_flush_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50e57a67 ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5375d6b5 ib_create_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x55154f66 ib_dealloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x565318ad ib_alloc_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x57ee8829 ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61676ebf ib_resolve_eth_l2_attrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x617cb030 ib_fmr_pool_unmap +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61ebfda5 ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x628eb5c3 ib_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6625cc92 ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x696dddf6 ib_alloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6bbfaa38 ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6cebab12 ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e030e26 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f37bf10 ib_destroy_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x72ee0ca6 ib_destroy_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7432214d ib_get_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7734137e ib_init_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x826342d7 ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x844b83cd ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8a35deba ib_create_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8d4ba0af ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8f149eef ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90663b61 ib_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x91862990 ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x972830cd ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x976309bd ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9e49f1af ib_reg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9e954c0f ib_dealloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9ed2612c ib_destroy_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9f237b76 ib_rereg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9f5b0717 ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa0df1754 ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa28e9c8c ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa432baf6 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac217df9 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae2d0474 ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae756f97 ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb15b8f1b ib_modify_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb22723a0 ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb3aee1aa ib_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb6b80ce5 ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7415989 ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbe6f4ceb ib_query_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc32b59ff ib_destroy_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc67f14a5 ibnl_remove_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc85a4e1a ib_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc96e0a6c ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcc7a5d4c ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcd14c0c7 ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6358d5f ib_dereg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdfdef766 ib_query_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe4ea3595 ib_get_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf3857cd0 ib_dealloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf812a0be ib_create_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfb092c57 ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfc150956 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfedf99a1 ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x078d624a ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x07d2a68f ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x3f265b6d ib_process_mad_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x492e05fb ib_redirect_mad_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x560c1375 ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6a271f03 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6e759da0 ib_register_mad_snoop +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6f077fcf ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7b5d4b7a ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x82f36dd4 ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x8b618fac ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x946d5d27 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x9ff3b44b ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xb1984cd6 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xc59b304f ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x22f07253 ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x24e2965b ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x52862e0c ib_init_ah_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x5328d7a6 ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x576fdbac ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x7ec0631f ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x9a1cd50d ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xad7f1087 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xd8f41b0f ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xddc330e7 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xe45a4196 ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xe8091524 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2569d757 ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x52a6ce77 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7971c00e ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe350f2aa ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x1cfdf8c0 iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x29adb0e1 iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x36ad73d9 iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x4036ffd6 iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xae45a4b5 iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xbe78d875 iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xebb990f4 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xfd4c3f1e iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x16e56b70 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1a690b38 rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1b42521a rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x2530179a rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x2dc0a3a3 rdma_set_ib_paths +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x40285243 rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4364009a rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x575654f7 rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x669ffde7 rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7383f48a rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x76ad48d0 rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7d3e4db6 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x7fb61875 rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x92e990a5 rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x9b1a105f rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc8558cfe rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc91f5ecc rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xca5269a8 rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xcdfdd3b8 rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xdf9fc3d4 rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xedeaedd6 rdma_connect +EXPORT_SYMBOL drivers/input/gameport/gameport 0x037ca9dd gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0x124e2c7e gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x3017310c __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x38ae451a gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x4d4c9015 gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x56f834e9 gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0xb57ffc05 __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0xc5b24392 gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0xe4acdfe4 gameport_start_polling +EXPORT_SYMBOL drivers/input/input-polldev 0x54ab02dd input_free_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xc3a10adb input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xd5a4907b input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xe405e68a input_unregister_polled_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0x0100281b matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x642c2004 ad714x_remove +EXPORT_SYMBOL drivers/input/misc/ad714x 0xb2e5aaa8 ad714x_enable +EXPORT_SYMBOL drivers/input/misc/ad714x 0xb882adba ad714x_probe +EXPORT_SYMBOL drivers/input/misc/ad714x 0xb94bf908 ad714x_disable +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x892d76b2 cma3000_resume +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x89d9444e cma3000_exit +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xca3f100a cma3000_suspend +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xf1b3e9fc cma3000_init +EXPORT_SYMBOL drivers/input/sparse-keymap 0x94567f05 sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0xa10bc45f sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0xaabd2aae sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/sparse-keymap 0xb376ed4a sparse_keymap_free +EXPORT_SYMBOL drivers/input/sparse-keymap 0xc66e05fa sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0xd735f65a sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x29ed89e9 ad7879_pm_ops +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x97f83edf ad7879_remove +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0xc484b538 ad7879_probe +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x04403fcf unregister_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x14f2aa5a capi20_get_version +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x1ba8aa3d capi_ctr_down +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2b8eab1f capilib_free_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2baa6586 capilib_new_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2ffd1099 detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x31c24aa4 capi20_isinstalled +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x452bc8c1 capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x47d3fc51 capi_info2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x50b33ca4 capi_cmsg2message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6057c6f3 capi_message2cmsg +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x62e32d43 capilib_data_b3_conf +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x71e8d5ba capilib_data_b3_req +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7292ab34 cdebbuf_free +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x72a25a72 capi_cmsg2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7a33596c capi20_get_serial +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7e6f1307 capi20_get_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x87735b4c capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x8c93eea6 capi20_register +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x8f699913 capilib_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9690b2c9 capi_ctr_suspend_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x98c878e0 capi20_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x992edca9 capi20_put_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9f823278 register_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xa54da164 capi_ctr_resume_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xaa165d27 capilib_release_appl +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb19fda8d capi_cmd2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb60e5e5f capi_cmsg_header +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe19a11ac capi20_get_profile +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xed061606 capi20_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xed099db3 attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xfd552f7a capi_message2str +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x0994af2f b1_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x261e175c b1_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x2d457b06 avmcard_dma_alloc +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x323f18f4 b1_parse_version +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x5a40a92a b1_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x611add1c b1_alloc_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x85f09690 b1_irq_table +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x9173a7f4 b1ctl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x94e6d318 b1_load_t4file +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x9be85ab4 b1_load_config +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x9c53461f b1_loaded +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xa34918e0 b1_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xa52cf231 avmcard_dma_free +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xb895901d b1_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xc795ebac b1_free_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xdfd28376 b1_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xeb6588a1 b1_getrevision +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xfa10fee4 b1_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x1031be00 b1pciv4_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x29df9a83 b1dma_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x3c9718bc b1dma_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x49ccd7d5 t1pci_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x771a59ec b1dma_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x83f5af94 b1dma_reset +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xd04e806c b1dma_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xd0f089d5 b1dma_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xd6f9f1ea b1dma_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xf0cf5bec b1dmactl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0x29562993 b1pcmcia_delcard +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xaec3240e b1pcmcia_addcard_m1 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xea620116 b1pcmcia_addcard_m2 +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1pcmcia 0xf14bf8b1 b1pcmcia_addcard_b1 +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x2974ead1 DIVA_DIDD_Read +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x7ab59853 proc_net_eicon +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x269b56f5 mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x27a2c13a mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xa84f2e23 mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xd6b27b7e mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x8e3b87e8 mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x990f2c67 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x07f4f2ce hisax_unregister +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x148f0c99 FsmFree +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x55f13e4f hisax_init_pcmcia +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x7f29ce36 FsmInitTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x93a64734 FsmChangeState +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x9df0cd27 FsmEvent +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xe227344e FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xee93522c hisax_register +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xf0a16657 FsmNew +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xfc27303b HiSax_closecard +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xff2db2cf FsmDelTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x125351c5 isac_init +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x3f3b323a isac_d_l2l1 +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x515b209e isac_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x6c5edecf isac_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x729a1acc isacsx_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0xe67f6b30 isacsx_setup +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x6d821de8 isdn_ppp_unregister_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x899f19d0 isdn_ppp_register_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xe9ba9722 register_isdn +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xfa06820f isdn_register_divert +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x3b71e4fc isdnhdlc_decode +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x59cc8a7e isdnhdlc_out_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x8ee38862 isdnhdlc_rcv_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0xfd9d4c09 isdnhdlc_encode +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x0350f05b mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x04788387 mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x052bba91 recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2348cc3c mISDN_FsmFree +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2738b256 recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x3c22302f get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x4842aa36 queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x4b374ca3 bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x4ca55b97 recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x4fd06650 create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x54451388 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x5a03bfe0 mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x614ede30 mISDN_FsmAddTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x7959136f recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x81efa893 mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x88feb4f5 get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x898c0558 mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8a4e99fb mISDN_clock_update +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x96309324 mISDN_FsmDelTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x978217c0 mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa40c2183 mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb425e0fb mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbfc22e5b bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3cbb781 mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc428847c mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc94cde7b mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd0065d78 dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd285995f mISDN_clock_get +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd5145151 mISDN_FsmEvent +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe87943cf mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf8516965 recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf9e7832f mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x01087af0 mISDN_dsp_element_unregister +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x60721da7 dsp_audio_law_to_s32 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xa215f1b2 dsp_audio_s16_to_law +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xb98308d8 mISDN_dsp_element_register +EXPORT_SYMBOL drivers/md/bcache/bcache 0x1b4db918 closure_put +EXPORT_SYMBOL drivers/md/bcache/bcache 0x4b8e946c closure_trylock +EXPORT_SYMBOL drivers/md/bcache/bcache 0xa26b79e6 closure_sub +EXPORT_SYMBOL drivers/md/bcache/bcache 0xd65cd032 closure_sync +EXPORT_SYMBOL drivers/md/bcache/bcache 0xdc8fb31a closure_wait +EXPORT_SYMBOL drivers/md/bcache/bcache 0xe3c17af1 __closure_wake_up +EXPORT_SYMBOL drivers/md/bcache/bcache 0xfb692cf6 __closure_lock +EXPORT_SYMBOL drivers/md/dm-log 0x22dcfcbc dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0x5aec1cfd dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-log 0xa9793362 dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0xc3b2ec50 dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0x25e79c68 dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x353c11b4 dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0xaa013339 dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0xbfe0c360 dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0xe0d754e4 dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0xf302e6fe dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/raid456 0x54624eb1 raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x03c809bc flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x0da1bc58 flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x196fe209 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x34fb6757 flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x35383659 flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x37a621b9 flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x3cbf912a flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x546ccc3f flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x6ccbe5a0 flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x95287fbf flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc1bdc835 flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc90c98b3 flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xed7f58af flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x0ae88ae3 btcx_riscmem_free +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x495e4b0c btcx_calc_skips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x595b96fd btcx_riscmem_alloc +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xad2fe38b btcx_sort_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xc368f8e6 btcx_align +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xcda0ded2 btcx_screen_clips +EXPORT_SYMBOL drivers/media/common/cx2341x 0x1ca0c084 cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0x2f25eee2 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0x3db8be82 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cx2341x 0x57928efa cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0x5b88faf6 cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0x76e7b0c5 cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc184ec1e cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf76ce95 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf8b77a4 cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0xd2fe8600 cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0xeaa29394 cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0xeafb9940 cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0xc9ca3bee tveeprom_read +EXPORT_SYMBOL drivers/media/common/tveeprom 0xfafa52f0 tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0034a4c9 dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x162fa21f dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x17523ce7 dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1e8fd8bb dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x26ae3fcc dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2ad6506a dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2c8f9878 dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2e1d584d dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x32706276 dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3d116be0 dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x403c645f dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x44156b6f dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5c0ea535 dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x67c7985d dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x700389e1 dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x70af1058 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x74a5a698 dvb_filter_pes2ts_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x78db694b dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7f4f9b54 dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80e3832d dvb_filter_get_ac3info +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x81195b97 dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x85a5e7d3 dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x88f80780 dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa3178da2 dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xac4ca1b0 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb7e04203 dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xba428c32 dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xbeecfe25 dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc859b3d1 dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xcb4e342a dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xced99357 dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xcf589e8c dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd30c5330 dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd68a099e timeval_usec_diff +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd8f7184c dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe5ae8707 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe7352ce4 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xee431125 dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xef2bb296 dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xef3882cc dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xefbc70e1 dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf28e7431 dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf826deb0 dvb_filter_pes2ts +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfc123f31 dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-frontends/a8293 0xf36040e9 a8293_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9013 0x4dc12b32 af9013_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9033 0x7d1f4851 af9033_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0xd3ba2b03 atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x146e53f1 au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x1cf7cfe6 au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x33f07a24 au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x3982a9d5 au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x7d164703 au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x8c0044d6 au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x9cb77644 au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xddc689d5 au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xe6336d55 au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0x9223c6b9 au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0xcbb6c498 bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0x147052b3 cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0x59863eb0 cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0x5008ef5d cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x30d93c01 cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x5bcef089 cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0x10d51d07 cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x96eaa0bc cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0xc6b857d4 cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0xf5a16ea8 cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x888fd5e9 dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xc79bd71f dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xca59e347 dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xcb06511c dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xce67c97b dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x2ad55d02 dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x34cb4b8b dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x38164d81 dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x39865907 dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x4c6cfd68 dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x750a5279 dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x79139ba6 dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x807eaebd dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x95eb7586 dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xac3c5f11 dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb5095e8e dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xbcce8c73 dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xdd20047b dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xe19c31c6 dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xeafade6d dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0xbda709b8 dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x5ad39da5 dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x73143488 dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x87f6857f dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xd41942fe dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xf687568f dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xfc207ed9 dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x0b128354 dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x61355ad6 dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xbf201f4b dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xcd1475df dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x13dd25a6 dib7000p_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x2118684a dib7000p_get_agc_values +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x2da9b644 dib7090_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x2dd4f966 dib7000p_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x2ea478bf dib7000p_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x95687609 dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x9c70ecbc dib7090_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x9fabd07d dib7000p_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xa6042b13 dib7090_slave_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xa8cf1c1a dib7000p_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xc9427702 dib7000pc_detection +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xd72d6b53 dib7000p_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xdd7f863c dib7000p_set_agc1_min +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xe1d2ed9e dib7000p_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xf1ad8fb0 dib7090_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xfd15871b dib7000p_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x0eb4110b dib8000_remove_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x0f53af17 dib8000_pwm_agc_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x10c69330 dib8000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x14a2bdaa dib8000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x3508d603 dib8000_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x39d2d432 dib8000_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x4cf0ff5a dib8000_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x5033aade dib8000_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x60c0e21b dib8000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x9250f9d2 dib8000_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x9b0836c8 dib8096p_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xaba18c96 dib8000_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xaf13d0ed dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xd034c8fc dib8000_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xd04ae42f dib8090p_get_dc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xd9eca0ae dib8096p_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xea45b636 dib8000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xf062c777 dib8000_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xf42753ac dib8000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x4327ae7c dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x446f5c9b dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xa48fb175 dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xad3ad91c systime +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xb37bd264 dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xe6fd6d8e dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0xe7833daa drxd_config_i2c +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0xf86f3282 drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0x4f7128a8 drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0xbef93722 ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0x8a367f86 dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0x99db4830 ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0x22145474 isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0xf395fb5b isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0x80914a74 isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/it913x-fe 0xaf42272f it913x_fe_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0xf98c86e1 itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0xa9df5b7b ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0x62039720 l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0x587f6189 lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0x032eb655 lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0x731ff138 lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0x7393566c lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x8933bbbe lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x92446f3a lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0xc890c238 lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0x3495f394 m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0x9b49659d mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0xd4f30099 mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0x93742f9a mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0x27d2941e mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0x660b07b4 nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0x6b79ff6a nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0xe771eb53 or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0xf6c840ab or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0x77a4324b rtl2830_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0xdb8e6a7b rtl2830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2832 0x4b428c8e rtl2832_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0x4f5ceb42 s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0x131811e0 s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x550e5e56 s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x9fe0e068 s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0x5ef27225 s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0x3cecac5e si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0xdae539ce sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0x4279c015 sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0x2aa1ee02 stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0x5c278a5e stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0xa5a2049f stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0xc3fe3b74 stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0xc10621ad stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0xd6fd1c4e stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x5ea5a84f stv0367ter_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0367 0x86668872 stv0367cab_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0x51b4cf47 stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0xe3bb25c2 stv090x_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0xe3c29b37 stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0x1ecbae5a stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0x9462d4ef stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0x5b1e82c0 tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0x958ad4e3 tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0x0375e374 tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x25a44859 tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0xf5c8db4d tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10071 0x77f9f371 tda10071_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0xb1eec91b tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0x528cca4a tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0x156a658e tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0x86ba181c tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0x16081ce6 tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0x5b7dac96 ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0xc6360113 tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0x6812eca1 ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0xfe1464de ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0xc6678d1a zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0xc5f536a9 zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0x5cecb99e zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x4a36cb81 flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x5e60618a flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x73c2a93e flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x818990cc flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x9df036f2 flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xbd749f16 flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xd6bf31b4 flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x02528db2 bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x33fc4893 bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x9d1deee2 bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xb7ffd87f bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xd5d0bdef bt878_num +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x11dc4b6d bttv_gpio_enable +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x351ead44 bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xc90d00e4 bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xdc93eca1 bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x369d2702 dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x4eb36e59 write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x9dbdd23d read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xba8a45a9 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xd122c848 rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xd7f6c6b8 dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe32a3158 dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe94b8c9c dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xf5d066ca dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xfebe4ff5 dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0x81f8da40 dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x5be92917 cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xb707724f cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xe1ba0f6b cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xe9618e1a cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xfa263e3c cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x5e4ac6c8 altera_ci_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6fa8346a altera_pid_feed_control +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x6ff7510d altera_ci_tuner_reset +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0x9247b72f altera_hw_filt_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xa0797fa0 altera_hw_filt_init +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xdb3faf38 altera_ci_release +EXPORT_SYMBOL drivers/media/pci/cx23885/altera-ci 0xe66b9812 altera_ci_irq +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x0b640a0b cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x13765d8e cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x65826b42 cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x784853c3 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x884f21c6 cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xbc2a6f4e cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xc5d38741 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xce11cc09 cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x22b513dc vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0xfec41cdc vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x0cf8f8bb cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x1d8b862d cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x70f4b708 cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xa2cdafa7 cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x147aabb7 cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x344e8df2 cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x3811add0 cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x9a5ac7b5 cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xc52d30bd cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xed119eb1 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x062c5f19 cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x08543c07 cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x223d9099 cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x28d17f90 cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4216fc84 cx88_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6141c8c5 cx88_tuner_callback +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x713232c8 cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7642ed3c cx88_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x80669cb2 cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x8b5611c6 cx88_free_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x904b8696 cx88_audio_thread +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xa04ae591 cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xa0e4d43f cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xa66941f6 cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xa72f1386 cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xac0771e8 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xb4474843 cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xbc1f0e4f cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xc3de2397 cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd488b1d1 cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd5b28ab5 cx88_risc_stopper +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xe5b833c0 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xebb95627 cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xed64b309 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xedb7e217 cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf1cfe036 cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x0783c22b ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x1e848eda ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x27cea91c ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x3439f175 ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x40285a7a ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x5bdd23ae ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x6812f007 ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x84aa067f ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x8d092eb4 ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x96b25f4f ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x9eb4f11e ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xb025888e ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc315fcfb ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc4a4316a ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xc89824ee ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xd021d236 ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xee8ae433 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x0171a181 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x04e83446 saa7134_tuner_callback +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x064454aa saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1211df5d saa7134_devlist +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x363db06a saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x37500851 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x536ed0c4 saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x6947445e saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x6b067b97 saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x73039031 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x7e418207 saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x8c58594b saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xb01d5ddc saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xba29a553 saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xf92a7e2b saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x0dff776c ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xc3e4c127 ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x31ad4def soc_camera_power_init +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x5b2b399f soc_camera_lock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x60a56de8 soc_camera_power_off +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x69df4d86 soc_camera_host_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x8a2a9de4 soc_camera_unlock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x8c0e22d7 soc_camera_power_on +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x916f329d soc_camera_host_unregister +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x93eb73af soc_camera_apply_board_flags +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0xd78a4efe soc_camera_xlate_by_fourcc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x25c52d97 soc_mbus_samples_per_pixel +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x2863728e soc_mbus_image_size +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x5f3e3558 soc_mbus_bytes_per_line +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xa9546115 soc_mbus_find_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xc8b28da5 soc_mbus_config_compatible +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xfe2c3a07 soc_mbus_get_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x4017ab8a soc_camera_client_scale +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x58095310 soc_camera_client_g_rect +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0xa2109a9c soc_camera_client_s_crop +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0xe8c6b791 soc_camera_calc_client_output +EXPORT_SYMBOL drivers/media/radio/tea575x 0x4be4195d snd_tea575x_exit +EXPORT_SYMBOL drivers/media/radio/tea575x 0xb45202db snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xec352084 snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0xf8b472c7 snd_tea575x_init +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x04dca738 lirc_unregister_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x178ccce9 lirc_dev_fop_write +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x20cc8c8a lirc_dev_fop_poll +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x3a679ff7 lirc_dev_fop_open +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x5639e26b lirc_dev_fop_close +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x5eb0bfcd lirc_register_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x62bb8d7d lirc_dev_fop_ioctl +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x777b4e8f lirc_dev_fop_read +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xb2f637f2 lirc_get_pdata +EXPORT_SYMBOL drivers/media/rc/rc-core 0x23da8074 ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0x9ad8a09a ir_raw_handler_register +EXPORT_SYMBOL drivers/media/tuners/e4000 0x719d1dc8 e4000_attach +EXPORT_SYMBOL drivers/media/tuners/fc0011 0x7319fc34 fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0xbd246c86 fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x0419d4a2 fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x78e24aa8 fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x7ae5b3b3 fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc2580 0xcc7998c3 fc2580_attach +EXPORT_SYMBOL drivers/media/tuners/max2165 0x77a523a6 max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0xc5de9a90 mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0x9738067e mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0xbc7b6e3a mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0x7a98e79a mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0x2989e498 mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0x9777c40c qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18212 0x5463f725 tda18212_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0xb8d58f46 tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tua9001 0x1d46315a tua9001_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x0cb4b189 tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0xe428dbb5 xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/tuner_it913x 0xf3971101 it913x_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0xe91f567e xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0x3a2a3f56 xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x0065c7d8 cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x1fe9a1af cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x35492c1c dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x554e80ed dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x58b8b314 dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x714c5f4c dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xb960b1fb dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xc9c7bfca dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xcceb7129 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xe5b020a5 dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xf12833f9 dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x375759ff dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x768b5e0c dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x84dc9131 dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x8d4e6ce6 dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x9ac4f039 dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xca9e7aa9 dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xf478d4c3 usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x13e247e0 rc_map_af9005_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x9ead7349 af9005_rc_decode +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xd4e288db rc_map_af9005_table_size +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x0ed4b550 dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x2156ef1f dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x30df08bc dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x3a0cbbe8 dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x556b3127 dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x784d5819 dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x7d6908b2 dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x883151bd dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb47559e0 rc_map_dibusb_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xc53232e1 dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xc807ab25 dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xfb12e75c dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x34fc8534 em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0xffa35101 em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x43f814e8 gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x4eaae932 gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x5f58e98c gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x78c0ba6d gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x8f0ace1a gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xa3556c26 gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xd1f4ce33 gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xd3c08da0 gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x27ac3611 tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xa4aa31ee tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0xeeee7b93 tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x02aad961 ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x296dd8ab ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x42c8e001 v4l2_ctrl_next +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x4adaf0f3 v4l2_ctrl_query_menu_valid_items +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x53c9394f v4l2_ctrl_query_menu +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x5f96a661 v4l2_ctrl_check +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0xabe27502 v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x0a94b3cd v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x266c8b60 v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xae15ab59 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x03f84cd0 videobuf_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x14d0f199 videobuf_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x74479c71 videobuf_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x7bc7f8c9 videobuf_dvb_register_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x7c50f271 videobuf_dvb_get_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xcc8a23d5 videobuf_dvb_find_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf2-core 0x89633013 vb2_querybuf +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0312e99e __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x04a1062e v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x05efde73 v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0f6108d7 v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x115a7e83 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x140e371b v4l2_of_get_remote_port_parent +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1765d9ad video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1a75ee16 v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1b93be96 v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1c582246 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1d142088 v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x28a22183 v4l2_subdev_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x28c0a196 v4l2_subdev_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2a687cda v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2d2792a6 v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2fcfe861 v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2ff8e88b v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x346d841a v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x36847d11 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x373a7ed7 v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3863a5a6 video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x39142d2f video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x39ca4987 v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3db7f213 v4l2_of_get_remote_port +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x41b2190b v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x495426ee v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4a9d3eec v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4b6fc435 v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4e096c93 v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4e70d29c v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x50e547ac v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x52003bcb v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5a4ddab0 video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5dad9b08 v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5deeffba v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x60ab91eb v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x60eb8571 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x614b4dde v4l2_subdev_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x63e8d522 v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6ea0d66e v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7370214e v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x737b3fee v4l2_subdev_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x74a33a51 v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7a3cd015 v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7bc114fa v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7f923f2a v4l2_of_parse_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8f170227 video_usercopy +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x913d9e59 v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9413a5ae v4l2_subdev_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x99f9b624 v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9d888ea0 v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa668b7cf v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa915d575 v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xaabbb506 v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xad452b28 v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xae1cd91a v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb90cbedf v4l2_of_get_next_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbac4a225 v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc06cbc8e video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc0c143f7 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc125e13e v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc12cf8f8 v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc70028d9 v4l2_ctrl_add_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc88a4721 v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xca022abf v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd8946f61 v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd96d0468 v4l2_subdev_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdf9ed6ff video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe5164db8 v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe6fce6f2 v4l2_ctrl_merge +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xef807ae5 v4l2_subdev_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf30aae2a v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf452263a v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf8c724e9 __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf9fb1096 v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfbcbf911 v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/memstick/core/memstick 0x16257ebf memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x1d98eea5 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x2a369552 memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x2a720b94 memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x51e92b0d memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5c59c0a8 memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5d820a02 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x776daa37 memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x84281458 memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa03480f0 memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa38807ff memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0xc7d9d8a0 memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xdc07e67e memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xe333ed8c memstick_next_req +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x04fe03db mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x076170c2 mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x0af0cb6f mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x115409bf mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1265bb8d mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x13ca1b21 mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1ead6948 mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1f470b1f mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3a845495 mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3eb4861e mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4526289b mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4db13f43 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x59923003 mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7afdefc5 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7f614c21 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x869baf4b mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8a8ce76a mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8ce13b12 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x96cecf2e mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9ccdf598 mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa78a6f6c mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xad60601f mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xae9c19cf mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb8e4a4cd mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc0e69f82 mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc1eaa40a mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc47c22e8 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xce8e3cd7 mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd9a92a75 mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdaf97f92 mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf57cc7dd mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xfd690a88 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xfebfa87c mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0c4236cc mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x0db0f6f9 mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1d98b1cc mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1f54794e mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2a546b1c mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x304d5fe2 mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x33c7cebe mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x354428d5 mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3fcd3c52 mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5bf407ec mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x6c759eb0 mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x70a8cc65 mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x7f6cdd1e mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x928b2458 mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x94af3185 mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x98febda7 mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x99470b4b mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x99f89008 mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xad693939 mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xb48e87ac mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xb74c6695 mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xc3afe6c9 mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xc82a3e5e mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd76007e5 mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xec7b2c3e mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xed2e2ee0 mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf88813e3 mptscsih_info +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2573f0c5 i2o_cntxt_list_get_ptr +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x25f00671 i2o_exec_lct_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2a843bef i2o_dump_message +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x3fa4297e i2o_parm_field_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x533e2fd6 i2o_status_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x7254d529 i2o_driver_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x79e271ee i2o_driver_notify_device_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x7b9bf7c2 i2o_iop_find_device +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x7e9d88a0 i2o_device_claim +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x8a48466f i2o_device_claim_release +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x942a40d5 i2o_cntxt_list_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xaf41f8fb i2o_driver_notify_controller_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb24d88fb i2o_driver_unregister +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb48dc075 i2o_driver_notify_device_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb4c00dcf i2o_controllers +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xc0278bee i2o_msg_post_wait_mem +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xc57f93f6 i2o_parm_table_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xcb662093 i2o_find_iop +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xe02b6c76 i2o_cntxt_list_add +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xe2176beb i2o_msg_get_wait +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xe27bef3e i2o_cntxt_list_remove +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xe653a08a i2o_event_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xeed8373b i2o_parm_issue +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xf57ca779 i2o_driver_notify_controller_add_all +EXPORT_SYMBOL drivers/mfd/cros_ec 0x2339a8b8 cros_ec_resume +EXPORT_SYMBOL drivers/mfd/cros_ec 0x4e1fb735 cros_ec_suspend +EXPORT_SYMBOL drivers/mfd/cros_ec 0x65222e55 cros_ec_remove +EXPORT_SYMBOL drivers/mfd/cros_ec 0x987b39f6 cros_ec_register +EXPORT_SYMBOL drivers/mfd/cros_ec 0xa225378d cros_ec_prepare_tx +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x4356bba9 pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x712a920b pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x06fdfd45 mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x5f9e80eb mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x76300791 mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x76d2a044 mc13xxx_irq_request_nounmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x8450d798 mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x926f5032 mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xa72747a9 mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xadcf0725 mc13xxx_irq_ack +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xaef532ca mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb4bdb31c mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xb88b1457 mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xbe97d9d1 mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xdbf8f25f mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/tps6105x 0x2cf72bf2 tps6105x_mask_and_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0xa1bf53de tps6105x_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0xaf06daae tps6105x_get +EXPORT_SYMBOL drivers/mfd/tps65010 0x02d4ad0f tps65013_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0x0c6ad2cf tps65010_config_vdcdc2 +EXPORT_SYMBOL drivers/mfd/tps65010 0x28485130 tps65010_config_vregs1 +EXPORT_SYMBOL drivers/mfd/tps65010 0x33739de7 tps65010_set_vib +EXPORT_SYMBOL drivers/mfd/tps65010 0x9fd44c69 tps65010_set_led +EXPORT_SYMBOL drivers/mfd/tps65010 0xb14080cc tps65010_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0xd5bb106d tps65010_set_vbus_draw +EXPORT_SYMBOL drivers/mfd/tps65010 0xe99b3f36 tps65010_set_gpio_out_value +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x29416a3a ad_dpot_probe +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0xfc86ac24 ad_dpot_remove +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x7daa3738 altera_init +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x5bced084 ssc_free +EXPORT_SYMBOL drivers/misc/atmel-ssc 0xfd4bd36b ssc_request +EXPORT_SYMBOL drivers/misc/c2port/core 0x094ac055 c2port_device_unregister +EXPORT_SYMBOL drivers/misc/c2port/core 0xb2fbd4ce c2port_device_register +EXPORT_SYMBOL drivers/misc/ioc4 0x1bd63363 ioc4_register_submodule +EXPORT_SYMBOL drivers/misc/ioc4 0xccdf86ca ioc4_unregister_submodule +EXPORT_SYMBOL drivers/misc/tifm_core 0x0401496b tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x08dfd0b4 tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x17dcd810 tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x1b2c16eb tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0x2be87aef tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x629f026f tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x66e92d54 tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0xa7342007 tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xa8c2ec46 tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0xbfbc8bd2 tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xc1b9bc59 tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xe42dec10 tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xec4ccc4e tifm_unmap_sg +EXPORT_SYMBOL drivers/mmc/card/mmc_block 0x0d9a83fe mmc_cleanup_queue +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0x0f403ccd mmc_spi_get_pdata +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0x209206fc mmc_spi_put_pdata +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x2499df71 cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x5bcfb880 cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xa78313a1 cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x33ddd008 do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x951e01c0 unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0xdfd7c0a2 register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0xf091fb9f map_destroy +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0x7041e7ff mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0x13006f6a lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0x192e6238 simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0x3ad636b3 mtd_concat_create +EXPORT_SYMBOL drivers/mtd/mtd 0xf1c544f0 mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/nand/denali 0xbe8f5f00 denali_init +EXPORT_SYMBOL drivers/mtd/nand/denali 0xe3a187dd denali_remove +EXPORT_SYMBOL drivers/mtd/nand/nand 0x0d183576 nand_scan_bbt +EXPORT_SYMBOL drivers/mtd/nand/nand 0x12364370 nand_unlock +EXPORT_SYMBOL drivers/mtd/nand/nand 0x42dbe443 nand_scan +EXPORT_SYMBOL drivers/mtd/nand/nand 0x6f34662b nand_scan_ident +EXPORT_SYMBOL drivers/mtd/nand/nand 0xc4c08134 nand_scan_tail +EXPORT_SYMBOL drivers/mtd/nand/nand 0xfd43a8ec nand_lock +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x345076f3 nand_bch_init +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x70097aa0 nand_bch_free +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0xc76e40fa nand_bch_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0xec064e33 nand_bch_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x2358d0a5 nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x3132ee65 __nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xb4b94377 __nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xe4d8fa47 nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0x57a31e57 nand_flash_ids +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0xa336feb7 nand_manuf_ids +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x432c24d5 flexonenand_region +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x49c67abb onenand_default_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x4c13d31c onenand_addr +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0xbb46b6a0 onenand_scan_bbt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x16be6502 arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x2a740b0c alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x3ac7f577 arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x57811bbc arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x5ca043c6 arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xa3ee4e7c arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xa409ee81 arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xbb81a539 arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xc56d2f37 arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xde6647a7 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x1b984cdd com20020_check +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x5f9fa8a5 com20020_found +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x94c2477d com20020_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x299b4990 ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x2fdd30d2 ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x4666b750 __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x4f6303e3 ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x691b8750 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x79ecb36d ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x8ba30832 ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xacaf326b ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xdca9008d ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xed1e5334 ei_poll +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x2e96e592 cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x0f017ab5 cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x2bd5a505 cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x3de29044 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x5003d649 cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x56b3ad09 cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x606110b1 cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x71808697 t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x72af3858 cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x7c672ea1 cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x86f89952 t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x991a0bb0 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa6fabfb4 cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xb5f36d49 t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xc7543d43 dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xdd73ed33 t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xf55534db t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x09d8fab0 cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x121dc00b cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2bd9a105 cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x39572b50 cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x418f59b3 cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5068430d cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5a89639e cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x63854458 cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x66c46f69 cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x69d58c14 cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x71a3c08c cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x8449a853 cxgb4_disable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x848a6889 cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x890e503e cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x8b6daca7 cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9b33fce4 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9deca9d3 cxgb4_enable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa0a7110e cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa17caec7 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa210a71d cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa3035303 cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa435096b cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xaaab1d5e cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xbe90ca03 cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcf2fa993 cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd00e5a36 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf103856b cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xfed7a115 cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xff4c31f8 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x0e712340 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x2534bbf2 vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x4f650da7 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x5078275f vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x7546e23d enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9196d804 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x91d05b8f be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xbab62e22 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xcc029d00 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x11d24010 mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x186569d4 mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x35218988 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3fbfb49d mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x630fc616 mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6f6cfb3c mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x719b4fb7 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x736924fb mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x76110fc7 mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x79d21d75 mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7bad2803 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7d659d21 mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x81c8b9cc mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x857f73f1 mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8ed8931a mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9a48b66d mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9c845a72 mlx4_set_stats_bitmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcbd1e064 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdc51b401 mlx4_test_interrupts +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdf8410cd mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe3b2657f set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xee1f1b40 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf0ae695a mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf31b858c mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0ab4dc28 mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0deec3ea mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x16e1168f mlx5_core_query_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1ed931fd mlx5_core_dump_fill_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x20250dab mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x233befb4 mlx5_core_get_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x29398d94 mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x48e04b3a mlx5_core_destroy_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x494a4975 mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4ff974e0 mlx5_core_create_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5935e314 mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x64a33f83 mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6f07d582 mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x74eb32b0 mlx5_dev_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8a38ac17 mlx5_cmd_comp_handler +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8f70f79d mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x93707338 mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9991c8dc mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9b456c7e mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e5cf98d mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xaadc9e24 mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xad8a816c mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb48ee1d3 mlx5_dev_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb6a3b026 mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc103abaf mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xeca3f08d mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xede29c74 mlx5_core_arm_srq +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x7b993419 hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x860aa52d hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xbf22e7b7 hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xe66f402f hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xe71a01ad hdlcdrv_register +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x09616bfa sirdev_set_dtr_rts +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x3e6323b0 sirdev_raw_write +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x453ccc6e sirdev_write_complete +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x7ede6c08 irda_register_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x893ec50e irda_unregister_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x8b5ba3ab sirdev_set_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x951ee280 sirdev_raw_read +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xa7d69822 sirdev_get_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xda1004b9 sirdev_receive +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xed26937f sirdev_put_instance +EXPORT_SYMBOL drivers/net/mdio 0x22bce513 mdio_mii_ioctl +EXPORT_SYMBOL drivers/net/mdio 0x43e4defc mdio45_nway_restart +EXPORT_SYMBOL drivers/net/mdio 0x7577f992 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0xa1a29548 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0xb34a7575 mdio45_ethtool_spauseparam_an +EXPORT_SYMBOL drivers/net/mdio 0xc6b1163f mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0xddc98749 mdio45_ethtool_gset_npage +EXPORT_SYMBOL drivers/net/mii 0x1b4249aa mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0x216141a3 mii_check_link +EXPORT_SYMBOL drivers/net/mii 0x7d3da0f5 mii_check_media +EXPORT_SYMBOL drivers/net/mii 0x996c320e mii_link_ok +EXPORT_SYMBOL drivers/net/mii 0xb2d37bbb mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0xd52623d0 mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0xf47af096 generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0xf7a175c3 mii_ethtool_gset +EXPORT_SYMBOL drivers/net/ppp/pppox 0x3806cd83 pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0x4b71dff8 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xd3bc893e register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/sungem_phy 0xf0f59a23 sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x6e973768 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0x6f22c229 team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0xbcfe50cb team_options_register +EXPORT_SYMBOL drivers/net/team/team 0xce572c58 team_mode_unregister +EXPORT_SYMBOL drivers/net/team/team 0xd3201092 team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0xd4e85088 team_mode_register +EXPORT_SYMBOL drivers/net/team/team 0xdbc56bf1 team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0xf1317ea4 team_options_change_check +EXPORT_SYMBOL drivers/net/usb/usbnet 0x17a4c552 usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/usb/usbnet 0x9bef1348 usbnet_manage_power +EXPORT_SYMBOL drivers/net/usb/usbnet 0xefbe508c usbnet_link_change +EXPORT_SYMBOL drivers/net/wan/hdlc 0x14fd00cf hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0x41b9715d hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0x467724a7 unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x9eaa882c unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0xb4b670af hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0xb5149ab6 hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0xbbf39e46 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xd1122806 alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0xe04fab4e hdlc_change_mtu +EXPORT_SYMBOL drivers/net/wan/hdlc 0xe7fbf1f3 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xf9823db7 register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0x522e4f93 i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/airo 0x060ead52 init_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0x3e808584 reset_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0x9a6c2f41 stop_airo_card +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x243fce03 ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x24f56b02 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x2efa9dc2 ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x319c6026 ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x36421c5a ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x3ca9db9f ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x3d52b013 ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4e2481d5 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x53358ce3 ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x5bbb267c ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x74395d20 ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x85732510 dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x8e4aea33 ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xe211d860 ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x13b4fb80 ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x195dcd40 ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x26a0c198 ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x4ed3dc9a ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5971ad59 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8246be6c ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x895f9dc2 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x9072ce8b ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaf096710 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0199ec46 ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1313eff7 ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x27b5fd87 ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x27cf1694 ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4c6ddcb4 ath6kl_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4d45d37f ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4e1380ee ath6kl_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4fdf9088 ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x5b251889 ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x78497f25 ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x8779a34f ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x8a055496 ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xc992e526 ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xe2e556b8 ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x21c3e261 ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x24463c2b ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x2d9f3f14 ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x91fc76f5 ath9k_hw_wow_event_to_string +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x2172ae1e ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x262e9888 ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x83a93046 ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xb1ac5cc4 ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x059c4ace ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x08751bb8 ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0c23aefe ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0e5f938d ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1004039b ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x11826d4a ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x12d19d16 ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x143a3650 ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x152c65cb ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x158c5525 ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x194184c2 ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1b3f2ed9 ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1bfae591 ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x227b1683 ath9k_hw_cfg_gpio_input +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2359e491 ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x253a17ac ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x25d937f3 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2ed705f5 ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x327a02bb ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x35990e5e ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x376ee071 ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x39f522de ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x426cec14 ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4298a7f9 ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4390422e ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x47dfbac9 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4a6bdf9e ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4ff773eb ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x54397fb2 ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x562877ae ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5684f28b ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5705e0ff ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5f8f60e7 ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x622bdaba ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x62b775b3 ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x650e3154 ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x66254dc1 ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x67338910 ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x68342016 ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x683bad9a ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x68b3de47 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6998f86a ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6acbd3b9 ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6af3fc2d ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6ca3f75f ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6cb70329 ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6d25c88b ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6d5a243d ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6e37df02 ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x74401a2e ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x75778b8f ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x76793f94 ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x79ed728e ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x80cf5d65 ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x825dc7e3 ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x869c21d5 ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8adbca2a ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8c727852 ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9268bbb6 ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9273fff6 ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x92d30f45 ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x932fc7fa ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x97dc7e01 ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x98c3feb9 ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9940ce40 ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9bf2581b ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9cbddb09 ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa7132558 ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa8f5fe0d ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaacc1a01 ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xad20247d ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaf5a827c ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb0d4fe83 ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb0fae703 ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbc09325a ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbce5dca5 ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc0dbc800 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc1573f27 ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc2b3751b ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc542d431 ath9k_hw_cfg_output +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc7794c04 ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc7e3f885 ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc8353f30 ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcda8f1d7 ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd10df8f6 ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd19634be ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd38e35ca ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd3ddbc40 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd5ef4ac8 ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd8ee9855 ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdc25f4da ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdec24ed6 ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe80f40bb ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf5447fb3 ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf70189d1 ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfd0df530 ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfe0ce354 ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xffedcbcc ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/atmel 0x73a410f9 stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel 0xc38f3d0d init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel 0xe9cb2f80 atmel_open +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0x686aa79a brcmf_sdio_remove +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0x90136135 brcmf_sdio_probe +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x04a126d1 brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x1024fb74 brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x180f400d brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x197e82a2 brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2dc227f8 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x3689747a brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x79e7be4e brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x7bc5a39e brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xa74f0126 brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xae40286d brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xc3277ed0 brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xe3931d8d brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xe9aee876 brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xfbe52876 brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x060fb3fb hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x14f157de hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x1723ac32 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x18562916 hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x1ea3e60b hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x3ce6a1c2 hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x433c543b prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x54a00c1b hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x55097ac8 hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x557b23ed hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x7a272106 hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x82b614be hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x874a2b4d hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x8e31dfa3 hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x936fde86 hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x996dc469 hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x9edf631c hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x9f0553b9 hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa12ad27f hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa69212b0 hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb2a945e0 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb415880e hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xbe89992d hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xc1978cfe hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xd4cf01fe hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xe198367c hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xfbe3df78 hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xfe3061b9 hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x0093a680 libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x0560f954 libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x1d6416ed alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x202ebb34 libipw_change_mtu +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x4d0ce6b7 libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x4faa95d0 libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x53cbbf39 libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x64d7dff4 libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x68c0a334 free_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x6bc39755 libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x9cb8f3f2 libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xb7d0d06d libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xbc20e883 libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xc15c5dea libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xc5fcea83 libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xcd781f65 libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xd19ef234 libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xd34f9687 libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xedac9ed1 libipw_rx +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xf1343f28 libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xf63885fc libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x019d702b il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x020cd743 il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0298a3be il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0cd845c2 il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0d05d642 il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0ff492d0 _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x167a5012 il_leds_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1766368a il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1a3b760b il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1b950bbc il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1c43c288 il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1d76a650 il_mac_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x228e375a il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x23e74754 il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2429aa9e il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x24ae5520 il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x28da4497 il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2910badf il_apm_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2adca9b5 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2d1e4157 il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2fc5741d il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3d6e29f1 il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3dbd273a il_init_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3ecd1cf0 il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3ed4d0fa il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3efb0eff il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x407043a2 il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x432096e6 il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x434d839f il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4396e1d2 il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x446efa37 il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4a485c79 il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4aa39103 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4e7777a3 il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4fdafd0f il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x52159ae2 il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5314a4af il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x55d14272 il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x564c6740 il_debug_level +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x574c571c il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5f5458e0 il_update_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x620c82ea il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x65e9e8bd il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6676f498 il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6cecb168 il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6f26fed3 il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x701e86fd il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x72f6e994 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x733e076c il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7452349d il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x74738ef8 il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x74dd4b13 il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x79e938ce il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7abdcef5 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7ac128e8 il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7c316684 il_pm_ops +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7fa9726a il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x811f3c10 il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8546f822 il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x864c2422 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8682d373 il_force_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x890c0320 il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x898087ca il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8aec51d5 il_set_rate +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x93d0a19c il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x94e69c87 il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x97ad931a il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x987f24c7 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9c48a82f il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9df6cc5b il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9f10261d il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa75932db il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa7f7c0eb il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa86d97fd il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa9aa8f6e il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xaaca6103 il_set_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb6daa04d il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb6ef729a il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb86e1bc7 il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb9886549 il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb9af9337 il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xbbbf303d il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc02959db il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc39cf12c il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc8b63f25 il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcad04730 il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd3260fc0 il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd3aa5031 il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd789309a il_free_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd9d49c1a il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdaf58a13 il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdb3da084 il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe2f0a453 _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe435493a il_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe4ef8f2f il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe7d23243 il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xefb8e931 il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf2416295 il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf480f8a9 il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf501278b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf577f5ab il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xff5023a6 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xffe6de71 il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x08dd8699 __tracepoint_iwlwifi_dev_rx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0c50fa2b __tracepoint_iwlwifi_dev_tx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x1ecc5465 __tracepoint_iwlwifi_err +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x2f7b7e55 __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x3b9d00d6 __tracepoint_iwlwifi_dev_ioread32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x675bcb86 __tracepoint_iwlwifi_info +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x779dd6f5 __tracepoint_iwlwifi_dev_iowrite32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x85c1bb84 __tracepoint_iwlwifi_dev_iowrite8 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x8de37664 __tracepoint_iwlwifi_dbg +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x954eb7a7 __tracepoint_iwlwifi_crit +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x963a6f8a __tracepoint_iwlwifi_dev_ucode_error +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xb8f7026f __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xe2dcc8de __tracepoint_iwlwifi_warn +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xf9ec6bdd __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x1aadf363 orinoco_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x223ffeff orinoco_up +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x485d94c6 orinoco_get_stats +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5a39c3e7 orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5dea5bf1 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x67faa911 orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x69a62c6e orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x8565d53d orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x8d939042 free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x922a1428 orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x95510896 orinoco_open +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x9fad0e8e orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xb85454d9 orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xbe666a0c __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xd2ee0914 __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xddcbf590 orinoco_down +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xfafe9590 alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/btcoexist/btcoexist 0xd5174e8d rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0ce02bcc rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x131993d5 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x18355761 _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x382537a4 rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3a01853b rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3e9a3fd7 _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3f4280ec rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x454cafc1 rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x4af1a23c rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x4bef7830 rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x50ff3a53 rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x54886f2b rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x5ee9f733 _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x5f279042 _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x68083ca0 rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x6a77f09e rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x75b75789 _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7f5edb0d rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8b6ece82 rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x95ceaf99 _rtl92c_phy_dbm_to_txpwr_Idx +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x96495c0e rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x9a3ef60d rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa87b8403 rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb0285bd4 rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb0d25e14 rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb3314d48 _rtl92c_phy_calculate_bit_shift +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb421bb8b rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb50f7c56 _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb517dfd7 _rtl92c_store_pwrIndex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xbb16b913 rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xbc4de888 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xbd377656 rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc38e192d rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xcb2a9174 _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xce931482 rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd16a66bf rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd5fb603d rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xdd6cb697 rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xefde5906 rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf262fe5e rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf48cb26c rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xffcfec6d rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x0fee3b3a rtl_pci_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x1c2e780d rtl_pci_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x8d9fa742 rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0xf640db1b rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x0493788f rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x0b79b753 rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x3ba052bf rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0xe2d39b0d rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x000081e6 rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x16d93ecb rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x17e323d5 rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x1c505e86 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x1cef8985 rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x207fbb70 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x23e56160 rtl_ps_set_rf_state +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x41eb0d99 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x57b3f886 rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x754a7d76 rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x76237fc9 rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x79188a02 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x830ec016 efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xa2723a1f rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xa96827a0 rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xc2cc3329 rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xd7a7af29 rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xe3ce5ddb rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xf4a9aebf rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xf4b696c1 rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xf9d69280 rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xfe031792 rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x24de6fa3 wlcore_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x668c6cb1 wl1271_free_tx_id +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xdd0489b6 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xdecd758f wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/nfc/microread/microread 0x32c602ea microread_probe +EXPORT_SYMBOL drivers/nfc/microread/microread 0x32f3e516 microread_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x14854db8 pn544_hci_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xdfd0d38e pn544_hci_probe +EXPORT_SYMBOL drivers/parport/parport 0x0a09d526 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0x105c5caa parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x1f231264 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0x216d020f parport_read +EXPORT_SYMBOL drivers/parport/parport 0x2e8c7560 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x34c2c51c parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x34f93c24 parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x352979cc parport_register_device +EXPORT_SYMBOL drivers/parport/parport 0x3d670b5b parport_release +EXPORT_SYMBOL drivers/parport/parport 0x4227a809 parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x42858fb6 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0x44bfa97a parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x636fe32a parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0x6b8c2f75 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x6e79ef30 parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0x6e7f3804 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x79af6782 parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0x7c96c760 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0x7f629641 parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0x9e8c538b parport_claim +EXPORT_SYMBOL drivers/parport/parport 0xa345abc5 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0xab2e1804 parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0xadd6ece5 parport_write +EXPORT_SYMBOL drivers/parport/parport 0xb08d6a71 parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0xb160a878 parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0xb7f79360 parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0xcb2bdd45 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0xd07aef04 parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0xdb2215de parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0xef5fab64 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport_pc 0x93dde033 parport_pc_probe_port +EXPORT_SYMBOL drivers/parport/parport_pc 0xd618476a parport_pc_unregister_port +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x0440fb67 pcmcia_write_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x0cda3370 pcmcia_disable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x0fc827f9 pcmcia_loop_config +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x1b3cfed5 pcmcia_dev_present +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x206ddfda pcmcia_release_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x26a3909a pcmcia_get_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x496e7355 pcmcia_read_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x526ff4e4 pcmcia_fixup_iowidth +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x742f5665 pcmcia_parse_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x8d7eb515 pcmcia_request_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xa6fd131e pcmcia_enable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xbc43b4b1 pcmcia_map_mem_page +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xcc6888ed pcmcia_request_io +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xcd4f3855 pcmcia_loop_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xd7d8e3b6 pcmcia_unregister_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xdc6f3ce2 pcmcia_request_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xdd7e7c68 __pcmcia_request_exclusive_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xe0e62515 pcmcia_register_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xf5d40b67 pcmcia_fixup_vpp +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xfff9ec20 pcmcia_get_mac_from_cis +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x03ab0de4 pcmcia_get_socket_by_nr +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x08ced9d8 pcmcia_socket_list_rwsem +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x212db8d2 pcmcia_socket_list +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x318fe3df pccard_register_pcmcia +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x4c988e9b pcmcia_socket_class +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x5059ab72 pcmcia_parse_events +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x57e93e6d pcmcia_put_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x666e6cad pcmcia_parse_uevents +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x7a5e1e73 pcmcia_reset_card +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xbd5c316c pcmcia_unregister_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xce2ed21a pcmcia_get_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcf97f3bd dead_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xd619e5b8 pcmcia_register_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0xb44a8261 pccard_nonstatic_ops +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0xde76c7fd pccard_static_ops +EXPORT_SYMBOL drivers/pps/pps_core 0x0a3c02fe pps_register_source +EXPORT_SYMBOL drivers/pps/pps_core 0x10c11496 pps_event +EXPORT_SYMBOL drivers/pps/pps_core 0x4d8d207d pps_lookup_dev +EXPORT_SYMBOL drivers/pps/pps_core 0x50a8f4f9 pps_unregister_source +EXPORT_SYMBOL drivers/ptp/ptp 0x0cc486c5 ptp_clock_register +EXPORT_SYMBOL drivers/ptp/ptp 0x79b8e5dc ptp_clock_index +EXPORT_SYMBOL drivers/ptp/ptp 0xba15b15b ptp_clock_event +EXPORT_SYMBOL drivers/ptp/ptp 0xcfa4bcef ptp_clock_unregister +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x2aca8c88 rproc_vq_interrupt +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x359dffb5 rproc_da_to_va +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x591ba0da rproc_add +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x7ae7648d rproc_alloc +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x8e6aa0d5 rproc_shutdown +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x8fc5efe0 rproc_boot +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xc1d6e6ef rproc_report_crash +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xd0878154 rproc_put +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xd4f563f4 rproc_del +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x1dbfea0a fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x21c1f11a fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x2c08a105 fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x3839abe1 fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x425d41bb fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x6f8f894c fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x6fa37620 fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x7c4f758f fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x8c7bc8d4 fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xb9d114b0 fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xc4b02cb5 fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xeeab4429 fcoe_ctlr_destroy_store +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0008e9db fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x069b4f9a fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x13a7961d fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1c75ca9d fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2d04e38c fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2f6c76dc fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3049417e fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x321debd4 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x35044b97 fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36e5fbaf fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3834b599 fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x48566c1d fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4cb808bb fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x552f66ff fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5eaac4fa fc_rport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5f16c1e0 fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x65eb74ee fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6793522a fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7082d762 fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x711031de fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7782f70a fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7a0106ea libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7f261c71 fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x82742ce3 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x89088a30 fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8c888727 fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x952b9bb7 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x98e5bbde fc_change_queue_type +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9a212da1 fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9b888b7d fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9cdfacab fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9f144481 fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa02bcad9 fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xadba0a59 fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb1585efd fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb1830e2f fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbb607d1f fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc06745cf fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc0fcd714 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc6156667 fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc6a80785 fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xce8724d0 fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcf5eafe7 fc_change_queue_depth +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd0a66bcc fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd9e4efdf fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdd237c70 fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe5a518b4 fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe8e8307f fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xeb409134 fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf0560bbc fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf2eb9625 fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf8630d51 fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfe40ce45 fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x864d06fa sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8a87e724 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x91352ff8 sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x94c2c8da sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xd8d36903 sas_wait_eh +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x2250c66e mraid_mm_adapter_app_handle +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x512c956d mraid_mm_unregister_adp +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0xb6d8c2a6 mraid_mm_register_adp +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x01fb0464 osd_req_write_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x08469360 osd_req_read +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0c17edb1 osd_sec_init_nosec_doall_caps +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x124457a4 osd_req_decode_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x1ae6c9d1 osd_req_remove_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x20c5f52d osd_end_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x2a24132c osd_req_flush_obsd +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x33e46e52 osd_req_read_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x3bfaa978 osd_req_list_partition_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x3d39ddaf osd_req_remove_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x43fa20ed osd_req_flush_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x4c4ca462 osd_req_write_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x4d5d8b8b osd_execute_request_async +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x4e908702 osd_finalize_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x4f26c3ab osd_req_read_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x5086f100 osd_req_decode_sense_full +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x5420658e osd_start_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x58b1c0cf osd_req_write_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x59841715 osd_dev_init +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x6d1efe6b osd_req_get_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x6e0d516c osd_req_create_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x756a0ec9 osd_req_format +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x83c42e91 osd_req_read_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8a64cfd6 osd_req_add_set_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x8fef343c osd_req_add_get_attr_page +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x96a082c9 osd_execute_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9b9892bd osd_req_add_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9bd7e0c1 osd_req_set_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xa274b3de osd_req_write +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xa2d0b836 osd_req_list_partition_collections +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xa3e1567f osd_auto_detect_ver +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xba09e607 osd_req_create_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc1084781 osd_dev_fini +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc8fb8e10 osd_req_list_collection_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd6f182c8 osd_req_list_dev_partitions +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xf57ac97e osd_req_flush_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xfd9f7384 osd_req_flush_collection +EXPORT_SYMBOL drivers/scsi/osd/osd 0x0666c95d osduld_device_same +EXPORT_SYMBOL drivers/scsi/osd/osd 0x2b4d1bb8 osduld_info_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0x5fc48609 osduld_unregister_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x8334d025 osduld_device_info +EXPORT_SYMBOL drivers/scsi/osd/osd 0x87e07127 osduld_register_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x9e721d48 osduld_path_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0xd57b5425 osduld_put_device +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x15425c60 qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x23b6d99e qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x41ffa257 qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x4fe7c1a7 qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x912617c7 qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xb4b867ea qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xba0d394d qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xc548d32e qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xef4d98e3 qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xf9943c57 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xfec8c6cf qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x1356488b qlogicfas408_disable_ints +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x19ea068a qlogicfas408_biosparam +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x1f55cd70 qlogicfas408_ihandl +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x25787662 qlogicfas408_abort +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x2ea436f6 qlogicfas408_queuecommand +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x3fd8cd71 qlogicfas408_detect +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x6e54d967 qlogicfas408_info +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xe76b3b20 qlogicfas408_get_chip_type +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xed405766 qlogicfas408_bus_reset +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xf2b95199 qlogicfas408_setup +EXPORT_SYMBOL drivers/scsi/raid_class 0x173e0b73 raid_component_add +EXPORT_SYMBOL drivers/scsi/raid_class 0x9a3d2ab8 raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0xa1ab0660 raid_class_release +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x15769312 scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x1dfcef5e scsi_is_fc_vport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x2478e0c4 fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x25f6e2b5 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x29d6227f fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x3c13a810 fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x47feb2b9 fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x5f4c4163 fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x66615411 fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7954b1ea fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x9720134f fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xc054752b fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe8256642 fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe85ae13f fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x05392a6a sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x09b014c8 sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0a165b73 sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0e5bcafa sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2676dd17 sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2cdafdca sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2d530770 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3269a625 scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x36e04241 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3f21caac scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x52f9e16c sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x57fa3c42 scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6e0369a3 sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x760f5e15 sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x791a1395 sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7d6fca96 sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7df410f9 sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x89c4fa11 sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x928f1754 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb03b8ae2 sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb76be10d sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbb9d0a72 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc2e36e88 sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd9cc5874 sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xdf0c46ba sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe001b0bc sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe3607d44 sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe92d2f53 sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x1729a8ce spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x2721d548 spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x46d9ae05 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x80e1b016 spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xc6b25c6a spi_dv_device +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x801b8662 ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x892af95e ufshcd_runtime_resume +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x94f16447 ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x0a8a86d1 ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0x226abb10 ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x27509f54 ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0x358dcdd2 ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0x47efe267 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0x5713648e ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x5e0433cb ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x5fc5ad94 ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0x7e58c18e ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0x860ffbf0 ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0x8a7ef9bb ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xa2df5b0f __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0xa40c8a81 ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0xb32cc000 ssb_bus_pcibus_register +EXPORT_SYMBOL drivers/ssb/ssb 0xc0512e0f ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xc0b8b8e6 ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xc2e790fd ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0xcb6190e7 ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xd2fa1dd0 ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0xd3e9eaec ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xd481192b ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xe21596a3 ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0xe925a654 ssb_pcihost_register +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0x55f4c4c9 fwtty_port_get +EXPORT_SYMBOL drivers/staging/fwserial/firewire-serial 0xdf9c94bc fwtty_port_put +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x041a1de8 adt7316_remove +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x1ad89750 adt7316_probe +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0x189837e6 ade7854_probe +EXPORT_SYMBOL drivers/staging/iio/meter/ade7854 0xaeea87a9 ade7854_remove +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0264d470 lnet_extract_iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0363b57a lnet_copy_iov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0bce7eef lnet_counters_get +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x0f1e8bce lnet_copy_kiov2iov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1366b7ac LNetSetLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x19670622 LNetNIInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1b191752 lnet_msgtyp2str +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1f5ad96d lnet_copy_kiov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x1fe16fd5 LNetGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x204b8151 lnet_counters_reset +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2aa9953d lnet_cpt_of_nid +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x2ac93e90 lnet_connect_console_error +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x33202a6c LNetGetId +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3c779ee0 LNetPut +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x3f4f5b46 LNetNIFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x43b01274 lnet_set_reply_msg_len +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x473ad33b LNetDist +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5811a721 LNetInit +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x58a1ca89 LNetMDUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5ab8c43a lnet_net2ni +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x5fee352c lnet_acceptor_timeout +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x61f784b2 LNetClearLazyPortal +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x64cdea3a LNetCtl +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x6f7be171 LNetEQGet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x722c76e5 LNetMDAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x72f81a7a lnet_connect +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x7d59a7fe LNetMEInsert +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x854ab844 LNetEQWait +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8a3064f2 LNetSetAsync +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8e3faad8 lnet_unregister_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x8e9879a1 lnet_copy_iov2kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0x9de986d3 LNetEQAlloc +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa3d61f8d lnet_iov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa70a92a8 the_lnet +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xa8c2760b LNetFini +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa414970 LNetMEUnlink +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xaa9b477e LNetMDBind +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xb75f7953 LNetEQFree +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xba54bb3e lnet_kiov_nob +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xba5566d2 lnet_acceptor_port +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xba83aa01 lnet_create_reply_msg +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xbf0760a2 LNetMEAttach +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xc78967d4 lnet_extract_kiov +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xcd06833d lnet_set_ip_niaddr +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xcd070c64 lnet_notify +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf1b316bf LNetSnprintHandle +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xf4eda98d lnet_parse +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xfb12dbce lnet_finalize +EXPORT_SYMBOL drivers/staging/lustre/lnet/lnet/lnet 0xfd51445c lnet_register_lnd +EXPORT_SYMBOL drivers/staging/lustre/lnet/selftest/lnet_selftest 0x078db139 lstcon_ioctl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x1c4bb5f9 LU_OBF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x375e6f8d LUSTRE_BFL_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x5636306a seq_client_get_seq +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0x6d2a50aa client_fid_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xad3a2eb2 seq_client_alloc_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xadb7f467 seq_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xae61cff5 LU_DOT_LUSTRE_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xc997a02f LUSTRE_SEQ_SPACE_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xe9ef729d seq_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xecee2727 LUSTRE_SEQ_ZERO_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xf8834603 client_fid_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fid/fid 0xfe8abfa9 seq_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x1d0843f9 fld_client_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x51da2014 fld_client_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x5f64c9de fld_client_add_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0x7c322925 fld_client_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xbe39082f fld_client_del_target +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xe8a9206a fld_client_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/fld/fld 0xe8c14ead fld_client_proc_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x000c507f libcfs_debug_dumplog +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x01db5172 cfs_percpt_atomic_summary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x03387ca6 cfs_curproc_groups_nr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x03c7ae5b cfs_percpt_atomic_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x04d3ce6a lbug_with_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x06401e01 cfs_hash_is_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x069f9bb2 cfs_wi_schedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x06b4f415 cfs_cpt_set_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08917712 cfs_hash_for_each_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x08ada613 libcfs_console_backoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0aae8493 cfs_cpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0b4b1546 libcfs_lnd2modname +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0c5a1008 libcfs_sock_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0d8effef libcfs_kkuc_group_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0de6c369 cfs_cap_lower +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0f5eff79 cfs_percpt_number +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x0f7fcd44 cfs_cpt_set_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x123b6908 cfs_hash_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12426266 libcfs_run_lbug_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x12c54b77 cfs_hash_findadd_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x17ac7833 libcfs_deregister_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1a60d439 cfs_parse_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1c97b722 cfs_cpt_set_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d41c4c0 cfs_hash_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1d5a3928 cfs_timer_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x1e8cdb47 cfs_race_waitq +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x20ef56fc cfs_cpt_set_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x21568600 cfs_cpt_of_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2663147a __cfs_fail_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2771fd3d cfs_cpt_unset_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x277e62bd cfs_hash_for_each_empty +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x27b6d3ba cfs_ip_addr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x29aafd0c cfs_hash_hlist_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2a641ef9 cfs_hash_dual_bd_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2b1e0458 cfs_get_environ +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2dbe54b2 cfs_trimwhite +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2fb7eae8 cfs_hash_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x2fe97a46 cfs_wi_sched_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x30986343 cfs_range_expr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x31fc5082 cfs_crypto_hash_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x32ae7fbc cfs_cpt_unset_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x361e82d4 cfs_firststr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x377f93fb cfs_srand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3848f4de cfs_cpt_unset_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x389ca502 libcfs_debug_mb +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x39385fd2 cfs_percpt_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x39fdcd2b libcfs_debug_set_level +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3c1285bd libcfs_subsystem_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3d5e6098 cfs_race_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3e5e7727 cfs_hash_rehash_cancel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ea730c0 cfs_gettok +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x3ef0d90c libcfs_kkuc_group_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4087e2b4 cfs_hash_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x411db754 cfs_crypto_hash_final +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x41ab33a1 libcfs_ipif_free_enumeration +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x43295263 cfs_hash_debug_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44839bbb cfs_rand +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x44f07cfc cfs_pause +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4600f624 libcfs_sock_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x468bace1 cfs_hash_rehash_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4790ca11 cfs_hash_debug_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x47fdb4d1 cfs_timer_is_armed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x48f163c6 libcfs_str2anynid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4a99af72 cfs_clear_sigpending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4b64115f libcfs_sock_listen +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4b982291 cfs_hash_bd_peek_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x4f1f2fa5 cfs_crypto_hash_digest +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x50345570 libcfs_str2net +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5051b6d2 portal_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x509d38b0 libcfs_net2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x53e92adb cfs_cpt_table_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x54fd9a71 cfs_percpt_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x58a7ee00 libcfs_catastrophe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5946ec2b cfs_percpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5a892b2b cfs_percpt_lock_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5b20921a cfs_hash_for_each_nolock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5c013b81 cfs_expr_list_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5c9ba613 libcfs_sock_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d3be65a cfs_crypto_adler32_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5d73c3e3 cfs_expr_list_free_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x5dce9e80 libcfs_lnd2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62289d65 cfs_array_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x62f56738 upcall_cache_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x63b4967a cfs_hash_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x64685fef libcfs_console_min_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6564c55b libcfs_console_max_delay +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x65dd9f0c libcfs_run_upcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x66136d2d cfs_timer_arm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x67398404 cfs_wi_sched_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x677a5bd2 cfs_cpt_online +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6a59b79b cfs_cpt_unset_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c2da207 libcfs_sock_setbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c4cadc8 cfs_hash_for_each +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6c905b5f libcfs_watchdog_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6dfa9ea1 cfs_crypto_adler32_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6e6af71c current_is_32bit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x6f928e1b libcfs_debug_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7190502f upcall_cache_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x71f662a3 libcfs_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x72f4e5f9 cfs_hash_bd_move_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x75161168 upcall_cache_flush_idle +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7562cd14 cfs_hash_del_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x771695b1 cfs_hash_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x785b7372 cfs_hash_dual_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a3d49ae cfs_expr_list_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7a47b94d cfs_hash_size_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7b0b748a cfs_ip_addr_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c73bc4b cfs_hash_rehash +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7c7986cf waitq_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7e6f6485 cfs_ip_addr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x7fda989d cfs_fail_loc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8151c3aa cfs_cap_raised +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x83d795e4 cfs_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x841679dd upcall_cache_get_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x857aaea7 libcfs_register_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x87f3bb87 cfs_hash_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8840f591 cfs_block_allsigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8ab81255 cfs_cpt_nodemask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8bdfb88b libcfs_sock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8c85e4e6 cfs_crypto_hash_speed +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f12bb52 libcfs_log_goto +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x8f45f10d cfs_init_timer +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x91504e8b libcfs_kmemory +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x92e7c30b cfs_cpt_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x940ed192 libcfs_stack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x949221dc cfs_hash_cond_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x95620e8c cfs_wi_deschedule +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x97b0b9bc cfs_enter_debugger +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9879b229 cfs_get_random_bytes +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9b6610a0 libcfs_sock_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9c6d26c0 cfs_cpt_table_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9e420643 cfs_restore_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9e8fb7ad cfs_percpt_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0x9f82f712 cfs_trace_copyout_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa1cbf250 upcall_cache_flush_all +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa2b68b2a cfs_array_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa5748f4f libcfs_sock_abort_accept +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa6b9dee6 libcfs_kkuc_group_rem +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa6ff1e5c cfs_cpt_spread_node +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa8a489ea cfs_cpt_table_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9088531 cfs_expr_list_values +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9dc74e2 cfs_trace_copyin_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xa9eae690 cfs_str2mask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xab887583 init_waitqueue_entry_current +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xad019238 cfs_str2num_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xad48113f libcfs_sock_getaddr +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb00dfd91 cfs_hash_dual_bd_findadd_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xb643afb1 libcfs_sock_getbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbab577e8 cfs_hash_for_each_safe +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb972619 proc_call_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbb9cb508 cfs_curproc_cap_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbd5d492e cfs_timer_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xbf7a37f1 cfs_signal_pending +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc0ea7fc0 cfs_expr_list_parse +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc1708189 cfs_hash_dual_bd_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc1a4f1b0 cfs_percpt_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc1b20836 cfs_hash_add_unique +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2911d96 cfs_expr_list_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc2dfd791 libcfs_console_ratelimit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc39fd2f9 libcfs_panic_on_lbug +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc3eb614e libcfs_ipif_query +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc47433a6 cfs_capable +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc49b1c62 cfs_percpt_atomic_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xc9b78bb4 upcall_cache_downcall +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcb385db9 libcfs_debug_binary +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcb6ff89a cfs_cpt_table +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcbab8493 schedule_timeout_and_set_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcc20e694 libcfs_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xccc45639 cfs_free_nidlist +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcd38904c cfs_wi_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xce1a88f2 libcfs_arch_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf61bacb __cfs_fail_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xcf678304 cfs_hash_bd_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd0aa642a cfs_hash_rehash_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd2965f33 cfs_hash_bd_del_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd48d8f72 cfs_hash_dual_bd_lookup_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6a52be3 libcfs_printk +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd6f1fc60 cfs_strncasecmp +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd7bbf963 cfs_hash_dual_bd_finddel_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd7c4f765 add_wait_queue_exclusive_head +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xd96f406d cfs_cap_raise +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xde17bb8d libcfs_isknown_lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xde9c00c4 cfs_cpt_weight +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdf2789c0 cfs_curproc_cap_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdfecb98d cfs_block_sigs +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xdffc951d cfs_timer_disarm +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe3bf6897 cfs_percpt_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe6555032 libcfs_ipif_enumerate +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe75794eb cfs_cpt_bind +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe7b54314 libcfs_arch_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xe94553b9 upcall_cache_flush_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xea411f63 cfs_block_sigsinv +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xec1f56d5 libcfs_str2nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeceac781 cfs_fail_val +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xedf3a25a cfs_timer_deadline +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xeed48ba7 cfs_hash_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xefbf6d86 upcall_cache_put_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf3bb035a libcfs_kkuc_msg_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf440bb38 libcfs_kkuc_group_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf4f062df cfs_crypto_hash_update_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf5e4a175 cfs_hash_bd_add_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8a8644b libcfs_id2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf8efb8c5 waitq_timedwait +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xf94025d1 libcfs_str2lnd +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfa4531a2 cfs_cpt_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfacb8667 cfs_hash_getref +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfd493ddf cfs_cpt_cpumask +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xfe565fa9 cfs_crypto_hash_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xff0f98a6 libcfs_debug_vmsg2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/libcfs/libcfs 0xffcad24b cfs_percpt_lock_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x4fbcd671 ll_direct_rw_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0x94c0962e ll_stats_ops_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xad9e738b ll_osscapa_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xcd3cde92 ll_iocontrol_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/llite/lustre 0xfb20e059 ll_iocontrol_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x27095531 lov_stripe_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x80fbb74b lov_lsm_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0x8b662a74 lov_read_and_clear_async_rc +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xa288d560 lov_stripe_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xb3197a15 lov_lsm_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/lov/lov 0xb9b3a7bd lov_device_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x03c8a384 fsfilt_get_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x20d579ae pop_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x24e1671d lprocfs_counter_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x2a422b42 push_ctxt +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x353ba18b fsfilt_unregister_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x3bcbdc4b lprocfs_stats_alloc_one +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x4d8d6dfa lprocfs_counter_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x6162b40e fsfilt_put_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x65e6807a fsfilt_register_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x8553b369 obd_memory +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0x9edfc0f7 lustre_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xb4f8ee63 lprocfs_read_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/lvfs/lvfs 0xf8bff1ce l_dentry_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x14a47f31 it_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0x9c22b84f it_open_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xb57d8447 it_set_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mdc/mdc 0xf46a886f it_clear_disposition +EXPORT_SYMBOL drivers/staging/lustre/lustre/mgc/mgc 0xdc287f95 mgc_fsname2resid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0095a3a9 class_conn2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x00d58731 cl_io_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x01665e34 class_parse_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x019f3366 lprocfs_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0232a19f lu_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0329a61a cl_lock_modify +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x035852d0 lustre_swab_llog_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x057f6d4b class_find_old_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x072e0407 lustre_in_group_p +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0754940c cl_lock_is_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x07aa68bb lustre_swab_lustre_cfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0836daca lprocfs_register_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x083942ff class_del_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x085fc48c lu_context_key_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x08618ecf lprocfs_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x08653967 class_exp2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x08ec6fca lprocfs_seq_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x091ad9b2 dt_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x093b597e dt_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x095ade61 cl_page_is_vmlocked +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x097858a7 cl_io_iter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x09daf774 cl_io_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0a0a642c cl_io_prepare_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0a6a772b capa_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0ac85510 cl_req_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0b95ddd4 cl_page_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0c31ffe4 class_find_client_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0cc06854 lu_cdebug_printer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0d2899b3 cl_page_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0d4ab517 cl_page_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0d9cd374 cl_io_sub_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0e7d03e0 cl_io_lock_alloc_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0ea6c572 cl_env_unplant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0ec5e21e lu_device_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f129858 lprocfs_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0f275af1 llog_ioctl +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x0fe91547 obdo_to_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x10d8d221 cl_page_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x111b3c5e lu_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x11495519 lprocfs_write_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x117f74a8 cl_sync_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x123e5b5b dt_directory_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x12a9679c cl_object_kill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x142b8365 cl_enqueue_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x14423312 local_index_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1491dc30 lu_context_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x153b80d4 llog_copy_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x15f7484b llog_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x16333794 llog_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1718290f llog_cat_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17260880 obdo_cpy_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x17a9f54c lu_object_find_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1909f97e obdo_from_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x192a9057 dt_txn_hook_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1b73c131 lprocfs_nid_stats_clear_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1bf029bf cl_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1c251a03 local_oid_storage_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1c95e6a8 obdo_to_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1c980d3f llog_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1ca04c3e cl_conf_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1e161913 cl_io_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1f7ad384 lu_context_key_quiesce_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x1ff87264 cl_io_submit_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x20638b77 llog_cat_cancel_records +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x20b19c79 cl_lock_intransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x20c748b6 lprocfs_at_hist_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x211e36b3 lustre_idmap_lookup_uid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x214639a7 lprocfs_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x221826f1 class_parse_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x224bca7b cl_lock_ext_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x229c537d cl_page_vmpage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x22e0941e lprocfs_add_vars +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x22ff1069 lu_kmem_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2468a77d obdo_from_iattr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x24f967d2 cl_offset +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x252698d5 class_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2547efae lustre_uuid_to_peer +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x275cdc7a cl_env_reexit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x27a23e02 lu_object_invariant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2808a11d llog_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x297cf5e0 class_handle2object +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2a7dd73d cl_page_cache_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2ae1cd79 kuc_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2b4d97de lustre_end_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2c4352c3 cl_lock_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2cadd315 cl_vmpage_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d491fae cl_lock_mutex_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2d70af39 cl_page_list_move +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2e511e7f cl_env_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2eb27cd3 class_put_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x2fb7fbc3 cl_lock_user_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x30051d5f cl_page_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x30a181b2 cl_unuse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x310f6641 cl_page_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x32ba7a38 dt_quota_slv_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x33c151e3 lu_buf_realloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x33fb98b9 cl_page_list_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34611441 cl_use_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34c351dd cl_lock_nr_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x34dc92ea cl_2queue_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x365192c7 cl_lock_hold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x36725dcc cl_req_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x37ed6e4b at_early_margin +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3887d529 lprocfs_rd_server_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x38fb0c90 class_match_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3913b0d8 cl_object_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x392615b1 dt_txn_callback_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x39c8580f class_handle_hash_back +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a85bfbc cl_req_page_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3a97073e dt_locate_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ad6e3e8 cl_env_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3ae7440c lprocfs_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3b3c3809 lprocfs_free_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3c2aeb23 class_import_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3cab6d78 cl_env_nested_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d068cf6 cl_object_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d6c3c0b cl_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3d7370bf lprocfs_rd_conn_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3da2aa39 lprocfs_alloc_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3eab7bfe LU_BUF_NULL +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x3f91c616 class_search_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x404bd7a7 class_handle_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x40950417 class_config_llog_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x412a635d lprocfs_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4311fdd1 class_disconnect_stale_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x433302cc lprocfs_rd_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x43c8bd9e cl_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44b57923 lu_object_put_nocache +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44e41abb lustre_posix_acl_xattr_filter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x44e690ad lu_site_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x452f559a lu_buf_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47476c3e cl_object_attr_unlock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x474ed5bd lustre_swab_ll_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47b35f7d statfs_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x47e7ab67 lu_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x491bc86f class_disconnect_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x494cfb52 lustre_acl_xattr_merge2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x49a0f6ea lustre_posix_acl_xattr_2ext +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4ac58713 obd_connect_flags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4b1fda3e lprocfs_rd_num_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4bbee337 class_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4bd1b152 llog_cat_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4bf356ca lustre_idmap_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c190aad lprocfs_find_named_value +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4c4c700b obd_alloc_fail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d13458b kuc_len +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4d6f8f5b cl_lock_state_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4de36f3c lustre_idmap_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x4eebcd58 dt_declare_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x50c7fc36 ptlrpc_put_connection_superhack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x51105d84 lu_device_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5120fa67 cl_page_make_ready +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x51a92517 cl_page_flush +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x521d6a72 lu_context_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x52df4999 lu_kmem_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x530894a5 cl_env_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x538acbe1 cl_object_glimpse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x539d03c3 cl_queue_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54271e4c local_object_unlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54885f87 ldlm_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x54c48f57 cat_cancel_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x558bec27 obd_ioctl_getdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x55a98216 cl_io_commit_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x564e9d44 init_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x569f1f70 cl_pages_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x56b95cfb cl_req_page_done +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x570d09ae lustre_swab_lu_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x57a7b5f7 lprocfs_wr_atomic +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x57e8a73c class_incref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x582b013d dt_quota_glb_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x58c5fffd lprocfs_wr_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x58ecc118 local_file_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5953bbeb cl_sync_io_note +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x599bc304 cl_lock_get_trust +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a20d896 obd_memory_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5a48eb07 cl_lock_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ae33f05 class_new_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5b4f5682 lu_object_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5b6b7aea class_config_parse_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ba9fe39 cl_page_list_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5bc022c5 lprocfs_dt_rd_filestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5c170983 lprocfs_free_per_client_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d12032b llog_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5d34ae0d cl_lock_mode_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5e93341f lprocfs_oh_sum +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ed188a9 lprocfs_add_symlink +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5eed8fd6 lu_context_key_register_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5f0ecd59 cl_io_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5fe97b73 block_debug_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x5ff12507 dt_store_resolve +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60a0b1c3 lu_site_purge +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x60e08dc4 lprocfs_seq_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x624ffe24 lprocfs_counter_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631a518d mea_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x631fd7b9 lustre_ext_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6385adc6 class_detach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x63bfc581 class_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x648a7f66 lprocfs_free_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x64f57c15 local_oid_storage_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6593ff2d cl_object_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x65ce31e2 obd_llog_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x66601e3f lustre_process_log +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x66d0abe8 lu_context_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x66dfe1e3 cl_page_list_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6734adbd lprocfs_read_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x675244fa dt_otable_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x677fd7f9 proc_lustre_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67809abc cl_page_find_sub +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67977b42 lprocfs_remove_proc_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67a90622 la_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67c0c9f6 cl_io_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x67dc223a lprocfs_remove +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x68773065 cl_object_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6890d175 lustre_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x68c6993c class_export_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6956f00d lustre_register_kill_super_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x69c42114 at_min +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a242c42 cl_locks_prune +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6a9362a8 lprocfs_init_mps_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6b5fed9d llog_cat_init_and_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6b7d63cf llog_osd_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6c042627 cl_env_implant +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6d2579bc cl_io_is_going +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6dd8dd93 cl_object_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6e2a5a52 class_config_dump_llog +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6e3196de lu_object_locate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6ee0cb48 class_new_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f2e1a85 cl_page_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x6f39b457 cl_object_attr_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x71b5cf2d cl_page_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x71faabbb lu_object_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72d54fcf class_uuid2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72ddee4c obdo_le_to_cpu +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x72e6be0e class_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x735972d8 cl_2queue_init_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x73b60b4c cl_lock_at_pgoff +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x742559b1 class_unregister_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x749b30c0 lu_object_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x74dcf894 cl_io_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7519f618 lprocfs_init_ldlm_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x752f71a8 class_get_profile +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7535b9f9 class_exp2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x75420ce2 cl_env_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x756a77f3 class_parse_nid_quiet +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x76877f32 dt_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x77d2089a class_name2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7802fcd7 lustre_swab_llogd_conn_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7842f44a cl_lock_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x789796a1 obd_zombie_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x78988461 lu_context_key_revive_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7a07b423 class_conn2cliimp +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7a6a854f lu_env_refill +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b4fc57b at_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7b8facac lu_env_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7bc12d2a lprocfs_init_ops_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7bce3774 dt_version_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7be2b440 lu_context_key_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7c5bba13 cl_lock_disclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7d4cf793 local_index_find_or_create_with_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7d57b5d5 cl_2queue_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7d8ff9b4 lu_context_key_degister +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7e33fe42 cl_page_list_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7e36a6c4 lu_context_enter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7ebf0487 dt_lookup_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7edcafa0 cl_env_reenter +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7f7d7cd9 lu_buf_check_and_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fad7291 raw_name2idx +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x7fe5561a obd_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8031efb8 lprocfs_dt_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x804ef02a cl_page_list_splice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x806cc497 class_add_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x81742d89 obd_ioctl_popdata +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x829982c2 llog_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x831f656c class_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x834822a9 lprocfs_add_simple +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x842d1a8d llog_declare_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8489f086 obd_alloc_fail_rate +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x849e5385 obd_update_maxusage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8503c454 lu_buf_check_and_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x853072f7 class_devices_in_group +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8612215c lprocfs_rd_u64 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x865b635a cl_page_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x86952855 llog_declare_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8718fe09 llog_cat_declare_add_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x872a3f4d cl_lock_discard_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x87723201 lprocfs_rd_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x87916949 lprocfs_rd_timeouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8794ad30 lprocfs_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x87a7b944 class_name2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x88620366 cl_page_at +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x88b87068 lprocfs_stats_collect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x891054f1 lprocfs_clear_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8a2bdd21 cl_page_list_unmap +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8a606605 lu_context_key_quiesce +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8aa2c358 lprocfs_dt_rd_blksize +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b0bbb50 lprocfs_alloc_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b5f4057 lu_context_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b794236 dt_version_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8b7abf93 lu_context_key_revive +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ba6e479 lustre_swab_lu_seq_range +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8bf89816 cl_page_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8c185698 cl_page_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8c21311f dt_record_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8c57e9d2 class_export_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8ca474ee llog_init_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8cf73f11 dt_index_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8d658ed0 capa_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8dd300a1 llog_declare_write_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8e10e6d6 server_name2svname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8e6ccb0c cl_type_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f0ada21 cl_lock_descr_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f59c858 dt_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8f67314c obd_dump_on_eviction +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8fb2e0b4 lu_object_header_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x8fd49c1d lu_object_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x902d4198 class_import_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x90a2174c cl_io_lock_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x917aae10 lprocfs_rd_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92a6dd7f lu_object_find_slice +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92b84f0a lprocfs_rd_connect_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x92e58479 obd_dump_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93859814 lprocfs_oh_tally +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x93b46468 lu_session_tags_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x94bcaedb lprocfs_rd_kbytestotal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9505c895 lustre_idmap_lookup_gid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9512d507 lustre_acl_xattr_merge2posix +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x955f5220 ldlm_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95735c6c at_extra +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x95ec998a lustre_groups_sort +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x96820bab class_fail_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9692baad cl_page_gang_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9722b275 obdo_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9767adce class_uuid2dev +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x97d03783 at_history +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x99a61578 llog_thread_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9a0e09b7 cl_env_nested_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ab92c82 lprocfs_rd_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ad6c3ab cl_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b052af2 class_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b1ed9d8 obd_jobid_var +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b7914e9 cl_page_list_own +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9b7c2f5f llog_cancel_rec +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9c12fec0 obd_devs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9c46b962 lprocfs_obd_seq_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ce8dc7e cl_io_submit_rw +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9d6598e6 dt_record_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9dbb17b6 lprocfs_dt_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9e46c93c lprocfs_nid_stats_clear_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9e8a32db cl_lock_hold_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9ee741cd lu_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9f5467e7 class_process_proc_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0x9fde01a4 dump_exports +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa05def39 cl_wait_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa14cc40a llog_osd_get_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa15344a7 dt_txn_hook_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa176e35e cl_lock_mutex_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa17ee49c capa_cpy +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa18eb385 cl_page_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa1fcd363 cl_index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa1fdbdb3 lu_site_init_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa1fef2ca lu_context_key_degister_many +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa21c5ea1 obdo_from_la +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa21dfa71 llog_cat_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa2480235 lu_context_exit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa281d1b4 obd_llog_finish +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa2a9e002 dt_index_walk +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa328e0b2 cl_io_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa40ae0d5 lprocfs_alloc_obd_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa48c4a30 lustre_idmap_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa4c4b310 cl_2queue_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5127070 cl_lock_unhold +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa513f7e4 lustre_groups_from_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa545c46f cl_io_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa59789b5 dt_try_as_dir +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa5fb234f lprocfs_write_frac_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa622af93 cl_page_list_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa674c241 kuc_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa769ff66 llog_reverse_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa8451e9f cl_req_attr_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xa87ba187 llog_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa21b7a0 lustre_register_quota_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa2c9937 cl_sync_io_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaa7c0cb0 lu_object_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabf083e0 obd_export_evict_by_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xabf45922 capa_decrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac5be156 cl_lock_signal +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xac7f1596 kuc_ptr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xacb5f0cd obdo_refresh_inode +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xacec7b94 class_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xae207f59 lu_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xae4e6778 dt_store_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaf2910be llog_sync +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xaf912d1d lprocfs_free_md_stats +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb01963a6 class_uuid_unparse +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb03d033c dt_txn_callback_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb05d2657 cl_lock_hold_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0bd61fa lprocfs_exp_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb0fb9886 cl_lvb2attr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1b89b6d class_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb1e5af75 lu_ucred +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb37f8434 local_file_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb3e8f452 cl_req_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb41998cd lustre_cfg_rename +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb635af9e dt_acct_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb63dac83 cl_lock_closure_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6608106 lprocfs_rd_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6ba5dd5 kuc_ispayload +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb6e5a7ca cl_lock_closure_build +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb726e84c cl_page_assume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb73de495 lu_device_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb743ec6a dt_mode_to_dft +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb756f9ee llog_osd_put_cat_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb95032cc cl_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb99dbf9e dump_lniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xb9f746e0 dt_find_or_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba48ed8d cl_object_attr_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xba985283 lustre_register_client_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbaa957e1 capa_lookup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbac20d68 cl_io_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbacac922 lprocfs_write_frac_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbb7502a1 cl_lock_enqueue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbbf6006c cl_page_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbc3c02cf cl_object_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbcee1990 cl_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbd06b5dd lprocfs_obd_rd_max_pages_per_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbd898912 llog_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbe1a0780 lu_env_refill_by_tags +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbed5c21c iattr_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbedf2463 cl_page_unassume +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbf39007a lustre_register_client_fill_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xbfbf5f3e cl_page_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0954007 lprocfs_oh_clear +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc0bf7ef2 obd_debug_peer_on_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc161ab9f dt_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc18d06cf lu_buf_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc232a02e class_num2obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc2843691 class_disconnect +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc322ca1b cl_io_read_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc52b13b1 cl_lock_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc53dbd3f llog_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc6be588f llog_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xc8dbaa87 lustre_swab_cfg_marker +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xca822208 lu_object_assign_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcae2afcb cl_page_clip +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcb0ab67f obd_max_dirty_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcbbd8c50 lu_dev_del_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xccdb0729 cl_lock_is_mutexed +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xccf7a8de obdo_cpu_to_le +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcd7537ee get_devices_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xce777f9b obd_export_evict_by_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xcedb140a obdo_cmp_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd08827c0 server_name2fsname +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd10aa042 lustre_swab_llog_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1b1478b cl_attr2lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd1f58645 lustre_swab_llog_hdr +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd2db1102 class_connected_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd30eb6e5 cl_page_list_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd3893467 cl_lock_enclosure +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd431b410 cl_page_list_disown +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd4c8e6b3 cl_lock_extransit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd51e8ad6 cl_page_is_owned +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5755b7b lu_device_type_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd5d1552b cl_page_slice_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd616632e cl_lock_peek +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd70fe669 lustre_swab_llogd_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd715c0d0 cl_io_iter_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd71c7c4b lprocfs_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd76dfad0 lu_object_anon +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bc8654 obd_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7bfbc9c lprocfs_dt_rd_filesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7ca5b85 lprocfs_rd_kbytesfree +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd7f7b340 cl_lock_mode_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd937dff3 lprocfs_rd_numrefs +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xd9dddd1d cl_io_rw_advance +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda5b1ced class_find_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xda66e553 lu_object_add_top +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdab03985 llog_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdac644c8 lustre_posix_acl_xattr_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdb13dce1 capa_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdbeb8359 cl_lock_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdc94db25 cl_lock_descr_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdcc40af0 class_check_uuid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdd78c0c7 lu_object_header_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdda3d949 class_handle_unhash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xde7d985b obd_dirty_transit_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xdf5f2a15 cl_lock_weigh +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe00dcfcc cl_req_completion +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe0246349 lu_stack_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe028cf84 capa_encrypt_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe10daadb dt_txn_hook_commit +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe147b4cc cl_page_prep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe1a6e374 llog_cat_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe27fce58 llog_cat_process_or_fork +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2d51f90 cl_2queue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2eb4470 class_get_next_param +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe2f9f1c3 lu_dev_add_linkage +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3323f5d class_handle_free_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe3d096ba cl_site_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe44fe5ea cl_lock_closure_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe4aeb597 llog_obd_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe563176e cl_2queue_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe579b319 obd_export_nid2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe65d7869 lprocfs_single_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe69dd846 md_from_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe7d83236 cleanup_capa_hash +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe80ebb58 llog_open_create +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8295a56 __llog_ctxt_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe86b2d79 cl_lock_mutex_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe86cf4a5 cl_page_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe8e84c32 class_match_nid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xe98419c1 lustre_common_put_super +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xea11ecab cl_site_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xea770f35 lu_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeacec47c lprocfs_oh_tally_log2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeb3f388a _debug_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xebda5130 cl_2queue_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec1deea3 class_register_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec76847f lustre_idmap_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xec7d6b85 obd_timeout_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xecbdd901 cl_page_is_under_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xed4d63f5 capa_cachep +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee2e9ac1 dt_device_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee33366c llog_cat_process +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee68bc29 lu_session_tags_update +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xee7a0e1b lu_env_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeea2c3e4 class_manual_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xeeeb79fa do_lcfg +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xef4b814f cl_object_has_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xef76f858 block_debug_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xefb1a666 cl_site_stats_print +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xefe41d34 cl_lock_user_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xefecc266 cl_lock_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf01e2527 server_name2index +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf19f0158 lprocfs_rd_uint +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2017d23 cl_page_discard +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2c36127 llog_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf2fd6695 statfs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf3bc5b9d dt_lfsck_features +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf490d5f9 class_del_profiles +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf52c297d obdo_from_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf5773720 lu_ucred_assert +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf581acb5 cl_io_loop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf59edcb0 class_unlink_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf60d4659 capa_count +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf6ac1a70 lu_context_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7020831 lprocfs_dt_rd_kbytesavail +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf7e0964f llog_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf874c950 dump_lsm +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf8c2df92 obdo_set_parent_fid +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf9c57ba2 cl_io_rw_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xf9c5f380 obd_exports_barrier +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa4eb332 class_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa56e0e1 llog_exist +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfa813d06 capa_hmac +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfad6e71a cl_page_own_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb213514 cl_unuse_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfb500c84 lu_device_type_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbea0098 lu_types_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfbf5833a cl_lock_delete +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfc7f18d0 obd_pages_max +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfce4103b lu_object_header_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd68d17a class_notify_sptlrpc_conf +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfd9fca8e cl_lock_release +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfdbe1557 lprocfs_write_u64_helper +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfe16597e lu_ucred_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfe2ff99a cl_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfee9d80f class_conn2export +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff0a9da6 cl_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff57e92d class_match_net +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xff59edf3 lprocfs_exp_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/obdclass/obdclass 0xfffc1f11 lustre_swab_ost_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/osc/osc 0x5c4940c2 osc_update_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x00a04fee lprocfs_rd_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x00d95039 ptlrpcd_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x019247fe ldlm_lock_change_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x01d6ef7f ldlm_pools_recalc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0267482c req_capsule_server_grow +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x02db52bd ldlm_pool_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x03d2d9c7 ptlrpc_set_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x043e0002 sptlrpc_sec_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x04490184 ptlrpc_unpack_rep_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x048b59d5 lustre_msg_set_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0515f93b RQF_FLD_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x06334639 req_capsule_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0679933b sptlrpc_cli_enlarge_reqbuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x06b3942b lustre_swab_lov_user_md_objects +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x071fc74a RQF_LDLM_ENQUEUE_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0754a55c client_obd_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x07605c7d interval_find +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x08bb2d27 lustre_swab_obd_ioobj +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x095587d0 lustre_msg_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0a3130b0 RMF_MDT_EPOCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac252b2 lustre_msg_set_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0ac54708 lustre_errno_hton +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0bcacb5d RMF_MDS_HSM_USER_ITEM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c2d9c43 lustre_swab_lip_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0c8f430b ldlm_enqueue_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0cf343dd RQF_LDLM_INTENT_BASIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0f3987cc ptlrpc_cleanup_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x0f8aa36f ldlm_namespace_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x102df195 ptlrpc_buf_set_swabbed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x10f18f20 interval_iterate_reverse +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x115017f6 req_layout_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x11798d8c lustre_pack_reply_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x11fcfdcd sptlrpc_register_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12353183 sptlrpc_get_bulk_checksum +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12373394 ldlm_blocking_ast_nocheck +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12500154 ptlrpc_unregister_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12847249 ptlrpc_unregister_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12b6f5a3 ptlrpc_connection_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x12ce6abe ptlrpc_request_alloc_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1358ca6a req_capsule_client_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1474440e ldlm_pool_setup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1483eca4 ldlm_lock_addref_try +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x14d192db lustre_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15a3e4db RMF_GETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x15bde365 req_capsule_set_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x172fb86d lustre_msg_hdr_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1747d8b3 ldlm_lockname +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x177fcc76 sptlrpc_enc_pool_put_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x17950f60 RQF_SEC_CTX +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1874c5a3 llog_origin_handle_open +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x18cb6d08 ptlrpc_obd_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x18efa05a ptlrpc_request_alloc_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19108a0f RQF_OST_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x19c08934 RQF_LDLM_INTENT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a6a3ce9 RQF_OST_GET_INFO_LAST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1a9b76aa RMF_OBD_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1abd3258 RMF_SETINFO_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ace4b5f RQF_LDLM_BL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1bae0270 interval_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1be21715 lustre_msg_size_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1c300d8e lustre_msg_get_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1d043548 lustre_msg_set_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1dc2051d RMF_SEQ_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1de9c288 lustre_swab_layout_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e1592a9 ldlm_destroy_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e609b1c ptlrpc_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1e8e48a4 sptlrpc_flavor_has_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1eb2a65f RQF_OST_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee46b51 lustre_init_msg_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x1ee9eb3c RQF_MDS_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20282b44 req_capsule_extend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2096f5b5 RQF_OST_SET_GRANT_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x20d6b82c RQF_LDLM_INTENT_QUOTA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x218a36ce ldlm_cli_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x21bf50d2 sptlrpc_conf_target_get_rules +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x231094cb ptlrpc_request_alloc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x233790b5 RMF_OST_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x244e5558 lustre_msg_get_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x24aafdba RMF_MGS_TARGET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x24ab3d91 ldlm_lock_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x251693d3 ldlm_lock_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2585a629 RMF_SEQ_RANGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2587513c RQF_LDLM_CP_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x269554ce RQF_LDLM_INTENT_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x26f99d16 RQF_MGS_CONFIG_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x27782bc6 client_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2788ef3a req_capsule_server_sized_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x285e5b99 lustre_msg_set_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x288b0ae0 ptlrpc_resend +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x29344f35 llog_origin_handle_next_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x29e0869a sptlrpc_get_hash_name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2a63a472 lustre_swab_ptlrpc_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2adcc713 ptlrpc_schedule_difficult_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2af74afa client_import_find_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2b1ac9fc lock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2c00c60d ptlrpc_sample_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ca92fa8 ldlm_lock_decref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ccd5b87 ldlm_cli_cancel_list_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d56f168 ptlrpc_pinger_ir_up +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2d798316 RMF_MGS_CONFIG_RES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4562fe RQF_LLOG_ORIGIN_HANDLE_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e4ca396 RQF_LDLM_INTENT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e81b92e sptlrpc_conf_client_adapt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2e852bc7 lustre_pack_reply_v2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2eafbe00 ldlm_resource_iterate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2ecd7515 lustre_msg_check_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2eea9bb1 lprocfs_wr_ping +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2eec800d target_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f0e4f87 RQF_OST_QUOTACTL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f3f57f1 llog_origin_handle_read_header +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2f401dc6 ptlrpc_reconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x2fd2f737 lustre_msg_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x301d4fcd RQF_MDS_READPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x302937e0 RQF_MDS_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3060b9c6 sptlrpc_rule_set_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x30cca307 ldlm_cli_enqueue_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x312c4f23 req_capsule_server_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x316c0c4a lustre_pack_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31838cb4 RMF_IDX_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x318a4c57 ldlm_pool_set_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x31a6f299 lprocfs_wr_pinger_recov +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3261b862 RQF_OST_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3341c878 llog_origin_handle_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x334a6ce8 ldlm_lock_fail_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x337fd161 ldlm_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x33bb7761 ldlm_typename +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x349e2af7 ptlrpcd_alloc_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x34a2dccc ldlm_prep_enqueue_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x35939a3d lustre_swab_fiemap +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x364a0165 ldlm_glimpse_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38094d44 ptlrpc_commit_replies +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3835ab4b RQF_LLOG_ORIGIN_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x384512e4 ptlrpc_prep_req_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3858fb94 RMF_OBD_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3896ba40 ldlm_pool_shrink +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38a75b23 ldlm_namespace_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38c01799 RQF_LDLM_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x38fce533 lustre_msg_set_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3968d4c8 ptlrpc_pinger_sending_on_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x396b0491 ptlrpc_req_finished +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39ce7522 req_capsule_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x39f60a5f RMF_OST_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a1e4bcb __lustre_unpack_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a394bb7 ldlm_get_enq_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3a6372a4 ptlrpc_send_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ab90f6e lustre_msg_bufcount +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ac00716 lustre_swab_hsm_user_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b6b7cba dump_ioo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3b8dadc8 req_capsule_server_sized_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ba297eb sptlrpc_cli_ctx_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3bedb0c7 RMF_LLOGD_CONN_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3c63e62b RQF_MDS_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ca50f33 RQF_MDS_HSM_CT_REGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3cb2ff9b sptlrpc_cli_unwrap_bulk_write +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3d7dc5f9 ldlm_pools_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dc47695 lustre_msg_get_magic +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3dddb3e2 dump_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3e5ddff0 sptlrpc_import_flush_my_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3ee4579b ldlm_pool_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3eff4635 client_import_del_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f034caf lustre_msg_get_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x3f752e78 RQF_MDS_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x41008cef RQF_LDLM_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x416cb499 req_capsule_client_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x41c1fda5 ptlrpc_save_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43705ee4 RQF_LOG_CANCEL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43b1b567 unlock_res_and_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x43d7efc8 lustre_msg_set_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44036eda RQF_MDS_GET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x440c2a71 RMF_FIEMAP_VAL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4481591d RQF_OST_SET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x44c4bdf2 ptlrpcd_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45333105 ptlrpc_abort_inflight +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4558c000 ptlrpc_pinger_add_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45d05893 lustre_swab_lustre_capa +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45e30cea lustre_swab_ldlm_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x45e34ee5 ptlrpc_wake_delayed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x46a7c2dc client_destroy_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4702a5aa ptlrpc_hpreq_handler +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4707545e sptlrpc_gc_del_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47f2f2ff ldlm_reprocess_all_ns +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x47f5e903 RMF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x48814c9f lustre_swab_ost_lvb_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x48c350bf client_obd_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x48c7ae3a ldlm_cli_cancel_list +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x498c03c5 lustre_msg_set_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a5a2416 RMF_DLM_REQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4a6e23a6 ldlm_prep_elc_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4b09ce4b lustre_swab_mdt_rec_reint +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4d7580d0 lustre_swab_hsm_user_item +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e1706e5 lustre_msg_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e65e412 ptlrpc_disconnect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4e696b96 ptlrpcd_queue_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4eb03a6f ptlrpcd_destroy_work +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f09ea6c ptlrpc_req_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f360121 req_capsule_field_present +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x4f766c3b lustre_swab_generic_32s +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50178a4e sptlrpc_gc_add_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50443f6a ptlrpc_init_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x505d2638 ldlm_extent_shift_kms +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x50dd74f8 RMF_STRING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x51f8c1dd ldlm_lock_allow_match_locked +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x52c62150 RMF_RCS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53342340 sptlrpc_lprocfs_cliobd_attach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53411557 RMF_DLM_REP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x53a4a004 bulk_sec_desc_unpack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x54ae5021 ldlm_lock_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x555eb7fe RQF_MDS_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5753d4ca sptlrpc_gc_add_sec +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x57c3825d llog_initiator_connect +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5800254b ptlrpc_set_import_active +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x588035b4 RMF_UPDATE_REPLY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x595ab175 lustre_swab_obd_quotactl +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x596582bf RMF_GETINFO_VALLEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x59ca398b ptlrpc_add_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a057439 interval_search +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5a7dc1d5 sptlrpc_cli_ctx_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5af0d02a ldlm_lock_dump_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5b6ba895 lustre_packed_msg_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5c6a3a83 RQF_SEQ_QUERY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5caae213 ptlrpc_next_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e0b19b1 RMF_CLUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e2b7558 lustre_msghdr_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e6f435d RQF_OST_BRW_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e80f899 RQF_LLOG_ORIGIN_HANDLE_READ_HEADER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5e8ad7a9 ptlrpc_fail_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ec3284d RQF_MDS_HSM_CT_UNREGISTER +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5ef831ee lustre_msg_get_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f00e18e req_capsule_other_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5f96ccdd ptlrpc_connection_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x5fef6e94 ldlm_lock_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x603674a3 ptlrpc_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6042bc15 RQF_MDS_REINT_RENAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x604e2505 RMF_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x607ec932 lustre_msg_set_buflen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x60cd26ad RQF_MDS_REINT_CREATE_SYM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61646e1b RQF_MDS_SWAP_LAYOUTS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x61896680 ptlrpc_stop_all_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x618ad203 RQF_OST_GET_INFO_LAST_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62192cf8 dump_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x62aaae3f RQF_MDS_HSM_REQUEST +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x631030da req_capsule_get_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6315dd4c RMF_LLOGD_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6352a62d ldlm_get_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x63a59856 req_capsule_filled_sizes +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x640cd5b8 ptl_send_rpc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6468c16e ldlm_resource_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6474db8c ldlm_resource_unlink_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x647b6e48 lustre_swab_ldlm_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x64d3f496 ptlrpc_request_set_replen +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x653723dc RMF_LOGCOOKIES +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x65535353 __ldlm_handle2lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x657b00b7 ptlrpc_init_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x67954cdf ptlrpc_resend_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x67f81ae3 ldlm_resource_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x683243bf ptlrpc_set_next_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x685eeaba RMF_DLM_GL_DESC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x686d1106 ptlrpc_restart_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68cb2541 interval_is_overlapped +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x68f49e5e ptlrpc_expired_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6912990a RQF_OST_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x696ba811 lustre_msg_get_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69c9f04d RQF_MDS_REINT_LINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x69fd3cff ptlrpc_recover_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a3785c9 RMF_EADATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6a47eb38 req_capsule_has_field +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6b1405ff ldlm_lock_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d72828c sptlrpc_conf_log_update_end +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6d7931cc RQF_UPDATE_OBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6db19471 ldlm_lock_allow_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ed20499 ldlm_revalidate_lock_handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6efa82b0 RQF_MGS_TARGET_REG +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6f6dc736 lustre_swab_mdt_remote_perm +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6fb92092 sptlrpc_flavor2name_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x6ff9daf9 lustre_pack_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x70030604 ldlm_pool_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x703538e4 lustre_swab_hsm_current_action +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x70b4f474 ldlm_namespace_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7129e876 ptlrpc_set_add_new_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x72331851 ptlrpc_connect_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x723d43b6 sptlrpc_rule_set_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x725a892c RQF_MDS_REINT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7287b6c0 ldlm_pool_get_lvf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x735f98ef ptlrpc_request_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x73d0e3af sptlrpc_unregister_policy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x73e4e5c9 ptlrpc_add_rqs_to_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x740c24fa ldlm_lock_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74840056 lustre_msg_set_status +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x74f8d625 __ptlrpc_free_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x757e918c client_disconnect_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75a2c40d ldlm_put_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75d28d9a sptlrpc_cli_unwrap_bulk_read +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x75df6e5a _ldlm_lock_debug +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x760ba54e ptlrpc_retain_replayable_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7676d739 ldlm_blocking_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76a39e38 ptlrpc_prep_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x76b728e5 lustre_swab_update_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77571cc6 lustre_swab_ost_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77840c82 sptlrpc_rule_set_choose +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x77f4ac8b ldlm_flock_completion_ast +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x78bf9136 lustre_swab_ldlm_lock_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a57aa5a llog_origin_handle_close +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7a832f10 RMF_CONN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b158da4 lustre_swab_ldlm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7b2c2537 ldlm_destroy_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7bbf8001 RMF_MDT_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7c4c6107 RQF_LDLM_CONVERT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d1ecd7f RQF_LDLM_INTENT_LAYOUT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7d41a8b9 RQF_QUOTA_DQACQ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dbe6c3c ptlrpc_replay_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dc0e7cd RMF_QUOTA_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7dfb3c18 lustre_msg_clear_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7ea14698 ldlm_pool_del +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4925d8 interval_expand +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f4c99b1 ldlm_expired_completion_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f5a1cc7 lustre_msg_set_type +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x7f6d2357 lustre_msg_is_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80a9e8c3 lustre_msg_get_last_xid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80d476a6 ptlrpc_at_set_req_timeout +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x80ecb4e3 RMF_MDS_HSM_CURRENT_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x817d7f1f lustre_msg_add_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x81cba735 ldlm_cli_update_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x82545ebe ptlrpc_req_set_repsize +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x826d3c4f RQF_LDLM_GL_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8304bc6e ldlm_cli_cancel_unused_resource +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x837efb00 RMF_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8403ad05 req_capsule_server_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x84a963e3 llog_client_ops +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85135801 RMF_DLM_LVB +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x855d95d2 sptlrpc_import_sec_ref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8598c224 ldlm_cli_cancel_unused +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85a9e0d8 RMF_FID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x85eecf67 sptlrpc_get_hash_alg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x863db6eb RMF_HSM_USER_STATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x864ca237 __ptlrpc_prep_bulk_page +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x86fa8c3b ldlm_cli_convert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8760beaf lustre_swab_ldlm_policy_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x876c2551 RMF_GETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87bf7b3c sptlrpc_get_next_secid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x87ff2afb ldlm_pool_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8872f3d2 RMF_SETINFO_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x888c096c ptlrpc_set_add_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x88fc9981 ptlrpc_queue_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x88fff52d RMF_CAPA2 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x89f9edf7 RQF_MDS_REINT_SETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a1ea476 lustre_swab_hsm_state_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a257736 RQF_MDS_HSM_STATE_GET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8a4345b1 ptlrpc_set_add_cb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ac440fa ptlrpc_uuid_to_connection +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ad7d5ff ptlrpc_request_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8b854254 lustre_swab_mgs_config_res +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8be3f240 ptlrpc_register_service +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8c11e23a sptlrpc_import_flush_all_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cb71d4b RQF_MDS_REINT_CREATE_SLAVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8cdbcc3f ptlrpc_service_health_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8d77ea75 lustre_msg_set_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8da3fca7 lustre_msg_add_version +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8e9abe4d RMF_GENERIC_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8ec4c567 lustre_free_reply_state +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8f0aceac RQF_MDS_HSM_ACTION +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x8fec0451 lustre_msg_get_limit +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x90857276 ptlrpc_request_bufs_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x919c4ce3 RMF_OBD_ID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x91cf58d3 RQF_MDS_PIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x928f47a8 req_capsule_client_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x93624cf8 ptlrpc_mark_interrupted +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x937b1ee0 lustre_swab_mdt_ioepoch +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x943a0e3a sec2target_str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9553c633 RQF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x95d08f0c lustre_swab_mgs_target_info +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9660ace0 RMF_FLD_MDFLD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x967bfd52 RQF_OBD_PING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x97640664 ptlrpc_cleanup_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9798f2f1 RQF_MDS_GETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x980fcfdc ptlrpc_connection_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x99e958fa ptlrpc_check_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a258886 RQF_MDS_GETSTATUS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a6f2f6d lustre_msg_set_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9a99e891 ptlrpc_init_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b5a572c target_print_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9b88f6ce RMF_NIOBUF_REMOTE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9bb5198b RQF_MDS_CLOSE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9bffa647 do_set_info_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9c17d0a6 ptlrpc_unpack_req_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9d7ea314 sptlrpc_pack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9dd7b8a3 ldlm_replay_locks +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0x9fb088f1 lustre_swab_lov_mds_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa10f0d3d RMF_UPDATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa163f4c3 dump_rniobuf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa2244636 RQF_MDS_GETATTR_NAME +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa22c0086 ldlm_error2errno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa3d2a6ee RMF_CAPA1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa47787ef RMF_PTLRPC_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4a2d089 RQF_OST_PUNCH +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4b806c0 lprocfs_wr_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa4bea5ef lustre_swab_lmv_user_md +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5458dad ldlm_lock_decref_and_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5880075 ldlm_errno2error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa5db462e ldlm_namespace_foreach +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa66888dd ptlrpcd_add_rqset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa6c436ca RQF_MDS_WRITEPAGE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7005a3f ldlm_init_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7adb230 ptlrpc_start_threads +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7d55cc3 RQF_MDS_REINT_CREATE_RMT_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7e360b1 RMF_OBD_IOOBJ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa7ec567d RMF_CONNECT_DATA +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9704f80 lustre_msg_get_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9c4658e lustre_swab_lov_user_md_v3 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xa9edf09d RQF_OBD_IDX_READ +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xac03d5f8 sptlrpc_cli_wrap_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaddc3979 lustre_swab_lustre_capa_key +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xae0d8da8 ldlm_register_intent +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf4e9658 RQF_MDS_SYNC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf50a0d6 RMF_HSM_STATE_SET +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xaf9ca4eb ldlm_pool_set_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb056fdad sptlrpc_svc_ctx_invalidate +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0751fa4 RQF_LLOG_ORIGIN_HANDLE_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb0d3095a req_capsule_server_swab_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb1b43d8a dump_rcs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb26be39a ldlm_cli_enqueue +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb27c2374 lustre_msg_get_jobid +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb291473d lustre_msg_early_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb2b1817d lustre_swab_ost_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb43dd2c0 client_import_add_conn +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb4a7ecf3 lustre_msg_add_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb512ebc2 sptlrpc_parse_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb523337d ldlm_lock_downgrade +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb5562e89 sptlrpc_sec_destroy +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb61cb95a RQF_MDS_GETXATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb622adc0 ldlm_namespace_cleanup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb68476df interval_erase +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb6aafd03 RQF_MDS_DONE_WRITING +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb715dbca ldlm_namespace_new +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7b38189 RMF_MDT_MD +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7ed8881 sptlrpc_target_export_check +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7ef45dc ldlm_cancel_resource_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb7fa3cc8 RMF_LLOG_LOG_HDR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb903634e RQF_OST_CONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xb9b631cf lustre_swab_mgs_config_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbaa76097 lustre_msg_string +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbc1370dc lustre_shrink_msg +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbc92b72a ldlm_cli_cancel_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd1b40ae ptlrpcd_wake +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbd83bc44 RQF_OBD_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbe47bc7e ping_evictor_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf946698 sptlrpc_sec_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbf98b86f RQF_MDS_QUOTACHECK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xbffd4313 RQF_OST_BRW_WRITE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc06c4670 lustre_msg_get_versions +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0867da7 RMF_REC_REINT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0b947f4 ldlm_namespace_get +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc0cdf55e RMF_MGS_SEND_PARAM +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc1b4782a ldlm_lock2handle +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc1c7e244 ldlm_completion_ast_async +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc1ed015f ldlm_pool_get_clv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2986d28 lustre_swab_ldlm_res_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2b1af57 RQF_MGS_SET_INFO +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc2be922a RMF_SYMTGT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc4a1799a req_capsule_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc559a634 RMF_LAYOUT_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc60a60e1 RQF_OST_STATFS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc694be4b RQF_LLOG_ORIGIN_HANDLE_PREV_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc763fabc sptlrpc_process_config +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc78a5464 ptlrpc_free_rq_pool +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc79b9c67 ldlm_pools_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7ca8257 RQF_MDS_REINT_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc7e47564 ptlrpc_interrupted_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xc8f586a9 ptlrpc_connection_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xca5a81ec ptlrpc_pinger_ir_down +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb16107d ptlrpc_set_wait +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2cc0cf lustre_swab_lquota_lvb +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb2ceaff sptlrpc_secflags2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcb72962e ptlrpc_send_error +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcc4d6201 ptlrpc_request_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcc577c5e ptlrpc_activate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xccc9d529 ptlrpc_register_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcdea9bbb ptlrpc_nrs_policy_register +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcdeddee7 ptlrpc_prep_bulk_imp +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce1a689b sptlrpc_enc_pool_add_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xce86066d lustre_msg_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcec513c9 RQF_MDS_UNPIN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xced015be sptlrpc_rule_set_free +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9963db lustre_msg_get_op_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xcf9aab6a RQF_MDS_DISCONNECT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd1728ec9 ptlrpc_req_finished_with_imp_lock +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2983334 lustre_swab_swap_layouts +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd2e0d4eb lustre_msg_get_opc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd30f5d3b lprocfs_wr_evict_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd3441eea llog_origin_handle_prev_block +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd3555991 ptlrpc_unregister_bulk +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd3dae408 ldlm_it2str +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd4619398 ldlm_lock_fail_match +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd46dcb92 ldlm_pool_add +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd537ded2 lustre_swab_obdo +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd58e2271 sptlrpc_target_sec_part +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd67a5d7b lustre_swab_update_reply_buf +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd68a9703 sptlrpc_cli_ctx_expire +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd68c8125 ldlm_cli_enqueue_local +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd69e0a27 RQF_MDS_IS_SUBDIR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd6c3ebfb RMF_FIEMAP_KEY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd7910326 lustre_swab_obd_statfs +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8b91b3e lustre_swab_lov_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd8f06300 RQF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xd9561861 RQF_LDLM_INTENT_OPEN +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xda2ac111 sptlrpc_proc_root +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb1fb0a2 RQF_MDS_REINT_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb9bba3c sptlrpc_target_update_exp_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdb9d5a6a lustre_swab_niobuf_remote +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdc459261 ptlrpc_lprocfs_brw +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdcf910b9 lustre_swab_ost_last_id +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd0ffb04 sptlrpc_flavor2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd30d7bf RMF_ACL +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdd8798a7 llog_origin_handle_cancel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xddc2cd3d sptlrpc_enc_pool_get_pages +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xddc40a85 lustre_msg_get_flags +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde12d36b RMF_MDS_HSM_ARCHIVE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xde555d70 sptlrpc_enc_pool_del_user +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdee87192 sptlrpc_conf_log_update_begin +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdf701ae7 lustre_swab_fid2path +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xdfa9b0c8 req_capsule_server_pack +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe036cca1 ldlm_pool_set_slv +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0cc694c RQF_LLOG_ORIGIN_HANDLE_NEXT_BLOCK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe0fda689 ptlrpc_lprocfs_register_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe1644048 ptlrpc_invalidate_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe40e0a50 lustre_msg_get_transno +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe57bd972 sptlrpc_current_user_desc_size +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe5e8169b lustre_errno_ntoh +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe643998e RQF_OST_SETATTR +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6ed8bcb ptlrpc_nrs_policy_unregister +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe6f0dc96 RQF_OST_CREATE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7062b5f RMF_U32 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7512278 ptlrpcd_addref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe7b3bb08 ldlm_init_flock_export +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe82c321e ldlm_resource_putref +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xe8c7dd9a ptlrpc_pinger_del_import +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabaa0b1 lustre_swab_mdt_body +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xeabac4fc sptlrpc_rule_set_merge +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xebb64e68 req_layout_fini +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec226f66 ping_evictor_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xec939a00 RQF_MDS_REINT_UNLINK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xecace5c1 RQF_OST_GET_INFO_GENERIC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xed1c10d6 ptlrpc_connection_put +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xedcb740d sptlrpc_name2flavor_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xedfea53e sptlrpc_req_replace_dead_ctx +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xee775093 target_pack_pool_reply +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xef1aeca9 RMF_FLD_OPC +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0241d6e lustre_swab_hsm_progress_kernel +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf0d52b5f ptlrpc_pinger_suppress_pings +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf11496a7 req_capsule_init_area +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf1300275 _sptlrpc_enlarge_msg_inplace +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf277c125 RQF_OST_GET_INFO_FIEMAP +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf27d49dc sptlrpc_target_choose_flavor +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf35f132b lustre_swab_ldlm_resource_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf373eeb7 req_capsule_init +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf3d44370 RQF_OST_DESTROY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf43540b9 lustre_swab_mgs_nidtbl_entry +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf45085e1 sptlrpc_conf_log_stop +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf4fc71df ptlrpc_buf_need_swab +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf55c033b RMF_MGS_CONFIG_BODY +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf584a16b sptlrpc_part2name +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf596e9ae sptlrpc_conf_log_start +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf607fc23 sptlrpc_flavor2name_base +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf617ab8a lustre_msg_get_conn_cnt +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf697b756 ldlm_dump_all_namespaces +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7282b03 ptlrpc_lprocfs_unregister_obd +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7408f84 lustre_swab_hsm_request +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7ba40c0 RMF_MDS_HSM_PROGRESS +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf7cce4e6 ldlm_lock2desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf85cb27e sptlrpc_parse_rule +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf870fed9 RQF_LDLM_GL_DESC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9051bd6 RQF_QC_CALLBACK +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf94e41e0 deuuidify +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf973aa93 lustre_swab_lov_user_md_v1 +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9ee11e2 lustre_msg_set_last_committed +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xf9f72dfc RMF_TGTUUID +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfa51688d interval_insert +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb444a98 ptlrpc_prep_fcset +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfb7e6902 sptlrpc_cli_ctx_wakeup +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfc2fa83f ptlrpc_del_timeout_client +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfce4a5af _debug_req +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd148bf8 RMF_LDLM_INTENT +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xfd4c0844 req_capsule_client_dump +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff02a0e9 ldlm_lock_set_data +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xff2b5341 ptlrpc_prep_set +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffc807e8 sptlrpc_unpack_user_desc +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffe29c3f RQF_LDLM_ENQUEUE +EXPORT_SYMBOL drivers/staging/lustre/lustre/ptlrpc/ptlrpc 0xffe3c2b2 ptlrpc_deactivate_import +EXPORT_SYMBOL drivers/staging/media/cxd2099/cxd2099 0x119708e3 cxd2099_attach +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x146d895d go7007_alloc +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x2aff65b6 go7007_snd_remove +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0x6ecba6c6 go7007_boot_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xa2d5bb9b go7007_parse_video_stream +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xadf3eec5 go7007_update_board +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xda2801bc go7007_register_encoder +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xdca5dea1 go7007_snd_init +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xe662f3d6 go7007_read_interrupt +EXPORT_SYMBOL drivers/staging/media/go7007/go7007 0xfab682f3 go7007_read_addr +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x06e690ec rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x08416624 rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0b0bd96c rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0f51bff1 rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1758c4b1 rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1ccdcf88 rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x239ef2f4 HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2904d6ae notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x2980fd6f rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x298797d7 rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x331dc00b rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x37dbbcc7 rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x4a5d557c Dot11d_Channelmap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x61324132 rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x6658f932 rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x68ad7fa6 rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x69fbb64e rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7c515304 rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7dcaf71f dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7fd6d533 rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x825d9d28 rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x83a327be free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x864c270a rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x879d3c1d rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x89ed30fc rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8febcd56 rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xab665dfa rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb2b6e563 RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb9eb6fd0 rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbe1420f2 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbe586152 rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbe5f0bea rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc035870f rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc0cd6146 rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc75f3f0f rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xce730b66 rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xce7461de rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd448e8e9 rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd6de3631 rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd9a9582c rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xdf78f620 rtllib_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe112bd9c alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe18208b5 rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe545d47d rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf23bc810 rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf23ca2a8 rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf3753a93 rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf5f8187e rtllib_wpa_supplicant_ioctl +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf6a7fcdf rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xfb8ed146 rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xfccbf256 rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xfd2c4d8a rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x02986657 ieee80211_wx_get_name_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x0aa68d02 ieee80211_wx_set_mlme_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1084b12d ieee80211_wx_get_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x17db61a8 ieee80211_start_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1f476563 ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x204a5718 SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x213e88c7 ieee80211_wx_get_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x22a5eb00 ieee80211_wx_get_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x22c9964c ieee80211_wx_set_gen_ie_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2415cd52 ieee80211_wx_set_power_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2db8e23b ieee80211_txb_free_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2df02035 ieee80211_wx_get_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2e921e96 ieee80211_wx_get_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3060693f ieee80211_wx_set_encode_ext_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x316fe7c7 ieee80211_get_beacon_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x349e4613 ieee80211_wx_get_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x382713a8 ieee80211_wx_set_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3a033fe7 ieee80211_wx_get_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3e213977 ieee80211_ps_tx_ack_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3f4f87c2 ieee80211_wx_set_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x44ec2603 ieee80211_softmac_xmit_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x5b011454 ieee80211_rx_mgt_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6a52fd7c ieee80211_wx_set_auth_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6fd61c08 Dot11d_UpdateCountryIe +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x716ba1b8 ToLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x72bd5b2b ieee80211_wx_set_rawtx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x7449391c notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x784357af HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x82c4dea0 ieee80211_start_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x884cf2d9 ieee80211_wx_set_wap_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9131a830 ieee80211_reset_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9188b886 ieee80211_wx_get_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x92ce0a71 ieee80211_wx_get_rts_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x954bb224 ieee80211_stop_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x999bf21a ieee80211_softmac_scan_syncro_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa519c4f9 ieee80211_wx_set_essid_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xabce1674 ieee80211_stop_send_beacons_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb13cc81a Dot11d_Init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb3f9703b Dot11d_Reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb899e0f6 IsLegalChannel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc0ea04ab ieee80211_wx_get_scan_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc1f7bae7 ieee80211_is_shortslot_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc370a43e ieee80211_wlan_frequencies_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc52503f1 ieee80211_disassociate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc5a6bc8e ieee80211_wx_set_rate_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd1379dff ieee80211_wx_set_freq_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd81d0461 ieee80211_softmac_stop_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xde9b0bae ieee80211_wx_set_mode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe218a8f2 ieee80211_is_54g_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe3ed4a6c DOT11D_ScanComplete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe4bcb0b1 ieee80211_softmac_start_protocol_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xec4814bd ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xed1b8387 ieee80211_rx_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xef8d5551 ieee80211_send_probe_requests_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf410bbc2 ieee80211_wx_set_encode_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfa006c7d ieee80211_wpa_supplicant_ioctl_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfe63a4c7 DOT11D_GetMaxTxPwrInDbm +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0017f35f set_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x00ea0cde set_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x06d6f244 get_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x09df8f3e set_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x0a8d32c3 get_bypass_slave_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1936264c set_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x1d2eb8ca get_tap_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x203af1f7 reset_bypass_wd_timer_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2070f14a set_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x27b990ef get_bypass_info_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2ba7cd35 get_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2c3f1c17 get_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2f59e636 get_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x2fdb893a get_tap_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x361cf40a get_dis_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x45ca99c3 set_wd_autoreset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x550a188c set_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x5cb59e92 get_bypass_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x66b60122 set_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x675208c0 set_tx_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x692623f2 get_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x75131ec6 set_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x76c0b7d0 set_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e872825 get_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x7e8d701e get_wd_expire_time_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x86388b07 get_bp_disc_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x93ae4648 get_wd_set_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x95e42b0d is_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9df5f807 set_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0x9e21f42e set_std_nic_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xa689a214 get_bypass_wd_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xae117788 get_bp_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xc368d30d get_dis_tap_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xccab5de0 get_bypass_caps_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd3e034b3 get_bypass_pwoff_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9c1ccfc get_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xd9d38d97 set_wd_exp_mode_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xe640f06e set_bp_disc_pwup_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xecdaa456 set_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xedcd3c1b get_bypass_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf06d67bf set_bp_dis_disc_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf57c1671 get_bp_hw_reset_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf693c3a1 bp_if_scan_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xf8237882 get_bypass_change_sd +EXPORT_SYMBOL drivers/staging/silicom/bpctl_mod 0xfa59240d get_tpl_sd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05af3c4c set_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x05b08a42 set_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0b0d5ce0 get_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x0fc2e83c reset_bypass_wd_timer +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x123a8133 get_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x157ec89c get_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2440f05a get_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2b01d1d4 set_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2c27a2f0 set_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2da97f4b is_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x2e86c67b get_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37416370 get_bp_hw_reset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x37bdab27 get_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x3da96a18 get_bypass_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4025805e get_bypass_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4940a0cc get_bypass_info +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x4d21ff51 get_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5147360c get_bp_disc_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x515d4df1 get_bypass_slave +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5560267e set_wd_autoreset +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x5be44d44 set_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6653590c get_wd_exp_mode +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x6bda14ec get_bp_dis_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x72c618ae set_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x76d47e6f set_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x794e3815 set_tap_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x7c6cbc16 get_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x84a263dc set_tx +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x8a16f22c set_tpl +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x946ff795 get_wd_set_caps +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x94f6aff2 get_bypass_wd +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0x9d1ecf73 set_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xb1385629 set_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xbff68c45 set_bypass_pwup +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xc871c561 get_dis_bypass +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xcee528df set_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd202dd85 get_bypass_pwoff +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xd787f151 get_wd_expire_time +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xdb6a39d2 get_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xebd25ae5 get_std_nic +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf1e9f8c1 set_bp_disc +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf224abd9 get_tap_change +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf5a591b2 set_dis_tap +EXPORT_SYMBOL drivers/staging/silicom/bypasslib/bypass 0xf643fd4c get_bp_disc_pwup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0x47e3672c xillybus_init_endpoint +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xb00564e9 xillybus_do_cleanup +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xb2dd0e7b xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/staging/xillybus/xillybus_core 0xd077daa4 xillybus_endpoint_remove +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1183e26c iscsit_set_unsoliticed_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1bf47eb4 iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x29a5990e iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2b25245e iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x30355318 iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x32ddf9fd iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3c8ab425 iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3e0a2abc iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x44038fd6 iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x45c7a341 iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4d5f85b1 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6456366e iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6a970ee7 iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x767e9970 iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7c93a62e iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7d117be6 iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x80b6496c iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x85c31a42 iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x87cd92a5 iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8c7ac05b iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8ffd0e29 iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x971cc867 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa5768abe iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc1c043aa iscsit_handle_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd368352f iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xdc1f1f3e iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf5e2a1a8 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf7feb120 iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x02de3b18 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x047f7142 target_put_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x07144c45 transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0x123906dd target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x1255d06c sas_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x1685549d target_fabric_configfs_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x1a1fdc24 transport_init_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x1d1dac85 target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x1fa0200c target_fabric_configfs_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x200e02a8 target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x242ce0a7 spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0x2b1a7d25 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0x2b5577c3 transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0x309701fe core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x3250a166 transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x33ff872a target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0x344f39a3 transport_check_aborted_status +EXPORT_SYMBOL drivers/target/target_core_mod 0x36577b49 transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0x38309284 transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x3bba7920 target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0x3e3e161d target_fabric_configfs_free +EXPORT_SYMBOL drivers/target/target_core_mod 0x42cdece5 transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x45c9eb12 transport_subsystem_release +EXPORT_SYMBOL drivers/target/target_core_mod 0x469673cd core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x4a04c049 transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x4ca72914 fc_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x53581313 spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x5368767e transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x5b2052c2 fc_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x5c79deb6 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0x62307cb0 target_get_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x62b837af core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x64703d99 sbc_execute_unmap +EXPORT_SYMBOL drivers/target/target_core_mod 0x6bc16701 transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x6c4907e8 transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x6c77ceab sas_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x6f3e71fa spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0x6fdc1958 sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x70268741 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x7414aee7 spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x76f965f5 __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x7b1343f5 transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x7dbada9d transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x815afd48 target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x850c1e9a transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x85aa880c transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x87566158 transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x89f97a6b target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x8bc57e86 sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0x8c91f6b4 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0x8efd0149 fc_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x9a503aba sas_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x9bba34fa iscsi_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xa44123cd core_tpg_add_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xacee0b99 iscsi_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0xbbd07291 target_fabric_configfs_init +EXPORT_SYMBOL drivers/target/target_core_mod 0xbc0ff475 target_setup_cmd_from_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xbd6c7ef0 transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0xbddaa886 target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0xbecae6eb sas_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xc0cb78a8 core_tpg_del_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0xc2174eec transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xc79ff462 iscsi_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0xc7ee97ec core_tpg_clear_object_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0xd9d7974a transport_subsystem_register +EXPORT_SYMBOL drivers/target/target_core_mod 0xdad8679f core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xdf2af42c iscsi_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xe1c34729 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0xf01621c7 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf1fcfa68 sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0xf7bb772f fc_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf7dc4048 core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0xf8fae974 target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xfeb3c163 core_tpg_register +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0xf500f610 usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0xb64badfd unregister_gadget_item +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x000f1653 gether_setup_name +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x07a4832b gether_set_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x08ac3935 gether_connect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x289030ef gether_set_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x45e608f8 gether_get_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x625d990a gether_get_ifname +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x6a77095f gether_get_host_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x7133ee9b gether_get_host_addr_cdc +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x7252562e gether_set_dev_addr +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x764efd50 gether_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x78e79ae9 gether_setup_name_default +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x85847dad gether_get_qmult +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0x924f1133 gether_get_host_addr_u8 +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xd67b27c3 gether_register_netdev +EXPORT_SYMBOL drivers/usb/gadget/u_ether 0xe5cccf90 gether_set_gadget +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3a6d4f22 rndis_free_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x3ca38e3a rndis_signal_connect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x4ca90996 rndis_signal_disconnect +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x5d22b406 rndis_register +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x785d494b rndis_msg_parser +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x840dd143 rndis_deregister +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x8e5d9732 rndis_add_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x988ad2a2 rndis_set_param_vendor +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0x9acf72e4 rndis_set_param_medium +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xa90054ee rndis_uninit +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xac23ca27 rndis_rm_hdr +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xb971ebca rndis_get_next_response +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xc272e845 rndis_set_param_dev +EXPORT_SYMBOL drivers/usb/gadget/u_rndis 0xd2fe47b1 rndis_set_host_mac +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x079dd8bb fsg_store_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x116243a9 fsg_show_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x116fbe47 fsg_store_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1710b539 fsg_fs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x1b1cc3af store_cdrom_address +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x24427384 fsg_show_removable +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x288f0fc6 fsg_lun_fsync_sub +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x2933ee1d fsg_ss_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x2fbfa832 fsg_store_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x398778e1 fsg_ss_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x3b9f956b fsg_lun_close +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x4026d81e fsg_store_file +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x423845e4 fsg_ss_bulk_in_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x4b76c766 fsg_store_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x56344daf fsg_hs_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x59b77c30 fsg_lun_open +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x5ca35c68 fsg_show_ro +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0x95cffb3e fsg_hs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5cae92f fsg_ss_bulk_out_comp_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xa5f99b69 fsg_fs_function +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb52ba28a fsg_intf_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xb54d0d95 fsg_fs_bulk_in_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xc01459d5 fsg_show_cdrom +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xda06e21f fsg_show_nofua +EXPORT_SYMBOL drivers/usb/gadget/usb_f_mass_storage 0xf4efc0c8 fsg_ss_bulk_out_desc +EXPORT_SYMBOL drivers/usb/gadget/usb_f_rndis 0xe03e3d7d rndis_borrow_net +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0x786ae36c sl811h_driver +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xa64a4cea usb_nop_xceiv_unregister +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xd0e43207 usb_nop_xceiv_register +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x02f3c1ae usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x33b72257 usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x3f660450 usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x59bb4e91 usb_wwan_ioctl +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x76e77a04 usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x93cb2b16 usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xba22b589 usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xc433cb52 usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xcf042ea9 usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xeb3be8eb usb_wwan_set_termios +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xf71aae9f usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xf75ab1b7 usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xf9a26c66 usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x197ef6eb usb_serial_resume +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x85697e74 usb_serial_suspend +EXPORT_SYMBOL drivers/vhost/vringh 0x0dda8c5a vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x1f063017 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x2eae4a2a vringh_getdesc_user +EXPORT_SYMBOL drivers/vhost/vringh 0x36dfce73 vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3b304ebb vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3eaf442a vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x3fa42e4f vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x4311cd91 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5dafbd4e vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x66af098b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x6d0e7948 vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x76bd9a5d vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x97fa07e9 vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xaf8e4a0e vringh_notify_disable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xafb47dae vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc884d704 vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc8bee0a4 vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xda4ea4cc vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0xde804bb9 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/video/backlight/generic_bl 0x366d19ef genericbl_limit_intensity +EXPORT_SYMBOL drivers/video/backlight/lcd 0x3cf9a84e lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0x695cd7d0 lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0x8412f49e devm_lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xc42edcb2 devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/cyber2000fb 0x0cc3ede5 cyber2000fb_detach +EXPORT_SYMBOL drivers/video/cyber2000fb 0x534b6f18 cyber2000fb_disable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0x80720e99 cyber2000fb_attach +EXPORT_SYMBOL drivers/video/cyber2000fb 0xb39f68d1 cyber2000fb_enable_extregs +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x5abc9873 matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xc81cbe5b g450_mnp2f +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xfbcf0620 matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x0e26f996 matrox_mystique +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x3a575a25 DAC1064_global_restore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xd6e76e8b DAC1064_global_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xf5668f99 matrox_G100 +EXPORT_SYMBOL drivers/video/matrox/matroxfb_Ti3026 0xb0a64743 matrox_millennium +EXPORT_SYMBOL drivers/video/matrox/matroxfb_accel 0x18ab5a1d matrox_cfbX_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x682c0ea5 matroxfb_register_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xa47f3fb8 matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xc0c54abb matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0xec7660b2 matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x2438729f matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x7a73d721 matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x3e3d460f matroxfb_read_pins +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x7ca786c9 matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x879da29e matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xad54fcc7 matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xb440f30f matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/mb862xx/mb862xxfb 0x91eb5478 mb862xxfb_init_accel +EXPORT_SYMBOL drivers/video/output 0x22dadcb0 video_output_register +EXPORT_SYMBOL drivers/video/output 0xff478bd5 video_output_unregister +EXPORT_SYMBOL drivers/video/sis/sisfb 0x3037658e sis_malloc +EXPORT_SYMBOL drivers/video/sis/sisfb 0x454a3cf0 sis_free +EXPORT_SYMBOL drivers/video/svgalib 0x041aabfd svga_tilecursor +EXPORT_SYMBOL drivers/video/svgalib 0x1617bd5a svga_get_caps +EXPORT_SYMBOL drivers/video/svgalib 0x17f3f471 svga_set_default_seq_regs +EXPORT_SYMBOL drivers/video/svgalib 0x1be6dc30 svga_set_textmode_vga_regs +EXPORT_SYMBOL drivers/video/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/svgalib 0x5cfdcb6b svga_tileblit +EXPORT_SYMBOL drivers/video/svgalib 0x6e4adb1e svga_check_timings +EXPORT_SYMBOL drivers/video/svgalib 0x809a0bc6 svga_tilefill +EXPORT_SYMBOL drivers/video/svgalib 0x80f24d95 svga_wcrt_multi +EXPORT_SYMBOL drivers/video/svgalib 0x8de63fb4 svga_set_timings +EXPORT_SYMBOL drivers/video/svgalib 0x94109cd6 svga_get_tilemax +EXPORT_SYMBOL drivers/video/svgalib 0xd1429fca svga_wseq_multi +EXPORT_SYMBOL drivers/video/svgalib 0xd22ca511 svga_set_default_atc_regs +EXPORT_SYMBOL drivers/video/svgalib 0xe28d2a49 svga_set_default_gfx_regs +EXPORT_SYMBOL drivers/video/svgalib 0xe4c3ca32 svga_settile +EXPORT_SYMBOL drivers/video/svgalib 0xef774f5d svga_compute_pll +EXPORT_SYMBOL drivers/video/svgalib 0xf2db5956 svga_match_format +EXPORT_SYMBOL drivers/video/svgalib 0xfbae0bad svga_tilecopy +EXPORT_SYMBOL drivers/video/vgastate 0x686de290 restore_vga +EXPORT_SYMBOL drivers/video/vgastate 0xe7a2620e save_vga +EXPORT_SYMBOL drivers/vme/vme 0x00d7e722 vme_lm_count +EXPORT_SYMBOL drivers/vme/vme 0x072f901c vme_master_rmw +EXPORT_SYMBOL drivers/vme/vme 0x08057db9 vme_dma_list_free +EXPORT_SYMBOL drivers/vme/vme 0x0c6bdc3f vme_master_read +EXPORT_SYMBOL drivers/vme/vme 0x0ec5babe vme_dma_free +EXPORT_SYMBOL drivers/vme/vme 0x19000661 vme_irq_generate +EXPORT_SYMBOL drivers/vme/vme 0x20df5a3d vme_dma_pci_attribute +EXPORT_SYMBOL drivers/vme/vme 0x3e95083c vme_slave_get +EXPORT_SYMBOL drivers/vme/vme 0x46649cd1 vme_lm_set +EXPORT_SYMBOL drivers/vme/vme 0x48b99a13 vme_lm_free +EXPORT_SYMBOL drivers/vme/vme 0x49db4548 vme_unregister_bridge +EXPORT_SYMBOL drivers/vme/vme 0x4b54734c vme_register_driver +EXPORT_SYMBOL drivers/vme/vme 0x4b7e3067 vme_irq_handler +EXPORT_SYMBOL drivers/vme/vme 0x4baf35a7 vme_master_get +EXPORT_SYMBOL drivers/vme/vme 0x52983a4f vme_master_write +EXPORT_SYMBOL drivers/vme/vme 0x535c8308 vme_dma_pattern_attribute +EXPORT_SYMBOL drivers/vme/vme 0x5aff4177 vme_lm_get +EXPORT_SYMBOL drivers/vme/vme 0x685e6f7e vme_unregister_driver +EXPORT_SYMBOL drivers/vme/vme 0x6b292d3e vme_new_dma_list +EXPORT_SYMBOL drivers/vme/vme 0x79590d0b vme_irq_free +EXPORT_SYMBOL drivers/vme/vme 0x79a33f85 vme_get_size +EXPORT_SYMBOL drivers/vme/vme 0x7cf35220 vme_master_free +EXPORT_SYMBOL drivers/vme/vme 0x8712653d vme_register_bridge +EXPORT_SYMBOL drivers/vme/vme 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL drivers/vme/vme 0x949aa391 vme_bus_type +EXPORT_SYMBOL drivers/vme/vme 0x9aeb07e8 vme_lm_attach +EXPORT_SYMBOL drivers/vme/vme 0xa2a335bd vme_alloc_consistent +EXPORT_SYMBOL drivers/vme/vme 0xa31bdf07 vme_master_set +EXPORT_SYMBOL drivers/vme/vme 0xa6ccff6d vme_slot_get +EXPORT_SYMBOL drivers/vme/vme 0xca5ee09a vme_free_consistent +EXPORT_SYMBOL drivers/vme/vme 0xd359d33e vme_slave_request +EXPORT_SYMBOL drivers/vme/vme 0xd91f9df0 vme_irq_request +EXPORT_SYMBOL drivers/vme/vme 0xda794a6b vme_lm_request +EXPORT_SYMBOL drivers/vme/vme 0xdff905e5 vme_slave_free +EXPORT_SYMBOL drivers/vme/vme 0xefd1624a vme_dma_free_attribute +EXPORT_SYMBOL drivers/vme/vme 0xf244830c vme_master_request +EXPORT_SYMBOL drivers/vme/vme 0xf380ee1b vme_dma_request +EXPORT_SYMBOL drivers/vme/vme 0xf5a10e25 vme_slave_set +EXPORT_SYMBOL drivers/vme/vme 0xf6d1d4a8 vme_dma_list_exec +EXPORT_SYMBOL drivers/vme/vme 0xf8879b44 vme_dma_list_add +EXPORT_SYMBOL drivers/vme/vme 0xfacd8e72 vme_dma_vme_attribute +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x08ec032a w1_ds2760_recall_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xa75b6a54 w1_ds2760_store_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xabb25f1c w1_ds2760_write +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xbdea783a w1_ds2760_read +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x2955a1b3 w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xa233da3e w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x37095c1a w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0xa5afdef2 w1_ds2781_io +EXPORT_SYMBOL drivers/w1/wire 0x20f98f7a w1_unregister_family +EXPORT_SYMBOL drivers/w1/wire 0x46a023f7 w1_remove_master_device +EXPORT_SYMBOL drivers/w1/wire 0x5ea15386 w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0x734da825 w1_register_family +EXPORT_SYMBOL fs/btrfs/btrfs 0x27476846 ulist_reinit +EXPORT_SYMBOL fs/btrfs/btrfs 0x41e6a9d2 ulist_init +EXPORT_SYMBOL fs/btrfs/btrfs 0x7e2ee765 ulist_free +EXPORT_SYMBOL fs/btrfs/btrfs 0xa2eec2e8 ulist_fini +EXPORT_SYMBOL fs/btrfs/btrfs 0xb1320bc8 ulist_add +EXPORT_SYMBOL fs/btrfs/btrfs 0xb42289d2 ulist_alloc +EXPORT_SYMBOL fs/btrfs/btrfs 0xc2c745db ulist_next +EXPORT_SYMBOL fs/configfs/configfs 0x213972c9 config_item_init +EXPORT_SYMBOL fs/configfs/configfs 0x30ebca8c config_item_put +EXPORT_SYMBOL fs/configfs/configfs 0x3a222fc5 config_group_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0x44c44325 configfs_register_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0x6c98c221 config_group_init +EXPORT_SYMBOL fs/configfs/configfs 0x9d54e70f configfs_undepend_item +EXPORT_SYMBOL fs/configfs/configfs 0xbc3a907f config_item_set_name +EXPORT_SYMBOL fs/configfs/configfs 0xdb09af2a config_item_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0xec8a632c config_group_find_item +EXPORT_SYMBOL fs/configfs/configfs 0xed06a25f config_item_get +EXPORT_SYMBOL fs/configfs/configfs 0xed98dca2 configfs_unregister_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0xfb42605d configfs_depend_item +EXPORT_SYMBOL fs/exofs/libore 0x04fe2f18 ore_read +EXPORT_SYMBOL fs/exofs/libore 0x1fcffe13 ore_write +EXPORT_SYMBOL fs/exofs/libore 0x2799c55e ore_remove +EXPORT_SYMBOL fs/exofs/libore 0x28806871 ore_verify_layout +EXPORT_SYMBOL fs/exofs/libore 0x2a922043 ore_get_rw_state +EXPORT_SYMBOL fs/exofs/libore 0x4527e170 ore_calc_stripe_info +EXPORT_SYMBOL fs/exofs/libore 0x4655d787 ore_put_io_state +EXPORT_SYMBOL fs/exofs/libore 0xa3d2a634 g_attr_logical_length +EXPORT_SYMBOL fs/exofs/libore 0xb0cda8d2 ore_create +EXPORT_SYMBOL fs/exofs/libore 0xb2de0f89 ore_check_io +EXPORT_SYMBOL fs/exofs/libore 0xc93121d8 ore_get_io_state +EXPORT_SYMBOL fs/exofs/libore 0xfe635c43 extract_attr_from_ios +EXPORT_SYMBOL fs/exofs/libore 0xfeaf9f8f ore_truncate +EXPORT_SYMBOL fs/fscache/fscache 0x07633b8c __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x1ee6266e fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0x244d0237 fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0x2509fedc fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0x29c63341 fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0x3509e651 __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0x3cc9162c __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0x503af66d fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0x51bdbe68 fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x528c967d __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0x569ecfaa __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x585fa921 __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x5b6481e6 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x650d8c21 fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0x669e5e6c fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0x6aed0612 __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x72453d95 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x7a60163d fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0x819b7426 __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0x8b0b94ed __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x9476eb3b __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x9981b068 __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0xa085472d fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0xa7f4ccb3 __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0xa8c709d3 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0xac3da8ec __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xb1e06e08 __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xc52131ae fscache_object_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0xd1e6c53c fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0xddc01d5d __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0xe0c9b856 fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0xe33fa47a __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0xea89b9fd __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xeb1f3d66 __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0xf55c6c10 fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0xf8f178d4 __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0xf9a25096 fscache_enqueue_operation +EXPORT_SYMBOL fs/nfsd/nfsd 0x35e33c1e nfs4_acl_write_who +EXPORT_SYMBOL fs/nfsd/nfsd 0x5a157ae4 nfs4_acl_get_whotype +EXPORT_SYMBOL fs/nfsd/nfsd 0xa0f4b528 nfs4_acl_posix_to_nfsv4 +EXPORT_SYMBOL fs/nfsd/nfsd 0xb25b2957 nfs4_acl_nfsv4_to_posix +EXPORT_SYMBOL fs/nfsd/nfsd 0xe13337f0 nfs4_acl_new +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x2faedc0e qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x5f4af24a qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x77ee696e qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x7c83f1bd qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0xd6df0997 qtree_write_dquot +EXPORT_SYMBOL lib/cordic 0x434bfd07 cordic_calc_iq +EXPORT_SYMBOL lib/crc-ccitt 0x1a703ba1 crc_ccitt +EXPORT_SYMBOL lib/crc-ccitt 0x75811312 crc_ccitt_table +EXPORT_SYMBOL lib/crc-itu-t 0x6d356209 crc_itu_t +EXPORT_SYMBOL lib/crc-itu-t 0xd29b009f crc_itu_t_table +EXPORT_SYMBOL lib/crc7 0x6c1f6fee crc7 +EXPORT_SYMBOL lib/crc7 0xd80c3603 crc7_syndrome_table +EXPORT_SYMBOL lib/crc8 0xab9ad613 crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xd09b2cba crc8 +EXPORT_SYMBOL lib/crc8 0xd4534d80 crc8_populate_msb +EXPORT_SYMBOL lib/libcrc32c 0x27000b29 crc32c +EXPORT_SYMBOL lib/lru_cache 0x17530a2d lc_set +EXPORT_SYMBOL lib/lru_cache 0x19cf8351 lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0x2388972e lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0x2eb86314 lc_committed +EXPORT_SYMBOL lib/lru_cache 0x3ec8e9bb lc_destroy +EXPORT_SYMBOL lib/lru_cache 0x486392c2 lc_del +EXPORT_SYMBOL lib/lru_cache 0x55d40ad0 lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x70d9ddd8 lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0x745ebaab lc_find +EXPORT_SYMBOL lib/lru_cache 0x846875a0 lc_reset +EXPORT_SYMBOL lib/lru_cache 0x8c26f371 lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xbea1b0ba lc_try_get +EXPORT_SYMBOL lib/lru_cache 0xc343305e lc_is_used +EXPORT_SYMBOL lib/lru_cache 0xd6e146aa lc_get +EXPORT_SYMBOL lib/lru_cache 0xdaef897c lc_put +EXPORT_SYMBOL lib/lru_cache 0xe7800d85 lc_create +EXPORT_SYMBOL lib/lru_cache 0xfe413d0d lc_element_by_index +EXPORT_SYMBOL lib/lz4/lz4_compress 0x0c222eb5 lz4_compress +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x682a23e0 lz4hc_compress +EXPORT_SYMBOL lib/raid6/raid6_pq 0x0bd662f6 raid6_gfmul +EXPORT_SYMBOL lib/raid6/raid6_pq 0x15fe0cd3 raid6_gfexp +EXPORT_SYMBOL lib/raid6/raid6_pq 0x5ba93f9d raid6_gfinv +EXPORT_SYMBOL lib/raid6/raid6_pq 0x7456cc61 raid6_empty_zero_page +EXPORT_SYMBOL lib/raid6/raid6_pq 0xce45a6f1 raid6_gfexi +EXPORT_SYMBOL lib/raid6/raid6_pq 0xd9e91f83 raid6_vgfmul +EXPORT_SYMBOL net/802/p8022 0x40407c6f register_8022_client +EXPORT_SYMBOL net/802/p8022 0xf8aa90d1 unregister_8022_client +EXPORT_SYMBOL net/802/p8023 0x01a4f005 make_8023_client +EXPORT_SYMBOL net/802/p8023 0xef7b6216 destroy_8023_client +EXPORT_SYMBOL net/802/psnap 0xb7d60784 register_snap_client +EXPORT_SYMBOL net/802/psnap 0xd9363b58 unregister_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x02126cfa p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0x05463502 p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0x0ad2ab2a p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x0e22272e v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0x17c4a9f1 v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0x1b521dfe p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0x213d54c0 p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x23492cdd p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0x25fda05e p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0x2f040ca5 p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0x2f7572ed v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x35d1e27e p9_idpool_get +EXPORT_SYMBOL net/9p/9pnet 0x36175592 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x37f64fa9 p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x397112f4 p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0x3aeaa2d6 p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x44d2c2c0 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0x4954d335 p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x4c0ebbb7 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0x4c26d3a6 p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0x51742c55 p9_payload_gup +EXPORT_SYMBOL net/9p/9pnet 0x60ca3646 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x62ff4755 p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0x6fad6efc p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0x70aedcb7 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x72476ab6 p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0x742210fa p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0x786361be p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0x8ad842cf p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x977a0030 p9_nr_pages +EXPORT_SYMBOL net/9p/9pnet 0xa1c797c7 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0xa4239d65 p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0xabebdc02 p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0xac4cdc1a p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0xbd4d55a6 p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0xc1f4f524 p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0xc5db54a9 p9_idpool_destroy +EXPORT_SYMBOL net/9p/9pnet 0xcdac73bc p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0xd017c3c5 p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0xd25bebe7 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0xd877b295 p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0xda95c7c1 p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0xddfd1b1c p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xea4250f9 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0xf4a111d8 p9_idpool_create +EXPORT_SYMBOL net/9p/9pnet 0xf8447b4b p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0xf84f2022 p9_idpool_put +EXPORT_SYMBOL net/9p/9pnet 0xf87ed60e p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0xf8d04eb4 p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0xfd40c79d p9_idpool_check +EXPORT_SYMBOL net/appletalk/appletalk 0x3176f7fb alloc_ltalkdev +EXPORT_SYMBOL net/appletalk/appletalk 0x820d637a atrtr_get_dev +EXPORT_SYMBOL net/appletalk/appletalk 0x9c5b408f aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0xec6d8b05 atalk_find_dev_addr +EXPORT_SYMBOL net/atm/atm 0x1ee5d421 atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x3bc14e0f atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0x3e4f822c atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x470df65d atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x4731d980 vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0x55da8759 register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x76bffed9 atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0x9fbbfecc atm_charge +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xac04e3b7 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0xb74bf480 vcc_release_async +EXPORT_SYMBOL net/atm/atm 0xc3d87648 atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0xc4a36520 vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0xca87b453 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/atm/atm 0xf9487ac9 deregister_atm_ioctl +EXPORT_SYMBOL net/ax25/ax25 0x02078b59 ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x026c1368 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x1ab8fa29 ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x2cdb74b6 ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0x2f3b1fd2 ax25_rebuild_header +EXPORT_SYMBOL net/ax25/ax25 0x392cf36a ax25_hard_header +EXPORT_SYMBOL net/ax25/ax25 0x3afee63e ax25_findbyuid +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x73c1cae7 ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x7fac20b9 ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0xabb5cce4 ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xeee7d115 ax25_listen_release +EXPORT_SYMBOL net/bluetooth/bluetooth 0x084012d5 hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0d023652 l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0x160d2064 hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1996c427 bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1e226496 hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1e299a43 bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x1f89661b hci_recv_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x31f3081c bt_sock_link +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3bc66e23 hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x403e5920 bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4fc6c0ba bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5246398b bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x53c15ad9 bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x595c7752 bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5a287276 hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6547b389 __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x768a93f9 bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x77cdd525 bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7c640527 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x82402134 hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x85335149 bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x894498d8 hci_recv_stream_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x917bba4b l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0x91c9a325 bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0x920df667 hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0x9fd77af9 bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa746a3f3 __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa9eca8ee l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb00cfc87 bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb527c1a2 hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb61a0c3b bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc23a8089 bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcad3ad0a hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcc1fb551 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd0ef0405 l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd769c963 l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd99b15d9 hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe6807f42 hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf009b1a4 hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf2c7d997 hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0xf2e4f66d bt_sock_unlink +EXPORT_SYMBOL net/bridge/bridge 0xe35e8796 br_should_route_hook +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x31a0f47e ebt_register_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x7760137b ebt_do_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xb834f585 ebt_unregister_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +EXPORT_SYMBOL net/caif/caif 0x2a09f713 cfpkt_fromnative +EXPORT_SYMBOL net/caif/caif 0x329dbd06 cfpkt_info +EXPORT_SYMBOL net/caif/caif 0x33be9e7e get_cfcnfg +EXPORT_SYMBOL net/caif/caif 0x38701a7c cfcnfg_del_phy_layer +EXPORT_SYMBOL net/caif/caif 0x4a237e57 cfpkt_tonative +EXPORT_SYMBOL net/caif/caif 0x679ccb17 cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x6a42763b caif_connect_client +EXPORT_SYMBOL net/caif/caif 0x6a44fc70 cfpkt_extr_head +EXPORT_SYMBOL net/caif/caif 0x71b376ad caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x966d7de2 cfpkt_add_head +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xabf70439 caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/can/can 0x01963f99 can_rx_unregister +EXPORT_SYMBOL net/can/can 0x128c8402 can_rx_register +EXPORT_SYMBOL net/can/can 0x1b92f5cd can_proto_unregister +EXPORT_SYMBOL net/can/can 0x2a603662 can_ioctl +EXPORT_SYMBOL net/can/can 0x53757738 can_send +EXPORT_SYMBOL net/can/can 0x861e222f can_proto_register +EXPORT_SYMBOL net/ceph/libceph 0x01960b40 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0x07a6d505 ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0x07b8a57d ceph_monc_got_mdsmap +EXPORT_SYMBOL net/ceph/libceph 0x0904e43a ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x09290ab3 ceph_debugfs_init +EXPORT_SYMBOL net/ceph/libceph 0x0b1fea57 osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0x0d61c270 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0x10ec096d ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0x144b5d4b ceph_osdc_put_event +EXPORT_SYMBOL net/ceph/libceph 0x1475bf0d ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x16dc29df ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0x197effcb ceph_osdc_release_request +EXPORT_SYMBOL net/ceph/libceph 0x1e358342 ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x1e360232 ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0x1eab8b35 ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0x20d151cb ceph_osdc_setup +EXPORT_SYMBOL net/ceph/libceph 0x21b550b9 ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0x25d6db3a ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0x265f94f3 __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x28aa4113 ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0x2f4852a2 osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x312e3739 ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x3abec91f ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x3df0ec7c ceph_calc_ceph_pg +EXPORT_SYMBOL net/ceph/libceph 0x3f688151 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x4205ffd7 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0x43e458f6 ceph_file_part +EXPORT_SYMBOL net/ceph/libceph 0x43efd647 ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x4a283545 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x4c29b37c osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0x4c632f4d osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x4cade9d2 ceph_get_direct_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x5379cea3 ceph_caps_for_mode +EXPORT_SYMBOL net/ceph/libceph 0x56eccfb5 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x570ceb67 ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x5738c1e9 ceph_osdc_create_event +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x598577de ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0x5b0bfde4 osd_req_op_cls_response_data +EXPORT_SYMBOL net/ceph/libceph 0x5d358d68 ceph_osdc_writepages +EXPORT_SYMBOL net/ceph/libceph 0x5efe6966 osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0x614a176f osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0x6331c3a5 ceph_osdc_unregister_linger_request +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x6b2e3bcd ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x6b86fe2b ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0x6c5d5ac1 ceph_calc_pg_primary +EXPORT_SYMBOL net/ceph/libceph 0x6f099cb2 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0x7168baf8 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0x7193f5c0 ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0x72d221fe ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x77692acb ceph_msg_last_put +EXPORT_SYMBOL net/ceph/libceph 0x79a77ef5 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0x7d31129f ceph_osdc_set_request_linger +EXPORT_SYMBOL net/ceph/libceph 0x7d970060 ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x7e395734 osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x7fdba0d8 osd_req_op_watch_init +EXPORT_SYMBOL net/ceph/libceph 0x81ae7876 ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x81eae1b6 ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0x85c160a4 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x861bbf42 ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0x8779849a ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x8ad588c0 ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x8c4aa079 ceph_monc_create_snapid +EXPORT_SYMBOL net/ceph/libceph 0x904dcdc4 ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x910d7fab osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x913f68d3 ceph_client_id +EXPORT_SYMBOL net/ceph/libceph 0x99de4738 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x99e36571 ceph_osdc_cleanup +EXPORT_SYMBOL net/ceph/libceph 0x9d13646f ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0x9f534f4d ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xa42c3b30 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0xa5d26a20 osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0xa63117d9 ceph_osdc_build_request +EXPORT_SYMBOL net/ceph/libceph 0xa8bfbc38 ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xab193ca1 ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0xad4848b6 ceph_copy_page_vector_to_user +EXPORT_SYMBOL net/ceph/libceph 0xae3515ba ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb22c6e5c ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb6081d6d ceph_msgr_exit +EXPORT_SYMBOL net/ceph/libceph 0xb86b5044 ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xc4a80955 ceph_debugfs_cleanup +EXPORT_SYMBOL net/ceph/libceph 0xc51450a1 ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0xc55de604 ceph_parse_options +EXPORT_SYMBOL net/ceph/libceph 0xc889fd32 osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xc9f82b38 ceph_msgr_init +EXPORT_SYMBOL net/ceph/libceph 0xcb50a624 ceph_parse_ips +EXPORT_SYMBOL net/ceph/libceph 0xd2c107bb ceph_flags_to_mode +EXPORT_SYMBOL net/ceph/libceph 0xd4911977 ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0xd7037fa6 ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xdd104bd9 ceph_osdc_readpages +EXPORT_SYMBOL net/ceph/libceph 0xe23c0904 ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xe2f8369d ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0xe43ccbdf ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xe46edb5b ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xe82c9c32 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0xed229339 ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0xee315d53 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0xf5774cba ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0xfb9b11d7 ceph_osdc_cancel_event +EXPORT_SYMBOL net/ceph/libceph 0xfe936ba7 ceph_compare_options +EXPORT_SYMBOL net/dccp/dccp_ipv4 0xaf96bbcd dccp_syn_ack_timeout +EXPORT_SYMBOL net/ieee802154/ieee802154 0x200c8577 wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0x210b05a0 ieee802154_nl_start_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x35626353 ieee802154_nl_scan_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x6177d825 ieee802154_nl_assoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x6baeb379 wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0x71c6fa6f ieee802154_nl_assoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x74667f24 wpan_phy_alloc +EXPORT_SYMBOL net/ieee802154/ieee802154 0x8d4bdfb2 ieee802154_nl_beacon_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0xa55e51bb ieee802154_nl_disassoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0xbc85d834 wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0xd98c5468 wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0xee6a51f7 wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0xf5cf335b ieee802154_nl_disassoc_indic +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xa5f9b89d arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xb7b40f37 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xe0e70a18 arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x3bb41dc1 ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x8b8b98c5 ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xb28ae26b ipt_do_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x6eb713b2 xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0x86f7e448 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x78297418 ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xc8aa1b12 ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x3a0b0139 ip6t_register_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x6e25732b ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x92cf3cef ip6t_do_table +EXPORT_SYMBOL net/ipv6/tunnel6 0xb6697516 xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/tunnel6 0xb9e1641d xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x4bfed1d4 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x934e1835 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x04074169 ircomm_open +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x12bc118d ircomm_flow_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x674be290 ircomm_connect_response +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x73dbf23e ircomm_data_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x7fafe2bf ircomm_connect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xa822b45e ircomm_close +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xc752f2bd ircomm_disconnect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xf21b820c ircomm_control_request +EXPORT_SYMBOL net/irda/irda 0x0064e0ea hashbin_get_first +EXPORT_SYMBOL net/irda/irda 0x06a3ee58 irias_new_integer_value +EXPORT_SYMBOL net/irda/irda 0x07d3647c irlmp_register_service +EXPORT_SYMBOL net/irda/irda 0x0819e883 irlmp_connect_response +EXPORT_SYMBOL net/irda/irda 0x1e6cade0 irias_add_integer_attrib +EXPORT_SYMBOL net/irda/irda 0x2036ad06 irda_param_insert +EXPORT_SYMBOL net/irda/irda 0x21cfaf68 irda_device_set_media_busy +EXPORT_SYMBOL net/irda/irda 0x268fe42d irttp_open_tsap +EXPORT_SYMBOL net/irda/irda 0x27b76483 irttp_connect_response +EXPORT_SYMBOL net/irda/irda 0x33cbe2c6 proc_irda +EXPORT_SYMBOL net/irda/irda 0x3b00cd00 alloc_irdadev +EXPORT_SYMBOL net/irda/irda 0x3e56064f hashbin_new +EXPORT_SYMBOL net/irda/irda 0x448b8aaa irda_qos_bits_to_value +EXPORT_SYMBOL net/irda/irda 0x46c1c4a2 irlmp_unregister_service +EXPORT_SYMBOL net/irda/irda 0x4cc2451c async_wrap_skb +EXPORT_SYMBOL net/irda/irda 0x5bf58323 irttp_connect_request +EXPORT_SYMBOL net/irda/irda 0x5c062ee1 irlmp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0x5cc9ae72 irttp_close_tsap +EXPORT_SYMBOL net/irda/irda 0x601bda46 hashbin_remove +EXPORT_SYMBOL net/irda/irda 0x65c2e079 async_unwrap_char +EXPORT_SYMBOL net/irda/irda 0x6752e085 irttp_flow_request +EXPORT_SYMBOL net/irda/irda 0x67590efa iriap_getvaluebyclass_request +EXPORT_SYMBOL net/irda/irda 0x6b043eba irda_init_max_qos_capabilies +EXPORT_SYMBOL net/irda/irda 0x6b5fbcef hashbin_get_next +EXPORT_SYMBOL net/irda/irda 0x6e0ab3c7 irias_add_string_attrib +EXPORT_SYMBOL net/irda/irda 0x6f2d611c iriap_close +EXPORT_SYMBOL net/irda/irda 0x7042bc54 irlmp_register_client +EXPORT_SYMBOL net/irda/irda 0x7202b47c irlmp_open_lsap +EXPORT_SYMBOL net/irda/irda 0x763e54a4 irlmp_unregister_client +EXPORT_SYMBOL net/irda/irda 0x7957f728 irlmp_update_client +EXPORT_SYMBOL net/irda/irda 0x85d88217 irias_delete_object +EXPORT_SYMBOL net/irda/irda 0x91815586 irda_param_pack +EXPORT_SYMBOL net/irda/irda 0x93249ca4 irlap_open +EXPORT_SYMBOL net/irda/irda 0x9392ce13 irda_notify_init +EXPORT_SYMBOL net/irda/irda 0x93f9ea01 iriap_open +EXPORT_SYMBOL net/irda/irda 0x993ad14b irda_param_extract_all +EXPORT_SYMBOL net/irda/irda 0xa0ba22dd irlmp_data_request +EXPORT_SYMBOL net/irda/irda 0xa1d41e58 hashbin_delete +EXPORT_SYMBOL net/irda/irda 0xaa489b2e irttp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0xaa557515 irias_new_object +EXPORT_SYMBOL net/irda/irda 0xaf061164 irttp_data_request +EXPORT_SYMBOL net/irda/irda 0xb9394173 irias_delete_value +EXPORT_SYMBOL net/irda/irda 0xba1ce383 irttp_dup +EXPORT_SYMBOL net/irda/irda 0xbcd3ef13 irias_object_change_attribute +EXPORT_SYMBOL net/irda/irda 0xbe40ace9 irlmp_discovery_request +EXPORT_SYMBOL net/irda/irda 0xc68e43be irias_add_octseq_attrib +EXPORT_SYMBOL net/irda/irda 0xcb8a3844 irlmp_connect_request +EXPORT_SYMBOL net/irda/irda 0xcead7dbb hashbin_find +EXPORT_SYMBOL net/irda/irda 0xd2108314 hashbin_insert +EXPORT_SYMBOL net/irda/irda 0xd6deeaae irda_setup_dma +EXPORT_SYMBOL net/irda/irda 0xd77607aa irlmp_close_lsap +EXPORT_SYMBOL net/irda/irda 0xde4c6b3c irlmp_service_to_hint +EXPORT_SYMBOL net/irda/irda 0xe0d34db8 irlap_close +EXPORT_SYMBOL net/irda/irda 0xe3463529 hashbin_lock_find +EXPORT_SYMBOL net/irda/irda 0xe3bde43e irias_insert_object +EXPORT_SYMBOL net/irda/irda 0xe4a5bb1e irttp_udata_request +EXPORT_SYMBOL net/irda/irda 0xedd521c2 irlmp_get_discoveries +EXPORT_SYMBOL net/irda/irda 0xf0a694a1 irias_find_object +EXPORT_SYMBOL net/irda/irda 0xf5876b95 hashbin_remove_this +EXPORT_SYMBOL net/l2tp/l2tp_core 0x7be55192 l2tp_recv_common +EXPORT_SYMBOL net/lapb/lapb 0x1dc41362 lapb_setparms +EXPORT_SYMBOL net/lapb/lapb 0x97631eec lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0xb08429c0 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0xbe04fc98 lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0xdb5fe0f2 lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0xe52d9e85 lapb_register +EXPORT_SYMBOL net/lapb/lapb 0xe55681e9 lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0xfb5c59dc lapb_unregister +EXPORT_SYMBOL net/llc/llc 0x1cc711e7 llc_sap_find +EXPORT_SYMBOL net/llc/llc 0x243ac627 llc_add_pack +EXPORT_SYMBOL net/llc/llc 0x2b909939 llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x3dcbc6f2 llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x98ee707b llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0xa297d385 llc_sap_close +EXPORT_SYMBOL net/llc/llc 0xc35e28f7 llc_sap_list_lock +EXPORT_SYMBOL net/llc/llc 0xfe481cc3 llc_sap_open +EXPORT_SYMBOL net/mac80211/mac80211 0x009376f2 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x0877cf2c wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x090f8233 ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0x091e95a1 ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0x096b75c3 ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x099388a1 ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x0a459b10 ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x0e6548fc ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x1a29d184 __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x1dfed85b ieee80211_alloc_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x1f60a642 ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0x1fb81e69 ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0x21a2ae71 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0x23a1a446 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x23af74cf ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x23fb9610 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x24bee06f ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x2567c965 ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x290e8cb6 ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x2b48afaf ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x2b5f129c ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0x328252d6 ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x33a758c8 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x3820a7b9 ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x399f9a0a ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0x3b278b00 ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0x3c87dc8c ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x3f5cd829 __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x4d91b097 rate_control_send_low +EXPORT_SYMBOL net/mac80211/mac80211 0x4e98f9a0 ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0x50b95551 ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x510cf22b ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0x51e7c6c4 ieee80211_rx +EXPORT_SYMBOL net/mac80211/mac80211 0x53161034 ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x545951cd ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x590459f6 ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x5c28cca5 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x5e550cca ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0x5e955ecd ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x60d77175 ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x7558dcc3 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0x88235b3f ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x8b3db1bb ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0x8bcd39ce ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x918f4866 __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x9c5e6334 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0x9f297a5c ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xa1fc36c4 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xaa157485 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0xaf363f5f ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xc07e14a2 ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0xc69480e9 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xc7a0b3d3 ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0xc7e9782e ieee80211_get_key_tx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xcb7199bc ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xcccafe99 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xce5ea804 ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0xd2aaa067 ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0xd32a0dd1 ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0xd36c6fa1 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0xd47af3d3 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0xd79699b3 ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0xd7ded5ca ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0xdc1d2f5c rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xddb47d52 ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xe28a607e ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xe2d1b005 ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0xeb20f553 ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xecf70d60 ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xf395de03 ieee80211_aes_cmac_calculate_k1_k2 +EXPORT_SYMBOL net/mac80211/mac80211 0xfa75021c ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0xfb17ed6f ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0xfbf7069a ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac802154/mac802154 0x65a6f29a ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0x6cd2bf8c ieee802154_free_device +EXPORT_SYMBOL net/mac802154/mac802154 0x70b7244e ieee802154_alloc_device +EXPORT_SYMBOL net/mac802154/mac802154 0xae101ab3 ieee802154_unregister_device +EXPORT_SYMBOL net/mac802154/mac802154 0xdddda024 ieee802154_register_device +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x06ea6bc4 ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x4895820e register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x796018b5 ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xa57218e3 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xa6b11f38 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xad7468f4 unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xb1e4f152 ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xbc9afe48 ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd5c10c5a ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xdabc3a02 ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xe23ccd78 register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xecfd822c ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xf84dafd9 register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xfac48224 unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x3638698f nf_conntrack_untracked +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xb289aaf4 __nf_ct_ext_destroy +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xff8443fa __nf_ct_ext_add_length +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0x827cc6a1 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_conntrack_proto_gre 0x7523423e nf_ct_gre_keymap_flush +EXPORT_SYMBOL net/netfilter/nf_nat 0x228a59af nf_nat_used_tuple +EXPORT_SYMBOL net/netfilter/nf_nat 0x38d5d15d nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0x7aa6bc26 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xc53feba3 __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xc898324c nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0xfa151eee nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/x_tables 0x08c473b7 xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0x253e8b44 xt_compat_init_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x3f30f506 xt_find_target +EXPORT_SYMBOL net/netfilter/x_tables 0x439ebc73 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0x51b7e449 xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x7c33645d xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0x85b3b980 xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0xa28a0ac9 xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xabc70244 xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0xb28f5ef1 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xc3728d70 xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0xc7799c31 xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0xfcc23dbf xt_register_targets +EXPORT_SYMBOL net/nfc/hci/hci 0x0387c6dd nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0x0706de7f nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0x3c786415 nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0x43028a27 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x4f8ed11b nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0x55a93ccf nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x7d4aa46d nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0x7dc1a54d nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0x97ed9a3a nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0x9b7d9d7b nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0xb056b599 nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xb7e2b342 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0xbca0b4fd nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xbd5b75bf nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0xc1c0c6b1 nfc_hci_send_response +EXPORT_SYMBOL net/nfc/hci/hci 0xcdb7b89d nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0xcec4eb29 nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0xd500ca77 nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0xe98af673 nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0xff26e622 nfc_hci_set_param +EXPORT_SYMBOL net/nfc/nci/nci 0x8295ddd5 nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0x92b283fd nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0x974520e0 nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xced8953e nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0xde505a94 nci_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0x03052fd3 nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0x07d43e08 nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0x1b1ed392 nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0x3c5c3ed8 nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x47ceaf4f nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0x5dd39b99 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0x6203650e nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x69534a3c nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0x783ea6c8 nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0x7b1c525a nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0x7b7e7ea5 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0x86c7ce22 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0x91e42506 nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0x95a87f5e nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0xa65ae702 nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0xab4af88b nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0xc5037fe7 nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0xd7919ea1 nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0xe5394abd nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0xfbedadab nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc_digital 0x12f7cc54 nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x6bde8bd6 nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xcebf2e2e nfc_digital_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xefd9729d nfc_digital_allocate_device +EXPORT_SYMBOL net/phonet/phonet 0x28b8c61c pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0x7b03b4b9 pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0x8d5ba842 phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0x91c0ddbe phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0xa8304b57 pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0xaab114e8 pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0xc85003e5 phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0xeb54f93c phonet_proto_register +EXPORT_SYMBOL net/rds/rds 0x7505d413 rds_str_array +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x1bf81010 rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x1c37b9ee rxrpc_kernel_is_data_last +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x3bc85142 rxrpc_kernel_accept_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x44748e0f rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x5d30f38c rxrpc_kernel_free_skb +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x65a78aaf rxrpc_kernel_intercept_rx_messages +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x7ce3bac7 rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x8f99e8b7 rxrpc_kernel_get_abort_code +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x93b99fb2 rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x962e7e2e rxrpc_kernel_data_delivered +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xab7ed26a rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xb48544f9 rxrpc_kernel_get_error_number +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xe94d6f7b rxrpc_kernel_reject_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xeedc46b8 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xff3e3526 rxrpc_get_null_key +EXPORT_SYMBOL net/sctp/sctp 0x53792e55 sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x2e836f36 gss_mech_get +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x93bb1522 gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xa56ef553 gss_mech_put +EXPORT_SYMBOL net/sunrpc/sunrpc 0x2159e692 svc_pool_stats_open +EXPORT_SYMBOL net/wimax/wimax 0x4e4d06b2 wimax_reset +EXPORT_SYMBOL net/wimax/wimax 0x9e831cc1 wimax_rfkill +EXPORT_SYMBOL net/wireless/cfg80211 0x081eb87f cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0x09c64fbd ieee80211_frequency_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x09f8aec2 cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x0b8b43f1 cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x10f3b625 cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0x15d56b8d cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0x185fe881 cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x18e2241e cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0x19c35ea7 cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x19e03378 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0x1fe3cd13 wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0x212a7afe cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x21918c5f cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x22f9bf36 cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x23acd30c cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0x2a422ed9 wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x30259096 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0x35711e06 cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x38953e83 cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x3ed77e29 cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x3fecaebd cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0x406a8302 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x420a4719 cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0x459b571b cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x47db92e6 cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x49a2df53 cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x4a1eff6f cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x4a3a8b4d cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x4c3b5878 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x4c40b2fb ieee80211_bss_get_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x4ca76f90 wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0x51edca47 __ieee80211_get_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x545b3aa5 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x54658961 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0x549ae50f ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x57c991eb cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x5bc45fd2 ieee80211_data_to_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0x5d406c27 cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x5dd23025 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0x5ea4d510 cfg80211_inform_bss_width_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x5f261191 wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0x62f0bf32 cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0x63855be2 cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x652dd348 cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6d6cb9ad ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x71bbc2eb cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x7bf66d3f ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x7d42db95 cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7fe1a403 cfg80211_find_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x85992200 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0x8aa01ec5 cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0x8d15a224 cfg80211_del_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x8ec66d8f cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x8f547d1a cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x931d347f cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x95e72354 cfg80211_connect_result +EXPORT_SYMBOL net/wireless/cfg80211 0x979fca3b cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x982e6b6d ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0xa1425906 ieee80211_channel_to_frequency +EXPORT_SYMBOL net/wireless/cfg80211 0xa1817c72 cfg80211_report_obss_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xa197b1ff ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xa79151bf cfg80211_rx_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xaf2adaeb wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xba1928fb cfg80211_inform_bss_width +EXPORT_SYMBOL net/wireless/cfg80211 0xbe054176 cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0xc15c8611 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0xc63f1b81 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0xc713e711 cfg80211_roamed_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xcf618a57 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0xcff61d9c cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0xd6f9f5a9 cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xdcb8d659 regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0xe4f568be cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0xe6bf5cdb cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0xe824ea85 wiphy_new +EXPORT_SYMBOL net/wireless/cfg80211 0xe95650a8 ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0xee42db3c cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xf37789e6 ieee80211_data_from_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0xf7becd26 freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0xfac515f3 cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0xfb7ef138 cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0xfed4d591 cfg80211_find_vendor_ie +EXPORT_SYMBOL net/wireless/lib80211 0x0ac87c4a lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x2d0f99e5 print_ssid +EXPORT_SYMBOL net/wireless/lib80211 0x31991af9 lib80211_get_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x7e3dc147 lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0x8f034d3d lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0xa61a912f lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0xe275ad14 lib80211_register_crypto_ops +EXPORT_SYMBOL sound/ac97_bus 0x3e786c94 ac97_bus_type +EXPORT_SYMBOL sound/core/seq/snd-seq 0x159fa386 snd_seq_kernel_client_enqueue_blocking +EXPORT_SYMBOL sound/core/seq/snd-seq 0x1a724fcc snd_seq_kernel_client_ctl +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3061c52d snd_use_lock_sync_helper +EXPORT_SYMBOL sound/core/seq/snd-seq 0x3fb4d161 snd_seq_kernel_client_dispatch +EXPORT_SYMBOL sound/core/seq/snd-seq 0x5e3f97f1 snd_seq_create_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x6bb71038 snd_seq_delete_kernel_client +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7ac2f329 snd_seq_expand_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0x7b8699eb snd_seq_event_port_detach +EXPORT_SYMBOL sound/core/seq/snd-seq 0xb8e448a0 snd_seq_set_queue_tempo +EXPORT_SYMBOL sound/core/seq/snd-seq 0xcac0a3be snd_seq_kernel_client_enqueue +EXPORT_SYMBOL sound/core/seq/snd-seq 0xceb994cd snd_seq_event_port_attach +EXPORT_SYMBOL sound/core/seq/snd-seq 0xe934da1d snd_seq_dump_var_event +EXPORT_SYMBOL sound/core/seq/snd-seq 0xf1dd0e87 snd_seq_kernel_client_write_poll +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x0fd6585f snd_seq_device_register_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x3a57f235 snd_seq_autoload_unlock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0x6339b6d0 snd_seq_device_load_drivers +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xa69ee3c0 snd_seq_device_new +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xb90668b2 snd_seq_autoload_lock +EXPORT_SYMBOL sound/core/seq/snd-seq-device 0xc622fb29 snd_seq_device_unregister_driver +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x6ea09972 snd_midi_channel_alloc_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0x833a3e07 snd_midi_channel_set_clear +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xb9948d2c snd_midi_channel_free_set +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-emul 0xf0a1fdb3 snd_midi_process_event +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x072d978b snd_midi_event_new +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x13a17752 snd_midi_event_reset_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x2eed26bf snd_midi_event_no_status +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x4d5ca523 snd_midi_event_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0x592f6e9b snd_midi_event_free +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xd7c7afcc snd_midi_event_encode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xe60fb228 snd_midi_event_reset_decode +EXPORT_SYMBOL sound/core/seq/snd-seq-midi-event 0xecbde43c snd_midi_event_encode_byte +EXPORT_SYMBOL sound/core/seq/snd-seq-virmidi 0x6c95fcbb snd_virmidi_new +EXPORT_SYMBOL sound/core/snd 0x04d5f177 snd_ctl_notify +EXPORT_SYMBOL sound/core/snd 0x07b17a12 snd_card_file_add +EXPORT_SYMBOL sound/core/snd 0x08e46684 snd_card_set_id +EXPORT_SYMBOL sound/core/snd 0x1015e405 snd_ctl_boolean_mono_info +EXPORT_SYMBOL sound/core/snd 0x18e1683f snd_dma_program +EXPORT_SYMBOL sound/core/snd 0x191e88cf snd_dma_pointer +EXPORT_SYMBOL sound/core/snd 0x1acc22a6 snd_device_new +EXPORT_SYMBOL sound/core/snd 0x1daea743 snd_seq_root +EXPORT_SYMBOL sound/core/snd 0x1f30e323 snd_ctl_register_ioctl +EXPORT_SYMBOL sound/core/snd 0x24a94b26 snd_info_get_line +EXPORT_SYMBOL sound/core/snd 0x2a6f267b snd_card_free_when_closed +EXPORT_SYMBOL sound/core/snd 0x2ae3deaa release_and_free_resource +EXPORT_SYMBOL sound/core/snd 0x2b8ef751 snd_cards +EXPORT_SYMBOL sound/core/snd 0x342a2354 copy_to_user_fromio +EXPORT_SYMBOL sound/core/snd 0x36fbbaa9 snd_ctl_boolean_stereo_info +EXPORT_SYMBOL sound/core/snd 0x3971b4df snd_ecards_limit +EXPORT_SYMBOL sound/core/snd 0x3b774bd4 snd_ctl_rename_id +EXPORT_SYMBOL sound/core/snd 0x3ba13809 snd_card_disconnect +EXPORT_SYMBOL sound/core/snd 0x3dc18003 snd_ctl_unregister_ioctl +EXPORT_SYMBOL sound/core/snd 0x42c67e1c snd_ctl_free_one +EXPORT_SYMBOL sound/core/snd 0x44249ef0 snd_component_add +EXPORT_SYMBOL sound/core/snd 0x4a3ea5c0 snd_request_card +EXPORT_SYMBOL sound/core/snd 0x4b015768 snd_iprintf +EXPORT_SYMBOL sound/core/snd 0x4fe0108f snd_ctl_remove_id +EXPORT_SYMBOL sound/core/snd 0x507b8c69 snd_info_free_entry +EXPORT_SYMBOL sound/core/snd 0x53b6a93c snd_info_create_module_entry +EXPORT_SYMBOL sound/core/snd 0x574ae73a snd_device_free +EXPORT_SYMBOL sound/core/snd 0x5f339cd6 snd_card_unref +EXPORT_SYMBOL sound/core/snd 0x5fe7710e snd_power_wait +EXPORT_SYMBOL sound/core/snd 0x6a8b3cea snd_info_register +EXPORT_SYMBOL sound/core/snd 0x6c13ba05 snd_ctl_find_numid +EXPORT_SYMBOL sound/core/snd 0x6c979c03 snd_jack_report +EXPORT_SYMBOL sound/core/snd 0x70c15ac1 snd_dma_disable +EXPORT_SYMBOL sound/core/snd 0x70f53e6b snd_ctl_new1 +EXPORT_SYMBOL sound/core/snd 0x7848ac6d snd_add_device_sysfs_file +EXPORT_SYMBOL sound/core/snd 0x7aed7d3a snd_info_create_card_entry +EXPORT_SYMBOL sound/core/snd 0x7cc40029 snd_device_register +EXPORT_SYMBOL sound/core/snd 0x7cf87bb6 snd_ctl_replace +EXPORT_SYMBOL sound/core/snd 0x81b69e41 snd_ctl_enum_info +EXPORT_SYMBOL sound/core/snd 0x88beb304 snd_card_file_remove +EXPORT_SYMBOL sound/core/snd 0x8f595b11 snd_major +EXPORT_SYMBOL sound/core/snd 0x907ef5ff snd_card_free +EXPORT_SYMBOL sound/core/snd 0x928fa669 snd_unregister_device +EXPORT_SYMBOL sound/core/snd 0x9bb19673 snd_pci_quirk_lookup +EXPORT_SYMBOL sound/core/snd 0x9e6d79f8 snd_info_get_str +EXPORT_SYMBOL sound/core/snd 0xa0fd2427 snd_pci_quirk_lookup_id +EXPORT_SYMBOL sound/core/snd 0xadd07e56 snd_card_register +EXPORT_SYMBOL sound/core/snd 0xb2e5ae4a snd_lookup_minor_data +EXPORT_SYMBOL sound/core/snd 0xb474119f snd_card_create +EXPORT_SYMBOL sound/core/snd 0xb5f9aa63 _snd_ctl_add_slave +EXPORT_SYMBOL sound/core/snd 0xb9b3468d snd_card_proc_new +EXPORT_SYMBOL sound/core/snd 0xc289b5d7 snd_ctl_make_virtual_master +EXPORT_SYMBOL sound/core/snd 0xc5a33c83 snd_ctl_unregister_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0xc7ef3434 snd_jack_new +EXPORT_SYMBOL sound/core/snd 0xcb9a03ae snd_jack_set_key +EXPORT_SYMBOL sound/core/snd 0xcc4affcc snd_register_device_for_dev +EXPORT_SYMBOL sound/core/snd 0xcef9a8e3 snd_ctl_remove +EXPORT_SYMBOL sound/core/snd 0xd8e9eab4 snd_ctl_add +EXPORT_SYMBOL sound/core/snd 0xe64685ee snd_jack_set_parent +EXPORT_SYMBOL sound/core/snd 0xec11c6a9 snd_ctl_find_id +EXPORT_SYMBOL sound/core/snd 0xfb1166b3 snd_ctl_register_ioctl_compat +EXPORT_SYMBOL sound/core/snd 0xfffd89db copy_from_user_toio +EXPORT_SYMBOL sound/core/snd-hwdep 0xbb4ff95e snd_hwdep_new +EXPORT_SYMBOL sound/core/snd-page-alloc 0x06b310c9 snd_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x06d65adf snd_dma_alloc_pages_fallback +EXPORT_SYMBOL sound/core/snd-page-alloc 0x5898dcba snd_malloc_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0x95449d83 snd_dma_reserve_buf +EXPORT_SYMBOL sound/core/snd-page-alloc 0xa0132659 snd_dma_alloc_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0xbeadfaf4 snd_dma_free_pages +EXPORT_SYMBOL sound/core/snd-page-alloc 0xdbcef269 snd_dma_get_reserved_buf +EXPORT_SYMBOL sound/core/snd-pcm 0x0283dfe3 _snd_pcm_hw_params_any +EXPORT_SYMBOL sound/core/snd-pcm 0x02a5b29e snd_pcm_release_substream +EXPORT_SYMBOL sound/core/snd-pcm 0x04cda566 snd_interval_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x0e473f89 snd_pcm_suspend_all +EXPORT_SYMBOL sound/core/snd-pcm 0x11febe3f snd_pcm_period_elapsed +EXPORT_SYMBOL sound/core/snd-pcm 0x1d027e4b snd_pcm_format_signed +EXPORT_SYMBOL sound/core/snd-pcm 0x1d397461 snd_pcm_hw_constraint_ratdens +EXPORT_SYMBOL sound/core/snd-pcm 0x1fe9d293 snd_pcm_hw_constraint_step +EXPORT_SYMBOL sound/core/snd-pcm 0x2123275a snd_pcm_suspend +EXPORT_SYMBOL sound/core/snd-pcm 0x24f120e3 snd_pcm_new +EXPORT_SYMBOL sound/core/snd-pcm 0x266caa03 snd_pcm_hw_constraint_ratnums +EXPORT_SYMBOL sound/core/snd-pcm 0x26a4345c snd_pcm_hw_rule_add +EXPORT_SYMBOL sound/core/snd-pcm 0x291f2ce6 snd_pcm_hw_constraint_msbits +EXPORT_SYMBOL sound/core/snd-pcm 0x2d517648 snd_pcm_hw_refine +EXPORT_SYMBOL sound/core/snd-pcm 0x2da6097a snd_pcm_limit_hw_rates +EXPORT_SYMBOL sound/core/snd-pcm 0x3531a788 snd_pcm_kernel_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x364f2079 snd_pcm_hw_constraint_pow2 +EXPORT_SYMBOL sound/core/snd-pcm 0x36c39d4e snd_pcm_lib_preallocate_free_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x3796bdcc snd_pcm_format_little_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x39b347f0 snd_pcm_lib_preallocate_pages_for_all +EXPORT_SYMBOL sound/core/snd-pcm 0x39bf9301 _snd_pcm_hw_param_setempty +EXPORT_SYMBOL sound/core/snd-pcm 0x3b6ad566 snd_pcm_lib_get_vmalloc_page +EXPORT_SYMBOL sound/core/snd-pcm 0x3c4850c8 snd_pcm_lib_free_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x3dc3047a snd_pcm_stop +EXPORT_SYMBOL sound/core/snd-pcm 0x4f816e9b snd_pcm_format_big_endian +EXPORT_SYMBOL sound/core/snd-pcm 0x52e3e4a5 snd_pcm_hw_param_value +EXPORT_SYMBOL sound/core/snd-pcm 0x5ad69040 snd_pcm_lib_ioctl +EXPORT_SYMBOL sound/core/snd-pcm 0x5e7f4920 snd_pcm_format_set_silence +EXPORT_SYMBOL sound/core/snd-pcm 0x650f8603 snd_pcm_format_silence_64 +EXPORT_SYMBOL sound/core/snd-pcm 0x65601f24 snd_pcm_set_ops +EXPORT_SYMBOL sound/core/snd-pcm 0x68a24153 snd_pcm_format_physical_width +EXPORT_SYMBOL sound/core/snd-pcm 0x68b2382c snd_pcm_lib_free_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0x69144e58 snd_pcm_set_sync +EXPORT_SYMBOL sound/core/snd-pcm 0x6ea13498 snd_pcm_lib_write +EXPORT_SYMBOL sound/core/snd-pcm 0x6ef8fcd8 snd_pcm_format_linear +EXPORT_SYMBOL sound/core/snd-pcm 0x7252e7dc snd_pcm_hw_param_first +EXPORT_SYMBOL sound/core/snd-pcm 0x72ea2aad snd_pcm_lib_writev +EXPORT_SYMBOL sound/core/snd-pcm 0x8045b49f snd_pcm_lib_malloc_pages +EXPORT_SYMBOL sound/core/snd-pcm 0x834dc955 snd_pcm_format_size +EXPORT_SYMBOL sound/core/snd-pcm 0x8615638f snd_pcm_lib_mmap_iomem +EXPORT_SYMBOL sound/core/snd-pcm 0x8686287d snd_pcm_hw_constraint_list +EXPORT_SYMBOL sound/core/snd-pcm 0x8e87a772 snd_pcm_debug_name +EXPORT_SYMBOL sound/core/snd-pcm 0x8ed22ed7 snd_pcm_mmap_data +EXPORT_SYMBOL sound/core/snd-pcm 0x92c29dea snd_pcm_open_substream +EXPORT_SYMBOL sound/core/snd-pcm 0x94098ff8 snd_interval_list +EXPORT_SYMBOL sound/core/snd-pcm 0xa61aa028 snd_pcm_format_unsigned +EXPORT_SYMBOL sound/core/snd-pcm 0xb344a788 snd_pcm_lib_readv +EXPORT_SYMBOL sound/core/snd-pcm 0xb9638db4 snd_pcm_rate_to_rate_bit +EXPORT_SYMBOL sound/core/snd-pcm 0xba8e57c7 snd_pcm_new_stream +EXPORT_SYMBOL sound/core/snd-pcm 0xc11eb970 snd_pcm_notify +EXPORT_SYMBOL sound/core/snd-pcm 0xc92c1af6 snd_pcm_lib_read +EXPORT_SYMBOL sound/core/snd-pcm 0xcff06787 snd_pcm_new_internal +EXPORT_SYMBOL sound/core/snd-pcm 0xd5fb21a2 snd_pcm_link_rwlock +EXPORT_SYMBOL sound/core/snd-pcm 0xdd9f14a0 snd_pcm_hw_rule_noresample +EXPORT_SYMBOL sound/core/snd-pcm 0xe56a9336 snd_pcm_format_width +EXPORT_SYMBOL sound/core/snd-pcm 0xeea862b4 snd_pcm_hw_param_last +EXPORT_SYMBOL sound/core/snd-pcm 0xf285957c snd_pcm_lib_preallocate_pages +EXPORT_SYMBOL sound/core/snd-pcm 0xf2f8e594 snd_pcm_hw_constraint_integer +EXPORT_SYMBOL sound/core/snd-pcm 0xf3797152 snd_interval_ratnum +EXPORT_SYMBOL sound/core/snd-pcm 0xf9a0f88d snd_pcm_hw_constraint_minmax +EXPORT_SYMBOL sound/core/snd-pcm 0xfa9c3443 _snd_pcm_lib_alloc_vmalloc_buffer +EXPORT_SYMBOL sound/core/snd-pcm 0xff6104d0 snd_pcm_rate_bit_to_rate +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0833e364 snd_rawmidi_transmit_peek +EXPORT_SYMBOL sound/core/snd-rawmidi 0x0da0f0b6 snd_rawmidi_output_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0x229eb194 snd_rawmidi_transmit_ack +EXPORT_SYMBOL sound/core/snd-rawmidi 0x3894c5c6 snd_rawmidi_transmit +EXPORT_SYMBOL sound/core/snd-rawmidi 0x48645052 snd_rawmidi_receive +EXPORT_SYMBOL sound/core/snd-rawmidi 0x796ee1ce snd_rawmidi_new +EXPORT_SYMBOL sound/core/snd-rawmidi 0x8df2f0a2 snd_rawmidi_kernel_release +EXPORT_SYMBOL sound/core/snd-rawmidi 0x919d28e4 snd_rawmidi_drop_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0xa3245f1f snd_rawmidi_drain_output +EXPORT_SYMBOL sound/core/snd-rawmidi 0xb2aa9e3e snd_rawmidi_drain_input +EXPORT_SYMBOL sound/core/snd-rawmidi 0xbf01ecc8 snd_rawmidi_kernel_open +EXPORT_SYMBOL sound/core/snd-rawmidi 0xcedad0b3 snd_rawmidi_transmit_empty +EXPORT_SYMBOL sound/core/snd-rawmidi 0xd32ac9cb snd_rawmidi_kernel_read +EXPORT_SYMBOL sound/core/snd-rawmidi 0xdab5185f snd_rawmidi_kernel_write +EXPORT_SYMBOL sound/core/snd-rawmidi 0xdfb0dfbe snd_rawmidi_input_params +EXPORT_SYMBOL sound/core/snd-rawmidi 0xe78688cf snd_rawmidi_set_ops +EXPORT_SYMBOL sound/core/snd-rawmidi 0xf983f307 snd_rawmidi_info_select +EXPORT_SYMBOL sound/core/snd-timer 0x048a358c snd_timer_start +EXPORT_SYMBOL sound/core/snd-timer 0x0e50156c snd_timer_close +EXPORT_SYMBOL sound/core/snd-timer 0x11aee977 snd_timer_interrupt +EXPORT_SYMBOL sound/core/snd-timer 0x33501f55 snd_timer_continue +EXPORT_SYMBOL sound/core/snd-timer 0x3d670908 snd_timer_notify +EXPORT_SYMBOL sound/core/snd-timer 0x5e47db67 snd_timer_new +EXPORT_SYMBOL sound/core/snd-timer 0x6c611e4c snd_timer_global_free +EXPORT_SYMBOL sound/core/snd-timer 0x86f248c3 snd_timer_pause +EXPORT_SYMBOL sound/core/snd-timer 0xb746c6b0 snd_timer_resolution +EXPORT_SYMBOL sound/core/snd-timer 0xca606627 snd_timer_open +EXPORT_SYMBOL sound/core/snd-timer 0xd81039c3 snd_timer_global_new +EXPORT_SYMBOL sound/core/snd-timer 0xe5ca5a76 snd_timer_global_register +EXPORT_SYMBOL sound/core/snd-timer 0xe89f36e9 snd_timer_stop +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0x6d629c59 snd_mpu401_uart_interrupt_tx +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xc0fec227 snd_mpu401_uart_interrupt +EXPORT_SYMBOL sound/drivers/mpu401/snd-mpu401-uart 0xed48434a snd_mpu401_uart_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x05060a19 snd_opl3_regmap +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x144c7304 snd_opl3_reset +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x2b5a73b9 snd_opl3_create +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x2de081e1 snd_opl3_init +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x3d720b32 snd_opl3_timer_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0x6ed33e76 snd_opl3_find_patch +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xada79a2a snd_opl3_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xb353729d snd_opl3_interrupt +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xdb81cabf snd_opl3_hwdep_new +EXPORT_SYMBOL sound/drivers/opl3/snd-opl3-lib 0xf11dcb1e snd_opl3_load_patch +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x14e0e3b6 snd_vx_dsp_load +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x17c07a3a snd_vx_setup_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x1a0897b1 snd_vx_suspend +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x5ca6bb20 snd_vx_check_reg_bit +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x77403a27 snd_vx_dsp_boot +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x7b08d5cb snd_vx_free_firmware +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0x9f96e42f snd_vx_create +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xaaf0248b snd_vx_load_boot_image +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xdbf96939 snd_vx_resume +EXPORT_SYMBOL sound/drivers/vx/snd-vx-lib 0xf1f04d23 snd_vx_irq_handler +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x05116332 cmp_connection_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x05a8fcbe iso_packets_buffer_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x06cbb7df amdtp_out_stream_pcm_abort +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x07179828 fw_iso_resources_allocate +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x0b6f7d0d amdtp_out_stream_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x0bb1060d cmp_connection_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x0f634ffe fw_iso_resources_free +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x20254e45 amdtp_syt_intervals +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x242ad3fb amdtp_out_stream_stop +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x31363d53 fw_iso_resources_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x32e441f3 snd_fw_transaction +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x39b28b5b amdtp_out_stream_pcm_prepare +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x434f8077 cmp_connection_break +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x5894ed79 fcp_bus_reset +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x762820ff iso_packets_buffer_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x797feb77 amdtp_out_stream_set_pcm_format +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x7d5c8a39 amdtp_out_stream_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x87d192a8 amdtp_out_stream_update +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0x93204c00 amdtp_out_stream_get_max_payload +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xa794ed4d amdtp_out_stream_start +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xbabcd65d amdtp_out_stream_set_parameters +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc030baa0 amdtp_out_stream_pcm_pointer +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xc4b9c81b cmp_connection_establish +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd02b0e6b fw_iso_resources_destroy +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xd5cf5eb3 fw_iso_resources_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xed3a43b1 cmp_connection_init +EXPORT_SYMBOL sound/firewire/snd-firewire-lib 0xf962abc9 fcp_avc_transaction +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x62c8440d snd_ak4114_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x800db2a8 snd_ak4114_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x871b5eba snd_ak4114_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x88140807 snd_ak4114_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0x9bba8083 snd_ak4114_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4114 0xb25e1ce1 snd_ak4114_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x1df8b0d6 snd_ak4117_build +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x4f32cf27 snd_ak4117_check_rate_and_errors +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x5399cce7 snd_ak4117_external_rate +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0x7a6f3d09 snd_ak4117_create +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xc336b741 snd_ak4117_reinit +EXPORT_SYMBOL sound/i2c/other/snd-ak4117 0xcba0394c snd_ak4117_reg_write +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x16967615 snd_akm4xxx_init +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x3055fbb8 snd_akm4xxx_reset +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0x9f40502e snd_akm4xxx_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-ak4xxx-adda 0xb34f44a4 snd_akm4xxx_write +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0x55f34fe7 snd_pt2258_build_controls +EXPORT_SYMBOL sound/i2c/other/snd-pt2258 0xf56d49ab snd_pt2258_reset +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x53895776 snd_cs8427_reg_write +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x6309d8ff snd_cs8427_iec958_pcm +EXPORT_SYMBOL sound/i2c/snd-cs8427 0x8a3860c5 snd_cs8427_iec958_active +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xa040a182 snd_cs8427_iec958_build +EXPORT_SYMBOL sound/i2c/snd-cs8427 0xac125e9c snd_cs8427_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x323f2bd3 snd_i2c_probeaddr +EXPORT_SYMBOL sound/i2c/snd-i2c 0x3b26604c snd_i2c_device_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x4e63321a snd_i2c_device_free +EXPORT_SYMBOL sound/i2c/snd-i2c 0x6f051022 snd_i2c_readbytes +EXPORT_SYMBOL sound/i2c/snd-i2c 0x76cf806a snd_i2c_bus_create +EXPORT_SYMBOL sound/i2c/snd-i2c 0x96c7c738 snd_i2c_sendbytes +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x02880e68 snd_sbmixer_add_ctl +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x03ea7593 snd_sbmixer_resume +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x22b7d279 snd_sbmixer_suspend +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x5fe0b7ae snd_sbmixer_read +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0x64e7bcdd snd_sbdsp_reset +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xa087525e snd_sbdsp_command +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xc3419523 snd_sbmixer_new +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xccdd481c snd_sbdsp_create +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xd396ec7b snd_sbmixer_write +EXPORT_SYMBOL sound/isa/sb/snd-sb-common 0xee94cdb4 snd_sbdsp_get_byte +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x1b4c6587 snd_sb16dsp_pcm +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0x7421b1fe snd_sb16dsp_configure +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xc813db79 snd_sb16dsp_get_pcm_ops +EXPORT_SYMBOL sound/isa/sb/snd-sb16-dsp 0xe0b3f690 snd_sb16dsp_interrupt +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x09d85f18 snd_ac97_pcm_open +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x10076194 snd_ac97_resume +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x1d78baff snd_ac97_write +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x53875c6e snd_ac97_update +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x5731bf61 snd_ac97_pcm_assign +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x57e0a340 snd_ac97_bus +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x6027792e snd_ac97_tune_hardware +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x8ac358ac snd_ac97_read +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0x9d6b9a7d snd_ac97_pcm_close +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xa1342d97 snd_ac97_write_cache +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xa2a2bfe3 snd_ac97_update_power +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xa35601b1 snd_ac97_set_rate +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xa5c1d08a snd_ac97_mixer +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xabfded1b snd_ac97_suspend +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xb3eb5c6e snd_ac97_pcm_double_rate_rules +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xda58bdf8 snd_ac97_update_bits +EXPORT_SYMBOL sound/pci/ac97/snd-ac97-codec 0xe0521825 snd_ac97_get_short_name +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x2007a9ef snd_emu10k1_synth_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x4d208041 snd_emu10k1_synth_copy_from_user +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x5bd84953 snd_emu10k1_voice_free +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x5c83fe05 snd_emu10k1_ptr_read +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x6b083524 snd_emu10k1_ptr_write +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0x9e78d51f snd_emu10k1_synth_bzero +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xa4ce4520 snd_emu10k1_synth_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xc7678056 snd_emu10k1_voice_alloc +EXPORT_SYMBOL sound/pci/emu10k1/snd-emu10k1 0xea3b253b snd_emu10k1_memblk_map +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0x98f58f20 snd_ice1712_akm4xxx_build_controls +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xaf830981 snd_ice1712_akm4xxx_init +EXPORT_SYMBOL sound/pci/ice1712/snd-ice17xx-ak4xxx 0xf7e4451a snd_ice1712_akm4xxx_free +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x02c1a6b1 oxygen_write8_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x08ea0bdb oxygen_read8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x0d86d491 oxygen_write32_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x27138bb0 oxygen_read16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x298eb2fd oxygen_pci_pm +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x35289252 oxygen_write_spi +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x3bac22c7 oxygen_write_i2c +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x3e320f5a oxygen_pci_shutdown +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x5219604e oxygen_read_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x562d1217 oxygen_reset_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x5d058c9f oxygen_write32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x5d6789a9 oxygen_pci_probe +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x63bb3813 oxygen_write_ac97_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x64ba2c17 oxygen_read32 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x6502a938 oxygen_write_ac97 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x69a0670f oxygen_write_uart +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x6fd9d9ea oxygen_write16 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0x9e2f0c1a oxygen_write8 +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xb53f8fa3 oxygen_write16_masked +EXPORT_SYMBOL sound/pci/oxygen/snd-oxygen-lib 0xe9886423 oxygen_pci_remove +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x31d1d6bf snd_trident_start_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x51d93ede snd_trident_write_voice_regs +EXPORT_SYMBOL sound/pci/trident/snd-trident 0x80faca20 snd_trident_free_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xb42e2a41 snd_trident_alloc_voice +EXPORT_SYMBOL sound/pci/trident/snd-trident 0xd4fed109 snd_trident_stop_voice +EXPORT_SYMBOL sound/soundcore 0x183f5577 sound_class +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x5f991eb8 snd_emux_register +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x63099734 snd_emux_free +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x655cb202 snd_sf_linear_to_log +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x6820e394 snd_emux_new +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0x7e62adec snd_emux_lock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xea112ee3 snd_emux_unlock_voice +EXPORT_SYMBOL sound/synth/emux/snd-emux-synth 0xf1cbcc36 snd_emux_terminate_all +EXPORT_SYMBOL sound/synth/snd-util-mem 0x02e89d6c snd_util_memhdr_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0x217a931b __snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x28fa0af7 snd_util_mem_alloc +EXPORT_SYMBOL sound/synth/snd-util-mem 0x4398c0ef __snd_util_memblk_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x57b4bead snd_util_memhdr_new +EXPORT_SYMBOL sound/synth/snd-util-mem 0x72dec1ef snd_util_mem_avail +EXPORT_SYMBOL sound/synth/snd-util-mem 0x9ea0b883 __snd_util_mem_free +EXPORT_SYMBOL sound/synth/snd-util-mem 0xfb4b1038 snd_util_mem_free +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x16756dc0 snd_usbmidi_input_start +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x63343b1d snd_usbmidi_input_stop +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0x861892c0 snd_usbmidi_create +EXPORT_SYMBOL sound/usb/snd-usbmidi-lib 0xd9d2bb03 snd_usbmidi_disconnect +EXPORT_SYMBOL vmlinux 0x00000000 __symbol_put +EXPORT_SYMBOL vmlinux 0x00000000 alloc_pages_current +EXPORT_SYMBOL vmlinux 0x00000000 current_fs_time +EXPORT_SYMBOL vmlinux 0x00000000 d_tmpfile +EXPORT_SYMBOL vmlinux 0x00000000 do_sync_read +EXPORT_SYMBOL vmlinux 0x00000000 filp_close +EXPORT_SYMBOL vmlinux 0x00000000 finish_open +EXPORT_SYMBOL vmlinux 0x00000000 generic_getxattr +EXPORT_SYMBOL vmlinux 0x00000000 generic_write_sync +EXPORT_SYMBOL vmlinux 0x00000000 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x00000000 in_group_p +EXPORT_SYMBOL vmlinux 0x00000000 inode_add_bytes +EXPORT_SYMBOL vmlinux 0x00000000 iov_shorten +EXPORT_SYMBOL vmlinux 0x00000000 iterate_fd +EXPORT_SYMBOL vmlinux 0x00000000 ns_capable +EXPORT_SYMBOL vmlinux 0x00000000 path_is_under +EXPORT_SYMBOL vmlinux 0x00000000 register_exec_domain +EXPORT_SYMBOL vmlinux 0x00000000 schedule_timeout +EXPORT_SYMBOL vmlinux 0x00000000 sock_register +EXPORT_SYMBOL vmlinux 0x00000000 sys_close +EXPORT_SYMBOL vmlinux 0x00000000 task_nice +EXPORT_SYMBOL vmlinux 0x00000000 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x00000000 vm_brk +EXPORT_SYMBOL vmlinux 0x0014812f scsi_reset_provider +EXPORT_SYMBOL vmlinux 0x0019ed59 textsearch_unregister +EXPORT_SYMBOL vmlinux 0x001c7ad3 blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0x004a5a41 skb_unlink +EXPORT_SYMBOL vmlinux 0x00585699 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x005a4975 cpu_possible_mask +EXPORT_SYMBOL vmlinux 0x00608a5d install_exec_creds +EXPORT_SYMBOL vmlinux 0x006decce generic_write_end +EXPORT_SYMBOL vmlinux 0x006e1415 skb_checksum +EXPORT_SYMBOL vmlinux 0x007b3485 d_rehash +EXPORT_SYMBOL vmlinux 0x00801678 flush_scheduled_work +EXPORT_SYMBOL vmlinux 0x0084cb9f tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0x00c491a6 __pci_enable_wake +EXPORT_SYMBOL vmlinux 0x00cf4a7f of_get_parent +EXPORT_SYMBOL vmlinux 0x00d68256 sock_no_listen +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x0122f95e _lv1_get_spe_irq_outlet +EXPORT_SYMBOL vmlinux 0x012a97fc xor_altivec_4 +EXPORT_SYMBOL vmlinux 0x01317f67 qdisc_destroy +EXPORT_SYMBOL vmlinux 0x0145dc73 cfb_fillrect +EXPORT_SYMBOL vmlinux 0x018d9919 _lv1_set_lpm_interrupt_mask +EXPORT_SYMBOL vmlinux 0x01902adf netpoll_trap +EXPORT_SYMBOL vmlinux 0x0190e990 mdiobus_read +EXPORT_SYMBOL vmlinux 0x01915c92 skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0x01967bd0 pci_bus_get +EXPORT_SYMBOL vmlinux 0x019e7765 __init_rwsem +EXPORT_SYMBOL vmlinux 0x01a7e02f i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0x01bfa288 crypto_sha1_update +EXPORT_SYMBOL vmlinux 0x01c8e84d ida_simple_get +EXPORT_SYMBOL vmlinux 0x01f54891 bio_integrity_endio +EXPORT_SYMBOL vmlinux 0x01f598e5 sock_from_file +EXPORT_SYMBOL vmlinux 0x020d18d7 _lv1_set_lpm_debug_bus_control +EXPORT_SYMBOL vmlinux 0x0214c9f7 dquot_commit_info +EXPORT_SYMBOL vmlinux 0x02157713 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0x022d8aeb xfrm_register_mode +EXPORT_SYMBOL vmlinux 0x023a074a hvc_get_chars +EXPORT_SYMBOL vmlinux 0x0241d42c wait_iff_congested +EXPORT_SYMBOL vmlinux 0x024c926b bio_reset +EXPORT_SYMBOL vmlinux 0x02649054 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x0271ea07 d_add_ci +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x027d5499 _lv1_did_update_interrupt_mask +EXPORT_SYMBOL vmlinux 0x028407b1 netif_skb_dev_features +EXPORT_SYMBOL vmlinux 0x02937a9e kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a6ce5a crc16_table +EXPORT_SYMBOL vmlinux 0x02a95c8c mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x02d55ab7 path_get +EXPORT_SYMBOL vmlinux 0x02dbb648 blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x02f39daf __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x031dc65e pasemi_dma_free_chan +EXPORT_SYMBOL vmlinux 0x031e6d78 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x032ed10d pipe_lock +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x03592ea0 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x03611485 swiotlb_dma_supported +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x03772975 tty_schedule_flip +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x037c9594 ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x037d59ff tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0x0384d009 commit_creds +EXPORT_SYMBOL vmlinux 0x03c06156 bitmap_fold +EXPORT_SYMBOL vmlinux 0x03d85362 datagram_poll +EXPORT_SYMBOL vmlinux 0x03ebda85 dns_query +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x04074f48 ioremap +EXPORT_SYMBOL vmlinux 0x04097127 put_disk +EXPORT_SYMBOL vmlinux 0x040a33f9 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0x041270cf vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0x0422fe4a inet_csk_timer_bug_msg +EXPORT_SYMBOL vmlinux 0x0440a533 _lv1_net_remove_multicast_address +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x0454c99c tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x04802a18 get_task_io_context +EXPORT_SYMBOL vmlinux 0x0483ba8f km_state_expired +EXPORT_SYMBOL vmlinux 0x048697fb blk_queue_end_tag +EXPORT_SYMBOL vmlinux 0x0487f831 fb_find_best_display +EXPORT_SYMBOL vmlinux 0x048d27cc hvcs_register_connection +EXPORT_SYMBOL vmlinux 0x04ad5cf4 sk_receive_skb +EXPORT_SYMBOL vmlinux 0x04e07572 d_alloc +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04ea5d10 ksize +EXPORT_SYMBOL vmlinux 0x04f341c5 __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0x04f812f8 skb_pad +EXPORT_SYMBOL vmlinux 0x04fa1ea4 bio_integrity_advance +EXPORT_SYMBOL vmlinux 0x050361b0 dcache_dir_close +EXPORT_SYMBOL vmlinux 0x050ec289 set_disk_ro +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x0530dede _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x0540b32a cpu_core_map +EXPORT_SYMBOL vmlinux 0x054434d6 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x0551bc4d mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x055c8559 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x0563a0b9 bitmap_startwrite +EXPORT_SYMBOL vmlinux 0x05882405 udp_proc_register +EXPORT_SYMBOL vmlinux 0x05916690 fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0x05932ecf generic_show_options +EXPORT_SYMBOL vmlinux 0x0593a99b init_timer_key +EXPORT_SYMBOL vmlinux 0x05972d97 lro_receive_skb +EXPORT_SYMBOL vmlinux 0x05a514a1 _insl_ns +EXPORT_SYMBOL vmlinux 0x05acbbdd tty_free_termios +EXPORT_SYMBOL vmlinux 0x05b94ba0 xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0x05bc7c2b blk_fetch_request +EXPORT_SYMBOL vmlinux 0x05c3b067 kern_unmount +EXPORT_SYMBOL vmlinux 0x05e55b12 inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0x0615e334 tcf_action_exec +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x062db51e unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x06456aff _lv1_get_virtual_address_space_id_of_ppe +EXPORT_SYMBOL vmlinux 0x06609ecc scsi_device_get +EXPORT_SYMBOL vmlinux 0x06725231 sys_copyarea +EXPORT_SYMBOL vmlinux 0x06797871 vm_stat +EXPORT_SYMBOL vmlinux 0x067d8d35 security_release_secctx +EXPORT_SYMBOL vmlinux 0x068b9cd3 tty_unregister_device +EXPORT_SYMBOL vmlinux 0x06a19908 blk_init_queue +EXPORT_SYMBOL vmlinux 0x06ae2da2 generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x06bbb24a mempool_resize +EXPORT_SYMBOL vmlinux 0x06c1b7d0 read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x06c58943 mb_cache_create +EXPORT_SYMBOL vmlinux 0x06cff3f8 tty_port_tty_get +EXPORT_SYMBOL vmlinux 0x06d051ba proc_mkdir +EXPORT_SYMBOL vmlinux 0x06f2f0c8 textsearch_prepare +EXPORT_SYMBOL vmlinux 0x06fe3b14 default_grn +EXPORT_SYMBOL vmlinux 0x0705469e skb_push +EXPORT_SYMBOL vmlinux 0x071355a9 remove_arg_zero +EXPORT_SYMBOL vmlinux 0x0727c4f3 iowrite8 +EXPORT_SYMBOL vmlinux 0x072af420 xfrm_prepare_input +EXPORT_SYMBOL vmlinux 0x073bf766 iget5_locked +EXPORT_SYMBOL vmlinux 0x074e9213 down_killable +EXPORT_SYMBOL vmlinux 0x075283ec remap_pfn_range +EXPORT_SYMBOL vmlinux 0x075e5e19 neigh_seq_stop +EXPORT_SYMBOL vmlinux 0x07648357 pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0x077c2d6f dev_get_by_name +EXPORT_SYMBOL vmlinux 0x078c18b0 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0x078c66e2 pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0x0795b87f jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0x0796009f devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0x0799aca4 local_bh_enable +EXPORT_SYMBOL vmlinux 0x07a0eec8 check_submounts_and_drop +EXPORT_SYMBOL vmlinux 0x07a3cafa tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0x07a58b25 fsnotify_init_mark +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07cf2534 serio_open +EXPORT_SYMBOL vmlinux 0x07ea7bc0 generic_permission +EXPORT_SYMBOL vmlinux 0x07ef213a pasemi_dma_free_fun +EXPORT_SYMBOL vmlinux 0x07f8ee15 _lv1_unmap_device_dma_region +EXPORT_SYMBOL vmlinux 0x07fc0110 n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x082df6f8 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0x083c2cbe of_get_next_parent +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x08463c65 alloc_fddidev +EXPORT_SYMBOL vmlinux 0x08493803 tty_unlock_pair +EXPORT_SYMBOL vmlinux 0x0851a17a dm_unregister_target +EXPORT_SYMBOL vmlinux 0x08570485 generic_pipe_buf_confirm +EXPORT_SYMBOL vmlinux 0x08ae7645 genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0x08da237d set_create_files_as +EXPORT_SYMBOL vmlinux 0x08f0a0e5 twl6040_set_pll +EXPORT_SYMBOL vmlinux 0x090aee5b vfs_create +EXPORT_SYMBOL vmlinux 0x09351a0c netlink_set_err +EXPORT_SYMBOL vmlinux 0x093e72aa blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0x096341c2 _lv1_connect_irq_plug_ext +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x098c2748 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0x09936ee4 i2c_clients_command +EXPORT_SYMBOL vmlinux 0x099b3bdc page_follow_link_light +EXPORT_SYMBOL vmlinux 0x09c55cec schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09e63813 inode_capable +EXPORT_SYMBOL vmlinux 0x09ebe23e migrate_page +EXPORT_SYMBOL vmlinux 0x0a162be9 pid_task +EXPORT_SYMBOL vmlinux 0x0a2487e0 unblock_all_signals +EXPORT_SYMBOL vmlinux 0x0a24b41d fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0x0a3d0644 cpu_online_mask +EXPORT_SYMBOL vmlinux 0x0a3f0537 ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0x0a5a4131 account_page_dirtied +EXPORT_SYMBOL vmlinux 0x0a770832 register_memory_notifier +EXPORT_SYMBOL vmlinux 0x0a7793a4 ip_check_defrag +EXPORT_SYMBOL vmlinux 0x0a9f8b11 agp_generic_destroy_pages +EXPORT_SYMBOL vmlinux 0x0aaca72b backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x0ab5b5ed md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0x0acb1a3c __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0adece23 d_instantiate_no_diralias +EXPORT_SYMBOL vmlinux 0x0af36674 security_path_chmod +EXPORT_SYMBOL vmlinux 0x0b0d888b icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0x0b10bd75 dquot_quotactl_ops +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b2e1ec7 h_get_mpp +EXPORT_SYMBOL vmlinux 0x0b3a93ba seq_bitmap +EXPORT_SYMBOL vmlinux 0x0b3e38d6 inet_frag_find +EXPORT_SYMBOL vmlinux 0x0b44b2db dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0x0b56117f of_find_node_by_path +EXPORT_SYMBOL vmlinux 0x0b5c67db blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0x0b62c6a4 __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b799edd tcp_parse_options +EXPORT_SYMBOL vmlinux 0x0b7ac7c8 nf_reinject +EXPORT_SYMBOL vmlinux 0x0b90f184 __quota_error +EXPORT_SYMBOL vmlinux 0x0ba0a5fd gen10g_suspend +EXPORT_SYMBOL vmlinux 0x0bb8b539 gen10g_resume +EXPORT_SYMBOL vmlinux 0x0bbc5908 gen_estimator_active +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bc9dee6 giveup_fpu +EXPORT_SYMBOL vmlinux 0x0bfb0db1 vio_find_node +EXPORT_SYMBOL vmlinux 0x0c1ad162 _lv1_net_start_rx_dma +EXPORT_SYMBOL vmlinux 0x0c3cc5f1 read_cache_page +EXPORT_SYMBOL vmlinux 0x0c45fc96 vfs_lstat +EXPORT_SYMBOL vmlinux 0x0c4c2437 get_tz_trend +EXPORT_SYMBOL vmlinux 0x0c57d812 jbd2_journal_file_inode +EXPORT_SYMBOL vmlinux 0x0c58a8cd netdev_increment_features +EXPORT_SYMBOL vmlinux 0x0c65e73c scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0x0c6da60f kernel_write +EXPORT_SYMBOL vmlinux 0x0c8c9b69 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0x0c8c9e99 scsi_show_extd_sense +EXPORT_SYMBOL vmlinux 0x0c93ae57 pm860x_set_bits +EXPORT_SYMBOL vmlinux 0x0ca0c882 twl6030_interrupt_mask +EXPORT_SYMBOL vmlinux 0x0ca9879e dev_driver_string +EXPORT_SYMBOL vmlinux 0x0cae232b utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0x0cdb91a0 security_mmap_file +EXPORT_SYMBOL vmlinux 0x0ce900af blk_finish_plug +EXPORT_SYMBOL vmlinux 0x0ceca0f5 abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0x0d032c94 __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x0d082f33 seq_release_private +EXPORT_SYMBOL vmlinux 0x0d13de2b dev_uc_sync +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d674a53 vc_resize +EXPORT_SYMBOL vmlinux 0x0d6c963c copy_from_user +EXPORT_SYMBOL vmlinux 0x0d7e6e98 agp_generic_create_gatt_table +EXPORT_SYMBOL vmlinux 0x0d8807d7 dma_async_memcpy_buf_to_buf +EXPORT_SYMBOL vmlinux 0x0d8cb31e devm_gpio_request +EXPORT_SYMBOL vmlinux 0x0da10ec3 security_sock_graft +EXPORT_SYMBOL vmlinux 0x0dbef12e input_unregister_handler +EXPORT_SYMBOL vmlinux 0x0dc2de8e inc_nlink +EXPORT_SYMBOL vmlinux 0x0e52a463 done_path_create +EXPORT_SYMBOL vmlinux 0x0e6da44a set_normalized_timespec +EXPORT_SYMBOL vmlinux 0x0e8f30f6 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x0ea29d34 blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0x0ea67b47 seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x0ecb115e unregister_qdisc +EXPORT_SYMBOL vmlinux 0x0efc8207 led_blink_set +EXPORT_SYMBOL vmlinux 0x0efcbb1b set_current_groups +EXPORT_SYMBOL vmlinux 0x0f155546 scsi_ioctl +EXPORT_SYMBOL vmlinux 0x0f2a6444 netdev_master_upper_dev_link_private +EXPORT_SYMBOL vmlinux 0x0f36c7c9 touch_buffer +EXPORT_SYMBOL vmlinux 0x0f4c91ed ns_to_timespec +EXPORT_SYMBOL vmlinux 0x0f4e2e8f dquot_release +EXPORT_SYMBOL vmlinux 0x0f5faa7e wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x0f8071bd mutex_lock_killable +EXPORT_SYMBOL vmlinux 0x0f83382e udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0x0f94fb0c xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fc4967c xfrm_unregister_mode +EXPORT_SYMBOL vmlinux 0x0fdabe32 skb_copy_datagram_iovec +EXPORT_SYMBOL vmlinux 0x0fe14593 may_umount_tree +EXPORT_SYMBOL vmlinux 0x0ff04be9 sock_update_memcg +EXPORT_SYMBOL vmlinux 0x1019e90f sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0x1037b359 nf_unregister_hook +EXPORT_SYMBOL vmlinux 0x10613800 macio_request_resource +EXPORT_SYMBOL vmlinux 0x107d1b47 dev_alloc_name +EXPORT_SYMBOL vmlinux 0x109132fe bdi_init +EXPORT_SYMBOL vmlinux 0x10a62582 register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x10ade9a9 invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x10b187ec xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0x10b59b88 vio_enable_interrupts +EXPORT_SYMBOL vmlinux 0x10e0f36c ps2_handle_response +EXPORT_SYMBOL vmlinux 0x10ee20bb default_blu +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x1109ebca account_page_redirty +EXPORT_SYMBOL vmlinux 0x1112762c alloc_disk_node +EXPORT_SYMBOL vmlinux 0x1123620c mmc_add_host +EXPORT_SYMBOL vmlinux 0x11267875 scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0x113eafe5 pci_map_rom +EXPORT_SYMBOL vmlinux 0x115256d5 uart_register_driver +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x116d8b64 __ps2_command +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x1171b635 _lv1_delete_lpm_event_bookmark +EXPORT_SYMBOL vmlinux 0x1182d83a cpuidle_disable +EXPORT_SYMBOL vmlinux 0x11a39f9c kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x11a3be40 phy_attach_direct +EXPORT_SYMBOL vmlinux 0x11b5899c i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0x11b7ac7d devm_gpio_free +EXPORT_SYMBOL vmlinux 0x11c9185c of_iomap +EXPORT_SYMBOL vmlinux 0x11d7e7d1 gen10g_config_advert +EXPORT_SYMBOL vmlinux 0x11de9e2c kmem_cache_alloc_node_trace +EXPORT_SYMBOL vmlinux 0x11eaa53a tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x120d67d4 unregister_memory_isolate_notifier +EXPORT_SYMBOL vmlinux 0x120f9ca5 key_invalidate +EXPORT_SYMBOL vmlinux 0x122043a8 of_find_node_with_property +EXPORT_SYMBOL vmlinux 0x1262ae7a seq_open +EXPORT_SYMBOL vmlinux 0x126f864f eth_mac_addr +EXPORT_SYMBOL vmlinux 0x1273d52d fsnotify_alloc_group +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12b275c8 abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0x12ba0d84 vio_unregister_driver +EXPORT_SYMBOL vmlinux 0x12bbf141 scsi_prep_return +EXPORT_SYMBOL vmlinux 0x12cb6622 _lv1_map_device_dma_region +EXPORT_SYMBOL vmlinux 0x12dfeb12 vprintk_emit +EXPORT_SYMBOL vmlinux 0x12e5ef0c rtas_set_power_level +EXPORT_SYMBOL vmlinux 0x1302fa8e tty_unlock +EXPORT_SYMBOL vmlinux 0x1321e479 netdev_features_change +EXPORT_SYMBOL vmlinux 0x1329bc8b unregister_md_personality +EXPORT_SYMBOL vmlinux 0x13307fde vsscanf +EXPORT_SYMBOL vmlinux 0x1333af4f devm_gpio_request_one +EXPORT_SYMBOL vmlinux 0x133e4443 mach_maple +EXPORT_SYMBOL vmlinux 0x13444bb4 uart_update_timeout +EXPORT_SYMBOL vmlinux 0x1348760d ipmi_request_settime +EXPORT_SYMBOL vmlinux 0x1348cd13 xfrm_state_update +EXPORT_SYMBOL vmlinux 0x13660750 scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0x136cd766 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0x13732a54 pmac_suspend_agp_for_card +EXPORT_SYMBOL vmlinux 0x1389b201 generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0x139132a1 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0x1392b52a sock_edemux +EXPORT_SYMBOL vmlinux 0x13991dae jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0x13affbda percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13de755e freezing_slow_path +EXPORT_SYMBOL vmlinux 0x13e38f5c up_read +EXPORT_SYMBOL vmlinux 0x13e531a8 input_release_device +EXPORT_SYMBOL vmlinux 0x13f42152 system_entering_hibernation +EXPORT_SYMBOL vmlinux 0x13f53da6 CMO_PageSize +EXPORT_SYMBOL vmlinux 0x14030ce4 pci_scan_bus +EXPORT_SYMBOL vmlinux 0x141fe5fd pasemi_read_iob_reg +EXPORT_SYMBOL vmlinux 0x142950b7 neigh_seq_start +EXPORT_SYMBOL vmlinux 0x142a4b44 lro_flush_all +EXPORT_SYMBOL vmlinux 0x143b010a pcie_set_readrq +EXPORT_SYMBOL vmlinux 0x143d4143 vsc824x_add_skew +EXPORT_SYMBOL vmlinux 0x14597ea3 inet_shutdown +EXPORT_SYMBOL vmlinux 0x148a969c dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0x149687d1 vfs_statfs +EXPORT_SYMBOL vmlinux 0x14a14817 pSeries_enable_reloc_on_exc +EXPORT_SYMBOL vmlinux 0x14fc67cb cad_pid +EXPORT_SYMBOL vmlinux 0x15082488 blk_get_queue +EXPORT_SYMBOL vmlinux 0x151592c4 _lv1_invalidate_htab_entries +EXPORT_SYMBOL vmlinux 0x15247e28 simple_setattr +EXPORT_SYMBOL vmlinux 0x154b4f0f misc_register +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x1551dc51 bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x1571e5c8 sock_rfree +EXPORT_SYMBOL vmlinux 0x15864b03 flex_array_get +EXPORT_SYMBOL vmlinux 0x1586d19f fsync_bdev +EXPORT_SYMBOL vmlinux 0x158f08b7 open_exec +EXPORT_SYMBOL vmlinux 0x15970636 skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0x1599f603 __blk_end_request_all +EXPORT_SYMBOL vmlinux 0x15a32d20 tty_lock_pair +EXPORT_SYMBOL vmlinux 0x15d29744 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x15d38358 ppp_dev_name +EXPORT_SYMBOL vmlinux 0x15d3fd60 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x15f571ec blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0x160bd45c rtas_token +EXPORT_SYMBOL vmlinux 0x160ef995 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0x161ab851 jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0x162f3c6d inode_dio_wait +EXPORT_SYMBOL vmlinux 0x1642c486 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0x16503ca4 sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x167c5967 print_hex_dump +EXPORT_SYMBOL vmlinux 0x16a142ec compat_sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x16b7e5e2 scsi_print_result +EXPORT_SYMBOL vmlinux 0x16d0aafd buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0x16dcec76 ipmi_set_my_address +EXPORT_SYMBOL vmlinux 0x16e0405b dentry_open +EXPORT_SYMBOL vmlinux 0x17096618 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x17256f57 blk_recount_segments +EXPORT_SYMBOL vmlinux 0x1743414f __debugger_fault_handler +EXPORT_SYMBOL vmlinux 0x17648396 dev_base_lock +EXPORT_SYMBOL vmlinux 0x1782562d fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0x17a0aa7d add_disk +EXPORT_SYMBOL vmlinux 0x17aebdbd blk_complete_request +EXPORT_SYMBOL vmlinux 0x17b1125d gen_kill_estimator +EXPORT_SYMBOL vmlinux 0x17be2c4b zero_fill_bio +EXPORT_SYMBOL vmlinux 0x17cb8c79 _lv1_read_htab_entries +EXPORT_SYMBOL vmlinux 0x17e28473 fsl_upm_run_pattern +EXPORT_SYMBOL vmlinux 0x17eabf06 skb_seq_read +EXPORT_SYMBOL vmlinux 0x17f341a0 i8042_lock_chip +EXPORT_SYMBOL vmlinux 0x17fabe40 dev_deactivate +EXPORT_SYMBOL vmlinux 0x17fd5f34 tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0x17ff67d3 max8925_bulk_write +EXPORT_SYMBOL vmlinux 0x180b7103 tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0x180df53c skb_queue_tail +EXPORT_SYMBOL vmlinux 0x18180393 kern_path_create +EXPORT_SYMBOL vmlinux 0x182f50af _lv1_open_device +EXPORT_SYMBOL vmlinux 0x183fa88b mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0x184b82fb mmc_vddrange_to_ocrmask +EXPORT_SYMBOL vmlinux 0x184e6c85 radix_tree_gang_lookup_slot +EXPORT_SYMBOL vmlinux 0x1857aa39 proc_dointvec +EXPORT_SYMBOL vmlinux 0x185c9b7d mmc_align_data_size +EXPORT_SYMBOL vmlinux 0x186d23d4 blk_mq_map_queue +EXPORT_SYMBOL vmlinux 0x1873d2db cancel_dirty_page +EXPORT_SYMBOL vmlinux 0x188a3dfb timespec_trunc +EXPORT_SYMBOL vmlinux 0x188b4bdd put_tty_driver +EXPORT_SYMBOL vmlinux 0x189868d7 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x18c98205 _lv1_destruct_virtual_address_space +EXPORT_SYMBOL vmlinux 0x18d17df9 xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0x18e09d42 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0x18ff54bf try_module_get +EXPORT_SYMBOL vmlinux 0x190abf50 __scsi_put_command +EXPORT_SYMBOL vmlinux 0x19111a40 lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x1923fac3 mach_pasemi +EXPORT_SYMBOL vmlinux 0x193e78d2 xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x19444627 memcpy_fromiovecend +EXPORT_SYMBOL vmlinux 0x19540550 zerocopy_sg_from_iovec +EXPORT_SYMBOL vmlinux 0x19667517 i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x196b530b handle_edge_irq +EXPORT_SYMBOL vmlinux 0x199ec4fb arch_spin_unlock_wait +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19c968d1 pasemi_dma_start_chan +EXPORT_SYMBOL vmlinux 0x19eee909 mmc_interrupt_hpi +EXPORT_SYMBOL vmlinux 0x1a10c898 ipmi_set_maintenance_mode +EXPORT_SYMBOL vmlinux 0x1a111a41 ftrace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x1a2f6945 __next_cpu +EXPORT_SYMBOL vmlinux 0x1a33bc23 sk_release_kernel +EXPORT_SYMBOL vmlinux 0x1a73b3f4 tcf_em_register +EXPORT_SYMBOL vmlinux 0x1a91663d pasemi_dma_free_buf +EXPORT_SYMBOL vmlinux 0x1a960fbb netif_rx_ni +EXPORT_SYMBOL vmlinux 0x1aada707 xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x1ab284ae xfrm4_rcv +EXPORT_SYMBOL vmlinux 0x1aba5db8 ipmi_unregister_smi +EXPORT_SYMBOL vmlinux 0x1ac5d3cb strcspn +EXPORT_SYMBOL vmlinux 0x1acb5d40 dscr_default +EXPORT_SYMBOL vmlinux 0x1ace138d bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0x1ad80cea __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x1af62a99 panic_notifier_list +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b132009 rename_lock +EXPORT_SYMBOL vmlinux 0x1b1e1088 sg_nents +EXPORT_SYMBOL vmlinux 0x1b3f09ac security_path_chown +EXPORT_SYMBOL vmlinux 0x1b4843c6 fb_set_cmap +EXPORT_SYMBOL vmlinux 0x1b579f11 blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b82fefa md_unplug +EXPORT_SYMBOL vmlinux 0x1b8b95ad i8042_unlock_chip +EXPORT_SYMBOL vmlinux 0x1b8cb6d8 bdget +EXPORT_SYMBOL vmlinux 0x1b98d8a8 tcp_syn_flood_action +EXPORT_SYMBOL vmlinux 0x1b9e0ff1 scsilun_to_int +EXPORT_SYMBOL vmlinux 0x1bb0c3d3 netdev_state_change +EXPORT_SYMBOL vmlinux 0x1bba6f9a swiotlb_alloc_coherent +EXPORT_SYMBOL vmlinux 0x1bba9e67 scsi_remove_target +EXPORT_SYMBOL vmlinux 0x1bc4ff03 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0x1bdc26cf sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x1bfca1fd tcp_proc_register +EXPORT_SYMBOL vmlinux 0x1bfec830 __iounmap_at +EXPORT_SYMBOL vmlinux 0x1c200a7d pasemi_dma_stop_chan +EXPORT_SYMBOL vmlinux 0x1c37017d inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x1c3e02e4 memcmp +EXPORT_SYMBOL vmlinux 0x1c4dab93 _lv1_connect_irq_plug +EXPORT_SYMBOL vmlinux 0x1c5b2c15 pmu_wait_complete +EXPORT_SYMBOL vmlinux 0x1c6d4712 fb_validate_mode +EXPORT_SYMBOL vmlinux 0x1c7a1591 generic_file_llseek +EXPORT_SYMBOL vmlinux 0x1c7dcd98 udp_del_offload +EXPORT_SYMBOL vmlinux 0x1c80de9c ip_send_check +EXPORT_SYMBOL vmlinux 0x1c999d7e ipv4_specific +EXPORT_SYMBOL vmlinux 0x1c9a3cc9 fasync_helper +EXPORT_SYMBOL vmlinux 0x1c9a6fdb mmc_read_bkops_status +EXPORT_SYMBOL vmlinux 0x1cb7babd padata_do_parallel +EXPORT_SYMBOL vmlinux 0x1ccaa77b bio_integrity_tag_size +EXPORT_SYMBOL vmlinux 0x1ccda131 seq_write +EXPORT_SYMBOL vmlinux 0x1cda30d0 ps3_dma_region_init +EXPORT_SYMBOL vmlinux 0x1cdb8664 check_disk_size_change +EXPORT_SYMBOL vmlinux 0x1d1e86c1 get_super +EXPORT_SYMBOL vmlinux 0x1d367b22 security_path_rmdir +EXPORT_SYMBOL vmlinux 0x1d4750bc _lv1_stop_lpm +EXPORT_SYMBOL vmlinux 0x1d6cf86d register_md_personality +EXPORT_SYMBOL vmlinux 0x1d7494b4 mmc_register_driver +EXPORT_SYMBOL vmlinux 0x1d7663f9 ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x1d8ec012 abx500_remove_ops +EXPORT_SYMBOL vmlinux 0x1da0a439 twl6040_reg_write +EXPORT_SYMBOL vmlinux 0x1da54847 xfrm_user_policy +EXPORT_SYMBOL vmlinux 0x1daee28a percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0x1db271fc powerpc_debugfs_root +EXPORT_SYMBOL vmlinux 0x1dbc4d0c proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x1dbc6497 __frontswap_load +EXPORT_SYMBOL vmlinux 0x1dbd8a52 genl_unregister_family +EXPORT_SYMBOL vmlinux 0x1dc36131 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0x1dc59774 elevator_alloc +EXPORT_SYMBOL vmlinux 0x1dcc5d69 ipmi_get_smi_info +EXPORT_SYMBOL vmlinux 0x1dd0c28c ps3_sb_event_receive_port_setup +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1dea9e05 genphy_read_status +EXPORT_SYMBOL vmlinux 0x1e26af59 mmc_gpio_free_cd +EXPORT_SYMBOL vmlinux 0x1e26be3b get_anon_bdev +EXPORT_SYMBOL vmlinux 0x1e2bdccb sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x1e3ecb0a bio_flush_dcache_pages +EXPORT_SYMBOL vmlinux 0x1e47e925 pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e71cccc scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0x1e84e3fb __scsi_add_device +EXPORT_SYMBOL vmlinux 0x1e8bd089 __ww_mutex_lock +EXPORT_SYMBOL vmlinux 0x1e95eb21 d_find_alias +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ec3bed9 hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0x1ed0c83e elv_add_request +EXPORT_SYMBOL vmlinux 0x1edd0965 gen10g_config_aneg +EXPORT_SYMBOL vmlinux 0x1f0d4be4 i2c_add_adapter +EXPORT_SYMBOL vmlinux 0x1f190d3a set_security_override +EXPORT_SYMBOL vmlinux 0x1f4db45a mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x1f4e5792 force_sig +EXPORT_SYMBOL vmlinux 0x1f6ce67a sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x1faa1ca4 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0x1fb64f32 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0x1fb84504 devm_gpiod_put +EXPORT_SYMBOL vmlinux 0x1fb9f7d4 ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fc2d908 dma_sync_wait +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fe565a3 vfs_write +EXPORT_SYMBOL vmlinux 0x1fe7b4ab pasemi_write_dma_reg +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1fe9f800 unregister_cpu_notifier +EXPORT_SYMBOL vmlinux 0x1fedf0f4 __request_region +EXPORT_SYMBOL vmlinux 0x1ff6e1e8 xfrm_register_km +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x201494ee _lv1_net_set_interrupt_mask +EXPORT_SYMBOL vmlinux 0x201ce89f dev_change_carrier +EXPORT_SYMBOL vmlinux 0x202cff26 netif_napi_add +EXPORT_SYMBOL vmlinux 0x20415257 filemap_fdatawait +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x205bb99b input_set_capability +EXPORT_SYMBOL vmlinux 0x205f2c2d __cleancache_get_page +EXPORT_SYMBOL vmlinux 0x206b5442 nla_append +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x2080be8e uart_resume_port +EXPORT_SYMBOL vmlinux 0x2080c819 pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0x209f6357 audit_log_start +EXPORT_SYMBOL vmlinux 0x20a06b22 agp3_generic_tlbflush +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20a86b3f of_get_pci_address +EXPORT_SYMBOL vmlinux 0x20ae2397 scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x20b2bb2d param_array_ops +EXPORT_SYMBOL vmlinux 0x20b5e29f scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0x20c55ae0 sscanf +EXPORT_SYMBOL vmlinux 0x20d56ff6 netdev_notice +EXPORT_SYMBOL vmlinux 0x20eff8eb tcp_close +EXPORT_SYMBOL vmlinux 0x20f3bf40 set_anon_super +EXPORT_SYMBOL vmlinux 0x212eeff7 mpage_readpages +EXPORT_SYMBOL vmlinux 0x2132c8a2 skb_checksum_help +EXPORT_SYMBOL vmlinux 0x213603bf pasemi_dma_free_ring +EXPORT_SYMBOL vmlinux 0x21480a2b inode_dio_done +EXPORT_SYMBOL vmlinux 0x215ebd78 bitrev16 +EXPORT_SYMBOL vmlinux 0x216d2e8f inet_recvmsg +EXPORT_SYMBOL vmlinux 0x216eaaa7 mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0x21779491 tty_port_close_end +EXPORT_SYMBOL vmlinux 0x21a3f41d phy_drivers_register +EXPORT_SYMBOL vmlinux 0x21c69898 pneigh_enqueue +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x225ebee6 _lv1_destruct_lpm +EXPORT_SYMBOL vmlinux 0x2261c526 __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0x22660030 netdev_info +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x2278e94b slhc_remember +EXPORT_SYMBOL vmlinux 0x22afa969 inetdev_by_index +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22c7a375 splice_from_pipe_end +EXPORT_SYMBOL vmlinux 0x22ca5396 neigh_parms_release +EXPORT_SYMBOL vmlinux 0x22d080ef blk_queue_prep_rq +EXPORT_SYMBOL vmlinux 0x22e50a01 input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0x22e7cd3b max8998_bulk_read +EXPORT_SYMBOL vmlinux 0x2301bc7a dev_activate +EXPORT_SYMBOL vmlinux 0x231d4001 fb_edid_add_monspecs +EXPORT_SYMBOL vmlinux 0x232459d0 tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x23314772 dma_async_memcpy_pg_to_pg +EXPORT_SYMBOL vmlinux 0x233917d1 mac_vmode_to_var +EXPORT_SYMBOL vmlinux 0x234225db generic_listxattr +EXPORT_SYMBOL vmlinux 0x235e90f3 __wake_up_bit +EXPORT_SYMBOL vmlinux 0x23678f93 pci_alloc_dev +EXPORT_SYMBOL vmlinux 0x2368e5d6 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x237d0062 tcp_init_cgroup +EXPORT_SYMBOL vmlinux 0x23a2425e freeze_super +EXPORT_SYMBOL vmlinux 0x23a574fd security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23be9019 pci_iomap +EXPORT_SYMBOL vmlinux 0x23c9891c kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x23dc0b76 unlock_buffer +EXPORT_SYMBOL vmlinux 0x23e468e1 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0x23f2243d mempool_free +EXPORT_SYMBOL vmlinux 0x23fb2577 swiotlb_sync_single_for_device +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x241743fc phy_find_first +EXPORT_SYMBOL vmlinux 0x241f067f kthread_bind +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x242b3b94 ps2_end_command +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x244a2411 __first_cpu +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x245a5a94 sleep_on_timeout +EXPORT_SYMBOL vmlinux 0x24671abc blk_mq_end_io +EXPORT_SYMBOL vmlinux 0x247fdf56 sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0x2482e688 vsprintf +EXPORT_SYMBOL vmlinux 0x2484adc3 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0x2489750e __register_chrdev +EXPORT_SYMBOL vmlinux 0x24afe182 ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x24b30e2a tty_hangup +EXPORT_SYMBOL vmlinux 0x24bb2e4f blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0x24c17367 kernel_connect +EXPORT_SYMBOL vmlinux 0x24cfd438 _lv1_copy_lpm_trace_buffer +EXPORT_SYMBOL vmlinux 0x24d2428a sock_init_data +EXPORT_SYMBOL vmlinux 0x24d686b4 truncate_pagecache +EXPORT_SYMBOL vmlinux 0x24fd6f3b km_policy_notify +EXPORT_SYMBOL vmlinux 0x24fdac79 wake_bit_function +EXPORT_SYMBOL vmlinux 0x25277497 rfkill_register +EXPORT_SYMBOL vmlinux 0x253ccea9 fddi_type_trans +EXPORT_SYMBOL vmlinux 0x254a7a6d security_file_permission +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x2585ad95 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x258d18d9 make_kprojid +EXPORT_SYMBOL vmlinux 0x25b6b8f7 _lv1_set_spe_transition_notifier +EXPORT_SYMBOL vmlinux 0x25c677c4 mac_pton +EXPORT_SYMBOL vmlinux 0x25ed3ef5 agp_generic_type_to_mask_type +EXPORT_SYMBOL vmlinux 0x25f40554 tty_devnum +EXPORT_SYMBOL vmlinux 0x260be6d8 filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0x260cf8f8 of_get_property +EXPORT_SYMBOL vmlinux 0x26316e2e vfs_getattr +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x2645f941 generic_file_fsync +EXPORT_SYMBOL vmlinux 0x26477c07 __vmalloc +EXPORT_SYMBOL vmlinux 0x2650d835 sysctl_ip_early_demux +EXPORT_SYMBOL vmlinux 0x2665d53a key_create_or_update +EXPORT_SYMBOL vmlinux 0x267fad40 ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0x26841065 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x2685c3d7 __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x268e5ff6 neigh_lookup +EXPORT_SYMBOL vmlinux 0x2691c0bc phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0x26a0b76d of_dev_get +EXPORT_SYMBOL vmlinux 0x26a4017e mpage_writepage +EXPORT_SYMBOL vmlinux 0x26b760c4 slhc_init +EXPORT_SYMBOL vmlinux 0x26bc4ec5 init_task +EXPORT_SYMBOL vmlinux 0x26c03670 padata_do_serial +EXPORT_SYMBOL vmlinux 0x26d88251 __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x26e298e0 unregister_memory_notifier +EXPORT_SYMBOL vmlinux 0x26e76fb8 sysctl_udp_wmem_min +EXPORT_SYMBOL vmlinux 0x26f0453a blk_set_default_limits +EXPORT_SYMBOL vmlinux 0x26f6dd77 proc_set_user +EXPORT_SYMBOL vmlinux 0x2712f4f5 crc32_le_combine +EXPORT_SYMBOL vmlinux 0x271ac90d kernel_listen +EXPORT_SYMBOL vmlinux 0x2734e748 pci_choose_state +EXPORT_SYMBOL vmlinux 0x274d08dc __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0x27646df3 start_thread +EXPORT_SYMBOL vmlinux 0x2783ef7f simple_transaction_release +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x27949de1 bio_clone_bioset +EXPORT_SYMBOL vmlinux 0x27a7b148 devm_ioremap_prot +EXPORT_SYMBOL vmlinux 0x27abcb48 pci_scan_bus_parented +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27e1a049 printk +EXPORT_SYMBOL vmlinux 0x27ee5f62 request_key +EXPORT_SYMBOL vmlinux 0x27f2313e idr_replace +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x2818e6f8 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0x2828a773 locks_remove_posix +EXPORT_SYMBOL vmlinux 0x28318305 snprintf +EXPORT_SYMBOL vmlinux 0x283810ff dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x287021b2 redraw_screen +EXPORT_SYMBOL vmlinux 0x2890d994 md_write_start +EXPORT_SYMBOL vmlinux 0x28937d4c filemap_write_and_wait +EXPORT_SYMBOL vmlinux 0x28a2ed02 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x28a8431a bio_endio +EXPORT_SYMBOL vmlinux 0x28abfe6e scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x28cf5d26 md_integrity_register +EXPORT_SYMBOL vmlinux 0x28d44ed8 net_dma_find_channel +EXPORT_SYMBOL vmlinux 0x28e71994 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0x28ec0476 page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0x290661dd dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x29221011 scsi_execute_req_flags +EXPORT_SYMBOL vmlinux 0x292e5be9 inet_bind +EXPORT_SYMBOL vmlinux 0x29537c9e alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0x2960019b eeh_check_failure +EXPORT_SYMBOL vmlinux 0x2963b3ea dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0x29641e4c scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x296ba98f pci_platform_rom +EXPORT_SYMBOL vmlinux 0x2980ec39 __locks_copy_lock +EXPORT_SYMBOL vmlinux 0x2985bc77 genphy_suspend +EXPORT_SYMBOL vmlinux 0x298a2db9 write_one_page +EXPORT_SYMBOL vmlinux 0x299c3bcc blk_mq_can_queue +EXPORT_SYMBOL vmlinux 0x299e4983 __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x29b45939 vga_put +EXPORT_SYMBOL vmlinux 0x2a079994 simple_pin_fs +EXPORT_SYMBOL vmlinux 0x2a17fb51 scsi_allocate_command +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a37d074 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2a421862 kernel_getsockname +EXPORT_SYMBOL vmlinux 0x2a6633f9 mount_single +EXPORT_SYMBOL vmlinux 0x2a66eae6 nf_log_register +EXPORT_SYMBOL vmlinux 0x2a6fcd9c sg_miter_stop +EXPORT_SYMBOL vmlinux 0x2a727cf2 compat_sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x2abaee39 task_tgid_nr_ns +EXPORT_SYMBOL vmlinux 0x2ac48ea7 kill_fasync +EXPORT_SYMBOL vmlinux 0x2acf0feb vfs_fstat +EXPORT_SYMBOL vmlinux 0x2ad8364b vfs_mknod +EXPORT_SYMBOL vmlinux 0x2b0ba2b0 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x2b2a2310 __bread +EXPORT_SYMBOL vmlinux 0x2b2ce78b kstrtos8 +EXPORT_SYMBOL vmlinux 0x2b2ce793 kernel_bind +EXPORT_SYMBOL vmlinux 0x2b408eac would_dump +EXPORT_SYMBOL vmlinux 0x2b59eb1a read_dev_sector +EXPORT_SYMBOL vmlinux 0x2b71ac36 bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x2b7a4d8a simple_rename +EXPORT_SYMBOL vmlinux 0x2b889b51 twl6040_reg_read +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2ba291da sk_prot_clear_portaddr_nulls +EXPORT_SYMBOL vmlinux 0x2ba60449 seq_printf +EXPORT_SYMBOL vmlinux 0x2ba707a8 sysctl_tcp_low_latency +EXPORT_SYMBOL vmlinux 0x2bb89fe1 dm_kobject_release +EXPORT_SYMBOL vmlinux 0x2bb95477 sock_no_sendpage +EXPORT_SYMBOL vmlinux 0x2bd852c8 elv_rb_add +EXPORT_SYMBOL vmlinux 0x2c0aa0aa dentry_update_name_case +EXPORT_SYMBOL vmlinux 0x2c1cd4a4 cpu_present_mask +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c4c7997 _lv1_construct_lpm +EXPORT_SYMBOL vmlinux 0x2c7b1fca down_timeout +EXPORT_SYMBOL vmlinux 0x2c7e39fd udp_add_offload +EXPORT_SYMBOL vmlinux 0x2c869e71 vfs_read +EXPORT_SYMBOL vmlinux 0x2c900d91 cpufreq_put_global_kobject +EXPORT_SYMBOL vmlinux 0x2cb7868f genphy_resume +EXPORT_SYMBOL vmlinux 0x2cba0ddb pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0x2cbc9a83 inode_init_owner +EXPORT_SYMBOL vmlinux 0x2cd2745d mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0x2cd5db6b simple_write_end +EXPORT_SYMBOL vmlinux 0x2cd746ea init_special_inode +EXPORT_SYMBOL vmlinux 0x2cda4cf9 agp_collect_device_status +EXPORT_SYMBOL vmlinux 0x2ce8e8f6 cdev_del +EXPORT_SYMBOL vmlinux 0x2ce942c0 clear_inode +EXPORT_SYMBOL vmlinux 0x2ceeae14 from_kgid +EXPORT_SYMBOL vmlinux 0x2cf73cb7 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x2d03c10d posix_acl_create +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3318dd __cleancache_put_page +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d3624ea cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0x2d378753 km_state_notify +EXPORT_SYMBOL vmlinux 0x2d42b5cb generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x2d434561 kobject_del +EXPORT_SYMBOL vmlinux 0x2d7d2767 _lv1_set_lpm_group_control +EXPORT_SYMBOL vmlinux 0x2d89342a scsi_show_sense_hdr +EXPORT_SYMBOL vmlinux 0x2d8c6544 agp_generic_mask_memory +EXPORT_SYMBOL vmlinux 0x2d8d5f32 scsi_block_requests +EXPORT_SYMBOL vmlinux 0x2d9a709d generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x2daaaba9 param_get_byte +EXPORT_SYMBOL vmlinux 0x2db1e0c6 dql_init +EXPORT_SYMBOL vmlinux 0x2db7c25c devm_iounmap +EXPORT_SYMBOL vmlinux 0x2dcc2368 bdi_destroy +EXPORT_SYMBOL vmlinux 0x2de40b82 dquot_acquire +EXPORT_SYMBOL vmlinux 0x2de42a1e dev_addr_add +EXPORT_SYMBOL vmlinux 0x2deda4a1 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x2e0d2f7f queue_work_on +EXPORT_SYMBOL vmlinux 0x2e151839 audit_log +EXPORT_SYMBOL vmlinux 0x2e1bef92 eeh_subsystem_enabled +EXPORT_SYMBOL vmlinux 0x2e2737b2 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0x2e2b40d2 strncat +EXPORT_SYMBOL vmlinux 0x2e2ce9e0 sysctl_tcp_syncookies +EXPORT_SYMBOL vmlinux 0x2e3d14b1 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0x2e48b2d9 qdisc_reset +EXPORT_SYMBOL vmlinux 0x2e5110aa jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0x2e55475f scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0x2e62a7d7 inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0x2e79cad9 clear_bdi_congested +EXPORT_SYMBOL vmlinux 0x2e93495e _lv1_write_htab_entry +EXPORT_SYMBOL vmlinux 0x2e97b41d tty_unregister_driver +EXPORT_SYMBOL vmlinux 0x2eb0e5d9 security_inode_permission +EXPORT_SYMBOL vmlinux 0x2ebbcfdd jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0x2ec6f2cf compat_nf_getsockopt +EXPORT_SYMBOL vmlinux 0x2edef61d inet_add_offload +EXPORT_SYMBOL vmlinux 0x2ee4337f smu_queue_cmd +EXPORT_SYMBOL vmlinux 0x2eeceb42 sk_chk_filter +EXPORT_SYMBOL vmlinux 0x2ef200e6 mac_find_mode +EXPORT_SYMBOL vmlinux 0x2ef63ad6 scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0x2ef7f5c5 skb_pull +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f064b55 allocate_resource +EXPORT_SYMBOL vmlinux 0x2f159e8e xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0x2f19d723 udp_lib_unhash +EXPORT_SYMBOL vmlinux 0x2f287f0d copy_to_user +EXPORT_SYMBOL vmlinux 0x2f2ffd1f __ip_select_ident +EXPORT_SYMBOL vmlinux 0x2f37125d netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0x2f44ba9a ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0x2f526f2e block_truncate_page +EXPORT_SYMBOL vmlinux 0x2f5780d7 __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0x2f86239b pci_get_slot +EXPORT_SYMBOL vmlinux 0x2fae96de rtas_data_buf_lock +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fca80ee tcp_sync_mss +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2fe3d3be security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x2fe4e83d skb_queue_purge +EXPORT_SYMBOL vmlinux 0x301a44b3 skb_make_writable +EXPORT_SYMBOL vmlinux 0x30226ddf agp_device_command +EXPORT_SYMBOL vmlinux 0x307c2fd0 generic_check_addressable +EXPORT_SYMBOL vmlinux 0x308d77f9 ata_std_end_eh +EXPORT_SYMBOL vmlinux 0x3096fb0b pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0x3098b467 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30b21a0c sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x30b8b35c cpu_to_chip_id +EXPORT_SYMBOL vmlinux 0x30cada8f radix_tree_next_hole +EXPORT_SYMBOL vmlinux 0x30d66cd9 ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0x30fe8c79 inet_accept +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x3104fad2 kill_pid +EXPORT_SYMBOL vmlinux 0x3106530a tcp_recvmsg +EXPORT_SYMBOL vmlinux 0x31148f5b __d_drop +EXPORT_SYMBOL vmlinux 0x311849bb jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x31242389 security_path_mkdir +EXPORT_SYMBOL vmlinux 0x312cfaf2 _lv1_disable_logical_spe +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x3147857d default_red +EXPORT_SYMBOL vmlinux 0x3150c8f8 padata_set_cpumasks +EXPORT_SYMBOL vmlinux 0x3156d727 __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x315c65fd zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x318cadb1 reciprocal_value +EXPORT_SYMBOL vmlinux 0x3195ccde keyring_alloc +EXPORT_SYMBOL vmlinux 0x319e0726 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x31a157a9 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0x31a1d70b console_stop +EXPORT_SYMBOL vmlinux 0x31b566cb netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0x31b63b3c generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0x31b7f300 _lv1_set_lpm_signal +EXPORT_SYMBOL vmlinux 0x31bff9c4 put_io_context +EXPORT_SYMBOL vmlinux 0x31cd509a _lv1_net_control +EXPORT_SYMBOL vmlinux 0x31cd995b store_fp_state +EXPORT_SYMBOL vmlinux 0x31d61e9a cur_cpu_spec +EXPORT_SYMBOL vmlinux 0x31e16358 scsi_setup_blk_pc_cmnd +EXPORT_SYMBOL vmlinux 0x31e2589a irq_set_chip +EXPORT_SYMBOL vmlinux 0x321aebb2 inet6_add_offload +EXPORT_SYMBOL vmlinux 0x322f48d4 abx500_dump_all_banks +EXPORT_SYMBOL vmlinux 0x32553e5c tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x326eef3e wake_up_process +EXPORT_SYMBOL vmlinux 0x327b9c1b pmu_poll_adb +EXPORT_SYMBOL vmlinux 0x327bf883 of_can_translate_address +EXPORT_SYMBOL vmlinux 0x3284c88d tcf_hash_lookup +EXPORT_SYMBOL vmlinux 0x32cb12db f_setown +EXPORT_SYMBOL vmlinux 0x331e1137 serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0x333cb37c __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0x33426ca1 agp_find_bridge +EXPORT_SYMBOL vmlinux 0x33573ad9 jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0x338d437c sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0x338eae80 of_find_i2c_device_by_node +EXPORT_SYMBOL vmlinux 0x3392a4b0 dentry_unhash +EXPORT_SYMBOL vmlinux 0x33acec25 shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x33b84f74 copy_page +EXPORT_SYMBOL vmlinux 0x33b95086 simple_statfs +EXPORT_SYMBOL vmlinux 0x33ba5cd4 param_ops_bool +EXPORT_SYMBOL vmlinux 0x33c7435c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x33d0dab1 __nla_put +EXPORT_SYMBOL vmlinux 0x33d94289 textsearch_register +EXPORT_SYMBOL vmlinux 0x33e4759b iterate_dir +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x33fcf44a __kfifo_out_r +EXPORT_SYMBOL vmlinux 0x3417f0ad sockfd_lookup +EXPORT_SYMBOL vmlinux 0x34184afe current_kernel_time +EXPORT_SYMBOL vmlinux 0x3421c29c dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x344adbd5 init_cdrom_command +EXPORT_SYMBOL vmlinux 0x345a5eb0 ata_link_printk +EXPORT_SYMBOL vmlinux 0x346c4ded rwsem_down_write_failed +EXPORT_SYMBOL vmlinux 0x347013de nla_validate +EXPORT_SYMBOL vmlinux 0x347eb9bd param_set_bool +EXPORT_SYMBOL vmlinux 0x34940612 arp_tbl +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34b338f3 skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0x34b5eff2 have_submounts +EXPORT_SYMBOL vmlinux 0x34d7607e vga_tryget +EXPORT_SYMBOL vmlinux 0x34de7088 inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0x34df1383 __bforget +EXPORT_SYMBOL vmlinux 0x34e15499 tcf_generic_walker +EXPORT_SYMBOL vmlinux 0x34e2ec66 dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0x34e5bfc8 pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0x34eb956b sk_stream_error +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34f57bb8 i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x35355ccc nf_log_unregister +EXPORT_SYMBOL vmlinux 0x353697d6 get_phy_device +EXPORT_SYMBOL vmlinux 0x3539f11b match_strlcpy +EXPORT_SYMBOL vmlinux 0x354a8cc9 mutex_unlock +EXPORT_SYMBOL vmlinux 0x35513d28 kernel_read +EXPORT_SYMBOL vmlinux 0x35655b71 pcibios_fixup_bus +EXPORT_SYMBOL vmlinux 0x3565eb78 seq_pad +EXPORT_SYMBOL vmlinux 0x3572c82f dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x3589f2d0 cdev_alloc +EXPORT_SYMBOL vmlinux 0x35be330e __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x35c32767 xor_altivec_2 +EXPORT_SYMBOL vmlinux 0x35defc50 iov_iter_advance +EXPORT_SYMBOL vmlinux 0x3614f688 tcp_prot +EXPORT_SYMBOL vmlinux 0x3634b5d3 address_space_init_once +EXPORT_SYMBOL vmlinux 0x36555c18 bio_copy_data +EXPORT_SYMBOL vmlinux 0x3657aa73 dev_get_stats +EXPORT_SYMBOL vmlinux 0x3666a446 file_remove_suid +EXPORT_SYMBOL vmlinux 0x3667c291 macio_dev_get +EXPORT_SYMBOL vmlinux 0x366e329b __nlmsg_put +EXPORT_SYMBOL vmlinux 0x367258f1 inet_put_port +EXPORT_SYMBOL vmlinux 0x368382e2 of_get_named_gpiod_flags +EXPORT_SYMBOL vmlinux 0x36947f2b input_set_abs_params +EXPORT_SYMBOL vmlinux 0x369e1115 kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0x36b0e732 try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x36b52fbf netpoll_rx_disable +EXPORT_SYMBOL vmlinux 0x36bd681b groups_alloc +EXPORT_SYMBOL vmlinux 0x36c735ad kset_unregister +EXPORT_SYMBOL vmlinux 0x36c98eda generic_block_bmap +EXPORT_SYMBOL vmlinux 0x36d7b11a of_find_matching_node_and_match +EXPORT_SYMBOL vmlinux 0x36e360e3 __hw_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x371902e9 _lv1_get_lpm_interrupt_status +EXPORT_SYMBOL vmlinux 0x371d2130 check_legacy_ioport +EXPORT_SYMBOL vmlinux 0x37275338 misc_deregister +EXPORT_SYMBOL vmlinux 0x372bf188 bd_set_size +EXPORT_SYMBOL vmlinux 0x372e09b1 scsi_release_buffers +EXPORT_SYMBOL vmlinux 0x37344510 proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x37383edd rtas_get_power_level +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x3751b07b md_finish_reshape +EXPORT_SYMBOL vmlinux 0x37577e3d __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0x37ac4111 __pci_register_driver +EXPORT_SYMBOL vmlinux 0x37ad5d25 bio_integrity_free +EXPORT_SYMBOL vmlinux 0x37af68c2 netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37cfa4a1 skb_append_datato_frags +EXPORT_SYMBOL vmlinux 0x37d6327d kill_litter_super +EXPORT_SYMBOL vmlinux 0x37d87150 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0x38095f2a posix_lock_file_wait +EXPORT_SYMBOL vmlinux 0x380a198b bio_add_page +EXPORT_SYMBOL vmlinux 0x380aa872 ata_port_printk +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x382777ab _lv1_gpu_context_allocate +EXPORT_SYMBOL vmlinux 0x3828e546 kill_block_super +EXPORT_SYMBOL vmlinux 0x382c0734 pci_domain_nr +EXPORT_SYMBOL vmlinux 0x382ed0b9 posix_unblock_lock +EXPORT_SYMBOL vmlinux 0x383c577f tcf_hash_release +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388f9128 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x38939bf0 mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38aa9ae3 agp_create_memory +EXPORT_SYMBOL vmlinux 0x38b30cee of_phy_find_device +EXPORT_SYMBOL vmlinux 0x38b50414 from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x38ed9212 console_start +EXPORT_SYMBOL vmlinux 0x38fb9933 tty_std_termios +EXPORT_SYMBOL vmlinux 0x3901828b scsi_prep_fn +EXPORT_SYMBOL vmlinux 0x3910b354 input_set_keycode +EXPORT_SYMBOL vmlinux 0x3912d871 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0x3923b9e3 inet_dgram_connect +EXPORT_SYMBOL vmlinux 0x3927bf23 vfs_path_lookup +EXPORT_SYMBOL vmlinux 0x392e7fe1 ps2_drain +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x3955fcf6 __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x395b90a2 __genl_register_family +EXPORT_SYMBOL vmlinux 0x3982443c kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0x3990081a follow_down +EXPORT_SYMBOL vmlinux 0x3992836f netif_receive_skb +EXPORT_SYMBOL vmlinux 0x399ad043 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0x39c19858 dm_io +EXPORT_SYMBOL vmlinux 0x39cdf63c wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x39dda136 vfs_llseek +EXPORT_SYMBOL vmlinux 0x39fe68d0 pci_vpd_truncate +EXPORT_SYMBOL vmlinux 0x3a0e9072 of_find_backlight_by_node +EXPORT_SYMBOL vmlinux 0x3a1ac5bb nobh_writepage +EXPORT_SYMBOL vmlinux 0x3a20ff73 __crc32c_le +EXPORT_SYMBOL vmlinux 0x3a21dbab sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0x3a4757f4 pci_get_subsys +EXPORT_SYMBOL vmlinux 0x3a563f5b __get_user_pages +EXPORT_SYMBOL vmlinux 0x3a8b78d7 pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0x3a9b6fb9 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x3adab184 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0x3ae68140 pci_dev_get +EXPORT_SYMBOL vmlinux 0x3b56a172 of_create_pci_dev +EXPORT_SYMBOL vmlinux 0x3b603e66 vm_insert_page +EXPORT_SYMBOL vmlinux 0x3b615a21 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x3b69082e neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0x3b7dafe6 __block_write_begin +EXPORT_SYMBOL vmlinux 0x3bb1af69 aio_complete +EXPORT_SYMBOL vmlinux 0x3bd1b1f6 msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x3bd4b7ad create_empty_buffers +EXPORT_SYMBOL vmlinux 0x3be35a6d tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0x3bed071c genlmsg_put +EXPORT_SYMBOL vmlinux 0x3bef03b9 flow_cache_lookup +EXPORT_SYMBOL vmlinux 0x3c29356a dma_find_channel +EXPORT_SYMBOL vmlinux 0x3c301bbd kill_bdev +EXPORT_SYMBOL vmlinux 0x3c764e16 noop_llseek +EXPORT_SYMBOL vmlinux 0x3c7a7d34 proto_register +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c9d1211 string_get_size +EXPORT_SYMBOL vmlinux 0x3cb17ff3 bitmap_end_sync +EXPORT_SYMBOL vmlinux 0x3cc4b0dc lg_lock_init +EXPORT_SYMBOL vmlinux 0x3ce326bb elv_rq_merge_ok +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3cf3242d inet_frags_init_net +EXPORT_SYMBOL vmlinux 0x3d012409 tty_check_change +EXPORT_SYMBOL vmlinux 0x3d0b239a free_netdev +EXPORT_SYMBOL vmlinux 0x3d0e4956 kill_pgrp +EXPORT_SYMBOL vmlinux 0x3d353fae jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0x3d41904f of_get_next_child +EXPORT_SYMBOL vmlinux 0x3d5844b3 strnicmp +EXPORT_SYMBOL vmlinux 0x3d65d6ea blk_integrity_register +EXPORT_SYMBOL vmlinux 0x3d68231a page_readlink +EXPORT_SYMBOL vmlinux 0x3d7cfa61 sock_create_kern +EXPORT_SYMBOL vmlinux 0x3d7e8022 dev_printk +EXPORT_SYMBOL vmlinux 0x3d8b0afc set_groups +EXPORT_SYMBOL vmlinux 0x3d8b63be locks_init_lock +EXPORT_SYMBOL vmlinux 0x3d996401 remove_proc_subtree +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3dd13ea0 generic_removexattr +EXPORT_SYMBOL vmlinux 0x3df09f72 macio_request_resources +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e286dca _lv1_get_rtc +EXPORT_SYMBOL vmlinux 0x3e53b254 iterate_mounts +EXPORT_SYMBOL vmlinux 0x3e59ad2f __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0x3e882943 pcibios_align_resource +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3e9fa5ab new_inode +EXPORT_SYMBOL vmlinux 0x3ec99f08 blk_run_queue_async +EXPORT_SYMBOL vmlinux 0x3ed63055 zlib_inflateReset +EXPORT_SYMBOL vmlinux 0x3f0546a8 ioread32_rep +EXPORT_SYMBOL vmlinux 0x3f06a656 _lv1_construct_event_receive_port +EXPORT_SYMBOL vmlinux 0x3f106a4d ip6_expire_frag_queue +EXPORT_SYMBOL vmlinux 0x3f384259 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0x3f406a3b enable_kernel_altivec +EXPORT_SYMBOL vmlinux 0x3f409e94 dev_notice +EXPORT_SYMBOL vmlinux 0x3f40b6c8 dev_mc_del +EXPORT_SYMBOL vmlinux 0x3f4265f9 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f4c0a50 phy_start +EXPORT_SYMBOL vmlinux 0x3f83d4c1 lock_may_read +EXPORT_SYMBOL vmlinux 0x3f88ee8c netdev_warn +EXPORT_SYMBOL vmlinux 0x3f9f0e0d dev_uc_del +EXPORT_SYMBOL vmlinux 0x3fb45687 build_skb +EXPORT_SYMBOL vmlinux 0x3fbf41c8 rfkill_alloc +EXPORT_SYMBOL vmlinux 0x3fbfd6ed _lv1_gpu_open +EXPORT_SYMBOL vmlinux 0x3fd55724 of_n_size_cells +EXPORT_SYMBOL vmlinux 0x3fe0d1c0 slhc_free +EXPORT_SYMBOL vmlinux 0x3fe2ccbe memweight +EXPORT_SYMBOL vmlinux 0x3fec048f sg_next +EXPORT_SYMBOL vmlinux 0x3ff62317 local_bh_disable +EXPORT_SYMBOL vmlinux 0x3ff8069b tcf_hash_insert +EXPORT_SYMBOL vmlinux 0x3ff8e495 lg_local_unlock_cpu +EXPORT_SYMBOL vmlinux 0x40291363 devm_ioremap_nocache +EXPORT_SYMBOL vmlinux 0x402b8281 __request_module +EXPORT_SYMBOL vmlinux 0x404066c5 idr_for_each +EXPORT_SYMBOL vmlinux 0x405a5c20 serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0x405c1144 get_seconds +EXPORT_SYMBOL vmlinux 0x405cd184 max8998_update_reg +EXPORT_SYMBOL vmlinux 0x406d66c6 put_page +EXPORT_SYMBOL vmlinux 0x40819afd blk_init_tags +EXPORT_SYMBOL vmlinux 0x4090cc68 dquot_quota_on +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409aeec3 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0x40a27c37 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40c01859 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40d616ad update_time +EXPORT_SYMBOL vmlinux 0x40da4019 fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0x40f250f0 nf_log_unset +EXPORT_SYMBOL vmlinux 0x40f2b10c ipmi_alloc_smi_msg +EXPORT_SYMBOL vmlinux 0x410b62aa pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0x41225b54 md_flush_request +EXPORT_SYMBOL vmlinux 0x41361807 _lv1_get_logical_ppe_id +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x4159c38f ioremap_wc +EXPORT_SYMBOL vmlinux 0x417cd014 compat_ip_setsockopt +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x4190ab08 mdiobus_write +EXPORT_SYMBOL vmlinux 0x4198c3e5 sock_no_getname +EXPORT_SYMBOL vmlinux 0x41b0a71c scsi_prep_state_check +EXPORT_SYMBOL vmlinux 0x41b75782 __devm_request_region +EXPORT_SYMBOL vmlinux 0x41b9fbc5 pci_disable_ido +EXPORT_SYMBOL vmlinux 0x41dbf4de _lv1_start_lpm +EXPORT_SYMBOL vmlinux 0x420c03b7 dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x4211c3c1 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x422b1b14 nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x423b776a ipmi_create_user +EXPORT_SYMBOL vmlinux 0x423dabb2 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x42595e58 vgacon_text_force +EXPORT_SYMBOL vmlinux 0x42977ad4 __hw_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x42a1b208 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x42aed777 blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0x42aef0b5 complete_request_key +EXPORT_SYMBOL vmlinux 0x42b9ffa2 blk_make_request +EXPORT_SYMBOL vmlinux 0x42be1e4f skb_copy_datagram_from_iovec +EXPORT_SYMBOL vmlinux 0x42c858c6 devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0x42dceeec jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0x42e9e770 mmc_erase +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x43188c9b dev_get_drvdata +EXPORT_SYMBOL vmlinux 0x431971a6 abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0x433313a9 mb_cache_entry_release +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x4357e111 from_kprojid +EXPORT_SYMBOL vmlinux 0x43632d7d of_find_property +EXPORT_SYMBOL vmlinux 0x436c2179 iowrite32 +EXPORT_SYMBOL vmlinux 0x4373f938 blk_queue_softirq_done +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x43881d23 sk_filter +EXPORT_SYMBOL vmlinux 0x439561b1 netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x43a01f90 complete_all +EXPORT_SYMBOL vmlinux 0x43e807a4 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0x43f23311 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x43ffb79f dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0x4411c503 prandom_seed +EXPORT_SYMBOL vmlinux 0x4459729e km_new_mapping +EXPORT_SYMBOL vmlinux 0x4471870e mmc_can_sanitize +EXPORT_SYMBOL vmlinux 0x4483b306 phy_start_aneg +EXPORT_SYMBOL vmlinux 0x448c9e6a loop_register_transfer +EXPORT_SYMBOL vmlinux 0x448eac3e kmemdup +EXPORT_SYMBOL vmlinux 0x44b0415e genphy_update_link +EXPORT_SYMBOL vmlinux 0x44b8c0ad d_instantiate +EXPORT_SYMBOL vmlinux 0x44bca0d4 follow_pfn +EXPORT_SYMBOL vmlinux 0x44e3faf2 dev_err +EXPORT_SYMBOL vmlinux 0x44e7d956 netlink_ack +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44eb192e wait_for_completion +EXPORT_SYMBOL vmlinux 0x44ef1ef5 blk_start_queue +EXPORT_SYMBOL vmlinux 0x44f5e8b5 of_allnodes +EXPORT_SYMBOL vmlinux 0x45360f8d jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x4548b37f account_page_writeback +EXPORT_SYMBOL vmlinux 0x455a639f pm860x_page_reg_read +EXPORT_SYMBOL vmlinux 0x4564459b _lv1_set_virtual_uart_param +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x45795db2 dev_get_by_index +EXPORT_SYMBOL vmlinux 0x4585062e security_path_unlink +EXPORT_SYMBOL vmlinux 0x45905cfc nf_nat_decode_session_hook +EXPORT_SYMBOL vmlinux 0x45a55ec8 __iounmap +EXPORT_SYMBOL vmlinux 0x45a6be13 cpufreq_sysfs_remove_file +EXPORT_SYMBOL vmlinux 0x45a765cf pci_add_resource +EXPORT_SYMBOL vmlinux 0x45bcbc14 __skb_dst_set_noref +EXPORT_SYMBOL vmlinux 0x45c56be1 devm_request_and_ioremap +EXPORT_SYMBOL vmlinux 0x45cfe80b pasemi_dma_free_flag +EXPORT_SYMBOL vmlinux 0x45f2c673 agp_backend_release +EXPORT_SYMBOL vmlinux 0x4609418b dcache_dir_open +EXPORT_SYMBOL vmlinux 0x4612c59d down_trylock +EXPORT_SYMBOL vmlinux 0x461ac773 kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x461ebfa0 __copy_tofrom_user +EXPORT_SYMBOL vmlinux 0x462c5ad2 gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0x4654f1af set_page_dirty +EXPORT_SYMBOL vmlinux 0x465cab34 secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0x46608fa0 getnstimeofday +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x467218d1 vm_map_ram +EXPORT_SYMBOL vmlinux 0x46962b13 tcp_disconnect +EXPORT_SYMBOL vmlinux 0x469cb055 keyring_clear +EXPORT_SYMBOL vmlinux 0x46afd532 on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0x46c6516a of_find_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0x46cebd91 xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0x46d12956 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0x46feb099 dm_read_arg +EXPORT_SYMBOL vmlinux 0x470142d5 devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x4724e871 do_splice_to +EXPORT_SYMBOL vmlinux 0x4731ff73 bio_integrity_set_tag +EXPORT_SYMBOL vmlinux 0x47343c54 thaw_bdev +EXPORT_SYMBOL vmlinux 0x47416e14 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x4745470e ftrace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x47b3f862 radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x47b9b534 kblockd_schedule_delayed_work +EXPORT_SYMBOL vmlinux 0x47bcf84c param_set_ulong +EXPORT_SYMBOL vmlinux 0x47c8baf4 param_ops_uint +EXPORT_SYMBOL vmlinux 0x47dd0448 gen10g_restart_aneg +EXPORT_SYMBOL vmlinux 0x47e45dbb registered_fb +EXPORT_SYMBOL vmlinux 0x47ec9652 scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0x48034724 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x480ab42a __next_cpu_nr +EXPORT_SYMBOL vmlinux 0x4815f22b _lv1_gpu_attribute +EXPORT_SYMBOL vmlinux 0x4829a47e memcpy +EXPORT_SYMBOL vmlinux 0x482a2a49 param_set_charp +EXPORT_SYMBOL vmlinux 0x482f825e generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0x48404b9a remove_wait_queue +EXPORT_SYMBOL vmlinux 0x4841bdee strnchr +EXPORT_SYMBOL vmlinux 0x4843a1b9 _lv1_delete_repository_node +EXPORT_SYMBOL vmlinux 0x48515be0 scsi_host_set_state +EXPORT_SYMBOL vmlinux 0x485860cb ilookup5 +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x4881efab pmac_get_partition +EXPORT_SYMBOL vmlinux 0x48915387 dev_set_group +EXPORT_SYMBOL vmlinux 0x48ba866e mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x48c6db53 of_get_child_by_name +EXPORT_SYMBOL vmlinux 0x48f8c745 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0x48fabfbf gen_new_estimator +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x490d7f00 vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x4910bf45 __seq_open_private +EXPORT_SYMBOL vmlinux 0x491a6651 i2c_del_adapter +EXPORT_SYMBOL vmlinux 0x491d5869 pci_set_dma_max_seg_size +EXPORT_SYMBOL vmlinux 0x495c96f8 posix_acl_init +EXPORT_SYMBOL vmlinux 0x495ec6eb pasemi_dma_alloc_buf +EXPORT_SYMBOL vmlinux 0x49603fb8 security_sb_copy_data +EXPORT_SYMBOL vmlinux 0x4967135b dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0x496f461a nf_log_packet +EXPORT_SYMBOL vmlinux 0x49ae3988 unlock_page +EXPORT_SYMBOL vmlinux 0x49b07aec tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x49d900d6 phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0x49e9b7c5 pci_target_state +EXPORT_SYMBOL vmlinux 0x4a05d0b1 vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0x4a0cbef3 PDE_DATA +EXPORT_SYMBOL vmlinux 0x4a312bdc tcp_gro_receive +EXPORT_SYMBOL vmlinux 0x4a358252 __bitmap_subset +EXPORT_SYMBOL vmlinux 0x4a35aa06 free_user_ns +EXPORT_SYMBOL vmlinux 0x4a39ac1a mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x4a3f3899 copy_strings_kernel +EXPORT_SYMBOL vmlinux 0x4a813a1d blk_queue_invalidate_tags +EXPORT_SYMBOL vmlinux 0x4a9042c2 filemap_flush +EXPORT_SYMBOL vmlinux 0x4a9744df i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0x4aa1597b inode_sub_rsv_space +EXPORT_SYMBOL vmlinux 0x4aa85c1b jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x4aa9840c find_get_pages_contig +EXPORT_SYMBOL vmlinux 0x4ac64da4 _lv1_select_virtual_address_space +EXPORT_SYMBOL vmlinux 0x4ac765a6 block_write_begin +EXPORT_SYMBOL vmlinux 0x4acd93d3 release_resource +EXPORT_SYMBOL vmlinux 0x4ad1d501 block_write_end +EXPORT_SYMBOL vmlinux 0x4add33b9 sock_setsockopt +EXPORT_SYMBOL vmlinux 0x4aedeb0c inet_listen +EXPORT_SYMBOL vmlinux 0x4afe9a77 scsi_partsize +EXPORT_SYMBOL vmlinux 0x4b062763 block_write_full_page +EXPORT_SYMBOL vmlinux 0x4b085dbf agp3_generic_configure +EXPORT_SYMBOL vmlinux 0x4b1195b3 blk_rq_init +EXPORT_SYMBOL vmlinux 0x4b3cb349 _lv1_destruct_io_irq_outlet +EXPORT_SYMBOL vmlinux 0x4b4ca82b security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b6e338c pcibus_to_node +EXPORT_SYMBOL vmlinux 0x4b6fcddc _lv1_set_spe_interrupt_mask +EXPORT_SYMBOL vmlinux 0x4b7ed27b sleep_on +EXPORT_SYMBOL vmlinux 0x4b9298fc kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x4bea72bc __sk_dst_check +EXPORT_SYMBOL vmlinux 0x4bed99b3 __percpu_counter_add +EXPORT_SYMBOL vmlinux 0x4bf6b89a i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0x4c11435a _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0x4c1182cb bitmap_scnprintf +EXPORT_SYMBOL vmlinux 0x4c2c5afc __alloc_skb +EXPORT_SYMBOL vmlinux 0x4c4308bb tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0x4c725688 try_to_release_page +EXPORT_SYMBOL vmlinux 0x4c8d90db follow_down_one +EXPORT_SYMBOL vmlinux 0x4c971bec ipmi_smi_msg_received +EXPORT_SYMBOL vmlinux 0x4ca9669f scnprintf +EXPORT_SYMBOL vmlinux 0x4cb0e988 gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0x4cbbd171 __bitmap_weight +EXPORT_SYMBOL vmlinux 0x4cdb3178 ns_to_timeval +EXPORT_SYMBOL vmlinux 0x4cff7cc3 napi_gro_receive +EXPORT_SYMBOL vmlinux 0x4d1aceed generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0x4d5702db simple_link +EXPORT_SYMBOL vmlinux 0x4d59748f tcp_md5_hash_header +EXPORT_SYMBOL vmlinux 0x4d6e8a32 send_sig +EXPORT_SYMBOL vmlinux 0x4d72a434 scsi_cmd_print_sense_hdr +EXPORT_SYMBOL vmlinux 0x4d799803 scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x4d9628cc dmam_alloc_coherent +EXPORT_SYMBOL vmlinux 0x4d974b9c register_sysrq_key +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4da7c931 rwsem_downgrade_wake +EXPORT_SYMBOL vmlinux 0x4de34a07 cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x4de3e339 dmam_alloc_noncoherent +EXPORT_SYMBOL vmlinux 0x4df119fa __bitmap_parse +EXPORT_SYMBOL vmlinux 0x4dfed71c flex_array_get_ptr +EXPORT_SYMBOL vmlinux 0x4e0368f4 elv_abort_queue +EXPORT_SYMBOL vmlinux 0x4e10a0d1 __inode_permission +EXPORT_SYMBOL vmlinux 0x4e230e66 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0x4e3256f3 delete_from_page_cache +EXPORT_SYMBOL vmlinux 0x4e346d27 jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e390789 netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0x4e3ccb39 skb_store_bits +EXPORT_SYMBOL vmlinux 0x4e4c0c8a request_key_async +EXPORT_SYMBOL vmlinux 0x4e5c6da9 elv_rb_find +EXPORT_SYMBOL vmlinux 0x4e61908b vga_client_register +EXPORT_SYMBOL vmlinux 0x4e65a19f of_phy_connect +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e69373b setup_arg_pages +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e786d13 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x4e9dffb5 ip_fast_csum +EXPORT_SYMBOL vmlinux 0x4eaddf81 inode_set_bytes +EXPORT_SYMBOL vmlinux 0x4eb61a82 call_netdevice_notifiers_info +EXPORT_SYMBOL vmlinux 0x4edd72f7 block_all_signals +EXPORT_SYMBOL vmlinux 0x4ef358ab mb_cache_entry_alloc +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f248523 of_find_node_by_name +EXPORT_SYMBOL vmlinux 0x4f2c224f get_io_context +EXPORT_SYMBOL vmlinux 0x4f391d0e nla_parse +EXPORT_SYMBOL vmlinux 0x4f50d3c6 try_to_writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0x4f664db6 _lv1_insert_htab_entry +EXPORT_SYMBOL vmlinux 0x4f68e5c9 do_gettimeofday +EXPORT_SYMBOL vmlinux 0x4f7ca49e macio_unregister_driver +EXPORT_SYMBOL vmlinux 0x4f9ce249 sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x4fdee897 i8042_command +EXPORT_SYMBOL vmlinux 0x4ffaabe3 bio_pair_release +EXPORT_SYMBOL vmlinux 0x50072041 update_region +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x500e7642 fb_blank +EXPORT_SYMBOL vmlinux 0x502a6bb8 __skb_checksum +EXPORT_SYMBOL vmlinux 0x505a22ad padata_start +EXPORT_SYMBOL vmlinux 0x50611560 md_done_sync +EXPORT_SYMBOL vmlinux 0x50753144 bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0x50a90e8d bsearch +EXPORT_SYMBOL vmlinux 0x50ae7d80 __idr_pre_get +EXPORT_SYMBOL vmlinux 0x50d2592d hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0x50d512e9 freeze_bdev +EXPORT_SYMBOL vmlinux 0x50efdbd8 devm_gpiod_get +EXPORT_SYMBOL vmlinux 0x50faae9d splice_from_pipe_next +EXPORT_SYMBOL vmlinux 0x5118c382 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0x5121b6fc pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x514cb73e udp_proc_unregister +EXPORT_SYMBOL vmlinux 0x515af8ae max8925_reg_read +EXPORT_SYMBOL vmlinux 0x5190dfc7 ip_defrag +EXPORT_SYMBOL vmlinux 0x5193df9e d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0x519672f8 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0x519b0da3 finish_wait +EXPORT_SYMBOL vmlinux 0x51dce73b xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x51e79b82 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0x51f52aa9 vio_cmo_set_dev_desired +EXPORT_SYMBOL vmlinux 0x52026cdf security_sb_parse_opts_str +EXPORT_SYMBOL vmlinux 0x520d55d5 linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x5215f34c tcp_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x521b36b5 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0x521ebb31 jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0x52205a87 tcp_splice_read +EXPORT_SYMBOL vmlinux 0x52234e89 scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0x522f0f76 rtnl_unicast +EXPORT_SYMBOL vmlinux 0x52428cc8 parent_mem_cgroup +EXPORT_SYMBOL vmlinux 0x5245f6a4 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x524f6f51 ipmi_get_my_address +EXPORT_SYMBOL vmlinux 0x527830ff pmac_xpram_read +EXPORT_SYMBOL vmlinux 0x527e0082 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0x52905ca4 __invalidate_device +EXPORT_SYMBOL vmlinux 0x52d0dd85 scsi_remove_device +EXPORT_SYMBOL vmlinux 0x52e3fa05 _lv1_allocate_memory +EXPORT_SYMBOL vmlinux 0x52e60184 skb_append +EXPORT_SYMBOL vmlinux 0x52e93503 __generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x52ff4c04 bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0x53006c60 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0x53030111 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x53326531 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x5339f5f8 _lv1_read_virtual_uart +EXPORT_SYMBOL vmlinux 0x534d4ebb mb_cache_entry_insert +EXPORT_SYMBOL vmlinux 0x535e4a7b iget_failed +EXPORT_SYMBOL vmlinux 0x536bd8b7 simple_transaction_set +EXPORT_SYMBOL vmlinux 0x536cc847 memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0x536d329b hvcs_get_partner_info +EXPORT_SYMBOL vmlinux 0x5377e556 hex2bin +EXPORT_SYMBOL vmlinux 0x537dec0a ps3_sb_event_receive_port_destroy +EXPORT_SYMBOL vmlinux 0x538e1741 ppp_input +EXPORT_SYMBOL vmlinux 0x53a61ede tty_port_tty_set +EXPORT_SYMBOL vmlinux 0x53afa26f mmc_hw_reset +EXPORT_SYMBOL vmlinux 0x53d29052 tcp_shutdown +EXPORT_SYMBOL vmlinux 0x53d77b71 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0x53ebab1b _outsl_ns +EXPORT_SYMBOL vmlinux 0x5409775b free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x5412c7c7 up +EXPORT_SYMBOL vmlinux 0x54162037 sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x54219df5 agp_generic_enable +EXPORT_SYMBOL vmlinux 0x54245b39 kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0x54257eb1 dma_direct_ops +EXPORT_SYMBOL vmlinux 0x54270ff3 deactivate_super +EXPORT_SYMBOL vmlinux 0x54293529 notify_change +EXPORT_SYMBOL vmlinux 0x5437ad5b sget +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x54824b13 cpufreq_global_kobject +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54ba814c vfs_rename +EXPORT_SYMBOL vmlinux 0x54c42bef write_cache_pages +EXPORT_SYMBOL vmlinux 0x54c7474f netpoll_send_skb_on_dev +EXPORT_SYMBOL vmlinux 0x54e3cc3b param_get_int +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54faff39 mmc_stop_bkops +EXPORT_SYMBOL vmlinux 0x550eb650 sock_get_timestampns +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x551effea neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0x5541ea93 on_each_cpu +EXPORT_SYMBOL vmlinux 0x5549253a tcf_hash_destroy +EXPORT_SYMBOL vmlinux 0x5567c227 kernel_cpustat +EXPORT_SYMBOL vmlinux 0x5568c553 complete +EXPORT_SYMBOL vmlinux 0x556c2740 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x5577ef9e udp_table +EXPORT_SYMBOL vmlinux 0x557b3dd8 _lv1_gpu_close +EXPORT_SYMBOL vmlinux 0x557f5af2 generic_ro_fops +EXPORT_SYMBOL vmlinux 0x5589db28 swiotlb_dma_mapping_error +EXPORT_SYMBOL vmlinux 0x5594be03 bitmap_remap +EXPORT_SYMBOL vmlinux 0x55ccd4d2 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0x55ee0c02 seq_putc +EXPORT_SYMBOL vmlinux 0x55f01d53 simple_readpage +EXPORT_SYMBOL vmlinux 0x55f5019b __kmalloc_node +EXPORT_SYMBOL vmlinux 0x5614b010 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x56291e4e dev_alert +EXPORT_SYMBOL vmlinux 0x562b2784 mnt_unpin +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x56416ab4 scsi_device_resume +EXPORT_SYMBOL vmlinux 0x5642793a radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x56497f4d frontswap_register_ops +EXPORT_SYMBOL vmlinux 0x5660f76d flush_old_exec +EXPORT_SYMBOL vmlinux 0x5666637e tcp_sendpage +EXPORT_SYMBOL vmlinux 0x567112dd tcf_register_action +EXPORT_SYMBOL vmlinux 0x56720dc8 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0x568804ee _lv1_destruct_event_receive_port +EXPORT_SYMBOL vmlinux 0x56a10763 csum_tcpudp_magic +EXPORT_SYMBOL vmlinux 0x56b2af7f sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x56c2b95b rtas_progress +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56d101cc inet_twsk_deschedule +EXPORT_SYMBOL vmlinux 0x56d74b6a noop_qdisc +EXPORT_SYMBOL vmlinux 0x56ddd997 smp_call_function_many +EXPORT_SYMBOL vmlinux 0x56df547b netdev_crit +EXPORT_SYMBOL vmlinux 0x57008d2f bio_uncopy_user +EXPORT_SYMBOL vmlinux 0x571fde5a input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x572647d6 get_mce_fault_addr +EXPORT_SYMBOL vmlinux 0x572e85d4 blk_lookup_devt +EXPORT_SYMBOL vmlinux 0x5730868c pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x5743e6b6 tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x575fe5aa blk_bio_map_sg +EXPORT_SYMBOL vmlinux 0x57645349 dquot_commit +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x576ada2a __bio_clone +EXPORT_SYMBOL vmlinux 0x577aa263 dev_mc_unsync +EXPORT_SYMBOL vmlinux 0x5785384a flex_array_free_parts +EXPORT_SYMBOL vmlinux 0x5792f848 strlcpy +EXPORT_SYMBOL vmlinux 0x579bab50 _lv1_gpu_memory_free +EXPORT_SYMBOL vmlinux 0x57ae2a08 agp_bind_memory +EXPORT_SYMBOL vmlinux 0x57af0eba pci_assign_resource +EXPORT_SYMBOL vmlinux 0x57e11535 ip_route_me_harder +EXPORT_SYMBOL vmlinux 0x57f859e8 __break_lease +EXPORT_SYMBOL vmlinux 0x5820b02b netpoll_setup +EXPORT_SYMBOL vmlinux 0x582429b8 mount_pseudo +EXPORT_SYMBOL vmlinux 0x58257e68 tcp_release_cb +EXPORT_SYMBOL vmlinux 0x582a0253 simple_fill_super +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x5840d084 nobh_truncate_page +EXPORT_SYMBOL vmlinux 0x5857b225 ioread16_rep +EXPORT_SYMBOL vmlinux 0x5865f8e5 submit_bio_wait +EXPORT_SYMBOL vmlinux 0x586bad3e __dquot_transfer +EXPORT_SYMBOL vmlinux 0x587616f1 vfs_fstatat +EXPORT_SYMBOL vmlinux 0x587a128f ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x587af6f7 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0x58824d57 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x588a72f5 inode_get_bytes +EXPORT_SYMBOL vmlinux 0x58b333cf blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0x58d1070a of_get_address +EXPORT_SYMBOL vmlinux 0x58fcf582 arp_create +EXPORT_SYMBOL vmlinux 0x58fd1bca vm_mmap +EXPORT_SYMBOL vmlinux 0x5907fe4c ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x59088e02 uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x590cb167 qdisc_list_del +EXPORT_SYMBOL vmlinux 0x59179946 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0x59270f5e of_dev_put +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x595151f8 scsi_cmd_get_serial +EXPORT_SYMBOL vmlinux 0x595d0946 empty_zero_page +EXPORT_SYMBOL vmlinux 0x5967c929 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x5989f8c5 inet6_ioctl +EXPORT_SYMBOL vmlinux 0x5991219c cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x59b009d1 pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0x59b3378a completion_done +EXPORT_SYMBOL vmlinux 0x59b9c2cc input_allocate_device +EXPORT_SYMBOL vmlinux 0x59e0e7e1 netdev_all_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x5a025f7b arch_local_irq_restore +EXPORT_SYMBOL vmlinux 0x5a0aaa12 proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x5a3ba9f1 nf_afinfo +EXPORT_SYMBOL vmlinux 0x5a461d93 blk_queue_make_request +EXPORT_SYMBOL vmlinux 0x5a5536c2 param_ops_invbool +EXPORT_SYMBOL vmlinux 0x5a775baa dma_common_get_sgtable +EXPORT_SYMBOL vmlinux 0x5a84346f blk_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x5a921311 strncmp +EXPORT_SYMBOL vmlinux 0x5a9f1d63 memmove +EXPORT_SYMBOL vmlinux 0x5ab14a20 do_sync_write +EXPORT_SYMBOL vmlinux 0x5abe1d55 blk_queue_dma_pad +EXPORT_SYMBOL vmlinux 0x5ae50279 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x5aedb50f key_link +EXPORT_SYMBOL vmlinux 0x5afc6a6f _dev_info +EXPORT_SYMBOL vmlinux 0x5b11bb82 key_reject_and_link +EXPORT_SYMBOL vmlinux 0x5b2e1828 n_tty_compat_ioctl_helper +EXPORT_SYMBOL vmlinux 0x5b39988e ftrace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0x5b43f1f1 rtas_service_present +EXPORT_SYMBOL vmlinux 0x5b471bc8 flush_dcache_page +EXPORT_SYMBOL vmlinux 0x5b510c79 serio_interrupt +EXPORT_SYMBOL vmlinux 0x5b56860c vm_munmap +EXPORT_SYMBOL vmlinux 0x5b6322a7 simple_empty +EXPORT_SYMBOL vmlinux 0x5b7de4c2 netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0x5b933255 tty_port_close +EXPORT_SYMBOL vmlinux 0x5b9828c5 dma_spin_lock +EXPORT_SYMBOL vmlinux 0x5ba748ac generic_fillattr +EXPORT_SYMBOL vmlinux 0x5bb422ea kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x5bb42cf6 elevator_change +EXPORT_SYMBOL vmlinux 0x5bb9b76e cfb_copyarea +EXPORT_SYMBOL vmlinux 0x5bbd3661 find_or_create_page +EXPORT_SYMBOL vmlinux 0x5bc10524 printk_emit +EXPORT_SYMBOL vmlinux 0x5bc69b3f eth_rebuild_header +EXPORT_SYMBOL vmlinux 0x5bf5b10d register_netdev +EXPORT_SYMBOL vmlinux 0x5bf63794 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x5bfbbc0a input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x5bfea1c3 __lock_page +EXPORT_SYMBOL vmlinux 0x5c0318fa is_bad_inode +EXPORT_SYMBOL vmlinux 0x5c37f319 _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x5c537e87 setup_new_exec +EXPORT_SYMBOL vmlinux 0x5c5fd726 locks_free_lock +EXPORT_SYMBOL vmlinux 0x5c65ca8f splice_from_pipe_feed +EXPORT_SYMBOL vmlinux 0x5c740f87 nf_register_hook +EXPORT_SYMBOL vmlinux 0x5c7e399b uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x5c8e392c sys_fillrect +EXPORT_SYMBOL vmlinux 0x5c9d7d98 bio_integrity_prep +EXPORT_SYMBOL vmlinux 0x5cb53e55 pci_release_region +EXPORT_SYMBOL vmlinux 0x5ccc9045 _lv1_close_device +EXPORT_SYMBOL vmlinux 0x5ce08c79 __pagevec_lru_add +EXPORT_SYMBOL vmlinux 0x5cf30e10 __debugger_ipi +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5cf5ea6f flock_lock_file_wait +EXPORT_SYMBOL vmlinux 0x5d181e94 mmc_gpio_free_ro +EXPORT_SYMBOL vmlinux 0x5d1a4657 bdi_register +EXPORT_SYMBOL vmlinux 0x5d2d37d3 tty_register_device +EXPORT_SYMBOL vmlinux 0x5d2f6789 blk_get_request +EXPORT_SYMBOL vmlinux 0x5d41c87c param_ops_charp +EXPORT_SYMBOL vmlinux 0x5d550c4d scsi_sd_probe_domain +EXPORT_SYMBOL vmlinux 0x5d5b5a16 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x5d6bdce1 flex_array_alloc +EXPORT_SYMBOL vmlinux 0x5dc02b39 padata_register_cpumask_notifier +EXPORT_SYMBOL vmlinux 0x5df768e6 dev_remove_offload +EXPORT_SYMBOL vmlinux 0x5e006e2c i2c_release_client +EXPORT_SYMBOL vmlinux 0x5e09a016 thermal_cdev_update +EXPORT_SYMBOL vmlinux 0x5e3a8a9c __wake_up +EXPORT_SYMBOL vmlinux 0x5e47f336 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0x5e4aab26 nf_hook_slow +EXPORT_SYMBOL vmlinux 0x5e4dcf56 __memcg_kmem_get_cache +EXPORT_SYMBOL vmlinux 0x5e529b19 __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x5e5dd323 dev_close +EXPORT_SYMBOL vmlinux 0x5e70db2b pci_clear_mwi +EXPORT_SYMBOL vmlinux 0x5e7a4cf0 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0x5e7ba6d3 mfd_add_devices +EXPORT_SYMBOL vmlinux 0x5e80f37c ipmi_unregister_for_cmd +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5ea50857 i8042_install_filter +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ebb60ad tcp_mtup_init +EXPORT_SYMBOL vmlinux 0x5ec2acdb tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0x5ec48c37 blk_end_request_all +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ee6b49d rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x5ee9049f request_firmware +EXPORT_SYMBOL vmlinux 0x5f005368 kstrtou8 +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f0a727f d_invalidate +EXPORT_SYMBOL vmlinux 0x5f0c703f dm_get_mapinfo +EXPORT_SYMBOL vmlinux 0x5f1c39df dqput +EXPORT_SYMBOL vmlinux 0x5f22da04 insert_inode_locked +EXPORT_SYMBOL vmlinux 0x5f28c2dc idr_remove +EXPORT_SYMBOL vmlinux 0x5f2efd4b __blk_end_request_cur +EXPORT_SYMBOL vmlinux 0x5f3c8f5c mmc_assume_removable +EXPORT_SYMBOL vmlinux 0x5f4b25f6 srp_reconnect_rport +EXPORT_SYMBOL vmlinux 0x5f7d5b99 skb_put +EXPORT_SYMBOL vmlinux 0x5f8a2728 isa_io_base +EXPORT_SYMBOL vmlinux 0x5f8cc3f7 write_inode_now +EXPORT_SYMBOL vmlinux 0x5fa58594 xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0x5fc794e5 inet_frags_init +EXPORT_SYMBOL vmlinux 0x5fcdcc05 ipmi_get_my_LUN +EXPORT_SYMBOL vmlinux 0x5fda0227 vfs_stat +EXPORT_SYMBOL vmlinux 0x600529af dcb_setapp +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x6008d945 __elv_add_request +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x602aee20 simple_getattr +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x603f5a06 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x60460141 elevator_exit +EXPORT_SYMBOL vmlinux 0x604c55e6 __mem_cgroup_count_vm_event +EXPORT_SYMBOL vmlinux 0x60564357 pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0x6059c42c dev_set_mac_address +EXPORT_SYMBOL vmlinux 0x6062990e ping_prot +EXPORT_SYMBOL vmlinux 0x606d0b09 secure_tcpv6_sequence_number +EXPORT_SYMBOL vmlinux 0x60776523 nf_register_sockopt +EXPORT_SYMBOL vmlinux 0x6086fae9 rwsem_wake +EXPORT_SYMBOL vmlinux 0x608f0816 __frontswap_store +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60df1e3b posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x60e5154d mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0x60e860e2 tty_port_put +EXPORT_SYMBOL vmlinux 0x61229b10 node_to_cpumask_map +EXPORT_SYMBOL vmlinux 0x612390ad netpoll_set_trap +EXPORT_SYMBOL vmlinux 0x6124cc23 phy_connect_direct +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x612de3ac __skb_get_rxhash +EXPORT_SYMBOL vmlinux 0x614cf947 pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0x61538ad0 param_get_charp +EXPORT_SYMBOL vmlinux 0x61603898 __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x617c90d8 max8998_read_reg +EXPORT_SYMBOL vmlinux 0x61894d6d blk_mq_insert_request +EXPORT_SYMBOL vmlinux 0x61919c0e sg_miter_next +EXPORT_SYMBOL vmlinux 0x61939bf9 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0x619cb7dd simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x61a4487c _lv1_gpu_device_unmap +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61bd6d38 tcp_child_process +EXPORT_SYMBOL vmlinux 0x61c394e4 ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x61dcdcd3 _lv1_pause +EXPORT_SYMBOL vmlinux 0x61eef2c9 _insb +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x6225637e md5_transform +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x62362eee __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x62388873 iov_iter_copy_from_user +EXPORT_SYMBOL vmlinux 0x6242b251 scsi_rescan_device +EXPORT_SYMBOL vmlinux 0x62538167 slhc_toss +EXPORT_SYMBOL vmlinux 0x626bc98a blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x62748e77 scsi_setup_fs_cmnd +EXPORT_SYMBOL vmlinux 0x6275edbf __xfrm_init_state +EXPORT_SYMBOL vmlinux 0x62827bec security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x62aa0167 sock_wmalloc +EXPORT_SYMBOL vmlinux 0x62c9e7da disk_stack_limits +EXPORT_SYMBOL vmlinux 0x62cdd630 tcf_hash_create +EXPORT_SYMBOL vmlinux 0x63187451 pcie_aspm_support_enabled +EXPORT_SYMBOL vmlinux 0x63231951 gen_pool_create +EXPORT_SYMBOL vmlinux 0x63396aec __debugger_break_match +EXPORT_SYMBOL vmlinux 0x634aaf7b neigh_table_clear +EXPORT_SYMBOL vmlinux 0x63525cb9 node_data +EXPORT_SYMBOL vmlinux 0x6360d639 cpu_all_bits +EXPORT_SYMBOL vmlinux 0x6365350b submit_bh +EXPORT_SYMBOL vmlinux 0x636fc171 __splice_from_pipe +EXPORT_SYMBOL vmlinux 0x639a89a5 fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x639e07b4 __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0x63c95695 of_phy_connect_fixed_link +EXPORT_SYMBOL vmlinux 0x63db3be2 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63f75920 _lv1_construct_virtual_address_space +EXPORT_SYMBOL vmlinux 0x63fc232f strlen_user +EXPORT_SYMBOL vmlinux 0x63fcf8cb rtnl_notify +EXPORT_SYMBOL vmlinux 0x6403e338 tcp_memory_pressure +EXPORT_SYMBOL vmlinux 0x640c588a find_get_pages_tag +EXPORT_SYMBOL vmlinux 0x6417cdb6 ip6_route_output +EXPORT_SYMBOL vmlinux 0x643dd37c skb_copy_expand +EXPORT_SYMBOL vmlinux 0x64510b48 dump_align +EXPORT_SYMBOL vmlinux 0x645149b7 writeback_in_progress +EXPORT_SYMBOL vmlinux 0x64517698 read_cache_page_async +EXPORT_SYMBOL vmlinux 0x646cc6ab pmu_poll +EXPORT_SYMBOL vmlinux 0x646ec25a key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0x64928f20 lookup_one_len +EXPORT_SYMBOL vmlinux 0x649742c2 bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x64b4fbf8 netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0x64bbc288 string_unescape +EXPORT_SYMBOL vmlinux 0x64f42e24 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x65281504 dquot_destroy +EXPORT_SYMBOL vmlinux 0x652ce9aa nla_memcmp +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x6540884f validate_sp +EXPORT_SYMBOL vmlinux 0x656d39d6 sk_dst_check +EXPORT_SYMBOL vmlinux 0x65804fa4 ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x65b71f55 kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0x65bb58a2 _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65e0d6d7 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x65f3ad9a fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x65f47ae5 gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0x66012ae2 jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0x6637c221 fddi_change_mtu +EXPORT_SYMBOL vmlinux 0x663ab81c tcp_make_synack +EXPORT_SYMBOL vmlinux 0x66415abc compat_sock_get_timestampns +EXPORT_SYMBOL vmlinux 0x6666a898 __free_pages +EXPORT_SYMBOL vmlinux 0x6667330e i2c_register_driver +EXPORT_SYMBOL vmlinux 0x668da8d5 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x66acab4e ata_dev_printk +EXPORT_SYMBOL vmlinux 0x66ad1cb3 _lv1_set_lpm_general_control +EXPORT_SYMBOL vmlinux 0x66cbf14b pmac_xpram_write +EXPORT_SYMBOL vmlinux 0x66dae903 d_genocide +EXPORT_SYMBOL vmlinux 0x67121223 abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x672ebbe0 bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x67352dd1 backlight_force_update +EXPORT_SYMBOL vmlinux 0x673f815e agp_bridges +EXPORT_SYMBOL vmlinux 0x6752ce97 __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0x6756250a netif_carrier_on +EXPORT_SYMBOL vmlinux 0x675b8f61 param_get_string +EXPORT_SYMBOL vmlinux 0x67628ed7 mb_cache_shrink +EXPORT_SYMBOL vmlinux 0x677a1531 kfree_skb_list +EXPORT_SYMBOL vmlinux 0x679ca682 pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x679d679e unregister_cdrom +EXPORT_SYMBOL vmlinux 0x67aee7b9 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67cb9784 ipmi_poll_interface +EXPORT_SYMBOL vmlinux 0x67ee84fe devm_gpiod_get_index +EXPORT_SYMBOL vmlinux 0x68002314 poll_freewait +EXPORT_SYMBOL vmlinux 0x6819145d twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0x682a6a6d pci_enable_device +EXPORT_SYMBOL vmlinux 0x68310d71 netdev_change_features +EXPORT_SYMBOL vmlinux 0x683e87a0 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0x68408e1a blk_queue_find_tag +EXPORT_SYMBOL vmlinux 0x68410984 thaw_super +EXPORT_SYMBOL vmlinux 0x684555d1 jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0x6849a15f flex_array_clear +EXPORT_SYMBOL vmlinux 0x684aada2 of_gpio_simple_xlate +EXPORT_SYMBOL vmlinux 0x68609857 complete_and_exit +EXPORT_SYMBOL vmlinux 0x6865c921 uart_add_one_port +EXPORT_SYMBOL vmlinux 0x686897cd sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x6870e686 xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x68811c71 rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0x68960f3e iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0x68a4555a dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x68b83ac6 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x68cd92eb bio_split +EXPORT_SYMBOL vmlinux 0x68d46c26 security_inode_init_security +EXPORT_SYMBOL vmlinux 0x68e05d57 getrawmonotonic +EXPORT_SYMBOL vmlinux 0x68e1ef51 smu_present +EXPORT_SYMBOL vmlinux 0x6902242f ppc_md +EXPORT_SYMBOL vmlinux 0x690aca56 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0x691752df mdiobus_register +EXPORT_SYMBOL vmlinux 0x693e8607 fget_light +EXPORT_SYMBOL vmlinux 0x6957a35a con_copy_unimap +EXPORT_SYMBOL vmlinux 0x696181e9 udp_lib_rehash +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x6980432f dma_set_mask +EXPORT_SYMBOL vmlinux 0x699ccbf8 _lv1_deconfigure_virtual_uart_irq +EXPORT_SYMBOL vmlinux 0x69a0ca7d iowrite16be +EXPORT_SYMBOL vmlinux 0x69a358a6 iomem_resource +EXPORT_SYMBOL vmlinux 0x69a88005 ps2_init +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69c20b5a __remove_inode_hash +EXPORT_SYMBOL vmlinux 0x69d38ed9 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x69e27c7a bitmap_copy_le +EXPORT_SYMBOL vmlinux 0x69e54656 do_splice_from +EXPORT_SYMBOL vmlinux 0x69e96b68 unregister_key_type +EXPORT_SYMBOL vmlinux 0x69fe2835 mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a0c8e92 giveup_altivec +EXPORT_SYMBOL vmlinux 0x6a2dfb40 cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0x6a333de3 pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0x6a3f4119 mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0x6a41d586 mmc_can_discard +EXPORT_SYMBOL vmlinux 0x6a564015 tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a5fa363 sigprocmask +EXPORT_SYMBOL vmlinux 0x6a61f874 to_tm +EXPORT_SYMBOL vmlinux 0x6a678463 register_quota_format +EXPORT_SYMBOL vmlinux 0x6a740c54 gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x6a7479d6 xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x6a76f3ac blk_iopoll_enable +EXPORT_SYMBOL vmlinux 0x6a83f344 empty_aops +EXPORT_SYMBOL vmlinux 0x6aaf797d fb_set_suspend +EXPORT_SYMBOL vmlinux 0x6aba2413 always_delete_dentry +EXPORT_SYMBOL vmlinux 0x6abda2c6 single_open_size +EXPORT_SYMBOL vmlinux 0x6acb973d iowrite32be +EXPORT_SYMBOL vmlinux 0x6ae6232d inet6_register_protosw +EXPORT_SYMBOL vmlinux 0x6b03a9f5 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0x6b06fdce delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x6b1b67d3 __bdevname +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b358cab _lv1_read_repository_node +EXPORT_SYMBOL vmlinux 0x6b387694 _lv1_end_of_interrupt_ext +EXPORT_SYMBOL vmlinux 0x6b3dc47b ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0x6b465440 dquot_free_inode +EXPORT_SYMBOL vmlinux 0x6b4b2d70 dentry_path_raw +EXPORT_SYMBOL vmlinux 0x6b589a6e _lv1_net_add_multicast_address +EXPORT_SYMBOL vmlinux 0x6b5dfe73 __debugger_bpt +EXPORT_SYMBOL vmlinux 0x6b640864 nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6b6f0c4b _lv1_create_repository_node +EXPORT_SYMBOL vmlinux 0x6b7f1917 idr_find_slowpath +EXPORT_SYMBOL vmlinux 0x6ba42b39 mmc_can_erase +EXPORT_SYMBOL vmlinux 0x6bb2d113 ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x6bc09178 ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bceaebc gen_replace_estimator +EXPORT_SYMBOL vmlinux 0x6bd85e09 follow_up +EXPORT_SYMBOL vmlinux 0x6bda8cd0 twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0x6bdcfd99 qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x6beb2078 param_set_copystring +EXPORT_SYMBOL vmlinux 0x6bf59011 skb_queue_head +EXPORT_SYMBOL vmlinux 0x6c51a836 sysctl_tcp_notsent_lowat +EXPORT_SYMBOL vmlinux 0x6c5b931d __ethtool_get_settings +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c665691 flex_array_shrink +EXPORT_SYMBOL vmlinux 0x6c6ae70d phy_stop_interrupts +EXPORT_SYMBOL vmlinux 0x6c702af7 sysctl_udp_rmem_min +EXPORT_SYMBOL vmlinux 0x6cb2ff8b sock_i_uid +EXPORT_SYMBOL vmlinux 0x6cbac210 alloc_file +EXPORT_SYMBOL vmlinux 0x6cbd5907 of_get_min_tck +EXPORT_SYMBOL vmlinux 0x6cc9f383 neigh_destroy +EXPORT_SYMBOL vmlinux 0x6cd8c86b __crc32c_le_combine +EXPORT_SYMBOL vmlinux 0x6cec163b icmpv6_send +EXPORT_SYMBOL vmlinux 0x6cf70651 netdev_lower_dev_get_private_rcu +EXPORT_SYMBOL vmlinux 0x6d09e485 scsi_host_put +EXPORT_SYMBOL vmlinux 0x6d0f1f89 dm_table_get_mode +EXPORT_SYMBOL vmlinux 0x6d1743eb _lv1_get_total_execution_time +EXPORT_SYMBOL vmlinux 0x6d1a6bdb d_instantiate_unique +EXPORT_SYMBOL vmlinux 0x6d236746 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x6d27ef64 __bitmap_empty +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d374825 skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x6d56230e ioctl_by_bdev +EXPORT_SYMBOL vmlinux 0x6d8bec3b pci_set_mwi +EXPORT_SYMBOL vmlinux 0x6da25a27 pci_find_bus +EXPORT_SYMBOL vmlinux 0x6da928f4 _insw_ns +EXPORT_SYMBOL vmlinux 0x6dac5cf6 fget_raw +EXPORT_SYMBOL vmlinux 0x6dad7e6a request_firmware_nowait +EXPORT_SYMBOL vmlinux 0x6dbeb8d5 dma_common_mmap +EXPORT_SYMBOL vmlinux 0x6dcc19c9 mnt_set_expiry +EXPORT_SYMBOL vmlinux 0x6dd3b9fc phys_mem_access_prot +EXPORT_SYMBOL vmlinux 0x6dea09fb twl6040_power +EXPORT_SYMBOL vmlinux 0x6dea9d09 ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x6def2db2 half_md4_transform +EXPORT_SYMBOL vmlinux 0x6df5e98d neigh_compat_output +EXPORT_SYMBOL vmlinux 0x6dfcb390 rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x6e0475f2 blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x6e13c9f8 inet_frag_maybe_warn_overflow +EXPORT_SYMBOL vmlinux 0x6e297050 xfrm_lookup +EXPORT_SYMBOL vmlinux 0x6e382875 tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0x6e4389f3 tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0x6e5a226c netdev_alert +EXPORT_SYMBOL vmlinux 0x6e5cc937 unlock_new_inode +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e764332 idr_destroy +EXPORT_SYMBOL vmlinux 0x6e85a06c seq_vprintf +EXPORT_SYMBOL vmlinux 0x6e8c10f4 invalidate_partition +EXPORT_SYMBOL vmlinux 0x6e97f6cd pci_disable_device +EXPORT_SYMBOL vmlinux 0x6ebc5149 param_ops_long +EXPORT_SYMBOL vmlinux 0x6ed7c11e posix_test_lock +EXPORT_SYMBOL vmlinux 0x6efe8261 dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x6f193d78 __destroy_inode +EXPORT_SYMBOL vmlinux 0x6f208816 prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x6f20960a full_name_hash +EXPORT_SYMBOL vmlinux 0x6f473ab9 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0x6f6725d2 devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0x6f69edb2 pci_find_capability +EXPORT_SYMBOL vmlinux 0x6f6c2cc7 sock_i_ino +EXPORT_SYMBOL vmlinux 0x6f7cee32 napi_get_frags +EXPORT_SYMBOL vmlinux 0x6f85b211 ida_remove +EXPORT_SYMBOL vmlinux 0x6fa331ed _lv1_construct_io_irq_outlet +EXPORT_SYMBOL vmlinux 0x6fbdc038 search_binary_handler +EXPORT_SYMBOL vmlinux 0x6fca030b unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fd040ec generic_segment_checks +EXPORT_SYMBOL vmlinux 0x6ff60cd2 inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0x701699b2 _lv1_set_spe_privilege_state_area_1_register +EXPORT_SYMBOL vmlinux 0x70304e40 truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x70523a7a __cond_resched_softirq +EXPORT_SYMBOL vmlinux 0x7054a3e4 request_dma +EXPORT_SYMBOL vmlinux 0x705c3f28 mmc_detect_change +EXPORT_SYMBOL vmlinux 0x70623650 uart_get_divisor +EXPORT_SYMBOL vmlinux 0x707489be padata_remove_cpu +EXPORT_SYMBOL vmlinux 0x707f43f6 __ctzdi2 +EXPORT_SYMBOL vmlinux 0x709b1069 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0x70bc17d7 inode_wait +EXPORT_SYMBOL vmlinux 0x70d053fd try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x70d1d81e dst_destroy +EXPORT_SYMBOL vmlinux 0x70dbb7d5 poll_schedule_timeout +EXPORT_SYMBOL vmlinux 0x70e31ade bio_copy_user +EXPORT_SYMBOL vmlinux 0x70f86c70 pmu_queue_request +EXPORT_SYMBOL vmlinux 0x71043a94 tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0x7111669e pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x712f4768 netdev_err +EXPORT_SYMBOL vmlinux 0x71667ddb pci_enable_msix +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x71781682 mntput +EXPORT_SYMBOL vmlinux 0x719395da tty_port_close_start +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71a74eed __devm_release_region +EXPORT_SYMBOL vmlinux 0x71c329f6 ipmi_smi_add_proc_entry +EXPORT_SYMBOL vmlinux 0x71c91b24 generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0x71cbafa4 agp_free_memory +EXPORT_SYMBOL vmlinux 0x71e9e324 tcp_gro_complete +EXPORT_SYMBOL vmlinux 0x7202a6e6 devm_free_irq +EXPORT_SYMBOL vmlinux 0x7217666d bdget_disk +EXPORT_SYMBOL vmlinux 0x7243eb98 devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0x72768ebd mmc_put_card +EXPORT_SYMBOL vmlinux 0x72815669 alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x729b4a83 _lv1_get_spe_all_interrupt_statuses +EXPORT_SYMBOL vmlinux 0x72b243d4 free_dma +EXPORT_SYMBOL vmlinux 0x72be8609 inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0x72c98139 __arch_hweight64 +EXPORT_SYMBOL vmlinux 0x72d1a8d7 ___pskb_trim +EXPORT_SYMBOL vmlinux 0x72d9a34e qdisc_watchdog_schedule_ns +EXPORT_SYMBOL vmlinux 0x72e9a61c __f_setown +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72eec826 mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0x72f22323 free_buffer_head +EXPORT_SYMBOL vmlinux 0x72f368f4 release_firmware +EXPORT_SYMBOL vmlinux 0x7315a4e9 twl6030_mmc_card_detect_config +EXPORT_SYMBOL vmlinux 0x731a747a pci_io_base +EXPORT_SYMBOL vmlinux 0x731cc712 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0x73254a31 mmc_start_bkops +EXPORT_SYMBOL vmlinux 0x7331036e rtnl_configure_link +EXPORT_SYMBOL vmlinux 0x733c3b54 kasprintf +EXPORT_SYMBOL vmlinux 0x733df7c3 vm_event_states +EXPORT_SYMBOL vmlinux 0x734edc49 alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x734f0382 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0x735d8503 add_wait_queue +EXPORT_SYMBOL vmlinux 0x73668873 pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0x73710a3e dqstats +EXPORT_SYMBOL vmlinux 0x737de5e9 radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0x7382094f jbd2_journal_load +EXPORT_SYMBOL vmlinux 0x738752fb netdev_printk +EXPORT_SYMBOL vmlinux 0x739939e3 kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0x73ac2e89 elevator_init +EXPORT_SYMBOL vmlinux 0x73b160bb finish_no_open +EXPORT_SYMBOL vmlinux 0x73b282f3 file_update_time +EXPORT_SYMBOL vmlinux 0x73ed2bce sock_recvmsg +EXPORT_SYMBOL vmlinux 0x740f30cf of_platform_bus_probe +EXPORT_SYMBOL vmlinux 0x741f003d get_pci_dma_ops +EXPORT_SYMBOL vmlinux 0x742661bf xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x7469fcfe radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x747195f0 hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x74753f5f kfree_put_link +EXPORT_SYMBOL vmlinux 0x747efc42 blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0x747f014b generic_file_aio_read +EXPORT_SYMBOL vmlinux 0x7485e15e unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x7497d4ff sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x749b003e make_kgid +EXPORT_SYMBOL vmlinux 0x74b5f3fb dmam_pool_create +EXPORT_SYMBOL vmlinux 0x74b79762 agp_generic_alloc_by_type +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74c502ff audit_log_task_info +EXPORT_SYMBOL vmlinux 0x74d12d8a iterate_supers_type +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74fe8730 sys_ctrler +EXPORT_SYMBOL vmlinux 0x7503b23a dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0x751b9a84 xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0x751c2917 __wait_on_bit +EXPORT_SYMBOL vmlinux 0x7532588a alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x7534f010 pci_restore_state +EXPORT_SYMBOL vmlinux 0x7538b132 agp_off +EXPORT_SYMBOL vmlinux 0x754dac78 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x755f7f17 pci_set_ltr +EXPORT_SYMBOL vmlinux 0x756adec7 pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0x756c786e _lv1_connect_interrupt_event_receive_port +EXPORT_SYMBOL vmlinux 0x756ce630 pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0x757075fb tcp_read_sock +EXPORT_SYMBOL vmlinux 0x75754995 _lv1_storage_check_async_status +EXPORT_SYMBOL vmlinux 0x75790afa __vio_register_driver +EXPORT_SYMBOL vmlinux 0x75994700 add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0x75ad3c9b cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75bdea12 iommu_area_alloc +EXPORT_SYMBOL vmlinux 0x75be6702 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x75c06743 fsnotify_get_group +EXPORT_SYMBOL vmlinux 0x75e4f5aa pasemi_read_mac_reg +EXPORT_SYMBOL vmlinux 0x75fac9dd filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0x75fcf20e fib_default_rule_add +EXPORT_SYMBOL vmlinux 0x76088856 sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x7611b7ee devm_ioport_map +EXPORT_SYMBOL vmlinux 0x76186aed blk_mq_run_queues +EXPORT_SYMBOL vmlinux 0x76190b6f sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0x761a5303 giveup_vsx +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x764bd77c request_resource +EXPORT_SYMBOL vmlinux 0x764e2224 _lv1_disconnect_irq_plug_ext +EXPORT_SYMBOL vmlinux 0x765ff474 crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x767969b1 input_grab_device +EXPORT_SYMBOL vmlinux 0x76b9d3cb blk_rq_map_user +EXPORT_SYMBOL vmlinux 0x76bed872 mach_pseries +EXPORT_SYMBOL vmlinux 0x76bf656d __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x76cacfd4 vio_unregister_device +EXPORT_SYMBOL vmlinux 0x76d13c26 machine_id +EXPORT_SYMBOL vmlinux 0x76d2cc17 jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x77144936 _lv1_disconnect_irq_plug +EXPORT_SYMBOL vmlinux 0x771cf835 dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x773a9c94 blk_iopoll_enabled +EXPORT_SYMBOL vmlinux 0x773fa409 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x77835f91 end_page_writeback +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x77a1472f mmc_cache_ctrl +EXPORT_SYMBOL vmlinux 0x77b266bd kmalloc_dma_caches +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77cb22c1 dma_iommu_ops +EXPORT_SYMBOL vmlinux 0x77cc9188 file_ns_capable +EXPORT_SYMBOL vmlinux 0x77ce0f78 compat_ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x77df0847 __set_personality +EXPORT_SYMBOL vmlinux 0x77ecac9f zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x77f099cd ll_rw_block +EXPORT_SYMBOL vmlinux 0x781ad416 request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0x7830b04f hvc_put_chars +EXPORT_SYMBOL vmlinux 0x78337f4a scsi_init_io +EXPORT_SYMBOL vmlinux 0x783831bd i8042_check_port_owner +EXPORT_SYMBOL vmlinux 0x783b3563 wake_up_atomic_t +EXPORT_SYMBOL vmlinux 0x7846af3e __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x784b6d25 pci_match_id +EXPORT_SYMBOL vmlinux 0x786cc108 phy_scan_fixups +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x78983bd5 netif_carrier_off +EXPORT_SYMBOL vmlinux 0x789a17f7 _lv1_destruct_logical_spe +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78a0da86 blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x78cb5a9c ipv6_select_ident +EXPORT_SYMBOL vmlinux 0x78cf990f inet6_getname +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78fd36e7 ipmi_request_supply_msgs +EXPORT_SYMBOL vmlinux 0x790df6ca __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x790e01b2 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0x7924178b scsi_execute +EXPORT_SYMBOL vmlinux 0x7930d225 of_device_is_compatible +EXPORT_SYMBOL vmlinux 0x796288e9 phy_detach +EXPORT_SYMBOL vmlinux 0x796fc5ce scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0x797c8fa9 cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x7984eefc key_update +EXPORT_SYMBOL vmlinux 0x799a9ee4 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0x79a29f29 alloc_disk +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79b9cc97 mount_subtree +EXPORT_SYMBOL vmlinux 0x79be308f pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0x7a00ee96 pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0x7a027bc3 __devcgroup_inode_permission +EXPORT_SYMBOL vmlinux 0x7a188791 prandom_bytes +EXPORT_SYMBOL vmlinux 0x7a275dfc from_kgid_munged +EXPORT_SYMBOL vmlinux 0x7a27c184 ewma_init +EXPORT_SYMBOL vmlinux 0x7a30e0e9 abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0x7a31284f arp_send +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a6a6125 blk_sync_queue +EXPORT_SYMBOL vmlinux 0x7a6a626d scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x7a925833 cpufreq_get_global_kobject +EXPORT_SYMBOL vmlinux 0x7aa9e259 _lv1_map_htab +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7add44b5 posix_acl_valid +EXPORT_SYMBOL vmlinux 0x7ae5d19d scsi_calculate_bounce_limit +EXPORT_SYMBOL vmlinux 0x7aeb84ae insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0x7b004dd6 qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0x7b099a3f compat_mc_setsockopt +EXPORT_SYMBOL vmlinux 0x7b16235f hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x7b1971cc bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0x7b234aee srp_rport_put +EXPORT_SYMBOL vmlinux 0x7b2aef6c __krealloc +EXPORT_SYMBOL vmlinux 0x7b2b659b md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0x7b495e00 dev_remove_pack +EXPORT_SYMBOL vmlinux 0x7b4f73f9 __inet6_hash +EXPORT_SYMBOL vmlinux 0x7b8442de ip_getsockopt +EXPORT_SYMBOL vmlinux 0x7b91efb9 block_invalidatepage +EXPORT_SYMBOL vmlinux 0x7ba52cfd jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x7bbbe2ce blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x7be9230e release_pages +EXPORT_SYMBOL vmlinux 0x7c003aef _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0x7c04299b generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x7c0e6b59 key_payload_reserve +EXPORT_SYMBOL vmlinux 0x7c12a2d9 __get_page_tail +EXPORT_SYMBOL vmlinux 0x7c1372e8 panic +EXPORT_SYMBOL vmlinux 0x7c27156c rtas_online_cpus_mask +EXPORT_SYMBOL vmlinux 0x7c2d098f krealloc +EXPORT_SYMBOL vmlinux 0x7c2f4939 stop_tty +EXPORT_SYMBOL vmlinux 0x7c42100e nonseekable_open +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c4a13ee __blk_run_queue +EXPORT_SYMBOL vmlinux 0x7c61340c __release_region +EXPORT_SYMBOL vmlinux 0x7c6d7fed register_sysctl +EXPORT_SYMBOL vmlinux 0x7c72142d mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0x7c914a13 iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0x7c9291d1 csum_partial_copy_generic +EXPORT_SYMBOL vmlinux 0x7c931043 pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x7c98845d twl_i2c_read +EXPORT_SYMBOL vmlinux 0x7c989a79 udp_poll +EXPORT_SYMBOL vmlinux 0x7cb1ae69 cpu_down +EXPORT_SYMBOL vmlinux 0x7cb85355 nlmsg_notify +EXPORT_SYMBOL vmlinux 0x7cc324b1 blk_peek_request +EXPORT_SYMBOL vmlinux 0x7cc578da param_get_long +EXPORT_SYMBOL vmlinux 0x7cc5b31f bitmap_start_sync +EXPORT_SYMBOL vmlinux 0x7cd3316e mmc_power_save_host +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7cf3a16b put_cmsg +EXPORT_SYMBOL vmlinux 0x7d06f374 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d11c268 jiffies +EXPORT_SYMBOL vmlinux 0x7d46d6af no_llseek +EXPORT_SYMBOL vmlinux 0x7d66a78c blk_run_queue +EXPORT_SYMBOL vmlinux 0x7d683488 xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0x7da4ebd8 __mmc_claim_host +EXPORT_SYMBOL vmlinux 0x7da90cbe ppp_unit_number +EXPORT_SYMBOL vmlinux 0x7db293c6 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x7dc0e109 idr_get_next +EXPORT_SYMBOL vmlinux 0x7dc97879 rtas_get_error_log_max +EXPORT_SYMBOL vmlinux 0x7dd8e5f7 pcim_pin_device +EXPORT_SYMBOL vmlinux 0x7ddbcc22 pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7e0ad19d input_flush_device +EXPORT_SYMBOL vmlinux 0x7e1a471b elv_rb_del +EXPORT_SYMBOL vmlinux 0x7e31bab4 mach_powermac +EXPORT_SYMBOL vmlinux 0x7e394c4e sysctl_local_reserved_ports +EXPORT_SYMBOL vmlinux 0x7e49f281 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0x7e5ba96a jbd2__journal_start +EXPORT_SYMBOL vmlinux 0x7e5cb408 tcf_exts_change +EXPORT_SYMBOL vmlinux 0x7e747820 phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0x7e7f23a6 blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x7e84f20b tty_port_destroy +EXPORT_SYMBOL vmlinux 0x7e87227e slhc_compress +EXPORT_SYMBOL vmlinux 0x7e9ce3c6 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0x7eaba052 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0x7ef3fd71 inet6_add_protocol +EXPORT_SYMBOL vmlinux 0x7efb55ed iunique +EXPORT_SYMBOL vmlinux 0x7f20bf46 of_match_device +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f30d9f1 abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0x7f33a715 serio_close +EXPORT_SYMBOL vmlinux 0x7f450982 splice_from_pipe_begin +EXPORT_SYMBOL vmlinux 0x7f4ea4cd fb_show_logo +EXPORT_SYMBOL vmlinux 0x7f5de4d8 mntget +EXPORT_SYMBOL vmlinux 0x7f94c8b4 scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0x7fa495f4 __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0x7fafa334 neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x7fafaa39 blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0x7fbe9f45 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0x7fce5a1d replace_mount_options +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fe38f48 sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x7fe9a060 _lv1_net_stop_tx_dma +EXPORT_SYMBOL vmlinux 0x7ff52e9a skb_copy +EXPORT_SYMBOL vmlinux 0x8002b945 should_remove_suid +EXPORT_SYMBOL vmlinux 0x8008df94 of_get_ddr_timings +EXPORT_SYMBOL vmlinux 0x802d0e93 crc32_le +EXPORT_SYMBOL vmlinux 0x80313063 soft_cursor +EXPORT_SYMBOL vmlinux 0x8036d5a8 dev_set_allmulti +EXPORT_SYMBOL vmlinux 0x804f7bc8 cfb_imageblit +EXPORT_SYMBOL vmlinux 0x804f922a ipmi_addr_length +EXPORT_SYMBOL vmlinux 0x806033dc filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x80640145 scsi_get_command +EXPORT_SYMBOL vmlinux 0x80671e34 __put_cred +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80cec33e generic_setxattr +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x814e7730 nf_ct_destroy +EXPORT_SYMBOL vmlinux 0x814fd8cb nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x8152b2aa of_node_put +EXPORT_SYMBOL vmlinux 0x81533963 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x818ff201 iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0x81a07f4e _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0x81a2d919 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x81afab3c tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0x81c0a84f rtas_set_indicator +EXPORT_SYMBOL vmlinux 0x81d9f7f2 _lv1_put_iopte +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81f76ee0 __pagevec_release +EXPORT_SYMBOL vmlinux 0x81f850b8 pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x820c4cc0 proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0x8211d605 macio_dev_put +EXPORT_SYMBOL vmlinux 0x82308b18 xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0x82503cc2 d_alloc_pseudo +EXPORT_SYMBOL vmlinux 0x8251bcc3 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x825e5c42 bmap +EXPORT_SYMBOL vmlinux 0x825fb6ad netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0x8260686f bitmap_find_next_zero_area +EXPORT_SYMBOL vmlinux 0x8267f278 dquot_disable +EXPORT_SYMBOL vmlinux 0x827fe099 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x828709ef set_blocksize +EXPORT_SYMBOL vmlinux 0x82a3bca9 devfreq_add_device +EXPORT_SYMBOL vmlinux 0x82acfb70 blk_iopoll_sched +EXPORT_SYMBOL vmlinux 0x82e5a238 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x82fb1d2a load_nls_default +EXPORT_SYMBOL vmlinux 0x8309687e simple_unlink +EXPORT_SYMBOL vmlinux 0x8316c926 twl6040_set_bits +EXPORT_SYMBOL vmlinux 0x8326203d set_binfmt +EXPORT_SYMBOL vmlinux 0x8328cd59 dquot_alloc +EXPORT_SYMBOL vmlinux 0x832c6afb atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x834bb05b phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0x834eacf9 directly_mappable_cdev_bdi +EXPORT_SYMBOL vmlinux 0x835ffb7b get_super_thawed +EXPORT_SYMBOL vmlinux 0x838637b5 udp6_csum_init +EXPORT_SYMBOL vmlinux 0x839134ca __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0x83a476ce bitmap_scnlistprintf +EXPORT_SYMBOL vmlinux 0x83af0f67 pci_scan_slot +EXPORT_SYMBOL vmlinux 0x83af2397 fb_get_mode +EXPORT_SYMBOL vmlinux 0x83badb7e redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0x83d43869 dmam_free_noncoherent +EXPORT_SYMBOL vmlinux 0x83ee46a5 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0x83f33e44 netpoll_rx_enable +EXPORT_SYMBOL vmlinux 0x841962f8 param_get_ushort +EXPORT_SYMBOL vmlinux 0x8421d212 ilookup +EXPORT_SYMBOL vmlinux 0x8449fda1 sk_reset_timer +EXPORT_SYMBOL vmlinux 0x845124e0 ps3_mm_phys_to_lpar +EXPORT_SYMBOL vmlinux 0x8462e5f4 mddev_congested +EXPORT_SYMBOL vmlinux 0x8465ca8d blk_mq_alloc_reserved_request +EXPORT_SYMBOL vmlinux 0x848748e2 simple_release_fs +EXPORT_SYMBOL vmlinux 0x848ba41b ihold +EXPORT_SYMBOL vmlinux 0x8499acc0 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0x849fe807 csum_and_copy_from_user +EXPORT_SYMBOL vmlinux 0x84bd69bf dq_data_lock +EXPORT_SYMBOL vmlinux 0x84cd2531 skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0x84d6d504 compat_ip_getsockopt +EXPORT_SYMBOL vmlinux 0x84e127d4 mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0x84eb082d jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0x84f58c7d dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0x84ffea8b idr_preload +EXPORT_SYMBOL vmlinux 0x85078c20 get_write_access +EXPORT_SYMBOL vmlinux 0x8509c540 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0x8514fba7 ndo_dflt_bridge_getlink +EXPORT_SYMBOL vmlinux 0x8518eca9 param_get_short +EXPORT_SYMBOL vmlinux 0x851a2db8 xfrm_init_state +EXPORT_SYMBOL vmlinux 0x85241b86 skb_trim +EXPORT_SYMBOL vmlinux 0x853bf7c1 param_set_int +EXPORT_SYMBOL vmlinux 0x8546b618 proto_unregister +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x8578d88f blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x8597eb47 plpar_hcall +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85ef4dee crypto_sha512_update +EXPORT_SYMBOL vmlinux 0x85fd587a inode_newsize_ok +EXPORT_SYMBOL vmlinux 0x86152a28 pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x86351448 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0x86463684 pci_bus_put +EXPORT_SYMBOL vmlinux 0x8648d88e blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x8664f62e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0x866d4f4f inode_change_ok +EXPORT_SYMBOL vmlinux 0x866f6c84 macio_register_driver +EXPORT_SYMBOL vmlinux 0x86740afb fib_default_rule_pref +EXPORT_SYMBOL vmlinux 0x86894496 sk_stop_timer +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x86b0df0a twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0x86ba265d inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0x86db1cbb rtas_flash_term_hook +EXPORT_SYMBOL vmlinux 0x86dd6b4f udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0x86f13021 __sb_end_write +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x87091007 inet_ioctl +EXPORT_SYMBOL vmlinux 0x870b79ad bio_get_nr_vecs +EXPORT_SYMBOL vmlinux 0x870bf928 radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x871362b4 blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0x871c0a7e fiemap_check_flags +EXPORT_SYMBOL vmlinux 0x87213174 nla_put +EXPORT_SYMBOL vmlinux 0x87236b53 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0x873a53ea __arch_hweight8 +EXPORT_SYMBOL vmlinux 0x8770e7d7 pci_dev_driver +EXPORT_SYMBOL vmlinux 0x8779a34f param_ops_byte +EXPORT_SYMBOL vmlinux 0x878ab3ce sysctl_tcp_adv_win_scale +EXPORT_SYMBOL vmlinux 0x87ab9b6c simple_lookup +EXPORT_SYMBOL vmlinux 0x87c48906 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0x87d8dfa5 neigh_for_each +EXPORT_SYMBOL vmlinux 0x87de1e85 default_llseek +EXPORT_SYMBOL vmlinux 0x87f07ee4 sock_no_mmap +EXPORT_SYMBOL vmlinux 0x87fb6b9a input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0x8805084d remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x880da1b1 _lv1_get_logical_partition_id +EXPORT_SYMBOL vmlinux 0x880fa5f9 vm_insert_mixed +EXPORT_SYMBOL vmlinux 0x8810059e tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0x881039d0 zlib_inflate +EXPORT_SYMBOL vmlinux 0x882a6746 security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0x8832d29b netpoll_parse_options +EXPORT_SYMBOL vmlinux 0x8834396c mod_timer +EXPORT_SYMBOL vmlinux 0x883e1796 __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x88513970 param_set_byte +EXPORT_SYMBOL vmlinux 0x888f2ec4 ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0x88a1317c tcp_connect +EXPORT_SYMBOL vmlinux 0x88b31267 scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x88b6e482 make_bad_inode +EXPORT_SYMBOL vmlinux 0x890861f3 mmc_flush_cache +EXPORT_SYMBOL vmlinux 0x891fbb10 mempool_destroy +EXPORT_SYMBOL vmlinux 0x894ebdf6 pci_iounmap +EXPORT_SYMBOL vmlinux 0x895108f3 proc_dostring +EXPORT_SYMBOL vmlinux 0x895577b0 numa_cpu_lookup_table +EXPORT_SYMBOL vmlinux 0x895dbff3 key_revoke +EXPORT_SYMBOL vmlinux 0x897473df mktime +EXPORT_SYMBOL vmlinux 0x897684ac clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x89797060 _raw_read_lock +EXPORT_SYMBOL vmlinux 0x897f061d downgrade_write +EXPORT_SYMBOL vmlinux 0x89843eea serio_unregister_port +EXPORT_SYMBOL vmlinux 0x8985a133 blk_requeue_request +EXPORT_SYMBOL vmlinux 0x8988f20d dcache_readdir +EXPORT_SYMBOL vmlinux 0x8999291a inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x89ad20e2 vlan_vid_add +EXPORT_SYMBOL vmlinux 0x89af5732 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0x89afe34e __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0x89c5a8be smu_get_sdb_partition +EXPORT_SYMBOL vmlinux 0x89d5538d fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x89ebf9c6 bio_integrity_clone +EXPORT_SYMBOL vmlinux 0x89f22d1d ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x8a1ab4ee timeval_to_jiffies +EXPORT_SYMBOL vmlinux 0x8a2fb922 kobject_init +EXPORT_SYMBOL vmlinux 0x8a401c06 ip6_frag_init +EXPORT_SYMBOL vmlinux 0x8a4634b2 jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a51d565 quota_send_warning +EXPORT_SYMBOL vmlinux 0x8a6af65c kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a876f54 ida_init +EXPORT_SYMBOL vmlinux 0x8a88e4ec scsi_print_sense +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8a9cef2a _lv1_allocate_device_dma_region +EXPORT_SYMBOL vmlinux 0x8a9ff15b led_blink_set_oneshot +EXPORT_SYMBOL vmlinux 0x8ab2772b blk_alloc_queue +EXPORT_SYMBOL vmlinux 0x8ab62c29 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0x8ae39be4 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x8ae4c3c1 tcf_hash_new_index +EXPORT_SYMBOL vmlinux 0x8af993bc security_path_symlink +EXPORT_SYMBOL vmlinux 0x8b1a7a66 pcie_aspm_enabled +EXPORT_SYMBOL vmlinux 0x8b208b92 security_path_rename +EXPORT_SYMBOL vmlinux 0x8b35e873 sg_last +EXPORT_SYMBOL vmlinux 0x8b43159b register_cpu_notifier +EXPORT_SYMBOL vmlinux 0x8b55cac7 kobject_put +EXPORT_SYMBOL vmlinux 0x8b5ab5b0 dev_set_mtu +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b89c9a4 input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0x8b9d4efa pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0x8bc2f7ed sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x8bea8d84 jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0x8bf2ae1f fsl_lbc_addr +EXPORT_SYMBOL vmlinux 0x8c183cbe iowrite16 +EXPORT_SYMBOL vmlinux 0x8c39d250 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0x8c637d43 irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x8c6555ca key_unlink +EXPORT_SYMBOL vmlinux 0x8c738c0c swiotlb_free_coherent +EXPORT_SYMBOL vmlinux 0x8c7fd99e inode_claim_rsv_space +EXPORT_SYMBOL vmlinux 0x8c8d79c0 _lv1_gpu_context_iomap +EXPORT_SYMBOL vmlinux 0x8c8ee770 ipmi_destroy_user +EXPORT_SYMBOL vmlinux 0x8ca92a00 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x8cbb01a3 generic_make_request +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8cc98459 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0x8cedec63 elv_dispatch_add_tail +EXPORT_SYMBOL vmlinux 0x8d015dd4 __bswapdi2 +EXPORT_SYMBOL vmlinux 0x8d2e268b param_ops_ulong +EXPORT_SYMBOL vmlinux 0x8d2e7533 unregister_filesystem +EXPORT_SYMBOL vmlinux 0x8d4cf841 pneigh_lookup +EXPORT_SYMBOL vmlinux 0x8d4e9990 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0x8d551bef sysctl_tcp_rmem +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d93dc61 serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x8d944cbb copy_in_user +EXPORT_SYMBOL vmlinux 0x8db0074d jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0x8db326ba padata_free +EXPORT_SYMBOL vmlinux 0x8dc8bc84 lookup_bdev +EXPORT_SYMBOL vmlinux 0x8de0b5ac mempool_create +EXPORT_SYMBOL vmlinux 0x8de2fbc5 _lv1_get_virtual_uart_param +EXPORT_SYMBOL vmlinux 0x8df92f66 memchr_inv +EXPORT_SYMBOL vmlinux 0x8df9b8a6 dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0x8e01c277 backlight_device_register +EXPORT_SYMBOL vmlinux 0x8e033983 pci_select_bars +EXPORT_SYMBOL vmlinux 0x8e311c47 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0x8e3208ff scsi_target_resume +EXPORT_SYMBOL vmlinux 0x8e321708 fsnotify_put_mark +EXPORT_SYMBOL vmlinux 0x8e332829 flush_delayed_work +EXPORT_SYMBOL vmlinux 0x8e3a45b4 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0x8e3df3c0 blk_execute_rq +EXPORT_SYMBOL vmlinux 0x8e4213f1 pagevec_lookup +EXPORT_SYMBOL vmlinux 0x8e5b7d4c vfs_setpos +EXPORT_SYMBOL vmlinux 0x8e6bad1f xfrm6_prepare_output +EXPORT_SYMBOL vmlinux 0x8e6be80a __mutex_init +EXPORT_SYMBOL vmlinux 0x8e731cf9 __skb_gso_segment +EXPORT_SYMBOL vmlinux 0x8e864a86 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x8e8ab104 invalidate_bdev +EXPORT_SYMBOL vmlinux 0x8e932fe1 dm_put_device +EXPORT_SYMBOL vmlinux 0x8ea08e3b netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0x8eb60878 get_disk +EXPORT_SYMBOL vmlinux 0x8ec04552 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0x8ed38419 pcim_iounmap +EXPORT_SYMBOL vmlinux 0x8ed75a9b sock_create +EXPORT_SYMBOL vmlinux 0x8eea1bc9 smu_poll +EXPORT_SYMBOL vmlinux 0x8eef556b skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0x8efc35c9 irq_to_desc +EXPORT_SYMBOL vmlinux 0x8f0654f8 dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0x8f080bee simple_open +EXPORT_SYMBOL vmlinux 0x8f13056a pci_disable_msix +EXPORT_SYMBOL vmlinux 0x8f1c867f dquot_quota_off +EXPORT_SYMBOL vmlinux 0x8f24e403 d_lookup +EXPORT_SYMBOL vmlinux 0x8f253d2d dquot_scan_active +EXPORT_SYMBOL vmlinux 0x8f5af0af blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x8f6af341 agp_bridge +EXPORT_SYMBOL vmlinux 0x8f85f835 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x8fa74cc5 do_splice_direct +EXPORT_SYMBOL vmlinux 0x8faa4598 of_translate_address +EXPORT_SYMBOL vmlinux 0x8fbe5315 sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x8fc2e076 mmc_remove_host +EXPORT_SYMBOL vmlinux 0x8fcad509 may_umount +EXPORT_SYMBOL vmlinux 0x8fd96854 __module_put_and_exit +EXPORT_SYMBOL vmlinux 0x8fe039a2 fail_migrate_page +EXPORT_SYMBOL vmlinux 0x8fec5fec kern_path +EXPORT_SYMBOL vmlinux 0x8ff6793a dquot_quota_sync +EXPORT_SYMBOL vmlinux 0x8ffdcd63 phy_init_eee +EXPORT_SYMBOL vmlinux 0x900a4933 devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x901b5f43 dev_add_offload +EXPORT_SYMBOL vmlinux 0x9048309b tcp_proto_cgroup +EXPORT_SYMBOL vmlinux 0x906f4901 qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0x908b53ed param_set_short +EXPORT_SYMBOL vmlinux 0x90a66715 bio_phys_segments +EXPORT_SYMBOL vmlinux 0x90b325f7 drop_nlink +EXPORT_SYMBOL vmlinux 0x90be1224 __page_cache_alloc +EXPORT_SYMBOL vmlinux 0x90e146c2 trace_seq_putc +EXPORT_SYMBOL vmlinux 0x910661eb unregister_nls +EXPORT_SYMBOL vmlinux 0x911c0da0 sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0x91201cef _lv1_enable_logical_spe +EXPORT_SYMBOL vmlinux 0x912557ce rtas_busy_delay +EXPORT_SYMBOL vmlinux 0x91284117 dput +EXPORT_SYMBOL vmlinux 0x91463b1d kstrtos16 +EXPORT_SYMBOL vmlinux 0x915c9bcf phy_ethtool_gset +EXPORT_SYMBOL vmlinux 0x915e1208 tb_ticks_per_usec +EXPORT_SYMBOL vmlinux 0x9166fada strncpy +EXPORT_SYMBOL vmlinux 0x9168c033 rtas_get_sensor +EXPORT_SYMBOL vmlinux 0x91715312 sprintf +EXPORT_SYMBOL vmlinux 0x9175550c neigh_update +EXPORT_SYMBOL vmlinux 0x9176ee0a lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x919d1163 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x91ac822f vscnprintf +EXPORT_SYMBOL vmlinux 0x91b388f7 phy_disconnect +EXPORT_SYMBOL vmlinux 0x91c4feca _lv1_unmap_htab +EXPORT_SYMBOL vmlinux 0x91c5b737 balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0x91cbe8d6 netdev_emerg +EXPORT_SYMBOL vmlinux 0x921e2268 generic_read_dir +EXPORT_SYMBOL vmlinux 0x9233dd19 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0x92367610 alloc_buffer_head +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x925520d2 blk_start_plug +EXPORT_SYMBOL vmlinux 0x9291cd3b memdup_user +EXPORT_SYMBOL vmlinux 0x92a71bcd tcf_hash_check +EXPORT_SYMBOL vmlinux 0x92a9c60c time_to_tm +EXPORT_SYMBOL vmlinux 0x92b145d0 xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0x92bc220b lockref_get +EXPORT_SYMBOL vmlinux 0x92bcb869 __lock_buffer +EXPORT_SYMBOL vmlinux 0x92bfac6d devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0x92ceaf0c pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0x92d050df iov_pages +EXPORT_SYMBOL vmlinux 0x9300da7d tcp_sendmsg +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x93448c57 screen_info +EXPORT_SYMBOL vmlinux 0x93507f1c _lv1_gpu_memory_allocate +EXPORT_SYMBOL vmlinux 0x9351cc3b sock_wfree +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x93847e8c ppp_register_channel +EXPORT_SYMBOL vmlinux 0x939be1c9 blk_queue_unprep_rq +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93a8d611 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93f49344 register_framebuffer +EXPORT_SYMBOL vmlinux 0x93fca811 __get_free_pages +EXPORT_SYMBOL vmlinux 0x94255de8 kfree_skb_partial +EXPORT_SYMBOL vmlinux 0x9434b5cf pagecache_write_begin +EXPORT_SYMBOL vmlinux 0x943bb5cc neigh_direct_output +EXPORT_SYMBOL vmlinux 0x943dc80f csum_and_copy_to_user +EXPORT_SYMBOL vmlinux 0x945c2821 tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0x945fa036 __secpath_destroy +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x949872e3 md_error +EXPORT_SYMBOL vmlinux 0x94b5b645 agp_unbind_memory +EXPORT_SYMBOL vmlinux 0x94b8bb2d scsi_device_put +EXPORT_SYMBOL vmlinux 0x94c6eba6 dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0x94f905b5 mdiobus_free +EXPORT_SYMBOL vmlinux 0x950171e0 init_net +EXPORT_SYMBOL vmlinux 0x9508f166 param_ops_bint +EXPORT_SYMBOL vmlinux 0x9514151a _mcount +EXPORT_SYMBOL vmlinux 0x9521800b tty_name +EXPORT_SYMBOL vmlinux 0x9524b0ae _outsb +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x9551616f jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0x9560866e touch_atime +EXPORT_SYMBOL vmlinux 0x956edc18 xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x957588b3 input_inject_event +EXPORT_SYMBOL vmlinux 0x95980407 fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0x9599bae8 security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0x95b77763 pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0x95cb929c of_find_all_nodes +EXPORT_SYMBOL vmlinux 0x95ec98b1 sk_run_filter +EXPORT_SYMBOL vmlinux 0x95f37752 pci_unregister_driver +EXPORT_SYMBOL vmlinux 0x961b3cd6 vio_disable_interrupts +EXPORT_SYMBOL vmlinux 0x96288c1d km_report +EXPORT_SYMBOL vmlinux 0x962a4756 devm_ioremap +EXPORT_SYMBOL vmlinux 0x963f4176 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0x96448ddc sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0x9647e55c posix_lock_file +EXPORT_SYMBOL vmlinux 0x965129da input_register_device +EXPORT_SYMBOL vmlinux 0x96b29254 strncasecmp +EXPORT_SYMBOL vmlinux 0x96be478f kill_anon_super +EXPORT_SYMBOL vmlinux 0x96cbcc81 ipmi_get_version +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96e56535 __brelse +EXPORT_SYMBOL vmlinux 0x9731de3a mmc_alloc_host +EXPORT_SYMBOL vmlinux 0x9748927f _outsw_ns +EXPORT_SYMBOL vmlinux 0x9754ec10 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x976e014f _lv1_map_device_mmio_region +EXPORT_SYMBOL vmlinux 0x97868aef __kfifo_alloc +EXPORT_SYMBOL vmlinux 0x97999817 rfkill_set_hw_state +EXPORT_SYMBOL vmlinux 0x97a60e3d param_get_bool +EXPORT_SYMBOL vmlinux 0x97a99ba2 ipmi_smi_watcher_register +EXPORT_SYMBOL vmlinux 0x97c43526 inode_init_always +EXPORT_SYMBOL vmlinux 0x97c9119f dst_release +EXPORT_SYMBOL vmlinux 0x97d743c5 tcp_poll +EXPORT_SYMBOL vmlinux 0x97f03d6f vio_cmo_entitlement_update +EXPORT_SYMBOL vmlinux 0x97f61eb3 __neigh_event_send +EXPORT_SYMBOL vmlinux 0x980878ea inet_dgram_ops +EXPORT_SYMBOL vmlinux 0x981661a0 __idr_get_new_above +EXPORT_SYMBOL vmlinux 0x98177648 _lv1_set_lpm_interval +EXPORT_SYMBOL vmlinux 0x982231a4 sync_inodes_sb +EXPORT_SYMBOL vmlinux 0x9829fc11 __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0x982d3587 scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x982f01a3 ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0x9840704b dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x986e6135 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x9873aa13 scsi_dma_map +EXPORT_SYMBOL vmlinux 0x987ae712 bio_integrity_get_tag +EXPORT_SYMBOL vmlinux 0x9884c540 md_check_recovery +EXPORT_SYMBOL vmlinux 0x98a59711 fsnotify_add_mark +EXPORT_SYMBOL vmlinux 0x98a805ce security_inode_readlink +EXPORT_SYMBOL vmlinux 0x98b966c4 cdrom_ioctl +EXPORT_SYMBOL vmlinux 0x98c04a71 unmap_underlying_metadata +EXPORT_SYMBOL vmlinux 0x98cf60b3 strlen +EXPORT_SYMBOL vmlinux 0x98ee41ed dump_skip +EXPORT_SYMBOL vmlinux 0x98ee79b0 blk_end_request +EXPORT_SYMBOL vmlinux 0x98f2b19d locks_copy_lock +EXPORT_SYMBOL vmlinux 0x98f3ffa9 xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0x98f80416 sock_no_bind +EXPORT_SYMBOL vmlinux 0x98fa21b0 mod_timer_pinned +EXPORT_SYMBOL vmlinux 0x990b3362 udp_sendmsg +EXPORT_SYMBOL vmlinux 0x99195078 vsnprintf +EXPORT_SYMBOL vmlinux 0x992ede79 inet_getname +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x99591a7a ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x99819ec4 ps3_dma_region_create +EXPORT_SYMBOL vmlinux 0x9994c0ca ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x9995abd5 __blk_end_request +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99afe916 _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x99c24cfe _lv1_free_device_dma_region +EXPORT_SYMBOL vmlinux 0x99cdc86b sysctl_tcp_reordering +EXPORT_SYMBOL vmlinux 0x99d3a43c dm_table_get_size +EXPORT_SYMBOL vmlinux 0x99d5b1ad clear_nlink +EXPORT_SYMBOL vmlinux 0x99da7afe ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0x99db018c ps2_command +EXPORT_SYMBOL vmlinux 0x9a023580 blkdev_put +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a1fc4b4 jiffies_to_timeval +EXPORT_SYMBOL vmlinux 0x9a1ffb92 _lv1_clear_spe_interrupt_status +EXPORT_SYMBOL vmlinux 0x9a5ffc64 __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x9a626734 ftrace_print_hex_seq +EXPORT_SYMBOL vmlinux 0x9a6c2531 pasemi_dma_init +EXPORT_SYMBOL vmlinux 0x9a71c08d dquot_file_open +EXPORT_SYMBOL vmlinux 0x9ad6a8e8 mutex_trylock +EXPORT_SYMBOL vmlinux 0x9af89f98 memcpy_fromiovec +EXPORT_SYMBOL vmlinux 0x9b0ae724 abort_creds +EXPORT_SYMBOL vmlinux 0x9b1858ef nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b388444 get_zeroed_page +EXPORT_SYMBOL vmlinux 0x9b4f7ba4 scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0x9b610c7b get_gendisk +EXPORT_SYMBOL vmlinux 0x9b7baac5 proc_set_size +EXPORT_SYMBOL vmlinux 0x9b9e05f9 alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0x9ba444c0 netlink_unicast +EXPORT_SYMBOL vmlinux 0x9ba7089d argv_split +EXPORT_SYMBOL vmlinux 0x9bb2c889 pm860x_reg_read +EXPORT_SYMBOL vmlinux 0x9bc938cd sock_update_classid +EXPORT_SYMBOL vmlinux 0x9bcea695 swiotlb_map_sg +EXPORT_SYMBOL vmlinux 0x9be7bde4 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x9bf125d7 pci_set_power_state +EXPORT_SYMBOL vmlinux 0x9c0a08c9 vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x9c242d3b clocksource_unregister +EXPORT_SYMBOL vmlinux 0x9c2feb32 dev_uc_flush +EXPORT_SYMBOL vmlinux 0x9c491f60 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x9c67bb0d module_layout +EXPORT_SYMBOL vmlinux 0x9c8e9543 i2c_bit_add_numbered_bus +EXPORT_SYMBOL vmlinux 0x9ca51515 i2c_master_recv +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cb0f234 pci_enable_ido +EXPORT_SYMBOL vmlinux 0x9cb42179 tc_classify +EXPORT_SYMBOL vmlinux 0x9cc0f7a1 mfd_cell_enable +EXPORT_SYMBOL vmlinux 0x9cc26730 mmc_free_host +EXPORT_SYMBOL vmlinux 0x9cef3cc5 __idr_remove_all +EXPORT_SYMBOL vmlinux 0x9cfbf5bb nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x9cfd56c5 scsi_print_status +EXPORT_SYMBOL vmlinux 0x9d04d7a7 rtas +EXPORT_SYMBOL vmlinux 0x9d05f6c4 ktime_get_clocktai +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d14983a ppc_enable_pmcs +EXPORT_SYMBOL vmlinux 0x9d3aa376 blk_iopoll_init +EXPORT_SYMBOL vmlinux 0x9d5bc18d __module_get +EXPORT_SYMBOL vmlinux 0x9d7ce8dd _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0x9d90d953 pagevec_lookup_tag +EXPORT_SYMBOL vmlinux 0x9d9dfc18 load_fp_state +EXPORT_SYMBOL vmlinux 0x9db5319f pci_pme_active +EXPORT_SYMBOL vmlinux 0x9ddcb97f dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e207de4 locks_mandatory_area +EXPORT_SYMBOL vmlinux 0x9e2c9630 __pskb_copy +EXPORT_SYMBOL vmlinux 0x9e2d930f agp_generic_alloc_pages +EXPORT_SYMBOL vmlinux 0x9e2f8c90 lz4_decompress_unknownoutputsize +EXPORT_SYMBOL vmlinux 0x9e44b9b7 of_get_next_available_child +EXPORT_SYMBOL vmlinux 0x9e473c4f tty_mutex +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e5f50d2 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e8a22a0 devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0x9e8dc555 tty_register_ldisc +EXPORT_SYMBOL vmlinux 0x9e97375d rtas_busy_delay_time +EXPORT_SYMBOL vmlinux 0x9e9f1714 __bitmap_andnot +EXPORT_SYMBOL vmlinux 0x9ea0ad49 __sg_free_table +EXPORT_SYMBOL vmlinux 0x9ebd4c04 adjust_resource +EXPORT_SYMBOL vmlinux 0x9ed2eec7 param_set_ushort +EXPORT_SYMBOL vmlinux 0x9ed4737a skb_dequeue +EXPORT_SYMBOL vmlinux 0x9edd8e62 mount_ns +EXPORT_SYMBOL vmlinux 0x9edf2779 read_code +EXPORT_SYMBOL vmlinux 0x9ee78669 _lv1_write_virtual_uart +EXPORT_SYMBOL vmlinux 0x9f0e5fde __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0x9f2bdaac __bitmap_or +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f65a8b8 ether_setup +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9f9e0cb3 jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x9fbec811 simple_dir_operations +EXPORT_SYMBOL vmlinux 0x9fbf58c3 key_validate +EXPORT_SYMBOL vmlinux 0x9fc212bd udp_seq_open +EXPORT_SYMBOL vmlinux 0x9fdc3cd8 read_cache_pages +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa00bb40b swiotlb_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0xa01067fe d_splice_alias +EXPORT_SYMBOL vmlinux 0xa0142bb2 blk_put_request +EXPORT_SYMBOL vmlinux 0xa0353d54 __skb_tx_hash +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa0494b94 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0xa04a01bd qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xa04dfcbb pci_disable_link_state +EXPORT_SYMBOL vmlinux 0xa0581cdf compat_ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0xa05aa92a md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0xa05c03df mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xa07a37f0 memchr +EXPORT_SYMBOL vmlinux 0xa07ed110 xz_dec_init +EXPORT_SYMBOL vmlinux 0xa09dfc9f km_policy_expired +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0c95433 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xa0ceef51 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa0ff74d6 udp_memory_allocated +EXPORT_SYMBOL vmlinux 0xa10202f1 blk_integrity_compare +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa10d4b9a ps3_dma_region_free +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa1415618 twl6030_interrupt_unmask +EXPORT_SYMBOL vmlinux 0xa1464172 __serio_register_port +EXPORT_SYMBOL vmlinux 0xa14a35b5 neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0xa14f3d8c ewma_add +EXPORT_SYMBOL vmlinux 0xa15e8987 mmc_fixup_device +EXPORT_SYMBOL vmlinux 0xa16a631e unlock_rename +EXPORT_SYMBOL vmlinux 0xa1af747e ipmi_smi_watcher_unregister +EXPORT_SYMBOL vmlinux 0xa1b759ce fb_add_videomode +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1c94574 ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0xa1c99385 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xa1f8fe75 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0xa2023359 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0xa2026975 kobject_set_name +EXPORT_SYMBOL vmlinux 0xa202a8e5 kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0xa20ce1b8 net_msg_warn +EXPORT_SYMBOL vmlinux 0xa2127cdc pasemi_dma_alloc_flag +EXPORT_SYMBOL vmlinux 0xa2374e47 of_device_register +EXPORT_SYMBOL vmlinux 0xa2465322 _lv1_get_version_info +EXPORT_SYMBOL vmlinux 0xa253a91e eth_header_cache +EXPORT_SYMBOL vmlinux 0xa25decc8 seq_bitmap_list +EXPORT_SYMBOL vmlinux 0xa26bda8b __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0xa2848c50 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0xa28a2ace ipmi_set_gets_events +EXPORT_SYMBOL vmlinux 0xa2924da4 phy_ethtool_sset +EXPORT_SYMBOL vmlinux 0xa2a98b91 ipmi_get_maintenance_mode +EXPORT_SYMBOL vmlinux 0xa2acdf22 register_qdisc +EXPORT_SYMBOL vmlinux 0xa2b9eebb mach_ps3 +EXPORT_SYMBOL vmlinux 0xa2bbed37 crash_shutdown_register +EXPORT_SYMBOL vmlinux 0xa2cc1320 sk_wait_data +EXPORT_SYMBOL vmlinux 0xa2dc3079 __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0xa2ef34d7 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xa2f24fb3 dst_alloc +EXPORT_SYMBOL vmlinux 0xa301a390 user_revoke +EXPORT_SYMBOL vmlinux 0xa303d1ff dm_ratelimit_state +EXPORT_SYMBOL vmlinux 0xa308d29f sock_no_ioctl +EXPORT_SYMBOL vmlinux 0xa332464a of_get_cpu_node +EXPORT_SYMBOL vmlinux 0xa3596e7e default_qdisc_ops +EXPORT_SYMBOL vmlinux 0xa35de80f ipv4_config +EXPORT_SYMBOL vmlinux 0xa3642ab7 tcf_exts_dump +EXPORT_SYMBOL vmlinux 0xa3863f6d vfs_mkdir +EXPORT_SYMBOL vmlinux 0xa38bf163 mmc_request_done +EXPORT_SYMBOL vmlinux 0xa397ba31 mpage_readpage +EXPORT_SYMBOL vmlinux 0xa39b4cf2 udelay +EXPORT_SYMBOL vmlinux 0xa3abc422 abort_exclusive_wait +EXPORT_SYMBOL vmlinux 0xa3fc3d50 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0xa400159f crc32_be +EXPORT_SYMBOL vmlinux 0xa402c69f dev_open +EXPORT_SYMBOL vmlinux 0xa420c8e2 dev_mc_init +EXPORT_SYMBOL vmlinux 0xa4342ca5 tcp_check_req +EXPORT_SYMBOL vmlinux 0xa4511467 crc16 +EXPORT_SYMBOL vmlinux 0xa452609a skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0xa460b635 security_path_link +EXPORT_SYMBOL vmlinux 0xa4701e9e timekeeping_inject_offset +EXPORT_SYMBOL vmlinux 0xa480c04b _lv1_gpu_context_attribute +EXPORT_SYMBOL vmlinux 0xa489455d kfree_skb +EXPORT_SYMBOL vmlinux 0xa48fe3ec blkdev_fsync +EXPORT_SYMBOL vmlinux 0xa4a5bf7a mnt_pin +EXPORT_SYMBOL vmlinux 0xa4a94d26 find_next_bit_le +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa4c66595 netpoll_send_udp +EXPORT_SYMBOL vmlinux 0xa4d4f0e6 global_cache_flush +EXPORT_SYMBOL vmlinux 0xa4dae207 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0xa4e91f81 inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0xa4ef5ec8 mmc_wait_for_app_cmd +EXPORT_SYMBOL vmlinux 0xa4f1070d pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0xa4fbb4c0 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0xa50a111e inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0xa5225539 mmc_of_parse +EXPORT_SYMBOL vmlinux 0xa5294883 netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0xa53e2103 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0xa54e5c03 ps2_handle_ack +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa55c6830 register_sysctl_table +EXPORT_SYMBOL vmlinux 0xa570e18e pcie_port_service_register +EXPORT_SYMBOL vmlinux 0xa5862ccf serio_rescan +EXPORT_SYMBOL vmlinux 0xa59531bb register_console +EXPORT_SYMBOL vmlinux 0xa598e29c vesa_modes +EXPORT_SYMBOL vmlinux 0xa5a55e81 kernel_setsockopt +EXPORT_SYMBOL vmlinux 0xa5ac4dc2 tcp_ioctl +EXPORT_SYMBOL vmlinux 0xa5c5f79b inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0xa5d32e51 kernel_accept +EXPORT_SYMBOL vmlinux 0xa5d54c85 generic_readlink +EXPORT_SYMBOL vmlinux 0xa5d90591 skb_copy_datagram_const_iovec +EXPORT_SYMBOL vmlinux 0xa5df5adc tc_classify_compat +EXPORT_SYMBOL vmlinux 0xa5df70e9 kmalloc_caches +EXPORT_SYMBOL vmlinux 0xa5e24770 pci_claim_resource +EXPORT_SYMBOL vmlinux 0xa5eaaaf1 scsi_host_get +EXPORT_SYMBOL vmlinux 0xa5f20c6d tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0xa622fa86 test_set_page_writeback +EXPORT_SYMBOL vmlinux 0xa63a2f9b param_get_ulong +EXPORT_SYMBOL vmlinux 0xa63f5103 i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0xa644f536 __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0xa65972b8 _memcpy_toio +EXPORT_SYMBOL vmlinux 0xa661daa3 skb_kill_datagram +EXPORT_SYMBOL vmlinux 0xa6715115 do_settimeofday +EXPORT_SYMBOL vmlinux 0xa675804c utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6ce472f cpu_rmap_update +EXPORT_SYMBOL vmlinux 0xa6d8299d shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0xa6e2aeab mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0xa6e5a90a phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0xa720678c lg_global_lock +EXPORT_SYMBOL vmlinux 0xa7273f9c padata_add_cpu +EXPORT_SYMBOL vmlinux 0xa72a0f5b nr_online_nodes +EXPORT_SYMBOL vmlinux 0xa735db59 prandom_u32 +EXPORT_SYMBOL vmlinux 0xa73fc98f of_n_addr_cells +EXPORT_SYMBOL vmlinux 0xa7532eb7 lock_sock_fast +EXPORT_SYMBOL vmlinux 0xa75af603 load_nls +EXPORT_SYMBOL vmlinux 0xa75f334b blk_free_tags +EXPORT_SYMBOL vmlinux 0xa78d9eb7 slhc_uncompress +EXPORT_SYMBOL vmlinux 0xa7d179a4 blk_queue_merge_bvec +EXPORT_SYMBOL vmlinux 0xa7dd5b8f gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0xa7f1aa3c pcie_get_mps +EXPORT_SYMBOL vmlinux 0xa80219b6 kobject_add +EXPORT_SYMBOL vmlinux 0xa802caf3 cleancache_register_ops +EXPORT_SYMBOL vmlinux 0xa8232c78 strtobool +EXPORT_SYMBOL vmlinux 0xa836306c dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa8721b97 system_state +EXPORT_SYMBOL vmlinux 0xa896503c dev_load +EXPORT_SYMBOL vmlinux 0xa89c1532 pmac_resume_agp_for_card +EXPORT_SYMBOL vmlinux 0xa8a6f639 __check_region +EXPORT_SYMBOL vmlinux 0xa8ced546 _lv1_net_set_interrupt_status_indicator +EXPORT_SYMBOL vmlinux 0xa8e76db2 pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0xa8fef7bb security_unix_may_send +EXPORT_SYMBOL vmlinux 0xa90bb048 __dquot_free_space +EXPORT_SYMBOL vmlinux 0xa911feec input_close_device +EXPORT_SYMBOL vmlinux 0xa916b694 strnlen +EXPORT_SYMBOL vmlinux 0xa91c77b6 _lv1_end_of_interrupt +EXPORT_SYMBOL vmlinux 0xa9213f20 input_unregister_handle +EXPORT_SYMBOL vmlinux 0xa9273e1a epapr_hypercall_start +EXPORT_SYMBOL vmlinux 0xa927d5d5 posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0xa93ba88e proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0xa9432d1c scsi_put_command +EXPORT_SYMBOL vmlinux 0xa9500019 udplite_prot +EXPORT_SYMBOL vmlinux 0xa960087f mmc_get_card +EXPORT_SYMBOL vmlinux 0xa96a0c8b blk_put_queue +EXPORT_SYMBOL vmlinux 0xa981fa2d iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0xa982a6f2 truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0xa9941ebb i2c_bit_algo +EXPORT_SYMBOL vmlinux 0xa9b63345 of_parse_phandle_with_fixed_args +EXPORT_SYMBOL vmlinux 0xa9e4bd84 icmp_send +EXPORT_SYMBOL vmlinux 0xa9fd9dd7 jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0xa9fedcc0 kernel_sendpage +EXPORT_SYMBOL vmlinux 0xaa0073b7 __net_get_random_once +EXPORT_SYMBOL vmlinux 0xaa0edca8 pasemi_dma_alloc_fun +EXPORT_SYMBOL vmlinux 0xaa1156be d_find_any_alias +EXPORT_SYMBOL vmlinux 0xaa333557 genl_notify +EXPORT_SYMBOL vmlinux 0xaa46e87e lg_local_unlock +EXPORT_SYMBOL vmlinux 0xaa47f9ac d_make_root +EXPORT_SYMBOL vmlinux 0xaa6e4df5 _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa73b4ce tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0xaa828c14 fifo_set_limit +EXPORT_SYMBOL vmlinux 0xaa9087c0 param_ops_string +EXPORT_SYMBOL vmlinux 0xaa99b5fc inet_sock_destruct +EXPORT_SYMBOL vmlinux 0xaab612f0 xfrm_state_walk +EXPORT_SYMBOL vmlinux 0xaabb9fcb tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaaee438f __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab04f6ac scsi_register +EXPORT_SYMBOL vmlinux 0xab1922c9 pipe_unlock +EXPORT_SYMBOL vmlinux 0xab1c148e mdiobus_scan +EXPORT_SYMBOL vmlinux 0xab4e564a remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0xab66f611 _lv1_set_lpm_trigger_control +EXPORT_SYMBOL vmlinux 0xab6bde28 sysctl_max_syn_backlog +EXPORT_SYMBOL vmlinux 0xab6dfc53 bio_integrity_enabled +EXPORT_SYMBOL vmlinux 0xab6ea7db jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab795552 consume_skb +EXPORT_SYMBOL vmlinux 0xab7f0662 __ip_dev_find +EXPORT_SYMBOL vmlinux 0xab8892c8 register_cdrom +EXPORT_SYMBOL vmlinux 0xabb031c1 pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0xabc1c42d sock_create_lite +EXPORT_SYMBOL vmlinux 0xabc6dd63 cpufreq_sysfs_create_file +EXPORT_SYMBOL vmlinux 0xabcaa577 free_anon_bdev +EXPORT_SYMBOL vmlinux 0xabd0c91c rtc_time_to_tm +EXPORT_SYMBOL vmlinux 0xabd82857 pcim_iomap_table +EXPORT_SYMBOL vmlinux 0xac0ba8c1 blk_iopoll_disable +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac20b535 netpoll_print_options +EXPORT_SYMBOL vmlinux 0xac26b820 _raw_write_lock +EXPORT_SYMBOL vmlinux 0xac3f58d4 scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0xac62033d submit_bio +EXPORT_SYMBOL vmlinux 0xac75af0c set_device_ro +EXPORT_SYMBOL vmlinux 0xac76b05a scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0xac9a4f20 simple_rmdir +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacc5b5d2 csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0xacc828eb napi_gro_flush +EXPORT_SYMBOL vmlinux 0xaccabc6a in4_pton +EXPORT_SYMBOL vmlinux 0xacd14ab8 _lv1_construct_logical_spe +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xad01744f kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0xad03c48d bdi_register_dev +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad0a6e0a flex_array_prealloc +EXPORT_SYMBOL vmlinux 0xad0b115f dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0xad164875 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xad1a0dee blk_get_backing_dev_info +EXPORT_SYMBOL vmlinux 0xad1e81aa abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0xad454a4f loop_backing_file +EXPORT_SYMBOL vmlinux 0xad46dec2 of_count_phandle_with_args +EXPORT_SYMBOL vmlinux 0xad50cebb i8253_lock +EXPORT_SYMBOL vmlinux 0xad53648e nf_ct_attach +EXPORT_SYMBOL vmlinux 0xad55d467 dget_parent +EXPORT_SYMBOL vmlinux 0xad5ee116 macio_release_resources +EXPORT_SYMBOL vmlinux 0xad6a2ab2 neigh_connected_output +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad8d77b1 mapping_tagged +EXPORT_SYMBOL vmlinux 0xad956bf3 tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0xada06848 vfs_writev +EXPORT_SYMBOL vmlinux 0xadb9c749 unregister_shrinker +EXPORT_SYMBOL vmlinux 0xadbc2061 agp_put_bridge +EXPORT_SYMBOL vmlinux 0xaddcb7e8 blk_queue_io_min +EXPORT_SYMBOL vmlinux 0xadeffe25 _lv1_gpu_context_intr +EXPORT_SYMBOL vmlinux 0xae106e47 __vlan_find_dev_deep +EXPORT_SYMBOL vmlinux 0xae11da6c bio_sector_offset +EXPORT_SYMBOL vmlinux 0xae340676 key_put +EXPORT_SYMBOL vmlinux 0xae429fc4 nla_reserve +EXPORT_SYMBOL vmlinux 0xae545f06 _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xae56fc49 i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0xae728cce lro_receive_frags +EXPORT_SYMBOL vmlinux 0xae729e59 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xaebf5ca0 compat_tcp_setsockopt +EXPORT_SYMBOL vmlinux 0xaec1b33f nf_register_hooks +EXPORT_SYMBOL vmlinux 0xaed3fef2 invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0xaed473bb rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0xaed7a9a5 mmc_can_trim +EXPORT_SYMBOL vmlinux 0xaf05b91b of_device_is_available +EXPORT_SYMBOL vmlinux 0xaf063510 _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0xaf080b53 qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0xaf10cd36 scsi_add_device +EXPORT_SYMBOL vmlinux 0xaf1ff6f8 ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0xaf2d872c prepare_to_wait +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf4ddccc gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0xaf5062c8 sock_no_connect +EXPORT_SYMBOL vmlinux 0xaf64ad0d zlib_deflate +EXPORT_SYMBOL vmlinux 0xaf6ae696 kstrndup +EXPORT_SYMBOL vmlinux 0xaf6eba3e prepare_creds +EXPORT_SYMBOL vmlinux 0xaf91d89f __kernel_param_lock +EXPORT_SYMBOL vmlinux 0xafad493b param_ops_ushort +EXPORT_SYMBOL vmlinux 0xafd68c33 flex_array_free +EXPORT_SYMBOL vmlinux 0xaff5adad md_write_end +EXPORT_SYMBOL vmlinux 0xafff3d1d mempool_alloc +EXPORT_SYMBOL vmlinux 0xb0007b08 inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0xb0310c72 set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0xb035073e blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0xb035d74f free_task +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb0609db7 key_alloc +EXPORT_SYMBOL vmlinux 0xb07dea01 dev_get_by_flags_rcu +EXPORT_SYMBOL vmlinux 0xb0937acc sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0xb0af6fc6 set_user_nice +EXPORT_SYMBOL vmlinux 0xb0b847ac __bitmap_full +EXPORT_SYMBOL vmlinux 0xb0b98817 ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0xb0ca5d47 max8998_bulk_write +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0f67f28 user_path_at +EXPORT_SYMBOL vmlinux 0xb0f86051 eth_type_trans +EXPORT_SYMBOL vmlinux 0xb0fd65ea vlan_uses_dev +EXPORT_SYMBOL vmlinux 0xb0ffda2f blk_limits_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xb1002d5e skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0xb101004a dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0xb120d9f4 bdgrab +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb1432df4 filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0xb147a855 dql_reset +EXPORT_SYMBOL vmlinux 0xb15b6955 scsi_mode_sense +EXPORT_SYMBOL vmlinux 0xb15bd8fa tb_ticks_per_sec +EXPORT_SYMBOL vmlinux 0xb1645a2e sg_free_table +EXPORT_SYMBOL vmlinux 0xb1647eb9 blk_end_request_cur +EXPORT_SYMBOL vmlinux 0xb165ef45 __irq_regs +EXPORT_SYMBOL vmlinux 0xb166e241 of_device_alloc +EXPORT_SYMBOL vmlinux 0xb16ac1a6 gen10g_read_status +EXPORT_SYMBOL vmlinux 0xb1719e00 dev_addr_add_multiple +EXPORT_SYMBOL vmlinux 0xb18b1819 eth_validate_addr +EXPORT_SYMBOL vmlinux 0xb19760c3 bitmap_onto +EXPORT_SYMBOL vmlinux 0xb19eb170 netdev_notify_peers +EXPORT_SYMBOL vmlinux 0xb1b1bde5 __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1c6e787 wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0xb1cf44df fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xb1db9e4e param_get_invbool +EXPORT_SYMBOL vmlinux 0xb1f13a66 nobh_write_end +EXPORT_SYMBOL vmlinux 0xb1fa7687 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0xb247def2 dm_register_target +EXPORT_SYMBOL vmlinux 0xb2571a25 ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0xb25d56c6 genphy_config_aneg +EXPORT_SYMBOL vmlinux 0xb2621c75 xfrm6_rcv +EXPORT_SYMBOL vmlinux 0xb2682405 utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0xb27bf3ec __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0xb28a2d33 qdisc_tree_decrease_qlen +EXPORT_SYMBOL vmlinux 0xb2af0095 unmap_mapping_range +EXPORT_SYMBOL vmlinux 0xb2b7b471 fs_bio_set +EXPORT_SYMBOL vmlinux 0xb2be6e92 netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xb2d11b69 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0xb2d31a4a find_vma +EXPORT_SYMBOL vmlinux 0xb2faa536 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0xb304acff ida_get_new_above +EXPORT_SYMBOL vmlinux 0xb32ea307 generic_file_open +EXPORT_SYMBOL vmlinux 0xb3455fad bio_put +EXPORT_SYMBOL vmlinux 0xb34b4f4a generic_file_buffered_write +EXPORT_SYMBOL vmlinux 0xb34ed9ee ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0xb36676d1 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0xb379d692 proc_remove +EXPORT_SYMBOL vmlinux 0xb39b0bc2 register_nls +EXPORT_SYMBOL vmlinux 0xb3bf73df cpu_active_mask +EXPORT_SYMBOL vmlinux 0xb3d12334 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb42ee695 kern_path_mountpoint +EXPORT_SYMBOL vmlinux 0xb4458986 gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0xb445db37 vc_cons +EXPORT_SYMBOL vmlinux 0xb44fb372 tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0xb4709322 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0xb47189b5 reservation_ww_class +EXPORT_SYMBOL vmlinux 0xb47b1e66 flush_dcache_icache_page +EXPORT_SYMBOL vmlinux 0xb487305e kmem_cache_create +EXPORT_SYMBOL vmlinux 0xb49ee7d3 skb_insert +EXPORT_SYMBOL vmlinux 0xb4ce97aa iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0xb4de0f5d inet_release +EXPORT_SYMBOL vmlinux 0xb4e43151 agp_copy_info +EXPORT_SYMBOL vmlinux 0xb4e940ed jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0xb527ca3c inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0xb52ccb9c set_nlink +EXPORT_SYMBOL vmlinux 0xb539d157 dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0xb54533f7 usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xb561772d of_phy_attach +EXPORT_SYMBOL vmlinux 0xb5697012 __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0xb56bfd9e smu_spinwait_cmd +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb5749e5b __netlink_dump_start +EXPORT_SYMBOL vmlinux 0xb57f2457 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0xb591e9e1 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0xb5945946 dev_add_pack +EXPORT_SYMBOL vmlinux 0xb5974446 tcp_prequeue +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5bcd4f7 pci_release_regions +EXPORT_SYMBOL vmlinux 0xb5c35acb tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0xb5cd0b79 pci_find_next_bus +EXPORT_SYMBOL vmlinux 0xb5d20e68 nf_setsockopt +EXPORT_SYMBOL vmlinux 0xb5da5124 ip_ct_attach +EXPORT_SYMBOL vmlinux 0xb5e6f117 key_type_keyring +EXPORT_SYMBOL vmlinux 0xb602017e scsicam_bios_param +EXPORT_SYMBOL vmlinux 0xb6125d2f agp_generic_free_by_type +EXPORT_SYMBOL vmlinux 0xb6244511 sg_init_one +EXPORT_SYMBOL vmlinux 0xb6394d4b param_set_bint +EXPORT_SYMBOL vmlinux 0xb63c2d54 skb_free_datagram +EXPORT_SYMBOL vmlinux 0xb651c85a vfs_open +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb678c029 __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xb6822a33 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0xb68bfa9d node_states +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6b46a7c param_ops_int +EXPORT_SYMBOL vmlinux 0xb6c5a973 scsi_show_result +EXPORT_SYMBOL vmlinux 0xb6ce25a1 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0xb6d3d3b8 jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0xb6dd71c9 bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0xb6f1e4ac i2c_use_client +EXPORT_SYMBOL vmlinux 0xb6fdd7ff blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0xb71841db padata_set_cpumask +EXPORT_SYMBOL vmlinux 0xb72c203a netif_device_detach +EXPORT_SYMBOL vmlinux 0xb77131b1 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0xb785fd71 brioctl_set +EXPORT_SYMBOL vmlinux 0xb79330c8 dev_get_flags +EXPORT_SYMBOL vmlinux 0xb795f74e kdb_current_task +EXPORT_SYMBOL vmlinux 0xb7afb2b1 in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xb7c36eca tcp_getsockopt +EXPORT_SYMBOL vmlinux 0xb7d2fae7 pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0xb80bd703 framebuffer_release +EXPORT_SYMBOL vmlinux 0xb815c8ae unregister_netdev +EXPORT_SYMBOL vmlinux 0xb816ea84 ppp_channel_index +EXPORT_SYMBOL vmlinux 0xb835b3e4 radix_tree_prev_hole +EXPORT_SYMBOL vmlinux 0xb838ade5 dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0xb8402ee8 dev_printk_emit +EXPORT_SYMBOL vmlinux 0xb854124b find_lock_page +EXPORT_SYMBOL vmlinux 0xb86123be _lv1_write_repository_node +EXPORT_SYMBOL vmlinux 0xb8740abd inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xb874b87a __clzsi2 +EXPORT_SYMBOL vmlinux 0xb8a30c7e _lv1_add_lpm_event_bookmark +EXPORT_SYMBOL vmlinux 0xb8aa9db0 pagecache_write_end +EXPORT_SYMBOL vmlinux 0xb8d73e97 param_set_uint +EXPORT_SYMBOL vmlinux 0xb8e0d3a9 seq_lseek +EXPORT_SYMBOL vmlinux 0xb90b2aa5 padata_alloc +EXPORT_SYMBOL vmlinux 0xb91b63e8 dev_mc_flush +EXPORT_SYMBOL vmlinux 0xb92df38e dev_warn +EXPORT_SYMBOL vmlinux 0xb9562da2 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0xb95af154 i2c_del_driver +EXPORT_SYMBOL vmlinux 0xb96321da setattr_copy +EXPORT_SYMBOL vmlinux 0xb98a0185 rtc_tm_to_time +EXPORT_SYMBOL vmlinux 0xb98d6827 bitmap_unplug +EXPORT_SYMBOL vmlinux 0xb9902fff inet_frag_evictor +EXPORT_SYMBOL vmlinux 0xb995d1f2 sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0xb9a9a002 pcim_iomap +EXPORT_SYMBOL vmlinux 0xb9b4e181 alloc_pages_exact_nid +EXPORT_SYMBOL vmlinux 0xb9b9a86d skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0xb9c6e0cf ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0xb9c8268b buffer_migrate_page +EXPORT_SYMBOL vmlinux 0xb9db2b28 proc_symlink +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xb9fa00cd drop_super +EXPORT_SYMBOL vmlinux 0xba122a2c smu_done_complete +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xbaa9b469 generic_pipe_buf_steal +EXPORT_SYMBOL vmlinux 0xbad54cf1 compat_sock_get_timestamp +EXPORT_SYMBOL vmlinux 0xbb189cad disallow_signal +EXPORT_SYMBOL vmlinux 0xbb1b3ed8 i2c_verify_client +EXPORT_SYMBOL vmlinux 0xbb33d62e xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xbb4f4766 simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0xbb51e129 padata_alloc_possible +EXPORT_SYMBOL vmlinux 0xbb5d343d xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xbb5e9e96 cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0xbb663e38 agp_generic_remove_memory +EXPORT_SYMBOL vmlinux 0xbb713e6d sk_filter_release_rcu +EXPORT_SYMBOL vmlinux 0xbb8bca39 __neigh_create +EXPORT_SYMBOL vmlinux 0xbb93243a napi_gro_frags +EXPORT_SYMBOL vmlinux 0xbb99125c get_default_font +EXPORT_SYMBOL vmlinux 0xbba0eebf remove_proc_entry +EXPORT_SYMBOL vmlinux 0xbba4c751 __dst_free +EXPORT_SYMBOL vmlinux 0xbbac87ee scsi_unregister +EXPORT_SYMBOL vmlinux 0xbbaeb559 memcg_socket_limit_enabled +EXPORT_SYMBOL vmlinux 0xbbb6b412 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xbbbee752 devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0xbbc30448 kmem_cache_free +EXPORT_SYMBOL vmlinux 0xbc049db4 cdev_add +EXPORT_SYMBOL vmlinux 0xbc0bcbe3 inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0xbc0e204c start_tty +EXPORT_SYMBOL vmlinux 0xbc1ab4e4 skb_flow_dissect +EXPORT_SYMBOL vmlinux 0xbc316de4 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0xbc3f6afa down_read +EXPORT_SYMBOL vmlinux 0xbc681e36 blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0xbc744be4 dev_uc_unsync +EXPORT_SYMBOL vmlinux 0xbc8b462c inet_addr_type +EXPORT_SYMBOL vmlinux 0xbc9f0b5c gen_pool_add_virt +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbccdc2f6 flex_array_put +EXPORT_SYMBOL vmlinux 0xbcdedba7 of_get_mac_address +EXPORT_SYMBOL vmlinux 0xbcf150f9 xor_altivec_5 +EXPORT_SYMBOL vmlinux 0xbd0a8ca5 send_sig_info +EXPORT_SYMBOL vmlinux 0xbd1b3c80 mmc_set_blockcount +EXPORT_SYMBOL vmlinux 0xbd462b55 __kfifo_init +EXPORT_SYMBOL vmlinux 0xbd50ac8e vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0xbd67a163 fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0xbd696337 phy_driver_register +EXPORT_SYMBOL vmlinux 0xbd803510 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0xbd88c808 of_mdiobus_register +EXPORT_SYMBOL vmlinux 0xbd8cfa15 pasemi_write_mac_reg +EXPORT_SYMBOL vmlinux 0xbd8f3f2c mdio_bus_type +EXPORT_SYMBOL vmlinux 0xbda19b7c __scm_destroy +EXPORT_SYMBOL vmlinux 0xbdaa5262 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0xbdc8795b udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0xbdd41b4d jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0xbde5ace8 __per_cpu_offset +EXPORT_SYMBOL vmlinux 0xbdfe7b23 update_devfreq +EXPORT_SYMBOL vmlinux 0xbe08f674 nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0xbe2c0274 add_timer +EXPORT_SYMBOL vmlinux 0xbe3be91a of_find_device_by_node +EXPORT_SYMBOL vmlinux 0xbe68f878 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0xbe77aebe down_write_trylock +EXPORT_SYMBOL vmlinux 0xbea9bb99 make_kuid +EXPORT_SYMBOL vmlinux 0xbebda663 inet6_protos +EXPORT_SYMBOL vmlinux 0xbec25473 of_parse_phandle +EXPORT_SYMBOL vmlinux 0xbef1244c dquot_transfer +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbef45caf blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0xbeffd1a6 pci_write_vpd +EXPORT_SYMBOL vmlinux 0xbeffdac4 bioset_integrity_free +EXPORT_SYMBOL vmlinux 0xbf0182c1 seq_open_private +EXPORT_SYMBOL vmlinux 0xbf03549f input_get_keycode +EXPORT_SYMBOL vmlinux 0xbf0bb13c paca +EXPORT_SYMBOL vmlinux 0xbf13ab7d sock_release +EXPORT_SYMBOL vmlinux 0xbf31e080 lock_sock_nested +EXPORT_SYMBOL vmlinux 0xbf36ce70 rtnl_create_link +EXPORT_SYMBOL vmlinux 0xbf7423ca pcim_enable_device +EXPORT_SYMBOL vmlinux 0xbf7f86a0 inode_needs_sync +EXPORT_SYMBOL vmlinux 0xbf7fd2f5 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0xbf895522 max8925_reg_write +EXPORT_SYMBOL vmlinux 0xbf8ba54a vprintk +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbf9e9fe0 agp_alloc_bridge +EXPORT_SYMBOL vmlinux 0xbfabfe59 __debugger_iabr_match +EXPORT_SYMBOL vmlinux 0xbfb8b0b7 _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0xbfbb1f28 inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfc3a850 agp_backend_acquire +EXPORT_SYMBOL vmlinux 0xbfd37c06 d_obtain_alias +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xbff8182c plpar_hcall_norets +EXPORT_SYMBOL vmlinux 0xc00839a7 vfs_fsync +EXPORT_SYMBOL vmlinux 0xc00ec8c0 eth_header_parse +EXPORT_SYMBOL vmlinux 0xc01065fb clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0xc01e2732 get_thermal_instance +EXPORT_SYMBOL vmlinux 0xc0290d2a sock_kmalloc +EXPORT_SYMBOL vmlinux 0xc062c6a5 tty_write_room +EXPORT_SYMBOL vmlinux 0xc06c6ca1 mem_section +EXPORT_SYMBOL vmlinux 0xc06e7a0a pci_unmap_rom +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc0823e4c twl_i2c_write +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0cc292a register_netdevice +EXPORT_SYMBOL vmlinux 0xc0e4504f sync_blockdev +EXPORT_SYMBOL vmlinux 0xc0fcc97a swiotlb_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0xc0fecfaa elv_dispatch_sort +EXPORT_SYMBOL vmlinux 0xc10254d0 mmc_release_host +EXPORT_SYMBOL vmlinux 0xc1299eb8 blk_queue_resize_tags +EXPORT_SYMBOL vmlinux 0xc13511d7 cpumask_next_and +EXPORT_SYMBOL vmlinux 0xc17968be iget_locked +EXPORT_SYMBOL vmlinux 0xc17cd3a6 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0xc197ae4d tty_pair_get_tty +EXPORT_SYMBOL vmlinux 0xc1b7707f splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0xc1bd350e compat_mc_getsockopt +EXPORT_SYMBOL vmlinux 0xc1c2dd09 __hw_addr_flush +EXPORT_SYMBOL vmlinux 0xc1d42d70 pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0xc1d8011c udp_ioctl +EXPORT_SYMBOL vmlinux 0xc1dd1286 seq_read +EXPORT_SYMBOL vmlinux 0xc1e0d46d pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0xc1f6e611 pci_enable_msi_block_auto +EXPORT_SYMBOL vmlinux 0xc2100ce8 udp_disconnect +EXPORT_SYMBOL vmlinux 0xc212f5aa sys_imageblit +EXPORT_SYMBOL vmlinux 0xc2223d5b vlan_vid_del +EXPORT_SYMBOL vmlinux 0xc2424641 agp3_generic_cleanup +EXPORT_SYMBOL vmlinux 0xc24271cb gen_pool_alloc +EXPORT_SYMBOL vmlinux 0xc256e762 __bitmap_equal +EXPORT_SYMBOL vmlinux 0xc26d8c0f kernel_sock_ioctl +EXPORT_SYMBOL vmlinux 0xc2829230 mark_page_accessed +EXPORT_SYMBOL vmlinux 0xc2896e0e file_open_root +EXPORT_SYMBOL vmlinux 0xc290d2a6 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0xc29bf967 strspn +EXPORT_SYMBOL vmlinux 0xc2a1ee04 unload_nls +EXPORT_SYMBOL vmlinux 0xc2a29ba4 __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0xc2d2ee0e phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2f9c045 timespec_to_jiffies +EXPORT_SYMBOL vmlinux 0xc2fb9ee1 _lv1_shutdown_logical_partition +EXPORT_SYMBOL vmlinux 0xc30c789a md_register_thread +EXPORT_SYMBOL vmlinux 0xc310b981 strnstr +EXPORT_SYMBOL vmlinux 0xc3329d99 generic_setlease +EXPORT_SYMBOL vmlinux 0xc34c2b93 seq_path +EXPORT_SYMBOL vmlinux 0xc35ff947 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0xc3668a6d register_key_type +EXPORT_SYMBOL vmlinux 0xc367b66d dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xc380830a pci_clear_master +EXPORT_SYMBOL vmlinux 0xc3860028 pmac_register_agp_pm +EXPORT_SYMBOL vmlinux 0xc38fcdf4 mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0xc39a106f ip_route_input_noref +EXPORT_SYMBOL vmlinux 0xc39c3704 hvcs_free_partner_info +EXPORT_SYMBOL vmlinux 0xc3a22612 sync_inode_metadata +EXPORT_SYMBOL vmlinux 0xc3ba139d override_creds +EXPORT_SYMBOL vmlinux 0xc3f1d4bf blk_mq_free_single_hw_queue +EXPORT_SYMBOL vmlinux 0xc41f1696 _lv1_configure_virtual_uart_irq +EXPORT_SYMBOL vmlinux 0xc45755de find_next_zero_bit_le +EXPORT_SYMBOL vmlinux 0xc458b9f9 nobh_write_begin +EXPORT_SYMBOL vmlinux 0xc47cdf9c _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0xc48001e9 unlink_framebuffer +EXPORT_SYMBOL vmlinux 0xc48307db lz4_decompress +EXPORT_SYMBOL vmlinux 0xc48a7dad tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0xc498124c clear_user_page +EXPORT_SYMBOL vmlinux 0xc499ae1e kstrdup +EXPORT_SYMBOL vmlinux 0xc4c48b41 filemap_fault +EXPORT_SYMBOL vmlinux 0xc4cfacdf abx500_register_ops +EXPORT_SYMBOL vmlinux 0xc4eeddd4 page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0xc4f46927 skb_find_text +EXPORT_SYMBOL vmlinux 0xc4fc6c24 scsi_adjust_queue_depth +EXPORT_SYMBOL vmlinux 0xc5089620 _lv1_stop_ppe_periodic_tracer +EXPORT_SYMBOL vmlinux 0xc5101e22 wait_for_key_construction +EXPORT_SYMBOL vmlinux 0xc512ab81 pci_get_class +EXPORT_SYMBOL vmlinux 0xc51880d4 dma_pool_create +EXPORT_SYMBOL vmlinux 0xc5394701 inet6_bind +EXPORT_SYMBOL vmlinux 0xc53b9486 seq_escape +EXPORT_SYMBOL vmlinux 0xc551b1ee pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0xc5534d64 ioread16 +EXPORT_SYMBOL vmlinux 0xc55c2a9d inode_sb_list_lock +EXPORT_SYMBOL vmlinux 0xc55de23c percpu_counter_set +EXPORT_SYMBOL vmlinux 0xc5655d4a tcp_proc_unregister +EXPORT_SYMBOL vmlinux 0xc589e044 param_set_long +EXPORT_SYMBOL vmlinux 0xc5aea7fb try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xc5d36b25 __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xc5d9c46c agp_try_unsupported_boot +EXPORT_SYMBOL vmlinux 0xc5e386ea filp_open +EXPORT_SYMBOL vmlinux 0xc5e3fb8f blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0xc5f090f0 scsi_device_set_state +EXPORT_SYMBOL vmlinux 0xc5f32dce neigh_seq_next +EXPORT_SYMBOL vmlinux 0xc5fdef94 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc6376c96 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0xc65abeb7 agp3_generic_sizes +EXPORT_SYMBOL vmlinux 0xc660a600 cdrom_check_events +EXPORT_SYMBOL vmlinux 0xc663b075 __ioremap +EXPORT_SYMBOL vmlinux 0xc665d6d7 of_parse_phandle_with_args +EXPORT_SYMBOL vmlinux 0xc666a132 crc_t10dif +EXPORT_SYMBOL vmlinux 0xc6764855 input_open_device +EXPORT_SYMBOL vmlinux 0xc6789ee9 pci_request_region_exclusive +EXPORT_SYMBOL vmlinux 0xc683ba6e elv_rb_former_request +EXPORT_SYMBOL vmlinux 0xc6953e43 sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0xc6958915 sk_common_release +EXPORT_SYMBOL vmlinux 0xc6b22c71 __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0xc6cb465a __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6d5ceac inode_add_rsv_space +EXPORT_SYMBOL vmlinux 0xc6e0d84b netpoll_cleanup +EXPORT_SYMBOL vmlinux 0xc6e1a111 pci_save_state +EXPORT_SYMBOL vmlinux 0xc6f56612 scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0xc6fdcce3 jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0xc7061dd8 input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc736a33a blk_register_region +EXPORT_SYMBOL vmlinux 0xc739c91c ps2_sendbyte +EXPORT_SYMBOL vmlinux 0xc7405a39 tty_pair_get_pty +EXPORT_SYMBOL vmlinux 0xc74c2076 dev_mc_add +EXPORT_SYMBOL vmlinux 0xc765e118 vm_iomap_memory +EXPORT_SYMBOL vmlinux 0xc7773a06 alloc_anon_inode +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc7936323 mmc_start_req +EXPORT_SYMBOL vmlinux 0xc79398b3 dev_uc_add +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7be032b grab_cache_page_nowait +EXPORT_SYMBOL vmlinux 0xc7ca5ce6 netdev_update_features +EXPORT_SYMBOL vmlinux 0xc7dd62f0 nf_unregister_hooks +EXPORT_SYMBOL vmlinux 0xc7df9619 mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0xc8126bc8 arp_xmit +EXPORT_SYMBOL vmlinux 0xc832ea7b flush_icache_user_range +EXPORT_SYMBOL vmlinux 0xc83b4d5b posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc87bf6af phy_register_fixup +EXPORT_SYMBOL vmlinux 0xc8831bde macio_enable_devres +EXPORT_SYMBOL vmlinux 0xc88ade1a sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0xc8938d9e dev_emerg +EXPORT_SYMBOL vmlinux 0xc897c382 sg_init_table +EXPORT_SYMBOL vmlinux 0xc89d5149 skb_split +EXPORT_SYMBOL vmlinux 0xc8b57c27 autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xc8cc6d79 note_scsi_host +EXPORT_SYMBOL vmlinux 0xc8ce3269 mutex_lock +EXPORT_SYMBOL vmlinux 0xc8e31d75 _lv1_configure_irq_state_bitmap +EXPORT_SYMBOL vmlinux 0xc8e8b5c8 srp_rport_get +EXPORT_SYMBOL vmlinux 0xc8f2e7e4 dquot_enable +EXPORT_SYMBOL vmlinux 0xc8fea9ad agp_generic_alloc_page +EXPORT_SYMBOL vmlinux 0xc914b78b sock_no_shutdown +EXPORT_SYMBOL vmlinux 0xc91ff664 down_read_trylock +EXPORT_SYMBOL vmlinux 0xc93fbc54 wait_for_completion_io +EXPORT_SYMBOL vmlinux 0xc943a759 sock_wake_async +EXPORT_SYMBOL vmlinux 0xc9549d43 security_d_instantiate +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc978479a xz_dec_run +EXPORT_SYMBOL vmlinux 0xc983f829 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0xc996d097 del_timer +EXPORT_SYMBOL vmlinux 0xc99e2a55 twl_rev +EXPORT_SYMBOL vmlinux 0xc9a7e3e7 blk_stack_limits +EXPORT_SYMBOL vmlinux 0xc9bf9911 names_cachep +EXPORT_SYMBOL vmlinux 0xc9ca62c6 sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0xc9e2177d d_prune_aliases +EXPORT_SYMBOL vmlinux 0xc9e41879 default_file_splice_read +EXPORT_SYMBOL vmlinux 0xc9e4390e truncate_inode_pages +EXPORT_SYMBOL vmlinux 0xc9fc598d pasemi_read_dma_reg +EXPORT_SYMBOL vmlinux 0xca13cdf0 i2c_master_send +EXPORT_SYMBOL vmlinux 0xca214840 inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0xca3b28c6 store_vr_state +EXPORT_SYMBOL vmlinux 0xca414034 mmc_can_reset +EXPORT_SYMBOL vmlinux 0xca5dbc50 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xca719ad2 security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0xca825895 pmu_suspend +EXPORT_SYMBOL vmlinux 0xca8cfdca xfrm4_prepare_output +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xcaabf3f9 pasemi_write_iob_reg +EXPORT_SYMBOL vmlinux 0xcadeaabe softnet_data +EXPORT_SYMBOL vmlinux 0xcae4e23d flush_signals +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb0580b2 devfreq_resume_device +EXPORT_SYMBOL vmlinux 0xcb0c5d50 param_get_uint +EXPORT_SYMBOL vmlinux 0xcb1adecc __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0xcb1c6376 input_event +EXPORT_SYMBOL vmlinux 0xcb246258 tcp_enter_memory_pressure +EXPORT_SYMBOL vmlinux 0xcb2581e8 pci_remove_bus +EXPORT_SYMBOL vmlinux 0xcb512902 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0xcb6b950f xfrm_state_add +EXPORT_SYMBOL vmlinux 0xcb827161 scm_fp_dup +EXPORT_SYMBOL vmlinux 0xcb870651 pci_enable_msi_block +EXPORT_SYMBOL vmlinux 0xcb9508bc tty_port_hangup +EXPORT_SYMBOL vmlinux 0xcba66011 blk_delay_queue +EXPORT_SYMBOL vmlinux 0xcbbbb8ee netif_napi_del +EXPORT_SYMBOL vmlinux 0xcbbf0a6f audit_log_task_context +EXPORT_SYMBOL vmlinux 0xcbc9557f unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0xcbe8b038 _lv1_configure_execution_time_variable +EXPORT_SYMBOL vmlinux 0xcc17504d _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xcc23fc3f fsnotify_destroy_mark +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc2fa666 inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0xcc37f55c blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0xcc43cb61 tty_unthrottle +EXPORT_SYMBOL vmlinux 0xcc4b84da of_find_node_by_type +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc5e20ce scsi_is_host_device +EXPORT_SYMBOL vmlinux 0xcc669eec I_BDEV +EXPORT_SYMBOL vmlinux 0xcc70e4e6 blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0xcc7fa952 local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0xcc842bc8 rt6_lookup +EXPORT_SYMBOL vmlinux 0xcc88e2ef xfrm_garbage_collect +EXPORT_SYMBOL vmlinux 0xcc89c246 pasemi_dma_alloc_chan +EXPORT_SYMBOL vmlinux 0xcc9bea20 bio_copy_kern +EXPORT_SYMBOL vmlinux 0xccaccb75 xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xcd0529c7 _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0xcd20667a kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd2ebaf0 uart_remove_one_port +EXPORT_SYMBOL vmlinux 0xcd769f62 _lv1_gpu_device_map +EXPORT_SYMBOL vmlinux 0xcd7739e1 pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0xcd77609f vlan_untag +EXPORT_SYMBOL vmlinux 0xcd86c87f __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xcd96d7c6 vfs_link +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcddbb8e4 tty_do_resize +EXPORT_SYMBOL vmlinux 0xcde172ac radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0xce05575e macio_release_resource +EXPORT_SYMBOL vmlinux 0xce083a9b bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0xce09868d dev_addr_del_multiple +EXPORT_SYMBOL vmlinux 0xce202577 noop_fsync +EXPORT_SYMBOL vmlinux 0xce268591 sock_no_accept +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce3b3f09 profile_pc +EXPORT_SYMBOL vmlinux 0xce409cda pmac_set_early_video_resume +EXPORT_SYMBOL vmlinux 0xce4e47b6 __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0xce4e4cc0 phy_device_free +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce71cbdf blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0xce7ccb03 request_key_async_with_auxdata +EXPORT_SYMBOL vmlinux 0xce7d38b7 neigh_event_ns +EXPORT_SYMBOL vmlinux 0xce830998 blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0xce8e6bc8 inet_select_addr +EXPORT_SYMBOL vmlinux 0xcea81cdd inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xcec2f3e2 inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0xced777cb proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0xcedf9018 kernel_getpeername +EXPORT_SYMBOL vmlinux 0xcee3b510 igrab +EXPORT_SYMBOL vmlinux 0xcef15e90 phy_connect +EXPORT_SYMBOL vmlinux 0xcef51982 kstrtou16 +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf09de66 jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0xcf29ba64 twl6040_get_pll +EXPORT_SYMBOL vmlinux 0xcf6f40b7 max8925_bulk_read +EXPORT_SYMBOL vmlinux 0xcf7062c7 agp_generic_alloc_user +EXPORT_SYMBOL vmlinux 0xcf843c99 inet_register_protosw +EXPORT_SYMBOL vmlinux 0xcf8554cd end_buffer_async_write +EXPORT_SYMBOL vmlinux 0xcf8ed296 in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xcf91b3a0 inode_permission +EXPORT_SYMBOL vmlinux 0xcf9a4e73 __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xcfb11375 tty_throttle +EXPORT_SYMBOL vmlinux 0xcfb7d5a0 cpu_sibling_map +EXPORT_SYMBOL vmlinux 0xcfc3b8c8 call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0xcfd2d745 udp_prot +EXPORT_SYMBOL vmlinux 0xcfd83fb8 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0xcfed187f dev_disable_lro +EXPORT_SYMBOL vmlinux 0xcff10bd8 sk_stream_write_space +EXPORT_SYMBOL vmlinux 0xd011c1ed sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0xd0161de1 free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0xd0181f4f __bitmap_xor +EXPORT_SYMBOL vmlinux 0xd01ff546 simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0xd0349229 padata_stop +EXPORT_SYMBOL vmlinux 0xd0442570 module_refcount +EXPORT_SYMBOL vmlinux 0xd058244a secpath_dup +EXPORT_SYMBOL vmlinux 0xd05931ec _lv1_set_lpm_counter_control +EXPORT_SYMBOL vmlinux 0xd0720a17 on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xd0730b5e cdrom_open +EXPORT_SYMBOL vmlinux 0xd07e270c __page_symlink +EXPORT_SYMBOL vmlinux 0xd0a02396 hvcs_free_connection +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0b4b731 wireless_spy_update +EXPORT_SYMBOL vmlinux 0xd0d42c42 mod_timer_pending +EXPORT_SYMBOL vmlinux 0xd0ee38b8 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0xd0f36f0d audit_log_format +EXPORT_SYMBOL vmlinux 0xd0fb7cd4 __tasklet_hi_schedule_first +EXPORT_SYMBOL vmlinux 0xd0fef3b2 agp_free_key +EXPORT_SYMBOL vmlinux 0xd10c3452 idr_init +EXPORT_SYMBOL vmlinux 0xd1131fb0 pci_reenable_device +EXPORT_SYMBOL vmlinux 0xd11c0dc1 __kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xd1262886 rtas_data_buf +EXPORT_SYMBOL vmlinux 0xd14cc595 dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0xd1514708 sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd185eaf5 scsi_print_command +EXPORT_SYMBOL vmlinux 0xd19e2e53 sg_miter_start +EXPORT_SYMBOL vmlinux 0xd1a15020 max8998_write_reg +EXPORT_SYMBOL vmlinux 0xd1cd7a9e pcie_port_service_unregister +EXPORT_SYMBOL vmlinux 0xd1da648f blk_queue_free_tags +EXPORT_SYMBOL vmlinux 0xd1f5615a lease_get_mtime +EXPORT_SYMBOL vmlinux 0xd1fe8ebb _lv1_get_spe_interrupt_status +EXPORT_SYMBOL vmlinux 0xd220cf8a jiffies_to_timespec +EXPORT_SYMBOL vmlinux 0xd22397a8 fb_class +EXPORT_SYMBOL vmlinux 0xd22440ab mmc_gpio_request_ro +EXPORT_SYMBOL vmlinux 0xd231c371 rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0xd232a720 km_query +EXPORT_SYMBOL vmlinux 0xd236d6f2 input_unregister_device +EXPORT_SYMBOL vmlinux 0xd23a11b1 inode_reclaim_rsv_space +EXPORT_SYMBOL vmlinux 0xd240ce9a inet_sendpage +EXPORT_SYMBOL vmlinux 0xd246430d alloc_pci_dev +EXPORT_SYMBOL vmlinux 0xd247803b fd_install +EXPORT_SYMBOL vmlinux 0xd24abc99 pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0xd251d7b0 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0xd2555f19 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd26c4e61 bh_submit_read +EXPORT_SYMBOL vmlinux 0xd27a30be ip_setsockopt +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd2955926 tty_set_operations +EXPORT_SYMBOL vmlinux 0xd2ab1b2b dev_mc_sync +EXPORT_SYMBOL vmlinux 0xd2abedce neigh_table_init +EXPORT_SYMBOL vmlinux 0xd2acaa51 inet_stream_ops +EXPORT_SYMBOL vmlinux 0xd2b09ce5 __kmalloc +EXPORT_SYMBOL vmlinux 0xd2b0ee65 compat_tcp_getsockopt +EXPORT_SYMBOL vmlinux 0xd2b54f4d netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0xd2cd5568 interruptible_sleep_on_timeout +EXPORT_SYMBOL vmlinux 0xd2d04e74 dev_trans_start +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2ef2638 smu_cmdbuf_abs +EXPORT_SYMBOL vmlinux 0xd2facc1d pci_get_device +EXPORT_SYMBOL vmlinux 0xd316cd02 xfrm_cfg_mutex +EXPORT_SYMBOL vmlinux 0xd31ccb06 of_machine_is_compatible +EXPORT_SYMBOL vmlinux 0xd33d0259 of_mdio_find_bus +EXPORT_SYMBOL vmlinux 0xd347225a page_put_link +EXPORT_SYMBOL vmlinux 0xd36257ba memcpy_toiovecend +EXPORT_SYMBOL vmlinux 0xd36d625c dev_set_drvdata +EXPORT_SYMBOL vmlinux 0xd377e4c6 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0xd397e5bd compat_nf_setsockopt +EXPORT_SYMBOL vmlinux 0xd3e5ec73 dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0xd4045d0a fb_pan_display +EXPORT_SYMBOL vmlinux 0xd409383c pmu_request +EXPORT_SYMBOL vmlinux 0xd456bc83 gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0xd48bcc5f bioset_free +EXPORT_SYMBOL vmlinux 0xd48fdeef dql_completed +EXPORT_SYMBOL vmlinux 0xd4b531ff __generic_file_aio_write +EXPORT_SYMBOL vmlinux 0xd4bbdf9b netif_device_attach +EXPORT_SYMBOL vmlinux 0xd4d345a0 user_path_create +EXPORT_SYMBOL vmlinux 0xd4f695e9 unregister_quota_format +EXPORT_SYMBOL vmlinux 0xd5054f3e mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0xd5105623 netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0xd5278ec4 pskb_expand_head +EXPORT_SYMBOL vmlinux 0xd55443ef blk_mq_init_commands +EXPORT_SYMBOL vmlinux 0xd594d49e sock_kfree_s +EXPORT_SYMBOL vmlinux 0xd5ca135a mount_bdev +EXPORT_SYMBOL vmlinux 0xd5d7bf42 qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0xd5e1d719 _lv1_set_ppe_periodic_tracer_frequency +EXPORT_SYMBOL vmlinux 0xd5f2172f del_timer_sync +EXPORT_SYMBOL vmlinux 0xd5fbdde7 phy_device_register +EXPORT_SYMBOL vmlinux 0xd604d2ec starget_for_each_device +EXPORT_SYMBOL vmlinux 0xd60cb3ad unregister_exec_domain +EXPORT_SYMBOL vmlinux 0xd616683a ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0xd616ecb2 inet_confirm_addr +EXPORT_SYMBOL vmlinux 0xd6430c09 blk_init_queue_node +EXPORT_SYMBOL vmlinux 0xd64343fe bio_advance +EXPORT_SYMBOL vmlinux 0xd648e564 fb_match_mode +EXPORT_SYMBOL vmlinux 0xd64915ba __dev_get_by_index +EXPORT_SYMBOL vmlinux 0xd649a257 kernel_getsockopt +EXPORT_SYMBOL vmlinux 0xd66efec3 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd688fa83 vm_insert_pfn +EXPORT_SYMBOL vmlinux 0xd68dad1d try_to_free_buffers +EXPORT_SYMBOL vmlinux 0xd6910ed1 dquot_drop +EXPORT_SYMBOL vmlinux 0xd6bb5041 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0xd6bff22c tty_vhangup +EXPORT_SYMBOL vmlinux 0xd6c40be3 arp_find +EXPORT_SYMBOL vmlinux 0xd6d63e9d lg_local_lock_cpu +EXPORT_SYMBOL vmlinux 0xd6edf811 _lv1_release_memory +EXPORT_SYMBOL vmlinux 0xd6ee4bfe __sock_create +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6fd4053 __arch_hweight32 +EXPORT_SYMBOL vmlinux 0xd70fc3ed devfreq_interval_update +EXPORT_SYMBOL vmlinux 0xd7171885 kobject_get +EXPORT_SYMBOL vmlinux 0xd72d6f8f bitmap_endwrite +EXPORT_SYMBOL vmlinux 0xd72e1cfc _lv1_set_lpm_spr_trigger +EXPORT_SYMBOL vmlinux 0xd7429b5d scsi_register_interface +EXPORT_SYMBOL vmlinux 0xd74dbf91 blk_start_request +EXPORT_SYMBOL vmlinux 0xd754e63f jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0xd75c79df smp_call_function +EXPORT_SYMBOL vmlinux 0xd761a383 ioremap_prot +EXPORT_SYMBOL vmlinux 0xd768bf90 input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0xd77a5aa5 __bitmap_and +EXPORT_SYMBOL vmlinux 0xd786c0ea plpar_hcall9 +EXPORT_SYMBOL vmlinux 0xd79b5a02 allow_signal +EXPORT_SYMBOL vmlinux 0xd7b7c236 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0xd7bd298b skb_orphan_partial +EXPORT_SYMBOL vmlinux 0xd7cbddda memcpy_toiovec +EXPORT_SYMBOL vmlinux 0xd7d043bf dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7ea7094 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xd7ec6608 generic_file_remap_pages +EXPORT_SYMBOL vmlinux 0xd80bd7dc cap_mmap_file +EXPORT_SYMBOL vmlinux 0xd80e5f7b devfreq_remove_device +EXPORT_SYMBOL vmlinux 0xd8337c7a register_filesystem +EXPORT_SYMBOL vmlinux 0xd8357cc5 dev_change_flags +EXPORT_SYMBOL vmlinux 0xd837abe8 pci_set_dma_seg_boundary +EXPORT_SYMBOL vmlinux 0xd8640e8a blk_queue_init_tags +EXPORT_SYMBOL vmlinux 0xd878d52a bio_map_kern +EXPORT_SYMBOL vmlinux 0xd89cc4bd cdev_init +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8a485dc sb_set_blocksize +EXPORT_SYMBOL vmlinux 0xd8aff13d __sb_start_write +EXPORT_SYMBOL vmlinux 0xd8bddb16 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0xd8c72cf0 ifla_policy +EXPORT_SYMBOL vmlinux 0xd8ded085 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xd8e484f0 register_chrdev_region +EXPORT_SYMBOL vmlinux 0xd915c043 d_validate +EXPORT_SYMBOL vmlinux 0xd92afabe bitmap_clear +EXPORT_SYMBOL vmlinux 0xd92e16ba csum_partial_copy_fromiovecend +EXPORT_SYMBOL vmlinux 0xd9324850 uart_match_port +EXPORT_SYMBOL vmlinux 0xd933f79c fput +EXPORT_SYMBOL vmlinux 0xd93d783e uart_write_wakeup +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd9973be7 sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0xd9a9bb30 getname +EXPORT_SYMBOL vmlinux 0xd9b8cea4 dquot_operations +EXPORT_SYMBOL vmlinux 0xd9bac924 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0xd9cf44c2 alloc_fcdev +EXPORT_SYMBOL vmlinux 0xd9d4d09d _lv1_release_io_segment +EXPORT_SYMBOL vmlinux 0xd9e40e6c bio_map_user +EXPORT_SYMBOL vmlinux 0xda0ef3d6 ps2_begin_command +EXPORT_SYMBOL vmlinux 0xda0f5234 rtas_offline_cpus_mask +EXPORT_SYMBOL vmlinux 0xda1e2385 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0xda2478d0 param_ops_short +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda481c39 generic_delete_inode +EXPORT_SYMBOL vmlinux 0xda48946e jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0xda7ca6cb fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xda8af7ad fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0xda8c8a6f __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0xda8fb25e bprm_change_interp +EXPORT_SYMBOL vmlinux 0xdabc1ea8 fsl_lbc_find +EXPORT_SYMBOL vmlinux 0xdaea6e0d mfd_clone_cell +EXPORT_SYMBOL vmlinux 0xdb01198e fsl_upm_find +EXPORT_SYMBOL vmlinux 0xdb39dc84 lro_flush_pkt +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb7f6fb6 tty_hung_up_p +EXPORT_SYMBOL vmlinux 0xdb90429a d_alloc_name +EXPORT_SYMBOL vmlinux 0xdba17ea2 simple_write_begin +EXPORT_SYMBOL vmlinux 0xdbb24fc2 down_write +EXPORT_SYMBOL vmlinux 0xdbbb1fc2 sync_inode +EXPORT_SYMBOL vmlinux 0xdbbf1468 vfs_unlink +EXPORT_SYMBOL vmlinux 0xdbbf63a3 dquot_get_dqinfo +EXPORT_SYMBOL vmlinux 0xdbc0e6ee generic_file_mmap +EXPORT_SYMBOL vmlinux 0xdbcd416e sysctl_ip_nonlocal_bind +EXPORT_SYMBOL vmlinux 0xdbf3bde0 phy_driver_unregister +EXPORT_SYMBOL vmlinux 0xdbf9d115 decrementer_clockevent +EXPORT_SYMBOL vmlinux 0xdbfc3389 netlink_kernel_release +EXPORT_SYMBOL vmlinux 0xdc047fc4 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc3c41a8 __crypto_memneq +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc4dc52f scsi_register_driver +EXPORT_SYMBOL vmlinux 0xdc501de4 twl6030_mmc_card_detect +EXPORT_SYMBOL vmlinux 0xdc5c7fea blk_mq_free_queue +EXPORT_SYMBOL vmlinux 0xdc5fd7b0 generic_file_splice_read +EXPORT_SYMBOL vmlinux 0xdc8d15c7 from_kuid_munged +EXPORT_SYMBOL vmlinux 0xdc9498dd down +EXPORT_SYMBOL vmlinux 0xdc9f0619 __block_page_mkwrite +EXPORT_SYMBOL vmlinux 0xdca5e0f8 rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0xdcb764ad memset +EXPORT_SYMBOL vmlinux 0xdccdf189 kernel_recvmsg +EXPORT_SYMBOL vmlinux 0xdccdf784 bioset_integrity_create +EXPORT_SYMBOL vmlinux 0xdcce7c61 srp_start_tl_fail_timers +EXPORT_SYMBOL vmlinux 0xdcd3af97 tty_port_init +EXPORT_SYMBOL vmlinux 0xdcda4c58 devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0xdcefb9a5 pmu_resume +EXPORT_SYMBOL vmlinux 0xdd5cd174 dma_async_device_register +EXPORT_SYMBOL vmlinux 0xdd955144 __debugger +EXPORT_SYMBOL vmlinux 0xdda8b50b agp_enable +EXPORT_SYMBOL vmlinux 0xddb38a60 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0xddbb1d64 inet_frags_exit_net +EXPORT_SYMBOL vmlinux 0xddbfee39 kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0xddd63b53 jbd2_journal_start +EXPORT_SYMBOL vmlinux 0xddebe7d6 blk_queue_start_tag +EXPORT_SYMBOL vmlinux 0xde0b5897 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0xde10eb10 param_set_invbool +EXPORT_SYMBOL vmlinux 0xde35cf6c dump_emit +EXPORT_SYMBOL vmlinux 0xde3d5433 of_device_unregister +EXPORT_SYMBOL vmlinux 0xde3f1c0a pci_pme_capable +EXPORT_SYMBOL vmlinux 0xde48e9ca _raw_spin_lock +EXPORT_SYMBOL vmlinux 0xde6151db tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0xde783883 pSeries_disable_reloc_on_exc +EXPORT_SYMBOL vmlinux 0xde790574 phy_print_status +EXPORT_SYMBOL vmlinux 0xde8c42b3 of_platform_device_create +EXPORT_SYMBOL vmlinux 0xde91448c load_vr_state +EXPORT_SYMBOL vmlinux 0xde9360ba totalram_pages +EXPORT_SYMBOL vmlinux 0xde9602ba single_open +EXPORT_SYMBOL vmlinux 0xde9b17ed agp3_generic_fetch_size +EXPORT_SYMBOL vmlinux 0xde9c1e19 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0xdea79e40 tcp_seq_open +EXPORT_SYMBOL vmlinux 0xdeb47ba5 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0xdec1d142 kthread_create_on_node +EXPORT_SYMBOL vmlinux 0xded53654 pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0xdedcf3c2 mmc_gpio_request_cd +EXPORT_SYMBOL vmlinux 0xdeed85c6 pci_enable_obff +EXPORT_SYMBOL vmlinux 0xdf0c8352 scsi_is_target_device +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf39adb0 pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0xdf42f6b0 phy_device_create +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf60cc27 __print_symbol +EXPORT_SYMBOL vmlinux 0xdf60fc83 _lv1_net_start_tx_dma +EXPORT_SYMBOL vmlinux 0xdf8d21b5 input_register_handle +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdfc6d13d __breadahead +EXPORT_SYMBOL vmlinux 0xdfe3d87a ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0xe025c2e4 pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xe04f7caa dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xe06141e9 security_sk_clone +EXPORT_SYMBOL vmlinux 0xe06fd111 do_SAK +EXPORT_SYMBOL vmlinux 0xe075d6eb iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xe084888d key_task_permission +EXPORT_SYMBOL vmlinux 0xe08f4472 pcie_set_mps +EXPORT_SYMBOL vmlinux 0xe096857d path_put +EXPORT_SYMBOL vmlinux 0xe0a05524 irq_stat +EXPORT_SYMBOL vmlinux 0xe0ad5a90 serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0xe0aea768 __scm_send +EXPORT_SYMBOL vmlinux 0xe0b10028 led_set_brightness +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0ef10c7 ida_simple_remove +EXPORT_SYMBOL vmlinux 0xe0fa83f2 ipmi_register_for_cmd +EXPORT_SYMBOL vmlinux 0xe1063de9 ata_print_version +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe114f62f iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0xe13a3f88 ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xe162a616 truncate_setsize +EXPORT_SYMBOL vmlinux 0xe164b3d8 mark_info_dirty +EXPORT_SYMBOL vmlinux 0xe16eb173 register_gifconf +EXPORT_SYMBOL vmlinux 0xe1761617 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xe183bc17 from_kuid +EXPORT_SYMBOL vmlinux 0xe1888f00 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0xe190f5ae revert_creds +EXPORT_SYMBOL vmlinux 0xe1bc9910 devfreq_add_governor +EXPORT_SYMBOL vmlinux 0xe1d7d52f scsi_remove_host +EXPORT_SYMBOL vmlinux 0xe1ddd5fe dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0xe1df0faa generic_write_checks +EXPORT_SYMBOL vmlinux 0xe200f872 secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xe20c63e7 _lv1_unmap_device_mmio_region +EXPORT_SYMBOL vmlinux 0xe220ceb8 __debugger_sstep +EXPORT_SYMBOL vmlinux 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL vmlinux 0xe23ae481 blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe24d3a97 jiffies_64 +EXPORT_SYMBOL vmlinux 0xe25c3535 __inet_stream_connect +EXPORT_SYMBOL vmlinux 0xe267ead0 mem_cgroup_subsys +EXPORT_SYMBOL vmlinux 0xe27aa21a ip6_frag_match +EXPORT_SYMBOL vmlinux 0xe27e86e9 pci_disable_obff +EXPORT_SYMBOL vmlinux 0xe28e0799 netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0xe29e1d0e out_of_line_wait_on_atomic_t +EXPORT_SYMBOL vmlinux 0xe2a6b8da d_move +EXPORT_SYMBOL vmlinux 0xe2be5498 lg_global_unlock +EXPORT_SYMBOL vmlinux 0xe2bf2d40 con_is_bound +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2f4d477 dev_addr_del +EXPORT_SYMBOL vmlinux 0xe2f85223 i2c_transfer +EXPORT_SYMBOL vmlinux 0xe30149d2 phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0xe306bf9c tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0xe3217432 mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xe32bf9c3 sock_no_poll +EXPORT_SYMBOL vmlinux 0xe330b945 vmap +EXPORT_SYMBOL vmlinux 0xe35c5285 of_find_node_by_phandle +EXPORT_SYMBOL vmlinux 0xe364eb08 blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0xe36cc507 da903x_query_status +EXPORT_SYMBOL vmlinux 0xe36e0c48 agp_generic_destroy_page +EXPORT_SYMBOL vmlinux 0xe3747d99 nf_log_set +EXPORT_SYMBOL vmlinux 0xe3815642 del_gendisk +EXPORT_SYMBOL vmlinux 0xe38947cf bdi_setup_and_register +EXPORT_SYMBOL vmlinux 0xe39dc843 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0xe3a53f4c sort +EXPORT_SYMBOL vmlinux 0xe3aab932 pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0xe3d6f284 fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xe3f9f074 __ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0xe3fd32f6 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0xe404993c inet_frag_kill +EXPORT_SYMBOL vmlinux 0xe409eae0 blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0xe439530f cdrom_media_changed +EXPORT_SYMBOL vmlinux 0xe444bc77 __serio_register_driver +EXPORT_SYMBOL vmlinux 0xe461ef71 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0xe484e35f ioread32 +EXPORT_SYMBOL vmlinux 0xe493c330 input_reset_device +EXPORT_SYMBOL vmlinux 0xe4a6b614 netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0xe4a895fa up_write +EXPORT_SYMBOL vmlinux 0xe4ab00bb of_node_get +EXPORT_SYMBOL vmlinux 0xe4c233e8 sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0xe4c30bba __nla_reserve +EXPORT_SYMBOL vmlinux 0xe4d99aa3 pci_add_new_bus +EXPORT_SYMBOL vmlinux 0xe4f4665b ipmi_validate_addr +EXPORT_SYMBOL vmlinux 0xe4fe8ca1 _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0xe51053de vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0xe5122890 flow_cache_genid +EXPORT_SYMBOL vmlinux 0xe51c1a68 give_up_console +EXPORT_SYMBOL vmlinux 0xe5223986 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe536e647 mmc_hw_reset_check +EXPORT_SYMBOL vmlinux 0xe53d1faa of_translate_dma_address +EXPORT_SYMBOL vmlinux 0xe575dee9 eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0xe57878a1 in6_pton +EXPORT_SYMBOL vmlinux 0xe57d92b1 jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe5989c10 wait_on_sync_kiocb +EXPORT_SYMBOL vmlinux 0xe5b7360a generic_file_direct_write +EXPORT_SYMBOL vmlinux 0xe5bb60ea tty_port_open +EXPORT_SYMBOL vmlinux 0xe5c2c8de mpage_writepages +EXPORT_SYMBOL vmlinux 0xe5c3694e ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0xe5c4806e tcf_em_unregister +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5e30972 i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0xe5e60d25 __dev_remove_pack +EXPORT_SYMBOL vmlinux 0xe5ed5467 xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xe604c5f5 dm_get_device +EXPORT_SYMBOL vmlinux 0xe60988ac _lv1_query_logical_partition_address_region_info +EXPORT_SYMBOL vmlinux 0xe64c89d0 find_get_page +EXPORT_SYMBOL vmlinux 0xe654f719 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0xe685f03e generic_writepages +EXPORT_SYMBOL vmlinux 0xe687e653 nf_getsockopt +EXPORT_SYMBOL vmlinux 0xe68d7dec inode_init_once +EXPORT_SYMBOL vmlinux 0xe691a2fb fsnotify_put_group +EXPORT_SYMBOL vmlinux 0xe697d108 __blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe6984fcc framebuffer_alloc +EXPORT_SYMBOL vmlinux 0xe69a9df4 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0xe6a405cf __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0xe6a88a79 xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0xe6ab72a6 ipmi_set_my_LUN +EXPORT_SYMBOL vmlinux 0xe6b63a24 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0xe6bc9e4a kset_register +EXPORT_SYMBOL vmlinux 0xe6c53180 pm860x_page_bulk_write +EXPORT_SYMBOL vmlinux 0xe6e2b925 scsi_scan_host +EXPORT_SYMBOL vmlinux 0xe6e82f29 pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0xe6fbe430 can_do_mlock +EXPORT_SYMBOL vmlinux 0xe6ff4dad ip6_xmit +EXPORT_SYMBOL vmlinux 0xe71d7f35 simple_transaction_get +EXPORT_SYMBOL vmlinux 0xe72425dc prepare_binprm +EXPORT_SYMBOL vmlinux 0xe7309684 xfrm_input +EXPORT_SYMBOL vmlinux 0xe74aa406 _lv1_set_dabr +EXPORT_SYMBOL vmlinux 0xe7604431 ipmi_register_smi +EXPORT_SYMBOL vmlinux 0xe763cfe3 unregister_binfmt +EXPORT_SYMBOL vmlinux 0xe7a35e98 unregister_console +EXPORT_SYMBOL vmlinux 0xe7a664c4 nf_hooks +EXPORT_SYMBOL vmlinux 0xe7a81967 audit_log_secctx +EXPORT_SYMBOL vmlinux 0xe7ba111b rtmsg_ifinfo +EXPORT_SYMBOL vmlinux 0xe7bda82f fget +EXPORT_SYMBOL vmlinux 0xe7c84014 lockref_mark_dead +EXPORT_SYMBOL vmlinux 0xe7cd99b7 smu_queue_simple +EXPORT_SYMBOL vmlinux 0xe7ce7439 _memcpy_fromio +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7f0ae42 d_delete +EXPORT_SYMBOL vmlinux 0xe7f2c7df ab3100_event_register +EXPORT_SYMBOL vmlinux 0xe808e80b bio_integrity_split +EXPORT_SYMBOL vmlinux 0xe82cc752 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0xe833fa77 gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0xe83bd7d6 poll_initwait +EXPORT_SYMBOL vmlinux 0xe84b2ff6 inet6_release +EXPORT_SYMBOL vmlinux 0xe8600099 end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0xe87fefa6 sock_sendmsg +EXPORT_SYMBOL vmlinux 0xe894cf7c get_user_pages +EXPORT_SYMBOL vmlinux 0xe8a11abe check_disk_change +EXPORT_SYMBOL vmlinux 0xe8b32450 wireless_send_event +EXPORT_SYMBOL vmlinux 0xe8b63ace radix_tree_range_tag_if_tagged +EXPORT_SYMBOL vmlinux 0xe8bea3bc qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xe8c19c6b neigh_app_ns +EXPORT_SYMBOL vmlinux 0xe8c438f3 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0xe8de07de udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0xe8ef6967 writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xe8f01cd1 dmam_free_coherent +EXPORT_SYMBOL vmlinux 0xe90a60e5 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe92097ea bdevname +EXPORT_SYMBOL vmlinux 0xe9386e23 inet6_del_offload +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe95cf580 agp_free_page_array +EXPORT_SYMBOL vmlinux 0xe96da378 security_path_truncate +EXPORT_SYMBOL vmlinux 0xe9804e2b lease_modify +EXPORT_SYMBOL vmlinux 0xe991f7d0 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0xe9aa01fe pci_request_regions +EXPORT_SYMBOL vmlinux 0xe9bc58cc pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0xe9c051c2 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0xe9c54842 i2c_bit_add_bus +EXPORT_SYMBOL vmlinux 0xe9d857dc free_mdio_bitbang +EXPORT_SYMBOL vmlinux 0xe9db7b96 dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0xe9e64016 vfs_readlink +EXPORT_SYMBOL vmlinux 0xe9f31d60 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xea054b22 nla_policy_len +EXPORT_SYMBOL vmlinux 0xea10212a int_to_scsilun +EXPORT_SYMBOL vmlinux 0xea10655a __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xea16dd4c tcp_destroy_cgroup +EXPORT_SYMBOL vmlinux 0xea369f04 __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0xea444f5d md_unregister_thread +EXPORT_SYMBOL vmlinux 0xea6e3003 of_find_compatible_node +EXPORT_SYMBOL vmlinux 0xea812104 sock_alloc_file +EXPORT_SYMBOL vmlinux 0xea846057 sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0xea8ed069 dquot_resume +EXPORT_SYMBOL vmlinux 0xea968c96 ___ratelimit +EXPORT_SYMBOL vmlinux 0xeaaaf11e bioset_create +EXPORT_SYMBOL vmlinux 0xead00e16 vio_get_attribute +EXPORT_SYMBOL vmlinux 0xeb1dbec4 md_wakeup_thread +EXPORT_SYMBOL vmlinux 0xeb261ab7 bio_unmap_user +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb44339a free_pages_exact +EXPORT_SYMBOL vmlinux 0xeb56ae0b clocksource_register +EXPORT_SYMBOL vmlinux 0xeb6ba482 tty_lock +EXPORT_SYMBOL vmlinux 0xeb938d85 wait_on_page_bit +EXPORT_SYMBOL vmlinux 0xeba2a1f7 rtas_indicator_present +EXPORT_SYMBOL vmlinux 0xebc9675a xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0xebcab3a6 ppc_pci_io +EXPORT_SYMBOL vmlinux 0xebda8268 __i2c_transfer +EXPORT_SYMBOL vmlinux 0xebdbe48c radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0xebe1bf16 uart_suspend_port +EXPORT_SYMBOL vmlinux 0xebe8fcd6 __kfree_skb +EXPORT_SYMBOL vmlinux 0xebeac522 dev_crit +EXPORT_SYMBOL vmlinux 0xec10547c __wait_on_buffer +EXPORT_SYMBOL vmlinux 0xec16a166 page_symlink +EXPORT_SYMBOL vmlinux 0xec17ebb0 of_match_node +EXPORT_SYMBOL vmlinux 0xec1d9dea block_write_full_page_endio +EXPORT_SYMBOL vmlinux 0xec21ca5a vio_h_cop_sync +EXPORT_SYMBOL vmlinux 0xec30765a _lv1_allocate_io_segment +EXPORT_SYMBOL vmlinux 0xec3c0b0a phy_stop +EXPORT_SYMBOL vmlinux 0xec4e5f77 swiotlb_unmap_sg_attrs +EXPORT_SYMBOL vmlinux 0xec53d408 dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0xec554d09 pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0xec6a6b5e bio_alloc_pages +EXPORT_SYMBOL vmlinux 0xec7bc687 blk_mq_alloc_single_hw_queue +EXPORT_SYMBOL vmlinux 0xeca38fbe save_mount_options +EXPORT_SYMBOL vmlinux 0xecbb926f xor_altivec_3 +EXPORT_SYMBOL vmlinux 0xecc11e86 cont_write_begin +EXPORT_SYMBOL vmlinux 0xecd0a31c d_path +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xed07333b lock_fb_info +EXPORT_SYMBOL vmlinux 0xed07e90d mach_powernv +EXPORT_SYMBOL vmlinux 0xed13c7f2 end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0xed36f744 fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0xed3d268e register_shrinker +EXPORT_SYMBOL vmlinux 0xed5324f3 block_page_mkwrite +EXPORT_SYMBOL vmlinux 0xed54da26 set_bdi_congested +EXPORT_SYMBOL vmlinux 0xed597524 qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xed652427 _lv1_set_interrupt_mask +EXPORT_SYMBOL vmlinux 0xed80a2a2 phy_start_interrupts +EXPORT_SYMBOL vmlinux 0xed91acec __lru_cache_add +EXPORT_SYMBOL vmlinux 0xed9f9a20 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xedae510b i8042_remove_filter +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedbec1c7 fb_set_var +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedc410d0 udplite_table +EXPORT_SYMBOL vmlinux 0xeddf3507 serio_reconnect +EXPORT_SYMBOL vmlinux 0xedf0b48c _lv1_storage_get_async_status +EXPORT_SYMBOL vmlinux 0xedf146ee dcb_getapp +EXPORT_SYMBOL vmlinux 0xee1d748a revalidate_disk +EXPORT_SYMBOL vmlinux 0xee246dff ida_destroy +EXPORT_SYMBOL vmlinux 0xee287cd3 release_sock +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee36278f scsi_device_lookup +EXPORT_SYMBOL vmlinux 0xee37d8e4 tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0xee5bb20b _lv1_panic +EXPORT_SYMBOL vmlinux 0xee5cfbc1 xfrm_register_type +EXPORT_SYMBOL vmlinux 0xee641376 generic_file_splice_write +EXPORT_SYMBOL vmlinux 0xee66dde7 pci_set_master +EXPORT_SYMBOL vmlinux 0xee68f97a swiotlb_map_sg_attrs +EXPORT_SYMBOL vmlinux 0xee6bf650 generic_pipe_buf_unmap +EXPORT_SYMBOL vmlinux 0xee798b33 block_read_full_page +EXPORT_SYMBOL vmlinux 0xee9174c5 _lv1_storage_read +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xee9f1db8 neigh_ifdown +EXPORT_SYMBOL vmlinux 0xeea9dbaf bitmap_bitremap +EXPORT_SYMBOL vmlinux 0xeeb5bd3b __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0xeec7cf9c __napi_complete +EXPORT_SYMBOL vmlinux 0xeed1a526 pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0xeed4cb20 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0xeedf1062 skb_copy_bits +EXPORT_SYMBOL vmlinux 0xeeec26a7 queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xeef161aa groups_free +EXPORT_SYMBOL vmlinux 0xeef7765d security_task_getsecid +EXPORT_SYMBOL vmlinux 0xef109449 interruptible_sleep_on +EXPORT_SYMBOL vmlinux 0xef27ea25 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0xef54ee42 seq_release +EXPORT_SYMBOL vmlinux 0xef5a31c2 serial8250_do_pm +EXPORT_SYMBOL vmlinux 0xef943300 writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xef9afb1e dma_async_memcpy_buf_to_pg +EXPORT_SYMBOL vmlinux 0xefa98588 bio_init +EXPORT_SYMBOL vmlinux 0xefbf75f6 pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0xefc01648 agp_generic_free_gatt_table +EXPORT_SYMBOL vmlinux 0xefc2e54d _lv1_storage_send_device_command +EXPORT_SYMBOL vmlinux 0xefdd70ce security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0xefde1bbe flush_dcache_range +EXPORT_SYMBOL vmlinux 0xefe1385b scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0xefe4c5d8 scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0xefe77c7b __frontswap_test +EXPORT_SYMBOL vmlinux 0xeff3a4b7 scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf0187927 __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0xf01b4558 blk_integrity_is_initialized +EXPORT_SYMBOL vmlinux 0xf023eaf4 padata_unregister_cpumask_notifier +EXPORT_SYMBOL vmlinux 0xf041f3d3 d_drop +EXPORT_SYMBOL vmlinux 0xf05ffa15 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0xf0619801 timekeeping_clocktai +EXPORT_SYMBOL vmlinux 0xf065f629 ioread16be +EXPORT_SYMBOL vmlinux 0xf067257c register_memory_isolate_notifier +EXPORT_SYMBOL vmlinux 0xf07e285e inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xf08410a0 skb_tx_error +EXPORT_SYMBOL vmlinux 0xf087137d __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0xf087b46e blkdev_get +EXPORT_SYMBOL vmlinux 0xf096f597 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0xf09de776 get_random_int +EXPORT_SYMBOL vmlinux 0xf0a4af49 alloc_mdio_bitbang +EXPORT_SYMBOL vmlinux 0xf0d2f84a _lv1_gpu_context_free +EXPORT_SYMBOL vmlinux 0xf0e8bef9 napi_complete +EXPORT_SYMBOL vmlinux 0xf0ef15b4 list_sort +EXPORT_SYMBOL vmlinux 0xf0f1246c kvasprintf +EXPORT_SYMBOL vmlinux 0xf0f29970 pci_disable_ltr +EXPORT_SYMBOL vmlinux 0xf0f2cb05 i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0xf0fd4e8f rwsem_down_read_failed +EXPORT_SYMBOL vmlinux 0xf100416a remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xf1058eac inet_frags_fini +EXPORT_SYMBOL vmlinux 0xf10b1c3c ppp_input_error +EXPORT_SYMBOL vmlinux 0xf10ca3e7 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0xf10de535 ioread8 +EXPORT_SYMBOL vmlinux 0xf11cd6ce down_interruptible +EXPORT_SYMBOL vmlinux 0xf11d95ca dev_addr_init +EXPORT_SYMBOL vmlinux 0xf11e86c7 elv_register_queue +EXPORT_SYMBOL vmlinux 0xf1266048 netlink_broadcast +EXPORT_SYMBOL vmlinux 0xf13feb57 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0xf147dcb2 hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0xf183189b __ioremap_at +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1ce0b79 __napi_schedule +EXPORT_SYMBOL vmlinux 0xf1da518b __find_get_block +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1e06df1 gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1f48237 pci_request_region +EXPORT_SYMBOL vmlinux 0xf1f63536 pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0xf202c5cb radix_tree_insert +EXPORT_SYMBOL vmlinux 0xf2069ffa init_buffer +EXPORT_SYMBOL vmlinux 0xf20b053b bitmap_close_sync +EXPORT_SYMBOL vmlinux 0xf20cd4c5 sk_free +EXPORT_SYMBOL vmlinux 0xf20dabd8 free_irq +EXPORT_SYMBOL vmlinux 0xf210f3a5 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0xf22881e8 lg_local_lock +EXPORT_SYMBOL vmlinux 0xf230380f vfs_rmdir +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf2465b0f vfs_symlink +EXPORT_SYMBOL vmlinux 0xf24dcaa8 _lv1_net_stop_rx_dma +EXPORT_SYMBOL vmlinux 0xf2576cb9 ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL vmlinux 0xf26871f0 mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0xf26a686f module_put +EXPORT_SYMBOL vmlinux 0xf2961823 pci_enable_ltr +EXPORT_SYMBOL vmlinux 0xf2a0af8f backlight_device_registered +EXPORT_SYMBOL vmlinux 0xf2a73659 dquot_initialize +EXPORT_SYMBOL vmlinux 0xf2b08e41 eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0xf2b1ac8e __getnstimeofday +EXPORT_SYMBOL vmlinux 0xf2e43993 ip_cmsg_recv +EXPORT_SYMBOL vmlinux 0xf2e4adfc __scsi_alloc_queue +EXPORT_SYMBOL vmlinux 0xf2e7d5a0 netif_rx +EXPORT_SYMBOL vmlinux 0xf2fae5b1 xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0xf30d1036 _lv1_start_ppe_periodic_tracer +EXPORT_SYMBOL vmlinux 0xf313da4e sha_transform +EXPORT_SYMBOL vmlinux 0xf314173b fb_find_mode +EXPORT_SYMBOL vmlinux 0xf322a206 bit_waitqueue +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf357db8d pasemi_dma_set_flag +EXPORT_SYMBOL vmlinux 0xf35911c5 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0xf3735769 __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf3aec73c cdrom_mode_select +EXPORT_SYMBOL vmlinux 0xf3aff4c7 vio_register_device_node +EXPORT_SYMBOL vmlinux 0xf3b9d44a blk_queue_bounce +EXPORT_SYMBOL vmlinux 0xf3bf0bce __bitmap_complement +EXPORT_SYMBOL vmlinux 0xf3d10c31 gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0xf3daeb0b bdput +EXPORT_SYMBOL vmlinux 0xf4360a88 mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0xf441ac43 ioread8_rep +EXPORT_SYMBOL vmlinux 0xf446ad8f security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0xf45a12c7 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0xf46baeb1 scsi_scan_target +EXPORT_SYMBOL vmlinux 0xf46cf75a generic_pipe_buf_map +EXPORT_SYMBOL vmlinux 0xf49b1ec7 swiotlb_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0xf4a61cae scsi_finish_command +EXPORT_SYMBOL vmlinux 0xf4a6cd0f blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4df3945 dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf4feff8b netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0xf51bf88b nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xf5222143 _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0xf538b251 scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf53df0a5 gen_pool_free +EXPORT_SYMBOL vmlinux 0xf55b3b3d __arch_hweight16 +EXPORT_SYMBOL vmlinux 0xf56789ad set_bh_page +EXPORT_SYMBOL vmlinux 0xf574915f eth_header +EXPORT_SYMBOL vmlinux 0xf5951b29 pci_dev_put +EXPORT_SYMBOL vmlinux 0xf5a085c4 gen_pool_destroy +EXPORT_SYMBOL vmlinux 0xf5a62ecc _memset_io +EXPORT_SYMBOL vmlinux 0xf5ac2e73 vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0xf5c1bdc2 keyring_search +EXPORT_SYMBOL vmlinux 0xf5e1558d crash_shutdown_unregister +EXPORT_SYMBOL vmlinux 0xf5eb86ea blk_verify_command +EXPORT_SYMBOL vmlinux 0xf5ed4225 genphy_setup_forced +EXPORT_SYMBOL vmlinux 0xf5faf2b8 pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0xf5fc738c inet_del_offload +EXPORT_SYMBOL vmlinux 0xf6045efd do_truncate +EXPORT_SYMBOL vmlinux 0xf60c8bc3 __netif_schedule +EXPORT_SYMBOL vmlinux 0xf6213e12 pasemi_dma_clear_flag +EXPORT_SYMBOL vmlinux 0xf62cee83 single_release +EXPORT_SYMBOL vmlinux 0xf6388c56 sysctl_ip_default_ttl +EXPORT_SYMBOL vmlinux 0xf65d65e8 dqget +EXPORT_SYMBOL vmlinux 0xf6633d0f blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf68687be __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xf698b9a7 skb_clone +EXPORT_SYMBOL vmlinux 0xf6bb4729 color_table +EXPORT_SYMBOL vmlinux 0xf6caf59a seq_puts +EXPORT_SYMBOL vmlinux 0xf6d9f866 __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0xf6e9a48f inet_add_protocol +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6ecb763 _lv1_send_event_locally +EXPORT_SYMBOL vmlinux 0xf7289d14 __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0xf741c793 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf75fe0f8 ip_options_compile +EXPORT_SYMBOL vmlinux 0xf7611578 security_path_mknod +EXPORT_SYMBOL vmlinux 0xf7646206 pm860x_page_set_bits +EXPORT_SYMBOL vmlinux 0xf79c4bf1 eth_header_cache_update +EXPORT_SYMBOL vmlinux 0xf7a80a11 create_syslog_header +EXPORT_SYMBOL vmlinux 0xf7adcaf3 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0xf7b455de skb_copy_and_csum_datagram_iovec +EXPORT_SYMBOL vmlinux 0xf7bac0ec _lv1_set_lpm_counter +EXPORT_SYMBOL vmlinux 0xf8004bfd _lv1_disconnect_interrupt_event_receive_port +EXPORT_SYMBOL vmlinux 0xf803fe39 bitmap_set +EXPORT_SYMBOL vmlinux 0xf80626a0 pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0xf80802da pipe_to_file +EXPORT_SYMBOL vmlinux 0xf80de9ff hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf812cff6 memscan +EXPORT_SYMBOL vmlinux 0xf827cb83 free_reserved_area +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf83e9ade blk_alloc_queue_node +EXPORT_SYMBOL vmlinux 0xf84b76d2 inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0xf85af82e lock_may_write +EXPORT_SYMBOL vmlinux 0xf87afb9f agp_alloc_page_array +EXPORT_SYMBOL vmlinux 0xf889351a elv_unregister_queue +EXPORT_SYMBOL vmlinux 0xf89c8e07 ida_pre_get +EXPORT_SYMBOL vmlinux 0xf8a01c5f tcp_hashinfo +EXPORT_SYMBOL vmlinux 0xf8a729e3 scsi_nonblockable_ioctl +EXPORT_SYMBOL vmlinux 0xf8ac9c5f tcp_gso_segment +EXPORT_SYMBOL vmlinux 0xf8bdfee0 tcp_init_sock +EXPORT_SYMBOL vmlinux 0xf8fa1011 inet_stream_connect +EXPORT_SYMBOL vmlinux 0xf91c8645 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0xf932f320 ip_fragment +EXPORT_SYMBOL vmlinux 0xf95a38bf mmc_power_restore_host +EXPORT_SYMBOL vmlinux 0xf97fe7ee mount_nodev +EXPORT_SYMBOL vmlinux 0xf998b900 sock_get_timestamp +EXPORT_SYMBOL vmlinux 0xf99befdb bdev_stack_limits +EXPORT_SYMBOL vmlinux 0xf99d9e4f tty_kref_put +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9a4b6bc iput +EXPORT_SYMBOL vmlinux 0xf9ac16a3 i2c_get_adapter +EXPORT_SYMBOL vmlinux 0xf9bd62b7 pci_bus_type +EXPORT_SYMBOL vmlinux 0xf9c0b663 strlcat +EXPORT_SYMBOL vmlinux 0xf9e9e602 phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0xf9ee4d4c xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0xfa05cead inet_csk_accept +EXPORT_SYMBOL vmlinux 0xfa0e421d bdev_read_only +EXPORT_SYMBOL vmlinux 0xfa151f43 of_mm_gpiochip_add +EXPORT_SYMBOL vmlinux 0xfa1ebe5d blk_stop_queue +EXPORT_SYMBOL vmlinux 0xfa29aa23 __getblk +EXPORT_SYMBOL vmlinux 0xfa541b4c blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa755770 bdi_unregister +EXPORT_SYMBOL vmlinux 0xfa7d369b inet_del_protocol +EXPORT_SYMBOL vmlinux 0xfa7f3156 wl12xx_get_platform_data +EXPORT_SYMBOL vmlinux 0xfa9a3048 arp_invalidate +EXPORT_SYMBOL vmlinux 0xfa9d4f44 tcf_hash_search +EXPORT_SYMBOL vmlinux 0xfaa7fdb7 of_scan_pci_bridge +EXPORT_SYMBOL vmlinux 0xfabe95fc pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfadb5750 pmu_unlock +EXPORT_SYMBOL vmlinux 0xfae57462 ipv6_push_nfrag_opts +EXPORT_SYMBOL vmlinux 0xfae67b1f cap_mmap_addr +EXPORT_SYMBOL vmlinux 0xfaf96ac6 d_set_d_op +EXPORT_SYMBOL vmlinux 0xfaf98462 bitrev32 +EXPORT_SYMBOL vmlinux 0xfb07fd74 vga_get +EXPORT_SYMBOL vmlinux 0xfb0cd325 xfrm_state_flush +EXPORT_SYMBOL vmlinux 0xfb2520b7 dev_addr_flush +EXPORT_SYMBOL vmlinux 0xfb429eb1 pci_disable_msi +EXPORT_SYMBOL vmlinux 0xfb54a16c proc_create_data +EXPORT_SYMBOL vmlinux 0xfb5c5515 pci_fixup_device +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb87c4be input_register_handler +EXPORT_SYMBOL vmlinux 0xfb94103e __clzdi2 +EXPORT_SYMBOL vmlinux 0xfba96c64 cdrom_release +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbb156be inet_sendmsg +EXPORT_SYMBOL vmlinux 0xfc02b7ad sysctl_tcp_wmem +EXPORT_SYMBOL vmlinux 0xfc1908e3 dst_discard +EXPORT_SYMBOL vmlinux 0xfc193027 tcf_destroy_chain +EXPORT_SYMBOL vmlinux 0xfc218caf elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0xfc300db1 __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0xfc354162 simple_transaction_read +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc3b160f mempool_create_node +EXPORT_SYMBOL vmlinux 0xfc4d7ba1 max8925_set_bits +EXPORT_SYMBOL vmlinux 0xfc5161fc pci_read_vpd +EXPORT_SYMBOL vmlinux 0xfc5e2373 xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0xfc7123ba pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0xfca3e6ee input_free_device +EXPORT_SYMBOL vmlinux 0xfca4d4a4 phy_attach +EXPORT_SYMBOL vmlinux 0xfca75480 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0xfcaa04a0 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xfcb77cfd ipmi_free_recv_msg +EXPORT_SYMBOL vmlinux 0xfcb926cd kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xfcc0ba0f blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xfcc2a43c utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0xfcc9960d agp_allocate_memory +EXPORT_SYMBOL vmlinux 0xfcd71cb1 vfs_readv +EXPORT_SYMBOL vmlinux 0xfcda409d security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfcfa03ff fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0xfd3eb2fb dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0xfd4cb877 cookie_check_timestamp +EXPORT_SYMBOL vmlinux 0xfd56453e scsi_free_command +EXPORT_SYMBOL vmlinux 0xfd6293c2 boot_tvec_bases +EXPORT_SYMBOL vmlinux 0xfd923d49 xfrm_init_replay +EXPORT_SYMBOL vmlinux 0xfd99623a ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xfdb0bc6e netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0xfdb6cedc _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0xfdb9b629 ioread32be +EXPORT_SYMBOL vmlinux 0xfdbe0288 pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0xfdd0e28f tty_register_driver +EXPORT_SYMBOL vmlinux 0xfde67cc9 get_fs_type +EXPORT_SYMBOL vmlinux 0xfded48ed enable_kernel_fp +EXPORT_SYMBOL vmlinux 0xfdeed8fe __dev_remove_offload +EXPORT_SYMBOL vmlinux 0xfdfc0b3b fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe198203 fsl_lbc_ctrl_dev +EXPORT_SYMBOL vmlinux 0xfe26fc7c nr_node_ids +EXPORT_SYMBOL vmlinux 0xfe3079f2 agp_generic_insert_memory +EXPORT_SYMBOL vmlinux 0xfe323cbf swiotlb_unmap_sg +EXPORT_SYMBOL vmlinux 0xfe3d2a43 scm_detach_fds +EXPORT_SYMBOL vmlinux 0xfe3f2ac0 scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0xfe4cb4b5 _lv1_storage_write +EXPORT_SYMBOL vmlinux 0xfe4f81ee get_agp_version +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe7c4287 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0xfe7c43fd pcie_get_minimum_link +EXPORT_SYMBOL vmlinux 0xfe883120 lock_rename +EXPORT_SYMBOL vmlinux 0xfe97713e __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0xfe997cd3 netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0xfeb9a964 __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0xfebdf53d blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0xfed221d9 pasemi_dma_alloc_ring +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfeebc7c4 __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0xfeeefe33 sk_alloc +EXPORT_SYMBOL vmlinux 0xfef96e23 __scsi_print_command +EXPORT_SYMBOL vmlinux 0xff069269 kthread_stop +EXPORT_SYMBOL vmlinux 0xff1765c7 rtas_call +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff5145fb eth_change_mtu +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff689fb2 block_commit_write +EXPORT_SYMBOL vmlinux 0xff7559e4 ioport_resource +EXPORT_SYMBOL vmlinux 0xff7a6c6c netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0xff7ab250 dev_uc_init +EXPORT_SYMBOL vmlinux 0xff80fd24 __register_binfmt +EXPORT_SYMBOL vmlinux 0xff86387d write_dirty_buffer +EXPORT_SYMBOL vmlinux 0xff8b924c i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0xff9ca065 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0xffd5a395 default_wake_function +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x063ed168 mark_page_dirty +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x0d8a1ed0 kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x0e3067f3 gfn_to_pfn +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x15ee9618 kvm_put_kvm +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x1cfe78d1 kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x1fa263f7 kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x20de5193 kvm_disable_largepages +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x2107c125 kvmppc_emulate_mmio +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x2396f92b kvm_set_page_dirty +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x257f0794 kvm_vcpu_block +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x26c5c9bd kvm_clear_guest +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x2d607d41 kvmppc_core_prepare_to_enter +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x2d830be3 gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x31b7aea3 kvmppc_handle_store +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x353ecb38 __kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x3cde0114 kvm_unmap_hva +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x3d674d94 kvm_resched +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x3d90089d kvmppc_kvm_pv +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x3fe42c60 kvm_read_guest_page +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x40fec6e0 kvmppc_core_pending_dec +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x41c7a1a1 kvm_write_guest_page +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x437dbabf gfn_to_pfn_prot +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x43b466b0 gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x47a790d1 kvm_get_dirty_log +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x59873bf1 kvmppc_gfn_to_pfn +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x59bce725 gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x5ad94d0d kvmppc_xics_hcall +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x5fbd315c kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x6079c65c kvmppc_sanity_check +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x610fc84d kvm_vcpu_init +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x6139ac14 kvm_vcpu_uninit +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x6320d696 kvmppc_pr_ops +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x65a00bd5 gfn_to_hva +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x669da1fd kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x6d9fb745 gfn_to_pfn_async +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x711986e4 kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x7261e0cc kvmppc_handle_load +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x74dc20e5 kvmppc_core_dequeue_dec +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x7aa64803 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x86a540de gfn_to_memslot +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x89c1550e kvmppc_st +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x8da01274 kvm_get_pfn +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x8e1cd06f kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x8f3e31de kvm_write_guest_cached +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x924d4190 gfn_to_page +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x9ae2b642 kvm_vcpu_cache +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x9bcd1b98 kvmppc_core_queue_program +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0x9cbf3af3 kvmppc_set_msr +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xa33ad319 kvmppc_book3s_queue_irqprio +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xa628790c kvmppc_prepare_to_enter +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xa9aef2e1 gfn_to_hva_memslot +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xab59d373 kvmppc_free_lpid +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xac804629 kvmppc_hv_ops +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xaf88180f kvm_get_kvm +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xb075972a kvmppc_emulate_instruction +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xb6234348 kvm_release_page_dirty +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xc0146eb1 kvmppc_rtas_hcall +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xc70e4b59 kvmppc_claim_lpid +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xcc44961f kvmppc_alloc_lpid +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xcdb54cdc kvm_is_visible_gfn +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xcde8f55e kvm_vcpu_kick +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xd0ccb191 kvm_read_guest_cached +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xd4b84a0b kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xdc601196 kvmppc_ld +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xeb6c31be kvm_init +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xf4da3546 kvmppc_init_lpid +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xf6015966 kvmppc_core_queue_dec +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xf68500f0 kvm_clear_guest_page +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xf6b8c3fb kvm_release_page_clean +EXPORT_SYMBOL_GPL arch/powerpc/kvm/kvm 0xfc5c484f kvm_read_guest +EXPORT_SYMBOL_GPL arch/powerpc/platforms/cell/spufs/spufs 0x2b2cbbe7 spu_save +EXPORT_SYMBOL_GPL arch/powerpc/platforms/cell/spufs/spufs 0x9b68fa4c spufs_context_fops +EXPORT_SYMBOL_GPL arch/powerpc/platforms/cell/spufs/spufs 0xe4f523ed spu_restore +EXPORT_SYMBOL_GPL crypto/af_alg 0x289197b2 af_alg_cmsg_send +EXPORT_SYMBOL_GPL crypto/af_alg 0x3ce498d2 af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0x58716898 af_alg_wait_for_completion +EXPORT_SYMBOL_GPL crypto/af_alg 0x5af19270 af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x785d3deb af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0xabaa62ef af_alg_complete +EXPORT_SYMBOL_GPL crypto/af_alg 0xc2ac15ed af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xc9e5b9a1 af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0xdcdd9c4c af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x06b9b014 async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x25a83527 async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x7ec2281f async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xeb921e15 async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xf2fcfd9a async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x250e3c70 async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x29e84c00 __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x52fa49ee async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x67f5fd11 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x31997259 async_xor_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x9b88d538 async_xor +EXPORT_SYMBOL_GPL crypto/authenc 0x587ef278 crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0x79bad4c7 blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x1ead37c5 cast5_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x27278ca9 __cast5_encrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x4a2a3ca6 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1291971c __cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1e2c961f __cast6_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x78702305 cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x8f04034a __cast6_encrypt +EXPORT_SYMBOL_GPL crypto/cast_common 0x08aa6fb7 cast_s1 +EXPORT_SYMBOL_GPL crypto/cast_common 0x0c5fbf8a cast_s3 +EXPORT_SYMBOL_GPL crypto/cast_common 0xe39dd4b4 cast_s2 +EXPORT_SYMBOL_GPL crypto/cast_common 0xee83a4f3 cast_s4 +EXPORT_SYMBOL_GPL crypto/cryptd 0x0813218c cryptd_alloc_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x0916f144 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x32c97dc8 cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x6389aa24 cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x7fc317e7 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x82ec1dba cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xa4126d2d cryptd_ablkcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xe62036f4 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0xf2746b53 cryptd_free_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0xf34e3dc2 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/des_generic 0xcfd9a2c0 des_ekey +EXPORT_SYMBOL_GPL crypto/lrw 0x3864eb66 lrw_free_table +EXPORT_SYMBOL_GPL crypto/lrw 0x894e3368 lrw_crypt +EXPORT_SYMBOL_GPL crypto/lrw 0xcd074900 lrw_init_table +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x5ddb33e9 __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x77b39cb4 __serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x8a1a99ad __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xd18895df serpent_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0x03b19c1d twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0x6c3229bb __twofish_setkey +EXPORT_SYMBOL_GPL crypto/xts 0xbefae450 xts_crypt +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x3ee90f3c ahci_platform_suspend +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x6ddcd644 ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x6fcacf63 ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x7d1d3360 ahci_platform_suspend_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x8a8877d9 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x8e4edb13 ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x9af70384 ahci_platform_resume +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xc81c4534 ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xc8b1caa0 ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xcbaf389a ahci_platform_resume_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xfee52198 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x0ad44d80 ahci_shost_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x13222e70 ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x1572f7f5 ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x1701e903 ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x1efd27ff ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x451f0ace ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x4d40bb6c ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x557a8d27 ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5eacba1f ahci_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6720f5bc ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x694f923e ahci_thread_fn +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6e05c4e7 ahci_hw_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x790d260a ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x812a7481 ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8339ac48 ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8ba854ac ahci_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xb97991e5 ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xbf844ccb ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xc09a4f61 ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xca54b096 ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xccd0a3dc ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xe1d01327 ahci_sdev_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xfd2636f2 ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0xe7407a6c __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/ata/pata_sis 0x21e7096d sis_info133_for_sata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x14102f23 ks0108_displaystate +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x48a70518 ks0108_writedata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x4f506333 ks0108_startline +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x6edae968 ks0108_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xbf4774db ks0108_writecontrol +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xedde6df2 ks0108_page +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xfee8ef7b ks0108_address +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x040f9c9d bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x04818a5a bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x09311496 bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x13fad6aa bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2f6811d3 bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2fa1b407 bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x33000312 bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x46fab4d5 bcma_find_core +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x4b63e1c1 bcma_core_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x83304e9c __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x89b3e6a2 bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8a2bec5a bcma_core_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xabc8d4f4 bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xabd80aaf bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xaccf875e bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xacd475ee bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb6c5bd04 bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xcb61a7f7 bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd0c7ad1f bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd2f308ac bcma_core_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xdfe38082 bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf0c16f95 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf80c6f93 bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x0f72f52b btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x2ba41152 btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x4d3bc382 btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x670e85d6 btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x9e04c28a btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x9f9d890d btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xbe22f5ba btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xd3a84f1d btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xda6ded7e btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xebcf1950 btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/crypto/nx/nx-compress 0x1d2d1f5d nx842_compress +EXPORT_SYMBOL_GPL drivers/crypto/nx/nx-compress 0x4df68ceb nx842_get_workmem_size_aligned +EXPORT_SYMBOL_GPL drivers/crypto/nx/nx-compress 0x56a12651 nx842_decompress +EXPORT_SYMBOL_GPL drivers/crypto/nx/nx-compress 0xca181ed8 nx842_get_workmem_size +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x39a7d6f2 dw_dma_suspend +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x7fd3c9b2 dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x8d185082 dw_dma_resume +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xa53b641a dw_dma_shutdown +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xa7d63725 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0354d380 edac_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x03b8c835 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x06e90e1c edac_pci_handle_npe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x28c86b5c edac_device_handle_ue +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x3d0a55f5 edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x45a49782 edac_mc_add_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x50ffb960 edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x5719d94e edac_pci_reset_delay_period +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x5c7e1e8e edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x69259f22 edac_mem_types +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x83a68d37 edac_device_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x88b12d7d edac_pci_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x97d367e3 edac_mc_free +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x98f737d8 edac_pci_handle_pe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xa1f95da6 edac_device_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xa96162ef edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xab375acf edac_pci_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xb5b7c360 find_mci_by_dev +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc0e47652 edac_mc_del_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc4a66199 edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xdc10659b edac_mc_alloc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xddf19d9a edac_device_handle_ce +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xe2f4bf32 edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xf8138e82 edac_device_free_ctl_info +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xf4ade51f fw_card_release +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0xad98935a bgpio_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0xc1623cc9 bgpio_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x1efd4dee __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0xc50768a2 __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x26ddade0 drm_vm_open_locked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xb11b69de drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xf47d4b3d drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x6781c6a7 ttm_dma_unpopulate +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x6adf436b ttm_prime_fd_to_handle +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xb9822133 ttm_dma_page_alloc_debugfs +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xce36343e ttm_prime_handle_to_fd +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xfc2663c6 ttm_dma_populate +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x15a6908f hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x168525a6 hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1e50de89 hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2006d78f hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2561f34a hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3c063029 hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3d1aa2cf hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x40afd818 hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4328827a hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4906a967 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x542f6c3e hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5d5de9b0 hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5f17c872 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x61822a27 hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0x83b170f1 hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x87e8c50e hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8dde92c0 hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x92ea61b9 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa2ddad95 hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa7a8a297 hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa7d669ca hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xad69edca hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xafb62fd4 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb2389899 hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb46da16b hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb4b9c17f hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb546c8d9 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbcded07d hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd6685cc2 hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe1c5c472 hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe8458a6b hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe893b63d hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xea983775 hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf3144743 hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfc980e9a hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x2f622ea1 roccat_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x37f0c82c roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x8c4181ec roccat_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x0824561c roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x34e8a2fa roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xa340c630 roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xdc100962 roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xdccc68bd roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xfbb44c0c roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x6b50d755 sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x81dc2346 sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xb9c4b015 sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xb9ec6eb9 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xba862a3f sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xca4322b9 sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xdca7b8b3 sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xfd3f88b7 sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x01fd453e usbhid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0xf2d5c230 hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x151aaa9c hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x18a839e4 hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2e1fb48b hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5a7f13e2 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5ee6e31a hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5f7f4992 hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x8665d792 hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x98e1a671 hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xa69a8424 hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xaac8c984 hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xadb3df2d hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xd06e96c8 hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xf51ae5b4 hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x94689a10 adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xce8769bc adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xee8e5f3b adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x18e77f01 pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x2c1b23aa pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x2f9c8650 pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x38bf3b60 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x4326ffa1 pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x45c592e9 pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x5f0af839 pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x80a99e83 pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x812271fb pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xb1cf4987 pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xcd3ca600 pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xd8fac13c pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x04fb2c1f i2c_dw_init +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x2f1157ba i2c_dw_func +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x31327e3d i2c_dw_disable_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x3fa3fa81 i2c_dw_disable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5bb1170b i2c_dw_isr +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xb194816e i2c_dw_read_comp_param +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xbfa878d1 i2c_dw_enable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xe8e08be7 i2c_dw_is_enabled +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xf505e9e1 i2c_dw_clear_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xfb79c053 i2c_dw_xfer +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x5dffd250 i2c_add_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x65a23cbd i2c_del_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x91064396 i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xfd2407bd i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x12426dc5 ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x1fb8d635 ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x3a5320c5 ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x7f4525a6 ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x9f6e8f63 ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xbf64206a ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xd0b0174a ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xe5a70df7 ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xe95314ef ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x0d7606ce adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x1a868e76 adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x3ffc001a adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x4baa2a88 adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x63378cbc adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x6973baf7 adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x87cb7fee adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x939af377 adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xa372f5a8 adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xa7bb3e9c adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xc31e8a2c adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xf941f8bb adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1790cd33 iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x191fbc91 devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1fee2576 iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x205699c5 iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x267c0508 iio_channel_release_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x285f8841 iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x29485e98 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2a1fab3c iio_channel_stop_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3767cce7 iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3b60cbcd iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4ddea0c2 iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x58ab9202 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6312e678 iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x68bcefe5 devm_iio_device_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8c323d78 iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8d67823b iio_update_demux +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x929e3658 iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xaad34c1c iio_scan_mask_query +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb635097a iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xc51b9085 devm_iio_trigger_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd3a38e08 iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd6196b0a iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xda5e53e2 iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xdb6f9a1b iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xdcdd43b7 iio_scan_mask_set +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe0cff615 devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe19ccb47 iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe472f4b4 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf043af70 iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf0b8e265 iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf7168c03 iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf8249353 iio_buffer_get +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0xfbc8aa1e input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0x856a8a94 matrix_keypad_parse_of_params +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xa711650e adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x8b88d538 cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xc2a5781b cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xf31dbf0f cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x0b2777a9 cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x4567774e cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x7582272e cyttsp_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0xa628cc67 cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0xb0afee57 cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x0cfebd1f wm97xx_reg_read +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x11f46db4 wm97xx_config_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x3c0eee91 wm97xx_set_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x6aa38be0 wm9705_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x771d96ba wm9712_codec +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x78607cee wm97xx_read_aux_adc +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x80a8c8ab wm97xx_unregister_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x97a07ca9 wm97xx_register_mach_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x99cc8c26 wm97xx_get_gpio +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0x9e7be447 wm97xx_reg_write +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xb4f38801 wm97xx_set_suspend_mode +EXPORT_SYMBOL_GPL drivers/input/touchscreen/wm97xx-ts 0xbbb79624 wm9713_codec +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x2eff1f48 ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x58c318fd ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x5c178478 ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x83ca6c38 ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xab1342b8 ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xac66a7d5 ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xcde41ccb ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xd820a6ec ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xe7016874 ipack_driver_register +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0x23359aff unregister_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0xce1414b2 register_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x060d2e4e gigaset_start +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x0bb5789a gigaset_shutdown +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x0cd43a1f gigaset_stop +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x11955744 gigaset_add_event +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x12785d85 gigaset_if_receive +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x2c7793a3 gigaset_handle_modem_response +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x31d5c9f7 gigaset_skb_rcvd +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x43a09905 gigaset_initdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x454aa44f gigaset_debuglevel +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x4626c051 gigaset_initcs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x50530b55 gigaset_m10x_input +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x5e74c0d8 gigaset_freedriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x65622355 gigaset_freecs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x88a9068d gigaset_fill_inbuf +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8d03cee0 gigaset_isdn_rcv_err +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x8d6b42cf gigaset_skb_sent +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xa3151853 gigaset_dbg_buffer +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xafac41af gigaset_m10x_send_skb +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xe9c7e8c4 gigaset_blockdriver +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x2919697e lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x29257969 lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x2c38b385 lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x6c23eeba lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x7600771c lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x86b4e798 lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xc82ffeab lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xcaa12b8e lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xd7799b9b lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xf23ea251 lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xf847b02b lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x749e05f2 ledtrig_flash_ctrl +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x7903e46e ledtrig_torch_ctrl +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x0a0527be wf_register_client +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x0ca4b671 wf_get_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x0e548984 wf_register_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x5342fce3 wf_put_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x57c1d4d0 wf_find_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x594c9208 wf_get_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x66991169 wf_find_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x75147afa wf_set_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0x94765fac wf_critical_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xa2f19a49 wf_is_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xbcace2a5 wf_unregister_client +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xd71fabfd wf_unregister_control +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xd8bf6366 wf_register_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xeced42e7 wf_unregister_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xed82a14f wf_clear_overtemp +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_core 0xf3af6db1 wf_put_sensor +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_pid 0x9808f147 wf_pid_run +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_pid 0xb8ed5b2c wf_cpu_pid_init +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_pid 0xcd9a18ef wf_pid_init +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_pid 0xceda69f1 wf_cpu_pid_run +EXPORT_SYMBOL_GPL drivers/macintosh/windfarm_smu_sat 0xe05851d5 smu_sat_get_sdb_partition +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x0ec17d44 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x26062738 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x40c27b88 __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x4c49fc16 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x51a15737 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x616b6217 __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6907ac0d __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7be42a1c __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7e532a71 __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x8a4afa11 __tracepoint_bcache_alloc_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x914361f4 __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x9272fb0f __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x938cc2b2 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa649dd21 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb157059f __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb317649e __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb493772a __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb834c124 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbb1fc0a4 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbc4fcb1e __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc1474d91 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc379085a __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc5aed8ad __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc7eda602 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xce055cbe __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe20fe821 __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe24daf87 __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe2ed0930 __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xea2303e0 __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xef1156ee __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfc131205 __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x0c4f408d dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x490f10e2 dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x5b7ec705 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x68d5d163 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x72d371fc dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb6d5c65d dm_deferred_set_add_work +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb70b342a dm_bio_prison_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xc3e5fc84 dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xebd06eaf dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xf8f4a95e dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x164c6684 dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6aba7f5e dm_bufio_get_block_number +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9310ba06 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9c256008 dm_bufio_get_device_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa1d2413a dm_bufio_read +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa448e19f dm_bufio_prefetch +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa82b2066 dm_bufio_write_dirty_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xafbda3f3 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc9a3422d dm_bufio_write_dirty_buffers_async +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xcbb1bae2 dm_bufio_get +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd4bddf5c dm_bufio_issue_flush +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe6024e59 dm_bufio_release +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xebcc64a4 dm_bufio_get_block_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xeca7949e dm_bufio_client_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x01d1104d dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x2c134a29 dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x4ecf91dc dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x6e14c5bf dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xdfcc5699 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xe95da5a0 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xf969deff dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x5d07e51d dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0xdc33a714 dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x38efaf5a dm_region_hash_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3a18389a dm_rh_update_states +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x4430764e dm_rh_region_to_sector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x45ab972a dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x61d9b58e dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x6a0fa937 dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x72cfe447 dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7774620f dm_rh_stop_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7d053fc5 dm_rh_start_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x9ace645d dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa53387c7 dm_rh_flush +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa68e1f06 dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa83588eb dm_rh_recovery_end +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xe5fc6fe8 dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xf1851c5f dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfad9d53a dm_rh_get_region_size +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfc62ef4e dm_rh_get_region_key +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfd93482e dm_rh_recovery_in_flight +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0054f69d dm_tm_pre_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x01445176 dm_btree_find_highest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x17c36f29 dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1cac81ac dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2025e954 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2c112836 dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f40da68 dm_bm_set_read_write +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f74609d dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x32b5f546 dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x38c75c44 dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3ad0f55b dm_bm_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x40f7bd91 dm_tm_inc +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x42dbdfc3 dm_tm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x49b35849 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x52ce06c0 dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x55b4bd4d dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5e6aea80 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x62c1b9ee dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x68fae9d2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x72289260 dm_block_manager_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7ade1071 dm_tm_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7b047bd9 dm_tm_create_non_blocking_clone +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x80c89b3d dm_tm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x827a42f4 dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x832bf228 dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x858c8d94 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89f1e1cc dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x966a8838 dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9e798e22 dm_bm_set_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9f624559 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa0bbbb49 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa13861b4 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa87c5b4d dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaee02382 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xafeda29f dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb7bad799 dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb9a6ecf8 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbd50ebbb dm_btree_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xca40abd5 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd041d62b dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd29923fb dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe44b4b9b dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xed1e1f96 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf375d009 dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf475af48 dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf5455120 dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/raid1 0x1a28a2b2 md_raid1_congested +EXPORT_SYMBOL_GPL drivers/md/raid10 0xf1db1665 md_raid10_congested +EXPORT_SYMBOL_GPL drivers/md/raid456 0x4d400532 md_raid5_congested +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x0330bed7 saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x11ec60b3 saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x1e4a8ebd saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x37dd0843 saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x4705744a saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x4c443ca9 saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x56bfd264 saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x5f7f6665 saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xb94e5dd1 saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xcda35697 saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x27b48c80 saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x2a608b0b saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x2c46ce38 saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x2d607427 saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x31b80e98 saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xbd572c62 saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xc7232e58 saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x1e39c1d7 smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x1e97f99b smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x26609264 smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x26a147ee smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x37d91069 smsendian_handle_tx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x4eadbb0e smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x51922404 smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x64d067aa sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x70bcd6fa smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7242aa7d smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7c576277 smsendian_handle_message_header +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x88fe94df smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x8d6f9712 sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x99a81ab3 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9c2225ed smscore_translate_msg +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa582e6a3 sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xb84a0d7d smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbc1caa52 smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbfb27e39 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xca2b311f sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xf3f32059 sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0xa72c826a cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0x6fe05c13 tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0x2b9c3b81 cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x09379af0 mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x10a8c753 mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x131b9a9f mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1ec41f46 mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x3e59b712 mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x56338027 mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x61f5bcd7 mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x633e8db4 mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x98ba10a6 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xa6456e1e mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xab897947 mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb0a4c650 mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xbda0ac13 mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xce874839 mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xd3602a03 mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xd4ab4856 mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xda89db3b mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x26008961 saa7134_s_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x8105a0d9 saa7134_queryctrl +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xc40928f2 saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xe656d227 saa7134_s_std_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xf27e51bc saa7134_g_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x28649b5d ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x4bebbd1f ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x521283ec ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x615a69b3 ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x71a4cca0 ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x84ce4e0a ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xc66b35d1 ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x84d6819a radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0xac5b87aa radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x1432c132 rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x32619c43 ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x3b50aaaa ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x3d5bebce rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x41650b02 rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x553efb91 rc_core_debug +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x57d51b6c rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6343ed7c rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x80722db8 rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x86690ca5 rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x96b5b525 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xba9e2e2b ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xbf937df3 rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xc69a81ee ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xcae96b55 rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd405fd87 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd9351d1d ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd9e42f7d rc_close +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xdba1be3a rc_open +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xffe85f57 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0xbb887d61 mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0x010e70ab microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0x9da7fc22 mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0xf864d55a r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0x1863a24a tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0x1ad38432 tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x8c6c1b89 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x9f922d7f tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x39b7a64c tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x1a42470d tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x9ffc19ea tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0xc27e2c64 tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0xf9e99a04 tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0x10a46786 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x0b3f161e cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x0fa91d20 cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x29575c32 cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x30129840 cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x37da4aa5 cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x3de1e4af is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4032fba9 cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x40b56a4e cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x456d0afe cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x49802fa9 cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x5168946d cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x524a2e6d cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x65c95cf9 cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x65e93229 cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x673a4be3 cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x748d0af6 cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x84b8d54a cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x87ce9340 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf8572664 cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0x0c4ca86a mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0x4267f541 mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x49462229 em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x49deae65 em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x66f0b3f8 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x76ebcab0 em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x8125c287 em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xa5164706 em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xafad141b em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xb1ddb0f0 em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xcfeb5a0a em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd82a9a19 em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xe2995c4e em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xe7ca9177 em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xef0a06a2 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf613eac4 em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x3bd28a77 tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xa6b6d93a tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xbcaf9c22 tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xd55a95a8 tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x01c483a9 v4l2_get_timestamp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x52a4a30b v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x68de1ffc v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x813f3de4 v4l2_find_nearest_format +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xb6a6ab56 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xcefc1001 v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xd64f0316 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xfcf9a802 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x08982d59 v4l2_match_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x221d2fbc v4l2_enum_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x36e8756a v4l2_find_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x4103badb v4l2_print_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x53105839 v4l2_detect_cvt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6976cfe0 v4l2_valid_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6f344bb9 v4l2_calc_aspect_ratio +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x7eaf8e7a v4l2_detect_gtf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xb0891da2 v4l2_dv_timings_presets +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x31c52b32 v4l2_int_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x56666160 v4l2_int_ioctl_0 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x84f75e40 v4l2_int_ioctl_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xa5228b24 v4l2_int_device_try_attach_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xdc741169 v4l2_int_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x090b66f6 v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0dba8a64 v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x17eb0eee v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1df1d407 v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x1ee1d135 v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x38b5e2f5 v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x44068a41 v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x46e687b0 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5f3c84a6 v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x68de09ac v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x6b4407b0 v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x71a926c4 v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x8e48e650 v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb947e370 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xcef564d2 v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x5960d2aa videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x5aecc310 videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x657c6bf8 videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x681335ba videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6e92964c videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7615492f videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x77ff7c59 __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7e35c60b videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7f926428 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x8a3fd48e videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x930d76f2 videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9391565e videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x96feae86 videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x98262c0b videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x98351047 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x9f7685f6 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb1191bad videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb49f2553 videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb81f3f36 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc02b3310 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc24ace25 videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe763a91d videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf2d92c22 videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf5799cff videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x1871dcf1 videobuf_queue_dma_contig_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x1d9c9361 videobuf_dma_contig_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x631646e8 videobuf_to_dma_contig +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x072fd322 videobuf_dma_init_user +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x174dd231 videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x19e017ac videobuf_dma_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x553a86d0 videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x692534e3 videobuf_dma_init_overlay +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xa413cdfe videobuf_dma_init_kernel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xa61cc15b videobuf_dma_map +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xcd319553 videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xcd378f76 videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xee67294a videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0xc0751e75 videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0xe342831d videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0xf3abc7e1 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x09156565 vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x0985366f vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x1787f51a vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x1eb7f6e2 vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x24b833df vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2d928b81 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x463ed114 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x4c061070 vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x5a8c3252 vb2_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x5afbb972 vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x65798924 vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x69cb4003 vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x7120040b vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x7eda701b vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x8bd731f5 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x93f6f800 vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x95ec1b58 vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa0b6c0de vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa27d0a8c vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa517ddee vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xaf8c6947 vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb1ebf0f8 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb42be134 vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb9189df3 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xba5b6e4a vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xbfcb56e3 vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xc5ef63f4 vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xc60064f6 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xcaaeb577 vb2_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xcd7c7b21 vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd2cbfeff vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xe674d97b vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xeba3163f vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xf5dfea57 vb2_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0x371e4337 vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0x49f56d0c vb2_dma_contig_init_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xe57f0426 vb2_dma_contig_cleanup_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-sg 0x261484f7 vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x89d4ffb2 vb2_get_contig_userptr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x8d6cfe26 vb2_put_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x9d00c903 vb2_get_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0xf28c9430 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-vmalloc 0x5a220906 vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x178ed324 v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1b253f16 v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2b4ef58b v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x325309c5 v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x331d13b7 v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x431edd8c v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x46ded639 v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4fe5d747 v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5028baf8 v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6cf90ce1 v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7217959a v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7938a1f4 v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8b71da6a v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x918b0c92 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x97c93fd9 v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa53e29a2 v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb46234d8 v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb7757422 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb96b21d6 v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc30c18e5 v4l2_compat_ioctl32 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc7b1082b v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd8c2cea3 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xeb0a58ee v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xff13df32 v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x162d3445 i2o_dma_map_sg +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x30716efa i2o_pool_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x52641d53 i2o_pool_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x7f5d136a i2o_dma_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x834da3ac i2o_sg_tablesize +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x8baad23f i2o_dma_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x911f4e92 i2o_dma_map_single +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xb8ada7fd i2o_dma_realloc +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x577a26d7 pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x9f28dd12 pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xbc20742d pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x055a8801 kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x1091a765 kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x1405200f kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x1b6fff83 kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x6a3bbd2c kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xcb5f8d32 kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xdbded0d2 kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xf99a4d91 kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x3030c663 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x698a2249 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x90adc113 lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x09e0c450 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x5e7f54e1 lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x69719119 lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x69849bd1 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x72385bc9 lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xa1ccb03b lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xae94af13 lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x24cf7580 mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x823ca13b mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xa0db17d0 mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xa1aec362 mc13xxx_common_cleanup +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xc286ea1b mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xd0891f73 mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x2b70d126 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x3688c44a pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x3f4e3ba0 pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x7fb8cb06 pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x88b4b9fa pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x95e84694 pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xaa28b5cb pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xaf05b810 pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xb3fee768 pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xcca7b2d8 pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xfd89e7fc pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xc4ec8e96 pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xc7833ea3 pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x03d2c07d pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x1ce483c1 pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xb19ad4ff pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xc2a0957c pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xd6a916ab pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x01a33234 retu_write +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x4fca3918 retu_read +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x033101c5 rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x06d7c387 rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x340d0cd2 rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x3863e9f3 rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x4980a55d rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x590b72f6 rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x71ac3c78 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x7a8c0683 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x7b8f7227 rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x83c16a69 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x891251ab rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x91c9872a rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x94f3df8a rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xa4ebcfe9 rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xa861ea80 rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xb40cfbc4 rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xb42bd89a rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xe4b74d60 rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xe6c54ec4 rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xe9e62c77 rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xfb9161fc rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x046aacec si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x15d6ce30 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x1aa56061 si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2032bc37 si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x23442dd8 si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x23b7de37 si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2bb2d818 si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2ff9e327 si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x53032857 si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x69acbffe si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x704eaa5e si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x72f3f6df si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x7d75eee8 si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8a191230 si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9036d7db si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9220c110 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9387b85d si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9cb9cb64 si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa862db33 si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xaa16f5c6 si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xac288469 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb6f4af7a si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb883fde5 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb950dbac si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xba5c67bc si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc1b948b4 si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc508edb0 si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xcb6a21bf si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xcf981d2b si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd3a371cb si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xeaa41812 si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf2ff27dd si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf42b8596 si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xfb4d261b devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x2d621880 sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x479f5920 sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x69ee6c35 sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xccd57e0c sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xdef32a06 sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x3970242f tps65217_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x7df63411 tps65217_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xb488da4f tps65217_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xbc40bc7f tps65217_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/twl4030-madc 0x4362dc66 twl4030_get_madc_conversion +EXPORT_SYMBOL_GPL drivers/mfd/twl4030-madc 0x9effbf1a twl4030_madc_conversion +EXPORT_SYMBOL_GPL drivers/mfd/ucb1400_core 0x81030454 ucb1400_adc_read +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x55d2446c cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x765cf7a6 cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xd27ff0ec cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xe521cadf cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x27cb133b eeprom_93cx6_multiread +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x63d2ff63 eeprom_93cx6_wren +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x822222db eeprom_93cx6_write +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x98bb5a22 eeprom_93cx6_read +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x3ddb6db8 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x42200d1b enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x436d794f enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x4e5b1d6e enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xa13f724d enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xb1d947c3 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xb9b6c601 enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x3243b883 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x47945b9a lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x62f4c09b lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x733fbf47 lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x90c61bd4 lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xb3673e09 lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xc357f673 lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xd50b77e5 lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x42b7cffd st_register +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0xb2aed73d st_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x0cf301cd sdhci_disable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x1f2daf65 sdhci_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x4b2da318 sdhci_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x85c2d513 sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9bb8b35a sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9d4182cd sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa8a77c06 sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xb20feadf sdhci_enable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xbf0f54e9 sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xf6f9a3ed sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xf713c96a sdhci_send_command +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x26b3356a sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x2de35b72 sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x463590e2 sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x6433992e sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x9cbfb7fa sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xb277ad62 sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xdcac777d sdhci_get_of_property +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x144d2f72 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xd67a2f0c cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xe9530ae4 cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x07d1549c cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x8a7ad0ca cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xf4289b1a cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x6700fe97 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x25f348bf cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x4aa433d5 cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x4c414527 cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0081d6bc mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0b3ff4d9 mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0d77dece put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0e3e49b2 kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x10b13de2 unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x177c4db4 mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1ce8d63c register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x27e17df1 mtd_is_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2e86a783 mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x472237f0 __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4f3f9b13 mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5ade4290 mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5ce17193 mount_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5cfd9e9e mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5e0e7651 mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6a96475a mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7660288c mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x771683e7 mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8412c782 mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9389533d mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9932c0fe mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa42c63e6 __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa6c457ae mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb0a0aa5f mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb6737b01 mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbc9f3cca mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc50e3027 mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc6f3c067 mtd_erase_callback +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc9f4db80 deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xce107301 mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd8901161 get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd8e5d23d get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xdc52fff7 mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xde1f98eb mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe2222364 mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe37d809b mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe458de42 mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe584f0dd mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf5bee45e register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfa16c7f3 __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfd5e8743 mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x02b9d8cd register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x64c5c075 add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x6b2d939d deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xdf3d7836 del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xe4161016 mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0x55c57ddb nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0x6e454cfa nand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/sm_common 0x4e37b769 sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0xc7f3a2b3 onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0xe516bf5e onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x058da84e ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x0acefbdf ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x1d1c17af ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x25f534ba ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x26eda455 ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x354bd47b ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x403e5a55 ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x4611ea18 ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5cfdd22d ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x680489f0 ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x9d9759c5 ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x9e407afd ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc80fe949 ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xee172010 ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x225de464 c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x90fb9e32 register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xaa0add52 alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xae428b97 unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xba9881e7 c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xfcb2c2c8 free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x0e477de9 alloc_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x1f175db7 devm_can_led_init +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x222c295a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2e7afa00 alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x39da7b7e can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x7028a125 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x72b55cbc unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x74c03d7d register_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x795c79f9 open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x7c687e1b safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xaf88c5c5 free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb1c154fb can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb346573b can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb749119b can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb77376f9 can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xc3d6aac6 can_led_event +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xc4c75821 close_candev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x077c4ab3 free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x48b55de7 register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x9fd72300 unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xc6394aa7 alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x083b293e register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x4641b453 alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x553f7b60 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xaeb9c74c unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x58bc2cc3 macb_get_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x9a1ea373 macb_set_rx_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xa0256b22 macb_mii_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xb2b44029 macb_set_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xc65d7b54 macb_get_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xd275ec2f macb_ethtool_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xf1208cbf macb_ioctl +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x035d8444 mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x05becbb1 mlx4_fmr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x09c51d8f mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0ad7631b mlx4_fmr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0ae8fe0e mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0e59092d mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0fc90ce3 __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x108bafa2 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x11aa5171 mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x13c53bbb mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x18bacbcd mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x18c715e7 mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x21c95879 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x21ed3168 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x29425f37 __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2a503bf1 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2dea6831 mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x32e8133a mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3499cd00 mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x35d6de8c mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3964bd92 mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3e7493f5 mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x415c02ce mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x41d1993e mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x433b9357 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x43ce4752 mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4516c499 mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x453fc8c4 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x461d1447 mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4b7847cc mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x549014f4 mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x558c247e mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x590a673d mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5ad29fec mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5b122ee4 mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5c0158e4 mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5d0283ac mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5e918b3e mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x62df1a06 mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x65cf888c mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x67926123 mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6ac01a07 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6b403a02 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6c550cc7 mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6d06e6b6 mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6e82012b mlx4_map_phys_fmr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6f10194b mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6fd9ce0d mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x717732fc mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x72d14732 mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x76f8da14 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x770c8e9b mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x781350de mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7c6b05b1 mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7d72b368 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7fe15c86 mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x86a31ef7 mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8be27948 mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8c60e28b mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8cdf23cb mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8e011631 mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8e43ee8a mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x917a15bc mlx4_fmr_unmap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9a0d13a7 mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9b7aad63 mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9dfee2cb mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa005cec5 mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa737cf87 mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa8edeb12 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xada060c8 mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xae8246a0 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaf3db1a9 mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb004e5a6 mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb555022d mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc6fbef5b mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc87ca9cd mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc97e4c2f mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd2dc1fda mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd340a5e6 __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd8240dc5 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdb8f44d0 mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdd45504c mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdf85e311 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe11a7ae0 mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe1358769 mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe3792717 mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe75df3aa mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe8a51b21 mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe96f888d mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeb9f2b9f mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xec9c852a __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf2ca92e8 mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf512b251 mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf545742a mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf600c505 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf808af54 mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf846003e mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfc5cb56e mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfd2b822e mlx4_fmr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfe9f0eba mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1c1373b9 mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x42a9579a mlx5_core_destroy_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x435af501 mlx5_core_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5a6db4c2 mlx5_core_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x627085cc mlx5_create_map_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x681c7a16 mlx5_core_mad_ifc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6a83a7d7 mlx5_core_create_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x761ec989 mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7c2f8c78 mlx5_core_xrcd_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x97517874 mlx5_core_eq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb1c841d2 mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc22c5b21 mlx5_destroy_unmap_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc6e98b6c mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd6c4ef56 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xee22012c mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xefe1f757 mlx5_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf0f4cc8f mlx5_core_qp_query +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x36c91972 macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x4d697fa4 macvlan_start_xmit +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xb62a83c5 macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xbb20b56d macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xbc11d818 macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvtap 0xec709264 macvtap_get_socket +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x53cf6a9e usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x5a6b49c0 usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xb65c5617 usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xd72d060c usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x04a6a3da cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x1d1e4bdd cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x4b56451d cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x4c4d74aa cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x50ec6172 cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xaea5db6a cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xafd84245 cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xb28fa5d0 cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x776e2c48 rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xaf317fee rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xb6c53e4d rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xbceec29c generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xbed5407c rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xe2650385 rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x21d93044 usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x24ce5e5b usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x25423f7f usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x299140e8 usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x2a703fb9 usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x2d576671 usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x367ec7f6 usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x39c7e6a8 usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3f0d9628 usbnet_set_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4b1af74e usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x5006dd90 usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x506eb689 usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x564f7b33 usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x65716f0e usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6aa4fd50 usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x79d11c0d usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8ba8b93d usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8d2d7a36 usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x92aed421 usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9a6cd5f4 usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb050e1f6 usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xbc54625e usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xc88fc8ae usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xcd574898 usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xd00ed557 usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xd2d34d41 usbnet_get_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xdbabc575 usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xeb1ca50a usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf0482131 usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf5a8cf86 usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf7c61358 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xfe5e896a usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x26490702 vxlan_sock_add +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x6db5156f vxlan_src_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xabf50ea3 vxlan_xmit_skb +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xb7cce750 vxlan_sock_release +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xfbc296cd vxlan_get_rx_port +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x00cd28d4 i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x03710886 i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x2ae97fb5 i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x3e149357 i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x45d3401e i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x4ee1d7e6 i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x550e3432 i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x618543b9 i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x7a565495 i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x7d0f8468 i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x7e5eab84 i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x814efe15 i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x861a582d i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x9fb2e4be i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xf93e854c i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xfadf2342 i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x3b75c32b cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x436f4c5e cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x4c88cdfe cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x907ed0f3 cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ipw2x00/libipw 0xf800b300 libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x2739c164 il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x52f4db0c il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x5e541850 il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xd9a80031 il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0xdf786a99 _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x002d7782 iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x0372f789 iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x03fb6714 __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x0975eecc __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x0d556623 iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1291ef1b iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1ac36ff0 iwl_notification_wait_notify +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x265342a5 iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x27c9dbb1 iwl_nvm_check_version +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x2d5abd3f iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x2e1a77f6 __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x3d548dab iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5d0a212e iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x71f0b7b9 iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x75ee9ad7 iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8678feff __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8c5d5ab3 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8d03cda9 iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x98cd8eb8 iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xaa6d08eb iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xb7c2b506 iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xb7d4b1f1 iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xbdf34765 iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc67c31ed iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd1a34063 iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xe15842dd __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xe86a5a9a iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xf0206b83 iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x060044d1 lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x1b3f05c2 lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x1be94073 lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x3c9b93fe lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x3df56e3a lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x404fa1c7 lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x43bc71b0 lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x4a44845e lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x512bd73c lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x7ee58cde lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x96230d7a lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x98305767 lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xa8addd46 lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xc6406c41 lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xdbaf56a4 lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xee76ee0a __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x0f3da739 lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x199cf850 lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x2dca909c __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x34780574 lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x65fd4d54 lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xa87bad98 lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xc85e6899 lbtf_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xc9f7b533 lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xfb4fbb4e lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0x3271dbb6 if_usb_reset_device +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0x71f3a32e if_usb_prog_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x1964efd7 mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x23fe686c mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x38140def mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x55a3673b mwifiex_deauthenticate +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x580eff00 mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x5be3bab1 mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x76322106 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x7f7a6aa0 mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x95e6cc02 mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xa614620f mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xa6a59d73 mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xceb9650d mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xdfdef84b mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xee4e635f mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x33f5c2f5 p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x40137f12 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x520fe3a7 p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x5429879c p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x67632fc6 p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x87fa6934 p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x8a0cfba5 p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x9a34c950 p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xa4d207a7 p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x07e82bb8 rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x18e554c1 rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1ded7ecc rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x283f1604 rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x289c21c7 rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3134d042 rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x37597d5a rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x41124281 rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x58dae289 rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x59ff0730 rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x5ddb0757 rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x629dfee9 rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x663ce399 rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x73659c4d rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x746c6838 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7e414e9d rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x88dd4bfa rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8e576566 rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x8fd66af7 rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x9331fbfb rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x93f762ee rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x963e376c rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x9730a109 rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x9d0769b8 rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x9dc86def rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xad12187e rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xcceb9d7e rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd7546693 rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd8c73166 rt2800_get_tkip_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xdad1bf28 rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe9929bde rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xec7d6ced rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xeec1d3ac rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf0cce4d8 rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xf8b886ec rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xfc467f22 rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xfce961e1 rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xfe3070e3 rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x02f875d9 rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x092809f0 rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0c0d29cb rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x190af9eb rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x293bf99f rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x2b20789c rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x47df6000 rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x566f5002 rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x577d08d1 rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5d71b43a rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x74407f8f rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x7d7bcf5b rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xdd3ab7ed rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x07438808 rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x19b589ec rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1b85a967 rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2011f289 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x21f4432c rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x24f49173 rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x261d7881 rt2x00mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x2b330713 rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3d46024d rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x401fd825 rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x40fc6ff6 rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x43af8db9 rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4dab6040 rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4e4b021c rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4f2dc302 rt2x00mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x52f60dd3 rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5523ac2b rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5a872087 rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x5c78c103 rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6094a6a8 rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x63c65abd rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x6e48e3cc rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x759bc347 rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x776eb21a rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x803efe2e rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x80de91dc rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x81d022e6 rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8a5c5da2 rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x8cf087ff rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x919d1757 rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x97710c50 rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9a670325 rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x9d979b90 rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa4490c7e rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xaae2be6e rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb81dc5c0 rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xbaafed40 rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xbf8faaf0 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xbff3eb04 rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd7704136 rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe27c0a83 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xee8b3103 rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf258ec5a rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf343ee64 rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf3aacf18 rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf416c628 rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x44784461 rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x52fffa08 rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x8c4f70b1 rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xb7dae3fe rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xec326523 rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x15188894 rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x413a947e rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xa139e0e3 rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xfca078bc rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x04ccf4b2 rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x0b48e3ec rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x0f33a289 rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x1c6da622 rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x2d315fcf rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x38d122e4 rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x3bd81e77 rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x69d3a0db rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x95aeb1fb rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x9cff276c rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x9d4c041a rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x9eef52d7 rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x9fc16a08 rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xc01741e7 rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xd4cadd20 rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xe8ffe6e7 rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3e8a487b rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x505e7a0f dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x53809cba dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc05bcf46 dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x0698015e rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x0c781d27 rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x0e070104 rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x10b853ae rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x16b72d6a rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x1b4b4dc7 rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x255e9179 rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x29b68b55 rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x2a5b6ea6 rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x2ab7c51a rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x2eb163de rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x3fa7d407 rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x59824a06 rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x60bf39e2 rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6a58ea91 rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6fee3a6c rtl8723_phy_set_sw_chnl_cmdarray +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x72c31e22 rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x8922e338 rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x8f344236 rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x8fb0262f rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xaf4d6d94 rtl8723_phy_calculate_bit_shift +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xbbce5348 rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xcc778abf rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xd3fe7cd6 rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xdde944d8 rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xef6f0bdd rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xf5f9414b rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xf8ef4f97 rtl8723_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xfb369749 rtl8723_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x0d0b6636 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x241dedc1 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x2613ce1e rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x436f8fe9 rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x45b06998 rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x4ee6422c rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x60e8fdbc rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x62fb322e rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x6a0a72e5 rtl_attribute_group +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x6b4de810 rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x82e64b98 rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x845d993b rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x91c08b05 rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xbf5abe6c rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xc3328e7d rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xc78c8801 rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xeea9902c rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf045ab5e rtl_dbgp_flag_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf72aa1f8 rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf7d2e2dc read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x194822dd wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x375d70fe wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xc32807fa wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x00949934 wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0c83cfe3 wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0c8c3fb0 wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x0cf4794e wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1869812e wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1f52f3f2 wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x244d378e wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2a8a495c wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2b7a01dc wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3b31bbde wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3ed4d546 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x534fd9df wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x53dff67d wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x64108678 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6fb4509d wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x797b7aba wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7c8f81e6 wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x83d5cafe wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x85f93376 wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x87095a5f wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x87ac9f16 wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8897f27b wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8cfeb4b3 wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x91ed1402 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x98215f1e wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x98c29f83 wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9d44d09c wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa2b3f1c2 wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa2f806ab wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa87f1219 wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa8a4ad02 wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb3e9ed6f wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc0d8532b wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc3732f9d wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc6589a57 wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xca8d8e71 wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xcd505e5e wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xcfb95736 wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd39bb505 wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe80d75f3 wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xec0dc193 wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfd444e25 wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfe4f0926 wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/pci/hotplug/rpaphp 0x01cc7086 rpaphp_slot_head +EXPORT_SYMBOL_GPL drivers/pci/hotplug/rpaphp 0x05a1590b rpaphp_deregister_slot +EXPORT_SYMBOL_GPL drivers/pci/hotplug/rpaphp 0x91e4bef7 rpaphp_get_drc_props +EXPORT_SYMBOL_GPL drivers/pci/hotplug/rpaphp 0xb7663497 rpaphp_add_slot +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x0bb95ba1 of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x102315a0 phy_pm_runtime_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x1fa4d341 phy_init +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x37c6858a devm_phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x3fb06a1a __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x52078ee7 phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x5dea9d7a __of_phy_provider_register +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x6f9f5400 phy_pm_runtime_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x70c003c3 phy_get +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x784573a2 of_phy_simple_xlate +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x7a45b5b9 phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x7fd370df phy_pm_runtime_allow +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x8ddb95d3 devm_phy_create +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x924111a2 phy_exit +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x99396f76 phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0x9d7ab90d phy_power_off +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xae55adf5 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xb2f74415 phy_power_on +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xb75390bf devm_phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xb8f35f3d phy_destroy +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xdee786b5 devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xe4ff0d0d phy_put +EXPORT_SYMBOL_GPL drivers/phy/phy-core 0xfa3a2f94 devm_phy_get +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x07c3e51f pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x62f64315 pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x838623d2 pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x003998ab ps3_write_ctr +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x0bdf50c4 ps3_disable_pm_interrupts +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x0e622920 ps3_write_pm07_control +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x181e55ab ps3_read_phys_ctr +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x1bcb88c1 ps3_write_pm +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x2abf1471 ps3_get_hw_thread_id +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x2b339635 ps3_disable_pm +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x3c71a6b2 ps3_set_ctr_size +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x4a24996f ps3_lpm_copy_tb_to_user +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x50488f64 ps3_lpm_close +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x58e642c1 ps3_lpm_copy_tb +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x59c54782 ps3_set_bookmark +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x5eca6711 ps3_get_ctr_size +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x60e3f0d7 ps3_read_ctr +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x6702a28c ps3_get_and_clear_pm_interrupts +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x69010c19 ps3_set_signal +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0x70177200 ps3_write_phys_ctr +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0xa76ee01d ps3_read_pm07_control +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0xaa190bc1 ps3_read_pm +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0xbb72a01c ps3_enable_pm_interrupts +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0xce72c9c0 ps3_lpm_open +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0xdddfc980 ps3_set_pm_bookmark +EXPORT_SYMBOL_GPL drivers/ps3/ps3-lpm 0xfae0ab68 ps3_enable_pm +EXPORT_SYMBOL_GPL drivers/ps3/ps3stor_lib 0x23519e7f ps3stor_teardown +EXPORT_SYMBOL_GPL drivers/ps3/ps3stor_lib 0x50cc8e5e ps3stor_setup +EXPORT_SYMBOL_GPL drivers/ps3/ps3stor_lib 0xb16dca55 ps3stor_read_write_sectors +EXPORT_SYMBOL_GPL drivers/ps3/ps3stor_lib 0xe64462c0 ps3stor_send_command +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x32eb548e mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x45284a31 mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x5179df14 mc13xxx_get_num_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x65549527 mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xcac16037 mc13xxx_parse_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x21f9948a wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x437dff52 wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x9ed119da wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xbea9110e wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xc9d21215 wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xe0cffc08 wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0x9639d8de wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1019438e cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x196409d9 cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x231795c5 cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x23349816 cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2d131404 cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3837b061 cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3a5c4389 cxgbi_ddp_page_size_factor +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x40b74750 cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4307bde6 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x48746d63 cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4e225ca4 cxgbi_ddp_ppod_set +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x4fced5de cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5eeb8462 cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x60b3d184 cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x6702915d cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x67ad9996 cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x699bab58 cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x706b4159 cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7182d6b6 cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7f7ec2ec cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8b7ba1dc cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8c2ba369 cxgbi_ddp_ppod_clear +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8fd2991c cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x93d1a5ea cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9944c317 cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x99a15015 cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa5750a20 cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xacb4cb7e cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb0ae88ee cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xb51db184 cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc74a9922 cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc7c74e55 cxgbi_ddp_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc8b90e7a cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe3bc43cd cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe5d9d107 cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe83b4076 cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe9d2c9a7 cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xec33e3b9 cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef8dbd53 cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf1d32366 cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf46b5aea cxgbi_ddp_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf4a2ca33 cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf7d8486c cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf96b8348 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xfa1ebc10 cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xffcee5f0 cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x0188bba5 scsi_dh_set_params +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x097998e9 scsi_dh_attach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x593a36c2 scsi_dh_handler_exist +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x5ba47566 scsi_unregister_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x764cf998 scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x79a0c8bf scsi_register_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xadf813b0 scsi_dh_detach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0xee3ab17e scsi_dh_activate +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0fb51275 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x11863f9e fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1a2c48d0 fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x28079344 fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x374c1e1c fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x4ef1de86 fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x581716fe fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x5c251cde fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x7a9179e1 fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x7d52d432 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x84b3d915 fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x85475277 fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x87a1482a fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x9ba2980a fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xa8137bdb fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xae2a2a16 fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xb9607581 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xc6024e80 fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xec0826fb __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x120761db iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x480ad422 iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x60d3af38 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x6ce0e193 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xa514d588 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xd3a49aa7 iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x05903d26 iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x064003d0 __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0a9f3584 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1291f9ba iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x17057178 iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x25d707ae iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x282142a7 iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2829cbe4 iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2a6ca76e iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2dcd251b iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3e58ca7e iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4202bfd6 iscsi_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x462ad87a iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x48a5d0a9 iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x565e3264 iscsi_eh_target_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5866a330 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5ea129b8 __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x632d3f9e iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6cea3601 iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x72457913 iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x72b779ba iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x79792ecd iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x7d16b2c7 iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x841ced2f iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8b32a5a8 iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x926540e1 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9320818f iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9b9bf916 iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa51a77d4 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa6b94bce iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xab78d539 iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xac3b8151 iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc4cd2ef3 iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc523b717 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc900daff iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc9fc2c40 iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd22dbff4 iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd3393d9f iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd3601d0f iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdb6c12a4 iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe301cb75 iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf848c1ee iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfbbc7d56 iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xff0dcae2 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x04315a2d iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x4701ae5c iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x5aec4c5c iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x5ddcd65d iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x64bacc26 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x6c4caffd iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8bb0816a iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x9331dd5e iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x99cb9b9e iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x9fe07b04 iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xa80f9e36 iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xaf9b5603 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xbf3a9b5d iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xc53e8062 iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe4b960ff iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe5878797 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xebbebe75 iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x00296b15 sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0534c749 sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x1f610d00 sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2d71ad86 sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3bfb59a3 sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3d3a76ec sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4dd768c6 sas_change_queue_type +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4eba8e92 sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x5cd6aa32 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6131623f sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x63b2c469 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x71bc6e90 sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x943bae96 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x966812b2 sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x9d7d4d77 sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa0da37a2 sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb7dbafcd sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb8a489e0 sas_eh_bus_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc38d9da7 sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xcb11f854 sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd0ef28b0 sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe3628421 sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf5753c8f sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xfc518ff4 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xfeaa7cbb sas_domain_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x08b6cca5 srp_cmd_queue +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x2af04cc6 srp_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x4fe67bde srp_transfer_data +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x799400af srp_target_free +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xe132c6e9 srp_iu_get +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0xe4659c0e srp_iu_put +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x03459dfd scsi_tgt_it_nexus_create +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x037365c6 scsi_tgt_queue_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x422effdc scsi_tgt_it_nexus_destroy +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x4fc8eb43 scsi_tgt_alloc_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x5fa9e946 scsi_tgt_cmd_to_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x838c2f4c scsi_tgt_free_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x8443a8bc scsi_host_put_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xb3d6de59 scsi_host_get_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xfd62dc5d scsi_tgt_tsk_mgmt_request +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0134063f iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x035cb69b iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1868d741 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1e205390 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x21a14ce1 iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x248e93af iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2e61735a iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x30175125 iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x33d39ac7 iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x40bb965e iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x40f6bb3e iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4611ddb0 iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x48ff310f iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x49b7b90f iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4d39fde5 iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x513bfc38 iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x52259cf8 iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x52d45c4f iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x558d40cf iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x69876478 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7688922a iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x785c06fe iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x798698da iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7adb7488 iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7fae4fc2 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9cf3a49e iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa0dac3ed iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa93fee82 iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xac8a1d0d iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xae4c1941 iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb5766e95 iscsi_is_flashnode_conn_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb60171a0 iscsi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc6092cfe iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc6c130b3 iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xcf1864f1 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd45d5211 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe1ed046e iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xea2cb4cd iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf7868085 iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf83746a9 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x52485de2 sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x75edaada sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x818ea440 sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xb8e91441 sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x531c37d2 ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x80ec19ee ufshcd_remove +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x9a277b54 ufshcd_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x9b052c27 ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x9ebe6e93 ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xa01f683a ufshcd_suspend +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x384b1c70 spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x38b60d37 spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x54297c2e spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x5b8c93d3 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xfd59c147 spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x6899edee dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x6deffc83 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x9110fbee dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xb63c5022 dw_spi_xfer_done +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xe4d48f55 dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0x868d24a4 ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x0d2c161d comedi_pcmcia_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x10a6d559 comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x128cd7e2 comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x1a8439e7 comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2140533a comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x21c84816 comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x23641067 comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x26614061 comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2b53f4f7 comedi_dev_from_minor +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x3e21a324 comedi_error +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4328b22e comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x45b45ef2 __comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4eb96d04 comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x57b2a641 comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x592c5db9 comedi_event +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5ad9ccb6 comedi_pcmcia_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x5fdbf53d comedi_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x65496d55 comedi_request_region +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x6f51cf01 comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x71f98c5a comedi_pcmcia_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7a022a5f comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x7a1dbf37 comedi_to_pcmcia_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x8e103b47 comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x948d52d7 comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x96a11a47 comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0x97f50482 comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa2d2d7c1 comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa3392af4 comedi_buf_get +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xa4ab0c84 comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xaa51517c comedi_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xac3d0b52 comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xacaabe4a comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xad3c61d4 comedi_buf_put +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb09baa16 comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb2908e90 comedi_buf_memcpy_to +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xb7e5bb3b comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xbe8838c7 comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xc42fd22d comedi_buf_memcpy_from +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xcceec9c0 comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd0c897f5 comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xd7264c3b comedi_pcmcia_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xdbda157f comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe415d7ad comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xe4cb9af1 comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xeb25c018 comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xf5828bfa comedi_pcmcia_auto_unconfig +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xfdef1bf3 comedi_pcmcia_enable +EXPORT_SYMBOL_GPL drivers/staging/comedi/comedi 0xff6de710 comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x05a1e0fa subdev_8255_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0x7b1b26d5 subdev_8255_init_irq +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/8255 0xf8350f83 subdev_8255_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x20301350 addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xc33ab7fa amplc_dio200_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xd46d24a9 amplc_dio200_set_enhance +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/amplc_dio200_common 0xfd03aaeb amplc_dio200_common_detach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x2cb377d4 cfc_write_array_to_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x6b7a1e1c cfc_read_array_from_buffer +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/comedi_fc 0x71baaeb0 cfc_handle_events +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/das08 0x3a2a6c5b das08_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x018d5191 mite_bytes_read_from_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x08128cda mite_release_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x0ced4519 mite_bytes_written_to_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x11faeafc mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x14883924 mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x2310485a mite_free_ring +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x2540208a mite_setup2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x31ba7420 mite_dma_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x34774968 mite_done +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x38eeda52 mite_dma_tcr +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x476397a6 mite_setup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x5bb1dd68 mite_unsetup +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x7f22169c mite_alloc +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x94ec61c4 mite_sync_input_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x98f93f6c mite_buf_change +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0x998866cd mite_prep_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb6b0c276 mite_bytes_written_to_memory_ub +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xb6cdb82c mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xbbd0d6fe mite_bytes_read_from_memory_lb +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xe5e92e09 mite_get_status +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xf2789f80 mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/mite 0xfe0cfd6c mite_sync_output_dma +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_labpc 0x7fb689a1 labpc_common_attach +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x249292d8 ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x433058a9 ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x5495f3f7 ni_tio_arm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0x6cf79af7 ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xb4942866 ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xc0689ff7 ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xc4a48478 ni_tio_rinsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tio 0xe4e13a7e ni_tio_winsn +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x1ba4130a ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x35c36550 ni_tio_acknowledge_and_confirm +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x7a10896b ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0x89e2d280 ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xa172fda1 ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/staging/comedi/drivers/ni_tiocmd 0xbd65313c ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x00229663 comedi_open +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x43e8d6a2 comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x462e105e comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x4a4497f9 comedi_close +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0x93ff6f4b comedi_dio_config +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xccd31955 comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/staging/comedi/kcomedilib/kcomedilib 0xd0b8c55f comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x14dcb85f dwc2_hcd_remove +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0x2206b003 dwc2_handle_common_intr +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xb05a818c dwc2_set_all_params +EXPORT_SYMBOL_GPL drivers/staging/dwc2/dwc2 0xc5145319 dwc2_hcd_init +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x1a1b5249 oslec_flush +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x2feda75b oslec_hpf_tx +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x3227a28e oslec_snapshot +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0x7dc9dddd oslec_adaption_mode +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xb2c66001 oslec_create +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xc8b5a524 oslec_free +EXPORT_SYMBOL_GPL drivers/staging/echo/echo 0xd370f679 oslec_update +EXPORT_SYMBOL_GPL drivers/staging/iio/addac/adt7316 0x7449e618 adt7316_pm_ops +EXPORT_SYMBOL_GPL drivers/staging/rts5139/rts5139 0xbd5a0e51 rts5139_usb_ids +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0e81c76d spk_serial_out +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x0ef1d765 speakup_info +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x14f06fe7 spk_serial_in_nowait +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x24b3b3ed spk_synth_flush +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x26f14a99 spk_synth_immediate +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x2961c2b7 spk_var_store +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x381d82fe spk_var_show +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x41a160e5 synth_buffer_empty +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x4449e1dd synth_buffer_clear +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x45c230ec synth_add +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x475e158a synth_request_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x602b74fc spk_synth_is_alive_nop +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x6cc8503b synth_remove +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x7f682ceb spk_serial_synth_probe +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x8e146195 synth_release_region +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0x9a888082 synth_buffer_getc +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb35aaab9 speakup_event +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xb48956f8 synth_buffer_peek +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbbd15a51 speakup_start_ttys +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xbc7f3cd4 spk_do_catch_up +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xc766ae09 synth_printf +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd1b551a2 spk_get_var +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xd9cef2cb spk_synth_is_alive_restart +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7cd4558 spk_serial_release +EXPORT_SYMBOL_GPL drivers/staging/speakup/speakup 0xe7e810f8 spk_serial_in +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x099947c8 usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x19931b04 usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x322c1397 usbip_recv +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x683deb51 dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x772faca1 usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0x7d775f20 usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xba32fdcd usbip_start_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xc789edf1 usbip_event_happened +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xc8b66414 usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xcfbd6dee sockfd_to_socket +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xd02753dc usbip_header_correct_endian +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xd4f5cd58 usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe1ea0586 usbip_dump_header +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xe3534054 usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/staging/usbip/usbip-core 0xf2c527e2 usbip_event_add +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x585ebaac n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0x3aa444ef pciserial_init_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL drivers/tty/serial/8250/8250_pci 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL drivers/uio/uio 0xd02c2980 __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xdfcaa8ef uio_event_notify +EXPORT_SYMBOL_GPL drivers/uio/uio 0xe6dab12d uio_unregister_device +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x4b42b0e5 usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x5220ebc3 usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x41e2d8ae ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0xe750ce01 ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x170e9bea imx_usbmisc_init +EXPORT_SYMBOL_GPL drivers/usb/chipidea/usbmisc_imx 0x74750d38 imx_usbmisc_init_post +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x05fa80cc usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0f26c762 usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x16bf2836 usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x1d6d0f57 usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x1df9c64d usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x21026d1f usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2647ba70 usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3b8ccbc8 usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3bae2231 usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x3d270612 usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4b465b51 usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x59ebaa00 usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6283d73e usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x63d82e57 usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x6cda6373 usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x80e92865 usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x80f9eafc usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x852a1ec5 usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8cbd7c64 usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8e0ae01f usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x8fd163ae usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x91c22fce usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x94d7075a usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xa7bbaad4 usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb5c45322 usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xc98ba551 usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xdb78bf69 config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfad26dff usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x791e7bc7 gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x8877f4cb gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0x8e27d6de gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/u_serial 0xf1981607 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x0d3b2220 usb_gadget_probe_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x2f1a2a07 usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0x9ce5e69a usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xc29d04f8 usb_gadget_unmap_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xca46c073 udc_attach_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xce904053 usb_add_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xed49c615 usb_gadget_set_state +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xf2454e14 usb_del_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc-core 0xfd3bbb37 usb_gadget_map_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x0a5230df fsg_common_set_nluns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x141fce2a fsg_common_remove_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x1ccb58f7 fsg_common_set_num_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x2d10b6a7 fsg_common_create_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x2ff630d5 fsg_common_remove_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x51707c29 fsg_common_run_thread +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x6741a7c5 fsg_common_set_cdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x6acb4179 fsg_common_set_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x7e26d4a5 fsg_common_set_sysfs +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x99023bfc fsg_common_put +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9a0221c7 fsg_common_free_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0x9dc025a5 fsg_common_free_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xa46e6443 fsg_common_get +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd3ae3b65 fsg_common_create_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xd468f882 fsg_common_set_ops +EXPORT_SYMBOL_GPL drivers/usb/gadget/usb_f_mass_storage 0xe4d1591e fsg_config_from_params +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0x5d245179 ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0xad00b6de ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x16365501 usb_ftdi_elan_edset_flush +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x27ac16e6 usb_ftdi_elan_edset_single +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x3a895a1d ftdi_elan_gone_away +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x3da16b0c usb_ftdi_elan_write_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0x7eae70c2 usb_ftdi_elan_edset_empty +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xca205fd6 usb_ftdi_elan_edset_input +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xdc644ed8 usb_ftdi_elan_read_pcimem +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xea88afa7 usb_ftdi_elan_edset_setup +EXPORT_SYMBOL_GPL drivers/usb/misc/ftdi-elan 0xeccde7cf usb_ftdi_elan_edset_output +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x2ae6d5cf musb_interrupt +EXPORT_SYMBOL_GPL drivers/usb/musb/tusb6010 0x78c2746a tusb_get_revision +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x352614b1 usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x74b7b336 usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x924da5ba usb_gen_phy_init +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0x5cca68cc isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x2b265907 samsung_usbphy_rate_to_clksel_64xx +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x67dcdcf3 samsung_usbphy_cfg_sel +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x7c2d5bd3 samsung_usbphy_get_refclk_freq +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0x83fa1933 samsung_usbphy_parse_dt +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xd1632413 samsung_usbphy_set_type +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xde6d3e59 samsung_usbphy_set_isolation_4210 +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-samsung-usb 0xdeba8455 samsung_usbphy_rate_to_clksel_4x12 +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0x738230e0 usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x0109a8ce usb_serial_handle_break +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x15fcba4d usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x278a16b7 usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x2c58d1ba usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x31ea3830 usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x5e953ca0 usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x6f5cbe77 usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x8665fdd5 usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x91b907e4 usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa01360c4 usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa16882c2 usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xa67ae4f5 usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xb3ac9d3b usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xbc666310 usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc4010317 usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc8ce9933 usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xcbf9e49a usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xcc994451 usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xd218efb7 usb_serial_handle_sysrq_char +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xdb24d46c usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xf1b3d4fe usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x0746bf76 usb_stor_bulk_transfer_sg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x1bc3edc2 usb_stor_sense_invalidCDB +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x3010848c usb_stor_reset_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x34ebe549 usb_stor_Bulk_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x4dbcdf1b usb_stor_CB_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x54253fae usb_stor_bulk_transfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x7619a7ea usb_stor_pre_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x804cfd9e usb_stor_transparent_scsi_command +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x83eff400 usb_stor_ctrl_transfer +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x87b7ab87 usb_stor_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x91e6263f usb_stor_probe2 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xa1943d5b usb_stor_access_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xa24c3120 fill_inquiry_response +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xa4d8e47c usb_stor_CB_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xbc7f4e45 usb_stor_disconnect +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xcfcaae5e usb_stor_probe1 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xd034c0b8 usb_stor_clear_halt +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xd0b53c61 usb_stor_post_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xd848de52 usb_stor_Bulk_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xdd49b04e usb_stor_bulk_srb +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xe017ab14 usb_stor_suspend +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xef30c1a9 usb_stor_set_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xf98e412e usb_stor_control_msg +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x025b7a7a wa_urb_dequeue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x0bd816f0 wa_process_errored_transfers_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x122f15ac wa_urb_enqueue_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x39ea4dcd wa_urb_enqueue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x7028e5dd __wa_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x70c2cef4 wa_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xbeed8e09 rpipe_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xcb55ad58 rpipe_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xd78b5f02 rpipe_clear_feature_stalled +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x0bb6bf5e wusb_cluster_id_get +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x11294de3 wusbhc_rh_status_data +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x2f836df7 wusbhc_rh_start_port_reset +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7f0b7631 wusb_dev_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x89d3dfd1 __wusb_dev_get_by_usb_dev +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x8c173a9a wusbhc_mmcie_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x9ceb213c wusbhc_handle_dn +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xb0e03e50 wusbhc_b_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xb139664d wusbhc_b_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xb725d128 wusb_cluster_id_put +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xbe52e72a wusbhc_reset_all +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xbfefa234 wusbhc_giveback_urb +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xd0cb1fc5 wusbhc_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xde7df72f wusbhc_mmcie_rm +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xe7d4df55 wusbhc_rh_control +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf2a3d5d9 wusbhc_chid_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf770a6b4 wusbd +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xfe2e17d7 wusb_et_name +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xfe30bfdd wusbhc_destroy +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x5c48d598 i1480_fw_upload +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0xa49d8354 i1480_rceb_check +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0xc72bc046 i1480_cmd +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x01cb645b umc_device_create +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x24cbb1f3 umc_controller_reset +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x27031d8c umc_device_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xa2ff2a08 umc_driver_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xb341dd89 umc_match_pci_id +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xc8309127 umc_device_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xce6a8a62 __umc_driver_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xfbad0e5e umc_bus_type +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x00a13ab7 uwb_rc_put +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x07ede384 uwb_pal_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0b13a86f uwb_rc_cmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0d78016e __uwb_addr_print +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0fc02440 uwb_est_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x11ea9a6c uwb_rsv_terminate +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x1601004d uwb_rc_ie_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x2066b77b uwb_est_find_size +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x23a7d7ae uwb_rc_mac_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x26221901 uwb_rc_neh_grok +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x2f51df8f uwb_rc_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x31413094 uwb_rc_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x3f1d64ea uwb_pal_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4343c724 uwb_rc_pre_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4c8bf213 uwb_pal_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4d57ae3c uwb_rsv_type_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4e4af552 uwb_radio_stop +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4faabccc uwb_rc_cmd_async +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x536de0ac uwb_dev_for_each +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5ac5ab48 uwb_notifs_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5c91876f uwb_rc_get_by_dev +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x5d9fd25a uwb_rsv_accept +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x61be15f4 uwb_rsv_get_usable_mas +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7cb1b486 uwb_rsv_establish +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7fbdfab1 uwb_rc_ie_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x816b9e92 uwb_est_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x83d138f7 uwb_rc_post_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8af01e3f uwb_rsv_modify +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x98413234 uwb_rsv_state_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xac97316b uwb_ie_next +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xba211daa uwb_dev_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc314abf1 uwb_rc_vcmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc5a0c413 uwb_radio_start +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd3aed815 uwb_rc_alloc +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd6d455db uwb_rsv_destroy +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd8cab323 uwb_rc_get_by_grandpa +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd8e8996f uwb_rsv_create +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xdd54f264 uwb_notifs_deregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xdfdffcfb uwb_rc_reset_all +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xeaf9a3d1 uwb_rc_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf21dff6e __uwb_rc_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf4efd685 uwb_rc_dev_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xfef806a3 uwb_rc_neh_error +EXPORT_SYMBOL_GPL drivers/uwb/whci 0xb53fdee9 whci_wait_for +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x1ffc6b43 vfio_group_get_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x21b9cb35 vfio_add_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x3567743b vfio_external_user_iommu_id +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x7951d0ba vfio_device_get_from_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x95258207 vfio_device_data +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x969c73d9 vfio_device_put +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x99366620 vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc4913442 vfio_group_put_external_user +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xd452879c vfio_del_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xf4660a1f vfio_register_iommu_driver +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x02ebf28b vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0a649359 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1aa1986a vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x207c5432 vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x25f8cb4b vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x269f7a09 vhost_dev_reset_owner_prepare +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x31a86d1e vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x43bf9731 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x4dc46ed0 vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x532c3d86 vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x590e2664 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5fc4cd10 vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6fe77e01 vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x70cc0657 vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x72715f35 vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7a6b4d5f vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8a16c247 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9aea1730 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9d410928 vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa344c3b4 vhost_init_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xaa775260 vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb0f81e37 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbed8af75 vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbf66e6d0 vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc1377779 vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc449a29d vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xca0b5be4 vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xdad175cc vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf327286b vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf49a8fea vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xf4f20658 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x10aa7eee auok190x_common_probe +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x2ee40eb6 auok190x_send_command +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x3d4c536c auok190x_read_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x56afc3a3 auok190x_send_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xa4504a5c auok190x_send_command_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xa5b24f1b auok190x_send_cmdargs_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xb7c9f1fa auok190x_send_cmdargs_pixels_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xb7fcc80e auok190x_pm +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xdfe8b42e auok190x_common_remove +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xe9895c2d auok190x_send_cmdargs_pixels +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x23f410b0 ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x24af718b ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x405bdd5a ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x4c688925 ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xcd156813 ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xdb15e1a4 ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xe48a79a0 ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0x2211c311 sis_malloc_new +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0xee4b040f sis_free_new +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x272c6d26 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x3654c083 register_virtio_device +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x81cdad61 unregister_virtio_device +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0x9816ad80 unregister_virtio_driver +EXPORT_SYMBOL_GPL drivers/virtio/virtio 0xb8387f4e register_virtio_driver +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x06737ed1 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x11218b06 virtqueue_notify +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x183facb9 virtqueue_poll +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x19395e02 virtqueue_is_broken +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x37b1fa84 virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x4f5d3548 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x5ddd991d virtqueue_add_sgs +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0x8b704398 vring_del_virtqueue +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xa26ff9ab virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xb7922491 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xc0609191 vring_new_virtqueue +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xc931b2ac virtqueue_get_buf +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xc98725d9 virtqueue_enable_cb +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xcc671f7d virtqueue_kick +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xce56de44 virtqueue_disable_cb +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xe9098a4e virtqueue_kick_prepare +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xf55c8dad virtqueue_get_vring_size +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xf9b5c982 vring_transport_features +EXPORT_SYMBOL_GPL drivers/virtio/virtio_ring 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL drivers/w1/wire 0x009c36fb w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x0608191a w1_next_pullup +EXPORT_SYMBOL_GPL drivers/w1/wire 0x1536eb2e w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x3bb5faab w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x79b95fd7 w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x7c2f2afb w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x809be953 w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x8402aa71 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xddc2f4a6 w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0xf793d877 w1_reset_bus +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x60383bd0 dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x9321df95 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xb10d83e2 dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xbb97be2b dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc6dc8c2f dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xdc583c08 dlm_unlock +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x159b5422 nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x17ce645d locks_end_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x3d66ef41 nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x3f12289f lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x6745f38e nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x9ac8b8dd locks_in_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xa947779f lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xaba5422d nlmsvc_ops +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xd974201f nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xf56af1a5 locks_start_grace +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x02e22467 nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x037537fa nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x03c3f86f nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0d94943c nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0de0b7ef nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0ffefa4a nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1488f3c5 nfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x167abc14 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1b27335a nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1be90415 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1e5f6532 nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x206892b6 nfs_fill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x224bc75d nfs_fs_mount_common +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2353f173 nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x23569bd8 nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2a49f172 nfs_fs_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2ab00d7e nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2c130383 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2c6885f0 nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2c78384c nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2ce6df24 nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2d3d47f6 nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3284aacb nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x34f8bbda nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x354759b9 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x35c39e1b get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x37711ca0 nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x37e80a3c nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x383f0b67 nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ab5afb2 nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3c9df4dc nfs_destroy_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ca31f35 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x415864bf nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4267a8a3 nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x43643752 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x43f902a1 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4d1c0a5d nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4ebdae9d nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x509f8483 nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5757b606 nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5849d250 nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5caf811f nfs_initiate_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5d21c33e nfs_put_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5dc280eb nfs_generic_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e1d863a nfs_sockaddr_match_ipaddr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5f897ac3 nfs_pageio_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x60394f62 nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x604726f4 nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x605e49ae register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x626942f6 nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x679c4ea1 nfs_try_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6c041949 nfs_file_splice_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6d5fb8ba nfs_set_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6ee4161c nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x735a2792 nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x77500ffe nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7a008187 nfs_readhdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7b156c00 nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c9722ba nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7db5e222 nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x80a8fb67 nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x825507c9 nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x82e91631 nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x830de1ea put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8414b787 nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x860edfbf nfs_generic_pagein +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x86257278 nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x864e08da nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x87fd8928 nfs_initiate_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89bc5a64 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8b3afb99 nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8bf1b7d7 nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8c19e28f nfs_setlease +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8c82b2e0 nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9085a109 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x93917471 nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x94504380 nfs_writedata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x95f16683 nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98d6d337 nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9a008f34 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9a5b8ea1 nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9c3c4ffb nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9c555f96 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9d5c7cca nfs_file_splice_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa0f45ee0 nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa7c92f0a nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8d2d1ce nfs_callback_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xacafc0dc nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb28536a2 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb44dc271 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb606e716 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb90a4da4 nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb97c113f nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb9d96320 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb9fe9e4b nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbb8599c0 nfs_writehdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbe377a5d nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc18e2789 nfs_pageio_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc2296c53 nfs_clone_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4ff1e9f nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc53b08d6 unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5ef47d5 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc8c8f701 nfs_readdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcaadf509 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xccaf5ecc nfs_file_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcd5683b2 nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xce377034 nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcfef01a3 nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd08cea6f nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd2224f98 nfs_file_fsync_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd2efc586 nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd35a3c14 alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd490393b nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd68d6f36 nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xda88fb8d nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdbb02bfb nfs_remount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdc23c938 nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdd6a1c27 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe10fe76b nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe92691f5 nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xeabef66a nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xec7bd258 nfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf0bc8c1b nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf201273e nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf58398e2 nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf636462a nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf7675c2b nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf7772140 nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf865ee0f nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf939e66e nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf94a56ae nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb7ee006 nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfbf6dc8d nfs_pageio_add_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfd3a65c9 nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfda34679 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfda8b794 nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x06c36816 __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0a445f42 nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x10bc8c9c nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x119d3180 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x16ffb1c3 pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x170f3ed6 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2aa4755c pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3dfe6fe3 __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4282bd9e nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x471de0a9 __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5470db0a _pnfs_return_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x55e9e0ef pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x56b6e24f nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x578ac837 pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x62200240 pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6385d8c2 nfs4_insert_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x685dd360 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6dcd0c09 nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7132bf03 nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x72010465 nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x75788fcb pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7595a451 nfs41_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x78718ab8 pnfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x82c967fd nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x88373170 pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x905d7e11 pnfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x938665fe nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x959b5a8f nfs4_proc_getdevicelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xac1f6d81 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xac88309a pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc3d8fc61 nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc605fb2c nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcdf6bd6f pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcfbae269 nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd58f9795 pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd626434e nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdd019587 pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdd79f74b nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe2cbafd8 pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe53f9072 nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xee163e5c pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf2c78839 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf525c314 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x4f0f42fa nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xb7784975 nfsacl_encode +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1d747ce3 o2hb_check_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36418553 o2net_send_message +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36a28a9e o2net_send_message_vec +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4146188f o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4801a851 o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x56295c4e o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x5dbee144 o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x81a17396 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa67a4b8e o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa82a8645 o2nm_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xae808bac o2net_register_handler +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xbaeb4700 o2hb_check_node_heartbeating_from_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc3679d7b o2hb_get_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd60f2c6c o2hb_check_local_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xdc4da7c1 o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf1a5611d o2net_unregister_handler_list +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf56c2017 mlog_not_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf8d05f32 o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x2bbdc1ce dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x34025989 dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x6d0c84d0 dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x9c399d0d dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xae2e9959 dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xbb0cd681 dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd7ba575e dlm_errmsg +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd8fa57a6 dlm_unregister_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xfb86b96f dlm_errname +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x025e2d69 ocfs2_cluster_connect_agnostic +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x0562c415 ocfs2_cluster_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x16b2e575 ocfs2_dlm_unlock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x25182fe0 ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x541f0907 ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5469ce31 ocfs2_dlm_lvb_valid +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5d0cf453 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x7083dbd5 ocfs2_dlm_dump_lksb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x89502fe7 ocfs2_cluster_connect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xb4bd060c ocfs2_dlm_lock_status +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbbc4ef97 ocfs2_stack_supports_plocks +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xdc823ea4 ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe2bd47db ocfs2_dlm_lock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe40cffce ocfs2_stack_glue_set_max_proto_version +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe417d940 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL lib/bch 0x231d70fc encode_bch +EXPORT_SYMBOL_GPL lib/bch 0x6b770f49 decode_bch +EXPORT_SYMBOL_GPL lib/bch 0x9463ff71 init_bch +EXPORT_SYMBOL_GPL lib/bch 0xbdf512de free_bch +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x0aebe4e2 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0xa2030af9 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x1803a6ed raid6_2data_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0xe4b051cf raid6_datap_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0xfdfcb8cb raid6_call +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x201d8ea3 encode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x29fa419f decode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x300d7e57 free_rs +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x6fbb3bd9 init_rs_non_canonical +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xabda1e2e decode_rs16 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xb050f329 init_rs +EXPORT_SYMBOL_GPL net/802/garp 0x056f1bfe garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0x31ce8c3e garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x6dd96710 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x943f6d9a garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0xc68e76e3 garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0xe6e89214 garp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0x081ae044 mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0x1f88068b mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x3eba563a mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0x69214818 mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xa6c18c03 mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0xbfdfd750 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/stp 0x635eed78 stp_proto_register +EXPORT_SYMBOL_GPL net/802/stp 0xd8f87990 stp_proto_unregister +EXPORT_SYMBOL_GPL net/9p/9pnet 0x4272cb07 p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/9p/9pnet 0x52f6e6ad p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/atm/atm 0xb09faf79 register_atmdevice_notifier +EXPORT_SYMBOL_GPL net/atm/atm 0xcfb6a3da unregister_atmdevice_notifier +EXPORT_SYMBOL_GPL net/ax25/ax25 0x919b244b ax25_register_pid +EXPORT_SYMBOL_GPL net/ax25/ax25 0xac93ae05 ax25_bcast +EXPORT_SYMBOL_GPL net/ax25/ax25 0xaeb7451e ax25_defaddr +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0x93bd09c6 bt_debugfs +EXPORT_SYMBOL_GPL net/dccp/dccp 0x00b56504 dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x02c21fd4 dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0e40a40e dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1794f217 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0x19324c32 dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1b47cd90 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1ba80c5e dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1d99d49a dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x236ed17d dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0x26aca4ee dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0x290db3db dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x29c3ebc0 dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3732ba63 dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3d2978c8 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0x43197513 compat_dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4ec35231 dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x552e2478 dccp_insert_option_elapsed_time +EXPORT_SYMBOL_GPL net/dccp/dccp 0x656cab7c dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0x66fec58b dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0x672f1545 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6d7e17cd dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x72cc8c16 dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7f8b0ae9 dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0x82e6aa1a dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x834db641 dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x99e34a7f dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa323c52a dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0xabe516dd dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0xaf8d49bd dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb368199f dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbe2323ba dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc0b7b890 dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc383aff8 dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0xca1075ba dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xca55be8c dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcfa201b6 compat_dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdc72da49 dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf3017e21 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf335b404 dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xfc5cc1e9 dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x174bfdaf dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x4264d4d2 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x43b42ee9 dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x5ece9b50 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x9f4779d4 dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xb2cf6879 dccp_v4_connect +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x6b1d8e43 register_switch_driver +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xd7b38642 unregister_switch_driver +EXPORT_SYMBOL_GPL net/ipv4/gre 0x152fb222 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0x192d573e gre_cisco_unregister +EXPORT_SYMBOL_GPL net/ipv4/gre 0x1efdbbb4 gre_cisco_register +EXPORT_SYMBOL_GPL net/ipv4/gre 0xac405753 gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0xad100fd8 gre_build_header +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x05609aba inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x25c3ce64 inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x30b35e27 inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x80301d05 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x8e86332d inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xcabbf793 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x16e73eff ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x2375aa18 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x335b74f8 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x6db7c921 ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x7346d922 ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x821167a4 ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x8a59179a ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x8e47b0fd ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x8f8f46a0 ip_tunnel_delete_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xb4547e6e ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xb4aafbfa ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xb7d641e0 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xf2a55545 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xf726ac09 ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0xed6ca802 arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0x854bf7b7 ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_conntrack_ipv4 0x6d40a921 need_ipv4_conntrack +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x6b6c3d10 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_ipv4 0x8021687c nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_proto_gre 0x636b12c8 nf_nat_need_gre +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x2531fcf4 tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x3616e051 tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x4d7516ab tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x6f127b89 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xea27a031 tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0x126a13d0 xfrm4_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0xbeee6267 xfrm4_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x061d0f62 ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xa0b20fdf ip6_tnl_dst_reset +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xb7a6e61a ip6_tnl_dst_store +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xcbab263e ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0xd2284138 ip6_tnl_dst_check +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0xbb2bf26c ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x6eb85693 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_nat_ipv6 0x0a49cd44 nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0x4073b02c xfrm6_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0xb210c636 xfrm6_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x0342b7e4 l2tp_session_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x073512cd l2tp_session_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x1f659f2a l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x26b8e8cf l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x27a38776 l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x2ff51cb9 l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x5839c89d l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x5f4d8912 l2tp_session_queue_purge +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x8c89d09f l2tp_tunnel_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x9bbd122b __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa4c84a05 l2tp_session_find_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb39f1e0c l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb6415fbe l2tp_tunnel_sock_lookup +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd9cb68bf l2tp_tunnel_sock_put +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xde6da2a0 l2tp_tunnel_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe01d43f0 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xfec61c85 l2tp_tunnel_closeall +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0xe690766c l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x17fde6cf ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x1b8e63c8 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x225f6854 ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x23e350b0 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3663a36d ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x421a4959 ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4bf42798 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4d8972b7 ieee80211_iterate_active_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5d38f601 ieee80211_set_key_tx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x724a1ae0 ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x728ae7b9 ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xa6bfc4b7 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xb2938ded ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xbcd2a263 ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xc453d2b1 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x06c11dd9 ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x2c55ba0c ip_set_nfnl_get +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x2c62079c ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3066508f ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x3c049ba7 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x50cc572e ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7d9df3c9 ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x99756c7b ip_set_get_ip_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa2d623f3 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa724b1f6 ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xaa5ed789 ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xad49d9cd ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xd1d1918a ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xd7595afc ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xe453a51a ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xef13ebbe ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf3b4d4ae ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf8c917d6 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xfa2b92c1 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x22dc52ed ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x4b6682ec register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xb75180b8 ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xfb00cf09 unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01f84db5 nf_conntrack_set_hashsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x029a8598 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x045072cd nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x078d3fbe nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x09f7128c nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0ac80ee6 __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0ba3f7f7 nf_conntrack_l4proto_udp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0d2918b9 nf_ct_l3proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0e7d6f62 nf_conntrack_l4proto_tcp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0f3c6a07 nf_connlabel_match +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0f654bfe nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x11485386 nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x13a99f40 nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289c3714 nf_ct_alloc_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2b7785ab nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x36cf7505 nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x37386cac nf_conntrack_hash_rnd +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x37b6c8bb nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x39959575 nf_conntrack_l4proto_udp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3b66adf0 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3c4b0de0 nf_conntrack_l4proto_tcp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3cabd0e5 nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3e8245f3 nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3f5b1415 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4396c1a7 nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x449c8604 nf_ct_iterate_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x47e39b0c nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4a379636 nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4ba6e36e nf_ct_l4proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4ff5e6f3 nf_nat_seq_adjust_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x501404d7 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x55925263 nfnetlink_parse_nat_setup_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5785a7f2 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x59dae4fe nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62813e5c nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x63c96c42 nf_conntrack_l3proto_generic +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x644ca17a nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6ac15930 nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6db0126f nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6e224a7a need_conntrack +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6fff8279 nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x71cfaef0 nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x753bd5ad __nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x75473a52 nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x78f9b710 nf_ct_l3proto_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x791d07c7 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7d0c3377 nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7e38f262 seq_print_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7f79a532 nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x819488bf nf_connlabel_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x81bf7910 nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x85f5db51 nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x86a61fdd __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8732b644 nf_ct_l3protos +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8b3a3f35 nf_ct_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x905eae6b nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x90ff6c9f nf_ct_invert_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x936b444f __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x97baf620 nf_ct_l4proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa11e3315 nf_conntrack_flush_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa258c7ce nf_ct_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa55dc364 nf_ct_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa77fc444 nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa8b7e3e1 nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa9b3c741 nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab3d1f95 nf_ct_untracked_status_or +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad1bb027 nf_ct_free_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xae4b713e nf_ct_l4proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xae97142f nf_ct_l3proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xafa54de9 nf_ct_l4proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb4c06c5a nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb602c57e nf_ct_l3proto_module_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xba847832 __nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbec02e82 nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc1215635 nf_ct_get_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc2080543 nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc54823c6 nf_ct_l3proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc5898a84 nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc68ac099 nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd4f5e0e9 nf_ct_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdcd8d00b nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xde317a06 nf_ct_l3proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xde9153dc __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe3ce3062 nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xee034ae7 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xee1342b9 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeee92f0c nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf2405600 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf3f9331d nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfb2091dd __nf_conntrack_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0xc2b1f9d2 nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0xc7cd3169 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0xb62c3948 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x4a12a15c nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x6af8039f nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x7293012b nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x7ca3d345 set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x90ed00d4 set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x935575a8 nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xca3cc5d2 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xd83ca196 set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xedaf40fe set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xfd72d664 nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0xd79ec07d nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x29353fd7 nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x50fee868 nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x77a9d840 nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xd45e5b11 nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x9ad72b27 nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0xbd15c523 nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x18d4155b nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x26be0652 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x4729de4c ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x4ee07f6f ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x6c3aa0bb ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x8ceb6aca ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xff137695 ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0x8c881971 nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0xc45dffce nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0d9bae4b nf_nat_l4proto_nlattr_to_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x131f636c nf_nat_l4proto_in_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x4360aeaa nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x8f1138c9 nf_nat_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xa053d51c __nf_nat_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xb495e80e nf_nat_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd21d85cb nf_nat_l4proto_unique_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd2722f47 nf_nat_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd874ca91 nf_nat_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xe82e5af3 nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x11a006b5 synproxy_check_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x5f339439 synproxy_build_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x68e92fc6 synproxy_tstamp_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x77bec09c synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x90298227 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb42e336a synproxy_options_size +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xef7db50c synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0fda3c99 nft_validate_output_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x15904d84 nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x21a36017 nft_register_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x230e539f nft_unregister_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x295464f1 nft_do_chain_pktinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x339621a1 nft_unregister_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3d49dab7 nft_validate_input_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x41dde6b0 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5932c557 nft_data_uninit +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6e0d03d8 nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7d249ace nft_validate_data_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x91a105aa nft_register_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xaec1e9aa nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbb772b3b nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xefa229da nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x121caf7d nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x1435c305 nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x1f94b04d nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x7c6a1fa9 nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x97c8aad8 nfnetlink_alloc_skb +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xd3774f97 nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xf295c97d nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x21f6bba6 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x3bd8c457 nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_log 0x5518f3ee nfulnl_log_packet +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0cba959d xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0e978cbe xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x12c59937 xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x161d1417 xt_compat_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x21fd8f61 xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x3d5e6b7f xt_compat_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x40728a63 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x41b02af4 xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x571f229e xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x59fa583d xt_compat_target_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5f82f1f7 xt_compat_flush_offsets +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x691a6d69 xt_compat_calc_jump +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x790f4735 xt_hook_link +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x807d2b2c xt_recseq +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x86be343a xt_compat_match_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x893fb73f xt_compat_target_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x90ee5692 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa50eac86 xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xb64dd1f0 xt_hook_unlink +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xba1b10a3 xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbf61a660 xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xdc69c588 xt_compat_match_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe0b4971b xt_compat_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe67cd867 xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xebe169ab xt_compat_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xec24fd82 xt_compat_add_offset +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x00204983 xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x482b6a12 xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x185f10e1 nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0xbb4aab96 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0xea7317e2 nci_spi_send +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x061d1b76 rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x0de92870 rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0x14dcccb5 rds_page_copy_user +EXPORT_SYMBOL_GPL net/rds/rds 0x19019191 rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x2c5c5514 rds_message_add_rdma_dest_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3101936e rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3b4fc0fc rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x49651424 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x50cbe7b3 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x5101ec63 rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0x51433662 rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0x57c7ce74 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0x57ef79fc rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0x5f8cfbe4 rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0x607886e9 rds_send_get_message +EXPORT_SYMBOL_GPL net/rds/rds 0x6408e792 rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0x64317a7c rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x6ac3863a rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0x73aac73d rds_message_populate_header +EXPORT_SYMBOL_GPL net/rds/rds 0x75b57f33 rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0x7bc62829 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x92adfd62 rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xcdececdc rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xdeb59755 rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0xe4a30c34 rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0xec850ab2 rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xf52b237f rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0xf745958b rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0xf7e27122 rds_trans_register +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0x15e18493 rxrpc_unregister_security +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0x88e9a563 rxrpc_register_security +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x00c52ef5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x0189663f svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x5ca240ff gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x8d1a827e svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xb5dea7ef g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xd89c5160 gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xf8b2ff6e g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x01cb91fb svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x045834e9 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04730967 svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04c041e4 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04d6f5d9 rpcauth_cred_key_to_expire +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x086a5c9f __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0897f901 rpc_lookup_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x08eca816 svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x092e4419 svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0a8c48b2 rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0ad9af3e cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b1f6cff rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b908191 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0ca7fbf0 rpc_get_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0d647e13 cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0e114747 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0ea1846e rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f1bb781 xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f3ed0a9 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f668ba9 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x114889ec rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x11fedba9 xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x12e2cac3 rpc_protocol +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x138dcc61 xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1707fa24 rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x17275c8a svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1928d601 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1af9c93d rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1ca22cc4 xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f2a9970 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x206374ff rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x21340a5e rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x225d7667 svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x234ae6ea xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23be29eb rpc_task_reset_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x251dfbe8 rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x254bd774 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x26518466 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x26d6cd23 xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x28b00ff5 rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2aaab54a rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2b1b98c9 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2c953353 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eec63c9 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x307aee2a rpc_lookup_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x30c2b057 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x30fd4933 svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3478d4cf xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34a165e5 svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36121814 xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3712b03a xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x39f7b0c3 rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a0929b1 xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a40aa70 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a86a8ce rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x412924cb xdr_partial_copy_from_skb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4366e0a6 xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x44fd6cbe rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x45084ed0 svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x454fc050 sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x46562e5b svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x486fde7b auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4b1b518b read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4b36f995 svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4c3a2fbe svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d3d7c07 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d5130d6 xprt_set_retrans_timeout_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4df2f118 rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4eae30e4 rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4f29361d svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4fcbe901 xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x50e331f1 rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x51785823 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x532bce35 rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53388b11 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5502d5c3 svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x563ab6f7 rpcauth_generic_bind_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x56808c85 rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x56c94f8f svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x595a2a23 xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a3e8922 xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5abc1c18 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5b576c74 rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5b870652 rpc_rmdir +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5c5c76ed svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5ce2a09f svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5f3593ad rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x63ae3b5f rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x640c33a3 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x64ab789f rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6521858e svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x65a6d362 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x678c3a17 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x67e445ea svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6952746f xs_swapper +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6ccd9a76 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6cea8119 xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6dd56009 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x709c34a4 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7345a946 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x75bcc850 rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x76c88d33 rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7708ced9 rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x77e1bf21 bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x796b3ff1 rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7a839cab rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7ad304e0 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f538711 svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f98f28a xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x806d1aa2 rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80951b28 rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x81a4adcd sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8349fefc rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x848d8b4b rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x85f9fae5 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x87c5268c svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x87f47fbe sunrpc_cache_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8969eaef xdr_buf_read_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8ad9a542 xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8c18e8ed rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8ed352d3 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8fb5fad6 unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9094bdbf xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9099ae3b rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x90b336a0 rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x91dfff4b rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9398e0a4 xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x97ca555a rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98b75d64 rpcauth_list_flavors +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9a617cad xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9c60a086 xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9f58201d cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9f8d0c81 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9f9ae0f5 rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa1c2befa rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa6647f72 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa81c2c26 xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa88c1872 rpcauth_key_timeout_notify +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa990b56d rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaa94278f xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xad12ae87 svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xae0cd345 svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xae8bfc69 xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb13b305a svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb280230e rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb668bc31 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb8c1d64e rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xba3d0795 sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb0dbc63 rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbd75f595 xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbe5c9c3d rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf64eb04 xprt_lock_and_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3880471 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc465bbdf rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc7475240 xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc9355711 rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc98c4a1d xdr_skb_read_bits +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcb7cc2e7 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee70612 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd0b96c12 svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd2711beb xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd2962428 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd8eb6284 xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xded437aa svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe0cc29cf xprt_set_retrans_timeout_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe18b5c54 rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1ac2bb8 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1d14d25 xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe33c1b2a xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe43379d6 write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe56dc945 xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe9b9d9e9 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xea1daac9 sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xec61a257 svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xee47c0b0 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xee4d89bd rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf129a4af svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf29b7dc7 svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf32873ee svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf3ae6269 sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf8ed5e08 cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9d1164c rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfa378cd2 xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfaf4d805 auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfb56ecb2 svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfc266671 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfc96c116 rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfcfadd33 rpc_print_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfd1e651e rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfd5aaf72 svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe2cfc2a rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe9f1e40 xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xff86555e rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xff8907d2 _copy_from_pages +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0b84145f __vsock_create +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0c79d5ef vm_sockets_get_local_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x15c0c57c vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x24c09086 vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x281ed2cc vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x328ce070 vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x3c4549e3 vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x43a0e0d2 vsock_core_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x59d943c8 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x5be1154e vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7f730c80 vsock_core_exit +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x8e102dad vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x907e9a3d vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x970b77bc vsock_pending_work +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9f627d74 vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd7492cd2 vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xeed568f4 vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xeef038e9 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/wimax/wimax 0x064e53b1 wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0x179cc96f wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0x377e7e77 wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0x3d0514a2 wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0x5cf8e31d wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0x61434ca4 wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0x8ee8211e wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0x93511aa3 wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xaccc80c0 wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0xbb78adca wimax_msg_send +EXPORT_SYMBOL_GPL net/wimax/wimax 0xc08ce0f0 wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0xe8c4e16f wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0xf5e6ced0 wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x1e53f594 cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x3234ae96 cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x410d6137 cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x6a18950a cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x6ea8d7cd cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x7741cd22 cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x85c7de0a cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x8cc31b58 cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xa9c2c1c9 cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xd9499435 cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xe75dd98b cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x00778770 xfrm_ealg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x056bb269 xfrm_ealg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0a575945 xfrm_count_pfkey_auth_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0b9e5852 xfrm_aead_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x28e23139 xfrm_probe_algs +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x74e1a843 xfrm_aalg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7a8ca627 xfrm_count_pfkey_enc_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7c30b8c7 xfrm_calg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x92dbc6c1 xfrm_aalg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xbc8b0f41 xfrm_calg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xce7a55c1 xfrm_ealg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xe122af95 xfrm_aalg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x54123ea6 ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x5e387b72 ipcomp_destroy +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xc767c925 ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xf8c8f6de ipcomp_input +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0x45b11147 aoa_fabric_register +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0x4f986ba4 aoa_fabric_unlink_codec +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0x516f80d7 aoa_get_card +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0x87edfc76 aoa_codec_unregister +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0x97577748 ftr_gpio_methods +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0x99b9c069 pmf_gpio_methods +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0xc8e008c3 aoa_codec_register +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0xcf92915c aoa_snd_ctl_add +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0xf58570f6 aoa_snd_device_new +EXPORT_SYMBOL_GPL sound/aoa/core/snd-aoa 0xfd640d1c aoa_fabric_unregister +EXPORT_SYMBOL_GPL sound/aoa/soundbus/snd-aoa-soundbus 0x1990ff98 soundbus_register_driver +EXPORT_SYMBOL_GPL sound/aoa/soundbus/snd-aoa-soundbus 0x616c36a1 soundbus_remove_one +EXPORT_SYMBOL_GPL sound/aoa/soundbus/snd-aoa-soundbus 0x6212e138 soundbus_dev_get +EXPORT_SYMBOL_GPL sound/aoa/soundbus/snd-aoa-soundbus 0x9039279e soundbus_dev_put +EXPORT_SYMBOL_GPL sound/aoa/soundbus/snd-aoa-soundbus 0xb6f29e7c soundbus_add_one +EXPORT_SYMBOL_GPL sound/aoa/soundbus/snd-aoa-soundbus 0xc0f4e892 soundbus_unregister_driver +EXPORT_SYMBOL_GPL sound/core/snd 0x3ca17104 __snd_printk +EXPORT_SYMBOL_GPL sound/core/snd 0x401a3a51 snd_kctl_jack_new +EXPORT_SYMBOL_GPL sound/core/snd 0x6f8f3e0e snd_ctl_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/core/snd 0x87c4d8e6 snd_ctl_activate_id +EXPORT_SYMBOL_GPL sound/core/snd 0x990bd13b snd_ctl_sync_vmaster +EXPORT_SYMBOL_GPL sound/core/snd 0xd22b858a snd_kctl_jack_report +EXPORT_SYMBOL_GPL sound/core/snd-compress 0x65fed0cc snd_compress_deregister +EXPORT_SYMBOL_GPL sound/core/snd-compress 0xd6027ee1 snd_compress_new +EXPORT_SYMBOL_GPL sound/core/snd-compress 0xe77fd5c8 snd_compress_register +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x04e1b99f snd_pcm_std_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0x09e913c1 snd_pcm_alt_chmaps +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa286a234 snd_pcm_format_name +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xa3be1a89 snd_pcm_add_chmap_ctls +EXPORT_SYMBOL_GPL sound/core/snd-pcm 0xf4c3e448 snd_pcm_lib_default_mmap +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x483db4f1 snd_ak4113_reg_write +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x7f53aa96 snd_ak4113_create +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x84046dce snd_ak4113_external_rate +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0x97a42804 snd_ak4113_build +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xa21828cd snd_ak4113_reinit +EXPORT_SYMBOL_GPL sound/i2c/other/snd-ak4113 0xc799a362 snd_ak4113_check_rate_and_errors +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x016e2bb1 snd_hda_check_amp_list_power +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x01aa7f12 snd_hda_multi_out_dig_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x058de519 snd_hda_create_spdif_in_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0676f5ac snd_hda_get_input_pin_attr +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x073e5325 snd_hda_delete_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x084eb34c snd_hda_get_path_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x0fad066c snd_hda_jack_report_sync +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x138a2fb7 snd_hda_get_connections +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x138bd219 snd_hda_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1adcdf5c snd_hda_parse_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1b75c1ca snd_hda_bind_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1c10b1c3 snd_hda_codec_configure +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1c305e67 snd_hda_get_default_vref +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1cb09fd3 snd_hda_mixer_bind_ctls_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1d5a833e snd_hda_add_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1eaa3050 snd_hda_codec_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x1fa52e1d snd_hda_codec_set_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x246cbeaa snd_hda_activate_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x26aa517d snd_hda_codec_resume_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x26dd6058 snd_hda_codec_setup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x29d5864d snd_hda_get_path_from_idx +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x29db6cb2 snd_hda_codec_set_power_to_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2a34ac35 snd_hda_mixer_amp_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2e1682ba snd_hda_parse_pin_defcfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x2ef91a37 snd_hda_mixer_amp_switch_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x32ba0d4d snd_hda_correct_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x337f3450 snd_hda_multi_out_dig_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x33c4d41d snd_hda_mixer_amp_switch_get_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3478735d snd_hda_codec_amp_update +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x356acce6 hda_get_autocfg_input_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x35849c55 snd_hda_gen_parse_auto_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3624b173 snd_hda_get_nid_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x36ea0581 snd_hda_codec_eapd_power_filter +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3741e8b1 snd_hda_gen_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x375346d8 snd_hda_get_int_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x375cacd5 snd_hda_input_mux_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x39acddf4 snd_hda_codec_amp_init_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3b3a1ffb snd_hda_create_dig_out_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3b5fbe64 snd_hda_multi_out_dig_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3d832485 snd_hda_override_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3de9326a snd_hda_override_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3f8f1eb9 snd_hda_jack_tbl_get_from_tag +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x3fc4ca09 snd_hda_add_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x401676ed snd_hda_codec_flush_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x418db8f4 snd_hda_queue_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x43a9d912 snd_hda_jack_tbl_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x43bf5a16 snd_hda_get_pin_label +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x445bfbf2 snd_hda_add_codec_preset +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x44f31f64 snd_hda_shutup_pins +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x45d5783b snd_hda_gen_spec_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4b250e14 snd_hda_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4d02a600 snd_hda_ch_mode_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4dab1f60 snd_hda_add_imux_item +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4e9aba50 snd_hda_jack_tbl_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x4f9b9b69 snd_hda_gen_build_controls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5174cc9b __snd_hda_codec_cleanup_stream +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x52403f37 snd_hda_gen_check_power_status +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5338a13a query_amp_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x53b14fac snd_hda_detach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x53f5304f snd_hda_enable_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x550d0946 snd_hda_mixer_amp_volume_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x556519de snd_hda_codec_get_pincfg +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x56e07296 snd_hda_jack_detect_enable_callback +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x594e64c5 snd_hda_codec_amp_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5a74d696 snd_hda_add_new_ctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5bcbf4e1 snd_hda_codec_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5ca1e55c snd_hda_is_supported_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5cbf85b9 _snd_hda_set_pin_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x5e624fb7 snd_hda_attach_beep_device +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6470378a snd_hda_jack_set_dirty_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6ca4b69d snd_hda_gen_update_outputs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x6f299572 snd_hda_multi_out_analog_open +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x71004187 snd_hda_load_patch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x722ee58c snd_hda_ctl_add +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x76dc6871 hda_main_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x78486a22 snd_hda_pick_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x79018b14 snd_hda_codec_amp_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7c7d80e1 snd_hda_sync_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x7f87c297 snd_hda_mixer_bind_switch_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x825feec9 snd_hda_multi_out_analog_cleanup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x83f9a28f snd_hda_codec_read +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x871a6e44 hda_extra_out_badness +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8771721f snd_hda_spdif_ctls_unassign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x878d5b47 snd_hda_sequence_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8dafbd51 snd_hda_jack_unsol_event +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8e4c6826 snd_hda_calc_stream_format +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x8f051b77 snd_hda_apply_pincfgs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x903c87e8 snd_hda_mixer_bind_ctls_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x93317657 snd_hda_jack_set_gating_jack +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x93c57a3e snd_hda_gen_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x94f131ea snd_hda_mixer_bind_ctls_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x98a4f8bb snd_hda_mixer_amp_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9a8e1877 snd_array_free +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9bc7e32c snd_hda_bus_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0x9e866462 snd_hda_jack_poll_all +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa0298911 snd_hda_mixer_bind_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa089bdf9 snd_hda_get_bool_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa118b048 snd_hda_jack_add_kctls +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa275020c snd_hda_mixer_amp_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa2827d76 snd_hda_get_jack_location +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa5e82d98 snd_hda_jack_detect_state +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xa5e8e3f4 snd_hda_mixer_amp_switch_put_beep +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xad9d683f snd_hda_get_conn_index +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xaf925199 snd_hda_gen_build_pcms +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb0808bf4 snd_hda_pin_sense +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb0a9a719 snd_hda_unlock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb16f6d04 snd_hda_get_sub_nodes +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb2c21849 snd_hda_input_mux_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb3cc4647 snd_hda_bus_reboot_notify +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb693873d snd_hda_query_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xb8dfd406 snd_hda_jack_detect_enable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbe68401f snd_hda_power_save +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbe7dd7dc snd_array_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xbfd5f90e snd_hda_ch_mode_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc19417c1 snd_hda_set_vmaster_tlv +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc42e79c1 __snd_hda_add_vmaster +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc48f66c9 snd_hda_codec_update_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc652fd69 snd_hda_get_jack_connectivity +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc80ce911 snd_hda_get_conn_list +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc8e42184 snd_hda_codec_set_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xc8ec8bb0 snd_hda_codec_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcb301b6e snd_hda_get_jack_type +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcc778993 snd_hda_create_spdif_share_sw +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcda040fa is_jack_detectable +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcdea0fea snd_hda_sequence_write +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xcfc82821 snd_hda_add_new_path +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd00b5226 snd_hda_get_hint +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd10e1ad5 snd_hda_codec_resume_amp +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd3394064 snd_hda_override_pin_caps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd7997c8c snd_hda_multi_out_dig_close +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd92a866a snd_hda_check_board_codec_sid_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xd981117d snd_hda_mixer_amp_volume_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdadb542e snd_hda_query_supported_pcm +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdaff5c90 snd_hda_resume +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdd4ca77f snd_hda_mixer_amp_volume_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdf6034c8 snd_hda_gen_spec_init +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xdff06fa0 snd_hda_gen_line_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe118de5d snd_pcm_2_1_chmaps +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe2526d07 snd_hda_find_mixer_ctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe45f5761 snd_hda_gen_mic_autoswitch +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe722b9ae snd_hda_codec_amp_stereo +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe7f62818 snd_hda_lock_devices +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe93cdc7c snd_hda_parse_generic_codec +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xe9d38253 snd_hda_codec_get_pin_target +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xea273481 snd_hda_add_vmaster_hook +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xea5971ad snd_hda_codec_write_cache +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeb923c37 snd_hda_check_board_config +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xebe193d9 snd_hda_bind_vol +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xed54df83 snd_hda_gen_hp_automute +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeda3a721 snd_print_pcm_bits +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xedc0e8a2 snd_hda_enum_helper_info +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xee1ec60a snd_hda_multi_out_analog_prepare +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xeea09c41 snd_hda_suspend +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xef8f8492 snd_hda_apply_verbs +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf23b0b9c snd_hda_ch_mode_put +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf363f766 snd_hda_jack_add_kctl +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf75d5a6a snd_hda_spdif_ctls_assign +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf7c66cae snd_hda_mixer_bind_switch_get +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xf9cfa658 snd_hda_codec_new +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfad7c468 snd_hda_codec_update_widgets +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfbd133e3 snd_hda_apply_fixup +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfbedd1ab snd_hda_spdif_out_of_nid +EXPORT_SYMBOL_GPL sound/pci/hda/snd-hda-codec 0xfe711ea8 snd_hda_gen_add_kctl +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0x3620bc4a atmel_pcm_mmap +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0xdf7be603 atmel_pcm_new +EXPORT_SYMBOL_GPL sound/soc/atmel/snd-soc-atmel-pcm 0xf9f2b908 atmel_pcm_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0165cc00 snd_soc_of_parse_audio_routing +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x025f7dc8 snd_soc_bytes_get +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0359e9cd snd_soc_dapm_add_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x06dceffb snd_soc_of_parse_daifmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0b12b3fd snd_soc_dapm_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x0d9a104c snd_soc_update_bits_locked +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x103a7f42 dapm_mark_io_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x1047a84b snd_soc_of_get_dai_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x10e1c0a5 snd_soc_limit_volume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x129f57d5 snd_soc_get_pcm_runtime +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x14e22092 snd_soc_codec_set_cache_io +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x159e4f7e snd_soc_add_platform_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x16ae9a9c snd_soc_dapm_get_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x188cc42e snd_soc_resume +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x21402ef5 snd_soc_get_dai_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x21b03e79 snd_soc_info_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x21eeb2eb snd_soc_put_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x235d5813 snd_soc_put_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x235f8246 snd_soc_test_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x24447569 snd_soc_set_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2541a979 snd_soc_calc_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x27edea35 snd_soc_dapm_disable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2a661936 dpcm_be_dai_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2b776698 snd_soc_dai_set_tdm_slot +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x2da37e76 snd_soc_jack_free_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x30ba29bd snd_soc_dai_set_sysclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x33801cfb devm_snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3521e87a snd_soc_add_card_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x367f5f93 snd_soc_remove_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3b1fd082 snd_soc_unregister_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3ccf6cb8 snd_soc_add_codec_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x3d652fa1 snd_soc_dai_set_clkdiv +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4109dcb1 snd_soc_set_runtime_hwparams +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4281af57 snd_soc_dapm_nc_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x451fefc9 snd_soc_register_card +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x457adc55 snd_soc_codec_writable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4702da1f snd_soc_add_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x472e5efe snd_soc_dapm_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4b46b808 snd_soc_dapm_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4ce6a1fa snd_soc_dpcm_be_get_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4f17025f snd_soc_put_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x4f525655 snd_soc_codec_readable_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x52f705a7 snd_soc_set_ac97_ops_of_reset +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x541783f8 snd_soc_cache_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x562c4417 snd_soc_dpcm_get_substream +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x59346871 snd_soc_dai_set_tristate +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x5b078176 snd_soc_dapm_put_enum_virt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6173b02e snd_soc_cache_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x67393a9b snd_soc_codec_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6831e47e snd_soc_dapm_mux_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x69a1964a snd_soc_dapm_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x69a86682 snd_soc_put_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x69dac1dd snd_soc_dapm_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x69eaeb46 snd_soc_unregister_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6b72bf91 snd_soc_jack_add_zones +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x6c1404ee snd_soc_poweroff +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x726d43e6 snd_soc_info_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x73820ced snd_soc_free_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x73d21f79 snd_soc_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x73ea78a3 snd_soc_dapm_mixer_update_power +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x75b1d47b snd_soc_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x75ff9aca snd_soc_info_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7666385a snd_soc_dapm_force_enable_pin +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x78076793 dapm_regulator_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x78cba7b3 snd_soc_jack_notifier_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x796014b0 snd_soc_bytes_put +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7bb836b0 snd_soc_register_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7e606130 snd_soc_calc_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x7f0aa72e snd_soc_get_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8018bb09 snd_soc_dapm_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x81ce14d8 snd_soc_cache_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8355d2ae snd_soc_pm_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x863f2954 snd_soc_dapm_info_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x873f1ab6 snd_soc_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x87b8aa0c snd_soc_jack_notifier_unregister +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x87be1e58 snd_soc_dapm_put_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8acf1a61 snd_soc_bytes_info +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8b79bd88 snd_soc_get_volsw_range +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8e840585 snd_soc_info_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8f651bc2 snd_soc_dapm_put_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x8fb788bb snd_soc_dpcm_be_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x92abfe75 snd_soc_platform_trigger +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9331d94a snd_soc_platform_write +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x97c0cbfc snd_soc_dai_set_channel_map +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x984caaf7 snd_soc_get_volsw_s8 +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9893e3f2 snd_soc_jack_new +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9974ba8e snd_soc_codec_volatile_register +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x99b4ae4c snd_soc_register_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9d663659 snd_soc_dapm_free +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0x9ddb7c24 snd_soc_put_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa1bda4e3 dapm_clock_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa251473d snd_soc_get_xr_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa8b43991 snd_soc_dapm_weak_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xa919f66e snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb0c7217c snd_soc_put_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb6e5794d snd_soc_dapm_ignore_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb8d9fca8 snd_soc_lookup_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xb8df5f4b snd_soc_update_bits +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbb8940cd snd_soc_dpcm_be_set_state +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbc50cb50 snd_soc_jack_add_gpios +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbcffc1a0 snd_soc_dai_digital_mute +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbf0ee959 snd_soc_put_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xbf5d5687 snd_soc_add_dai_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc09c5870 snd_soc_dapm_kcontrol_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc480d4c7 snd_soc_jack_get_type +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc5c8d3fc snd_soc_card_get_kcontrol +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc8269f94 snd_soc_params_to_frame_size +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xc92d2e17 snd_soc_new_ac97_codec +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcae5e34f snd_soc_debugfs_root +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcc134138 devm_snd_soc_register_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xce92200a snd_soc_unregister_component +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xcff7b9bf snd_soc_dapm_get_pin_switch +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd1230170 snd_soc_dapm_get_pin_status +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd36f15c2 snd_soc_cnew +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd425d003 snd_soc_of_parse_card_name +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd43e5e45 snd_soc_get_value_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd5c2b4f0 snd_soc_info_enum_double +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd662732e snd_soc_dpcm_fe_can_update +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd6848b4a snd_soc_dapm_sync +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xd7fcbb7e snd_soc_platform_read +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdaca381b snd_soc_jack_report +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xddf90084 dapm_reg_event +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdf9b9022 snd_soc_dpcm_can_be_free_stop +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xdff4e968 snd_soc_get_strobe +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe008f518 snd_soc_dapm_new_widgets +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe4b9ce24 soc_ac97_ops +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe5b01581 snd_soc_dai_set_pll +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe7722522 snd_soc_dai_set_fmt +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xe7858454 snd_soc_dapm_new_controls +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xea8372cd snd_soc_dpcm_can_be_params +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xeb711ae7 snd_soc_params_to_bclk +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xee454476 dapm_mark_dirty +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf06deaaf snd_soc_get_volsw +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf0858c78 snd_soc_suspend +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf1dd478b snd_soc_unregister_platform +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf406f0bb snd_soc_get_volsw_sx +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf79e3d57 snd_soc_dai_set_bclk_ratio +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xf9a92175 snd_soc_jack_add_pins +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfa051b7a snd_soc_dapm_del_routes +EXPORT_SYMBOL_GPL sound/soc/snd-soc-core 0xfc1dd5b2 snd_soc_codec_set_sysclk +EXPORT_SYMBOL_GPL vmlinux 0x00000000 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x00000000 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x00000000 compat_alloc_user_space +EXPORT_SYMBOL_GPL vmlinux 0x00000000 kern_mount_data +EXPORT_SYMBOL_GPL vmlinux 0x00000000 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x00000000 register_spu_syscalls +EXPORT_SYMBOL_GPL vmlinux 0x00000000 sigset_from_compat +EXPORT_SYMBOL_GPL vmlinux 0x00000000 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x000a2d2e ata_eh_qc_retry +EXPORT_SYMBOL_GPL vmlinux 0x0011fd9d thermal_generate_netlink_event +EXPORT_SYMBOL_GPL vmlinux 0x0029e81f tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x006bc072 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0070ef14 __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0x007c7481 alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0x0081a4e0 pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x009304b6 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x00b7d1a7 unregister_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0x00c4dc87 timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x00ebcb5d ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0x01010c6d klist_add_before +EXPORT_SYMBOL_GPL vmlinux 0x01087a5a pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x011cf028 regulator_suspend_finish +EXPORT_SYMBOL_GPL vmlinux 0x01229c46 tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x012e1a69 __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0x013845a9 regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x013e544d thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x015a91c3 pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x01735baa regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x01760708 tpm_store_cancel +EXPORT_SYMBOL_GPL vmlinux 0x018557d6 debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0x0191ed5e tpm_show_enabled +EXPORT_SYMBOL_GPL vmlinux 0x01d12bba regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0x01d67d8f iommu_clear_tce +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01f8f3c3 device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0208c05a __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x021ebfda btree_update +EXPORT_SYMBOL_GPL vmlinux 0x023a0c13 verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x02543cba ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0x029a4c81 pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0x029c2860 tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0x02c77a97 posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x02cd9996 ablkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0x02fe5fe1 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0334ec6f jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x03419a12 pmac_i2c_get_controller +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x036e3178 srp_attach_transport +EXPORT_SYMBOL_GPL vmlinux 0x03a2e9b4 ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x03e3686c ata_timing_cycle2mode +EXPORT_SYMBOL_GPL vmlinux 0x03e86e03 device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x0406ec37 __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0x040aa2e3 tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0x040ec585 dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0x043a08a8 pci_intx +EXPORT_SYMBOL_GPL vmlinux 0x04486e88 rcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x0458162e simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x047a51e9 sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0x048b5f8d twl4030_audio_get_mclk +EXPORT_SYMBOL_GPL vmlinux 0x049f2a2d rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0x04b5549c __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04c66a87 ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0x04d3d7ee sdhci_pci_o2_fujin2_pci_init +EXPORT_SYMBOL_GPL vmlinux 0x04df8fbc lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0x04e66a01 inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x050951dd blk_queue_bypass_end +EXPORT_SYMBOL_GPL vmlinux 0x050b1381 __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x052cfbf4 regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x053494cb tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x0551f0ce tick_nohz_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x05805373 trace_buffer_unlock_commit_regs +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x0599776c crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0x05a122cb disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x05bc2f6f ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0x05e9c17a sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0x05f24ee4 fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0x05f2e819 tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x05feef94 vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0x06088cd5 ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0x060d9419 pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0x061dee59 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0x062569e3 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x06346d38 regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x065c4c5f dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0x0666a968 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0x068ed349 ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0x06992928 led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x06a695ae __blk_put_request +EXPORT_SYMBOL_GPL vmlinux 0x06b7bf18 pwm_request +EXPORT_SYMBOL_GPL vmlinux 0x06d56000 dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0x06e015da crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x06f9adf7 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0x07022e8e bsg_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x07080b6f ps3_vuart_read +EXPORT_SYMBOL_GPL vmlinux 0x070a57a0 shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x072edd79 call_srcu +EXPORT_SYMBOL_GPL vmlinux 0x074e7e05 rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x0762403c edac_put_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x07aadf5b pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07d53981 pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x07d6dfc0 blk_add_request_payload +EXPORT_SYMBOL_GPL vmlinux 0x08023d87 __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0x083c6795 eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0x088bfa7e cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x08963b53 swiotlb_map_page +EXPORT_SYMBOL_GPL vmlinux 0x08bc0870 compat_put_timespec +EXPORT_SYMBOL_GPL vmlinux 0x0906062f usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0x0915f321 pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0x091c824a machine_power_off +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x09229cdb ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x09376b10 hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x093912a5 dbs_check_cpu +EXPORT_SYMBOL_GPL vmlinux 0x09437748 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x09469482 kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x096bc82e __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0x09830fd1 ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0x0993c5d9 ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0x09d54177 hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0x0a062d30 sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0x0a087149 subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x0a4d7e98 debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x0a51ae5b virq_to_hw +EXPORT_SYMBOL_GPL vmlinux 0x0a5f9c24 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x0a803553 blk_queue_rq_timed_out +EXPORT_SYMBOL_GPL vmlinux 0x0a913f99 crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x0a9fd3c5 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x0aa05c83 pmac_low_i2c_lock +EXPORT_SYMBOL_GPL vmlinux 0x0aa19435 init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0x0aa2bbdc sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0x0ae63b34 register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b11aedb blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x0b6807b3 tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x0b75b3ef get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0x0bae62b1 ktime_get_monotonic_offset +EXPORT_SYMBOL_GPL vmlinux 0x0bb094fb ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0x0bb31880 pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x0bfa3a19 rcu_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x0c047bdb ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x0c0c015e ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0x0c0e71b9 irq_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0x0c103a0d nl_table +EXPORT_SYMBOL_GPL vmlinux 0x0c24e433 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0x0c2cdbf1 synchronize_sched +EXPORT_SYMBOL_GPL vmlinux 0x0c496529 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0x0c5b4b4d device_attach +EXPORT_SYMBOL_GPL vmlinux 0x0cb4f3ae pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x0cbd1858 irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x0cc1e40f crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x0ccf8cdf skb_morph +EXPORT_SYMBOL_GPL vmlinux 0x0cd27129 balloon_mapping_alloc +EXPORT_SYMBOL_GPL vmlinux 0x0cd3fa10 usb_bus_list_lock +EXPORT_SYMBOL_GPL vmlinux 0x0d2c6d82 usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x0d70f2e3 crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0x0d71fe60 extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0d77d3bb pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0d835cf3 crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x0da48dd7 usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0de06988 cpu_first_thread_of_core +EXPORT_SYMBOL_GPL vmlinux 0x0df5e4a6 ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x0dfc9d40 inet_csk_compat_setsockopt +EXPORT_SYMBOL_GPL vmlinux 0x0e34c86b register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x0e36ffd3 blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0x0e46780f tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x0e4ea5c9 of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0x0e8a3cb4 power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0x0e9654f5 adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0x0ea5334a class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0eb368f0 pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0x0ecf823a static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x0ed9302e percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x0ee67fea devres_alloc +EXPORT_SYMBOL_GPL vmlinux 0x0ef1207a blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x0f013232 srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0x0f34566c sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0x0f51fb50 ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0x0f60c431 regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x0f63e3aa exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x0f751aea input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0x0f778460 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0x0f9aefdd uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x0fc506c9 da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0x0fdba249 pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0x0fe112dc of_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x0ffc568b ping_err +EXPORT_SYMBOL_GPL vmlinux 0x100231fa seq_release_net +EXPORT_SYMBOL_GPL vmlinux 0x100f44a2 eeh_add_sysfs_files +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x1028daa9 da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x10306cb5 pci_configure_slot +EXPORT_SYMBOL_GPL vmlinux 0x106e4c4d crypto_larval_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1085a4f0 usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x108ff55a cgroup_unload_subsys +EXPORT_SYMBOL_GPL vmlinux 0x10daf75f __ablkcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x10ee8c01 transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0x110a888a ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0x1111c373 get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0x1114011d threads_shift +EXPORT_SYMBOL_GPL vmlinux 0x1124c2dd hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1143f40e cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x115e30ff ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x11633cc3 pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x1172ce54 rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0x11e7bb47 usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0x121cd964 of_pci_range_parser_one +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x121ed3f3 add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0x12459295 get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x124f2056 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x126531a3 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x127bc6f0 ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x12a70d95 wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x12bcd0b1 dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x12df5c23 devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x12e08c77 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0x13054394 invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0x131559cb blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x1333d8b3 ps3av_video_mode2res +EXPORT_SYMBOL_GPL vmlinux 0x136a4dd2 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x136a4ee6 btree_init +EXPORT_SYMBOL_GPL vmlinux 0x1378c31d flush_altivec_to_thread +EXPORT_SYMBOL_GPL vmlinux 0x13913d9e tpm_show_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x13ad647f scatterwalk_bytes_sglen +EXPORT_SYMBOL_GPL vmlinux 0x13ce87e8 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0x13e5ea13 __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0x1416c8d6 put_compat_timeval +EXPORT_SYMBOL_GPL vmlinux 0x143506d0 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0x1458bcea irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x145d3c1d dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1487427e clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x149eabef sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0x14be7c21 pcibios_remove_pci_devices +EXPORT_SYMBOL_GPL vmlinux 0x14c21d12 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x15026a32 snmp_mib_init +EXPORT_SYMBOL_GPL vmlinux 0x150a9171 spu_invalidate_slbs +EXPORT_SYMBOL_GPL vmlinux 0x154c9463 crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x158728ac tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0x15892417 async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x1594a67f bio_clone_mddev +EXPORT_SYMBOL_GPL vmlinux 0x15a3e47b regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x15c21e5e nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x15c81c0c vtime_guest_exit +EXPORT_SYMBOL_GPL vmlinux 0x15e8b0f8 preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x16000a3c dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x16115417 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x16127060 usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x16244dac __init_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0x162f4733 usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0x1639f74a led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x163a9166 sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0x163ea45a pmf_call_function +EXPORT_SYMBOL_GPL vmlinux 0x1650bf27 rcutorture_record_progress +EXPORT_SYMBOL_GPL vmlinux 0x16518dfe sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0x1652445d sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0x16644d5b fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0x1673f22e iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0x16756b2b ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0x1695c566 cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x16a0b1e8 iommu_tce_clear_param_check +EXPORT_SYMBOL_GPL vmlinux 0x16bc4883 spu_associate_mm +EXPORT_SYMBOL_GPL vmlinux 0x16dd875f do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x171a374b rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0x173d6da3 cpu_add_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0x173e6e46 sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0x1753a32f hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0x17627fc0 led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0x17647983 usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0x176f40ed pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x177c338d twl_get_version +EXPORT_SYMBOL_GPL vmlinux 0x17a3ab3c pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0x17a51a4d crypto_alloc_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x17a722cf dma_buf_kmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x181b28f7 blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x183104bc pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x183a5992 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0x1848d7d7 __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0x1853653c btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x18570516 pmac_i2c_xfer +EXPORT_SYMBOL_GPL vmlinux 0x18625470 sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x1866cec2 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x1878f62b edac_err_assert +EXPORT_SYMBOL_GPL vmlinux 0x18876f04 rq_flush_dcache_pages +EXPORT_SYMBOL_GPL vmlinux 0x189c9ffe dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x189f874d powernv_get_random_long +EXPORT_SYMBOL_GPL vmlinux 0x18ebb3ad pcibios_finish_adding_to_bus +EXPORT_SYMBOL_GPL vmlinux 0x18ec36c3 regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0x1913d925 page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x1916d223 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0x193d48e0 trace_current_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x193da0ca sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x194dd5f5 pkey_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x19831847 device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x19883b13 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19af1742 i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0x19b31344 alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0x19b384a5 hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x19bc067f tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0x19c1937d pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x19d5a32b ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x19f055a6 usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0x19f830d2 usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0x1a02031c fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0x1a03c1a5 ping_proc_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1a082d69 max77693_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x1a21a5b7 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0x1a323362 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x1a63a8b0 scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x1a64ce00 device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x1a8c5907 btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x1abe216d irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0x1ac717e3 ps3_os_area_get_rtc_diff +EXPORT_SYMBOL_GPL vmlinux 0x1ac86878 fuse_conn_kill +EXPORT_SYMBOL_GPL vmlinux 0x1acef7d2 pm_freezing +EXPORT_SYMBOL_GPL vmlinux 0x1ad4b360 spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x1aed1cab find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x1b18736b regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1b18fa3a ping_proc_register +EXPORT_SYMBOL_GPL vmlinux 0x1b286bf9 __ip_route_output_key +EXPORT_SYMBOL_GPL vmlinux 0x1b4a181d wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0x1b546509 arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x1b87a2c9 dma_buf_export_named +EXPORT_SYMBOL_GPL vmlinux 0x1b90777e __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x1b9664d1 __destroy_context +EXPORT_SYMBOL_GPL vmlinux 0x1b9aca3f jprobe_return +EXPORT_SYMBOL_GPL vmlinux 0x1ba48b7d fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x1bc9477d restore_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x1bcadf0e pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x1bd06aab cpufreq_frequency_table_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x1bd5e8fd agp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x1bed371e remove_irq +EXPORT_SYMBOL_GPL vmlinux 0x1c2fb67c put_device +EXPORT_SYMBOL_GPL vmlinux 0x1c3901f5 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c67f56b __percpu_ida_init +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1ca36ab9 tcp_init_congestion_ops +EXPORT_SYMBOL_GPL vmlinux 0x1caa928e thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1cb035ed usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x1cc934fa pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x1cdb2147 zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0x1cdc7057 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0x1cec5940 power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x1cf82066 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0x1d09cd0d i2c_new_dummy +EXPORT_SYMBOL_GPL vmlinux 0x1d1312aa tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0x1d34a05e anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x1d4d010d shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x1d58ae14 lpddr2_jedec_timings +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1da5882f spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x1daf3da9 pci_reset_bridge_secondary_bus +EXPORT_SYMBOL_GPL vmlinux 0x1db652e9 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0x1dd3e5d2 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0x1dfbcf4c mpic_msgr_disable +EXPORT_SYMBOL_GPL vmlinux 0x1e090960 ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0x1e42fe40 ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0x1e5b03dc pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1eb1594f gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ed6d158 pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x1ed98ea5 sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0x1f39819d posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0x1f537f4b bus_register +EXPORT_SYMBOL_GPL vmlinux 0x1f53a637 __online_page_set_limits +EXPORT_SYMBOL_GPL vmlinux 0x1f6002d5 blk_queue_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x1f7115f7 bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x1f7c301b regmap_write +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f8d064d rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0x1f8db7f9 ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x1fa086a6 ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0x1fa822d4 regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0x1fcece42 inet_twdr_twcal_tick +EXPORT_SYMBOL_GPL vmlinux 0x1fe27240 crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0x1fe66ccd ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x1fe970cb ps3_io_irq_setup +EXPORT_SYMBOL_GPL vmlinux 0x2006c23e realmode_pfn_to_page +EXPORT_SYMBOL_GPL vmlinux 0x20151fb1 debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x204eb579 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0x207f9de9 macio_find +EXPORT_SYMBOL_GPL vmlinux 0x20b31324 bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0x20bc3470 orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x211850f5 htab_hash_mask +EXPORT_SYMBOL_GPL vmlinux 0x211b315e wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0x216d5d68 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0x21ac8b77 iommu_group_get_by_id +EXPORT_SYMBOL_GPL vmlinux 0x21c43ad4 blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0x21d36a03 kvm_hypercall +EXPORT_SYMBOL_GPL vmlinux 0x22083514 regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x222a2789 task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0x222c6d87 debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0x2251dd82 debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0x2252b12b rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x22601aa9 pci_msi_off +EXPORT_SYMBOL_GPL vmlinux 0x22660691 wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0x2266ff38 usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0x2286f5cc max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x2296c00d crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x22dafb6c ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0x2307fce3 register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x23219f1e usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0x23288960 max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x2367833d bio_trim +EXPORT_SYMBOL_GPL vmlinux 0x2379312e ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x23bf1496 rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x23c5b389 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x24011e14 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x24296479 sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0x2447533c ktime_get_real +EXPORT_SYMBOL_GPL vmlinux 0x2457d495 rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0x245df1ba balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x24729e8c dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x2473b656 pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x24aac4d9 crypto_aes_expand_key +EXPORT_SYMBOL_GPL vmlinux 0x24d79350 ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x24e88a0d ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f12f7a ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x24f49e1a __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x25071c6a dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x25654142 mdio_mux_init +EXPORT_SYMBOL_GPL vmlinux 0x25706398 ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0x257f32f8 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0x25b300ce debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x25d11dcf iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0x262f20a8 local_clock +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x265ee9dd blk_queue_dma_drain +EXPORT_SYMBOL_GPL vmlinux 0x26666286 pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x26693998 tcp_reno_min_cwnd +EXPORT_SYMBOL_GPL vmlinux 0x2692911c aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x26ad9f4b cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0x26b71fb4 ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26c98c0c dm_underlying_device_busy +EXPORT_SYMBOL_GPL vmlinux 0x26f6a1ee crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x2704ce30 regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0x271d92ee regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0x2739487d dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0x274fcd85 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0x27527cbd ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x275e8937 sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0x27697caf skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0x2776affd blocking_notifier_chain_cond_register +EXPORT_SYMBOL_GPL vmlinux 0x27ab1df7 regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x27c0c4be eventfd_ctx_read +EXPORT_SYMBOL_GPL vmlinux 0x27c1e63f usb_amd_find_chipset_info +EXPORT_SYMBOL_GPL vmlinux 0x27e030e9 debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x2864d8d9 rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x286d956f pmf_unregister_irq_client +EXPORT_SYMBOL_GPL vmlinux 0x287655d2 pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x2878a149 usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0x287b8ff8 sock_update_netprioidx +EXPORT_SYMBOL_GPL vmlinux 0x2888d9e3 class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x289435ed pstore_register +EXPORT_SYMBOL_GPL vmlinux 0x2895e747 __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0x28a903c8 timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x28adc3da smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x28afbfef dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x28b162bb sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0x29021082 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x2929ab46 relay_flush +EXPORT_SYMBOL_GPL vmlinux 0x292f24ed regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x2930223f __put_net +EXPORT_SYMBOL_GPL vmlinux 0x293debd2 dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0x295c7677 rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0x29722e6d iommu_domain_window_enable +EXPORT_SYMBOL_GPL vmlinux 0x298b935a inet_hash +EXPORT_SYMBOL_GPL vmlinux 0x29b53887 shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x29f8fd78 da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0x2a022354 ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0x2a11b988 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0x2a14e491 ata_sas_port_async_resume +EXPORT_SYMBOL_GPL vmlinux 0x2a235a4e pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x2a26b179 sec_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a88150a spu_setup_kernel_slbs +EXPORT_SYMBOL_GPL vmlinux 0x2a999c72 rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x2aa5c11a devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2ad1ece4 zs_get_total_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0x2ad94ffc napi_by_id +EXPORT_SYMBOL_GPL vmlinux 0x2af32834 register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x2af8e76a ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0x2b238259 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x2b5c303b smp_send_reschedule +EXPORT_SYMBOL_GPL vmlinux 0x2b6f7c30 cpu_remove_dev_attr_group +EXPORT_SYMBOL_GPL vmlinux 0x2b7a6de8 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2b7b71f4 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0x2b8d90c0 kobj_completion_del_and_wait +EXPORT_SYMBOL_GPL vmlinux 0x2bd1b5bd pci_pri_status +EXPORT_SYMBOL_GPL vmlinux 0x2bf38b51 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x2bf4730c blkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0x2c0fc83f fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0x2c1789a6 console_drivers +EXPORT_SYMBOL_GPL vmlinux 0x2c1f50b1 tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c39b3db pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0x2c6639b1 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c97f8a2 of_reconfig_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x2c999f74 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0x2cc3e675 pmac_i2c_close +EXPORT_SYMBOL_GPL vmlinux 0x2ce98559 kcrypto_wq +EXPORT_SYMBOL_GPL vmlinux 0x2d17a0e1 cgroup_taskset_size +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d59c954 edac_handlers +EXPORT_SYMBOL_GPL vmlinux 0x2d656d3f context_tracking_enabled +EXPORT_SYMBOL_GPL vmlinux 0x2d6aa08d devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x2d6ac651 ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x2d756362 dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x2d7c1ee3 fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0x2d9cdfa3 iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0x2dba276a __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x2dc5a6d1 btree_last +EXPORT_SYMBOL_GPL vmlinux 0x2dc9705d sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0x2ddd887e reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2dde82a4 device_del +EXPORT_SYMBOL_GPL vmlinux 0x2df4d4cf rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x2e1da9fb probe_kernel_read +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e2f1740 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2e2ff4d1 crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0x2e4136e8 ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x2e45e488 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x2e45f4d3 perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0x2e619871 sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0x2e814f60 iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x2ea075ec crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ec493ff alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0x2ecfeb82 of_node_to_nid +EXPORT_SYMBOL_GPL vmlinux 0x2eea3832 rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x2f06137f sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f19c278 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0x2f1f9829 __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0x2f24cb81 debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f502228 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x2f9211aa smu_get_ofdev +EXPORT_SYMBOL_GPL vmlinux 0x2fb73641 subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x2fc6dfd5 devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x2fca317b pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0x2fd8cba9 freeze_wake +EXPORT_SYMBOL_GPL vmlinux 0x2fe199f6 rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0x2ff3db01 relay_open +EXPORT_SYMBOL_GPL vmlinux 0x2ffb5ff7 btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0x30066ca4 pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0x3006b6f5 of_pci_get_devfn +EXPORT_SYMBOL_GPL vmlinux 0x301a6073 ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x30324b98 ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x30539cc2 ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0x307415a4 of_irq_parse_pci +EXPORT_SYMBOL_GPL vmlinux 0x30747af0 inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x308b733a getboottime +EXPORT_SYMBOL_GPL vmlinux 0x30b243e2 iommu_domain_has_cap +EXPORT_SYMBOL_GPL vmlinux 0x30ba968c led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0x30e77854 usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0x3109b751 cpu_clock +EXPORT_SYMBOL_GPL vmlinux 0x311b78c2 ps3_get_spe_id +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x31416334 regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0x315b143a class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x316ed769 dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0x31859993 of_irq_to_resource_table +EXPORT_SYMBOL_GPL vmlinux 0x3193fef3 regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x31ae9dfb sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x31c0c2d1 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x31c3750c set_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x321bdbb1 compat_get_timeval +EXPORT_SYMBOL_GPL vmlinux 0x323b91ee dma_buf_kmap +EXPORT_SYMBOL_GPL vmlinux 0x323f46ab root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3256ca45 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x328995b5 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0x329bbbde timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x32aac51d blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0x32b31a8c ktime_get_boottime +EXPORT_SYMBOL_GPL vmlinux 0x32b80cb6 yield_to +EXPORT_SYMBOL_GPL vmlinux 0x32bded08 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32c80375 kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x32cafc8b srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x32dc4c12 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x32fd447a monotonic_to_bootbased +EXPORT_SYMBOL_GPL vmlinux 0x3309ea64 ps3av_audio_mute +EXPORT_SYMBOL_GPL vmlinux 0x330c82fa rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3310bf11 pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x33595893 ps3_vuart_port_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x336154ca rcutorture_record_test_transition +EXPORT_SYMBOL_GPL vmlinux 0x337786fa usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x3380b5b1 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x33a94a45 of_irq_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x33d2c053 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0x33ed52af rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0x33f47428 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x33f7ab15 get_compat_timespec +EXPORT_SYMBOL_GPL vmlinux 0x33ff7f67 spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0x3438630a usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x34585762 ahash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0x346047c7 bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x3465fce6 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0x3466eb92 powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0x34720f44 __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x347fd4b3 eventfd_ctx_get +EXPORT_SYMBOL_GPL vmlinux 0x3491d8e2 kill_pid_info_as_cred +EXPORT_SYMBOL_GPL vmlinux 0x34b58e94 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0x34c7b6fa rtc_irq_set_state +EXPORT_SYMBOL_GPL vmlinux 0x34d3ba51 devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x34d65c76 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0x350af88f ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x350dffe6 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x35312469 thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0x358ff60f twl_get_hfclk_rate +EXPORT_SYMBOL_GPL vmlinux 0x35ccd52d da903x_write +EXPORT_SYMBOL_GPL vmlinux 0x35de4487 crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x35eeaa88 perf_trace_buf_prepare +EXPORT_SYMBOL_GPL vmlinux 0x35f010d1 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x35f10f43 nfq_ct_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x35f165f1 devm_reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x35f3928c ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0x36075bb5 iommu_group_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x3618a8eb __blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x361e2bcc save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0x3672c094 regmap_update_bits_check_async +EXPORT_SYMBOL_GPL vmlinux 0x367dc04d tpm_release +EXPORT_SYMBOL_GPL vmlinux 0x368dfd2e single_release_net +EXPORT_SYMBOL_GPL vmlinux 0x368f1fea static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36ec131e rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x36f63718 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0x370ae2a2 dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x372ce191 usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x3741fbb0 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x37750459 device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x3788bf20 ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0x37945aae bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x37b48662 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0x37bccd17 regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0x37cf299f pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x37e01a1c pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x37f09630 usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x380c6275 pcibios_map_io_space +EXPORT_SYMBOL_GPL vmlinux 0x38226777 tpm_dev_vendor_release +EXPORT_SYMBOL_GPL vmlinux 0x384930ae task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x3878279f __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x389a7fe4 ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0x38dd713c xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0x39099bfd eeh_add_device_tree_early +EXPORT_SYMBOL_GPL vmlinux 0x3940acf6 crypto_alloc_ablkcipher +EXPORT_SYMBOL_GPL vmlinux 0x397ef9ad crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x397fdc26 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x39bf1527 wm8400_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x39f61c73 acop_handle_fault +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a2b0e9a devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x3a2f27a6 inet_csk_compat_getsockopt +EXPORT_SYMBOL_GPL vmlinux 0x3a451e9d devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3a4b2a11 rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a5b3bac usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0x3a71b30c evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x3a877fe5 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x3a9b4e79 fb_ddc_read +EXPORT_SYMBOL_GPL vmlinux 0x3aa56e41 rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x3aa729e7 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x3acc8eb1 wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x3acdf325 twl4030_audio_enable_resource +EXPORT_SYMBOL_GPL vmlinux 0x3ad0e201 scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x3ad82802 of_property_read_u32_index +EXPORT_SYMBOL_GPL vmlinux 0x3ae3c136 zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0x3b0bd0c0 ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x3b1270c7 sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x3b1c5afc ps3_vuart_irq_setup +EXPORT_SYMBOL_GPL vmlinux 0x3b3705be usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0x3b49c59c need_load_eval +EXPORT_SYMBOL_GPL vmlinux 0x3b4dc16e pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0x3bb52f3f stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x3bb63c77 usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0x3bc06300 sk_unattached_filter_create +EXPORT_SYMBOL_GPL vmlinux 0x3bcd79bb sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x3beb9ed9 sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0x3c1c86a2 crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x3c4af742 crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0x3c4b73be extcon_find_cable_index +EXPORT_SYMBOL_GPL vmlinux 0x3c8d28cc of_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x3c9390db pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0x3cb51d77 bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0x3ccffec8 of_irq_parse_one +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cd4e4ab sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x3cddfb84 ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0x3ce3691c ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0x3cf69baf slice_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0x3d0992ab dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x3d0c395a tcp_is_cwnd_limited +EXPORT_SYMBOL_GPL vmlinux 0x3d1d589d __scsi_get_command +EXPORT_SYMBOL_GPL vmlinux 0x3d3407c9 regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d39b6ab fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0x3d3db60c spu_get_profile_private_kref +EXPORT_SYMBOL_GPL vmlinux 0x3d5b0606 rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x3d6d727f rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0x3d8580e1 devm_usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x3d8739fa ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0x3d909ca0 crypto_lookup_aead +EXPORT_SYMBOL_GPL vmlinux 0x3daf9e4b pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0x3dc526a9 arizona_of_match +EXPORT_SYMBOL_GPL vmlinux 0x3dc916b6 crypto_fl_tab +EXPORT_SYMBOL_GPL vmlinux 0x3dd2373b crypto_rng_type +EXPORT_SYMBOL_GPL vmlinux 0x3dd89414 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3de9e00b dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0x3dfde3ac pmf_get_function +EXPORT_SYMBOL_GPL vmlinux 0x3e2e543d cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x3e2fa31f wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3e58d5bf irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e971b8d regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3ea938fe ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x3eb66ec0 pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x3ed636d6 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3ee0b1f9 regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x3efb35c9 get_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0x3f19ecde ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0x3f54b39f scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x3f7218b0 ftrace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x3facad67 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x3fb14423 md_ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x3fc15453 __add_pages +EXPORT_SYMBOL_GPL vmlinux 0x3fc70319 hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3fc72d3d __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x3fd74da2 con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0x3fe78a9d usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x3fef7431 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x4007ded4 tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x400ec3a6 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0x40206458 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x4045c494 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0x4059a3ef __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0x4065d168 pm_print_active_wakeup_sources +EXPORT_SYMBOL_GPL vmlinux 0x4084024c isa_bridge_pcidev +EXPORT_SYMBOL_GPL vmlinux 0x40acbb0b platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0x40af0dec ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x40bd2151 pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x40d46b21 crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x40d686f0 ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x40fff8d0 usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0x41072664 pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0x411b8fd4 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x41755269 ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x418f60c8 sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x41bf9857 ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0x41c9cbc3 devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x41d81c5d of_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x41f1babf pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x41ff8d43 usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x420c108f device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x42271ed8 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x424acc6d scatterwalk_done +EXPORT_SYMBOL_GPL vmlinux 0x42593ba6 ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0x42676adf dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0x427d2f7c regmap_update_bits_async +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x429b0119 ata_base_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x430e5257 of_alias_get_id +EXPORT_SYMBOL_GPL vmlinux 0x433290ca blkg_stat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x433ced18 platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0x43450872 each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x434e3985 inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x4371b57a __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x437f70e8 dev_get_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x4381deeb blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x43a53735 __alloc_workqueue_key +EXPORT_SYMBOL_GPL vmlinux 0x43b4574f ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0x43d8d8b4 unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0x43e3aac2 __pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x440e5ad9 stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0x4417375a sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0x44383d5e inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0x44404f11 kdb_register_repeat +EXPORT_SYMBOL_GPL vmlinux 0x4452ad42 extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x4465de48 __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0x4474b7db usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x44bb7fcc inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x44ce97bb sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x44d013de pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x44e1a1f3 cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0x44e8b31f ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0x44eacfc2 of_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x4504c397 lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0x450fb522 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x4525386d dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x454c15ae __smp_call_function_single +EXPORT_SYMBOL_GPL vmlinux 0x45558fdc get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0x456e189a fsnotify +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x457ab979 blkg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x457e8c9f ref_module +EXPORT_SYMBOL_GPL vmlinux 0x459202d0 crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x459995b7 tpm_show_pubek +EXPORT_SYMBOL_GPL vmlinux 0x45ae0c5e stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0x45bf1ff3 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x45c17e34 rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x45d9f6d1 pcibios_unmap_io_space +EXPORT_SYMBOL_GPL vmlinux 0x45decf75 crypto_init_shash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x45ef8ce1 ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0x460f7531 wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x46194a2d usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x4650d403 blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0x4667772f anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4672e88b __crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x467e4586 __netpoll_free_async +EXPORT_SYMBOL_GPL vmlinux 0x4688c96a usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x469183a2 platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0x46a090e3 inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x46c294e0 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x46d9f955 ps3_irq_plug_setup +EXPORT_SYMBOL_GPL vmlinux 0x46eaeca5 pmac_i2c_find_bus +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x4730bb71 pwm_enable +EXPORT_SYMBOL_GPL vmlinux 0x4741db42 ps3av_set_audio_mode +EXPORT_SYMBOL_GPL vmlinux 0x4758fb0a skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x47718787 xattr_getsecurity +EXPORT_SYMBOL_GPL vmlinux 0x4775ac84 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x47768e24 kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x477a6ec6 cpufreq_frequency_get_table +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47acddea ps3_sys_manager_set_wol +EXPORT_SYMBOL_GPL vmlinux 0x47b21077 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x47b5975f device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x47d1056d irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x47e90180 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x47fa69f7 trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x480cc1de crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0x48344277 tps65912_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x484e530a extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0x4855a127 irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0x486aac09 ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0x4880efcc extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x48e41c94 kallsyms_on_each_symbol +EXPORT_SYMBOL_GPL vmlinux 0x48edca7e gpio_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x49070fee crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0x49254f2a crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x493da0aa ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x493efbc7 lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0x4942b5e3 regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0x4953cb3d ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0x498b0457 usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x498d293a trace_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x49c136cd pmac_i2c_get_dev_addr +EXPORT_SYMBOL_GPL vmlinux 0x49ca0402 irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0x49e2808d inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0x49f93731 cpufreq_governor_dbs +EXPORT_SYMBOL_GPL vmlinux 0x4a03d41a stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0x4a90160e bprintf +EXPORT_SYMBOL_GPL vmlinux 0x4aadeb9a ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0x4abdb661 crypto_alg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x4ad30558 usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0x4ad36d11 tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x4ae40fde cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0x4affd08b put_compat_timespec +EXPORT_SYMBOL_GPL vmlinux 0x4b0baf0c usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0x4b14e8f1 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x4b2906f8 tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0x4b3e5005 spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x4b57649a rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x4b606a0f spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x4b6573b5 shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0x4b7aba9f spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x4b8aa987 device_reset +EXPORT_SYMBOL_GPL vmlinux 0x4bc62a81 audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4be613c0 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0x4bf31802 fuse_put_request +EXPORT_SYMBOL_GPL vmlinux 0x4c18f773 ps3_os_area_set_rtc_diff +EXPORT_SYMBOL_GPL vmlinux 0x4c1a2b1e led_classdev_register +EXPORT_SYMBOL_GPL vmlinux 0x4c25d27f bsg_request_fn +EXPORT_SYMBOL_GPL vmlinux 0x4c454263 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0x4c502e08 cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x4c602bf1 __blkg_release_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4c6af38b blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0x4c759827 byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x4c7efb5d rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0x4cc91f3f tpm_write +EXPORT_SYMBOL_GPL vmlinux 0x4cc9dccb __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x4ceefd7f ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x4cf0c75f tpm_show_pcrs +EXPORT_SYMBOL_GPL vmlinux 0x4d172ccb ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x4d1d3468 driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0x4d289d9b map_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x4d30b0f2 call_filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0x4d36dd5d get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0x4d4068cd unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x4d8e9529 bmp085_remove +EXPORT_SYMBOL_GPL vmlinux 0x4d99877d regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x4da1dbc1 bmp085_detect +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4dea1df1 cred_to_ucred +EXPORT_SYMBOL_GPL vmlinux 0x4dfb1c15 pmac_i2c_get_bus_node +EXPORT_SYMBOL_GPL vmlinux 0x4e109192 ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0x4e242f5f pstore_cannot_block_path +EXPORT_SYMBOL_GPL vmlinux 0x4e5c5f90 ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0x4e619391 perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0x4ea2e0b0 rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x4ebc2109 tpm_remove_hardware +EXPORT_SYMBOL_GPL vmlinux 0x4ec7b8e3 tracepoint_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0x4ee3fc77 ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f020dee public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x4f37962d __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0x4f5248d2 ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0x4f6a4969 tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0x4fcdd7b9 regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4fd4e89d ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4fe90862 scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x50038927 tpm_show_temp_deactivated +EXPORT_SYMBOL_GPL vmlinux 0x500b6a73 vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0x5026b6c6 ata_eh_thaw_port +EXPORT_SYMBOL_GPL vmlinux 0x50450ae9 netlink_alloc_skb +EXPORT_SYMBOL_GPL vmlinux 0x50601122 of_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x506691f1 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x507de8c6 add_memory +EXPORT_SYMBOL_GPL vmlinux 0x5086ac3a alg_test +EXPORT_SYMBOL_GPL vmlinux 0x5087dcf7 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0x508e383e raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50fa7a9d wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x511c7140 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0x512007e7 extcon_set_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x514fd513 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x51685d06 wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x51846493 trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x518d85da devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x51b65a26 rtc_lock +EXPORT_SYMBOL_GPL vmlinux 0x51c4a38d generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0x5205e64d disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL vmlinux 0x522f538b tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x5294785e irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x52a6cd29 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x52c1a93e hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0x52dba313 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x52deaf5b rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0x52eae9ea spu_handle_mm_fault +EXPORT_SYMBOL_GPL vmlinux 0x5314231a ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x5335dd11 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x5358fc36 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x535f4475 devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x53614269 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x536c9de6 tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0x53833c27 irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x53863beb xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0x53dbe154 rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0x540012c0 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54215db5 visitor64 +EXPORT_SYMBOL_GPL vmlinux 0x54264263 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0x543a3b6c spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x5460c8d8 fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x546c5565 ppc_tb_freq +EXPORT_SYMBOL_GPL vmlinux 0x547111e6 rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0x54740eb7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x5492618d of_pci_find_msi_chip_by_node +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54b4bbc9 ps3_vuart_cancel_async +EXPORT_SYMBOL_GPL vmlinux 0x54b6cb6a evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x54d11979 fat_detach +EXPORT_SYMBOL_GPL vmlinux 0x54e310f2 __pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x54e618ec key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0x54efd46c rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0x54f8685b srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x54f9d276 sdhci_pci_o2_probe_slot +EXPORT_SYMBOL_GPL vmlinux 0x55085efd __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x5588879e kvmppc_entry_trampoline +EXPORT_SYMBOL_GPL vmlinux 0x55a65c3b blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0x55ade4f4 ps3_system_bus_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x55c45c48 bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x55d0a891 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0x55f9db5d regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x56120d24 sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x561e4b77 irq_of_parse_and_map +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x564ca0a1 platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0x564f1dca klist_add_after +EXPORT_SYMBOL_GPL vmlinux 0x565b6892 uuid_le_gen +EXPORT_SYMBOL_GPL vmlinux 0x5678f0a0 usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0x56801e69 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x56886b19 scatterwalk_map +EXPORT_SYMBOL_GPL vmlinux 0x5692386f gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x56aff347 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x56c22f42 rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0x56d697ce cpu_up +EXPORT_SYMBOL_GPL vmlinux 0x56e75d47 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x570da840 vtime_guest_enter +EXPORT_SYMBOL_GPL vmlinux 0x5717b030 pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0x57231f45 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0x5733e781 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0x573d00b8 ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x575c5f94 execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0x577726b6 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0x579c0393 rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57ab5ac0 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x57b24d6e mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x5813e052 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0x58343381 skb_segment +EXPORT_SYMBOL_GPL vmlinux 0x5838e617 smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x5839b7cd mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x58413099 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x58481be2 sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0x5892f832 release_pmc_hardware +EXPORT_SYMBOL_GPL vmlinux 0x589e4569 syscon_regmap_lookup_by_pdevname +EXPORT_SYMBOL_GPL vmlinux 0x58b141f5 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0x58c01581 rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x58f55b9b i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x58fe9409 rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0x5947abbe max77693_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x59867c1c list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x59958b51 __class_register +EXPORT_SYMBOL_GPL vmlinux 0x59b2adbf input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x59ca919e device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x59d5b138 sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x59d5ba4b extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x59de0d64 cpufreq_frequency_table_cpuinfo +EXPORT_SYMBOL_GPL vmlinux 0x59dfb398 arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0x59e2743e call_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0x59e52d8f pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0x59e7ebe3 dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0x59eae699 ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x5a154929 pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0x5a508418 spi_master_suspend +EXPORT_SYMBOL_GPL vmlinux 0x5a53918c inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a8f3b69 of_irq_parse_raw +EXPORT_SYMBOL_GPL vmlinux 0x5a9b9b5d sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x5ac85aff dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x5acd9428 sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x5add3a0c pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0x5af4605e usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x5b056f64 usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x5b063f71 platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x5b0d4137 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0x5b19ccb5 key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0x5b4e379c of_prop_next_u32 +EXPORT_SYMBOL_GPL vmlinux 0x5b67360a ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0x5b6d6f50 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0x5b7d946c sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x5bc30714 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0x5be8c92f da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x5be9978f regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0x5c257dac ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0x5c263059 inhibit_secondary_onlining +EXPORT_SYMBOL_GPL vmlinux 0x5c3a5486 iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x5c452176 shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0x5c52cec2 da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5c53746e platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5c80fdb5 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0x5c883c04 ping_close +EXPORT_SYMBOL_GPL vmlinux 0x5c8ae716 sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0x5ca93699 tracepoint_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x5cabdced dev_pm_qos_remove_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5cb1b9ba wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x5cb2600f tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0x5cb3344b task_current_syscall +EXPORT_SYMBOL_GPL vmlinux 0x5cb8b875 i2c_new_probed_device +EXPORT_SYMBOL_GPL vmlinux 0x5cdb7548 __mmu_notifier_invalidate_range_start +EXPORT_SYMBOL_GPL vmlinux 0x5cf8a882 __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x5d0584d1 fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x5d05c7a9 tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0x5d0e24f9 sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x5d12e48f input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0x5d2fec22 inet6_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0x5d3b05dd __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x5d3d92c8 tpm_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0x5d3dfd9d devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0x5d716ba3 platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0x5d77952d hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x5dcbc632 dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x5de01c18 adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5e16cc3a wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0x5e1ec96a device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x5e4c21b8 get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0x5e4f7fb0 of_pci_msi_chip_remove +EXPORT_SYMBOL_GPL vmlinux 0x5e51cd74 swiotlb_nr_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e5aae54 relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0x5e5d6db2 devres_add +EXPORT_SYMBOL_GPL vmlinux 0x5e769986 ps3_os_area_get_av_multi_out +EXPORT_SYMBOL_GPL vmlinux 0x5e98a8b0 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0x5eb9732d pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0x5ebcb507 gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x5ed2e66a find_symbol +EXPORT_SYMBOL_GPL vmlinux 0x5edd7cf2 blkg_prfill_stat +EXPORT_SYMBOL_GPL vmlinux 0x5ee7542e reserve_pmc_hardware +EXPORT_SYMBOL_GPL vmlinux 0x5eed0dea inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x5eedd322 generic_access_phys +EXPORT_SYMBOL_GPL vmlinux 0x5ef0dbe5 rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x5f1d95b8 md_new_event +EXPORT_SYMBOL_GPL vmlinux 0x5f248f72 set_timer_slack +EXPORT_SYMBOL_GPL vmlinux 0x5f419491 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x5f615a0d unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x5f79a98b __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x5fa4759a crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x5fb35336 spi_master_resume +EXPORT_SYMBOL_GPL vmlinux 0x5fded09b sdhci_pci_o2_probe +EXPORT_SYMBOL_GPL vmlinux 0x5fe5ac5f blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0x5fef9533 xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x600c6d10 gpiochip_add +EXPORT_SYMBOL_GPL vmlinux 0x60467b06 btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0x60506751 unmap_kernel_range_noflush +EXPORT_SYMBOL_GPL vmlinux 0x6094685f wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL_GPL vmlinux 0x60c89116 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x60fc68d6 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0x61221cca da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x614d2abe adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0x615082eb cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0x615d2512 cgroup_taskset_next +EXPORT_SYMBOL_GPL vmlinux 0x616a0101 kick_process +EXPORT_SYMBOL_GPL vmlinux 0x6178f30e ahash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0x617a9eda uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0x6183ff15 sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x61a90c54 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0x61d88f98 pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x620ad734 pmf_put_function +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x622dacba tick_nohz_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x62b2bf66 spu_management_ops +EXPORT_SYMBOL_GPL vmlinux 0x62f0347a rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0x62f38c80 rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x6318757f mdio_mux_uninit +EXPORT_SYMBOL_GPL vmlinux 0x63205de1 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x638c8734 rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0x6390efda of_modalias_node +EXPORT_SYMBOL_GPL vmlinux 0x6396d457 securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x63a49e90 tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0x63c89e2b ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x641d05ef ps3_open_hv_device +EXPORT_SYMBOL_GPL vmlinux 0x6437897b ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x643fbbd1 driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x6444b6fe __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x646ae50f subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0x64eb5e84 pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x64f17389 fuse_request_send +EXPORT_SYMBOL_GPL vmlinux 0x6504a293 tasklet_hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x65094546 net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0x653f51d6 pwm_set_polarity +EXPORT_SYMBOL_GPL vmlinux 0x655ec281 __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x656cfebf kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x656da3e1 crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x65987549 tcp_fetch_timewait_stamp +EXPORT_SYMBOL_GPL vmlinux 0x65a5098b sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x65bb3d89 user_read +EXPORT_SYMBOL_GPL vmlinux 0x65bbbc78 schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65e8a7aa pm_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0x6608ff72 sk_unattached_filter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x660eb58f extcon_unregister_interest +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x6621e89c irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x6628789b unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0x662a0c3f x509_get_sig_params +EXPORT_SYMBOL_GPL vmlinux 0x6635bd62 platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0x6638762e wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x663ac740 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0x663c0c96 sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x666b2a28 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x667a812c ps3av_set_video_mode +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x66aee3ae kobj_completion_release +EXPORT_SYMBOL_GPL vmlinux 0x66afb53b unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x66b7818a pci_ats_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x66c26266 spu_set_profile_private_kref +EXPORT_SYMBOL_GPL vmlinux 0x66d6f92c register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x672ee80c unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x67386fc3 ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x6748c9cd skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x674e13e1 public_key_destroy +EXPORT_SYMBOL_GPL vmlinux 0x67563768 perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0x6768d215 extcon_get_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x676ec087 crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x67bf66a5 device_rename +EXPORT_SYMBOL_GPL vmlinux 0x67c8a9d0 regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x67d63f5f watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0x67e1a4c0 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x67ef2d80 spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x67f24bc6 fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x681b9d94 class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x6831d252 regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x6842d305 spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x687934e9 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x688df33b css_next_child +EXPORT_SYMBOL_GPL vmlinux 0x6891f05b attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x68b9796e sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0x68c7fe35 ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x68d42120 perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0x68e8fff4 crypto_register_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x68f12c81 ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0x6921aa34 compat_put_timeval +EXPORT_SYMBOL_GPL vmlinux 0x6921fea7 fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0x6923ce63 irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x693d7ed4 digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0x693edb56 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0x6940ea87 usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0x69447467 ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0x69790ef6 __init_new_context +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x697cbbb4 threads_per_core +EXPORT_SYMBOL_GPL vmlinux 0x698a899f ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0x69956454 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0x69a8b940 fb_sys_write +EXPORT_SYMBOL_GPL vmlinux 0x69d6f31b ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0x69d9c7d6 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x69e7bcf7 blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0x69e86dd4 blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x69e9a2cb ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x69f21e39 sec_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x6a05ef7b dma_buf_kunmap +EXPORT_SYMBOL_GPL vmlinux 0x6a0efc35 __netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x6a1733eb iommu_group_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a300d46 dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x6a3afa99 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x6a5fb566 rcu_sched_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x6a6cafd2 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x6a749beb pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6a8fc83b gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0x6aa0c553 gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x6ab9011b regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x6acb8d84 ppc64_caches +EXPORT_SYMBOL_GPL vmlinux 0x6ae34427 PageHuge +EXPORT_SYMBOL_GPL vmlinux 0x6aea9aca ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x6b014432 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0x6b29a1fa ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0x6b41de03 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x6b47d11b ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x6b55c06e regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0x6b71f7e3 input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0x6b93bf60 inet_twdr_twkill_work +EXPORT_SYMBOL_GPL vmlinux 0x6bda2fe8 fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0x6bf3f456 device_move +EXPORT_SYMBOL_GPL vmlinux 0x6bf6c8a3 ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x6bfa92d1 pci_hp_change_slot_info +EXPORT_SYMBOL_GPL vmlinux 0x6c1b09ab gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x6c364dcf seq_open_net +EXPORT_SYMBOL_GPL vmlinux 0x6c3af29d of_pci_msi_chip_add +EXPORT_SYMBOL_GPL vmlinux 0x6c3b5afb sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0x6c3c5387 tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0x6c483581 udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x6c49c4f2 clockevents_notify +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c68e364 wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6c8277ef blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6cb107f6 usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0x6cb234f5 arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0x6cd188cc tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x6cd21997 ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x6cd4ea62 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0x6d0627f0 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x6d1b0cab rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0x6d2785b5 pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x6d2a9497 usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d459f38 regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x6d5be808 __giveup_vsx +EXPORT_SYMBOL_GPL vmlinux 0x6d5c8b65 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0x6d60e074 uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0x6d6c5a1e fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0x6d7e2e68 ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x6d9e5425 of_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x6dbda0fc skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0x6dd195db spi_unregister_master +EXPORT_SYMBOL_GPL vmlinux 0x6df8f4cd pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x6e04a077 usb_bind_phy +EXPORT_SYMBOL_GPL vmlinux 0x6e0d169a blkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x6e28284b css_next_descendant_post +EXPORT_SYMBOL_GPL vmlinux 0x6e379526 kernstart_addr +EXPORT_SYMBOL_GPL vmlinux 0x6e4b7eae tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x6e5520e2 sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x6e7943ec iommu_group_id +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6eb06f83 cgroup_load_subsys +EXPORT_SYMBOL_GPL vmlinux 0x6ec70c96 elv_register +EXPORT_SYMBOL_GPL vmlinux 0x6ed8a657 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x6ef8f3df ata_sas_port_async_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6f1cde12 ps3_vuart_write +EXPORT_SYMBOL_GPL vmlinux 0x6f1e5db0 mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0x6f1ee69e kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x6f1f65d0 ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0x6f535af4 serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0x6fc6ca52 tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0x6fdb1f1f led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0x6fe3d8cf ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x7001629a handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0x700f9957 usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0x7036ee36 ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0x704633f0 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0x705ca3c4 device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x7065ba29 regmap_fields_write +EXPORT_SYMBOL_GPL vmlinux 0x70761fc5 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0x707ff1bb ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x7084c530 crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0x7095042f balloon_devinfo_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7097d7e6 mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x70cee155 netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x70cf032f usb_hcd_irq +EXPORT_SYMBOL_GPL vmlinux 0x70fffdd7 __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x712c6465 kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71930ed3 of_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x71d992e3 crypto_lookup_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x71dc9998 crypto_il_tab +EXPORT_SYMBOL_GPL vmlinux 0x71ea5c98 gpio_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x71fddd25 usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x7216b4ad user_match +EXPORT_SYMBOL_GPL vmlinux 0x722ac864 __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x722c9854 regmap_fields_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x723374f8 pci_bus_sem +EXPORT_SYMBOL_GPL vmlinux 0x7272adb8 dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0x72741f25 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x72b6d25d regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x72b81d8f user_destroy +EXPORT_SYMBOL_GPL vmlinux 0x72eb65b2 platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0x730b4943 __class_create +EXPORT_SYMBOL_GPL vmlinux 0x733a1c64 vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0x736b0e7b sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0x739aa1a1 pmac_i2c_setmode +EXPORT_SYMBOL_GPL vmlinux 0x739eb173 ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73a73b2e devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x73a9801d usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x73af577c mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0x73c2554f __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0x73c832f2 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x73d69364 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x73f11148 regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7406ca8a crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0x7422c95e gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x7442796a netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0x74628570 context_tracking +EXPORT_SYMBOL_GPL vmlinux 0x7464ea38 dev_pm_qos_add_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x747fbc7e wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x74854db0 usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x74954462 timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x74957a9d rtc_irq_register +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74e859f3 sysfs_schedule_callback +EXPORT_SYMBOL_GPL vmlinux 0x74ff9c56 spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0x75058afb pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x750c5e94 list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0x750d2b49 pci_cleanup_aer_uncorrect_error_status +EXPORT_SYMBOL_GPL vmlinux 0x751031b2 posix_timers_register_clock +EXPORT_SYMBOL_GPL vmlinux 0x75133f6e visitor128 +EXPORT_SYMBOL_GPL vmlinux 0x75212b19 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x7527cb64 key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0x7552233b regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0x7569500f page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0x757b49d2 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0x758a782e blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x75a87ade da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0x75d17d0b pmac_i2c_open +EXPORT_SYMBOL_GPL vmlinux 0x75d72d0b __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0x75e6e037 hash_page +EXPORT_SYMBOL_GPL vmlinux 0x75f2a044 usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0x760e54c0 ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x7645ad33 usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0x7647f576 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0x765fbc25 __online_page_increment_counters +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x769a4f10 srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x76a057e2 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x76d07d6e gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x7707b602 inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x7738d2d1 skb_gro_receive +EXPORT_SYMBOL_GPL vmlinux 0x77488d8a ata_scsi_simulate +EXPORT_SYMBOL_GPL vmlinux 0x776e5e81 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0x7771a1ea ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0x7777e372 vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0x77831f7a uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x7798f518 ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x77cdd0e8 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0x77df2f1e page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x77f33b88 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x781d6b46 wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0x783eaafb pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x7851786a get_device +EXPORT_SYMBOL_GPL vmlinux 0x78717f2d security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x787c882b lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x788b6c89 sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0x789d614e usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x78bee618 perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x78cd350d regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x7904b517 sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0x791edb3d get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0x79431470 rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x794ff3b4 pmf_register_irq_client +EXPORT_SYMBOL_GPL vmlinux 0x7959d394 sysfs_add_device_to_node +EXPORT_SYMBOL_GPL vmlinux 0x7965f962 skb_gso_transport_seglen +EXPORT_SYMBOL_GPL vmlinux 0x796c2d48 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x7984e5fe regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x7992827d blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x79cc4b40 fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x79d30139 tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0x79da612f platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0x7a2a6e9f pci_sriov_migration +EXPORT_SYMBOL_GPL vmlinux 0x7a2e1c78 lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0x7a4e4413 da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x7a689c68 ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x7a6bda95 regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x7a944007 rcu_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x7aa8eb69 cgroup_is_descendant +EXPORT_SYMBOL_GPL vmlinux 0x7acdaebf regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x7ace7546 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x7adf5151 n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0x7ae1ae8e cpufreq_frequency_table_put_attr +EXPORT_SYMBOL_GPL vmlinux 0x7b0f1ab3 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7b0f2127 find_linux_pte_or_hugepte +EXPORT_SYMBOL_GPL vmlinux 0x7b18ef90 scsi_internal_device_block +EXPORT_SYMBOL_GPL vmlinux 0x7b1d544d edac_handler_set +EXPORT_SYMBOL_GPL vmlinux 0x7b24ece1 sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0x7b292d19 static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0x7badf52f sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x7be99141 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0x7bebdd89 of_get_regulator_init_data +EXPORT_SYMBOL_GPL vmlinux 0x7c02a308 skcipher_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0x7c303277 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0x7c346357 pkey_algo +EXPORT_SYMBOL_GPL vmlinux 0x7c37bc89 pseries_ioei_notifier_list +EXPORT_SYMBOL_GPL vmlinux 0x7c712724 regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x7c9f3e69 __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0x7cbd5b20 regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0x7cc1b7fd max77693_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7cc7de1c x509_check_signature +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7ce02504 devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cefad70 securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x7cf1cf94 pmac_i2c_match_adapter +EXPORT_SYMBOL_GPL vmlinux 0x7d1949b7 transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0x7d36e534 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7d397cc7 gpiod_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d61fad3 devres_find +EXPORT_SYMBOL_GPL vmlinux 0x7d777e19 __module_address +EXPORT_SYMBOL_GPL vmlinux 0x7d846269 blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0x7d943119 trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0x7dab26b6 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7dad2cd6 rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0x7de2eb0e irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x7de7da3d ps3_vuart_clear_rx_bytes +EXPORT_SYMBOL_GPL vmlinux 0x7de93b0a crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x7df561c7 ps3_free_mmio_region +EXPORT_SYMBOL_GPL vmlinux 0x7e0aaa45 pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0x7e1019cb thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x7e17ba7b klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x7e3214c7 usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0x7e4e6b7e platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e859b61 dma_buf_kunmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x7e8643d2 nfq_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x7e879792 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0x7e8a0574 add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0x7ea0dbec led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0x7ea1a2bc probe_kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x7ecefcfe dm_requeue_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x7f008202 btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0x7f483c38 __inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0x7f4edcd1 regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x7f52c522 ps3av_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x7f7bc710 klist_next +EXPORT_SYMBOL_GPL vmlinux 0x7f856824 blk_queue_flush_queueable +EXPORT_SYMBOL_GPL vmlinux 0x7fa4b4a2 of_pci_parse_bus_range +EXPORT_SYMBOL_GPL vmlinux 0x7fac44c6 crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x7fb298d9 usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x7ff39b64 pmac_i2c_get_adapter +EXPORT_SYMBOL_GPL vmlinux 0x8011f253 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0x8025de73 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x80507f72 ps3av_audio_mute_analog +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x80916809 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x8092d8c1 devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x80b7f9ee raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0x80d3927f __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80e6f382 ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x80f3268f __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x80f8d0d6 pcibios_add_pci_devices +EXPORT_SYMBOL_GPL vmlinux 0x8104892a led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x810f7158 iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0x8114b8d6 md_is_badblock +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x8140842a gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x8149ea54 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0x81646359 i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0x8177e59f sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0x819b7787 mmput +EXPORT_SYMBOL_GPL vmlinux 0x81b381fa security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0x81f45c82 of_usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0x81f50695 devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x82198f65 rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x821e0b50 mpic_subsys +EXPORT_SYMBOL_GPL vmlinux 0x82939ebd rcu_batches_completed_sched +EXPORT_SYMBOL_GPL vmlinux 0x82a6c13b pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0x82be2c8e iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x82dfacdb fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0x82e1bfed ablkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x82fabdea devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x83133a82 __pci_complete_power_transition +EXPORT_SYMBOL_GPL vmlinux 0x834616bb sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x836d61d0 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x83759927 iommu_flush_tce +EXPORT_SYMBOL_GPL vmlinux 0x838b13e7 ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0x83a77a27 xfrm_inner_extract_output +EXPORT_SYMBOL_GPL vmlinux 0x83bb327a devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0x83c9532c inet6_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x83e77ca3 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0x840e9457 crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0x8420bccd cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0x843a1b43 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x844f8036 usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0x84873583 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0x8487a2b6 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x848b7b77 cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x848dc9b4 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0x8494d6a4 disk_get_part +EXPORT_SYMBOL_GPL vmlinux 0x84ce26fd crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x84d9decf kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x84fb2f37 pmf_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x84fde026 save_stack_trace_tsk +EXPORT_SYMBOL_GPL vmlinux 0x85050965 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x852e568d of_get_nand_ecc_mode +EXPORT_SYMBOL_GPL vmlinux 0x8551c332 iommu_tce_build +EXPORT_SYMBOL_GPL vmlinux 0x858e020f uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0x85c10896 rcu_batches_completed_bh +EXPORT_SYMBOL_GPL vmlinux 0x85c7f674 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x85c85aa7 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0x85cef0d5 crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0x85ecb557 driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x85f05f79 __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x85f7adc9 tps65912_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x8604f2d3 i2c_unlock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x8628e58c pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x866b9687 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x86748f36 device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0x8677b92a cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x86907fe8 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x86b57bbe sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0x86cc4e08 adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x86cde967 ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x86e86564 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x86ed8383 __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x86fe01be cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x8702e548 process_srcu +EXPORT_SYMBOL_GPL vmlinux 0x8737c3c0 dm_set_device_limits +EXPORT_SYMBOL_GPL vmlinux 0x873fbaea edac_atomic_assert_error +EXPORT_SYMBOL_GPL vmlinux 0x87419998 nf_register_afinfo +EXPORT_SYMBOL_GPL vmlinux 0x87547348 bdi_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x87634e99 tcp_peer_is_proven +EXPORT_SYMBOL_GPL vmlinux 0x8769339e rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x8777ace6 usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0x877dfb30 ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0x878af952 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0x87a28add debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0x87bb4e32 of_usb_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x87c834e6 tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0x87c95a0f register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x87cb5e74 regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x87dda3bd exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x87de7a86 blk_unprep_request +EXPORT_SYMBOL_GPL vmlinux 0x87eec254 palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0x87ef0cb4 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x87fcd7fb i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0x8804af3d usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x8810ad5e crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0x8810b6c4 devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x883398ee spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x883fe7d6 debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0x88457a7a tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0x8849ff37 ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0x88507851 aead_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0x885c55a0 wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0x88765224 netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0x887d4ff4 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x887e51a0 pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0x88841768 tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b21336 devres_get +EXPORT_SYMBOL_GPL vmlinux 0x88b5647c trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x88b66046 __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0x88c64808 rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0x88e210d2 unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x8929a571 regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x8938998b uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x8961e5e6 device_schedule_callback_owner +EXPORT_SYMBOL_GPL vmlinux 0x896d7e90 pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x896de81f cpu_remove_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0x899c2017 swiotlb_tbl_unmap_single +EXPORT_SYMBOL_GPL vmlinux 0x899d1da9 split_page +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89d82e1e bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x8a1c67f6 ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0x8a1cb6e8 tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8a200f47 skcipher_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8a2b14ba wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x8a2da4b6 cgroup_taskset_cur_css +EXPORT_SYMBOL_GPL vmlinux 0x8a2f9094 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0x8a62b640 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0x8a694525 of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0x8a6a49e2 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x8a710742 __mmu_notifier_invalidate_range_end +EXPORT_SYMBOL_GPL vmlinux 0x8a84fc7d devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x8a90dbb8 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0x8ab62730 regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x8ab70d97 proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ae152b5 of_get_nand_bus_width +EXPORT_SYMBOL_GPL vmlinux 0x8b0f30e4 sec_reg_update +EXPORT_SYMBOL_GPL vmlinux 0x8b25d296 pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0x8b34920e dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0x8b57ff59 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0x8b5c7043 tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0x8b693845 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0x8b70e8ea __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0x8b86ac53 spu_add_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0x8b8a4270 use_mm +EXPORT_SYMBOL_GPL vmlinux 0x8bad48bf __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x8bb0ec88 __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x8bbb8f12 regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x8bcc3a6b tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0x8bd1cbec find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x8bdea671 inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0x8bdf31ae inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c16d0be crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x8c1919d0 nf_queue_entry_release_refs +EXPORT_SYMBOL_GPL vmlinux 0x8c3f5438 rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8c566b32 gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x8c7e6330 dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x8c963a31 inet_csk_reqsk_queue_prune +EXPORT_SYMBOL_GPL vmlinux 0x8c98e0df devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0x8c9b677d flush_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0x8cc5d222 bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0x8cea765f memalloc_socks +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d36c088 look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0x8d621719 debugfs_remove_recursive +EXPORT_SYMBOL_GPL vmlinux 0x8d80076d iommu_tce_put_param_check +EXPORT_SYMBOL_GPL vmlinux 0x8d85367f smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x8db2712b blkio_subsys +EXPORT_SYMBOL_GPL vmlinux 0x8db68c09 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0x8ded6175 usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x8dfd5821 __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x8e0a8cc9 unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x8e184b06 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x8e1f0620 usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0x8e22e275 spu_init_channels +EXPORT_SYMBOL_GPL vmlinux 0x8e68c88c pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0x8e930eb7 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0x8e9c7933 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x8eae167b pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x8eb5a9cd of_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x8ebfbe80 spi_alloc_master +EXPORT_SYMBOL_GPL vmlinux 0x8ec10d72 cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0x8ec4dfcf crypto_unregister_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x8ee1f67e tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x8ef52039 rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x8f2844e0 crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8f4769bc ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0x8f4e224e get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0x8f5b2d6d rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f8a365c ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x8f8dfd55 cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0x8f8e53b9 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8f902a2c gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x8f96dd59 tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0x8fb3c2e2 spu_switch_notify +EXPORT_SYMBOL_GPL vmlinux 0x8fbb940c sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0x8fd134a5 inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x8fd32d84 i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x8fd840cd percpu_ida_for_each_free +EXPORT_SYMBOL_GPL vmlinux 0x8fe88e70 serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0x903d9e78 fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0x9041eeed __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x9062c322 ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x90705b7f syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x9077d5ea usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x908011ea screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0x9094012d ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x90a1004a crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x90b08e68 debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0x90b2a02d cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0x90c0c161 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0x90d2529b iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0x90d91687 raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x91286982 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x913842a9 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x913d7be4 irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x9153bb94 rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0x91545dac rtc_set_mmss +EXPORT_SYMBOL_GPL vmlinux 0x91648e7b srp_rport_add +EXPORT_SYMBOL_GPL vmlinux 0x918ad429 ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x918ffeac regmap_read +EXPORT_SYMBOL_GPL vmlinux 0x91b9fc0f led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0x9205e8d5 get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0x920cc389 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x92336db3 __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x929ac4e4 sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0x929b138e ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0x92a308bb ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92e1fbda ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x92f586a2 of_get_named_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x92fc7d43 rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0x93077b4f mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x930ed9b9 of_usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0x932738d6 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x932db8e8 srp_rport_del +EXPORT_SYMBOL_GPL vmlinux 0x937fa65f usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x9396f94c usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0x9397e57a md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x93ad579a dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0x93cfdb28 cpufreq_frequency_table_target +EXPORT_SYMBOL_GPL vmlinux 0x93d26b92 ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0x940685ca kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x94423e12 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x94483b79 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x947565cc pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x94831667 wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0x9484c377 crypto_attr_alg2 +EXPORT_SYMBOL_GPL vmlinux 0x949f7342 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x94a68723 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x94ad75f5 skcipher_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0x94bfaf2b usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x94d972b7 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x95122faa blk_rq_check_limits +EXPORT_SYMBOL_GPL vmlinux 0x951236c0 kvmppc_h_put_tce +EXPORT_SYMBOL_GPL vmlinux 0x9524c4eb stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x95b0bfd6 regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95bdcfb0 usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0x95ff07f9 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0x96081128 inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x96110e5c md_stop +EXPORT_SYMBOL_GPL vmlinux 0x9621849f ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x96320e71 usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x965a78d5 threads_core_mask +EXPORT_SYMBOL_GPL vmlinux 0x968f7359 regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0x96d569e1 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0x96e5c1f9 regulator_set_optimum_mode +EXPORT_SYMBOL_GPL vmlinux 0x96f3e08f bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x970597a0 regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0x972fd446 transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x9730c462 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x9735f061 register_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x9777c29d queue_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x97785c48 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0x977b39a5 rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x978e33c3 blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x97aaa2e2 usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0x97ad62b1 inet_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x97b8d13f spu_priv1_ops +EXPORT_SYMBOL_GPL vmlinux 0x97c02e31 usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97e2e976 relay_close +EXPORT_SYMBOL_GPL vmlinux 0x97fbf7ff inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x981c3eff tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0x982cd486 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x982ff17f devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x9838e697 md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x985cf832 rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x98a02a70 register_jprobe +EXPORT_SYMBOL_GPL vmlinux 0x98d2f61e driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x98d3019f ping_seq_fops +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x990989af spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x990faa74 crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x9912b57b uninhibit_secondary_onlining +EXPORT_SYMBOL_GPL vmlinux 0x991484c4 of_property_count_strings +EXPORT_SYMBOL_GPL vmlinux 0x991cee8a mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x9924c496 __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x9945cc5c regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x9993f228 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0x99a828b4 driver_register +EXPORT_SYMBOL_GPL vmlinux 0x99ac66e2 __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x99d9d207 raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0x99db2111 crypto_init_spawn +EXPORT_SYMBOL_GPL vmlinux 0x99e28f10 __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0x99e69961 tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0x99f9e56a cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a243117 attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0x9a419cd7 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x9a49d937 __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x9a760168 tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x9a89dbf7 lpddr2_jedec_min_tck +EXPORT_SYMBOL_GPL vmlinux 0x9aad6540 klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x9ab96056 wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9aca444b get_monotonic_boottime +EXPORT_SYMBOL_GPL vmlinux 0x9aca9719 elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9acc5876 crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0x9ad4cda2 pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9b07ea9f tps65912_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x9b1caedc _submit_bh +EXPORT_SYMBOL_GPL vmlinux 0x9b2d395f pci_pri_stopped +EXPORT_SYMBOL_GPL vmlinux 0x9b3dd749 clockevents_unbind +EXPORT_SYMBOL_GPL vmlinux 0x9b5d2b17 init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x9ba2bb2b gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x9bccc60f ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9c1dc94c pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0x9c20b4b1 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x9c3a3e25 wm8350_device_exit +EXPORT_SYMBOL_GPL vmlinux 0x9c4694a3 max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0x9c6cdad7 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0x9c869def irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x9c87ccd3 usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0x9ca8b5a3 blkg_lookup_create +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9cd80b6f force_sig_info +EXPORT_SYMBOL_GPL vmlinux 0x9cde65aa crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0x9d06d556 debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x9d138533 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x9d248af4 reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x9d428349 da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x9d7b6553 debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x9d82909d filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0x9da432b0 user_describe +EXPORT_SYMBOL_GPL vmlinux 0x9df21be4 rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x9e0981db cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0x9e209f9a ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x9e210554 iommu_put_tce_user_mode +EXPORT_SYMBOL_GPL vmlinux 0x9e5c8a9b ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x9e6dc9bf usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0x9e8a74ab irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0x9ea785d2 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0x9ead7798 rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x9eb89a79 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x9eca95a6 crypto_tfm_in_queue +EXPORT_SYMBOL_GPL vmlinux 0x9ed1b661 ping_hash +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9ee68011 pmf_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x9f0664bf dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0x9f06ed5a cbe_spu_info +EXPORT_SYMBOL_GPL vmlinux 0x9f0b401e regulator_can_change_voltage +EXPORT_SYMBOL_GPL vmlinux 0x9f3f98e1 of_get_nand_on_flash_bbt +EXPORT_SYMBOL_GPL vmlinux 0x9f42f0af devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x9f7ce739 md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0x9fa7807a iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0x9fab3fae wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x9fb9bc54 inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9fedb268 __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0xa0078966 device_create_vargs +EXPORT_SYMBOL_GPL vmlinux 0xa01c812c pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0xa05877d7 devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xa05a7b30 sysfs_notify_dirent +EXPORT_SYMBOL_GPL vmlinux 0xa063cb95 pwm_can_sleep +EXPORT_SYMBOL_GPL vmlinux 0xa072daf0 pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0xa076b8d7 regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xa084003e gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0xa08598d7 crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xa0930cca class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xa09659d8 blk_queue_bypass_start +EXPORT_SYMBOL_GPL vmlinux 0xa0a27fff pci_address_to_pio +EXPORT_SYMBOL_GPL vmlinux 0xa0ad3f55 wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0xa0b276bb iommu_domain_window_disable +EXPORT_SYMBOL_GPL vmlinux 0xa0da5557 regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xa0f0d180 dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xa0ff9a22 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xa11be063 tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0xa1255ac3 usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xa12d929d desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xa1565cab regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0xa16effbb ata_do_eh +EXPORT_SYMBOL_GPL vmlinux 0xa179293c bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0xa18f2ba7 cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0xa1fa13ad serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0xa1fbb1ac ps3_system_bus_device_register +EXPORT_SYMBOL_GPL vmlinux 0xa252bd9b regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xa25c4b2f netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa29e5e54 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0xa2af3445 usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xa2be8f06 pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0xa3091d77 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0xa325711d init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0xa33e7979 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xa3465058 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0xa34d4d27 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0xa3521bc2 ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa3865c6a sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa39aaa5f inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a2d9af walk_system_ram_range +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3dc8ab1 rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0xa3e7c113 ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0xa41b7981 rtc_irq_set_freq +EXPORT_SYMBOL_GPL vmlinux 0xa42bda67 add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xa449da09 ps3_mmio_region_init +EXPORT_SYMBOL_GPL vmlinux 0xa44acb07 iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xa455b289 device_create +EXPORT_SYMBOL_GPL vmlinux 0xa4638c0f pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0xa4709ef9 system_trusted_keyring +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa4cd6792 pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0xa4d55dcc blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0xa4ea04ee of_property_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0xa4ecacc6 class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0xa527beae sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0xa528691e dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0xa546ec6f sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0xa54cbbe0 sec_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xa551273c locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0xa56ca855 tracepoint_iter_stop +EXPORT_SYMBOL_GPL vmlinux 0xa5b00659 ppc_proc_freq +EXPORT_SYMBOL_GPL vmlinux 0xa5e07602 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa5efe460 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xa5f372e6 irq_find_host +EXPORT_SYMBOL_GPL vmlinux 0xa5f389eb of_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xa6165acb ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0xa617dd7b __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0xa619bd83 regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0xa625110d kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0xa62b8adb device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xa63e2311 init_phb_dynamic +EXPORT_SYMBOL_GPL vmlinux 0xa6688c7b driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0xa66fbd2a iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0xa67a989f input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0xa68e354f spi_async +EXPORT_SYMBOL_GPL vmlinux 0xa693d88b part_round_stats +EXPORT_SYMBOL_GPL vmlinux 0xa6a0a273 max77693_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xa6a45eea set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6c354a3 swiotlb_tbl_map_single +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa6ea4699 pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0xa6fa7859 device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xa720ca47 pci_pri_enabled +EXPORT_SYMBOL_GPL vmlinux 0xa724257f init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0xa75312bc call_rcu_sched +EXPORT_SYMBOL_GPL vmlinux 0xa75811d0 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xa7a4705c hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xa7b7ba7c xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0xa7c9d14f security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0xa7f92105 add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0xa84cbdeb pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa88138dc md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0xa8ab29d9 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0xa8ac29e1 of_regulator_match +EXPORT_SYMBOL_GPL vmlinux 0xa8d1203a debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xa91ad35e serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xa922a747 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0xa925e478 __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0xa93271a5 gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0xa946c4b2 devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xa957d63e rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xa9710794 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0xa980af16 RSA_public_key_algorithm +EXPORT_SYMBOL_GPL vmlinux 0xa98cdb36 ps3_get_firmware_version +EXPORT_SYMBOL_GPL vmlinux 0xa997915c ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0xa9bf57c8 sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0xa9ce341e usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0xa9d5c614 tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9efc823 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0xa9fb74a2 of_device_is_stdout_path +EXPORT_SYMBOL_GPL vmlinux 0xaa344426 pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0xaa76f53c usb_string +EXPORT_SYMBOL_GPL vmlinux 0xaa7e0bd4 regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0xaa83e9e8 device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaad123ae pcibios_find_pci_bus +EXPORT_SYMBOL_GPL vmlinux 0xaaeee697 tpm_open +EXPORT_SYMBOL_GPL vmlinux 0xab14110a stop_machine +EXPORT_SYMBOL_GPL vmlinux 0xab23c996 dm_get_rq_mapinfo +EXPORT_SYMBOL_GPL vmlinux 0xab2aa319 pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0xab2b243d ps3_irq_plug_destroy +EXPORT_SYMBOL_GPL vmlinux 0xab2e2b7f fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0xab5ee019 usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xab5f4259 inet6_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0xab6babaf pm_qos_request +EXPORT_SYMBOL_GPL vmlinux 0xab76da33 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0xaba9fb7c rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0xabc0701a skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0xabcc1f8a user_update +EXPORT_SYMBOL_GPL vmlinux 0xabcd44dc fb_sys_read +EXPORT_SYMBOL_GPL vmlinux 0xabd84333 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0xabdf7d37 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xabf16f22 regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0xac04c20d pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0xac109059 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0xac401d59 get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0xac45c389 cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0xac574c5c pci_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0xac593b78 __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xac5bf91e rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xac8603bd pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0xaca90003 usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0xacc33589 irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0xacc424d3 extcon_get_cable_state +EXPORT_SYMBOL_GPL vmlinux 0xace1984a crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0xace5c0fc usb_bus_list +EXPORT_SYMBOL_GPL vmlinux 0xacfd8f39 __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xacfe997e powerpc_firmware_features +EXPORT_SYMBOL_GPL vmlinux 0xad039c54 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xad4402a0 ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xadc785ec kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0xadf6aa4d tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xae11cd8d css_rightmost_descendant +EXPORT_SYMBOL_GPL vmlinux 0xae130b68 ps3_gpu_mutex +EXPORT_SYMBOL_GPL vmlinux 0xae1550d9 ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0xae1f9fc9 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xae37a456 uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0xae3f9716 PageHeadHuge +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae895f49 init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xae903d4c disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xaea1e078 wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0xaec0477d ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0xaecf8c9f pmf_do_irq +EXPORT_SYMBOL_GPL vmlinux 0xaee14ae6 __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0xaefc41e8 usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0xaf102516 ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xaf207ad7 fuse_request_send_background +EXPORT_SYMBOL_GPL vmlinux 0xaf21299b simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0xaf75e84e kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xaf8aa851 dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0xaf907626 hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0xaf991d0c pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0xafce4ecc regmap_field_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xafec49ef crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0xafee8819 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xafefd557 sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0xaff24057 pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xb004879b tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0xb0845ed9 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0xb09097b1 inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0xb09f52f7 fat_scan +EXPORT_SYMBOL_GPL vmlinux 0xb0aae43f driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0c1420e devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0xb0c63332 of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xb0d1656c gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0xb0ddc7a2 crypto_aead_type +EXPORT_SYMBOL_GPL vmlinux 0xb0e50049 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0xb0f0453f blk_queue_bio +EXPORT_SYMBOL_GPL vmlinux 0xb10598d8 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0xb10d55bc cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0xb11cc346 irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0xb13a28b6 usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0xb13e3668 bus_find_device_by_name +EXPORT_SYMBOL_GPL vmlinux 0xb140d14c ring_buffer_read +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb157d084 blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0xb176c266 sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0xb17faeb1 ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb1acbcce rcu_barrier_sched +EXPORT_SYMBOL_GPL vmlinux 0xb1ae4b1f shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1c0c1c2 async_schedule_domain +EXPORT_SYMBOL_GPL vmlinux 0xb1db3508 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1e7299f input_class +EXPORT_SYMBOL_GPL vmlinux 0xb211b9ad ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0xb21acc2a anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb22fa05d crypto_init_ahash_spawn +EXPORT_SYMBOL_GPL vmlinux 0xb236b39f devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xb23fce6f sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0xb24e07eb tpm_register_hardware +EXPORT_SYMBOL_GPL vmlinux 0xb2700029 rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0xb2758d78 cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xb29a6d88 rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0xb2bc420d rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb2ff6a3e bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0xb32bc99a device_register +EXPORT_SYMBOL_GPL vmlinux 0xb3363697 pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0xb347bb2c work_busy +EXPORT_SYMBOL_GPL vmlinux 0xb34dd5f2 extcon_set_cable_state +EXPORT_SYMBOL_GPL vmlinux 0xb3638350 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0xb3a996cd blkcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0xb3c8ae4f kobj_completion_init +EXPORT_SYMBOL_GPL vmlinux 0xb3fee99c usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0xb45a7c16 rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0xb4758029 srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xb47d9d6d inet_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4bff959 __mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0xb4c25035 d_materialise_unique +EXPORT_SYMBOL_GPL vmlinux 0xb4d590a7 ps3_mmio_region_create +EXPORT_SYMBOL_GPL vmlinux 0xb4e7f02e spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4fffa70 ps3_sys_manager_register_ops +EXPORT_SYMBOL_GPL vmlinux 0xb51e3953 mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb5311570 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0xb53620d1 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0xb5785d6a spu_remove_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0xb58dcfa2 synchronize_sched_expedited +EXPORT_SYMBOL_GPL vmlinux 0xb5a0e11e lpddr2_jedec_addressing_table +EXPORT_SYMBOL_GPL vmlinux 0xb5a454da da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0xb5a83ec3 scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0xb5aa10af atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb5b61c62 of_reset_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xb5c8edf4 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0xb5cb8145 hrtimer_get_res +EXPORT_SYMBOL_GPL vmlinux 0xb5f17edf perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb5f2fc99 scom_find_parent +EXPORT_SYMBOL_GPL vmlinux 0xb5f813b9 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb60b5707 of_i8042_aux_irq +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb62b15a1 usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0xb643c250 xics_wake_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb659ec89 swiotlb_unmap_page +EXPORT_SYMBOL_GPL vmlinux 0xb67b2219 cm_suspend_again +EXPORT_SYMBOL_GPL vmlinux 0xb6aeb661 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xb6bc007a spu_sys_callback +EXPORT_SYMBOL_GPL vmlinux 0xb6c635af wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb6e509fa fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0xb6efe368 netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0xb711340a fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb7156b6c regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0xb7189134 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0xb72060fe iommu_release_ownership +EXPORT_SYMBOL_GPL vmlinux 0xb72779c3 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xb7576d50 pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xb7770742 serial8250_tx_dma +EXPORT_SYMBOL_GPL vmlinux 0xb7922635 ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xb7a69b3f fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0xb7a82620 pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0xb7b7f843 posix_timer_event +EXPORT_SYMBOL_GPL vmlinux 0xb7bfbcd6 usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0xb7d07341 rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb7f77027 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0xb8030f7c ata_sg_init +EXPORT_SYMBOL_GPL vmlinux 0xb8143096 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xb81faee1 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xb82af899 fat_attach +EXPORT_SYMBOL_GPL vmlinux 0xb84b1aae ps3_event_receive_port_setup +EXPORT_SYMBOL_GPL vmlinux 0xb873c97d usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0xb8a3162e pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0xb8ad5ff7 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0xb8c9b411 flush_fp_to_thread +EXPORT_SYMBOL_GPL vmlinux 0xb8cc6c19 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0xb8dac281 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0xb8eb1433 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0xb8ec678f usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0xb8fa7fd6 sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xb903674c scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0xb938eed8 wait_for_tpm_stat +EXPORT_SYMBOL_GPL vmlinux 0xb94de068 percpu_ida_destroy +EXPORT_SYMBOL_GPL vmlinux 0xb950e0b6 sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0xb977e388 ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0xb97adfbf tty_prepare_flip_string_flags +EXPORT_SYMBOL_GPL vmlinux 0xb98bac5b relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0xb98fd812 unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0xb9943ca3 devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0xb9a46ff4 tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0xb9ad7eb3 hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9d0b338 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xb9d6506b ata_eh_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0xb9e2a421 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0xb9ed394a ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0xba158769 rtas_cancel_event_scan +EXPORT_SYMBOL_GPL vmlinux 0xba200751 subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xba2022ed led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0xba3ac79e xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0xba8925c4 udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xbae0885e usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0xbae15a4f ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0xbb038ce4 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb0c0d49 alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0xbb1b702c arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xbb49aafe spu_64k_pages_available +EXPORT_SYMBOL_GPL vmlinux 0xbb5451ad __get_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xbb59623c pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0xbb63d955 __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0xbb67ec99 fuse_get_req_for_background +EXPORT_SYMBOL_GPL vmlinux 0xbb885753 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0xbb8bac05 __get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0xbb8d685e ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0xbbb50c97 class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xbbc6fca4 percpu_ida_free_tags +EXPORT_SYMBOL_GPL vmlinux 0xbbda055b usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0xbbe0cc12 trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xbc043d73 find_module +EXPORT_SYMBOL_GPL vmlinux 0xbc05eccd usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0xbc19a970 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0xbc431330 securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0xbc472ca0 tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0xbc47fd49 __tracepoint_detach_device_from_domain +EXPORT_SYMBOL_GPL vmlinux 0xbc4f6550 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0xbc769957 xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0xbcac6160 pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbce9ff51 debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0xbd1f8273 iommu_take_ownership +EXPORT_SYMBOL_GPL vmlinux 0xbd3466a1 bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0xbd569229 use_cop +EXPORT_SYMBOL_GPL vmlinux 0xbd5cb8b9 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0xbd996083 pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0xbdaf5686 get_compat_timeval +EXPORT_SYMBOL_GPL vmlinux 0xbdb33216 device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0xbdc8bb7f extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xbdd295f0 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xbdd2f42a rcu_bh_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0xbe1887e4 ata_unpack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xbe2ea802 __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0xbe589f49 ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0xbe758b89 sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xbe7b07ee regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xbe96dfd8 of_reconfig_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbeb752e5 cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0xbebaa0a6 of_pci_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0xbec15b5a irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0xbec1b85a ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xbed25f02 debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0xbeec41a1 fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0xbeed5475 dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbefcee5d preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xbeffa19a vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf0aba4a find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0xbf0bb58e clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0xbf1cc04b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0xbf2784e1 regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0xbf2af1cf inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xbf34879c ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xbf639992 eeh_add_device_tree_late +EXPORT_SYMBOL_GPL vmlinux 0xbf7b6080 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0xbfb51c1d dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0xbfc6bd83 regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xc00db427 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0xc01649d6 cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0xc01ea363 tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xc02bec3c usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xc038b586 unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0xc061367e mpic_msgr_get +EXPORT_SYMBOL_GPL vmlinux 0xc065a455 cpu_core_index_of_thread +EXPORT_SYMBOL_GPL vmlinux 0xc0774560 do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xc08647ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc08caacc cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0xc0ad3bce mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc0bf6ead timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xc0c961a3 sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0xc0d01bc0 percpu_ref_cancel_init +EXPORT_SYMBOL_GPL vmlinux 0xc0d26387 kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc0e563a0 iommu_clear_tces_and_put_pages +EXPORT_SYMBOL_GPL vmlinux 0xc1051495 pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0xc1063375 br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0xc10660f1 xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0xc119f9dc usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0xc11b45c6 gpiod_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xc11bd00f tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc1267ac1 crypto_blkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0xc1369514 pmac_low_i2c_unlock +EXPORT_SYMBOL_GPL vmlinux 0xc1461678 iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0xc1502702 input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc15d56e8 usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0xc1608cea aead_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0xc1622ef0 class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc1647dcc hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc1aa445d pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0xc20c298a __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0xc2185a5a set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0xc21e1fd8 blk_queue_flush +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc253e815 tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xc27163d4 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0xc276b141 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc29eb9fd sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0xc2c25342 usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xc2d652c9 ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xc2edfd4a vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0xc31156a6 __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0xc33079a6 lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xc333e8be inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc3427cb0 dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0xc34dc100 agp_remove_bridge +EXPORT_SYMBOL_GPL vmlinux 0xc34efe27 snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0xc3556413 devres_release +EXPORT_SYMBOL_GPL vmlinux 0xc3631be7 rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xc37226a5 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xc375bb4b pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc3794d55 ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xc3a70d7a rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0xc3c33da1 regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0xc3c6c9cc hrtimer_start +EXPORT_SYMBOL_GPL vmlinux 0xc3f8616e disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0xc3feb587 pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xc4201193 irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xc424660a devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc4392669 ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0xc443d19f device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0xc4496ca4 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0xc454fc7b twl_get_type +EXPORT_SYMBOL_GPL vmlinux 0xc471c67a twl4030_audio_disable_resource +EXPORT_SYMBOL_GPL vmlinux 0xc47b1d47 usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0xc4840502 __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc49ad70d dm_dispatch_request +EXPORT_SYMBOL_GPL vmlinux 0xc4a16a61 unregister_jprobe +EXPORT_SYMBOL_GPL vmlinux 0xc4bcff78 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0xc4db992e kvmppc_load_up_fpu +EXPORT_SYMBOL_GPL vmlinux 0xc4e5055e wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xc4f6113d register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xc4fb265b usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0xc55be07d vtime_common_account_irq_enter +EXPORT_SYMBOL_GPL vmlinux 0xc566579a cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc5aad301 da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc5c6fbaa i2c_new_device +EXPORT_SYMBOL_GPL vmlinux 0xc5e85669 usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0xc5e86988 tps65912_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xc5fb066f rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0xc60f75ec __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc63a1109 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc65d3eed ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc66c2311 ps3_vuart_irq_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc68aa252 __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xc690866c irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc69e040d pci_enable_pri +EXPORT_SYMBOL_GPL vmlinux 0xc6a2a63f __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0xc6c4da1f __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xc6d8c2fc hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0xc6e20ba8 extcon_register_interest +EXPORT_SYMBOL_GPL vmlinux 0xc6e25e99 tracepoint_iter_start +EXPORT_SYMBOL_GPL vmlinux 0xc6e2f79a percpu_ida_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc7062ceb usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0xc72e1233 __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xc797704a sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7c41593 tpm_show_owned +EXPORT_SYMBOL_GPL vmlinux 0xc7c6391c mpi_set_buffer +EXPORT_SYMBOL_GPL vmlinux 0xc7e39bca ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc7f5fadc of_scan_bus +EXPORT_SYMBOL_GPL vmlinux 0xc7ff5062 alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0xc80c8092 proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0xc822f279 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0xc848d087 default_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0xc854bdf3 ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0xc85b43af of_irq_parse_and_map_pci +EXPORT_SYMBOL_GPL vmlinux 0xc8636a98 perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0xc87c1f84 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xc885097c pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0xc89d30b9 usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0xc8a5bb1e regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xc8acc9e9 serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0xc8add232 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0xc8bdb4c0 ps3_vuart_port_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc8ccf70a regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0xc8e29ab7 __online_page_free +EXPORT_SYMBOL_GPL vmlinux 0xc8f07ae4 serial8250_rx_dma +EXPORT_SYMBOL_GPL vmlinux 0xc90432cb percpu_ida_free +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc9562bee srp_remove_host +EXPORT_SYMBOL_GPL vmlinux 0xc9641b48 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0xc96f7eb6 dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0xc97d1140 cpufreq_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0xc993e2c6 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0xc9b23871 inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0xc9c00051 crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0xc9cfa97f of_pci_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0xc9e6bf8d device_find_child +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xca1c0612 class_find_device +EXPORT_SYMBOL_GPL vmlinux 0xca416522 regmap_field_write +EXPORT_SYMBOL_GPL vmlinux 0xca7d7855 ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca85d8cf tracepoint_probe_update_all +EXPORT_SYMBOL_GPL vmlinux 0xca95c7e9 debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0xcab091fc pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcad4ad08 pmf_do_functions +EXPORT_SYMBOL_GPL vmlinux 0xcb0a1e20 transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb1ada3f srp_release_transport +EXPORT_SYMBOL_GPL vmlinux 0xcb27b0bd ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0xcb284154 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0xcb364c6e power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0xcb4089f3 ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0xcb411dd5 inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0xcb469d2b ddebug_add_module +EXPORT_SYMBOL_GPL vmlinux 0xcb5239f0 debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0xcb72d46e mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0xcb8f3867 irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xcb95e355 fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0xcb9f7182 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcbcf4c97 replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0xcbee20b2 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0xcc108913 usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0xcc11a4f0 rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0xcc198a28 wakeup_source_prepare +EXPORT_SYMBOL_GPL vmlinux 0xcc1bb175 adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xcc1f1c3d inet_twdr_hangman +EXPORT_SYMBOL_GPL vmlinux 0xcc25a44d fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0xcc3c73fd ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xcc4db549 fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcc6577bb regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0xcc7c3f16 __inet_hash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0xcc85f80b spu_remove_dev_attr_group +EXPORT_SYMBOL_GPL vmlinux 0xcc85fcb6 async_schedule +EXPORT_SYMBOL_GPL vmlinux 0xcc8c4990 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccf4edcc iommu_domain_get_attr +EXPORT_SYMBOL_GPL vmlinux 0xccfbddc6 watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xcd0091af scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0xcd0bdfa5 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0xcd120bef sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xcd1ff2fe usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0xcd3163c8 fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0xcd4b44c3 tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0xcd5ea5c5 usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcd93f92b led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcdef7387 subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xcdfab385 blkcipher_walk_virt_block +EXPORT_SYMBOL_GPL vmlinux 0xce00f22e regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xce0b9b59 max77693_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xce46e140 ktime_get_ts +EXPORT_SYMBOL_GPL vmlinux 0xce5178cb scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0xce6a9d9a trace_current_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce7c08e5 da903x_update +EXPORT_SYMBOL_GPL vmlinux 0xce8edc34 spu_switch_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xceb1f126 mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0xceb7c1f8 ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcf097cdc user_instantiate +EXPORT_SYMBOL_GPL vmlinux 0xcf0ed4a7 ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0xcf1d93b1 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0xcf39b038 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf5b331d platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0xcf8e28e9 ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0xcfa39eca __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0xcfa9703a iommu_map +EXPORT_SYMBOL_GPL vmlinux 0xcfc68341 synchronize_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0xcfda6cc5 dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0xd03c7700 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0xd057fb3b napi_hash_add +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0e1dca4 md_run +EXPORT_SYMBOL_GPL vmlinux 0xd0e40ba9 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0xd0eb8bbf __rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0xd112bf3a ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0xd12a9466 crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0xd12eca90 extcon_update_state +EXPORT_SYMBOL_GPL vmlinux 0xd14bc4d9 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xd16712f3 crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xd1727757 regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0xd1885247 register_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0xd19ce511 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0xd1a4ee61 regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xd1b2db37 tracepoint_probe_register_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xd1c3d3e0 regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xd1e15bec ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0xd1fa0e43 tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0xd1fe63d9 bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd24b5255 md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0xd25590e2 scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0xd25dcdd3 eeh_dev_check_failure +EXPORT_SYMBOL_GPL vmlinux 0xd26597b9 of_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xd26966ea usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd289d53c regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xd2b04243 unregister_spu_syscalls +EXPORT_SYMBOL_GPL vmlinux 0xd2c2b2d9 rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd2c45ea4 of_pci_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0xd2c97505 class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xd2cb660b sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0xd2d87241 arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xd32aac54 devm_rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd32fe193 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xd3454a75 pmf_find_function +EXPORT_SYMBOL_GPL vmlinux 0xd34b7e85 usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0xd35201fa sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0xd35ca615 gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xd3b599a9 class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xd3c1398a iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd3e317c5 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0xd3eaef75 ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0xd3fc6e90 __rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0xd3fff028 mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd410e344 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0xd443db26 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd455cd2a cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xd4ac8a40 tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4e5d91f nf_unregister_afinfo +EXPORT_SYMBOL_GPL vmlinux 0xd50f325e fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0xd51819fc bmp085_probe +EXPORT_SYMBOL_GPL vmlinux 0xd51adf4f hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0xd52b6907 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xd53e18c1 edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0xd5404c6e tpm_show_durations +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd5699d05 device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0xd582227a leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xd5ae6e60 crypto_ablkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0xd5bd7dac ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0xd5c36c40 __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0xd5ee01ac ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0xd5fbb6ed rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0xd600c2a4 cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0xd632057f pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0xd63266c0 pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0xd666a788 driver_find +EXPORT_SYMBOL_GPL vmlinux 0xd67310ff led_trigger_store +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd687ac7d pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0xd69d60d1 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0xd6a04cde adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xd6af0e03 spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0xd6d5a786 spi_setup +EXPORT_SYMBOL_GPL vmlinux 0xd6e47f95 ps3_close_hv_device +EXPORT_SYMBOL_GPL vmlinux 0xd6f47f66 device_destroy +EXPORT_SYMBOL_GPL vmlinux 0xd6feefa5 agp_num_entries +EXPORT_SYMBOL_GPL vmlinux 0xd705b4c7 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0xd727ec16 platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd76fea58 crypto_init_spawn2 +EXPORT_SYMBOL_GPL vmlinux 0xd77c0bc8 klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xd7957c34 da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xd7c1d8f8 cpu_add_dev_attr_group +EXPORT_SYMBOL_GPL vmlinux 0xd7d79132 put_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0xd7f599b1 wm8400_block_read +EXPORT_SYMBOL_GPL vmlinux 0xd7fdf9e3 skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0xd80f605c rtc_irq_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd81de62c ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xd8206f75 get_slice_psize +EXPORT_SYMBOL_GPL vmlinux 0xd820c283 eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xd82332c5 blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0xd8263870 mmu_slb_size +EXPORT_SYMBOL_GPL vmlinux 0xd828a786 unregister_jprobes +EXPORT_SYMBOL_GPL vmlinux 0xd8397a9e wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0xd8498f4d ps3av_mode_cs_info +EXPORT_SYMBOL_GPL vmlinux 0xd8522b19 blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0xd8525ea7 fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0xd852c262 ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xd87601cc ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd92a8bd7 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0xd942d353 ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0xd945a50e crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0xd94976d3 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xd9497b3c ps3_os_area_flash_register +EXPORT_SYMBOL_GPL vmlinux 0xd9506675 pci_reset_pri +EXPORT_SYMBOL_GPL vmlinux 0xd95b89e0 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xd96aa701 ps3_vuart_read_async +EXPORT_SYMBOL_GPL vmlinux 0xd9cde59d unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xd9d130e2 crypto_alloc_instance +EXPORT_SYMBOL_GPL vmlinux 0xd9ddaa53 __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0xd9ecb670 ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xd9fb8700 pci_restore_ats_state +EXPORT_SYMBOL_GPL vmlinux 0xda097122 __clocksource_updatefreq_scale +EXPORT_SYMBOL_GPL vmlinux 0xda0a4d22 mpic_msgr_enable +EXPORT_SYMBOL_GPL vmlinux 0xda1dedf4 ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0xda2299e8 mmc_send_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0xda44cb37 setup_charger_manager +EXPORT_SYMBOL_GPL vmlinux 0xda55f68a scsi_internal_device_unblock +EXPORT_SYMBOL_GPL vmlinux 0xdabd0e64 __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xdaec531f __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdafaa0ac iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0xdb04cacc tracepoint_probe_unregister_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xdb0ac13b ps3_compare_firmware_version +EXPORT_SYMBOL_GPL vmlinux 0xdb1634ac __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xdb21b585 __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0xdb2a2789 css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdb8f3f14 setup_irq +EXPORT_SYMBOL_GPL vmlinux 0xdba80fc1 of_fdt_unflatten_tree +EXPORT_SYMBOL_GPL vmlinux 0xdbba1bfb usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0xdbbb1f3a rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0xdbca82e5 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc125121 usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xdc18b225 pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0xdc1e15f1 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xdc4430aa tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0xdc4f29a5 hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0xdc51a608 dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0xdc747892 file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0xdc762876 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc937864 spu_switch_event_register +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdceee0b0 dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xdcfed9f8 subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0xdd043eea ps3av_get_auto_mode +EXPORT_SYMBOL_GPL vmlinux 0xdd148f1a ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0xdd248357 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0xdd2efc0f ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd729424 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0xdd75e31e ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdd78af7a pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0xddac3fb9 raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0xddc0bb54 usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xddd58dc0 ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0xde04447b devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xde648007 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0xdeb18df6 bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xdec7e7e2 ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0xdecc975d usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0xdeed4186 single_open_net +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf13e0a8 wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xdf2c2a84 wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdf6ea908 pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0xdf8d0e36 cgroup_taskset_first +EXPORT_SYMBOL_GPL vmlinux 0xdfa35323 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0xdfa76039 pwm_disable +EXPORT_SYMBOL_GPL vmlinux 0xdfa93cef scom_controller +EXPORT_SYMBOL_GPL vmlinux 0xdfacfaee unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0xdfb067ad free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xdfca8cc4 register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0xdfdf9c10 __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0xe007de41 kallsyms_lookup_name +EXPORT_SYMBOL_GPL vmlinux 0xe00d98c3 devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0xe011f817 ps3flash_bounce_buffer +EXPORT_SYMBOL_GPL vmlinux 0xe01eddee wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xe021d0ed usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xe0293375 devm_spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0xe02eb6d0 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0xe036b3e9 mpic_msgr_put +EXPORT_SYMBOL_GPL vmlinux 0xe05f8154 crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0xe072b09c get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0xe07fd3b2 usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0xe089cfcc agp_memory_reserved +EXPORT_SYMBOL_GPL vmlinux 0xe0b37234 ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0xe13ff530 subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe1623556 __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0xe16af531 xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe19301fe max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xe19fc092 ps3fb_videomemory +EXPORT_SYMBOL_GPL vmlinux 0xe1a332f7 of_extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0xe1a490f4 wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0xe1afbb26 gov_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1dd5c1a usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0xe1dd9011 tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xe20b3316 aead_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0xe20fc6b0 rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xe24b8e3d pci_intx_mask_supported +EXPORT_SYMBOL_GPL vmlinux 0xe277958e tcp_done +EXPORT_SYMBOL_GPL vmlinux 0xe282aaff blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe29ac445 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0xe2b5e7a2 sec_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xe2eea817 drop_cop +EXPORT_SYMBOL_GPL vmlinux 0xe2f0c621 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe32d1ec7 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0xe3423743 sysfs_put +EXPORT_SYMBOL_GPL vmlinux 0xe34a3aa1 regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0xe35fa6e6 wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0xe3624f44 list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0xe3631ce3 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0xe37337e6 stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xe384a102 usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0xe3a16607 usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0xe3b7d74d __rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe3bef7e3 usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0xe3c899ad ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0xe3d62bed pmac_i2c_adapter_to_bus +EXPORT_SYMBOL_GPL vmlinux 0xe3d7750e btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0xe4169ad1 usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0xe4277b09 ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe4329ad6 irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe4405a6f irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0xe44a93d4 xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0xe451b8c3 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0xe46276db subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0xe4686b1d sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xe46ed4fe show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0xe4c031f8 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xe4c4b28f gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xe4dabf03 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xe4e28585 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xe4feb4bf alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xe504171f wakeup_source_drop +EXPORT_SYMBOL_GPL vmlinux 0xe51c040f register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xe51f1d93 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe5540302 enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xe566a7f0 ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe58fb452 aer_irq +EXPORT_SYMBOL_GPL vmlinux 0xe5ad8f4c shash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0xe5b68a5c alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xe5b87f45 usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0xe5f60d09 regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xe5f6c871 usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0xe6244cbf sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0xe637feb4 inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0xe642ef92 ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0xe64cf17f spu_add_dev_attr_group +EXPORT_SYMBOL_GPL vmlinux 0xe651f76e selinux_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe671f33c pmac_i2c_get_channel +EXPORT_SYMBOL_GPL vmlinux 0xe679aa94 wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0xe6b4a102 power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0xe6bd71b1 ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0xe6c36b4c debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0xe6c68334 ddebug_remove_module +EXPORT_SYMBOL_GPL vmlinux 0xe6cf7b20 usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xe6dc09e9 flush_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0xe6e1c5fe uuid_be_gen +EXPORT_SYMBOL_GPL vmlinux 0xe7035020 tpm_read +EXPORT_SYMBOL_GPL vmlinux 0xe7112e53 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0xe7305c48 tpm_gen_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe73bffbc iommu_present +EXPORT_SYMBOL_GPL vmlinux 0xe75bdcb0 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe796fb5f cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0xe7c2540c ps3_system_bus_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xe7e13fa4 bus_set_iommu +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe8400441 of_property_read_string_index +EXPORT_SYMBOL_GPL vmlinux 0xe85c55e7 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe8783c2d tcp_death_row +EXPORT_SYMBOL_GPL vmlinux 0xe8990978 ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0xe89bd243 ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe8b6ddde key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0xe906e5ca bmp085_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xe914b634 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0xe931b9e9 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe93ffc4b rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xe94bcdae ata_sff_data_xfer_noirq +EXPORT_SYMBOL_GPL vmlinux 0xe9506579 iommu_tce_direction +EXPORT_SYMBOL_GPL vmlinux 0xe99851c2 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0xe9bb2d8a cgroup_add_cftypes +EXPORT_SYMBOL_GPL vmlinux 0xe9d70214 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xe9e58459 __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea418e0f atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0xea4bd195 scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0xea628c20 bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0xea695ed2 kvmppc_load_up_altivec +EXPORT_SYMBOL_GPL vmlinux 0xea81b298 platform_bus +EXPORT_SYMBOL_GPL vmlinux 0xea9da411 swiotlb_tbl_sync_single +EXPORT_SYMBOL_GPL vmlinux 0xeb1c3628 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xeb1c8098 cpufreq_notify_transition +EXPORT_SYMBOL_GPL vmlinux 0xeb3ad675 tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0xeb5e16d0 modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xeb6736a5 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xeb75e27a iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0xeb7a8ba2 device_add +EXPORT_SYMBOL_GPL vmlinux 0xeb8ae736 klist_init +EXPORT_SYMBOL_GPL vmlinux 0xebcc78c5 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0xebec57c4 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xec07f5e6 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0xec187052 __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0xec1b043e regulator_suspend_prepare +EXPORT_SYMBOL_GPL vmlinux 0xec25f967 klist_del +EXPORT_SYMBOL_GPL vmlinux 0xec2bc125 __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xec3b90cb regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xec8efa8a led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0xed4cc062 ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0xed533c93 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xed548c06 crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0xed8e68b1 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0xedc09add __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0xedc23612 tpm_dev_release +EXPORT_SYMBOL_GPL vmlinux 0xedc41117 tpm_show_active +EXPORT_SYMBOL_GPL vmlinux 0xedd49930 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xede7eb2f mmu_psize_defs +EXPORT_SYMBOL_GPL vmlinux 0xee004b66 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xee0e6b82 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0xee236ba4 sdhci_pci_o2_resume +EXPORT_SYMBOL_GPL vmlinux 0xee241d0b anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0xee3ba549 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee767626 fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0xee891cc0 srp_tmo_valid +EXPORT_SYMBOL_GPL vmlinux 0xee8da4ca kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xee9df2ff dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xeebd714b led_trigger_show +EXPORT_SYMBOL_GPL vmlinux 0xeee6e537 pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0xeee94b9f pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0xef047109 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xef49038c inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0xef56a4bc class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef6eb26d regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xef88350a vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0xef914d8c ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0xefa182c7 pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0xefbcc789 regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0xefc7933d stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xeff8400b __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xeffa6b8f __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0xf039b2cd pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0xf05244ac relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0xf0732f48 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0xf0805440 regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0xf08317b3 pci_renumber_slot +EXPORT_SYMBOL_GPL vmlinux 0xf098dd15 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0xf0afdccb device_store_int +EXPORT_SYMBOL_GPL vmlinux 0xf0e21b16 rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0xf0f5dbc2 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0xf1017ce5 skcipher_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0xf1143b62 sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xf12e4f14 rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0xf13be436 blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0xf158f170 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0xf15ede9e sysfs_get_dirent_ns +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf1a2dbb4 generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0xf1a62b6f of_i8042_kbd_irq +EXPORT_SYMBOL_GPL vmlinux 0xf1abec88 sysfs_remove_device_from_node +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1f0481d eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0xf21aaf77 pwm_free +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf238b0c3 crypto_givcipher_type +EXPORT_SYMBOL_GPL vmlinux 0xf24fce3b ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0xf2516423 shash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0xf27977e2 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0xf28cb46c usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0xf2c7238f bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0xf2ca02d2 ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0xf2dd54c2 bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0xf2f077cc pkey_id_type_name +EXPORT_SYMBOL_GPL vmlinux 0xf2f16d58 arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0xf2fca922 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0xf30b1cfd nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0xf31206d1 scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf375346c dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0xf3803958 __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0xf38376e8 crypto_ahash_type +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3cc7b49 crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0xf3cc8117 task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xf3d426ac sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0xf3ec897d pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0xf41fced8 flush_vsx_to_thread +EXPORT_SYMBOL_GPL vmlinux 0xf4594703 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xf45b818e usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0xf469c705 ps3_io_irq_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf494f618 mmc_regulator_get_ocrmask +EXPORT_SYMBOL_GPL vmlinux 0xf499fdb2 rcu_barrier_bh +EXPORT_SYMBOL_GPL vmlinux 0xf4b5a266 stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0xf4d40724 dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xf4fc2d6c __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf50cf1b4 rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf567fde5 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0xf57d25c2 dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0xf5999533 dm_kill_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5bcf1b2 __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0xf5be742d platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0xf5fef4e3 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf6011358 ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0xf65f79a2 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0xf6d8cf47 fuse_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf71b1380 of_get_dma_window +EXPORT_SYMBOL_GPL vmlinux 0xf71bc313 sysfs_get +EXPORT_SYMBOL_GPL vmlinux 0xf72203bc ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0xf7237c14 scom_map_device +EXPORT_SYMBOL_GPL vmlinux 0xf724aa01 regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf7608cdf __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0xf76fd97f bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf7759baf transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xf779488e regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0xf78dc71b usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0xf7964c17 blkdev_aio_write +EXPORT_SYMBOL_GPL vmlinux 0xf79c1595 tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0xf81498eb i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xf816c866 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf837e0eb unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0xf839cc90 crypto_alloc_instance2 +EXPORT_SYMBOL_GPL vmlinux 0xf86c4329 device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0xf878ff21 ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xf8802492 print_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xf8949e90 ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0xf8a10776 cpufreq_table_validate_and_show +EXPORT_SYMBOL_GPL vmlinux 0xf8bfad32 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0xf8e398fc memstart_addr +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3d0b kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0xf92b5554 i2c_lock_adapter +EXPORT_SYMBOL_GPL vmlinux 0xf92ce956 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf9933c03 reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9ae524f crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0xf9b3f942 rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0xf9ca3160 ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xf9d2611b alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0xf9d42c98 sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xf9dd2b7a crypto_nivaead_type +EXPORT_SYMBOL_GPL vmlinux 0xf9fb934e regmap_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xfa000964 crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0xfa012fe7 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0xfa178eff dev_hard_start_xmit +EXPORT_SYMBOL_GPL vmlinux 0xfa17ede4 inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa1f4662 scatterwalk_start +EXPORT_SYMBOL_GPL vmlinux 0xfa2ae5d6 pwm_config +EXPORT_SYMBOL_GPL vmlinux 0xfa38abeb inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xfa7b4012 __fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0xfa85fa75 rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xfa901b31 compat_get_timespec +EXPORT_SYMBOL_GPL vmlinux 0xfaa43880 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0xfab60503 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0xfaec60a7 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0xfb19ad3f tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb333801 iommu_domain_set_attr +EXPORT_SYMBOL_GPL vmlinux 0xfb525dfc pmac_i2c_get_type +EXPORT_SYMBOL_GPL vmlinux 0xfb52b77d __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0xfb5774dd edac_subsys +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfbb457a0 pmf_call_one +EXPORT_SYMBOL_GPL vmlinux 0xfbba2622 device_initialize +EXPORT_SYMBOL_GPL vmlinux 0xfbbedefd of_prop_next_string +EXPORT_SYMBOL_GPL vmlinux 0xfbc8374f iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0xfbd37d5a regmap_update_bits_check +EXPORT_SYMBOL_GPL vmlinux 0xfbe330c8 power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0xfbf6bef9 da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0xfbfcdc2b ps3_sys_manager_get_wol +EXPORT_SYMBOL_GPL vmlinux 0xfc024a5d devres_remove +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc05dccb usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0xfc05e829 usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xfc086cc3 irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0xfc201b66 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0xfc212dbb raw_seq_open +EXPORT_SYMBOL_GPL vmlinux 0xfc72d987 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0xfc8186ce public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0xfca3e9d3 relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0xfca7f8e0 ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xfcc77066 remove_phb_dynamic +EXPORT_SYMBOL_GPL vmlinux 0xfcd492db ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xfcd7bc0b ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0xfcffb4e1 pmac_i2c_get_flags +EXPORT_SYMBOL_GPL vmlinux 0xfd063100 fuse_get_req +EXPORT_SYMBOL_GPL vmlinux 0xfd213e82 arizona_of_get_type +EXPORT_SYMBOL_GPL vmlinux 0xfd2bcfe2 put_pid +EXPORT_SYMBOL_GPL vmlinux 0xfd3790f0 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0xfd513bd6 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xfd574963 da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0xfd5a50c0 input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0xfd5cecfc sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0xfda12e22 pwm_put +EXPORT_SYMBOL_GPL vmlinux 0xfdd084f3 regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0xfde1ffdf tpm_show_caps +EXPORT_SYMBOL_GPL vmlinux 0xfdf12556 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0xfe1a63c3 devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xfe1fa0db of_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0xfe2d10f3 dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0xfe437361 ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xfe89f57d irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfecd596c od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfef8a166 trace_current_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xff0dacff ps3av_video_mute +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff7cc43d do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0xffcb5ad3 ata_sff_lost_interrupt --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/powerpc/powerpc64-smp.compiler +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/powerpc/powerpc64-smp.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 4.8.2-19ubuntu1) 4.8.2 --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/powerpc/powerpc64-smp.modules +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/powerpc/powerpc64-smp.modules @@ -0,0 +1,3664 @@ +3c574_cs +3c589_cs +3c59x +3w-9xxx +3w-sas +3w-xxxx +6lowpan +6pack +8021q +8139cp +8139too +8250_dw +8250_pci +8255 +8255_pci +8390 +842 +88pm800 +88pm805 +88pm80x +88pm80x_onkey +88pm860x_battery +88pm860x_bl +88pm860x_charger +88pm860x_onkey +88pm860x-ts +9p +9pnet +9pnet_rdma +9pnet_virtio +a100u2w +a3d +a8293 +aacraid +aat2870_bl +aat2870-regulator +ab3100 +ab3100-otp +ac97_bus +acard-ahci +acecad +acenic +act200l-sir +act_csum +act_gact +act_ipt +actisys-sir +act_mirred +act_nat +act_pedit +act_police +act_simple +act_skbedit +ad2s1200 +ad2s1210 +ad2s90 +ad5064 +ad525x_dpot +ad525x_dpot-i2c +ad525x_dpot-spi +ad5360 +ad5380 +ad5398 +ad5421 +ad5446 +ad5449 +ad5504 +ad5624r_spi +ad5686 +ad5755 +ad5764 +ad5791 +ad5930 +ad5933 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7152 +ad7192 +ad7266 +ad7280a +ad7291 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +ad7476 +ad7606 +ad7746 +ad7780 +ad7791 +ad7793 +ad7816 +ad7877 +ad7879 +ad7879-i2c +ad7879-spi +ad7887 +ad7923 +ad799x +ad8366 +ad9523 +ad9832 +ad9834 +ad9850 +ad9852 +ad9910 +ad9951 +adcxx +addi_apci_035 +addi_apci_1032 +addi_apci_1500 +addi_apci_1516 +addi_apci_1564 +addi_apci_16xx +addi_apci_2032 +addi_apci_2200 +addi_apci_3501 +addi_apci_3xxx +addi_watchdog +ade7753 +ade7754 +ade7758 +ade7759 +ade7854 +ade7854-i2c +ade7854-spi +adf4350 +adfs +adi +adis16060 +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16204 +adis16209 +adis16220 +adis16240 +adis16260 +adis16400 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adl_pci9111 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1275 +adm8211 +adm9240 +adp5520_bl +adp5520-keys +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +ads1015 +ads7828 +ads7846 +ads7871 +ad_sigma_delta +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adv7180 +adv_pci1710 +adv_pci1723 +adv_pci1724 +adv_pci_dio +adxl34x +adxl34x-i2c +adxl34x-spi +adxrs450 +af_802154 +af9013 +af9033 +af_alg +affs +af_key +af_packet_diag +af-rxrpc +ah4 +ah6 +aha152x_cs +ahci +ahci_platform +aic79xx +aic7xxx +aic94xx +aiptek +aircable +airo +airo_cs +airport +ak8975 +algif_hash +algif_skcipher +ali-ircc +alim7101_wdt +alphatrack +altera-ci +altera_jtaguart +altera_ps2 +altera-stapl +altera_uart +alx +amc6821 +amd5536udc +amd8111e +amd8111_edac +amd8131_edac +amd-rng +amplc_dio200_common +amplc_dio200_pci +amplc_pc236 +amplc_pci224 +amplc_pci230 +amplc_pci263 +ams369fg06 +analog +anatop-regulator +ansi_cprng +anubis +aoe +apbps2 +apds9300 +apds9802als +apds990x +appledisplay +appletalk +appletouch +applicom +ar5523 +ar7part +arc4 +arc_emac +arcmsr +arcnet +arc_ps2 +arc-rawmode +arc-rimi +arc_uart +arizona-haptics +arizona-i2c +arizona-ldo1 +arizona-micsupp +arizona-spi +ark3116 +arkfb +arptable_filter +arp_tables +arpt_mangle +as3711_bl +as3711-regulator +as3722-regulator +as5011 +asc7621 +asix +ast +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at86rf230 +at91_ether +ata_piix +atbm8830 +aten +ath +ath10k_core +ath10k_pci +ath3k +ath5k +ath6kl_core +ath6kl_sdio +ath6kl_usb +ath9k +ath9k_common +ath9k_htc +ath9k_hw +ati_remote +ati_remote2 +atl1 +atl1c +atl1e +atl2 +atm +atmel +atmel_cs +atmel_mxt_ts +atmel_pci +atmel-ssc +atmtcp +atp870u +atxp1 +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo_k1900fb +auo_k1901fb +auo_k190x +auo-pixcir-ts +authenc +authencesn +auth_rpcgss +autofs4 +avma1_cs +avm_cs +avmfritz +ax25 +ax88179_178a +axnet_cs +b1 +b1dma +b1pci +b1pcmcia +b2c2-flexcop +b2c2-flexcop-pci +b2c2-flexcop-usb +b43 +b43legacy +b44 +bas_gigaset +batman-adv +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm203x +bcm3510 +bcm5974 +bcma +bcma-hcd +bcm_wimax +bd6107 +be2iscsi +be2net +befs +belkin_sa +bfa +bfs +bfusb +bh1770glc +bh1780gli +binfmt_misc +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +bluecard_cs +bluetooth +bma150 +bma180 +bmp085-i2c +bmp085-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bonding +bpa10x +bpck +bpctl_mod +bpqether +bq2415x_charger +bq24190_charger +bq24735-charger +bq27x00_battery +br2684 +brcmfmac +brcmsmac +brcmutil +bridge +broadsheetfb +bsd_comp +bsr +bt3c_cs +bt878 +btcoexist +btcx-risc +btmrvl +btmrvl_sdio +btmtk_usb +btrfs +btsdio +bttv +btuart_cs +btusb +btwilink +bu21013_ts +budget +budget-av +budget-ci +budget-core +budget-patch +bw-qcam +bypass +c4 +c67x00 +cachefiles +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camellia_generic +can +can-bcm +can-dev +can-gw +can-raw +capi +capidrv +capmode +carl9170 +carminefb +cassini +cast5_generic +cast6_generic +cast_common +catc +cb710 +cb710-mmc +cb_das16_cs +cb_pcidas +cb_pcidas64 +cb_pcidda +cb_pcimdas +cb_pcimdda +cc770 +cc770_isa +cc770_platform +c_can +c_can_pci +c_can_platform +cciss +ccm +cdc-acm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc-phonet +cdc_subset +cdc-wdm +cedusb +ceph +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch341 +ch7006 +chipreg +chnl_net +cifs +ci_hdrc +ci_hdrc_imx +ci_hdrc_msm +ci_hdrc_pci +cirrus +cirrusfb +clearpad_tm1217 +clip +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_fw +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm36651 +cm4000_cs +cm4040_cs +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cmtp +cnic +cobra +coda +com20020 +com20020_cs +com20020-pci +com90io +com90xx +comedi +comedi_bond +comedi_fc +comedi_parport +comedi_test +comm +configfs +contec_pci_dio +cordic +core +cp210x +cpc925_edac +cpia2 +cpufreq_spudemand +cpu-notifier-error-inject +c-qcam +cramfs +crc32 +crc7 +crc8 +crc-ccitt +crc-itu-t +cros_ec +cros_ec_i2c +cros_ec_keyb +cros_ec_spi +cryptd +cryptoloop +crypto_null +crypto_user +crystalhd +cs5345 +cs53l32a +csiostor +ctr +cts +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cx18 +cx18-alsa +cx22700 +cx22702 +cx231xx +cx231xx-alsa +cx231xx-dvb +cx2341x +cx23885 +cx24110 +cx24113 +cx24116 +cx24117 +cx24123 +cx25821 +cx25821-alsa +cx25840 +cx82310_eth +cx8800 +cx8802 +cx88-alsa +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx88xx +cxacru +cxd2099 +cxd2820r +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxt1e1 +cy8ctmg110_ts +cyapa +cyber2000fb +cyberjack +cyclades +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +cyttsp_core +cyttsp_i2c +cyttsp_i2c_common +cyttsp_spi +da9030_battery +da9034-ts +da903x +da903x_bl +da9052-battery +da9052_bl +da9052-hwmon +da9052_onkey +da9052-regulator +da9052_tsi +da9052_wdt +da9055-hwmon +da9055_onkey +da9055-regulator +da9055_wdt +da9063-regulator +da9210-regulator +DAC960 +daqboard2000 +das08 +das08_cs +das08_pci +db9 +dc395x +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +dccp_probe +ddbridge +de2104x +de4x5 +decnet +deflate +defxx +denali +denali_pci +des_generic +dgap +dgnc +dgrp +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dibx000_common +digi_acceleport +diskonchip +divacapi +divadidd +diva_idi +diva_mnt +divas +dl2k +dlci +dlm +dm1105 +dm9601 +dm-bio-prison +dm-bufio +dm-cache +dm-cache-cleaner +dm-cache-mq +dm-crypt +dm-delay +dmfe +dm-flakey +dm-log +dm-log-userspace +dm-mirror +dm-multipath +dm-persistent-data +dm-queue-length +dm-raid +dm-region-hash +dm-round-robin +dm-service-time +dm-snapshot +dm-switch +dm-thin-pool +dm-verity +dmx3191d +dm-zero +dnet +dn_rtmsg +docg3 +docg4 +drbd +drm +drm_kms_helper +drm_usb +drxd +drxk +ds1621 +ds1682 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds620 +dsa_core +dsbr100 +dscc4 +dss1_divert +dst +dst_ca +dstr +dt3000 +dt3155v4l +dt9812 +dtl1_cs +dummy +dummy-irq +dvb-as102 +dvb-bt8xx +dvb-core +dvb-pll +dvb-ttpci +dvb-ttusb-budget +dvb-usb +dvb-usb-a800 +dvb-usb-af9005 +dvb-usb-af9005-remote +dvb-usb-af9015 +dvb-usb-af9035 +dvb-usb-anysee +dvb-usb-au6610 +dvb-usb-az6007 +dvb-usb-az6027 +dvb-usb-ce6230 +dvb-usb-cinergyT2 +dvb-usb-cxusb +dvb-usb-dib0700 +dvb-usb-dibusb-common +dvb-usb-dibusb-mb +dvb-usb-dibusb-mc +dvb-usb-digitv +dvb-usb-dtt200u +dvb-usb-dtv5100 +dvb-usb-dw2102 +dvb-usb-ec168 +dvb-usb-friio +dvb-usb-gl861 +dvb-usb-gp8psk +dvb-usb-it913x +dvb-usb-lmedm04 +dvb-usb-m920x +dvb-usb-mxl111sf +dvb-usb-nova-t-usb2 +dvb-usb-opera +dvb-usb-pctv452e +dvb-usb-rtl28xxu +dvb-usb-technisat-usb2 +dvb-usb-ttusb2 +dvb-usb-umt-010 +dvb_usb_v2 +dvb-usb-vp702x +dvb-usb-vp7045 +dwc2 +dwc2_pci +dwc2_platform +dwc3 +dwc3-pci +dw_dmac +dw_dmac_core +dw_dmac_pci +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +e4000 +earth-pt1 +eata +ebt_802_3 +ebtable_broute +ebtable_filter +ebtable_nat +ebtables +ebt_among +ebt_arp +ebt_arpreply +ebt_dnat +ebt_ip +ebt_ip6 +ebt_limit +ebt_log +ebt_mark +ebt_mark_m +ebt_nflog +ebt_pkttype +ebt_redirect +ebt_snat +ebt_stp +ebt_vlan +ec100 +echo +edac_core +edt-ft5x06 +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efs +egalax_ts +ehset +electra_cf +elo +elsa_cs +em28xx +em28xx-alsa +em28xx-dvb +em28xx-rc +emc1403 +emc2103 +emc6w201 +em_canid +em_cmp +emi26 +emi62 +em_ipset +em_meta +em_nbyte +empeg +ems_pci +ems_pcmcia +ems_usb +em_text +emu10k1-gp +em_u32 +enc28j60 +enclosure +eni +enic +epat +epia +epic100 +eql +esas2r +esd_usb2 +esi-sir +esp4 +esp6 +et131x +ethoc +evbug +exofs +extcon-adc-jack +extcon-arizona +extcon-gpio +extcon-max77693 +extcon-max8997 +extcon-palmas +ezusb +f2fs +f75375s +f81232 +fakelb +fan53555 +farsync +faulty +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_cs +fealnx +ff-memless +fid +firedtv +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firewire-serial +fit2 +fit3 +fixed +fld +flexcan +floppy +fm801-gp +fmc +fmc-chardev +fmc-fakedev +fmc-trivial +fmc-write-eeprom +fm_drv +fmvj18x_cs +forcedeth +fore_200e +fotg210-hcd +fotg210-udc +freevxfs +friq +frpw +fsa9480 +fscache +fsl_elbc_nand +ft1000 +ft1000_pcmcia +ftdi-elan +ftdi_sio +ftl +fujitsu_ts +fusbh200-hcd +g450_pll +g760a +g762 +g_acm_ms +gadgetfs +gamecon +gameport +garmin_gps +garp +g_audio +g_cdc +gcm +g_dbgp +gdmtty +gdmulte +gdmwm +gdth +generic +generic-adc-battery +generic_bl +gen_probe +g_ether +gf128mul +gf2k +g_ffs +gfs2 +ghash-generic +g_hid +gigaset +girbil-sir +gl518sm +gl520sm +gl620a +gluebi +g_mass_storage +g_midi +g_ncm +g_nokia +go7007 +go7007-loader +go7007-usb +goku_udc +goldfishfb +gp2ap002a00f +gp2ap020a00f +gpio +gpio-74x164 +gpio-addr-flash +gpio-adnp +gpio-adp5520 +gpio-adp5588 +gpio-amd8111 +gpio-arizona +gpio_backlight +gpio-charger +gpio-da9052 +gpio-da9055 +gpio-fan +gpio-generic +gpio-grgpio +gpio-ir-recv +gpio-janz-ttl +gpio-kempld +gpio_keys +gpio_keys_polled +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-mc33880 +gpio-mcp23s08 +gpio-ml-ioh +gpio_mouse +gpio-pca953x +gpio-pcf857x +gpio-rdc321x +gpio-regulator +gpio_tilt_polled +gpio-tps65912 +gpio-ts5500 +gpio-twl4030 +gpio-twl6040 +gpio-ucb1400 +gpio-viperboard +gpio-vx855 +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +g_printer +grcan +gre +grip +grip_mp +gsc_hpdi +g_serial +gspca_benq +gspca_conex +gspca_cpia1 +gspca_etoms +gspca_finepix +gspca_gl860 +gspca_jeilinj +gspca_jl2005bcd +gspca_kinect +gspca_konica +gspca_m5602 +gspca_main +gspca_mars +gspca_mr97310a +gspca_nw80x +gspca_ov519 +gspca_ov534 +gspca_ov534_9 +gspca_pac207 +gspca_pac7302 +gspca_pac7311 +gspca_se401 +gspca_sn9c2028 +gspca_sn9c20x +gspca_sonixb +gspca_sonixj +gspca_spca1528 +gspca_spca500 +gspca_spca501 +gspca_spca505 +gspca_spca506 +gspca_spca508 +gspca_spca561 +gspca_sq905 +gspca_sq905c +gspca_sq930x +gspca_stk014 +gspca_stk1135 +gspca_stv0680 +gspca_stv06xx +gspca_sunplus +gspca_t613 +gspca_topro +gspca_tv8532 +gspca_vc032x +gspca_vicam +gspca_xirlink_cit +gspca_zc3xx +gtco +guillemot +gunze +g_webcam +gxt4500 +g_zero +hamachi +hampshire +hangcheck-timer +hanwang +hci +hci_uart +hci_vhci +hdlc +hdlc_cisco +hdlcdrv +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdpvr +he +hexium_gemini +hexium_orion +hfc4s8s_l1 +hfcmulti +hfcpci +hfcsusb +hfc_usb +hfs +hfsplus +hid +hid-a4tech +hid-apple +hid-appleir +hid-aureal +hid-axff +hid-belkin +hid-cherry +hid-chicony +hid-cypress +hid-dr +hid-elecom +hid-elo +hid-emsff +hid-ezkey +hid-gaff +hid-generic +hid-gyration +hid-holtekff +hid-holtek-kbd +hid-holtek-mouse +hid-huion +hid-icade +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-lenovo-tpkbd +hid-logitech +hid-logitech-dj +hid-magicmouse +hid-microsoft +hid-monterey +hid-multitouch +hid-ntrig +hid-ortek +hidp +hid-petalynx +hid-picolcd +hid-pl +hid-primax +hid-prodikeys +hid-roccat +hid-roccat-arvo +hid-roccat-common +hid-roccat-isku +hid-roccat-kone +hid-roccat-koneplus +hid-roccat-konepure +hid-roccat-kovaplus +hid-roccat-lua +hid-roccat-pyra +hid-roccat-ryos +hid-roccat-savu +hid-saitek +hid-samsung +hid-sensor-accel-3d +hid-sensor-als +hid-sensor-gyro-3d +hid-sensor-hub +hid-sensor-iio-common +hid-sensor-magn-3d +hid-sensor-trigger +hid-sjoy +hid-sony +hid-speedlink +hid-steelseries +hid-sunplus +hid-thingm +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-uclogic +hid-wacom +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hih6130 +hisax +hisax_fcpcipnp +hisax_isac +hisax_st5481 +hmc5843 +hmc6352 +hopper +hostap +hostap_cs +hostap_pci +hostap_plx +hp100 +hpfs +hpilo +hpsa +hptiop +hsi +hsi_char +hso +hsr +htc-pasic3 +htu21 +huawei_cdc_ncm +hwa-hc +hwa-rc +hwmon-vid +hx8357 +hysdn +i1480-dfu-usb +i1480-est +i2400m +i2400m-usb +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd8111 +i2c-arb-gpio-challenge +i2c-cbus-gpio +i2c-designware-core +i2c-designware-pci +i2c-dev +i2c-diolan-u2c +i2c-eg20t +i2c-gpio +i2c-hid +i2c-i801 +i2c-isch +i2c-kempld +i2c-matroxfb +i2c-mpc +i2c-mux +i2c-mux-gpio +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-nforce2 +i2c-ocores +i2c-parport +i2c-parport-light +i2c-pasemi +i2c-pca-platform +i2c-piix4 +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-tiny-usb +i2c-via +i2c-viapro +i2c-viperboard +i2c-xiic +i2o_block +i2o_bus +i2o_core +i2o_proc +i2o_scsi +i40e +i5k_amb +i6300esb +i740fb +i82092 +ib_addr +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mad +ibmaem +ibmpex +ib_mthca +ibmveth +ibmvfc +ib_qib +ib_sa +ib_srp +ib_srpt +ib_ucm +ib_umad +ib_uverbs +icom +icp_multi +ics932s401 +idmouse +idt77252 +ieee802154 +ifb +iforce +igb +igbvf +iguanair +iio_dummy +iio_hwmon +iio-trig-interrupt +iio-trig-periodic-rtc +iio-trig-sysfs +ili210x +ili922x +ili9320 +imm +imon +ims-pcu +imx074 +imx_thermal +ina209 +ina2xx +industrialio +industrialio-triggered-buffer +inet_diag +inexio +inftl +initio +input-polldev +int51x1 +intel_vr_nor +interact +interval_tree_test +inv-mpu6050 +ioc4 +io_edgeport +io_ti +iowarrior +ip6_gre +ip6table_filter +ip6table_mangle +ip6table_nat +ip6table_raw +ip6_tables +ip6table_security +ip6t_ah +ip6t_eui64 +ip6t_frag +ip6t_hbh +ip6t_ipv6header +ip6t_MASQUERADE +ip6t_mh +ip6t_NPT +ip6t_REJECT +ip6t_rpfilter +ip6t_rt +ip6t_SYNPROXY +ip6_tunnel +ip6_vti +ipack +ipaq +ipcomp +ipcomp6 +ipddp +ipg +ip_gre +iphase +ipheth +ipip +ipmi_devintf +ipmi_poweroff +ipmi_si +ipmi_watchdog +ipoctal +ipr +ips +ip_set +ip_set_bitmap_ip +ip_set_bitmap_ipmac +ip_set_bitmap_port +ip_set_hash_ip +ip_set_hash_ipport +ip_set_hash_ipportip +ip_set_hash_ipportnet +ip_set_hash_net +ip_set_hash_netiface +ip_set_hash_netnet +ip_set_hash_netport +ip_set_hash_netportnet +ip_set_list_set +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +ip_tables +iptable_security +ipt_ah +ipt_CLUSTERIP +ipt_ECN +ipt_MASQUERADE +ipt_REJECT +ipt_rpfilter +ipt_SYNPROXY +ipt_ULOG +ip_tunnel +ip_vs +ip_vs_dh +ip_vs_ftp +ip_vs_lblc +ip_vs_lblcr +ip_vs_lc +ip_vs_nq +ip_vs_pe_sip +ip_vs_rr +ip_vs_sed +ip_vs_sh +ip_vs_wlc +ip_vs_wrr +ip_vti +ipw +ipw2100 +ipw2200 +ipwireless +ipx +ircomm +ircomm-tty +irda +irda-usb +ir-jvc-decoder +ir-kbd-i2c +irlan +ir-lirc-codec +ir-mce_kbd-decoder +ir-nec-decoder +irnet +ir-rc5-decoder +ir-rc5-sz-decoder +ir-rc6-decoder +ir-sanyo-decoder +ir-sony-decoder +irtty-sir +ir-usb +iscsi_boot_sysfs +iscsi_target_mod +iscsi_tcp +isdn +isdn_bsdcomp +isdnhdlc +isicom +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isofs +isp116x-hcd +isp1362-hcd +isp1704_charger +isp1760 +it913x-fe +itd1000 +itg3200 +iuu_phoenix +ivtv +ivtv-alsa +ivtvfb +iw_c2 +iw_cm +iw_cxgb3 +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +iw_nes +ix2505v +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsm +kafs +kalmia +kaweth +kbic +kbtab +kcomedilib +ke_counter +kempld-core +kempld_wdt +kernelcapi +keucr +keyspan +keyspan_pda +keyspan_remote +kfifo_buf +khazad +kingsun-sir +kl5kusb105 +ko2iblnd +kobil_sct +ks0108 +ks8842 +ks8851 +ks8851_mll +ks959-sir +ksdazzle-sir +ksocklnd +ksz884x +ktti +kvaser_pci +kvaser_usb +kvm +kvm-pr +kxsd9 +kxtj9 +kyrofb +l1oip +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +l2tp_ppp +l4f00242t03 +l64781 +lanai +lapb +lapbether +latch-addr-flash +lattice-ecp3-config +lcd +ld9040 +ldusb +lec +leds-88pm860x +leds-adp5520 +leds-bd2802 +leds-blinkm +leds-da903x +leds-da9052 +leds-dac124s085 +leds-gpio +leds-lm3530 +leds-lm3533 +leds-lm355x +leds-lm3642 +leds-lp3944 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lt3593 +leds-max8997 +leds-mc13783 +leds-ot200 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pca9685 +leds-pwm +leds-regulator +leds-tca6507 +leds-wm831x-status +leds-wm8350 +ledtrig-backlight +ledtrig-camera +ledtrig-default-on +ledtrig-gpio +ledtrig-heartbeat +ledtrig-oneshot +ledtrig-timer +ledtrig-transient +legousbtower +lg2160 +lgdt3305 +lgdt330x +lgs8gxx +lg-vl600 +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libahci +libceph +libcfs +libcomposite +libcrc32c +libcxgbi +libertas +libertas_cs +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libore +libosd +libsas +libsrp +lightning +line6usb +lineage-pem +linear +lirc_bt829 +lirc_dev +lirc_igorplugusb +lirc_imon +lirc_parallel +lirc_sasem +lirc_serial +lirc_sir +lirc_zilog +lis3l02dq +lis3lv02d +lis3lv02d_i2c +lis3lv02d_spi +litelink-sir +lkkbd +llc +llc2 +llog_test +ll_temac +lm25066 +lm3533-als +lm3533_bl +lm3533-core +lm3533-ctrlbank +lm3630a_bl +lm3639_bl +lm63 +lm70 +lm73 +lm75 +lm77 +lm78 +lm80 +lm83 +lm8323 +lm8333 +lm85 +lm87 +lm90 +lm92 +lm93 +lm95234 +lm95241 +lm95245 +lms283gf05 +lms501kf03 +lmv +lnbp21 +lnbp22 +lnet +lnet_selftest +lockd +lov +lp +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp8755 +lp8788_bl +lp8788-charger +lpc_ich +lpc_sch +lpddr_cmds +lpfc +lru_cache +lrw +ltc2978 +ltc4151 +ltc4215 +ltc4245 +ltc4261 +ltv350qv +lustre +lv5207lp +lvfs +lz4 +lz4_compress +lz4hc +lz4hc_compress +m25p80 +m2m-deinterlace +m52790 +m88rs2000 +ma600-sir +mac80211 +mac80211_hwsim +mac802154 +macb +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mac-gaelic +mac-greek +mac_hid +mac-iceland +mac-inuit +mac-roman +mac-romanian +mac-turkish +macvlan +macvtap +mag3110 +magellan +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +matrix-keymap +matrix_keypad +matroxfb_accel +matroxfb_base +matroxfb_crtc2 +matroxfb_DAC1064 +matroxfb_g450 +matroxfb_maven +matroxfb_misc +matroxfb_Ti3026 +matrox_w1 +max1111 +max11801_ts +max1363 +max1586 +max16064 +max16065 +max1619 +max1668 +max17040_battery +max17042_battery +max197 +max2165 +max3100 +max34440 +max517 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77686 +max77693 +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925_bl +max8925_onkey +max8925_power +max8925-regulator +max8952 +max8973-regulator +max8997 +max8997_charger +max8998 +max8998_charger +mb862xxfb +mb86a16 +mb86a20s +mc13783-adc +mc13783-pwrbutton +mc13783-regulator +mc13783_ts +mc13892-regulator +mc13xxx-core +mc13xxx-i2c +mc13xxx-regulator-core +mc13xxx-spi +mc44s803 +mceusb +mcp2120-sir +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp4725 +mcs5000_ts +mcs7780 +mcs7830 +mcs_touchkey +mct_u232 +md4 +mdc +mdc800 +mdio +me4000 +me_daq +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mem2mem_testdev +memory-notifier-error-inject +memstick +mena21_wdt +metronomefb +metro-usb +mfd +mga +mgc +michael_mic +microread +microread_i2c +microtek +mii +minix +mip6 +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +mite +mk712 +mkiss +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mma8450 +mmc_block +mmc_spi +mms114 +mos7720 +mos7840 +moxa +mpoa +mpr121_touchkey +mpt2sas +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +mrst_max3110 +ms_block +msdos +msp3400 +mspro_block +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt29f_spinand +mt312 +mt352 +mt9m001 +mt9m111 +mt9t031 +mt9t112 +mt9v011 +mt9v022 +mtd +mtd_blkdevs +mtdblock +mtdblock_ro +mtd_dataflash +mtdoops +mtdram +mtdswap +mtip32xx +mtouch +multipath +musb_am335x +musb_dsps +musb_hdrc +mv88e6060 +mv88e6xxx_drv +mvmdio +mvsas +mv_u3d_core +mv_udc +mvumi +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxl111sf-demod +mxl111sf-tuner +mxl5005s +mxl5007t +mxser +myri10ge +nand +nand_bch +nand_ecc +nand_ids +nandsim +natsemi +nau7802 +navman +nbd +nci +ncpfs +ne2k-pci +neofb +net1080 +net2272 +net2280 +netconsole +netjet +netlink_diag +netprio_cgroup +netrom +netxen_nic +newtonkbd +nfc +nfc_digital +nf_conntrack +nf_conntrack_amanda +nf_conntrack_broadcast +nf_conntrack_ftp +nf_conntrack_h323 +nf_conntrack_ipv4 +nf_conntrack_ipv6 +nf_conntrack_irc +nf_conntrack_netbios_ns +nf_conntrack_netlink +nf_conntrack_pptp +nf_conntrack_proto_dccp +nf_conntrack_proto_gre +nf_conntrack_proto_sctp +nf_conntrack_proto_udplite +nf_conntrack_sane +nf_conntrack_sip +nf_conntrack_snmp +nf_conntrack_tftp +nfcsim +nfcwilink +nf_defrag_ipv4 +nf_defrag_ipv6 +nf_nat +nf_nat_amanda +nf_nat_ftp +nf_nat_h323 +nf_nat_ipv4 +nf_nat_ipv6 +nf_nat_irc +nf_nat_pptp +nf_nat_proto_dccp +nf_nat_proto_gre +nf_nat_proto_sctp +nf_nat_proto_udplite +nf_nat_sip +nf_nat_snmp_basic +nf_nat_tftp +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +nfnetlink_log +nfnetlink_queue +nfs +nfs_acl +nfsd +nfs_layout_nfsv41_files +nfsv2 +nfsv3 +nfsv4 +nf_synproxy_core +nf_tables +nf_tables_arp +nf_tables_bridge +nf_tables_ipv4 +nf_tables_ipv6 +nft_chain_nat_ipv4 +nft_chain_nat_ipv6 +nft_chain_route_ipv4 +nft_chain_route_ipv6 +nft_compat +nft_counter +nft_ct +nft_exthdr +nft_hash +nftl +nft_limit +nft_log +nft_meta +nft_nat +nft_rbtree +nft_reject_ipv4 +ngene +n_hdlc +ni_6527 +ni_65xx +ni_660x +ni_670x +nicstar +ni_daq_700 +ni_daq_dio24 +ni_labpc +ni_labpc_cs +ni_labpc_pci +nilfs2 +ni_mio_cs +ni_pcidio +ni_pcimio +ni_tio +ni_tiocmd +niu +nlmon +nls_ascii +nls_cp1250 +nls_cp1251 +nls_cp1255 +nls_cp737 +nls_cp775 +nls_cp850 +nls_cp852 +nls_cp855 +nls_cp857 +nls_cp860 +nls_cp861 +nls_cp862 +nls_cp863 +nls_cp864 +nls_cp865 +nls_cp866 +nls_cp869 +nls_cp874 +nls_cp932 +nls_cp936 +nls_cp949 +nls_cp950 +nls_euc-jp +nls_iso8859-1 +nls_iso8859-13 +nls_iso8859-14 +nls_iso8859-15 +nls_iso8859-2 +nls_iso8859-3 +nls_iso8859-4 +nls_iso8859-5 +nls_iso8859-6 +nls_iso8859-7 +nls_iso8859-9 +nls_koi8-r +nls_koi8-ru +nls_koi8-u +nls_utf8 +nmclan_cs +nosy +notifier-error-inject +nouveau +nozomi +n_r3964 +ns558 +ns83820 +nsc-ircc +ntc_thermistor +ntfs +n_tracerouter +n_tracesink +null_blk +nvidiafb +nvme +nx-compress +nx-crypto +nxt200x +nxt6000 +obdclass +obdecho +objlayoutdriver +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stackglue +ocfs2_stack_o2cb +ocfs2_stack_user +ocrdma +of_mmc_spi +ofpart +of_serial +old_belkin-sir +olpc_apsp +omfs +omninet +on20 +on26 +onenand +opencores-kbd +openvswitch +oprofile +opticon +option +or51132 +or51211 +orinoco +orinoco_cs +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +osc +osd +osdblk +osst +oti6858 +output +ov2640 +ov5642 +ov6650 +ov7640 +ov7670 +ov772x +ov9640 +ov9740 +overlayfs +oxu210hp-hcd +ozwpan +p54common +p54pci +p54spi +p54usb +p8022 +p8023 +palmas-regulator +pandora_bl +panel +paride +parkbd +parport +parport_ax88796 +parport_cs +parport_pc +parport_serial +pasemi_edac +pasemi_nand +pata_ali +pata_amd +pata_arasan_cf +pata_artop +pata_atiixp +pata_atp867x +pata_cmd640 +pata_cmd64x +pata_cs5520 +pata_cs5530 +pata_cs5536 +pata_cypress +pata_efar +pata_hpt366 +pata_hpt37x +pata_hpt3x2n +pata_hpt3x3 +pata_it8213 +pata_it821x +pata_jmicron +pata_legacy +pata_marvell +pata_mpiix +pata_netcell +pata_ninja32 +pata_ns87410 +pata_ns87415 +pata_of_platform +pata_oldpiix +pata_opti +pata_optidma +pata_pcmcia +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sc1200 +pata_sch +pata_serverworks +pata_sil680 +pata_sis +pata_sl82c105 +pata_triflex +pata_via +pc300too +pcbc +pcd +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_can +pch_phub +pch_uart +pch_udc +pci +pci200syn +pcips2 +pci-stub +pcmcia +pcmcia_core +pcmciamtd +pcmcia_rsrc +pcnet32 +pcnet_cs +pcrypt +pcspkr +pcwd_pci +pcwd_usb +pd +pd6729 +pda_power +pdc_adma +peak_pci +peak_pcmcia +peak_usb +pegasus +penmount +percpu_test +pf +pfuze100-regulator +pg +phantom +phison +phonet +phram +phy-core +phy-exynos-dp-video +phy-generic +phy-gpio-vbus-usb +phy-isp1301 +phy-rcar-usb +phy-samsung-usb +phy-samsung-usb2 +phy-samsung-usb3 +physmap +physmap_of +pixcir_i2c_ts +pktcdvd +pktgen +pl2303 +platform_lcd +plat_nand +plat-ram +plip +plusb +pluto2 +plx_pci +pm2fb +pm3fb +pm80xx +pmbus +pmbus_core +pmc551 +pmcraid +pm-notifier-error-inject +pn533 +pn544 +pn544_i2c +pn_pep +port100 +poseidon +powermate +powernv-cpufreq +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +pppoatm +pppoe +pppox +ppp_synctty +pps_core +pps-gpio +pps-ldisc +pps_parport +pptp +prism2_usb +ps2mult +ps3disk +ps3flash +ps3_gelic +ps3-lpm +ps3rom +ps3stor_lib +ps3vram +pseries_energy +pseries-rng +psmouse +psnap +pt +ptlrpc +ptp +pvrusb2 +pwc +pwm_bl +pwm-pca9685 +pwm-twl +pwm-twl-led +pxa27x_udc +qcaux +qcserial +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qlogic_cs +qlogicfas408 +qmi_wwan +qnx4 +qnx6 +qt1010 +qt1070 +qt2160 +quatech2 +quatech_daqp_cs +quota_tree +quota_v1 +quota_v2 +qxl +r128 +r592 +r6040 +r8152 +r815x +r8169 +r8187se +r8188eu +r8192e_pci +r8192u_usb +r820t +r852 +r8712u +r8a66597-hcd +r8a66597-udc +rack-meter +radeon +radio-i2c-si470x +radio-keene +radio-ma901 +radio-maxiradio +radio-mr800 +radio-shark +radio-si4713 +radio-si476x +radio-tea5764 +radio-timb +radio-usb-si470x +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid6test +raid_class +ramoops +raw +ray_cs +rbd +rbtree_test +rc5t583-regulator +rc-adstech-dvb-t-pci +rc-alink-dtu-m +rc-anysee +rc-apac-viewcomp +rcar_vin +rc-asus-pc39 +rc-asus-ps3-100 +rc-ati-tv-wonder-hd-600 +rc-ati-x10 +rc-avermedia +rc-avermedia-a16d +rc-avermedia-cardbus +rc-avermedia-dvbt +rc-avermedia-m135a +rc-avermedia-m733a-rm-k6 +rc-avermedia-rm-ks +rc-avertv-303 +rc-azurewave-ad-tu700 +rc-behold +rc-behold-columbus +rc-budget-ci-old +rc-cinergy +rc-cinergy-1400 +rc-core +rc-delock-61959 +rc-dib0700-nec +rc-dib0700-rc5 +rc-digitalnow-tinytwin +rc-digittrade +rc-dm1105-nec +rc-dntv-live-dvb-t +rc-dntv-live-dvbt-pro +rc-em-terratec +rc-encore-enltv +rc-encore-enltv2 +rc-encore-enltv-fm53 +rc-evga-indtube +rc-eztv +rc-flydvb +rc-flyvideo +rc-fusionhdtv-mce +rc-gadmei-rm008z +rc-genius-tvgo-a11mce +rc-gotview7135 +rc-hauppauge +rc-imon-mce +rc-imon-pad +rc-iodata-bctv7e +rc-it913x-v1 +rc-it913x-v2 +rc-kaiomy +rc-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lirc +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +rc-msi-digivox-ii +rc-msi-digivox-iii +rc-msi-tvanywhere +rc-msi-tvanywhere-plus +rc-nebula +rc-nec-terratec-cinergy-xs +rc-norwood +rc-npgtech +rc-pctv-sedna +rc-pinnacle-color +rc-pinnacle-grey +rc-pinnacle-pctv-hd +rc-pixelview +rc-pixelview-002t +rc-pixelview-mk12 +rc-pixelview-new +rc-powercolor-real-angel +rc-proteus-2309 +rc-purpletv +rc-pv951 +rc-rc6-mce +rc-real-audio-220-32-keys +rc-reddo +rc-snapstream-firefly +rc-streamzap +rc-tbs-nec +rc-technisat-usb2 +rc-terratec-cinergy-xs +rc-terratec-slim +rc-terratec-slim-2 +rc-tevii-nec +rc-tivo +rc-total-media-in-hand +rc-total-media-in-hand-02 +rc-trekstor +rc-tt-1500 +rc-twinhan1027 +rc-videomate-m1f +rc-videomate-s350 +rc-videomate-tv-pvr +rc-winfast +rc-winfast-usbii-deluxe +rdc321x-southbridge +rdma_cm +rdma_ucm +rds +rds_rdma +rds_tcp +redboot +redrat3 +reed_solomon +reiserfs +remoteproc +renesas_usbhs +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd_ftl +rfkill-gpio +rfkill-regulator +rio500 +rionet +rio-scan +rivafb +rj54n1cb0c +rmd128 +rmd160 +rmd256 +rmd320 +rndis_host +rndis_wlan +rocket +romfs +rose +rotary_encoder +rp2 +rpadlpar_io +rpaphp +rpcsec_gss_krb5 +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt61pci +rt73usb +rtc-88pm80x +rtc-88pm860x +rtc-ab3100 +rtc-as3722 +rtc-bq32k +rtc-bq4802 +rtc-cmos +rtc_cmos_setup +rtc-da9052 +rtc-da9055 +rtc-ds1286 +rtc-ds1305 +rtc-ds1307 +rtc-ds1374 +rtc-ds1390 +rtc-ds1511 +rtc-ds1553 +rtc-ds1672 +rtc-ds1742 +rtc-ds2404 +rtc-ds3232 +rtc-ds3234 +rtc-em3027 +rtc-fm3130 +rtc-generic +rtc-hid-sensor-time +rtc-isl12022 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-moxart +rtc-msm6242 +rtc-palmas +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf8523 +rtc-pcf8563 +rtc-pcf8583 +rtc-ps3 +rtc-r9701 +rtc-rc5t583 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3029c2 +rtc-rx4581 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-snvs +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtd520 +rtl2830 +rtl2832 +rtl8150 +rtl8180 +rtl8187 +rtl8188ee +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192se +rtl8723ae +rtl8723be +rtl8723-common +rtl8821ae +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtl_pci +rtl_usb +rtlwifi +rts5139 +rtsx_pci +rtsx_pci_ms +rtsx_pci_sdmmc +rx51_battery +rxkad +s1d13xxxfb +s2250 +s2255drv +s2io +s2mps11 +s3fb +s5h1409 +s5h1411 +s5h1420 +s5m8767 +s626 +s6e63m0 +s921 +saa6588 +saa6752hs +saa7115 +saa7127 +saa7134 +saa7134-alsa +saa7134-dvb +saa7134-empress +saa7146 +saa7146_vv +saa7164 +saa717x +saa7706h +safe_serial +salsa20_generic +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_rcar +sata_sil +sata_sil24 +sata_sis +sata_sx4 +sata_uli +sata_via +sata_vsc +savage +savagefb +sbe-2t3e3 +sbp_target +sbs-battery +sc92031 +sca3000 +scanlog +sch_atm +sch_cbq +sch_choke +sch_codel +sch_drr +sch_dsmark +sch_fq +sch_fq_codel +sch_gred +sch_hfsc +sch_htb +sch_ingress +sch_mqprio +sch_multiq +sch_netem +sch_plug +sch_prio +sch_qfq +sch_red +sch_sfb +sch_sfq +sch_tbf +sch_teql +scsi_debug +scsi_dh +scsi_dh_alua +scsi_dh_emc +scsi_dh_hp_sw +scsi_dh_rdac +scsi_tgt +scsi_transport_fc +scsi_transport_iscsi +scsi_transport_sas +scsi_transport_spi +sctp +sctp_probe +sdhci +sdhci-of-esdhc +sdhci-of-hlwd +sdhci-pci +sdhci-pltfm +sdio_uart +sdricoh_cs +sdr-msi3101 +sedlbauer_cs +seed +sep_driver +seqiv +ser_gigaset +serial2002 +serial_cs +serio_raw +sermouse +serpent_generic +serport +serqt_usb2 +ses +sfc +sha1-powerpc +shark2 +sh_eth +shpchp +sht15 +sht21 +sh_veu +si21xx +si4713-i2c +si476x-core +sidewinder +sierra +sierra_net +sil164 +sir-dev +sis +sis190 +sis5595 +sis900 +sisfb +sisusbvga +sit +sja1000 +sja1000_isa +sja1000_of_platform +sja1000_platform +skd +skel +skfp +skge +sky2 +sl811_cs +sl811-hcd +slcan +slip +slram +sm501 +sm501fb +sm7xxfb +smb347-charger +smc91c92_cs +sm_common +sm_ftl +smm665 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smsc-ircc2 +smscufx +smsdvb +smsmdtv +smssdio +smsusb +snd +snd-ac97-codec +snd-ad1889 +snd-ak4113 +snd-ak4114 +snd-ak4117 +snd-ak4xxx-adda +snd-ali5451 +snd-aloop +snd-als300 +snd-als4000 +snd-aoa +snd-aoa-codec-onyx +snd-aoa-codec-tas +snd-aoa-codec-toonie +snd-aoa-fabric-layout +snd-aoa-i2sbus +snd-aoa-soundbus +snd-at73c213 +snd-atiixp +snd-atiixp-modem +snd-au8810 +snd-au8820 +snd-au8830 +snd-aw2 +snd-azt3328 +snd-bt87x +snd-ca0106 +snd-cmipci +snd-compress +snd-cs4281 +snd-cs46xx +snd-cs5530 +snd-cs5535audio +snd-cs8427 +snd-ctxfi +snd-darla20 +snd-darla24 +snd-dice +snd-dummy +snd-echo3g +snd-emu10k1 +snd-emu10k1-synth +snd-emu10k1x +snd-emux-synth +snd-ens1370 +snd-ens1371 +snd-es1938 +snd-es1968 +snd-firewire-lib +snd-firewire-speakers +snd-fm801 +snd-gina20 +snd-gina24 +snd-hda-codec +snd-hda-codec-analog +snd-hda-codec-ca0110 +snd-hda-codec-ca0132 +snd-hda-codec-cirrus +snd-hda-codec-cmedia +snd-hda-codec-conexant +snd-hda-codec-hdmi +snd-hda-codec-idt +snd-hda-codec-realtek +snd-hda-codec-si3054 +snd-hda-codec-via +snd-hda-intel +snd-hdsp +snd-hdspm +snd-hrtimer +snd-hwdep +snd-i2c +snd-ice1712 +snd-ice1724 +snd-ice17xx-ak4xxx +snd-indigo +snd-indigodj +snd-indigodjx +snd-indigoio +snd-indigoiox +snd-intel8x0 +snd-intel8x0m +snd-isight +snd-korg1212 +snd-layla20 +snd-layla24 +snd-lola +snd-lx6464es +snd-maestro3 +snd-mia +snd-mixart +snd-mona +snd-mpu401 +snd-mpu401-uart +snd-mtpav +snd-mts64 +snd-nm256 +snd-opl3-lib +snd-opl3-synth +snd-oxygen +snd-oxygen-lib +snd-page-alloc +snd-pcm +snd-pcxhr +snd-pdaudiocf +snd-portman2x4 +snd-powermac +snd_ps3 +snd-pt2258 +snd-rawmidi +snd-riptide +snd-rme32 +snd-rme96 +snd-rme9652 +snd-sb16-dsp +snd-sb-common +snd-scs1x +snd-seq +snd-seq-device +snd-seq-dummy +snd-seq-midi +snd-seq-midi-emul +snd-seq-midi-event +snd-seq-virmidi +snd-serial-u16550 +snd-soc-atmel-pcm +snd-soc-core +snd-soc-si476x +snd-soc-simple-card +snd-sonicvibes +snd-timer +snd-trident +snd-ua101 +snd-usb-6fire +snd-usb-audio +snd-usb-caiaq +snd-usb-hiface +snd-usbmidi-lib +snd-usb-usx2y +snd-util-mem +snd-via82xx +snd-via82xx-modem +snd-virmidi +snd-virtuoso +snd-vx222 +snd-vx-lib +snd-vxpocket +snd-ymfpci +soc_camera +soc_camera_platform +soc_mediabus +soc_scale_crop +softdog +softing +softing_cs +solo6x10 +solos-pci +sony-btf-mpx +soundcore +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +speakup +speakup_acntsa +speakup_apollo +speakup_audptr +speakup_bns +speakup_decext +speakup_dectlk +speakup_dummy +speakup_ltlk +speakup_soft +speakup_spkout +speakup_txprt +spectrum_cs +speedfax +speedtch +spi-altera +spi-bitbang +spi-butterfly +spidev +spi-dw +spi-dw-midpci +spi-gpio +spi_ks8995 +spi-lm70llp +spi-oc-tiny +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-sc18is602 +spi-tle62x0 +spi-topcliff-pch +spi-xcomm +spufs +squashfs +sr9700 +ssb +ssb-hcd +ssd1307fb +ssfdc +sst25l +ssu100 +st +st1232 +st_accel +st_accel_i2c +st_accel_spi +starfire +stb0899 +stb6000 +stb6100 +st_drv +ste_modem_rproc +stex +st_gyro +st_gyro_i2c +st_gyro_spi +stinger +stir4200 +stk1160 +stkwebcam +st_magn +st_magn_i2c +st_magn_spi +stmmac +stmpe-keypad +stmpe-ts +stowaway +stp +st_pressure +st_pressure_i2c +st_pressure_spi +streamzap +st_sensors +st_sensors_i2c +st_sensors_spi +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv6110 +stv6110x +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sur40 +svcrdma +svgalib +sx8 +sym53c500_cs +sym53c8xx +symbolserial +synaptics_i2c +synaptics_i2c_rmi4 +synaptics_usb +synclink +synclink_cs +synclink_gt +synclinkmp +sysv +t1pci +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +tc3589x-keypad +tca6416-keypad +tca8418_keypad +tcm_fc +tcm_loop +tcm_qla2xxx +tcm_usb_gadget +tcp_bic +tcp_diag +tcp_highspeed +tcp_htcp +tcp_hybla +tcp_illinois +tcp_lp +tcp_probe +tcp_scalable +tcp_vegas +tcp_veno +tcp_westwood +tcp_yeah +tcrypt +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18271 +tda18271c2dd +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda998x +tdfx +tdfxfb +tdo24m +tea +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tef6862 +tehuti +tekram-sir +teles_cs +test-kstrtox +test_power +test-string_helpers +tg3 +tgr192 +therm_pm72 +thmc50 +ti-adc081c +ti_dac7512 +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +timb_dma +timberdale +timblogiw +timbuart +timeriomem-rng +tipc +ti_usb_3410_5052 +tlan +tm6000 +tm6000-alsa +tm6000-dvb +tmdc +tmiofb +tmp006 +tmp102 +tmp401 +tmp421 +tmscsim +toim3232-sir +touchit213 +touchright +touchwin +tpci200 +tpm_atmel +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_i2c_stm_st33 +tpm_ibmvtpm +tpm-rng +tps51632-regulator +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65090-charger +tps65090-regulator +tps65217 +tps65217_bl +tps65217-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps80031-regulator +trancevibrator +tranzport +tridentfb +ts2020 +ts_bm +tsc2005 +tsc2007 +tsc40 +ts_fsm +ts_kmp +tsl2550 +tsl2563 +tsl2583 +tsl2x7x_core +tsl4531 +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +tua6100 +tua9001 +tulip +tuner +tuner_it913x +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +tusb6010 +tvaudio +tveeprom +tvp5150 +tw2804 +tw9903 +tw9906 +tw9910 +twidjoy +twl4030_charger +twl4030_keypad +twl4030-madc +twl4030-madc-hwmon +twl4030-pwrbutton +twl4030-vibra +twl4030_wdt +twl6030-gpadc +twl6040-vibra +twofish_common +twofish_generic +typhoon +u132-hcd +uartlite +ubi +ubifs +ucb1400_core +ucb1400_ts +ucd9000 +ucd9200 +uda1342 +udc-core +udf +udl +udlfb +udp_diag +ueagle-atm +u_ether +ufs +ufshcd +ufshcd-pci +ufshcd-pltfrm +uhid +uio +uio_aec +uio_cif +uio_dmem_genirq +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_sercos3 +uli526x +umc +umem +ums-alauda +ums-cypress +ums-datafab +ums-eneub6250 +ums-freecom +ums-isd200 +ums-jumpshot +ums-karma +ums-onetouch +ums-realtek +ums-sddr09 +ums-sddr55 +ums-usbat +uninorth-agp +unix_diag +upd64031a +upd64083 +u_rndis +usb3503 +usb_8dev +usb8xxx +usbatm +usb_debug +usbdux +usbduxfast +usbduxsigma +usb_f_acm +usb_f_ecm +usb_f_ecm_subset +usb_f_eem +usb_f_mass_storage +usb_f_ncm +usb_f_obex +usb_f_phonet +usb_f_rndis +usb_f_serial +usb_f_ss_lb +usb_gigaset +usbhid +usbip-core +usbip-host +usbkbd +usblcd +usbled +usblp +usbmisc_imx +usbmon +usbmouse +usbnet +usbserial +usb-serial-simple +usbsevseg +usb-storage +usbtest +usbtmc +usbtouchscreen +usbtv +usbvision +usb_wwan +u_serial +userspace-consumer +ushc +uss720 +uvcvideo +uvesafb +uwb +ux500 +v4l2-common +v4l2-dv-timings +v4l2-int-device +v4l2-mem2mem +vcan +vcnl4000 +ves1820 +ves1x93 +veth +vfio +vfio_iommu_spapr_tce +vfio-pci +vga16fb +vgastate +vgg2432a4 +vhci-hcd +vhost +vhost_net +vhost_scsi +via +via686a +via-ircc +via-rhine +via-sdmmc +via-velocity +videobuf2-core +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-memops +videobuf2-vmalloc +videobuf-core +videobuf-dma-contig +videobuf-dma-sg +videobuf-dvb +videobuf-vmalloc +videodev +viperboard +viperboard_adc +virtio +virtio_balloon +virtio_blk +virtio_console +virtio_mmio +virtio_net +virtio_pci +virtio_ring +virtio-rng +virtio_scsi +virtual +visor +vivi +vlsi_ir +vmac +vme +vme_pio2 +vme_user +vme_vmivme7805 +vmk80xx +vmwgfx +vmxnet3 +vp27smpx +vringh +vsock +vsxxxaa +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxge +vxlan +w1_bq27000 +w1_ds2408 +w1_ds2413 +w1_ds2423 +w1_ds2431 +w1_ds2433 +w1_ds2760 +w1_ds2780 +w1_ds2781 +w1_ds28e04 +w1-gpio +w1_smem +w1_therm +w35und +w5100 +w5300 +w6692 +w83781d +w83791d +w83792d +w83793 +w83795 +w83977af_ir +w83l785ts +w83l786ng +w9966 +wacom +wacom_i2c +wacom_w8001 +walkera0701 +wanxl +warrior +wbsd +wcn36xx +wdrtas +wdt_pci +whci +whci-hcd +whc-rc +whiteheat +wil6210 +wimax +winbond-840 +windfarm_ad7417_sensor +windfarm_core +windfarm_cpufreq_clamp +windfarm_fcu_controls +windfarm_lm75_sensor +windfarm_lm87_sensor +windfarm_max6690_sensor +windfarm_pid +windfarm_pm112 +windfarm_pm121 +windfarm_pm72 +windfarm_pm81 +windfarm_pm91 +windfarm_rm31 +windfarm_smu_controls +windfarm_smu_sat +windfarm_smu_sensors +wire +wishbone-serial +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wl3501_cs +wlags49_h25_cs +wlags49_h2_cs +wlcore +wlcore_sdio +wlcore_spi +wm831x_backup +wm831x_bl +wm831x-dcdc +wm831x-hwmon +wm831x-isink +wm831x-ldo +wm831x-on +wm831x_power +wm831x-ts +wm831x_wdt +wm8350-hwmon +wm8350_power +wm8350-regulator +wm8350_wdt +wm8400-regulator +wm8739 +wm8775 +wm8994-regulator +wm97xx-ts +wp512 +wusb-cbaf +wusbcore +wusb-wa +x25 +x25_asy +xc4000 +xc5000 +xcbc +xfrm4_mode_beet +xfrm4_mode_transport +xfrm4_mode_tunnel +xfrm4_tunnel +xfrm6_mode_beet +xfrm6_mode_ro +xfrm6_mode_transport +xfrm6_mode_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_ipcomp +xfrm_user +xfs +xgifb +xgmac +xilinx_ps2 +xilinx_uartps +xillybus_core +xillybus_of +xillybus_pcie +xirc2ps_cs +xircom_cb +xor +xpad +xprtrdma +xsens_mt +x_tables +xt_addrtype +xt_AUDIT +xt_bpf +xt_CHECKSUM +xt_CLASSIFY +xt_cluster +xt_comment +xt_connbytes +xt_connlabel +xt_connlimit +xt_connmark +xt_CONNSECMARK +xt_conntrack +xt_cpu +xt_CT +xt_dccp +xt_devgroup +xt_dscp +xt_DSCP +xt_ecn +xt_esp +xt_hashlimit +xt_helper +xt_hl +xt_HL +xt_HMARK +xt_IDLETIMER +xt_iprange +xt_ipvs +xtkbd +xt_LED +xt_length +xt_limit +xt_LOG +xt_mac +xt_mark +xt_multiport +xt_nat +xt_NETMAP +xt_nfacct +xt_NFLOG +xt_NFQUEUE +xt_osf +xt_owner +xt_physdev +xt_pkttype +xt_policy +xt_quota +xt_rateest +xt_RATEEST +xt_realm +xt_recent +xt_REDIRECT +xts +xt_sctp +xt_SECMARK +xt_set +xt_socket +xt_state +xt_statistic +xt_string +xt_tcpmss +xt_TCPMSS +xt_TCPOPTSTRIP +xt_tcpudp +xt_TEE +xt_time +xt_TPROXY +xt_TRACE +xt_u32 +xusbatm +xz_dec_test +yam +yealink +yellowfin +yenta_socket +yurex +zaurus +zd1201 +zd1211rw +zforce_ts +zhenhua +zl10036 +zl10039 +zl10353 +zl6100 +zlib +zr364xx +zram +zte_ev --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/ppc64el/generic +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/ppc64el/generic @@ -0,0 +1,13569 @@ +EXPORT_SYMBOL arch/powerpc/platforms/pseries/hvcserver 0x048d27cc hvcs_register_connection +EXPORT_SYMBOL arch/powerpc/platforms/pseries/hvcserver 0x536d329b hvcs_get_partner_info +EXPORT_SYMBOL arch/powerpc/platforms/pseries/hvcserver 0xc39c3704 hvcs_free_partner_info +EXPORT_SYMBOL arch/powerpc/platforms/pseries/hvcserver 0xd0a02396 hvcs_free_connection +EXPORT_SYMBOL crypto/gf128mul 0x0c2f123f gf128mul_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x1068004b gf128mul_bbe +EXPORT_SYMBOL crypto/gf128mul 0x2f2889a0 gf128mul_init_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x384ef9ce gf128mul_64k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x56af0dbd gf128mul_x_ble +EXPORT_SYMBOL crypto/gf128mul 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL crypto/gf128mul 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL crypto/gf128mul 0xbd17a0df gf128mul_4k_lle +EXPORT_SYMBOL crypto/gf128mul 0xc0890413 gf128mul_64k_lle +EXPORT_SYMBOL crypto/gf128mul 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/atm/suni 0xf8ec8be8 suni_init +EXPORT_SYMBOL drivers/bcma/bcma 0x8b8ad172 bcma_core_dma_translation +EXPORT_SYMBOL drivers/block/drbd/drbd 0x127a5901 drbd_set_st_err_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x35131b36 drbd_role_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x7730f22d drbd_conn_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0xaf27bebf drbd_disk_str +EXPORT_SYMBOL drivers/block/paride/paride 0x023c685d pi_write_block +EXPORT_SYMBOL drivers/block/paride/paride 0x16b9b9b5 pi_connect +EXPORT_SYMBOL drivers/block/paride/paride 0x40f60823 pi_do_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0x87a454c0 pi_read_block +EXPORT_SYMBOL drivers/block/paride/paride 0x97c392ed paride_register +EXPORT_SYMBOL drivers/block/paride/paride 0x9a0620ac pi_read_regr +EXPORT_SYMBOL drivers/block/paride/paride 0xb1fb9abc pi_schedule_claimed +EXPORT_SYMBOL drivers/block/paride/paride 0xbaf1f607 pi_init +EXPORT_SYMBOL drivers/block/paride/paride 0xc4dd35d3 pi_write_regr +EXPORT_SYMBOL drivers/block/paride/paride 0xc651b3c8 paride_unregister +EXPORT_SYMBOL drivers/block/paride/paride 0xe10da317 pi_release +EXPORT_SYMBOL drivers/block/paride/paride 0xf4b467f3 pi_disconnect +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x29d66f0d dw_dma_cyclic_stop +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x3512314f dw_dma_cyclic_free +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x4f246de2 dw_dma_get_dst_addr +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x90829d85 dw_dma_cyclic_prep +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0x9b3d2068 dw_dma_cyclic_start +EXPORT_SYMBOL drivers/dma/dw/dw_dmac_core 0xa9677c7d dw_dma_get_src_addr +EXPORT_SYMBOL drivers/edac/edac_core 0x9f0d9796 edac_mc_find +EXPORT_SYMBOL drivers/firewire/firewire-core 0x04d0f641 fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0b0cebda fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0d892457 fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0f7d6af8 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x16e91e21 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1bba2ed4 fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2df2079b fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3c56ef91 fw_workqueue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3d7552b7 fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4e6d5183 fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4f436be7 fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x5eb162cc fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0x63951bf2 fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x645b715f fw_core_add_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x65c9438b fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x78e95943 fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x8a681178 fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0x90863005 fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0x921e7aaf fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x931ed60a fw_send_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x9db31ea1 fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa12ae895 fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa692aeef fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0xaa08a8bc fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0xad55a5de fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0xae428b7a fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb2c00a3e fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0xbedf1f11 fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xbfd947ce fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf22b5fe8 fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf684f1e8 fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf82087ae fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0xfe9e051d fw_card_add +EXPORT_SYMBOL drivers/fmc/fmc 0x0fbc856e fmc_find_sdb_device +EXPORT_SYMBOL drivers/fmc/fmc 0x132f0f64 fmc_driver_register +EXPORT_SYMBOL drivers/fmc/fmc 0x3dd7c98b fmc_device_register_n +EXPORT_SYMBOL drivers/fmc/fmc 0x426d6fa3 fmc_device_register +EXPORT_SYMBOL drivers/fmc/fmc 0x4bf508ba fmc_scan_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0x9b1804ae fmc_reprogram +EXPORT_SYMBOL drivers/fmc/fmc 0xb0cef51d fmc_device_unregister_n +EXPORT_SYMBOL drivers/fmc/fmc 0xbd89744a fmc_show_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xc1bca9e4 fmc_free_sdb_tree +EXPORT_SYMBOL drivers/fmc/fmc 0xce0ed66d fmc_driver_unregister +EXPORT_SYMBOL drivers/fmc/fmc 0xf763b7fa fmc_device_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00025916 drm_mode_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00050104 drm_mode_connector_detach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00667d8a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0123cf07 drm_agp_unbind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x02480352 drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0x026c0d6b drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0285d997 drm_idlelock_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x031209fb drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0452297d drm_idlelock_take +EXPORT_SYMBOL drivers/gpu/drm/drm 0x04e634fd drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0624db4f drm_connector_unplug_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x06d10650 drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x070f4f34 drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm 0x09dd2498 drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ae4b94c drm_ht_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c9ee8de drm_irq_uninstall +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ebf44ff drm_addbufs_pci +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0f597ed6 drm_rmmap_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x10494afa drm_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12220623 drm_pcie_get_speed_cap_mask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x12c6276a drm_buffer_read_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13bea24c drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13f1f101 drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0x142b8b35 drm_buffer_copy_from_user +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14a9a178 drm_get_format_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14d587f1 drm_framebuffer_unreference +EXPORT_SYMBOL drivers/gpu/drm/drm 0x189f6401 drm_mm_debug_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0x194eadaa drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19e44324 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19efd37a drm_get_encoder_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a3f180e drm_addbufs_agp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a770ac3 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1b2dff7f drm_bridge_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1d8b514f drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1defe834 drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1dff94a2 drm_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20645642 drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20694cd3 drm_unplug_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x20b37c60 drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm 0x223ea4dd drm_platform_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x23fa346a drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x24d0654b drm_platform_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x264d2fdd drm_mode_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x26aa09e0 drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x27312100 drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x296b9a89 drm_sysfs_connector_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29ad006c drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a942ab2 drm_mm_insert_node_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2befd9bc drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d80be4d drm_mm_init_scan +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e7a4300 drm_rgb_quant_range_selectable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f0b064f drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f0f21d7 drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f3a56ed drm_mode_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35025cc2 drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0x357308c7 drm_mode_group_init_legacy_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36412c17 drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x368d0169 drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36f91ef3 drm_mm_clean +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38a4f7ae drm_format_num_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x391868d3 drm_dev_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x39c3de4a drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x39f80438 drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ac1fef9 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ae7b2d0 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b9d009a drm_format_plane_cpp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d4b8108 drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e4086f3 drm_agp_bind_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3eb37b9d drm_ht_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ffab281 drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43384bd9 drm_buffer_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x43599a41 drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x442a9567 drm_vblank_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44903c57 drm_vblank_pre_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44a84621 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x44c88546 drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4942afa0 drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x498dcb5e drm_ut_debug_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x49fabf0d drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4a0a323e drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c31946e drm_bridge_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c511235 drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4cf3efa1 drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e5ec255 drm_pci_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4ea1f5a2 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50e28c07 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0x526f6f71 drm_rect_calc_hscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x53df1245 drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56f302c9 drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5985790e drm_compat_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5b610b5a drm_agp_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5b658521 drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d7318dc drm_global_item_ref +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e48febe drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5e9d395c drm_core_ioremapfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f6085be drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6090be61 drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x61ebe740 drm_prime_sg_to_page_addr_arrays +EXPORT_SYMBOL drivers/gpu/drm/drm 0x629c05e1 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x62d2c96d drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x65e89fdf drm_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x661164e5 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66803841 drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0x671b0b5d drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6900d335 drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6b6d7375 drm_timestamp_precision +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6bb79c79 drm_ati_pcigart_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6bea8cd5 drm_sysfs_connector_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6bf180f1 drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cc3c29e drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6cee2e42 drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x724480d7 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x72fad255 drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x73adf42e drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74d2bb39 drm_pci_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x755d510c drm_prime_destroy_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x772e5ae0 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x781775d8 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7a4e7297 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c6f7cd5 drm_getsarea +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7fe983e6 drm_rmmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8094ba10 drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x80bff8b8 drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81ba930c drm_mm_init_scan_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81e773e4 drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83336cf6 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83b42864 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0x85b641be drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm 0x87e066c5 drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8875904a drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x894f4cf5 drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a81ee1c drm_calc_vbltimestamp_from_scanoutpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d281ee2 drm_agp_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8de13715 drm_format_vert_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8dfb019d drm_buffer_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8e995f7e drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8edf0626 drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8eff9111 drm_ht_find_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f652883 drm_get_last_vbltimestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f7df3a7 drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x914e1c59 drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91aa5a0b drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm 0x95d8a538 drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96089bde drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x970f5330 drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9745d638 drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0x98110c1b drm_ati_pcigart_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9972db48 drm_rect_calc_vscale_relaxed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x99a81a01 drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9c554a1a drm_agp_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9cf8c368 drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d70fc2a drm_rnodes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e3754f0 drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e43a2ac drm_core_ioremap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9e9dfd12 drm_agp_bind +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9eccfe56 drm_mode_hsync +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1df5a8a drm_agp_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa1f4e9e6 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa28078b2 drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa2db75a3 drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa36d9f3b drm_pci_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa3a02e8c drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa40daa07 drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa47a1672 drm_global_mutex +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa5dbd572 drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa65681bd drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa793f4ee drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa89bb3f4 drm_agp_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa96acfcb drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaa2a1fe5 drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xab39feca drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xabeb313e drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0xabeb9d0e drm_addmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac1fde12 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaf9ecbf7 drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0xafb0cb6f drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0061782 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5540008 drm_global_item_unref +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb572a9f0 drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb5fa55f1 drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6aa2c49 drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb70abf05 drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb95beb55 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9e9e939 drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb07e97c drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe001c53 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe262591 drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbe6f55a1 drm_get_connector_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbee496f6 drm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbee518be drm_pci_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc3c30f6f drm_core_ioremap_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4000f9f drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc414c422 drm_vblank_offdelay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5bed984 drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc74eab90 drm_edid_to_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7f7cc11 drm_vma_offset_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc881dd0c drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc8fd81e0 drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc971dc4c drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xca45efbc drm_format_horz_chroma_subsampling +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcaecd608 drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcb042366 drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd0fc417 drm_ht_just_insert_please +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcea5e42a drm_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcec158f0 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcfe22a85 drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd0f1dbbc drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd122f8f9 drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd179ea39 drm_mode_create_dirty_info_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2335101 drm_fb_get_bpp_depth +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd3def833 drm_irq_install +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd639a153 drm_select_eld +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd91ad114 drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd9489c7b drm_get_pci_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd998572f drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xda5f8fc0 drm_framebuffer_reference +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbb5a9f5 drm_ht_remove_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc28d94f drm_mode_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd026cbf drm_mm_dump_table +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd1cae9b drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xddaf0b57 drm_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0xde056f08 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xde107e0f drm_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xde37169b drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2d2e5e9 drm_agp_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2e37125 drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2ef97e4 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2f6b7e4 drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2fc83a7 drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe3ee8cc4 drm_crtc_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe5a420e7 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6f46e6e drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe7197773 drm_ht_insert_item +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8649896 drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea5f35dd drm_core_reclaim_buffers +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeaca5ff2 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xebe9a41f drm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xefdf9b69 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf08d712a drm_mode_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0d9660d drm_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1c1f3d1 drm_prime_init_file_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf219f21d drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3098c45 drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf35bd884 drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf3f396d4 drm_vblank_post_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf446a0e2 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6d3a423 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfa64fa1a drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb2b1d72 drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb497216 drm_mm_insert_node_in_range_generic +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd063935 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd31e5b8 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd567a5f drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe4a68c7 drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfe9bc39f drm_gem_dumb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xffc6c87a drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x01663e07 drm_fb_helper_fill_fix +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x08f2c309 i2c_dp_aux_add_bus +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x08fb544a drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x098e47d2 drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0f96ec70 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x163251c8 drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1e0532a1 drm_fb_helper_single_add_all_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x26c13d4d drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x34871adf drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3666b00d drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x37e31b15 drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x38827db7 drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3cdb521c drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x441dce81 drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x450496e4 drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4943dd21 drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x506cd8bd drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x51717e7e drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5ba2d062 drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6bfdd136 drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x711a004a drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x759ab678 drm_fb_helper_fill_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x783391b2 drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7b389eb2 drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84e924ba drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa77858bb drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8d6809d drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xba2ad3e8 drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbb4fb566 drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc44d9061 drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcab971f1 drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd84cdc02 drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe15e4ece drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe9564afa drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xed2a1d50 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf0306ec4 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf307c9de drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf9fa393a drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfdfe568e drm_fb_helper_restore_fbdev_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xff3d68d2 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x2ead53ae drm_get_usb_dev +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0x4be85e66 drm_usb_init +EXPORT_SYMBOL drivers/gpu/drm/drm_usb 0xfd66a91a drm_usb_exit +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x00a82ff0 ttm_agp_tt_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0202fefc ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0c7ad9f5 ttm_dma_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x17c60e86 ttm_bo_del_sub_from_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1f4a67c2 ttm_pool_unpopulate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x20257674 ttm_tt_set_placement_caching +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2230ee2b ttm_agp_tt_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x236c3ae3 ttm_mem_io_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x262484f6 ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2a8788d8 ttm_prime_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b54aa9a ttm_object_file_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2cd96c4c ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x324ba1a4 ttm_pool_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x33c3a9fd ttm_bo_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3c397314 ttm_bo_dma_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x422f0f26 ttm_bo_swapout_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x485a5bc0 ttm_ref_object_add +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x48bb8c8b ttm_mem_io_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4d67471b ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x4e8dd264 ttm_bo_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x55647864 ttm_bo_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x564e1aee ttm_bo_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5a8fdfea ttm_vt_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5cac4b89 ttm_page_alloc_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x5e64a662 ttm_bo_mem_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6052860c ttm_round_pot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6b4d0590 ttm_bo_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7261451f ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x79de0e70 ttm_bo_unlock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7a4cbdae ttm_bo_synccpu_write_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7b732397 ttm_mem_io_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x7d55da85 ttm_read_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x80d86f0e ttm_object_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x813ed4a3 ttm_agp_tt_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x81cbc27b ttm_dma_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x82e15a05 ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x84a13931 ttm_write_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x880a15ad ttm_base_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8830caf5 ttm_bo_clean_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x886cf055 ttm_mem_global_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x88d96b2d ttm_bo_init_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x89a443de ttm_write_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x8d14adbf ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x94894449 ttm_base_object_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x957067eb ttm_bo_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x96009d94 ttm_fbdev_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x998e45c0 ttm_ref_object_base_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9b84c95a ttm_bo_acc_size +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa2a129fd ttm_suspend_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa4001b58 ttm_bo_device_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa543d01a ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa58391d1 ttm_mem_io_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa73de2a9 ttm_vt_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa8c16642 ttm_bo_wait +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xab07d1ec ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xabddc4b1 ttm_tt_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xac49527d ttm_bo_add_to_lru +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb83c6470 ttm_lock_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbd2dba7f ttm_bo_lock_delayed_workqueue +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbd2e1f29 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbfb2af88 ttm_bo_move_ttm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc5f0c2da ttm_read_lock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcb180aa4 ttm_bo_mmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xce6e43a8 ttm_base_object_lookup_for_ref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd24ef8df ttm_mem_global_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd25c28b6 ttm_bo_synccpu_write_grab +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd7f51742 ttm_suspend_unlock +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd8edb115 ttm_base_object_unref +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd9597b10 ttm_mem_global_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd9b75495 ttm_bo_manager_func +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe4a48d43 ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe55dcf2c ttm_mem_global_release +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xeb1cd6cd ttm_object_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf46ecd61 ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf7cf285d ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf8fa8d63 ttm_bo_evict_mm +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfbc2c5ec ttm_object_file_release +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x0903c239 vid_from_reg +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0xef1c781c vid_which_vrm +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x4a0f99fe i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x686b7e8a i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xbedfcbe4 i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x21f039ba i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x762eb9a0 i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0x2e5f9cb5 amd756_smbus +EXPORT_SYMBOL drivers/iio/accel/st_accel 0x17f65cdb st_accel_common_probe +EXPORT_SYMBOL drivers/iio/accel/st_accel 0xc16f611e st_accel_common_remove +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x23d9d795 hid_sensor_read_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x556b626f hid_sensor_write_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0x9ab143ec hid_sensor_write_samp_freq_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xb8168dca hid_sensor_read_raw_hyst_value +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-iio-common 0xcec87c23 hid_sensor_parse_common_attributes +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0x537c0708 hid_sensor_setup_trigger +EXPORT_SYMBOL drivers/iio/common/hid-sensors/hid-sensor-trigger 0xef13f788 hid_sensor_remove_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x074d7047 st_sensors_trigger_handler +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x356a72e2 st_sensors_sysfs_set_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x4f940ec0 st_sensors_read_info_raw +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x543ab6da st_sensors_set_fullscale_by_gain +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x66af414e st_sensors_set_axis_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x97bd010a st_sensors_allocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x9cd1a880 st_sensors_set_odr +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0x9f6a1784 st_sensors_sysfs_sampling_frequency_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xb00986b4 st_sensors_init_sensor +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xb12fa167 st_sensors_deallocate_trigger +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd322b36f st_sensors_check_device_support +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd658857f st_sensors_sysfs_scale_avail +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xd8e8dea8 st_sensors_get_buffer_element +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xf5f421fb st_sensors_set_enable +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xf69d05d5 st_sensors_sysfs_get_sampling_frequency +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors 0xf999051f st_sensors_set_dataready_irq +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_i2c 0xb0ab0cac st_sensors_i2c_configure +EXPORT_SYMBOL drivers/iio/common/st_sensors/st_sensors_spi 0xec74b073 st_sensors_spi_configure +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0x0c543157 st_gyro_common_remove +EXPORT_SYMBOL drivers/iio/gyro/st_gyro 0xce8c71bc st_gyro_common_probe +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x3acd1a28 adis_debugfs_reg_access +EXPORT_SYMBOL drivers/iio/imu/adis_lib 0x981eee19 adis_enable_irq +EXPORT_SYMBOL drivers/iio/industrialio 0x01219d93 iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0x156e2e7d iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x15f4827f iio_buffer_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x25f6d7ef iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x485d29b1 iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0x4adacfe4 iio_trigger_poll_chained +EXPORT_SYMBOL drivers/iio/industrialio 0x59c09df7 iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0x66994ea4 iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0x66f44749 iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x7a25a27a iio_buffer_store_enable +EXPORT_SYMBOL drivers/iio/industrialio 0x8cbfe8ab iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0x932417b6 iio_buffer_read_length +EXPORT_SYMBOL drivers/iio/industrialio 0xa54b114d iio_triggered_buffer_postenable +EXPORT_SYMBOL drivers/iio/industrialio 0xac175fd1 iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0xb2e13e67 iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0xb69088fc iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0xc96eb15b iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xde21525b iio_buffer_write_length +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xe06c183e iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0xe47f14b9 iio_buffer_register +EXPORT_SYMBOL drivers/iio/industrialio 0xe619f099 iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0xeef2525b iio_buffer_show_enable +EXPORT_SYMBOL drivers/iio/industrialio 0xf711c618 iio_triggered_buffer_predisable +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0xa47e6b54 iio_triggered_buffer_setup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-buffer 0xc584abdd iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/kfifo_buf 0x9f36ee1a iio_kfifo_free +EXPORT_SYMBOL drivers/iio/kfifo_buf 0xd8c4e8a3 iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0x702329dd st_magn_common_remove +EXPORT_SYMBOL drivers/iio/magnetometer/st_magn 0xae687e26 st_magn_common_probe +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x5ade5b20 st_press_common_remove +EXPORT_SYMBOL drivers/iio/pressure/st_pressure 0x91bc6a61 st_press_common_probe +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x049ace30 rdma_addr_find_smac_by_sgid +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x04b8b6d7 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1c3c0ad3 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x1ea5767b rdma_addr_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x273f4cca rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x32a8402c rdma_addr_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x446fd7c9 rdma_addr_find_dmac_by_grh +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0x59252c9d rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_addr 0xe5be9f7b rdma_copy_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x05d52cd2 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x1c84bb43 ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x2a3ac367 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x2c684588 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x42ddd8ec ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4342de5f ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x4f308fe7 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x5510c849 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x563ae57e ib_send_cm_lap +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x646afd6a ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x6718e7ca ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x6c69d2d7 cm_class +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x8129f483 ib_send_cm_apr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xb95bae40 ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xc13bc69d ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xd47661c2 ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xd52f1a36 ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06c82fcf mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06ee0416 ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x09683e01 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0a67e718 ib_modify_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0a68e601 ibnl_add_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c1b9ac1 ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0d71238f ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x10563aad ib_get_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x14f84918 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x153c28be ib_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x159ce079 ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x171f99f1 ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x17f13ad1 ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1924f961 ib_create_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1a856fda ib_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e491a04 ib_unmap_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22f3cf93 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x27388398 ib_alloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x289eda0d ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a0be7b2 ib_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2ed6e386 ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x349081ee ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x387353bd ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3a8a86f8 ib_destroy_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b263c6c rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b31d1f6 ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3c314053 ib_rereg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x43f8a623 ib_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4962eecf ib_init_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4c4bf016 ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4fd809cb ib_dealloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50dbc447 ib_flush_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5453a484 ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x67546b3f ib_free_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x69ef942b ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6a245a46 ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b65178a ib_alloc_fast_reg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6dccf113 ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6e030e26 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7036b5e3 ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x703cc3c0 ib_resolve_eth_l2_attrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x72c327b3 ib_fmr_pool_map_phys +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75de1196 ib_umem_page_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x78c464d8 ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7a61ab17 ib_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x81c26311 ib_dealloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x84c18cd9 ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8a731b13 ib_dealloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8b626553 ib_alloc_mw +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8c889ea6 ib_dereg_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90076298 ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90968be2 ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9340cb6d ib_alloc_fmr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9388c406 ib_fmr_pool_unmap +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x99fdccda ib_get_dma_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9eca199b ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9ef2e826 ib_create_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa38bb6f0 ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa38d8add ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa3ea4c18 ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa432baf6 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xac217df9 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xacfc8b9a ib_find_cached_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xad94c465 ib_query_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb32fc377 ib_create_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb457e335 ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7c21bbe ib_reg_phys_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb91245e6 ib_destroy_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xba6286ea ib_dealloc_xrcd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc1736c09 ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc2bdd8cf ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc2ec4fe5 ib_create_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc32b59ff ib_destroy_fmr_pool +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc49f23dd ib_destroy_flow +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc67f14a5 ibnl_remove_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc99d7ee0 ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xca677512 ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcf214801 ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd33b5edd ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd7912fb7 ib_query_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda7ed344 ib_alloc_fast_reg_page_list +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdaf4d9a2 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe2f4fe7d ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5433567 ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf69b3724 ib_get_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf7263057 ib_destroy_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf75d92db ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfa45871d ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfc150956 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xff21b10f ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x14124b0b ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x16e88b3f ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x32756714 ib_redirect_mad_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x3bc55d4d ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x4ab04ebe ib_cancel_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6b817791 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x6f077fcf ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x729ee011 ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7652a914 ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x7b5d4b7a ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0x946d5d27 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xadb1cd57 ib_process_mad_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xb3f6e0b9 ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xbc04af5b ib_register_mad_snoop +EXPORT_SYMBOL drivers/infiniband/core/ib_mad 0xdb9f887a ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x0a941249 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x22f07253 ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x4b264426 ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x5328d7a6 ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x576fdbac ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x5bdefd4b ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x71418f98 ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x78313a5b ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0x9a1cd50d ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xa557c62c ib_init_ah_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xddc330e7 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_sa 0xfffc8df9 ib_sa_service_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2569d757 ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x52a6ce77 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7971c00e ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xe350f2aa ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x3192b9f6 iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x57c8c622 iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x65a8504d iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x7f877d77 iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x85319e83 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xca3c119f iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xce5a570f iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xd0827d5c iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x079ec67b rdma_set_ib_paths +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x0883d3ec rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x0bd6e631 rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1ebc85e2 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x2d9ab012 rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x384f5010 rdma_create_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x43d7b0d9 rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4677306a rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x57469a2d rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x692a4813 rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x857bf45a rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x8dddb079 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x92076cf9 rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x933cd646 rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x9fb5e238 rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xb1740244 rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xcc0dad82 rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xebca1c27 rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xec03af83 rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xf51a8ec9 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xfe0c37ff rdma_destroy_qp +EXPORT_SYMBOL drivers/input/gameport/gameport 0x31b73d01 __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x38108aca gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0x4774f71c gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x5bafc6c0 __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x6f21d6bc gameport_start_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0xb34bb6a6 gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0xd57c2e7a gameport_unregister_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0xe13d3ee5 gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0xed5936e8 gameport_close +EXPORT_SYMBOL drivers/input/input-polldev 0x8f1acd89 input_unregister_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xb67ad834 input_register_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xcafddd58 input_allocate_polled_device +EXPORT_SYMBOL drivers/input/input-polldev 0xf845caa4 input_free_polled_device +EXPORT_SYMBOL drivers/input/matrix-keymap 0x1f44d784 matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x036743e1 ad714x_remove +EXPORT_SYMBOL drivers/input/misc/ad714x 0x084c59b4 ad714x_enable +EXPORT_SYMBOL drivers/input/misc/ad714x 0x50d2c8b3 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/ad714x 0xde956b2c ad714x_disable +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x892d76b2 cma3000_resume +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x89d9444e cma3000_exit +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xb09a6679 cma3000_init +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xca3f100a cma3000_suspend +EXPORT_SYMBOL drivers/input/sparse-keymap 0x3a1f4086 sparse_keymap_free +EXPORT_SYMBOL drivers/input/sparse-keymap 0x479025d1 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x49167f5e sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/sparse-keymap 0x80fe5c0d sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/sparse-keymap 0xd050f9a6 sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0xefc89a79 sparse_keymap_setup +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x1c428f05 ad7879_pm_ops +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x3b2662ec ad7879_probe +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x97f83edf ad7879_remove +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x04403fcf unregister_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x14f2aa5a capi20_get_version +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2b8eab1f capilib_free_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2baa6586 capilib_new_ncci +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x2d2e4915 capi20_register +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x31c24aa4 capi20_isinstalled +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x47d3fc51 capi_info2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x506eb34a capi_ctr_handle_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x50b33ca4 capi_cmsg2message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x5c23078e capi_ctr_suspend_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6057c6f3 capi_message2cmsg +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6179de3e detach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x62e32d43 capilib_data_b3_conf +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x6a2f3411 capi20_put_message +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x71e8d5ba capilib_data_b3_req +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7292ab34 cdebbuf_free +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x72a25a72 capi_cmsg2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7a33596c capi20_get_serial +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7e6f1307 capi20_get_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x7e863078 capi_ctr_down +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x84785b38 capi20_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x8f699913 capilib_release +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0x9f823278 register_capi_driver +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xaa165d27 capilib_release_appl +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb19fda8d capi_cmd2str +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb60e5e5f capi_cmsg_header +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xb8c4820f capi_ctr_resume_output +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xbb227513 attach_capi_ctr +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xe19a11ac capi20_get_profile +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xed061606 capi20_manufacturer +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xfce5e14e capi_ctr_ready +EXPORT_SYMBOL drivers/isdn/capi/kernelcapi 0xfd552f7a capi_message2str +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x00eb94ed b1_parse_version +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x1a9dfe0b b1ctl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x562f8e9b avmcard_dma_alloc +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x668e4f3c b1_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x6c717118 avmcard_dma_free +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x75beb42d b1_getrevision +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x7727c931 b1_free_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x7a3f60d1 b1_alloc_card +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x7b92a464 b1_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x842d0e8d b1_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x85f09690 b1_irq_table +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x8c8ed954 b1_load_t4file +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0x9b4725dd b1_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xbb9b43b9 b1_loaded +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xc2d58e79 b1_load_config +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xdb7da423 b1_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xdfd28376 b1_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1 0xfa10fee4 b1_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x04c586ed b1dma_reset_ctr +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x536209c5 b1dma_send_message +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x5de80ab6 b1dma_load_firmware +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x699ac362 b1pciv4_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x85bf5f5c t1pci_detect +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0x8a9b8838 b1dma_reset +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xcf7be73b b1dma_release_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xd6f9f1ea b1dma_interrupt +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xfa5fd6de b1dma_register_appl +EXPORT_SYMBOL drivers/isdn/hardware/avm/b1dma 0xfbdb8563 b1dmactl_proc_fops +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x2974ead1 DIVA_DIDD_Read +EXPORT_SYMBOL drivers/isdn/hardware/eicon/divadidd 0x7ab59853 proc_net_eicon +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x23bfe87b mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x3d8a17c7 mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x3f4c6fa7 mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xa8931632 mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x02e0b1d9 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x2d5a5da7 mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x01390594 FsmInitTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x07f4f2ce hisax_unregister +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x132075f7 FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x148f0c99 FsmFree +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x6fe0eb85 FsmDelTimer +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x93a64734 FsmChangeState +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0x9df0cd27 FsmEvent +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xee93522c hisax_register +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xf0a16657 FsmNew +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xf7fd0669 hisax_init_pcmcia +EXPORT_SYMBOL drivers/isdn/hisax/hisax 0xfc27303b HiSax_closecard +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x35e86c1e isacsx_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x3f3b323a isac_d_l2l1 +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x42181af8 isac_irq +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x4cad3007 isac_init +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x62d3b6a0 isac_setup +EXPORT_SYMBOL drivers/isdn/hisax/hisax_isac 0x9e105e0a isacsx_irq +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x06ccebbc isdn_ppp_unregister_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x35930b9d register_isdn +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0x9d434cce isdn_ppp_register_compressor +EXPORT_SYMBOL drivers/isdn/i4l/isdn 0xfa06820f isdn_register_divert +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x3b71e4fc isdnhdlc_decode +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x59cc8a7e isdnhdlc_out_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0x8ee38862 isdnhdlc_rcv_init +EXPORT_SYMBOL drivers/isdn/i4l/isdnhdlc 0xfd9d4c09 isdnhdlc_encode +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x1e430202 mISDN_FsmDelTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x1f6cfbaa get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2348cc3c mISDN_FsmFree +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x355b8890 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x37a915aa mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x384ab7ff create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x3976922e recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x46581ed3 recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x55033cbe bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x705f9222 mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x77b26ed2 bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8a4e99fb mISDN_clock_update +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8cb93704 mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x90286602 mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x98c1c6ae queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa88560fe mISDN_FsmAddTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xab33b8e7 mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xae5d826a recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb53e08dd recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xb9e3625c dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbabaab5f recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc35841bf mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xcba0bc74 mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd285995f mISDN_clock_get +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd5145151 mISDN_FsmEvent +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xeed4250d mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf42ee765 mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf82728e3 mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xf9e7832f mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xfbaeb924 mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xfd8673fd get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xfe4f5ecc mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x01087af0 mISDN_dsp_element_unregister +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x60721da7 dsp_audio_law_to_s32 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xa215f1b2 dsp_audio_s16_to_law +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xb98308d8 mISDN_dsp_element_register +EXPORT_SYMBOL drivers/md/bcache/bcache 0x3485fd7d __closure_lock +EXPORT_SYMBOL drivers/md/bcache/bcache 0x76c1ecbc closure_put +EXPORT_SYMBOL drivers/md/bcache/bcache 0xbf3936b9 closure_trylock +EXPORT_SYMBOL drivers/md/bcache/bcache 0xc8daf90f closure_wait +EXPORT_SYMBOL drivers/md/bcache/bcache 0xd3124908 closure_sub +EXPORT_SYMBOL drivers/md/bcache/bcache 0xdab27536 closure_sync +EXPORT_SYMBOL drivers/md/bcache/bcache 0xe3c17af1 __closure_wake_up +EXPORT_SYMBOL drivers/md/dm-log 0x00eb4e16 dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-log 0x5fe5718d dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0x6b0f5d73 dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-log 0xc1ab11e5 dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x038ea164 dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0x05c1f572 dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/dm-snapshot 0x1a31ab91 dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0x405c1692 dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0xae9ecb7c dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0xe1fd7dcb dm_snap_origin +EXPORT_SYMBOL drivers/md/raid456 0x1cd4df46 raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x016c8bee flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x0271878b flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x12437ab5 flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x659b30ba flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x6ccddcac flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x8309d127 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x866945b8 flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x9c633cd1 flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xab014693 flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xb2fc22ff flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc1c4e2dc flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xf4af8f71 flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xfa7a2243 flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x495e4b0c btcx_calc_skips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0x752c964b btcx_riscmem_free +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xad2fe38b btcx_sort_clips +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xae2e3a1a btcx_riscmem_alloc +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xc368f8e6 btcx_align +EXPORT_SYMBOL drivers/media/common/btcx-risc 0xcda0ded2 btcx_screen_clips +EXPORT_SYMBOL drivers/media/common/cx2341x 0x1ca0c084 cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cx2341x 0x2030144c cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0x2f25eee2 cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0x3db8be82 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cx2341x 0x5b88faf6 cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0x728ebad4 cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0x77645029 cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc184ec1e cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0xc18bed62 cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf76ce95 cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xcf8b77a4 cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0x3ee4b4bd cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/tveeprom 0x16a2a8b9 tveeprom_read +EXPORT_SYMBOL drivers/media/common/tveeprom 0xd170053c tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x09c18fa2 dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x17523ce7 dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1d209639 dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x23c337e7 dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x32706276 dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x460e46f8 dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x4dce2419 dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x58e49b41 dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5c0ea535 dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x65ed7d7a dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x70af1058 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x74a5a698 dvb_filter_pes2ts_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x78db694b dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7f4f9b54 dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x80e3832d dvb_filter_get_ac3info +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x85a5e7d3 dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8c4e969f dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x934f3988 dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x97830491 dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9a831781 dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xac4ca1b0 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb1d6dd9d dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb383bc97 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc67e56e3 dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xcc4b7bd1 dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xcf589e8c dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd4dccd00 dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd68a099e timeval_usec_diff +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xd8f7184c dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xdb1aa26c dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe3a5a890 dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe3dd0e34 dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe4cbc965 dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe561d9f9 dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe5ae8707 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe7a63380 dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe96d562e dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf2777ead dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf28e7431 dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf3896aa4 dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf826deb0 dvb_filter_pes2ts +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfc47bea0 dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfe8f1f43 dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfe984d2f dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-frontends/a8293 0xb5d6400f a8293_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9013 0xecfeded7 af9013_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/af9033 0x28ff8dd9 af9033_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/atbm8830 0x90e50bb2 atbm8830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x45d97e6b au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x656dc28c au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x9c404f2d au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x9f532e59 au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xa5d6757c au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xc205aa25 au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xe28d1e74 au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xe47f87d9 au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xe94865b5 au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_dig 0x8616c025 au8522_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/bcm3510 0x84c3fa36 bcm3510_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22700 0xe5d87409 cx22700_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx22702 0x51a22c6c cx22702_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24110 0xa1a0c9e7 cx24110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x6e2af18f cx24113_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0x942bc1d7 cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24116 0x7265303d cx24116_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x401c368b cx24123_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x4d2de90e cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/cxd2820r 0x0bf98d7e cxd2820r_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x11edaaf0 dib0070_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x1da3f78e dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x45dc7cfe dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x467db76d dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xf8acd4e6 dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x1c9b3c47 dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x26a8e823 dib0090_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x3a89f2b4 dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x3be65b61 dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x52453a85 dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x532cad42 dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x5fcec51c dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x66e8dae4 dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x71b5775a dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x75804112 dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x91f3803b dib0090_fw_register +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb3038b87 dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xddb1f1a0 dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xefa37a8b dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xfd7d8a79 dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mb 0x25c34d98 dib3000mb_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x17ed4fe7 dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x33b2cf75 dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x34604d4a dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xc0b36668 dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xc34182c5 dib3000mc_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xd8d4f5aa dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x055d295b dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x57e16fed dib7000m_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x6c4c4435 dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xf7fe327c dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x070666cf dib7000p_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x1108d8a7 dib7000p_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x2270efb2 dib7090_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x297c70b6 dib7000p_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x30c2cea0 dib7000p_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x4e50b66c dib7000pc_detection +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x520aa652 dib7090_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x5ca957c0 dib7000p_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x80e7bb2a dib7090_slave_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x83e8253c dib7000p_get_agc_values +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0x9aaf99ab dib7000p_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xc9026511 dib7000p_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xd23e6f7b dib7000p_set_agc1_min +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xd9dc7f23 dib7000p_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xe573343d dib7090_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000p 0xfeb8a218 dib7000p_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x0351b36d dib8096p_tuner_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x0806f692 dib8000_update_pll +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x1cefa7a8 dib8000_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x1fb36f06 dib8090p_get_dc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x200d71da dib8000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x2ea9468e dib8000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x37295652 dib8000_set_wbd_ref +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x3eea8daa dib8096p_get_i2c_tuner +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x43313d0a dib8000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0x973a8324 dib8000_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xa650f851 dib8000_pwm_agc_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xaa691657 dib8000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xac806731 dib8000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xbc5e5bea dib8000_remove_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xcdaa4356 dib8000_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xd1da52c9 dib8000_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xed8df0fb dib8000_ctrl_timf +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xf2628091 dib8000_get_adc_power +EXPORT_SYMBOL drivers/media/dvb-frontends/dib8000 0xf7640584 dib8000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x17db050d dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x3994b32a dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x695d067e dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xad3ad91c systime +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xc36651c7 dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xd49e6e4c dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0x2629f2db drxd_config_i2c +EXPORT_SYMBOL drivers/media/dvb-frontends/drxd 0xb9882fee drxd_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/drxk 0xc2b8d7d9 drxk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ds3000 0x9bc0d1c1 ds3000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb-pll 0xda699803 dvb_pll_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ec100 0xb280e7d0 ec100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6405 0xe786df94 isl6405_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6421 0x6e17d313 isl6421_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/isl6423 0x6f0e584d isl6423_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/it913x-fe 0xf976649d it913x_fe_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/itd1000 0xb0a377ac itd1000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ix2505v 0x9564230a ix2505v_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/l64781 0x7a14f1ee l64781_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lg2160 0xb5e4132a lg2160_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt3305 0xf1d3155a lgdt3305_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgdt330x 0x8924d9df lgdt330x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gxx 0x9a6f33a5 lgs8gxx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0x3100b0ba lnbp21_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp21 0xbaf43182 lnbh24_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbp22 0xa82af6c2 lnbp22_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88rs2000 0x014a72a4 m88rs2000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a16 0xcea9a015 mb86a16_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mb86a20s 0x221864c6 mb86a20s_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt312 0xe4883dab mt312_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/mt352 0xdc85c6d8 mt352_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt200x 0x4dd76cea nxt200x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/nxt6000 0x66c71d3f nxt6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51132 0xccad800d or51132_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/or51211 0xfeb55073 or51211_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0x222fe165 rtl2830_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2830 0xfc318c91 rtl2830_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/rtl2832 0xb0602b8f rtl2832_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1409 0xee631ea7 s5h1409_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1411 0xde3e89f7 s5h1411_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x8f7f6382 s5h1420_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0xde9be08c s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/s921 0x7e90e266 s921_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/si21xx 0x34c8be82 si21xx_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp8870 0x1c55c5a0 sp8870_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/sp887x 0x84c93c7b sp887x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb0899 0x9b07e384 stb0899_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6000 0x62934dc4 stb6000_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stb6100 0x9e842c90 stb6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0288 0xa9d7f15c stv0288_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0297 0xa937ed17 stv0297_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0299 0x307a7576 stv0299_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv0900 0xe6dca686 stv0900_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0x2f23db22 stv090x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv090x 0xd499396e stv090x_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110 0xf2b4ec88 stv6110_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/stv6110x 0x804872f0 stv6110x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10021 0x852a71bf tda10021_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10023 0xa05555d3 tda10023_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10048 0x7dbd179c tda10048_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0x235dc947 tda10046_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda1004x 0xf3315a53 tda10045_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10071 0xc6267145 tda10071_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda10086 0x8d55b16a tda10086_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda665x 0x7e122f86 tda665x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8083 0xe4c24334 tda8083_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda8261 0x3ed14b85 tda8261_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tda826x 0x4d250c5f tda826x_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ts2020 0xd7850c0e ts2020_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/tua6100 0xf882c689 tua6100_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1820 0x4a64e64a ves1820_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/ves1x93 0x08ff0081 ves1x93_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10036 0x6be7a199 zl10036_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10039 0x1f45774e zl10039_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/zl10353 0x6b8419b7 zl10353_attach +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x221e392a flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x48b6ee5d flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x503c91f1 flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x5d27b2b7 flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x60244f15 flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x802f504c flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xec9e1511 flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x0b6b13ae bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x60d91a1b bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x7e04922f bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xa77275f2 bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xd5d0bdef bt878_num +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x11dc4b6d bttv_gpio_enable +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x9550c987 bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xd81ec7da bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xf2b771d6 bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x416cbe08 dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x48420294 write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x6f319e79 dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x8c8e33d1 dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x8e24d0ab rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xb725892b dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xc93c408b dst_attach +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe1b27292 dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe26fb97c read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xe94b8c9c dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst_ca 0x18e7026d dst_ca_attach +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x239ebfac cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x76de7820 cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x91ae719e cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xadd0b033 cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xd2b7579b cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x28ba9b8a cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x784853c3 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x921dbd5d cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x98291c00 cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xc5d38741 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xd6b29582 cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xde168b62 cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xf443f35e cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x5dbce42e vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0xef17c429 vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x16f025fc cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x5835dc87 cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x9f67ecf0 cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xba49470d cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x07832e5f cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x1a600661 cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x25ce8d67 cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x52db6914 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x65361886 cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x9181c14d cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x04b9bea6 cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x081ae28b cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x0c06d884 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1adde02c cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1b826c4c cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x2320fcee cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x3897107a cx88_free_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x3e35620c cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x4216fc84 cx88_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x46bda4d5 cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x48549d2f cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x5713cca4 cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x5cdaad3b cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6141c8c5 cx88_tuner_callback +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7642ed3c cx88_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7904dd33 cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7b90220f cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x8b189934 cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x904b8696 cx88_audio_thread +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x9e7500d4 cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xa2502efe cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd1263efe cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd3842363 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xdeb3e2f2 cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf14de854 cx88_risc_stopper +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf47e5686 cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x0256f748 ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x04d8f3c3 ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x0c2ef2ff ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x29340f1d ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x3bd1ab09 ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x3c8c9c35 ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x5a8b48a7 ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x5e7233e5 ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x61e35d65 ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x79a5160b ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xa6914654 ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xa837abea ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xd6ee1cd8 ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xdc48b804 ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xe073c0d9 ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xe2648e70 ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xe6f64984 ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x00f1799c saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x04e83446 saa7134_tuner_callback +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x09ce7337 saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1211df5d saa7134_devlist +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x189ae1b2 saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x291ab9f0 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x327211eb saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x673cac85 saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x73039031 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x8f129784 saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x8fd73718 saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xac2b21fa saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xb1b7c815 saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xb96cd4be saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xe0f53d85 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0x12285a10 ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/pci/ttpci/ttpci-eeprom 0xc3e4c127 ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x114753d8 soc_camera_xlate_by_fourcc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x29baacd0 soc_camera_power_on +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x3a3c4fc9 soc_camera_host_unregister +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x3b2f5735 soc_camera_host_register +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x3e300300 soc_camera_power_init +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x4cd10d1b soc_camera_power_off +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x54c78fa0 soc_camera_lock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x7216d731 soc_camera_apply_board_flags +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_camera 0x7ab8f494 soc_camera_unlock +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x25c52d97 soc_mbus_samples_per_pixel +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x2863728e soc_mbus_image_size +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0x5f3e3558 soc_mbus_bytes_per_line +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xa9546115 soc_mbus_find_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xc8b28da5 soc_mbus_config_compatible +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_mediabus 0xfe2c3a07 soc_mbus_get_fmtdesc +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x00b7375c soc_camera_client_scale +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x20881456 soc_camera_calc_client_output +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x2a3ea853 soc_camera_client_g_rect +EXPORT_SYMBOL drivers/media/platform/soc_camera/soc_scale_crop 0x89d9d62d soc_camera_client_s_crop +EXPORT_SYMBOL drivers/media/radio/tea575x 0x17ae1ae8 snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0x189c940d snd_tea575x_exit +EXPORT_SYMBOL drivers/media/radio/tea575x 0x55b9463b snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xda87510d snd_tea575x_init +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x04dca738 lirc_unregister_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x0a0c7996 lirc_register_driver +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x53294d27 lirc_dev_fop_ioctl +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x59bb8fbc lirc_get_pdata +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x781c2c52 lirc_dev_fop_open +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0x91c5daf4 lirc_dev_fop_poll +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xba191f1d lirc_dev_fop_read +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xc71bbb13 lirc_dev_fop_close +EXPORT_SYMBOL drivers/media/rc/lirc_dev 0xddb9d256 lirc_dev_fop_write +EXPORT_SYMBOL drivers/media/rc/rc-core 0x009819ab ir_raw_handler_register +EXPORT_SYMBOL drivers/media/rc/rc-core 0x3a65a219 ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/tuners/e4000 0xf8553a33 e4000_attach +EXPORT_SYMBOL drivers/media/tuners/fc0011 0xb37da46a fc0011_attach +EXPORT_SYMBOL drivers/media/tuners/fc0012 0x8c059757 fc0012_attach +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x0acc7d18 fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xde0e9f12 fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/fc0013 0xfa413774 fc0013_attach +EXPORT_SYMBOL drivers/media/tuners/fc2580 0x9e3b9c16 fc2580_attach +EXPORT_SYMBOL drivers/media/tuners/max2165 0x25e72773 max2165_attach +EXPORT_SYMBOL drivers/media/tuners/mc44s803 0x3efc3d91 mc44s803_attach +EXPORT_SYMBOL drivers/media/tuners/mt2060 0x7e6e474a mt2060_attach +EXPORT_SYMBOL drivers/media/tuners/mt2131 0x552d2f0e mt2131_attach +EXPORT_SYMBOL drivers/media/tuners/mt2266 0xa5267835 mt2266_attach +EXPORT_SYMBOL drivers/media/tuners/mxl5005s 0x7d644d91 mxl5005s_attach +EXPORT_SYMBOL drivers/media/tuners/qt1010 0x48c95ba3 qt1010_attach +EXPORT_SYMBOL drivers/media/tuners/tda18212 0xec08a4bc tda18212_attach +EXPORT_SYMBOL drivers/media/tuners/tda18218 0x54aacd94 tda18218_attach +EXPORT_SYMBOL drivers/media/tuners/tua9001 0xc3365df6 tua9001_attach +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x0cb4b189 tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/tuners/tuner-xc2028 0xfb72e1fb xc2028_attach +EXPORT_SYMBOL drivers/media/tuners/tuner_it913x 0x4ba41a05 it913x_attach +EXPORT_SYMBOL drivers/media/tuners/xc4000 0x2439ce69 xc4000_attach +EXPORT_SYMBOL drivers/media/tuners/xc5000 0xcf95d3d5 xc5000_attach +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x79424d04 cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xfc19dedc cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x11cc215a dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x159900c1 dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x1a7b8d77 dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x1ad93544 dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x3c0b1f1f dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x57651000 dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x6d478d42 dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x831bbc24 dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xa2f3afd0 dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x0a68f2ed usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x18bea984 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x2a10e842 dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x39f0ac7c dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x4be8302a dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x65415d51 dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xecb24f4d dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x13e247e0 rc_map_af9005_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xd4e288db rc_map_af9005_table_size +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xf3ae21a1 af9005_rc_decode +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x1f0ee8ce dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x2101e2e0 dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x27e02134 dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x46c80eb5 dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x4ac8fe37 dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x55ac8dca dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x572ecddc dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x9bc61356 dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xa3932fba dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xa817b31d dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xb47559e0 rc_map_dibusb_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xc4a91ea8 dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x81388fb6 em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0xa7b79e56 em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x017a52fd gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x37562c15 gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x4e28fdd3 gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x694d241f gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x6a0a311f gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x799ecec3 gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9cf10206 gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xe8dc8c76 gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x0ec0003c tm6000_unregister_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x74c05da3 tm6000_register_extension +EXPORT_SYMBOL drivers/media/usb/tm6000/tm6000 0x83f9fb22 tm6000_init_digital_mode +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x41af9df9 ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x6a689c33 ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x42c8e001 v4l2_ctrl_next +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x4adaf0f3 v4l2_ctrl_query_menu_valid_items +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x53c9394f v4l2_ctrl_query_menu +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0x5f96a661 v4l2_ctrl_check +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-common 0xabe27502 v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x2bcfefa8 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x3090c24b v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x81982343 v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x098314f4 videobuf_dvb_register_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x18c25536 videobuf_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x270ff0c9 videobuf_dvb_get_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x4b8e213f videobuf_dvb_find_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0x53f217d1 videobuf_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf-dvb 0xb65582b2 videobuf_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/v4l2-core/videobuf2-core 0xcca0f6d9 vb2_querybuf +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x01d04888 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x07a6e662 v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0e4f26f0 v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x11405b77 v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x12a7073e v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x140e371b v4l2_of_get_remote_port_parent +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16f643b7 video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x18d82875 v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1ffed07e video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2bee9093 v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2c59c18b v4l2_subdev_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x320ecc7a v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x32452f49 v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x36847d11 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x393ddb93 v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3c6628ee video_usercopy +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3db7f213 v4l2_of_get_remote_port +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x412e789a v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x467c191e v4l2_clk_get +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x485a9ee7 v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x495426ee v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x498ae5af v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x547c509f v4l2_subdev_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x57c8ad8b v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x59f12d2a v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5b1f34e2 v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5ba9af36 v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x626b6544 v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x64f9ec2b v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x67083026 v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x67e917f7 v4l2_clk_disable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6867f86e v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6d632c32 v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6e57d17c v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x705bfc91 v4l2_subdev_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7071324a video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x794bd872 v4l2_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7960f833 v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7a3cd015 v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7a41418c v4l2_clk_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7c58803b video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7f088003 v4l2_subdev_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7f923f2a v4l2_of_parse_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x7fd5fd6d v4l2_async_notifier_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8a58f723 v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8a6da1ea __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8af79b08 v4l2_clk_unregister_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x902b8859 v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x936d354f v4l2_subdev_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x96c9cbdf v4l2_subdev_querymenu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9a54f0f2 v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9dbe4d6d v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa46a550a video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xab72d732 v4l2_clk_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb90cbedf v4l2_of_get_next_endpoint +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbac4a225 v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbb277218 v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbb48e9b0 v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbd4b08c5 v4l2_subdev_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbead340f v4l2_clk_enable +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc12cf8f8 v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc6f80994 video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc8a93c94 v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd3ab27b4 v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd5b5bf4f v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd83543a9 v4l2_clk_put +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd8f790ed v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd9b4ae4b v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdbb5a011 v4l2_async_notifier_register +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdf81e72e v4l2_clk_get_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe6fce6f2 v4l2_ctrl_merge +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xea314fb5 v4l2_clk_set_rate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xed4a45d6 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xeffb111e v4l2_ctrl_add_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf5c70dc8 __v4l2_clk_register_fixed +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf820f44d v4l2_ctrl_grab +EXPORT_SYMBOL drivers/memstick/core/memstick 0x0abcdff8 memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x2a195545 memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x49c9654d memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0x4a014549 memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x5d820a02 memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x6010b454 memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x68d93489 memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0x89a312aa memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xbb0ce997 memstick_alloc_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xc2275741 memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xdc07e67e memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xe088321c memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xeb65ca1a memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xf6e2e0cc memstick_detect_change +EXPORT_SYMBOL drivers/memstick/host/r592 0x52f1b23b memstick_debug_get_tpc_name +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x09d8d3bd mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x12c99920 mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x17334fa8 mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1972d41e mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x21cbe28a mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2b189ed9 mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2be658c5 mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x34967bc1 mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x37b24d00 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x3a9c25ef mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x401dee28 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4526289b mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4be7673f mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x57f226c1 mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x61960983 mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x6628a429 mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7495a2ce mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x83ba86c3 mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8555b393 mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x92bdd8cf mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x933b63b6 mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x9583c2b7 mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa9f931f4 mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb6d49def mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb8926351 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xbecd115a mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xbf37d5c5 mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc0e69f82 mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xc47c22e8 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd9a92a75 mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xecc0e9aa mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xecf26386 mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xf70171b4 mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x017ed65f mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x055a63c7 mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x06299e76 mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x06ccac99 mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x08bd2721 mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1365ca72 mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x15928f2e mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2593f37d mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x29e4435f mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x2c3fbec1 mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x368ede78 mptscsih_host_attrs +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x38dde009 mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3e71f435 mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4611c30c mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x4e683ec4 mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x591cf8e8 mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x59d7abbe mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x5ca8165b mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x6e1585dd mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x710d8054 mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x857d2302 mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9181eb37 mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xba0c0f65 mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xca0877f5 mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd18bc294 mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd2f520cc mptscsih_host_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xd8e63182 mptscsih_bios_param +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x052e328a i2o_cntxt_list_remove +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x067f9cdf i2o_driver_notify_controller_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x15f7fc1c i2o_cntxt_list_add +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x19034b9f i2o_msg_get_wait +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x1eb08f7d i2o_msg_post_wait_mem +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2997330f i2o_status_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2a843bef i2o_dump_message +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x2c47bc0a i2o_iop_find_device +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x39d72e21 i2o_driver_notify_device_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x45a142ab i2o_parm_table_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x5ed69371 i2o_exec_lct_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x82da5e69 i2o_find_iop +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x833c472d i2o_driver_notify_controller_add_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x93b2a2fa i2o_event_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x9479093d i2o_driver_notify_device_remove_all +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x948525c1 i2o_parm_issue +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0x9c3ceb97 i2o_device_claim +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xa6d7bc36 i2o_driver_register +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xb4c00dcf i2o_controllers +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xc2d2d6e4 i2o_driver_unregister +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xd58166d7 i2o_parm_field_get +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xe6da8784 i2o_cntxt_list_get_ptr +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xeb888e68 i2o_device_claim_release +EXPORT_SYMBOL drivers/message/i2o/i2o_core 0xf1f5e7b6 i2o_cntxt_list_get +EXPORT_SYMBOL drivers/mfd/cros_ec 0x1bf89fd9 cros_ec_remove +EXPORT_SYMBOL drivers/mfd/cros_ec 0x35dfec52 cros_ec_register +EXPORT_SYMBOL drivers/mfd/cros_ec 0x6a5b8a25 cros_ec_prepare_tx +EXPORT_SYMBOL drivers/mfd/cros_ec 0x98c83f2c cros_ec_suspend +EXPORT_SYMBOL drivers/mfd/cros_ec 0xa7c8a73c cros_ec_resume +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0x14542c5d pasic3_read_register +EXPORT_SYMBOL drivers/mfd/htc-pasic3 0xd2d56d39 pasic3_write_register +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0a646e70 mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x2d612d76 mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x4048b762 mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x510c2b0f mc13xxx_irq_ack +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x53cf3308 mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x651983d8 mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x7a7df0b3 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x9c4e4a05 mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xa2f6c081 mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xbab80b8e mc13xxx_irq_request_nounmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xd4c16a8f mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xd8f8d9a5 mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xdf01f50d mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/tps6105x 0x23a61518 tps6105x_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0x4516f87f tps6105x_mask_and_set +EXPORT_SYMBOL drivers/mfd/tps6105x 0xe982fcaf tps6105x_get +EXPORT_SYMBOL drivers/mfd/tps65010 0x02d4ad0f tps65013_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0x0c6ad2cf tps65010_config_vdcdc2 +EXPORT_SYMBOL drivers/mfd/tps65010 0x28485130 tps65010_config_vregs1 +EXPORT_SYMBOL drivers/mfd/tps65010 0x33739de7 tps65010_set_vib +EXPORT_SYMBOL drivers/mfd/tps65010 0x9fd44c69 tps65010_set_led +EXPORT_SYMBOL drivers/mfd/tps65010 0xb14080cc tps65010_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0xd5bb106d tps65010_set_vbus_draw +EXPORT_SYMBOL drivers/mfd/tps65010 0xe99b3f36 tps65010_set_gpio_out_value +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x6d383cc2 ad_dpot_remove +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0xbf2b6f89 ad_dpot_probe +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x7daa3738 altera_init +EXPORT_SYMBOL drivers/misc/atmel-ssc 0x018761fe ssc_free +EXPORT_SYMBOL drivers/misc/atmel-ssc 0xc42973a9 ssc_request +EXPORT_SYMBOL drivers/misc/c2port/core 0x7288a8b5 c2port_device_register +EXPORT_SYMBOL drivers/misc/c2port/core 0xa685afbf c2port_device_unregister +EXPORT_SYMBOL drivers/misc/ioc4 0x0f4c798e ioc4_unregister_submodule +EXPORT_SYMBOL drivers/misc/ioc4 0x3b748a0d ioc4_register_submodule +EXPORT_SYMBOL drivers/misc/tifm_core 0x1a7966ed tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x2cd131b5 tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x2e9b6a50 tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x326efc9b tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0x4eed57d5 tifm_unregister_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x4f8993ca tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0x52f02c60 tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x5e782a0f tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0xa518d569 tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xa8c2ec46 tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0xb40a68f3 tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xc2ce66a5 tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xc6de32b6 tifm_has_ms_pif +EXPORT_SYMBOL drivers/mmc/card/mmc_block 0xb8f12e85 mmc_cleanup_queue +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0x545c9cb2 mmc_spi_get_pdata +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0xb71900f0 mmc_spi_put_pdata +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x19168b27 cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x3484d343 cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xb44a63a2 cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x38e15436 do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x7c2517d7 map_destroy +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0xacfa2077 unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0xf2e59c8b register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0xab6dcfc7 mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0xb2ae015e lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0xb90f2bf3 simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0x47692adc mtd_concat_create +EXPORT_SYMBOL drivers/mtd/mtd 0x57630130 mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/nand/denali 0x8df20ca4 denali_remove +EXPORT_SYMBOL drivers/mtd/nand/denali 0xb56799bb denali_init +EXPORT_SYMBOL drivers/mtd/nand/nand 0x0ea68430 nand_scan_bbt +EXPORT_SYMBOL drivers/mtd/nand/nand 0x66b07146 nand_scan_tail +EXPORT_SYMBOL drivers/mtd/nand/nand 0x68185780 nand_unlock +EXPORT_SYMBOL drivers/mtd/nand/nand 0x79d3d3d6 nand_lock +EXPORT_SYMBOL drivers/mtd/nand/nand 0x9520c5bd nand_scan_ident +EXPORT_SYMBOL drivers/mtd/nand/nand 0xa23821a4 nand_scan +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x2dbaf724 nand_bch_init +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x60fd8042 nand_bch_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0x70097aa0 nand_bch_free +EXPORT_SYMBOL drivers/mtd/nand/nand_bch 0xa6b52d34 nand_bch_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x3132ee65 __nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0x55871222 nand_calculate_ecc +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xb4b94377 __nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ecc 0xf43fa85e nand_correct_data +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0x57a31e57 nand_flash_ids +EXPORT_SYMBOL drivers/mtd/nand/nand_ids 0xa336feb7 nand_manuf_ids +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x24176626 onenand_addr +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x24a5af76 flexonenand_region +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0x609f0457 onenand_default_bbt +EXPORT_SYMBOL drivers/mtd/onenand/onenand 0xf9e3e180 onenand_scan_bbt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x0c939433 arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x0f527791 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x1dbc269c alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x7ffcd541 arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x82b64a50 arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x891612dd arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x9c1c70a7 arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x9f3e60c2 arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xa9c2c16d arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xf81406dd arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x014c834e com20020_netdev_ops +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x2d871000 com20020_found +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xc54720a0 com20020_check +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x31f8faa0 ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x3347e7c3 ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x60ba0d36 ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x6eb6f839 __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x7b6b4d69 ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x83065acb ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x88fc748c ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xc671b533 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xcb37d19f ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xd8741a33 ei_close +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0xe2158c2c cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x104e5159 cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x284a061b cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x2cda05b3 t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x30500c76 cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x30b9e809 cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x4d5c2636 t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x62b439f0 dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x7fae558f cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x868743bb t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x9b29b2d8 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa35843a0 cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa7a86325 cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xb21d82c5 t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xd254dff6 cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xe3c47b74 cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xfd64bfb4 t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x09d8fab0 cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x10f7635c cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x15a7e067 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x205dbd87 cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x21efbe38 cxgb4_disable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x21f84a55 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2bd9a105 cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x322245f0 cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x51ecba4d cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x526214ba cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5a89639e cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6fca8359 cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x9c59257d cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa0a7110e cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa3035303 cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa3a35469 cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa900c8ff cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa929e072 cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb3306a5b cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb6effa65 cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb799f517 cxgb4_enable_db_coalescing +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xb882d5f7 cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xcffb354f cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd00e5a36 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xea12e648 cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf5c641e8 cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf87fcba9 cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xff4c31f8 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xff8b9cbb cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x0e712340 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x20e33c7c vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x23b2a28b vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x4f650da7 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x7143369e enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x9196d804 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x3cf7702b be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xbab62e22 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0xbfb232dc be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x096609c8 mlx4_test_interrupts +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x17fc3c88 mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x19dce01b mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x21d90a59 mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2ea33254 mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3d53a98f mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3ecc7781 mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5adda156 mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5d4cddde mlx4_set_stats_bitmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x685a7074 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6f0d7963 mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7028107b mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x74416c1d mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x757dd56b mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa8937359 mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa8b92d78 mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbbd6c153 mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc41d2656 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcb0eaf29 mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd7206ca4 set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf29226bd mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfa81ed22 mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfbc8ed07 mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfc7c4833 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x26d1a612 mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x362edc76 mlx5_cmd_comp_handler +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x36baa782 mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x40b55614 mlx5_dev_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x41bb7cea mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x41d51030 mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x476f7465 mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x484dfdcb mlx5_cmd_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4b06fbf1 mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4ff18c5f mlx5_core_query_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x524c1644 mlx5_core_create_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x62cda41a mlx5_core_dump_fill_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x71b455ff mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x752604ab mlx5_core_arm_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7b076a49 mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x93c0d1be mlx5_cmd_free_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9bcf6a74 mlx5_cmd_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9db8335d mlx5_dev_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb1dfe010 mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcafb4aa6 mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcb0200af mlx5_core_get_srq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd80913f5 mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd9f36e1b mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe5198c40 mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfe155015 mlx5_cmd_alloc_uar +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfeb4aea0 mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfec23031 mlx5_core_destroy_srq +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x0034a85d hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x2bf406ca hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x359f1369 hdlcdrv_register +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xa01e8b89 hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xec1ef6c3 hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x3492d5ca irda_register_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x4b9521b6 sirdev_set_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x5481ca4f sirdev_raw_write +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x6c7d0cac sirdev_receive +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x74c8a9d3 sirdev_put_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0x9de06dc1 sirdev_write_complete +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xc3285537 sirdev_raw_read +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xc70bf5d0 irda_unregister_dongle +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xd40d8551 sirdev_get_instance +EXPORT_SYMBOL drivers/net/irda/sir-dev 0xed571827 sirdev_set_dtr_rts +EXPORT_SYMBOL drivers/net/mdio 0x22bce513 mdio_mii_ioctl +EXPORT_SYMBOL drivers/net/mdio 0x43e4defc mdio45_nway_restart +EXPORT_SYMBOL drivers/net/mdio 0x7577f992 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0xa1a29548 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0xb34a7575 mdio45_ethtool_spauseparam_an +EXPORT_SYMBOL drivers/net/mdio 0xc6b1163f mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0xddc98749 mdio45_ethtool_gset_npage +EXPORT_SYMBOL drivers/net/mii 0x21aa65ab generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0x28f33f6f mii_ethtool_gset +EXPORT_SYMBOL drivers/net/mii 0x3d71c0eb mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0x493ee30e mii_check_media +EXPORT_SYMBOL drivers/net/mii 0xb1ebccc8 mii_check_link +EXPORT_SYMBOL drivers/net/mii 0xb1f36824 mii_link_ok +EXPORT_SYMBOL drivers/net/mii 0xce1d9ed5 mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0xe336234f mii_nway_restart +EXPORT_SYMBOL drivers/net/ppp/pppox 0x95da3b1b register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0xa27ab5a6 pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0xc0c6a05b pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/sungem_phy 0x9d4ed59f sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x06559dd0 team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/team/team 0x1dc8a5d4 team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0x5ca6b8b3 team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0x8ec349d3 team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0x933928e2 team_options_register +EXPORT_SYMBOL drivers/net/team/team 0x941b892b team_mode_register +EXPORT_SYMBOL drivers/net/team/team 0xc83e6411 team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0xcb07834d team_mode_unregister +EXPORT_SYMBOL drivers/net/usb/usbnet 0x08cc946c usbnet_manage_power +EXPORT_SYMBOL drivers/net/usb/usbnet 0x979aaaea usbnet_link_change +EXPORT_SYMBOL drivers/net/usb/usbnet 0xea86a7fc usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/wan/hdlc 0x009323fa attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x0f30c4c8 register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x4f5119f0 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x68bc1c82 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0x7dec1f45 hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0x8ac515b5 alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0x9a9a2d28 hdlc_change_mtu +EXPORT_SYMBOL drivers/net/wan/hdlc 0xa1194941 hdlc_ioctl +EXPORT_SYMBOL drivers/net/wan/hdlc 0xa1ed19d8 hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0xe8b8cca7 hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0xf49ecebf unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wimax/i2400m/i2400m 0xbedde220 i2400m_unknown_barker +EXPORT_SYMBOL drivers/net/wireless/airo 0x7d54732d init_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0xbd0a74a9 reset_airo_card +EXPORT_SYMBOL drivers/net/wireless/airo 0xd428ec2a stop_airo_card +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x27291433 dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x319c6026 ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4e2481d5 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x53358ce3 ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x556fa0ae ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x56d54c36 ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x74dca3e0 ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x7b47ad7c ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x9c5070ea ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xa85d6548 ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xd1be9280 ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xe110a3ef ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xe1264e1f ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xfbcf776c ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x16a9055f ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x35363d18 ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8246be6c ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x88247032 ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x895f9dc2 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xa83119f1 ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xaf096710 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xedf191ad ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xff43506c ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0199ec46 ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1a7eb8df ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x27cf1694 ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4c6ddcb4 ath6kl_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x4e1380ee ath6kl_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x6422eb99 ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x83f4556d ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x96dc4d10 ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xa85b05af ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xaa8fb86e ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xb22a67b6 ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xc53d6f1b ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xc7eeac49 ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xda4d58b3 ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x533b65bd ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x5c15498a ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x73cabbe4 ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k 0x91fc76f5 ath9k_hw_wow_event_to_string +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x075fbe8a ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x1961a673 ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xa38d10ec ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xc3b26c00 ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x022a361d ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x02744408 ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0635ae9d ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x081d7415 ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0ced3094 ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x10045894 ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x13d1a87f ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1e783c1d ath9k_hw_cfg_output +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1f8e023b ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1ffe4f2e ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x208aaac1 ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x209feb4f ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2154b79d ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2621f818 ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x26e88c34 ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2768236b ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2a61d575 ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2c33aab6 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2c5d8850 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2dd0f1d9 ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2fb3a324 ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x314ef49c ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x31ec277e ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x32efd031 ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3da37cb7 ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3ea8382a ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3fe09a9a ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x40f61747 ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x44870f4c ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x451169a9 ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x45542970 ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x45f210e4 ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4aa822e0 ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4ae9bda9 ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4efe5765 ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x51f5c3aa ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x520ad3b9 ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x52b89e41 ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x535f31e9 ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x541f96fc ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x55890eb8 ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x58a5ab86 ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x59d8d089 ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5a53015b ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5b15dc46 ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5c5d0ad1 ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5e293c44 ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5f3032ee ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x637d94d5 ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x65451af4 ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x65d843de ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x68b262a9 ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6a5f8553 ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x72ffb476 ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7373466c ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x76fd9acb ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7ec1cd9b ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8064ada6 ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x848e83b3 ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x85f079cc ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x86315536 ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x89d38306 ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x91955857 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x91e71d20 ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x93a6e494 ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x946674d9 ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9dc212fa ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa8a38b7a ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa8c18440 ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa8e82b95 ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xab5f7cc6 ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xab80151a ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xaf41bb53 ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb3ed664c ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb633b630 ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb8bf3e64 ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc1c73219 ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc3664c35 ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc4628fa9 ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc5c2de7c ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xca705a86 ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcab0b6e0 ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd00efc90 ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd03dd9b2 ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd299b00c ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd31c43e1 ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd521388e ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd6484c23 ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd926bb30 ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdaee980e ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdcd628e7 ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xde7a7e82 ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe4a841bb ath9k_hw_cfg_gpio_input +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe84dc8b4 ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xeace5c7c ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf0aba93f ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf2aa85a4 ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfea8fe03 ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/atmel 0x6b80eaa8 stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel 0x792ac251 atmel_open +EXPORT_SYMBOL drivers/net/wireless/atmel 0x8f48a61f init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0x2f6afa4b brcmf_sdio_remove +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmfmac/brcmfmac 0x3abcea18 brcmf_sdio_probe +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2a5ada46 brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x2dc227f8 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x4a8f2e32 brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x4b9e08c5 brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x4d609fa1 brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x4ffca620 brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x53bb4a7a brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x606a0e64 brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x6964a638 brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x77746450 brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x879c48e7 brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0x910d152b brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xb78aa235 brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/brcm80211/brcmutil/brcmutil 0xfabac6e8 brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x0bfad55f hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x15f383f9 hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x1723ac32 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x1a8a18d2 hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x1e3649ec hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x35ac1fe5 hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x37c86011 hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x45b01f65 hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x4840ccb1 hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x5929cd7a hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x5a79cec6 hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x640fa0b8 hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x65d23cc6 hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x6ab9f298 hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x826a3861 hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x8a24af78 hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x91e8e579 hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x93fe90a2 hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x9d026c7f hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0x9ed24273 prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa03969b8 hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xa12ad27f hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xad2f2116 hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb2a945e0 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xb5d92602 hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xf62c9956 hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xf8834e4f hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/hostap/hostap 0xf9b048ab hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x0ec5f574 libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x16c282ec libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x2f94de86 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x3105d549 libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x4641d067 libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x4bccf1a2 libipw_rx +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x51c51436 libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x53032eb7 libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x5d12c439 libipw_change_mtu +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x6baaf3da libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x70d9cab8 libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0x8cee70bd libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xa95a39d4 libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xb042672b libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xbde634b2 free_libipw +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xc2614db4 libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xc521df4a libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xdd8b4536 libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xe4392578 libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xf0246959 libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/ipw2x00/libipw 0xfa7d71d5 libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x02fac58b il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x08943173 il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0a57eeef il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0c3333c2 il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x0e695ea7 il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x12ace853 il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x143c1909 il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x14cbfb90 il_free_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x16edb645 il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x17a22751 il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x18603684 il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x1c85aef7 il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x20e7387e il_update_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x217ab28d il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x23f7140a il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2420036e il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x266153e5 il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x29568a32 il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2a410c60 il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2d22926f il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x2e6c6824 il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x31989ce0 il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x321cd87e il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3499fb0e il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3a6bf679 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3ad7da64 il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3aeba1e9 _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3d081662 il_mac_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x3fd8bc40 il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4aa39103 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4ba153dc il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4d31874c il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x4df0b0c1 il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x54a72f4e il_init_geos +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x54c35f4e il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x564c6740 il_debug_level +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5799c4f1 il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5812098e il_apm_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x59227969 il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5dc0a5b7 il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x5dd7d06b il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6202ae0e il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x635fdf90 il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x65658deb il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x67d5dc44 il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6ee4ab56 il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6fb64a27 il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x6fb720d8 il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x71f3db9e il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x735ded29 il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x73f49a08 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x74b250cf _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x755ede5d il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7908ad42 il_leds_init +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x793e67b6 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x7c6fd82a il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x81b20fe5 il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x839fd392 il_force_reset +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x866976c4 il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8a1f9b27 il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x8bd10b79 il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x901104ae il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x91c4f702 il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x91e63c89 il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x93fef5d1 il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9450d264 il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x993b8ee0 il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9ab409df il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0x9fc4e830 il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa35f93d1 il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xa68b870b il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xaa2aa387 il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xab0b4382 il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xad30ea09 il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb29a24d6 il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb2ef3d87 il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb3df409f il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xb8fb313e il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc14398f7 il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc39cf12c il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc3bb382d il_set_rate +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xc5f9f624 il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcbeeea53 il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcef9b5d8 il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xcf024c0f il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd0745ee9 il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xd197644c il_set_bit +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdc58eab9 il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xdde4c66e il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe0bad9d5 il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe12c09d6 il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe3ce52fa il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe435493a il_queue_space +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xe84dbbd1 il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xeaf830bc il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf049d802 il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf110d5b8 il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf4e7695f il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf501278b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf528fe90 il_pm_ops +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xf96a1a9d il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xfa78b281 il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/iwlegacy/iwlegacy 0xff61168f il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x08dd8699 __tracepoint_iwlwifi_dev_rx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x0c50fa2b __tracepoint_iwlwifi_dev_tx +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x1ecc5465 __tracepoint_iwlwifi_err +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x2f7b7e55 __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x3b9d00d6 __tracepoint_iwlwifi_dev_ioread32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x675bcb86 __tracepoint_iwlwifi_info +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x779dd6f5 __tracepoint_iwlwifi_dev_iowrite32 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x85c1bb84 __tracepoint_iwlwifi_dev_iowrite8 +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x8de37664 __tracepoint_iwlwifi_dbg +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x954eb7a7 __tracepoint_iwlwifi_crit +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0x963a6f8a __tracepoint_iwlwifi_dev_ucode_error +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xb8f7026f __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xe2dcc8de __tracepoint_iwlwifi_warn +EXPORT_SYMBOL drivers/net/wireless/iwlwifi/iwlwifi 0xf9ec6bdd __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x1a69c467 orinoco_get_stats +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x30cb9fa4 orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x39ff035f __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x43e9ed4d orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x4c773e50 orinoco_open +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x502ad84f alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5714b0af orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5dea5bf1 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x5f86ec8c orinoco_up +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x715579b3 orinoco_down +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x846bb4e2 orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x87000465 orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x8f7f0c61 __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0x9933420f free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xae3f9e0e orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xb4ed642b orinoco_init +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xd0605dd7 orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/btcoexist/btcoexist 0x2246e50f rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x068c5921 rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x0bc1624d rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x19c2533e rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x1b6e9582 rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x206de2ec rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x2248d517 _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x2b7024ae rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x35fd81be rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3fbd9413 _rtl92c_store_pwrIndex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x451b31bc rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x4bff8076 rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x4fe80795 _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x55d69ae1 rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x66400ddc rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x6ef5bed2 rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x71880467 rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x76a885ae _rtl92c_phy_dbm_to_txpwr_Idx +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x7ef9a9e7 rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8682d5a8 rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x8d8ccecf _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x9412eccd _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x9ac501b4 rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xa6e886af rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb3314d48 _rtl92c_phy_calculate_bit_shift +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xb89781d8 rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc1d684d8 _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xc3be320d rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xcb87ba14 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xcff14b01 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd621d3fb rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xd8f5fbfd rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xdebb4925 rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe085b179 rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe8a82a55 rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xe99fe390 rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xee8beb5f rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf4873d2e rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf5716a89 _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xf6e47735 rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xfaae7e3d rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xfd489e05 rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0xffdd85de _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x022114e4 rtl_pci_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x1837b384 rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0x7a63087e rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_pci 0xca877f70 rtl_pci_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x3a491616 rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0x73c4170d rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0xa9b071f8 rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtl_usb 0xb52416c6 rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x082824e5 rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x083594c7 rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x0d7b0a55 rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x0dffa1c6 rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x207fbb70 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x271d81b8 rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x3d992098 efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x3ea52569 rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x430db7d3 rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x49867370 rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x56082b72 rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x58e5c32e rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x7705fe87 rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x79188a02 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x84895da2 rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x99d65451 rtl_ps_set_rf_state +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0x9ec0b1b5 rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xae5fa0f7 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xb0003fa3 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xbb4b3a0b rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xcfb4a07d rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/rtlwifi/rtlwifi 0xfcbd5e0f rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x1cb429c2 wlcore_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x555bbc92 wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x6fa86c11 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xa2062da0 wl1271_free_tx_id +EXPORT_SYMBOL drivers/nfc/microread/microread 0x805ecfc5 microread_probe +EXPORT_SYMBOL drivers/nfc/microread/microread 0xd274c012 microread_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x12eabf40 pn544_hci_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0x66f0209d pn544_hci_probe +EXPORT_SYMBOL drivers/parport/parport 0x09959941 parport_write +EXPORT_SYMBOL drivers/parport/parport 0x189a5975 parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x19ce4b1f parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x3141aca8 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0x344e0117 parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0x3580abf9 parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x4dc5aeae parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0x514b21ee parport_register_device +EXPORT_SYMBOL drivers/parport/parport 0x52a2d920 parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x63892774 parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x8d837e2d parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0x9d05c0a9 parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0xb16eb38d parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0xb303174e parport_claim +EXPORT_SYMBOL drivers/parport/parport 0xb731168a parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xbc722bd0 parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0xbd36fa3f parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0xc21017a4 parport_release +EXPORT_SYMBOL drivers/parport/parport 0xc6c29d50 parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0xc8a66e3f parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0xcc22688b parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xcf6f65db parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0xd065d493 parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0xd1ea44f0 parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0xdc4f0d1b parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0xe3261864 parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0xea8dae0f parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0xf7ae09c0 parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0xfbd57a4e parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0xffd4cb79 parport_read +EXPORT_SYMBOL drivers/parport/parport_pc 0x249e1f3d parport_pc_probe_port +EXPORT_SYMBOL drivers/parport/parport_pc 0xee87b35f parport_pc_unregister_port +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x14f05837 rproc_del +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x30101943 rproc_report_crash +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x4173200d rproc_vq_interrupt +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x4a647ba3 rproc_put +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0x9a29b2a4 rproc_boot +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xb0777d2a rproc_shutdown +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xb2ad71c7 rproc_add +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xc262354e rproc_alloc +EXPORT_SYMBOL drivers/remoteproc/remoteproc 0xdf7425de rproc_da_to_va +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x0de68712 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x1ee848c6 fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x21c80ba5 fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x444893de fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x55c00525 fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x58b7bac5 fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x6c98fb9c fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x74a3f387 fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x92eaf03e fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xe0a1ad49 fcoe_ctlr_destroy_store +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xf0d84812 fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xf72bc486 fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0008e9db fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x006b764e fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0295f4e0 fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0c55adce fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1161c0e6 fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x171b61b1 fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x1c75ca9d fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x21665f47 fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x29bbb522 fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2e79506a fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3049417e fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x36e5fbaf fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x38b438b7 fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x392f6e29 fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3e3d02bf fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3f0ec9fa libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4394808a fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x43babdee fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4473cb48 fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4f8b68a0 fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5d9498ff fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x64222d7d fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6af4b2a8 fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6c03780f fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x6ff81c56 fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7050a524 fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x721d8f2c fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x74b36a6b fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x74bab94c fc_change_queue_type +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7506077b fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7c8f0e32 fc_rport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7f08819b fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8a7eec50 fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8b0a9aa7 fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x914a5701 fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x96326dd9 fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x994a49bf fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9b888b7d fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa396caf6 fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xab498c15 fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbba8e2cd fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbbc371d3 fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc06745cf fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc0fcd714 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc4a41574 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc9e38891 fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcb97aff5 fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd05efe05 fc_change_queue_depth +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd274394e fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe68275db fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe8e8307f fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf8504246 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf8630d51 fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x1a233086 sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x2e862153 sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x3c31c2b4 sas_wait_eh +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8616ea05 sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x8a87e724 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x2250c66e mraid_mm_adapter_app_handle +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x512c956d mraid_mm_unregister_adp +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0xa61606af mraid_mm_register_adp +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x014e56ee osd_req_flush_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x01bb5ef3 osd_req_write_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x07452411 osd_auto_detect_ver +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0c17edb1 osd_sec_init_nosec_doall_caps +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x0c500744 osd_req_decode_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x165e3407 osd_req_set_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x16704448 osd_req_add_set_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x205eb7bc osd_req_remove_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x24ca27a5 osd_req_list_partition_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x2c9d3097 osd_req_list_partition_collections +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x36a4b268 osd_req_get_attributes +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x38383cb2 osd_req_flush_collection +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x39c2f321 osd_req_read_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x3c122d41 osd_req_write_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x49c3d2dd osd_req_write +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x550bc9ec osd_req_read_sg_kern +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x5b52f89b osd_req_remove_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x601b11e6 osd_end_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x687e863f osd_execute_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7661e21b osd_req_create_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x7f6fded6 osd_req_flush_obsd +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x93b98bc3 osd_req_write_sg +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x95369e02 osd_req_read +EXPORT_SYMBOL drivers/scsi/osd/libosd 0x9917b857 osd_req_add_get_attr_list +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xa4ba3390 osd_finalize_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xae9891ed osd_req_flush_object +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xb38b7a2e osd_dev_fini +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xbc0a4d77 osd_req_decode_sense_full +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xbdafcdca osd_req_list_dev_partitions +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc62628e2 osd_dev_init +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xc8a503c2 osd_execute_request_async +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xcb16f469 osd_req_create_partition +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xd226c4b0 osd_req_add_get_attr_page +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xdc62f088 osd_req_format +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xee426e0c osd_start_request +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xf9640362 osd_req_list_collection_objects +EXPORT_SYMBOL drivers/scsi/osd/libosd 0xfd79bd35 osd_req_read_sg +EXPORT_SYMBOL drivers/scsi/osd/osd 0x11589349 osduld_put_device +EXPORT_SYMBOL drivers/scsi/osd/osd 0x242cc3b6 osduld_device_same +EXPORT_SYMBOL drivers/scsi/osd/osd 0x445a1f89 osduld_device_info +EXPORT_SYMBOL drivers/scsi/osd/osd 0x5fc48609 osduld_unregister_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0x6ac2597b osduld_info_lookup +EXPORT_SYMBOL drivers/scsi/osd/osd 0xbc673e66 osduld_register_test +EXPORT_SYMBOL drivers/scsi/osd/osd 0xfb646deb osduld_path_lookup +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x2d299f3e qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x309d5f21 qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x327fbe58 qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x43120dc3 qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x5f7f2325 qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x6845de2c qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x8c638391 qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xb9307df0 qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xbcbc1441 qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xc3c54f2b qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xe89eb1d4 qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/raid_class 0x5cc77d9b raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0xb6acbab0 raid_component_add +EXPORT_SYMBOL drivers/scsi/raid_class 0xd66b3a1f raid_class_release +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x0cc20be2 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x16b838ba scsi_is_fc_vport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x19f0c726 fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x1a566cae fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x39b5c40b fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x4b71e53a fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x7954b1ea fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x865621cb fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x8b07d19c fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x8cfb6c1a fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xa56be76b fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xb51ba040 scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd9aae897 fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xe05406c6 fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0d568b05 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0fdbaf4f sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x267a8d63 sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x286f9e8b sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2b370320 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2ef8c486 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x41b613fc sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4ce25054 sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x522daa4d sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x5d74fab5 sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6a3511ce sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x74722cff sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7c986d42 sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x8a924297 sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x9351aa16 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x97f330db sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa366363a scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xa9b90520 scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xb7ae22fc sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xc05dd23e sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xcddc05c3 sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xcedf94f0 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd032b1bd sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd76d320a sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xd811db7c sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xdec47e12 sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xebc37410 sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xefc32ada sas_remove_children +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x4b4a0eb2 ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0x712ef8a4 ufshcd_runtime_idle +EXPORT_SYMBOL drivers/scsi/ufs/ufshcd 0xce07bc3c ufshcd_runtime_resume +EXPORT_SYMBOL drivers/ssb/ssb 0x07d76f40 ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x08b02251 __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0x13e0c34f ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0x242821ad ssb_bus_pcibus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x474a9fa2 ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0x478ac46a ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0x78d2f998 ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0x791a5769 ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x7b574f12 ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x87b96f3b ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/ssb/ssb 0x8f449599 ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0x9eca3026 ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0x9f42c7d6 ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0xadd4ae69 ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xb00a651c ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xc0512e0f ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xcb2dd623 ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0xd0973b0d ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0xd481192b ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xde7b7811 ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0xed6be734 ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0xf68532b8 ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0xfd85d80b ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x017c7f79 iscsit_set_unsoliticed_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x057e070e iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0c65b1c6 iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x190e6ca1 iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1fda8d69 iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2552dd4b iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x33977f29 iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3e8b0982 iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x406e62de iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x46f897ba iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4ac1b52b iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x73fef0f0 iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7bd483b3 iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x848d3e85 iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x92134705 iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa5259f38 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xa688c4a2 iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbaa14721 iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbbd04b8e iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc7e033ce iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xcefdaee4 iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xcf1a7faf iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd033e2c5 iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd034878c iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xdff6239b iscsit_handle_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe8f31749 iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe95d90d4 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe9f78ae9 iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/target_core_mod 0x01fe1d42 core_tpg_add_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x02de3b18 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x032b8928 fc_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x0b3f6eeb target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x0fc8be1d core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x10ae3e86 fc_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x147b81c0 target_fabric_configfs_init +EXPORT_SYMBOL drivers/target/target_core_mod 0x15032893 core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x190f5464 transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x1bfdfa5d target_submit_cmd_map_sgls +EXPORT_SYMBOL drivers/target/target_core_mod 0x1cac5b49 sas_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x241c4a85 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x27d7d8f2 spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x29315f84 transport_subsystem_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x29e4808d target_fabric_configfs_free +EXPORT_SYMBOL drivers/target/target_core_mod 0x2e942e88 spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x34cbf470 target_put_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x36eb4c16 sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x394c4e33 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0x394eabcf spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a465294 core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a525263 fc_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x3e09fd71 transport_init_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x424b65fa transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x42d3895a iscsi_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0x456ec094 transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0x4621861f transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x466ff77a sbc_execute_unmap +EXPORT_SYMBOL drivers/target/target_core_mod 0x4a34e1ae target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x4c614662 transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x4ee817ab iscsi_get_pr_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x4f164504 transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0x51dedfe8 target_setup_cmd_from_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x552d8e29 iscsi_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0x56caf576 sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x5d3031d2 core_tpg_clear_object_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x5e784c1c sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0x62caf30a transport_subsystem_release +EXPORT_SYMBOL drivers/target/target_core_mod 0x62d8028a iscsi_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x63169c71 transport_init_se_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x658c6e67 target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x6b656a2c transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0x6bde5943 sas_get_fabric_proto_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x7319b4c4 transport_check_aborted_status +EXPORT_SYMBOL drivers/target/target_core_mod 0x77b4f533 target_fabric_configfs_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x7dbada9d transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x85aa880c transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x89762351 core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/target/target_core_mod 0x899f70bb __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x8a4d1287 core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x8e3455fa transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x9376aad8 core_tpg_del_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x9b11421d spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0xa0b55c6e target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0xad2a44b4 fc_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xad991f83 sas_parse_pr_out_transport_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xb7f03ea7 transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xbcfc848a sas_get_pr_transport_id_len +EXPORT_SYMBOL drivers/target/target_core_mod 0xc020d1fc transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0xc342441d target_fabric_configfs_register +EXPORT_SYMBOL drivers/target/target_core_mod 0xca3f745e transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0xd0d09dd6 transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0xd3aac540 target_get_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xd83b9109 core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0xdc7aa523 target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xdcb44b8f transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xe5c9afd2 transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xebd9abf3 core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0xeec44966 target_sess_cmd_list_set_waiting +EXPORT_SYMBOL drivers/target/target_core_mod 0xf01621c7 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf107ded5 target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xf21e88e8 target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xfb6ea9df transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xfbde13d8 transport_kmap_data_sg +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0xa0a2b62f usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xa64a4cea usb_nop_xceiv_unregister +EXPORT_SYMBOL drivers/usb/phy/phy-generic 0xd0e43207 usb_nop_xceiv_register +EXPORT_SYMBOL drivers/vhost/vringh 0x0dda8c5a vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x1f063017 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x2eae4a2a vringh_getdesc_user +EXPORT_SYMBOL drivers/vhost/vringh 0x36dfce73 vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3b304ebb vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3eaf442a vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x3fa42e4f vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x4311cd91 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0x5dafbd4e vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x66af098b vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x6d0e7948 vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x76bd9a5d vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x97fa07e9 vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xaf8e4a0e vringh_notify_disable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xafb47dae vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc884d704 vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0xc8bee0a4 vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xda4ea4cc vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0xde804bb9 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/video/backlight/generic_bl 0x366d19ef genericbl_limit_intensity +EXPORT_SYMBOL drivers/video/backlight/lcd 0x55bcf87d devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0x6bae384c lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0x6d06581c devm_lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0xbb8f6b8a lcd_device_unregister +EXPORT_SYMBOL drivers/video/cyber2000fb 0x0cc3ede5 cyber2000fb_detach +EXPORT_SYMBOL drivers/video/cyber2000fb 0x534b6f18 cyber2000fb_disable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xb39f68d1 cyber2000fb_enable_extregs +EXPORT_SYMBOL drivers/video/cyber2000fb 0xf6b0cd46 cyber2000fb_attach +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x23e4d02f matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0x2d85f7ee g450_mnp2f +EXPORT_SYMBOL drivers/video/matrox/g450_pll 0xd821e96b matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x2f8be5b1 DAC1064_global_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0x75f341d6 matrox_G100 +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xb7eef7c8 matrox_mystique +EXPORT_SYMBOL drivers/video/matrox/matroxfb_DAC1064 0xc3b9d7ba DAC1064_global_restore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_Ti3026 0x7326a356 matrox_millennium +EXPORT_SYMBOL drivers/video/matrox/matroxfb_accel 0xbcbd7823 matrox_cfbX_init +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x2224079a matroxfb_register_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x2a379463 matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x7b3373b4 matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/matrox/matroxfb_base 0x8a33aaf4 matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0x8865f467 matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/matrox/matroxfb_g450 0xec64da02 matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x546101e2 matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x60fd5bc3 matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0x848f84f9 matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xea6c4e4e matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/matrox/matroxfb_misc 0xf6ec723d matroxfb_read_pins +EXPORT_SYMBOL drivers/video/mb862xx/mb862xxfb 0x26914ee9 mb862xxfb_init_accel +EXPORT_SYMBOL drivers/video/output 0x0e857566 video_output_unregister +EXPORT_SYMBOL drivers/video/output 0xb5127ddb video_output_register +EXPORT_SYMBOL drivers/video/sis/sisfb 0x3037658e sis_malloc +EXPORT_SYMBOL drivers/video/sis/sisfb 0x454a3cf0 sis_free +EXPORT_SYMBOL drivers/video/svgalib 0x1116cd43 svga_tilefill +EXPORT_SYMBOL drivers/video/svgalib 0x17f3f471 svga_set_default_seq_regs +EXPORT_SYMBOL drivers/video/svgalib 0x1be6dc30 svga_set_textmode_vga_regs +EXPORT_SYMBOL drivers/video/svgalib 0x23c28631 svga_tilecursor +EXPORT_SYMBOL drivers/video/svgalib 0x3ece4d68 svga_settile +EXPORT_SYMBOL drivers/video/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/svgalib 0x6e4adb1e svga_check_timings +EXPORT_SYMBOL drivers/video/svgalib 0x7c481266 svga_tilecopy +EXPORT_SYMBOL drivers/video/svgalib 0x80f24d95 svga_wcrt_multi +EXPORT_SYMBOL drivers/video/svgalib 0x8de63fb4 svga_set_timings +EXPORT_SYMBOL drivers/video/svgalib 0xb2f282f5 svga_get_tilemax +EXPORT_SYMBOL drivers/video/svgalib 0xbb58075f svga_tileblit +EXPORT_SYMBOL drivers/video/svgalib 0xd1429fca svga_wseq_multi +EXPORT_SYMBOL drivers/video/svgalib 0xd22ca511 svga_set_default_atc_regs +EXPORT_SYMBOL drivers/video/svgalib 0xe28d2a49 svga_set_default_gfx_regs +EXPORT_SYMBOL drivers/video/svgalib 0xe7604aff svga_get_caps +EXPORT_SYMBOL drivers/video/svgalib 0xef774f5d svga_compute_pll +EXPORT_SYMBOL drivers/video/svgalib 0xf2db5956 svga_match_format +EXPORT_SYMBOL drivers/video/syscopyarea 0x1bec7a56 sys_copyarea +EXPORT_SYMBOL drivers/video/sysfillrect 0x1c637ae9 sys_fillrect +EXPORT_SYMBOL drivers/video/sysimgblt 0x4d1c3155 sys_imageblit +EXPORT_SYMBOL drivers/video/vgastate 0x686de290 restore_vga +EXPORT_SYMBOL drivers/video/vgastate 0xe7a2620e save_vga +EXPORT_SYMBOL drivers/vme/vme 0x00d7e722 vme_lm_count +EXPORT_SYMBOL drivers/vme/vme 0x04efdb79 vme_register_driver +EXPORT_SYMBOL drivers/vme/vme 0x05ce6ec3 vme_irq_request +EXPORT_SYMBOL drivers/vme/vme 0x072f901c vme_master_rmw +EXPORT_SYMBOL drivers/vme/vme 0x0c6bdc3f vme_master_read +EXPORT_SYMBOL drivers/vme/vme 0x0ec5babe vme_dma_free +EXPORT_SYMBOL drivers/vme/vme 0x11786844 vme_slave_request +EXPORT_SYMBOL drivers/vme/vme 0x1af9b872 vme_irq_handler +EXPORT_SYMBOL drivers/vme/vme 0x20df5a3d vme_dma_pci_attribute +EXPORT_SYMBOL drivers/vme/vme 0x225ff8a4 vme_lm_request +EXPORT_SYMBOL drivers/vme/vme 0x2828837b vme_dma_list_free +EXPORT_SYMBOL drivers/vme/vme 0x2abc910d vme_dma_list_add +EXPORT_SYMBOL drivers/vme/vme 0x3e95083c vme_slave_get +EXPORT_SYMBOL drivers/vme/vme 0x46649cd1 vme_lm_set +EXPORT_SYMBOL drivers/vme/vme 0x48b99a13 vme_lm_free +EXPORT_SYMBOL drivers/vme/vme 0x4baf35a7 vme_master_get +EXPORT_SYMBOL drivers/vme/vme 0x5175c593 vme_dma_request +EXPORT_SYMBOL drivers/vme/vme 0x52983a4f vme_master_write +EXPORT_SYMBOL drivers/vme/vme 0x535c8308 vme_dma_pattern_attribute +EXPORT_SYMBOL drivers/vme/vme 0x5aff4177 vme_lm_get +EXPORT_SYMBOL drivers/vme/vme 0x607b3021 vme_new_dma_list +EXPORT_SYMBOL drivers/vme/vme 0x7526ce58 vme_register_bridge +EXPORT_SYMBOL drivers/vme/vme 0x79a33f85 vme_get_size +EXPORT_SYMBOL drivers/vme/vme 0x7cf35220 vme_master_free +EXPORT_SYMBOL drivers/vme/vme 0x802b0121 vme_unregister_bridge +EXPORT_SYMBOL drivers/vme/vme 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL drivers/vme/vme 0x944aff92 vme_bus_type +EXPORT_SYMBOL drivers/vme/vme 0x9724da10 vme_slot_get +EXPORT_SYMBOL drivers/vme/vme 0x9aeb07e8 vme_lm_attach +EXPORT_SYMBOL drivers/vme/vme 0xa2a335bd vme_alloc_consistent +EXPORT_SYMBOL drivers/vme/vme 0xa31bdf07 vme_master_set +EXPORT_SYMBOL drivers/vme/vme 0xbaaf2f9b vme_unregister_driver +EXPORT_SYMBOL drivers/vme/vme 0xca5ee09a vme_free_consistent +EXPORT_SYMBOL drivers/vme/vme 0xd961f398 vme_dma_list_exec +EXPORT_SYMBOL drivers/vme/vme 0xdff905e5 vme_slave_free +EXPORT_SYMBOL drivers/vme/vme 0xe39c15c1 vme_irq_free +EXPORT_SYMBOL drivers/vme/vme 0xe7c00737 vme_master_request +EXPORT_SYMBOL drivers/vme/vme 0xea2ff164 vme_irq_generate +EXPORT_SYMBOL drivers/vme/vme 0xefd1624a vme_dma_free_attribute +EXPORT_SYMBOL drivers/vme/vme 0xf5a10e25 vme_slave_set +EXPORT_SYMBOL drivers/vme/vme 0xfacd8e72 vme_dma_vme_attribute +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x315c2781 w1_ds2760_store_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x3efe6e29 w1_ds2760_recall_eeprom +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0x9d3d9fae w1_ds2760_write +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2760 0xe43fc9fa w1_ds2760_read +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x12deb78d w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x2938dd5f w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x4a1b3cd8 w1_ds2781_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x6a6d440e w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/wire 0x057cd7f6 w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0x5a4c05bd w1_remove_master_device +EXPORT_SYMBOL drivers/w1/wire 0x67de55c6 w1_register_family +EXPORT_SYMBOL drivers/w1/wire 0xfc0fb5af w1_unregister_family +EXPORT_SYMBOL fs/btrfs/btrfs 0x27476846 ulist_reinit +EXPORT_SYMBOL fs/btrfs/btrfs 0x41e6a9d2 ulist_init +EXPORT_SYMBOL fs/btrfs/btrfs 0x7e2ee765 ulist_free +EXPORT_SYMBOL fs/btrfs/btrfs 0xa2eec2e8 ulist_fini +EXPORT_SYMBOL fs/btrfs/btrfs 0xb1320bc8 ulist_add +EXPORT_SYMBOL fs/btrfs/btrfs 0xb42289d2 ulist_alloc +EXPORT_SYMBOL fs/btrfs/btrfs 0xc2c745db ulist_next +EXPORT_SYMBOL fs/configfs/configfs 0x39392e63 config_item_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0x3abcef07 configfs_register_subsystem +EXPORT_SYMBOL fs/configfs/configfs 0x5113baf5 config_item_get +EXPORT_SYMBOL fs/configfs/configfs 0x54c8e095 config_group_init +EXPORT_SYMBOL fs/configfs/configfs 0x57167ad7 config_item_put +EXPORT_SYMBOL fs/configfs/configfs 0x57d24cef config_item_init +EXPORT_SYMBOL fs/configfs/configfs 0x776c55fe config_item_set_name +EXPORT_SYMBOL fs/configfs/configfs 0x823d3d2e config_group_init_type_name +EXPORT_SYMBOL fs/configfs/configfs 0x9c5ab27a config_group_find_item +EXPORT_SYMBOL fs/configfs/configfs 0xba14b1bc configfs_depend_item +EXPORT_SYMBOL fs/configfs/configfs 0xc8227c50 configfs_undepend_item +EXPORT_SYMBOL fs/configfs/configfs 0xca4a84e7 configfs_unregister_subsystem +EXPORT_SYMBOL fs/exofs/libore 0x0ef230f1 ore_get_rw_state +EXPORT_SYMBOL fs/exofs/libore 0x0f40dd50 ore_get_io_state +EXPORT_SYMBOL fs/exofs/libore 0x28806871 ore_verify_layout +EXPORT_SYMBOL fs/exofs/libore 0x3167319a ore_remove +EXPORT_SYMBOL fs/exofs/libore 0x4222e851 ore_truncate +EXPORT_SYMBOL fs/exofs/libore 0x4527e170 ore_calc_stripe_info +EXPORT_SYMBOL fs/exofs/libore 0x53b6c91d ore_check_io +EXPORT_SYMBOL fs/exofs/libore 0x703f4786 extract_attr_from_ios +EXPORT_SYMBOL fs/exofs/libore 0x7512c215 ore_create +EXPORT_SYMBOL fs/exofs/libore 0xa3d2a634 g_attr_logical_length +EXPORT_SYMBOL fs/exofs/libore 0xa840b94c ore_write +EXPORT_SYMBOL fs/exofs/libore 0xb7d093ef ore_put_io_state +EXPORT_SYMBOL fs/exofs/libore 0xc7362a0b ore_read +EXPORT_SYMBOL fs/fscache/fscache 0x03c727e9 fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0x10b8029d __fscache_unregister_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x18fdf564 fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0x195da3cf fscache_obtained_object +EXPORT_SYMBOL fs/fscache/fscache 0x1c97e740 fscache_check_aux +EXPORT_SYMBOL fs/fscache/fscache 0x2d8c3c35 __fscache_enable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x3f20a5f0 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x4354620a __fscache_read_or_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0x4a972cd8 fscache_enqueue_operation +EXPORT_SYMBOL fs/fscache/fscache 0x5225f917 __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x58c11cdd __fscache_check_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x65018cc9 __fscache_register_netfs +EXPORT_SYMBOL fs/fscache/fscache 0x70377f38 __fscache_wait_on_page_write +EXPORT_SYMBOL fs/fscache/fscache 0x72453d95 fscache_cache_cleared_wq +EXPORT_SYMBOL fs/fscache/fscache 0x72f56f86 __fscache_write_page +EXPORT_SYMBOL fs/fscache/fscache 0x74530ecd fscache_op_debug_id +EXPORT_SYMBOL fs/fscache/fscache 0x745aae6e __fscache_wait_on_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x77008154 __fscache_readpages_cancel +EXPORT_SYMBOL fs/fscache/fscache 0x7841ff5c __fscache_check_consistency +EXPORT_SYMBOL fs/fscache/fscache 0x7ae797a2 fscache_fsdef_index +EXPORT_SYMBOL fs/fscache/fscache 0x7af734ff __fscache_attr_changed +EXPORT_SYMBOL fs/fscache/fscache 0x8a1af9ea fscache_mark_page_cached +EXPORT_SYMBOL fs/fscache/fscache 0x8d83a3e6 fscache_op_complete +EXPORT_SYMBOL fs/fscache/fscache 0x9b005762 __fscache_read_or_alloc_pages +EXPORT_SYMBOL fs/fscache/fscache 0xa944fbe0 fscache_put_operation +EXPORT_SYMBOL fs/fscache/fscache 0xb31c2281 __fscache_maybe_release_page +EXPORT_SYMBOL fs/fscache/fscache 0xb5e8fefa __fscache_uncache_all_inode_pages +EXPORT_SYMBOL fs/fscache/fscache 0xb90b6466 __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xbc7b2391 fscache_object_destroy +EXPORT_SYMBOL fs/fscache/fscache 0xc42a12c0 fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0xd03d2b81 __fscache_update_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xdc8011a4 fscache_mark_pages_cached +EXPORT_SYMBOL fs/fscache/fscache 0xe00ab5ff __fscache_disable_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xe9e130ae __fscache_alloc_page +EXPORT_SYMBOL fs/fscache/fscache 0xebc487a2 fscache_init_cache +EXPORT_SYMBOL fs/fscache/fscache 0xed099755 __fscache_uncache_page +EXPORT_SYMBOL fs/fscache/fscache 0xef3d76da fscache_object_init +EXPORT_SYMBOL fs/fscache/fscache 0xf977d6a8 fscache_object_lookup_negative +EXPORT_SYMBOL fs/nfsd/nfsd 0x35e33c1e nfs4_acl_write_who +EXPORT_SYMBOL fs/nfsd/nfsd 0x5a157ae4 nfs4_acl_get_whotype +EXPORT_SYMBOL fs/nfsd/nfsd 0xa0f4b528 nfs4_acl_posix_to_nfsv4 +EXPORT_SYMBOL fs/nfsd/nfsd 0xb25b2957 nfs4_acl_nfsv4_to_posix +EXPORT_SYMBOL fs/nfsd/nfsd 0xe13337f0 nfs4_acl_new +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x68b35cf0 qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x865b7b81 qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x8ea86626 qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x9e514b29 qtree_delete_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xa5f523a1 qtree_entry_unused +EXPORT_SYMBOL lib/cordic 0x434bfd07 cordic_calc_iq +EXPORT_SYMBOL lib/crc-ccitt 0x1a703ba1 crc_ccitt +EXPORT_SYMBOL lib/crc-ccitt 0x75811312 crc_ccitt_table +EXPORT_SYMBOL lib/crc-itu-t 0x6d356209 crc_itu_t +EXPORT_SYMBOL lib/crc-itu-t 0xd29b009f crc_itu_t_table +EXPORT_SYMBOL lib/crc7 0x6c1f6fee crc7 +EXPORT_SYMBOL lib/crc7 0xd80c3603 crc7_syndrome_table +EXPORT_SYMBOL lib/crc8 0xab9ad613 crc8_populate_lsb +EXPORT_SYMBOL lib/crc8 0xd09b2cba crc8 +EXPORT_SYMBOL lib/crc8 0xd4534d80 crc8_populate_msb +EXPORT_SYMBOL lib/libcrc32c 0x27000b29 crc32c +EXPORT_SYMBOL lib/lru_cache 0x053de557 lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0x17530a2d lc_set +EXPORT_SYMBOL lib/lru_cache 0x2eb86314 lc_committed +EXPORT_SYMBOL lib/lru_cache 0x3ec8e9bb lc_destroy +EXPORT_SYMBOL lib/lru_cache 0x486392c2 lc_del +EXPORT_SYMBOL lib/lru_cache 0x55d40ad0 lc_index_of +EXPORT_SYMBOL lib/lru_cache 0x70d9ddd8 lc_get_cumulative +EXPORT_SYMBOL lib/lru_cache 0x745ebaab lc_find +EXPORT_SYMBOL lib/lru_cache 0x846875a0 lc_reset +EXPORT_SYMBOL lib/lru_cache 0x8c26f371 lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xbd1db2e1 lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0xbea1b0ba lc_try_get +EXPORT_SYMBOL lib/lru_cache 0xc343305e lc_is_used +EXPORT_SYMBOL lib/lru_cache 0xd6e146aa lc_get +EXPORT_SYMBOL lib/lru_cache 0xdaef897c lc_put +EXPORT_SYMBOL lib/lru_cache 0xe7800d85 lc_create +EXPORT_SYMBOL lib/lru_cache 0xfe413d0d lc_element_by_index +EXPORT_SYMBOL lib/lz4/lz4_compress 0x0c222eb5 lz4_compress +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x682a23e0 lz4hc_compress +EXPORT_SYMBOL lib/raid6/raid6_pq 0x0bd662f6 raid6_gfmul +EXPORT_SYMBOL lib/raid6/raid6_pq 0x15fe0cd3 raid6_gfexp +EXPORT_SYMBOL lib/raid6/raid6_pq 0x5ba93f9d raid6_gfinv +EXPORT_SYMBOL lib/raid6/raid6_pq 0xce45a6f1 raid6_gfexi +EXPORT_SYMBOL lib/raid6/raid6_pq 0xd9e91f83 raid6_vgfmul +EXPORT_SYMBOL lib/raid6/raid6_pq 0xefc78e77 raid6_empty_zero_page +EXPORT_SYMBOL net/802/p8022 0xcf718892 register_8022_client +EXPORT_SYMBOL net/802/p8022 0xff4c8cb2 unregister_8022_client +EXPORT_SYMBOL net/802/p8023 0x045ed668 make_8023_client +EXPORT_SYMBOL net/802/p8023 0x3a310b0e destroy_8023_client +EXPORT_SYMBOL net/802/psnap 0x899326b9 unregister_snap_client +EXPORT_SYMBOL net/802/psnap 0xbf19eb9e register_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x05b37a2a p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0x08ed8745 p9_payload_gup +EXPORT_SYMBOL net/9p/9pnet 0x091cb3d5 p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0x12ee51fe p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x19327ac7 v9fs_get_default_trans +EXPORT_SYMBOL net/9p/9pnet 0x1ad6c858 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x1b1b9115 p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x22998dfa p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0x260b9ab5 p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x26720f49 v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x2e67e3b8 p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0x35d1e27e p9_idpool_get +EXPORT_SYMBOL net/9p/9pnet 0x37f38be0 p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0x3aeaa2d6 p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x41da17ce p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0x44d2c2c0 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0x46498d27 p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0x5ec9e4d0 p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0x623f9c43 v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0x6a157cf5 p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0x74a38e6f p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0x7b907755 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0x8797c4dc p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0x8c1205b3 p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0x8ee358b4 p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0x977a0030 p9_nr_pages +EXPORT_SYMBOL net/9p/9pnet 0x9955052c p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x9f072a32 v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0xa31221c5 p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0xa3b79f7d p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0xa7b3aa09 p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0xb641e0dc p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0xba341f21 p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0xbd7788ad p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0xc200083f p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0xc5db54a9 p9_idpool_destroy +EXPORT_SYMBOL net/9p/9pnet 0xc919dd06 p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0xc929839e p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0xcb70e3e4 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0xcbdcc97c p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0xd25bebe7 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xe6f3c403 p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0xf24e3fbd p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0xf4a111d8 p9_idpool_create +EXPORT_SYMBOL net/9p/9pnet 0xf830bb13 p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0xf84f2022 p9_idpool_put +EXPORT_SYMBOL net/9p/9pnet 0xf87ed60e p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0xfae014ab p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0xfd40c79d p9_idpool_check +EXPORT_SYMBOL net/9p/9pnet 0xfee7b7a5 p9_client_readdir +EXPORT_SYMBOL net/appletalk/appletalk 0x0615d385 aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0x4c8eb2e5 alloc_ltalkdev +EXPORT_SYMBOL net/appletalk/appletalk 0xa2737faf atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0xbf857c87 atrtr_get_dev +EXPORT_SYMBOL net/atm/atm 0x1167e45a atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0x27ff24de atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x347257ec register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x49272283 vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0x5fc2d093 atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0x66bc9583 vcc_release_async +EXPORT_SYMBOL net/atm/atm 0x9404f59c atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xb5354957 atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0xc8b912cb deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0xca87b453 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0xd866391d atm_dev_register +EXPORT_SYMBOL net/atm/atm 0xe0d68d55 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0xe6d06463 vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0xf07c35e0 atm_charge +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x3afee63e ax25_findbyuid +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x453c6bc7 ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x72c9f5f8 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x76678eaa ax25_hard_header +EXPORT_SYMBOL net/ax25/ax25 0x7e5c8863 ax25_rebuild_header +EXPORT_SYMBOL net/ax25/ax25 0x808a18aa ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0x94ab84f9 ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xe535285f ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0xf3e86611 ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0xf51dc87b ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0xffc22584 ax25_linkfail_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x04e656a1 l2cap_conn_get +EXPORT_SYMBOL net/bluetooth/bluetooth 0x09293b1d hci_register_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0b7a4a32 hci_conn_check_secure +EXPORT_SYMBOL net/bluetooth/bluetooth 0x0cd818fc bt_procfs_cleanup +EXPORT_SYMBOL net/bluetooth/bluetooth 0x110adc13 hci_suspend_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x18378524 bt_sock_register +EXPORT_SYMBOL net/bluetooth/bluetooth 0x292b5a72 bt_sock_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0x2b590506 hci_recv_stream_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x31fe3de9 hci_recv_fragment +EXPORT_SYMBOL net/bluetooth/bluetooth 0x333393df bt_accept_dequeue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3820e7a3 hci_free_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x38287bea hci_register_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x3eadc00a bt_sock_reclassify_lock +EXPORT_SYMBOL net/bluetooth/bluetooth 0x424f0874 hci_recv_frame +EXPORT_SYMBOL net/bluetooth/bluetooth 0x458dbee5 hci_alloc_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4a3c74b1 bt_sock_poll +EXPORT_SYMBOL net/bluetooth/bluetooth 0x4da1bcb5 bt_accept_enqueue +EXPORT_SYMBOL net/bluetooth/bluetooth 0x5dc9587a __hci_cmd_sync +EXPORT_SYMBOL net/bluetooth/bluetooth 0x62eec458 __hci_cmd_sync_ev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x652125eb hci_conn_security +EXPORT_SYMBOL net/bluetooth/bluetooth 0x6d2bf72b l2cap_conn_put +EXPORT_SYMBOL net/bluetooth/bluetooth 0x73f76e8d l2cap_is_socket +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7ba879a7 bt_sock_wait_ready +EXPORT_SYMBOL net/bluetooth/bluetooth 0x7c640527 bt_info +EXPORT_SYMBOL net/bluetooth/bluetooth 0x81b61607 bt_sock_ioctl +EXPORT_SYMBOL net/bluetooth/bluetooth 0x84af87e6 hci_get_route +EXPORT_SYMBOL net/bluetooth/bluetooth 0x894868b5 bt_sock_wait_state +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8a0dccaa l2cap_unregister_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8b678e89 hci_resume_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8f8348d3 bt_sock_stream_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0x8fea24bd bt_sock_unregister +EXPORT_SYMBOL net/bluetooth/bluetooth 0x91c9a325 bt_to_errno +EXPORT_SYMBOL net/bluetooth/bluetooth 0xa3493318 hci_unregister_dev +EXPORT_SYMBOL net/bluetooth/bluetooth 0xb61a0c3b bt_err +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc11fd664 hci_unregister_cb +EXPORT_SYMBOL net/bluetooth/bluetooth 0xc2ef9519 bt_sock_recvmsg +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcc1fb551 baswap +EXPORT_SYMBOL net/bluetooth/bluetooth 0xcfcf58da l2cap_register_user +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd0d04681 hci_conn_switch_role +EXPORT_SYMBOL net/bluetooth/bluetooth 0xd46e1221 bt_procfs_init +EXPORT_SYMBOL net/bluetooth/bluetooth 0xdb1fa08f bt_accept_unlink +EXPORT_SYMBOL net/bluetooth/bluetooth 0xe74e7f1b bt_sock_link +EXPORT_SYMBOL net/bridge/bridge 0x7b712a49 br_should_route_hook +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x987aeef0 ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xd095a0a5 ebt_do_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xf695c534 ebt_register_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +EXPORT_SYMBOL net/caif/caif 0x252d3447 caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0x2a09f713 cfpkt_fromnative +EXPORT_SYMBOL net/caif/caif 0x329dbd06 cfpkt_info +EXPORT_SYMBOL net/caif/caif 0x38701a7c cfcnfg_del_phy_layer +EXPORT_SYMBOL net/caif/caif 0x4996126d caif_disconnect_client +EXPORT_SYMBOL net/caif/caif 0x4a237e57 cfpkt_tonative +EXPORT_SYMBOL net/caif/caif 0x613f77ab get_cfcnfg +EXPORT_SYMBOL net/caif/caif 0x6a44fc70 cfpkt_extr_head +EXPORT_SYMBOL net/caif/caif 0x6cbbcc6d cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x966d7de2 cfpkt_add_head +EXPORT_SYMBOL net/caif/caif 0x97d7ccb2 caif_connect_client +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/can/can 0x59d40f07 can_proto_register +EXPORT_SYMBOL net/can/can 0x6482cf8c can_send +EXPORT_SYMBOL net/can/can 0xa0b3baf0 can_ioctl +EXPORT_SYMBOL net/can/can 0xcb27bb8e can_rx_unregister +EXPORT_SYMBOL net/can/can 0xd813a258 can_proto_unregister +EXPORT_SYMBOL net/can/can 0xe051aae5 can_rx_register +EXPORT_SYMBOL net/ceph/libceph 0x0534cb68 ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x09290ab3 ceph_debugfs_init +EXPORT_SYMBOL net/ceph/libceph 0x09b7fa11 ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0x0a775590 ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x0d61c270 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0x11ed193d ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x1475bf0d ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x16b85e2c ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0x175d9451 ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0x197effcb ceph_osdc_release_request +EXPORT_SYMBOL net/ceph/libceph 0x1a3f2339 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x1b3c6b20 osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x206b9011 ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0x20d151cb ceph_osdc_setup +EXPORT_SYMBOL net/ceph/libceph 0x2b3a7941 ceph_osdc_readpages +EXPORT_SYMBOL net/ceph/libceph 0x2b4c0b52 ceph_auth_create_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x2cf63f09 ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0x2edd2369 osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x307e558f ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x36fe8ef8 osd_req_op_cls_response_data +EXPORT_SYMBOL net/ceph/libceph 0x39cfeb0f ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0x3abec91f ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x3b4e8825 ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x3b4f1b28 ceph_osdc_build_request +EXPORT_SYMBOL net/ceph/libceph 0x3c4c17f6 ceph_osdc_set_request_linger +EXPORT_SYMBOL net/ceph/libceph 0x3df0ec7c ceph_calc_ceph_pg +EXPORT_SYMBOL net/ceph/libceph 0x3f044a61 ceph_osdc_create_event +EXPORT_SYMBOL net/ceph/libceph 0x3f688151 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x41613db6 osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0x4205ffd7 ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0x422919b3 osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0x43e458f6 ceph_file_part +EXPORT_SYMBOL net/ceph/libceph 0x43efd647 ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0x44be08a5 ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x496bfecf ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0x4a283545 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x4e89eb3c ceph_osdc_cancel_event +EXPORT_SYMBOL net/ceph/libceph 0x5379cea3 ceph_caps_for_mode +EXPORT_SYMBOL net/ceph/libceph 0x570ceb67 ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x5c811cc4 ceph_copy_page_vector_to_user +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x6796eb5e ceph_monc_create_snapid +EXPORT_SYMBOL net/ceph/libceph 0x6a55e79d ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0x6b2e3bcd ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x6c5d5ac1 ceph_calc_pg_primary +EXPORT_SYMBOL net/ceph/libceph 0x6d7c2160 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0x705e47c9 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0x7168baf8 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0x77692acb ceph_msg_last_put +EXPORT_SYMBOL net/ceph/libceph 0x776e3dbf ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x7b2f4f59 ceph_monc_got_mdsmap +EXPORT_SYMBOL net/ceph/libceph 0x81ba589d ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x81eae1b6 ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0x864ff991 ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0x8d5b2d02 ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0x8e3f7def ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x927790fb ceph_client_id +EXPORT_SYMBOL net/ceph/libceph 0x94ba3329 __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0x94f236cf ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0x95d1ba49 osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x99de4738 ceph_messenger_init +EXPORT_SYMBOL net/ceph/libceph 0x99e36571 ceph_osdc_cleanup +EXPORT_SYMBOL net/ceph/libceph 0x9eeaa77d osd_req_op_watch_init +EXPORT_SYMBOL net/ceph/libceph 0x9f19604a ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0x9f534f4d ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xa13da879 ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0xa61cc996 osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0xa87f14bf ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0xaadfab94 ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0xacbb4288 ceph_osdc_put_event +EXPORT_SYMBOL net/ceph/libceph 0xae3515ba ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb3afb000 ceph_get_direct_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb6081d6d ceph_msgr_exit +EXPORT_SYMBOL net/ceph/libceph 0xb9d90ddf ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0xba64a7b0 ceph_osdc_writepages +EXPORT_SYMBOL net/ceph/libceph 0xc2ad9186 ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0xc4a80955 ceph_debugfs_cleanup +EXPORT_SYMBOL net/ceph/libceph 0xc55de604 ceph_parse_options +EXPORT_SYMBOL net/ceph/libceph 0xc9284ef7 osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0xc953b01f ceph_osdc_unregister_linger_request +EXPORT_SYMBOL net/ceph/libceph 0xc9f82b38 ceph_msgr_init +EXPORT_SYMBOL net/ceph/libceph 0xca8fe843 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0xcb225ab8 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0xcb50a624 ceph_parse_ips +EXPORT_SYMBOL net/ceph/libceph 0xd0cb468c osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0xd24c6f05 ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0xd2c107bb ceph_flags_to_mode +EXPORT_SYMBOL net/ceph/libceph 0xd52b404c ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0xd9663844 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0xe0f66dc4 ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0xe59a8f72 ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0xe5d1be3a ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0xe5e18dc5 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xe82c9c32 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0xed229339 ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0xeee9faee ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0xf43caeda ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0xf5774cba ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0xfbdcc22f ceph_auth_update_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xfec378a3 osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/dccp/dccp_ipv4 0xccbbecb9 dccp_syn_ack_timeout +EXPORT_SYMBOL net/ieee802154/ieee802154 0x075ff50f ieee802154_nl_disassoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x132abfa1 ieee802154_nl_start_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x19c89465 ieee802154_nl_assoc_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x491d6892 ieee802154_nl_disassoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x4ed807bb ieee802154_nl_scan_confirm +EXPORT_SYMBOL net/ieee802154/ieee802154 0x64d33fff ieee802154_nl_assoc_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x747336fb ieee802154_nl_beacon_indic +EXPORT_SYMBOL net/ieee802154/ieee802154 0x75af8dd6 wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0x8caae379 wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0x8d788a49 wpan_phy_alloc +EXPORT_SYMBOL net/ieee802154/ieee802154 0xbb8ef498 wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0xbd9b6da1 wpan_phy_unregister +EXPORT_SYMBOL net/ieee802154/ieee802154 0xda50d58f wpan_phy_find +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x37bc5692 arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x60518eac arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xb2131149 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x4d6fc9a1 ipt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x8ca5673b ipt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x94f6b225 ipt_do_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x2c112ce7 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv4/tunnel4 0xcc42f79c xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x9ecbc1dd ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xbd23fef6 ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x0ba405a0 ip6t_unregister_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x1e4af5d2 ip6t_register_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xd6cef88e ip6t_do_table +EXPORT_SYMBOL net/ipv6/tunnel6 0x155f2199 xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/tunnel6 0x3a4a9fce xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x0f47a0b2 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x8fc9cbf4 xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x34cbe837 ircomm_close +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x377b3a3d ircomm_connect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x52d5c4e2 ircomm_open +EXPORT_SYMBOL net/irda/ircomm/ircomm 0x8b6d3b27 ircomm_disconnect_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xc37358d1 ircomm_flow_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xc79a6490 ircomm_connect_response +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xd85a90ac ircomm_control_request +EXPORT_SYMBOL net/irda/ircomm/ircomm 0xeb59ed0e ircomm_data_request +EXPORT_SYMBOL net/irda/irda 0x0064e0ea hashbin_get_first +EXPORT_SYMBOL net/irda/irda 0x06a3ee58 irias_new_integer_value +EXPORT_SYMBOL net/irda/irda 0x07d3647c irlmp_register_service +EXPORT_SYMBOL net/irda/irda 0x0eb32084 async_unwrap_char +EXPORT_SYMBOL net/irda/irda 0x1751d00f iriap_close +EXPORT_SYMBOL net/irda/irda 0x1ae78712 irlmp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0x1bad2478 irttp_close_tsap +EXPORT_SYMBOL net/irda/irda 0x1e6cade0 irias_add_integer_attrib +EXPORT_SYMBOL net/irda/irda 0x203322c9 irlmp_data_request +EXPORT_SYMBOL net/irda/irda 0x2036ad06 irda_param_insert +EXPORT_SYMBOL net/irda/irda 0x2a154816 iriap_getvaluebyclass_request +EXPORT_SYMBOL net/irda/irda 0x2b8640bb irttp_open_tsap +EXPORT_SYMBOL net/irda/irda 0x2da51374 irlap_close +EXPORT_SYMBOL net/irda/irda 0x33cbe2c6 proc_irda +EXPORT_SYMBOL net/irda/irda 0x35cca06a irlmp_close_lsap +EXPORT_SYMBOL net/irda/irda 0x3e0bf666 irlmp_connect_request +EXPORT_SYMBOL net/irda/irda 0x3e56064f hashbin_new +EXPORT_SYMBOL net/irda/irda 0x400bc913 irttp_flow_request +EXPORT_SYMBOL net/irda/irda 0x448b8aaa irda_qos_bits_to_value +EXPORT_SYMBOL net/irda/irda 0x45c0e30d irttp_dup +EXPORT_SYMBOL net/irda/irda 0x464fc6ff irda_notify_init +EXPORT_SYMBOL net/irda/irda 0x46c1c4a2 irlmp_unregister_service +EXPORT_SYMBOL net/irda/irda 0x5fda6a32 irttp_connect_response +EXPORT_SYMBOL net/irda/irda 0x601bda46 hashbin_remove +EXPORT_SYMBOL net/irda/irda 0x6abbc641 irttp_data_request +EXPORT_SYMBOL net/irda/irda 0x6b043eba irda_init_max_qos_capabilies +EXPORT_SYMBOL net/irda/irda 0x6b5fbcef hashbin_get_next +EXPORT_SYMBOL net/irda/irda 0x6c7b4f81 irttp_disconnect_request +EXPORT_SYMBOL net/irda/irda 0x6e0ab3c7 irias_add_string_attrib +EXPORT_SYMBOL net/irda/irda 0x7042bc54 irlmp_register_client +EXPORT_SYMBOL net/irda/irda 0x763e54a4 irlmp_unregister_client +EXPORT_SYMBOL net/irda/irda 0x7957f728 irlmp_update_client +EXPORT_SYMBOL net/irda/irda 0x79ca8d98 irlmp_open_lsap +EXPORT_SYMBOL net/irda/irda 0x7b7d6561 irttp_connect_request +EXPORT_SYMBOL net/irda/irda 0x85228261 alloc_irdadev +EXPORT_SYMBOL net/irda/irda 0x854389e3 irlap_open +EXPORT_SYMBOL net/irda/irda 0x85d88217 irias_delete_object +EXPORT_SYMBOL net/irda/irda 0x896c28ec async_wrap_skb +EXPORT_SYMBOL net/irda/irda 0x91815586 irda_param_pack +EXPORT_SYMBOL net/irda/irda 0x956e76f5 irlmp_connect_response +EXPORT_SYMBOL net/irda/irda 0x993ad14b irda_param_extract_all +EXPORT_SYMBOL net/irda/irda 0xa1d41e58 hashbin_delete +EXPORT_SYMBOL net/irda/irda 0xaa557515 irias_new_object +EXPORT_SYMBOL net/irda/irda 0xaeb6d6cb iriap_open +EXPORT_SYMBOL net/irda/irda 0xb9394173 irias_delete_value +EXPORT_SYMBOL net/irda/irda 0xbcd3ef13 irias_object_change_attribute +EXPORT_SYMBOL net/irda/irda 0xbe40ace9 irlmp_discovery_request +EXPORT_SYMBOL net/irda/irda 0xc68e43be irias_add_octseq_attrib +EXPORT_SYMBOL net/irda/irda 0xc793d633 irttp_udata_request +EXPORT_SYMBOL net/irda/irda 0xcead7dbb hashbin_find +EXPORT_SYMBOL net/irda/irda 0xd2108314 hashbin_insert +EXPORT_SYMBOL net/irda/irda 0xd6deeaae irda_setup_dma +EXPORT_SYMBOL net/irda/irda 0xde4c6b3c irlmp_service_to_hint +EXPORT_SYMBOL net/irda/irda 0xe3463529 hashbin_lock_find +EXPORT_SYMBOL net/irda/irda 0xe3bde43e irias_insert_object +EXPORT_SYMBOL net/irda/irda 0xedd521c2 irlmp_get_discoveries +EXPORT_SYMBOL net/irda/irda 0xee6e43e7 irda_device_set_media_busy +EXPORT_SYMBOL net/irda/irda 0xf0a694a1 irias_find_object +EXPORT_SYMBOL net/irda/irda 0xf5876b95 hashbin_remove_this +EXPORT_SYMBOL net/l2tp/l2tp_core 0x41f54055 l2tp_recv_common +EXPORT_SYMBOL net/lapb/lapb 0x1e75c6ed lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0x208b8682 lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0x320e72ae lapb_register +EXPORT_SYMBOL net/lapb/lapb 0x6302e760 lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0x711c11b0 lapb_unregister +EXPORT_SYMBOL net/lapb/lapb 0xc4af31f2 lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0xfc8ac4ff lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0xfda4ed91 lapb_setparms +EXPORT_SYMBOL net/llc/llc 0x318f58ed llc_sap_find +EXPORT_SYMBOL net/llc/llc 0x38291578 llc_sap_open +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x4dfa556f llc_add_pack +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x5432f23b llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0x8f659e0a llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/llc/llc 0xc35e28f7 llc_sap_list_lock +EXPORT_SYMBOL net/llc/llc 0xcc8fab76 llc_sap_close +EXPORT_SYMBOL net/llc/llc 0xd27a8dd5 llc_set_station_handler +EXPORT_SYMBOL net/mac80211/mac80211 0x009376f2 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0x013b6454 ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0x047466dc ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0x06888d17 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x11a3d455 ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x1271b050 ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0x1a1f193d ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x1cdccbaf ieee80211_alloc_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x1f06d841 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0x1fb57eb5 __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x21a2ae71 ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0x2454dc1c ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x3008471b ieee80211_rx +EXPORT_SYMBOL net/mac80211/mac80211 0x3538426b ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x4f13fde1 ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0x538ad005 ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x545951cd ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x56942207 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0x5c28cca5 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x5da96829 ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x63d4c428 ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0x643f8385 ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0x6587d14d ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x6720e163 ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x6a0a238d ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0x6a901197 ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0x6ca5da7b ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x703da0ef ieee80211_csa_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x71f38ff7 wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x72c52a2f ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x741a4205 ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x746db667 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x74d1a988 ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x7edd2744 ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x814fb157 rate_control_send_low +EXPORT_SYMBOL net/mac80211/mac80211 0x83508939 ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0x84249527 ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0x85071022 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x8f640894 ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0x8fa58bc9 ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x90053790 ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x95a94022 ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x9c5e6334 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0xa1fc36c4 ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xa2031861 ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xa52a6edc ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xaa06f464 ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0xaa157485 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0xb07d25ae ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xb6f27c2d ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0xb9e358c5 ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0xc55d56d6 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xc5fee301 ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0xc7248975 __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0xc7e9782e ieee80211_get_key_tx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xc8ac255a ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xca2aea1c ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xcccafe99 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xccef7244 ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0xcf117cd2 ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0xd11f7ee5 __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xd29971ea ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0xd5514484 ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xdd2e07eb ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0xddb47d52 ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xe44ca468 ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0xe982b611 ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0xecef5b69 ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0xef53bc75 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0xf1129af6 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xf1243b3c ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xf395de03 ieee80211_aes_cmac_calculate_k1_k2 +EXPORT_SYMBOL net/mac80211/mac80211 0xf8a50658 rate_control_set_rates +EXPORT_SYMBOL net/mac802154/mac802154 0x0416b97a ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0x5d41bede ieee802154_unregister_device +EXPORT_SYMBOL net/mac802154/mac802154 0x65bd84d1 ieee802154_alloc_device +EXPORT_SYMBOL net/mac802154/mac802154 0x68abd6be ieee802154_register_device +EXPORT_SYMBOL net/mac802154/mac802154 0xb81b4a3c ieee802154_free_device +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x0751d080 ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x38ccea93 register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x471fa0b5 register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x71516d03 ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x7c84da55 ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xb6e90d4a ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xb9decc1d ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xbd6dbfd8 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xc061d705 unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd95c5ce0 ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xdf96261b register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xf5eff5af unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xf925ff15 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xfac15145 ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x10c09381 nf_conntrack_untracked +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x839ff801 __nf_ct_ext_add_length +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xae97bf29 __nf_ct_ext_destroy +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0x827cc6a1 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_conntrack_proto_gre 0x404f5a60 nf_ct_gre_keymap_flush +EXPORT_SYMBOL net/netfilter/nf_nat 0x2b90ddbb nf_xfrm_me_harder +EXPORT_SYMBOL net/netfilter/nf_nat 0x55eccd49 nf_nat_used_tuple +EXPORT_SYMBOL net/netfilter/nf_nat 0x575736a1 nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nf_nat 0x78a2a3c5 nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x9e039560 __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xfe9b8d98 nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/x_tables 0x07098619 xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0x08c473b7 xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0x253e8b44 xt_compat_init_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x350b534e xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x400b79d7 xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0x42c39ed4 xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0x5b8f0ea7 xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x5d03825e xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0x8eede675 xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x979b17f8 xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0xb28f5ef1 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xce94fb28 xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0xd44d2f34 xt_find_target +EXPORT_SYMBOL net/nfc/hci/hci 0x0ade03e8 nfc_hci_send_response +EXPORT_SYMBOL net/nfc/hci/hci 0x0f657fb8 nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0x265ed127 nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x40380fc1 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0x43028a27 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x47b00d75 nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0x508fb034 nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0x609d2ec8 nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0x87000015 nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0x87c43ba1 nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0x9f76ed5e nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0xa40ebc06 nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xb80b8f84 nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0xba547e5f nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0xbca0b4fd nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xc5973623 nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0xc885ce71 nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0xe49b394c nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0xe84e6c1f nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0xf21ecad8 nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/nci/nci 0x19bd99bf nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xc6279d51 nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0xf9eade52 nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0xfa250c14 nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0xfb40d330 nci_register_device +EXPORT_SYMBOL net/nfc/nfc 0x00bf2881 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0x1c57ac55 nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0x25f211a0 nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0x2cc0d8f3 nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0x2dd8bdc8 nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0x54deead7 nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc 0x6e67b0ea nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0x76869bdd nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0x7989aea0 nfc_class +EXPORT_SYMBOL net/nfc/nfc 0x7a920d80 nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0x9185fe97 nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0xa703c047 nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xac43f664 nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0xb4ff731d nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0xb8ed30ee nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0xcc391e83 nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0xd32789d8 nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0xeec174e3 nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0xf0846054 nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0xfaeaca37 nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc_digital 0x595c12c2 nfc_digital_allocate_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x5e405b39 nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xa5d0f37a nfc_digital_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0xace2aaf7 nfc_digital_free_device +EXPORT_SYMBOL net/phonet/phonet 0x359f3c29 phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0x6a7fef30 pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0xa5d40b6c pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0xaeb53e0d phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0xbac8715e phonet_proto_register +EXPORT_SYMBOL net/phonet/phonet 0xdfa6e491 phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0xebd787da pn_sock_unhash +EXPORT_SYMBOL net/phonet/phonet 0xf3f118ef pn_sock_get_port +EXPORT_SYMBOL net/rds/rds 0x7505d413 rds_str_array +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x08cde2c2 rxrpc_kernel_is_data_last +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x103e137c rxrpc_kernel_get_abort_code +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x3b01a7aa rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x56dc8ec1 rxrpc_kernel_get_error_number +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x70ef63cf rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x75e07cf5 rxrpc_kernel_data_delivered +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x768b2d50 key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x86eb3c6c rxrpc_kernel_end_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0x96bd1c34 rxrpc_kernel_reject_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xa2d21b6c rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xb2d05276 rxrpc_get_null_key +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xc75c37e6 rxrpc_kernel_accept_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xd27f9019 rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xd5fceebf rxrpc_kernel_intercept_rx_messages +EXPORT_SYMBOL net/rxrpc/af-rxrpc 0xf9e519c6 rxrpc_kernel_free_skb +EXPORT_SYMBOL net/sctp/sctp 0xf176f7ce sctp_do_peeloff +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x21aeac19 gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x2bc1e423 gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xc05b6674 gss_mech_get +EXPORT_SYMBOL net/sunrpc/sunrpc 0x6849ed86 svc_pool_stats_open +EXPORT_SYMBOL net/wimax/wimax 0x3b68ebe3 wimax_rfkill +EXPORT_SYMBOL net/wimax/wimax 0x9d9a8494 wimax_reset +EXPORT_SYMBOL net/wireless/cfg80211 0x01096322 cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x034d962d wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0x06a8d763 cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0x093c104e cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0x09c64fbd ieee80211_frequency_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x1056d2f6 ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x10a713da cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0x138ee0de cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0x14a17228 cfg80211_rx_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x159aec2a wiphy_rfkill_set_hw_state +EXPORT_SYMBOL net/wireless/cfg80211 0x16582b1e wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x19e03378 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0x1ced9259 cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0x1edafc52 cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x22569ed8 cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x2858699d cfg80211_mgmt_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x2c9fd536 cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x2ef25cb3 cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0x33389130 wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0x346b7453 cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x35e2fd37 cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x36d18133 cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x38dd8eac cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x3ac2541e ieee80211_data_to_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0x406a8302 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0x468e6877 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0x4a7fd6b9 wiphy_new +EXPORT_SYMBOL net/wireless/cfg80211 0x4c3b5878 ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0x4c40b2fb ieee80211_bss_get_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x549ae50f ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x5798f9f0 cfg80211_report_obss_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x597cf4ba cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x5b2d522d cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0x5c96155e cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x5e76f6d7 ieee80211_data_from_8023 +EXPORT_SYMBOL net/wireless/cfg80211 0x5f279e36 cfg80211_connect_result +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6d6cb9ad ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0x6e76023e cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0x6f729e15 wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x7ccbb4a1 freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0x7dec70ce cfg80211_roamed_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x7fc05898 cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x7fe1a403 cfg80211_find_ie +EXPORT_SYMBOL net/wireless/cfg80211 0x8129b63a cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x81870ba7 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0x8ed5528c cfg80211_inform_bss_width +EXPORT_SYMBOL net/wireless/cfg80211 0x915abc28 cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x982e6b6d ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0x9eea9fe6 wiphy_rfkill_stop_polling +EXPORT_SYMBOL net/wireless/cfg80211 0xa1425906 ieee80211_channel_to_frequency +EXPORT_SYMBOL net/wireless/cfg80211 0xa197b1ff ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xa58a6a00 cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0xa6e524a2 cfg80211_inform_bss_width_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xab7b7c5a __ieee80211_get_channel +EXPORT_SYMBOL net/wireless/cfg80211 0xaf6ffd27 cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xb4453cf0 regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0xb4d75e89 cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0xb7302863 cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xbc1139cd ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0xbc55f689 cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xbcece991 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0xbe3665c7 cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0xc15c8611 cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0xc2324c34 cfg80211_assoc_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xc63f1b81 ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0xcb30d74f cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xcc239800 cfg80211_del_sta +EXPORT_SYMBOL net/wireless/cfg80211 0xcc77d00a cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0xcf5ed386 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0xcf618a57 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0xd2e6aac8 cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0xdb2fb636 cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xe7f8c288 cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0xee42db3c cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xef2e101d cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0xef39d74a cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xf0dddfb9 cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xf22d8c70 cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xf477ee67 cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0xf69d80e5 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0xf831c75f cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0xfed4d591 cfg80211_find_vendor_ie +EXPORT_SYMBOL net/wireless/lib80211 0x2d0f99e5 print_ssid +EXPORT_SYMBOL net/wireless/lib80211 0x4c505922 lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x4d84dd8f lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0xe06c6f6e lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xe8d32f5d lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0xebf49346 lib80211_crypt_info_free +EXPORT_SYMBOL net/wireless/lib80211 0xf0e82f3b lib80211_get_crypto_ops +EXPORT_SYMBOL vmlinux 0x00000000 __symbol_put +EXPORT_SYMBOL vmlinux 0x00000000 alloc_pages_current +EXPORT_SYMBOL vmlinux 0x00000000 current_fs_time +EXPORT_SYMBOL vmlinux 0x00000000 d_tmpfile +EXPORT_SYMBOL vmlinux 0x00000000 do_sync_read +EXPORT_SYMBOL vmlinux 0x00000000 filp_close +EXPORT_SYMBOL vmlinux 0x00000000 finish_open +EXPORT_SYMBOL vmlinux 0x00000000 generic_getxattr +EXPORT_SYMBOL vmlinux 0x00000000 generic_write_sync +EXPORT_SYMBOL vmlinux 0x00000000 get_unmapped_area +EXPORT_SYMBOL vmlinux 0x00000000 in_group_p +EXPORT_SYMBOL vmlinux 0x00000000 inode_add_bytes +EXPORT_SYMBOL vmlinux 0x00000000 iov_shorten +EXPORT_SYMBOL vmlinux 0x00000000 iterate_fd +EXPORT_SYMBOL vmlinux 0x00000000 ns_capable +EXPORT_SYMBOL vmlinux 0x00000000 path_is_under +EXPORT_SYMBOL vmlinux 0x00000000 register_exec_domain +EXPORT_SYMBOL vmlinux 0x00000000 schedule_timeout +EXPORT_SYMBOL vmlinux 0x00000000 sock_register +EXPORT_SYMBOL vmlinux 0x00000000 sys_close +EXPORT_SYMBOL vmlinux 0x00000000 task_nice +EXPORT_SYMBOL vmlinux 0x00000000 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0x00000000 vm_brk +EXPORT_SYMBOL vmlinux 0x0018effd add_disk +EXPORT_SYMBOL vmlinux 0x002600fd tty_unthrottle +EXPORT_SYMBOL vmlinux 0x002b992f keyring_alloc +EXPORT_SYMBOL vmlinux 0x00380d51 __pci_register_driver +EXPORT_SYMBOL vmlinux 0x004fb4e2 vlan_vid_add +EXPORT_SYMBOL vmlinux 0x005f2b29 pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0x005f896e xfrm_garbage_collect +EXPORT_SYMBOL vmlinux 0x00801678 flush_scheduled_work +EXPORT_SYMBOL vmlinux 0x008ec57b fsnotify_put_group +EXPORT_SYMBOL vmlinux 0x00ac6958 __next_cpu +EXPORT_SYMBOL vmlinux 0x00afb349 inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x00bb8faa tcp_init_cgroup +EXPORT_SYMBOL vmlinux 0x00cf4a7f of_get_parent +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x012a97fc xor_altivec_4 +EXPORT_SYMBOL vmlinux 0x0164cf68 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0x016680d6 inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x01790e94 csum_partial_copy +EXPORT_SYMBOL vmlinux 0x017c26bc skb_copy_datagram_from_iovec +EXPORT_SYMBOL vmlinux 0x017f1a8c get_thermal_instance +EXPORT_SYMBOL vmlinux 0x01902adf netpoll_trap +EXPORT_SYMBOL vmlinux 0x019e7765 __init_rwsem +EXPORT_SYMBOL vmlinux 0x01a97cb9 ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x01ae879d put_tty_driver +EXPORT_SYMBOL vmlinux 0x01c2258b mfd_cell_disable +EXPORT_SYMBOL vmlinux 0x01c8e84d ida_simple_get +EXPORT_SYMBOL vmlinux 0x01cb2f8f phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0x01cc4054 xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0x01d3fdd3 ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0x01edb405 pci_fixup_device +EXPORT_SYMBOL vmlinux 0x01edf6ac dev_change_flags +EXPORT_SYMBOL vmlinux 0x01ee949a phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x01f833bb dev_mc_add_global +EXPORT_SYMBOL vmlinux 0x02124474 ip_send_check +EXPORT_SYMBOL vmlinux 0x021e8329 skb_copy_expand +EXPORT_SYMBOL vmlinux 0x023a074a hvc_get_chars +EXPORT_SYMBOL vmlinux 0x024b0599 ide_set_handler +EXPORT_SYMBOL vmlinux 0x0250b908 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0x0257c1fc led_set_brightness +EXPORT_SYMBOL vmlinux 0x02649054 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0x026ad367 inet_sock_destruct +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x02816571 fail_migrate_page +EXPORT_SYMBOL vmlinux 0x0281d364 powerpc_debugfs_root +EXPORT_SYMBOL vmlinux 0x028f91e9 bdi_unregister +EXPORT_SYMBOL vmlinux 0x029cb84d netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0x02a18c74 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0x02a6ce5a crc16_table +EXPORT_SYMBOL vmlinux 0x02b86186 skb_tx_error +EXPORT_SYMBOL vmlinux 0x02be7ff0 sock_update_classid +EXPORT_SYMBOL vmlinux 0x02df5b13 tcp_child_process +EXPORT_SYMBOL vmlinux 0x032fe47d ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x034fa896 xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0x03592ea0 security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0x0362bc9a blkdev_get +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x03b214fb scsi_execute +EXPORT_SYMBOL vmlinux 0x03b2a502 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0x03c06156 bitmap_fold +EXPORT_SYMBOL vmlinux 0x03cd239a key_type_keyring +EXPORT_SYMBOL vmlinux 0x03e1bc4a blk_rq_map_user +EXPORT_SYMBOL vmlinux 0x03e2aba2 netif_napi_del +EXPORT_SYMBOL vmlinux 0x03e76bad pci_bus_get +EXPORT_SYMBOL vmlinux 0x03ebda85 dns_query +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x04074f48 ioremap +EXPORT_SYMBOL vmlinux 0x0407f69b mmc_cache_ctrl +EXPORT_SYMBOL vmlinux 0x0410cf9d setattr_copy +EXPORT_SYMBOL vmlinux 0x041cab03 notify_change +EXPORT_SYMBOL vmlinux 0x0422fe4a inet_csk_timer_bug_msg +EXPORT_SYMBOL vmlinux 0x0424fa12 inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x045d229c generic_setlease +EXPORT_SYMBOL vmlinux 0x04638d53 inet_del_protocol +EXPORT_SYMBOL vmlinux 0x046c3c31 mmc_hw_reset_check +EXPORT_SYMBOL vmlinux 0x0473fc8c dm_register_target +EXPORT_SYMBOL vmlinux 0x0476464f vfs_setpos +EXPORT_SYMBOL vmlinux 0x0487f831 fb_find_best_display +EXPORT_SYMBOL vmlinux 0x04c4dc4c lease_get_mtime +EXPORT_SYMBOL vmlinux 0x04dd6fa3 clear_user_page +EXPORT_SYMBOL vmlinux 0x04ea56f9 _kstrtol +EXPORT_SYMBOL vmlinux 0x04ea5d10 ksize +EXPORT_SYMBOL vmlinux 0x05036464 pci_select_bars +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x0530dede _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x054434d6 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x055bf628 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0x055c8559 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0x05a514a1 _insl_ns +EXPORT_SYMBOL vmlinux 0x05bb10c4 generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0x05bb2a50 pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0x05c7740c unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x05f2fc9c netif_carrier_on +EXPORT_SYMBOL vmlinux 0x0602703f n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0x0604fcd0 dev_activate +EXPORT_SYMBOL vmlinux 0x0612713d netdev_printk +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x063fe948 security_path_mkdir +EXPORT_SYMBOL vmlinux 0x065e8272 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0x06797871 vm_stat +EXPORT_SYMBOL vmlinux 0x067d8a12 pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0x067d8d35 security_release_secctx +EXPORT_SYMBOL vmlinux 0x0687dfc3 mmc_gpio_free_ro +EXPORT_SYMBOL vmlinux 0x06b3430e kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x06b4b70e __cleancache_invalidate_page +EXPORT_SYMBOL vmlinux 0x06bbb24a mempool_resize +EXPORT_SYMBOL vmlinux 0x06ea3c83 tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0x06ef056e nla_append +EXPORT_SYMBOL vmlinux 0x06fe3b14 default_grn +EXPORT_SYMBOL vmlinux 0x070b544d i2c_register_driver +EXPORT_SYMBOL vmlinux 0x070ba0e8 bmap +EXPORT_SYMBOL vmlinux 0x07132a75 __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0x071b725d pci_target_state +EXPORT_SYMBOL vmlinux 0x0727c4f3 iowrite8 +EXPORT_SYMBOL vmlinux 0x07389e57 seq_open_private +EXPORT_SYMBOL vmlinux 0x074e9213 down_killable +EXPORT_SYMBOL vmlinux 0x07619aef blk_run_queue_async +EXPORT_SYMBOL vmlinux 0x0788ebbd single_release +EXPORT_SYMBOL vmlinux 0x078a9c93 remap_vmalloc_range_partial +EXPORT_SYMBOL vmlinux 0x078c6366 input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0x0799aca4 local_bh_enable +EXPORT_SYMBOL vmlinux 0x079d0c15 del_gendisk +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07ab8be0 pid_task +EXPORT_SYMBOL vmlinux 0x07b4e046 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0x07b7d38b put_io_context +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07e23eda __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0x07e5caa3 jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0x081a73b7 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0x081face8 i8042_remove_filter +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x083c2cbe of_get_next_parent +EXPORT_SYMBOL vmlinux 0x084021c1 pci_enable_msix +EXPORT_SYMBOL vmlinux 0x0858913f netdev_boot_setup_check +EXPORT_SYMBOL vmlinux 0x086eb604 dma_sync_wait +EXPORT_SYMBOL vmlinux 0x08813e54 ftrace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0x0893aca6 ilookup5 +EXPORT_SYMBOL vmlinux 0x08dcf40d blk_start_request +EXPORT_SYMBOL vmlinux 0x090e69db pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0x09143e17 neigh_ifdown +EXPORT_SYMBOL vmlinux 0x095ab584 simple_unlink +EXPORT_SYMBOL vmlinux 0x095e9b64 ptp_clock_index +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x099fc4b2 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0x09c55cec schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x09c8eb55 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0x09d2467b skb_copy_datagram_const_iovec +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x0a173969 nf_register_hook +EXPORT_SYMBOL vmlinux 0x0a2487e0 unblock_all_signals +EXPORT_SYMBOL vmlinux 0x0a378d55 update_devfreq +EXPORT_SYMBOL vmlinux 0x0a75e53b blk_mq_alloc_single_hw_queue +EXPORT_SYMBOL vmlinux 0x0a770832 register_memory_notifier +EXPORT_SYMBOL vmlinux 0x0a93f277 alloc_pci_dev +EXPORT_SYMBOL vmlinux 0x0a94feea md_flush_request +EXPORT_SYMBOL vmlinux 0x0acb1a3c __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ad1f27d tcp_seq_open +EXPORT_SYMBOL vmlinux 0x0ad2c257 wait_on_sync_kiocb +EXPORT_SYMBOL vmlinux 0x0ae75513 pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0x0b080cac jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0x0b0d888b icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b2a8798 bitmap_start_sync +EXPORT_SYMBOL vmlinux 0x0b2e1ec7 h_get_mpp +EXPORT_SYMBOL vmlinux 0x0b41e6f5 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x0b56117f of_find_node_by_path +EXPORT_SYMBOL vmlinux 0x0b645e55 dev_get_stats +EXPORT_SYMBOL vmlinux 0x0b6c7829 blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b985e86 pci_clear_master +EXPORT_SYMBOL vmlinux 0x0b9f7669 sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0x0bbc5908 gen_estimator_active +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bca6f78 mac_find_mode +EXPORT_SYMBOL vmlinux 0x0bd04ba1 mnt_set_expiry +EXPORT_SYMBOL vmlinux 0x0bda5ea0 pagecache_write_begin +EXPORT_SYMBOL vmlinux 0x0bf1173d __cleancache_get_page +EXPORT_SYMBOL vmlinux 0x0bf98f4d request_key_async_with_auxdata +EXPORT_SYMBOL vmlinux 0x0c0df4eb agp_free_memory +EXPORT_SYMBOL vmlinux 0x0c264267 pcim_enable_device +EXPORT_SYMBOL vmlinux 0x0c45fc96 vfs_lstat +EXPORT_SYMBOL vmlinux 0x0c495f49 security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x0c581456 blk_integrity_merge_bio +EXPORT_SYMBOL vmlinux 0x0c58a8cd netdev_increment_features +EXPORT_SYMBOL vmlinux 0x0c65e73c scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0x0c669ada netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x0c8c9e99 scsi_show_extd_sense +EXPORT_SYMBOL vmlinux 0x0ca4b30f free_user_ns +EXPORT_SYMBOL vmlinux 0x0cae232b utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0x0ce900af blk_finish_plug +EXPORT_SYMBOL vmlinux 0x0d038ae0 __dev_get_by_name +EXPORT_SYMBOL vmlinux 0x0d0a6f05 vsc824x_add_skew +EXPORT_SYMBOL vmlinux 0x0d1e0475 srp_reconnect_rport +EXPORT_SYMBOL vmlinux 0x0d2535d6 flush_dcache_icache_page +EXPORT_SYMBOL vmlinux 0x0d3e07ae pci_unregister_driver +EXPORT_SYMBOL vmlinux 0x0d429f16 filemap_fault +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d6c963c copy_from_user +EXPORT_SYMBOL vmlinux 0x0d895f52 tcp_splice_read +EXPORT_SYMBOL vmlinux 0x0d8a118b sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x0d93d611 bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x0da10ec3 security_sock_graft +EXPORT_SYMBOL vmlinux 0x0da5b6be skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0x0e064388 mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0x0e0c6600 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0x0e295ebc tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0x0e2ee808 invalidate_partition +EXPORT_SYMBOL vmlinux 0x0e31c9b9 proc_create_data +EXPORT_SYMBOL vmlinux 0x0e5b4fbb blk_sync_queue +EXPORT_SYMBOL vmlinux 0x0e6da44a set_normalized_timespec +EXPORT_SYMBOL vmlinux 0x0e7f79fb pskb_expand_head +EXPORT_SYMBOL vmlinux 0x0e8b54c2 __frontswap_load +EXPORT_SYMBOL vmlinux 0x0e8f30f6 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x0ea30aff console_start +EXPORT_SYMBOL vmlinux 0x0ea9a819 ip6_route_output +EXPORT_SYMBOL vmlinux 0x0ecd9f3b input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x0ed2644b agp_generic_destroy_pages +EXPORT_SYMBOL vmlinux 0x0efcbb1b set_current_groups +EXPORT_SYMBOL vmlinux 0x0f0167bc vio_disable_interrupts +EXPORT_SYMBOL vmlinux 0x0f26deff skb_push +EXPORT_SYMBOL vmlinux 0x0f40fde2 eth_rebuild_header +EXPORT_SYMBOL vmlinux 0x0f45e5d7 dquot_free_inode +EXPORT_SYMBOL vmlinux 0x0f4c91ed ns_to_timespec +EXPORT_SYMBOL vmlinux 0x0f4f1a28 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x0f5f40b2 ilookup +EXPORT_SYMBOL vmlinux 0x0f5faa7e wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x0f7da559 mount_single +EXPORT_SYMBOL vmlinux 0x0f95fe6b dma_async_memcpy_buf_to_buf +EXPORT_SYMBOL vmlinux 0x0f967d8f blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x0faef0ed __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x0fd37d3f scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0x0fe2cf0d input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0x0feab43a fb_blank +EXPORT_SYMBOL vmlinux 0x0fed9eeb padata_alloc_possible +EXPORT_SYMBOL vmlinux 0x0ff2b602 slhc_compress +EXPORT_SYMBOL vmlinux 0x100180dd prepare_binprm +EXPORT_SYMBOL vmlinux 0x1028ab39 lock_sock_nested +EXPORT_SYMBOL vmlinux 0x104c8629 bio_put +EXPORT_SYMBOL vmlinux 0x1072a394 csum_partial_copy_from_user +EXPORT_SYMBOL vmlinux 0x1083622f filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0x1096f5bc tty_set_operations +EXPORT_SYMBOL vmlinux 0x10a710f8 dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0x10ea38b2 ipv4_specific +EXPORT_SYMBOL vmlinux 0x10ee20bb default_blu +EXPORT_SYMBOL vmlinux 0x10f0d69b rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x10ff7fe7 netlink_broadcast_filtered +EXPORT_SYMBOL vmlinux 0x11019ee9 serio_close +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x11267875 scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0x1129987c agp_bridge +EXPORT_SYMBOL vmlinux 0x114a4168 scsi_scan_host +EXPORT_SYMBOL vmlinux 0x114f8b92 ip_setsockopt +EXPORT_SYMBOL vmlinux 0x1163f0a7 blk_max_low_pfn +EXPORT_SYMBOL vmlinux 0x11690b35 __bread +EXPORT_SYMBOL vmlinux 0x1169a8c6 pci_platform_rom +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x1178c4a3 jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0x117c2c97 napi_gro_receive +EXPORT_SYMBOL vmlinux 0x1182d83a cpuidle_disable +EXPORT_SYMBOL vmlinux 0x1188ced2 sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0x119f9822 padata_stop +EXPORT_SYMBOL vmlinux 0x11c9185c of_iomap +EXPORT_SYMBOL vmlinux 0x11dcf2cc unlock_rename +EXPORT_SYMBOL vmlinux 0x11e09ac1 neigh_seq_next +EXPORT_SYMBOL vmlinux 0x11f7ed4c hex_to_bin +EXPORT_SYMBOL vmlinux 0x120a1c86 ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x120d67d4 unregister_memory_isolate_notifier +EXPORT_SYMBOL vmlinux 0x1212de7f tcf_hash_create +EXPORT_SYMBOL vmlinux 0x121f2404 sk_free +EXPORT_SYMBOL vmlinux 0x122043a8 of_find_node_with_property +EXPORT_SYMBOL vmlinux 0x124753e1 tty_port_tty_set +EXPORT_SYMBOL vmlinux 0x1270c0f7 eth_type_trans +EXPORT_SYMBOL vmlinux 0x127481ac ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0x12a38747 usleep_range +EXPORT_SYMBOL vmlinux 0x12bdeb93 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0x12d052e7 of_find_device_by_node +EXPORT_SYMBOL vmlinux 0x12d432a0 devm_gpio_request +EXPORT_SYMBOL vmlinux 0x12dfeb12 vprintk_emit +EXPORT_SYMBOL vmlinux 0x12e5ef0c rtas_set_power_level +EXPORT_SYMBOL vmlinux 0x12f64433 __devcgroup_inode_permission +EXPORT_SYMBOL vmlinux 0x130a6069 bioset_integrity_free +EXPORT_SYMBOL vmlinux 0x131909fd put_disk +EXPORT_SYMBOL vmlinux 0x131999d7 agp_find_bridge +EXPORT_SYMBOL vmlinux 0x13307fde vsscanf +EXPORT_SYMBOL vmlinux 0x13364ae2 bio_split +EXPORT_SYMBOL vmlinux 0x1347a18b jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0x1348760d ipmi_request_settime +EXPORT_SYMBOL vmlinux 0x13582141 mmc_get_card +EXPORT_SYMBOL vmlinux 0x136f5e89 vfs_symlink +EXPORT_SYMBOL vmlinux 0x13741373 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0x13834814 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x13950c99 udp_ioctl +EXPORT_SYMBOL vmlinux 0x13aca9c3 sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x13affbda percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x13bc4408 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13e38f5c up_read +EXPORT_SYMBOL vmlinux 0x13f53da6 CMO_PageSize +EXPORT_SYMBOL vmlinux 0x1405f44e pci_domain_nr +EXPORT_SYMBOL vmlinux 0x1418c5ba __frontswap_test +EXPORT_SYMBOL vmlinux 0x14894f36 d_instantiate_unique +EXPORT_SYMBOL vmlinux 0x148a3df1 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0x14a14817 pSeries_enable_reloc_on_exc +EXPORT_SYMBOL vmlinux 0x14aa63dc tty_hung_up_p +EXPORT_SYMBOL vmlinux 0x14becc2f ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x14e0d343 cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0x14f1b992 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0x151ccbaf ps2_begin_command +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x1551dc51 bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x15669967 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0x15d114f6 make_bad_inode +EXPORT_SYMBOL vmlinux 0x15d3fd60 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x15edfece block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x15f571ec blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0x160bd45c rtas_token +EXPORT_SYMBOL vmlinux 0x167c5967 print_hex_dump +EXPORT_SYMBOL vmlinux 0x169af355 xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0x16a2a1ba from_kgid_munged +EXPORT_SYMBOL vmlinux 0x16a9eeae nobh_truncate_page +EXPORT_SYMBOL vmlinux 0x16c05c97 sk_alloc +EXPORT_SYMBOL vmlinux 0x16c49f43 pci_enable_obff +EXPORT_SYMBOL vmlinux 0x16dcec76 ipmi_set_my_address +EXPORT_SYMBOL vmlinux 0x16f1b07f skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0x16f6d00a __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x16fdd637 proc_remove +EXPORT_SYMBOL vmlinux 0x1712765b dev_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x172cf9b4 jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0x1743414f __debugger_fault_handler +EXPORT_SYMBOL vmlinux 0x17629661 skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0x17648396 dev_base_lock +EXPORT_SYMBOL vmlinux 0x17b0f7a1 d_set_d_op +EXPORT_SYMBOL vmlinux 0x17b1125d gen_kill_estimator +EXPORT_SYMBOL vmlinux 0x17b1c2b8 scsi_print_sense +EXPORT_SYMBOL vmlinux 0x17d6f2fc netpoll_print_options +EXPORT_SYMBOL vmlinux 0x17e28473 fsl_upm_run_pattern +EXPORT_SYMBOL vmlinux 0x17e50945 write_inode_now +EXPORT_SYMBOL vmlinux 0x17e7e0bf console_stop +EXPORT_SYMBOL vmlinux 0x17eb20ec udp_del_offload +EXPORT_SYMBOL vmlinux 0x17f23659 __sock_create +EXPORT_SYMBOL vmlinux 0x17f341a0 i8042_lock_chip +EXPORT_SYMBOL vmlinux 0x17f725f3 sock_setsockopt +EXPORT_SYMBOL vmlinux 0x17fd479c scsi_host_get +EXPORT_SYMBOL vmlinux 0x17fea8e8 skb_store_bits +EXPORT_SYMBOL vmlinux 0x180e0e2f blk_end_request +EXPORT_SYMBOL vmlinux 0x18319582 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0x183fa88b mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0x1841f9e5 vfs_statfs +EXPORT_SYMBOL vmlinux 0x1847197d phy_driver_unregister +EXPORT_SYMBOL vmlinux 0x184b82fb mmc_vddrange_to_ocrmask +EXPORT_SYMBOL vmlinux 0x184e6c85 radix_tree_gang_lookup_slot +EXPORT_SYMBOL vmlinux 0x184ec34a clear_inode +EXPORT_SYMBOL vmlinux 0x1857aa39 proc_dointvec +EXPORT_SYMBOL vmlinux 0x1863ae93 key_revoke +EXPORT_SYMBOL vmlinux 0x188a3dfb timespec_trunc +EXPORT_SYMBOL vmlinux 0x1895c14c phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0x189868d7 get_random_bytes_arch +EXPORT_SYMBOL vmlinux 0x189c7545 __dquot_transfer +EXPORT_SYMBOL vmlinux 0x18d39bfe devm_gpiod_get_index +EXPORT_SYMBOL vmlinux 0x18d657a0 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0x19111a40 lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x19303567 dev_uc_add +EXPORT_SYMBOL vmlinux 0x19444627 memcpy_fromiovecend +EXPORT_SYMBOL vmlinux 0x1949bd63 tcp_release_cb +EXPORT_SYMBOL vmlinux 0x195114a5 ide_geometry_proc_fops +EXPORT_SYMBOL vmlinux 0x195fe725 d_delete +EXPORT_SYMBOL vmlinux 0x196f8b14 blk_mq_insert_request +EXPORT_SYMBOL vmlinux 0x199e7494 locks_free_lock +EXPORT_SYMBOL vmlinux 0x199ec4fb arch_spin_unlock_wait +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x19b7e304 netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19f8b1fd netif_rx +EXPORT_SYMBOL vmlinux 0x1a10c898 ipmi_set_maintenance_mode +EXPORT_SYMBOL vmlinux 0x1a222409 key_payload_reserve +EXPORT_SYMBOL vmlinux 0x1a28a7ac dst_discard +EXPORT_SYMBOL vmlinux 0x1a2f84a1 pci_dev_put +EXPORT_SYMBOL vmlinux 0x1a4b68fc tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0x1a51c487 bd_set_size +EXPORT_SYMBOL vmlinux 0x1a8198fa scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0x1a9520bb keyring_clear +EXPORT_SYMBOL vmlinux 0x1aba5db8 ipmi_unregister_smi +EXPORT_SYMBOL vmlinux 0x1ac5d3cb strcspn +EXPORT_SYMBOL vmlinux 0x1acb5d40 dscr_default +EXPORT_SYMBOL vmlinux 0x1ace138d bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0x1ae4c961 dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0x1ae6f703 scsi_setup_fs_cmnd +EXPORT_SYMBOL vmlinux 0x1af3b150 bio_reset +EXPORT_SYMBOL vmlinux 0x1af62a99 panic_notifier_list +EXPORT_SYMBOL vmlinux 0x1afc13e9 inet_getname +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b132009 rename_lock +EXPORT_SYMBOL vmlinux 0x1b176d3b do_splice_from +EXPORT_SYMBOL vmlinux 0x1b1e1088 sg_nents +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b68d51d skb_copy_bits +EXPORT_SYMBOL vmlinux 0x1b7be06a build_skb +EXPORT_SYMBOL vmlinux 0x1b82fefa md_unplug +EXPORT_SYMBOL vmlinux 0x1b8b95ad i8042_unlock_chip +EXPORT_SYMBOL vmlinux 0x1b9e0ff1 scsilun_to_int +EXPORT_SYMBOL vmlinux 0x1bb13bfd block_read_full_page +EXPORT_SYMBOL vmlinux 0x1bc381fb cleancache_register_ops +EXPORT_SYMBOL vmlinux 0x1bc4ff03 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0x1bdc26cf sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0x1be0f955 genphy_update_link +EXPORT_SYMBOL vmlinux 0x1bf118c2 sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0x1bfec830 __iounmap_at +EXPORT_SYMBOL vmlinux 0x1c07716d abx500_startup_irq_enabled +EXPORT_SYMBOL vmlinux 0x1c260925 alloc_buffer_head +EXPORT_SYMBOL vmlinux 0x1c286018 scsi_host_lookup +EXPORT_SYMBOL vmlinux 0x1c2f6cdd dev_get_by_index +EXPORT_SYMBOL vmlinux 0x1c3e02e4 memcmp +EXPORT_SYMBOL vmlinux 0x1c47642b netif_carrier_off +EXPORT_SYMBOL vmlinux 0x1c4f7fc7 inet_frag_find +EXPORT_SYMBOL vmlinux 0x1c985023 phy_stop +EXPORT_SYMBOL vmlinux 0x1cab2519 compat_nf_setsockopt +EXPORT_SYMBOL vmlinux 0x1cbc8952 inet_frag_kill +EXPORT_SYMBOL vmlinux 0x1cc0d1ec fb_get_mode +EXPORT_SYMBOL vmlinux 0x1cccaf7b end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0x1cd71f78 fifo_set_limit +EXPORT_SYMBOL vmlinux 0x1ce9181c alloc_mdio_bitbang +EXPORT_SYMBOL vmlinux 0x1d0913c9 skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0x1d2cf927 mmc_erase +EXPORT_SYMBOL vmlinux 0x1d371d46 gen10g_read_status +EXPORT_SYMBOL vmlinux 0x1d5d56b0 simple_transaction_release +EXPORT_SYMBOL vmlinux 0x1d5de419 proc_set_size +EXPORT_SYMBOL vmlinux 0x1d683dad qdisc_list_del +EXPORT_SYMBOL vmlinux 0x1d6dc671 sk_common_release +EXPORT_SYMBOL vmlinux 0x1d83c742 __inode_permission +EXPORT_SYMBOL vmlinux 0x1d87d6af netlink_broadcast +EXPORT_SYMBOL vmlinux 0x1da55ab4 __sk_dst_check +EXPORT_SYMBOL vmlinux 0x1daee28a percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0x1dbc4d0c proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x1dc36131 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1df593ae mnt_unpin +EXPORT_SYMBOL vmlinux 0x1e06d5cc mmc_set_blockcount +EXPORT_SYMBOL vmlinux 0x1e118d95 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x1e26be3b get_anon_bdev +EXPORT_SYMBOL vmlinux 0x1e3ea563 nobh_write_begin +EXPORT_SYMBOL vmlinux 0x1e5bf6df vio_find_node +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e71f953 security_inode_readlink +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ead8ea0 splice_from_pipe_begin +EXPORT_SYMBOL vmlinux 0x1ebaa669 remove_proc_entry +EXPORT_SYMBOL vmlinux 0x1ec3bed9 hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0x1eca5968 dev_addr_add +EXPORT_SYMBOL vmlinux 0x1ece84b2 agp_generic_free_gatt_table +EXPORT_SYMBOL vmlinux 0x1ef61242 neigh_table_init +EXPORT_SYMBOL vmlinux 0x1f195a92 security_path_rename +EXPORT_SYMBOL vmlinux 0x1f5869c6 alloc_fddidev +EXPORT_SYMBOL vmlinux 0x1f5a0039 generic_file_splice_read +EXPORT_SYMBOL vmlinux 0x1f5fa57e dentry_unhash +EXPORT_SYMBOL vmlinux 0x1f6c1fa1 pcim_iomap_table +EXPORT_SYMBOL vmlinux 0x1f6ce67a sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x1f87b663 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0x1f920928 tty_hangup +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fbdefa0 seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x1fc5109b invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fe912f1 netdev_alloc_frag +EXPORT_SYMBOL vmlinux 0x1fe9f800 unregister_cpu_notifier +EXPORT_SYMBOL vmlinux 0x1fedf0f4 __request_region +EXPORT_SYMBOL vmlinux 0x1ff49bb8 compat_ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x1ff80243 vfs_writev +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x20328ca3 __frontswap_store +EXPORT_SYMBOL vmlinux 0x2036063f __pci_enable_wake +EXPORT_SYMBOL vmlinux 0x204597fc __skb_dst_set_noref +EXPORT_SYMBOL vmlinux 0x204916dc seq_open +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x206791a0 filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x2072ee9b request_threaded_irq +EXPORT_SYMBOL vmlinux 0x208dd96d get_disk +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20a86b3f of_get_pci_address +EXPORT_SYMBOL vmlinux 0x20b2bb2d param_array_ops +EXPORT_SYMBOL vmlinux 0x20bd44eb fb_class +EXPORT_SYMBOL vmlinux 0x20c55ae0 sscanf +EXPORT_SYMBOL vmlinux 0x20d71c48 inode_reclaim_rsv_space +EXPORT_SYMBOL vmlinux 0x20eadeb6 ip_compute_csum +EXPORT_SYMBOL vmlinux 0x20f120e2 simple_link +EXPORT_SYMBOL vmlinux 0x20fe3533 icmp_send +EXPORT_SYMBOL vmlinux 0x211c19b6 security_path_unlink +EXPORT_SYMBOL vmlinux 0x2141c5e4 ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0x21585dad pci_assign_resource +EXPORT_SYMBOL vmlinux 0x215ebd78 bitrev16 +EXPORT_SYMBOL vmlinux 0x21739065 netdev_change_features +EXPORT_SYMBOL vmlinux 0x217c9c6d xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0x21ad721b cdrom_release +EXPORT_SYMBOL vmlinux 0x21f8e903 tty_unlock +EXPORT_SYMBOL vmlinux 0x2206dd7b balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0x220e251f rtmsg_ifinfo +EXPORT_SYMBOL vmlinux 0x22131f36 serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x221a3076 fb_show_logo +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x22466d13 pci_read_vpd +EXPORT_SYMBOL vmlinux 0x226d6773 tcp_make_synack +EXPORT_SYMBOL vmlinux 0x2276db98 kstrtoint +EXPORT_SYMBOL vmlinux 0x227badd6 mod_timer_pinned +EXPORT_SYMBOL vmlinux 0x22abb905 netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22b56c6e register_quota_format +EXPORT_SYMBOL vmlinux 0x22c59f00 __blk_end_request_all +EXPORT_SYMBOL vmlinux 0x22e66410 skb_checksum_help +EXPORT_SYMBOL vmlinux 0x22fc0a45 gen10g_resume +EXPORT_SYMBOL vmlinux 0x231d4001 fb_edid_add_monspecs +EXPORT_SYMBOL vmlinux 0x233917d1 mac_vmode_to_var +EXPORT_SYMBOL vmlinux 0x235e90f3 __wake_up_bit +EXPORT_SYMBOL vmlinux 0x2399cb32 neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0x23a574fd security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c8f257 slhc_uncompress +EXPORT_SYMBOL vmlinux 0x23c9891c kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0x23d596de tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x23eb7a59 tc_classify +EXPORT_SYMBOL vmlinux 0x23f2243d mempool_free +EXPORT_SYMBOL vmlinux 0x23f3fac9 neigh_update +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x2406a478 security_inode_permission +EXPORT_SYMBOL vmlinux 0x241589c0 compat_tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x24212d86 __frontswap_invalidate_page +EXPORT_SYMBOL vmlinux 0x24428be5 strncpy_from_user +EXPORT_SYMBOL vmlinux 0x24478823 kernel_write +EXPORT_SYMBOL vmlinux 0x24485102 get_gendisk +EXPORT_SYMBOL vmlinux 0x244cb63d dev_uc_sync +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x245a5a94 sleep_on_timeout +EXPORT_SYMBOL vmlinux 0x2482e688 vsprintf +EXPORT_SYMBOL vmlinux 0x2484adc3 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0x24853b8d save_mount_options +EXPORT_SYMBOL vmlinux 0x24e2714b default_file_splice_read +EXPORT_SYMBOL vmlinux 0x24ec0e41 register_qdisc +EXPORT_SYMBOL vmlinux 0x24f9d8e7 skb_copy_datagram_iovec +EXPORT_SYMBOL vmlinux 0x24fdac79 wake_bit_function +EXPORT_SYMBOL vmlinux 0x2500bcdd put_page +EXPORT_SYMBOL vmlinux 0x2522ed03 d_find_alias +EXPORT_SYMBOL vmlinux 0x253052e9 generic_file_llseek +EXPORT_SYMBOL vmlinux 0x25323b6c blk_put_request +EXPORT_SYMBOL vmlinux 0x25369ec5 pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0x2549784c wireless_send_event +EXPORT_SYMBOL vmlinux 0x255526b9 tcp_gro_receive +EXPORT_SYMBOL vmlinux 0x25655e44 do_truncate +EXPORT_SYMBOL vmlinux 0x257ab9d2 touch_buffer +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x25844700 dmam_free_noncoherent +EXPORT_SYMBOL vmlinux 0x258d20aa dev_add_offload +EXPORT_SYMBOL vmlinux 0x25c677c4 mac_pton +EXPORT_SYMBOL vmlinux 0x25d4bf22 simple_setattr +EXPORT_SYMBOL vmlinux 0x25e25c71 truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0x25ef5c96 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0x260cf8f8 of_get_property +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x26477c07 __vmalloc +EXPORT_SYMBOL vmlinux 0x2650d835 sysctl_ip_early_demux +EXPORT_SYMBOL vmlinux 0x2665d53a key_create_or_update +EXPORT_SYMBOL vmlinux 0x2685c3d7 __sg_alloc_table +EXPORT_SYMBOL vmlinux 0x26a70708 mount_subtree +EXPORT_SYMBOL vmlinux 0x26b3fb93 xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0x26c829f9 netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0x26e298e0 unregister_memory_notifier +EXPORT_SYMBOL vmlinux 0x26e76fb8 sysctl_udp_wmem_min +EXPORT_SYMBOL vmlinux 0x26f0453a blk_set_default_limits +EXPORT_SYMBOL vmlinux 0x26ffb398 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0x2712f4f5 crc32_le_combine +EXPORT_SYMBOL vmlinux 0x2726a3f1 agp_create_memory +EXPORT_SYMBOL vmlinux 0x2733c900 dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0x2735e6fa softnet_data +EXPORT_SYMBOL vmlinux 0x274d08dc __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0x2760acda ptp_clock_register +EXPORT_SYMBOL vmlinux 0x27646df3 start_thread +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x27a339b6 i2c_del_adapter +EXPORT_SYMBOL vmlinux 0x27ba9b89 dst_alloc +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27bda1ff cpu_rmap_update +EXPORT_SYMBOL vmlinux 0x27e1a049 printk +EXPORT_SYMBOL vmlinux 0x27e326ca iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0x27e65245 _dev_info +EXPORT_SYMBOL vmlinux 0x27f15ec9 from_kuid_munged +EXPORT_SYMBOL vmlinux 0x27f2313e idr_replace +EXPORT_SYMBOL vmlinux 0x27f6b3eb tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0x28124e6f make_kgid +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x282eb1e6 xfrm_unregister_mode +EXPORT_SYMBOL vmlinux 0x28318305 snprintf +EXPORT_SYMBOL vmlinux 0x287ba090 km_report +EXPORT_SYMBOL vmlinux 0x288df6da netdev_update_features +EXPORT_SYMBOL vmlinux 0x28a2ed02 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x28abfe6e scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x28bdf214 security_path_symlink +EXPORT_SYMBOL vmlinux 0x28c0dcdd blk_stop_queue +EXPORT_SYMBOL vmlinux 0x28c4a152 d_drop +EXPORT_SYMBOL vmlinux 0x28d09426 pps_unregister_source +EXPORT_SYMBOL vmlinux 0x28d8cead pci_iomap +EXPORT_SYMBOL vmlinux 0x29312898 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0x2951b1ca __remove_inode_hash +EXPORT_SYMBOL vmlinux 0x29537c9e alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0x2960019b eeh_check_failure +EXPORT_SYMBOL vmlinux 0x2967c0bf devm_free_irq +EXPORT_SYMBOL vmlinux 0x29866f10 sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x299103d8 textsearch_prepare +EXPORT_SYMBOL vmlinux 0x29a21a2d jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0x29a75aa6 pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0x29c02e1b mmc_alloc_host +EXPORT_SYMBOL vmlinux 0x29d1f13c secpath_dup +EXPORT_SYMBOL vmlinux 0x29d85262 nobh_writepage +EXPORT_SYMBOL vmlinux 0x29dd785b blk_fetch_request +EXPORT_SYMBOL vmlinux 0x29edd8c3 rtas_online_cpus_mask +EXPORT_SYMBOL vmlinux 0x29efa3d8 tty_port_close +EXPORT_SYMBOL vmlinux 0x29f43a89 bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x29fb6a35 devm_request_and_ioremap +EXPORT_SYMBOL vmlinux 0x29fd0608 lro_receive_frags +EXPORT_SYMBOL vmlinux 0x2a10c354 alloc_anon_inode +EXPORT_SYMBOL vmlinux 0x2a15f6e7 ide_raw_taskfile +EXPORT_SYMBOL vmlinux 0x2a1a3d3e pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x2a1aa9ba mfd_cell_enable +EXPORT_SYMBOL vmlinux 0x2a1b94b2 __break_lease +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a370a7a tty_check_change +EXPORT_SYMBOL vmlinux 0x2a37d074 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2a382990 dev_set_drvdata +EXPORT_SYMBOL vmlinux 0x2a5b5daf tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x2ac9d3b7 compat_nf_getsockopt +EXPORT_SYMBOL vmlinux 0x2acb1870 ether_setup +EXPORT_SYMBOL vmlinux 0x2acf0feb vfs_fstat +EXPORT_SYMBOL vmlinux 0x2ad65271 scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0x2ae4a3b5 netlink_kernel_release +EXPORT_SYMBOL vmlinux 0x2afd6208 vfs_getattr +EXPORT_SYMBOL vmlinux 0x2b0ba2b0 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x2b104df9 unregister_md_personality +EXPORT_SYMBOL vmlinux 0x2b1dc34d nf_log_register +EXPORT_SYMBOL vmlinux 0x2b1df56e sg_miter_stop +EXPORT_SYMBOL vmlinux 0x2b1e1398 sock_release +EXPORT_SYMBOL vmlinux 0x2b2ce78b kstrtos8 +EXPORT_SYMBOL vmlinux 0x2b302974 dev_uc_unsync +EXPORT_SYMBOL vmlinux 0x2b32ef5d d_instantiate_no_diralias +EXPORT_SYMBOL vmlinux 0x2b4991ec xmon +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2ba707a8 sysctl_tcp_low_latency +EXPORT_SYMBOL vmlinux 0x2bb89fe1 dm_kobject_release +EXPORT_SYMBOL vmlinux 0x2bd793bf dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0x2bf45c2c mmc_free_host +EXPORT_SYMBOL vmlinux 0x2bffefcb dev_uc_flush +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c2cfb86 inode_change_ok +EXPORT_SYMBOL vmlinux 0x2c31d5f8 __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x2c32f33f set_bdi_congested +EXPORT_SYMBOL vmlinux 0x2c7b1fca down_timeout +EXPORT_SYMBOL vmlinux 0x2c7da87b sock_rfree +EXPORT_SYMBOL vmlinux 0x2c900d91 cpufreq_put_global_kobject +EXPORT_SYMBOL vmlinux 0x2c94468e phy_device_free +EXPORT_SYMBOL vmlinux 0x2ca6e313 redraw_screen +EXPORT_SYMBOL vmlinux 0x2ca98508 block_commit_write +EXPORT_SYMBOL vmlinux 0x2caf282d __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0x2cb793ea sock_create +EXPORT_SYMBOL vmlinux 0x2cbcbf80 skb_make_writable +EXPORT_SYMBOL vmlinux 0x2cc4e4a8 proc_set_user +EXPORT_SYMBOL vmlinux 0x2cf73cb7 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0x2d03c10d posix_acl_create +EXPORT_SYMBOL vmlinux 0x2d067b96 elv_abort_queue +EXPORT_SYMBOL vmlinux 0x2d0855b0 __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d2e9b91 mmc_request_done +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d434561 kobject_del +EXPORT_SYMBOL vmlinux 0x2d4618d6 bio_integrity_tag_size +EXPORT_SYMBOL vmlinux 0x2d5fd002 elv_add_request +EXPORT_SYMBOL vmlinux 0x2d6c8e15 search_binary_handler +EXPORT_SYMBOL vmlinux 0x2d756295 pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0x2d7de569 pci_reenable_device +EXPORT_SYMBOL vmlinux 0x2d833e77 tcf_hash_check +EXPORT_SYMBOL vmlinux 0x2d855461 tcp_gso_segment +EXPORT_SYMBOL vmlinux 0x2d89342a scsi_show_sense_hdr +EXPORT_SYMBOL vmlinux 0x2d8fa215 sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0x2da157f8 inet_put_port +EXPORT_SYMBOL vmlinux 0x2daaaba9 param_get_byte +EXPORT_SYMBOL vmlinux 0x2dac2e30 set_blocksize +EXPORT_SYMBOL vmlinux 0x2db1e0c6 dql_init +EXPORT_SYMBOL vmlinux 0x2dc2b920 blk_put_queue +EXPORT_SYMBOL vmlinux 0x2de08cc1 scsi_cmd_blk_ioctl +EXPORT_SYMBOL vmlinux 0x2deda4a1 security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x2e0d2f7f queue_work_on +EXPORT_SYMBOL vmlinux 0x2e12a93b ibmebus_request_irq +EXPORT_SYMBOL vmlinux 0x2e1bef92 eeh_subsystem_enabled +EXPORT_SYMBOL vmlinux 0x2e2b40d2 strncat +EXPORT_SYMBOL vmlinux 0x2e2ce9e0 sysctl_tcp_syncookies +EXPORT_SYMBOL vmlinux 0x2e569d10 dqget +EXPORT_SYMBOL vmlinux 0x2e9096aa bio_alloc_pages +EXPORT_SYMBOL vmlinux 0x2eb14b30 phys_mem_access_prot +EXPORT_SYMBOL vmlinux 0x2ec53569 elv_dispatch_add_tail +EXPORT_SYMBOL vmlinux 0x2ed3007c vfs_unlink +EXPORT_SYMBOL vmlinux 0x2eeceb42 sk_chk_filter +EXPORT_SYMBOL vmlinux 0x2ef2465f devm_gpiod_get +EXPORT_SYMBOL vmlinux 0x2ef63ad6 scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f064b55 allocate_resource +EXPORT_SYMBOL vmlinux 0x2f151248 dev_mc_unsync +EXPORT_SYMBOL vmlinux 0x2f1730f1 phy_driver_register +EXPORT_SYMBOL vmlinux 0x2f1c0743 ppp_input_error +EXPORT_SYMBOL vmlinux 0x2f1cb64e security_path_link +EXPORT_SYMBOL vmlinux 0x2f287f0d copy_to_user +EXPORT_SYMBOL vmlinux 0x2f6f08ba register_filesystem +EXPORT_SYMBOL vmlinux 0x2f73cd01 eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0x2f948c0b scsi_device_set_state +EXPORT_SYMBOL vmlinux 0x2f977dd1 i8042_install_filter +EXPORT_SYMBOL vmlinux 0x2f99fa11 ide_dump_status +EXPORT_SYMBOL vmlinux 0x2fa5c3f0 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0x2fae96de rtas_data_buf_lock +EXPORT_SYMBOL vmlinux 0x2fb6de5d add_device_randomness +EXPORT_SYMBOL vmlinux 0x2fd7b610 dev_crit +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x30226ddf agp_device_command +EXPORT_SYMBOL vmlinux 0x303fe3b8 __skb_gso_segment +EXPORT_SYMBOL vmlinux 0x306440d7 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0x306c9ec2 scsi_scan_target +EXPORT_SYMBOL vmlinux 0x306f0385 audit_log_task_info +EXPORT_SYMBOL vmlinux 0x306fe687 simple_transaction_read +EXPORT_SYMBOL vmlinux 0x307ae67f netlink_unicast +EXPORT_SYMBOL vmlinux 0x307c2fd0 generic_check_addressable +EXPORT_SYMBOL vmlinux 0x30a54abb jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30b8b35c cpu_to_chip_id +EXPORT_SYMBOL vmlinux 0x30cada8f radix_tree_next_hole +EXPORT_SYMBOL vmlinux 0x30ce708d sk_dst_check +EXPORT_SYMBOL vmlinux 0x30d84a50 xfrm4_prepare_output +EXPORT_SYMBOL vmlinux 0x30da8c60 ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x30ec76d5 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0x30eeb47c blk_integrity_merge_rq +EXPORT_SYMBOL vmlinux 0x3102d70b frontswap_curr_pages +EXPORT_SYMBOL vmlinux 0x311dd76c flex_array_alloc +EXPORT_SYMBOL vmlinux 0x3125214d devfreq_interval_update +EXPORT_SYMBOL vmlinux 0x3145216f pci_dev_present +EXPORT_SYMBOL vmlinux 0x3147857d default_red +EXPORT_SYMBOL vmlinux 0x315c65fd zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x318cadb1 reciprocal_value +EXPORT_SYMBOL vmlinux 0x319e0726 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0x31a09026 of_mm_gpiochip_add +EXPORT_SYMBOL vmlinux 0x31c53f27 __bforget +EXPORT_SYMBOL vmlinux 0x31cd995b store_fp_state +EXPORT_SYMBOL vmlinux 0x31d61e9a cur_cpu_spec +EXPORT_SYMBOL vmlinux 0x31dc2dbf bio_flush_dcache_pages +EXPORT_SYMBOL vmlinux 0x320136a3 blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x321732da do_splice_to +EXPORT_SYMBOL vmlinux 0x322f48d4 abx500_dump_all_banks +EXPORT_SYMBOL vmlinux 0x32441eba inet_add_protocol +EXPORT_SYMBOL vmlinux 0x327bf883 of_can_translate_address +EXPORT_SYMBOL vmlinux 0x3284c88d tcf_hash_lookup +EXPORT_SYMBOL vmlinux 0x32bec348 genphy_config_aneg +EXPORT_SYMBOL vmlinux 0x32fa09ab of_platform_device_create +EXPORT_SYMBOL vmlinux 0x32fd19db pci_release_regions +EXPORT_SYMBOL vmlinux 0x330f0ec8 elv_unregister_queue +EXPORT_SYMBOL vmlinux 0x33112c93 blk_queue_init_tags +EXPORT_SYMBOL vmlinux 0x332f3ce1 remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x333cb37c __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0x3359420c pci_scan_bus_parented +EXPORT_SYMBOL vmlinux 0x3362fd7c replace_mount_options +EXPORT_SYMBOL vmlinux 0x33a6010b tcf_exts_dump +EXPORT_SYMBOL vmlinux 0x33b84f74 copy_page +EXPORT_SYMBOL vmlinux 0x33b925dd dquot_quota_sync +EXPORT_SYMBOL vmlinux 0x33ba5cd4 param_ops_bool +EXPORT_SYMBOL vmlinux 0x33c7435c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x33fcf44a __kfifo_out_r +EXPORT_SYMBOL vmlinux 0x33fd7262 neigh_destroy +EXPORT_SYMBOL vmlinux 0x33fd870f follow_up +EXPORT_SYMBOL vmlinux 0x340a9238 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0x34124223 netdev_emerg +EXPORT_SYMBOL vmlinux 0x34184afe current_kernel_time +EXPORT_SYMBOL vmlinux 0x343fe5f9 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0x34522bd3 dm_get_device +EXPORT_SYMBOL vmlinux 0x346c4ded rwsem_down_write_failed +EXPORT_SYMBOL vmlinux 0x347013de nla_validate +EXPORT_SYMBOL vmlinux 0x347d3ab7 md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0x347eb9bd param_set_bool +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34c691e2 registered_fb +EXPORT_SYMBOL vmlinux 0x34cd3304 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0x34d0657a of_dev_put +EXPORT_SYMBOL vmlinux 0x34d487b9 inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x3539f11b match_strlcpy +EXPORT_SYMBOL vmlinux 0x354a8e29 init_special_inode +EXPORT_SYMBOL vmlinux 0x354f2e52 blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x3578d8f1 gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0x357f962e sock_no_getsockopt +EXPORT_SYMBOL vmlinux 0x35800bb4 fb_set_var +EXPORT_SYMBOL vmlinux 0x35c32767 xor_altivec_2 +EXPORT_SYMBOL vmlinux 0x35defc50 iov_iter_advance +EXPORT_SYMBOL vmlinux 0x3603bc2b user_revoke +EXPORT_SYMBOL vmlinux 0x3610b4d2 __pagevec_release +EXPORT_SYMBOL vmlinux 0x364aac6a nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x364c6959 __wait_on_buffer +EXPORT_SYMBOL vmlinux 0x3650ba09 scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0x3671742b module_layout +EXPORT_SYMBOL vmlinux 0x3674e256 nf_log_unset +EXPORT_SYMBOL vmlinux 0x368382e2 of_get_named_gpiod_flags +EXPORT_SYMBOL vmlinux 0x3686ea09 spi_print_msg +EXPORT_SYMBOL vmlinux 0x369e1115 kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0x36a081ca netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x36afb6a6 of_create_pci_dev +EXPORT_SYMBOL vmlinux 0x36b0e732 try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x36bd681b groups_alloc +EXPORT_SYMBOL vmlinux 0x36c735ad kset_unregister +EXPORT_SYMBOL vmlinux 0x36d150fc mmc_gpio_request_cd +EXPORT_SYMBOL vmlinux 0x36d2d4b2 nf_register_hooks +EXPORT_SYMBOL vmlinux 0x36d65403 kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0x36d7b11a of_find_matching_node_and_match +EXPORT_SYMBOL vmlinux 0x36db802a pci_disable_obff +EXPORT_SYMBOL vmlinux 0x36e066af input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0x36e360e3 __hw_addr_add_multiple +EXPORT_SYMBOL vmlinux 0x36e609a1 load_nls +EXPORT_SYMBOL vmlinux 0x370ae877 drop_super +EXPORT_SYMBOL vmlinux 0x3712288d bio_integrity_clone +EXPORT_SYMBOL vmlinux 0x371d2130 check_legacy_ioport +EXPORT_SYMBOL vmlinux 0x37344510 proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x37383edd rtas_get_power_level +EXPORT_SYMBOL vmlinux 0x373efbe4 mmc_remove_host +EXPORT_SYMBOL vmlinux 0x374494a6 mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x3748ad74 blk_make_request +EXPORT_SYMBOL vmlinux 0x3753f62b find_get_pages_contig +EXPORT_SYMBOL vmlinux 0x37b30616 skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37cd213d set_page_dirty +EXPORT_SYMBOL vmlinux 0x37e03922 get_agp_version +EXPORT_SYMBOL vmlinux 0x37e373c1 udplite_prot +EXPORT_SYMBOL vmlinux 0x380c044e dmam_alloc_coherent +EXPORT_SYMBOL vmlinux 0x380c6f5b fddi_type_trans +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x383c577f tcf_hash_release +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x3889e596 dquot_operations +EXPORT_SYMBOL vmlinux 0x388f9128 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a7a0cc jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38b1ae2f __scsi_add_device +EXPORT_SYMBOL vmlinux 0x38c1fcd0 mb_cache_entry_alloc +EXPORT_SYMBOL vmlinux 0x38daecfa kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0x38fb9933 tty_std_termios +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x394ee8e2 bio_add_page +EXPORT_SYMBOL vmlinux 0x3955fcf6 __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x3960fba4 max8998_bulk_read +EXPORT_SYMBOL vmlinux 0x396446ea posix_unblock_lock +EXPORT_SYMBOL vmlinux 0x3964965b jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0x399ad043 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0x39c2b6a6 sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x39cbc542 netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0x39cdf63c wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x39d6eeda udp_seq_open +EXPORT_SYMBOL vmlinux 0x39dac007 pcibus_to_node +EXPORT_SYMBOL vmlinux 0x39dd2af9 mpage_readpage +EXPORT_SYMBOL vmlinux 0x39e7a082 sk_wait_data +EXPORT_SYMBOL vmlinux 0x39ee41e1 scsi_mode_sense +EXPORT_SYMBOL vmlinux 0x3a17022e cdev_init +EXPORT_SYMBOL vmlinux 0x3a20ff73 __crc32c_le +EXPORT_SYMBOL vmlinux 0x3a3b5af4 __locks_copy_lock +EXPORT_SYMBOL vmlinux 0x3a5c3351 seq_write +EXPORT_SYMBOL vmlinux 0x3a6ec74a arch_free_page +EXPORT_SYMBOL vmlinux 0x3a753cf2 vfs_mkdir +EXPORT_SYMBOL vmlinux 0x3a7c21a4 ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0x3a9513b8 sock_update_memcg +EXPORT_SYMBOL vmlinux 0x3a9b6fb9 blk_unregister_region +EXPORT_SYMBOL vmlinux 0x3a9d3634 inet_confirm_addr +EXPORT_SYMBOL vmlinux 0x3ab6339a generic_removexattr +EXPORT_SYMBOL vmlinux 0x3ade21ca blk_queue_find_tag +EXPORT_SYMBOL vmlinux 0x3afe2d93 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x3b0243b4 poll_schedule_timeout +EXPORT_SYMBOL vmlinux 0x3b1456f5 generic_file_buffered_write +EXPORT_SYMBOL vmlinux 0x3b1be5d0 dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x3b44ae1c disk_stack_limits +EXPORT_SYMBOL vmlinux 0x3b615a21 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x3b6afe3e pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0x3b7f61b8 iterate_supers_type +EXPORT_SYMBOL vmlinux 0x3ba85837 md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0x3bbdbc1c mmc_can_reset +EXPORT_SYMBOL vmlinux 0x3bd1a433 release_firmware +EXPORT_SYMBOL vmlinux 0x3bd1b1f6 msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x3bd985a7 dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x3bef03b9 flow_cache_lookup +EXPORT_SYMBOL vmlinux 0x3c189de9 mmc_gpio_request_ro +EXPORT_SYMBOL vmlinux 0x3c369dad dma_find_channel +EXPORT_SYMBOL vmlinux 0x3c4aa885 padata_do_parallel +EXPORT_SYMBOL vmlinux 0x3c57d554 alloc_fcdev +EXPORT_SYMBOL vmlinux 0x3c731b48 cdrom_ioctl +EXPORT_SYMBOL vmlinux 0x3c80c06c kstrtoull +EXPORT_SYMBOL vmlinux 0x3c9d1211 string_get_size +EXPORT_SYMBOL vmlinux 0x3cb81bd7 decrementer_clockevent +EXPORT_SYMBOL vmlinux 0x3cc4b0dc lg_lock_init +EXPORT_SYMBOL vmlinux 0x3cdb34fe sync_inodes_sb +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3ce7fe4e filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0x3cec467c of_gpio_simple_xlate +EXPORT_SYMBOL vmlinux 0x3cf3242d inet_frags_init_net +EXPORT_SYMBOL vmlinux 0x3cf3bbfc skb_append_datato_frags +EXPORT_SYMBOL vmlinux 0x3d103e9f rtnl_create_link +EXPORT_SYMBOL vmlinux 0x3d1c3e4f vio_h_cop_sync +EXPORT_SYMBOL vmlinux 0x3d20f10d sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x3d25eb3d blk_integrity_is_initialized +EXPORT_SYMBOL vmlinux 0x3d335276 sg_alloc_table_from_pages +EXPORT_SYMBOL vmlinux 0x3d41904f of_get_next_child +EXPORT_SYMBOL vmlinux 0x3d514508 seq_release_private +EXPORT_SYMBOL vmlinux 0x3d5844b3 strnicmp +EXPORT_SYMBOL vmlinux 0x3d66b3e4 elv_rb_add +EXPORT_SYMBOL vmlinux 0x3d7cf693 compat_sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x3d8b0afc set_groups +EXPORT_SYMBOL vmlinux 0x3d8ef32b mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0x3d91fd9e __register_chrdev +EXPORT_SYMBOL vmlinux 0x3db72e05 seq_bitmap +EXPORT_SYMBOL vmlinux 0x3dc94886 sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3de8bd1c devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e10bb57 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0x3e244212 locks_remove_posix +EXPORT_SYMBOL vmlinux 0x3e272863 ps2_drain +EXPORT_SYMBOL vmlinux 0x3e2b6db9 mmc_release_host +EXPORT_SYMBOL vmlinux 0x3e6d4d5f ide_stall_queue +EXPORT_SYMBOL vmlinux 0x3e882943 pcibios_align_resource +EXPORT_SYMBOL vmlinux 0x3e9110fa __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0x3ec9240c __first_cpu +EXPORT_SYMBOL vmlinux 0x3ed63055 zlib_inflateReset +EXPORT_SYMBOL vmlinux 0x3ee07065 dev_set_mac_address +EXPORT_SYMBOL vmlinux 0x3f0070ce xfrm_init_replay +EXPORT_SYMBOL vmlinux 0x3f02d41e end_page_writeback +EXPORT_SYMBOL vmlinux 0x3f0546a8 ioread32_rep +EXPORT_SYMBOL vmlinux 0x3f236362 pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0x3f238f82 __sb_end_write +EXPORT_SYMBOL vmlinux 0x3f3a02a2 km_policy_notify +EXPORT_SYMBOL vmlinux 0x3f406a3b enable_kernel_altivec +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f581267 tcp_hashinfo +EXPORT_SYMBOL vmlinux 0x3f7a8d7c input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0x3f84bace scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0x3f88e694 nf_unregister_hook +EXPORT_SYMBOL vmlinux 0x3f9008d7 freeze_super +EXPORT_SYMBOL vmlinux 0x3f995b3d ipv6_select_ident +EXPORT_SYMBOL vmlinux 0x3fc31520 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x3fc5907c pci_dev_get +EXPORT_SYMBOL vmlinux 0x3fd55724 of_n_size_cells +EXPORT_SYMBOL vmlinux 0x3fd6803c __insert_inode_hash +EXPORT_SYMBOL vmlinux 0x3fe2ccbe memweight +EXPORT_SYMBOL vmlinux 0x3fec048f sg_next +EXPORT_SYMBOL vmlinux 0x3fee8066 agp_generic_insert_memory +EXPORT_SYMBOL vmlinux 0x3fee8244 scsi_allocate_command +EXPORT_SYMBOL vmlinux 0x3ff62317 local_bh_disable +EXPORT_SYMBOL vmlinux 0x3ff8069b tcf_hash_insert +EXPORT_SYMBOL vmlinux 0x3ff8e495 lg_local_unlock_cpu +EXPORT_SYMBOL vmlinux 0x401537e3 scsi_host_set_state +EXPORT_SYMBOL vmlinux 0x40279594 max8925_set_bits +EXPORT_SYMBOL vmlinux 0x402b8281 __request_module +EXPORT_SYMBOL vmlinux 0x40344727 d_validate +EXPORT_SYMBOL vmlinux 0x4035a5d3 __nla_put +EXPORT_SYMBOL vmlinux 0x403ab2b4 dev_addr_init +EXPORT_SYMBOL vmlinux 0x404066c5 idr_for_each +EXPORT_SYMBOL vmlinux 0x405c1144 get_seconds +EXPORT_SYMBOL vmlinux 0x4096bf3b from_kgid +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x40994720 pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0x40a27c37 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40bd9913 backlight_force_update +EXPORT_SYMBOL vmlinux 0x40c01859 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0x40c056cb pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40cb00ce security_old_inode_init_security +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40e21d1b sk_run_filter +EXPORT_SYMBOL vmlinux 0x40e8d6ab inode_set_bytes +EXPORT_SYMBOL vmlinux 0x40f2b10c ipmi_alloc_smi_msg +EXPORT_SYMBOL vmlinux 0x40f8b230 __generic_block_fiemap +EXPORT_SYMBOL vmlinux 0x40f9112c devfreq_add_governor +EXPORT_SYMBOL vmlinux 0x4101a4c9 __dev_remove_offload +EXPORT_SYMBOL vmlinux 0x4101a975 ide_fixstring +EXPORT_SYMBOL vmlinux 0x4135d9ee blk_init_allocated_queue +EXPORT_SYMBOL vmlinux 0x4143d1ef pcie_set_readrq +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x415689b4 dm_put_device +EXPORT_SYMBOL vmlinux 0x4159c38f ioremap_wc +EXPORT_SYMBOL vmlinux 0x41626687 mmc_align_data_size +EXPORT_SYMBOL vmlinux 0x416afdea dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0x416f25b6 cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x4197afd5 deactivate_super +EXPORT_SYMBOL vmlinux 0x41b6eacc tty_pair_get_pty +EXPORT_SYMBOL vmlinux 0x4211c3c1 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x423496ab tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0x423b776a ipmi_create_user +EXPORT_SYMBOL vmlinux 0x42609a2f neigh_resolve_output +EXPORT_SYMBOL vmlinux 0x42621e11 blk_rq_init +EXPORT_SYMBOL vmlinux 0x426bfba0 page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x4295bc4b sock_wfree +EXPORT_SYMBOL vmlinux 0x42977ad4 __hw_addr_del_multiple +EXPORT_SYMBOL vmlinux 0x42981bcb tcp_rcv_established +EXPORT_SYMBOL vmlinux 0x42a1b208 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x42bac97a bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x42c7d4be textsearch_unregister +EXPORT_SYMBOL vmlinux 0x42d1ce0c xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0x42dc8bef dma_iommu_ops +EXPORT_SYMBOL vmlinux 0x42f6290d filemap_fdatawait +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x4306bf02 proc_mkdir +EXPORT_SYMBOL vmlinux 0x430a5655 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x4325b75e cancel_dirty_page +EXPORT_SYMBOL vmlinux 0x43263b3e xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x43632d7d of_find_property +EXPORT_SYMBOL vmlinux 0x436c2179 iowrite32 +EXPORT_SYMBOL vmlinux 0x437df1a1 dev_driver_string +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x43a01f90 complete_all +EXPORT_SYMBOL vmlinux 0x43a20312 __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0x43add3f5 tty_mutex +EXPORT_SYMBOL vmlinux 0x43d5355c bitmap_end_sync +EXPORT_SYMBOL vmlinux 0x43ea9668 tcp_close +EXPORT_SYMBOL vmlinux 0x43f23311 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x43fcd8ab skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0x4411c503 prandom_seed +EXPORT_SYMBOL vmlinux 0x442a8601 set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0x44455b90 tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x444c98c2 __blk_end_request_cur +EXPORT_SYMBOL vmlinux 0x448cba08 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0x448eac3e kmemdup +EXPORT_SYMBOL vmlinux 0x44ad140b update_region +EXPORT_SYMBOL vmlinux 0x44d68087 poll_initwait +EXPORT_SYMBOL vmlinux 0x44d972a6 pci_set_ltr +EXPORT_SYMBOL vmlinux 0x44e0b72e ps2_sendbyte +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44eb192e wait_for_completion +EXPORT_SYMBOL vmlinux 0x44ebd068 bprm_change_interp +EXPORT_SYMBOL vmlinux 0x44f5e8b5 of_allnodes +EXPORT_SYMBOL vmlinux 0x451e315f vfs_open +EXPORT_SYMBOL vmlinux 0x452c9759 unregister_quota_format +EXPORT_SYMBOL vmlinux 0x452d3206 devm_ioremap_nocache +EXPORT_SYMBOL vmlinux 0x452d6055 input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x458d82c1 abx500_set_register_interruptible +EXPORT_SYMBOL vmlinux 0x458e98e8 inet6_bind +EXPORT_SYMBOL vmlinux 0x45a55ec8 __iounmap +EXPORT_SYMBOL vmlinux 0x45a6be13 cpufreq_sysfs_remove_file +EXPORT_SYMBOL vmlinux 0x45a765cf pci_add_resource +EXPORT_SYMBOL vmlinux 0x45a795b3 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0x45af22de datagram_poll +EXPORT_SYMBOL vmlinux 0x45c7d86c tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0x45c97bf3 agp_generic_mask_memory +EXPORT_SYMBOL vmlinux 0x45f36538 input_set_abs_params +EXPORT_SYMBOL vmlinux 0x4612c59d down_trylock +EXPORT_SYMBOL vmlinux 0x461ac773 kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x461ebfa0 __copy_tofrom_user +EXPORT_SYMBOL vmlinux 0x463ca3e0 tcf_unregister_action +EXPORT_SYMBOL vmlinux 0x46524e36 noop_qdisc +EXPORT_SYMBOL vmlinux 0x465cab34 secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0x465d79e4 scsi_remove_target +EXPORT_SYMBOL vmlinux 0x466026d8 devfreq_resume_device +EXPORT_SYMBOL vmlinux 0x46608fa0 getnstimeofday +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x46a14777 find_lock_page +EXPORT_SYMBOL vmlinux 0x46b3dd68 inet_sendmsg +EXPORT_SYMBOL vmlinux 0x46d12956 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0x46ed2612 blk_run_queue +EXPORT_SYMBOL vmlinux 0x46fc67fd crypto_sha256_update +EXPORT_SYMBOL vmlinux 0x46feb099 dm_read_arg +EXPORT_SYMBOL vmlinux 0x47025084 xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0x47416e14 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x47608ce4 __mutex_init +EXPORT_SYMBOL vmlinux 0x47611eb8 tty_pair_get_tty +EXPORT_SYMBOL vmlinux 0x47939e0d __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x4793fa3d blk_queue_softirq_done +EXPORT_SYMBOL vmlinux 0x479c3c86 find_next_zero_bit +EXPORT_SYMBOL vmlinux 0x47b3f862 radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x47b7a212 wait_on_page_bit +EXPORT_SYMBOL vmlinux 0x47bcf84c param_set_ulong +EXPORT_SYMBOL vmlinux 0x47c8baf4 param_ops_uint +EXPORT_SYMBOL vmlinux 0x48034724 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x4808dbdb tty_write_room +EXPORT_SYMBOL vmlinux 0x48106fa5 tcp_init_xmit_timers +EXPORT_SYMBOL vmlinux 0x48243f9c __generic_file_aio_write +EXPORT_SYMBOL vmlinux 0x4829a47e memcpy +EXPORT_SYMBOL vmlinux 0x482a2a49 param_set_charp +EXPORT_SYMBOL vmlinux 0x482f0a83 uart_get_divisor +EXPORT_SYMBOL vmlinux 0x482f755d inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0x483100ce scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x48352342 abx500_event_registers_startup_state_get +EXPORT_SYMBOL vmlinux 0x48404b9a remove_wait_queue +EXPORT_SYMBOL vmlinux 0x4841bdee strnchr +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x4868d6c9 security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0x489f34a9 udp_prot +EXPORT_SYMBOL vmlinux 0x48c6db53 of_get_child_by_name +EXPORT_SYMBOL vmlinux 0x48c97252 inetdev_by_index +EXPORT_SYMBOL vmlinux 0x48e33c5b generic_pipe_buf_confirm +EXPORT_SYMBOL vmlinux 0x48fabfbf gen_new_estimator +EXPORT_SYMBOL vmlinux 0x48ff9eca pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x49029aaa eth_header_parse +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x490c634e invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0x49128bd8 dquot_enable +EXPORT_SYMBOL vmlinux 0x492dac0c bio_get_nr_vecs +EXPORT_SYMBOL vmlinux 0x493081ad vm_insert_pfn +EXPORT_SYMBOL vmlinux 0x4935c46e netdev_notify_peers +EXPORT_SYMBOL vmlinux 0x495c96f8 posix_acl_init +EXPORT_SYMBOL vmlinux 0x49603fb8 security_sb_copy_data +EXPORT_SYMBOL vmlinux 0x496a5d6c scsi_finish_command +EXPORT_SYMBOL vmlinux 0x496d8005 nf_nat_decode_session_hook +EXPORT_SYMBOL vmlinux 0x49926c07 kmem_cache_create +EXPORT_SYMBOL vmlinux 0x499bfc6d __per_cpu_offset +EXPORT_SYMBOL vmlinux 0x499cf1ac agp_generic_create_gatt_table +EXPORT_SYMBOL vmlinux 0x49b07aec tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x49fa34ba devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0x4a2877ab loop_backing_file +EXPORT_SYMBOL vmlinux 0x4a358252 __bitmap_subset +EXPORT_SYMBOL vmlinux 0x4a4c2e38 xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0x4a4f48dc scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0x4a7fb09e phy_get_eee_err +EXPORT_SYMBOL vmlinux 0x4a9261e0 generic_writepages +EXPORT_SYMBOL vmlinux 0x4a9b296f mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0x4a9f3793 of_phy_attach +EXPORT_SYMBOL vmlinux 0x4aad42d3 __alloc_skb +EXPORT_SYMBOL vmlinux 0x4aadc080 netdev_alert +EXPORT_SYMBOL vmlinux 0x4acd93d3 release_resource +EXPORT_SYMBOL vmlinux 0x4aec7225 sock_create_lite +EXPORT_SYMBOL vmlinux 0x4afe9a77 scsi_partsize +EXPORT_SYMBOL vmlinux 0x4b085dbf agp3_generic_configure +EXPORT_SYMBOL vmlinux 0x4b298b4c validate_sp +EXPORT_SYMBOL vmlinux 0x4b2bf4b3 ll_rw_block +EXPORT_SYMBOL vmlinux 0x4b31ec6a __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0x4b390957 mmc_can_trim +EXPORT_SYMBOL vmlinux 0x4b5fd49e dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0x4b7ed27b sleep_on +EXPORT_SYMBOL vmlinux 0x4b952949 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x4bb97ecc request_key_async +EXPORT_SYMBOL vmlinux 0x4bcec29b kill_bdev +EXPORT_SYMBOL vmlinux 0x4bed99b3 __percpu_counter_add +EXPORT_SYMBOL vmlinux 0x4c072454 add_to_page_cache_locked +EXPORT_SYMBOL vmlinux 0x4c11435a _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0x4c1182cb bitmap_scnprintf +EXPORT_SYMBOL vmlinux 0x4c1c017c __mmc_claim_host +EXPORT_SYMBOL vmlinux 0x4c3637c5 jbd2_journal_start +EXPORT_SYMBOL vmlinux 0x4c39f0e8 alloc_file +EXPORT_SYMBOL vmlinux 0x4c4b305a netlink_ack +EXPORT_SYMBOL vmlinux 0x4c4b8676 free_netdev +EXPORT_SYMBOL vmlinux 0x4c611020 jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x4c6b8838 pcie_get_minimum_link +EXPORT_SYMBOL vmlinux 0x4c6d01a9 zero_fill_bio +EXPORT_SYMBOL vmlinux 0x4c7c3565 vfs_link +EXPORT_SYMBOL vmlinux 0x4c971bec ipmi_smi_msg_received +EXPORT_SYMBOL vmlinux 0x4ca9669f scnprintf +EXPORT_SYMBOL vmlinux 0x4cae8fde input_set_capability +EXPORT_SYMBOL vmlinux 0x4cb0e988 gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0x4cbbd171 __bitmap_weight +EXPORT_SYMBOL vmlinux 0x4cdb3178 ns_to_timeval +EXPORT_SYMBOL vmlinux 0x4cdf371e simple_transaction_get +EXPORT_SYMBOL vmlinux 0x4ce4ab49 mmc_can_discard +EXPORT_SYMBOL vmlinux 0x4d0e89cf inode_init_owner +EXPORT_SYMBOL vmlinux 0x4d13d902 fsnotify_add_mark +EXPORT_SYMBOL vmlinux 0x4d57441e clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0x4d8e43c5 scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x4d902d3f scm_detach_fds +EXPORT_SYMBOL vmlinux 0x4d974b9c register_sysrq_key +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4d9c0cfc phy_connect +EXPORT_SYMBOL vmlinux 0x4da7c931 rwsem_downgrade_wake +EXPORT_SYMBOL vmlinux 0x4dbde158 dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x4dcb5a44 ptp_clock_unregister +EXPORT_SYMBOL vmlinux 0x4dd08850 mpage_writepage +EXPORT_SYMBOL vmlinux 0x4de34a07 cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x4df119fa __bitmap_parse +EXPORT_SYMBOL vmlinux 0x4df76982 phy_find_first +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e472e1d truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e728a6c xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0x4e786d13 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x4e9c22fa send_sig_info +EXPORT_SYMBOL vmlinux 0x4e9c9b80 fib_default_rule_pref +EXPORT_SYMBOL vmlinux 0x4e9dffb5 ip_fast_csum +EXPORT_SYMBOL vmlinux 0x4ea976f0 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0x4eb221f0 jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0x4eba8caf unmap_mapping_range +EXPORT_SYMBOL vmlinux 0x4eca563b __destroy_inode +EXPORT_SYMBOL vmlinux 0x4edd72f7 block_all_signals +EXPORT_SYMBOL vmlinux 0x4ee6a96d simple_write_end +EXPORT_SYMBOL vmlinux 0x4f02ad1c ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f248523 of_find_node_by_name +EXPORT_SYMBOL vmlinux 0x4f27926f kmem_cache_alloc_trace +EXPORT_SYMBOL vmlinux 0x4f391d0e nla_parse +EXPORT_SYMBOL vmlinux 0x4f3d246f input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x4f41b3e3 blkdev_issue_write_same +EXPORT_SYMBOL vmlinux 0x4f476e96 init_cdrom_command +EXPORT_SYMBOL vmlinux 0x4f4aaf17 loop_register_transfer +EXPORT_SYMBOL vmlinux 0x4f650788 devm_ioport_map +EXPORT_SYMBOL vmlinux 0x4f68e5c9 do_gettimeofday +EXPORT_SYMBOL vmlinux 0x4f791803 fs_bio_set +EXPORT_SYMBOL vmlinux 0x4f8c9585 phy_detach +EXPORT_SYMBOL vmlinux 0x4f93a2b2 scsi_cmd_ioctl +EXPORT_SYMBOL vmlinux 0x4f9a5c46 pcim_pin_device +EXPORT_SYMBOL vmlinux 0x4fc8bbb3 vc_resize +EXPORT_SYMBOL vmlinux 0x4fd4462c rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x4fdee897 i8042_command +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x501dd3bf dump_emit +EXPORT_SYMBOL vmlinux 0x503310eb force_sig +EXPORT_SYMBOL vmlinux 0x503a6fcd unload_nls +EXPORT_SYMBOL vmlinux 0x509e2feb jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0x50a6a7d3 __lru_cache_add +EXPORT_SYMBOL vmlinux 0x50a90e8d bsearch +EXPORT_SYMBOL vmlinux 0x50ae7d80 __idr_pre_get +EXPORT_SYMBOL vmlinux 0x50c78f7f block_write_full_page_endio +EXPORT_SYMBOL vmlinux 0x50d2592d hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0x50e9cee2 ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0x50ea1407 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0x50ee04d0 rtnl_configure_link +EXPORT_SYMBOL vmlinux 0x50fb0b03 __devm_request_region +EXPORT_SYMBOL vmlinux 0x51121d7e xfrm_register_type +EXPORT_SYMBOL vmlinux 0x5118c382 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0x5119b364 pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0x51350076 pci_release_region +EXPORT_SYMBOL vmlinux 0x5141bd1d __splice_from_pipe +EXPORT_SYMBOL vmlinux 0x5163431c netdev_state_change +EXPORT_SYMBOL vmlinux 0x51774d5d set_user_nice +EXPORT_SYMBOL vmlinux 0x517ddb62 mntget +EXPORT_SYMBOL vmlinux 0x519b0da3 finish_wait +EXPORT_SYMBOL vmlinux 0x51b9bcf3 led_blink_set +EXPORT_SYMBOL vmlinux 0x51c770a7 pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0x51dce73b xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x51dcf4b0 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0x52026cdf security_sb_parse_opts_str +EXPORT_SYMBOL vmlinux 0x52058bd1 kernel_sock_ioctl +EXPORT_SYMBOL vmlinux 0x52068b2b arp_xmit +EXPORT_SYMBOL vmlinux 0x52167d21 free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x521b36b5 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0x523c9386 key_invalidate +EXPORT_SYMBOL vmlinux 0x52428cc8 parent_mem_cgroup +EXPORT_SYMBOL vmlinux 0x5245f6a4 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x524f6f51 ipmi_get_my_address +EXPORT_SYMBOL vmlinux 0x526695d2 seq_pad +EXPORT_SYMBOL vmlinux 0x52687282 lock_may_read +EXPORT_SYMBOL vmlinux 0x52748477 blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x5289b437 __next_cpu_nr +EXPORT_SYMBOL vmlinux 0x528d65ae ip_fragment +EXPORT_SYMBOL vmlinux 0x5294749a tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0x52a2876b inet_del_offload +EXPORT_SYMBOL vmlinux 0x52a4c3bc spi_schedule_dv_device +EXPORT_SYMBOL vmlinux 0x52bf2cf5 compat_sock_get_timestamp +EXPORT_SYMBOL vmlinux 0x52f6fe4d tty_port_open +EXPORT_SYMBOL vmlinux 0x52f785a6 blk_free_tags +EXPORT_SYMBOL vmlinux 0x5307edd1 neigh_event_ns +EXPORT_SYMBOL vmlinux 0x530a6cd8 bio_map_user +EXPORT_SYMBOL vmlinux 0x530b1e98 pm_suspend +EXPORT_SYMBOL vmlinux 0x5322bea7 dev_mc_flush +EXPORT_SYMBOL vmlinux 0x53326531 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x5348d8b1 skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x536cc847 memcg_kmem_enabled_key +EXPORT_SYMBOL vmlinux 0x5377e556 hex2bin +EXPORT_SYMBOL vmlinux 0x53c70e5c abx500_register_ops +EXPORT_SYMBOL vmlinux 0x53ebab1b _outsl_ns +EXPORT_SYMBOL vmlinux 0x53f01061 i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0x53f01b6b queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0x53f70eaf md_unregister_thread +EXPORT_SYMBOL vmlinux 0x5409775b free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0x540e265e skb_kill_datagram +EXPORT_SYMBOL vmlinux 0x5412c7c7 up +EXPORT_SYMBOL vmlinux 0x541c99db pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x5420bd6d i2c_del_driver +EXPORT_SYMBOL vmlinux 0x5420de21 dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0x5420ff70 dmam_free_coherent +EXPORT_SYMBOL vmlinux 0x54245b39 kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0x543afefd mmc_can_erase +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x54467580 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x545d9d78 vc_cons +EXPORT_SYMBOL vmlinux 0x547a71f1 kfree_skb_list +EXPORT_SYMBOL vmlinux 0x54824b13 cpufreq_global_kobject +EXPORT_SYMBOL vmlinux 0x548256a6 init_buffer +EXPORT_SYMBOL vmlinux 0x54a9db5f _kstrtoul +EXPORT_SYMBOL vmlinux 0x54aa54b3 alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x54c365c6 sock_kmalloc +EXPORT_SYMBOL vmlinux 0x54e3cc3b param_get_int +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x550ba36e bdi_destroy +EXPORT_SYMBOL vmlinux 0x550dea69 blk_register_region +EXPORT_SYMBOL vmlinux 0x551a5b33 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x5528d259 cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x5529de59 fib_default_rule_add +EXPORT_SYMBOL vmlinux 0x55361f88 seq_escape +EXPORT_SYMBOL vmlinux 0x5541ea93 on_each_cpu +EXPORT_SYMBOL vmlinux 0x55471bf9 input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0x5549253a tcf_hash_destroy +EXPORT_SYMBOL vmlinux 0x555e4afe tcp_connect +EXPORT_SYMBOL vmlinux 0x55612581 ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x5567479e tcp_read_sock +EXPORT_SYMBOL vmlinux 0x5567c227 kernel_cpustat +EXPORT_SYMBOL vmlinux 0x5568c553 complete +EXPORT_SYMBOL vmlinux 0x556c2740 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x556f4f7a ip6_frag_match +EXPORT_SYMBOL vmlinux 0x5577ef9e udp_table +EXPORT_SYMBOL vmlinux 0x5589f3e7 kernel_bind +EXPORT_SYMBOL vmlinux 0x5593031b qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0x5594be03 bitmap_remap +EXPORT_SYMBOL vmlinux 0x55a180d8 ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0x55ccd4d2 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0x55d2c531 pci_save_state +EXPORT_SYMBOL vmlinux 0x55e48ba3 uart_update_timeout +EXPORT_SYMBOL vmlinux 0x55f5019b __kmalloc_node +EXPORT_SYMBOL vmlinux 0x56012c0d pci_enable_ido +EXPORT_SYMBOL vmlinux 0x5605a7df bio_integrity_enabled +EXPORT_SYMBOL vmlinux 0x5614b010 xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x56247303 input_free_device +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x5642793a radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x564a5fb3 vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0x567f860d free_buffer_head +EXPORT_SYMBOL vmlinux 0x56814840 nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x56b72b6e __cleancache_init_fs +EXPORT_SYMBOL vmlinux 0x56c2b95b rtas_progress +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56d26420 inet_frags_fini +EXPORT_SYMBOL vmlinux 0x56fabce4 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0x5704f069 kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x5706c0a4 __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x5706ccad skb_dequeue +EXPORT_SYMBOL vmlinux 0x571baf9a mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x57206a8f elevator_change +EXPORT_SYMBOL vmlinux 0x572647d6 get_mce_fault_addr +EXPORT_SYMBOL vmlinux 0x572e85d4 blk_lookup_devt +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x57674fd7 __sw_hweight16 +EXPORT_SYMBOL vmlinux 0x576c0d5e dquot_scan_active +EXPORT_SYMBOL vmlinux 0x578b1d9b max8998_update_reg +EXPORT_SYMBOL vmlinux 0x5792f848 strlcpy +EXPORT_SYMBOL vmlinux 0x5796439c xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0x57a4951c km_state_expired +EXPORT_SYMBOL vmlinux 0x57a99de9 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0x57c2e4b2 md_check_recovery +EXPORT_SYMBOL vmlinux 0x57c31431 mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0x57c5799f napi_gro_flush +EXPORT_SYMBOL vmlinux 0x57d2adc2 vfs_readlink +EXPORT_SYMBOL vmlinux 0x57dbb3f4 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0x5809c7f5 vm_event_states +EXPORT_SYMBOL vmlinux 0x580e9bcb netdev_all_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x581bcf2d dev_mc_del +EXPORT_SYMBOL vmlinux 0x583694a9 ps2_handle_response +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x5847f295 filp_open +EXPORT_SYMBOL vmlinux 0x5857b225 ioread16_rep +EXPORT_SYMBOL vmlinux 0x585a0bba neigh_for_each +EXPORT_SYMBOL vmlinux 0x586b1005 sock_alloc_send_skb +EXPORT_SYMBOL vmlinux 0x587616f1 vfs_fstatat +EXPORT_SYMBOL vmlinux 0x588bc237 directly_mappable_cdev_bdi +EXPORT_SYMBOL vmlinux 0x58916307 paca +EXPORT_SYMBOL vmlinux 0x58a80286 bio_integrity_advance +EXPORT_SYMBOL vmlinux 0x58bb5b17 __memcg_kmem_get_cache +EXPORT_SYMBOL vmlinux 0x58cb02ab agp_generic_free_by_type +EXPORT_SYMBOL vmlinux 0x58d1070a of_get_address +EXPORT_SYMBOL vmlinux 0x58ebe877 inet_bind +EXPORT_SYMBOL vmlinux 0x58fbf9e1 jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0x58ff8b60 simple_dentry_operations +EXPORT_SYMBOL vmlinux 0x590e0480 module_refcount +EXPORT_SYMBOL vmlinux 0x592994ad max8925_bulk_write +EXPORT_SYMBOL vmlinux 0x5929fb62 tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0x593c7f0d fbcon_rotate_cw +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x5953731f spi_attach_transport +EXPORT_SYMBOL vmlinux 0x595d0946 empty_zero_page +EXPORT_SYMBOL vmlinux 0x5961ff2a truncate_pagecache +EXPORT_SYMBOL vmlinux 0x5967c929 __tracepoint_kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x597b0771 cfb_copyarea +EXPORT_SYMBOL vmlinux 0x59b3378a completion_done +EXPORT_SYMBOL vmlinux 0x59b507d0 sk_receive_skb +EXPORT_SYMBOL vmlinux 0x59c3cab5 sock_sendmsg +EXPORT_SYMBOL vmlinux 0x59f9910a frontswap_register_ops +EXPORT_SYMBOL vmlinux 0x59fcd574 phy_device_create +EXPORT_SYMBOL vmlinux 0x5a010a9d ide_wait_stat +EXPORT_SYMBOL vmlinux 0x5a025f7b arch_local_irq_restore +EXPORT_SYMBOL vmlinux 0x5a0aaa12 proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x5a13b667 __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x5a5536c2 param_ops_invbool +EXPORT_SYMBOL vmlinux 0x5a6e9096 dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x5a722193 __genl_register_family +EXPORT_SYMBOL vmlinux 0x5a921311 strncmp +EXPORT_SYMBOL vmlinux 0x5a96acec phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0x5a9e1f7f bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0x5a9f1d63 memmove +EXPORT_SYMBOL vmlinux 0x5abb6d8b gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0x5ac70c75 inet6_add_protocol +EXPORT_SYMBOL vmlinux 0x5ad7f25e security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x5ae50279 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x5b0a5aef freeze_bdev +EXPORT_SYMBOL vmlinux 0x5b130926 eth_header_cache_update +EXPORT_SYMBOL vmlinux 0x5b38ce39 simple_open +EXPORT_SYMBOL vmlinux 0x5b3dad5b ppp_input +EXPORT_SYMBOL vmlinux 0x5b43f1f1 rtas_service_present +EXPORT_SYMBOL vmlinux 0x5b46e0fa ipmi_get_smi_info +EXPORT_SYMBOL vmlinux 0x5b56860c vm_munmap +EXPORT_SYMBOL vmlinux 0x5b607746 of_phy_find_device +EXPORT_SYMBOL vmlinux 0x5b89ea02 __register_binfmt +EXPORT_SYMBOL vmlinux 0x5b9828c5 dma_spin_lock +EXPORT_SYMBOL vmlinux 0x5ba431ff devm_gpiod_put +EXPORT_SYMBOL vmlinux 0x5bbfa1ec request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0x5bc10524 printk_emit +EXPORT_SYMBOL vmlinux 0x5bf0e014 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0x5bf63794 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x5c0add93 __seq_open_private +EXPORT_SYMBOL vmlinux 0x5c2def4c flex_array_free_parts +EXPORT_SYMBOL vmlinux 0x5c33f5b8 compat_mc_setsockopt +EXPORT_SYMBOL vmlinux 0x5c37f319 _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0x5c48a12d xfrm4_rcv +EXPORT_SYMBOL vmlinux 0x5c4d7c88 mutex_lock_killable +EXPORT_SYMBOL vmlinux 0x5c62800a I_BDEV +EXPORT_SYMBOL vmlinux 0x5c62ea81 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0x5c7bd825 get_write_access +EXPORT_SYMBOL vmlinux 0x5c9980ff dcb_getapp +EXPORT_SYMBOL vmlinux 0x5cd96ca3 mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x5cf30e10 __debugger_ipi +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5d17b441 __blk_run_queue +EXPORT_SYMBOL vmlinux 0x5d26fd3a d_splice_alias +EXPORT_SYMBOL vmlinux 0x5d2c3e27 kernel_recvmsg +EXPORT_SYMBOL vmlinux 0x5d36cf91 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x5d41c87c param_ops_charp +EXPORT_SYMBOL vmlinux 0x5d550c4d scsi_sd_probe_domain +EXPORT_SYMBOL vmlinux 0x5d5b5a16 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x5d6db087 dquot_initialize +EXPORT_SYMBOL vmlinux 0x5d78fe3e xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0x5d7be1d4 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0x5d8fdad4 mount_pseudo +EXPORT_SYMBOL vmlinux 0x5da65246 neigh_direct_output +EXPORT_SYMBOL vmlinux 0x5da8d88f dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0x5dc1de0b ab3100_event_register +EXPORT_SYMBOL vmlinux 0x5e1f2e59 vm_map_ram +EXPORT_SYMBOL vmlinux 0x5e29b61f vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0x5e3a8a9c __wake_up +EXPORT_SYMBOL vmlinux 0x5e3b21e5 scsi_setup_blk_pc_cmnd +EXPORT_SYMBOL vmlinux 0x5e529b19 __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x5e80f37c ipmi_unregister_for_cmd +EXPORT_SYMBOL vmlinux 0x5e94c093 scsi_register_driver +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5eb24829 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x5ebf8410 unregister_exec_domain +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ef407ce cfb_fillrect +EXPORT_SYMBOL vmlinux 0x5f005368 kstrtou8 +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f0a5500 __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0x5f10861d giveup_altivec +EXPORT_SYMBOL vmlinux 0x5f1e1fe1 nlmsg_notify +EXPORT_SYMBOL vmlinux 0x5f28c2dc idr_remove +EXPORT_SYMBOL vmlinux 0x5f2a7f0c udp_sendmsg +EXPORT_SYMBOL vmlinux 0x5f3c8f5c mmc_assume_removable +EXPORT_SYMBOL vmlinux 0x5f3daa0d mmc_can_sanitize +EXPORT_SYMBOL vmlinux 0x5f5c2cfa pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0x5f60356a dev_addr_flush +EXPORT_SYMBOL vmlinux 0x5f8a2728 isa_io_base +EXPORT_SYMBOL vmlinux 0x5f90bbf1 i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0x5fcdcc05 ipmi_get_my_LUN +EXPORT_SYMBOL vmlinux 0x5fd70d47 dquot_resume +EXPORT_SYMBOL vmlinux 0x5fda0227 vfs_stat +EXPORT_SYMBOL vmlinux 0x5fe8d59b inet_listen +EXPORT_SYMBOL vmlinux 0x5ff87885 sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x60074f0b skb_find_text +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x60255d58 input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0x602a1845 vio_unregister_device +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x606d0b09 secure_tcpv6_sequence_number +EXPORT_SYMBOL vmlinux 0x6076f224 tcp_proc_register +EXPORT_SYMBOL vmlinux 0x6086fae9 rwsem_wake +EXPORT_SYMBOL vmlinux 0x6088d5b6 read_cache_page_async +EXPORT_SYMBOL vmlinux 0x609a1f5a ndo_dflt_bridge_getlink +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60be0665 generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0x60c7ac2c uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x60df1e3b posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x60e5ec52 inode_needs_sync +EXPORT_SYMBOL vmlinux 0x61105a4c mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x611ddef9 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0x612390ad netpoll_set_trap +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x612f3392 skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x6149cb65 sget +EXPORT_SYMBOL vmlinux 0x61538ad0 param_get_charp +EXPORT_SYMBOL vmlinux 0x616f4bf5 scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x618538c0 of_find_i2c_adapter_by_node +EXPORT_SYMBOL vmlinux 0x619cb7dd simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x619fd15f mount_bdev +EXPORT_SYMBOL vmlinux 0x61b6defb serio_rescan +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61c243fc mod_timer_pending +EXPORT_SYMBOL vmlinux 0x61c67b02 devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0x61c8d864 seq_putc +EXPORT_SYMBOL vmlinux 0x61eef2c9 _insb +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x6220e009 mmc_of_parse +EXPORT_SYMBOL vmlinux 0x6225637e md5_transform +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x622e0abe pipe_lock +EXPORT_SYMBOL vmlinux 0x624307fe insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0x6251549a jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0x625ad73f arp_tbl +EXPORT_SYMBOL vmlinux 0x62608526 tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x62827bec security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x628e8235 __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0x629f9bc1 scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x62bd0a7b __ip_select_ident +EXPORT_SYMBOL vmlinux 0x62cac79e check_submounts_and_drop +EXPORT_SYMBOL vmlinux 0x62e777c6 generic_readlink +EXPORT_SYMBOL vmlinux 0x62f9f347 ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x63127400 neigh_parms_release +EXPORT_SYMBOL vmlinux 0x6313e3df of_phy_connect +EXPORT_SYMBOL vmlinux 0x63231951 gen_pool_create +EXPORT_SYMBOL vmlinux 0x63396aec __debugger_break_match +EXPORT_SYMBOL vmlinux 0x636a3673 revert_creds +EXPORT_SYMBOL vmlinux 0x639825a2 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x639aaa99 create_empty_buffers +EXPORT_SYMBOL vmlinux 0x63cedf31 __put_cred +EXPORT_SYMBOL vmlinux 0x63e7bd12 __cputime_usec_factor +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63ed80cd dma_async_device_register +EXPORT_SYMBOL vmlinux 0x63fc232f strlen_user +EXPORT_SYMBOL vmlinux 0x6403e338 tcp_memory_pressure +EXPORT_SYMBOL vmlinux 0x6457bbdb pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0x64999478 congestion_wait +EXPORT_SYMBOL vmlinux 0x649e6eaf dev_trans_start +EXPORT_SYMBOL vmlinux 0x64a6d429 scsi_dma_map +EXPORT_SYMBOL vmlinux 0x64bbc288 string_unescape +EXPORT_SYMBOL vmlinux 0x64c8701c dquot_acquire +EXPORT_SYMBOL vmlinux 0x64fc3228 nf_getsockopt +EXPORT_SYMBOL vmlinux 0x650fe8ef vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x6516c1eb netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x652ce9aa nla_memcmp +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x65523992 tty_port_destroy +EXPORT_SYMBOL vmlinux 0x657ba06d ip6_frag_init +EXPORT_SYMBOL vmlinux 0x658aeac4 dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0x658c663f blk_requeue_request +EXPORT_SYMBOL vmlinux 0x65b2ef05 skb_pad +EXPORT_SYMBOL vmlinux 0x65bb58a2 _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65e0d6d7 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x65e1f3b1 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0x65f23bbe __dev_get_by_index +EXPORT_SYMBOL vmlinux 0x65f3ad9a fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x65f7fd39 __quota_error +EXPORT_SYMBOL vmlinux 0x65f8e069 pci_alloc_dev +EXPORT_SYMBOL vmlinux 0x663a07e3 scsi_get_command +EXPORT_SYMBOL vmlinux 0x6660efac inet_frag_maybe_warn_overflow +EXPORT_SYMBOL vmlinux 0x668da8d5 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x66967fc9 i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0x669c868b sk_stop_timer +EXPORT_SYMBOL vmlinux 0x66d8d729 fb_set_suspend +EXPORT_SYMBOL vmlinux 0x66df98e5 pagevec_lookup +EXPORT_SYMBOL vmlinux 0x66ef2241 mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0x66fb9620 xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x671ef37f dquot_quotactl_ops +EXPORT_SYMBOL vmlinux 0x671fa802 netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0x67284562 i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x673f815e agp_bridges +EXPORT_SYMBOL vmlinux 0x675b8f61 param_get_string +EXPORT_SYMBOL vmlinux 0x679d09c8 __lock_page +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67b95de6 phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0x67cb9784 ipmi_poll_interface +EXPORT_SYMBOL vmlinux 0x67ce8197 flex_array_shrink +EXPORT_SYMBOL vmlinux 0x67e2de69 fsl_lbc_ctrl_dev +EXPORT_SYMBOL vmlinux 0x67f9311c pci_request_regions +EXPORT_SYMBOL vmlinux 0x67fc6bf4 flush_delayed_work +EXPORT_SYMBOL vmlinux 0x67fcce0d tty_devnum +EXPORT_SYMBOL vmlinux 0x6831f3e7 __kfree_skb +EXPORT_SYMBOL vmlinux 0x683a8a59 bioset_free +EXPORT_SYMBOL vmlinux 0x685dd25f scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0x68609857 complete_and_exit +EXPORT_SYMBOL vmlinux 0x686e842c nla_put +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x6895a8f2 blkdev_fsync +EXPORT_SYMBOL vmlinux 0x68a8b4ae devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0x68b68a89 sk_prot_clear_portaddr_nulls +EXPORT_SYMBOL vmlinux 0x68b83ac6 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x68d8a3b1 pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0x68dad0db lro_receive_skb +EXPORT_SYMBOL vmlinux 0x68e05d57 getrawmonotonic +EXPORT_SYMBOL vmlinux 0x68eca93f scsi_add_device +EXPORT_SYMBOL vmlinux 0x6965de67 generic_permission +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x69a0ca7d iowrite16be +EXPORT_SYMBOL vmlinux 0x69a358a6 iomem_resource +EXPORT_SYMBOL vmlinux 0x69ad2f20 kstrtouint +EXPORT_SYMBOL vmlinux 0x69c232c1 nf_reinject +EXPORT_SYMBOL vmlinux 0x69d38d18 generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0x69d38ed9 __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x69e27c7a bitmap_copy_le +EXPORT_SYMBOL vmlinux 0x69f043b1 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a09bca0 blk_init_queue +EXPORT_SYMBOL vmlinux 0x6a1315b7 tcp_recvmsg +EXPORT_SYMBOL vmlinux 0x6a3f4119 mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0x6a48302a cdev_add +EXPORT_SYMBOL vmlinux 0x6a4f099c i2c_get_adapter +EXPORT_SYMBOL vmlinux 0x6a51ac96 bio_integrity_get_tag +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a5fa363 sigprocmask +EXPORT_SYMBOL vmlinux 0x6a61f874 to_tm +EXPORT_SYMBOL vmlinux 0x6a740c54 gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x6a76f3ac blk_iopoll_enable +EXPORT_SYMBOL vmlinux 0x6a7b491c fput +EXPORT_SYMBOL vmlinux 0x6a86a3fa netif_receive_skb +EXPORT_SYMBOL vmlinux 0x6a958d9f d_add_ci +EXPORT_SYMBOL vmlinux 0x6a9b395f __netif_schedule +EXPORT_SYMBOL vmlinux 0x6aa75976 dst_destroy +EXPORT_SYMBOL vmlinux 0x6abbc2c3 dev_alert +EXPORT_SYMBOL vmlinux 0x6abf6c04 complete_request_key +EXPORT_SYMBOL vmlinux 0x6ac8c578 xfrm_cfg_mutex +EXPORT_SYMBOL vmlinux 0x6acb973d iowrite32be +EXPORT_SYMBOL vmlinux 0x6ad84137 kmem_cache_alloc_node_trace +EXPORT_SYMBOL vmlinux 0x6ae4267f __cleancache_invalidate_inode +EXPORT_SYMBOL vmlinux 0x6af24bc6 pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0x6af6715f __dst_free +EXPORT_SYMBOL vmlinux 0x6b042d14 blk_mq_map_queue +EXPORT_SYMBOL vmlinux 0x6b04b562 compat_tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x6b06fdce delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x6b07bdae km_state_notify +EXPORT_SYMBOL vmlinux 0x6b0afe8b padata_remove_cpu +EXPORT_SYMBOL vmlinux 0x6b1b67d3 __bdevname +EXPORT_SYMBOL vmlinux 0x6b1fde2b blk_queue_end_tag +EXPORT_SYMBOL vmlinux 0x6b2a2365 mntput +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b348556 scsi_print_result +EXPORT_SYMBOL vmlinux 0x6b4c5929 neigh_app_ns +EXPORT_SYMBOL vmlinux 0x6b4ecfce pci_get_device +EXPORT_SYMBOL vmlinux 0x6b5a1d03 agp_put_bridge +EXPORT_SYMBOL vmlinux 0x6b5dfe73 __debugger_bpt +EXPORT_SYMBOL vmlinux 0x6b640864 nla_strlcpy +EXPORT_SYMBOL vmlinux 0x6b6ab23b bdev_read_only +EXPORT_SYMBOL vmlinux 0x6b7f1917 idr_find_slowpath +EXPORT_SYMBOL vmlinux 0x6b824e22 input_get_keycode +EXPORT_SYMBOL vmlinux 0x6ba68dea textsearch_destroy +EXPORT_SYMBOL vmlinux 0x6babbb4c phy_stop_interrupts +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bca659d scsi_block_requests +EXPORT_SYMBOL vmlinux 0x6bcb1bfe ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x6bceaebc gen_replace_estimator +EXPORT_SYMBOL vmlinux 0x6bdbbfca phy_ethtool_sset +EXPORT_SYMBOL vmlinux 0x6bdcfd99 qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x6beb2078 param_set_copystring +EXPORT_SYMBOL vmlinux 0x6c4d8700 agp_alloc_page_array +EXPORT_SYMBOL vmlinux 0x6c51a836 sysctl_tcp_notsent_lowat +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c702af7 sysctl_udp_rmem_min +EXPORT_SYMBOL vmlinux 0x6cbf4223 dquot_disable +EXPORT_SYMBOL vmlinux 0x6cc1cb58 brioctl_set +EXPORT_SYMBOL vmlinux 0x6cd68dff sock_get_timestamp +EXPORT_SYMBOL vmlinux 0x6cd8c86b __crc32c_le_combine +EXPORT_SYMBOL vmlinux 0x6cde6dea pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0x6cef1c65 scm_fp_dup +EXPORT_SYMBOL vmlinux 0x6d0b010c neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0x6d0f1f89 dm_table_get_mode +EXPORT_SYMBOL vmlinux 0x6d22828f input_event +EXPORT_SYMBOL vmlinux 0x6d27ef64 __bitmap_empty +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d53f803 ide_proc_register_driver +EXPORT_SYMBOL vmlinux 0x6d668922 bio_integrity_endio +EXPORT_SYMBOL vmlinux 0x6d674c52 scsi_host_put +EXPORT_SYMBOL vmlinux 0x6d688632 dput +EXPORT_SYMBOL vmlinux 0x6da928f4 _insw_ns +EXPORT_SYMBOL vmlinux 0x6dc7f451 __alloc_pages_nodemask +EXPORT_SYMBOL vmlinux 0x6de79e68 mnt_pin +EXPORT_SYMBOL vmlinux 0x6def2db2 half_md4_transform +EXPORT_SYMBOL vmlinux 0x6e0a044f giveup_vsx +EXPORT_SYMBOL vmlinux 0x6e19e693 unregister_framebuffer +EXPORT_SYMBOL vmlinux 0x6e1a3c9f skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x6e2585a4 dev_queue_xmit_accel +EXPORT_SYMBOL vmlinux 0x6e56ee92 ftrace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e764332 idr_destroy +EXPORT_SYMBOL vmlinux 0x6e91b5b5 pci_match_id +EXPORT_SYMBOL vmlinux 0x6ebc5149 param_ops_long +EXPORT_SYMBOL vmlinux 0x6ec1330b security_d_instantiate +EXPORT_SYMBOL vmlinux 0x6ec7d361 migrate_page +EXPORT_SYMBOL vmlinux 0x6ee07ed9 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0x6f0036d9 del_timer_sync +EXPORT_SYMBOL vmlinux 0x6f0c3a46 fsync_bdev +EXPORT_SYMBOL vmlinux 0x6f20960a full_name_hash +EXPORT_SYMBOL vmlinux 0x6f25e60f pipe_to_file +EXPORT_SYMBOL vmlinux 0x6f31eb27 blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0x6f32cc54 dev_set_group +EXPORT_SYMBOL vmlinux 0x6f3c8d02 gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0x6f3fb240 kmalloc_caches +EXPORT_SYMBOL vmlinux 0x6f5aeb82 key_validate +EXPORT_SYMBOL vmlinux 0x6f5d731c udp_proc_register +EXPORT_SYMBOL vmlinux 0x6f672d34 dquot_drop +EXPORT_SYMBOL vmlinux 0x6f71cab5 compat_ip_setsockopt +EXPORT_SYMBOL vmlinux 0x6f85b211 ida_remove +EXPORT_SYMBOL vmlinux 0x6f8f1e08 jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0x6f9aee9e agp3_generic_tlbflush +EXPORT_SYMBOL vmlinux 0x6fa08643 __mem_cgroup_count_vm_event +EXPORT_SYMBOL vmlinux 0x6fbb843f phy_register_fixup +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6fd040ec generic_segment_checks +EXPORT_SYMBOL vmlinux 0x7030b4d5 padata_add_cpu +EXPORT_SYMBOL vmlinux 0x7032bbd9 generic_ide_ioctl +EXPORT_SYMBOL vmlinux 0x704c4365 __cputime_sec_factor +EXPORT_SYMBOL vmlinux 0x70523a7a __cond_resched_softirq +EXPORT_SYMBOL vmlinux 0x7054a3e4 request_dma +EXPORT_SYMBOL vmlinux 0x7064f8d7 user_path_create +EXPORT_SYMBOL vmlinux 0x7065ece1 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x707f43f6 __ctzdi2 +EXPORT_SYMBOL vmlinux 0x70b1e215 scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x70bc17d7 inode_wait +EXPORT_SYMBOL vmlinux 0x70c1326b proto_unregister +EXPORT_SYMBOL vmlinux 0x70c177c9 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0x70cbabbc dma_set_mask +EXPORT_SYMBOL vmlinux 0x70d79991 buffer_migrate_page +EXPORT_SYMBOL vmlinux 0x70dc8813 tcp_proc_unregister +EXPORT_SYMBOL vmlinux 0x71121362 pci_write_vpd +EXPORT_SYMBOL vmlinux 0x7120fd89 alloc_disk +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x7142a779 pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0x71433244 dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0x715067b9 touch_atime +EXPORT_SYMBOL vmlinux 0x716c85d4 mem_section +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x71a0374c ip_defrag +EXPORT_SYMBOL vmlinux 0x71a50dbc register_blkdev +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71ad8209 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0x71cec954 mapping_tagged +EXPORT_SYMBOL vmlinux 0x71e62d7a phy_start_aneg +EXPORT_SYMBOL vmlinux 0x71fc8afb pci_set_dma_max_seg_size +EXPORT_SYMBOL vmlinux 0x720453e9 pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0x721d3718 request_firmware +EXPORT_SYMBOL vmlinux 0x7228afea tcp_sendpage +EXPORT_SYMBOL vmlinux 0x7240d72a machine_id +EXPORT_SYMBOL vmlinux 0x724841ad install_exec_creds +EXPORT_SYMBOL vmlinux 0x7270f8bd inet6_del_offload +EXPORT_SYMBOL vmlinux 0x72b243d4 free_dma +EXPORT_SYMBOL vmlinux 0x72c98139 __arch_hweight64 +EXPORT_SYMBOL vmlinux 0x72e86495 insert_inode_locked +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x731882c9 dquot_transfer +EXPORT_SYMBOL vmlinux 0x731a747a pci_io_base +EXPORT_SYMBOL vmlinux 0x731fed17 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0x733c3b54 kasprintf +EXPORT_SYMBOL vmlinux 0x735d8503 add_wait_queue +EXPORT_SYMBOL vmlinux 0x7361138c d_make_root +EXPORT_SYMBOL vmlinux 0x7368ce80 __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0x736de9d9 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0x73710a3e dqstats +EXPORT_SYMBOL vmlinux 0x737b36bb xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0x737de5e9 radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0x73a162aa lock_may_write +EXPORT_SYMBOL vmlinux 0x73bbbcfa tcp_md5_hash_header +EXPORT_SYMBOL vmlinux 0x74443178 tcf_action_exec +EXPORT_SYMBOL vmlinux 0x7465ba97 i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0x7469fcfe radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x746f583e clear_bdi_congested +EXPORT_SYMBOL vmlinux 0x747195f0 hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x747aa898 eth_mac_addr +EXPORT_SYMBOL vmlinux 0x7485e15e unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x749cd4eb free_task +EXPORT_SYMBOL vmlinux 0x74af2506 pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74f91272 srp_rport_get +EXPORT_SYMBOL vmlinux 0x751c2917 __wait_on_bit +EXPORT_SYMBOL vmlinux 0x752ef181 agp_unbind_memory +EXPORT_SYMBOL vmlinux 0x752f1996 tty_name +EXPORT_SYMBOL vmlinux 0x7532588a alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x7538b132 agp_off +EXPORT_SYMBOL vmlinux 0x754dac78 blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x7550576d blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x756dac4f sock_kfree_s +EXPORT_SYMBOL vmlinux 0x75806022 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x75994700 add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0x759bf78c nf_log_set +EXPORT_SYMBOL vmlinux 0x75ade067 pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75bdea12 iommu_area_alloc +EXPORT_SYMBOL vmlinux 0x75be6702 register_sysctl_paths +EXPORT_SYMBOL vmlinux 0x75c52df7 scsi_nonblockable_ioctl +EXPORT_SYMBOL vmlinux 0x75ca35cf pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0x75d8d64d generic_show_options +EXPORT_SYMBOL vmlinux 0x75e05bbe padata_start +EXPORT_SYMBOL vmlinux 0x75e9aabd mmc_hw_reset +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x761875e0 vfs_read +EXPORT_SYMBOL vmlinux 0x761fce2f sock_recvmsg +EXPORT_SYMBOL vmlinux 0x76223a62 napi_complete +EXPORT_SYMBOL vmlinux 0x76401b32 __ip_dev_find +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x764bd77c request_resource +EXPORT_SYMBOL vmlinux 0x765881de __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0x765ff474 crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x7660559d cad_pid +EXPORT_SYMBOL vmlinux 0x7682ceb0 tcp_enter_memory_pressure +EXPORT_SYMBOL vmlinux 0x768cb2f0 submit_bio_wait +EXPORT_SYMBOL vmlinux 0x768f5adb __inet_stream_connect +EXPORT_SYMBOL vmlinux 0x769b8216 abx500_get_chip_id +EXPORT_SYMBOL vmlinux 0x76b59b33 cpu_sibling_map +EXPORT_SYMBOL vmlinux 0x76bf656d __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76d451c4 add_taint +EXPORT_SYMBOL vmlinux 0x76d8c239 kernel_listen +EXPORT_SYMBOL vmlinux 0x76e2a8e7 inode_add_rsv_space +EXPORT_SYMBOL vmlinux 0x76ebab05 tty_register_device +EXPORT_SYMBOL vmlinux 0x77056aa1 ata_dev_printk +EXPORT_SYMBOL vmlinux 0x77057a9e cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x771cf835 dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x773a9c94 blk_iopoll_enabled +EXPORT_SYMBOL vmlinux 0x773fa409 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x774e6b66 blk_mq_run_queues +EXPORT_SYMBOL vmlinux 0x77750499 compat_ip_getsockopt +EXPORT_SYMBOL vmlinux 0x779a18af kstrtoll +EXPORT_SYMBOL vmlinux 0x779fb202 generic_read_dir +EXPORT_SYMBOL vmlinux 0x77a0e920 pcie_get_mps +EXPORT_SYMBOL vmlinux 0x77a18ba8 __cleancache_invalidate_fs +EXPORT_SYMBOL vmlinux 0x77b27844 inet_register_protosw +EXPORT_SYMBOL vmlinux 0x77b72c78 scsi_get_host_dev +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77ce3158 dquot_quota_on +EXPORT_SYMBOL vmlinux 0x77d65150 generic_make_request +EXPORT_SYMBOL vmlinux 0x77df0847 __set_personality +EXPORT_SYMBOL vmlinux 0x77e8965d backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x77ecac9f zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x77fc17bc dm_unregister_target +EXPORT_SYMBOL vmlinux 0x77fe5dc4 ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x780417ae iterate_mounts +EXPORT_SYMBOL vmlinux 0x7830b04f hvc_put_chars +EXPORT_SYMBOL vmlinux 0x783b3563 wake_up_atomic_t +EXPORT_SYMBOL vmlinux 0x7841aac0 aio_complete +EXPORT_SYMBOL vmlinux 0x7846af3e __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x784ad843 vga_put +EXPORT_SYMBOL vmlinux 0x78502cc9 dma_pool_create +EXPORT_SYMBOL vmlinux 0x78529c79 pci_add_new_bus +EXPORT_SYMBOL vmlinux 0x787bb80a vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0x7880c781 dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0x789affb1 frontswap_tmem_exclusive_gets +EXPORT_SYMBOL vmlinux 0x78a8dd7d skb_queue_tail +EXPORT_SYMBOL vmlinux 0x78a9a26d __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0x78b9afcc sock_no_listen +EXPORT_SYMBOL vmlinux 0x78c4757f kthread_bind +EXPORT_SYMBOL vmlinux 0x78d222fd tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0x78d80058 kthread_create_on_node +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78e2f21f mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x78fd36e7 ipmi_request_supply_msgs +EXPORT_SYMBOL vmlinux 0x790df6ca __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x7930d225 of_device_is_compatible +EXPORT_SYMBOL vmlinux 0x79650663 mmc_fixup_device +EXPORT_SYMBOL vmlinux 0x796fc5ce scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0x79706bfc tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0x7984eefc key_update +EXPORT_SYMBOL vmlinux 0x798f3110 tcf_em_register +EXPORT_SYMBOL vmlinux 0x799cf170 tcp_sync_mss +EXPORT_SYMBOL vmlinux 0x79aa04a2 get_random_bytes +EXPORT_SYMBOL vmlinux 0x79e2c9f0 pci_vpd_truncate +EXPORT_SYMBOL vmlinux 0x79fb6806 pci_set_power_state +EXPORT_SYMBOL vmlinux 0x7a153e5c ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0x7a188791 prandom_bytes +EXPORT_SYMBOL vmlinux 0x7a253cfa __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x7a27c184 ewma_init +EXPORT_SYMBOL vmlinux 0x7a352160 d_instantiate +EXPORT_SYMBOL vmlinux 0x7a42bd5a nf_register_sockopt +EXPORT_SYMBOL vmlinux 0x7a4497db kzfree +EXPORT_SYMBOL vmlinux 0x7a4b7503 security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0x7a6e388b skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x7a925833 cpufreq_get_global_kobject +EXPORT_SYMBOL vmlinux 0x7a96cf75 blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0x7aaef5b3 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0x7ab016f7 scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0x7ab88a45 system_freezing_cnt +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7add44b5 posix_acl_valid +EXPORT_SYMBOL vmlinux 0x7ae1e45a xfrm_input +EXPORT_SYMBOL vmlinux 0x7ae3eec4 security_mmap_file +EXPORT_SYMBOL vmlinux 0x7ae4ed31 find_get_pages_tag +EXPORT_SYMBOL vmlinux 0x7b16235f hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x7b2aef6c __krealloc +EXPORT_SYMBOL vmlinux 0x7b614c43 skb_checksum +EXPORT_SYMBOL vmlinux 0x7bc8721c posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0x7be3c749 spi_display_xfer_agreement +EXPORT_SYMBOL vmlinux 0x7bebbe8b mdiobus_register +EXPORT_SYMBOL vmlinux 0x7c003aef _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0x7c1372e8 panic +EXPORT_SYMBOL vmlinux 0x7c1c538c compat_sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0x7c27afaa iov_iter_copy_from_user +EXPORT_SYMBOL vmlinux 0x7c2d098f krealloc +EXPORT_SYMBOL vmlinux 0x7c364de9 xfrm_state_walk +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c484291 tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x7c4a078c inet_sendpage +EXPORT_SYMBOL vmlinux 0x7c61340c __release_region +EXPORT_SYMBOL vmlinux 0x7c6594e0 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0x7c6d7fed register_sysctl +EXPORT_SYMBOL vmlinux 0x7c7a19dc bdi_init +EXPORT_SYMBOL vmlinux 0x7c8b18c2 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0x7cb1ae69 cpu_down +EXPORT_SYMBOL vmlinux 0x7cc578da param_get_long +EXPORT_SYMBOL vmlinux 0x7cd0eb59 register_gifconf +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7cf3a16b put_cmsg +EXPORT_SYMBOL vmlinux 0x7d0a0121 sock_no_accept +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d11c268 jiffies +EXPORT_SYMBOL vmlinux 0x7d4e1a8f __secpath_destroy +EXPORT_SYMBOL vmlinux 0x7d89ae1e md_wakeup_thread +EXPORT_SYMBOL vmlinux 0x7d9514c1 node_to_cpumask_map +EXPORT_SYMBOL vmlinux 0x7d9ebe89 sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x7dc0e109 idr_get_next +EXPORT_SYMBOL vmlinux 0x7dc97879 rtas_get_error_log_max +EXPORT_SYMBOL vmlinux 0x7deff673 dm_consume_args +EXPORT_SYMBOL vmlinux 0x7e09ee6e tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0x7e1488e0 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0x7e394c4e sysctl_local_reserved_ports +EXPORT_SYMBOL vmlinux 0x7e49f281 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0x7e8d118b input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0x7eb57048 dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0x7ec46509 submit_bio +EXPORT_SYMBOL vmlinux 0x7ecd9005 tcp_shutdown +EXPORT_SYMBOL vmlinux 0x7ee4400f fbcon_set_bitops +EXPORT_SYMBOL vmlinux 0x7f004ba8 dev_mc_init +EXPORT_SYMBOL vmlinux 0x7f08429e unlink_framebuffer +EXPORT_SYMBOL vmlinux 0x7f0a781b __scsi_put_command +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f2f62f5 sync_inode +EXPORT_SYMBOL vmlinux 0x7f3a2827 blk_complete_request +EXPORT_SYMBOL vmlinux 0x7f3aaa69 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x7f3bf338 devm_gpio_free +EXPORT_SYMBOL vmlinux 0x7f3c3f69 km_policy_expired +EXPORT_SYMBOL vmlinux 0x7f4870ae ip_mc_join_group +EXPORT_SYMBOL vmlinux 0x7f71cd76 agp_free_page_array +EXPORT_SYMBOL vmlinux 0x7f750581 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0x7f75100d mount_ns +EXPORT_SYMBOL vmlinux 0x7fac0a0f backlight_device_register +EXPORT_SYMBOL vmlinux 0x7fac9c54 spi_dv_device +EXPORT_SYMBOL vmlinux 0x7fb9e154 finish_no_open +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7fe38f48 sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x7fe86b5c __dquot_free_space +EXPORT_SYMBOL vmlinux 0x7ff5383e cpu_active_mask +EXPORT_SYMBOL vmlinux 0x80036b75 netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0x801cc71e pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0x8025b944 __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x802d0e93 crc32_le +EXPORT_SYMBOL vmlinux 0x803aa8bf ps2_command +EXPORT_SYMBOL vmlinux 0x804d559b bio_uncopy_user +EXPORT_SYMBOL vmlinux 0x804f922a ipmi_addr_length +EXPORT_SYMBOL vmlinux 0x80533e81 bio_integrity_prep +EXPORT_SYMBOL vmlinux 0x8064baed qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0x8071d1a8 cpu_all_bits +EXPORT_SYMBOL vmlinux 0x808356dc register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x808e2e29 mutex_unlock +EXPORT_SYMBOL vmlinux 0x80c444f7 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80cb4bb6 mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80e32087 udp6_csum_init +EXPORT_SYMBOL vmlinux 0x80f31601 netpoll_setup +EXPORT_SYMBOL vmlinux 0x8106ae56 sock_no_connect +EXPORT_SYMBOL vmlinux 0x810760b3 do_sync_write +EXPORT_SYMBOL vmlinux 0x813f320f __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0x814e7730 nf_ct_destroy +EXPORT_SYMBOL vmlinux 0x8152b2aa of_node_put +EXPORT_SYMBOL vmlinux 0x81533963 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x81593c86 sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x81794fe3 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0x81962656 nf_unregister_hooks +EXPORT_SYMBOL vmlinux 0x81a07f4e _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0x81c0a84f rtas_set_indicator +EXPORT_SYMBOL vmlinux 0x81d8e158 account_page_redirty +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81e47255 generic_write_end +EXPORT_SYMBOL vmlinux 0x82072614 tasklet_kill +EXPORT_SYMBOL vmlinux 0x821da79b __cleancache_put_page +EXPORT_SYMBOL vmlinux 0x822f3690 unmap_underlying_metadata +EXPORT_SYMBOL vmlinux 0x8231530e abx500_get_register_interruptible +EXPORT_SYMBOL vmlinux 0x8251bcc3 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x8260686f bitmap_find_next_zero_area +EXPORT_SYMBOL vmlinux 0x82694bdd dev_kfree_skb_any +EXPORT_SYMBOL vmlinux 0x826c51f0 skb_insert +EXPORT_SYMBOL vmlinux 0x828062b1 __frontswap_init +EXPORT_SYMBOL vmlinux 0x829ee179 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0x82ab8ccd serio_interrupt +EXPORT_SYMBOL vmlinux 0x82acfb70 blk_iopoll_sched +EXPORT_SYMBOL vmlinux 0x82d342ef splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0x82d5c4a2 padata_alloc +EXPORT_SYMBOL vmlinux 0x82d6b0d0 cpumask_next_and +EXPORT_SYMBOL vmlinux 0x82d8c394 wait_iff_congested +EXPORT_SYMBOL vmlinux 0x82e5a238 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x82ebb840 vga_tryget +EXPORT_SYMBOL vmlinux 0x82f3f8da clocksource_unregister +EXPORT_SYMBOL vmlinux 0x82fd0fdd pci_request_region_exclusive +EXPORT_SYMBOL vmlinux 0x8303acbb filemap_write_and_wait +EXPORT_SYMBOL vmlinux 0x83113c39 flush_icache_user_range +EXPORT_SYMBOL vmlinux 0x83161104 seq_puts +EXPORT_SYMBOL vmlinux 0x83547a69 tcf_em_unregister +EXPORT_SYMBOL vmlinux 0x836397de generic_file_remap_pages +EXPORT_SYMBOL vmlinux 0x83a476ce bitmap_scnlistprintf +EXPORT_SYMBOL vmlinux 0x840d6da8 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0x8419198d dev_emerg +EXPORT_SYMBOL vmlinux 0x841962f8 param_get_ushort +EXPORT_SYMBOL vmlinux 0x841ac7e2 bio_copy_user +EXPORT_SYMBOL vmlinux 0x84849e59 gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x849bd373 phy_scan_fixups +EXPORT_SYMBOL vmlinux 0x84bac294 security_file_permission +EXPORT_SYMBOL vmlinux 0x84bd69bf dq_data_lock +EXPORT_SYMBOL vmlinux 0x84c964f9 arp_create +EXPORT_SYMBOL vmlinux 0x84d43dd9 scsi_device_put +EXPORT_SYMBOL vmlinux 0x84ffcd24 inet_addr_type +EXPORT_SYMBOL vmlinux 0x84ffea8b idr_preload +EXPORT_SYMBOL vmlinux 0x8509c540 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0x8518eca9 param_get_short +EXPORT_SYMBOL vmlinux 0x853bf7c1 param_set_int +EXPORT_SYMBOL vmlinux 0x854b0cc0 netpoll_parse_options +EXPORT_SYMBOL vmlinux 0x8550b64c phy_disconnect +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x8574b5c1 md_write_end +EXPORT_SYMBOL vmlinux 0x8582492b jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0x8597eb47 plpar_hcall +EXPORT_SYMBOL vmlinux 0x859fde9b elv_rq_merge_ok +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85e77094 jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0x85f928be cdrom_media_changed +EXPORT_SYMBOL vmlinux 0x86076569 xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0x865029ac __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x86599398 inet_frags_exit_net +EXPORT_SYMBOL vmlinux 0x865b2ae5 xfrm_init_state +EXPORT_SYMBOL vmlinux 0x865ef568 pm860x_set_bits +EXPORT_SYMBOL vmlinux 0x8664f62e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0x8666979a check_disk_change +EXPORT_SYMBOL vmlinux 0x866fd995 security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0x8671c42d dump_align +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x86bbd654 kill_fasync +EXPORT_SYMBOL vmlinux 0x86c344f5 phy_start +EXPORT_SYMBOL vmlinux 0x86cf3b0b inet_stream_connect +EXPORT_SYMBOL vmlinux 0x86d707e8 of_scan_pci_bridge +EXPORT_SYMBOL vmlinux 0x86d8f475 mark_page_accessed +EXPORT_SYMBOL vmlinux 0x86db1cbb rtas_flash_term_hook +EXPORT_SYMBOL vmlinux 0x86e819ec pagevec_lookup_tag +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x870bf928 radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x870c2ef7 register_nls +EXPORT_SYMBOL vmlinux 0x871c0a7e fiemap_check_flags +EXPORT_SYMBOL vmlinux 0x87236b53 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0x873a53ea __arch_hweight8 +EXPORT_SYMBOL vmlinux 0x8765257b dev_set_allmulti +EXPORT_SYMBOL vmlinux 0x8775d2be skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0x8779a34f param_ops_byte +EXPORT_SYMBOL vmlinux 0x878ab3ce sysctl_tcp_adv_win_scale +EXPORT_SYMBOL vmlinux 0x878fd557 tcp_disconnect +EXPORT_SYMBOL vmlinux 0x8798527b skb_queue_head +EXPORT_SYMBOL vmlinux 0x8799d270 skb_seq_read +EXPORT_SYMBOL vmlinux 0x87a8af55 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0x87d222a7 simple_empty +EXPORT_SYMBOL vmlinux 0x87f908da ppp_unit_number +EXPORT_SYMBOL vmlinux 0x881039d0 zlib_inflate +EXPORT_SYMBOL vmlinux 0x883d3d5b tcp_prequeue +EXPORT_SYMBOL vmlinux 0x88440720 inet6_ioctl +EXPORT_SYMBOL vmlinux 0x8848d581 __block_write_begin +EXPORT_SYMBOL vmlinux 0x88513970 param_set_byte +EXPORT_SYMBOL vmlinux 0x8865bf32 mmc_stop_bkops +EXPORT_SYMBOL vmlinux 0x886b463e fbcon_set_tileops +EXPORT_SYMBOL vmlinux 0x886eb7ee simple_write_begin +EXPORT_SYMBOL vmlinux 0x888a3bf1 nonseekable_open +EXPORT_SYMBOL vmlinux 0x88a2f8a3 serio_unregister_port +EXPORT_SYMBOL vmlinux 0x88ac30ed mb_cache_create +EXPORT_SYMBOL vmlinux 0x88c617ee mb_cache_entry_release +EXPORT_SYMBOL vmlinux 0x89098514 i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0x891e153a trace_seq_putc +EXPORT_SYMBOL vmlinux 0x891fbb10 mempool_destroy +EXPORT_SYMBOL vmlinux 0x892fa60b ihold +EXPORT_SYMBOL vmlinux 0x89495621 scsi_remove_host +EXPORT_SYMBOL vmlinux 0x895108f3 proc_dostring +EXPORT_SYMBOL vmlinux 0x895577b0 numa_cpu_lookup_table +EXPORT_SYMBOL vmlinux 0x89663533 fsnotify_alloc_group +EXPORT_SYMBOL vmlinux 0x897473df mktime +EXPORT_SYMBOL vmlinux 0x89797060 _raw_read_lock +EXPORT_SYMBOL vmlinux 0x897f061d downgrade_write +EXPORT_SYMBOL vmlinux 0x89a9a6db write_cache_pages +EXPORT_SYMBOL vmlinux 0x89afe34e __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0x89b1ca8f devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x89d5538d fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x89f67dfc neigh_compat_output +EXPORT_SYMBOL vmlinux 0x89fcf87b udp_lib_unhash +EXPORT_SYMBOL vmlinux 0x8a08662d mmc_start_req +EXPORT_SYMBOL vmlinux 0x8a16b14e get_io_context +EXPORT_SYMBOL vmlinux 0x8a182bb7 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0x8a1ab4ee timeval_to_jiffies +EXPORT_SYMBOL vmlinux 0x8a23ed48 vlan_untag +EXPORT_SYMBOL vmlinux 0x8a2fb922 kobject_init +EXPORT_SYMBOL vmlinux 0x8a51d565 quota_send_warning +EXPORT_SYMBOL vmlinux 0x8a56d412 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x8a654c4e neigh_lookup +EXPORT_SYMBOL vmlinux 0x8a6af65c kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a876f54 ida_init +EXPORT_SYMBOL vmlinux 0x8a95552a __d_drop +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8aa78aa8 inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0x8ac6316d blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0x8ae4c3c1 tcf_hash_new_index +EXPORT_SYMBOL vmlinux 0x8af105f9 set_device_ro +EXPORT_SYMBOL vmlinux 0x8b058e5d blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0x8b17fc8e blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x8b260ce3 scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0x8b35e873 sg_last +EXPORT_SYMBOL vmlinux 0x8b37464c clear_nlink +EXPORT_SYMBOL vmlinux 0x8b43159b register_cpu_notifier +EXPORT_SYMBOL vmlinux 0x8b46a9b9 in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x8b55cac7 kobject_put +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b67f5d4 __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0x8b6c05ea freezing_slow_path +EXPORT_SYMBOL vmlinux 0x8bb741fb blk_mq_init_commands +EXPORT_SYMBOL vmlinux 0x8bdaff26 inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0x8be1ec36 linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x8bf2ae1f fsl_lbc_addr +EXPORT_SYMBOL vmlinux 0x8c07aa7d dcache_dir_close +EXPORT_SYMBOL vmlinux 0x8c183cbe iowrite16 +EXPORT_SYMBOL vmlinux 0x8c20c18f pcim_iounmap +EXPORT_SYMBOL vmlinux 0x8c3f2eea elv_register_queue +EXPORT_SYMBOL vmlinux 0x8c56ef02 __block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x8c637d43 irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x8c8ee770 ipmi_destroy_user +EXPORT_SYMBOL vmlinux 0x8ca47816 cap_mmap_file +EXPORT_SYMBOL vmlinux 0x8cc3c0b4 napi_gro_frags +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8cce7861 unregister_key_type +EXPORT_SYMBOL vmlinux 0x8cf14dfe tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x8cfa971c __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0x8d015dd4 __bswapdi2 +EXPORT_SYMBOL vmlinux 0x8d043170 __nla_reserve +EXPORT_SYMBOL vmlinux 0x8d27c429 kfree_put_link +EXPORT_SYMBOL vmlinux 0x8d2e268b param_ops_ulong +EXPORT_SYMBOL vmlinux 0x8d3be75c mount_nodev +EXPORT_SYMBOL vmlinux 0x8d4d711f genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0x8d551bef sysctl_tcp_rmem +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d595713 read_cache_pages +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8d8402b6 __set_page_dirty_buffers +EXPORT_SYMBOL vmlinux 0x8d944cbb copy_in_user +EXPORT_SYMBOL vmlinux 0x8db39260 cdrom_open +EXPORT_SYMBOL vmlinux 0x8dd83fc8 pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0x8de0b5ac mempool_create +EXPORT_SYMBOL vmlinux 0x8de55866 get_phy_device +EXPORT_SYMBOL vmlinux 0x8dee56f7 request_key +EXPORT_SYMBOL vmlinux 0x8df92f66 memchr_inv +EXPORT_SYMBOL vmlinux 0x8e024997 ibmebus_bus_type +EXPORT_SYMBOL vmlinux 0x8e078fd7 __module_put_and_exit +EXPORT_SYMBOL vmlinux 0x8e230b3f __elv_add_request +EXPORT_SYMBOL vmlinux 0x8e3db1ca scsi_device_resume +EXPORT_SYMBOL vmlinux 0x8e4facc2 sockfd_lookup +EXPORT_SYMBOL vmlinux 0x8e5937e1 get_super +EXPORT_SYMBOL vmlinux 0x8e5eb1d9 prepare_creds +EXPORT_SYMBOL vmlinux 0x8e864a86 posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x8ec04552 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0x8eca27b1 dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x8ecc1ce3 d_genocide +EXPORT_SYMBOL vmlinux 0x8ed2873f input_register_device +EXPORT_SYMBOL vmlinux 0x8ed60951 neigh_seq_start +EXPORT_SYMBOL vmlinux 0x8f35eba9 dcache_readdir +EXPORT_SYMBOL vmlinux 0x8f56bb0b dev_get_flags +EXPORT_SYMBOL vmlinux 0x8f5abb65 scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0x8f6a426e tty_kref_put +EXPORT_SYMBOL vmlinux 0x8f6b96b2 pneigh_lookup +EXPORT_SYMBOL vmlinux 0x8f75ec6b pci_enable_device +EXPORT_SYMBOL vmlinux 0x8f85f835 prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0x8f8a7bb2 scsi_print_command +EXPORT_SYMBOL vmlinux 0x8f983048 d_invalidate +EXPORT_SYMBOL vmlinux 0x8faa4598 of_translate_address +EXPORT_SYMBOL vmlinux 0x8faeb0e4 lock_sock_fast +EXPORT_SYMBOL vmlinux 0x8fc59f9b rtas_offline_cpus_mask +EXPORT_SYMBOL vmlinux 0x900af3e0 kern_path_mountpoint +EXPORT_SYMBOL vmlinux 0x90224ec3 pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0x902765a8 nf_afinfo +EXPORT_SYMBOL vmlinux 0x9048309b tcp_proto_cgroup +EXPORT_SYMBOL vmlinux 0x904d3ac3 have_submounts +EXPORT_SYMBOL vmlinux 0x90836fad agp_generic_alloc_user +EXPORT_SYMBOL vmlinux 0x908b53ed param_set_short +EXPORT_SYMBOL vmlinux 0x909bdfdf inet_frag_evictor +EXPORT_SYMBOL vmlinux 0x90a24d25 d_rehash +EXPORT_SYMBOL vmlinux 0x90a7a396 splice_from_pipe_next +EXPORT_SYMBOL vmlinux 0x90c2c30b page_readlink +EXPORT_SYMBOL vmlinux 0x90ce47f6 kill_anon_super +EXPORT_SYMBOL vmlinux 0x90f8b81d __devm_release_region +EXPORT_SYMBOL vmlinux 0x91024276 generic_delete_inode +EXPORT_SYMBOL vmlinux 0x912557ce rtas_busy_delay +EXPORT_SYMBOL vmlinux 0x91352b9c blk_queue_dma_pad +EXPORT_SYMBOL vmlinux 0x9142af92 pps_event +EXPORT_SYMBOL vmlinux 0x91463b1d kstrtos16 +EXPORT_SYMBOL vmlinux 0x915e1208 tb_ticks_per_usec +EXPORT_SYMBOL vmlinux 0x9166fada strncpy +EXPORT_SYMBOL vmlinux 0x9168c033 rtas_get_sensor +EXPORT_SYMBOL vmlinux 0x91715312 sprintf +EXPORT_SYMBOL vmlinux 0x91718593 pci_scan_bus +EXPORT_SYMBOL vmlinux 0x9176e0cf dma_async_memcpy_pg_to_pg +EXPORT_SYMBOL vmlinux 0x919d1163 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x91a82daf inode_sub_bytes +EXPORT_SYMBOL vmlinux 0x91ac822f vscnprintf +EXPORT_SYMBOL vmlinux 0x91d2aa16 try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x920b951f of_dev_get +EXPORT_SYMBOL vmlinux 0x922a4439 check_disk_size_change +EXPORT_SYMBOL vmlinux 0x9239a131 mmc_power_save_host +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x925520d2 blk_start_plug +EXPORT_SYMBOL vmlinux 0x928304ff generic_setxattr +EXPORT_SYMBOL vmlinux 0x9291cd3b memdup_user +EXPORT_SYMBOL vmlinux 0x92924d5f tty_register_ldisc +EXPORT_SYMBOL vmlinux 0x92a621f7 fb_firmware_edid +EXPORT_SYMBOL vmlinux 0x92a9c60c time_to_tm +EXPORT_SYMBOL vmlinux 0x92bb0ad1 sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x92bc220b lockref_get +EXPORT_SYMBOL vmlinux 0x92c212dd __nlmsg_put +EXPORT_SYMBOL vmlinux 0x92d050df iov_pages +EXPORT_SYMBOL vmlinux 0x92ddac87 compat_sock_get_timestampns +EXPORT_SYMBOL vmlinux 0x92f5ef24 pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0x92f66377 blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0x92f90c00 mmc_register_driver +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x9332b4e7 inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x9332ba2e dev_alloc_name +EXPORT_SYMBOL vmlinux 0x93430004 pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0x93448c57 screen_info +EXPORT_SYMBOL vmlinux 0x93543ca3 iget5_locked +EXPORT_SYMBOL vmlinux 0x9354fcde ibmebus_free_irq +EXPORT_SYMBOL vmlinux 0x93550113 ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x935c8b06 blk_get_request +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x9386e29d padata_do_serial +EXPORT_SYMBOL vmlinux 0x938af0f2 bh_submit_read +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93a8d611 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0x93a8eab6 udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93c3f98d dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x93c66540 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x93f2fdf5 filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0x93fca811 __get_free_pages +EXPORT_SYMBOL vmlinux 0x9405edef generic_block_bmap +EXPORT_SYMBOL vmlinux 0x94334c82 blk_queue_max_write_same_sectors +EXPORT_SYMBOL vmlinux 0x944811e7 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0x9475b162 ip_cmsg_recv +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x94ab6664 lro_flush_pkt +EXPORT_SYMBOL vmlinux 0x94b738ad find_or_create_page +EXPORT_SYMBOL vmlinux 0x94b81afb security_path_chmod +EXPORT_SYMBOL vmlinux 0x94d23c67 ip_route_input_noref +EXPORT_SYMBOL vmlinux 0x94d33713 inet6_protos +EXPORT_SYMBOL vmlinux 0x94e3a1f9 sock_no_setsockopt +EXPORT_SYMBOL vmlinux 0x94e9c9bc simple_pin_fs +EXPORT_SYMBOL vmlinux 0x9508f166 param_ops_bint +EXPORT_SYMBOL vmlinux 0x9514151a _mcount +EXPORT_SYMBOL vmlinux 0x951b19c2 pm860x_page_bulk_write +EXPORT_SYMBOL vmlinux 0x95207018 start_tty +EXPORT_SYMBOL vmlinux 0x9524b0ae _outsb +EXPORT_SYMBOL vmlinux 0x9545af6d tasklet_init +EXPORT_SYMBOL vmlinux 0x9555d6e9 page_symlink +EXPORT_SYMBOL vmlinux 0x9560b66a scsi_register_interface +EXPORT_SYMBOL vmlinux 0x95689bb4 blk_alloc_queue +EXPORT_SYMBOL vmlinux 0x956f2932 mach_powernv +EXPORT_SYMBOL vmlinux 0x95705f0e __vlan_find_dev_deep +EXPORT_SYMBOL vmlinux 0x9587e1bd pci_disable_msi +EXPORT_SYMBOL vmlinux 0x9591edcb scsi_put_command +EXPORT_SYMBOL vmlinux 0x9597262e sock_wmalloc +EXPORT_SYMBOL vmlinux 0x9597b9a0 blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0x95b98b70 single_open +EXPORT_SYMBOL vmlinux 0x95cb929c of_find_all_nodes +EXPORT_SYMBOL vmlinux 0x95db2e6f pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0x95e37dd6 poll_freewait +EXPORT_SYMBOL vmlinux 0x96190af1 nf_ct_attach +EXPORT_SYMBOL vmlinux 0x963494d0 flex_array_get_ptr +EXPORT_SYMBOL vmlinux 0x9658886c xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x966678fe blk_integrity_register +EXPORT_SYMBOL vmlinux 0x966bb689 mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0x967cf5e6 blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0x967dfeef of_mdiobus_register +EXPORT_SYMBOL vmlinux 0x9685f22f bdev_stack_limits +EXPORT_SYMBOL vmlinux 0x968ab6b8 free_mdio_bitbang +EXPORT_SYMBOL vmlinux 0x969059fa vio_cmo_set_dev_desired +EXPORT_SYMBOL vmlinux 0x96a38988 pci_find_next_bus +EXPORT_SYMBOL vmlinux 0x96a84da9 dev_queue_xmit +EXPORT_SYMBOL vmlinux 0x96b29254 strncasecmp +EXPORT_SYMBOL vmlinux 0x96cbcc81 ipmi_get_version +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96e2d245 dget_parent +EXPORT_SYMBOL vmlinux 0x96e3b720 pm860x_page_set_bits +EXPORT_SYMBOL vmlinux 0x96ea1dd9 simple_fill_super +EXPORT_SYMBOL vmlinux 0x96ffdfee mdiobus_unregister +EXPORT_SYMBOL vmlinux 0x9708f316 tcp_gro_complete +EXPORT_SYMBOL vmlinux 0x97200ba7 scsi_calculate_bounce_limit +EXPORT_SYMBOL vmlinux 0x9748927f _outsw_ns +EXPORT_SYMBOL vmlinux 0x975439d5 read_code +EXPORT_SYMBOL vmlinux 0x9754ec10 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x97868aef __kfifo_alloc +EXPORT_SYMBOL vmlinux 0x9786be86 framebuffer_release +EXPORT_SYMBOL vmlinux 0x97973449 __ww_mutex_lock +EXPORT_SYMBOL vmlinux 0x97a60e3d param_get_bool +EXPORT_SYMBOL vmlinux 0x97b71b5f splice_from_pipe_feed +EXPORT_SYMBOL vmlinux 0x97c04947 sock_no_shutdown +EXPORT_SYMBOL vmlinux 0x97c5f531 ftrace_print_hex_seq +EXPORT_SYMBOL vmlinux 0x97effd1e pci_bus_put +EXPORT_SYMBOL vmlinux 0x97f03d6f vio_cmo_entitlement_update +EXPORT_SYMBOL vmlinux 0x97f31c26 tcf_destroy_chain +EXPORT_SYMBOL vmlinux 0x981661a0 __idr_get_new_above +EXPORT_SYMBOL vmlinux 0x9821236b dma_async_memcpy_buf_to_pg +EXPORT_SYMBOL vmlinux 0x9823f71c padata_free +EXPORT_SYMBOL vmlinux 0x9829fc11 __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0x983ce402 devm_iounmap +EXPORT_SYMBOL vmlinux 0x9869ca10 input_release_device +EXPORT_SYMBOL vmlinux 0x986e6135 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x9871f0ef ps2_cmd_aborted +EXPORT_SYMBOL vmlinux 0x98797770 kern_path +EXPORT_SYMBOL vmlinux 0x98adb179 ip_getsockopt +EXPORT_SYMBOL vmlinux 0x98af403f ndisc_mc_map +EXPORT_SYMBOL vmlinux 0x98ce9474 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0x98cf60b3 strlen +EXPORT_SYMBOL vmlinux 0x99195078 vsnprintf +EXPORT_SYMBOL vmlinux 0x994b8b55 fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x99517c80 gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0x99591a7a ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x99726772 pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0x9994c0ca ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x999da762 devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99afe916 _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0x99b50c43 vfs_rmdir +EXPORT_SYMBOL vmlinux 0x99b6f3a6 mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0x99bb4e1a bdi_register +EXPORT_SYMBOL vmlinux 0x99c3b0f5 dev_printk +EXPORT_SYMBOL vmlinux 0x99cdc86b sysctl_tcp_reordering +EXPORT_SYMBOL vmlinux 0x99d3a43c dm_table_get_size +EXPORT_SYMBOL vmlinux 0x99daa9bf try_offline_node +EXPORT_SYMBOL vmlinux 0x9a0a31e3 mmc_detect_change +EXPORT_SYMBOL vmlinux 0x9a15f5c6 tcp_check_req +EXPORT_SYMBOL vmlinux 0x9a1bbc49 tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a1fc4b4 jiffies_to_timeval +EXPORT_SYMBOL vmlinux 0x9a27a3bb skb_free_datagram +EXPORT_SYMBOL vmlinux 0x9a2bd12d blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0x9a546dbf fsnotify_get_group +EXPORT_SYMBOL vmlinux 0x9a5ffc64 __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x9a782f66 of_device_unregister +EXPORT_SYMBOL vmlinux 0x9a9ed470 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0x9ae2fdc6 dev_remove_offload +EXPORT_SYMBOL vmlinux 0x9af89f98 memcpy_fromiovec +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b388444 get_zeroed_page +EXPORT_SYMBOL vmlinux 0x9b5cff7e qdisc_tree_decrease_qlen +EXPORT_SYMBOL vmlinux 0x9b7e37ad clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x9b857b9d qdisc_destroy +EXPORT_SYMBOL vmlinux 0x9b9e05f9 alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0x9ba3ad4b genl_unregister_family +EXPORT_SYMBOL vmlinux 0x9ba7089d argv_split +EXPORT_SYMBOL vmlinux 0x9bcc8a02 remove_arg_zero +EXPORT_SYMBOL vmlinux 0x9bd93d4f skb_queue_purge +EXPORT_SYMBOL vmlinux 0x9bdff7f1 dm_io +EXPORT_SYMBOL vmlinux 0x9be6e2cb __skb_tx_hash +EXPORT_SYMBOL vmlinux 0x9be7bde4 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x9bfd847f input_register_handle +EXPORT_SYMBOL vmlinux 0x9c137675 netif_device_detach +EXPORT_SYMBOL vmlinux 0x9c252090 uart_register_driver +EXPORT_SYMBOL vmlinux 0x9c2bc62c new_inode +EXPORT_SYMBOL vmlinux 0x9c440e91 simple_dir_operations +EXPORT_SYMBOL vmlinux 0x9c491f60 sg_alloc_table +EXPORT_SYMBOL vmlinux 0x9c497800 find_vma +EXPORT_SYMBOL vmlinux 0x9c65c643 seq_path +EXPORT_SYMBOL vmlinux 0x9c79cf9b seq_read +EXPORT_SYMBOL vmlinux 0x9ca16272 md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0x9ca6fe8e jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0x9cb424c3 dev_deactivate +EXPORT_SYMBOL vmlinux 0x9ccf92fc kblockd_schedule_delayed_work +EXPORT_SYMBOL vmlinux 0x9cef3cc5 __idr_remove_all +EXPORT_SYMBOL vmlinux 0x9cfd56c5 scsi_print_status +EXPORT_SYMBOL vmlinux 0x9d04d7a7 rtas +EXPORT_SYMBOL vmlinux 0x9d05f6c4 ktime_get_clocktai +EXPORT_SYMBOL vmlinux 0x9d0a83ff blk_mq_end_io +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d14983a ppc_enable_pmcs +EXPORT_SYMBOL vmlinux 0x9d2f3a1a tcf_exts_validate +EXPORT_SYMBOL vmlinux 0x9d353220 unregister_filesystem +EXPORT_SYMBOL vmlinux 0x9d3aa376 blk_iopoll_init +EXPORT_SYMBOL vmlinux 0x9d3f5a4d kill_block_super +EXPORT_SYMBOL vmlinux 0x9d42d574 security_dentry_init_security +EXPORT_SYMBOL vmlinux 0x9d495602 genphy_read_status +EXPORT_SYMBOL vmlinux 0x9d4d96e0 __pagevec_lru_add +EXPORT_SYMBOL vmlinux 0x9d545f33 generic_listxattr +EXPORT_SYMBOL vmlinux 0x9d7ce8dd _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0x9d98640d pci_get_slot +EXPORT_SYMBOL vmlinux 0x9d9dfc18 load_fp_state +EXPORT_SYMBOL vmlinux 0x9da34a17 sock_no_sendpage +EXPORT_SYMBOL vmlinux 0x9dcfe0ba d_move +EXPORT_SYMBOL vmlinux 0x9e06afa1 generic_pipe_buf_unmap +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e23ca05 ip6_xmit +EXPORT_SYMBOL vmlinux 0x9e2f8c90 lz4_decompress_unknownoutputsize +EXPORT_SYMBOL vmlinux 0x9e306cde mpage_readpages +EXPORT_SYMBOL vmlinux 0x9e44b9b7 of_get_next_available_child +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e6b753b blk_queue_free_tags +EXPORT_SYMBOL vmlinux 0x9e83f524 scsi_unregister +EXPORT_SYMBOL vmlinux 0x9e8e7fad nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0x9e9571f7 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0x9e97375d rtas_busy_delay_time +EXPORT_SYMBOL vmlinux 0x9e9f1714 __bitmap_andnot +EXPORT_SYMBOL vmlinux 0x9ea0ad49 __sg_free_table +EXPORT_SYMBOL vmlinux 0x9ebd4c04 adjust_resource +EXPORT_SYMBOL vmlinux 0x9ed2eec7 param_set_ushort +EXPORT_SYMBOL vmlinux 0x9ed4694e bio_sector_offset +EXPORT_SYMBOL vmlinux 0x9edd41f4 scsi_execute_req_flags +EXPORT_SYMBOL vmlinux 0x9ee8b255 netlink_set_err +EXPORT_SYMBOL vmlinux 0x9f2bdaac __bitmap_or +EXPORT_SYMBOL vmlinux 0x9f394251 __napi_schedule +EXPORT_SYMBOL vmlinux 0x9f45d750 con_copy_unimap +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f580ce4 scsi_device_get +EXPORT_SYMBOL vmlinux 0x9f7174d9 agp_generic_alloc_page +EXPORT_SYMBOL vmlinux 0x9f8a77da release_pages +EXPORT_SYMBOL vmlinux 0x9f8eb181 default_llseek +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9ff3fc39 dev_get_by_flags_rcu +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa04a01bd qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xa04c6e56 bdgrab +EXPORT_SYMBOL vmlinux 0xa055df0a bdget +EXPORT_SYMBOL vmlinux 0xa059773c blk_end_request_cur +EXPORT_SYMBOL vmlinux 0xa05b3a03 sk_release_kernel +EXPORT_SYMBOL vmlinux 0xa05c03df mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xa0726a72 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0xa07a37f0 memchr +EXPORT_SYMBOL vmlinux 0xa07ed110 xz_dec_init +EXPORT_SYMBOL vmlinux 0xa09d126d writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0ba5f9b tty_do_resize +EXPORT_SYMBOL vmlinux 0xa0c0836d try_module_get +EXPORT_SYMBOL vmlinux 0xa0cddaf0 generic_fillattr +EXPORT_SYMBOL vmlinux 0xa0ceef51 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0ed0420 agp_generic_alloc_by_type +EXPORT_SYMBOL vmlinux 0xa0f085e7 noop_fsync +EXPORT_SYMBOL vmlinux 0xa0f303a3 update_time +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa0ff74d6 udp_memory_allocated +EXPORT_SYMBOL vmlinux 0xa1000c69 blk_init_tags +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa120d33c tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0xa14f3d8c ewma_add +EXPORT_SYMBOL vmlinux 0xa16c4e3f compat_mc_getsockopt +EXPORT_SYMBOL vmlinux 0xa1871de3 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0xa1941afa blk_queue_make_request +EXPORT_SYMBOL vmlinux 0xa19803e7 tcp_prot +EXPORT_SYMBOL vmlinux 0xa1b759ce fb_add_videomode +EXPORT_SYMBOL vmlinux 0xa1bc3564 irq_to_desc +EXPORT_SYMBOL vmlinux 0xa1c0e892 drop_nlink +EXPORT_SYMBOL vmlinux 0xa1c76e0a _cond_resched +EXPORT_SYMBOL vmlinux 0xa1c99385 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xa1cada22 blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0xa1df2139 agp_backend_acquire +EXPORT_SYMBOL vmlinux 0xa1f8fe75 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0xa1fa6b0e jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0xa1fca903 register_netdevice +EXPORT_SYMBOL vmlinux 0xa2026975 kobject_set_name +EXPORT_SYMBOL vmlinux 0xa202a8e5 kmalloc_order_trace +EXPORT_SYMBOL vmlinux 0xa2088576 jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0xa20af7cf tty_port_put +EXPORT_SYMBOL vmlinux 0xa20ce1b8 net_msg_warn +EXPORT_SYMBOL vmlinux 0xa2151462 blk_mq_alloc_reserved_request +EXPORT_SYMBOL vmlinux 0xa22d97df generic_ro_fops +EXPORT_SYMBOL vmlinux 0xa237418f seq_lseek +EXPORT_SYMBOL vmlinux 0xa24ad3f1 neigh_connected_output +EXPORT_SYMBOL vmlinux 0xa26b54b6 __scm_send +EXPORT_SYMBOL vmlinux 0xa27d0752 dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0xa2848c50 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0xa2866cd9 security_path_truncate +EXPORT_SYMBOL vmlinux 0xa28a2ace ipmi_set_gets_events +EXPORT_SYMBOL vmlinux 0xa2a98b91 ipmi_get_maintenance_mode +EXPORT_SYMBOL vmlinux 0xa2bbed37 crash_shutdown_register +EXPORT_SYMBOL vmlinux 0xa2c955b4 tty_throttle +EXPORT_SYMBOL vmlinux 0xa2d80df8 inet6_release +EXPORT_SYMBOL vmlinux 0xa2ef34d7 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xa2f83839 ppp_dev_name +EXPORT_SYMBOL vmlinux 0xa303d1ff dm_ratelimit_state +EXPORT_SYMBOL vmlinux 0xa315d1fd nobh_write_end +EXPORT_SYMBOL vmlinux 0xa3225eb1 try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0xa32c5782 pci_get_subsys +EXPORT_SYMBOL vmlinux 0xa332464a of_get_cpu_node +EXPORT_SYMBOL vmlinux 0xa3352fb9 kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0xa343ad05 i2c_use_client +EXPORT_SYMBOL vmlinux 0xa35de80f ipv4_config +EXPORT_SYMBOL vmlinux 0xa3787343 override_creds +EXPORT_SYMBOL vmlinux 0xa38a2319 ip6_expire_frag_queue +EXPORT_SYMBOL vmlinux 0xa38f738f simple_getattr +EXPORT_SYMBOL vmlinux 0xa39017bf tty_port_hangup +EXPORT_SYMBOL vmlinux 0xa3960212 ipmi_register_smi +EXPORT_SYMBOL vmlinux 0xa39b4cf2 udelay +EXPORT_SYMBOL vmlinux 0xa3abc422 abort_exclusive_wait +EXPORT_SYMBOL vmlinux 0xa3fc3d50 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0xa400159f crc32_be +EXPORT_SYMBOL vmlinux 0xa40f6143 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0xa422193e fb_find_mode +EXPORT_SYMBOL vmlinux 0xa4511467 crc16 +EXPORT_SYMBOL vmlinux 0xa458213e bio_advance +EXPORT_SYMBOL vmlinux 0xa4701e9e timekeeping_inject_offset +EXPORT_SYMBOL vmlinux 0xa47c5c8c sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0xa47e5b35 flex_array_free +EXPORT_SYMBOL vmlinux 0xa49b448d input_unregister_device +EXPORT_SYMBOL vmlinux 0xa49f48d6 ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0xa4a1c6ea agp_collect_device_status +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa4bdd447 __cputime_clockt_factor +EXPORT_SYMBOL vmlinux 0xa4c671c4 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0xa4c6a1a7 mach_pseries +EXPORT_SYMBOL vmlinux 0xa4c87486 seq_vprintf +EXPORT_SYMBOL vmlinux 0xa4d0adf6 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0xa4d2a59b input_unregister_handler +EXPORT_SYMBOL vmlinux 0xa4d4f0e6 global_cache_flush +EXPORT_SYMBOL vmlinux 0xa4e08b6d udp_add_offload +EXPORT_SYMBOL vmlinux 0xa4e3a922 srp_rport_put +EXPORT_SYMBOL vmlinux 0xa4e73777 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0xa4ea563d end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0xa503896a __page_symlink +EXPORT_SYMBOL vmlinux 0xa50a111e inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0xa50d691b rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0xa511a339 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0xa534d1f9 tcp_init_sock +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa55c6830 register_sysctl_table +EXPORT_SYMBOL vmlinux 0xa57cd173 scsi_adjust_queue_depth +EXPORT_SYMBOL vmlinux 0xa587ede2 devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0xa59885e0 dev_uc_init +EXPORT_SYMBOL vmlinux 0xa598e29c vesa_modes +EXPORT_SYMBOL vmlinux 0xa5a09acf setup_new_exec +EXPORT_SYMBOL vmlinux 0xa5ac053b i8042_check_port_owner +EXPORT_SYMBOL vmlinux 0xa5bab8af generic_file_aio_read +EXPORT_SYMBOL vmlinux 0xa5cd62a2 dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0xa5f811e0 icmpv6_send +EXPORT_SYMBOL vmlinux 0xa606e6ab dev_uc_del +EXPORT_SYMBOL vmlinux 0xa608ee8c mutex_trylock +EXPORT_SYMBOL vmlinux 0xa631df8a cpu_possible_mask +EXPORT_SYMBOL vmlinux 0xa631eaaf jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0xa6332300 dquot_file_open +EXPORT_SYMBOL vmlinux 0xa63a2f9b param_get_ulong +EXPORT_SYMBOL vmlinux 0xa63d85ab slhc_remember +EXPORT_SYMBOL vmlinux 0xa643aa2f netif_device_attach +EXPORT_SYMBOL vmlinux 0xa65972b8 _memcpy_toio +EXPORT_SYMBOL vmlinux 0xa6715115 do_settimeofday +EXPORT_SYMBOL vmlinux 0xa675804c utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6b68de0 pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0xa6be7180 ibmebus_unregister_driver +EXPORT_SYMBOL vmlinux 0xa6d19491 xfrm_state_update +EXPORT_SYMBOL vmlinux 0xa6f970b5 ide_dma_off_quietly +EXPORT_SYMBOL vmlinux 0xa6fc3811 tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0xa71e4df5 misc_register +EXPORT_SYMBOL vmlinux 0xa720678c lg_global_lock +EXPORT_SYMBOL vmlinux 0xa723388e fget +EXPORT_SYMBOL vmlinux 0xa72a0f5b nr_online_nodes +EXPORT_SYMBOL vmlinux 0xa735db59 prandom_u32 +EXPORT_SYMBOL vmlinux 0xa73fc98f of_n_addr_cells +EXPORT_SYMBOL vmlinux 0xa761cabc node_data +EXPORT_SYMBOL vmlinux 0xa767c6dd bdevname +EXPORT_SYMBOL vmlinux 0xa77bf5a1 dev_disable_lro +EXPORT_SYMBOL vmlinux 0xa7903980 blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0xa7a3c439 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0xa7a7af19 ip_check_defrag +EXPORT_SYMBOL vmlinux 0xa7b2f137 md_integrity_register +EXPORT_SYMBOL vmlinux 0xa7c7eefd seq_printf +EXPORT_SYMBOL vmlinux 0xa80219b6 kobject_add +EXPORT_SYMBOL vmlinux 0xa8232c78 strtobool +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa8441808 genlmsg_put +EXPORT_SYMBOL vmlinux 0xa846b9c6 giveup_fpu +EXPORT_SYMBOL vmlinux 0xa847c4f4 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0xa86cfa76 netdev_master_upper_dev_link_private +EXPORT_SYMBOL vmlinux 0xa8721b97 system_state +EXPORT_SYMBOL vmlinux 0xa8739c35 fb_set_cmap +EXPORT_SYMBOL vmlinux 0xa8a6f639 __check_region +EXPORT_SYMBOL vmlinux 0xa8a8cf21 security_task_getsecid +EXPORT_SYMBOL vmlinux 0xa8b450a3 inode_claim_rsv_space +EXPORT_SYMBOL vmlinux 0xa8cd2710 key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0xa8fef7bb security_unix_may_send +EXPORT_SYMBOL vmlinux 0xa916b694 strnlen +EXPORT_SYMBOL vmlinux 0xa9273e1a epapr_hypercall_start +EXPORT_SYMBOL vmlinux 0xa93ba88e proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0xa9542fcb file_update_time +EXPORT_SYMBOL vmlinux 0xa981fa2d iov_iter_fault_in_readable +EXPORT_SYMBOL vmlinux 0xa9aeaa7a atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0xa9b09c2b skb_put +EXPORT_SYMBOL vmlinux 0xa9b511ae pcie_capability_clear_and_set_word +EXPORT_SYMBOL vmlinux 0xa9b63345 of_parse_phandle_with_fixed_args +EXPORT_SYMBOL vmlinux 0xa9b83c4a posix_lock_file_wait +EXPORT_SYMBOL vmlinux 0xa9ec7ad3 blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0xaa0073b7 __net_get_random_once +EXPORT_SYMBOL vmlinux 0xaa05039f tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0xaa46e87e lg_local_unlock +EXPORT_SYMBOL vmlinux 0xaa4bcf3b fsnotify_put_mark +EXPORT_SYMBOL vmlinux 0xaa53babd xfrm_register_km +EXPORT_SYMBOL vmlinux 0xaa55e93d proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0xaa57acdc dqput +EXPORT_SYMBOL vmlinux 0xaa6e4df5 _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0xaa760585 sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0xaa7b0ab7 do_SAK +EXPORT_SYMBOL vmlinux 0xaa9087c0 param_ops_string +EXPORT_SYMBOL vmlinux 0xaa99d950 sock_i_ino +EXPORT_SYMBOL vmlinux 0xaabb6746 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0xaad7b39f dev_kfree_skb_irq +EXPORT_SYMBOL vmlinux 0xaadef7bb tty_unregister_driver +EXPORT_SYMBOL vmlinux 0xaae848c9 pcim_iomap +EXPORT_SYMBOL vmlinux 0xaaf16a59 eth_validate_addr +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xaafebe9f fbcon_set_rotate +EXPORT_SYMBOL vmlinux 0xab206335 dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0xab391cd0 sk_filter +EXPORT_SYMBOL vmlinux 0xab6bde28 sysctl_max_syn_backlog +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab93b0ca set_bh_page +EXPORT_SYMBOL vmlinux 0xab98b481 of_device_register +EXPORT_SYMBOL vmlinux 0xab9fa750 set_disk_ro +EXPORT_SYMBOL vmlinux 0xaba63ab6 generic_file_direct_write +EXPORT_SYMBOL vmlinux 0xabab549d consume_skb +EXPORT_SYMBOL vmlinux 0xabb7b50d phy_drivers_register +EXPORT_SYMBOL vmlinux 0xabc6dd63 cpufreq_sysfs_create_file +EXPORT_SYMBOL vmlinux 0xabc83058 mem_cgroup_subsys +EXPORT_SYMBOL vmlinux 0xabcaa577 free_anon_bdev +EXPORT_SYMBOL vmlinux 0xabcd5490 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0xabcd6a8d elevator_alloc +EXPORT_SYMBOL vmlinux 0xabd0c91c rtc_time_to_tm +EXPORT_SYMBOL vmlinux 0xabd116fa address_space_init_once +EXPORT_SYMBOL vmlinux 0xac0909df ptp_clock_event +EXPORT_SYMBOL vmlinux 0xac0ba8c1 blk_iopoll_disable +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac23de57 mdiobus_free +EXPORT_SYMBOL vmlinux 0xac26b820 _raw_write_lock +EXPORT_SYMBOL vmlinux 0xac7f8a29 __ps2_command +EXPORT_SYMBOL vmlinux 0xaca33022 tty_port_close_end +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacb57555 dev_warn +EXPORT_SYMBOL vmlinux 0xacc5b5d2 csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0xacc9baac bio_clone_bioset +EXPORT_SYMBOL vmlinux 0xaccabc6a in4_pton +EXPORT_SYMBOL vmlinux 0xacdfa4ad empty_aops +EXPORT_SYMBOL vmlinux 0xacea9cd4 dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xad01744f kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad164875 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xad1f9a5a __dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xad204a17 pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0xad37e3a3 simple_lookup +EXPORT_SYMBOL vmlinux 0xad3fe455 make_kprojid +EXPORT_SYMBOL vmlinux 0xad46dec2 of_count_phandle_with_args +EXPORT_SYMBOL vmlinux 0xad50cebb i8253_lock +EXPORT_SYMBOL vmlinux 0xad84bef8 dm_table_event +EXPORT_SYMBOL vmlinux 0xad9dfe1d inode_init_once +EXPORT_SYMBOL vmlinux 0xadb9c749 unregister_shrinker +EXPORT_SYMBOL vmlinux 0xadbc99c2 seq_release +EXPORT_SYMBOL vmlinux 0xade02a15 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0xae1d05b9 vio_get_attribute +EXPORT_SYMBOL vmlinux 0xae32f0d3 pm860x_reg_read +EXPORT_SYMBOL vmlinux 0xae3b2b55 alloc_disk_node +EXPORT_SYMBOL vmlinux 0xae496ca4 d_prune_aliases +EXPORT_SYMBOL vmlinux 0xae4a1bda csum_tcpudp_nofold +EXPORT_SYMBOL vmlinux 0xae4e2e93 input_open_device +EXPORT_SYMBOL vmlinux 0xae545f06 _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xae729e59 security_req_classify_flow +EXPORT_SYMBOL vmlinux 0xae8dc337 remap_pfn_range +EXPORT_SYMBOL vmlinux 0xae93f684 gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0xae95151a inet_recvmsg +EXPORT_SYMBOL vmlinux 0xae9bc9f7 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0xaeb32f9d sync_blockdev +EXPORT_SYMBOL vmlinux 0xaeba7330 __napi_complete +EXPORT_SYMBOL vmlinux 0xaec50eaa pci_bus_type +EXPORT_SYMBOL vmlinux 0xaecbd5e2 ps2_init +EXPORT_SYMBOL vmlinux 0xaed534c1 jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0xaed57cdb kernel_sendpage +EXPORT_SYMBOL vmlinux 0xaee3f249 set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0xaef931cc md_finish_reshape +EXPORT_SYMBOL vmlinux 0xaf05b91b of_device_is_available +EXPORT_SYMBOL vmlinux 0xaf063510 _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0xaf08484d vmap +EXPORT_SYMBOL vmlinux 0xaf19514c vm_insert_mixed +EXPORT_SYMBOL vmlinux 0xaf2d872c prepare_to_wait +EXPORT_SYMBOL vmlinux 0xaf389e81 do_splice_direct +EXPORT_SYMBOL vmlinux 0xaf3c86f8 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf6302ae cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0xaf64ad0d zlib_deflate +EXPORT_SYMBOL vmlinux 0xaf6ae696 kstrndup +EXPORT_SYMBOL vmlinux 0xaf91d89f __kernel_param_lock +EXPORT_SYMBOL vmlinux 0xaf96d202 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0xafad493b param_ops_ushort +EXPORT_SYMBOL vmlinux 0xafb10489 pci_disable_ido +EXPORT_SYMBOL vmlinux 0xafdfafd5 give_up_console +EXPORT_SYMBOL vmlinux 0xafed9ef4 dmam_alloc_noncoherent +EXPORT_SYMBOL vmlinux 0xafff3d1d mempool_alloc +EXPORT_SYMBOL vmlinux 0xb011dfc8 thaw_super +EXPORT_SYMBOL vmlinux 0xb01d69e8 would_dump +EXPORT_SYMBOL vmlinux 0xb036ab0c __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb06939a9 scsi_free_host_dev +EXPORT_SYMBOL vmlinux 0xb078d818 unregister_netdev +EXPORT_SYMBOL vmlinux 0xb081cc3b tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0xb08a5b7a __invalidate_device +EXPORT_SYMBOL vmlinux 0xb096efd4 sync_inode_metadata +EXPORT_SYMBOL vmlinux 0xb099a0f7 irq_set_chip +EXPORT_SYMBOL vmlinux 0xb0a6b8e0 vm_mmap +EXPORT_SYMBOL vmlinux 0xb0b847ac __bitmap_full +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0e209eb __inet6_hash +EXPORT_SYMBOL vmlinux 0xb0fa5918 tcf_hash_search +EXPORT_SYMBOL vmlinux 0xb0ffda2f blk_limits_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xb104ca48 uart_add_one_port +EXPORT_SYMBOL vmlinux 0xb1173d4c __getblk +EXPORT_SYMBOL vmlinux 0xb119b437 devfreq_add_device +EXPORT_SYMBOL vmlinux 0xb12161ee tty_free_termios +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb147a855 dql_reset +EXPORT_SYMBOL vmlinux 0xb1570582 cdev_alloc +EXPORT_SYMBOL vmlinux 0xb157224f agp_generic_enable +EXPORT_SYMBOL vmlinux 0xb15bd8fa tb_ticks_per_sec +EXPORT_SYMBOL vmlinux 0xb1645a2e sg_free_table +EXPORT_SYMBOL vmlinux 0xb165ef45 __irq_regs +EXPORT_SYMBOL vmlinux 0xb168e27f netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0xb1897a2c blk_start_queue +EXPORT_SYMBOL vmlinux 0xb18f3f06 ide_xfer_verbose +EXPORT_SYMBOL vmlinux 0xb19760c3 bitmap_onto +EXPORT_SYMBOL vmlinux 0xb1a6b708 dquot_release +EXPORT_SYMBOL vmlinux 0xb1b159e5 unlock_new_inode +EXPORT_SYMBOL vmlinux 0xb1b16777 mutex_lock +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1c6e787 wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0xb1cf44df fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xb1d16af3 pagecache_write_end +EXPORT_SYMBOL vmlinux 0xb1db9e4e param_get_invbool +EXPORT_SYMBOL vmlinux 0xb1fd874f padata_set_cpumask +EXPORT_SYMBOL vmlinux 0xb211e2c5 generic_pipe_buf_map +EXPORT_SYMBOL vmlinux 0xb2600b56 udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0xb2682405 utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0xb27eebf9 kill_pgrp +EXPORT_SYMBOL vmlinux 0xb2a4d287 scsi_prep_return +EXPORT_SYMBOL vmlinux 0xb2be6e92 netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xb2c0880c gen10g_config_aneg +EXPORT_SYMBOL vmlinux 0xb2d0398f inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0xb2d768c2 padata_set_cpumasks +EXPORT_SYMBOL vmlinux 0xb2e34e2e from_kprojid +EXPORT_SYMBOL vmlinux 0xb2f0d392 input_unregister_handle +EXPORT_SYMBOL vmlinux 0xb304acff ida_get_new_above +EXPORT_SYMBOL vmlinux 0xb326ec84 tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0xb34f6d4d ata_link_printk +EXPORT_SYMBOL vmlinux 0xb353b8b2 ibmebus_register_driver +EXPORT_SYMBOL vmlinux 0xb383e293 flex_array_clear +EXPORT_SYMBOL vmlinux 0xb39f6f7c netpoll_rx_enable +EXPORT_SYMBOL vmlinux 0xb3a4766f md_error +EXPORT_SYMBOL vmlinux 0xb3b714be flush_old_exec +EXPORT_SYMBOL vmlinux 0xb3cc2728 compat_ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0xb3d4dd20 serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0xb3da561e ide_dma_off +EXPORT_SYMBOL vmlinux 0xb3f049f2 flush_signals +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb42930e2 net_dma_find_channel +EXPORT_SYMBOL vmlinux 0xb440b7e7 dquot_commit +EXPORT_SYMBOL vmlinux 0xb44495d7 blk_integrity_compare +EXPORT_SYMBOL vmlinux 0xb44777c0 mmc_read_bkops_status +EXPORT_SYMBOL vmlinux 0xb44e6bf2 mark_info_dirty +EXPORT_SYMBOL vmlinux 0xb4507b77 unregister_qdisc +EXPORT_SYMBOL vmlinux 0xb4531223 key_unlink +EXPORT_SYMBOL vmlinux 0xb4709322 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0xb47189b5 reservation_ww_class +EXPORT_SYMBOL vmlinux 0xb472e098 noop_llseek +EXPORT_SYMBOL vmlinux 0xb47d797d inode_dio_done +EXPORT_SYMBOL vmlinux 0xb4945341 jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0xb49b80e7 phy_connect_direct +EXPORT_SYMBOL vmlinux 0xb4ae3b0a tcp_ioctl +EXPORT_SYMBOL vmlinux 0xb4ee947d bio_pair_release +EXPORT_SYMBOL vmlinux 0xb4eeb0e5 unlock_buffer +EXPORT_SYMBOL vmlinux 0xb5062bd9 input_allocate_device +EXPORT_SYMBOL vmlinux 0xb521307a writeback_in_progress +EXPORT_SYMBOL vmlinux 0xb5215f1d blk_get_queue +EXPORT_SYMBOL vmlinux 0xb53becfa block_truncate_page +EXPORT_SYMBOL vmlinux 0xb54533f7 usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xb54fb17a iterate_dir +EXPORT_SYMBOL vmlinux 0xb5574b86 mdiobus_write +EXPORT_SYMBOL vmlinux 0xb55e1017 lookup_one_len +EXPORT_SYMBOL vmlinux 0xb57343c2 frontswap_shrink +EXPORT_SYMBOL vmlinux 0xb57b52c8 blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0xb57f2457 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0xb5868f35 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0xb58d9fe2 phy_device_register +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5b1cc26 vio_enable_interrupts +EXPORT_SYMBOL vmlinux 0xb5ca1c46 slhc_free +EXPORT_SYMBOL vmlinux 0xb5d1f739 dev_remove_pack +EXPORT_SYMBOL vmlinux 0xb5e2d077 tty_unregister_device +EXPORT_SYMBOL vmlinux 0xb5fedc5d md_done_sync +EXPORT_SYMBOL vmlinux 0xb619e735 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0xb6244511 sg_init_one +EXPORT_SYMBOL vmlinux 0xb634b909 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0xb6394d4b param_set_bint +EXPORT_SYMBOL vmlinux 0xb6540927 netdev_lower_dev_get_private_rcu +EXPORT_SYMBOL vmlinux 0xb661804b fb_validate_mode +EXPORT_SYMBOL vmlinux 0xb66df404 block_write_end +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb6822a33 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0xb68bfa9d node_states +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb6a68816 find_last_bit +EXPORT_SYMBOL vmlinux 0xb6b46a7c param_ops_int +EXPORT_SYMBOL vmlinux 0xb6c5a973 scsi_show_result +EXPORT_SYMBOL vmlinux 0xb6d0afe8 mmc_start_bkops +EXPORT_SYMBOL vmlinux 0xb6d2a524 dma_common_get_sgtable +EXPORT_SYMBOL vmlinux 0xb6d76aad vfs_mknod +EXPORT_SYMBOL vmlinux 0xb6ecdcfa sock_edemux +EXPORT_SYMBOL vmlinux 0xb6f2519f serio_reconnect +EXPORT_SYMBOL vmlinux 0xb6fc32c9 mfd_add_devices +EXPORT_SYMBOL vmlinux 0xb70092ae xfrm_register_mode +EXPORT_SYMBOL vmlinux 0xb7082cb7 kernel_setsockopt +EXPORT_SYMBOL vmlinux 0xb7171393 devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0xb73e49a6 load_nls_default +EXPORT_SYMBOL vmlinux 0xb7478e42 spi_release_transport +EXPORT_SYMBOL vmlinux 0xb75b790d tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0xb77131b1 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0xb784e9d9 writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0xb79aabe6 copy_strings_kernel +EXPORT_SYMBOL vmlinux 0xb7bb035f set_anon_super +EXPORT_SYMBOL vmlinux 0xb7ccc997 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0xb7ebb038 sb_set_blocksize +EXPORT_SYMBOL vmlinux 0xb7f7693f sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0xb7fa8187 kdb_current_task +EXPORT_SYMBOL vmlinux 0xb806243f __cleancache_init_shared_fs +EXPORT_SYMBOL vmlinux 0xb82069bd alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0xb8244889 dev_set_mtu +EXPORT_SYMBOL vmlinux 0xb835b3e4 radix_tree_prev_hole +EXPORT_SYMBOL vmlinux 0xb836fbc1 open_exec +EXPORT_SYMBOL vmlinux 0xb83cd3f5 pci_dev_driver +EXPORT_SYMBOL vmlinux 0xb8681f85 unregister_console +EXPORT_SYMBOL vmlinux 0xb8726be3 tcp_syn_flood_action +EXPORT_SYMBOL vmlinux 0xb873c69c ip_route_me_harder +EXPORT_SYMBOL vmlinux 0xb874b87a __clzsi2 +EXPORT_SYMBOL vmlinux 0xb87eac7f sk_reset_timer +EXPORT_SYMBOL vmlinux 0xb896d485 iget_failed +EXPORT_SYMBOL vmlinux 0xb89cd549 account_page_dirtied +EXPORT_SYMBOL vmlinux 0xb8d73e97 param_set_uint +EXPORT_SYMBOL vmlinux 0xb8f73237 dcb_setapp +EXPORT_SYMBOL vmlinux 0xb9094684 d_alloc +EXPORT_SYMBOL vmlinux 0xb90c480f iunique +EXPORT_SYMBOL vmlinux 0xb928f430 elevator_init +EXPORT_SYMBOL vmlinux 0xb93812aa pci_request_region +EXPORT_SYMBOL vmlinux 0xb94d8982 audit_log +EXPORT_SYMBOL vmlinux 0xb95313f5 iget_locked +EXPORT_SYMBOL vmlinux 0xb962d104 __get_page_tail +EXPORT_SYMBOL vmlinux 0xb9685c83 skb_append +EXPORT_SYMBOL vmlinux 0xb976c6ae mpage_writepages +EXPORT_SYMBOL vmlinux 0xb9861e74 sock_create_kern +EXPORT_SYMBOL vmlinux 0xb98a0185 rtc_tm_to_time +EXPORT_SYMBOL vmlinux 0xb9b4e181 alloc_pages_exact_nid +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xb9fbd558 vm_iomap_memory +EXPORT_SYMBOL vmlinux 0xba041da8 __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0xba0dc560 input_register_handler +EXPORT_SYMBOL vmlinux 0xba241e09 ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0xba3130f8 netdev_info +EXPORT_SYMBOL vmlinux 0xba31791d register_cdrom +EXPORT_SYMBOL vmlinux 0xba3ec116 vga_client_register +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba609ddd serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0xba73a8fc __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0xba76ecd4 netpoll_cleanup +EXPORT_SYMBOL vmlinux 0xba7958ca fbcon_rotate_ccw +EXPORT_SYMBOL vmlinux 0xba93e565 mdiobus_scan +EXPORT_SYMBOL vmlinux 0xba95d097 unregister_nls +EXPORT_SYMBOL vmlinux 0xba97ccc0 tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0xba9c55ef pci_map_rom +EXPORT_SYMBOL vmlinux 0xba9fb48b tcp_poll +EXPORT_SYMBOL vmlinux 0xbad67e31 qdisc_reset +EXPORT_SYMBOL vmlinux 0xbad6be86 is_bad_inode +EXPORT_SYMBOL vmlinux 0xbae87872 udp_lib_rehash +EXPORT_SYMBOL vmlinux 0xbb0295fb uart_resume_port +EXPORT_SYMBOL vmlinux 0xbb189cad disallow_signal +EXPORT_SYMBOL vmlinux 0xbb1bc800 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0xbb1f0cbf blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0xbb31dc60 stop_tty +EXPORT_SYMBOL vmlinux 0xbb4eb1f3 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0xbb4f4766 simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0xbb5d343d xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xbb626b56 zerocopy_sg_from_iovec +EXPORT_SYMBOL vmlinux 0xbb713e6d sk_filter_release_rcu +EXPORT_SYMBOL vmlinux 0xbb80d1fe arp_send +EXPORT_SYMBOL vmlinux 0xbb99125c get_default_font +EXPORT_SYMBOL vmlinux 0xbbaeb559 memcg_socket_limit_enabled +EXPORT_SYMBOL vmlinux 0xbbb6b412 unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0xbbbd9a93 blk_alloc_queue_node +EXPORT_SYMBOL vmlinux 0xbbe3c9ab dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0xbc106fd5 ata_port_printk +EXPORT_SYMBOL vmlinux 0xbc316de4 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0xbc3f6afa down_read +EXPORT_SYMBOL vmlinux 0xbc475bf9 ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0xbc9f0b5c gen_pool_add_virt +EXPORT_SYMBOL vmlinux 0xbcafbee4 kern_path_create +EXPORT_SYMBOL vmlinux 0xbcb7003e kernel_getpeername +EXPORT_SYMBOL vmlinux 0xbcbbde08 of_mdio_find_bus +EXPORT_SYMBOL vmlinux 0xbcc308bb strnlen_user +EXPORT_SYMBOL vmlinux 0xbcd04efb netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0xbcdedba7 of_get_mac_address +EXPORT_SYMBOL vmlinux 0xbcdf2bab __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xbced14bd lease_modify +EXPORT_SYMBOL vmlinux 0xbcf150f9 xor_altivec_5 +EXPORT_SYMBOL vmlinux 0xbd203cfb ftrace_print_flags_seq +EXPORT_SYMBOL vmlinux 0xbd24fa77 ppp_channel_index +EXPORT_SYMBOL vmlinux 0xbd402d54 test_set_page_writeback +EXPORT_SYMBOL vmlinux 0xbd462b55 __kfifo_init +EXPORT_SYMBOL vmlinux 0xbd4bb961 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xbd5029e4 follow_down +EXPORT_SYMBOL vmlinux 0xbd6d9d7f netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0xbdef0c05 blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0xbe0b00ba request_firmware_nowait +EXPORT_SYMBOL vmlinux 0xbe289ce2 d_find_any_alias +EXPORT_SYMBOL vmlinux 0xbe404306 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0xbe68c806 inc_nlink +EXPORT_SYMBOL vmlinux 0xbe734443 inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0xbe75cbe6 proc_symlink +EXPORT_SYMBOL vmlinux 0xbe77aebe down_write_trylock +EXPORT_SYMBOL vmlinux 0xbe7bea7c no_llseek +EXPORT_SYMBOL vmlinux 0xbe8cefae starget_for_each_device +EXPORT_SYMBOL vmlinux 0xbe931475 create_syslog_header +EXPORT_SYMBOL vmlinux 0xbe975ebd serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0xbec25473 of_parse_phandle +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbef5cb9e __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0xbf09997a jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0xbf13545d sock_no_getname +EXPORT_SYMBOL vmlinux 0xbf32271d try_to_release_page +EXPORT_SYMBOL vmlinux 0xbf347be5 agp_backend_release +EXPORT_SYMBOL vmlinux 0xbf7b49df tty_port_close_start +EXPORT_SYMBOL vmlinux 0xbf7fd2f5 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0xbf8ba54a vprintk +EXPORT_SYMBOL vmlinux 0xbf9930b2 phy_print_status +EXPORT_SYMBOL vmlinux 0xbf9bcc8d __cap_empty_set +EXPORT_SYMBOL vmlinux 0xbfa8581b kfree_skb +EXPORT_SYMBOL vmlinux 0xbfabfe59 __debugger_iabr_match +EXPORT_SYMBOL vmlinux 0xbfb4cc4d xfrm_lookup +EXPORT_SYMBOL vmlinux 0xbfb8b0b7 _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0xbfbaa02d init_task +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfee3ad5 loop_unregister_transfer +EXPORT_SYMBOL vmlinux 0xbff8182c plpar_hcall_norets +EXPORT_SYMBOL vmlinux 0xc01cc1c5 __f_setown +EXPORT_SYMBOL vmlinux 0xc0589381 inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0xc0661cd6 of_phy_connect_fixed_link +EXPORT_SYMBOL vmlinux 0xc06ddb14 ip_ct_attach +EXPORT_SYMBOL vmlinux 0xc087bd86 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0xc0a3d105 find_next_bit +EXPORT_SYMBOL vmlinux 0xc0a9e81d sock_no_mmap +EXPORT_SYMBOL vmlinux 0xc0b8ad0a d_lookup +EXPORT_SYMBOL vmlinux 0xc103e1f6 eth_header_cache +EXPORT_SYMBOL vmlinux 0xc103fca5 ide_complete_rq +EXPORT_SYMBOL vmlinux 0xc14073b8 dump_skip +EXPORT_SYMBOL vmlinux 0xc17a5d98 pipe_unlock +EXPORT_SYMBOL vmlinux 0xc17eed69 block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0xc190d8ae padata_unregister_cpumask_notifier +EXPORT_SYMBOL vmlinux 0xc1a74324 inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0xc1b48ae6 ipmi_smi_watcher_register +EXPORT_SYMBOL vmlinux 0xc1b65096 security_path_chown +EXPORT_SYMBOL vmlinux 0xc1c2dd09 __hw_addr_flush +EXPORT_SYMBOL vmlinux 0xc23831c6 filemap_flush +EXPORT_SYMBOL vmlinux 0xc2424641 agp3_generic_cleanup +EXPORT_SYMBOL vmlinux 0xc24271cb gen_pool_alloc +EXPORT_SYMBOL vmlinux 0xc2433ded blk_mq_free_single_hw_queue +EXPORT_SYMBOL vmlinux 0xc256e762 __bitmap_equal +EXPORT_SYMBOL vmlinux 0xc2592d7b scsi_cmd_get_serial +EXPORT_SYMBOL vmlinux 0xc28b13b0 xfrm6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xc29bf967 strspn +EXPORT_SYMBOL vmlinux 0xc2aea2c6 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0xc2c80ae2 revalidate_disk +EXPORT_SYMBOL vmlinux 0xc2cb794e phy_attach_direct +EXPORT_SYMBOL vmlinux 0xc2cef3cd igrab +EXPORT_SYMBOL vmlinux 0xc2d9b2f1 skb_copy_and_csum_datagram_iovec +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2f53712 pci_set_dma_seg_boundary +EXPORT_SYMBOL vmlinux 0xc2f9c045 timespec_to_jiffies +EXPORT_SYMBOL vmlinux 0xc3010902 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0xc3079d57 inet_twsk_deschedule +EXPORT_SYMBOL vmlinux 0xc310b981 strnstr +EXPORT_SYMBOL vmlinux 0xc314c3d2 __cputime_jiffies_factor +EXPORT_SYMBOL vmlinux 0xc32987f4 tty_port_init +EXPORT_SYMBOL vmlinux 0xc32da4ab __find_get_block +EXPORT_SYMBOL vmlinux 0xc341699a input_reset_device +EXPORT_SYMBOL vmlinux 0xc3511eaf xfrm6_rcv +EXPORT_SYMBOL vmlinux 0xc35f53e0 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0xc36c5728 mmc_interrupt_hpi +EXPORT_SYMBOL vmlinux 0xc37a40be i2c_transfer +EXPORT_SYMBOL vmlinux 0xc3bdb41d mmc_flush_cache +EXPORT_SYMBOL vmlinux 0xc3bf48b5 __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0xc3ce24dd input_inject_event +EXPORT_SYMBOL vmlinux 0xc3f218ee srp_start_tl_fail_timers +EXPORT_SYMBOL vmlinux 0xc42d9b6c d_alloc_name +EXPORT_SYMBOL vmlinux 0xc459df0f blk_peek_request +EXPORT_SYMBOL vmlinux 0xc46cdd73 bio_phys_segments +EXPORT_SYMBOL vmlinux 0xc47cdf9c _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0xc48307db lz4_decompress +EXPORT_SYMBOL vmlinux 0xc499ae1e kstrdup +EXPORT_SYMBOL vmlinux 0xc49d0495 input_set_keycode +EXPORT_SYMBOL vmlinux 0xc49e6d2c mmc_wait_for_app_cmd +EXPORT_SYMBOL vmlinux 0xc4d28ce6 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xc4d912b0 flex_array_prealloc +EXPORT_SYMBOL vmlinux 0xc4df6679 jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0xc523a94e pci_lost_interrupt +EXPORT_SYMBOL vmlinux 0xc53833e3 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0xc5534d64 ioread16 +EXPORT_SYMBOL vmlinux 0xc55c2a9d inode_sb_list_lock +EXPORT_SYMBOL vmlinux 0xc55de23c percpu_counter_set +EXPORT_SYMBOL vmlinux 0xc565cdc9 __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xc56cbae5 dcache_dir_open +EXPORT_SYMBOL vmlinux 0xc581c5b6 serial8250_do_pm +EXPORT_SYMBOL vmlinux 0xc589e044 param_set_long +EXPORT_SYMBOL vmlinux 0xc5be3901 handle_edge_irq +EXPORT_SYMBOL vmlinux 0xc5d9c46c agp_try_unsupported_boot +EXPORT_SYMBOL vmlinux 0xc5e6809a write_one_page +EXPORT_SYMBOL vmlinux 0xc5fb44a6 jbd2_journal_file_inode +EXPORT_SYMBOL vmlinux 0xc5fdef94 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xc600a318 of_get_ddr_timings +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc63177c6 read_dev_sector +EXPORT_SYMBOL vmlinux 0xc638351e textsearch_register +EXPORT_SYMBOL vmlinux 0xc646896d of_platform_bus_probe +EXPORT_SYMBOL vmlinux 0xc64ee16c __ethtool_get_settings +EXPORT_SYMBOL vmlinux 0xc65abeb7 agp3_generic_sizes +EXPORT_SYMBOL vmlinux 0xc663b075 __ioremap +EXPORT_SYMBOL vmlinux 0xc665d6d7 of_parse_phandle_with_args +EXPORT_SYMBOL vmlinux 0xc666a132 crc_t10dif +EXPORT_SYMBOL vmlinux 0xc6774da5 cpu_online_mask +EXPORT_SYMBOL vmlinux 0xc67aef86 simple_statfs +EXPORT_SYMBOL vmlinux 0xc6b22c71 __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0xc6c7ac03 locks_init_lock +EXPORT_SYMBOL vmlinux 0xc6c81ef9 phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0xc6cb465a __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6d3a349 con_is_bound +EXPORT_SYMBOL vmlinux 0xc6e8165f simple_transaction_set +EXPORT_SYMBOL vmlinux 0xc6f3fc4c scsi_is_target_device +EXPORT_SYMBOL vmlinux 0xc6f6ab09 abort_creds +EXPORT_SYMBOL vmlinux 0xc702c348 find_get_page +EXPORT_SYMBOL vmlinux 0xc70e7560 pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0xc713d74c skb_pull +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc7729642 of_match_device +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc785b8e7 cfb_imageblit +EXPORT_SYMBOL vmlinux 0xc79066e4 release_sock +EXPORT_SYMBOL vmlinux 0xc79bcd36 dm_vcalloc +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7bd47cb ping_prot +EXPORT_SYMBOL vmlinux 0xc7eb8473 __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0xc7f8a8ad gen10g_config_advert +EXPORT_SYMBOL vmlinux 0xc7fc3f3a dquot_quota_off +EXPORT_SYMBOL vmlinux 0xc80a45af scsicam_bios_param +EXPORT_SYMBOL vmlinux 0xc8277c33 dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0xc82c97dc __neigh_event_send +EXPORT_SYMBOL vmlinux 0xc8305f15 blkdev_put +EXPORT_SYMBOL vmlinux 0xc83b4d5b posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0xc83d872f pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc84a986a generic_block_fiemap +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc897c382 sg_init_table +EXPORT_SYMBOL vmlinux 0xc8a20b60 pps_lookup_dev +EXPORT_SYMBOL vmlinux 0xc8b57c27 autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xc8ec5a05 ip_options_compile +EXPORT_SYMBOL vmlinux 0xc8fd727e mod_timer +EXPORT_SYMBOL vmlinux 0xc90fe318 input_grab_device +EXPORT_SYMBOL vmlinux 0xc9197651 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0xc91fc122 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0xc91ff664 down_read_trylock +EXPORT_SYMBOL vmlinux 0xc929691b tty_lock_pair +EXPORT_SYMBOL vmlinux 0xc9390df0 bitmap_unplug +EXPORT_SYMBOL vmlinux 0xc93fbc54 wait_for_completion_io +EXPORT_SYMBOL vmlinux 0xc9415966 tcf_register_action +EXPORT_SYMBOL vmlinux 0xc94f3ba6 bdget_disk +EXPORT_SYMBOL vmlinux 0xc952ac9f tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0xc95cf957 init_net +EXPORT_SYMBOL vmlinux 0xc95e8334 vio_register_device_node +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc978479a xz_dec_run +EXPORT_SYMBOL vmlinux 0xc97b549e agp_alloc_bridge +EXPORT_SYMBOL vmlinux 0xc97ffd51 dev_addr_del +EXPORT_SYMBOL vmlinux 0xc98f90a1 kernel_getsockname +EXPORT_SYMBOL vmlinux 0xc9993f54 elv_rb_former_request +EXPORT_SYMBOL vmlinux 0xc9a7e3e7 blk_stack_limits +EXPORT_SYMBOL vmlinux 0xc9babc29 filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0xc9cbb91c read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0xca39f313 nf_setsockopt +EXPORT_SYMBOL vmlinux 0xca3b28c6 store_vr_state +EXPORT_SYMBOL vmlinux 0xca4053ec dev_add_pack +EXPORT_SYMBOL vmlinux 0xca5dbc50 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xca645267 scsi_target_resume +EXPORT_SYMBOL vmlinux 0xca82ecee abx500_remove_ops +EXPORT_SYMBOL vmlinux 0xca8d28e1 blk_queue_merge_bvec +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xca99c0b8 dev_change_carrier +EXPORT_SYMBOL vmlinux 0xcab0572b pm860x_reg_write +EXPORT_SYMBOL vmlinux 0xcabb1cee inode_sub_rsv_space +EXPORT_SYMBOL vmlinux 0xcace414a xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0xcaf356ad agp_bind_memory +EXPORT_SYMBOL vmlinux 0xcafad6aa ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0xcafe509e agp_generic_type_to_mask_type +EXPORT_SYMBOL vmlinux 0xcb0022d4 agp_enable +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb0c5d50 param_get_uint +EXPORT_SYMBOL vmlinux 0xcb15b7b4 devm_ioremap +EXPORT_SYMBOL vmlinux 0xcb3e0fa8 flush_dcache_page +EXPORT_SYMBOL vmlinux 0xcb8a326a proto_register +EXPORT_SYMBOL vmlinux 0xcbbf0a6f audit_log_task_context +EXPORT_SYMBOL vmlinux 0xcbc0c366 dev_addr_add_multiple +EXPORT_SYMBOL vmlinux 0xcbc9557f unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0xcbdaba82 blk_recount_segments +EXPORT_SYMBOL vmlinux 0xcbffbae1 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0xcc17504d _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xcc1d28de phy_attach +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc2fe109 commit_creds +EXPORT_SYMBOL vmlinux 0xcc33dbc2 inet_add_offload +EXPORT_SYMBOL vmlinux 0xcc37f55c blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0xcc4b84da of_find_node_by_type +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc58c088 scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0xcc7fa952 local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0xcc818335 blk_get_backing_dev_info +EXPORT_SYMBOL vmlinux 0xcc83d282 phy_init_eee +EXPORT_SYMBOL vmlinux 0xcc9467ef get_fs_type +EXPORT_SYMBOL vmlinux 0xcc9df13c ide_proc_unregister_driver +EXPORT_SYMBOL vmlinux 0xcca17cbd rtnl_unicast +EXPORT_SYMBOL vmlinux 0xcca27eeb del_timer +EXPORT_SYMBOL vmlinux 0xcca5ca05 of_find_i2c_device_by_node +EXPORT_SYMBOL vmlinux 0xccb55dc4 mmc_gpio_free_cd +EXPORT_SYMBOL vmlinux 0xccc21f5e input_get_new_minor +EXPORT_SYMBOL vmlinux 0xccdac26d lock_fb_info +EXPORT_SYMBOL vmlinux 0xccf700d3 blk_mq_free_queue +EXPORT_SYMBOL vmlinux 0xcd0529c7 _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0xcd077bf9 cookie_check_timestamp +EXPORT_SYMBOL vmlinux 0xcd20667a kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0xcd2283ac mb_cache_shrink +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd2ff0d7 single_open_size +EXPORT_SYMBOL vmlinux 0xcd55401e blk_cleanup_queue +EXPORT_SYMBOL vmlinux 0xcd55aee4 register_key_type +EXPORT_SYMBOL vmlinux 0xcd56daa7 __free_pages +EXPORT_SYMBOL vmlinux 0xcd62ac9c bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0xcd86c87f __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xcd889b11 inet6_unregister_icmp_sender +EXPORT_SYMBOL vmlinux 0xcd91e5e4 mddev_congested +EXPORT_SYMBOL vmlinux 0xcd9d44c1 try_to_writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xcdb9c94a dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdc8d04f sock_get_timestampns +EXPORT_SYMBOL vmlinux 0xcdd21575 tcf_generic_walker +EXPORT_SYMBOL vmlinux 0xcddd3514 km_new_mapping +EXPORT_SYMBOL vmlinux 0xcde172ac radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0xcde874aa sock_i_uid +EXPORT_SYMBOL vmlinux 0xcdefe050 __xfrm_init_state +EXPORT_SYMBOL vmlinux 0xcdf89307 generic_pipe_buf_steal +EXPORT_SYMBOL vmlinux 0xce189f5e sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0xce20b95f netpoll_send_skb_on_dev +EXPORT_SYMBOL vmlinux 0xce21e446 __serio_register_port +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce36ddd5 netpoll_send_udp +EXPORT_SYMBOL vmlinux 0xce3a0623 scsi_init_io +EXPORT_SYMBOL vmlinux 0xce3a10f7 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0xce3b3f09 profile_pc +EXPORT_SYMBOL vmlinux 0xce4c08cf flex_array_get +EXPORT_SYMBOL vmlinux 0xce4e47b6 __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0xce583d26 tty_register_driver +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce8ce5cc misc_deregister +EXPORT_SYMBOL vmlinux 0xced069a7 genphy_setup_forced +EXPORT_SYMBOL vmlinux 0xced65f6f jbd2_log_start_commit +EXPORT_SYMBOL vmlinux 0xced777cb proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0xcedc361f pci_set_mwi +EXPORT_SYMBOL vmlinux 0xcedf6393 pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0xcef51982 kstrtou16 +EXPORT_SYMBOL vmlinux 0xcef7ec45 get_task_io_context +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcefd870c max8925_reg_write +EXPORT_SYMBOL vmlinux 0xcf0256b5 sk_stream_write_space +EXPORT_SYMBOL vmlinux 0xcf152cfc inode_init_always +EXPORT_SYMBOL vmlinux 0xcf75e180 pci_find_bus +EXPORT_SYMBOL vmlinux 0xcfd16c3e blk_bio_map_sg +EXPORT_SYMBOL vmlinux 0xcff1a632 devm_gpio_request_one +EXPORT_SYMBOL vmlinux 0xd003c463 setup_arg_pages +EXPORT_SYMBOL vmlinux 0xd0040019 pci_find_capability +EXPORT_SYMBOL vmlinux 0xd004c86a bitmap_endwrite +EXPORT_SYMBOL vmlinux 0xd00eda8d get_user_pages +EXPORT_SYMBOL vmlinux 0xd0181f4f __bitmap_xor +EXPORT_SYMBOL vmlinux 0xd06ecf55 simple_rmdir +EXPORT_SYMBOL vmlinux 0xd0720a17 on_each_cpu_cond +EXPORT_SYMBOL vmlinux 0xd09f7ec2 of_device_alloc +EXPORT_SYMBOL vmlinux 0xd0a91bab skip_spaces +EXPORT_SYMBOL vmlinux 0xd0ba38e1 netif_skb_dev_features +EXPORT_SYMBOL vmlinux 0xd0dd79bf max8998_write_reg +EXPORT_SYMBOL vmlinux 0xd0e5ba38 mfd_remove_devices +EXPORT_SYMBOL vmlinux 0xd0e82df8 devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0xd0ee38b8 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0xd0f36f0d audit_log_format +EXPORT_SYMBOL vmlinux 0xd0fb7cd4 __tasklet_hi_schedule_first +EXPORT_SYMBOL vmlinux 0xd0fef3b2 agp_free_key +EXPORT_SYMBOL vmlinux 0xd10c3452 idr_init +EXPORT_SYMBOL vmlinux 0xd113293c fasync_helper +EXPORT_SYMBOL vmlinux 0xd119ab19 dmam_pool_create +EXPORT_SYMBOL vmlinux 0xd11c0dc1 __kernel_param_unlock +EXPORT_SYMBOL vmlinux 0xd1262886 rtas_data_buf +EXPORT_SYMBOL vmlinux 0xd153dd9f cdev_del +EXPORT_SYMBOL vmlinux 0xd155a398 write_dirty_buffer +EXPORT_SYMBOL vmlinux 0xd15f7bfb fbcon_rotate_ud +EXPORT_SYMBOL vmlinux 0xd16473e9 bdi_register_dev +EXPORT_SYMBOL vmlinux 0xd167f5f1 sock_no_poll +EXPORT_SYMBOL vmlinux 0xd17d0267 pcibios_fixup_bus +EXPORT_SYMBOL vmlinux 0xd1816f32 frontswap_writethrough +EXPORT_SYMBOL vmlinux 0xd185a1d7 bio_integrity_set_tag +EXPORT_SYMBOL vmlinux 0xd18db578 dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0xd19ccb99 neigh_table_clear +EXPORT_SYMBOL vmlinux 0xd1b7a9a3 __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0xd20ab024 ata_std_end_eh +EXPORT_SYMBOL vmlinux 0xd21c0e00 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0xd220cf8a jiffies_to_timespec +EXPORT_SYMBOL vmlinux 0xd238db8e set_create_files_as +EXPORT_SYMBOL vmlinux 0xd251d7b0 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0xd253b26a sock_no_bind +EXPORT_SYMBOL vmlinux 0xd2555f19 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd26f3751 inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd284a09c skb_orphan_partial +EXPORT_SYMBOL vmlinux 0xd2938c25 __module_get +EXPORT_SYMBOL vmlinux 0xd2953819 inet_release +EXPORT_SYMBOL vmlinux 0xd2ab3fda xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0xd2b09ce5 __kmalloc +EXPORT_SYMBOL vmlinux 0xd2cc23d0 qdisc_watchdog_schedule_ns +EXPORT_SYMBOL vmlinux 0xd2cd5568 interruptible_sleep_on_timeout +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2e93e98 key_link +EXPORT_SYMBOL vmlinux 0xd31ccb06 of_machine_is_compatible +EXPORT_SYMBOL vmlinux 0xd3260d9d rtnl_notify +EXPORT_SYMBOL vmlinux 0xd3497eac tty_port_tty_get +EXPORT_SYMBOL vmlinux 0xd34b9471 inet_shutdown +EXPORT_SYMBOL vmlinux 0xd35243e3 input_close_device +EXPORT_SYMBOL vmlinux 0xd36257ba memcpy_toiovecend +EXPORT_SYMBOL vmlinux 0xd36ee92f rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0xd37fde85 i2c_verify_client +EXPORT_SYMBOL vmlinux 0xd39bae11 shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0xd39d7964 __scm_destroy +EXPORT_SYMBOL vmlinux 0xd3bf6e3c d_path +EXPORT_SYMBOL vmlinux 0xd3c222e9 pci_clear_mwi +EXPORT_SYMBOL vmlinux 0xd3c7f4cb __breadahead +EXPORT_SYMBOL vmlinux 0xd3d0bdbe iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0xd3e63770 scsi_cmd_print_sense_hdr +EXPORT_SYMBOL vmlinux 0xd411caad dentry_path_raw +EXPORT_SYMBOL vmlinux 0xd41e0c61 xfrm_prepare_input +EXPORT_SYMBOL vmlinux 0xd4265ddb md_write_start +EXPORT_SYMBOL vmlinux 0xd435b608 neigh_seq_stop +EXPORT_SYMBOL vmlinux 0xd4383b5b fb_pan_display +EXPORT_SYMBOL vmlinux 0xd440b8ad kernel_read +EXPORT_SYMBOL vmlinux 0xd48fdeef dql_completed +EXPORT_SYMBOL vmlinux 0xd4c3a417 scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0xd4e8f43e napi_get_frags +EXPORT_SYMBOL vmlinux 0xd500511c i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0xd50cc4a1 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0xd53b9c69 tty_unlock_pair +EXPORT_SYMBOL vmlinux 0xd57abd0c __neigh_create +EXPORT_SYMBOL vmlinux 0xd589d305 dentry_open +EXPORT_SYMBOL vmlinux 0xd5acc251 bio_integrity_split +EXPORT_SYMBOL vmlinux 0xd5cb019c call_netdevice_notifiers_info +EXPORT_SYMBOL vmlinux 0xd5d6b719 eth_header +EXPORT_SYMBOL vmlinux 0xd5da07ab shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0xd5eb524b __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0xd616683a ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0xd648e564 fb_match_mode +EXPORT_SYMBOL vmlinux 0xd6529f17 mdiobus_read +EXPORT_SYMBOL vmlinux 0xd65a2a2e from_kprojid_munged +EXPORT_SYMBOL vmlinux 0xd6669424 scsi_free_command +EXPORT_SYMBOL vmlinux 0xd6678b1a mmc_add_host +EXPORT_SYMBOL vmlinux 0xd6689157 bdi_setup_and_register +EXPORT_SYMBOL vmlinux 0xd66ae59f grab_cache_page_nowait +EXPORT_SYMBOL vmlinux 0xd688716b dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0xd68d3141 of_find_backlight_by_node +EXPORT_SYMBOL vmlinux 0xd6a10a50 pps_register_source +EXPORT_SYMBOL vmlinux 0xd6a6d737 vfs_llseek +EXPORT_SYMBOL vmlinux 0xd6c49eeb netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0xd6d63e9d lg_local_lock_cpu +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6fd4053 __arch_hweight32 +EXPORT_SYMBOL vmlinux 0xd7171885 kobject_get +EXPORT_SYMBOL vmlinux 0xd71f236f truncate_setsize +EXPORT_SYMBOL vmlinux 0xd722ec09 ps2_handle_ack +EXPORT_SYMBOL vmlinux 0xd7281bd3 tcp_mtup_init +EXPORT_SYMBOL vmlinux 0xd7312d58 inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0xd75c79df smp_call_function +EXPORT_SYMBOL vmlinux 0xd761a383 ioremap_prot +EXPORT_SYMBOL vmlinux 0xd7721fa2 invalidate_bdev +EXPORT_SYMBOL vmlinux 0xd774f6b1 ppp_register_channel +EXPORT_SYMBOL vmlinux 0xd775390c tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0xd77a5aa5 __bitmap_and +EXPORT_SYMBOL vmlinux 0xd786c0ea plpar_hcall9 +EXPORT_SYMBOL vmlinux 0xd78aa5a5 call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0xd78e1d8e framebuffer_alloc +EXPORT_SYMBOL vmlinux 0xd79b5a02 allow_signal +EXPORT_SYMBOL vmlinux 0xd7bda390 pneigh_enqueue +EXPORT_SYMBOL vmlinux 0xd7cbddda memcpy_toiovec +EXPORT_SYMBOL vmlinux 0xd7dd43c8 dst_release +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7e69b30 input_flush_device +EXPORT_SYMBOL vmlinux 0xd7ea7094 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xd7fd1359 nf_log_unregister +EXPORT_SYMBOL vmlinux 0xd80858a5 agp_generic_remove_memory +EXPORT_SYMBOL vmlinux 0xd81564af dquot_get_dqinfo +EXPORT_SYMBOL vmlinux 0xd8371e09 nla_reserve +EXPORT_SYMBOL vmlinux 0xd852c824 get_super_thawed +EXPORT_SYMBOL vmlinux 0xd85570ea key_task_permission +EXPORT_SYMBOL vmlinux 0xd8615853 tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8aa1154 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0xd8c10d0e udp_poll +EXPORT_SYMBOL vmlinux 0xd8c72cf0 ifla_policy +EXPORT_SYMBOL vmlinux 0xd8c9de3e ipmi_smi_watcher_unregister +EXPORT_SYMBOL vmlinux 0xd8cbc19b kern_unmount +EXPORT_SYMBOL vmlinux 0xd8de9977 elv_rb_del +EXPORT_SYMBOL vmlinux 0xd8ded085 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xd8e484f0 register_chrdev_region +EXPORT_SYMBOL vmlinux 0xd8effb63 xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0xd8f03847 vfs_path_lookup +EXPORT_SYMBOL vmlinux 0xd8f42603 netdev_notice +EXPORT_SYMBOL vmlinux 0xd920f036 cdrom_check_events +EXPORT_SYMBOL vmlinux 0xd923cbe6 lro_flush_all +EXPORT_SYMBOL vmlinux 0xd92606eb netdev_features_change +EXPORT_SYMBOL vmlinux 0xd92afabe bitmap_clear +EXPORT_SYMBOL vmlinux 0xd92c763e eth_change_mtu +EXPORT_SYMBOL vmlinux 0xd92d8256 netif_rx_ni +EXPORT_SYMBOL vmlinux 0xd92e16ba csum_partial_copy_fromiovecend +EXPORT_SYMBOL vmlinux 0xd958d9ee mdio_bus_type +EXPORT_SYMBOL vmlinux 0xd95d4468 user_path_at +EXPORT_SYMBOL vmlinux 0xd9605d4c add_timer +EXPORT_SYMBOL vmlinux 0xd96406dd __skb_checksum +EXPORT_SYMBOL vmlinux 0xd965948f mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0xd975f81c pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd9a9bb30 getname +EXPORT_SYMBOL vmlinux 0xd9bac924 tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0xd9d6718b pci_iounmap +EXPORT_SYMBOL vmlinux 0xd9d73d35 arp_find +EXPORT_SYMBOL vmlinux 0xd9f5e3ee qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0xd9ffd6e9 uart_match_port +EXPORT_SYMBOL vmlinux 0xda14f1ba tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0xda2478d0 param_ops_short +EXPORT_SYMBOL vmlinux 0xda353693 bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda54bad1 names_cachep +EXPORT_SYMBOL vmlinux 0xda5bfa30 generic_file_open +EXPORT_SYMBOL vmlinux 0xda6246d7 udp_disconnect +EXPORT_SYMBOL vmlinux 0xda6b441f file_ns_capable +EXPORT_SYMBOL vmlinux 0xda7ca6cb fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xda8af7ad fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0xdaa732dd tcp_setsockopt +EXPORT_SYMBOL vmlinux 0xdab2fa65 mb_cache_entry_insert +EXPORT_SYMBOL vmlinux 0xdabc1ea8 fsl_lbc_find +EXPORT_SYMBOL vmlinux 0xdac0adeb agp_allocate_memory +EXPORT_SYMBOL vmlinux 0xdac80cbe wireless_spy_update +EXPORT_SYMBOL vmlinux 0xdae91f0c serio_open +EXPORT_SYMBOL vmlinux 0xdaea6e0d mfd_clone_cell +EXPORT_SYMBOL vmlinux 0xdaecc762 bio_copy_kern +EXPORT_SYMBOL vmlinux 0xdaee02c0 lock_rename +EXPORT_SYMBOL vmlinux 0xdaf23bd8 from_kuid +EXPORT_SYMBOL vmlinux 0xdaf2fd26 make_kuid +EXPORT_SYMBOL vmlinux 0xdb01198e fsl_upm_find +EXPORT_SYMBOL vmlinux 0xdb025669 i2c_release_client +EXPORT_SYMBOL vmlinux 0xdb076dfb udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0xdb4d5e1a pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0xdb5578a3 ppc_md +EXPORT_SYMBOL vmlinux 0xdb582727 inode_permission +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdbaafce6 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0xdbad6c1f phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0xdbb24fc2 down_write +EXPORT_SYMBOL vmlinux 0xdbcd416e sysctl_ip_nonlocal_bind +EXPORT_SYMBOL vmlinux 0xdbd6c258 agp_copy_info +EXPORT_SYMBOL vmlinux 0xdbee6278 block_invalidatepage +EXPORT_SYMBOL vmlinux 0xdc025962 i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0xdc047fc4 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc1dd2c8 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0xdc345060 i2c_add_adapter +EXPORT_SYMBOL vmlinux 0xdc3c41a8 __crypto_memneq +EXPORT_SYMBOL vmlinux 0xdc3d3246 posix_lock_file +EXPORT_SYMBOL vmlinux 0xdc3fcbc9 __sw_hweight8 +EXPORT_SYMBOL vmlinux 0xdc41a313 scsi_remove_device +EXPORT_SYMBOL vmlinux 0xdc507a8f pci_disable_ltr +EXPORT_SYMBOL vmlinux 0xdc51300e mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0xdc644c83 iov_iter_copy_from_user_atomic +EXPORT_SYMBOL vmlinux 0xdc9498dd down +EXPORT_SYMBOL vmlinux 0xdcb764ad memset +EXPORT_SYMBOL vmlinux 0xdcb83849 security_inode_init_security +EXPORT_SYMBOL vmlinux 0xdccc83b7 pci_get_class +EXPORT_SYMBOL vmlinux 0xdce1578c i2c_master_send +EXPORT_SYMBOL vmlinux 0xdd182abf netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0xdd28d963 elevator_exit +EXPORT_SYMBOL vmlinux 0xdd39b8e1 vlan_vid_del +EXPORT_SYMBOL vmlinux 0xdd955144 __debugger +EXPORT_SYMBOL vmlinux 0xdd9bde83 register_md_personality +EXPORT_SYMBOL vmlinux 0xdda2ee8c dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0xddbd9558 generic_file_fsync +EXPORT_SYMBOL vmlinux 0xddcc1bdc inet_stream_ops +EXPORT_SYMBOL vmlinux 0xde10eb10 param_set_invbool +EXPORT_SYMBOL vmlinux 0xde30d50f sock_wake_async +EXPORT_SYMBOL vmlinux 0xde48e9ca _raw_spin_lock +EXPORT_SYMBOL vmlinux 0xde5a9b71 iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0xde6151db tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0xde61c8e7 km_query +EXPORT_SYMBOL vmlinux 0xde783883 pSeries_disable_reloc_on_exc +EXPORT_SYMBOL vmlinux 0xde872c10 max8998_bulk_write +EXPORT_SYMBOL vmlinux 0xde91448c load_vr_state +EXPORT_SYMBOL vmlinux 0xde9360ba totalram_pages +EXPORT_SYMBOL vmlinux 0xde9b17ed agp3_generic_fetch_size +EXPORT_SYMBOL vmlinux 0xdeab6033 generic_shutdown_super +EXPORT_SYMBOL vmlinux 0xded2e4ab bio_integrity_trim +EXPORT_SYMBOL vmlinux 0xdedd611f vfs_fsync +EXPORT_SYMBOL vmlinux 0xdef94dd1 soft_cursor +EXPORT_SYMBOL vmlinux 0xdf13ec79 scsi_ioctl +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf3d8089 prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0xdf47416f devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf60cc27 __print_symbol +EXPORT_SYMBOL vmlinux 0xdf7e509e tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0xdf8ed092 eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdfaac361 max8925_bulk_read +EXPORT_SYMBOL vmlinux 0xdfc5169b slhc_init +EXPORT_SYMBOL vmlinux 0xdfe31b3b iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0xe00bc664 blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0xe01878ac bio_init +EXPORT_SYMBOL vmlinux 0xe02a5958 blk_queue_io_min +EXPORT_SYMBOL vmlinux 0xe03680b9 inode_capable +EXPORT_SYMBOL vmlinux 0xe037b5be nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0xe04f7caa dm_read_arg_group +EXPORT_SYMBOL vmlinux 0xe06141e9 security_sk_clone +EXPORT_SYMBOL vmlinux 0xe063e1dd __get_user_pages +EXPORT_SYMBOL vmlinux 0xe0681563 skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0xe075d6eb iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xe081cde6 flock_lock_file_wait +EXPORT_SYMBOL vmlinux 0xe095da0d vfs_create +EXPORT_SYMBOL vmlinux 0xe098fe8c __page_cache_alloc +EXPORT_SYMBOL vmlinux 0xe0a05524 irq_stat +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0e430ec ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0xe0e4ac03 blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0xe0e9458a register_console +EXPORT_SYMBOL vmlinux 0xe0edea45 get_pci_dma_ops +EXPORT_SYMBOL vmlinux 0xe0ef10c7 ida_simple_remove +EXPORT_SYMBOL vmlinux 0xe0f64734 inet6_register_protosw +EXPORT_SYMBOL vmlinux 0xe0fa83f2 ipmi_register_for_cmd +EXPORT_SYMBOL vmlinux 0xe0fad4ea truncate_inode_pages +EXPORT_SYMBOL vmlinux 0xe0fff5b8 pci_restore_state +EXPORT_SYMBOL vmlinux 0xe101b38d dma_common_mmap +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe164bba8 nf_log_packet +EXPORT_SYMBOL vmlinux 0xe1761617 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xe190aa1f generic_splice_sendpage +EXPORT_SYMBOL vmlinux 0xe1958739 rt6_lookup +EXPORT_SYMBOL vmlinux 0xe195df25 skb_split +EXPORT_SYMBOL vmlinux 0xe198289c tty_vhangup +EXPORT_SYMBOL vmlinux 0xe19c8409 unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xe1a2045f dev_get_phys_port_id +EXPORT_SYMBOL vmlinux 0xe1b00243 sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0xe1b424f2 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0xe1c1a32f security_path_mknod +EXPORT_SYMBOL vmlinux 0xe1d5937f ipv6_push_nfrag_opts +EXPORT_SYMBOL vmlinux 0xe1d8ae07 sock_alloc_file +EXPORT_SYMBOL vmlinux 0xe200f872 secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xe203171e skb_unlink +EXPORT_SYMBOL vmlinux 0xe220ceb8 __debugger_sstep +EXPORT_SYMBOL vmlinux 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL vmlinux 0xe231f243 kmalloc_dma_caches +EXPORT_SYMBOL vmlinux 0xe23ae481 blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe24bd718 __netlink_dump_start +EXPORT_SYMBOL vmlinux 0xe24d3a97 jiffies_64 +EXPORT_SYMBOL vmlinux 0xe25e8726 bioset_create +EXPORT_SYMBOL vmlinux 0xe2926ae3 dev_get_drvdata +EXPORT_SYMBOL vmlinux 0xe29e1d0e out_of_line_wait_on_atomic_t +EXPORT_SYMBOL vmlinux 0xe2b45c92 kill_pid +EXPORT_SYMBOL vmlinux 0xe2be5498 lg_global_unlock +EXPORT_SYMBOL vmlinux 0xe2cc4d00 of_get_min_tck +EXPORT_SYMBOL vmlinux 0xe2cf763c page_put_link +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe314e8fb cpu_core_map +EXPORT_SYMBOL vmlinux 0xe3409bd3 vga_get +EXPORT_SYMBOL vmlinux 0xe3493c18 bio_endio +EXPORT_SYMBOL vmlinux 0xe34c9332 scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0xe35c5285 of_find_node_by_phandle +EXPORT_SYMBOL vmlinux 0xe39df0fe bitmap_startwrite +EXPORT_SYMBOL vmlinux 0xe3a53f4c sort +EXPORT_SYMBOL vmlinux 0xe3af46ee set_security_override +EXPORT_SYMBOL vmlinux 0xe3b668a7 simple_rename +EXPORT_SYMBOL vmlinux 0xe3b6e1ba generic_file_splice_write +EXPORT_SYMBOL vmlinux 0xe3baaf29 skb_trim +EXPORT_SYMBOL vmlinux 0xe3d6f284 fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xe3e32ae3 __sb_start_write +EXPORT_SYMBOL vmlinux 0xe3e52b41 xfrm_state_flush +EXPORT_SYMBOL vmlinux 0xe42214ab file_remove_suid +EXPORT_SYMBOL vmlinux 0xe4389711 jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0xe4595955 flex_array_put +EXPORT_SYMBOL vmlinux 0xe46bc065 inode_dio_wait +EXPORT_SYMBOL vmlinux 0xe484e35f ioread32 +EXPORT_SYMBOL vmlinux 0xe49f381c __blk_end_request +EXPORT_SYMBOL vmlinux 0xe49f8470 max8925_reg_read +EXPORT_SYMBOL vmlinux 0xe4a3ac5f inet_dgram_connect +EXPORT_SYMBOL vmlinux 0xe4a7adef thaw_bdev +EXPORT_SYMBOL vmlinux 0xe4a895fa up_write +EXPORT_SYMBOL vmlinux 0xe4ab00bb of_node_get +EXPORT_SYMBOL vmlinux 0xe4ab53c6 generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0xe4b1426c blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0xe4c30bb5 pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0xe4ce68e7 audit_log_start +EXPORT_SYMBOL vmlinux 0xe4f4665b ipmi_validate_addr +EXPORT_SYMBOL vmlinux 0xe4fe8ca1 _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0xe5122890 flow_cache_genid +EXPORT_SYMBOL vmlinux 0xe5133bd3 pci_enable_msi_block_auto +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe53d1faa of_translate_dma_address +EXPORT_SYMBOL vmlinux 0xe53fb0e2 unregister_cdrom +EXPORT_SYMBOL vmlinux 0xe569a6c6 bio_map_kern +EXPORT_SYMBOL vmlinux 0xe56b23ea register_netdev +EXPORT_SYMBOL vmlinux 0xe57878a1 in6_pton +EXPORT_SYMBOL vmlinux 0xe5867808 dlci_ioctl_set +EXPORT_SYMBOL vmlinux 0xe5ad5bf8 pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5d2ff3e bio_unmap_user +EXPORT_SYMBOL vmlinux 0xe5ed5467 xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xe603caf2 ioctl_by_bdev +EXPORT_SYMBOL vmlinux 0xe647b945 bdput +EXPORT_SYMBOL vmlinux 0xe65d9f3a simple_release_fs +EXPORT_SYMBOL vmlinux 0xe6609b1c tcp_parse_options +EXPORT_SYMBOL vmlinux 0xe67f7abd block_write_full_page +EXPORT_SYMBOL vmlinux 0xe6851e2d send_sig +EXPORT_SYMBOL vmlinux 0xe697d108 __blk_iopoll_complete +EXPORT_SYMBOL vmlinux 0xe6980827 jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0xe69a9df4 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0xe6ab72a6 ipmi_set_my_LUN +EXPORT_SYMBOL vmlinux 0xe6b14e46 task_tgid_nr_ns +EXPORT_SYMBOL vmlinux 0xe6bc9e4a kset_register +EXPORT_SYMBOL vmlinux 0xe6bf7a1c dquot_alloc +EXPORT_SYMBOL vmlinux 0xe6ce6d9e __scsi_alloc_queue +EXPORT_SYMBOL vmlinux 0xe6ec06d5 scsi_release_buffers +EXPORT_SYMBOL vmlinux 0xe6fbe430 can_do_mlock +EXPORT_SYMBOL vmlinux 0xe72d1ce1 dev_mc_add +EXPORT_SYMBOL vmlinux 0xe7308240 tty_lock +EXPORT_SYMBOL vmlinux 0xe7343e13 cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0xe757ef2a xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0xe76ca321 pm860x_page_reg_read +EXPORT_SYMBOL vmlinux 0xe76d3ace iput +EXPORT_SYMBOL vmlinux 0xe77ec84a always_delete_dentry +EXPORT_SYMBOL vmlinux 0xe78527d5 i2c_clients_command +EXPORT_SYMBOL vmlinux 0xe7a664c4 nf_hooks +EXPORT_SYMBOL vmlinux 0xe7a81967 audit_log_secctx +EXPORT_SYMBOL vmlinux 0xe7a8486b dev_err +EXPORT_SYMBOL vmlinux 0xe7bd47d3 tcf_exts_change +EXPORT_SYMBOL vmlinux 0xe7c4351f phy_ethtool_gset +EXPORT_SYMBOL vmlinux 0xe7c48eba vfs_write +EXPORT_SYMBOL vmlinux 0xe7c84014 lockref_mark_dead +EXPORT_SYMBOL vmlinux 0xe7ce7439 _memcpy_fromio +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7d92127 in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0xe7f771e2 genl_notify +EXPORT_SYMBOL vmlinux 0xe8151528 block_write_begin +EXPORT_SYMBOL vmlinux 0xe82cc752 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0xe833fa77 gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0xe83c0e49 clocksource_register +EXPORT_SYMBOL vmlinux 0xe83f76a0 security_path_rmdir +EXPORT_SYMBOL vmlinux 0xe847bf61 pci_enable_device_io +EXPORT_SYMBOL vmlinux 0xe84b9dc2 dev_printk_emit +EXPORT_SYMBOL vmlinux 0xe84d8236 uart_suspend_port +EXPORT_SYMBOL vmlinux 0xe8568926 dma_direct_ops +EXPORT_SYMBOL vmlinux 0xe8683666 dquot_destroy +EXPORT_SYMBOL vmlinux 0xe8794ce1 slhc_toss +EXPORT_SYMBOL vmlinux 0xe8887a3f netdev_err +EXPORT_SYMBOL vmlinux 0xe88ca802 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0xe8b63ace radix_tree_range_tag_if_tagged +EXPORT_SYMBOL vmlinux 0xe8bea3bc qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xe8c438f3 proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0xe8eca5e4 vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0xe8eccf31 xfrm6_prepare_output +EXPORT_SYMBOL vmlinux 0xe90ba8fe vio_unregister_driver +EXPORT_SYMBOL vmlinux 0xe9132586 i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe971876a on_each_cpu_mask +EXPORT_SYMBOL vmlinux 0xe98d9d4f locks_copy_lock +EXPORT_SYMBOL vmlinux 0xe99fcf8a blk_queue_unprep_rq +EXPORT_SYMBOL vmlinux 0xe9a133e2 fixed_size_llseek +EXPORT_SYMBOL vmlinux 0xe9a28b6e n_tty_compat_ioctl_helper +EXPORT_SYMBOL vmlinux 0xe9ad7ad3 simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0xe9c2f4be cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0xe9eb654c abx500_mask_and_set_register_interruptible +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xea054b22 nla_policy_len +EXPORT_SYMBOL vmlinux 0xea068bd0 max8998_read_reg +EXPORT_SYMBOL vmlinux 0xea10212a int_to_scsilun +EXPORT_SYMBOL vmlinux 0xea10655a __bitmap_intersects +EXPORT_SYMBOL vmlinux 0xea16dd4c tcp_destroy_cgroup +EXPORT_SYMBOL vmlinux 0xea2fd141 key_put +EXPORT_SYMBOL vmlinux 0xea48716a module_put +EXPORT_SYMBOL vmlinux 0xea56937d phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0xea6e3003 of_find_compatible_node +EXPORT_SYMBOL vmlinux 0xea739692 key_reject_and_link +EXPORT_SYMBOL vmlinux 0xea7d4134 inet_select_addr +EXPORT_SYMBOL vmlinux 0xea968c96 ___ratelimit +EXPORT_SYMBOL vmlinux 0xeab45b5a d_alloc_pseudo +EXPORT_SYMBOL vmlinux 0xeac1c1ef jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0xeadba110 dentry_update_name_case +EXPORT_SYMBOL vmlinux 0xeb0ca455 locks_mandatory_area +EXPORT_SYMBOL vmlinux 0xeb2723db __pskb_copy +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb44339a free_pages_exact +EXPORT_SYMBOL vmlinux 0xeb4966a7 blk_execute_rq +EXPORT_SYMBOL vmlinux 0xeb88c7bb arp_invalidate +EXPORT_SYMBOL vmlinux 0xeb894a13 f_setown +EXPORT_SYMBOL vmlinux 0xeb9a1f74 mmc_put_card +EXPORT_SYMBOL vmlinux 0xeb9cb434 page_zero_new_buffers +EXPORT_SYMBOL vmlinux 0xeba2a1f7 rtas_indicator_present +EXPORT_SYMBOL vmlinux 0xebb51de0 dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0xebcab3a6 ppc_pci_io +EXPORT_SYMBOL vmlinux 0xebdbe48c radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0xec17ebb0 of_match_node +EXPORT_SYMBOL vmlinux 0xec1a3db9 ilookup5_nowait +EXPORT_SYMBOL vmlinux 0xec5ed4ec inet_frags_init +EXPORT_SYMBOL vmlinux 0xecb10a90 blk_init_queue_node +EXPORT_SYMBOL vmlinux 0xecbb926f xor_altivec_3 +EXPORT_SYMBOL vmlinux 0xecc10172 wait_for_key_construction +EXPORT_SYMBOL vmlinux 0xeccf017a vlan_uses_dev +EXPORT_SYMBOL vmlinux 0xece1a414 inet6_add_offload +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xecffcde2 netif_napi_add +EXPORT_SYMBOL vmlinux 0xed3d268e register_shrinker +EXPORT_SYMBOL vmlinux 0xed48b5e5 set_nlink +EXPORT_SYMBOL vmlinux 0xed4cc8d1 qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0xed597524 qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xed60454d __skb_get_rxhash +EXPORT_SYMBOL vmlinux 0xed758db4 __serio_register_driver +EXPORT_SYMBOL vmlinux 0xed7e46a5 dev_mc_sync +EXPORT_SYMBOL vmlinux 0xed9352a7 read_cache_page +EXPORT_SYMBOL vmlinux 0xed956032 phy_start_interrupts +EXPORT_SYMBOL vmlinux 0xed9f9a20 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedc410d0 udplite_table +EXPORT_SYMBOL vmlinux 0xee08b916 pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0xee0f3b3c pci_choose_state +EXPORT_SYMBOL vmlinux 0xee246dff ida_destroy +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee364a76 dev_open +EXPORT_SYMBOL vmlinux 0xee502d93 blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0xee5780af __ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0xee62e268 vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0xee6f406b devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xee98b6c1 nf_hook_slow +EXPORT_SYMBOL vmlinux 0xee998efb blk_queue_invalidate_tags +EXPORT_SYMBOL vmlinux 0xee9f87f4 devm_ioremap_prot +EXPORT_SYMBOL vmlinux 0xeea9dbaf bitmap_bitremap +EXPORT_SYMBOL vmlinux 0xeeabf2d8 xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xeeaee08d scsi_report_opcode +EXPORT_SYMBOL vmlinux 0xeeb5bd3b __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0xeedbee06 bioset_integrity_create +EXPORT_SYMBOL vmlinux 0xeedf4ab8 d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0xeee62c6f skb_clone +EXPORT_SYMBOL vmlinux 0xeef161aa groups_free +EXPORT_SYMBOL vmlinux 0xeef9c062 submit_bh +EXPORT_SYMBOL vmlinux 0xeefc5030 __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0xeefe111c splice_from_pipe_end +EXPORT_SYMBOL vmlinux 0xef109449 interruptible_sleep_on +EXPORT_SYMBOL vmlinux 0xef46b40d pci_set_master +EXPORT_SYMBOL vmlinux 0xef4a8ffa delete_from_page_cache +EXPORT_SYMBOL vmlinux 0xef4c516f scsi_verify_blk_ioctl +EXPORT_SYMBOL vmlinux 0xef4db5dc sock_from_file +EXPORT_SYMBOL vmlinux 0xef5a0d06 ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0xef6dbbc1 __bio_clone +EXPORT_SYMBOL vmlinux 0xef6ef9f3 gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0xef7777ce dev_get_by_name +EXPORT_SYMBOL vmlinux 0xef9f93b9 ide_do_reset +EXPORT_SYMBOL vmlinux 0xefaa6fdc dev_load +EXPORT_SYMBOL vmlinux 0xefb97cad __brelse +EXPORT_SYMBOL vmlinux 0xefc19052 path_put +EXPORT_SYMBOL vmlinux 0xefd5c4a9 posix_test_lock +EXPORT_SYMBOL vmlinux 0xefdd70ce security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0xefde1bbe flush_dcache_range +EXPORT_SYMBOL vmlinux 0xefe6ccac kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0xeff1dfca ata_print_version +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf0187927 __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0xf043c225 uart_unregister_driver +EXPORT_SYMBOL vmlinux 0xf0532102 inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0xf05ffa15 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0xf0619801 timekeeping_clocktai +EXPORT_SYMBOL vmlinux 0xf065f629 ioread16be +EXPORT_SYMBOL vmlinux 0xf067257c register_memory_isolate_notifier +EXPORT_SYMBOL vmlinux 0xf07a4115 skb_copy +EXPORT_SYMBOL vmlinux 0xf087137d __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0xf090fca7 redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0xf09de776 get_random_int +EXPORT_SYMBOL vmlinux 0xf0c8f854 lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0xf0ef15b4 list_sort +EXPORT_SYMBOL vmlinux 0xf0f1246c kvasprintf +EXPORT_SYMBOL vmlinux 0xf0fd4e8f rwsem_down_read_failed +EXPORT_SYMBOL vmlinux 0xf100416a remove_conflicting_framebuffers +EXPORT_SYMBOL vmlinux 0xf102a4a4 d_obtain_alias +EXPORT_SYMBOL vmlinux 0xf10ca3e7 lockref_get_or_lock +EXPORT_SYMBOL vmlinux 0xf10de535 ioread8 +EXPORT_SYMBOL vmlinux 0xf11cd6ce down_interruptible +EXPORT_SYMBOL vmlinux 0xf121507c ipmi_smi_add_proc_entry +EXPORT_SYMBOL vmlinux 0xf12da5a2 unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0xf13feb57 radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0xf147dcb2 hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0xf15b6333 fsnotify_destroy_mark +EXPORT_SYMBOL vmlinux 0xf15d865a netdev_crit +EXPORT_SYMBOL vmlinux 0xf16ecb56 fd_install +EXPORT_SYMBOL vmlinux 0xf183189b __ioremap_at +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf198889b sg_miter_start +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1e06df1 gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf202c5cb radix_tree_insert +EXPORT_SYMBOL vmlinux 0xf203deac uart_remove_one_port +EXPORT_SYMBOL vmlinux 0xf20dabd8 free_irq +EXPORT_SYMBOL vmlinux 0xf2170023 keyring_search +EXPORT_SYMBOL vmlinux 0xf21d2740 __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0xf226fd76 ps2_end_command +EXPORT_SYMBOL vmlinux 0xf22881e8 lg_local_lock +EXPORT_SYMBOL vmlinux 0xf236ea68 jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf24974d7 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0xf2576cb9 ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL vmlinux 0xf27394ed rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0xf2a0af8f backlight_device_registered +EXPORT_SYMBOL vmlinux 0xf2b1ac8e __getnstimeofday +EXPORT_SYMBOL vmlinux 0xf2bdf2fd tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0xf2d31c97 md_register_thread +EXPORT_SYMBOL vmlinux 0xf313da4e sha_transform +EXPORT_SYMBOL vmlinux 0xf3186691 __vio_register_driver +EXPORT_SYMBOL vmlinux 0xf322a206 bit_waitqueue +EXPORT_SYMBOL vmlinux 0xf3341268 __clear_user +EXPORT_SYMBOL vmlinux 0xf33b0995 elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0xf33f3178 scsi_reset_provider +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf389fe60 __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf38bebc0 lookup_bdev +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf396cd21 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0xf39c57a3 rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0xf3b25701 elv_rb_find +EXPORT_SYMBOL vmlinux 0xf3bc3ab3 pci_disable_device +EXPORT_SYMBOL vmlinux 0xf3bf0bce __bitmap_complement +EXPORT_SYMBOL vmlinux 0xf3c63bfb get_tz_trend +EXPORT_SYMBOL vmlinux 0xf3da96a0 blk_mq_can_queue +EXPORT_SYMBOL vmlinux 0xf3e52002 crypto_sha1_update +EXPORT_SYMBOL vmlinux 0xf3ed6b60 sk_stream_error +EXPORT_SYMBOL vmlinux 0xf4039abb scsi_prep_fn +EXPORT_SYMBOL vmlinux 0xf42b3f1e genphy_suspend +EXPORT_SYMBOL vmlinux 0xf42c3c78 ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0xf43b0ca0 unregister_binfmt +EXPORT_SYMBOL vmlinux 0xf441ac43 ioread8_rep +EXPORT_SYMBOL vmlinux 0xf45c08a7 blk_queue_bounce +EXPORT_SYMBOL vmlinux 0xf47f3ec7 genphy_resume +EXPORT_SYMBOL vmlinux 0xf4825462 serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0xf4a2bca9 pcie_set_mps +EXPORT_SYMBOL vmlinux 0xf4a5bf13 thermal_cdev_update +EXPORT_SYMBOL vmlinux 0xf4bdbeb9 __frontswap_invalidate_area +EXPORT_SYMBOL vmlinux 0xf4c03bcb inet6_register_icmp_sender +EXPORT_SYMBOL vmlinux 0xf4ce98fd PDE_DATA +EXPORT_SYMBOL vmlinux 0xf4e7238a generic_file_mmap +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf4f31c29 i2c_master_recv +EXPORT_SYMBOL vmlinux 0xf4f54af5 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0xf50ecce6 done_path_create +EXPORT_SYMBOL vmlinux 0xf51bf88b nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xf5222143 _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf53df0a5 gen_pool_free +EXPORT_SYMBOL vmlinux 0xf545f011 ab3100_event_unregister +EXPORT_SYMBOL vmlinux 0xf556b7f9 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0xf55b3b3d __arch_hweight16 +EXPORT_SYMBOL vmlinux 0xf5735457 inet_accept +EXPORT_SYMBOL vmlinux 0xf57b71b0 simple_readpage +EXPORT_SYMBOL vmlinux 0xf5950a3f register_framebuffer +EXPORT_SYMBOL vmlinux 0xf59fbb2f dev_mc_del_global +EXPORT_SYMBOL vmlinux 0xf5a085c4 gen_pool_destroy +EXPORT_SYMBOL vmlinux 0xf5a388aa vm_insert_page +EXPORT_SYMBOL vmlinux 0xf5a62ecc _memset_io +EXPORT_SYMBOL vmlinux 0xf5a88e53 remove_proc_subtree +EXPORT_SYMBOL vmlinux 0xf5b9ce2a key_alloc +EXPORT_SYMBOL vmlinux 0xf5c734a9 devfreq_remove_device +EXPORT_SYMBOL vmlinux 0xf5dd50ee unlock_page +EXPORT_SYMBOL vmlinux 0xf5e1558d crash_shutdown_unregister +EXPORT_SYMBOL vmlinux 0xf5e28239 netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0xf5eb86ea blk_verify_command +EXPORT_SYMBOL vmlinux 0xf5fded92 pci_enable_msi_block +EXPORT_SYMBOL vmlinux 0xf604c0c0 inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0xf6388c56 sysctl_ip_default_ttl +EXPORT_SYMBOL vmlinux 0xf6409e48 __lock_buffer +EXPORT_SYMBOL vmlinux 0xf67f3635 bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf68546fa kill_litter_super +EXPORT_SYMBOL vmlinux 0xf68687be __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0xf69614be sg_miter_next +EXPORT_SYMBOL vmlinux 0xf6a0cd9e neigh_lookup_nodev +EXPORT_SYMBOL vmlinux 0xf6bb4729 color_table +EXPORT_SYMBOL vmlinux 0xf6bda190 dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0xf6da7bc7 inet_ioctl +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf707c699 jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0xf7289d14 __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0xf72d9926 sock_init_data +EXPORT_SYMBOL vmlinux 0xf7371912 pci_claim_resource +EXPORT_SYMBOL vmlinux 0xf73e1861 pci_remove_bus +EXPORT_SYMBOL vmlinux 0xf741c793 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xf74b5e26 gen10g_suspend +EXPORT_SYMBOL vmlinux 0xf75536ef scsi_rescan_device +EXPORT_SYMBOL vmlinux 0xf7584a9c find_font +EXPORT_SYMBOL vmlinux 0xf7a4a9a8 blk_queue_prep_rq +EXPORT_SYMBOL vmlinux 0xf7adcaf3 __tracepoint_kmalloc_node +EXPORT_SYMBOL vmlinux 0xf7bc712c mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0xf7d6d1a9 __i2c_transfer +EXPORT_SYMBOL vmlinux 0xf7ed4f4b __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xf7fe2313 jbd2_journal_invalidatepage +EXPORT_SYMBOL vmlinux 0xf803fe39 bitmap_set +EXPORT_SYMBOL vmlinux 0xf80de9ff hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf812cff6 memscan +EXPORT_SYMBOL vmlinux 0xf815fe9a generic_file_aio_write +EXPORT_SYMBOL vmlinux 0xf827cb83 free_reserved_area +EXPORT_SYMBOL vmlinux 0xf82a7def sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0xf82abc1d isa_dma_bridge_buggy +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf840c1a3 inet_dgram_ops +EXPORT_SYMBOL vmlinux 0xf842c8db tc_classify_compat +EXPORT_SYMBOL vmlinux 0xf84b76d2 inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0xf86c46ea dev_close +EXPORT_SYMBOL vmlinux 0xf8710283 elv_dispatch_sort +EXPORT_SYMBOL vmlinux 0xf88cd9af netpoll_rx_disable +EXPORT_SYMBOL vmlinux 0xf88d8225 inet6_getname +EXPORT_SYMBOL vmlinux 0xf89c8e07 ida_pre_get +EXPORT_SYMBOL vmlinux 0xf8a2b833 page_follow_link_light +EXPORT_SYMBOL vmlinux 0xf8aa3a07 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0xf8bc3b65 vfs_readv +EXPORT_SYMBOL vmlinux 0xf8fa8f33 padata_register_cpumask_notifier +EXPORT_SYMBOL vmlinux 0xf9038bcf smp_call_function_many +EXPORT_SYMBOL vmlinux 0xf9559ee1 ___pskb_trim +EXPORT_SYMBOL vmlinux 0xf957d5b8 pci_pme_capable +EXPORT_SYMBOL vmlinux 0xf97e9761 tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0xf9857f20 buffer_check_dirty_writeback +EXPORT_SYMBOL vmlinux 0xf99cd2ad may_umount_tree +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9ac5e44 bio_integrity_free +EXPORT_SYMBOL vmlinux 0xf9aeea39 dev_notice +EXPORT_SYMBOL vmlinux 0xf9c0b663 strlcat +EXPORT_SYMBOL vmlinux 0xf9c1b811 pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0xf9c68e3f blk_delay_queue +EXPORT_SYMBOL vmlinux 0xf9d043e5 vfs_rename +EXPORT_SYMBOL vmlinux 0xf9d46917 follow_pfn +EXPORT_SYMBOL vmlinux 0xf9eb51e0 __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0xf9ebd4c2 udp_proc_unregister +EXPORT_SYMBOL vmlinux 0xfa165c5a seq_bitmap_list +EXPORT_SYMBOL vmlinux 0xfa2bcf10 init_timer_key +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa7c3c36 i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0xfa7f3156 wl12xx_get_platform_data +EXPORT_SYMBOL vmlinux 0xfab12b7b blk_end_request_all +EXPORT_SYMBOL vmlinux 0xfab37cba wake_up_process +EXPORT_SYMBOL vmlinux 0xfab47a39 kmem_cache_free +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfad81bbc kernel_getsockopt +EXPORT_SYMBOL vmlinux 0xfae67b1f cap_mmap_addr +EXPORT_SYMBOL vmlinux 0xfaf62af7 inode_get_bytes +EXPORT_SYMBOL vmlinux 0xfaf98462 bitrev32 +EXPORT_SYMBOL vmlinux 0xfafca07c path_get +EXPORT_SYMBOL vmlinux 0xfb0bca21 bio_copy_data +EXPORT_SYMBOL vmlinux 0xfb1f0945 netdev_warn +EXPORT_SYMBOL vmlinux 0xfb241f5f agp_generic_alloc_pages +EXPORT_SYMBOL vmlinux 0xfb3f4d6e tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0xfb464e13 blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0xfb494393 blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0xfb4b9657 blk_queue_resize_tags +EXPORT_SYMBOL vmlinux 0xfb5d7362 dquot_commit_info +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb8e607e file_open_root +EXPORT_SYMBOL vmlinux 0xfb94103e __clzdi2 +EXPORT_SYMBOL vmlinux 0xfb994174 inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xfb9e7dd1 __starget_for_each_device +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbbb7d50 blk_queue_start_tag +EXPORT_SYMBOL vmlinux 0xfbdb520f cont_write_begin +EXPORT_SYMBOL vmlinux 0xfbdd4c01 cpu_present_mask +EXPORT_SYMBOL vmlinux 0xfbf73a9e abx500_get_register_page_interruptible +EXPORT_SYMBOL vmlinux 0xfc02b7ad sysctl_tcp_wmem +EXPORT_SYMBOL vmlinux 0xfc09bfea may_umount +EXPORT_SYMBOL vmlinux 0xfc2d29b3 led_blink_set_oneshot +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc3b160f mempool_create_node +EXPORT_SYMBOL vmlinux 0xfc5d4b19 jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0xfc6b5d48 scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0xfc767c62 fget_raw +EXPORT_SYMBOL vmlinux 0xfc7c8add gen10g_restart_aneg +EXPORT_SYMBOL vmlinux 0xfcaa04a0 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xfcb6406c vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0xfcb77cfd ipmi_free_recv_msg +EXPORT_SYMBOL vmlinux 0xfcb926cd kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0xfcc1b62a scsi_register +EXPORT_SYMBOL vmlinux 0xfcc2a43c utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0xfccf1269 inet_csk_accept +EXPORT_SYMBOL vmlinux 0xfcdf5612 generic_write_checks +EXPORT_SYMBOL vmlinux 0xfce18589 kthread_stop +EXPORT_SYMBOL vmlinux 0xfce9bcf9 pci_disable_msix +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfcfa03ff fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0xfcff5699 should_remove_suid +EXPORT_SYMBOL vmlinux 0xfd19c1c5 dm_get_mapinfo +EXPORT_SYMBOL vmlinux 0xfd1e3a75 kernel_accept +EXPORT_SYMBOL vmlinux 0xfd2a6fc8 scsi_prep_state_check +EXPORT_SYMBOL vmlinux 0xfd6293c2 boot_tvec_bases +EXPORT_SYMBOL vmlinux 0xfd895c34 follow_down_one +EXPORT_SYMBOL vmlinux 0xfd908472 sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0xfd99623a ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xfdb6cedc _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0xfdb9b629 ioread32be +EXPORT_SYMBOL vmlinux 0xfdbe0288 pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0xfddc3507 pci_enable_ltr +EXPORT_SYMBOL vmlinux 0xfded3b6b fget_light +EXPORT_SYMBOL vmlinux 0xfded48ed enable_kernel_fp +EXPORT_SYMBOL vmlinux 0xfdf9a822 xfrm_user_policy +EXPORT_SYMBOL vmlinux 0xfdfc0b3b fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0xfe00f553 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe20c3c7 tty_schedule_flip +EXPORT_SYMBOL vmlinux 0xfe26fc7c nr_node_ids +EXPORT_SYMBOL vmlinux 0xfe44f051 mmc_power_restore_host +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe7c4287 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0xfe7ca273 __ide_dma_bad_drive +EXPORT_SYMBOL vmlinux 0xfe824359 dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0xfeabab42 pci_pme_active +EXPORT_SYMBOL vmlinux 0xfeb32764 fsnotify_init_mark +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfeebc7c4 __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0xfef96e23 __scsi_print_command +EXPORT_SYMBOL vmlinux 0xfefb3d14 set_binfmt +EXPORT_SYMBOL vmlinux 0xff02f1e7 fddi_change_mtu +EXPORT_SYMBOL vmlinux 0xff03f794 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0xff1765c7 rtas_call +EXPORT_SYMBOL vmlinux 0xff19c7b9 blk_queue_stack_limits +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff33e2bf kernel_connect +EXPORT_SYMBOL vmlinux 0xff4917a2 account_page_writeback +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff739bad jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0xff7559e4 ioport_resource +EXPORT_SYMBOL vmlinux 0xff77a00d kfree_skb_partial +EXPORT_SYMBOL vmlinux 0xff793044 agp_generic_destroy_page +EXPORT_SYMBOL vmlinux 0xff9835b5 skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0xff98c0a7 i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0xff9ca065 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0xffbe177c pci_scan_slot +EXPORT_SYMBOL vmlinux 0xffccaf4e xfrm_state_add +EXPORT_SYMBOL vmlinux 0xffd5a395 default_wake_function +EXPORT_SYMBOL vmlinux 0xffdc8b3d jbd2_journal_free_reserved +EXPORT_SYMBOL_GPL crypto/af_alg 0x289197b2 af_alg_cmsg_send +EXPORT_SYMBOL_GPL crypto/af_alg 0x5303d69b af_alg_make_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x5756f4b9 af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0x58716898 af_alg_wait_for_completion +EXPORT_SYMBOL_GPL crypto/af_alg 0x5d884d68 af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0xa4167f3f af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xbd35f4a0 af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xc620952a af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0xe720bc97 af_alg_complete +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x8fbd800e async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x763ffceb async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x7f826718 async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x5bde361c async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xc990522f async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x180bfead __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x7650a3f8 async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xbef1ee08 async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xc6d47f04 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x31006eb3 async_xor +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xee872a82 async_xor_val +EXPORT_SYMBOL_GPL crypto/authenc 0x587ef278 crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0x97111ab5 blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x27278ca9 __cast5_encrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x4a2a3ca6 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x7aae77c5 cast5_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1291971c __cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x1e2c961f __cast6_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x8f04034a __cast6_encrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0xacdacf59 cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast_common 0x08aa6fb7 cast_s1 +EXPORT_SYMBOL_GPL crypto/cast_common 0x0c5fbf8a cast_s3 +EXPORT_SYMBOL_GPL crypto/cast_common 0xe39dd4b4 cast_s2 +EXPORT_SYMBOL_GPL crypto/cast_common 0xee83a4f3 cast_s4 +EXPORT_SYMBOL_GPL crypto/cryptd 0x05553813 cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0x347a735a cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0x55b495e2 cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x83ae7169 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x87b26de0 cryptd_free_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x888d5777 cryptd_alloc_ablkcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x8b4e398f cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xaab7e32c cryptd_ablkcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0xe2be8bfd cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0xfbd2cbb6 cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/des_generic 0xcfd9a2c0 des_ekey +EXPORT_SYMBOL_GPL crypto/lrw 0x1cedd5d0 lrw_crypt +EXPORT_SYMBOL_GPL crypto/lrw 0x3864eb66 lrw_free_table +EXPORT_SYMBOL_GPL crypto/lrw 0xcd074900 lrw_init_table +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x5ddb33e9 __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x77b39cb4 __serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x8a1a99ad __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xb1c5e177 serpent_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0x06148a9a twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0x6c3229bb __twofish_setkey +EXPORT_SYMBOL_GPL crypto/xts 0x79a180bc xts_crypt +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x091b957f ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x3750edb3 ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x3ea2e50c ahci_platform_resume +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x730002dd ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x7b55a315 ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x861dab3c ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0x98cd1c6f ahci_platform_suspend_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xaba9997b ahci_platform_suspend +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xcb2d130c ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xe7db4353 ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/ahci_platform 0xf2b5ae2a ahci_platform_resume_host +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x0e426532 ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x51091fb9 ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x52c94553 ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x56c36629 ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5cc013ef ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5e869401 ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5eacba1f ahci_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x694f923e ahci_thread_fn +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x69adb5a4 ahci_shost_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x6e05c4e7 ahci_hw_interrupt +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x8ba854ac ahci_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x93458cfa ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x9654efa0 ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x9e44ee3a ahci_sdev_attrs +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa008b66e ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa2661841 ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xae58fb68 ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xc9f52191 ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xcba38c96 ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd61e818f ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xdea23541 ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xe2ac5c52 ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xf60a93bf ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/pata_platform 0x24c7a831 __pata_platform_probe +EXPORT_SYMBOL_GPL drivers/ata/pata_sis 0x82ea8e95 sis_info133_for_sata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x14102f23 ks0108_displaystate +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x48a70518 ks0108_writedata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x4f506333 ks0108_startline +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x6edae968 ks0108_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xbf4774db ks0108_writecontrol +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xedde6df2 ks0108_page +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xfee8ef7b ks0108_address +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0f08e76f bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x1356f604 bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x1d4e2c37 bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2a718cb2 bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2baf3200 bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x36e8eb4d bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x45415b53 bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x4792b8eb bcma_core_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x4a208092 __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x5aa00c9f bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7dc8f75a bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8b9d4505 bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8d717960 bcma_find_core +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xb505701c bcma_core_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xcaac864e bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xcd46f4ce bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe601c28c bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe6d60cf3 bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xedddb1be bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xee863cd2 bcma_core_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf0b7ffef bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf6ecf2ec bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xfbc55bd6 bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x119cb92f btmrvl_send_module_cfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x1cfda67d btmrvl_interrupt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x23f4d00b btmrvl_enable_hs +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x3a81dcee btmrvl_check_evtpkt +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x53cbd662 btmrvl_register_hdev +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0x7221578e btmrvl_send_hscfg_cmd +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xa00713a2 btmrvl_add_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xd527535d btmrvl_process_event +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xe8193ed0 btmrvl_remove_card +EXPORT_SYMBOL_GPL drivers/bluetooth/btmrvl 0xe8543d52 btmrvl_enable_ps +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x4204291d dw_dma_resume +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x6f545750 dw_dma_shutdown +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x99b9c63a dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xb2184dbf dw_dma_suspend +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xe7768b42 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x01e109dd edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x04673824 edac_device_handle_ue +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x1af54c55 edac_pci_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x1d6464a3 edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x274b8c3c edac_mc_add_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x2b5305c7 find_mci_by_dev +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x33bc3d9b edac_pci_handle_pe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x40b77255 edac_mc_del_mc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x4106b752 edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x577d38a1 edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x5b9af58c edac_pci_reset_delay_period +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x5ed99b8e edac_pci_handle_npe +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6165c3ca edac_mc_free +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x69259f22 edac_mem_types +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x703f182f edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0x95d69be2 edac_device_free_ctl_info +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xb97cb042 edac_mc_alloc +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xbbde83d1 edac_mc_handle_error +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xe760e356 edac_device_handle_ce +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xe80f3609 edac_pci_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xeda45006 edac_device_del_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xf00b9218 edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xf5569daf edac_device_add_device +EXPORT_SYMBOL_GPL drivers/edac/edac_core 0xf93fc4d5 edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xf4ade51f fw_card_release +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x3273bb24 bgpio_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-generic 0x63f9b47d bgpio_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x36fa4acd __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x7b546831 __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x2cf85d84 drm_vm_open_locked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xe51abe29 drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xea9342da drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0x6adf436b ttm_prime_fd_to_handle +EXPORT_SYMBOL_GPL drivers/gpu/drm/ttm/ttm 0xce36343e ttm_prime_handle_to_fd +EXPORT_SYMBOL_GPL drivers/hid/hid 0x038b31a2 hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x05495392 hid_debug +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0c5616e3 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0d8405d0 hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x11e380d3 hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1205262d __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1d9a49ed hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x24903d6a hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x33e342c5 hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3ceae539 hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x42057c5d hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4249aefe hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x4906a967 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x56f20a63 hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x57bdc37b hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5aada0ec hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5c6e3bcc hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5d918cbf hidinput_find_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5e8558eb hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5eeb9284 hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x63e240e8 hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x684c3ef4 hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6d8af2a3 hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0x79b01c49 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0x88891a0b hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8a557a41 hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8b4a2f3d hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x97d3488b hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa6eacb74 hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc3cee494 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcd39f9df hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd989582a hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0xdd0cb23e hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe2ea8ada hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf50acb93 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0xf594a5b0 hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x2f622ea1 roccat_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x7857e812 roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x8c4181ec roccat_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x01075c7a roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x0478ee63 roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x7e809b2c roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xe19434fe roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xf051cab1 roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xf7c532ec roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x31d10e38 sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x389d2d6c sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x637ea19e sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x736ad925 sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x793dce7f sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xb119e2af sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xe5f5b27c sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xea9ab143 sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x01fd453e usbhid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0x244cd9cf hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x0b07edf5 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2195ec98 hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x221a751d hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x2661be31 hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x464bf322 hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x648cd8d2 hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x6653648b hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xadc9cfbb hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xaf024757 hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xbd5dbcc3 hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xc50d421c hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xc77fe246 hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xe1eda4cf hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x2427c8e6 adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0x630cc634 adt7x10_remove +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xd88d8673 adt7x10_dev_pm_ops +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x011e0329 pmbus_write_word_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x42f1feb9 pmbus_get_driver_info +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x46a9db21 pmbus_read_byte_data +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x4842f09f pmbus_check_word_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x639ba852 pmbus_clear_cache +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x787eda00 pmbus_clear_faults +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0x880d826a pmbus_write_byte +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xac87f047 pmbus_check_byte_register +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xbb39335b pmbus_do_probe +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xc6c538ad pmbus_do_remove +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xdae52c22 pmbus_set_page +EXPORT_SYMBOL_GPL drivers/hwmon/pmbus/pmbus_core 0xf8f494cf pmbus_read_word_data +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x268b7eca i2c_dw_read_comp_param +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x2d71714a i2c_dw_clear_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x32b3ad1e i2c_dw_enable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5751db79 i2c_dw_init +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x5bb1170b i2c_dw_isr +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0x660ba856 i2c_dw_disable_int +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xc2d5240c i2c_dw_xfer +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xcd53411b i2c_dw_disable +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xd8b9f9c9 i2c_dw_func +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-designware-core 0xf7abf1dd i2c_dw_is_enabled +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x85048c4f i2c_add_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x9981f072 i2c_del_mux_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x2a09ce32 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x587f8162 i2c_setup_smbus_alert +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x229a8fbc ad_sd_read_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x615c9bd3 ad_sd_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x65fa44fd ad_sigma_delta_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x8081fc25 ad_sd_write_reg +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x8bc7684c ad_sd_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0x9fd1eee4 ad_sd_set_comm +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xb212d58b ad_sd_calibrate_all +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xbce3cf7f ad_sd_validate_trigger +EXPORT_SYMBOL_GPL drivers/iio/adc/ad_sigma_delta 0xe1980d5f ad_sd_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x0f30917f adis_remove_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x17235b61 adis_reset +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x17a67188 adis_init +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x3f605274 adis_check_status +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x79dbb47b adis_probe_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x7c36ee59 adis_initial_startup +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0x9b37d8e2 adis_read_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xc1e4d133 adis_write_reg +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xc66ebf84 adis_update_scan_mode +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xd9c4a47c adis_setup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xdeafab81 adis_single_conversion +EXPORT_SYMBOL_GPL drivers/iio/imu/adis_lib 0xf4d702de adis_cleanup_buffer_and_trigger +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x010053a4 iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x095ce673 iio_update_demux +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1db58024 iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1eb174ab iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1eb26bff iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x267c0508 iio_channel_release_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2a1fab3c iio_channel_stop_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3422e4aa devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3ccb1403 iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x3f033586 iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x64edfab4 iio_scan_mask_query +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6795c70f iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6c70cae3 devm_iio_trigger_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7055fd72 devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x70a97e19 iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x71f2892b iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7b7bbcaa iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x89d16480 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8b323e06 iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8cc00075 iio_scan_mask_set +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x98706fe5 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb4cb99fa iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xbe6a2b38 iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xbea78e5b devm_iio_device_free +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xbff339ef iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xc16ed567 iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd1477f04 iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd688e820 iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe649dc60 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe6d96934 iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe9cd8492 iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xedcb3527 iio_map_array_register +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0x6cf3d98c input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0xe7ce76b6 matrix_keypad_parse_of_params +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x49a4fcbd adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x66535a18 adxl34x_suspend +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xb85bbf28 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xe4586827 adxl34x_resume +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x5a94be5a cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0x8b368b29 cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xb7f2bee5 cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x000b8e3c cyttsp_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x70c871a2 cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x9514eb13 cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x7c413e15 cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x8101b1a1 cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x00fcd4f1 ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x130eb428 ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x13e763e0 ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x39a7a31a ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x88c83330 ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xad33b8d2 ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xda7c4982 ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xe25f14e1 ipack_device_del +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xf87876d4 ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0x23359aff unregister_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/capi/kernelcapi 0xce1414b2 register_capictr_notifier +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x03c23f00 gigaset_m10x_input +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x0b73e4a7 gigaset_isdn_rcv_err +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x0f44bf90 gigaset_freedriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x18ac8475 gigaset_m10x_send_skb +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x1b9df88a gigaset_skb_rcvd +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x202762ae gigaset_freecs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x454aa44f gigaset_debuglevel +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x6c54a851 gigaset_if_receive +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x71866b12 gigaset_handle_modem_response +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x91b08baf gigaset_shutdown +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0x93407700 gigaset_stop +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xa3151853 gigaset_dbg_buffer +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xa8613b38 gigaset_skb_sent +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xaf4b2e20 gigaset_initdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xb0e55323 gigaset_start +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xc870cd15 gigaset_initcs +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xd43a52e8 gigaset_add_event +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xe41516ff gigaset_blockdriver +EXPORT_SYMBOL_GPL drivers/isdn/gigaset/gigaset 0xfb3f363b gigaset_fill_inbuf +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x0322a0e9 lp55xx_update_bits +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x0cba566c lp55xx_register_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x4759ba8d lp55xx_is_extclk_used +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x53cf9a2b lp55xx_write +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x56960019 lp55xx_read +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x65978cd0 lp55xx_unregister_sysfs +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x9c5becad lp55xx_register_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x9f9642a6 lp55xx_init_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0x9fc1df5e lp55xx_deinit_device +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xa2729640 lp55xx_unregister_leds +EXPORT_SYMBOL_GPL drivers/leds/leds-lp55xx-common 0xba3004d5 lp55xx_of_populate_pdata +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x749e05f2 ledtrig_flash_ctrl +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x7903e46e ledtrig_torch_ctrl +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x0ec17d44 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x26062738 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x40c27b88 __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x4c49fc16 __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x51a15737 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x616b6217 __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6907ac0d __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7be42a1c __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7e532a71 __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x8a4afa11 __tracepoint_bcache_alloc_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x914361f4 __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x9272fb0f __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x938cc2b2 __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa649dd21 __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb157059f __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb317649e __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb493772a __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb834c124 __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbb1fc0a4 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbc4fcb1e __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc1474d91 __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc379085a __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc5aed8ad __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc7eda602 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xce055cbe __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe20fe821 __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe24daf87 __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe2ed0930 __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xea2303e0 __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xef1156ee __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfc131205 __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x26d01005 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x299fa14f dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2b3ac9da dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x887c9c24 dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x8fc571ab dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x97120c98 dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb6d5c65d dm_deferred_set_add_work +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb70b342a dm_bio_prison_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xbed0dd64 dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xebd06eaf dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x4f2131ea dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6aba7f5e dm_bufio_get_block_number +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x7c381a76 dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9310ba06 dm_bufio_release_move +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x9c256008 dm_bufio_get_device_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa1d2413a dm_bufio_read +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa448e19f dm_bufio_prefetch +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa82b2066 dm_bufio_write_dirty_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xafbda3f3 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc9a3422d dm_bufio_write_dirty_buffers_async +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xcbb1bae2 dm_bufio_get +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd4bddf5c dm_bufio_issue_flush +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe6024e59 dm_bufio_release +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xebcc64a4 dm_bufio_get_block_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xeca7949e dm_bufio_client_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x4ce8a566 dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5431d5eb dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5ffbe24b dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x6920d4ef dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xab65f794 dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xb3071c1a dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xbd6b192a dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x6ec8a6e0 dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x7bd22651 dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x2d600e36 dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x38efaf5a dm_region_hash_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3a18389a dm_rh_update_states +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x4430764e dm_rh_region_to_sector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x45ab972a dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x50f31a81 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x5f70c709 dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x67348197 dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x6aec169c dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7774620f dm_rh_stop_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7d053fc5 dm_rh_start_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x8ea7b961 dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa53387c7 dm_rh_flush +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa68e1f06 dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa83588eb dm_rh_recovery_end +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfad9d53a dm_rh_get_region_size +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfc62ef4e dm_rh_get_region_key +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfd93482e dm_rh_recovery_in_flight +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0054f69d dm_tm_pre_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x01445176 dm_btree_find_highest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x17c36f29 dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1cac81ac dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2025e954 dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2c112836 dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f40da68 dm_bm_set_read_write +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f74609d dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x32b5f546 dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x38c75c44 dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3ad0f55b dm_bm_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x40f7bd91 dm_tm_inc +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x42dbdfc3 dm_tm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x49b35849 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x55b4bd4d dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5e6aea80 dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x62c1b9ee dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x688d422d dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x68fae9d2 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x72289260 dm_block_manager_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7ade1071 dm_tm_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7b047bd9 dm_tm_create_non_blocking_clone +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x80c89b3d dm_tm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x827a42f4 dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x832bf228 dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x858c8d94 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x89f1e1cc dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x966a8838 dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9e798e22 dm_bm_set_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9f624559 dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa0bbbb49 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa13861b4 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa87c5b4d dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xaee02382 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xafeda29f dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb7bad799 dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb9a6ecf8 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbd50ebbb dm_btree_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xca40abd5 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd041d62b dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd29923fb dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd81efad8 dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe44b4b9b dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xed1e1f96 dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf375d009 dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf475af48 dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf5455120 dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/raid1 0x635db49a md_raid1_congested +EXPORT_SYMBOL_GPL drivers/md/raid10 0xa1018b16 md_raid10_congested +EXPORT_SYMBOL_GPL drivers/md/raid456 0xa7ec2e54 md_raid5_congested +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x204b6f36 saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x4c6c3b2d saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x55ce41d3 saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x5cab645f saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x5d60b0e0 saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x97efbee2 saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x9df1ccba saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x9f49881d saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xbe19968b saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xdacf3546 saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x809acafa saa7146_start_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x89f08433 saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xaba7c645 saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xc038a8b2 saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xcc8c2235 saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xd9dfce45 saa7146_stop_preview +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0xfe9ee5e1 saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x0d48ca53 smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x17a4fdd8 smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21a39ab6 sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x2e86ef95 smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x2efad4bf sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x32fdcf70 sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x37d91069 smsendian_handle_tx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x586b0847 smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x662a64e5 sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x684c6100 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x71ec515d smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7c576277 smsendian_handle_message_header +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x887cff87 smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x99a81ab3 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9b7f3068 smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9c2225ed smscore_translate_msg +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9fe18198 smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa8c75479 sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xacce0418 smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xade20371 smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xf4d2522f smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0x6835ab01 tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0xa93ba444 cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x09dd545a mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x19f1124e mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x20b54d22 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x3f2b7a75 mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x46ed6880 mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x4765eca6 mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x59f3ddbd mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x5a87a585 mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x7b648b7e mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x83e28500 mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x849cfcdc mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x8fadfd6e mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xa6365172 mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xb2241e90 mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xba0340ab mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xcbe20c65 mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xd3585a05 mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x4c9660fd saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x930ff34c saa7134_s_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x9e9c7509 saa7134_g_ctrl_internal +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xb37c3b2c saa7134_queryctrl +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xe690256e saa7134_s_std_internal +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x14c85f2b ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x1f391a0c ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x35c560d2 ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x53faacb3 ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x791a129d ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x9c90baf6 ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xa0e6be7c ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x30803db0 radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0xb20a47ec radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x001aab52 rc_open +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x05015bf8 ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x237dfc4c ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x3cd80811 rc_close +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x4856ae94 rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x4f38fe4c rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x553efb91 rc_core_debug +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6343ed7c rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x71874bc5 rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x74dfa9a5 rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x9be5723f rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xadfc2a70 ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xafbb2793 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb19c4f43 rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb43a7944 rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xbf246eb6 rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xc2ebe8a7 ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd405fd87 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xd6473e40 ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xffe85f57 rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0x40aada60 mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0x11eabe36 microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0x4f80e643 mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0x91d6b372 r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0x3bad1d07 tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0xa34666d6 tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x74367da1 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0xcb8b8663 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0xd32ca685 tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x3163fa21 tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x454c580d tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x18ce6d83 tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0xf52e59ae tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0x304be000 simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x04dca86e cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x123753c1 cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x158a8887 cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x3cbf988f cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x68442666 cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x69f74ca8 cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x70d41c9a cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x8dab2b5d cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x908bb5b8 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xa1be4aba cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xa8fe0fb8 cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xb2e299e8 cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xcc090d05 cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd5567259 cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd7763145 cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xda4b7fbd cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xdbd558ec cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf3e7e4f3 is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xf86be3fb cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0xd900062f mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0xc1f3b47b mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x08c1a688 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x29c39c25 em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x3a3814ee em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x4ae1119a em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x6d4652b7 em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x961cb1d4 em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xaefef4e1 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd3b16136 em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xda643aeb em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xe0a74460 em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xe2545035 em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xe3978c9d em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf428d647 em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xfce5c573 em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x0ae95778 tm6000_set_reg +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x2309a6d6 tm6000_xc5000_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x5fdfe0cf tm6000_set_reg_mask +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x85bc5598 tm6000_set_audio_bitrate +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0x89b611dd tm6000_debug +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xdff8e89d tm6000_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/tm6000/tm6000 0xf4de5675 tm6000_get_reg +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x01c483a9 v4l2_get_timestamp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x480a9fc0 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x7af7f471 v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x813f3de4 v4l2_find_nearest_format +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x8a3bbab8 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0x96c5c82d v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xc6b3af20 v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf39b5f7e v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-common 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x08982d59 v4l2_match_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x221d2fbc v4l2_enum_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x36e8756a v4l2_find_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x4103badb v4l2_print_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x53105839 v4l2_detect_cvt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6976cfe0 v4l2_valid_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x6f344bb9 v4l2_calc_aspect_ratio +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x7eaf8e7a v4l2_detect_gtf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xb0891da2 v4l2_dv_timings_presets +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x6b7929ee v4l2_int_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x874c1881 v4l2_int_ioctl_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0x89ee092e v4l2_int_ioctl_0 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xa5228b24 v4l2_int_device_try_attach_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-int-device 0xb4f18277 v4l2_int_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0aaac867 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x0d899e51 v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x17eb0eee v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x36e0c0b9 v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x405ed70a v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5b20a0e0 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7fa61876 v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x89990cc9 v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x90e0bf95 v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa1d9735a v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc2e6f99d v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc9011afc v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd20e30e2 v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xddde9d8b v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe9550b4a v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x01e10477 videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1256331e videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x12f7e0f9 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1582d8d0 videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x185a72ac videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1936bb07 videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x2f7da171 videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x516b1c9b videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x51c2cadd videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7427d437 videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x76ff94e2 videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7b3c469c videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x8c21d00f videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x90badaae videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x950b621e videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa0573bb7 videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa849bb47 videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xb673f951 videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xc1c1c8d2 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xd47522de videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xea8bc014 __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf56b5d1d videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf8d86b47 videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xfa322bfd videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x23ac71c7 videobuf_dma_contig_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x524b207f videobuf_to_dma_contig +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-contig 0x6f62df7e videobuf_queue_dma_contig_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x0372cc06 videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x2aa956d5 videobuf_dma_map +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x3b8fc7e5 videobuf_dma_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x3fbeffdc videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x553a86d0 videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x5ae92561 videobuf_dma_init_kernel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x5fcd0ee8 videobuf_dma_init_overlay +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xc0c4ceb2 videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xdbbc63e5 videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xf095de28 videobuf_dma_init_user +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x08ce137c videobuf_queue_vmalloc_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x12b95bd0 videobuf_vmalloc_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-vmalloc 0x96a65a09 videobuf_to_vmalloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2616f6fa vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2da18011 vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x2e838e8a vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x30d1ad68 vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x334cf87a vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x438a07bc vb2_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x4d4c0110 vb2_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x4db68956 vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x507f2faa vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x520c82d0 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x693e5d49 vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x6fa8a4e6 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x734968cf vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x73c0e858 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x76c91d34 vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x7c10ccd6 vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x856f8e17 vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0x92c483f4 vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa4b6202a vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xa7138178 vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xae83e50e vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xafdfbbff vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb22aff53 vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xb472ceb1 vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xc627a46d vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd35f56fd vb2_write +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd493c409 vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xd94fb897 vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xdb8e11d3 vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xdc3e2a5f vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xdd959f02 vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xe2c341e3 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xe90f1c70 vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-core 0xe9d5ce85 vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0x5192e99a vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xe57f0426 vb2_dma_contig_cleanup_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-dma-contig 0xfd61a9e1 vb2_dma_contig_init_ctx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x0eb93453 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x1aca02d6 vb2_put_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x60f6c1db vb2_get_contig_userptr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-memops 0x87899f59 vb2_get_vma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf2-vmalloc 0x20a14310 vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0f293493 v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3df28fa9 v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4c03a4bc v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5664bc4c v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x62949d70 v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x67ba5f12 v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7847c5b6 v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7c2a05f7 v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x843f37e5 v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x99c56340 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa5b30a84 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa78ce30b v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa7a9299a v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xaa4d7600 v4l2_compat_ioctl32 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xae37c09b v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb78585b5 v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbc5c6629 v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbff3f8ff v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc06c9efa v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc2a4f6a2 v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe9f33be9 v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf1c338df v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf4ebec7f v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xff08d03e v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x1840654f i2o_dma_map_single +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x31c5232a i2o_dma_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x37997483 i2o_dma_free +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x4b20472e i2o_pool_alloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0x78b35f90 i2o_sg_tablesize +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xb612f0fa i2o_dma_realloc +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xc6ab77cf i2o_dma_map_sg +EXPORT_SYMBOL_GPL drivers/message/i2o/i2o_core 0xd26014c8 i2o_pool_free +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x573bf5b8 pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x95c831f8 pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x9614c830 pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x2540968b kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x63e6b955 kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x8de55283 kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xa732dd55 kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xa8e4b908 kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xc1ba1101 kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xce689a42 kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xcf723a5b kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x75a0ab89 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xdb103724 lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xf1b720b2 lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x26f26b37 lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x43706f1f lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x6b11d459 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xaaf67828 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xdc235566 lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xe2eeff4e lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xf754a037 lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x46a9d6d2 mc13xxx_common_cleanup +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x5b8d066f mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x962e5f60 mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xaef75199 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xee4d1ab9 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xfc42efd1 mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x04b65ec0 pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x26e9757f pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x2f34ada7 pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x556a0947 pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x70b6a7c4 pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xb7278a1b pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xd2d94d3d pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xd8cab189 pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xe59d0cd8 pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xe72838f1 pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xe809f800 pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x5f928b43 pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xfea1f3aa pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x235d6854 pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x35231bab pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x4777913d pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x57b2367e pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x8ef043cd pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x01a33234 retu_write +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x4fca3918 retu_read +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x0218ed67 rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x1caed5cf rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x1d62650c rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x310b64c1 rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x42339428 rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x4739a486 rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x620794d0 rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x7371307d rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x75e428c1 rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x8012a80b rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x812b99c6 rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x8b2f3753 rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0x90fe21ee rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xa093c5d3 rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xbd86de7e rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xbe988b14 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xbefd7503 rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xce356dd1 rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xcfaedfbf rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xd4ec2530 rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/mfd/rtsx_pci 0xf576bdfa rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x26704000 si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x278624d9 si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x29c8b5b2 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x32b7705c si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3881e7db si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x47dd144c si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x49ea33a3 si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5c82ff3b si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5e78e5b6 si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x5f7ba4b7 si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x681bd9d6 si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x847cac7b si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x8b71cd3f si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x91921f90 si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x97295e14 si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x981ad50c si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9b3b468f si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa4a9713d si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa8e892e7 si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xadeb98a7 si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xb81e0d9c si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xbf1a09bf si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc6bac5d4 si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc7f943a9 si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xcea5d117 si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd01a353e si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd1304e8d si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd1cb0fc1 si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd38be974 si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xe2130984 si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf16cb2d5 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf1b51ffd si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf1ca1681 si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf88080bc si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x165e72c1 sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x26f3a3a9 sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x7296cfc6 sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x866efea0 sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0xb3649010 sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x2dc912b4 tps65217_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x3f19c066 tps65217_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0x4215dc67 tps65217_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/tps65217 0xad2c5778 tps65217_set_bits +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x15733005 cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x46b08662 cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x4e182dfb cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x5a560807 cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x27cb133b eeprom_93cx6_multiread +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x63d2ff63 eeprom_93cx6_wren +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x822222db eeprom_93cx6_write +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x98bb5a22 eeprom_93cx6_read +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x351d139c enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x411a666b enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x5add351e enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x7ca49f0c enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xc2f148ff enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xc77d81a6 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xccb441dd enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x26f75083 lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x526dfef0 lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x5b7a73ea lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x6b898ec0 lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x7aea6b93 lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x86d5c90b lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xa3b341ea lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xaa9ca055 lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x42b7cffd st_register +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0xb2aed73d st_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x059e133a sdhci_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x103cf61e sdhci_send_command +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x5f88f543 sdhci_disable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x8b9456c9 sdhci_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9ae7022b sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xb22db2e9 sdhci_enable_irq_wakeups +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xec345bb4 sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xf5483457 sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xfef31a2d sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x0bb95bf7 sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x21f75ac9 sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x3807215b sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x511881b7 sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xbfae7b64 sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xce93e72e sdhci_get_of_property +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xecfdc7d1 sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x6725665d cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x9a3b43cb cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xa5126623 cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x427adb43 cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xb18314c5 cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xcfd15f15 cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x1468b7b8 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xde9494a4 cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xec8b6596 cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xfae67c21 cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x024fb3e7 mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0e9b6581 mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x146e1c04 mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x14ffd402 deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x17072c21 mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1d2b4aac get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x226a9109 mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2cbad501 unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2cbb67a8 mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2cde7440 mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3748146a mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x45f16a04 register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x49322303 mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5885c3eb mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x58acc5a7 __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x59a4687e kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5e538cc2 mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x69da1a71 mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6a2cbffa mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6d219656 mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x715e0d18 mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7caaff04 mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7d89a5f1 register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x80adb9ec mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x88b18eb9 __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8913feec put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x92f9d342 mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9a872f9b mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa2b85747 mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa78509d9 mtd_is_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa925958a __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb6249440 mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbc9cfca7 get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xbcd685fa mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc57a1dde mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd19dd0ce mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd972029c mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xda30b18f mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xdd91bd0a mount_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfcce153d mtd_erase_callback +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xffd6d6c1 mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x05e27930 register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x1ea361bd deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x23851e1b add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x43f6bb8e del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x4d1698c7 mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0x4090e11e nand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/nand 0xf98d7c95 nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/sm_common 0x1fd211e3 sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0x144ecdc0 onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/onenand/onenand 0xd2e94b31 onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x034cc3d9 ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x25669145 ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x2ccc96f3 ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x3b9b27cb ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x5cfdd22d ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x66a1dc31 ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x7d7b2754 ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x8e78d3b4 ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x9217776c ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc71a9a83 ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xcbbc10fa ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xddd040ce ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xe7380b42 ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xe790ca4b ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x1fda2352 c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x6d2a193d unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x78fd2a6a alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x8e1ffd8d register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xb70dff5b c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xe4ca7dec free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x16d616ac open_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x222c295a can_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2c82ec7e safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x2fb8997d devm_can_led_init +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x3ee026b6 alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x40731a35 can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x48ee9a78 can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x4a70a4c0 alloc_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x4e4203f4 can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x4f859278 can_led_event +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x55268697 close_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x5a466005 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x6db52b64 can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0x82b00bd0 free_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xb346573b can_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xdff9e1a1 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/can-dev 0xf30c0672 register_candev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x355df7eb register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x50fd64fa free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x63b25563 unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xbbc10fb9 alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x1aa3686b register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x207cec25 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x94b6436b alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xd121ee03 unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x0a298f76 macb_get_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x0f3abf16 macb_set_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x4b4ae18f macb_get_hwaddr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0x7701a009 macb_set_rx_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xc2eda508 macb_ethtool_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xe367cf78 macb_ioctl +EXPORT_SYMBOL_GPL drivers/net/ethernet/cadence/macb 0xe9b695a5 macb_mii_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x000999a5 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0182c356 mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x01effabc __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x077ef2fb mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0bcc45b6 mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0bebd2d4 mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0c2669e2 mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0d004a80 mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0edc1ddb mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x113e17a4 mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x16a47ce7 mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x16edfd1a mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1875b9c4 mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x18d7747b mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x19c743c9 mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1ad9602b mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1ada75ab mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1c8a6a51 mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x27a64196 mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2ca00ecc mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2e396c48 mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3aa7d658 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3b33c6fc mlx4_map_phys_fmr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3b546d32 mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3c7bdc39 mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3f72d686 mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x41462019 mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x44fc93e4 mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4593b409 __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x47083c28 mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4bcd61e6 mlx4_fmr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4d863b38 mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4fb545ff mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x507228e2 mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x52693310 mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x556222cb mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5708550d mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x594ee7e4 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5c8000df __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5d392846 mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5d87f32b mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5e010ad8 mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x60716d7b mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x61ad3d00 mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x62d463ac mlx4_fmr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x71d25b7d mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x72cef9b3 mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x74af6b82 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7b70f504 mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x852f19c9 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x884d0547 mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8ce666d6 mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8ef3de60 mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8efe1a42 mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x90d80adb mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x918dc31e mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x92c09c77 mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x93afa39f mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x976c765e mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x985236ee mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9c33e9ab mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9e10f8b4 mlx4_fmr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa1b3fc19 mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa4c99825 mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa59d3d07 mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa6a74f71 mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa6b196fb mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xad37c81d mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xafc7cf64 mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb1c0a2db mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb4afbef8 mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb63f6301 mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb6d2b529 mlx4_fmr_unmap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb70f17e9 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbad543af mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbae4d42a __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbb2e5bdd mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbde46f59 mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbe37d56d mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc75d59c3 mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc872fe0f mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xca590ee4 mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcc4beef7 mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcdbaa6f3 mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd4df1259 mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd56568ca mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd5c8fbb3 mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdafcffbf mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdc363ce0 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdd3211bf mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdf2fcd93 mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe639e02d mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xea78650b mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf0bf8b54 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf1f68fae mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf364208c mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf8680d49 mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf9ef8005 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf9f27b48 mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfc68db49 mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0695debd mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x342feeed mlx5_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x43738d56 mlx5_create_map_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x462ee3ae mlx5_core_create_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x54f374e9 mlx5_core_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x69d8c923 mlx5_core_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6ef5daeb mlx5_core_eq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7948abf6 mlx5_destroy_unmap_eq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x80898946 mlx5_core_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9d14979c mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa62ee4e1 mlx5_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb7305410 mlx5_core_mad_ifc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc935b456 mlx5_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd5b1f47e mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd6c4ef56 mlx5_fill_page_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe9cba5be mlx5_core_destroy_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xec2a6058 mlx5_core_xrcd_dealloc +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x054e56bb macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x4736e4df macvlan_start_xmit +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x7c56795c macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x847b0f9b macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xa8a6cfa7 macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvtap 0x12187725 macvtap_get_socket +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x3303b07e usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x53795da1 usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x81b6ba51 usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xb096f3be usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x00583f56 cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x18888fb8 cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x1a991405 cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x28b27460 cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x6184d30d cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x6fe3f953 cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x8d80573e cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xf7a51634 cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x1804f3c8 rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x18171f80 rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x22c3697e rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xb1cf86fb rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xb27b14d1 generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xc124259f rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x07a87cb2 usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x0d38fd95 usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x131bda8a usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x1ac9dd50 usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x1ceeb7f2 usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x1e1cc7af usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x224ab593 usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x27d021c5 usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x33291fb0 usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x398a36b8 usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3a7ef739 usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3aa9fd74 usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3b1d27e5 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x426f1b1c usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4786ee76 usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4a8e3daa usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x50ad0a36 usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x66db9ffe usbnet_get_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x68c7d2b2 usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6df8e400 usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6ffecbdf usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x8013a697 usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x812ac59c usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x974429e1 usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x98ba1111 usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xa00dcd87 usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xaa597aff usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xd1935cff usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xd65bca08 usbnet_set_settings +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xdc6e8a81 usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe791b993 usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xfea23dc3 usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x1623e3fb vxlan_sock_add +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x1e4d9e88 vxlan_src_port +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x61036119 vxlan_sock_release +EXPORT_SYMBOL_GPL drivers/net/vxlan 0x8f1b058d vxlan_xmit_skb +EXPORT_SYMBOL_GPL drivers/net/vxlan 0xd4ba3477 vxlan_get_rx_port +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x072e5d0f i2400m_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x1ed4a0d6 i2400m_tx_msg_get +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x3f9d3a2a i2400m_post_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x485dad70 i2400m_is_boot_barker +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x53cd6a4d i2400m_release +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x56f50b5a i2400m_pre_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x5e492f3d i2400m_error_recovery +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x614f8b0e i2400m_cmd_enter_powersave +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x8962d83f i2400m_reset +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x8fa4fc17 i2400m_dev_bootstrap +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0x9659c708 i2400m_rx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xac386b4f i2400m_init +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb00b793c i2400m_bm_cmd_prepare +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xb87bb5fa i2400m_netdev_setup +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xdd11f1ad i2400m_tx +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe6764533 i2400m_dev_reset_handle +EXPORT_SYMBOL_GPL drivers/net/wimax/i2400m/i2400m 0xe695fe3f i2400m_tx_msg_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x19eeac35 cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x3107fefa cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0x59c71c7d cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/cw1200/cw1200_core 0xb1db4478 cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/ipw2x00/libipw 0xa1ed9208 libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x2a11f9a6 il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x4e97cb0f il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x656a3f4e il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x88ece9ac il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlegacy/iwlegacy 0x9006f087 _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x0d556623 iwl_abort_notification_waits +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1291ef1b iwl_init_notification_wait +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x14944a31 iwl_opmode_register +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x187dbdc4 __iwl_crit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x1ac36ff0 iwl_notification_wait_notify +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x35033c81 iwl_phy_db_free +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x3d548dab iwl_remove_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x4128aba0 iwl_parse_nvm_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5c52e109 iwl_opmode_deregister +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x5d0a212e iwlwifi_mod_params +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x69afa7fb iwl_poll_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x72ffbbe3 iwl_write_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x776221bf iwl_send_phy_db_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x79110c4d iwl_clear_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x7db34e48 iwl_read_direct32 +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8381c430 __iwl_info +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x8c5d5ab3 iwl_phy_db_set_section +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x9035dafa __iwl_warn +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0x92f3accf iwl_nvm_check_version +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xa6c57dc8 iwl_set_bits_mask_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xaa6d08eb iwl_wait_notification +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xba317565 __iwl_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xbccd0fdb iwl_set_bits_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xc67c31ed iwl_notification_wait_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xcf2ffd4b iwl_read_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xd32cb0b2 iwl_phy_db_init +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xdd0c2566 iwl_parse_eeprom_data +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xe3901e81 iwl_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xe3bb7419 __iwl_err +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xed20163e iwl_poll_direct_bit +EXPORT_SYMBOL_GPL drivers/net/wireless/iwlwifi/iwlwifi 0xf4e29317 iwl_write_prph +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x0c4179d8 lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x30567538 lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x3800c10c lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x4335798c lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x557b93e7 lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x5fdf38b8 lbs_disablemesh +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x735a446c lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x8abdb81c __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0x98be0dbb lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xa5f2e92f lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xb419ebdf lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xb4e0fa04 lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xbd9eaab6 lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xcbec920d lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xcf7ab740 lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xd73fc7d2 lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xefc01617 lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x05fa12d2 lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x13da5069 lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x23c128e5 lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0x3bb8c607 __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xb7ef2b98 lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xc23c4135 lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xc85e6899 lbtf_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xd2d399bb lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf 0xf091c08b lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0xa6803340 if_usb_prog_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/libertas_tf/libertas_tf_usb 0xff7d5e4d if_usb_reset_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x23bdf637 mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x31209f17 mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x63a25cda mwifiex_deauthenticate +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x6db41bf1 mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x7e58fb06 mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x8bd6619a mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x9968f414 mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0x9bd6a6df mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xaa03cad6 mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xaab102ff mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xd76daeb6 mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xe82bd901 mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xee67b8e4 mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/mwifiex/mwifiex 0xf7d6e240 mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x157365f9 p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x2adc1e48 p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x398cd717 p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x5646f7b9 p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x66712cab p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0x830d9721 p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xa2af0555 p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xaa976202 p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/p54/p54common 0xaff497f5 p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x00424968 rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x05eba3bd rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x06b1e04b rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x0e39f841 rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x150d5b35 rt2800_rt2x00debug +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x18140aa5 rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1886de3e rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x1db1d796 rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x34a89ebe rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x3965bbf2 rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x416776b1 rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x44a1e630 rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4be602c3 rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x4fd9f7f1 rt2800_get_tkip_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x521f263c rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x527a7cdb rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x5774d181 rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x6c2a54d1 rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x79016ad9 rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7ae6ef8f rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7d565d70 rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x7e267244 rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x81246f37 rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x82d424cb rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x895c9ddf rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x89e4a88a rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x9570b50d rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x9be3d9d5 rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x9d4a5923 rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x9df7fd8c rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0x9f33cc14 rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb602522e rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xb79c154b rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd2b4806c rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xd5e92fc2 rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe19d519f rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xe6afa853 rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xec9749c3 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800lib 0xff80ed18 rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x04a346e1 rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x0fad1430 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x174d94e9 rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x1c650f60 rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x2505789d rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x3e4f6b36 rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x50ef4ff5 rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x61b15e15 rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x6eb823ef rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x92c0bcd1 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0x9a76cfcf rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xa227e96f rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xb4c3c48e rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xc6a1455e rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xcb225b1b rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xe28f94c7 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xe68f22de rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2800mmio 0xff1fb834 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x049bfc0d rt2x00debug_dump_frame +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x05dc49a5 rt2x00mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x07c80263 rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x099bc2bb rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x0ab0ac6b rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x0ae74c38 rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x0e5be1a6 rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x149eac13 rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1b1dc459 rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1d012010 rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x1ebebffb rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x215876f4 rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x305c9a2f rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x37ef6b62 rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3eb26bc0 rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3efd9f60 rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x3f1730ec rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x41eb574b rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4c18c035 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x4da8ec3f rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x526aa8ff rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x64e94654 rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x662999c5 rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x677bdf38 rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x7238b6d5 rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x72d403bb rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x7509fa66 rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x84014486 rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x85e11180 rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0x97fa7b61 rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xa6b1d27d rt2x00mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xad3db437 rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xafd5a09b rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xb382166b rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xbb82b54e rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xc59b4ab2 rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd5214c0b rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xd62b92d9 rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xdeb46075 rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe1ac25b9 rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe599b018 rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xe61b9830 rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xeba4688c rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xf61212b1 rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xfd9f72a6 rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xfda19ad3 rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00lib 0xfeaeb66e rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x30db186e rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0x91f28518 rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xb6997d92 rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xcbbe3544 rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00mmio 0xed36ff0f rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x676e83a6 rt2x00pci_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x6840f061 rt2x00pci_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0x879c2e0a rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00pci 0xa7a807ad rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x0794000b rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x0b273708 rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x0b3592e9 rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x3c23960e rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x3d063761 rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x42d284cc rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x4511c2df rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x4b9146a9 rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x690e131d rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x6a0bca58 rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0x7fc1418f rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xa29c373f rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xa659cf89 rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xc5deaf5a rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xebe61fe1 rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/rt2x00/rt2x00usb 0xfeda4274 rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x30776f86 dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x3803c2cf dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x577ed180 dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common 0x62c73557 rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x0b96ae38 rtl8723_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x0f68bc99 rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x165c34c5 rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x1c958742 rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x2d05dddb rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x2d51438c rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x468fb37c rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x48620a32 rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x4cae48bd rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x4f0eb250 rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x5fe24069 rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x6fee3a6c rtl8723_phy_set_sw_chnl_cmdarray +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7290b6ab rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7437c99a rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x7f700fa0 rtl8723_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x86f36048 rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x8bc76648 rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0x951c90d9 rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xa4ba281e rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xaf27bc84 rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xaf4d6d94 rtl8723_phy_calculate_bit_shift +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xbab28788 rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xbe3cfa6f rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xc22abeaf rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xccf91c19 rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xd6d5e304 rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xe08f3eef rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xe0bea547 rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtl8723com/rtl8723-common 0xeb6f34e4 rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x04d457bd rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x0d0b6636 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x2081f403 rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x217c7527 rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x241dedc1 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x335ee83e rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x3efb1c13 rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x43514776 rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x4a732698 rtl_attribute_group +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x4f1831b1 rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x54ceb867 rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x5a984aab rtl_dbgp_flag_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x63f8e68c rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x6b4de810 rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x8a4320ef read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0x920f5e16 rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xc3b8f18f rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xd7d06bb7 rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xda55403a rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/rtlwifi/rtlwifi 0xf5e6a1d3 rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x3378ce7b wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x87f221a4 wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x9fd0d645 wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x087f148e wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x09d6109c wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x11a1193e wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x177fd5df wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1c6b0053 wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x36ee8342 wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3a76e183 wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3b5ff097 wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3fd54684 wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x433b638d wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4b2c9112 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4d0f0ab9 wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x50b566b2 wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x53dff67d wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x566696c9 wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x57404934 wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5ddb9877 wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x63f98646 wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7dd7421d wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7e5c8fcd wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7eec2879 wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x8f29cc18 wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9436fe30 wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x982751d6 wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9955505e wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9dab3052 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa0b4a087 wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa1911aaa wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa6d7c972 wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xba6cdf15 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xbcd67ea8 wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc0e24b38 wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc607c902 wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc8fd02b0 wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xcddf70e9 wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xce4d68c5 wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xd39bb505 wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe449f90c wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf1ae86e2 wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf32e0323 wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfad3c1bd wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfb76ce7c wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfd6c1c19 wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/pci/hotplug/rpaphp 0x01cc7086 rpaphp_slot_head +EXPORT_SYMBOL_GPL drivers/pci/hotplug/rpaphp 0x01f53139 rpaphp_deregister_slot +EXPORT_SYMBOL_GPL drivers/pci/hotplug/rpaphp 0x91e4bef7 rpaphp_get_drc_props +EXPORT_SYMBOL_GPL drivers/pci/hotplug/rpaphp 0xb7663497 rpaphp_add_slot +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0x390cd5b5 pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0xac71f770 pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/power/pcf50633-charger 0xf7b89232 pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x11b2ffb4 mc13xxx_get_num_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x2a3a945a mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x93b14e15 mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x9d53c536 mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0xd429b9bc mc13xxx_parse_regulators_dt +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x4d195e10 wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x7c83dc23 wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x83a88413 wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xaf1d8f85 wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xd1037cdd wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xdf95edf0 wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0xb87d45bc wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x095b8420 cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0afd671f cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0b39b1ea cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0bd74f62 cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0c0e26ec cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x14b80dbe cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1d5b78b4 cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x20f29294 cxgbi_ddp_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2148cc4f cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x27c324f1 cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2af16d38 cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2f46eb0f cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x30da39a1 cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3a47073a cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x3a5c4389 cxgbi_ddp_page_size_factor +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x43105df5 cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x57f3247f cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x5a3c5015 cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x60001252 cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x611eb233 cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x70a00d04 cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x77bd6c2c cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8032f36b cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8075d893 cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8c2ba369 cxgbi_ddp_ppod_clear +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x923e2095 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9424a519 cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x96ca1f35 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9c18e6e8 cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x9cc145f8 cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa01ae571 cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xabcf0fec cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xad05f3d1 cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xafe325ed cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xbc830c38 cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc2dbd8b9 cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xcb7a21ac cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd06c13b9 cxgbi_ddp_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd094c365 cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe1625db8 cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe952c27a cxgbi_ddp_ppod_set +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xeabea1fc cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf4041515 cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf5ec41a0 cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xf9e995c2 cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xfda7b03b cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x082e55b3 scsi_dh_activate +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x0bfb2c6f scsi_register_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x0e38a3a7 scsi_unregister_device_handler +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x539c5b39 scsi_dh_detach +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x593a36c2 scsi_dh_handler_exist +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x626cb78f scsi_dh_set_params +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x64c5d381 scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL drivers/scsi/device_handler/scsi_dh 0x99188914 scsi_dh_attach +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0178d009 fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0fb51275 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x17620e63 fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1fcfe5d7 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x374c1e1c fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x4b218dba __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x55e796fe fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x84b3d915 fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x9a2614c9 fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x9e366cb7 fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xa5aa34ae fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xb42de28f fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xbae96258 fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xc3209435 fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xca1ab079 fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xd10017b5 fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xe18ea50e fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xe42ec766 fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf2db308e fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x120761db iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x1669c758 iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x6ce0e193 iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x8422fe57 iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xa514d588 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xd05d5409 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0187f76f iscsi_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x02350da8 iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x025cab5e iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x09bb698e __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0ad94fc5 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x0b420d29 iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1a44ce69 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x1fb6ae9e iscsi_eh_target_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x20affeb7 iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2c79a19c iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3a2c9d59 iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3a75c11c iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3e58ca7e iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x434e90d0 iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4a12b62d iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x52ee1128 iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5736d4c7 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x62348c9c iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6d63e840 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x825e218c iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8af1b615 iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d45789b iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x90151251 iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9103f5bb iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x948d97b8 iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9526d233 __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x970f2f14 iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa28e686e iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa56809ea iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa7f89e56 iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbd879a53 iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xc636d992 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xcb230c94 __iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd1fc35bd iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd3f98501 iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd5a56e26 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe33fd35d iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe4771d7e iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe5d880c1 iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe92ec681 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xec7e099a iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf2c89966 iscsi_conn_queue_work +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf4c29fcb iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xffb16822 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x02022dc4 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x02b12549 iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x02b7a16d iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x0d2730f0 iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x32636a4b iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x587af7cd iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x62801e79 iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x62dece13 iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x7e59883e iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x90a9a051 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x90abd077 iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x986fb869 iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xb3e39a7e iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xbe2ce215 iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xcc9de5de iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd68ea840 iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xdc31f1de iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0338a478 sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2d780be5 sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x392fc6b7 sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3954db02 sas_change_queue_type +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x39914c9e sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x3d15e02d sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x576aa8d0 sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6389bb48 sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x683fb428 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6a905994 sas_free_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x71ebe7b1 sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x775e07f1 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x790a9059 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8554c931 sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8a02cc26 sas_eh_bus_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa23b36d0 sas_domain_release_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa5e862d8 sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa883666c sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xaf7c94a8 sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb024b7e9 sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc92d0d5d sas_alloc_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xcfeea051 sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd3263e72 sas_alloc_slow_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd6b54089 sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd7e8d86c sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x151c11e0 srp_cmd_queue +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x35aa6f24 srp_iu_get +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x54178834 srp_iu_put +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x57fd289b srp_transfer_data +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x71d3f20c srp_target_free +EXPORT_SYMBOL_GPL drivers/scsi/libsrp 0x953b24ef srp_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x16b124d1 scsi_tgt_alloc_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x28478774 scsi_tgt_it_nexus_destroy +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0x3e8afa89 scsi_host_put_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xb53d7e88 scsi_tgt_it_nexus_create +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xce918b05 scsi_tgt_tsk_mgmt_request +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xf2673e52 scsi_host_get_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xf56a1b7d scsi_tgt_free_queue +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xf7627cd1 scsi_tgt_queue_command +EXPORT_SYMBOL_GPL drivers/scsi/scsi_tgt 0xfeed2cc4 scsi_tgt_cmd_to_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0faad413 iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x135a28f4 iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1f1d5647 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2b262c72 iscsi_is_flashnode_conn_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x31398051 iscsi_scan_finished +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4aa58f64 iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x510a83af iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5c02ced2 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5c271c79 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5d7ecbba iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x674ffe09 iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6791fbfe iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x72b0f386 iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7a904dfb iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x805113a5 iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8284e866 iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9542934d iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa06a94e9 iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa083c79d iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa33ca4c7 iscsi_destroy_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb10843a2 iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb176117b iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc19386ee iscsi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc357e5c2 iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc3f0eed4 iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc85a603f iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd1b89b0c iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xd2a1fe0e iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xdd663af4 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xdf2cbac4 iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe34f0e5f iscsi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe5e0c3ba iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe6b9f975 iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe7822579 iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe947bbd3 iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xe955e59c iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xedae9a21 iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf5fbbcf9 iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf618e953 iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf7919760 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x2beb61c6 sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x8db1c950 sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xe798d9e5 sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xefa11a6b sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x1f84e3f5 ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x4f267fe2 ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x549fb1d0 ufshcd_resume +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x57243d8b ufshcd_init +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0x81e4dcbf ufshcd_suspend +EXPORT_SYMBOL_GPL drivers/scsi/ufs/ufshcd 0xfbe8ca5e ufshcd_remove +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x2b3a5ce7 spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x80251da3 spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x8e986868 spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xb53a697b spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xba308d6f spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x02048367 dw_spi_resume_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x07a0728b dw_spi_suspend_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x569b0016 dw_spi_remove_host +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0x8e9de0fb dw_spi_xfer_done +EXPORT_SYMBOL_GPL drivers/spi/spi-dw 0xd273b94d dw_spi_add_host +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0x44fc7f6b ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/tty/n_tracesink 0x585ebaac n_tracesink_datadrain +EXPORT_SYMBOL_GPL drivers/uio/uio 0x2def931d uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0x2e652e11 __uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xad32933e uio_event_notify +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0xe30f2312 usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0xf1aefa9f usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x154578c0 usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xc75461ef usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xf123e7d8 usb_gen_phy_init +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x085474f2 usb_stor_control_msg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x0a972905 usb_stor_ctrl_transfer +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x1b9db3f3 usb_stor_Bulk_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x1bc3edc2 usb_stor_sense_invalidCDB +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x210e4f5c usb_stor_CB_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x2360277e usb_stor_probe2 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x2408653b usb_stor_pre_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x2426c9aa usb_stor_clear_halt +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x6639b545 usb_stor_resume +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x74a2c7b9 usb_stor_access_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x7ba7e9cb usb_stor_bulk_transfer_sg +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x808f9216 usb_stor_suspend +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x8431c699 usb_stor_disconnect +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0x9f2c88a4 usb_stor_bulk_srb +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xa4066b4c usb_stor_CB_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xc0f2ed56 usb_stor_Bulk_transport +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xd34cd8ca fill_inquiry_response +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xd5f9107e usb_stor_probe1 +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xd9cb6d95 usb_stor_bulk_transfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xdf7fa77a usb_stor_transparent_scsi_command +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xf6d57753 usb_stor_set_xfer_buf +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xfa608ecd usb_stor_post_reset +EXPORT_SYMBOL_GPL drivers/usb/storage/usb-storage 0xfe0f5880 usb_stor_reset_resume +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x0bd816f0 wa_process_errored_transfers_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x122f15ac wa_urb_enqueue_run +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x66deac21 wa_urb_enqueue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x77f791e0 __wa_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x8657b6ad wa_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0x878b385d rpipe_clear_feature_stalled +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xca70dc0c wa_urb_dequeue +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xcb55ad58 rpipe_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusb-wa 0xfcca8cb6 rpipe_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x00822933 wusbhc_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x0bb6bf5e wusb_cluster_id_get +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x3a81663e wusbhc_mmcie_rm +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x48f7e7cc wusbhc_b_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x5a21ac23 wusbhc_chid_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x63479755 wusbhc_b_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x64a27fe5 wusbhc_giveback_urb +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x6621f05e wusbhc_mmcie_set +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x7f0b7631 wusb_dev_destroy +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x89272ae9 wusbhc_rh_control +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x8aabc703 wusbhc_rh_status_data +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0x8c3e3088 __wusb_dev_get_by_usb_dev +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xa81739b2 wusbhc_handle_dn +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xb725d128 wusb_cluster_id_put +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xdb9c3e19 wusbhc_reset_all +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xe2357229 wusbhc_rh_start_port_reset +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xef96ad6d wusbhc_create +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xf770a6b4 wusbd +EXPORT_SYMBOL_GPL drivers/usb/wusbcore/wusbcore 0xfe2e17d7 wusb_et_name +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0x20aa358e i1480_cmd +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0xce62c57c i1480_rceb_check +EXPORT_SYMBOL_GPL drivers/uwb/i1480/dfu/i1480-dfu-usb 0xd3aef7d4 i1480_fw_upload +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x00320cb2 umc_bus_type +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x08e40124 umc_device_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x18fc2b25 umc_device_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x277993af umc_driver_unregister +EXPORT_SYMBOL_GPL drivers/uwb/umc 0x64e723e2 umc_device_create +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xa2dabf5f __umc_driver_register +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xc6fcbf23 umc_controller_reset +EXPORT_SYMBOL_GPL drivers/uwb/umc 0xf53e7393 umc_match_pci_id +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x03abd2c2 uwb_rc_dev_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0d78016e __uwb_addr_print +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x0fc02440 uwb_est_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x198b52f9 uwb_radio_start +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x1bb1ef51 uwb_rc_reset_all +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x24432b81 uwb_notifs_deregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x260e9f9c uwb_rsv_establish +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x38f77ae3 uwb_pal_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x3e1277ed uwb_rsv_get_usable_mas +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x401074c5 uwb_rc_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4c5e7e91 uwb_pal_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x4d57ae3c uwb_rsv_type_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x60b2ea75 uwb_rc_put +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x6157fd1a uwb_rc_get_by_grandpa +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x62c284a8 uwb_rsv_destroy +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x6a7fc000 uwb_rc_cmd_async +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x6ab989dc __uwb_rc_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x721ce14a uwb_rsv_create +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x746d69d2 uwb_rc_ie_rm +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x752cb205 uwb_rc_post_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7a23b8a7 uwb_rc_pre_reset +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x7b5386e9 uwb_dev_for_each +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x816b9e92 uwb_est_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x85a9ba11 uwb_rc_vcmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x8ff9fc59 uwb_dev_try_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x96c6bf20 uwb_rc_init +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x98413234 uwb_rsv_state_str +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0x9dc0d41b uwb_rsv_accept +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xa45ca42a uwb_rc_neh_grok +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xac97316b uwb_ie_next +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xae05703c uwb_rc_cmd +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xb8eb2e93 uwb_pal_unregister +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xbf89a269 uwb_rc_alloc +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc0d6c952 uwb_rsv_terminate +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc14643c8 uwb_rsv_modify +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc34db123 uwb_rc_ie_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xc371dfdf uwb_rc_get_by_dev +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xcdd04f8a uwb_rc_add +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xce05c62d uwb_radio_stop +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd031a6c9 uwb_rc_neh_error +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xd8fb4e2f uwb_rc_mac_addr_get +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xe2fa9bcb uwb_notifs_register +EXPORT_SYMBOL_GPL drivers/uwb/uwb 0xf5a18a11 uwb_est_find_size +EXPORT_SYMBOL_GPL drivers/uwb/whci 0x65c0258f whci_wait_for +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x016d222d vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x0eed010c vhost_poll_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x190ebc6f vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1e0f85cf vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2434992b vhost_work_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x269f7a09 vhost_dev_reset_owner_prepare +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2bf9ae6f vhost_init_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x331dafb5 vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x5cce6d53 vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6089c068 vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6500dad7 vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x66715723 vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6db9aa29 vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6f73bc18 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x73b7561e vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7883407b vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7bd9da85 vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7c17c50a vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7f632554 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8b65f456 vhost_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8d236312 vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x9637e7e0 vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa45bdd93 vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb0f81e37 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb82c0053 vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbd6bfcc9 vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xeb18c1e3 vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xecf69ad2 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xefc417bf vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xfa053d0f vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xfbeba830 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x0f17fd15 auok190x_common_remove +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x0f60ddae auok190x_read_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x2fb544c2 auok190x_send_command_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x3606e7b2 auok190x_send_cmdargs_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x46f88f71 auok190x_send_cmdargs_pixels_nowait +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x4b701475 auok190x_pm +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0x942572ac auok190x_send_command +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xe5368829 auok190x_send_cmdargs +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xfa017b7b auok190x_common_probe +EXPORT_SYMBOL_GPL drivers/video/auo_k190x 0xfe555e4a auok190x_send_cmdargs_pixels +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x1925165a ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x1b480bd6 ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x433e9189 ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xc061fdff ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xe1225913 ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xe6279158 ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xeea41648 ili9320_write +EXPORT_SYMBOL_GPL drivers/video/fb_ddc 0x29bbcbd4 fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0x3dc9e844 fb_sys_write +EXPORT_SYMBOL_GPL drivers/video/fb_sys_fops 0xcbe6ec1f fb_sys_read +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0x7ef9b4fe sis_malloc_new +EXPORT_SYMBOL_GPL drivers/video/sis/sisfb 0xfaccd9cb sis_free_new +EXPORT_SYMBOL_GPL drivers/w1/wire 0x235dc37b w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x23c5d436 w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x250f1001 w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x43cd4484 w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0x6b97be22 w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x76056425 w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0x7c2f2afb w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x853ee1b9 w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0xac7e2e04 w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xfd85b8a1 w1_next_pullup +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x9321df95 dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xb8157e0f dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc6dc8c2f dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcd4d8e89 dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xdc583c08 dlm_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xec3a080c dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/fscache/fscache 0x092cf98e fscache_object_sleep_till_congested +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x17ce645d locks_end_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x49ef44cc nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x5b9fa546 locks_start_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x6a926d1c nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x6dc8acc3 nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x77e35ccc nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x8aa59d39 lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x8c1fbb3e nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xc0dae0d1 locks_in_grace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xfcb3d852 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xfe124dff nlmsvc_ops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0b7fe727 nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0bd205be nfs_readdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0dee2d5d nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10bb9f6d nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x111fcd94 nfs_clone_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1467c6a0 nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x16bc1fe1 nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x17b47fa2 nfs_file_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x19096974 nfs_setlease +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1a1f9d73 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1d916bfa nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2143650c nfs_try_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x23929aa5 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x25607a78 nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2bce785d nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2c678e8d register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2e2b6662 nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x313f0d96 nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3418fc6a nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x34c15777 nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x36ebb60a nfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x399c32f7 nfs_readhdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3aefe53c nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3af9bf5a nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3b07377f nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3b36ede6 nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ca31f35 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3e790eb4 nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ebb3d3f nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x401a3c30 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x419e292a nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x437e9114 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x46f92b11 nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x486db7d2 unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x49b0aca9 nfs_generic_flush +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4aabef10 nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4c194d41 nfs_initiate_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4efb7c8d nfs_set_sb_security +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x504059ff nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5129607b nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x52d1e1a3 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x548d7c40 nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x569ced20 nfs_file_splice_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x595c3259 nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5a2a6e05 nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e03d900 nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5e1d863a nfs_sockaddr_match_ipaddr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5ecd8f23 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x63828f7e nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x63bc245f nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x649c6f97 nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6528ed8a nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x659b5b69 nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x66d62e08 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6739c289 nfs_generic_pagein +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x677fed7d nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x683a56fd nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6869f386 nfs_fs_mount_common +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6a7afa6c nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6ac3ecfb nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x73de3733 nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x74611d34 nfs_remount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x76231108 nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x765353fc nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x76c4a3b7 nfs_put_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x78b6cbce nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x796254a7 nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c366939 nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7c9722ba nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7da54429 nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8011f9b4 nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x81881b7a nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x878db11b nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x88a3bf5e nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89bc5a64 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8a1199db nfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8c5266c2 nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8de5d3a0 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90f101e9 nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90f2202d nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x967d6fe6 nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x96df5589 nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9b328f5d nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9cbc336b nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9df27660 alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9fce9ef9 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa15ed37f nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa165ec4c nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa2706b22 nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa2c249ec nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa7a17ea2 nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa87811c8 nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8d2d1ce nfs_callback_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa95bb209 nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xab28c16a nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xad01ed4f nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaddc0cde nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb2d0a161 nfs_destroy_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb342ac2b nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb4d2e445 nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb5c4524c nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb606e716 nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb62edf54 nfs_fs_mount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb7ca804e nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbbb73f94 nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbc0c5fd3 nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbc3c4f5e nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbcb4b66b nfs_writehdr_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbd8e05ba nfs_file_fsync_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbe8c4a99 nfs_pageio_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc006592c nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc32735fb nfs_writedata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4710cbd nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc4ff1e9f nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc5ef47d5 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc6cb9d83 nfs_file_splice_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc8882ada nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xca9e6a14 nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcaf4e18c nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcef76099 nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd3052edd nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd612cad5 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd713dc11 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd74aca89 nfs_pageio_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd79ab715 nfs_fill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdba42647 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdf30a91f nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe2088ace nfs_initiate_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe27bf936 nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe39f9463 nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe4e2e473 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe7940d2c nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe9bb19e3 nfs_pageio_add_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xedd4d888 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb7ee006 nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfcc37bfc nfs_probe_fsinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x01e8e9de nfs41_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x048aaa24 pnfs_readhdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x06c36816 __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x08ef6a7f nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0a863122 pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0eb4d7ab pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x170f3ed6 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x18daa3f7 pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1e92e6a4 pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x201968f7 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2438de2c nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2b7d8559 pnfs_writehdr_free +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2b926e1a pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3866a54a pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3dfe6fe3 __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x41d8a1f7 nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x471de0a9 __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4949b038 pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4fb9baf2 _pnfs_return_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5867b6af nfs4_proc_getdevicelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6dd3884f nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x732df56b nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x814d86be nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x851b7978 pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8fbcb34e nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9a34c5c6 pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa12c9939 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa3def867 nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa4396ded nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa97be98a pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xaba59ca1 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb7424609 pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb8af557f nfs4_insert_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb9540834 nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd830783e pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdbba6133 nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe0fc1820 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe56a0a0c nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed10d386 nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xeda40d88 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf772085b nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf9ad19b6 nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xfc59f3c0 pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x878f7f4c nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xebc28691 nfsacl_decode +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x10554f21 o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1b89c6ee o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x1d747ce3 o2hb_check_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x34859fd4 o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36418553 o2net_send_message +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x36a28a9e o2net_send_message_vec +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x48ddf9d8 o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x6167f1bb o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x6891948f o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x81a17396 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x8f96c695 o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa82a8645 o2nm_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xae808bac o2net_register_handler +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xbaeb4700 o2hb_check_node_heartbeating_from_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc3679d7b o2hb_get_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd60f2c6c o2hb_check_local_node_heartbeating +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf1a5611d o2net_unregister_handler_list +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf56c2017 mlog_not_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf7d65d0b o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x3a0ed10c dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x60e93b54 dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x66f0e277 dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x6aa38fe5 dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7ed96671 dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd6e62da2 dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd7ba575e dlm_errmsg +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd8fa57a6 dlm_unregister_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xfb86b96f dlm_errname +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x01c15828 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x025e2d69 ocfs2_cluster_connect_agnostic +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x0562c415 ocfs2_cluster_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x16b2e575 ocfs2_dlm_unlock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x176e2868 ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x52feb10c ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x5469ce31 ocfs2_dlm_lvb_valid +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x7083dbd5 ocfs2_dlm_dump_lksb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x89502fe7 ocfs2_cluster_connect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xb4bd060c ocfs2_dlm_lock_status +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbbc4ef97 ocfs2_stack_supports_plocks +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xdc823ea4 ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe2bd47db ocfs2_dlm_lock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe40cffce ocfs2_stack_glue_set_max_proto_version +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xe417d940 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL lib/bch 0x231d70fc encode_bch +EXPORT_SYMBOL_GPL lib/bch 0x6b770f49 decode_bch +EXPORT_SYMBOL_GPL lib/bch 0x9463ff71 init_bch +EXPORT_SYMBOL_GPL lib/bch 0xbdf512de free_bch +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x9f15de5a notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0xb7b5e9a7 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x1803a6ed raid6_2data_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0xe4b051cf raid6_datap_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0xfdfcb8cb raid6_call +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x201d8ea3 encode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x29fa419f decode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x300d7e57 free_rs +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x6fbb3bd9 init_rs_non_canonical +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xabda1e2e decode_rs16 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xb050f329 init_rs +EXPORT_SYMBOL_GPL net/802/garp 0x255f12db garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0x3aa6e02e garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x3d72a26c garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0x790a0e87 garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0x7c009c12 garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/garp 0xacd7416b garp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x2bea2224 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x3932290c mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xc524bb81 mrp_request_join +EXPORT_SYMBOL_GPL net/802/mrp 0xf2f0a628 mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0xf6583ad0 mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0xf87b1945 mrp_register_application +EXPORT_SYMBOL_GPL net/802/stp 0xe1a7bada stp_proto_register +EXPORT_SYMBOL_GPL net/802/stp 0xf4fdd670 stp_proto_unregister +EXPORT_SYMBOL_GPL net/9p/9pnet 0x605ad679 p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/9p/9pnet 0xab7c0b14 p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/atm/atm 0xb09faf79 register_atmdevice_notifier +EXPORT_SYMBOL_GPL net/atm/atm 0xcfb6a3da unregister_atmdevice_notifier +EXPORT_SYMBOL_GPL net/ax25/ax25 0x97030d3b ax25_register_pid +EXPORT_SYMBOL_GPL net/ax25/ax25 0xac93ae05 ax25_bcast +EXPORT_SYMBOL_GPL net/ax25/ax25 0xaeb7451e ax25_defaddr +EXPORT_SYMBOL_GPL net/bluetooth/bluetooth 0xd1ef025b bt_debugfs +EXPORT_SYMBOL_GPL net/dccp/dccp 0x037f0e5a dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0b1a49eb dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0bc4e500 dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x0ece0c1a dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0x196c83f3 compat_dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1d99d49a dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1f846ecf dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0x21756e57 dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0x21e21be1 dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2b6ce495 dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3b6293d2 dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3ffd2647 inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4409e0a5 dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0x47626f18 dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4c227721 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4ec35231 dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x56375e7f dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5a66345b dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6145e609 dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0x64e2d5b2 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6b5d283c dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0x6eb17815 dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7b67f9dc compat_dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x7dc4cbe8 dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8225581d dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8be685ba dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9417fedb dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9a9cf985 dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xa77bb93a dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0xae5cae5a dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xae62e3ac dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb1bb1478 dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb6003c64 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xbf6bf468 dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc0b7b890 dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xc8b69397 dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0xddaf1d37 dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0xe4369347 dccp_insert_option_elapsed_time +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf3016ba2 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf3017e21 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x10525de4 dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x257248a7 dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x482c0dd6 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x60ef4233 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xcae64737 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xd02b3653 dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x20c6fcdb register_switch_driver +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x5a516c19 unregister_switch_driver +EXPORT_SYMBOL_GPL net/ipv4/gre 0x26229f47 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0xa63e3aa7 gre_build_header +EXPORT_SYMBOL_GPL net/ipv4/gre 0xafab5ff2 gre_cisco_register +EXPORT_SYMBOL_GPL net/ipv4/gre 0xca96b5c7 gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0xe614c222 gre_cisco_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x34d9b1f6 inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x40daa27c inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x4d71b0b2 inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xa94ab042 inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xc0eeece8 inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xf9780e12 inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x009c07f1 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x2c28ed37 ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x38bbbf6d ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x60cbff86 ip_tunnel_ioctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x78ac6951 ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x95c71f29 ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xab5ee6d1 ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xb12b2085 ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xb44b6e72 ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xb84cb161 ip_tunnel_get_stats64 +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xc35a902f ip_tunnel_delete_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xd3efe20a ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xd6e0c379 ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe332ed1a ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x013f55fd arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0xc818293c ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_conntrack_ipv4 0x6d40a921 need_ipv4_conntrack +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x6b6c3d10 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_ipv4 0xd20e4e2c nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_nat_proto_gre 0x636b12c8 nf_nat_need_gre +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x10ae40b0 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x7d16f13f tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x8ed7102c tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xe04d8d7d tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xff347cd6 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0x4cfdd887 xfrm4_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv4/xfrm4_mode_tunnel 0xfb3ac172 xfrm4_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x4dfb7093 ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x67b4f24c ip6_tnl_dst_reset +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x79a06245 ip6_tnl_dst_store +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x8abe421b ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x93fa9fc5 ip6_tnl_dst_check +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0xed4faa98 ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x6eb85693 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_nat_ipv6 0x516f989f nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0x641e2a3e xfrm6_mode_tunnel_input_deregister +EXPORT_SYMBOL_GPL net/ipv6/xfrm6_mode_tunnel 0xbf85e139 xfrm6_mode_tunnel_input_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x10ceb14e l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x143edb4e l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x389160aa l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x4525159d l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x557f03be l2tp_tunnel_sock_put +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x592b79e5 l2tp_tunnel_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x61d285bd l2tp_session_find_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x6937a42f l2tp_tunnel_sock_lookup +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7ad69f6b l2tp_session_queue_purge +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7c552df2 l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x8a432d7f l2tp_session_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x8c696a42 l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x9348c959 l2tp_tunnel_closeall +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa7c11475 l2tp_session_find_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc6b85faf __l2tp_session_unhash +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xda759f96 l2tp_session_free +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe63ce6c3 l2tp_tunnel_find +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x218ed7fe l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x1432c3b9 ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x18621318 ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x27e0450c ieee80211_iterate_active_interfaces_rtnl +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x28b503c0 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3663a36d ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x385ff92e ieee80211_iterate_active_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x39f4df73 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4bf42798 ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5208b6ff ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x568d37a0 ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5d38f601 ieee80211_set_key_tx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x9452abca ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xb56778d2 ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xce99780f ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xe53811f4 ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x058b2cba ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x06acb1ac ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x0bc4c35c ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x210edde8 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x281bc1c1 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x4a0170bc ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x53152c6d ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x65c3e749 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x73bf6956 ip_set_nfnl_get +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x8da41626 ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9166cac7 ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa2d623f3 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xcad9d4fa ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xd7588715 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xe2724c15 ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xe5871ccd ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xef13ebbe ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf36a44eb ip_set_get_ip_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf3b4d4ae ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x21f33a99 ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x6e23e009 ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x83326bdb unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xefdc9c71 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x008ea002 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x00e7a0aa nf_ct_l3proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01f84db5 nf_conntrack_set_hashsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x036ef1e9 nf_ct_extend_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x045072cd nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0454d754 nf_ct_timeout_put_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x04dcbf17 nf_ct_l4proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x07794a83 nf_ct_l3proto_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0818c945 nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x09123bb3 nf_ct_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0c6d3562 nf_conntrack_l3proto_generic +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x12aaa946 nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x12ef371c nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x16de0535 nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x205a777e nf_ct_expect_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x27d1614f nf_ct_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289c3714 nf_ct_alloc_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2a996f6b nf_ct_timeout_find_get_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x32b98abd nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x35a5ef19 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x37386cac nf_conntrack_hash_rnd +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3f550b2a nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3f5b1415 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3f9ef417 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4562633f nf_ct_get_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x45850e7c nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x48263800 nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x48db0225 nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x48dd5493 nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4b58856e nf_ct_l4proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4c5d0519 seq_print_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4f5f95d2 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x51ea1f69 nf_conntrack_l4proto_tcp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x54ae2756 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x589c0b17 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x615e62f7 nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62813e5c nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x62a087cd nf_ct_l3proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x631a28e2 nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x63dc7deb nf_conntrack_l4proto_tcp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x66598fb4 nf_ct_l4proto_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x66f30d5d nf_ct_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6a70e581 nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6e224a7a need_conntrack +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6e4f0eef nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6fff8279 nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7188fa2e nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x78f9b710 nf_ct_l3proto_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7c459203 nf_connlabel_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7f586d9b nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x80d14e61 nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x86ebb7e8 __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8b67478d nf_nat_seq_adjust_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8caa4d29 nf_ct_l3protos +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x901bb48c nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x90ff6c9f nf_ct_invert_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x94d21a6e nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x976be7ad nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9a1e4768 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9f07d01a nf_conntrack_l4proto_udp6 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa00b207c __nf_conntrack_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa1ada26b nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa30cbe6e nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa476e2ba nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa5439404 __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa754adde nf_ct_iterate_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaa9f112f nf_ct_l4proto_pernet_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xab3d1f95 nf_ct_untracked_status_or +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad1bb027 nf_ct_free_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad31b298 nf_conntrack_l4proto_udp4 +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb24b3f84 nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb366e804 nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb602c57e nf_ct_l3proto_module_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb6093d84 nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb8dd93b0 nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbb4d1ad9 nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcb770ff6 nf_ct_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcc73689e nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcd5d80bc nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd90e4a1a nf_connlabel_match +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe4601e7d __nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe71a4ab7 nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe72852b2 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xeb23ce7d nf_ct_expect_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xef048fc3 nf_ct_l3proto_pernet_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf84589d5 nfnetlink_parse_nat_setup_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf85ba3e0 __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf96959d9 __nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf9e8cd94 nf_conntrack_flush_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfb73a828 nf_ct_extend_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x4efa32d1 nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0xaf2b8ba0 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0xc0db2ef5 nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x0e15d581 nat_q931_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x1576defc set_h245_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x3cdad1d3 get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x60c3ca7e set_sig_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x80672f82 nat_rtp_rtcp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xb68ba073 set_ras_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xb8341a8a nat_t120_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xcf8fcb90 nat_h245_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xe6ab0011 set_h225_addr_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0xe6e9a753 nat_callforwarding_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0x27cb8f57 nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x35239e23 nf_nat_pptp_hook_expectfn +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x6e7abc1a nf_nat_pptp_hook_exp_gre +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x993b5c81 nf_nat_pptp_hook_inbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0xb1b93aa6 nf_nat_pptp_hook_outbound +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0x911bb5a7 nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_proto_gre 0xd1794b90 nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x35044ae1 ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x447c272a nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x494c57b6 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x5ba2a34f ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x9e00c9d5 ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xdf3fbb44 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xf50332b2 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0x49474b81 nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0x9b0618bb nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x0d9bae4b nf_nat_l4proto_nlattr_to_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x131f636c nf_nat_l4proto_in_range +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x4db31177 nf_nat_l3proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x505f842e nf_nat_l4proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x6a2c46ad __nf_nat_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x710af119 nf_nat_l3proto_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x9effe1cc nf_nat_l4proto_register +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xb69454c5 nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xcabceda6 nf_nat_l4proto_unique_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xf2f68a19 nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x11a006b5 synproxy_check_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x79ad3e7c synproxy_tstamp_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x8841d39b synproxy_build_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x90298227 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xb42e336a synproxy_options_size +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xd2044f49 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xef7db50c synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0c18b0b3 nft_register_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0fda3c99 nft_validate_output_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x226289d9 nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3aa8439b nft_validate_data_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3d49dab7 nft_validate_input_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x60ccc6e4 nft_register_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x64004a5c nft_do_chain_pktinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x69541114 nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x730a4adb nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8629d7c7 nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8e4b0296 nft_data_uninit +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x977a2ea1 nft_unregister_afinfo +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xbd09530f nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd11c0c3d nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd7c2deb0 nft_unregister_set +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x124f825c nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x3e6033af nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x40e847ba nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x67867128 nfnetlink_alloc_skb +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x9d93f9a2 nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xbcec8764 nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xc16cfc01 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x114c2ad5 nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x21f6bba6 nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_log 0xb33e3b19 nfulnl_log_packet +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0a0740b8 xt_compat_target_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x161d1417 xt_compat_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x193cc736 xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x1af71c07 xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x2f565e34 xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x3bf58b7e xt_compat_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x40728a63 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x49e6225b xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x5f82f1f7 xt_compat_flush_offsets +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x691a6d69 xt_compat_calc_jump +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x69a94cee xt_hook_unlink +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x72fef295 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x807d2b2c xt_recseq +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9127065e xt_hook_link +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9758cb8e xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa751f601 xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xb0ada241 xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc649ce6c xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc69f38bd xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc78cad3c xt_compat_match_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xd4a3a1d5 xt_compat_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xd9f5daf5 xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xda5d90de xt_compat_target_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe0b4971b xt_compat_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xec24fd82 xt_compat_add_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xf7e88b62 xt_compat_match_from_user +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x00204983 xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0x482b6a12 xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x288e8c78 nci_spi_send +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x362f98f6 nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci 0x6f3e607d nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x0a99c9f1 rds_page_copy_user +EXPORT_SYMBOL_GPL net/rds/rds 0x0c5ca647 rds_send_get_message +EXPORT_SYMBOL_GPL net/rds/rds 0x22081805 rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0x2c5c5514 rds_message_add_rdma_dest_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x3101936e rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x35cd5818 rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x3a2ce097 rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0x3b4fc0fc rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0x3c2e1a2e rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x405963f2 rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0x4de98d92 rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x50cbe7b3 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x5a111f55 rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0x62c6eff3 rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0x69277ced rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0x73aac73d rds_message_populate_header +EXPORT_SYMBOL_GPL net/rds/rds 0x7492c42f rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0x78e6851b rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0x7bc62829 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x7f249204 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x86344890 rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0x91eb5aed rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0xaab0e984 rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xc4262f06 rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xd83f5ccb rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0xdcb0a9c8 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0xe7e4f710 rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0xf48e85a8 rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0xfa3d91b5 rds_message_put +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0x7c37824e rxrpc_unregister_security +EXPORT_SYMBOL_GPL net/rxrpc/af-rxrpc 0x8abe2863 rxrpc_register_security +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x00c52ef5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x2319d1a3 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x8d1a827e svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xa5bf5d43 gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xb5dea7ef g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xef39655c gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xf8b2ff6e g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x02e5a6c0 auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x03220a3c xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x045834e9 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04b1b4fc xprt_set_retrans_timeout_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05845376 rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x06c8a828 svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x07060cad rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x08320657 xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x09dde140 svc_close_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x09e0dfe5 rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0a758769 xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f668ba9 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x102e4c84 svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x10c50c2c xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x12d1f65d svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1326b3ef svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1328d9a9 rpc_print_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x14431c42 cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x152c57cc svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x161ecb0a xprt_lock_and_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1906bc56 svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x197188a5 xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1b117db1 rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1f2a9970 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2389e126 sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x26a87e70 xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x26bb2ec1 sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x27224086 rpc_protocol +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2afaaf07 rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2da0a2ba rpcauth_generic_bind_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2eec63c9 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f1c380f rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f2f8825 xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2ffe7909 svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31d53435 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x351a790f rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x35d2eda3 rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x35faa70f rpc_get_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x365d50b9 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x366d0706 bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36aae221 rpc_lookup_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x36d1db23 svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x38b2f20d rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3bc7a1ed rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3ecf964e rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f4c751f xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x417c0d2b svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x437b2e0c rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x441983a8 rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x44b88a16 svc_alien_sock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x454ef716 rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x48058d20 rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x48a5884c xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x48c41ec4 rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4ba59b52 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d3977e4 rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d3d7c07 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4eae6a11 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4ef058fc unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x527fa44e xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x539306f4 rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x55e4e0d5 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x591ff34c cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5c44ed4e xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5c607996 rpc_lookup_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5c97a6b0 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5dd3d969 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5e6c9529 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6045c201 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x658ea54c xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x65b54d3e auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x68185878 rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6a429c90 rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6bee3142 rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6c3fd0b0 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6d1d70a1 svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6ee466b4 rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x737ecbef sunrpc_cache_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x73d13024 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7644899a rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x77551050 rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x77dc4c71 rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x784d2feb xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7a501f7a svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7b73b1fc rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7bbce394 svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7bdfd840 xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f4c0155 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x80951b28 rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x82f31bf7 svc_create_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x839f05de rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x846d8e04 rpcauth_cred_key_to_expire +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x84d7669d rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x853d1822 rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x878c17d4 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8bb0b345 svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8d836ce5 svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x940989ee rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x946b37a1 cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x97074b65 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9740d011 svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9744a132 xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x97e9a216 xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98a791c7 svc_shutdown_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98b75d64 rpcauth_list_flavors +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9988228f rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9a062e9a rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9b102b09 rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d0ad635 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9de0a92a xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9ed6fbfa xdr_buf_read_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9fa40512 rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa2484f2e xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa539f90a xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa6705a72 xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa8162199 xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa9348267 svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa977f50f svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xab06febc rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xac1b8c38 svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaceede13 svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xad7b7f15 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xae75e530 cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb012be0c sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb01b7261 read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb107b71a rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb1148ad8 rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb3d06681 auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb426de5e xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb462c412 xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb5097f5c svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51b9ee7 rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb62cf769 svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb87ba5e3 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xba3a856b xs_swapper +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbdaaabd9 xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbe82906e xdr_skb_read_bits +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbeb7bffb svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbecc6bed rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbfffaf92 rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc07d2539 xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc15cb3ab rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc29162ce sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc310fe01 rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3880471 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc3ec6e70 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc4099c26 rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc41661e7 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc4d92040 cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc631edd0 __rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc6597b7d sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc6e101d2 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc76ed179 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc7d72c23 rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc800e9a6 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc93bce37 rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xca1315d2 xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcb8b049d xdr_partial_copy_from_skb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcbb98ec0 xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcee467f3 xprt_load_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcf2fe3e7 rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcf9a32b3 rpc_rmdir +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcfe21730 rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd159c7cc svc_prepare_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd175e079 svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd5e151a1 xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd7e8ae2c xprt_set_retrans_timeout_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd9f4b782 rpcauth_key_timeout_notify +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xda70e74b svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdd26f6a7 svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdd502a3e xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xde6248a0 rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe14a3457 put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe1ac2bb8 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe2cc48eb rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe42f320e rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe477e0e4 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5fff007 rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe7e36b99 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe9d695c1 xdr_shift_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xea7abde9 rpc_task_reset_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xebd33370 xdr_set_scratch_buffer +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xebfcb5fe xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xed651f9a xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedb01233 xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xef156e5c svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xef32af82 svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xefdbc960 rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf19d7a17 svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf2654b29 write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf27744ab _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf33ed848 rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9d1164c rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe32a8d4 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xffd13d28 rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x04665af0 vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x06da28cc vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0c79d5ef vm_sockets_get_local_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x15c0c57c vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x1fe13de1 vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x2663cb64 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x57958447 vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x57b1f082 vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x59d943c8 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x751ff010 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7f730c80 vsock_core_exit +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x970b77bc vsock_pending_work +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9cf9f20c __vsock_create +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xa706cdf5 vsock_core_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xa94a1336 vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb9c7d18c vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbd0f699d vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xcd0ba917 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd6ad66db vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xd95ac116 vsock_addr_validate +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xda8999ec vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xea933257 vsock_remove_bound +EXPORT_SYMBOL_GPL net/wimax/wimax 0x02e281a0 wimax_msg_alloc +EXPORT_SYMBOL_GPL net/wimax/wimax 0x15d20abd wimax_msg_data_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0x3c9b6d51 wimax_dev_rm +EXPORT_SYMBOL_GPL net/wimax/wimax 0x5ead88ba wimax_msg_send +EXPORT_SYMBOL_GPL net/wimax/wimax 0x72672183 wimax_state_change +EXPORT_SYMBOL_GPL net/wimax/wimax 0x9bbc70f6 wimax_dev_add +EXPORT_SYMBOL_GPL net/wimax/wimax 0x9efc75d1 wimax_report_rfkill_sw +EXPORT_SYMBOL_GPL net/wimax/wimax 0xa40e426c wimax_msg_len +EXPORT_SYMBOL_GPL net/wimax/wimax 0xa8ee5184 wimax_msg_data +EXPORT_SYMBOL_GPL net/wimax/wimax 0xaa04bebd wimax_state_get +EXPORT_SYMBOL_GPL net/wimax/wimax 0xcde8e4e6 wimax_dev_init +EXPORT_SYMBOL_GPL net/wimax/wimax 0xe660f4aa wimax_msg +EXPORT_SYMBOL_GPL net/wimax/wimax 0xe84a3dd3 wimax_report_rfkill_hw +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x0c61e144 cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x1d37e94a cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x20a33fbd cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x22860c9f cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x36c0ca4b cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x3d897a9c cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x674d8a74 cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x8e6e2d2c cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x8eb99258 cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xafb554c0 cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xdcafed1e cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x00778770 xfrm_ealg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x056bb269 xfrm_ealg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0a575945 xfrm_count_pfkey_auth_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0b9e5852 xfrm_aead_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x28e23139 xfrm_probe_algs +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x74e1a843 xfrm_aalg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7a8ca627 xfrm_count_pfkey_enc_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7c30b8c7 xfrm_calg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x92dbc6c1 xfrm_aalg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xbc8b0f41 xfrm_calg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xce7a55c1 xfrm_ealg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xe122af95 xfrm_aalg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x06623266 ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x6cf838a6 ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x74f41512 ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xfa425147 ipcomp_destroy +EXPORT_SYMBOL_GPL vmlinux 0x00000000 __page_file_mapping +EXPORT_SYMBOL_GPL vmlinux 0x00000000 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0x00000000 compat_alloc_user_space +EXPORT_SYMBOL_GPL vmlinux 0x00000000 kern_mount_data +EXPORT_SYMBOL_GPL vmlinux 0x00000000 perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x00000000 sigset_from_compat +EXPORT_SYMBOL_GPL vmlinux 0x00000000 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0x001d0d8f find_module +EXPORT_SYMBOL_GPL vmlinux 0x006bc072 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x009304b6 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0x00b09766 yield_to +EXPORT_SYMBOL_GPL vmlinux 0x00c4dc87 timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x00c5f5b5 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x00cdffe0 vtime_account_system +EXPORT_SYMBOL_GPL vmlinux 0x00d6d652 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x00ebcb5d ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0x01010c6d klist_add_before +EXPORT_SYMBOL_GPL vmlinux 0x011383af devres_release +EXPORT_SYMBOL_GPL vmlinux 0x01160d87 nf_unregister_afinfo +EXPORT_SYMBOL_GPL vmlinux 0x011cf028 regulator_suspend_finish +EXPORT_SYMBOL_GPL vmlinux 0x012e0873 md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x0133f398 of_extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0x0162c536 ide_dma_lost_irq +EXPORT_SYMBOL_GPL vmlinux 0x016b9568 tpm_show_pubek +EXPORT_SYMBOL_GPL vmlinux 0x01893c5c rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01e410e3 init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x01e5c024 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0x01e70ff6 bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0x021adbc3 sock_update_netprioidx +EXPORT_SYMBOL_GPL vmlinux 0x021ce675 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0x021ebfda btree_update +EXPORT_SYMBOL_GPL vmlinux 0x022ecc2f ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0x0238007e __sock_recv_ts_and_drops +EXPORT_SYMBOL_GPL vmlinux 0x026b1788 spi_sync +EXPORT_SYMBOL_GPL vmlinux 0x028301b1 ide_pci_dma_base +EXPORT_SYMBOL_GPL vmlinux 0x029a4c81 pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0x02a74deb generic_access_phys +EXPORT_SYMBOL_GPL vmlinux 0x02c9ee75 pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x02d6aab2 crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x02f1a7de ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0x031979f0 extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0x031db3cb vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x03e3686c ata_timing_cycle2mode +EXPORT_SYMBOL_GPL vmlinux 0x03ebc9a1 driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x040037c8 public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0x040d47d3 blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0x04388ff6 ide_host_register +EXPORT_SYMBOL_GPL vmlinux 0x04486e88 rcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x04699da7 dma_buf_vunmap +EXPORT_SYMBOL_GPL vmlinux 0x04a66bec crypto_init_ahash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04df8fbc lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0x051ad82f pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x0532385a pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x053494cb tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0x0534ba50 ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x053838b6 ping_hash +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x0551f0ce tick_nohz_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x05805373 trace_buffer_unlock_commit_regs +EXPORT_SYMBOL_GPL vmlinux 0x058b582a vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0x059903ad usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0x0599230e isa_bridge_pcidev +EXPORT_SYMBOL_GPL vmlinux 0x05a54fd1 cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x05ad0d3f debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x05e15af8 shash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0x05f6cbb0 ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0x060db803 class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x061dee59 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x06381811 gov_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x063c6a2a power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x064e8dcb __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x0657e800 ata_common_sdev_attrs +EXPORT_SYMBOL_GPL vmlinux 0x06592fd2 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x0686360e crypto_lookup_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x06889a7d ide_dma_end +EXPORT_SYMBOL_GPL vmlinux 0x0692550e dm_get_rq_mapinfo +EXPORT_SYMBOL_GPL vmlinux 0x06debc01 usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x06f441b6 hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x06f75b81 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0x0702514d stmpe_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x071298c8 virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0x07173d2f pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x0744f95a dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0x074b6367 regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x0762403c edac_put_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x07ae46e4 inet6_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07d3046a modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x08440c97 ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0x084881c3 sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x085a560e sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x088bfa7e cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x088fa6cd ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x089e26a3 ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x08bba237 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x08bc0870 compat_put_timespec +EXPORT_SYMBOL_GPL vmlinux 0x08bce985 blk_queue_dma_drain +EXPORT_SYMBOL_GPL vmlinux 0x08bd709e __inet_hash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0x08c3cfb6 device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x090da035 usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0x091c824a machine_power_off +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x09214c8a add_to_page_cache_lru +EXPORT_SYMBOL_GPL vmlinux 0x09221c42 bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0x09437748 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x09469482 kfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x095301db filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0x0957b691 posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0x096122a8 unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x0994a678 pciserial_init_ports +EXPORT_SYMBOL_GPL vmlinux 0x09c33604 ide_host_free +EXPORT_SYMBOL_GPL vmlinux 0x09e13164 cgroup_load_subsys +EXPORT_SYMBOL_GPL vmlinux 0x09e637ab __mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x09fd3c6a __online_page_free +EXPORT_SYMBOL_GPL vmlinux 0x0a0fa18e evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x0a4a5e99 regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x0a51ae5b virq_to_hw +EXPORT_SYMBOL_GPL vmlinux 0x0a7a53c8 regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0a860887 dma_buf_vmap +EXPORT_SYMBOL_GPL vmlinux 0x0a8860d5 cpu_add_dev_attr_group +EXPORT_SYMBOL_GPL vmlinux 0x0a95a20c rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x0a9fd3c5 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x0aa8ed56 ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x0ab1b441 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x0ade0e92 driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x0af73bee usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0x0b02adcb crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b0fe2b1 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x0b9926d6 ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x0ba5d85c raw_seq_open +EXPORT_SYMBOL_GPL vmlinux 0x0bae62b1 ktime_get_monotonic_offset +EXPORT_SYMBOL_GPL vmlinux 0x0bb9c514 irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0x0bdb920f rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0be220a9 tps80031_ext_power_req_config +EXPORT_SYMBOL_GPL vmlinux 0x0bf59cad tpm_store_cancel +EXPORT_SYMBOL_GPL vmlinux 0x0bfa3a19 rcu_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x0bfdc197 pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x0c0c015e ring_buffer_swap_cpu +EXPORT_SYMBOL_GPL vmlinux 0x0c23e680 ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x0c2cdbf1 synchronize_sched +EXPORT_SYMBOL_GPL vmlinux 0x0c5ad3a6 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x0c6af95d cgroup_taskset_first +EXPORT_SYMBOL_GPL vmlinux 0x0c705cd9 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0x0c7080df __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0x0cc1e40f crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x0cdf234a regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0x0ce2d5ea blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x0d08d943 hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x0d10d157 mddev_init +EXPORT_SYMBOL_GPL vmlinux 0x0d219f60 spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0x0d37e5c5 led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0x0d79acf2 percpu_ida_destroy +EXPORT_SYMBOL_GPL vmlinux 0x0d7c9cc2 sec_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x0d809487 pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x0d8391bb __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x0daab98f tps65912_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x0dda8007 dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0ddbc4ad usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x0de06988 cpu_first_thread_of_core +EXPORT_SYMBOL_GPL vmlinux 0x0dfa32e6 devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0x0e0e7108 sysfs_get +EXPORT_SYMBOL_GPL vmlinux 0x0e0fe276 of_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0x0e1b72e3 rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x0e31b28f virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0x0e79d6e0 mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0x0e7d91d4 devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x0e7edfd2 tpm_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0x0ea40217 pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0x0ead1789 sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0x0eb274a4 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0x0ecb83e2 ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0x0ecf823a static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x0ed16cbc pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0x0ed9302e percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x0ee1c758 blkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0x0ee3fb06 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x0ee8e106 ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL vmlinux 0x0ef1207a blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x0f117c20 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0x0f5a1257 class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x0f6226b1 regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0x0f751aea input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0x0f819d7e use_mm +EXPORT_SYMBOL_GPL vmlinux 0x0f8fd936 dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x0f90caf5 __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0x0fc6166a sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x0fcebd41 crypto_alloc_ablkcipher +EXPORT_SYMBOL_GPL vmlinux 0x0fe112dc of_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x0fe61591 cgroup_is_descendant +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x1028fe47 devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x10426926 usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x10858504 sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x108f2a91 md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x10aa6688 proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x10f63cca uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x110dbe79 netlink_alloc_skb +EXPORT_SYMBOL_GPL vmlinux 0x110ebe8c tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x1114011d threads_shift +EXPORT_SYMBOL_GPL vmlinux 0x111985fd tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0x1121645d of_scan_bus +EXPORT_SYMBOL_GPL vmlinux 0x112c37ac map_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x1143226c balloon_mapping_alloc +EXPORT_SYMBOL_GPL vmlinux 0x115bf3ae iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0x1172ce54 rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0x1178cd9b vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x117ba6fd device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x11b4739e pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x1212411a crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x121cd964 of_pci_range_parser_one +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1223ff90 locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0x124f2056 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x12618f89 __percpu_ida_init +EXPORT_SYMBOL_GPL vmlinux 0x1263685f crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x1268f357 resume_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0x1286172f srp_release_transport +EXPORT_SYMBOL_GPL vmlinux 0x12a00224 wm8400_block_read +EXPORT_SYMBOL_GPL vmlinux 0x12de67ff tpm_register_hardware +EXPORT_SYMBOL_GPL vmlinux 0x131a542a tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x132c804b debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0x1333751d sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0x134ffee4 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0x136a4ee6 btree_init +EXPORT_SYMBOL_GPL vmlinux 0x136ad105 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0x1371ab24 pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0x1382c051 regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x1389da84 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0x138cc569 fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x13ad647f scatterwalk_bytes_sglen +EXPORT_SYMBOL_GPL vmlinux 0x13b5b3c2 __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x13b6f74d regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x13ce87e8 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0x13d7d93e device_del +EXPORT_SYMBOL_GPL vmlinux 0x13db7fe7 pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0x13e3feb9 exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0x13e5ea13 __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0x1416c8d6 put_compat_timeval +EXPORT_SYMBOL_GPL vmlinux 0x14196859 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0x143141d1 usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x143e25f2 page_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x147995b2 usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0x147e1f0b irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x14801fae anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x1487a376 hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x148b27e2 regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x148b8aa8 blkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x14b16425 __init_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0x14b4a324 tpm_show_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x14ba502e usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x15026a32 snmp_mib_init +EXPORT_SYMBOL_GPL vmlinux 0x151582ca pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x15470553 net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0x1571ac4e regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0x15892417 async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x159aeece xfrm_inner_extract_output +EXPORT_SYMBOL_GPL vmlinux 0x15a816f7 mdio_mux_init +EXPORT_SYMBOL_GPL vmlinux 0x15ae3442 led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0x15c21e5e nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x15f11a53 unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0x16000a3c dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0x16054168 fuse_conn_kill +EXPORT_SYMBOL_GPL vmlinux 0x16115417 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x1637953f fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0x163a7bae ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0x164530e2 flush_kthread_worker +EXPORT_SYMBOL_GPL vmlinux 0x1650bf27 rcutorture_record_progress +EXPORT_SYMBOL_GPL vmlinux 0x1656b34d irq_find_mapping +EXPORT_SYMBOL_GPL vmlinux 0x16be9de5 sdhci_pci_o2_fujin2_pci_init +EXPORT_SYMBOL_GPL vmlinux 0x16c18414 usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0x16c5818c fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x16e342a0 clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x16fdc3d9 fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0x170ec605 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0x1753a32f hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0x17545290 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x1758280d crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0x1758f304 input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0x176e06f5 bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x17711f13 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0x177a2f4b crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0x17bb494d sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x17ccbdaa posix_timers_register_clock +EXPORT_SYMBOL_GPL vmlinux 0x17d6f240 regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x17e2410f tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0x18251b83 __get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x182c58dd hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x183501d2 wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0x183a62c4 irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x1853653c btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1866cec2 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x18746fcd __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0x1878f62b edac_err_assert +EXPORT_SYMBOL_GPL vmlinux 0x189f874d powernv_get_random_long +EXPORT_SYMBOL_GPL vmlinux 0x18bf9146 regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0x18cd6153 ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x18d5081f disk_get_part +EXPORT_SYMBOL_GPL vmlinux 0x18d5ac9d alarm_init +EXPORT_SYMBOL_GPL vmlinux 0x18e42141 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x18ffe875 queue_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0x19126e79 dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x191322ad tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0x193d48e0 trace_current_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x194dd5f5 pkey_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x19670a20 da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0x1981cf11 ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19abb108 usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x19b384a5 hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0x19c30487 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0x1a082d69 max77693_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x1a255de2 inet6_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0x1a2b2b0e pwm_config +EXPORT_SYMBOL_GPL vmlinux 0x1a323362 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x1a39cbea regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x1a73837f pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0x1a820a3e of_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x1a84749f ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0x1a897300 sysfs_add_device_to_node +EXPORT_SYMBOL_GPL vmlinux 0x1a8a2510 __netpoll_free_async +EXPORT_SYMBOL_GPL vmlinux 0x1a8c5907 btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x1a9bfdb7 crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x1abd9229 regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x1acef7d2 pm_freezing +EXPORT_SYMBOL_GPL vmlinux 0x1ae49c0b udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x1aecc92a __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x1b1c022e pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0x1b3c4a13 ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x1b49fc66 pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x1b4b5b0e tasklet_hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x1b62f619 platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x1b7deebf page_cache_async_readahead +EXPORT_SYMBOL_GPL vmlinux 0x1b7fea5f vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x1b909928 devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x1b9664d1 __destroy_context +EXPORT_SYMBOL_GPL vmlinux 0x1b9aca3f jprobe_return +EXPORT_SYMBOL_GPL vmlinux 0x1ba6ca9f powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0x1bb0b13b devm_regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x1bd06aab cpufreq_frequency_table_get_attr +EXPORT_SYMBOL_GPL vmlinux 0x1be0cc7c regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x1bf8cba1 ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x1c1215bd threads_core_mask +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1caca5b5 inet_csk_compat_getsockopt +EXPORT_SYMBOL_GPL vmlinux 0x1cb0a5cc da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x1cf82066 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0x1d0872cc regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x1d1523a5 rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0x1d58ae14 lpddr2_jedec_timings +EXPORT_SYMBOL_GPL vmlinux 0x1d674479 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x1d77b0f8 unix_socket_table +EXPORT_SYMBOL_GPL vmlinux 0x1d7c4bf4 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x1da4bf15 sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0x1dacd9f8 crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0x1dd57be5 i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0x1df5e27a screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0x1e0b6987 pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x1e23feee pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0x1e3e9592 thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1e5b03dc pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e809eb4 led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0x1e88fbdf rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0x1e9f7d32 __trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0x1eb1594f gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebe1576 sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1efa1b43 crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0x1f024777 ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x1f0e701e regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0x1f101064 regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f8db7f9 ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x1f99487b ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0x1fcca451 of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x1fcece42 inet_twdr_twcal_tick +EXPORT_SYMBOL_GPL vmlinux 0x1fd78b35 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x1fdb7995 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0x1fe98a53 regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x20003086 cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0x20011cd5 rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x2014a347 regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x20361a8a device_find_child +EXPORT_SYMBOL_GPL vmlinux 0x204d06d2 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x205e75d5 i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x2095c62b inet_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0x20ad636a tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x20bc3470 orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x20c755e7 __online_page_set_limits +EXPORT_SYMBOL_GPL vmlinux 0x20d2f408 regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x2110b66e devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2111915f __rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x211850f5 htab_hash_mask +EXPORT_SYMBOL_GPL vmlinux 0x2157f789 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0x218eee34 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x21d36a03 kvm_hypercall +EXPORT_SYMBOL_GPL vmlinux 0x21f06d0e ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x2203c239 mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x2247a674 rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x228060e6 inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x228c255d sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0x2294b95c fuse_get_req_for_background +EXPORT_SYMBOL_GPL vmlinux 0x2296c00d crypto_attr_u32 +EXPORT_SYMBOL_GPL vmlinux 0x22c23344 ide_dma_test_irq +EXPORT_SYMBOL_GPL vmlinux 0x22c99727 __blk_put_request +EXPORT_SYMBOL_GPL vmlinux 0x22db4797 get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0x22ef75d4 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0x22f63c45 skcipher_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x23629b06 dbs_check_cpu +EXPORT_SYMBOL_GPL vmlinux 0x237974be br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0x237b104c spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x23800d5d rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x23908c1a rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x239badc8 ping_bind +EXPORT_SYMBOL_GPL vmlinux 0x23ac58b7 ide_set_pio +EXPORT_SYMBOL_GPL vmlinux 0x23b28a70 arizona_clk32k_enable +EXPORT_SYMBOL_GPL vmlinux 0x23d2f032 save_stack_trace_tsk +EXPORT_SYMBOL_GPL vmlinux 0x23fc87d0 ide_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0x24011e14 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x24085519 inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x242aa545 regulator_set_optimum_mode +EXPORT_SYMBOL_GPL vmlinux 0x24395ea5 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0x24439526 watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x2447533c ktime_get_real +EXPORT_SYMBOL_GPL vmlinux 0x24509739 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0x2452383e ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0x2466deab spi_alloc_master +EXPORT_SYMBOL_GPL vmlinux 0x2467ddee xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0x247120cd device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0x24724472 seq_release_net +EXPORT_SYMBOL_GPL vmlinux 0x2477584e vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0x247ef831 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x24aac4d9 crypto_aes_expand_key +EXPORT_SYMBOL_GPL vmlinux 0x24cda041 ide_vlb_clk +EXPORT_SYMBOL_GPL vmlinux 0x24e72b3b tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x24f6efdf usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x24f97ddc devm_rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x24ff3997 kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x2503c63d platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0x251ba0fe part_round_stats +EXPORT_SYMBOL_GPL vmlinux 0x251f87f7 device_store_int +EXPORT_SYMBOL_GPL vmlinux 0x252664ee extcon_set_cable_state +EXPORT_SYMBOL_GPL vmlinux 0x2559026c devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x25995170 devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0x259df06a usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x25a92663 unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0x25c76226 rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0x25d6a7d6 irq_create_mapping +EXPORT_SYMBOL_GPL vmlinux 0x26255665 pci_pri_status +EXPORT_SYMBOL_GPL vmlinux 0x262e8985 thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x262f20a8 local_clock +EXPORT_SYMBOL_GPL vmlinux 0x26376eca __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x265c74b0 ide_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0x267cc50f inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0x26b71fb4 ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x26bbf7f6 platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x26bc4ddc spi_setup +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26e2c843 debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x26e55061 restore_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x26e6a950 regulator_can_change_voltage +EXPORT_SYMBOL_GPL vmlinux 0x27203e2c virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0x272645f3 percpu_ida_free_tags +EXPORT_SYMBOL_GPL vmlinux 0x27394ac2 device_create +EXPORT_SYMBOL_GPL vmlinux 0x2776affd blocking_notifier_chain_cond_register +EXPORT_SYMBOL_GPL vmlinux 0x277ed403 ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x27c0c4be eventfd_ctx_read +EXPORT_SYMBOL_GPL vmlinux 0x27c1e63f usb_amd_find_chipset_info +EXPORT_SYMBOL_GPL vmlinux 0x27d74de9 register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27f5e24a inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x2852bf79 dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x2883e3d8 bio_alloc_mddev +EXPORT_SYMBOL_GPL vmlinux 0x2893efed xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0x28a903c8 timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x28b2bb72 __add_pages +EXPORT_SYMBOL_GPL vmlinux 0x28f4de76 call_srcu +EXPORT_SYMBOL_GPL vmlinux 0x28fb0c4e vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0x293c5672 spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0x293dc326 uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0x294233c6 regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0x294d73a1 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0x294e51e3 thermal_notify_framework +EXPORT_SYMBOL_GPL vmlinux 0x295d43ec tc3589x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x297f79ef dio_end_io +EXPORT_SYMBOL_GPL vmlinux 0x29a53b4a regmap_read +EXPORT_SYMBOL_GPL vmlinux 0x29b2446d extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x29b58e3a sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0x2a02bfc4 sec_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x2a0630fa fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0x2a2831fd clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x2a52b035 ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x2a678a13 __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0x2a67f7da stop_machine +EXPORT_SYMBOL_GPL vmlinux 0x2a83f10f ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0x2a9ff3dc crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0x2ac09285 ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x2b0f4d24 virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0x2b386752 led_classdev_register +EXPORT_SYMBOL_GPL vmlinux 0x2b5c303b smp_send_reschedule +EXPORT_SYMBOL_GPL vmlinux 0x2b6c122b sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x2b7a6de8 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2b8d90c0 kobj_completion_del_and_wait +EXPORT_SYMBOL_GPL vmlinux 0x2be501d5 usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x2beb070e rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c323864 pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x2c44e4d6 attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0x2c5bf335 sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c89a60c sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0x2c8a189c mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0x2c97f8a2 of_reconfig_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x2ca6d8f9 tpm_release +EXPORT_SYMBOL_GPL vmlinux 0x2ce05cca shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0x2ce98559 kcrypto_wq +EXPORT_SYMBOL_GPL vmlinux 0x2cea32ee unregister_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0x2d17a0e1 cgroup_taskset_size +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d231c5f devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x2d2b9f55 invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d59c954 edac_handlers +EXPORT_SYMBOL_GPL vmlinux 0x2d5ffeba power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2d723df5 regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x2d8aaf0e sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0x2db6eafd blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0x2dba276a __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x2dc5a6d1 btree_last +EXPORT_SYMBOL_GPL vmlinux 0x2dc6d740 register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x2dda8c86 irq_create_direct_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2de95768 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0x2e12fcde regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x2e1da9fb probe_kernel_read +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e2f1740 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2e45e488 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x2e6f4b34 relay_close +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ecfeb82 of_node_to_nid +EXPORT_SYMBOL_GPL vmlinux 0x2ee84d19 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0x2f0092d4 i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f15b0d0 usb_string +EXPORT_SYMBOL_GPL vmlinux 0x2f32f890 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x2f4113a2 dcookie_register +EXPORT_SYMBOL_GPL vmlinux 0x2f8babf7 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0x2fa3604f gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0x2fd8cba9 freeze_wake +EXPORT_SYMBOL_GPL vmlinux 0x2ff8cb24 security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0x2ffb5ff7 btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0x3006b6f5 of_pci_get_devfn +EXPORT_SYMBOL_GPL vmlinux 0x30269bfb ping_proc_unregister +EXPORT_SYMBOL_GPL vmlinux 0x303f24a7 blk_queue_bypass_end +EXPORT_SYMBOL_GPL vmlinux 0x305a1e60 ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0x306eb1d0 arizona_clk32k_disable +EXPORT_SYMBOL_GPL vmlinux 0x307270fa smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x308b733a getboottime +EXPORT_SYMBOL_GPL vmlinux 0x30aff0c5 fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0x30b7a865 class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x30be9066 ide_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0x30f68fd6 __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0x3100de75 ping_err +EXPORT_SYMBOL_GPL vmlinux 0x3104326f tc3589x_block_write +EXPORT_SYMBOL_GPL vmlinux 0x3109b751 cpu_clock +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x312a2263 spi_async_locked +EXPORT_SYMBOL_GPL vmlinux 0x3183df26 cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0x31859993 of_irq_to_resource_table +EXPORT_SYMBOL_GPL vmlinux 0x3198bf4f driver_register +EXPORT_SYMBOL_GPL vmlinux 0x31badafe crypto_alg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x31c0c2d1 dm_put +EXPORT_SYMBOL_GPL vmlinux 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL vmlinux 0x31ea2f7b __remove_pages +EXPORT_SYMBOL_GPL vmlinux 0x321bdbb1 compat_get_timeval +EXPORT_SYMBOL_GPL vmlinux 0x3232c1e9 crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0x323f3182 regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3256ca45 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x327ad82e pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0x328995b5 tracing_generic_entry_update +EXPORT_SYMBOL_GPL vmlinux 0x329bbbde timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x32b31a8c ktime_get_boottime +EXPORT_SYMBOL_GPL vmlinux 0x32bc3638 crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0x32bd2a83 tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x32bded08 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32c3d015 crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x32c80375 kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x32d6503c scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x32db6e25 pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x32dce241 ide_read_error +EXPORT_SYMBOL_GPL vmlinux 0x32ec53ae __ide_pci_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x32f04d8d netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0x32f4d094 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x32fc2c57 i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0x32fd447a monotonic_to_bootbased +EXPORT_SYMBOL_GPL vmlinux 0x331a844e pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0x33253f4b ablkcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x3325c08a usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0x333587ac usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x336154ca rcutorture_record_test_transition +EXPORT_SYMBOL_GPL vmlinux 0x33748c61 ata_sas_port_async_suspend +EXPORT_SYMBOL_GPL vmlinux 0x337786fa usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x33a94a45 of_irq_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x33db7f44 init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x33f7ab15 get_compat_timespec +EXPORT_SYMBOL_GPL vmlinux 0x341530e7 inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x3423b8fe blk_queue_flush_queueable +EXPORT_SYMBOL_GPL vmlinux 0x342fac6f inet_csk_reqsk_queue_prune +EXPORT_SYMBOL_GPL vmlinux 0x34359ddd sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0x343efe16 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0x3462729d ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x3465fce6 __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0x346e1278 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0x346e8a84 __ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x347fd4b3 eventfd_ctx_get +EXPORT_SYMBOL_GPL vmlinux 0x349b695e relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0x34bd3929 tpm_read +EXPORT_SYMBOL_GPL vmlinux 0x34e386a1 uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0x34ebe2d1 ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x35252231 fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0x353131f7 security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x3537f63a irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0x356822ea crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x357bc213 devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x35eeaa88 perf_trace_buf_prepare +EXPORT_SYMBOL_GPL vmlinux 0x35f10f43 nfq_ct_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x35f165f1 devm_reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x361e2bcc save_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0x3670a3e9 wm5102_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0x368f1fea static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36b49cf4 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x36c767e8 sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x36dd52a9 usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0x36e02aba irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0x36eb1317 power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x36ede65c regmap_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x36f63718 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0x3701d45e mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0x3713aa43 regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0x376dbb17 sched_setscheduler +EXPORT_SYMBOL_GPL vmlinux 0x378e9472 tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0x37b3e768 blkg_lookup +EXPORT_SYMBOL_GPL vmlinux 0x37b48662 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0x37bb636b platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0x380437c9 regmap_field_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x3815d05f i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x3843b3dd ide_intr +EXPORT_SYMBOL_GPL vmlinux 0x384d7f7a usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x386469d0 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0x38772bc0 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0x38ba714a pci_msi_off +EXPORT_SYMBOL_GPL vmlinux 0x38c470d4 ide_exec_command +EXPORT_SYMBOL_GPL vmlinux 0x38e69970 spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0x38edc06d pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0x38f0a257 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x38f6ac04 key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0x390449f7 xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0x3906566a regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x3906f874 pci_intx_mask_supported +EXPORT_SYMBOL_GPL vmlinux 0x39099bfd eeh_add_device_tree_early +EXPORT_SYMBOL_GPL vmlinux 0x3929a4a4 crypto_attr_alg2 +EXPORT_SYMBOL_GPL vmlinux 0x393f5abe user_match +EXPORT_SYMBOL_GPL vmlinux 0x3953d603 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0x397ef9ad crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x398be33f srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x39933869 debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x39ddea30 wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x3a03abf0 sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0x3a1378b8 shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x3a26ed11 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0x3a3193e1 pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a502730 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a8fc803 usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0x3a987316 devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x3a993403 ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0x3ad0e201 scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x3ad82802 of_property_read_u32_index +EXPORT_SYMBOL_GPL vmlinux 0x3b89761b ide_allocate_dma_engine +EXPORT_SYMBOL_GPL vmlinux 0x3b9986e9 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x3bb71590 usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0x3bb77995 key_type_user +EXPORT_SYMBOL_GPL vmlinux 0x3c54df7c mmput +EXPORT_SYMBOL_GPL vmlinux 0x3c66d8a3 usb_bus_list_lock +EXPORT_SYMBOL_GPL vmlinux 0x3c77391e proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x3c88db4f pwm_can_sleep +EXPORT_SYMBOL_GPL vmlinux 0x3c8d28cc of_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x3c9390db pci_vpd_find_tag +EXPORT_SYMBOL_GPL vmlinux 0x3caccc23 unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x3cb85101 transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x3ccffec8 of_irq_parse_one +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3ceeca9c get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x3cf69baf slice_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0x3d18f582 dm_kill_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d39b6ab fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0x3d4ebee6 fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0x3d501d00 tpm_show_caps +EXPORT_SYMBOL_GPL vmlinux 0x3d51807a register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x3d688f61 tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0x3d878dc4 crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0x3d92c6d8 set_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x3da7923c power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0x3da7f5d4 ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0x3dbae691 tpm_show_active +EXPORT_SYMBOL_GPL vmlinux 0x3dc526a9 arizona_of_match +EXPORT_SYMBOL_GPL vmlinux 0x3dc916b6 crypto_fl_tab +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3dedf32a tcp_fetch_timewait_stamp +EXPORT_SYMBOL_GPL vmlinux 0x3df930b8 ide_unregister_region +EXPORT_SYMBOL_GPL vmlinux 0x3e259239 smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x3e2e543d cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0x3e2fa31f wm8997_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x3e6c5c0d blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e7c0956 __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x3e8e213f verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x3e971b8d regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3eb0cbbb thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x3ec56d6c ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0x3ee610d8 da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x3eee189f netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0x3ef876ef ide_pci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x3efb35c9 get_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0x3efd70e9 anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3f0f64f7 sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x3f2a0f29 init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0x3f4116de hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x3f5dd15a rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0x3f831235 of_platform_populate +EXPORT_SYMBOL_GPL vmlinux 0x3fb14423 md_ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x3fb2bd8a irq_set_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0x3fbbd249 ping_seq_fops +EXPORT_SYMBOL_GPL vmlinux 0x3fc188ff ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0x3fc72d3d __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x3fef7431 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x3ff049e7 __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x3ff3642b dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x403fd626 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0x4043291b put_pid +EXPORT_SYMBOL_GPL vmlinux 0x4045c494 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0x404de13d platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x405128f6 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x4056c430 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0x4065d168 pm_print_active_wakeup_sources +EXPORT_SYMBOL_GPL vmlinux 0x406c1367 class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x40af0dec ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0x40d46b21 crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x40dbba1a rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0x40dd90ed skcipher_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0x40ed5b29 tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x40f7bfd1 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x411416e6 ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0x412fc69d rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0x413941e0 pci_sriov_migration +EXPORT_SYMBOL_GPL vmlinux 0x4159ed36 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0x416108c8 ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0x41613313 usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x4170463c transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x417942fb ide_setting_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x417fbf7b fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x418107bc elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x4198f447 gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0x41b4860f debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0x41cdb443 power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0x41d81c5d of_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x42051829 __srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x42160169 flush_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x421a9d78 virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0x4222b761 _submit_bh +EXPORT_SYMBOL_GPL vmlinux 0x4240a69e srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x424acc6d scatterwalk_done +EXPORT_SYMBOL_GPL vmlinux 0x42583564 ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x4289680b usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0x42ac53cb ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0x42d021a6 scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x42d47ddb sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0x42d48c8b seq_open_net +EXPORT_SYMBOL_GPL vmlinux 0x42fd8784 ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x430e5257 of_alias_get_id +EXPORT_SYMBOL_GPL vmlinux 0x434e3985 inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x4353060b ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x435e1c5b crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0x43678b8b debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x437850fd serial8250_tx_dma +EXPORT_SYMBOL_GPL vmlinux 0x4378ea5e __pci_complete_power_transition +EXPORT_SYMBOL_GPL vmlinux 0x43987589 vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0x43a21c69 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x43a53735 __alloc_workqueue_key +EXPORT_SYMBOL_GPL vmlinux 0x43a69706 thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0x43ae828f ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x43c55208 rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x43f56e82 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x443a5439 inet_csk_compat_setsockopt +EXPORT_SYMBOL_GPL vmlinux 0x44404f11 kdb_register_repeat +EXPORT_SYMBOL_GPL vmlinux 0x4451a7b9 rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x4454df65 tpm_show_pcrs +EXPORT_SYMBOL_GPL vmlinux 0x446e2392 regmap_fields_write +EXPORT_SYMBOL_GPL vmlinux 0x447b3b92 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x449ebd2f __rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x44a5919e stmpe_block_write +EXPORT_SYMBOL_GPL vmlinux 0x44bfa644 tpm_gen_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x44d9e47a spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0x44eda3c6 extcon_unregister_interest +EXPORT_SYMBOL_GPL vmlinux 0x450fb522 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x4523ebe4 device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x45258061 sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x4531eb75 eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0x4537885b simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0x454c15ae __smp_call_function_single +EXPORT_SYMBOL_GPL vmlinux 0x4552b4e7 napi_hash_del +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x45bc3637 tpm_write +EXPORT_SYMBOL_GPL vmlinux 0x45bf1ff3 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x45c308a8 sysfs_get_dirent_ns +EXPORT_SYMBOL_GPL vmlinux 0x45c61e9e alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0x45cd0691 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0x45e3cf2a do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x460f7531 wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0x46150024 rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0x46221223 register_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0x462a8f79 balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x46305a4c tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0x463b1975 pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x4672e88b __crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x4688c96a usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4697836d sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x46a363df palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0x46a892ee ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0x46a98511 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x46eaa2c2 arizona_dev_exit +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x4738a8f4 extcon_set_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x477a6ec6 cpufreq_frequency_get_table +EXPORT_SYMBOL_GPL vmlinux 0x47821f15 rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47b21077 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x47b5a7fe sync_filesystem +EXPORT_SYMBOL_GPL vmlinux 0x47baa35d rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x47c35edc driver_find +EXPORT_SYMBOL_GPL vmlinux 0x47d35ef8 ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0x47d5f7af tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0x47dd7ddc inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0x47e115e2 device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x47fa76ba xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0x4809d3c8 regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x483f4d4c sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x483f6ad1 dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0x4846d4d3 ide_set_dma_mode +EXPORT_SYMBOL_GPL vmlinux 0x488b9832 spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x48e5069a blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0x490bca11 usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x4942cae0 thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0x49684c32 cgroup_add_cftypes +EXPORT_SYMBOL_GPL vmlinux 0x498d293a trace_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x499da495 disk_part_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x49a18d47 __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x49aa9476 stmpe_block_read +EXPORT_SYMBOL_GPL vmlinux 0x49c4ae16 ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0x49e9c566 sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x49fb9741 regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0x4a00f3dd crypto_alloc_instance2 +EXPORT_SYMBOL_GPL vmlinux 0x4a0ba051 trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0x4a2043e3 pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0x4a57966c blkio_subsys +EXPORT_SYMBOL_GPL vmlinux 0x4a5a006d flush_vsx_to_thread +EXPORT_SYMBOL_GPL vmlinux 0x4a90160e bprintf +EXPORT_SYMBOL_GPL vmlinux 0x4aadeb9a ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0x4ab222a6 usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0x4affd08b put_compat_timespec +EXPORT_SYMBOL_GPL vmlinux 0x4b1034ce ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x4b3c257d mmc_send_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0x4b4b1d57 pci_pri_stopped +EXPORT_SYMBOL_GPL vmlinux 0x4b76467c unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x4b9baaad device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x4baeb150 usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x4bbde3cf tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0x4bc62a81 audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4bd3a67c netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0x4be613c0 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0x4c1cf535 ide_pad_transfer +EXPORT_SYMBOL_GPL vmlinux 0x4c262767 inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0x4c373b5f pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0x4c602bf1 __blkg_release_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4c6ac8d9 ftrace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x4c759827 byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x4c808253 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x4c9a6c05 regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4ca3bef5 cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0x4cba7c01 ide_pci_setup_ports +EXPORT_SYMBOL_GPL vmlinux 0x4ce57604 blkg_conf_finish +EXPORT_SYMBOL_GPL vmlinux 0x4d172ccb ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x4d319aa7 ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0x4d6b77d6 wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0x4d90980f scsi_target_block +EXPORT_SYMBOL_GPL vmlinux 0x4daebd79 usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4df0f0e6 blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4e01f842 ide_retry_pc +EXPORT_SYMBOL_GPL vmlinux 0x4e109192 ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0x4e114772 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x4e242f5f pstore_cannot_block_path +EXPORT_SYMBOL_GPL vmlinux 0x4e2da479 tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0x4e496658 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x4e4ef6eb bus_register +EXPORT_SYMBOL_GPL vmlinux 0x4e5747b6 devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x4e647444 ide_dma_start +EXPORT_SYMBOL_GPL vmlinux 0x4e6e441a cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0x4ea85cf7 __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x4eb6a9e3 blkg_lookup_create +EXPORT_SYMBOL_GPL vmlinux 0x4ebea1de usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x4ec31041 usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x4ec7b8e3 tracepoint_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0x4ee340c1 devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4f020dee public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0x4f0ed146 fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0x4f2d39c6 ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x4f45cac9 alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0x4f4c91a9 disk_map_sector_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4f5c830b sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4f751df0 ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0x4f7ae0db rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x4f81f1fe put_device +EXPORT_SYMBOL_GPL vmlinux 0x4f93f6bd clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0x4fd4e89d ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4ff388f1 dma_buf_begin_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0x4ffe0a34 pci_enable_pri +EXPORT_SYMBOL_GPL vmlinux 0x4fffe6d0 blk_add_request_payload +EXPORT_SYMBOL_GPL vmlinux 0x5009f329 pci_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0x500d68e6 crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x5021b7e0 device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x502f7c8b bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x5030ecf6 blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0x5039c4ab percpu_ida_for_each_free +EXPORT_SYMBOL_GPL vmlinux 0x505164e9 arizona_dev_init +EXPORT_SYMBOL_GPL vmlinux 0x505eb575 cgroup_taskset_next +EXPORT_SYMBOL_GPL vmlinux 0x50601122 of_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x5064cad3 led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0x506691f1 sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0x5070c711 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0x507de8c6 add_memory +EXPORT_SYMBOL_GPL vmlinux 0x5086ac3a alg_test +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x50d79c58 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x50ff924b ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0x5105913f __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x510732c7 usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0x5136a4d6 crypto_register_pcomp +EXPORT_SYMBOL_GPL vmlinux 0x5140f296 cpufreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x516381ab ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x5189c149 cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0x5199a35b mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x51a1d854 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x51a6b296 perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0x51aa3a38 sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x51b59535 regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0x51b65a26 rtc_lock +EXPORT_SYMBOL_GPL vmlinux 0x51c2b126 need_load_eval +EXPORT_SYMBOL_GPL vmlinux 0x51d23246 sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0x5205e64d disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL vmlinux 0x522f538b tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x52486ea4 dma_buf_kmap +EXPORT_SYMBOL_GPL vmlinux 0x525f6cd8 relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x52634589 regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5272d8bc __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0x52971d03 device_add +EXPORT_SYMBOL_GPL vmlinux 0x52a41251 __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x52a42ada subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x52b1000e ide_build_dmatable +EXPORT_SYMBOL_GPL vmlinux 0x52b5f7a9 ide_read_altstatus +EXPORT_SYMBOL_GPL vmlinux 0x52da6ab5 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0x52de3b93 device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x52f43f05 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x52f8f360 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0x52fb073e regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x53290bbe pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x532998fa rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x532fc742 ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x5335dd11 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x53522cb6 spi_busnum_to_master +EXPORT_SYMBOL_GPL vmlinux 0x5358fc36 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x53614269 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x537103a3 tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0x5395356c netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0x53dca83d fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54215db5 visitor64 +EXPORT_SYMBOL_GPL vmlinux 0x5435475c balloon_devinfo_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5460c8d8 fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x5461ee50 led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0x546c5565 ppc_tb_freq +EXPORT_SYMBOL_GPL vmlinux 0x546f0a10 __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x5471ea49 ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0x54740eb7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x547ea7c3 pci_reset_bridge_secondary_bus +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54baaed6 regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0x54dfca59 watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0x54f0869c pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0x550d765b pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0x55133272 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5543b1bf ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0x554d7faf raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0x556070ec regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x55a2d2bd usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x56094184 inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x560fd892 blk_unprep_request +EXPORT_SYMBOL_GPL vmlinux 0x561e4b77 irq_of_parse_and_map +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x563e3c21 tc3589x_block_read +EXPORT_SYMBOL_GPL vmlinux 0x5644a1f3 ide_get_lba_addr +EXPORT_SYMBOL_GPL vmlinux 0x564f1dca klist_add_after +EXPORT_SYMBOL_GPL vmlinux 0x5654c38f each_symbol_section +EXPORT_SYMBOL_GPL vmlinux 0x565b6892 uuid_le_gen +EXPORT_SYMBOL_GPL vmlinux 0x567f1499 vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x56886b19 scatterwalk_map +EXPORT_SYMBOL_GPL vmlinux 0x5692386f gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x56b1dd24 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x56d697ce cpu_up +EXPORT_SYMBOL_GPL vmlinux 0x56e75d47 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x56e9453d usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0x56eab826 pci_configure_slot +EXPORT_SYMBOL_GPL vmlinux 0x57060186 sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0x57231f45 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0x572b0bdc blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0x57536239 led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0x575b35b6 percpu_ida_free +EXPORT_SYMBOL_GPL vmlinux 0x575c5f94 execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0x579a5fa6 usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57b04b98 css_rightmost_descendant +EXPORT_SYMBOL_GPL vmlinux 0x57b24d6e mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x57ebe400 usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0x583af7f5 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0x58413099 ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x5892f832 release_pmc_hardware +EXPORT_SYMBOL_GPL vmlinux 0x589e4569 syscon_regmap_lookup_by_pdevname +EXPORT_SYMBOL_GPL vmlinux 0x58a66baa transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0x58d154f7 crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0x58d1e455 regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0x58fe9409 rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0x590b746c ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0x5911ff33 fuse_request_send_background +EXPORT_SYMBOL_GPL vmlinux 0x593efaa9 wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x5947abbe max77693_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x594c4161 xattr_getsecurity +EXPORT_SYMBOL_GPL vmlinux 0x59533768 ide_setup_pci_noise +EXPORT_SYMBOL_GPL vmlinux 0x595bf42b ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0x5968e782 bsg_register_queue +EXPORT_SYMBOL_GPL vmlinux 0x59867c1c list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x598b2a25 debugfs_remove_recursive +EXPORT_SYMBOL_GPL vmlinux 0x59a1756b pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x59b2adbf input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x59e2743e call_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0x59eae699 ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x59efc086 crypto_rng_type +EXPORT_SYMBOL_GPL vmlinux 0x59f5d9c3 usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x59f70127 inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x5a024ecd percpu_ida_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5a1053be class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x5a12c3ec ide_pio_cycle_time +EXPORT_SYMBOL_GPL vmlinux 0x5a2cfbe4 ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x5a4582ea bio_trim +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a8caf14 tcp_init_congestion_ops +EXPORT_SYMBOL_GPL vmlinux 0x5a8f3b69 of_irq_parse_raw +EXPORT_SYMBOL_GPL vmlinux 0x5a9bbef7 bmp085_detect +EXPORT_SYMBOL_GPL vmlinux 0x5ab5355f debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x5ac381e8 handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0x5ac8855a debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0x5ad0aad9 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0x5ad6a1be init_phb_dynamic +EXPORT_SYMBOL_GPL vmlinux 0x5b068dd6 crypto_nivaead_type +EXPORT_SYMBOL_GPL vmlinux 0x5b3b6d1b ata_eh_thaw_port +EXPORT_SYMBOL_GPL vmlinux 0x5b4e379c of_prop_next_u32 +EXPORT_SYMBOL_GPL vmlinux 0x5b5ac481 ata_sff_busy_sleep +EXPORT_SYMBOL_GPL vmlinux 0x5b871852 ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0x5b88e7c3 rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0x5bc9b334 trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x5bdfe680 crypto_init_spawn2 +EXPORT_SYMBOL_GPL vmlinux 0x5bf37148 regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0x5c185e95 posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0x5c198ad0 sec_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x5c263059 inhibit_secondary_onlining +EXPORT_SYMBOL_GPL vmlinux 0x5c2de517 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0x5c3337f9 devm_regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x5c5e7d5b ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0x5c9e3b72 tpm_show_temp_deactivated +EXPORT_SYMBOL_GPL vmlinux 0x5ca93699 tracepoint_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x5cabdced dev_pm_qos_remove_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x5cbede24 ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0x5cf8a882 __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x5d1180e7 ide_output_data +EXPORT_SYMBOL_GPL vmlinux 0x5d12e48f input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0x5d3edd70 led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x5d77952d hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x5d7ffccf ide_create_request_sense_cmd +EXPORT_SYMBOL_GPL vmlinux 0x5d854eb6 devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5d856aea devm_pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x5d9e0739 devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x5da29241 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0x5dad8357 pcibios_finish_adding_to_bus +EXPORT_SYMBOL_GPL vmlinux 0x5db7b80e __mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x5dcf9b6c pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x5dd178c6 pwm_free +EXPORT_SYMBOL_GPL vmlinux 0x5de4982e __pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x5dea9fbb wm8400_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x5e38e610 wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0x5e3909c3 crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0x5e3bb9e5 usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0x5e44266d ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x5e458b5d vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0x5e5925b1 ablkcipher_walk_phys +EXPORT_SYMBOL_GPL vmlinux 0x5e70552f __get_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x5e801d31 usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0x5e89144a tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x5eb27545 crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0x5ed424ed wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x5ee7542e reserve_pmc_hardware +EXPORT_SYMBOL_GPL vmlinux 0x5f28b27d ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x5f4185e6 uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0x5f419491 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x5f53009c __module_address +EXPORT_SYMBOL_GPL vmlinux 0x5f79a98b __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x5f8b4466 usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x5fd4498d xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0x5fd7ba1a ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5fda4d26 pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0x5fed2d74 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x5ff9f2ec regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6021a945 class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0x603d4f49 sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0x6041f9f7 usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0x60467b06 btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0x60506751 unmap_kernel_range_noflush +EXPORT_SYMBOL_GPL vmlinux 0x607e8b95 shash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0x608a8257 devres_get +EXPORT_SYMBOL_GPL vmlinux 0x6094685f wm8997_irq +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a16e77 srp_rport_add +EXPORT_SYMBOL_GPL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL_GPL vmlinux 0x60c0eef6 device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0x60da3e33 pcibios_remove_pci_devices +EXPORT_SYMBOL_GPL vmlinux 0x60de4c1b skb_gro_receive +EXPORT_SYMBOL_GPL vmlinux 0x60e4da84 ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0x610cb276 regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x6125c3bd regmap_field_write +EXPORT_SYMBOL_GPL vmlinux 0x61325d4c power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0x6141c00c inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x614360aa pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0x6149fc1c wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0x61570f73 ide_init_pc +EXPORT_SYMBOL_GPL vmlinux 0x615759ae blkg_stat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0x6183ff15 sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0x61a90c54 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x622dacba tick_nohz_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x6244e259 ide_pci_init_one +EXPORT_SYMBOL_GPL vmlinux 0x625e201b ide_cd_expiry +EXPORT_SYMBOL_GPL vmlinux 0x629473b9 __rtnl_register +EXPORT_SYMBOL_GPL vmlinux 0x629aa19a task_cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0x629f664f ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0x62cb99c6 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0x62e016cd tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x62f6cfaf ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0x62fd4f81 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0x6312f73f usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0x6318757f mdio_mux_uninit +EXPORT_SYMBOL_GPL vmlinux 0x63205de1 ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x6331f28b regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x6353df46 ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x6368cbc7 blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0x638eabc5 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x6390efda of_modalias_node +EXPORT_SYMBOL_GPL vmlinux 0x63927a64 console_drivers +EXPORT_SYMBOL_GPL vmlinux 0x63aaf6d8 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x63ad002d get_kernel_page +EXPORT_SYMBOL_GPL vmlinux 0x63b828db devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0x63ca0df8 rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x63d53db6 dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x63fb551a ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x640988d2 usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0x646d1256 irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x64947d37 da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x649aaf31 srp_rport_del +EXPORT_SYMBOL_GPL vmlinux 0x649d1e84 user_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x64e0de76 irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x6513d0bb shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x651cec30 __fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0x65492fe3 spi_master_suspend +EXPORT_SYMBOL_GPL vmlinux 0x655746a2 pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0x65814336 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0x659be0f0 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0x659e0008 i2c_lock_adapter +EXPORT_SYMBOL_GPL vmlinux 0x65aebd36 pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x65b0f9c5 srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0x65bbbc78 schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0x65cb72b1 da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x6605f951 rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x662a0c3f x509_get_sig_params +EXPORT_SYMBOL_GPL vmlinux 0x662dfe42 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0x6650befe crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0x665ae38c rio_get_asm +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x66991edd spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x66aee3ae kobj_completion_release +EXPORT_SYMBOL_GPL vmlinux 0x66afb53b unix_table_lock +EXPORT_SYMBOL_GPL vmlinux 0x66b538ca dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0x66b67c34 dma_buf_put +EXPORT_SYMBOL_GPL vmlinux 0x66c122d0 rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x66ec4229 ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x66fc59b1 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x67003904 perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0x6713806b pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x673fd616 init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0x674e13e1 public_key_destroy +EXPORT_SYMBOL_GPL vmlinux 0x675b0d71 gpio_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x6764500c ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x679eb0cc ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0x67cdbfc2 rio_get_device +EXPORT_SYMBOL_GPL vmlinux 0x67d25199 fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0x67d6c019 skcipher_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0x67da4e26 usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x67f863f1 dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0x6803abdb device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0x6852337f ide_device_get +EXPORT_SYMBOL_GPL vmlinux 0x687075fc usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x687697ea arizona_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x687934e9 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x6879384a devm_regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x687d525e rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0x689ccbb0 fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0x68f88f7c pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x6920f89e crypto_create_tfm +EXPORT_SYMBOL_GPL vmlinux 0x6921aa34 compat_put_timeval +EXPORT_SYMBOL_GPL vmlinux 0x6923ce63 irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x693d7ed4 digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0x693edb56 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0x69447467 ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0x6951b5da pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0x695a8779 blkdev_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x6975423b of_pci_msi_chip_remove +EXPORT_SYMBOL_GPL vmlinux 0x69790ef6 __init_new_context +EXPORT_SYMBOL_GPL vmlinux 0x697a2426 led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x697a6890 subsys_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x697cbbb4 threads_per_core +EXPORT_SYMBOL_GPL vmlinux 0x698a899f ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0x698db76f sk_unattached_filter_create +EXPORT_SYMBOL_GPL vmlinux 0x69ac797f bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x69b50b02 static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0x69b6f8e0 ide_write_devctl +EXPORT_SYMBOL_GPL vmlinux 0x69e2f888 class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x69e9a2cb ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x69f8a6bb ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x69fe8c78 ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x6a5fb566 rcu_sched_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x6a6cafd2 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x6a7d45ac rt_mutex_destroy +EXPORT_SYMBOL_GPL vmlinux 0x6acb8d84 ppc64_caches +EXPORT_SYMBOL_GPL vmlinux 0x6b29a1fa ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0x6b5c8a87 platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0x6b7a38f0 bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0x6b889143 pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x6b93bf60 inet_twdr_twkill_work +EXPORT_SYMBOL_GPL vmlinux 0x6bb85946 sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x6c17ef08 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0x6c1b09ab gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x6c28614a crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0x6c45727b eeh_add_device_tree_late +EXPORT_SYMBOL_GPL vmlinux 0x6c49c4f2 clockevents_notify +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c5c27a1 crypto_blkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0x6c6ee445 of_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x6c8fb5d9 ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x6ca05aaf of_get_regulator_init_data +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6ca4c8ff sock_prot_inuse_add +EXPORT_SYMBOL_GPL vmlinux 0x6cc07dc4 find_symbol +EXPORT_SYMBOL_GPL vmlinux 0x6cc0f4d4 wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6cd21997 ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0x6cd4ea62 wm5110_irq +EXPORT_SYMBOL_GPL vmlinux 0x6cff639b regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d53bf08 cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0x6d789776 devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x6d7bb3b2 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0x6d9e5425 of_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0x6d9e5858 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x6dd5e89b ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x6dd92b8f ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0x6e04a077 usb_bind_phy +EXPORT_SYMBOL_GPL vmlinux 0x6e1bf39d raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0x6e20daf2 ide_issue_pc +EXPORT_SYMBOL_GPL vmlinux 0x6e379526 kernstart_addr +EXPORT_SYMBOL_GPL vmlinux 0x6e3f0775 driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0x6e48b760 rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x6e61a5e5 uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0x6e69926e of_reset_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6ea62b29 ide_release_dma_engine +EXPORT_SYMBOL_GPL vmlinux 0x6ecfffb5 generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0x6ef17c55 cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0x6f0159be fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x6f08aed1 device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x6f098503 __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0x6f1ee69e kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0x6f4a47f5 sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0x6f6b33f7 tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x6f992e9a inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0x6f9eb37d pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0x6fb54fd2 get_dcookie +EXPORT_SYMBOL_GPL vmlinux 0x6fe3d8cf ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x6fef51d3 mpic_subsys +EXPORT_SYMBOL_GPL vmlinux 0x6ff245ca usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x7018aa82 ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x701b8088 n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0x70410402 bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x704a21a3 extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x704b52fc rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0x707ff1bb ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0x70cf032f usb_hcd_irq +EXPORT_SYMBOL_GPL vmlinux 0x70e00971 crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x710cffba irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0x712c6465 kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x714989dc sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x71930ed3 of_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x719c903c tpm_show_owned +EXPORT_SYMBOL_GPL vmlinux 0x71bd14a7 bmp085_remove +EXPORT_SYMBOL_GPL vmlinux 0x71d32d66 debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0x71dc9998 crypto_il_tab +EXPORT_SYMBOL_GPL vmlinux 0x71df9021 regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0x71e1c1e4 relay_flush +EXPORT_SYMBOL_GPL vmlinux 0x71fff8f6 tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0x723374f8 pci_bus_sem +EXPORT_SYMBOL_GPL vmlinux 0x724d61da debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0x72741f25 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x7280d23e set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x7282f058 tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x72b2f279 irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0x72ce75a8 dma_buf_attach +EXPORT_SYMBOL_GPL vmlinux 0x730cb34e sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0x73437f63 pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x735f0d2d usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x7364453f ide_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73bfcc7c usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0x73c2554f __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0x73c832f2 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x73d69364 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x73eed440 wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0x7414e337 user_update +EXPORT_SYMBOL_GPL vmlinux 0x7422c95e gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0x743a165e ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x744becfb cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x745ee9cb tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x7464ea38 dev_pm_qos_add_global_notifier +EXPORT_SYMBOL_GPL vmlinux 0x747b4d97 da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x74954462 timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x74a64d27 flush_altivec_to_thread +EXPORT_SYMBOL_GPL vmlinux 0x74b2866b ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74d603a4 rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0x74d93166 irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x74e5f327 blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0x750c5e94 list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0x75133f6e visitor128 +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x754862a5 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0x754b1b18 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0x756046a2 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x756260d6 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0x757b49d2 kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0x758a782e blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x759ef54c single_release_net +EXPORT_SYMBOL_GPL vmlinux 0x75e6e037 hash_page +EXPORT_SYMBOL_GPL vmlinux 0x75f1e0be ide_host_add +EXPORT_SYMBOL_GPL vmlinux 0x75f2a044 usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0x75f3f28d sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0x75f5dafe skcipher_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0x761bbb21 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0x764877b7 __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0x76590705 spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0x7659437d ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x76b3729f __put_net +EXPORT_SYMBOL_GPL vmlinux 0x76d02d21 wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x76d07d6e gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x76df2e0f crypto_init_shash_spawn +EXPORT_SYMBOL_GPL vmlinux 0x76e99750 driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x76f96ec2 hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x76f9ea5a cpufreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x76ff2373 regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x7729cbdd task_handoff_register +EXPORT_SYMBOL_GPL vmlinux 0x77353ec6 blk_queue_rq_timed_out +EXPORT_SYMBOL_GPL vmlinux 0x773e0171 ide_pci_resume +EXPORT_SYMBOL_GPL vmlinux 0x7783fd52 exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0x779e81ed tpm_remove_hardware +EXPORT_SYMBOL_GPL vmlinux 0x77b79386 tcp_reno_min_cwnd +EXPORT_SYMBOL_GPL vmlinux 0x77db62b7 wm8350_device_exit +EXPORT_SYMBOL_GPL vmlinux 0x78237be1 serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7846012e attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x785004ba tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0x785a0df4 sff_dma_ops +EXPORT_SYMBOL_GPL vmlinux 0x7868773d srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x787c882b lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x789356cd scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0x7893fd22 crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x78a539d9 sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0x78a88a4d fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0x78dc0eac ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x790e22f4 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x791c0f0e debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0x7933bc73 pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x79539c83 spi_master_resume +EXPORT_SYMBOL_GPL vmlinux 0x796c2d48 dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x79748265 xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0x797da614 tps65912_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x7992827d blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7992eac8 __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0x79ab721e skb_segment +EXPORT_SYMBOL_GPL vmlinux 0x79b22a22 devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x79c923bc virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0x7a2f2ad2 rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x7a446311 wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x7a7d6288 pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x7a847e05 rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x7a944007 rcu_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0x7acd7875 sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0x7ae1ae8e cpufreq_frequency_table_put_attr +EXPORT_SYMBOL_GPL vmlinux 0x7b0bcd4e tpm_dev_vendor_release +EXPORT_SYMBOL_GPL vmlinux 0x7b0f1ab3 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x7b0f2127 find_linux_pte_or_hugepte +EXPORT_SYMBOL_GPL vmlinux 0x7b13aac2 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7b15860a scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0x7b1d544d edac_handler_set +EXPORT_SYMBOL_GPL vmlinux 0x7b2590ca sk_unattached_filter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7b36e5a0 cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x7b60e7b2 blk_queue_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x7b638785 pcibios_find_pci_bus +EXPORT_SYMBOL_GPL vmlinux 0x7b68aa95 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x7bc63e34 tcp_death_row +EXPORT_SYMBOL_GPL vmlinux 0x7be99141 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0x7c17b77b fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0x7c346357 pkey_algo +EXPORT_SYMBOL_GPL vmlinux 0x7c37bc89 pseries_ioei_notifier_list +EXPORT_SYMBOL_GPL vmlinux 0x7c42eb63 device_initialize +EXPORT_SYMBOL_GPL vmlinux 0x7c8c021c pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0x7ca2db50 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0x7cabf737 sysfs_remove_device_from_node +EXPORT_SYMBOL_GPL vmlinux 0x7cad7ec3 dma_buf_detach +EXPORT_SYMBOL_GPL vmlinux 0x7cb9cb62 sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0x7cbdab33 tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0x7cbfc870 device_reset +EXPORT_SYMBOL_GPL vmlinux 0x7cc1b7fd max77693_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7cc7de1c x509_check_signature +EXPORT_SYMBOL_GPL vmlinux 0x7cd5bb7a extcon_get_cable_state_ +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7ce460dc nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cfcf7fc platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0x7d033447 max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x7d0f798c ide_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7d214328 tc3589x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x7d36e534 cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x7d397cc7 gpiod_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x7d773a3b bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x7d797fbc wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x7d79b8f8 unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x7d7d4e15 rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x7d8b33d8 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x7d937ced hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0x7dab26b6 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7db02425 md_run +EXPORT_SYMBOL_GPL vmlinux 0x7db8c3ca regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0x7dba1f47 blkcipher_walk_virt_block +EXPORT_SYMBOL_GPL vmlinux 0x7e095017 ide_tf_read +EXPORT_SYMBOL_GPL vmlinux 0x7e17ba7b klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x7e20cc2b pwm_request +EXPORT_SYMBOL_GPL vmlinux 0x7e2136b9 blk_queue_bio +EXPORT_SYMBOL_GPL vmlinux 0x7e2d29ec ide_pci_clk +EXPORT_SYMBOL_GPL vmlinux 0x7e4b6971 ide_map_sg +EXPORT_SYMBOL_GPL vmlinux 0x7e575e6b crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e908fa5 __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x7e96a716 thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0x7ea1a2bc probe_kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x7ec10941 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0x7ec12aaa platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7edc6df9 of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0x7eeaa3cc __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0x7f008202 btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0x7f64ba95 devm_of_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0x7f7bc710 klist_next +EXPORT_SYMBOL_GPL vmlinux 0x7f8481cf ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0x7fa4b4a2 of_pci_parse_bus_range +EXPORT_SYMBOL_GPL vmlinux 0x7fa4e7a9 pci_pri_enabled +EXPORT_SYMBOL_GPL vmlinux 0x7fad9e50 user_read +EXPORT_SYMBOL_GPL vmlinux 0x7fb59100 usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x7fbd23b7 blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x7fc116ba irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0x7fd89a68 tps65912_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x7fd9e1e5 ide_check_atapi_device +EXPORT_SYMBOL_GPL vmlinux 0x7fde3d5e cgroup_unload_subsys +EXPORT_SYMBOL_GPL vmlinux 0x7feba130 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0x7ff4f96d dma_buf_kunmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0x80038859 cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0x800922e1 tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x8026ee9c md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0x802d6569 clockevents_unbind +EXPORT_SYMBOL_GPL vmlinux 0x8077b13e dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x8087eb53 elv_register +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x80ab01bf tps65912_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x80afdf57 crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x80d3927f __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80d8dfc9 fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0x80e32213 bmp085_probe +EXPORT_SYMBOL_GPL vmlinux 0x80f3268f __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x8114b8d6 md_is_badblock +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x8131a59f crypto_ahash_type +EXPORT_SYMBOL_GPL vmlinux 0x81357929 spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0x8140842a gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0x8142c5a3 irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0x8149ea54 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0x814e65ad debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0x81502890 blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0x81919eff crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x81d97bca vtime_common_account_irq_enter +EXPORT_SYMBOL_GPL vmlinux 0x81ea8480 rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0x81ead3fa netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x81f45c82 of_usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0x820d75fe ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x820ebb12 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x82399894 platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0x824be23a tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0x82939ebd rcu_batches_completed_sched +EXPORT_SYMBOL_GPL vmlinux 0x82ad3033 dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x82b78114 aead_geniv_free +EXPORT_SYMBOL_GPL vmlinux 0x82bd113b rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x82c13f91 PageHuge +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x832366a0 __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x834616bb sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x835fbcfd anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0x836d61d0 atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x838b13e7 ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0x8394b42a crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0x83a79941 dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0x83d6d1a0 spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x83dfb003 ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0x83e9cac1 tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0x83edb8ce do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x83f65662 subsys_find_device_by_id +EXPORT_SYMBOL_GPL vmlinux 0x83f91744 get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x8420bccd cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0x844cb75c ide_check_ireason +EXPORT_SYMBOL_GPL vmlinux 0x8453b4d1 transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8487a2b6 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x84d9decf kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0x85050965 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0x852e568d of_get_nand_ecc_mode +EXPORT_SYMBOL_GPL vmlinux 0x85783165 reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x857c0b49 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0x857cdc35 cpufreq_governor_dbs +EXPORT_SYMBOL_GPL vmlinux 0x85a4da36 rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0x85b9e216 set_timer_slack +EXPORT_SYMBOL_GPL vmlinux 0x85c10896 rcu_batches_completed_bh +EXPORT_SYMBOL_GPL vmlinux 0x85c7f674 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x85d4c2e3 css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x85e860bd ide_port_unregister_devices +EXPORT_SYMBOL_GPL vmlinux 0x85efb56c class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x86288458 cm_notify_event +EXPORT_SYMBOL_GPL vmlinux 0x862e4cec platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0x865baf1c usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0x8666f740 inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0x86671ac1 ata_eh_qc_retry +EXPORT_SYMBOL_GPL vmlinux 0x866b9687 wm8997_aod +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x86896b88 pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0x86931173 rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0x86a5b2d7 device_move +EXPORT_SYMBOL_GPL vmlinux 0x86cbec83 add_page_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x86f61230 extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x8702e548 process_srcu +EXPORT_SYMBOL_GPL vmlinux 0x8710d0f7 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0x87231c0f usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0x87356e2b rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x873fbaea edac_atomic_assert_error +EXPORT_SYMBOL_GPL vmlinux 0x8764ea48 bmp085_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x87b31cb2 regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x87b9e192 fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x87bb4e32 of_usb_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x87c4824b __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x87ca1fe9 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0x87cbb51f dma_buf_get +EXPORT_SYMBOL_GPL vmlinux 0x8804af3d usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x8810ad5e crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0x8824727b rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x883c2740 __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x8871d83a md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0x88825e52 cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88b5647c trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x88f4a40f device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0x891541b2 fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x8925bac8 sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0x894622d7 rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0x8968e529 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89c37a37 regmap_update_bits_check_async +EXPORT_SYMBOL_GPL vmlinux 0x89d74888 of_irq_parse_and_map_pci +EXPORT_SYMBOL_GPL vmlinux 0x89f83f31 gpiochip_add +EXPORT_SYMBOL_GPL vmlinux 0x8a2a6144 rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0x8a2b14ba wm5110_aod +EXPORT_SYMBOL_GPL vmlinux 0x8a2ec672 skb_gso_transport_seglen +EXPORT_SYMBOL_GPL vmlinux 0x8a494575 sdhci_pci_o2_probe_slot +EXPORT_SYMBOL_GPL vmlinux 0x8a633193 rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x8a6c0657 agp_remove_bridge +EXPORT_SYMBOL_GPL vmlinux 0x8a8149a7 get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0x8a82ec2a regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x8a89fdd6 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x8a8f19c3 usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x8aaad528 rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8abbefec blkdev_aio_write +EXPORT_SYMBOL_GPL vmlinux 0x8ac9cbbd skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0x8adc07a6 __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x8ae152b5 of_get_nand_bus_width +EXPORT_SYMBOL_GPL vmlinux 0x8b00ccf3 rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0x8b2c0580 rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0x8b2df374 ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0x8b3926e5 of_pci_msi_chip_add +EXPORT_SYMBOL_GPL vmlinux 0x8b3a2ca6 pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0x8b4490ca tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x8b70e8ea __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0x8b997fd2 cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8bd86364 unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x8be2cc1a rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c0960f3 smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x8c52f3f7 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x8c703b08 spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x8cea765f memalloc_socks +EXPORT_SYMBOL_GPL vmlinux 0x8d1fb980 regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0x8d36c088 look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0x8d3f3582 regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x8d906fc8 ide_device_put +EXPORT_SYMBOL_GPL vmlinux 0x8dd33664 blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x8de19aa3 irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x8de82ba7 fuse_get_req +EXPORT_SYMBOL_GPL vmlinux 0x8e0bc160 pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0x8e1aa89e regulator_register +EXPORT_SYMBOL_GPL vmlinux 0x8e9c7933 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x8ea5736e ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x8eb0f2ed gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x8eddc0f8 ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0x8f52a96e dm_underlying_device_busy +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f7af87a hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0x8f81a999 stmpe_enable +EXPORT_SYMBOL_GPL vmlinux 0x8f8e53b9 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8f902a2c gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x8f9d76b3 ide_dma_sff_read_status +EXPORT_SYMBOL_GPL vmlinux 0x8fd134a5 inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x9011f0dd ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x9033780e inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0x903d2292 regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0x90427341 ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0x904a25f6 crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0x9062c322 ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x90705b7f syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x9077d5ea usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x90a1004a crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x90b54ab9 led_trigger_store +EXPORT_SYMBOL_GPL vmlinux 0x91286982 gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x91347af3 ide_queue_sense_rq +EXPORT_SYMBOL_GPL vmlinux 0x916a35e2 blkcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0x91782070 irq_find_host +EXPORT_SYMBOL_GPL vmlinux 0x918ad429 ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x91ca7daa inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x91f25b10 ide_do_start_stop +EXPORT_SYMBOL_GPL vmlinux 0x91fe65cf usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0x920cc389 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x920d343a tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0x920fc299 tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x922e038e __class_create +EXPORT_SYMBOL_GPL vmlinux 0x92334fde crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0x925526ed device_create_file +EXPORT_SYMBOL_GPL vmlinux 0x925fda4a stmpe_set_altfunc +EXPORT_SYMBOL_GPL vmlinux 0x9274de2a cgroup_taskset_cur_css +EXPORT_SYMBOL_GPL vmlinux 0x92a179b6 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x92a816cf rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92e52efc pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0x92ec4174 dev_get_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x92f586a2 of_get_named_gen_pool +EXPORT_SYMBOL_GPL vmlinux 0x930ed9b9 of_usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0x93170203 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x9328dd82 edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x932b0232 scsi_internal_device_unblock +EXPORT_SYMBOL_GPL vmlinux 0x932d18be inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x933bf799 pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0x938bb591 dm_requeue_unmapped_request +EXPORT_SYMBOL_GPL vmlinux 0x939d9581 ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0x93a1d2be usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0x93e3860a fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0x93e7007c ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0x93fc3735 blk_queue_flush +EXPORT_SYMBOL_GPL vmlinux 0x940685ca kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0x940c0409 lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0x940c8a75 usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x9416d375 uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0x941b2b24 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x9425710b alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0x944954e5 fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x949547c4 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0x949f7342 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x94a68723 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x94b05d7e pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x94b1a111 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0x94d972b7 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x95159b06 ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0x952664c5 do_exit +EXPORT_SYMBOL_GPL vmlinux 0x952956a4 usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x953a06b6 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x955b85e5 alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0x95a34048 virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95c0d6fd tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0x961b2d51 tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0x9621849f ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x96358dc8 usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x96552662 max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x969bb123 ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0x96a22790 vmcore_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x96a50c1f perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0x96d8bf68 relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0x96de9d50 led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0x9730c462 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x9735f061 register_jprobes +EXPORT_SYMBOL_GPL vmlinux 0x97452927 simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0x978c14fb ide_read_bcount_and_ireason +EXPORT_SYMBOL_GPL vmlinux 0x97a7a1d0 crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x97c26971 sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x97ceed2d dma_buf_export_named +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x98517510 tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x9871ac42 page_cache_sync_readahead +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x989e2f4b led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0x98a02a70 register_jprobe +EXPORT_SYMBOL_GPL vmlinux 0x98b81bbf usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x98ca1bb6 rq_flush_dcache_pages +EXPORT_SYMBOL_GPL vmlinux 0x98f2a99a unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x98fa1e20 dm_get_reserved_rq_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x9912b57b uninhibit_secondary_onlining +EXPORT_SYMBOL_GPL vmlinux 0x991484c4 of_property_count_strings +EXPORT_SYMBOL_GPL vmlinux 0x9918de53 __netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x9924c496 __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0x9931973f flush_fp_to_thread +EXPORT_SYMBOL_GPL vmlinux 0x9945f1c2 device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x995c52bd tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x9973add9 __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x9980ff12 ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0x99842f2b sdhci_pci_o2_probe +EXPORT_SYMBOL_GPL vmlinux 0x99847f6c device_schedule_callback_owner +EXPORT_SYMBOL_GPL vmlinux 0x99bc2407 pwm_enable +EXPORT_SYMBOL_GPL vmlinux 0x99be2ee0 rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0x99da27b3 rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x99fc1028 irq_create_strict_mappings +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a22b45e ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0x9a46afa3 of_regulator_match +EXPORT_SYMBOL_GPL vmlinux 0x9a49d937 __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x9a55731d max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0x9a6716ae ide_host_remove +EXPORT_SYMBOL_GPL vmlinux 0x9a6ab261 da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x9a89dbf7 lpddr2_jedec_min_tck +EXPORT_SYMBOL_GPL vmlinux 0x9aad6540 klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x9aaf093a napi_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x9abe2b1a ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0x9ac11b74 suspend_set_ops +EXPORT_SYMBOL_GPL vmlinux 0x9aca444b get_monotonic_boottime +EXPORT_SYMBOL_GPL vmlinux 0x9acc5876 crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9b22ecf4 rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0x9b5caba0 perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x9b5f4338 hrtimer_start +EXPORT_SYMBOL_GPL vmlinux 0x9b635ef9 unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x9b69c6c5 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0x9ba2bb2b gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x9ba76d81 tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x9ba76e6d pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x9bd2f3d8 ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9bf05273 kallsyms_on_each_symbol +EXPORT_SYMBOL_GPL vmlinux 0x9c09e367 sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0x9c173727 lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0x9c4921b7 pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0x9c918488 rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9ccb214f fat_scan +EXPORT_SYMBOL_GPL vmlinux 0x9d0cf5d3 ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0x9d138533 percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x9d416c18 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x9dc541d4 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x9dd7b2ec usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0x9e0bee5a shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x9e1bcb7c fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0x9e278268 extcon_update_state +EXPORT_SYMBOL_GPL vmlinux 0x9e32642f __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0x9e48db90 debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0x9e71b3dd sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0x9e79d489 inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x9e82965c led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0x9ec7e7b5 __inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9ef2d292 inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0x9f05117b ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0x9f0664bf dm_get_queue_limits +EXPORT_SYMBOL_GPL vmlinux 0x9f2f516b wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x9f3f98e1 of_get_nand_on_flash_bbt +EXPORT_SYMBOL_GPL vmlinux 0x9f463ed4 ata_base_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x9f77bdb4 __module_text_address +EXPORT_SYMBOL_GPL vmlinux 0x9f8bf4f7 input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0x9fc13838 sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0x9fcb03ec __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0x9fedb268 __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0xa040eb4b bdi_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0xa084003e gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0xa0a27fff pci_address_to_pio +EXPORT_SYMBOL_GPL vmlinux 0xa0b06a4e fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL vmlinux 0xa0ff08a9 disk_part_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xa1010c32 regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0xa12d929d desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0xa134d3d0 do_rw_taskfile +EXPORT_SYMBOL_GPL vmlinux 0xa152660b gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0xa17412ae ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0xa1bdacd2 sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0xa1d8b3da tc3589x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xa1dfeb4c sysfs_schedule_callback +EXPORT_SYMBOL_GPL vmlinux 0xa2068a48 skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0xa218c6ca zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0xa221f233 usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0xa23d9f1b sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa287b981 blkg_prfill_stat +EXPORT_SYMBOL_GPL vmlinux 0xa29e5e54 dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0xa2b37e20 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0xa2ded507 fat_detach +EXPORT_SYMBOL_GPL vmlinux 0xa2e92910 regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xa2f376e3 realmode_pfn_to_page +EXPORT_SYMBOL_GPL vmlinux 0xa3058865 remove_irq +EXPORT_SYMBOL_GPL vmlinux 0xa31df3fe i2c_new_device +EXPORT_SYMBOL_GPL vmlinux 0xa3330f03 shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0xa34a4889 arizona_of_get_type +EXPORT_SYMBOL_GPL vmlinux 0xa36126a5 unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0xa37c9b27 perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389a49a profile_event_register +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a0a773 usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xa3a2d9af walk_system_ram_range +EXPORT_SYMBOL_GPL vmlinux 0xa3ac18f4 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0xa3afda4a lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3c773fb wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0xa3d45d9c register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xa3da074f crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xa3e7c113 ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0xa3fd39a4 od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0xa406e9bd register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0xa417d23f fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0xa42d7305 pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xa465fa51 pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0xa4709ef9 system_trusted_keyring +EXPORT_SYMBOL_GPL vmlinux 0xa473a07c ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0xa476579f ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0xa4814e14 kick_process +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa4b025d4 key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0xa4ea04ee of_property_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0xa4f743a6 rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xa52ab76c rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0xa534b38d regmap_update_bits_async +EXPORT_SYMBOL_GPL vmlinux 0xa536e9ee sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xa56ca855 tracepoint_iter_stop +EXPORT_SYMBOL_GPL vmlinux 0xa56e7ce7 blk_rq_err_bytes +EXPORT_SYMBOL_GPL vmlinux 0xa575683c blk_queue_bypass_start +EXPORT_SYMBOL_GPL vmlinux 0xa58a720b reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xa58cb31f default_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0xa5a3f78c vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0xa5a5a051 crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0xa5b00659 ppc_proc_freq +EXPORT_SYMBOL_GPL vmlinux 0xa5c987b7 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa5efe460 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0xa5f389eb of_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xa5f93cf5 blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0xa6008026 usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0xa6026153 devm_spi_register_master +EXPORT_SYMBOL_GPL vmlinux 0xa61797c8 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0xa61a5062 ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0xa625110d kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0xa63037a2 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0xa635f547 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0xa63a18d8 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa6a0a273 max77693_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xa6a85ffb register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6b36fac unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0xa6ba6bce crypto_givcipher_type +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa71532a2 nfq_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xa718309e skb_morph +EXPORT_SYMBOL_GPL vmlinux 0xa724257f init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0xa7269538 skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0xa74047e5 device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0xa746072a pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0xa75312bc call_rcu_sched +EXPORT_SYMBOL_GPL vmlinux 0xa75811d0 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xa783c54c ide_no_data_taskfile +EXPORT_SYMBOL_GPL vmlinux 0xa78da235 virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0xa7a4d967 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa7b251ac sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0xa7b38186 ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0xa7bfa730 sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0xa7cbdfb3 ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xa7e96808 extcon_register_interest +EXPORT_SYMBOL_GPL vmlinux 0xa7f92105 add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0xa803415a tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0xa8094871 sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0xa815e055 mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa8965f81 regmap_fields_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xa8c7f6af crypto_alloc_instance +EXPORT_SYMBOL_GPL vmlinux 0xa8e33b15 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0xa8f9a86d ide_prep_sense +EXPORT_SYMBOL_GPL vmlinux 0xa9026fac regmap_update_bits_check +EXPORT_SYMBOL_GPL vmlinux 0xa922d424 debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0xa92d44f7 devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xa93271a5 gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0xa94325d9 device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0xa9432e76 usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0xa94c7f48 driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa957298a rt_mutex_timed_lock +EXPORT_SYMBOL_GPL vmlinux 0xa967467e ide_init_disk +EXPORT_SYMBOL_GPL vmlinux 0xa980af16 RSA_public_key_algorithm +EXPORT_SYMBOL_GPL vmlinux 0xa9a05c02 wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xa9c5dd3b sysfs_notify_dirent +EXPORT_SYMBOL_GPL vmlinux 0xa9ce341e usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0xa9e18049 task_handoff_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa9f79eae virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0xa9fb74a2 of_device_is_stdout_path +EXPORT_SYMBOL_GPL vmlinux 0xaa3583c9 wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xaa56a8f7 agp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0xaa742a4d anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0xaa9e01dd ata_sas_port_async_resume +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaac414f3 xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0xaaf17fdf inet_hash +EXPORT_SYMBOL_GPL vmlinux 0xab0baf82 devres_find +EXPORT_SYMBOL_GPL vmlinux 0xab343bb4 find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0xab3c788b ide_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xab4b9006 crypto_ablkcipher_type +EXPORT_SYMBOL_GPL vmlinux 0xab578a21 ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0xab6babaf pm_qos_request +EXPORT_SYMBOL_GPL vmlinux 0xab9cdecf platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0xabb92ce1 register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0xabec9cb7 fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0xabfacca3 bio_clone_mddev +EXPORT_SYMBOL_GPL vmlinux 0xabfff667 disk_part_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xac30855c PageHeadHuge +EXPORT_SYMBOL_GPL vmlinux 0xac47707b pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0xac5aabdb register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xace3ab8f md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0xace5c0fc usb_bus_list +EXPORT_SYMBOL_GPL vmlinux 0xaceb0e7e irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xacfe997e powerpc_firmware_features +EXPORT_SYMBOL_GPL vmlinux 0xad72e584 srp_attach_transport +EXPORT_SYMBOL_GPL vmlinux 0xad83c7aa devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xad8d2717 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xad9cb658 regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0xadc3d92c tcp_is_cwnd_limited +EXPORT_SYMBOL_GPL vmlinux 0xadc785ec kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0xaddb3861 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xade1ff86 hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xadf34c2b cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0xadf6aa4d tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xadf8db5b subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xae04bf48 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xae2034c0 mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0xae33e562 wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0xae419edc __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xae5863cf xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae7500bb __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0xae79890d dma_buf_fd +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae823b8c thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0xae8c05b3 pci_reset_pri +EXPORT_SYMBOL_GPL vmlinux 0xae9a47a6 inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0xaf1cf36d inet_hashinfo_init +EXPORT_SYMBOL_GPL vmlinux 0xaf2dac95 aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0xaf3b1581 call_filter_check_discard +EXPORT_SYMBOL_GPL vmlinux 0xaf406313 raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0xaf45cbbf pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0xaf57d927 task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xaf75e84e kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xaf7cecc8 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0xaf97d311 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0xaf9ed05f usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0xafb94911 regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0xb0107e11 cpufreq_notify_transition +EXPORT_SYMBOL_GPL vmlinux 0xb01af4e6 user_describe +EXPORT_SYMBOL_GPL vmlinux 0xb0a3c06d usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0xb0ad9533 tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0d1656c gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0xb0da027a sdhci_pci_o2_resume +EXPORT_SYMBOL_GPL vmlinux 0xb104c486 rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xb10d02f3 crypto_larval_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb10d55bc cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0xb1113cec inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0xb125963c find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xb12a7e33 ide_error +EXPORT_SYMBOL_GPL vmlinux 0xb140d14c ring_buffer_read +EXPORT_SYMBOL_GPL vmlinux 0xb1425b32 dm_table_add_target_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb17226ef replace_page_cache_page +EXPORT_SYMBOL_GPL vmlinux 0xb176737a regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0xb181273d ide_read_status +EXPORT_SYMBOL_GPL vmlinux 0xb18429eb suspend_device_irqs +EXPORT_SYMBOL_GPL vmlinux 0xb192a306 ide_pci_check_simplex +EXPORT_SYMBOL_GPL vmlinux 0xb1a2f38e __blkdev_driver_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xb1acbcce rcu_barrier_sched +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1c0c1c2 async_schedule_domain +EXPORT_SYMBOL_GPL vmlinux 0xb1d22d6f ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1f69145 noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0xb2185a45 inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0xb21f4207 key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb2667a00 devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xb277d846 ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0xb2e764e8 suspend_valid_only_mem +EXPORT_SYMBOL_GPL vmlinux 0xb3178566 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xb31e76f0 powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0xb33ab11d cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0xb33ee422 __blk_end_request_err +EXPORT_SYMBOL_GPL vmlinux 0xb347bb2c work_busy +EXPORT_SYMBOL_GPL vmlinux 0xb34eba31 crypto_tfm_in_queue +EXPORT_SYMBOL_GPL vmlinux 0xb3682455 platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0xb3a78bd0 vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0xb3c8ae4f kobj_completion_init +EXPORT_SYMBOL_GPL vmlinux 0xb3f4d1ee pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0xb434dec4 sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0xb43add0d of_irq_parse_pci +EXPORT_SYMBOL_GPL vmlinux 0xb443e57a __lock_page_killable +EXPORT_SYMBOL_GPL vmlinux 0xb46a9284 do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xb4aa278f con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0xb4abce6c tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4d88710 ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb53620d1 pci_vpd_find_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0xb54f7bfd mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0xb58dcfa2 synchronize_sched_expedited +EXPORT_SYMBOL_GPL vmlinux 0xb58ded0f hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0xb5a0e11e lpddr2_jedec_addressing_table +EXPORT_SYMBOL_GPL vmlinux 0xb5a200e0 ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xb5aa10af atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb5c53941 pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0xb5c8edf4 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0xb5cb8145 hrtimer_get_res +EXPORT_SYMBOL_GPL vmlinux 0xb5efff33 css_next_child +EXPORT_SYMBOL_GPL vmlinux 0xb5f17edf perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xb5f2fc99 scom_find_parent +EXPORT_SYMBOL_GPL vmlinux 0xb5f4f837 crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xb5fedb0c pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0xb607422c fat_attach +EXPORT_SYMBOL_GPL vmlinux 0xb60b5707 of_i8042_aux_irq +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb62fc556 trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0xb643c250 xics_wake_cpu +EXPORT_SYMBOL_GPL vmlinux 0xb65bd3fc add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0xb66482ad rtc_irq_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb67b2219 cm_suspend_again +EXPORT_SYMBOL_GPL vmlinux 0xb688a396 srp_remove_host +EXPORT_SYMBOL_GPL vmlinux 0xb691a715 wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0xb6aeb661 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xb6b7b6f1 ide_input_data +EXPORT_SYMBOL_GPL vmlinux 0xb6c635af wm5110_i2c_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb6dade19 pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0xb6e0263b wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0xb702d752 bsg_request_fn +EXPORT_SYMBOL_GPL vmlinux 0xb7578b19 cgroup_path +EXPORT_SYMBOL_GPL vmlinux 0xb76116ee sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0xb77bc2c4 regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0xb785d736 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0xb79e29fb thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0xb7a2bf2a ide_pci_set_master +EXPORT_SYMBOL_GPL vmlinux 0xb7ada606 pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0xb7d1041c sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xb7e46198 dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0xb7e582da ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xb7f4c904 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xb7f77027 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0xb81882d6 lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0xb821d76f rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0xb82b5204 inet6_destroy_sock +EXPORT_SYMBOL_GPL vmlinux 0xb82b6835 ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xb8ae5b58 cpufreq_table_validate_and_show +EXPORT_SYMBOL_GPL vmlinux 0xb8b96098 security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0xb8cdfda0 dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xb8e30e0f irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xb903674c scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0xb92338f4 ide_end_rq +EXPORT_SYMBOL_GPL vmlinux 0xb97241ef file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0xb975bbe6 vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0xb99777c0 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0xb9b093ec ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0xb9b6ff6f sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0xb9b75426 serial8250_rx_dma +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9c7fda1 dma_request_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9d626a0 usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xb9da3e81 ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0xba019472 devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xba08cb40 nl_table +EXPORT_SYMBOL_GPL vmlinux 0xba0a216d transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0xba158769 rtas_cancel_event_scan +EXPORT_SYMBOL_GPL vmlinux 0xba1ab486 key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xba1ca7a4 ide_pci_init_two +EXPORT_SYMBOL_GPL vmlinux 0xba58eda3 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xba59cd31 pcibios_map_io_space +EXPORT_SYMBOL_GPL vmlinux 0xba7c422d dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0xba851e32 tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0xba8fa823 regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0xbaa4e844 ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xbada3e23 get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0xbb038ce4 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb33ba0d gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xbb4312be dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xbb64d250 debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xbb8b4d52 __pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xbb9a2105 usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0xbbddfaa3 da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0xbc370f24 sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0xbc42aead crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0xbc600898 rtc_irq_set_freq +EXPORT_SYMBOL_GPL vmlinux 0xbc642df1 crypto_init_spawn +EXPORT_SYMBOL_GPL vmlinux 0xbcac6160 pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbcb213b5 ata_sg_init +EXPORT_SYMBOL_GPL vmlinux 0xbcb3da7b bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0xbccfd4d8 register_oldmem_pfn_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xbd2b772f fuse_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbd2df750 pci_hp_change_slot_info +EXPORT_SYMBOL_GPL vmlinux 0xbd45a080 eeh_add_sysfs_files +EXPORT_SYMBOL_GPL vmlinux 0xbd47cae6 task_current_syscall +EXPORT_SYMBOL_GPL vmlinux 0xbd5cb8b9 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0xbdaf5686 get_compat_timeval +EXPORT_SYMBOL_GPL vmlinux 0xbdc4532e cred_to_ucred +EXPORT_SYMBOL_GPL vmlinux 0xbdd279a6 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xbdd295f0 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xbdd2f42a rcu_bh_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0xbddd1565 __clocksource_updatefreq_scale +EXPORT_SYMBOL_GPL vmlinux 0xbdf0c9ca spi_async +EXPORT_SYMBOL_GPL vmlinux 0xbdfa7f19 remove_phb_dynamic +EXPORT_SYMBOL_GPL vmlinux 0xbe0394d6 ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0xbe1887e4 ata_unpack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xbe21abbc raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0xbe2ee107 apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0xbe314b5c dm_set_device_limits +EXPORT_SYMBOL_GPL vmlinux 0xbe578348 wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0xbe8d58d1 usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0xbe90a70a aead_geniv_init +EXPORT_SYMBOL_GPL vmlinux 0xbe96dfd8 of_reconfig_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbebaa0a6 of_pci_address_to_resource +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf1cc04b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0xbf7e7284 usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xbfa0ac22 driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL vmlinux 0xbfe24dd0 serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0xbffffc29 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc014336a sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0xc02142e5 pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0xc02315ef ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xc02abc78 stmpe_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xc02bec3c usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xc0577ec1 device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0xc065a455 cpu_core_index_of_thread +EXPORT_SYMBOL_GPL vmlinux 0xc08647ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc091c7e1 module_mutex +EXPORT_SYMBOL_GPL vmlinux 0xc0a73cfa dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0xc0bf6ead timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xc0d01bc0 percpu_ref_cancel_init +EXPORT_SYMBOL_GPL vmlinux 0xc0d26387 kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc0dab088 regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0xc11b45c6 gpiod_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xc11bd00f tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc1551c15 dma_buf_kunmap +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc194eda1 unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xc19f243c stmpe_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xc1ba6c0a regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xc1c7a775 pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xc1d85e51 __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0xc21e3d81 ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc22ad358 usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xc242ab1c ide_dma_unmap_sg +EXPORT_SYMBOL_GPL vmlinux 0xc280fb46 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0xc295578b udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc2adf65a pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0xc2c25342 usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0xc2cd5036 __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0xc30a0a59 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0xc3115ee8 css_next_descendant_post +EXPORT_SYMBOL_GPL vmlinux 0xc321dfed ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0xc3318dcf ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0xc34efe27 snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0xc365af55 serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0xc3707567 pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0xc37226a5 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xc37f95a6 __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0xc3b0db77 ide_init_sg_cmd +EXPORT_SYMBOL_GPL vmlinux 0xc3f1ab82 pcibios_unmap_io_space +EXPORT_SYMBOL_GPL vmlinux 0xc4086556 dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xc408e042 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0xc40aaad3 __class_register +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc47e6f8e jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0xc48b7ccf ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0xc4a16a61 unregister_jprobe +EXPORT_SYMBOL_GPL vmlinux 0xc4a85c54 regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0xc4abf8be sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0xc4acd3d1 ide_dma_sff_timer_expiry +EXPORT_SYMBOL_GPL vmlinux 0xc4b8892c tpm_show_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc4e56227 exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0xc5650ac3 class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0xc567f390 get_kernel_pages +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc591cd09 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc596c9af regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xc5dfbbe9 usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0xc5f265c9 fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0xc5f4093c irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0xc5fbf939 uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc60f75ec __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc63a1109 gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc63a69d1 sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0xc64b07da debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0xc65a59da ide_pio_bytes +EXPORT_SYMBOL_GPL vmlinux 0xc65d3eed ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc661d10b subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0xc66f3c19 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0xc68aa252 __atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xc690866c irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0xc69c63ff get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0xc6b6941a pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0xc6db40e8 device_init_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xc6e25e99 tracepoint_iter_start +EXPORT_SYMBOL_GPL vmlinux 0xc70a9ebe devres_add +EXPORT_SYMBOL_GPL vmlinux 0xc713dd69 dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0xc71b1017 perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0xc72e1233 __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xc752fec3 regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0xc75465c3 securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7a6d08e wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xc7c3487a register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xc7c6391c mpi_set_buffer +EXPORT_SYMBOL_GPL vmlinux 0xc7d03a07 __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0xc7e39bca ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc7f84dab crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0xc8330bce ahash_free_instance +EXPORT_SYMBOL_GPL vmlinux 0xc87c1f84 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xc8981fa7 trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xc8add232 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0xc8fa5e99 kill_pid_info_as_cred +EXPORT_SYMBOL_GPL vmlinux 0xc8ff62c2 bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0xc9113d0d pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0xc91277a1 kgdb_schedule_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xc919fa3d device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0xc94a0671 devm_usb_get_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xc94e4874 split_page +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc9641b48 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0xc9685d08 ide_set_media_lock +EXPORT_SYMBOL_GPL vmlinux 0xc97d1140 cpufreq_cooling_get_level +EXPORT_SYMBOL_GPL vmlinux 0xc9adba23 ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xc9cfa97f of_pci_range_parser_init +EXPORT_SYMBOL_GPL vmlinux 0xc9e78b69 ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0xc9e8bf5a pci_ats_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xc9f2ef37 device_rename +EXPORT_SYMBOL_GPL vmlinux 0xca32a2aa ide_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xca37d489 posix_timer_event +EXPORT_SYMBOL_GPL vmlinux 0xca70fce7 sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca85d8cf tracepoint_probe_update_all +EXPORT_SYMBOL_GPL vmlinux 0xcaa19dec ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0xcaa2c924 dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcad069cd usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0xcb00f3e2 crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0xcb15eee9 sdhci_pci_get_data +EXPORT_SYMBOL_GPL vmlinux 0xcb2823ad rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0xcb38c299 dm_dispatch_request +EXPORT_SYMBOL_GPL vmlinux 0xcb469d2b ddebug_add_module +EXPORT_SYMBOL_GPL vmlinux 0xcb5e1a68 regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0xcb6a4114 extcon_find_cable_index +EXPORT_SYMBOL_GPL vmlinux 0xcb6e8ad2 gpio_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xcb6f335f devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0xcb711c86 wait_for_tpm_stat +EXPORT_SYMBOL_GPL vmlinux 0xcbde701f rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0xcbe540fe ide_dev_select +EXPORT_SYMBOL_GPL vmlinux 0xcbeaf3f9 ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xcbee20b2 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0xcbf853ec securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xcc1f1c3d inet_twdr_hangman +EXPORT_SYMBOL_GPL vmlinux 0xcc3c8900 dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0xcc478eee tty_prepare_flip_string_flags +EXPORT_SYMBOL_GPL vmlinux 0xcc498f70 usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xcc80dbe3 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0xcc85fcb6 async_schedule +EXPORT_SYMBOL_GPL vmlinux 0xcc8c4990 __blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xcccc5938 rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xcd1fc300 sec_reg_update +EXPORT_SYMBOL_GPL vmlinux 0xcd29beae debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xcd29e45b xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0xcd2bd3bb subsys_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xcd39aecb usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0xcd45710b tpm_open +EXPORT_SYMBOL_GPL vmlinux 0xcd5174d8 d_materialise_unique +EXPORT_SYMBOL_GPL vmlinux 0xcd8cb2ea ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcda0dabf blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xce0b9b59 max77693_read_reg +EXPORT_SYMBOL_GPL vmlinux 0xce0d9bab srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0xce13a486 ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0xce1e498f transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0xce46e140 ktime_get_ts +EXPORT_SYMBOL_GPL vmlinux 0xce495bed pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0xce560c7b pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0xce6a9d9a trace_current_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce6de071 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0xce8eab88 set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0xce9465bc sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0xcea3bc0f __giveup_vsx +EXPORT_SYMBOL_GPL vmlinux 0xcea9878c generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0xceb0c652 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xceb1f126 mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0xcebd5403 pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0xcebfe6f2 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcf54ea93 async_unregister_domain +EXPORT_SYMBOL_GPL vmlinux 0xcf8eb420 spi_unregister_master +EXPORT_SYMBOL_GPL vmlinux 0xcfc68341 synchronize_rcu_bh +EXPORT_SYMBOL_GPL vmlinux 0xcfd46728 regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xcfec8712 nf_register_afinfo +EXPORT_SYMBOL_GPL vmlinux 0xcfeeb5a4 usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0xcff744a0 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL vmlinux 0xd001767b usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0xd0060e33 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0xd01023f7 get_device +EXPORT_SYMBOL_GPL vmlinux 0xd035a0ff usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0xd03c7700 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd07d0e47 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0e835b0 device_create_vargs +EXPORT_SYMBOL_GPL vmlinux 0xd0ed077e sysfs_put +EXPORT_SYMBOL_GPL vmlinux 0xd121b95c eeh_dev_check_failure +EXPORT_SYMBOL_GPL vmlinux 0xd14bc4d9 sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xd16712f3 crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xd1688b72 wakeup_source_drop +EXPORT_SYMBOL_GPL vmlinux 0xd1b2db37 tracepoint_probe_register_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xd1b3a355 pstore_register +EXPORT_SYMBOL_GPL vmlinux 0xd1c7e3de rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xd1ca48ca bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0xd20bf6ba dcookie_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd2120328 fuse_request_send +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd231ea20 __ablkcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0xd2479565 extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xd2554a42 arizona_set_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd29d8de1 usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0xd2a666b4 register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0xd2a8a9c0 nf_queue_entry_release_refs +EXPORT_SYMBOL_GPL vmlinux 0xd2bcb402 device_show_int +EXPORT_SYMBOL_GPL vmlinux 0xd2c45ea4 of_pci_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0xd30a803b cpu_remove_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0xd32fe193 ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xd3382ea2 ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0xd3408246 usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0xd3424b31 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0xd35f9df1 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xd36af8ed tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0xd3a8acf5 ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0xd3af1c9f watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0xd3b6ddda platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0xd3be1d46 usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0xd3c00253 skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0xd3c4cc8d usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0xd3f0333e ide_register_region +EXPORT_SYMBOL_GPL vmlinux 0xd3f1b8d4 usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0xd3fcd14f stmpe_disable +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd423f8fb ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0xd42d26b5 devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd44b2315 sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xd46a57d0 irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0xd46a8a1c wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4e814de rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0xd4f31470 alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0xd5379731 wakeup_source_prepare +EXPORT_SYMBOL_GPL vmlinux 0xd582227a leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xd5a5d63e rtc_irq_set_state +EXPORT_SYMBOL_GPL vmlinux 0xd5b127e2 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0xd5b9aa52 mnt_clone_write +EXPORT_SYMBOL_GPL vmlinux 0xd5bd7dac ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0xd5e042b6 trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0xd5e4b6cb pwm_set_polarity +EXPORT_SYMBOL_GPL vmlinux 0xd5ec7a0e single_open_net +EXPORT_SYMBOL_GPL vmlinux 0xd5eccdf0 max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0xd60d5745 wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0xd614efc2 cpufreq_frequency_table_cpuinfo +EXPORT_SYMBOL_GPL vmlinux 0xd654bc00 arizona_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0xd65dddff regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd6a0e17d wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xd6b174b1 usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0xd6ccc4f3 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xd6e4b5a2 pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0xd6feefa5 agp_num_entries +EXPORT_SYMBOL_GPL vmlinux 0xd705b4c7 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0xd73774d3 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0xd73c9986 scsi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xd7634611 get_slice_psize +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd77c0bc8 klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xd77edcc1 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xd7b9077f skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0xd7d79132 put_online_cpus +EXPORT_SYMBOL_GPL vmlinux 0xd7daaa5d skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0xd7e9641c rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0xd80b015d tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0xd80b6f3f pci_renumber_slot +EXPORT_SYMBOL_GPL vmlinux 0xd81de62c ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xd820c283 eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0xd8263870 mmu_slb_size +EXPORT_SYMBOL_GPL vmlinux 0xd828a786 unregister_jprobes +EXPORT_SYMBOL_GPL vmlinux 0xd82a6307 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0xd82b3cdc sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xd8475ebc powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0xd8525ea7 fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0xd8553b3c raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0xd87299e7 pm_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0xd87601cc ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd89288af rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0xd8b5d7e4 crypto_alloc_pcomp +EXPORT_SYMBOL_GPL vmlinux 0xd8c3216d class_find_device +EXPORT_SYMBOL_GPL vmlinux 0xd8d37a5f ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0xd8da03a8 bus_get_device_klist +EXPORT_SYMBOL_GPL vmlinux 0xd918a4fa cpu_add_dev_attr +EXPORT_SYMBOL_GPL vmlinux 0xd942d353 ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0xd97334a4 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0xd9b1f48d of_pci_find_msi_chip_by_node +EXPORT_SYMBOL_GPL vmlinux 0xd9b65c1c tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0xd9ddb8a3 iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0xd9ecb670 ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xda408772 irq_domain_add_simple +EXPORT_SYMBOL_GPL vmlinux 0xda44cb37 setup_charger_manager +EXPORT_SYMBOL_GPL vmlinux 0xda644e5a alloc_vm_area +EXPORT_SYMBOL_GPL vmlinux 0xda7d8da8 pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0xda850d36 pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0xda8f8e0f usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0xda9684e9 tpm_show_durations +EXPORT_SYMBOL_GPL vmlinux 0xda98228b dev_hard_start_xmit +EXPORT_SYMBOL_GPL vmlinux 0xdaa83a13 locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0xdaf207c1 crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0xdaf4dfb3 fb_mode_option +EXPORT_SYMBOL_GPL vmlinux 0xdb04cacc tracepoint_probe_unregister_noupdate +EXPORT_SYMBOL_GPL vmlinux 0xdb2940f1 usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0xdb435e3b __scsi_get_command +EXPORT_SYMBOL_GPL vmlinux 0xdb6725a7 wm5110_patch +EXPORT_SYMBOL_GPL vmlinux 0xdb6f5099 i2c_new_dummy +EXPORT_SYMBOL_GPL vmlinux 0xdb7333dd edac_subsys +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdba80fc1 of_fdt_unflatten_tree +EXPORT_SYMBOL_GPL vmlinux 0xdbd35a5e tpm_dev_release +EXPORT_SYMBOL_GPL vmlinux 0xdbd44e19 regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xdbde6e04 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc01b919 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdc1e15f1 irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xdc22bb8d eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0xdc26c379 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0xdc36a7c3 ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0xdc716a67 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9f4895 extcon_get_cable_state +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdcd14762 xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0xdd2efc0f ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0xdd391eff profile_event_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd729424 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0xdd89dbbc __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0xdd9d2e68 napi_by_id +EXPORT_SYMBOL_GPL vmlinux 0xddb1dae0 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0xddd58dc0 ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0xdde1159b pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0xde36954d cpu_remove_dev_attr_group +EXPORT_SYMBOL_GPL vmlinux 0xde37f039 ide_capacity_proc_fops +EXPORT_SYMBOL_GPL vmlinux 0xde531adb tcp_peer_is_proven +EXPORT_SYMBOL_GPL vmlinux 0xde6db544 hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0xde760e13 regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0xde87401e fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0xde951927 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0xdeb100b4 fuse_put_request +EXPORT_SYMBOL_GPL vmlinux 0xdeb1f24a sec_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xdeed942f sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf1b9487 subsys_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xdf7c82e0 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0xdfa93cef scom_controller +EXPORT_SYMBOL_GPL vmlinux 0xdfab9f2d ping_proc_register +EXPORT_SYMBOL_GPL vmlinux 0xdffa6dbc ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0xe00677d6 ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0xe007de41 kallsyms_lookup_name +EXPORT_SYMBOL_GPL vmlinux 0xe00a7760 ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0xe0228161 regmap_init +EXPORT_SYMBOL_GPL vmlinux 0xe02eb6d0 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0xe02eebb2 virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0xe0897375 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0xe089cfcc agp_memory_reserved +EXPORT_SYMBOL_GPL vmlinux 0xe0cbe794 rtc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe0ce621c __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0xe0d6d37b flush_kthread_work +EXPORT_SYMBOL_GPL vmlinux 0xe138201c dma_buf_kmap_atomic +EXPORT_SYMBOL_GPL vmlinux 0xe1775ee7 dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0xe1a3953e find_vpid +EXPORT_SYMBOL_GPL vmlinux 0xe1b1ccbe netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1f83cf4 device_attach +EXPORT_SYMBOL_GPL vmlinux 0xe21cd57e ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xe23c5f11 securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0xe290ca81 ref_module +EXPORT_SYMBOL_GPL vmlinux 0xe2a1916d pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0xe2cb4065 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0xe2e89a66 blk_rq_check_limits +EXPORT_SYMBOL_GPL vmlinux 0xe2f099a9 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xe3043ff9 request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xe3624f44 list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0xe36c1058 fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0xe384a102 usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0xe3c4c4aa sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0xe3d7750e btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0xe3f5b0f3 dma_buf_mmap +EXPORT_SYMBOL_GPL vmlinux 0xe4053ab5 regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0xe40601ad pci_intx +EXPORT_SYMBOL_GPL vmlinux 0xe42a337c serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe4362879 thermal_generate_netlink_event +EXPORT_SYMBOL_GPL vmlinux 0xe4555ddc aead_geniv_exit +EXPORT_SYMBOL_GPL vmlinux 0xe48e02c0 pcibios_add_pci_devices +EXPORT_SYMBOL_GPL vmlinux 0xe4909758 ide_do_test_unit_ready +EXPORT_SYMBOL_GPL vmlinux 0xe4adc4db ata_eh_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0xe4b2997a class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xe4c031f8 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xe4c33b47 rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0xe4c4b28f gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0xe4e0e8a1 devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0xe4effee1 scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0xe51c040f register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xe52ff725 pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0xe5428e7b crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xe5540302 enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xe582e77a device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0xe584507d show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe59c539b extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe59f8d8e debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0xe5bbba5f cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0xe5e23d8b debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0xe606ce78 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0xe60d5299 crypto_aead_type +EXPORT_SYMBOL_GPL vmlinux 0xe6418cbe ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0xe651f76e selinux_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe671d190 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0xe6c68334 ddebug_remove_module +EXPORT_SYMBOL_GPL vmlinux 0xe6e1c5fe uuid_be_gen +EXPORT_SYMBOL_GPL vmlinux 0xe6e52646 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0xe6ec6bbc bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe70cc150 ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe717d2c6 crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe76eda82 regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0xe780ef64 regulator_get +EXPORT_SYMBOL_GPL vmlinux 0xe7c0edf8 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0xe7e6ab56 i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0xe7e81ce0 usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xe7ffe877 pcpu_base_addr +EXPORT_SYMBOL_GPL vmlinux 0xe8008311 ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0xe8034bdb irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe83ee4fe sg_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xe8400441 of_property_read_string_index +EXPORT_SYMBOL_GPL vmlinux 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL vmlinux 0xe85c55e7 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe873c49b platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe87a82c1 regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xe8836def ide_dma_setup +EXPORT_SYMBOL_GPL vmlinux 0xe897384c unregister_ftrace_event +EXPORT_SYMBOL_GPL vmlinux 0xe89bd243 ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe8b6ddde key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0xe8cc24e2 dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xe8e53c88 devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0xe9070e80 ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0xe922b8c9 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe96b6121 platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0xe994c4f5 regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0xe9a9acfb inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea17d1b9 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0xea1ed341 wm8997_patch +EXPORT_SYMBOL_GPL vmlinux 0xea3caf5e input_class +EXPORT_SYMBOL_GPL vmlinux 0xea418e0f atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0xea60aab2 __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xea623807 ide_dma_host_set +EXPORT_SYMBOL_GPL vmlinux 0xea628c20 bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0xea773831 devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0xea80ca63 md_new_event +EXPORT_SYMBOL_GPL vmlinux 0xea8f90d4 device_register +EXPORT_SYMBOL_GPL vmlinux 0xeae28000 usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0xeae666dc usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0xeb1c3628 nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xeb5126fc alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0xeb5445b7 rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0xeb72e1c9 rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0xeb8ae736 klist_init +EXPORT_SYMBOL_GPL vmlinux 0xeb93d18c relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0xebec57c4 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xec080114 sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0xec1b043e regulator_suspend_prepare +EXPORT_SYMBOL_GPL vmlinux 0xec25f967 klist_del +EXPORT_SYMBOL_GPL vmlinux 0xec631f34 remove_memory +EXPORT_SYMBOL_GPL vmlinux 0xecad54e7 dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0xecada9ee crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0xecb70840 fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xecbb7d23 i2c_unlock_adapter +EXPORT_SYMBOL_GPL vmlinux 0xecd85513 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0xece07749 sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0xece4d13e register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xed00bdfc input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0xed288b4c serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0xed4276d1 ide_port_scan +EXPORT_SYMBOL_GPL vmlinux 0xed57c9cd skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0xed8be252 crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0xeda858ac vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0xedbf8499 pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0xede7eb2f mmu_psize_defs +EXPORT_SYMBOL_GPL vmlinux 0xedff5d33 __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0xee41cd3e dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee891cc0 srp_tmo_valid +EXPORT_SYMBOL_GPL vmlinux 0xee8da4ca kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xee90768e tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0xee95d3f3 setup_irq +EXPORT_SYMBOL_GPL vmlinux 0xeea6e7c3 scsi_internal_device_block +EXPORT_SYMBOL_GPL vmlinux 0xeeb9b3b8 inet_csk_bind_conflict +EXPORT_SYMBOL_GPL vmlinux 0xeecfc877 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0xeedc0371 tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0xeeef789e ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xef003977 platform_bus +EXPORT_SYMBOL_GPL vmlinux 0xef16987d usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0xef4d9670 dma_buf_unmap_attachment +EXPORT_SYMBOL_GPL vmlinux 0xef5f6f16 sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef7b9bfe pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0xef82db19 __online_page_increment_counters +EXPORT_SYMBOL_GPL vmlinux 0xef918a9a fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0xef918e64 pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0xefc50ed2 uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0xefcc5b3f __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0xefe3907c platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0xefec6bc6 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0xeffa6b8f __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0xeffb3426 usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xf0017458 ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xf00d132e regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0xf02047f4 __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0xf0380a1f transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0xf0688796 sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0xf06d7378 led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0xf07f83cd mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0xf08ea9ff ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0xf099c23a ping_close +EXPORT_SYMBOL_GPL vmlinux 0xf0a820a2 led_trigger_show +EXPORT_SYMBOL_GPL vmlinux 0xf0aa0191 ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0xf0cbe4f8 inet6_csk_search_req +EXPORT_SYMBOL_GPL vmlinux 0xf0f5dbc2 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0xf0fbc544 blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0xf105d00d ide_in_drive_list +EXPORT_SYMBOL_GPL vmlinux 0xf10db2f9 __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xf10e6b1c pwm_disable +EXPORT_SYMBOL_GPL vmlinux 0xf1374557 get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0xf1480a68 da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0xf157f215 skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0xf158f170 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0xf17303a0 regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf1a62b6f of_i8042_kbd_irq +EXPORT_SYMBOL_GPL vmlinux 0xf1ae7884 ide_tf_load +EXPORT_SYMBOL_GPL vmlinux 0xf1b31314 delayacct_on +EXPORT_SYMBOL_GPL vmlinux 0xf1d854c1 wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf24236a9 relay_open +EXPORT_SYMBOL_GPL vmlinux 0xf247f309 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0xf25762a8 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0xf26c90e9 crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0xf27977e2 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0xf2807da4 cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xf28cdfc9 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0xf297c65c rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0xf2c33f80 sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0xf2e0af13 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0xf2ef09d3 dma_buf_map_attachment +EXPORT_SYMBOL_GPL vmlinux 0xf2f022a0 irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0xf2f077cc pkey_id_type_name +EXPORT_SYMBOL_GPL vmlinux 0xf2fca922 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0xf308ef1e ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0xf30a840e ata_scsi_simulate +EXPORT_SYMBOL_GPL vmlinux 0xf30dd2a2 class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf31f1dec ata_sff_data_xfer_noirq +EXPORT_SYMBOL_GPL vmlinux 0xf324a5a8 cpufreq_frequency_table_target +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf393bec6 regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xf3a80ec8 pci_restore_ats_state +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3b5cfdb pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xf3e3661f __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xf437743b __ip_route_output_key +EXPORT_SYMBOL_GPL vmlinux 0xf4632c69 usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0xf4931ecf ahash_attr_alg +EXPORT_SYMBOL_GPL vmlinux 0xf494b928 i2c_new_probed_device +EXPORT_SYMBOL_GPL vmlinux 0xf494f618 mmc_regulator_get_ocrmask +EXPORT_SYMBOL_GPL vmlinux 0xf499fdb2 rcu_barrier_bh +EXPORT_SYMBOL_GPL vmlinux 0xf4a0f00d devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0xf4b7bc76 ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0xf4bc0793 ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0xf4fc2d6c __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0xf50beb0d blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0xf52a25b3 dma_buf_end_cpu_access +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf571913f usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0xf58348a6 sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0xf588d00d regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5be00a5 simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0xf5fef4e3 wm5110_spi_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf64449ab ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0xf654cdf0 bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0xf68d97c2 ide_cd_get_xferlen +EXPORT_SYMBOL_GPL vmlinux 0xf6dad09d wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf711ba75 arizona_request_irq +EXPORT_SYMBOL_GPL vmlinux 0xf71b1380 of_get_dma_window +EXPORT_SYMBOL_GPL vmlinux 0xf7237c14 scom_map_device +EXPORT_SYMBOL_GPL vmlinux 0xf77e2a26 ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0xf77eab41 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0xf783a658 dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0xf7a8a405 ide_queue_pc_tail +EXPORT_SYMBOL_GPL vmlinux 0xf7e3a3dd pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0xf7ee124f usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0xf816c866 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xf81d8c79 pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf837e0eb unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0xf8430ec0 sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0xf85443f3 bus_find_device_by_name +EXPORT_SYMBOL_GPL vmlinux 0xf8802492 print_stack_trace +EXPORT_SYMBOL_GPL vmlinux 0xf88d815a tcp_done +EXPORT_SYMBOL_GPL vmlinux 0xf8963351 spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0xf89661e6 md_stop +EXPORT_SYMBOL_GPL vmlinux 0xf8a427d4 ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0xf8a72fe5 __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xf8b6b332 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0xf8d411bc rtc_irq_register +EXPORT_SYMBOL_GPL vmlinux 0xf8e398fc memstart_addr +EXPORT_SYMBOL_GPL vmlinux 0xf8ef7d75 rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3d0b kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0xf92ce956 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0xf932015f __raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xf938a963 blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0xf97ef9ba input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9ca3160 ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0xf9ce9809 __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xf9dd1bea rtc_set_mmss +EXPORT_SYMBOL_GPL vmlinux 0xfa012fe7 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa1f4662 scatterwalk_start +EXPORT_SYMBOL_GPL vmlinux 0xfa3f452f ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0xfa5dbf20 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0xfa676782 scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0xfa901b31 compat_get_timespec +EXPORT_SYMBOL_GPL vmlinux 0xfab60503 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0xfadde6d7 virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb52b77d __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0xfb6ab53b regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb818bbd ata_do_eh +EXPORT_SYMBOL_GPL vmlinux 0xfb891a8d pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0xfb9119d2 ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0xfba038e4 pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0xfbaf8ea2 wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0xfbbbd723 ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0xfbbedefd of_prop_next_string +EXPORT_SYMBOL_GPL vmlinux 0xfbcf19e8 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc201b66 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0xfc45966b debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0xfc673989 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0xfc9764c4 usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0xfca78e0e task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0xfcd7bc0b ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0xfcd972e5 crypto_lookup_aead +EXPORT_SYMBOL_GPL vmlinux 0xfd5c9fff irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0xfd6154e7 ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0xfd805458 ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xfda39225 wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xfde57b90 led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0xfde87a4c gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0xfdf0f22e sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0xfe005167 reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfe1b2a8a get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0xfe1fa0db of_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0xfe2b4741 crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0xfe48dde0 ide_undecoded_slave +EXPORT_SYMBOL_GPL vmlinux 0xfe8561ae irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfeba66a5 inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0xfec391fe ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfef09ceb crypto_unregister_pcomp +EXPORT_SYMBOL_GPL vmlinux 0xfef7648f devres_alloc +EXPORT_SYMBOL_GPL vmlinux 0xfef8a166 trace_current_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff494d1f unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xff5a8cfe cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0xff90e1bd pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0xffc34c78 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0xfff32e4a dev_get_regmap --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/ppc64el/generic.compiler +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/ppc64el/generic.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 4.8.2-19ubuntu1) 4.8.2 --- linux-3.13.0.orig/debian.master/abi/3.13.0-29.52/ppc64el/generic.modules +++ linux-3.13.0/debian.master/abi/3.13.0-29.52/ppc64el/generic.modules @@ -0,0 +1,2918 @@ +3c59x +3w-9xxx +3w-sas +3w-xxxx +6lowpan +6pack +8021q +8139cp +8139too +8250_dw +8390 +88pm800 +88pm805 +88pm80x +88pm80x_onkey +88pm860x_battery +88pm860x_bl +88pm860x_charger +88pm860x_onkey +88pm860x-ts +9p +9pnet +9pnet_rdma +9pnet_virtio +a100u2w +a3d +a8293 +aacraid +aat2870_bl +aat2870-regulator +ab3100 +ab3100-otp +acard-ahci +acecad +acenic +act200l-sir +act_csum +act_gact +act_ipt +actisys-sir +act_mirred +act_nat +act_pedit +act_police +act_simple +act_skbedit +ad5064 +ad525x_dpot +ad525x_dpot-i2c +ad525x_dpot-spi +ad5360 +ad5380 +ad5398 +ad5421 +ad5446 +ad5449 +ad5504 +ad5624r_spi +ad5686 +ad5755 +ad5764 +ad5791 +ad714x +ad714x-i2c +ad714x-spi +ad7266 +ad7298 +ad7303 +ad7314 +ad7414 +ad7418 +ad7476 +ad7791 +ad7793 +ad7877 +ad7879 +ad7879-i2c +ad7879-spi +ad7887 +ad7923 +ad8366 +ad9523 +adcxx +adf4350 +adfs +adi +adis16080 +adis16130 +adis16136 +adis16260 +adis16400 +adis16480 +adis_lib +adjd_s311 +adm1021 +adm1025 +adm1026 +adm1029 +adm1031 +adm1275 +adm8211 +adm9240 +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +ads1015 +ads7828 +ads7846 +ads7871 +ad_sigma_delta +adt7310 +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adv7180 +adxl34x +adxl34x-i2c +adxl34x-spi +adxrs450 +af_802154 +af9013 +af9033 +af_alg +affs +af_key +af_packet_diag +af-rxrpc +ah4 +ah6 +ahci +ahci_platform +aic79xx +aic7xxx +aic94xx +aiptek +airo +ak8975 +algif_hash +algif_skcipher +ali-ircc +alim7101_wdt +altera_jtaguart +altera-stapl +altera_uart +alx +amc6821 +amd8111e +ams369fg06 +analog +anatop-regulator +ansi_cprng +anubis +aoe +apds9300 +apds9802als +apds990x +appletalk +appletouch +applicom +ar5523 +ar7part +arc4 +arc_emac +arcmsr +arcnet +arc-rawmode +arc-rimi +arc_uart +arizona-i2c +arizona-spi +arkfb +arptable_filter +arp_tables +arpt_mangle +as3711_bl +as3711-regulator +as3722-regulator +as5011 +asc7621 +asix +ast +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at86rf230 +at91_ether +ata_piix +atbm8830 +aten +ath +ath10k_core +ath10k_pci +ath3k +ath5k +ath6kl_core +ath6kl_sdio +ath6kl_usb +ath9k +ath9k_common +ath9k_htc +ath9k_hw +ati_remote +ati_remote2 +atl1 +atl1c +atl1e +atl2 +atm +atmel +atmel_mxt_ts +atmel_pci +atmel-ssc +atmtcp +atp870u +atxp1 +aty128fb +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +aufs +auo_k1900fb +auo_k1901fb +auo_k190x +auo-pixcir-ts +authenc +authencesn +auth_rpcgss +autofs4 +avmfritz +ax25 +ax88179_178a +b1 +b1dma +b1pci +b2c2-flexcop +b2c2-flexcop-pci +b2c2-flexcop-usb +b43 +b43legacy +b44 +bas_gigaset +batman-adv +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm203x +bcm3510 +bcm5974 +bcma +bd6107 +be2iscsi +be2net +befs +bfa +bfs +bfusb +bh1770glc +bh1780gli +binfmt_misc +block2mtd +blocklayoutdriver +blowfish_common +blowfish_generic +bluetooth +bma150 +bma180 +bmp085-i2c +bmp085-spi +bna +bnep +bnx2 +bnx2fc +bnx2i +bnx2x +bonding +bpa10x +bpck +bpqether +bq2415x_charger +bq24190_charger +bq24735-charger +bq27x00_battery +br2684 +brcmfmac +brcmsmac +brcmutil +bridge +broadsheetfb +bsd_comp +bsr +bt878 +btcoexist +btcx-risc +btmrvl +btmrvl_sdio +btrfs +btsdio +bttv +btusb +btwilink +bu21013_ts +budget +budget-av +budget-ci +budget-core +budget-patch +bw-qcam +c4 +cachefiles +cafe_ccic +cafe_nand +caif +caif_hsi +caif_serial +caif_socket +caif_usb +caif_virtio +camellia_generic +can +can-bcm +can-dev +can-gw +can-raw +capi +capidrv +capmode +carl9170 +carminefb +cassini +cast5_generic +cast6_generic +cast_common +cb710 +cb710-mmc +cc770 +cc770_isa +cc770_platform +c_can +c_can_pci +c_can_platform +cciss +ccm +cdc-acm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc-phonet +cdc_subset +cdc-wdm +ceph +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +cfspi_slave +ch +ch7006 +chipreg +chnl_net +cifs +cirrus +cirrusfb +clip +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_fw +cls_route +cls_rsvp +cls_rsvp6 +cls_tcindex +cls_u32 +cm109 +cm36651 +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cmtp +cnic +cobra +coda +com20020 +com20020-pci +com90io +com90xx +comm +configfs +cordic +core +cpc925_edac +cpia2 +cpu-notifier-error-inject +c-qcam +cramfs +crc32 +crc7 +crc8 +crc-ccitt +crc-itu-t +cros_ec +cros_ec_i2c +cros_ec_keyb +cros_ec_spi +cryptd +cryptoloop +crypto_null +crypto_user +cs5345 +cs53l32a +csiostor +ctr +cts +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cx18 +cx22700 +cx22702 +cx231xx +cx231xx-dvb +cx2341x +cx24110 +cx24113 +cx24116 +cx24123 +cx25821 +cx25840 +cx82310_eth +cx8800 +cx8802 +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx88xx +cxacru +cxd2820r +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cy8ctmg110_ts +cyapa +cyber2000fb +cyclades +cypress_firmware +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +cyttsp_core +cyttsp_i2c +cyttsp_i2c_common +cyttsp_spi +da9052-battery +da9052_bl +da9052-hwmon +da9052_onkey +da9052-regulator +da9052_tsi +da9052_wdt +da9055-hwmon +da9055_onkey +da9055-regulator +da9055_wdt +da9063-regulator +da9210-regulator +DAC960 +db9 +dc395x +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +dccp_probe +ddbridge +decnet +deflate +defxx +denali +denali_pci +des_generic +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dibx000_common +diskonchip +divacapi +divadidd +diva_idi +diva_mnt +divas +dl2k +dlci +dlm +dm1105 +dm9601 +dm-bio-prison +dm-bufio +dm-cache +dm-cache-cleaner +dm-cache-mq +dm-crypt +dm-delay +dm-flakey +dm-log +dm-log-userspace +dm-mirror +dm-multipath +dm-persistent-data +dm-queue-length +dm-raid +dm-region-hash +dm-round-robin +dm-service-time +dm-snapshot +dm-switch +dm-thin-pool +dm-verity +dmx3191d +dm-zero +dnet +dn_rtmsg +docg3 +docg4 +drbd +drm +drm_kms_helper +drm_usb +drxd +drxk +ds1621 +ds1682 +ds1wm +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds620 +dsa_core +dsbr100 +dscc4 +dss1_divert +dst +dst_ca +dstr +dummy +dummy-irq +dvb-bt8xx +dvb-core +dvb-pll +dvb-ttpci +dvb-ttusb-budget +dvb-usb +dvb-usb-a800 +dvb-usb-af9005 +dvb-usb-af9005-remote +dvb-usb-af9015 +dvb-usb-af9035 +dvb-usb-anysee +dvb-usb-au6610 +dvb-usb-az6007 +dvb-usb-az6027 +dvb-usb-ce6230 +dvb-usb-cinergyT2 +dvb-usb-cxusb +dvb-usb-dib0700 +dvb-usb-dibusb-common +dvb-usb-dibusb-mb +dvb-usb-dibusb-mc +dvb-usb-digitv +dvb-usb-dtt200u +dvb-usb-dtv5100 +dvb-usb-dw2102 +dvb-usb-ec168 +dvb-usb-friio +dvb-usb-gl861 +dvb-usb-gp8psk +dvb-usb-it913x +dvb-usb-lmedm04 +dvb-usb-m920x +dvb-usb-mxl111sf +dvb-usb-nova-t-usb2 +dvb-usb-opera +dvb-usb-pctv452e +dvb-usb-rtl28xxu +dvb-usb-technisat-usb2 +dvb-usb-ttusb2 +dvb-usb-umt-010 +dvb_usb_v2 +dvb-usb-vp702x +dvb-usb-vp7045 +dw_dmac +dw_dmac_core +dw_dmac_pci +dynapro +e100 +e1000 +e1000e +e4000 +earth-pt1 +eata +ebt_802_3 +ebtable_broute +ebtable_filter +ebtable_nat +ebtables +ebt_among +ebt_arp +ebt_arpreply +ebt_dnat +ebt_ip +ebt_ip6 +ebt_limit +ebt_log +ebt_mark +ebt_mark_m +ebt_nflog +ebt_pkttype +ebt_redirect +ebt_snat +ebt_stp +ebt_vlan +ec100 +edac_core +edt-ft5x06 +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efs +egalax_ts +elo +em28xx +em28xx-dvb +em28xx-rc +emc1403 +emc2103 +emc6w201 +em_canid +em_cmp +em_ipset +em_meta +em_nbyte +ems_pci +ems_usb +em_text +emu10k1-gp +em_u32 +enc28j60 +enclosure +eni +enic +epat +epia +epic100 +eql +esas2r +esd_usb2 +esi-sir +esp4 +esp6 +ethoc +evbug +exofs +extcon-adc-jack +extcon-gpio +extcon-max77693 +extcon-max8997 +extcon-palmas +f2fs +f75375s +fakelb +fan53555 +farsync +faulty +fb_ddc +fb_sys_fops +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fealnx +ff-memless +firedtv +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +fit2 +fit3 +fixed +flexcan +floppy +fm801-gp +fmc +fmc-chardev +fmc-fakedev +fmc-trivial +fmc-write-eeprom +forcedeth +fore_200e +freevxfs +friq +frpw +fsa9480 +fscache +fsl_elbc_nand +ftl +fujitsu_ts +g450_pll +g760a +g762 +gamecon +gameport +garp +gcm +gdth +generic +generic-adc-battery +generic_bl +gen_probe +gf128mul +gf2k +gfs2 +ghash-generic +gigaset +girbil-sir +gl518sm +gl520sm +gl620a +gluebi +goldfishfb +gp2ap002a00f +gp2ap020a00f +gpio +gpio-74x164 +gpio-addr-flash +gpio-adnp +gpio-adp5588 +gpio-amd8111 +gpio-arizona +gpio_backlight +gpio-charger +gpio-da9052 +gpio-da9055 +gpio-fan +gpio-generic +gpio-grgpio +gpio-ir-recv +gpio-janz-ttl +gpio-kempld +gpio_keys +gpio_keys_polled +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-mc33880 +gpio-mcp23s08 +gpio-ml-ioh +gpio_mouse +gpio-pca953x +gpio-pcf857x +gpio-rdc321x +gpio-regulator +gpio_tilt_polled +gpio-tps65912 +gpio-ts5500 +gpio-viperboard +gpio-vx855 +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +grcan +gre +grip +grip_mp +gspca_benq +gspca_conex +gspca_cpia1 +gspca_etoms +gspca_finepix +gspca_gl860 +gspca_jeilinj +gspca_jl2005bcd +gspca_kinect +gspca_konica +gspca_m5602 +gspca_main +gspca_mars +gspca_mr97310a +gspca_nw80x +gspca_ov519 +gspca_ov534 +gspca_ov534_9 +gspca_pac207 +gspca_pac7302 +gspca_pac7311 +gspca_se401 +gspca_sn9c2028 +gspca_sn9c20x +gspca_sonixb +gspca_sonixj +gspca_spca1528 +gspca_spca500 +gspca_spca501 +gspca_spca505 +gspca_spca506 +gspca_spca508 +gspca_spca561 +gspca_sq905 +gspca_sq905c +gspca_sq930x +gspca_stk014 +gspca_stk1135 +gspca_stv0680 +gspca_stv06xx +gspca_sunplus +gspca_t613 +gspca_topro +gspca_tv8532 +gspca_vc032x +gspca_vicam +gspca_xirlink_cit +gspca_zc3xx +gtco +guillemot +gunze +hamachi +hampshire +hangcheck-timer +hanwang +hci +hci_uart +hci_vhci +hdlc +hdlc_cisco +hdlcdrv +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdpvr +he +hexium_gemini +hexium_orion +hfc4s8s_l1 +hfcmulti +hfcpci +hfcsusb +hfc_usb +hfs +hfsplus +hid +hid-a4tech +hid-apple +hid-appleir +hid-aureal +hid-axff +hid-belkin +hid-cherry +hid-chicony +hid-cypress +hid-dr +hid-elecom +hid-elo +hid-emsff +hid-ezkey +hid-gaff +hid-generic +hid-gyration +hid-holtekff +hid-holtek-kbd +hid-holtek-mouse +hid-huion +hid-icade +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-lenovo-tpkbd +hid-logitech +hid-logitech-dj +hid-magicmouse +hid-microsoft +hid-monterey +hid-multitouch +hid-ntrig +hid-ortek +hidp +hid-petalynx +hid-picolcd +hid-pl +hid-primax +hid-roccat +hid-roccat-arvo +hid-roccat-common +hid-roccat-isku +hid-roccat-kone +hid-roccat-koneplus +hid-roccat-konepure +hid-roccat-kovaplus +hid-roccat-lua +hid-roccat-pyra +hid-roccat-ryos +hid-roccat-savu +hid-saitek +hid-samsung +hid-sensor-accel-3d +hid-sensor-als +hid-sensor-gyro-3d +hid-sensor-hub +hid-sensor-iio-common +hid-sensor-magn-3d +hid-sensor-trigger +hid-sjoy +hid-sony +hid-speedlink +hid-steelseries +hid-sunplus +hid-thingm +hid-tivo +hid-tmff +hid-topseed +hid-twinhan +hid-uclogic +hid-wacom +hid-waltop +hid-wiimote +hid-xinmo +hid-zpff +hid-zydacron +hih6130 +hisax +hisax_fcpcipnp +hisax_isac +hisax_st5481 +hmc6352 +hopper +hostap +hostap_pci +hostap_plx +hp100 +hpfs +hpilo +hpsa +hptiop +hsi +hsi_char +hsr +htc-pasic3 +htu21 +huawei_cdc_ncm +hvcs +hvcserver +hwa-hc +hwa-rc +hwmon-vid +hx8357 +hysdn +i1480-dfu-usb +i1480-est +i2400m +i2400m-usb +i2c-algo-bit +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd756 +i2c-amd8111 +i2c-arb-gpio-challenge +i2c-cbus-gpio +i2c-designware-core +i2c-designware-pci +i2c-dev +i2c-diolan-u2c +i2c-eg20t +i2c-gpio +i2c-hid +i2c-i801 +i2c-isch +i2c-kempld +i2c-matroxfb +i2c-mpc +i2c-mux +i2c-mux-gpio +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-nforce2 +i2c-ocores +i2c-parport +i2c-parport-light +i2c-pca-platform +i2c-piix4 +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-tiny-usb +i2c-via +i2c-viapro +i2c-viperboard +i2c-xiic +i2o_block +i2o_bus +i2o_core +i2o_proc +i2o_scsi +i40e +i5k_amb +i6300esb +i740fb +ib_addr +ib_cm +ib_core +ib_ehca +ib_ipoib +ib_iser +ib_isert +ib_mad +ibmaem +ibmpex +ib_mthca +ibmvfc +ib_qib +ib_sa +ib_srp +ib_srpt +ib_ucm +ib_umad +ib_uverbs +icom +ics932s401 +ideapad_slidebar +idt77252 +idtcps +idt_gen2 +ieee802154 +ifb +iforce +igb +igbvf +iguanair +iio_hwmon +iio-trig-interrupt +iio-trig-sysfs +ili210x +ili922x +ili9320 +imm +imon +ims-pcu +imx074 +imx_thermal +ina209 +ina2xx +industrialio +industrialio-triggered-buffer +inet_diag +inexio +inftl +initio +input-polldev +int51x1 +intel_vr_nor +interact +interval_tree_test +inv-mpu6050 +ioc4 +ip6_gre +ip6table_filter +ip6table_mangle +ip6table_nat +ip6table_raw +ip6_tables +ip6table_security +ip6t_ah +ip6t_eui64 +ip6t_frag +ip6t_hbh +ip6t_ipv6header +ip6t_MASQUERADE +ip6t_mh +ip6t_NPT +ip6t_REJECT +ip6t_rpfilter +ip6t_rt +ip6t_SYNPROXY +ip6_tunnel +ip6_vti +ipack +ipcomp +ipcomp6 +ipddp +ipg +ip_gre +iphase +ipip +ipmi_devintf +ipmi_poweroff +ipmi_si +ipmi_watchdog +ipoctal +ipr +ips +ip_set +ip_set_bitmap_ip +ip_set_bitmap_ipmac +ip_set_bitmap_port +ip_set_hash_ip +ip_set_hash_ipport +ip_set_hash_ipportip +ip_set_hash_ipportnet +ip_set_hash_net +ip_set_hash_netiface +ip_set_hash_netnet +ip_set_hash_netport +ip_set_hash_netportnet +ip_set_list_set +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +ip_tables +iptable_security +ipt_ah +ipt_CLUSTERIP +ipt_ECN +ipt_MASQUERADE +ipt_REJECT +ipt_rpfilter +ipt_SYNPROXY +ipt_ULOG +ip_tunnel +ip_vs +ip_vs_dh +ip_vs_ftp +ip_vs_lblc +ip_vs_lblcr +ip_vs_lc +ip_vs_nq +ip_vs_pe_sip +ip_vs_rr +ip_vs_sed +ip_vs_sh +ip_vs_wlc +ip_vs_wrr +ip_vti +ipw2100 +ipw2200 +ipx +ircomm +ircomm-tty +irda +irda-usb +ir-jvc-decoder +ir-kbd-i2c +irlan +ir-lirc-codec +ir-mce_kbd-decoder +ir-nec-decoder +irnet +ir-rc5-decoder +ir-rc5-sz-decoder +ir-rc6-decoder +ir-sanyo-decoder +ir-sony-decoder +irtty-sir +iscsi_boot_sysfs +iscsi_target_mod +iscsi_tcp +isdn +isdn_bsdcomp +isdnhdlc +isicom +isl29003 +isl29020 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isofs +isp1704_charger +it913x-fe +itd1000 +itg3200 +ivtv +ivtvfb +iw_cm +iw_cxgb3 +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +iw_nes +ix2505v +ixgb +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jsm +kafs +kalmia +kbic +kbtab +kempld-core +kempld_wdt +kernelcapi +keyspan_remote +kfifo_buf +khazad +kingsun-sir +ks0108 +ks8842 +ks8851 +ks8851_mll +ks959-sir +ksdazzle-sir +ksz884x +ktti +kvaser_pci +kvaser_usb +kxsd9 +kxtj9 +kyrofb +l1oip +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +l2tp_ppp +l4f00242t03 +l64781 +lanai +lapb +lapbether +latch-addr-flash +lattice-ecp3-config +lcd +ld9040 +lec +leds-88pm860x +leds-bd2802 +leds-blinkm +leds-da9052 +leds-dac124s085 +leds-gpio +leds-lm3530 +leds-lm3533 +leds-lm355x +leds-lm3642 +leds-lp3944 +leds-lp5521 +leds-lp5523 +leds-lp5562 +leds-lp55xx-common +leds-lp8501 +leds-lp8788 +leds-lt3593 +leds-max8997 +leds-mc13783 +leds-ot200 +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pca9685 +leds-pwm +leds-regulator +leds-tca6507 +leds-wm831x-status +leds-wm8350 +ledtrig-backlight +ledtrig-camera +ledtrig-default-on +ledtrig-gpio +ledtrig-heartbeat +ledtrig-oneshot +ledtrig-timer +ledtrig-transient +lg2160 +lgdt3305 +lgdt330x +lgs8gxx +lg-vl600 +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libahci +libceph +libcrc32c +libcxgbi +libertas +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libore +libosd +libsas +libsrp +lightning +lineage-pem +linear +lirc_dev +lis3lv02d +lis3lv02d_i2c +lis3lv02d_spi +litelink-sir +lkkbd +llc +llc2 +ll_temac +lm25066 +lm3533-als +lm3533_bl +lm3533-core +lm3533-ctrlbank +lm3630a_bl +lm3639_bl +lm63 +lm70 +lm73 +lm75 +lm77 +lm78 +lm80 +lm83 +lm8323 +lm8333 +lm85 +lm87 +lm90 +lm92 +lm93 +lm95234 +lm95241 +lm95245 +lms283gf05 +lms501kf03 +lnbp21 +lnbp22 +lockd +lp +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp8755 +lp8788_bl +lp8788-charger +lpc_ich +lpc_sch +lpddr_cmds +lpfc +lru_cache +lrw +ltc2978 +ltc4151 +ltc4215 +ltc4245 +ltc4261 +ltv350qv +lv5207lp +lz4 +lz4_compress +lz4hc +lz4hc_compress +m25p80 +m2m-deinterlace +m52790 +m88rs2000 +ma600-sir +mac80211 +mac80211_hwsim +mac802154 +macb +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mac-gaelic +mac-greek +mac-iceland +mac-inuit +mac-roman +mac-romanian +mac-turkish +macvlan +macvtap +mag3110 +magellan +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +matrix-keymap +matrix_keypad +matroxfb_accel +matroxfb_base +matroxfb_crtc2 +matroxfb_DAC1064 +matroxfb_g450 +matroxfb_maven +matroxfb_misc +matroxfb_Ti3026 +matrox_w1 +max1111 +max11801_ts +max1363 +max1586 +max16064 +max16065 +max1619 +max1668 +max17040_battery +max17042_battery +max197 +max2165 +max3100 +max34440 +max517 +max6639 +max6642 +max6650 +max6697 +max6875 +max7359_keypad +max77686 +max77693 +max8649 +max8660 +max8688 +max8903_charger +max8907 +max8907-regulator +max8925_bl +max8925_onkey +max8925_power +max8925-regulator +max8952 +max8973-regulator +max8997 +max8997_charger +max8998 +max8998_charger +mb862xxfb +mb86a16 +mb86a20s +mc13783-adc +mc13783-pwrbutton +mc13783-regulator +mc13783_ts +mc13892-regulator +mc13xxx-core +mc13xxx-i2c +mc13xxx-regulator-core +mc13xxx-spi +mc44s803 +mceusb +mcp2120-sir +mcp251x +mcp3021 +mcp320x +mcp3422 +mcp4725 +mcs5000_ts +mcs7780 +mcs7830 +mcs_touchkey +md4 +mdio +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mem2mem_testdev +memory-notifier-error-inject +memstick +mena21_wdt +metronomefb +mfd +mga +michael_mic +microread +microread_i2c +mii +minix +mip6 +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +mk712 +mkiss +mlx4_core +mlx4_en +mlx4_ib +mlx5_core +mlx5_ib +mma8450 +mmc_block +mmc_spi +mms114 +moxa +mpoa +mpr121_touchkey +mpt2sas +mpt3sas +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mrf24j40 +mrp +mrst_max3110 +ms_block +msdos +msp3400 +mspro_block +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt312 +mt352 +mt9m001 +mt9m111 +mt9t031 +mt9t112 +mt9v011 +mt9v022 +mtd +mtd_blkdevs +mtdblock +mtdblock_ro +mtd_dataflash +mtdoops +mtdram +mtdswap +mtip32xx +mtouch +multipath +mv88e6060 +mv88e6xxx_drv +mvmdio +mvsas +mvumi +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxl111sf-demod +mxl111sf-tuner +mxl5005s +mxl5007t +mxser +myri10ge +nand +nand_bch +nand_ecc +nand_ids +nandsim +natsemi +nau7802 +nbd +nci +ncpfs +ne2k-pci +neofb +net1080 +netconsole +netjet +netlink_diag +netprio_cgroup +netrom +netxen_nic +newtonkbd +nfc +nfc_digital +nf_conntrack +nf_conntrack_amanda +nf_conntrack_broadcast +nf_conntrack_ftp +nf_conntrack_h323 +nf_conntrack_ipv4 +nf_conntrack_ipv6 +nf_conntrack_irc +nf_conntrack_netbios_ns +nf_conntrack_netlink +nf_conntrack_pptp +nf_conntrack_proto_dccp +nf_conntrack_proto_gre +nf_conntrack_proto_sctp +nf_conntrack_proto_udplite +nf_conntrack_sane +nf_conntrack_sip +nf_conntrack_snmp +nf_conntrack_tftp +nfcsim +nfcwilink +nf_defrag_ipv4 +nf_defrag_ipv6 +nf_nat +nf_nat_amanda +nf_nat_ftp +nf_nat_h323 +nf_nat_ipv4 +nf_nat_ipv6 +nf_nat_irc +nf_nat_pptp +nf_nat_proto_dccp +nf_nat_proto_gre +nf_nat_proto_sctp +nf_nat_proto_udplite +nf_nat_sip +nf_nat_snmp_basic +nf_nat_tftp +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +nfnetlink_log +nfnetlink_queue +nfs +nfs_acl +nfsd +nfs_layout_nfsv41_files +nfsv2 +nfsv3 +nfsv4 +nf_synproxy_core +nf_tables +nf_tables_arp +nf_tables_bridge +nf_tables_ipv4 +nf_tables_ipv6 +nft_chain_nat_ipv4 +nft_chain_nat_ipv6 +nft_chain_route_ipv4 +nft_chain_route_ipv6 +nft_compat +nft_counter +nft_ct +nft_exthdr +nft_hash +nftl +nft_limit +nft_log +nft_meta +nft_nat +nft_rbtree +nft_reject_ipv4 +ngene +n_hdlc +nicstar +nilfs2 +niu +nlmon +nls_ascii +nls_cp1250 +nls_cp1251 +nls_cp1255 +nls_cp737 +nls_cp775 +nls_cp850 +nls_cp852 +nls_cp855 +nls_cp857 +nls_cp860 +nls_cp861 +nls_cp862 +nls_cp863 +nls_cp864 +nls_cp865 +nls_cp866 +nls_cp869 +nls_cp874 +nls_cp932 +nls_cp936 +nls_cp949 +nls_cp950 +nls_euc-jp +nls_iso8859-1 +nls_iso8859-13 +nls_iso8859-14 +nls_iso8859-15 +nls_iso8859-2 +nls_iso8859-3 +nls_iso8859-4 +nls_iso8859-5 +nls_iso8859-6 +nls_iso8859-7 +nls_iso8859-9 +nls_koi8-r +nls_koi8-ru +nls_koi8-u +nls_utf8 +nosy +notifier-error-inject +nouveau +nozomi +n_r3964 +ns558 +ns83820 +nsc-ircc +ntc_thermistor +ntfs +n_tracerouter +n_tracesink +null_blk +nvidiafb +nvme +nxt200x +nxt6000 +objlayoutdriver +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stackglue +ocfs2_stack_o2cb +ocfs2_stack_user +ocrdma +of_mmc_spi +ofpart +old_belkin-sir +omfs +on20 +on26 +onenand +opencores-kbd +openvswitch +oprofile +or51132 +or51211 +orinoco +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +osd +osdblk +osst +output +ov2640 +ov5642 +ov6650 +ov7670 +ov772x +ov9640 +ov9740 +overlayfs +p54common +p54pci +p54spi +p54usb +p8022 +p8023 +palmas-regulator +paride +parport +parport_ax88796 +parport_pc +parport_serial +pata_ali +pata_amd +pata_arasan_cf +pata_artop +pata_atiixp +pata_atp867x +pata_cmd640 +pata_cmd64x +pata_cs5520 +pata_cs5530 +pata_cs5536 +pata_cypress +pata_efar +pata_hpt366 +pata_hpt37x +pata_hpt3x2n +pata_hpt3x3 +pata_it8213 +pata_it821x +pata_jmicron +pata_legacy +pata_marvell +pata_mpiix +pata_netcell +pata_ninja32 +pata_ns87410 +pata_ns87415 +pata_of_platform +pata_oldpiix +pata_opti +pata_optidma +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_platform +pata_radisys +pata_rdc +pata_rz1000 +pata_sc1200 +pata_sch +pata_serverworks +pata_sil680 +pata_sis +pata_sl82c105 +pata_triflex +pata_via +pc300too +pcbc +pcd +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_can +pch_phub +pch_uart +pci +pci200syn +pci-stub +pcnet32 +pcrypt +pcspkr +pcwd_pci +pcwd_usb +pd +pda_power +pdc_adma +peak_pci +peak_usb +penmount +pf +pfuze100-regulator +pg +phantom +phonet +phram +phy-generic +phy-gpio-vbus-usb +physmap +physmap_of +pixcir_i2c_ts +pktcdvd +pktgen +platform_lcd +plat_nand +plat-ram +plip +plusb +pluto2 +plx_pci +pm2fb +pm3fb +pm80xx +pmbus +pmbus_core +pmc551 +pmcraid +pm-notifier-error-inject +pn533 +pn544 +pn544_i2c +pn_pep +port100 +powermate +powernv-cpufreq +powernv-rng +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +pppoatm +pppoe +pppox +ppp_synctty +pptp +pseries-rng +psmouse +psnap +pt +pvrusb2 +pwc +pwm_bl +pwm-pca9685 +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qmi_wwan +qnx4 +qnx6 +qt1010 +qt1070 +qt2160 +quota_tree +quota_v1 +quota_v2 +qxl +r128 +r592 +r6040 +r815x +r8169 +r820t +r852 +radeon +radeonfb +radio-i2c-si470x +radio-keene +radio-ma901 +radio-maxiradio +radio-mr800 +radio-shark +radio-si4713 +radio-tea5764 +radio-timb +radio-usb-si470x +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid6test +raid_class +ramoops +raw +rbd +rc5t583-regulator +rc-adstech-dvb-t-pci +rc-alink-dtu-m +rc-anysee +rc-apac-viewcomp +rcar_vin +rc-asus-pc39 +rc-asus-ps3-100 +rc-ati-tv-wonder-hd-600 +rc-ati-x10 +rc-avermedia +rc-avermedia-a16d +rc-avermedia-cardbus +rc-avermedia-dvbt +rc-avermedia-m135a +rc-avermedia-m733a-rm-k6 +rc-avermedia-rm-ks +rc-avertv-303 +rc-azurewave-ad-tu700 +rc-behold +rc-behold-columbus +rc-budget-ci-old +rc-cinergy +rc-cinergy-1400 +rc-core +rc-delock-61959 +rc-dib0700-nec +rc-dib0700-rc5 +rc-digitalnow-tinytwin +rc-digittrade +rc-dm1105-nec +rc-dntv-live-dvb-t +rc-dntv-live-dvbt-pro +rc-em-terratec +rc-encore-enltv +rc-encore-enltv2 +rc-encore-enltv-fm53 +rc-evga-indtube +rc-eztv +rc-flydvb +rc-flyvideo +rc-fusionhdtv-mce +rc-gadmei-rm008z +rc-genius-tvgo-a11mce +rc-gotview7135 +rc-hauppauge +rc-imon-mce +rc-imon-pad +rc-iodata-bctv7e +rc-it913x-v1 +rc-it913x-v2 +rc-kaiomy +rc-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lirc +rc-lme2510 +rc-loopback +rc-manli +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +rc-msi-digivox-ii +rc-msi-digivox-iii +rc-msi-tvanywhere +rc-msi-tvanywhere-plus +rc-nebula +rc-nec-terratec-cinergy-xs +rc-norwood +rc-npgtech +rc-pctv-sedna +rc-pinnacle-color +rc-pinnacle-grey +rc-pinnacle-pctv-hd +rc-pixelview +rc-pixelview-002t +rc-pixelview-mk12 +rc-pixelview-new +rc-powercolor-real-angel +rc-proteus-2309 +rc-purpletv +rc-pv951 +rc-rc6-mce +rc-real-audio-220-32-keys +rc-reddo +rc-snapstream-firefly +rc-streamzap +rc-tbs-nec +rc-technisat-usb2 +rc-terratec-cinergy-xs +rc-terratec-slim +rc-terratec-slim-2 +rc-tevii-nec +rc-tivo +rc-total-media-in-hand +rc-total-media-in-hand-02 +rc-trekstor +rc-tt-1500 +rc-twinhan1027 +rc-videomate-m1f +rc-videomate-s350 +rc-videomate-tv-pvr +rc-winfast +rc-winfast-usbii-deluxe +rdc321x-southbridge +rdma_cm +rdma_ucm +rds +rds_rdma +rds_tcp +redboot +redrat3 +reed_solomon +remoteproc +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfcomm +rfd_ftl +rionet +rio-scan +rivafb +rj54n1cb0c +rmd128 +rmd160 +rmd256 +rmd320 +rndis_host +rndis_wlan +rocket +romfs +rose +rotary_encoder +rp2 +rpadlpar_io +rpaphp +rpcsec_gss_krb5 +rsxx +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt61pci +rt73usb +rtas_flash +rtc-88pm80x +rtc-88pm860x +rtc-ab3100 +rtc-as3722 +rtc-bq32k +rtc-bq4802 +rtc-cmos +rtc_cmos_setup +rtc-da9052 +rtc-da9055 +rtc-ds1286 +rtc-ds1305 +rtc-ds1307 +rtc-ds1374 +rtc-ds1390 +rtc-ds1511 +rtc-ds1553 +rtc-ds1672 +rtc-ds1742 +rtc-ds2404 +rtc-ds3232 +rtc-ds3234 +rtc-em3027 +rtc-fm3130 +rtc-generic +rtc-hid-sensor-time +rtc-isl12022 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max77686 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-moxart +rtc-msm6242 +rtc-palmas +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf8523 +rtc-pcf8563 +rtc-pcf8583 +rtc-r9701 +rtc-rc5t583 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3029c2 +rtc-rx4581 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-s5m +rtc-snvs +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-tps80031 +rtc-v3020 +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtl2830 +rtl2832 +rtl8180 +rtl8187 +rtl8188ee +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192se +rtl8723ae +rtl8723be +rtl8723-common +rtl_pci +rtl_usb +rtlwifi +rtsx_pci +rtsx_pci_ms +rtsx_pci_sdmmc +rxkad +s1d13xxxfb +s2255drv +s2io +s3fb +s5h1409 +s5h1411 +s5h1420 +s5m8767 +s6e63m0 +s921 +saa6588 +saa6752hs +saa7115 +saa7127 +saa7134 +saa7134-dvb +saa7134-empress +saa7146 +saa7146_vv +saa7164 +saa717x +saa7706h +salsa20_generic +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_rcar +sata_sil +sata_sil24 +sata_sis +sata_svw +sata_sx4 +sata_uli +sata_via +sata_vsc +savage +savagefb +sbp_target +sbs-battery +sc92031 +scanlog +sch_atm +sch_cbq +sch_choke +sch_codel +sch_drr +sch_dsmark +sch_fq +sch_fq_codel +sch_gred +sch_hfsc +sch_htb +sch_ingress +sch_mqprio +sch_multiq +sch_netem +sch_plug +sch_prio +sch_qfq +sch_red +sch_sfb +sch_sfq +sch_tbf +sch_teql +scsi_debug +scsi_dh +scsi_dh_alua +scsi_dh_emc +scsi_dh_hp_sw +scsi_dh_rdac +scsi_tgt +scsi_transport_fc +scsi_transport_iscsi +scsi_transport_sas +sctp +sctp_probe +sdhci +sdhci-of-esdhc +sdhci-of-hlwd +sdhci-pci +sdhci-pltfm +sdio_uart +seed +seqiv +ser_gigaset +sermouse +serpent_generic +serport +ses +sfc +sha1-powerpc +shark2 +sh_eth +sht15 +sht21 +sh_veu +si21xx +si4713-i2c +si476x-core +sidewinder +sierra_net +sil164 +sir-dev +sis +sis190 +sis5595 +sis900 +sisfb +sit +sja1000 +sja1000_isa +sja1000_of_platform +sja1000_platform +skd +skfp +skge +sky2 +slcan +slip +slram +sm501 +sm501fb +smb347-charger +sm_common +sm_ftl +smm665 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smsc-ircc2 +smscufx +smsdvb +smsmdtv +smssdio +smsusb +soc_camera +soc_camera_platform +soc_mediabus +soc_scale_crop +softdog +softing +solos-pci +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +speedfax +speedtch +spi-altera +spi-bitbang +spi-butterfly +spidev +spi-dw +spi-dw-midpci +spi-gpio +spi_ks8995 +spi-lm70llp +spi-oc-tiny +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-sc18is602 +spi-tle62x0 +spi-topcliff-pch +spi-xcomm +squashfs +sr9700 +ssb +ssd1307fb +ssfdc +sst25l +sstfb +st +st1232 +st_accel +st_accel_i2c +st_accel_spi +starfire +stb0899 +stb6000 +stb6100 +st_drv +ste_modem_rproc +stex +st_gyro +st_gyro_i2c +st_gyro_spi +stinger +stir4200 +stk1160 +stkwebcam +st_magn +st_magn_i2c +st_magn_spi +stmmac +stmpe-keypad +stmpe-ts +stowaway +stp +st_pressure +st_pressure_i2c +st_pressure_spi +streamzap +st_sensors +st_sensors_i2c +st_sensors_spi +stv0288 +stv0297 +stv0299 +stv0900 +stv090x +stv6110 +stv6110x +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrpc +sur40 +svcrdma +svgalib +sx8 +sym53c8xx +synaptics_i2c +synaptics_usb +synclink +synclink_gt +synclinkmp +syscopyarea +sysfillrect +sysimgblt +sysv +t1pci +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +tc3589x-keypad +tca6416-keypad +tca8418_keypad +tcm_fc +tcm_loop +tcm_qla2xxx +tcp_bic +tcp_diag +tcp_highspeed +tcp_htcp +tcp_hybla +tcp_illinois +tcp_lp +tcp_probe +tcp_scalable +tcp_vegas +tcp_veno +tcp_westwood +tcp_yeah +tcrypt +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18271 +tda18271c2dd +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda998x +tdfx +tdfxfb +tdo24m +tea +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tef6862 +tehuti +tekram-sir +test_power +tgr192 +thmc50 +ti-adc081c +ti_dac7512 +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +timb_dma +timberdale +timblogiw +timbuart +timeriomem-rng +tipc +tlan +tm6000 +tm6000-dvb +tmdc +tmiofb +tmp006 +tmp102 +tmp401 +tmp421 +tmscsim +toim3232-sir +touchit213 +touchright +touchwin +tpci200 +tpm_atmel +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_i2c_stm_st33 +tpm-rng +tps51632-regulator +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65090-charger +tps65090-regulator +tps65217 +tps65217_bl +tps65217-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps80031-regulator +tridentfb +ts2020 +ts_bm +tsc2005 +tsc2007 +tsc40 +ts_fsm +tsi568 +tsi57x +ts_kmp +tsl2550 +tsl2563 +tsl4531 +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +tua6100 +tua9001 +tuner +tuner_it913x +tuner-simple +tuner-types +tuner-xc2028 +tunnel4 +tunnel6 +turbografx +tvaudio +tveeprom +tvp5150 +tw9910 +twidjoy +twofish_common +twofish_generic +typhoon +uartlite +ubi +ubifs +ucd9000 +ucd9200 +udf +udl +udlfb +udp_diag +ueagle-atm +ufs +ufshcd +ufshcd-pci +ufshcd-pltfrm +uhid +uio +umc +umem +unix_diag +upd64031a +upd64083 +usb_8dev +usb8xxx +usbatm +usb_gigaset +usbhid +usbkbd +usbmon +usbmouse +usbnet +usb-storage +usbtouchscreen +usbtv +usbvision +userspace-consumer +ushc +uvcvideo +uvesafb +uwb +v4l2-common +v4l2-dv-timings +v4l2-int-device +v4l2-mem2mem +vcan +vcnl4000 +ves1820 +ves1x93 +veth +vga16fb +vgastate +vgg2432a4 +vhost +vhost_net +vhost_scsi +via +via686a +via-ircc +via-rhine +via-sdmmc +via-velocity +videobuf2-core +videobuf2-dma-contig +videobuf2-memops +videobuf2-vmalloc +videobuf-core +videobuf-dma-contig +videobuf-dma-sg +videobuf-dvb +videobuf-vmalloc +videodev +viperboard +viperboard_adc +virtio-rng +virtio_scsi +virtual +vivi +vlsi_ir +vmac +vme +vme_vmivme7805 +vmwgfx +vmxnet3 +vp27smpx +vringh +vsock +vsxxxaa +vt8231 +vt8623fb +vub300 +vx855 +vxge +vxlan +w1_bq27000 +w1_ds2408 +w1_ds2413 +w1_ds2423 +w1_ds2431 +w1_ds2433 +w1_ds2760 +w1_ds2780 +w1_ds2781 +w1_ds28e04 +w1-gpio +w1_smem +w1_therm +w5100 +w5300 +w6692 +w83781d +w83791d +w83792d +w83793 +w83795 +w83977af_ir +w83l785ts +w83l786ng +w9966 +wacom +wacom_i2c +wacom_w8001 +walkera0701 +wanxl +warrior +wbsd +wcn36xx +wdrtas +wdt_pci +whci +whci-hcd +whc-rc +wil6210 +wimax +wire +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wlcore +wlcore_sdio +wlcore_spi +wm831x_backup +wm831x_bl +wm831x-dcdc +wm831x-hwmon +wm831x-isink +wm831x-ldo +wm831x-on +wm831x_power +wm831x-ts +wm831x_wdt +wm8350-hwmon +wm8350_power +wm8350-regulator +wm8350_wdt +wm8400-regulator +wm8739 +wm8775 +wm8994-regulator +wp512 +wusbcore +wusb-wa +x25 +x25_asy +xc4000 +xc5000 +xcbc +xfrm4_mode_beet +xfrm4_mode_transport +xfrm4_mode_tunnel +xfrm4_tunnel +xfrm6_mode_beet +xfrm6_mode_ro +xfrm6_mode_transport +xfrm6_mode_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_ipcomp +xfrm_user +xfs +xgmac +xilinx_uartps +xor +xpad +xprtrdma +x_tables +xt_addrtype +xt_AUDIT +xt_bpf +xt_CHECKSUM +xt_CLASSIFY +xt_cluster +xt_comment +xt_connbytes +xt_connlabel +xt_connlimit +xt_connmark +xt_CONNSECMARK +xt_conntrack +xt_cpu +xt_CT +xt_dccp +xt_devgroup +xt_dscp +xt_DSCP +xt_ecn +xt_esp +xt_hashlimit +xt_helper +xt_hl +xt_HL +xt_HMARK +xt_IDLETIMER +xt_iprange +xt_ipvs +xtkbd +xt_LED +xt_length +xt_limit +xt_LOG +xt_mac +xt_mark +xt_multiport +xt_nat +xt_NETMAP +xt_nfacct +xt_NFLOG +xt_NFQUEUE +xt_osf +xt_owner +xt_physdev +xt_pkttype +xt_policy +xt_quota +xt_rateest +xt_RATEEST +xt_realm +xt_recent +xt_REDIRECT +xts +xt_sctp +xt_SECMARK +xt_set +xt_socket +xt_state +xt_statistic +xt_string +xt_tcpmss +xt_TCPMSS +xt_TCPOPTSTRIP +xt_tcpudp +xt_TEE +xt_time +xt_TPROXY +xt_TRACE +xt_u32 +xusbatm +yam +yealink +yellowfin +zaurus +zd1201 +zd1211rw +zforce_ts +zhenhua +zl10036 +zl10039 +zl10353 +zl6100 +zlib +zr364xx --- linux-3.13.0.orig/debian.master/changelog +++ linux-3.13.0/debian.master/changelog @@ -0,0 +1,12351 @@ +linux (3.13.0-29.53) trusty; urgency=low + + [ Upstream Kernel Changes ] + + * futex-prevent-requeue-pi-on-same-futex.patch futex: Forbid uaddr == + uaddr2 in futex_requeue(..., requeue_pi=1) + - LP: #1326367 + - CVE-2014-3153 + * futex: Validate atomic acquisition in futex_lock_pi_atomic() + - LP: #1326367 + - CVE-2014-3153 + * futex: Always cleanup owner tid in unlock_pi + - LP: #1326367 + - CVE-2014-3153 + * futex: Make lookup_pi_state more robust + - LP: #1326367 + - CVE-2014-3153 + + -- Brad Figg Wed, 04 Jun 2014 08:25:41 -0700 + +linux (3.13.0-29.52) trusty; urgency=low + + [ Luis Henriques ] + + * Release Tracking Bug + - re-used previous tracking bug + + [ Adam Conrad ] + + * [Config] Normalize AHCI configs on powerpc/ppc64el with the rest of the + architectures + - LP: #1323980 + + [ Tanmay Inamdar ] + + * SAUCE: Add MSI/MSI-X driver for APM PCI bus + - LP: #1318977 + + -- Luis Henriques Wed, 28 May 2014 09:38:41 +0100 + +linux (3.13.0-28.51) trusty; urgency=low + + [ Luis Henriques ] + + * Release Tracking Bug + - LP: #1322112 + + [ Adam Lee ] + + * SAUCE: (no-up) rtlwifi: rtl8723be: disable MSI interrupts mode + - LP: #1310512, #1320070 + + [ Andy Whitcroft ] + + * [Packaging] ppc64el is a powerpc kernel arch and needs its quirks + - LP: #1318848 + + [ Ben Collins ] + + * [Config] Switch to grub-ieee1275 as recommended on book3e systems + - LP: #1318629 + + [ Upstream Kernel Changes ] + + * Revert "PCI: Enable INTx in pci_reenable_device() only when MSI/MSI-X + not enabled" + - LP: #1320946 + * Bluetooth: allocate static minor for vhci + - LP: #1317336 + * core, nfqueue, openvswitch: Orphan frags in skb_zerocopy and handle + errors + - LP: #1320946 + * __dentry_path() fixes + - LP: #1320946 + * drm/i915: quirk invert brightness for Acer Aspire 5336 + - LP: #1320946 + * w1: fix w1_send_slave dropping a slave id + - LP: #1320946 + * ARM: 7954/1: mm: remove remaining domain support from ARMv6 + - LP: #1320946 + * matroxfb: restore the registers M_ACCESS and M_PITCH + - LP: #1320946 + * framebuffer: fix cfb_copyarea + - LP: #1320946 + * mach64: use unaligned access + - LP: #1320946 + * mach64: fix cursor when character width is not a multiple of 8 pixels + - LP: #1320946 + * tgafb: fix mode setting with fbset + - LP: #1320946 + * tgafb: fix data copying + - LP: #1320946 + * hvc: ensure hvc_init is only ever called once in hvc_console.c + - LP: #1320946 + * ARM: dts: Keep G3D regulator always on for exynos5250-arndale + - LP: #1320946 + * PCI: mvebu: Fix potential issue in range parsing + - LP: #1320946 + * usb: dwc3: fix wrong bit mask in dwc3_event_devt + - LP: #1320946 + * x86, AVX-512: AVX-512 Feature Detection + - LP: #1320946 + * x86, AVX-512: Enable AVX-512 States Context Switch + - LP: #1320946 + * s390/cio: fix driver callback initialization for ccw consoles + - LP: #1320946 + * ARM: Fix default CPU selection for ARCH_MULTI_V5 + - LP: #1320946 + * omap3isp: preview: Fix the crop margins + - LP: #1320946 + * ACPICA: Restore code that repairs NULL package elements in return + values. + - LP: #1320946 + * media: gspca: sn9c20x: add ID for Genius Look 1320 V2 + - LP: #1320946 + * m88rs2000: add caps FE_CAN_INVERSION_AUTO + - LP: #1320946 + * m88rs2000: prevent frontend crash on continuous transponder scans + - LP: #1320946 + * mmc: sdhci-bcm-kona: fix build errors when built-in + - LP: #1320946 + * usb: musb: avoid NULL pointer dereference + - LP: #1320946 + * uvcvideo: Do not use usb_set_interface on bulk EP + - LP: #1320946 + * drm/i915: Don't clobber CHICKEN_PIPESL_1 on BDW + - LP: #1320946 + * usb: dwc3: fix randconfig build errors + - LP: #1320946 + * usb: gadget: atmel_usba: fix crashed during stopping when DEBUG is + enabled + - LP: #1320946 + * blktrace: fix accounting of partially completed requests + - LP: #1320946 + * rtlwifi: rtl8192cu: Fix too long disable of IRQs + - LP: #1320946 + * rtlwifi: rtl8192se: Fix too long disable of IRQs + - LP: #1320946 + * rtlwifi: rtl8188ee: Fix too long disable of IRQs + - LP: #1320946 + * rtlwifi: rtl8723ae: Fix too long disable of IRQs + - LP: #1320946 + * xhci: Prevent runtime pm from autosuspending during initialization + - LP: #1320946 + * staging:serqt_usb2: Fix sparse warning restricted __le16 degrades to + integer + - LP: #1320946 + * mtd: atmel_nand: Disable subpage NAND write when using Atmel PMECC + - LP: #1320946 + * iwlwifi: dvm: take mutex when sending SYNC BT config command + - LP: #1320946 + * virtio_balloon: don't softlockup on huge balloon changes. + - LP: #1320946 + * arm64: Make DMA coherent and strongly ordered mappings not executable + - LP: #1320946 + * arm64: Do not synchronise I and D caches for special ptes + - LP: #1320946 + * ARM: OMAP2+: INTC: Acknowledge stuck active interrupts + - LP: #1320946 + * ARM: dts: am33xx: correcting dt node unit address for usb + - LP: #1320946 + * mtip32xx: Set queue bounce limit + - LP: #1320946 + * mtip32xx: Unmap the DMA segments before completing the IO request + - LP: #1320946 + * mtip32xx: mtip_async_complete() bug fixes + - LP: #1320946 + * ath9k: fix ready time of the multicast buffer queue + - LP: #1320946 + * KVM: s390: Optimize ucontrol path + - LP: #1320946 + * mei: fix memory leak of pending write cb objects + - LP: #1320946 + * usb: gadget: tcm_usb_gadget: stop format strings + - LP: #1320946 + * usb: phy: Add ulpi IDs for SMSC USB3320 and TI TUSB1210 + - LP: #1320946 + * USB: unbind all interfaces before rebinding any + - LP: #1320946 + * IB/ipath: Fix potential buffer overrun in sending diag packet routine + - LP: #1320946 + * IB/qib: Fix debugfs ordering issue with multiple HCAs + - LP: #1320946 + * IB/qib: add missing braces in do_qib_user_sdma_queue_create() + - LP: #1320946 + * IB/nes: Return an error on ib_copy_from_udata() failure instead of NULL + - LP: #1320946 + * ALSA: hda/realtek - Restore default value for ALC283 + - LP: #1320946 + * mfd: sec-core: Fix possible NULL pointer dereference when i2c_new_dummy + error + - LP: #1320946 + * regulator: arizona-ldo1: Correct default regulator init_data + - LP: #1320946 + * ASoC: cs42l73: Fix mask bits for SOC_VALUE_ENUM_SINGLE + - LP: #1320946 + * ASoC: cs42l52: Fix mask bits for SOC_VALUE_ENUM_SINGLE + - LP: #1320946 + * drm/i915: Do not dereference pointers from ring buffer in evict event + - LP: #1320946 + * mfd: Include all drivers in subsystem menu + - LP: #1320946 + * mfd: max8997: Fix possible NULL pointer dereference on i2c_new_dummy + error + - LP: #1320946 + * mfd: max77686: Fix possible NULL pointer dereference on i2c_new_dummy + error + - LP: #1320946 + * mfd: max8998: Fix possible NULL pointer dereference on i2c_new_dummy + error + - LP: #1320946 + * mfd: max8925: Fix possible NULL pointer dereference on i2c_new_dummy + error + - LP: #1320946 + * mfd: 88pm860x: Fix I2C device resource leak on regmap init fail + - LP: #1320946 + * mfd: 88pm860x: Fix possible NULL pointer dereference on i2c_new_dummy + error + - LP: #1320946 + * mfd: max77693: Fix possible NULL pointer dereference on i2c_new_dummy + error + - LP: #1320946 + * mfd: 88pm800: Fix I2C device resource leak if probe fails + - LP: #1320946 + * mfd: tps65910: Fix possible invalid pointer dereference on + regmap_add_irq_chip fail + - LP: #1320946 + * MIPS: KVM: Pass reserved instruction exceptions to guest + - LP: #1320946 + * ASoC: cs42l51: Fix SOC_DOUBLE_R_SX_TLV shift values for ADC, PCM, and + Analog kcontrols + - LP: #1320946 + * mac80211: fix potential use-after-free + - LP: #1320946 + * mac80211: fix suspend vs. authentication race + - LP: #1320946 + * mac80211: fix WPA with VLAN on AP side with ps-sta again + - LP: #1320946 + * pid: get pid_t ppid of task in init_pid_ns + - LP: #1320946 + * audit: restore order of tty and ses fields in log output + - LP: #1320946 + * audit: convert PPIDs to the inital PID namespace. + - LP: #1320946 + * mfd: kempld-core: Fix potential hang-up during boot + - LP: #1320946 + * drm/i915: Fix unsafe loop iteration over vma whilst unbinding them + - LP: #1320946 + * powerpc/compat: 32-bit little endian machine name is ppcle, not ppc + - LP: #1320946 + * clk: s2mps11: Fix possible NULL pointer dereference + - LP: #1320946 + * spi: efm32: use $vendor,$device scheme for compatible string + - LP: #1320946 + * ALSA: hda - add headset mic detect quirks for three Dell laptops + - LP: #1297581, #1320946 + * KVM: PPC: Book3S HV: Fix KVM hang with CONFIG_KVM_XICS=n + - LP: #1320946 + * gpio: mxs: Allow for recursive enable_irq_wake() call + - LP: #1320946 + * nfsd4: buffer-length check for SUPPATTR_EXCLCREAT + - LP: #1320946 + * nfsd4: session needs room for following op to error out + - LP: #1320946 + * nfsd4: leave reply buffer space for failed setattr + - LP: #1320946 + * nfsd4: fix test_stateid error reply encoding + - LP: #1320946 + * nfsd: notify_change needs elevated write count + - LP: #1320946 + * dm cache: prevent corruption caused by discard_block_size > + cache_block_size + - LP: #1320946 + * dm transaction manager: fix corruption due to non-atomic transaction + commit + - LP: #1320946 + * dm: take care to copy the space map roots before locking the superblock + - LP: #1320946 + * aio: v4 ensure access to ctx->ring_pages is correctly serialised for + migration + - LP: #1320946 + * NFSD: Traverse unconfirmed client through hash-table + - LP: #1320946 + * lockd: ensure we tear down any live sockets when socket creation fails + during lockd_up + - LP: #1320946 + * drm/i915/tv: fix gen4 composite s-video tv-out + - LP: #1320946 + * dm thin: fix dangling bio in process_deferred_bios error path + - LP: #1320946 + * em28xx: fix PCTV 290e LNA oops + - LP: #1320946 + * NFSv4: Fix a use-after-free problem in open() + - LP: #1320946 + * nfsd4: fix setclientid encode size + - LP: #1320946 + * MIPS: Hibernate: Flush TLB entries in swsusp_arch_resume() + - LP: #1320946 + * ALSA: hda - Enable beep for ASUS 1015E + - LP: #1320946 + * nfsd: check passed socket's net matches NFSd superblock's one + - LP: #1320946 + * s390/bitops,atomic: add missing memory barriers + - LP: #1320946 + * IB/mthca: Return an error on ib_copy_to_udata() failure + - LP: #1320946 + * IB/ehca: Returns an error on ib_copy_to_udata() failure + - LP: #1320946 + * drm/qxl: unset a pointer in sync_obj_unref + - LP: #1320946 + * smarter propagate_mnt() + - LP: #1320946 + * don't bother with {get,put}_write_access() on non-regular files + - LP: #1320946 + * reiserfs: fix race in readdir + - LP: #1320946 + * drm/vmwgfx: correct fb_fix_screeninfo.line_length + - LP: #1320946 + * ALSA: hda - Fix silent speaker output due to mute LED fixup + - LP: #1320946 + * drm/radeon: clear needs_reset flag if IB test fails + - LP: #1320946 + * drm/radeon: call drm_edid_to_eld when we update the edid + - LP: #1320946 + * drm/radeon: fix endian swap on hawaii clear state buffer setup + - LP: #1320946 + * drm/radeon: fix typo in spectre_golden_registers + - LP: #1320946 + * sh: fix format string bug in stack tracer + - LP: #1320946 + * ocfs2: dlm: fix lock migration crash + - LP: #1320946 + * ocfs2: dlm: fix recovery hung + - LP: #1320946 + * ocfs2: do not put bh when buffer_uptodate failed + - LP: #1320946 + * ocfs2: fix panic on kfree(xattr->name) + - LP: #1320946 + * xattr: guard against simultaneous glibc header inclusion + - LP: #1320946 + * drm/i915: move power domain init earlier during system resume + - LP: #1320946 + * Skip intel_crt_init for Dell XPS 8700 + - LP: #1320946 + * dm cache: fix a lock-inversion + - LP: #1320946 + * thinkpad_acpi: Fix inconsistent mute LED after resume + - LP: #1320946 + * iser-target: Add missing se_cmd put for WRITE_PENDING in tx_comp_err + - LP: #1320946 + * iscsi-target: Fix ERL=2 ASYNC_EVENT connection pointer bug + - LP: #1320946 + * Target/sbc: Initialize COMPARE_AND_WRITE write_sg scatterlist + - LP: #1320946 + * mm: page_alloc: spill to remote nodes before waking kswapd + - LP: #1320946 + * mm: try_to_unmap_cluster() should lock_page() before mlocking + - LP: #1320946 + * mm: hugetlb: fix softlockup when a large number of hugepages are freed. + - LP: #1320946 + * hung_task: check the value of "sysctl_hung_task_timeout_sec" + - LP: #1320946 + * DRM: armada: fix corruption while loading cursors + - LP: #1320946 + * ALSA: ice1712: Fix boundary checks in PCM pointer ops + - LP: #1320946 + * lib/percpu_counter.c: fix bad percpu counter state during suspend + - LP: #1320946 + * md/raid1: r1buf_pool_alloc: free allocate pages when subsequent + allocation fails. + - LP: #1320946 + * ALSA: hda - add headset mic detect quirk for a Dell laptop + - LP: #1297581, #1320946 + * b43: Fix machine check error due to improper access of + B43_MMIO_PSM_PHY_HDR + - LP: #1320946 + * x86-64, modify_ldt: Ban 16-bit segments on 64-bit kernels + - LP: #1320946 + * target/tcm_fc: Fix use-after-free of ft_tpg + - LP: #1320946 + * ib_srpt: Use correct ib_sg_dma primitives + - LP: #1320946 + * Linux 3.13.11.1 + - LP: #1320946 + * Linux 3.13.11.2 + - LP: #1320946 + * hp-wireless: new driver for hp wireless button for Windows 8 + - LP: #1303737 + * x86, platform: Make HP_WIRELESS option text more descriptive + - LP: #1303737 + * ACPI: blacklist win8 OSI for Dell Inspiron 7737 + - LP: #1288161 + + -- Luis Henriques Thu, 22 May 2014 12:20:44 +0100 + +linux (3.13.0-27.50) trusty; urgency=low + + [ Brad Figg ] + + * Revert "rtlwifi: Set the link state" + + -- Brad Figg Thu, 15 May 2014 10:21:43 -0700 + +linux (3.13.0-27.49) trusty; urgency=low + + [ Brad Figg ] + + * Revert "SAUCE: (no-up) HID: rmi: do not stop the device at the end of + probe" + * Revert "SAUCE: (no-up) HID: rmi: introduce RMI driver for Synaptics + touchpads" + * Revert "[Config] CONFIG_HID_RMI=m" + + -- Brad Figg Wed, 14 May 2014 10:29:07 -0700 + +linux (3.13.0-26.48) trusty; urgency=low + + [ Benjamin Tissoires ] + + * SAUCE: (no-up) HID: rmi: introduce RMI driver for Synaptics touchpads + - LP: #1305522 + * SAUCE: (no-up) HID: rmi: do not stop the device at the end of probe + - LP: #1305522 + + [ Kamal Mostafa ] + + * Merged back Ubuntu-3.13.0-24.47 security release + * Revert "n_tty: Fix n_tty_write crash when echoing in raw mode" + - LP: #1314762 + * Release Tracking Bug + - LP: #1316835 + + [ Tim Gardner ] + + * [Config] CONFIG_HID_RMI=m + - LP: #1305522 + * [Config] CONFIG_CRYPTO_DEV_NX=n for ppc64el + - LP: #1314625 + * [Config] CONFIG_ZSWAP=y + - LP: #1315203 + * Add rpcsec_gss_krb5 to generic inclusion list + - LP: #769527 + + [ Upstream Kernel Changes ] + + * HID: hidraw: make comment more accurate and nicer + - LP: #1305522 + * HID: remove hid_get_raw_report in struct hid_device + - LP: #1305522 + * HID: i2c-hid: implement ll_driver transport-layer callbacks + - LP: #1305522 + * HID: add inliners for ll_driver transport-layer callbacks + - LP: #1305522 + * HID: Add transport-driver callbacks to the hid_ll_driver struct + - LP: #1305522 + * drm/nouveau: fail runtime pm properly. + - LP: #1313986 + * drm/nouveau: don't suspend/resume display on runtime s/r + - LP: #1313986 + * n_tty: Fix n_tty_write crash when echoing in raw mode + - LP: #1314762 + - CVE-2014-0196 + * floppy: ignore kernel-only members in FDRAWCMD ioctl input + - LP: #1316729 + - CVE-2014-1737 + * floppy: don't write kernel-only members to FDRAWCMD ioctl output + - LP: #1316735 + - CVE-2014-1738 + + -- Kamal Mostafa Tue, 06 May 2014 15:30:29 -0700 + +linux (3.13.0-25.47) trusty; urgency=low + + [ Joseph Salisbury ] + + * Release Tracking Bug + - LP: #1313868 + + [ Adam Lee ] + + * [Config] CONFIG_RTL8723BE=m, CONFIG_RTL8723_COMMON=m + - LP: #1240940 + + [ Alex Hung ] + + * SAUCE: (no-up) dell-led: add mic mute led interface + - LP: #1308297 + + [ Andy Whitcroft ] + + * SAUCE: (no-up) powerpc: Increase COMMAND_LINE_SIZE to 2048 from 512. + - LP: #1306677 + + [ Ben Collins ] + + * [Config] Disable PAMU on Freescale kernels + - LP: #1311738 + + [ Tim Gardner ] + + * Revert "SAUCE: x86, hyperv: bypass the timer_irq_works() check" + - LP: #1311683 + * SAUCE: (no-up) ALSA: usb-audio: Suppress repetitive debug messages from + retire_playback_urb() + - LP: #1305133 + * SAUCE: (no-up) 'BUG:' message unnecessarily triggers kerneloops + - LP: #1305480 + * [Config] CONFIG_POWERNV_CPUFREQ=m + - LP: #1309576 + * [Config] CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y for ppc64el + - LP: #1309576 + * [Config] CONFIG_TRANSPARENT_HUGEPAGE=n for arm64 + - LP: #1309221 + * [Config] CONFIG_MEMCG_KMEM=y + - LP: #1309586 + * [Config] CONFIG_CRASH_DUMP=y for ppc64el + - LP: #1312783 + + [ Upstream Kernel Changes ] + + * Revert "rtlwifi: rtl8188ee: enable MSI interrupts mode" + - LP: #1310512 + * mac80211: add length check in ieee80211_is_robust_mgmt_frame() + - LP: #1240940 + * rtlwifi: rtl8723ae: rtl8723-common: Create new driver for common code + - LP: #1240940 + * rtlwifi: rtl8723ae: rtl8723-common: Copy common firmware code + - LP: #1240940 + * rtlwifi: rtl8723ae: rtl8723-common: Copy common dynamic power + management code + - LP: #1240940 + * rtlwifi: rtl8723be: Add new driver + - LP: #1240940 + * selinux: correctly label /proc inodes in use before the policy is + loaded + - LP: #1309007 + * net: sctp: fix skb leakage in COOKIE ECHO path of chunk->auth_chunk + - LP: #1309007 + * bridge: multicast: add sanity check for query source addresses + - LP: #1309007 + * tipc: allow connection shutdown callback to be invoked in advance + - LP: #1309007 + * tipc: fix connection refcount leak + - LP: #1309007 + * tipc: drop subscriber connection id invalidation + - LP: #1309007 + * tipc: fix memory leak during module removal + - LP: #1309007 + * tipc: don't log disabled tasklet handler errors + - LP: #1309007 + * inet: frag: make sure forced eviction removes all frags + - LP: #1309007 + * net: unix: non blocking recvmsg() should not return -EINTR + - LP: #1309007 + * ipv6: Fix exthdrs offload registration. + - LP: #1309007 + * bnx2: Fix shutdown sequence + - LP: #1309007 + * pkt_sched: fq: do not hold qdisc lock while allocating memory + - LP: #1309007 + * Xen-netback: Fix issue caused by using gso_type wrongly + - LP: #1309007 + * vlan: Set correct source MAC address with TX VLAN offload enabled + - LP: #1309007 + * tcp: tcp_release_cb() should release socket ownership + - LP: #1309007 + * bridge: multicast: add sanity check for general query destination + - LP: #1309007 + * bridge: multicast: enable snooping on general queries only + - LP: #1309007 + * net: socket: error on a negative msg_namelen + - LP: #1309007 + * bonding: set correct vlan id for alb xmit path + - LP: #1309007 + * eth: fec: Fix lost promiscuous mode after reconnecting cable + - LP: #1309007 + * ipv6: Avoid unnecessary temporary addresses being generated + - LP: #1309007 + * ipv6: ip6_append_data_mtu do not handle the mtu of the second fragment + properly + - LP: #1309007 + * net: cdc_ncm: fix control message ordering + - LP: #1309007 + * vxlan: fix potential NULL dereference in arp_reduce() + - LP: #1309007 + * vxlan: fix nonfunctional neigh_reduce() + - LP: #1309007 + * tcp: syncookies: do not use getnstimeofday() + - LP: #1309007 + * rtnetlink: fix fdb notification flags + - LP: #1309007 + * ipmr: fix mfc notification flags + - LP: #1309007 + * ip6mr: fix mfc notification flags + - LP: #1309007 + * net: micrel : ks8851-ml: add vdd-supply support + - LP: #1309007 + * netpoll: fix the skb check in pkt_is_ns + - LP: #1309007 + * tipc: fix spinlock recursion bug for failed subscriptions + - LP: #1309007 + * ip_tunnel: Fix dst ref-count. + - LP: #1309007 + * tg3: Do not include vlan acceleration features in vlan_features + - LP: #1309007 + * virtio-net: correct error handling of virtqueue_kick() + - LP: #1309007 + * usbnet: include wait queue head in device structure + - LP: #1309007 + * vlan: Set hard_header_len according to available acceleration + - LP: #1309007 + * vhost: fix total length when packets are too short + - LP: #1309007 + - CVE-2014-0077 + * tcp: fix get_timewait4_sock() delay computation on 64bit + - LP: #1309007 + * xen-netback: remove pointless clause from if statement + - LP: #1309007 + * ipv6: some ipv6 statistic counters failed to disable bh + - LP: #1309007 + * netlink: don't compare the nul-termination in nla_strcmp + - LP: #1309007 + * xen-netback: disable rogue vif in kthread context + - LP: #1309007 + * Call efx_set_channels() before efx->type->dimension_resources() + - LP: #1309007 + * net: vxlan: fix crash when interface is created with no group + - LP: #1309007 + * isdnloop: Validate NUL-terminated strings from user. + - LP: #1309007 + * isdnloop: several buffer overflows + - LP: #1309007 + * powernow-k6: disable cache when changing frequency + - LP: #1309007 + * powernow-k6: correctly initialize default parameters + - LP: #1309007 + * powernow-k6: reorder frequencies + - LP: #1309007 + * ARC: [nsimosci] Change .dts to use generic 8250 UART + - LP: #1309007 + * ARC: [nsimosci] Unbork console + - LP: #1309007 + * futex: Allow architectures to skip futex_atomic_cmpxchg_inatomic() test + - LP: #1309007 + * m68k: Skip futex_atomic_cmpxchg_inatomic() test + - LP: #1309007 + * crypto: ghash-clmulni-intel - use C implementation for setkey() + - LP: #1309007 + * Linux 3.13.10 + - LP: #1309007 + * cpufreq: powernv: cpufreq driver for powernv platform + - LP: #1309576 + * cpufreq: powernv: Use cpufreq_frequency_table.driver_data to store + pstate ids + - LP: #1309576 + * cpufreq: powernv: Select CPUFreq related Kconfig options for powernv + - LP: #1309576 + * support Thinkpad X1 Carbon 2nd generation's adaptive keyboard + - LP: #1309609 + * save and restore adaptive keyboard mode for suspend and,resume + - LP: #1309609 + * user namespace: fix incorrect memory barriers + - LP: #1311683 + * Char: ipmi_bt_sm, fix infinite loop + - LP: #1311683 + * x86, hyperv: Bypass the timer_irq_works() check + - LP: #1311683 + * x86: Adjust irq remapping quirk for older revisions of 5500/5520 + chipsets + - LP: #1311683 + * PCI: designware: Fix RC BAR to be single 64-bit non-prefetchable memory + BAR + - LP: #1311683 + * PCI: designware: Fix iATU programming for cfg1, io and mem viewport + - LP: #1311683 + * ACPI / button: Add ACPI Button event via netlink routine + - LP: #1311683 + * PCI: Enable INTx in pci_reenable_device() only when MSI/MSI-X not + enabled + - LP: #1311683 + * staging: comedi: 8255_pci: initialize MITE data window + - LP: #1311683 + * tty: Set correct tty name in 'active' sysfs attribute + - LP: #1311683 + * tty: Fix low_latency BUG + - LP: #1311683 + * SCSI: sd: don't fail if the device doesn't recognize SYNCHRONIZE CACHE + - LP: #1311683 + * pid_namespace: pidns_get() should check task_active_pid_ns() != NULL + - LP: #1311683 + * Bluetooth: Fix removing Long Term Key + - LP: #1311683 + * ima: restore the original behavior for sending data with ima template + - LP: #1311683 + * backing_dev: fix hung task on sync + - LP: #1311683 + * bdi: avoid oops on device removal + - LP: #1311683 + * xfs: fix directory hash ordering bug + - LP: #1311683 + * Btrfs: skip submitting barrier for missing device + - LP: #1311683 + * Btrfs: fix deadlock with nested trans handles + - LP: #1311683 + * ext4: fix error return from ext4_ext_handle_uninitialized_extents() + - LP: #1311683 + * ext4: fix partial cluster handling for bigalloc file systems + - LP: #1311683 + * ext4: fix premature freeing of partial clusters split across leaf + blocks + - LP: #1311683 + * jffs2: Fix segmentation fault found in stress test + - LP: #1311683 + * jffs2: Fix crash due to truncation of csize + - LP: #1311683 + * jffs2: avoid soft-lockup in jffs2_reserve_space_gc() + - LP: #1311683 + * jffs2: remove from wait queue after schedule() + - LP: #1311683 + * sparc32: fix build failure for arch_jump_label_transform + - LP: #1311683 + * sparc64: don't treat 64-bit syscall return codes as 32-bit + - LP: #1311683 + * sparc64: Make sure %pil interrupts are enabled during hypervisor yield. + - LP: #1311683 + * wait: fix reparent_leader() vs EXIT_DEAD->EXIT_ZOMBIE race + - LP: #1311683 + * exit: call disassociate_ctty() before exit_task_namespaces() + - LP: #1311683 + * Linux 3.13.11 + - LP: #1311683 + * powerpc/le: Enable RTAS events support + - LP: #1312230 + * net: ipv4: current group_info should be put after using. + - CVE-2014-2851 + * powerpc/relocate fix relocate processing in LE mode + - LP: #1312783 + + -- Joseph Salisbury Mon, 28 Apr 2014 15:02:45 -0400 + +linux (3.13.0-24.47) trusty; urgency=low + + [ Peter Hurley ] + + * n_tty: Fix n_tty_write crash when echoing in raw mode + + -- Brad Figg Wed, 30 Apr 2014 15:08:31 -0700 + +linux (3.13.0-24.46) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i -- add nvme devices to block-modules udeb + - LP: #1303710 + + [ Paolo Pisati ] + + * [Config] build vexpress a9 dtb + - LP: #1303657 + * [Config] disable HVC_DCC + - LP: #1303657 + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1305158 + * rebase to v3.13.9 + * CONFIG_RTLBTCOEXIST=m + - LP: #1296591 + + [ Upstream Kernel Changes ] + + * HID: Bluetooth: hidp: make sure input buffers are big enough + - LP: #1252874 + * ACPI / video: Add systems that should favour native backlight interface + - LP: #1303419 + * rds: prevent dereference of a NULL device in rds_iw_laddr_check + - LP: #1302222 + - CVE-2014-2678 + * x86/efi: Fix 32-bit fallout + - LP: #1301590 + * drm/nouveau/devinit: tidy up the subdev class definition + - LP: #1158689 + * drm/nouveau/device: provide a way for devinit to mark engines as + disabled + - LP: #1158689 + * drm/nv50-/devinit: prevent use of engines marked as disabled by + hw/vbios + - LP: #1158689 + * rtlwifi: btcoexist: Add new mini driver + - LP: #1296591 + * rtlwifi: Prepare existing drivers for new driver + - LP: #1296591 + * rtlwifi: add MSI interrupts mode support + - LP: #1296591 + * rtlwifi: rtl8188ee: enable MSI interrupts mode + - LP: #1296591 + + [ Upstream Kernel Changes ] + + * rebase to v3.13.9 + + -- Tim Gardner Fri, 04 Apr 2014 09:26:27 -0400 + +linux (3.13.0-23.45) trusty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1302083 + + [ Emil Goode ] + + * SAUCE: (no-up) brcmsmac: fix deadlock on missing firmware + - LP: #1300416 + + [ Moni Shoua ] + + * SAUCE: (no-up) IB/core: Don't resolve passive side RoCE L2 address in cma req handler + Merged at the request of Mellanox engineers. It shold be making its way upstream. + http://www.spinics.net/lists/linux-rdma/msg19417.html + + [ Or Gerlitz ] + + * [Config] CONFIG_INFINIBAND_USNIC=m + + [ Tim Gardner ] + + * [Config] CONFIG_MLX4_EN_VXLAN=y + + [ Upstream Kernel Changes ] + + * This set of patches essentially updates the infiniband subsystem to 3.14 plus some + bug fixes from 3.15. The initial set of commits were determined using: + + git log --pretty=oneline --reverse v3.13..cd6362befe4cc7bf589a5236d2a780af2d47bcc9 -- drivers/infiniband drivers/net/ethernet/mellanox include/linux/mlx* include/rdma + + A few tree-wide patches were dropped since they were not essential. + This is the list of commits that were actually applied. As you can see there were + a few back ports, but all were simple context collisions and easily resolved. + + (cherry picked from commit 7c6d74d23a33a946bcf08ba2d3e52d31943b7342) + (cherry picked from commit 7b25d81b7ff03bb1893a9c7f97797b891a772deb) + (cherry picked from commit 73e74ab4e0d030f28d640507998156a22d4211f8) + (cherry picked from commit eb17711bc1d6611e934af5b6dabc225936084128) + (cherry picked from commit 8e1a28e8e6797449dfdfa4739002d1e5939355a8) + (cherry picked from commit 84c864038d6d991be81344fc3168ec2c2f7a8d06) + (cherry picked from commit d03a68f8217ea03492e4f7928db222dc6544792a) + (cherry picked from commit be902ab122fcc59ba6a8588e820c31861d75a5a4) + (cherry picked from commit e4b59a1cb6f8feb03f356b0abfd20451f05d7470) + (cherry picked from commit 0276a330617a0cf380f09e5065299078d3d45886) + (cherry picked from commit 982290a7fe36e528af292d3e3b61939b1900bfc6) + (cherry picked from commit c5266d40b0a26546d0ebedb44dd4145088b85cb8) + (cherry picked from commit 7ffdf726cfe0d188907bdbb0e7729fb35a69c219) + (cherry picked from commit 837052d0ccc5a789a578f8b628ba154b63bd51ea) + (cherry picked from commit c0623e587d869b4b18e077d64a8524ea364b5b77) + (cherry picked from commit ad7d4eaed995d76fb24a18e202fdf5072197ff0a) + (cherry picked from commit 2156d9a8ac0202f0158d407063cb850afffd3f56) + (cherry picked from commit b912b2f8fc71df4c3ffa7a9fe2c2227e8bcdaa07) + (cherry picked from commit 9ba75fb0c4b92416b94640b5a043c323a457f14a) + (cherry picked from commit 74b9c3ea847f060c784e86453f1ad77dd05a7a8f) + (cherry picked from commit e6a767582942d6fd9da0ddea673f5a7017a365c7) + (cherry picked from commit fe5e8a1acc7fd877b6706053cf88c418c33fe7a3) + (cherry picked from commit be8348df6efac6b602f2ad3210139bccf0dbe3d7) + (cherry picked from commit e3cf00d0a87f025db5855a43a67c67a41fa79fef) + (cherry picked from commit 8192d4acb5c5376c0f6756f2106ab243036c8c7d) + (cherry picked from commit 301a0dd68e5ddd22d992a58f466b621987d9df3b) + (cherry picked from commit 2183b990b67b761f81c68a18f60df028e080cf05) + (cherry picked from commit 8af94ac66a4d53a96278ecbb9ef2e8592f0d9ba3) + (cherry picked from commit 256d6a6ac52ee02e897cec88ecc96c3ae7f9cb88) + (cherry picked from commit 60b215e8b267f911751a043de63181dab1b69706) + (cherry picked from commit b85caf479b577f000067002259539ad4341d4530) + (cherry picked from commit 3f92bed3d6c073f41efc0777ecd3442aa1f03d20) + (cherry picked from commit 6214105460842759020bdd7f4dbb50afa1be9d17) + (cherry picked from commit c7845bcafe4d2ecd5c479fa64d1b425c21dde17c) + (cherry picked from commit e45e614e4015a489d2f8013eaed45d498d884e86) + (cherry picked from commit 248567f79304b953ea492fb92ade097b62ed09b2) + (cherry picked from commit 6a54d9f9a04ed35e6615a47974c1ef02ff3a62cb) + (cherry picked from commit c5f855e08a97edc107c4a3b73809ed629c1dcac1) + (cherry picked from commit 9f637f7936025aef57f247b11036bad18bb87c06) + (cherry picked from commit c30392ab5bb536fef268c22804dafded15170d14) + (cherry picked from commit 3108bccb3d9afbd32931d775f5dd5ee157eaa5a9) + (cherry picked from commit d9fe40916387bab884e458c99399c149b033506c) + (cherry picked from commit 24e42754f676d34e5c26d6b7b30f36df8004ec08) + (cherry picked from commit c1be5232d21de68f46637e617225b9b7c586451a) + (cherry picked from commit 90f1d1b41b70474bf73d07d4300196901cd81718) + (cherry picked from commit 240ae00e4d834e387f4f09e236130f520e357a70) + (back ported from commit 4de6580360867d44adecb2d05febed1c8d186c82) + (cherry picked from commit 0a9b7d59d5a8e2b97406a29a8a807bbc5ce7092e) + (cherry picked from commit a37a1a428431d3e7e9f53530b5c56ff7867bd487) + (cherry picked from commit c1c98501121eefa0888a42566ec7233a1626f678) + (back ported from commit dd5f03beb4f76ae65d76d8c22a8815e424fc607c) + (cherry picked from commit c9218a9e677856d6647ea82d821f22ccbffc988c) + (cherry picked from commit f088cbb8d8547a89af258a3223657f9a69b811e4) + (cherry picked from commit 4942c0b4b64478ff45c3bbf4d40aebd66de0bcc5) + (cherry picked from commit 2d97436f5b06217beb6c91a0cd0ae0f0d79b61cc) + (cherry picked from commit 5db5765e255de4072eb0e35facfeafce53af001b) + (cherry picked from commit 61f78268936e781a104b4ac06b7e47d760800c40) + (cherry picked from commit 6dcebe614c667fca73aaf0cfbd1e70bc9179538e) + (cherry picked from commit d1db47c5eed89a1c8b60e780aeadd870bb0d3894) + (cherry picked from commit af2e2e35a23e4aeecfe4332a7140c81e0f09b7e3) + (cherry picked from commit 7b85627b9f02f9b0fb2ef5f021807f4251135857) + (back ported from commit d487ee77740ccf79d7dc1935d4daa77887283028) + (cherry picked from commit 297e0dad720664dad44baa2cdd13f871979fb58c) + (cherry picked from commit eb6ab13267be87dcad3e611500b7cb404ed4479c) + (cherry picked from commit a3a5a82627492c8947d8866ddf421e9248088466) + (cherry picked from commit dc87a90f5d61d7f01cfb63d92d5eaa27718e5b19) + (cherry picked from commit 9bd626e79df67b2ba3b0c91a4640ab7bca1af04d) + (cherry picked from commit 40aca6ffcac57dd9c65877a59a8bbb210c4691ca) + (cherry picked from commit 37721d8501a9a1fbe87527c24d127a914b29fd7f) + (cherry picked from commit ed4c54e5b4baf55a7a67a80fa766334855c94854) + (cherry picked from commit 2f85d24e604c1532723c4b5791816b533baed2c3) + (cherry picked from commit 990acea616e99355703b503c1e50fb9c7ddff6b9) + (cherry picked from commit f282651de676d10e395bc7923f0087fbbba12ed7) + (cherry picked from commit 31ab8acbf6618c89fec77f7706df7daaa319feb5) + (cherry picked from commit 9392fa06411cf93885c4cafc8058085d98f52fec) + (cherry picked from commit 27cdef637c25705b433d5c4deeef4cf8dcb75d6a) + (cherry picked from commit 8ce96afa8239f13bdf5ab35839bac46c103bbedc) + (cherry picked from commit 6cd28f044b47aeeba91807d97d6f3ea5a048e88d) + (cherry picked from commit 5462eddd7a78131ccb514d52473625d99769215e) + (cherry picked from commit 05633102d85b50f35325dfbedafcedd6c5b3264c) + (cherry picked from commit 437708c44395a11e474fb33b4fd7f29483118e51) + (cherry picked from commit d9d5713ca628dc211d8b4a1da5fb9e0cfe592b92) + (cherry picked from commit a384b20e417ae0f5f1f359600b4bdcc34265b256) + (cherry picked from commit 298589b1cb626adf4beba6dd8e3cd4b64e8799be) + (cherry picked from commit e08a8761d89b7625144c3fbf0ff9643159135c96) + (cherry picked from commit 0b6e81b91070bdbe0defb9101384ebb26835e401) + (cherry picked from commit 042b9adae899e1b497282d92205d3fef42d5ca8d) + (cherry picked from commit ada388f7afad1e2e87acbfe30600fdaff9bd6327) + (cherry picked from commit 3bdb31f688276505ede23280885948e934304674) + (cherry picked from commit bde51583f49bd87e452e9504d489926638046b11) + (cherry picked from commit db81a5c374b5bd650c5e6ae85d026709751db103) + (cherry picked from commit 05bdb2ab6b09f2306f0afe0f60f4b9abffa7aba4) + (cherry picked from commit 9e9c47d07d447e09a66ee528c3ebad9ba359af6a) + (cherry picked from commit 1bde6e301cf6217da9238086c958f532b16e504d) + (cherry picked from commit 8c8a49148b95c4d7c5f58a6866a30ea02485d7a3) + (cherry picked from commit 57761d8df8efc7cc1227f9bc22e0dda01b0dd91b) + (cherry picked from commit 676687c69697d2081d25afd14ee90937d1fb0c8e) + (cherry picked from commit 9e65dc371b5c8d7476c81353137efc13cc1bdabd) + (cherry picked from commit 78c0f98cc9dd46824fa66f35f14ea24ba733d145) + (cherry picked from commit 1a4c3a3dc5fdeef2a7bdf4ac7d81df58c3c0a51e) + (cherry picked from commit d07875bd0d1517185534b5f9eef469426ba42cb9) + (cherry picked from commit ab576627c8f97c08297d81537be17df161171923) + (cherry picked from commit a80e21b3b2d151d79bb9be42334ab10d40195324) + (cherry picked from commit 9d8abf45944e4f1c18a04070fc3ed2f3ffcbbcb6) + (cherry picked from commit 4196670be786d529ab7f6c18f5077141ce1b787e) + (cherry picked from commit acc4fccf4eff5b29e545995b75de77e60ea44aae) + (cherry picked from commit 4ce5a5744a2f5479e58c6788cbe3987b8071b62e) + (cherry picked from commit ddf8bd349115c2bc85a62e3d94018c9976ac72f7) + (cherry picked from commit 5071456fe244e409adcda7226e5f0b5d1b879fd3) + (cherry picked from commit ad4885d279b63c65347220236d07669a2f59634b) + (cherry picked from commit b4a26a27287a7f81933ba016aeed6c69dd155323) + (cherry picked from commit 0f0132001fd239bb67c1f68436b95cc79de89736) + (cherry picked from commit 6ecde51dd7894ffe2f959cca1fea3ea2b9ee2394) + (cherry picked from commit 0861565f501ce3fcea9394d4b98c02b1f6de6b9e) + (cherry picked from commit f809309a251a13bd97cc189c3fa428782aab9716) + (cherry picked from commit 7d9eacf9457efc6b614665e1095336c11ad83f0d) + (cherry picked from commit fd8b48b22a2b7cdf21f15b01cae379e6159a7eea) + (cherry picked from commit a61d93d92f5c9533898098abb5f187840900aeb5) + (cherry picked from commit 09de3f1313a30d8a22e488c9a5b96a9560cae96d) + (cherry picked from commit 99932d4fc03a13bb3e94938fe25458fabc8f2fc3) + (cherry picked from commit 169a1d85d084edeb0736ad80fe439639ac938dcd) + (cherry picked from commit 367d56f7b4d5ce61e883c64f81786c7a3ae88eea) + (cherry picked from commit 57352ef4f5f19969a50d42e84b274287993b576f) + (cherry picked from commit 97989356af0ec8b1b1658d804892abb354127330) + (cherry picked from commit 56cb456746a15c1025a178466492ca4c373b1a63) + (cherry picked from commit 2a2083f7f3568c0192daa6ac0e6fa35d953f47bd) + (cherry picked from commit 7855bff42ea9938a0853321256f4c8ce3628aa73) + (cherry picked from commit de123268300fd33b7f7668fda3264059daffa6ef) + (cherry picked from commit 299603e8370a93dd5d8e8d800f0dff1ce2c53d36) + (cherry picked from commit bf5a755f5e9186406bbf50f4087100af5bd68e40) + (cherry picked from commit 600adc18eba823f9fd8ed5fec8b04f11dddf3884) + (back ported from commit b582ef0990d457f7ce8ccf827af51a575ca0b4a6) + (cherry picked from commit e27a2f839598e48bb345f9fc86d4d54c3944db50) + (back ported from commit dc01e7d3447793fd9e4090aa9d50c549848b5a18) + (cherry picked from commit b5aaab12b2b4bc4acab7384c17a87f3406e5047d) + (cherry picked from commit 920a0fde5a32fd40b4d3c94ad72f7fc7039db8e3) + (cherry picked from commit 438e38fadca2f6e57eeecc08326c8a95758594d4) + (cherry picked from commit 97a5221f56bad2e1c7e8ab55da4ac4748ef59c64) + (cherry picked from commit 02512482321c531df4abf73943529f8b44d869e2) + (cherry picked from commit bb2146bc883e86b835e30644757a6d4a649a7ce8) + (back ported from commit ca9f9f703950e5cb300526549b4f1b0a6605a5c5) + (cherry picked from commit fd8daa45f2bd9b876e0dbb9503ccc5a5252844f2) + (cherry picked from commit b97b33a3df0439401f80f041eda507d4fffa0dbf) + (cherry picked from commit 93591aaa62f89820f4ae0558f01eaf9a359738da) + (cherry picked from commit 15bffdffccb3204eb1e993f60eee65c439a03136) + (cherry picked from commit 9813337a4b16ea5b1701b1d00f7e410f5decdfa5) + (cherry picked from commit 313c2d375b1c9b648d9d4b96ec1b8185ac6a78c5) + (cherry picked from commit 28d222bbaa5122fb4bb0e607e39ab149a010e587) + (cherry picked from commit ec5709403e6893acb4f7ca40514ebd29c3116836) + (cherry picked from commit 9717218bb2982f5f214d84473c70542f1e42bfd7) + (cherry picked from commit d0ceebd7508d5bf6e81367640959aef7e0de4947) + (cherry picked from commit c120e9e03090b4f9578ca38ef4250ff3805b6e3f) + (cherry picked from commit 6ee51a4e866bbb0921180b457ed16cd172859346) + (cherry picked from commit 9cd593529c8652785bc9962acc79b6b176741f99) + (cherry picked from commit b6ffaeffaea4d92f05f5ba1ef54df407cb7c8517) + (cherry picked from commit 2f5bb473681b88819a9de28ac3a47e7737815a92) + (cherry picked from commit 5ea8bbfc49291b7e23161fe4de0bf3e4a4e34b18) + (cherry picked from commit ceb5433b3a54979216d794e45147d25c24c94999) + (cherry picked from commit aa9a2d51a3e70b15a898bec7dde3ce5726fec641) + (cherry picked from commit e81f44b66b456a7dcfbdeffeb355458cd6a58973) + (cherry picked from commit 7a2cea2aaae2d5eb5c00c49c52180c7c2c66130a) + (cherry picked from commit 05eb23893c2cf9502a9cec0c32e7f1d1ed2895c8) + (cherry picked from commit 38be0a347c91133843474e12baacd252d0fd1c30) + (cherry picked from commit 82373701be26b893eaf7372db0af84235a51998a) + (cherry picked from commit 1ab95d37bcc3ff2d69e3871e4f056bab7aed0b85) + (cherry picked from commit f74462acf8f390528c8b7937f227c6c90d017f3b) + (cherry picked from commit 449fc48866f7d84b0d9a19201de18a4dd4d3488c) + (cherry picked from commit dd41cc3bb90efd455df514899a5d3cf245182eb1) + (cherry picked from commit e471b40321a94f07d13b8a9e4b064885cf08835d) + (cherry picked from commit bfd2793c9559ae73ae021797f1d4b097c27f24be) + (cherry picked from commit b74757944d69f8cd7de5284fc7e8649d965361ab) + (cherry picked from commit d18f141a1a7cfa5ffad8433e43062b05a8d1b82a) + (cherry picked from commit 1b136de120dda625109f2afe1e3d04e256be9ec1) + (cherry picked from commit a66132f3eb514f42c49a3e8f57aab2ccd0360f06) + + * mlx4_core: Roll back round robin bitmap allocation commit for CQs, SRQs, and MPTs + * net/mlx4_core: Remove zeroed out of explicit QUERY_FUNC_CAP fields + * net/mlx4_core: Rename QUERY_FUNC_CAP fields + * net/mlx4_core: Introduce nic_info new flag in QUERY_FUNC_CAP + * net/mlx4_core: Expose physical port id as PF/VF capability + * net/mlx4_en: Implement ndo_get_phys_port_id + * net/mlx4_en: Configure the XPS queue mapping on driver load + * net/mlx4_core: Set CQE/EQE size to 64B by default + * net/mlx4_en: Ignore irrelevant hypervisor events + * net/mlx4_en: Add NAPI support for transmit side + * net/mlx4_core: Check port number for validity before accessing data + * infiniband: slight optimization of addr compare + * net/mlx4_core: Add basic support for TCP/IP offloads under tunneling + * net/mlx4_en: Add netdev support for TCP/IP offloads of vxlan tunneling + * net: mlx4: slight optimization of addr compare + * mlx4_en: Add PTP hardware clock + * mlx4_en: Only cycle port if HW timestamp config changes + * net/mlx4_core: Warn if device doesn't have enough PCI bandwidth + * net/mlx4_en: fix error return code in mlx4_en_get_qp() + * mlx4_en: Select PTP_1588_CLOCK + * net/mlx4_en: call gro handler for encapsulated frames + * RDMA/ocrdma: Fix AV_VALID bit position + * RDMA/ocrdma: Fix OCRDMA_GEN2_FAMILY macro definition + * IB/usnic: Add Cisco VIC low-level hardware driver + * IB/usnic: Change WARN_ON to lockdep_assert_held + * IB/usnic: Add struct usnic_transport_spec + * IB/usnic: Push all forwarding state to usnic_fwd.[hc] + * IB/usnic: Port over main.c and verbs.c to the usnic_fwd.h + * IB/usnic: Port over usnic_ib_qp_grp.[hc] to new usnic_fwd.h + * IB/usnic: Port over sysfs to new usnic_fwd.h + * IB/usnic: Update ABI and Version file for UDP support + * IB/usnic: Add UDP support to usnic_fwd.[hc] + * IB:usnic: Add UDP support to usnic_transport.[hc] + * IB/usnic: Add UDP support in u*verbs.c, u*main.c and u*util.h + * IB/usnic: Add UDP support in usnic_ib_qp_grp.[hc] + * IB/core: Add RDMA_TRANSPORT_USNIC_UDP + * IB/usnic: Remove superflous parentheses + * IB/usnic: Use for_each_sg instead of a for-loop + * IB/usnic: Expose flows via debugfs + * IB/usnic: Fix typo "Ignorning" -> "Ignoring" + * IB/usnic: Append documentation to usnic_transport.h and cleanup + * IB/mlx5: Remove unused code in mr.c + * mlx5_core: Remove dead code + * IB/mlx5: Fix micro UAR allocator + * IB/core: Add flow steering support for IPoIB UD traffic + * IB/core: Add support for IB L2 device-managed steering + * mlx4_core: Add support for steerable IB UD QPs + * IB/mlx4: Enable device-managed steering support for IB ports too + * IB/mlx4: Add mechanism to support flow steering over IB links + * IB/mlx4: Add support for steerable IB UD QPs + * IB/core: Ethernet L2 attributes in verbs/cm structures + * net/mlx4_core: clean up cq_res_start_move_to() + * net/mlx4_core: clean up srq_res_start_move_to() + * IB/usnic: Fix endianness-related warnings + * IB/usnic: Add dependency on CONFIG_INET + * IB/core: Add support for RDMA_NODE_USNIC_UDP + * IB/usnic: Advertise usNIC devices as RDMA_NODE_USNIC_UDP + * IB/usnic: Set userspace/kernel ABI ver to 4 + * IB/usnic: Remove unused variable in usnic_debugfs_exit() + * IB/mlx4: Fix error return code + * IB/cma: IBoE (RoCE) IP-based GID addressing + * IB/mlx4: Use IBoE (RoCE) IP based GIDs in the port GID table + * IB/mlx4: Handle Ethernet L2 parameters for IP based GID addressing + * IB/isert: seperate connection protection domains and dma MRs + * IB/isert: Avoid frwr notation, user fastreg + * IB/isert: Move fastreg descriptor creation to a function + * IB/isert: pass scatterlist instead of cmd to fast_reg_mr routine + * RDMA/ocrdma: Handle Ethernet L2 parameters for IP based GID addressing + * RDMA/ocrdma: Populate GID table with IP based gids + * IB/core: Resolve Ethernet L2 addresses when modifying QP + * IB/core: Make ib_addr a core IB module + * IB/cm: Fix missing unlock on error in cm_init_qp_rtr_attr() + * IB/mlx4: Add dependency INET + * RDMA/ocrdma: Move ocrdma_inetaddr_event outside of "#if CONFIG_IPV6" + * RDMA/ocrdma: Add dependency on INET + * IB/mlx4: Use IS_ENABLED(CONFIG_IPV6) + * IB/usnic: Use GFP_ATOMIC under spinlock + * net/mlx4_core: Remove unnecessary validation for port number + * RDMA/cma: Handle global/non-linklocal IPv6 addresses in cma_check_linklocal() + * IB/core: Fix unused variable warning + * IPoIB: Report operstate consistently when brought up without a link + * RDMA/amso1100: Add check if cache memory was allocated before freeing it + * IB/usnic: Remove unused includes of + * RDMA/cxgb4: Fix gcc warning on 32-bit arch + * mlx5_core: Fix out arg size in access_register command + * IB/mlx5: Clear out struct before create QP command + * mlx5_core: Use mlx5 core style warning + * IB/mlx5: Make sure doorbell record is visible before doorbell + * IB/mlx5: Implement modify CQ + * IB/mlx5: Add support for resize CQ + * mlx5_core: Improve debugfs readability + * mlx5_core: Fix PowerPC support + * IB/mlx5: Allow creation of QPs with zero-length work queues + * IB/mlx5: Abort driver cleanup if teardown hca fails + * IB/mlx5: Remove old field for create mkey mailbox + * IB/mlx5: Verify reserved fields are cleared + * iscsi-target: Convert gfp_t parameter to task state bitmask + * IB/mlx5: Fix RC transport send queue overhead computation + * IB/mlx5: Fix binary compatibility with libmlx5 + * IB/mlx5: Don't set "block multicast loopback" capability + * RDMA/nes: Fix error return code + * RDMA/amso1100: Fix error return code + * iser-target: Fix leak on failure in isert_conn_create_fastreg_pool + * IB/srpt: replace strict_strtoul() with kstrtoul() + * IB/mlx4: Don't allocate range of steerable UD QPs for Ethernet-only device + * IB/mlx4: Make sure GID index 0 is always occupied + * IB/mlx4: Move rtnl locking to the right place + * IB/mlx4: Do IBoE locking earlier when initializing the GID table + * IB/mlx4: Do IBoE GID table resets per-port + * IB/mlx4: Build the port IBoE GID table properly under bonding + * IB: Report using RoCE IP based gids in port caps + * RDMA/cxgb4: Add missing neigh_release in LE-Workaround path + * mlx5: Add include of because of kzalloc()/kfree() use + * IB/mlx5: Remove dependency on X86 + * IB/usnic: Fix smatch endianness error + * IB/iser: Avoid dereferencing iscsi_iser conn object when not bound to iser connection + * IB/iser: Fix use after free in iser_snd_completion() + * RDMA/ocrdma: Fix traffic class shift + * RDMA/ocrdma: Fix load time panic during GID table init + * netdevice: add queue selection fallback handler for ndo_select_queue + * net,IB/mlx: Bump all Mellanox driver versions + * net/mlx4: Support shutdown() interface + * net/mlx4_core: Fix memory access error in mlx4_QUERY_DEV_CAP_wrapper() + * net/mlx4_core: mlx4_init_slave() shouldn't access comm channel before PF is ready + * net/mlx4_core: Fix wrong dump of the vxlan offloads device capability + * net/mlx4_en: Handle vxlan steering rules for mac address changes + * net/mlx4_core: Load the IB driver when the device supports IBoE + * net/mlx4_en: Deregister multicast vxlan steering rules when going down + * net-gro: Prepare GRO stack for the upcoming tunneling support + * net-gre-gro: Add GRE support to the GRO stack + * net: gro: change GRO overflow strategy + * net: Add GRO support for UDP encapsulating protocols + * net: Export gro_find_by_type helpers + * net: Add GRO support for vxlan traffic + * net/udp_offload: Handle static checker complaints + * net/ipv4: Use non-atomic allocation of udp offloads structure instance + * net/vxlan: Go over all candidate streams for GRO matching + * gre_offload: statically build GRE offloading support + * net/mlx4_core: pass pci_device_id.driver_data to __mlx4_init_one during reset + * net/mlx4: Set number of RX rings in a utility function + * net/mlx4: Fix limiting number of IRQ's instead of RSS queues + * net/mlx4_en: Fix bad use of dev_id + * net/mlx4_en: Fix UP limit in ieee_ets->prio_tc + * net/mlx4_en: Verify mlx4_en module parameters + * net/mlx4_en: Pad ethernet packets smaller than 17 bytes + * net/mlx4_en: Move queue stopped/waked counters to be per ring + * net/mlx4: Replace mlx4_en_mac_to_u64() with mlx4_mac_to_u64() + * net/mlx4_en: Fix selftest failing on non 10G link speed + * net/mlx4_core: Fix sparse warning + * net/mlx4_en: Use union for BlueFlame WQE + * net/mlx4_en: Change Connect-X description in kconfig + * net/mlx4_en: mlx4_en_verify_params() can be static + * IB/mlx5_core: remove unreachable function call in module init + * mlx4: Adjust QP1 multiplexing for RoCE/SRIOV + * mlx4_core: For RoCE, allow slaves to set the GID entry at that slave's index + * mlx4: In RoCE allow guests to have multiple GIDS + * mlx4: Add ref counting to port MAC table for RoCE + * mlx4: Implement IP based gids support for RoCE/SRIOV + * mlx4_ib: Fix SIDR support of for UD QPs under SRIOV/RoCE + * mlx4: Activate RoCE/SRIOV + * mlx4: Call dev_kfree_skby_any instead of dev_kfree_skb. + * cxgb4/iw_cxgb4: Treat CPL_ERR_KEEPALV_NEG_ADVICE as negative advice + * cxgb4/iw_cxgb4: Doorbell Drop Avoidance Bug Fixes + * mlx4: Don't receive packets when the napi budget == 0 + * IB/mlx4_ib: Adapt code to use caps.num_ports instead of a constant + * net/mlx4: Add data structures to support N-Ports per VF + * net/mlx4: Add utils for N-Port VFs + * net/mlx4: Adapt code for N-Port VF + * net/mlx4: Adapt num_vfs/probed_vf params for single port VF + * mlx4: Use actual number of PCI functions (PF + VFs) for alias GUID logic + * RDMA/cxgb4: set error code on kmalloc() failure + * net/mlx4: USe one wrapper that returns -EPERM + * mlx4: Add support for CONFIG_DEV command + * net/mlx4: Implement vxlan ndo calls + * net/mlx4: Set proper build dependancy with vxlan + + [ Wen-chien Jesse Sung ] + + * SAUCE: Bluetooth: Give restart command more time to complete its job + - LP: #1301908 + + -- Tim Gardner Thu, 03 Apr 2014 06:06:15 -0600 + +linux (3.13.0-22.44) trusty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1301562 + + [ dann frazier ] + + * [Config] enable linux-tools on arm64 + https://lists.ubuntu.com/archives/kernel-team/2014-April/041332.html + + [ Greg Kurz ] + + * SAUCE: powerpc/le: Big endian arguments for ppc_rtas() + - LP: #1289518 + + [ Mahesh Salgaonkar ] + + * SAUCE: powerpc/book3s: Fix CFAR clobbering issue in machine check + handler. + - LP: #1301424 + * SAUCE: powerpc/book3s: Recover from MC in sapphire on SCOM read via + MMIO. + - LP: #1301424 + * SAUCE: powerpc/book3s: Fix mc_recoverable_range buffer overrun issue. + - LP: #1301424 + + [ Paolo Pisati ] + + * [Config] armhf: USB_STORAGE=y + https://lists.ubuntu.com/archives/kernel-team/2014-April/041349.html + + [ Stefan Bader ] + + * SAUCE: kvm: Force preempt folding in kvm on i386 + - LP: #1268906 + + [ Tim Gardner ] + + * SAUCE: Drop lttng in favor of lttng-modules + The kernel version was down rev on an rc release. + + [ Tomas Winkler ] + + * SAUCE: (no-up) mei: me: do not load the driver if the FW doesn't + support MEI interface + - LP: #1301118 + + [ Upstream Kernel Changes ] + + * drm/i915: Deprecated UMS support + - LP: #1284816 + * powerpc/book3s: Split the common exception prolog logic into two + section. + - LP: #1301424 + * powerpc/book3s: Introduce exclusive emergency stack for machine check + exception. + - LP: #1301424 + * powerpc/book3s: handle machine check in Linux host. + - LP: #1301424 + * powerpc/book3s: Return from interrupt if coming from evil context. + - LP: #1301424 + * powerpc/book3s: Introduce a early machine check hook in cpu_spec. + - LP: #1301424 + * powerpc/book3s: Add flush_tlb operation in cpu_spec. + - LP: #1301424 + * powerpc/book3s: Flush SLB/TLBs if we get SLB/TLB machine check errors + on power7. + - LP: #1301424 + * powerpc/book3s: Flush SLB/TLBs if we get SLB/TLB machine check errors + on power8. + - LP: #1301424 + * powerpc/book3s: Decode and save machine check event. + - LP: #1301424 + * powerpc/book3s: Queue up and process delayed MCE events. + - LP: #1301424 + * powerpc/powernv: Remove machine check handling in OPAL. + - LP: #1301424 + * powerpc/powernv: Machine check exception handling. + - LP: #1301424 + * powerpc: Fix "attempt to move .org backwards" error + - LP: #1301424 + * powerpc: Fix endian issues in power7/8 machine check handler + - LP: #1301424 + * Move precessing of MCE queued event out from syscall exit path. + - LP: #1301424 + + -- Andy Whitcroft Wed, 02 Apr 2014 15:58:48 +0100 + +linux (3.13.0-21.43) trusty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: kvm: BIOS disabled kvm support should be a warning + - LP: #1300247 + * SAUCE: nouveau: missing outputs should be warnings + - LP: #1300244 + + [ John Johansen ] + + * Revert "SAUCE: Add config option to disable new apparmor 3 semantics" + * Revert "SAUCE: apparmor: fix uninitialized lsm_audit membe" + * Revert "SAUCE: (no-up) apparmor: Fix tasks not subject to, reloaded + policy" + * Revert "SAUCE: apparmor: allocate path lookup buffers during init" + * Revert "SAUCE: apparmor: fix unix domain sockets to be mediated on + connection" + * Revert "SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot" + * SAUCE: (no-up) apparmor: Sync to apparmor3 - alpha6 snapshot + - LP: #1298611 + + [ Tetsuo Handa ] + + * SAUCE: kthread: Do not leave kthread_create() immediately upon SIGKILL. + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1300412 + * [Config] updateconfigs after AA patch set + * [Config] CONFIG_ZSWAP=n, CONFIG_ZBUD=n for all arches + * [Config] CONFIG_XILINX_LL_TEMAC=m for powerpc + * [Config] CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y for ppc64el + * [Config] CONFIG_WLAN=y for arm64 + * [Config] CONFIG_VORTEX=m for ppc64el + * [Config] CONFIG_WIMAX=m for ppc64el + * [Config] CONFIG_WATCHDOG=y for ppc64el + * [Config] CONFIG_VME_BUS=m for ppc64el + * [Config] CONFIG_VIRT_DRIVERS=y for ppc64el + * [Config] CONFIG_VIDEO_OUTPUT_CONTROL=m for ppc64el + * [Config] CONFIG_VERSION_SIGNATURE="" for powerpc64-emb + * [Config] CONFIG_UWB=m for ppc64el + + [ Upstream Kernel Changes ] + + * vhost: validate vhost_get_vq_desc return value + - CVE-2014-0055 + * net: use kfree_skb_list() helper + * skbuff: skb_segment: s/frag/nskb_frag/ + * skbuff: skb_segment: s/skb_frag/frag/ + * skbuff: skb_segment: s/skb/head_skb/ + * skbuff: skb_segment: s/fskb/list_skb/ + * skbuff: skb_segment: orphan frags before copying + - CVE-2014-0131 + + [ Upstream Kernel Changes ] + + * rebase to v3.13.8 + + -- Tim Gardner Mon, 31 Mar 2014 12:38:11 -0600 + +linux (3.13.0-20.42) trusty; urgency=low + + [ Adam Conrad ] + + * [Packaging] Set bootloader and loader on ppc64el to grub + + [ Andy Whitcroft ] + + * rebase to v3.13.7 + * [Config] updateconfigs following rebase to v3.13.7 + * cloud-tools -- pull in init scripts for Hyper-V daemons + * cloud-tools -- detect Hyper-V VM to avoid starting + * cloud-tools -- update IF_NAME to DEVICE in hv_* scripts + - LP: #1295401 + * [Config] cloud-tools -- ensure we force older hv-kvp-daemon-init off + * [Config] fix up Breaks/Replaces on linux-cloud-tools-common to fix upgrades + + [ Emmanuel Grumbach ] + + * SAUCE: (no-up) iwlwifi: mvm: disable uAPSD due to bugs in the firmware + + [ James Bottomley ] + + * SAUCE: (no-up) fix our current target reap infrastructure + - LP: #1283604 + * SAUCE: (no-up) dual scan thread bug fix + - LP: #1283604 + + [ K. Y. Srinivasan ] + + * SAUCE: (no-up) Tools: hv: vssdaemon: Ignore VFAT mounts during the + Freeze operation + - LP: #1298192 + + [ Paolo Pisati ] + + * [Config] disable HW_RANDOM_EXYNOS, USB_DWC3_EXYNOS, + PHY_EXYNOS_MIPI_VIDEO + - LP: #1294353 + * [Config] armhf: generic: AHCI_IMX=y, SERIAL_FSL_LPUART=m + - LP: #1294951 + * [Config] armhf: generic: MFD_TI_AM335X_TSCADC and USB_DWC3_OMAP = m + - LP: #1294962 + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1298585 + * [Config] ignore.modules + * SAUCE: i2c-cpm: Add missing includes for powerpc + * [Config] CONFIG_ABX500_CORE=y for ppc64el + * [Config] CONFIG_ALX=m for powerpc + * [Config] CONFIG_ACENIC_OMIT_TIGON_I=n for ppc64el + * [Config] CONFIG_ACORN_PARTITION_*=n for ppc64el + * [Config] CONFIG_ANDROID=n for powerpc + * [Config] CONFIG_ASYNC_RAID6_TEST=m for ppc64el + * [Config] CONFIG_BIG_KEYS=y for ppc64el + * [Config] CONFIG_BLK_DEV_INTEGRITY=y for ppc64el + * [Config] CONFIG_BSD_PROCESS_ACCT=y for ppc64el + * [Config] CONFIG_BLK_DEV_SR_VENDOR=n for ppc64el + * [Config] CONFIG_CFG80211=m for ppc64el + * [Config] CONFIG_CHARGER_BQ24190=m for powerpc + * [Config] CONFIG_CHARGER_BQ24735=m for powerpc + * [Config] CONFIG_EXPERT=y for ppc64el + * [Config] CONFIG_ATA_SFF=y on ppc64el + * [Config] CONFIG_ATA_GENERIC=y for ppc64el, powerpc + * [Config] CONFIG_CHR_DEV_ST=m for ppc64el + * [Config] CONFIG_CHECKPOINT_RESTORE=y for ppc64el + * [Config] CONFIG_CHELSIO_T1_1G=y for ppc64el + * [Config] CONFIG_CHR_DEV_OSST=m for ppc64el + * [Config] CONFIG_CHR_DEV_SCH=m for ppc64el + * [Config] CONFIG_CPU_FREQ_STAT=y for powerpc + * [Config] CONFIG_DDR=y for ppc64el + * [Config] CONFIG_DEBUG_BUGVERBOSE=y for powerpc + * [Config] CONFIG_EXT4_USE_FOR_EXT23=y for powerpc, ppc64el + * [Config] CONFIG_E100=m, CONFIG_E1000=m, CONFIG_E1000E=m for ppc64el + * [Config] CONFIG_EZX_PCAP=n for all arches + * [Config] CONFIG_DYNAMIC_DEBUG=y for powerpc + * [Config] CONFIG_ENABLE_MUST_CHECK=n for ppc64el + * [Config] CONFIG_ENABLE_WARN_DEPRECATED=n for ppc64el + * [Config] CONFIG_FB_3DFX=m for all arches + * [Config] CONFIG_FB_MATROX=m for ppc64el + * [Config] CONFIG_FB_RADEON=m for ppc64el + * [Config] CONFIG_FB_SAVAGE_I2C=y for all arches + * [Config] CONFIG_FIREWIRE=m for ppc64el + * [Config] CONFIG_FTR_FIXUP_SELFTEST=n for ppc64el + * [Config] CONFIG_HAMRADIO=y for ppc64el + * [Config] CONFIG_I2C_CHARDEV=m for ppc64el + * [Config] CONFIG_I2C_MUX=m for ppc64el + * [Config] CONFIG_I2C_STUB=m for ppc64el + * [Config] CONFIG_I2O=m for ppc64el + * [Config] CONFIG_INET_XFRM_MODE_BEET=m, CONFIG_INET_XFRM_MODE_TRANSPORT=m, CONFIG_INET_XFRM_MODE_TUNNEL=m for ppc64el + * [Config] CONFIG_INFINIBAND_IPOIB_DEBUG=n, CONFIG_INFINIBAND_MTHCA_DEBUG=n for ppc64el + * [Config] CONFIG_INFINIBAND_NES=m, CONFIG_INFINIBAND_OCRDMA=m, CONFIG_INFINIBAND_QIB=m for ppc64el + * [Config] CONFIG_INPUT_FF_MEMLESS=m for ppc64el + * [Config] CONFIG_INTERVAL_TREE_TEST=m for ppc64el + * [Config] CONFIG_IPACK_BUS=m for ppc64el + * [Config] CONFIG_ISDN=y for ppc64el + * [Config] CONFIG_ISO9660_FS=m for ppc64el + * [Config] CONFIG_KGDB=y for ppc64el + * [Config] CONFIG_KVM_GUEST=y for ppc64el + * [Config] CONFIG_L2TP_V3=y for powerpc + * [Config] CONFIG_MAILBOX=y for ppc64el + * [Config] CONFIG_MD_LINEAR=m, CONFIG_MD_RAID0=m, CONFIG_MD_RAID1=m for ppc64el + * [Config] CONFIG_MEDIA_SUPPORT=m for ppc64el + * [Config] CONFIG_MEMORY=y for ppc64el + * [Config] CONFIG_MEMSTICK=m for ppc64el + * [Config] CONFIG_MFD_SM501_GPIO=n for ppc64el + * [Config] CONFIG_MLX4_DEBUG=n for ppc64el + * [Config] CONFIG_MMC_BLOCK=m for ppc64el + * [Config] CONFIG_MOUSE_PS2=m for ppc64el + * [Config] CONFIG_NET_9P=m for ppc64el + * [Config] CONFIG_MSDOS_FS=m for ppc64el + * [Config] CONFIG_MSI_BITMAP_SELFTEST=n for ppc64el + * [Config] CONFIG_MTD=m for arm64 + * [Config] CONFIG_NETCONSOLE=m for ppc64el + * [Config] CONFIG_NETFILTER_XT_TARGET_NOTRACK=m for ppc64el + * [Config] CONFIG_NETPOLL_TRAP=n for ppc64el + * [Config] CONFIG_NET_IPIP=m for ppc64el + * [Config] CONFIG_NET_TEAM=m for all arches + * [Config] CONFIG_NFC=m for ppc64el + * [Config] CONFIG_NL80211_TESTMODE=n for all arches + * [Config] CONFIG_NLS_CODEPAGE_437=y for powerpc + * [Config] CONFIG_NLS_ASCII=m, CONFIG_NLS_ISO8859_1=m, CONFIG_NLS_UTF8=m for ppc64el + * [Config] CONFIG_NOP_USB_XCEIV=m for ppc64el + * [Config] CONFIG_NOTIFIER_ERROR_INJECTION=m for ppc64el + * [Config] CONFIG_OPROFILE=m for ppc64el + * [Config] CONFIG_PARPORT_1284=y for ppc64el + * [Config] CONFIG_PARPORT_AX88796=m, CONFIG_PARPORT_PC_FIFO=y, CONFIG_PARPORT_SERIAL=m for ppc64el + * [Config] CONFIG_PCI_IOV=y, CONFIG_PCI_PASID=y, CONFIG_PCI_PRI=y, CONFIG_PCI_REALLOC_ENABLE_AUTO=y, CONFIG_PCI_STUB=m for ppc64el + * [Config] CONFIG_PCNET32=m for ppc64el + * [Config] CONFIG_SCSI_DH_EMC=m for ppc64el + * [Config] CONFIG_SCSI_DH_HP_SW=m for ppc64el + * [Config] CONFIG_SCSI_FC_ATTRS=m for ppc64el + * [Config] CONFIG_SCSI_IPR=m for ppc64el + * [Config] CONFIG_SCSI_LOGGING=y for ppc64el + * [Config] CONFIG_SCSI_OSD_INITIATOR=m for ppc64el + * [Config] CONFIG_SCSI_SCAN_ASYNC=y for ppc64el + * [Config] CONFIG_SCSI_SYM53C8XX_2=m for ppc64el + + [ Timo Aaltonen ] + + * SAUCE: i915_bdw: Provide an ubuntu/i915 driver for Broadwell graphics + - LP: #1294144 + * SAUCE: i915_bdw: Add DP_AUX definitions + - LP: #1294144 + * SAUCE: i915_bdw: Update intel_ips.h file location + - LP: #1294144 + * SAUCE: i915_bdw: Revert "ACPI / i915: replace open-coded _DSM code with + helper functions" + - LP: #1294144 + * SAUCE: i915_bdw: Add an include back to intel_opregion.c + - LP: #1294144 + * SAUCE: i915_bdw: Only support Broadwell with ubuntu/i915 driver + - LP: #1294144 + * SAUCE: i915_bdw: Add i915_bdw_gpu_*() calls for ubuntu/i915 + - LP: #1294144 + * i915_bdw: [Config] Enable CONFIG_DRM_I915_BDW=m, and disable UMS + - LP: #1294144 + * SAUCE: i915_bdw: Rename ubuntu/i915 driver to i915_bdw + - LP: #1294144 + + [ Upstream Kernel Changes ] + + * netfilter: nf_conntrack_dccp: fix skb_header_pointer API usages + - CVE-2014-2523 + * Input: ALPS - add support for "Dolphin" devices + - LP: #1190867 + * x86/mm/pageattr: Lookup address in an arbitrary PGD + - LP: #1297658 + * x86/mm/pageattr: Add a PGD pagetable populating function + - LP: #1297658 + * x86/mm/pageattr: Add a PUD pagetable populating function + - LP: #1297658 + * x86/mm/pageattr: Add a PMD pagetable populating function + - LP: #1297658 + * x86/mm/pageattr: Add a PTE pagetable populating function + - LP: #1297658 + * x86/mm/pageattr: Add a PUD error unwinding path + - LP: #1297658 + * x86/mm/pageattr: Add last levels of error path + - LP: #1297658 + * x86/mm/cpa: Map in an arbitrary pgd + - LP: #1297658 + * x86/efi: Runtime services virtual mapping + - LP: #1297658 + * x86/efi: Check krealloc return value + - LP: #1297658 + * Include apm-mustang.dtb in kernel-image udeb + * drm/i915: add i915_reset_count + - LP: #1294144 + * drm/i915: add i915_get_reset_stats_ioctl + - LP: #1294144 + * drm: add DRM_INFO_ONCE() to print a one-time DRM_INFO() message + - LP: #1294144 + * drm: provide a helper for the encoder possible_crtcs mask + - LP: #1294144 + * drm: Move drm_encoder_crtc_ok() to core + - LP: #1294144 + * drm: Pass the display mode to drm_calc_timestamping_constants() + - LP: #1294144 + * drm: Pass the display mode to drm_calc_vbltimestamp_from_scanoutpos() + - LP: #1294144 + * drm: Pass 'flags' from the caller to .get_scanout_position() + - LP: #1294144 + + [ Upstream Kernel Changes ] + + * rebase to v3.13.7 + - LP: #1268468 + + -- Andy Whitcroft Mon, 24 Mar 2014 10:41:31 +0000 + +linux (3.13.0-19.40) trusty; urgency=low + + [ Tim Gardner ] + + * [Config] Add new mlx modules to d-i + * [Config] Fix d-i spelling error: ahxi_xgene --> ahci_xgene + * [Config] Added Muti-Arch support for linux-headers-PKGVER-ABINUM, + linux-tools-common, and linux-cloud-tools-common + - LP: #1295112 + * Release Tracking Bug + - LP: #1296484 + + [ Upstream Kernel Changes ] + + * Drivers: hv: vmbus: Specify the target CPU that should receive + notification + - LP: #1295813 + + -- Tim Gardner Sun, 23 Mar 2014 19:54:50 -0600 + +linux (3.13.0-19.39) trusty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1295462 + + [ Andy Whitcroft ] + + * ubuntu: aufs3 -- update update scripting + * ubuntu: AUFS -- update to 75dbb997b5812e16771bec20e92449ba0b1705d9 + + [ Anup Patel ] + + * SAUCE: (no-up) KVM: Documentation: Fix typo for KVM_ARM_VCPU_INIT ioctl + * SAUCE: (no-up) arm64: KVM: Force undefined exception for Guest SMC + intructions + + [ dann frazier ] + + * SAUCE: (no-up) Fix pcie-xgene build failure + + [ Emmanuel Grumbach ] + + * SAUCE: iwlwifi: mvm: send udev event upon firmware error to dump logs + + [ Feng Kan ] + + * SAUCE: (no-up) power: reset: Add generic SYSCON register mapped reset + - LP: #1284433 + * SAUCE: (no-up) arm64: dts: Add X-Gene reboot driver dts node + - LP: #1284433 + + [ Hans de Goede ] + + * SAUCE: (no-up) libahci: Allow drivers to override start_engine + - LP: #1282920 + * SAUCE: (no-up) ahci-platform: Add support for devices with more then 1 + clock + - LP: #1282920 + * SAUCE: (no-up) ahci-platform: Add support for an optional regulator for + sata-target power + - LP: #1282920 + * SAUCE: (no-up) ahci-platform: Add enable_ / disable_resources helper + functions + - LP: #1282920 + * SAUCE: (no-up) ahci-platform: "Library-ise" ahci_probe functionality + - LP: #1282920 + * SAUCE: (no-up) ahci-platform: "Library-ise" suspend / resume + functionality + - LP: #1282920 + + [ Iyappan Subramanian ] + + * SAUCE: (no-up) Documentation: APM X-Gene SoC Ethernet DTS binding + documentation + * SAUCE: (no-up) arm64: dts: APM X-Gene SoC Ethernet device tree nodes + * SAUCE: (no-up) drivers: net: APM X-Gene SoC Ethernet base driver + * SAUCE: (no-up) drivers: net: APM X-Gene SoC Ethernet driver error + handling + * SAUCE: (no-up) drivers: net: APM X-Gene SoC Ethernet driver ethtool + support + + [ Loc Ho ] + + * SAUCE: (no-up) Documentation: Add APM X-Gene SoC 15Gbps Multi-purpose + PHY driver binding documentation + - LP: #1282920 + * SAUCE: (no-up) PHY: add APM X-Gene SoC 15Gbps Multi-purpose PHY driver + - LP: #1282920 + * SAUCE: (no-up) arm64: Add APM X-Gene SoC 15Gbps Multi-purpose PHY DTS + entries + - LP: #1282920 + * SAUCE: (no-up) Documentation: Add documentation for the APM X-Gene SoC + SATA host controller DTS binding + * SAUCE: (no-up) ata: Add APM X-Gene SoC AHCI SATA host controller driver + * SAUCE: (no-up) ata: Fix compiler warning with APM X-Gene host + controller driver + * SAUCE: (no-up) arm64: Add APM X-Gene SoC AHCI SATA host controller DTS + entries + * SAUCE: (no-up) clk: arm64: Fix the clock-names property for pcppll, + socpll, and socplldiv2 + + [ Marc Zyngier ] + + * SAUCE: (no-up) arm64: KVM: force cache clean on page fault when caches + are off + * SAUCE: (no-up) arm64: KVM: allows discrimination of AArch32 sysreg + access + * SAUCE: (no-up) arm64: KVM: trap VM system registers until MMU and + caches are ON + * SAUCE: (no-up) ARM: KVM: introduce kvm_p*d_addr_end + * SAUCE: (no-up) arm64: KVM: flush VM pages before letting the guest + enable caches + * SAUCE: (no-up) ARM: KVM: force cache clean on page fault when caches + are off + + [ Ming Lei ] + + * SAUCE: (no-up) arm64: apm-storm: support ttyS1 + * SAUCE: (no-up) apm: pcie: fix hang when no card connected + + [ Paolo Pisati ] + + * [Config] armhf: generic: disable CPU_IDLE + * [Config] armhf: CPU_FREQ=y + * [Config] armhf: TI_THERMAL=y + + [ Rameshwar Prasad Sahu ] + + * SAUCE: (no-up) rtc: Add X-Gene SoC Real Time Clock Driver + + [ Ravi Patel ] + + * SAUCE: (no-up) Documentation: misc-devices: APM X-Gene SoC QMTM + * SAUCE: (no-up) Documentation: devicetree: bindings for APM X-Gene SoC + QMTM + * SAUCE: (no-up) misc: xgene: base driver for APM X-Gene SoC QMTM + * SAUCE: (no-up) arm64: boot: dts: entries for APM X-Gene SoC QMTM + * SAUCE: (no-up) misc: xgene: error handling for APM X-Gene SoC QMTM + + [ Roger Quadros ] + + * SAUCE: (no-up) ata: ahci_platform: Manage SATA PHY + - LP: #1282920 + * SAUCE: (no-up) ata: ahci_platform: runtime resume the device before use + - LP: #1282920 + + [ Seth Forshee ] + + * SAUCE: iwlwifi: mvm: Free sram dump immediately after using it + * SAUCE: iwlwifi: mvm: Only notify userspace of fw error dump when one is + created + * SAUCE: iwlwifi: mvm: Don't create fw error dump if there's nothing to + dump + + [ Tanmay Inamdar ] + + * SAUCE: (no-up) arm64: PCI(e) arch support + * SAUCE: (no-up) pci: APM X-Gene PCIe controller driver + * SAUCE: (no-up) arm64: dts: APM X-Gene PCIe device tree nodes + * SAUCE: (no-up) dt-bindings: pci: xgene pcie device tree bindings + * SAUCE: (no-up) MAINTAINERS: entry for APM X-Gene PCIe host driver + + [ Tim Gardner ] + + * [Config] CONFIG_POWER_RESET_SYSCON=y for arm64 + * SAUCE: (no-up) Restrict CONFIG_POWER_RESET_SYSCON to arm64 only + * SAUCE: iwlwifi: Fix FTBS for armhf + * [Config] CONFIG_PHY_XGENE=m for arm64 + * [Config] CONFIG_AHCI_XGENE=m for arm64 + * [Config] CONFIG_NET_XGENE=m for arm64 + * [Config] CONFIG_RTC_DRV_XGENE=m for arm64 + * SAUCE: (no-up) Add drivers/phy/phy-core.ko to generic inclusion list + * [Config] Enable PCI for arm64 + * SAUCE: arm64: export __cpu_clear_user_page for modules + * SAUCE: ARCH_HAS_DMA_GET_REQUIRED_MASK=n for arm64 + * [Config] CONFIG_PCI_XGENE=y + * [Config] CONFIG_PHY_XGENE=y for arm64 + * [Config] CONFIG_RTC_DRV_XGENE=y for arm64 + * d-i: Add ahxi_xgene and xgene-enet + + [ Upstream Kernel Changes ] + + * Staging: rtl8821ae: rc.c: fix up function prototypes + * Staging: rtl8821ae: removed unused functions and variables + * Staging: rtl8821ae: add TODO file + * Staging: rtl8812ae: disable due to build errors + * staging: r8821ae: Fix build problems + * staging: r8821ae: Enable build by reverting BROKEN marking + * staging: rtl8821ae: Fixed the size of array to macro as discussed by + Linus + * staging/rtl8821ae: fix build, depends on MAC80211 + * powerpc: Reclaim two unused thread_info flag bits + * powerpc: Don't corrupt transactional state when using FP/VMX in kernel + * powerpc: Fix transactional FP/VMX/VSX unavailable handlers + * Drivers: hv: Ballon: Make pressure posting thread sleep interruptibly + - LP: #1294253 + * mac80211: don't validate unchanged AP bandwidth while tracking + - LP: #1294558 + * phy-core: Don't propagate -ENOSUPP from phy_pm_runtime_get_sync to + caller + * CONFIG_XGENE_QMTM=m for arm64 + + -- Tim Gardner Thu, 20 Mar 2014 21:51:11 -0400 + +linux (3.13.0-18.38) trusty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1293725 + * [Config] Add hv_balloon to d-i virtio-modules + - LP: #1292216 + + [ Andy Whitcroft ] + + * [Config] d-i -- add virtio_scsi to virtio-modules + - LP: #1288607 + + [ Colin Ian King ] + + * SAUCE: intel_pstate: inform user that thermald is worth considering + + [ dann frazier ] + + * [Config] arm64: KVM=y + + [ Gerd Hoffmann ] + + * SAUCE: vmbus: add missing breaks + - LP: #1287398 + * SAUCE: vmbus: use resource for hyperv mmio region + - LP: #1287398 + * SAUCE: hyperv-fb: add support for generation 2 virtual machines. + - LP: #1287398 + * SAUCE: hyperv-fb: kick off efifb early + - LP: #1287398 + + [ Haiyang Zhang ] + + * SAUCE: hyperv: Change the receive buffer size for legacy hosts + - LP: #1290151 + + [ K. Y. Srinivasan ] + + * SAUCE: Drivers: hv: vmbus: Extract the mmio information from DSDT + - LP: #1287398 + + [ Paolo Pisati ] + + * SAUCE: leds-gpio: of: introduce MODULE_DEVICE_TABLE for module + autoloading + * [Config] amhf: LEDS_TRIGGER_HEARTBEAT=y + + [ Upstream Kernel Changes ] + + * Revert "xhci 1.0: Limit arbitrarily-aligned scatter gather." + - LP: #1293361 + * Revert "USBNET: ax88179_178a: enable tso if usb host supports sg dma" + - LP: #1293361 + * powerpc/tm: Fix crash when forking inside a transaction + * AX88179_178A: Add VID:DID for Lenovo OneLinkDock Gigabit LAN + - LP: #1291890 + * drm/vmwgfx: Fix a surface reference corner-case in legacy emulation + mode + * Input: wacom - scale up touch width and height values for Intuos Pro + * Input: wacom - make sure touch_max is set for touch devices + * Input: wacom - add support for three new Intuos devices + * Input: wacom - add reporting of SW_MUTE_DEVICE events + * Input: wacom - fix wacom->shared guards for dual input devices + * Input: wacom - add support for DTU-1031 + * net: fix for a race condition in the inet frag code + - CVE-2014-0100 + * net: sctp: fix sctp_sf_do_5_1D_ce to verify if we/peer is AUTH capable + - CVE-2014-0101 + * KEYS: Make the keyring cycle detector ignore other keyrings of the same + name + - CVE-2014-0102 + * ipv6: don't set DST_NOCOUNT for remotely added routes + - CVE-2014-2309 + + -- Andy Whitcroft Thu, 13 Mar 2014 10:06:05 +0000 + +linux (3.13.0-17.37) trusty; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1290484 + * Revert "SAUCE: hv: Add vss daemon to Makefile" + * Revert "SAUCE: (no-up) tools/hv: add basic Makefile" + * Revert "SAUCE: (no-up) hv -- bodge hv_kvp_daemon so it can use the + local linux/hyperv.h" + * Revert "SAUCE: (no-up) hv -- bodge hv_vss_daemon so it can use the + local linux/hyperv.h" + * Revert "SAUCE: SELinux: security_load_policy: Silence frame-larger-than + warning" + * Revert "SAUCE: ARM: OMAP4460: cpuidle: Extend + PM_OMAP4_ROM_SMP_BOOT_ERRATUM_GICD on cpuidle" + * ubuntu: overlayfs -- use kernel service credentials for copy up and + xattr manipulations + * [Packaging] tools -- hv tools build correctly against the built headers + * [Packaging] cloud-tools -- add the hv_fcopy_daemon to the package + * rebase to v3.13.6 + + [ Anton Blanchard ] + + * SAUCE: ibmveth: Fix endian issues with MAC addresses + + [ Bjarke Istrup Pedersen ] + + * SAUCE: hv: Add hyperv.h to uapi headers + - LP: #1282700 + + [ Fengguang Wu ] + + * SAUCE: Drivers: hv: fcopy_open() can be static + - LP: #1282700 + + [ K. Y. Srinivasan ] + + * SAUCE: Drivers: hv: Implement the file copy service + - LP: #1282700 + + [ Tim Gardner ] + + * SAUCE: (no-up) mei: Fix stable update misapplication + * SAUCE: (no-up) mei_me: Add module parameter to disable MSI + + [ Upstream Kernel Changes ] + + * arm64: KVM: Add Kconfig option for max VCPUs per-Guest + * arm64: KVM: Support X-Gene guest VCPU on APM X-Gene host + * ACPI / EC: Clear stale EC events on Samsung systems + * drm/ttm: Fix TTM object open regression + * SELinux: security_load_policy: Silence frame-larger-than warning + * ARM: OMAP4460: cpuidle: Extend PM_OMAP4_ROM_SMP_BOOT_ERRATUM_GICD on + cpuidle + + [ Upstream Kernel Changes ] + + * rebase to v3.13.6 + - LP: #1282369 + - LP: #1260303 + + -- Tim Gardner Wed, 05 Mar 2014 06:52:34 -0700 + +linux (3.13.0-16.36) trusty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1287903 + + [ Andy Whitcroft ] + + * Revert "[Config] lowlatency -- turn CONFIG_IRQ_FORCED_THREADING_DEFAULT + off temporarily" + + [ Chris Bainbridge ] + + * SAUCE: x86: set Pentium M as PAE capable + - LP: #930447 + + [ Dave Jones ] + + * SAUCE: taint: repurpose TAINT_UNSAFE_SMP to TAINT_CPU_OUT_OF_SPEC + - LP: #930447 + + [ Paolo Pisati ] + + * [Config] SND_DAVINCI_SOC && SND_AM33XX_SOC_EVM =m + * [Config] armhf: DRM_TILCDC=m + + [ Philippe Bergheaud ] + + * SAUCE: powerpc: fix xmon disassembler for little-endian + - LP: #1286255 + + [ Tim Gardner ] + + * [Config] CONFIG_MICROCODE_EARLY=y + * [Config] CONFIG_R8821AE=m + * [Config] Add some virtio drivers to -virtual + - LP: #1287401 + * [Config] inclusion-list: vesafb and virtio_balloon are built-in + * SAUCE: vmwgfx: Expose U32_MAX + + [ Upstream Kernel Changes ] + + * Revert "drm/vmwgfx: Fix regression caused by "drm/ttm: make ttm + reservation calls behave like reservation calls"" + * Revert "drm/vmwgfx: Fix the driver for large dma addresses" + * usb: ehci: fix deadlock when threadirqs option is used + - LP: #1274987, #1279081 + * Staging: rtl8812ae: Add Realtek 8821 PCI WIFI driver + - LP: #1287298 + * intel_pstate: Remove periodic P state boost + * intel_pstate: Add trace point to report internal state. + * intel_pstate: Take core C0 time into account for core busy calculation + * intel_pstate: Use LFM bus ratio as min ratio/P state + * intel_pstate: Add support for Baytrail turbo P states + * intel_pstate: Change busy calculation to use fixed point math. + * PM / hibernate: Fix restore hang in freeze_processes() + * ipmi: remove deprecated IRQF_DISABLED + * ipmi: use USEC_PER_SEC instead of 1000000 for more meaningful + * ipmi: fix timeout calculation when bmc is disconnected + * ipmi: Cleanup error return + * ipmi: Add missing rv in ipmi_parisc_probe() + * drm/ttm: ttm object security fixes for render nodes + * drivers: gpu: Mark functions as static in vmwgfx_kms.c + * drivers: gpu: Mark functions as static in vmwgfx_buffer.c + * drivers: gpu: Mark functions as static in vmwgfx_fence.c + * drm/vmwgfx: Fix the driver for large dma addresses + * drm/vmwgfx: Update the svga3d register header file for new device + version + * drm/vmwgfx: Update the driver user-space interface for guest-backed + objects + * drm/vmwgfx: Replace vram_size with prim_bb_mem for calculation of max + resolution + * drm/vmwgfx: Update the svga register definition + * drm/vmwgfx: Adapt capability reporting to new hardware version + * drm/vmwgfx: Add MOB management + * drm/vmwgfx: Hook up MOBs to TTM as a separate memory type + * drm/vmwgfx: Read bounding box memory from the appropriate register + * drm/vmwgfx: Add the possibility to validate a buffer as a MOB + * drm/vmwgfx: Hook up guest-backed queries + * drm/vmwgfx: Detach backing store from its resources when it is evicted + * drm/vmwgfx: Hook up guest-backed contexts + * drm/vmwgfx: Hook up guest-backed surfaces + * drm/vmwgfx: Add guest-backed shaders + * drm/vmwgfx: Validate guest-backed shader const commands + * drm/vmwgfx: Add new unused (by user-space) commands to the verifier + * drm/vmwgfx: Enable 3D for new hardware version + * drm/vmwgfx: Fix up the vmwgfx_drv.h header for new files + * drm/vmwgfx: Extend the command verifier to handle guest-backed on / off + * drm/vmwgfx: Make sure that the multisampling is off + * drm/vmwgfx: Implement a buffer object synccpu ioctl. + * drm/vmwgfx: Add a parameter to get max MOB memory size + * drm/vmwgfx: Block the BIND_SHADERCONSTS command + * drm/vmwgfx: Track context bindings and scrub them upon exiting execbuf + * drm/vmwgfx: Persistent tracking of context bindings + * drm/vmwgfx: Ditch the vmw_dummy_query_bo_prepare function + * drm/vmwgfx: Use the linux DMA api also for MOBs + * drm/vmwgfx: Update otable definitions + * drm/vmwgfx: Fix surface framebuffer check for guest-backed surfaces + * drm/vmwgfx: Implement 64-bit Otable- and MOB binding v2 + * drm/vmwgfx: Silence the device command verifier + * drm/vmwgfx: Invalidate surface on non-readback unbind + * drm/vmwgfx: Fix recently introduced sparse / smatch warnings and errors + * drm/vmwgfx: Don't commit staged bindings if execbuf fails + * drm/vmwgfx: Fix regression caused by "drm/ttm: make ttm reservation + calls behave like reservation calls" + * drm/vmwgfx: Fix SET_SHADER_CONST emulation on guest-backed devices + * drm/vmwgfx: Fix legacy surface reference size copyback + * drm/vmwgfx: Emulate legacy shaders on guest-backed devices v2 + * drm/vmwgfx: Detect old user-space drivers and set up legacy emulation + v2 + * drm/vmwgfx: Reemit context bindings when necessary v2 + * vmwgfx: Fix unitialized stack read in vmw_setup_otable_base + * drm/vmwgfx: Fix a couple of sparse warnings and errors + * drm/vmwgfx: Get maximum mob size from register SVGA_REG_MOB_MAX_SIZE + * drm/vmwgfx: unlock on error path in vmw_execbuf_process() + * drm/vmwgfx: Remove stray const + * drm/vmwgfx: Fix possible integer overflow + * drm/vmwgfx: Fix command defines and checks + * drm/vmwgfx: Remove some unused surface formats + * drm/vmwgfx: Make sure backing mobs are cleared when allocated. Update + driver date. + * drm/vmwgfx: avoid null pointer dereference at failure paths + + -- Tim Gardner Mon, 03 Mar 2014 13:04:10 -0700 + +linux (3.13.0-15.35) trusty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1287175 + + [ Andy Whitcroft ] + + * [Config] tools -- enable cpupower on ppc64el + * [Config] ppc64el -- enable perf tools + * [Config] powerpc -- enable perf tools + * [Config] ppc64el -- reduce MAX_ORDER with 64k pages + * [Config] ppc64el -- switch to 64K system pages + + [ Benjamin Herrenschmidt ] + + * SAUCE: powerpc/powernv: Add iommu DMA bypass support for IODA2 + + [ Paul Mackerras ] + + * SAUCE: powerpc: Increase stack redzone for 64-bit userspace to 512 + bytes + + [ Upstream Kernel Changes ] + + * perf trace: Fix ioctl 'request' beautifier build problems on !(i386 || + x86_64) arches + * kvm, vmx: Really fix lazy FPU on nested guest + - LP: #1278531 + + -- Tim Gardner Mon, 03 Mar 2014 13:22:56 +0000 + +linux (3.13.0-14.34) trusty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1285851 + + [ Andy Whitcroft ] + + * [Config] d-i -- add hyperv_keyboard to serial-modules udeb + - LP: #1285434 + + [ Hannes Frederic Sowa ] + + * SAUCE: ipv6: honor IPV6_PKTINFO with v4 mapped addresses on sendmsg + - LP: #1284535 + + [ Jason Wang ] + + * SAUCE: x86, hyperv: bypass the timer_irq_works() check + - LP: #1282693 + + [ Paolo Pisati ] + + * [Config] disable FB_OMAP2, DRM_OMAP=m + + [ Upstream Kernel Changes ] + + * ipv6: make IPV6_RECVPKTINFO work for ipv4 datagrams + - LP: #1284535 + * mei: remove flash_work_queue + * mei: drop redundant list_del_init + * mei: cleanup mei_irq_read_handler + * mei: enable marking internal commands + * mei: me: set dma mask using DMA mapping API + * Documentation/misc-devices/mei/mei-amt-version.c: remove unneeded call + of mei_deinit() + * mei: do not run reset flow from the interrupt thread + * mei: nfc: mei_nfc_free has to be called under lock + * mei: fix syntax in comments and debug output + * mei: revamp mei reset state machine + * mei: limit the number of consecutive resets + * mei: set client's read_cb to NULL when flow control fails + + -- Tim Gardner Wed, 26 Feb 2014 08:43:20 -0500 + +linux (3.13.0-13.33) trusty; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1284614 + * [Config] powerpc -- CONFIG_SCSI_IBMVSCSI=y + * [Config] CONFIG_RT_GROUP_SCHED=n + - LP: #1284731 + + [ Stefan Bader ] + + * [Config] Revert back to build IPMI as a module on all arches + + [ Tim Gardner ] + + * rebase to v3.13.5 + + [ Upstream Kernel Changes ] + + * cifs: ensure that uncached writes handle unmapped areas correctly + * rebase to v3.13.5 + + -- Andy Whitcroft Tue, 25 Feb 2014 12:15:09 +0000 + +linux (3.13.0-12.32) trusty; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1283074 + + * Revert "SAUCE: Drivers: hv: vmbus: Specify the target CPU that should + receive notification" + * [Packaging] tools -- clean up generic so it gives more targetted hints + * [Packaging] tools -- fix relative links + * rebase to v3.13.4 + + [ Colin Ian King ] + + * [Config][v2] armhf, arm64, powerpc, ppc64el: IPMI_SI=m + + [ Paolo Pisati ] + + * [Config] armhf: SOC_AM33XX=y + * [Config] armhf: TI_CPSW, TI_CPTS and TI_DAVINCI_[CPDMA|MDIO] = y + * [Config] armhf: RTC_DRV_OMAP=y + * [Config] build beaglebone and bleaglebone black dtbs + + [ Tony Breeds ] + + * SAUCE: powerpc/le: Ensure that the 'stop-self' RTAS token is handled + correctly + - LP: #1282712 + + [ Upstream Kernel Changes ] + + * Drivers: hv: vmbus: Specify the target CPU that should receive + notification + - LP: #1282694 + * Drivers: hv: vmbus: Don't timeout during the initial connection with + host + - LP: #1282694 + * hyperv: Add support for physically discontinuous receive buffer + - LP: #1282695 + * Input: hyperv-keyboard - pass through 0xE1 prefix + - LP: #1282699 + * rebase to v3.13.4 + + -- Andy Whitcroft Fri, 21 Feb 2014 12:51:17 +0000 + +linux (3.13.0-11.31) trusty; urgency=low + + [ Colin Ian King ] + + * [config] Set IPMI suppoort default to "y" + + [ Tim Gardner ] + + * [Config] CONFIG_USER_NS=y for ppc64el + * [Config] CONFIG_RESOURCE_COUNTERS=y for ppc64el + * Release Tracking Bug + - LP: #1282243 + + -- Tim Gardner Wed, 19 Feb 2014 12:04:43 -0500 + +linux (3.13.0-10.30) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] tools -- fix up do_tools interface which is assumed by + external tooling + + [ Tim Gardner ] + + * [Config] CONFIG_CGROUP_SCHED=y for ppc64el + * [Config] CONFIG_BLK_CGROUP=y for ppc64el + * [Config] CONFIG_USB_XHCI_HCD=y for ppc64el + * [Config] CONFIG_CGROUP_PERF=y for ppc64el + * Release Tracking Bug + - LP: #1281783 + + [ Upstream Kernel Changes ] + + * be2net: Use MCC_CREATE_EXT_V1 cmd for Skyhawk-R + - LP: #1281446 + * be2net: don't set "pport" field when querying "pvid" + - LP: #1281446 + * be2net: Log the profile-id used by FW during driver initialization + - LP: #1281446 + * be2net: do not call be_set/get_fw_log_level() on Skyhawk-R + - LP: #1281446 + * be2net: ignore mac-addr set call for an already programmed mac-addr + - LP: #1281446 + * be2net: fix incorrect setting of cmd_privileges for VFs + - LP: #1281446 + * be2net: Remove "10Gbps" from driver description string + - LP: #1281446 + * be2net: do not use frag index in the RX-compl entry + - LP: #1281446 + * be2net: use GET_MAC_LIST cmd to query mac-address from a pmac-id + - LP: #1281446 + * be2net: cleanup wake-on-lan code + - LP: #1281446 + * be2net: update driver version to 10.0.x + - LP: #1281446 + * be2net: Fix be_vlan_add/rem_vid() routines + - LP: #1281446 + + -- Tim Gardner Tue, 18 Feb 2014 13:13:24 -0700 + +linux (3.13.0-9.29) trusty; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1280291 + * [Config] lowlatency -- turn CONFIG_IRQ_FORCED_THREADING_DEFAULT off + temporarily + * [Packaging] tools -- split out "cloud only" tools into a cloud tools + package + + [ Paolo Pisati ] + + * [Config] armhf: DISPLAY_CONNECTOR_HDMI && DISPLAY_ENCODER_TPD12S015 =y + + [ Tim Gardner ] + + * rebase to v3.13.3 + + [ Upstream Kernel Changes ] + + * Revert "mmc: sdhci-pci: Fix possibility of chip->fixes being null" + * Revert "mmc: sdhci-pci: Fix BYT sd card getting stuck in runtime + suspend" + * NVMe: Avoid shift operation when writing cq head doorbell + - LP: #1256155 + * NVMe: remove deprecated IRQF_DISABLED + - LP: #1256155 + * NVMe: compat SG_IO ioctl + - LP: #1256155 + * NVMe: Fix lockdep warnings + - LP: #1256155 + * NVMe: Cache dev->pci_dev in a local pointer + - LP: #1256155 + * NVMe: Device resume error handling + - LP: #1256155 + * NVMe: Schedule reset for failed controllers + - LP: #1256155 + * NVMe: Abort timed out commands + - LP: #1256155 + * NVMe: Surprise removal handling + - LP: #1256155 + * NVMe: Async IO queue deletion + - LP: #1256155 + * NVMe: Dynamically allocate partition numbers + - LP: #1256155 + * NVMe: Disable admin queue on init failure + - LP: #1256155 + * NVMe: Add a pci_driver shutdown method + - LP: #1256155 + * NVMe: Include device and queue numbers in interrupt name + - LP: #1256155 + * NVMe: Correct uses of INIT_WORK + - LP: #1256155 + * NVMe: Namespace use after free on surprise removal + - LP: #1256155 + * intel_pstate: Add setting voltage value for baytrail P states. + - LP: #1270736 + * mmc: sdhci-pci: break out definitions to header file + * mmc: sdhci-pci: add support of O2Micro/BayHubTech SD hosts + * mmc: sdhci-pci: Fix BYT sd card getting stuck in runtime suspend + * mmc: sdhci-pci: Fix possibility of chip->fixes being null + + [ Upstream Kernel Changes ] + + * rebase to v3.13.3 + + -- Tim Gardner Thu, 13 Feb 2014 06:08:09 -0700 + +linux (3.13.0-8.28) trusty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1278963 + + [ Paolo Pisati ] + + * [Config] armhf: RTC_DRV_PL031=y + + [ Serge Hallyn ] + + * SAUCE: Overlayfs: allow unprivileged mounts + + [ Upstream Kernel Changes ] + + * kexec: add sysctl to disable kexec_load + - LP: #1259570 + * SELinux: Fix kernel BUG on empty security contexts. + - CVE-2014-1874 + + -- Tim Gardner Tue, 11 Feb 2014 08:35:39 -0500 + +linux (3.13.0-8.27) trusty; urgency=low + + [ John Johansen ] + + * SAUCE: Add config option to disable new apparmor 3 semantics + -LP: #1270215 + + [ Tim Gardner ] + + * [debian] Fix indep_hdrs_pkg_name + - LP: #1134441 + * Update lttng to 00808267d3ba7cdcddfed7bec7e62a40463c1307 Version 2.4.0-rc3 + * Enabled lttng build + * Don't build lttng for armhf + lttng hates gcc-4.8 for armhf + * Release Tracking Bug + - LP: #1277309 + + [ Upstream Kernel Changes ] + + * rebase to v3.13.2 + - LP: #1260303 + - LP: #1260303 + - LP: #1268468 + + -- Tim Gardner Thu, 06 Feb 2014 09:25:51 -0700 + +linux (3.13.0-7.26) trusty; urgency=low + + [ John Johansen ] + + * SAUCE: apparmor: fix uninitialized lsm_audit membe + - LP: #1268727 + * Add config option to optionally enable new apparmor 3 semantics + + [ Tim Gardner ] + + * [Config] Add lowlatency to getabis + * [Config] CONFIG_SECURITY_APPARMOR_AA3_SEMANTICS=y + - LP: #1270215 + * Release Tracking Bug + - LP: #1276810 + + [ Upstream Kernel Changes ] + + * x86, x32: Correct invalid use of user timespec in the kernel + - LP: #1274349 + - CVE-2014-0038 + + -- Tim Gardner Wed, 05 Feb 2014 15:49:44 -0500 + +linux (3.13.0-7.25) trusty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: fix fmd headers" + * SAUCE: fix fmd headers + + -- Andy Whitcroft Tue, 04 Feb 2014 09:36:09 +0000 + +linux (3.13.0-7.24) trusty; urgency=low + + [ Stefan Bader ] + + * [Config] Make vmwgfx driver enable the framebuffer device + + [ Tim Gardner ] + + * rebase to v3.13.1 + * [Config] CONFIG_NFS_FS=m for ppc64el + * [Config] CONFIG_X86_SYSFB=n + https://lists.ubuntu.com/archives/kernel-team/2014-February/038166.html + * Release Tracking Bug + - LP: #1275898 + + [ Upstream Kernel Changes ] + + * i2c: piix4: Add support for AMD ML and CZ SMBus changes + - LP: #1272525 + * i2c: piix4: Use different message for AMD Auxiliary SMBus Controller + - LP: #1272525 + * mm: ignore VM_SOFTDIRTY on VMA merging + - LP: #1274917 + * drm/radeon: disable dpm on BTC + - LP: #1266984 + + [ Upstream Kernel Changes ] + + * rebase to v3.13.1 + + -- Tim Gardner Thu, 30 Jan 2014 15:24:48 +0000 + +linux (3.13.0-6.23) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] fix up architecture for linux-tools + + -- Andy Whitcroft Thu, 30 Jan 2014 09:00:41 +0000 + +linux (3.13.0-6.22) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] limit linux-udebs- to matching arch + * [Config] powerpc -- disable perf to fix FTBFS + * [Config] ppc64el -- fix up missing udebs + + -- Andy Whitcroft Wed, 29 Jan 2014 16:00:28 +0000 + +linux (3.13.0-6.21) trusty; urgency=low + + [ Andy Fleming ] + + * SAUCE: net: Add support for handling queueing in hardware + * SAUCE: of_mdio: Add of_phy_attach function + * SAUCE: phylib: Add generic 10G driver + * SAUCE: phylib: Support attaching to gen10g_driver + * SAUCE: phylib: Add Clause 45 read/write functions + + [ Andy Whitcroft ] + + * SAUCE: fix fmd headers + * [Packaging] lowlatency -- merge out of tree flavours + * SAUCE: allow IRQs to be irq-threaded by default via config + * [Config]: enable CONFIG_IRQ_FORCED_THREADING_DEFAULT for lowlatency + * [Config] powerpc -- fix up Build-depends: + * Release Tracking Bug + - LP: #1273747 + + [ Ben Collins ] + + * SAUCE: PPC: PCI: Fix pcibios_io_space_offset() so it works for 32-bit + ptr/64-bit rsrcs + * SAUCE: Revert "phy: vitesse make vsc824x_add_skew static" + * SAUCE: Fixup freescale usb phy driver to work on ppc64 + * SAUCE: xgmac_mdio: Silence read errors + * SAUCE: Provide booke stub for kvmppc_is_bigendian() + * SAUCE: Fix stack overflow on ppc32 + * SAUCE: Use resource_size_t instead of long for PCI resource address + * SAUCE: net/phy: Export function for use by dpaa_eth + * [Packaging] powerpc -- merge out of tree powerpc arch + + [ Bjorn Helgaas ] + + * SAUCE: Revert "EISA: Log device resources in dmesg" + - LP: #1251816 + * SAUCE: Revert "EISA: Initialize device before its resources" + - LP: #1251816 + + [ Emil Medve ] + + * SAUCE: phylib: Minimum hack to get the generic 10G PHY driver to work + with 10G "fixed-link"s + + [ Kumar Gala ] + + * SAUCE: fsl_qbman: Add drivers for Freescale DPAA Qman & Bman + * SAUCE: fsl_pme2: Add support for DPAA PME + * SAUCE: fmd: FMD14 integration + * SAUCE: dpaa_eth: Ethernet driver for Freescale QorIQ DPA Architecture + * SAUCE: powerpc/85xx: Add DPAA/networking support for CoreNet + + [ Madalin Bucur ] + + * SAUCE: net/flow: remove sleeping and deferral mechanism from + flow_cache_flush + * SAUCE: net/phy: abort genphy_read_status when link changes during speed + and duplex reading + + [ Stefan Bader ] + + * [Config] move some VMWare related modules into main package + - LP: #1271669 + + [ Tim Gardner ] + + * [Config] Add r815x to nic-modules + - LP: #1273735 + * [Config] CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y + - LP: #239479 + + [ Upstream Kernel Changes ] + + * mmc: sdhci-pci: break out definitions to header file + - LP: #1239938 + * mmc: sdhci-pci: add support of O2Micro/BayHubTech SD hosts + - LP: #1239938 + * powerpc/book3e: rename interrupt_end_book3e with __end_interrupts + * powerpc/book3e: support CONFIG_RELOCATABLE + * book3e/kexec/kdump: enable kexec for kernel + * book3e/kexec/kdump: create a 1:1 TLB mapping + * book3e/kexec/kdump: introduce a kexec kernel flag + * book3e/kexec/kdump: implement ppc64 kexec specfic + * book3e/kexec/kdump: redefine VIRT_PHYS_OFFSET + * book3e/kexec/kdump: recover "r4 = 0" to create the initial TLB + + -- Andy Whitcroft Tue, 28 Jan 2014 22:59:46 +0000 + +linux (3.13.0-5.20) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] tools -- do not make symlinks when not making packages + * [Packaging] tools -- tidy up control.stub.in ordering + * [Packaging] tools -- tools-common is shared and not conditional + * rebase to v3.13 + + [ Dirk Brandewie ] + + * SAUCE: intel_pstate: Add setting voltage value for baytrail P states. + + [ KY Srinivasan ] + + * SAUCE: Drivers: hv: vmbus: Specify the target CPU that should receive + notification + + [ Upstream Kernel Changes ] + + * rebase to v3.13 + - LP: #1270603 + + -- Andy Whitcroft Fri, 17 Jan 2014 15:45:31 +0000 + +linux (3.13.0-4.19) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] libunwind8-dev is now available for ppc64el + * [Packaging] tools -- make cpupower optional + * [Packaging] tools -- enable correctly for x86 + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1269872 + + [ Upstream Kernel Changes ] + + * SAUCE: ARM: OMAP: hwmod: Add SYSC offsets for AES IP + * SAUCE: ARM: OMAP4: hwmod: Add hwmod data for AES IP + * SAUCE: OMAP: AM33xx: hwmod: Correct AES module SYSC type + * SAUCE: crypto: omap-aes: add error check for pm_runtime_get_sync + + [ Upstream Kernel Changes ] + + * rebase to 85ce70fdf48aa290b4845311c2dd815d7f8d1fa5 + + -- Tim Gardner Wed, 15 Jan 2014 13:23:05 +0000 + +linux (3.13.0-3.18) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.13-rc8 + * [Packaging] efi -- allow EFI signatures on any arch + + [ Tim Gardner ] + + * [Config] Fix vcs-git path + * Release Tracking Bug + - LP: #1268683 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc8 + + -- Andy Whitcroft Sun, 12 Jan 2014 11:58:01 +0000 + +linux (3.13.0-2.17) trusty; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1267809 + * [Config] apply Platform support>>CPUIdle driver>>CPU Idle config + defaults + * [Config] apply Platform support>>CPU Frequency scaling config defaults + * [Config] CONFIG_PARIDE_EPATC8=y + * [Config] apply Device Drivers >> Broadcom specific AMBA config defaults + * [Config] apply Bus options >> PCI support >> RapidIO support >> RapidIO + Switch drivers config defaults + * [Config] apply Cryptographic API config defaults + * [Config] apply Device Drivers >> Common Clock Framework config defaults + * [Config] apply Device Drivers >> Distributed Switch Architecture + drivers config defaults + * [Config] apply Device Drivers >> Graphics support >> Backlight & LCD + device support config defaults + * [Config] apply Device Drivers >> Graphics support >> Support for frame + buffer devices >> Bootup logo config defaults + * annotations -- update in tree annotations + * [Config] apply Bus options >> PCI support >> RapidIO support config + defaults + * [Config] CONFIG_POWER_AVS=y CONFIG_RESET_CONTROLLER=y + * [Config] apply Device Drivers >> 1-wire Bus Masters config defaults + * [Config] apply CAN Device Drivers >> Platform CAN drivers with Netlink + support config defaults + * [Config] apply Device Drivers >> Character devices >> Serial drivers + config defaults + * [Config] apply Device Drivers >> Generic Thermal sysfs driver config + defaults + * [Config] apply Device Drivers >> Character devices >> TPM Hardware + Support config defaults + * [Config] apply Device Drivers >> Character devices config defaults + * [Config] apply Device Drivers >> HID support >> USB HID support >> USB + HID transport layer config defaults + * [Config] apply Device Drivers >> HID support >> HID bus support config + defaults + * [Config] apply Device Drivers >> HID support >> USB HID support config + defaults + * annotations -- update in tree annotations + * [Config] apply Device Drivers >> GPIO Support config defaults + * [Config] update configs for apparmour update + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot + * SAUCE: apparmor: fix unix domain sockets to be mediated on connection + - LP: #1208988 + * SAUCE: apparmor: allocate path lookup buffers during init + - LP: #1208988 + * SAUCE: (no-up) apparmor: Fix tasks not subject to, reloaded policy + - LP: #1236455 + + [ Tim Gardner ] + + * Revert "[Debian] getabis: Preface module with package name" + * [Config] Added ppc64el to getabis + * [packaging] Bump ABI for every new release + + -- Andy Whitcroft Fri, 10 Jan 2014 11:48:39 +0000 + +linux (3.13.0-1.16) trusty; urgency=low + + * First 3.13 upload. + * Release tracker + - LP: #1266852 + + -- Tim Gardner Tue, 07 Jan 2014 09:21:26 -0700 + +linux (3.13.0-0.15) trusty; urgency=low + + [ Tim Gardner ] + + * rebase to v3.13-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc7 + + -- Tim Gardner Sun, 05 Jan 2014 06:13:33 -0700 + +linux (3.13.0-0.14) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to 7a262d2ed9fa42fad8c4f243f8025580b58cf2f6 + + [ Tim Gardner ] + + * Remove ubuntu/dm-raid4-5 in favor of CONFIG_MD_RAID456 + * Update lttng to Version 2.4.0-rc2 + * lttng: Disabled trace_kvm_async_pf_completed + * [Config] CONFIG_IMA=y + - LP: #1244627 + + [ Upstream Kernel Changes ] + + * rebase to 7a262d2ed9fa42fad8c4f243f8025580b58cf2f6 + + -- Tim Gardner Thu, 02 Jan 2014 12:57:13 -0700 + +linux (3.13.0-0.13) trusty; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: aufs3 -- (no-up) aufs3-base.patch + * ubuntu: aufs3 -- (no-up) aufs3-mmap.patch + * ubuntu: aufs3 -- (no-up) aufs3-standalone.patch + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: AUFS -- update to 7b136a27b021da9010d8b6c101939dd298e46be7 + * ubuntu: aufs3 -- enable + * ubuntu: aufs3 -- update configs + + -- Andy Whitcroft Thu, 02 Jan 2014 09:41:02 +0000 + +linux (3.13.0-0.12) trusty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc6 + + -- Tim Gardner Tue, 31 Dec 2013 06:16:03 -0700 + +linux (3.13.0-0.11) trusty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: suspicious unlocked ->status reading and writing in ipc/sem.c + * [Config] ppc64el -- initial defconfig based -generic flavour + * [Config] initial defconfig for ppc64el + * [Config] ubuntuise ppc64el config + * [Config] ubuntuise ppc64el config part 2 + * [Config] d-i -- update empty udebs list + * [Config] ppc64el -- split extras package + + [ Anton Blanchard ] + + * SAUCE: KVM: PPC: Book3S HV: Add little-endian guest support + + [ Benjamin Herrenschmidt ] + + * SAUCE: powerpc/powernv: Add calls to support little endian + + [ Cédric Le Goater ] + + * SAUCE: KVM: PPC: Book3S: add helper routine to load guest instructions + * SAUCE: KVM: PPC: Book3S: add helper routines to detect endian order + * SAUCE: KVM: PPC: Book3S: MMIO emulation support for little endian + guests + + [ Paul E. McKenney ] + + * SAUCE: powerpc: Make 64-bit non-VMX copy_tofrom_user() bi-endian + + -- Andy Whitcroft Fri, 27 Dec 2013 16:48:55 +0000 + +linux (3.13.0-0.10) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.13-rc5 + * [Config] updateconfigs following rebase to v3.13-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc5 + - LP: #1260303 + - LP: #1260303 + - LP: #1260225 + + -- Andy Whitcroft Mon, 23 Dec 2013 12:48:28 +0000 + +linux (3.13.0-0.9) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i -- allow missing firmware + + -- Andy Whitcroft Fri, 20 Dec 2013 17:57:06 +0000 + +linux (3.13.0-0.8) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] annotations -- first pass over entire config + * [Config] drop libunwind8-dev from Build-Depends for ppc64el + + [ Tim Gardner ] + + * [Config] Add arm64 device tree files + - LP: #1262901 + + -- Andy Whitcroft Thu, 19 Dec 2013 18:36:43 +0000 + +linux (3.13.0-0.7) trusty; urgency=low + + [ Rajesh B Prathipati ] + + * SAUCE: powerpc: Make unaligned accesses endian-safe for powerpc + + [ Tim Gardner ] + + * [Config] CONFIG_REGULATOR_S2MPS11=n for FTBS + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc4 + - LP: #1259790 + - LP: #1259437 + - LP: #1259435 + + -- Tim Gardner Fri, 13 Dec 2013 07:56:34 -0700 + +linux (3.13.0-0.6) trusty; urgency=low + + [ Paolo Pisati ] + + * [Config] armhf: arm64: VIRTIO_[BLK|MMIO|NET|CONSOLE|BALLOON]=y + * [Config] i386: amd64: VIRTIO_CONSOLE=y + + [ Tim Gardner ] + + * [Config] CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y + + -- Tim Gardner Sun, 08 Dec 2013 09:22:01 -0700 + +linux (3.13.0-0.5) trusty; urgency=low + + [ Andy Whitcroft ] + + * correct bug listing for v3.13-rc2 rebase + * [Config] ppc64el -- create linux-libc-dev + * [Debian] Improve tools version message + - LP: #1257715 + + [ Serge Hallyn ] + + * SAUCE: fork: Allow CLONE_PARENT after setns(CLONE_NEWPID)] + - LP: #1248590 + * SAUCE: vfs: Fix a regression in mounting proc + + [ Tim Gardner ] + + * [Config] Build-in ohci-pci + - LP: #1244176 + * Rebase to v3.13-rc3 + + [ Upstream Kernel Changes ] + + * Revert "Revert "fork: unify and tighten up CLONE_NEWUSER/CLONE_NEWPID + checks"" + - LP: #1248590 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc3 + - LP: #1256840 + - LP: #1256212 + + -- Tim Gardner Sat, 07 Dec 2013 07:55:39 -0700 + +linux (3.13.0-0.4) trusty; urgency=low + + [ Tim Gardner ] + + * Rebase to v3.13-rc2 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc2 + + -- Tim Gardner Fri, 29 Nov 2013 23:54:05 -0500 + +linux (3.13.0-0.3) trusty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: Fix DocBook FTBS" + + [ Tim Gardner ] + + * [Debian] Re-sign modules after debug objcopy + - LP: #1253155 + * [Config] CONFIG_EXT4_USE_FOR_EXT23=y + + [ Upstream Kernel Changes ] + + * doc: fix generation of device-drivers + * rebase to b975dc3689fc6a3718ad288ce080924f9cb7e176 + + -- Tim Gardner Tue, 26 Nov 2013 12:24:42 -0700 + +linux (3.13.0-0.2) trusty; urgency=low + + [ Tim Gardner ] + + * SAUCE: Fix DocBook FTBS + + -- Tim Gardner Mon, 25 Nov 2013 13:24:15 -0700 + +linux (3.13.0-0.1) trusty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to 7e3528c3660a2e8602abc7858b0994d611f74bc3 + + -- Tim Gardner Tue, 12 Nov 2013 07:28:53 -0700 + +linux (3.13.0-0.0) trusty; urgency=low + + * Major release bump. + + -- Andy Whitcroft Tue, 12 Nov 2013 21:37:52 +0000 + +linux (3.12.0-2.7) trusty; urgency=low + + * Fixed armhf ABI build failure. + * Release tracker + - LP: #1249477 + + -- Tim Gardner Fri, 08 Nov 2013 16:22:45 -0700 + +linux (3.12.0-2.6) trusty; urgency=low + + [ Joseph Salisbury ] + + * SAUCE: tg3: Add support for new 57786 device id. + - LP: #1242610 + + [ Tim Gardner ] + + * [Config] CONFIG_OABI_COMPAT=n + * [Config] add the wandboard to shipped dtb + - LP: #1249421 + * Release tracker + - LP: #1249477 + + -- Tim Gardner Fri, 08 Nov 2013 12:23:18 -0700 + +linux (3.12.0-2.5) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to mainline v3.12 + * [Config] updateconfigs following rebase to v3.12 + * postinst -- improve relative symlink detection with missing files + - LP: #1248053 + * postinst -- fix unchanged link detection + * [Config] update configs following addition of apparmor fixes + + [ Anthony Wong ] + + * SAUCE: Work around broken ACPI backlight on Dell Inspiron 5537 + - LP: #1231305 + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot + * SAUCE: apparmor: fix unix domain sockets to be mediated on connection + - LP: #1208988 + * SAUCE: apparmor: allocate path lookup buffers during init + - LP: #1208988 + + [ Tim Gardner ] + + * [Config] Remove superfluous ubuntu/lttng-modules + + [ Upstream Kernel Changes ] + + * Revert "fork: unify and tighten up CLONE_NEWUSER/CLONE_NEWPID checks" + - LP: #1248590 + + [ Upstream Kernel Changes ] + + * rebase to v3.12 + - LP: #1222850 + + [ Adam Conrad ] + * etc/getabis: Fetch arm64/generic abis as well + + -- Andy Whitcroft Wed, 06 Nov 2013 21:00:21 +0000 + +linux (3.12.0-1.3) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] arm64 -- add arch to the configuration handlers + * [Config] arm64 -- add generic flavour + * [Config] arm64 -- default config + * [Config] arm64 -- fix up various FTBFS config options + * SAUCE: arm64: export __copy_in_user to modules + * [Config] arm64 -- disable ABI/module checks + * [Config] arm64 -- enforcer -- add arm64 to the enforcer + * [Config] arm64 -- enable udebs for arm64 + + [ Colin Watson ] + + * [Config] Clean up various udeb Provides + + [ Paolo Pisati ] + + * [Config] AHCI_IMX=y + * [Config] build imx*-wandboard dtbs + + [ Serge Hallyn ] + + * SAUCE: device_cgroup: remove can_attach + + [ Tim Gardner ] + + * rebase to v3.12-rc7 + * SAUCE: KVM: Fix modprobe failure for kvm_intel/kvm_amd + * Release tracker + - LP: #1245932 + + [ Upstream Kernel Changes ] + + * rebase to v3.12-rc7 + - LP: #1180881 + - LP: #1180881 + - LP: #1217957 + + -- Tim Gardner Sun, 27 Oct 2013 22:08:55 -0600 + +linux (3.12.0-0.2) trusty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) scsi: hyper-v storage -- mark as preferring READ + CAPACITY (16) at SPC-2" + * Revert "SAUCE: (no-up) scsi: hyper-v storage -- mark as VPD capable at + SPC-2" + * Revert "SAUCE: (no-up) scsi: add scsi device flag to request READ + CAPACITY (16) be preferred" + * Revert "SAUCE: (no-up) scsi: add scsi device flag to request VPD pages + be used at SPC-2" + * Revert "overlayfs: Update to v19" + * Revert "ubuntu: overlayfs v18 -- -- overlayfs: implement show_options" + * Revert "ubuntu: overlayfs v18 -- -- overlayfs: add statfs support" + * Revert "ubuntu: overlayfs v18 -- -- overlay filesystem" + * Revert "ubuntu: overlayfs v18 -- -- vfs: introduce + clone_private_mount()" + * Revert "ubuntu: overlayfs v18 -- -- vfs: export do_splice_direct() to + modules" + * Revert "ubuntu: overlayfs v18 -- -- overlay: overlay filesystem + documentation" + * ubuntu: overlayfs v20 -- overlayfs: add statfs support + * [Config] fix linux-libc-dev generation for arm64 + * [Config] fix linux-libc-dev generation for x32 + * [Config] add linux-libc-dev generation for ppc64el + + [ Erez Zadok ] + + * ubuntu: overlayfs v20 -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs v20 -- vfs: add i_op->dentry_open() + * ubuntu: overlayfs v20 -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs v20 -- vfs: export __inode_permission() to modules + * ubuntu: overlayfs v20 -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs v20 -- overlay filesystem + * ubuntu: overlayfs v20 -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs v20 -- overlay: overlay filesystem documentation + + [ Paolo Pisati ] + + * [Config] arm: VIRTIO_[BLK|NET|MMIO]=y + + [ Seth Forshee ] + + * SAUCE: (no-up) ACPI: Disable Windows 8 compatibility for some Lenovo + ThinkPads + - LP: #1183856 + + [ Tim Gardner ] + + * [Config] CONFIG_CRYPTO_CRCT10DIF=y, CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m + * rebase to v3.12-rc2 + * updateconfigs + * [Config] disable CONFIG_FB_VESA enforcer check + * [Config] Disable lttng for FTBS + * rebase to v3.12-rc3 + * rebase to v3.12-rc4 + * [Config] CONFIG_ANDROID=n + - LP: #1235161 + * [Config] CONFIG_L2TP_V3=y + - LP: #1235914 + * [Config] CONFIG_USB_OTG=n for all arches + * Release tracker + - LP: #1242811 + + [ Upstream Kernel Changes ] + + * scsi: hyper-v storsvc switch up to SPC-3 + + * rebase to v3.12-rc6 + - LP: #1235977 + - LP: #1235523 + - LP: #1239392 + - LP: #1227491 + + * rebase to v3.12-rc3 + - LP: #1231931 + + * rebase to v3.12-rc2 + - LP: #1213820 + - LP: #1213055 + - LP: #1198030 + + -- Tim Gardner Mon, 23 Sep 2013 07:41:07 -0600 + +linux (3.11.0-8.15) saucy; urgency=low + + [ Tim Gardner ] + + * Release tracker + - LP: #1227969 + + * Update lttng + Updated to git://git.lttng.org/lttng-modules.git 9998f5216f4641a79e158135 + Version 2.3.0+ + + [ Upstream Kernel Changes ] + + * igb: Add additional get_phy_id call for i354 devices + - LP: #1219619 + * igb: Read flow control for i350 from correct EEPROM section + - LP: #1219619 + * timekeeping: Fix HRTICK related deadlock from ntp lock changes + Required for lttng update. + + -- Tim Gardner Thu, 19 Sep 2013 07:41:49 -0600 + +linux (3.11.0-7.14) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] sort out linux-tools naming + - LP: #1205284 + * [Packaging] linux-tools: switch to common generic version helper + + [ Paolo Pisati ] + + * [Config] highbank: ecx1000: CPU_IDLE causes instabilities, disable it + + [ Tim Gardner ] + + * Release tracker + - LP: #1226160 + + [ Tony Lindgren ] + + * SAUCE: ARM: dts: Fix muxing and regulator for wl12xx on the SDIO bus + for pandaboard + + [ Upstream Kernel Changes ] + + * USB: handle LPM errors during device suspend correctly + - LP: #1011415 + * usb: don't check pm qos NO_POWER_OFF flag in usb_port_suspend() + - LP: #1011415 + * usb: Don't fail port power resume on device disconnect. + - LP: #1011415 + + [ Upstream Kernel Changes ] + + * rebase to v3.11.1 + + -- Tim Gardner Wed, 11 Sep 2013 07:30:17 -0600 + +linux (3.11.0-7.13) saucy; urgency=low + + * Release tracker + - LP: #1223545 + + [ Andy Whitcroft ] + + * SAUCE: (no-up) scsi: add scsi device flag to request VPD pages be used at SPC-2 + - LP: #1223499 + * SAUCE: (no-up) scsi: add scsi device flag to request READ CAPACITY (16) be preferred + - LP: #1223499 + * SAUCE: (no-up) scsi: hyper-v storage -- mark as VPD capable at SPC-2 + - LP: #1223499 + * SAUCE: (no-up) scsi: hyper-v storage -- mark as preferring READ CAPACITY (16) at SPC-2 + - LP: #1223499 + + [ Maximiliano Curia ] + + * SAUCE: (no-up) Only let characters through when there are active readers. + - LP: #1208740 + + [ Tim Gardner ] + + * [Debian] getabis: Commit new ABI directory, remove the old + * [Config] CONFIG_EFIVAR_FS=y + - LP: #1223195 + * [Config] CONFIG_EFI_VARS_PSTORE=m, + CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE=n + * SAUCE: (no-up) USB: input: cm109.c: Convert high volume dev_err() to dev_err_ratelimited() + - LP: #1222850 + + [ Upstream Kernel Changes ] + + * Intel xhci: refactor EHCI/xHCI port switching + - LP: #1210858 + + -- Tim Gardner Tue, 10 Sep 2013 09:00:19 -0600 + +linux (3.11.0-6.12) saucy; urgency=low + + * Release tracker + - LP: #1222893 + + [ Andy Whitcroft ] + + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch" + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-base.patch" + * ubuntu: (no-squash) AUFS3 -- aufs3-base.patch + * ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch + - LP: #1222407 + + [ Paolo Pisati ] + + * [Config] restore mmc boot on panda + + [ Tyler Hicks ] + + * SAUCE: apparmor: Use shash crypto API interface for profile hashes + - LP: #1216294 + + [ Upstream Kernel Changes ] + + * net: calxedaxgmac: remove NETIF_F_FRAGLIST setting + * net: calxedaxgmac: read correct field in xgmac_desc_get_buf_len + * net: calxedaxgmac: fix race between xgmac_tx_complete and xgmac_tx_err + * net: calxedaxgmac: fix possible skb free before tx complete + * net: calxedaxgmac: update ring buffer tx_head after barriers + * net: calxedaxgmac: fix race with tx queue stop/wake + * net: calxedaxgmac: enable interrupts after napi_enable + * net: calxedaxgmac: fix various errors in xgmac_set_rx_mode + * net: calxedaxgmac: remove some unused statistic counters + * net: calxedaxgmac: fix rx DMA mapping API size mismatches + * net: calxedaxgmac: fix xgmac_xmit DMA mapping error handling + * mfd: rtsx: Read vendor setting from config space + - LP: #1201698 + + -- Tim Gardner Mon, 09 Sep 2013 07:21:06 -0600 + +linux (3.11.0-5.11) saucy; urgency=low + + * Release tracker + - LP: #1221886 + + [ Adam Lee ] + + * SAUCE: Bluetooth: Add support for 04ca:2007 + - LP: #1153448 + * SAUCE: Bluetooth: Add support for 105b:e065 + - LP: #1161261 + + [ Gavin Guo ] + + * SAUCE: Bluetooth: Add support for Broadcom 413c:8143 + - LP: #1166113 + + [ Upstream Kernel Changes ] + + * igb: Reset the link when EEE setting changed + - LP: #1219619 + * igb: Read register for latch_on without return value + - LP: #1219619 + * igb: Added rcu_lock to avoid race + - LP: #1219619 + * igb: don't allow SR-IOV without MSI-X + - LP: #1219619 + * igb: Update MTU so that it is always at least a standard frame size + - LP: #1219619 + * igb: Refactor of init_nvm_params + - LP: #1219619 + * igb: Refactor NVM read functions to accommodate devices with no flash + - LP: #1219619 + * igb: Add device support for flashless SKU of i210 device + - LP: #1219619 + * igb: Fix get_fw_version function for all parts + - LP: #1219619 + * igb: Add macro for size of RETA indirection table + - LP: #1219619 + * igb: Expose RSS indirection table for ethtool + - LP: #1219619 + * igb: Don't look for a PBA in the iNVM when flashless + - LP: #1219619 + * igb: Implementation of 1-sec delay for i210 devices + - LP: #1219619 + * igb: New PHY_ID for i354 device + - LP: #1219619 + * igb: M88E1543 PHY downshift implementation + - LP: #1219619 + * igb: No PHPM support in i354 devices + - LP: #1219619 + * igb: Support to get 2_5G link status for appropriate media type + - LP: #1219619 + * igb: Get speed and duplex for 1G non_copper devices + - LP: #1219619 + * igb: Implementation to report advertised/supported link on i354 devices + - LP: #1219619 + * igb: Update version number + - LP: #1219619 + * Bluetooth: Take proper tty_struct references + - LP: #1189998 + * Bluetooth: Remove the device from the list in the destructor + - LP: #1189998 + * Bluetooth: Move the tty initialization and cleanup out of open/close + - LP: #1189998 + * Bluetooth: Implement .activate, .shutdown and .carrier_raised methods + - LP: #1189998 + * Bluetooth: Fix the reference counting of tty_port + - LP: #1189998 + * Bluetooth: Purge the dlc->tx_queue to avoid circular dependency + - LP: #1189998 + + [ Wen-chien Jesse Sung ] + + * SAUCE: Bluetooth: Support for loading broadcom patchram firmware + - LP: #1065400 + * SAUCE: Bluetooth: Add support for 13d3:3388 and 13d3:3389 + - LP: #1065400 + + -- Tim Gardner Thu, 05 Sep 2013 08:06:17 -0600 + +linux (3.11.0-5.10) saucy; urgency=low + + [ Andy Whitcroft ] + + * Release tracker + - LP: #1220222 + * Revert "[Config] Fix ubuntu directoy Kbuilds" + * Revert "aufs update dropped some Kbuild files" + * Revert "ubuntu: AUFS -- follow rename of loop.h into drivers/block" + * Revert "ubuntu: AUFS -- update to + 8e503d4142c189ed6c47a2177ad2cd058e8d340e" + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch" + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-base.patch" + * rebase to v3.11 final + * [Config] clean up ubuntu/Kconfig and ubuntu/Makefile + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: (no-squash) AUFS3 -- aufs3-base.patch + * ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch + * ubuntu: AUFS -- update to 5ac5fe26a90a818218310e208d17688fddb07622 + * ubuntu: (no-squash) AUFS -- enable aufs + * ubuntu: AUFS -- fix remaining d_count references to use accessor + * ubuntu: lttng -- follow rename of pid_ns + * SAUCE: disable stack-protector for ARM compressed bootloader + + [ Paolo Pisati ] + + * [Config] ARM_ATAG_DTB_COMPAT=y + + [ Rob Herring ] + + * [Config] Enable KVM and virtio for armhf generic-lpae + + [ Tim Gardner ] + + * [Config] CONFIG_ARPD=y + * [Config] CONFIG_ZSWAP=y + - LP: #1215379 + + [ Upstream Kernel Changes ] + + * uvcvideo: quirk PROBE_DEF for Dell SP2008WFP monitor. + - LP: #1217957 + * ARM: use phys_addr_t for DMA zone sizes + * ARM: highbank: enable DMA zone for LPAE + * ARM: highbank: select ARCH_HAS_HOLES_MEMORYMODEL + * ARM: highbank: select required errata work-arounds + * DMA: fix AMBA PL08x compilation issue with 64bit DMA address type + * DMA: fix printk warning in AMBA PL08x DMA driver + * ARM: highbank: select ARCH_DMA_ADDR_T_64BIT for LPAE + * ARM: move outer_cache declaration out of ifdef + * ARM: highbank: avoid L2 cache smc calls when PL310 is not present + * ARM: highbank: clean-up some unused includes + * ARM: xen: only set pm function ptrs for Xen guests + + [ Upstream Kernel Changes ] + + * rebase to v3.11 + + -- Andy Whitcroft Tue, 03 Sep 2013 17:08:06 +0100 + +linux (3.11.0-4.9) saucy; urgency=low + + [ Tim Gardner ] + + * rebase to v3.11-rc7 + * Release tracker + - LP: #1216962 + + [ Upstream Kernel Changes ] + + * mwifiex: do not create AP and P2P interfaces upon driver loading + - LP: #1212720 + + -- Tim Gardner Mon, 26 Aug 2013 06:25:35 -0600 + +linux (3.11.0-3.8) saucy; urgency=low + + [ Johannes Berg ] + + * SAUCE: mac80211: ignore (E)CSA in probe response frames + - LP: #1201470 + + -- Tim Gardner Fri, 23 Aug 2013 09:47:36 -0600 + +linux (3.11.0-3.7) saucy; urgency=low + + [ Tim Gardner ] + + * SAUCE: (no-up) hv_vss_daemon -- prevent self-daemonising to allow + upstart to track + * SAUCE: (no-up) hv -- bodge hv_vss_daemon so it can use the local + linux/hyperv.h + * SAUCE: hv: Add vss daemon to Makefile + * [Debian] Add hv_vss_daemon to tools package + - LP: #1213282 + * [Config] Fix ubuntu directoy Kbuilds + - LP: #1181755 + + -- Tim Gardner Tue, 20 Aug 2013 08:34:05 -0600 + +linux (3.11.0-3.6) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] tools: conditionalise x86 and hyper-v tools sensibly + * [Config] tools: enable x86 and hyper-v + + [ John Johansen ] + + * Revert "SAUCE: (no-up) apparmor: Sync to apparmor 3 dev stable + snapshot" + * Revert "SAUCE: (no-up) apparmor: fix apparmor module status for none + root users" + * SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot + + [ Joseph Salisbury ] + + * SAUCE: (no-up) intel_ips: blacklist ASUSTek G60JX laptops + - LP: #1210848 + + [ Kamal Mostafa ] + + * [debian] tools: ship 'cpupower' in linux-tools + - LP: #1158668 + * [Config] Build-dep on libpci-dev for cpu tools + - LP: #1158668 + + [ Tim Gardner ] + + * rebase to v3.11-rc6 + * Release tracker + - LP: #1213941 + + -- Tim Gardner Fri, 16 Aug 2013 07:02:07 -0600 + +linux (3.11.0-2.5) saucy; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_PM_DEBUG=y + - LP: #1210539 + * rebase to v3.11-rc5 + * Release tracker + - LP: #1211378 + + -- Tim Gardner Mon, 12 Aug 2013 06:10:39 -0600 + +linux (3.11.0-1.4) saucy; urgency=low + + [ Tim Gardner ] + + * Bump ABI when making changes to the inclusion list lest + you cause conflicts with existing installed kernel + packages. + - LP: #1210331 + + -- Tim Gardner Fri, 09 Aug 2013 03:03:51 +0100 + +linux (3.11.0-0.3) saucy; urgency=low + + [ Tim Gardner ] + + * [Config] Include rbd and kvm in the virtual inclusion list + - LP: #1206961 + * [Config] Removed obsolete inclusion list entries + + -- Tim Gardner Tue, 06 Aug 2013 08:52:14 +0100 + +linux (3.11.0-0.2) saucy; urgency=low + + [ Bruce Allan ] + + * SAUCE: (no-up) e1000e: fix I217/I218 PHY initialization flow + - LP: #1206757 + * SAUCE: (no-up) e1000e: enable support for new device IDs + - LP: #1206757 + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor 3 dev stable snapshot + + [ Paolo Pisati ] + + * build vexpress a15 dtb + * [Config] disable Broadcom bcm support (ARCH_BCM) + * [Config] disable Allwinner a1x support (ARCH_SUNXI) + * [Config] disable WonderMedia WM8850 support (ARCH_WM8850) + * [Config] disable Rockchip support (ARCH_ROCKCHIP) + * [Config] disable STMicroelectronics STiH41x SOCs (ARCH_STI) + * [Config] disable TI Keystone, AM43xx and OMAP5 support + * [Config] ARM_APPENDED_DTB=y + + [ Tim Gardner ] + + * rebase to v3.11-rc4 + * overlayfs: Update to v19 + * [Config] Enable overlayfs + * SAUCE: Fix lttng compile errors + + [ Upstream Kernel Changes ] + + * rebase to v3.11-rc4 + - LP: #1163720 + - LP: #1162026 + - LP: #1195636 + - LP: #1195597 + - LP: #1180409 + - LP: #1168430 + + -- Tim Gardner Sun, 04 Aug 2013 03:45:31 -0600 + +linux (3.11.0-0.1) saucy; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to 64ccccf8525fee499625b517c0faadf784c79e93 + - LP: #1163720 + - LP: #1162026 + - LP: #1195636 + - LP: #1195597 + - LP: #1180409 + - LP: #1168430 + + -- Tim Gardner Mon, 08 Jul 2013 08:50:46 -0600 + +linux (3.10.0-2.10) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_INTEL_MEI*=m + - LP: #1196155 + * [Config] CONFIG_DEBUG_INFO=y + + [ Stephen Warren ] + + * [Config] fix Calxeda xgmac module filename + + [ Upstream Kernel Changes ] + + * Revert "serial: 8250_pci: add support for another kind of NetMos + Technology PCI 9835 Multi-I/O Controller" + - LP: #1190967 + * mfd: lpc_ich: Add support for Intel Avoton SoC + - LP: #1196658 + + -- Andy Whitcroft Fri, 05 Jul 2013 18:08:02 +0100 + +linux (3.10.0-2.9) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10 + + [ John Johansen ] + + * Revert "SAUCE: (no-up) apparmor: Fix quieting of audit messages for + network mediation" + * Revert "SAUCE: (no-up) apparmor: Fix compile warnings" + * Revert "SAUCE: (no-up) AppArmor: basic networking rules" + * Revert "SAUCE: (no-up) apparmor: Add the ability to mediate mount" + * Revert "SAUCE: (no-up) AppArmor: Add profile introspection file to + interface" + * Revert "SAUCE: (no-up) AppArmor: Disable Add PR_{GET,SET}_NO_NEW_PRIVS + to prevent execve from granting privs" + * SAUCE: (no-up) apparmor: Sync to apparmor 3 dev stable snapshot + + [ Upstream Kernel Changes ] + + * rebase to v3.10 + + -- Andy Whitcroft Mon, 01 Jul 2013 17:42:29 +0100 + +linux (3.10.0-1.8) saucy; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1195717 + + [ Andy Whitcroft ] + + * Revert "ubuntu: overlayfs -- follow change to do_splice_direct + interface" + * Revert "ubuntu: overlayfs -- expose do_splice_direct prototype" + * Revert "SAUCE: ubuntu: overlayfs -- ovl_path_open should not take path + reference" + * Revert "ubuntu: overlayfs -- add FS_ALIAS" + * Revert "ubuntu: overlayfs -- + overlayfs-copy-up-i_uid-i_gid-from-the-underlying-inode" + * Revert "ubuntu: overlayfs -- ovl-switch-to-inode_permission" + * Revert "ubuntu: overlayfs -- vfs-export-inode_permission-to-modules" + * Revert "ubuntu: overlayfs -- overlayfs-create-new-inode-in-ovl_link" + * Revert "ubuntu: overlayfs -- + overlayfs-fix-possible-leak-in-ovl_new_inode" + * Revert "ubuntu: overlayfs -- fs-limit-filesystem-stacking-depth" + * Revert "ubuntu: overlayfs -- overlay-overlay-filesystem-documentation" + * Revert "ubuntu: overlayfs -- overlayfs-implement-show_options" + * Revert "ubuntu: overlayfs -- overlayfs-add-statfs-support" + * Revert "ubuntu: overlayfs -- overlay filesystem" + * Revert "ubuntu: overlayfs -- vfs-introduce-clone_private_mount" + * Revert "ubuntu: overlayfs -- vfs-export-do_splice_direct-to-modules" + * Revert "ubuntu: overlayfs -- vfs-add-i_op-dentry_open" + * ubuntu: overlayfs v18 -- -- overlayfs: add statfs support + + [ Erez Zadok ] + + * ubuntu: overlayfs v18 -- -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs v18 -- -- vfs: add i_op->dentry_open() + * ubuntu: overlayfs v18 -- -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs v18 -- -- vfs: export __inode_permission() to modules + * ubuntu: overlayfs v18 -- -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs v18 -- -- overlay filesystem + * ubuntu: overlayfs v18 -- -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs v18 -- -- overlay: overlay filesystem documentation + + [ Tim Gardner ] + + * [Config] CONFIG_SUNRPC_DEBUG=y + - LP: #1127319 + + -- Andy Whitcroft Fri, 28 Jun 2013 10:26:52 +0100 + +linux (3.10.0-0.7) saucy; urgency=low + + [ Andy Whitcroft ] + + * autopkgtest: switch Depends: to build-essential + + -- Andy Whitcroft Tue, 25 Jun 2013 08:40:55 +0100 + +linux (3.10.0-0.6) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_ARCH_TEGRA to fix FTBFS on armhf + * SAUCE: ubuntu: overlayfs -- ovl_path_open should not take path reference + - LP: #1098378 + * ubuntu: AUFS -- update to 4f14cef47eb7c23eda7198931fbab1040866b6ee + * ubuntu: overlayfs -- expose do_splice_direct prototype + * ubuntu: overlayfs -- follow change to do_splice_direct interface + * [Config] flip CONFIG_NO_HZ_FULL_ALL off as it is overheating machines + - LP: #1192691 + + [ Stefan Bader ] + + * (d-i) Add dm-snapshot to md-modules + - LP: #1191726 + + [ Tim Gardner ] + + * Release tracker + - LP: #1194149 + * [Config] CONFIG_WIL6210=n for armhf + * [Config] d-i: Add calxedaxgmac to nic-modules + - LP: #1192358 + * [debian] Use dh_strip + - LP: #1192759 + * [Config] Enable perf for armhf + * do_tools=false when cross compiling + * [Config] CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y + - LP: #1108082 + + [ Upstream Kernel Changes ] + + * nsp32: switch reset delay to msleep() as it is tooo long + * alx: add a simple AR816x/AR817x device driver + Plucked from linux-next. replaces ubuntu/alx in favor of + 'to be merged' version in 3.11. + * rebase to v3.10-rc7 + - LP: #1189363 + + -- Tim Gardner Sat, 22 Jun 2013 18:10:31 -0600 + +linux (3.10.0-0.5) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10-rc6 + * [Config] updateconfigs following rebase to v3.10-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc6 + + -- Andy Whitcroft Mon, 17 Jun 2013 11:12:39 +0100 + +linux (3.10.0-0.4) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Config] updateconfigs following rebase to v3.10-rc4 + + -- Andy Whitcroft Mon, 10 Jun 2013 11:42:28 +0100 + +linux (3.10.0-0.3) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc5 + - LP: #1186170 + + -- Andy Whitcroft Mon, 10 Jun 2013 09:23:31 +0100 + +linux (3.10.0-0.2) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10-rc4 + * [Config] CONFIG_BINFMT_SCRIPT=y to fix booting initramfs scripts + * [Config] enable SND_PCM_DEBUG SND_PCM_XRUN_DEBUG + - LP: #1187744 + * [Config] enforce CONFIG_BINFMT_SCRIPT=y + + [ Dave Chiluk ] + + * SAUCE: ncpfs: fix rmdir returns Device or resource busy + - LP: #1035226 + + [ Tim Gardner ] + + * rebase to v3.10-rc3 + * [Config] sparc be gone + * [Config] ia64 be gone + * d-i: block-modules provides nbd-modules + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc4 + * rebase to v3.10-rc3 + + -- Tim Gardner Tue, 28 May 2013 06:16:46 -0600 + +linux (3.10.0-0.1) saucy; urgency=low + + [ Tim Gardner ] + + * UBUNTU: Disabled lttng + * UBUNTU: Disable aufs for FTBS + * UBUNTU: Disabled alx + * UBUNTU: alx: rename NETIF_F_HW_VLAN_* feature flags to NETIF_F_HW_VLAN_CTAG_* + * UBUNTU: rebase to v3.10-rc2 + * UBUNTU: SAUCE: uvcvideo: quirk PROBE_DEF for Alienware X51 OmniVision webcam + + [ Andy Whitcroft ] + + * UBUNTU: [Config] update standards version to 3.9.4.0 + * UBUNTU: [Config] squash duplicate package description (long and short) + * UBUNTU: [Config] fix up Vcs-git: to point to saucy + * UBUNTU: [Config] drop depenancy on util-linux as is Essential + * UBUNTU: [Config] drop redundant Build-Conficts: + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc2 + - LP: #1180351 + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc1 + - LP: #1172151 + - LP: #1089795 + - LP: #1167270 + - LP: #1128840 + + -- Tim Gardner Tue, 14 May 2013 13:41:07 -0600 + +linux (3.10.0-0.0) saucy; urgency=low + + * Dummy + + -- Tim Gardner Thu, 09 May 2013 20:30:40 +0100 + +linux (3.9.0-2.6) saucy; urgency=low + + [ Tim Gardner ] + + * rebase to v3.9.2 + + -- Tim Gardner Thu, 09 May 2013 20:30:40 +0100 + +linux (3.9.0-1.5) saucy; urgency=low + + [ Tim Gardner ] + + * rebase to v3.9.1 + + -- Tim Gardner Wed, 08 May 2013 12:49:45 -0400 + +linux (3.9.0-0.4) saucy; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: overlayfs -- add FS_ALIAS + + [ Tim Gardner ] + + * Added lttng + - LP: #1175784 + + -- Tim Gardner Thu, 02 May 2013 17:17:13 -0400 + +linux (3.9.0-0.3) saucy; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.9 + + -- Tim Gardner Mon, 29 Apr 2013 18:20:00 -0400 + +linux (3.9.0-0.2) saucy; urgency=low + + [ Tim Gardner ] + + * Enable extras packaging for amd64/i386. + Fixes build depenencies with brittany and linux-meta. + + -- Tim Gardner Mon, 29 Apr 2013 05:37:01 -0600 + +linux (3.9.0-0.1) saucy; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc8 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc7 + - LP: #1128840 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc4 + - LP: #1095315 + - LP: #886975 + - LP: #1086921 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc3 + - LP: #1155016 + - LP: #1103594 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc2 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc1 + - LP: #901105 + - LP: #961286 + - LP: #1011792 + - LP: #1128934 + - LP: #886975 + - LP: #978807 + + -- Tim Gardner Wed, 20 Feb 2013 09:12:39 -0700 + +linux (3.8.0-7.14) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_RCU_USER_QS=n + * [Config] CONFIG_MTD_ONENAND_SIM=n + * annotations: add annotations for CONFIG_CC_STACKPROTECTOR + + [ Upstream Kernel Changes ] + + * rebase to v3.8 + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1130111 + * UBUNTU: SAUCE: rt2x00: rt2x00pci_regbusy_read() - only print register access failure once + - LP: #1128840 + + -- Tim Gardner Mon, 18 Feb 2013 09:25:56 -0700 + +linux (3.8.0-6.13) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1125364 + * Add ahci modules to d-i + - LP: #1124415 + + + [ Chris Wilson ] + + * SAUCE: drm/i915: Wait for pending flips to complete before tearing down + the encoders + - LP: #1097315 + + -- Tim Gardner Wed, 13 Feb 2013 12:16:48 -0700 + +linux (3.8.0-6.12) raring; urgency=low + + [Tim Gardner] + + * perf: NO_LIBPERL=1 + * Fix linux-headers dependency + * Release Tracking Bug + - LP: #1124362 + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_AUFS_EXPORT to allow nfs exports + - LP: #1121699 + + [ Daniel Vetter ] + + * SAUCE: drm/i915: write backlight harder + - LP: #954661 + + -- Tim Gardner Wed, 13 Feb 2013 10:25:11 -0700 + +linux (3.8.0-6.11) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1122071 + * rebase to v3.8-rc7 + * Add libaudit-dev as a build dependency + * Build perf with NO_LIBPYTHON=1 to avoid a python build dependency. + + [ Leann Ogasawara ] + + * [Config] Remove CONFIG_SATA_AHCI annotation + + -- Tim Gardner Fri, 08 Feb 2013 07:41:13 -0500 + +linux (3.8.0-5.10) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1118568 + + * Bump ABI to fix install issue with 3.8.0-4.8. + Moving drivers/ata/*ahci* to linux-image caused an + install conflict with linux-image-extras without an + ABI bump. + + [ Jan Beulich ] + + * SAUCE: xen-pciback: rate limit error messages from + xen_pcibk_enable_msi{, x}() + - LP: #1117336 + - CVE-2013-0231 + + -- Tim Gardner Thu, 07 Feb 2013 05:38:12 -0700 + +linux (3.8.0-4.9) raring; urgency=low + + [ Herton Ronaldo Krzesinski ] + + * d-i: Add mellanox ethernet drivers to nic-modules + - LP: #1015339 + + [ Joseph Salisbury ] + + * SAUCE: ACPI: Add DMI entry for Sony VGN-FW41E_H + - LP: #1113547 + + [ Kamal Mostafa ] + + * SAUCE: alx driver import script + + [ Qualcomm Atheros, Inc ] + + * SAUCE: alx: Update to heads/master + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1117673 + + * [debian] Remove dangling symlink from headers package + - LP: #1112442 + * [config] CONFIG_ALX=m + * [Config] Add alx to d-i nic-modules + * [Config] CONFIG_SATA_AHCI=m + - LP: #1056563 + + -- Leann Ogasawara Tue, 05 Feb 2013 05:54:32 -0800 + +linux (3.8.0-4.8) raring; urgency=low + + [ Allen Ibara ] + + * SAUCE: imx6: dts: Add IMX6Q AHCI support + + [ Andy Whitcroft ] + + * rebase to v3.8-rc6 + * updateconfigs following rebase to v3.8-rc6 + + [Leann Ogasawara] + + * Release Tracking Bug + - LP: #1112573 + + [ Paolo Pisati ] + + * SAUCE: imx6: enable sata clk if SATA_AHCI_PLATFORM + * [Config] SERIAL_AMBA_PL011=y (vexpress serial console) + * [Config] MMC_ARMMMCI=y (vexpress mmc) + * [Config] FB_ARMCLCD=y (vexpress framebuffer) + + [ Seth Forshee ] + + * [Config] CONFIG_MAC80211_MESSAGE_TRACING=y + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc6 + - LP: #1107477 + + -- Leann Ogasawara Fri, 01 Feb 2013 07:20:59 -0800 + +linux (3.8.0-3.7) raring; urgency=low + + [ Andy Green ] + + * SAUCE: ARM: OMAP2+: add cpu id register to MAC address helper + * SAUCE: ARM: omap2 add mac address allocation register api + * SAUCE: ARM: omap2 panda register ethernet and wlan for automatic mac + allocation + + [ Leann Ogasawara ] + + * rebase to v3.8-rc5 + * Release Tracking Bug + - LP: #1111486 + + [ Paolo Pisati ] + + * SAUCE: davinci: vpss: compilation fix + * [Config] enable TI OMAP4 support (Pandaboard/ES) + * [Config] OMAP_USB2=y (since TWL6030_USB depends on it) + * [Config] enable Freescale IMX6 support (SabreLite) + * [Config] SERIAL_IMX_CONSOLE=y + * [Config] MMC_*_IMX=y + * [Config] disable USB_SUSPEND + * [Config] USB_MXS_PHY=y + * [Config] USB_CHIPIDEA=y + * SAUCE: DTB: add support for multiple DTBs + * SAUCE: DTB: build imx6q-sabrelite + * SAUCE: DTB: build beaglexm + * SAUCE: DTB: build panda/panda es + * [Config] disable CPU_FREQ + * [Config] PANEL_TFP410=y (video DVI output) + * [Config] SND_OMAP_SOC*=y + * [Config] SND_IMX_SOC*=y + * [Config] I2C_IMX=y + * [Config] SPI_IMX=m + + [ Stefan Bader ] + + * [Config] Move 9p modules into generic package + - LP: #1107658 + + [ Tony Lindgren ] + + * SAUCE: ARM: OMAP2+: Limit omap initcalls to omap only on multiplatform + kernels + * SAUCE: ARM: OMAP2+: Use omap initcalls + * SAUCE: ARM: OMAP: Fix i2c cmdline initcall for multiplatform + * SAUCE: ARM: OMAP: Fix dmaengine init for multiplatform + * SAUCE: ARM: OMAP2+: Add multiplatform debug_ll support + * SAUCE: ARM: OMAP2+: Disable code that currently does not work with + multiplaform + * SAUCE: ARM: OMAP2+: Enable ARCH_MULTIPLATFORM support + * SAUCE: ARM: OMAP2+: Add minimal support for booting vexpress + * SAUCE: ARM: OMAP2+: Remove now obsolete uncompress.h and debug-macro.S + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc5 + - LP: #1096789 + + -- Leann Ogasawara Thu, 31 Jan 2013 06:44:52 -0800 + +linux (3.8.0-2.6) raring; urgency=low + + [ Adam Conrad ] + + * Fix up linux-tools -> SRCPKGNAME-tools rename + + [ Andy Whitcroft ] + + * [Config] re-disable CONFIG_SOUND_OSS + - LP: #1105230 + + [ Arend van Spriel ] + + * SAUCE: brcmsmac: fix tx status processing + + [Leann Ogasawara] + + * Release Tracking Bug + - LP: #1105104 + + -- Leann Ogasawara Fri, 25 Jan 2013 11:56:30 -0800 + +linux (3.8.0-1.5) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1101235 + + [ Dudley Du ] + + * SAUCE: Input: add support for Cypress PS/2 Trackpads + - LP: #978807 + + [ Kamal Mostafa ] + + * SAUCE: Input: increase struct ps2dev cmdbuf[] to 8 bytes + * SAUCE: Input: Cypress PS/2 Trackpad simulated multitouch + * [Config] Add CONFIG_PS2_CYPRESS + + [ Tim Gardner ] + + * rebase to v3.8-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc4 + - LP: #1095315 + - LP: #886975 + - LP: #1086921 + + -- Leann Ogasawara Thu, 17 Jan 2013 10:50:22 -0800 + +linux (3.8.0-0.4) raring; urgency=low + + [ Leann Ogasawara ] + + * [Config] Update CONFIG_TOUCHSCREEN_EGALAX build annotation + * [Config] Update CONFIG_IIO build annotation + * [Config] Update CONFIG_TOUCHSCREEN_EETI annotation + * [Config] Remove CONFIG_SPI_DW_MMIO annotation + * [Config] Remove CONFIG_SPI_PL022 annotation + * [Config] Update CONFIG_EZX_PCAP annotation + * [Config] Update CONFIG_SENSORS_AK8975 annotation + * [Config] Disable CONFIG_DRM_MGAG200 + - LP: #1042903 + + -- Leann Ogasawara Mon, 14 Jan 2013 10:01:50 -0800 + +linux (3.8.0-0.3) raring; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) trace: add trace events for open(), exec() and + uselib()" + + [ Scott James Remnant ] + + * SAUCE: (no-up) trace: add trace events for open(), exec() and uselib() + (for v3.7+) + - LP: #1085766, #462111 + + -- Andy Whitcroft Fri, 11 Jan 2013 16:57:27 +0000 + +linux (3.8.0-0.2) raring; urgency=low + + [ Tim Gardner ] + + * [packaging] Add macro to selectively disable building perf + * [packaging] Cannot depend on universe package libaudit-dev + + -- Tim Gardner Thu, 10 Jan 2013 12:43:24 -0700 + +linux (3.8.0-0.1) raring; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc3 + - LP: #1096789 + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc2 + - LP: #1082357 + - LP: #1075882 + + -- Andy Whitcroft Mon, 17 Dec 2012 10:35:09 +0000 + +linux (3.7.0-7.15) raring; urgency=low + + [ Chris J Arges ] + + * SAUCE: add eeprom_bad_csum_allow module parameter + - LP: #1070182 + + [ Leann Ogasawara ] + + * Add ceph to linux-image for virtual instances + - LP: #1063784 + + [ Serge Hallyn ] + + * SAUCE: net: dev_change_net_namespace: send a KOBJ_REMOVED/KOBJ_ADD + + [ Tim Gardner ] + + * [Config] CONFIG_SLUB_DEBUG=y + - LP: #1090308 + + [ Upstream Kernel Changes ] + + * Revert "[SCSI] sd: Implement support for WRITE SAME" + - LP: #1089818 + + -- Leann Ogasawara Wed, 12 Dec 2012 06:50:20 -0800 + +linux (3.7.0-6.14) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] annotations: all new annotations scheme including defaults + * [Configs] apply annotation updates to main configs (top section) + + [ Leann Ogasawara ] + + * Revert "SAUCE: include and for mmc_core arm + build" + * Revert "SAUCE: [arm] fixup __aeabi_uldivmod undefined build error" + * Temporarily disable module check for build + + [ Stefan Bader ] + + * ubuntu: dm-raid45: Adapt to upstream interface changes + * Re-enable build of dm-raid45 + + [ Tim Gardner ] + + * SAUCE: Moved scripts/fw-to-ihex.sh to debian/scripts/misc + * SAUCE: ACPICA: Fix ACPI mutex object allocation memory leak on error + * SAUCE: drm: Fix possible EDID memory allocation oops + * SAUCE: ttm: Fix possible _manager memory allocation oops + * SAUCE: iwlwifi: iwlagn_request_scan: Fix check for priv->scan_request + * SAUCE: i915: intel_set_mode: Reduce stack allocation from 500 bytes to + 2 pointers + + [ Tomas Hozza ] + + * SAUCE: tools: hv: Netlink source address validation allows DoS + - LP: #1084777 + - CVE-2012-5532 + + [ Upstream Kernel Changes ] + + * rebase to v3.7 + + -- Leann Ogasawara Wed, 05 Dec 2012 14:11:12 -0800 + +linux (3.7.0-5.13) raring; urgency=low + + [ Lino Sanfilippo ] + + * SAUCE: inotify, fanotify: replace fsnotify_put_group() with + fsnotify_destroy_group() + - LP: #922906 + * SAUCE: fsnotify: introduce fsnotify_get_group() + - LP: #922906 + * SAUCE: fsnotify: use reference counting for groups + - LP: #922906 + * SAUCE: fsnotify: take groups mark_lock before mark lock + - LP: #922906 + * SAUCE: fanotify: add an extra flag to mark_remove_from_mask that + indicates wheather a mark should be destroyed + - LP: #922906 + * SAUCE: fsnotify: use a mutex instead of a spinlock to protect a groups + mark list + - LP: #922906 + * SAUCE: fsnotify: pass group to fsnotify_destroy_mark() + - LP: #922906 + * SAUCE: fsnotify: introduce locked versions of fsnotify_add_mark() and + fsnotify_remove_mark() + - LP: #922906 + * SAUCE: fsnotify: dont put marks on temporary list when clearing marks + by group + - LP: #922906 + * SAUCE: fsnotify: change locking order + - LP: #922906 + + [ Tim Gardner ] + + * [Config] CONFIG_NFC_LLCP=y + * [Config] get-firmware: Filter new files through fwinfo + * [Config] CONFIG_MTD_NAND_DOCG4=m for all arches + * [Config] CONFIG_DRM_EXYNOS_HDMI=y + * [Config] CONFIG_XEN=y for all arches + * [Config] CONFIG_SND_OMAP_SOC_ZOOM2=m + * [Config] CONFIG_MMC_DW_EXYNOS=m + * [Config] CONFIG_GPIO_ADNP=m + * [Config] find-obsolete-firmware: Use correct path + * rebase to v3.7-rc8 + - LP: #1084640 + + [ Upstream Kernel Changes ] + + * Revert "VFS: don't do protected {sym,hard}links by default" + - LP: #1084192 + + -- Tim Gardner Wed, 28 Nov 2012 16:07:08 +0000 + +linux (3.7.0-4.12) raring; urgency=low + + [ Tim Gardner ] + + * Revert "[Config] Use -j1 for headers_install" + * Revert "[Config] install-arch-headers needs a valid config" + Strayed into the weeds in search of the root cause of the periodic + build failure. + Fixes powerpc FTBS introduced in -4.11. + * [Config] hmake -j1 + The kernel makefile appears to have parallel dependency + problems for the install_headers target. This appears to be root + cause for a periodic build failure on N-way machines. + + -- Leann Ogasawara Tue, 27 Nov 2012 12:33:06 -0800 + +linux (3.7.0-4.11) raring; urgency=low + + [ Tim Gardner ] + + * [Config] Use -j1 for headers_install + Also fixes a powerpc FTBS introduced by + "[Config] install-arch-headers needs a valid config". + + -- Tim Gardner Tue, 27 Nov 2012 10:19:30 -0700 + +linux (3.7.0-4.10) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] add rebuild-test support for autopkgtest + - LP: #1081500 + * [tests] move build tests out of the way + - LP: #1081500 + * [tests] add an autopkgtest rebuild test + - LP: #1081500 + + [ Tim Gardner ] + + * rebase to v3.7-rc7 + * SAUCE: Remove emi62 files duplicated in linux-firmware + * SAUCE: Remove sb16 files duplicated in linux-firmware + * SAUCE: Remove whiteheat files duplicated in linux-firmware + * SAUCE: Remove yamaha files duplicated in linux-firmware + * SAUCE: Remove dsp56k files used only by m68k + * SAUCE: firmware: Remove last vestiges of dabusb + * SAUCE: Remove vicam files duplicated in linux-firmware + * [Config] install-arch-headers needs a valid config + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc7 + - LP: #1076840 + - LP: #1081466 + + -- Leann Ogasawara Wed, 21 Nov 2012 06:07:23 -0800 + +linux (3.7.0-3.9) raring; urgency=low + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_X86_CPUFREQ_NFORCE2=y + - LP: #1079900 + * Add nfsv3 to nfs-modules udeb + + [ Paolo Pisati ] + + * [Config] SND_OMAP_SOC*=y + - LP: #1019321 + + [ Stefan Bader ] + + * SAUCE: (no-up) xen/netfront: handle compound page fragments on transmit + - LP: #1078926 + + [ Tim Gardner ] + + * Revert "SAUCE: SECCOMP: audit: always report seccomp violations" + - LP: #1079469 + * Revert "SAUCE: omap3 clocks .dev_id = NULL" + * rebase to v3.7-rc6 + * SAUCE: script to detect obsolete firmware + * SAUCE: Remove yam files duplicated in linux-firmware + * SAUCE: Remove tehuti files duplicated in linux-firmware + * SAUCE: Remove matrox files duplicated in linux-firmware + * SAUCE: Remove cxgb3 files duplicated in linux-firmware + * SAUCE: Remove r128 files duplicated in linux-firmware + * SAUCE: Remove acenic files duplicated in linux-firmware + * SAUCE: Remove keyspan files duplicated in linux-firmware + * SAUCE: Remove sun files duplicated in linux-firmware + * SAUCE: Remove radeon files duplicated in linux-firmware + * SAUCE: Update bnx2x firmware to 7.8.2.0 + * [Config] generic.inclusion-list: econet has disappeared + + [ Upstream Kernel Changes ] + + * seccomp: forcing auditing of kill condition + - LP: #1079469 + * rebase to v3.7-rc6 + + -- Leann Ogasawara Tue, 20 Nov 2012 12:28:55 -0800 + +linux (3.7.0-2.8) raring; urgency=low + + [ Andy Whitcroft ] + + * Revert "overlayfs: disable until FTBS is fixed" + * Revert "ubuntu: overlayfs" + * Revert "ubuntu: AUFS" + * ubuntu: overlayfs -- overlayfs: add statfs support + * ubuntu: overlayfs -- ovl: switch to __inode_permission() + * ubuntu: overlayfs -- overlayfs: copy up i_uid/i_gid from the underlying + inode + - LP: #944386 + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: AUFS (no-squash) -- aufs3-base.patch + * ubuntu: AUFS (no-squash) -- aufs3-standalone.patch + * ubuntu: AUFS: aufs-update -- follow the uapi header changes + * ubuntu: AUFS -- update to f2873474324d0a31af4340554b9715f51331bc7f + * ubuntu: AUFS (no-squash) -- reenable + - LP: #1079193 + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: add i_op->dentry_open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + * ubuntu: overlayfs -- vfs: export __inode_permission() to modules + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Robin Dong ] + + * ubuntu: overlayfs -- overlayfs: fix possible leak in ovl_new_inode + * ubuntu: overlayfs -- overlayfs: create new inode in ovl_link + + -- Andy Whitcroft Thu, 15 Nov 2012 13:35:12 +0000 + +linux (3.7.0-1.7) raring; urgency=low + + [ Tim Gardner ] + + * [Config] Drop dependency on libaudit-dev + Its a universe package which causes an FTBS on the builders. + libaudit-dev is not strictly required for the perf tools build. + + -- Tim Gardner Wed, 14 Nov 2012 10:08:13 -0700 + +linux (3.7.0-1.6) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] enforce -- switch CONFIG_NVRAM to more readable form + * [Config] better encode the CONFIG_NVRAM constaint + * enforcer -- fix debugging output + + [ Ben Collins ] + + * [Config] Add custom_override rule to allow for alternate kernel + file/install + * [Config] Use SRCPKGNAME as prefix for indep linux headers package + + [ Tim Gardner ] + + * [Config] Dropped armel + * Drop highbank from ABI fetch list + * [Config] Use dh_prep instead of 'dh_clean -k' + * [Config] Build depend on libaudit-dev, libunwind8-dev for tools + * [Config] Document binary-indep dependency chain + * rebase to v3.7-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc5 + + -- Tim Gardner Tue, 13 Nov 2012 07:13:37 -0500 + +linux (3.7.0-0.5) raring; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_AMD_IOMMU_V2=m + - LP: #1071520 + * [Config] CONFIG_MTD_ONENAND_SIM=n for armel + Fixes FTBS + + -- Tim Gardner Thu, 08 Nov 2012 15:45:39 -0500 + +linux (3.7.0-0.4) raring; urgency=low + + [ Ben Collins ] + + * [Config] Update enforce rule for CONFIG_NVRAM to better suit flavours + + [ Tim Gardner ] + + * [Config] do_tools=false for arm + + -- Tim Gardner Thu, 08 Nov 2012 05:39:51 -0700 + +linux (3.7.0-0.3) raring; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_DRM_EXYNOS_HDMI=n for armhf + * [Config] CONFIG_MTD_NAND_DOCG4=n for armel/armhf + * [Config] Drop highbank harder + + -- Tim Gardner Wed, 07 Nov 2012 18:11:45 +0000 + +linux (3.7.0-0.2) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] add fs/udf to linux-image to support DVD/CD formats in virtual + instances + - LP: #1066921 + * [Config] drop highbank builds + + [ Jeremy Kerr ] + + * SAUCE: efivarfs: Implement exclusive access for {get, set}_variable + - LP: #1063061 + + [ Leann Ogasawara ] + + * Reinstate dropped.txt from Ubuntu-3.7.0-0.1-rc1 + + [ Tim Gardner ] + + * [Config] Dropped powerpc/ppc64 in favour of the community kernel + * [Config] CONFIG_MODULE_SIG=y for amd64,i386, and highbank + * rebase to v3.7-rc4 + * SAUCE: MODSIGN: Emit error for incorrectly signed module + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc4 + + -- Tim Gardner Mon, 05 Nov 2012 05:35:41 -0700 + +linux (3.7.0-0.1) raring; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc3 + - LP: #1056078 + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc2 + - LP: #1060729 + - LP: #1059523 + - LP: #1006690 + - LP: #1049623 + - LP: #1046512 + - LP: #1052499 + - LP: #1037642 + - LP: #559939 + - LP: #1052460 + - LP: #939161 + - LP: #1046734 + + -- Tim Gardner Tue, 02 Oct 2012 08:13:07 -0600 + +linux (3.6.0-0.1) UNRELEASED; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v3.6 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc6 + - LP: #1000424 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc5 + - LP: #1040077 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc3 + - LP: #1038651 + - LP: #1034779 + + -- Leann Ogasawara Tue, 24 Jul 2012 06:37:09 -0700 + +linux (3.5.0-6.6) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION enable IPv6 + experimental features + * SAUCE: highbank -- export clock functions for modules + * [Config] highbank -- reenable CONFIG_TOUCHSCREEN_W90X900 + * [Config] highbank -- renenable CONFIG_SERIO_AMBAKMI + * [Config] highbank -- reenable CONFIG_RFKILL_GPIO + * [Config] highbank -- reenable CONFIG_MMC_SDHCI_PXAV3 + * [Config] highbank -- reenable CONFIG_MMC_SDHCI_PXAV3 + * [Config] highbank -- reenable CONFIG_KEYBOARD_SAMSUNG + * [Config] highbank -- reenable CONFIG_FB_ARMCLCD + * [Config] highbank -- reenable CONFIG_DW_DMAC + * [Config] highbank -- reenable CONFIG_USB_R8A66597_HCD + * [Config] highbank -- reenable CONFIG_USB_MV_UDC + * [Config] highbank -- reenable CONFIG_USB_DWC3 + * [Config] highbank -- reenable CONFIG_SATA_MV + * [Config] highbank -- reenable CONFIG_PATA_ARASAN_CF + * [Config] highbank -- CONFIG_CAN_C_CAN_PLATFORM + * [Config] highbank -- reenable CONFIG_MMC_ARMMMCI + * [Config] highbank -- reenable CONFIG_SERIAL_AMBA_PL010 + * [Config] highbank -- reenable CONFIG_ATMEL_PWM + * [Config] highbank -- enable CONFIG_CHECKPOINT_RESTORE + * [Config] highbank -- enable CONFIG_EXPERT + * [Config] highbank -- enable CONFIG_CHECKPOINT_RESTORE + * [Config] enable CONFIG_USB_DYNAMIC_MINORS + * [Config] enable CONFIG_USB_EHCI_TT_NEWSCHED + * [Config] enable CONFIG_USB_ETH_EEM + * [Config] enable CONFIG_USB_HCD_BCMA/CONFIG_USB_HCD_SSB + * [Config] disable CONFIG_USB_M66592 + * [Config] enable CONFIG_USB_NET2272 + * [Config] enable CONFIG_USB_R8A66597 + * [Config] annotate: CONFIG_USB_OMAP not required for our h/w + * [Config] set CONFIG_USB_MUSB_HDRC=m for omap + * [Config] annotate: CONFIG_USB_G_MULTI fix rule + * [Config] CONFIG_USB_GPIO_VBUS=m for OMAP + * [Config] Enable CONFIG_DRM_AST/_CIRRUS_QEMU/_MGAG200 + * [Config] sync configuration armhf omap -> armel omap + * [Config] annotate: CONFIG_IIO triggers build failures on OMAP4 + * [Config] disable CONFIG_OMAP_IOVMM is deprecated + + [ Bryan Wu ] + + * [Config] change default IO scheduler from CFQ to Deadline + + [ Leann Ogasawara ] + + * Revert "[Config] Temporarily disable CONFIG_MV643XX_ETH on powerpc" + * [Config] Disable CONFIG_MOUSE_INPORT + + [ Tim Gardner ] + + * SAUCE: firmware: Update bnx2x to current firmware version 7.2.51 + * [Config] Add bnx2x firmware to nic-modules udeb + * SAUCE: Add script to convert firmware to ihex format + * SAUCE: firmware: Upgrade bnx2 to current versions + * [Config] Add tigon firmware to nic-modules udeb + * [Config] CONFIG_EARLY_PRINTK_DBGP=y + - LP: #1026761 + * SAUCE: Remove redundant cis firmware + * SAUCE: Remove redundant emi26 firmware + * SAUCE: Remove redundant ttusb-budget firmware + * SAUCE: Remove redundant sun/cassini firmware + * SAUCE: Remove redundant ositech/Xilinx7OD firmware + * SAUCE: Remove redundant 3com/typhoon.bin firmware + * SAUCE: Remove redundant yamaha/ds1 firmware + * SAUCE: Remove redundant keyspan_pda firmware + * rebase to v3.5 + + [ Upstream Kernel Changes ] + + * rebase to v3.5 + - LP: #1027828 + + -- Leann Ogasawara Mon, 23 Jul 2012 05:57:04 -0700 + +linux (3.5.0-5.5) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] annotations: initial import of configuration annotations + + [ Bryan Wu ] + + * [Config] enforcer -- add CONFIG_I2C_DESIGNWARE_PLATFORM enforce checker + + [ Leann Ogasawara ] + + * Rebase to v3.5-rc7 + + [ Manoj Iyer ] + + * SAUCE: Bluetooth: btusb: Add vendor specific ID (0a5c:21f4) BCM20702A0 + - LP: #1010281 + + [ Tim Gardner ] + + * [Config] enable CONFIG_I2C_HELPER_AUTO for all flavours as policy + expects + * [Config] CONFIG_I2O_CONFIG_OLD_IOCTL=n + * [Config] CONFIG_BRIDGE_EBT_ULOG=n + * [Config] CONFIG_IP_NF_QUEUE=n + * [Config] CONFIG_MTD_DOC2000=n + * [Config] CONFIG_PRINT_QUOTA_WARNING=n + * [Config] CONFIG_PRISM54=n + * [Config] CONFIG_SCx200_I2C=n + * [Config] CONFIG_USB_ANNOUNCE_NEW_DEVICES=y + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc7 + + -- Leann Ogasawara Mon, 16 Jul 2012 15:38:41 -0700 + +linux (3.5.0-4.4) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] getabis should be extracting all packages + - LP: #1021174 + * [Config] getabis -- series uses linux-image-extra + - LP: #1021174 + * rebase to v3.5-rc6 + + [ Bryan Wu ] + + * [Config] built-in CONFIG_MICREL_PHY as other PHY drivers for all + flavours + * [Config] sync CONFIG_MOUSE_PS2_ config for all flavours + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_RT2800USB_RT35XX and CONFIG_RT2800USB_RT53XX + - LP: #1019561 + + [ Paolo Pisati ] + + * [Config] SND_OMAP_SOC, SND_OMAP_SOC_MCBSP and SND_OMAP_SOC_OMAP3_BEAGLE =y + - LP: #1019321 + + [ Stefan Bader ] + + * SAUCE: (pre-up) net: dont use __netdev_alloc_skb for bounce buffer + - LP: #1018456 + * (config) Disable ACPI_PROCFS_POWER + + [ Tim Gardner ] + + * [Config] CONFIG_ACPI_BGRT=y + * Extract firmware module info during getabi + - LP: #1021174 + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc6 + + -- Leann Ogasawara Mon, 09 Jul 2012 08:50:20 -0700 + +linux (3.5.0-3.3) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_MEMTEST=y + - LP: #1004535 + * [Config] config-check: add support for a cut operation + * [Config] enforcer -- switch to cut where appropriate + + [ Leann Ogasawara ] + + * Rebase to v3.5-rc5 + * [Config] Updateconfigs after rebase to v3.5-rc5 + + [ Luis Henriques ] + + * SAUCE: ocfs2: Fix NULL pointer dereferrence in + __ocfs2_change_file_space + - LP: #1006012 + + [ Seth Forshee ] + + * SAUCE: (drop after 3.5) drm/i915: ignore pipe select bit when checking + for LVDS register initialization + - LP: #1012800 + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc5 + - LP: #1013183 + - LP: #1017017 + - LP: #884652 + + -- Leann Ogasawara Mon, 02 Jul 2012 06:41:58 -0700 + +linux (3.5.0-2.2) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.5-rc4 + + [ Arend van Spriel ] + + * SAUCE: (drop after 3.5) brcmsmac: fix NULL pointer crash in + brcms_c_regd_init() + - LP: #950320 + + [ Bryan Wu ] + + * [Config] Sync CONFIG_CGROUP_MEM_RES_CTLR_SWAP for ARM + + [ Chris J Arges ] + + * PACKAGING: add .gnu_debuglink sections to .ko files + - LP: #669641 + + [ Leann Ogasawara ] + + * d-i: Add hid-generic to input-modules + - LP: #1017879 + + [ Ming Lei ] + + * SAUCE: Revert "mmc: omap_hsmmc: Enable Auto CMD12" + - LP: #1017717, #225 + + [ Paolo Pisati ] + + * SAUCE: Revert "Fix OMAP EHCI suspend/resume failure (i693)" + - LP: #1017718 + * [Config] Disable generic USB_EHCI_HCD_PLATFORM on omap3 + + [ Seth Forshee ] + + * SAUCE: (drop after 3.5) brcm80211: smac: don't set up tx power limits + during initialization + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: always set channel specified + by mac80211 + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: remove unused code for 40MHz + channels + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: clean up channel.c + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: inform mac80211 of the X2 + regulatory domain + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: enable/disable radio on + regulatory updates + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: use mac80211 channel data for + tx power limits + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: don't validate channels + against internal regulatory data + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: use current regulatory domain + when checking whether OFDM is allowed + - LP: #950320 + + [ Tim Gardner ] + + * [Config] Enable CONFIG_CGROUPS for highbank + - LP: #1014692 + * [Config] FB_OMAP*=y and PANEL_TFP410=y + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc4 + + -- Leann Ogasawara Tue, 26 Jun 2012 06:21:05 -0700 + +linux (3.5.0-1.1) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] highbank -- enable CONFIG_RFKILL=y and CONFIG_CAN=m + + [ Leann Ogasawara ] + + * Rebase to v3.5-rc1 + * [Config] Remove USB_DEVICEFS from the config enforcer + * [Config] Updateconfigs after rebase to v3.5-rc1 + * [Config] Temporarily disable CONFIG_MACH_NOKIA_RX51 on arm + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EETI on arm + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EGALAX on arm + * [Config] Temporarily disable CONFIG_EZX_PCAP on arm + * [Config] Temporarily disable CONFIG_LIS3L02DQ on arm + * [Config] Temporarily disable CONFIG_TI_CPSW on arm + * [Config] Temporarily disable CONFIG_GPIO_EM on arm + * [Config] Temporarily disable CONFIG_SERIAL_8250_EM on armhf + * [Config] Temporarily disable CONFIG_STMMAC_ETH on armhf + * [Config] Temporarily disable CONFIG_HW_RANDOM_ATMEL on armhf + * Rebase to v3.5-rc2 + * [Config] Updateconfigs after rebase to v3.5-rc2 + * [Config] Temporarily disable CONFIG_MV643XX_ETH on powerpc + * Rebase to v3.5-rc3 + * [Config] Updateconfigs after rebase to v3.5-rc3 + + [ Paul Mundt ] + + * SAUCE: fix bug.h's inclusion of kernel.h + + [ Stefan Bader ] + + * SAUCE: Fix compile failures of dm-raid45 + * [Config] Enable dm-raid45 + * Move dependency on crda to extra package + - LP: #657901 + * SAUCE: Mask CR4 writes on older Xen hypervisors + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc3 + - LP: #993162 + - LP: #925577 + * rebase to v3.5-rc2 + * rebase to v3.5-rc1 + - LP: #955892 + - LP: #978038 + - LP: #987371 + - LP: #929545 + - LP: #942316 + - LP: #903853 + + -- Leann Ogasawara Fri, 08 Jun 2012 14:28:46 -0700 + +linux (3.4.0-5.11) quantal-proposed; urgency=low + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_ARM_LPAE + - LP: #1009061 + + [ Oleksij Rempel ] + + * SAUCE: b43: do not call ieee80211_unregister_hw if we are not registred + - LP: #1008905 + + [ Paolo Pisati ] + + * [Config] omap3: MFD_OMAP_USB_HOST is usb host in omap2+. + - LP: #1009061 + + -- Leann Ogasawara Tue, 05 Jun 2012 08:06:28 -0700 + +linux (3.4.0-4.10) quantal; urgency=low + + [ Leann Ogasawara ] + + * Temporarily disable ABI and module check + + -- Leann Ogasawara Mon, 04 Jun 2012 20:27:31 -0700 + +linux (3.4.0-4.9) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] fix config split to avoid the shared config + * [Config] updateconfigs following split config fix + * [Config] linux-image-extras needs full postinst + * [Config] CONFIG_BLK_DEV_NVME commonise across architectures + * [Config] CONFIG_HP_WATCHDOG enable as module + * [Config] CONFIG_PDC_ADMA is not boot essential + * [Config] CONFIG_XEN_ACPI_PROCESSOR should be enabled on x86 + * [Config] CONFIG_VT6655/CONFIG_VT6656=m + * [Config] CONFIG_TRANZPORT=m commonise + * [Config] CONFIG_R3964=m commonise + * [Config] CONFIG_SCSI_DH=m commonise + * [Config] CONFIG_SCSI_IBMVSCSIS=m commonise + * [Config] CONFIG_AMD_PHY=y phys are not autoloadable + * [Config] CONFIG_SCSI_QLA_ISCSI=m commonise + * [Config] CONFIG_SCSI_SPI_ATTR=m commonise + * [Config] CONFIG_USB_SN9C102 is deprecated disable + * [Config] CONFIG_USB_SI470X=m commonise + * [Config] CONFIG_USB_ET61X251=m commonise + * [Config] CONFIG_RTS_PSTOR=m commonise + * [Config] CONFIG_SCANLOG=m commonise + * [Config] CONFIG_SCSI_SYM53C8XX_2=m commonise + * [Config] CONFIG_SM_FTL=m commonise + * [Config] CONFIG_SOLO6X10=m commonise + * [Config] CONFIG_SND_PCM_OSS=n using pulseaudio emulation instead + * [Config] CONFIG_SPI_DESIGNWARE=m commonise + * [Config] CONFIG_SPI_SPIDEV=m commonise + * [Config] CONFIG_TABLET_USB_WACOM=m commonise + * [Config] CONFIG_TPS65010=m commonise + * [Config] CONFIG_STE10XP=y commonise + * [Config] CONFIG_X25_ASY=m commonise + * [Config] CONFIG_USB_MON=m commonise + * [Config] CONFIG_VME_BUS=m commonise + * [Config] CONFIG_W35UND=m commonise + * [Config] -CONFIG_TCG_TPM=y commonise + * [Config] highbank -- commonise filesystems + * [Config] highbank -- commonise subsystems + * [Config] highbank -- commonise network protocols + * [Config] highbank -- commonise input drivers + * [Config] highbank -- commonise CRYPTO options + * [Config] highbank -- commonise HID options + * [Config] highbank -- commonise sensors options + * [Config] highbank -- commonise EXPORTFS/FHANDLE + * [Config] highbank -- commonise CONFIG_CRYPTO_LZO + * [Config] highbank -- commonise ENCRYPTED_KEYS + * [Config] highbank -- commonise CONFIG_ATALK + * [Config] highbank -- commonise INET/INET6 + * [Config] highbank -- commonise NLS + * [Config] highbank -- commonise BLK/CHR + * [Config] highbank -- CONFIG_EXT2_FS=y boot essential on highbank + * [Config] highbank -- commonise INET/INET6 part 2 + * [Config] highbank -- commonise PHY settings + * [Config] highbank -- commonise CRC settings + * [Config] highbank -- commonise BINFMT settings + * [Config] highbank -- commonise DM settings + * [Config] highbank -- commonise RTC_DRV settings + * [Config] highbank -- commonise KEYBOARD/MOUSE settings + * [Config] highbank -- commonise USB settings + * [Config] highbank -- commonise GPIO settings + * [Config] highbank -- commonise I2C settings + * [Config] highbank -- commonise numerous subsystem selectors + * [Config] highbank -- commonise A-C modules missmatches + * [Config] highbank -- commonise D-F modules missmatches + * [Config] CONFIG_AUDIT_LOGINUID_IMMUTABLE incompatible with upstart + * [Config] highbank -- commonise G-I modules missmatches + * [Config] highbank -- commonise J-L modules missmatches + * [Config] highbank -- commonise M modules missmatches + * [Config] highbank -- commonise N-P modules missmatches + * [Config] highbank -- commonise Q-R modules missmatches + * [Config] highbank -- commonise S modules missmatches -- part 1 + * [Config] highbank -- commonise S modules missmatches -- part 2 + * [Config] highbank -- commonise T modules missmatches + * [Config] highbank -- commonise U-Z modules missmatches + + [ Ike Panhc ] + + * [Config] add highbank flavour + - LP: #1000831 + + [ Mark Langsdorf ] + + * SAUCE: arm highbank: add support for pl320-ipc driver + - LP: #1000831 + + [ Rob Herring ] + + * SAUCE: input: add a key driver for highbank + - LP: #1000831 + * SAUCE: ARM: highbank: Add smc calls to enable/disable the L2 + - LP: #1000831 + * SAUCE: force DMA buffers to non-bufferable on highbank + - LP: #1000831 + * SAUCE: net: calxedaxgmac: fix net timeout recovery + - LP: #1000831 + + [ Tim Gardner ] + + * [Config] CONFIG_IWLWIFI_EXPERIMENTAL_MFP=n + * [Config] CONFIG_PCI_REALLOC_ENABLE_AUTO=y + * [Config] CONFIG_CIFS_EXPERIMENTAL has disappeared + * [Config] Homogenize CIFS configs across all arches + * [Config] armhf should not be skipabi or skipmodules + - LP: #1006913 + + -- Leann Ogasawara Mon, 04 Jun 2012 05:52:49 -0700 + +linux (3.4.0-3.8) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] include include/generated/compile.h + - LP: #942569 + * [Config] fix up postinst to ensure we know which error is which + - LP: #1002388 + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: async_populate_rootfs: fix build warnings + - LP: #1003417 + + [ John Johansen ] + + * Revert "SAUCE: AppArmor: Add the ability to mediate mount" + * SAUCE: apparmor: Add the ability to mediate mount + * SAUCE: AppArmor: basic networking rules + * SAUCE: apparmor: fix profile lookup for unconfined + - LP: #978038, #987371 + * SAUCE: apparmor: fix long path failure due to disconnected path + - LP: #955892 + + [ Mario Limonciello ] + + * SAUCE: dell-laptop: rfkill blacklist Dell XPS 13z, 15 + - LP: #901410 + + [ Stefan Bader ] + + * (config) Built-in xen-acpi-processor + + [ Tim Gardner ] + + * [Config] CONFIG_NET_DSA=m + - LP: #1004148 + * [Config] Ensure CONFIG_XEN_ACPI_PROCESSOR=y for amd64 + + -- Leann Ogasawara Fri, 25 May 2012 11:38:33 -0700 + +linux (3.4.0-3.7) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] drop the virtual flavour in favour of a split generic et al + * [Config] enforcer -- drop IDLE enforcement + * [Config] enable CONFIG_SCSI_VIRTIO=m for amd64 + * [Config] updateconfigs following removal of -virtual + + [ Leann Ogasawara ] + + * Rebase to v3.4 + + [ Seth Forshee ] + + * [Config] disable CONFIG_B43_BCMA_EXTRA + + [ Tim Gardner ] + + * [Config] Check for extras when building udebs + * [Config] Collapsed generic-pae into generic [i386] + + [ Upstream Kernel Changes ] + + * rebase to v3.4 + + -- Leann Ogasawara Mon, 21 May 2012 07:23:47 -0700 + +linux (3.4.0-2.6) quantal; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: overlayfs -- overlayfs: update touch_atime() usage" + * Revert "ubuntu: overlayfs -- overlayfs: switch from d_alloc_root() to + d_make_root()" + * Revert "ubuntu: overlayfs -- overlayfs: follow header cleanup" + * Revert "ubuntu: overlayfs -- overlayfs: apply device cgroup and + security permissions to overlay files" + * Revert "ubuntu: overlayfs -- fs: limit filesystem stacking depth" + * Revert "ubuntu: overlayfs -- overlay: overlay filesystem documentation" + * Revert "ubuntu: overlayfs -- overlayfs: implement show_options" + * Revert "ubuntu: overlayfs -- overlayfs: add statfs support" + * Revert "ubuntu: overlayfs -- overlay filesystem" + * Revert "ubuntu: overlayfs -- vfs: introduce clone_private_mount()" + * Revert "ubuntu: overlayfs -- vfs: export do_splice_direct() to modules" + * Revert "ubuntu: overlayfs -- vfs: add i_op->open()" + * Revert "ubuntu: overlayfs -- vfs: pass struct path to __dentry_open()" + * ubuntu: overlayfs -- overlayfs: add statfs support + * ubuntu: overlayfs -- inode_only_permission: export inode level + permissions checks + * ubuntu: overlayfs -- overlayfs: switch to use inode_only_permissions + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: pass struct path to __dentry_open() + * ubuntu: overlayfs -- vfs: add i_op->open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Robin Dong ] + + * ubuntu: overlayfs -- overlayfs: fix possible leak in ovl_new_inode + * ubuntu: overlayfs -- overlayfs: create new inode in ovl_link + + [ Tim Gardner ] + + * [Config] perarch and indep tools builds need separate build directories + * Prevent upgrading a non-PAE CPU + * perf is not parallel build safe + + -- Leann Ogasawara Wed, 16 May 2012 08:43:18 -0700 + +linux (3.4.0-2.5) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] perarch and indep tools builds need separate build directories + + [ Tim Gardner ] + + * Prevent upgrading a non-PAE CPU + * [Config] build debug + * [Config] perf tools are not parallel build safe + + -- Leann Ogasawara Tue, 15 May 2012 11:37:53 -0700 + +linux (3.4.0-2.4) quantal; urgency=low + + [ Leann Ogasawara ] + + * Revert "SAUCE: fsam7400: use UMH_WAIT_PROC consistently" + * Revert "ubuntu: fsam7400 select CHECK_SIGNATURE and depend on X86" + * Revert "ubuntu: fsam7400: Depend on CHECK_SIGNATURE" + * Revert "ubuntu: fsam7400 -- Cleanup Makefile" + * Revert "ubuntu: fsam7400 -- kill switch for Fujitsu Siemens Amilo M + 7400" + * Revert "ubuntu: omnibook: fix source file newline" + * Revert "ubuntu: omnibook -- update BOM" + * Revert "SAUCE: Make CONFIG_{OMNIBOOK, AVERATEC_5100P, PACKARDBELL_E5} + depend on X86" + * Revert "ubuntu: omnibook -- Added missing BOM file" + * Revert "ubuntu: omnibook -- support Toshiba (HP) netbooks" + * Revert "ubuntu: nx-emu - i386: mmap randomization for executable + mappings" + * Revert "SAUCE: disable_nx should not be in __cpuinitdata section for + X86_32" + * Revert "ubuntu: nx-emu - i386: NX emulation" + * Revert "ubuntu: rfkill drivers -- version 1.3" + * Temporarily disable module check + * [Config] Remove CONFIG_FSAM7400 + * [Config] Remove CONFIG_OMNIBOOK + * [Config] Update configs + * Rebase to v3.4-rc7 + * SAUCE: genirq: export handle_edge_irq() and irq_to_desc() + + [ Tim Gardner ] + + * Updated generic-pae description + * Rebase to v3.4-rc6 + * install-tools depends on build targets + + [ Upstream Kernel Changes ] + + * kconfig: in debug mode some 0 length message prints occur + * rebase to v3.4-rc7 + * rebase to v3.3-rc6 + + -- Leann Ogasawara Mon, 14 May 2012 08:22:56 -0700 + +linux (3.4.0-1.3) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] control.stub is an intermediate product not a dependancy + - LP: #992414 + + [ Leann Ogasawara ] + + * remove i386 generic from getabis + + [ Upstream Kernel Changes ] + + * (pre-stable) b43: only reload config after successful initialization + - LP: #950295 + + -- Leann Ogasawara Wed, 02 May 2012 09:48:14 -0700 + +linux (3.4.0-1.2) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] add build depends for flex, bison and pkg-config + + -- Andy Whitcroft Tue, 01 May 2012 13:15:41 +0100 + +linux (3.4.0-1.1) quantal; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: overlayfs -- overlayfs: apply device cgroup and security + permissions to overlay files + - LP: #915941, #918212 + - CVE-2012-0055 + + [ Leann Ogasawara ] + + * Open Q + * Rebase to v3.4-rc5 + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EETI on arm + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EGALAX on arm + * [Config] Temporarily disable CONFIG_EZX_PCAP on arm + * [Config] Temporarily disable CONFIG_MFD_OMAP_USB_HOST on arm + * [Config] Temporarily disable CONFIG_LIS3L02DQ on arm + * [Config] Temporarily disable CONFIG_USB_EHCI_HCD_PLATFORM on arm + * [Config] Temporarily disable CONFIG_TI_CPSW on arm + * [Config] Temporarily disable CONFIG_AX88796 on arm + + [ Upstream Kernel Changes ] + + * vfs: pass struct path to __dentry_open() + * vfs: add i_op->open() + * vfs: export do_splice_direct() to modules + * vfs: introduce clone_private_mount() + * overlay filesystem + * overlayfs: add statfs support + * overlayfs: implement show_options + * overlay: overlay filesystem documentation + * fs: limit filesystem stacking depth + * overlayfs: follow header cleanup + * overlayfs: switch from d_alloc_root() to d_make_root() + * overlayfs: update touch_atime() usage + * rebase to v3.4-rc5 + - LP: #950490 + * rebase to v3.4-rc4 + * rebase to v3.4-rc3 + * rebase to v3.4-rc2 + * rebase to v3.4-rc1 + * rebase to v3.3 + * rebase to v3.3-rc7 + * rebase to v3.3-rc6 + * rebase to v3.3-rc5 + * rebase to v3.3-rc4 + - LP: #900802 + - LP: #930842 + * rebase to v3.3-rc3 + - LP: #924320 + - LP: #923316 + - LP: #923409 + - LP: #918254 + * rebase to v3.3-rc2 + * rebase to v3.3-rc1 + - LP: #795823 + - LP: #909419 + - LP: #910792 + - LP: #878701 + - LP: #724831 + + -- Leann Ogasawara Wed, 25 Jan 2012 06:50:04 -0800 + +linux (3.2.0-10.18) precise; urgency=low + + [ Tim Gardner ] + + * SAUCE: ecryptfs: Print inode on metadata error + + [ Upstream Kernel Changes ] + + * Revert "proc: enable writing to /proc/pid/mem" + - LP: #919115 + - CVE-2012-0056 + * (pre-stable) ALSA: HDA: Use LPIB position fix for Macbook Pro 7, 1 + - LP: #909419 + + -- Andy Whitcroft Tue, 24 Jan 2012 10:15:12 +0000 + +linux (3.2.0-10.17) precise; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: overlayfs -- fs: limit filesystem stacking depth" + * Revert "SAUCE: overlayfs -- overlay: overlay filesystem documentation" + * Revert "SAUCE: overlayfs -- overlayfs: implement show_options" + * Revert "SAUCE: overlayfs -- overlayfs: add statfs support" + * Revert "SAUCE: overlayfs -- overlay filesystem" + * Revert "SAUCE: overlayfs -- vfs: introduce clone_private_mount()" + * Revert "SAUCE: overlayfs -- vfs: export do_splice_direct() to modules" + * Revert "SAUCE: overlayfs -- vfs: add i_op->open()" + * ensure debian/ is not excluded from git by default + * add new scripting to handle buglinks in rebases + * ubuntu: overlayfs -- overlayfs: add statfs support + * ubuntu: overlayfs -- overlayfs: apply device cgroup and security + permissions to overlay files + - LP: #915941, #918212 + - CVE-2012-0055 + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Leann Ogasawara ] + + * Revert "SAUCE: dmar: disable if ricoh multifunction detected" + * [Config] Disable CONFIG_INTEL_IOMMU_DEFAULT_ON + - LP: #907377, #911236 + * [Config] Enable CONFIG_IRQ_REMAP + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: pass struct path to __dentry_open() + * ubuntu: overlayfs -- vfs: add i_op->open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Upstream Kernel Changes ] + + * (pre-stable) x86/PCI: amd: factor out MMCONFIG discovery + - LP: #647043 + * (pre-stable) PNP: work around Dell 1536/1546 BIOS MMCONFIG bug that + breaks USB + - LP: #647043 + + -- Leann Ogasawara Mon, 16 Jan 2012 07:10:08 -0800 + +linux (3.2.0-9.16) precise; urgency=low + + [ Andy Whitcroft ] + + * [Config] Enable numerous CONFIG_VIDEO_* cards on ARM + * [Config] pull ARM sound modules =m + * [Config] CONFIG_RTC_DRV_TEST is for testing only + * [Config] CONFIG_USB_DUMMY_HCD is testing only + * [Config] CONFIG_USB_FILE_STORAGE is deprecated + + [ Leann Ogasawara ] + + * Revert "[Config] Temporarily disable CONFIG_CAN_TI_HECC on armel" + * [Config] Enable CONFIG_HW_RANDOM_PASEMI=m + * [Config] Enable CONFIG_MMC_TMIO=m + * [Config] Enable CONFIG_MTD_NAND_FSL_ELBC=m + * [Config] Enable CONFIG_ISI=m + * [Config] Enable CONFIG_MMC=y + * [Config] Enable CONFIG_LIRC_PARALLEL=m + * [Config] Enable CONFIG_MAC_EMUMOUSEBTN=m + * [Config] Enable CONFIG_CHR_DEV_SG=y + * [Config] Enable CONFIG_GPIO_PCA953X=m + * [Config] Enable CONFIG_GPIO_TWL4030=m + * [Config] Enable CONFIG_INET_DIAG=m + * [Config] Enable CONFIG_NLS_ISO8859_1=m + * [Config] Enable CONFIG_NVRAM=m + * [Config] Enable CONFIG_SLIP=m + * [Config] Enable CONFIG_PC300TOO=m + * [Config] Enable CONFIG_TUN=y + * [Config] Enable CONFIG_NET_CLS_CGROUP=m + * [Config] Enable CONFIG_THERMAL=y + * [Config] Enable CONFIG_PPP=y + * [Config] Enable CONFIG_PCI_STUB=m + * Rebase to v3.2.1 + * [Config] Enable CONFIG_RTL8192E=m + * [Config] Enable CONFIG_RTS5139=m + + [ Stefan Bader ] + + * [Config] Make CONFIG_VIRTIO_(NET|BLK)=y + + [ Upstream Kernel Changes ] + + * ARM: restart: add restart hook to machine_desc record + * ARM: restart: allow platforms more flexibility specifying restart mode + * ARM: restart: move reboot failure handing into machine_restart() + * ARM: restart: remove argument to setup_mm_for_reboot() + * ARM: 7159/1: OMAP: Introduce local common.h files + * ARM: restart: only perform setup for restart when soft-restarting + * ARM: 7189/1: OMAP3: Fix build break in cpuidle34xx.c because of irq + function + * ARM: idmap: populate identity map pgd at init time using .init.text + * ARM: suspend: use idmap_pgd instead of suspend_pgd + * ARM: proc-*.S: place cpu_reset functions into .idmap.text section + * ARM: idmap: use idmap_pgd when setting up mm for reboot + * ARM: head.S: only include __turn_mmu_on in the initial identity mapping + * ARM: SMP: use idmap_pgd for mapping MMU enable during secondary booting + * ARM: 7194/1: OMAP: Fix build after a merge between v3.2-rc4 and ARM + restart changes + * ARM: lib: add call_with_stack function for safely changing stack + * ARM: reset: implement soft_restart for jumping to a physical address + * ARM: stop: execute platform callback from cpu_stop code + * ARM: kexec: use soft_restart for branching to the reboot buffer + * ARM: restart: omap: use new restart hook + * topdown mmap support + - LP: #861296 + + [ Upstream Kernel Changes ] + + * Rebase to v3.2.1 + + -- Leann Ogasawara Fri, 13 Jan 2012 20:32:08 +0100 + +linux (3.2.0-8.15) precise; urgency=low + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_ACPI_PROCFS + * Remove server from getabis + * Temporarily disable module check + * [Config] Disable CONFIG_MTD_TESTS + * [Config] Disable CONFIG_X86_E_POWERSAVER + * [Config] Set CONFIG_ARCNET=m + * [Config] Enable CONFIG_ATM_DUMMY=m + * [Config] Enable CONFIG_BLK_DEV_MD=y + * ubuntu: fsam7400 select CHECK_SIGNATURE and depend on X86 + * [Config] Enable CONFIG_BLK_DEV_SD=y + * [Config] Enable CONFIG_BLK_DEV_SR=y + * [Config] Enable CONFIG_BLK_DEV_UB=m + * [Config] Enable CONFIG_COPS=m + * [Config] Enable CONFIG_DVB_USB_EC168=m + * [Config] Enable CONFIG_ENC28J60=m + * [Config] Enable CONFIG_FB_UVESA=m + * [Config] Enable CONFIG_FB_ATY=m + * [Config] Enable CONFIG_BROADCOM_PHY=y + * [Config] Enable CONFIG_CICADA_PHY=y + * [Config] Enable CONFIG_DAVICOM_PHY=y + * [Config] Enable CONFIG_ICPLUS_PHY=y + * [Config] Enable CONFIG_LSI_ET1011C_PHY=y + * [Config] Enable CONFIG_LXT_PHY=y + * [Config] Enable CONFIG_MARVELL_PHY=y + * [Config] Enable CONFIG_NATIONAL_PHY=y + * [Config] Enable CONFIG_QSEMI_PHY=y + * [Config] Enable CONFIG_SMSC_PHY=y + * [Config] Enable CONFIG_VITESSE_PHY=y + * Add 3w-sas to scsi-modules + - LP: #776542 + + [ Mathieu Trudel-Lapierre ] + + * SAUCE: ipv6: make the net.ipv6.conf.all.use_tempaddr sysctl propagate + to interface settings + + [ Paolo Pisati ] + + * Revert "SAUCE: omap3: beagle: if rev unknown, assume xM revision C" + - LP: #912199 + * Revert "SAUCE: omap3: beagle: detect new xM revision B" + - LP: #912199 + * Revert "SAUCE: omap3: beaglexm: fix DVI initialization" + - LP: #912199 + + [ Upstream Kernel Changes ] + + * Bluetooth: Add support for BCM20702A0 [0a5c:21e3] + - LP: #906832 + + -- Leann Ogasawara Fri, 06 Jan 2012 10:02:03 -0800 + +linux (3.2.0-8.14) precise; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_SND_USB_6FIRE + - LP: #912197 + * rebase to mainline v3.2 final release + * updateconfigs following rebase to v3.2 final + * ubuntu: AUFS -- add BOM and automated update script + * ubuntu: AUFS -- include the aufs_types.h file in linux-libc-headers + - LP: #684666 + * ubuntu: AUFS -- update aufs-update to track new locations of headers + * ubuntu: AUFS -- clean up the aufs updater and BOM + * ubuntu: AUFS -- documentation on updating aufs2 + * ubuntu: AUFS -- aufs3-base.patch + * ubuntu: AUFS -- aufs3-standalone.patch + * ubuntu: AUFS -- fix undefined __devcgroup_inode_permission + * ubuntu: AUFS -- fix undefined security_path_link + * ubuntu: AUFS -- update to 4cf5db36bcd9748e8e7270022f295f84d1fc2245 + * ubuntu: AUFS -- updateconfigs following update + * ubuntu: AUFS -- suppress benign plink warning messages + - LP: #621195 + * ubuntu: AUFS -- enable in config and makefile + * ubuntu: AUFS -- disable in favor of overlayfs + * [Config] linux-virtual -- should include the extX modules + - LP: #912308 + + [ Tyler Hicks ] + + * SAUCE: eCryptfs: Improve statfs reporting + - LP: #885744 + + [ Upstream Kernel Changes ] + + * rebase to upstream v3.2 + + -- Leann Ogasawara Mon, 26 Dec 2011 20:24:30 -0800 + +linux (3.2.0-7.13) precise; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to upstream 3.2-rc7 + + -- Leann Ogasawara Mon, 19 Dec 2011 09:14:34 -0800 + +linux (3.2.0-6.12) precise; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to upstream v3.2-rc6 + + -- Leann Ogasawara Fri, 16 Dec 2011 10:19:02 -0800 + +linux (3.2.0-5.11) precise; urgency=low + + [ Andy Whitcroft ] + + * enforcer -- allow arch and flavour predicates to take lists + * enforcer -- simplify armel/armhf specific options + * enforcer -- fix incorrectly specified flavour matches + + [ Leann Ogasawara ] + + * [Config] Disable IRQ_REMAP + * [Config] Enable CONFIG_SENSORS_LM95245=m + * [Config] Enable CONFIG_SENSORS_MAX1668=m + * [Config] Enable CONFIG_SENSORS_NTC_THERMISTOR=m + * [Config] Enable CONFIG_SENSORS_MAX6639=m + * [Config] Enable CONFIG_SENSORS_MAX6642=m + * [Config] Enable CONFIG_SENSORS_LINEAGE=m + * [Config] Enable CONFIG_CRYPTO_SALSA20=m + * [Config] Enable CONFIG_PATA_TOSHIBA=m + * [Config] Enable CONFIG_POHMELFS=m + * [Config] Enable CONFIG_NET_PACKET_ENGINE=y + * [Config] Enable CONFIG_PATA_OPTI=m + * add overlayfs to virtual inclusion list + - LP: #903897 + * add veth to virtual inclusion list + - LP: #903897 + * SAUCE: resolve WARNING: at drivers/block/floppy.c:2929 do_fd_request + + [ Paolo Pisati ] + + * [Config] DEFAULT_MMAP_MIN_ADDR=32k on arm + - LP: #903346 + + [ Tim Gardner ] + + * [Config] CONFIG_LOCKUP_DETECTOR=y + - LP: #903615 + + [ Upstream Kernel Changes ] + + * rebase to upstream 55b02d2f + + -- Leann Ogasawara Mon, 12 Dec 2011 07:08:10 -0800 + +linux (3.2.0-4.10) precise; urgency=low + + [ Kyle McMartin ] + + * SAUCE: dmar: disable if ricoh multifunction detected + - LP: #894070 + + [ Seth Forshee ] + + * SAUCE: dell-wmi: Demote unknown WMI event message to pr_debug + - LP: #581312 + + [ Tim Gardner ] + + * Start new release, Bump ABI, rebase to 3.2-rc5 + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_SENSORS_AK8975=m + + -- Tim Gardner Sat, 10 Dec 2011 08:57:04 -0700 + +linux (3.2.0-3.9) precise; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: ext4: correct partial write discard size calculation + - LP: #894768 + + [ Leann Ogasawara ] + + * Revert "SAUCE: x86, microcode, AMD: Restrict microcode reporting" + - LP: #892615 + + [ Matthew Garrett ] + + * SAUCE: pci: Rework ASPM disable code + + [ Upstream Kernel Changes ] + + * x86: Fix boot failures on older AMD CPU's + - LP: #892615 + * EHCI : Fix a regression in the ISO scheduler + - LP: #899165 + + -- Leann Ogasawara Mon, 05 Dec 2011 10:37:36 -0800 + +linux (3.2.0-3.8) precise; urgency=low + + [ Andy Whitcroft ] + + * armhf -- add d-i configuration + * armhf -- disable ABI checks for armhf + * armhf -- add arch to getabis config + + -- Andy Whitcroft Sat, 03 Dec 2011 14:22:52 +0000 + +linux (3.2.0-3.7) precise; urgency=low + + [ Stefan Bader ] + + * SAUCE: x86/paravirt: PTE updates in k(un)map_atomic need to be + synchronous, regardless of lazy_mmu mode + - LP: #854050 + + [ Tim Gardner ] + + * rebase to v3.2-rc4 + + -- Leann Ogasawara Fri, 02 Dec 2011 11:53:56 -0800 + +linux (3.2.0-2.6) precise; urgency=low + + [ Andy Whitcroft ] + + * armhf -- fix omap flavour to build on armhf + * [Config] CONFIG_PATA_MACIO=y to fix MAC qemu boot + + [ Borislav Petkov ] + + * SAUCE: x86, microcode, AMD: Restrict microcode reporting + - LP: #892615 + + [ Colin Watson ] + + * Add pata_macio to pata-modules + + [ Tim Gardner ] + + * [Config] Prefer crda over wireless-crda + * [Config] Fix virtual inclusion list. + - LP: #897795 + + -- Leann Ogasawara Wed, 30 Nov 2011 06:09:35 -0800 + +linux (3.2.0-2.5) precise; urgency=low + + [ Paolo Pisati ] + + * [Config] PANEL_DVI=y + + -- Leann Ogasawara Mon, 28 Nov 2011 09:13:24 -0800 + +linux (3.2.0-2.4) precise; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.2-rc3 + + [ Leann Ogasawara ] + + * Revert "SAUCE: xen: Do not use pv spinlocks on HVM" + * Revert "fix ERROR: __devcgroup_inode_permission undefined" + * Revert "olpc_dcon_xo_1_5 needs delay.h" + * Revert "olpc_dcon_xo_1 needs delay.h" + * rebase to 6fe4c6d4 + * [Config] updateconfigs after rebase to 6fe4c6d4 + + [ Tim Gardner ] + + * [Config] Replace wireless-crda with crda,wireless-regdb + - LP: #856421 + * [Config] Relax the dependencies on crda + + [ Upstream Kernel Changes ] + + * (pre-stable) HID: bump maximum global item tag report size to 96 bytes + - LP: #724831 + * Ubuntu: remove coreutils|fileutils package dependency + - LP: #892814 + * iio: iio_event_getfd -- fix ev_int build failure + + [ Upstream Kernel Changes ] + + * Rebase to v3.2-rc3 + + -- Andy Whitcroft Thu, 24 Nov 2011 16:20:45 +0000 + +linux (3.2.0-1.3) precise; urgency=low + + [ Upstream Kernel Changes ] + + * Ubuntu: Add ext2 to fs-core-modules + - LP: #893395 + + -- Leann Ogasawara Mon, 21 Nov 2011 20:42:33 -0800 + +linux (3.2.0-1.2) precise; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_NFC and associated devices + * SAUCE: allow brcmsmac and b43 to both build + + [ Soren Hansen ] + + * Add ixgbe driver to d-i + - LP: #891969 + + -- Leann Ogasawara Mon, 21 Nov 2011 08:33:46 -0800 + +linux (3.2.0-1.1) precise; urgency=low + [ Andy Whitcroft ] + + * armhf -- enable armhf and create the first flavours + * SAUCE: ensure root is ready before running usermodehelpers in it + * [Config] enforcer -- ensure CONFIG_FAT_FS is built-in on arm + + [ Leann Ogasawara ] + + * Temporarily ignore module check + * [Config] Enable PCI_IOV on powerpc + * [Config] Temporarily disable CONFIG_PASEMI_MAC on powerpc + * rebase to v3.2-rc2 + * SAUCE: include for cpuidle34xx arm build + * SAUCE: include for linux/mtd/map.h arm build + * SAUCE: include and for mmc_core arm build + * SAUCE: select ARM_AMBA if OMAP3_EMU + * [Config] updateconfigs after select ARM_AMBA + * [Config] Temporarily disable CONFIG_KVM_BOOK3S_32 on powerpc + * [Config] Enable CONFIG_EXT2_FS=m + * [Config] Build in CONFIG_SATA_AHCI=y + * Resolve linux-image-extra's install dependency + + [ Seth Forshee ] + + * [Config] Enable EVENT_POWER_TRACING_DEPRECATED=y for powertop + * SAUCE: (drop after 3.2) Input: ALPS - move protocol information to + Documentation + * SAUCE: (drop after 3.2) Input: ALPS - add protocol version field in + alps_model_info + * SAUCE: (drop after 3.2) Input: ALPS - remove assumptions about packet + size + * SAUCE: (drop after 3.2) Input: ALPS - add support for protocol versions + 3 and 4 + * SAUCE: (drop after 3.2) Input: ALPS - add semi-MT support for v3 + protocol + * SAUCE: (drop after 3.2) Input: ALPS - add documentation for protocol + versions 3 and 4 + + [ Stefan Bader ] + + * [Config] Built-in xen-netfront and xen-blkfront + * Fix build of dm-raid45 and re-enable it + + [ Tim Gardner ] + + * [Config] CONFIG_USB_XHCI_HCD=y + - LP: #886167 + * [Config] CONFIG_R6040=m + - LP: #650899 + * SAUCE: Add a new entry (413c:8197) to Bluetooth USB device ID table + - LP: #854399 + * [Config] Consolidated amd64 server flavour into generic + * [Config] updateconfigs after rebase to 3.2-rc1 + * [Config] Disabled dm-raid4-5 + * [Config] Disabled ndiswrapper + * [Config] Disable vt6656 + * [Config] exclude ppp-modules for virtual flavour + * [Config] CONFIG_MEMSTICK_R592=m + - LP: #238208 + + [ Upstream Kernel Changes ] + + * CHROMIUM: seccomp_filter: new mode with configurable syscall filters + - LP: #887780 + * CHROMIUM: seccomp_filter: add process state reporting + - LP: #887780 + * CHROMIUM: seccomp_filter: Document what seccomp_filter is and how it + works. + - LP: #887780 + * CHROMIUM: x86: add HAVE_SECCOMP_FILTER and seccomp_execve + - LP: #887780 + * CHROMIUM: arm: select HAVE_SECCOMP_FILTER + - LP: #887780 + * CHROMIUM: seccomp_filters: move to btrees + * CHROMIUM: enable CONFIG_BTREE + * CHROMIUM: seccomp_filter: kill NR_syscall references + * CHROMIUM: seccomp_filters: guard all ftrace wrapper code + * CHROMIUM: seccomp_filters: clean up warnings; kref mistake + * CHROMIUM: seccomp_filter: remove "skip" from copy and add drop helper + * CHROMIUM: seccomp_filter: allow CAP_SYS_ADMIN management of execve + * CHROMIUM: seccomp_filter: inheritance documentation + * CHROMIUM: seccomp_filter: make inherited filters composable + * CHROMIUM: Fix seccomp_t compile error + - LP: #887780 + * CHROMIUM: Fix kref usage + - LP: #887780 + * CHROMIUM: enable CONFIG_SECCOMP_FILTER and CONFIG_HAVE_SECCOMP_FILTER + * rebase to v3.2-rc2 + + -- Leann Ogasawara Mon, 31 Oct 2011 09:24:39 -0400 + +linux (3.1.0-2.3) precise; urgency=low + + [ Tim Gardner ] + + * Add postinit and postrm scripts to the extras package + - LP: #882120 + + -- Leann Ogasawara Fri, 28 Oct 2011 12:48:33 -0700 + +linux (3.1.0-2.2) precise; urgency=low + + [ Andy Whitcroft ] + + * debian: add locking to protect debian/files from parallel update + + [ Leann Ogasawara ] + + * rebase to v3.1 + + [ Upstream Kernel Changes ] + + * rebase to v3.1 + + -- Leann Ogasawara Wed, 19 Oct 2011 07:12:38 -0700 + +linux (3.1.0-1.1) precise; urgency=low + + [ Andiry Xu ] + + * SAUCE: (drop during 3.2 merge) xHCI: AMD isoc link TRB chain bit quirk + - LP: #872811 + + [ Andy Whitcroft ] + + * Revert "ubuntu: compcache -- follow changes to bd_claim/bd_release" + - LP: #832694 + * Revert "ubuntu: compcache -- version 0.5.3" + - LP: #832694 + * [Config] standardise CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m + * [Config] Enable CONFIG_MACVTAP=m + - LP: #822601 + * record the compiler in the ABI and check for inconsistant builds + * [Config] move ECRYPT_FS back to =y for all architectures + - LP: #827197 + * [Config] enable CONFIG_DRM_VMWGFX=m + - LP: #698009 + * [Config] re-fix ECRYPT_FS=y + - LP: #827197 + * enforcer -- ensure we have CONFIG_ECRYPT_FS=y + - LP: #827197 + * [Config] dropping compcache configuration options + * [Config] standardise on HZ=250 + * SAUCE: headers_install: fix #include "..." usage for userspace + - LP: #824377 + * make module-inclusion selection retain the left overs + * add a new linux-image-extras package for virtual + + [ Colin Watson ] + + * Deliver more Atheros, Ralink, and iwlagn NIC drivers to d-i + + [ edwin_rong ] + + * SAUCE: Staging: add driver for Realtek RTS5139 cardreader + - LP: #824273 + + [ Greg Kroah-Hartman ] + + * SAUCE: staging: rts5139: add vmalloc.h to some files to fix the build. + - LP: #824273 + + [ Jesse Sung ] + + * SAUCE: Unregister input device only if it is registered + - LP: #839238 + + [ Jiri Kosina ] + + * SAUCE: HID: add MacBookAir4, 2 to hid_have_special_driver[] + + [ Joshua V. Dillon ] + + * SAUCE: HID: add support for MacBookAir4,2 keyboard. + + [ Kees Cook ] + + * [Config] enable and enforce SECCOMP_FILTER on x86 + + [ Keng-Yu Lin ] + + * [Config] Enable CONFIG_RTS5139=m on i386/amd64 + - LP: #824273 + + [ Leann Ogasawara ] + + * Revert "ubuntu: overlayfs -- ovl: make lower mount read-only" + * Revert "ubuntu: overlayfs -- fs: limit filesystem stacking depth" + * Revert "ubuntu: overlayfs -- ovl: improve stack use of lookup and + readdir" + * Revert "ubuntu: overlayfs -- ovl: fix overlayfs over overlayfs" + * Revert "ubuntu: overlayfs -- overlayfs: implement show_options" + * Revert "ubuntu: overlayfs -- overlayfs: add statfs support" + * Revert "ubuntu: overlayfs -- overlay filesystem" + * Revert "ubuntu: overlayfs -- overlay: overlay filesystem documentation" + * Revert "SAUCE: ARM: OMAP: Add macros for comparing silicon revision" + * Revert "SAUCE: OMAP: DSS2: check for both cpu type and revision, rather + than just revision" + * Revert "SAUCE: OMAP: DSS2: enable hsclk in dsi_pll_init for OMAP36XX" + * Revert "ubuntu: fsam7400 disable driver" + - LP: #876030 + * rebase to v3.1-rc1 + * [Config] updateconfigs after rebase to v3.1-rc1 + * rebase to v3.1-rc2 + * [Config] Updateconfigs after rebase to v3.1-rc2 + * ubuntu: Yama - update calls to generic_permission() and + inode->i_op->permission() + * ubuntu: ndiswrapper -- remove netdev_priv macro + * ubuntu: aufs -- Temporarily disable due to build failure + * [Config] Diable INTEL_MID_PTI on armel + * [Config] Temporarily disable CONFIG_FTMAC100 on armel + * [Config] Temporarily disable CONFIG_FTGMAC100 on armel + * [Config] Temporarily disable CONFIG_CAN_TI_HECC on armel + * [Config] Temporarily disable CONFIG_VIDEO_OMAP2_VOUT on armel + * [Config] Set CONFIG_DM_MIRROR=m on amd64, i386, and arm + * [Config] Set CONFIG_DM_MULTIPATH=m on amd64, i386, and arm + * [Config] Set CONFIG_DM_SNAPSHOT=m on amd64, i386, and arm + * [Config] Enable CONFIG_EDAC_AMD8111=m on powerpc + * [Config] Enable CONFIG_EDAC_AMD8131=m on powerpc + * [Config] Enable CONFIG_EDAC_CPC925=m on powerpc + * [Config] Enable CONFIG_EDAC_PASEMI=m on powerpc + * [Config] Enable CONFIG_ECHO=m on powerpc + * [Config] Enable CONFIG_ET131X=m on powerpc + * [Config] Set CONFIG_FB_MATROX=m + * [Config] Enable CONFIG_FB_UDL=m on powerpc + * [Config] Set CONFIG_FB_VIRTUAL=n + * [Config] Enable CONFIG_FB_VGA16=m on powerpc + * [Config] Enable CONFIG_GPIO_MAX732X=m on arm + * [Config] Enable CONFIG_GPIO_PCF857X=m on arm + * [Config] Set CONFIG_HOTPLUG_PCI_FAKE=m + * [Config] Enable CONFIG_HOTPLUG_PCI=y on powerpc + * [Config] Enable CONFIG_HOTPLUG_PCI_CPCI=y on powerpc + * [Config] Enable CONFIG_HP_ILO=m on powerpc-smp + * [Config] Enable CONFIG_I2C_PASEMI=m on powerpc + * [Config] Enable CONFIG_IBM_BSR=m on powerpc + * [Config] Enable CONFIG_IBMVETH=m on powerpc + * [Config] Enable CONFIG_IDE_PHISON=m on powerpc + * [Config] Enable CONFIG_IGB=m on powerpc + * [Config] Enable CONFIG_IIO=m on powerpc + * [Config] Enable CONFIG_INFINIBAND_NES=m + * [Config] Enable CONFIG_IPMI_HANDLER=m on arm + * [Config] Enable CONFIG_IWL3945=m on powerpc + * [Config] Disable CONFIG_KVM_BOOK3S_64 + * [Config] Enable CONFIG_LAPBETHER=m on arm + * [Config] Enable CONFIG_LEDS_GPIO=m on powerpc + * [Config] Enable CONFIG_LEDS_CLEVO_MAIL=m all arch's + * [Config] Enable CONFIG_LEDS_PCA9532=m on powerpc + * [Config] Enable CONFIG_LEDS_PCA955X=m on powerpc + * [Config] Enable CONFIG_LEDS_TRIGGER_DEFAULT_ON=m on powerpc + * [Config] Set CONFIG_LEDS_TRIGGER_HEARTBEAT=m on arm and powerpc + * [Config] Set CONFIG_LEDS_TRIGGER_TIMER=m on powerpc + * [Config] Enable CONFIG_LINE6_USB=m on arm and powerpc + * [Config] Enable CONFIG_MEMSTICK=m on arm + * [Config] Enable CONFIG_MTD_AFS_PARTS=m on arm + * [Config] Enable CONFIG_MTD_ALAUDA=m on arm + * [Config] Enable CONFIG_MTD_AR7_PARTS=m on arm + * [Config] Enable CONFIG_MTD_ARM_INTEGRATOR=m on arm + * [Config] Enable CONFIG_MOXA_SMARTIO=m on powerpc + * [Config] Enable CONFIG_MTD_DATAFLASH=m on arm + * [Config] Enable CONFIG_MTD_GPIO_ADDR=m on arm + * [Config] Enable CONFIG_MTD_IMPA7=m on arm + * [Config] Enable CONFIG_MTD_NAND_GPIO=m on arm + * [Config] Enable CONFIG_MTD_NAND_NANDSIM=m on arm + * [Config] Enable CONFIG_MTD_NAND_PASEMI=m on powerpc + * [Config] Enable CONFIG_MTD_NAND_PLATFORM=m on arm + * [Config] Enable CONFIG_MTD_NAND_TMIO=m on arm + * [Config] Enable CONFIG_MTD_SST25L=m on arm + * [Config] Enable CONFIG_NET_CLS_CGROUP=y on arm + * [Config] Enable CONFIG_NET_CLS_FLOW=m on arm + * [Config] Enable CONFIG_NET_CLS_U32=m on arm + * [Config] Enable CONFIG_NET_DCCPPROBE=m on arm + * [Config] Enable CONFIG_NET_SCH_INGRESS=m on arm + * [Config] Enable CONFIG_NET_TCPPROBE=m on arm + * [Config] Enable CONFIG_PASEMI_MAC=m on powerpc + * [Config] Enable CONFIG_PATA_NS87410=m on powerpc + * [Config] Enable CONFIG_I2C_GPIO=m on powerpc64-smp + * [Config] Enable CONFIG_PANEL=m on powerpc + * [Config] Enable CONFIG_PATA_CMD640_PCI=m on powerpc + * SAUCE: x86: reboot: Make Dell Latitude E6520 use reboot=pci + - LP: #833705 + * [Config] Add CONFIG_EFI_VARS=y to the enforcer + - LP: #837332 + * [Config] Update CONFIG_EFI_VARS enforcer check + * [Config] Add aufs to virtual flavor inclusion list + - LP: #844159 + * SAUCE: x86: reboot: Make Dell Optiplex 790 use reboot=pci + - LP: #818933 + * SAUCE: x86: reboot: Make Dell Optiplex 990 use reboot=pci + - LP: #768039 + * SAUCE: x86: reboot: Make Dell Latitude E6220 use reboot=pci + - LP: #838402 + * [Config] Add igbvf to the virtual flavor inclusion list + - LP: #794570 + * [Config] Add ixgbevf to the virtual inclusion list + - LP: #872411 + * [Config] Transition -generic and -server to be identical + * rebase to v3.1-rc10 + + [ Luke Yelavich ] + + * [Config] Disable legacy IDE drivers on powerpc + + [ Ming Lei ] + + * SAUCE: fireware: add NO_MSI quirks for o2micro controller + - LP: #801719 + * SAUCE: ata_piix: make DVD Drive recognisable on systems with Intel + Sandybridge chipsets(v2) + - LP: #737388, #782389, #794642 + + [ Paolo Pisati ] + + * [Config] Compile-in vfat support for armel + - LP: #853783 + + [ Randy Dunlap ] + + * SAUCE: staging: fix rts5139 depends & build + - LP: #824273 + + [ Rene Bolldorf ] + + * SAUCE: (drop after 3.0) ideapad: Check if acpi already handle backlight + power in 'ideapad_backlight_notify_power' to avoid a page fault + + [ Seth Forshee ] + + * SAUCE: (no-up) Input: elantech - Add v3 hardware support + - LP: #681904 + * SAUCE: (drop after 3.1) usb_storage: Don't freeze in usb-stor-scan + - LP: #810020 + + [ Stefan Bader ] + + * (config) Package macvlan and macvtap for virtual + * [Config] Force perf to use libiberty for demangling + - LP: #783660 + * SAUCE: xen: Do not use pv spinlocks on HVM + - LP: #838026 + + [ Tim Gardner ] + + * [Config] Clean up tools rules + * [Config] Package x86_energy_perf_policy and turbostat + - LP: #797556 + * rebase to v3.1-rc3 + * [Config] Simplify binary-udebs dependencies + * [Config] kernel preparation cannot be parallelized + * [Config] Linearize module/abi checks + * [Config] Linearize and simplify tree preparation rules + * [Config] Build kernel image in parallel with modules + * [Config] Set concurrency for kmake invocations + * [Config] Improve install-arch-headers speed + * [Config] Fix binary-perarch dependencies + * [Config] Removed stamp-flavours target + * [Config] Serialize binary indep targets + * [Config] Use build stamp directly + * [Config] Restore prepare-% target + * rebase to v3.1-rc4 + * rebase to v3.1-rc5 + * [Config] Disable makedumpfile for i386/amd64 + * rebase to v3.1-rc6 + * [Config] Fix binary-% build target + * rebase to v3.1-rc7 + * rebase to v3.1-rc8 + * SAUCE: Add a new entry (413c:8197) to Bluetooth USB device ID table + - LP: #854399 + * [Config] Enable ftrace support in the mac80211 layer + - LP: #865171 + * rebase to v3.1-rc9 + * SAUCE: usb/core/devio.c: Check for printer class specific request + - LP: #872711 + + [ Upstream Kernel Changes ] + + * overlay filesystem + * overlayfs: add statfs support + * overlayfs: implement show_options + * overlay: overlay filesystem documentation + * fs: limit filesystem stacking depth + + [ Will Drewry ] + + * SAUCE: seccomp_filter: new mode with configurable syscall filters + * SAUCE: seccomp_filter: add process state reporting + * SAUCE: seccomp_filter: Document what seccomp_filter is and how it + works. + * SAUCE: seccomp_filter: add HAVE_SECCOMP_FILTER and seccomp_execve + + [ Upstream Kernel Changes ] + + * rebase to v3.1-rc1 + * rebase to v3.1-rc2 + * rebase to v3.1-rc3 + +CONFIG_BLK_DEV_BSGLIB=y + +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 + -CONFIG_VIDEO_OMAP2_VOUT_VRFB=y + * rebase to v3.1-rc4 + * rebase to v3.1-rc5 + * rebase to v3.1-rc6 + * rebase to v3.1-rc7 + * rebase to v3.1-rc8 + * rebase to v3.1-rc9 + * rebase to v3.1-rc10 + + -- Leann Ogasawara Wed, 10 Aug 2011 15:43:38 -0700 + +linux (3.1.0-1.0) oneiric; urgency=low + + [ Leann Ogasawara ] + + * Open P-series + + -- Leann Ogasawara Wed, 10 Aug 2011 13:42:40 -0700 + +linux (3.0.0-8.10) oneiric; urgency=low + + [ Adam Jackson ] + + * SAUCE: drm/i915/pch: Fix integer math bugs in panel fitting + - LP: #753994 + + [ John Johansen ] + + * [Config] Enable missing IPv6 options + + [ Leann Ogasawara ] + + * [Config] Disable config IWLWIFI_DEVICE_SVTOOL + - LP: #819925 + * Rebase to 3.0.1 + + [ Upstream Kernel Changes ] + + * x86, intel, power: Correct the MSR_IA32_ENERGY_PERF_BIAS message + * ALSA: hda - Turn on extra EAPDs on Conexant codecs + - LP: #783582 + * KVM: Remove SMEP bit from CR4_RESERVED_BITS + - LP: #796476 + * KVM: Add SMEP support when setting CR4 + - LP: #796476 + * KVM: Mask function7 ebx against host capability word9 + - LP: #796476 + * KVM: Add instruction fetch checking when walking guest page table + - LP: #796476 + + [ Upstream Kernel Changes ] + + * rebase to v3.0.1 + + -- Leann Ogasawara Fri, 05 Aug 2011 11:32:25 -0700 + +linux (3.0.0-7.9) oneiric; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] add local prefix to oss local change_bits" + * Revert "SAUCE: add tracing for user initiated readahead requests" + * Revert "SAUCE: vfs: Add a trace point in the mark_inode_dirty function" + * Revert "SAUCE: Input: ALPS - Enable Intellimouse mode for Lenovo + Zhaoyang E47" + * Revert "SAUCE: fix documentation strings for struct input_keymap_entry" + * Revert "SAUCE: vt -- fix handoff numbering to 1..n and add range checks + (grub)" + * Revert "SAUCE: vt -- fix handoff numbering to 1..n and add range + checks" + * Revert "SAUCE: vt -- allow grub to request automatic vt_handoff" + * Revert "SAUCE: vt -- maintain bootloader screen mode and content until + vt switch" + * [Config] enable CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1 + - LP: #816035 + * ubuntu: Yama: if an underlying filesystem provides a permissions op use + it + * SAUCE: (no-up) add tracing for user initiated readahead requests + * SAUCE: vt -- maintain bootloader screen mode and content until vt + switch + * SAUCE: vt -- allow grub to request automatic vt_handoff + + [ Arjan van de Ven ] + + * SAUCE: (no-up) vfs: Add a trace point in the mark_inode_dirty function + + [ Kees Cook ] + + * Revert "SAUCE: (no-up) Disable building the ACPI debugfs source" + * [Config] enforce ACPI_CUSTOM_METHOD disabled + + [ Keng-Yu Lin ] + + * SAUCE: (no-up) Input: ALPS - Enable Intellimouse mode for Lenovo + Zhaoyang E47 + - LP: #632884, #803005 + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_BLK_DEV_CMD64X=m on powerpc + - LP: #513131 + * [Config] Enable CONFIG_RT2800PCI_RT53XX=y + - LP: #815064 + + [ Rezwanul Kabir ] + + * SAUCE: (no-up) Add support for Intellimouse Mode in ALPS touchpad on + Dell E2 series Laptops + - LP: #632884 + + [ Upstream Kernel Changes ] + + * Revert "yama: if an underlying filesystem provides a permissions op use + it" + * Revert "Add support for Intellimouse Mode in ALPS touchpad on Dell E2 + series Laptops" + * Revert "tty: include linux/slab.h for kfree" + * Revert "gpio/ml_ioh_gpio: include linux/slab.h for kfree" + * Revert "pch_dma: add include/slab.h for kfree" + * mmc: Added quirks for Ricoh 1180:e823 lower base clock frequency + - LP: #773524 + * oss: rename local change_bits to avoid powerpc bitsops.h definition + + -- Leann Ogasawara Mon, 25 Jul 2011 09:08:01 -0700 + +linux (3.0.0-7.8) oneiric; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: overlayfs -- overlayfs: add statfs support + * [Config] enable CONFIG_OVERLAYFS + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_ALIM7101_WDT=m on powerpc + * [Config] Enable CONFIG_ASUS_OLED=m on powerpc + * [Config] Disable CONFIG_ATM_DUMMY on arm + * [Config] Enable CONFIG_BLK_DEV_DRBD=m on powerpc + * Temporarily disable module check on arm + * Rebase to 3.0 final + * [Config] Enable CONFIG_CAN_TI_HECC=m on arm + * [Config] Set CONFIG_CDROM_PKTCDVD=m on amd64 and i386 + * [Config] Enable CONFIG_CRYPTO_CCM=m on powerpc + * [Config] Enable CONFIG_CRYPTO_DEV_HIFN_795X=m on powerpc + * [Config] Enable CONFIG_CRYPTO_GCM=m on powerpc + * [Config] Set CRYPTO_LZO=m on powerpc64-smp + * [Config] Enable CONFIG_DM9000=m on arm + * [Config] Set CONFIG_DISPLAY_SUPPORT=m on arm + * [Config] Enable CONFIG_DL2K=m on amd64 and i386 + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: add i_op->open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- ovl: fix overlayfs over overlayfs + * ubuntu: overlayfs -- ovl: improve stack use of lookup and readdir + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + * ubuntu: overlayfs -- ovl: make lower mount read-only + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Tim Gardner ] + + * [Config] Add enic/fnic to udebs + - LP: #801610 + + [ Upstream Kernel Changes ] + + * yama: if an underlying filesystem provides a permissions op use it + + [ Major Kernel Changes ] + + * Rebase to 3.0 final + + -- Leann Ogasawara Thu, 21 Jul 2011 07:01:32 -0700 + +linux (3.0.0-6.7) oneiric; urgency=low + + [ Eagon Yager ] + + * [Config] Fix misspelled 'skipmodule' in arm makefile. + + [ Keng-Yu Lin ] + + * SAUCE: Input: ALPS - Enable Intellimouse mode for Lenovo Zhaoyang E47 + - LP: #632884, #803005 + + [ Leann Ogasawara ] + + * Revert "[Config] Temporarily disable CONFIG_SMC91X on armel-omap" + * Revert "[Config] Temporarily Disable CONFIG_BRCMSMAC on arm" + * Revert "[Config] Temporarily Disable CONFIG_RTL8192SE on powerpc" + * Revert "[Config] Temporarily Disable CONFIG_RTL8192SE on arm" + * Revert "[Config] Temporarily disable CONFIG_BRCMSMAC on powerpc" + * [Config] Set CONFIG_ACPI_PCI_SLOT=m + * [Config] Set CONFIG_ACPI_SBS=m + * [Config] Set CONFIG_ACPI_WMI=m + * [Config] Set CONFIG_AD7150=m on arm + * [Config] Set CONFIG_AD7152=m on arm + * [Config] Drop CONFIG_GPIO_S5PV210 + * [Config] Drop CONFIG_GPIO_S5PC100 + * [Config] Drop CONFIG_GPIO_PLAT_SAMSUNG + * [Config] Drop CONFIG_GPIO_EXYNOS4 + + [ Stefan Bader ] + + * SAUCE: Re-enable RODATA for i386 virtual + - LP: #809838 + + [ Upstream Kernel Changes ] + + * Revert "Quirk to fix suspend/resume on Lenovo Edge 11,13,14,15" + * (drop after 3.0.0) acer-wmi: Add support for Aspire 1830 wlan hotkey + - LP: #771758 + + -- Leann Ogasawara Wed, 20 Jul 2011 06:36:02 -0700 + +linux (3.0.0-5.6) oneiric; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_RTL8192CU=m + * Rebase to -rc7 + + -- Tim Gardner Mon, 11 Jul 2011 22:13:50 +0100 + +linux (3.0.0-4.5) oneiric; urgency=low + + [ Ming Lei ] + + * SAUCE: fix yama_ptracer_del lockdep warning + - LP: #791019 + + [ Seth Forshee ] + + * SAUCE: (drop after 3.0) asus-wmi: Add callback for hotkey filtering + * SAUCE: (drop after 3.0) eeepc-wmi: Add support for T101MT Home/Express Gate key + * SAUCE: (drop after 3.0) asus-wmi: Enable autorepeat for hotkey input device + * [Config] CONFIG_{ASUS,ASUS_NB,EEEPC}_WMI=m + - LP: #805218 + + [ Tim Gardner ] + + * [Config] updateconfigs after rebase to -rc6+ + Rebased against 4dd1b49c6d215dc41ce50c80b4868388b93f31a3 + * Adopt a 3 digit verion, e.g., 3.0.0-x.x + * Revert "UBUNTU: add dependancies for module-init-tools" + This dependency is no longer required for a 3 digit version. + + -- Tim Gardner Tue, 05 Jul 2011 14:03:04 +0100 + +linux (3.0-3.4) oneiric; urgency=low + + [ Keng-Yu Lin ] + + * SAUCE: Revert: "dell-laptop: Toggle the unsupported hardware + killswitch" + - LP: #775281 + + [ Leann Ogasawara ] + + * rebase to v3.0-rc5 + * [Config] updateconfigs after rebase to 3.0-rc5 + + [ Tim Gardner ] + + * [Config] Remove ubuntu/rtl8192se + * [Config] Added armel ABI files + * [Config] Removed armel versatile flavour + * [Config] CONFIG_INTEL_MEI=m + - LP: #716867 + + [ Upstream Kernel Changes ] + + * ALSA: hda - Enable auto-parser as default for Conexant codecs + + [ Upstream Kernel Changes ] + + * rebase to v3.0-rc5 + + -- Leann Ogasawara Thu, 30 Jun 2011 14:27:10 +0100 + +linux (3.0-2.3) oneiric; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update to 0e2bafab74f0d1463383faeb93f9fc5eb8c2c54e + + [ Leann Ogasawara ] + + * rebase to v3.0-rc4 + * [Config] updateconfigs after rebase to 3.0-rc4 + * fix ERROR: __devcgroup_inode_permission undefined + + [ Stefan Bader ] + + * SAUCE: iscsitarget: Remove driver from the kernel + + [ Tim Gardner ] + + * SAUCE: rtl8192se: Force a build for a 2.6/3.0 kernel + * [Config] Add grub-efi as a recommended bootloader for server and + generic + - LP: #800910 + + [ Upstream Kernel Changes ] + + * Fix node_start/end_pfn() definition for mm/page_cgroup.c + + [ Leann Ogasawara ] + + * rebase to v3.0-rc4 + + -- Leann Ogasawara Fri, 24 Jun 2011 11:51:12 -0700 + +linux (3.0-1.2) oneiric; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_CAN_CALC_BITTIMING + + [ Leann Ogasawara ] + + * rebase to v3.0-rc3 + * [Config] updateconfigs after rebase to 3.0-rc3 + + [ Upstream Kernel Changes ] + + * perf: clear out make flags when calling kernel make kernelver + + [ Leann Ogasawara ] + + * rebase to v3.0-rc3 + + -- Leann Ogasawara Tue, 14 Jun 2011 07:25:35 -0700 + +linux (3.0-0.1) oneiric; urgency=low + + [ Andy Whitcroft ] + + * use the packaging version in the kernel + * use the kernels idea of its version for version_signature + * add dependancies for module-init-tools + * update control files to version 3 + * printchanges/insertchanges allow override of prev_release + * correct Vcs-Git: to point to oneiric + + [ Leann Ogasawara ] + + * rebase to v3.0-rc1 + * [Config] updateconfigs after rebase to 3.0-rc1 + * ubuntu: dm-raid4-5 fix up build failure + * [Config] Temporarily Disable CONFIG_GPIO_EXYNOS4 on arm + * [Config] Temporarily Disable CONFIG_GPIO_PLAT_SAMSUNG on arm + * [Config] Temporarily Disable CONFIG_GPIO_S5PC100 on arm + * [Config] Temporarily Disable CONFIG_GPIO_S5PV210 on arm + * [Config] Temporarily disable CONFIG_BRCMSMAC on powerpc + * [Config] Temporarily Disable CONFIG_BRCMSMAC on arm + * [Config] Temporarily Disable CONFIG_RTL8192SE on arm + * [Config] Temporarily Disable CONFIG_RTL8192SE on powerpc + * [Config] Temporarily disable CONFIG_SMC91X on armel-omap + * rebase to v3.0-rc2 + + [ Manoj Iyer ] + + * SAUCE: mmc: Enable MMC card reader for RICOH [1180:e823] + - LP: #790754 + + [ Upstream Kernel Changes ] + + * Revert "x86 idle: EXPORT_SYMBOL(default_idle, pm_idle) only when APM + demands it" + * drm/i915: fix regression after clock gating init split + + [ Major Kernel Changes ] + + * rebase from v2.6.39 to v3.0-rc1 + * rebase from v3.0-rc1 to v3.0-rc2 + + -- Andy Whitcroft Thu, 09 Jun 2011 15:18:33 +0100 + +linux (2.6.39-3.10) oneiric; urgency=low + + [ Colin Ian King ] + + * SAUCE: S3 early resume debug via keyboard LEDs + + [ Ingo Molnar ] + + * ubuntu: nx-emu - i386: NX emulation + * ubuntu: nx-emu - i386: mmap randomization for executable mappings + + [ Leann Ogasawara ] + + * Revert "[Config] Disable CONFIG_FT1000 on powerpc64-smp" + * Revert "[Config] Disable CONFIG_DM_RAID45" + * [Config] enable CONFIG_BRCMFMAC=y + * [Config] enable CONFIG_MDIO_BITBANG=m across all arch's and flavors + * [Config] enable CONFIG_VIDEO_OUTPUT_CONTROL=m on armel-omap + + [ Robert Nelson ] + + * SAUCE: omap3: beagle: detect new xM revision B + - LP: #770679 + * SAUCE: omap3: beagle: detect new xM revision C + - LP: #770679 + * SAUCE: omap3: beagle: if rev unknown, assume xM revision C + - LP: #770679 + + [ Stefan Bader ] + + * SAUCE: Convert dm-raid45 to new block plugging + + -- Leann Ogasawara Mon, 23 May 2011 11:46:43 -0700 + +linux (2.6.39-3.9) oneiric; urgency=low + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_SCSI_LPFC_DEBUG_FS + * rebase to v2.6.39 + * [Config] enable CONFIG_LLC2=m across all arch's and flavours + * [Config] enable CONFIG_INPUT_APANEL=m + + [ Thomas Schlichter ] + + * SAUCE: vesafb: mtrr module parameter is uint, not bool + - LP: #778043 + * SAUCE: vesafb: enable mtrr WC by default + - LP: #778043 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc7 to v2.6.39 + + -- Andy Whitcroft Fri, 20 May 2011 09:52:32 +0100 + +linux (2.6.39-2.8) oneiric; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-37" + * Revert "ubuntu: AUFS -- aufs2-base.patch aufs2.1-37" + * Revert "[Config] Disable CONFIG_AUFS_FS" + * ubuntu: AUFS -- aufs2-base.patch aufs2.1-39 + * ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-39 + * ubuntu: AUFS -- update to c6b76974311efc5bf3eddf921cd015b6aae46935 + * ubuntu: AUFS -- clean up the aufs updater and BOM + * ubuntu: AUFS -- documentation on updating aufs2 + + [ Kees Cook ] + + * ubuntu: Yama - LSM hooks + * ubuntu: Yama - create task_free security callback + * ubuntu: Yama - add ptrace relationship tracking interface + * ubuntu: Yama - unconditionally chain to Yama LSM + + [ Leann Ogasawara ] + + * Revert "SAUCE: Fix drivers/staging/easycap FTBS" + * Revert "[Config] Disable CONFIG_EASYCAP" + * ubuntu: fsam7400 disable driver + * ubuntu: omnibook disable driver + * ubuntu: rfkill disable driver + + [ Tim Gardner ] + + * SAUCE: Fix extra reference in fb_open() + + -- Leann Ogasawara Mon, 16 May 2011 09:23:56 -0700 + +linux (2.6.39-2.7) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc7 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc6 to v2.6.39-rc7 + + -- Leann Ogasawara Tue, 10 May 2011 10:18:28 +0200 + +linux (2.6.39-1.6) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc6 + * SAUCE: [arm] fixup __aeabi_uldivmod undefined build error + + [ Tim Gardner ] + + * [Config] updateconfigs after rebase to 2.6.39-rc6 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc5 to v2.6.39-rc6 + - LP: #740126 + + -- Leann Ogasawara Thu, 05 May 2011 09:46:12 -0700 + +linux (2.6.39-0.5) oneiric; urgency=low + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: Revert "x86, hibernate: Initialize mmu_cr4_features during boot" + - LP: #764758 + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc5 + * [Config] updateconfigs following rebase to v2.6.39-rc5 + + [ Paolo Pisati ] + + * [Config] s/USB_MUSB_TUSB6010/USB_MUSB_OMAP2PLUS/ on omap3 to get musb + - LP: #759913 + + [ Stefan Bader ] + + * Include nls_iso8859-1 for virtual images + - LP: #732046 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc4 to v2.6.39-rc5 + + -- Leann Ogasawara Wed, 27 Apr 2011 06:39:42 -0700 + +linux (2.6.39-0.4) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc4 + * [Config] updateconfigs following rebase to v2.6.39-rc4 + * fixup powerpc implicit declaration of function + 'crash_kexec_wait_realmode' + * [Config] Disable CONFIG_FT1000 on powerpc64-smp + + [ Tim Gardner ] + + * [Config] CONFIG_TRANSPARENT_HUGEPAGE=y + - LP: #769503 + * [Config] Add cachefiles.ko to virtual flavour + - LP: #770430 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc3 to v2.6.39-rc4 + + -- Leann Ogasawara Tue, 19 Apr 2011 06:25:20 -0700 + +linux (2.6.39-0.3) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc3 + * crash_kexec_wait_realmode() undefined when !SMP + + [ Tim Gardner ] + + * [Config] CONFIG_PM_ADVANCED_DEBUG=y for i386/amd64 + - LP: #632327 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc2 to v2.6.39-rc3 + + -- Leann Ogasawara Tue, 12 Apr 2011 06:52:24 -0700 + +linux (2.6.39-0.2) oneiric; urgency=low + + [ Gustavo F. Padovan ] + + * SAUCE: Revert "Bluetooth: Add new PID for Atheros 3011" + - LP: #720949 + + [ John Johansen ] + + * AppArmor: Fix masking of capabilities in complain mode + - LP: #748656 + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc2 + * [Config] updateconfigs following rebase to v2.6.39-rc2 + * hv_mouse needs delay.h + * olpc_dcon_xo_1 needs delay.h + * olpc_dcon_xo_1_5 needs delay.h + * Update dropped.txt for Oneiric + + [ Steve Langasek ] + + * [Config] Make linux-libc-dev coinstallable under multiarch + - LP: #750585 + + [ Upstream Kernel Changes ] + + * x86, hibernate: Initialize mmu_cr4_features during boot + - LP: #752870 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc1 to v2.6.39-rc2 + + -- Leann Ogasawara Wed, 06 Apr 2011 11:04:15 -0700 + +linux (2.6.39-0.1) oneiric; urgency=low + + [ Brad Figg ] + + * [Config] Set CONFIG_NR_CPUS=256 for amd64 generic + - LP: #737124 + + [ Henrik Rydberg ] + + * SAUCE: HID: hid-ntrig: add support for 1b96:0006 model + * SAUCE: HID: ntrig: fix suspend/resume on recent models + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: (drop after 2.6.39) v4l: make sure drivers supply a zeroed + struct v4l2_subdev + - LP: #745213 + + [ Kees Cook ] + + * [Config] packaging: adjust perms on vmlinuz as well + * SAUCE: nx-emu: further clarify dmesg reporting + - LP: #745181 + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc1 + * [Config] updateconfigs following rebase to v2.6.39-rc1 + * [Config] Disable CONFIG_DM_RAID45 + * [Config] Disable CONFIG_SCSI_ISCSITARGET + * [Config] Disable CONFIG_EASYCAP + * [Config] Disable CONFIG_AUFS_FS + * update bnx2 firmware files in d-i/firmware/nic-modules + * xhci-pci.c resolve implicit declaration of kzalloc + * [Config] Enable CONFIG_DRM_PSB for only x86 + * [Config] Enable CONFIG_RTS_PSTOR for only x86 + * mfd/asic3: Fix typo, s/irq_data/data/ + + [ Luke Yelavich ] + + * [Config] Disable CONFIG_CRASH_DUMP on 32-bit powerpc kernels + - LP: #745358 + * [Config] Disable CONFIG_DRM_RADEON_KMS on powerpc kernels + * [Config] Build some framebuffer drivers as modules for powerpc kernels. + + [ Manoj Iyer ] + + * SAUCE: thinkpad-acpi: module autoloading for newer Lenovo ThinkPads. + - LP: #745217 + + [ Tim Gardner ] + + * SAUCE: INR_OPEN=4096 + - LP: #663090 + * SAUCE: Increase the default hard limit for open FDs to 4096 + - LP: #663090 + + [ Upstream Kernel Changes ] + + * (drop after 2.6.39-rc1) arm: versatile : Fix typo introduced in irq + namespace cleanup + * (drop after 2.6.39-rc1) [media] staging: altera-jtag needs delay.h + * ALSA: pcm: fix infinite loop in snd_pcm_update_hw_ptr0() + + [ Major Kernel Changes ] + + * rebase from v2.6.38 to v2.6.39-rc1 + + -- Leann Ogasawara Thu, 31 Mar 2011 12:50:10 -0700 + +linux (2.6.39-0.0) oneiric; urgency=low + + [ Leann Ogasawara ] + + * Open Oneiric + + -- Leann Ogasawara Thu, 31 Mar 2011 12:29:23 -0700 + +linux (2.6.38-7.39) natty; urgency=low + + [ Leann Ogasawara ] + + * No change upload. This is just to rebuild with gcc-4.5.2-7ubuntu1. + + -- Leann Ogasawara Thu, 24 Mar 2011 09:27:45 -0700 + +linux (2.6.38-7.38) natty; urgency=low + + [ Leann Ogasawara ] + + * No change upload take 2. 2.6.38-7.37 was accidentally uploaded before + gcc-4.5.2-6ubuntu5 finished building on all arches. + + -- Leann Ogasawara Tue, 22 Mar 2011 06:12:47 -0700 + +linux (2.6.38-7.37) natty; urgency=low + + [ Leann Ogasawara ] + + * No change upload. This is just to rebuild with gcc-4.5.2-6ubuntu5. + + -- Leann Ogasawara Sun, 20 Mar 2011 16:02:48 -0700 + +linux (2.6.38-7.36) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: KLUDGE: work around failed 'shrink-wrap' compiler + optimisation" + * purge last vestiges of maverick + * [Config] switch CONFIG_FB_VESA back to module + + [ Chris Wilson ] + + * SAUCE: drm/i915: Fix pipelined fencing + - LP: #717114 + + [ Loïc Minier ] + + * Include nls_cp437 module in virtual for fat + - LP: #732046 + * Support arch= cross-compilation for any arch + * Fix couple of typos in 0-common-vars.mk + * Enforce DEFAULT_MMAP_MIN_ADDR on armhf + * Add armhf to Debian -> Linux arch map + * Add initial armhf.mk + * Enable common packages for armhf + + [ Upstream Kernel Changes ] + + * Yama: fix default relationship to check thread group + - LP: #737676 + + -- Andy Whitcroft Fri, 18 Mar 2011 18:18:02 +0000 + +linux (2.6.38-7.35) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to 2fbfac4e053861925fa3fffcdc327649b09af54c + * rebase fixes bug #715330 + * [Config] disable CONFIG_SCSI_QLA_ISCSI for powerpc 32bit to fix FTBS + * rebase to v2.6.38 final + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: Apply OPTION_BLACKLIST_SENDSETUP also for ZTE MF626 + - LP: #636091 + + [ Tim Gardner ] + + * [Confg] CONFIG_BOOT_PRINTK_DELAY=y + + [ Upstream Kernel Changes ] + + * Yama: use thread group leader when creating match + - LP: #729839 + * (drop after 2.6.38) ahci: AHCI mode SATA patch for Intel Patsburg SATA + RAID controller + - LP: #735240 + * (drop after v2.6.38) x86, quirk: Fix SB600 revision check + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc8 to v2.6.38 final + - LP: #715330 + + -- Andy Whitcroft Tue, 15 Mar 2011 19:04:19 +0000 + +linux (2.6.38-6.34) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] normalise CONFIG_INTEL_TXT + * SAUCE: KLUDGE: work around failed 'shrink-wrap' compiler optimisation + - LP: #730860 + * rebase to mainline v2.6.38-rc8 + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc7 + fb62c00a6d8942775abc23d1621db1252e2d93d1 + to v2.6.38-rc8 + + -- Andy Whitcroft Tue, 08 Mar 2011 11:54:48 +0000 + +linux (2.6.38-6.33) natty; urgency=low + + [ Andy Whitcroft ] + + * d-i -- enable speakup-modules udeb + - LP: #672699 + * rebase to 493f3358cb289ccf716c5a14fa5bb52ab75943e5 + * [Config] debian PPC64 configuration + * [Config] cleanup powerpc config fixing unexpected inconsistancies + * [Config] resync ppc64 configuration + * SAUCE: match up ENTRY/END naming for 32/64 bit + * rebase to fb62c00a6d8942775abc23d1621db1252e2d93d1 + * [Config] update configs after rebase to + fb62c00a6d8942775abc23d1621db1252e2d93d1 + * [Config] pps_gen_parport no longer built + + [ Corentin Chary ] + + * SAUCE: (drop after 2.6.38) eeepc-wmi: reorder keymap + - LP: #689393 + * SAUCE: (drop after 2.6.38) eeepc-wmi: add wlan key found on 1015P + - LP: #689393 + + [ John Johansen ] + + * SAUCE: Fix aufs calling of security_path_mknod + - LP: #724456 + + [ Kees Cook ] + + * SAUCE: proc: hide kernel addresses via %pK in /proc//stack + + [ Tim Gardner ] + + * rebase to 2.6.38-rc7 + + [ Upstream Kernel Changes ] + + * Revert "drm/i915: fix corruptions on i8xx due to relaxed fencing" + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc6 to v2.6.38-rc7 + + fb62c00a6d8942775abc23d1621db1252e2d93d1 + - LP: #721389 + - LP: #722925 + - LP: #723672 + - LP: #723676 + - LP: #715318 + + -- Andy Whitcroft Mon, 07 Mar 2011 15:33:17 +0000 + +linux (2.6.38-5.32) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to mainline 6f576d57f1fa0d6026b495d8746d56d949989161 + * [Config] updateconfigs following rebase to v2.6.38-rc6 + * [Config] enable CONFIG_DMAR + - LP: #552311 + + [ Upstream Kernel Changes ] + + * drm/i915: skip FDI & PCH enabling for DP_A + - LP: #561802, #600453, #681877 + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc5 to v2.6.38-rc6 + - LP: #718402 + - LP: #719524 + - LP: #721126 + - LP: #719691 + - LP: #722689 + - LP: #722310 + + -- Andy Whitcroft Tue, 22 Feb 2011 13:28:39 +0000 + +linux (2.6.38-4.31) natty; urgency=low + + [ Andy Whitcroft ] + + * add in bugs closed by upstream patches pulled in by rebases + * rebase to 795abaf1e4e188c4171e3cd3dbb11a9fcacaf505 + * [Config] enable CONFIG_VSX to allow use of vector instuctions + * resync with maverick 98defa1c5773a3d7e4c524967eb01d5bae035816 + * rebase to mainline v2.6.38-rc5 + * SAUCE: ecryptfs: read on a directory should return EISDIR if not + supported + - LP: #719691 + + [ Colin Ian King ] + + * SAUCE: Dell All-In-One: Remove need for Dell module alias + + [ Manoj Iyer ] + + * SAUCE: (drop after 2.6.38) add ricoh 0xe823 pci id. + - LP: #717435 + + [ Tim Gardner ] + + * [Config] CONFIG_CRYPTO_CRC32C_INTEL=y + + [ Upstream Kernel Changes ] + + * Quirk to fix suspend/resume on Lenovo Edge 11,13,14,15 + - LP: #702434 + * vfs: fix BUG_ON() in fs/namei.c:1461 + + [ Vladislav P ] + + * SAUCE: Release BTM while sleeping to avoid deadlock. + - LP: #713837 + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc4 to v2.6.38-rc5 + - LP: #579276 + - LP: #715877 + - LP: #713769 + - LP: #716811 + * resync with Maverick Ubuntu-2.6.35-27.47 + + -- Andy Whitcroft Fri, 11 Feb 2011 17:24:09 +0000 + +linux (2.6.38-3.30) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.38-rc4 + * ppc64 -- add basic architecture + * ubuntu: AUFS -- update to 65835da20b77c98fb538c9114fc31f5de1328230 + + [ Colin Ian King ] + + * SAUCE: Add WMI hotkeys support for Dell All-In-One series + - LP: #676997 + * SAUCE: Add WMI hotkeys support for another Dell All-In-One series + - LP: #701530 + * SAUCE: Dell WMI: Use sparse keymaps and tidy up code. + - LP: #701530 + + [ Dan Rosenberg ] + + * SAUCE: (drop after 2.6.38) Convert net %p usage %pK + + [ Kees Cook ] + + * Revert "SAUCE: kernel: make /proc/kallsyms mode 400 to reduce ease of + attacking" + * SAUCE: (drop after 2.6.38) use %pK for /proc/kallsyms and /proc/modules + + [ Tim Gardner ] + + * [Config] CONFIG_BLK_CGROUP=y + - LP: #706394 + * [Config] CONFIG_DELL_WMI_AIO=m + + [ Upstream Kernel Changes ] + + * drm/i915/lvds: Restore dithering on native modes for gen2/3 + - LP: #711568 + + [ Upstream Kernel Changes ] + + * rebase from v2.6.38-rc3 to v2.6.38-rc4. + - LP: #701271 + - LP: #708521 + - LP: #710371 + + -- Andy Whitcroft Tue, 08 Feb 2011 02:07:18 +0000 + +linux (2.6.38-2.29) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to 1f0324caefd39985e9fe052fac97da31694db31e + * [Config] updateconfigs following rebase to + 1f0324caefd39985e9fe052fac97da31694db31e + * rebase to 70d1f365568e0cdbc9f4ab92428e1830fdb09ab0 + * [Config] reenable HIBERNATE + - LP: #710877 + * rebase to v2.6.38-rc3 + * [Config] reenable CONFIG_CRASH_DUMP + + [ Kamal Mostafa ] + + * SAUCE: rtl8192se: fix source file perms + * SAUCE: rtl8192se: fix source file newline + * SAUCE: omnibook: fix source file newline + + [ Kees Cook ] + + * [Config] packaging: really make System.map mode 0600 + + [ Ricardo Salveti de Araujo ] + + * SAUCE: OMAP3630: PM: don't warn the user with a trace in case of + PM34XX_ERRATUM + + [ Soren Hansen ] + + * SAUCE: nbd: Remove module-level ioctl mutex + + [ Tim Gardner ] + + * SAUCE: Disable building the ACPI debugfs source + + [ Upstream Kernel Changes ] + + * Set physical start and alignment 1M for virtual i386 + - LP: #710754 + + [ Upstream Kernel Changes ] + + * rebase from v2.6.38-rc2 + c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + to v2.6.38-rc3 + - LP: #707902 + + -- Andy Whitcroft Fri, 28 Jan 2011 16:30:32 +0000 + +linux (2.6.38-1.28) natty; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update to b1cee06249dfa0ab30951e7f06490a75c155b620 + + [ Ricardo Salveti de Araujo ] + + * SAUCE: omap3: beaglexm: fix DVI initialization + * [Config] omap: move CONFIG_PANEL_GENERIC_DPI to build in to make + display work at Beagle + + -- Andy Whitcroft Fri, 28 Jan 2011 10:51:57 +0000 + +linux (2.6.38-1.27) natty; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update aufs-update to track new locations of headers + * ubuntu: AUFS -- update to c5021514085a5d96364e096dbd34cadb2251abfd + * SAUCE: ensure root is ready before running usermodehelpers in it + * correct the Vcs linkage to point to natty + * rebase to linux tip e78bf5e6cbe837daa6ab628a5f679548742994d3 + * [Config] update configs following rebase + e78bf5e6cbe837daa6ab628a5f679548742994d3 + * SAUCE: Yama: follow changes to generic_permission + * ubuntu: compcache -- follow changes to bd_claim/bd_release + * ubuntu: iscsitarget -- follow changes to open_bdev_exclusive + * ubuntu: ndiswrapper -- fix interaction between __packed and packed + * ubuntu: AUFS -- update to 806051bcbeec27748aae2b7957726a4e63ff308e + * update package version to match payload version + * rebase to e6f597a1425b5af64917be3448b29e2d5a585ac8 + * rebase to v2.6.38-rc1 + * [Config] updateconfigs following rebase to v2.6.38-rc1 + * SAUCE: x86 fix up jiffies/jiffies_64 handling + * rebase to linus tip 2b1caf6ed7b888c95a1909d343799672731651a5 + * [Config] updateconfigs following rebase to + 2b1caf6ed7b888c95a1909d343799672731651a5 + * [Config] disable CONFIG_TRANSPARENT_HUGEPAGE to fix i386 boot crashes + * ubuntu: AUFS -- suppress benign plink warning messages + - LP: #621195 + * [Config] CONFIG_NR_CPUS=256 for amd64 -server flavour + * rebase to v2.6.38-rc2 + * rebase to mainline d315777b32a4696feb86f2a0c9e9f39c94683649 + * rebase to c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + * [Config] update configs following rebase to + c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + * [Config] disable CONFIG_AD7152 to fix FTBS on armel versatile + * [Config] disable CONFIG_AD7150 to fix FTBS on armel versatile + * [Config] disable CONFIG_RTL8192CE to fix FTBS on armel omap + * [Config] disable CONFIG_MANTIS_CORE to fix FTBS on armel versatile + + [ Kees Cook ] + + * SAUCE: kernel: make /proc/kallsyms mode 400 to reduce ease of attacking + + [ Stefan Bader ] + + * Temporarily disable RODATA for virtual i386 + - LP: #699828 + + [ Tim Gardner ] + + * [Config] CONFIG_NLS_DEFAULT=utf8 + - LP: #683690 + * [Config] CONFIG_HIBERNATION=n + * update bnx2 firmware files in d-i/firmware/nic-modules + + [ Upstream Kernel Changes ] + + * Revert "drm/radeon/bo: add some fallback placements for VRAM only + objects." + * packaging: make System.map mode 0600 + * thinkpad_acpi: Always report scancodes for hotkeys + - LP: #702407 + * sched: tg->se->load should be initialised to tg->shares + * Input: sysrq -- ensure sysrq_enabled and __sysrq_enabled are consistent + * brcm80211: include linux/slab.h for kfree + * pch_dma: add include/slab.h for kfree + * i2c-eg20t: include linux/slab.h for kfree + * gpio/ml_ioh_gpio: include linux/slab.h for kfree + * tty: include linux/slab.h for kfree + * winbond: include linux/delay.h for mdelay et al + + [ Upstream Kernel Changes ] + + * mark the start of v2.6.38 versioning + * rebase v2.6.37 to v2.6.38-rc2 + c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + - LP: #689886 + - LP: #702125 + - LP: #608775 + - LP: #215802 + - LP: #686333 + - LP: #677830 + - LP: #677652 + - LP: #696493 + - LP: #697240 + - LP: #689036 + - LP: #705323 + - LP: #686692 + + -- Andy Whitcroft Sun, 09 Jan 2011 13:44:52 +0000 + +linux (2.6.37-12.26) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.37-rc8 + * [Config] armel -- reenable omap flavour + * [Config] disable CONFIG_MACH_OMAP3517EVM to fix FTBS on armel omap + * [Config] disable CONFIG_GPIO_VX855 to fix FTBS on omap armel + * [Config] disable CONFIG_WESTBRIDGE_ASTORIA to fix FTBS on omap armel + * [Config] disable CONFIG_TI_DAVINCI_EMAC to fix FTBS on omap armel + * rebase to mainline 989d873fc5b6a96695b97738dea8d9f02a60f8ab + * [Config] track missing modules + * rebase to v2.6.37 final + + [ Chase Douglas ] + + * SAUCE: (drop after 2.6.37) HID: magicmouse: Don't report REL_{X, Y} for + Magic Trackpad + + [ Stefan Bader ] + + * Revert "SAUCE: blkfront: default to sd devices" + - LP: #684875 + + [ Tim Gardner ] + + * Revert "SAUCE: (no-up) libata: Ignore HPA by default." + - LP: #380138 + * [Config] Added autofs4.ko to -virtual flavour + - LP: #692917 + + [ Upstream Kernel Changes ] + + * Add support for Intellimouse Mode in ALPS touchpad on Dell E2 series + Laptops + - LP: #632884 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc8 + * rebase to mainline 989d873fc5b6a96695b97738dea8d9f02a60f8ab + * rebase to v2.6.37 final + + -- Andy Whitcroft Thu, 23 Dec 2010 18:34:13 +0000 + +linux (2.6.37-11.25) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i -- add hpsa to the list of block devices + - LP: #684304 + * [Config] add vmw-balloon driver to -virtual flavour + - LP: #592039 + * rebase to v2.6.37-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc7 + + -- Andy Whitcroft Tue, 21 Dec 2010 13:35:28 +0000 + +linux (2.6.37-10.24) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.37-rc6 + * updateconfigs following rebase to v2.6.37-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc6 + + -- Andy Whitcroft Thu, 16 Dec 2010 12:34:19 +0000 + +linux (2.6.37-9.23) natty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: vt -- fix handoff numbering to 1..n and add range checks + - LP: #689606 + * SAUCE: vt -- fix handoff numbering to 1..n and add range checks (grub) + - LP: #689606 + + [ Kees Cook ] + + * SAUCE: RO/NX protection for loadable kernel, fix ftrace + - LP: #690190 + + -- Andy Whitcroft Wed, 15 Dec 2010 19:29:57 +0000 + +linux (2.6.37-9.22) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.35-rc5 + * [Config] updateconfigs following rebase to v2.6.37-rc5 + * (no-up) add support for installed header files to ubuntu directory + - LP: #684666 + * ubuntu: AUFS -- include the aufs_types.h file in linux-libc-headers + - LP: #684666 + * ubuntu: dm-raid4-5 -- follow changes to bio flags + * ubuntu: dm-raid4-5 -- re-enable + * ubuntu: omnibook -- update BOM + * ubuntu: ndiswrapper -- update BOM to match actual version + * ubuntu: ndiswrapper -- follow removal of the BKL and locked ioctl + * ubuntu: ndiswrapper -- re-enable + * ubuntu: iscsitarget -- re-instate copy_io_context + * ubuntu: iscsitarget -- follow changes to semaphore initialisation + * ubuntu: iscsitarget -- convert NIPQUAD to %pI4 + * ubuntu: iscsitarget -- re-enable + + [ Kees Cook ] + + * [Config] update config for CONFIG_DEBUG_SET_MODULE_RONX + + [ Manoj Iyer ] + + * SAUCE: Enable jack sense for Thinkpad Edge 13 + - LP: #685015 + + [ Tim Gardner ] + + * [Config] CONFIG_9P_FSCACHE=y,CONFIG_9P_FS_POSIX_ACL=y + * [Config] CONFIG_CRYPTO_CRC32C=y + - LP: #681819 + * [Config] CONFIG_9P_FSCACHE=n + * [Config] Add nfsd modules to -virtual flavour + - LP: #688070 + + [ Upstream Kernel Changes ] + + * Revert "Staging: zram: work around oops due to startup ordering snafu" + * NFS: Fix panic after nfs_umount() + - LP: #683938 + * x86: Add NX protection for kernel data + * x86: Add RO/NX protection for loadable kernel modules + * x86: Resume trampoline must be executable + * x86: RO/NX protection for loadable kernel, jump_table fix + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc5 + + -- Andy Whitcroft Thu, 09 Dec 2010 18:15:35 +0000 + +linux (2.6.37-8.21) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- include the aufs_types.h file in + linux-libc-headers" + * Revert "(no-up) add support for installed header files to ubuntu + directory" + + -- Andy Whitcroft Sun, 05 Dec 2010 17:33:28 +0000 + +linux (2.6.37-8.20) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] drivers/serial/mfd.c: Fix ARM compile error" + * Revert "SAUCE: Nouveau: Disable acceleration on MacBook Pros" + * Revert "SAUCE: Nouveau: Add quirk framework to disable acceleration" + * Revert "SAUCE: i915 -- disable powersave by default" + * SAUCE: enable Marvell 9128 PCIe SATA controller + - LP: #658521 + * [Config] evtchn has been renamed + * (no-up) add support for installed header files to ubuntu directory + - LP: #684666 + * ubuntu: AUFS -- include the aufs_types.h file in linux-libc-headers + - LP: #684666 + + [ Tim Gardner ] + + * [Config] MISS: evtchn, NEW : xen-evtchn + * rebase to v2.6.37-rc4 + + [ Upstream Kernel Changes ] + + * drm/i915: Clean conflicting modesetting registers upon init + - LP: #683775 + * rebase to v2.6.37-rc4 + + -- Andy Whitcroft Fri, 03 Dec 2010 18:42:07 +0000 + +linux (2.6.37-7.19) natty; urgency=low + + [ Tim Gardner ] + + * [Config] Add bnx2 firmware to nic-modules udeb + - LP: #676245 + + -- Andy Whitcroft Fri, 26 Nov 2010 17:53:45 +0000 + +linux (2.6.37-7.18) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] USB: option: Remove duplicate AMOI_VENDOR_ID" + * Revert "SAUCE: Add extra headers to linux-libc-dev" + * Revert "SAUCE: Enable speedstep for sonoma processors." + * [Config] enable CONFIG_BT_HCIUART_ATH3K + * [Config] enable CONFIG_IWLWIFI_DEBUGFS + * [Config] standardise CONFIG_MII + * [Config] standardise CONFIG_PRISM2_USB + * [Config] standardise CONFIG_SCSI_QLA_ISCSI + * [Config] build in CONFIG_AGP + * [Config] build in CONFIG_AGP_INTEL + * [Config] build in CONFIG_AGP_AMD + * [Config] build in CONFIG_AGP_AMD64 + * [Config] build in CONFIG_AGP_NVIDIA + * [Config] build in CONFIG_AGP_VIA + * [Config] disable CONFIG_SCSI_QLA_ISCSI for FTBS (arm) + * (no-up): document the new ## scheme + * [Config] harmonise CONFIG_SERIAL_8250_NR_UARTS + * [Config] update CONFIG_SERIAL_8250_RUNTIME_UARTS=32 + - LP: #675453 + + [ Mathieu J. Poirier ] + + * SAUCE: ARM: Adding vdd_sdi regulator supply to OMAP3EVM + + [ Upstream Kernel Changes ] + + * nx-emu: fix inverted report of disable_nx + + -- Andy Whitcroft Tue, 23 Nov 2010 21:00:39 +0000 + +linux (2.6.37-6.17) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- aufs2-standalone.patch + aufs2.1-36-UNRELEASED-20101103" + * Revert "ubuntu: AUFS -- aufs2-base.patch + aufs2.1-36-UNRELEASED-20101103" + * [Config] standardise CONFIG_BT + * [Config] standardise CONFIG_IRDA + * [Config] standardise CONFIG_LAPB + * [Config] standardise CONFIG_RDS + * [Config] standardise CONFIG_RFKILL + * [Config] standardise CONFIG_TIPC + * [Config] standardise CONFIG_X25 + * [Config] standardise CONFIG_INPUT_EVDEV + * [Config] standardise CONFIG_INPUT_JOYDEV + * [Config] standardise CONFIG_INPUT_JOYSTICK + * [Config] standardise CONFIG_INPUT_TOUCHSCREEN + * [Config] CONFIG_INPUT_TOUCHSCREEN=n for FTBS (arm) + * [Config] CONFIG_IRDA=n for FTBS (arm) + * ubuntu: AUFS -- aufs2-base.patch aufs2.1-37 + * ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-37 + * ubuntu: AUFS -- update to 097bf62d6f49619359d34bf17f242df38562489a + + [ Tim Gardner ] + + * SAUCE: Fix drivers/staging/easycap FTBS + * [Config] CONFIG_EASYCAP=m after fixing FTBS + + [ Upstream Kernel Changes ] + + * Revert "x86: Add NX protection for kernel data" + + -- Andy Whitcroft Mon, 22 Nov 2010 18:09:10 +0000 + +linux (2.6.37-6.16) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] update config for CONFIG_DEBUG_SET_MODULE_RONX" + * rebase to v2.6.37-rc3 + + [ Tim Gardner ] + + * [Config] CONFIG_SCHED_AUTOGROUP=y + + [ Upstream Kernel Changes ] + + * Revert "x86: Add RO/NX protection for loadable kernel modules" + * sched: automated per session task groups + * rebase to v2.6.37-rc3 + + -- Andy Whitcroft Mon, 22 Nov 2010 10:11:13 +0000 + +linux (2.6.37-6.15) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] standardise CONFIG_CEPH_FS + * [Config] standardise CONFIG_SCSI_LPFC_DEBUG_FS + * [Config] standardise CONFIG_SCSI_PROC_FS + * [Config] standardise CONFIG_UBIFS_FS + * [Config] standardise CONFIG_USB_GADGET_DEBUG_FS + + [ Kees Cook ] + + * [Config] update config for CONFIG_DEBUG_SET_MODULE_RONX + + [ Manoj Iyer ] + + * SAUCE: Enable jack sense for Thinkpad Edge 11 + - LP: #677210 + * SAUCE: enable rfkill for rtl8192se driver + - LP: #640992 + + [ Tim Gardner ] + + * [Config] CONFIG_EASYCAP=n for FTBS + * Rebase to v2.6.32-rc2+git + + [ Upstream Kernel Changes ] + + * x86: Fix improper large page preservation + * x86: Add NX protection for kernel data + * x86: Add RO/NX protection for loadable kernel modules + + [ Upstream Kernel Changes ] + + * Rebase to Linus 2.6.37-rc2+git + + -- Andy Whitcroft Sat, 20 Nov 2010 11:40:00 +0000 + +linux (2.6.37-5.14) natty; urgency=low + + [ Upstream Kernel Changes ] + + * PCI: fix offset check for sysfs mmapped files + - LP: #676963 + + -- Andy Whitcroft Thu, 18 Nov 2010 18:12:27 +0000 + +linux (2.6.37-5.13) natty; urgency=low + + [ Andy Whitcroft ] + + * rebased to v2.6.37-rc2 + * updateconfigs following rebase to v2.6.37-rc2 + + [ Tim Gardner ] + + * [Config] Added NFS and related modules to virtual flavour + - LP: #659084 + + [ Upstream Kernel Changes ] + + * x86, cpu: Rename verify_cpu_64.S to verify_cpu.S + * x86, cpu: Clear XD_DISABLED flag on Intel to regain NX + * x86, cpu: Call verify_cpu during 32bit CPU startup + * x86, cpu: Only CPU features determine NX capabilities + + [ Upstream Changes ] + + * rebased to v2.67.37-rc2 + + -- Andy Whitcroft Tue, 16 Nov 2010 13:13:29 +0000 + +linux (2.6.37-4.12) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] HID: magicmouse: add param for scroll speed" + * Revert "[Upstream] HID: magicmouse: properly account for scroll + movement in state" + * Revert "[Upstream] HID: magicmouse: disable and add module param for + scroll acceleration" + * Revert "[Upstream] HID: magicmouse: scroll on entire surface, not just + middle of mouse" + + [ Henrik Rydberg ] + + * SAUCE: hid: ntrig: remove sysfs nodes + * SAUCE: hid: ntrig: Setup input filtering manually + * SAUCE: hid: ntrig: New ghost-filtering event logic + + [ Manoj Iyer ] + + * SAUCE: Added quirk to recognize GE0301 3G modem as an interface. + - LP: #348861 + + [ Upstream Kernel Changes ] + + * Revert "mmc: fix all hangs related to mmc/sd card insert/removal during + suspend/resume" + * Revert "[ARM] implement arch_randomize_brk()" + * Revert "ARM: stack protector: change the canary value per task" + * Revert "ARM: initial stack protector (-fstack-protector) support" + * Revert "ALSA: hda - Handle pin NID 0x1a on ALC259/269" + * Revert "ALSA: hda - Handle missing NID 0x1b on ALC259 codec" + * Revert "perf probe: Add kernel source path option" + * hid: ntrig: Support single-touch devices + * hid: ntrig: Mask pen switch events + * net: rtnetlink.h -- only include linux/netdevice.h when used by the + kernel + - LP: #673073 + * Fix userspace build of linux/fs.h + + -- Andy Whitcroft Mon, 15 Nov 2010 19:31:44 +0000 + +linux (2.6.37-3.11) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- update to + b37c575759dc4535ccc03241c584ad5fe69e3b25" + * Revert "ubuntu: AUFS -- track changes to the arguements to fop fsync()" + * Revert "ubuntu: AUFS -- update to standalone 2.6.35-rcN as at 20100601" + * Revert "ubuntu: AUFS -- update to standalone 2.6.34 as at 20100601" + * Revert "ubuntu: AUFS -- aufs2 base patch for linux-2.6.34" + * [Config] Disable intel_idle for -virtual kernels + - LP: #651370 + * [Config] enforcer -- ensure we never enable CONFIG_IMA + * debian -- pass the correct flavour name when checking configs + * [Config] enforcer -- ensure CONFIG_INTEL_IDLE is off for -virtual + * [Config] ensure CONFIG_IPV6=y for powerpc + * [Config] enforcer -- ensure CONFIG_IPV6=y + * ubuntu: AUFS -- aufs2-base.patch aufs2.1-36-UNRELEASED-20101103 + * ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-36-UNRELEASED-20101103 + * ubuntu: AUFS -- update to aufs2.1-36-UNRELEASED-20101103 + * ubuntu: AUFS -- re-enable + * ubuntu: AUFS -- track changes to work queue initialisation + * ubuntu: AUFS -- track changes to llseek in v2.6.37-rc1 + * SAUCE: fbcon -- fix race between open and removal of framebuffers + * SAUCE: fbcon -- fix OOPs triggered by race prevention fixes + - LP: #614008 + * SAUCE: drm -- stop early access to drm devices + + [ Jeremy Kerr ] + + * [Config] Build-in powermac ZILOG serial driver + - LP: #673346 + + [ Kees Cook ] + + * SAUCE: nx-emu: use upstream ASLR when possible + + [ Tim Gardner ] + + * [Config] Use correct be2iscsi module name in d-i/modules/scsi-modules + - LP: #628776 + + [ Upstream Kernel Changes ] + + * i386: NX emulation + * nx-emu: drop exec-shield sysctl, merge with disable_nx + * nx-emu: standardize boottime message prefix + * mmap randomization for executable mappings on 32-bit + * exec-randomization: brk away from exec rand area + + -- Andy Whitcroft Thu, 11 Nov 2010 23:46:37 +0000 + +linux (2.6.37-2.10) natty; urgency=low + + [ Andy Whitcroft ] + + * reinstate armel config changes: + * [Config] CONFIG_GPIO_PCH=n for armel FTBS + * [Config] CONFIG_GPIO_VX855=n for armel FTBS + + -- Andy Whitcroft Wed, 03 Nov 2010 22:20:35 +0000 + +linux (2.6.37-2.9) natty; urgency=low + + [ Andy Whitcroft ] + + * config -- fix genportsconfig + * [Config] move powerpc over from ports to distro + * bump master version number to match contained kernel + * SAUCE: fix documentation strings for struct input_keymap_entry + * usb: gadget: goku_udc: add registered flag bit + + -- Andy Whitcroft Tue, 02 Nov 2010 15:14:11 +0000 + +linux (2.6.36-2.8) natty; urgency=low + + [ Tim Gardner ] + + * [Config]: fix changed CONFIG_SYSFS_DEPRECATED_V2 enforcement rules + * [Config]: TWL4030_CORE=n for FTBS + * [Config]: CONFIG_ATH6K_LEGACY=n for FTBS + * [Config]: CONFIG_SOLO6X10=n for FTBS + * [Config]: CONFIG_GPIO_PCH=n for armel FTBS + * [Config]: CONFIG_GPIO_VX855=n for armel FTBS + * [Config]: CONFIG_DRM_NOUVEAU=n for armel FTBS + * [Config]: CONFIG_LINE6_USB=n for armel FTBS + * [Config]: CONFIG_SENSORS_AK8975=n for armel FTBS + * [Config]: CONFIG_I2C_I801=n for armel FTBS + * UBUNTU: SAUCE: AppArmor: Fix unpack of network tables. + * AppArmor: compatibility patch for v5 interface + * AppArmor: compatibility patch for v5 network controll + * Dropped (pre-stable): input: Support Clickpad devices in ClickZone mode + * Dropped: UBUNTU: SAUCE: libata: Add ALPM power state accounting to the AHCI driver + * Dropped: UBUNTU: SAUCE: Added quirk to recognize GE0301 3G modem as an interface. + * Dropped: hid: 3m: Convert to MT slots + * Dropped: HID: magicmouse: don't allow hidinput to initialize the device + * Dropped: HID: magicmouse: simplify touch data bit manipulation + * Dropped: HID: magicmouse: simplify touch down logic + * Dropped: HID: magicmouse: enable Magic Trackpad support + * Dropped: UBUNTU: SAUCE: hid: ntrig: remove sysfs nodes + * Dropped: UBUNTU: SAUCE: hid: ntrig: Setup input filtering manually + * Dropped: UBUNTU: SAUCE: hid: ntrig: New ghost-filtering event logic + * Dropped: UBUNTU: SAUCE: hid: ntrig: identify firmware version (wiggled) + * Dropped: UBUNTU: (pre-stable): input: Support Clickpad devices in ClickZone mode + * Dropped: UBUNTU: SAUCE: KMS: cache the EDID information of the LVDS + * Dropped: UBUNTU: SAUCE: fbcon -- fix race between open and removal of framebuffers + * Dropped: UBUNTU: SAUCE: fbcon -- fix OOPs triggered by race prevention fixes + * Dropped: UBUNTU: SAUCE: x86: implement cs-limit nx-emulation for ia32 + * Dropped: UBUNTU: SAUCE: x86: more tightly confine cs-limit nx-emulation to ia32 only + * Dropped: UBUNTU: SAUCE: [um] Don't use nx_enabled under UML + * Dropped: UBUNTU: SAUCE: x86: brk away from exec rand area + + [ Upstream Kernel Changes ] + + * rebased against 2.6.27-rc1 + + -- Tim Gardner Fri, 22 Oct 2010 19:35:05 -0600 + +linux (2.6.36-1.7) natty; urgency=low + + [ Andy Whitcroft ] + + * rebased to v2.6.36 final + * [Config] update configs following rebase to v2.6.36 final + * [Config] update ports configs following rebase to v2.6.36 final + + [ Upstream Kernel Changes ] + + * rebased to v2.6.36 final + + -- Andy Whitcroft Thu, 21 Oct 2010 14:28:57 +0100 + +linux (2.6.36-1.6) natty; urgency=low + + [ Upstream Kernel Changes ] + + * drop broadcom staging driver preview: + * Revert "Staging: Add initial release of brcm80211 - Broadcom 802.11n + wireless LAN driver." + + -- Andy Whitcroft Wed, 20 Oct 2010 10:41:25 +0100 + +linux (2.6.36-1.5) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.36-rc8 + * updateconfigs following rebase to v2.6.36-rc8 + * updateportsconfigs following rebase to v2.6.36-rc8 + * config -- simplify the kernelconfig interface + * config -- add new config mode 'dumpconfigs' + + [ Tim Gardner ] + + * Simplify the use of CROSS_COMPILER + + [ Upstream Kernel Changes ] + + * drop broadcom staging driver preview: + * Revert "staging: brcm80211: Make compiling of brcm80211.ko and + brcmfmac.ko mutually exclusive." + * Revert "staging: brcm80211: Fix compile issue when BRCM80211_PCI is not + set." + * Revert "Staging: brcm80211: remove driver specific -W options" + * Revert "Staging: brcm80211: clean up makefile cflag lines" + * Revert "staging: brcm80211: add fullmac driver" + * Revert "staging: brcm80211: use string native library" + * Revert "staging: brcm80211: use native ctype library" + * Revert "staging: brcm80211: fix remaining checkpatch errors." + * Revert "staging: brcm80211: fix "ERROR: trailing whitespace."" + * Revert "staging: brcm80211: fix "ERROR: spaces required around that + ..."" + * Revert "staging: brcm80211: fix "ERROR: spaces prohibited around that + ':' ..."" + * Revert "staging: brcm80211: fix "ERROR: space required before that + ..."" + * Revert "staging: brcm80211: fix "ERROR: space required after that ..."" + * Revert "staging: brcm80211: fix "ERROR: space required after that close + brace"" + * Revert "staging: brcm80211: fix "ERROR: space prohibited before + ...close square bracket"" + * Revert "staging: brcm80211: fix "ERROR: space prohibited after that + ..."" + * Revert "staging: brcm80211: fix "ERROR: need consistent spacing around + '*'"" + * Revert "staging: brcm80211: fix 'ERROR: "(foo*)" should be "(foo *)"'" + * Revert "staging: brcm80211: fix "ERROR: Macros w/ mult. statements ... + do - while loop"" + * Revert "staging: brcm80211: fix "ERROR: Macros w/ complex values ... + parenthesis"" + * Revert "staging: brcm80211: fix "ERROR: do not initialise statics to 0 + or NULL"" + * Revert "staging: brcm80211: fix "ERROR: do not initialise globals to 0 + or NULL"" + * Revert "staging: brcm80211: fix "ERROR: while should follow close brace + '}'"" + * Revert "staging: brcm80211: fix "ERROR: that open brace { ... prev + line"" + * Revert "staging: brcm80211: fix "ERROR: trailing statements should be + on next line"" + * Revert "staging: brcm80211: fix "ERROR: do not use assignment in if + condition"" + * Revert "staging: brcm80211: fix "ERROR: return is not a function, + paren..."" + * Revert "staging: brcm80211: fix "ERROR: open brace '{' following + function dec..."" + * Revert "staging: brcm80211: fix 'ERROR: "foo * bar" should be "foo + *bar"'" + * Revert "staging: brcm80211: Fix URLs for firmware files." + * Revert "staging: brcm80211: use '%pM' format to print MAC address" + * Revert "staging: brcm80211: Add contact info to TODO list." + * Revert "staging: brcm80211: Fix some initialisation failure paths" + * Export dump_{write,seek} to binary loader modules + * rebase to v2.6.36-rc8. + + -- Andy Whitcroft Tue, 19 Oct 2010 18:58:11 +0100 + +linux (2.6.36-0.4) natty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: perf: increase stack footprint to avoid stack-protector warning + (fixes FTBS on powerpc) + + -- Andy Whitcroft Thu, 14 Oct 2010 13:16:16 +0100 + +linux (2.6.36-0.3) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable CONFIG_SCSI_QLA_ISCSI to fix FTBS on powerpc + + -- Andy Whitcroft Thu, 14 Oct 2010 03:01:30 +0100 + +linux (2.6.36-0.2) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] updateportsconfigs following rebase to 2.6.36-rc7 + (fix FTBS on powerpc) + + -- Andy Whitcroft Wed, 13 Oct 2010 23:25:12 +0100 + +linux (2.6.36-0.1) natty; urgency=low + + [ Andy Whitcroft ] + + * reduce disk usage during buildd builds + - LP: #645653 + * [Config] enforcer -- ensure CONFIG_INIT_PASS_ALL_PARAMS is y + * [Config] armel -- drop omap flavour + + [ Tim Gardner ] + + * Added dropped patch list + * more dropped patches + * [Config] Disable aufs, dmraid-4.5, ndis-wrapper + * [Config] Add support for cross compiling armel + * [Config] CONFIG_SCSI_QLA_ISCSI=n for armel + * [Upstream] drivers/serial/mfd.c: Fix ARM compile error + * [Config]: updateconfigs after adding brcm80211 + * staging: brcm80211: Fix Makefile syntax error + * rebased to v2.6.36-rc7 + + [ Upstream Kernel Changes ] + + * (upstream) IPS driver: don't toggle CPU turbo on unsupported CPUs + * (upstream) IPS driver: verify BIOS provided limits + * intel_ips: Print MCP limit exceeded values. + * Staging: Add initial release of brcm80211 - Broadcom 802.11n wireless + LAN driver. + * staging: brcm80211: Fix some initialisation failure paths + * staging: brcm80211: Add contact info to TODO list. + * staging: brcm80211: use '%pM' format to print MAC address + * staging: brcm80211: Fix URLs for firmware files. + * staging: brcm80211: fix 'ERROR: "foo * bar" should be "foo *bar"' + * staging: brcm80211: fix "ERROR: open brace '{' following function + dec..." + * staging: brcm80211: fix "ERROR: return is not a function, paren..." + * staging: brcm80211: fix "ERROR: do not use assignment in if condition" + * staging: brcm80211: fix "ERROR: trailing statements should be on next + line" + * staging: brcm80211: fix "ERROR: that open brace { ... prev line" + * staging: brcm80211: fix "ERROR: while should follow close brace '}'" + * staging: brcm80211: fix "ERROR: do not initialise globals to 0 or NULL" + * staging: brcm80211: fix "ERROR: do not initialise statics to 0 or NULL" + * staging: brcm80211: fix "ERROR: Macros w/ complex values ... + parenthesis" + * staging: brcm80211: fix "ERROR: Macros w/ mult. statements ... do - + while loop" + * staging: brcm80211: fix 'ERROR: "(foo*)" should be "(foo *)"' + * staging: brcm80211: fix "ERROR: need consistent spacing around '*'" + * staging: brcm80211: fix "ERROR: space prohibited after that ..." + * staging: brcm80211: fix "ERROR: space prohibited before ...close square + bracket" + * staging: brcm80211: fix "ERROR: space required after that close brace" + * staging: brcm80211: fix "ERROR: space required after that ..." + * staging: brcm80211: fix "ERROR: space required before that ..." + * staging: brcm80211: fix "ERROR: spaces prohibited around that ':' ..." + * staging: brcm80211: fix "ERROR: spaces required around that ..." + * staging: brcm80211: fix "ERROR: trailing whitespace." + * staging: brcm80211: fix remaining checkpatch errors. + * staging: brcm80211: use native ctype library + * staging: brcm80211: use string native library + * staging: brcm80211: add fullmac driver + * Staging: brcm80211: clean up makefile cflag lines + * Staging: brcm80211: remove driver specific -W options + * staging: brcm80211: Fix compile issue when BRCM80211_PCI is not set. + * staging: brcm80211: Make compiling of brcm80211.ko and brcmfmac.ko + mutually exclusive. + + -- Andy Whitcroft Tue, 12 Oct 2010 16:00:27 +0100 + +linux (2.6.35-22.33) maverick; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: Add support for Intellimouse Mode in ALPS touchpad on + Dell E2 series Laptops" + - LP: #641320 + + [ Brian Rogers ] + + * SAUCE: ir-core: Fix null dereferences in the protocols sysfs interface + - LP: #624701 + + [ Christopher James Halse Rogers ] + + * SAUCE: Nouveau: Add quirk framework to disable acceleration + - LP: #544088, #546393 + * SAUCE: Nouveau: Disable acceleration on MacBook Pros + - LP: #546393 + + [ John Johansen ] + + * Revert "SAUCE: AppArmor: allow newer tools to load policy on older + kernels" + * SAUCE: AppArmor: allow newer tools to load policy on older kernels + - LP: #639758 + + [ Mathieu J. Poirier ] + + * SAUCE: Adding vdd_sdi regulator supply to OMAP3EVM + + [ Upstream Kernel Changes ] + + * ALSA: HDA: Enable internal speaker on Dell M101z + - LP: #640254 + + -- Leann Ogasawara Fri, 17 Sep 2010 13:21:28 -0700 + +linux (2.6.35-22.32) maverick; urgency=low + + [ Arjan van de Ven ] + + * SAUCE: libata: Add ALPM power state accounting to the AHCI driver + + [ David Henningsson ] + + * SAUCE: ALSA: HDA: Enable internal mic on Dell E6410 and Dell E6510 + - LP: #605047, #628961 + + [ John Johansen ] + + * [Upstream] AppArmor: Fix splitting an fqname into separate namespace + and profile names + - LP: #615947 + * [Upstream] AppArmor: Fix locking from removal of profile namespace + - LP: #615947 + * SAUCE: AppArmor: allow newer tools to load policy on older kernels + - LP: #639758 + * SAUCE: Improve Amazon EBS performance for EC2 + - LP: #634316 + + [ Leann Ogasawara ] + + * Revert "SAUCE: i915 KMS -- blacklist i855" + * Revert "SAUCE: i915 KMS -- blacklist i845g" + * Revert "SAUCE: i915 KMS -- blacklist i830" + * Revert "SAUCE: i915 KMS -- support disabling KMS for known broken + devices" + * execute module-inclusion within a subshell + - LP: #621175 + + [ Upstream Kernel Changes ] + + * (pre-stable) bounce: call flush_dcache_page() after bounce_copy_vec() + - LP: #633227 + * (pre-stable) drm/i915: don't enable self-refresh on Ironlake + - LP: #629711 + * (pre-stable) mm: Move vma_stack_continue into mm.h + * x86, hwmon: Fix unsafe smp_processor_id() in thermal_throttle_add_dev + - LP: #601073 + * PM / Runtime: Make runtime_status attribute not debug-only (v. 2) + * PM / Runtime: Add runtime PM statistics (v3) + * compat: Make compat_alloc_user_space() incorporate the access_ok() + - CVE-2010-3081 + * x86-64, compat: Test %rax for the syscall number, not %eax + - CVE-2010-3301 + * x86-64, compat: Retruncate rax after ia32 syscall entry tracing + - CVE-2010-3301 + + -- Leann Ogasawara Tue, 14 Sep 2010 08:46:49 -0700 + +linux (2.6.35-21.31) maverick; urgency=low + + [ Andy Whitcroft ] + + * bodge linux-libc-dev package version due to ti-omap4 error + * linux-libc-dev -- ensure we can only build this on debian.master + + -- Leann Ogasawara Mon, 13 Sep 2010 09:54:31 -0700 + +linux (2.6.35-21.30) maverick; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: fbcon -- fix OOPs triggered by race prevention fixes + - LP: #614008 + + [ Daniel Lezcano ] + + * SAUCE: fix compilation warning when CONFIG_SECURITY is not set + + [ Henrik Rydberg ] + + * SAUCE: Input: wacom - add fuzz parameters to features + * SAUCE: Input: wacom - collect device quirks into single function + * SAUCE: Input: wacom - add support for the Bamboo Touch trackpad + * SAUCE: Input: wacom - add a quirk for low resolution Bamboo devices + * SAUCE: hid: ntrig: Remove unused device ids + * SAUCE: hid: ntrig: remove sysfs nodes + * SAUCE: hid: ntrig: Correct logic for quirks + * SAUCE: hid: ntrig: zero-initialize ntrig struct + * SAUCE: hid: ntrig: Setup input filtering manually + * SAUCE: hid: ntrig: New ghost-filtering event logic + + [ Leann Ogasawara ] + + * SAUCE: ndiswrapper: Initialize buffer index and check its value + - LP: #613796 + + [ Manoj Iyer ] + + * SAUCE: Add support for Intellimouse Mode in ALPS touchpad on Dell E2 + series Laptops + - LP: #632884 + + [ Ping Cheng ] + + * SAUCE: Input: wacom - parse the Bamboo device family + + [ Rafi Rubin ] + + * SAUCE: hid: ntrig: identify firmware version (wiggled) + + [ Tim Gardner ] + + * [Config] CONFIG_NL80211_TESTMODE=n + + [ Upstream Kernel Changes ] + + * Revert "input: mt: Add support for the Bamboo Touch trackpad" + * e1000e: initial support for 82579 LOMs + * e1000e: correct MAC-PHY interconnect register offset for 82579 + * (pre-stable) ALSA: hda - Add a new hp-laptop model for Conexant 5066, + tested on HP G60 + - LP: #587388 + * DSS2: Don't power off a panel twice + - LP: #588243 + * mmc: build fix: mmc_pm_notify is only available with CONFIG_PM=y + * Input: i8042 - reset keyboard controller wehen resuming from S2R + - LP: #86820 + * ALSA: hda - Fix beep frequency on IDT 92HD73xx and 92HD71Bxx codecs + - LP: #414795 + * agp/intel: Support the extended physical addressing bits on + Sandybridge. + - LP: #632488 + * drm/i915,intel_agp: Add support for Sandybridge D0 + - LP: #632488 + * (pre-stable) intel_agp,i915: Add more sandybridge graphics device ids + - LP: #632488 + * mmc: omap: fix for bus width which improves SD card's peformance. + + -- Leann Ogasawara Tue, 07 Sep 2010 09:58:52 -0700 + +linux (2.6.35-20.29) maverick; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: i915 KMS -- support disabling KMS for known broken devices + - LP: #563277 + * SAUCE: i915 KMS -- blacklist i830 + - LP: #542208, #563277 + * SAUCE: i915 KMS -- blacklist i845g + - LP: #541492, #563277 + * SAUCE: i915 KMS -- blacklist i855 + - LP: #511001, #541511, #563277 + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_SENSORS_PKGTEMP=m + - LP: #601073 + * ARM: Temporarily disable module check for armel + * rebase to v2.6.35.4 + * [Config] update configs following rebase to v2.6.35.4 + + [ Ricardo Salveti de Araujo ] + + * [Config] Change CONFIG_LEDS_TRIGGER_HEARTBEAT from module to built-in + in Omap + + [ Tim Gardner ] + + * [Config] Added be2net, be2scsi to udebs + - LP: #628776 + + [ Upstream Kernel Changes ] + + * x86, cpu: Package Level Thermal Control, Power Limit Notification + definitions + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: pkgtemp hwmon driver + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: thermal throttling handler + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: power limit + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: pkgtemp documentation + - LP: #601073 + * hid: 3m: Adjust to sequential MT HID protocol + * hid: 3m: Convert to MT slots + * hid: 3m: Correct touchscreen emulation + * hid: 3m: Adjust major / minor axes to scale + * input: bcm5974: Adjust major / minor to scale + * HID: magicmouse: don't allow hidinput to initialize the device + * HID: magicmouse: simplify multitouch feature request + * HID: magicmouse: simplify touch data bit manipulation + * HID: magicmouse: simplify touch down logic + * HID: magicmouse: remove timestamp logic + * HID: magicmouse: enable Magic Trackpad support + * HID: magicmouse: Adjust major / minor axes to scale + * mmc: fix all hangs related to mmc/sd card insert/removal during + suspend/resume + - LP: #477106 + * drm/i915: fix VGA plane disable for Ironlake+ + - LP: #602281 + + -- Leann Ogasawara Mon, 30 Aug 2010 08:38:01 -0700 + +linux (2.6.35-19.28) maverick; urgency=low + + [ Leann Ogasawara ] + + * No changes from 2.6.35-19.27. Some armel udebs were accidentally deleted + from the archive and a no-change rebuild was attempted. However, the ABI + did not get bumped and resulted in build failures for 2.6.35-19.27. Fix + up the ABI and re-upload. + + -- Leann Ogasawara Sat, 28 Aug 2010 16:42:27 -0700 + +linux (2.6.35-19.27) maverick; urgency=low + + [ Leann Ogasawara ] + + * No changes from 2.6.35-19.26. Some armel udebs were accidentally deleted + from the archive. + + -- Leann Ogasawara Fri, 27 Aug 2010 08:58:35 -0700 + +linux (2.6.35-19.26) maverick; urgency=low + + [ Upstream Kernel Changes ] + + * ARM: OMAP: Beagle: revision detection + * ARM: OMAP: Beagle: only Cx boards use pin 23 for write protect + * ARM: OMAP: Beagle: no gpio_wp pin connection on xM + + -- Leann Ogasawara Thu, 26 Aug 2010 09:15:09 -0700 + +linux (2.6.35-19.25) maverick; urgency=low + + [ Jarod Wilson ] + + * SAUCE: Bring in staging/lirc from 2.6.36 + - LP: #609234 + * SAUCE: Update ir-core to linuxtv/other which should be merged for + 2.6.36. + - LP: #609234 + * SAUCE: Fix memleaks in imon and mceusb drivers + - LP: #609234 + * SAUCE: Bring in streamzap support from linuxtv/other + - LP: #609234 + + [ Mario Limonciello ] + + * Remove ubuntu/lirc in favor of staging/lirc from 2.6.36 + - LP: #609234 + + [ Mathieu J. Poirier ] + + * SAUCE: ARM: adding i2c eeprom driver to read EDID + - LP: #608279 + + [ Upstream Kernel Changes ] + + * intel_idle: disable module support + - LP: #615265 + * (pre-stable) ALSA: hda - Ensure codec patch files are checked for the + correct codec ID + * (pre-stable) ALSA: hda - Rename iMic to Int Mic on Lenovo NB0763 + - LP: #605101 + * (pre-stable) ALSA: HDA: Use model=auto for LG R510 + - LP: #495134 + * (pre-stable) ALSA: HDA: Add Sony VAIO quirk for ALC269 + - LP: #519066 + * (pre-stable) ALSA: HDA: Fix front mic on Dell Precision M6500 + - LP: #519066 + * input: mt: Initialize slots to unused (rev2) + * input: mt: Add support for the Bamboo Touch trackpad + * hid: Add a hid quirk for input sync override + + -- Leann Ogasawara Mon, 23 Aug 2010 12:42:52 -0700 + +linux (2.6.35-18.24) maverick; urgency=low + + [ Colin Watson ] + + * Pass DEB_MAINT_PARAMS to hook scripts + + [ Leann Ogasawara ] + + * [Config] Add CONFIG_INPUT_UINPUT=y to config enforcer + - LP: #584812 + * rebase to v2.6.35.3 + + [ Upstream Kernel Changes ] + + * (pre-stable) dell-wmi: Add support for eject key on Dell Studio 1555 + - LP: #609234 + * can: add limit for nframes and clean up signed/unsigned variables + - CVE-2010-2959 + * drm: Initialize ioctl struct when no user data is present + - CVE-2010-2803 + * ARM: initial stack protector (-fstack-protector) support + * ARM: stack protector: change the canary value per task + * [ARM] implement arch_randomize_brk() + * [ARM] add address randomization to mmap() + * ARM: fix ASLR of PIE executables + + -- Leann Ogasawara Sun, 22 Aug 2010 19:22:04 -0700 + +linux (2.6.35-17.23) maverick; urgency=low + + [ Jeremy Kerr ] + + * [Config] build-in uinput module + - LP: #584812 + + [ Leann Ogasawara ] + + * Revert "[Config] [FTBS] ia64: Temporarily disable CONFIG_CEPH_FS" + * Revert "[Config] [FTBS] ia64: Temporarily disable gpiolib" + * Revert "[Config] [FTBS] sparc: Temporarily disable + CONFIG_MTD_NAND_DENALI" + * Revert "[Config] [FTBS] sparc: Temporarily disable + CONFIG_MFD_JANZ_CMODIO" + * Revert "[Config] [FTBS] sparc: Temporarily disable + CONFIG_INFINIBAND_QIB" + * [Config] Enable INTEL_IPS + - LP: #601057 + * Remove ia64 support + * [Config] Update portsconfigs after removing ia64 support + * Remove sparc support + * [Config] Update portsconfigs after removing sparc support + + [ Linus Torvalds ] + + * (pre-stable) mm: fix page table unmap for stack guard page properly + + [ Mathieu J. Poirier ] + + * SAUCE: (no-up) ARM: Resetting power_mode to its original value. + - LP: #591941 + + [ Upstream Kernel Changes ] + + * timer: add on-stack deferrable timer interfaces + - LP: #601057 + * x86 platform driver: intelligent power sharing driver + - LP: #601057 + * IPS driver: add GPU busy and turbo checking + - LP: #601057 + * X86: intel_ips, check for kzalloc properly + - LP: #601057 + * ips driver: make it less chatty + - LP: #601057 + + -- Leann Ogasawara Tue, 17 Aug 2010 09:38:08 -0700 + +linux (2.6.35-16.22) maverick; urgency=low + + [ Andy Whitcroft ] + + * debian -- more agressivly clean up after depmod on purge + - LP: #618591 + + [ Henrik Rydberg ] + + * SAUCE: hid: 3m: Simplify touchsreen emulation logic + + [ Leann Ogasawara ] + + * ubuntu: iscsitarget -- version 1.4.20.2 + * ubuntu: rtl8192se -- update to version 0017.0507.2010 + * rebase to v2.6.35.2 + * [Config] update configs following rebase to v2.6.35.2 + * [Config] update ports configs following rebase to v2.6.35.2 + + [ Luke Yelavich ] + + * [Config] Enable new firewire stack on powerpc + + [ Mathieu J. Poirier ] + + * SAUCE: (drop after 2.6.35) ARM: Using gpmc function to init nand flash. + - LP: #608266 + + -- Leann Ogasawara Thu, 12 Aug 2010 09:58:01 -0700 + +linux (2.6.35-15.21) maverick; urgency=low + + [ Luke Yelavich ] + + * [Config] CONFIG_SND_USB_UA101=m for all architectures + + [ Upstream Kernel Changes ] + + * Input: introduce MT event slots + * Input: document the MT event slot protocol + * (pre-stable) sched: Revert nohz_ratelimit() for now + * (pre-stable) drm/radeon/kms: add missing copy from user + - LP: #606081 + + [ Leann Ogasawara ] + + * rebase to v2.6.35.1 + + -- Leann Ogasawara Mon, 09 Aug 2010 09:24:04 -0700 + +linux (2.6.35-14.20) maverick; urgency=low + + [ Andy Whitcroft ] + + * update Vcs-Git to point to maverick repo + * debian -- include the debian packaging in the -source package + - LP: #608674 + * select debian source format 1.0 + * add support for building selected stages of kernel + - LP: #603087 + * cleanup conditional dependancy handling + - LP: #603087 + + [ Upstream Kernel Changes ] + + * ALSA: hda - Handle missing NID 0x1b on ALC259 codec + - LP: #582199, #586418, #588031 + * ALSA: hda - Handle pin NID 0x1a on ALC259/269 + - LP: #582199, #586418, #588031 + * sched: Revert nohz_ratelimit() for now + + -- Leann Ogasawara Tue, 03 Aug 2010 08:46:47 -0700 + +linux (2.6.35-14.19) maverick; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.35 + + -- Leann Ogasawara Sun, 01 Aug 2010 10:35:56 -0700 + +linux (2.6.35-13.18) maverick; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: (no-up) Modularize vesafb -- fix initialisation + * SAUCE: add tracing for user initiated readahead requests + * SAUCE: vt -- maintain bootloader screen mode and content until vt + switch + * SAUCE: vt -- allow grub to request automatic vt_handoff + * SAUCE: fbcon -- fix race between open and removal of framebuffers + * SAUCE: drm -- stop early access to drm devices + + [ Bryan Wu ] + + * CONFIG: compile in OTG driver and Transceiver driver + - LP: #566645 + * remove OTG modules from modules list file + + [ John Johansen ] + + * SAUCE: AppArmor: -- sync to AppArmor mainline 2010-07-27 + - LP: #581525, #599450 + * SAUCE: AppArmor: -- sync to AppArmor mainline 2010-07-29 + * SAUCE: AppArmor 2.4 compatibility patch + * SAUCE: AppArmor: Allow dfa backward compatibility with broken userspace + * SAUCE: fix pv-ops for legacy Xen + * SAUCE: blkfront: default to sd devices + * [Config] Build in drivers required for Xen pv-ops + + [ Leann Ogasawara ] + + * Revert "[Upstream] i915: Use the correct mask to detect i830 aperture + size." + + [ Lee Jones ] + + * SAUCE: ARM: OMAP: Add macros for comparing silicon revision + - LP: #608095 + * SAUCE: OMAP: DSS2: check for both cpu type and revision, rather than + just revision + - LP: #608095 + * SAUCE: OMAP: DSS2: enable hsclk in dsi_pll_init for OMAP36XX + - LP: #608095 + * SAUCE: ARM: OMAP: Beagle: support twl gpio differences on xM + - LP: #608095 + + [ Upstream Kernel Changes ] + + * agp/intel: Use the correct mask to detect i830 aperture size. + - LP: #597075 + + -- Leann Ogasawara Fri, 30 Jul 2010 15:46:59 -0700 + +linux (2.6.35-12.17) maverick; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc6 + * [Config] update configs following rebase to v2.6.35-rc6 + * [Config] update ports configs following rebase to v2.6.35-rc6 + * SAUCE: [FTBS] armel: define KEY_F10 and KEYF11 + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc6 + + -- Leann Ogasawara Fri, 23 Jul 2010 16:16:38 +0200 + +linux (2.6.35-11.16) maverick; urgency=low + + [ Leann Ogasawara ] + + * Bump ABI for new compiler update + + -- Leann Ogasawara Fri, 23 Jul 2010 10:24:58 +0200 + +linux (2.6.35-10.15) maverick; urgency=low + + [ Leann Ogasawara ] + + * Revert "SAUCE: ensure vga16fb loads if no other driver claims the VGA + device" + * [Config] Enable CONFIG_M686=y + - LP: #592495 + + [ Upstream Kernel Changes ] + + * tracing: Add alignment to syscall metadata declarations + + -- Leann Ogasawara Tue, 20 Jul 2010 18:18:49 +0200 + +linux (2.6.35-9.14) maverick; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- add BOM and automated update script + * ubuntu: AUFS -- update to b37c575759dc4535ccc03241c584ad5fe69e3b25 + + [ John Johansen ] + + * [Config] Enable DRBD as a module + + [ Kees Cook ] + + * SAUCE: Yama: verify inode is symlink to avoid bind mounts + - LP: #604407 + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_DRM_VMWGFX (staging driver) + - LP: #606139 + * [Config] ports: Disable CONFIG_DRM_VMWGFX (staging driver) + - LP: #606139 + * [Config] Enable CONFIG_DEBUG_STRICT_USER_COPY_CHECKS=y + * [Config] ports: Enable CONFIG_DEBUG_STRICT_USER_COPY_CHECKS=y + + [ Lee Jones ] + + * Stop ARM boards crashing when CUPS is loaded + - LP: #601226 + + [ Upstream Kernel Changes ] + + * perf probe: Support tracing an entry of array + * perf probe: Support static and global variables + + -- Leann Ogasawara Fri, 16 Jul 2010 14:38:17 -0700 + +linux (2.6.35-8.13) maverick; urgency=low + + [ Kees Cook ] + + * SAUCE: Yama: check PTRACE using thread group leader + * SAUCE: Yama: search for PTRACE exceptions via thread group leader + - LP: #603716 + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc5 + * [Config] update configs following rebase to v2.6.35-rc5 + + [ Nicolas Pitre ] + + * SAUCE: make ndiswrapper available on X86 only + + [ Tim Gardner ] + + * [Config] Added ums-cypress to udeb + - LP: #576066 + * SAUCE: fix build error with CONFIG_BLK_DEV_INITRD=n + * [Config] CONFIG_NDISWRAPPER=m across all configs + + [ Upstream Kernel Changes ] + + * HID: magicmouse: report last touch up + * rebase to 2.6.35-rc5 + + -- Leann Ogasawara Tue, 13 Jul 2010 18:57:59 -0700 + +linux (2.6.35-7.12) maverick; urgency=low + + [ Tim Gardner ] + + * [Upstream] i915: Use the correct mask to detect i830 aperture size. + - LP: #597075 + + [ Upstream Kernel Changes ] + + * (drop after 2.6.35) drm/radeon/kms: add ioport register access + (squashed) + + -- Tim Gardner Thu, 08 Jul 2010 09:53:13 -0600 + +linux (2.6.35-7.11) maverick; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_X86_MRST=n + + [ Upstream Kernel Changes ] + + * (drop after 2.6.35-rc5) writeback: remove writeback_inodes_wbc + * (drop after 2.6.35-rc5) writeback: split writeback_inodes_wb + * (drop after 2.6.35-rc5) writeback: simplify the write back thread queue + + -- Tim Gardner Tue, 06 Jul 2010 18:39:08 -0600 + +linux (2.6.35-7.10) maverick; urgency=low + + [ Kees Cook ] + + * SAUCE: security: create task_free security callback + * SAUCE: Yama: add PTRACE exception tracking and interface + * SAUCE: security: unconditionally chain to Yama LSM + * Revert "SAUCE: ptrace: restrict ptrace scope to children" + * Revert "SAUCE: fs: block hardlinks to non-accessible sources" + * Revert "SAUCE: fs: block cross-uid sticky symlinks" + * [Upstream] security: Yama LSM + * [Config] Enable CONFIG_SECURITY_YAMA=y + + [ Tim Gardner ] + + * [Config] updateconfigs/updateportsconfigs after rebase to 2.6.35-rc4 + + [ Upstream Kernel Changes ] + + * rebase to 2.6.35-rc4 + + -- Leann Ogasawara Thu, 01 Jul 2010 08:55:57 -0700 + +linux (2.6.35-6.9) maverick; urgency=low + + [ Tim Gardner ] + + * [Upstream] direct_splice_actor() should not use pos in sd + - LP: #588861 + + -- Leann Ogasawara Mon, 28 Jun 2010 12:35:49 -0700 + +linux (2.6.35-6.8) maverick; urgency=low + + [ Mathieu J. Poirier ] + + * ARM: Adding regulator supply for vdds_sdi. + - LP: #597904 + + -- Leann Ogasawara Sun, 27 Jun 2010 16:34:43 -0700 + +linux (2.6.35-6.7) maverick; urgency=low + + [ Alberto Milone ] + + * [Upstream] Add support for the ATIF ACPI method to the radeon driver + + [ Chase Douglas ] + + * [Upstream] HID: magicmouse: scroll on entire surface, not just middle + of mouse + * [Upstream] HID: magicmouse: disable and add module param for scroll + acceleration + * [Upstream] HID: magicmouse: properly account for scroll movement in + state + * [Upstream] HID: magicmouse: add param for scroll speed + * [Upstream] HID: magicmouse: enable horizontal scrolling + + [ Henrik Rydberg ] + + * [Upstream] Input: evdev - convert to dynamic event buffer + * [Upstream] Input: evdev - use driver hint to compute size of event + buffer + * [Upstream] Input: bcm5974 - set the average number of events per MT + event packet + * [Upstream] Input: hid-input - use a larger event buffer for MT devices + * [Upstream] Input: evdev - never leave the client buffer empty after + write + + [ John Johansen ] + + * SAUCE: AppArmor: -- mainline 2010-06-23 + * SAUCE: AppArmor 2.4 compatibility patch + * SAUCE: fs: block hardlinks to non-accessible sources AppArmor portion + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_INTR_REMAP=y + - LP: #597091 + * [Config] Enable CONFIG_X86_X2APIC + - LP: #597091 + + [ Mathieu J. Poirier ] + + * [Config] ARM: Turning off CONFIG_CPU_IDLE on omap + - LP: #594382 + + -- Leann Ogasawara Thu, 24 Jun 2010 12:19:48 -0700 + +linux (2.6.35-5.6) maverick; urgency=low + + [ Amit Kucheria ] + + * [Config] update omap flavour description + + [ Andy Whitcroft ] + + * update to ubuntu-debian:508b7aa34b578c0d1e51bfb571f2bfb824dc65ac + - LP: #570500, #576274 + * SAUCE: add option to hand off all kernel parameters to init + - LP: #586386 + * [Config] enable passing all kernel command line to init + - LP: #586386 + * [Config] disable CONFIG_VMI + - LP: #537601 + * [Config] enable CONFIG_IPV6_SIT_6RD + - LP: #591869 + * [Config] enable CONFIG_VMWARE_BALOON as module + - LP: #592039 + + [ Leann Ogasawara ] + + * Revert "SAUCE: pm: Config option to disable handling of console during + suspend/resume" + - LP: #594885 + * [Config] Remove CONFIG_PM_DISABLE_CONSOLE + * [Config] ports: enable passing all kernel command line to init + - LP: #586386 + * [Config] Enable CONFIG_FB_VESA=y for x86 + * [Config] Add CONFIG_FRAMEBUFFER_CONSOLE=y to config enforcer + * [Config] Add CONFIG_FB_VESA=y for x86 to config enforcer + * [Config] Enable CONFIG_TASK_DELAY_ACCT=y + - LP: #493156 + + [ Mathieu Poirier ] + + * ARM: Adding MosChip MCS7830 to nic-usb + - LP: #584920 + + [ Upstream Kernel Changes ] + + * Revert "[Upstream] docbook: need xmldoclinks for all doc types" + * docbook: need xmldoclinks for all doc types + * perf probe: Add kernel source path option + + -- Leann Ogasawara Thu, 17 Jun 2010 08:05:29 -0700 + +linux (2.6.35-4.5) maverick; urgency=low + + [ Leann Ogasawara ] + + * Revert "[Upstream] (evdev) Use driver hint to compute the evdev buffer + size (rev2)" + * Revert "[Upstream] (evdev) Convert to dynamic event buffer (rev4)" + * Revert "[Upstream] (evdev) Use multi-reader buffer to save space + (rev4)" + * Revert "SAUCE: drivers: Remove some duplicate device entries in various + modules" + * [Upstream] USB: option: Remove duplicate AMOI_VENDOR_ID + * [Upstream] Revert "USB: Adding support for HTC Smartphones to ipaq" + * [Upstream] p54usb: Comment out duplicate Medion MD40900 device id + + [ Tim Gardner ] + + * [Config] CONFIG_NFS_FSCACHE=y + - LP: #440522 + * [Config] CONFIG_FSCACHE_STATS=y, CONFIG_FSCACHE_HISTOGRAM=y + - LP: #440522 + + -- Leann Ogasawara Wed, 16 Jun 2010 08:43:07 -0700 + +linux (2.6.35-3.4) maverick; urgency=low + + [ Andy Whitcroft ] + + * debian -- ensure the version number is clean + + [ Henrik Rydberg ] + + * [Upstream] Introduce MT event slots (rev 5) + * [Upstream] Document the MT event slot protocol (rev5) + * [Upstream] (evdev) Use multi-reader buffer to save space (rev4) + * [Upstream] (evdev) Convert to dynamic event buffer (rev4) + * [Upstream] (evdev) Use driver hint to compute the evdev buffer size + (rev2) + + [ Leann Ogasawara ] + + * Revert "SAUCE: Add MODULE_ALIAS for Dell WMI module" + * Revert "SAUCE: hostap: send events on data interface as well as master + interface" + * Revert "Fix webcam having USB ID 0ac8:303b" + * Revert "SAUCE: toshiba_acpi -- pull in current -dev version of driver" + * rebase to v2.6.35-rc3 + + [ Maxim Levitsky ] + + * [Config] Enable new Smartmedia/xD translation layer + - LP: #202490 + + [ Upstream Kernel Changes ] + + * net: fix deliver_no_wcard regression on loopback device + + [ Upstream changes ] + + * rebased to v2.6.35-rc3 + + -- Leann Ogasawara Thu, 10 Jun 2010 16:15:22 -0700 + +linux (2.6.35-2.3) maverick; urgency=low + + [ Bryan Wu ] + + * CONFIG: enforce -- make sure we disable CONFIG_LOCALVERSION_AUTO + + [ Leann Ogasawara ] + + * [Config] armel: Enable CONFIG_BNX2=m + * [Config] ports: Enable CONFIG_BNX2X=m + * SAUCE: armel: define get_dma_ops to fix FTBS + + [ Tim Gardner ] + + * [Upstream] net: Print num_rx_queues imbalance warning only when there + are allocated queues + - LP: #591416 + + -- Leann Ogasawara Wed, 09 Jun 2010 08:27:41 -0700 + +linux (2.6.35-2.2) maverick; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i: make armel configuration versatile flavour specific + - LP: #588805 + * [Config] d-i: enable .udebs for omap flavour + - LP: #588805 + + [ Kees Cook ] + + * ptrace: limit scope to attach only (allow read) + - LP: #589656 + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc2 + * [Config] update configs following rebase to v2.6.35-rc2 + * [Config] update port configs following rebase to v2.6.35-rc2 + + [ Lee Jones ] + + * Enable perf to be more helpful when perf_ does not exist. + - LP: #570500 + * 'fdr editconfig' modification. Easily skip over unwanted menuconfigs. + + [ Tim Gardner ] + + * [Config] Update bnx2 udeb firmware files + - LP: #589304 + + [ Upstream changes ] + + * rebased to v2.6.35-rc2 + + -- Leann Ogasawara Mon, 07 Jun 2010 09:45:04 -0700 + +linux (2.6.35-1.1) maverick; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update to standalone 2.6.35-rcN as at 20100601 + - LP: #587888 + * ubuntu: AUFS -- track changes to the arguements to fop fsync() + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc1 + * [Config] update configs following rebase to v2.6.35-rc1 + * [Config] update port configs following rebase to v2.6.35-rc1 + * SAUCE: lirc: rename usb_buffer_alloc() and usb_buffer_free() + * SAUCE: ndiswrapper: rename usb_buffer_alloc() and usb_buffer_free() + * SAUCE: ndiswrapper: convert multicast list to list_head + * [Config] [FTBS] armel: Temporarily disable CONFIG_GPIO_JANZ_TTL + * [Config] [FTBS] ia64: Temporarily disable gpiolib + * [Config] [FTBS] ia64: Temporarily disable CONFIG_CEPH_FS + * [Config] [FTBS] sparc: Temporarily disable CONFIG_INFINIBAND_QIB + * [Config] [FTBS] sparc: Temporarily disable CONFIG_MFD_JANZ_CMODIO + * [Config] [FTBS] armel: Temporarily disable CONFIG_MFD_JANZ_CMODIO + * [Config] [FTBS] armel: Temporarily disable CONFIG_DT3155 + * [Config] [FTBS] sparc: Temporarily disable CONFIG_MTD_NAND_DENALI + * [Config] [FTBS] armel: Temporarily disable bnx2 + * [Config] [FTBS] armel: Temporarily disable CONFIG_SERIAL_UARTLITE + * SAUCE: [FTBS] armel: Don't include asm/agp.h for ttm + * SAUCE: [FTBS] armel: include linux/dma-mapping.h + * SAUCE: [FTBS] armel: replace omap_set_gpio_debounce with + gpio_set_debounce + + [ Upstream Kernel Changes ] + + * of/usb: fix build error due to of_node pointer move + * n2_crypto: Fix build after of_device/of_platform_driver changes. + * powerpc/fsl-booke: fix the case where we are not in the first page + * powerpc/fsl-booke: Move the entry setup code into a seperate file + * powerpc/kexec: Add support for FSL-BookE + * greth: Fix build after OF device conversions. + + [ Upstream changes ] + + * rebased to v2.6.35-rc1 + + -- Leann Ogasawara Fri, 04 Jun 2010 23:01:52 -0700 + +linux (2.6.35-1.0) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * Null entry. + + -- Leann Ogasawara Wed, 02 Jun 2010 15:17:41 -0700 + +linux (2.6.34-5.14) maverick; urgency=low + + [ Tim Gardner ] + + * [Config] Added module inclusion support + * [Config] Added virtual flavour module inclusion list and d-i package + definitions + + -- Leann Ogasawara Wed, 02 Jun 2010 12:58:14 -0700 + +linux (2.6.34-5.13) maverick; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- aufs2 20091209" + * Revert "ubuntu: AUFS -- export various core functions + (aufs2-standalone.patch)" + * Revert "ubuntu: AUFS -- export various core functions + (aufs2-base.patch)" + * ubuntu: AUFS -- aufs2 base patch for linux-2.6.34 + - LP: #587888 + * ubuntu: AUFS -- aufs2 standalone patch for linux-2.6.34 + - LP: #587888 + * ubuntu: AUFS -- update to standalone 2.6.34 as at 20100601 + - LP: #587888 + * [Config] AUFS -- enable aufs options + - LP: #587888 + + -- Leann Ogasawara Tue, 01 Jun 2010 08:56:43 -0700 + +linux (2.6.34-5.12) maverick; urgency=low + + [ Andy Whitcroft ] + + * enforce -- ensure SYSFS compatibility is disabled + + [ Chase Douglas ] + + * build with libdw-dev for perf probe symbol support + * maverick ftrace configuration changes + + [ Kees Cook ] + + * Revert "SAUCE: x86: brk away from exec rand area" + * Revert "SAUCE: [um] Don't use nx_enabled under UML" + * Revert "SAUCE: [x86] implement cs-limit nx-emulation for ia32" + * SAUCE: x86: implement cs-limit nx-emulation for ia32 + - LP: #369978 + * SAUCE: x86: more tightly confine cs-limit nx-emulation to ia32 only + * SAUCE: x86: brk away from exec rand area + - LP: #452175 + * SAUCE: ptrace: restrict ptrace scope to children + + [ Leann Ogasawara ] + + * Add new omap flavour to getabis + * [Config] Enable CONFIG_FRAMEBUFFER_CONSOLE=y for all archs + - LP: #585490 + * build/modules: Temorarily add ignore.modules + * ubuntu: iscsitarget -- version 1.4.20.1 + + [ Loïc Minier ] + + * SAUCE: [um] Don't use nx_enabled under UML + - LP: #524849 + + -- Leann Ogasawara Fri, 28 May 2010 08:27:17 -0700 + +linux (2.6.34-4.11) maverick; urgency=low + + [ Amit Kucheria ] + + * SAUCE: omap: remove calls to usb_nop_xceiv_register from board files + * [Config] Add support for OMAP-mainline flavour + + [ Andy Whitcroft ] + + * SAUCE: powerpc: fix compile error when ptrace.h is included from + userspace + - LP: #583733 + + [ Chase Douglas ] + + * Revert "SAUCE: Don't register vga16fb framebuffer if other framebuffers + are present" + * Revert "SAUCE: Disable function tracing after hitting __schedule_bug" + * Revert "SAUCE: drm/i915: don't change DRM configuration when releasing + load detect pipe" + + [ Kees Cook ] + + * SAUCE: fs: block cross-uid sticky symlinks + * SAUCE: fs: block hardlinks to non-accessible sources + + [ Koen Kooi ] + + * SAUCE: board-omap3-beagle: add DSS2 support + + [ Leann Ogasawara ] + + * Revert "staging/go7007 -- disable" + * Revert "[Config] staging/winbond -- disable" + * Revert "Disable 4MB page tables for Atom, work around errata AAE44" + * Revert "SAUCE: sync before umount to reduce time taken by ext4 umount" + * Revert "SAUCE: Enable an e1000e Intel Corporation 82567 Gigabit + controller" + * Revert "SAUCE: Fix MODULE_IMPORT/MODULE_EXPORT" + * Revert "SAUCE: Created MODULE_EXPORT/MODULE_IMPORT macros" + * Revert "SAUCE: input/mouse/alps: Do not call psmouse_reset() for alps" + * Revert "SAUCE: r8169: disable TSO by default for RTL8111/8168B + chipsets." + * Revert "[Upstream] b43: Declare all possible firmware files." + * Revert "add Breaks: against hardy lvm2" + * Revert "SAUCE: Guest OS does not recognize a lun with non zero target + id on Vmware ESX Server" + * Revert "SAUCE: Catch nonsense keycodes and silently ignore" + * [Config] Enable CONFIG_ECRYPT_FS=y for ports + * [Config] Enable CONFIG_USB=y for armel and sparc + * [Config] Enable CONFIG_SCSI=y for ia64 and sparc + * [Config] Enable CONFIG_RFKILL=y for ports + * [Config] Enable CONFIG_ATH9K_DEBUGFS=y + * [Config] Enable CONFIG_IWMC3200TOP_DEBUGFS=y + * [Config] Enable CONFIG_RCU_FAST_NO_HZ=y + * [Config] Enable CONFIG_IWLWIFI_DEVICE_TRACING=y + * [Config] Enable CONFIG_LIBERTAS_MESH=y + * [Config] Enable CONFIG_MMC_RICOH_MMC=y + * [Config] CONFIG_RT2800USB_UNKNOWN=y + * [Config] Enable CONFIG_VGA_SWITCHEROO=y + * [Config] Enable CONFIG_CEPH_FS=m + * [Config] Enable CONFIG_CRYPTO_PCRYPT=m + * [Config] Enable CONFIG_EEEPC_WMI=m + * [Config] Enable CONFIG_RT2800PCI=m + * [Config] Enable CONFIG_SCSI_HPSA=m + * [Config] Enable CONFIG_VHOST_NET=m + * [Config] Disable CONFIG_SND_HDA_INPUT_BEEP_MODE by default + - LP: #582350 + * [Config] Disable CONFIG_SOUND_OSS* and CONFIG_SND_*OSS + - LP: #579300 + * [Config] Enable CONFIG_PCIEASPM=y + - LP: #333990 + * [Config] updateconfigs for OMAP flavour + + [ Loïc Minier ] + + * Enable perf tools on armel + + [ Tim Gardner ] + + * SAUCE: Updated ndiswrapper to 1.56 + - LP: #582555 + * [Config] Added virtual flavour + * [Config] Remove support for sub-flavours + * [Config] Removed amd64 preempt flavour + * [Config] updateconfigs, updateportsconfigs after flavour munging + + -- Leann Ogasawara Tue, 25 May 2010 09:34:55 -0700 + +linux (2.6.34-3.10) maverick; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34 + + [ Upstream changes ] + + * rebased to v2.6.34 + + -- Leann Ogasawara Tue, 18 May 2010 17:35:35 -0700 + +linux (2.6.34-2.9) maverick; urgency=low + + [ Leann Ogasawara ] + + * [Config] [FTBS] Disable comedi for armel + + -- Leann Ogasawara Thu, 13 May 2010 23:20:55 +0200 + +linux (2.6.34-2.8) maverick; urgency=low + + [ Leann Ogasawara ] + + * Drop lpia + * [Config] [FTBS] disable KVM + * [Config] [FTBS] disable ipr for armel + + -- Leann Ogasawara Thu, 13 May 2010 16:07:52 +0200 + +linux (2.6.34-2.7) maverick; urgency=low + + [ Leann Ogasawara ] + + * [Config] disable CONFIG_SCSI_IPR on powerpc + * [Config] Remove 386 flavour per UDS discussion + + -- Leann Ogasawara Wed, 12 May 2010 18:26:43 +0200 + +linux (2.6.34-1.6) maverick; urgency=low + + [ Chase Douglas ] + + * enforce CONFIG_TMPFS_POSIX_ACL=y + - LP: #575940 + * don't force module dependency checking + - LP: #577029 + + [ Kees Cook ] + + * SAUCE: mmap_min_addr check CAP_SYS_RAWIO only for write + - LP: #568844 + + [ Leann Ogasawara ] + + * Revert "SAUCE: ata: blacklist FUJITSU MHW2160BH PL" + * rebase to v2.6.34-rc7 + * [Config] update configs following rebase to v2.6.34-rc7 + * [Config] update port configs following rebase to v2.6.34-rc7 + * Add btrfs to the udebs + + [ Tim Gardner ] + + * [Config] Add atl1c to nic-modules udeb + - LP: #557130 + + [ Upstream changes ] + + * rebased to v2.6.34-rc7 + + -- Leann Ogasawara Tue, 11 May 2010 11:29:08 +0200 + +linux (2.6.34-1.5) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc6 + * [Config] update configs following rebase to v2.6.34-rc6 + * [Config] update port configs following rebase to v2.6.34-rc6 + + [ Upstream changes ] + + * rebased to v2.6.34-rc6 + + -- Leann Ogasawara Fri, 30 Apr 2010 15:54:05 +0100 + +linux (2.6.34-1.4) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc5 + * [Config] update ports configs following rebase to v2.6.34-rc5 + + [ Upstream changes ] + + * rebased to v2.6.34-rc5 + + -- Leann Ogasawara Thu, 22 Apr 2010 15:36:12 -0700 + +linux (2.6.34-1.3) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc4 + * [Config] update configs following rebase to v2.6.34-rc4 + * [Config] update port configs following rebase to v2.6.34-rc4 + * ubuntu: dm-raid4-5 -- update to compile with 2.6.34-rc4 + + [ Upstream changes ] + + * rebased to v2.6.34-rc4 + + -- Leann Ogasawara Tue, 13 Apr 2010 18:33:44 -0700 + +linux (2.6.34-1.2) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * Temorarily disable building linux-doc + * rebase to v2.6.34-rc3 + * [Config] update configs following rebase to v2.6.34-rc3 + * [Config] update port configs following rebase to v2.6.34-rc3 + + [ Upstream changes ] + + * rebased to v2.6.34-rc3 + + -- Leann Ogasawara Tue, 30 Mar 2010 16:55:44 -0700 + +linux (2.6.34-1.1) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc2 + * ubuntu: dm-raid4-5 -- update to compile with 2.6.34-rc2 + * [Config] update port configs following rebase to v2.6.34-rc2 + * [Config] update configs following rebase to v2.6.34-rc2 + + [ Upstream changes ] + + * rebased to v2.6.34-rc2 + + -- Leann Ogasawara Wed, 24 Mar 2010 23:00:39 -0700 + +linux (2.6.33-1.1) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * ubuntu: dm-raid4-5 -- update to compile with 2.6.33 + * ubuntu: lirc -- drop explicit include of linux/autoconf.h + * ubuntu: lirc -- pass kfifo to kfifo_alloc and move spinlock + * ubuntu: lirc -- rename kfifo_put and kfifo_get + * ubuntu: iscsitarget -- rename daddr inet_sock field + * rebased to v2.6.33 + * [Config] update configs following rebase to v2.6.33 + * [Config] update ports configs following rebase to v2.6.33 + + [ Upstream changes ] + + * rebased to v2.6.33 + + -- Leann Ogasawara Tue, 23 Mar 2010 03:55:46 -0700 + +linux (2.6.33-0.0) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * Null entry. + + -- Leann Ogasawara Wed, 17 Mar 2010 07:48:56 -0700 + +linux (2.6.32-16.25) lucid; urgency=low + + [ Andy Whitcroft ] + + * linux-tools -- move to Suggests: with explicit seeding + - LP: #534635 + + [ Tim Gardner ] + + * [Config] CONFIG_HID=m + + [ Upstream Kernel Changes ] + + * (pre-stable) sched: Fix SMT scheduler regression in + find_busiest_queue() + * KVM: introduce kvm_vcpu_on_spin + * KVM: VMX: Add support for Pause-Loop Exiting + + -- Andy Whitcroft Tue, 09 Mar 2010 14:13:51 +0000 + +linux (2.6.32-16.24) lucid; urgency=low + + [ Andy Whitcroft ] + + * armel -- perf userspace does not support arm + * ia64 -- libelf-dev/binutils-dev to not provide necessary libraries + + -- Andy Whitcroft Sat, 06 Mar 2010 11:42:12 +0000 + +linux (2.6.32-16.23) lucid; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: PM report driver and device suspend/resume times -- move config + * update to standards version 3.8.4.0 + * printenv -- expose all of the package selectors + * source package -- cleanup source content control + * doc package -- ensure we do build package content on buildd + * lintian -- correct the address in the debian/copyright + * lintian -- update debhelper package version dependancy + * lintian -- fix ghostscript dependancy + * lintian -- add required misc:Depends + * lintian -- move our debhelper compat level to debian/compat + * perf -- build the kernel carried tools + * perf -- add linux-tools carrying the version switches and manuals + * SAUCE: fix up Kconfig for staging drivers + * [Config] enable NOUVEAU etc following drm backport + * update DRM to mainline v2.6.33 + * [Config] Remove AppArmor config options that no longer exist (ports) + * [Config] updateportsconfigs following drm update + + [ John Johansen ] + + * ubuntu: AppArmor -- update to mainline 2010-03-04 + * SAUCE: AppArmor: Reintroduce AppArmor 2.4 compatibility + * SAUCE: AppArmor: replace strim with strstrip for 2.6.32 kernels + * [Config] Remove AppArmor config options that no longer exist + + [ Manoj Iyer ] + + * ubuntu: rtl8192se -- version 2010-0115,0014 + - LP: #530275 + * [Config] added CONFIG_RTL8192SE module. + - LP: #530275 + + [ Tim Gardner ] + + * [Config] Added vmw_pvscsi to d-i/scsi-modules + - LP: #531017 + * [Upstream] netfilter: xt_recent: Add an entry reaper + + [ Upstream Kernel Changes ] + + * Revert "KVM: x86 emulator: Check CPL level during privilege instruction + emulation" + * Revert "KVM: x86 emulator: Fix popf emulation" + * Revert "KVM: x86 emulator: Check IOPL level during io instruction + emulation" + * Revert "KVM: x86 emulator: Add Virtual-8086 mode of emulation" + * Revert "KVM: fix memory access during x86 emulation." + * Add vlan (8021.Q) module package for d-i. + * (pre-stable) drm/i915: blacklist lid status: Sony VGN-BX196VP, Dell + Inspiron 700m + - LP: #515246 + * [Upstream] docbook: need xmldoclinks for all doc types + * x86: set_personality_ia32() misses force_personality32 + * lib: Introduce generic list_sort function + * drm/nv50: Implement ctxprog/state generation. + * drm/nv50: Remove redundant/incorrect ctxvals initialisation. + * (pre-stable) drm/i915: blacklist lid status: Sony VGN-BX196VP, Dell + Inspiron 700m + - LP: #515246 + + -- Andy Whitcroft Fri, 05 Mar 2010 15:40:38 +0000 + +linux (2.6.32-15.22) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] added new config option CONFIG_SR_REPORT_TIME_LIMIT" + * Revert "SAUCE: PM report driver and device suspend/resume times." + * [Config] set CONFIG_SR_REPORT_TIME_LIMIT + + [ Manoj Iyer ] + + * SAUCE: PM report driver and device suspend/resume times. + + -- Andy Whitcroft Tue, 02 Mar 2010 01:35:37 +0000 + +linux (2.6.32-15.21) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "(pre-stable) drm/i915: Increase fb alignment to 64k" + * Revert "[Config] lenovo-sl-laptop -- enable" + * Revert "ubuntu: lenovo-sl-laptop -- git tip (b19a08f81f)" + * armel -- cramfs module will no longer be built + * d-i -- make all modules optional + * rename the debug packages to match archive standard + - LP: #527837 + * lenovo-sl-laptop is no longer built + + [ Colin Ian King ] + + * Disable 4MB page tables for Atom, work around errata AAE44 + - LP: #523112 + + [ Colin Watson ] + + * ubuntu: dm-raid4-5: Depend on XOR_BLOCKS + * ubuntu: fsam7400: Depend on CHECK_SIGNATURE + + [ Jesse Barnes ] + + * SAUCE: drm/i915: don't change DRM configuration when releasing load + detect pipe + - LP: #488328 + + [ Loïc Minier ] + + * [Config] armel Update versatile initrd configs + - LP: #524893 + * SAUCE: [um] Don't use nx_enabled under UML + - LP: #524849 + + [ Manoj Iyer ] + + * [Config] added new config option CONFIG_SR_REPORT_TIME_LIMIT + + [ Mario Limonciello ] + + * SAUCE: v3 - Add Dell Business Class Netbook LED driver + + [ Rafael J. Wysocki ] + + * SAUCE: PM report driver and device suspend/resume times. + + [ Surbhi Palande ] + + * Revert "[Upstream] e1000e: enhance frame fragment detection" + - CVE-2009-4538 + * Revert "[Upstream] e1000: enhance frame fragment detection" + - CVE-2009-4536 + + [ Tim Gardner ] + + * [Config] Enabled CONFIG_LEDS_DELL_NETBOOKS=m + * SAUCE: (pre-stable) netfilter: xt_recent: fix buffer overflow + * SAUCE: (pre-stable) netfilter: xt_recent: fix false match + + [ Upstream Kernel Changes ] + + * Revert "(pre-stable) eCryptfs: Add getattr function" + * Fix potential crash with sys_move_pages + * futex_lock_pi() key refcnt fix + * futex: Handle user space corruption gracefully + * futex: Handle futex value corruption gracefully + * Fix race in tty_fasync() properly + * hwmon: (w83781d) Request I/O ports individually for probing + * hwmon: (lm78) Request I/O ports individually for probing + * hwmon: (adt7462) Wrong ADT7462_VOLT_COUNT + * ALSA: ctxfi - fix PTP address initialization + * drm/i915: disable hotplug detect before Ironlake CRT detect + * drm/i915: enable self-refresh on 965 + * drm/i915: Disable SR when more than one pipe is enabled + * drm/i915: Fix DDC on some systems by clearing BIOS GMBUS setup. + * drm/i915: Add HP nx9020/SamsungSX20S to ACPI LID quirk list + * drm/i915: Fix the incorrect DMI string for Samsung SX20S laptop + * drm/i915: Add MALATA PC-81005 to ACPI LID quirk list + * usb: r8a66597-hcd: Flush the D-cache for the pipe-in transfer buffers. + * i2c-tiny-usb: Fix on big-endian systems + * drm/i915: handle FBC and self-refresh better + * drm/i915: Increase fb alignment to 64k + * drm/i915: Update write_domains on active list after flush. + * regulator: Fix display of null constraints for regulators + * ALSA: hda-intel: Avoid divide by zero crash + * CPUFREQ: Fix use after free of struct powernow_k8_data + * freeze_bdev: don't deactivate successfully frozen MS_RDONLY sb + * cciss: Make cciss_seq_show handle holes in the h->drv[] array + * ioat: fix infinite timeout checking in ioat2_quiesce + * resource: add helpers for fetching rlimits + * fs/exec.c: restrict initial stack space expansion to rlimit + * cifs: fix length calculation for converted unicode readdir names + * NFS: Fix a reference leak in nfs_wb_cancel_page() + * NFS: Try to commit unstable writes in nfs_release_page() + * NFSv4: Don't allow posix locking against servers that don't support it + * NFSv4: Ensure that the NFSv4 locking can recover from stateid errors + * NFS: Fix an Oops when truncating a file + * NFS: Fix a umount race + * NFS: Fix a bug in nfs_fscache_release_page() + * NFS: Fix the mapping of the NFSERR_SERVERFAULT error + * md: fix 'degraded' calculation when starting a reshape. + * V4L/DVB: dvb-core: fix initialization of feeds list in demux filter + * Export the symbol of getboottime and mmonotonic_to_bootbased + * kvmclock: count total_sleep_time when updating guest clock + * KVM: PIT: control word is write-only + * tpm_infineon: fix suspend/resume handler for pnp_driver + * amd64_edac: Do not falsely trigger kerneloops + * netfilter: nf_conntrack: fix memory corruption with multiple namespaces + * netfilter: nf_conntrack: per netns nf_conntrack_cachep + * netfilter: nf_conntrack: restrict runtime expect hashsize modifications + * netfilter: xtables: compat out of scope fix + * netfilter: nf_conntrack: fix hash resizing with namespaces + * drm/i915: remove full registers dump debug + * drm/i915: add i915_lp_ring_sync helper + * drm/i915: Don't wait interruptible for possible plane buffer flush + * dasd: remove strings from s390dbf + * crypto: padlock-sha - Add import/export support + * wmi: Free the allocated acpi objects through wmi_get_event_data + * dell-wmi, hp-wmi, msi-wmi: check wmi_get_event_data() return value + * /dev/mem: introduce size_inside_page() + * devmem: check vmalloc address on kmem read/write + * devmem: fix kmem write bug on memory holes + * SCSI: mptfusion : mptscsih_abort return value should be SUCCESS instead + of value 0. + * sh: Couple kernel and user write page perm bits for CONFIG_X2TLB + * ALSA: hda - use WARN_ON_ONCE() for zero-division detection + * dst: call cond_resched() in dst_gc_task() + * ALSA: hda - Improved MacBook (Pro) 5,1 / 5,2 support + * befs: fix leak + * rtc-fm3130: add missing braces + * Call flush_dcache_page after PIO data transfers in libata-sff.c + * ahci: add Acer G725 to broken suspend list + * pktgen: Fix freezing problem + * x86/amd-iommu: Fix IOMMU-API initialization for iommu=pt + * x86/amd-iommu: Fix deassignment of a device from the pt_domain + * x86: Re-get cfg_new in case reuse/move irq_desc + * Staging: fix rtl8187se compilation errors with mac80211 + * ALSA: usb-audio - Avoid Oops after disconnect + * serial: 8250: add serial transmitter fully empty test + * sysfs: sysfs_sd_setattr set iattrs unconditionally + * class: Free the class private data in class_release + * USB: usbfs: only copy the actual data received + * USB: usbfs: properly clean up the as structure on error paths + * rtl8187: Add new device ID + * ACPI: Add NULL pointer check in acpi_bus_start + * ACPI: fix High cpu temperature with 2.6.32 + * drm/radeon/kms: use udelay for short delays + * NFS: Too many GETATTR and ACCESS calls after direct I/O + * eCryptfs: Add getattr function + * b43: Fix throughput regression + * ath9k: Fix sequence numbers for PAE frames + * mac80211: Fix probe request filtering in IBSS mode + * iwlwifi: Fix to set correct ht configuration + * dm stripe: avoid divide by zero with invalid stripe count + * dm log: userspace fix overhead_size calcuations + * Linux 2.6.32.9 + * sfc: Fix SFE4002 initialisation + * sfc: Fix sign of efx_mcdi_poll_reboot() error in efx_mcdi_poll() + * sfc: SFE4002/SFN4112F: Widen temperature and voltage tolerances + * (pre-stable) HID: handle joysticks with large number of buttons + - LP: #492056 + * (pre-stable) HID: extend mask for BUTTON usage page + - LP: #492056 + * PM: Measure device suspend and resume times + * e1000: enhance frame fragment detection + - CVE-2009-4536 + * e1000e: enhance frame fragment detection + - CVE-2009-4538 + * KVM: fix memory access during x86 emulation. + - CVE-2010-0306 + * KVM: x86 emulator: Add Virtual-8086 mode of emulation + - CVE-2010-0306 + * KVM: x86 emulator: Check IOPL level during io instruction emulation + - CVE-2010-0306 + * KVM: x86 emulator: Fix popf emulation + - CVE-2010-0306 + * KVM: x86 emulator: Check CPL level during privilege instruction + emulation + - CVE-2010-0306 + * Input: wacom - ensure the device is initialized properly upon resume + * Input: wacom - add defines for packet lengths of various devices + * Input: wacom - add support for new LCD tablets + - LP: #516777 + + -- Andy Whitcroft Mon, 01 Mar 2010 22:56:28 +0000 + +linux (2.6.32-14.20) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebuild following the GCC update to match compiler for out of tree modules + * Revert "[Config] drbd -- enable" + * Revert "ubuntu: drbd -- version 8.3.1" + * SAUCE: khubd -- switch USB product/manufacturer/serial handling to RCU + - LP: #510937 + + -- Andy Whitcroft Fri, 19 Feb 2010 18:47:18 +0000 + +linux (2.6.32-14.19) lucid; urgency=low + + [ Andy Whitcroft ] + + * ensure we build the source package contents when enabled + - LP: #522308 + * [Config] enable CONFIG_X86_MCE_XEON75XX + * SAUCE: AppArmor -- add linux/kref.h for struct kref + * [Config] enable CONFIG_HID_ORTEK + * enable udeb generation for arm versatile flavour + - LP: #522515 + + [ John Johansen ] + + * ubuntu: AppArmor -- update to mainline 2010-02-18 + - LP: #439560, #496110, #507069 + + [ Johnathon Harris ] + + * SAUCE: HID: add support for Ortek WKB-2000 + - LP: #405390 + + [ Upstream Kernel Changes ] + + * tpm_tis: TPM_STS_DATA_EXPECT workaround + - LP: #490487 + * x86, mce: Xeon75xx specific interface to get corrected memory error + information + * x86, mce: Rename cpu_specific_poll to mce_cpu_specific_poll + * x86, mce: Make xeon75xx memory driver dependent on PCI + * drm/edid: Unify detailed block parsing between base and extension + blocks + - LP: #500999 + * (pre-stable) eCryptfs: Add getattr function + - LP: #390833 + + -- Andy Whitcroft Thu, 18 Feb 2010 19:22:02 +0000 + +linux (2.6.32-13.18) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "enforcer -- make the enforcement configuration common" + * Revert "(pre-stable) Input: ALPS - add interleaved protocol support + (Dell E6x00 series)" + * Revert "(pre-stable) driver-core: fix devtmpfs crash on s390" + * Revert "(pre-stable) Driver-Core: devtmpfs - set root directory mode to + 0755" + * Revert "SAUCE: Adds support for COMPAL JHL90 webcam" + * Revert "SAUCE: fix kernel oops in VirtualBox during paravirt patching" + * Revert "SAUCE: make fc transport removal of target configurable" + * enforcer -- make the enforcement configuration common + * getabis -- add preempt flavour to the list + * [Config] enforce DEVTMPFS options + * [Config] armel -- cleanup to-be builtin modules + * [Config] cleanup ports configs + * [Config] enable CRYPTO_GHASH_CLMUL_NI_INTEL + - LP: #485536 + * add printdebian target to find branch target + * distclean -- do not remove debian.env + * [Config] generic-pae switch to M586TSC + - LP: #519448 + * git-ubuntu-log -- commonise duplicated log handling + * git-ubuntu-log -- tighten up Bug: NNNN matching + * git-ubuntu-log -- sort the bug numbers + + [ Chris Wilson ] + + * (pre-stable) drm/i915: Increase fb alignment to 64k + - LP: #404064 + + [ Eric Miao ] + + * arm -- enable ubuntu/ directory + + [ Huang Ying ] + + * SAUCE: crypto: ghash - Add PCLMULQDQ accelerated implementation + * SAUCE: crypto: ghash-intel - Fix building failure on x86_32 + + [ Loïc Minier ] + + * [Config] cleanup preempt configuration + * [Config] versatile: Fix video output + - LP: #517594 + * [Config] armel DEFAULT_MMAP_MIN_ADDR=32768 + * [Config] Large update to armel/versatile + * [Config] versatile: Add RTC support + * [Config] armel: Enable NEON + * [Config] versatile: Builtin MMC support + * [Config] versatile Builtin SCSI controller + * [Config] armel Disable dma_cache_sync callers + * [Config] armel Disable asm/time.h users + * [Config] armel Disable out of range udelay() + * [Config] armel Disable flush_cache_range() users + * [Config] armel -- Enable ubuntu/ drivers + + [ Steve Conklin ] + + * SAUCE: drm/i915: Add display hotplug event on Ironlake + * SAUCE: drm/i915: Add ACPI OpRegion support for Ironlake + + [ Upstream Kernel Changes ] + + * Revert "[Upstream]: oprofile/x86: add Xeon 7500 series support" + * Revert "Revert "[Bluetooth] Eliminate checks for impossible conditions + in IRQ handler"" + * clockevent: Don't remove broadcast device when cpu is dead + * clockevents: Add missing include to pacify sparse + * ACPI: don't cond_resched if irq is disabled + * be2net: Add support for next generation of BladeEngine device. + * be2net: Add the new PCI IDs to PCI_DEVICE_TABLE. + * mpt2sas: New device SAS2208 support is added + * ar9170: Add support for D-Link DWA 160 A2 + * powerpc/fsl: Add PCI device ids for new QoirQ chips + * davinci: dm646x: Add support for 3.x silicon revision + * Input: ALPS - add interleaved protocol support (Dell E6x00 series) + * Driver-Core: devtmpfs - set root directory mode to 0755 + * driver-core: fix devtmpfs crash on s390 + * vfs: get_sb_single() - do not pass options twice + * ALSA: hda - Add PCI IDs for Nvidia G2xx-series + * V4L/DVB (13569): smsusb: add autodetection support for five additional + Hauppauge USB IDs + * USB: mos7840: add device IDs for B&B electronics devices + * USB: ftdi_sio: add USB device ID's for B&B Electronics line + * V4L/DVB (13168): Add support for Asus Europa Hybrid DVB-T card (SAA7134 + SubVendor ID: 0x1043 Device ID: 0x4847) + * iTCO_wdt: Add support for Intel Ibex Peak + * atl1c:use common_task instead of reset_task and link_chg_task + * atl1e:disable NETIF_F_TSO6 for hardware limit + * V4L/DVB (13680a): DocBook/media: copy images after building HTML + * V4L/DVB (13680b): DocBook/media: create links for included sources + * netfilter: xtables: fix conntrack match v1 ipt-save output + * partitions: read whole sector with EFI GPT header + * partitions: use sector size for EFI GPT + * ALSA: ice1724 - Patch for suspend/resume for ESI Juli@ + * sched: Fix isolcpus boot option + * sched: Fix missing sched tunable recalculation on cpu add/remove + * nohz: Prevent clocksource wrapping during idle + * nfsd: Fix sort_pacl in fs/nfsd/nf4acl.c to actually sort groups + * timers, init: Limit the number of per cpu calibration bootup messages + * PCI: Always set prefetchable base/limit upper32 registers + * iscsi class: modify handling of replacement timeout + * NFS: Revert default r/wsize behavior + * HID: fixup quirk for NCR devices + * scsi_devinfo: update Hitachi entries (v2) + * scsi_dh: create sysfs file, dh_state for all SCSI disk devices + * scsi_transport_fc: remove invalid BUG_ON + * lpfc: fix hang on SGI ia64 platform + * libfc: fix typo in retry check on received PRLI + * libfc: fix ddp in fc_fcp for 0 xid + * fcoe: remove redundant checking of netdev->netdev_ops + * libfc: Fix wrong scsi return status under FC_DATA_UNDRUN + * libfc: lport: fix minor documentation errors + * libfc: don't WARN_ON in lport_timeout for RESET state + * fcoe: initialize return value in fcoe_destroy + * libfc: Fix frags in frame exceeding SKB_MAX_FRAGS in fc_fcp_send_data + * libfc: fix memory corruption caused by double frees and bad error + handling + * libfc: fix free of fc_rport_priv with timer pending + * libfc: remote port gets stuck in restart state without really + restarting + * fcoe, libfc: fix an libfc issue with queue ramp down in libfc + * fcoe: Fix checking san mac address + * fcoe: Fix getting san mac for VLAN interface + * qlge: Remove explicit setting of PCI Dev CTL reg. + * qlge: Set PCIE max read request size. + * qlge: Don't fail open when port is not initialized. + * qlge: Add handler for DCBX firmware event. + * qlge: Bonding fix for mode 6. + * PCI: AER: fix aer inject result in kernel oops + * DMI: allow omitting ident strings in DMI tables + * Input: i8042 - remove identification strings from DMI tables + * Input: i8042 - add Gigabyte M1022M to the noloop list + * Input: i8042 - add Dritek quirk for Acer Aspire 5610. + * ALSA: hda - select IbexPeak handler for Calpella + * ALSA: hda - Fix quirk for Maxdata obook4-1 + * ALSA: hda - Add missing Line-Out and PCM switches as slave + * iTCO_wdt.c - cleanup chipset documentation + * iTCO_wdt: add PCI ID for the Intel EP80579 (Tolapai) SoC + * iTCO_wdt: Add Intel Cougar Point and PCH DeviceIDs + * ahci: disable SNotification capability for ich8 + * ata_piix: fix MWDMA handling on PIIX3 + * md: fix small irregularity with start_ro module parameter + * V4L/DVB (13826): uvcvideo: Fix controls blacklisting + * cio: fix double free in case of probe failure + * cio: dont panic in non-fatal conditions + * netiucv: displayed TX bytes value much too high + * ipc ns: fix memory leak (idr) + * ALSA: hda - Fix HP T5735 automute + * hwmon: (fschmd) Fix a memleak on multiple opens of /dev/watchdog + * UBI: fix memory leak in update path + * UBI: initialise update marker + * ASoC: fix a memory-leak in wm8903 + * mac80211: check that ieee80211_set_power_mgmt only handles STA + interfaces. + * cfg80211: fix channel setting for wext + * KVM: S390: fix potential array overrun in intercept handling + * KVM: only allow one gsi per fd + * KVM: Fix race between APIC TMR and IRR + * KVM: MMU: bail out pagewalk on kvm_read_guest error + * KVM: x86: Fix host_mapping_level() + * KVM: x86: Fix probable memory leak of vcpu->arch.mce_banks + * KVM: x86: Fix leak of free lapic date in kvm_arch_vcpu_init() + * KVM: fix lock imbalance in kvm_*_irq_source_id() + * KVM: only clear irq_source_id if irqchip is present + * IPoIB: Clear ipoib_neigh.dgid in ipoib_neigh_alloc() + * x86: Reenable TSC sync check at boot, even with NONSTOP_TSC + * ACPI: enable C2 and Turbo-mode on Nehalem notebooks on A/C + - LP: #516325 + * iwlwifi: Fix throughput stall issue in HT mode for 5000 + * fnctl: f_modown should call write_lock_irqsave/restore + * x86, msr/cpuid: Pass the number of minors when unregistering MSR and + CPUID drivers. + * Linux 2.6.32.7 + * scsi_lib: Fix bug in completion of bidi commands + * mptsas: Fix issue with chain pools allocation on katmai + * mm: add new 'read_cache_page_gfp()' helper function + * drm/i915: Selectively enable self-reclaim + * firewire: ohci: fix crashes with TSB43AB23 on 64bit systems + * S390: fix single stepped svcs with TRACE_IRQFLAGS=y + * x86: Set hotpluggable nodes in nodes_possible_map + * x86: Remove "x86 CPU features in debugfs" (CONFIG_X86_CPU_DEBUG) + * libata: retry FS IOs even if it has failed with AC_ERR_INVALID + * zcrypt: Do not remove coprocessor for error 8/72 + * dasd: fix possible NULL pointer errors + * ACPI: Add a generic API for _OSC -v2 + * ACPI: Add platform-wide _OSC support. + * ACPI: fix OSC regression that caused aer and pciehp not to load + * ACPI: Advertise to BIOS in _OSC: _OST on _PPC changes + * UBI: fix volume creation input checking + * e1000/e1000e: don't use small hardware rx buffers + * drm/i915: Reload hangcheck timer too for Ironlake + * Fix a leak in affs_fill_super() + * Fix failure exits in bfs_fill_super() + * fix oops in fs/9p late mount failure + * fix leak in romfs_fill_super() + * Fix remount races with symlink handling in affs + * fix affs parse_options() + * Fix failure exit in ipathfs + * mm: fix migratetype bug which slowed swapping + * FDPIC: Respect PT_GNU_STACK exec protection markings when creating + NOMMU stack + * Split 'flush_old_exec' into two functions + * sparc: TIF_ABI_PENDING bit removal + * x86: get rid of the insane TIF_ABI_PENDING bit + * Input: winbond-cir - remove dmesg spam + * x86: Disable HPET MSI on ATI SB700/SB800 + * iwlwifi: set default aggregation frame count limit to 31 + * drm/i915: only enable hotplug for detected outputs + * firewire: core: add_descriptor size check + * SECURITY: selinux, fix update_rlimit_cpu parameter + * regulator: Specify REGULATOR_CHANGE_STATUS for WM835x LED constraints + * x86: Add Dell OptiPlex 760 reboot quirk + - LP: #488319 + * x86: Add quirk for Intel DG45FC board to avoid low memory corruption + * x86/amd-iommu: Fix possible integer overflow + * clocksource: fix compilation if no GENERIC_TIME + * tcp: update the netstamp_needed counter when cloning sockets + * sky2: Fix oops in sky2_xmit_frame() after TX timeout + * net: restore ip source validation + * af_packet: Don't use skb after dev_queue_xmit() + * ax25: netrom: rose: Fix timer oopses + * KVM: allow userspace to adjust kvmclock offset + * oprofile/x86: add Xeon 7500 series support + * oprofile/x86: fix crash when profiling more than 28 events + * libata: retry link resume if necessary + * mm: percpu-vmap fix RCU list walking + * mm: purge fragmented percpu vmap blocks + * block: fix bio_add_page for non trivial merge_bvec_fn case + * Fix 'flush_old_exec()/setup_new_exec()' split + * random: drop weird m_time/a_time manipulation + * random: Remove unused inode variable + * block: fix bugs in bio-integrity mempool usage + * usb: r8a66597-hdc disable interrupts fix + * connector: Delete buggy notification code. + * be2net: Bug fix to support newer generation of BE ASIC + * be2net: Fix memset() arg ordering. + * mm: flush dcache before writing into page to avoid alias + * mac80211: fix NULL pointer dereference when ftrace is enabled + * imxfb: correct location of callbacks in suspend and resume + * mx3fb: some debug and initialisation fixes + * starfire: clean up properly if firmware loading fails + * kernel/cred.c: use kmem_cache_free + * uartlite: fix crash when using as console + * pktcdvd: removing device does not remove its sysfs dir + * ath9k: fix eeprom INI values override for 2GHz-only cards + * ath9k: fix beacon slot/buffer leak + * powerpc: TIF_ABI_PENDING bit removal + * NET: fix oops at bootime in sysctl code + * Linux 2.6.32.8 + + -- Andy Whitcroft Wed, 10 Feb 2010 18:56:52 +0000 + +linux (2.6.32-12.17) lucid; urgency=low + + [ Andy Whitcroft ] + + * restore linux-image prefix -- master + * enforce -- we require SELINUX enabled -- master + * enforce -- ensure APPARMOR is our default LSM -- master + * make doc package completely optional -- master + * make source package completely optional -- master + * make linux-libc-dev completly optional -- master + * convert package disable to a deps list -- master + * allow common headers to switch from indep to arch -- master + * convert binary package disable to a deps list -- master + * add configuration option for a full source build tree -- master + * add support for uImage kernels in package control scripts + * getabis -- cleanup and parameterise repository list -- master + * getabis -- move configuration to etc/getabi -- master + * kernelconfig -- move configuration to etc -- master + * rules -- make debian/debian.env master for branch name + * set the current branch name -- master + * pull back common debian.master files into debian -- master + * enforcer -- make the enforcement configuration common + * insert-changes -- correctly link to debian/rules in DROOT + + [ Colin Watson ] + + * future-proof ddeb handling against buildd changes + + [ Eric Miao ] + + * SAUCE: Make CONFIG_{OMNIBOOK, AVERATEC_5100P, PACKARDBELL_E5} depend on + X86 + + [ Loïc Minier ] + + * Add modules.builtin.bin to prerm rm list + - LP: #516584 + + [ Tim Gardner ] + + * [Config] Implement the amd64 preempt flavour + + [ Upstream Kernel Changes ] + + * syslog: distinguish between /proc/kmsg and syscalls + - LP: #515623 + * sfc: Fix polling for slow MCDI operations + * sfc: Fix conditions for MDIO self-test + * sfc: QT202x: Remove unreliable MMD check at initialisation + * sfc: Add workspace for GMAC bug workaround to MCDI MAC_STATS buffer + * sfc: Use fixed-size buffers for MCDI NVRAM requests + + -- Andy Whitcroft Fri, 05 Feb 2010 07:09:31 +0000 + +linux (2.6.32-12.16) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: acpi battery -- delay first lookup of the battery until + first use" + * SAUCE: acpi battery -- move first lookup asynchronous + - LP: #507211 + * [Config] update configs to cleanup generic configs + * [Config] disable CONFIG_X86_CPU_DEBUG for amd64 + * [Config] enable USER_NS + - LP: #480739, #509808 + + [ Heiko Carstens ] + + * (pre-stable) driver-core: fix devtmpfs crash on s390 + - LP: #512370 + + [ John Johansen ] + + * [Config] for server and virtual flavours make CONFIG_SCSI_SYM53C8XX_2=y + - LP: #494565 + * [Config] VIRTIO=y for server/virtual flavours + - LP: #494565 + + [ Kay Sievers ] + + * (pre-stable) Driver-Core: devtmpfs - set root directory mode to 0755 + - LP: #512370 + + [ Kees Cook ] + + * SAUCE: x86: brk away from exec rand area + - LP: #452175 + + [ Leann Ogasawara ] + + * [Upstream] e1000: enhance frame fragment detection + - CVE-2009-4536 + * [Upstream] e1000e: enhance frame fragment detection + - CVE-2009-4538 + + [ Sebastian Kapfer ] + + * (pre-stable) Input: ALPS - add interleaved protocol support (Dell E6x00 + series) + - LP: #296610 + + [ Upstream Kernel Changes ] + + * inotify: do not reuse watch descriptors + - LP: #485556 + * inotify: only warn once for inotify problems + * revert "drivers/video/s3c-fb.c: fix clock setting for Samsung SoC + Framebuffer" + * memcg: ensure list is empty at rmdir + * drm/i915: remove loop in Ironlake interrupt handler + * block: Fix incorrect reporting of partition alignment + * x86, mce: Thermal monitoring depends on APIC being enabled + * futexes: Remove rw parameter from get_futex_key() + * page allocator: update NR_FREE_PAGES only when necessary + * x86, apic: use physical mode for IBM summit platforms + * edac: i5000_edac critical fix panic out of bounds + * x86: SGI UV: Fix mapping of MMIO registers + * mfd: WM835x GPIO direction register is not locked + * mfd: Correct WM835x ISINK ramp time defines + * ALSA: hda - Fix missing capture mixer for ALC861/660 codecs + * V4L/DVB (13868): gspca - sn9c20x: Fix test of unsigned. + * reiserfs: truncate blocks not used by a write + * HID: add device IDs for new model of Apple Wireless Keyboard + * PCI/cardbus: Add a fixup hook and fix powerpc + * Input: pmouse - move Sentelic probe down the list + * asus-laptop: add Lenovo SL hotkey support + * sched: Fix cpu_clock() in NMIs, on !CONFIG_HAVE_UNSTABLE_SCHED_CLOCK + * sparc64: Fix NMI programming when perf events are active. + * sparc64: Fix Niagara2 perf event handling. + * i2c: Do not use device name after device_unregister + * i2c/pca: Don't use *_interruptible + * serial/8250_pnp: add a new Fujitsu Wacom Tablet PC device + * sched: Fix task priority bug + * vfs: Fix vmtruncate() regression + * Linux 2.6.32.5 + * x86, msr/cpuid: Register enough minors for the MSR and CPUID drivers + * V4L/DVB (13900): gspca - sunplus: Fix bridge exchanges. + * Staging: asus_oled: fix oops in 2.6.32.2 + * Staging: hv: fix smp problems in the hyperv core code + * tty: fix race in tty_fasync + * ecryptfs: use after free + * ecryptfs: initialize private persistent file before dereferencing + pointer + * nozomi: quick fix for the close/close bug + * serial: 8250_pnp: use wildcard for serial Wacom tablets + * usb: serial: fix memory leak in generic driver + * USB: fix bitmask merge error + * USB: Don't use GFP_KERNEL while we cannot reset a storage device + * USB: EHCI: fix handling of unusual interrupt intervals + * USB: EHCI & UHCI: fix race between root-hub suspend and port resume + * USB: add missing delay during remote wakeup + * USB: add speed values for USB 3.0 and wireless controllers + * ACPI: EC: Accelerate query execution + * ACPI: EC: Add wait for irq storm + * SCSI: enclosure: fix oops while iterating enclosure_status array + * drm/i915: Read the response after issuing DDC bus switch command + * drm/i915: try another possible DDC bus for the SDVO device with + multiple outputs + * block: bdev_stack_limits wrapper + * DM: Fix device mapper topology stacking + * x86/PCI/PAT: return EINVAL for pci mmap WC request for !pat_enabled + * USB: fix usbstorage for 2770:915d delivers no FAT + * vmalloc: remove BUG_ON due to racy counting of VM_LAZY_FREE + * perf timechart: Use tid not pid for COMM change + * perf events: Dont report side-band events on each cpu for + per-task-per-cpu events + * perf: Honour event state for aux stream data + * Linux 2.6.32.6 + + -- Andy Whitcroft Wed, 27 Jan 2010 16:40:23 +0000 + +linux (2.6.32-11.15) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "(pre-stable) drm/radeon/kms: fix crtc vblank update for r600" + * Revert "(pre-stable) sched: Fix balance vs hotplug race" + * Revert "[Upstream] acerhdf: Limit modalias matching to supported + boards" + * Revert "[Upstream] mmc: prevent dangling block device from accessing + stale queues" + * Revert "SAUCE: Fix nx_enable reporting" + * Revert "SAUCE: [x86] fix report of cs-limit nx-emulation" + * Revert "SAUCE: [x86] implement cs-limit nx-emulation for ia32" + * SAUCE: i915 -- disable powersave by default + - LP: #492392 + + [ Kees Cook ] + + * SAUCE: [x86] implement cs-limit nx-emulation for ia32 + - LP: #369978 + * SAUCE: [x86] fix report of cs-limit nx-emulation + - LP: #454285 + * SAUCE: Fix nx_enable reporting + - LP: #454285 + + [ Tim Gardner ] + + * [Upstream] b43: Declare all possible firmware files. + - LP: #488636 + * [Config] updateconfigs after adding pvscsi + - LP: #497156 + * [Config] CONFIG_BT=m + + [ Upstream Kernel Changes ] + + * Revert "x86: Side-step lguest problem by only building cmpxchg8b_emu + for pre-Pentium" + * SCSI: ipr: fix EEH recovery + * SCSI: qla2xxx: dpc thread can execute before scsi host has been added + * SCSI: st: fix mdata->page_order handling + * SCSI: fc class: fix fc_transport_init error handling + * sched: Fix task_hot() test order + * x86, cpuid: Add "volatile" to asm in native_cpuid() + * sched: Select_task_rq_fair() must honour SD_LOAD_BALANCE + * clockevents: Prevent clockevent_devices list corruption on cpu hotplug + * pata_hpt3x2n: fix clock turnaround + * pata_cmd64x: fix overclocking of UDMA0-2 modes + * ASoC: wm8974: fix a wrong bit definition + * sound: sgio2audio/pdaudiocf/usb-audio: initialize PCM buffer + * ALSA: hda - Fix missing capsrc_nids for ALC88x + * acerhdf: limit modalias matching to supported + - LP: #435958 + * ACPI: EC: Fix MSI DMI detection + * ACPI: Use the return result of ACPI lid notifier chain correctly + * powerpc: Handle VSX alignment faults correctly in little-endian mode + * ASoC: Do not write to invalid registers on the wm9712. + * drm/radeon: fix build on 64-bit with some compilers. + * USB: emi62: fix crash when trying to load EMI 6|2 firmware + * USB: option: support hi speed for modem Haier CE100 + * USB: Fix a bug on appledisplay.c regarding signedness + * USB: musb: gadget_ep0: avoid SetupEnd interrupt + * Bluetooth: Prevent ill-timed autosuspend in USB driver + * USB: rename usb_configure_device + * USB: fix bugs in usb_(de)authorize_device + * drivers/net/usb: Correct code taking the size of a pointer + * x86: SGI UV: Fix writes to led registers on remote uv hubs + * md: Fix unfortunate interaction with evms + * dma: at_hdmac: correct incompatible type for argument 1 of + 'spin_lock_bh' + * dma-debug: Do not add notifier when dma debugging is disabled. + * dma-debug: Fix bug causing build warning + * cifs: NULL out tcon, pSesInfo, and srvTcp pointers when chasing DFS + referrals + * x86/amd-iommu: Fix initialization failure panic + * ioat3: fix p-disabled q-continuation + * ioat2,3: put channel hardware in known state at init + * KVM: MMU: remove prefault from invlpg handler + * KVM: LAPIC: make sure IRR bitmap is scanned after vm load + * Libertas: fix buffer overflow in lbs_get_essid() + * iwmc3200wifi: fix array out-of-boundary access + * mac80211: fix propagation of failed hardware reconfigurations + * mac80211: fix WMM AP settings application + * mac80211: Fix IBSS merge + * cfg80211: fix race between deauth and assoc response + * ath5k: fix SWI calibration interrupt storm + * ath9k: wake hardware for interface IBSS/AP/Mesh removal + * ath9k: Fix TX queue draining + * ath9k: fix missed error codes in the tx status check + * ath9k: wake hardware during AMPDU TX actions + * ath9k: fix suspend by waking device prior to stop + * ath9k_hw: Fix possible OOB array indexing in gen_timer_index[] on + 64-bit + * ath9k_hw: Fix AR_GPIO_INPUT_EN_VAL_BT_PRIORITY_BB and its shift value + in 0x4054 + * iwl3945: disable power save + * iwl3945: fix panic in iwl3945 driver + * iwlwifi: fix EEPROM/OTP reading endian annotations and a bug + * iwlwifi: fix more eeprom endian bugs + * iwlwifi: fix 40MHz operation setting on cards that do not allow it + * mac80211: fix race with suspend and dynamic_ps_disable_work + * NOMMU: Optimise away the {dac_,}mmap_min_addr tests + * 'sysctl_max_map_count' should be non-negative + * kernel/sysctl.c: fix the incomplete part of + sysctl_max_map_count-should-be-non-negative.patch + * V4L/DVB (13596): ov511.c typo: lock => unlock + * x86/ptrace: make genregs[32]_get/set more robust + * memcg: avoid oom-killing innocent task in case of use_hierarchy + * e100: Fix broken cbs accounting due to missing memset. + * ipv6: reassembly: use seperate reassembly queues for conntrack and + local delivery + * netfilter: fix crashes in bridge netfilter caused by fragment jumps + * hwmon: (sht15) Off-by-one error in array index + incorrect constants + * b43: avoid PPC fault during resume + * Keys: KEYCTL_SESSION_TO_PARENT needs TIF_NOTIFY_RESUME architecture + support + * sched: Fix balance vs hotplug race + * drm/radeon/kms: fix crtc vblank update for r600 + * drm: disable all the possible outputs/crtcs before entering KMS mode + * S390: dasd: support DIAG access for read-only devices + * xen: fix is_disconnected_device/exists_disconnected_device + * xen: improvement to wait_for_devices() + * xen: wait up to 5 minutes for device connetion + * orinoco: fix GFP_KERNEL in orinoco_set_key with interrupts disabled + * udf: Try harder when looking for VAT inode + * Add unlocked version of inode_add_bytes() function + * quota: decouple fs reserved space from quota reservation + * ext4: Convert to generic reserved quota's space management. + * ext4: fix sleep inside spinlock issue with quota and dealloc (#14739) + * x86, msr: Unify rdmsr_on_cpus/wrmsr_on_cpus + * cpumask: use modern cpumask style in drivers/edac/amd64_edac.c + * amd64_edac: unify MCGCTL ECC switching + * x86, msr: Add support for non-contiguous cpumasks + * x86, msr: msrs_alloc/free for CONFIG_SMP=n + * amd64_edac: fix driver instance freeing + * amd64_edac: make driver loading more robust + * amd64_edac: fix forcing module load/unload + * sched: Sched_rt_periodic_timer vs cpu hotplug + * ext4: Update documentation to correct the inode_readahead_blks option + name + * lguest: fix bug in setting guest GDT entry + * vmscan: do not evict inactive pages when skipping an active list scan + * ksm: fix mlockfreed to munlocked + * rt2x00: Disable powersaving for rt61pci and rt2800pci. + * generic_permission: MAY_OPEN is not write access + * Linux 2.6.32.3 + * untangle the do_mremap() mess + * fasync: split 'fasync_helper()' into separate add/remove functions + * ASoC: fix params_rate() macro use in several codecs + * modules: Skip empty sections when exporting section notes + * exofs: simple_write_end does not mark_inode_dirty + * nfsd: make sure data is on disk before calling ->fsync + * sunrpc: fix peername failed on closed listener + * SUNRPC: Fix up an error return value in + gss_import_sec_context_kerberos() + * SUNRPC: Fix the return value in gss_import_sec_context() + * sunrpc: on successful gss error pipe write, don't return error + * drm/i915: Update LVDS connector status when receiving ACPI LID event + * drm/i915: fix order of fence release wrt flushing + * drm/i915: Permit pinning whilst the device is 'suspended' + * drm: remove address mask param for drm_pci_alloc() + * drm/i915: Enable/disable the dithering for LVDS based on VBT setting + * drm/i915: Make the BPC in FDI rx/transcoder be consistent with that in + pipeconf on Ironlake + * drm/i915: Select the correct BPC for LVDS on Ironlake + * drm/i915: fix unused var + * rtc_cmos: convert shutdown to new pnp_driver->shutdown + * drivers/cpuidle/governors/menu.c: fix undefined reference to + `__udivdi3' + * cgroups: fix 2.6.32 regression causing BUG_ON() in cgroup_diput() + * lib/rational.c needs module.h + * dma-debug: allow DMA_BIDIRECTIONAL mappings to be synced with + DMA_FROM_DEVICE and + * kernel/signal.c: fix kernel information leak with print-fatal-signals=1 + * mmc_block: add dev_t initialization check + * mmc_block: fix probe error cleanup bug + * mmc_block: fix queue cleanup + * ALSA: hda - Fix ALC861-VD capture source mixer + * ALSA: ac97: Add Dell Dimension 2400 to Headphone/Line Jack Sense + blacklist + * ALSA: atiixp: Specify codec for Foxconn RC4107MA-RS2 + - LP: #498863 + * ASoC: Fix WM8350 DSP mode B configuration + * netfilter: ebtables: enforce CAP_NET_ADMIN + * netfilter: nf_ct_ftp: fix out of bounds read in update_nl_seq() + * hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs + * hwmon: (adt7462) Fix pin 28 monitoring + * quota: Fix dquot_transfer for filesystems different from ext4 + * xen: fix hang on suspend. + * iwlwifi: fix iwl_queue_used bug when read_ptr == write_ptr + * ath5k: Fix eeprom checksum check for custom sized eeproms + * cfg80211: fix syntax error on user regulatory hints + * iwl: off by one bug + * mac80211: add missing sanity checks for action frames + * drm/i915: remove render reclock support + * libertas: Remove carrier signaling from the scan code + * kernel/sysctl.c: fix stable merge error in NOMMU mmap_min_addr + * mac80211: fix skb buffering issue (and fixes to that) + * fix braindamage in audit_tree.c untag_chunk() + * fix more leaks in audit_tree.c tag_chunk() + * module: handle ppc64 relocating kcrctabs when CONFIG_RELOCATABLE=y + * ipv6: skb_dst() can be NULL in ipv6_hop_jumbo(). + * agp/intel-agp: Clear entire GTT on startup + * Linux 2.6.32.4 + * ethtool: Add reset operation + * gro: Name the GRO result enumeration type + * gro: Change all receive functions to return GRO result codes + * sfc: 10Xpress: Initialise pause advertising flags + * sfc: 10Xpress: Report support for pause frames + * sfc: Remove redundant header gmii.h + * sfc: Remove redundant hardware initialisation + * sfc: Rename Falcon-specific board code and types + * sfc: Remove boards.h, moving last remaining declaration to falcon.h + * sfc: Remove versioned bitfield macros + * sfc: Move RX data FIFO thresholds out of struct efx_nic_type + * sfc: Update hardware definitions for Siena + * sfc: Rename register I/O header and functions used by both Falcon and + Siena + * sfc: Eliminate indirect lookups of queue size constants + * sfc: Define DMA address mask explicitly in terms of descriptor field + width + * sfc: Move all TX DMA length limiting into tx.c + * sfc: Change order of device removal to reverse of probe order + * sfc: Remove declarations of nonexistent functions + * sfc: Move efx_xmit_done() declaration into correct stanza + * sfc: Move shared members of struct falcon_nic_data into struct efx_nic + * sfc: Maintain interrupt moderation values in ticks, not microseconds + * sfc: Removed kernel-doc for nonexistent member of efx_phy_operations + * sfc: Remove pointless abstraction of memory BAR number + * sfc: Remove incorrect assertion from efx_pci_remove_main() + * sfc: Remove unnecessary tests of efx->membase + * sfc: Move MTD probe after netdev registration and name allocation + * sfc: Remove unused code for non-autoneg speed/duplex switching + * sfc: Rename 'xfp' file and functions to reflect reality + * sfc: Really allow RX checksum offload to be disabled + * sfc: Feed GRO result into RX allocation policy and interrupt moderation + * sfc: Enable heuristic selection between page and skb RX buffers + * sfc: Remove pointless abstraction of memory BAR number (2) + * sfc: Remove redundant gotos from __efx_rx_packet() + * sfc: Remove ridiculously paranoid assertions + * sfc: Move assertions and buffer cleanup earlier in efx_rx_packet_lro() + * sfc: Record RX queue number on GRO path + * sfc: SFT9001: Reset LED configuration correctly after blinking + * sfc: Use a single blink implementation + * sfc: Rename efx_board::init_leds to init_phy and use for SFN4111T + * sfc: Make board information explicitly Falcon-specific + * sfc: Move definition of struct falcon_nic_data into falcon.h + * sfc: Move struct falcon_board into struct falcon_nic_data + * sfc: Move all I2C stuff into struct falcon_board + * sfc: Gather link state fields in struct efx_nic into new struct + efx_link_state + * sfc: Remove unnecessary casts to struct sk_buff * + * sfc: Remove redundant efx_xmit() function + * sfc: Combine high-level header files + * sfc: Log interrupt and reset type names, not numbers + * sfc: Fix descriptor cache sizes + * sfc: Treat all MAC registers as 128-bit + * sfc: Strengthen EFX_ASSERT_RESET_SERIALISED + * sfc: Comment corrections + * sfc: Remove unused constant + * sfc: Clean up struct falcon_board and struct falcon_board_data + * sfc: Fix bugs in RX queue flushing + * sfc: Remove unused function efx_flush_queues() + * sfc: Only switch Falcon MAC clocks as necessary + * sfc: Hold MAC lock for longer in efx_init_port() + * sfc: Split MAC stats DMA initiation and completion + * sfc: Move Falcon board/PHY/MAC monitoring code to falcon.c + * sfc: Simplify XMAC link polling + * sfc: Change MAC promiscuity and multicast hash at the same time + * sfc: Move inline comment into kernel-doc + * sfc: Do not set net_device::trans_start in self-test + * sfc: Simplify PHY polling + * sfc: QT202x: Reset before reading PHY id + * sfc: Replace MDIO spinlock with mutex + * sfc: Always start Falcon using the XMAC + * sfc: Limit some hardware workarounds to Falcon + * sfc: Remove EFX_WORKAROUND_9141 macro + * sfc: Remove another unused workaround macro + * sfc: Remove some redundant whitespace + * sfc: Decouple NIC revision number from Falcon PCI revision number + * sfc: Move descriptor cache base addresses to struct efx_nic_type + * sfc: Clean up RX event handling + * sfc: Remove redundant writes to INT_ADR_KER + * sfc: Remove duplicate hardware structure definitions + * sfc: Turn pause frame generation on and off at the MAC, not the RX FIFO + * sfc: Move Falcon NIC operations to efx_nic_type + * sfc: Refactor link configuration + * sfc: Generalise link state monitoring + * sfc: Add power-management and wake-on-LAN support + * sfc: Implement ethtool reset operation + * sfc: Add efx_nic_type operation for register self-test + * sfc: Add efx_nic_type operation for NVRAM self-test + * sfc: Add efx_nic_type operation for identity LED control + * sfc: Separate shared NIC code from Falcon-specific and rename + accordingly + * sfc: Fold falcon_probe_nic_variant() into falcon_probe_nic() + * sfc: Extend loopback mode enumeration + * sfc: Remove static PHY data and enumerations + * sfc: Extend MTD driver for use with new NICs + * sfc: Allow for additional checksum offload features + * sfc: Rename falcon.h to nic.h + * sfc: Move shared NIC code from falcon.c to new source file nic.c + * sfc: Add firmware protocol definitions (MCDI) + * sfc: Add support for SFC9000 family (1) + * sfc: Add support for SFC9000 family (2) + * sfc: Implement TSO for TCP/IPv6 + * sfc: Update version, copyright dates, authors + * drivers/net/sfc: Correct code taking the size of a pointer + * sfc: Move PHY software state initialisation from init() into probe() + * sfc: Include XGXS in XMAC link status check except in XGMII loopback + * sfc: Fix DMA mapping cleanup in case of an error in TSO + * sfc: QT2025C: Work around PHY bug + * sfc: QT2025C: Switch into self-configure mode when not in loopback + * sfc: QT2025C: Work around PHY firmware initialisation bug + * sfc: QT2025C: Add error message for suspected bad SFP+ cables + * sfc: Disable TX descriptor prefetch watchdog + * [SCSI] vmw_pvscsi: SCSI driver for VMware's virtual HBA. + - LP: #497156 + + -- Andy Whitcroft Tue, 19 Jan 2010 16:12:47 +0000 + +linux (2.6.32-10.14) lucid; urgency=low + + [ Alex Deucher ] + + * SAUCE: drm/radeon/kms: fix LVDS setup on r4xx + - LP: #493795 + + [ Andy Whitcroft ] + + * Revert "(pre-stable) acpi: Use the ARB_DISABLE for the CPU which model + id is less than 0x0f." + * config-check -- ensure the checks get run at build time + * config-check -- check the processed config during updateconfigs + * config-check -- CONFIG_SECCOMP may not be present + * TUN is now built in ignore + * SAUCE: acpi battery -- delay first lookup of the battery until first + use + * SAUCE: async_populate_rootfs: move rootfs init earlier + * ubuntu: AppArmor -- update to mainline 2010-01-06 + * SAUCE: move RLIMIT_CORE pipe dumper marker to 1 + - LP: #498525 + + [ Dave Airlie ] + + * (pre-stable) drm/radeon/kms: fix crtc vblank update for r600 + + [ Leann Ogasawara ] + + * Add asix to nic-usb-modules file + - LP: #499785 + + [ Peter Zijlstra ] + + * (pre-stable) sched: Fix balance vs hotplug race + + [ Tim Gardner ] + + * [Config] Enable CONFIG_FUNCTION_TRACER + - LP: #497989 + * [Config] Drop lpia from getabis + * [Config] Build in TUN/TAP driver + - LP: #499491 + * [Config] DH_COMPAT=5 + + [ Upstream Kernel Changes ] + + * Revert "(pre-stable) drm/i915: Avoid NULL dereference with + component_only tv_modes" + * Revert "(pre-stable) drm/i915: Fix sync to vblank when VGA output is + turned off" + * USB: usb-storage: fix bug in fill_inquiry + * USB: option: add pid for ZTE + * firewire: ohci: handle receive packets with a data length of zero + * rcu: Prepare for synchronization fixes: clean up for non-NO_HZ handling + of ->completed counter + * rcu: Fix synchronization for rcu_process_gp_end() uses of ->completed + counter + * rcu: Fix note_new_gpnum() uses of ->gpnum + * rcu: Remove inline from forward-referenced functions + * perf_event: Fix invalid type in ioctl definition + * perf_event: Initialize data.period in perf_swevent_hrtimer() + * perf: Don't free perf_mmap_data until work has been done + * PM / Runtime: Fix lockdep warning in __pm_runtime_set_status() + * sched: Check for an idle shared cache in select_task_rq_fair() + * sched: Fix affinity logic in select_task_rq_fair() + * sched: Rate-limit newidle + * sched: Fix and clean up rate-limit newidle code + * x86/amd-iommu: attach devices to pre-allocated domains early + * x86/amd-iommu: un__init iommu_setup_msi + * x86, Calgary IOMMU quirk: Find nearest matching Calgary while walking + up the PCI tree + * x86: Fix iommu=nodac parameter handling + * x86: GART: pci-gart_64.c: Use correct length in strncmp + * x86: ASUS P4S800 reboot=bios quirk + - LP: #366682 + * x86, apic: Enable lapic nmi watchdog on AMD Family 11h + * ssb: Fix range check in sprom write + * ath5k: allow setting txpower to 0 + * ath5k: enable EEPROM checksum check + * hrtimer: Fix /proc/timer_list regression + * ALSA: hrtimer - Fix lock-up + * ALSA: hda - Terradici HDA controllers does not support 64-bit mode + * KVM: x86 emulator: limit instructions to 15 bytes + * KVM: s390: Fix prefix register checking in arch/s390/kvm/sigp.c + * KVM: s390: Make psw available on all exits, not just a subset + * KVM: fix irq_source_id size verification + * KVM: x86: include pvclock MSRs in msrs_to_save + * x86: Prevent GCC 4.4.x (pentium-mmx et al) function prologue wreckage + * x86: Use -maccumulate-outgoing-args for sane mcount prologues + * x86, mce: don't restart timer if disabled + * x86/mce: Set up timer unconditionally + * x86: SGI UV: Fix BAU initialization + * x86: Fix duplicated UV BAU interrupt vector + * x86: Add new Intel CPU cache size descriptors + * x86: Fix typo in Intel CPU cache size descriptor + * pata_hpt{37x|3x2n}: fix timing register masks (take 2) + * s390: clear high-order bits of registers after sam64 + * V4L/DVB: Fix test in copy_reg_bits() + * bsdacct: fix uid/gid misreporting + * UBI: flush wl before clearing update marker + * jbd2: don't wipe the journal on a failed journal checksum + * USB: xhci: Add correct email and files to MAINTAINERS entry. + * USB: musb_gadget_ep0: fix unhandled endpoint 0 IRQs, again + * USB: option.c: add support for D-Link DWM-162-U5 + * USB: usbtmc: repeat usb_bulk_msg until whole message is transfered + * USB: usb-storage: add BAD_SENSE flag + * USB: Close usb_find_interface race v3 + * pxa/em-x270: fix usb hub power up/reset sequence + * hfs: fix a potential buffer overflow + * SUNRPC: IS_ERR/PTR_ERR confusion + * NFS: Fix nfs_migrate_page() + * md/bitmap: protect against bitmap removal while being updated. + * futex: Take mmap_sem for get_user_pages in fault_in_user_writeable + * devpts_get_tty() should validate inode + * debugfs: fix create mutex racy fops and private data + * Driver core: fix race in dev_driver_string + * Serial: Do not read IIR in serial8250_start_tx when UART_BUG_TXEN + * mac80211: Fix bug in computing crc over dynamic IEs in beacon + * mac80211: Fixed bug in mesh portal paths + * mac80211: Revert 'Use correct sign for mesh active path refresh' + * mac80211: fix scan abort sanity checks + * wireless: correctly report signal value for IEEE80211_HW_SIGNAL_UNSPEC + * rtl8187: Fix wrong rfkill switch mask for some models + * x86: Fix bogus warning in apic_noop.apic_write() + * mm: hugetlb: fix hugepage memory leak in mincore() + * mm: hugetlb: fix hugepage memory leak in walk_page_range() + * powerpc/windfarm: Add detection for second cpu pump + * powerpc/therm_adt746x: Record pwm invert bit at module load time] + * powerpc: Fix usage of 64-bit instruction in 32-bit altivec code + * drm/radeon/kms: Add quirk for HIS X1300 board + * drm/radeon/kms: handle vblanks properly with dpms on + * drm/radeon/kms: fix legacy crtc2 dpms + * drm/radeon/kms: fix vram setup on rs600 + * drm/radeon/kms: rs6xx/rs740: clamp vram to aperture size + * drm/ttm: Fix build failure due to missing struct page + * drm/i915: Set the error code after failing to insert new offset into mm + ht. + * drm/i915: Add the missing clonemask for display port on Ironlake + * xen/xenbus: make DEVICE_ATTR()s static + * xen: re-register runstate area earlier on resume. + * xen: restore runstate_info even if !have_vcpu_info_placement + * xen: correctly restore pfn_to_mfn_list_list after resume + * xen: register timer interrupt with IRQF_TIMER + * xen: register runstate on secondary CPUs + * xen: don't call dpm_resume_noirq() with interrupts disabled. + * xen: register runstate info for boot CPU early + * xen: call clock resume notifier on all CPUs + * xen: improve error handling in do_suspend. + * xen: don't leak IRQs over suspend/resume. + * xen: use iret for return from 64b kernel to 32b usermode + * xen: explicitly create/destroy stop_machine workqueues outside + suspend/resume region. + * Xen balloon: fix totalram_pages counting. + * xen: try harder to balloon up under memory pressure. + * dm exception store: free tmp_store on persistent flag error + * dm snapshot: only take lock for statustype info not table + * dm crypt: move private iv fields to structs + * dm crypt: restructure essiv error path + * dm: avoid _hash_lock deadlock + * dm snapshot: cope with chunk size larger than origin + * dm crypt: separate essiv allocation from initialisation + * dm crypt: make wipe message also wipe essiv key + * slc90e66: fix UDMA handling + * tcp: Stalling connections: Fix timeout calculation routine + * ip_fragment: also adjust skb->truesize for packets not owned by a + socket + * b44 WOL setup: one-bit-off stack corruption kernel panic fix + * sparc64: Don't specify IRQF_SHARED for LDC interrupts. + * sparc64: Fix overly strict range type matching for PCI devices. + * sparc64: Fix stack debugging IRQ stack regression. + * sparc: Set UTS_MACHINE correctly. + * b43legacy: avoid PPC fault during resume + * tracing: Fix event format export + * ath9k: Fix TX hang poll routine + * ath9k: fix processing of TX PS null data frames + * ath9k: Fix maximum tx fifo settings for single stream devices + * ath9k: fix tx status reporting + * mac80211: Fix dynamic power save for scanning. + * drm/i915: Fix sync to vblank when VGA output is turned off + * memcg: fix memory.memsw.usage_in_bytes for root cgroup + * thinkpad-acpi: fix default brightness_mode for R50e/R51 + * thinkpad-acpi: preserve rfkill state across suspend/resume + * ipw2100: fix rebooting hang with driver loaded + * matroxfb: fix problems with display stability + * acerhdf: add new BIOS versions + * asus-laptop: change light sens default values. + * vmalloc: conditionalize build of pcpu_get_vm_areas() + * ACPI: Use the ARB_DISABLE for the CPU which model id is less than 0x0f. + * net: Fix userspace RTM_NEWLINK notifications. + * ext3: Fix data / filesystem corruption when write fails to copy data + * V4L/DVB (13116): gspca - ov519: Webcam 041e:4067 added. + * bcm63xx_enet: fix compilation failure after get_stats_count removal + * x86: Under BIOS control, restore AP's APIC_LVTTHMR to the BSP value + * drm/i915: Avoid NULL dereference with component_only tv_modes + * drm/i915: PineView only has LVDS and CRT ports + * drm/i915: Fix LVDS stability issue on Ironlake + * mm: sigbus instead of abusing oom + * ipvs: zero usvc and udest + * jffs2: Fix long-standing bug with symlink garbage collection. + * intel-iommu: Detect DMAR in hyperspace at probe time. + * intel-iommu: Apply BIOS sanity checks for interrupt remapping too. + * intel-iommu: Check for an RMRR which ends before it starts. + * intel-iommu: Fix oops with intel_iommu=igfx_off + * intel-iommu: ignore page table validation in pass through mode + * netfilter: xtables: document minimal required version + * perf_event: Fix incorrect range check on cpu number + * implement early_io{re,un}map for ia64 + * Linux 2.6.32.2 + + -- Andy Whitcroft Thu, 07 Jan 2010 15:28:43 +0000 + +linux (2.6.32-9.13) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_B43_PHY_LP + - LP: #493059 + * include modules.builtin in the binary debs + * config-check -- add a configuration enforcer + * config-check -- add a unit-test suite to the checker + * [Config] Enable CONFIG_SYN_COOKIES for versatile + * [Config] Enable CONFIG_SECURITY_SMACK for ports + * [Config] Enable CONFIG_SECURITY_FILE_CAPABILITIES for ports + * [Config] Disable CONFIG_COMPAT_BRK for ports + * getabis -- add armel versatile to the list + + [ Brad Figg ] + + * SAUCE: Increase the default prealloc buffer for HDA audio devices + (non-modem) + + [ Manoj Iyer ] + + * ubuntu: onmibook -- Added missing BOM file + + [ Tim Gardner ] + + * ubuntu: fsam7400 -- Cleanup Makefile + + [ Upstream Kernel Changes ] + + * Revert "ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT" + * signal: Fix alternate signal stack check + * SCSI: scsi_lib_dma: fix bug with dma maps on nested scsi objects + * SCSI: osd_protocol.h: Add missing #include + * SCSI: megaraid_sas: fix 64 bit sense pointer truncation + * ext4: fix potential buffer head leak when add_dirent_to_buf() returns + ENOSPC + * ext4: avoid divide by zero when trying to mount a corrupted file system + * ext4: fix the returned block count if EXT4_IOC_MOVE_EXT fails + * ext4: fix lock order problem in ext4_move_extents() + * ext4: fix possible recursive locking warning in EXT4_IOC_MOVE_EXT + * ext4: plug a buffer_head leak in an error path of ext4_iget() + * ext4: make sure directory and symlink blocks are revoked + * ext4: fix i_flags access in ext4_da_writepages_trans_blocks() + * ext4: journal all modifications in ext4_xattr_set_handle + * ext4: don't update the superblock in ext4_statfs() + * ext4: fix uninit block bitmap initialization when s_meta_first_bg is + non-zero + * ext4: fix block validity checks so they work correctly with meta_bg + * ext4: avoid issuing unnecessary barriers + * ext4: fix error handling in ext4_ind_get_blocks() + * ext4: make trim/discard optional (and off by default) + * ext4: make "norecovery" an alias for "noload" + * ext4: Fix double-free of blocks with EXT4_IOC_MOVE_EXT + * ext4: initialize moved_len before calling ext4_move_extents() + * ext4: move_extent_per_page() cleanup + * jbd2: Add ENOMEM checking in and for + jbd2_journal_write_metadata_buffer() + * ext4: Return the PTR_ERR of the correct pointer in + setup_new_group_blocks() + * ext4: Avoid data / filesystem corruption when write fails to copy data + * ext4: wait for log to commit when umounting + * ext4: remove blocks from inode prealloc list on failure + * ext4: ext4_get_reserved_space() must return bytes instead of blocks + * ext4: quota macros cleanup + * ext4: fix incorrect block reservation on quota transfer. + * ext4: Wait for proper transaction commit on fsync + * ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT + * ext4: Fix potential fiemap deadlock (mmap_sem vs. i_data_sem) + * Linux 2.6.32.1 + * kbuild: generate modules.builtin + * (pre-stable) drm/i915: Fix sync to vblank when VGA output is turned off + - LP: #494461 + * (pre-stable) drm/i915: Avoid NULL dereference with component_only + tv_modes + - LP: #494045 + + [ Zhao Yakui ] + + * (pre-stable) acpi: Use the ARB_DISABLE for the CPU which model id is + less than 0x0f. + - LP: #481765 + + -- Andy Whitcroft Thu, 17 Dec 2009 15:41:21 +0000 + +linux (2.6.32-8.12) lucid; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: AppArmor -- add linux/err.h for ERR_PTR + + -- Andy Whitcroft Sat, 12 Dec 2009 10:56:16 +0000 + +linux (2.6.32-8.11) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: default ATI Radeon KMS to off until userspace catches + up" + * Revert "SAUCE: AppArmor: Fix oops there is no tracer and doing unsafe + transition." + * Revert "SAUCE: AppArmor: Fix refcounting bug causing leak of creds" + * Revert "SAUCE: AppArmor: Fix cap audit_caching preemption disabling" + * Revert "SAUCE: AppArmor: Fix Oops when in apparmor_bprm_set_creds" + * Revert "SAUCE: AppArmor: Fix oops after profile removal" + * Revert "SAUCE: AppArmor: AppArmor disallows truncate of deleted files." + * Revert "SAUCE: AppArmor: AppArmor fails to audit change_hat correctly" + * Revert "SAUCE: AppArmor: Policy load and replacement can fail to alloc + mem" + * Revert "SAUCE: AppArmor: AppArmor wrongly reports allow perms as + denied" + * Revert "SAUCE: AppArmor: Fix mediation of "deleted" paths" + * Revert "SAUCE: AppArmor: Fix off by 2 error in getprocattr mem + allocation" + * Revert "SAUCE: AppArmor: Set error code after structure + initialization." + * Revert "AppArmor -- fix pstrace_may_access rename" + * Revert "ubuntu: AppArmor security module" + * Revert "SAUCE: Add config option to set a default LSM" + * Revert "ubuntu: fsam7400 -- sw kill switch driver" + * Revert "[Config] fsam7400 -- enable" + * Revert "[Config] AUFS -- enable" + * Revert "ubuntu: AUFS -- aufs2-30 20090727" + * Revert "ubuntu: AUFS -- export various core functions -- fixes" + * Revert "ubuntu: AUFS -- export various core functions" + * Revert "[Config] ubuntu/iscsitarget -- disable" + * Revert "[Config] iscsitarget -- enable" + * Revert "ubuntu: iscsitarget -- SVN revision r214" + * update Vcs-Git to point to the correct repository + - LP: #493589 + * update build environment overrides to lucid + - LP: #493589 + * [Config] enable CONFIG_DEVTMPFS + * [Config] update all configs following AppArmor 2009-12-08 update + * SAUCE: isapnp_init: make isa PNP scans occur async + * [Config] fsam7400 -- enable + * [Config] omnibook -- enable + * [Config] cleanup CONFIG_AUDIT + * ubuntu: AUFS -- export various core functions (aufs2-base.patch) + * ubuntu: AUFS -- export various core functions (aufs2-standalone.patch) + * ubuntu: AUFS -- aufs2 20091209 + * [Config] AUFS -- enable + * [Config] iscsitarget -- enable + + [ Arjan van de Ven ] + + * SAUCE: KMS: cache the EDID information of the LVDS + + [ Colin Watson ] + + * bnx2: update d-i firmware filenames + - LP: #494052 + * add cdc_ether to nic-usb-modules udeb + - LP: #495060 + + [ John Johansen ] + + * ubuntu: AppArmor -- mainline 2009-10-08 + + [ Manoj Iyer ] + + * ubuntu: fsam7400 -- kill switch for Fujitsu Siemens Amilo M 7400 + * ubuntu: omnibook -- support Toshiba (HP) netbooks + * ubuntu: iscsitarget --- version 1.4.19 + - LP: #494693 + + [ Surbhi Palande ] + + * SAUCE: Make populate_rootfs asynchronous + + [ Tim Gardner ] + + * Parallelize flavour builds and packaging + * [Config] Enable CONFIG_KSM + + [ Upstream Kernel Changes ] + + * Config option to set a default LSM + * LSM: Add security_path_chroot(). + * LSM: Add security_path_chroot(). + * LSM: Move security_path_chmod()/security_path_chown() to after + mutex_lock(). + * ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT + + -- Andy Whitcroft Fri, 11 Dec 2009 17:45:19 +0000 + +linux (2.6.32-7.10) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable CONFIG_THUMB2_KERNEL to fix arm FTBFS + + -- Andy Whitcroft Sun, 06 Dec 2009 12:56:48 +0000 + +linux (2.6.32-7.9) lucid; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: set /proc/acpi/video/*/DOS to 4 by default + - LP: #458982 + * SAUCE: ensure vga16fb loads if no other driver claims the VGA device + * [Config] update configs following versatile switch to V7 + * rebased to v2.6.32 + * [Config] update configs following rebase to v2.6.32 + * [Config] update ports configs following rebase to v2.6.32 + * SAUCE: default ATI Radeon KMS to off until userspace catches up + + [ Arjan van de Ven ] + + * SAUCE: vfs: Add a trace point in the mark_inode_dirty function + + [ Leann Ogasawara ] + + * [SCSI] megaraid_sas: remove sysfs poll_mode_io world writeable + permissions + - CVE-2009-3939 + + [ Loic Minier ] + + * SAUCE: select a v7 CPU for versatile + + [ Takashi Iwai ] + + * SAUCE: ALSA: hda - Add power on/off counter + + [ Upstream changes ] + + * rebased to v2.6.32 + + -- Andy Whitcroft Fri, 04 Dec 2009 10:44:50 +0000 + +linux (2.6.32-6.8) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable SSB devices for armel + + -- Andy Whitcroft Sat, 28 Nov 2009 12:16:40 +0000 + +linux (2.6.32-6.7) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: default ATI Radeon KMS to off until userspace catches up" + * Revert "SAUCE: Dell XPS710 reboot quirk" + * Revert "SAUCE: Link acpi-cpufreq.o first" + * Revert "SAUCE: LPIA Logical reset of USB port on resume" + * Revert "SAUCE: LPIA Reboot fix for Intel Crownbeach development boards" + * Revert "SAUCE: Enable HDMI audio codec on Studio XPS 1340" + * Revert "SAUCE: Dell laptop digital mic does not work, PCI 1028:0271" + * Revert "Add Dell Dimension 9200 reboot quirk" + * Revert "SAUCE: Correctly blacklist Thinkpad r40e in ACPI" + * Revert "SAUCE: tulip: Define ULI PCI ID's" + * Revert "SAUCE: Lower warning level of some PCI messages" + * Revert "mac80211: fix two issues in debugfs" + Drop a number of known redundant commits as identified in the Ubuntu + delta review blueprint. + + * reenable armel versatile flavour + * [Config] disable CONFIG_USB_DEVICEFS + + [ Tim Gardner ] + + * [Config] udeb: Add squashfs to fs-core-modules + - LP: #352615 + * [Config] Create a real squashfs udeb + - LP: #352615 + + + -- Andy Whitcroft Fri, 27 Nov 2009 17:31:16 +0000 + +linux (2.6.32-5.6) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.32-rc8 + * update configs following rebase to v2.6.32-rc8 + * update ports configs since rebase to v2.6.32-rc8 + * [Config] enable cgroup options + - LP: #480739 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc8 + + -- Andy Whitcroft Mon, 23 Nov 2009 11:16:14 +0000 + +linux (2.6.32-4.5) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] SERIO_LIBPS2 and SERIO_I8042 must match + * rebase to v2.6.32-rc7 + * resync with Karmic proposed + + [ John Johansen ] + + * SAUCE: AppArmor: Fix oops after profile removal + - LP: #475619 + * SAUCE: AppArmor: Fix Oops when in apparmor_bprm_set_creds + - LP: #437258 + * SAUCE: AppArmor: Fix cap audit_caching preemption disabling + - LP: #479102 + * SAUCE: AppArmor: Fix refcounting bug causing leak of creds + - LP: #479115 + * SAUCE: AppArmor: Fix oops there is no tracer and doing unsafe + transition. + - LP: #480112 + + [ Ubuntu Changes ] + + * resync with Karmic proposed (ddbc670a86a3dee18541a3734149f250ff307adf) + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc7 + + -- Andy Whitcroft Fri, 13 Nov 2009 11:35:13 +0000 + +linux (2.6.32-3.4) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] SERIO_LIBPS2 and SERIO_I8042 must match + * [Upstream] add local prefix to oss local change_bits + + [ Upstream Kernel Changes ] + + * mtd/maps: gpio-addr-flash: pull in linux/ headers rather than asm/ + * mtd/maps: gpio-addr-flash: depend on GPIO arch support + + -- Andy Whitcroft Wed, 11 Nov 2009 14:47:04 +0000 + +linux (2.6.32-3.3) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.32-rc6 + * [Config] update configs following rebase to v2.6.32-rc6 + * [Config] update ports configs following rebase to v2.6.32-rc6 + * resync with Karmic Ubuntu-2.6.31-15.49 + * [Config] add module ignores for broken drivers + + [ John Johansen ] + + * SAUCE: AppArmor: AppArmor wrongly reports allow perms as denied + - LP: #453335 + * SAUCE: AppArmor: Policy load and replacement can fail to alloc mem + - LP: #458299 + * SAUCE: AppArmor: AppArmor fails to audit change_hat correctly + - LP: #462824 + * SAUCE: AppArmor: AppArmor disallows truncate of deleted files. + - LP: #451375 + + [ Kees Cook ] + + * SAUCE: Fix nx_enable reporting + - LP: #454285 + + [ Scott James Remnant ] + + * Revert "SAUCE: trace: add trace_event for the open() syscall" + * SAUCE: trace: add trace events for open(), exec() and uselib() + - LP: #462111 + + [ Stefan Bader ] + + * SAUCE: Fix sub-flavour script to not stop on missing directories + - LP: #453073 + + [ Ubuntu Changes ] + + * resync with Karmic Ubuntu-2.6.31-15.49 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc6 + - LP: #464552 + + -- Andy Whitcroft Tue, 10 Nov 2009 15:00:57 +0000 + +linux (2.6.32-2.2) lucid; urgency=low + + [ Andy Whitcroft ] + + * install the full changelog with the binary package + * changelog -- explicitly note rebases and clean history + * reinstate armel.mk with no flavours + - LP: #449637 + * [Upstream] block: silently error unsupported empty barriers too + - LP: #420423 + * [Config] udate configs following karmic resync + * [Config] update ports configs following karmic resync + * [Upstream] lirc -- follow removal of .id element + + [ Colin Watson ] + + * Use section 'admin' rather than 'base' + * Add more e100 firmware to nic-modules + - LP: #451872 + * Add qla1280 firmware to scsi-modules + - LP: #381037 + + [ John Johansen ] + + * SAUCE: AppArmor: Set error code after structure initialization. + - LP: #427948 + * SAUCE: AppArmor: Fix off by 2 error in getprocattr mem allocation + - LP: #446595 + * SAUCE: AppArmor: Fix mediation of "deleted" paths + + [ Kees Cook ] + + * SAUCE: [x86] fix report of cs-limit nx-emulation + - LP: #454285 + + [ Leann Ogasawara ] + + * SAUCE: (drop after 2.6.31) input: Add support for filtering input + events + - LP: #430809 + * SAUCE: (drop after 2.6.31) dell-laptop: Trigger rfkill updates on wifi + toggle switch press + - LP: #430809 + + [ Luke Yelavich ] + + * SAUCE: Add sr_mod to the scsi-modules udeb for powerpc + * [Config] Add sd_mod to scsi-modules udeb for powerpc + + [ Mario Limonciello ] + + * SAUCE: Update to LIRC 0.8.6 + - LP: #432678 + * SAUCE: dell-laptop: Store the HW switch status internally rather than + requerying every time + - LP: #430809 + * SAUCE: dell-laptop: Blacklist machines not supporting dell-laptop + - LP: #430809 + + [ Stefan Bader ] + + * [Upstream] acerhdf: Limit modalias matching to supported boards + - LP: #435958 + + [ Tim Gardner ] + + * [Upstream] i915: Fix i2c init message + - LP: #409361 + * [Config] Add sym53c8xx.ko to virtual sub-flavour + - LP: #439415 + * [Config] Add d101m_ucode.bin to d-i/firmware/nic-modules + - LP: #439456 + * [Config] Set default I/O scheduler back to CFQ for desktop flavours + - LP: #381300 + * SAUCE: Created MODULE_EXPORT/MODULE_IMPORT macros + - LP: #430694 + * SAUCE: Use MODULE_IMPORT macro to tie intel_agp to i915 + - LP: #430694 + * [Config] CONFIG_GFS2_FS_LOCKING_DLM=y + - LP: #416325 + * SAUCE: Fix MODULE_IMPORT/MODULE_EXPORT + - LP: #430694 + * SAUCE: Raise the default console 'quiet' level to 2 + * [Config] CONFIG_X86_PAT=y + * [Config] Add armel arch to linux-libc-dev arches. + - LP: #449637 + * [Config] CONFIG_X86_MCE + * [Upstream] (drop after 2.6.31) Input: synaptics - add another Protege + M300 to rate blacklist + - LP: #433801 + + [ Upstream Kernel Changes ] + + * sgi-gru: Fix kernel stack buffer overrun, CVE-2009-2584 + * drm/i915: Fix FDI M/N setting according with correct color depth + - LP: #416792 + + -- Andy Whitcroft Thu, 22 Oct 2009 16:53:33 +0100 + +linux (2.6.32-1.1) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.32-rc3 + * [Config] update configs following rebase to 2.6.32-rc3 + * [Config] update ports configs following rebase to 2.6.32-rc3 + * AppArmor -- fix pstrace_may_access rename + * staging/android -- disable + * ubuntu: dm-raid-45 -- update to compile with 2.6.32 + * ubuntu: drbd -- disable + * staging/comdi -- disable + * staging/go7007 -- disable + * [Config] staging/winbond -- disable + * [Config] ubuntu/iscsitarget -- disable + * [d-i] cbc and ecb are builtin make them optional in udebs + * rebase to v2.6.32-rc5 + * [Config] update configs following rebase to v2.6.32-rc5 + * [Config] update ports configs following rebase to v2.6.31-rc5 + + [ Tim Gardner ] + + * [Config] Add cpio as a build dependency. + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc3 + * rebase to v2.6.32-rc5 + + -- Andy Whitcroft Mon, 05 Oct 2009 15:48:58 +0100 + +linux (2.6.31-11.37) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] Increase kernel log buffer to 256K for amd64 flavours + - LP: #424810 + * [Config] Set HZ=100 for amd64 flavours + - LP: #438234 + * [Upstream] e1000e: Emit notice instead of an error when + pci_enable_pcie_error_reporting() fails + - LP: #436370 + + [ Upstream Kernel Changes ] + + * n_tty: honor opost flag for echoes + * n_tty: move echoctl check and clean up logic + - LP: #438310 + + * Revert "[Upstream] drm/i915: Check that the relocation points to within + the target" - Use upstream cherry-pick. + * drm/i915: Check that the relocation points to within the target + - LP: #429241 + + * drm/i915: fix tiling on IGDNG + * drm/i915: add B43 chipset support + * agp/intel: Add B43 chipset support + Intel request from kernel team mailing list. + + * HID: completely remove apple mightymouse from blacklist + - LP: #428111 + + -- Tim Gardner Mon, 28 Sep 2009 11:47:29 -0600 + +linux (2.6.31-11.36) karmic; urgency=low + + [ Brian Rogers ] + + * SAUCE: (drop after 2.6.31) em28xx: ir-kbd-i2c init data needs a + persistent object + * SAUCE: (drop after 2.6.31) saa7134: ir-kbd-i2c init data needs a + persistent object + + [ Takashi Iwai ] + + * [Upstream] ALSA: hda - Add another entry for Nvidia HDMI device + - LP: #416482 + + [ Tyler Hicks ] + + * SAUCE: (drop after 2.6.31) eCryptfs: Prevent lower dentry from going + negative during unlink + + [ Upstream Kernel Changes ] + + * sg: fix oops in the error path in sg_build_indirect() + * mpt2sas : Rescan topology from Interrupt context instead of work thread + * mpt2sas: Prevent sending command to FW while Host Reset + * mpt2sas: setting SDEV into RUNNING state from Interrupt context + * mpt2sas: Raid 10 Volume is showing as Raid 1E in dmesg + * SCSI: fix oops during scsi scanning + * SCSI: libsrp: fix memory leak in srp_ring_free() + * cfg80211: fix looping soft lockup in find_ie() + * ath5k: write PCU registers on initial reset + * binfmt_elf: fix PT_INTERP bss handling + * TPM: Fixup boot probe timeout for tpm_tis driver + * md: Fix "strchr" [drivers/md/dm-log-userspace.ko] undefined! + * x86/amd-iommu: fix broken check in amd_iommu_flush_all_devices + * fix undefined reference to user_shm_unlock + * perf_counter: Fix buffer overflow in perf_copy_attr() + * perf_counter: Start counting time enabled when group leader gets + enabled + * powerpc/perf_counters: Reduce stack usage of power_check_constraints + * powerpc: Fix bug where perf_counters breaks oprofile + * powerpc/ps3: Workaround for flash memory I/O error + * block: don't assume device has a request list backing in nr_requests + store + * agp/intel: remove restore in resume + * ALSA: cs46xx - Fix minimum period size + * ASoC: Fix WM835x Out4 capture enumeration + * sound: oxygen: work around MCE when changing volume + * mlx4_core: Allocate and map sufficient ICM memory for EQ context + * perf stat: Change noise calculation to use stddev + * x86: Fix x86_model test in es7000_apic_is_cluster() + * x86/i386: Make sure stack-protector segment base is cache aligned + * PCI: apply nv_msi_ht_cap_quirk on resume too + * x86, pat: Fix cacheflush address in change_page_attr_set_clr() + * ARM: 5691/1: fix cache aliasing issues between kmap() and kmap_atomic() + with highmem + * KVM guest: do not batch pte updates from interrupt context + * KVM: Fix coalesced interrupt reporting in IOAPIC + * KVM: VMX: Check cpl before emulating debug register access + * KVM guest: fix bogus wallclock physical address calculation + * KVM: x86: Disallow hypercalls for guest callers in rings > 0 + * KVM: VMX: Fix cr8 exiting control clobbering by EPT + * KVM: x86 emulator: Implement zero-extended immediate decoding + * KVM: MMU: make __kvm_mmu_free_some_pages handle empty list + * KVM: x86 emulator: fix jmp far decoding (opcode 0xea) + * KVM: limit lapic periodic timer frequency + * libata: fix off-by-one error in ata_tf_read_block() + * PCI quirk: update 82576 device ids in SR-IOV quirks list + * PCI: Unhide the SMBus on the Compaq Evo D510 USDT + * powerpc/pseries: Fix to handle slb resize across migration + * Linux 2.6.31.1 + + -- Tim Gardner Thu, 24 Sep 2009 13:04:28 -0600 + +linux (2.6.31-10.35) karmic; urgency=low + + [ Amit Kucheria ] + + * Disable CONFIG_UEVENT_HELPER_PATH + + [ Andy Whitcroft ] + + * [Config] Enable CONFIG_USB_GADGET_DUMMY_HCD + * remove the tlsup driver + * remove lmpcm logitech driver support + + [ Bryan Wu ] + + * Add 3 missing files to prerm remove file list + - LP: #345623, #415832 + + [ Chris Wilson ] + + * [Upstream] drm/i915: Check that the relocation points to within the + target + - LP: #429241 + + [ Luke Yelavich ] + + * [Config] Set CONFIG_EXT4_FS=y on ports architectures + + [ Manoj Iyer ] + + * SAUCE: Added quirk to recognize GE0301 3G modem as an interface. + - LP: #348861 + + [ Tim Gardner ] + + * Revert "[Upstream] ACPI: Add Thinkpad W500, W700, & W700ds to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad R400 & Thinkpad R500 to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad X300 & Thinkpad X301 to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad X200, X200s, X200t to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad T400 & Thinkpad T500 to OSI(Linux) white-list" + Upstream suggests that this is not the right approach. + + * [Config] Set default I/O scheduler to DEADLINE + CFQ seems to have some load related problems which are often exacerbated by sreadahead. + - LP: #381300 + + [ ubuntu@tjworld.net ] + + * SAUCE: ipw2200: Enable LED by default + - LP: #21367 + + [ Upstream Kernel Changes ] + + * ALSA: hda - Add support for new AMD HD audio devices + - LP: #430564 + + -- Andy Whitcroft Wed, 16 Sep 2009 15:37:49 +0100 + +linux (2.6.31-10.34) karmic; urgency=low + + [ Ted Tso ] + + * [Upstream] ext3: Don't update superblock write time when filesystem is + read-only + - LP: #427822 + + -- Tim Gardner Tue, 15 Sep 2009 16:00:45 -0600 + +linux (2.6.31-10.33) karmic; urgency=low + + [ Leann Ogasawara ] + + * [Upstream] dvb-usb: fix tuning with Cinergy T2 + - LP: #421258 + + [ Tim Gardner ] + + * [Config] Unconditionally copy files from sub-flavours lists. + (really, really fix it this time) + - LP: #423426 + * [Config] Set CONFIG_CACHEFILES=m for all flavours + + [ Upstream Kernel Changes ] + + * ext4: Don't update superblock write time when filesystem is read-only + - LP: #427822 + + -- Tim Gardner Tue, 15 Sep 2009 07:50:21 -0600 + +linux (2.6.31-10.32) karmic; urgency=low + + [ Eric Miao ] + + * [Config] enable module support for memory stick + - LP: #159951 + + [ Tim Gardner ] + + * [Config] Unconditionally copy files from sub-flavours lists. + - LP: #423426 + + -- Tim Gardner Thu, 10 Sep 2009 15:57:55 -0600 + +linux (2.6.31-10.31) karmic; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.31 final + + [ Colin Watson ] + + * [Config] Recommend grub-pc in linux-image + - LP: #385741 + + [ Ike Panhc ] + + * [Upstream] Pull latest update of lenovo-sl-laptop + + [ Peter Feuerer ] + + * [Upstream] (drop after 2.6.31) acerhdf: fix fan control for AOA150 + model + - LP: #426691 + + [ Tim Gardner ] + + * [Config] De-macro some package names. + + [ Upstream Changes ] + + * rebase to 2.6.31 final. + + -- Andy Whitcroft Thu, 10 Sep 2009 09:38:10 +0100 + +linux (2.6.31-10.30) karmic; urgency=low + + [ Amit Kucheria ] + + * [Config] Enable CONFIG_USB_DEVICEFS + - LP: #417748 + * [Config] Populate the config-update template a bit more + + [ Andy Whitcroft ] + + * rebase to v2.6.31-rc9 + * [Config] update configs following rebase to v2.6.31-rc9 + * [Config] update ports configs following rebase to v2.6.31-rc9 + + [ Colin Ian King ] + + * SAUCE: wireless: hostap, fix oops due to early probing interrupt + - LP: #254837 + + [ Jerone Young ] + + * [Upstream] ACPI: Add Thinkpad T400 & Thinkpad T500 to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad X200, X200s, X200t to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad X300 & Thinkpad X301 to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad R400 & Thinkpad R500 to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad W500, W700, & W700ds to OSI(Linux) + white-list + - LP: #281732 + + [ John Johansen ] + + * SAUCE: AppArmor: Fix profile attachment for regexp based profile names + - LP: #419308 + * SAUCE: AppArmor: Return the correct error codes on profile + addition/removal + - LP: #408473 + * SAUCE: AppArmor: Fix OOPS in profile listing, and display full list + - LP: #408454 + * SAUCE: AppArmor: Fix mapping of pux to new internal permission format + - LP: #419222 + * SAUCE: AppArmor: Fix change_profile failure + - LP: #401931 + * SAUCE: AppArmor: Tell git to ignore generated include files + - LP: #419505 + + [ Stefan Bader ] + + * [Upstream] acpi: video: Loosen strictness of video bus detection code + - LP: #333386 + * SAUCE: Remove ov511 driver from ubuntu subdirectory + + [ Tim Gardner ] + + * [Config] Exclude char-modules from non-x86 udeb creation + * SAUCE: Notify the ACPI call chain of AC events + * [Config] CONFIG_SATA_VIA=m + - LP: #403385 + * [Config] Build in all phylib support modules. + * [Config] Don't fail when sub-flavour files are missing + - LP: #423426 + * [Config] Set CONFIG_LSM_MMAP_MIN_ADDR=0 + - LP: #423513 + + [ Upstream ] + + * Rebased against v2.6.31-rc9 + + -- Andy Whitcroft Mon, 07 Sep 2009 11:33:45 +0100 + +linux (2.6.31-9.29) karmic; urgency=low + + [ Leann Ogasawara ] + + * [Upstream] agp/intel: support for new chip variant of IGDNG mobile + - LP: #419993 + * [Config] d-i/modules: Add new char-modules file, initialize with + intel-agp + - LP: #420605 + + [ Upstream ] + + * Rebased against 2.6.31-rc8 plus some inotify regression patches: + up through git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git + adda766193ea1cf3137484a9521972d080d0b7af. + + -- Tim Gardner Fri, 28 Aug 2009 06:31:30 -0600 + +linux (2.6.31-8.28) karmic; urgency=low + + [ Ike Panhc ] + + * [Config] Let nic-shared-modules depends on crypto-modules + - LP: #360966 + + [ Leann Ogasawara ] + + * [Upstream] (drop after 2.6.31) drm/i915: increase default latency + constant + - LP: #412492 + + [ Mario Limonciello ] + + * [Upstream]: (drop after 2.6.31) dell-laptop: don't change softblock + status if HW switch is disabled + - LP: #418721 + * [Upstream]: (drop after 2.6.31) compal-laptop: Add support for known + Compal made Dell laptops + * [Upstream]: (drop after 2.6.31) compal-laptop: Replace sysfs support + with rfkill support + + [ Tim Gardner ] + + * [Config] Add acpiphp to virtual sub-flavour + - LP: #364916 + * Drop KSM patch set for now because of instabilities with encrypted swap. + - LP: #418781 + + -- Tim Gardner Wed, 26 Aug 2009 08:14:26 -0600 + +linux (2.6.31-7.27) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] updateconfigs updateportsconfigs after 2.6.31-rc7 rebase + * SAUCE: (drop after 2.6.31) Added KSM from mmotm-2009-08-20-19-18 + Replaces previous ksm patches from 2.6.31-6.25 + * [Config] KSM=y + + [ Upstream ] + + * Rebased against v2.6.31-rc7 + + -- Tim Gardner Sat, 22 Aug 2009 20:32:11 -0600 + +linux (2.6.31-6.26) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_AUFS_BR_RAMFS + - LP: #414738 + * split out debian directory ready for abstraction + * add printdebian target to find branch target + * abstracted debian -- debian/files is not abstracted + * abstracted debian -- packages must be built in debian/ + * abstracted debian -- kernel-wedge needs to work in debian/ + * abstracted debian -- ensure we install the copyright file + * abstracted-debian -- drop the debian directories from headers + * abstracted-debian -- drop the debian directories from headers part 2 + * SAUCE: ubuntu-insert-changes -- follow abstracted debian + * [Upstream] aoe: ensure we initialise the request_queue correctly V2 + - LP: #410198 + + [ Luke Yelavich ] + + * [Config] Ports: Disable CONFIG_CPU_FREQ_DEBUG on powerpc-smp + * [Config] Ports: Re-enable windfarm modules on powerpc64-smp + - LP: #413150 + * [Config] Ports: Build all cpu frequency scaling governors into ports + kernels + * [Config] Ports: Build ext2 and ext3 modules into ports kernels + * [Config] Ports: CONFIG_PACKET=y for all ports kernels + * [Config] Ports: Enable PS3 network driver + + [ Stefan Bader ] + + * abstracted debian -- call $(DEBIAN)/rules using make + + [ Tim Gardner ] + + * [Config] Abstract the debian directory + * SAUCE: Improve error reporting in postinst + - LP: #358564 + + -- Tim Gardner Sun, 16 Aug 2009 20:33:28 -0600 + +linux (2.6.31-6.25) karmic; urgency=low + + [ Andy Whitcroft ] + + * script to generate Ubuntu changes from changelog + * [Config] standardise ANDROID options + * [Config] standardise CONFIG_ATM as module + * [Config] standardise CONFIG_LIB80211 as module + * [Config] disable CONFIG_PRINT_QUOTA_WARNING + * [Config] set CONFIG_CRAMFS as module + * [Config] enable CONFIG_DAB and modules + * [Config] set CONFIG_MAC80211_HWSIM as module + * [Config] set CONFIG_NET_CLS_FLOW as module + * [Config] set CONFIG_NF_CONNTRACK_SANE as module + * [Config] set CONFIG_NF_CT_PROTO_DCCP as module + * [Config] set CONFIG_RTC_DRV_DS1511 as module + * [Config] set CONFIG_RTC_DRV_R9701 as module + * [Config] set CONFIG_RTC_DRV_S35390A as module + * [Config] set CONFIG_TOIM3232_DONGLE as module + * [Config] standardise CONFIG_USB_MIDI_GADGET as module + * [Config] standardise CONFIG_USB_G_PRINTER as module + * [Config] standardise CONFIG_USB_SERIAL_IR as module + * [Config] set CONFIG_USB_SERIAL_IUU as module + * [Config] standardise CONFIG_USB_STORAGE_CYPRESS_ATACB as module + * [Config] standardise CONFIG_USB_STORAGE_ONETOUCH as module + * cleanup remains of dm-loop + * drop thinkpad ec and smapi support + * drop appleir + * [Config] update configs following rebase to v2.6.31-rc6 + * rebase to v2.6.31-rc6 + + [ Hugh Dickins ] + + * SAUCE: ksm patch 1, drop after 2.6.31 + * SAUCE: ksm patch 2, drop after 2.6.31 + * SAUCE: ksm patch 3, drop after 2.6.31 + * SAUCE: ksm patch 4, drop after 2.6.31 + * SAUCE: ksm patch 5, drop after 2.6.31 + * SAUCE: ksm patch 7, drop after 2.6.31 + + [ Izik Eidus ] + + * SAUCE: ksm patch 0, drop after 2.6.31 + * SAUCE: ksm patch 6, drop after 2.6.31 + * SAUCE: ksm patch 8, drop after 2.6.31 + * SAUCE: ksm patch 9, drop after 2.6.31 + + [ Luke Yelavich ] + + * [Config] Ports: Re-add PS3 modules to udebs + + [ Michael Casadevall ] + + * [Config] Update SPARC config and d-i files to reflect what can be built + + [ Tim Gardner ] + + * [Config] Removed armel package support + * [Config] Enabled CONFIG_KSM=y + + [ Upstream Kernel Changes ] + + * Rebased against v2.6.31-rc6 + * ARM: Cleanup: Revert "ARM: Add more cache memory types macros" + * ARM: Cleanup: Revert "Do not use OOB with MLC NAND" + * ARM: Cleanup: Revert "ARM: Make ARM arch aware of ubuntu/ drivers" + * ARM: Cleanup: Revert "ARM: IMX51: Make video capture drivers compile" + * ARM: Cleanup: Revert "ARM: IMX51: Fix isl29003 HWMON driver for i2c + changes" + * ARM: Cleanup: Revert "ARM: IMX51: IPU irq handler deadlock fix" + * ARM: Cleanup: Revert "ARM: IMX51: Babbage 2.5 needs a different system + revision" + * ARM: Cleanup: Revert "ARM: IMX51: Compile-in the IMX51 cpufreq driver + by default" + * ARM: Cleanup: Revert "ARM: IMX51: Enable ZONE_DMA for ARCH_MXC" + * ARM: Cleanup: Revert "ARM: IMX51: Make ARCH_MXC auto-enable + ARCH_MXC_CANONICAL" + * ARM: Cleanup: Revert "ARM: IMX51: Unconditionally disable + CONFIG_GPIOLIB" + * ARM: Cleanup: Revert "ARM: IMX51: Minimal changes for USB to work on + 2.6.31" + * ARM: Cleanup: Revert "ARM: IMX51: Fix plat-mxc/timer.c to handle imx51" + * ARM: Cleanup: Revert "ARM: IMX51: Make it compile." + * ARM: Cleanup: Revert "ARM: IMX51: Clean-up the craziness of including + mxc_uart.h _everywhere_" + * ARM: Cleanup: Revert "ARM: IMX51: Move board-mx51* header files to the + correct location" + * ARM: Cleanup: Revert "ARM: IMX51: Changed from snd_card_new to + snd_card_create" + * ARM: Cleanup: Revert "ARM: IMX51: Fix up merge error in Kconfig" + * ARM: Cleanup: Revert "ARM: IMX51: mxc_timer_init prototype" + * ARM: Cleanup: Revert "ARM: IMX51: Removed the mxc_gpio_port structure." + * ARM: Cleanup: Revert "ARM: IMX51: Added external declaration for + mxc_map_io." + * ARM: Cleanup: Revert "ARM: IMX51: Get to bus_id by calling dev_name." + * ARM: Cleanup: Revert "ARM: IMX51: Get to bus_id by calling dev_name." + * ARM: Cleanup: Revert "ARM: IMX51: snd_soc_machine structure replaced + with snd_soc_card." + * ARM: Cleanup: Revert "ARM: IMX51: codec structure was moved to the card + structure" + * ARM: Cleanup: Revert "ARM: IMX51: Hack to add defines for + DMA_MODE_READ/WRITE/MASK" + * ARM: Cleanup: Revert "ARM: IMX51: Add SoC and board support for + Freescale mx51 platform" + * Driver core: add new device to bus's list before probing + * [Upstream] (drop after 2.6.31) ALSA: hda - Reduce click noise at + power-saving + - LP: #381693, #399750, #380892 + + -- Andy Whitcroft Fri, 14 Aug 2009 11:32:23 +0100 + +linux (2.6.31-5.24) karmic; urgency=low + + [ Amit Kucheria ] + + * ARM: IMX51: Make video capture drivers compile + * [Config] IMX51: Config updates + + [ Andy Whitcroft ] + + * remove leftovers of dm-bbr + + [ Leann Ogasawara ] + + * Add pata_cs5535 to pata-modules + - LP: #318805 + + [ Luke Yelavich ] + + * [Config] CONFIG_PPC64=y for powerpc64-smp + * [Config] Set the maximum number of CPUs to 1024 for powerpc64-smp + * [Config] CONFIG_PPC_PS3=y for powerpc64-smp + * [Config] CONFIG_PPC_MAPLE=y on powerpc64-smp + * [Config] CONFIG_PPC_PASEMI=y on powerpc64-smp + * [Config] CONFIG_CPU_FREQ_PMAC64=y on powerpc64-smp + * [Config] Enable all PS3 drivers in powerpc64-smp + + [ Mario Limonciello ] + + * LIRC -- fix lirc-i2c 2.6.31 compilation + + [ Matthew Garrett ] + + * [Upstream] dell-laptop: Fix rfkill state queries + + [ Tim Gardner ] + + * [Config] Ignore armel ABI and module changes + * [Config] Update configs after rebase against 2.6.31-rc5 + + [ Upstream ] + + * Rebased to 2.6.31-rc5 + + -- Andy Whitcroft Tue, 28 Jul 2009 10:10:09 +0100 + +linux (2.6.31-4.23) karmic; urgency=low + + [ Andy Whitcroft ] + + * AUFS -- update to aufs2-30 20090727 + * [Config] enable AUFS FUSE support + + [ Luke Yelavich ] + + * [Config] CONFIG_JFS_FS=m on sparc + + [ Tim Gardner ] + + * [Upstream] dell-laptop: Fix rfkill state setting. + + -- Andy Whitcroft Mon, 27 Jul 2009 11:11:47 +0100 + +linux (2.6.31-4.22) karmic; urgency=low + + [ Amit Kucheria ] + + * ARM: IMX51: Add SoC and board support for Freescale mx51 platform + * ARM: IMX51: Move board-mx51* header files to the correct location + * ARM: IMX51: Clean-up the craziness of including mxc_uart.h _everywhere_ + * ARM: IMX51: Make it compile. + * ARM: IMX51: Unconditionally disable CONFIG_GPIOLIB + * ARM: IMX51: Make ARCH_MXC auto-enable ARCH_MXC_CANONICAL + * ARM: IMX51: Enable ZONE_DMA for ARCH_MXC + * ARM: IMX51: Compile-in the IMX51 cpufreq driver by default + * ARM: IMX51: Fix isl29003 HWMON driver for i2c changes + * ARM: USB: musb: Refer to musb_otg_timer_func under correct #ifdef + * ARM: staging: udlfb: Add vmalloc.h include + * UBUNTU [Config]: Bring imx51 config upto date with other flavours + + [ Brad Figg ] + + * ARM: IMX51: Hack to add defines for DMA_MODE_READ/WRITE/MASK + * ARM: IMX51: codec structure was moved to the card structure + * ARM: IMX51: snd_soc_machine structure replaced with snd_soc_card. + * ARM: IMX51: Get to bus_id by calling dev_name. + * ARM: IMX51: Get to bus_id by calling dev_name. + * ARM: IMX51: Added external declaration for mxc_map_io. + * ARM: IMX51: Removed the mxc_gpio_port structure. + * ARM: IMX51: mxc_timer_init prototype + * ARM: IMX51: Fix up merge error in Kconfig + * ARM: IMX51: Changed from snd_card_new to snd_card_create + + [ Dinh Nguyen ] + + * ARM: IMX51: Fix plat-mxc/timer.c to handle imx51 + * ARM: IMX51: Minimal changes for USB to work on 2.6.31 + * ARM: IMX51: Babbage 2.5 needs a different system revision + * ARM: IMX51: IPU irq handler deadlock fix + + [ Tim Gardner ] + + * [Config] Enabled CONFIG_CAN=m + - LP: #327243 + * [Config] Enabled CONFIG_SERIAL=m + - LP: #397189 + + -- Tim Gardner Fri, 24 Jul 2009 06:19:10 -0600 + +linux (2.6.31-4.21) karmic; urgency=low + + [ Amit Kucheria ] + + * dm-raid-4-5: Add missing brackets around test_bit() + + [ John Johansen ] + + * AppArmor: Fix change_profile failing lpn401931 + * AppArmor: Fix determination of forced AUDIT messages. + * AppArmor: Fix oops in auditing of the policy interface offset + + -- Andy Whitcroft Thu, 23 Jul 2009 19:18:30 +0100 + +linux (2.6.31-4.20) karmic; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: iscsitarget -- update to SVN revision r214 + * SAUCE: iscsitarget -- renable driver + * [Config] consolidate lpia/lpia and i386/generic configs + * [Config] enable CRYPTO modules for all architectures + * [Config] enable cryptoloop + * [Config] enable various filesystems for armel + * [Config] sync i386 generic and generic-pae + * [Config] add the 386 (486 processors and above) flavour + * [Config] re-set DEFAULT_MMAP_MIN_ADDR + - LP: #399914 + * add genconfigs/genportsconfigs to extract the built configs + * updateconfigs -- alter concatenation order allow easier updates + * intelfb -- INTELFB now conflicts with DRM_I915 + * printchanges -- rebase tree does not have stable tags use changelog + * AppArmor: fix argument size missmatch on 64 bit builds + + [ Ike Panhc ] + + * Ship bnx2x firmware in nic-modules udeb + - LP: #360966 + + [ Jeff Mahoney ] + + * AppArmor: fix build failure on ia64 + + [ John Johansen ] + + * AppArmour: ensure apparmor enabled parmater is off if AppArmor fails to + initialize. + * AppArmour: fix auditing of domain transitions to include target profile + information + * AppArmor: fix C99 violation + * AppArmor: revert reporting of create to write permission. + * SAUCE: Add config option to set a default LSM + * [Config] enable AppArmor by default + * AppArmor: Fix NULL pointer dereference oops in profile attachment. + + [ Keith Packard ] + + * SAUCE: drm/i915: Allow frame buffers up to 4096x4096 on 915/945 class + hardware + - LP: #351756 + + [ Luke Yelavich ] + + * [Config] add .o files found in arch/powerpc/lib to all powerpc kernel + header packages + - LP: #355344 + + [ Michael Casadevall ] + + * [Config] update SPARC config files to allow success build + + [ Scott James Remnant ] + + * SAUCE: trace: add trace_event for the open() syscall + + [ Stefan Bader ] + + * SAUCE: jfs: Fix early release of acl in jfs_get_acl + - LP: #396780 + + [ Tim Gardner ] + + * [Upstream] Fix Soltech TA12 volume hotkeys not sending key release + - LP: #397499 + * [Upstream] USB Option driver - Add USB ID for Novatel MC727/U727/USB727 + refresh + - LP: #365291 + * [Config] SSB/B44 are common across all arches/flavours. + + [ Upstream ] + + * Rebased to 2.6.31-rc4 + + -- Andy Whitcroft Thu, 23 Jul 2009 08:41:39 +0100 + +linux (2.6.31-3.19) karmic; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] Disabled NDISWRAPPER" + * ndiswrapper -- fix i386 compilation failures on cmpxchg8b + * AUFS -- export various core functions + * AUFS -- export various core functions -- fixes + * AUFS -- core filesystem + * AUFS -- track changes in v2.6.31 + * [Config] Enable AUFS + * droppped 'iwl3945: do not send scan command if channel count zero' as it + is already upstream but failed to auto-drop on rebase. + + [ Eric Paris ] + + * SAUCE: fsnotify: use def_bool in kconfig instead of letting the user + choose + * SAUCE: inotify: check filename before dropping repeat events + * SAUCE: fsnotify: fix inotify tail drop check with path entries + + -- Andy Whitcroft Tue, 14 Jul 2009 12:52:55 +0100 + +linux (2.6.31-3.18) karmic; urgency=low + + [ Andy Whitcroft ] + + * Revert "Add splice-2.6.23.patch from AUFS to export a symbol needed by + AUFS" + * Revert "Add put_filp.patch from AUFS to export a symbol needed by AUFS" + * Revert "Add sec_perm-2.6.24.patch from AUFS - export + security_inode_permission" + * clear out left over AUFS files and modifications + + [ Luke Yelavich ] + + * [Config] Enable CONFIG_USB_ISP116X_HCD on sparc + * SAUCE: Explicitly include header files to allow apparmor to build on + powerpc + * [Config] Enable CONFIG_BLK_DEV_IDECD on powerpc + + [ Tim Gardner ] + + * [Config] Dropped ubuntu/misc/wireless/acx + * [Config] Disabled NDISWRAPPER until the compile issues are fixed. + + [ Upstream ] + + * Rebased to 2.6.31-rc3 + + -- Andy Whitcroft Fri, 10 Jul 2009 18:59:33 +0100 + +linux (2.6.31-2.17) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_BLK_DEV_CRYPTOLOOP=m for sparc + * compcache -- remove redundant Kconfig entries part 2 + * compcache -- clean up CCFLAGS declarations + * [Config] enable AppArmor + * AppArmor: fix operator precidence issue in as_path_link + + [ John Johansen ] + + * AppArmor security module + * AppArmor: Correct mapping of file permissions. + * AppArmor: Turn auditing of ptrace on + + [ Luke Yelavich ] + + * [Config] disable CONFIG_DM_RAID45 on powerpc + + -- Andy Whitcroft Fri, 10 Jul 2009 15:02:05 +0100 + +linux (2.6.31-2.16) karmic; urgency=low + + [ Andy Whitcroft ] + + * compcache -- remove redundant Kconfig entries + added ignore and ignore.modules for all arches since the compcache update + changes the modules names as well as some compcache ABI values. + + [ Manoj Iyer ] + + * SAUCE: updated dm-raid45 module version to 2009.04.24 (2.6.30-rc3) + * SAUCE: update compcache version to 0.5.3 + + [ Tim Gardner ] + + * [Config]: Fix sparc FTBS by adding ignore.modules + + -- Tim Gardner Mon, 06 Jul 2009 13:35:29 -0600 + +linux (2.6.31-2.15) karmic; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: default ATI Radeon KMS to off until userspace catches up + * [Config] Update configs following rebase to 2.6.31-rc2 + * [Config] update ports configs following update to 2.6.31-rc2 + + [ Luke Yelavich ] + + * [Config] powerpc - Disable CONFIG_RDS + + [ Matt Zimmerman ] + + * Rename linux-doc-PKGVER to linux-doc and clean up its description + - LP: #382115 + + [ Upstream Kernel Changes ] + + * rebased to mainline 2.6.31-rc2 + + -- Andy Whitcroft Sat, 04 Jul 2009 17:39:13 +0100 + +linux (2.6.31-1.14) karmic; urgency=low + + [ Andy Whitcroft ] + + * update ndiswrapper to 1.55 + * remove leftovers of gfs + * [Config] powerpc: enable CONFIG_PPC_DISABLE_WERROR + + [ Luke Yelavich ] + + * [Config] re-enable and build the ide-pmac driver into powerpc kernels + * [Config] Build the ServerWorks Frodo / Apple K2 SATA driver into the + kernel + + [ Manoj Iyer ] + + * Remove snd-bt-sco ubuntu driver + + [ Michael Casadevall ] + + * [Config] updates ia64 config and d-i folders to allow succesful build + * [Config] Update powerpc and sparc for 2.6.31 + + [ Upstream Kernel Changes ] + + * intel-iommu: fix Identity Mapping to be arch independent + - LP: #384695 + * ACPI: video: prevent NULL deref in acpi_get_pci_dev() + + -- Andy Whitcroft Tue, 30 Jun 2009 17:47:32 +0100 + +linux (2.6.31-1.13) karmic; urgency=low + + [ Andy Whitcroft ] + + * REBASE: rebased to mainline 2.6.31-rc1 + - "UBUNTU: SAUCE: UHCI USB quirk for resume" + no longer applies, using deprecated interfaces, LPIA only, dropped + - "UBUNTU: SAUCE: Mask off garbage in Dell WMI scan code data" + changes now upstream, dropped + * [Config] Update configs following rebase to 2.6.31-rc1 + * [Config] update ports configs following update to 2.6.31-rc1 + + * [Config] disable broken staging driver CONFIG_STLC45XX + * SAUCE: fix compcache to use updates accessors + * [Config] disable staging driver CONFIG_VT6655 + * SAUCE: fix DRDB to use updates accessors + * [Disable] ndiswrapper needs update + * [Disable] LIRC I2C needs update + * [Disable] CONFIG_LENOVO_SL_LAPTOP needs update + * [Config] disable I2C_DESIGNWARE does not compile + * [Config] disable CONFIG_TLSUP for lpia + * [Config] disable CONFIG_FB_UDL for arm + * SAUCE: disable adding scsi headers to linux-libc-dev + + [ Mario Limonciello ] + + * SAUCE: Add LIRC drivers + + -- Andy Whitcroft Thu, 25 Jun 2009 12:06:22 +0100 + +linux (2.6.30-10.12) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] split out the ports configs into their own family + * [Config] update configs following introduction of ports family + + [ Upstream Kernel Changes ] + + * Revert "Rename linux-doc-PKGVER to linux-doc and clean up its + description". Fixes linux-doc package name conflicts for now. + - LP: #382115 + + -- Tim Gardner Mon, 22 Jun 2009 09:17:14 -0600 + +linux (2.6.30-10.11) karmic; urgency=low + + [ Amit Kucheria ] + + * [Config] Comment splitconfig.pl and misc cleanup + * [Config] Rename all configs to the new naming scheme + * [Config] Splitconfig rework + * [Config] Rename scripts/misc/oldconfig to kernelconfig + * [Config] Fix build system for new config split + * [Config] Run updateconfigs after the splitconfig rework + + [ Andy Whitcroft ] + + * Revert "SAUCE: Default to i915.modeset=0 if CONFIG_DRM_I915_KMS=y" + * [Config] standardise CONFIG_STAGING=y + * [Config] standardise CONFIG_RD_LZMA=y + * [Config] CONFIG_PCI_IOV=y + * [Config] CONFIG_PCI_STUB=m + * [Config] merge kernel configs more agressively + + [ Colin Watson ] + + * [Config] Run kernel-wedge in $(builddir) rather than at the top level + * [Config] Add support for including firmware in udebs + * [Config] Ship bnx2 firmware in nic-modules udeb + - LP: #384861 + + [ Luke Yelavich ] + + * [Config] ports - Import of ports architectures into kernel packaging + infrastructure + * [Config] ports - Do not update ports kernel configurations by default + * [Config] ports - Disable ABI checking for ports architectures + * [Config] ports - Build drivers in ubuntu sub-directory on powerpc + * [Config] ports - Add control.d/vars.* files for ports architectures + * [Config] ports - Add ports architectures for linux-libc-dev + * [Config] ports - Create powerpc specific message-modules and + block-modules udebs + * [Config] ports - Add configuration files for ports architectures + + [ Manoj Iyer ] + + * [Config] Enable CONFIG_BLK_DEV_AEC62XX=m for amd64 and i386 + - LP: #329864 + + [ Michael Casadevall ] + + * [Config] ports - Fix compression of kernels + + [ Stefan Bader ] + + * [Upstream] mmc: prevent dangling block device from accessing stale + queues + - LP: #383668 + + [ Tim Gardner ] + + * [Config] Recommend grub-pc in linux-image + - LP: #385741 + * [Config] Implement i386 generic and generic-pae flavours + * [Config] ports - Add control info after integrating ports arches + * [Config] Removed auto-generated files from git + * [Config] Added netxen_nic to nic-modules + - LP: #389603 + + [ Matt Zimmerman ] + + * Rename linux-doc-PKGVER to linux-doc and clean up its description + - LP: #382115 + + -- Tim Gardner Mon, 15 Jun 2009 14:38:26 -0600 + +linux (2.6.30-9.10) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_SECURITY_TOMOYO=y (amd64, i386, lpia) + * [Config] CONFIG_KEXEC_JUMP=y (amd64, lpia) + * [Config] CONFIG_LENOVO_SL_LAPTOP=m (amd64, lpia) + * [Config] CONFIG_POHMELFS_CRYPTO=y (i386, amd64) + * [Config] CONFIG_SERIAL_MAX3100=m (i386, amd64, lpia) + * [Config] CONFIG_VIDEO_GO7007=m (amd64, i386) + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30 final + + -- Andy Whitcroft Fri, 05 Jun 2009 11:42:53 +0100 + +linux (2.6.30-8.9) karmic; urgency=low + + [ Andy Whitcroft ] + + * Config update removed the following options: + CONFIG_EDAC_AMD8111=m + CONFIG_EDAC_AMD8131=m + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc8 + + -- Andy Whitcroft Wed, 03 Jun 2009 09:21:13 +0100 + +linux (2.6.30-7.8) karmic; urgency=low + + [ Andy Whitcroft ] + + * Enabled NEW configration options: + Paravirtualization layer for spinlocks (PARAVIRT_SPINLOCKS) [N/y/?] Y + Cisco FNIC Driver (FCOE_FNIC) [N/m/y/?] M + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc7 + + -- Andy Whitcroft Sat, 23 May 2009 23:47:24 +0100 + +linux (2.6.30-6.7) karmic; urgency=low + + [ Andy Whitcroft ] + + * Dropped: UBUNTU: SAUCE: input: Blacklist digitizers from joydev.c (now + upstream) + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc6 + + -- Andy Whitcroft Mon, 18 May 2009 18:05:54 +0100 + +linux (2.6.30-5.6) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] Enable Keyspan USB serial device firmware in kernel module + - LP: #334285 + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc5 + + -- Tim Gardner Mon, 11 May 2009 12:02:16 -0600 + +linux (2.6.30-4.5) karmic; urgency=low + + [ Colin Watson ] + + * Build-Conflict with findutils (= 4.4.1-1ubuntu1), to avoid + /usr/include/asm/* going missing + - LP: #373214 + + -- Stefan Bader Fri, 08 May 2009 11:09:08 +0200 + +linux (2.6.30-3.4) karmic; urgency=low + + [ Kees Cook ] + + * SAUCE: [x86] implement cs-limit nx-emulation for ia32 + - LP: #369978 + + [ Stefan Bader ] + + * SAUCE: input: Blacklist digitizers from joydev.c + - LP: #300143 + + -- Tim Gardner Fri, 01 May 2009 14:00:42 -0600 + +linux (2.6.30-2.3) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] Enabled CC_STACKPROTECTOR=y for all x86en + - LP: #369152 + * SAUCE: Default to i915_modeset=0 if CONFIG_DRM_I915_KMS=y + * [Config] CONFIG_DRM_I915_KMS=y + * [Config] Set CONFIG_SECURITY_DEFAULT_MMAP_MIN_ADDR to appropriate ARCH + minimums + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc4 + + -- Tim Gardner Thu, 30 Apr 2009 09:17:05 -0600 + +linux (2.6.30-1.2) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] armel: disable staging drivers, fixes FTBS + * [Config] armel imx51: Disable CONFIG_MTD_NAND_MXC, fixes FTBS + + [ Upstream Kernel Changes ] + + * mpt2sas: Change reset_type enum to avoid namespace collision. + Submitted upstream. + + -- Tim Gardner Tue, 28 Apr 2009 16:54:41 -0600 + +linux (2.6.30-1.1) karmic; urgency=low + + * Initial release after rebasing against v2.6.30-rc3 + + -- Tim Gardner Thu, 12 Mar 2009 19:16:07 -0600 --- linux-3.13.0.orig/debian.master/changelog.historical +++ linux-3.13.0/debian.master/changelog.historical @@ -0,0 +1,4171 @@ + +linux (2.6.28-9.31) jaunty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: cpufreq-nforce2: probe failures are not errors + - LP: #332170 + * SAUCE: mmc: add MODALIAS linkage for MMC/SD devices + - LP: #30335 + * remove test-suspend script + - LP: #333856 + + [ Kees Cook ] + + * handle relative paths in modules.dep + Fixes 2.6.28-9.30 FTBS. + + [ Upstream Kernel Changes ] + + * ricoh_mmc: Handle newer models of Ricoh controllers + + -- Tim Gardner Wed, 11 Mar 2009 08:19:24 -0600 + +linux (2.6.28-9.30) jaunty; urgency=low + + [ Amit Kucheria ] + + * ARM:mx51 Add SoC and board support for mx51 platforms + * ARM:mx51 Add CONFIG_ARCH_MXC_CANONICAL to disable parts of Freescale's + code + * MMC: Add support for 8-bit cards + * Add ARM:MX51 SoC support to the build system + * ARM: Make ARM arch aware of ubuntu/ drivers + * ARM: Add imx51 configuration + * Disable d-i modules for imx51 and mv78xx0 + * Disable Apparmor on boot for ARM + * Updating imx51 config + + [ Jason Liu ] + + * Do not use OOB with MLC NAND + + [ Richard Zhu ] + + * Support the eMMC4.3 card + + [ Rob Herring ] + + * ARM: Add more cache memory types macros + + [ Tim Gardner ] + + * Set CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y for i386/amd64/lpia + + [ Manoj Iyer ] + + * Enable CONFIG_RTL8187SE=m + + [ Upstream Kernel Changes ] + + * USB: EHCI: slow down ITD reuse + - LP: #329437 + + -- Tim Gardner Sun, 08 Mar 2009 14:14:15 -0600 + +linux (2.6.28-9.29) jaunty; urgency=low + + [ Andy Whitcroft ] + + * link-headers -- only link directories which do not already exist + - LP: #315252 + + [ Daniel Marjamäki ] + + * SAUCE: (drop after 2.6.28) netxen: fix memory leak in + drivers/net/netxen_nic_init.c + - LP: #330813 + + [ Dhananjay Phadke ] + + * SAUCE: (drop after 2.6.28) netxen: fix endianness in firmware commands + - LP: #330813 + * SAUCE: (drop after 2.6.28) netxen: fix ipv6 offload and tx cleanup + - LP: #330813 + * SAUCE: (drop after 2.6.28) netxen: fix link speed reporting for some + boards + - LP: #330813 + * SAUCE: (drop after 2.6.28) netxen: firmware init fix + - LP: #330813 + * SAUCE: (drop after 2.6.28) netxen: cleanup mac list on driver unload + - LP: #330813 + * SAUCE: (drop after 2.6.28) netxen: hold tx lock while sending firmware + commands + - LP: #330813 + * SAUCE: (drop after 2.6.28) netxen: handle dma mapping failures + - LP: #330813 + * SAUCE: (drop after 2.6.28) netxen: avoid invalid iounmap + - LP: #330813 + * SAUCE: (drop after 2.6.28) netxen: include ipv6.h (fixes build failure) + - LP: #330813 + * SAUCE: (drop after 2.6.28) netxen: fix vlan tso/checksum offload + - LP: #330813 + * SAUCE: (drop after 2.6.28) netxen: reduce memory footprint + - LP: #330813 + * SAUCE: (drop after 2.6.28) netxen: revert jumbo ringsize + - LP: #330813 + * SAUCE: (drop after 2.6.28) netxen: fix msi-x interrupt handling + - LP: #330813 + * SAUCE: (drop after 2.6.28) netxen: remove pcie workaround + - LP: #330813 + + [ Hannes Eder ] + + * SAUCE: (drop after 2.6.28) drivers/net/netxen: fix sparse warnings: use + NULL pointer instead of plain integer + - LP: #330813 + + [ Huaxu Wan ] + + * SAUCE: report rfkill changes event if interface is down + - LP: #193970 + + [ Tim Gardner ] + + * MV78XX0 must specify a target in the vars definition. + + [ Upstream Kernel Changes ] + + * Revert "ext4: wait on all pending commits in ext4_sync_fs()" + * jbd2: Fix return value of jbd2_journal_start_commit() + * jbd2: Avoid possible NULL dereference in + jbd2_journal_begin_ordered_truncate() + * ext4: Fix to read empty directory blocks correctly in 64k + * ext4: Fix lockdep warning + * ext4: Initialize preallocation list_head's properly + * ext4: Implement range_cyclic in ext4_da_writepages instead of + write_cache_pages + * ext4: Fix NULL dereference in ext4_ext_migrate()'s error handling + * ext4: Add fallback for find_group_flex + * ext4: Fix deadlock in ext4_write_begin() and ext4_da_write_begin() + * Added mv78xx0 flavor + + -- Tim Gardner Fri, 06 Mar 2009 06:13:31 -0700 + +linux (2.6.28-8.28) jaunty; urgency=low + + [ Alexey Starikovskiy ] + + * SAUCE: ACPI: EC: Limit workaround for ASUS notebooks even more + - LP: #288385 + + [ Scott James Remnant ] + + * SAUCE: Auto-load esp module when device opened. + * SAUCE: Auto-load bridge module when socket opened. + * SAUCE: Auto-load af_netlink module when socket opened. + * SAUCE: Auto-load wanrouter module when socket opened. + * SAUCE: Auto-load ip_queue module when socket opened. + * SAUCE: Auto-load ip6_queue module when socket opened. + * SAUCE: Auto-load cn module when socket opened. + * SAUCE: Auto-load scsi_transport_iscsi module when socket opened. + * SAUCE: Auto-load ftl module when device opened. + * SAUCE: Auto-load pcd module when device opened. + * SAUCE: Auto-load pf module when device opened. + * SAUCE: Auto-load nftl module when device opened. + * SAUCE: Auto-load mousedev module when psaux device opened. + * SAUCE: Auto-load mousedev module when /dev/input/mice opened. + * SAUCE: Auto-load rng-core module when device opened. + * SAUCE: Auto-load openprom module when device opened. + * SAUCE: Auto-load applicom module when device opened. + * SAUCE: Auto-load toshiba module when device opened. + * SAUCE: Auto-load cyclades module when device opened. + * SAUCE: Auto-load riscom8 module when device opened. + * SAUCE: Auto-load specialix module when device opened. + * SAUCE: Auto-load videodev module when device opened. + * SAUCE: Auto-load i2c_dev module when device opened. + * SAUCE: Auto-load mtdchar module when device opened. + * SAUCE: Auto-load pt module when device opened. + * SAUCE: Auto-load pg module when device opened. + * SAUCE: Auto-load cdc_acm module when device opened. + * SAUCE: Auto-load msr module when device opened. + * SAUCE: Auto-load cpuid module when device opened. + * SAUCE: quickcam: Enable double-buffering by default + * SAUCE: libata: Ignore HPA by default. + * SAUCE: hostap: Change initial operation mode to managed (infra) + * SAUCE: floppy: Provide a PnP device table in the module. + - LP: #255651 + * SAUCE: Auto-load mwave module when device opened. + * Build CONFIG_FUSE_FS into kernel, not as module. + + [ Stefan Bader ] + + * Enable build of ext4 as a module on LPIA + - LP: #331848 + + [ Tim Gardner ] + + * Update configs to fix LPIA FTBS + + -- Tim Gardner Thu, 05 Mar 2009 10:43:24 -0700 + +linux (2.6.28-8.27) jaunty; urgency=low + + [ Amit Kucheria ] + + * Updating configs (arm:ixp4xx) + + [ Andy Whitcroft ] + + * SAUCE: enable Intel HDMI output + + [ Manoj Iyer ] + + * SAUCE: Added quirk for Linksys WUSB600N USB wifi-n networking adapter + - LP: #323473 + + [ Steve Beattie ] + + * fix apparmor memory leak on unlinked file ops + - LP: #329489 + + [ Tim Gardner ] + + * SAUCE: Dell XPS710 reboot quirk + - LP: #323592 + * SAUCE: (drop after 2.6.28) ieee80211: Add infrastructure to obsolete + scan results + - LP: #336055 + * Add modules.order to the linux-image package. + + [ Upstream Kernel Changes ] + + * iwlwifi: fix time interval misuse in iwl_poll_{direct_}bit + * x86: only scan the root bus in early PCI quirks + - LP: #267295 + * ALSA: hda - Intel HDMI audio support + * ALSA: hda - Fix unused function in patch_intelhdmi.c + * ALSA: handle SiI1392 HDMI codec in patch_intelhdmi.c + * ALSA: hda-intel: reorder HDMI audio enabling sequence + * ALSA: introduce snd_print_pcm_rates() + * ALSA: create hda_eld.c for ELD routines and proc interface + * ALSA: ELD proc interface for HDMI sinks + * ALSA: hda: make standalone hdmi_fill_audio_infoframe() + * ALSA: hda: make global snd_print_channel_allocation() + * ALSA: hda: HDMI channel allocations for audio infoframe + * ALSA: hda: HDMI channel mapping cleanups + * ALSA: hda: minor code cleanups + * ALSA: hda: rename sink_eld to hdmi_eld + * ALSA: hda - Release ELD proc file + * ALSA: hda - minor HDMI code cleanups + * ALSA: hda - report selected CA index for Audio InfoFrame + * ALSA: hda - Add Intel vendor id string + + -- Tim Gardner Wed, 25 Feb 2009 14:23:46 -0700 + +linux (2.6.28-8.26) jaunty; urgency=low + + [ Amit Kucheria ] + + * Updating configs (armel:ixp4xx) + - LP: #331510 + + [ Tim Gardner ] + + * Add more missing modules + + -- Tim Gardner Tue, 24 Feb 2009 06:58:53 -0700 + +linux (2.6.28-8.25) jaunty; urgency=low + + [ Scott James Remnant ] + + * SAUCE: Prefer powernow-k8 to acpi-cpufreq + * Change CONFIG_X86_P4_CLOCKMOD to be a module again. + + [ Tim Gardner ] + + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: Initialize the new + group descriptor when resizing the filesystem" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: Add sanity check + to make_indexed_dir" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: only use + i_size_high for regular files" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: Add sanity checks + for the superblock before mounting the filesystem" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: Fix + s_dirty_blocks_counter if block allocation failed with nodelalloc" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: Init the complete + page while building buddy cache" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: Don't allow new + groups to be added during block allocation" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: mark the + blocks/inode bitmap beyond end of group as used" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: Use new + buffer_head flag to check uninit group bitmaps initialization" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: Fix the race + between read_inode_bitmap() and ext4_new_inode()" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: Fix race between + read_block_bitmap() and mark_diskspace_used()" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: don't use blocks + freed but not yet committed in buddy cache init" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: cleanup mballoc + header files" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: Use + EXT4_GROUP_INFO_NEED_INIT_BIT during resize" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: Add blocks added + during resize to bitmap" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: Don't overwrite + allocation_context ac_status" + * Revert "SAUCE: (revert before 2.6.28.y update) jbd2: Add barrier not + supported test to journal_wait_on_commit_record" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: Widen type of + ext4_sb_info.s_mb_maxs[]" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: avoid ext4_error + when mounting a fs with a single bg" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: Fix the delalloc + writepages to allocate blocks at the right offset." + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: tone down + ext4_da_writepages warnings" + * Revert "SAUCE: (revert before 2.6.28.y update) ext4: Add support for + non-native signed/unsigned htree hash algorithms" + * Enabled X86_ACPI_CPUFREQ=y + + [ Upstream Kernel Changes ] + + * ath9k: quiet harmless ForceXPAon messages + - LP: #321474 + * [WATCHDOG] iTCO_wdt: fix SMI_EN regression 2 + - LP: #314050 + * pid: implement ns_of_pid + * mqueue: fix si_pid value in mqueue do_notify() + * powerpc/vsx: Fix VSX alignment handler for regs 32-63 + * sata_nv: give up hardreset on nf2 + * Fix Intel IOMMU write-buffer flushing + * SCSI: libiscsi: fix iscsi pool leak + * x86/cpa: make sure cpa is safe to call in lazy mmu mode + * sched: SCHED_OTHER vs SCHED_IDLE isolation + * x86, vm86: fix preemption bug + * Add support for VT6415 PCIE PATA IDE Host Controller + * ext2/xip: refuse to change xip flag during remount with busy inodes + * 3c505: do not set pcb->data.raw beyond its size + * Bluetooth: Fix TX error path in btsdio driver + * ext4: Add support for non-native signed/unsigned htree hash algorithms + * ext4: tone down ext4_da_writepages warnings + * ext4: Fix the delalloc writepages to allocate blocks at the right + offset. + * ext4: avoid ext4_error when mounting a fs with a single bg + * ext4: Widen type of ext4_sb_info.s_mb_maxs[] + * jbd2: Add barrier not supported test to journal_wait_on_commit_record + * ext4: Don't overwrite allocation_context ac_status + * ext4: Add blocks added during resize to bitmap + * ext4: Use EXT4_GROUP_INFO_NEED_INIT_BIT during resize + * ext4: cleanup mballoc header files + * ext4: don't use blocks freed but not yet committed in buddy cache init + * ext4: Fix race between read_block_bitmap() and mark_diskspace_used() + * ext4: Fix the race between read_inode_bitmap() and ext4_new_inode() + * ext4: Use new buffer_head flag to check uninit group bitmaps + initialization + * ext4: mark the blocks/inode bitmap beyond end of group as used + * ext4: Don't allow new groups to be added during block allocation + * ext4: Init the complete page while building buddy cache + * ext4: Fix s_dirty_blocks_counter if block allocation failed with + nodelalloc + * ext4: Add sanity checks for the superblock before mounting the + filesystem + * ext4: only use i_size_high for regular files + * ext4: Add sanity check to make_indexed_dir + * ext4: Initialize the new group descriptor when resizing the filesystem + * Fix longstanding "error: storage size of '__mod_dmi_device_table' isn't + known" + * Linux 2.6.28.7 + + -- Tim Gardner Thu, 19 Feb 2009 06:45:55 -0700 + +linux (2.6.28-8.24) jaunty; urgency=low + + [ Scott James Remnant ] + + * Change CPU_FREQ_DEFAULT_GOV_ONDEMAND to y + * SAUCE: Link acpi-cpufreq.o first + + [ Tim Gardner ] + + * Build in CPU Frequency scaling drivers + + -- Tim Gardner Wed, 18 Feb 2009 06:12:24 -0700 + +linux (2.6.28-8.23) jaunty; urgency=low + + [ Andy Whitcroft ] + + * include the kernel configuration in the sub-flavour images + - LP: #328859 + + [ Tim Gardner ] + + * Revert "SAUCE: (drop after 2.6.28) [eCryptfs] Regression in unencrypted + filename symlinks" in favor of upstream commit. + * Fix compile issues with qc-usb + * SAUCE: (remove after 2.6.28) V4L/DVB (10216): saa7127: fix broken + S-Video with saa7129 + - LP: #329267 + + [ Upstream Kernel Changes ] + + * Subject:SAUCE: LP#193970 iwlagn: fix hw-rfkill while the interface is + down + - LP: #193970 + * x86, vmi: put a missing paravirt_release_pmd in pgd_dtor + * nbd: fix I/O hang on disconnected nbds + * mac80211: restrict to AP in outgoing interface heuristic + * w1: w1 temp calculation overflow fix + * zd1211rw: adding 0ace:0xa211 as a ZD1211 device + * zd1211rw: treat MAXIM_NEW_RF(0x08) as UW2453_RF(0x09) for TP-Link + WN322/422G + * parport: parport_serial, don't bind netmos ibm 0299 + * syscall define: fix uml compile bug + * kernel-doc: fix syscall wrapper processing + * Fix page writeback thinko, causing Berkeley DB slowdown + * write-back: fix nr_to_write counter + * writeback: fix break condition + * mm: rearrange exit_mmap() to unlock before arch_exit_mmap + * powerpc/fsl-booke: Fix mapping functions to use phys_addr_t + * lockd: fix regression in lockd's handling of blocked locks + * sctp: Fix crc32c calculations on big-endian arhes. + * sctp: Correctly start rtx timer on new packet transmissions. + * sctp: Properly timestamp outgoing data chunks for rtx purposes + * net: Fix frag_list handling in skb_seq_read + * net: Fix OOPS in skb_seq_read(). + * drivers/net/skfp: if !capable(CAP_NET_ADMIN): inverted logic + * ipv4: fix infinite retry loop in IP-Config + * net: Fix userland breakage wrt. linux/if_tunnel.h + * net: packet socket packet_lookup_frame fix + * packet: Avoid lock_sock in mmap handler + * sungem: Soft lockup in sungem on Netra AC200 when switching interface + up + * udp: Fix UDP short packet false positive + * udp: increments sk_drops in __udp_queue_rcv_skb() + * ipv6: Disallow rediculious flowlabel option sizes. + * ipv6: Copy cork options in ip6_append_data + * net: 4 bytes kernel memory disclosure in SO_BSDCOMPAT gsopt try #2 + * sky2: fix hard hang with netconsoling and iface going up + * tun: Add some missing TUN compat ioctl translations. + * tun: Fix unicast filter overflow + * virtio_net: Fix MAX_PACKET_LEN to support 802.1Q VLANs + * tcp: splice as many packets as possible at once + * tcp: Fix length tcp_splice_data_recv passes to skb_splice_bits. + * sparc: Enable syscall wrappers for 64-bit (CVE-2009-0029) + * sparc64: Annotate sparc64 specific syscalls with SYSCALL_DEFINEx() + * ALSA: hda - Add missing terminator in slave dig-out array + * ALSA: mtpav - Fix initial value for input hwport + * HID: adjust report descriptor fixup for MS 1028 receiver + * ide/libata: fix ata_id_is_cfa() (take 4) + * libata: fix EH device failure handling + * netfilter: fix tuple inversion for Node information request + * netfilter: xt_sctp: sctp chunk mapping doesn't work + * x86: microcode_amd: fix wrong handling of equivalent CPU id + * ide-cd: fix DMA for non bio-backed requests + * net: Fix data corruption when splicing from sockets. + * Linux 2.6.28.6 + * eCryptfs: Regression in unencrypted filename symlinks + + -- Tim Gardner Mon, 16 Feb 2009 06:43:51 -0700 + +linux (2.6.28-8.22) jaunty; urgency=low + + [ Amit Kucheria ] + + * Remove perm-blacklist + + [ Andy Whitcroft ] + + * SAUCE: psmouse/synaptics: ensure we reset the device on resume + - LP: #317270 + + [ Tim Gardner ] + + * Add lpia to getabi script + * SAUCE: tracer for sreadahead + + -- Amit Kucheria Fri, 13 Feb 2009 15:23:21 +0200 + +linux (2.6.28-8.21) jaunty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: switch the Asus Pundit P1-AH2 to old acpi sleep ordering + - LP: #327267 + + [ Tim Gardner ] + + * Added LPIA arch support + * Added libdrm-dev as a 'Replaces' to linux-libc-dev + * SAUCE: LPIA support for 9202 HDA Sigmatel codec + * SAUCE: Add an X86_LPIA Kconfig option + * SAUCE: UHCI USB quirk for resume + * SAUCE: LPIA Reboot fix for Intel Crownbeach development boards + * SAUCE: LPIA Logical reset of USB port on resume + * Set CONFIG_WIRELESS_OLD_REGULATORY=n, added wireless-crda + as an install dependency. + + [ Upstream Kernel Changes ] + + * Revert "Revert "x86, early_ioremap: fix fencepost error"" + - LP: #312554 + * drm/i915: capture last_vblank count at IRQ uninstall time too + - LP: #320813 + * drm/i915: add get_vblank_counter function for GM45 + - LP: #320813 + * Staging: comedi: fix Kbuild + * Staging: meilhaus: fix Kbuild + * Staging: android: binder: fix arm build errors + * Staging: android: timed_gpio: Fix build to build on kernels after + 2.6.25. + * Staging: android: fix build error on 64bit boxes + * Staging: android: Add lowmemorykiller documentation. + * Staging: android: task_get_unused_fd_flags: fix the wrong usage of + tsk->signal + * staging: agnx: drivers/staging/agnx/agnx.h needs + * Staging: usbip: usbip_start_threads(): handle kernel_thread failure + * Staging: poch: fix verification of memory area + * Documentation: move DMA-mapping.txt to Doc/PCI/ + * sgi-xp: fix writing past the end of kzalloc()'d space + * do_wp_page: fix regression with execute in place + * wait: prevent exclusive waiter starvation + * shm: fix shmctl(SHM_INFO) lockup with !CONFIG_SHMEM + * revert "rlimit: permit setting RLIMIT_NOFILE to RLIM_INFINITY" + * prevent kprobes from catching spurious page faults + * sound: usb-audio: handle wMaxPacketSize for FIXED_ENDPOINT devices + * md: Ensure an md array never has too many devices. + * md: Fix a bug in linear.c causing which_dev() to return the wrong + device. + * ACPI: Enable bit 11 in _PDC to advertise hw coord + * ACPI: dock: Don't eval _STA on every show_docked sysfs read + * ieee1394: ohci1394: increase AT req. retries, fix ack_busy_X from + Panasonic camcorders and others + * firewire: ohci: increase AT req. retries, fix ack_busy_X from Panasonic + camcorders and others + * firewire: sbp2: fix DMA mapping leak on the failure path + * firewire: sbp2: add workarounds for 2nd and 3rd generation iPods + * ieee1394: sbp2: add workarounds for 2nd and 3rd generation iPods + * module: remove over-zealous check in __module_get() + * x86: APIC: enable workaround on AMD Fam10h CPUs + * eeepc-laptop: fix oops when changing backlight brightness during + eeepc-laptop init + * eeepc-laptop: Add support for extended hotkeys + * e1000: fix bug with shared interrupt during reset + * e1000: Fix PCI enable to honor the need_ioport flag + * agp/intel: Fix broken ® symbol in device name. + * ALSA: hda - Add quirk for FSC Amilo Xi2550 + * ALSA: hda - Add missing COEF initialization for ALC887 + * ALSA: hda - Add missing initialization for ALC272 + * asus_acpi: Add R1F support + * panasonic-laptop: fix X[ ARRAY_SIZE(X) ] + * ACPI: Skip the first two elements in the _BCL package + * ACPI: proc_dir_entry 'video/VGA' already registered + * ACPI: disable ACPI cleanly when bad RSDP found + * ACPICA: Fix table entry truncation calculation + * PCI: properly clean up ASPM link state on device remove + * PCI: return error on failure to read PCI ROMs + * seq_file: move traverse so it can be used from seq_read + * seq_file: fix big-enough lseek() + read() + * serial: set correct baud_base for Oxford Semiconductor Ltd EXSYS + EX-41092 Dual 16950 Serial adapter + * Add support for '8-port RS-232 MIC-3620 from advantech' + * mm: fix error case in mlock downgrade reversion + * elf core dump: fix get_user use + * ACPI: video: Fix reversed brightness behavior on ThinkPad SL series + * ipw2200: fix scanning while associated + * XFS: set b_error from bio error in xfs_buf_bio_end_io + * Revert USB: option: add Pantech cards + * USB: option: New mobile broadband modems to be supported + * USB: new id for ti_usb_3410_5052 driver + * USB: two more usb ids for ti_usb_3410_5052 + * USB: usb-storage: add Pentax to the bad-vendor list + * sata_via: Add VT8261 support + * nbd: do not allow two clients at the same time + * sctp: Fix another socket race during accept/peeloff + * Linux 2.6.28.5 + + -- Tim Gardner Mon, 09 Feb 2009 16:11:28 -0700 + +linux (2.6.28-7.20) jaunty; urgency=low + + [ Tim Gardner ] + + * SAUCE: Input: atkbd - Samsung NC10 key repeat fix + + [ Upstream Kernel Changes ] + + * Manually revert "mlock: downgrade mmap sem while populating mlocked + regions" + * xen: make sysfs files behave as their names suggest + * sata_mv: fix 8-port timeouts on 508x/6081 chips + * m68knommu: set NO_DMA + * PCI/MSI: bugfix/utilize for msi_capability_init() + * x86: use early clobbers in usercopy*.c + * netfilter: ctnetlink: fix scheduling while atomic + * orinoco: move kmalloc(..., GFP_KERNEL) outside spinlock in + orinoco_ioctl_set_genie + * fbdev/atyfb: Fix DSP config on some PowerMacs & PowerBooks + * kmalloc: return NULL instead of link failure + * sata_nv: rename nv_nf2_hardreset() + * sata_nv: fix MCP5x reset + * sata_nv: ck804 has borked hardreset too + * Fix memory corruption in console selection + * Add enable_ms to jsm driver + * nfsd: only set file_lock.fl_lmops in nfsd4_lockt if a stateowner is + found + * nfsd: Ensure nfsv4 calls the underlying filesystem on LOCKT + * iwlwifi: fix rs_get_rate WARN_ON() + * p54: fix lm87 checksum endianness + * p54: fix p54_read_eeprom to cope with tx_hdr_len + * p54usb: rewriting rx/tx routines to make use of usb_anchor's facilities + * minstrel: fix warning if lowest supported rate index is not 0 + * PCI: irq and pci_ids patch for Intel Tigerpoint DeviceIDs + * cpuidle: Add decaying history logic to menu idle predictor + * ACPI: Avoid array address overflow when _CST MWAIT hint bits are set + * video: always update the brightness when poking "brightness" + * Newly inserted battery might differ from one just removed, so update of + battery info fields is required. + * ACPI: Do not modify SCI_EN directly + * dlm: initialize file_lock struct in GETLK before copying conflicting + lock + * sata_mv: Fix chip type for Hightpoint RocketRaid 1740/1742 + * ACPICA: Allow multiple backslash prefix in namepaths + * Linux 2.6.28.4 + + -- Tim Gardner Sat, 07 Feb 2009 18:53:42 -0700 + +linux (2.6.28-7.19) jaunty; urgency=low + + * Fix missing modules FTBS + + -- Tim Gardner Thu, 05 Feb 2009 15:28:15 -0700 + +linux (2.6.28-7.18) jaunty; urgency=low + + [ Alok Kataria ] + + * SAUCE: (drop after 2.6.29) x86: add a synthetic TSC_RELIABLE feature + bit + - LP: #319945 + * SAUCE: (drop after 2.6.29) x86: add X86_FEATURE_HYPERVISOR feature bit + - LP: #319945 + * SAUCE: (drop after 2.6.29) x86: Hypervisor detection and get tsc_freq + from hypervisor + - LP: #319945 + * SAUCE: (drop after 2.6.29) x86: Add a synthetic TSC_RELIABLE feature + bit. + - LP: #319945 + * SAUCE: (drop after 2.6.29) x86: Skip verification by the watchdog for + TSC clocksource. + - LP: #319945 + * SAUCE: (drop after 2.6.29) x86: VMware: Fix vmware_get_tsc code + - LP: #319945 + * SAUCE: (drop after 2.6.29) x86: vmware: look for DMI string in the + product serial key + - LP: #319945 + + [ Andy Whitcroft ] + + * SAUCE: toshiba_acpi -- pull in current -dev version of driver + - LP: #269831 + * SAUCE: toshiba_acpi -- add acpi hotkey kernel thread + - LP: #269831 + * move toshiba laptops back from tlsup to toshiba_acpi + - LP: #269831 + + [ Aneesh Kumar K.V ] + + * SAUCE: (revert before 2.6.28.y update) ext4: Fix the delalloc + writepages to allocate blocks at the right offset. + * SAUCE: (revert before 2.6.28.y update) ext4: avoid ext4_error when + mounting a fs with a single bg + * SAUCE: (revert before 2.6.28.y update) ext4: Don't overwrite + allocation_context ac_status + * SAUCE: (revert before 2.6.28.y update) ext4: Add blocks added during + resize to bitmap + * SAUCE: (revert before 2.6.28.y update) ext4: Use + EXT4_GROUP_INFO_NEED_INIT_BIT during resize + * SAUCE: (revert before 2.6.28.y update) ext4: cleanup mballoc header + files + * SAUCE: (revert before 2.6.28.y update) ext4: don't use blocks freed but + not yet committed in buddy cache init + * SAUCE: (revert before 2.6.28.y update) ext4: Fix race between + read_block_bitmap() and mark_diskspace_used() + * SAUCE: (revert before 2.6.28.y update) ext4: Fix the race between + read_inode_bitmap() and ext4_new_inode() + * SAUCE: (revert before 2.6.28.y update) ext4: Use new buffer_head flag + to check uninit group bitmaps initialization + * SAUCE: (revert before 2.6.28.y update) ext4: mark the blocks/inode + bitmap beyond end of group as used + * SAUCE: (revert before 2.6.28.y update) ext4: Don't allow new groups to + be added during block allocation + * SAUCE: (revert before 2.6.28.y update) ext4: Init the complete page + while building buddy cache + * SAUCE: (revert before 2.6.28.y update) ext4: Fix s_dirty_blocks_counter + if block allocation failed with nodelalloc + + [ Hannes Eder ] + + * SAUCE: (drop after 2.6.29) x86: vmware - fix sparse warnings + - LP: #319945 + + [ Luke Yelavich ] + + * hid modules have hyphens instead of underscores in their names + + [ Mark Fasheh ] + + * SAUCE: (revert before 2.6.28.y update) jbd2: Add BH_JBDPrivateStart + + [ Theodore Ts'o ] + + * SAUCE: (revert before 2.6.28.y update) ext4: Add support for non-native + signed/unsigned htree hash algorithms + * SAUCE: (revert before 2.6.28.y update) ext4: tone down + ext4_da_writepages warnings + * SAUCE: (revert before 2.6.28.y update) jbd2: Add barrier not supported + test to journal_wait_on_commit_record + * SAUCE: (revert before 2.6.28.y update) ext4: Add sanity checks for the + superblock before mounting the filesystem + * SAUCE: (revert before 2.6.28.y update) ext4: only use i_size_high for + regular files + * SAUCE: (revert before 2.6.28.y update) ext4: Add sanity check to + make_indexed_dir + * SAUCE: (revert before 2.6.28.y update) jbd2: On a __journal_expect() + assertion failure printk "JBD2", not "EXT3-fs" + * SAUCE: (revert before 2.6.28.y update) ext4: Initialize the new group + descriptor when resizing the filesystem + + [ Tyler Hicks ] + + * SAUCE: (drop after 2.6.28) [eCryptfs] Regression in unencrypted + filename symlinks + - LP: #322532 + + [ Upstream Kernel Changes ] + + * Input: atkbd - broaden the Dell DMI signatures + - LP: #261721 + * ti_usb_3410_5052: support alternate firmware + * ath5k: fix mesh point operation + * mac80211: decrement ref count to netdev after launching mesh discovery + * inotify: clean up inotify_read and fix locking problems + * fuse: destroy bdi on umount + * fuse: fix missing fput on error + * fuse: fix NULL deref in fuse_file_alloc() + * x86, mm: fix pte_free() + * klist.c: bit 0 in pointer can't be used as flag + * sysfs: fix problems with binary files + * x86: fix page attribute corruption with cpa() + * USB: fix toggle mismatch in disable_endpoint paths + * sound: virtuoso: enable UART on Xonar HDAV1.3 + * USB: usbmon: Implement compat_ioctl + * USB: fix char-device disconnect handling + * USB: storage: add unusual devs entry + * alpha: nautilus - fix compile failure with gcc-4.3 + * alpha: fix vmalloc breakage + * resources: skip sanity check of busy resources + * rtl8187: Add termination packet to prevent stall + * it821x: Add ultra_mask quirk for Vortex86SX + * libata: pata_via: support VX855, future chips whose IDE controller use + 0x0571 + * serial_8250: support for Sealevel Systems Model 7803 COMM+8 + * drm: stash AGP include under the do-we-have-AGP ifdef + * Fix OOPS in mmap_region() when merging adjacent VM_LOCKED file segments + * bnx2x: Block nvram access when the device is inactive + * ext3: Add sanity check to make_indexed_dir + * rtl8187: Fix error in setting OFDM power settings for RTL8187L + * epoll: drop max_user_instances and rely only on max_user_watches + * gpiolib: fix request related issue + * sgi-xpc: Remove NULL pointer dereference. + * sgi-xpc: ensure flags are updated before bte_copy + * include/linux: Add bsg.h to the Kernel exported headers + * ALSA: hda - Fix PCM reference NID for STAC/IDT analog outputs + * ALSA: hda - add another MacBook Pro 4, 1 subsystem ID + * ALSA: hda - Add quirk for HP DV6700 laptop + * crypto: authenc - Fix zero-length IV crash + * crypto: ccm - Fix handling of null assoc data + * x86, pat: fix reserve_memtype() for legacy 1MB range + * x86, pat: fix PTE corruption issue while mapping RAM using /dev/mem + * PCI hotplug: fix lock imbalance in pciehp + * dmaengine: fix dependency chaining + * NET: net_namespace, fix lock imbalance + * relay: fix lock imbalance in relay_late_setup_files + * Linux 2.6.28.3 + * ALSA: Enable SPDIF output on ALC655 + * ALSA: hda - Add ASUS V1Sn support + * ALSA: hda - support detecting HD Audio devices with PCI class code + * ALSA: hda: alc883 model for ASUS P5Q-EM boards + * ALSA: hda - Add quirk for MSI 7260 mobo + * ALSA: hda - Add quirk for Sony VAIO VGN-SR19XN + * ALSA: oxygen: add Claro halo support + * ALSA: hda - Add a new function to seek for a codec ID + * ALSA: patch_sigmatel: Add missing Gateway entries and autodetection + * ALSA: hda - More fixes on Gateway entries + * ALSA: hda - Add MCP67 HDMI support + * ALSA: hda - fix name for ALC1200 + * LSA: hda - Add HP Acacia detection + * ALSA: hda - Add quirk for HP 2230s + * ALSA: hda - Add quirk for Dell Inspiron Mini9 + * ALSA: hda - add support for Intel DX58SO board + * ALSA: hda - Fix silent headphone output on Panasonic CF-74 + * ALSA: USB quirk for Logitech Quickcam Pro 9000 name + * ALSA: hda - add quirks for some 82801H variants to use ALC883_MITAC + + [ Yasunori Goto ] + + * SAUCE: (revert before 2.6.28.y update) ext4: Widen type of + ext4_sb_info.s_mb_maxs[] + + -- Tim Gardner Mon, 02 Feb 2009 23:07:13 -0700 + +linux (2.6.28-6.17) jaunty; urgency=low + + [ Amit Kucheria ] + + * Updating configs: ARMEL/versatile + + -- Amit Kucheria Fri, 30 Jan 2009 13:36:59 +0200 + +linux (2.6.28-6.16) jaunty; urgency=low + + [ Luke Yelavich ] + + * Add hid quirks to input-modules udeb + + [ Tim Gardner ] + + * Revert "[arm] Fix kexec on ARM by properly calling the relocation + function". This patch was deemed 'bogus' by Russell King on the + ARM mailing list. + + [ Upstream Kernel Changes ] + + * PCI: keep ASPM link state consistent throughout PCIe hierarchy + * security: introduce missing kfree + * rt2x00: add USB ID for the Linksys WUSB200. + * p54usb: Add USB ID for Thomson Speedtouch 121g + * lib/idr.c: use kmem_cache_zalloc() for the idr_layer cache + * sgi-xp: eliminate false detection of no heartbeat + * sched: fix update_min_vruntime + * IA64: Turn on CONFIG_HAVE_UNSTABLE_CLOCK + * sound: virtuoso: do not overwrite EEPROM on Xonar D2/D2X + * ALSA: hda - Add quirk for another HP dv5 + * ALSA: hda - Fix HP dv5 mic input + * ALSA: hda - Don't reset HP pinctl in patch_sigmatel.c + * ALSA: hda - make laptop-eapd model back for AD1986A + * drivers/net/irda/irda-usb.c: fix buffer overflow + * usb-storage: add last-sector hacks + * usb-storage: set CAPACITY_HEURISTICS flag for bad vendors + * pkt_sched: sch_htb: Fix deadlock in hrtimers triggered by HTB + * ipv6: Fix fib6_dump_table walker leak + * sctp: Avoid memory overflow while FWD-TSN chunk is received with bad + stream ID + * pkt_sched: cls_u32: Fix locking in u32_change() + * r6040: fix wrong logic in mdio code + * r6040: save and restore MIER correctly in the interrupt routine + * r6040: bump release number to 0.19 + * tcp: don't mask EOF and socket errors on nonblocking splice receive + * p54usb: fix traffic stalls / packet drop + * netfilter: x_tables: fix match/target revision lookup + * netfilter: ebtables: fix inversion in match code + * netfilter: nf_conntrack: fix ICMP/ICMPv6 timeout sysctls on big-endian + * dell_rbu: use scnprintf() instead of less secure sprintf() + * powerpc: is_hugepage_only_range() must account for both 4kB and 64kB + slices + * hwmon: (abituguru3) Fix CONFIG_DMI=n fallback to probe + * mm: write_cache_pages cyclic fix + * mm: write_cache_pages early loop termination + * mm: write_cache_pages writepage error fix + * mm: write_cache_pages integrity fix + * mm: write_cache_pages cleanups + * mm: write_cache_pages optimise page cleaning + * mm: write_cache_pages terminate quickly + * mm: write_cache_pages more terminate quickly + * mm: do_sync_mapping_range integrity fix + * mm: direct IO starvation improvement + * fs: remove WB_SYNC_HOLD + * fs: sync_sb_inodes fix + * fs: sys_sync fix + * Linux 2.6.28.2 + + -- Tim Gardner Sun, 25 Jan 2009 13:36:16 -0700 + +linux (2.6.28-5.15) jaunty; urgency=low + + [ Tim Gardner ] + + * Revert "Enabled CONFIG_PID_NS=y for i386/amd64" + Somehow this commit also reverted the 7 prior commits (which is bad). + * Enabled CONFIG_PID_NS=y for i386/amd64 (version 2) + + -- Tim Gardner Thu, 22 Jan 2009 13:48:34 -0700 + +linux (2.6.28-5.14) jaunty; urgency=low + + [ Ben Collins ] + + * lirc_gpio: Forward ported to current kernel (jaunty) + * configs: Enable LIRC_GPIO on 64-bit/32-bit x86 + - LP: #298791 + + [ Jeff Layton ] + + * SAUCE: cifs: make sure we allocate enough storage for socket address + - LP: #318565 + + [ Tim Gardner ] + + * check-abi: Return success when ABI skip is requested and no ABI files exist. + This ought to fix the armel FTBS. + + -- Tim Gardner Thu, 22 Jan 2009 06:42:49 -0700 + +linux (2.6.28-5.13) jaunty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: don't use buggy _BCL/_BCM/_BQC for backlight control" + + [ Tim Gardner ] + + * Fix udeb generation breakage caused by the previous armel versatile + flavour config update. + + -- Tim Gardner Wed, 21 Jan 2009 12:38:35 -0700 + +linux (2.6.28-5.12) jaunty; urgency=low + + [ Ante ] + + * Update drbd to 8.3.0 + + [ Dave Airlie ] + + * i915/drm: provide compat defines for userspace for certain struct + + [ Eric Anholt ] + + * drm/i915: Don't double-unpin buffers if we take a signal in + * drm/i915: Don't complain when interrupted while pinning in execbuffers. + * drm/i915: Don't allow objects to get bound while VT switched. + + [ Jani Monoses ] + + * Fix webcam having USB ID 0ac8:303b + - LP: #292086 + + [ Jesse Barnes ] + + * drm/i915: set vblank enabled flag correctly across IRQ + * drm/i915: don't enable vblanks on disabled pipes + + [ Michael Casadevall ] + + * [arm] Fix kexec on ARM by properly calling the relocation function + + [ Tim Gardner ] + + * Enabled CONFIG_PID_NS=y for i386/amd64 + * SAUCE: Increase ATA_TMOUT_PMP_SRST_WAIT to 5 seconds. + - LP: #318978 + * Update armel versatile config + - LP: #314789 + * Enabled CONFIG_RT2860=m for i386/amd64 + * Enabled CONFIG_RT2870=m for i386/amd64 + + [ Upstream Kernel Changes ] + + * Input: atkbd - add keyboard quirk for HP Pavilion ZV6100 laptop + - LP: #291878 + * ALSA: hda - Add quirk for another HP dv7 + * ALSA: hda - Add quirk for HP6730B laptop + * ALSA: caiaq - Fix Oops with MIDI + * ALSA: hda - Fix typos for AD1882 codecs + * x86: fix intel x86_64 llc_shared_map/cpu_llc_id anomolies + * x86: default to SWIOTLB=y on x86_64 + * CIFS: make sure that DFS pathnames are properly formed + * ring-buffer: prevent false positive warning + * ring-buffer: fix dangling commit race + * iwlwifi: use GFP_KERNEL to allocate Rx SKB memory + * tx493[89]ide: Fix length for __ide_flush_dcache_range + * tx4939ide: Do not use zero count PRD entry + * SCSI: eata: fix the data buffer accessors conversion regression + * USB: emi26: fix oops on load + * x86, UV: remove erroneous BAU initialization + * x86: fix incorrect __read_mostly on _boot_cpu_pda + * vmalloc.c: fix flushing in vmap_page_range() + * fs: symlink write_begin allocation context fix + * cgroups: fix a race between cgroup_clone and umount + * dm raid1: fix error count + * dm log: fix dm_io_client leak on error paths + * minix: fix add link's wrong position calculation + * md: fix bitmap-on-external-file bug. + * sched_clock: prevent scd->clock from moving backwards, take #2 + * devices cgroup: allow mkfifo + * SCSI: aha152x_cs: Fix regression that keeps driver from using shared + interrupts + * ioat: fix self test for multi-channel case + * USB: isp1760: use a specific PLX bridge instead of any bdridge + * USB: isp1760: Fix probe in PCI glue code + * USB: unusual_devs.h additions for Pentax K10D + * inotify: fix type errors in interfaces + * Move compat system call declarations to compat header file + * Convert all system calls to return a long + * Rename old_readdir to sys_old_readdir + * Remove __attribute__((weak)) from sys_pipe/sys_pipe2 + * Make sys_pselect7 static + * Make sys_syslog a conditional system call + * System call wrapper infrastructure + * powerpc: Enable syscall wrappers for 64-bit + * s390: enable system call wrappers + * System call wrapper special cases + * System call wrappers part 01 + * System call wrappers part 02 + * System call wrappers part 03 + * System call wrappers part 04 + * System call wrappers part 05 + * System call wrappers part 06 + * System call wrappers part 07 + * System call wrappers part 08 + * System call wrappers part 09 + * System call wrappers part 10 + * System call wrappers part 11 + * System call wrappers part 12 + * System call wrappers part 13 + * System call wrappers part 14 + * System call wrappers part 15 + * System call wrappers part 16 + * System call wrappers part 17 + * System call wrappers part 18 + * System call wrappers part 19 + * System call wrappers part 20 + * System call wrappers part 21 + * System call wrappers part 22 + * System call wrappers part 23 + * System call wrappers part 24 + * System call wrappers part 25 + * System call wrappers part 26 + * System call wrappers part 27 + * System call wrappers part 28 + * System call wrappers part 29 + * System call wrappers part 30 + * System call wrappers part 31 + * System call wrappers part 32 + * System call wrappers part 33 + * s390 specific system call wrappers + * x86: fix RIP printout in early_idt_handler + * Fix timeouts in sys_pselect7 + * USB: another unusual_devs entry for another bad Argosy storage device + * USB: storage: extend unusual range for 067b:3507 + * USB: storage: recognizing and enabling Nokia 5200 cell phoes + * HID: fix error condition propagation in hid-sony driver + * fix switch_names() breakage in short-to-short case + * nfs: remove redundant tests on reading new pages + * eCryptfs: check readlink result was not an error before using it + * mvsas: increase port type detection delay to suit Seagate's 10k6 drive ST3450856SS 0003 + * x86: avoid theoretical vmalloc fault loop + * ath9k: enable RXing of beacons on STA/IBSS + * mm lockless pagecache barrier fix + * powerpc: Disable Collaborative Memory Manager for kdump + * ibmvfc: Delay NPIV login retry and add retries + * ibmvfc: Improve async event handling + * getrusage: RUSAGE_THREAD should return ru_utime and ru_stime + * ath5k: ignore the return value of ath5k_hw_noise_floor_calibration + * mm: fix assertion + * XFS: truncate readdir offsets to signed 32 bit values + * Linux 2.6.28.1 + * eCryptfs: Filename Encryption: Tag 70 packets + * eCryptfs: Filename Encryption: Header updates + * eCryptfs: Filename Encryption: Encoding and encryption functions + * eCryptfs: Filename Encryption: filldir, lookup, and readlink + * eCryptfs: Filename Encryption: mount option + * eCryptfs: Replace %Z with %z + * eCryptfs: Fix data types (int/size_t) + * eCryptfs: kerneldoc for ecryptfs_parse_tag_70_packet() + * eCryptfs: Clean up ecryptfs_decode_from_filename() + * fs/ecryptfs/inode.c: cleanup kerneldoc + * staging-p80211: Kill directly reference of netdev->priv + * staging-slicoss: Kill directly reference of netdev->priv + * staging-winbond: Kill directly reference of netdev->priv + * Staging: go7007: fixes due to video_usercopy api change + * Staging: go7007: fixes due v4l2_file_operations api change + * staging: correct dubious use of !x & y + * Staging: w35und: make wb35_probe() and wb35_disconnect() funtions static + * Staging: w35und: remove unused wb35_open() and wb35_close() functions + * Staging: w35und: use msleep() and udelay() + * Staging: w35und: remove the no-op pa_stall_execution macro + * Staging: w35und: purb typedef removal + * Staging: w35und: reg queue struct typedef removal + * Staging: w35und: wb35reg struct typedef removal + * Staging: w35und: padapter struct typedef removal + * Staging: w35und: merge wblinux struct to adapter + * Staging: w35und: wb35_probe() cleanup + * Staging: w35und: remove usb_submit_urb wrapper function + * Staging: w35und: remove usb_alloc_urb wrapper function + * w35und: remove dead code from wbusb_f.h + * Staging: w35und: remove true/false boolean macros + * Staging: w35und: OS_MEMORY_ALLOC wrapper removal + * Staging: w35und: usb_put_dev() is missing from wb35_disconnect() + * Staging: w35und: remove macro magic from MLME_GetNextPacket() + * Staging: w35und: plug memory leak in wbsoft_tx() + * Staging: w35und: move supported band initialization out of wb35_probe() + * Staging: w35und: remove timer wrappers + * Staging: w35und: remove atomic op wrappers + * Staging: w35und: remove memcpy/memcmp wrappers + * Staging: w35und: remove abs() and BIT() macros + * Staging: w35und: remove unused macros from common.h + * Staging: w35und: remove unused link status code + * Staging: w35und: #include cleanup + * Staging: w35und: remove some dead code + * Staging: w35und: move source files to one directory + * Staging: w35und: move struct wbsoft_priv to core.h and use it + * Staging: w35und: remove ->adapter from struct _HW_DATA_T + * Staging: w35und: clean up adapter.h a bit + * Staging: w35und: merge struct wb35_adapter to struct wbsoft_priv + * Staging: w35und: remove global struct ieee80211_hw + * Staging: w35und: inline DRIVER_AUTHOR and DRIVER_DESC macros + * Staging: w35und: clean up wblinux.c a bit + * Staging: w35und: remove unused ->ShutDowned member from struct + LOCAL_PARA + * Staging: w35und: move global wbsoft_enabled to struct wbsoft_priv + * Staging: w35und: move packet_came() to wb35rx.c + * Staging: w35und: remove ->skb_array from struct wbsoft_priv + * Staging: w35und: remove ->shutdown from struct wbsoft_priv + * Staging: w35und: make functions local to mds.c static + * Staging: w35und: make functions local to mlmetxrx.c static + * Staging: w35und: remove dead code from mto.c + * Staging: w35und: make functions local to wb35rx.c static + * Staging: w35und: make functions local to wb35tx.c static + * Staging: w35und: remove dead code from wbhal.c + * Staging: w35und: remove rxisr.c as dead code + * Staging: w35und: fix Kconfig + * Staging: w35und: fix config build warnings + * Staging: wlan-ng: Remove PCI/PLX/PCMCIA files. + * Staging: wlan-ng: Update Help text to mention prism3 devices. + * Staging: wlan-ng: Delete PCI/PLX/PCMCIA-specific code. + * Staging: wlan-ng: Make wlan-ng use WEXT mode by default. + * Staging: wlan-ng: Eliminate more <2.6 kernel support. + * Staging: wlan-ng: Eliminate all backwards-compatibility for <2.6.13 kernels. + * Staging: wlan-ng: Eliminate a boatload of tertiaryAP-only code. + * Staging: wlan-ng: Remove AP-only code from MLME functions. + * Staging: wlan-ng: Get rid of the MTU tests in the rx conversion path. + * Staging: wlan-ng: Eliminate one more rx mtu test. + * Staging: wlan-ng: Eliminate local 'version.h' + * Staging: wlan-ng: Eliminate usage of procfs. + * Staging: wlan-ng: Use standard kernel integer (u32/s32/etc) types. + * Staging: wlan-ng: Eliminate all backwards-compatible kernel code. + * Staging: wlan-ng: Wireless Extension support is mandatory. + * Staging: wlan-ng: use WIRELESS_EXT, not CONFIG_WIRELESS_EXT + * Staging: wlan-ng: Delete a large pile of now-unused code. + * Staging: wlan-ng: Delete a pile of unused mibs. And fix WEXT SET_TXPOWER. + * Staging: wlan-ng: Consolidate wlan-ng into a single module. + * Staging: wlan-ng: Purge all MIBs not used internally. + * Staging: wlan-ng: p80211netdev.c fix netdev alloc to prevent oops on device start + * Staging: wlan-ng: prism2_usb.c always enable the card in probe_usb + * Staging: wlan-ng: hfa384x_usb.c use newest version of 384x_drvr_start + * Staging: wlan-ng: p80211wext.c add latest changes & remove extra nulls from wext_handlers + * Staging: wlan-ng: p80211wext don't set default key id twice + * Staging: wlan-ng: hfa384x_usbin_callback: check for hardware removed + * Staging: wlan-ng: p80211conv.c copy code from wlan-ng-devel branch to not drop packets + * Staging: wlan-ng: remove unused #include + * Staging: wlan-ng: p80211wext.c: use ARRAY_SIZE + * Staging: wlan-ng: fix compiler warnings + * Staging: wlan-ng: skb_p80211_to_ether() - payload_length is unsigned, check before subtraction + * Staging: at76_usb: update drivers/staging/at76_usb w/ mac80211 port + * Staging: at76_usb: fix build breakage + * Staging: at76_usb: remove compiler warnings + * Staging: at76_usb: fix up all remaining checkpatch.pl warnings + * Staging: at76_usb: cleanup dma on stack issues + * Staging: poch: Block size bug fix + * Staging: poch: Update TODO list + * Staging: poch: Correct pages from bytes. + * Staging: poch: minor fixes + * Staging: poch: Fix build warnings + * Staging: poch: Rx control register init + * Staging: poch: Fix user space protocol syncing + * Staging: poch: Fine grained locking + * Staging: sxg: remove typedefs + * Staging: sxg: break the build in a cleaner way when !x86 + * Staging: sxg: update README + * staging: struct device - replace bus_id with dev_name(), dev_set_name() + * Staging: echo: remove typedefs + * Staging: echo: Lindent drivers/staging/echo + * Staging: go7007: saa7134 updates + * Staging: go7007: add sensoray 2250/2251 support + * Staging: go7007: Convert driver to use video_ioctl2 + * Staging: go7007: annotate code pointers + * Staging: go7007: fix minor build warnings + * Staging: go7007: small cleanup + * Staging: go7007: add some more v4l2 ioctls + * Staging: et131x: Cleanup et131x_debug.h defines + * Staging: et131x: fix build failure + * Staging: et131x: remove unused variable in et1310_tx.c + * Staging: usbip: cleanup kerneldoc + * Staging: slicoss: use kzalloc + * Staging: slicoss: use correct type for memory allcations + * Staging: slicoss: use request_firmware + * Staging: add agnx wireless driver + * Staging: agnx: fix build errors due to ssid removal + * Staging: agnx: fix build errors due to rate control API changes + * Staging: agnx: fix build warnings + * Staging: add otus Atheros wireless network driver + * Staging: otus: fix netdev->priv usage + * Staging: otus: fix name clash + * Staging: otus: fix urb callback function type + * Staging: otus: remove dependence on kernel version + * Staging: add rt2860 wireless driver + * Staging: rt2860: disable root hack for reading files + * Staging: rt2860: fix up netdev->priv usage + * Staging: rt2860: use standard bit-reverse function + * Staging: rt2860: Fix minor compiler warnings + * Staging: rt2860: enable WPA_SUPPLICANT support + * Staging: Add ServerEngines benet 10Gb ethernet driver + * Staging: benet: fix netif api breakage + * Staging: benet: fix up netdev->priv change + * Staging: benet: build is broken unless CONFIG_NETPOLL is enabled + * Staging: benet: patch to remove subdirectories + * Staging: benet: fix build errors when CONFIG_NETPOLL is off + * Staging: benet: fix build error. + * Staging: benet: patch to use offsetof() instead of AMAP_BYTE_OFFSET() + * Staging: benet: fix problems reported by checkpatch + * Staging: benet: cleanup a check while posting rx buffers + * Staging: add comedi core + * Staging: comedi: fix up a lot of checkpatch.pl warnings + * Staging: comedi: fix checkpatch.pl errors in comedi_fops.c + * Staging: comedi: fix build error in comedilib.h + * Staging: comedi: add kcomedilib to the tree + * Staging: comedi: set up infrastructure for individual drivers + * Staging: comedi: add local copy of interrupt.h + * Staging: comedi: add pci and usb wrapper header files + * Staging: comedi: comedi driver common function module + * Staging: comedi: add mite comedi pci driver + * Staging: comedi: add usb usbdux driver + * Staging: comedi: add usb usbduxfast driver + * Staging: comedi: add usb dt9812 driver + * Staging: comedi: add comedi_bond driver + * Staging: comedi: add comedi_test driver + * Staging: comedi: add comedi_parport driver + * Staging: comedi: dt9812: fix up a lot of coding style issues + * Staging: comedi: dt9812: remove dt9812.h + * Staging: comedi: dt9812: remove typedefs + * Staging: comedi: dt9812: fix sparse warnings + * Staging: comedi: usbdux: remove kernel version checks + * Staging: comedi: usbdux: code style cleanups + * Staging: comedi: usbdux: remove // comments + * Staging: comedi: usbdux: fix up printk calls + * Staging: comedi: usbdux: remove checkpatch.pl warnings + * Staging: comedi: usbdux: remove typedef + * Staging: comedi: usbdux: remove comedi usb wrappers + * Staging: comedi: usbduxfast: remove comedi usb wrappers + * Staging: comedi: dt9812: remove #ifdef that is not needed + * Staging: comedi: remove usb wrappers + * Staging: comedi: remove PCI wrappers + * Staging: comedi: add icp_multi driver + * Staging: comedi: add me4000 driver + * Staging: comedi: fix checkpatch.pl issues in comedi_bond.c + * Staging: comedi: fix checkpatch.pl issues in comedi_fc.c + * Staging: comedi: remove typedefs from comedi_bond.c + * Staging: comedi: fix sparse issues in comedi_bond.c + * Staging: comedi: fix checkpatch.pl issues in comedi_test.c + * Staging: comedi: fix sparse issues in comedi_test.c + * Staging: comedi: remove typedefs from comedi_test.c + * Staging: comedi: fix comedi_parport.c checkpatch.pl issues. + * Staging: comedi: fix comedi_fc.h checkpatch.pl issues. + * Staging: comedi: fix comedi_pci.h checkpatch.pl issues. + * Staging: comedi: comedi_pci.h: remove unneeded wrapper + * Staging: comedi: comedi_pci.h: remove comedi_pci_enable_no_regions + * Staging: comedi: comedi_pci.h: remove comedi_pci_disable_no_regions + * Staging: comedi: add s626 driver + * Staging: comedi: add rtd520 driver + * Staging: comedi: add me_daq driver + * Staging: comedi: me_daq: fix checkpatch.pl issues + * Staging: comedi: me_daq: remove typedefs + * Staging: comedi: me_daq: fix sparse issues + * Staging: comedi: fix checkpatch.pl warning in interrupt.h + * Staging: comedi: fix build if CONFIG_PROC_FS is not set + * Staging: add asus_oled driver + * Staging: asus_oled: fix build dependancy + * Staging: Add the Meilhaus ME-IDS driver package + * Staging: meilhaus: fix __symbol_get problems + * Staging: add lcd-panel driver + * Staging: panel: major checkpatch cleanup + * Staging: panel: remove ifdefs and code for pre-2.6 kernels + * Staging: panel: remove support for smartcards + * Staging: add Driver for Altera PCI Express Chaining DMA reference design + * Staging: add rtl8187se driver + * Staging: rtl8187se: remove unneeded files + * Staging: rtl8187se: make the built module be the proper name + * Staging: rtl8187se: remove duplicate pci ids + * Staging: me4000: switch to list_for_each*() + * Staging: usbip: switch to list_for_each_entry() + * Staging: add princeton instruments usb camera driver + * Staging: add mimio xi driver + * Staging: add rt2870 wireless driver + * Staging: rt2870: disable root hack for reading files + * Staging: rt2870: fix up netdev->priv usage + * Staging: add frontier tranzport and alphatrack drivers + * Staging: frontier: remove unused alphatrack_sysfs.c file + * Staging: frontier: fix compiler warnings + * Staging: add epl stack + * Staging: epl: run Lindent on all kernel/*.h files + * Staging: epl: run Lindent on all user/*.h files + * Staging: epl: run Lindent on *.h files + * Staging: epl: run Lindent on *.c files + * Staging: epl: hr timers all run in hard irq context now + * Staging: epl: fix netdev->priv b0rkage + * Staging: add android framework + * Staging: android: add binder driver + * Staging: android: binder: Fix gcc warnings about improper format specifiers for size_t in printk + * staging: android: binder: Fix use of euid + * Staging: android: add logging driver + * Staging: android: add ram_console driver + * Staging: android: add timed_gpio driver + * Staging: android: timed_gpio: Rename android_timed_gpio to timed_gpio + * Staging: android: remove dummy android.c driver + * Staging: android: add lowmemorykiller driver + * Staging: android: binder: fix build errors + * staging: __FUNCTION__ is gcc-specific, use __func__ + * V4L/DVB (10176a): Switch remaining clear_user_page users over to + clear_user_highpage + + [ Zhenyu Wang ] + + * agp/intel: add support for G41 chipset + + -- Tim Gardner Sun, 18 Jan 2009 20:22:54 -0700 + +linux (2.6.28-4.11) jaunty; urgency=low + + [ Mario Limonciello ] + + * SAUCE: Enable HDMI audio codec on Studio XPS 1340 + - LP: #309508 + + [ Tim Gardner ] + + * Fix armel d-i FTBSs + + [ Upstream Kernel Changes ] + + * USB: re-enable interface after driver unbinds + + -- Tim Gardner Tue, 13 Jan 2009 16:33:08 -0700 + +linux (2.6.28-4.10) jaunty; urgency=low + + [ Andy Whitcroft ] + + * update kernel bootloader recommends: to prefer grub + - LP: #314004 + * SAUCE: don't use buggy _BCL/_BCM/_BQC for backlight control + - LP: #311716 + * SAUCE: test-suspend -- add the suspend test scripts + - LP: #316419 + + [ Colin Watson ] + + * Enable udebs for armel + + [ Tim Gardner ] + + * SAUCE: Dell laptop digital mic does not work, PCI 1028:0271 + - LP: #309508 + * Enable CIFS_XATTR=y and CONFIG_CIFS_POSIX=y + - LP: #220658 + + -- Tim Gardner Thu, 08 Jan 2009 10:38:22 -0700 + +linux (2.6.28-4.9) jaunty; urgency=low + + [ Tim Gardner ] + + * Restore DM_CRYPT, AES, ECB, and CBC as modules. This fixes + some installer issues with encrypted /home and Private directories. + * Take one more stab at building armel without module or ABI errors. + + -- Tim Gardner Tue, 06 Jan 2009 08:38:23 -0700 + +linux (2.6.28-4.8) jaunty; urgency=low + + * Fix i386/amd64 FTBS by ignoring all module and ABI changes, + not something you would normally do, but I'm sure the ABI + has not changed. This will probably also allow the ARM builds to complete. + + -- Tim Gardner Mon, 05 Jan 2009 14:42:58 -0700 + +linux (2.6.28-4.7) jaunty; urgency=low + + [ Tim Gardner ] + + * Enable CONFIG_ATH5K=m for i386/amd64 + - LP: #306719 + * Build all i386/amd64 AGP/DRM components as modules. + - LP: #312721 + * git commands are now installed outside the default $PATH + Use 'git CMD' instead of 'git-CMD'. + * Build in most PATA/SATA drivers. This should allow most i386/amd64 systems to boot + without an initramfs, though some support work is still required in initramfs-tools + and grub. + - LP: #311730 + + -- Tim Gardner Fri, 02 Jan 2009 07:33:09 -0700 + +linux (2.6.28-4.6) jaunty; urgency=low + + [ Tim Gardner ] + + * Enable CONFIG_X86_E_POWERSAVER=m for i386 generic + - LP: #237405 + * Build i386 AGP drivers as modules + - LP: #312721 + * Build i386 DRM as a module + - LP: #312721 + + [ Upstream Kernel Changes ] + + * drm/i915: Add missing userland definitions for gem init/execbuffer. + - LP: #308387 + + -- Tim Gardner Mon, 29 Dec 2008 09:16:47 -0700 + +linux (2.6.28-4.5) jaunty; urgency=low + + [ Andy Whitcroft ] + + * clean up module dependancy information on package removal/purge + - LP: #300773 + + [ Tim Gardner ] + + * Update iscsitarget to 0.4.17 + * Build in ext{234} + * Build in Crypto modules AES, CBC, ECB + * Build in ACPI AC,BATTERY,BUTTON,FAN,PCI_SLOT,PROCESSOR,SBS,THERMAL,WMI + * Build in AGP intel,via,sis,ali,amd,amd64,efficeon,nvidia,sworks + * Build in ata,dev_dm,dev_loop,dev_md,dev_sd,dev_sr + * Build in BT l2cap,rfcomm,sco + * Reduce CONFIG_LEGACY_PTY_COUNT to 0 + * Build in CDROM_PKTCDVD and CHR_DEV_SG + * Build in CPU_FREQ + GOV_CONSERVATIVE,GOV_ONDEMAND,GOV_POWERSAVE,GOV_USERSPACE,STAT,TABLE + * Build in DM CRYPT,MIRROR,MULTIPATH,SNAPSHOT + * Build in DRM + * Build in HID + * Build in HOTPLUG PCI,PCIE + * Build in I2C + * Build in IEEE1394 OHCI1394 + * Build in INPUT EVDEV + * Build in IPV6 + * Build in MMC + * Build in PACKET + * Enable both IEEE1394 (Firewire) stacks as modules + - LP: #276463 + * Disable SUNRPC_REGISTER_V4 + - LP: #306016 + * Enable dm-raid4-5 + - LP: #309378 + * Build in PPP + * Build in RFKILL + * Build in USB SERIAL + + [ Upstream Kernel Changes ] + + * Rebased to v2.6.28 + + -- Tim Gardner Thu, 18 Dec 2008 21:18:44 -0700 + +linux (2.6.28-3.4) jaunty; urgency=low + + [ Tim Gardner ] + + * Build ecryptfs into the kernel + - LP: #302870 + * Deprecated gnbd + + [ Upstream Kernel Changes ] + + * Rebased to v2.6.28-rc8 + + -- Tim Gardner Wed, 10 Dec 2008 22:45:13 -0700 + +linux (2.6.28-2.3) jaunty; urgency=low + + [ Andy Whitcroft ] + + * update the templates so that we have spaces following the title line + + [ Tim Gardner ] + + * Add upload number to kernel version signature. This has the side effect + of renaming kernel packages back to the original way, e.g., without '-ub' + in the name. + + -- Tim Gardner Thu, 04 Dec 2008 12:18:31 -0700 + +linux (2.6.28-2.2) jaunty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) version: Implement version_signature proc file." + * SAUCE: (no-up) version: Implement version_signature proc file. + * SAUCE: serial: RS485 ioctl structure uses __u32 include linux/types.h + - LP: #303711 + + [ Tim Gardner ] + + * UBUNTU: Removed CONFIG_DRM_VIA_CHROME9 since it is upstream. + * UBUNTU: Removed ubuntu/via_chrome9 + + [ Upstream Kernel Changes ] + + * Rebased to v2.6.28-rc7 + + -- Tim Gardner Tue, 02 Dec 2008 07:33:32 -0700 + +linux (2.6.28-1.1) jaunty; urgency=low + + [ Amit Kucheria ] + + * SAUCE: make fc transport removal of target configurable + * SAUCE: pm: Config option to disable handling of console during + suspend/resume + * SAUCE: Adds support for COMPAL JHL90 webcam + * Map armel to arm to all editconfigs to work correctly + * Add armel to getabis for completeness sake + * Add -ub to our versioning to allow kerneloops.org to identify us + + [ Andy Whitcroft ] + + * Fix Vcs-Git path for the kernel repository. + - LP: #296915 + + [ Ben Collins ] + + * SAUCE: Lower warning level of some PCI messages + - LP: #159241 + * SAUCE: input/mouse/alps: Do not call psmouse_reset() for alps + * SAUCE: tulip: Let dmfe handle davicom on non-sparc + * SAUCE: tulip: Define ULI PCI ID's + * SAUCE: (no-up) version: Implement version_signature proc file. + * SAUCE: (no-up) connector.h: Add idx/val for drbd + * SAUCE: (no-up) swap: Add notify_swap_entry_free callback for compcache + * SAUCE: drivers: Remove some duplicate device entries in various modules + * SAUCE: (no-up) [AppArmor] merge with upstream subversion r1291 + * SAUCE: (no-up) Enable ubuntu extra subdirectory + * SAUCE: (no-up) ACPI: initramfs DSDT override support + * ubuntu: Add drbd module + * ubuntu: Add iscsitarget module + * ubuntu: Add BOM for iscsitarget + * ubuntu: Add squashfs driver + * SAUCE: (no-up) Check for squashfs superblock in initramfs mounting. + * ubuntu: Add aufs module + * ubuntu: Added atl2 driver + * ubuntu: Added et131x driver + * ubuntu: Add dm-raid4-5 driver + * ubuntu: Add ndiswrapper driver + * ubuntu: Added ram backed compressed swap module (compcache) + * ubuntu: Add misc drivers from hardy lum + * ubuntu: Add heci driver 3.2.0.24 + * ubuntu: Add ov511 and bt-sco drivers + * ubuntu: Add acx, prism2_usb wireless drivers + * ubuntu: Add at76 driver to build + * ubuntu: Add fsam7400 sw kill switch driver + * ubuntu: Added qc-usb driver + * ubuntu: e1000e: Upgraded module to 0.4.1.7 + * ubuntu: Added rfkill drivers + * ubuntu: VIA - Add VIA DRM Chrome9 3D engine + * ubuntu: unionfs: Added v1.4 module from hardy + * ubuntu: Add LIRC driver + * ubuntu: Add GFS driver + * ubuntu: New tlsup driver for toshiba laptops + * SAUCE: (no-up) Export lookup_has for aufs + * SAUCE: (no-up) Modularize vesafb + * ubuntu: Config files + * Disable some modules that need porting to 2.6.28 + * ubuntu: Fixup headers creation to include arch/*/include + * ubuntu/module-check: Ignore comment lines + + [ Chuck Short ] + + * SAUCE: ata: blacklist FUJITSU MHW2160BH PL + + [ cking ] + + * SAUCE: Enable speedstep for sonoma processors. + + [ Colin Ian King ] + + * ubuntu: Add dm-loop + * SAUCE: cx88: Support Leadtek WinFast DTV2000 H version J. + * SAUCE: fix kernel oops in VirtualBox during paravirt patching + * SAUCE: qc-usb: Enable Logitech QuickCam Messenger + * SAUCE: appleir: Enable driver for new MacBook Pro + + [ Colin Watson ] + + * Enable configfs, fuse, jfs, reiserfs, and xfs for armel + * Extend debian/d-i/ modules handling to make armel easier to support + * Create udebs for armel + + [ Fabio M. Di Nitto ] + + * ubuntu: update GFS Cluster File System + + [ Kees Cook ] + + * SAUCE: AppArmor: update to upstream subversion r1302 + + [ Leann Ogasawara ] + + * Add automatic model setting for Samsung Q45 + * Add Dell Dimension 9200 reboot quirk + + [ Mackenzie Morgan ] + + * SAUCE: Add quirk for ASUS Z37E to make sound audible after resume + + [ Matthew Garrett ] + + * SAUCE: hostap: send events on data interface as well as master + interface + + [ Michael Frey (Senior Manager, MID ] + + * SAUCE: Send HCI_RESET for Broadcomm 2046 + + [ Michael Haas ] + + * add proper aufs source tree from 20080922 + * Fix AUFS compilation in vfsub.c + * Add splice-2.6.23.patch from AUFS to export a symbol needed by AUFS + * Add put_filp.patch from AUFS to export a symbol needed by AUFS + * Add deny_write_access.patch from AUFS - export deny_write_access + * Add sec_perm-2.6.24.patch from AUFS - export security_inode_permission + * make sure TMPFS_MAGIC is defined in AUFS Makefile + * SAUCE: Revert aufs changes from AppArmor merge + + [ Mohamed Abbas ] + + * SAUCE: iwlagn -- fix rfkill when on when driver loaded + + [ Phillip Lougher ] + + * SAUCE: r8169: disable TSO by default for RTL8111/8168B chipsets. + + [ Stefan Bader ] + + * SAUCE: (no-up) Export dm_disk function of device-mapper + * SAUCE: Restore VT fonts on switch + * SAUCE: mmc: Increase power_up deleay to fix TI readers + * gfs1: GFS1 can't create more than 4kb file + * uvcvideo: Commit streaming parameters when enabling the video stream. + + [ Tim Gardner ] + + * SAUCE: Add extra headers to linux-libc-dev + * SAUCE: Catch nonsense keycodes and silently ignore + * SAUCE: Added support for HDAPS on various ThinkPads from Lenovo and IBM + * SAUCE: Guest OS does not recognize a lun with non zero target id on + Vmware ESX Server + * SAUCE: (no-up) Take care of orinoco_cs overlap with hostap_cs + * ubuntu: Add GNBD driver + * SAUCE: e1000e: Map NV RAM dynamically only when needed. + * SAUCE: Correctly blacklist Thinkpad r40e in ACPI + * SAUCE: Update Wacom tablet driver to 1.49 + * SAUCE: Fix Wacom tablet 1.49 porting errors + * SAUCE: Enable an e1000e Intel Corporation 82567 Gigabit controller + * SAUCE: Fix Oops in wlan_setup + * SAUCE: ipw2200: change default policy for auto-associate + * Dell Wireless 365 needs BTUSB_RESET quirk. + * ndiswrapper remote buffer overflows on long ESSIDs (CVE 2008-4395) + * Disabled ubuntu/e1000e config + + [ Upstream Kernel Changes ] + + * Revert "[Bluetooth] Eliminate checks for impossible conditions in IRQ + handler" + * Revert "x86, early_ioremap: fix fencepost error" + * mac80211: fix two issues in debugfs + * iwl3945: do not send scan command if channel count zero + + -- Ben Collins Fri, 07 Nov 2008 09:37:42 -0700 + +linux (2.6.27-8.17) intrepid-proposed; urgency=low + + [ John W. Linville ] + + * SAUCE: iwlagn: avoid sleep in softirq context + -LP: #286285 + + [ Tim Gardner ] + + * Dell Wireless 365 needs BTUSB_RESET quirk. + - LP: #293670 + * SAUCE: ALSA: hda: make a STAC_DELL_EQ option (version 2) + - LP: #293271 + + [ Upstream Kernel Changes ] + + * iwlagn: downgrade BUG_ON in interrupt + * Input: atkbd - expand Latitude's force release quirk to other Dells + * fbcon_set_all_vcs: fix kernel crash when switching the rotated consoles + * modules: fix module "notes" kobject leak + * Driver core: Fix cleanup in device_create_vargs(). + * Driver core: Clarify device cleanup. + * ath9k/mac80211: disallow fragmentation in ath9k, report to userspace + * md: Fix rdev_size_store with size == 0 + * xfs: fix remount rw with unrecognized options + * OHCI: Allow broken controllers to auto-stop + * USB: OHCI: fix endless polling behavior + * USB: Fix s3c2410_udc usb speed handling + * USB: EHCI: log a warning if ehci-hcd is not loaded first + * usb gadget: cdc ethernet notification bugfix + * usb: musb_hdrc build fixes + * drm/i915: fix ioremap of a user address for non-root (CVE-2008-3831) + * DVB: au0828: add support for another USB id for Hauppauge HVR950Q + * DVB: sms1xxx: support two new revisions of the Hauppauge WinTV + MiniStick + * security: avoid calling a NULL function pointer in + drivers/video/tvaudio.c + * Linux 2.6.27.3 + -LP: #294152 + + * gpiolib: fix oops in gpio_get_value_cansleep() + * edac cell: fix incorrect edac_mode + * x86 ACPI: fix breakage of resume on 64-bit UP systems with SMP kernel + * sched: fix the wrong mask_len + * USB: cdc-wdm: make module autoload work + * USB: don't rebind drivers after failed resume or reset + * USB: fix memory leak in cdc-acm + * USB: Speedtouch: add pre_reset and post_reset routines + * dm kcopyd: avoid queue shuffle + * dm snapshot: fix primary_pe race + * amd_iommu: fix nasty bug that caused ILLEGAL_DEVICE_TABLE_ENTRY errors + * CIFS: fix saving of resume key before CIFSFindNext + * netfilter: xt_iprange: fix range inversion match + * netfilter: snmp nat leaks memory in case of failure + * netfilter: restore lost ifdef guarding defrag exception + * anon_vma_prepare: properly lock even newly allocated entries + * hvc_console: Fix free_irq in spinlocked section + * ACPI Suspend: Enable ACPI during resume if SCI_EN is not set + * ACPI suspend: Blacklist HP xw4600 Workstation for old code ordering + * ACPI suspend: Always use the 32-bit waking vector + * proc: fix vma display mismatch between /proc/pid/{maps,smaps} + * SCSI: scsi_dh: add Dell product information into rdac device handler + * PCI hotplug: cpqphp: fix kernel NULL pointer dereference + * V4L/DVB (9300): pvrusb2: Fix deadlock problem + * Linux 2.6.27.4 + -LP: #294155 + + -- Tim Gardner Tue, 04 Nov 2008 12:16:07 -0700 + +linux (2.6.27-7.16) intrepid-security; urgency=low + + [ Tim Gardner ] + + * ndiswrapper remote buffer overflows on long ESSIDs (CVE 2008-4395) + - LP: #275860 + + [ Upstream Kernel Changes ] + + * ext[234]: Avoid printk floods in the face of directory corruption + (CVE-2008-3528) + + -- Tim Gardner Mon, 03 Nov 2008 13:34:42 -0700 + +linux (2.6.27-7.15) intrepid-security; urgency=low + + [ Upstream Kernel Changes ] + + * tcp: Restore ordering of TCP options for the sake of inter-operability + - LP: #264019 + + -- Tim Gardner Mon, 27 Oct 2008 19:28:06 -0600 + +linux (2.6.27-7.14) intrepid; urgency=low + + [ Tim Gardner ] + + * Disable ath5k in 2.6.27 + - LP: #288148 + + -- Tim Gardner Thu, 23 Oct 2008 07:40:43 -0600 + +linux (2.6.27-7.13) intrepid; urgency=low + + [ Stefan Bader ] + + * gfs1: GFS1 can't create more than 4kb file + + [ Tim Gardner ] + + * Revert "SAUCE: x86: Reserve FIRST_DEVICE_VECTOR in used_vectors + bitmap.". Use upstream commit to avoid future conflicts. + * Revert "STABLE queue: mac80211: fix two issues in debugfs". + Use upstream commit to avoid future conflicts. + * Revert "x86, early_ioremap: fix fencepost error" + Use upstream commit to avoid future conflicts. + + [ Upstream Kernel Changes ] + + * sched_rt.c: resch needed in rt_rq_enqueue() for the root rt_rq + * x86: Reserve FIRST_DEVICE_VECTOR in used_vectors bitmap. + * mac80211: fix two issues in debugfs + * Fix barrier fail detection in XFS + * tty: Termios locking - sort out real_tty confusions and lock reads + * CIFS: make sure we have the right resume info before calling + CIFSFindNext + * rfkill: update LEDs for all state changes + * libertas: clear current command on card removal + * b43legacy: Fix failure in rate-adjustment mechanism + * x86, early_ioremap: fix fencepost error + * x86: SB450: skip IRQ0 override if it is not routed to INT2 of IOAPIC + * x86: improve UP kernel when CPU-hotplug and SMP is enabled + * sky2: Fix WOL regression + * netdrvr: atl1e: Don't take the mdio_lock in atl1e_probe + * Linux 2.6.27.2 + + [ Amit Kucheria ] + + * Ubuntu: agp: Fix stolen memory counting on G4X. + -LP: 285572 + + [ Scott Remnant ] + + * add MODULE_ALIAS to load ipmi_devintf with ipmi_si + + -- Tim Gardner Sun, 19 Oct 2008 10:06:21 -0600 + +linux (2.6.27-7.12) intrepid; urgency=low + + [ Chuck Short ] + + * xen: Add xen modules to virtual flavours. + + [ Mario Limonciello ] + + * SAUCE: Add back in lost commit for Apple BT Wireless Keyboard + - LP: #162083 + + [ Tim Gardner ] + + * Remove depmod created files from packages. + - LP: #250511 + * Changed default TCP congestion algorithm to 'cubic' (again) + - LP: #278801 + * Update configs for 'disable CONFIG_DYNAMIC_FTRACE' + - LP: #263555 + + [ Upstream Kernel Changes ] + + * x86: register a platform RTC device if PNP doesn't describe it + * disable CONFIG_DYNAMIC_FTRACE due to possible memory corruption on + module unload + + -- Tim Gardner Fri, 17 Oct 2008 11:25:39 -0600 + +linux (2.6.27-7.11) intrepid; urgency=low + + [ Amit Kucheria ] + + * STABLE queue: mac80211: fix two issues in debugfs + - LP: #275227 + * SAUCE: Adds support for COMPAL JHL90 webcam + + [ Ben Collins ] + + * SAUCE: (no-up) x86: Quiet "Kernel alive" messages + - LP: #39985 + * SAUCE: (no-up) Modularize vesafb + * build/config: Enable vesafb module + * build: Switch to vesafb as preferred. + + [ Leann Ogasawara ] + + * Add Dell Dimension 9200 reboot quirk + - LP: #271370 + + [ Michael Haas ] + + * SAUCE: Revert aufs changes from AppArmor merge + + [ Tim Gardner ] + + * fix virtio udeb layout + - LP: #257739 + * Enabled CONFIG_EXT4DEV_FS=m + * Changed default TCP congestion algorithm to 'cubic' + - LP: #278801 + * SAUCE: ipw2200: change default policy for auto-associate + - LP: #264104 + + [ Upstream Kernel Changes ] + + * x86, early_ioremap: fix fencepost error + - LP: #263543 + + -- Tim Gardner Sat, 11 Oct 2008 08:07:42 -0600 + +linux (2.6.27-7.10) intrepid; urgency=low + + [ Alexey Starikovskiy ] + + * SAUCE: ACPI: EC: do transaction from interrupt context + - LP: #277802 + + [ Ben Collins ] + + * build/d-i: Change virtio-modules udeb to prio standard + + [ Colin Ian King ] + + * SAUCE: Blacklist IBM 2656 in serio/i8042 + - LP: #21558 + + [ Henrik Rydberg ] + + * Revert "SAUCE: applesmc: Add MacBookAir" + * SAUCE: [PATCH 1/5] hwmon: applesmc: Specified number of bytes to read + should match actual + * SAUCE: [PATCH 2/5] hwmon: applesmc: Fix the 'wait status failed: c != + 8' problem + * SAUCE: [PATCH 3/5] hwmon: applesmc: Prolong status wait + * SAUCE: [PATCH 4/5] hwmon: applesmc: Allow for variable ALV0 and ALV1 + package length + * SAUCE: [PATCH 5/5] hwmon: applesmc: Add support for Macbook Air + * SAUCE: hwmon: applesmc: Add support for Macbook Pro 4 + * SAUCE: hwmon: applesmc: Add support for Macbook Pro 3 + * SAUCE: hwmon: applesmc: Lighter wait mechanism, drastic improvement + + [ Leann Ogasawara ] + + * Add automatic model setting for Samsung Q45 + - LP: #200210 + + [ Tim Gardner ] + + * SAUCE: Correctly blacklist Thinkpad r40e in ACPI + - LP: #278794 + * SAUCE: Update Wacom tablet driver to 1.49 + - LP: #260675 + * SAUCE: ALPS touchpad for Dell Latitude E6500/E6400 + - LP: #270643 + * SAUCE: Fix Wacom tablet 1.49 porting errors + * SAUCE: Enable an e1000e Intel Corporation 82567 Gigabit controller + * SAUCE: Fix Oops in wlan_setup + - LP: #263309 + + [ Upstream Kernel Changes ] + + * ath9k: fix oops on trying to hold the wrong spinlock + * [Bluetooth] Fix double frees on error paths of btusb and bpa10x drivers + * [Bluetooth] Add reset quirk for new Targus and Belkin dongles + * [Bluetooth] Add reset quirk for A-Link BlueUSB21 dongle + * Revert "ax25: Fix std timer socket destroy handling." + * ax25: Quick fix for making sure unaccepted sockets get destroyed. + * netrom: Fix sock_orphan() use in nr_release + * Revert "V4L/DVB (8904): cx88: add missing unlock_kernel" + * SLOB: fix bogus ksize calculation + * net: only invoke dev->change_rx_flags when device is UP + * tcp: Fix possible double-ack w/ user dma + * net: Fix netdev_run_todo dead-lock + * tcp: Fix tcp_hybla zero congestion window growth with small rho and large cwnd. + * [MIPS] Sibyte: Register PIO PATA device only for Swarm and Litte Sur + * eeepc-laptop: Fix hwmon interface + * hwmon: (it87) Prevent power-off on Shuttle SN68PT + * hwmon: Define sysfs interface for energy consumption register + * hwmon: (adt7473) Fix some bogosity in documentation file + * hwmon: (abituguru3) Enable reading from AUX3 fan on Abit AT8 32X + * hwmon: (abituguru3) Enable DMI probing feature on Abit AT8 32X + * [CPUFREQ] correct broken links and email addresses + * SLOB: fix bogus ksize calculation fix + * Don't allow splice() to files opened with O_APPEND + * Linux 2.6.27 + + -- Tim Gardner Wed, 08 Oct 2008 21:19:34 -0600 + +linux (2.6.27-6.9) intrepid; urgency=low + + [ Kees Cook ] + + * SAUCE: AppArmor: update to upstream subversion r1302 + - LP: #269921 + + [ Stefan Bader ] + + * Update configuration files to be compliant to desktop specs + - LP: #279019 + + [ Tim Gardner ] + + * Add support in e1000e for a couple of ICH10 PCI IDs + * Enable CONFIG_INPUT_PCSPKR=m + - LP: #275453 + + [ Upstream Kernel Changes ] + + * V4L/DVB (8559a): Fix a merge conflict at gspca/sonixb + * V4L/DVB (8789): wm8739: remove wrong kfree + * V4L/DVB (8883): w9968cf: Fix order of usb_alloc_urb validation + * V4L/DVB (8884): em28xx-audio: fix memory leak + * V4L/DVB (8885): cpia2_usb: fix memory leak + * V4L/DVB (8886): ov511: fix memory leak + * V4L/DVB (8887): gspca: fix memory leak + * V4L/DVB (8892): pvrusb2: Handle USB ID 2040:2950 same as 2040:2900 + * V4L/DVB (8904): cx88: add missing unlock_kernel + * V4L/DVB (8905): ov511: fix exposure sysfs attribute bug + * V4L/DVB (8909): gspca: PAC 7302 webcam 093a:262a added. + * hrtimer: migrate pending list on cpu offline + * hrtimer: fix migration of CB_IRQSAFE_NO_SOFTIRQ hrtimers + * hrtimer: mark migration state + * hrtimer: prevent migration of per CPU hrtimers + * [IA64] Put the space for cpu0 per-cpu area into .data section + * powerpc: Fix PCI in Holly device tree + * powerpc: Fix failure to shutdown with CPU hotplug + * mfd: Fix Kconfig accroding to the new gpiolib symbols + * mfd: Fix asic3 compilation + * x86: fix typo in enable_mtrr_cleanup early parameter + * ipsec: Fix pskb_expand_head corruption in xfrm_state_check_space + * iucv: Fix mismerge again. + * ALSA: ASoC: Fix cs4270 error path + * ALSA: hda - Fix model for Dell Inspiron 1525 + * sctp: Fix kernel panic while process protocol violation parameter + * x86: Fix broken LDT access in VMI + * x86, vmi: fix broken LDT access + * tcp: Fix NULL dereference in tcp_4_send_ack() + * ipv6: NULL pointer dereferrence in tcp_v6_send_ack + * XFRM,IPv6: initialize ip6_dst_blackhole_ops.kmem_cachep + * af_key: Free dumping state on socket close + * dm: always allow one page in dm_merge_bvec + * dm: cope with access beyond end of device in dm_merge_bvec + * dm mpath: add missing path switching locking + * MN10300: Fix IRQ handling + * pxa2xx_spi: fix build breakage + * e1000e: write protect ICHx NVM to prevent malicious write/erase + * powerpc: Fix boot hang regression on MPC8544DS + * ASoC: Set correct name for WM8753 rec mixer output + * ALSA: snd-powermac: mixers for PowerMac G4 AGP + * ALSA: snd-powermac: HP detection for 1st iMac G3 SL + * fbcon: fix monochrome color value calculation + * inotify: fix lock ordering wrt do_page_fault's mmap_sem + * braille_console: only register notifiers when the braille console is used + * fix error-path NULL deref in alloc_posix_timer() + * memory hotplug: missing zone->lock in test_pages_isolated() + * mm: tiny-shmem nommu fix + * mm: handle initialising compound pages at orders greater than MAX_ORDER + * e1000e: reset swflag after resetting hardware + * e1000e: do not ever sleep in interrupt context + * e1000e: remove phy read from inside spinlock + * e1000e: drop stats lock + * e1000e: debug contention on NVM SWFLAG + * e1000e: update version from k4 to k6 + * Check mapped ranges on sysfs resource files + * e1000e: Fix incorrect debug warning + * [MIPS] Build fix: Fix irq flags type + * [MIPS] SMTC: Build fix: Fix filename in Makefile + * [MIPS] SMTC: Fix holes in SMTC and FPU affinity support. + * [MIPS] SMTC: Close tiny holes in the SMTC IPI replay system. + * [MIPS] SMTC: Fix SMTC dyntick support. + * [S390] nohz: Fix __udelay. + * [S390] qdio: prevent stack clobber + * Fix init/main.c to use regular printk with '%pF' for initcall fn + * x86 setup: correct segfault in generation of 32-bit reloc kernel + * selinux: Fix an uninitialized variable BUG/panic in selinux_secattr_to_sid() + * rtc: fix kernel panic on second use of SIGIO nofitication + * fbdev: fix recursive notifier and locking when fbdev console is blanked + * orion_spi: fix handling of default transfer speed + * include/linux/stacktrace.h: declare struct task_struct + * cpusets: remove pj from cpuset maintainers + * MAINTAINERS: add mailing list for man-pages + * SubmitChecklist: interfaces changes should CC linux-api@ + * Documentation/HOWTO: info about interface changes should CC linux-api@vger + * dw_dmac: fix copy/paste bug in tasklet + * leds-fsg: change order of initialization and deinitialization + * leds-pca955x: add proper error handling and fix bogus memory handling + * ACPI: Make /proc/acpi/wakeup interface handle PCI devices (again) + * clockevents: check broadcast tick device not the clock events device + * V4L/DVB (8919): cx18: Fix tuner audio input for Compro H900 cards + * V4L/DVB (8926): gspca: Bad fix of leak memory (changeset 43d2ead315b1). + * V4L/DVB (8933): gspca: Disable light frquency for zc3xx cs2102 Kokom. + * V4L/DVB (8935): em28xx-cards: Remove duplicate entry (EM2800_BOARD_KWORLD_USB2800) + * V4L/DVB (8955): bttv: Prevent NULL pointer dereference in radio_open + * V4L/DVB (8957): zr36067: Restore the default pixel format + * V4L/DVB (8958): zr36067: Return proper bytes-per-line value + * V4L/DVB (8960): drivers/media/video/cafe_ccic.c needs mm.h + * V4L/DVB (8961): zr36067: Fix RGBR pixel format + * V4L/DVB (8963): s2255drv field count fix + * V4L/DVB (8967): Use correct XC3028L firmware for AMD ATI TV Wonder 600 + * V4L/DVB (8978): sms1xxx: fix product name for Hauppauge WinTV MiniStick + * V4L/DVB (8979): sms1xxx: Add new USB product ID for Hauppauge WinTV MiniStick + * V4L/DVB (9029): Fix deadlock in demux code + * V4L/DVB (9037): Fix support for Hauppauge Nova-S SE + * V4L/DVB (9043): S5H1420: Fix size of shadow-array to avoid overflow + * V4L/DVB (9053): fix buffer overflow in uvc-video + * V4L/DVB (9075): gspca: Bad check of returned status in i2c_read() spca561. + * V4L/DVB (9080): gspca: Add a delay after writing to the sonixj sensors. + * V4L/DVB (9092): gspca: Bad init values for sonixj ov7660. + * V4L/DVB (9099): em28xx: Add detection for K-WORLD DVB-T 310U + * V4L/DVB (9103): em28xx: HVR-900 B3C0 - fix audio clicking issue + * x86: gart iommu have direct mapping when agp is present too + * ide-cd: temporary tray close fix + * ide-dma: fix ide_build_dmatable() for TRM290 + * IDE: Fix platform device registration in Swarm IDE driver (v2) + * ide-cd: Optiarc DVD RW AD-7200A does play audio + * ide: workaround for bogus gcc warning in ide_sysfs_register_port() + * [MIPS] Fix CMP Kconfig configuration and mark as broken. + * [MIPS] IP27: Fix build errors if CONFIG_MAPPED_KERNEL=y + * x86 ACPI: Blacklist two HP machines with buggy BIOSes + * kgdb, x86: Avoid invoking kgdb_nmicallback twice per NMI + * kgdb: call touch_softlockup_watchdog on resume + * atmel-mci: Initialize BLKR before sending data transfer command + * Marker depmod fix core kernel list + * Linux 2.6.27-rc9 + + -- Tim Gardner Sun, 05 Oct 2008 21:27:49 -0600 + +linux (2.6.27-5.8) intrepid; urgency=low + + [ Amit Kucheria ] + + * Update AUFS-related Kconfig + - LP: #264048 + + [ Michael Haas ] + + * add proper aufs source tree from 20080922 + * Fix AUFS compilation in vfsub.c + * Add splice-2.6.23.patch from AUFS to export a symbol needed by AUFS + * Add put_filp.patch from AUFS to export a symbol needed by AUFS + * apply (modified) lhash.patch from AUFS to export __lookup_hash() + * Add deny_write_access.patch from AUFS - export deny_write_access + * Add sec_perm-2.6.24.patch from AUFS - export security_inode_permission + * make sure TMPFS_MAGIC is defined in AUFS Makefile + + [ Tim Gardner ] + + * Enabled CONFIG_IPWIRELESS + - LP: #274748 + * Enabled CONFIG_E1000E, disabled CONFIG_E1000E_NEW + This takes advantage of the upstream NVM protection fix in + commit 4a7703582836f55a1cbad0e2c1c6ebbee3f9b3a7. + + [ Upstream Kernel Changes ] + + * Revert "[Bluetooth] Eliminate checks for impossible conditions in IRQ + handler" + * [SCSI] qla2xxx: Defer enablement of RISC interrupts until ISP + initialization completes. + * PCI: Fix pcie_aspm=force + * PCI: fix compiler warnings in pci_get_subsys() + * UBIFS: create the name of the background thread in every case + * UBIFS: TNC / GC race fixes + * UBIFS: remove incorrect assert + * UBIFS: fix printk format warnings + * AMD IOMMU: set iommu sunc flag after command queuing + * AMD IOMMU: protect completion wait loop with iommu lock + * sparc64: Fix disappearing PCI devices on e3500. + * x86, oprofile: BUG scheduling while atomic + * ALSA: ASoC: Fix at32-pcm build breakage with PM enabled + * ath9k: connectivity is lost after Group rekeying is done + * wireless: zd1211rw: add device ID fix wifi dongle "trust nw-3100" + * [IA64] Ski simulator doesn't need check_sal_cache_flush + * [IA64] kexec fails on systems with blocks of uncached memory + * ath9k: Fix IRQ nobody cared issue with ath9k + * [Bluetooth] Fix I/O errors on MacBooks with Broadcom chips + * [Bluetooth] Fix wrong URB handling of btusb driver + * [Bluetooth] Fix USB disconnect handling of btusb driver + * sparc64: Fix missing devices due to PCI bridge test in + of_create_pci_dev(). + * [WATCHDOG] ibmasr: remove unnecessary spin_unlock() + * [WATCHDOG] wdt285: fix sparse warnings + * [WATCHDOG] unlocked_ioctl changes + * x86: fix 27-rc crash on vsmp due to paravirt during module load + * sched: fix init_hrtick() section mismatch warning + * clockevents: prevent cpu online to interfere with nohz + * x86: prevent stale state of c1e_mask across CPU offline/online + * clockevents: prevent stale tick_next_period for onlining CPUs + * clockevents: check broadcast device not tick device + * clockevents: prevent mode mismatch on cpu online + * x86: prevent C-states hang on AMD C1E enabled machines + * x86: c1e_idle: don't mark TSC unstable if CPU has invariant TSC + * timers: fix build error in !oneshot case + * ALSA: ASoC: maintainers - update email address for Liam Girdwood + * ibmasr: remove unnecessary spin_unlock() + * smb.h: do not include linux/time.h in userspace + * kernel-doc: allow structs whose members are all private + * kexec: fix segmentation fault in kimage_add_entry + * Documentation/DMA-mapping.txt: update for pci_dma_mapping_error() + changes + * sys_paccept: disable paccept() until API design is resolved + * mm: tiny-shmem fix lock ordering: mmap_sem vs i_mutex + * Documentation/sysctl/kernel.txt: fix softlockup_thresh description + * memcg: check under limit at shrink_usage + * atmel_serial: update the powersave handler to match serial core + * [SCSI] Fix hang with split requests + * USB Storage: Sierra: Non-configurable TRU-Install + * USB Serial: Sierra: Device addition & version rev + * USB: ehci: fix some ehci hangs and crashes + * USB: Fix the Nokia 6300 storage-mode. + * USB: Correct Sierra Wireless USB EVDO Modem Device ID + * USB: fix hcd interrupt disabling + * USB: update of Documentation/usb/anchors.txt + * usb gadget: fix omap_udc DMA regression + * USB: Fixing Nokia 3310c in storage mode + * usb: musb: fix include path + * USB: fix EHCI periodic transfers + * usb-serial: Add Siemens EF81 to PL-2303 hack triggers + * USB: SERIAL CP2101 add device IDs + * USB: unusual_devs addition for RockChip MP3 player + * USB: fsl_usb2_udc: fix VDBG() format string + * usb serial: ti_usb_3410_5052 obviously broken by firmware changes + * USB: ftdi_sio: Add 0x5050/0x0900 USB IDs (Papouch Quido USB 4/4) + * USB: serial: add ZTE CDMA Tech id to option driver + * USB Serial: Sierra: Add MC8785 VID/PID + * USB: drivers/usb/musb/: disable it on SuperH + * usb: ftdi_sio: add support for Domintell devices + * usb: unusual devs patch for Nokia 5310 Music Xpress + * USB: revert recovery from transient errors + * [MIPS] au1000: Fix gpio direction + * [MIPS] Fixe the definition of PTRS_PER_PGD + * x86: prevent stale state of c1e_mask across CPU offline/online, fix + * x86: disable apm on the olpc + * i2c-powermac: Fix section for probe and remove functions + * i2c-dev: Return correct error code on class_create() failure + * i2c: Fix mailing lists in two MAINTAINERS entries + * ath9k: disable MIB interrupts to fix interrupt storm + * 9p: implement proper trans module refcounting and unregistration + * 9p-trans_fd: fix trans_fd::p9_conn_destroy() + * 9p-trans_fd: clean up p9_conn_create() + * 9p-trans_fd: don't do fs segment mangling in p9_fd_poll() + * 9p-trans_fd: fix and clean up module init/exit paths + * 9p: introduce missing kfree + * 9p: use an IS_ERR test rather than a NULL test + * 9p: fix put_data error handling + * netfilter: ip6t_{hbh,dst}: Rejects not-strict mode on rule insertion + * MN10300: Move asm-arm/cnt32_to_63.h to include/linux/ + * MN10300: Make sched_clock() report time since boot + * ALSA: fix locking in snd_pcm_open*() and snd_rawmidi_open*() + * ALSA: remove unneeded power_mutex lock in snd_pcm_drop + * IPoIB: Fix crash when path record fails after path flush + * [XFS] Fix extent list corruption in xfs_iext_irec_compact_full(). + * [XFS] Remove xfs_iext_irec_compact_full() + * kgdb: could not write to the last of valid memory with kgdb + * kgdb, x86, arm, mips, powerpc: ignore user space single stepping + * kgdb, x86_64: gdb serial has BX and DX reversed + * kgdb, x86_64: fix PS CS SS registers in gdb serial + * kgdboc,tty: Fix tty polling search to use name correctly + * ARM: Delete ARM's own cnt32_to_63.h + * m32r: remove the unused NOHIGHMEM option + * m32r: don't offer CONFIG_ISA + * m32r: export empty_zero_page + * m32r: export __ndelay + * m32r/kernel/: cleanups + * [MIPS] au1000: Make sure GPIO value is zero or one + * [MIPS] IP27: Switch to dynamic interrupt routing avoding panic on + error. + * [MIPS] BCM47xx: Fix build error due to missing PCI functions + * [SSB] Initialise dma_mask for SSB_BUSTYPE_SSB devices + * Swarm: Fix crash due to missing initialization + * ide-tape: fix vendor strings + * ide: note that IDE generic may prevent other drivers from attaching + * cdrom: update ioctl documentation + * [SCSI] qlogicpti: fix sg list traversal error in continuation entries + * sata_nv: reinstate nv_hardreset() for non generic controllers + * scsi: fix fall out of sg-chaining patch in qlogicpti + * ALSA: make the CS4270 driver a new-style I2C driver + * ALSA: ASoC: Fix another cs4270 error path + * Fix NULL pointer dereference in proc_sys_compare + * kconfig: fix silentoldconfig + * kconfig: readd lost change count + * mm owner: fix race between swapoff and exit + * Linux 2.6.27-rc8 + * e1000e: write protect ICHx NVM to prevent malicious write/erase + + -- Amit Kucheria Tue, 30 Sep 2008 18:22:35 +0300 + +linux (2.6.27-4.7) intrepid; urgency=low + + [ Ben Collins ] + + * build/abi: Add gfs1 to perm blacklist + * build/abi: Ignored changes in gfs2 symbols + + [ Fabio M. Di Nitto ] + + * Revert "SAUCE: Export gfs2 symbols required for gfs1 kernel module" + * ubuntu: update GFS Cluster File System + + [ Stefan Bader ] + + * SAUCE: x86: Reserve FIRST_DEVICE_VECTOR in used_vectors bitmap. + - LP: #276334 + + [ Tim Gardner ] + + * Revert "Disable e1000e until the NVRAM corruption problem is found." + * Add atl1e and atl2 to Debian installer bits + - LP: #273904 + * SAUCE: e1000e: Map NV RAM dynamically only when needed. + - LP: #263555 + + -- Tim Gardner Fri, 26 Sep 2008 20:51:22 -0600 + +linux (2.6.27-4.6) intrepid; urgency=low + + [ Tim Gardner ] + + * Disable e1000e until the NVRAM corruption problem is found. + - LP: #263555 + + [ Upstream Kernel Changes ] + + * Revert "[Bluetooth] Eliminate checks for impossible conditions in IRQ + handler" + + -- Ben Collins Tue, 23 Sep 2008 09:53:57 -0400 + +linux (2.6.27-4.5) intrepid; urgency=low + + [ Upstream Kernel Changes ] + + * Revert "b43/b43legacy: add RFKILL_STATE_HARD_BLOCKED support" + * udf: Fix lock inversion between iprune_mutex and alloc_mutex (v2) + * udf: Fix error paths in udf_new_inode() + * [SCSI] sd: select CRC_T10DIF only when necessary + * [SCSI] zfcp: Fix request queue locking + * [SCSI] zfcp: Correctly query end flag in gpn_ft response + * [SCSI] zfcp: Simplify ccw notify handler + * [SCSI] zfcp: Fix reference counter for remote ports + * [SCSI] zfcp: channel cannot be detached due to refcount imbalance + * [SCSI] zfcp: Remove duplicated unlikely() macros. + * [SCSI] scsi_dh: make check_sense return ADD_TO_MLQUEUE + * [SCSI] make scsi_check_sense HARDWARE_ERROR return ADD_TO_MLQUEUE on + retry + * [SCSI] fix check of PQ and PDT bits for WLUNs + * pcm037: add rts/cts support for serial port + * i.MX serial: fix init failure + * imx serial: set RXD mux bit on i.MX27 and i.MX31 + * imx serial: fix rts handling for non imx1 based hardware + * mlx4_core: Set RAE and init mtt_sz field in FRMR MPT entries + * udf: add llseek method + * PCI/iommu: blacklist DMAR on Intel G31/G33 chipsets + * PCI: Fix printk warnings in probe.c + * PCI: Fix printk warnings in setup-bus.c + * PCI Hotplug: fakephp: fix deadlock... again + * clockevents: remove WARN_ON which was used to gather information + * ocfs2: Fix a bug in direct IO read. + * arch/x86/kernel/kdebugfs.c: introduce missing kfree + * [IA64] fix compile failure with non modular builds + * [IA64] fix up bte.h + * [IA64] arch/ia64/sn/pci/tioca_provider.c: introduce missing kfree + * PCI: fix pciehp_free_irq() + * [IA64] prevent ia64 from invoking irq handlers on offline CPUs + * ide: Fix pointer arithmetic in hpt3xx driver code (3rd try) + * add deprecated ide-scsi to feature-removal-schedule.txt + * swiotlb: fix back-off path when memory allocation fails + * sparc64: Fix interrupt register calculations on Psycho and Sabre. + * VIDEO_SH_MOBILE_CEU should depend on HAS_DMA + * m68k: Update defconfigs for 2.6.27-rc6 + * sparc32: Fix function signature of of_bus_sbus_get_flags(). + * sched: fix 2.6.27-rc5 couldn't boot on tulsa machine randomly + * sched: fix deadlock in setting scheduler parameter to zero + * KVM: SVM: fix random segfaults with NPT enabled + * KVM: SVM: fix guest global tlb flushes with NPT + * KVM: VMX: Always return old for clear_flush_young() when using EPT + * clocksource, acpi_pm.c: fix check for monotonicity + * [ARM] OMAP: Fix MMC device data + * block: disable sysfs parts of the disk command filter + * ath9k: Assign seq# when mac80211 requests this + * sg: disable interrupts inside sg_copy_buffer + * MN10300: Change the fault handler to check in_atomic() not + in_interrupt() + * [Bluetooth] Fix regression from using default link policy + * netlink: fix overrun in attribute iteration + * x86: fix possible x86_64 and EFI regression + * sparc64: Fix PCI error interrupt registry on PSYCHO. + * sparc: Fix user_regset 'n' field values. + * niu: panic on reset + * PCI: re-add debug prints for unmodified BARs + * [ARM] 5245/1: Fix warning about unused return value in drivers/pcmcia + * [ARM] 5246/1: tosa: add proper clock alias for tc6393xb clock + * [ARM] 5247/1: tosa: SW_EAR_IN support + * [ARM] Fix PCI_DMA_BUS_IS_PHYS for ARM + * ata: duplicate variable sparse warning + * sata_inic162x: enable LED blinking + * [libata] LBA28/LBA48 off-by-one bug in ata.h + * proc: more debugging for "already registered" case + * include/linux/ioport.h: add missing macro argument for devm_release_* + family + * cpuset: avoid changing cpuset's cpus when -errno returned + * cpuset: hotplug documentation fix + * coredump_filter: add description of bit 4 + * bfs: fix Lockdep warning + * mm: ifdef Quicklists in /proc/meminfo + * spi_mpc83xx: fix clockrate calculation for low speed + * spi_mpc83xx: reject invalid transfer sizes + * pxa2xx_spi: chipselect bugfixes + * pxa2xx_spi: dma bugfixes + * mm: mark the correct zone as full when scanning zonelists + * Documentation/ABI: /sys/class/gpio + * MAINTAINERS: fix USB VIDEO CLASS mail list address + * ia64: fix panic during `modprobe -r xpc' + * atmel_lcdfb: disable LCD and DMA engines when suspending + * spi_s3c24xx: fix section warning + * rescan_partitions(): make device capacity errors non-fatal + * memstick: fix MSProHG 8-bit interface mode support + * Add Uwe Kleine-König to .mailmap + * xen: fix for xen guest with mem > 3.7G + * x86/paravirt: Remove duplicate paravirt_pagetable_setup_{start, done}() + * crypto: talitos - Avoid consecutive packets going out with same IV + * slub: fixed uninitialized counter in struct kmem_cache_node + * udp: Fix rcv socket locking + * IB/mlx4: Fix up fast register page list format + * [MIPS] VR41xx: unsigned irq cannot be negative + * x86: completely disable NOPL on 32 bits + * [S390] cio: Fix driver_data handling for ccwgroup devices. + * [S390] cio: fix orb initialization in cio_start_key + * sparc64: Fix OOPS in psycho_pcierr_intr_other(). + * sparc64: Fix SMP bootup with CONFIG_STACK_DEBUG or ftrace. + * RDMA/nes: Fix client side QP destroy + * IPoIB: Fix deadlock on RTNL between bcast join comp and ipoib_stop() + * clockevents: make device shutdown robust + * powerpc: Fix interrupt values for DMA2 in MPC8610 HPCD device tree + * hpplus: fix build regression + * Fix PNP build failure, bugzilla #11276 + * warn: Turn the netdev timeout WARN_ON() into a WARN() + * [XFS] Move memory allocations for log tracing out of the critical path + * [XFS] Fix regression introduced by remount fixup + * [XFS] Prevent direct I/O from mapping extents beyond eof + * [XFS] Fix barrier status change detection. + * [XFS] Prevent lockdep false positives when locking two inodes. + * [XFS] Fix use-after-free with buffers + * [XFS] Don't do I/O beyond eof when unreserving space + * powerpc: Holly board needs dtbImage target + * Fix compile failure with non modular builds + * [ARM] 5249/1: davinci: remove redundant check in davinci_psc_config() + * [ARM] omap: back out 'internal_clock' support + * sctp: set the skb->ip_summed correctly when sending over loopback. + * [ARM] 5255/1: Update jornada ssp to remove build errors/warnings + * sctp: do not enable peer features if we can't do them. + * sctp: Fix oops when INIT-ACK indicates that peer doesn't support AUTH + * bnx2: Promote vector field in bnx2_irq structure from u16 to unsigned + int + * forcedeth: call restore mac addr in nv_shutdown path + * e1000: prevent corruption of EEPROM/NVM + * e100: Use pci_pme_active to clear PME_Status and disable PME# + * md: Don't wait UNINTERRUPTIBLE for other resync to finish + * atstk1000: fix build breakage with BOARD_ATSTK100X_SW2_CUSTOM=y + * avr32: add .gitignore files + * avr32: add generic_find_next_le_bit bit function + * avr32: fix sys_sync_file_range() call convention + * avr32: nmi_enter() without nmi_exit() + * KVM: ia64: 'struct fdesc' build fix + * hwmon: (atxp1) Fix device detection logic + * hwmon: (it87) Fix fan tachometer reading in IT8712F rev 0x7 (I) + * hwmon: (ad7414) Make ad7414_update_device() static + * tmio_mmc: fix compilation with debug enabled + * atmel-mci: debugfs: enable clock before dumping regs + * atmel-mci: Fix memory leak in atmci_regs_show + * atmel-mci: Fix bogus debugfs file size + * atmel-mci: Set MMC_CAP_NEEDS_POLL if no detect_pin + * mmc_block: handle error from mmc_register_driver() + * mmc_test: initialize mmc_test_lock statically + * [MIPS] Fix 64-bit IP checksum code + * [MIPS] SMTC: Clear TIF_FPUBOUND on clone / fork. + * [MIPS] Fix potential latency problem due to non-atomic cpu_wait. + * [MIPS] vmlinux.lds.S: handle .text.* + * MAINTAINERS: Trivial whitespace cleanups + * MAINTAINERS: Various fixes + * Linux 2.6.27-rc7 + + -- Tim Gardner Sun, 21 Sep 2008 21:49:28 -0600 + +linux (2.6.27-3.4) intrepid; urgency=low + + [ Colin Ian King ] + + * SAUCE: fix kernel oops in VirtualBox during paravirt patching + - LP: #246067 + * SAUCE: qc-usb: Enable Logitech QuickCam Messenger + - LP: #209901 + * SAUCE: appleir: Enable driver for new MacBook Pro + - LP: #157919 + + [ Tim Gardner ] + + * Enabled CONFIG_DEBUG_RODATA=y + + [ Upstream Kernel Changes ] + + * Revert "ALSA: hda - Added model selection for iMac 24"" + * Revert "x86: fix HPET regression in 2.6.26 versus 2.6.25, check hpet + against BAR, v3" + * Revert "[ARM] use the new byteorder headers" + * Revert "mac80211: Use IWEVASSOCREQIE instead of IWEVCUSTOM" + * Revert "crypto: camellia - Use kernel-provided bitops, unaligned access + helpers" + * svcrdma: Fix race between svc_rdma_recvfrom thread and the dto_tasklet + * sched, cpuset: rework sched domains and CPU hotplug handling (v4) + * ACPI: Fix now signed module parameter. + * ACPI: Change package length error to warning + * ACPI: Fix now signed module parameter. + * ACPI: Fix typo in "Disable MWAIT via DMI on broken Compal board" + * acpi: add checking for NULL early param + * UBIFS: fix zero-length truncations + * Input: bcm5974 - add maintainer entry + * sh64: re-add the __strnlen_user() prototype + * sh: fix ptrace_64.c:user_disable_single_step() + * PNPACPI: ignore the producer/consumer bit for extended IRQ descriptors + * UBIFS: always read hashed-key nodes under TNC mutex + * UBIFS: allow for racing between GC and TNC + * [CIFS] Fix plaintext authentication + * sparc32: Implement smp_call_function_single(). + * sh: crash kernel resource fix + * sh: fix kexec entry point for crash kernels + * sh: fix platform_resource_setup_memory() section mismatch + * sh: update Migo-R defconfig + * sh: update AP325RXA defconfig + * sh: fix semtimedop syscall + * cifs: fix O_APPEND on directio mounts + * [CIFS] update cifs change log + * [CIFS] Turn off Unicode during session establishment for plaintext + authentication + * ACPI: thinkpad-acpi: wan radio control is not experimental + * sparc: Fix resource flags for PCI children in OF device tree. + * remove blk_register_filter and blk_unregister_filter in gendisk + * ALSA: oxygen: fix distorted output on AK4396-based cards + * ipv6: When we droped a packet, we should return NET_RX_DROP instead of + 0 + * pkt_sched: Fix locking of qdisc_root with qdisc_root_sleeping_lock() + * net: Unbreak userspace usage of linux/mroute.h + * Don't trigger softlockup detector on network fs blocked tasks + * Resource handling: add 'insert_resource_expand_to_fit()' function + * sparc64: setup_valid_addr_bitmap_from_pavail() should be __init + * UBIFS: do not update min_idx_lebs in stafs + * UBIFS: push empty flash hack down + * UBIFS: remove incorrect index space check + * UBIFS: improve statfs reporting + * UBIFS: fix assertion + * UBIFS: add forgotten gc_idx_lebs component + * UBIFS: introduce LEB overhead + * UBIFS: improve statfs reporting even more + * UBIFS: fill f_fsid + * drm/radeon: downgrade debug message from info to debug. + * Remove invalidate_partition call from do_md_stop. + * Fix problem with waiting while holding rcu read lock in md/bitmap.c + * ALSA: hda: Distortion fix for dell_m6_core_init + * ALSA: ASoC: fix pxa2xx-i2s clk_get call + * block: restore original behavior of /proc/partition when there's no + partition + * debugobjects: fix lockdep warning + * avr32: Fix lockup after Java stack underflow in user mode + * avr32: pm_standby low-power ram bug fix + * nfsd: fix compound state allocation error handling + * sunrpc: fix possible overrun on read of /proc/sys/sunrpc/transports + * nfsd: fix buffer overrun decoding NFSv4 acl + * audit: Moved variable declaration to beginning of function + * Fix modules_install on RO nfs-exported trees. + * Remove '#include ' from mm/page_isolation.c + * dabusb_fpga_download(): fix a memory leak + * [MTD] mtdchar.c: Fix regression in MEMGETREGIONINFO ioctl() + * ALSA: hda - Fix ALC663 auto-probe + * ALSA: hda - Add mic-boost controls to ALC662/663 auto configuration + * Un-break printk strings in x86 PCI probing code + * kernel/resource.c: fix new kernel-doc warning + * softlockup: minor cleanup, don't check task->state twice + * fix typo in arch/parisc/hpux/fs.c + * m68k: atari_keyb_init operator precedence fix + * ACPI: Fix typo in "Disable MWAIT via DMI on broken Compal board" + * don't diff generated firmware files + * IDE: compile fix for sff_dma_ops + * IDE: palm_bk3710: fix compile warning for unused variable + * ide: fix hwif_to_node() + * palm_bk3710: improve IDE registration + * ide-disk: remove stale init_idedisk_capacity() documentation + * ide/Kconfig: mark ide-scsi as deprecated + * net/wireless/Kconfig: clarify the description for + CONFIG_WIRELESS_EXT_SYSFS + * iwlwifi: do not use GFP_DMA in iwl_tx_queue_init + * iwlwifi: workaround interrupt handling no some platforms + * iwlwifi: fix apm_stop (wrong bit polarity for FLAG_INIT_DONE) + * iwlwifi: fix 64bit platform firmware loading + * orinoco: Multicast to the specified addresses + * wireless/libertas/if_cs.c: fix memory leaks + * mac80211: Fix debugfs union misuse and pointer corruption + * rt2x00: Compiler warning unmasked by fix of BUILD_BUG_ON + * ath9k: Incorrect key used when group and pairwise ciphers are + different. + * ath9: Fix ath_rx_flush_tid() for IRQs disabled kernel warning message. + * net/xfrm: Use an IS_ERR test rather than a NULL test + * ipv: Re-enable IP when MTU > 68 + * NTFS: update homepage + * mm: make setup_zone_migrate_reserve() aware of overlapping nodes + * VFS: fix dio write returning EIO when try_to_release_page fails + * acer-wmi: remove debugfs entries upon unloading + * mm/bootmem: silence section mismatch warning - + contig_page_data/bootmem_node_data + * MAINTAINERS: add a maintainer for the BCM5974 multitouch driver + * 8250: improve workaround for UARTs that don't re-assert THRE correctly + * mmc: at91_mci: don't use coherent dma buffers + * pid_ns: zap_pid_ns_processes: fix the ->child_reaper changing + * pid_ns: (BUG 11391) change ->child_reaper when init->group_leader exits + * cirrusfb: check_par fixes + * devcgroup: fix race against rmdir() + * mm: show quicklist usage in /proc/meminfo + * mm: size of quicklists shouldn't be proportional to the number of CPUs + * ipc: document the new auto_msgmni proc file + * hp-wmi: update to match current rfkill semantics + * hp-wmi: add proper hotkey support + * tdfxfb: fix SDRAM memory size detection + * tdfxfb: fix frame buffer name overrun + * rtc_time_to_tm: fix signed/unsigned arithmetic + * ibft: fix target info parsing in ibft module + * sysfs: document files in /sys/firmware/sgi_uv/ + * rtc-cmos: wake again from S5 + * pm_qos_requirement might sleep + * drivers/char/random.c: fix a race which can lead to a bogus BUG() + * ipsec: Fix deadlock in xfrm_state management. + * [x86] Fix TSC calibration issues + * tipc: Don't use structure names which easily globally conflict. + * sparc64: Fix IPI call locking. + * [ARM] omap: fix gpio.c build error + * sparc64: Prevent sparc64 from invoking irq handlers on offline CPUs + * powerpc: Fix uninitialised variable in VSX alignment code + * powerpc: Only make kernel text pages of linear mapping executable + * powerpc: Make sure _etext is after all kernel text + * powerpc: Work around gcc's -fno-omit-frame-pointer bug + * powerpc: Fix build error with 64K pages and !hugetlbfs + * powerpc: Fix for getting CPU number in power_save_ppc32_restore() + * UBIFS: amend f_fsid + * net/usb/pegasus: avoid hundreds of diagnostics + * ixgbe: initialize interrupt throttle rate + * pcnet-cs, axnet_cs: add new IDs, remove dup ID with less info + * netxen: Remove workaround for chipset quirk + * Split up PIT part of TSC calibration from native_calibrate_tsc + * iwlwifi: W/A for the TSF correction in IBSS + * iwlwifi: fix hidden ssid discovery in passive channels + * iwlwifi: remove false rxon if rx chain changes + * iwlwifi: fix station mimo power save values + * iwlwifi: fix rx_chain computation + * iwlwifi: fix Tx cmd memory allocation failure handling + * iwlwifi: call apm stop on exit + * iwlwifi: fix STATUS_EXIT_PENDING is not set on pci_remove + * ath9k: Fix TX status reporting + * ath9k: Fix TX control flag use for no ACK and RTS/CTS + * V4L/DVB (8555): au8522: add mechanism to configure IF frequency for vsb + and qam + * V4L/DVB (8556): au0828: add support for Hauppauge Woodbury + * V4L/DVB (8598): au8522: clean up function au8522_set_if + * V4L/DVB (8599): au8522: remove if frequency settings from vsb/qam + modulation tables + * V4L/DVB (8600): au0828: explicitly set 6 MHz IF frequency in + hauppauge_hvr950q_config + * V4L/DVB (8629): v4l2-ioctl: do not try to handle private V4L1 ioctls + * V4L/DVB (8633): ivtv: update ivtv version number + * V4L/DVB (8648): ivtv: improve CC support + * V4L/DVB (8660): gspca: Simplify the scan of URB packets in pac7311. + * V4L/DVB (8661): gspca: Bug in the previous changeset about pac7311. + * V4L/DVB (8663): gspca: Webcam 0c45:6128 added in sonixj. + * V4L/DVB (8664): gspca: The bridge/sensor of the webcam 093a:2621 is a + PAC 7302. + * V4L/DVB (8665): gspca: Fix the 640x480 resolution of the webcam + 093a:2621. + * V4L/DVB (8666): gspca: Bad scanning of frames in pac7311. + * V4L/DVB (8667): gspca: Bad probe of Z-Star/Vimicro webcams with pas106 + sensor. + * V4L/DVB (8668): gspca: Conflict GSPCA / ET61X251 for the webcam + 102c:6251. + * V4L/DVB (8669): gspca: Add white balance control for spca561 rev 012A. + * V4L/DVB (8671): gspca: Remove the unused field 'dev_name' of the device + structure. + * V4L/DVB (8672): gspca: Big rewrite of spca561. + * V4L/DVB (8673): gspca: Bad frame scanning again and bad init in + pac7311. + * V4L/DVB (8674): gspca: Webcam 0c45:612e added in sonixj. + * V4L/DVB (8675): gspca: Pixmap PJPG (Pixart 73xx JPEG) added, generated + by pac7311. + * V4L/DVB (8678): Remove the dead CONFIG_RADIO_MIROPCM20{,_RDS} code + * V4L/DVB (8681): v4l2-ioctl.c: fix warning + * V4L/DVB (8682): V4L: fix return value of register video func + * V4L/DVB (8701): cx18: Add missing lock for when the irq handler + manipulates the queues + * V4L/DVB (8703): gspca: Do controls work for spca561 revision 12a. + * V4L/DVB (8705): gspca: Adjust some control limits in spca561. + * V4L/DVB (8706): Make contrast and brightness work for pac7302. + * V4L/DVB (8707): gspca: Colors, hflip and vflip controls added for + pac7302. + * V4L/DVB (8709): gspca: Fix initialization and controls of sn9x110 - + ov7630. + * V4L/DVB (8710): gspca: Bad color control in sonixj. + * V4L/DVB (8711): gspca: Bad controls and quantization table of pac7311. + * V4L/DVB (8712): gspca: Bad start of sonixj webcams since changeset + a8779025e7e8. + * V4L/DVB (8713): gspca: Bad color control again in sonixj. + * V4L/DVB (8714): gspca: Bad start of sn9c110 and sensor om6802. + * V4L/DVB (8715): gspca: Change the name of some webcam in the gspca doc. + * V4L/DVB (8716): gspca: Bad start of sn9c110 and sensor ov7630. + * V4L/DVB (8717): gspca: Frame buffer too small for small resolutions + (sonixj and t613). + * V4L/DVB (8718): gspca: suspend/resume added. + * V4L/DVB (8719): gspca: Have VIDIOC_QUERYCTRL more compliant to the + spec. + * V4L/DVB (8720): gspca: V4L2_CAP_SENSOR_UPSIDE_DOWN added as a cap for + some webcams. + * V4L/DVB (8722): sms1xxx: fix typo in license header + * V4L/DVB (8726): link tuner before saa7134 + * V4L/DVB (8727): V4L1: make PMS not autoprobe when builtin. + * V4L/DVB (8728): 1-make-pms-not-autoprobe-when-builtin update + * V4L/DVB (8749): Fix error code, when camera is not turned on by sonypi + * V4L/DVB (8750): V4L: check inval in video_register_device_index() + * V4L/DVB (8751): vivi: Fix some issues at vivi register routine + * V4L/DVB (8757): v4l-dvb: fix a bunch of sparse warnings + * V4L/DVB (8769): cx18: Simplify queue flush logic to prevent oops in + cx18_flush_queues() + * V4L/DVB (8778): radio: fix incorrect video_register_device result check + * V4L/DVB (8779): v4l: fix more incorrect video_register_device result + checks + * V4L/DVB (8790): saa7115: call i2c_set_clientdata only when state != + NULL + * V4L/DVB (8803): s5h1409: Enable QAM_AUTO mode + * V4L/DVB (8804): s5h1411: Enable QAM_AUTO mode + * V4L/DVB (8805): Steven Toth email address change + * V4L/DVB (8809): gspca: Revert commit + 9a9335776548d01525141c6e8f0c12e86bbde982 + * V4L/DVB (8810): gspca: Compile error when CONFIG_PM not defined. + * V4L/DVB (8812): gspca: Do pac73xx webcams work. + * V4L/DVB (8813): gspca: Adjust SOF detection for pac73xx. + * V4L/DVB (8814): gspca: Set DISABLED the disabled controls at query + control time. + * V4L/DVB (8815): gspca: Fix problems with disabled controls. + * V4L/DVB (8816): gspca: Set disabled ctrls and fix a register pb with + ovxxxx in sonixb. + * V4L/DVB (8817): gspca: LED and proble changes in sonixb. + * V4L/DVB (8818): gspca: Reinitialize the device on resume. + * V4L/DVB (8819): gspca: Initialize the ov519 at open time and source + cleanup. + * V4L/DVB (8820): gspca: Change initialization and gamma of zc3xx - + pas106. + * V4L/DVB (8822): gspca: Change some subdriver functions for + suspend/resume. + * V4L/DVB (8823): gspca: H and V flips work for ov7670 only in ov519. + * V4L/DVB (8824): gspca: Too much code removed in the suspend/resume + changeset. + * V4L/DVB (8825): gspca: More controls for pac73xx and new webcam + 093a:2624. + * V4L/DVB (8826): gspca: Webcam Labtec 2200 (093a:2626) added in pac7311. + * V4L/DVB (8827): gspca: Stop pac7302 autogain oscillation. + * V4L/DVB (8828): gspca: Set the clock at the end of initialization in + sonixj. + * V4L/DVB (8829): gspca: Have a clean kmalloc-ated buffer for USB + exchanges. + * V4L/DVB (8830): gspca: Move some probe code to the new init function. + * V4L/DVB (8831): gspca: Resolve webcam conflicts between some drivers. + * V4L/DVB (8832): gspca: Bad pixelformat of vc0321 webcams. + * V4L/DVB (8833): gspca: Cleanup the sonixb code. + * V4L/DVB (8834): gspca: Have a bigger buffer for sn9c10x compressed + images. + * V4L/DVB (8835): gspca: Same pixfmt as the sn9c102 driver and raw Bayer + added in sonixb. + * V4L/DVB (8837): dvb: fix I2C adapters name size + * V4L/DVB (8839): dib0700: add comment to identify 35th USB id pair + * V4L/DVB (8840): dib0700: add basic support for Hauppauge Nova-TD-500 + (84xxx) + * V4L/DVB (8842): vivi_release(): fix use-after-free + * V4L/DVB (8843): tda10048_firmware_upload(): fix a memory leak + * V4L/DVB (8844): dabusb_fpga_download(): fix a memory leak + * bnx2x: Accessing un-mapped page + * SELinux: memory leak in security_context_to_sid_core + * x86: add io delay quirk for Presario F700 + * mmap: fix petty bug in anonymous shared mmap offset handling + * x86: Change warning message in TSC calibration. + * PCI: fix pbus_size_mem() resource alignment for CardBus controllers + * [ARM] omap: fix build error in ohci-omap.c + * [ARM] remove unused #include + * ACPI: Make Len Brown the ACPI maintainer again + * fujitsu-laptop: fix regression for P8010 in 2.6.27-rc + * ACPI: Avoid bogus timeout about SMbus check + * acer-wmi: remove debugfs entries upon unloading + * forgotten refcount on sysctl root table + * V4L/DVB (8868): gspca: Support for vga modes with sif sensors in + sonixb. + * V4L/DVB (8869): gspca: Move the Sonix webcams with TAS5110C1B from + sn9c102 to gspca. + * V4L/DVB (8870): gspca: Fix dark room problem with sonixb. + * V4L/DVB (8872): gspca: Bad image format and offset with rev072a of + spca561. + * V4L/DVB (8873): gspca: Bad image offset with rev012a of spca561 and + adjust exposure. + * V4L/DVB (8874): gspca: Adjust hstart for sn9c103/ov7630 and update + usb-id's. + * [ARM] omap: fix virtual vs physical address space confusions + * V4L/DVB (8876): budget: udelay changed to mdelay + * V4L/DVB (8877): b2c2 and bt8xx: udelay to mdelay + * V4L/DVB (8880): PATCH: Fix parents on some webcam drivers + * V4L/DVB (8881): gspca: After 'while (retry--) {...}', retry will be -1 + but not 0. + * powerpc/spufs: Fix multiple get_spu_context() + * powerpc/spufs: Fix race for a free SPU + * Input: bcm5974 - small formatting cleanup + * Input: bcm5974 - improve finger tracking and counting + * Input: bcm5974 - add BTN_TOUCH event for mousedev benefit + * Input: i8042 - make Lenovo 3000 N100 blacklist entry more specific + * sh: resume_kernel fix for kernel oops built with CONFIG_BKL_PREEMPT=y. + * sh64: resume_kernel fix for kernel oops built with + CONFIG_BKL_PREEMPT=y. + * i2c: fix i2c-sh_mobile timing issues + * clockevents: prevent clockevent event_handler ending up handler_noop + * clockevents: prevent endless loop in periodic broadcast handler + * clockevents: enforce reprogram in oneshot setup + * clockevents: prevent multiple init/shutdown + * clockevents: prevent endless loop lockup + * HPET: make minimum reprogramming delta useful + * [MTD] [NAND] tmio_nand: fix base address programming + * Fix conditional export of kvh.h and a.out.h to userspace. + * async_tx: fix the bug in async_tx_run_dependencies + * sched_clock: fix NOHZ interaction + * sched: fix process time monotonicity + * UBIFS: fix division by zero + * UBIFS: make minimum fanout 3 + * [MIPS] Fix data bus error recovery + * [MIPS] Fix WARNING: at kernel/smp.c:290 + * [MIPS] TXx9: Fix txx9_pcode initialization + * [MIPS] TX39xx: Add missing local_flush_icache_range initialization + * [MIPS] Probe initrd header only if explicitly specified + * res_counter: fix off-by-one bug in setting limit + * forcedeth: fix kexec regression + * atmel_lcdfb: fix oops in rmmod when framebuffer fails to register + * tracehook: comment pasto fixes + * drivers/mmc/card/block.c: fix refcount leak in mmc_block_open() + * x86: boot: stub out unimplemented CPU feature words + * x86: add NOPL as a synthetic CPU feature bit + * x86: use X86_FEATURE_NOPL in alternatives + * clockevents: broadcast fixup possible waiters + * x86: HPET fix moronic 32/64bit thinko + * x86: HPET: read back compare register before reading counter + * Fix CONFIG_AC97_BUS dependency + * [ARM] 5241/1: provide ioremap_wc() + * ntp: fix calculation of the next jiffie to trigger RTC sync + * clocksource, acpi_pm.c: use proper read function also in errata mode + * clocksource, acpi_pm.c: check for monotonicity + * x86: delay early cpu initialization until cpuid is done + * x86: move mtrr cpu cap setting early in early_init_xxxx + * sched: arch_reinit_sched_domains() must destroy domains to force + rebuild + * x86, xen: Use native_pte_flags instead of native_pte_val for .pte_flags + * x86: pda_init(): fix memory leak when using CPU hotplug + * x86: cpu_init(): fix memory leak when using CPU hotplug + * powerpc/spufs: Fix possible scheduling of a context to multiple SPEs + * netfilter: nf_conntrack_sip: de-static helper pointers + * netfilter: nf_conntrack_gre: more locking around keymap list + * netfilter: nf_conntrack_gre: nf_ct_gre_keymap_flush() fixlet + * netfilter: nf_conntrack_irc: make sure string is terminated before + calling simple_strtoul + * pkt_sched: Fix qdisc state in net_tx_action() + * powerpc: Fix rare boot build breakage + * ahci, pata_marvell: play nicely together + * sata_mv: add RocketRaid 1720 PCI ID to driver + * ahci: disable PMP for marvell ahcis + * sata_nv: disable hardreset for generic + * libata-sff: kill spurious WARN_ON() in ata_hsm_move() + * pata_sil680: remove duplicate pcim_enable_device + * ahci: RAID mode SATA patch for Intel Ibex Peak DeviceIDs + * [MIPS] IP22: Fix detection of second HPC3 on Challenge S + * xen: fix 2.6.27-rc5 xen balloon driver warnings + * x86: disable static NOPLs on 32 bits + * netns : fix kernel panic in timewait socket destruction + * bridge: don't allow setting hello time to zero + * NFS: Restore missing hunk in NFS mount option parser + * usb: fix null deferences in low level usb serial + * Fix format of MAINTAINERS + * sparc64: Disable timer interrupts in fixup_irqs(). + * [Bluetooth] Fix reference counting during ACL config stage + * [Bluetooth] Enforce correct authentication requirements + * [Bluetooth] Reject L2CAP connections on an insecure ACL link + * [S390] CVE-2008-1514: prevent ptrace padding area read/write in 31-bit + mode + * [S390] cio: Correct cleanup on error. + * [S390] cio: handle ssch() return codes correctly. + * [S390] cio: allow offline processing for disconnected devices + * ipsec: Restore larval states and socket policies in dump + * update Documentation/filesystems/Locking for 2.6.27 changes + * MAINTAINERS: add Atheros maintainer for atlx + * lib: Correct printk %pF to work on all architectures + * x86: fix memmap=exactmap boot argument + * clockevents: remove WARN_ON which was used to gather information + * ipv6: Fix OOPS in ip6_dst_lookup_tail(). + * Linux 2.6.27-rc6 + + -- Ben Collins Tue, 02 Sep 2008 12:45:56 -0400 + +linux (2.6.27-2.3) intrepid; urgency=low + + [ Ben Collins ] + + * build/retag: Make script save .orig of tags for later use + * ubuntu/lirc: Fix device_create call + * build/firmware: Put in-kernel firmware into version specific subdir + - LP: #262115 + * Rebase on linux-2.6 git. + * ABI bump + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: (no-up) Apparmor warning fixes + + [ John Johansen ] + + * SAUCE: (no-up) Proper AppArmor ptrace updates for newer lsm API + + [ Mackenzie Morgan ] + + * SAUCE: Add quirk for ASUS Z37E to make sound audible after resume + - LP: #25896 + + -- Ben Collins Wed, 27 Aug 2008 14:03:05 -0400 + +linux (2.6.27-1.2) intrepid; urgency=low + + [ Amit Kucheria ] + + * SAUCE: make fc transport removal of target configurable + * SAUCE: pm: Config option to disable handling of console during + suspend/resume + + [ Ben Collins ] + + * SAUCE: Lower warning level of some PCI messages + * SAUCE: input/mouse/alps: Do not call psmouse_reset() for alps + * SAUCE: tulip: Let dmfe handle davicom on non-sparc + * SAUCE: tulip: Define ULI PCI ID's + * SAUCE: (no-up) version: Implement version_signature proc file. + * SAUCE: (no-up) connector.h: Add idx/val for drbd + * SAUCE: (no-up) swap: Add notify_swap_entry_free callback for compcache + * SAUCE: drivers: Remove some duplicate device entries in various modules + * SAUCE: (no-up) [AppArmor] merge with upstream subversion r1291 + * SAUCE: apparmor: Update for changes to ptrace lsm hooks + * SAUCE: (no-up) Enable ubuntu extra subdirectory + * SAUCE: applesmc: Add MacBookAir + * SAUCE: (no-up) ACPI: initramfs DSDT override support + * ubuntu: Add drbd module + * ubuntu: Add iscsitarget module + * ubuntu: Add BOM for iscsitarget + * ubuntu: Add squashfs driver + * SAUCE: (no-up) Check for squashfs superblock in initramfs mounting. + * ubuntu: Add aufs module + * ubuntu: Added atl2 driver + * ubuntu: Added et131x driver + * ubuntu: Add dm-raid4-5 driver + * ubuntu: Add ndiswrapper driver + * ubuntu: Added ram backed compressed swap module (compcache) + * ubuntu: Add misc drivers from hardy lum + * ubuntu: Add heci driver 3.2.0.24 + * ubuntu: Add ov511 and bt-sco drivers + * ubuntu: Add acx, prism2_usb wireless drivers + * ubuntu: Add at76 driver to build + * ubuntu: Add fsam7400 sw kill switch driver + * ubuntu: Added qc-usb driver + * ubuntu: e1000e: Upgraded module to 0.4.1.7 + * ubuntu: Added rfkill drivers + * ubuntu: VIA - Add VIA DRM Chrome9 3D engine + * ubuntu: unionfs: Added v1.4 module from hardy + * ubuntu: Add LIRC driver + * ubuntu: Add GFS driver + * ubuntu: New tlsup driver for toshiba laptops + * Update config files + * build/d-i: Remove obsolete dm modules + + [ Chuck Short ] + + * SAUCE: ata: blacklist FUJITSU MHW2160BH PL + + [ Colin Ian King ] + + * ubuntu: Add dm-loop + * SAUCE: Enable speedstep for sonoma processors. + + [ Dennis Noordsij ] + + * SAUCE: Work around ACPI corruption upon suspend on some Dell machines. + + [ Fabio M. Di Nitto ] + + * SAUCE: Export gfs2 symbols required for gfs1 kernel module + + [ Matthew Garrett ] + + * SAUCE: hostap: send events on data interface as well as master + interface + + [ Michael Frey (Senior Manager, MID ] + + * SAUCE: Send HCI_RESET for Broadcomm 2046 + + [ Phillip Lougher ] + + * SAUCE: r8169: disable TSO by default for RTL8111/8168B chipsets. + + [ Stefan Bader ] + + * SAUCE: (no-up) Export dm_disk function of device-mapper + * SAUCE: Restore VT fonts on switch + * SAUCE: mmc: Increase power_up deleay to fix TI readers + + [ Tim Gardner ] + + * SAUCE: Add extra headers to linux-libc-dev + * SAUCE: Catch nonsense keycodes and silently ignore + * SAUCE: Added support for HDAPS on various ThinkPads from Lenovo and IBM + * SAUCE: Guest OS does not recognize a lun with non zero target id on + Vmware ESX Server + * SAUCE: (no-up) Take care of orinoco_cs overlap with hostap_cs + * ubuntu: Add GNBD driver + + -- Ben Collins Sat, 23 Aug 2008 15:48:35 -0400 + +linux (2.6.27-0.0) intrepid; urgency=low + + * Not uploaded, placeholder for new release + + -- Ben Collins Sat, 23 Aug 2008 15:48:35 -0400 + +linux (2.6.26-5.17) intrepid; urgency=low + + [ Ben Collins ] + + * build/abi: Add tosh_smm symbol to blacklist + + -- Ben Collins Fri, 15 Aug 2008 09:29:34 -0400 + +linux (2.6.26-5.16) intrepid; urgency=low + + [ Ben Collins ] + + * Revert "SAUCE: toshiba_acpi: Rewrote most of the proc entry bits." + * Revert "SAUCE: Update toshiba_acpi.c to version 0.19a" + * build/config: Disable in-kernel toshiba driver(s) + * ubuntu/tlsup: New driver for toshiba laptops + * build/config: Enable TLSUP driver + * SAUCE: e1000e: Fix E1000E_ENABLED logic to check for our E1000E_NEW + driver as well + * ubuntu/e1000e: Remove E1000E_ENABLED option in local config + * build/config: Update configs to have E1000E_ENABLED set + * ubuntu/prism2: Remove duplicate device + + [ Fabio M. Di Nitto ] + + * SAUCE: Export gfs2 symbols required for gfs1 kernel module + + [ Stefan Bader ] + + * SAUCE: x86: HPET rework for SB700 + - LP: #255910 + + [ Tim Gardner ] + + * Add GNBD driver + * Enable GNBD driver + * SAUCE: Add GFS driver + * SAUCE: Enable gfs driver configs + * b43: Linksys WMP54G (BCM4306/3) card in a PCI format has an SPROM + coding + + [ Upstream Kernel Changes ] + + * KVM: x86 emulator: emulate clflush + * USB: quirk PLL power down mode + + -- Ben Collins Mon, 11 Aug 2008 13:19:28 -0400 + +linux (2.6.26-5.15) intrepid; urgency=low + + [ Ben Collins ] + + * Revert "SAUCE: Add blacklist support to fix Belkin bluetooth dongle." + - Superceded by upstream changes. + * build/config: New option enabled for uvcvideo + * build/control: Add Vcs-Git meta data to control file + * SAUCE: toshiba_acpi: Rewrote most of the new code + * abi/perm-blacklist: Add emu10k1 driver to blacklist + + [ Upstream Kernel Changes ] + + * pxamci: trivial fix of DMA alignment register bit clearing + * udplite: Protection against coverage value wrap-around + * ipv6: use timer pending + * ipv6: __KERNEL__ ifdef struct ipv6_devconf + * hdlcdrv: Fix CRC calculation. + * quota: fix possible infinite loop in quota code + * isofs: fix minor filesystem corruption + * KVM: VMX: Fix a wrong usage of vmcs_config + * KVM: SVM: fix suspend/resume support + * KVM: mmu_shrink: kvm_mmu_zap_page requires slots_lock to be held + * KVM: VMX: Add ept_sync_context in flush_tlb + * KVM: x86 emulator: Fix HLT instruction + * KVM: MMU: nuke shadowed pgtable pages and ptes on memslot destruction + * KVM: MMU: Fix potential race setting upper shadow ptes on nonpae hosts + * Patch Upstream: x86 ptrace: fix PTRACE_GETFPXREGS error + * rcu: fix rcu_try_flip_waitack_needed() to prevent grace-period stall + * Fix typos from signal_32/64.h merge + * x86 reboot quirks: add Dell Precision WorkStation T5400 + * USB: fix usb serial pm counter decrement for disconnected interfaces + * x86, suspend, acpi: enter Big Real Mode + * markers: fix duplicate modpost entry + * Fix build on COMPAT platforms when CONFIG_EPOLL is disabled + * proc: fix /proc/*/pagemap some more + * cpusets: fix wrong domain attr updates + * x86: fix crash due to missing debugctlmsr on AMD K6-3 + * ide-cd: fix oops when using growisofs + * rtc-at91rm9200: avoid spurious irqs + * vmlinux.lds: move __attribute__((__cold__)) functions back into final + .text section + * ARM: fix fls() for 64-bit arguments + * tcp: Clear probes_out more aggressively in tcp_ack(). + * sparc64: Fix lockdep issues in LDC protocol layer. + * sparc64: Fix cpufreq notifier registry. + * sparc64: Do not define BIO_VMERGE_BOUNDARY. + * iop-adma: fix platform driver hotplug/coldplug + * myri10ge: do not forget to setup the single slice pointers + * myri10ge: do not use mgp->max_intr_slots before loading the firmware + * ALSA: trident - pause s/pdif output + * V4L: cx18: Upgrade to newer firmware & update documentation + * DVB: dib0700: add support for Hauppauge Nova-TD Stick 52009 + * V4L: uvcvideo: Fix a buffer overflow in format descriptor parsing + * V4L: uvcvideo: Use GFP_NOIO when allocating memory during resume + * V4L: uvcvideo: Don't free URB buffers on suspend + * V4L: uvcvideo: Make input device support optional + * V4L: uvcvideo: Add support for Medion Akoya Mini E1210 integrated + webcam + * V4L: saa7134: Copy tuner data earlier to avoid overwriting manual tuner + type + * V4L: cx23885: Bugfix for concurrent use of /dev/video0 and /dev/video1 + * DVB: cx23885: Ensure PAD_CTRL is always reset to a sensible default + * DVB: cx23885: DVB Transport cards using DVB port VIDB/TS1 did not + stream + * DVB: cx23885: Reallocated the sram to avoid concurrent VIDB/C issues + * DVB: cx23885: SRAM changes for the 885 and 887 silicon parts + * x86: fix kernel_physical_mapping_init() for large x86 systems + * eCryptfs: use page_alloc not kmalloc to get a page of memory + * UML - Fix boot crash + * ixgbe: remove device ID for unsupported device + * mpc52xx_psc_spi: fix block transfer + * tmpfs: fix kernel BUG in shmem_delete_inode + * markers: fix markers read barrier for multiple probes + * VFS: increase pseudo-filesystem block size to PAGE_SIZE + * cpufreq acpi: only call _PPC after cpufreq ACPI init funcs got called + already + * b43legacy: Release mutex in error handling code + * ath5k: don't enable MSI, we cannot handle it yet + * Fix off-by-one error in iov_iter_advance() + * Linux 2.6.26.1 + * ftrace: remove unneeded documentation + * romfs_readpage: don't report errors for pages beyond i_size + * netfilter: nf_nat_sip: c= is optional for session + * SCSI: bsg: fix bsg_mutex hang with device removal + * x86: idle process - add checking for NULL early param + * x86: io delay - add checking for NULL early param + * Close race in md_probe + * Kprobe smoke test lockdep warning + * netfilter: xt_time: fix time's time_mt()'s use of do_div() + * linear: correct disk numbering error check + * SCSI: ch: fix ch_remove oops + * NFS: Ensure we zap only the access and acl caches when setting new acls + * jbd: fix race between free buffer and commit transaction + * Input: i8042 - add Intel D845PESV to nopnp list + * Input: i8042 - add Gericom Bellagio to nomux blacklist + * Input: i8042 - add Acer Aspire 1360 to nomux blacklist + * Bluetooth: Signal user-space for HIDP and BNEP socket errors + * Add compat handler for PTRACE_GETSIGINFO + * ALSA: hda - Fix wrong volumes in AD1988 auto-probe mode + * ALSA: hda - Fix DMA position inaccuracy + * ALSA: hda - Add missing Thinkpad Z60m support + * ALSA: emu10k1 - Fix inverted Analog/Digital mixer switch on Audigy2 + * vfs: fix lookup on deleted directory + * Ath5k: fix memory corruption + * Ath5k: kill tasklets on shutdown + * sound: ensure device number is valid in snd_seq_oss_synth_make_info + * Linux 2.6.26.2 + + -- Ben Collins Sun, 03 Aug 2008 13:25:02 -0400 + +linux (2.6.26-5.14) intrepid; urgency=low + + [ Ben Collins ] + + * SAUCE: applesmc: Add MacBookAir + * build: Do not build ddeb unless we are on the buildd + * build: control: Consistency in arch fields. + * SAUCE: Update toshiba_acpi.c to version 0.19a + - LP: #77026 + * build: Added perm blacklist support and per-module support to abi-check + - Blacklist p80211 module from abi checks + * ubuntu/lirc: Get rid of drivers symlink and use real include stuff + + + [ Colin Ian King ] + + * SAUCE: acerhk module - add support for Amilo A1650g keyboard + - LP: #84159 + * SAUCE: rt2x00: Fix OOPS on failed creation of rt2x00lib workqueue + - LP: #249242 + + [ Mario Limonciello ] + + * Add LIRC back in + + [ Tim Gardner ] + + * Makefile race condition can lead to ndiswrapper build failure + - LP: #241547 + * update linux-wlan-ng (prism2_usb) to upstream version 1861 + - LP: #245026 + + [ Upstream Kernel Changes ] + + * Fix typos from signal_32/64.h merge + + -- Ben Collins Fri, 01 Aug 2008 00:05:01 -0400 + +linux (2.6.26-5.13) intrepid; urgency=low + + [ Ben Collins ] + + * build: Make makedumpfile an amd64/i386 only build-dep + * ubuntu/acerhk: Fixup assembly to compile with newer binutils + + -- Ben Collins Sat, 26 Jul 2008 16:41:50 -0400 + +linux (2.6.26-4.12) intrepid; urgency=low + + [ Ben Collins ] + + * e1000e: Upgraded module to 0.4.1.7 upstream. Placed in ubuntu/, + in-kernel driver disabled + * config: Disable e1000e in-kernel, and enable newer driver in ubuntu/ + * rfkill: Update to 1.3 drivers, and move to common location + * ubuntu: Actually link kconfig/kbuild into rfkill subdir + * config: Enable loading dsdt from initramfs + - LP: #246222 + * ubuntu: [compcache] Update to fix crashes in improper BUG() + * build: Create a retag scripts to recover tags from rebases + * build: Updates for dbg pkg + * build: Make sure no empty lines show up in debian/files + * ubuntu: atl1e: Add new driver from 2.6.27-pre-rc1 + - LP: #243894 + * sys_getcwd: Fix some brokeness introduced by AppArmor __d_path + changes + - LP: #251223 + * ubuntu: unionfs: Added v1.4 module from hardy + * build: Add sub-flavour infrastructure, and virtual subflav + + [ Eric Piel ] + + * ACPI: Allow custom DSDT tables to be loaded from initramfs + + [ Kees Cook ] + + * AppArmor: Smack VFS patches + + [ Mario Limonciello ] + + * Work around ACPI corruption upon suspend on some Dell machines. + - LP: #183033 + + [ Tim Gardner ] + + * Export usbhid_modify_dquirk for LBM module bcm5974 + - LP: #250838 + * VIA - Add VIA DRM Chrome9 3D engine + - LP: #251862 + * Define TRUE/FALSE for VIA DRM driver. + + -- Ben Collins Tue, 15 Jul 2008 12:51:39 -0400 + +linux (2.6.26-4.11) intrepid; urgency=low + + [ Ben Collins ] + + * config: Enable bcm5974 driver in all configs + + [ 2.6.26-4.10 ] + + [ Amit Kucheria ] + + * Fix typo in GSPCA Makefile and make it compile + + [ Ben Collins ] + + * ubuntu: Remove UVC driver in favor of in-kernel one (-rc9) + * config: Updates for -rc9 + * ubuntu: Add acx, prism2_usb wireless drivers + * config: Enable prism2_usb and acx drivers. + * ubuntu: Add at76 driver to build + * config: Enable at76_usb driver. + * iscsitarget: Fix prototype for bi_end_io callback. + * acx: Fix section type mismatch warnings + * fsam7400: Add sw kill switch driver + * config: Enable fsam7400 driver + * qc-usb: Added new driver + * config: Enable qc-usb driver + * drbd: Remove built-in connector usage + * drbd: Do not define idx/val for connector here + * connector.h: Add idx/val for drbd + * bcm5974: Added new driver + + [ Kees Cook ] + + * SAUCE: [AppArmor] merge with upstream subversion r1291 + * SAUCE: [AppArmor] fix typo in selinux_inode_link + * SAUCE: [AppArmor] aufs patches + + [ Michael Frey (Senior Manager, MID ] + + * SAUCE: Send HCI_RESET for Broadcomm 2046 + - LP: #241749 + + [ Tim Gardner ] + + * SAUCE: Medion Akoya Mini E1210 + + [ Upstream Kernel Changes ] + + * Revert "BAST: Remove old IDE driver" + * ARM: OMAP: DMA: Don't mark channel active in omap_enable_channel_irq + * ARM: OMAP: Correcting the gpmc prefetch control register address + * debugobjects: fix lockdep warning + * [ARM] 5115/1: pxafb: fix ifdef for command line option handling + * [ARM] 5116/1: pxafb: cleanup and fix order of failure handling + * [ARM] 5109/1: Mark rtc sa1100 driver as wakeup source before + registering it + * [ARM] Export dma_sync_sg_for_device() + * fix cgroup-inflicted breakage in block_dev.c + * [patch for 2.6.26 2/4] vfs: utimensat(): be consistent with utime() for + immutable and append-only files + * [patch for 2.6.26 1/4] vfs: utimensat(): ignore tv_sec if tv_nsec == + UTIME_OMIT or UTIME_NOW + * [patch for 2.6.26 3/4] vfs: utimensat(): fix error checking for + {UTIME_NOW,UTIME_OMIT} case + * [patch for 2.6.26 4/4] vfs: utimensat(): fix write access check for + futimens() + * [patch 1/4] vfs: path_{get,put}() cleanups + * [patch 2/4] fs: make struct file arg to d_path const + * [patch 3/4] vfs: fix ERR_PTR abuse in generic_readlink + * [patch 4/4] flock: remove unused fields from file_lock_operations + * [patch 3/3] vfs: make d_path() consistent across mount operations + * [patch 1/3] vfs: dcache sparse fixes + * [patch 2/3] vfs: dcache cleanups + * udf: Fix regression in UDF anchor block detection + * [SCSI] ses: Fix timeout + * netfilter: ip6table_mangle: don't reroute in LOCAL_IN + * [SCSI] esp: Fix OOPS in esp_reset_cleanup(). + * kernel/audit.c: nlh->nlmsg_type is gotten more than once + * audit: fix kernel-doc parameter notation + * remove useless argument type in audit_filter_user() + * Blackfin arch: fix bug - kernel boot fails when Spinlock and rw-lock + debugging enabled + * Blackfin arch: fix up section mismatch warning + * mac80211: implement EU regulatory domain + * b43: Do not return TX_BUSY from op_tx + * b43legacy: Do not return TX_BUSY from op_tx + * b43: Fix possible MMIO access while device is down + * b43legacy: Fix possible NULL pointer dereference in DMA code + * rt2x00: Fix unbalanced mutex locking + * iwlwifi: improve scanning band selection management + * [SCSI] esp: tidy up target reference counting + * [ARM] 5117/1: pxafb: fix __devinit/exit annotations + * thermal: Create CONFIG_THERMAL_HWMON=n + * ACPI: don't walk tables if ACPI was disabled + * dock: bay: Don't call acpi_walk_namespace() when ACPI is disabled. + * x86: shift bits the right way in native_read_tscp + * x86: section/warning fixes + * V4L/DVB (8004): Fix INPUT dependency at budget-ci + * V4L/DVB (8005): Fix OOPS if frontend is null + * V4L/DVB (8007): cx18/cx25840: the S-Video LUMA input can use all + In1-In8 inputs + * V4L/DVB (8008): cx18: remove duplicate audio and video input enums + * V4L/DVB (8010): em28xx: Properly register extensions for already + attached devices + * V4L/DVB (8011): em28xx: enable DVB for HVR-900 + * V4L/DVB (8012): gl861: sleep a little to avoid I2C errors + * V4L/DVB (8013): gl861: remove useless identify_state + * V4L/DVB (8015): gl861: replace non critical msleep(0) with msleep(1) to + be on the safe side + * V4L/DVB (8017): Ensure em28xx extensions only get run against devs that + support them + * V4L/DVB (8018): Add em2860 chip ID + * V4L/DVB (8020): Fix callbacks functions of saa7134_empress + * V4L/DVB (8022): saa7134: fix race between opening and closing the + device + * V4L/DVB (8026): Avoids an OOPS if dev struct can't be successfully + recovered + * V4L/DVB (8027): saa7134: Avermedia A700: only s-video and composite + input are working + * V4L/DVB (8028): Improve error messages for tda1004x attach + * V4L/DVB (8029): Improve error message at tda1004x_attach + * V4L/DVB (8034): tda18271: fix IF notch frequency handling + * V4L/DVB (8035): tda18271: dont touch EB14 if rf_cal lookup is out of + range + * V4L/DVB (8036): tda18271: toggle rf agc speed mode on TDA18271HD/C2 + only + * V4L/DVB (8037): tda18271: ensure that the thermometer is off during + channel configuration + * V4L/DVB (8039): pxa-camera: fix platform_get_irq() error handling. + * V4L/DVB (8040): soc-camera: remove soc_camera_host_class class + * V4L/DVB (8042): DVB-USB UMT-010 channel scan oops + * V4L/DVB (8043): au0828: add support for additional USB device id's + * V4L/DVB (8044): au8522: tuning optimizations + * V4L/DVB (8048): saa7134: Fix entries for Avermedia A16d and Avermedia + E506 + * V4L/DVB (8061): cx18: only select tuner / frontend modules if + !DVB_FE_CUSTOMISE + * V4L/DVB (8063): cx18: Fix unintended auto configurations in + cx18-av-core + * V4L/DVB (8066): cx18: Fix audio mux input definitions for HVR-1600 Line + In 2 and FM radio + * V4L/DVB (8067): cx18: Fix firmware load for case when digital capture + happens first + * V4L/DVB (8068): cx18: Add I2C slave reset via GPIO upon initialization + * V4L/DVB (8069): cx18: Fix S-Video and Compsite inputs for the Yuan + MPC718 and enable card entry + * V4L/DVB (8071): tda10023: Fix possible kernel oops during + initialisation + * V4L/DVB (8073): av7110: Catch another type of ARM crash + * V4L/DVB (8074): av7110: OSD transfers should not be interrupted + * V4L/DVB (8075): stv0299: Uncorrected block count and bit error rate + fixed + * V4L/DVB (8092): videodev: simplify and fix standard enumeration + * V4L/DVB (8096): au8522: prevent false-positive lock status + * V4L/DVB (8097): xc5000: check device hardware state to determine if + firmware download is needed + * V4L/DVB (8100): V4L/vivi: fix possible memory leak in vivi_fillbuff + * V4L/DVB (8108): Fix open/close race in saa7134 + * s2io: fix documentation about intr_type + * tc35815: Mark carrier-off before starting PHY + * tc35815: Fix receiver hangup on Rx FIFO overflow + * ixgbe: fix EEH recovery during reset on PPC + * igb: fix EEH recovery during reset on PPC + * e1000e: fix EEH recovery during reset on PPC + * pcnet_cs, axnet_cs: clear bogus interrupt before request_irq + * drivers/net/r6040.c: Eliminate double sizeof + * ipg: fix jumbo frame compilation + * ipg: use NULL, not zero, for pointers + * [netdrvr] 3c59x: remove irqs_disabled warning from local_bh_enable + * [netdrvr] netxen: fix netxen_pci_tbl[] breakage + * e100: Do pci_dma_sync after skb_alloc for proper operation on ixp4xx + * e1000: only enable TSO6 via ethtool when using correct hardware + * [netdrvr] Fix IOMMU overflow checking in s2io.c + * qla3xxx: Hold RTNL while calling dev_close() + * Hold RTNL while calling dev_close() + * sata_uli: hardreset is broken + * rt2x00: Fix lock dependency errror + * prism: islpci_eth.c endianness fix + * mac80211: fix an oops in several failure paths in key allocation + * firewire: fw-sbp2: fix parsing of logical unit directories + * kbuild: fix a.out.h export to userspace with O= build. + * Ensure interrupted recovery completed properly (v1 metadata plus + bitmap) + * Don't acknowlege that stripe-expand is complete until it really is. + * Fix error paths if md_probe fails. + * hamradio: remove unused variable + * tcp: calculate tcp_mem based on low memory instead of all memory + * tcp: fix for splice receive when used with software LRO + * af_unix: fix 'poll for write'/connected DGRAM sockets + * netdevice: Fix typo of dev_unicast_add() comment + * pkt_sched: ERR_PTR() ususally encodes an negative errno, not positive. + * pkt_sched: Remove CONFIG_NET_SCH_RR + * include/linux/netdevice.h: don't export MAX_HEADER to userspace + * tcp: /proc/net/tcp rto,ato values not scaled properly (v2) + * netlink: Fix some doc comments in net/netlink/attr.c + * CONNECTOR: add a proc entry to list connectors + * inet fragments: fix race between inet_frag_find and + inet_frag_secret_rebuild + * net/inet_lro: remove setting skb->ip_summed when not LRO-able + * netlabel: Fix a problem when dumping the default IPv6 static labels + * ipv6 route: Convert rt6_device_match() to use RT6_LOOKUP_F_xxx flags. + * sched: fix cpu hotplug + * Fix and clean top .gitignore + * x86: fix cpu hotplug crash + * ptrace GET/SET FPXREGS broken + * Input: add KEY_MEDIA_REPEAT definition + * Input: fix locking in force-feedback core + * [ARM] 5131/1: Annotate platform_secondary_init with trace_hardirqs_off + * ide: fix /proc/ide/ide?/mate reporting + * netfilter: nf_conntrack_tcp: fixing to check the lower bound of valid + ACK + * textsearch: fix Boyer-Moore text search bug + * hostap: don't report useless WDS frames by default + * hostap: fix sparse warnings + * mac80211: don't accept WEP keys other than WEP40 and WEP104 + * V4L/DVB (8145a): USB Video Class driver + * [IA64] Bugfix for system with 32 cpus + * [IA64] export account_system_vtime + * sched: fix divide error when trying to configure rt_period to zero + * x86: fix NODES_SHIFT Kconfig range + * block: Fix the starving writes bug in the anticipatory IO scheduler + * Properly notify block layer of sync writes + * rcu: fix hotplug vs rcu race + * I2C: S3C2410: Check ACK on byte transmission + * I2C: S3C2410: Fixup error codes returned rom a transfer. + * I2C: S3C2410: Add MODULE_ALIAS() for s3c2440 device. + * PCI: Restrict VPD read permission to root + * powerpc/bootwrapper: update for initrd with simpleImage + * i2c: Documentation: fix device matching description + * i2c: Fix bad hint about irqs in i2c.h + * powerpc/legacy_serial: Bail if reg-offset/shift properties are present + * powerpc/mpc5200: Fix lite5200b suspend/resume + * ipv4: fix sysctl documentation of time related values + * net-sched: change tcf_destroy_chain() to clear start of filter list + * net-sched: fix filter destruction in atm/hfsc qdisc destruction + * netlink: Unneeded local variable + * net: Tyop of sk_filter() comment + * netdevice: Fix wrong string handle in kernel command line parsing + * net: fib_rules: fix error code for unsupported families + * dm crypt: use cond_resched + * V4L/DVB (8178): uvc: Fix compilation breakage for the other drivers, if + uvc is selected + * PCI: Limit VPD read/write lengths for Broadcom 5706, 5708, 5709 rev. + * PCI: acpiphp: cleanup notify handler on all root bridges + * drivers/input/ff-core.c needs + * DRM/i915: only use tiled blits on 965+ + * tty: Fix inverted logic in send_break + * x86: fix Intel Mac booting with EFI + * arch/x86/mm/init_64.c: early_memtest(): fix types + * 9p: fix O_APPEND in legacy mode + * slub: Do not use 192 byte sized cache if minimum alignment is 128 byte + * Do not overwrite nr_zones on !NUMA when initialising zlcache_ptr + * [MIPS] IP32: Fix unexpected irq 71 + * [MIPS] IP22: Fix crashes due to wrong L1_CACHE_BYTES + * [MIPS] cevt-txx9: Reset timer counter on initialization + * hrtimer: prevent migration for raising softirq + * svcrpc: fix handling of garbage args + * OHCI: Fix problem if SM501 and another platform driver is selected + * USB: fix cdc-acm resume() + * USB: ehci - fix timer regression + * USB: ohci - record data toggle after unlink + * USB: mass storage: new id for US_SC_CYP_ATACB + * sisusbvga: Fix oops on disconnect. + * USB: New device ID for ftdi_sio driver + * USB: fix interrupt disabling for HCDs with shared interrupt handlers + * USB: don't lose disconnections during suspend + * USB: another option device id + * USB: add a pl2303 device id + * USB: fix Oops on loading ipaq module since 2.6.26 + * USB: adding comment for ipaq forcing number of ports + * [MIPS] Fix bug in atomic_sub_if_positive. + * xen: fix address truncation in pte mfn<->pfn conversion + * sata_sil24: add DID for another adaptec flavor + * ahci: always clear all bits in irq_stat + * libata-sff: improve HSM violation reporting + * sata_mv: safer logic for limit_warnings + * Update maintainers for powerpc + * Christoph has moved + * mm: dirty page accounting vs VM_MIXEDMAP + * rtc: rtc_read_alarm() handles wraparound + * firmware: fix the request_firmware() dummy + * serial: fix serial_match_port() for dynamic major tty-device numbers + * get_user_pages(): fix possible page leak on oom + * rtc-x1205: Fix alarm set + * rtc: fix CMOS time error after writing /proc/acpi/alarm + * pci: VT3336 can't do MSI either + * Miguel Ojeda has moved + * ext3: add missing unlock to error path in ext3_quota_write() + * ext4: add missing unlock to an error path in ext4_quota_write() + * reiserfs: add missing unlock to an error path in reiserfs_quota_write() + * ecryptfs: remove unnecessary mux from ecryptfs_init_ecryptfs_miscdev() + * lib: taint kernel in common report_bug() WARN path. + * gpio: pca953x (i2c) handles max7310 too + * fsl_diu_fb: fix build with CONFIG_PM=y, plus fix some warnings + * Update taskstats-struct document for scaled time accounting + * cciss: fix regression that no device nodes are created if no logical + drives are configured. + * delay accounting: maintainer update + * Doc*/kernel-parameters.txt: fix stale references + * hdaps: add support for various newer Lenovo thinkpads + * mn10300: export certain arch symbols required to build allmodconfig + * mn10300: provide __ucmpdi2() for MN10300 + * Introduce rculist.h + * man-pages is supported + * ntfs: update help text + * add kernel-doc for simple_read_from_buffer and memory_read_from_buffer + * w100fb: do not depend on SHARPSL + * w100fb: add 80 MHz modeline + * MFD maintainer + * cgroups: document the effect of attaching PID 0 to a cgroup + * spi: fix the read path in spidev + * doc: doc maintainers + * security: filesystem capabilities: fix fragile setuid fixup code + * security: filesystem capabilities: fix CAP_SETPCAP handling + * Alpha Linux kernel fails with inconsistent kallsyms data + * cpusets: document proc status cpus and mems allowed lists + * MAINTAINERS: update the email address of Andreas Dilger + * cciss: read config to obtain max outstanding commands per controller + * olpc: sdhci: add quirk for the Marvell CaFe's vdd/powerup issue + * olpc: sdhci: add quirk for the Marvell CaFe's interrupt timeout + * cpumask: introduce new APIs + * mm: switch node meminfo Active & Inactive pages to Kbytes + * Update MAINTAINERS file for the TPM device driver + * devcgroup: fix odd behaviour when writing 'a' to devices.allow + * doc: document the relax_domain_level kernel boot argument + * mmc: don't use DMA on newer ENE controllers + * mempolicy: mask off internal flags for userspace API + * x86 ACPI: normalize segment descriptor register on resume + * x86 ACPI: fix resume from suspend to RAM on uniprocessor x86-64 + * softlockup: print a module list on being stuck + * ide: fix hwif->gendev refcounting + * ide: ide_unregister() warm-plug bugfix + * ide: ide_unregister() locking bugfix + * ahci: give another shot at clearing all bits in irq_stat + * Fix clear_refs_write() use of struct mm_walk + * Move _RET_IP_ and _THIS_IP_ to include/linux/kernel.h + * Fix pagemap_read() use of struct mm_walk + * Linux 2.6.26-rc9 + * Revert "USB: don't explicitly reenable root-hub status interrupts" + * Revert "PCI: Correct last two HP entries in the bfsort whitelist" + * iwlwifi: fix incorrect 5GHz rates reported in monitor mode + * iwlwifi: drop skb silently for Tx request in monitor mode + * libertas: support USB persistence on suspend/resume (resend) + * tcp: net/ipv4/tcp.c needs linux/scatterlist.h + * tcp: fix a size_t < 0 comparison in tcp_read_sock + * bridge: fix use-after-free in br_cleanup_bridges() + * Add missing skb->dev assignment in Frame Relay RX code + * forcedeth: fix lockdep warning on ethtool -s + * ehea: fix might sleep problem + * ehea: add MODULE_DEVICE_TABLE + * ehea: fix race condition + * ehea: Access iph->tot_len with correct endianness + * pasemi_mac: Access iph->tot_len with correct endianness + * ibm_newemac: Fixes kernel crashes when speed of cable connected changes + * ibm_newemac: Fixes entry of short packets + * fs_enet: restore promiscuous and multicast settings in restart() + * can: add sanity checks + * x86: KVM guest: Add memory clobber to hypercalls + * KVM: IOAPIC: Fix level-triggered irq injection hang + * [SCSI] erase invalid data returned by device + * pxamci: fix byte aligned DMA transfers + * vsprintf: split out '%s' handling logic + * vsprintf: split out '%p' handling logic + * vsprintf: add infrastructure support for extended '%p' specifiers + * vsprintf: add support for '%pS' and '%pF' pointer formats + * powerpc: Fix unterminated of_device_id array in legacy_serial.c + * [UML] fix gcc ICEs and unresolved externs + * ocfs2/dlm: Fixes oops in dlm_new_lockres() + * hostap_cs: correct poor NULL checks in suspend/resume routines + * drivers/net/wireless/iwlwifi/iwl-3945.c Fix type issue on 64bit + * mac80211: move netif_carrier_on to after + ieee80211_bss_info_change_notify + * mac80211: Only flush workqueue when last interface was removed + * zd1211rw: add ID for AirTies WUS-201 + * ssb-pcicore: Fix IRQ-vector init on embedded devices + * mac80211: don't report selected IBSS when not found + * crypto: tcrypt - Fix memory leak in test_cipher + * sctp: Mark the tsn as received after all allocations finish + * [S390] protect _PAGE_SPECIAL bit against mprotect + * irda: via-ircc proper dma freeing + * irda: New device ID for nsc-ircc + * irda: Fix netlink error path return value + * [SCSI] mptspi: fix oops in mptspi_dv_renegotiate_work() + * Correct hash flushing from huge_ptep_set_wrprotect() + * ide: add __ide_default_irq() inline helper + * palm_bk3710: fix IDECLK period calculation + * it8213: fix return value in it8213_init_one() + * [MIPS] Atlas, decstation: Fix section mismatches triggered by + defconfigs + * [MIPS] Fix 32bit kernels on R4k with 128 byte cache line size + * NFS: Fix readdir cache invalidation + * SUNRPC: Fix a double-free in rpcbind + * SUNRPC: Fix an rpcbind breakage for the case of IPv6 lookups + * reiserfs: discard prealloc in reiserfs_delete_inode + * Fix broken fix for fsl-diu-db + * RDMA/cxgb3: Fix regression caused by class_device -> device conversion + * ipv6: fix race between ipv6_del_addr and DAD timer + * sctp: Add documentation for sctp sysctl variable + * kernel/printk.c: Made printk_recursion_bug_msg static. + * powerpc: Add missing reference to coherent_dma_mask + * rc80211_pid: Fix fast_start parameter handling + * rt2x00: Disable synchronization during initialization + * zd1211rw: stop beacons on remove_interface + * libertas: fix memory alignment problems on the blackfin + * netfilter: nf_conntrack_tcp: fix endless loop + * netfilter: nf_nat_snmp_basic: fix a range check in NAT for SNMP + * md: ensure all blocks are uptodate or locked when syncing + * sched: fix cpu hotplug + * x86: fix /dev/mem compatibility under PAT + * crypto: chainiv - Invoke completion function + * ocfs2: Fix flags in ocfs2_file_lock + * kernel/kprobes.c: Made kprobe_blacklist static. + * arch/x86/kernel/.gitignore: Added vmlinux.lds to .gitignore file + because it shouldn't be tracked. + * ftrace: Documentation + * Fix PREEMPT_RCU without HOTPLUG_CPU + * sched: fix cpu hotplug, cleanup + * exec: fix stack excutability without PT_GNU_STACK + * slub: Fix use-after-preempt of per-CPU data structure + * Documentation: clarify tcp_{r,w}mem sysctl docs + * ip: sysctl documentation cleanup + * tcp: correct kcalloc usage + * ipv4: fib_trie: Fix lookup error return + * netlabel: netlink_unicast calls kfree_skb on error path by itself + * ipv6: missed namespace context in ipv6_rthdr_rcv + * xfrm: Add a XFRM_STATE_AF_UNSPEC flag to xfrm_usersa_info + * tun: Persistent devices can get stuck in xoff state + * tpm: add Intel TPM TIS device HID + * rapidio: fix device reference counting + * Fix name of Russell King in various comments + * rtc: fix reported IRQ rate for when HPET is enabled + * libata-acpi: filter out DIPM enable + * Added Targa Visionary 1000 IDE adapter to pata_sis.c + * libata-acpi: don't call sleeping function from invalid context + * Fix reference counting race on log buffers + * [SCSI] ipr: Fix HDIO_GET_IDENTITY oops for SATA devices + * IPMI: return correct value from ipmi_write + * x86: fix ldt limit for 64 bit + * [SCSI] fusion: default MSI to disabled for SPI and FC controllers + * [SCSI] bsg: fix oops on remove + * drivers/char/pcmcia/ipwireless/hardware.c fix resource leak + * drivers/isdn/i4l/isdn_common.c fix small resource leak + * fbdev: bugfix for multiprocess defio + * serial8250: sanity check nr_uarts on all paths. + * ov7670: clean up ov7670_read semantics + * rtc-fm3130: fix chip naming + * rtc-pcf8563: add chip id + * OProfile kernel maintainership changes + * frv: fix irqs_disabled() to return an int, not an unsigned long + * cifs: fix inode leak in cifs_get_inode_info_unix + * cifs: fix wksidarr declaration to be big-endian friendly + * cpusets, hotplug, scheduler: fix scheduler domain breakage + * Documentation/HOWTO: correct wrong kernel bugzilla FAQ URL + * devcgroup: always show positive major/minor num + * devcgroup: fix permission check when adding entry to child cgroup + * Linux 2.6.26 + + -- Ben Collins Mon, 14 Jul 2008 13:41:50 -0400 + +linux (2.6.26-3.9) intrepid; urgency=low + + * abi: Add dca and ioatdma to modules.ignore + + [ 2.6.26-3.8 ] + + [ Ben Collins ] + + * ubuntu: Add heci driver 3.2.0.24 + * ubuntu: Add heci to kconfig/kbuild + * config: Enable heci module on all flavours + * dm-bbr: Update to get it to compile with 2.6.26 + * config: Enable dm-bbr + * ubuntu: Add some media drivers + * config: Enable misc media drivers + * udeb: Switch to uvesafb in fb-modules + * abi: Add more modules to ignore (known) + + [ 2.6.26-3.7 ] + + [Amit Kucheria] + + * SAUCE: make fc transport removal of target configurable + - LP: #163075 + * SAUCE: pm: Config option to disable handling of console during + suspend/resume + + [Ben Collins] + + * SAUCE: input/mouse/alps: Do not call psmouse_reset() for alps + * SAUCE: irda: Default to dongle type 9 on IBM hardware + * SAUCE: tulip: Let dmfe handle davicom on non-sparc + * SAUCE: tulip: Define ULI PCI ID's + * SAUCE: version: Implement version_signature proc file. + * build: Cleanup arches + * build: Remove remnants of unused binary-custom infrastructure + * build: Remove disable_d_i (not needed) and cleanup ppa build stuff + * ubuntu: New modules, acer-acpi + * build: Remove -virtual, and rebuild configs + * ubuntu: Add drbd module + * acer-acpi: Fix makefile + * x86/Kconfig: Fix missing quote for ubuntu Kconfig source + * ubuntu: Add iscsitarget module + * ubuntu: Added Amiga FS driver + * ubuntu: Add squashfs driver + * ubuntu: Remove asfs (Amiga FS). Need to be in linux-ports instead + * squashfs: Move headers to real include directory + * build/configs: The Great Config Consistency Check of 2008 + * ubuntu: Move third-party includes to ubuntu/include + * ubuntu: Add aufs module + * ubuntu: Added atl2 driver + * ubuntu: Add dm-radi4-5 driver + * build: Add CONFIG_DEBUG_SECTION_MISMATCH=y to get old style warnings + from build + * ubuntu/Makefile: Fixup dm-raid4-5 and add kludge for kbuild + * squashfs: Fixes for VFS changes + * ubuntu/dm-raid4-5: Fixups for moved/renamed headers/functions in core + md + * ubuntu: Add ndiswrapper driver + * d-i: Update module listings + * build: Disable xd block device (ancient) + * ndiswrapper: Fixup makefile + * d-i: Remove efi-modules. The only module, efivars, is built-in + * build: Remove install-source, obsolete and caused build failure + * Ubuntu-2.6.26-1.3 + * build: linux-doc rules got broken when disabling html side. Fixed now. + * Ubuntu-2.6.26-1.4 + * x86: Update to -rc6 allows CONFIG_PCI_OLPC to work with PCI_GOANY + * d-i: Make virtio-ring optional (it's built-in on i386) + * Ubuntu-2.6.26-1.4 + * Ubuntu-2.6.26-1.5 + * config: Enable DVB devices + * ubuntu/aufs: Make aufs a bool config, since it needs to be built-in + * config: Build aufs into the kernels + * build: Fix arguments passed to link-headers script + * config: Disable early printk + * d-i: Move isofs to storage-core and kill st (scsi tape) from list + * config: Enable non-promiscuous access to /dev/mem + * x86: Add option to disable decompression info messages + * config: Enable no-bz-chatter config options + * build: Re-add linux-source package + * d-i: Re-add socket-modules. Accidentally removed + - LP: #241295 + * Ubuntu-2.6.26-2.6 + * Use makedumpfile to generate a vmcoreinfo file. + * build: Build-Depend on makedumpfile for vmcoreinfo generation + * build: Remove debug print from git-ubuntu-log + * Updated configs for -rc7 + * build: postinst, do not call depmod with -F + * config: Enable rtc-cmos as a built-in driver. + * control: Provide ndiswrapper-modules-1.9 + * build: Generate vmcoreinfo in image build for crashdumps without debug + image + * config: Disable vesafb, since we'll prefer uvesafb + * build: Copy uvesafb module to initrd mod directory + * abi-check: New, more robust script + * config: Enable heap randomization by default + * abi-check: Cleanup output and call with perl (not $SHELL) + * abi: Ignore missing vesafb (known) + * config: Disable pcspkr (in favor of snd-pcsp) + * swap: Add notify_swap_entry_free callback for compcache + * compcache: Added ram backed compressed swap module + * ubuntu: Enable kbuild and kconfig for compcache + * config: Enable compcache and tlsf allocator as modules + * config: Updated for -rc8. Disables XEN on i386 + * config: Switch i386-server to 64G, enable PAE, 64-bit res, and XEN + * ubuntu: Add misc drivers from hardy lum + * ubuntu: Enable build of misc/ subdir + * config: Enable misc drivers + * aufs: Fix warning about single non-string-literal arg to printf style + function + * drivers: Remove some duplicate device entries in various modules + * config: Disable some duplicate drivers + * keyspan: Remove duplicate device ID's + * check-aliases: Cleanup output, and fix rolling checks + * ubuntu: Disable dm-bbr for now + * dm-bbr: First cut at forward portiong. Still needs work. + * ubuntu: Disable dm-bbr in kbuild/kconfig + + [Chuck Short] + + * SAUCE: ata: blacklist FUJITSU MHW2160BH PL + - LP: #175834 + * SAUCE: [USB]: add ASUS LCM to the blacklist + + [Colin Ian King] + + * SAUCE: airprime.c supports more devices + - LP: #208250 + * SAUCE: Enable speedstep for sonoma processors. + - LP: #132271 + * Add dm-loop + * Add dm-loop BOM + + [Kyle McMartin] + + * SAUCE: fix orinoco_cs oops + + [Mario Limonciello] + + * SAUCE: Enable Reset and SCO workaround on Dell 410 BT adapter + + [Matthew Garrett] + + * SAUCE: hostap: send events on data interface as well as master + interface + + [Phillip Lougher] + + * SAUCE: r8169: disable TSO by default for RTL8111/8168B chipsets. + + [Stefan Bader] + + * SAUCE: Export dm_disk function of device-mapper + * SAUCE: Restore VT fonts on switch + * SAUCE: Always use SCO protocol (disable eSCO support) Bug: #39414 + * SAUCE: mmc: Increase power_up deleay to fix TI readers OriginalAuthor: + Pascal Terjan Bug: #137686 + * SAUCE: Add blacklist support to fix Belkin bluetooth dongle. Bug: + #140511 + * SAUCE: Lower warning level of pci resource allocation messages. Bug: + 159241 + * SAUCE: Lower message level for PCI memory and I/O allocation. + - LP: #159241 + * Modify log generation to catch bug numbers when adding with git-am. + + [Tim Gardner] + + * Added the debian directory. Ignore: yes + * Add support for UBUNTUINCLUDE Ignore: yes + * LUM headers go in /usr/src Ignore: yes + * First pass at 2.6.25 configs Ignore: yes + * i386 -generic builds. Ignore: yes + * SAUCE: Increase CONFIG_IDE_MAX_HWIFS to 8 (from 4) + * SAUCE: Add extra headers to linux-libc-dev OriginalAuthor: Soren Hansen + OriginalLocation: + https://lists.ubuntu.com/archives/kernel-team/2007-November/001891.html + * Set CONFIG_DEVKMEM=n Ignore: yes + * Enabled ALSA and CGROUPS for i386 Ignore: yes + * Enabled amd64 configs. Ignore: yes + * CONFIG_STANDALONE=n Ignore: yes + * CONFIG_BLK_DEV_4DRIVES=n for i386 Ignore: yes + * CONFIG: CONFIG_DEFAULT_RELATIME=y for all flavours. Ignore: yes + * Set CONFIG_EDD_OFF=y Ignore: yes + * SAUCE: Blacklist Bluetooth Dell Wireless 370 for SCO MTU + OriginalAuthor: Mario Limonciello Bug: + #209715 + * SAUCE: Catch nonsense keycodes and silently ignore + * SAUCE: frame buffer regression - screen blank except for blinking + cursor after fbcon vtswitch OriginalAuthor: Matthew Garrett + Bug: #201591 + * SAUCE: Added support for HDAPS on various ThinkPads from Lenovo and IBM + OriginalAuthor: Klaus S. Madsen + OriginalAuthor: Chuck Short + * SAUCE: Guest OS does not recognize a lun with non zero target id on + Vmware ESX Server + * SAUCE: orinoco_cs.ko missing + * Set CONFIG_FB_VESA=m for i386/amd64 Ignore: yes + * Set CONFIG_PM_DISABLE_CONSOLE=y for all flavours Ignore: yes + * Thorough review of amd64 -generic config Ignore: yes + * Build PPA packages for Hardy until the Intrepid archive is opened. + * Deleted obsolete flavours Ignore: yes + * Don't build docs for PPA Ignore: yes + * Build all standard packages in PPA. Ignore: yes + * Remove duplicate USB ids + * SAUCE: DVB-USB UMT-010 driver oops on install Bug: #115284 + * Update configs after rebase to 2.6.26-rc1 Ignore: yes + * Update configs after rebase Ignore: yes + * Disable V4L until the build issues get ironed out. Ignore: yes + * Update configs after rebase. Ignore: yes + * Another device enable pass Ignore: yes + * Update configs after merge. Ignore: yes + * SAUCE: fn key doesn't work in hardy with macbook pro fourth generation + (4,1) + - LP: #207127 + * Enabled CONFIG_CIFS_DFS_UPCALL=y and CONFIG_CIFS_UPCALL=y + - LP: #236830 + + [Upstream Kernel Changes] + + * Revert "[WATCHDOG] hpwdt: Add CFLAGS to get driver working" + * mac80211: detect driver tx bugs + * hwmon: (lm85) Fix function RANGE_TO_REG() + * hwmon: (adt7473) Initialize max_duty_at_overheat before use + * hwmon: Update the sysfs interface documentation + * hwmon: (abituguru3) Identify Abit AW8D board as such + * hwmon: (w83791d) new maintainer + * hwmon: (abituguru3) update driver detection + * hwmon: (lm75) sensor reading bugfix + * ipv6: Remove options header when setsockopt's optlen is 0 + * ipv6: Drop packets for loopback address from outside of the box. + * sched: rt: dont stop the period timer when there are tasks wanting to + run + * sched: fix wait_for_completion_timeout() spurious failure under heavy + load + * x86: fix NULL pointer deref in __switch_to + * xen: Use wmb instead of rmb in xen_evtchn_do_upcall(). + * xen: mask unwanted pte bits in __supported_pte_mask + * xen: don't drop NX bit + * sched: refactor wait_for_completion_timeout() + * Ext4: Fix online resize block group descriptor corruption + * [IA64] SN2: security hole in sn2_ptc_proc_write + * alpha: fix module load failures on smp (bug #10926) + * alpha: link failure fix + * alpha: fix compile failures with gcc-4.3 (bug #10438) + * alpha: resurrect Cypress IDE quirk + * pppoe: warning fix + * sctp: Make sure N * sizeof(union sctp_addr) does not overflow. + * netns: Don't receive new packets in a dead network namespace. + * Add return value to reserve_bootmem_node() + * Slab: Fix memory leak in fallback_alloc() + * Fix performance regression on lmbench select benchmark + * ALSA: aw2 - Fix Oops at initialization + * ALSA: sb - Fix wrong assertions + * futexes: fix fault handling in futex_lock_pi + * IB/mthca: Clear ICM pages before handing to FW + * tty_driver: Update required method documentation + * removed unused var real_tty on n_tty_ioctl() + * Fix ZERO_PAGE breakage with vmware + * mm: fix race in COW logic + * NFS: Reduce the NFS mount code stack usage. + * NFS: Fix filehandle size comparisons in the mount code + * NFS: nfs_updatepage(): don't mark page as dirty if an error occurred + * alpha: fix compile error in arch/alpha/mm/init.c + * KVM: Fix race between timer migration and vcpu migration + * KVM: close timer injection race window in __vcpu_run + * KVM: MMU: Fix rmap_write_protect() hugepage iteration bug + * KVM: MMU: large page update_pte issue with non-PAE 32-bit guests + (resend) + * KVM: MMU: Fix oops on guest userspace access to guest pagetable + * KVM: ioapic: fix lost interrupt when changing a device's irq + * KVM: VMX: Fix host msr corruption with preemption enabled + * [GFS2] BUG: unable to handle kernel paging request at ffff81002690e000 + * xen: remove support for non-PAE 32-bit + * kgdb: documentation update - remove kgdboe + * kgdb: sparse fix + * [IA64] Fix boot failure on ia64/sn2 + * [IA64] Handle count==0 in sn2_ptc_proc_write() + * [IA64] Eliminate NULL test after alloc_bootmem in iosapic_alloc_rte() + * [GFS2] fix gfs2 block allocation (cleaned up) + * x86: Add structs and functions for paravirt clocksource + * x86: Make xen use the paravirt clocksource structs and functions + * KVM: Make kvm host use the paravirt clocksource structs + * x86: KVM guest: Use the paravirt clocksource structs and functions + * KVM: Remove now unused structs from kvm_para.h + * enable bus mastering on i915 at resume time + * Linux 2.6.26-rc8 + * # Ubuntu external driver commit. + * # Ubuntu commit template. + + -- Ben Collins Sat, 21 Jun 2008 09:05:15 -0400 + +linux (2.6.26-2.6) intrepid; urgency=low + + [Ben Collins] + + * Revert "SAUCE: Export symbols for aufs (in lum) (not needed) + * config: Enable DVB devices + * ubuntu/aufs: Make aufs a bool config, since it needs to be built-in + * config: Build aufs into the kernels + * build: Fix arguments passed to link-headers script + * config: Disable early printk + * d-i: Move isofs to storage-core and kill st (scsi tape) from list + * config: Enable non-promiscuous access to /dev/mem + * x86: Add option to disable decompression info messages + * config: Enable no-bz-chatter config options + * build: Re-add linux-source package + * d-i: Re-add socket-modules. Accidentally removed + - LP: #241295 + + [Colin Ian King] + + * Add dm-loop + + [Tim Gardner] + + * Revert "SAUCE: USB bluetooth device 0x0e5e:0x6622 floods errors to + syslog (merged upstream) + + -- Ben Collins Mon, 16 Jun 2008 10:56:01 -0400 + +linux (2.6.26-1.5) intrepid; urgency=low + + * d-i: Make virtio-ring optional (it's built-in on i386) + * Rebased on 2.6.26-rc6 + + [Ubuntu-2.6.26-1.4 Changes below] + + * build: linux-doc rules got broken when disabling html side. Fixed now. + + [Ubuntu-2.6.26-1.3 Changes below] + + * build: Remove install-source, obsolete and caused build failure + + [Ubuntu-2.6.26-1.2 Changes below] + + * Remove efi-modules from d-i module list (efivars is built-in). Caused a + build failure. + * Patch to arch/x86/xen/time.c to remove __divdi3 usage (build failure on + i386). + + [Ubuntu-2.6.26-1.1 Changes below] + + [Amit Kucheria] + + * SAUCE: make fc transport removal of target configurable + * SAUCE: Add AGP support for Radeon Mobility 9000 chipset + * SAUCE: pm: Config option to disable handling of console during + suspend/resume + + [Ben Collins] + + * SAUCE: input/mouse/alps: Do not call psmouse_reset() for alps + * SAUCE: irda: Default to dongle type 9 on IBM hardware + * SAUCE: tulip: Let dmfe handle davicom on non-sparc + * SAUCE: tulip: Define ULI PCI ID's + * SAUCE: version: Implement version_signature proc file. + * build: Remove remnants of unused binary-custom infrastructure + * mmc_block: Fix bad allocation on 64-bit (zero len array) + * ubuntu: New modules, acer-acpi + * build: Remove -virtual, and rebuild configs + * ubuntu: Add drbd module + * ubuntu: Add iscsitarget module + * ubuntu: Add squashfs driver + * build/configs: The Great Config Consistency Check of 2008 + * ubuntu: Add aufs module + * ubuntu: Added atl2 driver + * ubuntu: Add dm-radi4-5 driver + * build: Add CONFIG_DEBUG_SECTION_MISMATCH=y to get old style warnings + from build + * squashfs: Fixes for VFS changes + * ubuntu/dm-raid4-5: Fixups for moved/renamed headers/functions in core + md + * ubuntu: Add ndiswrapper driver + * d-i: Update module listings + + [Chuck Short] + + * SAUCE: ata: blacklist FUJITSU MHW2160BH PL + * SAUCE: [USB]: add ASUS LCM to the blacklist + + [Colin Ian King] + + * SAUCE: Enable speedstep for sonoma processors. + * SAUCE: airprime.c supports more devices + + [Kyle McMartin] + + * SAUCE: fix orinoco_cs oops + + [Mario Limonciello] + + * SAUCE: Enable Reset and SCO workaround on Dell 410 BT adapter + + [Matthew Garrett] + + * SAUCE: hostap: send events on data interface as well as master + interface + + [Phillip Lougher] + + * SAUCE: r8169: disable TSO by default for RTL8111/8168B chipsets. + + [Stefan Bader] + + * SAUCE: Export dm_disk function of device-mapper + * SAUCE: Restore VT fonts on switch + * SAUCE: Always use SCO protocol (disable eSCO support) Bug: #39414 + * SAUCE: mmc: Increase power_up deleay to fix TI readers + * SAUCE: Add blacklist support to fix Belkin bluetooth dongle. + * SAUCE: Lower warning level of pci resource allocation messages. + * SAUCE: Lower message level for PCI memory and I/O allocation. + - LP: #159241 + * Modify log generation to catch bug numbers when adding with git-am. + + [Tim Gardner] + + * SAUCE: hdaps module does not load on Thinkpad T61P + * SAUCE: Add extra headers to linux-libc-dev + * SAUCE: Export symbols for aufs (in lum). + * SAUCE: USB bluetooth device 0x0e5e:0x6622 floods errors to syslog + * SAUCE: Blacklist Bluetooth Dell Wireless 370 for SCO MTU + * SAUCE: Catch nonsense keycodes and silently ignore + * SAUCE: frame buffer regression - screen blank except for blinking + cursor after fbcon vtswitch + * SAUCE: Added support for HDAPS on various ThinkPads from Lenovo and IBM + * SAUCE: Guest OS does not recognize a lun with non zero target id on + Vmware ESX Server + * SAUCE: Modualrize vesafb + * SAUCE: DVB-USB UMT-010 driver oops on install + * SAUCE: fn key doesn't work in hardy with macbook pro fourth generation + (4,1) + - LP: #207127 + + -- Ben Collins Wed, 11 Jun 2008 05:28:35 -0400 --- linux-3.13.0.orig/debian.master/config/amd64/config.common.amd64 +++ linux-3.13.0/debian.master/config/amd64/config.common.amd64 @@ -0,0 +1,317 @@ +# +# Config options for config.common.amd64 automatically generated by splitconfig.pl +# +CONFIG_64BIT=y +CONFIG_AC97_BUS=m +# CONFIG_AHCI_IMX is not set +CONFIG_AIC79XX_RESET_DELAY_MS=5000 +CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig" +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-rdi -fcall-saved-rsi -fcall-saved-rdx -fcall-saved-rcx -fcall-saved-r8 -fcall-saved-r9 -fcall-saved-r10 -fcall-saved-r11" +# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set +CONFIG_ARCH_PHYS_ADDR_T_64BIT=y +CONFIG_ARCH_RANDOM=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_ARCH_SPARSEMEM_DEFAULT=y +# CONFIG_ASYNC_TX_DMA is not set +# CONFIG_ATA_NONSTANDARD is not set +CONFIG_ATA_PIIX=y +# CONFIG_ATOMIC64_SELFTEST is not set +CONFIG_AUDIT_ARCH=y +CONFIG_BCH=m +CONFIG_COMEDI_ISA_DRIVERS=y +CONFIG_COMPACTION=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set +CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y +CONFIG_CPU_IDLE=y +CONFIG_CRASH_DUMP=y +# CONFIG_DEBUG_MEMORY_INIT is not set +# CONFIG_DEFAULT_CFQ is not set +CONFIG_DEFAULT_DEADLINE=y +CONFIG_DEFAULT_IOSCHED="deadline" +CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 +CONFIG_EXYNOS_VIDEO=y +CONFIG_EZX_PCAP=y +CONFIG_FB_ATY128=m +CONFIG_FB_BACKLIGHT=y +CONFIG_FB_BOOT_VESA_SUPPORT=y +CONFIG_FB_DDC=m +# CONFIG_FB_MACMODES is not set +CONFIG_FB_RADEON=m +CONFIG_FB_SVGALIB=m +CONFIG_FB_SYS_COPYAREA=m +CONFIG_FB_SYS_FILLRECT=m +CONFIG_FB_SYS_FOPS=m +CONFIG_FB_SYS_IMAGEBLIT=m +CONFIG_FB_UDL=m +CONFIG_FB_VOODOO1=m +# CONFIG_FMAN_P1023 is not set +CONFIG_FMAN_P3040_P4080_P5020=y +# CONFIG_FONTS is not set +CONFIG_FRAME_WARN=1024 +CONFIG_FSL_FMAN=y +CONFIG_FUNCTION_TRACER=y +CONFIG_GENERIC_PHY=m +CONFIG_GPIO_GENERIC=m +CONFIG_GPIO_TWL6040=m +# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set +# CONFIG_HAVE_AOUT is not set +CONFIG_HAVE_BOOTMEM_INFO_NODE=y +# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set +CONFIG_HAVE_SETUP_PER_CPU_AREA=y +CONFIG_HIBERNATION=y +CONFIG_HOTPLUG_PCI_CPCI=y +CONFIG_HOTPLUG_PCI_SHPC=m +CONFIG_HUGETLB_PAGE=y +# CONFIG_HW_RANDOM_ATMEL is not set +# CONFIG_HZ_100 is not set +CONFIG_I2C_ALGOBIT=m +# CONFIG_IDE is not set +# CONFIG_IKCONFIG is not set +CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 +CONFIG_IMA=y +CONFIG_INFINIBAND_AMSO1100=m +CONFIG_INPUT_IDEAPAD_SLIDEBAR=m +CONFIG_IOMMU_SUPPORT=y +# CONFIG_IRQ_DOMAIN_DEBUG is not set +CONFIG_KSM=y +CONFIG_KVM=m +CONFIG_LEDS_TRIGGER_HEARTBEAT=m +CONFIG_LIBERTAS_MESH=y +CONFIG_LIS3L02DQ=m +CONFIG_LOG_BUF_SHIFT=18 +CONFIG_MACINTOSH_DRIVERS=y +CONFIG_MEMORY_HOTREMOVE=y +# CONFIG_MFD_TI_AM335X_TSCADC is not set +# CONFIG_MFD_TMIO is not set +CONFIG_MII=m +CONFIG_MMC_BLOCK=m +CONFIG_MMC_SDHCI=m +CONFIG_MMC_SDHCI_PLTFM=m +CONFIG_MTD=m +CONFIG_MTD_BLKDEVS=m +CONFIG_MTD_BLOCK=m +CONFIG_MTD_CMDLINE_PARTS=m +CONFIG_MTD_NAND=m +CONFIG_MTD_NAND_BCH=m +CONFIG_MTD_NAND_ECC=m +CONFIG_MTD_NAND_IDS=m +CONFIG_MTD_SM_COMMON=m +CONFIG_MUSB_PIO_ONLY=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +CONFIG_NET_TULIP=y +CONFIG_NODES_SHIFT=6 +CONFIG_NOP_USB_XCEIV=m +CONFIG_NO_HZ_FULL=y +# CONFIG_NO_HZ_IDLE is not set +CONFIG_NR_CPUS=256 +CONFIG_NUMA=y +CONFIG_NVRAM=m +CONFIG_OUTPUT_FORMAT="elf64-x86-64" +CONFIG_PARIDE_EPATC8=y +CONFIG_PATA_SIS=y +CONFIG_PCCARD=m +CONFIG_PCIEPORTBUS=y +CONFIG_PERCPU_TEST=m +CONFIG_PERSISTENT_KEYRINGS=y +CONFIG_PHYSICAL_ALIGN=0x1000000 +CONFIG_PHYSICAL_START=0x1000000 +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_PMIC_ADP5520=y +CONFIG_PMIC_DA903X=y +CONFIG_PM_DEBUG=y +CONFIG_PM_RUNTIME=y +# CONFIG_PM_WAKELOCKS is not set +CONFIG_PPS=m +CONFIG_PPS_CLIENT_GPIO=m +CONFIG_PPS_CLIENT_LDISC=m +CONFIG_PPS_CLIENT_PARPORT=m +CONFIG_PROBE_EVENTS=y +# CONFIG_PSTORE_CONSOLE is not set +CONFIG_PSTORE_RAM=m +CONFIG_PTP_1588_CLOCK=m +CONFIG_RAPIDIO_CPS_GEN2=m +CONFIG_RAPIDIO_CPS_XX=m +CONFIG_RAPIDIO_TSI568=m +CONFIG_RAPIDIO_TSI57X=m +CONFIG_RAPIDIO_TSI721=m +CONFIG_RBTREE_TEST=m +CONFIG_RCU_CPU_STALL_TIMEOUT=60 +CONFIG_RCU_FANOUT=64 +CONFIG_RCU_FAST_NO_HZ=y +CONFIG_RCU_NOCB_CPU=y +CONFIG_RCU_USER_QS=y +CONFIG_REED_SOLOMON=m +CONFIG_REGULATOR_FIXED_VOLTAGE=m +# CONFIG_REGULATOR_S2MPS11 is not set +CONFIG_REISERFS_FS=m +CONFIG_RFKILL=y +CONFIG_RT2800USB_UNKNOWN=y +# CONFIG_RT2X00_LIB_DEBUGFS is not set +CONFIG_RTC_DRV_CMOS=y +CONFIG_RTC_DRV_DS3232=m +CONFIG_SAMSUNG_USB2PHY=m +CONFIG_SAMSUNG_USB3PHY=m +CONFIG_SATA_AHCI_PLATFORM=m +# CONFIG_SATA_HIGHBANK is not set +CONFIG_SATA_SVW=m +CONFIG_SCHED_AUTOGROUP=y +CONFIG_SCHED_SMT=y +CONFIG_SCSI_SPI_ATTRS=y +CONFIG_SCSI_SRP_ATTRS=m +CONFIG_SENSORS_SCH56XX_COMMON=m +CONFIG_SERIAL_8250_PCI=y +# CONFIG_SERIAL_FSL_LPUART is not set +CONFIG_SERIO_ALTERA_PS2=m +CONFIG_SERIO_ARC_PS2=m +CONFIG_SERIO_I8042=y +CONFIG_SERIO_PARKBD=m +CONFIG_SERIO_PCIPS2=m +CONFIG_SERIO_PS2MULT=m +CONFIG_SERIO_RAW=m +CONFIG_SND=m +CONFIG_SND_COMPRESS_OFFLOAD=m +CONFIG_SND_EMU10K1_SEQ=m +CONFIG_SND_OPL3_LIB_SEQ=m +# CONFIG_SND_OPL4_LIB_SEQ is not set +CONFIG_SND_PCM=m +# CONFIG_SND_SBAWE_SEQ is not set +CONFIG_SND_SOC=m +CONFIG_SND_SOC_I2C_AND_SPI=m +CONFIG_SND_TIMER=m +CONFIG_SOUND=m +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPI_PXA2XX_PCI=m +CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y +# CONFIG_SQUASHFS_DECOMP_SINGLE is not set +# CONFIG_SQUASHFS_FILE_CACHE is not set +CONFIG_SQUASHFS_FILE_DIRECT=y +CONFIG_SRAM=y +CONFIG_STACK_TRACER=y +CONFIG_STAGING=y +# CONFIG_STANDALONE is not set +CONFIG_SUNRPC_DEBUG=y +CONFIG_SWIOTLB=y +CONFIG_SYSCTL_SYSCALL=y +CONFIG_SYS_HYPERVISOR=y +CONFIG_TEST_KSTRTOX=m +CONFIG_TEST_STRING_HELPERS=m +CONFIG_TIGON3=m +CONFIG_TIMER_STATS=y +CONFIG_TRANSPARENT_HUGEPAGE=y +# CONFIG_TWL4030_CORE is not set +CONFIG_TWL6040_CORE=y +CONFIG_UIO_AEC=m +CONFIG_UIO_CIF=m +CONFIG_UIO_DMEM_GENIRQ=m +CONFIG_UIO_MF624=m +CONFIG_UIO_NETX=m +CONFIG_UIO_PCI_GENERIC=m +CONFIG_UIO_PDRV_GENIRQ=m +CONFIG_UIO_SERCOS3=m +CONFIG_UNUSED_SYMBOLS=y +CONFIG_USB_ADUTUX=m +CONFIG_USB_ANNOUNCE_NEW_DEVICES=y +CONFIG_USB_APPLEDISPLAY=m +CONFIG_USB_C67X00_HCD=m +CONFIG_USB_CATC=m +CONFIG_USB_CHIPIDEA=m +CONFIG_USB_CYPRESS_CY7C63=m +CONFIG_USB_CYTHERM=m +CONFIG_USB_DWC3=m +# CONFIG_USB_DWC3_OMAP is not set +CONFIG_USB_DYNAMIC_MINORS=y +CONFIG_USB_EHCI_HCD_PLATFORM=y +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_EHSET_TEST_FIXTURE=m +CONFIG_USB_EMI26=m +CONFIG_USB_EMI62=m +CONFIG_USB_EZUSB_FX2=m +CONFIG_USB_FOTG210_HCD=m +CONFIG_USB_FTDI_ELAN=m +CONFIG_USB_FUSBH200_HCD=m +CONFIG_USB_GADGET=m +# CONFIG_USB_G_MULTI is not set +CONFIG_USB_HCD_BCMA=m +CONFIG_USB_HCD_SSB=m +CONFIG_USB_HSIC_USB3503=m +CONFIG_USB_IDMOUSE=m +CONFIG_USB_IOWARRIOR=m +CONFIG_USB_IPHETH=m +CONFIG_USB_ISIGHTFW=m +CONFIG_USB_ISP116X_HCD=m +CONFIG_USB_ISP1301=m +CONFIG_USB_ISP1362_HCD=m +CONFIG_USB_ISP1760_HCD=m +CONFIG_USB_KAWETH=m +CONFIG_USB_LCD=m +CONFIG_USB_LD=m +CONFIG_USB_LED=m +CONFIG_USB_LEGOTOWER=m +CONFIG_USB_MDC800=m +CONFIG_USB_MICROTEK=m +CONFIG_USB_MUSB_HDRC=m +CONFIG_USB_MUSB_TUSB6010=m +CONFIG_USB_OHCI_HCD_PLATFORM=y +# CONFIG_USB_OTG is not set +CONFIG_USB_OXU210HP_HCD=m +CONFIG_USB_PEGASUS=m +CONFIG_USB_PRINTER=m +CONFIG_USB_R8A66597_HCD=m +CONFIG_USB_RCAR_PHY=m +CONFIG_USB_RIO500=m +CONFIG_USB_RTL8150=m +CONFIG_USB_RTL8152=m +CONFIG_USB_SERIAL=m +CONFIG_USB_SEVSEG=m +CONFIG_USB_SISUSBVGA=m +CONFIG_USB_SL811_HCD=m +CONFIG_USB_STORAGE=m +CONFIG_USB_STORAGE_ALAUDA=m +CONFIG_USB_STORAGE_CYPRESS_ATACB=m +CONFIG_USB_STORAGE_DATAFAB=m +CONFIG_USB_STORAGE_ENE_UB6250=m +CONFIG_USB_STORAGE_FREECOM=m +CONFIG_USB_STORAGE_ISD200=m +CONFIG_USB_STORAGE_JUMPSHOT=m +CONFIG_USB_STORAGE_KARMA=m +CONFIG_USB_STORAGE_ONETOUCH=m +CONFIG_USB_STORAGE_REALTEK=m +CONFIG_USB_STORAGE_SDDR09=m +CONFIG_USB_STORAGE_SDDR55=m +CONFIG_USB_STORAGE_USBAT=m +CONFIG_USB_SUPPORT=y +CONFIG_USB_TEST=m +CONFIG_USB_TMC=m +CONFIG_USB_TRANCEVIBRATOR=m +CONFIG_USB_UHCI_HCD=y +CONFIG_USB_USS720=m +CONFIG_USB_WUSB_CBAF=m +CONFIG_USB_YUREX=m +CONFIG_VFIO_IOMMU_TYPE1=m +CONFIG_VGASTATE=m +CONFIG_VGA_CONSOLE=y +CONFIG_VIRTIO=y +CONFIG_VIRTIO_BALLOON=y +CONFIG_VIRTIO_BLK=y +CONFIG_VIRTIO_CONSOLE=y +CONFIG_VIRTIO_MMIO=y +CONFIG_VIRTIO_NET=y +CONFIG_VIRTIO_PCI=y +CONFIG_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_WIL6210=m +# CONFIG_WIMAX_GDM72XX_SDIO is not set +CONFIG_X86_MINIMUM_CPU_FAMILY=64 +CONFIG_X86_SPEEDSTEP_LIB=m +CONFIG_XEN=y +CONFIG_XEN_MAX_DOMAIN_MEMORY=500 +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +CONFIG_XZ_DEC_IA64=y +CONFIG_XZ_DEC_SPARC=y +CONFIG_XZ_DEC_TEST=m +CONFIG_XZ_DEC_X86=y +CONFIG_ZONE_DMA32=y +CONFIG_ZONE_DMA_FLAG=1 --- linux-3.13.0.orig/debian.master/config/amd64/config.flavour.generic +++ linux-3.13.0/debian.master/config/amd64/config.flavour.generic @@ -0,0 +1,10 @@ +# +# Config options for config.flavour.generic automatically generated by splitconfig.pl +# +CONFIG_HZ=250 +# CONFIG_HZ_1000 is not set +CONFIG_HZ_250=y +# CONFIG_IRQ_FORCED_THREADING_DEFAULT is not set +# CONFIG_PREEMPT is not set +# CONFIG_PREEMPT_RCU is not set +CONFIG_PREEMPT_VOLUNTARY=y --- linux-3.13.0.orig/debian.master/config/amd64/config.flavour.lowlatency +++ linux-3.13.0/debian.master/config/amd64/config.flavour.lowlatency @@ -0,0 +1,10 @@ +# +# Config options for config.flavour.lowlatency automatically generated by splitconfig.pl +# +CONFIG_HZ=1000 +CONFIG_HZ_1000=y +# CONFIG_HZ_250 is not set +CONFIG_IRQ_FORCED_THREADING_DEFAULT=y +CONFIG_PREEMPT=y +CONFIG_PREEMPT_RCU=y +# CONFIG_PREEMPT_VOLUNTARY is not set --- linux-3.13.0.orig/debian.master/config/annotations +++ linux-3.13.0/debian.master/config/annotations @@ -0,0 +1,2147 @@ +# ARCH: x86 arm powerpc + +# not a thing +CONFIG_USB_OHCI_HCD_PLATFORM - flag +CONFIG_USB_EHCI_HCD_PLATFORM - flag +CONFIG_USB_OHCI_HCD_PPC_OF_LE - flag + +CONFIG_64BIT - flag + +# Overall defaults +set +all !flag EXPERIMENTAL !flag IGNORE !flag DEPRECATED ?type tristate = m + +# Mark debugging symbols. +# default all debug symbols off +set +pattern '(^|_)DEBUG(_|$)' ?type bool = n flag +set +pattern '(^|_)DEBUG(_|$)' ?type tristate = n flag +# exceptions +CONFIG_DEBUG_FS y note +CONFIG_DEBUG_KERNEL y note +CONFIG_DEBUG_RODATA y mark +CONFIG_DEBUG_SET_MODULE_RONX y mark +CONFIG_SLUB_DEBUG y +CONFIG_SCHED_DEBUG y + +# Menu: ROOT +CONFIG_SYSTEM_TRUSTED_KEYRING y + +# Menu: ROOT (arm) +CONFIG_ARM_DMA_IOMMU_ALIGNMENT 8 +CONFIG_ARM_PATCH_PHYS_VIRT y + +# Menu: ROOT (powerpc) +CONFIG_RELOCATABLE y +CONFIG_CPU_BIG_ENDIAN n +CONFIG_PPC64 y +CONFIG_CPU_LITTLE_ENDIAN y +CONFIG_NR_IRQS 512 +CONFIG_SCOM_DEBUGFS n + +# Menu: ROOT (x86) + +# Menu: Advanced setup (powerpc) +CONFIG_RELOCATABLE y + +# Menu: Boot options (arm) +CONFIG_KEXEC y +CONFIG_CRASH_DUMP y + +# Menu: Bus options (arm) + +# Menu: Bus options (powerpc) +CONFIG_FSL_LBC y + +# Menu: Bus options (x86) +CONFIG_ISA_DMA_API y +CONFIG_X86_SYSFB y +CONFIG_ISA y +CONFIG_EISA y +CONFIG_ALIX y +CONFIG_NET5501 y +CONFIG_GEOS y + +# Menu: Bus options >> PCCard (PCMCIA/CardBus) support +CONFIG_PCCARD p policy<(arch armel armhf ppc64el &/ value n) | value m> note +CONFIG_PCMCIA_LOAD_CIS y +CONFIG_CARDBUS y +CONFIG_YENTA_O2 y +CONFIG_YENTA_RICOH y +CONFIG_YENTA_TI y +CONFIG_YENTA_ENE_TUNE y +CONFIG_YENTA_TOSHIBA y + +# Menu: Bus options >> PCI support +CONFIG_PCI y +CONFIG_PCIEPORTBUS y +CONFIG_HOTPLUG_PCI_PCIE y +CONFIG_PCIEAER_INJECT n flag +CONFIG_PCI_IOAPIC p policy<(arch i386 amd64 &/ value y) | value m> note + +# Menu: Bus options >> PCI support (arm) + +# Menu: Bus options >> PCI support (powerpc) + +# Menu: Bus options >> PCI support (x86) +CONFIG_PCI_MMCONFIG y +CONFIG_PCI_GOANY y + +# Menu: Bus options >> PCI support >> PCI host controller drivers +CONFIG_PCI_IMX6 y +CONFIG_PCI_TEGRA y + +# Menu: Bus options >> PCI support >> RapidIO support +CONFIG_RAPIDIO y +CONFIG_RAPIDIO_DISC_TIMEOUT 30 +CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS n +CONFIG_RAPIDIO_DMA_ENGINE y + +# Menu: Bus options >> PCI support >> RapidIO support (powerpc) + +# Menu: Bus options >> PCI support >> RapidIO support (x86) + +# Menu: Bus options >> PCI support >> RapidIO support >> RapidIO Switch drivers + +# Menu: Bus options >> PCI support >> Support for PCI Hotplug +CONFIG_HOTPLUG_PCI y +CONFIG_HOTPLUG_PCI_ACPI y +CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM y + +# Menu: CAN Device Drivers + +# Menu: CAN Device Drivers >> CAN USB interfaces + +# Menu: CAN Device Drivers >> Platform CAN drivers with Netlink support +CONFIG_CAN_CALC_BITTIMING y +CONFIG_CAN_LEDS y + +# Menu: CAN Device Drivers >> Platform CAN drivers with Netlink support >> Bosch CC770 and Intel AN82527 devices + +# Menu: CAN Device Drivers >> Platform CAN drivers with Netlink support >> Bosch C_CAN/D_CAN devices + +# Menu: CAN Device Drivers >> Platform CAN drivers with Netlink support >> Philips/NXP SJA1000 devices +CONFIG_CAN_PEAK_PCIEC y + +# Menu: CPU Power Management >> CPU Frequency scaling +CONFIG_CPU_FREQ y +CONFIG_CPU_FREQ_STAT y note +CONFIG_CPU_FREQ_STAT_DETAILS y +CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE y note +CONFIG_CPU_FREQ_GOV_PERFORMANCE y note +CONFIG_CPU_FREQ_GOV_POWERSAVE y note +CONFIG_CPU_FREQ_GOV_USERSPACE y note +CONFIG_CPU_FREQ_GOV_ONDEMAND y note +CONFIG_CPU_FREQ_GOV_CONSERVATIVE y note +CONFIG_CRYPTO_DEV_NX y + +# Menu: CPU Power Management >> CPU Frequency scaling >> ARM CPU frequency scaling drivers + +# Menu: CPU Power Management >> CPU Frequency scaling >> AVR32 CPU frequency scaling drivers + +# Menu: CPU Power Management >> CPU Frequency scaling >> CPUFreq processor drivers + +# Menu: CPU Power Management >> CPU Frequency scaling >> MIPS CPUFreq processor drivers + +# Menu: CPU Power Management >> CPU Frequency scaling >> PowerPC CPU frequency scaling drivers + +# Menu: CPU Power Management >> CPU Frequency scaling >> SH CPU Frequency scaling + +# Menu: CPU Power Management >> CPU Frequency scaling >> SPARC CPU frequency scaling drivers + +# Menu: CPU Power Management >> CPU Frequency scaling >> x86 CPU frequency scaling drivers +CONFIG_X86_INTEL_PSTATE y +CONFIG_X86_PCC_CPUFREQ y note +CONFIG_X86_ACPI_CPUFREQ y note +CONFIG_X86_ACPI_CPUFREQ_CPB y +CONFIG_X86_POWERNOW_K8 y note +CONFIG_X86_SPEEDSTEP_CENTRINO y note +CONFIG_X86_SPEEDSTEP_CENTRINO_TABLE y +CONFIG_X86_SPEEDSTEP_ICH y note +CONFIG_X86_SPEEDSTEP_SMI y note +CONFIG_X86_CPUFREQ_NFORCE2 y note +CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK y + +# Menu: CPU Power Management >> CPU Idle +CONFIG_CPU_IDLE y +CONFIG_CPU_IDLE_MULTIPLE_DRIVERS y +CONFIG_CPU_IDLE_GOV_LADDER y +CONFIG_CPU_IDLE_GOV_MENU y + +# Menu: CPU Power Management >> CPU Idle >> ARM CPU Idle Drivers +CONFIG_ARM_BIG_LITTLE_CPUIDLE y +CONFIG_ARM_HIGHBANK_CPUIDLE p policy<(arch armhf & flavour generic &/ value n) | value y> note + +# Menu: Cryptographic API +set +tree-menu 'Cryptographic API' ?flag EXPERIMENTAL ?type bool = n +set +tree-menu 'Cryptographic API' ?flag EXPERIMENTAL ?type tristate = n +set +tree-menu 'Cryptographic API' !flag EXPERIMENTAL ?type tristate = m + +CONFIG_CRYPTO y mark +CONFIG_CRYPTO_MANAGER y note +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS y flag +CONFIG_CRYPTO_TEST m flag +CONFIG_CRYPTO_CBC y note +CONFIG_CRYPTO_ECB y note +CONFIG_CRYPTO_HMAC y note +CONFIG_CRYPTO_CRC32C y note +CONFIG_CRYPTO_CRC32C_INTEL y note +CONFIG_CRYPTO_CRCT10DIF y note +CONFIG_CRYPTO_MD5 y note +CONFIG_CRYPTO_SHA1 y note +CONFIG_CRYPTO_SHA256 y note +CONFIG_CRYPTO_SHA512 y note +CONFIG_CRYPTO_AES y note +CONFIG_CRYPTO_LZO y note + +# Menu: Cryptographic API >> Asymmetric (public-key cryptographic) key type +CONFIG_ASYMMETRIC_KEY_TYPE y note +CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE y note +CONFIG_PUBLIC_KEY_ALGO_RSA y note +CONFIG_X509_CERTIFICATE_PARSER y note + +# Menu: Cryptographic API >> Hardware crypto devices +CONFIG_CRYPTO_HW y +CONFIG_CRYPTO_DEV_PADLOCK y note +CONFIG_CRYPTO_DEV_HIFN_795X_RNG y +CONFIG_CRYPTO_DEV_NX_COMPRESS y note + +# Menu: Device Drivers +CONFIG_POWER_AVS y +CONFIG_RESET_CONTROLLER y +CONFIG_VEXPRESS_CONFIG y +CONFIG_ARM_ARCH_TIMER_EVTSTREAM y + +# Menu: Device Drivers >> 1-wire Bus Masters + +# Menu: Device Drivers >> 1-wire Slaves +CONFIG_W1_SLAVE_DS2408_READBACK y +CONFIG_W1_SLAVE_DS2433_CRC n + +# Menu: Device Drivers >> ATA/ATAPI/MFM/RLL support (DEPRECATED) +set +tree 'Device Drivers>>ATA/ATAPI/MFM/RLL support (DEPRECATED)' = n +# +CONFIG_IDE p policy<(arch powerpc ppc64el &/ value y) | value n> note +CONFIG_IDE_GD y +CONFIG_IDE_GD_ATA y +CONFIG_BLK_DEV_IDECD y +CONFIG_IDEPCI_PCIBUS_ORDER y +CONFIG_BLK_DEV_GENERIC y +CONFIG_BLK_DEV_AMD74XX y +CONFIG_IDE_PROC_FS y + +# Menu: Device Drivers >> Accelerometers + +# Menu: Device Drivers >> Accessibility support + +# Menu: Device Drivers >> Active cards + +# Menu: Device Drivers >> Amplifiers + +# Menu: Device Drivers >> Analog to digital converters +CONFIG_LP8788_ADC y +CONFIG_EXYNOS_ADC y + +# Menu: Device Drivers >> Android +CONFIG_ANDROID n + +# Menu: Device Drivers >> Atmel devices (AVR32 and AT91) + +# Menu: Device Drivers >> Auxiliary Display support +CONFIG_AUXDISPLAY y +CONFIG_KS0108_DELAY 2 +CONFIG_CFAG12864B_RATE 20 + +# Menu: Device Drivers >> Block devices +set +tree-menu 'Device Drivers>>Block devices' ?flag EXPERIMENTAL ?type bool = n +set +tree-menu 'Device Drivers>>Block devices' ?flag EXPERIMENTAL ?type tristate = n +set +tree-menu 'Device Drivers>>Block devices' !flag EXPERIMENTAL ?type tristate = m +# +CONFIG_BLK_DEV y +CONFIG_PARIDE_EPATC8 y +CONFIG_CISS_SCSI_TAPE y +CONFIG_BLK_DEV_UMEM m note +CONFIG_BLK_DEV_LOOP y note +CONFIG_BLK_DEV_LOOP_MIN_COUNT 8 +CONFIG_DRBD_FAULT_INJECTION n +CONFIG_BLK_DEV_RAM y note +CONFIG_BLK_DEV_RAM_COUNT 16 +CONFIG_BLK_DEV_RAM_SIZE 65536 +CONFIG_BLK_DEV_XIP n note +CONFIG_CDROM_PKTCDVD_BUFFERS 8 +CONFIG_CDROM_PKTCDVD_WCACHE n mark +CONFIG_XEN_BLKDEV_FRONTEND y note +CONFIG_VIRTIO_BLK y note +CONFIG_BLK_DEV_HD n note mark +CONFIG_BLK_DEV_RBD m note +CONFIG_MG_DISK_RES 0 + +# Menu: Device Drivers >> Broadcom specific AMBA +CONFIG_BCMA_HOST_PCI y +CONFIG_BCMA_HOST_SOC y +CONFIG_BCMA_DRIVER_GMAC_CMN y +CONFIG_BCMA_DRIVER_GPIO y + +# Menu: Device Drivers >> Bus devices +CONFIG_IMX_WEIM y +CONFIG_OMAP_INTERCONNECT y note +CONFIG_ARM_CCI y + +# Menu: Device Drivers >> Character devices +set +tree 'Device Drivers>>Character devices' ?flag EXPERIMENTAL ?type bool = n +set +tree 'Device Drivers>>Character devices' ?flag EXPERIMENTAL ?type tristate = n +set +tree 'Device Drivers>>Character devices' !flag EXPERIMENTAL ?type tristate = m +# +CONFIG_TTY y +CONFIG_VT y +CONFIG_CONSOLE_TRANSLATIONS y +CONFIG_VT_CONSOLE y +CONFIG_VT_HW_CONSOLE_BINDING y +CONFIG_UNIX98_PTYS y +CONFIG_DEVPTS_MULTIPLE_INSTANCES y +CONFIG_LEGACY_PTYS y +CONFIG_LEGACY_PTY_COUNT 0 +CONFIG_SERIAL_NONSTANDARD y +CONFIG_CYZ_INTR n +CONFIG_DEVKMEM n mark +CONFIG_TTY_PRINTK y +CONFIG_LP_CONSOLE n +CONFIG_HVC_XEN y +CONFIG_HVC_XEN_FRONTEND y +CONFIG_HW_RANDOM y +CONFIG_HW_RANDOM_ATMEL n note +CONFIG_NVRAM p policy<(arch powerpc &/ value y) | value m> note +CONFIG_MAX_RAW_DEVS 256 +CONFIG_HPET y +CONFIG_HPET_MMAP y +CONFIG_HPET_MMAP_DEFAULT y +CONFIG_HVC_DCC y +CONFIG_VIRTIO_CONSOLE y +CONFIG_HVC_CONSOLE y +CONFIG_HVC_OLD_HVSI n +CONFIG_HVC_OPAL y +CONFIG_HVC_RTAS y +CONFIG_HVC_UDBG n + +# Menu: Device Drivers >> Character devices >> IPMI top-level message handler +CONFIG_IPMI_PANIC_EVENT n + +# Menu: Device Drivers >> Character devices >> PCMCIA character devices + +# Menu: Device Drivers >> Character devices >> Serial drivers +CONFIG_SERIAL_8250 y note +CONFIG_SERIAL_8250_PNP y +CONFIG_SERIAL_8250_CONSOLE y +CONFIG_SERIAL_8250_DMA y +CONFIG_SERIAL_8250_PCI y +CONFIG_SERIAL_8250_NR_UARTS 48 +CONFIG_SERIAL_8250_RUNTIME_UARTS 32 +CONFIG_SERIAL_8250_EXTENDED y +CONFIG_SERIAL_8250_MANY_PORTS y +CONFIG_SERIAL_8250_SHARE_IRQ y +CONFIG_SERIAL_8250_DETECT_IRQ n +CONFIG_SERIAL_8250_RSA y +CONFIG_SERIAL_KGDB_NMI y +CONFIG_SERIAL_MAX310X y +CONFIG_SERIAL_SCCNXP y +CONFIG_SERIAL_SCCNXP_CONSOLE y +CONFIG_SERIAL_ALTERA_UART_MAXPORTS 4 +CONFIG_SERIAL_ALTERA_UART_BAUDRATE 115200 +CONFIG_SERIAL_ARC_NR_PORTS 1 +CONFIG_SERIAL_RP2_NR_UARTS 32 +CONFIG_SERIAL_AMBA_PL011 y +CONFIG_SERIAL_AMBA_PL011_CONSOLE y +CONFIG_SERIAL_OF_PLATFORM y +CONFIG_SERIAL_8250_EM n +CONFIG_SERIAL_IMX y +CONFIG_SERIAL_IMX_CONSOLE y +CONFIG_SERIAL_SH_SCI_NR_UARTS 2 +CONFIG_SERIAL_OMAP p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_SERIAL_OMAP_CONSOLE y + +# Menu: Device Drivers >> Character devices >> TPM Hardware Support +CONFIG_TCG_TPM y note +CONFIG_TCG_TIS y +CONFIG_TCG_IBMVTPM y + +# Menu: Device Drivers >> Common Clock Framework +CONFIG_COMMON_CLK_VERSATILE y +CONFIG_COMMON_CLK_XGENE y + +# Menu: Device Drivers >> Connector - unified userspace <-> kernelspace linker +CONFIG_CONNECTOR y +CONFIG_PROC_EVENTS y + +# Menu: Device Drivers >> Customise DVB Frontends +CONFIG_DVB_DUMMY_FE n note + +# Menu: Device Drivers >> DMA Engine support +CONFIG_DMADEVICES y +CONFIG_NET_DMA y note +CONFIG_ASYNC_TX_DMA y +CONFIG_DMATEST n flag +CONFIG_AMBA_PL08X y +CONFIG_DMA_OMAP y + +# Menu: Device Drivers >> Dallas's 1-wire support +CONFIG_W1_CON y + +# Menu: Device Drivers >> Device Tree and Open Firmware support +CONFIG_PROC_DEVICETREE y +CONFIG_OF_SELFTEST n flag + +# Menu: Device Drivers >> Digital gyroscope sensors + +# Menu: Device Drivers >> Digital to analog converters + +# Menu: Device Drivers >> Distributed Switch Architecture drivers + +# Menu: Device Drivers >> EDAC (Error Detection And Correction) reporting +CONFIG_EDAC y +CONFIG_EDAC_AMD64_ERROR_INJECTION n +CONFIG_EDAC_SBRIDGE m note + +# Menu: Device Drivers >> Encoders, decoders, sensors and other helper chips + +# Menu: Device Drivers >> External Connector Class (extcon) support +set +tree 'Device Drivers >> External Connector Class (extcon) support' ?flag EXPERIMENTAL ?type bool = n +set +tree 'Device Drivers >> External Connector Class (extcon) support' ?flag EXPERIMENTAL ?type tristate = n +set +tree 'Device Drivers >> External Connector Class (extcon) support' !flag EXPERIMENTAL ?type tristate = m +# +CONFIG_EXTCON y + +# Menu: Device Drivers >> FMC support + +# Menu: Device Drivers >> Frequency Synthesizers DDS/PLL >> Clock Generator/Distribution + +# Menu: Device Drivers >> Frequency Synthesizers DDS/PLL >> Phase-Locked Loop (PLL) frequency synthesizers + +# Menu: Device Drivers >> Fusion MPT device support +CONFIG_FUSION y +CONFIG_FUSION_MAX_SGE 128 +CONFIG_FUSION_LOGGING y + +# Menu: Device Drivers >> GPIO Support +set +tree 'Device Drivers>>GPIO Support' = - mark +set +all ?mark 'GPIO' ?flag EXPERIMENTAL ?type bool = n +set +all ?mark 'GPIO' ?flag EXPERIMENTAL ?type tristate = n +set +all ?mark 'GPIO' !flag EXPERIMENTAL ?type tristate = m +# standard forms: +set +pattern ^GPIO_ ?mark 'GPIO' ?type bool !flag EXPERIMENTAL = y +# +CONFIG_GPIO_SYSFS n +CONFIG_GPIOLIB y +CONFIG_GPIO_EM n note +CONFIG_GPIO_TWL4030 y note + +# Menu: Device Drivers >> Generic Driver Options +CONFIG_UEVENT_HELPER_PATH "" +CONFIG_DEVTMPFS y +CONFIG_DEVTMPFS_MOUNT y +CONFIG_STANDALONE p policy<(arch i386 amd64 &/ value n) | value y> +CONFIG_PREVENT_FIRMWARE_BUILD y +CONFIG_FW_LOADER y note +CONFIG_FIRMWARE_IN_KERNEL y +CONFIG_EXTRA_FIRMWARE "" +CONFIG_FW_LOADER_USER_HELPER y +CONFIG_DMA_CMA y +CONFIG_CMA_SIZE_MBYTES 16 +CONFIG_CMA_SIZE_SEL_MBYTES y +CONFIG_CMA_ALIGNMENT 8 +CONFIG_CMA_AREAS 7 + +# Menu: Device Drivers >> Generic Dynamic Voltage and Frequency Scaling (DVFS) support +CONFIG_PM_DEVFREQ y +CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND y +CONFIG_DEVFREQ_GOV_PERFORMANCE y +CONFIG_DEVFREQ_GOV_POWERSAVE y +CONFIG_DEVFREQ_GOV_USERSPACE y + +# Menu: Device Drivers >> Generic Target Core Mod (TCM) and ConfigFS Infrastructure + +# Menu: Device Drivers >> Generic Thermal sysfs driver +CONFIG_THERMAL y +CONFIG_THERMAL_HWMON y +CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE y +CONFIG_THERMAL_GOV_FAIR_SHARE y +CONFIG_THERMAL_GOV_STEP_WISE y +CONFIG_THERMAL_GOV_USER_SPACE y +CONFIG_CPU_THERMAL y +CONFIG_THERMAL_EMULATION y + +# Menu: Device Drivers >> Generic powercap sysfs driver +CONFIG_POWERCAP y + +# Menu: Device Drivers >> Graphics support +set +tree 'Device Drivers>>Graphics support' = - mark +set +all ?mark 'Graphics' ?flag EXPERIMENTAL ?type bool = n +set +all ?mark 'Graphics' ?flag EXPERIMENTAL ?type tristate = m note +set +all ?mark 'Graphics' !flag EXPERIMENTAL ?type tristate = m +set +pattern ^FB_[^_]+$ ?mark Graphics ?type bool !flag EXPERIMENTAL = y +set +pattern ^FB_[^_]+$ ?mark Graphics ?type bool ?flag EXPERIMENTAL = y note +set +pattern _(KMS|BACKLIGHT|I2C)$ ?mark Graphics ?type bool !flag EXPERIMENTAL = y +# +CONFIG_VGA_ARB y +CONFIG_VGA_ARB_MAX_GPUS 16 +CONFIG_VGA_SWITCHEROO y +CONFIG_DRM_LOAD_EDID_FIRMWARE y + +# Menu: Device Drivers >> Graphics support >> /dev/agpgart (AGP Support) +CONFIG_AGP y note mark +CONFIG_AGP_AMD64 y note +CONFIG_AGP_INTEL y note +CONFIG_AGP_VIA y note +CONFIG_AGP_AMD y note +CONFIG_AGP_NVIDIA y note + +# Menu: Device Drivers >> Graphics support >> Backlight & LCD device support +CONFIG_BACKLIGHT_LCD_SUPPORT y +CONFIG_BACKLIGHT_CLASS_DEVICE y + +# Menu: Device Drivers >> Graphics support >> Console display driver support +CONFIG_VGA_CONSOLE y +CONFIG_VGACON_SOFT_SCROLLBACK n +CONFIG_FRAMEBUFFER_CONSOLE y note +CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY y +CONFIG_FRAMEBUFFER_CONSOLE_ROTATION n + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) +CONFIG_DRM p mark policy<(arch armel armhf &/ value y) | value m> note +CONFIG_NOUVEAU_DEBUG 5 +CONFIG_NOUVEAU_DEBUG_DEFAULT 3 +CONFIG_DRM_I915_FBDEV y +CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT y +CONFIG_DRM_VMWGFX_FBCON n +CONFIG_DRM_GMA600 y +CONFIG_DRM_GMA3600 y +CONFIG_DRM_EXYNOS n flag +CONFIG_DRM_RCAR_LVDS y +CONFIG_DRM_OMAP n + +# Menu: Device Drivers >> Graphics support >> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) >> I2C encoder or helper chips + +# Menu: Device Drivers >> Graphics support >> Exynos Video driver support +CONFIG_EXYNOS_VIDEO y + +# Menu: Device Drivers >> Graphics support >> Marvell MMP Display Subsystem support + +# Menu: Device Drivers >> Graphics support >> OMAP Display Device Drivers (new device model) + +# Menu: Device Drivers >> Graphics support >> OMAP2+ Display Subsystem support +CONFIG_OMAP2_DSS p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_OMAP2_DSS_DEBUGFS n +CONFIG_OMAP2_DSS_DPI y +CONFIG_OMAP2_DSS_VENC y +CONFIG_OMAP4_DSS_HDMI y +CONFIG_OMAP2_DSS_SDI y +CONFIG_OMAP2_DSS_DSI n +CONFIG_OMAP2_DSS_MIN_FCK_PER_PCK 0 +CONFIG_OMAP2_DSS_SLEEP_AFTER_VENC_RESET y + +# Menu: Device Drivers >> Graphics support >> Support for frame buffer devices +CONFIG_FB y +CONFIG_FIRMWARE_EDID y +CONFIG_FB_MODE_HELPERS y +CONFIG_FB_TILEBLITTING y +CONFIG_FB_PM2_FIFO_DISCONNECT y +CONFIG_FB_CYBER2000_DDC y +CONFIG_FB_MATROX_MILLENIUM y +CONFIG_FB_MATROX_MYSTIQUE y +CONFIG_FB_MATROX_G y +CONFIG_FB_RADEON p policy<(arch powerpc &/ value y) | value m> note +CONFIG_FB_ATY128 p policy<(arch powerpc &/ value y) | value m> note +CONFIG_FB_ATY_CT y +CONFIG_FB_ATY_GX y +CONFIG_FB_S3_DDC y +CONFIG_FB_SIS_300 y +CONFIG_FB_SIS_315 y +CONFIG_FB_VIA_X_COMPATIBILITY y +CONFIG_FB_3DFX p policy<(arch powerpc &/ value y) | value m> note +CONFIG_FB_3DFX_ACCEL y +CONFIG_FB_VOODOO1 p policy<(arch powerpc &/ value y) | value m> note +CONFIG_FB_CARMINE_DRAM_EVAL y +CONFIG_FB_TMIO_ACCELL y +CONFIG_FB_VIRTUAL n flag +CONFIG_FB_MB862XX_PCI_GDC y + +# Menu: Device Drivers >> Graphics support >> Support for frame buffer devices >> Bootup logo +CONFIG_LOGO n + +# Menu: Device Drivers >> Graphics support >> Support for frame buffer devices >> Framebuffer foreign endianness support +CONFIG_FB_FOREIGN_ENDIAN n + +# Menu: Device Drivers >> Graphics support >> Support for frame buffer devices >> OMAP2+ frame buffer support +CONFIG_FB_OMAP2 p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_FB_OMAP2_NUM_FBS 3 + +# Menu: Device Drivers >> HID support +set +tree 'Device Drivers>>HID support' = - mark +# enable modular HID drivers by default +set +all ?mark 'HID' ?flag EXPERIMENTAL ?type bool = n +set +all ?mark 'HID' ?flag EXPERIMENTAL ?type tristate = m note` +set +all ?mark 'HID' !flag EXPERIMENTAL ?type tristate = m +# standard forms +set +pattern _FF$ ?mark HID ?type bool !flag EXPERIMENTAL = y + +# Menu: Device Drivers >> HID support >> HID bus support +CONFIG_HID_BATTERY_STRENGTH y +CONFIG_HIDRAW y + +# Menu: Device Drivers >> HID support >> HID bus support >> Special HID drivers +CONFIG_HID_PICOLCD_FB y +CONFIG_HID_PICOLCD_BACKLIGHT y +CONFIG_HID_PICOLCD_LCD y +CONFIG_HID_PICOLCD_LEDS y +CONFIG_HID_PICOLCD_CIR y + +# Menu: Device Drivers >> HID support >> I2C HID support + +# Menu: Device Drivers >> HID support >> USB HID support +CONFIG_HID_PID y + +# Menu: Device Drivers >> HID support >> USB HID support >> USB HID transport layer +CONFIG_USB_HIDDEV y + +# Menu: Device Drivers >> HID support >> USB HID support >> USB HID transport layer >> USB HID Boot Protocol drivers + +# Menu: Device Drivers >> HSI support + +# Menu: Device Drivers >> Hardware Monitoring support +CONFIG_HWMON y mark +CONFIG_HWMON y mark mark +CONFIG_HWMON y + +# Menu: Device Drivers >> Hardware Monitoring support >> PMBus support + +# Menu: Device Drivers >> Hardware Spinlock drivers +CONFIG_HWSPINLOCK_OMAP y note + +# Menu: Device Drivers >> Hid Sensor IIO Common + +# Menu: Device Drivers >> I2C Algorithms +CONFIG_I2C_ALGOBIT p policy<(arch powerpc &/ value y) | value m> note + +# Menu: Device Drivers >> I2C Hardware Bus support +CONFIG_I2C_IMX y +CONFIG_I2C_OMAP p policy<(arch armel armhf &/ value y) | value m> note + +# Menu: Device Drivers >> I2C support +CONFIG_I2C y +CONFIG_I2C_COMPAT y mark +CONFIG_I2C_HELPER_AUTO y + +# Menu: Device Drivers >> I2C support >> I2C bus multiplexing support + +# Menu: Device Drivers >> I2C support >> I2C bus multiplexing support >> Multiplexer I2C Chip support + +# Menu: Device Drivers >> I2O device support +CONFIG_I2O_CONFIG_OLD_IOCTL n + +# Menu: Device Drivers >> IEEE 1394 (FireWire) support + +# Menu: Device Drivers >> IIO staging drivers +CONFIG_IIO_SIMPLE_DUMMY_EVENTS n note +CONFIG_IIO_SIMPLE_DUMMY_BUFFER n note + +# Menu: Device Drivers >> IIO staging drivers >> Accelerometers +CONFIG_LIS3L02DQ p policy<(arch armhf &/ value n) | value m> flag + +# Menu: Device Drivers >> IIO staging drivers >> Active energy metering IC + +# Menu: Device Drivers >> IIO staging drivers >> Analog digital bi-direction converters + +# Menu: Device Drivers >> IIO staging drivers >> Analog to digital converters +CONFIG_AD799X_RING_BUFFER y + +# Menu: Device Drivers >> IIO staging drivers >> Capacitance to digital converters + +# Menu: Device Drivers >> IIO staging drivers >> Digital gyroscope sensors + +# Menu: Device Drivers >> IIO staging drivers >> Direct Digital Synthesis + +# Menu: Device Drivers >> IIO staging drivers >> Light sensors + +# Menu: Device Drivers >> IIO staging drivers >> Magnetometer sensors + +# Menu: Device Drivers >> IIO staging drivers >> Network Analyzer, Impedance Converters + +# Menu: Device Drivers >> IIO staging drivers >> Resolver to digital converters + +# Menu: Device Drivers >> IOMMU Hardware Support +set +tree 'Device Drivers>>IOMMU Hardware Support' ?pattern _IOMMU$ ?type bool !flag EXPERIMENTAL = y +# +CONFIG_IOMMU_SUPPORT y +CONFIG_INTEL_IOMMU_DEFAULT_ON n note +CONFIG_OMAP_IOVMM n note +CONFIG_SHMOBILE_IOMMU_ADDRSIZE_2048MB y + +# Menu: Device Drivers >> ISDN feature submodules + +# Menu: Device Drivers >> ISDN support +CONFIG_ISDN y +CONFIG_HYSDN_CAPI y + +# Menu: Device Drivers >> ISDN support >> CAPI 2.0 subsystem + +# Menu: Device Drivers >> ISDN support >> CAPI 2.0 subsystem >> Active AVM cards +CONFIG_CAPI_AVM y + +# Menu: Device Drivers >> ISDN support >> CAPI 2.0 subsystem >> Active Eicon DIVA Server cards +CONFIG_CAPI_EICON y + +# Menu: Device Drivers >> ISDN support >> Modular ISDN driver + +# Menu: Device Drivers >> ISDN support >> Old ISDN4Linux (deprecated) + +# Menu: Device Drivers >> ISDN support >> Siemens Gigaset support + +# Menu: Device Drivers >> Industrial I/O support + +# Menu: Device Drivers >> IndustryPack bus support + +# Menu: Device Drivers >> Inertial measurement units + +# Menu: Device Drivers >> InfiniBand support + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) +set +tree 'Device Drivers,Input device support,INPUT' = - mark +set +all ?mark 'INPUT' ?flag EXPERIMENTAL ?type bool = n +set +all ?mark 'INPUT' ?flag EXPERIMENTAL ?type tristate = m note +set +all ?mark 'INPUT' !flag EXPERIMENTAL ?type tristate = m +set +pattern ^MOUSE_PS2_ ?mark INPUT ?type bool !flag EXPERIMENTAL = y +set +pattern ^TOUCHSCREEN_ ?mark INPUT ?type bool !flag EXPERIMENTAL = y +set +pattern _FF$ ?mark INPUT ?type bool !flag EXPERIMENTAL = y +# +CONFIG_INPUT y +CONFIG_INPUT_MOUSEDEV y +CONFIG_INPUT_MOUSEDEV_PSAUX y +CONFIG_INPUT_MOUSEDEV_SCREEN_X 1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y 768 +CONFIG_INPUT_EVDEV y + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Joysticks/Gamepads +CONFIG_INPUT_JOYSTICK y +CONFIG_JOYSTICK_IFORCE_USB y +CONFIG_JOYSTICK_IFORCE_232 y +CONFIG_JOYSTICK_XPAD_LEDS y + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Keyboards +CONFIG_INPUT_KEYBOARD y +CONFIG_KEYBOARD_ATKBD y note +CONFIG_KEYBOARD_IMX n +CONFIG_KEYBOARD_OMAP4 p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_KEYBOARD_TWL4030 p policy<(arch armel armhf &/ value y) | value m> note + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Mice +CONFIG_INPUT_MOUSE y +CONFIG_MOUSE_INPORT n note + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Miscellaneous devices +CONFIG_INPUT_MISC y +CONFIG_INPUT_KXTJ9_POLLED_MODE n +CONFIG_INPUT_UINPUT y + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Tablets +CONFIG_INPUT_TABLET y + +# Menu: Device Drivers >> Input device support >> Generic input layer (needed for keyboard, mouse, ...) >> Touchscreens +CONFIG_INPUT_TOUCHSCREEN y + +# Menu: Device Drivers >> Input device support >> Hardware I/O ports +CONFIG_SERIO y note +CONFIG_SERIO_I8042 y note +CONFIG_SERIO_SERPORT p policy<(arch armhf &/ value y) | value m> note +CONFIG_SERIO_LIBPS2 y note + +# Menu: Device Drivers >> LED Support +CONFIG_NEW_LEDS y + +# Menu: Device Drivers >> LED Support >> LED Class Support +CONFIG_LEDS_CLASS y +CONFIG_LEDS_PCA9532_GPIO y +CONFIG_LEDS_GPIO p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_LEDS_PWM p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_LEDS_ASIC3 y + +# Menu: Device Drivers >> LED Support >> LED Class Support >> LED Trigger support +CONFIG_LEDS_TRIGGERS y +CONFIG_LEDS_TRIGGER_HEARTBEAT p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_LEDS_TRIGGER_CPU y + +# Menu: Device Drivers >> Light sensors + +# Menu: Device Drivers >> MMC/SD/SDIO card support +CONFIG_MMC y +CONFIG_MMC_BLOCK p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_MMC_TEST n flag +CONFIG_MMC_SDHCI p policy<(arch armel armhf highbank &/ value y) | value m> note +CONFIG_MMC_SDHCI_PLTFM p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_MMC_OMAP p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_MMC_OMAP_HS p policy<(arch armel armhf &/ value y) | value m> note + +# Menu: Device Drivers >> Macintosh device drivers +CONFIG_MACINTOSH_DRIVERS y + +# Menu: Device Drivers >> Magnetometer sensors + +# Menu: Device Drivers >> Mailbox Hardware Support +CONFIG_MAILBOX y +CONFIG_PL320_MBOX y +CONFIG_OMAP_MBOX_KFIFO_SIZE 256 + +# Menu: Device Drivers >> Memory Controller drivers +CONFIG_MEMORY y +CONFIG_TEGRA20_MC y +CONFIG_TEGRA30_MC y + +# Menu: Device Drivers >> Memory Technology Device (MTD) support +CONFIG_MTD p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_MTD_BLKDEVS p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_MTD_BLOCK p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_SM_FTL m note +CONFIG_MTD_OF_PARTS p policy<(arch armel armhf &/ value y) | value m> note + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> Enable UBI - Unsorted block images + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> LPDDR flash memory drivers + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> Mapping drivers for chip access +CONFIG_MTD_COMPLEX_MAPPINGS y +CONFIG_MTD_PHYSMAP_COMPAT n + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> NAND Device Support +CONFIG_MTD_NAND p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_MTD_NAND_OMAP2 p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_MTD_NAND_OMAP_BCH p policy<(arch armel armhf &/ value y) | value m> note + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> OneNAND Device Support + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> RAM/ROM/Flash chip drivers + +# Menu: Device Drivers >> Memory Technology Device (MTD) support >> Self-contained MTD device drivers + +# Menu: Device Drivers >> Microsoft Hyper-V guest support + +# Menu: Device Drivers >> Misc devices +CONFIG_CS5535_MFGPT n note +CONFIG_SRAM y + +# Menu: Device Drivers >> Misc devices >> EEPROM support + +# Menu: Device Drivers >> Misc devices >> Silicon Labs C2 port support + +# Menu: Device Drivers >> Misc devices >> Texas Instruments shared transport line discipline + +# Menu: Device Drivers >> Multifunction device drivers +set +tree 'Device Drivers>>Multifunction device drivers' ?pattern ^MFD_ ?type bool !flag EXPERIMENTAL = y +CONFIG_EZX_PCAP p policy<(arch armhf &/ value n) | value m> flag +CONFIG_MFD_SM501 p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_MFD_OMAP_USB_HOST y + +# Menu: Device Drivers >> Multifunction device drivers >> STMicroelectronics STMPE +CONFIG_MFD_STMPE y + +# Menu: Device Drivers >> Multifunction device drivers >> STMicroelectronics STMPE >> STMicroelectronics STMPE Interface Drivers +CONFIG_STMPE_I2C y +CONFIG_STMPE_SPI y + +# Menu: Device Drivers >> Multimedia Capabilities Port drivers + +# Menu: Device Drivers >> Multimedia support +CONFIG_MEDIA_SUPPORT p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_MEDIA_ANALOG_TV_SUPPORT y +CONFIG_MEDIA_DIGITAL_TV_SUPPORT y +CONFIG_MEDIA_RC_SUPPORT y +CONFIG_VIDEO_FIXED_MINOR_RANGES n +CONFIG_DVB_NET y +CONFIG_DVB_MAX_ADAPTERS 8 +CONFIG_DVB_DYNAMIC_MINORS y +CONFIG_SMS_SIANO_RC y +CONFIG_MEDIA_SUBDRV_AUTOSELECT y + +# Menu: Device Drivers >> Multimedia support >> AM/FM radio receivers/transmitters support +CONFIG_MEDIA_RADIO_SUPPORT y + +# Menu: Device Drivers >> Multimedia support >> AM/FM radio receivers/transmitters support >> Customize TV tuners + +# Menu: Device Drivers >> Multimedia support >> AM/FM radio receivers/transmitters support >> Radio Adapters +CONFIG_RADIO_ADAPTERS y +CONFIG_RADIO_SI470X y + +# Menu: Device Drivers >> Multimedia support >> AM/FM radio receivers/transmitters support >> Radio Adapters >> ISA radio devices +CONFIG_V4L_RADIO_ISA_DRIVERS y + +# Menu: Device Drivers >> Multimedia support >> Cameras/video grabbers support +CONFIG_MEDIA_CAMERA_SUPPORT y + +# Menu: Device Drivers >> Multimedia support >> Cameras/video grabbers support >> ISA and parallel port devices +CONFIG_MEDIA_PARPORT_SUPPORT y + +# Menu: Device Drivers >> Multimedia support >> Cameras/video grabbers support >> Media test drivers +CONFIG_V4L_TEST_DRIVERS y + +# Menu: Device Drivers >> Multimedia support >> Cameras/video grabbers support >> Memory-to-memory multimedia devices +CONFIG_V4L_MEM2MEM_DRIVERS y + +# Menu: Device Drivers >> Multimedia support >> Cameras/video grabbers support >> V4L platform devices +CONFIG_V4L_PLATFORM_DRIVERS y + +# Menu: Device Drivers >> Multimedia support >> Media PCI Adapters +CONFIG_MEDIA_PCI_SUPPORT y +CONFIG_VIDEO_SAA7134_RC y +CONFIG_DVB_AV7110_OSD y + +# Menu: Device Drivers >> Multimedia support >> Media USB Adapters +CONFIG_MEDIA_USB_SUPPORT y +CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV y +CONFIG_USB_PWC_INPUT_EVDEV y +CONFIG_VIDEO_PVRUSB2_SYSFS y +CONFIG_VIDEO_PVRUSB2_DVB y +CONFIG_VIDEO_STK1160_AC97 y +CONFIG_VIDEO_CX231XX_RC y +CONFIG_DVB_USB_DIBUSB_MB_FAULTY n + +# Menu: Device Drivers >> Multimedia support >> Media USB Adapters >> GSPCA based webcams + +# Menu: Device Drivers >> Multimedia support >> Remote Controller devices +CONFIG_RC_DEVICES y + +# Menu: Device Drivers >> Multimedia support >> Remote controller decoders +CONFIG_RC_DECODERS y + +# Menu: Device Drivers >> Multiple devices driver support (RAID and LVM) +set +tree 'Device Drivers>>MD' ?flag EXPERIMENTAL ?type bool = n +set +tree 'Device Drivers>>MD' ?flag EXPERIMENTAL ?type tristate = m note +set +tree 'Device Drivers>>MD' !flag EXPERIMENTAL ?type tristate = m +# +CONFIG_MD y +CONFIG_BLK_DEV_MD y +CONFIG_MD_AUTODETECT y +CONFIG_BLK_DEV_DM y +CONFIG_DM_UEVENT y + +# Menu: Device Drivers >> Network device support +set +pattern '^NET_VENDOR_' = y +# +CONFIG_NETDEVICES y +CONFIG_FDDI y +CONFIG_HIPPI n note +CONFIG_PPP y +CONFIG_PPP_FILTER y +CONFIG_PPP_MULTILINK y +CONFIG_SLIP_COMPRESSED y +CONFIG_SLIP_SMART y +CONFIG_SLIP_MODE_SLIP6 y +CONFIG_XEN_NETDEV_FRONTEND y note + +# Menu: Device Drivers >> Network device support >> ARCnet support + +# Menu: Device Drivers >> Network device support >> ATM drivers +CONFIG_ATM_DRIVERS y + +# Menu: Device Drivers >> Network device support >> Ethernet driver support +CONFIG_ETHERNET y +CONFIG_NET_CALXEDA_XGMAC p policy<(arch armhf &/ value y) | value m> note +CONFIG_DM9000_FORCE_SIMPLE_PHY_POLL n + +# Menu: Device Drivers >> Network device support >> IEEE 802.15.4 drivers +CONFIG_IEEE802154_FAKEHARD n flag + +# Menu: Device Drivers >> Network device support >> Network core driver support +CONFIG_NET_CORE y +CONFIG_NET_FC y +CONFIG_NETCONSOLE_DYNAMIC y +CONFIG_NETPOLL_TRAP n +CONFIG_TUN y +CONFIG_VIRTIO_NET p policy<(arch i386 amd64 &/ value y) | (arch armel armhf &/ value n) | value m> note + +# Menu: Device Drivers >> Network device support >> Network core driver support >> Ethernet team driver support + +# Menu: Device Drivers >> Network device support >> PHY Device support and infrastructure +set +tree 'Device Drivers>>Network device support>>PHY Device support and infrastructure' ?flag EXPERIMENTAL ?type bool = n +set +tree 'Device Drivers>>Network device support>>PHY Device support and infrastructure' ?flag EXPERIMENTAL ?type tristate = y note +set +tree 'Device Drivers>>Network device support>>PHY Device support and infrastructure' !flag EXPERIMENTAL ?type tristate = y note +# +CONFIG_PHYLIB y +CONFIG_STE10XP y +CONFIG_FIXED_PHY y + +# Menu: Device Drivers >> Network device support >> S/390 network device drivers + +# Menu: Device Drivers >> Network device support >> Wan interfaces support +CONFIG_WAN y +CONFIG_DSCC4_PCISYNC y +CONFIG_DSCC4_PCI_RST y +CONFIG_DLCI_MAX 8 + +# Menu: Device Drivers >> Network device support >> Wireless LAN +CONFIG_WLAN y +CONFIG_B43_BCMA y +CONFIG_B43_PCMCIA n +CONFIG_B43_SDIO n +CONFIG_B43_PHY_N y +CONFIG_B43_PHY_LP y +CONFIG_B43_PHY_HT y +CONFIG_B43LEGACY_DMA_AND_PIO_MODE y +CONFIG_BRCMFMAC_USB y +CONFIG_BRCMDBG - flag + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Atheros Wireless Cards +CONFIG_ATH6KL_USB m note + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N (iwlwifi) + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N (iwlwifi) >> Debugging Options +CONFIG_IWLWIFI_DEBUGFS y +CONFIG_IWLWIFI_DEVICE_TRACING y + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Ralink driver support +CONFIG_RT2800PCI_RT33XX y +CONFIG_RT2800PCI_RT35XX y +CONFIG_RT2800PCI_RT53XX y +CONFIG_RT2800PCI_RT3290 y +CONFIG_RT2800USB_RT33XX y +CONFIG_RT2800USB_RT35XX y +CONFIG_RT2800USB_RT3573 y +CONFIG_RT2800USB_RT53XX y +CONFIG_RT2800USB_RT55XX y + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> Realtek rtlwifi family of devices +CONFIG_RTL8192DE m note + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> TI Wireless LAN support +CONFIG_WL_TI y + +# Menu: Device Drivers >> Network device support >> Wireless LAN >> TI Wireless LAN support >> TI wl1251 driver support + +# Menu: Device Drivers >> PHY Subsystem +CONFIG_TWL4030_USB y + +# Menu: Device Drivers >> PPS support +CONFIG_PPS_CLIENT_KTIMER n flag + +# Menu: Device Drivers >> PTP clock support + +# Menu: Device Drivers >> Parallel port support +CONFIG_PARPORT_PC_FIFO y +CONFIG_PARPORT_PC_SUPERIO n +CONFIG_PARPORT_1284 y + +# Menu: Device Drivers >> Passive cards +set +tree 'Device Drivers>>Passive cards' ?pattern '^HISAX_' !pattern '^HISAX_NO_' ?type bool = y + +# Menu: Device Drivers >> Pin controllers +set +tree 'Device Drivers>>Pin controllers' ?pattern '^PINCTRL_' ?type bool = y +CONFIG_PINMUX y +CONFIG_PINCONF y + +# Menu: Device Drivers >> Platform support for Chrome hardware +CONFIG_CHROME_PLATFORMS y + +# Menu: Device Drivers >> Plug and Play support +CONFIG_PNP y +CONFIG_ISAPNP y +CONFIG_PNPBIOS y +CONFIG_PNPBIOS_PROC_FS y + +# Menu: Device Drivers >> Power supply class support +CONFIG_POWER_SUPPLY y +CONFIG_BATTERY_BQ27X00_I2C y +CONFIG_BATTERY_BQ27X00_PLATFORM y +CONFIG_CHARGER_MANAGER y +CONFIG_POWER_RESET_RESTART y + +# Menu: Device Drivers >> Power supply class support >> Board level reset or power off +CONFIG_POWER_RESET y +CONFIG_POWER_RESET_GPIO y +CONFIG_POWER_RESET_VEXPRESS y + +# Menu: Device Drivers >> Pressure sensors + +# Menu: Device Drivers >> Pulse-Width Modulation (PWM) Support +CONFIG_PWM y + +# Menu: Device Drivers >> Real Time Clock +CONFIG_RTC_CLASS y +CONFIG_RTC_HCTOSYS y +CONFIG_RTC_SYSTOHC y +CONFIG_RTC_HCTOSYS_DEVICE "rtc0" +CONFIG_RTC_INTF_SYSFS y +CONFIG_RTC_INTF_PROC y +CONFIG_RTC_INTF_DEV y +CONFIG_RTC_INTF_DEV_UIE_EMUL n +CONFIG_RTC_DRV_TEST n flag +CONFIG_RTC_DRV_M41T80_WDT y +CONFIG_RTC_DRV_CMOS p policy<(arch i386 amd64 &/ value y) | value m> note +CONFIG_RTC_DRV_TWL4030 p policy<(arch armel armhf &/ value y) | value m> note + +# Menu: Device Drivers >> Remoteproc drivers + +# Menu: Device Drivers >> SCSI device support + +# Menu: Device Drivers >> SCSI device support >> SCSI device support +CONFIG_SCSI y +CONFIG_SCSI_PROC_FS y +CONFIG_BLK_DEV_SD y note +CONFIG_BLK_DEV_SR y note +CONFIG_BLK_DEV_SR_VENDOR n note +CONFIG_CHR_DEV_SG y note +CONFIG_SCSI_MULTI_LUN y +CONFIG_SCSI_CONSTANTS y +CONFIG_SCSI_LOGGING y +CONFIG_SCSI_SCAN_ASYNC y +CONFIG_SCSI_OSD_DPRINT_SENSE 1 + +# Menu: Device Drivers >> SCSI device support >> SCSI device support >> PCMCIA SCSI adapter support +CONFIG_SCSI_LOWLEVEL_PCMCIA y + +# Menu: Device Drivers >> SCSI device support >> SCSI device support >> SCSI Device Handlers + +# Menu: Device Drivers >> SCSI device support >> SCSI device support >> SCSI Transports +CONFIG_SCSI_SPI_ATTRS p policy<(arch i386 amd64 &/ value y) | value m> note +CONFIG_SCSI_FC_TGT_ATTRS y +CONFIG_SCSI_SAS_ATA y +CONFIG_SCSI_SAS_HOST_SMP y +CONFIG_SCSI_SRP_TGT_ATTRS y + +# Menu: Device Drivers >> SCSI device support >> SCSI device support >> SCSI low-level drivers +CONFIG_SCSI_LOWLEVEL y +CONFIG_AIC7XXX_CMDS_PER_DEVICE 8 +CONFIG_AIC7XXX_RESET_DELAY_MS 15000 +CONFIG_AIC7XXX_DEBUG_MASK 0 +CONFIG_AIC7XXX_REG_PRETTY_PRINT y +CONFIG_SCSI_AIC7XXX_OLD n note +CONFIG_AIC79XX_CMDS_PER_DEVICE 32 +CONFIG_AIC79XX_RESET_DELAY_MS 5000 +CONFIG_AIC79XX_DEBUG_MASK 0 +CONFIG_AIC79XX_REG_PRETTY_PRINT y +CONFIG_SCSI_MVSAS_TASKLET n +CONFIG_MEGARAID_NEWGEN y +CONFIG_SCSI_MPT2SAS_MAX_SGE 128 +CONFIG_SCSI_MPT2SAS_LOGGING n +CONFIG_SCSI_MPT3SAS_MAX_SGE 128 +CONFIG_SCSI_MPT3SAS_LOGGING n +CONFIG_SCSI_FLASHPOINT y +CONFIG_SCSI_EATA_TAGGED_QUEUE y +CONFIG_SCSI_EATA_LINKED_COMMANDS y +CONFIG_SCSI_EATA_MAX_TAGS 16 +CONFIG_SCSI_IZIP_EPP16 n +CONFIG_SCSI_IZIP_SLOW_CTR n +CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE 1 +CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS 16 +CONFIG_SCSI_SYM53C8XX_MAX_TAGS 64 +CONFIG_SCSI_SYM53C8XX_MMIO y +CONFIG_SCSI_IPR_TRACE n +CONFIG_SCSI_IPR_DUMP n +CONFIG_SCSI_DEBUG m +CONFIG_SCSI_VIRTIO m note +CONFIG_SCSI_GENERIC_NCR53C400 y +CONFIG_SCSI_U14_34F_TAGGED_QUEUE y +CONFIG_SCSI_U14_34F_LINKED_COMMANDS y +CONFIG_SCSI_U14_34F_MAX_TAGS 8 + +# Menu: Device Drivers >> SPI support +CONFIG_SPI y +CONFIG_SPI_XILINX n +CONFIG_SPI_SPIDEV m note +CONFIG_SPI_OMAP24XX y + +# Menu: Device Drivers >> Samsung thermal drivers + +# Menu: Device Drivers >> Sensors used on soc_camera driver + +# Menu: Device Drivers >> Serial ATA and Parallel ATA drivers +CONFIG_ATA y mark +CONFIG_ATA_VERBOSE_ERROR y +CONFIG_ATA_ACPI y +CONFIG_SATA_PMP y +CONFIG_SATA_AHCI_PLATFORM p policy<(arch armhf &/ value y) | value m> note +CONFIG_ATA_SFF y +CONFIG_ATA_BMDMA y +CONFIG_ATA_PIIX p policy<(arch i386 amd64 &/ value y) | value m> note +CONFIG_SATA_SVW p policy<(arch powerpc &/ value y) | value m> note +CONFIG_PATA_HPT3X3_DMA n note +CONFIG_PATA_SIS p policy<(arch i386 amd64 &/ value y) | value m> note +CONFIG_PATA_ACPI p policy<(arch i386 amd64 &/ value m)> note +CONFIG_ATA_GENERIC p policy<(arch i386 amd64 &/ value y) | value m> note + +# Menu: Device Drivers >> SoC Audio support for SuperH + +# Menu: Device Drivers >> Sonics Silicon Backplane + +# Menu: Device Drivers >> Sony MemoryStick card support + +# Menu: Device Drivers >> Sound card support +CONFIG_SOUND p policy<(arch armel armhf &/ value y) | value m> note + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture +CONFIG_SND p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_SND_PCM_OSS n note + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support +CONFIG_SND_SOC p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_SND_OMAP_SOC p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_SND_OMAP_SOC_OMAP_TWL4030 p policy<(arch armel armhf &/ value y) | value m> note + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> SoC Audio for Freescale MXS CPUs + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> SoC Audio for Freescale PowerPC CPUs + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> SoC Audio for Freescale i.MX CPUs + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ALSA for SoC audio support >> SoC Audio support for Ux500 platform + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ARM sound devices + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> Apple Onboard Audio driver + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> FireWire sound devices +CONFIG_SND_FIREWIRE y + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> GSC sound devices + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> Generic sound devices +CONFIG_SND_DRIVERS y + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> ISA sound devices +CONFIG_SND_ISA y + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> MIPS sound devices + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> PCI sound devices +CONFIG_SND_PCI y + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> PCI sound devices >> Intel HD Audio + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> PCMCIA sound devices +CONFIG_SND_PCMCIA y + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> PowerPC sound devices + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> SPI sound devices +CONFIG_SND_SPI y + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> SUPERH sound devices + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> Sparc sound devices + +# Menu: Device Drivers >> Sound card support >> Advanced Linux Sound Architecture >> USB sound devices +CONFIG_SND_USB y +CONFIG_SND_USB_CAIAQ_INPUT y + +# Menu: Device Drivers >> Sound card support >> Open Sound System (DEPRECATED) + +# Menu: Device Drivers >> Sound card support >> Open Sound System (DEPRECATED) >> OSS sound modules + +# Menu: Device Drivers >> Speakup console speech + +# Menu: Device Drivers >> Staging drivers +CONFIG_STAGING y +CONFIG_PANEL_PARPORT 0 +CONFIG_PANEL_PROFILE 5 +CONFIG_PANEL_CHANGE_MESSAGE n +CONFIG_ZSMALLOC y note +CONFIG_ZRAM y mark note +CONFIG_SBE_PMCC4_NCOMM y + +# Menu: Device Drivers >> Staging drivers >> DSP Bridge driver + +# Menu: Device Drivers >> Staging drivers >> Data acquisition support (comedi) +CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB 2048 +CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB 20480 + +# Menu: Device Drivers >> Staging drivers >> Data acquisition support (comedi) >> Comedi ISA and PC/104 drivers +CONFIG_COMEDI_ISA_DRIVERS y + +# Menu: Device Drivers >> Staging drivers >> Data acquisition support (comedi) >> Comedi PCI drivers +CONFIG_COMEDI_PCI_DRIVERS y + +# Menu: Device Drivers >> Staging drivers >> Data acquisition support (comedi) >> Comedi PCMCIA drivers +CONFIG_COMEDI_PCMCIA_DRIVERS y + +# Menu: Device Drivers >> Staging drivers >> Data acquisition support (comedi) >> Comedi USB drivers +CONFIG_COMEDI_USB_DRIVERS y + +# Menu: Device Drivers >> Staging drivers >> Data acquisition support (comedi) >> Comedi misc drivers +CONFIG_COMEDI_MISC_DRIVERS y + +# Menu: Device Drivers >> Staging drivers >> GCT GDM72xx WiMAX support +CONFIG_WIMAX_GDM72XX_QOS y +CONFIG_WIMAX_GDM72XX_K_MODE y +CONFIG_WIMAX_GDM72XX_WIMAX2 y +CONFIG_WIMAX_GDM72XX_USB y +CONFIG_WIMAX_GDM72XX_USB_PM y + +# Menu: Device Drivers >> Staging drivers >> Line6 USB support +CONFIG_LINE6_USB_IMPULSE_RESPONSE n + +# Menu: Device Drivers >> Staging drivers >> Media staging drivers +CONFIG_STAGING_MEDIA y +CONFIG_DT3155_CCIR n note +CONFIG_DT3155_STREAMING y + +# Menu: Device Drivers >> Staging drivers >> Media staging drivers >> Linux Infrared Remote Control IR receiver/transmitter drivers +CONFIG_LIRC_STAGING y +CONFIG_LIRC_SERIAL_TRANSMITTER y + +# Menu: Device Drivers >> TI VLYNQ + +# Menu: Device Drivers >> Temperature sensors + +# Menu: Device Drivers >> Texas Instruments WL128x FM driver (ST based) + +# Menu: Device Drivers >> Texas Instruments thermal drivers +CONFIG_OMAP4_THERMAL y +CONFIG_DRA752_THERMAL y + +# Menu: Device Drivers >> Triggers - standalone + +# Menu: Device Drivers >> USB Network Adapters +CONFIG_USB_USBNET p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_USB_NET_SMSC95XX p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_USB_KC2190 y note + +# Menu: Device Drivers >> USB Peripheral Controller +CONFIG_USB_M66592 n note +CONFIG_USB_DUMMY_HCD n flag + +# Menu: Device Drivers >> USB Physical Layer drivers +CONFIG_NOP_USB_XCEIV p policy<(arch armel armhf &/ value y) | value m> note + +# Menu: Device Drivers >> USB support +CONFIG_USB_SUPPORT y + +# Menu: Device Drivers >> USB support >> Support for Host-side USB +CONFIG_USB y +CONFIG_USB_OTG n note mark +CONFIG_USB_OTG_WHITELIST n note +CONFIG_USB_OTG_BLACKLIST_HUB n note +CONFIG_USB_XHCI_HCD y note +CONFIG_USB_EHCI_HCD y note +CONFIG_USB_OHCI_HCD y note +CONFIG_USB_UHCI_HCD y note +CONFIG_USB_HCD_BCMA p policy<(arch armel armhf &/ value n) | value m> note +CONFIG_USB_HCD_SSB p policy<(arch armel armhf &/ value n) | value m> note +CONFIG_USB_MUSB_HDRC p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_USB_MUSB_TUSB6010 p policy<(arch armel armhf &/ value n) | value m> note +CONFIG_USB_SISUSBVGA_CON n note +CONFIG_USB_MUSB_OMAP2PLUS y +CONFIG_USB_INVENTRA_DMA p policy<(arch armel armhf &/ value y) | value n> note + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> USB DSL modem support + +# Menu: Device Drivers >> USB support >> Support for Host-side USB >> USB Serial Converter support +CONFIG_USB_SERIAL_GENERIC y +CONFIG_USB_SERIAL_SAFE_PADDED n +CONFIG_USB_SERIAL_DEBUG m note + +# Menu: Device Drivers >> USB support >> USB Gadget Support +CONFIG_USB_GADGET p policy<(arch armel armhf &/ value y) | value m> note +CONFIG_USB_GADGETFS m note +CONFIG_USB_FUNCTIONFS m note +CONFIG_USB_G_MULTI p policy<(arch armel armhf &/ value m) | value n> note + +# Menu: Device Drivers >> Ultra Wideband devices + +# Menu: Device Drivers >> Userspace I/O drivers + +# Menu: Device Drivers >> VFIO Non-Privileged userspace driver framework + +# Menu: Device Drivers >> VME bridge support + +# Menu: Device Drivers >> Virtio drivers +CONFIG_VIRTIO_PCI p policy<(arch i386 amd64 &/ value y) | (arch armel armhf &/ value n) | value m> note +CONFIG_VIRTIO_BALLOON p policy<(arch armel armhf &/ value n) | value m> note +CONFIG_VIRTIO_MMIO p policy<(arch armel armhf &/ value n) | value m> note +CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES y + +# Menu: Device Drivers >> Virtualization drivers +CONFIG_VIRT_DRIVERS y + +# Menu: Device Drivers >> Voltage and Current Regulator Support +CONFIG_REGULATOR y +CONFIG_REGULATOR_FIXED_VOLTAGE p policy<(arch armel armhf &/ value y) | value m> note + +# Menu: Device Drivers >> Watchdog Timer Support +CONFIG_WATCHDOG y +CONFIG_WATCHDOG_CORE y + +# Menu: Device Drivers >> WiMAX Wireless Broadband devices + +# Menu: Device Drivers >> X86 Platform Specific Device Drivers +CONFIG_X86_PLATFORM_DEVICES y + +# Menu: Device Drivers >> Xen driver support +CONFIG_XEN_BALLOON y +CONFIG_XEN_SELFBALLOONING y +CONFIG_XEN_BALLOON_MEMORY_HOTPLUG y +CONFIG_XEN_SCRUB_PAGES y +CONFIG_XEN_BACKEND y +CONFIG_XEN_COMPAT_XENFS y +CONFIG_XEN_SYS_HYPERVISOR y +CONFIG_XEN_ACPI_PROCESSOR p policy<(arch i386 amd64 &/ value y) | value m> +CONFIG_XEN_MCE_LOG y + +# Menu: Device Drivers >> iwl3945 / iwl4965 Debugging Options + +# Menu: Enable loadable module support +CONFIG_MODULES y +CONFIG_MODULE_FORCE_LOAD n +CONFIG_MODULE_UNLOAD y +CONFIG_MODULE_FORCE_UNLOAD n +CONFIG_MODVERSIONS y +CONFIG_MODULE_SRCVERSION_ALL y +CONFIG_MODULE_SIG y +CONFIG_MODULE_SIG_FORCE n +CONFIG_MODULE_SIG_ALL y +CONFIG_MODULE_SIG_SHA512 y + +# Menu: Enable the block layer +CONFIG_BLOCK y +CONFIG_BLK_DEV_THROTTLING y note + +# Menu: Executable file formats / Emulations +CONFIG_BINFMT_ELF y + +# Menu: Executable file formats / Emulations (x86) +CONFIG_IA32_EMULATION y +CONFIG_IA32_AOUT n note mark +CONFIG_X86_X32 y + +# Menu: File systems +set +tree 'File systems' ?flag EXPERIMENTAL ?type bool = n +set +tree 'File systems' ?flag EXPERIMENTAL ?type tristate = m note` +set +tree 'File systems' !flag EXPERIMENTAL ?type tristate = m +set +tree 'File systems' ?pattern _POSIX_ACL$ !flag EXPERIMENTAL = y +set +tree 'File systems' ?pattern _SECURITY$ !flag EXPERIMENTAL = y +set +tree 'File systems' ?pattern _XATTR$ !flag EXPERIMENTAL = y +# +CONFIG_EXT2_FS n note +CONFIG_EXT3_FS n note +CONFIG_EXT4_FS y note +CONFIG_EXT4_USE_FOR_EXT23 y +CONFIG_REISERFS_CHECK n +CONFIG_REISERFS_PROC_INFO n +CONFIG_JFS_STATISTICS y +CONFIG_XFS_QUOTA y +CONFIG_XFS_RT y +CONFIG_GFS2_FS_LOCKING_DLM y +CONFIG_OCFS2_FS_STATS y +CONFIG_OCFS2_DEBUG_MASKLOG y +CONFIG_BTRFS_FS_POSIX_ACL y +CONFIG_FILE_LOCKING y +CONFIG_DNOTIFY y +CONFIG_INOTIFY_USER y +CONFIG_FANOTIFY y +CONFIG_FANOTIFY_ACCESS_PERMISSIONS y +CONFIG_QUOTA y +CONFIG_QUOTA_NETLINK_INTERFACE y +CONFIG_PRINT_QUOTA_WARNING n +CONFIG_FUSE_FS y note + +# Menu: File systems >> CD-ROM/DVD Filesystems +CONFIG_JOLIET y +CONFIG_ZISOFS y + +# Menu: File systems >> Caches +CONFIG_FSCACHE_STATS y +CONFIG_FSCACHE_HISTOGRAM n +CONFIG_FSCACHE_OBJECT_LIST n +CONFIG_CACHEFILES_HISTOGRAM n + +# Menu: File systems >> DOS/FAT/NT Filesystems +CONFIG_VFAT_FS y +CONFIG_FAT_DEFAULT_CODEPAGE 437 +CONFIG_FAT_DEFAULT_IOCHARSET "iso8859-1" +CONFIG_NTFS_RW n + +# Menu: File systems >> Distributed Lock Manager (DLM) + +# Menu: File systems >> Miscellaneous filesystems +CONFIG_MISC_FILESYSTEMS y +CONFIG_ECRYPT_FS y note +CONFIG_JFFS2_FS_DEBUG 0 +CONFIG_JFFS2_FS_WRITEBUFFER y +CONFIG_JFFS2_FS_WBUF_VERIFY n +CONFIG_JFFS2_SUMMARY n +CONFIG_JFFS2_COMPRESSION_OPTIONS y +CONFIG_JFFS2_ZLIB y +CONFIG_JFFS2_LZO y +CONFIG_JFFS2_RTIME y +CONFIG_JFFS2_RUBIN n +CONFIG_JFFS2_CMODE_FAVOURLZO y +CONFIG_UBIFS_FS_ADVANCED_COMPR n +CONFIG_UBIFS_FS_LZO y +CONFIG_UBIFS_FS_ZLIB y +CONFIG_LOGFS n note +CONFIG_SQUASHFS_ZLIB y +CONFIG_SQUASHFS_LZO y +CONFIG_SQUASHFS_XZ y +CONFIG_SQUASHFS_4K_DEVBLK_SIZE n +CONFIG_SQUASHFS_4K_DEVBLK_SIZE n note +CONFIG_SQUASHFS_4K_DEVBLK_SIZE n +CONFIG_SQUASHFS_4K_DEVBLK_SIZE n note +CONFIG_SQUASHFS_EMBEDDED n +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE 3 +CONFIG_ROMFS_BACKED_BY_BLOCK y +CONFIG_PSTORE y +CONFIG_PSTORE_CONSOLE n note +CONFIG_PSTORE_FTRACE n +CONFIG_F2FS_STAT_FS y + +# Menu: File systems >> Native language support +CONFIG_NLS y note +CONFIG_NLS_CODEPAGE_437 y + +# Menu: File systems >> Network File Systems +CONFIG_NETWORK_FILESYSTEMS y +CONFIG_NFS_V3_ACL y +CONFIG_NFS_SWAP y +CONFIG_NFS_V4_1 y +CONFIG_NFS_V4_2 y +CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN "kernel.org" +CONFIG_NFS_FSCACHE y +CONFIG_NFS_USE_LEGACY_DNS n +CONFIG_NFSD_V3 y +CONFIG_NFSD_V3_ACL y +CONFIG_NFSD_V4 y note +CONFIG_CIFS_STATS y +CONFIG_CIFS_STATS2 n +CONFIG_CIFS_WEAK_PW_HASH y +CONFIG_CIFS_UPCALL y +CONFIG_CIFS_POSIX y +CONFIG_CIFS_ACL y +CONFIG_CIFS_DEBUG y +CONFIG_CIFS_DEBUG2 n +CONFIG_CIFS_DFS_UPCALL y +CONFIG_CIFS_SMB2 y +CONFIG_CIFS_FSCACHE y +CONFIG_NCPFS_PACKET_SIGNING y +CONFIG_NCPFS_IOCTL_LOCKING y +CONFIG_NCPFS_STRONG y +CONFIG_NCPFS_NFS_NS y +CONFIG_NCPFS_OS2_NS y +CONFIG_NCPFS_SMALLDOS n +CONFIG_NCPFS_NLS y +CONFIG_NCPFS_EXTRAS y + +# Menu: File systems >> Pseudo filesystems +CONFIG_PROC_FS y +CONFIG_PROC_KCORE y +CONFIG_PROC_VMCORE y +CONFIG_PROC_SYSCTL y +CONFIG_PROC_PAGE_MONITOR y +CONFIG_SYSFS y +CONFIG_TMPFS y +CONFIG_HUGETLBFS y + +# Menu: Firmware Drivers +CONFIG_EDD y note + +# Menu: Firmware Drivers >> EFI (Extensible Firmware Interface) Support +CONFIG_EFI_VARS y note + +# Menu: Firmware Drivers >> Google Firmware Drivers + +# Menu: Firmware Drivers >> Google Firmware Drivers >> Google Firmware Drivers + +# Menu: Floating point emulation (arm) + +# Menu: General setup +CONFIG_KERNEL_GZIP y +CONFIG_IKCONFIG n note +CONFIG_SLUB_DEBUG y +CONFIG_RD_GZIP y +CONFIG_RD_BZIP2 y +CONFIG_RD_LZMA y +CONFIG_RD_XZ y +CONFIG_RD_LZO y +CONFIG_RD_LZ4 y +CONFIG_SLUB y + +# Menu: General setup (arm) +# Menu: General setup (powerpc) +# Menu: General setup (x86) +CONFIG_OPROFILE_EVENT_MULTIPLEX n +CONFIG_KPROBES y +CONFIG_JUMP_LABEL y +CONFIG_UPROBES y + +# Menu: General setup >> CPU/Task time and stats accounting + +# Menu: General setup >> Configure standard kernel features (expert users) +CONFIG_EXPERT y + +# Menu: General setup >> Control Group support +CONFIG_CGROUPS y +CONFIG_CGROUP_HUGETLB y +CONFIG_BLK_CGROUP y note + +# Menu: General setup >> Control Group support >> Group CPU scheduler +CONFIG_CGROUP_SCHED y +CONFIG_FAIR_GROUP_SCHED y +CONFIG_CFS_BANDWIDTH y note +CONFIG_RT_GROUP_SCHED y + +# Menu: General setup >> GCOV-based kernel profiling +CONFIG_GCOV_KERNEL n + +# Menu: General setup >> IRQ subsystem + +# Menu: General setup >> Kernel Performance Events And Counters + +# Menu: General setup >> Namespaces support +CONFIG_NAMESPACES y +CONFIG_UTS_NS y +CONFIG_IPC_NS y +CONFIG_USER_NS y +CONFIG_PID_NS y +CONFIG_NET_NS y + +# Menu: General setup >> RCU Subsystem +CONFIG_TREE_RCU y + +# Menu: General setup >> Timers subsystem + +# Menu: IO Schedulers +CONFIG_IOSCHED_DEADLINE y +CONFIG_IOSCHED_CFQ y +CONFIG_CFQ_GROUP_IOSCHED y +CONFIG_DEFAULT_DEADLINE y + +# Menu: Kernel Features +# Menu: Kernel Features (arm) +CONFIG_PREEMPT_VOLUNTARY y +CONFIG_COMPACTION y +CONFIG_MIGRATION y +CONFIG_KSM y +CONFIG_TRANSPARENT_HUGEPAGE y +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS y + +CONFIG_CC_STACKPROTECTOR y mark + +# Menu: Kernel hacking +CONFIG_MAGIC_SYSRQ y +CONFIG_PANIC_ON_OOPS n note + +# Menu: Kernel hacking (arm) +# Menu: Kernel hacking (powerpc) +# Menu: Kernel hacking (x86) +CONFIG_STRICT_DEVMEM y +CONFIG_DEBUG_RODATA y +CONFIG_DEBUG_SET_MODULE_RONX y +CONFIG_EARLY_PRINTK y +CONFIG_DEBUG_NX_TEST n flag + +# Menu: Kernel hacking >> Compile-time checks and compiler options +CONFIG_DEBUG_FS y note +CONFIG_DEBUG_INFO y note +CONFIG_DEBUG_INFO_REDUCED n + +# Menu: Kernel hacking >> Debug Lockups and Hangs +CONFIG_LOCKUP_DETECTOR y + +# Menu: Kernel hacking >> Kernel debugging +CONFIG_DEBUG_KERNEL y note +CONFIG_SCHED_DEBUG y + +# Menu: Kernel hacking >> Kernel debugging >> KGDB: kernel debugger +CONFIG_KGDB y +CONFIG_KGDB_SERIAL_CONSOLE y note + +# Menu: Kernel hacking >> Lock Debugging (spinlocks, mutexes, etc...) + +# Menu: Kernel hacking >> Memory Debugging + +# Menu: Kernel hacking >> Memory Debugging >> kmemcheck: trap use of uninitialized memory + +# Menu: Kernel hacking >> RCU Debugging +CONFIG_RCU_TORTURE_TEST n flag + +# Menu: Kernel hacking >> Runtime Testing +CONFIG_LKDTM n flag +CONFIG_BACKTRACE_SELF_TEST n flag + +# Menu: Kernel hacking >> Sample kernel code +CONFIG_SAMPLES n + +# Menu: Kernel hacking >> Tracers +CONFIG_FTRACE y +CONFIG_FUNCTION_TRACER y +CONFIG_FUNCTION_GRAPH_TRACER y +CONFIG_SCHED_TRACER y +CONFIG_FTRACE_SYSCALLS y +CONFIG_BRANCH_PROFILE_NONE y +CONFIG_STACK_TRACER y +CONFIG_BLK_DEV_IO_TRACE y +CONFIG_KPROBE_EVENT y +CONFIG_UPROBE_EVENT y +CONFIG_DYNAMIC_FTRACE y +CONFIG_FUNCTION_PROFILER y +CONFIG_FTRACE_STARTUP_TEST n flag +CONFIG_MMIOTRACE y +CONFIG_MMIOTRACE_TEST n flag +CONFIG_RING_BUFFER_BENCHMARK n flag +CONFIG_RING_BUFFER_STARTUP_TEST n flag + +# Menu: Kernel hacking >> printk and dmesg options +CONFIG_PRINTK_TIME y +CONFIG_DYNAMIC_DEBUG y + +# Menu: Kernel options +CONFIG_APM_EMULATION p policy<(arch armel armhf &/ value n) | value m> note + +# Menu: Kernel options (powerpc) +CONFIG_KEXEC y +CONFIG_CRASH_DUMP y + +# Menu: Library routines +CONFIG_CRC16 y note +CONFIG_CRC_T10DIF y note +CONFIG_CRC32 y note +CONFIG_CRC32_SELFTEST n flag +CONFIG_XZ_DEC y note +CONFIG_FONTS p policy<(arch armel armhf &/ value y) | value n> +CONFIG_FONT_8x8 y +CONFIG_FONT_8x16 y +CONFIG_FONT_6x11 n +CONFIG_FONT_7x14 n +CONFIG_FONT_PEARL_8x8 n +CONFIG_FONT_ACORN_8x8 y +CONFIG_FONT_MINI_4x6 n +CONFIG_FONT_SUN8x16 n +CONFIG_FONT_SUN12x22 n +CONFIG_FONT_10x18 n + +# Menu: Networking options +CONFIG_PACKET y note +CONFIG_UNIX y note +CONFIG_NETWORK_SECMARK y +CONFIG_ATM_CLIP_NO_ICMP n +CONFIG_ATM_BR2684_IPFILTER n +CONFIG_BRIDGE_IGMP_SNOOPING y +CONFIG_VLAN_8021Q_GVRP y +CONFIG_IPX_INTERN n +CONFIG_IPDDP_ENCAP y +CONFIG_X25 m note +CONFIG_LAPB m note +CONFIG_IEEE802154 m note +CONFIG_MAC802154 - note +CONFIG_DCB y +CONFIG_DNS_RESOLVER y note +CONFIG_BATMAN_ADV_BLA y +CONFIG_BATMAN_ADV_DAT y +CONFIG_BPF_JIT y note +CONFIG_COPS_DAYNA y +CONFIG_COPS_TANGENT y + +# Menu: Networking options >> DCCP CCIDs Configuration + +# Menu: Networking options >> DCCP Kernel Hacking + +# Menu: Networking options >> Network packet filtering framework (Netfilter) +CONFIG_NETFILTER y mark + +# Menu: Networking options >> Network packet filtering framework (Netfilter) >> Advanced netfilter configuration +CONFIG_NETFILTER_ADVANCED y +CONFIG_BRIDGE_NETFILTER y + +# Menu: Networking options >> Network packet filtering framework (Netfilter) >> Advanced netfilter configuration >> DECnet: Netfilter Configuration + +# Menu: Networking options >> Network packet filtering framework (Netfilter) >> Core Netfilter Configuration +CONFIG_NF_CONNTRACK_MARK y +CONFIG_NF_CONNTRACK_SECMARK y +CONFIG_NF_CONNTRACK_ZONES y +CONFIG_NF_CONNTRACK_PROCFS n flag +CONFIG_NF_CONNTRACK_EVENTS y +CONFIG_NF_CONNTRACK_TIMEOUT y +CONFIG_NF_CONNTRACK_TIMESTAMP y +CONFIG_NETFILTER_NETLINK_QUEUE_CT y + +# Menu: Networking options >> Network packet filtering framework (Netfilter) >> Ethernet Bridge tables (ebtables) support +CONFIG_BRIDGE_EBT_ULOG n flag + +# Menu: Networking options >> Network packet filtering framework (Netfilter) >> IP set support +CONFIG_IP_SET_MAX 256 + +# Menu: Networking options >> Network packet filtering framework (Netfilter) >> IP virtual server support +CONFIG_IP_VS_IPV6 n flag +CONFIG_IP_VS_TAB_BITS 12 +CONFIG_IP_VS_PROTO_TCP y +CONFIG_IP_VS_PROTO_UDP y +CONFIG_IP_VS_PROTO_ESP y +CONFIG_IP_VS_PROTO_AH y +CONFIG_IP_VS_PROTO_SCTP y +CONFIG_IP_VS_SH_TAB_BITS 8 +CONFIG_IP_VS_NFCT y + +# Menu: Networking options >> Network packet filtering framework (Netfilter) >> IP: Netfilter Configuration + +# Menu: Networking options >> Network packet filtering framework (Netfilter) >> IPv6: Netfilter Configuration + +# Menu: Networking options >> Network testing +CONFIG_NET_DROP_MONITOR n + +# Menu: Networking options >> QoS and/or fair queueing +CONFIG_NET_SCHED y mark +CONFIG_CLS_U32_PERF n +CONFIG_CLS_U32_MARK y +CONFIG_NET_EMATCH y +CONFIG_NET_EMATCH_STACK 32 +CONFIG_NET_CLS_ACT y +CONFIG_GACT_PROB y +CONFIG_NET_CLS_IND n flag + +# Menu: Networking options >> TCP/IP networking +CONFIG_INET y note +CONFIG_IP_MULTICAST y +CONFIG_IP_ADVANCED_ROUTER y +CONFIG_IP_FIB_TRIE_STATS y +CONFIG_IP_MULTIPLE_TABLES y +CONFIG_IP_ROUTE_MULTIPATH y +CONFIG_IP_ROUTE_VERBOSE y +CONFIG_IP_PNP y +CONFIG_IP_PNP_DHCP y +CONFIG_IP_PNP_BOOTP n +CONFIG_IP_PNP_RARP n +CONFIG_NET_IPGRE_BROADCAST y note +CONFIG_IP_MROUTE y +CONFIG_IP_MROUTE_MULTIPLE_TABLES n +CONFIG_IP_PIMSM_V1 y +CONFIG_IP_PIMSM_V2 y +CONFIG_SYN_COOKIES y mark +CONFIG_INET_LRO y note +CONFIG_TCP_MD5SIG y mark +CONFIG_NETLABEL y mark +CONFIG_RDS m note + +# Menu: Networking options >> TCP/IP networking >> Layer Two Tunneling Protocol (L2TP) +CONFIG_L2TP_V3 y + +# Menu: Networking options >> TCP/IP networking >> TCP: advanced congestion control +CONFIG_TCP_CONG_ADVANCED y +CONFIG_TCP_CONG_CUBIC y note +CONFIG_DEFAULT_CUBIC y + +# Menu: Networking options >> TCP/IP networking >> The IPv6 protocol +CONFIG_IPV6 y note +CONFIG_IPV6_ROUTER_PREF y +CONFIG_IPV6_ROUTE_INFO y +CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION m note +CONFIG_IPV6_SIT_6RD y +CONFIG_IPV6_MULTIPLE_TABLES y +CONFIG_IPV6_SUBTREES y +CONFIG_IPV6_MROUTE y +CONFIG_IPV6_MROUTE_MULTIPLE_TABLES y +CONFIG_IPV6_PIMSM_V2 y + +# Menu: Networking options >> TCP/IP networking >> The SCTP Protocol +CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1 y +CONFIG_SCTP_COOKIE_HMAC_MD5 y +CONFIG_SCTP_COOKIE_HMAC_SHA1 y + +# Menu: Networking options >> TCP/IP networking >> The TIPC Protocol +CONFIG_TIPC m note +CONFIG_TIPC_PORTS 8191 + +# Menu: Networking support +CONFIG_NET y + +# Menu: Networking support >> Amateur Radio support +CONFIG_HAMRADIO y + +# Menu: Networking support >> Amateur Radio support >> Amateur Radio AX.25 Level 2 protocol + +# Menu: Networking support >> Amateur Radio support >> Amateur Radio AX.25 Level 2 protocol >> AX.25 network device drivers + +# Menu: Networking support >> Bluetooth subsystem support +CONFIG_BT m + +# Menu: Networking support >> Bluetooth subsystem support >> Bluetooth device drivers + +# Menu: Networking support >> CAIF support + +# Menu: Networking support >> CAN bus subsystem support + +# Menu: Networking support >> IrDA (infrared) subsystem support + +# Menu: Networking support >> IrDA (infrared) subsystem support >> Infrared-port device drivers +CONFIG_DONGLE y + +# Menu: Networking support >> NFC subsystem support +CONFIG_NFC m note mark +CONFIG_NFC_NCI m note + +# Menu: Networking support >> NFC subsystem support >> Near Field Communication (NFC) devices + +# Menu: Networking support >> Plan 9 Resource Sharing Support (9P2000) + +# Menu: Networking support >> RF switch subsystem support +CONFIG_RFKILL y + +# Menu: Networking support >> WiMAX Wireless Broadband support + +# Menu: Networking support >> Wireless +CONFIG_WIRELESS y + +# Menu: Networking support >> Wireless >> Generic IEEE 802.11 Networking Stack (mac80211) + +# Menu: Networking support >> Wireless >> Generic IEEE 802.11 Networking Stack (mac80211) >> Select mac80211 debugging features + +# Menu: Partition Types +set +tree 'Partition Types' ?pattern _PARTITION$ !flag EXPERIMENTAL = y +set +tree 'Partition Types' ?pattern _DISKLABEL$ !flag EXPERIMENTAL = y + +# Menu: Platform support (powerpc) +CONFIG_KVM_GUEST y + +# Menu: Platform support >> 82xx-based boards (PQ II) (powerpc) + +# Menu: Platform support >> 83xx-based boards (powerpc) + +# Menu: Platform support >> 86xx-based boards (powerpc) + +# Menu: Platform support >> Cell Broadband Engine options (powerpc) + +# Menu: Platform support >> Freescale Book-E Machine Type (powerpc) + +# Menu: Platform support >> Freescale Ethernet driver platform-specific options (powerpc) + +# Menu: Platform support >> MPC8xx CPM Options (powerpc) + +# Menu: Platform support >> PA Semi SoC-based platforms (powerpc) + +# Menu: Platform support >> PA Semi SoC-based platforms >> PA Semi PWRficient options (powerpc) + +# Menu: Platform support >> Sony PS3 (powerpc) + +# Menu: Platform support >> Sony PS3 >> PS3 Platform Options (powerpc) + +# Menu: Platform support >> WSP platform selection (powerpc) + +# Menu: Power management and ACPI options +CONFIG_SUSPEND y +CONFIG_SUSPEND_FREEZER y +CONFIG_HIBERNATION y +CONFIG_APM_EMULATION p policy<(arch armel armhf &/ value n) | value m> note + +# Menu: Power management and ACPI options >> ACPI (Advanced Configuration and Power Interface) Support +CONFIG_ACPI y mark +CONFIG_ACPI_AC y note +CONFIG_ACPI_BATTERY y note +CONFIG_ACPI_BUTTON y note +CONFIG_ACPI_FAN y note +CONFIG_ACPI_PROCESSOR y note +CONFIG_ACPI_THERMAL y note +CONFIG_ACPI_CONTAINER y note +CONFIG_ACPI_HED y note +CONFIG_ACPI_CUSTOM_METHOD n note + +# Menu: Power management and ACPI options >> APM (Advanced Power Management) BIOS support (x86) +CONFIG_APM m mark + +# Menu: Power management and ACPI options >> Memory power savings + +# Menu: Power management options +CONFIG_APM_EMULATION p policy<(arch armel armhf &/ value n) | value m> note + +# Menu: Processor support (powerpc) +CONFIG_SMP y + +# Menu: Processor type and features + +# Menu: Processor type and features (x86) +CONFIG_CC_STACKPROTECTOR y mark +CONFIG_KEXEC y +CONFIG_CRASH_DUMP y +CONFIG_RELOCATABLE y +CONFIG_TOSHIBA n note + +# Menu: Processor type and features >> Linux guest support (x86) +CONFIG_HYPERVISOR_GUEST y +CONFIG_PARAVIRT y +CONFIG_KVM_GUEST y + +# Menu: Security options +CONFIG_KEYS y +CONFIG_PERSISTENT_KEYRINGS y +CONFIG_TRUSTED_KEYS y note +CONFIG_ENCRYPTED_KEYS y note +CONFIG_SECURITY_DMESG_RESTRICT n +CONFIG_SECURITY y mark +CONFIG_SECURITYFS y +CONFIG_SECURITY_NETWORK y +CONFIG_SECURITY_NETWORK_XFRM n +CONFIG_SECURITY_PATH y +CONFIG_INTEL_TXT p policy<(arch i386 amd64 &/ value y) | value n)> +CONFIG_LSM_MMAP_MIN_ADDR 0 +CONFIG_SECURITY_SELINUX y +CONFIG_SECURITY_SELINUX_BOOTPARAM y +CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE 0 +CONFIG_SECURITY_SELINUX_DISABLE y note +CONFIG_SECURITY_SELINUX_DEVELOP y +CONFIG_SECURITY_SELINUX_AVC_STATS y +CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE 1 +CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX n +CONFIG_SECURITY_SMACK y +CONFIG_SECURITY_TOMOYO y +CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY 2048 +CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG 1024 +CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER n +CONFIG_SECURITY_TOMOYO_POLICY_LOADER "/sbin/tomoyo-init" +CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER "/sbin/init" +CONFIG_SECURITY_APPARMOR y +CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE 1 +CONFIG_SECURITY_YAMA y +CONFIG_SECURITY_YAMA_STACKED y +CONFIG_INTEGRITY_SIGNATURE y +CONFIG_IMA n note +CONFIG_EVM y +CONFIG_DEFAULT_SECURITY_APPARMOR y + +# Menu: System Type (arm) +CONFIG_ARCH_MULTIPLATFORM p policy<(arch armhf &/ value y) | value n> + +# Menu: System Type >> ARM Ltd. Versatile Express family (arm) + +# Menu: System Type >> ARM Ltd. Versatile Express family >> Versatile Express platform type (arm) + +# Menu: System Type >> Atmel AT91 System-on-Chip (arm) + +# Menu: System Type >> Atmel AT91 System-on-Chip >> Atmel Non-DT world (arm) + +# Menu: System Type >> Broadcom SoC Selection (arm) + +# Menu: System Type >> CLPS711X/EP721X/EP731X Implementations (arm) + +# Menu: System Type >> CSR SiRF atlas6/primaII/Marco/Polo Specific Features (arm) + +# Menu: System Type >> Cavium Networks CNS3XXX family (arm) + +# Menu: System Type >> Cavium Networks CNS3XXX family >> CNS3XXX platform type (arm) + +# Menu: System Type >> Cirrus EP93xx Implementation Options (arm) + +# Menu: System Type >> Cortina Systems Gemini Implementations (arm) + +# Menu: System Type >> Footbridge Implementations (arm) + +# Menu: System Type >> Freescale i.MX family (arm) + +# Menu: System Type >> Freescale i.MX family >> Freescale i.MX support (arm) + +# Menu: System Type >> IOP13XX Implementation Options (arm) + +# Menu: System Type >> IOP32x Implementation Options (arm) + +# Menu: System Type >> IOP33x Implementation Options (arm) + +# Menu: System Type >> Integrator Options (arm) + +# Menu: System Type >> Intel IXP4xx Implementation Options (arm) + +# Menu: System Type >> Intel PXA2xx/PXA3xx Implementations (arm) + +# Menu: System Type >> Kendin/Micrel KS8695 Implementations (arm) + +# Menu: System Type >> Marvell Dove Implementations (arm) + +# Menu: System Type >> Marvell Kirkwood Implementations (arm) + +# Menu: System Type >> Marvell MV78xx0 Implementations (arm) + +# Menu: System Type >> Marvell PXA168/910/MMP2 Implmentations (arm) + +# Menu: System Type >> Marvell SOC with device tree (arm) + +# Menu: System Type >> Multiple platform selection (arm) + +# Menu: System Type >> NUC950 Machines (arm) + +# Menu: System Type >> NUC960 Machines (arm) + +# Menu: System Type >> NVIDIA Tegra (arm) + +# Menu: System Type >> NVIDIA Tegra >> NVIDIA Tegra options (arm) + +# Menu: System Type >> NetX Implementations (arm) + +# Menu: System Type >> Nomadik boards (arm) + +# Menu: System Type >> Orion Implementations (arm) + +# Menu: System Type >> Qualcomm MSM Board Type (arm) + +# Menu: System Type >> RealView platform type (arm) + +# Menu: System Type >> S5PC110 Machines (arm) + +# Menu: System Type >> S5PV210 Machines (arm) + +# Menu: System Type >> SA11x0 Implementations (arm) + +# Menu: System Type >> SAMSUNG EXYNOS SoCs Support (arm) + +# Menu: System Type >> SAMSUNG S3C24XX SoCs Support (arm) + +# Menu: System Type >> ST SPEAr Family (arm) + +# Menu: System Type >> ST-Ericsson AB U300/U335 Platform (arm) + +# Menu: System Type >> STMicroelectronics Consumer Electronics SOCs with Device Trees (arm) + +# Menu: System Type >> SuperH / SH-Mobile Driver Options + +# Menu: System Type >> TI DaVinci Implementations (arm) + +# Menu: System Type >> TI OMAP Common Features (arm) + +# Menu: System Type >> TI OMAP1 specific features (arm) + +# Menu: System Type >> TI OMAP2/3/4 Specific Features (arm) + +# Menu: System Type >> Timer and clock configuration (arm) + +# Menu: System Type >> Use 8-bit SDHCI bus width (arm) + +# Menu: System Type >> Ux500 target platform (boards) (arm) + +# Menu: System Type >> Versatile platform type (arm) + +# Menu: System Type >> W90P910 Machines (arm) + +# Menu: Ubuntu Supplied Third-Party Device Drivers + +# Menu: Userspace binary formats +CONFIG_BINFMT_ELF y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS y +CONFIG_BINFMT_SCRIPT y +CONFIG_BINFMT_MISC y +CONFIG_COREDUMP y + +# Menu: Userspace binary formats (arm) + +# Menu: Virtualization +# Menu: Virtualization (arm) +# Menu: Virtualization (powerpc) +# Menu: Virtualization (x86) +CONFIG_VIRTUALIZATION y +CONFIG_KVM p policy<(arch powerpc &/ value y) | value m> +CONFIG_KVM_MMU_AUDIT n +CONFIG_KVM_DEVICE_ASSIGNMENT y +CONFIG_LGUEST n + +# temporarily disabled options -- build failures. +#CONFIG_TI_CPSW p policy<(arch armel armhf &/ value n) | value m> flag +#CONFIG_USB_MUSB_DSPS p policy<(arch armel armhf &/ value n) | value m> flag +CONFIG_LIS3L02DQ p policy<(arch armhf &/ value n) | value m> flag +CONFIG_EZX_PCAP p policy<(arch armhf &/ value n) | value m> flag +#CONFIG_TOUCHSCREEN_EGALAX p policy<(arch armel armhf &/ value n) | value m> flag note +#CONFIG_TOUCHSCREEN_EETI p policy<(arch armel armhf &/ value n) | value m> flag note +#CONFIG_SENSORS_AK8975 p policy<(arch armel armhf &/ value n) | value m> flag note +CONFIG_PPC_EPAPR_HV_BYTECHAN n flag note + +# Ensure DEPRECATED options are off. +set +all ?flag DEPRECATED !mark annotated ?type bool = n +set +all ?flag DEPRECATED !mark annotated ?type tristate = n + +# Ensure DANGEROUS things are turned off. +set +all ?flag DANGEROUS = n --- linux-3.13.0.orig/debian.master/config/arm64/config.common.arm64 +++ linux-3.13.0/debian.master/config/arm64/config.common.arm64 @@ -0,0 +1,193 @@ +# +# Config options for config.common.arm64 automatically generated by splitconfig.pl +# +CONFIG_64BIT=y +# CONFIG_AHCI_IMX is not set +CONFIG_AIC79XX_RESET_DELAY_MS=5000 +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_ARCH_PHYS_ADDR_T_64BIT=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_ARCH_SPARSEMEM_DEFAULT=y +# CONFIG_ASYNC_TX_DMA is not set +# CONFIG_ATA_NONSTANDARD is not set +CONFIG_ATA_PIIX=m +CONFIG_ATOMIC64_SELFTEST=y +CONFIG_BCH=m +CONFIG_CMDLINE="console=ttyAMA0" +CONFIG_COMEDI_ISA_DRIVERS=y +CONFIG_COMPACTION=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +# CONFIG_CPU_BIG_ENDIAN is not set +# CONFIG_DEBUG_MEMORY_INIT is not set +# CONFIG_DEFAULT_CFQ is not set +CONFIG_DEFAULT_DEADLINE=y +CONFIG_DEFAULT_IOSCHED="deadline" +CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 +CONFIG_EXYNOS_VIDEO=y +# CONFIG_EZX_PCAP is not set +CONFIG_FB_ATY128=m +CONFIG_FB_BACKLIGHT=y +# CONFIG_FB_BOOT_VESA_SUPPORT is not set +CONFIG_FB_DDC=m +# CONFIG_FB_MACMODES is not set +CONFIG_FB_RADEON=m +CONFIG_FB_SVGALIB=m +CONFIG_FB_SYS_COPYAREA=m +CONFIG_FB_SYS_FILLRECT=m +CONFIG_FB_SYS_FOPS=m +CONFIG_FB_SYS_IMAGEBLIT=m +CONFIG_FB_VOODOO1=m +# CONFIG_FMAN_P1023 is not set +CONFIG_FMAN_P3040_P4080_P5020=y +# CONFIG_FONTS is not set +CONFIG_FORCE_MAX_ZONEORDER=11 +CONFIG_FRAME_WARN=1024 +CONFIG_FSL_FMAN=y +CONFIG_GENERIC_CSUM=y +CONFIG_GENERIC_PHY=y +CONFIG_GPIO_GENERIC=m +# CONFIG_GPIO_TWL6040 is not set +CONFIG_HAVE_64BIT_ALIGNED_ACCESS=y +# CONFIG_HAVE_AOUT is not set +# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set +CONFIG_HAVE_GENERIC_DMA_COHERENT=y +CONFIG_HUGETLB_PAGE=y +# CONFIG_HW_RANDOM_ATMEL is not set +CONFIG_HZ=100 +CONFIG_I2C_ALGOBIT=m +# CONFIG_IKCONFIG is not set +CONFIG_IMA=y +CONFIG_INFINIBAND_AMSO1100=m +# CONFIG_IOMMU_SUPPORT is not set +# CONFIG_IRQ_DOMAIN_DEBUG is not set +# CONFIG_KSM is not set +CONFIG_KVM=y +CONFIG_LEDS_TRIGGER_HEARTBEAT=m +CONFIG_LIBERTAS_MESH=y +# CONFIG_LIS3L02DQ is not set +CONFIG_LOG_BUF_SHIFT=14 +# CONFIG_MFD_TI_AM335X_TSCADC is not set +# CONFIG_MFD_TMIO is not set +CONFIG_MII=y +CONFIG_MMC_BLOCK=y +CONFIG_MMC_SDHCI=m +CONFIG_MMC_SDHCI_PLTFM=m +CONFIG_MTD=m +CONFIG_MTD_BLKDEVS=m +CONFIG_MTD_BLOCK=m +CONFIG_MTD_CMDLINE_PARTS=m +CONFIG_MTD_NAND=m +CONFIG_MTD_NAND_BCH=m +CONFIG_MTD_NAND_ECC=m +CONFIG_MTD_NAND_IDS=m +CONFIG_MTD_OF_PARTS=m +CONFIG_MTD_SM_COMMON=m +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NET_TULIP=y +CONFIG_NO_HZ_IDLE=y +CONFIG_NR_CPUS=8 +CONFIG_PATA_SIS=y +CONFIG_PCIEPORTBUS=y +CONFIG_PCI_SYSCALL=y +CONFIG_PERCPU_TEST=m +CONFIG_PERSISTENT_KEYRINGS=y +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_PHY_EXYNOS_DP_VIDEO=m +CONFIG_PMIC_ADP5520=y +CONFIG_PMIC_DA903X=y +CONFIG_PPS=m +CONFIG_PPS_CLIENT_GPIO=m +CONFIG_PPS_CLIENT_LDISC=m +CONFIG_PPS_CLIENT_PARPORT=m +# CONFIG_PREEMPT is not set +# CONFIG_PREEMPT_RCU is not set +CONFIG_PREEMPT_VOLUNTARY=y +# CONFIG_PROBE_EVENTS is not set +# CONFIG_PSTORE_CONSOLE is not set +CONFIG_PSTORE_RAM=m +CONFIG_PTP_1588_CLOCK=m +CONFIG_RBTREE_TEST=m +CONFIG_RCU_CPU_STALL_TIMEOUT=60 +CONFIG_RCU_FANOUT=64 +CONFIG_RCU_FAST_NO_HZ=y +# CONFIG_RCU_NOCB_CPU is not set +CONFIG_REED_SOLOMON=m +CONFIG_REGULATOR_FIXED_VOLTAGE=m +# CONFIG_REGULATOR_S2MPS11 is not set +CONFIG_REISERFS_FS=m +CONFIG_RFKILL=y +# CONFIG_RT2X00_LIB_DEBUGFS is not set +CONFIG_RTC_DRV_DS3232=m +CONFIG_RTC_DRV_PL031=m +CONFIG_SATA_AHCI_PLATFORM=m +# CONFIG_SATA_HIGHBANK is not set +CONFIG_SATA_SVW=m +CONFIG_SCHED_AUTOGROUP=y +CONFIG_SCSI_SPI_ATTRS=m +CONFIG_SCSI_SRP_ATTRS=m +CONFIG_SENSORS_SCH56XX_COMMON=m +CONFIG_SERIAL_8250_PCI=m +# CONFIG_SERIAL_FSL_LPUART is not set +CONFIG_SERIAL_OF_PLATFORM=y +CONFIG_SERIO_ALTERA_PS2=m +CONFIG_SERIO_APBPS2=m +CONFIG_SERIO_ARC_PS2=m +# CONFIG_SERIO_I8042 is not set +CONFIG_SERIO_OLPC_APSP=m +CONFIG_SERIO_PARKBD=m +CONFIG_SERIO_PCIPS2=m +CONFIG_SERIO_PS2MULT=m +CONFIG_SERIO_RAW=m +CONFIG_SMC91X=y +# CONFIG_SOUND is not set +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPI_PXA2XX_PCI=m +CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y +# CONFIG_SQUASHFS_DECOMP_SINGLE is not set +# CONFIG_SQUASHFS_FILE_CACHE is not set +CONFIG_SQUASHFS_FILE_DIRECT=y +CONFIG_SRAM=y +CONFIG_STAGING=y +CONFIG_STANDALONE=y +CONFIG_SUNRPC_DEBUG=y +CONFIG_SWIOTLB=y +CONFIG_SYSCTL_SYSCALL=y +CONFIG_SYS_HYPERVISOR=y +CONFIG_TEST_KSTRTOX=m +CONFIG_TEST_STRING_HELPERS=m +CONFIG_TICK_CPU_ACCOUNTING=y +CONFIG_TIGON3=m +CONFIG_TIMER_STATS=y +# CONFIG_TRANSPARENT_HUGEPAGE is not set +# CONFIG_TWL4030_CORE is not set +CONFIG_TWL6040_CORE=y +CONFIG_UIO_AEC=m +CONFIG_UIO_CIF=m +CONFIG_UIO_DMEM_GENIRQ=m +CONFIG_UIO_MF624=m +CONFIG_UIO_NETX=m +CONFIG_UIO_PCI_GENERIC=m +CONFIG_UIO_PDRV_GENIRQ=m +CONFIG_UIO_SERCOS3=m +CONFIG_UNUSED_SYMBOLS=y +# CONFIG_USB_SUPPORT is not set +CONFIG_VGASTATE=m +# CONFIG_VGA_CONSOLE is not set +CONFIG_VIRTIO=y +CONFIG_VIRTIO_BALLOON=y +CONFIG_VIRTIO_BLK=y +CONFIG_VIRTIO_CONSOLE=y +CONFIG_VIRTIO_MMIO=y +CONFIG_VIRTIO_NET=y +CONFIG_VIRTIO_PCI=m +CONFIG_WIL6210=m +CONFIG_WIMAX_GDM72XX_SDIO=y +CONFIG_XEN=y +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +CONFIG_XZ_DEC_IA64=y +CONFIG_XZ_DEC_SPARC=y +CONFIG_XZ_DEC_TEST=m +CONFIG_XZ_DEC_X86=y +CONFIG_ZONE_DMA32=y +CONFIG_ZONE_DMA_FLAG=0 --- linux-3.13.0.orig/debian.master/config/arm64/config.flavour.generic +++ linux-3.13.0/debian.master/config/arm64/config.flavour.generic @@ -0,0 +1,3 @@ +# +# Config options for config.flavour.generic automatically generated by splitconfig.pl +# --- linux-3.13.0.orig/debian.master/config/armhf/config.common.armhf +++ linux-3.13.0/debian.master/config/armhf/config.common.armhf @@ -0,0 +1,286 @@ +# +# Config options for config.common.armhf automatically generated by splitconfig.pl +# +CONFIG_AIC79XX_RESET_DELAY_MS=5000 +# CONFIG_APM_EMULATION is not set +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set +# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set +CONFIG_ASYNC_TX_DMA=y +# CONFIG_ATA_NONSTANDARD is not set +CONFIG_ATA_PIIX=y +# CONFIG_ATOMIC64_SELFTEST is not set +CONFIG_BATTERY_TWL4030_MADC=m +CONFIG_BCH=y +CONFIG_CMDLINE="" +CONFIG_COMEDI_ISA_DRIVERS=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +# CONFIG_CPU_BIG_ENDIAN is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set +CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y +CONFIG_CRASH_DUMP=y +# CONFIG_DEBUG_MEMORY_INIT is not set +# CONFIG_DEFAULT_CFQ is not set +CONFIG_DEFAULT_DEADLINE=y +CONFIG_DEFAULT_IOSCHED="deadline" +CONFIG_DEFAULT_MMAP_MIN_ADDR=32768 +CONFIG_EXYNOS_VIDEO=y +# CONFIG_EZX_PCAP is not set +CONFIG_FB_ATY128=m +# CONFIG_FB_BOOT_VESA_SUPPORT is not set +# CONFIG_FB_MACMODES is not set +CONFIG_FB_RADEON=m +CONFIG_FB_SYS_COPYAREA=y +CONFIG_FB_SYS_FILLRECT=y +CONFIG_FB_SYS_FOPS=m +CONFIG_FB_SYS_IMAGEBLIT=y +CONFIG_FB_UDL=m +CONFIG_FB_VOODOO1=m +# CONFIG_FMAN_P1023 is not set +CONFIG_FMAN_P3040_P4080_P5020=y +CONFIG_FONTS=y +CONFIG_FRAME_WARN=1024 +CONFIG_FSL_FMAN=y +# CONFIG_FUNCTION_TRACER is not set +CONFIG_GPIO_TWL4030=y +# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set +# CONFIG_HAVE_AOUT is not set +# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set +CONFIG_HAVE_GENERIC_DMA_COHERENT=y +# CONFIG_HW_RANDOM_ATMEL is not set +CONFIG_HZ=250 +# CONFIG_HZ_100 is not set +# CONFIG_HZ_1000 is not set +CONFIG_HZ_250=y +CONFIG_I2C_ALGOBIT=m +# CONFIG_IDE is not set +# CONFIG_IKCONFIG is not set +CONFIG_IMA=y +CONFIG_INFINIBAND_AMSO1100=m +CONFIG_IOMMU_SUPPORT=y +# CONFIG_IRQ_DOMAIN_DEBUG is not set +# CONFIG_IRQ_FORCED_THREADING_DEFAULT is not set +# CONFIG_KSM is not set +CONFIG_KVM=y +CONFIG_LEDS_TRIGGER_HEARTBEAT=y +# CONFIG_LIBERTAS_MESH is not set +# CONFIG_LIS3L02DQ is not set +CONFIG_LOG_BUF_SHIFT=17 +CONFIG_MFD_TMIO=y +CONFIG_MII=m +CONFIG_MMC_BLOCK=y +CONFIG_MMC_SDHCI=y +CONFIG_MMC_SDHCI_PLTFM=y +CONFIG_MTD=y +CONFIG_MTD_BLKDEVS=y +CONFIG_MTD_BLOCK=y +CONFIG_MTD_CMDLINE_PARTS=y +CONFIG_MTD_NAND=y +CONFIG_MTD_NAND_BCH=y +CONFIG_MTD_NAND_ECC=y +CONFIG_MTD_NAND_IDS=y +CONFIG_MTD_OF_PARTS=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NET_TULIP=y +CONFIG_NOP_USB_XCEIV=y +# CONFIG_NO_HZ_FULL is not set +CONFIG_NO_HZ_IDLE=y +CONFIG_NR_CPUS=4 +CONFIG_NVRAM=m +CONFIG_PAGE_OFFSET=0xC0000000 +CONFIG_PARIDE_EPATC8=y +CONFIG_PATA_SIS=y +# CONFIG_PCCARD is not set +CONFIG_PCIEPORTBUS=y +CONFIG_PERCPU_TEST=m +CONFIG_PERSISTENT_KEYRINGS=y +CONFIG_PHY_EXYNOS_DP_VIDEO=m +CONFIG_PMIC_ADP5520=y +CONFIG_PMIC_DA903X=y +CONFIG_PM_DEBUG=y +CONFIG_PM_RUNTIME=y +CONFIG_PM_WAKELOCKS=y +CONFIG_PPS=y +CONFIG_PPS_CLIENT_GPIO=m +CONFIG_PPS_CLIENT_LDISC=m +CONFIG_PPS_CLIENT_PARPORT=m +# CONFIG_PREEMPT is not set +# CONFIG_PREEMPT_RCU is not set +CONFIG_PREEMPT_VOLUNTARY=y +CONFIG_PROBE_EVENTS=y +CONFIG_PSTORE_CONSOLE=y +CONFIG_PSTORE_RAM=y +CONFIG_PTP_1588_CLOCK=y +CONFIG_RBTREE_TEST=m +CONFIG_RCU_CPU_STALL_TIMEOUT=60 +CONFIG_RCU_FANOUT=32 +CONFIG_RCU_FAST_NO_HZ=y +# CONFIG_RCU_NOCB_CPU is not set +# CONFIG_RCU_USER_QS is not set +CONFIG_REED_SOLOMON=y +CONFIG_REGULATOR_FIXED_VOLTAGE=y +# CONFIG_REGULATOR_S2MPS11 is not set +CONFIG_REISERFS_FS=m +CONFIG_RFKILL=y +# CONFIG_RT2800USB_UNKNOWN is not set +CONFIG_RT2X00_LIB_DEBUGFS=y +CONFIG_RTC_DRV_CMOS=m +CONFIG_RTC_DRV_DS3232=m +CONFIG_RTC_DRV_PL031=y +CONFIG_SAMSUNG_USB2PHY=m +CONFIG_SAMSUNG_USB3PHY=m +CONFIG_SATA_HIGHBANK=y +CONFIG_SATA_SVW=m +CONFIG_SCHED_AUTOGROUP=y +# CONFIG_SCHED_SMT is not set +CONFIG_SCSI_SPI_ATTRS=m +CONFIG_SCSI_SRP_ATTRS=m +CONFIG_SENSORS_SCH56XX_COMMON=m +CONFIG_SERIAL_8250_PCI=y +CONFIG_SERIAL_OF_PLATFORM=y +CONFIG_SERIO_ALTERA_PS2=m +CONFIG_SERIO_APBPS2=m +CONFIG_SERIO_ARC_PS2=m +CONFIG_SERIO_OLPC_APSP=m +CONFIG_SERIO_PARKBD=m +CONFIG_SERIO_PCIPS2=m +CONFIG_SERIO_PS2MULT=m +CONFIG_SERIO_RAW=m +CONFIG_SMC91X=m +CONFIG_SND=y +CONFIG_SND_COMPRESS_OFFLOAD=y +# CONFIG_SND_OPL4_LIB_SEQ is not set +CONFIG_SND_PCM=y +# CONFIG_SND_SBAWE_SEQ is not set +CONFIG_SND_SOC=y +CONFIG_SND_SOC_FSL_SSI=y +CONFIG_SND_SOC_I2C_AND_SPI=y +CONFIG_SND_TIMER=y +CONFIG_SOUND=y +CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y +# CONFIG_SQUASHFS_DECOMP_SINGLE is not set +# CONFIG_SQUASHFS_FILE_CACHE is not set +CONFIG_SQUASHFS_FILE_DIRECT=y +CONFIG_SRAM=y +# CONFIG_STACK_TRACER is not set +CONFIG_STAGING=y +CONFIG_STANDALONE=y +CONFIG_SUNRPC_DEBUG=y +CONFIG_SWIOTLB=y +CONFIG_SYSCTL_SYSCALL=y +# CONFIG_SYS_HYPERVISOR is not set +CONFIG_TEST_KSTRTOX=m +CONFIG_TEST_STRING_HELPERS=m +# CONFIG_TICK_CPU_ACCOUNTING is not set +CONFIG_TIGON3=m +CONFIG_TIMER_STATS=y +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_TWL4030_CORE=y +CONFIG_TWL6040_CORE=y +CONFIG_UIO_AEC=m +CONFIG_UIO_CIF=m +CONFIG_UIO_DMEM_GENIRQ=m +CONFIG_UIO_MF624=m +CONFIG_UIO_NETX=m +CONFIG_UIO_PCI_GENERIC=m +CONFIG_UIO_PDRV_GENIRQ=m +CONFIG_UIO_SERCOS3=m +CONFIG_UNUSED_SYMBOLS=y +CONFIG_USB_ADUTUX=m +CONFIG_USB_ANNOUNCE_NEW_DEVICES=y +CONFIG_USB_APPLEDISPLAY=m +CONFIG_USB_C67X00_HCD=m +CONFIG_USB_CATC=m +CONFIG_USB_CHIPIDEA=y +CONFIG_USB_CYPRESS_CY7C63=m +CONFIG_USB_CYTHERM=m +CONFIG_USB_DWC3=m +CONFIG_USB_DYNAMIC_MINORS=y +# CONFIG_USB_EHCI_HCD_PLATFORM is not set +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_EHSET_TEST_FIXTURE=m +CONFIG_USB_EMI26=m +CONFIG_USB_EMI62=m +CONFIG_USB_EZUSB_FX2=m +CONFIG_USB_FOTG210_HCD=m +# CONFIG_USB_FSL_USB2 is not set +CONFIG_USB_FTDI_ELAN=m +CONFIG_USB_FUSBH200_HCD=m +CONFIG_USB_GADGET=y +CONFIG_USB_G_MULTI=m +# CONFIG_USB_HCD_BCMA is not set +# CONFIG_USB_HCD_SSB is not set +CONFIG_USB_HSIC_USB3503=m +CONFIG_USB_IDMOUSE=m +CONFIG_USB_IOWARRIOR=m +CONFIG_USB_IPHETH=m +CONFIG_USB_ISIGHTFW=m +CONFIG_USB_ISP116X_HCD=m +CONFIG_USB_ISP1301=m +CONFIG_USB_ISP1362_HCD=m +CONFIG_USB_ISP1760_HCD=m +CONFIG_USB_KAWETH=m +CONFIG_USB_LCD=m +CONFIG_USB_LD=m +CONFIG_USB_LED=m +CONFIG_USB_LEGOTOWER=m +CONFIG_USB_MDC800=m +CONFIG_USB_MICROTEK=m +# CONFIG_USB_MUSB_DSPS is not set +CONFIG_USB_MUSB_HDRC=y +# CONFIG_USB_MUSB_TUSB6010 is not set +# CONFIG_USB_OHCI_HCD_PLATFORM is not set +# CONFIG_USB_OTG is not set +CONFIG_USB_OXU210HP_HCD=m +CONFIG_USB_PEGASUS=m +CONFIG_USB_PRINTER=m +CONFIG_USB_R8A66597_HCD=m +CONFIG_USB_RCAR_PHY=m +CONFIG_USB_RIO500=m +CONFIG_USB_RTL8150=m +CONFIG_USB_RTL8152=m +CONFIG_USB_SERIAL=m +CONFIG_USB_SEVSEG=m +CONFIG_USB_SISUSBVGA=m +CONFIG_USB_SL811_HCD=m +CONFIG_USB_STORAGE=y +CONFIG_USB_STORAGE_ALAUDA=m +CONFIG_USB_STORAGE_CYPRESS_ATACB=m +CONFIG_USB_STORAGE_DATAFAB=m +CONFIG_USB_STORAGE_ENE_UB6250=m +CONFIG_USB_STORAGE_FREECOM=m +CONFIG_USB_STORAGE_ISD200=m +CONFIG_USB_STORAGE_JUMPSHOT=m +CONFIG_USB_STORAGE_KARMA=m +CONFIG_USB_STORAGE_ONETOUCH=m +CONFIG_USB_STORAGE_REALTEK=m +CONFIG_USB_STORAGE_SDDR09=m +CONFIG_USB_STORAGE_SDDR55=m +CONFIG_USB_STORAGE_USBAT=m +CONFIG_USB_SUPPORT=y +CONFIG_USB_TEST=m +CONFIG_USB_TMC=m +CONFIG_USB_TRANCEVIBRATOR=m +CONFIG_USB_UHCI_HCD=y +CONFIG_USB_USS720=m +CONFIG_USB_WUSB_CBAF=m +CONFIG_USB_YUREX=m +# CONFIG_VFIO_IOMMU_TYPE1 is not set +CONFIG_VIRTIO=y +CONFIG_VIRTIO_BALLOON=y +CONFIG_VIRTIO_BLK=y +CONFIG_VIRTIO_CONSOLE=y +CONFIG_VIRTIO_MMIO=y +CONFIG_VIRTIO_NET=y +CONFIG_VIRTIO_PCI=y +CONFIG_VIRT_CPU_ACCOUNTING_GEN=y +# CONFIG_WIL6210 is not set +# CONFIG_WIMAX_GDM72XX_SDIO is not set +# CONFIG_XEN is not set +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +CONFIG_XZ_DEC_IA64=y +CONFIG_XZ_DEC_SPARC=y +CONFIG_XZ_DEC_TEST=m +CONFIG_XZ_DEC_X86=y +CONFIG_ZONE_DMA_FLAG=1 --- linux-3.13.0.orig/debian.master/config/armhf/config.flavour.generic +++ linux-3.13.0/debian.master/config/armhf/config.flavour.generic @@ -0,0 +1,38 @@ +# +# Config options for config.flavour.generic automatically generated by splitconfig.pl +# +CONFIG_AC97_BUS=y +CONFIG_AHCI_IMX=y +CONFIG_ARCH_MXC=y +CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED=y +CONFIG_ARCH_NR_GPIO=1024 +CONFIG_ARCH_OMAP3=y +CONFIG_ARCH_OMAP4=y +# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set +CONFIG_ARCH_TEGRA=y +CONFIG_ARM_ATAG_DTB_COMPAT=y +# CONFIG_ARM_LPAE is not set +# CONFIG_COMPACTION is not set +# CONFIG_CPU_IDLE is not set +CONFIG_DRM_TILCDC=m +CONFIG_FB_BACKLIGHT=y +CONFIG_FB_DDC=m +CONFIG_FB_SVGALIB=m +CONFIG_FORCE_MAX_ZONEORDER=12 +CONFIG_GENERIC_PHY=y +CONFIG_GPIO_GENERIC=y +CONFIG_GPIO_TWL6040=y +# CONFIG_HUGETLB_PAGE is not set +CONFIG_MFD_TI_AM335X_TSCADC=m +CONFIG_MTD_SM_COMMON=m +# CONFIG_MUSB_PIO_ONLY is not set +CONFIG_PCI_SYSCALL=y +# CONFIG_PHYS_ADDR_T_64BIT is not set +CONFIG_SATA_AHCI_PLATFORM=y +CONFIG_SERIAL_FSL_LPUART=m +CONFIG_SND_EMU10K1_SEQ=m +CONFIG_SND_OPL3_LIB_SEQ=m +CONFIG_SOC_AM33XX=y +CONFIG_SPI_PXA2XX_PCI=m +CONFIG_USB_DWC3_OMAP=m +CONFIG_VGASTATE=m --- linux-3.13.0.orig/debian.master/config/armhf/config.flavour.generic-lpae +++ linux-3.13.0/debian.master/config/armhf/config.flavour.generic-lpae @@ -0,0 +1,38 @@ +# +# Config options for config.flavour.generic-lpae automatically generated by splitconfig.pl +# +CONFIG_AC97_BUS=m +# CONFIG_AHCI_IMX is not set +# CONFIG_ARCH_MXC is not set +# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set +CONFIG_ARCH_NR_GPIO=0 +# CONFIG_ARCH_OMAP3 is not set +# CONFIG_ARCH_OMAP4 is not set +CONFIG_ARCH_PHYS_ADDR_T_64BIT=y +# CONFIG_ARCH_TEGRA is not set +# CONFIG_ARM_ATAG_DTB_COMPAT is not set +CONFIG_ARM_LPAE=y +CONFIG_COMPACTION=y +CONFIG_CPU_IDLE=y +# CONFIG_DRM_TILCDC is not set +# CONFIG_FB_BACKLIGHT is not set +# CONFIG_FB_DDC is not set +# CONFIG_FB_SVGALIB is not set +CONFIG_FORCE_MAX_ZONEORDER=11 +CONFIG_GENERIC_PHY=m +CONFIG_GPIO_GENERIC=m +CONFIG_GPIO_TWL6040=m +CONFIG_HUGETLB_PAGE=y +# CONFIG_MFD_TI_AM335X_TSCADC is not set +# CONFIG_MTD_SM_COMMON is not set +CONFIG_MUSB_PIO_ONLY=y +# CONFIG_PCI_SYSCALL is not set +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_SATA_AHCI_PLATFORM=m +# CONFIG_SERIAL_FSL_LPUART is not set +# CONFIG_SND_EMU10K1_SEQ is not set +# CONFIG_SND_OPL3_LIB_SEQ is not set +# CONFIG_SOC_AM33XX is not set +# CONFIG_SPI_PXA2XX_PCI is not set +# CONFIG_USB_DWC3_OMAP is not set +# CONFIG_VGASTATE is not set --- linux-3.13.0.orig/debian.master/config/config.common.ports +++ linux-3.13.0/debian.master/config/config.common.ports @@ -0,0 +1,3 @@ +# +# Common config options automatically generated by splitconfig.pl +# --- linux-3.13.0.orig/debian.master/config/config.common.ubuntu +++ linux-3.13.0/debian.master/config/config.common.ubuntu @@ -0,0 +1,7486 @@ +# +# Common config options automatically generated by splitconfig.pl +# +CONFIG_32BIT=y +CONFIG_3C515=m +# CONFIG_40x is not set +# CONFIG_44x is not set +CONFIG_60XX_WDT=m +CONFIG_6PACK=m +CONFIG_6xx=y +CONFIG_8139CP=m +CONFIG_8139TOO=m +CONFIG_8139TOO_8129=y +CONFIG_8139TOO_PIO=y +# CONFIG_8139TOO_TUNE_TWISTER is not set +# CONFIG_8139_OLD_RX_RESET is not set +CONFIG_88EU_AP_MODE=y +CONFIG_88EU_P2P=y +CONFIG_9P_FS=m +# CONFIG_9P_FSCACHE is not set +CONFIG_9P_FS_POSIX_ACL=y +CONFIG_9P_FS_SECURITY=y +CONFIG_AB3100_CORE=y +CONFIG_AB3100_OTP=m +CONFIG_ABX500_CORE=y +# CONFIG_ACCESSIBILITY is not set +CONFIG_ACENIC=m +# CONFIG_ACENIC_OMIT_TIGON_I is not set +CONFIG_ACERHDF=m +CONFIG_ACER_WMI=m +CONFIG_ACORN_PARTITION=y +# CONFIG_ACORN_PARTITION_ADFS is not set +# CONFIG_ACORN_PARTITION_CUMANA is not set +# CONFIG_ACORN_PARTITION_EESOX is not set +CONFIG_ACORN_PARTITION_ICS=y +# CONFIG_ACORN_PARTITION_POWERTEC is not set +CONFIG_ACORN_PARTITION_RISCIX=y +CONFIG_ACPI=y +CONFIG_ACPI_AC=y +CONFIG_ACPI_APEI=y +CONFIG_ACPI_APEI_EINJ=m +# CONFIG_ACPI_APEI_ERST_DEBUG is not set +CONFIG_ACPI_APEI_GHES=y +CONFIG_ACPI_APEI_MEMORY_FAILURE=y +CONFIG_ACPI_APEI_PCIEAER=y +CONFIG_ACPI_BATTERY=y +CONFIG_ACPI_BGRT=y +CONFIG_ACPI_BUTTON=y +CONFIG_ACPI_CMPC=m +CONFIG_ACPI_CONTAINER=y +# CONFIG_ACPI_CUSTOM_DSDT is not set +CONFIG_ACPI_CUSTOM_DSDT_FILE="" +# CONFIG_ACPI_CUSTOM_METHOD is not set +# CONFIG_ACPI_DEBUG is not set +CONFIG_ACPI_DOCK=y +CONFIG_ACPI_EC_DEBUGFS=m +CONFIG_ACPI_EXTLOG=m +CONFIG_ACPI_FAN=y +CONFIG_ACPI_HED=y +CONFIG_ACPI_HOTPLUG_CPU=y +CONFIG_ACPI_HOTPLUG_MEMORY=y +# CONFIG_ACPI_INITRD_TABLE_OVERRIDE is not set +CONFIG_ACPI_IPMI=m +CONFIG_ACPI_NUMA=y +CONFIG_ACPI_PCI_SLOT=y +CONFIG_ACPI_PROCESSOR=y +CONFIG_ACPI_PROCESSOR_AGGREGATOR=m +# CONFIG_ACPI_PROCFS is not set +CONFIG_ACPI_QUICKSTART=m +CONFIG_ACPI_SBS=m +CONFIG_ACPI_SLEEP=y +CONFIG_ACPI_THERMAL=y +CONFIG_ACPI_TOSHIBA=m +CONFIG_ACPI_VIDEO=m +CONFIG_ACPI_WMI=m +CONFIG_ACQUIRE_WDT=m +CONFIG_ACT200L_DONGLE=m +CONFIG_ACTISYS_DONGLE=m +CONFIG_AD2S1200=m +CONFIG_AD2S1210=m +CONFIG_AD2S90=m +CONFIG_AD5064=m +CONFIG_AD525X_DPOT=m +CONFIG_AD525X_DPOT_I2C=m +CONFIG_AD525X_DPOT_SPI=m +CONFIG_AD5360=m +CONFIG_AD5380=m +CONFIG_AD5421=m +CONFIG_AD5446=m +CONFIG_AD5449=m +CONFIG_AD5504=m +CONFIG_AD5624R_SPI=m +CONFIG_AD5686=m +CONFIG_AD5755=m +CONFIG_AD5764=m +CONFIG_AD5791=m +CONFIG_AD5930=m +CONFIG_AD5933=m +CONFIG_AD7150=m +CONFIG_AD7152=m +CONFIG_AD7192=m +CONFIG_AD7266=m +CONFIG_AD7280=m +CONFIG_AD7291=m +CONFIG_AD7298=m +CONFIG_AD7303=m +CONFIG_AD7476=m +CONFIG_AD7606=m +CONFIG_AD7606_IFACE_PARALLEL=m +CONFIG_AD7606_IFACE_SPI=m +CONFIG_AD7746=m +CONFIG_AD7780=m +CONFIG_AD7791=m +CONFIG_AD7793=m +CONFIG_AD7816=m +CONFIG_AD7887=m +CONFIG_AD7923=m +CONFIG_AD799X=m +CONFIG_AD799X_RING_BUFFER=y +CONFIG_AD8366=m +CONFIG_AD9523=m +CONFIG_AD9832=m +CONFIG_AD9834=m +CONFIG_AD9850=m +CONFIG_AD9852=m +CONFIG_AD9910=m +CONFIG_AD9951=m +CONFIG_ADAPTEC_STARFIRE=m +CONFIG_ADB=y +CONFIG_ADB_CUDA=y +CONFIG_ADB_MACIO=y +CONFIG_ADB_PMU=y +CONFIG_ADB_PMU_LED=y +CONFIG_ADE7753=m +CONFIG_ADE7754=m +CONFIG_ADE7758=m +CONFIG_ADE7759=m +CONFIG_ADE7854=m +CONFIG_ADE7854_I2C=m +CONFIG_ADE7854_SPI=m +CONFIG_ADF4350=m +CONFIG_ADFS_FS=m +# CONFIG_ADFS_FS_RW is not set +CONFIG_ADIS16060=m +CONFIG_ADIS16080=m +CONFIG_ADIS16130=m +CONFIG_ADIS16136=m +CONFIG_ADIS16201=m +CONFIG_ADIS16203=m +CONFIG_ADIS16204=m +CONFIG_ADIS16209=m +CONFIG_ADIS16220=m +CONFIG_ADIS16240=m +CONFIG_ADIS16260=m +CONFIG_ADIS16400=m +CONFIG_ADIS16480=m +CONFIG_ADJD_S311=m +CONFIG_ADM8211=m +CONFIG_ADT7316=m +CONFIG_ADT7316_I2C=m +CONFIG_ADT7316_SPI=m +# CONFIG_ADVANCED_OPTIONS is not set +CONFIG_ADVANTECH_WDT=m +CONFIG_ADXRS450=m +CONFIG_AD_SIGMA_DELTA=m +CONFIG_AEABI=y +CONFIG_AFFS_FS=m +# CONFIG_AFS_DEBUG is not set +CONFIG_AFS_FS=m +# CONFIG_AFS_FSCACHE is not set +CONFIG_AF_RXRPC=m +# CONFIG_AF_RXRPC_DEBUG is not set +CONFIG_AGP=y +CONFIG_AGP_ALI=m +CONFIG_AGP_AMD=y +CONFIG_AGP_AMD64=y +CONFIG_AGP_ATI=m +CONFIG_AGP_EFFICEON=m +CONFIG_AGP_INTEL=y +CONFIG_AGP_NVIDIA=y +CONFIG_AGP_SIS=m +CONFIG_AGP_SWORKS=m +CONFIG_AGP_UNINORTH=m +CONFIG_AGP_VIA=y +CONFIG_AHCI_XGENE=m +CONFIG_AIC79XX_CMDS_PER_DEVICE=32 +# CONFIG_AIC79XX_DEBUG_ENABLE is not set +CONFIG_AIC79XX_DEBUG_MASK=0 +CONFIG_AIC79XX_REG_PRETTY_PRINT=y +CONFIG_AIC7XXX_CMDS_PER_DEVICE=8 +# CONFIG_AIC7XXX_DEBUG_ENABLE is not set +CONFIG_AIC7XXX_DEBUG_MASK=0 +CONFIG_AIC7XXX_REG_PRETTY_PRINT=y +CONFIG_AIC7XXX_RESET_DELAY_MS=15000 +# CONFIG_AIC94XX_DEBUG is not set +CONFIG_AIO=y +CONFIG_AIRO=m +CONFIG_AIRO_CS=m +CONFIG_AIX_PARTITION=y +CONFIG_AK8975=m +CONFIG_ALIGNMENT_TRAP=y +CONFIG_ALIM1535_WDT=m +CONFIG_ALIM7101_WDT=m +CONFIG_ALIX=y +CONFIG_ALI_FIR=m +CONFIG_ALTERA_STAPL=m +CONFIG_ALTIVEC=y +CONFIG_ALX=m +CONFIG_AM335X_CONTROL_USB=m +CONFIG_AM335X_PHY_USB=m +CONFIG_AMBA_PL08X=y +CONFIG_AMD8111_ETH=m +CONFIG_AMD_IOMMU=y +CONFIG_AMD_IOMMU_STATS=y +CONFIG_AMD_IOMMU_V2=m +CONFIG_AMD_NB=y +CONFIG_AMD_NUMA=y +CONFIG_AMD_PHY=y +CONFIG_AMIGA_PARTITION=y +CONFIG_AMILO_RFKILL=m +# CONFIG_ANDROID is not set +CONFIG_ANON_INODES=y +CONFIG_ANSLCD=m +CONFIG_APB_TIMER=y +CONFIG_APDS9300=m +CONFIG_APDS9802ALS=m +CONFIG_APM=m +# CONFIG_APM_ALLOW_INTS is not set +# CONFIG_APM_CPU_IDLE is not set +# CONFIG_APM_DISPLAY_BLANK is not set +# CONFIG_APM_DO_ENABLE is not set +# CONFIG_APM_IGNORE_USER_SUSPEND is not set +CONFIG_APM_POWER=m +CONFIG_APPLE_AIRPORT=m +CONFIG_APPLE_GMUX=m +CONFIG_APPLICOM=m +CONFIG_AR5523=m +# CONFIG_ARCH_AT91 is not set +# CONFIG_ARCH_BCM is not set +CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y +CONFIG_ARCH_CLOCKSOURCE_DATA=y +# CONFIG_ARCH_CLPS711X is not set +CONFIG_ARCH_CPU_PROBE_RELEASE=y +# CONFIG_ARCH_DAVINCI is not set +CONFIG_ARCH_DISCARD_MEMBLOCK=y +# CONFIG_ARCH_DOVE is not set +# CONFIG_ARCH_EBSA110 is not set +CONFIG_ARCH_EMEV2=y +CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y +CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y +CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y +# CONFIG_ARCH_EP93XX is not set +# CONFIG_ARCH_EXYNOS is not set +CONFIG_ARCH_FLATMEM_ENABLE=y +# CONFIG_ARCH_FOOTBRIDGE is not set +# CONFIG_ARCH_GEMINI is not set +CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y +CONFIG_ARCH_HAS_BANDGAP=y +CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y +CONFIG_ARCH_HAS_CPUFREQ=y +CONFIG_ARCH_HAS_CPU_AUTOPROBE=y +CONFIG_ARCH_HAS_CPU_RELAX=y +CONFIG_ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS=y +CONFIG_ARCH_HAS_HOLES_MEMORYMODEL=y +CONFIG_ARCH_HAS_ILOG2_U32=y +CONFIG_ARCH_HAS_ILOG2_U64=y +CONFIG_ARCH_HAS_OPP=y +CONFIG_ARCH_HAS_RESET_CONTROLLER=y +CONFIG_ARCH_HAS_TICK_BROADCAST=y +CONFIG_ARCH_HAS_WALK_MEMORY=y +CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y +CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y +CONFIG_ARCH_HIBERNATION_HEADER=y +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_ARCH_HIGHBANK=y +# CONFIG_ARCH_INTEGRATOR is not set +# CONFIG_ARCH_IOP13XX is not set +# CONFIG_ARCH_IOP32X is not set +# CONFIG_ARCH_IOP33X is not set +# CONFIG_ARCH_IXP4XX is not set +# CONFIG_ARCH_KEYSTONE is not set +# CONFIG_ARCH_KIRKWOOD is not set +# CONFIG_ARCH_KS8695 is not set +# CONFIG_ARCH_LPC32XX is not set +CONFIG_ARCH_MAY_HAVE_PC_FDC=y +CONFIG_ARCH_MEMORY_PROBE=y +CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y +# CONFIG_ARCH_MMP is not set +# CONFIG_ARCH_MSM is not set +CONFIG_ARCH_MULTIPLATFORM=y +# CONFIG_ARCH_MULTI_CPU_AUTO is not set +# CONFIG_ARCH_MULTI_V6 is not set +CONFIG_ARCH_MULTI_V6_V7=y +CONFIG_ARCH_MULTI_V7=y +# CONFIG_ARCH_MV78XX0 is not set +# CONFIG_ARCH_MVEBU is not set +# CONFIG_ARCH_NETX is not set +CONFIG_ARCH_OMAP=y +# CONFIG_ARCH_OMAP1 is not set +CONFIG_ARCH_OMAP2PLUS=y +CONFIG_ARCH_OMAP2PLUS_TYPICAL=y +# CONFIG_ARCH_ORION5X is not set +CONFIG_ARCH_PROC_KCORE_TEXT=y +# CONFIG_ARCH_PXA is not set +# CONFIG_ARCH_REALVIEW is not set +CONFIG_ARCH_REQUIRE_GPIOLIB=y +# CONFIG_ARCH_ROCKCHIP is not set +# CONFIG_ARCH_RPC is not set +# CONFIG_ARCH_S3C24XX is not set +# CONFIG_ARCH_S3C64XX is not set +# CONFIG_ARCH_S5P64X0 is not set +# CONFIG_ARCH_S5PC100 is not set +# CONFIG_ARCH_S5PV210 is not set +# CONFIG_ARCH_SA1100 is not set +# CONFIG_ARCH_SHMOBILE is not set +CONFIG_ARCH_SHMOBILE_MULTI=y +# CONFIG_ARCH_SIRF is not set +# CONFIG_ARCH_SOCFPGA is not set +CONFIG_ARCH_SPARSEMEM_ENABLE=y +# CONFIG_ARCH_STI is not set +# CONFIG_ARCH_SUNXI is not set +CONFIG_ARCH_SUPPORTS_BIG_ENDIAN=y +CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +CONFIG_ARCH_SUPPORTS_INT128=y +CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y +CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y +CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y +CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_ARCH_SUSPEND_POSSIBLE=y +CONFIG_ARCH_TEGRA_114_SOC=y +CONFIG_ARCH_TEGRA_124_SOC=y +CONFIG_ARCH_TEGRA_2x_SOC=y +CONFIG_ARCH_TEGRA_3x_SOC=y +# CONFIG_ARCH_U8500 is not set +CONFIG_ARCH_USES_NUMA_PROT_NONE=y +CONFIG_ARCH_USES_PG_UNCACHED=y +CONFIG_ARCH_USE_BUILTIN_BSWAP=y +CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y +# CONFIG_ARCH_VERSATILE is not set +CONFIG_ARCH_VEXPRESS=y +CONFIG_ARCH_VEXPRESS_CA9X4=y +CONFIG_ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA=y +CONFIG_ARCH_VEXPRESS_DCSCB=y +CONFIG_ARCH_VEXPRESS_SPC=y +CONFIG_ARCH_VEXPRESS_TC2_PM=y +CONFIG_ARCH_VIRT=y +# CONFIG_ARCH_W90X900 is not set +CONFIG_ARCH_WANTS_FREEZER_CONTROL=y +CONFIG_ARCH_WANTS_PROT_NUMA_PROT_NONE=y +CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y +CONFIG_ARCH_WANT_FRAME_POINTERS=y +CONFIG_ARCH_WANT_GENERAL_HUGETLB=y +CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y +CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y +CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y +CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y +# CONFIG_ARCH_WM8850 is not set +CONFIG_ARCH_XGENE=y +# CONFIG_ARCH_ZYNQ is not set +CONFIG_ARCNET=m +CONFIG_ARCNET_1051=m +CONFIG_ARCNET_1201=m +CONFIG_ARCNET_CAP=m +CONFIG_ARCNET_COM20020=m +CONFIG_ARCNET_COM20020_CS=m +CONFIG_ARCNET_COM20020_ISA=m +CONFIG_ARCNET_COM20020_PCI=m +CONFIG_ARCNET_COM90xx=m +CONFIG_ARCNET_COM90xxIO=m +CONFIG_ARCNET_RAW=m +CONFIG_ARCNET_RIM_I=m +CONFIG_ARC_EMAC=m +CONFIG_ARM=y +CONFIG_ARM64=y +# CONFIG_ARM64_64K_PAGES is not set +CONFIG_ARM_AMBA=y +CONFIG_ARM_APPENDED_DTB=y +CONFIG_ARM_ARCH_TIMER=y +CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y +CONFIG_ARM_AT91_ETHER=m +CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEND=y +# CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_FROM_BOOTLOADER is not set +CONFIG_ARM_BIG_LITTLE_CPUFREQ=m +CONFIG_ARM_BIG_LITTLE_CPUIDLE=y +CONFIG_ARM_CCI=y +CONFIG_ARM_CHARLCD=y +CONFIG_ARM_CPU_SUSPEND=y +CONFIG_ARM_CPU_TOPOLOGY=y +CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8 +CONFIG_ARM_DMA_MEM_BUFFERABLE=y +CONFIG_ARM_DMA_USE_IOMMU=y +CONFIG_ARM_DT_BL_CPUFREQ=m +CONFIG_ARM_ERRATA_430973=y +CONFIG_ARM_ERRATA_643719=y +CONFIG_ARM_ERRATA_720789=y +CONFIG_ARM_ERRATA_754322=y +CONFIG_ARM_ERRATA_754327=y +CONFIG_ARM_ERRATA_764369=y +CONFIG_ARM_ERRATA_773022=y +CONFIG_ARM_ERRATA_775420=y +CONFIG_ARM_ERRATA_798181=y +CONFIG_ARM_GIC=y +CONFIG_ARM_HAS_SG_CHAIN=y +CONFIG_ARM_HIGHBANK_CPUFREQ=y +CONFIG_ARM_HIGHBANK_CPUIDLE=y +CONFIG_ARM_IMX6Q_CPUFREQ=m +# CONFIG_ARM_KIRKWOOD_CPUFREQ is not set +CONFIG_ARM_KPROBES_TEST=m +CONFIG_ARM_L1_CACHE_SHIFT=6 +CONFIG_ARM_L1_CACHE_SHIFT_6=y +CONFIG_ARM_NR_BANKS=8 +CONFIG_ARM_OMAP2PLUS_CPUFREQ=y +CONFIG_ARM_PATCH_PHYS_VIRT=y +CONFIG_ARM_PSCI=y +# CONFIG_ARM_SMMU is not set +CONFIG_ARM_SP805_WATCHDOG=m +CONFIG_ARM_TEGRA_CPUFREQ=y +CONFIG_ARM_THUMB=y +# CONFIG_ARM_THUMBEE is not set +CONFIG_ARM_TIMER_SP804=y +CONFIG_ARM_UNWIND=y +CONFIG_ARM_VEXPRESS_SPC_CPUFREQ=m +CONFIG_ARM_VIRT_EXT=y +CONFIG_ASN1=y +CONFIG_ASSOCIATIVE_ARRAY=y +CONFIG_ASUS_LAPTOP=m +CONFIG_ASUS_NB_WMI=m +CONFIG_ASUS_WMI=m +CONFIG_ASYMMETRIC_KEY_TYPE=y +CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y +CONFIG_ASYNC_CORE=m +CONFIG_ASYNC_MEMCPY=m +CONFIG_ASYNC_PQ=m +CONFIG_ASYNC_RAID6_RECOV=m +CONFIG_ASYNC_RAID6_TEST=m +CONFIG_ASYNC_TX_ENABLE_CHANNEL_SWITCH=y +CONFIG_ASYNC_XOR=m +CONFIG_AT76C50X_USB=m +CONFIG_AT803X_PHY=y +CONFIG_ATA=y +CONFIG_ATAGS=y +CONFIG_ATAGS_PROC=y +CONFIG_ATALK=m +CONFIG_ATARI_PARTITION=y +CONFIG_ATA_ACPI=y +CONFIG_ATA_BMDMA=y +CONFIG_ATA_GENERIC=y +CONFIG_ATA_OVER_ETH=m +CONFIG_ATA_SFF=y +CONFIG_ATA_VERBOSE_ERROR=y +CONFIG_ATH10K=m +# CONFIG_ATH10K_DEBUG is not set +CONFIG_ATH10K_DEBUGFS=y +CONFIG_ATH10K_PCI=m +CONFIG_ATH10K_TRACING=y +CONFIG_ATH5K=m +# CONFIG_ATH5K_DEBUG is not set +CONFIG_ATH5K_PCI=y +# CONFIG_ATH5K_TRACER is not set +CONFIG_ATH6KL=m +# CONFIG_ATH6KL_DEBUG is not set +CONFIG_ATH6KL_SDIO=m +# CONFIG_ATH6KL_TRACING is not set +CONFIG_ATH6KL_USB=m +CONFIG_ATH9K=m +CONFIG_ATH9K_AHB=y +CONFIG_ATH9K_BTCOEX_SUPPORT=y +CONFIG_ATH9K_COMMON=m +CONFIG_ATH9K_DEBUGFS=y +CONFIG_ATH9K_HTC=m +CONFIG_ATH9K_HTC_DEBUGFS=y +CONFIG_ATH9K_HW=m +CONFIG_ATH9K_LEGACY_RATE_CONTROL=y +CONFIG_ATH9K_PCI=y +CONFIG_ATH9K_RFKILL=y +CONFIG_ATH_CARDS=m +CONFIG_ATH_COMMON=m +# CONFIG_ATH_DEBUG is not set +CONFIG_ATL1=m +CONFIG_ATL1C=m +CONFIG_ATL1E=m +CONFIG_ATL2=m +CONFIG_ATM=m +CONFIG_ATMEL=m +CONFIG_ATMEL_PWM=m +CONFIG_ATMEL_SSC=m +CONFIG_ATM_AMBASSADOR=m +# CONFIG_ATM_AMBASSADOR_DEBUG is not set +CONFIG_ATM_BR2684=m +# CONFIG_ATM_BR2684_IPFILTER is not set +CONFIG_ATM_CLIP=m +# CONFIG_ATM_CLIP_NO_ICMP is not set +CONFIG_ATM_DRIVERS=y +CONFIG_ATM_DUMMY=m +CONFIG_ATM_ENI=m +# CONFIG_ATM_ENI_DEBUG is not set +# CONFIG_ATM_ENI_TUNE_BURST is not set +CONFIG_ATM_FIRESTREAM=m +CONFIG_ATM_FORE200E=m +CONFIG_ATM_FORE200E_DEBUG=0 +CONFIG_ATM_FORE200E_TX_RETRY=16 +# CONFIG_ATM_FORE200E_USE_TASKLET is not set +CONFIG_ATM_HE=m +CONFIG_ATM_HE_USE_SUNI=y +CONFIG_ATM_HORIZON=m +# CONFIG_ATM_HORIZON_DEBUG is not set +CONFIG_ATM_IA=m +# CONFIG_ATM_IA_DEBUG is not set +CONFIG_ATM_IDT77252=m +# CONFIG_ATM_IDT77252_DEBUG is not set +# CONFIG_ATM_IDT77252_RCV_ALL is not set +CONFIG_ATM_IDT77252_USE_SUNI=y +CONFIG_ATM_LANAI=m +CONFIG_ATM_LANE=m +CONFIG_ATM_MPOA=m +CONFIG_ATM_NICSTAR=m +# CONFIG_ATM_NICSTAR_USE_IDT77105 is not set +# CONFIG_ATM_NICSTAR_USE_SUNI is not set +CONFIG_ATM_SOLOS=m +CONFIG_ATM_TCP=m +CONFIG_ATM_ZATM=m +# CONFIG_ATM_ZATM_DEBUG is not set +CONFIG_ATP=m +CONFIG_AUDIT=y +CONFIG_AUDITSYSCALL=y +CONFIG_AUDIT_GENERIC=y +CONFIG_AUDIT_TREE=y +CONFIG_AUDIT_WATCH=y +CONFIG_AUFS_BDEV_LOOP=y +# CONFIG_AUFS_BRANCH_MAX_1023 is not set +CONFIG_AUFS_BRANCH_MAX_127=y +# CONFIG_AUFS_BRANCH_MAX_32767 is not set +# CONFIG_AUFS_BRANCH_MAX_511 is not set +CONFIG_AUFS_BR_FUSE=y +CONFIG_AUFS_BR_HFSPLUS=y +CONFIG_AUFS_BR_RAMFS=y +# CONFIG_AUFS_DEBUG is not set +CONFIG_AUFS_EXPORT=y +CONFIG_AUFS_FS=m +# CONFIG_AUFS_HNOTIFY is not set +CONFIG_AUFS_INO_T_64=y +CONFIG_AUFS_POLL=y +# CONFIG_AUFS_RDU is not set +CONFIG_AUFS_SBILIST=y +# CONFIG_AUFS_SHWH is not set +# CONFIG_AUFS_SP_IATTR is not set +CONFIG_AUTOFS4_FS=m +CONFIG_AUTO_ZRELADDR=y +CONFIG_AUXDISPLAY=y +CONFIG_AVERAGE=y +CONFIG_AX25=m +CONFIG_AX25_DAMA_SLAVE=y +CONFIG_AX88796=m +# CONFIG_AX88796_93CX6 is not set +CONFIG_B43=m +CONFIG_B43LEGACY=m +# CONFIG_B43LEGACY_DEBUG is not set +CONFIG_B43LEGACY_DMA=y +CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y +# CONFIG_B43LEGACY_DMA_MODE is not set +CONFIG_B43LEGACY_HWRNG=y +CONFIG_B43LEGACY_LEDS=y +CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y +CONFIG_B43LEGACY_PCI_AUTOSELECT=y +CONFIG_B43LEGACY_PIO=y +# CONFIG_B43LEGACY_PIO_MODE is not set +CONFIG_B43_BCMA=y +CONFIG_B43_BCMA_PIO=y +# CONFIG_B43_DEBUG is not set +CONFIG_B43_HWRNG=y +CONFIG_B43_LEDS=y +CONFIG_B43_PCICORE_AUTOSELECT=y +CONFIG_B43_PCI_AUTOSELECT=y +# CONFIG_B43_PCMCIA is not set +CONFIG_B43_PHY_HT=y +CONFIG_B43_PHY_LP=y +CONFIG_B43_PHY_N=y +CONFIG_B43_PIO=y +# CONFIG_B43_SDIO is not set +CONFIG_B43_SSB=y +CONFIG_B44=m +CONFIG_B44_PCI=y +CONFIG_B44_PCICORE_AUTOSELECT=y +CONFIG_B44_PCI_AUTOSELECT=y +CONFIG_BACKLIGHT_88PM860X=m +CONFIG_BACKLIGHT_AAT2870=m +CONFIG_BACKLIGHT_ADP5520=m +CONFIG_BACKLIGHT_ADP8860=m +CONFIG_BACKLIGHT_ADP8870=m +CONFIG_BACKLIGHT_APPLE=m +CONFIG_BACKLIGHT_AS3711=m +CONFIG_BACKLIGHT_ATMEL_PWM=m +CONFIG_BACKLIGHT_BD6107=m +CONFIG_BACKLIGHT_CARILLO_RANCH=m +CONFIG_BACKLIGHT_CLASS_DEVICE=y +CONFIG_BACKLIGHT_DA903X=m +CONFIG_BACKLIGHT_DA9052=m +CONFIG_BACKLIGHT_GENERIC=m +CONFIG_BACKLIGHT_GPIO=m +CONFIG_BACKLIGHT_LCD_SUPPORT=y +CONFIG_BACKLIGHT_LM3533=m +CONFIG_BACKLIGHT_LM3630A=m +CONFIG_BACKLIGHT_LM3639=m +CONFIG_BACKLIGHT_LP855X=m +CONFIG_BACKLIGHT_LP8788=m +CONFIG_BACKLIGHT_LV5207LP=m +CONFIG_BACKLIGHT_MAX8925=m +CONFIG_BACKLIGHT_PANDORA=m +CONFIG_BACKLIGHT_PCF50633=m +CONFIG_BACKLIGHT_PWM=m +CONFIG_BACKLIGHT_SAHARA=m +CONFIG_BACKLIGHT_TPS65217=m +CONFIG_BACKLIGHT_WM831X=m +# CONFIG_BACKTRACE_SELF_TEST is not set +CONFIG_BALLOON_COMPACTION=y +CONFIG_BASE_FULL=y +CONFIG_BASE_SMALL=0 +CONFIG_BATMAN_ADV=m +CONFIG_BATMAN_ADV_BLA=y +CONFIG_BATMAN_ADV_DAT=y +# CONFIG_BATMAN_ADV_DEBUG is not set +CONFIG_BATMAN_ADV_NC=y +CONFIG_BATTERY_88PM860X=m +CONFIG_BATTERY_BQ27X00_I2C=y +CONFIG_BATTERY_BQ27X00_PLATFORM=y +CONFIG_BATTERY_BQ27x00=m +CONFIG_BATTERY_DA9030=m +CONFIG_BATTERY_DA9052=m +CONFIG_BATTERY_DS2760=m +CONFIG_BATTERY_DS2780=m +CONFIG_BATTERY_DS2781=m +CONFIG_BATTERY_DS2782=m +CONFIG_BATTERY_INTEL_MID=m +CONFIG_BATTERY_MAX17040=m +CONFIG_BATTERY_MAX17042=m +CONFIG_BATTERY_PMU=m +CONFIG_BATTERY_RX51=m +CONFIG_BATTERY_SBS=m +CONFIG_BAYCOM_EPP=m +CONFIG_BAYCOM_PAR=m +CONFIG_BAYCOM_SER_FDX=m +CONFIG_BAYCOM_SER_HDX=m +CONFIG_BCACHE=m +# CONFIG_BCACHE_CLOSURES_DEBUG is not set +# CONFIG_BCACHE_DEBUG is not set +CONFIG_BCH_CONST_M=14 +CONFIG_BCH_CONST_PARAMS=y +CONFIG_BCH_CONST_T=4 +CONFIG_BCM87XX_PHY=y +CONFIG_BCMA=m +CONFIG_BCMA_BLOCKIO=y +# CONFIG_BCMA_DEBUG is not set +CONFIG_BCMA_DRIVER_GMAC_CMN=y +CONFIG_BCMA_DRIVER_GPIO=y +CONFIG_BCMA_HOST_PCI=y +CONFIG_BCMA_HOST_PCI_POSSIBLE=y +CONFIG_BCMA_HOST_SOC=y +CONFIG_BCMA_POSSIBLE=y +CONFIG_BCM_WIMAX=m +# CONFIG_BDI_SWITCH is not set +CONFIG_BE2ISCSI=m +CONFIG_BE2NET=m +# CONFIG_BEFS_DEBUG is not set +CONFIG_BEFS_FS=m +CONFIG_BFS_FS=m +CONFIG_BIG_KEYS=y +CONFIG_BIG_LITTLE=y +CONFIG_BINARY_PRINTF=y +CONFIG_BINFMT_AOUT=m +CONFIG_BINFMT_ELF=y +CONFIG_BINFMT_MISC=m +CONFIG_BINFMT_SCRIPT=y +CONFIG_BITREVERSE=y +CONFIG_BLK_CGROUP=y +CONFIG_BLK_CMDLINE_PARSER=y +CONFIG_BLK_CPQ_CISS_DA=m +CONFIG_BLK_DEV=y +CONFIG_BLK_DEV_3W_XXXX_RAID=m +# CONFIG_BLK_DEV_AEC62XX is not set +# CONFIG_BLK_DEV_ALI15X3 is not set +CONFIG_BLK_DEV_AMD74XX=y +CONFIG_BLK_DEV_BSG=y +CONFIG_BLK_DEV_BSGLIB=y +# CONFIG_BLK_DEV_CMD64X is not set +# CONFIG_BLK_DEV_COW_COMMON is not set +CONFIG_BLK_DEV_CRYPTOLOOP=m +# CONFIG_BLK_DEV_CS5520 is not set +# CONFIG_BLK_DEV_CS5530 is not set +CONFIG_BLK_DEV_DAC960=m +CONFIG_BLK_DEV_DM=y +CONFIG_BLK_DEV_DM_BUILTIN=y +CONFIG_BLK_DEV_DRBD=m +CONFIG_BLK_DEV_FD=m +CONFIG_BLK_DEV_GENERIC=y +# CONFIG_BLK_DEV_HD is not set +# CONFIG_BLK_DEV_HPT366 is not set +CONFIG_BLK_DEV_IDECD=y +CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y +CONFIG_BLK_DEV_IDEDMA=y +CONFIG_BLK_DEV_IDEDMA_PCI=y +CONFIG_BLK_DEV_IDEDMA_SFF=y +CONFIG_BLK_DEV_IDEPCI=y +# CONFIG_BLK_DEV_IDETAPE is not set +# CONFIG_BLK_DEV_IDE_SATA is not set +CONFIG_BLK_DEV_INITRD=y +CONFIG_BLK_DEV_INTEGRITY=y +CONFIG_BLK_DEV_IO_TRACE=y +# CONFIG_BLK_DEV_IT8172 is not set +# CONFIG_BLK_DEV_IT8213 is not set +# CONFIG_BLK_DEV_IT821X is not set +# CONFIG_BLK_DEV_JMICRON is not set +CONFIG_BLK_DEV_LOOP=y +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 +CONFIG_BLK_DEV_MD=y +CONFIG_BLK_DEV_NBD=m +# CONFIG_BLK_DEV_NS87415 is not set +CONFIG_BLK_DEV_NULL_BLK=m +CONFIG_BLK_DEV_NVME=m +# CONFIG_BLK_DEV_OFFBOARD is not set +# CONFIG_BLK_DEV_OPTI621 is not set +CONFIG_BLK_DEV_OSD=m +CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m +# CONFIG_BLK_DEV_PDC202XX_NEW is not set +# CONFIG_BLK_DEV_PDC202XX_OLD is not set +# CONFIG_BLK_DEV_PIIX is not set +# CONFIG_BLK_DEV_PLATFORM is not set +CONFIG_BLK_DEV_RAM=y +CONFIG_BLK_DEV_RAM_COUNT=16 +CONFIG_BLK_DEV_RAM_SIZE=65536 +CONFIG_BLK_DEV_RBD=m +CONFIG_BLK_DEV_RSXX=m +# CONFIG_BLK_DEV_SC1200 is not set +CONFIG_BLK_DEV_SD=y +# CONFIG_BLK_DEV_SIIMAGE is not set +CONFIG_BLK_DEV_SKD=m +# CONFIG_BLK_DEV_SL82C105 is not set +# CONFIG_BLK_DEV_SLC90E66 is not set +CONFIG_BLK_DEV_SR=y +# CONFIG_BLK_DEV_SR_VENDOR is not set +# CONFIG_BLK_DEV_SVWKS is not set +CONFIG_BLK_DEV_SX8=m +# CONFIG_BLK_DEV_TC86C001 is not set +CONFIG_BLK_DEV_THROTTLING=y +# CONFIG_BLK_DEV_TRIFLEX is not set +# CONFIG_BLK_DEV_TRM290 is not set +CONFIG_BLK_DEV_UMEM=m +# CONFIG_BLK_DEV_VIA82CXXX is not set +# CONFIG_BLK_DEV_XIP is not set +CONFIG_BLOCK=y +CONFIG_BLOCK_COMPAT=y +CONFIG_BL_SWITCHER=y +CONFIG_BL_SWITCHER_DUMMY_IF=m +CONFIG_BMA180=m +CONFIG_BMAC=m +CONFIG_BMP085=y +CONFIG_BMP085_I2C=m +CONFIG_BMP085_SPI=m +CONFIG_BNA=m +CONFIG_BNX2=m +CONFIG_BNX2X=m +CONFIG_BNX2X_SRIOV=y +CONFIG_BOARD_TPCI200=m +CONFIG_BONDING=m +CONFIG_BOOKE=y +CONFIG_BOOKE_WDT=m +CONFIG_BOOKE_WDT_DEFAULT_TIMEOUT=38 +# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 +# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set +# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set +CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 +# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 +# CONFIG_BOOTX_TEXT is not set +CONFIG_BOOT_PRINTK_DELAY=y +CONFIG_BOUNCE=y +CONFIG_BPCTL=m +CONFIG_BPF_JIT=y +CONFIG_BPQETHER=m +CONFIG_BQL=y +CONFIG_BRANCH_PROFILE_NONE=y +# CONFIG_BRCMDBG is not set +CONFIG_BRCMFMAC=m +CONFIG_BRCMFMAC_SDIO=y +CONFIG_BRCMFMAC_USB=y +CONFIG_BRCMSMAC=m +CONFIG_BRCMUTIL=m +CONFIG_BRCM_TRACING=y +CONFIG_BRIDGE=m +CONFIG_BRIDGE_EBT_802_3=m +CONFIG_BRIDGE_EBT_AMONG=m +CONFIG_BRIDGE_EBT_ARP=m +CONFIG_BRIDGE_EBT_ARPREPLY=m +CONFIG_BRIDGE_EBT_BROUTE=m +CONFIG_BRIDGE_EBT_DNAT=m +CONFIG_BRIDGE_EBT_IP=m +CONFIG_BRIDGE_EBT_IP6=m +CONFIG_BRIDGE_EBT_LIMIT=m +CONFIG_BRIDGE_EBT_LOG=m +CONFIG_BRIDGE_EBT_MARK=m +CONFIG_BRIDGE_EBT_MARK_T=m +CONFIG_BRIDGE_EBT_NFLOG=m +CONFIG_BRIDGE_EBT_PKTTYPE=m +CONFIG_BRIDGE_EBT_REDIRECT=m +CONFIG_BRIDGE_EBT_SNAT=m +CONFIG_BRIDGE_EBT_STP=m +CONFIG_BRIDGE_EBT_T_FILTER=m +CONFIG_BRIDGE_EBT_T_NAT=m +# CONFIG_BRIDGE_EBT_ULOG is not set +CONFIG_BRIDGE_EBT_VLAN=m +CONFIG_BRIDGE_IGMP_SNOOPING=y +CONFIG_BRIDGE_NETFILTER=y +CONFIG_BRIDGE_NF_EBTABLES=m +CONFIG_BRIDGE_VLAN_FILTERING=y +CONFIG_BROADCOM_PHY=y +CONFIG_BSD_DISKLABEL=y +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_BSD_PROCESS_ACCT_V3=y +CONFIG_BT=m +CONFIG_BTREE=y +# CONFIG_BTRFS_ASSERT is not set +# CONFIG_BTRFS_DEBUG is not set +CONFIG_BTRFS_FS=m +# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set +CONFIG_BTRFS_FS_POSIX_ACL=y +# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set +CONFIG_BT_ATH3K=m +CONFIG_BT_BNEP=m +CONFIG_BT_BNEP_MC_FILTER=y +CONFIG_BT_BNEP_PROTO_FILTER=y +CONFIG_BT_CMTP=m +CONFIG_BT_HCIBCM203X=m +CONFIG_BT_HCIBFUSB=m +CONFIG_BT_HCIBLUECARD=m +CONFIG_BT_HCIBPA10X=m +CONFIG_BT_HCIBT3C=m +CONFIG_BT_HCIBTSDIO=m +CONFIG_BT_HCIBTUART=m +CONFIG_BT_HCIBTUSB=m +CONFIG_BT_HCIDTL1=m +CONFIG_BT_HCIUART=m +CONFIG_BT_HCIUART_3WIRE=y +CONFIG_BT_HCIUART_ATH3K=y +CONFIG_BT_HCIUART_BCSP=y +CONFIG_BT_HCIUART_H4=y +CONFIG_BT_HCIUART_LL=y +CONFIG_BT_HCIVHCI=m +CONFIG_BT_HIDP=m +CONFIG_BT_MRVL=m +CONFIG_BT_MRVL_SDIO=m +CONFIG_BT_RFCOMM=m +CONFIG_BT_RFCOMM_TTY=y +CONFIG_BT_WILINK=m +CONFIG_BUG=y +CONFIG_BUILDTIME_EXTABLE_SORT=y +CONFIG_C101=m +CONFIG_C293_PCIE=y +CONFIG_C2PORT=m +CONFIG_C2PORT_DURAMAR_2150=m +CONFIG_CACHEFILES=m +# CONFIG_CACHEFILES_DEBUG is not set +# CONFIG_CACHEFILES_HISTOGRAM is not set +CONFIG_CACHE_L2X0=y +CONFIG_CACHE_PL310=y +CONFIG_CAIF=m +# CONFIG_CAIF_DEBUG is not set +CONFIG_CAIF_HSI=m +CONFIG_CAIF_NETDEV=m +CONFIG_CAIF_SPI_SLAVE=m +# CONFIG_CAIF_SPI_SYNC is not set +CONFIG_CAIF_TTY=m +CONFIG_CAIF_USB=m +CONFIG_CAIF_VIRTIO=m +CONFIG_CALGARY_IOMMU=y +CONFIG_CALGARY_IOMMU_ENABLED_BY_DEFAULT=y +CONFIG_CAN=m +CONFIG_CAN_8DEV_USB=m +CONFIG_CAN_AT91=m +CONFIG_CAN_BCM=m +CONFIG_CAN_CALC_BITTIMING=y +CONFIG_CAN_CC770=m +CONFIG_CAN_CC770_ISA=m +CONFIG_CAN_CC770_PLATFORM=m +CONFIG_CAN_C_CAN=m +CONFIG_CAN_C_CAN_PCI=m +CONFIG_CAN_C_CAN_PLATFORM=m +# CONFIG_CAN_DEBUG_DEVICES is not set +CONFIG_CAN_DEV=m +CONFIG_CAN_EMS_PCI=m +CONFIG_CAN_EMS_PCMCIA=m +CONFIG_CAN_EMS_USB=m +CONFIG_CAN_ESD_USB2=m +CONFIG_CAN_FLEXCAN=m +CONFIG_CAN_GRCAN=m +CONFIG_CAN_GW=m +CONFIG_CAN_JANZ_ICAN3=m +CONFIG_CAN_KVASER_PCI=m +CONFIG_CAN_KVASER_USB=m +CONFIG_CAN_LEDS=y +CONFIG_CAN_MCP251X=m +CONFIG_CAN_MSCAN=m +CONFIG_CAN_PEAK_PCI=m +CONFIG_CAN_PEAK_PCIEC=y +CONFIG_CAN_PEAK_PCMCIA=m +CONFIG_CAN_PEAK_USB=m +CONFIG_CAN_PLX_PCI=m +CONFIG_CAN_RAW=m +CONFIG_CAN_SJA1000=m +CONFIG_CAN_SJA1000_ISA=m +CONFIG_CAN_SJA1000_OF_PLATFORM=m +CONFIG_CAN_SJA1000_PLATFORM=m +CONFIG_CAN_SLCAN=m +CONFIG_CAN_SOFTING=m +CONFIG_CAN_SOFTING_CS=m +CONFIG_CAN_TI_HECC=m +CONFIG_CAN_TSCAN1=m +CONFIG_CAN_VCAN=m +CONFIG_CAPI_AVM=y +CONFIG_CAPI_EICON=y +CONFIG_CAPI_TRACE=y +CONFIG_CARDBUS=y +CONFIG_CARDMAN_4000=m +CONFIG_CARDMAN_4040=m +CONFIG_CARL9170=m +# CONFIG_CARL9170_DEBUGFS is not set +CONFIG_CARL9170_HWRNG=y +CONFIG_CARL9170_LEDS=y +CONFIG_CARL9170_WPC=y +# CONFIG_CARMINE_DRAM_CUSTOM is not set +CONFIG_CASSINI=m +CONFIG_CB710_CORE=m +# CONFIG_CB710_DEBUG is not set +CONFIG_CB710_DEBUG_ASSUMPTIONS=y +CONFIG_CBE_CPUFREQ_SPU_GOVERNOR=m +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +CONFIG_CC_STACKPROTECTOR=y +CONFIG_CDROM_PKTCDVD=m +CONFIG_CDROM_PKTCDVD_BUFFERS=8 +# CONFIG_CDROM_PKTCDVD_WCACHE is not set +CONFIG_CED1401=m +# CONFIG_CELL_CPU is not set +CONFIG_CEPH_FS=m +CONFIG_CEPH_FSCACHE=y +CONFIG_CEPH_LIB=m +# CONFIG_CEPH_LIB_PRETTYDEBUG is not set +CONFIG_CEPH_LIB_USE_DNS_RESOLVER=y +CONFIG_CFAG12864B=m +CONFIG_CFAG12864B_RATE=20 +CONFIG_CFG80211=m +# CONFIG_CFG80211_CERTIFICATION_ONUS is not set +CONFIG_CFG80211_DEBUGFS=y +CONFIG_CFG80211_DEFAULT_PS=y +# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set +# CONFIG_CFG80211_INTERNAL_REGDB is not set +# CONFIG_CFG80211_REG_DEBUG is not set +CONFIG_CFG80211_WEXT=y +CONFIG_CFQ_GROUP_IOSCHED=y +CONFIG_CFS_BANDWIDTH=y +CONFIG_CGROUPS=y +CONFIG_CGROUP_CPUACCT=y +# CONFIG_CGROUP_DEBUG is not set +CONFIG_CGROUP_DEVICE=y +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_HUGETLB=y +CONFIG_CGROUP_PERF=y +CONFIG_CGROUP_SCHED=y +CONFIG_CHARGER_88PM860X=m +CONFIG_CHARGER_BQ2415X=m +CONFIG_CHARGER_BQ24190=m +CONFIG_CHARGER_BQ24735=m +CONFIG_CHARGER_GPIO=m +CONFIG_CHARGER_ISP1704=m +CONFIG_CHARGER_LP8727=m +CONFIG_CHARGER_LP8788=m +CONFIG_CHARGER_MANAGER=y +CONFIG_CHARGER_MAX8903=m +CONFIG_CHARGER_MAX8997=m +CONFIG_CHARGER_MAX8998=m +CONFIG_CHARGER_PCF50633=m +CONFIG_CHARGER_SMB347=m +CONFIG_CHARGER_TPS65090=m +CONFIG_CHARGER_TWL4030=m +CONFIG_CHECKPOINT_RESTORE=y +CONFIG_CHECK_SIGNATURE=y +CONFIG_CHELSIO_T1=m +CONFIG_CHELSIO_T1_1G=y +CONFIG_CHELSIO_T3=m +CONFIG_CHELSIO_T4=m +CONFIG_CHELSIO_T4VF=m +CONFIG_CHROMEOS_LAPTOP=m +CONFIG_CHROME_PLATFORMS=y +CONFIG_CHR_DEV_OSST=m +CONFIG_CHR_DEV_SCH=m +CONFIG_CHR_DEV_SG=y +CONFIG_CHR_DEV_ST=m +CONFIG_CICADA_PHY=y +CONFIG_CIFS=m +CONFIG_CIFS_ACL=y +CONFIG_CIFS_DEBUG=y +# CONFIG_CIFS_DEBUG2 is not set +CONFIG_CIFS_DFS_UPCALL=y +CONFIG_CIFS_FSCACHE=y +CONFIG_CIFS_POSIX=y +CONFIG_CIFS_SMB2=y +CONFIG_CIFS_STATS=y +# CONFIG_CIFS_STATS2 is not set +CONFIG_CIFS_UPCALL=y +CONFIG_CIFS_WEAK_PW_HASH=y +CONFIG_CIFS_XATTR=y +CONFIG_CISS_SCSI_TAPE=y +CONFIG_CLEANCACHE=y +CONFIG_CLKBLD_I8253=y +CONFIG_CLKDEV_LOOKUP=y +CONFIG_CLKEVT_I8253=y +CONFIG_CLKSRC_I8253=y +CONFIG_CLKSRC_MMIO=y +CONFIG_CLKSRC_OF=y +CONFIG_CLK_PPC_CORENET=y +CONFIG_CLK_TWL6040=m +CONFIG_CLOCKSOURCE_WATCHDOG=y +CONFIG_CLONE_BACKWARDS=y +CONFIG_CLS_U32_MARK=y +# CONFIG_CLS_U32_PERF is not set +CONFIG_CLZ_TAB=y +CONFIG_CM36651=m +CONFIG_CMA=y +CONFIG_CMA_ALIGNMENT=8 +CONFIG_CMA_AREAS=7 +# CONFIG_CMA_DEBUG is not set +CONFIG_CMA_SIZE_MBYTES=16 +# CONFIG_CMA_SIZE_SEL_MAX is not set +CONFIG_CMA_SIZE_SEL_MBYTES=y +# CONFIG_CMA_SIZE_SEL_MIN is not set +# CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set +# CONFIG_CMDLINE_BOOL is not set +# CONFIG_CMDLINE_FORCE is not set +CONFIG_CMDLINE_PARTITION=y +CONFIG_CMM=y +CONFIG_CNIC=m +CONFIG_CODA_FS=m +CONFIG_COMEDI=m +CONFIG_COMEDI_8255=m +CONFIG_COMEDI_8255_PCI=m +CONFIG_COMEDI_ADDI_APCI_035=m +CONFIG_COMEDI_ADDI_APCI_1032=m +CONFIG_COMEDI_ADDI_APCI_1500=m +CONFIG_COMEDI_ADDI_APCI_1516=m +CONFIG_COMEDI_ADDI_APCI_1564=m +CONFIG_COMEDI_ADDI_APCI_16XX=m +CONFIG_COMEDI_ADDI_APCI_2032=m +CONFIG_COMEDI_ADDI_APCI_2200=m +CONFIG_COMEDI_ADDI_APCI_3120=m +CONFIG_COMEDI_ADDI_APCI_3501=m +CONFIG_COMEDI_ADDI_APCI_3XXX=m +CONFIG_COMEDI_ADDI_WATCHDOG=m +CONFIG_COMEDI_ADL_PCI6208=m +CONFIG_COMEDI_ADL_PCI7X3X=m +CONFIG_COMEDI_ADL_PCI8164=m +CONFIG_COMEDI_ADL_PCI9111=m +CONFIG_COMEDI_ADL_PCI9118=m +CONFIG_COMEDI_ADQ12B=m +CONFIG_COMEDI_ADV_PCI1710=m +CONFIG_COMEDI_ADV_PCI1723=m +CONFIG_COMEDI_ADV_PCI1724=m +CONFIG_COMEDI_ADV_PCI_DIO=m +CONFIG_COMEDI_AIO_AIO12_8=m +CONFIG_COMEDI_AIO_IIRO_16=m +CONFIG_COMEDI_AMPLC_DIO200=m +CONFIG_COMEDI_AMPLC_DIO200_ISA=m +CONFIG_COMEDI_AMPLC_DIO200_PCI=m +CONFIG_COMEDI_AMPLC_PC236=m +CONFIG_COMEDI_AMPLC_PC236_ISA=m +CONFIG_COMEDI_AMPLC_PC236_PCI=m +CONFIG_COMEDI_AMPLC_PC263_ISA=m +CONFIG_COMEDI_AMPLC_PC263_PCI=m +CONFIG_COMEDI_AMPLC_PCI224=m +CONFIG_COMEDI_AMPLC_PCI230=m +CONFIG_COMEDI_BOND=m +CONFIG_COMEDI_C6XDIGIO=m +CONFIG_COMEDI_CB_DAS16_CS=m +CONFIG_COMEDI_CB_PCIDAS=m +CONFIG_COMEDI_CB_PCIDAS64=m +CONFIG_COMEDI_CB_PCIDDA=m +CONFIG_COMEDI_CB_PCIMDAS=m +CONFIG_COMEDI_CB_PCIMDDA=m +CONFIG_COMEDI_CONTEC_PCI_DIO=m +CONFIG_COMEDI_DAQBOARD2000=m +CONFIG_COMEDI_DAS08=m +CONFIG_COMEDI_DAS08_CS=m +CONFIG_COMEDI_DAS08_ISA=m +CONFIG_COMEDI_DAS08_PCI=m +CONFIG_COMEDI_DAS16=m +CONFIG_COMEDI_DAS16M1=m +CONFIG_COMEDI_DAS1800=m +CONFIG_COMEDI_DAS6402=m +CONFIG_COMEDI_DAS800=m +# CONFIG_COMEDI_DEBUG is not set +CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB=20480 +CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB=2048 +CONFIG_COMEDI_DMM32AT=m +CONFIG_COMEDI_DT2801=m +CONFIG_COMEDI_DT2811=m +CONFIG_COMEDI_DT2814=m +CONFIG_COMEDI_DT2815=m +CONFIG_COMEDI_DT2817=m +CONFIG_COMEDI_DT282X=m +CONFIG_COMEDI_DT3000=m +CONFIG_COMEDI_DT9812=m +CONFIG_COMEDI_DYNA_PCI10XX=m +CONFIG_COMEDI_FC=m +CONFIG_COMEDI_FL512=m +CONFIG_COMEDI_GSC_HPDI=m +CONFIG_COMEDI_ICP_MULTI=m +CONFIG_COMEDI_II_PCI20KC=m +CONFIG_COMEDI_JR3_PCI=m +CONFIG_COMEDI_KCOMEDILIB=m +CONFIG_COMEDI_KE_COUNTER=m +CONFIG_COMEDI_ME4000=m +CONFIG_COMEDI_ME_DAQ=m +CONFIG_COMEDI_MISC_DRIVERS=y +CONFIG_COMEDI_MITE=m +CONFIG_COMEDI_MPC624=m +CONFIG_COMEDI_MULTIQ3=m +CONFIG_COMEDI_NI_6527=m +CONFIG_COMEDI_NI_65XX=m +CONFIG_COMEDI_NI_660X=m +CONFIG_COMEDI_NI_670X=m +CONFIG_COMEDI_NI_ATMIO=m +CONFIG_COMEDI_NI_ATMIO16D=m +CONFIG_COMEDI_NI_AT_A2150=m +CONFIG_COMEDI_NI_AT_AO=m +CONFIG_COMEDI_NI_DAQ_700_CS=m +CONFIG_COMEDI_NI_DAQ_DIO24_CS=m +CONFIG_COMEDI_NI_LABPC=m +CONFIG_COMEDI_NI_LABPC_CS=m +CONFIG_COMEDI_NI_LABPC_ISA=m +CONFIG_COMEDI_NI_LABPC_ISADMA=m +CONFIG_COMEDI_NI_LABPC_PCI=m +CONFIG_COMEDI_NI_MIO_CS=m +CONFIG_COMEDI_NI_PCIDIO=m +CONFIG_COMEDI_NI_PCIMIO=m +CONFIG_COMEDI_NI_TIO=m +CONFIG_COMEDI_NI_TIOCMD=m +CONFIG_COMEDI_PARPORT=m +CONFIG_COMEDI_PCI_DRIVERS=y +CONFIG_COMEDI_PCL711=m +CONFIG_COMEDI_PCL724=m +CONFIG_COMEDI_PCL726=m +CONFIG_COMEDI_PCL730=m +CONFIG_COMEDI_PCL812=m +CONFIG_COMEDI_PCL816=m +CONFIG_COMEDI_PCL818=m +CONFIG_COMEDI_PCM3724=m +CONFIG_COMEDI_PCMAD=m +CONFIG_COMEDI_PCMCIA_DRIVERS=y +CONFIG_COMEDI_PCMDA12=m +CONFIG_COMEDI_PCMMIO=m +CONFIG_COMEDI_PCMUIO=m +CONFIG_COMEDI_POC=m +CONFIG_COMEDI_QUATECH_DAQP_CS=m +CONFIG_COMEDI_RTD520=m +CONFIG_COMEDI_RTI800=m +CONFIG_COMEDI_RTI802=m +CONFIG_COMEDI_S526=m +CONFIG_COMEDI_S626=m +CONFIG_COMEDI_SERIAL2002=m +CONFIG_COMEDI_SKEL=m +CONFIG_COMEDI_SSV_DNP=m +CONFIG_COMEDI_TEST=m +CONFIG_COMEDI_UNIOXX5=m +CONFIG_COMEDI_USBDUX=m +CONFIG_COMEDI_USBDUXFAST=m +CONFIG_COMEDI_USBDUXSIGMA=m +CONFIG_COMEDI_USB_DRIVERS=y +CONFIG_COMEDI_VMK80XX=m +CONFIG_COMMON_CLK=y +# CONFIG_COMMON_CLK_DEBUG is not set +CONFIG_COMMON_CLK_MAX77686=m +CONFIG_COMMON_CLK_S2MPS11=m +CONFIG_COMMON_CLK_SI5351=m +CONFIG_COMMON_CLK_VERSATILE=y +CONFIG_COMMON_CLK_WM831X=m +CONFIG_COMMON_CLK_XGENE=y +CONFIG_COMPAL_LAPTOP=m +CONFIG_COMPAT=y +CONFIG_COMPAT_BINFMT_ELF=y +# CONFIG_COMPAT_BRK is not set +CONFIG_COMPAT_FOR_U64_ALIGNMENT=y +CONFIG_COMPAT_NETLINK_MESSAGES=y +CONFIG_COMPAT_OLD_SIGACTION=y +# CONFIG_COMPAT_VDSO is not set +# CONFIG_COMPILE_TEST is not set +CONFIG_CONFIGFS_FS=m +CONFIG_CONNECTOR=y +CONFIG_CONSOLE_POLL=y +CONFIG_CONSOLE_TRANSLATIONS=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_CONTEXT_TRACKING=y +CONFIG_CONTEXT_TRACKING_FORCE=y +CONFIG_COPS=m +CONFIG_COPS_DAYNA=y +CONFIG_COPS_TANGENT=y +CONFIG_CORDIC=m +CONFIG_COREDUMP=y +CONFIG_CORENET_GENERIC=y +CONFIG_COSA=m +# CONFIG_CPA_DEBUG is not set +CONFIG_CPM=y +CONFIG_CPM2=y +CONFIG_CPU5_WDT=m +CONFIG_CPUSETS=y +CONFIG_CPU_32v6K=y +CONFIG_CPU_32v7=y +CONFIG_CPU_ABRT_EV7=y +# CONFIG_CPU_BPREDICT_DISABLE is not set +CONFIG_CPU_CACHE_V7=y +CONFIG_CPU_CACHE_VIPT=y +CONFIG_CPU_COPY_V6=y +CONFIG_CPU_CP15=y +CONFIG_CPU_CP15_MMU=y +# CONFIG_CPU_DCACHE_DISABLE is not set +CONFIG_CPU_FREQ=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set +CONFIG_CPU_FREQ_GOV_COMMON=y +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y +CONFIG_CPU_FREQ_GOV_ONDEMAND=y +CONFIG_CPU_FREQ_GOV_PERFORMANCE=y +CONFIG_CPU_FREQ_GOV_POWERSAVE=y +CONFIG_CPU_FREQ_GOV_USERSPACE=y +CONFIG_CPU_FREQ_MAPLE=y +CONFIG_CPU_FREQ_PMAC=y +CONFIG_CPU_FREQ_PMAC64=y +CONFIG_CPU_FREQ_STAT=y +CONFIG_CPU_FREQ_STAT_DETAILS=y +CONFIG_CPU_HAS_ASID=y +# CONFIG_CPU_ICACHE_DISABLE is not set +CONFIG_CPU_IDLE_GOV_LADDER=y +CONFIG_CPU_IDLE_GOV_MENU=y +CONFIG_CPU_IDLE_MULTIPLE_DRIVERS=y +CONFIG_CPU_NOTIFIER_ERROR_INJECT=m +CONFIG_CPU_PABRT_V7=y +CONFIG_CPU_PM=y +CONFIG_CPU_RMAP=y +CONFIG_CPU_SUP_AMD=y +CONFIG_CPU_SUP_CENTAUR=y +CONFIG_CPU_SUP_CYRIX_32=y +CONFIG_CPU_SUP_INTEL=y +CONFIG_CPU_SUP_TRANSMETA_32=y +CONFIG_CPU_SUP_UMC_32=y +CONFIG_CPU_THERMAL=y +CONFIG_CPU_TLB_V7=y +CONFIG_CPU_V7=y +CONFIG_CRAMFS=m +CONFIG_CRC16=y +CONFIG_CRC32=y +# CONFIG_CRC32_BIT is not set +# CONFIG_CRC32_SARWATE is not set +# CONFIG_CRC32_SELFTEST is not set +# CONFIG_CRC32_SLICEBY4 is not set +CONFIG_CRC32_SLICEBY8=y +CONFIG_CRC7=m +CONFIG_CRC8=m +CONFIG_CRC_CCITT=m +CONFIG_CRC_ITU_T=m +CONFIG_CRC_T10DIF=y +CONFIG_CROSS_COMPILE="" +CONFIG_CROSS_MEMORY_ATTACH=y +CONFIG_CRYPTO=y +CONFIG_CRYPTO_842=m +CONFIG_CRYPTO_ABLK_HELPER=m +CONFIG_CRYPTO_AEAD=m +CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_AES=y +CONFIG_CRYPTO_AES_586=m +CONFIG_CRYPTO_AES_ARM=m +CONFIG_CRYPTO_AES_ARM_BS=m +CONFIG_CRYPTO_AES_NI_INTEL=m +CONFIG_CRYPTO_AES_X86_64=m +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_ALGAPI2=y +CONFIG_CRYPTO_ANSI_CPRNG=m +CONFIG_CRYPTO_ANUBIS=m +CONFIG_CRYPTO_ARC4=m +CONFIG_CRYPTO_AUTHENC=m +CONFIG_CRYPTO_BLKCIPHER=y +CONFIG_CRYPTO_BLKCIPHER2=y +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_BLOWFISH_COMMON=m +CONFIG_CRYPTO_BLOWFISH_X86_64=m +CONFIG_CRYPTO_CAMELLIA=m +CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64=m +CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64=m +CONFIG_CRYPTO_CAMELLIA_X86_64=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST5_AVX_X86_64=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_CAST6_AVX_X86_64=m +CONFIG_CRYPTO_CAST_COMMON=m +CONFIG_CRYPTO_CBC=y +CONFIG_CRYPTO_CCM=m +CONFIG_CRYPTO_CMAC=m +CONFIG_CRYPTO_CRC32=m +CONFIG_CRYPTO_CRC32C=y +CONFIG_CRYPTO_CRC32C_INTEL=y +CONFIG_CRYPTO_CRC32_PCLMUL=m +CONFIG_CRYPTO_CRCT10DIF=y +CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m +CONFIG_CRYPTO_CRYPTD=m +CONFIG_CRYPTO_CTR=m +CONFIG_CRYPTO_CTS=m +CONFIG_CRYPTO_DEFLATE=m +CONFIG_CRYPTO_DES=m +CONFIG_CRYPTO_DEV_FSL_CAAM=m +CONFIG_CRYPTO_DEV_FSL_CAAM_AHASH_API=m +CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API=m +# CONFIG_CRYPTO_DEV_FSL_CAAM_DEBUG is not set +CONFIG_CRYPTO_DEV_FSL_CAAM_INTC=y +CONFIG_CRYPTO_DEV_FSL_CAAM_INTC_COUNT_THLD=255 +CONFIG_CRYPTO_DEV_FSL_CAAM_INTC_TIME_THLD=2048 +CONFIG_CRYPTO_DEV_FSL_CAAM_JR=m +CONFIG_CRYPTO_DEV_FSL_CAAM_RINGSIZE=9 +CONFIG_CRYPTO_DEV_FSL_CAAM_RNG_API=m +CONFIG_CRYPTO_DEV_GEODE=m +CONFIG_CRYPTO_DEV_HIFN_795X=m +CONFIG_CRYPTO_DEV_HIFN_795X_RNG=y +CONFIG_CRYPTO_DEV_NX_COMPRESS=m +CONFIG_CRYPTO_DEV_NX_ENCRYPT=m +CONFIG_CRYPTO_DEV_OMAP_AES=m +CONFIG_CRYPTO_DEV_OMAP_SHAM=m +CONFIG_CRYPTO_DEV_PADLOCK=y +CONFIG_CRYPTO_DEV_PADLOCK_AES=m +CONFIG_CRYPTO_DEV_PADLOCK_SHA=m +CONFIG_CRYPTO_DEV_SAHARA=m +CONFIG_CRYPTO_DEV_TALITOS=m +CONFIG_CRYPTO_DEV_TEGRA_AES=m +CONFIG_CRYPTO_ECB=y +CONFIG_CRYPTO_FCRYPT=m +CONFIG_CRYPTO_GCM=m +CONFIG_CRYPTO_GF128MUL=m +CONFIG_CRYPTO_GHASH=m +CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m +CONFIG_CRYPTO_GLUE_HELPER_X86=m +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_HASH2=y +CONFIG_CRYPTO_HASH_INFO=y +CONFIG_CRYPTO_HMAC=y +CONFIG_CRYPTO_HW=y +CONFIG_CRYPTO_KHAZAD=m +CONFIG_CRYPTO_LRW=m +CONFIG_CRYPTO_LZ4=m +CONFIG_CRYPTO_LZ4HC=m +CONFIG_CRYPTO_LZO=y +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_MANAGER2=y +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y +CONFIG_CRYPTO_MD4=m +CONFIG_CRYPTO_MD5=y +CONFIG_CRYPTO_MICHAEL_MIC=m +CONFIG_CRYPTO_NULL=m +CONFIG_CRYPTO_PCBC=m +CONFIG_CRYPTO_PCOMP=m +CONFIG_CRYPTO_PCOMP2=y +CONFIG_CRYPTO_PCRYPT=m +CONFIG_CRYPTO_RMD128=m +CONFIG_CRYPTO_RMD160=m +CONFIG_CRYPTO_RMD256=m +CONFIG_CRYPTO_RMD320=m +CONFIG_CRYPTO_RNG=y +CONFIG_CRYPTO_RNG2=y +CONFIG_CRYPTO_SALSA20=m +CONFIG_CRYPTO_SALSA20_586=m +CONFIG_CRYPTO_SALSA20_X86_64=m +CONFIG_CRYPTO_SEED=m +CONFIG_CRYPTO_SEQIV=m +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_SERPENT_AVX2_X86_64=m +CONFIG_CRYPTO_SERPENT_AVX_X86_64=m +CONFIG_CRYPTO_SERPENT_SSE2_586=m +CONFIG_CRYPTO_SERPENT_SSE2_X86_64=m +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA1_ARM=m +CONFIG_CRYPTO_SHA1_PPC=m +CONFIG_CRYPTO_SHA1_SSSE3=m +CONFIG_CRYPTO_SHA256=y +CONFIG_CRYPTO_SHA256_SSSE3=m +CONFIG_CRYPTO_SHA512=y +CONFIG_CRYPTO_SHA512_SSSE3=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_TEST=m +CONFIG_CRYPTO_TGR192=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_TWOFISH_586=m +CONFIG_CRYPTO_TWOFISH_AVX_X86_64=m +CONFIG_CRYPTO_TWOFISH_COMMON=m +CONFIG_CRYPTO_TWOFISH_X86_64=m +CONFIG_CRYPTO_TWOFISH_X86_64_3WAY=m +CONFIG_CRYPTO_USER=m +CONFIG_CRYPTO_USER_API=m +CONFIG_CRYPTO_USER_API_HASH=m +CONFIG_CRYPTO_USER_API_SKCIPHER=m +CONFIG_CRYPTO_VMAC=m +CONFIG_CRYPTO_WORKQUEUE=y +CONFIG_CRYPTO_WP512=m +CONFIG_CRYPTO_XCBC=m +CONFIG_CRYPTO_XTS=m +CONFIG_CRYPTO_ZLIB=m +CONFIG_CRYSTALHD=m +# CONFIG_CS5535_MFGPT is not set +CONFIG_CS89x0=m +CONFIG_CS89x0_PLATFORM=y +CONFIG_CUSE=m +CONFIG_CW1200=m +CONFIG_CW1200_WLAN_SDIO=m +CONFIG_CW1200_WLAN_SPI=m +CONFIG_CXT1E1=m +CONFIG_CYCLADES=m +CONFIG_CYPRESS_FIRMWARE=m +# CONFIG_CYZ_INTR is not set +CONFIG_DA9052_WATCHDOG=m +CONFIG_DA9055_WATCHDOG=m +CONFIG_DAVICOM_PHY=y +CONFIG_DCA=m +CONFIG_DCACHE_WORD_ACCESS=y +CONFIG_DCB=y +CONFIG_DCDBAS=m +CONFIG_DDR=y +CONFIG_DE2104X=m +CONFIG_DE2104X_DSL=0 +CONFIG_DE4X5=m +CONFIG_DEBUGGER=y +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_BLK_CGROUP is not set +# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set +# CONFIG_DEBUG_BOOT_PARAMS is not set +CONFIG_DEBUG_BUGVERBOSE=y +# CONFIG_DEBUG_CREDENTIALS is not set +# CONFIG_DEBUG_DEVRES is not set +# CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_DEBUG_FS=y +# CONFIG_DEBUG_GPIO is not set +# CONFIG_DEBUG_HIGHMEM is not set +# CONFIG_DEBUG_HOTPLUG_CPU0 is not set +CONFIG_DEBUG_IMX_UART_PORT=1 +CONFIG_DEBUG_INFO=y +# CONFIG_DEBUG_INFO_REDUCED is not set +CONFIG_DEBUG_KERNEL=y +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_DEBUG_KOBJECT is not set +# CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_LL is not set +CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S" +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_DEBUG_MUTEXES is not set +# CONFIG_DEBUG_NMI_SELFTEST is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_NX_TEST is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_DEBUG_PAGEALLOC is not set +# CONFIG_DEBUG_PERF_USE_VMALLOC is not set +# CONFIG_DEBUG_PER_CPU_MAPS is not set +# CONFIG_DEBUG_PINCTRL is not set +# CONFIG_DEBUG_PREEMPT is not set +CONFIG_DEBUG_RODATA=y +# CONFIG_DEBUG_RODATA_TEST is not set +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +CONFIG_DEBUG_SET_MODULE_RONX=y +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_SHIRQ is not set +# CONFIG_DEBUG_SPINLOCK is not set +# CONFIG_DEBUG_STACKOVERFLOW is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set +# CONFIG_DEBUG_TLBFLUSH is not set +# CONFIG_DEBUG_UART_8250 is not set +# CONFIG_DEBUG_UART_PL01X is not set +# CONFIG_DEBUG_USER is not set +# CONFIG_DEBUG_VIRTUAL is not set +# CONFIG_DEBUG_VM is not set +# CONFIG_DEBUG_WRITECOUNT is not set +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +CONFIG_DECNET=m +CONFIG_DECNET_NF_GRABULATOR=m +# CONFIG_DECNET_ROUTER is not set +CONFIG_DECOMPRESS_BZIP2=y +CONFIG_DECOMPRESS_GZIP=y +CONFIG_DECOMPRESS_LZ4=y +CONFIG_DECOMPRESS_LZMA=y +CONFIG_DECOMPRESS_LZO=y +CONFIG_DECOMPRESS_XZ=y +CONFIG_DEFAULT_CUBIC=y +CONFIG_DEFAULT_HOSTNAME="(none)" +CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 +CONFIG_DEFAULT_IO_DELAY_TYPE=1 +CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 +# CONFIG_DEFAULT_NOOP is not set +# CONFIG_DEFAULT_RENO is not set +CONFIG_DEFAULT_SECURITY="apparmor" +CONFIG_DEFAULT_SECURITY_APPARMOR=y +# CONFIG_DEFAULT_SECURITY_DAC is not set +# CONFIG_DEFAULT_SECURITY_SELINUX is not set +# CONFIG_DEFAULT_SECURITY_SMACK is not set +# CONFIG_DEFAULT_SECURITY_TOMOYO is not set +# CONFIG_DEFAULT_SECURITY_YAMA is not set +CONFIG_DEFAULT_TCP_CONG="cubic" +CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" +CONFIG_DEFXX=m +# CONFIG_DEFXX_MMIO is not set +CONFIG_DELL_LAPTOP=m +CONFIG_DELL_RBU=m +CONFIG_DELL_WMI=m +CONFIG_DELL_WMI_AIO=m +# CONFIG_DEPRECATED_PARAM_STRUCT is not set +CONFIG_DETECT_HUNG_TASK=y +CONFIG_DEVFREQ_GOV_PERFORMANCE=y +CONFIG_DEVFREQ_GOV_POWERSAVE=y +CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y +CONFIG_DEVFREQ_GOV_USERSPACE=y +# CONFIG_DEVKMEM is not set +CONFIG_DEVPORT=y +CONFIG_DEVPTS_MULTIPLE_INSTANCES=y +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_DEV_APPLETALK=m +CONFIG_DE_AOC=y +CONFIG_DGAP=m +CONFIG_DGNC=m +CONFIG_DGRP=m +CONFIG_DIRECT_GBPAGES=y +CONFIG_DISPLAY_CONNECTOR_ANALOG_TV=m +CONFIG_DISPLAY_CONNECTOR_DVI=m +CONFIG_DISPLAY_CONNECTOR_HDMI=y +CONFIG_DISPLAY_ENCODER_TFP410=m +CONFIG_DISPLAY_ENCODER_TPD12S015=y +CONFIG_DISPLAY_PANEL_DPI=m +CONFIG_DISPLAY_PANEL_DSI_CM=m +CONFIG_DISPLAY_PANEL_LGPHILIPS_LB035Q02=m +CONFIG_DISPLAY_PANEL_NEC_NL8048HL11=m +CONFIG_DISPLAY_PANEL_SHARP_LS037V7DW01=m +CONFIG_DISPLAY_PANEL_SONY_ACX565AKM=m +CONFIG_DISPLAY_PANEL_TPO_TD028TTEC1=m +CONFIG_DISPLAY_PANEL_TPO_TD043MTEA1=m +CONFIG_DL2K=m +CONFIG_DLCI=m +CONFIG_DLCI_MAX=8 +CONFIG_DLM=m +# CONFIG_DLM_DEBUG is not set +CONFIG_DM9000=m +# CONFIG_DM9000_FORCE_SIMPLE_PHY_POLL is not set +CONFIG_DM9102=m +CONFIG_DMADEVICES=y +# CONFIG_DMADEVICES_DEBUG is not set +CONFIG_DMAR_TABLE=y +# CONFIG_DMATEST is not set +CONFIG_DMA_ACPI=y +# CONFIG_DMA_API_DEBUG is not set +CONFIG_DMA_CMA=y +CONFIG_DMA_ENGINE=y +CONFIG_DMA_ENGINE_RAID=y +CONFIG_DMA_OF=y +CONFIG_DMA_OMAP=y +CONFIG_DMA_SHARED_BUFFER=y +CONFIG_DMA_VIRTUAL_CHANNELS=y +CONFIG_DMI=y +CONFIG_DMIID=y +CONFIG_DMI_SYSFS=m +CONFIG_DM_BIO_PRISON=m +CONFIG_DM_BUFIO=m +CONFIG_DM_CACHE=m +CONFIG_DM_CACHE_CLEANER=m +CONFIG_DM_CACHE_MQ=m +CONFIG_DM_CRYPT=m +# CONFIG_DM_DEBUG is not set +# CONFIG_DM_DEBUG_BLOCK_STACK_TRACING is not set +CONFIG_DM_DELAY=m +CONFIG_DM_FLAKEY=m +CONFIG_DM_LOG_USERSPACE=m +CONFIG_DM_MIRROR=m +CONFIG_DM_MULTIPATH=m +CONFIG_DM_MULTIPATH_QL=m +CONFIG_DM_MULTIPATH_ST=m +CONFIG_DM_PERSISTENT_DATA=m +CONFIG_DM_RAID=m +CONFIG_DM_SNAPSHOT=m +CONFIG_DM_SWITCH=m +CONFIG_DM_THIN_PROVISIONING=m +CONFIG_DM_UEVENT=y +CONFIG_DM_VERITY=m +CONFIG_DM_ZERO=m +CONFIG_DNET=m +CONFIG_DNOTIFY=y +CONFIG_DNS_RESOLVER=y +CONFIG_DONGLE=y +CONFIG_DOUBLEFAULT=y +CONFIG_DPA=y +# CONFIG_DPAA_ETH_UNIT_TESTS is not set +CONFIG_DPA_MAX_FRM_SIZE=1522 +CONFIG_DPA_OFFLINE_PORTS=y +# CONFIG_DPM_WATCHDOG is not set +CONFIG_DQL=y +CONFIG_DRA752_THERMAL=y +CONFIG_DRAGONRISE_FF=y +# CONFIG_DRBD_FAULT_INJECTION is not set +CONFIG_DRM=m +CONFIG_DRM_ARMADA=m +CONFIG_DRM_AST=m +CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_EXYNOS is not set +CONFIG_DRM_GEM_CMA_HELPER=y +CONFIG_DRM_GMA3600=y +CONFIG_DRM_GMA500=m +CONFIG_DRM_GMA600=y +CONFIG_DRM_I2C_CH7006=m +CONFIG_DRM_I2C_NXP_TDA998X=m +CONFIG_DRM_I2C_SIL164=m +CONFIG_DRM_I810=m +CONFIG_DRM_I915=m +CONFIG_DRM_I915_BDW=m +CONFIG_DRM_I915_FBDEV=y +CONFIG_DRM_I915_KMS=y +CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT=y +# CONFIG_DRM_I915_UMS is not set +# CONFIG_DRM_IMX is not set +CONFIG_DRM_KMS_CMA_HELPER=y +CONFIG_DRM_KMS_FB_HELPER=y +CONFIG_DRM_KMS_HELPER=m +CONFIG_DRM_LOAD_EDID_FIRMWARE=y +# CONFIG_DRM_MEDFIELD is not set +CONFIG_DRM_MGA=m +# CONFIG_DRM_MGAG200 is not set +CONFIG_DRM_NOUVEAU=m +CONFIG_DRM_NOUVEAU_BACKLIGHT=y +CONFIG_DRM_OMAP=m +CONFIG_DRM_OMAP_NUM_CRTCS=1 +CONFIG_DRM_QXL=m +CONFIG_DRM_R128=m +CONFIG_DRM_RADEON=m +CONFIG_DRM_RADEON_UMS=y +CONFIG_DRM_RCAR_DU=m +CONFIG_DRM_RCAR_LVDS=y +CONFIG_DRM_SAVAGE=m +CONFIG_DRM_SHMOBILE=m +CONFIG_DRM_SIS=m +CONFIG_DRM_TDFX=m +# CONFIG_DRM_TEGRA is not set +CONFIG_DRM_TTM=m +CONFIG_DRM_UDL=m +CONFIG_DRM_USB=m +CONFIG_DRM_VIA=m +CONFIG_DRM_VMWGFX=m +CONFIG_DRM_VMWGFX_FBCON=y +CONFIG_DS1682=m +CONFIG_DSCC4=m +CONFIG_DSCC4_PCISYNC=y +CONFIG_DSCC4_PCI_RST=y +# CONFIG_DT3155_CCIR is not set +CONFIG_DT3155_STREAMING=y +CONFIG_DTC=y +CONFIG_DTL=y +CONFIG_DTLK=m +CONFIG_DUMMY=m +CONFIG_DUMMY_CONSOLE=y +CONFIG_DUMMY_IRQ=m +CONFIG_DVB_A8293=m +CONFIG_DVB_AF9013=m +CONFIG_DVB_AF9033=m +CONFIG_DVB_AS102=m +CONFIG_DVB_ATBM8830=m +CONFIG_DVB_AU8522=m +CONFIG_DVB_AU8522_DTV=m +CONFIG_DVB_AU8522_V4L=m +CONFIG_DVB_AV7110=m +CONFIG_DVB_AV7110_OSD=y +CONFIG_DVB_B2C2_FLEXCOP=m +CONFIG_DVB_B2C2_FLEXCOP_PCI=m +# CONFIG_DVB_B2C2_FLEXCOP_PCI_DEBUG is not set +CONFIG_DVB_B2C2_FLEXCOP_USB=m +# CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set +CONFIG_DVB_BCM3510=m +CONFIG_DVB_BT8XX=m +CONFIG_DVB_BUDGET=m +CONFIG_DVB_BUDGET_AV=m +CONFIG_DVB_BUDGET_CI=m +CONFIG_DVB_BUDGET_CORE=m +CONFIG_DVB_BUDGET_PATCH=m +CONFIG_DVB_CORE=m +CONFIG_DVB_CX22700=m +CONFIG_DVB_CX22702=m +CONFIG_DVB_CX24110=m +CONFIG_DVB_CX24116=m +CONFIG_DVB_CX24117=m +CONFIG_DVB_CX24123=m +CONFIG_DVB_CXD2099=m +CONFIG_DVB_CXD2820R=m +CONFIG_DVB_DDBRIDGE=m +CONFIG_DVB_DIB3000MB=m +CONFIG_DVB_DIB3000MC=m +CONFIG_DVB_DIB7000M=m +CONFIG_DVB_DIB7000P=m +CONFIG_DVB_DIB8000=m +CONFIG_DVB_DM1105=m +CONFIG_DVB_DRXD=m +CONFIG_DVB_DRXK=m +CONFIG_DVB_DS3000=m +# CONFIG_DVB_DUMMY_FE is not set +CONFIG_DVB_DYNAMIC_MINORS=y +CONFIG_DVB_EC100=m +CONFIG_DVB_FIREDTV=m +CONFIG_DVB_FIREDTV_INPUT=y +CONFIG_DVB_HOPPER=m +CONFIG_DVB_ISL6405=m +CONFIG_DVB_ISL6421=m +CONFIG_DVB_ISL6423=m +CONFIG_DVB_IT913X_FE=m +CONFIG_DVB_IX2505V=m +CONFIG_DVB_L64781=m +CONFIG_DVB_LG2160=m +CONFIG_DVB_LGDT3305=m +CONFIG_DVB_LGDT330X=m +CONFIG_DVB_LGS8GXX=m +CONFIG_DVB_LNBP21=m +CONFIG_DVB_LNBP22=m +CONFIG_DVB_M88RS2000=m +CONFIG_DVB_MANTIS=m +CONFIG_DVB_MAX_ADAPTERS=8 +CONFIG_DVB_MB86A16=m +CONFIG_DVB_MB86A20S=m +CONFIG_DVB_MT312=m +CONFIG_DVB_MT352=m +CONFIG_DVB_NET=y +CONFIG_DVB_NGENE=m +CONFIG_DVB_NXT200X=m +CONFIG_DVB_NXT6000=m +CONFIG_DVB_OR51132=m +CONFIG_DVB_OR51211=m +CONFIG_DVB_PLL=m +CONFIG_DVB_PLUTO2=m +CONFIG_DVB_PT1=m +CONFIG_DVB_RTL2830=m +CONFIG_DVB_RTL2832=m +CONFIG_DVB_S5H1409=m +CONFIG_DVB_S5H1411=m +CONFIG_DVB_S5H1420=m +CONFIG_DVB_S921=m +CONFIG_DVB_SI21XX=m +CONFIG_DVB_SP8870=m +CONFIG_DVB_SP887X=m +CONFIG_DVB_STB0899=m +CONFIG_DVB_STB6000=m +CONFIG_DVB_STB6100=m +CONFIG_DVB_STV0288=m +CONFIG_DVB_STV0297=m +CONFIG_DVB_STV0299=m +CONFIG_DVB_STV0367=m +CONFIG_DVB_STV0900=m +CONFIG_DVB_STV090x=m +CONFIG_DVB_STV6110=m +CONFIG_DVB_STV6110x=m +CONFIG_DVB_TDA10021=m +CONFIG_DVB_TDA10023=m +CONFIG_DVB_TDA10048=m +CONFIG_DVB_TDA1004X=m +CONFIG_DVB_TDA10071=m +CONFIG_DVB_TDA10086=m +CONFIG_DVB_TDA18271C2DD=m +CONFIG_DVB_TDA665x=m +CONFIG_DVB_TDA8083=m +CONFIG_DVB_TDA8261=m +CONFIG_DVB_TDA826X=m +CONFIG_DVB_TS2020=m +CONFIG_DVB_TTUSB_BUDGET=m +CONFIG_DVB_TTUSB_DEC=m +CONFIG_DVB_TUA6100=m +CONFIG_DVB_TUNER_CX24113=m +CONFIG_DVB_TUNER_DIB0070=m +CONFIG_DVB_TUNER_DIB0090=m +CONFIG_DVB_TUNER_ITD1000=m +CONFIG_DVB_USB=m +CONFIG_DVB_USB_A800=m +CONFIG_DVB_USB_AF9005=m +CONFIG_DVB_USB_AF9005_REMOTE=m +CONFIG_DVB_USB_AF9015=m +CONFIG_DVB_USB_AF9035=m +CONFIG_DVB_USB_ANYSEE=m +CONFIG_DVB_USB_AU6610=m +CONFIG_DVB_USB_AZ6007=m +CONFIG_DVB_USB_AZ6027=m +CONFIG_DVB_USB_CE6230=m +CONFIG_DVB_USB_CINERGY_T2=m +CONFIG_DVB_USB_CXUSB=m +# CONFIG_DVB_USB_DEBUG is not set +CONFIG_DVB_USB_DIB0700=m +CONFIG_DVB_USB_DIBUSB_MB=m +# CONFIG_DVB_USB_DIBUSB_MB_FAULTY is not set +CONFIG_DVB_USB_DIBUSB_MC=m +CONFIG_DVB_USB_DIGITV=m +CONFIG_DVB_USB_DTT200U=m +CONFIG_DVB_USB_DTV5100=m +CONFIG_DVB_USB_DW2102=m +CONFIG_DVB_USB_EC168=m +CONFIG_DVB_USB_FRIIO=m +CONFIG_DVB_USB_GL861=m +CONFIG_DVB_USB_GP8PSK=m +CONFIG_DVB_USB_IT913X=m +CONFIG_DVB_USB_LME2510=m +CONFIG_DVB_USB_M920X=m +CONFIG_DVB_USB_MXL111SF=m +CONFIG_DVB_USB_NOVA_T_USB2=m +CONFIG_DVB_USB_OPERA1=m +CONFIG_DVB_USB_PCTV452E=m +CONFIG_DVB_USB_RTL28XXU=m +CONFIG_DVB_USB_TECHNISAT_USB2=m +CONFIG_DVB_USB_TTUSB2=m +CONFIG_DVB_USB_UMT_010=m +CONFIG_DVB_USB_V2=m +CONFIG_DVB_USB_VP702X=m +CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_VES1820=m +CONFIG_DVB_VES1X93=m +CONFIG_DVB_ZL10036=m +CONFIG_DVB_ZL10039=m +CONFIG_DVB_ZL10353=m +CONFIG_DW_APB_TIMER=y +CONFIG_DW_DMAC=m +CONFIG_DW_DMAC_CORE=m +CONFIG_DW_DMAC_PCI=m +CONFIG_DW_WATCHDOG=m +CONFIG_DX_SEP=m +CONFIG_DYNAMIC_DEBUG=y +CONFIG_DYNAMIC_FTRACE=y +CONFIG_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_E100=m +CONFIG_E1000=m +CONFIG_E1000E=m +# CONFIG_E200 is not set +CONFIG_E500=y +# CONFIG_E5500_CPU is not set +# CONFIG_E6500_CPU is not set +CONFIG_EARLY_PRINTK=y +CONFIG_EARLY_PRINTK_DBGP=y +CONFIG_EARLY_PRINTK_EFI=y +CONFIG_EARLY_PRINTK_INTEL_MID=y +CONFIG_ECHO=m +CONFIG_ECRYPT_FS=y +CONFIG_ECRYPT_FS_MESSAGING=y +CONFIG_EDAC=y +CONFIG_EDAC_AMD64=m +# CONFIG_EDAC_AMD64_ERROR_INJECTION is not set +CONFIG_EDAC_AMD76X=m +CONFIG_EDAC_AMD8111=m +CONFIG_EDAC_AMD8131=m +CONFIG_EDAC_CPC925=m +# CONFIG_EDAC_DEBUG is not set +CONFIG_EDAC_DECODE_MCE=m +CONFIG_EDAC_E752X=m +CONFIG_EDAC_E7XXX=m +CONFIG_EDAC_HIGHBANK_L2=m +CONFIG_EDAC_HIGHBANK_MC=m +CONFIG_EDAC_I3000=m +CONFIG_EDAC_I3200=m +CONFIG_EDAC_I5000=m +CONFIG_EDAC_I5100=m +CONFIG_EDAC_I5400=m +CONFIG_EDAC_I7300=m +CONFIG_EDAC_I7CORE=m +CONFIG_EDAC_I82860=m +CONFIG_EDAC_I82875P=m +CONFIG_EDAC_I82975X=m +CONFIG_EDAC_LEGACY_SYSFS=y +CONFIG_EDAC_MCE_INJ=m +CONFIG_EDAC_MM_EDAC=m +CONFIG_EDAC_MPC85XX=m +CONFIG_EDAC_PASEMI=m +CONFIG_EDAC_R82600=m +CONFIG_EDAC_SBRIDGE=m +CONFIG_EDAC_X38=m +CONFIG_EDD=y +CONFIG_EDD_OFF=y +CONFIG_EEEPC_LAPTOP=m +CONFIG_EEEPC_WMI=m +CONFIG_EEH=y +CONFIG_EEPROM_93CX6=m +CONFIG_EEPROM_93XX46=m +CONFIG_EEPROM_AT24=m +CONFIG_EEPROM_AT25=m +CONFIG_EEPROM_LEGACY=m +CONFIG_EEPROM_MAX6875=m +CONFIG_EFI=y +CONFIG_EFIVAR_FS=y +CONFIG_EFI_PARTITION=y +CONFIG_EFI_STUB=y +CONFIG_EFI_VARS=y +CONFIG_EFI_VARS_PSTORE=m +# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set +CONFIG_EFS_FS=m +CONFIG_EHEA=y +CONFIG_EISA=y +CONFIG_EISA_NAMES=y +CONFIG_EISA_PCI_EISA=y +CONFIG_EISA_VIRTUAL_ROOT=y +CONFIG_EISA_VLB_PRIMING=y +CONFIG_EL3=m +CONFIG_ELECTRA_CF=m +CONFIG_ELF_CORE=y +# CONFIG_EMBEDDED is not set +CONFIG_EM_TIMER_STI=y +# CONFIG_ENABLE_MUST_CHECK is not set +# CONFIG_ENABLE_WARN_DEPRECATED is not set +CONFIG_ENC28J60=m +# CONFIG_ENC28J60_WRITEVERIFY is not set +CONFIG_ENCLOSURE_SERVICES=m +CONFIG_ENCRYPTED_KEYS=y +CONFIG_ENIC=m +CONFIG_EPAPR_PARAVIRT=y +CONFIG_EPIC100=m +CONFIG_EPOLL=y +CONFIG_EQUALIZER=m +CONFIG_ESI_DONGLE=m +CONFIG_ET131X=m +CONFIG_ETHERNET=y +CONFIG_ETHOC=m +CONFIG_EUROTECH_WDT=m +CONFIG_EVENTFD=y +CONFIG_EVENT_TRACING=y +CONFIG_EVM=y +CONFIG_EVM_HMAC_VERSION=2 +# CONFIG_EXOFS_DEBUG is not set +CONFIG_EXOFS_FS=m +CONFIG_EXPERT=y +CONFIG_EXPORTFS=y +# CONFIG_EXT2_FS is not set +# CONFIG_EXT3_FS is not set +# CONFIG_EXT4_DEBUG is not set +CONFIG_EXT4_FS=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_EXT4_FS_SECURITY=y +CONFIG_EXT4_USE_FOR_EXT23=y +CONFIG_EXTCON=y +CONFIG_EXTCON_ADC_JACK=m +CONFIG_EXTCON_ARIZONA=m +CONFIG_EXTCON_GPIO=m +CONFIG_EXTCON_MAX77693=m +CONFIG_EXTCON_MAX8997=m +CONFIG_EXTCON_PALMAS=m +CONFIG_EXTRA_FIRMWARE="" +CONFIG_EXTRA_TARGETS="" +CONFIG_EXYNOS_ADC=y +# CONFIG_F2FS_CHECK_FS is not set +CONFIG_F2FS_FS=m +CONFIG_F2FS_FS_POSIX_ACL=y +CONFIG_F2FS_FS_SECURITY=y +CONFIG_F2FS_FS_XATTR=y +CONFIG_F2FS_STAT_FS=y +CONFIG_F71808E_WDT=m +CONFIG_FAIR_GROUP_SCHED=y +CONFIG_FANOTIFY=y +CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y +CONFIG_FARSYNC=m +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" +CONFIG_FAT_FS=y +# CONFIG_FAULT_INJECTION is not set +# CONFIG_FA_DUMP is not set +CONFIG_FB=y +CONFIG_FB_3DFX=m +CONFIG_FB_3DFX_ACCEL=y +CONFIG_FB_3DFX_I2C=y +CONFIG_FB_ARC=m +CONFIG_FB_ARK=m +CONFIG_FB_ARMCLCD=y +CONFIG_FB_ASILIANT=y +CONFIG_FB_ATY=m +CONFIG_FB_ATY128_BACKLIGHT=y +CONFIG_FB_ATY_BACKLIGHT=y +CONFIG_FB_ATY_CT=y +# CONFIG_FB_ATY_GENERIC_LCD is not set +CONFIG_FB_ATY_GX=y +CONFIG_FB_AUO_K1900=m +CONFIG_FB_AUO_K1901=m +CONFIG_FB_AUO_K190X=m +CONFIG_FB_BROADSHEET=m +CONFIG_FB_CARILLO_RANCH=m +CONFIG_FB_CARMINE=m +CONFIG_FB_CARMINE_DRAM_EVAL=y +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_IMAGEBLIT=y +# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set +CONFIG_FB_CIRRUS=m +CONFIG_FB_CONTROL=y +CONFIG_FB_CT65550=y +CONFIG_FB_CYBER2000=m +CONFIG_FB_CYBER2000_DDC=y +# CONFIG_FB_DA8XX is not set +CONFIG_FB_DEFERRED_IO=y +CONFIG_FB_EFI=y +# CONFIG_FB_FOREIGN_ENDIAN is not set +CONFIG_FB_FSL_DIU=m +CONFIG_FB_GEODE=y +CONFIG_FB_GEODE_GX=m +CONFIG_FB_GEODE_GX1=m +CONFIG_FB_GEODE_LX=m +CONFIG_FB_GOLDFISH=m +CONFIG_FB_HECUBA=m +CONFIG_FB_HGA=m +CONFIG_FB_HYPERV=m +CONFIG_FB_I740=m +CONFIG_FB_I810=m +# CONFIG_FB_I810_GTF is not set +CONFIG_FB_IMSTT=y +CONFIG_FB_INTEL=m +# CONFIG_FB_INTEL_DEBUG is not set +# CONFIG_FB_INTEL_I2C is not set +CONFIG_FB_KYRO=m +CONFIG_FB_LE80578=m +CONFIG_FB_MATROX=m +CONFIG_FB_MATROX_G=y +CONFIG_FB_MATROX_I2C=m +CONFIG_FB_MATROX_MAVEN=m +CONFIG_FB_MATROX_MILLENIUM=y +CONFIG_FB_MATROX_MYSTIQUE=y +CONFIG_FB_MB862XX=m +CONFIG_FB_MB862XX_I2C=y +# CONFIG_FB_MB862XX_LIME is not set +CONFIG_FB_MB862XX_PCI_GDC=y +CONFIG_FB_METRONOME=m +CONFIG_FB_MODE_HELPERS=y +CONFIG_FB_MX3=y +CONFIG_FB_N411=m +CONFIG_FB_NEOMAGIC=m +CONFIG_FB_NVIDIA=m +CONFIG_FB_NVIDIA_BACKLIGHT=y +# CONFIG_FB_NVIDIA_DEBUG is not set +CONFIG_FB_NVIDIA_I2C=y +CONFIG_FB_OF=y +# CONFIG_FB_OMAP2 is not set +CONFIG_FB_PLATINUM=y +CONFIG_FB_PM2=m +CONFIG_FB_PM2_FIFO_DISCONNECT=y +CONFIG_FB_PM3=m +CONFIG_FB_PS3=y +CONFIG_FB_PS3_DEFAULT_SIZE_M=9 +CONFIG_FB_RADEON_BACKLIGHT=y +# CONFIG_FB_RADEON_DEBUG is not set +CONFIG_FB_RADEON_I2C=y +CONFIG_FB_RIVA=m +CONFIG_FB_RIVA_BACKLIGHT=y +# CONFIG_FB_RIVA_DEBUG is not set +CONFIG_FB_RIVA_I2C=y +CONFIG_FB_S1D13XXX=m +CONFIG_FB_S3=m +CONFIG_FB_S3_DDC=y +CONFIG_FB_SAVAGE=m +# CONFIG_FB_SAVAGE_ACCEL is not set +CONFIG_FB_SAVAGE_I2C=y +CONFIG_FB_SIMPLE=y +CONFIG_FB_SIS=m +CONFIG_FB_SIS_300=y +CONFIG_FB_SIS_315=y +CONFIG_FB_SM501=m +CONFIG_FB_SM7XX=m +CONFIG_FB_SMSCUFX=m +CONFIG_FB_SSD1307=m +CONFIG_FB_TILEBLITTING=y +CONFIG_FB_TMIO=m +CONFIG_FB_TMIO_ACCELL=y +CONFIG_FB_TRIDENT=m +CONFIG_FB_UVESA=m +CONFIG_FB_VALKYRIE=y +CONFIG_FB_VESA=y +CONFIG_FB_VGA16=m +CONFIG_FB_VIA=m +# CONFIG_FB_VIA_DIRECT_PROCFS is not set +CONFIG_FB_VIA_X_COMPATIBILITY=y +# CONFIG_FB_VIRTUAL is not set +CONFIG_FB_VT8623=m +CONFIG_FB_XGI=m +CONFIG_FCOE=m +CONFIG_FCOE_FNIC=m +CONFIG_FDDI=y +CONFIG_FEALNX=m +CONFIG_FEC=y +CONFIG_FHANDLE=y +CONFIG_FIB_RULES=y +CONFIG_FILE_LOCKING=y +CONFIG_FIREWIRE=m +CONFIG_FIREWIRE_NET=m +CONFIG_FIREWIRE_NOSY=m +CONFIG_FIREWIRE_OHCI=m +# CONFIG_FIREWIRE_OHCI_REMOTE_DMA is not set +CONFIG_FIREWIRE_SBP2=m +CONFIG_FIREWIRE_SERIAL=m +CONFIG_FIRMWARE_EDID=y +CONFIG_FIRMWARE_IN_KERNEL=y +CONFIG_FIRMWARE_MEMMAP=y +CONFIG_FIXED_PHY=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_FLATMEM=y +CONFIG_FLATMEM_MANUAL=y +CONFIG_FLAT_NODE_MEM_MAP=y +# CONFIG_FMAN_MIB_CNT_OVF_IRQ_EN is not set +# CONFIG_FMAN_RESOURCE_ALLOCATION_ALGORITHM is not set +CONFIG_FMC=m +CONFIG_FMC_CHARDEV=m +CONFIG_FMC_FAKEDEV=m +CONFIG_FMC_TRIVIAL=m +CONFIG_FMC_WRITE_EEPROM=m +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +CONFIG_FONT_8x16=y +CONFIG_FONT_8x8=y +CONFIG_FONT_ACORN_8x8=y +# CONFIG_FONT_MINI_4x6 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_SUN12x22 is not set +# CONFIG_FONT_SUN8x16 is not set +CONFIG_FONT_SUPPORT=y +CONFIG_FORCEDETH=m +CONFIG_FRAMEBUFFER_CONSOLE=y +CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y +CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y +CONFIG_FRAME_POINTER=y +CONFIG_FREEZER=y +CONFIG_FRONTSWAP=y +CONFIG_FSCACHE=m +# CONFIG_FSCACHE_DEBUG is not set +# CONFIG_FSCACHE_HISTOGRAM is not set +# CONFIG_FSCACHE_OBJECT_LIST is not set +CONFIG_FSCACHE_STATS=y +CONFIG_FSL_BMAN=y +CONFIG_FSL_BMAN_CONFIG=y +CONFIG_FSL_BMAN_DEBUGFS=m +CONFIG_FSL_BMAN_PORTAL=y +# CONFIG_FSL_BMAN_TEST is not set +CONFIG_FSL_BOOKE=y +CONFIG_FSL_DMA=m +CONFIG_FSL_DPA=y +CONFIG_FSL_DPA_1588=m +CONFIG_FSL_DPA_CAN_WAIT=y +CONFIG_FSL_DPA_CAN_WAIT_SYNC=y +# CONFIG_FSL_DPA_CHECKING is not set +CONFIG_FSL_DPA_HAVE_IRQ=y +CONFIG_FSL_DPA_PIRQ_FAST=y +CONFIG_FSL_DPA_PIRQ_SLOW=y +CONFIG_FSL_DPA_PORTAL_SHARE=y +CONFIG_FSL_DPA_UIO=m +CONFIG_FSL_EMB_PERFMON=y +CONFIG_FSL_EMB_PERF_EVENT=y +CONFIG_FSL_EMB_PERF_EVENT_E500=y +# CONFIG_FSL_FMAN_TEST is not set +CONFIG_FSL_HV_MANAGER=m +CONFIG_FSL_IFC=y +CONFIG_FSL_LBC=y +# CONFIG_FSL_PAMU is not set +CONFIG_FSL_PCI=y +CONFIG_FSL_PME2=y +CONFIG_FSL_PME2_CTRL=y +CONFIG_FSL_PME2_DB=y +CONFIG_FSL_PME2_DB_QOSOUT_PRIORITY=2 +CONFIG_FSL_PME2_PDSRSIZE=131072 +CONFIG_FSL_PME2_PORTAL=y +CONFIG_FSL_PME2_SCAN=y +# CONFIG_FSL_PME2_SCAN_DEBUG is not set +CONFIG_FSL_PME2_SRESIZE=327680 +# CONFIG_FSL_PME2_SRE_AIM is not set +CONFIG_FSL_PME2_SRE_CNR=128 +CONFIG_FSL_PME2_SRE_CTX_SIZE_PER_SESSION=17 +# CONFIG_FSL_PME2_SRE_ESR is not set +CONFIG_FSL_PME2_SRE_MAX_BLOCK_NUMBER=32767 +CONFIG_FSL_PME2_SRE_MAX_INSTRUCTION_LIMIT=65535 +CONFIG_FSL_PME2_STAT_ACCUMULATOR_UPDATE_INTERVAL=3400 +# CONFIG_FSL_PME2_TEST_HIGH is not set +# CONFIG_FSL_PME2_TEST_SCAN is not set +CONFIG_FSL_PQ_MDIO=m +CONFIG_FSL_QMAN=y +CONFIG_FSL_QMAN_BUG_AND_FEATURE_REV1=y +CONFIG_FSL_QMAN_CI_SCHED_CFG_BMAN_W=2 +CONFIG_FSL_QMAN_CI_SCHED_CFG_RW_W=2 +CONFIG_FSL_QMAN_CI_SCHED_CFG_SRCCIV=4 +CONFIG_FSL_QMAN_CI_SCHED_CFG_SRQ_W=3 +CONFIG_FSL_QMAN_CONFIG=y +CONFIG_FSL_QMAN_DEBUGFS=m +CONFIG_FSL_QMAN_DQRR_PREFETCHING=y +CONFIG_FSL_QMAN_FQD_SZ=9 +CONFIG_FSL_QMAN_NULL_FQ_DEMUX=y +CONFIG_FSL_QMAN_PIRQ_DQRR_ITHRESH=12 +CONFIG_FSL_QMAN_PIRQ_IPERIOD=100 +CONFIG_FSL_QMAN_PIRQ_MR_ITHRESH=4 +CONFIG_FSL_QMAN_POLL_LIMIT=32 +CONFIG_FSL_QMAN_PORTAL=y +# CONFIG_FSL_QMAN_PORTAL_DISABLEAUTO_DCA is not set +# CONFIG_FSL_QMAN_TEST is not set +CONFIG_FSL_SOC=y +CONFIG_FSL_SOC_BOOKE=y +CONFIG_FSL_USB2_OTG=m +CONFIG_FSL_XGMAC_MDIO=y +CONFIG_FSNOTIFY=y +CONFIG_FS_ENET=m +CONFIG_FS_ENET_HAS_FCC=y +CONFIG_FS_ENET_HAS_SCC=y +CONFIG_FS_ENET_MDIO_FCC=m +CONFIG_FS_MBCACHE=y +CONFIG_FS_POSIX_ACL=y +CONFIG_FT1000=m +CONFIG_FT1000_PCMCIA=m +CONFIG_FT1000_USB=m +CONFIG_FTGMAC100=m +CONFIG_FTL=m +CONFIG_FTMAC100=m +CONFIG_FTRACE=y +CONFIG_FTRACE_MCOUNT_RECORD=y +# CONFIG_FTRACE_STARTUP_TEST is not set +CONFIG_FTRACE_SYSCALLS=y +# CONFIG_FTR_FIXUP_SELFTEST is not set +CONFIG_FUJITSU_LAPTOP=m +# CONFIG_FUJITSU_LAPTOP_DEBUG is not set +CONFIG_FUJITSU_TABLET=m +CONFIG_FUNCTION_GRAPH_TRACER=y +CONFIG_FUNCTION_PROFILER=y +CONFIG_FUSE_FS=y +CONFIG_FUSION=y +CONFIG_FUSION_CTL=m +CONFIG_FUSION_FC=m +CONFIG_FUSION_LAN=m +CONFIG_FUSION_LOGGING=y +CONFIG_FUSION_MAX_SGE=128 +CONFIG_FUSION_SAS=m +CONFIG_FUSION_SPI=m +CONFIG_FUTEX=y +CONFIG_FW_LOADER=y +CONFIG_FW_LOADER_USER_HELPER=y +CONFIG_GACT_PROB=y +CONFIG_GADGET_UAC1=y +CONFIG_GAMEPORT=m +CONFIG_GAMEPORT_EMU10K1=m +CONFIG_GAMEPORT_FM801=m +CONFIG_GAMEPORT_L4=m +CONFIG_GAMEPORT_NS558=m +CONFIG_GARP=m +CONFIG_GART_IOMMU=y +# CONFIG_GCOV_KERNEL is not set +# CONFIG_GEF_WDT is not set +CONFIG_GELIC_NET=m +CONFIG_GELIC_WIRELESS=y +CONFIG_GENERIC_ACL=y +CONFIG_GENERIC_ADC_BATTERY=m +CONFIG_GENERIC_ALLOCATOR=y +CONFIG_GENERIC_ATOMIC64=y +CONFIG_GENERIC_BUG=y +CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_GENERIC_CLOCKEVENTS=y +CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y +CONFIG_GENERIC_CLOCKEVENTS_BUILD=y +CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y +CONFIG_GENERIC_CMOS_UPDATE=y +CONFIG_GENERIC_CPU=y +CONFIG_GENERIC_CPUFREQ_CPU0=y +# CONFIG_GENERIC_CPU_DEVICES is not set +CONFIG_GENERIC_FIND_FIRST_BIT=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_GENERIC_IDLE_POLL_SETUP=y +CONFIG_GENERIC_IO=y +CONFIG_GENERIC_IOMAP=y +CONFIG_GENERIC_IRQ_CHIP=y +CONFIG_GENERIC_IRQ_PROBE=y +CONFIG_GENERIC_IRQ_SHOW=y +CONFIG_GENERIC_IRQ_SHOW_LEVEL=y +CONFIG_GENERIC_ISA_DMA=y +CONFIG_GENERIC_NET_UTILS=y +CONFIG_GENERIC_NVRAM=y +CONFIG_GENERIC_PCI_IOMAP=y +CONFIG_GENERIC_PENDING_IRQ=y +CONFIG_GENERIC_PINCONF=y +CONFIG_GENERIC_SCHED_CLOCK=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_GENERIC_STRNCPY_FROM_USER=y +CONFIG_GENERIC_STRNLEN_USER=y +CONFIG_GENERIC_TIME_VSYSCALL=y +CONFIG_GENERIC_TIME_VSYSCALL_OLD=y +CONFIG_GENERIC_TRACER=y +CONFIG_GEOS=y +CONFIG_GFS2_FS=m +CONFIG_GFS2_FS_LOCKING_DLM=y +CONFIG_GIANFAR=m +CONFIG_GIGASET_BASE=m +# CONFIG_GIGASET_CAPI is not set +# CONFIG_GIGASET_DEBUG is not set +# CONFIG_GIGASET_DUMMYLL is not set +CONFIG_GIGASET_I4L=y +CONFIG_GIGASET_M101=m +CONFIG_GIGASET_M105=m +CONFIG_GIRBIL_DONGLE=m +# CONFIG_GOOGLE_FIRMWARE is not set +CONFIG_GP2AP020A00F=m +CONFIG_GPIOLIB=y +CONFIG_GPIO_74X164=m +CONFIG_GPIO_ACPI=y +CONFIG_GPIO_ADNP=m +CONFIG_GPIO_ADP5520=m +CONFIG_GPIO_ADP5588=m +CONFIG_GPIO_AMD8111=m +CONFIG_GPIO_ARIZONA=m +CONFIG_GPIO_BCM_KONA=y +CONFIG_GPIO_CS5535=m +CONFIG_GPIO_DA9052=m +CONFIG_GPIO_DA9055=m +CONFIG_GPIO_DEVRES=y +# CONFIG_GPIO_EM is not set +CONFIG_GPIO_F7188X=m +CONFIG_GPIO_GENERIC_PLATFORM=m +CONFIG_GPIO_GE_FPGA=y +CONFIG_GPIO_GRGPIO=m +CONFIG_GPIO_ICH=m +CONFIG_GPIO_INTEL_MID=y +CONFIG_GPIO_INTEL_PMIC=y +CONFIG_GPIO_IT8761E=m +CONFIG_GPIO_JANZ_TTL=m +CONFIG_GPIO_KEMPLD=m +CONFIG_GPIO_LYNXPOINT=y +CONFIG_GPIO_MAX7300=m +CONFIG_GPIO_MAX7301=m +CONFIG_GPIO_MAX730X=m +CONFIG_GPIO_MAX732X=m +CONFIG_GPIO_MC33880=m +CONFIG_GPIO_MCP23S08=m +CONFIG_GPIO_ML_IOH=m +CONFIG_GPIO_MPC8XXX=y +CONFIG_GPIO_MSIC=y +CONFIG_GPIO_MXC=y +CONFIG_GPIO_PALMAS=y +CONFIG_GPIO_PCA953X=m +CONFIG_GPIO_PCF857X=m +CONFIG_GPIO_PCH=m +CONFIG_GPIO_PL061=y +CONFIG_GPIO_RC5T583=y +CONFIG_GPIO_RCAR=m +CONFIG_GPIO_RDC321X=m +CONFIG_GPIO_SCH=m +CONFIG_GPIO_STMPE=y +CONFIG_GPIO_SX150X=y +# CONFIG_GPIO_SYSFS is not set +CONFIG_GPIO_TC3589X=y +CONFIG_GPIO_TIMBERDALE=y +CONFIG_GPIO_TPS6586X=y +CONFIG_GPIO_TPS65910=y +CONFIG_GPIO_TPS65912=m +CONFIG_GPIO_TS5500=m +CONFIG_GPIO_UCB1400=m +CONFIG_GPIO_VIPERBOARD=m +CONFIG_GPIO_VX855=m +CONFIG_GPIO_WM831X=m +CONFIG_GPIO_WM8350=m +CONFIG_GPIO_WM8994=m +CONFIG_GPIO_XILINX=y +CONFIG_GREENASIA_FF=y +CONFIG_HAMACHI=m +CONFIG_HAMRADIO=y +CONFIG_HANGCHECK_TIMER=m +CONFIG_HAPPYMEAL=m +CONFIG_HARDIRQS_SW_RESEND=y +CONFIG_HARDLOCKUP_DETECTOR=y +CONFIG_HAS_DMA=y +CONFIG_HAS_FSL_PME=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT=y +CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_HAVE_ARCH_KGDB=y +CONFIG_HAVE_ARCH_KMEMCHECK=y +CONFIG_HAVE_ARCH_PFN_VALID=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_HAVE_ARCH_SOFT_DIRTY=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_HAVE_ARM_ARCH_TIMER=y +CONFIG_HAVE_ARM_SCU=y +CONFIG_HAVE_ARM_TWD=y +CONFIG_HAVE_ATOMIC_IOMAP=y +CONFIG_HAVE_BPF_JIT=y +CONFIG_HAVE_CLK=y +CONFIG_HAVE_CLK_PREPARE=y +CONFIG_HAVE_CMPXCHG_DOUBLE=y +CONFIG_HAVE_CMPXCHG_LOCAL=y +CONFIG_HAVE_CONTEXT_TRACKING=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_HAVE_DEBUG_BUGVERBOSE=y +CONFIG_HAVE_DEBUG_KMEMLEAK=y +CONFIG_HAVE_DEBUG_STACKOVERFLOW=y +CONFIG_HAVE_DMA_API_DEBUG=y +CONFIG_HAVE_DMA_ATTRS=y +CONFIG_HAVE_DMA_CONTIGUOUS=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_HAVE_FENTRY=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_IDE=y +CONFIG_HAVE_IMX_ANATOP=y +CONFIG_HAVE_IMX_GPC=y +CONFIG_HAVE_IMX_MMDC=y +CONFIG_HAVE_IMX_SRC=y +CONFIG_HAVE_INTEL_TXT=y +CONFIG_HAVE_IOREMAP_PROT=y +CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_KERNEL_BZIP2=y +CONFIG_HAVE_KERNEL_GZIP=y +CONFIG_HAVE_KERNEL_LZ4=y +CONFIG_HAVE_KERNEL_LZMA=y +CONFIG_HAVE_KERNEL_LZO=y +CONFIG_HAVE_KERNEL_XZ=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KPROBES_ON_FTRACE=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_KVM=y +CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y +CONFIG_HAVE_KVM_EVENTFD=y +CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_IRQ_ROUTING=y +CONFIG_HAVE_KVM_MSI=y +CONFIG_HAVE_LATENCYTOP_SUPPORT=y +CONFIG_HAVE_MEMBLOCK=y +CONFIG_HAVE_MEMBLOCK_NODE_MAP=y +CONFIG_HAVE_MEMORY_PRESENT=y +CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y +CONFIG_HAVE_MMIOTRACE_SUPPORT=y +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y +CONFIG_HAVE_NET_DSA=y +CONFIG_HAVE_OPROFILE=y +CONFIG_HAVE_OPTPROBES=y +CONFIG_HAVE_PATA_PLATFORM=y +CONFIG_HAVE_PCSPKR_PLATFORM=y +CONFIG_HAVE_PERF_EVENTS=y +CONFIG_HAVE_PERF_EVENTS_NMI=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_PROC_CPU=y +CONFIG_HAVE_RCU_TABLE_FREE=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_SMP=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_UID16=y +CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y +CONFIG_HAVE_USER_RETURN_NOTIFIER=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y +# CONFIG_HCALL_STATS is not set +CONFIG_HDLC=m +CONFIG_HDLC_CISCO=m +CONFIG_HDLC_FR=m +CONFIG_HDLC_PPP=m +CONFIG_HDLC_RAW=m +CONFIG_HDLC_RAW_ETH=m +CONFIG_HDLC_X25=m +CONFIG_HDMI=y +CONFIG_HDQ_MASTER_OMAP=m +# CONFIG_HEADERS_CHECK is not set +CONFIG_HERMES=m +CONFIG_HERMES_CACHE_FW_ON_INIT=y +# CONFIG_HERMES_PRISM is not set +CONFIG_HFSPLUS_FS=m +CONFIG_HFSPLUS_FS_POSIX_ACL=y +CONFIG_HFS_FS=m +CONFIG_HIBERNATE_CALLBACKS=y +CONFIG_HID=m +CONFIG_HIDRAW=y +CONFIG_HID_A4TECH=m +CONFIG_HID_ACRUX=m +CONFIG_HID_ACRUX_FF=y +CONFIG_HID_APPLE=m +CONFIG_HID_APPLEIR=m +CONFIG_HID_AUREAL=m +CONFIG_HID_BATTERY_STRENGTH=y +CONFIG_HID_BELKIN=m +CONFIG_HID_CHERRY=m +CONFIG_HID_CHICONY=m +CONFIG_HID_CYPRESS=m +CONFIG_HID_DRAGONRISE=m +CONFIG_HID_ELECOM=m +CONFIG_HID_ELO=m +CONFIG_HID_EMS_FF=m +CONFIG_HID_EZKEY=m +CONFIG_HID_GENERIC=m +CONFIG_HID_GREENASIA=m +CONFIG_HID_GYRATION=m +CONFIG_HID_HOLTEK=m +CONFIG_HID_HUION=m +CONFIG_HID_HYPERV_MOUSE=m +CONFIG_HID_ICADE=m +CONFIG_HID_KENSINGTON=m +CONFIG_HID_KEYTOUCH=m +CONFIG_HID_KYE=m +CONFIG_HID_LCPOWER=m +CONFIG_HID_LENOVO_TPKBD=m +CONFIG_HID_LOGITECH=m +CONFIG_HID_LOGITECH_DJ=m +CONFIG_HID_MAGICMOUSE=m +CONFIG_HID_MICROSOFT=m +CONFIG_HID_MONTEREY=m +CONFIG_HID_MULTITOUCH=m +CONFIG_HID_NTRIG=m +CONFIG_HID_ORTEK=m +CONFIG_HID_PANTHERLORD=m +CONFIG_HID_PETALYNX=m +CONFIG_HID_PICOLCD=m +CONFIG_HID_PICOLCD_BACKLIGHT=y +CONFIG_HID_PICOLCD_CIR=y +CONFIG_HID_PICOLCD_FB=y +CONFIG_HID_PICOLCD_LCD=y +CONFIG_HID_PICOLCD_LEDS=y +CONFIG_HID_PID=y +CONFIG_HID_PRIMAX=m +CONFIG_HID_PRODIKEYS=m +CONFIG_HID_ROCCAT=m +CONFIG_HID_SAITEK=m +CONFIG_HID_SAMSUNG=m +CONFIG_HID_SENSOR_ACCEL_3D=m +CONFIG_HID_SENSOR_ALS=m +CONFIG_HID_SENSOR_GYRO_3D=m +CONFIG_HID_SENSOR_HUB=m +CONFIG_HID_SENSOR_IIO_COMMON=m +CONFIG_HID_SENSOR_IIO_TRIGGER=m +CONFIG_HID_SENSOR_MAGNETOMETER_3D=m +CONFIG_HID_SMARTJOYPLUS=m +CONFIG_HID_SONY=m +CONFIG_HID_SPEEDLINK=m +CONFIG_HID_STEELSERIES=m +CONFIG_HID_SUNPLUS=m +CONFIG_HID_THINGM=m +CONFIG_HID_THRUSTMASTER=m +CONFIG_HID_TIVO=m +CONFIG_HID_TOPSEED=m +CONFIG_HID_TWINHAN=m +CONFIG_HID_UCLOGIC=m +CONFIG_HID_WACOM=m +CONFIG_HID_WALTOP=m +CONFIG_HID_WIIMOTE=m +CONFIG_HID_XINMO=m +CONFIG_HID_ZEROPLUS=m +CONFIG_HID_ZYDACRON=m +CONFIG_HIGHMEM=y +# CONFIG_HIGHMEM4G is not set +CONFIG_HIGHMEM64G=y +CONFIG_HIGHPTE=y +CONFIG_HIGH_RES_TIMERS=y +# CONFIG_HIPPI is not set +CONFIG_HISAX_16_0=y +CONFIG_HISAX_16_3=y +CONFIG_HISAX_1TR6=y +CONFIG_HISAX_ASUSCOM=y +CONFIG_HISAX_AVM_A1=y +CONFIG_HISAX_AVM_A1_CS=m +CONFIG_HISAX_AVM_A1_PCMCIA=y +CONFIG_HISAX_BKM_A4T=y +# CONFIG_HISAX_DEBUG is not set +CONFIG_HISAX_DIEHLDIVA=y +CONFIG_HISAX_ELSA=y +CONFIG_HISAX_ELSA_CS=m +CONFIG_HISAX_ENTERNOW_PCI=y +CONFIG_HISAX_EURO=y +CONFIG_HISAX_FRITZPCI=y +CONFIG_HISAX_FRITZ_PCIPNP=m +CONFIG_HISAX_GAZEL=y +CONFIG_HISAX_HFC4S8S=m +CONFIG_HISAX_HFCS=y +CONFIG_HISAX_HFCUSB=m +CONFIG_HISAX_HFC_PCI=y +CONFIG_HISAX_HFC_SX=y +CONFIG_HISAX_HSTSAPHIR=y +CONFIG_HISAX_ISURF=y +CONFIG_HISAX_IX1MICROR2=y +CONFIG_HISAX_MAX_CARDS=8 +CONFIG_HISAX_MIC=y +CONFIG_HISAX_NETJET=y +CONFIG_HISAX_NETJET_U=y +CONFIG_HISAX_NI1=y +CONFIG_HISAX_NICCY=y +# CONFIG_HISAX_NO_KEYPAD is not set +# CONFIG_HISAX_NO_LLC is not set +# CONFIG_HISAX_NO_SENDCOMPLETE is not set +CONFIG_HISAX_S0BOX=y +CONFIG_HISAX_SCT_QUADRO=y +CONFIG_HISAX_SEDLBAUER=y +CONFIG_HISAX_SEDLBAUER_CS=m +CONFIG_HISAX_SPORTSTER=y +CONFIG_HISAX_ST5481=m +CONFIG_HISAX_TELEINT=y +CONFIG_HISAX_TELESPCI=y +CONFIG_HISAX_TELES_CS=m +CONFIG_HISAX_W6692=y +CONFIG_HMC6352=m +CONFIG_HOLTEK_FF=y +CONFIG_HOSTAP=m +CONFIG_HOSTAP_CS=m +CONFIG_HOSTAP_FIRMWARE=y +CONFIG_HOSTAP_FIRMWARE_NVRAM=y +CONFIG_HOSTAP_PCI=m +CONFIG_HOSTAP_PLX=m +CONFIG_HOSTESS_SV11=m +CONFIG_HOTPLUG_CPU=y +CONFIG_HOTPLUG_PCI=y +CONFIG_HOTPLUG_PCI_ACPI=y +CONFIG_HOTPLUG_PCI_ACPI_IBM=m +CONFIG_HOTPLUG_PCI_COMPAQ=m +CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM=y +CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m +CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m +CONFIG_HOTPLUG_PCI_IBM=m +CONFIG_HOTPLUG_PCI_PCIE=y +CONFIG_HOTPLUG_PCI_RPA=m +CONFIG_HOTPLUG_PCI_RPA_DLPAR=m +CONFIG_HP100=m +CONFIG_HPET=y +CONFIG_HPET_EMULATE_RTC=y +CONFIG_HPET_MMAP=y +CONFIG_HPET_MMAP_DEFAULT=y +CONFIG_HPET_TIMER=y +CONFIG_HPFS_FS=m +CONFIG_HPWDT_NMI_DECODING=y +CONFIG_HP_ACCEL=m +CONFIG_HP_ILO=m +CONFIG_HP_WATCHDOG=m +CONFIG_HP_WIRELESS=m +CONFIG_HP_WMI=m +CONFIG_HSI=m +CONFIG_HSI_BOARDINFO=y +CONFIG_HSI_CHAR=m +CONFIG_HSR=m +CONFIG_HTC_EGPIO=y +CONFIG_HTC_I2CPLD=y +CONFIG_HTC_PASIC3=m +CONFIG_HT_IRQ=y +CONFIG_HUGETLBFS=y +CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y +CONFIG_HVC_CONSOLE=y +# CONFIG_HVC_DCC is not set +CONFIG_HVC_DRIVER=y +CONFIG_HVC_IRQ=y +CONFIG_HVC_OPAL=y +CONFIG_HVC_RTAS=y +CONFIG_HVC_XEN=y +CONFIG_HVC_XEN_FRONTEND=y +CONFIG_HWMON=y +# CONFIG_HWMON_DEBUG_CHIP is not set +CONFIG_HWMON_VID=m +CONFIG_HWPOISON_INJECT=m +# CONFIG_HWSPINLOCK_OMAP is not set +CONFIG_HW_CONSOLE=y +CONFIG_HW_PERF_EVENTS=y +CONFIG_HW_RANDOM=y +CONFIG_HW_RANDOM_AMD=m +# CONFIG_HW_RANDOM_EXYNOS is not set +CONFIG_HW_RANDOM_GEODE=m +CONFIG_HW_RANDOM_INTEL=m +CONFIG_HW_RANDOM_OMAP=m +CONFIG_HW_RANDOM_OMAP3_ROM=m +CONFIG_HW_RANDOM_PASEMI=y +CONFIG_HW_RANDOM_PSERIES=m +CONFIG_HW_RANDOM_TIMERIOMEM=m +CONFIG_HW_RANDOM_TPM=m +CONFIG_HW_RANDOM_VIA=m +CONFIG_HW_RANDOM_VIRTIO=m +CONFIG_HYPERV=m +CONFIG_HYPERVISOR_GUEST=y +CONFIG_HYPERV_BALLOON=m +CONFIG_HYPERV_KEYBOARD=m +CONFIG_HYPERV_NET=m +CONFIG_HYPERV_STORAGE=m +CONFIG_HYPERV_UTILS=m +CONFIG_HYSDN=m +CONFIG_HYSDN_CAPI=y +# CONFIG_HZ_200 is not set +# CONFIG_HZ_300 is not set +# CONFIG_HZ_500 is not set +CONFIG_HZ_FIXED=0 +# CONFIG_HZ_PERIODIC is not set +CONFIG_I2C=y +CONFIG_I2C_ALGOPCA=m +CONFIG_I2C_ALI1535=m +CONFIG_I2C_ALI1563=m +CONFIG_I2C_ALI15X3=m +CONFIG_I2C_AMD756=m +CONFIG_I2C_AMD756_S4882=m +CONFIG_I2C_AMD8111=m +CONFIG_I2C_ARB_GPIO_CHALLENGE=m +CONFIG_I2C_BOARDINFO=y +CONFIG_I2C_CBUS_GPIO=m +CONFIG_I2C_CHARDEV=m +CONFIG_I2C_COMPAT=y +CONFIG_I2C_CPM=m +# CONFIG_I2C_DEBUG_ALGO is not set +# CONFIG_I2C_DEBUG_BUS is not set +# CONFIG_I2C_DEBUG_CORE is not set +CONFIG_I2C_DESIGNWARE_CORE=m +CONFIG_I2C_DESIGNWARE_PCI=m +CONFIG_I2C_DESIGNWARE_PLATFORM=m +CONFIG_I2C_DIOLAN_U2C=m +CONFIG_I2C_EG20T=m +CONFIG_I2C_GPIO=m +CONFIG_I2C_HELPER_AUTO=y +CONFIG_I2C_HID=m +CONFIG_I2C_HYDRA=m +CONFIG_I2C_I801=m +CONFIG_I2C_IMX=y +CONFIG_I2C_ISCH=m +CONFIG_I2C_ISMT=m +CONFIG_I2C_KEMPLD=m +CONFIG_I2C_MPC=m +CONFIG_I2C_MUX=m +CONFIG_I2C_MUX_GPIO=m +CONFIG_I2C_MUX_PCA9541=m +CONFIG_I2C_MUX_PCA954x=m +CONFIG_I2C_MUX_PINCTRL=m +CONFIG_I2C_NFORCE2=m +CONFIG_I2C_NFORCE2_S4985=m +CONFIG_I2C_NOMADIK=m +CONFIG_I2C_OCORES=m +CONFIG_I2C_OMAP=y +CONFIG_I2C_PARPORT=m +CONFIG_I2C_PARPORT_LIGHT=m +CONFIG_I2C_PASEMI=m +CONFIG_I2C_PCA_ISA=m +CONFIG_I2C_PCA_PLATFORM=m +CONFIG_I2C_PIIX4=m +CONFIG_I2C_POWERMAC=y +# CONFIG_I2C_PXA_PCI is not set +CONFIG_I2C_RCAR=m +CONFIG_I2C_SCMI=m +CONFIG_I2C_SH_MOBILE=m +CONFIG_I2C_SI470X=m +CONFIG_I2C_SI4713=m +CONFIG_I2C_SIMTEC=m +CONFIG_I2C_SIS5595=m +CONFIG_I2C_SIS630=m +CONFIG_I2C_SIS96X=m +CONFIG_I2C_SMBUS=m +CONFIG_I2C_STUB=m +CONFIG_I2C_TAOS_EVM=m +CONFIG_I2C_TEGRA=m +CONFIG_I2C_TINY_USB=m +CONFIG_I2C_VERSATILE=m +CONFIG_I2C_VIA=m +CONFIG_I2C_VIAPRO=m +CONFIG_I2C_VIPERBOARD=m +CONFIG_I2C_XILINX=m +CONFIG_I2O=m +CONFIG_I2O_BLOCK=m +CONFIG_I2O_BUS=m +CONFIG_I2O_CONFIG=m +# CONFIG_I2O_CONFIG_OLD_IOCTL is not set +CONFIG_I2O_EXT_ADAPTEC=y +CONFIG_I2O_EXT_ADAPTEC_DMA64=y +CONFIG_I2O_LCT_NOTIFY_ON_CHANGES=y +CONFIG_I2O_PROC=m +CONFIG_I2O_SCSI=m +CONFIG_I40E=m +CONFIG_I6300ESB_WDT=m +CONFIG_I7300_IDLE=m +CONFIG_I7300_IDLE_IOAT_CHANNEL=y +CONFIG_I82092=m +CONFIG_I82365=m +CONFIG_I8253_LOCK=y +CONFIG_I8K=m +# CONFIG_IA32_AOUT is not set +CONFIG_IA32_EMULATION=y +CONFIG_IB700_WDT=m +CONFIG_IBMASR=m +CONFIG_IBMVIO=y +CONFIG_IBM_ASM=m +CONFIG_IBM_BSR=m +# CONFIG_IBM_EMAC_EMAC4 is not set +# CONFIG_IBM_EMAC_MAL_CLR_ICINTSTAT is not set +# CONFIG_IBM_EMAC_MAL_COMMON_ERR is not set +# CONFIG_IBM_EMAC_NO_FLOW_CTRL is not set +# CONFIG_IBM_EMAC_RGMII is not set +# CONFIG_IBM_EMAC_TAH is not set +# CONFIG_IBM_EMAC_ZMII is not set +CONFIG_IBM_RTL=m +CONFIG_ICPLUS_PHY=y +CONFIG_ICS932S401=m +CONFIG_ICST=y +CONFIG_IDEAPAD_LAPTOP=m +CONFIG_IDEPCI_PCIBUS_ORDER=y +CONFIG_IDE_ATAPI=y +CONFIG_IDE_GD=y +CONFIG_IDE_GD_ATA=y +# CONFIG_IDE_GD_ATAPI is not set +CONFIG_IDE_PHISON=m +CONFIG_IDE_PROC_FS=y +# CONFIG_IDE_TASK_IOCTL is not set +CONFIG_IDE_TIMINGS=y +CONFIG_IDE_XFER_MODE=y +CONFIG_IE6XX_WDT=m +CONFIG_IEEE802154=m +CONFIG_IEEE802154_6LOWPAN=m +CONFIG_IEEE802154_AT86RF230=m +CONFIG_IEEE802154_DRIVERS=m +# CONFIG_IEEE802154_FAKEHARD is not set +CONFIG_IEEE802154_FAKELB=m +CONFIG_IEEE802154_MRF24J40=m +CONFIG_IFB=m +CONFIG_IGB=m +CONFIG_IGBVF=m +CONFIG_IGB_DCA=y +CONFIG_IGB_HWMON=y +CONFIG_IIO=m +CONFIG_IIO_ADIS_LIB=m +CONFIG_IIO_ADIS_LIB_BUFFER=y +CONFIG_IIO_BUFFER=y +CONFIG_IIO_BUFFER_CB=y +CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 +CONFIG_IIO_INTERRUPT_TRIGGER=m +CONFIG_IIO_KFIFO_BUF=m +CONFIG_IIO_PERIODIC_RTC_TRIGGER=m +CONFIG_IIO_SIMPLE_DUMMY=m +# CONFIG_IIO_SIMPLE_DUMMY_BUFFER is not set +# CONFIG_IIO_SIMPLE_DUMMY_EVENTS is not set +CONFIG_IIO_ST_ACCEL_3AXIS=m +CONFIG_IIO_ST_ACCEL_I2C_3AXIS=m +CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m +CONFIG_IIO_ST_GYRO_3AXIS=m +CONFIG_IIO_ST_GYRO_I2C_3AXIS=m +CONFIG_IIO_ST_GYRO_SPI_3AXIS=m +CONFIG_IIO_ST_MAGN_3AXIS=m +CONFIG_IIO_ST_MAGN_I2C_3AXIS=m +CONFIG_IIO_ST_MAGN_SPI_3AXIS=m +CONFIG_IIO_ST_PRESS=m +CONFIG_IIO_ST_PRESS_I2C=m +CONFIG_IIO_ST_PRESS_SPI=m +CONFIG_IIO_ST_SENSORS_CORE=m +CONFIG_IIO_ST_SENSORS_I2C=m +CONFIG_IIO_ST_SENSORS_SPI=m +CONFIG_IIO_SYSFS_TRIGGER=m +CONFIG_IIO_TRIGGER=y +CONFIG_IIO_TRIGGERED_BUFFER=m +CONFIG_IKCONFIG_PROC=y +CONFIG_IMA_APPRAISE=y +CONFIG_IMA_DEFAULT_HASH="sha1" +CONFIG_IMA_DEFAULT_HASH_SHA1=y +# CONFIG_IMA_DEFAULT_HASH_SHA256 is not set +# CONFIG_IMA_DEFAULT_HASH_SHA512 is not set +# CONFIG_IMA_DEFAULT_HASH_WP512 is not set +CONFIG_IMA_DEFAULT_TEMPLATE="ima-ng" +CONFIG_IMA_LSM_RULES=y +CONFIG_IMA_MEASURE_PCR_IDX=10 +CONFIG_IMA_NG_TEMPLATE=y +# CONFIG_IMA_SIG_TEMPLATE is not set +# CONFIG_IMA_TEMPLATE is not set +# CONFIG_IMX2_WDT is not set +# CONFIG_IMX_DMA is not set +# CONFIG_IMX_SDMA is not set +CONFIG_IMX_THERMAL=m +CONFIG_IMX_WEIM=y +CONFIG_INET=y +CONFIG_INET6_AH=m +CONFIG_INET6_ESP=m +CONFIG_INET6_IPCOMP=m +CONFIG_INET6_TUNNEL=m +CONFIG_INET6_XFRM_MODE_BEET=m +CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m +CONFIG_INET6_XFRM_MODE_TRANSPORT=m +CONFIG_INET6_XFRM_MODE_TUNNEL=m +CONFIG_INET6_XFRM_TUNNEL=m +CONFIG_INET_AH=m +CONFIG_INET_DCCP_DIAG=m +CONFIG_INET_DIAG=m +CONFIG_INET_ESP=m +CONFIG_INET_IPCOMP=m +CONFIG_INET_LRO=y +CONFIG_INET_TCP_DIAG=m +CONFIG_INET_TUNNEL=m +CONFIG_INET_UDP_DIAG=m +CONFIG_INET_XFRM_MODE_BEET=m +CONFIG_INET_XFRM_MODE_TRANSPORT=m +CONFIG_INET_XFRM_MODE_TUNNEL=m +CONFIG_INET_XFRM_TUNNEL=m +CONFIG_INFINIBAND=m +CONFIG_INFINIBAND_ADDR_TRANS=y +# CONFIG_INFINIBAND_AMSO1100_DEBUG is not set +CONFIG_INFINIBAND_CXGB3=m +# CONFIG_INFINIBAND_CXGB3_DEBUG is not set +CONFIG_INFINIBAND_CXGB4=m +CONFIG_INFINIBAND_EHCA=m +CONFIG_INFINIBAND_IPATH=m +CONFIG_INFINIBAND_IPOIB=m +CONFIG_INFINIBAND_IPOIB_CM=y +# CONFIG_INFINIBAND_IPOIB_DEBUG is not set +CONFIG_INFINIBAND_ISER=m +CONFIG_INFINIBAND_ISERT=m +CONFIG_INFINIBAND_MTHCA=m +# CONFIG_INFINIBAND_MTHCA_DEBUG is not set +CONFIG_INFINIBAND_NES=m +# CONFIG_INFINIBAND_NES_DEBUG is not set +CONFIG_INFINIBAND_OCRDMA=m +CONFIG_INFINIBAND_QIB=m +CONFIG_INFINIBAND_QIB_DCA=y +CONFIG_INFINIBAND_SRP=m +CONFIG_INFINIBAND_SRPT=m +CONFIG_INFINIBAND_USER_ACCESS=m +CONFIG_INFINIBAND_USER_MAD=m +CONFIG_INFINIBAND_USER_MEM=y +CONFIG_INFINIBAND_USNIC=m +CONFIG_INFTL=m +CONFIG_INITRAMFS_SOURCE="" +CONFIG_INIT_ENV_ARG_LIMIT=32 +CONFIG_INLINE_READ_UNLOCK=y +CONFIG_INLINE_READ_UNLOCK_IRQ=y +CONFIG_INLINE_SPIN_UNLOCK_IRQ=y +CONFIG_INLINE_WRITE_UNLOCK=y +CONFIG_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_INOTIFY_USER=y +CONFIG_INPUT=y +CONFIG_INPUT_88PM80X_ONKEY=m +CONFIG_INPUT_88PM860X_ONKEY=m +CONFIG_INPUT_AD714X=m +CONFIG_INPUT_AD714X_I2C=m +CONFIG_INPUT_AD714X_SPI=m +CONFIG_INPUT_ADBHID=y +CONFIG_INPUT_ADXL34X=m +CONFIG_INPUT_ADXL34X_I2C=m +CONFIG_INPUT_ADXL34X_SPI=m +CONFIG_INPUT_APANEL=m +CONFIG_INPUT_APMPOWER=m +CONFIG_INPUT_ARIZONA_HAPTICS=m +CONFIG_INPUT_ATI_REMOTE2=m +CONFIG_INPUT_ATLAS_BTNS=m +CONFIG_INPUT_BMA150=m +CONFIG_INPUT_CM109=m +CONFIG_INPUT_CMA3000=m +CONFIG_INPUT_CMA3000_I2C=m +CONFIG_INPUT_DA9052_ONKEY=m +CONFIG_INPUT_DA9055_ONKEY=m +CONFIG_INPUT_EVBUG=m +CONFIG_INPUT_EVDEV=y +CONFIG_INPUT_FF_MEMLESS=m +CONFIG_INPUT_GP2A=m +CONFIG_INPUT_GPIO_ROTARY_ENCODER=m +CONFIG_INPUT_GPIO_TILT_POLLED=m +CONFIG_INPUT_IMS_PCU=m +CONFIG_INPUT_JOYDEV=m +CONFIG_INPUT_JOYSTICK=y +CONFIG_INPUT_KEYBOARD=y +CONFIG_INPUT_KEYSPAN_REMOTE=m +CONFIG_INPUT_KXTJ9=m +# CONFIG_INPUT_KXTJ9_POLLED_MODE is not set +CONFIG_INPUT_MATRIXKMAP=m +CONFIG_INPUT_MAX8925_ONKEY=m +CONFIG_INPUT_MC13783_PWRBUTTON=m +CONFIG_INPUT_MISC=y +CONFIG_INPUT_MMA8450=m +CONFIG_INPUT_MOUSE=y +CONFIG_INPUT_MOUSEDEV=y +CONFIG_INPUT_MOUSEDEV_PSAUX=y +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +CONFIG_INPUT_MPU3050=m +CONFIG_INPUT_PCAP=m +CONFIG_INPUT_PCF50633_PMU=m +CONFIG_INPUT_PCF8574=m +CONFIG_INPUT_PCSPKR=m +CONFIG_INPUT_POLLDEV=m +CONFIG_INPUT_POWERMATE=m +CONFIG_INPUT_RETU_PWRBUTTON=m +CONFIG_INPUT_SPARSEKMAP=m +CONFIG_INPUT_TABLET=y +CONFIG_INPUT_TOUCHSCREEN=y +CONFIG_INPUT_TWL4030_PWRBUTTON=m +CONFIG_INPUT_TWL4030_VIBRA=m +CONFIG_INPUT_TWL6040_VIBRA=m +CONFIG_INPUT_UINPUT=y +CONFIG_INPUT_WISTRON_BTNS=m +CONFIG_INPUT_WM831X_ON=m +CONFIG_INPUT_XEN_KBDDEV_FRONTEND=m +CONFIG_INPUT_YEALINK=m +CONFIG_INSTRUCTION_DECODER=y +CONFIG_INTEGRITY=y +CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y +CONFIG_INTEGRITY_AUDIT=y +CONFIG_INTEGRITY_SIGNATURE=y +CONFIG_INTEL_IDLE=y +CONFIG_INTEL_IOATDMA=m +CONFIG_INTEL_IOMMU=y +# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set +CONFIG_INTEL_IOMMU_FLOPPY_WA=y +CONFIG_INTEL_IPS=m +CONFIG_INTEL_MEI=m +CONFIG_INTEL_MEI_ME=m +CONFIG_INTEL_MENLOW=m +CONFIG_INTEL_MFLD_THERMAL=m +CONFIG_INTEL_MIC_CARD=m +CONFIG_INTEL_MIC_HOST=m +CONFIG_INTEL_MID_DMAC=m +CONFIG_INTEL_MID_POWER_BUTTON=m +CONFIG_INTEL_MID_PTI=m +CONFIG_INTEL_OAKTRAIL=m +CONFIG_INTEL_POWERCLAMP=m +CONFIG_INTEL_RAPL=m +CONFIG_INTEL_RST=m +CONFIG_INTEL_SCU_IPC=y +CONFIG_INTEL_SCU_IPC_UTIL=m +CONFIG_INTEL_SCU_WATCHDOG=y +CONFIG_INTEL_SMARTCONNECT=m +CONFIG_INTEL_TXT=y +CONFIG_INTERVAL_TREE_TEST=m +CONFIG_INV_MPU6050_IIO=m +CONFIG_IOMMU_API=y +# CONFIG_IOMMU_DEBUG is not set +CONFIG_IOMMU_HELPER=y +# CONFIG_IOMMU_STRESS is not set +CONFIG_IOSCHED_CFQ=y +CONFIG_IOSCHED_DEADLINE=y +CONFIG_IOSCHED_NOOP=y +# CONFIG_IO_DELAY_0X80 is not set +CONFIG_IO_DELAY_0XED=y +# CONFIG_IO_DELAY_NONE is not set +CONFIG_IO_DELAY_TYPE_0X80=0 +CONFIG_IO_DELAY_TYPE_0XED=1 +CONFIG_IO_DELAY_TYPE_NONE=3 +CONFIG_IO_DELAY_TYPE_UDELAY=2 +# CONFIG_IO_DELAY_UDELAY is not set +CONFIG_IO_EVENT_IRQ=y +CONFIG_IP1000=m +CONFIG_IP6_NF_FILTER=m +CONFIG_IP6_NF_IPTABLES=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_IP6_NF_MATCH_AH=m +CONFIG_IP6_NF_MATCH_EUI64=m +CONFIG_IP6_NF_MATCH_FRAG=m +CONFIG_IP6_NF_MATCH_HL=m +CONFIG_IP6_NF_MATCH_IPV6HEADER=m +CONFIG_IP6_NF_MATCH_MH=m +CONFIG_IP6_NF_MATCH_OPTS=m +CONFIG_IP6_NF_MATCH_RPFILTER=m +CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_RAW=m +CONFIG_IP6_NF_SECURITY=m +CONFIG_IP6_NF_TARGET_HL=m +CONFIG_IP6_NF_TARGET_MASQUERADE=m +CONFIG_IP6_NF_TARGET_NPT=m +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_TARGET_SYNPROXY=m +CONFIG_IPACK_BUS=m +CONFIG_IPC_NS=y +CONFIG_IPDDP=m +CONFIG_IPDDP_ENCAP=y +# CONFIG_IPIC is not set +CONFIG_IPMI_DEVICE_INTERFACE=m +CONFIG_IPMI_HANDLER=y +# CONFIG_IPMI_PANIC_EVENT is not set +CONFIG_IPMI_POWEROFF=m +CONFIG_IPMI_SI=m +CONFIG_IPMI_WATCHDOG=m +CONFIG_IPPP_FILTER=y +CONFIG_IPV6=y +CONFIG_IPV6_GRE=m +CONFIG_IPV6_MIP6=m +CONFIG_IPV6_MROUTE=y +CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y +CONFIG_IPV6_MULTIPLE_TABLES=y +CONFIG_IPV6_NDISC_NODETYPE=y +# CONFIG_IPV6_OPTIMISTIC_DAD is not set +CONFIG_IPV6_PIMSM_V2=y +CONFIG_IPV6_ROUTER_PREF=y +CONFIG_IPV6_ROUTE_INFO=y +CONFIG_IPV6_SIT=m +CONFIG_IPV6_SIT_6RD=y +CONFIG_IPV6_SUBTREES=y +CONFIG_IPV6_TUNNEL=m +CONFIG_IPV6_VTI=m +CONFIG_IPW2100=m +# CONFIG_IPW2100_DEBUG is not set +CONFIG_IPW2100_MONITOR=y +CONFIG_IPW2200=m +# CONFIG_IPW2200_DEBUG is not set +CONFIG_IPW2200_MONITOR=y +CONFIG_IPW2200_PROMISCUOUS=y +CONFIG_IPW2200_QOS=y +CONFIG_IPW2200_RADIOTAP=y +CONFIG_IPWIRELESS=m +CONFIG_IPX=m +# CONFIG_IPX_INTERN is not set +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_IP_DCCP=m +# CONFIG_IP_DCCP_CCID2_DEBUG is not set +# CONFIG_IP_DCCP_CCID3 is not set +# CONFIG_IP_DCCP_DEBUG is not set +CONFIG_IP_FIB_TRIE_STATS=y +CONFIG_IP_MROUTE=y +# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set +CONFIG_IP_MULTICAST=y +CONFIG_IP_MULTIPLE_TABLES=y +CONFIG_IP_NF_ARPFILTER=m +CONFIG_IP_NF_ARPTABLES=m +CONFIG_IP_NF_ARP_MANGLE=m +CONFIG_IP_NF_FILTER=m +CONFIG_IP_NF_IPTABLES=m +CONFIG_IP_NF_MANGLE=m +CONFIG_IP_NF_MATCH_AH=m +CONFIG_IP_NF_MATCH_ECN=m +CONFIG_IP_NF_MATCH_RPFILTER=m +CONFIG_IP_NF_MATCH_TTL=m +CONFIG_IP_NF_RAW=m +CONFIG_IP_NF_SECURITY=m +CONFIG_IP_NF_TARGET_CLUSTERIP=m +CONFIG_IP_NF_TARGET_ECN=m +CONFIG_IP_NF_TARGET_MASQUERADE=m +CONFIG_IP_NF_TARGET_NETMAP=m +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_TARGET_REJECT=m +CONFIG_IP_NF_TARGET_SYNPROXY=m +CONFIG_IP_NF_TARGET_TTL=m +CONFIG_IP_NF_TARGET_ULOG=m +CONFIG_IP_PIMSM_V1=y +CONFIG_IP_PIMSM_V2=y +CONFIG_IP_PNP=y +# CONFIG_IP_PNP_BOOTP is not set +CONFIG_IP_PNP_DHCP=y +# CONFIG_IP_PNP_RARP is not set +CONFIG_IP_ROUTE_CLASSID=y +CONFIG_IP_ROUTE_MULTIPATH=y +CONFIG_IP_ROUTE_VERBOSE=y +CONFIG_IP_SCTP=m +CONFIG_IP_SET=m +CONFIG_IP_SET_BITMAP_IP=m +CONFIG_IP_SET_BITMAP_IPMAC=m +CONFIG_IP_SET_BITMAP_PORT=m +CONFIG_IP_SET_HASH_IP=m +CONFIG_IP_SET_HASH_IPPORT=m +CONFIG_IP_SET_HASH_IPPORTIP=m +CONFIG_IP_SET_HASH_IPPORTNET=m +CONFIG_IP_SET_HASH_NET=m +CONFIG_IP_SET_HASH_NETIFACE=m +CONFIG_IP_SET_HASH_NETNET=m +CONFIG_IP_SET_HASH_NETPORT=m +CONFIG_IP_SET_HASH_NETPORTNET=m +CONFIG_IP_SET_LIST_SET=m +CONFIG_IP_SET_MAX=256 +CONFIG_IP_VS=m +# CONFIG_IP_VS_DEBUG is not set +CONFIG_IP_VS_DH=m +CONFIG_IP_VS_FTP=m +# CONFIG_IP_VS_IPV6 is not set +CONFIG_IP_VS_LBLC=m +CONFIG_IP_VS_LBLCR=m +CONFIG_IP_VS_LC=m +CONFIG_IP_VS_NFCT=y +CONFIG_IP_VS_NQ=m +CONFIG_IP_VS_PE_SIP=m +CONFIG_IP_VS_PROTO_AH=y +CONFIG_IP_VS_PROTO_AH_ESP=y +CONFIG_IP_VS_PROTO_ESP=y +CONFIG_IP_VS_PROTO_SCTP=y +CONFIG_IP_VS_PROTO_TCP=y +CONFIG_IP_VS_PROTO_UDP=y +CONFIG_IP_VS_RR=m +CONFIG_IP_VS_SED=m +CONFIG_IP_VS_SH=m +CONFIG_IP_VS_SH_TAB_BITS=8 +CONFIG_IP_VS_TAB_BITS=12 +CONFIG_IP_VS_WLC=m +CONFIG_IP_VS_WRR=m +CONFIG_IRCOMM=m +CONFIG_IRDA=m +CONFIG_IRDA_CACHE_LAST_LSAP=y +# CONFIG_IRDA_DEBUG is not set +CONFIG_IRDA_FAST_RR=y +CONFIG_IRDA_ULTRA=y +CONFIG_IRLAN=m +CONFIG_IRNET=m +CONFIG_IRQCHIP=y +# CONFIG_IRQSOFF_TRACER is not set +CONFIG_IRQ_DOMAIN=y +CONFIG_IRQ_FORCED_THREADING=y +CONFIG_IRQ_REMAP=y +# CONFIG_IRQ_TIME_ACCOUNTING is not set +CONFIG_IRQ_WORK=y +CONFIG_IRTTY_SIR=m +CONFIG_IR_ENE=m +CONFIG_IR_FINTEK=m +CONFIG_IR_GPIO_CIR=m +CONFIG_IR_IGUANA=m +CONFIG_IR_IMON=m +CONFIG_IR_ITE_CIR=m +CONFIG_IR_JVC_DECODER=m +CONFIG_IR_LIRC_CODEC=m +CONFIG_IR_MCEUSB=m +CONFIG_IR_MCE_KBD_DECODER=m +CONFIG_IR_NEC_DECODER=m +CONFIG_IR_NUVOTON=m +CONFIG_IR_RC5_DECODER=m +CONFIG_IR_RC5_SZ_DECODER=m +CONFIG_IR_RC6_DECODER=m +CONFIG_IR_REDRAT3=m +CONFIG_IR_SANYO_DECODER=m +CONFIG_IR_SONY_DECODER=m +CONFIG_IR_STREAMZAP=m +CONFIG_IR_TTUSBIR=m +CONFIG_IR_WINBOND_CIR=m +CONFIG_ISAPNP=y +CONFIG_ISA_DMA_API=y +CONFIG_ISCSI_BOOT_SYSFS=m +CONFIG_ISCSI_IBFT=m +CONFIG_ISCSI_IBFT_FIND=y +CONFIG_ISCSI_TARGET=m +CONFIG_ISCSI_TCP=m +CONFIG_ISDN=y +CONFIG_ISDN_AUDIO=y +CONFIG_ISDN_CAPI=m +CONFIG_ISDN_CAPI_CAPI20=m +CONFIG_ISDN_CAPI_CAPIDRV=m +CONFIG_ISDN_CAPI_MIDDLEWARE=y +CONFIG_ISDN_DIVAS=m +CONFIG_ISDN_DIVAS_BRIPCI=y +CONFIG_ISDN_DIVAS_DIVACAPI=m +CONFIG_ISDN_DIVAS_MAINT=m +CONFIG_ISDN_DIVAS_PRIPCI=y +CONFIG_ISDN_DIVAS_USERIDI=m +CONFIG_ISDN_DIVERSION=m +CONFIG_ISDN_DRV_ACT2000=m +CONFIG_ISDN_DRV_AVMB1_AVM_CS=m +CONFIG_ISDN_DRV_AVMB1_B1ISA=m +CONFIG_ISDN_DRV_AVMB1_B1PCI=m +CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y +CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m +CONFIG_ISDN_DRV_AVMB1_C4=m +CONFIG_ISDN_DRV_AVMB1_T1ISA=m +CONFIG_ISDN_DRV_AVMB1_T1PCI=m +CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y +CONFIG_ISDN_DRV_GIGASET=m +CONFIG_ISDN_DRV_HISAX=m +CONFIG_ISDN_DRV_ICN=m +CONFIG_ISDN_DRV_PCBIT=m +CONFIG_ISDN_DRV_SC=m +CONFIG_ISDN_HDLC=m +CONFIG_ISDN_I4L=m +CONFIG_ISDN_MPP=y +CONFIG_ISDN_PPP=y +CONFIG_ISDN_PPP_BSDCOMP=m +CONFIG_ISDN_PPP_VJ=y +CONFIG_ISDN_TTY_FAX=y +CONFIG_ISDN_X25=y +CONFIG_ISI=m +CONFIG_ISL29003=m +CONFIG_ISL29020=m +CONFIG_ISO9660_FS=m +CONFIG_IT8712F_WDT=m +CONFIG_IT87_WDT=m +CONFIG_ITCO_VENDOR_SUPPORT=y +CONFIG_ITCO_WDT=m +CONFIG_ITG3200=m +CONFIG_IWL3945=m +CONFIG_IWL4965=m +CONFIG_IWLDVM=m +CONFIG_IWLEGACY=m +# CONFIG_IWLEGACY_DEBUG is not set +CONFIG_IWLEGACY_DEBUGFS=y +CONFIG_IWLMVM=m +CONFIG_IWLWIFI=m +# CONFIG_IWLWIFI_DEBUG is not set +CONFIG_IWLWIFI_DEBUGFS=y +CONFIG_IWLWIFI_DEVICE_TRACING=y +CONFIG_IWLWIFI_OPMODE_MODULAR=y +CONFIG_IXGB=m +CONFIG_IXGBE=m +CONFIG_IXGBEVF=m +CONFIG_IXGBE_DCA=y +CONFIG_IXGBE_DCB=y +CONFIG_IXGBE_HWMON=y +CONFIG_JBD2=y +# CONFIG_JBD2_DEBUG is not set +CONFIG_JFFS2_CMODE_FAVOURLZO=y +# CONFIG_JFFS2_CMODE_NONE is not set +# CONFIG_JFFS2_CMODE_PRIORITY is not set +# CONFIG_JFFS2_CMODE_SIZE is not set +CONFIG_JFFS2_COMPRESSION_OPTIONS=y +CONFIG_JFFS2_FS=m +CONFIG_JFFS2_FS_DEBUG=0 +# CONFIG_JFFS2_FS_WBUF_VERIFY is not set +CONFIG_JFFS2_FS_WRITEBUFFER=y +# CONFIG_JFFS2_FS_XATTR is not set +CONFIG_JFFS2_LZO=y +CONFIG_JFFS2_RTIME=y +# CONFIG_JFFS2_RUBIN is not set +# CONFIG_JFFS2_SUMMARY is not set +CONFIG_JFFS2_ZLIB=y +# CONFIG_JFS_DEBUG is not set +CONFIG_JFS_FS=m +CONFIG_JFS_POSIX_ACL=y +CONFIG_JFS_SECURITY=y +CONFIG_JFS_STATISTICS=y +CONFIG_JME=m +CONFIG_JOLIET=y +CONFIG_JOYSTICK_A3D=m +CONFIG_JOYSTICK_ADI=m +CONFIG_JOYSTICK_ANALOG=m +CONFIG_JOYSTICK_AS5011=m +CONFIG_JOYSTICK_COBRA=m +CONFIG_JOYSTICK_DB9=m +CONFIG_JOYSTICK_GAMECON=m +CONFIG_JOYSTICK_GF2K=m +CONFIG_JOYSTICK_GRIP=m +CONFIG_JOYSTICK_GRIP_MP=m +CONFIG_JOYSTICK_GUILLEMOT=m +CONFIG_JOYSTICK_IFORCE=m +CONFIG_JOYSTICK_IFORCE_232=y +CONFIG_JOYSTICK_IFORCE_USB=y +CONFIG_JOYSTICK_INTERACT=m +CONFIG_JOYSTICK_JOYDUMP=m +CONFIG_JOYSTICK_MAGELLAN=m +CONFIG_JOYSTICK_SIDEWINDER=m +CONFIG_JOYSTICK_SPACEBALL=m +CONFIG_JOYSTICK_SPACEORB=m +CONFIG_JOYSTICK_STINGER=m +CONFIG_JOYSTICK_TMDC=m +CONFIG_JOYSTICK_TURBOGRAFX=m +CONFIG_JOYSTICK_TWIDJOY=m +CONFIG_JOYSTICK_WALKERA0701=m +CONFIG_JOYSTICK_WARRIOR=m +CONFIG_JOYSTICK_XPAD=m +CONFIG_JOYSTICK_XPAD_FF=y +CONFIG_JOYSTICK_XPAD_LEDS=y +CONFIG_JOYSTICK_ZHENHUA=m +CONFIG_JUMP_LABEL=y +CONFIG_KALLSYMS=y +CONFIG_KALLSYMS_ALL=y +CONFIG_KARMA_PARTITION=y +CONFIG_KDB_CONTINUE_CATASTROPHIC=0 +CONFIG_KDB_KEYBOARD=y +CONFIG_KEMPLD_WDT=m +# CONFIG_KERNEL_BZIP2 is not set +CONFIG_KERNEL_GZIP=y +# CONFIG_KERNEL_LZ4 is not set +# CONFIG_KERNEL_LZMA is not set +# CONFIG_KERNEL_LZO is not set +CONFIG_KERNEL_MODE_NEON=y +# CONFIG_KERNEL_XZ is not set +CONFIG_KEXEC=y +CONFIG_KEXEC_JUMP=y +CONFIG_KEYBOARD_ADP5520=m +CONFIG_KEYBOARD_ADP5588=m +CONFIG_KEYBOARD_ADP5589=m +CONFIG_KEYBOARD_ATKBD=y +CONFIG_KEYBOARD_CROS_EC=m +CONFIG_KEYBOARD_GPIO=m +CONFIG_KEYBOARD_GPIO_POLLED=m +# CONFIG_KEYBOARD_IMX is not set +CONFIG_KEYBOARD_LKKBD=m +CONFIG_KEYBOARD_LM8323=m +CONFIG_KEYBOARD_LM8333=m +CONFIG_KEYBOARD_MATRIX=m +CONFIG_KEYBOARD_MAX7359=m +CONFIG_KEYBOARD_MCS=m +CONFIG_KEYBOARD_MPR121=m +CONFIG_KEYBOARD_NEWTON=m +CONFIG_KEYBOARD_NVEC=m +CONFIG_KEYBOARD_OMAP4=m +CONFIG_KEYBOARD_OPENCORES=m +CONFIG_KEYBOARD_QT1070=m +CONFIG_KEYBOARD_QT2160=m +CONFIG_KEYBOARD_SAMSUNG=m +CONFIG_KEYBOARD_SH_KEYSC=m +CONFIG_KEYBOARD_STMPE=m +CONFIG_KEYBOARD_STOWAWAY=m +CONFIG_KEYBOARD_SUNKBD=m +CONFIG_KEYBOARD_TC3589X=m +CONFIG_KEYBOARD_TCA6416=m +CONFIG_KEYBOARD_TCA8418=m +CONFIG_KEYBOARD_TEGRA=m +CONFIG_KEYBOARD_TWL4030=m +CONFIG_KEYBOARD_XTKBD=m +CONFIG_KEYS=y +CONFIG_KEYS_COMPAT=y +# CONFIG_KEYS_DEBUG_PROC_KEYS is not set +CONFIG_KGDB=y +CONFIG_KGDB_KDB=y +CONFIG_KGDB_LOW_LEVEL_TRAP=y +CONFIG_KGDB_SERIAL_CONSOLE=y +# CONFIG_KGDB_TESTS is not set +CONFIG_KINGSUN_DONGLE=m +CONFIG_KPROBES=y +CONFIG_KPROBES_ON_FTRACE=y +# CONFIG_KPROBES_SANITY_TEST is not set +CONFIG_KPROBE_EVENT=y +CONFIG_KRETPROBES=y +CONFIG_KS0108=m +CONFIG_KS0108_DELAY=2 +CONFIG_KS0108_PORT=0x378 +CONFIG_KS8842=m +CONFIG_KS8851=m +CONFIG_KS8851_MLL=m +CONFIG_KS959_DONGLE=m +CONFIG_KSDAZZLE_DONGLE=m +CONFIG_KSZ884X_PCI=m +CONFIG_KTIME_SCALAR=y +CONFIG_KUSER_HELPERS=y +CONFIG_KVM_AMD=m +CONFIG_KVM_APIC_ARCHITECTURE=y +CONFIG_KVM_ARM_HOST=y +CONFIG_KVM_ARM_MAX_VCPUS=4 +CONFIG_KVM_ARM_TIMER=y +CONFIG_KVM_ARM_VGIC=y +CONFIG_KVM_ASYNC_PF=y +CONFIG_KVM_BOOK3S_64_HANDLER=y +# CONFIG_KVM_BOOK3S_64_HV is not set +CONFIG_KVM_BOOK3S_64_PR=m +CONFIG_KVM_BOOK3S_HANDLER=y +CONFIG_KVM_BOOK3S_PR_POSSIBLE=y +CONFIG_KVM_BOOKE_HV=y +CONFIG_KVM_DEBUG_FS=y +CONFIG_KVM_DEVICE_ASSIGNMENT=y +CONFIG_KVM_E500MC=y +# CONFIG_KVM_EXIT_TIMING is not set +CONFIG_KVM_GUEST=y +CONFIG_KVM_INTEL=m +CONFIG_KVM_MMIO=y +# CONFIG_KVM_MMU_AUDIT is not set +CONFIG_KVM_MPIC=y +CONFIG_KVM_VFIO=y +CONFIG_KVM_XICS=y +CONFIG_KXSD9=m +CONFIG_L2TP=m +CONFIG_L2TP_DEBUGFS=m +CONFIG_L2TP_ETH=m +CONFIG_L2TP_IP=m +CONFIG_L2TP_V3=y +CONFIG_LANCE=m +CONFIG_LANMEDIA=m +CONFIG_LAPB=m +CONFIG_LAPBETHER=m +CONFIG_LATENCYTOP=y +CONFIG_LATTICE_ECP3_CONFIG=m +CONFIG_LBDAF=y +CONFIG_LCD_AMS369FG06=m +CONFIG_LCD_CLASS_DEVICE=m +CONFIG_LCD_HX8357=m +CONFIG_LCD_ILI922X=m +CONFIG_LCD_ILI9320=m +CONFIG_LCD_L4F00242T03=m +CONFIG_LCD_LD9040=m +CONFIG_LCD_LMS283GF05=m +CONFIG_LCD_LMS501KF03=m +CONFIG_LCD_LTV350QV=m +CONFIG_LCD_PLATFORM=m +CONFIG_LCD_S6E63M0=m +CONFIG_LCD_TDO24M=m +CONFIG_LCD_VGG2432A4=m +# CONFIG_LDM_DEBUG is not set +CONFIG_LDM_PARTITION=y +CONFIG_LEDS_88PM860X=m +CONFIG_LEDS_ADP5520=m +CONFIG_LEDS_ASIC3=y +CONFIG_LEDS_ATMEL_PWM=m +CONFIG_LEDS_BD2802=m +CONFIG_LEDS_BLINKM=m +CONFIG_LEDS_CLASS=y +CONFIG_LEDS_CLEVO_MAIL=m +CONFIG_LEDS_DA903X=m +CONFIG_LEDS_DA9052=m +CONFIG_LEDS_DAC124S085=m +CONFIG_LEDS_DELL_NETBOOKS=m +CONFIG_LEDS_GPIO=m +CONFIG_LEDS_INTEL_SS4200=m +CONFIG_LEDS_LM3530=m +CONFIG_LEDS_LM3533=m +CONFIG_LEDS_LM355x=m +CONFIG_LEDS_LM3642=m +CONFIG_LEDS_LP3944=m +CONFIG_LEDS_LP5521=m +CONFIG_LEDS_LP5523=m +CONFIG_LEDS_LP5562=m +CONFIG_LEDS_LP55XX_COMMON=m +CONFIG_LEDS_LP8501=m +CONFIG_LEDS_LP8788=m +CONFIG_LEDS_LT3593=m +CONFIG_LEDS_MAX8997=m +CONFIG_LEDS_MC13783=m +CONFIG_LEDS_NET48XX=m +CONFIG_LEDS_OT200=m +CONFIG_LEDS_PCA9532=m +CONFIG_LEDS_PCA9532_GPIO=y +CONFIG_LEDS_PCA955X=m +CONFIG_LEDS_PCA963X=m +CONFIG_LEDS_PCA9685=m +CONFIG_LEDS_PWM=m +CONFIG_LEDS_REGULATOR=m +CONFIG_LEDS_TCA6507=m +CONFIG_LEDS_TRIGGERS=y +CONFIG_LEDS_TRIGGER_BACKLIGHT=m +CONFIG_LEDS_TRIGGER_CAMERA=m +CONFIG_LEDS_TRIGGER_CPU=y +CONFIG_LEDS_TRIGGER_DEFAULT_ON=m +CONFIG_LEDS_TRIGGER_GPIO=m +# CONFIG_LEDS_TRIGGER_IDE_DISK is not set +CONFIG_LEDS_TRIGGER_ONESHOT=m +CONFIG_LEDS_TRIGGER_TIMER=m +CONFIG_LEDS_TRIGGER_TRANSIENT=m +CONFIG_LEDS_WM831X_STATUS=m +CONFIG_LEDS_WM8350=m +CONFIG_LEDS_WRAP=m +CONFIG_LEGACY_PTYS=y +CONFIG_LEGACY_PTY_COUNT=0 +# CONFIG_LGUEST is not set +# CONFIG_LGUEST_GUEST is not set +CONFIG_LIB80211=m +CONFIG_LIB80211_CRYPT_CCMP=m +CONFIG_LIB80211_CRYPT_TKIP=m +CONFIG_LIB80211_CRYPT_WEP=m +# CONFIG_LIB80211_DEBUG is not set +CONFIG_LIBCRC32C=m +CONFIG_LIBERTAS=m +CONFIG_LIBERTAS_CS=m +# CONFIG_LIBERTAS_DEBUG is not set +CONFIG_LIBERTAS_SDIO=m +CONFIG_LIBERTAS_SPI=m +CONFIG_LIBERTAS_THINFIRM=m +# CONFIG_LIBERTAS_THINFIRM_DEBUG is not set +CONFIG_LIBERTAS_THINFIRM_USB=m +CONFIG_LIBERTAS_USB=m +CONFIG_LIBFC=m +CONFIG_LIBFCOE=m +CONFIG_LIBIPW=m +# CONFIG_LIBIPW_DEBUG is not set +CONFIG_LINE6_USB=m +# CONFIG_LINE6_USB_IMPULSE_RESPONSE is not set +CONFIG_LIRC=m +CONFIG_LIRC_BT829=m +CONFIG_LIRC_IGORPLUGUSB=m +CONFIG_LIRC_IMON=m +CONFIG_LIRC_PARALLEL=m +CONFIG_LIRC_SASEM=m +CONFIG_LIRC_SERIAL=m +CONFIG_LIRC_SERIAL_TRANSMITTER=y +CONFIG_LIRC_SIR=m +CONFIG_LIRC_STAGING=y +CONFIG_LIRC_ZILOG=m +CONFIG_LITELINK_DONGLE=m +# CONFIG_LKDTM is not set +CONFIG_LLC=m +CONFIG_LLC2=m +CONFIG_LNET=m +CONFIG_LNET_MAX_PAYLOAD=1048576 +CONFIG_LNET_SELFTEST=m +CONFIG_LNET_XPRT_IB=m +CONFIG_LOCALVERSION="" +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_LOCKD=m +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_LOCKD_V4=y +CONFIG_LOCKUP_DETECTOR=y +# CONFIG_LOCK_STAT is not set +# CONFIG_LOGFS is not set +CONFIG_LOGIG940_FF=y +CONFIG_LOGIRUMBLEPAD2_FF=y +CONFIG_LOGITECH_FF=y +CONFIG_LOGIWHEELS_FF=y +# CONFIG_LOGO is not set +CONFIG_LOOPBACK_TARGET=m +CONFIG_LOWMEM_CAM_NUM=3 +CONFIG_LOWMEM_SIZE=0x30000000 +CONFIG_LP8788_ADC=y +CONFIG_LPC_ICH=m +CONFIG_LPC_SCH=m +# CONFIG_LP_CONSOLE is not set +CONFIG_LRU_CACHE=m +CONFIG_LSI_ET1011C_PHY=y +CONFIG_LSM_MMAP_MIN_ADDR=0 +CONFIG_LTE_GDM724X=m +CONFIG_LTPC=m +# CONFIG_LUSTRE_DEBUG_EXPENSIVE_CHECK is not set +CONFIG_LUSTRE_FS=m +CONFIG_LUSTRE_LLITE_LLOOP=y +CONFIG_LUSTRE_OBD_MAX_IOCTL_BUFFER=8192 +CONFIG_LUSTRE_TRANSLATE_ERRNOS=y +CONFIG_LXT_PHY=y +CONFIG_LZ4HC_COMPRESS=m +CONFIG_LZ4_COMPRESS=m +CONFIG_LZ4_DECOMPRESS=y +CONFIG_LZO_COMPRESS=y +CONFIG_LZO_DECOMPRESS=y +# CONFIG_M486 is not set +# CONFIG_M586 is not set +# CONFIG_M586MMX is not set +# CONFIG_M586TSC is not set +CONFIG_M686=y +CONFIG_MA600_DONGLE=m +CONFIG_MAC80211=m +CONFIG_MAC80211_DEBUGFS=y +# CONFIG_MAC80211_DEBUG_MENU is not set +CONFIG_MAC80211_HAS_RC=y +CONFIG_MAC80211_HWSIM=m +CONFIG_MAC80211_LEDS=y +CONFIG_MAC80211_MESH=y +CONFIG_MAC80211_MESSAGE_TRACING=y +CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" +CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y +# CONFIG_MAC80211_RC_DEFAULT_PID is not set +CONFIG_MAC80211_RC_MINSTREL=y +CONFIG_MAC80211_RC_MINSTREL_HT=y +CONFIG_MAC80211_RC_PID=y +CONFIG_MAC802154=m +CONFIG_MACB=m +CONFIG_MACE=m +# CONFIG_MACE_AAUI_PORT is not set +CONFIG_MACHZ_WDT=m +# CONFIG_MACH_CM_T35 is not set +CONFIG_MACH_CM_T3517=y +# CONFIG_MACH_CRANEBOARD is not set +# CONFIG_MACH_DEVKIT8000 is not set +# CONFIG_MACH_EUKREA_CPUIMX51SD is not set +# CONFIG_MACH_IMX51_DT is not set +CONFIG_MACH_KZM9D=y +# CONFIG_MACH_MX51_BABBAGE is not set +# CONFIG_MACH_NOKIA_RX51 is not set +# CONFIG_MACH_OMAP3517EVM is not set +CONFIG_MACH_OMAP3530_LV_SOM=y +CONFIG_MACH_OMAP3_BEAGLE=y +CONFIG_MACH_OMAP3_PANDORA=y +CONFIG_MACH_OMAP3_TORPEDO=y +CONFIG_MACH_OMAP_3430SDP=y +CONFIG_MACH_OMAP_GENERIC=y +CONFIG_MACH_OMAP_LDP=y +CONFIG_MACH_OVERO=y +CONFIG_MACH_SBC3530=y +CONFIG_MACH_TI8148EVM=y +CONFIG_MACH_TI8168EVM=y +CONFIG_MACH_TOUCHBOOK=y +CONFIG_MACVLAN=m +CONFIG_MACVTAP=m +CONFIG_MAC_EMUMOUSEBTN=m +CONFIG_MAC_FLOPPY=m +CONFIG_MAC_PARTITION=y +CONFIG_MAG3110=m +CONFIG_MAGIC_SYSRQ=y +CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1 +CONFIG_MAILBOX=y +CONFIG_MANTIS_CORE=m +CONFIG_MARVELL_PHY=y +# CONFIG_MATH_EMULATION_FULL is not set +CONFIG_MATH_EMULATION_HW_UNIMPLEMENTED=y +# CONFIG_MATOM is not set +CONFIG_MAX1363=m +CONFIG_MAX517=m +CONFIG_MAX63XX_WATCHDOG=m +CONFIG_MAX8925_POWER=m +# CONFIG_MAXSMP is not set +CONFIG_MAX_RAW_DEVS=256 +# CONFIG_MCORE2 is not set +CONFIG_MCP2120_DONGLE=m +CONFIG_MCP320X=m +CONFIG_MCP3422=m +CONFIG_MCP4725=m +CONFIG_MCPM=y +# CONFIG_MCRUSOE is not set +CONFIG_MCS_FIR=m +# CONFIG_MCYRIXIII is not set +CONFIG_MD=y +CONFIG_MDA_CONSOLE=m +CONFIG_MDIO=m +CONFIG_MDIO_BITBANG=y +CONFIG_MDIO_BUS_MUX=y +CONFIG_MDIO_BUS_MUX_GPIO=y +CONFIG_MDIO_BUS_MUX_MMIOREG=y +CONFIG_MDIO_GPIO=y +CONFIG_MD_AUTODETECT=y +CONFIG_MD_FAULTY=m +CONFIG_MD_LINEAR=m +CONFIG_MD_MULTIPATH=m +CONFIG_MD_RAID0=m +CONFIG_MD_RAID1=m +CONFIG_MD_RAID10=m +CONFIG_MD_RAID456=m +CONFIG_MEDIA_ALTERA_CI=m +CONFIG_MEDIA_ANALOG_TV_SUPPORT=y +CONFIG_MEDIA_ATTACH=y +CONFIG_MEDIA_CAMERA_SUPPORT=y +CONFIG_MEDIA_COMMON_OPTIONS=y +# CONFIG_MEDIA_CONTROLLER is not set +CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y +CONFIG_MEDIA_PARPORT_SUPPORT=y +CONFIG_MEDIA_PCI_SUPPORT=y +CONFIG_MEDIA_RADIO_SUPPORT=y +CONFIG_MEDIA_RC_SUPPORT=y +CONFIG_MEDIA_SUBDRV_AUTOSELECT=y +CONFIG_MEDIA_SUPPORT=m +CONFIG_MEDIA_TUNER=m +CONFIG_MEDIA_TUNER_E4000=m +CONFIG_MEDIA_TUNER_FC0011=m +CONFIG_MEDIA_TUNER_FC0012=m +CONFIG_MEDIA_TUNER_FC0013=m +CONFIG_MEDIA_TUNER_FC2580=m +CONFIG_MEDIA_TUNER_IT913X=m +CONFIG_MEDIA_TUNER_MAX2165=m +CONFIG_MEDIA_TUNER_MC44S803=m +CONFIG_MEDIA_TUNER_MT2060=m +CONFIG_MEDIA_TUNER_MT2063=m +CONFIG_MEDIA_TUNER_MT20XX=m +CONFIG_MEDIA_TUNER_MT2131=m +CONFIG_MEDIA_TUNER_MT2266=m +CONFIG_MEDIA_TUNER_MXL5005S=m +CONFIG_MEDIA_TUNER_MXL5007T=m +CONFIG_MEDIA_TUNER_QT1010=m +CONFIG_MEDIA_TUNER_R820T=m +CONFIG_MEDIA_TUNER_SIMPLE=m +CONFIG_MEDIA_TUNER_TDA18212=m +CONFIG_MEDIA_TUNER_TDA18218=m +CONFIG_MEDIA_TUNER_TDA18271=m +CONFIG_MEDIA_TUNER_TDA827X=m +CONFIG_MEDIA_TUNER_TDA8290=m +CONFIG_MEDIA_TUNER_TDA9887=m +CONFIG_MEDIA_TUNER_TEA5761=m +CONFIG_MEDIA_TUNER_TEA5767=m +CONFIG_MEDIA_TUNER_TUA9001=m +CONFIG_MEDIA_TUNER_XC2028=m +CONFIG_MEDIA_TUNER_XC4000=m +CONFIG_MEDIA_TUNER_XC5000=m +CONFIG_MEDIA_USB_SUPPORT=y +# CONFIG_MEFFICEON is not set +CONFIG_MEGARAID_LEGACY=m +CONFIG_MEGARAID_MAILBOX=m +CONFIG_MEGARAID_MM=m +CONFIG_MEGARAID_NEWGEN=y +CONFIG_MEGARAID_SAS=m +# CONFIG_MELAN is not set +CONFIG_MEMCG=y +CONFIG_MEMCG_KMEM=y +CONFIG_MEMCG_SWAP=y +# CONFIG_MEMCG_SWAP_ENABLED is not set +CONFIG_MEMORY=y +CONFIG_MEMORY_FAILURE=y +CONFIG_MEMORY_HOTPLUG=y +CONFIG_MEMORY_HOTPLUG_SPARSE=y +CONFIG_MEMORY_ISOLATION=y +CONFIG_MEMORY_NOTIFIER_ERROR_INJECT=m +CONFIG_MEMSTICK=m +# CONFIG_MEMSTICK_DEBUG is not set +CONFIG_MEMSTICK_JMICRON_38X=m +CONFIG_MEMSTICK_R592=m +CONFIG_MEMSTICK_REALTEK_PCI=m +CONFIG_MEMSTICK_TIFM_MS=m +# CONFIG_MEMSTICK_UNSAFE_RESUME is not set +CONFIG_MEMTEST=y +CONFIG_MEM_SOFT_DIRTY=y +CONFIG_MEN_A21_WDT=m +CONFIG_MFD_88PM800=m +CONFIG_MFD_88PM805=m +CONFIG_MFD_88PM860X=y +CONFIG_MFD_AAT2870_CORE=y +CONFIG_MFD_ARIZONA=y +CONFIG_MFD_ARIZONA_I2C=m +CONFIG_MFD_ARIZONA_SPI=m +CONFIG_MFD_AS3711=y +CONFIG_MFD_AS3722=y +CONFIG_MFD_ASIC3=y +CONFIG_MFD_CORE=y +CONFIG_MFD_CROS_EC=m +CONFIG_MFD_CROS_EC_I2C=m +CONFIG_MFD_CROS_EC_SPI=m +CONFIG_MFD_CS5535=m +CONFIG_MFD_DA9052_I2C=y +CONFIG_MFD_DA9052_SPI=y +CONFIG_MFD_DA9055=y +CONFIG_MFD_DA9063=y +CONFIG_MFD_INTEL_MSIC=y +CONFIG_MFD_JANZ_CMODIO=m +CONFIG_MFD_KEMPLD=m +CONFIG_MFD_LM3533=m +CONFIG_MFD_LP8788=y +CONFIG_MFD_MAX77686=y +CONFIG_MFD_MAX77693=y +CONFIG_MFD_MAX8907=m +CONFIG_MFD_MAX8925=y +CONFIG_MFD_MAX8997=y +CONFIG_MFD_MAX8998=y +CONFIG_MFD_MC13783=m +CONFIG_MFD_MC13XXX=m +CONFIG_MFD_MC13XXX_I2C=m +CONFIG_MFD_MC13XXX_SPI=m +CONFIG_MFD_NVEC=m +CONFIG_MFD_OMAP_USB_HOST=y +CONFIG_MFD_PALMAS=y +CONFIG_MFD_PCF50633=m +CONFIG_MFD_RC5T583=y +CONFIG_MFD_RDC321X=m +CONFIG_MFD_RETU=m +CONFIG_MFD_RTSX_PCI=m +CONFIG_MFD_SEC_CORE=y +CONFIG_MFD_SI476X_CORE=m +CONFIG_MFD_SM501=m +# CONFIG_MFD_SM501_GPIO is not set +CONFIG_MFD_SMSC=y +CONFIG_MFD_STMPE=y +CONFIG_MFD_SYSCON=y +CONFIG_MFD_T7L66XB=y +CONFIG_MFD_TC3589X=y +CONFIG_MFD_TC6387XB=y +CONFIG_MFD_TC6393XB=y +CONFIG_MFD_TIMBERDALE=m +CONFIG_MFD_TPS65090=y +CONFIG_MFD_TPS65217=m +CONFIG_MFD_TPS6586X=y +CONFIG_MFD_TPS65910=y +CONFIG_MFD_TPS65912=y +CONFIG_MFD_TPS65912_I2C=y +CONFIG_MFD_TPS65912_SPI=y +CONFIG_MFD_TPS80031=y +CONFIG_MFD_TWL4030_AUDIO=y +CONFIG_MFD_VIPERBOARD=m +CONFIG_MFD_VX855=m +CONFIG_MFD_WL1273_CORE=m +CONFIG_MFD_WM5102=y +CONFIG_MFD_WM5110=y +CONFIG_MFD_WM831X=y +CONFIG_MFD_WM831X_I2C=y +CONFIG_MFD_WM831X_SPI=y +CONFIG_MFD_WM8350=y +CONFIG_MFD_WM8350_I2C=y +CONFIG_MFD_WM8400=y +CONFIG_MFD_WM8994=y +CONFIG_MFD_WM8997=y +# CONFIG_MGEODEGX1 is not set +# CONFIG_MGEODE_LX is not set +CONFIG_MG_DISK=m +CONFIG_MG_DISK_RES=0 +CONFIG_MICREL_KS8995MA=m +CONFIG_MICREL_PHY=y +CONFIG_MICROCODE=y +CONFIG_MICROCODE_AMD=y +CONFIG_MICROCODE_AMD_EARLY=y +CONFIG_MICROCODE_EARLY=y +CONFIG_MICROCODE_INTEL=y +CONFIG_MICROCODE_INTEL_EARLY=y +CONFIG_MICROCODE_INTEL_LIB=y +CONFIG_MICROCODE_OLD_INTERFACE=y +CONFIG_MIGHT_HAVE_CACHE_L2X0=y +CONFIG_MIGHT_HAVE_PCI=y +CONFIG_MIGRATION=y +CONFIG_MINIX_FS=m +CONFIG_MINIX_SUBPARTITION=y +CONFIG_MISC_FILESYSTEMS=y +CONFIG_MISDN=m +CONFIG_MISDN_AVMFRITZ=m +CONFIG_MISDN_DSP=m +CONFIG_MISDN_HFCMULTI=m +CONFIG_MISDN_HFCPCI=m +CONFIG_MISDN_HFCUSB=m +CONFIG_MISDN_INFINEON=m +CONFIG_MISDN_IPAC=m +CONFIG_MISDN_ISAR=m +CONFIG_MISDN_L1OIP=m +CONFIG_MISDN_NETJET=m +CONFIG_MISDN_SPEEDFAX=m +CONFIG_MISDN_W6692=m +CONFIG_MIXCOMWD=m +# CONFIG_MK6 is not set +# CONFIG_MK7 is not set +# CONFIG_MK8 is not set +CONFIG_MKISS=m +CONFIG_MLX4_CORE=m +# CONFIG_MLX4_DEBUG is not set +CONFIG_MLX4_EN=m +CONFIG_MLX4_EN_DCB=y +CONFIG_MLX4_EN_VXLAN=y +CONFIG_MLX4_INFINIBAND=m +CONFIG_MLX5_CORE=m +CONFIG_MLX5_INFINIBAND=m +CONFIG_MMC=y +CONFIG_MMC_ARMMMCI=y +CONFIG_MMC_BLOCK_BOUNCE=y +CONFIG_MMC_BLOCK_MINORS=8 +CONFIG_MMC_CB710=m +# CONFIG_MMC_CLKGATE is not set +# CONFIG_MMC_DEBUG is not set +CONFIG_MMC_DW=m +CONFIG_MMC_DW_EXYNOS=m +# CONFIG_MMC_DW_IDMAC is not set +CONFIG_MMC_DW_PCI=m +CONFIG_MMC_DW_PLTFM=m +CONFIG_MMC_DW_SOCFPGA=m +# CONFIG_MMC_MXC is not set +CONFIG_MMC_OMAP=m +CONFIG_MMC_OMAP_HS=y +CONFIG_MMC_REALTEK_PCI=m +CONFIG_MMC_RICOH_MMC=y +CONFIG_MMC_SDHCI_ACPI=m +CONFIG_MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER=y +CONFIG_MMC_SDHCI_ESDHC_IMX=y +CONFIG_MMC_SDHCI_IO_ACCESSORS=y +CONFIG_MMC_SDHCI_OF_ESDHC=m +CONFIG_MMC_SDHCI_OF_HLWD=m +CONFIG_MMC_SDHCI_PCI=m +CONFIG_MMC_SDHCI_PXAV2=m +CONFIG_MMC_SDHCI_PXAV3=m +CONFIG_MMC_SDHCI_TEGRA=m +CONFIG_MMC_SDRICOH_CS=m +CONFIG_MMC_SPI=m +# CONFIG_MMC_TEST is not set +CONFIG_MMC_TIFM_SD=m +CONFIG_MMC_TMIO=m +CONFIG_MMC_TMIO_CORE=m +# CONFIG_MMC_UNSAFE_RESUME is not set +CONFIG_MMC_USHC=m +CONFIG_MMC_VIA_SDMMC=m +CONFIG_MMC_VUB300=m +CONFIG_MMC_WBSD=m +CONFIG_MMIOTRACE=y +# CONFIG_MMIOTRACE_TEST is not set +CONFIG_MMU=y +CONFIG_MMU_NOTIFIER=y +CONFIG_MM_OWNER=y +CONFIG_MODULES=y +CONFIG_MODULES_USE_ELF_REL=y +CONFIG_MODULES_USE_ELF_RELA=y +# CONFIG_MODULE_FORCE_LOAD is not set +# CONFIG_MODULE_FORCE_UNLOAD is not set +CONFIG_MODULE_SIG=y +CONFIG_MODULE_SIG_ALL=y +# CONFIG_MODULE_SIG_FORCE is not set +CONFIG_MODULE_SIG_HASH="sha512" +# CONFIG_MODULE_SIG_SHA1 is not set +# CONFIG_MODULE_SIG_SHA224 is not set +# CONFIG_MODULE_SIG_SHA256 is not set +# CONFIG_MODULE_SIG_SHA384 is not set +CONFIG_MODULE_SIG_SHA512=y +CONFIG_MODULE_SRCVERSION_ALL=y +CONFIG_MODULE_UNLOAD=y +CONFIG_MODVERSIONS=y +CONFIG_MOUSE_APPLETOUCH=m +CONFIG_MOUSE_BCM5974=m +CONFIG_MOUSE_CYAPA=m +CONFIG_MOUSE_GPIO=m +# CONFIG_MOUSE_INPORT is not set +CONFIG_MOUSE_LOGIBM=m +CONFIG_MOUSE_PC110PAD=m +CONFIG_MOUSE_PS2=m +CONFIG_MOUSE_PS2_ALPS=y +CONFIG_MOUSE_PS2_CYPRESS=y +CONFIG_MOUSE_PS2_ELANTECH=y +CONFIG_MOUSE_PS2_LIFEBOOK=y +CONFIG_MOUSE_PS2_LOGIPS2PP=y +CONFIG_MOUSE_PS2_SENTELIC=y +CONFIG_MOUSE_PS2_SYNAPTICS=y +CONFIG_MOUSE_PS2_TOUCHKIT=y +CONFIG_MOUSE_PS2_TRACKPOINT=y +CONFIG_MOUSE_SERIAL=m +CONFIG_MOUSE_SYNAPTICS_I2C=m +CONFIG_MOUSE_SYNAPTICS_USB=m +CONFIG_MOUSE_VSXXXAA=m +CONFIG_MOVABLE_NODE=y +CONFIG_MOXA_INTELLIO=m +CONFIG_MOXA_SMARTIO=m +# CONFIG_MPENTIUM4 is not set +# CONFIG_MPENTIUMII is not set +# CONFIG_MPENTIUMIII is not set +# CONFIG_MPENTIUMM is not set +CONFIG_MPIC=y +CONFIG_MPIC_BROKEN_REGREAD=y +# CONFIG_MPIC_TIMER is not set +# CONFIG_MPIC_WEIRD is not set +CONFIG_MPILIB=y +# CONFIG_MPSC is not set +CONFIG_MRP=m +CONFIG_MSDOS_FS=m +CONFIG_MSDOS_PARTITION=y +# CONFIG_MSI_BITMAP_SELFTEST is not set +CONFIG_MSI_LAPTOP=m +CONFIG_MSI_WMI=m +CONFIG_MSPRO_BLOCK=m +CONFIG_MS_BLOCK=m +CONFIG_MTDRAM_ERASE_SIZE=128 +CONFIG_MTDRAM_TOTAL_SIZE=4096 +CONFIG_MTD_ABSENT=m +CONFIG_MTD_AFS_PARTS=m +CONFIG_MTD_AMD76XROM=m +CONFIG_MTD_AR7_PARTS=m +CONFIG_MTD_BLOCK2MTD=m +CONFIG_MTD_BLOCK_RO=m +CONFIG_MTD_CFI=m +# CONFIG_MTD_CFI_ADV_OPTIONS is not set +CONFIG_MTD_CFI_AMDSTD=m +CONFIG_MTD_CFI_I1=y +CONFIG_MTD_CFI_I2=y +# CONFIG_MTD_CFI_I4 is not set +# CONFIG_MTD_CFI_I8 is not set +CONFIG_MTD_CFI_INTELEXT=m +CONFIG_MTD_CFI_STAA=m +CONFIG_MTD_CFI_UTIL=m +CONFIG_MTD_CK804XROM=m +CONFIG_MTD_COMPLEX_MAPPINGS=y +CONFIG_MTD_DATAFLASH=m +CONFIG_MTD_DATAFLASH_OTP=y +# CONFIG_MTD_DATAFLASH_WRITE_VERIFY is not set +CONFIG_MTD_DOCG3=m +CONFIG_MTD_ESB2ROM=m +CONFIG_MTD_GEN_PROBE=m +CONFIG_MTD_GPIO_ADDR=m +CONFIG_MTD_ICHXROM=m +CONFIG_MTD_IMPA7=m +CONFIG_MTD_INTEL_VR_NOR=m +CONFIG_MTD_JEDECPROBE=m +CONFIG_MTD_L440GX=m +CONFIG_MTD_LATCH_ADDR=m +CONFIG_MTD_LPDDR=m +CONFIG_MTD_M25P80=m +CONFIG_MTD_MAP_BANK_WIDTH_1=y +# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set +CONFIG_MTD_MAP_BANK_WIDTH_2=y +# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set +CONFIG_MTD_MAP_BANK_WIDTH_4=y +# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set +CONFIG_MTD_MTDRAM=m +CONFIG_MTD_NAND_CAFE=m +CONFIG_MTD_NAND_CS553X=m +CONFIG_MTD_NAND_DENALI=m +CONFIG_MTD_NAND_DENALI_DT=m +CONFIG_MTD_NAND_DENALI_PCI=m +CONFIG_MTD_NAND_DENALI_SCRATCH_REG_ADDR=0xFF108018 +CONFIG_MTD_NAND_DISKONCHIP=m +# CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE is not set +CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0 +# CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED is not set +CONFIG_MTD_NAND_DOCG4=m +CONFIG_MTD_NAND_ECC_BCH=y +# CONFIG_MTD_NAND_ECC_SMC is not set +CONFIG_MTD_NAND_FSL_ELBC=m +CONFIG_MTD_NAND_FSL_IFC=m +CONFIG_MTD_NAND_FSL_UPM=m +CONFIG_MTD_NAND_GPIO=m +# CONFIG_MTD_NAND_MXC is not set +CONFIG_MTD_NAND_NANDSIM=m +CONFIG_MTD_NAND_OMAP2=y +CONFIG_MTD_NAND_OMAP_BCH=y +CONFIG_MTD_NAND_PASEMI=m +CONFIG_MTD_NAND_PLATFORM=m +CONFIG_MTD_NAND_RICOH=m +CONFIG_MTD_NAND_SOCRATES=m +CONFIG_MTD_NAND_TMIO=m +CONFIG_MTD_NETSC520=m +CONFIG_MTD_NETtel=m +CONFIG_MTD_ONENAND=m +CONFIG_MTD_ONENAND_2X_PROGRAM=y +CONFIG_MTD_ONENAND_GENERIC=m +CONFIG_MTD_ONENAND_OMAP2=m +# CONFIG_MTD_ONENAND_OTP is not set +CONFIG_MTD_ONENAND_VERIFY_WRITE=y +CONFIG_MTD_OOPS=m +CONFIG_MTD_PCI=m +CONFIG_MTD_PCMCIA=m +# CONFIG_MTD_PCMCIA_ANONYMOUS is not set +CONFIG_MTD_PHRAM=m +CONFIG_MTD_PHYSMAP=m +# CONFIG_MTD_PHYSMAP_COMPAT is not set +CONFIG_MTD_PHYSMAP_OF=m +CONFIG_MTD_PLATRAM=m +CONFIG_MTD_PMC551=m +# CONFIG_MTD_PMC551_BUGFIX is not set +# CONFIG_MTD_PMC551_DEBUG is not set +CONFIG_MTD_QINFO_PROBE=m +CONFIG_MTD_RAM=m +CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1 +CONFIG_MTD_REDBOOT_PARTS=m +# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set +# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set +CONFIG_MTD_ROM=m +CONFIG_MTD_SBC_GXX=m +CONFIG_MTD_SC520CDP=m +CONFIG_MTD_SCB2_FLASH=m +CONFIG_MTD_SCx200_DOCFLASH=m +CONFIG_MTD_SLRAM=m +CONFIG_MTD_SPINAND_MT29F=m +CONFIG_MTD_SPINAND_ONDIEECC=y +CONFIG_MTD_SST25L=m +CONFIG_MTD_SWAP=m +# CONFIG_MTD_TESTS is not set +CONFIG_MTD_TS5500=m +CONFIG_MTD_UBI=m +CONFIG_MTD_UBI_BEB_LIMIT=20 +CONFIG_MTD_UBI_FASTMAP=y +CONFIG_MTD_UBI_GLUEBI=m +CONFIG_MTD_UBI_WL_THRESHOLD=4096 +CONFIG_MTRR=y +CONFIG_MTRR_SANITIZER=y +CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1 +CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1 +CONFIG_MULTI_IRQ_HANDLER=y +CONFIG_MUTEX_SPIN_ON_OWNER=y +CONFIG_MV643XX_ETH=m +# CONFIG_MVIAC3_2 is not set +# CONFIG_MVIAC7 is not set +CONFIG_MVMDIO=m +CONFIG_MWAVE=m +CONFIG_MWIFIEX=m +CONFIG_MWIFIEX_PCIE=m +CONFIG_MWIFIEX_SDIO=m +CONFIG_MWIFIEX_USB=m +# CONFIG_MWINCHIP3D is not set +# CONFIG_MWINCHIPC6 is not set +CONFIG_MWL8K=m +CONFIG_MX3_IPU=y +CONFIG_MX3_IPU_IRQS=4 +# CONFIG_MXC_DEBUG_BOARD is not set +# CONFIG_MXC_IRQ_PRIOR is not set +CONFIG_MXM_WMI=m +# CONFIG_MXS_DMA is not set +CONFIG_MYRI10GE=m +CONFIG_MYRI10GE_DCA=y +CONFIG_N2=m +CONFIG_NAMESPACES=y +CONFIG_NATIONAL_PHY=y +CONFIG_NATSEMI=m +CONFIG_NAU7802=m +CONFIG_NCPFS_EXTRAS=y +CONFIG_NCPFS_IOCTL_LOCKING=y +CONFIG_NCPFS_NFS_NS=y +CONFIG_NCPFS_NLS=y +CONFIG_NCPFS_OS2_NS=y +CONFIG_NCPFS_PACKET_SIGNING=y +# CONFIG_NCPFS_SMALLDOS is not set +CONFIG_NCPFS_STRONG=y +CONFIG_NCP_FS=m +CONFIG_NE2000=m +CONFIG_NE2K_PCI=m +CONFIG_NEED_MULTIPLE_NODES=y +CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y +CONFIG_NEED_SG_DMA_LENGTH=y +CONFIG_NEON=y +CONFIG_NET=y +CONFIG_NET5501=y +CONFIG_NETCONSOLE=m +CONFIG_NETCONSOLE_DYNAMIC=y +CONFIG_NETDEVICES=y +CONFIG_NETFILTER=y +CONFIG_NETFILTER_ADVANCED=y +# CONFIG_NETFILTER_DEBUG is not set +CONFIG_NETFILTER_NETLINK=m +CONFIG_NETFILTER_NETLINK_ACCT=m +CONFIG_NETFILTER_NETLINK_LOG=m +CONFIG_NETFILTER_NETLINK_QUEUE=m +CONFIG_NETFILTER_NETLINK_QUEUE_CT=y +CONFIG_NETFILTER_SYNPROXY=m +CONFIG_NETFILTER_XTABLES=m +CONFIG_NETFILTER_XT_CONNMARK=m +CONFIG_NETFILTER_XT_MARK=m +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m +CONFIG_NETFILTER_XT_MATCH_BPF=m +CONFIG_NETFILTER_XT_MATCH_CLUSTER=m +CONFIG_NETFILTER_XT_MATCH_COMMENT=m +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m +CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m +CONFIG_NETFILTER_XT_MATCH_CONNMARK=m +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m +CONFIG_NETFILTER_XT_MATCH_CPU=m +CONFIG_NETFILTER_XT_MATCH_DCCP=m +CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m +CONFIG_NETFILTER_XT_MATCH_DSCP=m +CONFIG_NETFILTER_XT_MATCH_ECN=m +CONFIG_NETFILTER_XT_MATCH_ESP=m +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m +CONFIG_NETFILTER_XT_MATCH_HELPER=m +CONFIG_NETFILTER_XT_MATCH_HL=m +CONFIG_NETFILTER_XT_MATCH_IPRANGE=m +CONFIG_NETFILTER_XT_MATCH_IPVS=m +CONFIG_NETFILTER_XT_MATCH_LENGTH=m +CONFIG_NETFILTER_XT_MATCH_LIMIT=m +CONFIG_NETFILTER_XT_MATCH_MAC=m +CONFIG_NETFILTER_XT_MATCH_MARK=m +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m +CONFIG_NETFILTER_XT_MATCH_NFACCT=m +CONFIG_NETFILTER_XT_MATCH_OSF=m +CONFIG_NETFILTER_XT_MATCH_OWNER=m +CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m +CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m +CONFIG_NETFILTER_XT_MATCH_POLICY=m +CONFIG_NETFILTER_XT_MATCH_QUOTA=m +CONFIG_NETFILTER_XT_MATCH_RATEEST=m +CONFIG_NETFILTER_XT_MATCH_REALM=m +CONFIG_NETFILTER_XT_MATCH_RECENT=m +CONFIG_NETFILTER_XT_MATCH_SCTP=m +CONFIG_NETFILTER_XT_MATCH_SOCKET=m +CONFIG_NETFILTER_XT_MATCH_STATE=m +CONFIG_NETFILTER_XT_MATCH_STATISTIC=m +CONFIG_NETFILTER_XT_MATCH_STRING=m +CONFIG_NETFILTER_XT_MATCH_TCPMSS=m +CONFIG_NETFILTER_XT_MATCH_TIME=m +CONFIG_NETFILTER_XT_MATCH_U32=m +CONFIG_NETFILTER_XT_SET=m +CONFIG_NETFILTER_XT_TARGET_AUDIT=m +CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m +CONFIG_NETFILTER_XT_TARGET_CONNMARK=m +CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m +CONFIG_NETFILTER_XT_TARGET_CT=m +CONFIG_NETFILTER_XT_TARGET_DSCP=m +CONFIG_NETFILTER_XT_TARGET_HL=m +CONFIG_NETFILTER_XT_TARGET_HMARK=m +CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m +CONFIG_NETFILTER_XT_TARGET_LED=m +CONFIG_NETFILTER_XT_TARGET_LOG=m +CONFIG_NETFILTER_XT_TARGET_MARK=m +CONFIG_NETFILTER_XT_TARGET_NETMAP=m +CONFIG_NETFILTER_XT_TARGET_NFLOG=m +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m +CONFIG_NETFILTER_XT_TARGET_NOTRACK=m +CONFIG_NETFILTER_XT_TARGET_RATEEST=m +CONFIG_NETFILTER_XT_TARGET_REDIRECT=m +CONFIG_NETFILTER_XT_TARGET_SECMARK=m +CONFIG_NETFILTER_XT_TARGET_TCPMSS=m +CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m +CONFIG_NETFILTER_XT_TARGET_TEE=m +CONFIG_NETFILTER_XT_TARGET_TPROXY=m +CONFIG_NETFILTER_XT_TARGET_TRACE=m +CONFIG_NETLABEL=y +CONFIG_NETLINK_DIAG=m +CONFIG_NETLINK_MMAP=y +CONFIG_NETPOLL=y +# CONFIG_NETPOLL_TRAP is not set +CONFIG_NETPRIO_CGROUP=m +CONFIG_NETROM=m +CONFIG_NETWORK_FILESYSTEMS=y +# CONFIG_NETWORK_PHY_TIMESTAMPING is not set +CONFIG_NETWORK_SECMARK=y +CONFIG_NETXEN_NIC=m +CONFIG_NET_9P=m +# CONFIG_NET_9P_DEBUG is not set +CONFIG_NET_9P_RDMA=m +CONFIG_NET_9P_VIRTIO=m +CONFIG_NET_ACT_CSUM=m +CONFIG_NET_ACT_GACT=m +CONFIG_NET_ACT_IPT=m +CONFIG_NET_ACT_MIRRED=m +CONFIG_NET_ACT_NAT=m +CONFIG_NET_ACT_PEDIT=m +CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_SIMP=m +CONFIG_NET_ACT_SKBEDIT=m +CONFIG_NET_CADENCE=y +CONFIG_NET_CALXEDA_XGMAC=m +CONFIG_NET_CLS=y +CONFIG_NET_CLS_ACT=y +CONFIG_NET_CLS_BASIC=m +CONFIG_NET_CLS_BPF=m +CONFIG_NET_CLS_CGROUP=m +CONFIG_NET_CLS_FLOW=m +CONFIG_NET_CLS_FW=m +# CONFIG_NET_CLS_IND is not set +CONFIG_NET_CLS_ROUTE4=m +CONFIG_NET_CLS_RSVP=m +CONFIG_NET_CLS_RSVP6=m +CONFIG_NET_CLS_TCINDEX=m +CONFIG_NET_CLS_U32=m +CONFIG_NET_CORE=y +CONFIG_NET_DCCPPROBE=m +# CONFIG_NET_DROP_MONITOR is not set +CONFIG_NET_DSA=m +CONFIG_NET_DSA_MV88E6060=m +CONFIG_NET_DSA_MV88E6123_61_65=m +CONFIG_NET_DSA_MV88E6131=m +CONFIG_NET_DSA_MV88E6XXX=m +CONFIG_NET_DSA_MV88E6XXX_NEED_PPU=y +CONFIG_NET_DSA_TAG_DSA=y +CONFIG_NET_DSA_TAG_EDSA=y +CONFIG_NET_DSA_TAG_TRAILER=y +CONFIG_NET_EMATCH=y +CONFIG_NET_EMATCH_CANID=m +CONFIG_NET_EMATCH_CMP=m +CONFIG_NET_EMATCH_IPSET=m +CONFIG_NET_EMATCH_META=m +CONFIG_NET_EMATCH_NBYTE=m +CONFIG_NET_EMATCH_STACK=32 +CONFIG_NET_EMATCH_TEXT=m +CONFIG_NET_EMATCH_U32=m +CONFIG_NET_FC=y +CONFIG_NET_FLOW_LIMIT=y +CONFIG_NET_IPGRE=m +CONFIG_NET_IPGRE_BROADCAST=y +CONFIG_NET_IPGRE_DEMUX=m +CONFIG_NET_IPIP=m +CONFIG_NET_IPVTI=m +CONFIG_NET_IP_TUNNEL=m +CONFIG_NET_KEY=m +# CONFIG_NET_KEY_MIGRATE is not set +CONFIG_NET_MPLS_GSO=m +CONFIG_NET_NS=y +CONFIG_NET_PACKET_ENGINE=y +CONFIG_NET_PKTGEN=m +CONFIG_NET_POLL_CONTROLLER=y +CONFIG_NET_RX_BUSY_POLL=y +CONFIG_NET_SB1000=m +CONFIG_NET_SCHED=y +CONFIG_NET_SCH_ATM=m +CONFIG_NET_SCH_CBQ=m +CONFIG_NET_SCH_CHOKE=m +CONFIG_NET_SCH_CODEL=m +CONFIG_NET_SCH_DRR=m +CONFIG_NET_SCH_DSMARK=m +CONFIG_NET_SCH_FIFO=y +CONFIG_NET_SCH_FQ=m +CONFIG_NET_SCH_FQ_CODEL=m +CONFIG_NET_SCH_GRED=m +CONFIG_NET_SCH_HFSC=m +CONFIG_NET_SCH_HTB=m +CONFIG_NET_SCH_INGRESS=m +CONFIG_NET_SCH_MQPRIO=m +CONFIG_NET_SCH_MULTIQ=m +CONFIG_NET_SCH_NETEM=m +CONFIG_NET_SCH_PLUG=m +CONFIG_NET_SCH_PRIO=m +CONFIG_NET_SCH_QFQ=m +CONFIG_NET_SCH_RED=m +CONFIG_NET_SCH_SFB=m +CONFIG_NET_SCH_SFQ=m +CONFIG_NET_SCH_TBF=m +CONFIG_NET_SCH_TEQL=m +CONFIG_NET_SCTPPROBE=m +CONFIG_NET_TCPPROBE=m +CONFIG_NET_TEAM=m +CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m +CONFIG_NET_TEAM_MODE_BROADCAST=m +CONFIG_NET_TEAM_MODE_LOADBALANCE=m +CONFIG_NET_TEAM_MODE_RANDOM=m +CONFIG_NET_TEAM_MODE_ROUNDROBIN=m +CONFIG_NET_VENDOR_3COM=y +CONFIG_NET_VENDOR_8390=y +CONFIG_NET_VENDOR_ADAPTEC=y +CONFIG_NET_VENDOR_ALTEON=y +CONFIG_NET_VENDOR_AMD=y +CONFIG_NET_VENDOR_APPLE=y +CONFIG_NET_VENDOR_ARC=y +CONFIG_NET_VENDOR_ATHEROS=y +CONFIG_NET_VENDOR_BROADCOM=y +CONFIG_NET_VENDOR_BROCADE=y +CONFIG_NET_VENDOR_CHELSIO=y +CONFIG_NET_VENDOR_CIRRUS=y +CONFIG_NET_VENDOR_CISCO=y +CONFIG_NET_VENDOR_DEC=y +CONFIG_NET_VENDOR_DLINK=y +CONFIG_NET_VENDOR_EMULEX=y +CONFIG_NET_VENDOR_EXAR=y +CONFIG_NET_VENDOR_FARADAY=y +CONFIG_NET_VENDOR_FREESCALE=y +CONFIG_NET_VENDOR_FUJITSU=y +CONFIG_NET_VENDOR_HP=y +CONFIG_NET_VENDOR_I825XX=y +CONFIG_NET_VENDOR_IBM=y +CONFIG_NET_VENDOR_INTEL=y +CONFIG_NET_VENDOR_MARVELL=y +CONFIG_NET_VENDOR_MELLANOX=y +CONFIG_NET_VENDOR_MICREL=y +CONFIG_NET_VENDOR_MICROCHIP=y +CONFIG_NET_VENDOR_MYRI=y +CONFIG_NET_VENDOR_NATSEMI=y +CONFIG_NET_VENDOR_NVIDIA=y +CONFIG_NET_VENDOR_OKI=y +CONFIG_NET_VENDOR_PASEMI=y +CONFIG_NET_VENDOR_QLOGIC=y +CONFIG_NET_VENDOR_RDC=y +CONFIG_NET_VENDOR_REALTEK=y +CONFIG_NET_VENDOR_SEEQ=y +CONFIG_NET_VENDOR_SILAN=y +CONFIG_NET_VENDOR_SILICOM=y +CONFIG_NET_VENDOR_SIS=y +CONFIG_NET_VENDOR_SMSC=y +CONFIG_NET_VENDOR_STMICRO=y +CONFIG_NET_VENDOR_SUN=y +CONFIG_NET_VENDOR_TEHUTI=y +CONFIG_NET_VENDOR_TI=y +CONFIG_NET_VENDOR_TOSHIBA=y +CONFIG_NET_VENDOR_VIA=y +CONFIG_NET_VENDOR_WIZNET=y +CONFIG_NET_VENDOR_XILINX=y +CONFIG_NET_VENDOR_XIRCOM=y +CONFIG_NET_XGENE=m +CONFIG_NEW_LEDS=y +CONFIG_NFC=m +CONFIG_NFC_DIGITAL=m +CONFIG_NFC_HCI=m +CONFIG_NFC_MEI_PHY=m +CONFIG_NFC_MICROREAD=m +CONFIG_NFC_MICROREAD_I2C=m +CONFIG_NFC_MICROREAD_MEI=m +CONFIG_NFC_NCI=m +CONFIG_NFC_NCI_SPI=y +CONFIG_NFC_PN533=m +CONFIG_NFC_PN544=m +CONFIG_NFC_PN544_I2C=m +CONFIG_NFC_PN544_MEI=m +CONFIG_NFC_PORT100=m +CONFIG_NFC_SHDLC=y +CONFIG_NFC_SIM=m +CONFIG_NFC_WILINK=m +CONFIG_NFSD=m +# CONFIG_NFSD_FAULT_INJECTION is not set +CONFIG_NFSD_V2_ACL=y +CONFIG_NFSD_V3=y +CONFIG_NFSD_V3_ACL=y +CONFIG_NFSD_V4=y +CONFIG_NFSD_V4_SECURITY_LABEL=y +CONFIG_NFS_ACL_SUPPORT=m +CONFIG_NFS_COMMON=y +CONFIG_NFS_DEBUG=y +CONFIG_NFS_FS=m +CONFIG_NFS_FSCACHE=y +CONFIG_NFS_SWAP=y +CONFIG_NFS_USE_KERNEL_DNS=y +# CONFIG_NFS_USE_LEGACY_DNS is not set +CONFIG_NFS_V2=m +CONFIG_NFS_V3=m +CONFIG_NFS_V3_ACL=y +CONFIG_NFS_V4=m +CONFIG_NFS_V4_1=y +CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org" +CONFIG_NFS_V4_1_MIGRATION=y +CONFIG_NFS_V4_2=y +CONFIG_NFS_V4_SECURITY_LABEL=y +CONFIG_NFTL=m +CONFIG_NFTL_RW=y +CONFIG_NFT_CHAIN_NAT_IPV4=m +CONFIG_NFT_CHAIN_NAT_IPV6=m +CONFIG_NFT_CHAIN_ROUTE_IPV4=m +CONFIG_NFT_CHAIN_ROUTE_IPV6=m +CONFIG_NFT_COMPAT=m +CONFIG_NFT_COUNTER=m +CONFIG_NFT_CT=m +CONFIG_NFT_EXTHDR=m +CONFIG_NFT_HASH=m +CONFIG_NFT_LIMIT=m +CONFIG_NFT_LOG=m +CONFIG_NFT_META=m +CONFIG_NFT_NAT=m +CONFIG_NFT_RBTREE=m +CONFIG_NFT_REJECT_IPV4=m +CONFIG_NF_CONNTRACK=m +CONFIG_NF_CONNTRACK_AMANDA=m +CONFIG_NF_CONNTRACK_BROADCAST=m +CONFIG_NF_CONNTRACK_EVENTS=y +CONFIG_NF_CONNTRACK_FTP=m +CONFIG_NF_CONNTRACK_H323=m +CONFIG_NF_CONNTRACK_IPV4=m +CONFIG_NF_CONNTRACK_IPV6=m +CONFIG_NF_CONNTRACK_IRC=m +CONFIG_NF_CONNTRACK_LABELS=y +CONFIG_NF_CONNTRACK_MARK=y +CONFIG_NF_CONNTRACK_NETBIOS_NS=m +CONFIG_NF_CONNTRACK_PPTP=m +# CONFIG_NF_CONNTRACK_PROCFS is not set +CONFIG_NF_CONNTRACK_SANE=m +CONFIG_NF_CONNTRACK_SECMARK=y +CONFIG_NF_CONNTRACK_SIP=m +CONFIG_NF_CONNTRACK_SNMP=m +CONFIG_NF_CONNTRACK_TFTP=m +CONFIG_NF_CONNTRACK_TIMEOUT=y +CONFIG_NF_CONNTRACK_TIMESTAMP=y +CONFIG_NF_CONNTRACK_ZONES=y +CONFIG_NF_CT_NETLINK=m +CONFIG_NF_CT_NETLINK_HELPER=m +CONFIG_NF_CT_NETLINK_TIMEOUT=m +CONFIG_NF_CT_PROTO_DCCP=m +CONFIG_NF_CT_PROTO_GRE=m +CONFIG_NF_CT_PROTO_SCTP=m +CONFIG_NF_CT_PROTO_UDPLITE=m +CONFIG_NF_DEFRAG_IPV4=m +CONFIG_NF_DEFRAG_IPV6=m +CONFIG_NF_NAT=m +CONFIG_NF_NAT_AMANDA=m +CONFIG_NF_NAT_FTP=m +CONFIG_NF_NAT_H323=m +CONFIG_NF_NAT_IPV4=m +CONFIG_NF_NAT_IPV6=m +CONFIG_NF_NAT_IRC=m +CONFIG_NF_NAT_NEEDED=y +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_PROTO_DCCP=m +CONFIG_NF_NAT_PROTO_GRE=m +CONFIG_NF_NAT_PROTO_SCTP=m +CONFIG_NF_NAT_PROTO_UDPLITE=m +CONFIG_NF_NAT_SIP=m +CONFIG_NF_NAT_SNMP_BASIC=m +CONFIG_NF_NAT_TFTP=m +CONFIG_NF_TABLES=m +CONFIG_NF_TABLES_ARP=m +CONFIG_NF_TABLES_BRIDGE=m +CONFIG_NF_TABLES_IPV4=m +CONFIG_NF_TABLES_IPV6=m +CONFIG_NI65=m +CONFIG_NILFS2_FS=m +CONFIG_NIU=m +# CONFIG_NL80211_TESTMODE is not set +CONFIG_NLATTR=y +CONFIG_NLMON=m +CONFIG_NLS=y +CONFIG_NLS_ASCII=m +CONFIG_NLS_CODEPAGE_1250=m +CONFIG_NLS_CODEPAGE_1251=m +CONFIG_NLS_CODEPAGE_437=y +CONFIG_NLS_CODEPAGE_737=m +CONFIG_NLS_CODEPAGE_775=m +CONFIG_NLS_CODEPAGE_850=m +CONFIG_NLS_CODEPAGE_852=m +CONFIG_NLS_CODEPAGE_855=m +CONFIG_NLS_CODEPAGE_857=m +CONFIG_NLS_CODEPAGE_860=m +CONFIG_NLS_CODEPAGE_861=m +CONFIG_NLS_CODEPAGE_862=m +CONFIG_NLS_CODEPAGE_863=m +CONFIG_NLS_CODEPAGE_864=m +CONFIG_NLS_CODEPAGE_865=m +CONFIG_NLS_CODEPAGE_866=m +CONFIG_NLS_CODEPAGE_869=m +CONFIG_NLS_CODEPAGE_874=m +CONFIG_NLS_CODEPAGE_932=m +CONFIG_NLS_CODEPAGE_936=m +CONFIG_NLS_CODEPAGE_949=m +CONFIG_NLS_CODEPAGE_950=m +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_ISO8859_1=m +CONFIG_NLS_ISO8859_13=m +CONFIG_NLS_ISO8859_14=m +CONFIG_NLS_ISO8859_15=m +CONFIG_NLS_ISO8859_2=m +CONFIG_NLS_ISO8859_3=m +CONFIG_NLS_ISO8859_4=m +CONFIG_NLS_ISO8859_5=m +CONFIG_NLS_ISO8859_6=m +CONFIG_NLS_ISO8859_7=m +CONFIG_NLS_ISO8859_8=m +CONFIG_NLS_ISO8859_9=m +CONFIG_NLS_KOI8_R=m +CONFIG_NLS_KOI8_U=m +CONFIG_NLS_MAC_CELTIC=m +CONFIG_NLS_MAC_CENTEURO=m +CONFIG_NLS_MAC_CROATIAN=m +CONFIG_NLS_MAC_CYRILLIC=m +CONFIG_NLS_MAC_GAELIC=m +CONFIG_NLS_MAC_GREEK=m +CONFIG_NLS_MAC_ICELAND=m +CONFIG_NLS_MAC_INUIT=m +CONFIG_NLS_MAC_ROMAN=m +CONFIG_NLS_MAC_ROMANIAN=m +CONFIG_NLS_MAC_TURKISH=m +CONFIG_NLS_UTF8=m +CONFIG_NODES_SPAN_OTHER_NODES=y +# CONFIG_NOHIGHMEM is not set +CONFIG_NOP_TRACER=y +CONFIG_NORTEL_HERMES=m +CONFIG_NOTIFIER_ERROR_INJECTION=m +CONFIG_NOUVEAU_DEBUG=5 +CONFIG_NOUVEAU_DEBUG_DEFAULT=3 +CONFIG_NOZOMI=m +CONFIG_NO_BOOTMEM=y +CONFIG_NO_HZ=y +CONFIG_NO_HZ_COMMON=y +# CONFIG_NO_HZ_FULL_ALL is not set +CONFIG_NO_HZ_FULL_SYSIDLE=y +CONFIG_NO_HZ_FULL_SYSIDLE_SMALL=8 +CONFIG_NO_IOPORT=y +CONFIG_NR_IRQS=512 +CONFIG_NS83820=m +CONFIG_NSC_FIR=m +CONFIG_NSC_GPIO=m +CONFIG_NTB=m +CONFIG_NTB_NETDEV=m +# CONFIG_NTFS_DEBUG is not set +CONFIG_NTFS_FS=m +# CONFIG_NTFS_RW is not set +CONFIG_NUMA_BALANCING=y +CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y +# CONFIG_NUMA_EMU is not set +CONFIG_NVEC_PAZ00=m +CONFIG_NVEC_POWER=m +CONFIG_NV_TCO=m +# CONFIG_N_GSM is not set +CONFIG_N_HDLC=m +# CONFIG_OABI_COMPAT is not set +# CONFIG_OCFS2_DEBUG_FS is not set +CONFIG_OCFS2_DEBUG_MASKLOG=y +CONFIG_OCFS2_FS=m +CONFIG_OCFS2_FS_O2CB=m +CONFIG_OCFS2_FS_STATS=y +CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m +CONFIG_OC_ETM=y +CONFIG_OF=y +CONFIG_OF_ADDRESS=y +CONFIG_OF_DYNAMIC=y +CONFIG_OF_EARLY_FLATTREE=y +CONFIG_OF_EXTCON=y +CONFIG_OF_FLATTREE=y +CONFIG_OF_GPIO=y +CONFIG_OF_IOMMU=y +CONFIG_OF_IRQ=y +CONFIG_OF_MDIO=y +CONFIG_OF_MTD=y +CONFIG_OF_NET=y +CONFIG_OF_PCI=y +CONFIG_OF_PCI_IRQ=y +# CONFIG_OF_RECONFIG_NOTIFIER_ERROR_INJECT is not set +# CONFIG_OF_SELFTEST is not set +CONFIG_OID_REGISTRY=y +CONFIG_OLD_BELKIN_DONGLE=m +CONFIG_OLD_SIGACTION=y +CONFIG_OLD_SIGSUSPEND=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_OMAP2PLUS_MBOX=m +CONFIG_OMAP2_DSS=y +# CONFIG_OMAP2_DSS_DEBUG is not set +# CONFIG_OMAP2_DSS_DEBUGFS is not set +CONFIG_OMAP2_DSS_DPI=y +# CONFIG_OMAP2_DSS_DSI is not set +CONFIG_OMAP2_DSS_MIN_FCK_PER_PCK=0 +CONFIG_OMAP2_DSS_SDI=y +CONFIG_OMAP2_DSS_SLEEP_AFTER_VENC_RESET=y +CONFIG_OMAP2_DSS_VENC=y +CONFIG_OMAP2_VRFB=y +CONFIG_OMAP3_EMU=y +# CONFIG_OMAP3_L2_AUX_SECURE_SAVE_RESTORE is not set +# CONFIG_OMAP3_SDRC_AC_TIMING is not set +CONFIG_OMAP4_DSS_HDMI=y +CONFIG_OMAP4_DSS_HDMI_AUDIO=y +CONFIG_OMAP4_THERMAL=y +CONFIG_OMAP_32K_TIMER=y +CONFIG_OMAP_CONTROL_USB=y +CONFIG_OMAP_DM_TIMER=y +CONFIG_OMAP_INTERCONNECT=y +CONFIG_OMAP_IOMMU=y +# CONFIG_OMAP_IOVMM is not set +CONFIG_OMAP_MBOX=m +CONFIG_OMAP_MBOX_KFIFO_SIZE=256 +CONFIG_OMAP_MUX=y +# CONFIG_OMAP_MUX_DEBUG is not set +CONFIG_OMAP_MUX_WARNINGS=y +CONFIG_OMAP_OCP2SCP=m +CONFIG_OMAP_PACKAGE_CBB=y +CONFIG_OMAP_PACKAGE_CUS=y +CONFIG_OMAP_PM_NOOP=y +CONFIG_OMAP_REMOTEPROC=m +CONFIG_OMAP_RESET_CLOCKS=y +CONFIG_OMAP_USB2=y +CONFIG_OMAP_USB3=m +CONFIG_OMAP_WATCHDOG=m +CONFIG_OMFS_FS=m +CONFIG_OPENVSWITCH=m +CONFIG_OPENVSWITCH_GRE=y +CONFIG_OPENVSWITCH_VXLAN=y +CONFIG_OPROFILE=m +# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set +CONFIG_OPROFILE_NMI_TIMER=y +CONFIG_OPTIMIZE_INLINING=y +CONFIG_OPTPROBES=y +CONFIG_ORE=m +CONFIG_ORINOCO_USB=m +CONFIG_OSF_PARTITION=y +CONFIG_OUTER_CACHE=y +CONFIG_OUTER_CACHE_SYNC=y +CONFIG_OVERLAYFS_FS=m +CONFIG_P54_COMMON=m +CONFIG_P54_LEDS=y +CONFIG_P54_PCI=m +CONFIG_P54_SPI=m +# CONFIG_P54_SPI_DEFAULT_EEPROM is not set +CONFIG_P54_USB=m +CONFIG_PACKET=y +CONFIG_PACKET_DIAG=m +CONFIG_PADATA=y +CONFIG_PAGEFLAGS_EXTENDED=y +CONFIG_PANASONIC_LAPTOP=m +CONFIG_PANEL=m +# CONFIG_PANEL_CHANGE_MESSAGE is not set +CONFIG_PANEL_PARPORT=0 +CONFIG_PANEL_PROFILE=5 +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_PANTHERLORD_FF=y +CONFIG_PARAVIRT=y +CONFIG_PARAVIRT_CLOCK=y +# CONFIG_PARAVIRT_DEBUG is not set +CONFIG_PARAVIRT_SPINLOCKS=y +# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set +CONFIG_PARIDE=m +CONFIG_PARIDE_ATEN=m +CONFIG_PARIDE_BPCK=m +CONFIG_PARIDE_BPCK6=m +CONFIG_PARIDE_COMM=m +CONFIG_PARIDE_DSTR=m +CONFIG_PARIDE_EPAT=m +CONFIG_PARIDE_EPIA=m +CONFIG_PARIDE_FIT2=m +CONFIG_PARIDE_FIT3=m +CONFIG_PARIDE_FRIQ=m +CONFIG_PARIDE_FRPW=m +CONFIG_PARIDE_KBIC=m +CONFIG_PARIDE_KTTI=m +CONFIG_PARIDE_ON20=m +CONFIG_PARIDE_ON26=m +CONFIG_PARIDE_PCD=m +CONFIG_PARIDE_PD=m +CONFIG_PARIDE_PF=m +CONFIG_PARIDE_PG=m +CONFIG_PARIDE_PT=m +CONFIG_PARPORT=m +CONFIG_PARPORT_1284=y +CONFIG_PARPORT_AX88796=m +# CONFIG_PARPORT_GSC is not set +CONFIG_PARPORT_NOT_PC=y +CONFIG_PARPORT_PC=m +CONFIG_PARPORT_PC_FIFO=y +CONFIG_PARPORT_PC_PCMCIA=m +# CONFIG_PARPORT_PC_SUPERIO is not set +CONFIG_PARPORT_SERIAL=m +CONFIG_PARTITION_ADVANCED=y +# CONFIG_PASEMI_MAC is not set +CONFIG_PATA_ACPI=m +CONFIG_PATA_ALI=m +CONFIG_PATA_AMD=m +CONFIG_PATA_ARASAN_CF=m +CONFIG_PATA_ARTOP=m +CONFIG_PATA_ATIIXP=m +CONFIG_PATA_ATP867X=m +CONFIG_PATA_CMD640_PCI=m +CONFIG_PATA_CMD64X=m +CONFIG_PATA_CS5520=m +CONFIG_PATA_CS5530=m +CONFIG_PATA_CS5535=m +CONFIG_PATA_CS5536=m +CONFIG_PATA_CYPRESS=m +CONFIG_PATA_EFAR=m +CONFIG_PATA_HPT366=m +CONFIG_PATA_HPT37X=m +CONFIG_PATA_HPT3X2N=m +CONFIG_PATA_HPT3X3=m +# CONFIG_PATA_HPT3X3_DMA is not set +# CONFIG_PATA_IMX is not set +CONFIG_PATA_ISAPNP=m +CONFIG_PATA_IT8213=m +CONFIG_PATA_IT821X=m +CONFIG_PATA_JMICRON=m +CONFIG_PATA_LEGACY=m +CONFIG_PATA_MACIO=y +CONFIG_PATA_MARVELL=m +CONFIG_PATA_MPIIX=m +CONFIG_PATA_NETCELL=m +CONFIG_PATA_NINJA32=m +CONFIG_PATA_NS87410=m +CONFIG_PATA_NS87415=m +CONFIG_PATA_OF_PLATFORM=m +CONFIG_PATA_OLDPIIX=m +CONFIG_PATA_OPTI=m +CONFIG_PATA_OPTIDMA=m +CONFIG_PATA_PCMCIA=m +CONFIG_PATA_PDC2027X=m +CONFIG_PATA_PDC_OLD=m +CONFIG_PATA_PLATFORM=m +CONFIG_PATA_QDI=m +CONFIG_PATA_RADISYS=m +CONFIG_PATA_RDC=m +CONFIG_PATA_RZ1000=m +CONFIG_PATA_SC1200=m +CONFIG_PATA_SCH=m +CONFIG_PATA_SERVERWORKS=m +CONFIG_PATA_SIL680=m +CONFIG_PATA_TOSHIBA=m +CONFIG_PATA_TRIFLEX=m +CONFIG_PATA_VIA=m +CONFIG_PATA_WINBOND=m +CONFIG_PATA_WINBOND_VLB=m +CONFIG_PC300TOO=m +CONFIG_PC8736x_GPIO=m +CONFIG_PC87413_WDT=m +CONFIG_PCCARD_NONSTATIC=y +CONFIG_PCF50633_ADC=m +CONFIG_PCF50633_GPIO=m +CONFIG_PCH_CAN=m +CONFIG_PCH_DMA=m +CONFIG_PCH_GBE=m +CONFIG_PCH_PHUB=m +CONFIG_PCI=y +CONFIG_PCI200SYN=m +CONFIG_PCIEAER=y +# CONFIG_PCIEAER_INJECT is not set +CONFIG_PCIEASPM=y +# CONFIG_PCIEASPM_DEBUG is not set +CONFIG_PCIEASPM_DEFAULT=y +# CONFIG_PCIEASPM_PERFORMANCE is not set +# CONFIG_PCIEASPM_POWERSAVE is not set +CONFIG_PCIE_DW=y +# CONFIG_PCIE_ECRC is not set +CONFIG_PCIE_PME=y +CONFIG_PCIPCWATCHDOG=m +CONFIG_PCI_ATMEL=m +CONFIG_PCI_ATS=y +CONFIG_PCI_BIOS=y +# CONFIG_PCI_CNB20LE_QUIRK is not set +# CONFIG_PCI_DEBUG is not set +CONFIG_PCI_DIRECT=y +CONFIG_PCI_DOMAINS=y +CONFIG_PCI_GOANY=y +# CONFIG_PCI_GOBIOS is not set +# CONFIG_PCI_GODIRECT is not set +# CONFIG_PCI_GOMMCONFIG is not set +CONFIG_PCI_IMX6=y +CONFIG_PCI_IOAPIC=y +CONFIG_PCI_IOV=y +CONFIG_PCI_LABEL=y +CONFIG_PCI_MMCONFIG=y +CONFIG_PCI_MSI=y +CONFIG_PCI_PASID=y +CONFIG_PCI_PRI=y +CONFIG_PCI_QUIRKS=y +CONFIG_PCI_REALLOC_ENABLE_AUTO=y +CONFIG_PCI_STUB=m +CONFIG_PCI_TEGRA=y +CONFIG_PCI_XEN=y +CONFIG_PCI_XGENE=y +CONFIG_PCI_XGENE_MSI=y +CONFIG_PCMCIA=m +CONFIG_PCMCIA_3C574=m +CONFIG_PCMCIA_3C589=m +CONFIG_PCMCIA_AHA152X=m +CONFIG_PCMCIA_ATMEL=m +CONFIG_PCMCIA_AXNET=m +CONFIG_PCMCIA_FDOMAIN=m +CONFIG_PCMCIA_FMVJ18X=m +CONFIG_PCMCIA_HERMES=m +CONFIG_PCMCIA_LOAD_CIS=y +CONFIG_PCMCIA_NINJA_SCSI=m +CONFIG_PCMCIA_NMCLAN=m +CONFIG_PCMCIA_PCNET=m +CONFIG_PCMCIA_PROBE=y +CONFIG_PCMCIA_QLOGIC=m +CONFIG_PCMCIA_RAYCS=m +CONFIG_PCMCIA_SMC91C92=m +CONFIG_PCMCIA_SPECTRUM=m +CONFIG_PCMCIA_SYM53C500=m +CONFIG_PCMCIA_WL3501=m +CONFIG_PCMCIA_XIRC2PS=m +CONFIG_PCMCIA_XIRCOM=m +CONFIG_PCNET32=m +CONFIG_PCSPKR_PLATFORM=y +CONFIG_PCWATCHDOG=m +CONFIG_PD6729=m +CONFIG_PDA_POWER=m +CONFIG_PDC_ADMA=m +CONFIG_PERCPU_RWSEM=y +CONFIG_PERF_EVENTS=y +CONFIG_PERF_USE_VMALLOC=y +CONFIG_PHANTOM=m +CONFIG_PHONET=m +CONFIG_PHYLIB=y +CONFIG_PHYS_64BIT=y +# CONFIG_PHY_EXYNOS_MIPI_VIDEO is not set +CONFIG_PHY_XGENE=y +# CONFIG_PID_IN_CONTEXTIDR is not set +CONFIG_PID_NS=y +CONFIG_PINCONF=y +CONFIG_PINCTRL=y +CONFIG_PINCTRL_AS3722=y +CONFIG_PINCTRL_BAYTRAIL=y +CONFIG_PINCTRL_IMX=y +CONFIG_PINCTRL_IMX6Q=y +CONFIG_PINCTRL_IMX6SL=y +CONFIG_PINCTRL_PALMAS=y +CONFIG_PINCTRL_SINGLE=y +CONFIG_PINCTRL_TEGRA=y +CONFIG_PINCTRL_TEGRA114=y +CONFIG_PINCTRL_TEGRA20=y +CONFIG_PINCTRL_TEGRA30=y +CONFIG_PINCTRL_VF610=y +CONFIG_PINMUX=y +CONFIG_PL310_ERRATA_588369=y +CONFIG_PL310_ERRATA_727915=y +CONFIG_PL310_ERRATA_753970=y +CONFIG_PL310_ERRATA_769419=y +CONFIG_PL320_MBOX=y +CONFIG_PL330_DMA=m +# CONFIG_PLAT_SPEAR is not set +CONFIG_PLAT_VERSATILE=y +CONFIG_PLAT_VERSATILE_CLCD=y +CONFIG_PLAT_VERSATILE_SCHED_CLOCK=y +CONFIG_PLIP=m +CONFIG_PLX_HERMES=m +CONFIG_PM=y +CONFIG_PMAC_APM_EMU=m +CONFIG_PMAC_BACKLIGHT=y +CONFIG_PMAC_BACKLIGHT_LEGACY=y +CONFIG_PMAC_MEDIABAY=y +CONFIG_PMAC_RACKMETER=m +CONFIG_PMAC_SMU=y +CONFIG_PMBUS=m +CONFIG_PMIC_DA9052=y +CONFIG_PM_ADVANCED_DEBUG=y +# CONFIG_PM_AUTOSLEEP is not set +CONFIG_PM_CLK=y +CONFIG_PM_DEVFREQ=y +CONFIG_PM_NOTIFIER_ERROR_INJECT=m +CONFIG_PM_OPP=y +CONFIG_PM_SLEEP=y +CONFIG_PM_SLEEP_DEBUG=y +CONFIG_PM_SLEEP_SMP=y +CONFIG_PM_STD_PARTITION="" +# CONFIG_PM_TEST_SUSPEND is not set +CONFIG_PM_TRACE=y +CONFIG_PM_TRACE_RTC=y +CONFIG_PM_WAKELOCKS_GC=y +CONFIG_PM_WAKELOCKS_LIMIT=100 +CONFIG_PNFS_BLOCK=m +CONFIG_PNFS_FILE_LAYOUT=m +CONFIG_PNFS_OBJLAYOUT=m +CONFIG_PNP=y +CONFIG_PNPACPI=y +CONFIG_PNPBIOS=y +CONFIG_PNPBIOS_PROC_FS=y +# CONFIG_PNP_DEBUG_MESSAGES is not set +CONFIG_POSIX_MQUEUE=y +CONFIG_POSIX_MQUEUE_SYSCTL=y +CONFIG_POWER3=y +CONFIG_POWER4=y +# CONFIG_POWER4_CPU is not set +# CONFIG_POWER5_CPU is not set +# CONFIG_POWER6_CPU is not set +CONFIG_POWERCAP=y +CONFIG_POWERNV_CPUFREQ=m +CONFIG_POWERNV_MSI=y +CONFIG_POWER_AVS=y +CONFIG_POWER_AVS_OMAP=y +CONFIG_POWER_AVS_OMAP_CLASS3=y +CONFIG_POWER_RESET=y +CONFIG_POWER_RESET_GPIO=y +CONFIG_POWER_RESET_RESTART=y +CONFIG_POWER_RESET_SYSCON=y +CONFIG_POWER_RESET_VEXPRESS=y +# CONFIG_POWER_RESET_XGENE is not set +CONFIG_POWER_SUPPLY=y +# CONFIG_POWER_SUPPLY_DEBUG is not set +CONFIG_PPA8548=y +CONFIG_PPC=y +CONFIG_PPC32=y +# CONFIG_PPC601_SYNC_FIX is not set +# CONFIG_PPC_82xx is not set +# CONFIG_PPC_83xx is not set +# CONFIG_PPC_86xx is not set +# CONFIG_PPC_8xx is not set +CONFIG_PPC_A2=y +CONFIG_PPC_ADV_DEBUG_DACS=2 +CONFIG_PPC_ADV_DEBUG_DVCS=0 +CONFIG_PPC_ADV_DEBUG_IACS=2 +CONFIG_PPC_ADV_DEBUG_REGS=y +CONFIG_PPC_BOOK3E=y +CONFIG_PPC_BOOK3E_MMU=y +CONFIG_PPC_BOOK3S=y +# CONFIG_PPC_CELLEB is not set +# CONFIG_PPC_CELL_NATIVE is not set +# CONFIG_PPC_CELL_QPACE is not set +CONFIG_PPC_CHROMA=y +CONFIG_PPC_CHRP=y +# CONFIG_PPC_CLOCK is not set +CONFIG_PPC_CORENET_CPUFREQ=m +# CONFIG_PPC_DCR_MMIO is not set +# CONFIG_PPC_DCR_NATIVE is not set +CONFIG_PPC_E500MC=y +# CONFIG_PPC_EARLY_DEBUG is not set +# CONFIG_PPC_EARLY_DEBUG_EHV_BC is not set +# CONFIG_PPC_EMULATED_STATS is not set +CONFIG_PPC_EMULATE_SSTEP=y +CONFIG_PPC_FPU=y +CONFIG_PPC_FSL_BOOK3E=y +CONFIG_PPC_HAVE_PMU_SUPPORT=y +# CONFIG_PPC_IBM_CELL_BLADE is not set +CONFIG_PPC_ICSWX_PID=y +# CONFIG_PPC_ICSWX_USE_SIGILL is not set +CONFIG_PPC_INDIRECT_PIO=y +CONFIG_PPC_IO_WORKAROUNDS=y +CONFIG_PPC_LIB_RHEAP=y +CONFIG_PPC_MMU_NOHASH=y +# CONFIG_PPC_MPC512x is not set +# CONFIG_PPC_MPC52xx is not set +CONFIG_PPC_MSI_BITMAP=y +CONFIG_PPC_NATIVE=y +CONFIG_PPC_OF=y +# CONFIG_PPC_OF_PLATFORM_PCI is not set +CONFIG_PPC_PASEMI_CPUFREQ=y +CONFIG_PPC_PASEMI_IOMMU=y +# CONFIG_PPC_PASEMI_IOMMU_DMA_FORCE is not set +CONFIG_PPC_PASEMI_MDIO=y +CONFIG_PPC_PCI_CHOICE=y +CONFIG_PPC_PERF_CTRS=y +CONFIG_PPC_PMAC32_PSURGE=y +CONFIG_PPC_PMAC64=y +CONFIG_PPC_POWERNV=y +CONFIG_PPC_POWERNV_RTAS=y +CONFIG_PPC_PSERIES=y +CONFIG_PPC_PSR2=y +CONFIG_PPC_QEMU_E500=y +CONFIG_PPC_RTAS_DAEMON=y +CONFIG_PPC_SCOM=y +CONFIG_PPC_SMP_MUXED_IPI=y +CONFIG_PPC_STD_MMU=y +CONFIG_PPC_STD_MMU_32=y +CONFIG_PPC_STD_MMU_64=y +CONFIG_PPC_SUBPAGE_PROT=y +CONFIG_PPC_TRANSACTIONAL_MEM=y +CONFIG_PPC_UDBG_16550=y +CONFIG_PPC_WERROR=y +CONFIG_PPDEV=m +CONFIG_PPP=y +CONFIG_PPPOATM=m +CONFIG_PPPOE=m +CONFIG_PPPOL2TP=m +CONFIG_PPP_ASYNC=m +CONFIG_PPP_BSDCOMP=m +CONFIG_PPP_DEFLATE=m +CONFIG_PPP_FILTER=y +CONFIG_PPP_MPPE=m +CONFIG_PPP_MULTILINK=y +CONFIG_PPP_SYNC_TTY=m +# CONFIG_PPS_CLIENT_KTIMER is not set +# CONFIG_PPS_DEBUG is not set +CONFIG_PPTP=m +# CONFIG_PQ2ADS is not set +CONFIG_PREEMPT_COUNT=y +# CONFIG_PREEMPT_NONE is not set +CONFIG_PREEMPT_NOTIFIERS=y +# CONFIG_PREEMPT_TRACER is not set +CONFIG_PREVENT_FIRMWARE_BUILD=y +CONFIG_PRINTER=m +CONFIG_PRINTK=y +CONFIG_PRINTK_TIME=y +# CONFIG_PRINT_QUOTA_WARNING is not set +CONFIG_PRINT_STACK_DEPTH=64 +CONFIG_PRISM2_USB=m +# CONFIG_PRISM54 is not set +CONFIG_PROCESSOR_SELECT=y +CONFIG_PROC_DEVICETREE=y +CONFIG_PROC_EVENTS=y +CONFIG_PROC_FS=y +CONFIG_PROC_KCORE=y +CONFIG_PROC_PAGE_MONITOR=y +CONFIG_PROC_PID_CPUSET=y +CONFIG_PROC_SYSCTL=y +CONFIG_PROC_VMCORE=y +# CONFIG_PROFILE_ALL_BRANCHES is not set +# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set +CONFIG_PROFILING=y +# CONFIG_PROVE_LOCKING is not set +# CONFIG_PROVE_RCU_DELAY is not set +# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set +# CONFIG_PS3GELIC_UDBG is not set +# CONFIG_PS3_ADVANCED is not set +CONFIG_PS3_DISK=m +# CONFIG_PS3_DYNAMIC_DMA is not set +CONFIG_PS3_FLASH=m +CONFIG_PS3_HTAB_SIZE=20 +CONFIG_PS3_LPM=m +CONFIG_PS3_PS3AV=y +# CONFIG_PS3_REPOSITORY_WRITE is not set +CONFIG_PS3_ROM=m +CONFIG_PS3_STORAGE=m +CONFIG_PS3_SYS_MANAGER=y +CONFIG_PS3_VRAM=m +CONFIG_PS3_VUART=y +CONFIG_PSERIES_IDLE=y +CONFIG_PSERIES_MSI=y +CONFIG_PSTORE=y +# CONFIG_PSTORE_FTRACE is not set +CONFIG_PTE_64BIT=y +CONFIG_PTP_1588_CLOCK_GIANFAR=m +CONFIG_PTP_1588_CLOCK_PCH=m +CONFIG_PUBLIC_KEY_ALGO_RSA=y +CONFIG_PVPANIC=m +CONFIG_PWM=y +# CONFIG_PWM_IMX is not set +CONFIG_PWM_PCA9685=m +CONFIG_PWM_SYSFS=y +CONFIG_PWM_TEGRA=m +# CONFIG_PWM_TIECAP is not set +# CONFIG_PWM_TIEHRPWM is not set +CONFIG_PWM_TWL=m +CONFIG_PWM_TWL_LED=m +CONFIG_QE_USB=y +CONFIG_QFMT_V1=m +CONFIG_QFMT_V2=m +CONFIG_QLA3XXX=m +CONFIG_QLCNIC=m +CONFIG_QLCNIC_DCB=y +CONFIG_QLCNIC_SRIOV=y +CONFIG_QLGE=m +CONFIG_QNX4FS_FS=m +# CONFIG_QNX6FS_DEBUG is not set +CONFIG_QNX6FS_FS=m +CONFIG_QSEMI_PHY=y +# CONFIG_QUICC_ENGINE is not set +CONFIG_QUOTA=y +CONFIG_QUOTACTL=y +CONFIG_QUOTACTL_COMPAT=y +# CONFIG_QUOTA_DEBUG is not set +CONFIG_QUOTA_NETLINK_INTERFACE=y +CONFIG_QUOTA_TREE=m +CONFIG_R3964=m +CONFIG_R6040=m +CONFIG_R8169=m +CONFIG_R8187SE=m +CONFIG_R8188EU=m +CONFIG_R8712U=m +CONFIG_R8821AE=m +CONFIG_RADIO_ADAPTERS=y +CONFIG_RADIO_AZTECH=m +CONFIG_RADIO_CADET=m +CONFIG_RADIO_GEMTEK=m +CONFIG_RADIO_ISA=m +CONFIG_RADIO_MAXIRADIO=m +CONFIG_RADIO_MIROPCM20=m +CONFIG_RADIO_RTRACK=m +CONFIG_RADIO_RTRACK2=m +CONFIG_RADIO_SAA7706H=m +CONFIG_RADIO_SF16FMI=m +CONFIG_RADIO_SF16FMR2=m +CONFIG_RADIO_SHARK=m +CONFIG_RADIO_SHARK2=m +CONFIG_RADIO_SI470X=y +CONFIG_RADIO_SI4713=m +CONFIG_RADIO_SI476X=m +CONFIG_RADIO_TEA575X=m +CONFIG_RADIO_TEA5764=m +CONFIG_RADIO_TEF6862=m +CONFIG_RADIO_TERRATEC=m +CONFIG_RADIO_TIMBERDALE=m +CONFIG_RADIO_TRUST=m +CONFIG_RADIO_TYPHOON=m +CONFIG_RADIO_WL1273=m +CONFIG_RADIO_WL128X=m +CONFIG_RADIO_ZOLTRIX=m +CONFIG_RAID6_PQ=m +CONFIG_RAID_ATTRS=m +# CONFIG_RANDOM32_SELFTEST is not set +CONFIG_RAPIDIO=y +# CONFIG_RAPIDIO_DEBUG is not set +CONFIG_RAPIDIO_DISC_TIMEOUT=30 +CONFIG_RAPIDIO_DMA_ENGINE=y +# CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS is not set +CONFIG_RAPIDIO_ENUM_BASIC=m +CONFIG_RATIONAL=y +CONFIG_RAW_DRIVER=m +# CONFIG_RCU_BOOST is not set +# CONFIG_RCU_CPU_STALL_INFO is not set +# CONFIG_RCU_CPU_STALL_VERBOSE is not set +# CONFIG_RCU_FANOUT_EXACT is not set +CONFIG_RCU_FANOUT_LEAF=16 +CONFIG_RCU_NOCB_CPU_ALL=y +CONFIG_RCU_STALL_COMMON=y +# CONFIG_RCU_TORTURE_TEST is not set +# CONFIG_RCU_TRACE is not set +CONFIG_RC_ATI_REMOTE=m +CONFIG_RC_CORE=m +CONFIG_RC_DECODERS=y +CONFIG_RC_DEVICES=y +CONFIG_RC_LOOPBACK=m +CONFIG_RC_MAP=m +CONFIG_RDS=m +# CONFIG_RDS_DEBUG is not set +CONFIG_RDS_RDMA=m +CONFIG_RDS_TCP=m +CONFIG_RD_BZIP2=y +CONFIG_RD_GZIP=y +CONFIG_RD_LZ4=y +CONFIG_RD_LZMA=y +CONFIG_RD_LZO=y +CONFIG_RD_XZ=y +# CONFIG_READABLE_ASM is not set +CONFIG_REALTEK_AUTOPM=y +CONFIG_REALTEK_PHY=y +CONFIG_REED_SOLOMON_DEC16=y +CONFIG_REED_SOLOMON_DEC8=y +CONFIG_REED_SOLOMON_ENC8=y +CONFIG_REGMAP=y +CONFIG_REGMAP_I2C=y +CONFIG_REGMAP_IRQ=y +CONFIG_REGMAP_MMIO=y +CONFIG_REGMAP_SPI=y +CONFIG_REGULATOR=y +CONFIG_REGULATOR_88PM800=m +CONFIG_REGULATOR_88PM8607=y +CONFIG_REGULATOR_AAT2870=m +CONFIG_REGULATOR_AB3100=m +CONFIG_REGULATOR_AD5398=m +CONFIG_REGULATOR_ANATOP=m +CONFIG_REGULATOR_ARIZONA=m +CONFIG_REGULATOR_AS3711=m +CONFIG_REGULATOR_AS3722=m +CONFIG_REGULATOR_DA903X=m +CONFIG_REGULATOR_DA9052=m +CONFIG_REGULATOR_DA9055=m +CONFIG_REGULATOR_DA9063=m +CONFIG_REGULATOR_DA9210=m +# CONFIG_REGULATOR_DEBUG is not set +CONFIG_REGULATOR_FAN53555=m +CONFIG_REGULATOR_GPIO=m +CONFIG_REGULATOR_ISL6271A=m +CONFIG_REGULATOR_LP3971=m +CONFIG_REGULATOR_LP3972=m +CONFIG_REGULATOR_LP872X=y +CONFIG_REGULATOR_LP8755=m +CONFIG_REGULATOR_LP8788=y +CONFIG_REGULATOR_MAX1586=m +CONFIG_REGULATOR_MAX77686=m +CONFIG_REGULATOR_MAX77693=m +CONFIG_REGULATOR_MAX8649=m +CONFIG_REGULATOR_MAX8660=m +CONFIG_REGULATOR_MAX8907=m +CONFIG_REGULATOR_MAX8925=m +CONFIG_REGULATOR_MAX8952=m +CONFIG_REGULATOR_MAX8973=m +CONFIG_REGULATOR_MAX8997=m +CONFIG_REGULATOR_MAX8998=m +CONFIG_REGULATOR_MC13783=m +CONFIG_REGULATOR_MC13892=m +CONFIG_REGULATOR_MC13XXX_CORE=m +CONFIG_REGULATOR_PALMAS=m +CONFIG_REGULATOR_PCAP=m +CONFIG_REGULATOR_PCF50633=m +CONFIG_REGULATOR_PFUZE100=m +CONFIG_REGULATOR_RC5T583=m +CONFIG_REGULATOR_S5M8767=m +CONFIG_REGULATOR_TI_ABB=y +CONFIG_REGULATOR_TPS51632=m +CONFIG_REGULATOR_TPS6105X=m +CONFIG_REGULATOR_TPS62360=m +CONFIG_REGULATOR_TPS65023=m +CONFIG_REGULATOR_TPS6507X=m +CONFIG_REGULATOR_TPS65090=m +CONFIG_REGULATOR_TPS65217=m +CONFIG_REGULATOR_TPS6524X=m +CONFIG_REGULATOR_TPS6586X=m +CONFIG_REGULATOR_TPS65910=m +CONFIG_REGULATOR_TPS65912=m +CONFIG_REGULATOR_TPS80031=m +CONFIG_REGULATOR_TWL4030=y +CONFIG_REGULATOR_USERSPACE_CONSUMER=m +CONFIG_REGULATOR_VEXPRESS=m +CONFIG_REGULATOR_VIRTUAL_CONSUMER=m +CONFIG_REGULATOR_WM831X=m +CONFIG_REGULATOR_WM8350=m +CONFIG_REGULATOR_WM8400=m +CONFIG_REGULATOR_WM8994=m +# CONFIG_REISERFS_CHECK is not set +CONFIG_REISERFS_FS_POSIX_ACL=y +CONFIG_REISERFS_FS_SECURITY=y +CONFIG_REISERFS_FS_XATTR=y +# CONFIG_REISERFS_PROC_INFO is not set +CONFIG_RELAY=y +CONFIG_RELOCATABLE=y +CONFIG_REMOTEPROC=m +CONFIG_RESET_CONTROLLER=y +CONFIG_RESOURCE_COUNTERS=y +CONFIG_RETU_WATCHDOG=m +CONFIG_RFD_FTL=m +CONFIG_RFKILL_GPIO=m +CONFIG_RFKILL_INPUT=y +CONFIG_RFKILL_LEDS=y +CONFIG_RFKILL_REGULATOR=m +CONFIG_RFS_ACCEL=y +CONFIG_RING_BUFFER=y +CONFIG_RING_BUFFER_ALLOW_SWAP=y +# CONFIG_RING_BUFFER_BENCHMARK is not set +# CONFIG_RING_BUFFER_STARTUP_TEST is not set +CONFIG_RIONET=m +CONFIG_RIONET_RX_SIZE=128 +CONFIG_RIONET_TX_SIZE=128 +CONFIG_ROCKETPORT=m +CONFIG_ROMFS_BACKED_BY_BLOCK=y +# CONFIG_ROMFS_BACKED_BY_BOTH is not set +# CONFIG_ROMFS_BACKED_BY_MTD is not set +CONFIG_ROMFS_FS=m +CONFIG_ROMFS_ON_BLOCK=y +CONFIG_ROSE=m +CONFIG_RPCSEC_GSS_KRB5=m +CONFIG_RPMSG=m +CONFIG_RPS=y +CONFIG_RT2400PCI=m +CONFIG_RT2500PCI=m +CONFIG_RT2500USB=m +CONFIG_RT2800PCI=m +CONFIG_RT2800PCI_RT3290=y +CONFIG_RT2800PCI_RT33XX=y +CONFIG_RT2800PCI_RT35XX=y +CONFIG_RT2800PCI_RT53XX=y +CONFIG_RT2800USB=m +CONFIG_RT2800USB_RT33XX=y +CONFIG_RT2800USB_RT3573=y +CONFIG_RT2800USB_RT35XX=y +CONFIG_RT2800USB_RT53XX=y +CONFIG_RT2800USB_RT55XX=y +CONFIG_RT2800_LIB=m +CONFIG_RT2800_LIB_MMIO=m +CONFIG_RT2X00=m +# CONFIG_RT2X00_DEBUG is not set +CONFIG_RT2X00_LIB=m +CONFIG_RT2X00_LIB_CRYPTO=y +CONFIG_RT2X00_LIB_FIRMWARE=y +CONFIG_RT2X00_LIB_LEDS=y +CONFIG_RT2X00_LIB_MMIO=m +CONFIG_RT2X00_LIB_PCI=m +CONFIG_RT2X00_LIB_USB=m +CONFIG_RT61PCI=m +CONFIG_RT73USB=m +CONFIG_RTAS_ERROR_LOGGING=y +CONFIG_RTAS_PROC=y +CONFIG_RTC_CLASS=y +# CONFIG_RTC_DEBUG is not set +CONFIG_RTC_DRV_88PM80X=m +CONFIG_RTC_DRV_88PM860X=m +CONFIG_RTC_DRV_AB3100=m +CONFIG_RTC_DRV_AS3722=m +CONFIG_RTC_DRV_BQ32K=m +CONFIG_RTC_DRV_BQ4802=m +CONFIG_RTC_DRV_DA9052=m +CONFIG_RTC_DRV_DA9055=m +CONFIG_RTC_DRV_DS1286=m +CONFIG_RTC_DRV_DS1305=m +CONFIG_RTC_DRV_DS1307=m +CONFIG_RTC_DRV_DS1374=m +CONFIG_RTC_DRV_DS1390=m +CONFIG_RTC_DRV_DS1511=m +CONFIG_RTC_DRV_DS1553=m +CONFIG_RTC_DRV_DS1672=m +CONFIG_RTC_DRV_DS1742=m +CONFIG_RTC_DRV_DS2404=m +CONFIG_RTC_DRV_DS3234=m +CONFIG_RTC_DRV_EM3027=m +CONFIG_RTC_DRV_FM3130=m +CONFIG_RTC_DRV_GENERIC=m +CONFIG_RTC_DRV_HID_SENSOR_TIME=m +# CONFIG_RTC_DRV_IMXDI is not set +CONFIG_RTC_DRV_ISL12022=m +CONFIG_RTC_DRV_ISL1208=m +CONFIG_RTC_DRV_LP8788=m +CONFIG_RTC_DRV_M41T80=m +CONFIG_RTC_DRV_M41T80_WDT=y +CONFIG_RTC_DRV_M41T93=m +CONFIG_RTC_DRV_M41T94=m +CONFIG_RTC_DRV_M48T35=m +CONFIG_RTC_DRV_M48T59=m +CONFIG_RTC_DRV_M48T86=m +CONFIG_RTC_DRV_MAX6900=m +CONFIG_RTC_DRV_MAX6902=m +CONFIG_RTC_DRV_MAX77686=m +CONFIG_RTC_DRV_MAX8907=m +CONFIG_RTC_DRV_MAX8925=m +CONFIG_RTC_DRV_MAX8997=m +CONFIG_RTC_DRV_MAX8998=m +CONFIG_RTC_DRV_MC13XXX=m +CONFIG_RTC_DRV_MOXART=m +CONFIG_RTC_DRV_MSM6242=m +# CONFIG_RTC_DRV_MXC is not set +CONFIG_RTC_DRV_OMAP=y +CONFIG_RTC_DRV_PALMAS=m +CONFIG_RTC_DRV_PCAP=m +CONFIG_RTC_DRV_PCF2123=m +CONFIG_RTC_DRV_PCF2127=m +CONFIG_RTC_DRV_PCF50633=m +CONFIG_RTC_DRV_PCF8523=m +CONFIG_RTC_DRV_PCF8563=m +CONFIG_RTC_DRV_PCF8583=m +CONFIG_RTC_DRV_PL030=m +CONFIG_RTC_DRV_PS3=m +CONFIG_RTC_DRV_R9701=m +CONFIG_RTC_DRV_RC5T583=m +CONFIG_RTC_DRV_RP5C01=m +CONFIG_RTC_DRV_RS5C348=m +CONFIG_RTC_DRV_RS5C372=m +CONFIG_RTC_DRV_RV3029C2=m +CONFIG_RTC_DRV_RX4581=m +CONFIG_RTC_DRV_RX8025=m +CONFIG_RTC_DRV_RX8581=m +CONFIG_RTC_DRV_S35390A=m +CONFIG_RTC_DRV_S5M=m +CONFIG_RTC_DRV_SNVS=m +CONFIG_RTC_DRV_STK17TA8=m +CONFIG_RTC_DRV_TEGRA=m +# CONFIG_RTC_DRV_TEST is not set +CONFIG_RTC_DRV_TPS6586X=m +CONFIG_RTC_DRV_TPS65910=m +CONFIG_RTC_DRV_TPS80031=m +CONFIG_RTC_DRV_TWL4030=y +CONFIG_RTC_DRV_V3020=m +CONFIG_RTC_DRV_VRTC=m +CONFIG_RTC_DRV_WM831X=m +CONFIG_RTC_DRV_WM8350=m +CONFIG_RTC_DRV_X1205=m +CONFIG_RTC_DRV_XGENE=y +CONFIG_RTC_HCTOSYS=y +CONFIG_RTC_HCTOSYS_DEVICE="rtc0" +CONFIG_RTC_INTF_DEV=y +# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set +CONFIG_RTC_INTF_PROC=y +CONFIG_RTC_INTF_SYSFS=y +CONFIG_RTC_LIB=y +CONFIG_RTC_SYSTOHC=y +CONFIG_RTL8180=m +CONFIG_RTL8187=m +CONFIG_RTL8187_LEDS=y +CONFIG_RTL8188EE=m +CONFIG_RTL8192CE=m +CONFIG_RTL8192CU=m +CONFIG_RTL8192C_COMMON=m +CONFIG_RTL8192DE=m +CONFIG_RTL8192E=m +CONFIG_RTL8192SE=m +CONFIG_RTL8192U=m +CONFIG_RTL8723AE=m +CONFIG_RTL8723BE=m +CONFIG_RTL8723_COMMON=m +CONFIG_RTLBTCOEXIST=m +CONFIG_RTLLIB=m +CONFIG_RTLLIB_CRYPTO_CCMP=m +CONFIG_RTLLIB_CRYPTO_TKIP=m +CONFIG_RTLLIB_CRYPTO_WEP=m +CONFIG_RTLWIFI=m +# CONFIG_RTLWIFI_DEBUG is not set +CONFIG_RTLWIFI_PCI=m +CONFIG_RTLWIFI_USB=m +CONFIG_RTL_CARDS=m +CONFIG_RTS5139=m +# CONFIG_RTS5139_DEBUG is not set +# CONFIG_RT_GROUP_SCHED is not set +CONFIG_RT_MUTEXES=y +# CONFIG_RT_MUTEX_TESTER is not set +CONFIG_RWSEM_GENERIC_SPINLOCK=y +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +CONFIG_RXKAD=m +CONFIG_S2IO=m +# CONFIG_SAMPLES is not set +CONFIG_SAMSUNG_LAPTOP=m +CONFIG_SAMSUNG_Q10=m +CONFIG_SAMSUNG_USBPHY=m +CONFIG_SATA_ACARD_AHCI=m +CONFIG_SATA_AHCI=m +CONFIG_SATA_FSL=m +CONFIG_SATA_INIC162X=m +CONFIG_SATA_MV=m +CONFIG_SATA_NV=m +CONFIG_SATA_PMP=y +CONFIG_SATA_PROMISE=m +CONFIG_SATA_QSTOR=m +CONFIG_SATA_RCAR=m +CONFIG_SATA_SIL=m +CONFIG_SATA_SIL24=m +CONFIG_SATA_SIS=m +CONFIG_SATA_SX4=m +CONFIG_SATA_ULI=m +CONFIG_SATA_VIA=m +CONFIG_SATA_VITESSE=m +CONFIG_SATA_ZPODD=y +CONFIG_SBC7240_WDT=m +CONFIG_SBC8360_WDT=m +CONFIG_SBC_EPX_C3_WATCHDOG=m +CONFIG_SBC_FITPC2_WATCHDOG=m +CONFIG_SBE_2T3E3=m +CONFIG_SBE_PMCC4_NCOMM=y +CONFIG_SBNI=m +# CONFIG_SBNI_MULTILINE is not set +CONFIG_SBP_TARGET=m +CONFIG_SBYPASS=m +CONFIG_SC1200_WDT=m +CONFIG_SC520_WDT=m +CONFIG_SC92031=m +CONFIG_SCA3000=m +CONFIG_SCANLOG=m +CONFIG_SCC=m +# CONFIG_SCC_DELAY is not set +# CONFIG_SCC_TRXECHO is not set +CONFIG_SCHEDSTATS=y +CONFIG_SCHED_DEBUG=y +CONFIG_SCHED_HRTICK=y +CONFIG_SCHED_MC=y +CONFIG_SCHED_OMIT_FRAME_POINTER=y +CONFIG_SCHED_TRACER=y +# CONFIG_SCOM_DEBUGFS is not set +CONFIG_SCSI=y +CONFIG_SCSI_3W_9XXX=m +CONFIG_SCSI_3W_SAS=m +CONFIG_SCSI_7000FASST=m +CONFIG_SCSI_AACRAID=m +CONFIG_SCSI_ACARD=m +CONFIG_SCSI_ADVANSYS=m +CONFIG_SCSI_AHA152X=m +CONFIG_SCSI_AHA1542=m +CONFIG_SCSI_AHA1740=m +CONFIG_SCSI_AIC79XX=m +CONFIG_SCSI_AIC7XXX=m +# CONFIG_SCSI_AIC7XXX_OLD is not set +CONFIG_SCSI_AIC94XX=m +CONFIG_SCSI_ARCMSR=m +CONFIG_SCSI_BFA_FC=m +CONFIG_SCSI_BNX2X_FCOE=m +CONFIG_SCSI_BNX2_ISCSI=m +CONFIG_SCSI_BUSLOGIC=m +CONFIG_SCSI_CHELSIO_FCOE=m +CONFIG_SCSI_CONSTANTS=y +CONFIG_SCSI_CXGB3_ISCSI=m +CONFIG_SCSI_CXGB4_ISCSI=m +CONFIG_SCSI_DC390T=m +CONFIG_SCSI_DC395x=m +CONFIG_SCSI_DEBUG=m +CONFIG_SCSI_DH=m +CONFIG_SCSI_DH_ALUA=m +CONFIG_SCSI_DH_EMC=m +CONFIG_SCSI_DH_HP_SW=m +CONFIG_SCSI_DH_RDAC=m +CONFIG_SCSI_DMA=y +CONFIG_SCSI_DMX3191D=m +CONFIG_SCSI_DPT_I2O=m +CONFIG_SCSI_DTC3280=m +CONFIG_SCSI_EATA=m +CONFIG_SCSI_EATA_LINKED_COMMANDS=y +CONFIG_SCSI_EATA_MAX_TAGS=16 +CONFIG_SCSI_EATA_TAGGED_QUEUE=y +CONFIG_SCSI_ENCLOSURE=m +CONFIG_SCSI_ESAS2R=m +CONFIG_SCSI_FC_ATTRS=m +CONFIG_SCSI_FC_TGT_ATTRS=y +CONFIG_SCSI_FLASHPOINT=y +CONFIG_SCSI_FUTURE_DOMAIN=m +CONFIG_SCSI_GDTH=m +CONFIG_SCSI_GENERIC_NCR5380=m +CONFIG_SCSI_GENERIC_NCR5380_MMIO=m +CONFIG_SCSI_GENERIC_NCR53C400=y +CONFIG_SCSI_HPSA=m +CONFIG_SCSI_HPTIOP=m +CONFIG_SCSI_IBMVFC=m +CONFIG_SCSI_IBMVFC_TRACE=y +CONFIG_SCSI_IBMVSCSI=y +CONFIG_SCSI_IMM=m +CONFIG_SCSI_IN2000=m +CONFIG_SCSI_INIA100=m +CONFIG_SCSI_INITIO=m +CONFIG_SCSI_IPR=m +# CONFIG_SCSI_IPR_DUMP is not set +# CONFIG_SCSI_IPR_TRACE is not set +CONFIG_SCSI_IPS=m +CONFIG_SCSI_ISCI=m +CONFIG_SCSI_ISCSI_ATTRS=m +# CONFIG_SCSI_IZIP_EPP16 is not set +# CONFIG_SCSI_IZIP_SLOW_CTR is not set +CONFIG_SCSI_LOGGING=y +CONFIG_SCSI_LOWLEVEL=y +CONFIG_SCSI_LOWLEVEL_PCMCIA=y +CONFIG_SCSI_LPFC=m +# CONFIG_SCSI_LPFC_DEBUG_FS is not set +CONFIG_SCSI_MAC53C94=m +CONFIG_SCSI_MESH=m +CONFIG_SCSI_MESH_RESET_DELAY_MS=4000 +CONFIG_SCSI_MESH_SYNC_RATE=5 +CONFIG_SCSI_MOD=y +CONFIG_SCSI_MPT2SAS=m +# CONFIG_SCSI_MPT2SAS_LOGGING is not set +CONFIG_SCSI_MPT2SAS_MAX_SGE=128 +CONFIG_SCSI_MPT3SAS=m +# CONFIG_SCSI_MPT3SAS_LOGGING is not set +CONFIG_SCSI_MPT3SAS_MAX_SGE=128 +CONFIG_SCSI_MULTI_LUN=y +CONFIG_SCSI_MVSAS=m +# CONFIG_SCSI_MVSAS_DEBUG is not set +# CONFIG_SCSI_MVSAS_TASKLET is not set +CONFIG_SCSI_MVUMI=m +CONFIG_SCSI_NCR53C406A=m +CONFIG_SCSI_NETLINK=y +CONFIG_SCSI_NSP32=m +# CONFIG_SCSI_OSD_DEBUG is not set +CONFIG_SCSI_OSD_DPRINT_SENSE=1 +CONFIG_SCSI_OSD_INITIATOR=m +CONFIG_SCSI_OSD_ULD=m +CONFIG_SCSI_PAS16=m +CONFIG_SCSI_PM8001=m +CONFIG_SCSI_PMCRAID=m +CONFIG_SCSI_PPA=m +CONFIG_SCSI_PROC_FS=y +CONFIG_SCSI_QLA_FC=m +CONFIG_SCSI_QLA_ISCSI=m +CONFIG_SCSI_QLOGIC_1280=m +CONFIG_SCSI_QLOGIC_FAS=m +CONFIG_SCSI_SAS_ATA=y +CONFIG_SCSI_SAS_ATTRS=m +CONFIG_SCSI_SAS_HOST_SMP=y +CONFIG_SCSI_SAS_LIBSAS=m +CONFIG_SCSI_SCAN_ASYNC=y +CONFIG_SCSI_SIM710=m +CONFIG_SCSI_SRP=m +CONFIG_SCSI_SRP_TGT_ATTRS=y +CONFIG_SCSI_STEX=m +CONFIG_SCSI_SYM53C416=m +CONFIG_SCSI_SYM53C8XX_2=m +CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 +CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 +CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 +CONFIG_SCSI_SYM53C8XX_MMIO=y +CONFIG_SCSI_T128=m +CONFIG_SCSI_TGT=m +CONFIG_SCSI_U14_34F=m +CONFIG_SCSI_U14_34F_LINKED_COMMANDS=y +CONFIG_SCSI_U14_34F_MAX_TAGS=8 +CONFIG_SCSI_U14_34F_TAGGED_QUEUE=y +CONFIG_SCSI_UFSHCD=m +CONFIG_SCSI_UFSHCD_PCI=m +CONFIG_SCSI_UFSHCD_PLATFORM=m +CONFIG_SCSI_ULTRASTOR=m +CONFIG_SCSI_VIRTIO=m +CONFIG_SCTP_COOKIE_HMAC_MD5=y +CONFIG_SCTP_COOKIE_HMAC_SHA1=y +# CONFIG_SCTP_DBG_OBJCNT is not set +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set +CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +CONFIG_SCx200=m +CONFIG_SCx200HR_TIMER=m +CONFIG_SCx200_ACB=m +CONFIG_SCx200_GPIO=m +# CONFIG_SCx200_I2C is not set +CONFIG_SCx200_WDT=m +CONFIG_SDIO_UART=m +CONFIG_SDLA=m +CONFIG_SEALEVEL_4021=m +CONFIG_SECCOMP=y +CONFIG_SECCOMP_FILTER=y +CONFIG_SECURITY=y +CONFIG_SECURITYFS=y +CONFIG_SECURITY_APPARMOR=y +CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1 +CONFIG_SECURITY_APPARMOR_HASH=y +# CONFIG_SECURITY_APPARMOR_STATS is not set +CONFIG_SECURITY_APPARMOR_UNCONFINED_INIT=y +# CONFIG_SECURITY_DMESG_RESTRICT is not set +CONFIG_SECURITY_NETWORK=y +# CONFIG_SECURITY_NETWORK_XFRM is not set +CONFIG_SECURITY_PATH=y +CONFIG_SECURITY_SELINUX=y +CONFIG_SECURITY_SELINUX_AVC_STATS=y +CONFIG_SECURITY_SELINUX_BOOTPARAM=y +CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=0 +CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1 +CONFIG_SECURITY_SELINUX_DEVELOP=y +CONFIG_SECURITY_SELINUX_DISABLE=y +# CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX is not set +CONFIG_SECURITY_SMACK=y +CONFIG_SECURITY_TOMOYO=y +CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER="/sbin/init" +CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048 +CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024 +# CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER is not set +CONFIG_SECURITY_TOMOYO_POLICY_LOADER="/sbin/tomoyo-init" +CONFIG_SECURITY_YAMA=y +CONFIG_SECURITY_YAMA_STACKED=y +CONFIG_SELECT_MEMORY_MODEL=y +CONFIG_SENSORS_ABITUGURU=m +CONFIG_SENSORS_ABITUGURU3=m +CONFIG_SENSORS_ACPI_POWER=m +CONFIG_SENSORS_AD7314=m +CONFIG_SENSORS_AD7414=m +CONFIG_SENSORS_AD7418=m +CONFIG_SENSORS_ADCXX=m +CONFIG_SENSORS_ADM1021=m +CONFIG_SENSORS_ADM1025=m +CONFIG_SENSORS_ADM1026=m +CONFIG_SENSORS_ADM1029=m +CONFIG_SENSORS_ADM1031=m +CONFIG_SENSORS_ADM1275=m +CONFIG_SENSORS_ADM9240=m +CONFIG_SENSORS_ADS1015=m +CONFIG_SENSORS_ADS7828=m +CONFIG_SENSORS_ADS7871=m +CONFIG_SENSORS_ADT7310=m +CONFIG_SENSORS_ADT7410=m +CONFIG_SENSORS_ADT7411=m +CONFIG_SENSORS_ADT7462=m +CONFIG_SENSORS_ADT7470=m +CONFIG_SENSORS_ADT7475=m +CONFIG_SENSORS_ADT7X10=m +CONFIG_SENSORS_AMC6821=m +CONFIG_SENSORS_AMS=m +# CONFIG_SENSORS_AMS_I2C is not set +# CONFIG_SENSORS_AMS_PMU is not set +CONFIG_SENSORS_APDS990X=m +CONFIG_SENSORS_APPLESMC=m +CONFIG_SENSORS_ASB100=m +CONFIG_SENSORS_ASC7621=m +CONFIG_SENSORS_ATK0110=m +CONFIG_SENSORS_ATXP1=m +CONFIG_SENSORS_BH1770=m +CONFIG_SENSORS_BH1780=m +CONFIG_SENSORS_CORETEMP=m +CONFIG_SENSORS_DA9052_ADC=m +CONFIG_SENSORS_DA9055=m +CONFIG_SENSORS_DME1737=m +CONFIG_SENSORS_DS1621=m +CONFIG_SENSORS_DS620=m +CONFIG_SENSORS_EMC1403=m +CONFIG_SENSORS_EMC2103=m +CONFIG_SENSORS_EMC6W201=m +CONFIG_SENSORS_F71805F=m +CONFIG_SENSORS_F71882FG=m +CONFIG_SENSORS_F75375S=m +CONFIG_SENSORS_FAM15H_POWER=m +CONFIG_SENSORS_FSCHMD=m +CONFIG_SENSORS_G760A=m +CONFIG_SENSORS_G762=m +CONFIG_SENSORS_GL518SM=m +CONFIG_SENSORS_GL520SM=m +CONFIG_SENSORS_GPIO_FAN=m +CONFIG_SENSORS_HDAPS=m +CONFIG_SENSORS_HIH6130=m +CONFIG_SENSORS_HMC5843=m +CONFIG_SENSORS_HTU21=m +CONFIG_SENSORS_I5K_AMB=m +CONFIG_SENSORS_IBMAEM=m +CONFIG_SENSORS_IBMPEX=m +CONFIG_SENSORS_IIO_HWMON=m +CONFIG_SENSORS_INA209=m +CONFIG_SENSORS_INA2XX=m +CONFIG_SENSORS_ISL29018=m +CONFIG_SENSORS_ISL29028=m +CONFIG_SENSORS_IT87=m +CONFIG_SENSORS_JC42=m +CONFIG_SENSORS_K10TEMP=m +CONFIG_SENSORS_K8TEMP=m +CONFIG_SENSORS_LINEAGE=m +CONFIG_SENSORS_LIS3LV02D=m +CONFIG_SENSORS_LIS3_I2C=m +CONFIG_SENSORS_LIS3_SPI=m +CONFIG_SENSORS_LM25066=m +CONFIG_SENSORS_LM3533=m +CONFIG_SENSORS_LM63=m +CONFIG_SENSORS_LM70=m +CONFIG_SENSORS_LM73=m +CONFIG_SENSORS_LM75=m +CONFIG_SENSORS_LM77=m +CONFIG_SENSORS_LM78=m +CONFIG_SENSORS_LM80=m +CONFIG_SENSORS_LM83=m +CONFIG_SENSORS_LM85=m +CONFIG_SENSORS_LM87=m +CONFIG_SENSORS_LM90=m +CONFIG_SENSORS_LM92=m +CONFIG_SENSORS_LM93=m +CONFIG_SENSORS_LM95234=m +CONFIG_SENSORS_LM95241=m +CONFIG_SENSORS_LM95245=m +CONFIG_SENSORS_LTC2978=m +CONFIG_SENSORS_LTC4151=m +CONFIG_SENSORS_LTC4215=m +CONFIG_SENSORS_LTC4245=m +CONFIG_SENSORS_LTC4261=m +CONFIG_SENSORS_MAX1111=m +CONFIG_SENSORS_MAX16064=m +CONFIG_SENSORS_MAX16065=m +CONFIG_SENSORS_MAX1619=m +CONFIG_SENSORS_MAX1668=m +CONFIG_SENSORS_MAX197=m +CONFIG_SENSORS_MAX34440=m +CONFIG_SENSORS_MAX6639=m +CONFIG_SENSORS_MAX6642=m +CONFIG_SENSORS_MAX6650=m +CONFIG_SENSORS_MAX6697=m +CONFIG_SENSORS_MAX8688=m +CONFIG_SENSORS_MC13783_ADC=m +CONFIG_SENSORS_MCP3021=m +CONFIG_SENSORS_NCT6775=m +CONFIG_SENSORS_NTC_THERMISTOR=m +CONFIG_SENSORS_PC87360=m +CONFIG_SENSORS_PC87427=m +CONFIG_SENSORS_PCF8591=m +CONFIG_SENSORS_PMBUS=m +CONFIG_SENSORS_SCH5627=m +CONFIG_SENSORS_SCH5636=m +CONFIG_SENSORS_SHT15=m +CONFIG_SENSORS_SHT21=m +CONFIG_SENSORS_SIS5595=m +CONFIG_SENSORS_SMM665=m +CONFIG_SENSORS_SMSC47B397=m +CONFIG_SENSORS_SMSC47M1=m +CONFIG_SENSORS_SMSC47M192=m +CONFIG_SENSORS_THMC50=m +CONFIG_SENSORS_TMP102=m +CONFIG_SENSORS_TMP401=m +CONFIG_SENSORS_TMP421=m +CONFIG_SENSORS_TSL2550=m +CONFIG_SENSORS_TSL2563=m +CONFIG_SENSORS_TWL4030_MADC=m +CONFIG_SENSORS_UCD9000=m +CONFIG_SENSORS_UCD9200=m +CONFIG_SENSORS_VEXPRESS=m +CONFIG_SENSORS_VIA686A=m +CONFIG_SENSORS_VIA_CPUTEMP=m +CONFIG_SENSORS_VT1211=m +CONFIG_SENSORS_VT8231=m +CONFIG_SENSORS_W83627EHF=m +CONFIG_SENSORS_W83627HF=m +CONFIG_SENSORS_W83781D=m +CONFIG_SENSORS_W83791D=m +CONFIG_SENSORS_W83792D=m +CONFIG_SENSORS_W83793=m +CONFIG_SENSORS_W83795=m +# CONFIG_SENSORS_W83795_FANCTRL is not set +CONFIG_SENSORS_W83L785TS=m +CONFIG_SENSORS_W83L786NG=m +CONFIG_SENSORS_WM831X=m +CONFIG_SENSORS_WM8350=m +CONFIG_SENSORS_ZL6100=m +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_ACCENT=m +CONFIG_SERIAL_8250_BOCA=m +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_CS=m +# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set +# CONFIG_SERIAL_8250_DETECT_IRQ is not set +CONFIG_SERIAL_8250_DMA=y +CONFIG_SERIAL_8250_DW=m +# CONFIG_SERIAL_8250_EM is not set +CONFIG_SERIAL_8250_EXAR_ST16C554=m +CONFIG_SERIAL_8250_EXTENDED=y +CONFIG_SERIAL_8250_FOURPORT=m +CONFIG_SERIAL_8250_FSL=y +CONFIG_SERIAL_8250_HUB6=m +CONFIG_SERIAL_8250_MANY_PORTS=y +CONFIG_SERIAL_8250_NR_UARTS=48 +CONFIG_SERIAL_8250_PNP=y +CONFIG_SERIAL_8250_RSA=y +CONFIG_SERIAL_8250_RUNTIME_UARTS=32 +CONFIG_SERIAL_8250_SHARE_IRQ=y +CONFIG_SERIAL_ALTERA_JTAGUART=m +CONFIG_SERIAL_ALTERA_UART=m +CONFIG_SERIAL_ALTERA_UART_BAUDRATE=115200 +CONFIG_SERIAL_ALTERA_UART_MAXPORTS=4 +CONFIG_SERIAL_AMBA_PL010=m +CONFIG_SERIAL_AMBA_PL011=y +CONFIG_SERIAL_AMBA_PL011_CONSOLE=y +CONFIG_SERIAL_ARC=m +CONFIG_SERIAL_ARC_NR_PORTS=1 +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +CONFIG_SERIAL_CPM=m +CONFIG_SERIAL_ICOM=m +# CONFIG_SERIAL_IFX6X60 is not set +CONFIG_SERIAL_IMX=y +CONFIG_SERIAL_IMX_CONSOLE=y +CONFIG_SERIAL_IPOCTAL=m +CONFIG_SERIAL_JSM=m +CONFIG_SERIAL_KGDB_NMI=y +CONFIG_SERIAL_MAX3100=m +CONFIG_SERIAL_MAX310X=y +CONFIG_SERIAL_MFD_HSU=m +CONFIG_SERIAL_MRST_MAX3110=m +CONFIG_SERIAL_NONSTANDARD=y +CONFIG_SERIAL_OMAP=y +CONFIG_SERIAL_OMAP_CONSOLE=y +CONFIG_SERIAL_PCH_UART=m +CONFIG_SERIAL_PMACZILOG=y +CONFIG_SERIAL_PMACZILOG_CONSOLE=y +# CONFIG_SERIAL_PMACZILOG_TTYS is not set +CONFIG_SERIAL_RP2=m +CONFIG_SERIAL_RP2_NR_UARTS=32 +CONFIG_SERIAL_SCCNXP=y +CONFIG_SERIAL_SCCNXP_CONSOLE=y +CONFIG_SERIAL_SH_SCI=m +CONFIG_SERIAL_SH_SCI_NR_UARTS=2 +CONFIG_SERIAL_ST_ASC=m +CONFIG_SERIAL_TEGRA=m +CONFIG_SERIAL_TIMBERDALE=m +CONFIG_SERIAL_UARTLITE=m +CONFIG_SERIAL_XILINX_PS_UART=m +CONFIG_SERIO=y +CONFIG_SERIO_AMBAKMI=m +CONFIG_SERIO_CT82C710=m +CONFIG_SERIO_LIBPS2=y +CONFIG_SERIO_NVEC_PS2=m +CONFIG_SERIO_SERPORT=m +CONFIG_SFC=m +CONFIG_SFC_MCDI_MON=y +CONFIG_SFC_MTD=y +CONFIG_SFC_SRIOV=y +CONFIG_SFI=y +CONFIG_SGI_IOC4=m +CONFIG_SGI_PARTITION=y +CONFIG_SGY_CTS1000=y +CONFIG_SHMEM=y +CONFIG_SHMOBILE_IOMMU=y +# CONFIG_SHMOBILE_IOMMU_ADDRSIZE_1024MB is not set +# CONFIG_SHMOBILE_IOMMU_ADDRSIZE_128MB is not set +CONFIG_SHMOBILE_IOMMU_ADDRSIZE_2048MB=y +# CONFIG_SHMOBILE_IOMMU_ADDRSIZE_256MB is not set +# CONFIG_SHMOBILE_IOMMU_ADDRSIZE_32MB is not set +# CONFIG_SHMOBILE_IOMMU_ADDRSIZE_512MB is not set +# CONFIG_SHMOBILE_IOMMU_ADDRSIZE_64MB is not set +CONFIG_SHMOBILE_IOMMU_L1SIZE=8192 +CONFIG_SHMOBILE_IPMMU=y +CONFIG_SHMOBILE_IPMMU_TLB=y +CONFIG_SHMOBILE_TIMER_HZ=128 +CONFIG_SH_ETH=m +CONFIG_SH_TIMER_CMT=y +CONFIG_SH_TIMER_TMU=y +CONFIG_SIGMATEL_FIR=m +CONFIG_SIGNALFD=y +CONFIG_SIGNATURE=y +CONFIG_SIS190=m +CONFIG_SIS900=m +CONFIG_SKFP=m +CONFIG_SKGE=m +# CONFIG_SKGE_DEBUG is not set +CONFIG_SKGE_GENESIS=y +CONFIG_SKY2=m +# CONFIG_SKY2_DEBUG is not set +# CONFIG_SLAB is not set +CONFIG_SLABINFO=y +CONFIG_SLHC=y +CONFIG_SLICOSS=m +CONFIG_SLIP=m +CONFIG_SLIP_COMPRESSED=y +CONFIG_SLIP_MODE_SLIP6=y +CONFIG_SLIP_SMART=y +# CONFIG_SLOB is not set +CONFIG_SLUB=y +CONFIG_SLUB_CPU_PARTIAL=y +CONFIG_SLUB_DEBUG=y +# CONFIG_SLUB_DEBUG_ON is not set +# CONFIG_SLUB_STATS is not set +CONFIG_SMARTJOYPLUS_FF=y +CONFIG_SMC911X=m +CONFIG_SMC9194=m +CONFIG_SMC_IRCC_FIR=m +CONFIG_SMP=y +CONFIG_SMP_ON_UP=y +CONFIG_SMSC37B787_WDT=m +CONFIG_SMSC911X=m +# CONFIG_SMSC911X_ARCH_HOOKS is not set +CONFIG_SMSC9420=m +CONFIG_SMSC_PHY=y +CONFIG_SMSC_SCH311X_WDT=m +CONFIG_SMS_SDIO_DRV=m +CONFIG_SMS_SIANO_MDTV=m +CONFIG_SMS_SIANO_RC=y +CONFIG_SMS_USB_DRV=m +CONFIG_SM_FTL=m +CONFIG_SND_AC97_CODEC=m +CONFIG_SND_AC97_POWER_SAVE=y +CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0 +CONFIG_SND_AD1816A=m +CONFIG_SND_AD1848=m +CONFIG_SND_AD1889=m +CONFIG_SND_ADLIB=m +CONFIG_SND_ALI5451=m +CONFIG_SND_ALOOP=m +CONFIG_SND_ALS100=m +CONFIG_SND_ALS300=m +CONFIG_SND_ALS4000=m +CONFIG_SND_AM33XX_SOC_EVM=m +CONFIG_SND_AOA=m +CONFIG_SND_AOA_FABRIC_LAYOUT=m +CONFIG_SND_AOA_ONYX=m +CONFIG_SND_AOA_SOUNDBUS=m +CONFIG_SND_AOA_SOUNDBUS_I2S=m +CONFIG_SND_AOA_TAS=m +CONFIG_SND_AOA_TOONIE=m +CONFIG_SND_ARM=y +CONFIG_SND_ARMAACI=m +CONFIG_SND_ASIHPI=m +CONFIG_SND_AT73C213=m +CONFIG_SND_AT73C213_TARGET_BITRATE=48000 +CONFIG_SND_ATIIXP=m +CONFIG_SND_ATIIXP_MODEM=m +CONFIG_SND_ATMEL_SOC=m +CONFIG_SND_AU8810=m +CONFIG_SND_AU8820=m +CONFIG_SND_AU8830=m +CONFIG_SND_AW2=m +CONFIG_SND_AZT1605=m +CONFIG_SND_AZT2316=m +CONFIG_SND_AZT2320=m +CONFIG_SND_AZT3328=m +CONFIG_SND_BT87X=m +# CONFIG_SND_BT87X_OVERCLOCK is not set +CONFIG_SND_CA0106=m +CONFIG_SND_CMI8328=m +CONFIG_SND_CMI8330=m +CONFIG_SND_CMIPCI=m +CONFIG_SND_CS4231=m +CONFIG_SND_CS4236=m +CONFIG_SND_CS4281=m +CONFIG_SND_CS46XX=m +CONFIG_SND_CS46XX_NEW_DSP=y +CONFIG_SND_CS5530=m +CONFIG_SND_CS5535AUDIO=m +CONFIG_SND_CTXFI=m +CONFIG_SND_DARLA20=m +CONFIG_SND_DARLA24=m +CONFIG_SND_DAVINCI_SOC=m +CONFIG_SND_DAVINCI_SOC_MCASP=m +CONFIG_SND_DEBUG=y +# CONFIG_SND_DEBUG_VERBOSE is not set +CONFIG_SND_DESIGNWARE_I2S=m +CONFIG_SND_DICE=m +CONFIG_SND_DMAENGINE_PCM=y +CONFIG_SND_DMA_SGBUF=y +CONFIG_SND_DRIVERS=y +CONFIG_SND_DUMMY=m +CONFIG_SND_DYNAMIC_MINORS=y +CONFIG_SND_ECHO3G=m +CONFIG_SND_EMU10K1=m +CONFIG_SND_EMU10K1X=m +CONFIG_SND_ENS1370=m +CONFIG_SND_ENS1371=m +CONFIG_SND_ES1688=m +CONFIG_SND_ES18XX=m +CONFIG_SND_ES1938=m +CONFIG_SND_ES1968=m +CONFIG_SND_ES1968_INPUT=y +CONFIG_SND_ES1968_RADIO=y +CONFIG_SND_FIREWIRE=y +CONFIG_SND_FIREWIRE_LIB=m +CONFIG_SND_FIREWIRE_SPEAKERS=m +CONFIG_SND_FM801=m +CONFIG_SND_FM801_TEA575X_BOOL=y +CONFIG_SND_GINA20=m +CONFIG_SND_GINA24=m +CONFIG_SND_GUSCLASSIC=m +CONFIG_SND_GUSEXTREME=m +CONFIG_SND_GUSMAX=m +CONFIG_SND_HDA_CODEC_ANALOG=y +CONFIG_SND_HDA_CODEC_CA0110=y +CONFIG_SND_HDA_CODEC_CA0132=y +CONFIG_SND_HDA_CODEC_CA0132_DSP=y +CONFIG_SND_HDA_CODEC_CIRRUS=y +CONFIG_SND_HDA_CODEC_CMEDIA=y +CONFIG_SND_HDA_CODEC_CONEXANT=y +CONFIG_SND_HDA_CODEC_HDMI=y +CONFIG_SND_HDA_CODEC_REALTEK=y +CONFIG_SND_HDA_CODEC_SI3054=y +CONFIG_SND_HDA_CODEC_SIGMATEL=y +CONFIG_SND_HDA_CODEC_VIA=y +CONFIG_SND_HDA_DSP_LOADER=y +CONFIG_SND_HDA_GENERIC=y +CONFIG_SND_HDA_HWDEP=y +CONFIG_SND_HDA_I915=y +CONFIG_SND_HDA_INPUT_BEEP=y +CONFIG_SND_HDA_INPUT_BEEP_MODE=0 +CONFIG_SND_HDA_INPUT_JACK=y +CONFIG_SND_HDA_INTEL=m +CONFIG_SND_HDA_PATCH_LOADER=y +CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 +CONFIG_SND_HDA_PREALLOC_SIZE=64 +CONFIG_SND_HDA_RECONFIG=y +CONFIG_SND_HDSP=m +CONFIG_SND_HDSPM=m +CONFIG_SND_HRTIMER=m +CONFIG_SND_HWDEP=m +CONFIG_SND_ICE1712=m +CONFIG_SND_ICE1724=m +CONFIG_SND_IMX_SOC=y +CONFIG_SND_INDIGO=m +CONFIG_SND_INDIGODJ=m +CONFIG_SND_INDIGODJX=m +CONFIG_SND_INDIGOIO=m +CONFIG_SND_INDIGOIOX=m +CONFIG_SND_INTEL8X0=m +CONFIG_SND_INTEL8X0M=m +CONFIG_SND_INTERWAVE=m +CONFIG_SND_INTERWAVE_STB=m +CONFIG_SND_ISA=y +CONFIG_SND_ISIGHT=m +CONFIG_SND_JACK=y +CONFIG_SND_JAZZ16=m +CONFIG_SND_KCTL_JACK=y +CONFIG_SND_KORG1212=m +CONFIG_SND_LAYLA20=m +CONFIG_SND_LAYLA24=m +CONFIG_SND_LOLA=m +CONFIG_SND_LX6464ES=m +CONFIG_SND_MAESTRO3=m +CONFIG_SND_MAESTRO3_INPUT=y +CONFIG_SND_MAX_CARDS=32 +CONFIG_SND_MFLD_MACHINE=m +CONFIG_SND_MIA=m +CONFIG_SND_MIRO=m +CONFIG_SND_MIXART=m +# CONFIG_SND_MIXER_OSS is not set +CONFIG_SND_MONA=m +CONFIG_SND_MPU401=m +CONFIG_SND_MPU401_UART=m +CONFIG_SND_MSND_CLASSIC=m +CONFIG_SND_MSND_PINNACLE=m +CONFIG_SND_MTPAV=m +CONFIG_SND_MTS64=m +CONFIG_SND_NM256=m +CONFIG_SND_OMAP_SOC=y +CONFIG_SND_OMAP_SOC_DMIC=y +CONFIG_SND_OMAP_SOC_HDMI=y +CONFIG_SND_OMAP_SOC_MCBSP=y +CONFIG_SND_OMAP_SOC_MCPDM=y +CONFIG_SND_OMAP_SOC_OMAP3_PANDORA=m +CONFIG_SND_OMAP_SOC_OMAP_ABE_TWL6040=y +CONFIG_SND_OMAP_SOC_OMAP_HDMI=y +CONFIG_SND_OMAP_SOC_OMAP_TWL4030=y +CONFIG_SND_OPL3SA2=m +CONFIG_SND_OPL3_LIB=m +CONFIG_SND_OPL4_LIB=m +CONFIG_SND_OPTI92X_AD1848=m +CONFIG_SND_OPTI92X_CS4231=m +CONFIG_SND_OPTI93X=m +CONFIG_SND_OXYGEN=m +CONFIG_SND_OXYGEN_LIB=m +CONFIG_SND_PCI=y +CONFIG_SND_PCMCIA=y +# CONFIG_SND_PCM_OSS is not set +CONFIG_SND_PCM_XRUN_DEBUG=y +CONFIG_SND_PCSP=m +CONFIG_SND_PCXHR=m +CONFIG_SND_PDAUDIOCF=m +CONFIG_SND_PORTMAN2X4=m +CONFIG_SND_POWERMAC=m +CONFIG_SND_POWERMAC_AUTO_DRC=y +CONFIG_SND_POWERPC_SOC=m +CONFIG_SND_PPC=y +CONFIG_SND_PS3=m +CONFIG_SND_PS3_DEFAULT_START_DELAY=2000 +CONFIG_SND_RAWMIDI=m +CONFIG_SND_RAWMIDI_SEQ=m +CONFIG_SND_RIPTIDE=m +CONFIG_SND_RME32=m +CONFIG_SND_RME96=m +CONFIG_SND_RME9652=m +CONFIG_SND_SB16=m +CONFIG_SND_SB16_CSP=y +CONFIG_SND_SB16_DSP=m +CONFIG_SND_SB8=m +CONFIG_SND_SB8_DSP=m +CONFIG_SND_SBAWE=m +CONFIG_SND_SB_COMMON=m +CONFIG_SND_SC6000=m +CONFIG_SND_SCS1X=m +CONFIG_SND_SEQUENCER=m +# CONFIG_SND_SEQUENCER_OSS is not set +CONFIG_SND_SEQ_DUMMY=m +CONFIG_SND_SEQ_HRTIMER_DEFAULT=y +CONFIG_SND_SERIAL_U16550=m +CONFIG_SND_SIMPLE_CARD=m +CONFIG_SND_SIS7019=m +CONFIG_SND_SOC_AC97_BUS=y +CONFIG_SND_SOC_ALC5632=m +CONFIG_SND_SOC_DMIC=y +CONFIG_SND_SOC_FSL_SPDIF=m +CONFIG_SND_SOC_FSL_UTILS=m +CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y +CONFIG_SND_SOC_HDMI_CODEC=y +CONFIG_SND_SOC_IMX_AUDMUX=y +CONFIG_SND_SOC_IMX_MC13783=m +CONFIG_SND_SOC_IMX_PCM_DMA=y +CONFIG_SND_SOC_IMX_SGTL5000=y +CONFIG_SND_SOC_IMX_SPDIF=m +CONFIG_SND_SOC_IMX_SSI=m +CONFIG_SND_SOC_IMX_WM8962=m +CONFIG_SND_SOC_MC13783=m +CONFIG_SND_SOC_P1022_DS=m +CONFIG_SND_SOC_P1022_RDK=m +CONFIG_SND_SOC_POWERPC_DMA=m +CONFIG_SND_SOC_RT5640=m +CONFIG_SND_SOC_SGTL5000=y +CONFIG_SND_SOC_SI476X=m +CONFIG_SND_SOC_SN95031=m +CONFIG_SND_SOC_SPDIF=m +CONFIG_SND_SOC_TEGRA=m +CONFIG_SND_SOC_TEGRA20_AC97=m +CONFIG_SND_SOC_TEGRA20_DAS=m +CONFIG_SND_SOC_TEGRA20_I2S=m +CONFIG_SND_SOC_TEGRA20_SPDIF=m +CONFIG_SND_SOC_TEGRA30_AHUB=m +CONFIG_SND_SOC_TEGRA30_I2S=m +CONFIG_SND_SOC_TEGRA_ALC5632=m +CONFIG_SND_SOC_TEGRA_RT5640=m +CONFIG_SND_SOC_TEGRA_TRIMSLICE=m +CONFIG_SND_SOC_TEGRA_WM8753=m +CONFIG_SND_SOC_TEGRA_WM8903=m +CONFIG_SND_SOC_TEGRA_WM9712=m +CONFIG_SND_SOC_TLV320AIC23=m +CONFIG_SND_SOC_TLV320AIC3X=m +CONFIG_SND_SOC_TWL4030=y +CONFIG_SND_SOC_TWL6040=y +CONFIG_SND_SOC_WM8753=m +CONFIG_SND_SOC_WM8776=m +CONFIG_SND_SOC_WM8903=m +CONFIG_SND_SOC_WM8960=m +CONFIG_SND_SOC_WM8962=m +CONFIG_SND_SOC_WM9712=m +CONFIG_SND_SONICVIBES=m +CONFIG_SND_SPI=y +CONFIG_SND_SSCAPE=m +CONFIG_SND_SST_PLATFORM=m +CONFIG_SND_SUPPORT_OLD_API=y +CONFIG_SND_TRIDENT=m +CONFIG_SND_USB=y +CONFIG_SND_USB_6FIRE=m +CONFIG_SND_USB_AUDIO=m +CONFIG_SND_USB_CAIAQ=m +CONFIG_SND_USB_CAIAQ_INPUT=y +CONFIG_SND_USB_HIFACE=m +CONFIG_SND_USB_UA101=m +CONFIG_SND_USB_US122L=m +CONFIG_SND_USB_USX2Y=m +# CONFIG_SND_VERBOSE_PRINTK is not set +CONFIG_SND_VERBOSE_PROCFS=y +CONFIG_SND_VIA82XX=m +CONFIG_SND_VIA82XX_MODEM=m +CONFIG_SND_VIRMIDI=m +CONFIG_SND_VIRTUOSO=m +CONFIG_SND_VMASTER=y +CONFIG_SND_VX222=m +CONFIG_SND_VXPOCKET=m +CONFIG_SND_VX_LIB=m +CONFIG_SND_WAVEFRONT=m +CONFIG_SND_WSS_LIB=m +CONFIG_SND_YMFPCI=m +# CONFIG_SOC_AM43XX is not set +CONFIG_SOC_BUS=y +CONFIG_SOC_CAMERA=m +CONFIG_SOC_CAMERA_IMX074=m +CONFIG_SOC_CAMERA_MT9M001=m +CONFIG_SOC_CAMERA_MT9M111=m +CONFIG_SOC_CAMERA_MT9T031=m +CONFIG_SOC_CAMERA_MT9T112=m +CONFIG_SOC_CAMERA_MT9V022=m +CONFIG_SOC_CAMERA_OV2640=m +CONFIG_SOC_CAMERA_OV5642=m +CONFIG_SOC_CAMERA_OV6650=m +CONFIG_SOC_CAMERA_OV772X=m +CONFIG_SOC_CAMERA_OV9640=m +CONFIG_SOC_CAMERA_OV9740=m +CONFIG_SOC_CAMERA_PLATFORM=m +CONFIG_SOC_CAMERA_RJ54N1=m +CONFIG_SOC_CAMERA_SCALE_CROP=m +CONFIG_SOC_CAMERA_TW9910=m +CONFIG_SOC_DRA7XX=y +CONFIG_SOC_HAS_OMAP2_SDRC=y +CONFIG_SOC_HAS_REALTIME_COUNTER=y +# CONFIG_SOC_IMX53 is not set +CONFIG_SOC_IMX6Q=y +CONFIG_SOC_IMX6SL=y +CONFIG_SOC_OMAP3430=y +# CONFIG_SOC_OMAP5 is not set +CONFIG_SOC_TI81XX=y +CONFIG_SOC_VF610=y +CONFIG_SOFT_WATCHDOG=m +CONFIG_SOLARIS_X86_PARTITION=y +CONFIG_SOLO6X10=m +CONFIG_SONYPI=m +CONFIG_SONYPI_COMPAT=y +CONFIG_SONY_FF=y +CONFIG_SONY_LAPTOP=m +# CONFIG_SOUND_OSS_CORE is not set +# CONFIG_SOUND_PRIME is not set +CONFIG_SP5100_TCO=m +CONFIG_SPARSEMEM=y +CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER=y +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPARSEMEM_STATIC=y +CONFIG_SPARSEMEM_VMEMMAP=y +CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y +CONFIG_SPARSE_IRQ=y +# CONFIG_SPARSE_RCU_POINTER is not set +CONFIG_SPEAKUP=m +CONFIG_SPEAKUP_SYNTH_ACNTPC=m +CONFIG_SPEAKUP_SYNTH_ACNTSA=m +CONFIG_SPEAKUP_SYNTH_APOLLO=m +CONFIG_SPEAKUP_SYNTH_AUDPTR=m +CONFIG_SPEAKUP_SYNTH_BNS=m +CONFIG_SPEAKUP_SYNTH_DECEXT=m +CONFIG_SPEAKUP_SYNTH_DECPC=m +CONFIG_SPEAKUP_SYNTH_DECTLK=m +CONFIG_SPEAKUP_SYNTH_DTLK=m +CONFIG_SPEAKUP_SYNTH_DUMMY=m +CONFIG_SPEAKUP_SYNTH_KEYPC=m +CONFIG_SPEAKUP_SYNTH_LTLK=m +CONFIG_SPEAKUP_SYNTH_SOFT=m +CONFIG_SPEAKUP_SYNTH_SPKOUT=m +CONFIG_SPEAKUP_SYNTH_TXPRT=m +CONFIG_SPI=y +CONFIG_SPI_ALTERA=m +CONFIG_SPI_BITBANG=m +CONFIG_SPI_BUTTERFLY=m +# CONFIG_SPI_DEBUG is not set +CONFIG_SPI_DESIGNWARE=m +CONFIG_SPI_DW_MID_DMA=y +CONFIG_SPI_DW_MMIO=m +CONFIG_SPI_DW_PCI=m +CONFIG_SPI_FSL_CPM=y +CONFIG_SPI_FSL_DSPI=m +CONFIG_SPI_FSL_ESPI=y +CONFIG_SPI_FSL_LIB=y +CONFIG_SPI_FSL_SPI=y +CONFIG_SPI_GPIO=m +CONFIG_SPI_IMX=m +CONFIG_SPI_LM70_LLP=m +CONFIG_SPI_MASTER=y +CONFIG_SPI_OC_TINY=m +CONFIG_SPI_OMAP24XX=y +CONFIG_SPI_PL022=m +CONFIG_SPI_PXA2XX=m +CONFIG_SPI_PXA2XX_DMA=y +CONFIG_SPI_SC18IS602=m +CONFIG_SPI_SPIDEV=m +CONFIG_SPI_TEGRA114=m +CONFIG_SPI_TEGRA20_SFLASH=m +CONFIG_SPI_TEGRA20_SLINK=m +CONFIG_SPI_TI_QSPI=m +CONFIG_SPI_TLE62X0=m +CONFIG_SPI_TOPCLIFF_PCH=m +CONFIG_SPI_XCOMM=m +# CONFIG_SPI_XILINX is not set +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_SPU_BASE=y +CONFIG_SPU_FS=m +CONFIG_SPU_FS_64K_LS=y +CONFIG_SQUASHFS=m +# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set +# CONFIG_SQUASHFS_DECOMP_MULTI is not set +# CONFIG_SQUASHFS_EMBEDDED is not set +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +CONFIG_SQUASHFS_LZO=y +CONFIG_SQUASHFS_XATTR=y +CONFIG_SQUASHFS_XZ=y +CONFIG_SQUASHFS_ZLIB=y +CONFIG_SSB=m +CONFIG_SSB_B43_PCI_BRIDGE=y +CONFIG_SSB_BLOCKIO=y +# CONFIG_SSB_DEBUG is not set +CONFIG_SSB_DRIVER_GPIO=y +CONFIG_SSB_DRIVER_PCICORE=y +CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y +CONFIG_SSB_PCIHOST=y +CONFIG_SSB_PCIHOST_POSSIBLE=y +# CONFIG_SSB_PCMCIAHOST is not set +CONFIG_SSB_PCMCIAHOST_POSSIBLE=y +CONFIG_SSB_POSSIBLE=y +CONFIG_SSB_SDIOHOST=y +CONFIG_SSB_SDIOHOST_POSSIBLE=y +# CONFIG_SSB_SILENT is not set +CONFIG_SSB_SPROM=y +CONFIG_SSFDC=m +CONFIG_STACKTRACE=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_STAGING_MEDIA=y +CONFIG_STE10XP=y +CONFIG_STE_MODEM_RPROC=m +# CONFIG_STMMAC_DA is not set +# CONFIG_STMMAC_DEBUG_FS is not set +CONFIG_STMMAC_ETH=m +# CONFIG_STMMAC_PCI is not set +CONFIG_STMMAC_PLATFORM=y +CONFIG_STMPE_I2C=y +CONFIG_STMPE_SPI=y +CONFIG_STMP_DEVICE=y +CONFIG_STOP_MACHINE=y +CONFIG_STP=m +CONFIG_STRICT_DEVMEM=y +# CONFIG_STRIP_ASM_SYMS is not set +CONFIG_SUNDANCE=m +# CONFIG_SUNDANCE_MMIO is not set +CONFIG_SUNGEM=m +CONFIG_SUNGEM_PHY=m +CONFIG_SUNRPC=m +CONFIG_SUNRPC_BACKCHANNEL=y +CONFIG_SUNRPC_GSS=m +CONFIG_SUNRPC_SWAP=y +CONFIG_SUNRPC_XPRT_RDMA=m +CONFIG_SUN_PARTITION=y +CONFIG_SUSPEND=y +CONFIG_SUSPEND_FREEZER=y +CONFIG_SWAP=y +CONFIG_SWIOTLB_XEN=y +CONFIG_SWP_EMULATE=y +CONFIG_SYNCLINK=m +CONFIG_SYNCLINKMP=m +CONFIG_SYNCLINK_CS=m +CONFIG_SYNCLINK_GT=m +CONFIG_SYN_COOKIES=y +CONFIG_SYSCTL=y +CONFIG_SYSCTL_EXCEPTION_TRACE=y +CONFIG_SYSFS=y +# CONFIG_SYSFS_DEPRECATED is not set +CONFIG_SYSTEM_TRUSTED_KEYRING=y +CONFIG_SYSV68_PARTITION=y +CONFIG_SYSVIPC=y +CONFIG_SYSVIPC_COMPAT=y +CONFIG_SYSVIPC_SYSCTL=y +CONFIG_SYSV_FS=m +CONFIG_SYS_SUPPORTS_APM_EMULATION=y +CONFIG_SYS_SUPPORTS_HUGETLBFS=y +CONFIG_TABLET_USB_ACECAD=m +CONFIG_TABLET_USB_AIPTEK=m +CONFIG_TABLET_USB_GTCO=m +CONFIG_TABLET_USB_HANWANG=m +CONFIG_TABLET_USB_KBTAB=m +CONFIG_TABLET_USB_WACOM=m +CONFIG_TARGET_CORE=m +CONFIG_TASKSTATS=y +CONFIG_TASK_DELAY_ACCT=y +CONFIG_TASK_IO_ACCOUNTING=y +CONFIG_TASK_SIZE=0xc0000000 +CONFIG_TASK_XACCT=y +CONFIG_TAU=y +# CONFIG_TAU_AVERAGE is not set +# CONFIG_TAU_INT is not set +CONFIG_TC1100_WMI=m +CONFIG_TCG_ATMEL=m +CONFIG_TCG_INFINEON=m +CONFIG_TCG_NSC=m +CONFIG_TCG_ST33_I2C=m +CONFIG_TCG_TIS=y +CONFIG_TCG_TIS_I2C_ATMEL=m +CONFIG_TCG_TIS_I2C_INFINEON=m +CONFIG_TCG_TIS_I2C_NUVOTON=m +CONFIG_TCG_TPM=y +CONFIG_TCG_XEN=m +CONFIG_TCIC=m +CONFIG_TCM_FC=m +CONFIG_TCM_FILEIO=m +CONFIG_TCM_IBLOCK=m +CONFIG_TCM_PSCSI=m +CONFIG_TCM_QLA2XXX=m +CONFIG_TCP_CONG_ADVANCED=y +CONFIG_TCP_CONG_BIC=m +CONFIG_TCP_CONG_CUBIC=y +CONFIG_TCP_CONG_HSTCP=m +CONFIG_TCP_CONG_HTCP=m +CONFIG_TCP_CONG_HYBLA=m +CONFIG_TCP_CONG_ILLINOIS=m +CONFIG_TCP_CONG_LP=m +CONFIG_TCP_CONG_SCALABLE=m +CONFIG_TCP_CONG_VEGAS=m +CONFIG_TCP_CONG_VENO=m +CONFIG_TCP_CONG_WESTWOOD=m +CONFIG_TCP_CONG_YEAH=m +CONFIG_TCP_MD5SIG=y +CONFIG_TCS3472=m +CONFIG_TEGRA20_APB_DMA=y +CONFIG_TEGRA20_MC=y +CONFIG_TEGRA30_MC=y +CONFIG_TEGRA_AHB=y +CONFIG_TEGRA_EMC_SCALING_ENABLE=y +CONFIG_TEGRA_HOST1X=m +CONFIG_TEGRA_HOST1X_FIREWALL=y +CONFIG_TEGRA_IOMMU_GART=y +CONFIG_TEGRA_IOMMU_SMMU=y +CONFIG_TEHUTI=m +CONFIG_TEKRAM_DONGLE=m +CONFIG_TELCLOCK=m +# CONFIG_TEST_LIST_SORT is not set +CONFIG_TEST_POWER=m +CONFIG_TEXTSEARCH=y +CONFIG_TEXTSEARCH_BM=m +CONFIG_TEXTSEARCH_FSM=m +CONFIG_TEXTSEARCH_KMP=m +CONFIG_THERMAL=y +# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set +CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y +# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set +CONFIG_THERMAL_EMULATION=y +CONFIG_THERMAL_GOV_FAIR_SHARE=y +CONFIG_THERMAL_GOV_STEP_WISE=y +CONFIG_THERMAL_GOV_USER_SPACE=y +CONFIG_THERMAL_HWMON=y +CONFIG_THERM_ADT746X=y +CONFIG_THERM_PM72=m +CONFIG_THERM_WINDTUNNEL=m +CONFIG_THINKPAD_ACPI=m +CONFIG_THINKPAD_ACPI_ALSA_SUPPORT=y +# CONFIG_THINKPAD_ACPI_DEBUG is not set +CONFIG_THINKPAD_ACPI_DEBUGFACILITIES=y +CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y +# CONFIG_THINKPAD_ACPI_UNSAFE_LEDS is not set +CONFIG_THINKPAD_ACPI_VIDEO=y +CONFIG_THRUSTMASTER_FF=y +# CONFIG_THUMB2_KERNEL is not set +CONFIG_TICK_ONESHOT=y +CONFIG_TIFM_7XX1=m +CONFIG_TIFM_CORE=m +CONFIG_TIMB_DMA=m +CONFIG_TIMERFD=y +CONFIG_TIPC=m +CONFIG_TIPC_MEDIA_IB=y +CONFIG_TIPC_PORTS=8191 +CONFIG_TI_ADC081C=m +CONFIG_TI_AM335X_ADC=m +CONFIG_TI_CPPI41=m +CONFIG_TI_CPSW=y +CONFIG_TI_CPSW_PHY_SEL=y +CONFIG_TI_CPTS=y +CONFIG_TI_DAC7512=m +CONFIG_TI_DAVINCI_CPDMA=y +CONFIG_TI_DAVINCI_EMAC=m +CONFIG_TI_DAVINCI_MDIO=y +CONFIG_TI_EDMA=y +CONFIG_TI_EMIF=m +CONFIG_TI_PRIV_EDMA=y +CONFIG_TI_SOC_THERMAL=m +CONFIG_TI_ST=m +CONFIG_TI_THERMAL=y +CONFIG_TLAN=m +CONFIG_TMD_HERMES=m +CONFIG_TMP006=m +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_TMPFS_XATTR=y +CONFIG_TOIM3232_DONGLE=m +CONFIG_TOPSTAR_LAPTOP=m +# CONFIG_TOSHIBA is not set +CONFIG_TOSHIBA_BT_RFKILL=m +CONFIG_TOSHIBA_FIR=m +CONFIG_TOUCHSCREEN_88PM860X=m +CONFIG_TOUCHSCREEN_AD7877=m +CONFIG_TOUCHSCREEN_AD7879=m +CONFIG_TOUCHSCREEN_AD7879_I2C=m +CONFIG_TOUCHSCREEN_AD7879_SPI=m +CONFIG_TOUCHSCREEN_ADS7846=m +CONFIG_TOUCHSCREEN_ATMEL_MXT=m +CONFIG_TOUCHSCREEN_AUO_PIXCIR=m +CONFIG_TOUCHSCREEN_BU21013=m +CONFIG_TOUCHSCREEN_CLEARPAD_TM1217=m +CONFIG_TOUCHSCREEN_CY8CTMG110=m +CONFIG_TOUCHSCREEN_CYTTSP4_CORE=m +CONFIG_TOUCHSCREEN_CYTTSP4_I2C=m +CONFIG_TOUCHSCREEN_CYTTSP4_SPI=m +CONFIG_TOUCHSCREEN_CYTTSP_CORE=m +CONFIG_TOUCHSCREEN_CYTTSP_I2C=m +CONFIG_TOUCHSCREEN_CYTTSP_SPI=m +CONFIG_TOUCHSCREEN_DA9034=m +CONFIG_TOUCHSCREEN_DA9052=m +CONFIG_TOUCHSCREEN_DYNAPRO=m +CONFIG_TOUCHSCREEN_EDT_FT5X06=m +CONFIG_TOUCHSCREEN_EETI=m +CONFIG_TOUCHSCREEN_EGALAX=m +CONFIG_TOUCHSCREEN_ELO=m +CONFIG_TOUCHSCREEN_FUJITSU=m +CONFIG_TOUCHSCREEN_GUNZE=m +CONFIG_TOUCHSCREEN_HAMPSHIRE=m +CONFIG_TOUCHSCREEN_HTCPEN=m +CONFIG_TOUCHSCREEN_ILI210X=m +CONFIG_TOUCHSCREEN_INEXIO=m +CONFIG_TOUCHSCREEN_INTEL_MID=m +CONFIG_TOUCHSCREEN_MAX11801=m +CONFIG_TOUCHSCREEN_MC13783=m +CONFIG_TOUCHSCREEN_MCS5000=m +CONFIG_TOUCHSCREEN_MK712=m +CONFIG_TOUCHSCREEN_MMS114=m +CONFIG_TOUCHSCREEN_MTOUCH=m +CONFIG_TOUCHSCREEN_PCAP=m +CONFIG_TOUCHSCREEN_PENMOUNT=m +CONFIG_TOUCHSCREEN_PIXCIR=m +CONFIG_TOUCHSCREEN_ST1232=m +CONFIG_TOUCHSCREEN_STMPE=m +CONFIG_TOUCHSCREEN_SUR40=m +CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4=m +CONFIG_TOUCHSCREEN_TI_AM335X_TSC=m +CONFIG_TOUCHSCREEN_TOUCHIT213=m +CONFIG_TOUCHSCREEN_TOUCHRIGHT=m +CONFIG_TOUCHSCREEN_TOUCHWIN=m +CONFIG_TOUCHSCREEN_TPS6507X=m +CONFIG_TOUCHSCREEN_TSC2005=m +CONFIG_TOUCHSCREEN_TSC2007=m +CONFIG_TOUCHSCREEN_TSC_SERIO=m +CONFIG_TOUCHSCREEN_UCB1400=m +CONFIG_TOUCHSCREEN_USB_3M=y +CONFIG_TOUCHSCREEN_USB_COMPOSITE=m +CONFIG_TOUCHSCREEN_USB_DMC_TSC10=y +CONFIG_TOUCHSCREEN_USB_E2I=y +CONFIG_TOUCHSCREEN_USB_EASYTOUCH=y +CONFIG_TOUCHSCREEN_USB_EGALAX=y +CONFIG_TOUCHSCREEN_USB_ELO=y +CONFIG_TOUCHSCREEN_USB_ETT_TC45USB=y +CONFIG_TOUCHSCREEN_USB_ETURBO=y +CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y +CONFIG_TOUCHSCREEN_USB_GOTOP=y +CONFIG_TOUCHSCREEN_USB_GUNZE=y +CONFIG_TOUCHSCREEN_USB_IDEALTEK=y +CONFIG_TOUCHSCREEN_USB_IRTOUCH=y +CONFIG_TOUCHSCREEN_USB_ITM=y +CONFIG_TOUCHSCREEN_USB_JASTEC=y +CONFIG_TOUCHSCREEN_USB_NEXIO=y +CONFIG_TOUCHSCREEN_USB_PANJIT=y +CONFIG_TOUCHSCREEN_USB_ZYTRONIC=y +CONFIG_TOUCHSCREEN_W90X900=m +CONFIG_TOUCHSCREEN_WACOM_I2C=m +CONFIG_TOUCHSCREEN_WACOM_W8001=m +CONFIG_TOUCHSCREEN_WM831X=m +CONFIG_TOUCHSCREEN_WM9705=y +CONFIG_TOUCHSCREEN_WM9712=y +CONFIG_TOUCHSCREEN_WM9713=y +CONFIG_TOUCHSCREEN_WM97XX=m +CONFIG_TOUCHSCREEN_ZFORCE=m +CONFIG_TPS6105X=m +CONFIG_TPS65010=m +CONFIG_TPS6507X=m +CONFIG_TQM85xx=y +CONFIG_TRACEPOINTS=y +CONFIG_TRACER_MAX_TRACE=y +CONFIG_TRACER_SNAPSHOT=y +# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set +CONFIG_TRACE_CLOCK=y +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_TRACE_ROUTER=m +CONFIG_TRACE_SINK=m +CONFIG_TRACING=y +CONFIG_TRACING_SUPPORT=y +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y +# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set +CONFIG_TRANZPORT=m +CONFIG_TREE_PREEMPT_RCU=y +CONFIG_TREE_RCU=y +# CONFIG_TREE_RCU_TRACE is not set +CONFIG_TRUSTED_KEYS=y +CONFIG_TSL2583=m +CONFIG_TSL2x7x=m +CONFIG_TSL4531=m +CONFIG_TTPCI_EEPROM=m +CONFIG_TTY=y +CONFIG_TTY_PRINTK=y +CONFIG_TULIP=m +# CONFIG_TULIP_MMIO is not set +# CONFIG_TULIP_MWI is not set +# CONFIG_TULIP_NAPI is not set +CONFIG_TUN=y +# CONFIG_TUNE_CELL is not set +CONFIG_TWL4030_MADC=m +CONFIG_TWL4030_POWER=y +CONFIG_TWL4030_USB=m +CONFIG_TWL4030_WATCHDOG=m +CONFIG_TWL6030_GPADC=m +CONFIG_TWL6030_USB=m +CONFIG_TYPHOON=m +# CONFIG_UACCESS_WITH_MEMCPY is not set +CONFIG_UBIFS_FS=m +# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set +CONFIG_UBIFS_FS_LZO=y +CONFIG_UBIFS_FS_ZLIB=y +CONFIG_UCB1400_CORE=m +CONFIG_UCS2_STRING=y +CONFIG_UDF_FS=m +CONFIG_UDF_NLS=y +CONFIG_UEFI_CPER=y +CONFIG_UEVENT_HELPER_PATH="" +# CONFIG_UFS_DEBUG is not set +CONFIG_UFS_FS=m +# CONFIG_UFS_FS_WRITE is not set +CONFIG_UHID=m +CONFIG_UID16=y +CONFIG_UIDGID_STRICT_TYPE_CHECKS=y +CONFIG_UIO=m +CONFIG_ULI526X=m +CONFIG_ULTRA=m +CONFIG_ULTRIX_PARTITION=y +CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h" +CONFIG_UNINLINE_SPIN_UNLOCK=y +CONFIG_UNIX=y +CONFIG_UNIX98_PTYS=y +CONFIG_UNIXWARE_DISKLABEL=y +CONFIG_UNIX_DIAG=m +CONFIG_UPROBES=y +CONFIG_UPROBE_EVENT=y +CONFIG_USB=y +CONFIG_USBIP_CORE=m +# CONFIG_USBIP_DEBUG is not set +CONFIG_USBIP_HOST=m +CONFIG_USBIP_VHCI_HCD=m +CONFIG_USBPCWATCHDOG=m +CONFIG_USB_ACM=m +CONFIG_USB_ALI_M5632=y +CONFIG_USB_AMD5536UDC=m +CONFIG_USB_AN2720=y +CONFIG_USB_ARCH_HAS_EHCI=y +CONFIG_USB_ARCH_HAS_HCD=y +CONFIG_USB_ARCH_HAS_OHCI=y +CONFIG_USB_ARMLINUX=y +CONFIG_USB_ATM=m +CONFIG_USB_AUDIO=m +CONFIG_USB_BELKIN=y +CONFIG_USB_BTMTK=m +CONFIG_USB_CDC_COMPOSITE=m +CONFIG_USB_CDC_PHONET=m +# CONFIG_USB_CHIPIDEA_DEBUG is not set +CONFIG_USB_CHIPIDEA_HOST=y +CONFIG_USB_CHIPIDEA_UDC=y +CONFIG_USB_COMMON=y +CONFIG_USB_CONFIGFS=m +CONFIG_USB_CONFIGFS_ACM=y +CONFIG_USB_CONFIGFS_ECM=y +CONFIG_USB_CONFIGFS_ECM_SUBSET=y +CONFIG_USB_CONFIGFS_EEM=y +CONFIG_USB_CONFIGFS_MASS_STORAGE=y +CONFIG_USB_CONFIGFS_NCM=y +CONFIG_USB_CONFIGFS_OBEX=y +CONFIG_USB_CONFIGFS_PHONET=y +CONFIG_USB_CONFIGFS_RNDIS=y +CONFIG_USB_CONFIGFS_SERIAL=y +CONFIG_USB_CXACRU=m +# CONFIG_USB_DEBUG is not set +CONFIG_USB_DEFAULT_PERSIST=y +CONFIG_USB_DSBR=m +# CONFIG_USB_DUMMY_HCD is not set +CONFIG_USB_DWC2=m +# CONFIG_USB_DWC2_DEBUG is not set +# CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set +# CONFIG_USB_DWC3_DEBUG is not set +CONFIG_USB_DWC3_DUAL_ROLE=y +# CONFIG_USB_DWC3_EXYNOS is not set +# CONFIG_USB_DWC3_GADGET is not set +# CONFIG_USB_DWC3_HOST is not set +CONFIG_USB_DWC3_PCI=m +CONFIG_USB_EG20T=m +CONFIG_USB_EHCI_BIG_ENDIAN_DESC=y +CONFIG_USB_EHCI_BIG_ENDIAN_MMIO=y +CONFIG_USB_EHCI_FSL=y +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_EHCI_HCD_OMAP=y +# CONFIG_USB_EHCI_MXC is not set +CONFIG_USB_EHCI_PCI=y +CONFIG_USB_EHCI_TEGRA=y +CONFIG_USB_EHCI_TT_NEWSCHED=y +CONFIG_USB_ENESTORAGE=m +CONFIG_USB_EPSON2888=y +CONFIG_USB_ETH=m +CONFIG_USB_ETH_EEM=y +CONFIG_USB_ETH_RNDIS=y +CONFIG_USB_FOTG210_UDC=m +CONFIG_USB_FSL_MPH_DR_OF=y +CONFIG_USB_FSL_QE=m +CONFIG_USB_FUNCTIONFS=m +CONFIG_USB_FUNCTIONFS_ETH=y +CONFIG_USB_FUNCTIONFS_GENERIC=y +CONFIG_USB_FUNCTIONFS_RNDIS=y +CONFIG_USB_FUSB300=m +CONFIG_USB_F_ACM=m +CONFIG_USB_F_ECM=m +CONFIG_USB_F_EEM=m +CONFIG_USB_F_MASS_STORAGE=m +CONFIG_USB_F_NCM=m +CONFIG_USB_F_OBEX=m +CONFIG_USB_F_PHONET=m +CONFIG_USB_F_RNDIS=m +CONFIG_USB_F_SERIAL=m +CONFIG_USB_F_SS_LB=m +CONFIG_USB_F_SUBSET=m +CONFIG_USB_GADGETFS=m +# CONFIG_USB_GADGET_DEBUG is not set +# CONFIG_USB_GADGET_DEBUG_FILES is not set +# CONFIG_USB_GADGET_DEBUG_FS is not set +CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 +CONFIG_USB_GADGET_TARGET=m +CONFIG_USB_GADGET_VBUS_DRAW=2 +CONFIG_USB_GL860=m +CONFIG_USB_GOKU=m +CONFIG_USB_GPIO_VBUS=m +CONFIG_USB_GSPCA=m +CONFIG_USB_GSPCA_BENQ=m +CONFIG_USB_GSPCA_CONEX=m +CONFIG_USB_GSPCA_CPIA1=m +CONFIG_USB_GSPCA_ETOMS=m +CONFIG_USB_GSPCA_FINEPIX=m +CONFIG_USB_GSPCA_JEILINJ=m +CONFIG_USB_GSPCA_JL2005BCD=m +CONFIG_USB_GSPCA_KINECT=m +CONFIG_USB_GSPCA_KONICA=m +CONFIG_USB_GSPCA_MARS=m +CONFIG_USB_GSPCA_MR97310A=m +CONFIG_USB_GSPCA_NW80X=m +CONFIG_USB_GSPCA_OV519=m +CONFIG_USB_GSPCA_OV534=m +CONFIG_USB_GSPCA_OV534_9=m +CONFIG_USB_GSPCA_PAC207=m +CONFIG_USB_GSPCA_PAC7302=m +CONFIG_USB_GSPCA_PAC7311=m +CONFIG_USB_GSPCA_SE401=m +CONFIG_USB_GSPCA_SN9C2028=m +CONFIG_USB_GSPCA_SN9C20X=m +CONFIG_USB_GSPCA_SONIXB=m +CONFIG_USB_GSPCA_SONIXJ=m +CONFIG_USB_GSPCA_SPCA1528=m +CONFIG_USB_GSPCA_SPCA500=m +CONFIG_USB_GSPCA_SPCA501=m +CONFIG_USB_GSPCA_SPCA505=m +CONFIG_USB_GSPCA_SPCA506=m +CONFIG_USB_GSPCA_SPCA508=m +CONFIG_USB_GSPCA_SPCA561=m +CONFIG_USB_GSPCA_SQ905=m +CONFIG_USB_GSPCA_SQ905C=m +CONFIG_USB_GSPCA_SQ930X=m +CONFIG_USB_GSPCA_STK014=m +CONFIG_USB_GSPCA_STK1135=m +CONFIG_USB_GSPCA_STV0680=m +CONFIG_USB_GSPCA_SUNPLUS=m +CONFIG_USB_GSPCA_T613=m +CONFIG_USB_GSPCA_TOPRO=m +CONFIG_USB_GSPCA_TV8532=m +CONFIG_USB_GSPCA_VC032X=m +CONFIG_USB_GSPCA_VICAM=m +CONFIG_USB_GSPCA_XIRLINK_CIT=m +CONFIG_USB_GSPCA_ZC3XX=m +CONFIG_USB_G_ACM_MS=m +CONFIG_USB_G_DBGP=m +# CONFIG_USB_G_DBGP_PRINTK is not set +CONFIG_USB_G_DBGP_SERIAL=y +CONFIG_USB_G_HID=m +CONFIG_USB_G_MULTI_CDC=y +CONFIG_USB_G_MULTI_RNDIS=y +CONFIG_USB_G_NCM=m +CONFIG_USB_G_NOKIA=m +CONFIG_USB_G_PRINTER=m +CONFIG_USB_G_SERIAL=m +CONFIG_USB_G_WEBCAM=m +# CONFIG_USB_HCD_TEST_MODE is not set +CONFIG_USB_HID=m +CONFIG_USB_HIDDEV=y +CONFIG_USB_HSO=m +CONFIG_USB_HWA_HCD=m +# CONFIG_USB_IMX21_HCD is not set +CONFIG_USB_INVENTRA_DMA=y +CONFIG_USB_IRDA=m +CONFIG_USB_KBD=m +CONFIG_USB_KC2190=y +CONFIG_USB_KEENE=m +CONFIG_USB_LIBCOMPOSITE=m +CONFIG_USB_M5602=m +# CONFIG_USB_M66592 is not set +CONFIG_USB_MA901=m +CONFIG_USB_MASS_STORAGE=m +CONFIG_USB_MIDI_GADGET=m +CONFIG_USB_MON=m +CONFIG_USB_MOUSE=m +CONFIG_USB_MR800=m +CONFIG_USB_MSI3101=m +CONFIG_USB_MUSB_AM335X_CHILD=m +# CONFIG_USB_MUSB_AM35X is not set +CONFIG_USB_MUSB_DUAL_ROLE=y +# CONFIG_USB_MUSB_GADGET is not set +# CONFIG_USB_MUSB_HOST is not set +CONFIG_USB_MUSB_OMAP2PLUS=m +CONFIG_USB_MUSB_UX500=m +CONFIG_USB_MV_U3D=m +CONFIG_USB_MV_UDC=m +CONFIG_USB_MXS_PHY=y +CONFIG_USB_NET2272=m +CONFIG_USB_NET2272_DMA=y +CONFIG_USB_NET2280=m +CONFIG_USB_NET_AX88179_178A=m +CONFIG_USB_NET_AX8817X=m +CONFIG_USB_NET_CDCETHER=m +CONFIG_USB_NET_CDC_EEM=m +CONFIG_USB_NET_CDC_MBIM=m +CONFIG_USB_NET_CDC_NCM=m +CONFIG_USB_NET_CDC_SUBSET=m +CONFIG_USB_NET_CX82310_ETH=m +CONFIG_USB_NET_DM9601=m +CONFIG_USB_NET_GL620A=m +CONFIG_USB_NET_HUAWEI_CDC_NCM=m +CONFIG_USB_NET_INT51X1=m +CONFIG_USB_NET_KALMIA=m +CONFIG_USB_NET_MCS7830=m +CONFIG_USB_NET_NET1080=m +CONFIG_USB_NET_PLUSB=m +CONFIG_USB_NET_QMI_WWAN=m +CONFIG_USB_NET_RNDIS_HOST=m +CONFIG_USB_NET_RNDIS_WLAN=m +CONFIG_USB_NET_SMSC75XX=m +CONFIG_USB_NET_SMSC95XX=m +CONFIG_USB_NET_SR9700=m +CONFIG_USB_NET_ZAURUS=m +CONFIG_USB_OHCI_BIG_ENDIAN_DESC=y +CONFIG_USB_OHCI_BIG_ENDIAN_MMIO=y +CONFIG_USB_OHCI_HCD=y +CONFIG_USB_OHCI_HCD_OMAP3=y +CONFIG_USB_OHCI_HCD_PCI=y +# CONFIG_USB_OHCI_HCD_PPC_OF_LE is not set +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +# CONFIG_USB_OTG_BLACKLIST_HUB is not set +# CONFIG_USB_OTG_WHITELIST is not set +CONFIG_USB_PHY=y +CONFIG_USB_PWC=m +# CONFIG_USB_PWC_DEBUG is not set +CONFIG_USB_PWC_INPUT_EVDEV=y +CONFIG_USB_PXA27X=m +CONFIG_USB_R8A66597=m +CONFIG_USB_RENESAS_USBHS=m +CONFIG_USB_RENESAS_USBHS_HCD=m +CONFIG_USB_RENESAS_USBHS_UDC=m +CONFIG_USB_S2255=m +CONFIG_USB_SERIAL_AIRCABLE=m +CONFIG_USB_SERIAL_ARK3116=m +CONFIG_USB_SERIAL_BELKIN=m +CONFIG_USB_SERIAL_CH341=m +CONFIG_USB_SERIAL_CP210X=m +CONFIG_USB_SERIAL_CYBERJACK=m +CONFIG_USB_SERIAL_CYPRESS_M8=m +CONFIG_USB_SERIAL_DEBUG=m +CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m +CONFIG_USB_SERIAL_EDGEPORT=m +CONFIG_USB_SERIAL_EDGEPORT_TI=m +CONFIG_USB_SERIAL_EMPEG=m +CONFIG_USB_SERIAL_F81232=m +CONFIG_USB_SERIAL_FTDI_SIO=m +CONFIG_USB_SERIAL_GARMIN=m +CONFIG_USB_SERIAL_GENERIC=y +CONFIG_USB_SERIAL_IPAQ=m +CONFIG_USB_SERIAL_IPW=m +CONFIG_USB_SERIAL_IR=m +CONFIG_USB_SERIAL_IUU=m +CONFIG_USB_SERIAL_KEYSPAN=m +CONFIG_USB_SERIAL_KEYSPAN_MPR=y +CONFIG_USB_SERIAL_KEYSPAN_PDA=m +CONFIG_USB_SERIAL_KEYSPAN_USA18X=y +CONFIG_USB_SERIAL_KEYSPAN_USA19=y +CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y +CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y +CONFIG_USB_SERIAL_KEYSPAN_USA19W=y +CONFIG_USB_SERIAL_KEYSPAN_USA28=y +CONFIG_USB_SERIAL_KEYSPAN_USA28X=y +CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y +CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y +CONFIG_USB_SERIAL_KEYSPAN_USA49W=y +CONFIG_USB_SERIAL_KEYSPAN_USA49WLC=y +CONFIG_USB_SERIAL_KLSI=m +CONFIG_USB_SERIAL_KOBIL_SCT=m +CONFIG_USB_SERIAL_MCT_U232=m +CONFIG_USB_SERIAL_METRO=m +CONFIG_USB_SERIAL_MOS7715_PARPORT=y +CONFIG_USB_SERIAL_MOS7720=m +CONFIG_USB_SERIAL_MOS7840=m +CONFIG_USB_SERIAL_NAVMAN=m +CONFIG_USB_SERIAL_OMNINET=m +CONFIG_USB_SERIAL_OPTICON=m +CONFIG_USB_SERIAL_OPTION=m +CONFIG_USB_SERIAL_OTI6858=m +CONFIG_USB_SERIAL_PL2303=m +CONFIG_USB_SERIAL_QCAUX=m +CONFIG_USB_SERIAL_QT2=m +CONFIG_USB_SERIAL_QUALCOMM=m +CONFIG_USB_SERIAL_QUATECH2=m +CONFIG_USB_SERIAL_SAFE=m +# CONFIG_USB_SERIAL_SAFE_PADDED is not set +CONFIG_USB_SERIAL_SIERRAWIRELESS=m +CONFIG_USB_SERIAL_SIMPLE=m +CONFIG_USB_SERIAL_SPCP8X5=m +CONFIG_USB_SERIAL_SSU100=m +CONFIG_USB_SERIAL_SYMBOL=m +CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_VISOR=m +CONFIG_USB_SERIAL_WHITEHEAT=m +CONFIG_USB_SERIAL_WISHBONE=m +CONFIG_USB_SERIAL_WWAN=m +CONFIG_USB_SERIAL_XIRCOM=m +CONFIG_USB_SERIAL_XSENS_MT=m +CONFIG_USB_SERIAL_ZTE=m +CONFIG_USB_SI470X=m +CONFIG_USB_SIERRA_NET=m +# CONFIG_USB_SISUSBVGA_CON is not set +CONFIG_USB_SL811_CS=m +CONFIG_USB_SL811_HCD_ISO=y +# CONFIG_USB_SN9C102 is not set +CONFIG_USB_SPEEDTOUCH=m +CONFIG_USB_STKWEBCAM=m +# CONFIG_USB_STORAGE_DEBUG is not set +CONFIG_USB_STV06XX=m +CONFIG_USB_SWITCH_FSA9480=m +# CONFIG_USB_TI_CPPI41_DMA is not set +CONFIG_USB_U132_HCD=m +CONFIG_USB_UEAGLEATM=m +CONFIG_USB_ULPI=y +CONFIG_USB_ULPI_VIEWPORT=y +CONFIG_USB_USBNET=m +# CONFIG_USB_UX500_DMA is not set +CONFIG_USB_U_ETHER=m +CONFIG_USB_U_RNDIS=m +CONFIG_USB_U_SERIAL=m +CONFIG_USB_VIDEO_CLASS=m +CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y +CONFIG_USB_VL600=m +CONFIG_USB_WDM=m +CONFIG_USB_WHCI_HCD=m +CONFIG_USB_WPAN_HCD=m +CONFIG_USB_WUSB=m +# CONFIG_USB_WUSB_CBAF_DEBUG is not set +CONFIG_USB_XHCI_HCD=y +CONFIG_USB_XHCI_PLATFORM=m +CONFIG_USB_XUSBATM=m +CONFIG_USB_ZD1201=m +CONFIG_USB_ZERO=m +CONFIG_USB_ZERO_HNPTEST=y +CONFIG_USB_ZR364XX=m +CONFIG_USER_NS=y +CONFIG_USER_RETURN_NOTIFIER=y +CONFIG_USER_STACKTRACE_SUPPORT=y +CONFIG_USE_OF=y +CONFIG_USE_PERCPU_NUMA_NODE_ID=y +CONFIG_UTS_NS=y +CONFIG_UWB=m +CONFIG_UWB_HWA=m +CONFIG_UWB_I1480U=m +CONFIG_UWB_WHCI=m +CONFIG_V4L2_MEM2MEM_DEV=m +CONFIG_V4L_MEM2MEM_DRIVERS=y +CONFIG_V4L_PLATFORM_DRIVERS=y +CONFIG_V4L_RADIO_ISA_DRIVERS=y +CONFIG_V4L_TEST_DRIVERS=y +CONFIG_VCNL4000=m +CONFIG_VECTORS_BASE=0xffff0000 +CONFIG_VERSION_SIGNATURE="" +CONFIG_VETH=m +CONFIG_VEXPRESS_CONFIG=y +CONFIG_VFAT_FS=y +CONFIG_VFIO=m +CONFIG_VFIO_IOMMU_SPAPR_TCE=m +CONFIG_VFIO_PCI=m +CONFIG_VFIO_PCI_VGA=y +CONFIG_VFP=y +CONFIG_VFPv3=y +CONFIG_VF_PIT_TIMER=y +# CONFIG_VGACON_SOFT_SCROLLBACK is not set +CONFIG_VGA_ARB=y +CONFIG_VGA_ARB_MAX_GPUS=16 +CONFIG_VGA_SWITCHEROO=y +CONFIG_VHOST=m +CONFIG_VHOST_NET=m +CONFIG_VHOST_RING=m +CONFIG_VHOST_SCSI=m +CONFIG_VIA_FIR=m +CONFIG_VIA_RHINE=m +CONFIG_VIA_RHINE_MMIO=y +CONFIG_VIA_VELOCITY=m +CONFIG_VIA_WDT=m +CONFIG_VIDEOBUF2_CORE=m +CONFIG_VIDEOBUF2_DMA_CONTIG=m +CONFIG_VIDEOBUF2_DMA_SG=m +CONFIG_VIDEOBUF2_MEMOPS=m +CONFIG_VIDEOBUF2_VMALLOC=m +CONFIG_VIDEOBUF_DMA_CONTIG=m +CONFIG_VIDEOBUF_DMA_SG=m +CONFIG_VIDEOBUF_DVB=m +CONFIG_VIDEOBUF_GEN=m +CONFIG_VIDEOBUF_VMALLOC=m +CONFIG_VIDEOMODE_HELPERS=y +CONFIG_VIDEO_ADV7170=m +CONFIG_VIDEO_ADV7175=m +CONFIG_VIDEO_ADV7180=m +# CONFIG_VIDEO_ADV_DEBUG is not set +CONFIG_VIDEO_AU0828=m +CONFIG_VIDEO_AU0828_V4L2=y +CONFIG_VIDEO_BT819=m +CONFIG_VIDEO_BT848=m +CONFIG_VIDEO_BT856=m +CONFIG_VIDEO_BT866=m +CONFIG_VIDEO_BTCX=m +CONFIG_VIDEO_BWQCAM=m +CONFIG_VIDEO_CAFE_CCIC=m +# CONFIG_VIDEO_CODA is not set +CONFIG_VIDEO_CPIA2=m +CONFIG_VIDEO_CQCAM=m +CONFIG_VIDEO_CS5345=m +CONFIG_VIDEO_CS53L32A=m +CONFIG_VIDEO_CX18=m +CONFIG_VIDEO_CX18_ALSA=m +CONFIG_VIDEO_CX231XX=m +CONFIG_VIDEO_CX231XX_ALSA=m +CONFIG_VIDEO_CX231XX_DVB=m +CONFIG_VIDEO_CX231XX_RC=y +CONFIG_VIDEO_CX2341X=m +CONFIG_VIDEO_CX23885=m +CONFIG_VIDEO_CX25821=m +CONFIG_VIDEO_CX25821_ALSA=m +CONFIG_VIDEO_CX25840=m +CONFIG_VIDEO_CX88=m +CONFIG_VIDEO_CX88_ALSA=m +CONFIG_VIDEO_CX88_BLACKBIRD=m +CONFIG_VIDEO_CX88_DVB=m +CONFIG_VIDEO_CX88_ENABLE_VP3054=y +CONFIG_VIDEO_CX88_MPEG=m +CONFIG_VIDEO_CX88_VP3054=m +CONFIG_VIDEO_DEV=m +CONFIG_VIDEO_DM6446_CCDC=m +CONFIG_VIDEO_DT3155=m +CONFIG_VIDEO_EM28XX=m +CONFIG_VIDEO_EM28XX_ALSA=m +CONFIG_VIDEO_EM28XX_DVB=m +CONFIG_VIDEO_EM28XX_RC=m +CONFIG_VIDEO_FB_IVTV=m +# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set +CONFIG_VIDEO_GO7007=m +CONFIG_VIDEO_GO7007_LOADER=m +CONFIG_VIDEO_GO7007_USB=m +CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m +CONFIG_VIDEO_HDPVR=m +CONFIG_VIDEO_HEXIUM_GEMINI=m +CONFIG_VIDEO_HEXIUM_ORION=m +CONFIG_VIDEO_IR_I2C=m +CONFIG_VIDEO_IVTV=m +CONFIG_VIDEO_IVTV_ALSA=m +CONFIG_VIDEO_KS0127=m +CONFIG_VIDEO_M52790=m +CONFIG_VIDEO_MEM2MEM_DEINTERLACE=m +CONFIG_VIDEO_MEM2MEM_TESTDEV=m +CONFIG_VIDEO_MEYE=m +CONFIG_VIDEO_MSP3400=m +CONFIG_VIDEO_MT9V011=m +# CONFIG_VIDEO_MX3 is not set +CONFIG_VIDEO_MXB=m +CONFIG_VIDEO_OMAP2_VOUT=m +CONFIG_VIDEO_OMAP2_VOUT_VRFB=y +CONFIG_VIDEO_OUTPUT_CONTROL=m +CONFIG_VIDEO_OV7640=m +CONFIG_VIDEO_OV7670=m +CONFIG_VIDEO_PMS=m +CONFIG_VIDEO_PVRUSB2=m +# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set +CONFIG_VIDEO_PVRUSB2_DVB=y +CONFIG_VIDEO_PVRUSB2_SYSFS=y +CONFIG_VIDEO_RCAR_VIN=m +CONFIG_VIDEO_SAA6588=m +CONFIG_VIDEO_SAA7110=m +CONFIG_VIDEO_SAA711X=m +CONFIG_VIDEO_SAA7127=m +CONFIG_VIDEO_SAA7134=m +CONFIG_VIDEO_SAA7134_ALSA=m +CONFIG_VIDEO_SAA7134_DVB=m +CONFIG_VIDEO_SAA7134_RC=y +CONFIG_VIDEO_SAA7146=m +CONFIG_VIDEO_SAA7146_VV=m +CONFIG_VIDEO_SAA7164=m +CONFIG_VIDEO_SAA717X=m +CONFIG_VIDEO_SAA7185=m +CONFIG_VIDEO_SH_MOBILE_CEU=m +CONFIG_VIDEO_SH_MOBILE_CSI2=m +CONFIG_VIDEO_SH_VEU=m +CONFIG_VIDEO_SONY_BTF_MPX=m +CONFIG_VIDEO_STK1160=m +CONFIG_VIDEO_STK1160_AC97=y +CONFIG_VIDEO_STK1160_COMMON=m +CONFIG_VIDEO_TDA7432=m +CONFIG_VIDEO_TDA9840=m +CONFIG_VIDEO_TEA6415C=m +CONFIG_VIDEO_TEA6420=m +CONFIG_VIDEO_TIMBERDALE=m +CONFIG_VIDEO_TI_VPE=m +# CONFIG_VIDEO_TI_VPE_DEBUG is not set +CONFIG_VIDEO_TLG2300=m +CONFIG_VIDEO_TM6000=m +CONFIG_VIDEO_TM6000_ALSA=m +CONFIG_VIDEO_TM6000_DVB=m +CONFIG_VIDEO_TUNER=m +CONFIG_VIDEO_TVAUDIO=m +CONFIG_VIDEO_TVEEPROM=m +CONFIG_VIDEO_TVP5150=m +CONFIG_VIDEO_TW2804=m +CONFIG_VIDEO_TW9903=m +CONFIG_VIDEO_TW9906=m +CONFIG_VIDEO_UDA1342=m +CONFIG_VIDEO_UPD64031A=m +CONFIG_VIDEO_UPD64083=m +CONFIG_VIDEO_USBTV=m +CONFIG_VIDEO_USBVISION=m +CONFIG_VIDEO_V4L2=m +CONFIG_VIDEO_V4L2_INT_DEVICE=m +CONFIG_VIDEO_VIA_CAMERA=m +CONFIG_VIDEO_VIVI=m +CONFIG_VIDEO_VP27SMPX=m +CONFIG_VIDEO_VPX3220=m +CONFIG_VIDEO_W9966=m +CONFIG_VIDEO_WM8739=m +CONFIG_VIDEO_WM8775=m +CONFIG_VIDEO_ZORAN=m +CONFIG_VIDEO_ZORAN_AVS6EYES=m +CONFIG_VIDEO_ZORAN_BUZ=m +CONFIG_VIDEO_ZORAN_DC10=m +CONFIG_VIDEO_ZORAN_DC30=m +CONFIG_VIDEO_ZORAN_LML33=m +CONFIG_VIDEO_ZORAN_LML33R10=m +CONFIG_VIDEO_ZORAN_ZR36060=m +CONFIG_VIPERBOARD_ADC=m +CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y +CONFIG_VIRTUALIZATION=y +CONFIG_VIRT_CPU_ACCOUNTING=y +CONFIG_VIRT_CPU_ACCOUNTING_NATIVE=y +CONFIG_VIRT_DRIVERS=y +CONFIG_VIRT_TO_BUS=y +CONFIG_VITESSE_PHY=y +CONFIG_VLAN_8021Q=m +CONFIG_VLAN_8021Q_GVRP=y +CONFIG_VLAN_8021Q_MVRP=y +CONFIG_VLSI_FIR=m +CONFIG_VM86=y +CONFIG_VME_BUS=m +CONFIG_VME_CA91CX42=m +CONFIG_VME_PIO2=m +CONFIG_VME_TSI148=m +CONFIG_VME_USER=m +CONFIG_VMIVME_7805=m +# CONFIG_VMSPLIT_1G is not set +# CONFIG_VMSPLIT_2G is not set +CONFIG_VMSPLIT_3G=y +CONFIG_VMWARE_BALLOON=m +CONFIG_VMWARE_PVSCSI=m +CONFIG_VMWARE_VMCI=m +CONFIG_VMWARE_VMCI_VSOCKETS=m +CONFIG_VMXNET3=m +CONFIG_VM_EVENT_COUNTERS=y +CONFIG_VORTEX=m +CONFIG_VSOCKETS=m +CONFIG_VSX=y +CONFIG_VT=y +CONFIG_VT6655=m +CONFIG_VT6656=m +CONFIG_VT_CONSOLE=y +CONFIG_VT_CONSOLE_SLEEP=y +CONFIG_VT_HW_CONSOLE_BINDING=y +CONFIG_VXFS_FS=m +CONFIG_VXGE=m +# CONFIG_VXGE_DEBUG_TRACE_ALL is not set +CONFIG_VXLAN=m +CONFIG_W1=m +CONFIG_W1_CON=y +CONFIG_W1_MASTER_DS1WM=m +CONFIG_W1_MASTER_DS2482=m +CONFIG_W1_MASTER_DS2490=m +CONFIG_W1_MASTER_GPIO=m +CONFIG_W1_MASTER_MATROX=m +CONFIG_W1_MASTER_MXC=m +CONFIG_W1_SLAVE_BQ27000=m +CONFIG_W1_SLAVE_DS2408=m +CONFIG_W1_SLAVE_DS2408_READBACK=y +CONFIG_W1_SLAVE_DS2413=m +CONFIG_W1_SLAVE_DS2423=m +CONFIG_W1_SLAVE_DS2431=m +CONFIG_W1_SLAVE_DS2433=m +# CONFIG_W1_SLAVE_DS2433_CRC is not set +CONFIG_W1_SLAVE_DS2760=m +CONFIG_W1_SLAVE_DS2780=m +CONFIG_W1_SLAVE_DS2781=m +CONFIG_W1_SLAVE_DS28E04=m +CONFIG_W1_SLAVE_SMEM=m +CONFIG_W1_SLAVE_THERM=m +CONFIG_W35UND=m +CONFIG_W83627HF_WDT=m +CONFIG_W83697HF_WDT=m +CONFIG_W83697UG_WDT=m +CONFIG_W83877F_WDT=m +CONFIG_W83977F_WDT=m +CONFIG_WAFER_WDT=m +CONFIG_WAN=y +CONFIG_WANXL=m +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_CORE=y +# CONFIG_WATCHDOG_NOWAYOUT is not set +CONFIG_WATCHDOG_RTAS=m +CONFIG_WCN36XX=m +# CONFIG_WCN36XX_DEBUGFS is not set +CONFIG_WD80x3=m +CONFIG_WDT=m +CONFIG_WDTPCI=m +CONFIG_WEXT_CORE=y +CONFIG_WEXT_PRIV=y +CONFIG_WEXT_PROC=y +CONFIG_WEXT_SPY=y +CONFIG_WIL6210_ISR_COR=y +CONFIG_WIL6210_TRACING=y +CONFIG_WILINK_PLATFORM_DATA=y +CONFIG_WIMAX=m +CONFIG_WIMAX_DEBUG_LEVEL=8 +CONFIG_WIMAX_GDM72XX=m +CONFIG_WIMAX_GDM72XX_K_MODE=y +CONFIG_WIMAX_GDM72XX_QOS=y +CONFIG_WIMAX_GDM72XX_USB=y +CONFIG_WIMAX_GDM72XX_USB_PM=y +CONFIG_WIMAX_GDM72XX_WIMAX2=y +CONFIG_WIMAX_I2400M=m +CONFIG_WIMAX_I2400M_DEBUG_LEVEL=8 +CONFIG_WIMAX_I2400M_USB=m +CONFIG_WINBOND_840=m +CONFIG_WINBOND_FIR=m +CONFIG_WINDFARM=m +CONFIG_WINDFARM_PM112=m +CONFIG_WINDFARM_PM121=m +CONFIG_WINDFARM_PM72=m +CONFIG_WINDFARM_PM81=m +CONFIG_WINDFARM_PM91=m +CONFIG_WINDFARM_RM31=m +CONFIG_WIRELESS=y +CONFIG_WIRELESS_EXT=y +CONFIG_WIZNET_BUS_ANY=y +# CONFIG_WIZNET_BUS_DIRECT is not set +# CONFIG_WIZNET_BUS_INDIRECT is not set +CONFIG_WIZNET_W5100=m +CONFIG_WIZNET_W5300=m +CONFIG_WL1251=m +CONFIG_WL1251_SDIO=m +CONFIG_WL1251_SPI=m +CONFIG_WL12XX=m +CONFIG_WL18XX=m +CONFIG_WLAGS49_H2=m +CONFIG_WLAGS49_H25=m +CONFIG_WLAN=y +CONFIG_WLCORE=m +CONFIG_WLCORE_SDIO=m +CONFIG_WLCORE_SPI=m +CONFIG_WL_TI=y +CONFIG_WM831X_BACKUP=m +CONFIG_WM831X_POWER=m +CONFIG_WM831X_WATCHDOG=m +CONFIG_WM8350_POWER=m +CONFIG_WM8350_WATCHDOG=m +CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y +CONFIG_X25=m +CONFIG_X25_ASY=m +CONFIG_X509_CERTIFICATE_PARSER=y +CONFIG_X86=y +CONFIG_X86_32=y +CONFIG_X86_32_IRIS=m +# CONFIG_X86_32_NON_STANDARD is not set +CONFIG_X86_32_SMP=y +CONFIG_X86_64=y +CONFIG_X86_64_ACPI_NUMA=y +CONFIG_X86_64_SMP=y +CONFIG_X86_ACPI_CPUFREQ=y +CONFIG_X86_ACPI_CPUFREQ_CPB=y +CONFIG_X86_AMD_FREQ_SENSITIVITY=m +# CONFIG_X86_ANCIENT_MCE is not set +CONFIG_X86_APM_BOOT=y +# CONFIG_X86_BIGSMP is not set +CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y +CONFIG_X86_CHECK_BIOS_CORRUPTION=y +CONFIG_X86_CMOV=y +CONFIG_X86_CMPXCHG64=y +CONFIG_X86_CPUFREQ_NFORCE2=y +CONFIG_X86_CPUID=m +CONFIG_X86_DEBUGCTLMSR=y +# CONFIG_X86_DEBUG_STATIC_CPU_HAS is not set +# CONFIG_X86_DECODER_SELFTEST is not set +CONFIG_X86_DEV_DMA_OPS=y +CONFIG_X86_EXTENDED_PLATFORM=y +# CONFIG_X86_E_POWERSAVER is not set +CONFIG_X86_GENERIC=y +# CONFIG_X86_GOLDFISH is not set +CONFIG_X86_GX_SUSPMOD=m +CONFIG_X86_HT=y +CONFIG_X86_INTEL_LPSS=y +CONFIG_X86_INTEL_MID=y +CONFIG_X86_INTEL_PSTATE=y +CONFIG_X86_INTEL_USERCOPY=y +CONFIG_X86_INTERNODE_CACHE_SHIFT=6 +CONFIG_X86_IO_APIC=y +CONFIG_X86_L1_CACHE_SHIFT=6 +CONFIG_X86_LOCAL_APIC=y +CONFIG_X86_LONGHAUL=m +CONFIG_X86_LONGRUN=m +CONFIG_X86_MCE=y +CONFIG_X86_MCE_AMD=y +CONFIG_X86_MCE_INJECT=m +CONFIG_X86_MCE_INTEL=y +CONFIG_X86_MCE_THRESHOLD=y +CONFIG_X86_MDFLD=y +CONFIG_X86_MPPARSE=y +CONFIG_X86_MSR=m +CONFIG_X86_NEED_RELOCS=y +CONFIG_X86_NUMACHIP=y +CONFIG_X86_P4_CLOCKMOD=m +CONFIG_X86_PAE=y +CONFIG_X86_PAT=y +CONFIG_X86_PCC_CPUFREQ=y +CONFIG_X86_PKG_TEMP_THERMAL=m +CONFIG_X86_PLATFORM_DEVICES=y +CONFIG_X86_PM_TIMER=y +CONFIG_X86_POWERNOW_K6=m +CONFIG_X86_POWERNOW_K7=m +CONFIG_X86_POWERNOW_K7_ACPI=y +CONFIG_X86_POWERNOW_K8=y +CONFIG_X86_PPRO_FENCE=y +# CONFIG_X86_PTDUMP is not set +# CONFIG_X86_RDC321X is not set +CONFIG_X86_REBOOTFIXUPS=y +CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y +CONFIG_X86_RESERVE_LOW=64 +CONFIG_X86_SMAP=y +CONFIG_X86_SPEEDSTEP_CENTRINO=y +CONFIG_X86_SPEEDSTEP_CENTRINO_TABLE=y +CONFIG_X86_SPEEDSTEP_ICH=y +CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK=y +CONFIG_X86_SPEEDSTEP_SMI=y +CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y +# CONFIG_X86_SYSFB is not set +CONFIG_X86_THERMAL_VECTOR=y +CONFIG_X86_TSC=y +CONFIG_X86_USE_PPRO_CHECKSUM=y +# CONFIG_X86_UV is not set +# CONFIG_X86_VERBOSE_BOOTUP is not set +# CONFIG_X86_VSMP is not set +CONFIG_X86_WANT_INTEL_MID=y +CONFIG_X86_X2APIC=y +CONFIG_X86_X32=y +CONFIG_XENFS=m +CONFIG_XEN_ACPI_PROCESSOR=y +CONFIG_XEN_BACKEND=y +CONFIG_XEN_BALLOON=y +CONFIG_XEN_BALLOON_MEMORY_HOTPLUG=y +CONFIG_XEN_BLKDEV_BACKEND=m +CONFIG_XEN_BLKDEV_FRONTEND=y +CONFIG_XEN_COMPAT_XENFS=y +# CONFIG_XEN_DEBUG_FS is not set +CONFIG_XEN_DEV_EVTCHN=m +CONFIG_XEN_DOM0=y +CONFIG_XEN_FBDEV_FRONTEND=m +CONFIG_XEN_GNTDEV=m +CONFIG_XEN_GRANT_DEV_ALLOC=m +CONFIG_XEN_HAVE_PVMMU=y +CONFIG_XEN_MCE_LOG=y +CONFIG_XEN_NETDEV_BACKEND=m +CONFIG_XEN_NETDEV_FRONTEND=y +CONFIG_XEN_PCIDEV_BACKEND=m +CONFIG_XEN_PCIDEV_FRONTEND=m +CONFIG_XEN_PRIVCMD=m +CONFIG_XEN_PRIVILEGED_GUEST=y +CONFIG_XEN_PVHVM=y +CONFIG_XEN_SAVE_RESTORE=y +CONFIG_XEN_SCRUB_PAGES=y +CONFIG_XEN_SELFBALLOONING=y +CONFIG_XEN_SYS_HYPERVISOR=y +CONFIG_XEN_TMEM=m +CONFIG_XEN_WDT=m +CONFIG_XEN_XENBUS_FRONTEND=y +CONFIG_XFRM=y +CONFIG_XFRM_ALGO=m +CONFIG_XFRM_IPCOMP=m +# CONFIG_XFRM_MIGRATE is not set +# CONFIG_XFRM_STATISTICS is not set +# CONFIG_XFRM_SUB_POLICY is not set +CONFIG_XFRM_USER=m +# CONFIG_XFS_DEBUG is not set +CONFIG_XFS_FS=m +CONFIG_XFS_POSIX_ACL=y +CONFIG_XFS_QUOTA=y +CONFIG_XFS_RT=y +# CONFIG_XFS_WARN is not set +CONFIG_XGENE_QMTM=m +# CONFIG_XILINX_EMACLITE is not set +CONFIG_XILINX_LL_TEMAC=m +CONFIG_XILLYBUS=m +CONFIG_XILLYBUS_OF=m +CONFIG_XILLYBUS_PCIE=m +# CONFIG_XMON_DEFAULT is not set +CONFIG_XMON_DISASSEMBLY=y +CONFIG_XO15_EBOOK=m +CONFIG_XOR_BLOCKS=m +CONFIG_XPS=y +CONFIG_XPS_USB_HCD_XILINX=y +CONFIG_XZ_DEC=y +CONFIG_XZ_DEC_BCJ=y +CONFIG_XZ_DEC_POWERPC=y +CONFIG_YAM=m +CONFIG_YELLOWFIN=m +CONFIG_YENTA=m +CONFIG_YENTA_ENE_TUNE=y +CONFIG_YENTA_O2=y +CONFIG_YENTA_RICOH=y +CONFIG_YENTA_TI=y +CONFIG_YENTA_TOSHIBA=y +CONFIG_ZBOOT_ROM_BSS=0x0 +CONFIG_ZBOOT_ROM_TEXT=0x0 +CONFIG_ZBUD=y +CONFIG_ZD1211RW=m +# CONFIG_ZD1211RW_DEBUG is not set +CONFIG_ZEROPLUS_FF=y +CONFIG_ZISOFS=y +CONFIG_ZLIB_DEFLATE=y +CONFIG_ZLIB_INFLATE=y +CONFIG_ZONE_DMA=y +CONFIG_ZRAM=m +# CONFIG_ZRAM_DEBUG is not set +CONFIG_ZSMALLOC=y +CONFIG_ZSWAP=y --- linux-3.13.0.orig/debian.master/config/enforce +++ linux-3.13.0/debian.master/config/enforce @@ -0,0 +1,130 @@ +# +# SECURITY items +# +# Ensure this option is enabled. +value CONFIG_COMPAT_BRK n +value CONFIG_DEVKMEM n +value CONFIG_LSM_MMAP_MIN_ADDR 0 +value CONFIG_SECURITY y +!exists CONFIG_SECURITY_FILE_CAPABILITIES | value CONFIG_SECURITY_FILE_CAPABILITIES y +value CONFIG_SECURITY_SELINUX y +value CONFIG_SECURITY_SMACK y +value CONFIG_SECURITY_YAMA y +value CONFIG_SYN_COOKIES y +value CONFIG_DEFAULT_SECURITY_APPARMOR y +value CONFIG_DEBUG_INFO y +# For architectures which support this option ensure it is enabled. +!exists CONFIG_XEN_ACPI_PROCESSOR | value CONFIG_XEN_ACPI_PROCESSOR y +!exists CONFIG_SECCOMP | value CONFIG_SECCOMP y +!exists CONFIG_HAVE_ARCH_SECCOMP_FILTER | value CONFIG_SECCOMP_FILTER y +!exists CONFIG_CC_STACKPROTECTOR | value CONFIG_CC_STACKPROTECTOR y +!exists CONFIG_DEBUG_RODATA | value CONFIG_DEBUG_RODATA y +!exists CONFIG_DEBUG_SET_MODULE_RONX | value CONFIG_DEBUG_SET_MODULE_RONX y +!exists CONFIG_STRICT_DEVMEM | value CONFIG_STRICT_DEVMEM y +# For architectures which support this option ensure it is disabled. +!exists CONFIG_COMPAT_VDSO | value CONFIG_COMPAT_VDSO n +!exists CONFIG_ACPI_CUSTOM_METHOD | value CONFIG_ACPI_CUSTOM_METHOD n +# Default to 32768 on ARM, 65536 for everything else. +(arch armel armhf &/ value CONFIG_DEFAULT_MMAP_MIN_ADDR 32768) | \ + value CONFIG_DEFAULT_MMAP_MIN_ADDR 65536 + +# upstart requires DEVTMPFS be enabled and mounted by default. +value CONFIG_DEVTMPFS y +value CONFIG_DEVTMPFS_MOUNT y + +# some /dev nodes require POSIX ACLs, like /dev/dsp +value CONFIG_TMPFS_POSIX_ACL y + +# Ramdisk size should be a minimum of 64M +value CONFIG_BLK_DEV_RAM_SIZE 65536 + +# LVM requires dm_mod built in to activate correctly (LP: #560717) +value CONFIG_BLK_DEV_DM y + +# sysfs: ensure all DEPRECATED items are off +!exists CONFIG_SYSFS_DEPRECATED_V2 | value CONFIG_SYSFS_DEPRECATED_V2 n +!exists CONFIG_SYSFS_DEPRECATED | value CONFIG_SYSFS_DEPRECATED n + +# automatically add local version will cause packaging failure +value CONFIG_LOCALVERSION_AUTO n + +# provide framebuffer console form the start +# UbuntuSpec:foundations-m-grub2-boot-framebuffer +value CONFIG_FRAMEBUFFER_CONSOLE y + +# GRUB changes will rely on built in vesafb on x86, +# UbuntuSpec:foundations-m-grub2-boot-framebuffer +#(( arch i386 | arch amd64 ) & value CONFIG_FB_VESA y) | \ +# value CONFIG_FB_VESA m | !exists CONFIG_FB_VESA +#value CONFIG_FB_VESA m | !exists CONFIG_FB_VESA + +# Build in uinput module so that it's always available (LP: 584812) +value CONFIG_INPUT_UINPUT y + +# upstart relies on getting all of the kernel arguments +#value CONFIG_INIT_PASS_ALL_PARAMS y + +# Ensure CONFIG_IPV6 is y, if this is a module we get a module load for +# every ipv6 packet, bad. +value CONFIG_IPV6 y + +# Ensure ECRYPT_FS is y as it cannot be autoloaded and it has complex +# dependancies which can pull it =m at a whim. +value CONFIG_ECRYPT_FS y + +# Ensure CONFIG_EFI_VARS is y as debian-installer relies on having +# access to efivars when installing in EFI mode. See LP:837332 +value CONFIG_EFI_VARS y | !exists CONFIG_EFI_VARS + +# Ensure CONFIG_VFAT_FS is y for arm, needed to ensure we able to replace +# a kernel with the same version. Also needed for EFI based systems. +#(arch armel armhf arm64 i386 amd64 &/ value CONFIG_VFAT_FS y) | \ +# value CONFIG_VFAT_FS m +value CONFIG_VFAT_FS y + +# Ensure CONFIG_GPIO_TWL4030 is y for arm, LP:921934 +(arch armel armhf &/ value CONFIG_GPIO_TWL4030 y) | \ + value CONFIG_GPIO_TWL4030 m | \ + !exists CONFIG_GPIO_TWL4030 + +# Ensure CONFIG_THERM_ADT746X is y for powerpc-smp flavours. +# See LP:923094 +(flavour powerpc-smp &/ value CONFIG_THERM_ADT746X y) | \ + !exists CONFIG_THERM_ADT746X + +# Ensure CONFIG_NVRAM is y for powerpc-smp, LP:942193 +(flavour powerpc-smp powerpc-e500 powerpc-e500mc &/ value CONFIG_NVRAM y) | \ + (flavour powerpc-e500 powerpc-e500mc) | \ + value CONFIG_NVRAM m | \ + !exists CONFIG_NVRAM + +# Ensure CONFIG_STUB_POULSBO is disabled if CONFIG_DRM_PSB is enabled +# See LP:899244 +(!exists CONFIG_DRM_PSB | value CONFIG_DRM_PSB n) | \ +((value CONFIG_DRM_PSB y | value CONFIG_DRM_PSB m) & (value CONFIG_STUB_POULSBO n | !exists CONFIG_STUB_POULSBO)) + +# Ensure CONFIG_B43_BCMA_EXTRA is disabled if CONFIG_BRCMSMAC is enabled. +# Otherwise b43 and brcmsmac will overlap in the hardware they claim to +# support. +(!exists CONFIG_BRCMSMAC | value CONFIG_BRCMSMAC n) | \ +((value CONFIG_BRCMSMAC y | value CONFIG_BRCMSMAC m) & (value CONFIG_B43_BCMA_EXTRA n | !exists CONFIG_B43_BCMA_EXTRA)) + +# CONFIG_I2C_DESIGNWARE_PLATFORM is required by Calxeda Highbank +(flavour highbank &/ value CONFIG_I2C_DESIGNWARE_PLATFORM y) | \ +value CONFIG_I2C_DESIGNWARE_PLATFORM m | \ +!exists CONFIG_I2C_DESIGNWARE_PLATFORM + +# Don't use the generic ehci/ohci code on omap, it doesn't work +((flavour generic & arch armhf &/ value CONFIG_USB_EHCI_HCD_PLATFORM n & value CONFIG_USB_OHCI_HCD_PLATFORM n) | \ + !exists MISSING) + +# CONFIG_DRM_MGAG200, experimental driver hangs boot on HP Proliant Gen8 +# See LP:1042903 +(!exists CONFIG_DRM_MGAG200 | value CONFIG_DRM_MGAG200 n) + +# Required if /init is a shell script. +value CONFIG_BINFMT_SCRIPT y + +# CPUIDLE is a source of instabilities on ECX-1000, leave it off +((flavour generic & arch armhf &/ value CONFIG_CPU_IDLE n) | \ + !exists MISSING) --- linux-3.13.0.orig/debian.master/config/i386/config.common.i386 +++ linux-3.13.0/debian.master/config/i386/config.common.i386 @@ -0,0 +1,314 @@ +# +# Config options for config.common.i386 automatically generated by splitconfig.pl +# +# CONFIG_64BIT is not set +CONFIG_AC97_BUS=m +# CONFIG_AHCI_IMX is not set +CONFIG_AIC79XX_RESET_DELAY_MS=5000 +CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig" +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-ecx -fcall-saved-edx" +# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set +CONFIG_ARCH_PHYS_ADDR_T_64BIT=y +CONFIG_ARCH_RANDOM=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_ASYNC_TX_DMA=y +# CONFIG_ATA_NONSTANDARD is not set +CONFIG_ATA_PIIX=y +# CONFIG_ATOMIC64_SELFTEST is not set +# CONFIG_AUDIT_ARCH is not set +CONFIG_BCH=m +CONFIG_COMEDI_ISA_DRIVERS=y +CONFIG_COMPACTION=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set +CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y +CONFIG_CPU_IDLE=y +CONFIG_CRASH_DUMP=y +# CONFIG_DEBUG_MEMORY_INIT is not set +# CONFIG_DEFAULT_CFQ is not set +CONFIG_DEFAULT_DEADLINE=y +CONFIG_DEFAULT_IOSCHED="deadline" +CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 +CONFIG_EXYNOS_VIDEO=y +# CONFIG_EZX_PCAP is not set +CONFIG_FB_ATY128=m +CONFIG_FB_BACKLIGHT=y +CONFIG_FB_BOOT_VESA_SUPPORT=y +CONFIG_FB_DDC=m +# CONFIG_FB_MACMODES is not set +CONFIG_FB_RADEON=m +CONFIG_FB_SVGALIB=m +CONFIG_FB_SYS_COPYAREA=m +CONFIG_FB_SYS_FILLRECT=m +CONFIG_FB_SYS_FOPS=m +CONFIG_FB_SYS_IMAGEBLIT=m +CONFIG_FB_UDL=m +CONFIG_FB_VOODOO1=m +# CONFIG_FMAN_P1023 is not set +CONFIG_FMAN_P3040_P4080_P5020=y +# CONFIG_FONTS is not set +CONFIG_FRAME_WARN=1024 +CONFIG_FSL_FMAN=y +CONFIG_FUNCTION_TRACER=y +CONFIG_GENERIC_PHY=m +CONFIG_GPIO_GENERIC=m +CONFIG_GPIO_TWL6040=m +# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set +CONFIG_HAVE_AOUT=y +# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set +CONFIG_HAVE_GENERIC_DMA_COHERENT=y +CONFIG_HAVE_SETUP_PER_CPU_AREA=y +CONFIG_HIBERNATION=y +CONFIG_HOTPLUG_PCI_CPCI=y +CONFIG_HOTPLUG_PCI_SHPC=m +CONFIG_HUGETLB_PAGE=y +# CONFIG_HW_RANDOM_ATMEL is not set +# CONFIG_HZ_100 is not set +CONFIG_I2C_ALGOBIT=m +# CONFIG_IDE is not set +# CONFIG_IKCONFIG is not set +CONFIG_ILLEGAL_POINTER_VALUE=0 +CONFIG_IMA=y +CONFIG_INFINIBAND_AMSO1100=m +CONFIG_INPUT_IDEAPAD_SLIDEBAR=m +CONFIG_IOMMU_SUPPORT=y +# CONFIG_IRQ_DOMAIN_DEBUG is not set +CONFIG_ISA=y +CONFIG_KSM=y +CONFIG_KVM=m +CONFIG_LEDS_TRIGGER_HEARTBEAT=m +CONFIG_LIBERTAS_MESH=y +CONFIG_LIS3L02DQ=m +CONFIG_LOG_BUF_SHIFT=17 +CONFIG_MACINTOSH_DRIVERS=y +# CONFIG_MATH_EMULATION is not set +# CONFIG_MFD_TI_AM335X_TSCADC is not set +# CONFIG_MFD_TMIO is not set +CONFIG_MII=m +CONFIG_MMC_BLOCK=m +CONFIG_MMC_SDHCI=m +CONFIG_MMC_SDHCI_PLTFM=m +CONFIG_MTD=m +CONFIG_MTD_BLKDEVS=m +CONFIG_MTD_BLOCK=m +CONFIG_MTD_CMDLINE_PARTS=m +CONFIG_MTD_NAND=m +CONFIG_MTD_NAND_BCH=m +CONFIG_MTD_NAND_ECC=m +CONFIG_MTD_NAND_IDS=m +CONFIG_MTD_SM_COMMON=m +CONFIG_MUSB_PIO_ONLY=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +CONFIG_NET_TULIP=y +CONFIG_NOP_USB_XCEIV=m +CONFIG_NO_HZ_IDLE=y +CONFIG_NR_CPUS=8 +CONFIG_NVRAM=m +CONFIG_OUTPUT_FORMAT="elf32-i386" +CONFIG_PAGE_OFFSET=0xC0000000 +CONFIG_PARIDE_EPATC8=y +CONFIG_PATA_SIS=y +CONFIG_PCCARD=m +CONFIG_PCIEPORTBUS=y +CONFIG_PERCPU_TEST=m +CONFIG_PERSISTENT_KEYRINGS=y +CONFIG_PHYSICAL_ALIGN=0x1000000 +CONFIG_PHYSICAL_START=0x1000000 +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_PMIC_ADP5520=y +CONFIG_PMIC_DA903X=y +CONFIG_PM_DEBUG=y +CONFIG_PM_RUNTIME=y +CONFIG_PM_WAKELOCKS=y +CONFIG_PPS=m +CONFIG_PPS_CLIENT_GPIO=m +CONFIG_PPS_CLIENT_LDISC=m +CONFIG_PPS_CLIENT_PARPORT=m +CONFIG_PROBE_EVENTS=y +# CONFIG_PSTORE_CONSOLE is not set +CONFIG_PSTORE_RAM=m +CONFIG_PTP_1588_CLOCK=m +CONFIG_RAPIDIO_CPS_GEN2=m +CONFIG_RAPIDIO_CPS_XX=m +CONFIG_RAPIDIO_TSI568=m +CONFIG_RAPIDIO_TSI57X=m +CONFIG_RAPIDIO_TSI721=m +CONFIG_RBTREE_TEST=m +CONFIG_RCU_CPU_STALL_TIMEOUT=60 +CONFIG_RCU_FANOUT=32 +CONFIG_RCU_FAST_NO_HZ=y +# CONFIG_RCU_NOCB_CPU is not set +CONFIG_REED_SOLOMON=m +CONFIG_REGULATOR_FIXED_VOLTAGE=m +# CONFIG_REGULATOR_S2MPS11 is not set +CONFIG_REISERFS_FS=m +CONFIG_RFKILL=y +CONFIG_RT2800USB_UNKNOWN=y +# CONFIG_RT2X00_LIB_DEBUGFS is not set +CONFIG_RTC_DRV_CMOS=y +CONFIG_RTC_DRV_DS3232=m +CONFIG_SAMSUNG_USB2PHY=m +CONFIG_SAMSUNG_USB3PHY=m +CONFIG_SATA_AHCI_PLATFORM=m +# CONFIG_SATA_HIGHBANK is not set +CONFIG_SATA_SVW=m +CONFIG_SCHED_AUTOGROUP=y +CONFIG_SCHED_SMT=y +CONFIG_SCSI_SPI_ATTRS=y +CONFIG_SCSI_SRP_ATTRS=m +CONFIG_SENSORS_SCH56XX_COMMON=m +CONFIG_SERIAL_8250_PCI=y +# CONFIG_SERIAL_FSL_LPUART is not set +CONFIG_SERIO_ALTERA_PS2=m +CONFIG_SERIO_ARC_PS2=m +CONFIG_SERIO_I8042=y +CONFIG_SERIO_PARKBD=m +CONFIG_SERIO_PCIPS2=m +CONFIG_SERIO_PS2MULT=m +CONFIG_SERIO_RAW=m +CONFIG_SND=m +CONFIG_SND_COMPRESS_OFFLOAD=m +CONFIG_SND_EMU10K1_SEQ=m +CONFIG_SND_OPL3_LIB_SEQ=m +CONFIG_SND_OPL4_LIB_SEQ=m +CONFIG_SND_PCM=m +CONFIG_SND_SBAWE_SEQ=m +CONFIG_SND_SOC=m +CONFIG_SND_SOC_I2C_AND_SPI=m +CONFIG_SND_TIMER=m +CONFIG_SOUND=m +# CONFIG_SPARSEMEM_MANUAL is not set +CONFIG_SPI_PXA2XX_PCI=m +CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y +# CONFIG_SQUASHFS_DECOMP_SINGLE is not set +# CONFIG_SQUASHFS_FILE_CACHE is not set +CONFIG_SQUASHFS_FILE_DIRECT=y +CONFIG_SRAM=y +CONFIG_STACK_TRACER=y +CONFIG_STAGING=y +# CONFIG_STANDALONE is not set +CONFIG_SUNRPC_DEBUG=y +CONFIG_SWIOTLB=y +CONFIG_SYSCTL_SYSCALL=y +CONFIG_SYS_HYPERVISOR=y +CONFIG_TEST_KSTRTOX=m +CONFIG_TEST_STRING_HELPERS=m +CONFIG_TICK_CPU_ACCOUNTING=y +CONFIG_TIGON3=m +CONFIG_TIMER_STATS=y +CONFIG_TRANSPARENT_HUGEPAGE=y +# CONFIG_TWL4030_CORE is not set +CONFIG_TWL6040_CORE=y +CONFIG_UIO_AEC=m +CONFIG_UIO_CIF=m +CONFIG_UIO_DMEM_GENIRQ=m +CONFIG_UIO_MF624=m +CONFIG_UIO_NETX=m +CONFIG_UIO_PCI_GENERIC=m +CONFIG_UIO_PDRV_GENIRQ=m +CONFIG_UIO_SERCOS3=m +CONFIG_UNUSED_SYMBOLS=y +CONFIG_USB_ADUTUX=m +CONFIG_USB_ANNOUNCE_NEW_DEVICES=y +CONFIG_USB_APPLEDISPLAY=m +CONFIG_USB_C67X00_HCD=m +CONFIG_USB_CATC=m +CONFIG_USB_CHIPIDEA=m +CONFIG_USB_CYPRESS_CY7C63=m +CONFIG_USB_CYTHERM=m +CONFIG_USB_DWC3=m +# CONFIG_USB_DWC3_OMAP is not set +CONFIG_USB_DYNAMIC_MINORS=y +CONFIG_USB_EHCI_HCD_PLATFORM=y +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_EHSET_TEST_FIXTURE=m +CONFIG_USB_EMI26=m +CONFIG_USB_EMI62=m +CONFIG_USB_EZUSB_FX2=m +CONFIG_USB_FOTG210_HCD=m +CONFIG_USB_FTDI_ELAN=m +CONFIG_USB_FUSBH200_HCD=m +CONFIG_USB_GADGET=m +# CONFIG_USB_G_MULTI is not set +CONFIG_USB_HCD_BCMA=m +CONFIG_USB_HCD_SSB=m +CONFIG_USB_HSIC_USB3503=m +CONFIG_USB_IDMOUSE=m +CONFIG_USB_IOWARRIOR=m +CONFIG_USB_IPHETH=m +CONFIG_USB_ISIGHTFW=m +CONFIG_USB_ISP116X_HCD=m +CONFIG_USB_ISP1301=m +CONFIG_USB_ISP1362_HCD=m +CONFIG_USB_ISP1760_HCD=m +CONFIG_USB_KAWETH=m +CONFIG_USB_LCD=m +CONFIG_USB_LD=m +CONFIG_USB_LED=m +CONFIG_USB_LEGOTOWER=m +CONFIG_USB_MDC800=m +CONFIG_USB_MICROTEK=m +CONFIG_USB_MUSB_HDRC=m +CONFIG_USB_MUSB_TUSB6010=m +CONFIG_USB_OHCI_HCD_PLATFORM=y +# CONFIG_USB_OTG is not set +CONFIG_USB_OXU210HP_HCD=m +CONFIG_USB_PEGASUS=m +CONFIG_USB_PRINTER=m +CONFIG_USB_R8A66597_HCD=m +CONFIG_USB_RCAR_PHY=m +CONFIG_USB_RIO500=m +CONFIG_USB_RTL8150=m +CONFIG_USB_RTL8152=m +CONFIG_USB_SERIAL=m +CONFIG_USB_SEVSEG=m +CONFIG_USB_SISUSBVGA=m +CONFIG_USB_SL811_HCD=m +CONFIG_USB_STORAGE=m +CONFIG_USB_STORAGE_ALAUDA=m +CONFIG_USB_STORAGE_CYPRESS_ATACB=m +CONFIG_USB_STORAGE_DATAFAB=m +CONFIG_USB_STORAGE_ENE_UB6250=m +CONFIG_USB_STORAGE_FREECOM=m +CONFIG_USB_STORAGE_ISD200=m +CONFIG_USB_STORAGE_JUMPSHOT=m +CONFIG_USB_STORAGE_KARMA=m +CONFIG_USB_STORAGE_ONETOUCH=m +CONFIG_USB_STORAGE_REALTEK=m +CONFIG_USB_STORAGE_SDDR09=m +CONFIG_USB_STORAGE_SDDR55=m +CONFIG_USB_STORAGE_USBAT=m +CONFIG_USB_SUPPORT=y +CONFIG_USB_TEST=m +CONFIG_USB_TMC=m +CONFIG_USB_TRANCEVIBRATOR=m +CONFIG_USB_UHCI_HCD=y +CONFIG_USB_USS720=m +CONFIG_USB_WUSB_CBAF=m +CONFIG_USB_YUREX=m +CONFIG_VFIO_IOMMU_TYPE1=m +CONFIG_VGASTATE=m +CONFIG_VGA_CONSOLE=y +CONFIG_VIRTIO=y +CONFIG_VIRTIO_BALLOON=y +CONFIG_VIRTIO_BLK=y +CONFIG_VIRTIO_CONSOLE=y +CONFIG_VIRTIO_MMIO=y +CONFIG_VIRTIO_NET=y +CONFIG_VIRTIO_PCI=y +CONFIG_WIL6210=m +# CONFIG_WIMAX_GDM72XX_SDIO is not set +CONFIG_X86_MINIMUM_CPU_FAMILY=5 +CONFIG_X86_SPEEDSTEP_LIB=y +CONFIG_XEN=y +CONFIG_XEN_MAX_DOMAIN_MEMORY=64 +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +CONFIG_XZ_DEC_IA64=y +CONFIG_XZ_DEC_SPARC=y +CONFIG_XZ_DEC_TEST=m +CONFIG_XZ_DEC_X86=y +# CONFIG_ZONE_DMA32 is not set +CONFIG_ZONE_DMA_FLAG=1 --- linux-3.13.0.orig/debian.master/config/i386/config.flavour.generic +++ linux-3.13.0/debian.master/config/i386/config.flavour.generic @@ -0,0 +1,10 @@ +# +# Config options for config.flavour.generic automatically generated by splitconfig.pl +# +CONFIG_HZ=250 +# CONFIG_HZ_1000 is not set +CONFIG_HZ_250=y +# CONFIG_IRQ_FORCED_THREADING_DEFAULT is not set +# CONFIG_PREEMPT is not set +# CONFIG_PREEMPT_RCU is not set +CONFIG_PREEMPT_VOLUNTARY=y --- linux-3.13.0.orig/debian.master/config/i386/config.flavour.lowlatency +++ linux-3.13.0/debian.master/config/i386/config.flavour.lowlatency @@ -0,0 +1,10 @@ +# +# Config options for config.flavour.lowlatency automatically generated by splitconfig.pl +# +CONFIG_HZ=1000 +CONFIG_HZ_1000=y +# CONFIG_HZ_250 is not set +CONFIG_IRQ_FORCED_THREADING_DEFAULT=y +CONFIG_PREEMPT=y +CONFIG_PREEMPT_RCU=y +# CONFIG_PREEMPT_VOLUNTARY is not set --- linux-3.13.0.orig/debian.master/config/powerpc/config.common.powerpc +++ linux-3.13.0/debian.master/config/powerpc/config.common.powerpc @@ -0,0 +1,341 @@ +# +# Config options for config.common.powerpc automatically generated by splitconfig.pl +# +CONFIG_64BIT=y +CONFIG_AC97_BUS=m +# CONFIG_AHCI_IMX is not set +CONFIG_AIC79XX_RESET_DELAY_MS=15000 +CONFIG_APM_EMULATION=m +# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_ARCH_SPARSEMEM_DEFAULT=y +# CONFIG_ASYNC_TX_DMA is not set +CONFIG_ATA_PIIX=m +# CONFIG_ATOMIC64_SELFTEST is not set +CONFIG_AUDIT_ARCH=y +# CONFIG_BATTERY_TWL4030_MADC is not set +CONFIG_BCH=m +# CONFIG_CODE_PATCHING_SELFTEST is not set +# CONFIG_COMEDI_ISA_DRIVERS is not set +CONFIG_COMPACTION=y +# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set +CONFIG_CPU_BIG_ENDIAN=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set +CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y +CONFIG_CPU_IDLE=y +# CONFIG_CPU_LITTLE_ENDIAN is not set +# CONFIG_CRASH_DUMP is not set +CONFIG_CRYPTO_DEV_NX=y +# CONFIG_DEBUG_MEMORY_INIT is not set +# CONFIG_DEFAULT_CFQ is not set +CONFIG_DEFAULT_DEADLINE=y +CONFIG_DEFAULT_IOSCHED="deadline" +CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 +CONFIG_EXYNOS_VIDEO=y +# CONFIG_EZX_PCAP is not set +CONFIG_FB_ATY128=y +CONFIG_FB_BACKLIGHT=y +# CONFIG_FB_BOOT_VESA_SUPPORT is not set +CONFIG_FB_DDC=y +CONFIG_FB_IBM_GXT4500=m +CONFIG_FB_MACMODES=y +CONFIG_FB_RADEON=y +CONFIG_FB_SVGALIB=m +CONFIG_FB_VOODOO1=y +# CONFIG_FONTS is not set +CONFIG_FRAME_WARN=1024 +CONFIG_FUNCTION_TRACER=y +# CONFIG_GENERIC_CSUM is not set +CONFIG_GENERIC_PHY=m +CONFIG_GENERIC_TBSYNC=y +CONFIG_GPIO_GENERIC=m +CONFIG_GPIO_TWL4030=m +CONFIG_GPIO_TWL6040=m +# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set +# CONFIG_HAVE_AOUT is not set +# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set +# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set +CONFIG_HOTPLUG_PCI_CPCI=y +CONFIG_HOTPLUG_PCI_SHPC=m +CONFIG_HVCS=y +CONFIG_HVC_OLD_HVSI=y +CONFIG_HVC_UDBG=y +CONFIG_HW_RANDOM_ATMEL=m +CONFIG_HW_RANDOM_POWERNV=y +CONFIG_HZ=250 +# CONFIG_HZ_100 is not set +# CONFIG_HZ_1000 is not set +CONFIG_HZ_250=y +CONFIG_I2C_ALGOBIT=y +# CONFIG_IBMEBUS is not set +CONFIG_IBMVETH=m +# CONFIG_IDE is not set +# CONFIG_IKCONFIG is not set +# CONFIG_IMA is not set +CONFIG_INFINIBAND_AMSO1100=m +# CONFIG_INPUT_IDEAPAD_SLIDEBAR is not set +CONFIG_IOMMU_SUPPORT=y +# CONFIG_IRQ_ALL_CPUS is not set +# CONFIG_IRQ_DOMAIN_DEBUG is not set +# CONFIG_IRQ_FORCED_THREADING_DEFAULT is not set +# CONFIG_ISA is not set +CONFIG_KSM=y +CONFIG_KVM=y +CONFIG_KVM_BOOK3S_64=m +CONFIG_LEDS_TRIGGER_HEARTBEAT=m +CONFIG_LIBERTAS_MESH=y +CONFIG_LIS3L02DQ=m +CONFIG_LOG_BUF_SHIFT=17 +# CONFIG_LPARCFG is not set +CONFIG_MACINTOSH_DRIVERS=y +CONFIG_MATH_EMULATION=y +# CONFIG_MEMORY_HOTREMOVE is not set +# CONFIG_MFD_TI_AM335X_TSCADC is not set +# CONFIG_MFD_TMIO is not set +CONFIG_MII=m +CONFIG_MMC_BLOCK=m +CONFIG_MMC_SDHCI=m +CONFIG_MMC_SDHCI_PLTFM=m +CONFIG_MPIC_MSGR=y +CONFIG_MTD=m +CONFIG_MTD_BLKDEVS=m +CONFIG_MTD_BLOCK=m +CONFIG_MTD_CMDLINE_PARTS=m +CONFIG_MTD_NAND=m +CONFIG_MTD_NAND_BCH=m +CONFIG_MTD_NAND_ECC=m +CONFIG_MTD_NAND_IDS=m +CONFIG_MTD_OF_PARTS=m +CONFIG_MTD_SM_COMMON=m +CONFIG_MUSB_PIO_ONLY=y +CONFIG_NET_TULIP=y +CONFIG_NODES_SHIFT=8 +CONFIG_NOP_USB_XCEIV=m +CONFIG_NO_HZ_FULL=y +CONFIG_NVRAM=y +# CONFIG_PARIDE_EPATC8 is not set +CONFIG_PATA_SIS=m +CONFIG_PCCARD=m +CONFIG_PCIEPORTBUS=y +CONFIG_PCI_SYSCALL=y +CONFIG_PERCPU_TEST=m +CONFIG_PERSISTENT_KEYRINGS=y +CONFIG_PHYSICAL_ALIGN=0x04000000 +CONFIG_PHYSICAL_START=0x00000000 +CONFIG_PHY_EXYNOS_DP_VIDEO=m +CONFIG_PMIC_ADP5520=y +CONFIG_PMIC_DA903X=y +# CONFIG_PM_DEBUG is not set +CONFIG_PM_RUNTIME=y +CONFIG_PM_WAKELOCKS=y +# CONFIG_POWER7_CPU is not set +CONFIG_PPC_4K_PAGES=y +# CONFIG_PPC_64K_PAGES is not set +# CONFIG_PPC_DENORMALISATION is not set +CONFIG_PPC_DISABLE_WERROR=y +CONFIG_PPC_EPAPR_HV_BYTECHAN=y +CONFIG_PPC_ICSWX=y +CONFIG_PPC_MAPLE=y +CONFIG_PPC_PASEMI=y +CONFIG_PPC_PMAC=y +CONFIG_PPC_PS3=y +# CONFIG_PPC_SMLPAR is not set +# CONFIG_PPC_SPLPAR is not set +CONFIG_PPS=m +CONFIG_PPS_CLIENT_GPIO=m +CONFIG_PPS_CLIENT_LDISC=m +CONFIG_PPS_CLIENT_PARPORT=m +# CONFIG_PREEMPT is not set +# CONFIG_PREEMPT_RCU is not set +CONFIG_PREEMPT_VOLUNTARY=y +CONFIG_PROBE_EVENTS=y +CONFIG_PSERIES_ENERGY=m +# CONFIG_PSTORE_CONSOLE is not set +CONFIG_PSTORE_RAM=m +CONFIG_PTP_1588_CLOCK=m +CONFIG_RAPIDIO_CPS_GEN2=y +CONFIG_RAPIDIO_CPS_XX=y +CONFIG_RAPIDIO_TSI568=y +CONFIG_RAPIDIO_TSI57X=y +CONFIG_RAPIDIO_TSI721=y +CONFIG_RBTREE_TEST=m +CONFIG_RCU_CPU_STALL_TIMEOUT=60 +CONFIG_RCU_FAST_NO_HZ=y +CONFIG_RCU_USER_QS=y +CONFIG_REED_SOLOMON=m +CONFIG_REGULATOR_FIXED_VOLTAGE=m +CONFIG_REGULATOR_S2MPS11=m +CONFIG_REISERFS_FS=m +CONFIG_RFKILL=y +CONFIG_RT2800USB_UNKNOWN=y +# CONFIG_RT2X00_LIB_DEBUGFS is not set +# CONFIG_RTAS_FLASH is not set +CONFIG_RTC_DRV_CMOS=m +CONFIG_SAMSUNG_USB2PHY=m +CONFIG_SAMSUNG_USB3PHY=m +CONFIG_SATA_AHCI_PLATFORM=m +# CONFIG_SATA_HIGHBANK is not set +CONFIG_SATA_SVW=y +CONFIG_SCHED_AUTOGROUP=y +CONFIG_SCSI_SPI_ATTRS=m +# CONFIG_SENSORS_SCH56XX_COMMON is not set +CONFIG_SERIAL_8250_PCI=m +# CONFIG_SERIAL_FSL_LPUART is not set +CONFIG_SERIAL_OF_PLATFORM=m +CONFIG_SERIO_ALTERA_PS2=m +CONFIG_SERIO_APBPS2=m +CONFIG_SERIO_ARC_PS2=m +CONFIG_SERIO_I8042=y +CONFIG_SERIO_OLPC_APSP=m +CONFIG_SERIO_PARKBD=m +CONFIG_SERIO_PCIPS2=m +CONFIG_SERIO_PS2MULT=m +CONFIG_SERIO_RAW=m +CONFIG_SERIO_XILINX_XPS_PS2=m +CONFIG_SIMPLE_GPIO=y +CONFIG_SND=m +CONFIG_SND_COMPRESS_OFFLOAD=m +CONFIG_SND_EMU10K1_SEQ=m +CONFIG_SND_OPL3_LIB_SEQ=m +# CONFIG_SND_OPL4_LIB_SEQ is not set +CONFIG_SND_PCM=m +# CONFIG_SND_SBAWE_SEQ is not set +CONFIG_SND_SOC=m +CONFIG_SND_SOC_FSL_SSI=m +CONFIG_SND_SOC_I2C_AND_SPI=m +CONFIG_SND_TIMER=m +CONFIG_SOUND=m +CONFIG_SPAPR_TCE_IOMMU=y +CONFIG_SPI_PXA2XX_PCI=m +CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y +# CONFIG_SQUASHFS_DECOMP_SINGLE is not set +# CONFIG_SQUASHFS_FILE_CACHE is not set +CONFIG_SQUASHFS_FILE_DIRECT=y +CONFIG_SRAM=y +CONFIG_STACK_TRACER=y +CONFIG_STAGING=y +CONFIG_STANDALONE=y +# CONFIG_SUNRPC_DEBUG is not set +CONFIG_SWIOTLB=y +CONFIG_SYSCTL_SYSCALL=y +# CONFIG_SYS_HYPERVISOR is not set +CONFIG_TCG_IBMVTPM=m +CONFIG_TEST_KSTRTOX=m +CONFIG_TEST_STRING_HELPERS=m +CONFIG_TIGON3=m +CONFIG_TIMER_STATS=y +CONFIG_TWL4030_CORE=y +CONFIG_TWL6040_CORE=y +CONFIG_UDBG_RTAS_CONSOLE=y +CONFIG_UIO_AEC=m +CONFIG_UIO_CIF=m +CONFIG_UIO_DMEM_GENIRQ=m +CONFIG_UIO_MF624=m +CONFIG_UIO_NETX=m +CONFIG_UIO_PCI_GENERIC=m +CONFIG_UIO_PDRV_GENIRQ=m +CONFIG_UIO_SERCOS3=m +CONFIG_UNUSED_SYMBOLS=y +CONFIG_USB_ADUTUX=m +CONFIG_USB_ANNOUNCE_NEW_DEVICES=y +CONFIG_USB_APPLEDISPLAY=m +CONFIG_USB_C67X00_HCD=m +CONFIG_USB_CATC=m +CONFIG_USB_CHIPIDEA=m +CONFIG_USB_CYPRESS_CY7C63=m +CONFIG_USB_CYTHERM=m +CONFIG_USB_DWC3=m +# CONFIG_USB_DWC3_OMAP is not set +CONFIG_USB_DYNAMIC_MINORS=y +CONFIG_USB_EHCI_HCD_PLATFORM=y +CONFIG_USB_EHCI_HCD_PPC_OF=y +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_EHSET_TEST_FIXTURE=m +CONFIG_USB_EMI26=m +CONFIG_USB_EMI62=m +CONFIG_USB_EZUSB_FX2=m +CONFIG_USB_FOTG210_HCD=m +CONFIG_USB_FSL_USB2=m +CONFIG_USB_FTDI_ELAN=m +CONFIG_USB_FUSBH200_HCD=m +CONFIG_USB_GADGET=m +# CONFIG_USB_G_MULTI is not set +CONFIG_USB_HCD_BCMA=m +CONFIG_USB_HCD_SSB=m +CONFIG_USB_HSIC_USB3503=m +CONFIG_USB_IDMOUSE=m +CONFIG_USB_IOWARRIOR=m +CONFIG_USB_IPHETH=m +CONFIG_USB_ISIGHTFW=m +CONFIG_USB_ISP116X_HCD=m +CONFIG_USB_ISP1301=m +CONFIG_USB_ISP1362_HCD=m +CONFIG_USB_ISP1760_HCD=m +CONFIG_USB_KAWETH=m +CONFIG_USB_LCD=m +CONFIG_USB_LD=m +CONFIG_USB_LED=m +CONFIG_USB_LEGOTOWER=m +CONFIG_USB_MDC800=m +CONFIG_USB_MICROTEK=m +CONFIG_USB_MUSB_DSPS=m +CONFIG_USB_MUSB_HDRC=m +CONFIG_USB_MUSB_TUSB6010=m +CONFIG_USB_OHCI_HCD_PLATFORM=y +CONFIG_USB_OHCI_HCD_PPC_OF=y +CONFIG_USB_OHCI_HCD_PPC_OF_BE=y +CONFIG_USB_OXU210HP_HCD=m +CONFIG_USB_PEGASUS=m +CONFIG_USB_PRINTER=m +CONFIG_USB_R8A66597_HCD=m +CONFIG_USB_RCAR_PHY=m +CONFIG_USB_RIO500=m +CONFIG_USB_RTL8150=m +CONFIG_USB_RTL8152=m +CONFIG_USB_SERIAL=m +CONFIG_USB_SEVSEG=m +CONFIG_USB_SISUSBVGA=m +CONFIG_USB_SL811_HCD=m +CONFIG_USB_STORAGE=m +CONFIG_USB_STORAGE_ALAUDA=m +CONFIG_USB_STORAGE_CYPRESS_ATACB=m +CONFIG_USB_STORAGE_DATAFAB=m +CONFIG_USB_STORAGE_ENE_UB6250=m +CONFIG_USB_STORAGE_FREECOM=m +CONFIG_USB_STORAGE_ISD200=m +CONFIG_USB_STORAGE_JUMPSHOT=m +CONFIG_USB_STORAGE_KARMA=m +CONFIG_USB_STORAGE_ONETOUCH=m +CONFIG_USB_STORAGE_REALTEK=m +CONFIG_USB_STORAGE_SDDR09=m +CONFIG_USB_STORAGE_SDDR55=m +CONFIG_USB_STORAGE_USBAT=m +CONFIG_USB_SUPPORT=y +CONFIG_USB_TEST=m +CONFIG_USB_TMC=m +CONFIG_USB_TRANCEVIBRATOR=m +CONFIG_USB_UHCI_HCD=y +CONFIG_USB_USS720=m +CONFIG_USB_WUSB_CBAF=m +CONFIG_USB_YUREX=m +# CONFIG_VFIO_IOMMU_TYPE1 is not set +CONFIG_VGASTATE=m +CONFIG_VGA_CONSOLE=y +CONFIG_VIRTIO=m +CONFIG_VIRTIO_BALLOON=m +CONFIG_VIRTIO_BLK=m +CONFIG_VIRTIO_CONSOLE=m +CONFIG_VIRTIO_MMIO=m +CONFIG_VIRTIO_NET=m +CONFIG_VIRTIO_PCI=m +CONFIG_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_WIL6210=m +# CONFIG_WIMAX_GDM72XX_SDIO is not set +# CONFIG_XMON is not set +CONFIG_XZ_DEC_ARM=y +CONFIG_XZ_DEC_ARMTHUMB=y +CONFIG_XZ_DEC_IA64=y +CONFIG_XZ_DEC_SPARC=y +CONFIG_XZ_DEC_TEST=m +CONFIG_XZ_DEC_X86=y +CONFIG_ZONE_DMA_FLAG=1 --- linux-3.13.0.orig/debian.master/config/powerpc/config.flavour.powerpc-e500 +++ linux-3.13.0/debian.master/config/powerpc/config.flavour.powerpc-e500 @@ -0,0 +1,85 @@ +# +# Config options for config.flavour.powerpc-e500 automatically generated by splitconfig.pl +# +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_ARCH_PHYS_ADDR_T_64BIT=y +# CONFIG_ARCH_RANDOM is not set +# CONFIG_ATA_NONSTANDARD is not set +CONFIG_BSC9131_RDB=y +CONFIG_DEFAULT_UIMAGE=y +# CONFIG_EPAPR_BOOT is not set +CONFIG_FB_SYS_COPYAREA=m +CONFIG_FB_SYS_FILLRECT=m +CONFIG_FB_SYS_FOPS=m +CONFIG_FB_SYS_IMAGEBLIT=m +CONFIG_FB_UDL=m +CONFIG_FMAN_P1023=y +# CONFIG_FMAN_P3040_P4080_P5020 is not set +CONFIG_FORCE_MAX_ZONEORDER=11 +CONFIG_FSL_FMAN=y +# CONFIG_FSL_QMAN_FQ_LOOKUP is not set +# CONFIG_FSL_RIO is not set +CONFIG_FSL_ULI1575=y +CONFIG_GE_FPGA=y +CONFIG_GE_IMP3A=y +CONFIG_HAS_FSL_QBMAN=y +CONFIG_HAS_RAPIDIO=y +# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set +# CONFIG_HIBERNATION is not set +CONFIG_HUGETLB_PAGE=y +CONFIG_KERNEL_START=0xc0000000 +CONFIG_KSI8560=y +CONFIG_MMIO_NVRAM=y +CONFIG_MPC8536_DS=y +CONFIG_MPC8540_ADS=y +CONFIG_MPC8560_ADS=y +CONFIG_MPC85xx_CDS=y +CONFIG_MPC85xx_DS=y +CONFIG_MPC85xx_MDS=y +CONFIG_MPC85xx_RDB=y +# CONFIG_MPIC_U3_HT_IRQS is not set +# CONFIG_NEED_DMA_MAP_STATE is not set +# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set +# CONFIG_NONSTATIC_KERNEL is not set +CONFIG_NO_HZ_IDLE=y +CONFIG_NR_CPUS=8 +CONFIG_P1010_RDB=y +CONFIG_P1022_DS=y +CONFIG_P1022_RDK=y +CONFIG_P1023_RDS=y +CONFIG_PAGE_OFFSET=0xc0000000 +CONFIG_PHYS_ADDR_T_64BIT=y +# CONFIG_PPC64 is not set +CONFIG_PPC_85xx=y +# CONFIG_PPC_970_NAP is not set +# CONFIG_PPC_BOOK3S_32 is not set +# CONFIG_PPC_CELL is not set +CONFIG_PPC_DOORBELL=y +CONFIG_PPC_EPAPR_HV_PIC=y +CONFIG_PPC_I8259=y +# CONFIG_PPC_ICP_HV is not set +# CONFIG_PPC_ICP_NATIVE is not set +# CONFIG_PPC_ICS_RTAS is not set +CONFIG_PPC_INDIRECT_PCI=y +# CONFIG_PPC_MM_SLICES is not set +# CONFIG_PPC_MPC106 is not set +# CONFIG_PPC_P7_NAP is not set +# CONFIG_PPC_RTAS is not set +# CONFIG_PPC_WSP is not set +# CONFIG_PPC_XICS is not set +CONFIG_RCU_FANOUT=32 +# CONFIG_RCU_NOCB_CPU is not set +CONFIG_RTC_DRV_DS3232=m +CONFIG_SBC8548=y +CONFIG_SCSI_SRP_ATTRS=m +CONFIG_SOCRATES=y +CONFIG_STX_GP3=y +CONFIG_TICK_CPU_ACCOUNTING=y +CONFIG_TQM8540=y +CONFIG_TQM8541=y +CONFIG_TQM8548=y +CONFIG_TQM8555=y +CONFIG_TQM8560=y +CONFIG_USB_OTG=y +CONFIG_WORD_SIZE=32 +CONFIG_XES_MPC85xx=y --- linux-3.13.0.orig/debian.master/config/powerpc/config.flavour.powerpc-e500mc +++ linux-3.13.0/debian.master/config/powerpc/config.flavour.powerpc-e500mc @@ -0,0 +1,85 @@ +# +# Config options for config.flavour.powerpc-e500mc automatically generated by splitconfig.pl +# +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_ARCH_PHYS_ADDR_T_64BIT=y +# CONFIG_ARCH_RANDOM is not set +# CONFIG_ATA_NONSTANDARD is not set +# CONFIG_BSC9131_RDB is not set +CONFIG_DEFAULT_UIMAGE=y +# CONFIG_EPAPR_BOOT is not set +CONFIG_FB_SYS_COPYAREA=y +CONFIG_FB_SYS_FILLRECT=y +CONFIG_FB_SYS_FOPS=y +CONFIG_FB_SYS_IMAGEBLIT=y +CONFIG_FB_UDL=y +# CONFIG_FMAN_P1023 is not set +CONFIG_FMAN_P3040_P4080_P5020=y +CONFIG_FORCE_MAX_ZONEORDER=11 +CONFIG_FSL_FMAN=y +# CONFIG_FSL_QMAN_FQ_LOOKUP is not set +CONFIG_FSL_RIO=y +# CONFIG_FSL_ULI1575 is not set +# CONFIG_GE_FPGA is not set +# CONFIG_GE_IMP3A is not set +CONFIG_HAS_FSL_QBMAN=y +CONFIG_HAS_RAPIDIO=y +# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set +# CONFIG_HIBERNATION is not set +CONFIG_HUGETLB_PAGE=y +CONFIG_KERNEL_START=0xc0000000 +# CONFIG_KSI8560 is not set +# CONFIG_MMIO_NVRAM is not set +# CONFIG_MPC8536_DS is not set +# CONFIG_MPC8540_ADS is not set +# CONFIG_MPC8560_ADS is not set +# CONFIG_MPC85xx_CDS is not set +# CONFIG_MPC85xx_DS is not set +# CONFIG_MPC85xx_MDS is not set +# CONFIG_MPC85xx_RDB is not set +# CONFIG_MPIC_U3_HT_IRQS is not set +# CONFIG_NEED_DMA_MAP_STATE is not set +# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set +# CONFIG_NONSTATIC_KERNEL is not set +CONFIG_NO_HZ_IDLE=y +CONFIG_NR_CPUS=8 +# CONFIG_P1010_RDB is not set +# CONFIG_P1022_DS is not set +# CONFIG_P1022_RDK is not set +# CONFIG_P1023_RDS is not set +CONFIG_PAGE_OFFSET=0xc0000000 +CONFIG_PHYS_ADDR_T_64BIT=y +# CONFIG_PPC64 is not set +CONFIG_PPC_85xx=y +# CONFIG_PPC_970_NAP is not set +# CONFIG_PPC_BOOK3S_32 is not set +# CONFIG_PPC_CELL is not set +CONFIG_PPC_DOORBELL=y +CONFIG_PPC_EPAPR_HV_PIC=y +# CONFIG_PPC_I8259 is not set +# CONFIG_PPC_ICP_HV is not set +# CONFIG_PPC_ICP_NATIVE is not set +# CONFIG_PPC_ICS_RTAS is not set +CONFIG_PPC_INDIRECT_PCI=y +# CONFIG_PPC_MM_SLICES is not set +# CONFIG_PPC_MPC106 is not set +# CONFIG_PPC_P7_NAP is not set +# CONFIG_PPC_RTAS is not set +# CONFIG_PPC_WSP is not set +# CONFIG_PPC_XICS is not set +CONFIG_RCU_FANOUT=32 +# CONFIG_RCU_NOCB_CPU is not set +CONFIG_RTC_DRV_DS3232=y +# CONFIG_SBC8548 is not set +CONFIG_SCSI_SRP_ATTRS=m +# CONFIG_SOCRATES is not set +# CONFIG_STX_GP3 is not set +CONFIG_TICK_CPU_ACCOUNTING=y +# CONFIG_TQM8540 is not set +# CONFIG_TQM8541 is not set +# CONFIG_TQM8548 is not set +# CONFIG_TQM8555 is not set +# CONFIG_TQM8560 is not set +CONFIG_USB_OTG=y +CONFIG_WORD_SIZE=32 +# CONFIG_XES_MPC85xx is not set --- linux-3.13.0.orig/debian.master/config/powerpc/config.flavour.powerpc-smp +++ linux-3.13.0/debian.master/config/powerpc/config.flavour.powerpc-smp @@ -0,0 +1,59 @@ +# +# Config options for config.flavour.powerpc-smp automatically generated by splitconfig.pl +# +# CONFIG_ARCH_DMA_ADDR_T_64BIT is not set +# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set +# CONFIG_ARCH_RANDOM is not set +# CONFIG_ATA_NONSTANDARD is not set +# CONFIG_DEFAULT_UIMAGE is not set +# CONFIG_EPAPR_BOOT is not set +CONFIG_FB_SYS_COPYAREA=m +CONFIG_FB_SYS_FILLRECT=m +CONFIG_FB_SYS_FOPS=m +CONFIG_FB_SYS_IMAGEBLIT=m +CONFIG_FB_UDL=m +CONFIG_FORCE_MAX_ZONEORDER=11 +# CONFIG_FSL_FMAN is not set +# CONFIG_FSL_ULI1575 is not set +# CONFIG_GE_FPGA is not set +# CONFIG_HAS_FSL_QBMAN is not set +# CONFIG_HAS_RAPIDIO is not set +# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set +CONFIG_HIBERNATION=y +# CONFIG_HUGETLB_PAGE is not set +CONFIG_KERNEL_START=0xc0000000 +# CONFIG_MMIO_NVRAM is not set +# CONFIG_MPIC_U3_HT_IRQS is not set +# CONFIG_NEED_DMA_MAP_STATE is not set +# CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set +# CONFIG_NONSTATIC_KERNEL is not set +CONFIG_NO_HZ_IDLE=y +CONFIG_NR_CPUS=4 +CONFIG_PAGE_OFFSET=0xc0000000 +# CONFIG_PHYS_ADDR_T_64BIT is not set +# CONFIG_PPC64 is not set +# CONFIG_PPC_85xx is not set +# CONFIG_PPC_970_NAP is not set +CONFIG_PPC_BOOK3S_32=y +# CONFIG_PPC_CELL is not set +# CONFIG_PPC_DOORBELL is not set +# CONFIG_PPC_EPAPR_HV_PIC is not set +CONFIG_PPC_I8259=y +# CONFIG_PPC_ICP_HV is not set +# CONFIG_PPC_ICP_NATIVE is not set +# CONFIG_PPC_ICS_RTAS is not set +CONFIG_PPC_INDIRECT_PCI=y +# CONFIG_PPC_MM_SLICES is not set +CONFIG_PPC_MPC106=y +CONFIG_PPC_OF_BOOT_TRAMPOLINE=y +# CONFIG_PPC_P7_NAP is not set +CONFIG_PPC_RTAS=y +# CONFIG_PPC_WSP is not set +# CONFIG_PPC_XICS is not set +CONFIG_RCU_FANOUT=32 +# CONFIG_RCU_NOCB_CPU is not set +CONFIG_RTC_DRV_DS3232=m +CONFIG_SCSI_SRP_ATTRS=m +CONFIG_TICK_CPU_ACCOUNTING=y +# CONFIG_USB_OTG is not set +CONFIG_WORD_SIZE=32 --- linux-3.13.0.orig/debian.master/config/powerpc/config.flavour.powerpc64-emb +++ linux-3.13.0/debian.master/config/powerpc/config.flavour.powerpc64-emb @@ -0,0 +1,66 @@ +# +# Config options for config.flavour.powerpc64-emb automatically generated by splitconfig.pl +# +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_ARCH_PHYS_ADDR_T_64BIT=y +# CONFIG_ARCH_RANDOM is not set +# CONFIG_ATA_NONSTANDARD is not set +CONFIG_DEFAULT_UIMAGE=y +CONFIG_EPAPR_BOOT=y +CONFIG_FB_SYS_COPYAREA=y +CONFIG_FB_SYS_FILLRECT=y +CONFIG_FB_SYS_FOPS=y +CONFIG_FB_SYS_IMAGEBLIT=y +CONFIG_FB_UDL=y +CONFIG_FORCE_MAX_ZONEORDER=13 +# CONFIG_FSL_FMAN is not set +CONFIG_FSL_QMAN_FQ_LOOKUP=y +CONFIG_FSL_RIO=y +# CONFIG_FSL_ULI1575 is not set +# CONFIG_GE_FPGA is not set +CONFIG_HAS_FSL_QBMAN=y +CONFIG_HAS_RAPIDIO=y +CONFIG_HAVE_SETUP_PER_CPU_AREA=y +# CONFIG_HIBERNATION is not set +CONFIG_HUGETLB_PAGE=y +CONFIG_KERNEL_START=0xc000000000000000 +# CONFIG_MMIO_NVRAM is not set +# CONFIG_MPIC_U3_HT_IRQS is not set +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +CONFIG_NONSTATIC_KERNEL=y +CONFIG_NO_HZ_IDLE=y +CONFIG_NR_CPUS=8 +# CONFIG_NUMA is not set +CONFIG_PAGE_OFFSET=0xc000000000000000 +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_PPC64=y +# CONFIG_PPC_970_NAP is not set +CONFIG_PPC_BOOK3E_64=y +# CONFIG_PPC_BOOK3S_64 is not set +# CONFIG_PPC_CELL is not set +CONFIG_PPC_DOORBELL=y +CONFIG_PPC_EPAPR_HV_PIC=y +# CONFIG_PPC_HAS_HASH_64K is not set +# CONFIG_PPC_I8259 is not set +# CONFIG_PPC_ICP_HV is not set +CONFIG_PPC_ICP_NATIVE=y +# CONFIG_PPC_ICS_RTAS is not set +CONFIG_PPC_INDIRECT_PCI=y +# CONFIG_PPC_MM_SLICES is not set +# CONFIG_PPC_MPC106 is not set +# CONFIG_PPC_OF_BOOT_TRAMPOLINE is not set +# CONFIG_PPC_P7_NAP is not set +# CONFIG_PPC_RTAS is not set +CONFIG_PPC_WSP=y +CONFIG_PPC_XICS=y +CONFIG_RCU_FANOUT=32 +# CONFIG_RCU_NOCB_CPU is not set +CONFIG_RTC_DRV_DS3232=y +# CONFIG_SCHED_SMT is not set +CONFIG_SCSI_SRP_ATTRS=m +# CONFIG_SPARSEMEM_MANUAL is not set +# CONFIG_TICK_CPU_ACCOUNTING is not set +# CONFIG_U3_DART is not set +CONFIG_USB_OTG=y +CONFIG_WORD_SIZE=64 --- linux-3.13.0.orig/debian.master/config/powerpc/config.flavour.powerpc64-smp +++ linux-3.13.0/debian.master/config/powerpc/config.flavour.powerpc64-smp @@ -0,0 +1,63 @@ +# +# Config options for config.flavour.powerpc64-smp automatically generated by splitconfig.pl +# +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_ARCH_PHYS_ADDR_T_64BIT=y +CONFIG_ARCH_RANDOM=y +CONFIG_ATA_NONSTANDARD=y +# CONFIG_DEFAULT_UIMAGE is not set +CONFIG_EPAPR_BOOT=y +CONFIG_FB_SYS_COPYAREA=y +CONFIG_FB_SYS_FILLRECT=y +CONFIG_FB_SYS_FOPS=y +CONFIG_FB_SYS_IMAGEBLIT=y +CONFIG_FB_UDL=m +CONFIG_FORCE_MAX_ZONEORDER=13 +# CONFIG_FSL_FMAN is not set +# CONFIG_FSL_ULI1575 is not set +# CONFIG_GE_FPGA is not set +# CONFIG_HAS_FSL_QBMAN is not set +# CONFIG_HAS_RAPIDIO is not set +CONFIG_HAVE_SETUP_PER_CPU_AREA=y +CONFIG_HIBERNATION=y +CONFIG_HUGETLB_PAGE=y +CONFIG_KERNEL_START=0xc000000000000000 +CONFIG_MMIO_NVRAM=y +CONFIG_MPIC_U3_HT_IRQS=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +CONFIG_NONSTATIC_KERNEL=y +# CONFIG_NO_HZ_IDLE is not set +CONFIG_NR_CPUS=1024 +CONFIG_NUMA=y +CONFIG_PAGE_OFFSET=0xc000000000000000 +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_PPC64=y +CONFIG_PPC_970_NAP=y +# CONFIG_PPC_BOOK3E_64 is not set +CONFIG_PPC_BOOK3S_64=y +CONFIG_PPC_CELL=y +CONFIG_PPC_DOORBELL=y +# CONFIG_PPC_EPAPR_HV_PIC is not set +CONFIG_PPC_HAS_HASH_64K=y +CONFIG_PPC_I8259=y +CONFIG_PPC_ICP_HV=y +CONFIG_PPC_ICP_NATIVE=y +CONFIG_PPC_ICS_RTAS=y +# CONFIG_PPC_INDIRECT_PCI is not set +CONFIG_PPC_MM_SLICES=y +# CONFIG_PPC_MPC106 is not set +CONFIG_PPC_OF_BOOT_TRAMPOLINE=y +CONFIG_PPC_P7_NAP=y +CONFIG_PPC_RTAS=y +# CONFIG_PPC_WSP is not set +CONFIG_PPC_XICS=y +CONFIG_RCU_FANOUT=64 +CONFIG_RCU_NOCB_CPU=y +CONFIG_RTC_DRV_DS3232=m +CONFIG_SCHED_SMT=y +CONFIG_SCSI_SRP_ATTRS=y +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_U3_DART=y +# CONFIG_USB_OTG is not set +CONFIG_WORD_SIZE=64 --- linux-3.13.0.orig/debian.master/config/ppc64el/config.common.ppc64el +++ linux-3.13.0/debian.master/config/ppc64el/config.common.ppc64el @@ -0,0 +1,370 @@ +# +# Config options for config.common.ppc64el automatically generated by splitconfig.pl +# +CONFIG_64BIT=y +# CONFIG_AHCI_IMX is not set +CONFIG_AIC79XX_RESET_DELAY_MS=5000 +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set +CONFIG_ARCH_PHYS_ADDR_T_64BIT=y +CONFIG_ARCH_RANDOM=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_ARCH_SPARSEMEM_DEFAULT=y +# CONFIG_ASYNC_TX_DMA is not set +# CONFIG_ATA_NONSTANDARD is not set +CONFIG_ATA_PIIX=m +# CONFIG_ATOMIC64_SELFTEST is not set +CONFIG_AUDIT_ARCH=y +CONFIG_BCH=m +CONFIG_CODE_PATCHING_SELFTEST=y +CONFIG_COMPACTION=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +# CONFIG_CPU_BIG_ENDIAN is not set +CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set +CONFIG_CPU_IDLE=y +CONFIG_CPU_LITTLE_ENDIAN=y +CONFIG_CRASH_DUMP=y +# CONFIG_CRYPTO_DEV_NX is not set +CONFIG_DEBUG_MEMORY_INIT=y +CONFIG_DEFAULT_CFQ=y +# CONFIG_DEFAULT_DEADLINE is not set +CONFIG_DEFAULT_IOSCHED="cfq" +CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 +# CONFIG_DEFAULT_UIMAGE is not set +CONFIG_EPAPR_BOOT=y +# CONFIG_EXYNOS_VIDEO is not set +# CONFIG_EZX_PCAP is not set +CONFIG_FB_ATY128=m +CONFIG_FB_BACKLIGHT=y +# CONFIG_FB_BOOT_VESA_SUPPORT is not set +CONFIG_FB_DDC=m +CONFIG_FB_IBM_GXT4500=y +CONFIG_FB_MACMODES=y +CONFIG_FB_RADEON=m +CONFIG_FB_SVGALIB=m +CONFIG_FB_SYS_COPYAREA=m +CONFIG_FB_SYS_FILLRECT=m +CONFIG_FB_SYS_FOPS=m +CONFIG_FB_SYS_IMAGEBLIT=m +CONFIG_FB_UDL=m +CONFIG_FB_VOODOO1=m +# CONFIG_FMAN_P1023 is not set +CONFIG_FMAN_P3040_P4080_P5020=y +# CONFIG_FONTS is not set +CONFIG_FORCE_MAX_ZONEORDER=9 +CONFIG_FRAME_WARN=2048 +CONFIG_FSL_FMAN=y +# CONFIG_FSL_ULI1575 is not set +CONFIG_FUNCTION_TRACER=y +CONFIG_GENERIC_CSUM=y +# CONFIG_GENERIC_PHY is not set +# CONFIG_GENERIC_TBSYNC is not set +# CONFIG_GE_FPGA is not set +CONFIG_GPIO_GENERIC=m +# CONFIG_HAS_FSL_QBMAN is not set +# CONFIG_HAS_RAPIDIO is not set +CONFIG_HAVE_64BIT_ALIGNED_ACCESS=y +# CONFIG_HAVE_AOUT is not set +CONFIG_HAVE_BOOTMEM_INFO_NODE=y +# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set +CONFIG_HAVE_SETUP_PER_CPU_AREA=y +# CONFIG_HIBERNATION is not set +# CONFIG_HOTPLUG_PCI_CPCI is not set +# CONFIG_HOTPLUG_PCI_SHPC is not set +CONFIG_HUGETLB_PAGE=y +CONFIG_HVCS=m +# CONFIG_HVC_OLD_HVSI is not set +# CONFIG_HVC_UDBG is not set +CONFIG_HW_RANDOM_POWERNV=m +CONFIG_HZ=100 +CONFIG_HZ_100=y +# CONFIG_HZ_1000 is not set +# CONFIG_HZ_250 is not set +CONFIG_I2C_ALGOBIT=m +CONFIG_IBMEBUS=y +CONFIG_IBMVETH=y +CONFIG_IDE=y +CONFIG_IKCONFIG=y +CONFIG_IMA=y +# CONFIG_INFINIBAND_AMSO1100 is not set +CONFIG_INPUT_IDEAPAD_SLIDEBAR=m +CONFIG_IOMMU_SUPPORT=y +CONFIG_IRQ_ALL_CPUS=y +CONFIG_IRQ_DOMAIN_DEBUG=y +# CONFIG_IRQ_FORCED_THREADING_DEFAULT is not set +CONFIG_KERNEL_START=0xc000000000000000 +CONFIG_KSM=y +# CONFIG_KVM_BOOK3S_64 is not set +CONFIG_LEDS_TRIGGER_HEARTBEAT=m +CONFIG_LIBERTAS_MESH=y +CONFIG_LOG_BUF_SHIFT=17 +CONFIG_LPARCFG=y +# CONFIG_MACINTOSH_DRIVERS is not set +CONFIG_MEMORY_HOTREMOVE=y +# CONFIG_MFD_TI_AM335X_TSCADC is not set +# CONFIG_MFD_TMIO is not set +CONFIG_MII=m +CONFIG_MMC_BLOCK=m +CONFIG_MMC_SDHCI=m +CONFIG_MMC_SDHCI_PLTFM=m +# CONFIG_MMIO_NVRAM is not set +# CONFIG_MPIC_MSGR is not set +# CONFIG_MPIC_U3_HT_IRQS is not set +CONFIG_MTD=m +CONFIG_MTD_BLKDEVS=m +CONFIG_MTD_BLOCK=m +CONFIG_MTD_CMDLINE_PARTS=m +CONFIG_MTD_NAND=m +CONFIG_MTD_NAND_BCH=m +CONFIG_MTD_NAND_ECC=m +CONFIG_MTD_NAND_IDS=m +CONFIG_MTD_OF_PARTS=m +CONFIG_MTD_SM_COMMON=m +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +# CONFIG_NET_TULIP is not set +CONFIG_NODES_SHIFT=8 +CONFIG_NONSTATIC_KERNEL=y +CONFIG_NOP_USB_XCEIV=m +# CONFIG_NO_HZ_FULL is not set +CONFIG_NO_HZ_IDLE=y +CONFIG_NR_CPUS=2048 +CONFIG_NUMA=y +CONFIG_PAGE_OFFSET=0xc000000000000000 +CONFIG_PARIDE_EPATC8=y +CONFIG_PATA_SIS=m +# CONFIG_PCCARD is not set +# CONFIG_PCIEPORTBUS is not set +CONFIG_PCI_SYSCALL=y +# CONFIG_PERCPU_TEST is not set +# CONFIG_PERSISTENT_KEYRINGS is not set +CONFIG_PHYSICAL_START=0x00000000 +CONFIG_PHYS_ADDR_T_64BIT=y +# CONFIG_PHY_EXYNOS_DP_VIDEO is not set +# CONFIG_PMIC_ADP5520 is not set +# CONFIG_PMIC_DA903X is not set +# CONFIG_PM_DEBUG is not set +# CONFIG_PM_RUNTIME is not set +# CONFIG_PM_WAKELOCKS is not set +CONFIG_POWER7_CPU=y +CONFIG_PPC64=y +# CONFIG_PPC_4K_PAGES is not set +CONFIG_PPC_64K_PAGES=y +# CONFIG_PPC_970_NAP is not set +# CONFIG_PPC_BOOK3E_64 is not set +CONFIG_PPC_BOOK3S_64=y +# CONFIG_PPC_CELL is not set +CONFIG_PPC_DENORMALISATION=y +# CONFIG_PPC_DISABLE_WERROR is not set +CONFIG_PPC_DOORBELL=y +# CONFIG_PPC_EPAPR_HV_BYTECHAN is not set +# CONFIG_PPC_EPAPR_HV_PIC is not set +CONFIG_PPC_HAS_HASH_64K=y +CONFIG_PPC_I8259=y +CONFIG_PPC_ICP_HV=y +CONFIG_PPC_ICP_NATIVE=y +# CONFIG_PPC_ICSWX is not set +CONFIG_PPC_ICS_RTAS=y +# CONFIG_PPC_INDIRECT_PCI is not set +# CONFIG_PPC_MAPLE is not set +CONFIG_PPC_MM_SLICES=y +# CONFIG_PPC_MPC106 is not set +CONFIG_PPC_OF_BOOT_TRAMPOLINE=y +CONFIG_PPC_P7_NAP=y +# CONFIG_PPC_PASEMI is not set +# CONFIG_PPC_PMAC is not set +# CONFIG_PPC_PS3 is not set +CONFIG_PPC_RTAS=y +CONFIG_PPC_SMLPAR=y +CONFIG_PPC_SPLPAR=y +# CONFIG_PPC_WSP is not set +CONFIG_PPC_XICS=y +CONFIG_PPS=y +# CONFIG_PPS_CLIENT_GPIO is not set +# CONFIG_PPS_CLIENT_LDISC is not set +# CONFIG_PPS_CLIENT_PARPORT is not set +# CONFIG_PREEMPT is not set +# CONFIG_PREEMPT_RCU is not set +CONFIG_PREEMPT_VOLUNTARY=y +CONFIG_PROBE_EVENTS=y +CONFIG_PSERIES_ENERGY=y +# CONFIG_PSTORE_CONSOLE is not set +CONFIG_PSTORE_RAM=m +CONFIG_PTP_1588_CLOCK=y +CONFIG_RAPIDIO_CPS_GEN2=m +CONFIG_RAPIDIO_CPS_XX=m +CONFIG_RAPIDIO_TSI568=m +CONFIG_RAPIDIO_TSI57X=m +# CONFIG_RBTREE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=21 +CONFIG_RCU_FANOUT=64 +# CONFIG_RCU_FAST_NO_HZ is not set +# CONFIG_RCU_NOCB_CPU is not set +# CONFIG_RCU_USER_QS is not set +CONFIG_REED_SOLOMON=m +CONFIG_REGULATOR_FIXED_VOLTAGE=m +# CONFIG_REGULATOR_S2MPS11 is not set +CONFIG_REISERFS_FS=y +# CONFIG_RFKILL is not set +CONFIG_RT2800USB_UNKNOWN=y +CONFIG_RT2X00_LIB_DEBUGFS=y +CONFIG_RTAS_FLASH=m +CONFIG_RTC_DRV_CMOS=m +CONFIG_RTC_DRV_DS3232=m +# CONFIG_SAMSUNG_USB2PHY is not set +# CONFIG_SAMSUNG_USB3PHY is not set +CONFIG_SATA_AHCI_PLATFORM=m +# CONFIG_SATA_HIGHBANK is not set +CONFIG_SATA_SVW=m +# CONFIG_SCHED_AUTOGROUP is not set +CONFIG_SCHED_SMT=y +CONFIG_SCSI_SPI_ATTRS=y +CONFIG_SCSI_SRP_ATTRS=y +# CONFIG_SENSORS_SCH56XX_COMMON is not set +CONFIG_SERIAL_8250_PCI=y +# CONFIG_SERIAL_FSL_LPUART is not set +CONFIG_SERIAL_OF_PLATFORM=y +# CONFIG_SERIO_ALTERA_PS2 is not set +# CONFIG_SERIO_APBPS2 is not set +# CONFIG_SERIO_ARC_PS2 is not set +CONFIG_SERIO_I8042=y +# CONFIG_SERIO_OLPC_APSP is not set +# CONFIG_SERIO_PARKBD is not set +# CONFIG_SERIO_PCIPS2 is not set +# CONFIG_SERIO_PS2MULT is not set +# CONFIG_SERIO_RAW is not set +# CONFIG_SERIO_XILINX_XPS_PS2 is not set +# CONFIG_SIMPLE_GPIO is not set +# CONFIG_SOUND is not set +# CONFIG_SPAPR_TCE_IOMMU is not set +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPI_PXA2XX_PCI=m +# CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU is not set +CONFIG_SQUASHFS_DECOMP_SINGLE=y +CONFIG_SQUASHFS_FILE_CACHE=y +# CONFIG_SQUASHFS_FILE_DIRECT is not set +# CONFIG_SRAM is not set +CONFIG_STACK_TRACER=y +# CONFIG_STAGING is not set +CONFIG_STANDALONE=y +# CONFIG_SUNRPC_DEBUG is not set +# CONFIG_SWIOTLB is not set +# CONFIG_SYSCTL_SYSCALL is not set +# CONFIG_SYS_HYPERVISOR is not set +CONFIG_TCG_IBMVTPM=y +# CONFIG_TEST_KSTRTOX is not set +# CONFIG_TEST_STRING_HELPERS is not set +# CONFIG_TICK_CPU_ACCOUNTING is not set +CONFIG_TIGON3=y +# CONFIG_TIMER_STATS is not set +CONFIG_TRANSPARENT_HUGEPAGE=y +# CONFIG_TWL4030_CORE is not set +# CONFIG_TWL6040_CORE is not set +# CONFIG_U3_DART is not set +# CONFIG_UDBG_RTAS_CONSOLE is not set +# CONFIG_UIO_AEC is not set +# CONFIG_UIO_CIF is not set +# CONFIG_UIO_DMEM_GENIRQ is not set +# CONFIG_UIO_MF624 is not set +# CONFIG_UIO_NETX is not set +# CONFIG_UIO_PCI_GENERIC is not set +# CONFIG_UIO_PDRV_GENIRQ is not set +# CONFIG_UIO_SERCOS3 is not set +# CONFIG_UNUSED_SYMBOLS is not set +# CONFIG_USB_ADUTUX is not set +# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set +# CONFIG_USB_APPLEDISPLAY is not set +# CONFIG_USB_C67X00_HCD is not set +# CONFIG_USB_CATC is not set +# CONFIG_USB_CHIPIDEA is not set +# CONFIG_USB_CYPRESS_CY7C63 is not set +# CONFIG_USB_CYTHERM is not set +# CONFIG_USB_DWC3 is not set +# CONFIG_USB_DYNAMIC_MINORS is not set +# CONFIG_USB_EHCI_HCD_PLATFORM is not set +# CONFIG_USB_EHCI_HCD_PPC_OF is not set +# CONFIG_USB_EHCI_ROOT_HUB_TT is not set +# CONFIG_USB_EHSET_TEST_FIXTURE is not set +# CONFIG_USB_EMI26 is not set +# CONFIG_USB_EMI62 is not set +# CONFIG_USB_EZUSB_FX2 is not set +# CONFIG_USB_FOTG210_HCD is not set +# CONFIG_USB_FTDI_ELAN is not set +# CONFIG_USB_FUSBH200_HCD is not set +# CONFIG_USB_GADGET is not set +# CONFIG_USB_HCD_BCMA is not set +# CONFIG_USB_HCD_SSB is not set +# CONFIG_USB_HSIC_USB3503 is not set +# CONFIG_USB_IDMOUSE is not set +# CONFIG_USB_IOWARRIOR is not set +# CONFIG_USB_IPHETH is not set +# CONFIG_USB_ISIGHTFW is not set +# CONFIG_USB_ISP116X_HCD is not set +# CONFIG_USB_ISP1301 is not set +# CONFIG_USB_ISP1362_HCD is not set +# CONFIG_USB_ISP1760_HCD is not set +# CONFIG_USB_KAWETH is not set +# CONFIG_USB_LCD is not set +# CONFIG_USB_LD is not set +# CONFIG_USB_LED is not set +# CONFIG_USB_LEGOTOWER is not set +# CONFIG_USB_MDC800 is not set +# CONFIG_USB_MICROTEK is not set +# CONFIG_USB_OHCI_HCD_PLATFORM is not set +# CONFIG_USB_OHCI_HCD_PPC_OF is not set +# CONFIG_USB_OHCI_HCD_PPC_OF_BE is not set +# CONFIG_USB_OXU210HP_HCD is not set +# CONFIG_USB_PEGASUS is not set +# CONFIG_USB_PRINTER is not set +# CONFIG_USB_R8A66597_HCD is not set +# CONFIG_USB_RCAR_PHY is not set +# CONFIG_USB_RIO500 is not set +# CONFIG_USB_RTL8150 is not set +# CONFIG_USB_RTL8152 is not set +# CONFIG_USB_SERIAL is not set +# CONFIG_USB_SEVSEG is not set +# CONFIG_USB_SISUSBVGA is not set +# CONFIG_USB_SL811_HCD is not set +CONFIG_USB_STORAGE=m +# CONFIG_USB_STORAGE_ALAUDA is not set +# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set +# CONFIG_USB_STORAGE_DATAFAB is not set +# CONFIG_USB_STORAGE_ENE_UB6250 is not set +# CONFIG_USB_STORAGE_FREECOM is not set +# CONFIG_USB_STORAGE_ISD200 is not set +# CONFIG_USB_STORAGE_JUMPSHOT is not set +# CONFIG_USB_STORAGE_KARMA is not set +# CONFIG_USB_STORAGE_ONETOUCH is not set +# CONFIG_USB_STORAGE_REALTEK is not set +# CONFIG_USB_STORAGE_SDDR09 is not set +# CONFIG_USB_STORAGE_SDDR55 is not set +# CONFIG_USB_STORAGE_USBAT is not set +CONFIG_USB_SUPPORT=y +# CONFIG_USB_TEST is not set +# CONFIG_USB_TMC is not set +# CONFIG_USB_TRANCEVIBRATOR is not set +# CONFIG_USB_UHCI_HCD is not set +# CONFIG_USB_USS720 is not set +# CONFIG_USB_WUSB_CBAF is not set +# CONFIG_USB_YUREX is not set +CONFIG_VGASTATE=m +# CONFIG_VGA_CONSOLE is not set +CONFIG_VIRTIO=y +CONFIG_VIRTIO_BALLOON=y +CONFIG_VIRTIO_BLK=y +CONFIG_VIRTIO_CONSOLE=y +# CONFIG_VIRTIO_MMIO is not set +CONFIG_VIRTIO_NET=y +CONFIG_VIRTIO_PCI=y +# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set +CONFIG_WIL6210=m +CONFIG_WORD_SIZE=64 +CONFIG_XMON=y +# CONFIG_XZ_DEC_ARM is not set +# CONFIG_XZ_DEC_ARMTHUMB is not set +# CONFIG_XZ_DEC_IA64 is not set +# CONFIG_XZ_DEC_SPARC is not set +# CONFIG_XZ_DEC_TEST is not set +# CONFIG_XZ_DEC_X86 is not set +CONFIG_ZONE_DMA_FLAG=1 --- linux-3.13.0.orig/debian.master/config/ppc64el/config.flavour.generic +++ linux-3.13.0/debian.master/config/ppc64el/config.flavour.generic @@ -0,0 +1,3 @@ +# +# Config options for config.flavour.generic automatically generated by splitconfig.pl +# --- linux-3.13.0.orig/debian.master/config/x32/config.common.x32 +++ linux-3.13.0/debian.master/config/x32/config.common.x32 @@ -0,0 +1 @@ +# nothing here yet --- linux-3.13.0.orig/debian.master/config/x32/config.flavour.generic +++ linux-3.13.0/debian.master/config/x32/config.flavour.generic @@ -0,0 +1 @@ +# nothing here yet --- linux-3.13.0.orig/debian.master/control +++ linux-3.13.0/debian.master/control @@ -0,0 +1,975 @@ +Source: linux +Section: devel +Priority: optional +Maintainer: Ubuntu Kernel Team +Standards-Version: 3.9.4.0 +Build-Depends: debhelper (>= 5), cpio, module-init-tools, kernel-wedge (>= 2.24ubuntu1), makedumpfile [amd64 i386], libelf-dev, libnewt-dev, libiberty-dev, rsync, libdw-dev, libpci-dev, dpkg (>= 1.16.0~ubuntu4), pkg-config, flex, bison, libunwind8-dev, openssl, libaudit-dev, bc, python-dev, gawk, device-tree-compiler [powerpc], u-boot-tools [powerpc], libc6-dev-ppc64 [powerpc] +Build-Depends-Indep: xmlto, docbook-utils, ghostscript, transfig, bzip2, sharutils, asciidoc +Vcs-Git: http://kernel.ubuntu.com/git-repos/ubuntu/ubuntu-trusty.git +XS-Testsuite: autopkgtest +#XS-Testsuite-Depends: gcc-4.7 binutils + +Package: linux-source-3.13.0 +Architecture: all +Section: devel +Priority: optional +Provides: linux-source, linux-source-3 +Depends: ${misc:Depends}, binutils, bzip2, coreutils | fileutils (>= 4.0) +Recommends: libc-dev, gcc, make +Suggests: libncurses-dev | ncurses-dev, kernel-package, libqt3-dev +Description: Linux kernel source for version 3.13.0 with Ubuntu patches + This package provides the source code for the Linux kernel version + 3.13.0. + . + This package is mainly meant for other packages to use, in order to build + custom flavours. + . + If you wish to use this package to create a custom Linux kernel, then it + is suggested that you investigate the package kernel-package, which has + been designed to ease the task of creating kernel image packages. + . + If you are simply trying to build third-party modules for your kernel, + you do not want this package. Install the appropriate linux-headers + package instead. + +Package: linux-doc +Architecture: all +Section: doc +Priority: optional +Depends: ${misc:Depends} +Conflicts: linux-doc-3 +Replaces: linux-doc-3 +Description: Linux kernel specific documentation for version 3.13.0 + This package provides the various documents in the 3.13.0 kernel + Documentation/ subdirectory. These document kernel subsystems, APIs, device + drivers, and so on. See + /usr/share/doc/linux-doc/00-INDEX for a list of what is + contained in each file. + +Package: linux-headers-3.13.0-29 +Architecture: all +Multi-Arch: foreign +Section: devel +Priority: optional +Depends: ${misc:Depends}, coreutils | fileutils (>= 4.0) +Description: Header files related to Linux kernel version 3.13.0 + This package provides kernel header files for version 3.13.0, for sites + that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details + +Package: linux-libc-dev +Architecture: i386 amd64 armhf arm64 x32 powerpc ppc64el +Depends: ${misc:Depends} +Conflicts: libc6-dev (<< 2.3.2.ds1-6), libc6.1-dev (<< 2.3.2.ds1-6), dvb-dev (<< 1.0.1-6), amd64-libs-dev (<= 1.1), linux-kernel-headers +Replaces: libc6-dev (<< 2.3.2.ds1-6), libc6.1-dev (<< 2.3.2.ds1-6), dvb-dev (<< 1.0.1-6), linux-kernel-headers, libdrm-dev +Provides: linux-kernel-headers +Multi-Arch: same +Description: Linux Kernel Headers for development + This package provides headers from the Linux kernel. These headers + are used by the installed headers for GNU glibc and other system + libraries. They are NOT meant to be used to build third-party modules for + your kernel. Use linux-headers-* packages for that. + +Package: linux-tools-common +Architecture: all +Multi-Arch: foreign +Section: kernel +Priority: optional +Depends: ${misc:Depends} +Replaces: linux-tools (<= 2.6.32-16.25) +Description: Linux kernel version specific tools for version 3.13.0 + This package provides the architecture independent parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version PGKVER. + +Package: linux-tools-3.13.0-29 +Architecture: i386 amd64 armhf arm64 powerpc ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-tools-common +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + You probabally want to install linux-tools-3.13.0-29-. + +Package: linux-cloud-tools-common +Architecture: all +Multi-Arch: foreign +Section: kernel +Priority: optional +Breaks: linux-tools-common (<< 3.13.0-8.28), hv-kvp-daemon-init (<< 3.13) +Replaces: linux-tools-common (<< 3.13.0-8.28), hv-kvp-daemon-init (<< 3.13) +Depends: ${misc:Depends} +Description: Linux kernel version specific cloud tools for version 3.13.0 + This package provides the architecture independent parts for kernel + version locked tools for cloud tools for version PGKVER. + +Package: linux-cloud-tools-3.13.0-29 +Architecture: i386 amd64 armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-cloud-tools-common +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud tools for version 3.13.0-29 on + 64 bit x86. + You probabally want to install linux-cloud-tools-3.13.0-29-. + + +Package: linux-image-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, kvm-api-4, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-pc [i386 amd64 x32] | grub-efi-amd64 [amd64 x32] | grub-efi-ia32 [i386 amd64 x32] | grub [i386 amd64 x32] | lilo (>= 19.1) [i386 amd64 x32] | flash-kernel [armhf arm64] | grub-ieee1275 [ppc64el] +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-generic +Description: Linux kernel image for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel image for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Generic processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-generic meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-generic, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Generic processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-generic meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64 bit x86 SMP + This package provides kernel header files for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-generic-dbgsym +Architecture: i386 amd64 armhf arm64 ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP + This package provides a kernel debug image for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-generic +XC-Package-Type: udeb +Section: debian-installer +Architecture: i386 amd64 armhf arm64 ppc64el +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-generic-lpae +Architecture: armhf +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, kvm-api-4, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: flash-kernel [armhf] +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-generic-lpae +Description: Linux kernel image for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel image for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Generic LPAE processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-generic-lpae meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-generic-lpae +Architecture: armhf +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-generic-lpae, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Generic LPAE processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-generic-lpae meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-generic-lpae +Architecture: armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64 bit x86 SMP + This package provides kernel header files for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-generic-lpae-dbgsym +Architecture: armhf +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP + This package provides a kernel debug image for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-generic-lpae +Architecture: armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-generic-lpae +Architecture: armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-generic-lpae +XC-Package-Type: udeb +Section: debian-installer +Architecture: armhf +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, kvm-api-4, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-pc [i386 amd64 x32] | grub-efi-amd64 [amd64 x32] | grub-efi-ia32 [i386 amd64 x32] | grub [i386 amd64 x32] | lilo (>= 19.1) [i386 amd64 x32] | flash-kernel [armhf arm64] +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-lowlatency +Description: Linux kernel image for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel image for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Lowlatency processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-lowlatency meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-lowlatency, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Lowlatency processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-lowlatency meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64 bit x86 SMP + This package provides kernel header files for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-lowlatency-dbgsym +Architecture: i386 amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP + This package provides a kernel debug image for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-lowlatency +XC-Package-Type: udeb +Section: debian-installer +Architecture: i386 amd64 +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-ieee1275 +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc64-emb +Description: Linux kernel image for version 3.13.0 on 64-bit PowerPC SMP Book3E + This package contains the Linux kernel image for version 3.13.0 on + 64-bit PowerPC SMP Book3E. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 64-bit PowerPC SMP Book3E processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc64-emb meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc64-emb, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64-bit PowerPC SMP Book3E + This package contains the Linux kernel extra modules for version 3.13.0 on + 64-bit PowerPC SMP Book3E. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 64-bit PowerPC SMP Book3E processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc64-emb meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64-bit PowerPC SMP Book3E + This package provides kernel header files for version 3.13.0 on + 64-bit PowerPC SMP Book3E. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc64-emb-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64-bit PowerPC SMP Book3E + This package provides a kernel debug image for version 3.13.0 on + 64-bit PowerPC SMP Book3E. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc64-emb +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: yaboot +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc64-smp +Description: Linux kernel image for version 3.13.0 on 64-bit PowerPC SMP + This package contains the Linux kernel image for version 3.13.0 on + 64-bit PowerPC SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 64-bit PowerPC SMP processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc64-smp meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc64-smp, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64-bit PowerPC SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 64-bit PowerPC SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 64-bit PowerPC SMP processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc64-smp meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64-bit PowerPC SMP + This package provides kernel header files for version 3.13.0 on + 64-bit PowerPC SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc64-smp-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64-bit PowerPC SMP + This package provides a kernel debug image for version 3.13.0 on + 64-bit PowerPC SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc64-smp +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-ieee1275 +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc-e500 +Description: Linux kernel image for version 3.13.0 on 32-bit Freescale Power e500v1 and e500v2 + This package contains the Linux kernel image for version 3.13.0 on + 32-bit Freescale Power e500v1 and e500v2. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit Freescale Power e500v1 and e500v2 processors. + . + Geared toward server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-e500 meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc-e500, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 32-bit Freescale Power e500v1 and e500v2 + This package contains the Linux kernel extra modules for version 3.13.0 on + 32-bit Freescale Power e500v1 and e500v2. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit Freescale Power e500v1 and e500v2 processors. + . + Geared toward server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-e500 meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 32-bit Freescale Power e500v1 and e500v2 + This package provides kernel header files for version 3.13.0 on + 32-bit Freescale Power e500v1 and e500v2. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc-e500-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 32-bit Freescale Power e500v1 and e500v2 + This package provides a kernel debug image for version 3.13.0 on + 32-bit Freescale Power e500v1 and e500v2. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc-e500 +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-ieee1275 +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc-e500mc +Description: Linux kernel image for version 3.13.0 on 32-bit Freescale Power e500mc + This package contains the Linux kernel image for version 3.13.0 on + 32-bit Freescale Power e500mc. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit Freescale Power e500mc processors. + . + Geared toward server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-e500mc meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc-e500mc, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 32-bit Freescale Power e500mc + This package contains the Linux kernel extra modules for version 3.13.0 on + 32-bit Freescale Power e500mc. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit Freescale Power e500mc processors. + . + Geared toward server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-e500mc meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 32-bit Freescale Power e500mc + This package provides kernel header files for version 3.13.0 on + 32-bit Freescale Power e500mc. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc-e500mc-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 32-bit Freescale Power e500mc + This package provides a kernel debug image for version 3.13.0 on + 32-bit Freescale Power e500mc. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc-e500mc +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: yaboot +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc-smp +Description: Linux kernel image for version 3.13.0 on 32-bit PowerPC SMP + This package contains the Linux kernel image for version 3.13.0 on + 32-bit PowerPC SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit PowerPC SMP processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-smp meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc-smp, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 32-bit PowerPC SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 32-bit PowerPC SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit PowerPC SMP processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-smp meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 32-bit PowerPC SMP + This package provides kernel header files for version 3.13.0 on + 32-bit PowerPC SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc-smp-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 32-bit PowerPC SMP + This package provides a kernel debug image for version 3.13.0 on + 32-bit PowerPC SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc-smp +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + --- linux-3.13.0.orig/debian.master/control.d/flavour-control.stub +++ linux-3.13.0/debian.master/control.d/flavour-control.stub @@ -0,0 +1,129 @@ +# Items that get replaced: +# FLAVOUR +# DESC +# ARCH +# SUPPORTED +# TARGET +# BOOTLOADER +# =PROVIDES= +# +# Items marked with =FOO= are optional +# +# This file describes the template for packages that are created for each flavour +# in debian/control.d/vars.* +# +# This file gets edited in a couple of places. See the debian/control.stub rule in +# debian/rules. PGGVER, ABINUM, and SRCPKGNAME are all converted in the +# process of creating debian/control. +# +# The flavour specific strings (ARCH, DESC, etc) are converted using values from the various +# flavour files in debian/control.d/vars.* +# +# XXX: Leave the blank line before the first package!! + +Package: linux-image-PKGVER-ABINUM-FLAVOUR +Architecture: ARCH +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, =PROVIDES= +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: BOOTLOADER +Suggests: fdutils, SRCPKGNAME-doc-PKGVER | SRCPKGNAME-source-PKGVER, SRCPKGNAME-tools, linux-headers-PKGVER-ABINUM-FLAVOUR +Description: Linux kernel image for version PKGVER on DESC + This package contains the Linux kernel image for version PKGVER on + DESC. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports SUPPORTED processors. + . + TARGET + . + You likely do not want to install this package directly. Instead, install + the linux-FLAVOUR meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-PKGVER-ABINUM-FLAVOUR +Architecture: ARCH +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-PKGVER-ABINUM-FLAVOUR, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version PKGVER on DESC + This package contains the Linux kernel extra modules for version PKGVER on + DESC. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports SUPPORTED processors. + . + TARGET + . + You likely do not want to install this package directly. Instead, install + the linux-FLAVOUR meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-PKGVER-ABINUM-FLAVOUR +Architecture: ARCH +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-PKGVER-ABINUM, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version PKGVER on DESC + This package provides kernel header files for version PKGVER on + DESC. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-PKGVER-ABINUM/debian.README.gz for details. + +Package: linux-image-PKGVER-ABINUM-FLAVOUR-dbgsym +Architecture: ARCH +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version PKGVER on DESC + This package provides a kernel debug image for version PKGVER on + DESC. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-PKGVER-ABINUM-FLAVOUR +Architecture: ARCH +Section: devel +Priority: optional +Depends: ${misc:Depends}, SRCPKGNAME-tools-PKGVER-ABINUM +Description: Linux kernel version specific tools for version PKGVER-ABINUM + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version PKGVER-ABINUM on + =HUMAN=. + +Package: linux-cloud-tools-PKGVER-ABINUM-FLAVOUR +Architecture: ARCH +Section: devel +Priority: optional +Depends: ${misc:Depends}, SRCPKGNAME-cloud-tools-PKGVER-ABINUM +Description: Linux kernel version specific cloud tools for version PKGVER-ABINUM + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version PKGVER-ABINUM on + =HUMAN=. + +Package: SRCPKGNAME-udebs-FLAVOUR +XC-Package-Type: udeb +Section: debian-installer +Architecture: ARCH +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + --- linux-3.13.0.orig/debian.master/control.d/generic.inclusion-list +++ linux-3.13.0/debian.master/control.d/generic.inclusion-list @@ -0,0 +1,167 @@ +arch/*/{crypto,kernel,oprofile} +arch/*/kvm/kvm.ko +arch/x86/kvm/kvm-intel.ko +arch/x86/kvm/kvm-amd.ko +crypto/* +drivers/acpi/* +drivers/ata/ahci_platform.ko +drivers/ata/ahci.ko +drivers/ata/acard-ahci.ko +drivers/ata/libahci.ko +drivers/block/nbd.ko +drivers/block/floppy.ko +drivers/block/cryptoloop.ko +drivers/block/rbd.ko +drivers/char/hangcheck-timer.ko +drivers/char/hw_random/virtio-rng.ko +drivers/char/ipmi/ipmi_msghandler.ko +drivers/char/lp.ko +drivers/char/nvram.ko +drivers/char/ppdev.ko +drivers/char/raw.ko +drivers/hv/* +drivers/infiniband/core/ib_core.ko +drivers/infiniband/core/ib_addr.ko +drivers/infiniband/core/ib_cm.ko +drivers/infiniband/core/ib_mad.ko +drivers/infiniband/core/ib_sa.ko +drivers/infiniband/core/iw_cm.ko +drivers/infiniband/core/rdma_cm.ko +drivers/input/evbug.ko +drivers/input/gameport/gameport.ko +drivers/input/mouse/psmouse.ko +drivers/input/serio/serio_raw.ko +drivers/input/serio/serport.ko +drivers/input/joydev.ko +drivers/input/touchscreen/usbtouchscreen.ko +drivers/input/misc/xen-kbdfront.ko +drivers/md/* +drivers/message/fusion* +drivers/misc/vmw_balloon.ko +drivers/misc/vmw_vmci/vmw_vmci.ko +drivers/net/caif/caif_virtio.ko +drivers/net/mii.ko +drivers/net/ethernet/8390/8390.ko +drivers/net/ethernet/realtek/8139too.ko +drivers/net/ethernet/realtek/8139cp.ko +drivers/net/appletalk/ipddp.ko +drivers/net/bonding/bonding.ko +drivers/net/ppp/bsd_comp.ko +drivers/net/dummy.ko +drivers/net/ethernet/intel/e1000/e1000.ko +drivers/net/ethernet/intel/e1000e/e1000e.ko +drivers/net/eql.ko +drivers/net/ifb.ko +drivers/net/ethernet/intel/igbvf/igbvf.ko +drivers/net/ethernet/intel/ixgbevf/ixgbevf.ko +drivers/net/macvlan.ko +drivers/net/macvtap.ko +drivers/net/ethernet/8390/ne2k-pci.ko +drivers/net/netconsole.ko +drivers/net/ethernet/amd/pcnet32.ko +drivers/net/hyperv/hv_netvsc.ko +drivers/net/ppp/* +drivers/net/slip/* +drivers/net/veth.ko +drivers/net/vmxnet3/vmxnet3.ko +drivers/net/vxlan.ko +drivers/net/xen-netback/* +drivers/parport/parport.ko +drivers/parport/parport_pc.ko +drivers/phy/phy-core.ko +drivers/pps/pps_core.ko +drivers/ptp/ptp.ko +drivers/net/ethernet/dec/tulip/* +drivers/scsi/BusLogic.ko +drivers/scsi/device_handler/scsi_dh.ko +drivers/scsi/iscsi_tcp.ko +drivers/scsi/libiscsi.ko +drivers/scsi/libiscsi_tcp.ko +drivers/scsi/libsas/* +drivers/scsi/osd/osd.ko +drivers/scsi/osd/libosd.ko +drivers/scsi/qla1280.ko +drivers/scsi/raid_class.ko +drivers/scsi/scsi_transport_fc.ko +drivers/scsi/scsi_transport_iscsi.ko +drivers/scsi/scsi_transport_sas.ko +drivers/scsi/scsi_tgt.ko +drivers/scsi/vmw_pvscsi.ko +drivers/scsi/hv_storvsc.ko +drivers/scsi/virtio_scsi.ko +drivers/usb/storage/usb-storage.ko +drivers/vhost/vringh.ko +drivers/video/cirrusfb.ko +drivers/video/output.ko +drivers/video/syscopyarea.ko +drivers/video/sysfillrect.ko +drivers/video/sysimgblt.ko +drivers/video/vga16fb.ko +drivers/video/vgastate.ko +drivers/video/xen-fbfront.ko +drivers/video/fb_sys_fops.ko +drivers/watchdog/softdog.ko +drivers/xen/* +fs/9p/* +fs/binfmt_misc.ko +fs/btrfs/* +fs/cachefiles/cachefiles.ko +fs/ceph/* +fs/configfs/* +fs/exofs/libore.ko +fs/ext*/* +fs/fat/* +fs/nls/nls_iso8859-1.ko +fs/isofs/* +fs/cifs/* +fs/xfs/* +fs/ufs/* +fs/squashfs/* +fs/nfs/* +fs/nfsd/* +fs/nfs_common/* +fs/fscache/* +fs/lockd/* +fs/autofs4/autofs4.ko +fs/overlayfs/* +fs/udf/* +lib/* +net/802/* +net/8021q/* +net/9p/* +net/appletalk/* +net/atm/* +net/ax25/* +net/bridge/* +net/can/* +net/core/* +net/ceph/libceph.ko +net/dccp/* +net/decnet/* +net/ieee802154/* +net/ipv4/* +net/ipv6/* +net/ipx/* +net/irda/* +net/key/* +net/lapb/* +net/llc/* +net/netfilter/* +net/netrom/* +net/openvswitch/* +net/phonet/* +net/rose/* +net/rxrpc/* +net/sched/* +net/sctp/* +net/tipc/* +net/vmw_vsock/* +net/x25/* +net/xfrm/* +net/sunrpc/auth_gss/auth_rpcgss.ko +net/sunrpc/auth_gss/rpcsec_gss_krb5.ko +net/sunrpc/sunrpc.ko +sound/soundcore.ko +sound/core/* +sound/pci/snd-ens1370.ko +sound/drivers/pcsp/snd-pcsp.ko --- linux-3.13.0.orig/debian.master/control.d/vars.generic +++ linux-3.13.0/debian.master/control.d/vars.generic @@ -0,0 +1,6 @@ +arch="i386 amd64 armhf arm64 ppc64el" +supported="Generic" +target="Geared toward desktop and server systems." +desc="=HUMAN= SMP" +bootloader="grub-pc [i386 amd64 x32] | grub-efi-amd64 [amd64 x32] | grub-efi-ia32 [i386 amd64 x32] | grub [i386 amd64 x32] | lilo (>= 19.1) [i386 amd64 x32] | flash-kernel [armhf arm64] | grub-ieee1275 [ppc64el]" +provides="kvm-api-4, redhat-cluster-modules, ivtv-modules" --- linux-3.13.0.orig/debian.master/control.d/vars.generic-lpae +++ linux-3.13.0/debian.master/control.d/vars.generic-lpae @@ -0,0 +1,6 @@ +arch="armhf" +supported="Generic LPAE" +target="Geared toward desktop and server systems." +desc="=HUMAN= SMP" +bootloader="flash-kernel [armhf]" +provides="kvm-api-4, redhat-cluster-modules, ivtv-modules" --- linux-3.13.0.orig/debian.master/control.d/vars.lowlatency +++ linux-3.13.0/debian.master/control.d/vars.lowlatency @@ -0,0 +1,6 @@ +arch="i386 amd64" +supported="Lowlatency" +target="Geared toward desktop and server systems." +desc="=HUMAN= SMP" +bootloader="grub-pc [i386 amd64 x32] | grub-efi-amd64 [amd64 x32] | grub-efi-ia32 [i386 amd64 x32] | grub [i386 amd64 x32] | lilo (>= 19.1) [i386 amd64 x32] | flash-kernel [armhf arm64]" +provides="kvm-api-4, redhat-cluster-modules, ivtv-modules" --- linux-3.13.0.orig/debian.master/control.d/vars.powerpc-e500 +++ linux-3.13.0/debian.master/control.d/vars.powerpc-e500 @@ -0,0 +1,6 @@ +supported="32-bit Freescale Power e500v1 and e500v2" +target="Geared toward server systems." +desc="32-bit Freescale Power e500v1 and e500v2" +bootloader="grub-ieee1275" +provides="redhat-cluster-modules, ivtv-modules" +arch="powerpc" --- linux-3.13.0.orig/debian.master/control.d/vars.powerpc-e500mc +++ linux-3.13.0/debian.master/control.d/vars.powerpc-e500mc @@ -0,0 +1,6 @@ +supported="32-bit Freescale Power e500mc" +target="Geared toward server systems." +desc="32-bit Freescale Power e500mc" +bootloader="grub-ieee1275" +provides="redhat-cluster-modules, ivtv-modules" +arch="powerpc" --- linux-3.13.0.orig/debian.master/control.d/vars.powerpc-smp +++ linux-3.13.0/debian.master/control.d/vars.powerpc-smp @@ -0,0 +1,6 @@ +supported="32-bit PowerPC SMP" +target="Geared toward desktop or server systems." +desc="32-bit PowerPC SMP" +bootloader="yaboot" +provides="redhat-cluster-modules, ivtv-modules" +arch="powerpc" --- linux-3.13.0.orig/debian.master/control.d/vars.powerpc64-emb +++ linux-3.13.0/debian.master/control.d/vars.powerpc64-emb @@ -0,0 +1,6 @@ +supported="64-bit PowerPC SMP Book3E" +target="Geared toward desktop or server systems." +desc="64-bit PowerPC SMP Book3E" +bootloader="grub-ieee1275" +provides="redhat-cluster-modules, ivtv-modules" +arch="powerpc" --- linux-3.13.0.orig/debian.master/control.d/vars.powerpc64-smp +++ linux-3.13.0/debian.master/control.d/vars.powerpc64-smp @@ -0,0 +1,6 @@ +supported="64-bit PowerPC SMP" +target="Geared toward desktop or server systems." +desc="64-bit PowerPC SMP" +bootloader="yaboot" +provides="redhat-cluster-modules, ivtv-modules" +arch="powerpc" --- linux-3.13.0.orig/debian.master/control.stub +++ linux-3.13.0/debian.master/control.stub @@ -0,0 +1,975 @@ +Source: linux +Section: devel +Priority: optional +Maintainer: Ubuntu Kernel Team +Standards-Version: 3.9.4.0 +Build-Depends: debhelper (>= 5), cpio, module-init-tools, kernel-wedge (>= 2.24ubuntu1), makedumpfile [amd64 i386], libelf-dev, libnewt-dev, libiberty-dev, rsync, libdw-dev, libpci-dev, dpkg (>= 1.16.0~ubuntu4), pkg-config, flex, bison, libunwind8-dev, openssl, libaudit-dev, bc, python-dev, gawk, device-tree-compiler [powerpc], u-boot-tools [powerpc], libc6-dev-ppc64 [powerpc] +Build-Depends-Indep: xmlto, docbook-utils, ghostscript, transfig, bzip2, sharutils, asciidoc +Vcs-Git: http://kernel.ubuntu.com/git-repos/ubuntu/ubuntu-trusty.git +XS-Testsuite: autopkgtest +#XS-Testsuite-Depends: gcc-4.7 binutils + +Package: linux-source-3.13.0 +Architecture: all +Section: devel +Priority: optional +Provides: linux-source, linux-source-3 +Depends: ${misc:Depends}, binutils, bzip2, coreutils | fileutils (>= 4.0) +Recommends: libc-dev, gcc, make +Suggests: libncurses-dev | ncurses-dev, kernel-package, libqt3-dev +Description: Linux kernel source for version 3.13.0 with Ubuntu patches + This package provides the source code for the Linux kernel version + 3.13.0. + . + This package is mainly meant for other packages to use, in order to build + custom flavours. + . + If you wish to use this package to create a custom Linux kernel, then it + is suggested that you investigate the package kernel-package, which has + been designed to ease the task of creating kernel image packages. + . + If you are simply trying to build third-party modules for your kernel, + you do not want this package. Install the appropriate linux-headers + package instead. + +Package: linux-doc +Architecture: all +Section: doc +Priority: optional +Depends: ${misc:Depends} +Conflicts: linux-doc-3 +Replaces: linux-doc-3 +Description: Linux kernel specific documentation for version 3.13.0 + This package provides the various documents in the 3.13.0 kernel + Documentation/ subdirectory. These document kernel subsystems, APIs, device + drivers, and so on. See + /usr/share/doc/linux-doc/00-INDEX for a list of what is + contained in each file. + +Package: linux-headers-3.13.0-29 +Architecture: all +Multi-Arch: foreign +Section: devel +Priority: optional +Depends: ${misc:Depends}, coreutils | fileutils (>= 4.0) +Description: Header files related to Linux kernel version 3.13.0 + This package provides kernel header files for version 3.13.0, for sites + that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details + +Package: linux-libc-dev +Architecture: i386 amd64 armhf arm64 x32 powerpc ppc64el +Depends: ${misc:Depends} +Conflicts: libc6-dev (<< 2.3.2.ds1-6), libc6.1-dev (<< 2.3.2.ds1-6), dvb-dev (<< 1.0.1-6), amd64-libs-dev (<= 1.1), linux-kernel-headers +Replaces: libc6-dev (<< 2.3.2.ds1-6), libc6.1-dev (<< 2.3.2.ds1-6), dvb-dev (<< 1.0.1-6), linux-kernel-headers, libdrm-dev +Provides: linux-kernel-headers +Multi-Arch: same +Description: Linux Kernel Headers for development + This package provides headers from the Linux kernel. These headers + are used by the installed headers for GNU glibc and other system + libraries. They are NOT meant to be used to build third-party modules for + your kernel. Use linux-headers-* packages for that. + +Package: linux-tools-common +Architecture: all +Multi-Arch: foreign +Section: kernel +Priority: optional +Depends: ${misc:Depends} +Replaces: linux-tools (<= 2.6.32-16.25) +Description: Linux kernel version specific tools for version 3.13.0 + This package provides the architecture independent parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version PGKVER. + +Package: linux-tools-3.13.0-29 +Architecture: i386 amd64 armhf arm64 powerpc ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-tools-common +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + You probabally want to install linux-tools-3.13.0-29-. + +Package: linux-cloud-tools-common +Architecture: all +Multi-Arch: foreign +Section: kernel +Priority: optional +Breaks: linux-tools-common (<< 3.13.0-8.28), hv-kvp-daemon-init (<< 3.13) +Replaces: linux-tools-common (<< 3.13.0-8.28), hv-kvp-daemon-init (<< 3.13) +Depends: ${misc:Depends} +Description: Linux kernel version specific cloud tools for version 3.13.0 + This package provides the architecture independent parts for kernel + version locked tools for cloud tools for version PGKVER. + +Package: linux-cloud-tools-3.13.0-29 +Architecture: i386 amd64 armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-cloud-tools-common +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud tools for version 3.13.0-29 on + 64 bit x86. + You probabally want to install linux-cloud-tools-3.13.0-29-. + + +Package: linux-image-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, kvm-api-4, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-pc [i386 amd64 x32] | grub-efi-amd64 [amd64 x32] | grub-efi-ia32 [i386 amd64 x32] | grub [i386 amd64 x32] | lilo (>= 19.1) [i386 amd64 x32] | flash-kernel [armhf arm64] | grub-ieee1275 [ppc64el] +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-generic +Description: Linux kernel image for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel image for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Generic processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-generic meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-generic, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Generic processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-generic meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64 bit x86 SMP + This package provides kernel header files for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-generic-dbgsym +Architecture: i386 amd64 armhf arm64 ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP + This package provides a kernel debug image for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-generic +XC-Package-Type: udeb +Section: debian-installer +Architecture: i386 amd64 armhf arm64 ppc64el +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-generic-lpae +Architecture: armhf +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, kvm-api-4, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: flash-kernel [armhf] +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-generic-lpae +Description: Linux kernel image for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel image for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Generic LPAE processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-generic-lpae meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-generic-lpae +Architecture: armhf +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-generic-lpae, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Generic LPAE processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-generic-lpae meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-generic-lpae +Architecture: armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64 bit x86 SMP + This package provides kernel header files for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-generic-lpae-dbgsym +Architecture: armhf +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP + This package provides a kernel debug image for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-generic-lpae +Architecture: armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-generic-lpae +Architecture: armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-generic-lpae +XC-Package-Type: udeb +Section: debian-installer +Architecture: armhf +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, kvm-api-4, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-pc [i386 amd64 x32] | grub-efi-amd64 [amd64 x32] | grub-efi-ia32 [i386 amd64 x32] | grub [i386 amd64 x32] | lilo (>= 19.1) [i386 amd64 x32] | flash-kernel [armhf arm64] +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-lowlatency +Description: Linux kernel image for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel image for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Lowlatency processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-lowlatency meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-lowlatency, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Lowlatency processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-lowlatency meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64 bit x86 SMP + This package provides kernel header files for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-lowlatency-dbgsym +Architecture: i386 amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP + This package provides a kernel debug image for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-lowlatency +XC-Package-Type: udeb +Section: debian-installer +Architecture: i386 amd64 +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-ieee1275 +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc64-emb +Description: Linux kernel image for version 3.13.0 on 64-bit PowerPC SMP Book3E + This package contains the Linux kernel image for version 3.13.0 on + 64-bit PowerPC SMP Book3E. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 64-bit PowerPC SMP Book3E processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc64-emb meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc64-emb, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64-bit PowerPC SMP Book3E + This package contains the Linux kernel extra modules for version 3.13.0 on + 64-bit PowerPC SMP Book3E. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 64-bit PowerPC SMP Book3E processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc64-emb meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64-bit PowerPC SMP Book3E + This package provides kernel header files for version 3.13.0 on + 64-bit PowerPC SMP Book3E. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc64-emb-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64-bit PowerPC SMP Book3E + This package provides a kernel debug image for version 3.13.0 on + 64-bit PowerPC SMP Book3E. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc64-emb +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: yaboot +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc64-smp +Description: Linux kernel image for version 3.13.0 on 64-bit PowerPC SMP + This package contains the Linux kernel image for version 3.13.0 on + 64-bit PowerPC SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 64-bit PowerPC SMP processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc64-smp meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc64-smp, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64-bit PowerPC SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 64-bit PowerPC SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 64-bit PowerPC SMP processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc64-smp meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64-bit PowerPC SMP + This package provides kernel header files for version 3.13.0 on + 64-bit PowerPC SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc64-smp-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64-bit PowerPC SMP + This package provides a kernel debug image for version 3.13.0 on + 64-bit PowerPC SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc64-smp +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-ieee1275 +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc-e500 +Description: Linux kernel image for version 3.13.0 on 32-bit Freescale Power e500v1 and e500v2 + This package contains the Linux kernel image for version 3.13.0 on + 32-bit Freescale Power e500v1 and e500v2. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit Freescale Power e500v1 and e500v2 processors. + . + Geared toward server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-e500 meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc-e500, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 32-bit Freescale Power e500v1 and e500v2 + This package contains the Linux kernel extra modules for version 3.13.0 on + 32-bit Freescale Power e500v1 and e500v2. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit Freescale Power e500v1 and e500v2 processors. + . + Geared toward server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-e500 meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 32-bit Freescale Power e500v1 and e500v2 + This package provides kernel header files for version 3.13.0 on + 32-bit Freescale Power e500v1 and e500v2. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc-e500-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 32-bit Freescale Power e500v1 and e500v2 + This package provides a kernel debug image for version 3.13.0 on + 32-bit Freescale Power e500v1 and e500v2. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc-e500 +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-ieee1275 +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc-e500mc +Description: Linux kernel image for version 3.13.0 on 32-bit Freescale Power e500mc + This package contains the Linux kernel image for version 3.13.0 on + 32-bit Freescale Power e500mc. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit Freescale Power e500mc processors. + . + Geared toward server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-e500mc meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc-e500mc, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 32-bit Freescale Power e500mc + This package contains the Linux kernel extra modules for version 3.13.0 on + 32-bit Freescale Power e500mc. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit Freescale Power e500mc processors. + . + Geared toward server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-e500mc meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 32-bit Freescale Power e500mc + This package provides kernel header files for version 3.13.0 on + 32-bit Freescale Power e500mc. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc-e500mc-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 32-bit Freescale Power e500mc + This package provides a kernel debug image for version 3.13.0 on + 32-bit Freescale Power e500mc. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc-e500mc +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: yaboot +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc-smp +Description: Linux kernel image for version 3.13.0 on 32-bit PowerPC SMP + This package contains the Linux kernel image for version 3.13.0 on + 32-bit PowerPC SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit PowerPC SMP processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-smp meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc-smp, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 32-bit PowerPC SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 32-bit PowerPC SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit PowerPC SMP processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-smp meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 32-bit PowerPC SMP + This package provides kernel header files for version 3.13.0 on + 32-bit PowerPC SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc-smp-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 32-bit PowerPC SMP + This package provides a kernel debug image for version 3.13.0 on + 32-bit PowerPC SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc-smp +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + --- linux-3.13.0.orig/debian.master/control.stub.in +++ linux-3.13.0/debian.master/control.stub.in @@ -0,0 +1,119 @@ +Source: linux +Section: devel +Priority: optional +Maintainer: Ubuntu Kernel Team +Standards-Version: 3.9.4.0 +Build-Depends: debhelper (>= 5), cpio, module-init-tools, kernel-wedge (>= 2.24ubuntu1), makedumpfile [amd64 i386], libelf-dev, libnewt-dev, libiberty-dev, rsync, libdw-dev, libpci-dev, dpkg (>= 1.16.0~ubuntu4), pkg-config, flex, bison, libunwind8-dev, openssl, libaudit-dev, bc, python-dev, gawk, device-tree-compiler [powerpc], u-boot-tools [powerpc], libc6-dev-ppc64 [powerpc] +Build-Depends-Indep: xmlto, docbook-utils, ghostscript, transfig, bzip2, sharutils, asciidoc +Vcs-Git: http://kernel.ubuntu.com/git-repos/ubuntu/ubuntu-trusty.git +XS-Testsuite: autopkgtest +#XS-Testsuite-Depends: gcc-4.7 binutils + +Package: SRCPKGNAME-source-PKGVER +Architecture: all +Section: devel +Priority: optional +Provides: SRCPKGNAME-source, SRCPKGNAME-source-3 +Depends: ${misc:Depends}, binutils, bzip2, coreutils | fileutils (>= 4.0) +Recommends: libc-dev, gcc, make +Suggests: libncurses-dev | ncurses-dev, kernel-package, libqt3-dev +Description: Linux kernel source for version PKGVER with Ubuntu patches + This package provides the source code for the Linux kernel version + PKGVER. + . + This package is mainly meant for other packages to use, in order to build + custom flavours. + . + If you wish to use this package to create a custom Linux kernel, then it + is suggested that you investigate the package kernel-package, which has + been designed to ease the task of creating kernel image packages. + . + If you are simply trying to build third-party modules for your kernel, + you do not want this package. Install the appropriate linux-headers + package instead. + +Package: SRCPKGNAME-doc +Architecture: all +Section: doc +Priority: optional +Depends: ${misc:Depends} +Conflicts: SRCPKGNAME-doc-3 +Replaces: SRCPKGNAME-doc-3 +Description: Linux kernel specific documentation for version PKGVER + This package provides the various documents in the PKGVER kernel + Documentation/ subdirectory. These document kernel subsystems, APIs, device + drivers, and so on. See + /usr/share/doc/SRCPKGNAME-doc/00-INDEX for a list of what is + contained in each file. + +Package: SRCPKGNAME-headers-PKGVER-ABINUM +Architecture: all +Multi-Arch: foreign +Section: devel +Priority: optional +Depends: ${misc:Depends}, coreutils | fileutils (>= 4.0) +Description: Header files related to Linux kernel version PKGVER + This package provides kernel header files for version PKGVER, for sites + that want the latest kernel headers. Please read + /usr/share/doc/SRCPKGNAME-headers-PKGVER-ABINUM/debian.README.gz for details + +Package: SRCPKGNAME-libc-dev +Architecture: i386 amd64 armhf arm64 x32 powerpc ppc64el +Depends: ${misc:Depends} +Conflicts: libc6-dev (<< 2.3.2.ds1-6), libc6.1-dev (<< 2.3.2.ds1-6), dvb-dev (<< 1.0.1-6), amd64-libs-dev (<= 1.1), SRCPKGNAME-kernel-headers +Replaces: libc6-dev (<< 2.3.2.ds1-6), libc6.1-dev (<< 2.3.2.ds1-6), dvb-dev (<< 1.0.1-6), SRCPKGNAME-kernel-headers, libdrm-dev +Provides: SRCPKGNAME-kernel-headers +Multi-Arch: same +Description: Linux Kernel Headers for development + This package provides headers from the Linux kernel. These headers + are used by the installed headers for GNU glibc and other system + libraries. They are NOT meant to be used to build third-party modules for + your kernel. Use SRCPKGNAME-headers-* packages for that. + +Package: SRCPKGNAME-tools-common +Architecture: all +Multi-Arch: foreign +Section: kernel +Priority: optional +Depends: ${misc:Depends} +Replaces: SRCPKGNAME-tools (<= 2.6.32-16.25) +Description: Linux kernel version specific tools for version PKGVER + This package provides the architecture independent parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version PGKVER. + +Package: SRCPKGNAME-tools-PKGVER-ABINUM +Architecture: i386 amd64 armhf arm64 powerpc ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, SRCPKGNAME-tools-common +Description: Linux kernel version specific tools for version PKGVER-ABINUM + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version PKGVER-ABINUM on + =HUMAN=. + You probabally want to install linux-tools-PKGVER-ABINUM-. + +Package: SRCPKGNAME-cloud-tools-common +Architecture: all +Multi-Arch: foreign +Section: kernel +Priority: optional +Breaks: SRCPKGNAME-tools-common (<< 3.13.0-8.28), hv-kvp-daemon-init (<< 3.13) +Replaces: SRCPKGNAME-tools-common (<< 3.13.0-8.28), hv-kvp-daemon-init (<< 3.13) +Depends: ${misc:Depends} +Description: Linux kernel version specific cloud tools for version PKGVER + This package provides the architecture independent parts for kernel + version locked tools for cloud tools for version PGKVER. + +Package: SRCPKGNAME-cloud-tools-PKGVER-ABINUM +Architecture: i386 amd64 armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, SRCPKGNAME-cloud-tools-common +Description: Linux kernel version specific cloud tools for version PKGVER-ABINUM + This package provides the architecture dependant parts for kernel + version locked tools for cloud tools for version PKGVER-ABINUM on + =HUMAN=. + You probabally want to install linux-cloud-tools-PKGVER-ABINUM-. + --- linux-3.13.0.orig/debian.master/copyright +++ linux-3.13.0/debian.master/copyright @@ -0,0 +1,29 @@ +This is the Ubuntu prepackaged version of the Linux kernel. +Linux was written by Linus Torvalds +and others. + +This package was put together by the Ubuntu Kernel Team, from +sources retrieved from upstream linux git. +The sources may be found at most Linux ftp sites, including +ftp://ftp.kernel.org/pub/linux/kernel/ + +This package is currently maintained by the +Ubuntu Kernel Team + +Linux is copyrighted by Linus Torvalds and others. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 dated June, 1991. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +On Ubuntu Linux systems, the complete text of the GNU General +Public License v2 can be found in `/usr/share/common-licenses/GPL-2'. --- linux-3.13.0.orig/debian.master/d-i/exclude-firmware.armhf-generic +++ linux-3.13.0/debian.master/d-i/exclude-firmware.armhf-generic @@ -0,0 +1,2 @@ +nic-modules +scsi-modules --- linux-3.13.0.orig/debian.master/d-i/exclude-firmware.armhf-generic-lpae +++ linux-3.13.0/debian.master/d-i/exclude-firmware.armhf-generic-lpae @@ -0,0 +1,2 @@ +nic-modules +scsi-modules --- linux-3.13.0.orig/debian.master/d-i/exclude-modules.amd64-virtual +++ linux-3.13.0/debian.master/d-i/exclude-modules.amd64-virtual @@ -0,0 +1,14 @@ +pata-modules +firewire-core-modules +plip-modules +usb-modules +pcmcia-storage-modules +input-modules +nic-pcmcia-modules +pcmcia-modules +nic-usb-modules +nfs-modules +speakup-modules +ppp-modules +sata-modules +ipmi-modules --- linux-3.13.0.orig/debian.master/d-i/exclude-modules.arm64-generic +++ linux-3.13.0/debian.master/d-i/exclude-modules.arm64-generic @@ -0,0 +1,11 @@ +serial-modules +pata-modules +firewire-core-modules +floppy-modules +usb-modules +pcmcia-storage-modules +fb-modules +nic-pcmcia-modules +pcmcia-modules +nic-usb-modules +message-modules --- linux-3.13.0.orig/debian.master/d-i/exclude-modules.armhf-generic +++ linux-3.13.0/debian.master/d-i/exclude-modules.armhf-generic @@ -0,0 +1,10 @@ +serial-modules +firewire-core-modules +floppy-modules +pcmcia-storage-modules +fb-modules +nic-pcmcia-modules +pcmcia-modules +pata-modules +message-modules +virtio-modules --- linux-3.13.0.orig/debian.master/d-i/exclude-modules.armhf-generic-lpae +++ linux-3.13.0/debian.master/d-i/exclude-modules.armhf-generic-lpae @@ -0,0 +1,10 @@ +serial-modules +firewire-core-modules +floppy-modules +pcmcia-storage-modules +fb-modules +nic-pcmcia-modules +pcmcia-modules +pata-modules +message-modules +virtio-modules --- linux-3.13.0.orig/debian.master/d-i/exclude-modules.i386-virtual +++ linux-3.13.0/debian.master/d-i/exclude-modules.i386-virtual @@ -0,0 +1,14 @@ +pata-modules +firewire-core-modules +plip-modules +usb-modules +pcmcia-storage-modules +input-modules +nic-pcmcia-modules +pcmcia-modules +nic-usb-modules +nfs-modules +speakup-modules +ppp-modules +sata-modules +ipmi-modules --- linux-3.13.0.orig/debian.master/d-i/exclude-modules.powerpc +++ linux-3.13.0/debian.master/d-i/exclude-modules.powerpc @@ -0,0 +1,7 @@ +efi-modules +fb-modules +acpi-modules +serial-modules +nic-pcmcia-modules +pcmcia-modules +pcmcia-storage-modules --- linux-3.13.0.orig/debian.master/d-i/exclude-modules.ppc64el-generic +++ linux-3.13.0/debian.master/d-i/exclude-modules.ppc64el-generic @@ -0,0 +1,12 @@ +serial-modules +pata-modules +fat-modules +pcmcia-storage-modules +nic-pcmcia-modules +pcmcia-modules +firewire-core-modules +usb-modules +mouse-modules +irda-modules +sata-modules +speakup-modules --- linux-3.13.0.orig/debian.master/d-i/firmware/README.txt +++ linux-3.13.0/debian.master/d-i/firmware/README.txt @@ -0,0 +1,4 @@ +# +# Place the names of udeb modules into this directory that require +# runtime firmware. +# --- linux-3.13.0.orig/debian.master/d-i/firmware/kernel-image +++ linux-3.13.0/debian.master/d-i/firmware/kernel-image @@ -0,0 +1,14 @@ +device-tree/apm-mustang.dtb ? +device-tree/highbank.dtb ? +device-tree/imx6dl-wandboard.dtb ? +device-tree/imx6q-sabrelite.dtb ? +device-tree/imx6q-wandboard.dtb ? +device-tree/omap3-beagle-xm.dtb ? +device-tree/omap4-panda.dtb ? +device-tree/omap4-panda-es.dtb ? +device-tree/tegra20-harmony.dtb ? +device-tree/tegra20-paz00.dtb ? +device-tree/tegra20-seaboard.dtb ? +device-tree/tegra20-trimslice.dtb ? +device-tree/tegra20-ventana.dtb ? +device-tree/tegra20-whistler.dtb ? --- linux-3.13.0.orig/debian.master/d-i/firmware/nic-modules +++ linux-3.13.0/debian.master/d-i/firmware/nic-modules @@ -0,0 +1,14 @@ +e100/d101m_ucode.bin ? +e100/d101s_ucode.bin ? +e100/d102e_ucode.bin ? +bnx2/bnx2-mips-09-6.2.1b.fw ? +bnx2/bnx2-rv2p-06-6.0.15.fw ? +bnx2/bnx2-mips-06-6.2.3.fw ? +bnx2/bnx2-rv2p-09-6.0.17.fw ? +bnx2/bnx2-rv2p-09ax-6.0.17.fw ? +bnx2x/bnx2x-e1h-7.8.17.0.fw ? +bnx2x/bnx2x-e1-7.8.17.0.fw ? +bnx2x/bnx2x-e2-7.8.17.0.fw ? +tigon/tg3_tso5.bin ? +tigon/tg3_tso.bin ? +tigon/tg3.bin ? --- linux-3.13.0.orig/debian.master/d-i/firmware/scsi-modules +++ linux-3.13.0/debian.master/d-i/firmware/scsi-modules @@ -0,0 +1,3 @@ +qlogic/1040.bin ? +qlogic/12160.bin ? +qlogic/1280.bin ? --- linux-3.13.0.orig/debian.master/d-i/kernel-versions +++ linux-3.13.0/debian.master/d-i/kernel-versions @@ -0,0 +1,19 @@ +# arch version flavour installedname suffix bdep +amd64 3.13.0-29 generic 3.13.0-29-generic - + +i386 3.13.0-29 generic 3.13.0-29-generic - + +armhf 3.13.0-29 generic 3.13.0-29-generic - + +armhf 3.13.0-29 generic-lpae 3.13.0-29-generic-lpae - + +arm64 3.13.0-29 generic 3.13.0-29-generic - + +ppc64el 3.13.0-29 generic 3.13.0-29-generic - + +# Ports +# arch version flavour installedname suffix bdep +powerpc 3.13.0-29 powerpc-smp 3.13.0-29-powerpc-smp - +powerpc 3.13.0-29 powerpc64-smp 3.13.0-29-powerpc64-smp - +powerpc 3.13.0-29 powerpc-e500 3.13.0-29-powerpc-e500 - +powerpc 3.13.0-29 powerpc-e500mc 3.13.0-29-powerpc-e500mc - --- linux-3.13.0.orig/debian.master/d-i/kernel-versions.in +++ linux-3.13.0/debian.master/d-i/kernel-versions.in @@ -0,0 +1,19 @@ +# arch version flavour installedname suffix bdep +amd64 PKGVER-ABINUM generic PKGVER-ABINUM-generic - + +i386 PKGVER-ABINUM generic PKGVER-ABINUM-generic - + +armhf PKGVER-ABINUM generic PKGVER-ABINUM-generic - + +armhf PKGVER-ABINUM generic-lpae PKGVER-ABINUM-generic-lpae - + +arm64 PKGVER-ABINUM generic PKGVER-ABINUM-generic - + +ppc64el PKGVER-ABINUM generic PKGVER-ABINUM-generic - + +# Ports +# arch version flavour installedname suffix bdep +powerpc PKGVER-ABINUM powerpc-smp PKGVER-ABINUM-powerpc-smp - +powerpc PKGVER-ABINUM powerpc64-smp PKGVER-ABINUM-powerpc64-smp - +powerpc PKGVER-ABINUM powerpc-e500 PKGVER-ABINUM-powerpc-e500 - +powerpc PKGVER-ABINUM powerpc-e500mc PKGVER-ABINUM-powerpc-e500mc - --- linux-3.13.0.orig/debian.master/d-i/modules-powerpc/block-modules +++ linux-3.13.0/debian.master/d-i/modules-powerpc/block-modules @@ -0,0 +1,31 @@ +aoe +aten +bpck +bpck6 ? +cciss +comm +cpqarray ? +DAC960 +dstr +epat +epia +fit2 +fit3 +friq +frpw +kbic +ktti +nbd +on20 +on26 +paride +pcd +pd +pf +pg +ps3disk ? +ps3vram ? +pt +sx8 +umem +virtio_blk ? --- linux-3.13.0.orig/debian.master/d-i/modules-powerpc/message-modules +++ linux-3.13.0/debian.master/d-i/modules-powerpc/message-modules @@ -0,0 +1,13 @@ +mptbase +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +i2o_block +i2o_bus +i2o_config ? +i2o_core +i2o_proc +i2o_scsi --- linux-3.13.0.orig/debian.master/d-i/modules-powerpc/nic-modules +++ linux-3.13.0/debian.master/d-i/modules-powerpc/nic-modules @@ -0,0 +1,152 @@ +3c359 ? +3c501 ? +3c503 ? +3c505 ? +3c507 ? +3c509 ? +3c515 ? +3c523 ? +3c527 ? +3c59x ? +8139cp ? +8139too ? +82596 ? +abyss ? +ac3200 ? +adm8211 ? +airo ? +airport ? +amd8111e ? +arc4 ? +arcnet ? +arc-rawmode ? +arc-rimi ? +arlan ? +at1700 ? +atl1 ? +atl1e ? +atl2 ? +atmel ? +atmel_pci ? +b44 ? +bcm43xx ? +bcm43xx-mac80211 ? +bmac ? +bnx2 ? +bnx2x ? +bonding ? +cassini ? +com20020 ? +com20020-pci ? +com90io ? +com90xx ? +cs89x0 ? +de2104x ? +de4x5 ? +de600 ? +de620 ? +defxx ? +depca ? +dl2k ? +dmfe ? +dummy ? +e100 ? +e1000 ? +e1000e ? +e2100 ? +eepro ? +eepro100 ? +eexpress ? +epic100 ? +eql ? +es3210 ? +eth16i ? +ewrk3 ? +fealnx ? +forcedeth ? +igb ? +hamachi ? +hermes ? +hp ? +hp100 ? +hp-plus ? +ibmtr ? +ibmveth ? +ipddp ? +ipw2100 ? +ipw2200 ? +ipw3945 ? +ixgb ? +lance ? +lanstreamer ? +lasi_82596 ? +lne390 ? +lp486e ? +mace ? +mv643xx_eth ? +myri_sbus ? +natsemi ? +ne ? +ne2 ? +ne2k-pci ? +ne3210 ? +netconsole ? +netxen_nic ? +ni5010 ? +ni52 ? +ni65 ? +niu ? +ns83820 ? +olympic ? +orinoco ? +orinoco_pci ? +orinoco_plx ? +orinoco_tmd ? +pcnet32 ? +ps3_gelic ? +r8169 ? +rate_control ? +rfc1051 ? +rfc1201 ? +rrunner ? +rt2400 ? +rt2500 ? +rt61pci ? +s2io ? +shaper ? +sis190 ? +sis900 ? +spidernet ? +skfp ? +skge ? +sk98lin ? +sky2 ? +smc9194 ? +smc-ultra ? +smc-ultra32 ? +starfire ? +strip ? +sunbmac ? +sundance ? +sungem ? +sungem_phy ? +sunhme ? +sunlance ? +sunqe ? +sunvnet ? +tg3 ? +tlan ? +tms380tr ? +tmspci ? +tulip ? +tun ? +typhoon ? +uli526x ? +via-rhine ? +via-velocity ? +virtio_net ? +wavelan ? +wd ? +winbond-840 ? +yellowfin ? +znet ? --- linux-3.13.0.orig/debian.master/d-i/modules-powerpc/scsi-modules +++ linux-3.13.0/debian.master/d-i/modules-powerpc/scsi-modules @@ -0,0 +1,118 @@ +# SCSI +raid_class ? +scsi_transport_spi ? +scsi_transport_fc ? +scsi_transport_iscsi ? +scsi_transport_sas ? +iscsi_tcp ? +libiscsi ? +amiga7xx ? +a3000 ? +a2091 ? +gvp11 ? +mvme147 ? +sgiwd93 ? +cyberstorm ? +cyberstormII ? +blz2060 ? +blz1230 ? +fastlane ? +oktagon_esp_mod ? +atari_scsi ? +mac_scsi ? +mac_esp ? +sun3_scsi ? +mvme16x ? +bvme6000 ? +sim710 ? +advansys ? +psi240i ? +BusLogic ? +dpt_i2o ? +u14-34f ? +ultrastor ? +aha152x ? +aha1542 ? +aha1740 ? +aic7xxx_old ? +ips ? +fd_mcs ? +fdomain ? +in2000 ? +g_NCR5380 ? +g_NCR5380_mmio ? +NCR53c406a ? +NCR_D700 ? +NCR_Q720_mod ? +sym53c416 ? +qlogicfas408 ? +qla1280 ? +pas16 ? +seagate ? +seagate ? +t128 ? +dmx3191d ? +dtc ? +zalon7xx ? +eata_pio ? +wd7000 ? +mca_53c9x ? +ibmmca ? +ibmvfc ? +ibmvscsic ? +eata ? +dc395x ? +tmscsim ? +megaraid ? +atp870u ? +esp ? +gdth ? +initio ? +a100u2w ? +qlogicpti ? +ide-scsi ? +mesh ? +mac53c94 ? +pluto ? +dec_esp ? +3w-xxxx ? +3w-9xxx ? +ppa ? +imm ? +jazz_esp ? +sun3x_esp ? +fcal ? +lasi700 ? +nsp32 ? +ipr ? +hptiop ? +stex ? +osst ? +sg ? +ch ? +scsi_debug ? +aacraid ? +aic7xxx ? +aic79xx ? +aic94xx ? +arcmsr ? +acornscsi_mod ? +arxescsi ? +cumana_1 ? +cumana_2 ? +ecoscsi ? +oak ? +powertec ? +eesox ? +ibmvscsic ? +libsas ? +lpfc ? +megaraid_mm ? +megaraid_mbox ? +megaraid_sas ? +qla2xxx ? +sym53c8xx ? +qla4xxx ? +mvsas ? +sr_mod ? +sd_mod ? --- linux-3.13.0.orig/debian.master/d-i/modules-powerpc/storage-core-modules +++ linux-3.13.0/debian.master/d-i/modules-powerpc/storage-core-modules @@ -0,0 +1,13 @@ +# Core stacks +usb-storage ? + +# Block level + +# Loop modules +cryptoloop + +# Needs to be here for better cdrom initrd layout +isofs + +ps3stor_lib ? +ps3rom ? --- linux-3.13.0.orig/debian.master/d-i/modules/block-modules +++ linux-3.13.0/debian.master/d-i/modules/block-modules @@ -0,0 +1,34 @@ +aoe ? +aten ? +bpck ? +bpck6 ? +cciss ? +comm ? +cpqarray ? +DAC960 ? +dstr ? +epat ? +epia ? +fit2 ? +fit3 ? +friq ? +frpw ? +hpsa ? +kbic ? +ktti ? +nbd ? +nvme ? +on20 ? +on26 ? +paride ? +pcd ? +pd ? +pf ? +pg ? +pt ? +sdhci-tegra ? +sx8 ? +umem ? +virtio_blk ? +xen-blkfront ? +mtip32xx ? --- linux-3.13.0.orig/debian.master/d-i/modules/crypto-modules +++ linux-3.13.0/debian.master/d-i/modules/crypto-modules @@ -0,0 +1,70 @@ +aesni-intel ? +aes-x86_64 ? +af_alg ? +algif_hash ? +algif_skcipher ? +ansi_cprng ? +anubis ? +arc4 ? +async_memcpy ? +async_pq ? +async_raid6_recov ? +async_tx ? +async_xor ? +authenc ? +authencesn ? +blowfish_common ? +blowfish_generic ? +blowfish-x86_64 ? +camellia ? +cast5 ? +cast6 ? +ccm ? +cryptd ? +cryptoloop ? +crypto_null ? +crypto_user ? +ctr ? +cts ? +deflate ? +des_generic ? +fcrypt ? +gcm ? +gf128mul ? +ghash-clmulni-intel ? +ghash-generic ? +khazad ? +lrw ? +lzo ? +md4 ? +michael_mic ? +padlock-aes ? +padlock-sha ? +pcbc ? +pcrypt ? +raid6test ? +rmd128 ? +rmd160 ? +rmd256 ? +rmd320 ? +salsa20_generic ? +salsa20-x86_64 ? +seed ? +seqiv ? +serpent_generic ? +serpent-sse2-x86_64 ? +sha1-ssse3 ? +sha512_generic ? +tcrypt ? +tea ? +tgr192 ? +twofish_common ? +twofish_generic ? +twofish-x86_64 ? +twofish-x86_64-3way ? +vmac ? +wp512 ? +xcbc ? +xor ? +xts ? +zlib ? --- linux-3.13.0.orig/debian.master/d-i/modules/fat-modules +++ linux-3.13.0/debian.master/d-i/modules/fat-modules @@ -0,0 +1,7 @@ +fat ? +vfat ? + +# Supporting modules ? +nls_cp437 ? +nls_iso8859-1 ? +nls_utf8 ? --- linux-3.13.0.orig/debian.master/d-i/modules/fb-modules +++ linux-3.13.0/debian.master/d-i/modules/fb-modules @@ -0,0 +1,3 @@ +fbcon ? +vesafb ? +vga16fb ? --- linux-3.13.0.orig/debian.master/d-i/modules/firewire-core-modules +++ linux-3.13.0/debian.master/d-i/modules/firewire-core-modules @@ -0,0 +1,4 @@ +firewire-core ? +firewire-ohci ? +firewire-sbp2 ? +firewire-net ? --- linux-3.13.0.orig/debian.master/d-i/modules/floppy-modules +++ linux-3.13.0/debian.master/d-i/modules/floppy-modules @@ -0,0 +1 @@ +floppy ? --- linux-3.13.0.orig/debian.master/d-i/modules/fs-core-modules +++ linux-3.13.0/debian.master/d-i/modules/fs-core-modules @@ -0,0 +1,4 @@ +ext2 ? +jfs ? +reiserfs ? +xfs ? --- linux-3.13.0.orig/debian.master/d-i/modules/fs-secondary-modules +++ linux-3.13.0/debian.master/d-i/modules/fs-secondary-modules @@ -0,0 +1,5 @@ +btrfs ? +fuse ? +ntfs ? +hfs ? +hfsplus ? --- linux-3.13.0.orig/debian.master/d-i/modules/input-modules +++ linux-3.13.0/debian.master/d-i/modules/input-modules @@ -0,0 +1,23 @@ +hid-a4tech ? +hid-apple ? +hid-belkin ? +hid-bright ? +hid-cherry ? +hid-chicony ? +hid-cypress ? +hid-dell ? +hid-ezkey ? +hid-generic ? +hid-gyration ? +hid-logitech ? +hid-logitech-dj ? +hid-microsoft ? +hid-monterey ? +hid-petalynx ? +hid-pl ? +hid-samsung ? +hid-sony ? +hid-sunplus ? +hid-tmff ? +hid-zpff ? +usbhid ? --- linux-3.13.0.orig/debian.master/d-i/modules/ipmi-modules +++ linux-3.13.0/debian.master/d-i/modules/ipmi-modules @@ -0,0 +1,5 @@ +ipmi_devintf ? +ipmi_msghandler ? +ipmi_poweroff ? +ipmi_si ? +ipmi_watchdog ? --- linux-3.13.0.orig/debian.master/d-i/modules/irda-modules +++ linux-3.13.0/debian.master/d-i/modules/irda-modules @@ -0,0 +1,30 @@ +act200l-sir ? +actisys-sir ? +ali-ircc ? +donauboe ? +esi-sir ? +girbil-sir ? +ircomm ? +ircomm-tty ? +irda ? +irda-usb ? +irlan ? +irnet ? +irport ? +irtty-sir ? +kingsun-sir ? +ks959-sir ? +ksdazzle-sir ? +litelink-sir ? +ma600-sir ? +mcp2120-sir ? +mcs7780 ? +nsc-ircc ? +old_belkin-sir ? +sir-dev ? +smsc-ircc2 ? +stir4200 ? +tekram-sir ? +via-ircc ? +vlsi_ir ? +w83977af_ir ? --- linux-3.13.0.orig/debian.master/d-i/modules/kernel-image +++ linux-3.13.0/debian.master/d-i/modules/kernel-image @@ -0,0 +1,24 @@ +gpio-pca953x ? +gpio-regulator ? +i2c-mux ? +i2c-mux-pinctrl ? +i2c-tegra ? +max8907 ? +max8907-regulator ? +nvec ? +nvec_kbd ? +nvec_paz00 ? +nvec_power ? +nvec_ps2 ? +palmas-regulator ? +rtc-em3027 ? +rtc-max8907 ? +rtc-palmas ? +rtc-tps6586x ? +rtc-tps65910 ? +tps51632-regulator ? +tps62360-regulator ? +tps65090-charger ? +tps65090-regulator ? +tps6586x-regulator ? +tps65910-regulator ? --- linux-3.13.0.orig/debian.master/d-i/modules/md-modules +++ linux-3.13.0/debian.master/d-i/modules/md-modules @@ -0,0 +1,16 @@ +dm-crypt ? +dm-mirror ? +dm-raid ? +dm-snapshot ? +dm-zero ? +faulty ? +linear ? +multipath ? +raid0 ? +raid1 ? +raid10 ? +raid456 ? + +# Extras +dm-raid45 ? +dm-loop ? --- linux-3.13.0.orig/debian.master/d-i/modules/message-modules +++ linux-3.13.0/debian.master/d-i/modules/message-modules @@ -0,0 +1,14 @@ +mptbase ? +mptctl ? +mptfc ? +mptlan ? +mptsas ? +mpt2sas ? +mptscsih ? +mptspi ? +i2o_block ? +i2o_bus ? +i2o_config ? +i2o_core ? +i2o_proc ? +i2o_scsi ? --- linux-3.13.0.orig/debian.master/d-i/modules/mouse-modules +++ linux-3.13.0/debian.master/d-i/modules/mouse-modules @@ -0,0 +1,2 @@ +psmouse ? +usbmouse ? --- linux-3.13.0.orig/debian.master/d-i/modules/multipath-modules +++ linux-3.13.0/debian.master/d-i/modules/multipath-modules @@ -0,0 +1,2 @@ +dm-multipath ? +dm-round-robin ? --- linux-3.13.0.orig/debian.master/d-i/modules/nfs-modules +++ linux-3.13.0/debian.master/d-i/modules/nfs-modules @@ -0,0 +1,6 @@ +nfs ? +nfs_acl ? +nfsv3 ? +lockd ? +sunrpc ? +cifs ? --- linux-3.13.0.orig/debian.master/d-i/modules/nic-modules +++ linux-3.13.0/debian.master/d-i/modules/nic-modules @@ -0,0 +1,175 @@ +3c359 ? +3c501 ? +3c503 ? +3c505 ? +3c507 ? +3c509 ? +3c515 ? +3c523 ? +3c527 ? +3c59x ? +8139cp ? +8139too ? +82596 ? +abyss ? +ac3200 ? +adm8211 ? +airo ? +airport ? +alx ? +amd8111e ? +arc4 ? +arcnet ? +arc-rawmode ? +arc-rimi ? +arlan ? +at1700 ? +ath5k ? +ath9k ? +ath9k_htc ? +atl1 ? +atl1c ? +atl1e ? +atl2 ? +atmel ? +atmel_pci ? +b44 ? +be2net ? +bmac ? +bnx2 ? +bnx2x ? +bonding ? +brcmfmac ? +brcmsmac ? +xgmac ? +cassini ? +com20020 ? +com20020-pci ? +com90io ? +com90xx ? +cs89x0 ? +de2104x ? +de4x5 ? +de600 ? +de620 ? +defxx ? +depca ? +dl2k ? +dmfe ? +dummy ? +e100 ? +e1000 ? +e1000e ? +e2100 ? +eepro ? +eepro100 ? +eexpress ? +enic ? +epic100 ? +eql ? +es3210 ? +eth16i ? +ewrk3 ? +fealnx ? +forcedeth ? +igb ? +ps3_gelic ? +hamachi ? +hermes ? +hp ? +hp100 ? +hp-plus ? +ibmtr ? +ipddp ? +ipw2100 ? +ipw2200 ? +iwl3945 ? +iwl4965 ? +iwl-legacy ? +iwldvm ? +iwlwifi ? +ixgb ? +ixgbe ? +lance ? +lanstreamer ? +lasi_82596 ? +lne390 ? +lp486e ? +mace ? +mlx4_core ? +mlx4_en ? +mlx5_core ? +mv643xx_eth ? +myri_sbus ? +natsemi ? +ne ? +ne2 ? +ne2k-pci ? +ne3210 ? +netconsole ? +netxen_nic ? +ni5010 ? +ni52 ? +ni65 ? +niu ? +ns83820 ? +olympic ? +orinoco ? +orinoco_pci ? +orinoco_plx ? +orinoco_tmd ? +pcnet32 ? +qlcnic ? +r815x ? +r8169 ? +rate_control ? +rfc1051 ? +rfc1201 ? +rrunner ? +rt2400 ? +rt2400pci ? +rt2500 ? +rt2500pci ? +rt2800pci ? +rt61pci ? +s2io ? +shaper ? +sis190 ? +sis900 ? +spidernet ? +skfp ? +skge ? +sk98lin ? +sky2 ? +smc9194 ? +smc-ultra ? +smc-ultra32 ? +starfire ? +strip ? +sunbmac ? +sundance ? +sungem ? +sungem_phy ? +sunhme ? +sunlance ? +sunqe ? +sunvnet ? +tg3 ? +tlan ? +tms380tr ? +tmspci ? +tulip ? +tun ? +typhoon ? +uli526x ? +via-rhine ? +via-velocity ? +virtio_net ? +wavelan ? +wd ? +winbond-840 ? +yellowfin ? +znet ? +vmxnet3 ? +xen-netfront ? +xgene-enet ? --- linux-3.13.0.orig/debian.master/d-i/modules/nic-pcmcia-modules +++ linux-3.13.0/debian.master/d-i/modules/nic-pcmcia-modules @@ -0,0 +1,19 @@ +3c574_cs ? +3c589_cs ? +airo_cs ? +atmel_cs ? +axnet_cs ? +com20020_cs ? +fmvj18x_cs ? +ibmtr_cs ? +netwave_cs ? +nmclan_cs ? +orinoco_cs ? +pcnet_cs ? +ray_cs ? +smc91c92_cs ? +wavelan_cs ? +wl3501_cs ? +xirc2ps_cs ? +xircom_cb ? +xircom_tulip_cb ? --- linux-3.13.0.orig/debian.master/d-i/modules/nic-shared-modules +++ linux-3.13.0/debian.master/d-i/modules/nic-shared-modules @@ -0,0 +1,26 @@ +# PHY +8390 ? +mii ? + +# CRC modules +crc-ccitt ? +crc-itu-t ? +libcrc32c ? + +# mac80211 stuff +mac80211 ? +cfg80211 ? + +# rt2x00 lib (since rt2x00 is split across usb/pci/cb +rt2x00lib ? +rt2800lib ? + +# Atheros library (since drivers are split across nic-modules/nic-usb-modules) +ath ? + +# Wireless 802.11 modules +lib80211 ? +cfg80211 ? +lib80211_crypt_ccmp ? +lib80211_crypt_tkip ? +lib80211_crypt_wep ? --- linux-3.13.0.orig/debian.master/d-i/modules/nic-usb-modules +++ linux-3.13.0/debian.master/d-i/modules/nic-usb-modules @@ -0,0 +1,32 @@ +catc ? +kaweth ? +pegasus ? +prism2_usb ? +rtl8150 ? +usbnet ? +zd1211rw ? +zd1201 ? +rt2500usb ? +rt73usb ? +rt2570 ? +rt2800usb ? +rt2x00usb ? +cdc_ether ? +asix ? +cdc_eem ? +cdc_ether ? +cdc-phonet ? +cdc_subset ? +dm9601 ? +gl620a ? +hso ? +int51x1 ? +mcs7830 ? +net1080 ? +plusb ? +rndis_host ? +smsc95xx ? +zaurus ? +carl9170 ? +smsc75xx ? +smsc95xx ? --- linux-3.13.0.orig/debian.master/d-i/modules/parport-modules +++ linux-3.13.0/debian.master/d-i/modules/parport-modules @@ -0,0 +1,2 @@ +parport ? +parport_pc ? --- linux-3.13.0.orig/debian.master/d-i/modules/pata-modules +++ linux-3.13.0/debian.master/d-i/modules/pata-modules @@ -0,0 +1,47 @@ +pata_ali.ko ? +pata_amd.ko ? +pata_artop.ko ? +pata_atiixp.ko ? +pata_atp867x.ko ? +pata_cmd640.ko ? +pata_cmd64x.ko ? +pata_cs5520.ko ? +pata_cs5530.ko ? +pata_cs5535.ko ? +pata_cs5536.ko ? +pata_cypress.ko ? +pata_efar.ko ? +pata_hpt366.ko ? +pata_hpt37x.ko ? +pata_hpt3x2n.ko ? +pata_hpt3x3.ko ? +pata_isapnp.ko ? +pata_it8213.ko ? +pata_it821x.ko ? +pata_jmicron.ko ? +pata_legacy.ko ? +pata_macio.ko ? +pata_marvell.ko ? +pata_mpiix.ko ? +pata_netcell.ko ? +pata_ninja32.ko ? +pata_ns87410.ko ? +pata_ns87415.ko ? +pata_oldpiix.ko ? +pata_optidma.ko ? +pata_opti.ko ? +pata_pcmcia.ko ? +pata_pdc2027x.ko ? +pata_pdc202xx_old.ko ? +pata_qdi.ko ? +pata_radisys.ko ? +pata_rdc.ko ? +pata_rz1000.ko ? +pata_sc1200.ko ? +pata_sch.ko ? +pata_serverworks.ko ? +pata_sil680.ko ? +pata_sl82c105.ko ? +pata_triflex.ko ? +pata_via.ko ? +pata_winbond.ko ? --- linux-3.13.0.orig/debian.master/d-i/modules/pcmcia-modules +++ linux-3.13.0/debian.master/d-i/modules/pcmcia-modules @@ -0,0 +1,8 @@ +i82092 ? +i82365 ? +pcmcia ? +pcmcia_core ? +pd6729 ? +rsrc_nonstatic ? +tcic ? +yenta_socket ? --- linux-3.13.0.orig/debian.master/d-i/modules/pcmcia-storage-modules +++ linux-3.13.0/debian.master/d-i/modules/pcmcia-storage-modules @@ -0,0 +1,6 @@ +pata_pcmcia ? +qlogic_cs ? +fdomain_cs ? +aha152x_cs ? +nsp_cs ? +sym53c500_cs ? --- linux-3.13.0.orig/debian.master/d-i/modules/plip-modules +++ linux-3.13.0/debian.master/d-i/modules/plip-modules @@ -0,0 +1 @@ +plip ? --- linux-3.13.0.orig/debian.master/d-i/modules/ppp-modules +++ linux-3.13.0/debian.master/d-i/modules/ppp-modules @@ -0,0 +1,6 @@ +ppp_async ? +ppp_deflate ? +ppp_mppe ? +pppoe ? +pppox ? +ppp_synctty ? --- linux-3.13.0.orig/debian.master/d-i/modules/sata-modules +++ linux-3.13.0/debian.master/d-i/modules/sata-modules @@ -0,0 +1,18 @@ +sata_inic162x.ko ? +sata_mv.ko ? +sata_nv.ko ? +sata_promise.ko ? +sata_qstor.ko ? +sata_sil24.ko ? +sata_sil.ko ? +sata_sis.ko ? +sata_svw.ko ? +sata_sx4.ko ? +sata_uli.ko ? +sata_via.ko ? +sata_vsc.ko ? +ahci_platform ? +ahci ? +ahci_xgene ? +acard-ahci ? +libahci ? --- linux-3.13.0.orig/debian.master/d-i/modules/scsi-modules +++ linux-3.13.0/debian.master/d-i/modules/scsi-modules @@ -0,0 +1,128 @@ +# SCSI +raid_class ? +scsi_transport_spi ? +scsi_transport_fc ? +scsi_transport_iscsi ? +scsi_transport_sas ? +iscsi_tcp ? +libiscsi ? +amiga7xx ? +a3000 ? +a2091 ? +gvp11 ? +mvme147 ? +sgiwd93 ? +cyberstorm ? +cyberstormII ? +blz2060 ? +blz1230 ? +fastlane ? +oktagon_esp_mod ? +atari_scsi ? +mac_scsi ? +mac_esp ? +sun3_scsi ? +mvme16x ? +bvme6000 ? +sim710 ? +advansys ? +psi240i ? +BusLogic ? +dpt_i2o ? +u14-34f ? +ultrastor ? +aha152x ? +aha1542 ? +aha1740 ? +aic7xxx_old ? +ips ? +fd_mcs ? +fdomain ? +fnic ? +in2000 ? +g_NCR5380 ? +g_NCR5380_mmio ? +NCR53c406a ? +NCR_D700 ? +NCR_Q720_mod ? +sym53c416 ? +qlogicfas408 ? +qla1280 ? +pas16 ? +seagate ? +seagate ? +t128 ? +dmx3191d ? +dtc ? +zalon7xx ? +eata_pio ? +wd7000 ? +mca_53c9x ? +ibmmca ? +eata ? +dc395x ? +tmscsim ? +megaraid ? +atp870u ? +esp ? +gdth ? +initio ? +a100u2w ? +qlogicpti ? +ide-scsi ? +mesh ? +mac53c94 ? +pluto ? +dec_esp ? +3w-xxxx ? +3w-9xxx ? +ppa ? +imm ? +jazz_esp ? +sun3x_esp ? +fcal ? +lasi700 ? +nsp32 ? +ipr ? +hptiop ? +stex ? +osst ? +sg ? +ch ? +scsi_debug ? +aacraid ? +aic7xxx ? +aic79xx ? +aic94xx ? +arcmsr ? +acornscsi_mod ? +arxescsi ? +cumana_1 ? +cumana_2 ? +ecoscsi ? +oak ? +powertec ? +eesox ? +ibmvscsic ? +libsas ? +lpfc ? +megaraid_mm ? +megaraid_mbox ? +megaraid_sas ? +qla2xxx ? +sym53c8xx ? +qla4xxx ? +mvsas ? +vmw_pvscsi ? +ums-cypress ? +be2iscsi ? +3w-sas ? +isci ? +mlx4_ib ? +mlx5_ib ? + +# device handlers +scsi_dh_alua ? +scsi_dh_emc ? +scsi_dh_rdac ? +scsi_dh_hp_sw ? --- linux-3.13.0.orig/debian.master/d-i/modules/serial-modules +++ linux-3.13.0/debian.master/d-i/modules/serial-modules @@ -0,0 +1,4 @@ +generic_serial ? +serial_cs ? +synclink_cs ? +hyperv-keyboard ? --- linux-3.13.0.orig/debian.master/d-i/modules/speakup-modules +++ linux-3.13.0/debian.master/d-i/modules/speakup-modules @@ -0,0 +1,16 @@ +speakup ? +speakup_acntpc ? +speakup_acntsa ? +speakup_apollo ? +speakup_audptr ? +speakup_bns ? +speakup_decext ? +speakup_dectlk ? +speakup_dtlk ? +speakup_dummy ? +speakup_keypc ? +speakup_ltlk ? +speakup_soft ? +speakup_spkout ? +speakup_txprt ? +speakup_decpc ? --- linux-3.13.0.orig/debian.master/d-i/modules/squashfs-modules +++ linux-3.13.0/debian.master/d-i/modules/squashfs-modules @@ -0,0 +1 @@ +squashfs ? --- linux-3.13.0.orig/debian.master/d-i/modules/storage-core-modules +++ linux-3.13.0/debian.master/d-i/modules/storage-core-modules @@ -0,0 +1,10 @@ +# Core stacks +usb-storage ? + +# Block level + +# Loop modules +cryptoloop ? + +# Needs to be here for better cdrom initrd layout +isofs ? --- linux-3.13.0.orig/debian.master/d-i/modules/usb-modules +++ linux-3.13.0/debian.master/d-i/modules/usb-modules @@ -0,0 +1,10 @@ +ehci-hcd ? +isp116x-hcd ? +isp1760 ? +ohci-hcd ? +r8a66597-hcd ? +sl811_cs ? +sl811-hcd ? +u132-hcd ? +uhci-hcd ? +xhci-hcd ? --- linux-3.13.0.orig/debian.master/d-i/modules/virtio-modules +++ linux-3.13.0/debian.master/d-i/modules/virtio-modules @@ -0,0 +1,11 @@ +virtio_balloon ? +virtio_pci ? +virtio_ring ? +virtio-rng ? +virtio_scsi ? +hv_vmbus ? +hv_utils ? +hv_netvsc ? +hv_mouse ? +hv_storvsc ? +hv_balloon ? --- linux-3.13.0.orig/debian.master/d-i/modules/vlan-modules +++ linux-3.13.0/debian.master/d-i/modules/vlan-modules @@ -0,0 +1,3 @@ +slp ? +garp ? +8021q ? --- linux-3.13.0.orig/debian.master/d-i/package-list +++ linux-3.13.0/debian.master/d-i/package-list @@ -0,0 +1,202 @@ +Package: kernel-image +Provides: ext3-modules, ext4-modules +Provides_amd64: efi-modules, ext3-modules, ext4-modules +Provides_i386: efi-modules, ext3-modules, ext4-modules +Provides_ppc64el: ext3-modules, ext4-modules, fat-modules + +Package: fat-modules +Depends: kernel-image +Priority: standard +Description: FAT filesystem support + This includes Windows FAT and VFAT support. + +Package: fb-modules +Depends: kernel-image +Priority: standard +Description: Framebuffer modules + +Package: firewire-core-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: Firewire (IEEE-1394) Support + +Package: floppy-modules +Depends: kernel-image +Priority: standard +Description: Floppy driver support + +Package: fs-core-modules +Depends: kernel-image +Priority: standard +Provides: ext2-modules, jfs-modules, reiserfs-modules, xfs-modules +Description: Base filesystem modules + This includes jfs, reiserfs and xfs. + +Package: fs-secondary-modules +Depends: kernel-image, fat-modules +Priority: standard +Provides: btrfs-modules, ntfs-modules, hfs-modules +Description: Extra filesystem modules + This includes support for Windows NTFS and MacOS HFS/HFSPlus + +Package: input-modules +Depends: kernel-image, usb-modules +Priority: standard +Description: Support for various input methods + +Package: irda-modules +Depends: kernel-image, nic-shared-modules +Priority: standard +Description: Support for Infrared protocols + +Package: md-modules +Depends: kernel-image +Priority: standard +Provides: crypto-dm-modules +Description: Multi-device support (raid, device-mapper, lvm) + +Package: nic-modules +Depends: kernel-image, nic-shared-modules, virtio-modules +Priority: standard +Description: Network interface support + +Package: nic-pcmcia-modules +Depends: kernel-image, nic-shared-modules, nic-modules +Priority: standard +Description: PCMCIA network interface support + +Package: nic-usb-modules +Depends: kernel-image, nic-shared-modules, usb-modules +Priority: standard +Description: USB network interface support + +Package: nic-shared-modules +Depends: kernel-image, crypto-modules +Priority: standard +Description: nic shared modules + This package contains modules which support nic modules + +Package: parport-modules +Depends: kernel-image +Priority: standard +Description: Parallel port support + +Package: pata-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: PATA support modules + +Package: pcmcia-modules +Depends: kernel-image +Priority: standard +Description: PCMCIA Modules + +Package: pcmcia-storage-modules +Depends: kernel-image, scsi-modules +Priority: standard +Description: PCMCIA storage support + +Package: plip-modules +Depends: kernel-image, nic-shared-modules, parport-modules +Priority: standard +Description: PLIP (parallel port) networking support + +Package: ppp-modules +Depends: kernel-image, nic-shared-modules, serial-modules +Priority: standard +Description: PPP (serial port) networking support + +Package: sata-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: SATA storage support + +Package: scsi-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: SCSI storage support + +Package: serial-modules +Depends: kernel-image +Priority: standard +Description: Serial port support + +Package: storage-core-modules +Depends: kernel-image +Priority: standard +Provides: loop-modules +Description: Core storage support + Includes core SCSI, LibATA, USB-Storage. Also includes related block + devices for CD, Disk and Tape medium (and IDE Floppy). + +Package: usb-modules +Depends: kernel-image, storage-core-modules +Priority: standard +Description: Core USB support + +Package: nfs-modules +Priority: standard +Depends: kernel-image +Description: NFS filesystem drivers + Includes the NFS client driver, and supporting modules. + +Package: block-modules +Priority: standard +Provides: nbd-modules +Depends: kernel-image, storage-core-modules, parport-modules, virtio-modules +Description: Block storage devices + This package contains the block storage devices, including DAC960 and + paraide. + +Package: message-modules +Priority: standard +Depends: kernel-image, storage-core-modules, scsi-modules +Description: Fusion and i2o storage modules + This package containes the fusion and i2o storage modules. + +Package: crypto-modules +Priority: extra +Depends: kernel-image +Description: crypto modules + This package contains crypto modules. + +Package: virtio-modules +Priority: standard +Depends: kernel-image +Description: VirtIO Modules + Includes modules for VirtIO (virtual machine, generally kvm guests) + +Package: socket-modules +Depends: kernel-image +Priority: standard +Description: Unix socket support + +Package: mouse-modules +Depends: kernel-image, input-modules, usb-modules +Priority: extra +Description: Mouse support + This package contains mouse drivers for the Linux kernel. + +Package: squashfs-modules +Depends: kernel-image +Priority: extra +Description: squashfs modules + This package contains squashfs modules. + +Package: vlan-modules +Depends: kernel-image +Priority: extra +Description: vlan modules + This package contains vlan (8021.Q) modules. + +Package: ipmi-modules +Depends: kernel-image +Priority: standard +Description: ipmi modules + +Package: multipath-modules +Depends: kernel-image +Priority: extra +Description: DM-Multipath support + This package contains modules for device-mapper multipath support. + --- linux-3.13.0.orig/debian.master/etc/getabis +++ linux-3.13.0/debian.master/etc/getabis @@ -0,0 +1,19 @@ +repo_list=( + "http://archive.ubuntu.com/ubuntu/pool/main/l/linux" + "http://ports.ubuntu.com/ubuntu-ports/pool/main/l/linux" + "http://archive.ubuntu.com/ubuntu/pool/universe/l/linux" + "http://ports.ubuntu.com/ubuntu-ports/pool/universe/l/linux" + "http://ppa.launchpad.net/canonical-kernel-team/ppa/ubuntu/pool/main/l/linux" +) + +package_prefixes linux-image linux-image-extra + +getall armhf generic +getall armhf generic-lpae +getall amd64 generic lowlatency +getall i386 generic lowlatency +getall arm64 generic +getall ppc64el generic + +# Ports arches and flavours. +getall powerpc powerpc-smp powerpc64-smp powerpc-e500 powerpc-e500mc powerpc64-emb --- linux-3.13.0.orig/debian.master/etc/kernelconfig +++ linux-3.13.0/debian.master/etc/kernelconfig @@ -0,0 +1,7 @@ +if [ "$variant" = "ports" ]; then + archs="" + family='ports' +else + archs="amd64 i386 armhf arm64 ppc64el powerpc" + family='ubuntu' +fi --- linux-3.13.0.orig/debian.master/rules.d/amd64.mk +++ linux-3.13.0/debian.master/rules.d/amd64.mk @@ -0,0 +1,16 @@ +human_arch = 64 bit x86 +build_arch = x86_64 +header_arch = $(build_arch) +defconfig = defconfig +flavours = generic lowlatency +build_image = bzImage +kernel_file = arch/$(build_arch)/boot/bzImage +install_file = vmlinuz +loader = grub +no_dumpfile = true +uefi_signed = true +do_tools_cpupower = true +do_tools_perf = true +do_tools_x86 = true +do_tools_hyperv = true +do_extras_package = true --- linux-3.13.0.orig/debian.master/rules.d/arm64.mk +++ linux-3.13.0/debian.master/rules.d/arm64.mk @@ -0,0 +1,18 @@ +human_arch = ARMv8 +build_arch = arm64 +header_arch = arm64 +defconfig = defconfig +flavours = generic +build_image = Image +kernel_file = arch/$(build_arch)/boot/Image +install_file = vmlinuz +no_dumpfile = true + +loader = grub + +do_tools_cpupower = true +do_tools_perf = true + +dtb_files_generic += apm-mustang.dtb +dtb_files_generic += foundation-v8.dtb +dtb_files_generic += rtsm_ve-aemv8a.dtb --- linux-3.13.0.orig/debian.master/rules.d/armhf.mk +++ linux-3.13.0/debian.master/rules.d/armhf.mk @@ -0,0 +1,35 @@ +human_arch = ARM (hard float) +build_arch = arm +header_arch = arm +defconfig = defconfig +flavours = generic generic-lpae +build_image = zImage +kernel_file = arch/$(build_arch)/boot/zImage +install_file = vmlinuz +no_dumpfile = true + +loader = grub + +do_tools_cpupower = true +do_tools_perf = true + +# Flavour specific configuration. +dtb_files_generic += highbank.dtb +dtb_files_generic += imx6q-sabrelite.dtb +dtb_files_generic += imx6dl-wandboard.dtb +dtb_files_generic += imx6q-wandboard.dtb +dtb_files_generic += omap3-beagle-xm.dtb +dtb_files_generic += omap4-panda.dtb +dtb_files_generic += omap4-panda-es.dtb +dtb_files_generic += tegra20-harmony.dtb +dtb_files_generic += tegra20-paz00.dtb +dtb_files_generic += tegra20-seaboard.dtb +dtb_files_generic += tegra20-trimslice.dtb +dtb_files_generic += tegra20-ventana.dtb +dtb_files_generic += tegra20-whistler.dtb +dtb_files_generic += am335x-bone.dtb +dtb_files_generic += am335x-boneblack.dtb +dtb_files_generic += vexpress-v2p-ca9.dtb + +dtb_files_generic-lpae += highbank.dtb +dtb_files_generic-lpae += vexpress-v2p-ca15-tc1.dtb --- linux-3.13.0.orig/debian.master/rules.d/i386.mk +++ linux-3.13.0/debian.master/rules.d/i386.mk @@ -0,0 +1,14 @@ +human_arch = 32 bit x86 +build_arch = i386 +header_arch = x86_64 +defconfig = defconfig +flavours = generic lowlatency +build_image = bzImage +kernel_file = arch/$(build_arch)/boot/bzImage +install_file = vmlinuz +loader = grub +no_dumpfile = true +do_tools_cpupower = true +do_tools_perf = true +do_tools_x86 = true +do_extras_package = true --- linux-3.13.0.orig/debian.master/rules.d/powerpc.mk +++ linux-3.13.0/debian.master/rules.d/powerpc.mk @@ -0,0 +1,29 @@ +human_arch = PowerPC (32 bit userspace) +build_arch = powerpc +header_arch = $(build_arch) +defconfig = pmac32_defconfig +flavours = powerpc-smp powerpc64-smp powerpc-e500 powerpc-e500mc powerpc64-emb +build_image = zImage +kernel_file = $(shell if [ ! -f $(builddir)/build-$*/vmlinux.strip ] && \ + [ -f $(builddir)/build-$*/vmlinux.strip.gz ]; then \ + gunzip -c $(builddir)/build-$*/vmlinux.strip.gz \ + > $(builddir)/build-$*/vmlinux.strip; \ + fi && echo vmlinux.strip) +install_file = vmlinux + +# These flavours differ +build_image_powerpc-e500mc = uImage +kernel_file_powerpc-e500mc = arch/powerpc/boot/uImage + +build_image_powerpc-e500 = uImage +kernel_file_powerpc-e500 = arch/powerpc/boot/uImage + +loader = yaboot + +custom_flavours = + +no_dumpfile = true +do_tools_cpupower = true +do_tools_perf = true + +family = ubuntu --- linux-3.13.0.orig/debian.master/rules.d/ppc64el.mk +++ linux-3.13.0/debian.master/rules.d/ppc64el.mk @@ -0,0 +1,16 @@ +human_arch = PowerPC 64el +build_arch = powerpc +header_arch = $(build_arch) +defconfig = pseries_le_defconfig +flavours = generic +build_image = vmlinux.strip +kernel_file = arch/powerpc/boot/vmlinux.strip +install_file = vmlinux +no_dumpfile = true +loader = grub +do_extras_package = true + +do_tools_cpupower = true +do_tools_perf = true + +#do_flavour_image_package = false --- linux-3.13.0.orig/debian.master/rules.d/x32.mk +++ linux-3.13.0/debian.master/rules.d/x32.mk @@ -0,0 +1,13 @@ +human_arch = 64 bit x86 (32 bit userspace) +build_arch = x86_64 +header_arch = $(build_arch) +defconfig = defconfig +flavours = +build_image = bzImage +kernel_file = arch/$(build_arch)/boot/bzImage +install_file = vmlinuz +loader = grub +no_dumpfile = true +uefi_signed = true + +do_flavour_image_package = false --- linux-3.13.0.orig/debian/changelog +++ linux-3.13.0/debian/changelog @@ -0,0 +1,12351 @@ +linux (3.13.0-29.53) trusty; urgency=low + + [ Upstream Kernel Changes ] + + * futex-prevent-requeue-pi-on-same-futex.patch futex: Forbid uaddr == + uaddr2 in futex_requeue(..., requeue_pi=1) + - LP: #1326367 + - CVE-2014-3153 + * futex: Validate atomic acquisition in futex_lock_pi_atomic() + - LP: #1326367 + - CVE-2014-3153 + * futex: Always cleanup owner tid in unlock_pi + - LP: #1326367 + - CVE-2014-3153 + * futex: Make lookup_pi_state more robust + - LP: #1326367 + - CVE-2014-3153 + + -- Brad Figg Wed, 04 Jun 2014 08:25:41 -0700 + +linux (3.13.0-29.52) trusty; urgency=low + + [ Luis Henriques ] + + * Release Tracking Bug + - re-used previous tracking bug + + [ Adam Conrad ] + + * [Config] Normalize AHCI configs on powerpc/ppc64el with the rest of the + architectures + - LP: #1323980 + + [ Tanmay Inamdar ] + + * SAUCE: Add MSI/MSI-X driver for APM PCI bus + - LP: #1318977 + + -- Luis Henriques Wed, 28 May 2014 09:38:41 +0100 + +linux (3.13.0-28.51) trusty; urgency=low + + [ Luis Henriques ] + + * Release Tracking Bug + - LP: #1322112 + + [ Adam Lee ] + + * SAUCE: (no-up) rtlwifi: rtl8723be: disable MSI interrupts mode + - LP: #1310512, #1320070 + + [ Andy Whitcroft ] + + * [Packaging] ppc64el is a powerpc kernel arch and needs its quirks + - LP: #1318848 + + [ Ben Collins ] + + * [Config] Switch to grub-ieee1275 as recommended on book3e systems + - LP: #1318629 + + [ Upstream Kernel Changes ] + + * Revert "PCI: Enable INTx in pci_reenable_device() only when MSI/MSI-X + not enabled" + - LP: #1320946 + * Bluetooth: allocate static minor for vhci + - LP: #1317336 + * core, nfqueue, openvswitch: Orphan frags in skb_zerocopy and handle + errors + - LP: #1320946 + * __dentry_path() fixes + - LP: #1320946 + * drm/i915: quirk invert brightness for Acer Aspire 5336 + - LP: #1320946 + * w1: fix w1_send_slave dropping a slave id + - LP: #1320946 + * ARM: 7954/1: mm: remove remaining domain support from ARMv6 + - LP: #1320946 + * matroxfb: restore the registers M_ACCESS and M_PITCH + - LP: #1320946 + * framebuffer: fix cfb_copyarea + - LP: #1320946 + * mach64: use unaligned access + - LP: #1320946 + * mach64: fix cursor when character width is not a multiple of 8 pixels + - LP: #1320946 + * tgafb: fix mode setting with fbset + - LP: #1320946 + * tgafb: fix data copying + - LP: #1320946 + * hvc: ensure hvc_init is only ever called once in hvc_console.c + - LP: #1320946 + * ARM: dts: Keep G3D regulator always on for exynos5250-arndale + - LP: #1320946 + * PCI: mvebu: Fix potential issue in range parsing + - LP: #1320946 + * usb: dwc3: fix wrong bit mask in dwc3_event_devt + - LP: #1320946 + * x86, AVX-512: AVX-512 Feature Detection + - LP: #1320946 + * x86, AVX-512: Enable AVX-512 States Context Switch + - LP: #1320946 + * s390/cio: fix driver callback initialization for ccw consoles + - LP: #1320946 + * ARM: Fix default CPU selection for ARCH_MULTI_V5 + - LP: #1320946 + * omap3isp: preview: Fix the crop margins + - LP: #1320946 + * ACPICA: Restore code that repairs NULL package elements in return + values. + - LP: #1320946 + * media: gspca: sn9c20x: add ID for Genius Look 1320 V2 + - LP: #1320946 + * m88rs2000: add caps FE_CAN_INVERSION_AUTO + - LP: #1320946 + * m88rs2000: prevent frontend crash on continuous transponder scans + - LP: #1320946 + * mmc: sdhci-bcm-kona: fix build errors when built-in + - LP: #1320946 + * usb: musb: avoid NULL pointer dereference + - LP: #1320946 + * uvcvideo: Do not use usb_set_interface on bulk EP + - LP: #1320946 + * drm/i915: Don't clobber CHICKEN_PIPESL_1 on BDW + - LP: #1320946 + * usb: dwc3: fix randconfig build errors + - LP: #1320946 + * usb: gadget: atmel_usba: fix crashed during stopping when DEBUG is + enabled + - LP: #1320946 + * blktrace: fix accounting of partially completed requests + - LP: #1320946 + * rtlwifi: rtl8192cu: Fix too long disable of IRQs + - LP: #1320946 + * rtlwifi: rtl8192se: Fix too long disable of IRQs + - LP: #1320946 + * rtlwifi: rtl8188ee: Fix too long disable of IRQs + - LP: #1320946 + * rtlwifi: rtl8723ae: Fix too long disable of IRQs + - LP: #1320946 + * xhci: Prevent runtime pm from autosuspending during initialization + - LP: #1320946 + * staging:serqt_usb2: Fix sparse warning restricted __le16 degrades to + integer + - LP: #1320946 + * mtd: atmel_nand: Disable subpage NAND write when using Atmel PMECC + - LP: #1320946 + * iwlwifi: dvm: take mutex when sending SYNC BT config command + - LP: #1320946 + * virtio_balloon: don't softlockup on huge balloon changes. + - LP: #1320946 + * arm64: Make DMA coherent and strongly ordered mappings not executable + - LP: #1320946 + * arm64: Do not synchronise I and D caches for special ptes + - LP: #1320946 + * ARM: OMAP2+: INTC: Acknowledge stuck active interrupts + - LP: #1320946 + * ARM: dts: am33xx: correcting dt node unit address for usb + - LP: #1320946 + * mtip32xx: Set queue bounce limit + - LP: #1320946 + * mtip32xx: Unmap the DMA segments before completing the IO request + - LP: #1320946 + * mtip32xx: mtip_async_complete() bug fixes + - LP: #1320946 + * ath9k: fix ready time of the multicast buffer queue + - LP: #1320946 + * KVM: s390: Optimize ucontrol path + - LP: #1320946 + * mei: fix memory leak of pending write cb objects + - LP: #1320946 + * usb: gadget: tcm_usb_gadget: stop format strings + - LP: #1320946 + * usb: phy: Add ulpi IDs for SMSC USB3320 and TI TUSB1210 + - LP: #1320946 + * USB: unbind all interfaces before rebinding any + - LP: #1320946 + * IB/ipath: Fix potential buffer overrun in sending diag packet routine + - LP: #1320946 + * IB/qib: Fix debugfs ordering issue with multiple HCAs + - LP: #1320946 + * IB/qib: add missing braces in do_qib_user_sdma_queue_create() + - LP: #1320946 + * IB/nes: Return an error on ib_copy_from_udata() failure instead of NULL + - LP: #1320946 + * ALSA: hda/realtek - Restore default value for ALC283 + - LP: #1320946 + * mfd: sec-core: Fix possible NULL pointer dereference when i2c_new_dummy + error + - LP: #1320946 + * regulator: arizona-ldo1: Correct default regulator init_data + - LP: #1320946 + * ASoC: cs42l73: Fix mask bits for SOC_VALUE_ENUM_SINGLE + - LP: #1320946 + * ASoC: cs42l52: Fix mask bits for SOC_VALUE_ENUM_SINGLE + - LP: #1320946 + * drm/i915: Do not dereference pointers from ring buffer in evict event + - LP: #1320946 + * mfd: Include all drivers in subsystem menu + - LP: #1320946 + * mfd: max8997: Fix possible NULL pointer dereference on i2c_new_dummy + error + - LP: #1320946 + * mfd: max77686: Fix possible NULL pointer dereference on i2c_new_dummy + error + - LP: #1320946 + * mfd: max8998: Fix possible NULL pointer dereference on i2c_new_dummy + error + - LP: #1320946 + * mfd: max8925: Fix possible NULL pointer dereference on i2c_new_dummy + error + - LP: #1320946 + * mfd: 88pm860x: Fix I2C device resource leak on regmap init fail + - LP: #1320946 + * mfd: 88pm860x: Fix possible NULL pointer dereference on i2c_new_dummy + error + - LP: #1320946 + * mfd: max77693: Fix possible NULL pointer dereference on i2c_new_dummy + error + - LP: #1320946 + * mfd: 88pm800: Fix I2C device resource leak if probe fails + - LP: #1320946 + * mfd: tps65910: Fix possible invalid pointer dereference on + regmap_add_irq_chip fail + - LP: #1320946 + * MIPS: KVM: Pass reserved instruction exceptions to guest + - LP: #1320946 + * ASoC: cs42l51: Fix SOC_DOUBLE_R_SX_TLV shift values for ADC, PCM, and + Analog kcontrols + - LP: #1320946 + * mac80211: fix potential use-after-free + - LP: #1320946 + * mac80211: fix suspend vs. authentication race + - LP: #1320946 + * mac80211: fix WPA with VLAN on AP side with ps-sta again + - LP: #1320946 + * pid: get pid_t ppid of task in init_pid_ns + - LP: #1320946 + * audit: restore order of tty and ses fields in log output + - LP: #1320946 + * audit: convert PPIDs to the inital PID namespace. + - LP: #1320946 + * mfd: kempld-core: Fix potential hang-up during boot + - LP: #1320946 + * drm/i915: Fix unsafe loop iteration over vma whilst unbinding them + - LP: #1320946 + * powerpc/compat: 32-bit little endian machine name is ppcle, not ppc + - LP: #1320946 + * clk: s2mps11: Fix possible NULL pointer dereference + - LP: #1320946 + * spi: efm32: use $vendor,$device scheme for compatible string + - LP: #1320946 + * ALSA: hda - add headset mic detect quirks for three Dell laptops + - LP: #1297581, #1320946 + * KVM: PPC: Book3S HV: Fix KVM hang with CONFIG_KVM_XICS=n + - LP: #1320946 + * gpio: mxs: Allow for recursive enable_irq_wake() call + - LP: #1320946 + * nfsd4: buffer-length check for SUPPATTR_EXCLCREAT + - LP: #1320946 + * nfsd4: session needs room for following op to error out + - LP: #1320946 + * nfsd4: leave reply buffer space for failed setattr + - LP: #1320946 + * nfsd4: fix test_stateid error reply encoding + - LP: #1320946 + * nfsd: notify_change needs elevated write count + - LP: #1320946 + * dm cache: prevent corruption caused by discard_block_size > + cache_block_size + - LP: #1320946 + * dm transaction manager: fix corruption due to non-atomic transaction + commit + - LP: #1320946 + * dm: take care to copy the space map roots before locking the superblock + - LP: #1320946 + * aio: v4 ensure access to ctx->ring_pages is correctly serialised for + migration + - LP: #1320946 + * NFSD: Traverse unconfirmed client through hash-table + - LP: #1320946 + * lockd: ensure we tear down any live sockets when socket creation fails + during lockd_up + - LP: #1320946 + * drm/i915/tv: fix gen4 composite s-video tv-out + - LP: #1320946 + * dm thin: fix dangling bio in process_deferred_bios error path + - LP: #1320946 + * em28xx: fix PCTV 290e LNA oops + - LP: #1320946 + * NFSv4: Fix a use-after-free problem in open() + - LP: #1320946 + * nfsd4: fix setclientid encode size + - LP: #1320946 + * MIPS: Hibernate: Flush TLB entries in swsusp_arch_resume() + - LP: #1320946 + * ALSA: hda - Enable beep for ASUS 1015E + - LP: #1320946 + * nfsd: check passed socket's net matches NFSd superblock's one + - LP: #1320946 + * s390/bitops,atomic: add missing memory barriers + - LP: #1320946 + * IB/mthca: Return an error on ib_copy_to_udata() failure + - LP: #1320946 + * IB/ehca: Returns an error on ib_copy_to_udata() failure + - LP: #1320946 + * drm/qxl: unset a pointer in sync_obj_unref + - LP: #1320946 + * smarter propagate_mnt() + - LP: #1320946 + * don't bother with {get,put}_write_access() on non-regular files + - LP: #1320946 + * reiserfs: fix race in readdir + - LP: #1320946 + * drm/vmwgfx: correct fb_fix_screeninfo.line_length + - LP: #1320946 + * ALSA: hda - Fix silent speaker output due to mute LED fixup + - LP: #1320946 + * drm/radeon: clear needs_reset flag if IB test fails + - LP: #1320946 + * drm/radeon: call drm_edid_to_eld when we update the edid + - LP: #1320946 + * drm/radeon: fix endian swap on hawaii clear state buffer setup + - LP: #1320946 + * drm/radeon: fix typo in spectre_golden_registers + - LP: #1320946 + * sh: fix format string bug in stack tracer + - LP: #1320946 + * ocfs2: dlm: fix lock migration crash + - LP: #1320946 + * ocfs2: dlm: fix recovery hung + - LP: #1320946 + * ocfs2: do not put bh when buffer_uptodate failed + - LP: #1320946 + * ocfs2: fix panic on kfree(xattr->name) + - LP: #1320946 + * xattr: guard against simultaneous glibc header inclusion + - LP: #1320946 + * drm/i915: move power domain init earlier during system resume + - LP: #1320946 + * Skip intel_crt_init for Dell XPS 8700 + - LP: #1320946 + * dm cache: fix a lock-inversion + - LP: #1320946 + * thinkpad_acpi: Fix inconsistent mute LED after resume + - LP: #1320946 + * iser-target: Add missing se_cmd put for WRITE_PENDING in tx_comp_err + - LP: #1320946 + * iscsi-target: Fix ERL=2 ASYNC_EVENT connection pointer bug + - LP: #1320946 + * Target/sbc: Initialize COMPARE_AND_WRITE write_sg scatterlist + - LP: #1320946 + * mm: page_alloc: spill to remote nodes before waking kswapd + - LP: #1320946 + * mm: try_to_unmap_cluster() should lock_page() before mlocking + - LP: #1320946 + * mm: hugetlb: fix softlockup when a large number of hugepages are freed. + - LP: #1320946 + * hung_task: check the value of "sysctl_hung_task_timeout_sec" + - LP: #1320946 + * DRM: armada: fix corruption while loading cursors + - LP: #1320946 + * ALSA: ice1712: Fix boundary checks in PCM pointer ops + - LP: #1320946 + * lib/percpu_counter.c: fix bad percpu counter state during suspend + - LP: #1320946 + * md/raid1: r1buf_pool_alloc: free allocate pages when subsequent + allocation fails. + - LP: #1320946 + * ALSA: hda - add headset mic detect quirk for a Dell laptop + - LP: #1297581, #1320946 + * b43: Fix machine check error due to improper access of + B43_MMIO_PSM_PHY_HDR + - LP: #1320946 + * x86-64, modify_ldt: Ban 16-bit segments on 64-bit kernels + - LP: #1320946 + * target/tcm_fc: Fix use-after-free of ft_tpg + - LP: #1320946 + * ib_srpt: Use correct ib_sg_dma primitives + - LP: #1320946 + * Linux 3.13.11.1 + - LP: #1320946 + * Linux 3.13.11.2 + - LP: #1320946 + * hp-wireless: new driver for hp wireless button for Windows 8 + - LP: #1303737 + * x86, platform: Make HP_WIRELESS option text more descriptive + - LP: #1303737 + * ACPI: blacklist win8 OSI for Dell Inspiron 7737 + - LP: #1288161 + + -- Luis Henriques Thu, 22 May 2014 12:20:44 +0100 + +linux (3.13.0-27.50) trusty; urgency=low + + [ Brad Figg ] + + * Revert "rtlwifi: Set the link state" + + -- Brad Figg Thu, 15 May 2014 10:21:43 -0700 + +linux (3.13.0-27.49) trusty; urgency=low + + [ Brad Figg ] + + * Revert "SAUCE: (no-up) HID: rmi: do not stop the device at the end of + probe" + * Revert "SAUCE: (no-up) HID: rmi: introduce RMI driver for Synaptics + touchpads" + * Revert "[Config] CONFIG_HID_RMI=m" + + -- Brad Figg Wed, 14 May 2014 10:29:07 -0700 + +linux (3.13.0-26.48) trusty; urgency=low + + [ Benjamin Tissoires ] + + * SAUCE: (no-up) HID: rmi: introduce RMI driver for Synaptics touchpads + - LP: #1305522 + * SAUCE: (no-up) HID: rmi: do not stop the device at the end of probe + - LP: #1305522 + + [ Kamal Mostafa ] + + * Merged back Ubuntu-3.13.0-24.47 security release + * Revert "n_tty: Fix n_tty_write crash when echoing in raw mode" + - LP: #1314762 + * Release Tracking Bug + - LP: #1316835 + + [ Tim Gardner ] + + * [Config] CONFIG_HID_RMI=m + - LP: #1305522 + * [Config] CONFIG_CRYPTO_DEV_NX=n for ppc64el + - LP: #1314625 + * [Config] CONFIG_ZSWAP=y + - LP: #1315203 + * Add rpcsec_gss_krb5 to generic inclusion list + - LP: #769527 + + [ Upstream Kernel Changes ] + + * HID: hidraw: make comment more accurate and nicer + - LP: #1305522 + * HID: remove hid_get_raw_report in struct hid_device + - LP: #1305522 + * HID: i2c-hid: implement ll_driver transport-layer callbacks + - LP: #1305522 + * HID: add inliners for ll_driver transport-layer callbacks + - LP: #1305522 + * HID: Add transport-driver callbacks to the hid_ll_driver struct + - LP: #1305522 + * drm/nouveau: fail runtime pm properly. + - LP: #1313986 + * drm/nouveau: don't suspend/resume display on runtime s/r + - LP: #1313986 + * n_tty: Fix n_tty_write crash when echoing in raw mode + - LP: #1314762 + - CVE-2014-0196 + * floppy: ignore kernel-only members in FDRAWCMD ioctl input + - LP: #1316729 + - CVE-2014-1737 + * floppy: don't write kernel-only members to FDRAWCMD ioctl output + - LP: #1316735 + - CVE-2014-1738 + + -- Kamal Mostafa Tue, 06 May 2014 15:30:29 -0700 + +linux (3.13.0-25.47) trusty; urgency=low + + [ Joseph Salisbury ] + + * Release Tracking Bug + - LP: #1313868 + + [ Adam Lee ] + + * [Config] CONFIG_RTL8723BE=m, CONFIG_RTL8723_COMMON=m + - LP: #1240940 + + [ Alex Hung ] + + * SAUCE: (no-up) dell-led: add mic mute led interface + - LP: #1308297 + + [ Andy Whitcroft ] + + * SAUCE: (no-up) powerpc: Increase COMMAND_LINE_SIZE to 2048 from 512. + - LP: #1306677 + + [ Ben Collins ] + + * [Config] Disable PAMU on Freescale kernels + - LP: #1311738 + + [ Tim Gardner ] + + * Revert "SAUCE: x86, hyperv: bypass the timer_irq_works() check" + - LP: #1311683 + * SAUCE: (no-up) ALSA: usb-audio: Suppress repetitive debug messages from + retire_playback_urb() + - LP: #1305133 + * SAUCE: (no-up) 'BUG:' message unnecessarily triggers kerneloops + - LP: #1305480 + * [Config] CONFIG_POWERNV_CPUFREQ=m + - LP: #1309576 + * [Config] CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y for ppc64el + - LP: #1309576 + * [Config] CONFIG_TRANSPARENT_HUGEPAGE=n for arm64 + - LP: #1309221 + * [Config] CONFIG_MEMCG_KMEM=y + - LP: #1309586 + * [Config] CONFIG_CRASH_DUMP=y for ppc64el + - LP: #1312783 + + [ Upstream Kernel Changes ] + + * Revert "rtlwifi: rtl8188ee: enable MSI interrupts mode" + - LP: #1310512 + * mac80211: add length check in ieee80211_is_robust_mgmt_frame() + - LP: #1240940 + * rtlwifi: rtl8723ae: rtl8723-common: Create new driver for common code + - LP: #1240940 + * rtlwifi: rtl8723ae: rtl8723-common: Copy common firmware code + - LP: #1240940 + * rtlwifi: rtl8723ae: rtl8723-common: Copy common dynamic power + management code + - LP: #1240940 + * rtlwifi: rtl8723be: Add new driver + - LP: #1240940 + * selinux: correctly label /proc inodes in use before the policy is + loaded + - LP: #1309007 + * net: sctp: fix skb leakage in COOKIE ECHO path of chunk->auth_chunk + - LP: #1309007 + * bridge: multicast: add sanity check for query source addresses + - LP: #1309007 + * tipc: allow connection shutdown callback to be invoked in advance + - LP: #1309007 + * tipc: fix connection refcount leak + - LP: #1309007 + * tipc: drop subscriber connection id invalidation + - LP: #1309007 + * tipc: fix memory leak during module removal + - LP: #1309007 + * tipc: don't log disabled tasklet handler errors + - LP: #1309007 + * inet: frag: make sure forced eviction removes all frags + - LP: #1309007 + * net: unix: non blocking recvmsg() should not return -EINTR + - LP: #1309007 + * ipv6: Fix exthdrs offload registration. + - LP: #1309007 + * bnx2: Fix shutdown sequence + - LP: #1309007 + * pkt_sched: fq: do not hold qdisc lock while allocating memory + - LP: #1309007 + * Xen-netback: Fix issue caused by using gso_type wrongly + - LP: #1309007 + * vlan: Set correct source MAC address with TX VLAN offload enabled + - LP: #1309007 + * tcp: tcp_release_cb() should release socket ownership + - LP: #1309007 + * bridge: multicast: add sanity check for general query destination + - LP: #1309007 + * bridge: multicast: enable snooping on general queries only + - LP: #1309007 + * net: socket: error on a negative msg_namelen + - LP: #1309007 + * bonding: set correct vlan id for alb xmit path + - LP: #1309007 + * eth: fec: Fix lost promiscuous mode after reconnecting cable + - LP: #1309007 + * ipv6: Avoid unnecessary temporary addresses being generated + - LP: #1309007 + * ipv6: ip6_append_data_mtu do not handle the mtu of the second fragment + properly + - LP: #1309007 + * net: cdc_ncm: fix control message ordering + - LP: #1309007 + * vxlan: fix potential NULL dereference in arp_reduce() + - LP: #1309007 + * vxlan: fix nonfunctional neigh_reduce() + - LP: #1309007 + * tcp: syncookies: do not use getnstimeofday() + - LP: #1309007 + * rtnetlink: fix fdb notification flags + - LP: #1309007 + * ipmr: fix mfc notification flags + - LP: #1309007 + * ip6mr: fix mfc notification flags + - LP: #1309007 + * net: micrel : ks8851-ml: add vdd-supply support + - LP: #1309007 + * netpoll: fix the skb check in pkt_is_ns + - LP: #1309007 + * tipc: fix spinlock recursion bug for failed subscriptions + - LP: #1309007 + * ip_tunnel: Fix dst ref-count. + - LP: #1309007 + * tg3: Do not include vlan acceleration features in vlan_features + - LP: #1309007 + * virtio-net: correct error handling of virtqueue_kick() + - LP: #1309007 + * usbnet: include wait queue head in device structure + - LP: #1309007 + * vlan: Set hard_header_len according to available acceleration + - LP: #1309007 + * vhost: fix total length when packets are too short + - LP: #1309007 + - CVE-2014-0077 + * tcp: fix get_timewait4_sock() delay computation on 64bit + - LP: #1309007 + * xen-netback: remove pointless clause from if statement + - LP: #1309007 + * ipv6: some ipv6 statistic counters failed to disable bh + - LP: #1309007 + * netlink: don't compare the nul-termination in nla_strcmp + - LP: #1309007 + * xen-netback: disable rogue vif in kthread context + - LP: #1309007 + * Call efx_set_channels() before efx->type->dimension_resources() + - LP: #1309007 + * net: vxlan: fix crash when interface is created with no group + - LP: #1309007 + * isdnloop: Validate NUL-terminated strings from user. + - LP: #1309007 + * isdnloop: several buffer overflows + - LP: #1309007 + * powernow-k6: disable cache when changing frequency + - LP: #1309007 + * powernow-k6: correctly initialize default parameters + - LP: #1309007 + * powernow-k6: reorder frequencies + - LP: #1309007 + * ARC: [nsimosci] Change .dts to use generic 8250 UART + - LP: #1309007 + * ARC: [nsimosci] Unbork console + - LP: #1309007 + * futex: Allow architectures to skip futex_atomic_cmpxchg_inatomic() test + - LP: #1309007 + * m68k: Skip futex_atomic_cmpxchg_inatomic() test + - LP: #1309007 + * crypto: ghash-clmulni-intel - use C implementation for setkey() + - LP: #1309007 + * Linux 3.13.10 + - LP: #1309007 + * cpufreq: powernv: cpufreq driver for powernv platform + - LP: #1309576 + * cpufreq: powernv: Use cpufreq_frequency_table.driver_data to store + pstate ids + - LP: #1309576 + * cpufreq: powernv: Select CPUFreq related Kconfig options for powernv + - LP: #1309576 + * support Thinkpad X1 Carbon 2nd generation's adaptive keyboard + - LP: #1309609 + * save and restore adaptive keyboard mode for suspend and,resume + - LP: #1309609 + * user namespace: fix incorrect memory barriers + - LP: #1311683 + * Char: ipmi_bt_sm, fix infinite loop + - LP: #1311683 + * x86, hyperv: Bypass the timer_irq_works() check + - LP: #1311683 + * x86: Adjust irq remapping quirk for older revisions of 5500/5520 + chipsets + - LP: #1311683 + * PCI: designware: Fix RC BAR to be single 64-bit non-prefetchable memory + BAR + - LP: #1311683 + * PCI: designware: Fix iATU programming for cfg1, io and mem viewport + - LP: #1311683 + * ACPI / button: Add ACPI Button event via netlink routine + - LP: #1311683 + * PCI: Enable INTx in pci_reenable_device() only when MSI/MSI-X not + enabled + - LP: #1311683 + * staging: comedi: 8255_pci: initialize MITE data window + - LP: #1311683 + * tty: Set correct tty name in 'active' sysfs attribute + - LP: #1311683 + * tty: Fix low_latency BUG + - LP: #1311683 + * SCSI: sd: don't fail if the device doesn't recognize SYNCHRONIZE CACHE + - LP: #1311683 + * pid_namespace: pidns_get() should check task_active_pid_ns() != NULL + - LP: #1311683 + * Bluetooth: Fix removing Long Term Key + - LP: #1311683 + * ima: restore the original behavior for sending data with ima template + - LP: #1311683 + * backing_dev: fix hung task on sync + - LP: #1311683 + * bdi: avoid oops on device removal + - LP: #1311683 + * xfs: fix directory hash ordering bug + - LP: #1311683 + * Btrfs: skip submitting barrier for missing device + - LP: #1311683 + * Btrfs: fix deadlock with nested trans handles + - LP: #1311683 + * ext4: fix error return from ext4_ext_handle_uninitialized_extents() + - LP: #1311683 + * ext4: fix partial cluster handling for bigalloc file systems + - LP: #1311683 + * ext4: fix premature freeing of partial clusters split across leaf + blocks + - LP: #1311683 + * jffs2: Fix segmentation fault found in stress test + - LP: #1311683 + * jffs2: Fix crash due to truncation of csize + - LP: #1311683 + * jffs2: avoid soft-lockup in jffs2_reserve_space_gc() + - LP: #1311683 + * jffs2: remove from wait queue after schedule() + - LP: #1311683 + * sparc32: fix build failure for arch_jump_label_transform + - LP: #1311683 + * sparc64: don't treat 64-bit syscall return codes as 32-bit + - LP: #1311683 + * sparc64: Make sure %pil interrupts are enabled during hypervisor yield. + - LP: #1311683 + * wait: fix reparent_leader() vs EXIT_DEAD->EXIT_ZOMBIE race + - LP: #1311683 + * exit: call disassociate_ctty() before exit_task_namespaces() + - LP: #1311683 + * Linux 3.13.11 + - LP: #1311683 + * powerpc/le: Enable RTAS events support + - LP: #1312230 + * net: ipv4: current group_info should be put after using. + - CVE-2014-2851 + * powerpc/relocate fix relocate processing in LE mode + - LP: #1312783 + + -- Joseph Salisbury Mon, 28 Apr 2014 15:02:45 -0400 + +linux (3.13.0-24.47) trusty; urgency=low + + [ Peter Hurley ] + + * n_tty: Fix n_tty_write crash when echoing in raw mode + + -- Brad Figg Wed, 30 Apr 2014 15:08:31 -0700 + +linux (3.13.0-24.46) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i -- add nvme devices to block-modules udeb + - LP: #1303710 + + [ Paolo Pisati ] + + * [Config] build vexpress a9 dtb + - LP: #1303657 + * [Config] disable HVC_DCC + - LP: #1303657 + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1305158 + * rebase to v3.13.9 + * CONFIG_RTLBTCOEXIST=m + - LP: #1296591 + + [ Upstream Kernel Changes ] + + * HID: Bluetooth: hidp: make sure input buffers are big enough + - LP: #1252874 + * ACPI / video: Add systems that should favour native backlight interface + - LP: #1303419 + * rds: prevent dereference of a NULL device in rds_iw_laddr_check + - LP: #1302222 + - CVE-2014-2678 + * x86/efi: Fix 32-bit fallout + - LP: #1301590 + * drm/nouveau/devinit: tidy up the subdev class definition + - LP: #1158689 + * drm/nouveau/device: provide a way for devinit to mark engines as + disabled + - LP: #1158689 + * drm/nv50-/devinit: prevent use of engines marked as disabled by + hw/vbios + - LP: #1158689 + * rtlwifi: btcoexist: Add new mini driver + - LP: #1296591 + * rtlwifi: Prepare existing drivers for new driver + - LP: #1296591 + * rtlwifi: add MSI interrupts mode support + - LP: #1296591 + * rtlwifi: rtl8188ee: enable MSI interrupts mode + - LP: #1296591 + + [ Upstream Kernel Changes ] + + * rebase to v3.13.9 + + -- Tim Gardner Fri, 04 Apr 2014 09:26:27 -0400 + +linux (3.13.0-23.45) trusty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1302083 + + [ Emil Goode ] + + * SAUCE: (no-up) brcmsmac: fix deadlock on missing firmware + - LP: #1300416 + + [ Moni Shoua ] + + * SAUCE: (no-up) IB/core: Don't resolve passive side RoCE L2 address in cma req handler + Merged at the request of Mellanox engineers. It shold be making its way upstream. + http://www.spinics.net/lists/linux-rdma/msg19417.html + + [ Or Gerlitz ] + + * [Config] CONFIG_INFINIBAND_USNIC=m + + [ Tim Gardner ] + + * [Config] CONFIG_MLX4_EN_VXLAN=y + + [ Upstream Kernel Changes ] + + * This set of patches essentially updates the infiniband subsystem to 3.14 plus some + bug fixes from 3.15. The initial set of commits were determined using: + + git log --pretty=oneline --reverse v3.13..cd6362befe4cc7bf589a5236d2a780af2d47bcc9 -- drivers/infiniband drivers/net/ethernet/mellanox include/linux/mlx* include/rdma + + A few tree-wide patches were dropped since they were not essential. + This is the list of commits that were actually applied. As you can see there were + a few back ports, but all were simple context collisions and easily resolved. + + (cherry picked from commit 7c6d74d23a33a946bcf08ba2d3e52d31943b7342) + (cherry picked from commit 7b25d81b7ff03bb1893a9c7f97797b891a772deb) + (cherry picked from commit 73e74ab4e0d030f28d640507998156a22d4211f8) + (cherry picked from commit eb17711bc1d6611e934af5b6dabc225936084128) + (cherry picked from commit 8e1a28e8e6797449dfdfa4739002d1e5939355a8) + (cherry picked from commit 84c864038d6d991be81344fc3168ec2c2f7a8d06) + (cherry picked from commit d03a68f8217ea03492e4f7928db222dc6544792a) + (cherry picked from commit be902ab122fcc59ba6a8588e820c31861d75a5a4) + (cherry picked from commit e4b59a1cb6f8feb03f356b0abfd20451f05d7470) + (cherry picked from commit 0276a330617a0cf380f09e5065299078d3d45886) + (cherry picked from commit 982290a7fe36e528af292d3e3b61939b1900bfc6) + (cherry picked from commit c5266d40b0a26546d0ebedb44dd4145088b85cb8) + (cherry picked from commit 7ffdf726cfe0d188907bdbb0e7729fb35a69c219) + (cherry picked from commit 837052d0ccc5a789a578f8b628ba154b63bd51ea) + (cherry picked from commit c0623e587d869b4b18e077d64a8524ea364b5b77) + (cherry picked from commit ad7d4eaed995d76fb24a18e202fdf5072197ff0a) + (cherry picked from commit 2156d9a8ac0202f0158d407063cb850afffd3f56) + (cherry picked from commit b912b2f8fc71df4c3ffa7a9fe2c2227e8bcdaa07) + (cherry picked from commit 9ba75fb0c4b92416b94640b5a043c323a457f14a) + (cherry picked from commit 74b9c3ea847f060c784e86453f1ad77dd05a7a8f) + (cherry picked from commit e6a767582942d6fd9da0ddea673f5a7017a365c7) + (cherry picked from commit fe5e8a1acc7fd877b6706053cf88c418c33fe7a3) + (cherry picked from commit be8348df6efac6b602f2ad3210139bccf0dbe3d7) + (cherry picked from commit e3cf00d0a87f025db5855a43a67c67a41fa79fef) + (cherry picked from commit 8192d4acb5c5376c0f6756f2106ab243036c8c7d) + (cherry picked from commit 301a0dd68e5ddd22d992a58f466b621987d9df3b) + (cherry picked from commit 2183b990b67b761f81c68a18f60df028e080cf05) + (cherry picked from commit 8af94ac66a4d53a96278ecbb9ef2e8592f0d9ba3) + (cherry picked from commit 256d6a6ac52ee02e897cec88ecc96c3ae7f9cb88) + (cherry picked from commit 60b215e8b267f911751a043de63181dab1b69706) + (cherry picked from commit b85caf479b577f000067002259539ad4341d4530) + (cherry picked from commit 3f92bed3d6c073f41efc0777ecd3442aa1f03d20) + (cherry picked from commit 6214105460842759020bdd7f4dbb50afa1be9d17) + (cherry picked from commit c7845bcafe4d2ecd5c479fa64d1b425c21dde17c) + (cherry picked from commit e45e614e4015a489d2f8013eaed45d498d884e86) + (cherry picked from commit 248567f79304b953ea492fb92ade097b62ed09b2) + (cherry picked from commit 6a54d9f9a04ed35e6615a47974c1ef02ff3a62cb) + (cherry picked from commit c5f855e08a97edc107c4a3b73809ed629c1dcac1) + (cherry picked from commit 9f637f7936025aef57f247b11036bad18bb87c06) + (cherry picked from commit c30392ab5bb536fef268c22804dafded15170d14) + (cherry picked from commit 3108bccb3d9afbd32931d775f5dd5ee157eaa5a9) + (cherry picked from commit d9fe40916387bab884e458c99399c149b033506c) + (cherry picked from commit 24e42754f676d34e5c26d6b7b30f36df8004ec08) + (cherry picked from commit c1be5232d21de68f46637e617225b9b7c586451a) + (cherry picked from commit 90f1d1b41b70474bf73d07d4300196901cd81718) + (cherry picked from commit 240ae00e4d834e387f4f09e236130f520e357a70) + (back ported from commit 4de6580360867d44adecb2d05febed1c8d186c82) + (cherry picked from commit 0a9b7d59d5a8e2b97406a29a8a807bbc5ce7092e) + (cherry picked from commit a37a1a428431d3e7e9f53530b5c56ff7867bd487) + (cherry picked from commit c1c98501121eefa0888a42566ec7233a1626f678) + (back ported from commit dd5f03beb4f76ae65d76d8c22a8815e424fc607c) + (cherry picked from commit c9218a9e677856d6647ea82d821f22ccbffc988c) + (cherry picked from commit f088cbb8d8547a89af258a3223657f9a69b811e4) + (cherry picked from commit 4942c0b4b64478ff45c3bbf4d40aebd66de0bcc5) + (cherry picked from commit 2d97436f5b06217beb6c91a0cd0ae0f0d79b61cc) + (cherry picked from commit 5db5765e255de4072eb0e35facfeafce53af001b) + (cherry picked from commit 61f78268936e781a104b4ac06b7e47d760800c40) + (cherry picked from commit 6dcebe614c667fca73aaf0cfbd1e70bc9179538e) + (cherry picked from commit d1db47c5eed89a1c8b60e780aeadd870bb0d3894) + (cherry picked from commit af2e2e35a23e4aeecfe4332a7140c81e0f09b7e3) + (cherry picked from commit 7b85627b9f02f9b0fb2ef5f021807f4251135857) + (back ported from commit d487ee77740ccf79d7dc1935d4daa77887283028) + (cherry picked from commit 297e0dad720664dad44baa2cdd13f871979fb58c) + (cherry picked from commit eb6ab13267be87dcad3e611500b7cb404ed4479c) + (cherry picked from commit a3a5a82627492c8947d8866ddf421e9248088466) + (cherry picked from commit dc87a90f5d61d7f01cfb63d92d5eaa27718e5b19) + (cherry picked from commit 9bd626e79df67b2ba3b0c91a4640ab7bca1af04d) + (cherry picked from commit 40aca6ffcac57dd9c65877a59a8bbb210c4691ca) + (cherry picked from commit 37721d8501a9a1fbe87527c24d127a914b29fd7f) + (cherry picked from commit ed4c54e5b4baf55a7a67a80fa766334855c94854) + (cherry picked from commit 2f85d24e604c1532723c4b5791816b533baed2c3) + (cherry picked from commit 990acea616e99355703b503c1e50fb9c7ddff6b9) + (cherry picked from commit f282651de676d10e395bc7923f0087fbbba12ed7) + (cherry picked from commit 31ab8acbf6618c89fec77f7706df7daaa319feb5) + (cherry picked from commit 9392fa06411cf93885c4cafc8058085d98f52fec) + (cherry picked from commit 27cdef637c25705b433d5c4deeef4cf8dcb75d6a) + (cherry picked from commit 8ce96afa8239f13bdf5ab35839bac46c103bbedc) + (cherry picked from commit 6cd28f044b47aeeba91807d97d6f3ea5a048e88d) + (cherry picked from commit 5462eddd7a78131ccb514d52473625d99769215e) + (cherry picked from commit 05633102d85b50f35325dfbedafcedd6c5b3264c) + (cherry picked from commit 437708c44395a11e474fb33b4fd7f29483118e51) + (cherry picked from commit d9d5713ca628dc211d8b4a1da5fb9e0cfe592b92) + (cherry picked from commit a384b20e417ae0f5f1f359600b4bdcc34265b256) + (cherry picked from commit 298589b1cb626adf4beba6dd8e3cd4b64e8799be) + (cherry picked from commit e08a8761d89b7625144c3fbf0ff9643159135c96) + (cherry picked from commit 0b6e81b91070bdbe0defb9101384ebb26835e401) + (cherry picked from commit 042b9adae899e1b497282d92205d3fef42d5ca8d) + (cherry picked from commit ada388f7afad1e2e87acbfe30600fdaff9bd6327) + (cherry picked from commit 3bdb31f688276505ede23280885948e934304674) + (cherry picked from commit bde51583f49bd87e452e9504d489926638046b11) + (cherry picked from commit db81a5c374b5bd650c5e6ae85d026709751db103) + (cherry picked from commit 05bdb2ab6b09f2306f0afe0f60f4b9abffa7aba4) + (cherry picked from commit 9e9c47d07d447e09a66ee528c3ebad9ba359af6a) + (cherry picked from commit 1bde6e301cf6217da9238086c958f532b16e504d) + (cherry picked from commit 8c8a49148b95c4d7c5f58a6866a30ea02485d7a3) + (cherry picked from commit 57761d8df8efc7cc1227f9bc22e0dda01b0dd91b) + (cherry picked from commit 676687c69697d2081d25afd14ee90937d1fb0c8e) + (cherry picked from commit 9e65dc371b5c8d7476c81353137efc13cc1bdabd) + (cherry picked from commit 78c0f98cc9dd46824fa66f35f14ea24ba733d145) + (cherry picked from commit 1a4c3a3dc5fdeef2a7bdf4ac7d81df58c3c0a51e) + (cherry picked from commit d07875bd0d1517185534b5f9eef469426ba42cb9) + (cherry picked from commit ab576627c8f97c08297d81537be17df161171923) + (cherry picked from commit a80e21b3b2d151d79bb9be42334ab10d40195324) + (cherry picked from commit 9d8abf45944e4f1c18a04070fc3ed2f3ffcbbcb6) + (cherry picked from commit 4196670be786d529ab7f6c18f5077141ce1b787e) + (cherry picked from commit acc4fccf4eff5b29e545995b75de77e60ea44aae) + (cherry picked from commit 4ce5a5744a2f5479e58c6788cbe3987b8071b62e) + (cherry picked from commit ddf8bd349115c2bc85a62e3d94018c9976ac72f7) + (cherry picked from commit 5071456fe244e409adcda7226e5f0b5d1b879fd3) + (cherry picked from commit ad4885d279b63c65347220236d07669a2f59634b) + (cherry picked from commit b4a26a27287a7f81933ba016aeed6c69dd155323) + (cherry picked from commit 0f0132001fd239bb67c1f68436b95cc79de89736) + (cherry picked from commit 6ecde51dd7894ffe2f959cca1fea3ea2b9ee2394) + (cherry picked from commit 0861565f501ce3fcea9394d4b98c02b1f6de6b9e) + (cherry picked from commit f809309a251a13bd97cc189c3fa428782aab9716) + (cherry picked from commit 7d9eacf9457efc6b614665e1095336c11ad83f0d) + (cherry picked from commit fd8b48b22a2b7cdf21f15b01cae379e6159a7eea) + (cherry picked from commit a61d93d92f5c9533898098abb5f187840900aeb5) + (cherry picked from commit 09de3f1313a30d8a22e488c9a5b96a9560cae96d) + (cherry picked from commit 99932d4fc03a13bb3e94938fe25458fabc8f2fc3) + (cherry picked from commit 169a1d85d084edeb0736ad80fe439639ac938dcd) + (cherry picked from commit 367d56f7b4d5ce61e883c64f81786c7a3ae88eea) + (cherry picked from commit 57352ef4f5f19969a50d42e84b274287993b576f) + (cherry picked from commit 97989356af0ec8b1b1658d804892abb354127330) + (cherry picked from commit 56cb456746a15c1025a178466492ca4c373b1a63) + (cherry picked from commit 2a2083f7f3568c0192daa6ac0e6fa35d953f47bd) + (cherry picked from commit 7855bff42ea9938a0853321256f4c8ce3628aa73) + (cherry picked from commit de123268300fd33b7f7668fda3264059daffa6ef) + (cherry picked from commit 299603e8370a93dd5d8e8d800f0dff1ce2c53d36) + (cherry picked from commit bf5a755f5e9186406bbf50f4087100af5bd68e40) + (cherry picked from commit 600adc18eba823f9fd8ed5fec8b04f11dddf3884) + (back ported from commit b582ef0990d457f7ce8ccf827af51a575ca0b4a6) + (cherry picked from commit e27a2f839598e48bb345f9fc86d4d54c3944db50) + (back ported from commit dc01e7d3447793fd9e4090aa9d50c549848b5a18) + (cherry picked from commit b5aaab12b2b4bc4acab7384c17a87f3406e5047d) + (cherry picked from commit 920a0fde5a32fd40b4d3c94ad72f7fc7039db8e3) + (cherry picked from commit 438e38fadca2f6e57eeecc08326c8a95758594d4) + (cherry picked from commit 97a5221f56bad2e1c7e8ab55da4ac4748ef59c64) + (cherry picked from commit 02512482321c531df4abf73943529f8b44d869e2) + (cherry picked from commit bb2146bc883e86b835e30644757a6d4a649a7ce8) + (back ported from commit ca9f9f703950e5cb300526549b4f1b0a6605a5c5) + (cherry picked from commit fd8daa45f2bd9b876e0dbb9503ccc5a5252844f2) + (cherry picked from commit b97b33a3df0439401f80f041eda507d4fffa0dbf) + (cherry picked from commit 93591aaa62f89820f4ae0558f01eaf9a359738da) + (cherry picked from commit 15bffdffccb3204eb1e993f60eee65c439a03136) + (cherry picked from commit 9813337a4b16ea5b1701b1d00f7e410f5decdfa5) + (cherry picked from commit 313c2d375b1c9b648d9d4b96ec1b8185ac6a78c5) + (cherry picked from commit 28d222bbaa5122fb4bb0e607e39ab149a010e587) + (cherry picked from commit ec5709403e6893acb4f7ca40514ebd29c3116836) + (cherry picked from commit 9717218bb2982f5f214d84473c70542f1e42bfd7) + (cherry picked from commit d0ceebd7508d5bf6e81367640959aef7e0de4947) + (cherry picked from commit c120e9e03090b4f9578ca38ef4250ff3805b6e3f) + (cherry picked from commit 6ee51a4e866bbb0921180b457ed16cd172859346) + (cherry picked from commit 9cd593529c8652785bc9962acc79b6b176741f99) + (cherry picked from commit b6ffaeffaea4d92f05f5ba1ef54df407cb7c8517) + (cherry picked from commit 2f5bb473681b88819a9de28ac3a47e7737815a92) + (cherry picked from commit 5ea8bbfc49291b7e23161fe4de0bf3e4a4e34b18) + (cherry picked from commit ceb5433b3a54979216d794e45147d25c24c94999) + (cherry picked from commit aa9a2d51a3e70b15a898bec7dde3ce5726fec641) + (cherry picked from commit e81f44b66b456a7dcfbdeffeb355458cd6a58973) + (cherry picked from commit 7a2cea2aaae2d5eb5c00c49c52180c7c2c66130a) + (cherry picked from commit 05eb23893c2cf9502a9cec0c32e7f1d1ed2895c8) + (cherry picked from commit 38be0a347c91133843474e12baacd252d0fd1c30) + (cherry picked from commit 82373701be26b893eaf7372db0af84235a51998a) + (cherry picked from commit 1ab95d37bcc3ff2d69e3871e4f056bab7aed0b85) + (cherry picked from commit f74462acf8f390528c8b7937f227c6c90d017f3b) + (cherry picked from commit 449fc48866f7d84b0d9a19201de18a4dd4d3488c) + (cherry picked from commit dd41cc3bb90efd455df514899a5d3cf245182eb1) + (cherry picked from commit e471b40321a94f07d13b8a9e4b064885cf08835d) + (cherry picked from commit bfd2793c9559ae73ae021797f1d4b097c27f24be) + (cherry picked from commit b74757944d69f8cd7de5284fc7e8649d965361ab) + (cherry picked from commit d18f141a1a7cfa5ffad8433e43062b05a8d1b82a) + (cherry picked from commit 1b136de120dda625109f2afe1e3d04e256be9ec1) + (cherry picked from commit a66132f3eb514f42c49a3e8f57aab2ccd0360f06) + + * mlx4_core: Roll back round robin bitmap allocation commit for CQs, SRQs, and MPTs + * net/mlx4_core: Remove zeroed out of explicit QUERY_FUNC_CAP fields + * net/mlx4_core: Rename QUERY_FUNC_CAP fields + * net/mlx4_core: Introduce nic_info new flag in QUERY_FUNC_CAP + * net/mlx4_core: Expose physical port id as PF/VF capability + * net/mlx4_en: Implement ndo_get_phys_port_id + * net/mlx4_en: Configure the XPS queue mapping on driver load + * net/mlx4_core: Set CQE/EQE size to 64B by default + * net/mlx4_en: Ignore irrelevant hypervisor events + * net/mlx4_en: Add NAPI support for transmit side + * net/mlx4_core: Check port number for validity before accessing data + * infiniband: slight optimization of addr compare + * net/mlx4_core: Add basic support for TCP/IP offloads under tunneling + * net/mlx4_en: Add netdev support for TCP/IP offloads of vxlan tunneling + * net: mlx4: slight optimization of addr compare + * mlx4_en: Add PTP hardware clock + * mlx4_en: Only cycle port if HW timestamp config changes + * net/mlx4_core: Warn if device doesn't have enough PCI bandwidth + * net/mlx4_en: fix error return code in mlx4_en_get_qp() + * mlx4_en: Select PTP_1588_CLOCK + * net/mlx4_en: call gro handler for encapsulated frames + * RDMA/ocrdma: Fix AV_VALID bit position + * RDMA/ocrdma: Fix OCRDMA_GEN2_FAMILY macro definition + * IB/usnic: Add Cisco VIC low-level hardware driver + * IB/usnic: Change WARN_ON to lockdep_assert_held + * IB/usnic: Add struct usnic_transport_spec + * IB/usnic: Push all forwarding state to usnic_fwd.[hc] + * IB/usnic: Port over main.c and verbs.c to the usnic_fwd.h + * IB/usnic: Port over usnic_ib_qp_grp.[hc] to new usnic_fwd.h + * IB/usnic: Port over sysfs to new usnic_fwd.h + * IB/usnic: Update ABI and Version file for UDP support + * IB/usnic: Add UDP support to usnic_fwd.[hc] + * IB:usnic: Add UDP support to usnic_transport.[hc] + * IB/usnic: Add UDP support in u*verbs.c, u*main.c and u*util.h + * IB/usnic: Add UDP support in usnic_ib_qp_grp.[hc] + * IB/core: Add RDMA_TRANSPORT_USNIC_UDP + * IB/usnic: Remove superflous parentheses + * IB/usnic: Use for_each_sg instead of a for-loop + * IB/usnic: Expose flows via debugfs + * IB/usnic: Fix typo "Ignorning" -> "Ignoring" + * IB/usnic: Append documentation to usnic_transport.h and cleanup + * IB/mlx5: Remove unused code in mr.c + * mlx5_core: Remove dead code + * IB/mlx5: Fix micro UAR allocator + * IB/core: Add flow steering support for IPoIB UD traffic + * IB/core: Add support for IB L2 device-managed steering + * mlx4_core: Add support for steerable IB UD QPs + * IB/mlx4: Enable device-managed steering support for IB ports too + * IB/mlx4: Add mechanism to support flow steering over IB links + * IB/mlx4: Add support for steerable IB UD QPs + * IB/core: Ethernet L2 attributes in verbs/cm structures + * net/mlx4_core: clean up cq_res_start_move_to() + * net/mlx4_core: clean up srq_res_start_move_to() + * IB/usnic: Fix endianness-related warnings + * IB/usnic: Add dependency on CONFIG_INET + * IB/core: Add support for RDMA_NODE_USNIC_UDP + * IB/usnic: Advertise usNIC devices as RDMA_NODE_USNIC_UDP + * IB/usnic: Set userspace/kernel ABI ver to 4 + * IB/usnic: Remove unused variable in usnic_debugfs_exit() + * IB/mlx4: Fix error return code + * IB/cma: IBoE (RoCE) IP-based GID addressing + * IB/mlx4: Use IBoE (RoCE) IP based GIDs in the port GID table + * IB/mlx4: Handle Ethernet L2 parameters for IP based GID addressing + * IB/isert: seperate connection protection domains and dma MRs + * IB/isert: Avoid frwr notation, user fastreg + * IB/isert: Move fastreg descriptor creation to a function + * IB/isert: pass scatterlist instead of cmd to fast_reg_mr routine + * RDMA/ocrdma: Handle Ethernet L2 parameters for IP based GID addressing + * RDMA/ocrdma: Populate GID table with IP based gids + * IB/core: Resolve Ethernet L2 addresses when modifying QP + * IB/core: Make ib_addr a core IB module + * IB/cm: Fix missing unlock on error in cm_init_qp_rtr_attr() + * IB/mlx4: Add dependency INET + * RDMA/ocrdma: Move ocrdma_inetaddr_event outside of "#if CONFIG_IPV6" + * RDMA/ocrdma: Add dependency on INET + * IB/mlx4: Use IS_ENABLED(CONFIG_IPV6) + * IB/usnic: Use GFP_ATOMIC under spinlock + * net/mlx4_core: Remove unnecessary validation for port number + * RDMA/cma: Handle global/non-linklocal IPv6 addresses in cma_check_linklocal() + * IB/core: Fix unused variable warning + * IPoIB: Report operstate consistently when brought up without a link + * RDMA/amso1100: Add check if cache memory was allocated before freeing it + * IB/usnic: Remove unused includes of + * RDMA/cxgb4: Fix gcc warning on 32-bit arch + * mlx5_core: Fix out arg size in access_register command + * IB/mlx5: Clear out struct before create QP command + * mlx5_core: Use mlx5 core style warning + * IB/mlx5: Make sure doorbell record is visible before doorbell + * IB/mlx5: Implement modify CQ + * IB/mlx5: Add support for resize CQ + * mlx5_core: Improve debugfs readability + * mlx5_core: Fix PowerPC support + * IB/mlx5: Allow creation of QPs with zero-length work queues + * IB/mlx5: Abort driver cleanup if teardown hca fails + * IB/mlx5: Remove old field for create mkey mailbox + * IB/mlx5: Verify reserved fields are cleared + * iscsi-target: Convert gfp_t parameter to task state bitmask + * IB/mlx5: Fix RC transport send queue overhead computation + * IB/mlx5: Fix binary compatibility with libmlx5 + * IB/mlx5: Don't set "block multicast loopback" capability + * RDMA/nes: Fix error return code + * RDMA/amso1100: Fix error return code + * iser-target: Fix leak on failure in isert_conn_create_fastreg_pool + * IB/srpt: replace strict_strtoul() with kstrtoul() + * IB/mlx4: Don't allocate range of steerable UD QPs for Ethernet-only device + * IB/mlx4: Make sure GID index 0 is always occupied + * IB/mlx4: Move rtnl locking to the right place + * IB/mlx4: Do IBoE locking earlier when initializing the GID table + * IB/mlx4: Do IBoE GID table resets per-port + * IB/mlx4: Build the port IBoE GID table properly under bonding + * IB: Report using RoCE IP based gids in port caps + * RDMA/cxgb4: Add missing neigh_release in LE-Workaround path + * mlx5: Add include of because of kzalloc()/kfree() use + * IB/mlx5: Remove dependency on X86 + * IB/usnic: Fix smatch endianness error + * IB/iser: Avoid dereferencing iscsi_iser conn object when not bound to iser connection + * IB/iser: Fix use after free in iser_snd_completion() + * RDMA/ocrdma: Fix traffic class shift + * RDMA/ocrdma: Fix load time panic during GID table init + * netdevice: add queue selection fallback handler for ndo_select_queue + * net,IB/mlx: Bump all Mellanox driver versions + * net/mlx4: Support shutdown() interface + * net/mlx4_core: Fix memory access error in mlx4_QUERY_DEV_CAP_wrapper() + * net/mlx4_core: mlx4_init_slave() shouldn't access comm channel before PF is ready + * net/mlx4_core: Fix wrong dump of the vxlan offloads device capability + * net/mlx4_en: Handle vxlan steering rules for mac address changes + * net/mlx4_core: Load the IB driver when the device supports IBoE + * net/mlx4_en: Deregister multicast vxlan steering rules when going down + * net-gro: Prepare GRO stack for the upcoming tunneling support + * net-gre-gro: Add GRE support to the GRO stack + * net: gro: change GRO overflow strategy + * net: Add GRO support for UDP encapsulating protocols + * net: Export gro_find_by_type helpers + * net: Add GRO support for vxlan traffic + * net/udp_offload: Handle static checker complaints + * net/ipv4: Use non-atomic allocation of udp offloads structure instance + * net/vxlan: Go over all candidate streams for GRO matching + * gre_offload: statically build GRE offloading support + * net/mlx4_core: pass pci_device_id.driver_data to __mlx4_init_one during reset + * net/mlx4: Set number of RX rings in a utility function + * net/mlx4: Fix limiting number of IRQ's instead of RSS queues + * net/mlx4_en: Fix bad use of dev_id + * net/mlx4_en: Fix UP limit in ieee_ets->prio_tc + * net/mlx4_en: Verify mlx4_en module parameters + * net/mlx4_en: Pad ethernet packets smaller than 17 bytes + * net/mlx4_en: Move queue stopped/waked counters to be per ring + * net/mlx4: Replace mlx4_en_mac_to_u64() with mlx4_mac_to_u64() + * net/mlx4_en: Fix selftest failing on non 10G link speed + * net/mlx4_core: Fix sparse warning + * net/mlx4_en: Use union for BlueFlame WQE + * net/mlx4_en: Change Connect-X description in kconfig + * net/mlx4_en: mlx4_en_verify_params() can be static + * IB/mlx5_core: remove unreachable function call in module init + * mlx4: Adjust QP1 multiplexing for RoCE/SRIOV + * mlx4_core: For RoCE, allow slaves to set the GID entry at that slave's index + * mlx4: In RoCE allow guests to have multiple GIDS + * mlx4: Add ref counting to port MAC table for RoCE + * mlx4: Implement IP based gids support for RoCE/SRIOV + * mlx4_ib: Fix SIDR support of for UD QPs under SRIOV/RoCE + * mlx4: Activate RoCE/SRIOV + * mlx4: Call dev_kfree_skby_any instead of dev_kfree_skb. + * cxgb4/iw_cxgb4: Treat CPL_ERR_KEEPALV_NEG_ADVICE as negative advice + * cxgb4/iw_cxgb4: Doorbell Drop Avoidance Bug Fixes + * mlx4: Don't receive packets when the napi budget == 0 + * IB/mlx4_ib: Adapt code to use caps.num_ports instead of a constant + * net/mlx4: Add data structures to support N-Ports per VF + * net/mlx4: Add utils for N-Port VFs + * net/mlx4: Adapt code for N-Port VF + * net/mlx4: Adapt num_vfs/probed_vf params for single port VF + * mlx4: Use actual number of PCI functions (PF + VFs) for alias GUID logic + * RDMA/cxgb4: set error code on kmalloc() failure + * net/mlx4: USe one wrapper that returns -EPERM + * mlx4: Add support for CONFIG_DEV command + * net/mlx4: Implement vxlan ndo calls + * net/mlx4: Set proper build dependancy with vxlan + + [ Wen-chien Jesse Sung ] + + * SAUCE: Bluetooth: Give restart command more time to complete its job + - LP: #1301908 + + -- Tim Gardner Thu, 03 Apr 2014 06:06:15 -0600 + +linux (3.13.0-22.44) trusty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1301562 + + [ dann frazier ] + + * [Config] enable linux-tools on arm64 + https://lists.ubuntu.com/archives/kernel-team/2014-April/041332.html + + [ Greg Kurz ] + + * SAUCE: powerpc/le: Big endian arguments for ppc_rtas() + - LP: #1289518 + + [ Mahesh Salgaonkar ] + + * SAUCE: powerpc/book3s: Fix CFAR clobbering issue in machine check + handler. + - LP: #1301424 + * SAUCE: powerpc/book3s: Recover from MC in sapphire on SCOM read via + MMIO. + - LP: #1301424 + * SAUCE: powerpc/book3s: Fix mc_recoverable_range buffer overrun issue. + - LP: #1301424 + + [ Paolo Pisati ] + + * [Config] armhf: USB_STORAGE=y + https://lists.ubuntu.com/archives/kernel-team/2014-April/041349.html + + [ Stefan Bader ] + + * SAUCE: kvm: Force preempt folding in kvm on i386 + - LP: #1268906 + + [ Tim Gardner ] + + * SAUCE: Drop lttng in favor of lttng-modules + The kernel version was down rev on an rc release. + + [ Tomas Winkler ] + + * SAUCE: (no-up) mei: me: do not load the driver if the FW doesn't + support MEI interface + - LP: #1301118 + + [ Upstream Kernel Changes ] + + * drm/i915: Deprecated UMS support + - LP: #1284816 + * powerpc/book3s: Split the common exception prolog logic into two + section. + - LP: #1301424 + * powerpc/book3s: Introduce exclusive emergency stack for machine check + exception. + - LP: #1301424 + * powerpc/book3s: handle machine check in Linux host. + - LP: #1301424 + * powerpc/book3s: Return from interrupt if coming from evil context. + - LP: #1301424 + * powerpc/book3s: Introduce a early machine check hook in cpu_spec. + - LP: #1301424 + * powerpc/book3s: Add flush_tlb operation in cpu_spec. + - LP: #1301424 + * powerpc/book3s: Flush SLB/TLBs if we get SLB/TLB machine check errors + on power7. + - LP: #1301424 + * powerpc/book3s: Flush SLB/TLBs if we get SLB/TLB machine check errors + on power8. + - LP: #1301424 + * powerpc/book3s: Decode and save machine check event. + - LP: #1301424 + * powerpc/book3s: Queue up and process delayed MCE events. + - LP: #1301424 + * powerpc/powernv: Remove machine check handling in OPAL. + - LP: #1301424 + * powerpc/powernv: Machine check exception handling. + - LP: #1301424 + * powerpc: Fix "attempt to move .org backwards" error + - LP: #1301424 + * powerpc: Fix endian issues in power7/8 machine check handler + - LP: #1301424 + * Move precessing of MCE queued event out from syscall exit path. + - LP: #1301424 + + -- Andy Whitcroft Wed, 02 Apr 2014 15:58:48 +0100 + +linux (3.13.0-21.43) trusty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: kvm: BIOS disabled kvm support should be a warning + - LP: #1300247 + * SAUCE: nouveau: missing outputs should be warnings + - LP: #1300244 + + [ John Johansen ] + + * Revert "SAUCE: Add config option to disable new apparmor 3 semantics" + * Revert "SAUCE: apparmor: fix uninitialized lsm_audit membe" + * Revert "SAUCE: (no-up) apparmor: Fix tasks not subject to, reloaded + policy" + * Revert "SAUCE: apparmor: allocate path lookup buffers during init" + * Revert "SAUCE: apparmor: fix unix domain sockets to be mediated on + connection" + * Revert "SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot" + * SAUCE: (no-up) apparmor: Sync to apparmor3 - alpha6 snapshot + - LP: #1298611 + + [ Tetsuo Handa ] + + * SAUCE: kthread: Do not leave kthread_create() immediately upon SIGKILL. + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1300412 + * [Config] updateconfigs after AA patch set + * [Config] CONFIG_ZSWAP=n, CONFIG_ZBUD=n for all arches + * [Config] CONFIG_XILINX_LL_TEMAC=m for powerpc + * [Config] CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y for ppc64el + * [Config] CONFIG_WLAN=y for arm64 + * [Config] CONFIG_VORTEX=m for ppc64el + * [Config] CONFIG_WIMAX=m for ppc64el + * [Config] CONFIG_WATCHDOG=y for ppc64el + * [Config] CONFIG_VME_BUS=m for ppc64el + * [Config] CONFIG_VIRT_DRIVERS=y for ppc64el + * [Config] CONFIG_VIDEO_OUTPUT_CONTROL=m for ppc64el + * [Config] CONFIG_VERSION_SIGNATURE="" for powerpc64-emb + * [Config] CONFIG_UWB=m for ppc64el + + [ Upstream Kernel Changes ] + + * vhost: validate vhost_get_vq_desc return value + - CVE-2014-0055 + * net: use kfree_skb_list() helper + * skbuff: skb_segment: s/frag/nskb_frag/ + * skbuff: skb_segment: s/skb_frag/frag/ + * skbuff: skb_segment: s/skb/head_skb/ + * skbuff: skb_segment: s/fskb/list_skb/ + * skbuff: skb_segment: orphan frags before copying + - CVE-2014-0131 + + [ Upstream Kernel Changes ] + + * rebase to v3.13.8 + + -- Tim Gardner Mon, 31 Mar 2014 12:38:11 -0600 + +linux (3.13.0-20.42) trusty; urgency=low + + [ Adam Conrad ] + + * [Packaging] Set bootloader and loader on ppc64el to grub + + [ Andy Whitcroft ] + + * rebase to v3.13.7 + * [Config] updateconfigs following rebase to v3.13.7 + * cloud-tools -- pull in init scripts for Hyper-V daemons + * cloud-tools -- detect Hyper-V VM to avoid starting + * cloud-tools -- update IF_NAME to DEVICE in hv_* scripts + - LP: #1295401 + * [Config] cloud-tools -- ensure we force older hv-kvp-daemon-init off + * [Config] fix up Breaks/Replaces on linux-cloud-tools-common to fix upgrades + + [ Emmanuel Grumbach ] + + * SAUCE: (no-up) iwlwifi: mvm: disable uAPSD due to bugs in the firmware + + [ James Bottomley ] + + * SAUCE: (no-up) fix our current target reap infrastructure + - LP: #1283604 + * SAUCE: (no-up) dual scan thread bug fix + - LP: #1283604 + + [ K. Y. Srinivasan ] + + * SAUCE: (no-up) Tools: hv: vssdaemon: Ignore VFAT mounts during the + Freeze operation + - LP: #1298192 + + [ Paolo Pisati ] + + * [Config] disable HW_RANDOM_EXYNOS, USB_DWC3_EXYNOS, + PHY_EXYNOS_MIPI_VIDEO + - LP: #1294353 + * [Config] armhf: generic: AHCI_IMX=y, SERIAL_FSL_LPUART=m + - LP: #1294951 + * [Config] armhf: generic: MFD_TI_AM335X_TSCADC and USB_DWC3_OMAP = m + - LP: #1294962 + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1298585 + * [Config] ignore.modules + * SAUCE: i2c-cpm: Add missing includes for powerpc + * [Config] CONFIG_ABX500_CORE=y for ppc64el + * [Config] CONFIG_ALX=m for powerpc + * [Config] CONFIG_ACENIC_OMIT_TIGON_I=n for ppc64el + * [Config] CONFIG_ACORN_PARTITION_*=n for ppc64el + * [Config] CONFIG_ANDROID=n for powerpc + * [Config] CONFIG_ASYNC_RAID6_TEST=m for ppc64el + * [Config] CONFIG_BIG_KEYS=y for ppc64el + * [Config] CONFIG_BLK_DEV_INTEGRITY=y for ppc64el + * [Config] CONFIG_BSD_PROCESS_ACCT=y for ppc64el + * [Config] CONFIG_BLK_DEV_SR_VENDOR=n for ppc64el + * [Config] CONFIG_CFG80211=m for ppc64el + * [Config] CONFIG_CHARGER_BQ24190=m for powerpc + * [Config] CONFIG_CHARGER_BQ24735=m for powerpc + * [Config] CONFIG_EXPERT=y for ppc64el + * [Config] CONFIG_ATA_SFF=y on ppc64el + * [Config] CONFIG_ATA_GENERIC=y for ppc64el, powerpc + * [Config] CONFIG_CHR_DEV_ST=m for ppc64el + * [Config] CONFIG_CHECKPOINT_RESTORE=y for ppc64el + * [Config] CONFIG_CHELSIO_T1_1G=y for ppc64el + * [Config] CONFIG_CHR_DEV_OSST=m for ppc64el + * [Config] CONFIG_CHR_DEV_SCH=m for ppc64el + * [Config] CONFIG_CPU_FREQ_STAT=y for powerpc + * [Config] CONFIG_DDR=y for ppc64el + * [Config] CONFIG_DEBUG_BUGVERBOSE=y for powerpc + * [Config] CONFIG_EXT4_USE_FOR_EXT23=y for powerpc, ppc64el + * [Config] CONFIG_E100=m, CONFIG_E1000=m, CONFIG_E1000E=m for ppc64el + * [Config] CONFIG_EZX_PCAP=n for all arches + * [Config] CONFIG_DYNAMIC_DEBUG=y for powerpc + * [Config] CONFIG_ENABLE_MUST_CHECK=n for ppc64el + * [Config] CONFIG_ENABLE_WARN_DEPRECATED=n for ppc64el + * [Config] CONFIG_FB_3DFX=m for all arches + * [Config] CONFIG_FB_MATROX=m for ppc64el + * [Config] CONFIG_FB_RADEON=m for ppc64el + * [Config] CONFIG_FB_SAVAGE_I2C=y for all arches + * [Config] CONFIG_FIREWIRE=m for ppc64el + * [Config] CONFIG_FTR_FIXUP_SELFTEST=n for ppc64el + * [Config] CONFIG_HAMRADIO=y for ppc64el + * [Config] CONFIG_I2C_CHARDEV=m for ppc64el + * [Config] CONFIG_I2C_MUX=m for ppc64el + * [Config] CONFIG_I2C_STUB=m for ppc64el + * [Config] CONFIG_I2O=m for ppc64el + * [Config] CONFIG_INET_XFRM_MODE_BEET=m, CONFIG_INET_XFRM_MODE_TRANSPORT=m, CONFIG_INET_XFRM_MODE_TUNNEL=m for ppc64el + * [Config] CONFIG_INFINIBAND_IPOIB_DEBUG=n, CONFIG_INFINIBAND_MTHCA_DEBUG=n for ppc64el + * [Config] CONFIG_INFINIBAND_NES=m, CONFIG_INFINIBAND_OCRDMA=m, CONFIG_INFINIBAND_QIB=m for ppc64el + * [Config] CONFIG_INPUT_FF_MEMLESS=m for ppc64el + * [Config] CONFIG_INTERVAL_TREE_TEST=m for ppc64el + * [Config] CONFIG_IPACK_BUS=m for ppc64el + * [Config] CONFIG_ISDN=y for ppc64el + * [Config] CONFIG_ISO9660_FS=m for ppc64el + * [Config] CONFIG_KGDB=y for ppc64el + * [Config] CONFIG_KVM_GUEST=y for ppc64el + * [Config] CONFIG_L2TP_V3=y for powerpc + * [Config] CONFIG_MAILBOX=y for ppc64el + * [Config] CONFIG_MD_LINEAR=m, CONFIG_MD_RAID0=m, CONFIG_MD_RAID1=m for ppc64el + * [Config] CONFIG_MEDIA_SUPPORT=m for ppc64el + * [Config] CONFIG_MEMORY=y for ppc64el + * [Config] CONFIG_MEMSTICK=m for ppc64el + * [Config] CONFIG_MFD_SM501_GPIO=n for ppc64el + * [Config] CONFIG_MLX4_DEBUG=n for ppc64el + * [Config] CONFIG_MMC_BLOCK=m for ppc64el + * [Config] CONFIG_MOUSE_PS2=m for ppc64el + * [Config] CONFIG_NET_9P=m for ppc64el + * [Config] CONFIG_MSDOS_FS=m for ppc64el + * [Config] CONFIG_MSI_BITMAP_SELFTEST=n for ppc64el + * [Config] CONFIG_MTD=m for arm64 + * [Config] CONFIG_NETCONSOLE=m for ppc64el + * [Config] CONFIG_NETFILTER_XT_TARGET_NOTRACK=m for ppc64el + * [Config] CONFIG_NETPOLL_TRAP=n for ppc64el + * [Config] CONFIG_NET_IPIP=m for ppc64el + * [Config] CONFIG_NET_TEAM=m for all arches + * [Config] CONFIG_NFC=m for ppc64el + * [Config] CONFIG_NL80211_TESTMODE=n for all arches + * [Config] CONFIG_NLS_CODEPAGE_437=y for powerpc + * [Config] CONFIG_NLS_ASCII=m, CONFIG_NLS_ISO8859_1=m, CONFIG_NLS_UTF8=m for ppc64el + * [Config] CONFIG_NOP_USB_XCEIV=m for ppc64el + * [Config] CONFIG_NOTIFIER_ERROR_INJECTION=m for ppc64el + * [Config] CONFIG_OPROFILE=m for ppc64el + * [Config] CONFIG_PARPORT_1284=y for ppc64el + * [Config] CONFIG_PARPORT_AX88796=m, CONFIG_PARPORT_PC_FIFO=y, CONFIG_PARPORT_SERIAL=m for ppc64el + * [Config] CONFIG_PCI_IOV=y, CONFIG_PCI_PASID=y, CONFIG_PCI_PRI=y, CONFIG_PCI_REALLOC_ENABLE_AUTO=y, CONFIG_PCI_STUB=m for ppc64el + * [Config] CONFIG_PCNET32=m for ppc64el + * [Config] CONFIG_SCSI_DH_EMC=m for ppc64el + * [Config] CONFIG_SCSI_DH_HP_SW=m for ppc64el + * [Config] CONFIG_SCSI_FC_ATTRS=m for ppc64el + * [Config] CONFIG_SCSI_IPR=m for ppc64el + * [Config] CONFIG_SCSI_LOGGING=y for ppc64el + * [Config] CONFIG_SCSI_OSD_INITIATOR=m for ppc64el + * [Config] CONFIG_SCSI_SCAN_ASYNC=y for ppc64el + * [Config] CONFIG_SCSI_SYM53C8XX_2=m for ppc64el + + [ Timo Aaltonen ] + + * SAUCE: i915_bdw: Provide an ubuntu/i915 driver for Broadwell graphics + - LP: #1294144 + * SAUCE: i915_bdw: Add DP_AUX definitions + - LP: #1294144 + * SAUCE: i915_bdw: Update intel_ips.h file location + - LP: #1294144 + * SAUCE: i915_bdw: Revert "ACPI / i915: replace open-coded _DSM code with + helper functions" + - LP: #1294144 + * SAUCE: i915_bdw: Add an include back to intel_opregion.c + - LP: #1294144 + * SAUCE: i915_bdw: Only support Broadwell with ubuntu/i915 driver + - LP: #1294144 + * SAUCE: i915_bdw: Add i915_bdw_gpu_*() calls for ubuntu/i915 + - LP: #1294144 + * i915_bdw: [Config] Enable CONFIG_DRM_I915_BDW=m, and disable UMS + - LP: #1294144 + * SAUCE: i915_bdw: Rename ubuntu/i915 driver to i915_bdw + - LP: #1294144 + + [ Upstream Kernel Changes ] + + * netfilter: nf_conntrack_dccp: fix skb_header_pointer API usages + - CVE-2014-2523 + * Input: ALPS - add support for "Dolphin" devices + - LP: #1190867 + * x86/mm/pageattr: Lookup address in an arbitrary PGD + - LP: #1297658 + * x86/mm/pageattr: Add a PGD pagetable populating function + - LP: #1297658 + * x86/mm/pageattr: Add a PUD pagetable populating function + - LP: #1297658 + * x86/mm/pageattr: Add a PMD pagetable populating function + - LP: #1297658 + * x86/mm/pageattr: Add a PTE pagetable populating function + - LP: #1297658 + * x86/mm/pageattr: Add a PUD error unwinding path + - LP: #1297658 + * x86/mm/pageattr: Add last levels of error path + - LP: #1297658 + * x86/mm/cpa: Map in an arbitrary pgd + - LP: #1297658 + * x86/efi: Runtime services virtual mapping + - LP: #1297658 + * x86/efi: Check krealloc return value + - LP: #1297658 + * Include apm-mustang.dtb in kernel-image udeb + * drm/i915: add i915_reset_count + - LP: #1294144 + * drm/i915: add i915_get_reset_stats_ioctl + - LP: #1294144 + * drm: add DRM_INFO_ONCE() to print a one-time DRM_INFO() message + - LP: #1294144 + * drm: provide a helper for the encoder possible_crtcs mask + - LP: #1294144 + * drm: Move drm_encoder_crtc_ok() to core + - LP: #1294144 + * drm: Pass the display mode to drm_calc_timestamping_constants() + - LP: #1294144 + * drm: Pass the display mode to drm_calc_vbltimestamp_from_scanoutpos() + - LP: #1294144 + * drm: Pass 'flags' from the caller to .get_scanout_position() + - LP: #1294144 + + [ Upstream Kernel Changes ] + + * rebase to v3.13.7 + - LP: #1268468 + + -- Andy Whitcroft Mon, 24 Mar 2014 10:41:31 +0000 + +linux (3.13.0-19.40) trusty; urgency=low + + [ Tim Gardner ] + + * [Config] Add new mlx modules to d-i + * [Config] Fix d-i spelling error: ahxi_xgene --> ahci_xgene + * [Config] Added Muti-Arch support for linux-headers-PKGVER-ABINUM, + linux-tools-common, and linux-cloud-tools-common + - LP: #1295112 + * Release Tracking Bug + - LP: #1296484 + + [ Upstream Kernel Changes ] + + * Drivers: hv: vmbus: Specify the target CPU that should receive + notification + - LP: #1295813 + + -- Tim Gardner Sun, 23 Mar 2014 19:54:50 -0600 + +linux (3.13.0-19.39) trusty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1295462 + + [ Andy Whitcroft ] + + * ubuntu: aufs3 -- update update scripting + * ubuntu: AUFS -- update to 75dbb997b5812e16771bec20e92449ba0b1705d9 + + [ Anup Patel ] + + * SAUCE: (no-up) KVM: Documentation: Fix typo for KVM_ARM_VCPU_INIT ioctl + * SAUCE: (no-up) arm64: KVM: Force undefined exception for Guest SMC + intructions + + [ dann frazier ] + + * SAUCE: (no-up) Fix pcie-xgene build failure + + [ Emmanuel Grumbach ] + + * SAUCE: iwlwifi: mvm: send udev event upon firmware error to dump logs + + [ Feng Kan ] + + * SAUCE: (no-up) power: reset: Add generic SYSCON register mapped reset + - LP: #1284433 + * SAUCE: (no-up) arm64: dts: Add X-Gene reboot driver dts node + - LP: #1284433 + + [ Hans de Goede ] + + * SAUCE: (no-up) libahci: Allow drivers to override start_engine + - LP: #1282920 + * SAUCE: (no-up) ahci-platform: Add support for devices with more then 1 + clock + - LP: #1282920 + * SAUCE: (no-up) ahci-platform: Add support for an optional regulator for + sata-target power + - LP: #1282920 + * SAUCE: (no-up) ahci-platform: Add enable_ / disable_resources helper + functions + - LP: #1282920 + * SAUCE: (no-up) ahci-platform: "Library-ise" ahci_probe functionality + - LP: #1282920 + * SAUCE: (no-up) ahci-platform: "Library-ise" suspend / resume + functionality + - LP: #1282920 + + [ Iyappan Subramanian ] + + * SAUCE: (no-up) Documentation: APM X-Gene SoC Ethernet DTS binding + documentation + * SAUCE: (no-up) arm64: dts: APM X-Gene SoC Ethernet device tree nodes + * SAUCE: (no-up) drivers: net: APM X-Gene SoC Ethernet base driver + * SAUCE: (no-up) drivers: net: APM X-Gene SoC Ethernet driver error + handling + * SAUCE: (no-up) drivers: net: APM X-Gene SoC Ethernet driver ethtool + support + + [ Loc Ho ] + + * SAUCE: (no-up) Documentation: Add APM X-Gene SoC 15Gbps Multi-purpose + PHY driver binding documentation + - LP: #1282920 + * SAUCE: (no-up) PHY: add APM X-Gene SoC 15Gbps Multi-purpose PHY driver + - LP: #1282920 + * SAUCE: (no-up) arm64: Add APM X-Gene SoC 15Gbps Multi-purpose PHY DTS + entries + - LP: #1282920 + * SAUCE: (no-up) Documentation: Add documentation for the APM X-Gene SoC + SATA host controller DTS binding + * SAUCE: (no-up) ata: Add APM X-Gene SoC AHCI SATA host controller driver + * SAUCE: (no-up) ata: Fix compiler warning with APM X-Gene host + controller driver + * SAUCE: (no-up) arm64: Add APM X-Gene SoC AHCI SATA host controller DTS + entries + * SAUCE: (no-up) clk: arm64: Fix the clock-names property for pcppll, + socpll, and socplldiv2 + + [ Marc Zyngier ] + + * SAUCE: (no-up) arm64: KVM: force cache clean on page fault when caches + are off + * SAUCE: (no-up) arm64: KVM: allows discrimination of AArch32 sysreg + access + * SAUCE: (no-up) arm64: KVM: trap VM system registers until MMU and + caches are ON + * SAUCE: (no-up) ARM: KVM: introduce kvm_p*d_addr_end + * SAUCE: (no-up) arm64: KVM: flush VM pages before letting the guest + enable caches + * SAUCE: (no-up) ARM: KVM: force cache clean on page fault when caches + are off + + [ Ming Lei ] + + * SAUCE: (no-up) arm64: apm-storm: support ttyS1 + * SAUCE: (no-up) apm: pcie: fix hang when no card connected + + [ Paolo Pisati ] + + * [Config] armhf: generic: disable CPU_IDLE + * [Config] armhf: CPU_FREQ=y + * [Config] armhf: TI_THERMAL=y + + [ Rameshwar Prasad Sahu ] + + * SAUCE: (no-up) rtc: Add X-Gene SoC Real Time Clock Driver + + [ Ravi Patel ] + + * SAUCE: (no-up) Documentation: misc-devices: APM X-Gene SoC QMTM + * SAUCE: (no-up) Documentation: devicetree: bindings for APM X-Gene SoC + QMTM + * SAUCE: (no-up) misc: xgene: base driver for APM X-Gene SoC QMTM + * SAUCE: (no-up) arm64: boot: dts: entries for APM X-Gene SoC QMTM + * SAUCE: (no-up) misc: xgene: error handling for APM X-Gene SoC QMTM + + [ Roger Quadros ] + + * SAUCE: (no-up) ata: ahci_platform: Manage SATA PHY + - LP: #1282920 + * SAUCE: (no-up) ata: ahci_platform: runtime resume the device before use + - LP: #1282920 + + [ Seth Forshee ] + + * SAUCE: iwlwifi: mvm: Free sram dump immediately after using it + * SAUCE: iwlwifi: mvm: Only notify userspace of fw error dump when one is + created + * SAUCE: iwlwifi: mvm: Don't create fw error dump if there's nothing to + dump + + [ Tanmay Inamdar ] + + * SAUCE: (no-up) arm64: PCI(e) arch support + * SAUCE: (no-up) pci: APM X-Gene PCIe controller driver + * SAUCE: (no-up) arm64: dts: APM X-Gene PCIe device tree nodes + * SAUCE: (no-up) dt-bindings: pci: xgene pcie device tree bindings + * SAUCE: (no-up) MAINTAINERS: entry for APM X-Gene PCIe host driver + + [ Tim Gardner ] + + * [Config] CONFIG_POWER_RESET_SYSCON=y for arm64 + * SAUCE: (no-up) Restrict CONFIG_POWER_RESET_SYSCON to arm64 only + * SAUCE: iwlwifi: Fix FTBS for armhf + * [Config] CONFIG_PHY_XGENE=m for arm64 + * [Config] CONFIG_AHCI_XGENE=m for arm64 + * [Config] CONFIG_NET_XGENE=m for arm64 + * [Config] CONFIG_RTC_DRV_XGENE=m for arm64 + * SAUCE: (no-up) Add drivers/phy/phy-core.ko to generic inclusion list + * [Config] Enable PCI for arm64 + * SAUCE: arm64: export __cpu_clear_user_page for modules + * SAUCE: ARCH_HAS_DMA_GET_REQUIRED_MASK=n for arm64 + * [Config] CONFIG_PCI_XGENE=y + * [Config] CONFIG_PHY_XGENE=y for arm64 + * [Config] CONFIG_RTC_DRV_XGENE=y for arm64 + * d-i: Add ahxi_xgene and xgene-enet + + [ Upstream Kernel Changes ] + + * Staging: rtl8821ae: rc.c: fix up function prototypes + * Staging: rtl8821ae: removed unused functions and variables + * Staging: rtl8821ae: add TODO file + * Staging: rtl8812ae: disable due to build errors + * staging: r8821ae: Fix build problems + * staging: r8821ae: Enable build by reverting BROKEN marking + * staging: rtl8821ae: Fixed the size of array to macro as discussed by + Linus + * staging/rtl8821ae: fix build, depends on MAC80211 + * powerpc: Reclaim two unused thread_info flag bits + * powerpc: Don't corrupt transactional state when using FP/VMX in kernel + * powerpc: Fix transactional FP/VMX/VSX unavailable handlers + * Drivers: hv: Ballon: Make pressure posting thread sleep interruptibly + - LP: #1294253 + * mac80211: don't validate unchanged AP bandwidth while tracking + - LP: #1294558 + * phy-core: Don't propagate -ENOSUPP from phy_pm_runtime_get_sync to + caller + * CONFIG_XGENE_QMTM=m for arm64 + + -- Tim Gardner Thu, 20 Mar 2014 21:51:11 -0400 + +linux (3.13.0-18.38) trusty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1293725 + * [Config] Add hv_balloon to d-i virtio-modules + - LP: #1292216 + + [ Andy Whitcroft ] + + * [Config] d-i -- add virtio_scsi to virtio-modules + - LP: #1288607 + + [ Colin Ian King ] + + * SAUCE: intel_pstate: inform user that thermald is worth considering + + [ dann frazier ] + + * [Config] arm64: KVM=y + + [ Gerd Hoffmann ] + + * SAUCE: vmbus: add missing breaks + - LP: #1287398 + * SAUCE: vmbus: use resource for hyperv mmio region + - LP: #1287398 + * SAUCE: hyperv-fb: add support for generation 2 virtual machines. + - LP: #1287398 + * SAUCE: hyperv-fb: kick off efifb early + - LP: #1287398 + + [ Haiyang Zhang ] + + * SAUCE: hyperv: Change the receive buffer size for legacy hosts + - LP: #1290151 + + [ K. Y. Srinivasan ] + + * SAUCE: Drivers: hv: vmbus: Extract the mmio information from DSDT + - LP: #1287398 + + [ Paolo Pisati ] + + * SAUCE: leds-gpio: of: introduce MODULE_DEVICE_TABLE for module + autoloading + * [Config] amhf: LEDS_TRIGGER_HEARTBEAT=y + + [ Upstream Kernel Changes ] + + * Revert "xhci 1.0: Limit arbitrarily-aligned scatter gather." + - LP: #1293361 + * Revert "USBNET: ax88179_178a: enable tso if usb host supports sg dma" + - LP: #1293361 + * powerpc/tm: Fix crash when forking inside a transaction + * AX88179_178A: Add VID:DID for Lenovo OneLinkDock Gigabit LAN + - LP: #1291890 + * drm/vmwgfx: Fix a surface reference corner-case in legacy emulation + mode + * Input: wacom - scale up touch width and height values for Intuos Pro + * Input: wacom - make sure touch_max is set for touch devices + * Input: wacom - add support for three new Intuos devices + * Input: wacom - add reporting of SW_MUTE_DEVICE events + * Input: wacom - fix wacom->shared guards for dual input devices + * Input: wacom - add support for DTU-1031 + * net: fix for a race condition in the inet frag code + - CVE-2014-0100 + * net: sctp: fix sctp_sf_do_5_1D_ce to verify if we/peer is AUTH capable + - CVE-2014-0101 + * KEYS: Make the keyring cycle detector ignore other keyrings of the same + name + - CVE-2014-0102 + * ipv6: don't set DST_NOCOUNT for remotely added routes + - CVE-2014-2309 + + -- Andy Whitcroft Thu, 13 Mar 2014 10:06:05 +0000 + +linux (3.13.0-17.37) trusty; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1290484 + * Revert "SAUCE: hv: Add vss daemon to Makefile" + * Revert "SAUCE: (no-up) tools/hv: add basic Makefile" + * Revert "SAUCE: (no-up) hv -- bodge hv_kvp_daemon so it can use the + local linux/hyperv.h" + * Revert "SAUCE: (no-up) hv -- bodge hv_vss_daemon so it can use the + local linux/hyperv.h" + * Revert "SAUCE: SELinux: security_load_policy: Silence frame-larger-than + warning" + * Revert "SAUCE: ARM: OMAP4460: cpuidle: Extend + PM_OMAP4_ROM_SMP_BOOT_ERRATUM_GICD on cpuidle" + * ubuntu: overlayfs -- use kernel service credentials for copy up and + xattr manipulations + * [Packaging] tools -- hv tools build correctly against the built headers + * [Packaging] cloud-tools -- add the hv_fcopy_daemon to the package + * rebase to v3.13.6 + + [ Anton Blanchard ] + + * SAUCE: ibmveth: Fix endian issues with MAC addresses + + [ Bjarke Istrup Pedersen ] + + * SAUCE: hv: Add hyperv.h to uapi headers + - LP: #1282700 + + [ Fengguang Wu ] + + * SAUCE: Drivers: hv: fcopy_open() can be static + - LP: #1282700 + + [ K. Y. Srinivasan ] + + * SAUCE: Drivers: hv: Implement the file copy service + - LP: #1282700 + + [ Tim Gardner ] + + * SAUCE: (no-up) mei: Fix stable update misapplication + * SAUCE: (no-up) mei_me: Add module parameter to disable MSI + + [ Upstream Kernel Changes ] + + * arm64: KVM: Add Kconfig option for max VCPUs per-Guest + * arm64: KVM: Support X-Gene guest VCPU on APM X-Gene host + * ACPI / EC: Clear stale EC events on Samsung systems + * drm/ttm: Fix TTM object open regression + * SELinux: security_load_policy: Silence frame-larger-than warning + * ARM: OMAP4460: cpuidle: Extend PM_OMAP4_ROM_SMP_BOOT_ERRATUM_GICD on + cpuidle + + [ Upstream Kernel Changes ] + + * rebase to v3.13.6 + - LP: #1282369 + - LP: #1260303 + + -- Tim Gardner Wed, 05 Mar 2014 06:52:34 -0700 + +linux (3.13.0-16.36) trusty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1287903 + + [ Andy Whitcroft ] + + * Revert "[Config] lowlatency -- turn CONFIG_IRQ_FORCED_THREADING_DEFAULT + off temporarily" + + [ Chris Bainbridge ] + + * SAUCE: x86: set Pentium M as PAE capable + - LP: #930447 + + [ Dave Jones ] + + * SAUCE: taint: repurpose TAINT_UNSAFE_SMP to TAINT_CPU_OUT_OF_SPEC + - LP: #930447 + + [ Paolo Pisati ] + + * [Config] SND_DAVINCI_SOC && SND_AM33XX_SOC_EVM =m + * [Config] armhf: DRM_TILCDC=m + + [ Philippe Bergheaud ] + + * SAUCE: powerpc: fix xmon disassembler for little-endian + - LP: #1286255 + + [ Tim Gardner ] + + * [Config] CONFIG_MICROCODE_EARLY=y + * [Config] CONFIG_R8821AE=m + * [Config] Add some virtio drivers to -virtual + - LP: #1287401 + * [Config] inclusion-list: vesafb and virtio_balloon are built-in + * SAUCE: vmwgfx: Expose U32_MAX + + [ Upstream Kernel Changes ] + + * Revert "drm/vmwgfx: Fix regression caused by "drm/ttm: make ttm + reservation calls behave like reservation calls"" + * Revert "drm/vmwgfx: Fix the driver for large dma addresses" + * usb: ehci: fix deadlock when threadirqs option is used + - LP: #1274987, #1279081 + * Staging: rtl8812ae: Add Realtek 8821 PCI WIFI driver + - LP: #1287298 + * intel_pstate: Remove periodic P state boost + * intel_pstate: Add trace point to report internal state. + * intel_pstate: Take core C0 time into account for core busy calculation + * intel_pstate: Use LFM bus ratio as min ratio/P state + * intel_pstate: Add support for Baytrail turbo P states + * intel_pstate: Change busy calculation to use fixed point math. + * PM / hibernate: Fix restore hang in freeze_processes() + * ipmi: remove deprecated IRQF_DISABLED + * ipmi: use USEC_PER_SEC instead of 1000000 for more meaningful + * ipmi: fix timeout calculation when bmc is disconnected + * ipmi: Cleanup error return + * ipmi: Add missing rv in ipmi_parisc_probe() + * drm/ttm: ttm object security fixes for render nodes + * drivers: gpu: Mark functions as static in vmwgfx_kms.c + * drivers: gpu: Mark functions as static in vmwgfx_buffer.c + * drivers: gpu: Mark functions as static in vmwgfx_fence.c + * drm/vmwgfx: Fix the driver for large dma addresses + * drm/vmwgfx: Update the svga3d register header file for new device + version + * drm/vmwgfx: Update the driver user-space interface for guest-backed + objects + * drm/vmwgfx: Replace vram_size with prim_bb_mem for calculation of max + resolution + * drm/vmwgfx: Update the svga register definition + * drm/vmwgfx: Adapt capability reporting to new hardware version + * drm/vmwgfx: Add MOB management + * drm/vmwgfx: Hook up MOBs to TTM as a separate memory type + * drm/vmwgfx: Read bounding box memory from the appropriate register + * drm/vmwgfx: Add the possibility to validate a buffer as a MOB + * drm/vmwgfx: Hook up guest-backed queries + * drm/vmwgfx: Detach backing store from its resources when it is evicted + * drm/vmwgfx: Hook up guest-backed contexts + * drm/vmwgfx: Hook up guest-backed surfaces + * drm/vmwgfx: Add guest-backed shaders + * drm/vmwgfx: Validate guest-backed shader const commands + * drm/vmwgfx: Add new unused (by user-space) commands to the verifier + * drm/vmwgfx: Enable 3D for new hardware version + * drm/vmwgfx: Fix up the vmwgfx_drv.h header for new files + * drm/vmwgfx: Extend the command verifier to handle guest-backed on / off + * drm/vmwgfx: Make sure that the multisampling is off + * drm/vmwgfx: Implement a buffer object synccpu ioctl. + * drm/vmwgfx: Add a parameter to get max MOB memory size + * drm/vmwgfx: Block the BIND_SHADERCONSTS command + * drm/vmwgfx: Track context bindings and scrub them upon exiting execbuf + * drm/vmwgfx: Persistent tracking of context bindings + * drm/vmwgfx: Ditch the vmw_dummy_query_bo_prepare function + * drm/vmwgfx: Use the linux DMA api also for MOBs + * drm/vmwgfx: Update otable definitions + * drm/vmwgfx: Fix surface framebuffer check for guest-backed surfaces + * drm/vmwgfx: Implement 64-bit Otable- and MOB binding v2 + * drm/vmwgfx: Silence the device command verifier + * drm/vmwgfx: Invalidate surface on non-readback unbind + * drm/vmwgfx: Fix recently introduced sparse / smatch warnings and errors + * drm/vmwgfx: Don't commit staged bindings if execbuf fails + * drm/vmwgfx: Fix regression caused by "drm/ttm: make ttm reservation + calls behave like reservation calls" + * drm/vmwgfx: Fix SET_SHADER_CONST emulation on guest-backed devices + * drm/vmwgfx: Fix legacy surface reference size copyback + * drm/vmwgfx: Emulate legacy shaders on guest-backed devices v2 + * drm/vmwgfx: Detect old user-space drivers and set up legacy emulation + v2 + * drm/vmwgfx: Reemit context bindings when necessary v2 + * vmwgfx: Fix unitialized stack read in vmw_setup_otable_base + * drm/vmwgfx: Fix a couple of sparse warnings and errors + * drm/vmwgfx: Get maximum mob size from register SVGA_REG_MOB_MAX_SIZE + * drm/vmwgfx: unlock on error path in vmw_execbuf_process() + * drm/vmwgfx: Remove stray const + * drm/vmwgfx: Fix possible integer overflow + * drm/vmwgfx: Fix command defines and checks + * drm/vmwgfx: Remove some unused surface formats + * drm/vmwgfx: Make sure backing mobs are cleared when allocated. Update + driver date. + * drm/vmwgfx: avoid null pointer dereference at failure paths + + -- Tim Gardner Mon, 03 Mar 2014 13:04:10 -0700 + +linux (3.13.0-15.35) trusty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1287175 + + [ Andy Whitcroft ] + + * [Config] tools -- enable cpupower on ppc64el + * [Config] ppc64el -- enable perf tools + * [Config] powerpc -- enable perf tools + * [Config] ppc64el -- reduce MAX_ORDER with 64k pages + * [Config] ppc64el -- switch to 64K system pages + + [ Benjamin Herrenschmidt ] + + * SAUCE: powerpc/powernv: Add iommu DMA bypass support for IODA2 + + [ Paul Mackerras ] + + * SAUCE: powerpc: Increase stack redzone for 64-bit userspace to 512 + bytes + + [ Upstream Kernel Changes ] + + * perf trace: Fix ioctl 'request' beautifier build problems on !(i386 || + x86_64) arches + * kvm, vmx: Really fix lazy FPU on nested guest + - LP: #1278531 + + -- Tim Gardner Mon, 03 Mar 2014 13:22:56 +0000 + +linux (3.13.0-14.34) trusty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1285851 + + [ Andy Whitcroft ] + + * [Config] d-i -- add hyperv_keyboard to serial-modules udeb + - LP: #1285434 + + [ Hannes Frederic Sowa ] + + * SAUCE: ipv6: honor IPV6_PKTINFO with v4 mapped addresses on sendmsg + - LP: #1284535 + + [ Jason Wang ] + + * SAUCE: x86, hyperv: bypass the timer_irq_works() check + - LP: #1282693 + + [ Paolo Pisati ] + + * [Config] disable FB_OMAP2, DRM_OMAP=m + + [ Upstream Kernel Changes ] + + * ipv6: make IPV6_RECVPKTINFO work for ipv4 datagrams + - LP: #1284535 + * mei: remove flash_work_queue + * mei: drop redundant list_del_init + * mei: cleanup mei_irq_read_handler + * mei: enable marking internal commands + * mei: me: set dma mask using DMA mapping API + * Documentation/misc-devices/mei/mei-amt-version.c: remove unneeded call + of mei_deinit() + * mei: do not run reset flow from the interrupt thread + * mei: nfc: mei_nfc_free has to be called under lock + * mei: fix syntax in comments and debug output + * mei: revamp mei reset state machine + * mei: limit the number of consecutive resets + * mei: set client's read_cb to NULL when flow control fails + + -- Tim Gardner Wed, 26 Feb 2014 08:43:20 -0500 + +linux (3.13.0-13.33) trusty; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1284614 + * [Config] powerpc -- CONFIG_SCSI_IBMVSCSI=y + * [Config] CONFIG_RT_GROUP_SCHED=n + - LP: #1284731 + + [ Stefan Bader ] + + * [Config] Revert back to build IPMI as a module on all arches + + [ Tim Gardner ] + + * rebase to v3.13.5 + + [ Upstream Kernel Changes ] + + * cifs: ensure that uncached writes handle unmapped areas correctly + * rebase to v3.13.5 + + -- Andy Whitcroft Tue, 25 Feb 2014 12:15:09 +0000 + +linux (3.13.0-12.32) trusty; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1283074 + + * Revert "SAUCE: Drivers: hv: vmbus: Specify the target CPU that should + receive notification" + * [Packaging] tools -- clean up generic so it gives more targetted hints + * [Packaging] tools -- fix relative links + * rebase to v3.13.4 + + [ Colin Ian King ] + + * [Config][v2] armhf, arm64, powerpc, ppc64el: IPMI_SI=m + + [ Paolo Pisati ] + + * [Config] armhf: SOC_AM33XX=y + * [Config] armhf: TI_CPSW, TI_CPTS and TI_DAVINCI_[CPDMA|MDIO] = y + * [Config] armhf: RTC_DRV_OMAP=y + * [Config] build beaglebone and bleaglebone black dtbs + + [ Tony Breeds ] + + * SAUCE: powerpc/le: Ensure that the 'stop-self' RTAS token is handled + correctly + - LP: #1282712 + + [ Upstream Kernel Changes ] + + * Drivers: hv: vmbus: Specify the target CPU that should receive + notification + - LP: #1282694 + * Drivers: hv: vmbus: Don't timeout during the initial connection with + host + - LP: #1282694 + * hyperv: Add support for physically discontinuous receive buffer + - LP: #1282695 + * Input: hyperv-keyboard - pass through 0xE1 prefix + - LP: #1282699 + * rebase to v3.13.4 + + -- Andy Whitcroft Fri, 21 Feb 2014 12:51:17 +0000 + +linux (3.13.0-11.31) trusty; urgency=low + + [ Colin Ian King ] + + * [config] Set IPMI suppoort default to "y" + + [ Tim Gardner ] + + * [Config] CONFIG_USER_NS=y for ppc64el + * [Config] CONFIG_RESOURCE_COUNTERS=y for ppc64el + * Release Tracking Bug + - LP: #1282243 + + -- Tim Gardner Wed, 19 Feb 2014 12:04:43 -0500 + +linux (3.13.0-10.30) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] tools -- fix up do_tools interface which is assumed by + external tooling + + [ Tim Gardner ] + + * [Config] CONFIG_CGROUP_SCHED=y for ppc64el + * [Config] CONFIG_BLK_CGROUP=y for ppc64el + * [Config] CONFIG_USB_XHCI_HCD=y for ppc64el + * [Config] CONFIG_CGROUP_PERF=y for ppc64el + * Release Tracking Bug + - LP: #1281783 + + [ Upstream Kernel Changes ] + + * be2net: Use MCC_CREATE_EXT_V1 cmd for Skyhawk-R + - LP: #1281446 + * be2net: don't set "pport" field when querying "pvid" + - LP: #1281446 + * be2net: Log the profile-id used by FW during driver initialization + - LP: #1281446 + * be2net: do not call be_set/get_fw_log_level() on Skyhawk-R + - LP: #1281446 + * be2net: ignore mac-addr set call for an already programmed mac-addr + - LP: #1281446 + * be2net: fix incorrect setting of cmd_privileges for VFs + - LP: #1281446 + * be2net: Remove "10Gbps" from driver description string + - LP: #1281446 + * be2net: do not use frag index in the RX-compl entry + - LP: #1281446 + * be2net: use GET_MAC_LIST cmd to query mac-address from a pmac-id + - LP: #1281446 + * be2net: cleanup wake-on-lan code + - LP: #1281446 + * be2net: update driver version to 10.0.x + - LP: #1281446 + * be2net: Fix be_vlan_add/rem_vid() routines + - LP: #1281446 + + -- Tim Gardner Tue, 18 Feb 2014 13:13:24 -0700 + +linux (3.13.0-9.29) trusty; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1280291 + * [Config] lowlatency -- turn CONFIG_IRQ_FORCED_THREADING_DEFAULT off + temporarily + * [Packaging] tools -- split out "cloud only" tools into a cloud tools + package + + [ Paolo Pisati ] + + * [Config] armhf: DISPLAY_CONNECTOR_HDMI && DISPLAY_ENCODER_TPD12S015 =y + + [ Tim Gardner ] + + * rebase to v3.13.3 + + [ Upstream Kernel Changes ] + + * Revert "mmc: sdhci-pci: Fix possibility of chip->fixes being null" + * Revert "mmc: sdhci-pci: Fix BYT sd card getting stuck in runtime + suspend" + * NVMe: Avoid shift operation when writing cq head doorbell + - LP: #1256155 + * NVMe: remove deprecated IRQF_DISABLED + - LP: #1256155 + * NVMe: compat SG_IO ioctl + - LP: #1256155 + * NVMe: Fix lockdep warnings + - LP: #1256155 + * NVMe: Cache dev->pci_dev in a local pointer + - LP: #1256155 + * NVMe: Device resume error handling + - LP: #1256155 + * NVMe: Schedule reset for failed controllers + - LP: #1256155 + * NVMe: Abort timed out commands + - LP: #1256155 + * NVMe: Surprise removal handling + - LP: #1256155 + * NVMe: Async IO queue deletion + - LP: #1256155 + * NVMe: Dynamically allocate partition numbers + - LP: #1256155 + * NVMe: Disable admin queue on init failure + - LP: #1256155 + * NVMe: Add a pci_driver shutdown method + - LP: #1256155 + * NVMe: Include device and queue numbers in interrupt name + - LP: #1256155 + * NVMe: Correct uses of INIT_WORK + - LP: #1256155 + * NVMe: Namespace use after free on surprise removal + - LP: #1256155 + * intel_pstate: Add setting voltage value for baytrail P states. + - LP: #1270736 + * mmc: sdhci-pci: break out definitions to header file + * mmc: sdhci-pci: add support of O2Micro/BayHubTech SD hosts + * mmc: sdhci-pci: Fix BYT sd card getting stuck in runtime suspend + * mmc: sdhci-pci: Fix possibility of chip->fixes being null + + [ Upstream Kernel Changes ] + + * rebase to v3.13.3 + + -- Tim Gardner Thu, 13 Feb 2014 06:08:09 -0700 + +linux (3.13.0-8.28) trusty; urgency=low + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1278963 + + [ Paolo Pisati ] + + * [Config] armhf: RTC_DRV_PL031=y + + [ Serge Hallyn ] + + * SAUCE: Overlayfs: allow unprivileged mounts + + [ Upstream Kernel Changes ] + + * kexec: add sysctl to disable kexec_load + - LP: #1259570 + * SELinux: Fix kernel BUG on empty security contexts. + - CVE-2014-1874 + + -- Tim Gardner Tue, 11 Feb 2014 08:35:39 -0500 + +linux (3.13.0-8.27) trusty; urgency=low + + [ John Johansen ] + + * SAUCE: Add config option to disable new apparmor 3 semantics + -LP: #1270215 + + [ Tim Gardner ] + + * [debian] Fix indep_hdrs_pkg_name + - LP: #1134441 + * Update lttng to 00808267d3ba7cdcddfed7bec7e62a40463c1307 Version 2.4.0-rc3 + * Enabled lttng build + * Don't build lttng for armhf + lttng hates gcc-4.8 for armhf + * Release Tracking Bug + - LP: #1277309 + + [ Upstream Kernel Changes ] + + * rebase to v3.13.2 + - LP: #1260303 + - LP: #1260303 + - LP: #1268468 + + -- Tim Gardner Thu, 06 Feb 2014 09:25:51 -0700 + +linux (3.13.0-7.26) trusty; urgency=low + + [ John Johansen ] + + * SAUCE: apparmor: fix uninitialized lsm_audit membe + - LP: #1268727 + * Add config option to optionally enable new apparmor 3 semantics + + [ Tim Gardner ] + + * [Config] Add lowlatency to getabis + * [Config] CONFIG_SECURITY_APPARMOR_AA3_SEMANTICS=y + - LP: #1270215 + * Release Tracking Bug + - LP: #1276810 + + [ Upstream Kernel Changes ] + + * x86, x32: Correct invalid use of user timespec in the kernel + - LP: #1274349 + - CVE-2014-0038 + + -- Tim Gardner Wed, 05 Feb 2014 15:49:44 -0500 + +linux (3.13.0-7.25) trusty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: fix fmd headers" + * SAUCE: fix fmd headers + + -- Andy Whitcroft Tue, 04 Feb 2014 09:36:09 +0000 + +linux (3.13.0-7.24) trusty; urgency=low + + [ Stefan Bader ] + + * [Config] Make vmwgfx driver enable the framebuffer device + + [ Tim Gardner ] + + * rebase to v3.13.1 + * [Config] CONFIG_NFS_FS=m for ppc64el + * [Config] CONFIG_X86_SYSFB=n + https://lists.ubuntu.com/archives/kernel-team/2014-February/038166.html + * Release Tracking Bug + - LP: #1275898 + + [ Upstream Kernel Changes ] + + * i2c: piix4: Add support for AMD ML and CZ SMBus changes + - LP: #1272525 + * i2c: piix4: Use different message for AMD Auxiliary SMBus Controller + - LP: #1272525 + * mm: ignore VM_SOFTDIRTY on VMA merging + - LP: #1274917 + * drm/radeon: disable dpm on BTC + - LP: #1266984 + + [ Upstream Kernel Changes ] + + * rebase to v3.13.1 + + -- Tim Gardner Thu, 30 Jan 2014 15:24:48 +0000 + +linux (3.13.0-6.23) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] fix up architecture for linux-tools + + -- Andy Whitcroft Thu, 30 Jan 2014 09:00:41 +0000 + +linux (3.13.0-6.22) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] limit linux-udebs- to matching arch + * [Config] powerpc -- disable perf to fix FTBFS + * [Config] ppc64el -- fix up missing udebs + + -- Andy Whitcroft Wed, 29 Jan 2014 16:00:28 +0000 + +linux (3.13.0-6.21) trusty; urgency=low + + [ Andy Fleming ] + + * SAUCE: net: Add support for handling queueing in hardware + * SAUCE: of_mdio: Add of_phy_attach function + * SAUCE: phylib: Add generic 10G driver + * SAUCE: phylib: Support attaching to gen10g_driver + * SAUCE: phylib: Add Clause 45 read/write functions + + [ Andy Whitcroft ] + + * SAUCE: fix fmd headers + * [Packaging] lowlatency -- merge out of tree flavours + * SAUCE: allow IRQs to be irq-threaded by default via config + * [Config]: enable CONFIG_IRQ_FORCED_THREADING_DEFAULT for lowlatency + * [Config] powerpc -- fix up Build-depends: + * Release Tracking Bug + - LP: #1273747 + + [ Ben Collins ] + + * SAUCE: PPC: PCI: Fix pcibios_io_space_offset() so it works for 32-bit + ptr/64-bit rsrcs + * SAUCE: Revert "phy: vitesse make vsc824x_add_skew static" + * SAUCE: Fixup freescale usb phy driver to work on ppc64 + * SAUCE: xgmac_mdio: Silence read errors + * SAUCE: Provide booke stub for kvmppc_is_bigendian() + * SAUCE: Fix stack overflow on ppc32 + * SAUCE: Use resource_size_t instead of long for PCI resource address + * SAUCE: net/phy: Export function for use by dpaa_eth + * [Packaging] powerpc -- merge out of tree powerpc arch + + [ Bjorn Helgaas ] + + * SAUCE: Revert "EISA: Log device resources in dmesg" + - LP: #1251816 + * SAUCE: Revert "EISA: Initialize device before its resources" + - LP: #1251816 + + [ Emil Medve ] + + * SAUCE: phylib: Minimum hack to get the generic 10G PHY driver to work + with 10G "fixed-link"s + + [ Kumar Gala ] + + * SAUCE: fsl_qbman: Add drivers for Freescale DPAA Qman & Bman + * SAUCE: fsl_pme2: Add support for DPAA PME + * SAUCE: fmd: FMD14 integration + * SAUCE: dpaa_eth: Ethernet driver for Freescale QorIQ DPA Architecture + * SAUCE: powerpc/85xx: Add DPAA/networking support for CoreNet + + [ Madalin Bucur ] + + * SAUCE: net/flow: remove sleeping and deferral mechanism from + flow_cache_flush + * SAUCE: net/phy: abort genphy_read_status when link changes during speed + and duplex reading + + [ Stefan Bader ] + + * [Config] move some VMWare related modules into main package + - LP: #1271669 + + [ Tim Gardner ] + + * [Config] Add r815x to nic-modules + - LP: #1273735 + * [Config] CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y + - LP: #239479 + + [ Upstream Kernel Changes ] + + * mmc: sdhci-pci: break out definitions to header file + - LP: #1239938 + * mmc: sdhci-pci: add support of O2Micro/BayHubTech SD hosts + - LP: #1239938 + * powerpc/book3e: rename interrupt_end_book3e with __end_interrupts + * powerpc/book3e: support CONFIG_RELOCATABLE + * book3e/kexec/kdump: enable kexec for kernel + * book3e/kexec/kdump: create a 1:1 TLB mapping + * book3e/kexec/kdump: introduce a kexec kernel flag + * book3e/kexec/kdump: implement ppc64 kexec specfic + * book3e/kexec/kdump: redefine VIRT_PHYS_OFFSET + * book3e/kexec/kdump: recover "r4 = 0" to create the initial TLB + + -- Andy Whitcroft Tue, 28 Jan 2014 22:59:46 +0000 + +linux (3.13.0-5.20) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] tools -- do not make symlinks when not making packages + * [Packaging] tools -- tidy up control.stub.in ordering + * [Packaging] tools -- tools-common is shared and not conditional + * rebase to v3.13 + + [ Dirk Brandewie ] + + * SAUCE: intel_pstate: Add setting voltage value for baytrail P states. + + [ KY Srinivasan ] + + * SAUCE: Drivers: hv: vmbus: Specify the target CPU that should receive + notification + + [ Upstream Kernel Changes ] + + * rebase to v3.13 + - LP: #1270603 + + -- Andy Whitcroft Fri, 17 Jan 2014 15:45:31 +0000 + +linux (3.13.0-4.19) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] libunwind8-dev is now available for ppc64el + * [Packaging] tools -- make cpupower optional + * [Packaging] tools -- enable correctly for x86 + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1269872 + + [ Upstream Kernel Changes ] + + * SAUCE: ARM: OMAP: hwmod: Add SYSC offsets for AES IP + * SAUCE: ARM: OMAP4: hwmod: Add hwmod data for AES IP + * SAUCE: OMAP: AM33xx: hwmod: Correct AES module SYSC type + * SAUCE: crypto: omap-aes: add error check for pm_runtime_get_sync + + [ Upstream Kernel Changes ] + + * rebase to 85ce70fdf48aa290b4845311c2dd815d7f8d1fa5 + + -- Tim Gardner Wed, 15 Jan 2014 13:23:05 +0000 + +linux (3.13.0-3.18) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.13-rc8 + * [Packaging] efi -- allow EFI signatures on any arch + + [ Tim Gardner ] + + * [Config] Fix vcs-git path + * Release Tracking Bug + - LP: #1268683 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc8 + + -- Andy Whitcroft Sun, 12 Jan 2014 11:58:01 +0000 + +linux (3.13.0-2.17) trusty; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1267809 + * [Config] apply Platform support>>CPUIdle driver>>CPU Idle config + defaults + * [Config] apply Platform support>>CPU Frequency scaling config defaults + * [Config] CONFIG_PARIDE_EPATC8=y + * [Config] apply Device Drivers >> Broadcom specific AMBA config defaults + * [Config] apply Bus options >> PCI support >> RapidIO support >> RapidIO + Switch drivers config defaults + * [Config] apply Cryptographic API config defaults + * [Config] apply Device Drivers >> Common Clock Framework config defaults + * [Config] apply Device Drivers >> Distributed Switch Architecture + drivers config defaults + * [Config] apply Device Drivers >> Graphics support >> Backlight & LCD + device support config defaults + * [Config] apply Device Drivers >> Graphics support >> Support for frame + buffer devices >> Bootup logo config defaults + * annotations -- update in tree annotations + * [Config] apply Bus options >> PCI support >> RapidIO support config + defaults + * [Config] CONFIG_POWER_AVS=y CONFIG_RESET_CONTROLLER=y + * [Config] apply Device Drivers >> 1-wire Bus Masters config defaults + * [Config] apply CAN Device Drivers >> Platform CAN drivers with Netlink + support config defaults + * [Config] apply Device Drivers >> Character devices >> Serial drivers + config defaults + * [Config] apply Device Drivers >> Generic Thermal sysfs driver config + defaults + * [Config] apply Device Drivers >> Character devices >> TPM Hardware + Support config defaults + * [Config] apply Device Drivers >> Character devices config defaults + * [Config] apply Device Drivers >> HID support >> USB HID support >> USB + HID transport layer config defaults + * [Config] apply Device Drivers >> HID support >> HID bus support config + defaults + * [Config] apply Device Drivers >> HID support >> USB HID support config + defaults + * annotations -- update in tree annotations + * [Config] apply Device Drivers >> GPIO Support config defaults + * [Config] update configs for apparmour update + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot + * SAUCE: apparmor: fix unix domain sockets to be mediated on connection + - LP: #1208988 + * SAUCE: apparmor: allocate path lookup buffers during init + - LP: #1208988 + * SAUCE: (no-up) apparmor: Fix tasks not subject to, reloaded policy + - LP: #1236455 + + [ Tim Gardner ] + + * Revert "[Debian] getabis: Preface module with package name" + * [Config] Added ppc64el to getabis + * [packaging] Bump ABI for every new release + + -- Andy Whitcroft Fri, 10 Jan 2014 11:48:39 +0000 + +linux (3.13.0-1.16) trusty; urgency=low + + * First 3.13 upload. + * Release tracker + - LP: #1266852 + + -- Tim Gardner Tue, 07 Jan 2014 09:21:26 -0700 + +linux (3.13.0-0.15) trusty; urgency=low + + [ Tim Gardner ] + + * rebase to v3.13-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc7 + + -- Tim Gardner Sun, 05 Jan 2014 06:13:33 -0700 + +linux (3.13.0-0.14) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to 7a262d2ed9fa42fad8c4f243f8025580b58cf2f6 + + [ Tim Gardner ] + + * Remove ubuntu/dm-raid4-5 in favor of CONFIG_MD_RAID456 + * Update lttng to Version 2.4.0-rc2 + * lttng: Disabled trace_kvm_async_pf_completed + * [Config] CONFIG_IMA=y + - LP: #1244627 + + [ Upstream Kernel Changes ] + + * rebase to 7a262d2ed9fa42fad8c4f243f8025580b58cf2f6 + + -- Tim Gardner Thu, 02 Jan 2014 12:57:13 -0700 + +linux (3.13.0-0.13) trusty; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: aufs3 -- (no-up) aufs3-base.patch + * ubuntu: aufs3 -- (no-up) aufs3-mmap.patch + * ubuntu: aufs3 -- (no-up) aufs3-standalone.patch + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: AUFS -- update to 7b136a27b021da9010d8b6c101939dd298e46be7 + * ubuntu: aufs3 -- enable + * ubuntu: aufs3 -- update configs + + -- Andy Whitcroft Thu, 02 Jan 2014 09:41:02 +0000 + +linux (3.13.0-0.12) trusty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc6 + + -- Tim Gardner Tue, 31 Dec 2013 06:16:03 -0700 + +linux (3.13.0-0.11) trusty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: suspicious unlocked ->status reading and writing in ipc/sem.c + * [Config] ppc64el -- initial defconfig based -generic flavour + * [Config] initial defconfig for ppc64el + * [Config] ubuntuise ppc64el config + * [Config] ubuntuise ppc64el config part 2 + * [Config] d-i -- update empty udebs list + * [Config] ppc64el -- split extras package + + [ Anton Blanchard ] + + * SAUCE: KVM: PPC: Book3S HV: Add little-endian guest support + + [ Benjamin Herrenschmidt ] + + * SAUCE: powerpc/powernv: Add calls to support little endian + + [ Cédric Le Goater ] + + * SAUCE: KVM: PPC: Book3S: add helper routine to load guest instructions + * SAUCE: KVM: PPC: Book3S: add helper routines to detect endian order + * SAUCE: KVM: PPC: Book3S: MMIO emulation support for little endian + guests + + [ Paul E. McKenney ] + + * SAUCE: powerpc: Make 64-bit non-VMX copy_tofrom_user() bi-endian + + -- Andy Whitcroft Fri, 27 Dec 2013 16:48:55 +0000 + +linux (3.13.0-0.10) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.13-rc5 + * [Config] updateconfigs following rebase to v3.13-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc5 + - LP: #1260303 + - LP: #1260303 + - LP: #1260225 + + -- Andy Whitcroft Mon, 23 Dec 2013 12:48:28 +0000 + +linux (3.13.0-0.9) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i -- allow missing firmware + + -- Andy Whitcroft Fri, 20 Dec 2013 17:57:06 +0000 + +linux (3.13.0-0.8) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] annotations -- first pass over entire config + * [Config] drop libunwind8-dev from Build-Depends for ppc64el + + [ Tim Gardner ] + + * [Config] Add arm64 device tree files + - LP: #1262901 + + -- Andy Whitcroft Thu, 19 Dec 2013 18:36:43 +0000 + +linux (3.13.0-0.7) trusty; urgency=low + + [ Rajesh B Prathipati ] + + * SAUCE: powerpc: Make unaligned accesses endian-safe for powerpc + + [ Tim Gardner ] + + * [Config] CONFIG_REGULATOR_S2MPS11=n for FTBS + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc4 + - LP: #1259790 + - LP: #1259437 + - LP: #1259435 + + -- Tim Gardner Fri, 13 Dec 2013 07:56:34 -0700 + +linux (3.13.0-0.6) trusty; urgency=low + + [ Paolo Pisati ] + + * [Config] armhf: arm64: VIRTIO_[BLK|MMIO|NET|CONSOLE|BALLOON]=y + * [Config] i386: amd64: VIRTIO_CONSOLE=y + + [ Tim Gardner ] + + * [Config] CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y + + -- Tim Gardner Sun, 08 Dec 2013 09:22:01 -0700 + +linux (3.13.0-0.5) trusty; urgency=low + + [ Andy Whitcroft ] + + * correct bug listing for v3.13-rc2 rebase + * [Config] ppc64el -- create linux-libc-dev + * [Debian] Improve tools version message + - LP: #1257715 + + [ Serge Hallyn ] + + * SAUCE: fork: Allow CLONE_PARENT after setns(CLONE_NEWPID)] + - LP: #1248590 + * SAUCE: vfs: Fix a regression in mounting proc + + [ Tim Gardner ] + + * [Config] Build-in ohci-pci + - LP: #1244176 + * Rebase to v3.13-rc3 + + [ Upstream Kernel Changes ] + + * Revert "Revert "fork: unify and tighten up CLONE_NEWUSER/CLONE_NEWPID + checks"" + - LP: #1248590 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc3 + - LP: #1256840 + - LP: #1256212 + + -- Tim Gardner Sat, 07 Dec 2013 07:55:39 -0700 + +linux (3.13.0-0.4) trusty; urgency=low + + [ Tim Gardner ] + + * Rebase to v3.13-rc2 + + [ Upstream Kernel Changes ] + + * rebase to v3.13-rc2 + + -- Tim Gardner Fri, 29 Nov 2013 23:54:05 -0500 + +linux (3.13.0-0.3) trusty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: Fix DocBook FTBS" + + [ Tim Gardner ] + + * [Debian] Re-sign modules after debug objcopy + - LP: #1253155 + * [Config] CONFIG_EXT4_USE_FOR_EXT23=y + + [ Upstream Kernel Changes ] + + * doc: fix generation of device-drivers + * rebase to b975dc3689fc6a3718ad288ce080924f9cb7e176 + + -- Tim Gardner Tue, 26 Nov 2013 12:24:42 -0700 + +linux (3.13.0-0.2) trusty; urgency=low + + [ Tim Gardner ] + + * SAUCE: Fix DocBook FTBS + + -- Tim Gardner Mon, 25 Nov 2013 13:24:15 -0700 + +linux (3.13.0-0.1) trusty; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to 7e3528c3660a2e8602abc7858b0994d611f74bc3 + + -- Tim Gardner Tue, 12 Nov 2013 07:28:53 -0700 + +linux (3.13.0-0.0) trusty; urgency=low + + * Major release bump. + + -- Andy Whitcroft Tue, 12 Nov 2013 21:37:52 +0000 + +linux (3.12.0-2.7) trusty; urgency=low + + * Fixed armhf ABI build failure. + * Release tracker + - LP: #1249477 + + -- Tim Gardner Fri, 08 Nov 2013 16:22:45 -0700 + +linux (3.12.0-2.6) trusty; urgency=low + + [ Joseph Salisbury ] + + * SAUCE: tg3: Add support for new 57786 device id. + - LP: #1242610 + + [ Tim Gardner ] + + * [Config] CONFIG_OABI_COMPAT=n + * [Config] add the wandboard to shipped dtb + - LP: #1249421 + * Release tracker + - LP: #1249477 + + -- Tim Gardner Fri, 08 Nov 2013 12:23:18 -0700 + +linux (3.12.0-2.5) trusty; urgency=low + + [ Andy Whitcroft ] + + * rebase to mainline v3.12 + * [Config] updateconfigs following rebase to v3.12 + * postinst -- improve relative symlink detection with missing files + - LP: #1248053 + * postinst -- fix unchanged link detection + * [Config] update configs following addition of apparmor fixes + + [ Anthony Wong ] + + * SAUCE: Work around broken ACPI backlight on Dell Inspiron 5537 + - LP: #1231305 + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot + * SAUCE: apparmor: fix unix domain sockets to be mediated on connection + - LP: #1208988 + * SAUCE: apparmor: allocate path lookup buffers during init + - LP: #1208988 + + [ Tim Gardner ] + + * [Config] Remove superfluous ubuntu/lttng-modules + + [ Upstream Kernel Changes ] + + * Revert "fork: unify and tighten up CLONE_NEWUSER/CLONE_NEWPID checks" + - LP: #1248590 + + [ Upstream Kernel Changes ] + + * rebase to v3.12 + - LP: #1222850 + + [ Adam Conrad ] + * etc/getabis: Fetch arm64/generic abis as well + + -- Andy Whitcroft Wed, 06 Nov 2013 21:00:21 +0000 + +linux (3.12.0-1.3) trusty; urgency=low + + [ Andy Whitcroft ] + + * [Config] arm64 -- add arch to the configuration handlers + * [Config] arm64 -- add generic flavour + * [Config] arm64 -- default config + * [Config] arm64 -- fix up various FTBFS config options + * SAUCE: arm64: export __copy_in_user to modules + * [Config] arm64 -- disable ABI/module checks + * [Config] arm64 -- enforcer -- add arm64 to the enforcer + * [Config] arm64 -- enable udebs for arm64 + + [ Colin Watson ] + + * [Config] Clean up various udeb Provides + + [ Paolo Pisati ] + + * [Config] AHCI_IMX=y + * [Config] build imx*-wandboard dtbs + + [ Serge Hallyn ] + + * SAUCE: device_cgroup: remove can_attach + + [ Tim Gardner ] + + * rebase to v3.12-rc7 + * SAUCE: KVM: Fix modprobe failure for kvm_intel/kvm_amd + * Release tracker + - LP: #1245932 + + [ Upstream Kernel Changes ] + + * rebase to v3.12-rc7 + - LP: #1180881 + - LP: #1180881 + - LP: #1217957 + + -- Tim Gardner Sun, 27 Oct 2013 22:08:55 -0600 + +linux (3.12.0-0.2) trusty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) scsi: hyper-v storage -- mark as preferring READ + CAPACITY (16) at SPC-2" + * Revert "SAUCE: (no-up) scsi: hyper-v storage -- mark as VPD capable at + SPC-2" + * Revert "SAUCE: (no-up) scsi: add scsi device flag to request READ + CAPACITY (16) be preferred" + * Revert "SAUCE: (no-up) scsi: add scsi device flag to request VPD pages + be used at SPC-2" + * Revert "overlayfs: Update to v19" + * Revert "ubuntu: overlayfs v18 -- -- overlayfs: implement show_options" + * Revert "ubuntu: overlayfs v18 -- -- overlayfs: add statfs support" + * Revert "ubuntu: overlayfs v18 -- -- overlay filesystem" + * Revert "ubuntu: overlayfs v18 -- -- vfs: introduce + clone_private_mount()" + * Revert "ubuntu: overlayfs v18 -- -- vfs: export do_splice_direct() to + modules" + * Revert "ubuntu: overlayfs v18 -- -- overlay: overlay filesystem + documentation" + * ubuntu: overlayfs v20 -- overlayfs: add statfs support + * [Config] fix linux-libc-dev generation for arm64 + * [Config] fix linux-libc-dev generation for x32 + * [Config] add linux-libc-dev generation for ppc64el + + [ Erez Zadok ] + + * ubuntu: overlayfs v20 -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs v20 -- vfs: add i_op->dentry_open() + * ubuntu: overlayfs v20 -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs v20 -- vfs: export __inode_permission() to modules + * ubuntu: overlayfs v20 -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs v20 -- overlay filesystem + * ubuntu: overlayfs v20 -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs v20 -- overlay: overlay filesystem documentation + + [ Paolo Pisati ] + + * [Config] arm: VIRTIO_[BLK|NET|MMIO]=y + + [ Seth Forshee ] + + * SAUCE: (no-up) ACPI: Disable Windows 8 compatibility for some Lenovo + ThinkPads + - LP: #1183856 + + [ Tim Gardner ] + + * [Config] CONFIG_CRYPTO_CRCT10DIF=y, CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m + * rebase to v3.12-rc2 + * updateconfigs + * [Config] disable CONFIG_FB_VESA enforcer check + * [Config] Disable lttng for FTBS + * rebase to v3.12-rc3 + * rebase to v3.12-rc4 + * [Config] CONFIG_ANDROID=n + - LP: #1235161 + * [Config] CONFIG_L2TP_V3=y + - LP: #1235914 + * [Config] CONFIG_USB_OTG=n for all arches + * Release tracker + - LP: #1242811 + + [ Upstream Kernel Changes ] + + * scsi: hyper-v storsvc switch up to SPC-3 + + * rebase to v3.12-rc6 + - LP: #1235977 + - LP: #1235523 + - LP: #1239392 + - LP: #1227491 + + * rebase to v3.12-rc3 + - LP: #1231931 + + * rebase to v3.12-rc2 + - LP: #1213820 + - LP: #1213055 + - LP: #1198030 + + -- Tim Gardner Mon, 23 Sep 2013 07:41:07 -0600 + +linux (3.11.0-8.15) saucy; urgency=low + + [ Tim Gardner ] + + * Release tracker + - LP: #1227969 + + * Update lttng + Updated to git://git.lttng.org/lttng-modules.git 9998f5216f4641a79e158135 + Version 2.3.0+ + + [ Upstream Kernel Changes ] + + * igb: Add additional get_phy_id call for i354 devices + - LP: #1219619 + * igb: Read flow control for i350 from correct EEPROM section + - LP: #1219619 + * timekeeping: Fix HRTICK related deadlock from ntp lock changes + Required for lttng update. + + -- Tim Gardner Thu, 19 Sep 2013 07:41:49 -0600 + +linux (3.11.0-7.14) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] sort out linux-tools naming + - LP: #1205284 + * [Packaging] linux-tools: switch to common generic version helper + + [ Paolo Pisati ] + + * [Config] highbank: ecx1000: CPU_IDLE causes instabilities, disable it + + [ Tim Gardner ] + + * Release tracker + - LP: #1226160 + + [ Tony Lindgren ] + + * SAUCE: ARM: dts: Fix muxing and regulator for wl12xx on the SDIO bus + for pandaboard + + [ Upstream Kernel Changes ] + + * USB: handle LPM errors during device suspend correctly + - LP: #1011415 + * usb: don't check pm qos NO_POWER_OFF flag in usb_port_suspend() + - LP: #1011415 + * usb: Don't fail port power resume on device disconnect. + - LP: #1011415 + + [ Upstream Kernel Changes ] + + * rebase to v3.11.1 + + -- Tim Gardner Wed, 11 Sep 2013 07:30:17 -0600 + +linux (3.11.0-7.13) saucy; urgency=low + + * Release tracker + - LP: #1223545 + + [ Andy Whitcroft ] + + * SAUCE: (no-up) scsi: add scsi device flag to request VPD pages be used at SPC-2 + - LP: #1223499 + * SAUCE: (no-up) scsi: add scsi device flag to request READ CAPACITY (16) be preferred + - LP: #1223499 + * SAUCE: (no-up) scsi: hyper-v storage -- mark as VPD capable at SPC-2 + - LP: #1223499 + * SAUCE: (no-up) scsi: hyper-v storage -- mark as preferring READ CAPACITY (16) at SPC-2 + - LP: #1223499 + + [ Maximiliano Curia ] + + * SAUCE: (no-up) Only let characters through when there are active readers. + - LP: #1208740 + + [ Tim Gardner ] + + * [Debian] getabis: Commit new ABI directory, remove the old + * [Config] CONFIG_EFIVAR_FS=y + - LP: #1223195 + * [Config] CONFIG_EFI_VARS_PSTORE=m, + CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE=n + * SAUCE: (no-up) USB: input: cm109.c: Convert high volume dev_err() to dev_err_ratelimited() + - LP: #1222850 + + [ Upstream Kernel Changes ] + + * Intel xhci: refactor EHCI/xHCI port switching + - LP: #1210858 + + -- Tim Gardner Tue, 10 Sep 2013 09:00:19 -0600 + +linux (3.11.0-6.12) saucy; urgency=low + + * Release tracker + - LP: #1222893 + + [ Andy Whitcroft ] + + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch" + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-base.patch" + * ubuntu: (no-squash) AUFS3 -- aufs3-base.patch + * ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch + - LP: #1222407 + + [ Paolo Pisati ] + + * [Config] restore mmc boot on panda + + [ Tyler Hicks ] + + * SAUCE: apparmor: Use shash crypto API interface for profile hashes + - LP: #1216294 + + [ Upstream Kernel Changes ] + + * net: calxedaxgmac: remove NETIF_F_FRAGLIST setting + * net: calxedaxgmac: read correct field in xgmac_desc_get_buf_len + * net: calxedaxgmac: fix race between xgmac_tx_complete and xgmac_tx_err + * net: calxedaxgmac: fix possible skb free before tx complete + * net: calxedaxgmac: update ring buffer tx_head after barriers + * net: calxedaxgmac: fix race with tx queue stop/wake + * net: calxedaxgmac: enable interrupts after napi_enable + * net: calxedaxgmac: fix various errors in xgmac_set_rx_mode + * net: calxedaxgmac: remove some unused statistic counters + * net: calxedaxgmac: fix rx DMA mapping API size mismatches + * net: calxedaxgmac: fix xgmac_xmit DMA mapping error handling + * mfd: rtsx: Read vendor setting from config space + - LP: #1201698 + + -- Tim Gardner Mon, 09 Sep 2013 07:21:06 -0600 + +linux (3.11.0-5.11) saucy; urgency=low + + * Release tracker + - LP: #1221886 + + [ Adam Lee ] + + * SAUCE: Bluetooth: Add support for 04ca:2007 + - LP: #1153448 + * SAUCE: Bluetooth: Add support for 105b:e065 + - LP: #1161261 + + [ Gavin Guo ] + + * SAUCE: Bluetooth: Add support for Broadcom 413c:8143 + - LP: #1166113 + + [ Upstream Kernel Changes ] + + * igb: Reset the link when EEE setting changed + - LP: #1219619 + * igb: Read register for latch_on without return value + - LP: #1219619 + * igb: Added rcu_lock to avoid race + - LP: #1219619 + * igb: don't allow SR-IOV without MSI-X + - LP: #1219619 + * igb: Update MTU so that it is always at least a standard frame size + - LP: #1219619 + * igb: Refactor of init_nvm_params + - LP: #1219619 + * igb: Refactor NVM read functions to accommodate devices with no flash + - LP: #1219619 + * igb: Add device support for flashless SKU of i210 device + - LP: #1219619 + * igb: Fix get_fw_version function for all parts + - LP: #1219619 + * igb: Add macro for size of RETA indirection table + - LP: #1219619 + * igb: Expose RSS indirection table for ethtool + - LP: #1219619 + * igb: Don't look for a PBA in the iNVM when flashless + - LP: #1219619 + * igb: Implementation of 1-sec delay for i210 devices + - LP: #1219619 + * igb: New PHY_ID for i354 device + - LP: #1219619 + * igb: M88E1543 PHY downshift implementation + - LP: #1219619 + * igb: No PHPM support in i354 devices + - LP: #1219619 + * igb: Support to get 2_5G link status for appropriate media type + - LP: #1219619 + * igb: Get speed and duplex for 1G non_copper devices + - LP: #1219619 + * igb: Implementation to report advertised/supported link on i354 devices + - LP: #1219619 + * igb: Update version number + - LP: #1219619 + * Bluetooth: Take proper tty_struct references + - LP: #1189998 + * Bluetooth: Remove the device from the list in the destructor + - LP: #1189998 + * Bluetooth: Move the tty initialization and cleanup out of open/close + - LP: #1189998 + * Bluetooth: Implement .activate, .shutdown and .carrier_raised methods + - LP: #1189998 + * Bluetooth: Fix the reference counting of tty_port + - LP: #1189998 + * Bluetooth: Purge the dlc->tx_queue to avoid circular dependency + - LP: #1189998 + + [ Wen-chien Jesse Sung ] + + * SAUCE: Bluetooth: Support for loading broadcom patchram firmware + - LP: #1065400 + * SAUCE: Bluetooth: Add support for 13d3:3388 and 13d3:3389 + - LP: #1065400 + + -- Tim Gardner Thu, 05 Sep 2013 08:06:17 -0600 + +linux (3.11.0-5.10) saucy; urgency=low + + [ Andy Whitcroft ] + + * Release tracker + - LP: #1220222 + * Revert "[Config] Fix ubuntu directoy Kbuilds" + * Revert "aufs update dropped some Kbuild files" + * Revert "ubuntu: AUFS -- follow rename of loop.h into drivers/block" + * Revert "ubuntu: AUFS -- update to + 8e503d4142c189ed6c47a2177ad2cd058e8d340e" + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch" + * Revert "ubuntu: (no-squash) AUFS3 -- aufs3-base.patch" + * rebase to v3.11 final + * [Config] clean up ubuntu/Kconfig and ubuntu/Makefile + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: (no-squash) AUFS3 -- aufs3-base.patch + * ubuntu: (no-squash) AUFS3 -- aufs3-standalone.patch + * ubuntu: AUFS -- update to 5ac5fe26a90a818218310e208d17688fddb07622 + * ubuntu: (no-squash) AUFS -- enable aufs + * ubuntu: AUFS -- fix remaining d_count references to use accessor + * ubuntu: lttng -- follow rename of pid_ns + * SAUCE: disable stack-protector for ARM compressed bootloader + + [ Paolo Pisati ] + + * [Config] ARM_ATAG_DTB_COMPAT=y + + [ Rob Herring ] + + * [Config] Enable KVM and virtio for armhf generic-lpae + + [ Tim Gardner ] + + * [Config] CONFIG_ARPD=y + * [Config] CONFIG_ZSWAP=y + - LP: #1215379 + + [ Upstream Kernel Changes ] + + * uvcvideo: quirk PROBE_DEF for Dell SP2008WFP monitor. + - LP: #1217957 + * ARM: use phys_addr_t for DMA zone sizes + * ARM: highbank: enable DMA zone for LPAE + * ARM: highbank: select ARCH_HAS_HOLES_MEMORYMODEL + * ARM: highbank: select required errata work-arounds + * DMA: fix AMBA PL08x compilation issue with 64bit DMA address type + * DMA: fix printk warning in AMBA PL08x DMA driver + * ARM: highbank: select ARCH_DMA_ADDR_T_64BIT for LPAE + * ARM: move outer_cache declaration out of ifdef + * ARM: highbank: avoid L2 cache smc calls when PL310 is not present + * ARM: highbank: clean-up some unused includes + * ARM: xen: only set pm function ptrs for Xen guests + + [ Upstream Kernel Changes ] + + * rebase to v3.11 + + -- Andy Whitcroft Tue, 03 Sep 2013 17:08:06 +0100 + +linux (3.11.0-4.9) saucy; urgency=low + + [ Tim Gardner ] + + * rebase to v3.11-rc7 + * Release tracker + - LP: #1216962 + + [ Upstream Kernel Changes ] + + * mwifiex: do not create AP and P2P interfaces upon driver loading + - LP: #1212720 + + -- Tim Gardner Mon, 26 Aug 2013 06:25:35 -0600 + +linux (3.11.0-3.8) saucy; urgency=low + + [ Johannes Berg ] + + * SAUCE: mac80211: ignore (E)CSA in probe response frames + - LP: #1201470 + + -- Tim Gardner Fri, 23 Aug 2013 09:47:36 -0600 + +linux (3.11.0-3.7) saucy; urgency=low + + [ Tim Gardner ] + + * SAUCE: (no-up) hv_vss_daemon -- prevent self-daemonising to allow + upstart to track + * SAUCE: (no-up) hv -- bodge hv_vss_daemon so it can use the local + linux/hyperv.h + * SAUCE: hv: Add vss daemon to Makefile + * [Debian] Add hv_vss_daemon to tools package + - LP: #1213282 + * [Config] Fix ubuntu directoy Kbuilds + - LP: #1181755 + + -- Tim Gardner Tue, 20 Aug 2013 08:34:05 -0600 + +linux (3.11.0-3.6) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] tools: conditionalise x86 and hyper-v tools sensibly + * [Config] tools: enable x86 and hyper-v + + [ John Johansen ] + + * Revert "SAUCE: (no-up) apparmor: Sync to apparmor 3 dev stable + snapshot" + * Revert "SAUCE: (no-up) apparmor: fix apparmor module status for none + root users" + * SAUCE: (no-up) apparmor: Sync to apparmor 3 - alpha 4 snapshot + + [ Joseph Salisbury ] + + * SAUCE: (no-up) intel_ips: blacklist ASUSTek G60JX laptops + - LP: #1210848 + + [ Kamal Mostafa ] + + * [debian] tools: ship 'cpupower' in linux-tools + - LP: #1158668 + * [Config] Build-dep on libpci-dev for cpu tools + - LP: #1158668 + + [ Tim Gardner ] + + * rebase to v3.11-rc6 + * Release tracker + - LP: #1213941 + + -- Tim Gardner Fri, 16 Aug 2013 07:02:07 -0600 + +linux (3.11.0-2.5) saucy; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_PM_DEBUG=y + - LP: #1210539 + * rebase to v3.11-rc5 + * Release tracker + - LP: #1211378 + + -- Tim Gardner Mon, 12 Aug 2013 06:10:39 -0600 + +linux (3.11.0-1.4) saucy; urgency=low + + [ Tim Gardner ] + + * Bump ABI when making changes to the inclusion list lest + you cause conflicts with existing installed kernel + packages. + - LP: #1210331 + + -- Tim Gardner Fri, 09 Aug 2013 03:03:51 +0100 + +linux (3.11.0-0.3) saucy; urgency=low + + [ Tim Gardner ] + + * [Config] Include rbd and kvm in the virtual inclusion list + - LP: #1206961 + * [Config] Removed obsolete inclusion list entries + + -- Tim Gardner Tue, 06 Aug 2013 08:52:14 +0100 + +linux (3.11.0-0.2) saucy; urgency=low + + [ Bruce Allan ] + + * SAUCE: (no-up) e1000e: fix I217/I218 PHY initialization flow + - LP: #1206757 + * SAUCE: (no-up) e1000e: enable support for new device IDs + - LP: #1206757 + + [ John Johansen ] + + * SAUCE: (no-up) apparmor: Sync to apparmor 3 dev stable snapshot + + [ Paolo Pisati ] + + * build vexpress a15 dtb + * [Config] disable Broadcom bcm support (ARCH_BCM) + * [Config] disable Allwinner a1x support (ARCH_SUNXI) + * [Config] disable WonderMedia WM8850 support (ARCH_WM8850) + * [Config] disable Rockchip support (ARCH_ROCKCHIP) + * [Config] disable STMicroelectronics STiH41x SOCs (ARCH_STI) + * [Config] disable TI Keystone, AM43xx and OMAP5 support + * [Config] ARM_APPENDED_DTB=y + + [ Tim Gardner ] + + * rebase to v3.11-rc4 + * overlayfs: Update to v19 + * [Config] Enable overlayfs + * SAUCE: Fix lttng compile errors + + [ Upstream Kernel Changes ] + + * rebase to v3.11-rc4 + - LP: #1163720 + - LP: #1162026 + - LP: #1195636 + - LP: #1195597 + - LP: #1180409 + - LP: #1168430 + + -- Tim Gardner Sun, 04 Aug 2013 03:45:31 -0600 + +linux (3.11.0-0.1) saucy; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to 64ccccf8525fee499625b517c0faadf784c79e93 + - LP: #1163720 + - LP: #1162026 + - LP: #1195636 + - LP: #1195597 + - LP: #1180409 + - LP: #1168430 + + -- Tim Gardner Mon, 08 Jul 2013 08:50:46 -0600 + +linux (3.10.0-2.10) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_INTEL_MEI*=m + - LP: #1196155 + * [Config] CONFIG_DEBUG_INFO=y + + [ Stephen Warren ] + + * [Config] fix Calxeda xgmac module filename + + [ Upstream Kernel Changes ] + + * Revert "serial: 8250_pci: add support for another kind of NetMos + Technology PCI 9835 Multi-I/O Controller" + - LP: #1190967 + * mfd: lpc_ich: Add support for Intel Avoton SoC + - LP: #1196658 + + -- Andy Whitcroft Fri, 05 Jul 2013 18:08:02 +0100 + +linux (3.10.0-2.9) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10 + + [ John Johansen ] + + * Revert "SAUCE: (no-up) apparmor: Fix quieting of audit messages for + network mediation" + * Revert "SAUCE: (no-up) apparmor: Fix compile warnings" + * Revert "SAUCE: (no-up) AppArmor: basic networking rules" + * Revert "SAUCE: (no-up) apparmor: Add the ability to mediate mount" + * Revert "SAUCE: (no-up) AppArmor: Add profile introspection file to + interface" + * Revert "SAUCE: (no-up) AppArmor: Disable Add PR_{GET,SET}_NO_NEW_PRIVS + to prevent execve from granting privs" + * SAUCE: (no-up) apparmor: Sync to apparmor 3 dev stable snapshot + + [ Upstream Kernel Changes ] + + * rebase to v3.10 + + -- Andy Whitcroft Mon, 01 Jul 2013 17:42:29 +0100 + +linux (3.10.0-1.8) saucy; urgency=low + + [ Andy Whitcroft ] + + * Release Tracking Bug + - LP: #1195717 + + [ Andy Whitcroft ] + + * Revert "ubuntu: overlayfs -- follow change to do_splice_direct + interface" + * Revert "ubuntu: overlayfs -- expose do_splice_direct prototype" + * Revert "SAUCE: ubuntu: overlayfs -- ovl_path_open should not take path + reference" + * Revert "ubuntu: overlayfs -- add FS_ALIAS" + * Revert "ubuntu: overlayfs -- + overlayfs-copy-up-i_uid-i_gid-from-the-underlying-inode" + * Revert "ubuntu: overlayfs -- ovl-switch-to-inode_permission" + * Revert "ubuntu: overlayfs -- vfs-export-inode_permission-to-modules" + * Revert "ubuntu: overlayfs -- overlayfs-create-new-inode-in-ovl_link" + * Revert "ubuntu: overlayfs -- + overlayfs-fix-possible-leak-in-ovl_new_inode" + * Revert "ubuntu: overlayfs -- fs-limit-filesystem-stacking-depth" + * Revert "ubuntu: overlayfs -- overlay-overlay-filesystem-documentation" + * Revert "ubuntu: overlayfs -- overlayfs-implement-show_options" + * Revert "ubuntu: overlayfs -- overlayfs-add-statfs-support" + * Revert "ubuntu: overlayfs -- overlay filesystem" + * Revert "ubuntu: overlayfs -- vfs-introduce-clone_private_mount" + * Revert "ubuntu: overlayfs -- vfs-export-do_splice_direct-to-modules" + * Revert "ubuntu: overlayfs -- vfs-add-i_op-dentry_open" + * ubuntu: overlayfs v18 -- -- overlayfs: add statfs support + + [ Erez Zadok ] + + * ubuntu: overlayfs v18 -- -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs v18 -- -- vfs: add i_op->dentry_open() + * ubuntu: overlayfs v18 -- -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs v18 -- -- vfs: export __inode_permission() to modules + * ubuntu: overlayfs v18 -- -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs v18 -- -- overlay filesystem + * ubuntu: overlayfs v18 -- -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs v18 -- -- overlay: overlay filesystem documentation + + [ Tim Gardner ] + + * [Config] CONFIG_SUNRPC_DEBUG=y + - LP: #1127319 + + -- Andy Whitcroft Fri, 28 Jun 2013 10:26:52 +0100 + +linux (3.10.0-0.7) saucy; urgency=low + + [ Andy Whitcroft ] + + * autopkgtest: switch Depends: to build-essential + + -- Andy Whitcroft Tue, 25 Jun 2013 08:40:55 +0100 + +linux (3.10.0-0.6) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_ARCH_TEGRA to fix FTBFS on armhf + * SAUCE: ubuntu: overlayfs -- ovl_path_open should not take path reference + - LP: #1098378 + * ubuntu: AUFS -- update to 4f14cef47eb7c23eda7198931fbab1040866b6ee + * ubuntu: overlayfs -- expose do_splice_direct prototype + * ubuntu: overlayfs -- follow change to do_splice_direct interface + * [Config] flip CONFIG_NO_HZ_FULL_ALL off as it is overheating machines + - LP: #1192691 + + [ Stefan Bader ] + + * (d-i) Add dm-snapshot to md-modules + - LP: #1191726 + + [ Tim Gardner ] + + * Release tracker + - LP: #1194149 + * [Config] CONFIG_WIL6210=n for armhf + * [Config] d-i: Add calxedaxgmac to nic-modules + - LP: #1192358 + * [debian] Use dh_strip + - LP: #1192759 + * [Config] Enable perf for armhf + * do_tools=false when cross compiling + * [Config] CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y + - LP: #1108082 + + [ Upstream Kernel Changes ] + + * nsp32: switch reset delay to msleep() as it is tooo long + * alx: add a simple AR816x/AR817x device driver + Plucked from linux-next. replaces ubuntu/alx in favor of + 'to be merged' version in 3.11. + * rebase to v3.10-rc7 + - LP: #1189363 + + -- Tim Gardner Sat, 22 Jun 2013 18:10:31 -0600 + +linux (3.10.0-0.5) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10-rc6 + * [Config] updateconfigs following rebase to v3.10-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc6 + + -- Andy Whitcroft Mon, 17 Jun 2013 11:12:39 +0100 + +linux (3.10.0-0.4) saucy; urgency=low + + [ Andy Whitcroft ] + + * [Config] updateconfigs following rebase to v3.10-rc4 + + -- Andy Whitcroft Mon, 10 Jun 2013 11:42:28 +0100 + +linux (3.10.0-0.3) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc5 + - LP: #1186170 + + -- Andy Whitcroft Mon, 10 Jun 2013 09:23:31 +0100 + +linux (3.10.0-0.2) saucy; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.10-rc4 + * [Config] CONFIG_BINFMT_SCRIPT=y to fix booting initramfs scripts + * [Config] enable SND_PCM_DEBUG SND_PCM_XRUN_DEBUG + - LP: #1187744 + * [Config] enforce CONFIG_BINFMT_SCRIPT=y + + [ Dave Chiluk ] + + * SAUCE: ncpfs: fix rmdir returns Device or resource busy + - LP: #1035226 + + [ Tim Gardner ] + + * rebase to v3.10-rc3 + * [Config] sparc be gone + * [Config] ia64 be gone + * d-i: block-modules provides nbd-modules + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc4 + * rebase to v3.10-rc3 + + -- Tim Gardner Tue, 28 May 2013 06:16:46 -0600 + +linux (3.10.0-0.1) saucy; urgency=low + + [ Tim Gardner ] + + * UBUNTU: Disabled lttng + * UBUNTU: Disable aufs for FTBS + * UBUNTU: Disabled alx + * UBUNTU: alx: rename NETIF_F_HW_VLAN_* feature flags to NETIF_F_HW_VLAN_CTAG_* + * UBUNTU: rebase to v3.10-rc2 + * UBUNTU: SAUCE: uvcvideo: quirk PROBE_DEF for Alienware X51 OmniVision webcam + + [ Andy Whitcroft ] + + * UBUNTU: [Config] update standards version to 3.9.4.0 + * UBUNTU: [Config] squash duplicate package description (long and short) + * UBUNTU: [Config] fix up Vcs-git: to point to saucy + * UBUNTU: [Config] drop depenancy on util-linux as is Essential + * UBUNTU: [Config] drop redundant Build-Conficts: + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc2 + - LP: #1180351 + + [ Upstream Kernel Changes ] + + * rebase to v3.10-rc1 + - LP: #1172151 + - LP: #1089795 + - LP: #1167270 + - LP: #1128840 + + -- Tim Gardner Tue, 14 May 2013 13:41:07 -0600 + +linux (3.10.0-0.0) saucy; urgency=low + + * Dummy + + -- Tim Gardner Thu, 09 May 2013 20:30:40 +0100 + +linux (3.9.0-2.6) saucy; urgency=low + + [ Tim Gardner ] + + * rebase to v3.9.2 + + -- Tim Gardner Thu, 09 May 2013 20:30:40 +0100 + +linux (3.9.0-1.5) saucy; urgency=low + + [ Tim Gardner ] + + * rebase to v3.9.1 + + -- Tim Gardner Wed, 08 May 2013 12:49:45 -0400 + +linux (3.9.0-0.4) saucy; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: overlayfs -- add FS_ALIAS + + [ Tim Gardner ] + + * Added lttng + - LP: #1175784 + + -- Tim Gardner Thu, 02 May 2013 17:17:13 -0400 + +linux (3.9.0-0.3) saucy; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.9 + + -- Tim Gardner Mon, 29 Apr 2013 18:20:00 -0400 + +linux (3.9.0-0.2) saucy; urgency=low + + [ Tim Gardner ] + + * Enable extras packaging for amd64/i386. + Fixes build depenencies with brittany and linux-meta. + + -- Tim Gardner Mon, 29 Apr 2013 05:37:01 -0600 + +linux (3.9.0-0.1) saucy; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc8 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc7 + - LP: #1128840 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc4 + - LP: #1095315 + - LP: #886975 + - LP: #1086921 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc3 + - LP: #1155016 + - LP: #1103594 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc2 + + [ Upstream Kernel Changes ] + + * rebase to v3.9-rc1 + - LP: #901105 + - LP: #961286 + - LP: #1011792 + - LP: #1128934 + - LP: #886975 + - LP: #978807 + + -- Tim Gardner Wed, 20 Feb 2013 09:12:39 -0700 + +linux (3.8.0-7.14) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_RCU_USER_QS=n + * [Config] CONFIG_MTD_ONENAND_SIM=n + * annotations: add annotations for CONFIG_CC_STACKPROTECTOR + + [ Upstream Kernel Changes ] + + * rebase to v3.8 + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1130111 + * UBUNTU: SAUCE: rt2x00: rt2x00pci_regbusy_read() - only print register access failure once + - LP: #1128840 + + -- Tim Gardner Mon, 18 Feb 2013 09:25:56 -0700 + +linux (3.8.0-6.13) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1125364 + * Add ahci modules to d-i + - LP: #1124415 + + + [ Chris Wilson ] + + * SAUCE: drm/i915: Wait for pending flips to complete before tearing down + the encoders + - LP: #1097315 + + -- Tim Gardner Wed, 13 Feb 2013 12:16:48 -0700 + +linux (3.8.0-6.12) raring; urgency=low + + [Tim Gardner] + + * perf: NO_LIBPERL=1 + * Fix linux-headers dependency + * Release Tracking Bug + - LP: #1124362 + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_AUFS_EXPORT to allow nfs exports + - LP: #1121699 + + [ Daniel Vetter ] + + * SAUCE: drm/i915: write backlight harder + - LP: #954661 + + -- Tim Gardner Wed, 13 Feb 2013 10:25:11 -0700 + +linux (3.8.0-6.11) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1122071 + * rebase to v3.8-rc7 + * Add libaudit-dev as a build dependency + * Build perf with NO_LIBPYTHON=1 to avoid a python build dependency. + + [ Leann Ogasawara ] + + * [Config] Remove CONFIG_SATA_AHCI annotation + + -- Tim Gardner Fri, 08 Feb 2013 07:41:13 -0500 + +linux (3.8.0-5.10) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1118568 + + * Bump ABI to fix install issue with 3.8.0-4.8. + Moving drivers/ata/*ahci* to linux-image caused an + install conflict with linux-image-extras without an + ABI bump. + + [ Jan Beulich ] + + * SAUCE: xen-pciback: rate limit error messages from + xen_pcibk_enable_msi{, x}() + - LP: #1117336 + - CVE-2013-0231 + + -- Tim Gardner Thu, 07 Feb 2013 05:38:12 -0700 + +linux (3.8.0-4.9) raring; urgency=low + + [ Herton Ronaldo Krzesinski ] + + * d-i: Add mellanox ethernet drivers to nic-modules + - LP: #1015339 + + [ Joseph Salisbury ] + + * SAUCE: ACPI: Add DMI entry for Sony VGN-FW41E_H + - LP: #1113547 + + [ Kamal Mostafa ] + + * SAUCE: alx driver import script + + [ Qualcomm Atheros, Inc ] + + * SAUCE: alx: Update to heads/master + + [ Tim Gardner ] + + * Release Tracking Bug + - LP: #1117673 + + * [debian] Remove dangling symlink from headers package + - LP: #1112442 + * [config] CONFIG_ALX=m + * [Config] Add alx to d-i nic-modules + * [Config] CONFIG_SATA_AHCI=m + - LP: #1056563 + + -- Leann Ogasawara Tue, 05 Feb 2013 05:54:32 -0800 + +linux (3.8.0-4.8) raring; urgency=low + + [ Allen Ibara ] + + * SAUCE: imx6: dts: Add IMX6Q AHCI support + + [ Andy Whitcroft ] + + * rebase to v3.8-rc6 + * updateconfigs following rebase to v3.8-rc6 + + [Leann Ogasawara] + + * Release Tracking Bug + - LP: #1112573 + + [ Paolo Pisati ] + + * SAUCE: imx6: enable sata clk if SATA_AHCI_PLATFORM + * [Config] SERIAL_AMBA_PL011=y (vexpress serial console) + * [Config] MMC_ARMMMCI=y (vexpress mmc) + * [Config] FB_ARMCLCD=y (vexpress framebuffer) + + [ Seth Forshee ] + + * [Config] CONFIG_MAC80211_MESSAGE_TRACING=y + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc6 + - LP: #1107477 + + -- Leann Ogasawara Fri, 01 Feb 2013 07:20:59 -0800 + +linux (3.8.0-3.7) raring; urgency=low + + [ Andy Green ] + + * SAUCE: ARM: OMAP2+: add cpu id register to MAC address helper + * SAUCE: ARM: omap2 add mac address allocation register api + * SAUCE: ARM: omap2 panda register ethernet and wlan for automatic mac + allocation + + [ Leann Ogasawara ] + + * rebase to v3.8-rc5 + * Release Tracking Bug + - LP: #1111486 + + [ Paolo Pisati ] + + * SAUCE: davinci: vpss: compilation fix + * [Config] enable TI OMAP4 support (Pandaboard/ES) + * [Config] OMAP_USB2=y (since TWL6030_USB depends on it) + * [Config] enable Freescale IMX6 support (SabreLite) + * [Config] SERIAL_IMX_CONSOLE=y + * [Config] MMC_*_IMX=y + * [Config] disable USB_SUSPEND + * [Config] USB_MXS_PHY=y + * [Config] USB_CHIPIDEA=y + * SAUCE: DTB: add support for multiple DTBs + * SAUCE: DTB: build imx6q-sabrelite + * SAUCE: DTB: build beaglexm + * SAUCE: DTB: build panda/panda es + * [Config] disable CPU_FREQ + * [Config] PANEL_TFP410=y (video DVI output) + * [Config] SND_OMAP_SOC*=y + * [Config] SND_IMX_SOC*=y + * [Config] I2C_IMX=y + * [Config] SPI_IMX=m + + [ Stefan Bader ] + + * [Config] Move 9p modules into generic package + - LP: #1107658 + + [ Tony Lindgren ] + + * SAUCE: ARM: OMAP2+: Limit omap initcalls to omap only on multiplatform + kernels + * SAUCE: ARM: OMAP2+: Use omap initcalls + * SAUCE: ARM: OMAP: Fix i2c cmdline initcall for multiplatform + * SAUCE: ARM: OMAP: Fix dmaengine init for multiplatform + * SAUCE: ARM: OMAP2+: Add multiplatform debug_ll support + * SAUCE: ARM: OMAP2+: Disable code that currently does not work with + multiplaform + * SAUCE: ARM: OMAP2+: Enable ARCH_MULTIPLATFORM support + * SAUCE: ARM: OMAP2+: Add minimal support for booting vexpress + * SAUCE: ARM: OMAP2+: Remove now obsolete uncompress.h and debug-macro.S + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc5 + - LP: #1096789 + + -- Leann Ogasawara Thu, 31 Jan 2013 06:44:52 -0800 + +linux (3.8.0-2.6) raring; urgency=low + + [ Adam Conrad ] + + * Fix up linux-tools -> SRCPKGNAME-tools rename + + [ Andy Whitcroft ] + + * [Config] re-disable CONFIG_SOUND_OSS + - LP: #1105230 + + [ Arend van Spriel ] + + * SAUCE: brcmsmac: fix tx status processing + + [Leann Ogasawara] + + * Release Tracking Bug + - LP: #1105104 + + -- Leann Ogasawara Fri, 25 Jan 2013 11:56:30 -0800 + +linux (3.8.0-1.5) raring; urgency=low + + [Tim Gardner] + + * Release Tracking Bug + - LP: #1101235 + + [ Dudley Du ] + + * SAUCE: Input: add support for Cypress PS/2 Trackpads + - LP: #978807 + + [ Kamal Mostafa ] + + * SAUCE: Input: increase struct ps2dev cmdbuf[] to 8 bytes + * SAUCE: Input: Cypress PS/2 Trackpad simulated multitouch + * [Config] Add CONFIG_PS2_CYPRESS + + [ Tim Gardner ] + + * rebase to v3.8-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc4 + - LP: #1095315 + - LP: #886975 + - LP: #1086921 + + -- Leann Ogasawara Thu, 17 Jan 2013 10:50:22 -0800 + +linux (3.8.0-0.4) raring; urgency=low + + [ Leann Ogasawara ] + + * [Config] Update CONFIG_TOUCHSCREEN_EGALAX build annotation + * [Config] Update CONFIG_IIO build annotation + * [Config] Update CONFIG_TOUCHSCREEN_EETI annotation + * [Config] Remove CONFIG_SPI_DW_MMIO annotation + * [Config] Remove CONFIG_SPI_PL022 annotation + * [Config] Update CONFIG_EZX_PCAP annotation + * [Config] Update CONFIG_SENSORS_AK8975 annotation + * [Config] Disable CONFIG_DRM_MGAG200 + - LP: #1042903 + + -- Leann Ogasawara Mon, 14 Jan 2013 10:01:50 -0800 + +linux (3.8.0-0.3) raring; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: (no-up) trace: add trace events for open(), exec() and + uselib()" + + [ Scott James Remnant ] + + * SAUCE: (no-up) trace: add trace events for open(), exec() and uselib() + (for v3.7+) + - LP: #1085766, #462111 + + -- Andy Whitcroft Fri, 11 Jan 2013 16:57:27 +0000 + +linux (3.8.0-0.2) raring; urgency=low + + [ Tim Gardner ] + + * [packaging] Add macro to selectively disable building perf + * [packaging] Cannot depend on universe package libaudit-dev + + -- Tim Gardner Thu, 10 Jan 2013 12:43:24 -0700 + +linux (3.8.0-0.1) raring; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc3 + - LP: #1096789 + + [ Upstream Kernel Changes ] + + * rebase to v3.8-rc2 + - LP: #1082357 + - LP: #1075882 + + -- Andy Whitcroft Mon, 17 Dec 2012 10:35:09 +0000 + +linux (3.7.0-7.15) raring; urgency=low + + [ Chris J Arges ] + + * SAUCE: add eeprom_bad_csum_allow module parameter + - LP: #1070182 + + [ Leann Ogasawara ] + + * Add ceph to linux-image for virtual instances + - LP: #1063784 + + [ Serge Hallyn ] + + * SAUCE: net: dev_change_net_namespace: send a KOBJ_REMOVED/KOBJ_ADD + + [ Tim Gardner ] + + * [Config] CONFIG_SLUB_DEBUG=y + - LP: #1090308 + + [ Upstream Kernel Changes ] + + * Revert "[SCSI] sd: Implement support for WRITE SAME" + - LP: #1089818 + + -- Leann Ogasawara Wed, 12 Dec 2012 06:50:20 -0800 + +linux (3.7.0-6.14) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] annotations: all new annotations scheme including defaults + * [Configs] apply annotation updates to main configs (top section) + + [ Leann Ogasawara ] + + * Revert "SAUCE: include and for mmc_core arm + build" + * Revert "SAUCE: [arm] fixup __aeabi_uldivmod undefined build error" + * Temporarily disable module check for build + + [ Stefan Bader ] + + * ubuntu: dm-raid45: Adapt to upstream interface changes + * Re-enable build of dm-raid45 + + [ Tim Gardner ] + + * SAUCE: Moved scripts/fw-to-ihex.sh to debian/scripts/misc + * SAUCE: ACPICA: Fix ACPI mutex object allocation memory leak on error + * SAUCE: drm: Fix possible EDID memory allocation oops + * SAUCE: ttm: Fix possible _manager memory allocation oops + * SAUCE: iwlwifi: iwlagn_request_scan: Fix check for priv->scan_request + * SAUCE: i915: intel_set_mode: Reduce stack allocation from 500 bytes to + 2 pointers + + [ Tomas Hozza ] + + * SAUCE: tools: hv: Netlink source address validation allows DoS + - LP: #1084777 + - CVE-2012-5532 + + [ Upstream Kernel Changes ] + + * rebase to v3.7 + + -- Leann Ogasawara Wed, 05 Dec 2012 14:11:12 -0800 + +linux (3.7.0-5.13) raring; urgency=low + + [ Lino Sanfilippo ] + + * SAUCE: inotify, fanotify: replace fsnotify_put_group() with + fsnotify_destroy_group() + - LP: #922906 + * SAUCE: fsnotify: introduce fsnotify_get_group() + - LP: #922906 + * SAUCE: fsnotify: use reference counting for groups + - LP: #922906 + * SAUCE: fsnotify: take groups mark_lock before mark lock + - LP: #922906 + * SAUCE: fanotify: add an extra flag to mark_remove_from_mask that + indicates wheather a mark should be destroyed + - LP: #922906 + * SAUCE: fsnotify: use a mutex instead of a spinlock to protect a groups + mark list + - LP: #922906 + * SAUCE: fsnotify: pass group to fsnotify_destroy_mark() + - LP: #922906 + * SAUCE: fsnotify: introduce locked versions of fsnotify_add_mark() and + fsnotify_remove_mark() + - LP: #922906 + * SAUCE: fsnotify: dont put marks on temporary list when clearing marks + by group + - LP: #922906 + * SAUCE: fsnotify: change locking order + - LP: #922906 + + [ Tim Gardner ] + + * [Config] CONFIG_NFC_LLCP=y + * [Config] get-firmware: Filter new files through fwinfo + * [Config] CONFIG_MTD_NAND_DOCG4=m for all arches + * [Config] CONFIG_DRM_EXYNOS_HDMI=y + * [Config] CONFIG_XEN=y for all arches + * [Config] CONFIG_SND_OMAP_SOC_ZOOM2=m + * [Config] CONFIG_MMC_DW_EXYNOS=m + * [Config] CONFIG_GPIO_ADNP=m + * [Config] find-obsolete-firmware: Use correct path + * rebase to v3.7-rc8 + - LP: #1084640 + + [ Upstream Kernel Changes ] + + * Revert "VFS: don't do protected {sym,hard}links by default" + - LP: #1084192 + + -- Tim Gardner Wed, 28 Nov 2012 16:07:08 +0000 + +linux (3.7.0-4.12) raring; urgency=low + + [ Tim Gardner ] + + * Revert "[Config] Use -j1 for headers_install" + * Revert "[Config] install-arch-headers needs a valid config" + Strayed into the weeds in search of the root cause of the periodic + build failure. + Fixes powerpc FTBS introduced in -4.11. + * [Config] hmake -j1 + The kernel makefile appears to have parallel dependency + problems for the install_headers target. This appears to be root + cause for a periodic build failure on N-way machines. + + -- Leann Ogasawara Tue, 27 Nov 2012 12:33:06 -0800 + +linux (3.7.0-4.11) raring; urgency=low + + [ Tim Gardner ] + + * [Config] Use -j1 for headers_install + Also fixes a powerpc FTBS introduced by + "[Config] install-arch-headers needs a valid config". + + -- Tim Gardner Tue, 27 Nov 2012 10:19:30 -0700 + +linux (3.7.0-4.10) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] add rebuild-test support for autopkgtest + - LP: #1081500 + * [tests] move build tests out of the way + - LP: #1081500 + * [tests] add an autopkgtest rebuild test + - LP: #1081500 + + [ Tim Gardner ] + + * rebase to v3.7-rc7 + * SAUCE: Remove emi62 files duplicated in linux-firmware + * SAUCE: Remove sb16 files duplicated in linux-firmware + * SAUCE: Remove whiteheat files duplicated in linux-firmware + * SAUCE: Remove yamaha files duplicated in linux-firmware + * SAUCE: Remove dsp56k files used only by m68k + * SAUCE: firmware: Remove last vestiges of dabusb + * SAUCE: Remove vicam files duplicated in linux-firmware + * [Config] install-arch-headers needs a valid config + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc7 + - LP: #1076840 + - LP: #1081466 + + -- Leann Ogasawara Wed, 21 Nov 2012 06:07:23 -0800 + +linux (3.7.0-3.9) raring; urgency=low + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_X86_CPUFREQ_NFORCE2=y + - LP: #1079900 + * Add nfsv3 to nfs-modules udeb + + [ Paolo Pisati ] + + * [Config] SND_OMAP_SOC*=y + - LP: #1019321 + + [ Stefan Bader ] + + * SAUCE: (no-up) xen/netfront: handle compound page fragments on transmit + - LP: #1078926 + + [ Tim Gardner ] + + * Revert "SAUCE: SECCOMP: audit: always report seccomp violations" + - LP: #1079469 + * Revert "SAUCE: omap3 clocks .dev_id = NULL" + * rebase to v3.7-rc6 + * SAUCE: script to detect obsolete firmware + * SAUCE: Remove yam files duplicated in linux-firmware + * SAUCE: Remove tehuti files duplicated in linux-firmware + * SAUCE: Remove matrox files duplicated in linux-firmware + * SAUCE: Remove cxgb3 files duplicated in linux-firmware + * SAUCE: Remove r128 files duplicated in linux-firmware + * SAUCE: Remove acenic files duplicated in linux-firmware + * SAUCE: Remove keyspan files duplicated in linux-firmware + * SAUCE: Remove sun files duplicated in linux-firmware + * SAUCE: Remove radeon files duplicated in linux-firmware + * SAUCE: Update bnx2x firmware to 7.8.2.0 + * [Config] generic.inclusion-list: econet has disappeared + + [ Upstream Kernel Changes ] + + * seccomp: forcing auditing of kill condition + - LP: #1079469 + * rebase to v3.7-rc6 + + -- Leann Ogasawara Tue, 20 Nov 2012 12:28:55 -0800 + +linux (3.7.0-2.8) raring; urgency=low + + [ Andy Whitcroft ] + + * Revert "overlayfs: disable until FTBS is fixed" + * Revert "ubuntu: overlayfs" + * Revert "ubuntu: AUFS" + * ubuntu: overlayfs -- overlayfs: add statfs support + * ubuntu: overlayfs -- ovl: switch to __inode_permission() + * ubuntu: overlayfs -- overlayfs: copy up i_uid/i_gid from the underlying + inode + - LP: #944386 + * ubuntu: AUFS (no-squash): basic framework and update machinary + * ubuntu: AUFS (no-squash) -- aufs3-base.patch + * ubuntu: AUFS (no-squash) -- aufs3-standalone.patch + * ubuntu: AUFS: aufs-update -- follow the uapi header changes + * ubuntu: AUFS -- update to f2873474324d0a31af4340554b9715f51331bc7f + * ubuntu: AUFS (no-squash) -- reenable + - LP: #1079193 + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: add i_op->dentry_open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + * ubuntu: overlayfs -- vfs: export __inode_permission() to modules + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Robin Dong ] + + * ubuntu: overlayfs -- overlayfs: fix possible leak in ovl_new_inode + * ubuntu: overlayfs -- overlayfs: create new inode in ovl_link + + -- Andy Whitcroft Thu, 15 Nov 2012 13:35:12 +0000 + +linux (3.7.0-1.7) raring; urgency=low + + [ Tim Gardner ] + + * [Config] Drop dependency on libaudit-dev + Its a universe package which causes an FTBS on the builders. + libaudit-dev is not strictly required for the perf tools build. + + -- Tim Gardner Wed, 14 Nov 2012 10:08:13 -0700 + +linux (3.7.0-1.6) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] enforce -- switch CONFIG_NVRAM to more readable form + * [Config] better encode the CONFIG_NVRAM constaint + * enforcer -- fix debugging output + + [ Ben Collins ] + + * [Config] Add custom_override rule to allow for alternate kernel + file/install + * [Config] Use SRCPKGNAME as prefix for indep linux headers package + + [ Tim Gardner ] + + * [Config] Dropped armel + * Drop highbank from ABI fetch list + * [Config] Use dh_prep instead of 'dh_clean -k' + * [Config] Build depend on libaudit-dev, libunwind8-dev for tools + * [Config] Document binary-indep dependency chain + * rebase to v3.7-rc5 + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc5 + + -- Tim Gardner Tue, 13 Nov 2012 07:13:37 -0500 + +linux (3.7.0-0.5) raring; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_AMD_IOMMU_V2=m + - LP: #1071520 + * [Config] CONFIG_MTD_ONENAND_SIM=n for armel + Fixes FTBS + + -- Tim Gardner Thu, 08 Nov 2012 15:45:39 -0500 + +linux (3.7.0-0.4) raring; urgency=low + + [ Ben Collins ] + + * [Config] Update enforce rule for CONFIG_NVRAM to better suit flavours + + [ Tim Gardner ] + + * [Config] do_tools=false for arm + + -- Tim Gardner Thu, 08 Nov 2012 05:39:51 -0700 + +linux (3.7.0-0.3) raring; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_DRM_EXYNOS_HDMI=n for armhf + * [Config] CONFIG_MTD_NAND_DOCG4=n for armel/armhf + * [Config] Drop highbank harder + + -- Tim Gardner Wed, 07 Nov 2012 18:11:45 +0000 + +linux (3.7.0-0.2) raring; urgency=low + + [ Andy Whitcroft ] + + * [Config] add fs/udf to linux-image to support DVD/CD formats in virtual + instances + - LP: #1066921 + * [Config] drop highbank builds + + [ Jeremy Kerr ] + + * SAUCE: efivarfs: Implement exclusive access for {get, set}_variable + - LP: #1063061 + + [ Leann Ogasawara ] + + * Reinstate dropped.txt from Ubuntu-3.7.0-0.1-rc1 + + [ Tim Gardner ] + + * [Config] Dropped powerpc/ppc64 in favour of the community kernel + * [Config] CONFIG_MODULE_SIG=y for amd64,i386, and highbank + * rebase to v3.7-rc4 + * SAUCE: MODSIGN: Emit error for incorrectly signed module + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc4 + + -- Tim Gardner Mon, 05 Nov 2012 05:35:41 -0700 + +linux (3.7.0-0.1) raring; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc3 + - LP: #1056078 + + [ Upstream Kernel Changes ] + + * rebase to v3.7-rc2 + - LP: #1060729 + - LP: #1059523 + - LP: #1006690 + - LP: #1049623 + - LP: #1046512 + - LP: #1052499 + - LP: #1037642 + - LP: #559939 + - LP: #1052460 + - LP: #939161 + - LP: #1046734 + + -- Tim Gardner Tue, 02 Oct 2012 08:13:07 -0600 + +linux (3.6.0-0.1) UNRELEASED; urgency=low + + + [ Upstream Kernel Changes ] + + * rebase to v3.6 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc6 + - LP: #1000424 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc5 + - LP: #1040077 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc4 + + [ Upstream Kernel Changes ] + + * rebase to v3.6-rc3 + - LP: #1038651 + - LP: #1034779 + + -- Leann Ogasawara Tue, 24 Jul 2012 06:37:09 -0700 + +linux (3.5.0-6.6) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION enable IPv6 + experimental features + * SAUCE: highbank -- export clock functions for modules + * [Config] highbank -- reenable CONFIG_TOUCHSCREEN_W90X900 + * [Config] highbank -- renenable CONFIG_SERIO_AMBAKMI + * [Config] highbank -- reenable CONFIG_RFKILL_GPIO + * [Config] highbank -- reenable CONFIG_MMC_SDHCI_PXAV3 + * [Config] highbank -- reenable CONFIG_MMC_SDHCI_PXAV3 + * [Config] highbank -- reenable CONFIG_KEYBOARD_SAMSUNG + * [Config] highbank -- reenable CONFIG_FB_ARMCLCD + * [Config] highbank -- reenable CONFIG_DW_DMAC + * [Config] highbank -- reenable CONFIG_USB_R8A66597_HCD + * [Config] highbank -- reenable CONFIG_USB_MV_UDC + * [Config] highbank -- reenable CONFIG_USB_DWC3 + * [Config] highbank -- reenable CONFIG_SATA_MV + * [Config] highbank -- reenable CONFIG_PATA_ARASAN_CF + * [Config] highbank -- CONFIG_CAN_C_CAN_PLATFORM + * [Config] highbank -- reenable CONFIG_MMC_ARMMMCI + * [Config] highbank -- reenable CONFIG_SERIAL_AMBA_PL010 + * [Config] highbank -- reenable CONFIG_ATMEL_PWM + * [Config] highbank -- enable CONFIG_CHECKPOINT_RESTORE + * [Config] highbank -- enable CONFIG_EXPERT + * [Config] highbank -- enable CONFIG_CHECKPOINT_RESTORE + * [Config] enable CONFIG_USB_DYNAMIC_MINORS + * [Config] enable CONFIG_USB_EHCI_TT_NEWSCHED + * [Config] enable CONFIG_USB_ETH_EEM + * [Config] enable CONFIG_USB_HCD_BCMA/CONFIG_USB_HCD_SSB + * [Config] disable CONFIG_USB_M66592 + * [Config] enable CONFIG_USB_NET2272 + * [Config] enable CONFIG_USB_R8A66597 + * [Config] annotate: CONFIG_USB_OMAP not required for our h/w + * [Config] set CONFIG_USB_MUSB_HDRC=m for omap + * [Config] annotate: CONFIG_USB_G_MULTI fix rule + * [Config] CONFIG_USB_GPIO_VBUS=m for OMAP + * [Config] Enable CONFIG_DRM_AST/_CIRRUS_QEMU/_MGAG200 + * [Config] sync configuration armhf omap -> armel omap + * [Config] annotate: CONFIG_IIO triggers build failures on OMAP4 + * [Config] disable CONFIG_OMAP_IOVMM is deprecated + + [ Bryan Wu ] + + * [Config] change default IO scheduler from CFQ to Deadline + + [ Leann Ogasawara ] + + * Revert "[Config] Temporarily disable CONFIG_MV643XX_ETH on powerpc" + * [Config] Disable CONFIG_MOUSE_INPORT + + [ Tim Gardner ] + + * SAUCE: firmware: Update bnx2x to current firmware version 7.2.51 + * [Config] Add bnx2x firmware to nic-modules udeb + * SAUCE: Add script to convert firmware to ihex format + * SAUCE: firmware: Upgrade bnx2 to current versions + * [Config] Add tigon firmware to nic-modules udeb + * [Config] CONFIG_EARLY_PRINTK_DBGP=y + - LP: #1026761 + * SAUCE: Remove redundant cis firmware + * SAUCE: Remove redundant emi26 firmware + * SAUCE: Remove redundant ttusb-budget firmware + * SAUCE: Remove redundant sun/cassini firmware + * SAUCE: Remove redundant ositech/Xilinx7OD firmware + * SAUCE: Remove redundant 3com/typhoon.bin firmware + * SAUCE: Remove redundant yamaha/ds1 firmware + * SAUCE: Remove redundant keyspan_pda firmware + * rebase to v3.5 + + [ Upstream Kernel Changes ] + + * rebase to v3.5 + - LP: #1027828 + + -- Leann Ogasawara Mon, 23 Jul 2012 05:57:04 -0700 + +linux (3.5.0-5.5) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] annotations: initial import of configuration annotations + + [ Bryan Wu ] + + * [Config] enforcer -- add CONFIG_I2C_DESIGNWARE_PLATFORM enforce checker + + [ Leann Ogasawara ] + + * Rebase to v3.5-rc7 + + [ Manoj Iyer ] + + * SAUCE: Bluetooth: btusb: Add vendor specific ID (0a5c:21f4) BCM20702A0 + - LP: #1010281 + + [ Tim Gardner ] + + * [Config] enable CONFIG_I2C_HELPER_AUTO for all flavours as policy + expects + * [Config] CONFIG_I2O_CONFIG_OLD_IOCTL=n + * [Config] CONFIG_BRIDGE_EBT_ULOG=n + * [Config] CONFIG_IP_NF_QUEUE=n + * [Config] CONFIG_MTD_DOC2000=n + * [Config] CONFIG_PRINT_QUOTA_WARNING=n + * [Config] CONFIG_PRISM54=n + * [Config] CONFIG_SCx200_I2C=n + * [Config] CONFIG_USB_ANNOUNCE_NEW_DEVICES=y + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc7 + + -- Leann Ogasawara Mon, 16 Jul 2012 15:38:41 -0700 + +linux (3.5.0-4.4) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Packaging] getabis should be extracting all packages + - LP: #1021174 + * [Config] getabis -- series uses linux-image-extra + - LP: #1021174 + * rebase to v3.5-rc6 + + [ Bryan Wu ] + + * [Config] built-in CONFIG_MICREL_PHY as other PHY drivers for all + flavours + * [Config] sync CONFIG_MOUSE_PS2_ config for all flavours + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_RT2800USB_RT35XX and CONFIG_RT2800USB_RT53XX + - LP: #1019561 + + [ Paolo Pisati ] + + * [Config] SND_OMAP_SOC, SND_OMAP_SOC_MCBSP and SND_OMAP_SOC_OMAP3_BEAGLE =y + - LP: #1019321 + + [ Stefan Bader ] + + * SAUCE: (pre-up) net: dont use __netdev_alloc_skb for bounce buffer + - LP: #1018456 + * (config) Disable ACPI_PROCFS_POWER + + [ Tim Gardner ] + + * [Config] CONFIG_ACPI_BGRT=y + * Extract firmware module info during getabi + - LP: #1021174 + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc6 + + -- Leann Ogasawara Mon, 09 Jul 2012 08:50:20 -0700 + +linux (3.5.0-3.3) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_MEMTEST=y + - LP: #1004535 + * [Config] config-check: add support for a cut operation + * [Config] enforcer -- switch to cut where appropriate + + [ Leann Ogasawara ] + + * Rebase to v3.5-rc5 + * [Config] Updateconfigs after rebase to v3.5-rc5 + + [ Luis Henriques ] + + * SAUCE: ocfs2: Fix NULL pointer dereferrence in + __ocfs2_change_file_space + - LP: #1006012 + + [ Seth Forshee ] + + * SAUCE: (drop after 3.5) drm/i915: ignore pipe select bit when checking + for LVDS register initialization + - LP: #1012800 + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc5 + - LP: #1013183 + - LP: #1017017 + - LP: #884652 + + -- Leann Ogasawara Mon, 02 Jul 2012 06:41:58 -0700 + +linux (3.5.0-2.2) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.5-rc4 + + [ Arend van Spriel ] + + * SAUCE: (drop after 3.5) brcmsmac: fix NULL pointer crash in + brcms_c_regd_init() + - LP: #950320 + + [ Bryan Wu ] + + * [Config] Sync CONFIG_CGROUP_MEM_RES_CTLR_SWAP for ARM + + [ Chris J Arges ] + + * PACKAGING: add .gnu_debuglink sections to .ko files + - LP: #669641 + + [ Leann Ogasawara ] + + * d-i: Add hid-generic to input-modules + - LP: #1017879 + + [ Ming Lei ] + + * SAUCE: Revert "mmc: omap_hsmmc: Enable Auto CMD12" + - LP: #1017717, #225 + + [ Paolo Pisati ] + + * SAUCE: Revert "Fix OMAP EHCI suspend/resume failure (i693)" + - LP: #1017718 + * [Config] Disable generic USB_EHCI_HCD_PLATFORM on omap3 + + [ Seth Forshee ] + + * SAUCE: (drop after 3.5) brcm80211: smac: don't set up tx power limits + during initialization + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: always set channel specified + by mac80211 + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: remove unused code for 40MHz + channels + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: clean up channel.c + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: inform mac80211 of the X2 + regulatory domain + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: enable/disable radio on + regulatory updates + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: use mac80211 channel data for + tx power limits + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: don't validate channels + against internal regulatory data + - LP: #950320 + * SAUCE: (drop after 3.5) brcm80211: smac: use current regulatory domain + when checking whether OFDM is allowed + - LP: #950320 + + [ Tim Gardner ] + + * [Config] Enable CONFIG_CGROUPS for highbank + - LP: #1014692 + * [Config] FB_OMAP*=y and PANEL_TFP410=y + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc4 + + -- Leann Ogasawara Tue, 26 Jun 2012 06:21:05 -0700 + +linux (3.5.0-1.1) quantal-proposed; urgency=low + + [ Andy Whitcroft ] + + * [Config] highbank -- enable CONFIG_RFKILL=y and CONFIG_CAN=m + + [ Leann Ogasawara ] + + * Rebase to v3.5-rc1 + * [Config] Remove USB_DEVICEFS from the config enforcer + * [Config] Updateconfigs after rebase to v3.5-rc1 + * [Config] Temporarily disable CONFIG_MACH_NOKIA_RX51 on arm + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EETI on arm + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EGALAX on arm + * [Config] Temporarily disable CONFIG_EZX_PCAP on arm + * [Config] Temporarily disable CONFIG_LIS3L02DQ on arm + * [Config] Temporarily disable CONFIG_TI_CPSW on arm + * [Config] Temporarily disable CONFIG_GPIO_EM on arm + * [Config] Temporarily disable CONFIG_SERIAL_8250_EM on armhf + * [Config] Temporarily disable CONFIG_STMMAC_ETH on armhf + * [Config] Temporarily disable CONFIG_HW_RANDOM_ATMEL on armhf + * Rebase to v3.5-rc2 + * [Config] Updateconfigs after rebase to v3.5-rc2 + * [Config] Temporarily disable CONFIG_MV643XX_ETH on powerpc + * Rebase to v3.5-rc3 + * [Config] Updateconfigs after rebase to v3.5-rc3 + + [ Paul Mundt ] + + * SAUCE: fix bug.h's inclusion of kernel.h + + [ Stefan Bader ] + + * SAUCE: Fix compile failures of dm-raid45 + * [Config] Enable dm-raid45 + * Move dependency on crda to extra package + - LP: #657901 + * SAUCE: Mask CR4 writes on older Xen hypervisors + + [ Upstream Kernel Changes ] + + * rebase to v3.5-rc3 + - LP: #993162 + - LP: #925577 + * rebase to v3.5-rc2 + * rebase to v3.5-rc1 + - LP: #955892 + - LP: #978038 + - LP: #987371 + - LP: #929545 + - LP: #942316 + - LP: #903853 + + -- Leann Ogasawara Fri, 08 Jun 2012 14:28:46 -0700 + +linux (3.4.0-5.11) quantal-proposed; urgency=low + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_ARM_LPAE + - LP: #1009061 + + [ Oleksij Rempel ] + + * SAUCE: b43: do not call ieee80211_unregister_hw if we are not registred + - LP: #1008905 + + [ Paolo Pisati ] + + * [Config] omap3: MFD_OMAP_USB_HOST is usb host in omap2+. + - LP: #1009061 + + -- Leann Ogasawara Tue, 05 Jun 2012 08:06:28 -0700 + +linux (3.4.0-4.10) quantal; urgency=low + + [ Leann Ogasawara ] + + * Temporarily disable ABI and module check + + -- Leann Ogasawara Mon, 04 Jun 2012 20:27:31 -0700 + +linux (3.4.0-4.9) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] fix config split to avoid the shared config + * [Config] updateconfigs following split config fix + * [Config] linux-image-extras needs full postinst + * [Config] CONFIG_BLK_DEV_NVME commonise across architectures + * [Config] CONFIG_HP_WATCHDOG enable as module + * [Config] CONFIG_PDC_ADMA is not boot essential + * [Config] CONFIG_XEN_ACPI_PROCESSOR should be enabled on x86 + * [Config] CONFIG_VT6655/CONFIG_VT6656=m + * [Config] CONFIG_TRANZPORT=m commonise + * [Config] CONFIG_R3964=m commonise + * [Config] CONFIG_SCSI_DH=m commonise + * [Config] CONFIG_SCSI_IBMVSCSIS=m commonise + * [Config] CONFIG_AMD_PHY=y phys are not autoloadable + * [Config] CONFIG_SCSI_QLA_ISCSI=m commonise + * [Config] CONFIG_SCSI_SPI_ATTR=m commonise + * [Config] CONFIG_USB_SN9C102 is deprecated disable + * [Config] CONFIG_USB_SI470X=m commonise + * [Config] CONFIG_USB_ET61X251=m commonise + * [Config] CONFIG_RTS_PSTOR=m commonise + * [Config] CONFIG_SCANLOG=m commonise + * [Config] CONFIG_SCSI_SYM53C8XX_2=m commonise + * [Config] CONFIG_SM_FTL=m commonise + * [Config] CONFIG_SOLO6X10=m commonise + * [Config] CONFIG_SND_PCM_OSS=n using pulseaudio emulation instead + * [Config] CONFIG_SPI_DESIGNWARE=m commonise + * [Config] CONFIG_SPI_SPIDEV=m commonise + * [Config] CONFIG_TABLET_USB_WACOM=m commonise + * [Config] CONFIG_TPS65010=m commonise + * [Config] CONFIG_STE10XP=y commonise + * [Config] CONFIG_X25_ASY=m commonise + * [Config] CONFIG_USB_MON=m commonise + * [Config] CONFIG_VME_BUS=m commonise + * [Config] CONFIG_W35UND=m commonise + * [Config] -CONFIG_TCG_TPM=y commonise + * [Config] highbank -- commonise filesystems + * [Config] highbank -- commonise subsystems + * [Config] highbank -- commonise network protocols + * [Config] highbank -- commonise input drivers + * [Config] highbank -- commonise CRYPTO options + * [Config] highbank -- commonise HID options + * [Config] highbank -- commonise sensors options + * [Config] highbank -- commonise EXPORTFS/FHANDLE + * [Config] highbank -- commonise CONFIG_CRYPTO_LZO + * [Config] highbank -- commonise ENCRYPTED_KEYS + * [Config] highbank -- commonise CONFIG_ATALK + * [Config] highbank -- commonise INET/INET6 + * [Config] highbank -- commonise NLS + * [Config] highbank -- commonise BLK/CHR + * [Config] highbank -- CONFIG_EXT2_FS=y boot essential on highbank + * [Config] highbank -- commonise INET/INET6 part 2 + * [Config] highbank -- commonise PHY settings + * [Config] highbank -- commonise CRC settings + * [Config] highbank -- commonise BINFMT settings + * [Config] highbank -- commonise DM settings + * [Config] highbank -- commonise RTC_DRV settings + * [Config] highbank -- commonise KEYBOARD/MOUSE settings + * [Config] highbank -- commonise USB settings + * [Config] highbank -- commonise GPIO settings + * [Config] highbank -- commonise I2C settings + * [Config] highbank -- commonise numerous subsystem selectors + * [Config] highbank -- commonise A-C modules missmatches + * [Config] highbank -- commonise D-F modules missmatches + * [Config] CONFIG_AUDIT_LOGINUID_IMMUTABLE incompatible with upstart + * [Config] highbank -- commonise G-I modules missmatches + * [Config] highbank -- commonise J-L modules missmatches + * [Config] highbank -- commonise M modules missmatches + * [Config] highbank -- commonise N-P modules missmatches + * [Config] highbank -- commonise Q-R modules missmatches + * [Config] highbank -- commonise S modules missmatches -- part 1 + * [Config] highbank -- commonise S modules missmatches -- part 2 + * [Config] highbank -- commonise T modules missmatches + * [Config] highbank -- commonise U-Z modules missmatches + + [ Ike Panhc ] + + * [Config] add highbank flavour + - LP: #1000831 + + [ Mark Langsdorf ] + + * SAUCE: arm highbank: add support for pl320-ipc driver + - LP: #1000831 + + [ Rob Herring ] + + * SAUCE: input: add a key driver for highbank + - LP: #1000831 + * SAUCE: ARM: highbank: Add smc calls to enable/disable the L2 + - LP: #1000831 + * SAUCE: force DMA buffers to non-bufferable on highbank + - LP: #1000831 + * SAUCE: net: calxedaxgmac: fix net timeout recovery + - LP: #1000831 + + [ Tim Gardner ] + + * [Config] CONFIG_IWLWIFI_EXPERIMENTAL_MFP=n + * [Config] CONFIG_PCI_REALLOC_ENABLE_AUTO=y + * [Config] CONFIG_CIFS_EXPERIMENTAL has disappeared + * [Config] Homogenize CIFS configs across all arches + * [Config] armhf should not be skipabi or skipmodules + - LP: #1006913 + + -- Leann Ogasawara Mon, 04 Jun 2012 05:52:49 -0700 + +linux (3.4.0-3.8) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] include include/generated/compile.h + - LP: #942569 + * [Config] fix up postinst to ensure we know which error is which + - LP: #1002388 + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: async_populate_rootfs: fix build warnings + - LP: #1003417 + + [ John Johansen ] + + * Revert "SAUCE: AppArmor: Add the ability to mediate mount" + * SAUCE: apparmor: Add the ability to mediate mount + * SAUCE: AppArmor: basic networking rules + * SAUCE: apparmor: fix profile lookup for unconfined + - LP: #978038, #987371 + * SAUCE: apparmor: fix long path failure due to disconnected path + - LP: #955892 + + [ Mario Limonciello ] + + * SAUCE: dell-laptop: rfkill blacklist Dell XPS 13z, 15 + - LP: #901410 + + [ Stefan Bader ] + + * (config) Built-in xen-acpi-processor + + [ Tim Gardner ] + + * [Config] CONFIG_NET_DSA=m + - LP: #1004148 + * [Config] Ensure CONFIG_XEN_ACPI_PROCESSOR=y for amd64 + + -- Leann Ogasawara Fri, 25 May 2012 11:38:33 -0700 + +linux (3.4.0-3.7) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] drop the virtual flavour in favour of a split generic et al + * [Config] enforcer -- drop IDLE enforcement + * [Config] enable CONFIG_SCSI_VIRTIO=m for amd64 + * [Config] updateconfigs following removal of -virtual + + [ Leann Ogasawara ] + + * Rebase to v3.4 + + [ Seth Forshee ] + + * [Config] disable CONFIG_B43_BCMA_EXTRA + + [ Tim Gardner ] + + * [Config] Check for extras when building udebs + * [Config] Collapsed generic-pae into generic [i386] + + [ Upstream Kernel Changes ] + + * rebase to v3.4 + + -- Leann Ogasawara Mon, 21 May 2012 07:23:47 -0700 + +linux (3.4.0-2.6) quantal; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: overlayfs -- overlayfs: update touch_atime() usage" + * Revert "ubuntu: overlayfs -- overlayfs: switch from d_alloc_root() to + d_make_root()" + * Revert "ubuntu: overlayfs -- overlayfs: follow header cleanup" + * Revert "ubuntu: overlayfs -- overlayfs: apply device cgroup and + security permissions to overlay files" + * Revert "ubuntu: overlayfs -- fs: limit filesystem stacking depth" + * Revert "ubuntu: overlayfs -- overlay: overlay filesystem documentation" + * Revert "ubuntu: overlayfs -- overlayfs: implement show_options" + * Revert "ubuntu: overlayfs -- overlayfs: add statfs support" + * Revert "ubuntu: overlayfs -- overlay filesystem" + * Revert "ubuntu: overlayfs -- vfs: introduce clone_private_mount()" + * Revert "ubuntu: overlayfs -- vfs: export do_splice_direct() to modules" + * Revert "ubuntu: overlayfs -- vfs: add i_op->open()" + * Revert "ubuntu: overlayfs -- vfs: pass struct path to __dentry_open()" + * ubuntu: overlayfs -- overlayfs: add statfs support + * ubuntu: overlayfs -- inode_only_permission: export inode level + permissions checks + * ubuntu: overlayfs -- overlayfs: switch to use inode_only_permissions + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: pass struct path to __dentry_open() + * ubuntu: overlayfs -- vfs: add i_op->open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Robin Dong ] + + * ubuntu: overlayfs -- overlayfs: fix possible leak in ovl_new_inode + * ubuntu: overlayfs -- overlayfs: create new inode in ovl_link + + [ Tim Gardner ] + + * [Config] perarch and indep tools builds need separate build directories + * Prevent upgrading a non-PAE CPU + * perf is not parallel build safe + + -- Leann Ogasawara Wed, 16 May 2012 08:43:18 -0700 + +linux (3.4.0-2.5) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] perarch and indep tools builds need separate build directories + + [ Tim Gardner ] + + * Prevent upgrading a non-PAE CPU + * [Config] build debug + * [Config] perf tools are not parallel build safe + + -- Leann Ogasawara Tue, 15 May 2012 11:37:53 -0700 + +linux (3.4.0-2.4) quantal; urgency=low + + [ Leann Ogasawara ] + + * Revert "SAUCE: fsam7400: use UMH_WAIT_PROC consistently" + * Revert "ubuntu: fsam7400 select CHECK_SIGNATURE and depend on X86" + * Revert "ubuntu: fsam7400: Depend on CHECK_SIGNATURE" + * Revert "ubuntu: fsam7400 -- Cleanup Makefile" + * Revert "ubuntu: fsam7400 -- kill switch for Fujitsu Siemens Amilo M + 7400" + * Revert "ubuntu: omnibook: fix source file newline" + * Revert "ubuntu: omnibook -- update BOM" + * Revert "SAUCE: Make CONFIG_{OMNIBOOK, AVERATEC_5100P, PACKARDBELL_E5} + depend on X86" + * Revert "ubuntu: omnibook -- Added missing BOM file" + * Revert "ubuntu: omnibook -- support Toshiba (HP) netbooks" + * Revert "ubuntu: nx-emu - i386: mmap randomization for executable + mappings" + * Revert "SAUCE: disable_nx should not be in __cpuinitdata section for + X86_32" + * Revert "ubuntu: nx-emu - i386: NX emulation" + * Revert "ubuntu: rfkill drivers -- version 1.3" + * Temporarily disable module check + * [Config] Remove CONFIG_FSAM7400 + * [Config] Remove CONFIG_OMNIBOOK + * [Config] Update configs + * Rebase to v3.4-rc7 + * SAUCE: genirq: export handle_edge_irq() and irq_to_desc() + + [ Tim Gardner ] + + * Updated generic-pae description + * Rebase to v3.4-rc6 + * install-tools depends on build targets + + [ Upstream Kernel Changes ] + + * kconfig: in debug mode some 0 length message prints occur + * rebase to v3.4-rc7 + * rebase to v3.3-rc6 + + -- Leann Ogasawara Mon, 14 May 2012 08:22:56 -0700 + +linux (3.4.0-1.3) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] control.stub is an intermediate product not a dependancy + - LP: #992414 + + [ Leann Ogasawara ] + + * remove i386 generic from getabis + + [ Upstream Kernel Changes ] + + * (pre-stable) b43: only reload config after successful initialization + - LP: #950295 + + -- Leann Ogasawara Wed, 02 May 2012 09:48:14 -0700 + +linux (3.4.0-1.2) quantal; urgency=low + + [ Andy Whitcroft ] + + * [Config] add build depends for flex, bison and pkg-config + + -- Andy Whitcroft Tue, 01 May 2012 13:15:41 +0100 + +linux (3.4.0-1.1) quantal; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: overlayfs -- overlayfs: apply device cgroup and security + permissions to overlay files + - LP: #915941, #918212 + - CVE-2012-0055 + + [ Leann Ogasawara ] + + * Open Q + * Rebase to v3.4-rc5 + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EETI on arm + * [Config] Temporarily disable CONFIG_TOUCHSCREEN_EGALAX on arm + * [Config] Temporarily disable CONFIG_EZX_PCAP on arm + * [Config] Temporarily disable CONFIG_MFD_OMAP_USB_HOST on arm + * [Config] Temporarily disable CONFIG_LIS3L02DQ on arm + * [Config] Temporarily disable CONFIG_USB_EHCI_HCD_PLATFORM on arm + * [Config] Temporarily disable CONFIG_TI_CPSW on arm + * [Config] Temporarily disable CONFIG_AX88796 on arm + + [ Upstream Kernel Changes ] + + * vfs: pass struct path to __dentry_open() + * vfs: add i_op->open() + * vfs: export do_splice_direct() to modules + * vfs: introduce clone_private_mount() + * overlay filesystem + * overlayfs: add statfs support + * overlayfs: implement show_options + * overlay: overlay filesystem documentation + * fs: limit filesystem stacking depth + * overlayfs: follow header cleanup + * overlayfs: switch from d_alloc_root() to d_make_root() + * overlayfs: update touch_atime() usage + * rebase to v3.4-rc5 + - LP: #950490 + * rebase to v3.4-rc4 + * rebase to v3.4-rc3 + * rebase to v3.4-rc2 + * rebase to v3.4-rc1 + * rebase to v3.3 + * rebase to v3.3-rc7 + * rebase to v3.3-rc6 + * rebase to v3.3-rc5 + * rebase to v3.3-rc4 + - LP: #900802 + - LP: #930842 + * rebase to v3.3-rc3 + - LP: #924320 + - LP: #923316 + - LP: #923409 + - LP: #918254 + * rebase to v3.3-rc2 + * rebase to v3.3-rc1 + - LP: #795823 + - LP: #909419 + - LP: #910792 + - LP: #878701 + - LP: #724831 + + -- Leann Ogasawara Wed, 25 Jan 2012 06:50:04 -0800 + +linux (3.2.0-10.18) precise; urgency=low + + [ Tim Gardner ] + + * SAUCE: ecryptfs: Print inode on metadata error + + [ Upstream Kernel Changes ] + + * Revert "proc: enable writing to /proc/pid/mem" + - LP: #919115 + - CVE-2012-0056 + * (pre-stable) ALSA: HDA: Use LPIB position fix for Macbook Pro 7, 1 + - LP: #909419 + + -- Andy Whitcroft Tue, 24 Jan 2012 10:15:12 +0000 + +linux (3.2.0-10.17) precise; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: overlayfs -- fs: limit filesystem stacking depth" + * Revert "SAUCE: overlayfs -- overlay: overlay filesystem documentation" + * Revert "SAUCE: overlayfs -- overlayfs: implement show_options" + * Revert "SAUCE: overlayfs -- overlayfs: add statfs support" + * Revert "SAUCE: overlayfs -- overlay filesystem" + * Revert "SAUCE: overlayfs -- vfs: introduce clone_private_mount()" + * Revert "SAUCE: overlayfs -- vfs: export do_splice_direct() to modules" + * Revert "SAUCE: overlayfs -- vfs: add i_op->open()" + * ensure debian/ is not excluded from git by default + * add new scripting to handle buglinks in rebases + * ubuntu: overlayfs -- overlayfs: add statfs support + * ubuntu: overlayfs -- overlayfs: apply device cgroup and security + permissions to overlay files + - LP: #915941, #918212 + - CVE-2012-0055 + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Leann Ogasawara ] + + * Revert "SAUCE: dmar: disable if ricoh multifunction detected" + * [Config] Disable CONFIG_INTEL_IOMMU_DEFAULT_ON + - LP: #907377, #911236 + * [Config] Enable CONFIG_IRQ_REMAP + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: pass struct path to __dentry_open() + * ubuntu: overlayfs -- vfs: add i_op->open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Upstream Kernel Changes ] + + * (pre-stable) x86/PCI: amd: factor out MMCONFIG discovery + - LP: #647043 + * (pre-stable) PNP: work around Dell 1536/1546 BIOS MMCONFIG bug that + breaks USB + - LP: #647043 + + -- Leann Ogasawara Mon, 16 Jan 2012 07:10:08 -0800 + +linux (3.2.0-9.16) precise; urgency=low + + [ Andy Whitcroft ] + + * [Config] Enable numerous CONFIG_VIDEO_* cards on ARM + * [Config] pull ARM sound modules =m + * [Config] CONFIG_RTC_DRV_TEST is for testing only + * [Config] CONFIG_USB_DUMMY_HCD is testing only + * [Config] CONFIG_USB_FILE_STORAGE is deprecated + + [ Leann Ogasawara ] + + * Revert "[Config] Temporarily disable CONFIG_CAN_TI_HECC on armel" + * [Config] Enable CONFIG_HW_RANDOM_PASEMI=m + * [Config] Enable CONFIG_MMC_TMIO=m + * [Config] Enable CONFIG_MTD_NAND_FSL_ELBC=m + * [Config] Enable CONFIG_ISI=m + * [Config] Enable CONFIG_MMC=y + * [Config] Enable CONFIG_LIRC_PARALLEL=m + * [Config] Enable CONFIG_MAC_EMUMOUSEBTN=m + * [Config] Enable CONFIG_CHR_DEV_SG=y + * [Config] Enable CONFIG_GPIO_PCA953X=m + * [Config] Enable CONFIG_GPIO_TWL4030=m + * [Config] Enable CONFIG_INET_DIAG=m + * [Config] Enable CONFIG_NLS_ISO8859_1=m + * [Config] Enable CONFIG_NVRAM=m + * [Config] Enable CONFIG_SLIP=m + * [Config] Enable CONFIG_PC300TOO=m + * [Config] Enable CONFIG_TUN=y + * [Config] Enable CONFIG_NET_CLS_CGROUP=m + * [Config] Enable CONFIG_THERMAL=y + * [Config] Enable CONFIG_PPP=y + * [Config] Enable CONFIG_PCI_STUB=m + * Rebase to v3.2.1 + * [Config] Enable CONFIG_RTL8192E=m + * [Config] Enable CONFIG_RTS5139=m + + [ Stefan Bader ] + + * [Config] Make CONFIG_VIRTIO_(NET|BLK)=y + + [ Upstream Kernel Changes ] + + * ARM: restart: add restart hook to machine_desc record + * ARM: restart: allow platforms more flexibility specifying restart mode + * ARM: restart: move reboot failure handing into machine_restart() + * ARM: restart: remove argument to setup_mm_for_reboot() + * ARM: 7159/1: OMAP: Introduce local common.h files + * ARM: restart: only perform setup for restart when soft-restarting + * ARM: 7189/1: OMAP3: Fix build break in cpuidle34xx.c because of irq + function + * ARM: idmap: populate identity map pgd at init time using .init.text + * ARM: suspend: use idmap_pgd instead of suspend_pgd + * ARM: proc-*.S: place cpu_reset functions into .idmap.text section + * ARM: idmap: use idmap_pgd when setting up mm for reboot + * ARM: head.S: only include __turn_mmu_on in the initial identity mapping + * ARM: SMP: use idmap_pgd for mapping MMU enable during secondary booting + * ARM: 7194/1: OMAP: Fix build after a merge between v3.2-rc4 and ARM + restart changes + * ARM: lib: add call_with_stack function for safely changing stack + * ARM: reset: implement soft_restart for jumping to a physical address + * ARM: stop: execute platform callback from cpu_stop code + * ARM: kexec: use soft_restart for branching to the reboot buffer + * ARM: restart: omap: use new restart hook + * topdown mmap support + - LP: #861296 + + [ Upstream Kernel Changes ] + + * Rebase to v3.2.1 + + -- Leann Ogasawara Fri, 13 Jan 2012 20:32:08 +0100 + +linux (3.2.0-8.15) precise; urgency=low + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_ACPI_PROCFS + * Remove server from getabis + * Temporarily disable module check + * [Config] Disable CONFIG_MTD_TESTS + * [Config] Disable CONFIG_X86_E_POWERSAVER + * [Config] Set CONFIG_ARCNET=m + * [Config] Enable CONFIG_ATM_DUMMY=m + * [Config] Enable CONFIG_BLK_DEV_MD=y + * ubuntu: fsam7400 select CHECK_SIGNATURE and depend on X86 + * [Config] Enable CONFIG_BLK_DEV_SD=y + * [Config] Enable CONFIG_BLK_DEV_SR=y + * [Config] Enable CONFIG_BLK_DEV_UB=m + * [Config] Enable CONFIG_COPS=m + * [Config] Enable CONFIG_DVB_USB_EC168=m + * [Config] Enable CONFIG_ENC28J60=m + * [Config] Enable CONFIG_FB_UVESA=m + * [Config] Enable CONFIG_FB_ATY=m + * [Config] Enable CONFIG_BROADCOM_PHY=y + * [Config] Enable CONFIG_CICADA_PHY=y + * [Config] Enable CONFIG_DAVICOM_PHY=y + * [Config] Enable CONFIG_ICPLUS_PHY=y + * [Config] Enable CONFIG_LSI_ET1011C_PHY=y + * [Config] Enable CONFIG_LXT_PHY=y + * [Config] Enable CONFIG_MARVELL_PHY=y + * [Config] Enable CONFIG_NATIONAL_PHY=y + * [Config] Enable CONFIG_QSEMI_PHY=y + * [Config] Enable CONFIG_SMSC_PHY=y + * [Config] Enable CONFIG_VITESSE_PHY=y + * Add 3w-sas to scsi-modules + - LP: #776542 + + [ Mathieu Trudel-Lapierre ] + + * SAUCE: ipv6: make the net.ipv6.conf.all.use_tempaddr sysctl propagate + to interface settings + + [ Paolo Pisati ] + + * Revert "SAUCE: omap3: beagle: if rev unknown, assume xM revision C" + - LP: #912199 + * Revert "SAUCE: omap3: beagle: detect new xM revision B" + - LP: #912199 + * Revert "SAUCE: omap3: beaglexm: fix DVI initialization" + - LP: #912199 + + [ Upstream Kernel Changes ] + + * Bluetooth: Add support for BCM20702A0 [0a5c:21e3] + - LP: #906832 + + -- Leann Ogasawara Fri, 06 Jan 2012 10:02:03 -0800 + +linux (3.2.0-8.14) precise; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_SND_USB_6FIRE + - LP: #912197 + * rebase to mainline v3.2 final release + * updateconfigs following rebase to v3.2 final + * ubuntu: AUFS -- add BOM and automated update script + * ubuntu: AUFS -- include the aufs_types.h file in linux-libc-headers + - LP: #684666 + * ubuntu: AUFS -- update aufs-update to track new locations of headers + * ubuntu: AUFS -- clean up the aufs updater and BOM + * ubuntu: AUFS -- documentation on updating aufs2 + * ubuntu: AUFS -- aufs3-base.patch + * ubuntu: AUFS -- aufs3-standalone.patch + * ubuntu: AUFS -- fix undefined __devcgroup_inode_permission + * ubuntu: AUFS -- fix undefined security_path_link + * ubuntu: AUFS -- update to 4cf5db36bcd9748e8e7270022f295f84d1fc2245 + * ubuntu: AUFS -- updateconfigs following update + * ubuntu: AUFS -- suppress benign plink warning messages + - LP: #621195 + * ubuntu: AUFS -- enable in config and makefile + * ubuntu: AUFS -- disable in favor of overlayfs + * [Config] linux-virtual -- should include the extX modules + - LP: #912308 + + [ Tyler Hicks ] + + * SAUCE: eCryptfs: Improve statfs reporting + - LP: #885744 + + [ Upstream Kernel Changes ] + + * rebase to upstream v3.2 + + -- Leann Ogasawara Mon, 26 Dec 2011 20:24:30 -0800 + +linux (3.2.0-7.13) precise; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to upstream 3.2-rc7 + + -- Leann Ogasawara Mon, 19 Dec 2011 09:14:34 -0800 + +linux (3.2.0-6.12) precise; urgency=low + + [ Upstream Kernel Changes ] + + * rebase to upstream v3.2-rc6 + + -- Leann Ogasawara Fri, 16 Dec 2011 10:19:02 -0800 + +linux (3.2.0-5.11) precise; urgency=low + + [ Andy Whitcroft ] + + * enforcer -- allow arch and flavour predicates to take lists + * enforcer -- simplify armel/armhf specific options + * enforcer -- fix incorrectly specified flavour matches + + [ Leann Ogasawara ] + + * [Config] Disable IRQ_REMAP + * [Config] Enable CONFIG_SENSORS_LM95245=m + * [Config] Enable CONFIG_SENSORS_MAX1668=m + * [Config] Enable CONFIG_SENSORS_NTC_THERMISTOR=m + * [Config] Enable CONFIG_SENSORS_MAX6639=m + * [Config] Enable CONFIG_SENSORS_MAX6642=m + * [Config] Enable CONFIG_SENSORS_LINEAGE=m + * [Config] Enable CONFIG_CRYPTO_SALSA20=m + * [Config] Enable CONFIG_PATA_TOSHIBA=m + * [Config] Enable CONFIG_POHMELFS=m + * [Config] Enable CONFIG_NET_PACKET_ENGINE=y + * [Config] Enable CONFIG_PATA_OPTI=m + * add overlayfs to virtual inclusion list + - LP: #903897 + * add veth to virtual inclusion list + - LP: #903897 + * SAUCE: resolve WARNING: at drivers/block/floppy.c:2929 do_fd_request + + [ Paolo Pisati ] + + * [Config] DEFAULT_MMAP_MIN_ADDR=32k on arm + - LP: #903346 + + [ Tim Gardner ] + + * [Config] CONFIG_LOCKUP_DETECTOR=y + - LP: #903615 + + [ Upstream Kernel Changes ] + + * rebase to upstream 55b02d2f + + -- Leann Ogasawara Mon, 12 Dec 2011 07:08:10 -0800 + +linux (3.2.0-4.10) precise; urgency=low + + [ Kyle McMartin ] + + * SAUCE: dmar: disable if ricoh multifunction detected + - LP: #894070 + + [ Seth Forshee ] + + * SAUCE: dell-wmi: Demote unknown WMI event message to pr_debug + - LP: #581312 + + [ Tim Gardner ] + + * Start new release, Bump ABI, rebase to 3.2-rc5 + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_SENSORS_AK8975=m + + -- Tim Gardner Sat, 10 Dec 2011 08:57:04 -0700 + +linux (3.2.0-3.9) precise; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: ext4: correct partial write discard size calculation + - LP: #894768 + + [ Leann Ogasawara ] + + * Revert "SAUCE: x86, microcode, AMD: Restrict microcode reporting" + - LP: #892615 + + [ Matthew Garrett ] + + * SAUCE: pci: Rework ASPM disable code + + [ Upstream Kernel Changes ] + + * x86: Fix boot failures on older AMD CPU's + - LP: #892615 + * EHCI : Fix a regression in the ISO scheduler + - LP: #899165 + + -- Leann Ogasawara Mon, 05 Dec 2011 10:37:36 -0800 + +linux (3.2.0-3.8) precise; urgency=low + + [ Andy Whitcroft ] + + * armhf -- add d-i configuration + * armhf -- disable ABI checks for armhf + * armhf -- add arch to getabis config + + -- Andy Whitcroft Sat, 03 Dec 2011 14:22:52 +0000 + +linux (3.2.0-3.7) precise; urgency=low + + [ Stefan Bader ] + + * SAUCE: x86/paravirt: PTE updates in k(un)map_atomic need to be + synchronous, regardless of lazy_mmu mode + - LP: #854050 + + [ Tim Gardner ] + + * rebase to v3.2-rc4 + + -- Leann Ogasawara Fri, 02 Dec 2011 11:53:56 -0800 + +linux (3.2.0-2.6) precise; urgency=low + + [ Andy Whitcroft ] + + * armhf -- fix omap flavour to build on armhf + * [Config] CONFIG_PATA_MACIO=y to fix MAC qemu boot + + [ Borislav Petkov ] + + * SAUCE: x86, microcode, AMD: Restrict microcode reporting + - LP: #892615 + + [ Colin Watson ] + + * Add pata_macio to pata-modules + + [ Tim Gardner ] + + * [Config] Prefer crda over wireless-crda + * [Config] Fix virtual inclusion list. + - LP: #897795 + + -- Leann Ogasawara Wed, 30 Nov 2011 06:09:35 -0800 + +linux (3.2.0-2.5) precise; urgency=low + + [ Paolo Pisati ] + + * [Config] PANEL_DVI=y + + -- Leann Ogasawara Mon, 28 Nov 2011 09:13:24 -0800 + +linux (3.2.0-2.4) precise; urgency=low + + [ Andy Whitcroft ] + + * rebase to v3.2-rc3 + + [ Leann Ogasawara ] + + * Revert "SAUCE: xen: Do not use pv spinlocks on HVM" + * Revert "fix ERROR: __devcgroup_inode_permission undefined" + * Revert "olpc_dcon_xo_1_5 needs delay.h" + * Revert "olpc_dcon_xo_1 needs delay.h" + * rebase to 6fe4c6d4 + * [Config] updateconfigs after rebase to 6fe4c6d4 + + [ Tim Gardner ] + + * [Config] Replace wireless-crda with crda,wireless-regdb + - LP: #856421 + * [Config] Relax the dependencies on crda + + [ Upstream Kernel Changes ] + + * (pre-stable) HID: bump maximum global item tag report size to 96 bytes + - LP: #724831 + * Ubuntu: remove coreutils|fileutils package dependency + - LP: #892814 + * iio: iio_event_getfd -- fix ev_int build failure + + [ Upstream Kernel Changes ] + + * Rebase to v3.2-rc3 + + -- Andy Whitcroft Thu, 24 Nov 2011 16:20:45 +0000 + +linux (3.2.0-1.3) precise; urgency=low + + [ Upstream Kernel Changes ] + + * Ubuntu: Add ext2 to fs-core-modules + - LP: #893395 + + -- Leann Ogasawara Mon, 21 Nov 2011 20:42:33 -0800 + +linux (3.2.0-1.2) precise; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_NFC and associated devices + * SAUCE: allow brcmsmac and b43 to both build + + [ Soren Hansen ] + + * Add ixgbe driver to d-i + - LP: #891969 + + -- Leann Ogasawara Mon, 21 Nov 2011 08:33:46 -0800 + +linux (3.2.0-1.1) precise; urgency=low + [ Andy Whitcroft ] + + * armhf -- enable armhf and create the first flavours + * SAUCE: ensure root is ready before running usermodehelpers in it + * [Config] enforcer -- ensure CONFIG_FAT_FS is built-in on arm + + [ Leann Ogasawara ] + + * Temporarily ignore module check + * [Config] Enable PCI_IOV on powerpc + * [Config] Temporarily disable CONFIG_PASEMI_MAC on powerpc + * rebase to v3.2-rc2 + * SAUCE: include for cpuidle34xx arm build + * SAUCE: include for linux/mtd/map.h arm build + * SAUCE: include and for mmc_core arm build + * SAUCE: select ARM_AMBA if OMAP3_EMU + * [Config] updateconfigs after select ARM_AMBA + * [Config] Temporarily disable CONFIG_KVM_BOOK3S_32 on powerpc + * [Config] Enable CONFIG_EXT2_FS=m + * [Config] Build in CONFIG_SATA_AHCI=y + * Resolve linux-image-extra's install dependency + + [ Seth Forshee ] + + * [Config] Enable EVENT_POWER_TRACING_DEPRECATED=y for powertop + * SAUCE: (drop after 3.2) Input: ALPS - move protocol information to + Documentation + * SAUCE: (drop after 3.2) Input: ALPS - add protocol version field in + alps_model_info + * SAUCE: (drop after 3.2) Input: ALPS - remove assumptions about packet + size + * SAUCE: (drop after 3.2) Input: ALPS - add support for protocol versions + 3 and 4 + * SAUCE: (drop after 3.2) Input: ALPS - add semi-MT support for v3 + protocol + * SAUCE: (drop after 3.2) Input: ALPS - add documentation for protocol + versions 3 and 4 + + [ Stefan Bader ] + + * [Config] Built-in xen-netfront and xen-blkfront + * Fix build of dm-raid45 and re-enable it + + [ Tim Gardner ] + + * [Config] CONFIG_USB_XHCI_HCD=y + - LP: #886167 + * [Config] CONFIG_R6040=m + - LP: #650899 + * SAUCE: Add a new entry (413c:8197) to Bluetooth USB device ID table + - LP: #854399 + * [Config] Consolidated amd64 server flavour into generic + * [Config] updateconfigs after rebase to 3.2-rc1 + * [Config] Disabled dm-raid4-5 + * [Config] Disabled ndiswrapper + * [Config] Disable vt6656 + * [Config] exclude ppp-modules for virtual flavour + * [Config] CONFIG_MEMSTICK_R592=m + - LP: #238208 + + [ Upstream Kernel Changes ] + + * CHROMIUM: seccomp_filter: new mode with configurable syscall filters + - LP: #887780 + * CHROMIUM: seccomp_filter: add process state reporting + - LP: #887780 + * CHROMIUM: seccomp_filter: Document what seccomp_filter is and how it + works. + - LP: #887780 + * CHROMIUM: x86: add HAVE_SECCOMP_FILTER and seccomp_execve + - LP: #887780 + * CHROMIUM: arm: select HAVE_SECCOMP_FILTER + - LP: #887780 + * CHROMIUM: seccomp_filters: move to btrees + * CHROMIUM: enable CONFIG_BTREE + * CHROMIUM: seccomp_filter: kill NR_syscall references + * CHROMIUM: seccomp_filters: guard all ftrace wrapper code + * CHROMIUM: seccomp_filters: clean up warnings; kref mistake + * CHROMIUM: seccomp_filter: remove "skip" from copy and add drop helper + * CHROMIUM: seccomp_filter: allow CAP_SYS_ADMIN management of execve + * CHROMIUM: seccomp_filter: inheritance documentation + * CHROMIUM: seccomp_filter: make inherited filters composable + * CHROMIUM: Fix seccomp_t compile error + - LP: #887780 + * CHROMIUM: Fix kref usage + - LP: #887780 + * CHROMIUM: enable CONFIG_SECCOMP_FILTER and CONFIG_HAVE_SECCOMP_FILTER + * rebase to v3.2-rc2 + + -- Leann Ogasawara Mon, 31 Oct 2011 09:24:39 -0400 + +linux (3.1.0-2.3) precise; urgency=low + + [ Tim Gardner ] + + * Add postinit and postrm scripts to the extras package + - LP: #882120 + + -- Leann Ogasawara Fri, 28 Oct 2011 12:48:33 -0700 + +linux (3.1.0-2.2) precise; urgency=low + + [ Andy Whitcroft ] + + * debian: add locking to protect debian/files from parallel update + + [ Leann Ogasawara ] + + * rebase to v3.1 + + [ Upstream Kernel Changes ] + + * rebase to v3.1 + + -- Leann Ogasawara Wed, 19 Oct 2011 07:12:38 -0700 + +linux (3.1.0-1.1) precise; urgency=low + + [ Andiry Xu ] + + * SAUCE: (drop during 3.2 merge) xHCI: AMD isoc link TRB chain bit quirk + - LP: #872811 + + [ Andy Whitcroft ] + + * Revert "ubuntu: compcache -- follow changes to bd_claim/bd_release" + - LP: #832694 + * Revert "ubuntu: compcache -- version 0.5.3" + - LP: #832694 + * [Config] standardise CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m + * [Config] Enable CONFIG_MACVTAP=m + - LP: #822601 + * record the compiler in the ABI and check for inconsistant builds + * [Config] move ECRYPT_FS back to =y for all architectures + - LP: #827197 + * [Config] enable CONFIG_DRM_VMWGFX=m + - LP: #698009 + * [Config] re-fix ECRYPT_FS=y + - LP: #827197 + * enforcer -- ensure we have CONFIG_ECRYPT_FS=y + - LP: #827197 + * [Config] dropping compcache configuration options + * [Config] standardise on HZ=250 + * SAUCE: headers_install: fix #include "..." usage for userspace + - LP: #824377 + * make module-inclusion selection retain the left overs + * add a new linux-image-extras package for virtual + + [ Colin Watson ] + + * Deliver more Atheros, Ralink, and iwlagn NIC drivers to d-i + + [ edwin_rong ] + + * SAUCE: Staging: add driver for Realtek RTS5139 cardreader + - LP: #824273 + + [ Greg Kroah-Hartman ] + + * SAUCE: staging: rts5139: add vmalloc.h to some files to fix the build. + - LP: #824273 + + [ Jesse Sung ] + + * SAUCE: Unregister input device only if it is registered + - LP: #839238 + + [ Jiri Kosina ] + + * SAUCE: HID: add MacBookAir4, 2 to hid_have_special_driver[] + + [ Joshua V. Dillon ] + + * SAUCE: HID: add support for MacBookAir4,2 keyboard. + + [ Kees Cook ] + + * [Config] enable and enforce SECCOMP_FILTER on x86 + + [ Keng-Yu Lin ] + + * [Config] Enable CONFIG_RTS5139=m on i386/amd64 + - LP: #824273 + + [ Leann Ogasawara ] + + * Revert "ubuntu: overlayfs -- ovl: make lower mount read-only" + * Revert "ubuntu: overlayfs -- fs: limit filesystem stacking depth" + * Revert "ubuntu: overlayfs -- ovl: improve stack use of lookup and + readdir" + * Revert "ubuntu: overlayfs -- ovl: fix overlayfs over overlayfs" + * Revert "ubuntu: overlayfs -- overlayfs: implement show_options" + * Revert "ubuntu: overlayfs -- overlayfs: add statfs support" + * Revert "ubuntu: overlayfs -- overlay filesystem" + * Revert "ubuntu: overlayfs -- overlay: overlay filesystem documentation" + * Revert "SAUCE: ARM: OMAP: Add macros for comparing silicon revision" + * Revert "SAUCE: OMAP: DSS2: check for both cpu type and revision, rather + than just revision" + * Revert "SAUCE: OMAP: DSS2: enable hsclk in dsi_pll_init for OMAP36XX" + * Revert "ubuntu: fsam7400 disable driver" + - LP: #876030 + * rebase to v3.1-rc1 + * [Config] updateconfigs after rebase to v3.1-rc1 + * rebase to v3.1-rc2 + * [Config] Updateconfigs after rebase to v3.1-rc2 + * ubuntu: Yama - update calls to generic_permission() and + inode->i_op->permission() + * ubuntu: ndiswrapper -- remove netdev_priv macro + * ubuntu: aufs -- Temporarily disable due to build failure + * [Config] Diable INTEL_MID_PTI on armel + * [Config] Temporarily disable CONFIG_FTMAC100 on armel + * [Config] Temporarily disable CONFIG_FTGMAC100 on armel + * [Config] Temporarily disable CONFIG_CAN_TI_HECC on armel + * [Config] Temporarily disable CONFIG_VIDEO_OMAP2_VOUT on armel + * [Config] Set CONFIG_DM_MIRROR=m on amd64, i386, and arm + * [Config] Set CONFIG_DM_MULTIPATH=m on amd64, i386, and arm + * [Config] Set CONFIG_DM_SNAPSHOT=m on amd64, i386, and arm + * [Config] Enable CONFIG_EDAC_AMD8111=m on powerpc + * [Config] Enable CONFIG_EDAC_AMD8131=m on powerpc + * [Config] Enable CONFIG_EDAC_CPC925=m on powerpc + * [Config] Enable CONFIG_EDAC_PASEMI=m on powerpc + * [Config] Enable CONFIG_ECHO=m on powerpc + * [Config] Enable CONFIG_ET131X=m on powerpc + * [Config] Set CONFIG_FB_MATROX=m + * [Config] Enable CONFIG_FB_UDL=m on powerpc + * [Config] Set CONFIG_FB_VIRTUAL=n + * [Config] Enable CONFIG_FB_VGA16=m on powerpc + * [Config] Enable CONFIG_GPIO_MAX732X=m on arm + * [Config] Enable CONFIG_GPIO_PCF857X=m on arm + * [Config] Set CONFIG_HOTPLUG_PCI_FAKE=m + * [Config] Enable CONFIG_HOTPLUG_PCI=y on powerpc + * [Config] Enable CONFIG_HOTPLUG_PCI_CPCI=y on powerpc + * [Config] Enable CONFIG_HP_ILO=m on powerpc-smp + * [Config] Enable CONFIG_I2C_PASEMI=m on powerpc + * [Config] Enable CONFIG_IBM_BSR=m on powerpc + * [Config] Enable CONFIG_IBMVETH=m on powerpc + * [Config] Enable CONFIG_IDE_PHISON=m on powerpc + * [Config] Enable CONFIG_IGB=m on powerpc + * [Config] Enable CONFIG_IIO=m on powerpc + * [Config] Enable CONFIG_INFINIBAND_NES=m + * [Config] Enable CONFIG_IPMI_HANDLER=m on arm + * [Config] Enable CONFIG_IWL3945=m on powerpc + * [Config] Disable CONFIG_KVM_BOOK3S_64 + * [Config] Enable CONFIG_LAPBETHER=m on arm + * [Config] Enable CONFIG_LEDS_GPIO=m on powerpc + * [Config] Enable CONFIG_LEDS_CLEVO_MAIL=m all arch's + * [Config] Enable CONFIG_LEDS_PCA9532=m on powerpc + * [Config] Enable CONFIG_LEDS_PCA955X=m on powerpc + * [Config] Enable CONFIG_LEDS_TRIGGER_DEFAULT_ON=m on powerpc + * [Config] Set CONFIG_LEDS_TRIGGER_HEARTBEAT=m on arm and powerpc + * [Config] Set CONFIG_LEDS_TRIGGER_TIMER=m on powerpc + * [Config] Enable CONFIG_LINE6_USB=m on arm and powerpc + * [Config] Enable CONFIG_MEMSTICK=m on arm + * [Config] Enable CONFIG_MTD_AFS_PARTS=m on arm + * [Config] Enable CONFIG_MTD_ALAUDA=m on arm + * [Config] Enable CONFIG_MTD_AR7_PARTS=m on arm + * [Config] Enable CONFIG_MTD_ARM_INTEGRATOR=m on arm + * [Config] Enable CONFIG_MOXA_SMARTIO=m on powerpc + * [Config] Enable CONFIG_MTD_DATAFLASH=m on arm + * [Config] Enable CONFIG_MTD_GPIO_ADDR=m on arm + * [Config] Enable CONFIG_MTD_IMPA7=m on arm + * [Config] Enable CONFIG_MTD_NAND_GPIO=m on arm + * [Config] Enable CONFIG_MTD_NAND_NANDSIM=m on arm + * [Config] Enable CONFIG_MTD_NAND_PASEMI=m on powerpc + * [Config] Enable CONFIG_MTD_NAND_PLATFORM=m on arm + * [Config] Enable CONFIG_MTD_NAND_TMIO=m on arm + * [Config] Enable CONFIG_MTD_SST25L=m on arm + * [Config] Enable CONFIG_NET_CLS_CGROUP=y on arm + * [Config] Enable CONFIG_NET_CLS_FLOW=m on arm + * [Config] Enable CONFIG_NET_CLS_U32=m on arm + * [Config] Enable CONFIG_NET_DCCPPROBE=m on arm + * [Config] Enable CONFIG_NET_SCH_INGRESS=m on arm + * [Config] Enable CONFIG_NET_TCPPROBE=m on arm + * [Config] Enable CONFIG_PASEMI_MAC=m on powerpc + * [Config] Enable CONFIG_PATA_NS87410=m on powerpc + * [Config] Enable CONFIG_I2C_GPIO=m on powerpc64-smp + * [Config] Enable CONFIG_PANEL=m on powerpc + * [Config] Enable CONFIG_PATA_CMD640_PCI=m on powerpc + * SAUCE: x86: reboot: Make Dell Latitude E6520 use reboot=pci + - LP: #833705 + * [Config] Add CONFIG_EFI_VARS=y to the enforcer + - LP: #837332 + * [Config] Update CONFIG_EFI_VARS enforcer check + * [Config] Add aufs to virtual flavor inclusion list + - LP: #844159 + * SAUCE: x86: reboot: Make Dell Optiplex 790 use reboot=pci + - LP: #818933 + * SAUCE: x86: reboot: Make Dell Optiplex 990 use reboot=pci + - LP: #768039 + * SAUCE: x86: reboot: Make Dell Latitude E6220 use reboot=pci + - LP: #838402 + * [Config] Add igbvf to the virtual flavor inclusion list + - LP: #794570 + * [Config] Add ixgbevf to the virtual inclusion list + - LP: #872411 + * [Config] Transition -generic and -server to be identical + * rebase to v3.1-rc10 + + [ Luke Yelavich ] + + * [Config] Disable legacy IDE drivers on powerpc + + [ Ming Lei ] + + * SAUCE: fireware: add NO_MSI quirks for o2micro controller + - LP: #801719 + * SAUCE: ata_piix: make DVD Drive recognisable on systems with Intel + Sandybridge chipsets(v2) + - LP: #737388, #782389, #794642 + + [ Paolo Pisati ] + + * [Config] Compile-in vfat support for armel + - LP: #853783 + + [ Randy Dunlap ] + + * SAUCE: staging: fix rts5139 depends & build + - LP: #824273 + + [ Rene Bolldorf ] + + * SAUCE: (drop after 3.0) ideapad: Check if acpi already handle backlight + power in 'ideapad_backlight_notify_power' to avoid a page fault + + [ Seth Forshee ] + + * SAUCE: (no-up) Input: elantech - Add v3 hardware support + - LP: #681904 + * SAUCE: (drop after 3.1) usb_storage: Don't freeze in usb-stor-scan + - LP: #810020 + + [ Stefan Bader ] + + * (config) Package macvlan and macvtap for virtual + * [Config] Force perf to use libiberty for demangling + - LP: #783660 + * SAUCE: xen: Do not use pv spinlocks on HVM + - LP: #838026 + + [ Tim Gardner ] + + * [Config] Clean up tools rules + * [Config] Package x86_energy_perf_policy and turbostat + - LP: #797556 + * rebase to v3.1-rc3 + * [Config] Simplify binary-udebs dependencies + * [Config] kernel preparation cannot be parallelized + * [Config] Linearize module/abi checks + * [Config] Linearize and simplify tree preparation rules + * [Config] Build kernel image in parallel with modules + * [Config] Set concurrency for kmake invocations + * [Config] Improve install-arch-headers speed + * [Config] Fix binary-perarch dependencies + * [Config] Removed stamp-flavours target + * [Config] Serialize binary indep targets + * [Config] Use build stamp directly + * [Config] Restore prepare-% target + * rebase to v3.1-rc4 + * rebase to v3.1-rc5 + * [Config] Disable makedumpfile for i386/amd64 + * rebase to v3.1-rc6 + * [Config] Fix binary-% build target + * rebase to v3.1-rc7 + * rebase to v3.1-rc8 + * SAUCE: Add a new entry (413c:8197) to Bluetooth USB device ID table + - LP: #854399 + * [Config] Enable ftrace support in the mac80211 layer + - LP: #865171 + * rebase to v3.1-rc9 + * SAUCE: usb/core/devio.c: Check for printer class specific request + - LP: #872711 + + [ Upstream Kernel Changes ] + + * overlay filesystem + * overlayfs: add statfs support + * overlayfs: implement show_options + * overlay: overlay filesystem documentation + * fs: limit filesystem stacking depth + + [ Will Drewry ] + + * SAUCE: seccomp_filter: new mode with configurable syscall filters + * SAUCE: seccomp_filter: add process state reporting + * SAUCE: seccomp_filter: Document what seccomp_filter is and how it + works. + * SAUCE: seccomp_filter: add HAVE_SECCOMP_FILTER and seccomp_execve + + [ Upstream Kernel Changes ] + + * rebase to v3.1-rc1 + * rebase to v3.1-rc2 + * rebase to v3.1-rc3 + +CONFIG_BLK_DEV_BSGLIB=y + +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 + -CONFIG_VIDEO_OMAP2_VOUT_VRFB=y + * rebase to v3.1-rc4 + * rebase to v3.1-rc5 + * rebase to v3.1-rc6 + * rebase to v3.1-rc7 + * rebase to v3.1-rc8 + * rebase to v3.1-rc9 + * rebase to v3.1-rc10 + + -- Leann Ogasawara Wed, 10 Aug 2011 15:43:38 -0700 + +linux (3.1.0-1.0) oneiric; urgency=low + + [ Leann Ogasawara ] + + * Open P-series + + -- Leann Ogasawara Wed, 10 Aug 2011 13:42:40 -0700 + +linux (3.0.0-8.10) oneiric; urgency=low + + [ Adam Jackson ] + + * SAUCE: drm/i915/pch: Fix integer math bugs in panel fitting + - LP: #753994 + + [ John Johansen ] + + * [Config] Enable missing IPv6 options + + [ Leann Ogasawara ] + + * [Config] Disable config IWLWIFI_DEVICE_SVTOOL + - LP: #819925 + * Rebase to 3.0.1 + + [ Upstream Kernel Changes ] + + * x86, intel, power: Correct the MSR_IA32_ENERGY_PERF_BIAS message + * ALSA: hda - Turn on extra EAPDs on Conexant codecs + - LP: #783582 + * KVM: Remove SMEP bit from CR4_RESERVED_BITS + - LP: #796476 + * KVM: Add SMEP support when setting CR4 + - LP: #796476 + * KVM: Mask function7 ebx against host capability word9 + - LP: #796476 + * KVM: Add instruction fetch checking when walking guest page table + - LP: #796476 + + [ Upstream Kernel Changes ] + + * rebase to v3.0.1 + + -- Leann Ogasawara Fri, 05 Aug 2011 11:32:25 -0700 + +linux (3.0.0-7.9) oneiric; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] add local prefix to oss local change_bits" + * Revert "SAUCE: add tracing for user initiated readahead requests" + * Revert "SAUCE: vfs: Add a trace point in the mark_inode_dirty function" + * Revert "SAUCE: Input: ALPS - Enable Intellimouse mode for Lenovo + Zhaoyang E47" + * Revert "SAUCE: fix documentation strings for struct input_keymap_entry" + * Revert "SAUCE: vt -- fix handoff numbering to 1..n and add range checks + (grub)" + * Revert "SAUCE: vt -- fix handoff numbering to 1..n and add range + checks" + * Revert "SAUCE: vt -- allow grub to request automatic vt_handoff" + * Revert "SAUCE: vt -- maintain bootloader screen mode and content until + vt switch" + * [Config] enable CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1 + - LP: #816035 + * ubuntu: Yama: if an underlying filesystem provides a permissions op use + it + * SAUCE: (no-up) add tracing for user initiated readahead requests + * SAUCE: vt -- maintain bootloader screen mode and content until vt + switch + * SAUCE: vt -- allow grub to request automatic vt_handoff + + [ Arjan van de Ven ] + + * SAUCE: (no-up) vfs: Add a trace point in the mark_inode_dirty function + + [ Kees Cook ] + + * Revert "SAUCE: (no-up) Disable building the ACPI debugfs source" + * [Config] enforce ACPI_CUSTOM_METHOD disabled + + [ Keng-Yu Lin ] + + * SAUCE: (no-up) Input: ALPS - Enable Intellimouse mode for Lenovo + Zhaoyang E47 + - LP: #632884, #803005 + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_BLK_DEV_CMD64X=m on powerpc + - LP: #513131 + * [Config] Enable CONFIG_RT2800PCI_RT53XX=y + - LP: #815064 + + [ Rezwanul Kabir ] + + * SAUCE: (no-up) Add support for Intellimouse Mode in ALPS touchpad on + Dell E2 series Laptops + - LP: #632884 + + [ Upstream Kernel Changes ] + + * Revert "yama: if an underlying filesystem provides a permissions op use + it" + * Revert "Add support for Intellimouse Mode in ALPS touchpad on Dell E2 + series Laptops" + * Revert "tty: include linux/slab.h for kfree" + * Revert "gpio/ml_ioh_gpio: include linux/slab.h for kfree" + * Revert "pch_dma: add include/slab.h for kfree" + * mmc: Added quirks for Ricoh 1180:e823 lower base clock frequency + - LP: #773524 + * oss: rename local change_bits to avoid powerpc bitsops.h definition + + -- Leann Ogasawara Mon, 25 Jul 2011 09:08:01 -0700 + +linux (3.0.0-7.8) oneiric; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: overlayfs -- overlayfs: add statfs support + * [Config] enable CONFIG_OVERLAYFS + + [ Erez Zadok ] + + * ubuntu: overlayfs -- overlayfs: implement show_options + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_ALIM7101_WDT=m on powerpc + * [Config] Enable CONFIG_ASUS_OLED=m on powerpc + * [Config] Disable CONFIG_ATM_DUMMY on arm + * [Config] Enable CONFIG_BLK_DEV_DRBD=m on powerpc + * Temporarily disable module check on arm + * Rebase to 3.0 final + * [Config] Enable CONFIG_CAN_TI_HECC=m on arm + * [Config] Set CONFIG_CDROM_PKTCDVD=m on amd64 and i386 + * [Config] Enable CONFIG_CRYPTO_CCM=m on powerpc + * [Config] Enable CONFIG_CRYPTO_DEV_HIFN_795X=m on powerpc + * [Config] Enable CONFIG_CRYPTO_GCM=m on powerpc + * [Config] Set CRYPTO_LZO=m on powerpc64-smp + * [Config] Enable CONFIG_DM9000=m on arm + * [Config] Set CONFIG_DISPLAY_SUPPORT=m on arm + * [Config] Enable CONFIG_DL2K=m on amd64 and i386 + + [ Miklos Szeredi ] + + * ubuntu: overlayfs -- vfs: add i_op->open() + * ubuntu: overlayfs -- vfs: export do_splice_direct() to modules + * ubuntu: overlayfs -- vfs: introduce clone_private_mount() + * ubuntu: overlayfs -- overlay filesystem + * ubuntu: overlayfs -- ovl: fix overlayfs over overlayfs + * ubuntu: overlayfs -- ovl: improve stack use of lookup and readdir + * ubuntu: overlayfs -- fs: limit filesystem stacking depth + * ubuntu: overlayfs -- ovl: make lower mount read-only + + [ Neil Brown ] + + * ubuntu: overlayfs -- overlay: overlay filesystem documentation + + [ Tim Gardner ] + + * [Config] Add enic/fnic to udebs + - LP: #801610 + + [ Upstream Kernel Changes ] + + * yama: if an underlying filesystem provides a permissions op use it + + [ Major Kernel Changes ] + + * Rebase to 3.0 final + + -- Leann Ogasawara Thu, 21 Jul 2011 07:01:32 -0700 + +linux (3.0.0-6.7) oneiric; urgency=low + + [ Eagon Yager ] + + * [Config] Fix misspelled 'skipmodule' in arm makefile. + + [ Keng-Yu Lin ] + + * SAUCE: Input: ALPS - Enable Intellimouse mode for Lenovo Zhaoyang E47 + - LP: #632884, #803005 + + [ Leann Ogasawara ] + + * Revert "[Config] Temporarily disable CONFIG_SMC91X on armel-omap" + * Revert "[Config] Temporarily Disable CONFIG_BRCMSMAC on arm" + * Revert "[Config] Temporarily Disable CONFIG_RTL8192SE on powerpc" + * Revert "[Config] Temporarily Disable CONFIG_RTL8192SE on arm" + * Revert "[Config] Temporarily disable CONFIG_BRCMSMAC on powerpc" + * [Config] Set CONFIG_ACPI_PCI_SLOT=m + * [Config] Set CONFIG_ACPI_SBS=m + * [Config] Set CONFIG_ACPI_WMI=m + * [Config] Set CONFIG_AD7150=m on arm + * [Config] Set CONFIG_AD7152=m on arm + * [Config] Drop CONFIG_GPIO_S5PV210 + * [Config] Drop CONFIG_GPIO_S5PC100 + * [Config] Drop CONFIG_GPIO_PLAT_SAMSUNG + * [Config] Drop CONFIG_GPIO_EXYNOS4 + + [ Stefan Bader ] + + * SAUCE: Re-enable RODATA for i386 virtual + - LP: #809838 + + [ Upstream Kernel Changes ] + + * Revert "Quirk to fix suspend/resume on Lenovo Edge 11,13,14,15" + * (drop after 3.0.0) acer-wmi: Add support for Aspire 1830 wlan hotkey + - LP: #771758 + + -- Leann Ogasawara Wed, 20 Jul 2011 06:36:02 -0700 + +linux (3.0.0-5.6) oneiric; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_RTL8192CU=m + * Rebase to -rc7 + + -- Tim Gardner Mon, 11 Jul 2011 22:13:50 +0100 + +linux (3.0.0-4.5) oneiric; urgency=low + + [ Ming Lei ] + + * SAUCE: fix yama_ptracer_del lockdep warning + - LP: #791019 + + [ Seth Forshee ] + + * SAUCE: (drop after 3.0) asus-wmi: Add callback for hotkey filtering + * SAUCE: (drop after 3.0) eeepc-wmi: Add support for T101MT Home/Express Gate key + * SAUCE: (drop after 3.0) asus-wmi: Enable autorepeat for hotkey input device + * [Config] CONFIG_{ASUS,ASUS_NB,EEEPC}_WMI=m + - LP: #805218 + + [ Tim Gardner ] + + * [Config] updateconfigs after rebase to -rc6+ + Rebased against 4dd1b49c6d215dc41ce50c80b4868388b93f31a3 + * Adopt a 3 digit verion, e.g., 3.0.0-x.x + * Revert "UBUNTU: add dependancies for module-init-tools" + This dependency is no longer required for a 3 digit version. + + -- Tim Gardner Tue, 05 Jul 2011 14:03:04 +0100 + +linux (3.0-3.4) oneiric; urgency=low + + [ Keng-Yu Lin ] + + * SAUCE: Revert: "dell-laptop: Toggle the unsupported hardware + killswitch" + - LP: #775281 + + [ Leann Ogasawara ] + + * rebase to v3.0-rc5 + * [Config] updateconfigs after rebase to 3.0-rc5 + + [ Tim Gardner ] + + * [Config] Remove ubuntu/rtl8192se + * [Config] Added armel ABI files + * [Config] Removed armel versatile flavour + * [Config] CONFIG_INTEL_MEI=m + - LP: #716867 + + [ Upstream Kernel Changes ] + + * ALSA: hda - Enable auto-parser as default for Conexant codecs + + [ Upstream Kernel Changes ] + + * rebase to v3.0-rc5 + + -- Leann Ogasawara Thu, 30 Jun 2011 14:27:10 +0100 + +linux (3.0-2.3) oneiric; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update to 0e2bafab74f0d1463383faeb93f9fc5eb8c2c54e + + [ Leann Ogasawara ] + + * rebase to v3.0-rc4 + * [Config] updateconfigs after rebase to 3.0-rc4 + * fix ERROR: __devcgroup_inode_permission undefined + + [ Stefan Bader ] + + * SAUCE: iscsitarget: Remove driver from the kernel + + [ Tim Gardner ] + + * SAUCE: rtl8192se: Force a build for a 2.6/3.0 kernel + * [Config] Add grub-efi as a recommended bootloader for server and + generic + - LP: #800910 + + [ Upstream Kernel Changes ] + + * Fix node_start/end_pfn() definition for mm/page_cgroup.c + + [ Leann Ogasawara ] + + * rebase to v3.0-rc4 + + -- Leann Ogasawara Fri, 24 Jun 2011 11:51:12 -0700 + +linux (3.0-1.2) oneiric; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_CAN_CALC_BITTIMING + + [ Leann Ogasawara ] + + * rebase to v3.0-rc3 + * [Config] updateconfigs after rebase to 3.0-rc3 + + [ Upstream Kernel Changes ] + + * perf: clear out make flags when calling kernel make kernelver + + [ Leann Ogasawara ] + + * rebase to v3.0-rc3 + + -- Leann Ogasawara Tue, 14 Jun 2011 07:25:35 -0700 + +linux (3.0-0.1) oneiric; urgency=low + + [ Andy Whitcroft ] + + * use the packaging version in the kernel + * use the kernels idea of its version for version_signature + * add dependancies for module-init-tools + * update control files to version 3 + * printchanges/insertchanges allow override of prev_release + * correct Vcs-Git: to point to oneiric + + [ Leann Ogasawara ] + + * rebase to v3.0-rc1 + * [Config] updateconfigs after rebase to 3.0-rc1 + * ubuntu: dm-raid4-5 fix up build failure + * [Config] Temporarily Disable CONFIG_GPIO_EXYNOS4 on arm + * [Config] Temporarily Disable CONFIG_GPIO_PLAT_SAMSUNG on arm + * [Config] Temporarily Disable CONFIG_GPIO_S5PC100 on arm + * [Config] Temporarily Disable CONFIG_GPIO_S5PV210 on arm + * [Config] Temporarily disable CONFIG_BRCMSMAC on powerpc + * [Config] Temporarily Disable CONFIG_BRCMSMAC on arm + * [Config] Temporarily Disable CONFIG_RTL8192SE on arm + * [Config] Temporarily Disable CONFIG_RTL8192SE on powerpc + * [Config] Temporarily disable CONFIG_SMC91X on armel-omap + * rebase to v3.0-rc2 + + [ Manoj Iyer ] + + * SAUCE: mmc: Enable MMC card reader for RICOH [1180:e823] + - LP: #790754 + + [ Upstream Kernel Changes ] + + * Revert "x86 idle: EXPORT_SYMBOL(default_idle, pm_idle) only when APM + demands it" + * drm/i915: fix regression after clock gating init split + + [ Major Kernel Changes ] + + * rebase from v2.6.39 to v3.0-rc1 + * rebase from v3.0-rc1 to v3.0-rc2 + + -- Andy Whitcroft Thu, 09 Jun 2011 15:18:33 +0100 + +linux (2.6.39-3.10) oneiric; urgency=low + + [ Colin Ian King ] + + * SAUCE: S3 early resume debug via keyboard LEDs + + [ Ingo Molnar ] + + * ubuntu: nx-emu - i386: NX emulation + * ubuntu: nx-emu - i386: mmap randomization for executable mappings + + [ Leann Ogasawara ] + + * Revert "[Config] Disable CONFIG_FT1000 on powerpc64-smp" + * Revert "[Config] Disable CONFIG_DM_RAID45" + * [Config] enable CONFIG_BRCMFMAC=y + * [Config] enable CONFIG_MDIO_BITBANG=m across all arch's and flavors + * [Config] enable CONFIG_VIDEO_OUTPUT_CONTROL=m on armel-omap + + [ Robert Nelson ] + + * SAUCE: omap3: beagle: detect new xM revision B + - LP: #770679 + * SAUCE: omap3: beagle: detect new xM revision C + - LP: #770679 + * SAUCE: omap3: beagle: if rev unknown, assume xM revision C + - LP: #770679 + + [ Stefan Bader ] + + * SAUCE: Convert dm-raid45 to new block plugging + + -- Leann Ogasawara Mon, 23 May 2011 11:46:43 -0700 + +linux (2.6.39-3.9) oneiric; urgency=low + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_SCSI_LPFC_DEBUG_FS + * rebase to v2.6.39 + * [Config] enable CONFIG_LLC2=m across all arch's and flavours + * [Config] enable CONFIG_INPUT_APANEL=m + + [ Thomas Schlichter ] + + * SAUCE: vesafb: mtrr module parameter is uint, not bool + - LP: #778043 + * SAUCE: vesafb: enable mtrr WC by default + - LP: #778043 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc7 to v2.6.39 + + -- Andy Whitcroft Fri, 20 May 2011 09:52:32 +0100 + +linux (2.6.39-2.8) oneiric; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-37" + * Revert "ubuntu: AUFS -- aufs2-base.patch aufs2.1-37" + * Revert "[Config] Disable CONFIG_AUFS_FS" + * ubuntu: AUFS -- aufs2-base.patch aufs2.1-39 + * ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-39 + * ubuntu: AUFS -- update to c6b76974311efc5bf3eddf921cd015b6aae46935 + * ubuntu: AUFS -- clean up the aufs updater and BOM + * ubuntu: AUFS -- documentation on updating aufs2 + + [ Kees Cook ] + + * ubuntu: Yama - LSM hooks + * ubuntu: Yama - create task_free security callback + * ubuntu: Yama - add ptrace relationship tracking interface + * ubuntu: Yama - unconditionally chain to Yama LSM + + [ Leann Ogasawara ] + + * Revert "SAUCE: Fix drivers/staging/easycap FTBS" + * Revert "[Config] Disable CONFIG_EASYCAP" + * ubuntu: fsam7400 disable driver + * ubuntu: omnibook disable driver + * ubuntu: rfkill disable driver + + [ Tim Gardner ] + + * SAUCE: Fix extra reference in fb_open() + + -- Leann Ogasawara Mon, 16 May 2011 09:23:56 -0700 + +linux (2.6.39-2.7) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc7 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc6 to v2.6.39-rc7 + + -- Leann Ogasawara Tue, 10 May 2011 10:18:28 +0200 + +linux (2.6.39-1.6) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc6 + * SAUCE: [arm] fixup __aeabi_uldivmod undefined build error + + [ Tim Gardner ] + + * [Config] updateconfigs after rebase to 2.6.39-rc6 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc5 to v2.6.39-rc6 + - LP: #740126 + + -- Leann Ogasawara Thu, 05 May 2011 09:46:12 -0700 + +linux (2.6.39-0.5) oneiric; urgency=low + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: Revert "x86, hibernate: Initialize mmu_cr4_features during boot" + - LP: #764758 + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc5 + * [Config] updateconfigs following rebase to v2.6.39-rc5 + + [ Paolo Pisati ] + + * [Config] s/USB_MUSB_TUSB6010/USB_MUSB_OMAP2PLUS/ on omap3 to get musb + - LP: #759913 + + [ Stefan Bader ] + + * Include nls_iso8859-1 for virtual images + - LP: #732046 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc4 to v2.6.39-rc5 + + -- Leann Ogasawara Wed, 27 Apr 2011 06:39:42 -0700 + +linux (2.6.39-0.4) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc4 + * [Config] updateconfigs following rebase to v2.6.39-rc4 + * fixup powerpc implicit declaration of function + 'crash_kexec_wait_realmode' + * [Config] Disable CONFIG_FT1000 on powerpc64-smp + + [ Tim Gardner ] + + * [Config] CONFIG_TRANSPARENT_HUGEPAGE=y + - LP: #769503 + * [Config] Add cachefiles.ko to virtual flavour + - LP: #770430 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc3 to v2.6.39-rc4 + + -- Leann Ogasawara Tue, 19 Apr 2011 06:25:20 -0700 + +linux (2.6.39-0.3) oneiric; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc3 + * crash_kexec_wait_realmode() undefined when !SMP + + [ Tim Gardner ] + + * [Config] CONFIG_PM_ADVANCED_DEBUG=y for i386/amd64 + - LP: #632327 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc2 to v2.6.39-rc3 + + -- Leann Ogasawara Tue, 12 Apr 2011 06:52:24 -0700 + +linux (2.6.39-0.2) oneiric; urgency=low + + [ Gustavo F. Padovan ] + + * SAUCE: Revert "Bluetooth: Add new PID for Atheros 3011" + - LP: #720949 + + [ John Johansen ] + + * AppArmor: Fix masking of capabilities in complain mode + - LP: #748656 + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc2 + * [Config] updateconfigs following rebase to v2.6.39-rc2 + * hv_mouse needs delay.h + * olpc_dcon_xo_1 needs delay.h + * olpc_dcon_xo_1_5 needs delay.h + * Update dropped.txt for Oneiric + + [ Steve Langasek ] + + * [Config] Make linux-libc-dev coinstallable under multiarch + - LP: #750585 + + [ Upstream Kernel Changes ] + + * x86, hibernate: Initialize mmu_cr4_features during boot + - LP: #752870 + + [ Major Kernel Changes ] + + * rebase from v2.6.39-rc1 to v2.6.39-rc2 + + -- Leann Ogasawara Wed, 06 Apr 2011 11:04:15 -0700 + +linux (2.6.39-0.1) oneiric; urgency=low + + [ Brad Figg ] + + * [Config] Set CONFIG_NR_CPUS=256 for amd64 generic + - LP: #737124 + + [ Henrik Rydberg ] + + * SAUCE: HID: hid-ntrig: add support for 1b96:0006 model + * SAUCE: HID: ntrig: fix suspend/resume on recent models + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: (drop after 2.6.39) v4l: make sure drivers supply a zeroed + struct v4l2_subdev + - LP: #745213 + + [ Kees Cook ] + + * [Config] packaging: adjust perms on vmlinuz as well + * SAUCE: nx-emu: further clarify dmesg reporting + - LP: #745181 + + [ Leann Ogasawara ] + + * rebase to v2.6.39-rc1 + * [Config] updateconfigs following rebase to v2.6.39-rc1 + * [Config] Disable CONFIG_DM_RAID45 + * [Config] Disable CONFIG_SCSI_ISCSITARGET + * [Config] Disable CONFIG_EASYCAP + * [Config] Disable CONFIG_AUFS_FS + * update bnx2 firmware files in d-i/firmware/nic-modules + * xhci-pci.c resolve implicit declaration of kzalloc + * [Config] Enable CONFIG_DRM_PSB for only x86 + * [Config] Enable CONFIG_RTS_PSTOR for only x86 + * mfd/asic3: Fix typo, s/irq_data/data/ + + [ Luke Yelavich ] + + * [Config] Disable CONFIG_CRASH_DUMP on 32-bit powerpc kernels + - LP: #745358 + * [Config] Disable CONFIG_DRM_RADEON_KMS on powerpc kernels + * [Config] Build some framebuffer drivers as modules for powerpc kernels. + + [ Manoj Iyer ] + + * SAUCE: thinkpad-acpi: module autoloading for newer Lenovo ThinkPads. + - LP: #745217 + + [ Tim Gardner ] + + * SAUCE: INR_OPEN=4096 + - LP: #663090 + * SAUCE: Increase the default hard limit for open FDs to 4096 + - LP: #663090 + + [ Upstream Kernel Changes ] + + * (drop after 2.6.39-rc1) arm: versatile : Fix typo introduced in irq + namespace cleanup + * (drop after 2.6.39-rc1) [media] staging: altera-jtag needs delay.h + * ALSA: pcm: fix infinite loop in snd_pcm_update_hw_ptr0() + + [ Major Kernel Changes ] + + * rebase from v2.6.38 to v2.6.39-rc1 + + -- Leann Ogasawara Thu, 31 Mar 2011 12:50:10 -0700 + +linux (2.6.39-0.0) oneiric; urgency=low + + [ Leann Ogasawara ] + + * Open Oneiric + + -- Leann Ogasawara Thu, 31 Mar 2011 12:29:23 -0700 + +linux (2.6.38-7.39) natty; urgency=low + + [ Leann Ogasawara ] + + * No change upload. This is just to rebuild with gcc-4.5.2-7ubuntu1. + + -- Leann Ogasawara Thu, 24 Mar 2011 09:27:45 -0700 + +linux (2.6.38-7.38) natty; urgency=low + + [ Leann Ogasawara ] + + * No change upload take 2. 2.6.38-7.37 was accidentally uploaded before + gcc-4.5.2-6ubuntu5 finished building on all arches. + + -- Leann Ogasawara Tue, 22 Mar 2011 06:12:47 -0700 + +linux (2.6.38-7.37) natty; urgency=low + + [ Leann Ogasawara ] + + * No change upload. This is just to rebuild with gcc-4.5.2-6ubuntu5. + + -- Leann Ogasawara Sun, 20 Mar 2011 16:02:48 -0700 + +linux (2.6.38-7.36) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: KLUDGE: work around failed 'shrink-wrap' compiler + optimisation" + * purge last vestiges of maverick + * [Config] switch CONFIG_FB_VESA back to module + + [ Chris Wilson ] + + * SAUCE: drm/i915: Fix pipelined fencing + - LP: #717114 + + [ Loïc Minier ] + + * Include nls_cp437 module in virtual for fat + - LP: #732046 + * Support arch= cross-compilation for any arch + * Fix couple of typos in 0-common-vars.mk + * Enforce DEFAULT_MMAP_MIN_ADDR on armhf + * Add armhf to Debian -> Linux arch map + * Add initial armhf.mk + * Enable common packages for armhf + + [ Upstream Kernel Changes ] + + * Yama: fix default relationship to check thread group + - LP: #737676 + + -- Andy Whitcroft Fri, 18 Mar 2011 18:18:02 +0000 + +linux (2.6.38-7.35) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to 2fbfac4e053861925fa3fffcdc327649b09af54c + * rebase fixes bug #715330 + * [Config] disable CONFIG_SCSI_QLA_ISCSI for powerpc 32bit to fix FTBS + * rebase to v2.6.38 final + + [ Herton Ronaldo Krzesinski ] + + * SAUCE: Apply OPTION_BLACKLIST_SENDSETUP also for ZTE MF626 + - LP: #636091 + + [ Tim Gardner ] + + * [Confg] CONFIG_BOOT_PRINTK_DELAY=y + + [ Upstream Kernel Changes ] + + * Yama: use thread group leader when creating match + - LP: #729839 + * (drop after 2.6.38) ahci: AHCI mode SATA patch for Intel Patsburg SATA + RAID controller + - LP: #735240 + * (drop after v2.6.38) x86, quirk: Fix SB600 revision check + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc8 to v2.6.38 final + - LP: #715330 + + -- Andy Whitcroft Tue, 15 Mar 2011 19:04:19 +0000 + +linux (2.6.38-6.34) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] normalise CONFIG_INTEL_TXT + * SAUCE: KLUDGE: work around failed 'shrink-wrap' compiler optimisation + - LP: #730860 + * rebase to mainline v2.6.38-rc8 + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc7 + fb62c00a6d8942775abc23d1621db1252e2d93d1 + to v2.6.38-rc8 + + -- Andy Whitcroft Tue, 08 Mar 2011 11:54:48 +0000 + +linux (2.6.38-6.33) natty; urgency=low + + [ Andy Whitcroft ] + + * d-i -- enable speakup-modules udeb + - LP: #672699 + * rebase to 493f3358cb289ccf716c5a14fa5bb52ab75943e5 + * [Config] debian PPC64 configuration + * [Config] cleanup powerpc config fixing unexpected inconsistancies + * [Config] resync ppc64 configuration + * SAUCE: match up ENTRY/END naming for 32/64 bit + * rebase to fb62c00a6d8942775abc23d1621db1252e2d93d1 + * [Config] update configs after rebase to + fb62c00a6d8942775abc23d1621db1252e2d93d1 + * [Config] pps_gen_parport no longer built + + [ Corentin Chary ] + + * SAUCE: (drop after 2.6.38) eeepc-wmi: reorder keymap + - LP: #689393 + * SAUCE: (drop after 2.6.38) eeepc-wmi: add wlan key found on 1015P + - LP: #689393 + + [ John Johansen ] + + * SAUCE: Fix aufs calling of security_path_mknod + - LP: #724456 + + [ Kees Cook ] + + * SAUCE: proc: hide kernel addresses via %pK in /proc//stack + + [ Tim Gardner ] + + * rebase to 2.6.38-rc7 + + [ Upstream Kernel Changes ] + + * Revert "drm/i915: fix corruptions on i8xx due to relaxed fencing" + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc6 to v2.6.38-rc7 + + fb62c00a6d8942775abc23d1621db1252e2d93d1 + - LP: #721389 + - LP: #722925 + - LP: #723672 + - LP: #723676 + - LP: #715318 + + -- Andy Whitcroft Mon, 07 Mar 2011 15:33:17 +0000 + +linux (2.6.38-5.32) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to mainline 6f576d57f1fa0d6026b495d8746d56d949989161 + * [Config] updateconfigs following rebase to v2.6.38-rc6 + * [Config] enable CONFIG_DMAR + - LP: #552311 + + [ Upstream Kernel Changes ] + + * drm/i915: skip FDI & PCH enabling for DP_A + - LP: #561802, #600453, #681877 + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc5 to v2.6.38-rc6 + - LP: #718402 + - LP: #719524 + - LP: #721126 + - LP: #719691 + - LP: #722689 + - LP: #722310 + + -- Andy Whitcroft Tue, 22 Feb 2011 13:28:39 +0000 + +linux (2.6.38-4.31) natty; urgency=low + + [ Andy Whitcroft ] + + * add in bugs closed by upstream patches pulled in by rebases + * rebase to 795abaf1e4e188c4171e3cd3dbb11a9fcacaf505 + * [Config] enable CONFIG_VSX to allow use of vector instuctions + * resync with maverick 98defa1c5773a3d7e4c524967eb01d5bae035816 + * rebase to mainline v2.6.38-rc5 + * SAUCE: ecryptfs: read on a directory should return EISDIR if not + supported + - LP: #719691 + + [ Colin Ian King ] + + * SAUCE: Dell All-In-One: Remove need for Dell module alias + + [ Manoj Iyer ] + + * SAUCE: (drop after 2.6.38) add ricoh 0xe823 pci id. + - LP: #717435 + + [ Tim Gardner ] + + * [Config] CONFIG_CRYPTO_CRC32C_INTEL=y + + [ Upstream Kernel Changes ] + + * Quirk to fix suspend/resume on Lenovo Edge 11,13,14,15 + - LP: #702434 + * vfs: fix BUG_ON() in fs/namei.c:1461 + + [ Vladislav P ] + + * SAUCE: Release BTM while sleeping to avoid deadlock. + - LP: #713837 + + [ Major Kernel Changes ] + + * rebase from v2.6.38-rc4 to v2.6.38-rc5 + - LP: #579276 + - LP: #715877 + - LP: #713769 + - LP: #716811 + * resync with Maverick Ubuntu-2.6.35-27.47 + + -- Andy Whitcroft Fri, 11 Feb 2011 17:24:09 +0000 + +linux (2.6.38-3.30) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.38-rc4 + * ppc64 -- add basic architecture + * ubuntu: AUFS -- update to 65835da20b77c98fb538c9114fc31f5de1328230 + + [ Colin Ian King ] + + * SAUCE: Add WMI hotkeys support for Dell All-In-One series + - LP: #676997 + * SAUCE: Add WMI hotkeys support for another Dell All-In-One series + - LP: #701530 + * SAUCE: Dell WMI: Use sparse keymaps and tidy up code. + - LP: #701530 + + [ Dan Rosenberg ] + + * SAUCE: (drop after 2.6.38) Convert net %p usage %pK + + [ Kees Cook ] + + * Revert "SAUCE: kernel: make /proc/kallsyms mode 400 to reduce ease of + attacking" + * SAUCE: (drop after 2.6.38) use %pK for /proc/kallsyms and /proc/modules + + [ Tim Gardner ] + + * [Config] CONFIG_BLK_CGROUP=y + - LP: #706394 + * [Config] CONFIG_DELL_WMI_AIO=m + + [ Upstream Kernel Changes ] + + * drm/i915/lvds: Restore dithering on native modes for gen2/3 + - LP: #711568 + + [ Upstream Kernel Changes ] + + * rebase from v2.6.38-rc3 to v2.6.38-rc4. + - LP: #701271 + - LP: #708521 + - LP: #710371 + + -- Andy Whitcroft Tue, 08 Feb 2011 02:07:18 +0000 + +linux (2.6.38-2.29) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to 1f0324caefd39985e9fe052fac97da31694db31e + * [Config] updateconfigs following rebase to + 1f0324caefd39985e9fe052fac97da31694db31e + * rebase to 70d1f365568e0cdbc9f4ab92428e1830fdb09ab0 + * [Config] reenable HIBERNATE + - LP: #710877 + * rebase to v2.6.38-rc3 + * [Config] reenable CONFIG_CRASH_DUMP + + [ Kamal Mostafa ] + + * SAUCE: rtl8192se: fix source file perms + * SAUCE: rtl8192se: fix source file newline + * SAUCE: omnibook: fix source file newline + + [ Kees Cook ] + + * [Config] packaging: really make System.map mode 0600 + + [ Ricardo Salveti de Araujo ] + + * SAUCE: OMAP3630: PM: don't warn the user with a trace in case of + PM34XX_ERRATUM + + [ Soren Hansen ] + + * SAUCE: nbd: Remove module-level ioctl mutex + + [ Tim Gardner ] + + * SAUCE: Disable building the ACPI debugfs source + + [ Upstream Kernel Changes ] + + * Set physical start and alignment 1M for virtual i386 + - LP: #710754 + + [ Upstream Kernel Changes ] + + * rebase from v2.6.38-rc2 + c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + to v2.6.38-rc3 + - LP: #707902 + + -- Andy Whitcroft Fri, 28 Jan 2011 16:30:32 +0000 + +linux (2.6.38-1.28) natty; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update to b1cee06249dfa0ab30951e7f06490a75c155b620 + + [ Ricardo Salveti de Araujo ] + + * SAUCE: omap3: beaglexm: fix DVI initialization + * [Config] omap: move CONFIG_PANEL_GENERIC_DPI to build in to make + display work at Beagle + + -- Andy Whitcroft Fri, 28 Jan 2011 10:51:57 +0000 + +linux (2.6.38-1.27) natty; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update aufs-update to track new locations of headers + * ubuntu: AUFS -- update to c5021514085a5d96364e096dbd34cadb2251abfd + * SAUCE: ensure root is ready before running usermodehelpers in it + * correct the Vcs linkage to point to natty + * rebase to linux tip e78bf5e6cbe837daa6ab628a5f679548742994d3 + * [Config] update configs following rebase + e78bf5e6cbe837daa6ab628a5f679548742994d3 + * SAUCE: Yama: follow changes to generic_permission + * ubuntu: compcache -- follow changes to bd_claim/bd_release + * ubuntu: iscsitarget -- follow changes to open_bdev_exclusive + * ubuntu: ndiswrapper -- fix interaction between __packed and packed + * ubuntu: AUFS -- update to 806051bcbeec27748aae2b7957726a4e63ff308e + * update package version to match payload version + * rebase to e6f597a1425b5af64917be3448b29e2d5a585ac8 + * rebase to v2.6.38-rc1 + * [Config] updateconfigs following rebase to v2.6.38-rc1 + * SAUCE: x86 fix up jiffies/jiffies_64 handling + * rebase to linus tip 2b1caf6ed7b888c95a1909d343799672731651a5 + * [Config] updateconfigs following rebase to + 2b1caf6ed7b888c95a1909d343799672731651a5 + * [Config] disable CONFIG_TRANSPARENT_HUGEPAGE to fix i386 boot crashes + * ubuntu: AUFS -- suppress benign plink warning messages + - LP: #621195 + * [Config] CONFIG_NR_CPUS=256 for amd64 -server flavour + * rebase to v2.6.38-rc2 + * rebase to mainline d315777b32a4696feb86f2a0c9e9f39c94683649 + * rebase to c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + * [Config] update configs following rebase to + c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + * [Config] disable CONFIG_AD7152 to fix FTBS on armel versatile + * [Config] disable CONFIG_AD7150 to fix FTBS on armel versatile + * [Config] disable CONFIG_RTL8192CE to fix FTBS on armel omap + * [Config] disable CONFIG_MANTIS_CORE to fix FTBS on armel versatile + + [ Kees Cook ] + + * SAUCE: kernel: make /proc/kallsyms mode 400 to reduce ease of attacking + + [ Stefan Bader ] + + * Temporarily disable RODATA for virtual i386 + - LP: #699828 + + [ Tim Gardner ] + + * [Config] CONFIG_NLS_DEFAULT=utf8 + - LP: #683690 + * [Config] CONFIG_HIBERNATION=n + * update bnx2 firmware files in d-i/firmware/nic-modules + + [ Upstream Kernel Changes ] + + * Revert "drm/radeon/bo: add some fallback placements for VRAM only + objects." + * packaging: make System.map mode 0600 + * thinkpad_acpi: Always report scancodes for hotkeys + - LP: #702407 + * sched: tg->se->load should be initialised to tg->shares + * Input: sysrq -- ensure sysrq_enabled and __sysrq_enabled are consistent + * brcm80211: include linux/slab.h for kfree + * pch_dma: add include/slab.h for kfree + * i2c-eg20t: include linux/slab.h for kfree + * gpio/ml_ioh_gpio: include linux/slab.h for kfree + * tty: include linux/slab.h for kfree + * winbond: include linux/delay.h for mdelay et al + + [ Upstream Kernel Changes ] + + * mark the start of v2.6.38 versioning + * rebase v2.6.37 to v2.6.38-rc2 + c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84 + - LP: #689886 + - LP: #702125 + - LP: #608775 + - LP: #215802 + - LP: #686333 + - LP: #677830 + - LP: #677652 + - LP: #696493 + - LP: #697240 + - LP: #689036 + - LP: #705323 + - LP: #686692 + + -- Andy Whitcroft Sun, 09 Jan 2011 13:44:52 +0000 + +linux (2.6.37-12.26) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.37-rc8 + * [Config] armel -- reenable omap flavour + * [Config] disable CONFIG_MACH_OMAP3517EVM to fix FTBS on armel omap + * [Config] disable CONFIG_GPIO_VX855 to fix FTBS on omap armel + * [Config] disable CONFIG_WESTBRIDGE_ASTORIA to fix FTBS on omap armel + * [Config] disable CONFIG_TI_DAVINCI_EMAC to fix FTBS on omap armel + * rebase to mainline 989d873fc5b6a96695b97738dea8d9f02a60f8ab + * [Config] track missing modules + * rebase to v2.6.37 final + + [ Chase Douglas ] + + * SAUCE: (drop after 2.6.37) HID: magicmouse: Don't report REL_{X, Y} for + Magic Trackpad + + [ Stefan Bader ] + + * Revert "SAUCE: blkfront: default to sd devices" + - LP: #684875 + + [ Tim Gardner ] + + * Revert "SAUCE: (no-up) libata: Ignore HPA by default." + - LP: #380138 + * [Config] Added autofs4.ko to -virtual flavour + - LP: #692917 + + [ Upstream Kernel Changes ] + + * Add support for Intellimouse Mode in ALPS touchpad on Dell E2 series + Laptops + - LP: #632884 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc8 + * rebase to mainline 989d873fc5b6a96695b97738dea8d9f02a60f8ab + * rebase to v2.6.37 final + + -- Andy Whitcroft Thu, 23 Dec 2010 18:34:13 +0000 + +linux (2.6.37-11.25) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i -- add hpsa to the list of block devices + - LP: #684304 + * [Config] add vmw-balloon driver to -virtual flavour + - LP: #592039 + * rebase to v2.6.37-rc7 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc7 + + -- Andy Whitcroft Tue, 21 Dec 2010 13:35:28 +0000 + +linux (2.6.37-10.24) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.37-rc6 + * updateconfigs following rebase to v2.6.37-rc6 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc6 + + -- Andy Whitcroft Thu, 16 Dec 2010 12:34:19 +0000 + +linux (2.6.37-9.23) natty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: vt -- fix handoff numbering to 1..n and add range checks + - LP: #689606 + * SAUCE: vt -- fix handoff numbering to 1..n and add range checks (grub) + - LP: #689606 + + [ Kees Cook ] + + * SAUCE: RO/NX protection for loadable kernel, fix ftrace + - LP: #690190 + + -- Andy Whitcroft Wed, 15 Dec 2010 19:29:57 +0000 + +linux (2.6.37-9.22) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.35-rc5 + * [Config] updateconfigs following rebase to v2.6.37-rc5 + * (no-up) add support for installed header files to ubuntu directory + - LP: #684666 + * ubuntu: AUFS -- include the aufs_types.h file in linux-libc-headers + - LP: #684666 + * ubuntu: dm-raid4-5 -- follow changes to bio flags + * ubuntu: dm-raid4-5 -- re-enable + * ubuntu: omnibook -- update BOM + * ubuntu: ndiswrapper -- update BOM to match actual version + * ubuntu: ndiswrapper -- follow removal of the BKL and locked ioctl + * ubuntu: ndiswrapper -- re-enable + * ubuntu: iscsitarget -- re-instate copy_io_context + * ubuntu: iscsitarget -- follow changes to semaphore initialisation + * ubuntu: iscsitarget -- convert NIPQUAD to %pI4 + * ubuntu: iscsitarget -- re-enable + + [ Kees Cook ] + + * [Config] update config for CONFIG_DEBUG_SET_MODULE_RONX + + [ Manoj Iyer ] + + * SAUCE: Enable jack sense for Thinkpad Edge 13 + - LP: #685015 + + [ Tim Gardner ] + + * [Config] CONFIG_9P_FSCACHE=y,CONFIG_9P_FS_POSIX_ACL=y + * [Config] CONFIG_CRYPTO_CRC32C=y + - LP: #681819 + * [Config] CONFIG_9P_FSCACHE=n + * [Config] Add nfsd modules to -virtual flavour + - LP: #688070 + + [ Upstream Kernel Changes ] + + * Revert "Staging: zram: work around oops due to startup ordering snafu" + * NFS: Fix panic after nfs_umount() + - LP: #683938 + * x86: Add NX protection for kernel data + * x86: Add RO/NX protection for loadable kernel modules + * x86: Resume trampoline must be executable + * x86: RO/NX protection for loadable kernel, jump_table fix + + [ Upstream Kernel Changes ] + + * rebase to v2.6.37-rc5 + + -- Andy Whitcroft Thu, 09 Dec 2010 18:15:35 +0000 + +linux (2.6.37-8.21) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- include the aufs_types.h file in + linux-libc-headers" + * Revert "(no-up) add support for installed header files to ubuntu + directory" + + -- Andy Whitcroft Sun, 05 Dec 2010 17:33:28 +0000 + +linux (2.6.37-8.20) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] drivers/serial/mfd.c: Fix ARM compile error" + * Revert "SAUCE: Nouveau: Disable acceleration on MacBook Pros" + * Revert "SAUCE: Nouveau: Add quirk framework to disable acceleration" + * Revert "SAUCE: i915 -- disable powersave by default" + * SAUCE: enable Marvell 9128 PCIe SATA controller + - LP: #658521 + * [Config] evtchn has been renamed + * (no-up) add support for installed header files to ubuntu directory + - LP: #684666 + * ubuntu: AUFS -- include the aufs_types.h file in linux-libc-headers + - LP: #684666 + + [ Tim Gardner ] + + * [Config] MISS: evtchn, NEW : xen-evtchn + * rebase to v2.6.37-rc4 + + [ Upstream Kernel Changes ] + + * drm/i915: Clean conflicting modesetting registers upon init + - LP: #683775 + * rebase to v2.6.37-rc4 + + -- Andy Whitcroft Fri, 03 Dec 2010 18:42:07 +0000 + +linux (2.6.37-7.19) natty; urgency=low + + [ Tim Gardner ] + + * [Config] Add bnx2 firmware to nic-modules udeb + - LP: #676245 + + -- Andy Whitcroft Fri, 26 Nov 2010 17:53:45 +0000 + +linux (2.6.37-7.18) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] USB: option: Remove duplicate AMOI_VENDOR_ID" + * Revert "SAUCE: Add extra headers to linux-libc-dev" + * Revert "SAUCE: Enable speedstep for sonoma processors." + * [Config] enable CONFIG_BT_HCIUART_ATH3K + * [Config] enable CONFIG_IWLWIFI_DEBUGFS + * [Config] standardise CONFIG_MII + * [Config] standardise CONFIG_PRISM2_USB + * [Config] standardise CONFIG_SCSI_QLA_ISCSI + * [Config] build in CONFIG_AGP + * [Config] build in CONFIG_AGP_INTEL + * [Config] build in CONFIG_AGP_AMD + * [Config] build in CONFIG_AGP_AMD64 + * [Config] build in CONFIG_AGP_NVIDIA + * [Config] build in CONFIG_AGP_VIA + * [Config] disable CONFIG_SCSI_QLA_ISCSI for FTBS (arm) + * (no-up): document the new ## scheme + * [Config] harmonise CONFIG_SERIAL_8250_NR_UARTS + * [Config] update CONFIG_SERIAL_8250_RUNTIME_UARTS=32 + - LP: #675453 + + [ Mathieu J. Poirier ] + + * SAUCE: ARM: Adding vdd_sdi regulator supply to OMAP3EVM + + [ Upstream Kernel Changes ] + + * nx-emu: fix inverted report of disable_nx + + -- Andy Whitcroft Tue, 23 Nov 2010 21:00:39 +0000 + +linux (2.6.37-6.17) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- aufs2-standalone.patch + aufs2.1-36-UNRELEASED-20101103" + * Revert "ubuntu: AUFS -- aufs2-base.patch + aufs2.1-36-UNRELEASED-20101103" + * [Config] standardise CONFIG_BT + * [Config] standardise CONFIG_IRDA + * [Config] standardise CONFIG_LAPB + * [Config] standardise CONFIG_RDS + * [Config] standardise CONFIG_RFKILL + * [Config] standardise CONFIG_TIPC + * [Config] standardise CONFIG_X25 + * [Config] standardise CONFIG_INPUT_EVDEV + * [Config] standardise CONFIG_INPUT_JOYDEV + * [Config] standardise CONFIG_INPUT_JOYSTICK + * [Config] standardise CONFIG_INPUT_TOUCHSCREEN + * [Config] CONFIG_INPUT_TOUCHSCREEN=n for FTBS (arm) + * [Config] CONFIG_IRDA=n for FTBS (arm) + * ubuntu: AUFS -- aufs2-base.patch aufs2.1-37 + * ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-37 + * ubuntu: AUFS -- update to 097bf62d6f49619359d34bf17f242df38562489a + + [ Tim Gardner ] + + * SAUCE: Fix drivers/staging/easycap FTBS + * [Config] CONFIG_EASYCAP=m after fixing FTBS + + [ Upstream Kernel Changes ] + + * Revert "x86: Add NX protection for kernel data" + + -- Andy Whitcroft Mon, 22 Nov 2010 18:09:10 +0000 + +linux (2.6.37-6.16) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] update config for CONFIG_DEBUG_SET_MODULE_RONX" + * rebase to v2.6.37-rc3 + + [ Tim Gardner ] + + * [Config] CONFIG_SCHED_AUTOGROUP=y + + [ Upstream Kernel Changes ] + + * Revert "x86: Add RO/NX protection for loadable kernel modules" + * sched: automated per session task groups + * rebase to v2.6.37-rc3 + + -- Andy Whitcroft Mon, 22 Nov 2010 10:11:13 +0000 + +linux (2.6.37-6.15) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] standardise CONFIG_CEPH_FS + * [Config] standardise CONFIG_SCSI_LPFC_DEBUG_FS + * [Config] standardise CONFIG_SCSI_PROC_FS + * [Config] standardise CONFIG_UBIFS_FS + * [Config] standardise CONFIG_USB_GADGET_DEBUG_FS + + [ Kees Cook ] + + * [Config] update config for CONFIG_DEBUG_SET_MODULE_RONX + + [ Manoj Iyer ] + + * SAUCE: Enable jack sense for Thinkpad Edge 11 + - LP: #677210 + * SAUCE: enable rfkill for rtl8192se driver + - LP: #640992 + + [ Tim Gardner ] + + * [Config] CONFIG_EASYCAP=n for FTBS + * Rebase to v2.6.32-rc2+git + + [ Upstream Kernel Changes ] + + * x86: Fix improper large page preservation + * x86: Add NX protection for kernel data + * x86: Add RO/NX protection for loadable kernel modules + + [ Upstream Kernel Changes ] + + * Rebase to Linus 2.6.37-rc2+git + + -- Andy Whitcroft Sat, 20 Nov 2010 11:40:00 +0000 + +linux (2.6.37-5.14) natty; urgency=low + + [ Upstream Kernel Changes ] + + * PCI: fix offset check for sysfs mmapped files + - LP: #676963 + + -- Andy Whitcroft Thu, 18 Nov 2010 18:12:27 +0000 + +linux (2.6.37-5.13) natty; urgency=low + + [ Andy Whitcroft ] + + * rebased to v2.6.37-rc2 + * updateconfigs following rebase to v2.6.37-rc2 + + [ Tim Gardner ] + + * [Config] Added NFS and related modules to virtual flavour + - LP: #659084 + + [ Upstream Kernel Changes ] + + * x86, cpu: Rename verify_cpu_64.S to verify_cpu.S + * x86, cpu: Clear XD_DISABLED flag on Intel to regain NX + * x86, cpu: Call verify_cpu during 32bit CPU startup + * x86, cpu: Only CPU features determine NX capabilities + + [ Upstream Changes ] + + * rebased to v2.67.37-rc2 + + -- Andy Whitcroft Tue, 16 Nov 2010 13:13:29 +0000 + +linux (2.6.37-4.12) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Upstream] HID: magicmouse: add param for scroll speed" + * Revert "[Upstream] HID: magicmouse: properly account for scroll + movement in state" + * Revert "[Upstream] HID: magicmouse: disable and add module param for + scroll acceleration" + * Revert "[Upstream] HID: magicmouse: scroll on entire surface, not just + middle of mouse" + + [ Henrik Rydberg ] + + * SAUCE: hid: ntrig: remove sysfs nodes + * SAUCE: hid: ntrig: Setup input filtering manually + * SAUCE: hid: ntrig: New ghost-filtering event logic + + [ Manoj Iyer ] + + * SAUCE: Added quirk to recognize GE0301 3G modem as an interface. + - LP: #348861 + + [ Upstream Kernel Changes ] + + * Revert "mmc: fix all hangs related to mmc/sd card insert/removal during + suspend/resume" + * Revert "[ARM] implement arch_randomize_brk()" + * Revert "ARM: stack protector: change the canary value per task" + * Revert "ARM: initial stack protector (-fstack-protector) support" + * Revert "ALSA: hda - Handle pin NID 0x1a on ALC259/269" + * Revert "ALSA: hda - Handle missing NID 0x1b on ALC259 codec" + * Revert "perf probe: Add kernel source path option" + * hid: ntrig: Support single-touch devices + * hid: ntrig: Mask pen switch events + * net: rtnetlink.h -- only include linux/netdevice.h when used by the + kernel + - LP: #673073 + * Fix userspace build of linux/fs.h + + -- Andy Whitcroft Mon, 15 Nov 2010 19:31:44 +0000 + +linux (2.6.37-3.11) natty; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- update to + b37c575759dc4535ccc03241c584ad5fe69e3b25" + * Revert "ubuntu: AUFS -- track changes to the arguements to fop fsync()" + * Revert "ubuntu: AUFS -- update to standalone 2.6.35-rcN as at 20100601" + * Revert "ubuntu: AUFS -- update to standalone 2.6.34 as at 20100601" + * Revert "ubuntu: AUFS -- aufs2 base patch for linux-2.6.34" + * [Config] Disable intel_idle for -virtual kernels + - LP: #651370 + * [Config] enforcer -- ensure we never enable CONFIG_IMA + * debian -- pass the correct flavour name when checking configs + * [Config] enforcer -- ensure CONFIG_INTEL_IDLE is off for -virtual + * [Config] ensure CONFIG_IPV6=y for powerpc + * [Config] enforcer -- ensure CONFIG_IPV6=y + * ubuntu: AUFS -- aufs2-base.patch aufs2.1-36-UNRELEASED-20101103 + * ubuntu: AUFS -- aufs2-standalone.patch aufs2.1-36-UNRELEASED-20101103 + * ubuntu: AUFS -- update to aufs2.1-36-UNRELEASED-20101103 + * ubuntu: AUFS -- re-enable + * ubuntu: AUFS -- track changes to work queue initialisation + * ubuntu: AUFS -- track changes to llseek in v2.6.37-rc1 + * SAUCE: fbcon -- fix race between open and removal of framebuffers + * SAUCE: fbcon -- fix OOPs triggered by race prevention fixes + - LP: #614008 + * SAUCE: drm -- stop early access to drm devices + + [ Jeremy Kerr ] + + * [Config] Build-in powermac ZILOG serial driver + - LP: #673346 + + [ Kees Cook ] + + * SAUCE: nx-emu: use upstream ASLR when possible + + [ Tim Gardner ] + + * [Config] Use correct be2iscsi module name in d-i/modules/scsi-modules + - LP: #628776 + + [ Upstream Kernel Changes ] + + * i386: NX emulation + * nx-emu: drop exec-shield sysctl, merge with disable_nx + * nx-emu: standardize boottime message prefix + * mmap randomization for executable mappings on 32-bit + * exec-randomization: brk away from exec rand area + + -- Andy Whitcroft Thu, 11 Nov 2010 23:46:37 +0000 + +linux (2.6.37-2.10) natty; urgency=low + + [ Andy Whitcroft ] + + * reinstate armel config changes: + * [Config] CONFIG_GPIO_PCH=n for armel FTBS + * [Config] CONFIG_GPIO_VX855=n for armel FTBS + + -- Andy Whitcroft Wed, 03 Nov 2010 22:20:35 +0000 + +linux (2.6.37-2.9) natty; urgency=low + + [ Andy Whitcroft ] + + * config -- fix genportsconfig + * [Config] move powerpc over from ports to distro + * bump master version number to match contained kernel + * SAUCE: fix documentation strings for struct input_keymap_entry + * usb: gadget: goku_udc: add registered flag bit + + -- Andy Whitcroft Tue, 02 Nov 2010 15:14:11 +0000 + +linux (2.6.36-2.8) natty; urgency=low + + [ Tim Gardner ] + + * [Config]: fix changed CONFIG_SYSFS_DEPRECATED_V2 enforcement rules + * [Config]: TWL4030_CORE=n for FTBS + * [Config]: CONFIG_ATH6K_LEGACY=n for FTBS + * [Config]: CONFIG_SOLO6X10=n for FTBS + * [Config]: CONFIG_GPIO_PCH=n for armel FTBS + * [Config]: CONFIG_GPIO_VX855=n for armel FTBS + * [Config]: CONFIG_DRM_NOUVEAU=n for armel FTBS + * [Config]: CONFIG_LINE6_USB=n for armel FTBS + * [Config]: CONFIG_SENSORS_AK8975=n for armel FTBS + * [Config]: CONFIG_I2C_I801=n for armel FTBS + * UBUNTU: SAUCE: AppArmor: Fix unpack of network tables. + * AppArmor: compatibility patch for v5 interface + * AppArmor: compatibility patch for v5 network controll + * Dropped (pre-stable): input: Support Clickpad devices in ClickZone mode + * Dropped: UBUNTU: SAUCE: libata: Add ALPM power state accounting to the AHCI driver + * Dropped: UBUNTU: SAUCE: Added quirk to recognize GE0301 3G modem as an interface. + * Dropped: hid: 3m: Convert to MT slots + * Dropped: HID: magicmouse: don't allow hidinput to initialize the device + * Dropped: HID: magicmouse: simplify touch data bit manipulation + * Dropped: HID: magicmouse: simplify touch down logic + * Dropped: HID: magicmouse: enable Magic Trackpad support + * Dropped: UBUNTU: SAUCE: hid: ntrig: remove sysfs nodes + * Dropped: UBUNTU: SAUCE: hid: ntrig: Setup input filtering manually + * Dropped: UBUNTU: SAUCE: hid: ntrig: New ghost-filtering event logic + * Dropped: UBUNTU: SAUCE: hid: ntrig: identify firmware version (wiggled) + * Dropped: UBUNTU: (pre-stable): input: Support Clickpad devices in ClickZone mode + * Dropped: UBUNTU: SAUCE: KMS: cache the EDID information of the LVDS + * Dropped: UBUNTU: SAUCE: fbcon -- fix race between open and removal of framebuffers + * Dropped: UBUNTU: SAUCE: fbcon -- fix OOPs triggered by race prevention fixes + * Dropped: UBUNTU: SAUCE: x86: implement cs-limit nx-emulation for ia32 + * Dropped: UBUNTU: SAUCE: x86: more tightly confine cs-limit nx-emulation to ia32 only + * Dropped: UBUNTU: SAUCE: [um] Don't use nx_enabled under UML + * Dropped: UBUNTU: SAUCE: x86: brk away from exec rand area + + [ Upstream Kernel Changes ] + + * rebased against 2.6.27-rc1 + + -- Tim Gardner Fri, 22 Oct 2010 19:35:05 -0600 + +linux (2.6.36-1.7) natty; urgency=low + + [ Andy Whitcroft ] + + * rebased to v2.6.36 final + * [Config] update configs following rebase to v2.6.36 final + * [Config] update ports configs following rebase to v2.6.36 final + + [ Upstream Kernel Changes ] + + * rebased to v2.6.36 final + + -- Andy Whitcroft Thu, 21 Oct 2010 14:28:57 +0100 + +linux (2.6.36-1.6) natty; urgency=low + + [ Upstream Kernel Changes ] + + * drop broadcom staging driver preview: + * Revert "Staging: Add initial release of brcm80211 - Broadcom 802.11n + wireless LAN driver." + + -- Andy Whitcroft Wed, 20 Oct 2010 10:41:25 +0100 + +linux (2.6.36-1.5) natty; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.36-rc8 + * updateconfigs following rebase to v2.6.36-rc8 + * updateportsconfigs following rebase to v2.6.36-rc8 + * config -- simplify the kernelconfig interface + * config -- add new config mode 'dumpconfigs' + + [ Tim Gardner ] + + * Simplify the use of CROSS_COMPILER + + [ Upstream Kernel Changes ] + + * drop broadcom staging driver preview: + * Revert "staging: brcm80211: Make compiling of brcm80211.ko and + brcmfmac.ko mutually exclusive." + * Revert "staging: brcm80211: Fix compile issue when BRCM80211_PCI is not + set." + * Revert "Staging: brcm80211: remove driver specific -W options" + * Revert "Staging: brcm80211: clean up makefile cflag lines" + * Revert "staging: brcm80211: add fullmac driver" + * Revert "staging: brcm80211: use string native library" + * Revert "staging: brcm80211: use native ctype library" + * Revert "staging: brcm80211: fix remaining checkpatch errors." + * Revert "staging: brcm80211: fix "ERROR: trailing whitespace."" + * Revert "staging: brcm80211: fix "ERROR: spaces required around that + ..."" + * Revert "staging: brcm80211: fix "ERROR: spaces prohibited around that + ':' ..."" + * Revert "staging: brcm80211: fix "ERROR: space required before that + ..."" + * Revert "staging: brcm80211: fix "ERROR: space required after that ..."" + * Revert "staging: brcm80211: fix "ERROR: space required after that close + brace"" + * Revert "staging: brcm80211: fix "ERROR: space prohibited before + ...close square bracket"" + * Revert "staging: brcm80211: fix "ERROR: space prohibited after that + ..."" + * Revert "staging: brcm80211: fix "ERROR: need consistent spacing around + '*'"" + * Revert "staging: brcm80211: fix 'ERROR: "(foo*)" should be "(foo *)"'" + * Revert "staging: brcm80211: fix "ERROR: Macros w/ mult. statements ... + do - while loop"" + * Revert "staging: brcm80211: fix "ERROR: Macros w/ complex values ... + parenthesis"" + * Revert "staging: brcm80211: fix "ERROR: do not initialise statics to 0 + or NULL"" + * Revert "staging: brcm80211: fix "ERROR: do not initialise globals to 0 + or NULL"" + * Revert "staging: brcm80211: fix "ERROR: while should follow close brace + '}'"" + * Revert "staging: brcm80211: fix "ERROR: that open brace { ... prev + line"" + * Revert "staging: brcm80211: fix "ERROR: trailing statements should be + on next line"" + * Revert "staging: brcm80211: fix "ERROR: do not use assignment in if + condition"" + * Revert "staging: brcm80211: fix "ERROR: return is not a function, + paren..."" + * Revert "staging: brcm80211: fix "ERROR: open brace '{' following + function dec..."" + * Revert "staging: brcm80211: fix 'ERROR: "foo * bar" should be "foo + *bar"'" + * Revert "staging: brcm80211: Fix URLs for firmware files." + * Revert "staging: brcm80211: use '%pM' format to print MAC address" + * Revert "staging: brcm80211: Add contact info to TODO list." + * Revert "staging: brcm80211: Fix some initialisation failure paths" + * Export dump_{write,seek} to binary loader modules + * rebase to v2.6.36-rc8. + + -- Andy Whitcroft Tue, 19 Oct 2010 18:58:11 +0100 + +linux (2.6.36-0.4) natty; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: perf: increase stack footprint to avoid stack-protector warning + (fixes FTBS on powerpc) + + -- Andy Whitcroft Thu, 14 Oct 2010 13:16:16 +0100 + +linux (2.6.36-0.3) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable CONFIG_SCSI_QLA_ISCSI to fix FTBS on powerpc + + -- Andy Whitcroft Thu, 14 Oct 2010 03:01:30 +0100 + +linux (2.6.36-0.2) natty; urgency=low + + [ Andy Whitcroft ] + + * [Config] updateportsconfigs following rebase to 2.6.36-rc7 + (fix FTBS on powerpc) + + -- Andy Whitcroft Wed, 13 Oct 2010 23:25:12 +0100 + +linux (2.6.36-0.1) natty; urgency=low + + [ Andy Whitcroft ] + + * reduce disk usage during buildd builds + - LP: #645653 + * [Config] enforcer -- ensure CONFIG_INIT_PASS_ALL_PARAMS is y + * [Config] armel -- drop omap flavour + + [ Tim Gardner ] + + * Added dropped patch list + * more dropped patches + * [Config] Disable aufs, dmraid-4.5, ndis-wrapper + * [Config] Add support for cross compiling armel + * [Config] CONFIG_SCSI_QLA_ISCSI=n for armel + * [Upstream] drivers/serial/mfd.c: Fix ARM compile error + * [Config]: updateconfigs after adding brcm80211 + * staging: brcm80211: Fix Makefile syntax error + * rebased to v2.6.36-rc7 + + [ Upstream Kernel Changes ] + + * (upstream) IPS driver: don't toggle CPU turbo on unsupported CPUs + * (upstream) IPS driver: verify BIOS provided limits + * intel_ips: Print MCP limit exceeded values. + * Staging: Add initial release of brcm80211 - Broadcom 802.11n wireless + LAN driver. + * staging: brcm80211: Fix some initialisation failure paths + * staging: brcm80211: Add contact info to TODO list. + * staging: brcm80211: use '%pM' format to print MAC address + * staging: brcm80211: Fix URLs for firmware files. + * staging: brcm80211: fix 'ERROR: "foo * bar" should be "foo *bar"' + * staging: brcm80211: fix "ERROR: open brace '{' following function + dec..." + * staging: brcm80211: fix "ERROR: return is not a function, paren..." + * staging: brcm80211: fix "ERROR: do not use assignment in if condition" + * staging: brcm80211: fix "ERROR: trailing statements should be on next + line" + * staging: brcm80211: fix "ERROR: that open brace { ... prev line" + * staging: brcm80211: fix "ERROR: while should follow close brace '}'" + * staging: brcm80211: fix "ERROR: do not initialise globals to 0 or NULL" + * staging: brcm80211: fix "ERROR: do not initialise statics to 0 or NULL" + * staging: brcm80211: fix "ERROR: Macros w/ complex values ... + parenthesis" + * staging: brcm80211: fix "ERROR: Macros w/ mult. statements ... do - + while loop" + * staging: brcm80211: fix 'ERROR: "(foo*)" should be "(foo *)"' + * staging: brcm80211: fix "ERROR: need consistent spacing around '*'" + * staging: brcm80211: fix "ERROR: space prohibited after that ..." + * staging: brcm80211: fix "ERROR: space prohibited before ...close square + bracket" + * staging: brcm80211: fix "ERROR: space required after that close brace" + * staging: brcm80211: fix "ERROR: space required after that ..." + * staging: brcm80211: fix "ERROR: space required before that ..." + * staging: brcm80211: fix "ERROR: spaces prohibited around that ':' ..." + * staging: brcm80211: fix "ERROR: spaces required around that ..." + * staging: brcm80211: fix "ERROR: trailing whitespace." + * staging: brcm80211: fix remaining checkpatch errors. + * staging: brcm80211: use native ctype library + * staging: brcm80211: use string native library + * staging: brcm80211: add fullmac driver + * Staging: brcm80211: clean up makefile cflag lines + * Staging: brcm80211: remove driver specific -W options + * staging: brcm80211: Fix compile issue when BRCM80211_PCI is not set. + * staging: brcm80211: Make compiling of brcm80211.ko and brcmfmac.ko + mutually exclusive. + + -- Andy Whitcroft Tue, 12 Oct 2010 16:00:27 +0100 + +linux (2.6.35-22.33) maverick; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: Add support for Intellimouse Mode in ALPS touchpad on + Dell E2 series Laptops" + - LP: #641320 + + [ Brian Rogers ] + + * SAUCE: ir-core: Fix null dereferences in the protocols sysfs interface + - LP: #624701 + + [ Christopher James Halse Rogers ] + + * SAUCE: Nouveau: Add quirk framework to disable acceleration + - LP: #544088, #546393 + * SAUCE: Nouveau: Disable acceleration on MacBook Pros + - LP: #546393 + + [ John Johansen ] + + * Revert "SAUCE: AppArmor: allow newer tools to load policy on older + kernels" + * SAUCE: AppArmor: allow newer tools to load policy on older kernels + - LP: #639758 + + [ Mathieu J. Poirier ] + + * SAUCE: Adding vdd_sdi regulator supply to OMAP3EVM + + [ Upstream Kernel Changes ] + + * ALSA: HDA: Enable internal speaker on Dell M101z + - LP: #640254 + + -- Leann Ogasawara Fri, 17 Sep 2010 13:21:28 -0700 + +linux (2.6.35-22.32) maverick; urgency=low + + [ Arjan van de Ven ] + + * SAUCE: libata: Add ALPM power state accounting to the AHCI driver + + [ David Henningsson ] + + * SAUCE: ALSA: HDA: Enable internal mic on Dell E6410 and Dell E6510 + - LP: #605047, #628961 + + [ John Johansen ] + + * [Upstream] AppArmor: Fix splitting an fqname into separate namespace + and profile names + - LP: #615947 + * [Upstream] AppArmor: Fix locking from removal of profile namespace + - LP: #615947 + * SAUCE: AppArmor: allow newer tools to load policy on older kernels + - LP: #639758 + * SAUCE: Improve Amazon EBS performance for EC2 + - LP: #634316 + + [ Leann Ogasawara ] + + * Revert "SAUCE: i915 KMS -- blacklist i855" + * Revert "SAUCE: i915 KMS -- blacklist i845g" + * Revert "SAUCE: i915 KMS -- blacklist i830" + * Revert "SAUCE: i915 KMS -- support disabling KMS for known broken + devices" + * execute module-inclusion within a subshell + - LP: #621175 + + [ Upstream Kernel Changes ] + + * (pre-stable) bounce: call flush_dcache_page() after bounce_copy_vec() + - LP: #633227 + * (pre-stable) drm/i915: don't enable self-refresh on Ironlake + - LP: #629711 + * (pre-stable) mm: Move vma_stack_continue into mm.h + * x86, hwmon: Fix unsafe smp_processor_id() in thermal_throttle_add_dev + - LP: #601073 + * PM / Runtime: Make runtime_status attribute not debug-only (v. 2) + * PM / Runtime: Add runtime PM statistics (v3) + * compat: Make compat_alloc_user_space() incorporate the access_ok() + - CVE-2010-3081 + * x86-64, compat: Test %rax for the syscall number, not %eax + - CVE-2010-3301 + * x86-64, compat: Retruncate rax after ia32 syscall entry tracing + - CVE-2010-3301 + + -- Leann Ogasawara Tue, 14 Sep 2010 08:46:49 -0700 + +linux (2.6.35-21.31) maverick; urgency=low + + [ Andy Whitcroft ] + + * bodge linux-libc-dev package version due to ti-omap4 error + * linux-libc-dev -- ensure we can only build this on debian.master + + -- Leann Ogasawara Mon, 13 Sep 2010 09:54:31 -0700 + +linux (2.6.35-21.30) maverick; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: fbcon -- fix OOPs triggered by race prevention fixes + - LP: #614008 + + [ Daniel Lezcano ] + + * SAUCE: fix compilation warning when CONFIG_SECURITY is not set + + [ Henrik Rydberg ] + + * SAUCE: Input: wacom - add fuzz parameters to features + * SAUCE: Input: wacom - collect device quirks into single function + * SAUCE: Input: wacom - add support for the Bamboo Touch trackpad + * SAUCE: Input: wacom - add a quirk for low resolution Bamboo devices + * SAUCE: hid: ntrig: Remove unused device ids + * SAUCE: hid: ntrig: remove sysfs nodes + * SAUCE: hid: ntrig: Correct logic for quirks + * SAUCE: hid: ntrig: zero-initialize ntrig struct + * SAUCE: hid: ntrig: Setup input filtering manually + * SAUCE: hid: ntrig: New ghost-filtering event logic + + [ Leann Ogasawara ] + + * SAUCE: ndiswrapper: Initialize buffer index and check its value + - LP: #613796 + + [ Manoj Iyer ] + + * SAUCE: Add support for Intellimouse Mode in ALPS touchpad on Dell E2 + series Laptops + - LP: #632884 + + [ Ping Cheng ] + + * SAUCE: Input: wacom - parse the Bamboo device family + + [ Rafi Rubin ] + + * SAUCE: hid: ntrig: identify firmware version (wiggled) + + [ Tim Gardner ] + + * [Config] CONFIG_NL80211_TESTMODE=n + + [ Upstream Kernel Changes ] + + * Revert "input: mt: Add support for the Bamboo Touch trackpad" + * e1000e: initial support for 82579 LOMs + * e1000e: correct MAC-PHY interconnect register offset for 82579 + * (pre-stable) ALSA: hda - Add a new hp-laptop model for Conexant 5066, + tested on HP G60 + - LP: #587388 + * DSS2: Don't power off a panel twice + - LP: #588243 + * mmc: build fix: mmc_pm_notify is only available with CONFIG_PM=y + * Input: i8042 - reset keyboard controller wehen resuming from S2R + - LP: #86820 + * ALSA: hda - Fix beep frequency on IDT 92HD73xx and 92HD71Bxx codecs + - LP: #414795 + * agp/intel: Support the extended physical addressing bits on + Sandybridge. + - LP: #632488 + * drm/i915,intel_agp: Add support for Sandybridge D0 + - LP: #632488 + * (pre-stable) intel_agp,i915: Add more sandybridge graphics device ids + - LP: #632488 + * mmc: omap: fix for bus width which improves SD card's peformance. + + -- Leann Ogasawara Tue, 07 Sep 2010 09:58:52 -0700 + +linux (2.6.35-20.29) maverick; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: i915 KMS -- support disabling KMS for known broken devices + - LP: #563277 + * SAUCE: i915 KMS -- blacklist i830 + - LP: #542208, #563277 + * SAUCE: i915 KMS -- blacklist i845g + - LP: #541492, #563277 + * SAUCE: i915 KMS -- blacklist i855 + - LP: #511001, #541511, #563277 + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_SENSORS_PKGTEMP=m + - LP: #601073 + * ARM: Temporarily disable module check for armel + * rebase to v2.6.35.4 + * [Config] update configs following rebase to v2.6.35.4 + + [ Ricardo Salveti de Araujo ] + + * [Config] Change CONFIG_LEDS_TRIGGER_HEARTBEAT from module to built-in + in Omap + + [ Tim Gardner ] + + * [Config] Added be2net, be2scsi to udebs + - LP: #628776 + + [ Upstream Kernel Changes ] + + * x86, cpu: Package Level Thermal Control, Power Limit Notification + definitions + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: pkgtemp hwmon driver + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: thermal throttling handler + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: power limit + - LP: #601073 + * x86, hwmon: Package Level Thermal/Power: pkgtemp documentation + - LP: #601073 + * hid: 3m: Adjust to sequential MT HID protocol + * hid: 3m: Convert to MT slots + * hid: 3m: Correct touchscreen emulation + * hid: 3m: Adjust major / minor axes to scale + * input: bcm5974: Adjust major / minor to scale + * HID: magicmouse: don't allow hidinput to initialize the device + * HID: magicmouse: simplify multitouch feature request + * HID: magicmouse: simplify touch data bit manipulation + * HID: magicmouse: simplify touch down logic + * HID: magicmouse: remove timestamp logic + * HID: magicmouse: enable Magic Trackpad support + * HID: magicmouse: Adjust major / minor axes to scale + * mmc: fix all hangs related to mmc/sd card insert/removal during + suspend/resume + - LP: #477106 + * drm/i915: fix VGA plane disable for Ironlake+ + - LP: #602281 + + -- Leann Ogasawara Mon, 30 Aug 2010 08:38:01 -0700 + +linux (2.6.35-19.28) maverick; urgency=low + + [ Leann Ogasawara ] + + * No changes from 2.6.35-19.27. Some armel udebs were accidentally deleted + from the archive and a no-change rebuild was attempted. However, the ABI + did not get bumped and resulted in build failures for 2.6.35-19.27. Fix + up the ABI and re-upload. + + -- Leann Ogasawara Sat, 28 Aug 2010 16:42:27 -0700 + +linux (2.6.35-19.27) maverick; urgency=low + + [ Leann Ogasawara ] + + * No changes from 2.6.35-19.26. Some armel udebs were accidentally deleted + from the archive. + + -- Leann Ogasawara Fri, 27 Aug 2010 08:58:35 -0700 + +linux (2.6.35-19.26) maverick; urgency=low + + [ Upstream Kernel Changes ] + + * ARM: OMAP: Beagle: revision detection + * ARM: OMAP: Beagle: only Cx boards use pin 23 for write protect + * ARM: OMAP: Beagle: no gpio_wp pin connection on xM + + -- Leann Ogasawara Thu, 26 Aug 2010 09:15:09 -0700 + +linux (2.6.35-19.25) maverick; urgency=low + + [ Jarod Wilson ] + + * SAUCE: Bring in staging/lirc from 2.6.36 + - LP: #609234 + * SAUCE: Update ir-core to linuxtv/other which should be merged for + 2.6.36. + - LP: #609234 + * SAUCE: Fix memleaks in imon and mceusb drivers + - LP: #609234 + * SAUCE: Bring in streamzap support from linuxtv/other + - LP: #609234 + + [ Mario Limonciello ] + + * Remove ubuntu/lirc in favor of staging/lirc from 2.6.36 + - LP: #609234 + + [ Mathieu J. Poirier ] + + * SAUCE: ARM: adding i2c eeprom driver to read EDID + - LP: #608279 + + [ Upstream Kernel Changes ] + + * intel_idle: disable module support + - LP: #615265 + * (pre-stable) ALSA: hda - Ensure codec patch files are checked for the + correct codec ID + * (pre-stable) ALSA: hda - Rename iMic to Int Mic on Lenovo NB0763 + - LP: #605101 + * (pre-stable) ALSA: HDA: Use model=auto for LG R510 + - LP: #495134 + * (pre-stable) ALSA: HDA: Add Sony VAIO quirk for ALC269 + - LP: #519066 + * (pre-stable) ALSA: HDA: Fix front mic on Dell Precision M6500 + - LP: #519066 + * input: mt: Initialize slots to unused (rev2) + * input: mt: Add support for the Bamboo Touch trackpad + * hid: Add a hid quirk for input sync override + + -- Leann Ogasawara Mon, 23 Aug 2010 12:42:52 -0700 + +linux (2.6.35-18.24) maverick; urgency=low + + [ Colin Watson ] + + * Pass DEB_MAINT_PARAMS to hook scripts + + [ Leann Ogasawara ] + + * [Config] Add CONFIG_INPUT_UINPUT=y to config enforcer + - LP: #584812 + * rebase to v2.6.35.3 + + [ Upstream Kernel Changes ] + + * (pre-stable) dell-wmi: Add support for eject key on Dell Studio 1555 + - LP: #609234 + * can: add limit for nframes and clean up signed/unsigned variables + - CVE-2010-2959 + * drm: Initialize ioctl struct when no user data is present + - CVE-2010-2803 + * ARM: initial stack protector (-fstack-protector) support + * ARM: stack protector: change the canary value per task + * [ARM] implement arch_randomize_brk() + * [ARM] add address randomization to mmap() + * ARM: fix ASLR of PIE executables + + -- Leann Ogasawara Sun, 22 Aug 2010 19:22:04 -0700 + +linux (2.6.35-17.23) maverick; urgency=low + + [ Jeremy Kerr ] + + * [Config] build-in uinput module + - LP: #584812 + + [ Leann Ogasawara ] + + * Revert "[Config] [FTBS] ia64: Temporarily disable CONFIG_CEPH_FS" + * Revert "[Config] [FTBS] ia64: Temporarily disable gpiolib" + * Revert "[Config] [FTBS] sparc: Temporarily disable + CONFIG_MTD_NAND_DENALI" + * Revert "[Config] [FTBS] sparc: Temporarily disable + CONFIG_MFD_JANZ_CMODIO" + * Revert "[Config] [FTBS] sparc: Temporarily disable + CONFIG_INFINIBAND_QIB" + * [Config] Enable INTEL_IPS + - LP: #601057 + * Remove ia64 support + * [Config] Update portsconfigs after removing ia64 support + * Remove sparc support + * [Config] Update portsconfigs after removing sparc support + + [ Linus Torvalds ] + + * (pre-stable) mm: fix page table unmap for stack guard page properly + + [ Mathieu J. Poirier ] + + * SAUCE: (no-up) ARM: Resetting power_mode to its original value. + - LP: #591941 + + [ Upstream Kernel Changes ] + + * timer: add on-stack deferrable timer interfaces + - LP: #601057 + * x86 platform driver: intelligent power sharing driver + - LP: #601057 + * IPS driver: add GPU busy and turbo checking + - LP: #601057 + * X86: intel_ips, check for kzalloc properly + - LP: #601057 + * ips driver: make it less chatty + - LP: #601057 + + -- Leann Ogasawara Tue, 17 Aug 2010 09:38:08 -0700 + +linux (2.6.35-16.22) maverick; urgency=low + + [ Andy Whitcroft ] + + * debian -- more agressivly clean up after depmod on purge + - LP: #618591 + + [ Henrik Rydberg ] + + * SAUCE: hid: 3m: Simplify touchsreen emulation logic + + [ Leann Ogasawara ] + + * ubuntu: iscsitarget -- version 1.4.20.2 + * ubuntu: rtl8192se -- update to version 0017.0507.2010 + * rebase to v2.6.35.2 + * [Config] update configs following rebase to v2.6.35.2 + * [Config] update ports configs following rebase to v2.6.35.2 + + [ Luke Yelavich ] + + * [Config] Enable new firewire stack on powerpc + + [ Mathieu J. Poirier ] + + * SAUCE: (drop after 2.6.35) ARM: Using gpmc function to init nand flash. + - LP: #608266 + + -- Leann Ogasawara Thu, 12 Aug 2010 09:58:01 -0700 + +linux (2.6.35-15.21) maverick; urgency=low + + [ Luke Yelavich ] + + * [Config] CONFIG_SND_USB_UA101=m for all architectures + + [ Upstream Kernel Changes ] + + * Input: introduce MT event slots + * Input: document the MT event slot protocol + * (pre-stable) sched: Revert nohz_ratelimit() for now + * (pre-stable) drm/radeon/kms: add missing copy from user + - LP: #606081 + + [ Leann Ogasawara ] + + * rebase to v2.6.35.1 + + -- Leann Ogasawara Mon, 09 Aug 2010 09:24:04 -0700 + +linux (2.6.35-14.20) maverick; urgency=low + + [ Andy Whitcroft ] + + * update Vcs-Git to point to maverick repo + * debian -- include the debian packaging in the -source package + - LP: #608674 + * select debian source format 1.0 + * add support for building selected stages of kernel + - LP: #603087 + * cleanup conditional dependancy handling + - LP: #603087 + + [ Upstream Kernel Changes ] + + * ALSA: hda - Handle missing NID 0x1b on ALC259 codec + - LP: #582199, #586418, #588031 + * ALSA: hda - Handle pin NID 0x1a on ALC259/269 + - LP: #582199, #586418, #588031 + * sched: Revert nohz_ratelimit() for now + + -- Leann Ogasawara Tue, 03 Aug 2010 08:46:47 -0700 + +linux (2.6.35-14.19) maverick; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.35 + + -- Leann Ogasawara Sun, 01 Aug 2010 10:35:56 -0700 + +linux (2.6.35-13.18) maverick; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: (no-up) Modularize vesafb -- fix initialisation + * SAUCE: add tracing for user initiated readahead requests + * SAUCE: vt -- maintain bootloader screen mode and content until vt + switch + * SAUCE: vt -- allow grub to request automatic vt_handoff + * SAUCE: fbcon -- fix race between open and removal of framebuffers + * SAUCE: drm -- stop early access to drm devices + + [ Bryan Wu ] + + * CONFIG: compile in OTG driver and Transceiver driver + - LP: #566645 + * remove OTG modules from modules list file + + [ John Johansen ] + + * SAUCE: AppArmor: -- sync to AppArmor mainline 2010-07-27 + - LP: #581525, #599450 + * SAUCE: AppArmor: -- sync to AppArmor mainline 2010-07-29 + * SAUCE: AppArmor 2.4 compatibility patch + * SAUCE: AppArmor: Allow dfa backward compatibility with broken userspace + * SAUCE: fix pv-ops for legacy Xen + * SAUCE: blkfront: default to sd devices + * [Config] Build in drivers required for Xen pv-ops + + [ Leann Ogasawara ] + + * Revert "[Upstream] i915: Use the correct mask to detect i830 aperture + size." + + [ Lee Jones ] + + * SAUCE: ARM: OMAP: Add macros for comparing silicon revision + - LP: #608095 + * SAUCE: OMAP: DSS2: check for both cpu type and revision, rather than + just revision + - LP: #608095 + * SAUCE: OMAP: DSS2: enable hsclk in dsi_pll_init for OMAP36XX + - LP: #608095 + * SAUCE: ARM: OMAP: Beagle: support twl gpio differences on xM + - LP: #608095 + + [ Upstream Kernel Changes ] + + * agp/intel: Use the correct mask to detect i830 aperture size. + - LP: #597075 + + -- Leann Ogasawara Fri, 30 Jul 2010 15:46:59 -0700 + +linux (2.6.35-12.17) maverick; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc6 + * [Config] update configs following rebase to v2.6.35-rc6 + * [Config] update ports configs following rebase to v2.6.35-rc6 + * SAUCE: [FTBS] armel: define KEY_F10 and KEYF11 + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc6 + + -- Leann Ogasawara Fri, 23 Jul 2010 16:16:38 +0200 + +linux (2.6.35-11.16) maverick; urgency=low + + [ Leann Ogasawara ] + + * Bump ABI for new compiler update + + -- Leann Ogasawara Fri, 23 Jul 2010 10:24:58 +0200 + +linux (2.6.35-10.15) maverick; urgency=low + + [ Leann Ogasawara ] + + * Revert "SAUCE: ensure vga16fb loads if no other driver claims the VGA + device" + * [Config] Enable CONFIG_M686=y + - LP: #592495 + + [ Upstream Kernel Changes ] + + * tracing: Add alignment to syscall metadata declarations + + -- Leann Ogasawara Tue, 20 Jul 2010 18:18:49 +0200 + +linux (2.6.35-9.14) maverick; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- add BOM and automated update script + * ubuntu: AUFS -- update to b37c575759dc4535ccc03241c584ad5fe69e3b25 + + [ John Johansen ] + + * [Config] Enable DRBD as a module + + [ Kees Cook ] + + * SAUCE: Yama: verify inode is symlink to avoid bind mounts + - LP: #604407 + + [ Leann Ogasawara ] + + * [Config] Disable CONFIG_DRM_VMWGFX (staging driver) + - LP: #606139 + * [Config] ports: Disable CONFIG_DRM_VMWGFX (staging driver) + - LP: #606139 + * [Config] Enable CONFIG_DEBUG_STRICT_USER_COPY_CHECKS=y + * [Config] ports: Enable CONFIG_DEBUG_STRICT_USER_COPY_CHECKS=y + + [ Lee Jones ] + + * Stop ARM boards crashing when CUPS is loaded + - LP: #601226 + + [ Upstream Kernel Changes ] + + * perf probe: Support tracing an entry of array + * perf probe: Support static and global variables + + -- Leann Ogasawara Fri, 16 Jul 2010 14:38:17 -0700 + +linux (2.6.35-8.13) maverick; urgency=low + + [ Kees Cook ] + + * SAUCE: Yama: check PTRACE using thread group leader + * SAUCE: Yama: search for PTRACE exceptions via thread group leader + - LP: #603716 + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc5 + * [Config] update configs following rebase to v2.6.35-rc5 + + [ Nicolas Pitre ] + + * SAUCE: make ndiswrapper available on X86 only + + [ Tim Gardner ] + + * [Config] Added ums-cypress to udeb + - LP: #576066 + * SAUCE: fix build error with CONFIG_BLK_DEV_INITRD=n + * [Config] CONFIG_NDISWRAPPER=m across all configs + + [ Upstream Kernel Changes ] + + * HID: magicmouse: report last touch up + * rebase to 2.6.35-rc5 + + -- Leann Ogasawara Tue, 13 Jul 2010 18:57:59 -0700 + +linux (2.6.35-7.12) maverick; urgency=low + + [ Tim Gardner ] + + * [Upstream] i915: Use the correct mask to detect i830 aperture size. + - LP: #597075 + + [ Upstream Kernel Changes ] + + * (drop after 2.6.35) drm/radeon/kms: add ioport register access + (squashed) + + -- Tim Gardner Thu, 08 Jul 2010 09:53:13 -0600 + +linux (2.6.35-7.11) maverick; urgency=low + + [ Tim Gardner ] + + * [Config] CONFIG_X86_MRST=n + + [ Upstream Kernel Changes ] + + * (drop after 2.6.35-rc5) writeback: remove writeback_inodes_wbc + * (drop after 2.6.35-rc5) writeback: split writeback_inodes_wb + * (drop after 2.6.35-rc5) writeback: simplify the write back thread queue + + -- Tim Gardner Tue, 06 Jul 2010 18:39:08 -0600 + +linux (2.6.35-7.10) maverick; urgency=low + + [ Kees Cook ] + + * SAUCE: security: create task_free security callback + * SAUCE: Yama: add PTRACE exception tracking and interface + * SAUCE: security: unconditionally chain to Yama LSM + * Revert "SAUCE: ptrace: restrict ptrace scope to children" + * Revert "SAUCE: fs: block hardlinks to non-accessible sources" + * Revert "SAUCE: fs: block cross-uid sticky symlinks" + * [Upstream] security: Yama LSM + * [Config] Enable CONFIG_SECURITY_YAMA=y + + [ Tim Gardner ] + + * [Config] updateconfigs/updateportsconfigs after rebase to 2.6.35-rc4 + + [ Upstream Kernel Changes ] + + * rebase to 2.6.35-rc4 + + -- Leann Ogasawara Thu, 01 Jul 2010 08:55:57 -0700 + +linux (2.6.35-6.9) maverick; urgency=low + + [ Tim Gardner ] + + * [Upstream] direct_splice_actor() should not use pos in sd + - LP: #588861 + + -- Leann Ogasawara Mon, 28 Jun 2010 12:35:49 -0700 + +linux (2.6.35-6.8) maverick; urgency=low + + [ Mathieu J. Poirier ] + + * ARM: Adding regulator supply for vdds_sdi. + - LP: #597904 + + -- Leann Ogasawara Sun, 27 Jun 2010 16:34:43 -0700 + +linux (2.6.35-6.7) maverick; urgency=low + + [ Alberto Milone ] + + * [Upstream] Add support for the ATIF ACPI method to the radeon driver + + [ Chase Douglas ] + + * [Upstream] HID: magicmouse: scroll on entire surface, not just middle + of mouse + * [Upstream] HID: magicmouse: disable and add module param for scroll + acceleration + * [Upstream] HID: magicmouse: properly account for scroll movement in + state + * [Upstream] HID: magicmouse: add param for scroll speed + * [Upstream] HID: magicmouse: enable horizontal scrolling + + [ Henrik Rydberg ] + + * [Upstream] Input: evdev - convert to dynamic event buffer + * [Upstream] Input: evdev - use driver hint to compute size of event + buffer + * [Upstream] Input: bcm5974 - set the average number of events per MT + event packet + * [Upstream] Input: hid-input - use a larger event buffer for MT devices + * [Upstream] Input: evdev - never leave the client buffer empty after + write + + [ John Johansen ] + + * SAUCE: AppArmor: -- mainline 2010-06-23 + * SAUCE: AppArmor 2.4 compatibility patch + * SAUCE: fs: block hardlinks to non-accessible sources AppArmor portion + + [ Leann Ogasawara ] + + * [Config] Enable CONFIG_INTR_REMAP=y + - LP: #597091 + * [Config] Enable CONFIG_X86_X2APIC + - LP: #597091 + + [ Mathieu J. Poirier ] + + * [Config] ARM: Turning off CONFIG_CPU_IDLE on omap + - LP: #594382 + + -- Leann Ogasawara Thu, 24 Jun 2010 12:19:48 -0700 + +linux (2.6.35-5.6) maverick; urgency=low + + [ Amit Kucheria ] + + * [Config] update omap flavour description + + [ Andy Whitcroft ] + + * update to ubuntu-debian:508b7aa34b578c0d1e51bfb571f2bfb824dc65ac + - LP: #570500, #576274 + * SAUCE: add option to hand off all kernel parameters to init + - LP: #586386 + * [Config] enable passing all kernel command line to init + - LP: #586386 + * [Config] disable CONFIG_VMI + - LP: #537601 + * [Config] enable CONFIG_IPV6_SIT_6RD + - LP: #591869 + * [Config] enable CONFIG_VMWARE_BALOON as module + - LP: #592039 + + [ Leann Ogasawara ] + + * Revert "SAUCE: pm: Config option to disable handling of console during + suspend/resume" + - LP: #594885 + * [Config] Remove CONFIG_PM_DISABLE_CONSOLE + * [Config] ports: enable passing all kernel command line to init + - LP: #586386 + * [Config] Enable CONFIG_FB_VESA=y for x86 + * [Config] Add CONFIG_FRAMEBUFFER_CONSOLE=y to config enforcer + * [Config] Add CONFIG_FB_VESA=y for x86 to config enforcer + * [Config] Enable CONFIG_TASK_DELAY_ACCT=y + - LP: #493156 + + [ Mathieu Poirier ] + + * ARM: Adding MosChip MCS7830 to nic-usb + - LP: #584920 + + [ Upstream Kernel Changes ] + + * Revert "[Upstream] docbook: need xmldoclinks for all doc types" + * docbook: need xmldoclinks for all doc types + * perf probe: Add kernel source path option + + -- Leann Ogasawara Thu, 17 Jun 2010 08:05:29 -0700 + +linux (2.6.35-4.5) maverick; urgency=low + + [ Leann Ogasawara ] + + * Revert "[Upstream] (evdev) Use driver hint to compute the evdev buffer + size (rev2)" + * Revert "[Upstream] (evdev) Convert to dynamic event buffer (rev4)" + * Revert "[Upstream] (evdev) Use multi-reader buffer to save space + (rev4)" + * Revert "SAUCE: drivers: Remove some duplicate device entries in various + modules" + * [Upstream] USB: option: Remove duplicate AMOI_VENDOR_ID + * [Upstream] Revert "USB: Adding support for HTC Smartphones to ipaq" + * [Upstream] p54usb: Comment out duplicate Medion MD40900 device id + + [ Tim Gardner ] + + * [Config] CONFIG_NFS_FSCACHE=y + - LP: #440522 + * [Config] CONFIG_FSCACHE_STATS=y, CONFIG_FSCACHE_HISTOGRAM=y + - LP: #440522 + + -- Leann Ogasawara Wed, 16 Jun 2010 08:43:07 -0700 + +linux (2.6.35-3.4) maverick; urgency=low + + [ Andy Whitcroft ] + + * debian -- ensure the version number is clean + + [ Henrik Rydberg ] + + * [Upstream] Introduce MT event slots (rev 5) + * [Upstream] Document the MT event slot protocol (rev5) + * [Upstream] (evdev) Use multi-reader buffer to save space (rev4) + * [Upstream] (evdev) Convert to dynamic event buffer (rev4) + * [Upstream] (evdev) Use driver hint to compute the evdev buffer size + (rev2) + + [ Leann Ogasawara ] + + * Revert "SAUCE: Add MODULE_ALIAS for Dell WMI module" + * Revert "SAUCE: hostap: send events on data interface as well as master + interface" + * Revert "Fix webcam having USB ID 0ac8:303b" + * Revert "SAUCE: toshiba_acpi -- pull in current -dev version of driver" + * rebase to v2.6.35-rc3 + + [ Maxim Levitsky ] + + * [Config] Enable new Smartmedia/xD translation layer + - LP: #202490 + + [ Upstream Kernel Changes ] + + * net: fix deliver_no_wcard regression on loopback device + + [ Upstream changes ] + + * rebased to v2.6.35-rc3 + + -- Leann Ogasawara Thu, 10 Jun 2010 16:15:22 -0700 + +linux (2.6.35-2.3) maverick; urgency=low + + [ Bryan Wu ] + + * CONFIG: enforce -- make sure we disable CONFIG_LOCALVERSION_AUTO + + [ Leann Ogasawara ] + + * [Config] armel: Enable CONFIG_BNX2=m + * [Config] ports: Enable CONFIG_BNX2X=m + * SAUCE: armel: define get_dma_ops to fix FTBS + + [ Tim Gardner ] + + * [Upstream] net: Print num_rx_queues imbalance warning only when there + are allocated queues + - LP: #591416 + + -- Leann Ogasawara Wed, 09 Jun 2010 08:27:41 -0700 + +linux (2.6.35-2.2) maverick; urgency=low + + [ Andy Whitcroft ] + + * [Config] d-i: make armel configuration versatile flavour specific + - LP: #588805 + * [Config] d-i: enable .udebs for omap flavour + - LP: #588805 + + [ Kees Cook ] + + * ptrace: limit scope to attach only (allow read) + - LP: #589656 + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc2 + * [Config] update configs following rebase to v2.6.35-rc2 + * [Config] update port configs following rebase to v2.6.35-rc2 + + [ Lee Jones ] + + * Enable perf to be more helpful when perf_ does not exist. + - LP: #570500 + * 'fdr editconfig' modification. Easily skip over unwanted menuconfigs. + + [ Tim Gardner ] + + * [Config] Update bnx2 udeb firmware files + - LP: #589304 + + [ Upstream changes ] + + * rebased to v2.6.35-rc2 + + -- Leann Ogasawara Mon, 07 Jun 2010 09:45:04 -0700 + +linux (2.6.35-1.1) maverick; urgency=low + + [ Andy Whitcroft ] + + * ubuntu: AUFS -- update to standalone 2.6.35-rcN as at 20100601 + - LP: #587888 + * ubuntu: AUFS -- track changes to the arguements to fop fsync() + + [ Leann Ogasawara ] + + * rebase to v2.6.35-rc1 + * [Config] update configs following rebase to v2.6.35-rc1 + * [Config] update port configs following rebase to v2.6.35-rc1 + * SAUCE: lirc: rename usb_buffer_alloc() and usb_buffer_free() + * SAUCE: ndiswrapper: rename usb_buffer_alloc() and usb_buffer_free() + * SAUCE: ndiswrapper: convert multicast list to list_head + * [Config] [FTBS] armel: Temporarily disable CONFIG_GPIO_JANZ_TTL + * [Config] [FTBS] ia64: Temporarily disable gpiolib + * [Config] [FTBS] ia64: Temporarily disable CONFIG_CEPH_FS + * [Config] [FTBS] sparc: Temporarily disable CONFIG_INFINIBAND_QIB + * [Config] [FTBS] sparc: Temporarily disable CONFIG_MFD_JANZ_CMODIO + * [Config] [FTBS] armel: Temporarily disable CONFIG_MFD_JANZ_CMODIO + * [Config] [FTBS] armel: Temporarily disable CONFIG_DT3155 + * [Config] [FTBS] sparc: Temporarily disable CONFIG_MTD_NAND_DENALI + * [Config] [FTBS] armel: Temporarily disable bnx2 + * [Config] [FTBS] armel: Temporarily disable CONFIG_SERIAL_UARTLITE + * SAUCE: [FTBS] armel: Don't include asm/agp.h for ttm + * SAUCE: [FTBS] armel: include linux/dma-mapping.h + * SAUCE: [FTBS] armel: replace omap_set_gpio_debounce with + gpio_set_debounce + + [ Upstream Kernel Changes ] + + * of/usb: fix build error due to of_node pointer move + * n2_crypto: Fix build after of_device/of_platform_driver changes. + * powerpc/fsl-booke: fix the case where we are not in the first page + * powerpc/fsl-booke: Move the entry setup code into a seperate file + * powerpc/kexec: Add support for FSL-BookE + * greth: Fix build after OF device conversions. + + [ Upstream changes ] + + * rebased to v2.6.35-rc1 + + -- Leann Ogasawara Fri, 04 Jun 2010 23:01:52 -0700 + +linux (2.6.35-1.0) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * Null entry. + + -- Leann Ogasawara Wed, 02 Jun 2010 15:17:41 -0700 + +linux (2.6.34-5.14) maverick; urgency=low + + [ Tim Gardner ] + + * [Config] Added module inclusion support + * [Config] Added virtual flavour module inclusion list and d-i package + definitions + + -- Leann Ogasawara Wed, 02 Jun 2010 12:58:14 -0700 + +linux (2.6.34-5.13) maverick; urgency=low + + [ Andy Whitcroft ] + + * Revert "ubuntu: AUFS -- aufs2 20091209" + * Revert "ubuntu: AUFS -- export various core functions + (aufs2-standalone.patch)" + * Revert "ubuntu: AUFS -- export various core functions + (aufs2-base.patch)" + * ubuntu: AUFS -- aufs2 base patch for linux-2.6.34 + - LP: #587888 + * ubuntu: AUFS -- aufs2 standalone patch for linux-2.6.34 + - LP: #587888 + * ubuntu: AUFS -- update to standalone 2.6.34 as at 20100601 + - LP: #587888 + * [Config] AUFS -- enable aufs options + - LP: #587888 + + -- Leann Ogasawara Tue, 01 Jun 2010 08:56:43 -0700 + +linux (2.6.34-5.12) maverick; urgency=low + + [ Andy Whitcroft ] + + * enforce -- ensure SYSFS compatibility is disabled + + [ Chase Douglas ] + + * build with libdw-dev for perf probe symbol support + * maverick ftrace configuration changes + + [ Kees Cook ] + + * Revert "SAUCE: x86: brk away from exec rand area" + * Revert "SAUCE: [um] Don't use nx_enabled under UML" + * Revert "SAUCE: [x86] implement cs-limit nx-emulation for ia32" + * SAUCE: x86: implement cs-limit nx-emulation for ia32 + - LP: #369978 + * SAUCE: x86: more tightly confine cs-limit nx-emulation to ia32 only + * SAUCE: x86: brk away from exec rand area + - LP: #452175 + * SAUCE: ptrace: restrict ptrace scope to children + + [ Leann Ogasawara ] + + * Add new omap flavour to getabis + * [Config] Enable CONFIG_FRAMEBUFFER_CONSOLE=y for all archs + - LP: #585490 + * build/modules: Temorarily add ignore.modules + * ubuntu: iscsitarget -- version 1.4.20.1 + + [ Loïc Minier ] + + * SAUCE: [um] Don't use nx_enabled under UML + - LP: #524849 + + -- Leann Ogasawara Fri, 28 May 2010 08:27:17 -0700 + +linux (2.6.34-4.11) maverick; urgency=low + + [ Amit Kucheria ] + + * SAUCE: omap: remove calls to usb_nop_xceiv_register from board files + * [Config] Add support for OMAP-mainline flavour + + [ Andy Whitcroft ] + + * SAUCE: powerpc: fix compile error when ptrace.h is included from + userspace + - LP: #583733 + + [ Chase Douglas ] + + * Revert "SAUCE: Don't register vga16fb framebuffer if other framebuffers + are present" + * Revert "SAUCE: Disable function tracing after hitting __schedule_bug" + * Revert "SAUCE: drm/i915: don't change DRM configuration when releasing + load detect pipe" + + [ Kees Cook ] + + * SAUCE: fs: block cross-uid sticky symlinks + * SAUCE: fs: block hardlinks to non-accessible sources + + [ Koen Kooi ] + + * SAUCE: board-omap3-beagle: add DSS2 support + + [ Leann Ogasawara ] + + * Revert "staging/go7007 -- disable" + * Revert "[Config] staging/winbond -- disable" + * Revert "Disable 4MB page tables for Atom, work around errata AAE44" + * Revert "SAUCE: sync before umount to reduce time taken by ext4 umount" + * Revert "SAUCE: Enable an e1000e Intel Corporation 82567 Gigabit + controller" + * Revert "SAUCE: Fix MODULE_IMPORT/MODULE_EXPORT" + * Revert "SAUCE: Created MODULE_EXPORT/MODULE_IMPORT macros" + * Revert "SAUCE: input/mouse/alps: Do not call psmouse_reset() for alps" + * Revert "SAUCE: r8169: disable TSO by default for RTL8111/8168B + chipsets." + * Revert "[Upstream] b43: Declare all possible firmware files." + * Revert "add Breaks: against hardy lvm2" + * Revert "SAUCE: Guest OS does not recognize a lun with non zero target + id on Vmware ESX Server" + * Revert "SAUCE: Catch nonsense keycodes and silently ignore" + * [Config] Enable CONFIG_ECRYPT_FS=y for ports + * [Config] Enable CONFIG_USB=y for armel and sparc + * [Config] Enable CONFIG_SCSI=y for ia64 and sparc + * [Config] Enable CONFIG_RFKILL=y for ports + * [Config] Enable CONFIG_ATH9K_DEBUGFS=y + * [Config] Enable CONFIG_IWMC3200TOP_DEBUGFS=y + * [Config] Enable CONFIG_RCU_FAST_NO_HZ=y + * [Config] Enable CONFIG_IWLWIFI_DEVICE_TRACING=y + * [Config] Enable CONFIG_LIBERTAS_MESH=y + * [Config] Enable CONFIG_MMC_RICOH_MMC=y + * [Config] CONFIG_RT2800USB_UNKNOWN=y + * [Config] Enable CONFIG_VGA_SWITCHEROO=y + * [Config] Enable CONFIG_CEPH_FS=m + * [Config] Enable CONFIG_CRYPTO_PCRYPT=m + * [Config] Enable CONFIG_EEEPC_WMI=m + * [Config] Enable CONFIG_RT2800PCI=m + * [Config] Enable CONFIG_SCSI_HPSA=m + * [Config] Enable CONFIG_VHOST_NET=m + * [Config] Disable CONFIG_SND_HDA_INPUT_BEEP_MODE by default + - LP: #582350 + * [Config] Disable CONFIG_SOUND_OSS* and CONFIG_SND_*OSS + - LP: #579300 + * [Config] Enable CONFIG_PCIEASPM=y + - LP: #333990 + * [Config] updateconfigs for OMAP flavour + + [ Loïc Minier ] + + * Enable perf tools on armel + + [ Tim Gardner ] + + * SAUCE: Updated ndiswrapper to 1.56 + - LP: #582555 + * [Config] Added virtual flavour + * [Config] Remove support for sub-flavours + * [Config] Removed amd64 preempt flavour + * [Config] updateconfigs, updateportsconfigs after flavour munging + + -- Leann Ogasawara Tue, 25 May 2010 09:34:55 -0700 + +linux (2.6.34-3.10) maverick; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34 + + [ Upstream changes ] + + * rebased to v2.6.34 + + -- Leann Ogasawara Tue, 18 May 2010 17:35:35 -0700 + +linux (2.6.34-2.9) maverick; urgency=low + + [ Leann Ogasawara ] + + * [Config] [FTBS] Disable comedi for armel + + -- Leann Ogasawara Thu, 13 May 2010 23:20:55 +0200 + +linux (2.6.34-2.8) maverick; urgency=low + + [ Leann Ogasawara ] + + * Drop lpia + * [Config] [FTBS] disable KVM + * [Config] [FTBS] disable ipr for armel + + -- Leann Ogasawara Thu, 13 May 2010 16:07:52 +0200 + +linux (2.6.34-2.7) maverick; urgency=low + + [ Leann Ogasawara ] + + * [Config] disable CONFIG_SCSI_IPR on powerpc + * [Config] Remove 386 flavour per UDS discussion + + -- Leann Ogasawara Wed, 12 May 2010 18:26:43 +0200 + +linux (2.6.34-1.6) maverick; urgency=low + + [ Chase Douglas ] + + * enforce CONFIG_TMPFS_POSIX_ACL=y + - LP: #575940 + * don't force module dependency checking + - LP: #577029 + + [ Kees Cook ] + + * SAUCE: mmap_min_addr check CAP_SYS_RAWIO only for write + - LP: #568844 + + [ Leann Ogasawara ] + + * Revert "SAUCE: ata: blacklist FUJITSU MHW2160BH PL" + * rebase to v2.6.34-rc7 + * [Config] update configs following rebase to v2.6.34-rc7 + * [Config] update port configs following rebase to v2.6.34-rc7 + * Add btrfs to the udebs + + [ Tim Gardner ] + + * [Config] Add atl1c to nic-modules udeb + - LP: #557130 + + [ Upstream changes ] + + * rebased to v2.6.34-rc7 + + -- Leann Ogasawara Tue, 11 May 2010 11:29:08 +0200 + +linux (2.6.34-1.5) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc6 + * [Config] update configs following rebase to v2.6.34-rc6 + * [Config] update port configs following rebase to v2.6.34-rc6 + + [ Upstream changes ] + + * rebased to v2.6.34-rc6 + + -- Leann Ogasawara Fri, 30 Apr 2010 15:54:05 +0100 + +linux (2.6.34-1.4) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc5 + * [Config] update ports configs following rebase to v2.6.34-rc5 + + [ Upstream changes ] + + * rebased to v2.6.34-rc5 + + -- Leann Ogasawara Thu, 22 Apr 2010 15:36:12 -0700 + +linux (2.6.34-1.3) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc4 + * [Config] update configs following rebase to v2.6.34-rc4 + * [Config] update port configs following rebase to v2.6.34-rc4 + * ubuntu: dm-raid4-5 -- update to compile with 2.6.34-rc4 + + [ Upstream changes ] + + * rebased to v2.6.34-rc4 + + -- Leann Ogasawara Tue, 13 Apr 2010 18:33:44 -0700 + +linux (2.6.34-1.2) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * Temorarily disable building linux-doc + * rebase to v2.6.34-rc3 + * [Config] update configs following rebase to v2.6.34-rc3 + * [Config] update port configs following rebase to v2.6.34-rc3 + + [ Upstream changes ] + + * rebased to v2.6.34-rc3 + + -- Leann Ogasawara Tue, 30 Mar 2010 16:55:44 -0700 + +linux (2.6.34-1.1) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * rebase to v2.6.34-rc2 + * ubuntu: dm-raid4-5 -- update to compile with 2.6.34-rc2 + * [Config] update port configs following rebase to v2.6.34-rc2 + * [Config] update configs following rebase to v2.6.34-rc2 + + [ Upstream changes ] + + * rebased to v2.6.34-rc2 + + -- Leann Ogasawara Wed, 24 Mar 2010 23:00:39 -0700 + +linux (2.6.33-1.1) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * ubuntu: dm-raid4-5 -- update to compile with 2.6.33 + * ubuntu: lirc -- drop explicit include of linux/autoconf.h + * ubuntu: lirc -- pass kfifo to kfifo_alloc and move spinlock + * ubuntu: lirc -- rename kfifo_put and kfifo_get + * ubuntu: iscsitarget -- rename daddr inet_sock field + * rebased to v2.6.33 + * [Config] update configs following rebase to v2.6.33 + * [Config] update ports configs following rebase to v2.6.33 + + [ Upstream changes ] + + * rebased to v2.6.33 + + -- Leann Ogasawara Tue, 23 Mar 2010 03:55:46 -0700 + +linux (2.6.33-0.0) UNRELEASED; urgency=low + + [ Leann Ogasawara ] + + * Null entry. + + -- Leann Ogasawara Wed, 17 Mar 2010 07:48:56 -0700 + +linux (2.6.32-16.25) lucid; urgency=low + + [ Andy Whitcroft ] + + * linux-tools -- move to Suggests: with explicit seeding + - LP: #534635 + + [ Tim Gardner ] + + * [Config] CONFIG_HID=m + + [ Upstream Kernel Changes ] + + * (pre-stable) sched: Fix SMT scheduler regression in + find_busiest_queue() + * KVM: introduce kvm_vcpu_on_spin + * KVM: VMX: Add support for Pause-Loop Exiting + + -- Andy Whitcroft Tue, 09 Mar 2010 14:13:51 +0000 + +linux (2.6.32-16.24) lucid; urgency=low + + [ Andy Whitcroft ] + + * armel -- perf userspace does not support arm + * ia64 -- libelf-dev/binutils-dev to not provide necessary libraries + + -- Andy Whitcroft Sat, 06 Mar 2010 11:42:12 +0000 + +linux (2.6.32-16.23) lucid; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: PM report driver and device suspend/resume times -- move config + * update to standards version 3.8.4.0 + * printenv -- expose all of the package selectors + * source package -- cleanup source content control + * doc package -- ensure we do build package content on buildd + * lintian -- correct the address in the debian/copyright + * lintian -- update debhelper package version dependancy + * lintian -- fix ghostscript dependancy + * lintian -- add required misc:Depends + * lintian -- move our debhelper compat level to debian/compat + * perf -- build the kernel carried tools + * perf -- add linux-tools carrying the version switches and manuals + * SAUCE: fix up Kconfig for staging drivers + * [Config] enable NOUVEAU etc following drm backport + * update DRM to mainline v2.6.33 + * [Config] Remove AppArmor config options that no longer exist (ports) + * [Config] updateportsconfigs following drm update + + [ John Johansen ] + + * ubuntu: AppArmor -- update to mainline 2010-03-04 + * SAUCE: AppArmor: Reintroduce AppArmor 2.4 compatibility + * SAUCE: AppArmor: replace strim with strstrip for 2.6.32 kernels + * [Config] Remove AppArmor config options that no longer exist + + [ Manoj Iyer ] + + * ubuntu: rtl8192se -- version 2010-0115,0014 + - LP: #530275 + * [Config] added CONFIG_RTL8192SE module. + - LP: #530275 + + [ Tim Gardner ] + + * [Config] Added vmw_pvscsi to d-i/scsi-modules + - LP: #531017 + * [Upstream] netfilter: xt_recent: Add an entry reaper + + [ Upstream Kernel Changes ] + + * Revert "KVM: x86 emulator: Check CPL level during privilege instruction + emulation" + * Revert "KVM: x86 emulator: Fix popf emulation" + * Revert "KVM: x86 emulator: Check IOPL level during io instruction + emulation" + * Revert "KVM: x86 emulator: Add Virtual-8086 mode of emulation" + * Revert "KVM: fix memory access during x86 emulation." + * Add vlan (8021.Q) module package for d-i. + * (pre-stable) drm/i915: blacklist lid status: Sony VGN-BX196VP, Dell + Inspiron 700m + - LP: #515246 + * [Upstream] docbook: need xmldoclinks for all doc types + * x86: set_personality_ia32() misses force_personality32 + * lib: Introduce generic list_sort function + * drm/nv50: Implement ctxprog/state generation. + * drm/nv50: Remove redundant/incorrect ctxvals initialisation. + * (pre-stable) drm/i915: blacklist lid status: Sony VGN-BX196VP, Dell + Inspiron 700m + - LP: #515246 + + -- Andy Whitcroft Fri, 05 Mar 2010 15:40:38 +0000 + +linux (2.6.32-15.22) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] added new config option CONFIG_SR_REPORT_TIME_LIMIT" + * Revert "SAUCE: PM report driver and device suspend/resume times." + * [Config] set CONFIG_SR_REPORT_TIME_LIMIT + + [ Manoj Iyer ] + + * SAUCE: PM report driver and device suspend/resume times. + + -- Andy Whitcroft Tue, 02 Mar 2010 01:35:37 +0000 + +linux (2.6.32-15.21) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "(pre-stable) drm/i915: Increase fb alignment to 64k" + * Revert "[Config] lenovo-sl-laptop -- enable" + * Revert "ubuntu: lenovo-sl-laptop -- git tip (b19a08f81f)" + * armel -- cramfs module will no longer be built + * d-i -- make all modules optional + * rename the debug packages to match archive standard + - LP: #527837 + * lenovo-sl-laptop is no longer built + + [ Colin Ian King ] + + * Disable 4MB page tables for Atom, work around errata AAE44 + - LP: #523112 + + [ Colin Watson ] + + * ubuntu: dm-raid4-5: Depend on XOR_BLOCKS + * ubuntu: fsam7400: Depend on CHECK_SIGNATURE + + [ Jesse Barnes ] + + * SAUCE: drm/i915: don't change DRM configuration when releasing load + detect pipe + - LP: #488328 + + [ Loïc Minier ] + + * [Config] armel Update versatile initrd configs + - LP: #524893 + * SAUCE: [um] Don't use nx_enabled under UML + - LP: #524849 + + [ Manoj Iyer ] + + * [Config] added new config option CONFIG_SR_REPORT_TIME_LIMIT + + [ Mario Limonciello ] + + * SAUCE: v3 - Add Dell Business Class Netbook LED driver + + [ Rafael J. Wysocki ] + + * SAUCE: PM report driver and device suspend/resume times. + + [ Surbhi Palande ] + + * Revert "[Upstream] e1000e: enhance frame fragment detection" + - CVE-2009-4538 + * Revert "[Upstream] e1000: enhance frame fragment detection" + - CVE-2009-4536 + + [ Tim Gardner ] + + * [Config] Enabled CONFIG_LEDS_DELL_NETBOOKS=m + * SAUCE: (pre-stable) netfilter: xt_recent: fix buffer overflow + * SAUCE: (pre-stable) netfilter: xt_recent: fix false match + + [ Upstream Kernel Changes ] + + * Revert "(pre-stable) eCryptfs: Add getattr function" + * Fix potential crash with sys_move_pages + * futex_lock_pi() key refcnt fix + * futex: Handle user space corruption gracefully + * futex: Handle futex value corruption gracefully + * Fix race in tty_fasync() properly + * hwmon: (w83781d) Request I/O ports individually for probing + * hwmon: (lm78) Request I/O ports individually for probing + * hwmon: (adt7462) Wrong ADT7462_VOLT_COUNT + * ALSA: ctxfi - fix PTP address initialization + * drm/i915: disable hotplug detect before Ironlake CRT detect + * drm/i915: enable self-refresh on 965 + * drm/i915: Disable SR when more than one pipe is enabled + * drm/i915: Fix DDC on some systems by clearing BIOS GMBUS setup. + * drm/i915: Add HP nx9020/SamsungSX20S to ACPI LID quirk list + * drm/i915: Fix the incorrect DMI string for Samsung SX20S laptop + * drm/i915: Add MALATA PC-81005 to ACPI LID quirk list + * usb: r8a66597-hcd: Flush the D-cache for the pipe-in transfer buffers. + * i2c-tiny-usb: Fix on big-endian systems + * drm/i915: handle FBC and self-refresh better + * drm/i915: Increase fb alignment to 64k + * drm/i915: Update write_domains on active list after flush. + * regulator: Fix display of null constraints for regulators + * ALSA: hda-intel: Avoid divide by zero crash + * CPUFREQ: Fix use after free of struct powernow_k8_data + * freeze_bdev: don't deactivate successfully frozen MS_RDONLY sb + * cciss: Make cciss_seq_show handle holes in the h->drv[] array + * ioat: fix infinite timeout checking in ioat2_quiesce + * resource: add helpers for fetching rlimits + * fs/exec.c: restrict initial stack space expansion to rlimit + * cifs: fix length calculation for converted unicode readdir names + * NFS: Fix a reference leak in nfs_wb_cancel_page() + * NFS: Try to commit unstable writes in nfs_release_page() + * NFSv4: Don't allow posix locking against servers that don't support it + * NFSv4: Ensure that the NFSv4 locking can recover from stateid errors + * NFS: Fix an Oops when truncating a file + * NFS: Fix a umount race + * NFS: Fix a bug in nfs_fscache_release_page() + * NFS: Fix the mapping of the NFSERR_SERVERFAULT error + * md: fix 'degraded' calculation when starting a reshape. + * V4L/DVB: dvb-core: fix initialization of feeds list in demux filter + * Export the symbol of getboottime and mmonotonic_to_bootbased + * kvmclock: count total_sleep_time when updating guest clock + * KVM: PIT: control word is write-only + * tpm_infineon: fix suspend/resume handler for pnp_driver + * amd64_edac: Do not falsely trigger kerneloops + * netfilter: nf_conntrack: fix memory corruption with multiple namespaces + * netfilter: nf_conntrack: per netns nf_conntrack_cachep + * netfilter: nf_conntrack: restrict runtime expect hashsize modifications + * netfilter: xtables: compat out of scope fix + * netfilter: nf_conntrack: fix hash resizing with namespaces + * drm/i915: remove full registers dump debug + * drm/i915: add i915_lp_ring_sync helper + * drm/i915: Don't wait interruptible for possible plane buffer flush + * dasd: remove strings from s390dbf + * crypto: padlock-sha - Add import/export support + * wmi: Free the allocated acpi objects through wmi_get_event_data + * dell-wmi, hp-wmi, msi-wmi: check wmi_get_event_data() return value + * /dev/mem: introduce size_inside_page() + * devmem: check vmalloc address on kmem read/write + * devmem: fix kmem write bug on memory holes + * SCSI: mptfusion : mptscsih_abort return value should be SUCCESS instead + of value 0. + * sh: Couple kernel and user write page perm bits for CONFIG_X2TLB + * ALSA: hda - use WARN_ON_ONCE() for zero-division detection + * dst: call cond_resched() in dst_gc_task() + * ALSA: hda - Improved MacBook (Pro) 5,1 / 5,2 support + * befs: fix leak + * rtc-fm3130: add missing braces + * Call flush_dcache_page after PIO data transfers in libata-sff.c + * ahci: add Acer G725 to broken suspend list + * pktgen: Fix freezing problem + * x86/amd-iommu: Fix IOMMU-API initialization for iommu=pt + * x86/amd-iommu: Fix deassignment of a device from the pt_domain + * x86: Re-get cfg_new in case reuse/move irq_desc + * Staging: fix rtl8187se compilation errors with mac80211 + * ALSA: usb-audio - Avoid Oops after disconnect + * serial: 8250: add serial transmitter fully empty test + * sysfs: sysfs_sd_setattr set iattrs unconditionally + * class: Free the class private data in class_release + * USB: usbfs: only copy the actual data received + * USB: usbfs: properly clean up the as structure on error paths + * rtl8187: Add new device ID + * ACPI: Add NULL pointer check in acpi_bus_start + * ACPI: fix High cpu temperature with 2.6.32 + * drm/radeon/kms: use udelay for short delays + * NFS: Too many GETATTR and ACCESS calls after direct I/O + * eCryptfs: Add getattr function + * b43: Fix throughput regression + * ath9k: Fix sequence numbers for PAE frames + * mac80211: Fix probe request filtering in IBSS mode + * iwlwifi: Fix to set correct ht configuration + * dm stripe: avoid divide by zero with invalid stripe count + * dm log: userspace fix overhead_size calcuations + * Linux 2.6.32.9 + * sfc: Fix SFE4002 initialisation + * sfc: Fix sign of efx_mcdi_poll_reboot() error in efx_mcdi_poll() + * sfc: SFE4002/SFN4112F: Widen temperature and voltage tolerances + * (pre-stable) HID: handle joysticks with large number of buttons + - LP: #492056 + * (pre-stable) HID: extend mask for BUTTON usage page + - LP: #492056 + * PM: Measure device suspend and resume times + * e1000: enhance frame fragment detection + - CVE-2009-4536 + * e1000e: enhance frame fragment detection + - CVE-2009-4538 + * KVM: fix memory access during x86 emulation. + - CVE-2010-0306 + * KVM: x86 emulator: Add Virtual-8086 mode of emulation + - CVE-2010-0306 + * KVM: x86 emulator: Check IOPL level during io instruction emulation + - CVE-2010-0306 + * KVM: x86 emulator: Fix popf emulation + - CVE-2010-0306 + * KVM: x86 emulator: Check CPL level during privilege instruction + emulation + - CVE-2010-0306 + * Input: wacom - ensure the device is initialized properly upon resume + * Input: wacom - add defines for packet lengths of various devices + * Input: wacom - add support for new LCD tablets + - LP: #516777 + + -- Andy Whitcroft Mon, 01 Mar 2010 22:56:28 +0000 + +linux (2.6.32-14.20) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebuild following the GCC update to match compiler for out of tree modules + * Revert "[Config] drbd -- enable" + * Revert "ubuntu: drbd -- version 8.3.1" + * SAUCE: khubd -- switch USB product/manufacturer/serial handling to RCU + - LP: #510937 + + -- Andy Whitcroft Fri, 19 Feb 2010 18:47:18 +0000 + +linux (2.6.32-14.19) lucid; urgency=low + + [ Andy Whitcroft ] + + * ensure we build the source package contents when enabled + - LP: #522308 + * [Config] enable CONFIG_X86_MCE_XEON75XX + * SAUCE: AppArmor -- add linux/kref.h for struct kref + * [Config] enable CONFIG_HID_ORTEK + * enable udeb generation for arm versatile flavour + - LP: #522515 + + [ John Johansen ] + + * ubuntu: AppArmor -- update to mainline 2010-02-18 + - LP: #439560, #496110, #507069 + + [ Johnathon Harris ] + + * SAUCE: HID: add support for Ortek WKB-2000 + - LP: #405390 + + [ Upstream Kernel Changes ] + + * tpm_tis: TPM_STS_DATA_EXPECT workaround + - LP: #490487 + * x86, mce: Xeon75xx specific interface to get corrected memory error + information + * x86, mce: Rename cpu_specific_poll to mce_cpu_specific_poll + * x86, mce: Make xeon75xx memory driver dependent on PCI + * drm/edid: Unify detailed block parsing between base and extension + blocks + - LP: #500999 + * (pre-stable) eCryptfs: Add getattr function + - LP: #390833 + + -- Andy Whitcroft Thu, 18 Feb 2010 19:22:02 +0000 + +linux (2.6.32-13.18) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "enforcer -- make the enforcement configuration common" + * Revert "(pre-stable) Input: ALPS - add interleaved protocol support + (Dell E6x00 series)" + * Revert "(pre-stable) driver-core: fix devtmpfs crash on s390" + * Revert "(pre-stable) Driver-Core: devtmpfs - set root directory mode to + 0755" + * Revert "SAUCE: Adds support for COMPAL JHL90 webcam" + * Revert "SAUCE: fix kernel oops in VirtualBox during paravirt patching" + * Revert "SAUCE: make fc transport removal of target configurable" + * enforcer -- make the enforcement configuration common + * getabis -- add preempt flavour to the list + * [Config] enforce DEVTMPFS options + * [Config] armel -- cleanup to-be builtin modules + * [Config] cleanup ports configs + * [Config] enable CRYPTO_GHASH_CLMUL_NI_INTEL + - LP: #485536 + * add printdebian target to find branch target + * distclean -- do not remove debian.env + * [Config] generic-pae switch to M586TSC + - LP: #519448 + * git-ubuntu-log -- commonise duplicated log handling + * git-ubuntu-log -- tighten up Bug: NNNN matching + * git-ubuntu-log -- sort the bug numbers + + [ Chris Wilson ] + + * (pre-stable) drm/i915: Increase fb alignment to 64k + - LP: #404064 + + [ Eric Miao ] + + * arm -- enable ubuntu/ directory + + [ Huang Ying ] + + * SAUCE: crypto: ghash - Add PCLMULQDQ accelerated implementation + * SAUCE: crypto: ghash-intel - Fix building failure on x86_32 + + [ Loïc Minier ] + + * [Config] cleanup preempt configuration + * [Config] versatile: Fix video output + - LP: #517594 + * [Config] armel DEFAULT_MMAP_MIN_ADDR=32768 + * [Config] Large update to armel/versatile + * [Config] versatile: Add RTC support + * [Config] armel: Enable NEON + * [Config] versatile: Builtin MMC support + * [Config] versatile Builtin SCSI controller + * [Config] armel Disable dma_cache_sync callers + * [Config] armel Disable asm/time.h users + * [Config] armel Disable out of range udelay() + * [Config] armel Disable flush_cache_range() users + * [Config] armel -- Enable ubuntu/ drivers + + [ Steve Conklin ] + + * SAUCE: drm/i915: Add display hotplug event on Ironlake + * SAUCE: drm/i915: Add ACPI OpRegion support for Ironlake + + [ Upstream Kernel Changes ] + + * Revert "[Upstream]: oprofile/x86: add Xeon 7500 series support" + * Revert "Revert "[Bluetooth] Eliminate checks for impossible conditions + in IRQ handler"" + * clockevent: Don't remove broadcast device when cpu is dead + * clockevents: Add missing include to pacify sparse + * ACPI: don't cond_resched if irq is disabled + * be2net: Add support for next generation of BladeEngine device. + * be2net: Add the new PCI IDs to PCI_DEVICE_TABLE. + * mpt2sas: New device SAS2208 support is added + * ar9170: Add support for D-Link DWA 160 A2 + * powerpc/fsl: Add PCI device ids for new QoirQ chips + * davinci: dm646x: Add support for 3.x silicon revision + * Input: ALPS - add interleaved protocol support (Dell E6x00 series) + * Driver-Core: devtmpfs - set root directory mode to 0755 + * driver-core: fix devtmpfs crash on s390 + * vfs: get_sb_single() - do not pass options twice + * ALSA: hda - Add PCI IDs for Nvidia G2xx-series + * V4L/DVB (13569): smsusb: add autodetection support for five additional + Hauppauge USB IDs + * USB: mos7840: add device IDs for B&B electronics devices + * USB: ftdi_sio: add USB device ID's for B&B Electronics line + * V4L/DVB (13168): Add support for Asus Europa Hybrid DVB-T card (SAA7134 + SubVendor ID: 0x1043 Device ID: 0x4847) + * iTCO_wdt: Add support for Intel Ibex Peak + * atl1c:use common_task instead of reset_task and link_chg_task + * atl1e:disable NETIF_F_TSO6 for hardware limit + * V4L/DVB (13680a): DocBook/media: copy images after building HTML + * V4L/DVB (13680b): DocBook/media: create links for included sources + * netfilter: xtables: fix conntrack match v1 ipt-save output + * partitions: read whole sector with EFI GPT header + * partitions: use sector size for EFI GPT + * ALSA: ice1724 - Patch for suspend/resume for ESI Juli@ + * sched: Fix isolcpus boot option + * sched: Fix missing sched tunable recalculation on cpu add/remove + * nohz: Prevent clocksource wrapping during idle + * nfsd: Fix sort_pacl in fs/nfsd/nf4acl.c to actually sort groups + * timers, init: Limit the number of per cpu calibration bootup messages + * PCI: Always set prefetchable base/limit upper32 registers + * iscsi class: modify handling of replacement timeout + * NFS: Revert default r/wsize behavior + * HID: fixup quirk for NCR devices + * scsi_devinfo: update Hitachi entries (v2) + * scsi_dh: create sysfs file, dh_state for all SCSI disk devices + * scsi_transport_fc: remove invalid BUG_ON + * lpfc: fix hang on SGI ia64 platform + * libfc: fix typo in retry check on received PRLI + * libfc: fix ddp in fc_fcp for 0 xid + * fcoe: remove redundant checking of netdev->netdev_ops + * libfc: Fix wrong scsi return status under FC_DATA_UNDRUN + * libfc: lport: fix minor documentation errors + * libfc: don't WARN_ON in lport_timeout for RESET state + * fcoe: initialize return value in fcoe_destroy + * libfc: Fix frags in frame exceeding SKB_MAX_FRAGS in fc_fcp_send_data + * libfc: fix memory corruption caused by double frees and bad error + handling + * libfc: fix free of fc_rport_priv with timer pending + * libfc: remote port gets stuck in restart state without really + restarting + * fcoe, libfc: fix an libfc issue with queue ramp down in libfc + * fcoe: Fix checking san mac address + * fcoe: Fix getting san mac for VLAN interface + * qlge: Remove explicit setting of PCI Dev CTL reg. + * qlge: Set PCIE max read request size. + * qlge: Don't fail open when port is not initialized. + * qlge: Add handler for DCBX firmware event. + * qlge: Bonding fix for mode 6. + * PCI: AER: fix aer inject result in kernel oops + * DMI: allow omitting ident strings in DMI tables + * Input: i8042 - remove identification strings from DMI tables + * Input: i8042 - add Gigabyte M1022M to the noloop list + * Input: i8042 - add Dritek quirk for Acer Aspire 5610. + * ALSA: hda - select IbexPeak handler for Calpella + * ALSA: hda - Fix quirk for Maxdata obook4-1 + * ALSA: hda - Add missing Line-Out and PCM switches as slave + * iTCO_wdt.c - cleanup chipset documentation + * iTCO_wdt: add PCI ID for the Intel EP80579 (Tolapai) SoC + * iTCO_wdt: Add Intel Cougar Point and PCH DeviceIDs + * ahci: disable SNotification capability for ich8 + * ata_piix: fix MWDMA handling on PIIX3 + * md: fix small irregularity with start_ro module parameter + * V4L/DVB (13826): uvcvideo: Fix controls blacklisting + * cio: fix double free in case of probe failure + * cio: dont panic in non-fatal conditions + * netiucv: displayed TX bytes value much too high + * ipc ns: fix memory leak (idr) + * ALSA: hda - Fix HP T5735 automute + * hwmon: (fschmd) Fix a memleak on multiple opens of /dev/watchdog + * UBI: fix memory leak in update path + * UBI: initialise update marker + * ASoC: fix a memory-leak in wm8903 + * mac80211: check that ieee80211_set_power_mgmt only handles STA + interfaces. + * cfg80211: fix channel setting for wext + * KVM: S390: fix potential array overrun in intercept handling + * KVM: only allow one gsi per fd + * KVM: Fix race between APIC TMR and IRR + * KVM: MMU: bail out pagewalk on kvm_read_guest error + * KVM: x86: Fix host_mapping_level() + * KVM: x86: Fix probable memory leak of vcpu->arch.mce_banks + * KVM: x86: Fix leak of free lapic date in kvm_arch_vcpu_init() + * KVM: fix lock imbalance in kvm_*_irq_source_id() + * KVM: only clear irq_source_id if irqchip is present + * IPoIB: Clear ipoib_neigh.dgid in ipoib_neigh_alloc() + * x86: Reenable TSC sync check at boot, even with NONSTOP_TSC + * ACPI: enable C2 and Turbo-mode on Nehalem notebooks on A/C + - LP: #516325 + * iwlwifi: Fix throughput stall issue in HT mode for 5000 + * fnctl: f_modown should call write_lock_irqsave/restore + * x86, msr/cpuid: Pass the number of minors when unregistering MSR and + CPUID drivers. + * Linux 2.6.32.7 + * scsi_lib: Fix bug in completion of bidi commands + * mptsas: Fix issue with chain pools allocation on katmai + * mm: add new 'read_cache_page_gfp()' helper function + * drm/i915: Selectively enable self-reclaim + * firewire: ohci: fix crashes with TSB43AB23 on 64bit systems + * S390: fix single stepped svcs with TRACE_IRQFLAGS=y + * x86: Set hotpluggable nodes in nodes_possible_map + * x86: Remove "x86 CPU features in debugfs" (CONFIG_X86_CPU_DEBUG) + * libata: retry FS IOs even if it has failed with AC_ERR_INVALID + * zcrypt: Do not remove coprocessor for error 8/72 + * dasd: fix possible NULL pointer errors + * ACPI: Add a generic API for _OSC -v2 + * ACPI: Add platform-wide _OSC support. + * ACPI: fix OSC regression that caused aer and pciehp not to load + * ACPI: Advertise to BIOS in _OSC: _OST on _PPC changes + * UBI: fix volume creation input checking + * e1000/e1000e: don't use small hardware rx buffers + * drm/i915: Reload hangcheck timer too for Ironlake + * Fix a leak in affs_fill_super() + * Fix failure exits in bfs_fill_super() + * fix oops in fs/9p late mount failure + * fix leak in romfs_fill_super() + * Fix remount races with symlink handling in affs + * fix affs parse_options() + * Fix failure exit in ipathfs + * mm: fix migratetype bug which slowed swapping + * FDPIC: Respect PT_GNU_STACK exec protection markings when creating + NOMMU stack + * Split 'flush_old_exec' into two functions + * sparc: TIF_ABI_PENDING bit removal + * x86: get rid of the insane TIF_ABI_PENDING bit + * Input: winbond-cir - remove dmesg spam + * x86: Disable HPET MSI on ATI SB700/SB800 + * iwlwifi: set default aggregation frame count limit to 31 + * drm/i915: only enable hotplug for detected outputs + * firewire: core: add_descriptor size check + * SECURITY: selinux, fix update_rlimit_cpu parameter + * regulator: Specify REGULATOR_CHANGE_STATUS for WM835x LED constraints + * x86: Add Dell OptiPlex 760 reboot quirk + - LP: #488319 + * x86: Add quirk for Intel DG45FC board to avoid low memory corruption + * x86/amd-iommu: Fix possible integer overflow + * clocksource: fix compilation if no GENERIC_TIME + * tcp: update the netstamp_needed counter when cloning sockets + * sky2: Fix oops in sky2_xmit_frame() after TX timeout + * net: restore ip source validation + * af_packet: Don't use skb after dev_queue_xmit() + * ax25: netrom: rose: Fix timer oopses + * KVM: allow userspace to adjust kvmclock offset + * oprofile/x86: add Xeon 7500 series support + * oprofile/x86: fix crash when profiling more than 28 events + * libata: retry link resume if necessary + * mm: percpu-vmap fix RCU list walking + * mm: purge fragmented percpu vmap blocks + * block: fix bio_add_page for non trivial merge_bvec_fn case + * Fix 'flush_old_exec()/setup_new_exec()' split + * random: drop weird m_time/a_time manipulation + * random: Remove unused inode variable + * block: fix bugs in bio-integrity mempool usage + * usb: r8a66597-hdc disable interrupts fix + * connector: Delete buggy notification code. + * be2net: Bug fix to support newer generation of BE ASIC + * be2net: Fix memset() arg ordering. + * mm: flush dcache before writing into page to avoid alias + * mac80211: fix NULL pointer dereference when ftrace is enabled + * imxfb: correct location of callbacks in suspend and resume + * mx3fb: some debug and initialisation fixes + * starfire: clean up properly if firmware loading fails + * kernel/cred.c: use kmem_cache_free + * uartlite: fix crash when using as console + * pktcdvd: removing device does not remove its sysfs dir + * ath9k: fix eeprom INI values override for 2GHz-only cards + * ath9k: fix beacon slot/buffer leak + * powerpc: TIF_ABI_PENDING bit removal + * NET: fix oops at bootime in sysctl code + * Linux 2.6.32.8 + + -- Andy Whitcroft Wed, 10 Feb 2010 18:56:52 +0000 + +linux (2.6.32-12.17) lucid; urgency=low + + [ Andy Whitcroft ] + + * restore linux-image prefix -- master + * enforce -- we require SELINUX enabled -- master + * enforce -- ensure APPARMOR is our default LSM -- master + * make doc package completely optional -- master + * make source package completely optional -- master + * make linux-libc-dev completly optional -- master + * convert package disable to a deps list -- master + * allow common headers to switch from indep to arch -- master + * convert binary package disable to a deps list -- master + * add configuration option for a full source build tree -- master + * add support for uImage kernels in package control scripts + * getabis -- cleanup and parameterise repository list -- master + * getabis -- move configuration to etc/getabi -- master + * kernelconfig -- move configuration to etc -- master + * rules -- make debian/debian.env master for branch name + * set the current branch name -- master + * pull back common debian.master files into debian -- master + * enforcer -- make the enforcement configuration common + * insert-changes -- correctly link to debian/rules in DROOT + + [ Colin Watson ] + + * future-proof ddeb handling against buildd changes + + [ Eric Miao ] + + * SAUCE: Make CONFIG_{OMNIBOOK, AVERATEC_5100P, PACKARDBELL_E5} depend on + X86 + + [ Loïc Minier ] + + * Add modules.builtin.bin to prerm rm list + - LP: #516584 + + [ Tim Gardner ] + + * [Config] Implement the amd64 preempt flavour + + [ Upstream Kernel Changes ] + + * syslog: distinguish between /proc/kmsg and syscalls + - LP: #515623 + * sfc: Fix polling for slow MCDI operations + * sfc: Fix conditions for MDIO self-test + * sfc: QT202x: Remove unreliable MMD check at initialisation + * sfc: Add workspace for GMAC bug workaround to MCDI MAC_STATS buffer + * sfc: Use fixed-size buffers for MCDI NVRAM requests + + -- Andy Whitcroft Fri, 05 Feb 2010 07:09:31 +0000 + +linux (2.6.32-12.16) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: acpi battery -- delay first lookup of the battery until + first use" + * SAUCE: acpi battery -- move first lookup asynchronous + - LP: #507211 + * [Config] update configs to cleanup generic configs + * [Config] disable CONFIG_X86_CPU_DEBUG for amd64 + * [Config] enable USER_NS + - LP: #480739, #509808 + + [ Heiko Carstens ] + + * (pre-stable) driver-core: fix devtmpfs crash on s390 + - LP: #512370 + + [ John Johansen ] + + * [Config] for server and virtual flavours make CONFIG_SCSI_SYM53C8XX_2=y + - LP: #494565 + * [Config] VIRTIO=y for server/virtual flavours + - LP: #494565 + + [ Kay Sievers ] + + * (pre-stable) Driver-Core: devtmpfs - set root directory mode to 0755 + - LP: #512370 + + [ Kees Cook ] + + * SAUCE: x86: brk away from exec rand area + - LP: #452175 + + [ Leann Ogasawara ] + + * [Upstream] e1000: enhance frame fragment detection + - CVE-2009-4536 + * [Upstream] e1000e: enhance frame fragment detection + - CVE-2009-4538 + + [ Sebastian Kapfer ] + + * (pre-stable) Input: ALPS - add interleaved protocol support (Dell E6x00 + series) + - LP: #296610 + + [ Upstream Kernel Changes ] + + * inotify: do not reuse watch descriptors + - LP: #485556 + * inotify: only warn once for inotify problems + * revert "drivers/video/s3c-fb.c: fix clock setting for Samsung SoC + Framebuffer" + * memcg: ensure list is empty at rmdir + * drm/i915: remove loop in Ironlake interrupt handler + * block: Fix incorrect reporting of partition alignment + * x86, mce: Thermal monitoring depends on APIC being enabled + * futexes: Remove rw parameter from get_futex_key() + * page allocator: update NR_FREE_PAGES only when necessary + * x86, apic: use physical mode for IBM summit platforms + * edac: i5000_edac critical fix panic out of bounds + * x86: SGI UV: Fix mapping of MMIO registers + * mfd: WM835x GPIO direction register is not locked + * mfd: Correct WM835x ISINK ramp time defines + * ALSA: hda - Fix missing capture mixer for ALC861/660 codecs + * V4L/DVB (13868): gspca - sn9c20x: Fix test of unsigned. + * reiserfs: truncate blocks not used by a write + * HID: add device IDs for new model of Apple Wireless Keyboard + * PCI/cardbus: Add a fixup hook and fix powerpc + * Input: pmouse - move Sentelic probe down the list + * asus-laptop: add Lenovo SL hotkey support + * sched: Fix cpu_clock() in NMIs, on !CONFIG_HAVE_UNSTABLE_SCHED_CLOCK + * sparc64: Fix NMI programming when perf events are active. + * sparc64: Fix Niagara2 perf event handling. + * i2c: Do not use device name after device_unregister + * i2c/pca: Don't use *_interruptible + * serial/8250_pnp: add a new Fujitsu Wacom Tablet PC device + * sched: Fix task priority bug + * vfs: Fix vmtruncate() regression + * Linux 2.6.32.5 + * x86, msr/cpuid: Register enough minors for the MSR and CPUID drivers + * V4L/DVB (13900): gspca - sunplus: Fix bridge exchanges. + * Staging: asus_oled: fix oops in 2.6.32.2 + * Staging: hv: fix smp problems in the hyperv core code + * tty: fix race in tty_fasync + * ecryptfs: use after free + * ecryptfs: initialize private persistent file before dereferencing + pointer + * nozomi: quick fix for the close/close bug + * serial: 8250_pnp: use wildcard for serial Wacom tablets + * usb: serial: fix memory leak in generic driver + * USB: fix bitmask merge error + * USB: Don't use GFP_KERNEL while we cannot reset a storage device + * USB: EHCI: fix handling of unusual interrupt intervals + * USB: EHCI & UHCI: fix race between root-hub suspend and port resume + * USB: add missing delay during remote wakeup + * USB: add speed values for USB 3.0 and wireless controllers + * ACPI: EC: Accelerate query execution + * ACPI: EC: Add wait for irq storm + * SCSI: enclosure: fix oops while iterating enclosure_status array + * drm/i915: Read the response after issuing DDC bus switch command + * drm/i915: try another possible DDC bus for the SDVO device with + multiple outputs + * block: bdev_stack_limits wrapper + * DM: Fix device mapper topology stacking + * x86/PCI/PAT: return EINVAL for pci mmap WC request for !pat_enabled + * USB: fix usbstorage for 2770:915d delivers no FAT + * vmalloc: remove BUG_ON due to racy counting of VM_LAZY_FREE + * perf timechart: Use tid not pid for COMM change + * perf events: Dont report side-band events on each cpu for + per-task-per-cpu events + * perf: Honour event state for aux stream data + * Linux 2.6.32.6 + + -- Andy Whitcroft Wed, 27 Jan 2010 16:40:23 +0000 + +linux (2.6.32-11.15) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "(pre-stable) drm/radeon/kms: fix crtc vblank update for r600" + * Revert "(pre-stable) sched: Fix balance vs hotplug race" + * Revert "[Upstream] acerhdf: Limit modalias matching to supported + boards" + * Revert "[Upstream] mmc: prevent dangling block device from accessing + stale queues" + * Revert "SAUCE: Fix nx_enable reporting" + * Revert "SAUCE: [x86] fix report of cs-limit nx-emulation" + * Revert "SAUCE: [x86] implement cs-limit nx-emulation for ia32" + * SAUCE: i915 -- disable powersave by default + - LP: #492392 + + [ Kees Cook ] + + * SAUCE: [x86] implement cs-limit nx-emulation for ia32 + - LP: #369978 + * SAUCE: [x86] fix report of cs-limit nx-emulation + - LP: #454285 + * SAUCE: Fix nx_enable reporting + - LP: #454285 + + [ Tim Gardner ] + + * [Upstream] b43: Declare all possible firmware files. + - LP: #488636 + * [Config] updateconfigs after adding pvscsi + - LP: #497156 + * [Config] CONFIG_BT=m + + [ Upstream Kernel Changes ] + + * Revert "x86: Side-step lguest problem by only building cmpxchg8b_emu + for pre-Pentium" + * SCSI: ipr: fix EEH recovery + * SCSI: qla2xxx: dpc thread can execute before scsi host has been added + * SCSI: st: fix mdata->page_order handling + * SCSI: fc class: fix fc_transport_init error handling + * sched: Fix task_hot() test order + * x86, cpuid: Add "volatile" to asm in native_cpuid() + * sched: Select_task_rq_fair() must honour SD_LOAD_BALANCE + * clockevents: Prevent clockevent_devices list corruption on cpu hotplug + * pata_hpt3x2n: fix clock turnaround + * pata_cmd64x: fix overclocking of UDMA0-2 modes + * ASoC: wm8974: fix a wrong bit definition + * sound: sgio2audio/pdaudiocf/usb-audio: initialize PCM buffer + * ALSA: hda - Fix missing capsrc_nids for ALC88x + * acerhdf: limit modalias matching to supported + - LP: #435958 + * ACPI: EC: Fix MSI DMI detection + * ACPI: Use the return result of ACPI lid notifier chain correctly + * powerpc: Handle VSX alignment faults correctly in little-endian mode + * ASoC: Do not write to invalid registers on the wm9712. + * drm/radeon: fix build on 64-bit with some compilers. + * USB: emi62: fix crash when trying to load EMI 6|2 firmware + * USB: option: support hi speed for modem Haier CE100 + * USB: Fix a bug on appledisplay.c regarding signedness + * USB: musb: gadget_ep0: avoid SetupEnd interrupt + * Bluetooth: Prevent ill-timed autosuspend in USB driver + * USB: rename usb_configure_device + * USB: fix bugs in usb_(de)authorize_device + * drivers/net/usb: Correct code taking the size of a pointer + * x86: SGI UV: Fix writes to led registers on remote uv hubs + * md: Fix unfortunate interaction with evms + * dma: at_hdmac: correct incompatible type for argument 1 of + 'spin_lock_bh' + * dma-debug: Do not add notifier when dma debugging is disabled. + * dma-debug: Fix bug causing build warning + * cifs: NULL out tcon, pSesInfo, and srvTcp pointers when chasing DFS + referrals + * x86/amd-iommu: Fix initialization failure panic + * ioat3: fix p-disabled q-continuation + * ioat2,3: put channel hardware in known state at init + * KVM: MMU: remove prefault from invlpg handler + * KVM: LAPIC: make sure IRR bitmap is scanned after vm load + * Libertas: fix buffer overflow in lbs_get_essid() + * iwmc3200wifi: fix array out-of-boundary access + * mac80211: fix propagation of failed hardware reconfigurations + * mac80211: fix WMM AP settings application + * mac80211: Fix IBSS merge + * cfg80211: fix race between deauth and assoc response + * ath5k: fix SWI calibration interrupt storm + * ath9k: wake hardware for interface IBSS/AP/Mesh removal + * ath9k: Fix TX queue draining + * ath9k: fix missed error codes in the tx status check + * ath9k: wake hardware during AMPDU TX actions + * ath9k: fix suspend by waking device prior to stop + * ath9k_hw: Fix possible OOB array indexing in gen_timer_index[] on + 64-bit + * ath9k_hw: Fix AR_GPIO_INPUT_EN_VAL_BT_PRIORITY_BB and its shift value + in 0x4054 + * iwl3945: disable power save + * iwl3945: fix panic in iwl3945 driver + * iwlwifi: fix EEPROM/OTP reading endian annotations and a bug + * iwlwifi: fix more eeprom endian bugs + * iwlwifi: fix 40MHz operation setting on cards that do not allow it + * mac80211: fix race with suspend and dynamic_ps_disable_work + * NOMMU: Optimise away the {dac_,}mmap_min_addr tests + * 'sysctl_max_map_count' should be non-negative + * kernel/sysctl.c: fix the incomplete part of + sysctl_max_map_count-should-be-non-negative.patch + * V4L/DVB (13596): ov511.c typo: lock => unlock + * x86/ptrace: make genregs[32]_get/set more robust + * memcg: avoid oom-killing innocent task in case of use_hierarchy + * e100: Fix broken cbs accounting due to missing memset. + * ipv6: reassembly: use seperate reassembly queues for conntrack and + local delivery + * netfilter: fix crashes in bridge netfilter caused by fragment jumps + * hwmon: (sht15) Off-by-one error in array index + incorrect constants + * b43: avoid PPC fault during resume + * Keys: KEYCTL_SESSION_TO_PARENT needs TIF_NOTIFY_RESUME architecture + support + * sched: Fix balance vs hotplug race + * drm/radeon/kms: fix crtc vblank update for r600 + * drm: disable all the possible outputs/crtcs before entering KMS mode + * S390: dasd: support DIAG access for read-only devices + * xen: fix is_disconnected_device/exists_disconnected_device + * xen: improvement to wait_for_devices() + * xen: wait up to 5 minutes for device connetion + * orinoco: fix GFP_KERNEL in orinoco_set_key with interrupts disabled + * udf: Try harder when looking for VAT inode + * Add unlocked version of inode_add_bytes() function + * quota: decouple fs reserved space from quota reservation + * ext4: Convert to generic reserved quota's space management. + * ext4: fix sleep inside spinlock issue with quota and dealloc (#14739) + * x86, msr: Unify rdmsr_on_cpus/wrmsr_on_cpus + * cpumask: use modern cpumask style in drivers/edac/amd64_edac.c + * amd64_edac: unify MCGCTL ECC switching + * x86, msr: Add support for non-contiguous cpumasks + * x86, msr: msrs_alloc/free for CONFIG_SMP=n + * amd64_edac: fix driver instance freeing + * amd64_edac: make driver loading more robust + * amd64_edac: fix forcing module load/unload + * sched: Sched_rt_periodic_timer vs cpu hotplug + * ext4: Update documentation to correct the inode_readahead_blks option + name + * lguest: fix bug in setting guest GDT entry + * vmscan: do not evict inactive pages when skipping an active list scan + * ksm: fix mlockfreed to munlocked + * rt2x00: Disable powersaving for rt61pci and rt2800pci. + * generic_permission: MAY_OPEN is not write access + * Linux 2.6.32.3 + * untangle the do_mremap() mess + * fasync: split 'fasync_helper()' into separate add/remove functions + * ASoC: fix params_rate() macro use in several codecs + * modules: Skip empty sections when exporting section notes + * exofs: simple_write_end does not mark_inode_dirty + * nfsd: make sure data is on disk before calling ->fsync + * sunrpc: fix peername failed on closed listener + * SUNRPC: Fix up an error return value in + gss_import_sec_context_kerberos() + * SUNRPC: Fix the return value in gss_import_sec_context() + * sunrpc: on successful gss error pipe write, don't return error + * drm/i915: Update LVDS connector status when receiving ACPI LID event + * drm/i915: fix order of fence release wrt flushing + * drm/i915: Permit pinning whilst the device is 'suspended' + * drm: remove address mask param for drm_pci_alloc() + * drm/i915: Enable/disable the dithering for LVDS based on VBT setting + * drm/i915: Make the BPC in FDI rx/transcoder be consistent with that in + pipeconf on Ironlake + * drm/i915: Select the correct BPC for LVDS on Ironlake + * drm/i915: fix unused var + * rtc_cmos: convert shutdown to new pnp_driver->shutdown + * drivers/cpuidle/governors/menu.c: fix undefined reference to + `__udivdi3' + * cgroups: fix 2.6.32 regression causing BUG_ON() in cgroup_diput() + * lib/rational.c needs module.h + * dma-debug: allow DMA_BIDIRECTIONAL mappings to be synced with + DMA_FROM_DEVICE and + * kernel/signal.c: fix kernel information leak with print-fatal-signals=1 + * mmc_block: add dev_t initialization check + * mmc_block: fix probe error cleanup bug + * mmc_block: fix queue cleanup + * ALSA: hda - Fix ALC861-VD capture source mixer + * ALSA: ac97: Add Dell Dimension 2400 to Headphone/Line Jack Sense + blacklist + * ALSA: atiixp: Specify codec for Foxconn RC4107MA-RS2 + - LP: #498863 + * ASoC: Fix WM8350 DSP mode B configuration + * netfilter: ebtables: enforce CAP_NET_ADMIN + * netfilter: nf_ct_ftp: fix out of bounds read in update_nl_seq() + * hwmon: (coretemp) Fix TjMax for Atom N450/D410/D510 CPUs + * hwmon: (adt7462) Fix pin 28 monitoring + * quota: Fix dquot_transfer for filesystems different from ext4 + * xen: fix hang on suspend. + * iwlwifi: fix iwl_queue_used bug when read_ptr == write_ptr + * ath5k: Fix eeprom checksum check for custom sized eeproms + * cfg80211: fix syntax error on user regulatory hints + * iwl: off by one bug + * mac80211: add missing sanity checks for action frames + * drm/i915: remove render reclock support + * libertas: Remove carrier signaling from the scan code + * kernel/sysctl.c: fix stable merge error in NOMMU mmap_min_addr + * mac80211: fix skb buffering issue (and fixes to that) + * fix braindamage in audit_tree.c untag_chunk() + * fix more leaks in audit_tree.c tag_chunk() + * module: handle ppc64 relocating kcrctabs when CONFIG_RELOCATABLE=y + * ipv6: skb_dst() can be NULL in ipv6_hop_jumbo(). + * agp/intel-agp: Clear entire GTT on startup + * Linux 2.6.32.4 + * ethtool: Add reset operation + * gro: Name the GRO result enumeration type + * gro: Change all receive functions to return GRO result codes + * sfc: 10Xpress: Initialise pause advertising flags + * sfc: 10Xpress: Report support for pause frames + * sfc: Remove redundant header gmii.h + * sfc: Remove redundant hardware initialisation + * sfc: Rename Falcon-specific board code and types + * sfc: Remove boards.h, moving last remaining declaration to falcon.h + * sfc: Remove versioned bitfield macros + * sfc: Move RX data FIFO thresholds out of struct efx_nic_type + * sfc: Update hardware definitions for Siena + * sfc: Rename register I/O header and functions used by both Falcon and + Siena + * sfc: Eliminate indirect lookups of queue size constants + * sfc: Define DMA address mask explicitly in terms of descriptor field + width + * sfc: Move all TX DMA length limiting into tx.c + * sfc: Change order of device removal to reverse of probe order + * sfc: Remove declarations of nonexistent functions + * sfc: Move efx_xmit_done() declaration into correct stanza + * sfc: Move shared members of struct falcon_nic_data into struct efx_nic + * sfc: Maintain interrupt moderation values in ticks, not microseconds + * sfc: Removed kernel-doc for nonexistent member of efx_phy_operations + * sfc: Remove pointless abstraction of memory BAR number + * sfc: Remove incorrect assertion from efx_pci_remove_main() + * sfc: Remove unnecessary tests of efx->membase + * sfc: Move MTD probe after netdev registration and name allocation + * sfc: Remove unused code for non-autoneg speed/duplex switching + * sfc: Rename 'xfp' file and functions to reflect reality + * sfc: Really allow RX checksum offload to be disabled + * sfc: Feed GRO result into RX allocation policy and interrupt moderation + * sfc: Enable heuristic selection between page and skb RX buffers + * sfc: Remove pointless abstraction of memory BAR number (2) + * sfc: Remove redundant gotos from __efx_rx_packet() + * sfc: Remove ridiculously paranoid assertions + * sfc: Move assertions and buffer cleanup earlier in efx_rx_packet_lro() + * sfc: Record RX queue number on GRO path + * sfc: SFT9001: Reset LED configuration correctly after blinking + * sfc: Use a single blink implementation + * sfc: Rename efx_board::init_leds to init_phy and use for SFN4111T + * sfc: Make board information explicitly Falcon-specific + * sfc: Move definition of struct falcon_nic_data into falcon.h + * sfc: Move struct falcon_board into struct falcon_nic_data + * sfc: Move all I2C stuff into struct falcon_board + * sfc: Gather link state fields in struct efx_nic into new struct + efx_link_state + * sfc: Remove unnecessary casts to struct sk_buff * + * sfc: Remove redundant efx_xmit() function + * sfc: Combine high-level header files + * sfc: Log interrupt and reset type names, not numbers + * sfc: Fix descriptor cache sizes + * sfc: Treat all MAC registers as 128-bit + * sfc: Strengthen EFX_ASSERT_RESET_SERIALISED + * sfc: Comment corrections + * sfc: Remove unused constant + * sfc: Clean up struct falcon_board and struct falcon_board_data + * sfc: Fix bugs in RX queue flushing + * sfc: Remove unused function efx_flush_queues() + * sfc: Only switch Falcon MAC clocks as necessary + * sfc: Hold MAC lock for longer in efx_init_port() + * sfc: Split MAC stats DMA initiation and completion + * sfc: Move Falcon board/PHY/MAC monitoring code to falcon.c + * sfc: Simplify XMAC link polling + * sfc: Change MAC promiscuity and multicast hash at the same time + * sfc: Move inline comment into kernel-doc + * sfc: Do not set net_device::trans_start in self-test + * sfc: Simplify PHY polling + * sfc: QT202x: Reset before reading PHY id + * sfc: Replace MDIO spinlock with mutex + * sfc: Always start Falcon using the XMAC + * sfc: Limit some hardware workarounds to Falcon + * sfc: Remove EFX_WORKAROUND_9141 macro + * sfc: Remove another unused workaround macro + * sfc: Remove some redundant whitespace + * sfc: Decouple NIC revision number from Falcon PCI revision number + * sfc: Move descriptor cache base addresses to struct efx_nic_type + * sfc: Clean up RX event handling + * sfc: Remove redundant writes to INT_ADR_KER + * sfc: Remove duplicate hardware structure definitions + * sfc: Turn pause frame generation on and off at the MAC, not the RX FIFO + * sfc: Move Falcon NIC operations to efx_nic_type + * sfc: Refactor link configuration + * sfc: Generalise link state monitoring + * sfc: Add power-management and wake-on-LAN support + * sfc: Implement ethtool reset operation + * sfc: Add efx_nic_type operation for register self-test + * sfc: Add efx_nic_type operation for NVRAM self-test + * sfc: Add efx_nic_type operation for identity LED control + * sfc: Separate shared NIC code from Falcon-specific and rename + accordingly + * sfc: Fold falcon_probe_nic_variant() into falcon_probe_nic() + * sfc: Extend loopback mode enumeration + * sfc: Remove static PHY data and enumerations + * sfc: Extend MTD driver for use with new NICs + * sfc: Allow for additional checksum offload features + * sfc: Rename falcon.h to nic.h + * sfc: Move shared NIC code from falcon.c to new source file nic.c + * sfc: Add firmware protocol definitions (MCDI) + * sfc: Add support for SFC9000 family (1) + * sfc: Add support for SFC9000 family (2) + * sfc: Implement TSO for TCP/IPv6 + * sfc: Update version, copyright dates, authors + * drivers/net/sfc: Correct code taking the size of a pointer + * sfc: Move PHY software state initialisation from init() into probe() + * sfc: Include XGXS in XMAC link status check except in XGMII loopback + * sfc: Fix DMA mapping cleanup in case of an error in TSO + * sfc: QT2025C: Work around PHY bug + * sfc: QT2025C: Switch into self-configure mode when not in loopback + * sfc: QT2025C: Work around PHY firmware initialisation bug + * sfc: QT2025C: Add error message for suspected bad SFP+ cables + * sfc: Disable TX descriptor prefetch watchdog + * [SCSI] vmw_pvscsi: SCSI driver for VMware's virtual HBA. + - LP: #497156 + + -- Andy Whitcroft Tue, 19 Jan 2010 16:12:47 +0000 + +linux (2.6.32-10.14) lucid; urgency=low + + [ Alex Deucher ] + + * SAUCE: drm/radeon/kms: fix LVDS setup on r4xx + - LP: #493795 + + [ Andy Whitcroft ] + + * Revert "(pre-stable) acpi: Use the ARB_DISABLE for the CPU which model + id is less than 0x0f." + * config-check -- ensure the checks get run at build time + * config-check -- check the processed config during updateconfigs + * config-check -- CONFIG_SECCOMP may not be present + * TUN is now built in ignore + * SAUCE: acpi battery -- delay first lookup of the battery until first + use + * SAUCE: async_populate_rootfs: move rootfs init earlier + * ubuntu: AppArmor -- update to mainline 2010-01-06 + * SAUCE: move RLIMIT_CORE pipe dumper marker to 1 + - LP: #498525 + + [ Dave Airlie ] + + * (pre-stable) drm/radeon/kms: fix crtc vblank update for r600 + + [ Leann Ogasawara ] + + * Add asix to nic-usb-modules file + - LP: #499785 + + [ Peter Zijlstra ] + + * (pre-stable) sched: Fix balance vs hotplug race + + [ Tim Gardner ] + + * [Config] Enable CONFIG_FUNCTION_TRACER + - LP: #497989 + * [Config] Drop lpia from getabis + * [Config] Build in TUN/TAP driver + - LP: #499491 + * [Config] DH_COMPAT=5 + + [ Upstream Kernel Changes ] + + * Revert "(pre-stable) drm/i915: Avoid NULL dereference with + component_only tv_modes" + * Revert "(pre-stable) drm/i915: Fix sync to vblank when VGA output is + turned off" + * USB: usb-storage: fix bug in fill_inquiry + * USB: option: add pid for ZTE + * firewire: ohci: handle receive packets with a data length of zero + * rcu: Prepare for synchronization fixes: clean up for non-NO_HZ handling + of ->completed counter + * rcu: Fix synchronization for rcu_process_gp_end() uses of ->completed + counter + * rcu: Fix note_new_gpnum() uses of ->gpnum + * rcu: Remove inline from forward-referenced functions + * perf_event: Fix invalid type in ioctl definition + * perf_event: Initialize data.period in perf_swevent_hrtimer() + * perf: Don't free perf_mmap_data until work has been done + * PM / Runtime: Fix lockdep warning in __pm_runtime_set_status() + * sched: Check for an idle shared cache in select_task_rq_fair() + * sched: Fix affinity logic in select_task_rq_fair() + * sched: Rate-limit newidle + * sched: Fix and clean up rate-limit newidle code + * x86/amd-iommu: attach devices to pre-allocated domains early + * x86/amd-iommu: un__init iommu_setup_msi + * x86, Calgary IOMMU quirk: Find nearest matching Calgary while walking + up the PCI tree + * x86: Fix iommu=nodac parameter handling + * x86: GART: pci-gart_64.c: Use correct length in strncmp + * x86: ASUS P4S800 reboot=bios quirk + - LP: #366682 + * x86, apic: Enable lapic nmi watchdog on AMD Family 11h + * ssb: Fix range check in sprom write + * ath5k: allow setting txpower to 0 + * ath5k: enable EEPROM checksum check + * hrtimer: Fix /proc/timer_list regression + * ALSA: hrtimer - Fix lock-up + * ALSA: hda - Terradici HDA controllers does not support 64-bit mode + * KVM: x86 emulator: limit instructions to 15 bytes + * KVM: s390: Fix prefix register checking in arch/s390/kvm/sigp.c + * KVM: s390: Make psw available on all exits, not just a subset + * KVM: fix irq_source_id size verification + * KVM: x86: include pvclock MSRs in msrs_to_save + * x86: Prevent GCC 4.4.x (pentium-mmx et al) function prologue wreckage + * x86: Use -maccumulate-outgoing-args for sane mcount prologues + * x86, mce: don't restart timer if disabled + * x86/mce: Set up timer unconditionally + * x86: SGI UV: Fix BAU initialization + * x86: Fix duplicated UV BAU interrupt vector + * x86: Add new Intel CPU cache size descriptors + * x86: Fix typo in Intel CPU cache size descriptor + * pata_hpt{37x|3x2n}: fix timing register masks (take 2) + * s390: clear high-order bits of registers after sam64 + * V4L/DVB: Fix test in copy_reg_bits() + * bsdacct: fix uid/gid misreporting + * UBI: flush wl before clearing update marker + * jbd2: don't wipe the journal on a failed journal checksum + * USB: xhci: Add correct email and files to MAINTAINERS entry. + * USB: musb_gadget_ep0: fix unhandled endpoint 0 IRQs, again + * USB: option.c: add support for D-Link DWM-162-U5 + * USB: usbtmc: repeat usb_bulk_msg until whole message is transfered + * USB: usb-storage: add BAD_SENSE flag + * USB: Close usb_find_interface race v3 + * pxa/em-x270: fix usb hub power up/reset sequence + * hfs: fix a potential buffer overflow + * SUNRPC: IS_ERR/PTR_ERR confusion + * NFS: Fix nfs_migrate_page() + * md/bitmap: protect against bitmap removal while being updated. + * futex: Take mmap_sem for get_user_pages in fault_in_user_writeable + * devpts_get_tty() should validate inode + * debugfs: fix create mutex racy fops and private data + * Driver core: fix race in dev_driver_string + * Serial: Do not read IIR in serial8250_start_tx when UART_BUG_TXEN + * mac80211: Fix bug in computing crc over dynamic IEs in beacon + * mac80211: Fixed bug in mesh portal paths + * mac80211: Revert 'Use correct sign for mesh active path refresh' + * mac80211: fix scan abort sanity checks + * wireless: correctly report signal value for IEEE80211_HW_SIGNAL_UNSPEC + * rtl8187: Fix wrong rfkill switch mask for some models + * x86: Fix bogus warning in apic_noop.apic_write() + * mm: hugetlb: fix hugepage memory leak in mincore() + * mm: hugetlb: fix hugepage memory leak in walk_page_range() + * powerpc/windfarm: Add detection for second cpu pump + * powerpc/therm_adt746x: Record pwm invert bit at module load time] + * powerpc: Fix usage of 64-bit instruction in 32-bit altivec code + * drm/radeon/kms: Add quirk for HIS X1300 board + * drm/radeon/kms: handle vblanks properly with dpms on + * drm/radeon/kms: fix legacy crtc2 dpms + * drm/radeon/kms: fix vram setup on rs600 + * drm/radeon/kms: rs6xx/rs740: clamp vram to aperture size + * drm/ttm: Fix build failure due to missing struct page + * drm/i915: Set the error code after failing to insert new offset into mm + ht. + * drm/i915: Add the missing clonemask for display port on Ironlake + * xen/xenbus: make DEVICE_ATTR()s static + * xen: re-register runstate area earlier on resume. + * xen: restore runstate_info even if !have_vcpu_info_placement + * xen: correctly restore pfn_to_mfn_list_list after resume + * xen: register timer interrupt with IRQF_TIMER + * xen: register runstate on secondary CPUs + * xen: don't call dpm_resume_noirq() with interrupts disabled. + * xen: register runstate info for boot CPU early + * xen: call clock resume notifier on all CPUs + * xen: improve error handling in do_suspend. + * xen: don't leak IRQs over suspend/resume. + * xen: use iret for return from 64b kernel to 32b usermode + * xen: explicitly create/destroy stop_machine workqueues outside + suspend/resume region. + * Xen balloon: fix totalram_pages counting. + * xen: try harder to balloon up under memory pressure. + * dm exception store: free tmp_store on persistent flag error + * dm snapshot: only take lock for statustype info not table + * dm crypt: move private iv fields to structs + * dm crypt: restructure essiv error path + * dm: avoid _hash_lock deadlock + * dm snapshot: cope with chunk size larger than origin + * dm crypt: separate essiv allocation from initialisation + * dm crypt: make wipe message also wipe essiv key + * slc90e66: fix UDMA handling + * tcp: Stalling connections: Fix timeout calculation routine + * ip_fragment: also adjust skb->truesize for packets not owned by a + socket + * b44 WOL setup: one-bit-off stack corruption kernel panic fix + * sparc64: Don't specify IRQF_SHARED for LDC interrupts. + * sparc64: Fix overly strict range type matching for PCI devices. + * sparc64: Fix stack debugging IRQ stack regression. + * sparc: Set UTS_MACHINE correctly. + * b43legacy: avoid PPC fault during resume + * tracing: Fix event format export + * ath9k: Fix TX hang poll routine + * ath9k: fix processing of TX PS null data frames + * ath9k: Fix maximum tx fifo settings for single stream devices + * ath9k: fix tx status reporting + * mac80211: Fix dynamic power save for scanning. + * drm/i915: Fix sync to vblank when VGA output is turned off + * memcg: fix memory.memsw.usage_in_bytes for root cgroup + * thinkpad-acpi: fix default brightness_mode for R50e/R51 + * thinkpad-acpi: preserve rfkill state across suspend/resume + * ipw2100: fix rebooting hang with driver loaded + * matroxfb: fix problems with display stability + * acerhdf: add new BIOS versions + * asus-laptop: change light sens default values. + * vmalloc: conditionalize build of pcpu_get_vm_areas() + * ACPI: Use the ARB_DISABLE for the CPU which model id is less than 0x0f. + * net: Fix userspace RTM_NEWLINK notifications. + * ext3: Fix data / filesystem corruption when write fails to copy data + * V4L/DVB (13116): gspca - ov519: Webcam 041e:4067 added. + * bcm63xx_enet: fix compilation failure after get_stats_count removal + * x86: Under BIOS control, restore AP's APIC_LVTTHMR to the BSP value + * drm/i915: Avoid NULL dereference with component_only tv_modes + * drm/i915: PineView only has LVDS and CRT ports + * drm/i915: Fix LVDS stability issue on Ironlake + * mm: sigbus instead of abusing oom + * ipvs: zero usvc and udest + * jffs2: Fix long-standing bug with symlink garbage collection. + * intel-iommu: Detect DMAR in hyperspace at probe time. + * intel-iommu: Apply BIOS sanity checks for interrupt remapping too. + * intel-iommu: Check for an RMRR which ends before it starts. + * intel-iommu: Fix oops with intel_iommu=igfx_off + * intel-iommu: ignore page table validation in pass through mode + * netfilter: xtables: document minimal required version + * perf_event: Fix incorrect range check on cpu number + * implement early_io{re,un}map for ia64 + * Linux 2.6.32.2 + + -- Andy Whitcroft Thu, 07 Jan 2010 15:28:43 +0000 + +linux (2.6.32-9.13) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_B43_PHY_LP + - LP: #493059 + * include modules.builtin in the binary debs + * config-check -- add a configuration enforcer + * config-check -- add a unit-test suite to the checker + * [Config] Enable CONFIG_SYN_COOKIES for versatile + * [Config] Enable CONFIG_SECURITY_SMACK for ports + * [Config] Enable CONFIG_SECURITY_FILE_CAPABILITIES for ports + * [Config] Disable CONFIG_COMPAT_BRK for ports + * getabis -- add armel versatile to the list + + [ Brad Figg ] + + * SAUCE: Increase the default prealloc buffer for HDA audio devices + (non-modem) + + [ Manoj Iyer ] + + * ubuntu: onmibook -- Added missing BOM file + + [ Tim Gardner ] + + * ubuntu: fsam7400 -- Cleanup Makefile + + [ Upstream Kernel Changes ] + + * Revert "ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT" + * signal: Fix alternate signal stack check + * SCSI: scsi_lib_dma: fix bug with dma maps on nested scsi objects + * SCSI: osd_protocol.h: Add missing #include + * SCSI: megaraid_sas: fix 64 bit sense pointer truncation + * ext4: fix potential buffer head leak when add_dirent_to_buf() returns + ENOSPC + * ext4: avoid divide by zero when trying to mount a corrupted file system + * ext4: fix the returned block count if EXT4_IOC_MOVE_EXT fails + * ext4: fix lock order problem in ext4_move_extents() + * ext4: fix possible recursive locking warning in EXT4_IOC_MOVE_EXT + * ext4: plug a buffer_head leak in an error path of ext4_iget() + * ext4: make sure directory and symlink blocks are revoked + * ext4: fix i_flags access in ext4_da_writepages_trans_blocks() + * ext4: journal all modifications in ext4_xattr_set_handle + * ext4: don't update the superblock in ext4_statfs() + * ext4: fix uninit block bitmap initialization when s_meta_first_bg is + non-zero + * ext4: fix block validity checks so they work correctly with meta_bg + * ext4: avoid issuing unnecessary barriers + * ext4: fix error handling in ext4_ind_get_blocks() + * ext4: make trim/discard optional (and off by default) + * ext4: make "norecovery" an alias for "noload" + * ext4: Fix double-free of blocks with EXT4_IOC_MOVE_EXT + * ext4: initialize moved_len before calling ext4_move_extents() + * ext4: move_extent_per_page() cleanup + * jbd2: Add ENOMEM checking in and for + jbd2_journal_write_metadata_buffer() + * ext4: Return the PTR_ERR of the correct pointer in + setup_new_group_blocks() + * ext4: Avoid data / filesystem corruption when write fails to copy data + * ext4: wait for log to commit when umounting + * ext4: remove blocks from inode prealloc list on failure + * ext4: ext4_get_reserved_space() must return bytes instead of blocks + * ext4: quota macros cleanup + * ext4: fix incorrect block reservation on quota transfer. + * ext4: Wait for proper transaction commit on fsync + * ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT + * ext4: Fix potential fiemap deadlock (mmap_sem vs. i_data_sem) + * Linux 2.6.32.1 + * kbuild: generate modules.builtin + * (pre-stable) drm/i915: Fix sync to vblank when VGA output is turned off + - LP: #494461 + * (pre-stable) drm/i915: Avoid NULL dereference with component_only + tv_modes + - LP: #494045 + + [ Zhao Yakui ] + + * (pre-stable) acpi: Use the ARB_DISABLE for the CPU which model id is + less than 0x0f. + - LP: #481765 + + -- Andy Whitcroft Thu, 17 Dec 2009 15:41:21 +0000 + +linux (2.6.32-8.12) lucid; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: AppArmor -- add linux/err.h for ERR_PTR + + -- Andy Whitcroft Sat, 12 Dec 2009 10:56:16 +0000 + +linux (2.6.32-8.11) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: default ATI Radeon KMS to off until userspace catches + up" + * Revert "SAUCE: AppArmor: Fix oops there is no tracer and doing unsafe + transition." + * Revert "SAUCE: AppArmor: Fix refcounting bug causing leak of creds" + * Revert "SAUCE: AppArmor: Fix cap audit_caching preemption disabling" + * Revert "SAUCE: AppArmor: Fix Oops when in apparmor_bprm_set_creds" + * Revert "SAUCE: AppArmor: Fix oops after profile removal" + * Revert "SAUCE: AppArmor: AppArmor disallows truncate of deleted files." + * Revert "SAUCE: AppArmor: AppArmor fails to audit change_hat correctly" + * Revert "SAUCE: AppArmor: Policy load and replacement can fail to alloc + mem" + * Revert "SAUCE: AppArmor: AppArmor wrongly reports allow perms as + denied" + * Revert "SAUCE: AppArmor: Fix mediation of "deleted" paths" + * Revert "SAUCE: AppArmor: Fix off by 2 error in getprocattr mem + allocation" + * Revert "SAUCE: AppArmor: Set error code after structure + initialization." + * Revert "AppArmor -- fix pstrace_may_access rename" + * Revert "ubuntu: AppArmor security module" + * Revert "SAUCE: Add config option to set a default LSM" + * Revert "ubuntu: fsam7400 -- sw kill switch driver" + * Revert "[Config] fsam7400 -- enable" + * Revert "[Config] AUFS -- enable" + * Revert "ubuntu: AUFS -- aufs2-30 20090727" + * Revert "ubuntu: AUFS -- export various core functions -- fixes" + * Revert "ubuntu: AUFS -- export various core functions" + * Revert "[Config] ubuntu/iscsitarget -- disable" + * Revert "[Config] iscsitarget -- enable" + * Revert "ubuntu: iscsitarget -- SVN revision r214" + * update Vcs-Git to point to the correct repository + - LP: #493589 + * update build environment overrides to lucid + - LP: #493589 + * [Config] enable CONFIG_DEVTMPFS + * [Config] update all configs following AppArmor 2009-12-08 update + * SAUCE: isapnp_init: make isa PNP scans occur async + * [Config] fsam7400 -- enable + * [Config] omnibook -- enable + * [Config] cleanup CONFIG_AUDIT + * ubuntu: AUFS -- export various core functions (aufs2-base.patch) + * ubuntu: AUFS -- export various core functions (aufs2-standalone.patch) + * ubuntu: AUFS -- aufs2 20091209 + * [Config] AUFS -- enable + * [Config] iscsitarget -- enable + + [ Arjan van de Ven ] + + * SAUCE: KMS: cache the EDID information of the LVDS + + [ Colin Watson ] + + * bnx2: update d-i firmware filenames + - LP: #494052 + * add cdc_ether to nic-usb-modules udeb + - LP: #495060 + + [ John Johansen ] + + * ubuntu: AppArmor -- mainline 2009-10-08 + + [ Manoj Iyer ] + + * ubuntu: fsam7400 -- kill switch for Fujitsu Siemens Amilo M 7400 + * ubuntu: omnibook -- support Toshiba (HP) netbooks + * ubuntu: iscsitarget --- version 1.4.19 + - LP: #494693 + + [ Surbhi Palande ] + + * SAUCE: Make populate_rootfs asynchronous + + [ Tim Gardner ] + + * Parallelize flavour builds and packaging + * [Config] Enable CONFIG_KSM + + [ Upstream Kernel Changes ] + + * Config option to set a default LSM + * LSM: Add security_path_chroot(). + * LSM: Add security_path_chroot(). + * LSM: Move security_path_chmod()/security_path_chown() to after + mutex_lock(). + * ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT + + -- Andy Whitcroft Fri, 11 Dec 2009 17:45:19 +0000 + +linux (2.6.32-7.10) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable CONFIG_THUMB2_KERNEL to fix arm FTBFS + + -- Andy Whitcroft Sun, 06 Dec 2009 12:56:48 +0000 + +linux (2.6.32-7.9) lucid; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: set /proc/acpi/video/*/DOS to 4 by default + - LP: #458982 + * SAUCE: ensure vga16fb loads if no other driver claims the VGA device + * [Config] update configs following versatile switch to V7 + * rebased to v2.6.32 + * [Config] update configs following rebase to v2.6.32 + * [Config] update ports configs following rebase to v2.6.32 + * SAUCE: default ATI Radeon KMS to off until userspace catches up + + [ Arjan van de Ven ] + + * SAUCE: vfs: Add a trace point in the mark_inode_dirty function + + [ Leann Ogasawara ] + + * [SCSI] megaraid_sas: remove sysfs poll_mode_io world writeable + permissions + - CVE-2009-3939 + + [ Loic Minier ] + + * SAUCE: select a v7 CPU for versatile + + [ Takashi Iwai ] + + * SAUCE: ALSA: hda - Add power on/off counter + + [ Upstream changes ] + + * rebased to v2.6.32 + + -- Andy Whitcroft Fri, 04 Dec 2009 10:44:50 +0000 + +linux (2.6.32-6.8) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] disable SSB devices for armel + + -- Andy Whitcroft Sat, 28 Nov 2009 12:16:40 +0000 + +linux (2.6.32-6.7) lucid; urgency=low + + [ Andy Whitcroft ] + + * Revert "SAUCE: default ATI Radeon KMS to off until userspace catches up" + * Revert "SAUCE: Dell XPS710 reboot quirk" + * Revert "SAUCE: Link acpi-cpufreq.o first" + * Revert "SAUCE: LPIA Logical reset of USB port on resume" + * Revert "SAUCE: LPIA Reboot fix for Intel Crownbeach development boards" + * Revert "SAUCE: Enable HDMI audio codec on Studio XPS 1340" + * Revert "SAUCE: Dell laptop digital mic does not work, PCI 1028:0271" + * Revert "Add Dell Dimension 9200 reboot quirk" + * Revert "SAUCE: Correctly blacklist Thinkpad r40e in ACPI" + * Revert "SAUCE: tulip: Define ULI PCI ID's" + * Revert "SAUCE: Lower warning level of some PCI messages" + * Revert "mac80211: fix two issues in debugfs" + Drop a number of known redundant commits as identified in the Ubuntu + delta review blueprint. + + * reenable armel versatile flavour + * [Config] disable CONFIG_USB_DEVICEFS + + [ Tim Gardner ] + + * [Config] udeb: Add squashfs to fs-core-modules + - LP: #352615 + * [Config] Create a real squashfs udeb + - LP: #352615 + + + -- Andy Whitcroft Fri, 27 Nov 2009 17:31:16 +0000 + +linux (2.6.32-5.6) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.32-rc8 + * update configs following rebase to v2.6.32-rc8 + * update ports configs since rebase to v2.6.32-rc8 + * [Config] enable cgroup options + - LP: #480739 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc8 + + -- Andy Whitcroft Mon, 23 Nov 2009 11:16:14 +0000 + +linux (2.6.32-4.5) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] SERIO_LIBPS2 and SERIO_I8042 must match + * rebase to v2.6.32-rc7 + * resync with Karmic proposed + + [ John Johansen ] + + * SAUCE: AppArmor: Fix oops after profile removal + - LP: #475619 + * SAUCE: AppArmor: Fix Oops when in apparmor_bprm_set_creds + - LP: #437258 + * SAUCE: AppArmor: Fix cap audit_caching preemption disabling + - LP: #479102 + * SAUCE: AppArmor: Fix refcounting bug causing leak of creds + - LP: #479115 + * SAUCE: AppArmor: Fix oops there is no tracer and doing unsafe + transition. + - LP: #480112 + + [ Ubuntu Changes ] + + * resync with Karmic proposed (ddbc670a86a3dee18541a3734149f250ff307adf) + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc7 + + -- Andy Whitcroft Fri, 13 Nov 2009 11:35:13 +0000 + +linux (2.6.32-3.4) lucid; urgency=low + + [ Andy Whitcroft ] + + * [Config] SERIO_LIBPS2 and SERIO_I8042 must match + * [Upstream] add local prefix to oss local change_bits + + [ Upstream Kernel Changes ] + + * mtd/maps: gpio-addr-flash: pull in linux/ headers rather than asm/ + * mtd/maps: gpio-addr-flash: depend on GPIO arch support + + -- Andy Whitcroft Wed, 11 Nov 2009 14:47:04 +0000 + +linux (2.6.32-3.3) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.32-rc6 + * [Config] update configs following rebase to v2.6.32-rc6 + * [Config] update ports configs following rebase to v2.6.32-rc6 + * resync with Karmic Ubuntu-2.6.31-15.49 + * [Config] add module ignores for broken drivers + + [ John Johansen ] + + * SAUCE: AppArmor: AppArmor wrongly reports allow perms as denied + - LP: #453335 + * SAUCE: AppArmor: Policy load and replacement can fail to alloc mem + - LP: #458299 + * SAUCE: AppArmor: AppArmor fails to audit change_hat correctly + - LP: #462824 + * SAUCE: AppArmor: AppArmor disallows truncate of deleted files. + - LP: #451375 + + [ Kees Cook ] + + * SAUCE: Fix nx_enable reporting + - LP: #454285 + + [ Scott James Remnant ] + + * Revert "SAUCE: trace: add trace_event for the open() syscall" + * SAUCE: trace: add trace events for open(), exec() and uselib() + - LP: #462111 + + [ Stefan Bader ] + + * SAUCE: Fix sub-flavour script to not stop on missing directories + - LP: #453073 + + [ Ubuntu Changes ] + + * resync with Karmic Ubuntu-2.6.31-15.49 + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc6 + - LP: #464552 + + -- Andy Whitcroft Tue, 10 Nov 2009 15:00:57 +0000 + +linux (2.6.32-2.2) lucid; urgency=low + + [ Andy Whitcroft ] + + * install the full changelog with the binary package + * changelog -- explicitly note rebases and clean history + * reinstate armel.mk with no flavours + - LP: #449637 + * [Upstream] block: silently error unsupported empty barriers too + - LP: #420423 + * [Config] udate configs following karmic resync + * [Config] update ports configs following karmic resync + * [Upstream] lirc -- follow removal of .id element + + [ Colin Watson ] + + * Use section 'admin' rather than 'base' + * Add more e100 firmware to nic-modules + - LP: #451872 + * Add qla1280 firmware to scsi-modules + - LP: #381037 + + [ John Johansen ] + + * SAUCE: AppArmor: Set error code after structure initialization. + - LP: #427948 + * SAUCE: AppArmor: Fix off by 2 error in getprocattr mem allocation + - LP: #446595 + * SAUCE: AppArmor: Fix mediation of "deleted" paths + + [ Kees Cook ] + + * SAUCE: [x86] fix report of cs-limit nx-emulation + - LP: #454285 + + [ Leann Ogasawara ] + + * SAUCE: (drop after 2.6.31) input: Add support for filtering input + events + - LP: #430809 + * SAUCE: (drop after 2.6.31) dell-laptop: Trigger rfkill updates on wifi + toggle switch press + - LP: #430809 + + [ Luke Yelavich ] + + * SAUCE: Add sr_mod to the scsi-modules udeb for powerpc + * [Config] Add sd_mod to scsi-modules udeb for powerpc + + [ Mario Limonciello ] + + * SAUCE: Update to LIRC 0.8.6 + - LP: #432678 + * SAUCE: dell-laptop: Store the HW switch status internally rather than + requerying every time + - LP: #430809 + * SAUCE: dell-laptop: Blacklist machines not supporting dell-laptop + - LP: #430809 + + [ Stefan Bader ] + + * [Upstream] acerhdf: Limit modalias matching to supported boards + - LP: #435958 + + [ Tim Gardner ] + + * [Upstream] i915: Fix i2c init message + - LP: #409361 + * [Config] Add sym53c8xx.ko to virtual sub-flavour + - LP: #439415 + * [Config] Add d101m_ucode.bin to d-i/firmware/nic-modules + - LP: #439456 + * [Config] Set default I/O scheduler back to CFQ for desktop flavours + - LP: #381300 + * SAUCE: Created MODULE_EXPORT/MODULE_IMPORT macros + - LP: #430694 + * SAUCE: Use MODULE_IMPORT macro to tie intel_agp to i915 + - LP: #430694 + * [Config] CONFIG_GFS2_FS_LOCKING_DLM=y + - LP: #416325 + * SAUCE: Fix MODULE_IMPORT/MODULE_EXPORT + - LP: #430694 + * SAUCE: Raise the default console 'quiet' level to 2 + * [Config] CONFIG_X86_PAT=y + * [Config] Add armel arch to linux-libc-dev arches. + - LP: #449637 + * [Config] CONFIG_X86_MCE + * [Upstream] (drop after 2.6.31) Input: synaptics - add another Protege + M300 to rate blacklist + - LP: #433801 + + [ Upstream Kernel Changes ] + + * sgi-gru: Fix kernel stack buffer overrun, CVE-2009-2584 + * drm/i915: Fix FDI M/N setting according with correct color depth + - LP: #416792 + + -- Andy Whitcroft Thu, 22 Oct 2009 16:53:33 +0100 + +linux (2.6.32-1.1) lucid; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.32-rc3 + * [Config] update configs following rebase to 2.6.32-rc3 + * [Config] update ports configs following rebase to 2.6.32-rc3 + * AppArmor -- fix pstrace_may_access rename + * staging/android -- disable + * ubuntu: dm-raid-45 -- update to compile with 2.6.32 + * ubuntu: drbd -- disable + * staging/comdi -- disable + * staging/go7007 -- disable + * [Config] staging/winbond -- disable + * [Config] ubuntu/iscsitarget -- disable + * [d-i] cbc and ecb are builtin make them optional in udebs + * rebase to v2.6.32-rc5 + * [Config] update configs following rebase to v2.6.32-rc5 + * [Config] update ports configs following rebase to v2.6.31-rc5 + + [ Tim Gardner ] + + * [Config] Add cpio as a build dependency. + + [ Upstream Kernel Changes ] + + * rebase to v2.6.32-rc3 + * rebase to v2.6.32-rc5 + + -- Andy Whitcroft Mon, 05 Oct 2009 15:48:58 +0100 + +linux (2.6.31-11.37) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] Increase kernel log buffer to 256K for amd64 flavours + - LP: #424810 + * [Config] Set HZ=100 for amd64 flavours + - LP: #438234 + * [Upstream] e1000e: Emit notice instead of an error when + pci_enable_pcie_error_reporting() fails + - LP: #436370 + + [ Upstream Kernel Changes ] + + * n_tty: honor opost flag for echoes + * n_tty: move echoctl check and clean up logic + - LP: #438310 + + * Revert "[Upstream] drm/i915: Check that the relocation points to within + the target" - Use upstream cherry-pick. + * drm/i915: Check that the relocation points to within the target + - LP: #429241 + + * drm/i915: fix tiling on IGDNG + * drm/i915: add B43 chipset support + * agp/intel: Add B43 chipset support + Intel request from kernel team mailing list. + + * HID: completely remove apple mightymouse from blacklist + - LP: #428111 + + -- Tim Gardner Mon, 28 Sep 2009 11:47:29 -0600 + +linux (2.6.31-11.36) karmic; urgency=low + + [ Brian Rogers ] + + * SAUCE: (drop after 2.6.31) em28xx: ir-kbd-i2c init data needs a + persistent object + * SAUCE: (drop after 2.6.31) saa7134: ir-kbd-i2c init data needs a + persistent object + + [ Takashi Iwai ] + + * [Upstream] ALSA: hda - Add another entry for Nvidia HDMI device + - LP: #416482 + + [ Tyler Hicks ] + + * SAUCE: (drop after 2.6.31) eCryptfs: Prevent lower dentry from going + negative during unlink + + [ Upstream Kernel Changes ] + + * sg: fix oops in the error path in sg_build_indirect() + * mpt2sas : Rescan topology from Interrupt context instead of work thread + * mpt2sas: Prevent sending command to FW while Host Reset + * mpt2sas: setting SDEV into RUNNING state from Interrupt context + * mpt2sas: Raid 10 Volume is showing as Raid 1E in dmesg + * SCSI: fix oops during scsi scanning + * SCSI: libsrp: fix memory leak in srp_ring_free() + * cfg80211: fix looping soft lockup in find_ie() + * ath5k: write PCU registers on initial reset + * binfmt_elf: fix PT_INTERP bss handling + * TPM: Fixup boot probe timeout for tpm_tis driver + * md: Fix "strchr" [drivers/md/dm-log-userspace.ko] undefined! + * x86/amd-iommu: fix broken check in amd_iommu_flush_all_devices + * fix undefined reference to user_shm_unlock + * perf_counter: Fix buffer overflow in perf_copy_attr() + * perf_counter: Start counting time enabled when group leader gets + enabled + * powerpc/perf_counters: Reduce stack usage of power_check_constraints + * powerpc: Fix bug where perf_counters breaks oprofile + * powerpc/ps3: Workaround for flash memory I/O error + * block: don't assume device has a request list backing in nr_requests + store + * agp/intel: remove restore in resume + * ALSA: cs46xx - Fix minimum period size + * ASoC: Fix WM835x Out4 capture enumeration + * sound: oxygen: work around MCE when changing volume + * mlx4_core: Allocate and map sufficient ICM memory for EQ context + * perf stat: Change noise calculation to use stddev + * x86: Fix x86_model test in es7000_apic_is_cluster() + * x86/i386: Make sure stack-protector segment base is cache aligned + * PCI: apply nv_msi_ht_cap_quirk on resume too + * x86, pat: Fix cacheflush address in change_page_attr_set_clr() + * ARM: 5691/1: fix cache aliasing issues between kmap() and kmap_atomic() + with highmem + * KVM guest: do not batch pte updates from interrupt context + * KVM: Fix coalesced interrupt reporting in IOAPIC + * KVM: VMX: Check cpl before emulating debug register access + * KVM guest: fix bogus wallclock physical address calculation + * KVM: x86: Disallow hypercalls for guest callers in rings > 0 + * KVM: VMX: Fix cr8 exiting control clobbering by EPT + * KVM: x86 emulator: Implement zero-extended immediate decoding + * KVM: MMU: make __kvm_mmu_free_some_pages handle empty list + * KVM: x86 emulator: fix jmp far decoding (opcode 0xea) + * KVM: limit lapic periodic timer frequency + * libata: fix off-by-one error in ata_tf_read_block() + * PCI quirk: update 82576 device ids in SR-IOV quirks list + * PCI: Unhide the SMBus on the Compaq Evo D510 USDT + * powerpc/pseries: Fix to handle slb resize across migration + * Linux 2.6.31.1 + + -- Tim Gardner Thu, 24 Sep 2009 13:04:28 -0600 + +linux (2.6.31-10.35) karmic; urgency=low + + [ Amit Kucheria ] + + * Disable CONFIG_UEVENT_HELPER_PATH + + [ Andy Whitcroft ] + + * [Config] Enable CONFIG_USB_GADGET_DUMMY_HCD + * remove the tlsup driver + * remove lmpcm logitech driver support + + [ Bryan Wu ] + + * Add 3 missing files to prerm remove file list + - LP: #345623, #415832 + + [ Chris Wilson ] + + * [Upstream] drm/i915: Check that the relocation points to within the + target + - LP: #429241 + + [ Luke Yelavich ] + + * [Config] Set CONFIG_EXT4_FS=y on ports architectures + + [ Manoj Iyer ] + + * SAUCE: Added quirk to recognize GE0301 3G modem as an interface. + - LP: #348861 + + [ Tim Gardner ] + + * Revert "[Upstream] ACPI: Add Thinkpad W500, W700, & W700ds to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad R400 & Thinkpad R500 to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad X300 & Thinkpad X301 to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad X200, X200s, X200t to OSI(Linux) white-list" + * Revert "[Upstream] ACPI: Add Thinkpad T400 & Thinkpad T500 to OSI(Linux) white-list" + Upstream suggests that this is not the right approach. + + * [Config] Set default I/O scheduler to DEADLINE + CFQ seems to have some load related problems which are often exacerbated by sreadahead. + - LP: #381300 + + [ ubuntu@tjworld.net ] + + * SAUCE: ipw2200: Enable LED by default + - LP: #21367 + + [ Upstream Kernel Changes ] + + * ALSA: hda - Add support for new AMD HD audio devices + - LP: #430564 + + -- Andy Whitcroft Wed, 16 Sep 2009 15:37:49 +0100 + +linux (2.6.31-10.34) karmic; urgency=low + + [ Ted Tso ] + + * [Upstream] ext3: Don't update superblock write time when filesystem is + read-only + - LP: #427822 + + -- Tim Gardner Tue, 15 Sep 2009 16:00:45 -0600 + +linux (2.6.31-10.33) karmic; urgency=low + + [ Leann Ogasawara ] + + * [Upstream] dvb-usb: fix tuning with Cinergy T2 + - LP: #421258 + + [ Tim Gardner ] + + * [Config] Unconditionally copy files from sub-flavours lists. + (really, really fix it this time) + - LP: #423426 + * [Config] Set CONFIG_CACHEFILES=m for all flavours + + [ Upstream Kernel Changes ] + + * ext4: Don't update superblock write time when filesystem is read-only + - LP: #427822 + + -- Tim Gardner Tue, 15 Sep 2009 07:50:21 -0600 + +linux (2.6.31-10.32) karmic; urgency=low + + [ Eric Miao ] + + * [Config] enable module support for memory stick + - LP: #159951 + + [ Tim Gardner ] + + * [Config] Unconditionally copy files from sub-flavours lists. + - LP: #423426 + + -- Tim Gardner Thu, 10 Sep 2009 15:57:55 -0600 + +linux (2.6.31-10.31) karmic; urgency=low + + [ Andy Whitcroft ] + + * rebase to v2.6.31 final + + [ Colin Watson ] + + * [Config] Recommend grub-pc in linux-image + - LP: #385741 + + [ Ike Panhc ] + + * [Upstream] Pull latest update of lenovo-sl-laptop + + [ Peter Feuerer ] + + * [Upstream] (drop after 2.6.31) acerhdf: fix fan control for AOA150 + model + - LP: #426691 + + [ Tim Gardner ] + + * [Config] De-macro some package names. + + [ Upstream Changes ] + + * rebase to 2.6.31 final. + + -- Andy Whitcroft Thu, 10 Sep 2009 09:38:10 +0100 + +linux (2.6.31-10.30) karmic; urgency=low + + [ Amit Kucheria ] + + * [Config] Enable CONFIG_USB_DEVICEFS + - LP: #417748 + * [Config] Populate the config-update template a bit more + + [ Andy Whitcroft ] + + * rebase to v2.6.31-rc9 + * [Config] update configs following rebase to v2.6.31-rc9 + * [Config] update ports configs following rebase to v2.6.31-rc9 + + [ Colin Ian King ] + + * SAUCE: wireless: hostap, fix oops due to early probing interrupt + - LP: #254837 + + [ Jerone Young ] + + * [Upstream] ACPI: Add Thinkpad T400 & Thinkpad T500 to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad X200, X200s, X200t to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad X300 & Thinkpad X301 to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad R400 & Thinkpad R500 to OSI(Linux) + white-list + - LP: #281732 + * [Upstream] ACPI: Add Thinkpad W500, W700, & W700ds to OSI(Linux) + white-list + - LP: #281732 + + [ John Johansen ] + + * SAUCE: AppArmor: Fix profile attachment for regexp based profile names + - LP: #419308 + * SAUCE: AppArmor: Return the correct error codes on profile + addition/removal + - LP: #408473 + * SAUCE: AppArmor: Fix OOPS in profile listing, and display full list + - LP: #408454 + * SAUCE: AppArmor: Fix mapping of pux to new internal permission format + - LP: #419222 + * SAUCE: AppArmor: Fix change_profile failure + - LP: #401931 + * SAUCE: AppArmor: Tell git to ignore generated include files + - LP: #419505 + + [ Stefan Bader ] + + * [Upstream] acpi: video: Loosen strictness of video bus detection code + - LP: #333386 + * SAUCE: Remove ov511 driver from ubuntu subdirectory + + [ Tim Gardner ] + + * [Config] Exclude char-modules from non-x86 udeb creation + * SAUCE: Notify the ACPI call chain of AC events + * [Config] CONFIG_SATA_VIA=m + - LP: #403385 + * [Config] Build in all phylib support modules. + * [Config] Don't fail when sub-flavour files are missing + - LP: #423426 + * [Config] Set CONFIG_LSM_MMAP_MIN_ADDR=0 + - LP: #423513 + + [ Upstream ] + + * Rebased against v2.6.31-rc9 + + -- Andy Whitcroft Mon, 07 Sep 2009 11:33:45 +0100 + +linux (2.6.31-9.29) karmic; urgency=low + + [ Leann Ogasawara ] + + * [Upstream] agp/intel: support for new chip variant of IGDNG mobile + - LP: #419993 + * [Config] d-i/modules: Add new char-modules file, initialize with + intel-agp + - LP: #420605 + + [ Upstream ] + + * Rebased against 2.6.31-rc8 plus some inotify regression patches: + up through git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git + adda766193ea1cf3137484a9521972d080d0b7af. + + -- Tim Gardner Fri, 28 Aug 2009 06:31:30 -0600 + +linux (2.6.31-8.28) karmic; urgency=low + + [ Ike Panhc ] + + * [Config] Let nic-shared-modules depends on crypto-modules + - LP: #360966 + + [ Leann Ogasawara ] + + * [Upstream] (drop after 2.6.31) drm/i915: increase default latency + constant + - LP: #412492 + + [ Mario Limonciello ] + + * [Upstream]: (drop after 2.6.31) dell-laptop: don't change softblock + status if HW switch is disabled + - LP: #418721 + * [Upstream]: (drop after 2.6.31) compal-laptop: Add support for known + Compal made Dell laptops + * [Upstream]: (drop after 2.6.31) compal-laptop: Replace sysfs support + with rfkill support + + [ Tim Gardner ] + + * [Config] Add acpiphp to virtual sub-flavour + - LP: #364916 + * Drop KSM patch set for now because of instabilities with encrypted swap. + - LP: #418781 + + -- Tim Gardner Wed, 26 Aug 2009 08:14:26 -0600 + +linux (2.6.31-7.27) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] updateconfigs updateportsconfigs after 2.6.31-rc7 rebase + * SAUCE: (drop after 2.6.31) Added KSM from mmotm-2009-08-20-19-18 + Replaces previous ksm patches from 2.6.31-6.25 + * [Config] KSM=y + + [ Upstream ] + + * Rebased against v2.6.31-rc7 + + -- Tim Gardner Sat, 22 Aug 2009 20:32:11 -0600 + +linux (2.6.31-6.26) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] enable CONFIG_AUFS_BR_RAMFS + - LP: #414738 + * split out debian directory ready for abstraction + * add printdebian target to find branch target + * abstracted debian -- debian/files is not abstracted + * abstracted debian -- packages must be built in debian/ + * abstracted debian -- kernel-wedge needs to work in debian/ + * abstracted debian -- ensure we install the copyright file + * abstracted-debian -- drop the debian directories from headers + * abstracted-debian -- drop the debian directories from headers part 2 + * SAUCE: ubuntu-insert-changes -- follow abstracted debian + * [Upstream] aoe: ensure we initialise the request_queue correctly V2 + - LP: #410198 + + [ Luke Yelavich ] + + * [Config] Ports: Disable CONFIG_CPU_FREQ_DEBUG on powerpc-smp + * [Config] Ports: Re-enable windfarm modules on powerpc64-smp + - LP: #413150 + * [Config] Ports: Build all cpu frequency scaling governors into ports + kernels + * [Config] Ports: Build ext2 and ext3 modules into ports kernels + * [Config] Ports: CONFIG_PACKET=y for all ports kernels + * [Config] Ports: Enable PS3 network driver + + [ Stefan Bader ] + + * abstracted debian -- call $(DEBIAN)/rules using make + + [ Tim Gardner ] + + * [Config] Abstract the debian directory + * SAUCE: Improve error reporting in postinst + - LP: #358564 + + -- Tim Gardner Sun, 16 Aug 2009 20:33:28 -0600 + +linux (2.6.31-6.25) karmic; urgency=low + + [ Andy Whitcroft ] + + * script to generate Ubuntu changes from changelog + * [Config] standardise ANDROID options + * [Config] standardise CONFIG_ATM as module + * [Config] standardise CONFIG_LIB80211 as module + * [Config] disable CONFIG_PRINT_QUOTA_WARNING + * [Config] set CONFIG_CRAMFS as module + * [Config] enable CONFIG_DAB and modules + * [Config] set CONFIG_MAC80211_HWSIM as module + * [Config] set CONFIG_NET_CLS_FLOW as module + * [Config] set CONFIG_NF_CONNTRACK_SANE as module + * [Config] set CONFIG_NF_CT_PROTO_DCCP as module + * [Config] set CONFIG_RTC_DRV_DS1511 as module + * [Config] set CONFIG_RTC_DRV_R9701 as module + * [Config] set CONFIG_RTC_DRV_S35390A as module + * [Config] set CONFIG_TOIM3232_DONGLE as module + * [Config] standardise CONFIG_USB_MIDI_GADGET as module + * [Config] standardise CONFIG_USB_G_PRINTER as module + * [Config] standardise CONFIG_USB_SERIAL_IR as module + * [Config] set CONFIG_USB_SERIAL_IUU as module + * [Config] standardise CONFIG_USB_STORAGE_CYPRESS_ATACB as module + * [Config] standardise CONFIG_USB_STORAGE_ONETOUCH as module + * cleanup remains of dm-loop + * drop thinkpad ec and smapi support + * drop appleir + * [Config] update configs following rebase to v2.6.31-rc6 + * rebase to v2.6.31-rc6 + + [ Hugh Dickins ] + + * SAUCE: ksm patch 1, drop after 2.6.31 + * SAUCE: ksm patch 2, drop after 2.6.31 + * SAUCE: ksm patch 3, drop after 2.6.31 + * SAUCE: ksm patch 4, drop after 2.6.31 + * SAUCE: ksm patch 5, drop after 2.6.31 + * SAUCE: ksm patch 7, drop after 2.6.31 + + [ Izik Eidus ] + + * SAUCE: ksm patch 0, drop after 2.6.31 + * SAUCE: ksm patch 6, drop after 2.6.31 + * SAUCE: ksm patch 8, drop after 2.6.31 + * SAUCE: ksm patch 9, drop after 2.6.31 + + [ Luke Yelavich ] + + * [Config] Ports: Re-add PS3 modules to udebs + + [ Michael Casadevall ] + + * [Config] Update SPARC config and d-i files to reflect what can be built + + [ Tim Gardner ] + + * [Config] Removed armel package support + * [Config] Enabled CONFIG_KSM=y + + [ Upstream Kernel Changes ] + + * Rebased against v2.6.31-rc6 + * ARM: Cleanup: Revert "ARM: Add more cache memory types macros" + * ARM: Cleanup: Revert "Do not use OOB with MLC NAND" + * ARM: Cleanup: Revert "ARM: Make ARM arch aware of ubuntu/ drivers" + * ARM: Cleanup: Revert "ARM: IMX51: Make video capture drivers compile" + * ARM: Cleanup: Revert "ARM: IMX51: Fix isl29003 HWMON driver for i2c + changes" + * ARM: Cleanup: Revert "ARM: IMX51: IPU irq handler deadlock fix" + * ARM: Cleanup: Revert "ARM: IMX51: Babbage 2.5 needs a different system + revision" + * ARM: Cleanup: Revert "ARM: IMX51: Compile-in the IMX51 cpufreq driver + by default" + * ARM: Cleanup: Revert "ARM: IMX51: Enable ZONE_DMA for ARCH_MXC" + * ARM: Cleanup: Revert "ARM: IMX51: Make ARCH_MXC auto-enable + ARCH_MXC_CANONICAL" + * ARM: Cleanup: Revert "ARM: IMX51: Unconditionally disable + CONFIG_GPIOLIB" + * ARM: Cleanup: Revert "ARM: IMX51: Minimal changes for USB to work on + 2.6.31" + * ARM: Cleanup: Revert "ARM: IMX51: Fix plat-mxc/timer.c to handle imx51" + * ARM: Cleanup: Revert "ARM: IMX51: Make it compile." + * ARM: Cleanup: Revert "ARM: IMX51: Clean-up the craziness of including + mxc_uart.h _everywhere_" + * ARM: Cleanup: Revert "ARM: IMX51: Move board-mx51* header files to the + correct location" + * ARM: Cleanup: Revert "ARM: IMX51: Changed from snd_card_new to + snd_card_create" + * ARM: Cleanup: Revert "ARM: IMX51: Fix up merge error in Kconfig" + * ARM: Cleanup: Revert "ARM: IMX51: mxc_timer_init prototype" + * ARM: Cleanup: Revert "ARM: IMX51: Removed the mxc_gpio_port structure." + * ARM: Cleanup: Revert "ARM: IMX51: Added external declaration for + mxc_map_io." + * ARM: Cleanup: Revert "ARM: IMX51: Get to bus_id by calling dev_name." + * ARM: Cleanup: Revert "ARM: IMX51: Get to bus_id by calling dev_name." + * ARM: Cleanup: Revert "ARM: IMX51: snd_soc_machine structure replaced + with snd_soc_card." + * ARM: Cleanup: Revert "ARM: IMX51: codec structure was moved to the card + structure" + * ARM: Cleanup: Revert "ARM: IMX51: Hack to add defines for + DMA_MODE_READ/WRITE/MASK" + * ARM: Cleanup: Revert "ARM: IMX51: Add SoC and board support for + Freescale mx51 platform" + * Driver core: add new device to bus's list before probing + * [Upstream] (drop after 2.6.31) ALSA: hda - Reduce click noise at + power-saving + - LP: #381693, #399750, #380892 + + -- Andy Whitcroft Fri, 14 Aug 2009 11:32:23 +0100 + +linux (2.6.31-5.24) karmic; urgency=low + + [ Amit Kucheria ] + + * ARM: IMX51: Make video capture drivers compile + * [Config] IMX51: Config updates + + [ Andy Whitcroft ] + + * remove leftovers of dm-bbr + + [ Leann Ogasawara ] + + * Add pata_cs5535 to pata-modules + - LP: #318805 + + [ Luke Yelavich ] + + * [Config] CONFIG_PPC64=y for powerpc64-smp + * [Config] Set the maximum number of CPUs to 1024 for powerpc64-smp + * [Config] CONFIG_PPC_PS3=y for powerpc64-smp + * [Config] CONFIG_PPC_MAPLE=y on powerpc64-smp + * [Config] CONFIG_PPC_PASEMI=y on powerpc64-smp + * [Config] CONFIG_CPU_FREQ_PMAC64=y on powerpc64-smp + * [Config] Enable all PS3 drivers in powerpc64-smp + + [ Mario Limonciello ] + + * LIRC -- fix lirc-i2c 2.6.31 compilation + + [ Matthew Garrett ] + + * [Upstream] dell-laptop: Fix rfkill state queries + + [ Tim Gardner ] + + * [Config] Ignore armel ABI and module changes + * [Config] Update configs after rebase against 2.6.31-rc5 + + [ Upstream ] + + * Rebased to 2.6.31-rc5 + + -- Andy Whitcroft Tue, 28 Jul 2009 10:10:09 +0100 + +linux (2.6.31-4.23) karmic; urgency=low + + [ Andy Whitcroft ] + + * AUFS -- update to aufs2-30 20090727 + * [Config] enable AUFS FUSE support + + [ Luke Yelavich ] + + * [Config] CONFIG_JFS_FS=m on sparc + + [ Tim Gardner ] + + * [Upstream] dell-laptop: Fix rfkill state setting. + + -- Andy Whitcroft Mon, 27 Jul 2009 11:11:47 +0100 + +linux (2.6.31-4.22) karmic; urgency=low + + [ Amit Kucheria ] + + * ARM: IMX51: Add SoC and board support for Freescale mx51 platform + * ARM: IMX51: Move board-mx51* header files to the correct location + * ARM: IMX51: Clean-up the craziness of including mxc_uart.h _everywhere_ + * ARM: IMX51: Make it compile. + * ARM: IMX51: Unconditionally disable CONFIG_GPIOLIB + * ARM: IMX51: Make ARCH_MXC auto-enable ARCH_MXC_CANONICAL + * ARM: IMX51: Enable ZONE_DMA for ARCH_MXC + * ARM: IMX51: Compile-in the IMX51 cpufreq driver by default + * ARM: IMX51: Fix isl29003 HWMON driver for i2c changes + * ARM: USB: musb: Refer to musb_otg_timer_func under correct #ifdef + * ARM: staging: udlfb: Add vmalloc.h include + * UBUNTU [Config]: Bring imx51 config upto date with other flavours + + [ Brad Figg ] + + * ARM: IMX51: Hack to add defines for DMA_MODE_READ/WRITE/MASK + * ARM: IMX51: codec structure was moved to the card structure + * ARM: IMX51: snd_soc_machine structure replaced with snd_soc_card. + * ARM: IMX51: Get to bus_id by calling dev_name. + * ARM: IMX51: Get to bus_id by calling dev_name. + * ARM: IMX51: Added external declaration for mxc_map_io. + * ARM: IMX51: Removed the mxc_gpio_port structure. + * ARM: IMX51: mxc_timer_init prototype + * ARM: IMX51: Fix up merge error in Kconfig + * ARM: IMX51: Changed from snd_card_new to snd_card_create + + [ Dinh Nguyen ] + + * ARM: IMX51: Fix plat-mxc/timer.c to handle imx51 + * ARM: IMX51: Minimal changes for USB to work on 2.6.31 + * ARM: IMX51: Babbage 2.5 needs a different system revision + * ARM: IMX51: IPU irq handler deadlock fix + + [ Tim Gardner ] + + * [Config] Enabled CONFIG_CAN=m + - LP: #327243 + * [Config] Enabled CONFIG_SERIAL=m + - LP: #397189 + + -- Tim Gardner Fri, 24 Jul 2009 06:19:10 -0600 + +linux (2.6.31-4.21) karmic; urgency=low + + [ Amit Kucheria ] + + * dm-raid-4-5: Add missing brackets around test_bit() + + [ John Johansen ] + + * AppArmor: Fix change_profile failing lpn401931 + * AppArmor: Fix determination of forced AUDIT messages. + * AppArmor: Fix oops in auditing of the policy interface offset + + -- Andy Whitcroft Thu, 23 Jul 2009 19:18:30 +0100 + +linux (2.6.31-4.20) karmic; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: iscsitarget -- update to SVN revision r214 + * SAUCE: iscsitarget -- renable driver + * [Config] consolidate lpia/lpia and i386/generic configs + * [Config] enable CRYPTO modules for all architectures + * [Config] enable cryptoloop + * [Config] enable various filesystems for armel + * [Config] sync i386 generic and generic-pae + * [Config] add the 386 (486 processors and above) flavour + * [Config] re-set DEFAULT_MMAP_MIN_ADDR + - LP: #399914 + * add genconfigs/genportsconfigs to extract the built configs + * updateconfigs -- alter concatenation order allow easier updates + * intelfb -- INTELFB now conflicts with DRM_I915 + * printchanges -- rebase tree does not have stable tags use changelog + * AppArmor: fix argument size missmatch on 64 bit builds + + [ Ike Panhc ] + + * Ship bnx2x firmware in nic-modules udeb + - LP: #360966 + + [ Jeff Mahoney ] + + * AppArmor: fix build failure on ia64 + + [ John Johansen ] + + * AppArmour: ensure apparmor enabled parmater is off if AppArmor fails to + initialize. + * AppArmour: fix auditing of domain transitions to include target profile + information + * AppArmor: fix C99 violation + * AppArmor: revert reporting of create to write permission. + * SAUCE: Add config option to set a default LSM + * [Config] enable AppArmor by default + * AppArmor: Fix NULL pointer dereference oops in profile attachment. + + [ Keith Packard ] + + * SAUCE: drm/i915: Allow frame buffers up to 4096x4096 on 915/945 class + hardware + - LP: #351756 + + [ Luke Yelavich ] + + * [Config] add .o files found in arch/powerpc/lib to all powerpc kernel + header packages + - LP: #355344 + + [ Michael Casadevall ] + + * [Config] update SPARC config files to allow success build + + [ Scott James Remnant ] + + * SAUCE: trace: add trace_event for the open() syscall + + [ Stefan Bader ] + + * SAUCE: jfs: Fix early release of acl in jfs_get_acl + - LP: #396780 + + [ Tim Gardner ] + + * [Upstream] Fix Soltech TA12 volume hotkeys not sending key release + - LP: #397499 + * [Upstream] USB Option driver - Add USB ID for Novatel MC727/U727/USB727 + refresh + - LP: #365291 + * [Config] SSB/B44 are common across all arches/flavours. + + [ Upstream ] + + * Rebased to 2.6.31-rc4 + + -- Andy Whitcroft Thu, 23 Jul 2009 08:41:39 +0100 + +linux (2.6.31-3.19) karmic; urgency=low + + [ Andy Whitcroft ] + + * Revert "[Config] Disabled NDISWRAPPER" + * ndiswrapper -- fix i386 compilation failures on cmpxchg8b + * AUFS -- export various core functions + * AUFS -- export various core functions -- fixes + * AUFS -- core filesystem + * AUFS -- track changes in v2.6.31 + * [Config] Enable AUFS + * droppped 'iwl3945: do not send scan command if channel count zero' as it + is already upstream but failed to auto-drop on rebase. + + [ Eric Paris ] + + * SAUCE: fsnotify: use def_bool in kconfig instead of letting the user + choose + * SAUCE: inotify: check filename before dropping repeat events + * SAUCE: fsnotify: fix inotify tail drop check with path entries + + -- Andy Whitcroft Tue, 14 Jul 2009 12:52:55 +0100 + +linux (2.6.31-3.18) karmic; urgency=low + + [ Andy Whitcroft ] + + * Revert "Add splice-2.6.23.patch from AUFS to export a symbol needed by + AUFS" + * Revert "Add put_filp.patch from AUFS to export a symbol needed by AUFS" + * Revert "Add sec_perm-2.6.24.patch from AUFS - export + security_inode_permission" + * clear out left over AUFS files and modifications + + [ Luke Yelavich ] + + * [Config] Enable CONFIG_USB_ISP116X_HCD on sparc + * SAUCE: Explicitly include header files to allow apparmor to build on + powerpc + * [Config] Enable CONFIG_BLK_DEV_IDECD on powerpc + + [ Tim Gardner ] + + * [Config] Dropped ubuntu/misc/wireless/acx + * [Config] Disabled NDISWRAPPER until the compile issues are fixed. + + [ Upstream ] + + * Rebased to 2.6.31-rc3 + + -- Andy Whitcroft Fri, 10 Jul 2009 18:59:33 +0100 + +linux (2.6.31-2.17) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_BLK_DEV_CRYPTOLOOP=m for sparc + * compcache -- remove redundant Kconfig entries part 2 + * compcache -- clean up CCFLAGS declarations + * [Config] enable AppArmor + * AppArmor: fix operator precidence issue in as_path_link + + [ John Johansen ] + + * AppArmor security module + * AppArmor: Correct mapping of file permissions. + * AppArmor: Turn auditing of ptrace on + + [ Luke Yelavich ] + + * [Config] disable CONFIG_DM_RAID45 on powerpc + + -- Andy Whitcroft Fri, 10 Jul 2009 15:02:05 +0100 + +linux (2.6.31-2.16) karmic; urgency=low + + [ Andy Whitcroft ] + + * compcache -- remove redundant Kconfig entries + added ignore and ignore.modules for all arches since the compcache update + changes the modules names as well as some compcache ABI values. + + [ Manoj Iyer ] + + * SAUCE: updated dm-raid45 module version to 2009.04.24 (2.6.30-rc3) + * SAUCE: update compcache version to 0.5.3 + + [ Tim Gardner ] + + * [Config]: Fix sparc FTBS by adding ignore.modules + + -- Tim Gardner Mon, 06 Jul 2009 13:35:29 -0600 + +linux (2.6.31-2.15) karmic; urgency=low + + [ Andy Whitcroft ] + + * SAUCE: default ATI Radeon KMS to off until userspace catches up + * [Config] Update configs following rebase to 2.6.31-rc2 + * [Config] update ports configs following update to 2.6.31-rc2 + + [ Luke Yelavich ] + + * [Config] powerpc - Disable CONFIG_RDS + + [ Matt Zimmerman ] + + * Rename linux-doc-PKGVER to linux-doc and clean up its description + - LP: #382115 + + [ Upstream Kernel Changes ] + + * rebased to mainline 2.6.31-rc2 + + -- Andy Whitcroft Sat, 04 Jul 2009 17:39:13 +0100 + +linux (2.6.31-1.14) karmic; urgency=low + + [ Andy Whitcroft ] + + * update ndiswrapper to 1.55 + * remove leftovers of gfs + * [Config] powerpc: enable CONFIG_PPC_DISABLE_WERROR + + [ Luke Yelavich ] + + * [Config] re-enable and build the ide-pmac driver into powerpc kernels + * [Config] Build the ServerWorks Frodo / Apple K2 SATA driver into the + kernel + + [ Manoj Iyer ] + + * Remove snd-bt-sco ubuntu driver + + [ Michael Casadevall ] + + * [Config] updates ia64 config and d-i folders to allow succesful build + * [Config] Update powerpc and sparc for 2.6.31 + + [ Upstream Kernel Changes ] + + * intel-iommu: fix Identity Mapping to be arch independent + - LP: #384695 + * ACPI: video: prevent NULL deref in acpi_get_pci_dev() + + -- Andy Whitcroft Tue, 30 Jun 2009 17:47:32 +0100 + +linux (2.6.31-1.13) karmic; urgency=low + + [ Andy Whitcroft ] + + * REBASE: rebased to mainline 2.6.31-rc1 + - "UBUNTU: SAUCE: UHCI USB quirk for resume" + no longer applies, using deprecated interfaces, LPIA only, dropped + - "UBUNTU: SAUCE: Mask off garbage in Dell WMI scan code data" + changes now upstream, dropped + * [Config] Update configs following rebase to 2.6.31-rc1 + * [Config] update ports configs following update to 2.6.31-rc1 + + * [Config] disable broken staging driver CONFIG_STLC45XX + * SAUCE: fix compcache to use updates accessors + * [Config] disable staging driver CONFIG_VT6655 + * SAUCE: fix DRDB to use updates accessors + * [Disable] ndiswrapper needs update + * [Disable] LIRC I2C needs update + * [Disable] CONFIG_LENOVO_SL_LAPTOP needs update + * [Config] disable I2C_DESIGNWARE does not compile + * [Config] disable CONFIG_TLSUP for lpia + * [Config] disable CONFIG_FB_UDL for arm + * SAUCE: disable adding scsi headers to linux-libc-dev + + [ Mario Limonciello ] + + * SAUCE: Add LIRC drivers + + -- Andy Whitcroft Thu, 25 Jun 2009 12:06:22 +0100 + +linux (2.6.30-10.12) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] split out the ports configs into their own family + * [Config] update configs following introduction of ports family + + [ Upstream Kernel Changes ] + + * Revert "Rename linux-doc-PKGVER to linux-doc and clean up its + description". Fixes linux-doc package name conflicts for now. + - LP: #382115 + + -- Tim Gardner Mon, 22 Jun 2009 09:17:14 -0600 + +linux (2.6.30-10.11) karmic; urgency=low + + [ Amit Kucheria ] + + * [Config] Comment splitconfig.pl and misc cleanup + * [Config] Rename all configs to the new naming scheme + * [Config] Splitconfig rework + * [Config] Rename scripts/misc/oldconfig to kernelconfig + * [Config] Fix build system for new config split + * [Config] Run updateconfigs after the splitconfig rework + + [ Andy Whitcroft ] + + * Revert "SAUCE: Default to i915.modeset=0 if CONFIG_DRM_I915_KMS=y" + * [Config] standardise CONFIG_STAGING=y + * [Config] standardise CONFIG_RD_LZMA=y + * [Config] CONFIG_PCI_IOV=y + * [Config] CONFIG_PCI_STUB=m + * [Config] merge kernel configs more agressively + + [ Colin Watson ] + + * [Config] Run kernel-wedge in $(builddir) rather than at the top level + * [Config] Add support for including firmware in udebs + * [Config] Ship bnx2 firmware in nic-modules udeb + - LP: #384861 + + [ Luke Yelavich ] + + * [Config] ports - Import of ports architectures into kernel packaging + infrastructure + * [Config] ports - Do not update ports kernel configurations by default + * [Config] ports - Disable ABI checking for ports architectures + * [Config] ports - Build drivers in ubuntu sub-directory on powerpc + * [Config] ports - Add control.d/vars.* files for ports architectures + * [Config] ports - Add ports architectures for linux-libc-dev + * [Config] ports - Create powerpc specific message-modules and + block-modules udebs + * [Config] ports - Add configuration files for ports architectures + + [ Manoj Iyer ] + + * [Config] Enable CONFIG_BLK_DEV_AEC62XX=m for amd64 and i386 + - LP: #329864 + + [ Michael Casadevall ] + + * [Config] ports - Fix compression of kernels + + [ Stefan Bader ] + + * [Upstream] mmc: prevent dangling block device from accessing stale + queues + - LP: #383668 + + [ Tim Gardner ] + + * [Config] Recommend grub-pc in linux-image + - LP: #385741 + * [Config] Implement i386 generic and generic-pae flavours + * [Config] ports - Add control info after integrating ports arches + * [Config] Removed auto-generated files from git + * [Config] Added netxen_nic to nic-modules + - LP: #389603 + + [ Matt Zimmerman ] + + * Rename linux-doc-PKGVER to linux-doc and clean up its description + - LP: #382115 + + -- Tim Gardner Mon, 15 Jun 2009 14:38:26 -0600 + +linux (2.6.30-9.10) karmic; urgency=low + + [ Andy Whitcroft ] + + * [Config] CONFIG_SECURITY_TOMOYO=y (amd64, i386, lpia) + * [Config] CONFIG_KEXEC_JUMP=y (amd64, lpia) + * [Config] CONFIG_LENOVO_SL_LAPTOP=m (amd64, lpia) + * [Config] CONFIG_POHMELFS_CRYPTO=y (i386, amd64) + * [Config] CONFIG_SERIAL_MAX3100=m (i386, amd64, lpia) + * [Config] CONFIG_VIDEO_GO7007=m (amd64, i386) + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30 final + + -- Andy Whitcroft Fri, 05 Jun 2009 11:42:53 +0100 + +linux (2.6.30-8.9) karmic; urgency=low + + [ Andy Whitcroft ] + + * Config update removed the following options: + CONFIG_EDAC_AMD8111=m + CONFIG_EDAC_AMD8131=m + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc8 + + -- Andy Whitcroft Wed, 03 Jun 2009 09:21:13 +0100 + +linux (2.6.30-7.8) karmic; urgency=low + + [ Andy Whitcroft ] + + * Enabled NEW configration options: + Paravirtualization layer for spinlocks (PARAVIRT_SPINLOCKS) [N/y/?] Y + Cisco FNIC Driver (FCOE_FNIC) [N/m/y/?] M + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc7 + + -- Andy Whitcroft Sat, 23 May 2009 23:47:24 +0100 + +linux (2.6.30-6.7) karmic; urgency=low + + [ Andy Whitcroft ] + + * Dropped: UBUNTU: SAUCE: input: Blacklist digitizers from joydev.c (now + upstream) + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc6 + + -- Andy Whitcroft Mon, 18 May 2009 18:05:54 +0100 + +linux (2.6.30-5.6) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] Enable Keyspan USB serial device firmware in kernel module + - LP: #334285 + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc5 + + -- Tim Gardner Mon, 11 May 2009 12:02:16 -0600 + +linux (2.6.30-4.5) karmic; urgency=low + + [ Colin Watson ] + + * Build-Conflict with findutils (= 4.4.1-1ubuntu1), to avoid + /usr/include/asm/* going missing + - LP: #373214 + + -- Stefan Bader Fri, 08 May 2009 11:09:08 +0200 + +linux (2.6.30-3.4) karmic; urgency=low + + [ Kees Cook ] + + * SAUCE: [x86] implement cs-limit nx-emulation for ia32 + - LP: #369978 + + [ Stefan Bader ] + + * SAUCE: input: Blacklist digitizers from joydev.c + - LP: #300143 + + -- Tim Gardner Fri, 01 May 2009 14:00:42 -0600 + +linux (2.6.30-2.3) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] Enabled CC_STACKPROTECTOR=y for all x86en + - LP: #369152 + * SAUCE: Default to i915_modeset=0 if CONFIG_DRM_I915_KMS=y + * [Config] CONFIG_DRM_I915_KMS=y + * [Config] Set CONFIG_SECURITY_DEFAULT_MMAP_MIN_ADDR to appropriate ARCH + minimums + + [ Upstream Kernel Changes ] + + * rebased to 2.6.30-rc4 + + -- Tim Gardner Thu, 30 Apr 2009 09:17:05 -0600 + +linux (2.6.30-1.2) karmic; urgency=low + + [ Tim Gardner ] + + * [Config] armel: disable staging drivers, fixes FTBS + * [Config] armel imx51: Disable CONFIG_MTD_NAND_MXC, fixes FTBS + + [ Upstream Kernel Changes ] + + * mpt2sas: Change reset_type enum to avoid namespace collision. + Submitted upstream. + + -- Tim Gardner Tue, 28 Apr 2009 16:54:41 -0600 + +linux (2.6.30-1.1) karmic; urgency=low + + * Initial release after rebasing against v2.6.30-rc3 + + -- Tim Gardner Thu, 12 Mar 2009 19:16:07 -0600 --- linux-3.13.0.orig/debian/cloud-tools/hv_get_dhcp_info +++ linux-3.13.0/debian/cloud-tools/hv_get_dhcp_info @@ -0,0 +1,55 @@ +#!/bin/bash + +# This example script retrieves the DHCP state of a given interface. +# In the interest of keeping the KVP daemon code free of distro specific +# information; the kvp daemon code invokes this external script to gather +# DHCP setting for the specific interface. +# +# Input: Name of the interface +# +# Output: The script prints the string "Enabled" to stdout to indicate +# that DHCP is enabled on the interface. If DHCP is not enabled, +# the script prints the string "Disabled" to stdout. +# +# Each Distro is expected to implement this script in a distro specific +# fashion. + +#set -x + +IF_FILE="/etc/network/interfaces" +NMCMD="nmcli" + +function checknetworkmanager { + #Assumes if $NMCMD exists, inteface exists and interface is not + # in $IF_FILE then dhcp is being used by NM + if hash $NMCMD >/dev/null 2>&1 ; then + if $NMCMD dev status |grep -q $1 ; then + echo "Enabled" + else + echo "Disabled" + fi + else + #Give up + echo "Disabled" + fi +} + +if [ -z $1 ] ; then echo "Disabled"; exit; fi + +if [ -e $IF_FILE ]; then + if grep -v -e "^#" $IF_FILE|grep -q $1 ; then + #interface exists so + if grep -q -e $1\.\*dhcp $IF_FILE; then + echo "Enabled"; exit; + else + echo "Disabled"; exit; + fi + else + checknetworkmanager $1 + exit + fi +else + checknetworkmanager $1 + exit +fi + --- linux-3.13.0.orig/debian/cloud-tools/hv_get_dns_info +++ linux-3.13.0/debian/cloud-tools/hv_get_dns_info @@ -0,0 +1,13 @@ +#!/bin/bash + +# This example script parses /etc/resolv.conf to retrive DNS information. +# In the interest of keeping the KVP daemon code free of distro specific +# information; the kvp daemon code invokes this external script to gather +# DNS information. +# This script is expected to print the nameserver values to stdout. +# Each Distro is expected to implement this script in a distro specific +# fashion. For instance on Distros that ship with Network Manager enabled, +# this script can be based on the Network Manager APIs for retrieving DNS +# entries. + +cat /etc/resolv.conf 2>/dev/null | awk '/^nameserver/ { print $2 }' --- linux-3.13.0.orig/debian/cloud-tools/hv_set_ifconfig +++ linux-3.13.0/debian/cloud-tools/hv_set_ifconfig @@ -0,0 +1,224 @@ +#! /usr/bin/env python + +# set interfaces in hv_kvp_daemon style +import fileinput +import sys +import errno +import os +import shutil +import tempfile +import subprocess + +if_filename="/etc/network/interfaces" + +'''Get quiet''' +sys.stdout = open(os.devnull, 'w') +sys.stderr = open(os.devnull, 'w') + +try: + if_file=open(if_filename,"r+") +except IOError as e: + exit(e.errno) +else: + if_file.close() + + +def kvp_dict(file): + return dict(line.strip().split("=") for line in file) + + +#setting the hwaddress to something azure is not expecting is fatal networking + +if len(sys.argv) != 2 : + exit(errno.EINVAL) + +kvp=dict(line.strip().split("=") for line in fileinput.input()) + +if not "HWADDR" in kvp : + exit(errno.EPROTO) + +if not "DEVICE" in kvp : + exit(1) + +output=[] +basename=kvp["DEVICE"] + +if "DHCP" in kvp and kvp["DHCP"]=="yes" : + output += ["auto " + basename] + output += ["iface " + basename + " inet dhcp"] + output += [""] +else: + ''' Matchup the interface specific lines ''' + + '''DNS entries will go with the first interface + and there can be a max of three''' + autolist=[] + dns=[] + if "DNS1" in kvp : + dns+=[kvp["DNS1"]] + if "DNS2" in kvp : + dns+=[kvp["DNS2"]] + if "DNS3" in kvp : + dns+=[kvp["DNS3"]] + + + ''' + No real max for the number of interface + aliases ... + only required is the address (but mate everything up that comes in. ''' + + '''ipv4 first''' + + v4names=[name for name in kvp.keys() if name.startswith("IPADDR")] + v4names.sort() + + v6names=[name for name in kvp.keys() if name.startswith("IPV6ADDR")] + v6names.sort() + + '''IPV6 requires a netmask''' + '''If an ipv6 exists, you'll want to turn off /proc/sys/net/ipv6/conf/all/autoconf with + up echo 0 > /proc/sys/net/ipv6/conf/all/autoconf''' + + '''Counter needs to increment as soon as any interface is set.''' + + + if_count=0 + + for v4 in v4names: + ifname=basename + suffix="" + if if_count : + ifname+=":" + str(if_count) + suffix="_"+str(if_count) + if not ifname in autolist: + autolist += [ifname] + output += [ "iface " + ifname + " inet static"] + output += [ "\t" + "address " + kvp[v4]] + if "NETMASK"+suffix in kvp.keys(): + output += ["\tnetmask " + kvp["NETMASK"+suffix]] + if "GATEWAY"+suffix in kvp.keys(): + output += ["\tgateway " + kvp["GATEWAY"+suffix]] + if not if_count : + output += ["\tdns-nameservers " + ' '.join(dns)] + output += [""] + if_count+=1 + + if6_count=0 + if6_used=0 + for v6 in v6names: + ifname=basename + suffix="" + if if6_used : + ifname+=":" + str(if6_used) + if if6_count : + suffix="_" + str(if6_count) + if not ifname in autolist: + autolist += [ifname] + if "IPV6NETMASK"+suffix in kvp.keys(): + output += [ "iface " + ifname + " inet6 static"] + output += [ "\taddress " + kvp[v6]] + output += [ "\tnetmask " + kvp["IPV6NETMASK"+suffix]] + if "IPV6_DEFAULTGW"+suffix in kvp.keys(): + output += [ "\tgateway " + kvp["IPV6_DEFAULTGW"+suffix] ] + if not if_count : + output += ["\tdns-nameservers " + ' '.join(dns)] + output += [""] + if_count += 1 + if6_used += 1 + if6_count += 1 + + output = ["auto "+" ".join(autolist)] + output +output=["# The following stanza(s) added by hv_set_ifconfig"] + output +output+=["#End of hv_set_ifconfig stanzas"] +print "===================================" +print output +print "===================================" + + +''' Time to clean out the existing interface file''' + +f=open(if_filename,"r") +flines=f.readlines() +f.close() +newfile=[] +pitchstanza=0 +inastanza=0 +stanza=[] +for line in flines: + if line.startswith("auto"): + if inastanza: + if not pitchstanza: + newfile.extend(stanza) + stanza=[] + inastanza=0 + newline="" + autoline=line.strip().split(" ") + for word in autoline: + if (not word == basename) and (not word.startswith(basename+":")): + newline+=word + " " + newline = newline.strip() + if not newline == "auto": + newfile += [newline.strip()] + elif line.startswith(("iface","mapping","source")): + '''Read a stanza''' + '''A Stanza can also start with allow- ie allow-hotplug''' + if inastanza: + if not pitchstanza: + newfile.extend(stanza) + stanza=[] + inastanza=1 + pitchstanza=0 + autoline=line.strip().split(" ") + for word in autoline: + if (word == basename) or (word.startswith(basename+":")): + pitchstanza=1 + if not pitchstanza: + stanza+=[line.strip()] + else: + if inastanza: + if not pitchstanza: + stanza+=[line.strip()] + else: + if not pitchstanza: + newfile += [line.strip()] + + +for line in newfile: + print line +for line in output: + print line + + +fd, path = tempfile.mkstemp() +for line in newfile: + os.write(fd,line) + os.write(fd,"\n") +for line in output: + os.write(fd,line) + os.write(fd,"\n") +os.close(fd) + +shutil.copy(path,if_filename) +os.chmod(if_filename,0644) +#print "TMPFILE is at: " + path +#print "Copied file is at: " + if_filename + + +try: + retcode = subprocess.call("ifdown "+basename , shell=True) + if retcode < 0: + print >>sys.stderr, "Child was terminated by signal", -retcode + else: + print >>sys.stderr, "Child returned", retcode +except OSError as e: + print >>sys.stderr, "Execution failed:", e + +try: + retcode = subprocess.call("ifup "+basename , shell=True) + if retcode < 0: + print >>sys.stderr, "Child was terminated by signal", -retcode + else: + print >>sys.stderr, "Child returned", retcode +except OSError as e: + print >>sys.stderr, "Execution failed:", e + + --- linux-3.13.0.orig/debian/commit-templates/bumpabi +++ linux-3.13.0/debian/commit-templates/bumpabi @@ -0,0 +1,3 @@ +UBUNTU: Bump ABI + +Ignore: yes --- linux-3.13.0.orig/debian/commit-templates/config-updates +++ linux-3.13.0/debian/commit-templates/config-updates @@ -0,0 +1,15 @@ +# +# This template is used for commit messages that don't need to +# show up in debian/changelog. Administrative stuff like config +# updates, ABI bumps, etc. Setting 'Ignore: yes' prevents +# 'debian/rules insertchanges' from inserting this commit meesage +# as a changelog entry. +# +# Please give a one-line description of the config change followed +# by a detailed explanation if necessary + +UBUNTU: [Config] XXXX + +# BugLink: http://bugs.launchpad.net/bugs/ +# Ignore: yes +# Other text below here. --- linux-3.13.0.orig/debian/commit-templates/external-driver +++ linux-3.13.0/debian/commit-templates/external-driver @@ -0,0 +1,20 @@ +# Ubuntu external driver commit. +# +# NOTE: This gets reformatted for README.Ubuntu-External-Drivers and +# debian/changelog. +# +# This is only needed when a driver is added, updated or removed. It is +# not needed when patches or fixes are applied to the driver. If the +# driver is being removed, add the line: +# +# Removing: yes +# +# to the commit, and you can remove all other tags (except UBUNTU:). +# +UBUNTU: + +ExternalDriver: +Description: +Url: +Mask: +Version: --- linux-3.13.0.orig/debian/commit-templates/missing-modules +++ linux-3.13.0/debian/commit-templates/missing-modules @@ -0,0 +1,3 @@ +UBUNTU: build/modules: Add modules that have intentionally gone missing + +Ignore: yes --- linux-3.13.0.orig/debian/commit-templates/newrelease +++ linux-3.13.0/debian/commit-templates/newrelease @@ -0,0 +1,3 @@ +UBUNTU: Start new release + +Ignore: yes --- linux-3.13.0.orig/debian/commit-templates/sauce-patch +++ linux-3.13.0/debian/commit-templates/sauce-patch @@ -0,0 +1,40 @@ +# Ubuntu commit template. +# +# NOTE: This gets reformatted for debian/changelog +# +# +# SAUCE refers to the fact that this patch might not go upstream, but we need to +# carry it to successive releases. In most cases you DONOT want to use this +# template. +# +# An example of a SAUCE patch is the ACPI DSDT-in-initramfs patch which has been +# refused upstream, but still provides useful functionality to users with broken +# BIOSes. +# +#------------------------------------------------------------------------- +# +# The initial UBUNTU is a flag that this is an Ubuntu commit. It will be +# referenced to the Author in the debian/changelog entry. +# +# The text following is the short message that will be placed in the +# changelog. Extra text on the following lines will be ignored, but left +# in the git commit. Lines with # will be ignored in the commit. +# +# OriginalAuthor allows for alternate attribution. +# +# OriginalLocation allows for a URL or description of where the patch came +# from. +# +# BugLink is a URL to a Malone bug. +# +# Ignore: yes will keep this commit from showing up in the changelog. +# +UBUNTU: SAUCE: + + + +# OriginalAuthor: +# OriginalLocation: +# BugLink: http://bugs.launchpad.net/bugs/ +# Ignore: yes +# Other text below here. --- linux-3.13.0.orig/debian/commit-templates/upstream-patch +++ linux-3.13.0/debian/commit-templates/upstream-patch @@ -0,0 +1,27 @@ +# Ubuntu commit template. +# +# NOTE: This gets reformatted for debian/changelog +# +# The initial UBUNTU is a flag that this is an Ubuntu commit. It will be +# referenced to the Author in the debian/changelog entry. +# +# The text following is the short message that will be placed in the +# changelog. Extra text on the following lines will be ignored, but left +# in the git commit. Lines with # will be ignored in the commit. +# +# OriginalAuthor allows for alternate attribution. +# +# OriginalLocation allows for a URL or description of where the patch came +# from. +# +# BugLink is a URL to a Malone bug. +# +# Ignore: yes will keep this commit from showing up in the changelog. +# +UBUNTU: [Upstream] + +# OriginalAuthor: +# OriginalLocation: +# BugLink: http://bugs.launchpad.net/bugs/ +# Ignore: yes +# Other text below here. --- linux-3.13.0.orig/debian/compat +++ linux-3.13.0/debian/compat @@ -0,0 +1 @@ +5 --- linux-3.13.0.orig/debian/control +++ linux-3.13.0/debian/control @@ -0,0 +1,1354 @@ +Source: linux +Section: devel +Priority: optional +Maintainer: Ubuntu Kernel Team +Standards-Version: 3.9.4.0 +Build-Depends: debhelper (>= 5), cpio, module-init-tools, kernel-wedge (>= 2.24ubuntu1), makedumpfile [amd64 i386], libelf-dev, libnewt-dev, libiberty-dev, rsync, libdw-dev, libpci-dev, dpkg (>= 1.16.0~ubuntu4), pkg-config, flex, bison, libunwind8-dev, openssl, libaudit-dev, bc, python-dev, gawk, device-tree-compiler [powerpc], u-boot-tools [powerpc], libc6-dev-ppc64 [powerpc] +Build-Depends-Indep: xmlto, docbook-utils, ghostscript, transfig, bzip2, sharutils, asciidoc +Vcs-Git: http://kernel.ubuntu.com/git-repos/ubuntu/ubuntu-trusty.git +XS-Testsuite: autopkgtest +#XS-Testsuite-Depends: gcc-4.7 binutils + +Package: linux-source-3.13.0 +Architecture: all +Section: devel +Priority: optional +Provides: linux-source, linux-source-3 +Depends: ${misc:Depends}, binutils, bzip2, coreutils | fileutils (>= 4.0) +Recommends: libc-dev, gcc, make +Suggests: libncurses-dev | ncurses-dev, kernel-package, libqt3-dev +Description: Linux kernel source for version 3.13.0 with Ubuntu patches + This package provides the source code for the Linux kernel version + 3.13.0. + . + This package is mainly meant for other packages to use, in order to build + custom flavours. + . + If you wish to use this package to create a custom Linux kernel, then it + is suggested that you investigate the package kernel-package, which has + been designed to ease the task of creating kernel image packages. + . + If you are simply trying to build third-party modules for your kernel, + you do not want this package. Install the appropriate linux-headers + package instead. + +Package: linux-doc +Architecture: all +Section: doc +Priority: optional +Depends: ${misc:Depends} +Conflicts: linux-doc-3 +Replaces: linux-doc-3 +Description: Linux kernel specific documentation for version 3.13.0 + This package provides the various documents in the 3.13.0 kernel + Documentation/ subdirectory. These document kernel subsystems, APIs, device + drivers, and so on. See + /usr/share/doc/linux-doc/00-INDEX for a list of what is + contained in each file. + +Package: linux-headers-3.13.0-29 +Architecture: all +Multi-Arch: foreign +Section: devel +Priority: optional +Depends: ${misc:Depends}, coreutils | fileutils (>= 4.0) +Description: Header files related to Linux kernel version 3.13.0 + This package provides kernel header files for version 3.13.0, for sites + that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details + +Package: linux-libc-dev +Architecture: i386 amd64 armhf arm64 x32 powerpc ppc64el +Depends: ${misc:Depends} +Conflicts: libc6-dev (<< 2.3.2.ds1-6), libc6.1-dev (<< 2.3.2.ds1-6), dvb-dev (<< 1.0.1-6), amd64-libs-dev (<= 1.1), linux-kernel-headers +Replaces: libc6-dev (<< 2.3.2.ds1-6), libc6.1-dev (<< 2.3.2.ds1-6), dvb-dev (<< 1.0.1-6), linux-kernel-headers, libdrm-dev +Provides: linux-kernel-headers +Multi-Arch: same +Description: Linux Kernel Headers for development + This package provides headers from the Linux kernel. These headers + are used by the installed headers for GNU glibc and other system + libraries. They are NOT meant to be used to build third-party modules for + your kernel. Use linux-headers-* packages for that. + +Package: linux-tools-common +Architecture: all +Multi-Arch: foreign +Section: kernel +Priority: optional +Depends: ${misc:Depends} +Replaces: linux-tools (<= 2.6.32-16.25) +Description: Linux kernel version specific tools for version 3.13.0 + This package provides the architecture independent parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version PGKVER. + +Package: linux-tools-3.13.0-29 +Architecture: i386 amd64 armhf arm64 powerpc ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-tools-common +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + You probabally want to install linux-tools-3.13.0-29-. + +Package: linux-cloud-tools-common +Architecture: all +Multi-Arch: foreign +Section: kernel +Priority: optional +Breaks: linux-tools-common (<< 3.13.0-8.28), hv-kvp-daemon-init (<< 3.13) +Replaces: linux-tools-common (<< 3.13.0-8.28), hv-kvp-daemon-init (<< 3.13) +Depends: ${misc:Depends} +Description: Linux kernel version specific cloud tools for version 3.13.0 + This package provides the architecture independent parts for kernel + version locked tools for cloud tools for version PGKVER. + +Package: linux-cloud-tools-3.13.0-29 +Architecture: i386 amd64 armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-cloud-tools-common +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud tools for version 3.13.0-29 on + 64 bit x86. + You probabally want to install linux-cloud-tools-3.13.0-29-. + + +Package: linux-image-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, kvm-api-4, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-pc [i386 amd64 x32] | grub-efi-amd64 [amd64 x32] | grub-efi-ia32 [i386 amd64 x32] | grub [i386 amd64 x32] | lilo (>= 19.1) [i386 amd64 x32] | flash-kernel [armhf arm64] | grub-ieee1275 [ppc64el] +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-generic +Description: Linux kernel image for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel image for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Generic processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-generic meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-generic, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Generic processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-generic meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64 bit x86 SMP + This package provides kernel header files for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-generic-dbgsym +Architecture: i386 amd64 armhf arm64 ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP + This package provides a kernel debug image for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-generic +XC-Package-Type: udeb +Section: debian-installer +Architecture: i386 amd64 armhf arm64 ppc64el +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-generic-lpae +Architecture: armhf +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, kvm-api-4, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: flash-kernel [armhf] +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-generic-lpae +Description: Linux kernel image for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel image for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Generic LPAE processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-generic-lpae meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-generic-lpae +Architecture: armhf +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-generic-lpae, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Generic LPAE processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-generic-lpae meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-generic-lpae +Architecture: armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64 bit x86 SMP + This package provides kernel header files for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-generic-lpae-dbgsym +Architecture: armhf +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP + This package provides a kernel debug image for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-generic-lpae +Architecture: armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-generic-lpae +Architecture: armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-generic-lpae +XC-Package-Type: udeb +Section: debian-installer +Architecture: armhf +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, kvm-api-4, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-pc [i386 amd64 x32] | grub-efi-amd64 [amd64 x32] | grub-efi-ia32 [i386 amd64 x32] | grub [i386 amd64 x32] | lilo (>= 19.1) [i386 amd64 x32] | flash-kernel [armhf arm64] +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-lowlatency +Description: Linux kernel image for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel image for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Lowlatency processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-lowlatency meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-lowlatency, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Lowlatency processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-lowlatency meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64 bit x86 SMP + This package provides kernel header files for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-lowlatency-dbgsym +Architecture: i386 amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP + This package provides a kernel debug image for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-lowlatency +XC-Package-Type: udeb +Section: debian-installer +Architecture: i386 amd64 +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-ieee1275 +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc64-emb +Description: Linux kernel image for version 3.13.0 on 64-bit PowerPC SMP Book3E + This package contains the Linux kernel image for version 3.13.0 on + 64-bit PowerPC SMP Book3E. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 64-bit PowerPC SMP Book3E processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc64-emb meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc64-emb, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64-bit PowerPC SMP Book3E + This package contains the Linux kernel extra modules for version 3.13.0 on + 64-bit PowerPC SMP Book3E. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 64-bit PowerPC SMP Book3E processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc64-emb meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64-bit PowerPC SMP Book3E + This package provides kernel header files for version 3.13.0 on + 64-bit PowerPC SMP Book3E. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc64-emb-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64-bit PowerPC SMP Book3E + This package provides a kernel debug image for version 3.13.0 on + 64-bit PowerPC SMP Book3E. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc64-emb +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: yaboot +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc64-smp +Description: Linux kernel image for version 3.13.0 on 64-bit PowerPC SMP + This package contains the Linux kernel image for version 3.13.0 on + 64-bit PowerPC SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 64-bit PowerPC SMP processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc64-smp meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc64-smp, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64-bit PowerPC SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 64-bit PowerPC SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 64-bit PowerPC SMP processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc64-smp meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64-bit PowerPC SMP + This package provides kernel header files for version 3.13.0 on + 64-bit PowerPC SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc64-smp-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64-bit PowerPC SMP + This package provides a kernel debug image for version 3.13.0 on + 64-bit PowerPC SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc64-smp +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-ieee1275 +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc-e500 +Description: Linux kernel image for version 3.13.0 on 32-bit Freescale Power e500v1 and e500v2 + This package contains the Linux kernel image for version 3.13.0 on + 32-bit Freescale Power e500v1 and e500v2. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit Freescale Power e500v1 and e500v2 processors. + . + Geared toward server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-e500 meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc-e500, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 32-bit Freescale Power e500v1 and e500v2 + This package contains the Linux kernel extra modules for version 3.13.0 on + 32-bit Freescale Power e500v1 and e500v2. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit Freescale Power e500v1 and e500v2 processors. + . + Geared toward server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-e500 meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 32-bit Freescale Power e500v1 and e500v2 + This package provides kernel header files for version 3.13.0 on + 32-bit Freescale Power e500v1 and e500v2. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc-e500-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 32-bit Freescale Power e500v1 and e500v2 + This package provides a kernel debug image for version 3.13.0 on + 32-bit Freescale Power e500v1 and e500v2. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc-e500 +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-ieee1275 +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc-e500mc +Description: Linux kernel image for version 3.13.0 on 32-bit Freescale Power e500mc + This package contains the Linux kernel image for version 3.13.0 on + 32-bit Freescale Power e500mc. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit Freescale Power e500mc processors. + . + Geared toward server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-e500mc meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc-e500mc, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 32-bit Freescale Power e500mc + This package contains the Linux kernel extra modules for version 3.13.0 on + 32-bit Freescale Power e500mc. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit Freescale Power e500mc processors. + . + Geared toward server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-e500mc meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 32-bit Freescale Power e500mc + This package provides kernel header files for version 3.13.0 on + 32-bit Freescale Power e500mc. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc-e500mc-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 32-bit Freescale Power e500mc + This package provides a kernel debug image for version 3.13.0 on + 32-bit Freescale Power e500mc. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc-e500mc +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: yaboot +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc-smp +Description: Linux kernel image for version 3.13.0 on 32-bit PowerPC SMP + This package contains the Linux kernel image for version 3.13.0 on + 32-bit PowerPC SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit PowerPC SMP processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-smp meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc-smp, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 32-bit PowerPC SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 32-bit PowerPC SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit PowerPC SMP processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-smp meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 32-bit PowerPC SMP + This package provides kernel header files for version 3.13.0 on + 32-bit PowerPC SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc-smp-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 32-bit PowerPC SMP + This package provides a kernel debug image for version 3.13.0 on + 32-bit PowerPC SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc-smp +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: kernel-image-3.13.0-29-generic-di +Package-Type: udeb +Provides: kernel-image, efi-modules, ext3-modules, ext4-modules +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: extra +Description: Linux kernel binary image for the Debian installer + This package contains the kernel image for the Debian installer + boot images. It does _not_ provide a usable kernel for your full + Debian system. + +Package: nic-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: nic-modules +Depends: kernel-image-3.13.0-29-generic-di, nic-shared-modules-3.13.0-29-generic-di, virtio-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: Network interface support + +Package: nic-shared-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: nic-shared-modules +Depends: kernel-image-3.13.0-29-generic-di, crypto-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: nic shared modules + This package contains modules which support nic modules + +Package: serial-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: serial-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: Serial port support + +Package: ppp-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: ppp-modules +Depends: kernel-image-3.13.0-29-generic-di, nic-shared-modules-3.13.0-29-generic-di, serial-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: PPP (serial port) networking support + +Package: pata-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: pata-modules +Depends: kernel-image-3.13.0-29-generic-di, storage-core-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: PATA support modules + +Package: firewire-core-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: firewire-core-modules +Depends: kernel-image-3.13.0-29-generic-di, storage-core-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: Firewire (IEEE-1394) Support + +Package: scsi-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: scsi-modules +Depends: kernel-image-3.13.0-29-generic-di, storage-core-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: SCSI storage support + +Package: plip-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: plip-modules +Depends: kernel-image-3.13.0-29-generic-di, nic-shared-modules-3.13.0-29-generic-di, parport-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: PLIP (parallel port) networking support + +Package: floppy-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: floppy-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: Floppy driver support + +Package: fat-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: fat-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: FAT filesystem support + This includes Windows FAT and VFAT support. + +Package: nfs-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: nfs-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: NFS filesystem drivers + Includes the NFS client driver, and supporting modules. + +Package: md-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: md-modules, crypto-dm-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: Multi-device support (raid, device-mapper, lvm) + +Package: multipath-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: multipath-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: extra +Description: DM-Multipath support + This package contains modules for device-mapper multipath support. + +Package: usb-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: usb-modules +Depends: kernel-image-3.13.0-29-generic-di, storage-core-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: Core USB support + +Package: pcmcia-storage-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: pcmcia-storage-modules +Depends: kernel-image-3.13.0-29-generic-di, scsi-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: PCMCIA storage support + +Package: fb-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: fb-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: Framebuffer modules + +Package: input-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: input-modules +Depends: kernel-image-3.13.0-29-generic-di, usb-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: Support for various input methods + +Package: mouse-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: mouse-modules +Depends: kernel-image-3.13.0-29-generic-di, input-modules-3.13.0-29-generic-di, usb-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: extra +Description: Mouse support + This package contains mouse drivers for the Linux kernel. + +Package: irda-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: irda-modules +Depends: kernel-image-3.13.0-29-generic-di, nic-shared-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: Support for Infrared protocols + +Package: parport-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: parport-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: Parallel port support + +Package: nic-pcmcia-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: nic-pcmcia-modules +Depends: kernel-image-3.13.0-29-generic-di, nic-shared-modules-3.13.0-29-generic-di, nic-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: PCMCIA network interface support + +Package: pcmcia-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: pcmcia-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: PCMCIA Modules + +Package: nic-usb-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: nic-usb-modules +Depends: kernel-image-3.13.0-29-generic-di, nic-shared-modules-3.13.0-29-generic-di, usb-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: USB network interface support + +Package: sata-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: sata-modules +Depends: kernel-image-3.13.0-29-generic-di, storage-core-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: SATA storage support + +Package: crypto-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: crypto-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: extra +Description: crypto modules + This package contains crypto modules. + +Package: squashfs-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: squashfs-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: extra +Description: squashfs modules + This package contains squashfs modules. + +Package: speakup-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: speakup-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: extra +Description: speakup modules + This package contains speakup modules. + +Package: virtio-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: virtio-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: VirtIO Modules + Includes modules for VirtIO (virtual machine, generally kvm guests) + +Package: fs-core-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: fs-core-modules, ext2-modules, jfs-modules, reiserfs-modules, xfs-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: Base filesystem modules + This includes jfs, reiserfs and xfs. + +Package: fs-secondary-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: fs-secondary-modules, btrfs-modules, ntfs-modules, hfs-modules +Depends: kernel-image-3.13.0-29-generic-di, fat-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: Extra filesystem modules + This includes support for Windows NTFS and MacOS HFS/HFSPlus + +Package: storage-core-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: storage-core-modules, loop-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: Core storage support + Includes core SCSI, LibATA, USB-Storage. Also includes related block + devices for CD, Disk and Tape medium (and IDE Floppy). + +Package: block-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: block-modules, nbd-modules +Depends: kernel-image-3.13.0-29-generic-di, storage-core-modules-3.13.0-29-generic-di, parport-modules-3.13.0-29-generic-di, virtio-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: Block storage devices + This package contains the block storage devices, including DAC960 and + paraide. + +Package: message-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: message-modules +Depends: kernel-image-3.13.0-29-generic-di, storage-core-modules-3.13.0-29-generic-di, scsi-modules-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: Fusion and i2o storage modules + This package containes the fusion and i2o storage modules. + +Package: vlan-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: vlan-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: extra +Description: vlan modules + This package contains vlan (8021.Q) modules. + +Package: ipmi-modules-3.13.0-29-generic-di +Package-Type: udeb +Provides: ipmi-modules +Depends: kernel-image-3.13.0-29-generic-di +Architecture: amd64 +Kernel-Version: 3.13.0-29-generic +Section: debian-installer +Priority: standard +Description: ipmi modules --- linux-3.13.0.orig/debian/control-scripts/headers-postinst +++ linux-3.13.0/debian/control-scripts/headers-postinst @@ -0,0 +1,126 @@ +#!/usr/bin/perl +# -*- Mode: Cperl -*- +# debian.postinst --- +# Author : Manoj Srivastava ( srivasta@pilgrim.umass.edu ) +# Created On : Sat Apr 27 05:42:43 1996 +# Created On Node : melkor.pilgrim.umass.edu +# Last Modified By : Manoj Srivastava +# Last Modified On : Sat Aug 5 13:20:22 2006 +# Last Machine Used: glaurung.internal.golden-gryphon.com +# Update Count : 45 +# Status : Unknown, Use with caution! +# HISTORY : +# Description : +# +# +# +# arch-tag: 1c716174-2f0a-476d-a626-a1322e62503a +# + + +$|=1; + +# Predefined values: +my $version = "=V"; +my $kimage = "=K"; +my $package_name = "linux-image-$version"; + + +# Ignore all invocations uxcept when called on to configure. +exit 0 unless ($ARGV[0] && $ARGV[0] =~ /configure/); + +#known variables +my $image_dest = "/"; +my $realimageloc = "/boot/"; +my $silent_modules = ''; +my $modules_base = '/lib/modules'; +my $CONF_LOC = '/etc/kernel-img.conf'; +# remove multiple leading slashes; make sure there is at least one. +$realimageloc =~ s|^/*|/|o; +$realimageloc =~ s|/+|/|o; + +chdir '/usr/src' or die "Could not chdir to /usr/src:$!"; + +if (-r "$CONF_LOC" && -f "$CONF_LOC" ) { + if (open(CONF, "$CONF_LOC")) { + while () { + chomp; + s/\#.*$//g; + next if /^\s*$/; + + $header_postinst_hook = "$1" if /^\s*header_postinst_hook\s*=\s*(\S+)/ig; + } + close CONF; + } +} + +sub exec_script { + my $type = shift; + my $script = shift; + print STDERR "Running $type hook script $script.\n"; + system ("$script $version $realimageloc$kimage-$version") && + print STDERR "User $type hook script [$script] "; + if ($?) { + if ($? == -1) { + print STDERR "failed to execute: $!\n"; + } + elsif ($? & 127) { + printf STDERR "died with signal %d, %s coredump\n", + ($? & 127), ($? & 128) ? 'with' : 'without'; + } + else { + printf STDERR "exited with value %d\n", $? >> 8; + } + exit $? >> 8; + } +} +sub run_hook { + my $type = shift; + my $script = shift; + if ($script =~ m,^/,) { + # Full path provided for the hook script + if (-x "$script") { + &exec_script($type,$script); + } + else { + die "The provided $type hook script [$script] could not be run.\n"; + } + } + else { + # Look for it in a safe path + for my $path ('/bin', '/sbin', '/usr/bin', '/usr/sbin') { + if (-x "$path/$script") { + &exec_script($type, "$path/$script"); + return 0; + } + } + # No luck + print STDERR "Could not find $type hook script [$script].\n"; + die "Looked in: '/bin', '/sbin', '/usr/bin', '/usr/sbin'\n"; + } +} + +## Run user hook script here, if any +if (-x "$header_postinst_hook") { + &run_hook("postinst", $header_postinst_hook); +} + +if (-d "/etc/kernel/header_postinst.d") { + print STDERR "Examining /etc/kernel/header_postinst.d.\n"; + system ("run-parts --verbose --exit-on-error --arg=$version " . + "--arg=$realimageloc$kimage-$version " . + "/etc/kernel/header_postinst.d") && + die "Failed to process /etc/kernel/header_postinst.d"; +} + +if (-d "/etc/kernel/header_postinst.d/$version") { + print STDERR "Examining /etc/kernel/header_postinst.d/$version.\n"; + system ("run-parts --verbose --exit-on-error --arg=$version " . + "--arg=$realimageloc$kimage-$version " . + "/etc/kernel/header_postinst.d/$version") && + die "Failed to process /etc/kernel/header_postinst.d/$version"; +} + +exit 0; + +__END__ --- linux-3.13.0.orig/debian/control-scripts/postinst +++ linux-3.13.0/debian/control-scripts/postinst @@ -0,0 +1,1110 @@ +#! /usr/bin/perl +# OriginalAuthor : Manoj Srivastava ( srivasta@pilgrim.umass.edu ) +# +# Customized for Ubuntu by: Ben Collins + +#use strict; #for debugging +use Cwd 'abs_path'; + +$|=1; + +# Predefined values: +my $version = "=V"; +my $link_in_boot = ""; # Should be empty, mostly +my $no_symlink = ""; # Should be empty, mostly +my $reverse_symlink = ""; # Should be empty, mostly +my $do_symlink = "Yes"; # target machine defined +my $do_boot_enable = "Yes"; # target machine defined +my $do_bootfloppy = "Yes"; # target machine defined +my $do_bootloader = "Yes"; # target machine defined +my $move_image = ''; # target machine defined +my $kimage = "=K"; # Should be empty, mostly +my $loader = "=L"; # lilo, silo, quik, palo, vmelilo, nettrom, arcboot or delo +my $image_dir = "/boot"; # where the image is located +my $clobber_modules = ''; # target machine defined +my $relative_links = ""; # target machine defined +my $initrd = "YES"; # initrd kernel +my $do_initrd = ''; # Normally we do not +my $use_hard_links = ''; # hardlinks do not work across fs boundaries +my $postinst_hook = ''; #Normally we do not +my $postrm_hook = ''; #Normally we do not +my $preinst_hook = ''; #Normally we do not +my $prerm_hook = ''; #Normally we do not +my $minimal_swap = ''; # Do not swap symlinks +my $ignore_depmod_err = ''; # normally we do not +my $kernel_arch = "=B"; +my $ramdisk = "/usr/sbin/update-initramfs"; # List of tools to create initial ram fs. +my $notifier = "/usr/share/update-notifier/notify-reboot-required"; +my $package_name = "linux-image-$version"; +my $explicit_do_loader = 'Yes'; + +my $Loader = "NoLOADER"; # +$Loader = "LILO" if $loader =~ /^lilo/io; +$Loader = "SILO" if $loader =~ /^silo/io; +$Loader = "QUIK" if $loader =~ /^quik/io; +$Loader = "yaboot" if $loader =~ /^yaboot/io; +$Loader = "PALO" if $loader =~ /^palo/io; +$Loader = "NETTROM" if $loader =~ /^nettrom/io; +$Loader = "VMELILO" if $loader =~ /^vmelilo/io; +$Loader = "ZIPL" if $loader =~ /^zipl/io; +$Loader = "ELILO" if $loader =~ /^elilo/io; +$Loader = "ARCBOOT" if $loader =~ /^arcboot/io; +$Loader = "DELO" if $loader =~ /^delo/io; + +# This should not point to /tmp, because of security risks. +my $temp_file_name = "/var/log/$loader" . "_log.$$"; + +#known variables +my $image_dest = "/"; +my $realimageloc = "/$image_dir/"; +my $have_conffile = ""; +my $silent_modules = ''; +my $silent_loader = ''; +my $warn_reboot = 'Yes'; # Warn that we are installing a version of + # the kernel we are running + +my $modules_base = '/lib/modules'; +my $CONF_LOC = '/etc/kernel-img.conf'; + +# Ignore all invocations except when called on to configure. +exit 0 unless $ARGV[0] =~ /configure/; + +my $DEBUG = 0; + +# Do some preliminary sanity checks here to ensure we actually have an +# valid image dir +chdir('/') or die "could not chdir to /:$!\n"; +die "Internal Error: ($image_dir) is not a directory!\n" + unless -d $image_dir; + +# remove multiple leading slashes; make sure there is at least one. +$realimageloc =~ s|^/*|/|o; +$realimageloc =~ s|/+|/|o; +die "Internal Error: ($realimageloc) is not a directory!\n" + unless -d $realimageloc; + +if (-r "$CONF_LOC" && -f "$CONF_LOC" ) { + if (open(CONF, "$CONF_LOC")) { + while () { + chomp; + s/\#.*$//g; + next if /^\s*$/; + + $do_symlink = "" if /^\s*do_symlinks\s*=\s*(no|false|0)\s*$/ig; + $no_symlink = "" if /^\s*no_symlinks\s*=\s*(no|false|0)\s*$/ig; + $reverse_symlink = "" if /^\s*reverse_symlink\s*=\s*(no|false|0)\s*$/ig; + $link_in_boot = "" if /^\s*image_in_boot\s*=\s*(no|false|0)\s*$/ig; + $link_in_boot = "" if /^\s*link_in_boot\s*=\s*(no|false|0)\s*$/ig; + $move_image = "" if /^\s*move_image\s*=\s*(no|false|0)\s*$/ig; + $clobber_modules = '' if /^\s*clobber_modules\s*=\s*(no|false|0)\s*$/ig; + $do_boot_enable = '' if /^\s*do_boot_enable\s*=\s*(no|false|0)\s*$/ig; + $do_bootfloppy = '' if /^\s*do_bootfloppy\s*=\s*(no|false|0)\s*$/ig; + $relative_links = '' if /^\s*relative_links \s*=\s*(no|false|0)\s*$/ig; + $do_bootloader = '' if /^\s*do_bootloader\s*=\s*(no|false|0)\s*$/ig; + $explicit_do_loader = '' if /^\s*do_bootloader\s*=\s*(no|false|0)\s*$/ig; + $do_initrd = '' if /^\s*do_initrd\s*=\s*(no|false|0)\s*$/ig; + $use_hard_links = '' if /^\s*use_hard_links\s*=\s*(no|false|0)\s*$/ig; + $silent_modules = '' if /^\s*silent_modules\s*=\s*(no|false|0)\s*$/ig; + $silent_loader = '' if /^\s*silent_loader\s*=\s*(no|false|0)\s*$/ig; + $warn_reboot = '' if /^\s*warn_reboot\s*=\s*(no|false|0)\s*$/ig; + $minimal_swap = '' if /^\s*minimal_swap\s*=\s*(no|false|0)\s*$/ig; + $ignore_depmod_err = '' if /^\s*ignore_depmod_err\s*=\s*(no|false|0)\s*$/ig; + + $do_symlink = "Yes" if /^\s*do_symlinks\s*=\s*(yes|true|1)\s*$/ig; + $no_symlink = "Yes" if /^\s*no_symlinks\s*=\s*(yes|true|1)\s*$/ig; + $reverse_symlink = "Yes" if /^\s*reverse_symlinks\s*=\s*(yes|true|1)\s*$/ig; + $link_in_boot = "Yes" if /^\s*image_in_boot\s*=\s*(yes|true|1)\s*$/ig; + $link_in_boot = "Yes" if /^\s*link_in_boot\s*=\s*(yes|true|1)\s*$/ig; + $move_image = "Yes" if /^\s*move_image\s*=\s*(yes|true|1)\s*$/ig; + $clobber_modules = "Yes" if /^\s*clobber_modules\s*=\s*(yes|true|1)\s*$/ig; + $do_boot_enable = "Yes" if /^\s*do_boot_enable\s*=\s*(yes|true|1)\s*$/ig; + $do_bootfloppy = "Yes" if /^\s*do_bootfloppy\s*=\s*(yes|true|1)\s*$/ig; + $do_bootloader = "Yes" if /^\s*do_bootloader\s*=\s*(yes|true|1)\s*$/ig; + $explicit_do_loader = "YES" if /^\s*do_bootloader\s*=\s*(yes|true|1)\s*$/ig; + $relative_links = "Yes" if /^\s*relative_links\s*=\s*(yes|true|1)\s*$/ig; + $do_initrd = "Yes" if /^\s*do_initrd\s*=\s*(yes|true|1)\s*$/ig; + $use_hard_links = "Yes" if /^\s*use_hard_links\s*=\s*(yes|true|1)\s*$/ig; + $silent_modules = 'Yes' if /^\s*silent_modules\s*=\s*(yes|true|1)\s*$/ig; + $silent_loader = 'Yes' if /^\s*silent_loader\s*=\s*(yes|true|1)\s*$/ig; + $warn_reboot = 'Yes' if /^\s*warn_reboot\s*=\s*(yes|true|1)\s*$/ig; + $minimal_swap = 'Yes' if /^\s*minimal_swap\s*=\s*(yes|true|1)\s*$/ig; + $ignore_depmod_err = 'Yes' if /^\s*ignore_depmod_err\s*=\s*(yes|true|1)\s*$/ig; + + $image_dest = "$1" if /^\s*image_dest\s*=\s*(\S+)/ig; + $postinst_hook = "$1" if /^\s*postinst_hook\s*=\s*(\S+)/ig; + $postrm_hook = "$1" if /^\s*postrm_hook\s*=\s*(\S+)/ig; + $preinst_hook = "$1" if /^\s*preinst_hook\s*=\s*(\S+)/ig; + $prerm_hook = "$1" if /^\s*prerm_hook\s*=\s*(\S+)/ig; + $ramdisk = "$1" if /^\s*ramdisk\s*=\s*(.+)$/ig; + } + close CONF; + $have_conffile = "Yes"; + } +} + + + +# For some versions of kernel-package, we had this warning in the +# postinst, but the rules did not really interpolate the value in. +# Here is a sanity check. +my $pattern = "=" . "I"; +$initrd=~ s/^$pattern$//; + +if ($link_in_boot) { + $image_dest = "/$image_dir/"; # same as realimageloc +} + +# Tack on at least one trainling / +$image_dest = "$image_dest/"; +$image_dest =~ s|^/*|/|o; +$image_dest =~ s|/+$|/|o; + +if (! -d "$image_dest") { + die "Expected Image Destination dir ($image_dest) to be a valid directory!\n"; +} + +# sanity +if (!($do_bootfloppy || $do_bootloader)) { + $do_boot_enable = ''; +} +if ($do_symlink && $no_symlink) { + warn "Both do_symlinks and no_symlinks options enabled; disabling no_symlinks\n"; + $no_symlink = 0; +} + +# most of our work is done in $image_dest (nominally /) +chdir("$image_dest") or die "could not chdir to $image_dest:$!\n"; + +# Paranoid check to make sure that the correct value is put in there +if (! $kimage) { $kimage = "vmlinuz"; } # Hmm. empty +elsif ($kimage =~ m/^b?uImage$/o) { $kimage = "vmlinuz"; } # these produce vmlinuz +elsif ($kimage =~ m/^b?zImage$/o) { $kimage = "vmlinuz"; } # these produce vmlinuz +elsif ($kimage =~ m/^[iI]mage$/o) { my $nop = $kimage; } +elsif ($kimage =~ m/^vmlinux$/o) { my $nop = $kimage; } +else { $kimage = "vmlinuz"; } # Default + +$ENV{KERNEL_ARCH}=$kernel_arch if $kernel_arch; + + +die "Internal Error: Could not find image (" . $realimageloc + . "$kimage-$version)\n" unless -e $realimageloc + . "$kimage-$version"; + +# search for the boot loader in the path +my $loader_exec; +($loader_exec = $loader) =~ s|.*/||; +my ($loaderloc) = grep -x, map "$_/$loader_exec", + map { length($_) ? $_ : "." } split /:/, $ENV{PATH}; + + +###################################################################### +###################################################################### +########### Test whether a relative symlinkwould be OK ####### +###################################################################### +###################################################################### +sub test_relative { + my %params = @_; + my $cwd; + + die "Internal Error: Missing Required paramater 'Old Dir' " + unless $params{'Old Dir'}; + die "Internal Error: Missing Required paramater New Dir' " + unless $params{'New Dir'}; + + + die "Internal Error: No such dir $params{'Old Dir'} " + unless -d $params{'Old Dir'}; + die "Internal Error: No such dir $params{'New Dir'} " + unless -d $params{'New Dir'}; + + # If the caller specified a test file, and it does not exist try and find + # another file to use in its stead. As we are installing kernels we can + # use any versioned file from this kernel which should be in the same place. + if (defined $params{'Test File'} and + ! -f $params{'Old Dir'} . '/' . $params{'Test File'}) { + + my @possible = glob($params{'Old Dir'} . "/*$version*"); + if ($#possible >= 0) { + $params{'Test File'} = `basename "$possible[0]"`; + chomp($params{'Test File'}); + warn "Test relative: selected $params{'Test File'}" + if $DEBUG; + } + } + + warn "Test relative: testing $params{'Old Dir'} -> $params{'New Dir'}" + if $DEBUG; + chomp($cwd = `pwd`); + chdir ($params{'New Dir'}) or die "Could not chdir to $params{'New Dir'}:$!"; + my $ok = 0; + $params{'Old Dir'} =~ s|^/*||o; + if (-d $params{'Old Dir'} ) { + if (defined $params{'Test File'}) { + if (-e $params{'Old Dir'} . $params{'Test File'}) { + $ok = 1; + } + } else { + $ok = 1; # well, backward compatibility + } + } + chdir ($cwd) or die "Could not chdir to $params{'New Dir'}:$!"; + return $ok; +} + +###################################################################### +###################################################################### +############ +###################################################################### +###################################################################### +# sub CanonicalizePath { +# my $path = join '/', @_; +# my @work = split '/', $path; +# my @out; +# my $is_absolute; + +# if (@work && $work[0] eq "") { +# $is_absolute = 1; shift @work; +# } + +# while (@work) { +# my $seg = shift @work; +# if ($seg eq "." || $seg eq "") { +# } +# elsif ($seg eq "..") { +# if (@out && $out[-1] ne "..") { +# pop @out; +# } +# else { +# # Leading "..", or "../..", etc. +# push @out, $seg; +# } +# } +# else { +# push @out, $seg; +# } +# } + +# unshift @out, "" if $is_absolute; +# return join('/', @out); +# } +###################################################################### +###################################################################### +############ +###################################################################### +###################################################################### + +sub spath { + my %params = @_; + + die "Missing Required paramater 'Old'" unless $params{'Old'}; + die "Missing Required paramater 'New'" unless $params{'New'}; + + my @olddir = split '/', `readlink -q -m $params{'Old'}`; + my @newdir = split '/', `readlink -q -m $params{'New'}`; + my @outdir = @olddir; + + my $out = ''; + my $i; + for ($i = 0; $i <= $#olddir && $i <= $#newdir; $i++) { + $out++ if ($olddir[$i] ne $newdir[$i]); + shift @outdir unless $out; + unshift @outdir, ".." if $out; + } + if ($#newdir > $#olddir) { + for ($i=0; $i < $#newdir; $i++) { + unshift @outdir, ".."; + } + } + return join ('/', @outdir); +} +###################################################################### +###################################################################### +############ +###################################################################### +###################################################################### + + +# This routine actually moves the kernel image +# From: $realimageloc/$kimage-$version (/boot/vmlinuz-2.6.12) +# To: $image_dest/$kimage-$version (/vmlinuz-2.6.12) +# Note that the image is moved to a versioned destination, but ordinary +# symlinks we create otherwise are not normally versioned +sub really_move_image { + my $src_dir = $_[0]; + my $target = $_[1]; + my $dest_dir = $_[2]; + + warn "Really move image: src_dir=$src_dir, target=$target,\n destdir=$dest_dir" + if $DEBUG; + if (-e "$target") { + # we should be in dir $dest_dir == $image_dest /, normally + rename("$target", "$target.$$") || + die "failed to move " . $dest_dir . "$target:$!"; + warn "mv $target $target.$$" if $DEBUG; + } + warn "mv -f $src_dir$target $target" if $DEBUG; + my $ret = system("mv -f " . $src_dir . "$target " . + " $target"); + if ($ret) { + die("Failed to move " . $src_dir . "$target to " + . $dest_dir . "$target"); + } + # Ok, now we may clobber the previous .old files + if (-e "$target.$$") { + rename("$target.$$", "$target.old") || + die "failed to move " . $dest_dir . "$target:$!"; + warn "mv $target.$$ $target " if $DEBUG; + } +} + +# Normally called after really_move_image; and only called if we asked for +# reversed link this routine reverses the symbolic link that is notmally +# created. Since the real kernel image has been moved over to +# $image_dest/$kimage-$version. So, this routine links +# From: $image_dest/$kimage-$version (/vmlinuz-2.6.12) +# To: $realimageloc/$kimage-$version (/boot/vmlinuz-2.6.12) +sub really_reverse_link { + my $src_dir = $_[0]; + my $link_name = $_[1]; + my $dest_dir = $_[2]; + warn "Really reverse link: src_dir=$src_dir, link name=$link_name\n" . + "\tdestdir=$dest_dir" if $DEBUG; + + my $Old = $dest_dir; + if (test_relative ('Old Dir' => $Old, 'New Dir' => $src_dir, + 'Test File' => "$link_name")) { + $Old =~ s|^/*||o; + } + # Special case is they are in the same dir + my $rel_path = spath('Old' => "$Old", 'New' => "$src_dir" ); + $Old ="" if $rel_path =~ m/^\s*$/o; + + if ($use_hard_links =~ m/YES/i) { + link($Old . "$link_name", $src_dir . "$link_name") || + die("Failed to link " . $dest_dir . "$link_name to " . $src_dir . + "$link_name:$!"); + warn "ln " . $Old . "$link_name " . $src_dir . "$link_name" if $DEBUG; + } + else { + symlink($Old . "$link_name", $src_dir . "$link_name") || + die("Failed to symbolic-link " . $dest_dir . "$link_name to " . $src_dir + . "$link_name:$!"); + warn "ln -s " . $Old . "$link_name " . $src_dir . "$link_name" if $DEBUG; + } +} + +# This routine is invoked if there is a symbolic link in place +# in $image_dest/$kimage -- so a symlink exists in the destination. +# What we are trying to determine is if we need to move the symbolic link over +# to the the .old location +sub move_p { + my $kimage = $_[0]; # Name of the symbolic link + my $image_dest = $_[1]; # The directory the links goes into + my $image_name = $_[2]; + my $src_dir = $_[3]; + my $force_move = 0; + warn "Move?: kimage=$kimage, image_dest=$image_dest, \n" . + "\timage_name=$image_name, src_dir=$src_dir" if $DEBUG; + + if ($no_symlink || $reverse_symlink) { + # we do not want links, yet we have a symbolic link here! + warn "found a symbolic link in " . $image_dest . "$kimage \n" . + "even though no_symlink is defined\n" if $no_symlink; + warn "found a symbolic link in " . $image_dest . "$kimage \n" . + "even though reverse_symlink is defined\n" if $reverse_symlink; + # make sure we change this state of affairs + $force_move = 1; + return $force_move; + } + + warn "DEBUG: OK. We found symlink, and we should have a symlink here.\n" + if $DEBUG; + my $vmlinuz_target = readlink "$kimage"; + my $real_target = ''; + my $target = `readlink -q -m "${realimageloc}${kimage}-${version}"`; + $real_target = abs_path($vmlinuz_target) if defined($vmlinuz_target); + + if (!defined($vmlinuz_target) || ! -f "$real_target") { + # what, a dangling symlink? + warn "The link " . $image_dest . "$kimage is a dangling link" . + "to $real_target\n"; + $force_move = 1; + return $force_move; + } + + + warn "DEBUG: The link $kimage points to ($vmlinuz_target)\n" if $DEBUG; + warn "DEBUG: ($vmlinuz_target) is really ($real_target)\n" if $DEBUG; + my $cwd; + chomp ($cwd=`pwd`); + if ($vmlinuz_target !~ m|^/|o) { + $vmlinuz_target = $cwd . "/" . $vmlinuz_target; + $vmlinuz_target =~ s|/+|/|o; + } + $vmlinuz_target = `readlink -q -m $vmlinuz_target`; + + if ("$vmlinuz_target" ne "$target") { + warn "DEBUG: We need to handle this.\n" if $DEBUG; + if ($minimal_swap) { + warn "DEBUG: Minimal swap.\n" if $DEBUG; + if (-l "$kimage.old") { + warn "DEBUG: There is an old link at $kimage.old\n" if $DEBUG; + my $old_target = readlink "$kimage.old"; + my $real_old_target = ''; + $real_old_target=abs_path($old_target) if defined ($old_target); + + if ($real_old_target && -f "$real_old_target") { + if ($old_target !~ m|^/|o) { + $old_target = $cwd . "/" . $old_target; + $old_target =~ s|/+|/|o; + } + $old_target = `readlink -q -m $old_target`; + if ("$old_target" ne "$target") { + $force_move = 1; + warn "DEBUG: Old link ($old_target) does not point to us ($target)\n" + if $DEBUG; + } + else { # The .old points to the current + warn "$kimage.old --> $target -- doing nothing"; + $force_move = 0; + } + } + else { + warn "DEBUG: Well, the old link does not exist -- so we move\n" + if $DEBUG; + $force_move = 1; + } + } + else { + warn "DEBUG: No .old link -- OK to move\n" + if $DEBUG; + $force_move = 1; + } + } + else { + warn "DEBUG: ok, minimal swap is no-- so we move.\n" + if $DEBUG; + $force_move = 1; + } + } + else { # already have proper link + warn "$kimage($vmlinuz_target) points to $target ($real_target) -- doing nothing"; + $force_move = 0; + } + return $force_move; +} + + +# This routine moves the symbolic link around (/vmlinuz -> /vmlinuz.old) +# It pays attention to whether we should the fact whether we should be using +# hard links or not. +sub really_move_link { + my $kimage = $_[0]; # Name of the symbolic link + my $image_dest = $_[1]; # The directory the links goes into + my $image_name = $_[2]; + my $src_dir = $_[3]; + warn "really_move_link: kimage=$kimage, image_dest=$image_dest\n" . + "\t image_name=$image_name, src_dir=$src_dir" if $DEBUG; + + # don't clobber $kimage.old quite yet + rename("$kimage", "$kimage.$$") || + die "failed to move " . $image_dest . "$kimage:$!"; + warn "mv $kimage $kimage.$$" if $DEBUG; + my $Old = $src_dir; + my $cwd; + + chomp($cwd=`pwd`); + if (test_relative ('Old Dir' => $Old, 'New Dir' => $cwd, + 'Test File' => "$image_name")) { + $Old =~ s|^/*||o; + } + # Special case is they are in the same dir + my $rel_path = spath('Old' => "$Old", 'New' => "$cwd" ); + $Old ="" if $rel_path =~ m/^\s*$/o; + + if ($use_hard_links =~ m/YES/i) { + warn "ln ${Old}${image_name} $kimage" if $DEBUG; + if (! link("${Old}${image_name}", "$kimage")) { + rename("$kimage.$$", "$kimage"); + die("Failed to link ${Old}${image_name} to " . + "${image_dest}${kimage}:$!"); + } + } + else { + warn "ln -s ${Old}${image_name} $kimage" if $DEBUG; + if (! symlink("${Old}${image_name}", "$kimage")) { + rename("$kimage.$$", "$kimage"); + die("Failed to symbolic-link ${Old}${image_name} to " . + "${image_dest}${kimage}:$!"); + } + } + + # Ok, now we may clobber the previous .old file + if (-l "$kimage.old" || ! -e "$kimage.old" ) { + rename("$kimage.$$", "$kimage.old"); + warn "mv $kimage.$$ $kimage.old" if $DEBUG; + } + else { + warn "$kimage.old is not a symlink, not clobbering\n"; + warn "rm $kimage.$$"; + unlink "$kimage.$$" if $DEBUG; + } +} + +# This routine handles a request to do symlinks, but there is no +# symlink file already there. Either we are supposed to use copy, or we are +# installing on a pristine system, or the user does not want symbolic links at +# all. We use a configuration file to tell the last two cases apart, creating +# a config file if needed. +sub handle_missing_link { + my $kimage = $_[0]; # Name of the symbolic link + my $image_dest = $_[1]; # The directory the links goes into + my $image_name = $_[2]; + my $src_dir = $_[3]; + warn "handle_missing_link: kimage=$kimage, image_dest=$image_dest\n" . + "\t image_name=$image_name, src_dir=$src_dir" if $DEBUG; + + if ($no_symlink) { + warn "cp -a --backup=t $realimageloc$image_name $kimage" if $DEBUG; + my $ret = system("cp -a --backup=t " . $realimageloc . + "$image_name " . " $kimage"); + if ($ret) { + die("Failed to copy " . $realimageloc . "$image_name to " + . $image_dest . "$kimage"); + } + } + elsif ($reverse_symlink) { + warn "mv -f $realimageloc$image_name $kimage" if $DEBUG; + my $ret = system("mv -f " . $realimageloc . "$image_name " + . "$kimage"); + if ($ret) { + die("Failed to move " . $realimageloc . "$image_name to " + . $image_dest . "$kimage"); + } + } + else { + if (! $have_conffile) { + my $ret; + my $answer=''; + $do_symlink = "Yes"; + + if (open(CONF, ">$CONF_LOC")) { + print CONF "# Kernel Image management overrides\n"; + print CONF "# See kernel-img.conf(5) for details\n"; + if ($loader =~ /palo/i) { + print CONF "link_in_boot = Yes\n"; + print CONF "do_symlinks = Yes\n"; + print CONF "relative_links = Yes\n"; + print CONF "do_bootloader = No\n"; + } else { + print CONF "do_symlinks = $do_symlink\n"; + } + close CONF; + } + $have_conffile = "Yes"; + } + } + + if (! $no_symlink && $do_symlink =~ /Yes/i) { + my $Old = $realimageloc; + my $New = $image_dest; + my $Name = "$image_name"; + my $Link_Dest = "$kimage"; + + if ($reverse_symlink) { + $Old = $image_dest; + $New = $realimageloc; + $Name = "$kimage"; + $Link_Dest = $realimageloc . "$image_name"; + } + if (test_relative ('Old Dir' => $Old, + 'New Dir' => $New, + 'Test File' => $Name)) { + $Old =~ s|^/*||o; + } + # Special case is they are in the same dir + my $rel_path = spath('Old' => "$Old", 'New' => "$New" ); + $Old ="" if $rel_path =~ m/^\s*$/o; + + symlink($Old . "$Name", "$Link_Dest") || + die("Failed to symbolic-link ${Old}$Name to $Link_Dest:$!"); + warn "ln -s ${Old}$Name $Link_Dest" if $DEBUG; + + } +} + +# This routine handles the rest of the cases, where the user has requested +# non-traditional handling, like using cp, or reverse symlinks, or hard links. +sub handle_non_symlinks { + my $kimage = $_[0]; # Name of the symbolic link + my $image_dest = $_[1]; # The directory the links goes into + my $image_name = $_[2]; + my $src_dir = $_[3]; + warn "handle_non_link: kimage=$kimage, image_dest=$image_dest\n" . + "\t image_name=$image_name, src_dir=$src_dir" if $DEBUG; + + # Save the current image. We do this in all four cases + rename("$kimage", "$kimage.$$") || + die "failed to move " . $image_dest . "$kimage:$!"; + warn "mv $kimage $kimage.$$" if $DEBUG; + + ##,#### + # case One + #`#### + if ($no_symlink) { + # Maybe /$image_dest is on a dos system? + warn "cp -a --backup=t $realimageloc$image_name $kimage" if $DEBUG; + my $ret = system("cp -a --backup=t " . $realimageloc + . "$image_name " . "$kimage"); + if ($ret) { + if (-e "$kimage.$$") { + rename("$kimage.$$", "$kimage"); + warn "mv $kimage.$$ $kimage" if $DEBUG; + } + die("Failed to copy " . $realimageloc . "$image_name to " + . $image_dest . "$kimage"); + } + } + ##,#### + # case Two + #`#### + elsif ($reverse_symlink) { # Maybe /$image_dest is on a dos system? + warn "mv -f $realimageloc$image_name $kimage" if $DEBUG; + my $ret = system("mv -f " . $realimageloc . "$image_name " + . $image_dest . "$kimage"); + if ($ret) { + if (-e "$kimage.$$") { + rename("$kimage.$$", "$kimage"); + warn "mv $kimage.$$ $kimage" if $DEBUG; + } + die("Failed to move " . $realimageloc . "$image_name to " + . $image_dest . "$kimage"); + } + my $Old = $image_dest; + if (test_relative ('Old Dir' => $Old, 'New Dir' => $realimageloc, + 'Test File' => "$kimage")) { + $Old =~ s|^/*||o; + } + # Special case is they are in the same dir + my $rel_path = spath('Old' => "$Old", 'New' => "$realimageloc" ); + $Old ="" if $rel_path =~ m/^\s*$/o; + + if ($use_hard_links =~ m/YES/i) { + warn "ln " . $Old . "$kimage " . $realimageloc . "$image_name" if $DEBUG; + if (! link($Old . "$kimage", $realimageloc . "$image_name")) { + warn "Could not link " . $image_dest . + "$kimage to $image_name :$!"; + } + } + else { + warn "ln -s " . $Old . "$kimage " . $realimageloc . "$image_name" if $DEBUG; + if (! symlink($Old . "$kimage", $realimageloc . "$image_name")) { + warn "Could not symlink " . $image_dest . + "$kimage to $image_name :$!"; + } + } + } + ##,#### + # case Three + #`#### + elsif ($use_hard_links =~ m/YES/i ) { + # Ok then. this ought to be a hard link, and hence fair game + # don't clobber $kimage.old quite yet + my $Old = $realimageloc; + my $cwd; + chomp($cwd=`pwd`); + if (test_relative ('Old Dir' => $Old, 'New Dir' => $cwd, + 'Test File' => "$image_name")) { + $Old =~ s|^/*||o; + } + # Special case is they are in the same dir + my $rel_path = spath('Old' => "$Old", 'New' => "$cwd" ); + $Old ="" if $rel_path =~ m/^\s*$/o; + + warn "ln " . $Old . "$image_name " . "$kimage" if $DEBUG; + if (! link($Old . "$image_name", "$kimage")) { + warn "mv $kimage.$$ $kimage" if $DEBUG; + rename("$kimage.$$", "$kimage"); + die("Failed to link " . $realimageloc . "$image_name to " + . $image_dest . "$kimage"); + } + } + ##,#### + # case Four + #`#### + else { + # We just use cp + warn "cp -a --backup=t $realimageloc$image_name $kimage" if $DEBUG; + my $ret = system("cp -a --backup=t " . $realimageloc + . "$image_name " . "$kimage"); + if ($ret) { + if (-e "$kimage.$$") { + warn "mv $kimage.$$ $kimage" if $DEBUG; + rename("$kimage.$$", "$kimage"); + } + die("Failed to copy " . $realimageloc . "$image_name to " + . $image_dest . "$kimage"); + } + } + # Ok, now we may clobber the previous .old file + warn "mv $kimage.$$ $kimage.old if -e $kimage.$$" if $DEBUG; + rename("$kimage.$$", "$kimage.old") if -e "$kimage.$$"; +} + +# This routine is responsible for setting up the symbolic links +# So, the actual kernel image lives in +# $realimageloc/$image_name (/boot/vmlinuz-2.6.12). +# This routine creates symbolic links in $image_dest/$kimage (/vmlinuz) +sub image_magic { + my $kimage = $_[0]; # Name of the symbolic link + my $image_dest = $_[1]; # The directory the links goes into + my $image_name = "$kimage-$version"; + my $src_dir = $realimageloc; + warn "image_magic: kimage=$kimage, image_dest=$image_dest\n" . + "\t image_name=$image_name, src_dir=$src_dir" if $DEBUG; + + # Well, in any case, if the destination (the symlink we are trying + # to create) is a directory, we should do nothing, except throw a + # diagnostic. + if (-d "$kimage" ) { + die ("Hmm. $kimage is a directory, which I did not expect. I am\n" . + "trying to create a symbolic link with that name linked to \n" . + "$image_dest . Since a directory exists here, my assumptions \n" . + "are way off, and I am aborting.\n" ); + exit (3); + } + + if ($move_image) { # Maybe $image_dest is in on dos, or something? + # source dir, link name, dest dir + really_move_image( $realimageloc, $image_name, $image_dest); + really_reverse_link($realimageloc, $image_name, $image_dest) + if $reverse_symlink; + return; + } + + if (-l "$kimage") { # There is a symbolic link + warn "DEBUG: There is a symlink for $kimage\n" if $DEBUG; + my $force_move = move_p($kimage, $image_dest, $image_name, $src_dir); + + if ($force_move) { + really_move_link($kimage, $image_dest, $image_name, $src_dir); + } + } + elsif (! -e "$kimage") { + # Hmm. Pristine system? How can that be? Installing from scratch? + # Or maybe the user does not want a symbolic link here. + # Possibly they do not want a link here. (we should be in / + # here[$image_dest, really] + handle_missing_link($kimage, $image_dest, $image_name, $src_dir); + } + elsif (-e "$kimage" ) { + # OK, $kimage exists -- but is not a link + handle_non_symlinks($kimage, $image_dest, $image_name, $src_dir); + } +} + +###################################################################### +###################################################################### +###################################################################### +###################################################################### + +# We may not have any modules installed +if ( -d "$modules_base/$version" ) { + print STDERR "Running depmod.\n"; + my $ret = system("depmod -a $version"); + if ($ret) { + print STDERR "Failed to run depmod\n"; + exit(1); + } +} + + + +sub find_initrd_tool { + my $hostversion = shift; + my $version = shift; + print STDERR "Finding valid ramdisk creators.\n"; + my @ramdisks = + grep { + my $args = + "$_ " . + "--supported-host-version=$hostversion " . + "--supported-target-version=$version " . + "1>/dev/null 2>&1" + ; + system($args) == 0; + } + split (/[:,\s]+/, $ramdisk); +} + +# The initrd symlink should probably be in the same dir that the +# symlinks are in +if ($initrd) { + my $success = 0; + + # Update-initramfs is called slightly different than mkinitrd and + # mkinitramfs. XXX It should really be made compatible with this stuff + # some how. + my $upgrading = 1; + if (! defined $ARGV[1] || ! $ARGV[1] || $ARGV[1] =~ m//og) { + $upgrading = 0; + } + my $ret = system("$ramdisk " . ($upgrading ? "-u" : "-c") . " -k " . $version . " >&2"); + $success = 1 unless $ret; + die "Failed to create initrd image.\n" unless $success; + if (! defined $ARGV[1] || ! $ARGV[1] || $ARGV[1] =~ m//og) { + image_magic("initrd.img", $image_dest); + } + else { + if (! -e "initrd.img") { + handle_missing_link("initrd.img", $image_dest, "initrd.img-$version", + $realimageloc); + } + else { + print STDERR + "Not updating initrd symbolic links since we are being updated/reinstalled \n"; + print STDERR + "($ARGV[1] was configured last, according to dpkg)\n"; + } + } + + if ($initrd && -l "initrd" ) { + unlink "initrd"; + } + + if ($initrd && -l "$image_dir/initrd" && ! $link_in_boot) { + unlink "$image_dir/initrd"; + } +} +else { # Not making an initrd emage + if (-l "initrd.img") { + # Ooh, last image was an initrd image? in any case, we should move it. + my $target = readlink "initrd.img"; + my $real_target = ''; + $real_target = abs_path($target) if defined ($target); + + if (!defined($target) || ! -f "$real_target") { + # Eh. dangling link. can safely be removed. + unlink("initrd.img"); + } else { + if (-l "initrd.img.old" || ! -e "initrd.img.old" ) { + rename("initrd.img", "initrd.img.old"); + } else { + warn "initrd.img.old is not a symlink, not clobbering\n"; + unlink("initrd.img"); + } + } + } +} + +# Warn of a reboot +if (-x $notifier) { + system($notifier); +} + +# Let programs know not to hibernate if the kernel that would be used for +# resume-from-hibernate is likely to differ from the currently running kernel. +system("mountpoint -q /var/run"); +if ($? eq 0) { + system("touch /var/run/do-not-hibernate"); +} + +# Only change the symlinks if we are not being upgraded +if (! defined $ARGV[1] || ! $ARGV[1] || $ARGV[1] =~ m//og) { + image_magic($kimage, $image_dest); +} +else { + if (! -e "$kimage") { + handle_missing_link($kimage, $image_dest, "$kimage-$version", + $realimageloc); + } + else { + print STDERR + "Not updating image symbolic links since we are being updated/reinstalled \n"; + print STDERR + "($ARGV[1] was configured last, according to dpkg)\n"; + } +} + +# We used to have System.* files in / +if (-e "/System.map" || -e "/System.old") { + unlink '/System.map' if -e '/System.map'; + unlink '/System.old' if -e '/System.old'; +} + +# creating some info about kernel and initrd +if ($DEBUG) { + my $ksize=sprintf("%.0f",(stat($realimageloc . + "$kimage-$version"))[7]/1024)."kB"; + my $initrdsize=''; + if ($initrd) { + $initrdsize=sprintf("%.0f",(stat($realimageloc . + "initrd.img-$version"))[7]/1024)."kB"; + } + + print STDERR <<"EOMSG"; +A new kernel image has been installed at $realimageloc$kimage-$version + (Size: $ksize) + +Symbolic links, unless otherwise specified, can be found in $image_dest + +EOMSG + ; + + if ($initrd) { + print STDERR <<"EOMSGA"; + + Initial rootdisk image: ${realimageloc}initrd.img-$version (Size: $initrdsize) +EOMSGA + ; + } +} + +# set the env var stem +$ENV{'STEM'} = "linux"; +sub exec_script { + my $type = shift; + my $script = shift; + print STDERR "Running $type hook script $script.\n"; + system ("$script $version $realimageloc$kimage-$version") && + print STDERR "User $type hook script [$script] "; + if ($?) { + if ($? == -1) { + print STDERR "failed to execute: $!\n"; + } + elsif ($? & 127) { + printf STDERR "died with signal %d, %s coredump\n", + ($? & 127), ($? & 128) ? 'with' : 'without'; + } + else { + printf STDERR "exited with value %d\n", $? >> 8; + } + exit $? >> 8; + } +} +sub run_hook { + my $type = shift; + my $script = shift; + if ($script =~ m,^/,) { + # Full path provided for the hook script + if (-x "$script") { + &exec_script($type,$script); + } + else { + die "The provided $type hook script [$script] could not be run.\n"; + } + } + else { + # Look for it in a safe path + for my $path ('/bin', '/sbin', '/usr/bin', '/usr/sbin') { + if (-x "$path/$script") { + &exec_script($type, "$path/$script"); + return 0; + } + } + # No luck + print STDERR "Could not find $type hook script [$script].\n"; + die "Looked in: '/bin', '/sbin', '/usr/bin', '/usr/sbin'\n"; + } +} + +my $options; +for (@ARGV) { + s,','\\'',g; + $options .= " '$_'"; +} +$ENV{'DEB_MAINT_PARAMS'}="$options"; + +## Run user hook script here, if any +if ($postinst_hook) { + &run_hook("postinst", $postinst_hook); +} + +if (-d "/etc/kernel/postinst.d") { + print STDERR "Examining /etc/kernel/postinst.d.\n"; + system ("run-parts --verbose --exit-on-error --arg=$version " . + "--arg=$realimageloc$kimage-$version " . + "/etc/kernel/postinst.d") && + die "Failed to process /etc/kernel/postinst.d"; +} + +if (-d "/etc/kernel/postinst.d/$version") { + print STDERR "Examining /etc/kernel/postinst.d/$version.\n"; + system ("run-parts --verbose --exit-on-error --arg=$version " . + "--arg=$realimageloc$kimage-$version " . + "/etc/kernel/postinst.d/$version") && + die "Failed to process /etc/kernel/postinst.d/$version"; +} + +LOADER: { + last unless $do_boot_enable; # Exit if explicitly asked to + + last if $loader =~ /silo/i; # SILO does not have to be executed. + last if $loader =~ /yaboot/i; # yaboot does not have to be executed. + last if $loader =~ /milo/i; # MILO does not have to be executed. + last if $loader =~ /nettrom/i; # NETTROM does not have to be executed. + last if $loader =~ /arcboot/i; # ARCBOOT does not have to be executed. + last if $loader =~ /delo/i; # DELO does not have to be executed. + last if $loader =~ /quik/i; # maintainer asked quik invocation to be ignored + + last unless $loaderloc; + last unless -x $loaderloc; + last unless $do_bootloader; + + if (-T "/etc/$loader.conf") { + # Trust and use the existing lilo.conf. + print STDERR "You already have a $Loader configuration in /etc/$loader.conf\n"; + my $ret = &run_lilo(); + exit $ret if $ret; + } +} + + +sub run_lilo (){ + my $ret; + # Try and figure out if the user really wants lilo to be run -- + # since the default is to run the boot laoder, which is ! grub -- but + # the user may be using grub now, and not changed the default. + + # So, if the user has explicitly asked for the loader to be run, or + # if there is no postinst hook, or if there is no grub installed -- + # we are OK. Or else, we ask. + if ($explicit_do_loader || (! ($postinst_hook && -x '/usr/sbin/grub'))) { + print STDERR "Running boot loader as requested\n"; + } else { + print STDERR "Ok, not running $loader\n"; + } + if ($loader =~ /^lilo/io or $loader =~ /vmelilo/io) { + print STDERR "Testing $loader.conf ... \n"; + unlink $temp_file_name; # security + $ret = system("$loaderloc -t >$temp_file_name 2>&1"); + if ($ret) { + print STDERR "Boot loader test failed\n"; + return $ret; + } + unlink "$temp_file_name"; + print STDERR "Testing successful.\n"; + print STDERR "Installing the "; + print STDERR "partition " if $loader =~ /^lilo/io; + print STDERR "boot sector... \n"; + } + + print STDERR "Running $loaderloc ... \n"; + if ($loader =~ /^elilo/io) { + $ret = system("$loaderloc 2>&1 | tee $temp_file_name"); + } else { + $ret = system("$loaderloc >$temp_file_name 2>&1"); + } + if ($ret) { + print STDERR "Boot loader failed to run\n"; + return $ret; + } + unlink $temp_file_name; + print STDERR "Installation successful.\n"; + return 0; +} + +exit 0; + +__END__ + --- linux-3.13.0.orig/debian/control-scripts/postrm +++ linux-3.13.0/debian/control-scripts/postrm @@ -0,0 +1,361 @@ +#! /usr/bin/perl +# -*- Mode: Cperl -*- +# image.postrm --- +# Author : Manoj Srivastava ( srivasta@glaurung.green-gryphon.com ) +# Created On : Sat May 15 11:05:13 1999 +# Created On Node : glaurung.green-gryphon.com +# Last Modified By : Manoj Srivastava +# Last Modified On : Wed Sep 13 11:26:19 2006 +# Last Machine Used: glaurung.internal.golden-gryphon.com +# Update Count : 57 +# Status : Unknown, Use with caution! +# HISTORY : +# Description : +# +# $Id: image.postrm,v 1.31 2003/10/07 16:24:20 srivasta Exp $ +# + + +# +#use strict; #for debugging +use Cwd 'abs_path'; + +$|=1; + +# Predefined values: +my $version = "=V"; +my $link_in_boot = ""; # Should be empty, mostly +my $no_symlink = ""; # Should be empty, mostly +my $reverse_symlink = ""; # Should be empty, mostly +my $do_symlink = "Yes"; # target machine defined +my $do_boot_enable = "Yes"; # target machine defined +my $do_bootfloppy = "Yes"; # target machine defined +my $do_bootloader = "Yes"; # target machine defined +my $move_image = ''; # target machine defined +my $kimage = "=K"; # Should be empty, mostly +my $loader = "=L"; # lilo, silo, quik, palo, vmelilo, or nettrom +my $image_dir = "/boot"; # where the image is located +my $clobber_modules = ''; # target machine defined +my $initrd = "YES"; # initrd kernel +my $do_initrd = ''; # Normally, we don't +my $warn_initrd = 'YES'; # Normally we do +my $use_hard_links = ''; # hardlinks do not work across fs boundaries +my $postinst_hook = ''; #Normally we do not +my $postrm_hook = ''; #Normally we do not +my $preinst_hook = ''; #Normally we do not +my $prerm_hook = ''; #Normally we do not +my $minimal_swap = ''; # Do not swap symlinks +my $ignore_depmod_err = ''; # normally we do not +my $relink_build_link = 'YES'; # There is no harm in checking the link +my $force_build_link = ''; # we shall not create a dangling link +my $kernel_arch = "=B"; +my $ramdisk = "/usr/sbin/update-initramfs"; +my $package_name = "linux-image-$version"; + +my $Loader = "NoLOADER"; # +$Loader = "LILO" if $loader =~ /^lilo/io; +$Loader = "SILO" if $loader =~ /^silo/io; +$Loader = "QUIK" if $loader =~ /^quik/io; +$Loader = "yaboot" if $loader =~ /^yaboot/io; +$Loader = "PALO" if $loader =~ /^palo/io; +$Loader = "NETTROM" if $loader =~ /^nettrom/io; +$Loader = "VMELILO" if $loader =~ /^vmelilo/io; +$Loader = "ZIPL" if $loader =~ /^zipl/io; +$Loader = "ELILO" if $loader =~ /^elilo/io; + + +# This should not point to /tmp, because of security risks. +my $temp_file_name = "/var/log/$loader" . "_log.$$"; + +#known variables +my @boilerplate = (); +my @silotemplate = (); +my @quiktemplate = (); +my @palotemplate = (); +my @vmelilotemplate = (); +my $bootdevice = ''; +my $rootdevice = ''; +my $rootdisk = ''; +my $rootpartition = ''; +my $image_dest = "/"; +my $realimageloc = "/$image_dir/"; +my $have_conffile = ""; +my $CONF_LOC = '/etc/kernel-img.conf'; +my $relative_links = ''; +my $silent_modules = ''; +my $silent_loader = ''; +my $warn_reboot = 'Yes'; # Warn that we are installing a version of + # the kernel we are running + +chdir('/') or die "could not chdir to /:$!\n"; +# remove multiple leading slashes; make sure there is at least one. +$realimageloc =~ s|^/*|/|o; +$realimageloc =~ s|/+|/|o; + + +if (-r "$CONF_LOC" && -f "$CONF_LOC" ) { + if (open(CONF, "$CONF_LOC")) { + while () { + chomp; + s/\#.*$//g; + next if /^\s*$/; + + $do_symlink = "" if /^\s*do_symlinks\s*=\s*(no|false|0)\s*$/ig; + $no_symlink = "" if /^\s*no_symlinks\s*=\s*(no|false|0)\s*$/ig; + $reverse_symlink = "" if /^\s*reverse_symlinks\s*=\s*(no|false|0)\s*$/ig; + $link_in_boot = "" if /^\s*image_in_boot\s*=\s*(no|false|0)\s*$/ig; + $link_in_boot = "" if /^\s*link_in_boot\s*=\s*(no|false|0)\s*$/ig; + $move_image = "" if /^\s*move_image\s*=\s*(no|false|0)\s*$/ig; + $clobber_modules = '' if /^\s*clobber_modules\s*=\s*(no|false|0)\s*$/ig; + $do_boot_enable = '' if /^\s*do_boot_enable\s*=\s*(no|false|0)\s*$/ig; + $do_bootfloppy = '' if /^\s*do_bootfloppy\s*=\s*(no|false|0)\s*$/ig; + $relative_links = '' if /^\s*relative_links \s*=\s*(no|false|0)\s*$/ig; + $do_bootloader = '' if /^\s*do_bootloader\s*=\s*(no|false|0)\s*$/ig; + $do_initrd = '' if /^\s*do_initrd\s*=\s*(no|false|0)\s*$/ig; + $warn_initrd = '' if /^\s*warn_initrd\s*=\s*(no|false|0)\s*$/ig; + $use_hard_links = '' if /^\s*use_hard_links\s*=\s*(no|false|0)\s*$/ig; + $silent_modules = '' if /^\s*silent_modules\s*=\s*(no|false|0)\s*$/ig; + $silent_loader = '' if /^\s*silent_loader\s*=\s*(no|false|0)\s*$/ig; + $warn_reboot = '' if /^\s*warn_reboot\s*=\s*(no|false|0)\s*$/ig; + $minimal_swap = '' if /^\s*minimal_swap\s*=\s*(no|false|0)\s*$/ig; + $ignore_depmod_err = '' if /^\s*ignore_depmod_err\s*=\s*(no|false|0)\s*$/ig; + $relink_build_link = '' if /^\s*relink_build_link\s*=\s*(no|false|0)\s*$/ig; + $force_build_link = '' if /^\s*force_build_link\s*=\s*(no|false|0)\s*$/ig; + + $do_symlink = "Yes" if /^\s*do_symlinks\s*=\s*(yes|true|1)\s*$/ig; + $no_symlink = "Yes" if /^\s*no_symlinks\s*=\s*(yes|true|1)\s*$/ig; + $reverse_symlink = "Yes" if /^\s*reverse_symlinks\s*=\s*(yes|true|1)\s*$/ig; + $link_in_boot = "Yes" if /^\s*image_in_boot\s*=\s*(yes|true|1)\s*$/ig; + $link_in_boot = "Yes" if /^\s*link_in_boot\s*=\s*(yes|true|1)\s*$/ig; + $move_image = "Yes" if /^\s*move_image\s*=\s*(yes|true|1)\s*$/ig; + $clobber_modules = "Yes" if /^\s*clobber_modules\s*=\s*(yes|true|1)\s*$/ig; + $do_boot_enable = "Yes" if /^\s*do_boot_enable\s*=\s*(yes|true|1)\s*$/ig; + $do_bootfloppy = "Yes" if /^\s*do_bootfloppy\s*=\s*(yes|true|1)\s*$/ig; + $do_bootloader = "Yes" if /^\s*do_bootloader\s*=\s*(yes|true|1)\s*$/ig; + $relative_links = "Yes" if /^\s*relative_links\s*=\s*(yes|true|1)\s*$/ig; + $do_initrd = "Yes" if /^\s*do_initrd\s*=\s*(yes|true|1)\s*$/ig; + $warn_initrd = "Yes" if /^\s*warn_initrd\s*=\s*(yes|true|1)\s*$/ig; + $use_hard_links = "Yes" if /^\s*use_hard_links\s*=\s*(yes|true|1)\s*$/ig; + $silent_modules = 'Yes' if /^\s*silent_modules\s*=\s*(yes|true|1)\s*$/ig; + $silent_loader = 'Yes' if /^\s*silent_loader\s*=\s*(yes|true|1)\s*$/ig; + $warn_reboot = 'Yes' if /^\s*warn_reboot\s*=\s*(yes|true|1)\s*$/ig; + $minimal_swap = 'Yes' if /^\s*minimal_swap\s*=\s*(yes|true|1)\s*$/ig; + $ignore_depmod_err = 'Yes' if /^\s*ignore_depmod_err\s*=\s*(yes|true|1)\s*$/ig; + $relink_build_link = 'Yes' if /^\s*relink_build_link\s*=\s*(yes|true|1)\s*$/ig; + $force_build_link = 'Yes' if /^\s*force_build_link\s*=\s*(yes|true|1)\s*$/ig; + + $image_dest = "$1" if /^\s*image_dest\s*=\s*(\S+)/ig; + $postinst_hook = "$1" if /^\s*postinst_hook\s*=\s*(\S+)/ig; + $postrm_hook = "$1" if /^\s*postrm_hook\s*=\s*(\S+)/ig; + $preinst_hook = "$1" if /^\s*preinst_hook\s*=\s*(\S+)/ig; + $prerm_hook = "$1" if /^\s*prerm_hook\s*=\s*(\S+)/ig; + $ramdisk = "$1" if /^\s*ramdisk\s*=\s*(.+)$/ig; + } + close CONF; + $have_conffile = "Yes"; + } +} + +if ($link_in_boot) { + $image_dest = "/$image_dir/"; + $image_dest =~ s|^/*|/|o; +} + +$image_dest = "$image_dest/"; +$image_dest =~ s|/+$|/|o; + +# The destdir may be gone by now. +if (-d "$image_dest") { + chdir("$image_dest") or die "could not chdir to $image_dest:$!\n"; +} + +# Paranoid check to make sure that the correct value is put in there +if (! $kimage) {$kimage = "vmlinuz"} # Hmm. empty +elsif ($kimage =~ m/^b?uImage$/o) {$kimage = "vmlinuz"} # these produce vmlinuz +elsif ($kimage =~ m/^b?zImage$/o) {$kimage = "vmlinuz"} # these produce vmlinuz +elsif ($kimage =~ m/^[iI]mage$/o) { my $nop = $kimage;} +elsif ($kimage =~ m/^vmlinux$/o) { my $nop = $kimage;} +else {$kimage = "vmlinuz"} # default + +$ENV{KERNEL_ARCH}=$kernel_arch if $kernel_arch; + + +###################################################################### +###################################################################### +############ +###################################################################### +###################################################################### +sub remove_sym_link { + my $bad_image = $_[0]; + + warn "Removing symbolic link $bad_image \n"; + if ($loader =~ /lilo/i) + { + warn "Unless you used the optional flag in lilo, \n"; + } + warn " you may need to re-run your boot loader" . ($loader ? "[$loader]":"") + . "\n"; + # Remove the dangling link + unlink "$bad_image"; +} + +###################################################################### +###################################################################### +############ +###################################################################### +###################################################################### +sub CanonicalizePath { + my $path = join '/', @_; + my @work = split '/', $path; + my @out; + my $is_absolute; + + if (@work && $work[0] eq "") { $is_absolute = 1; shift @work; } + + while (@work) { + my $seg = shift @work; + if ($seg eq "." || $seg eq "") { + } elsif ($seg eq "..") { + if (@out && $out[-1] ne "..") { + pop @out; + } else { + # Leading "..", or "../..", etc. + push @out, $seg; + } + } else { + push @out, $seg; + } + } + + unshift @out, "" if $is_absolute; + return join('/', @out); +} + +###################################################################### +###################################################################### +############ +###################################################################### +###################################################################### +# This removes dangling symlinks. What do we do about hard links? Surely a +# something with the nane $image_dest . "$kimage" ought not to be left behind? +sub image_magic { + my $kimage = $_[0]; + my $image_dest = $_[1]; + + if (-l "$kimage") { + # There is a symbolic link + my $force_move = 0; + my $vmlinuz_target = readlink "$kimage"; + my $real_target = ''; + $real_target = abs_path($vmlinuz_target) if defined ($vmlinuz_target); + if (!defined($vmlinuz_target) || ! -f "$real_target") { + # what, a dangling symlink? + warn "The link " . $image_dest . "$kimage is a damaged link\n"; + # Remove the dangling link + &remove_sym_link("$kimage"); + } + else { + my $canonical_target = CanonicalizePath("$vmlinuz_target"); + if (! -e $canonical_target) { + warn "The link " . $image_dest . "$kimage is a dangling link\n"; + &remove_sym_link("$kimage"); + } + } + } +} + +# set the env var stem +$ENV{'STEM'} = "linux"; + +sub exec_script { + my $type = shift; + my $script = shift; + print STDERR "Running $type hook script $script.\n"; + system ("$script $version $realimageloc$kimage-$version") && + print STDERR "User $type hook script [$script] "; + if ($?) { + if ($? == -1) { + print STDERR "failed to execute: $!\n"; + } + elsif ($? & 127) { + printf STDERR "died with signal %d, %s coredump\n", + ($? & 127), ($? & 128) ? 'with' : 'without'; + } + else { + printf STDERR "exited with value %d\n", $? >> 8; + } + } +} +sub run_hook { + my $type = shift; + my $script = shift; + if ($script =~ m,^/,) { + # Full path provided for the hook script + if (-x "$script") { + &exec_script($type,$script); + } + else { + warn "The provided $type hook script [$script] could not be run.\n"; + } + } + else { + # Look for it in a safe path + for my $path ('/bin', '/sbin', '/usr/bin', '/usr/sbin') { + if (-x "$path/$script") { + &exec_script($type, "$path/$script"); + return 0; + } + } + # No luck + print STDERR "Could not find $type hook script [$script].\n"; + warn "Looked in: '/bin', '/sbin', '/usr/bin', '/usr/sbin'\n"; + } +} + +my $options; +for (@ARGV) { + s,','\\'',g; + $options .= " '$_'"; +} +$ENV{'DEB_MAINT_PARAMS'}="$options"; + +## Run user hook script here, if any +if ($postrm_hook) { + &run_hook("postrm", $postrm_hook); +} +if (-d "/etc/kernel/postrm.d") { + warn "Examining /etc/kernel/postrm.d .\n"; + system ("run-parts --verbose --exit-on-error --arg=$version " . + "--arg=$realimageloc$kimage-$version " . + "/etc/kernel/postrm.d") && + die "Failed to process /etc/kernel/postrm.d"; +} +if (-d "/etc/kernel/postrm.d/$version") { + warn "Examining /etc/kernel/postrm.d/$version .\n"; + system ("run-parts --verbose --exit-on-error --arg=$version " . + "--arg=$realimageloc$kimage-$version " . + "/etc/kernel/postrm.d/$version") && + die "Failed to process /etc/kernel/postrm.d/$version"; +} + +# check and remove damaged and dangling symlinks +if ($ARGV[0] !~ /upgrade/) { + system("$ramdisk -d -k " . $version . " > /dev/null 2>&1"); + if (-f $realimageloc . "initrd.img-$version.bak") { + unlink $realimageloc . "initrd.img-$version.bak"; + } + image_magic($kimage, $image_dest); + image_magic($kimage . ".old", $image_dest); + image_magic("initrd.img", $image_dest) if $initrd; + image_magic("initrd.img.old", $image_dest) if $initrd; +} + +exit 0; + +__END__ + + + + + + --- linux-3.13.0.orig/debian/control-scripts/preinst +++ linux-3.13.0/debian/control-scripts/preinst @@ -0,0 +1,315 @@ +#! /usr/bin/perl +# -*- Mode: Cperl -*- +# image.preinst --- +# Author : Manoj Srivastava ( srivasta@tiamat.datasync.com ) +# Created On : Sun Jun 14 03:38:02 1998 +# Created On Node : tiamat.datasync.com +# Last Modified By : Manoj Srivastava +# Last Modified On : Sun Sep 24 14:04:42 2006 +# Last Machine Used: glaurung.internal.golden-gryphon.com +# Update Count : 99 +# Status : Unknown, Use with caution! +# HISTORY : +# Description : +# +# + +# +#use strict; #for debugging + +use Debconf::Client::ConfModule qw(:all); +version('2.0'); +my $capb=capb("backup"); + +$|=1; + +# Predefined values: +my $version = "=V"; +my $link_in_boot = ""; # Should be empty, mostly +my $no_symlink = ""; # Should be empty, mostly +my $reverse_symlink = ""; # Should be empty, mostly +my $do_symlink = "Yes"; # target machine defined +my $do_boot_enable = "Yes"; # target machine defined +my $do_bootfloppy = "Yes"; # target machine defined +my $do_bootloader = "Yes"; # target machine defined +my $move_image = ''; # target machine defined +my $kimage = "=K"; # Should be empty, mostly +my $loader = "=L"; # lilo, silo, quik, palo, vmelilo, nettrom + # or elilo +my $image_dir = "/boot"; # where the image is located +my $initrd = "YES"; # initrd kernel +my $use_hard_links = ''; # hardlinks do not wirk across fs boundaries +my $postinst_hook = ''; #Normally we do not +my $postrm_hook = ''; #Normally we do not +my $preinst_hook = ''; #Normally we do not +my $prerm_hook = ''; #Normally we do not +my $minimal_swap = ''; # Do not swap symlinks +my $ignore_depmod_err = ''; # normally we do not +my $relink_src_link = 'YES'; # There is no harm in checking the link +my $relink_build_link = 'YES'; # There is no harm in checking the link +my $force_build_link = ''; # There is no harm in checking the link +my $kernel_arch = "=B"; +my $ramdisk = "/usr/sbin/update-initramfs"; # List of tools to create initial ram fs. +my $package_name = "linux-image-$version"; + +my $Loader = "NoLOADER"; # +$Loader = "LILO" if $loader =~ /^lilo/io; +$Loader = "SILO" if $loader =~ /^silo/io; +$Loader = "QUIK" if $loader =~ /^quik/io; +$Loader = "yaboot" if $loader =~ /^yaboot/io; +$Loader = "PALO" if $loader =~ /^palo/io; +$Loader = "NETTROM" if $loader =~ /^nettrom/io; +$Loader = "VMELILO" if $loader =~ /^vmelilo/io; +$Loader = "ZIPL" if $loader =~ /^zipl/io; +$Loader = "ELILO" if $loader =~ /^elilo/io; + + +#known variables +my @boilerplate = (); +my @silotemplate = (); +my @quiktemplate = (); +my @palotemplate = (); +my @vmelilotemplate = (); +my $bootdevice = ''; +my $rootdevice = ''; +my $rootdisk = ''; +my $rootpartition = ''; +my $image_dest = "/"; +my $realimageloc = "/$image_dir/"; +my $have_conffile = ""; +my $CONF_LOC = '/etc/kernel-img.conf'; +my $relative_links = ''; +my $silent_loader = ''; +my $warn_reboot = ''; # Warn that we are installing a version of + # the kernel we are running + +my $modules_base = '/lib/modules'; + +die "Pre inst Internal error. Aborting." unless $version; + +exit 0 if $ARGV[0] =~ /abort-upgrade/; +exit 1 unless $ARGV[0] =~ /(install|upgrade)/; + +$arch = `uname -i`; +if ($arch =~ m/86/) { + system ("grep -q ' pae ' /proc/cpuinfo"); + if ($?) { + print STDERR "This kernel does not support a non-PAE CPU.\n"; + exit 1; + } +} + +# remove multiple leading slashes; make sure there is at least one. +$realimageloc =~ s|^/*|/|o; +$realimageloc =~ s|/+|/|o; + +if (-r "$CONF_LOC" && -f "$CONF_LOC" ) { + if (open(CONF, "$CONF_LOC")) { + while () { + chomp; + s/\#.*$//g; + next if /^\s*$/; + + $do_symlink = "" if /^\s*do_symlinks\s*=\s*(no|false|0)\s*$/ig; + $no_symlink = "" if /^\s*no_symlinks\s*=\s*(no|false|0)\s*$/ig; + $reverse_symlink = "" if /^\s*reverse_symlinks\s*=\s*(no|false|0)\s*$/ig; + $link_in_boot = "" if /^\s*image_in_boot\s*=\s*(no|false|0)\s*$/ig; + $link_in_boot = "" if /^\s*link_in_boot\s*=\s*(no|false|0)\s*$/ig; + $move_image = "" if /^\s*move_image\s*=\s*(no|false|0)\s*$/ig; + $do_boot_enable = '' if /^\s*do_boot_enable\s*=\s*(no|false|0)\s*$/ig; + $do_bootfloppy = '' if /^\s*do_bootfloppy\s*=\s*(no|false|0)\s*$/ig; + $do_bootloader = '' if /^\s*do_bootloader\s*=\s*(no|false|0)\s*$/ig; + $relative_links = '' if /^\s*relative_links \s*=\s*(no|false|0)\s*$/ig; + $use_hard_links = '' if /^\s*use_hard_links\s*=\s*(no|false|0)\s*$/ig; + $silent_loader = '' if /^\s*silent_loader\s*=\s*(no|false|0)\s*$/ig; + $warn_reboot = '' if /^\s*warn_reboot\s*=\s*(no|false|0)\s*$/ig; + $minimal_swap = '' if /^\s*minimal_swap\s*=\s*(no|false|0)\s*$/ig; + $ignore_depmod_err = '' if /^\s*ignore_depmod_err\s*=\s*(no|false|0)\s*$/ig; + $relink_src_link = '' if /^\s*relink_src_link\s*=\s*(no|false|0)\s*$/ig; + $relink_build_link = '' if /^\s*relink_build_link\s*=\s*(no|false|0)\s*$/ig; + $force_build_link = '' if /^\s*force_build_link\s*=\s*(no|false|0)\s*$/ig; + + $do_symlink = "Yes" if /^\s*do_symlinks\s*=\s*(yes|true|1)\s*$/ig; + $no_symlink = "Yes" if /^\s*no_symlinks\s*=\s*(yes|true|1)\s*$/ig; + $reverse_symlink = "Yes" if /^\s*reverse_symlinks\s*=\s*(yes|true|1)\s*$/ig; + $link_in_boot = "Yes" if /^\s*image_in_boot\s*=\s*(yes|true|1)\s*$/ig; + $link_in_boot = "Yes" if /^\s*link_in_boot\s*=\s*(yes|true|1)\s*$/ig; + $move_image = "Yes" if /^\s*move_image\s*=\s*(yes|true|1)\s*$/ig; + $do_boot_enable = "Yes" if /^\s*do_boot_enable\s*=\s*(yes|true|1)\s*$/ig; + $do_bootfloppy = "Yes" if /^\s*do_bootfloppy\s*=\s*(yes|true|1)\s*$/ig; + $do_bootloader = "Yes" if /^\s*do_bootloader\s*=\s*(yes|true|1)\s*$/ig; + $relative_links = "Yes" if /^\s*relative_links\s*=\s*(yes|true|1)\s*$/ig; + $use_hard_links = "Yes" if /^\s*use_hard_links\s*=\s*(yes|true|1)\s*$/ig; + $silent_loader = 'Yes' if /^\s*silent_loader\s*=\s*(yes|true|1)\s*$/ig; + $warn_reboot = 'Yes' if /^\s*warn_reboot\s*=\s*(yes|true|1)\s*$/ig; + $minimal_swap = 'Yes' if /^\s*minimal_swap\s*=\s*(yes|true|1)\s*$/ig; + $ignore_depmod_err = 'Yes' if /^\s*ignore_depmod_err\s*=\s*(yes|true|1)\s*$/ig; + $relink_src_link = 'Yes' if /^\s*relink_src_link\s*=\s*(yes|true|1)\s*$/ig; + $relink_build_link = 'Yes' if /^\s*relink_build_link\s*=\s*(yes|true|1)\s*$/ig; + $force_build_link = 'Yes' if /^\s*force_build_link\s*=\s*(yes|true|1)\s*$/ig; + + $image_dest = "$1" if /^\s*image_dest\s*=\s*(\S+)/ig; + $postinst_hook = "$1" if /^\s*postinst_hook\s*=\s*(\S+)/ig; + $postrm_hook = "$1" if /^\s*postrm_hook\s*=\s*(\S+)/ig; + $preinst_hook = "$1" if /^\s*preinst_hook\s*=\s*(\S+)/ig; + $prerm_hook = "$1" if /^\s*prerm_hook\s*=\s*(\S+)/ig; + $ramdisk = "$1" if /^\s*ramdisk\s*=\s*(.+)$/ig; + } + close CONF; + $have_conffile = "Yes"; + $have_conffile = "Yes"; # stop perl complaining + } +} + +$ENV{KERNEL_ARCH}=$kernel_arch if $kernel_arch; + +# About to upgrade this package from version $2 TO THIS VERSION. +# "prerm upgrade" has already been called for the old version of +# this package. + +sub find_initrd_tool { + my $hostversion = shift; + my $version = shift; + my @ramdisks = + grep { + my $args = + "$_ " . + "--supported-host-version=$hostversion " . + "--supported-target-version=$version " . + "1>/dev/null 2>&1" + ; + system($args) == 0; + } + split (/[:,\s]+/, $ramdisk); +} + +sub check { + my $version = shift; + my $lib_modules="$modules_base/$version"; + my $message = ''; + + if (-d "$lib_modules") { + opendir(DIR, $lib_modules) || die "can’t opendir $lib_modules: $!"; + my @children = readdir(DIR); + if ($#children > 1) { + my @dirs = grep { -d "$lib_modules/$_" } @children; + if ($#dirs > 1) { # we have subdirs + my $dir_message=''; + for my $dir (@dirs) { + if ($dir =~/kernel$/) { + $dir_message="An older install was detected.\n"; + } + else { + $dir_message="Module sub-directories were detected.\n" + unless $dir_message; + } + } + $message += $dir_message if $dir_message; + } + + my @links = grep { -l "$lib_modules/$_" } @children; + if ($#links > -1) { + my $links_message = ''; + for my $link (@links) { + next if ($link =~ /^build$/); + next if ($link =~ /^source$/); + $links_message = "Symbolic links were detected in $modules_base/$version.\n"; + } + $message += $links_message if $links_message; + } + my @files = grep { -f "$lib_modules/$_" } @children; + $message += "Additional files also exist in $modules_base/$version.\n" + if ($#files > -1); + } + } + else { $message .= "$lib_modules does not exist. ";} + return $message; +} + +if (-d "$modules_base/$version") { + my $errors=check($version); + warn "Info:\n$errors\n" if $errors; +} + +# set the env var stem +$ENV{'STEM'} = "linux"; + +sub exec_script { + my $type = shift; + my $script = shift; + print STDERR "Running $type hook script $script.\n"; + system ("$script $version $realimageloc$kimage-$version") && + print STDERR "User $type hook script [$script] "; + if ($?) { + if ($? == -1) { + print STDERR "failed to execute: $!\n"; + } + elsif ($? & 127) { + printf STDERR "died with signal %d, %s coredump\n", + ($? & 127), ($? & 128) ? 'with' : 'without'; + } + else { + printf STDERR "exited with value %d\n", $? >> 8; + } + exit $? >> 8; + } +} +sub run_hook { + my $type = shift; + my $script = shift; + if ($script =~ m,^/,) { + # Full path provided for the hook script + if (-x "$script") { + &exec_script($type,$script); + } + else { + die "The provided $type hook script [$script] could not be run.\n"; + } + } + else { + # Look for it in a safe path + for my $path ('/bin', '/sbin', '/usr/bin', '/usr/sbin') { + if (-x "$path/$script") { + &exec_script($type, "$path/$script"); + return 0; + } + } + # No luck + print STDERR "Could not find $type hook script [$script].\n"; + die "Looked in: '/bin', '/sbin', '/usr/bin', '/usr/sbin'\n"; + } +} + + +my $options; +for (@ARGV) { + s,','\\'',g; + $options .= " '$_'"; +} +$ENV{'DEB_MAINT_PARAMS'}="$options"; + +## Run user hook script here, if any +if (-x "$preinst_hook") { + &run_hook("preinst", $preinst_hook); +} +if (-d "/etc/kernel/preinst.d") { + print STDERR "Examining /etc/kernel/preinst.d/\n"; + system ("run-parts --verbose --exit-on-error --arg=$version" . + " --arg=$realimageloc$kimage-$version" . + " /etc/kernel/preinst.d") && + die "Failed to process /etc/kernel/preinst.d"; +} +if (-d "/etc/kernel/preinst.d/$version") { + print STDERR "Examining /etc/kernel/preinst.d/$version.\n"; + system ("run-parts --verbose --exit-on-error --arg=$version" . + " --arg=$realimageloc$kimage-$version" . + " /etc/kernel/preinst.d/$version") && + die "Failed to process /etc/kernel/preinst.d/$version"; +} +print STDERR "Done.\n"; + +exit 0; + +__END__ + + --- linux-3.13.0.orig/debian/control-scripts/prerm +++ linux-3.13.0/debian/control-scripts/prerm @@ -0,0 +1,312 @@ +#! /usr/bin/perl +# -*- Mode: Perl -*- +# image.prerm --- +# Author : root ( root@melkor.pilgrim.umass.edu ) +# Created On : Fri May 17 03:28:59 1996 +# Created On Node : melkor.pilgrim.umass.edu +# Last Modified By : Manoj Srivastava +# Last Modified On : Sat Aug 5 13:14:17 2006 +# Last Machine Used: glaurung.internal.golden-gryphon.com +# Update Count : 85 +# Status : Unknown, Use with caution! +# HISTORY : +# Description : +# +# +# $Id: image.prerm,v 1.22 2003/10/07 16:24:20 srivasta Exp $ +# +# +#use strict; + +$|=1; +# Predefined values: +my $version = "=V"; +my $link_in_boot = ""; # Should be empty, mostly +my $no_symlink = ""; # Should be empty, mostly +my $reverse_symlink = ""; # Should be empty, mostly +my $do_symlinks = "Yes"; # target machine defined +my $do_boot_enable = "Yes"; # target machine defined +my $do_bootfloppy = "Yes"; # target machine defined +my $do_bootloader = "Yes"; # target machine defined +my $move_image = ''; # target machine defined +my $kimage = "=K"; # Should be empty, mostly +my $loader = "=L"; # lilo, silo, quik, palo, vmelilo, or nettrom +my $image_dir = "/boot"; # where the image is located +my $clobber_modules = ''; # target machine defined +my $initrd = "YES"; # initrd kernel +my $use_hard_links = ''; # hardlinks do not wirk across fs boundaries +my $postinst_hook = ''; #Normally we do not +my $postrm_hook = ''; #Normally we do not +my $preinst_hook = ''; #Normally we do not +my $prerm_hook = ''; #Normally we do not +my $minimal_swap = ''; # Do not swap symlinks +my $ignore_depmod_err = ''; # normally we do not +my $relink_build_link = 'YES'; # There is no harm in checking the link +my $force_build_link = ''; # There is no harm in checking the link +my $kernel_arch = "=B"; +my $ramdisk = "/usr/sbin/update-initramfs"; +my $package_name = "linux-image-$version"; + +my $Loader = "NoLOADER"; # +$Loader = "LILO" if $loader =~ /^lilo/io; +$Loader = "SILO" if $loader =~ /^silo/io; +$Loader = "QUIK" if $loader =~ /^quik/io; +$Loader = "yaboot" if $loader =~ /^yaboot/io; +$Loader = "PALO" if $loader =~ /^palo/io; +$Loader = "NETTROM" if $loader =~ /^nettrom/io; +$Loader = "VMELILO" if $loader =~ /^vmelilo/io; +$Loader = "ZIPL" if $loader =~ /^zipl/io; +$Loader = "ELILO" if $loader =~ /^elilo/io; + + +# This should not point to /tmp, because of security risks. +my $temp_file_name = "/var/log/$loader" . "_log.$$"; + +#known variables +my $image_dest = "/"; +my $realimageloc = "/$image_dir/"; +my $have_conffile = ""; +my $CONF_LOC = '/etc/kernel-img.conf'; +my $relative_links = ''; +my $silent_loader = ''; +my $warn_reboot = 'Yes'; # Warn that we are installing a version of + # the kernel we are running + +# remove multiple leading slashes; make sure there is at least one. +$realimageloc =~ s|^/*|/|o; +$realimageloc =~ s|/+|/|o; + +my $DEBUG = 0; + +# Variables used +my $image=''; +my $ret=0; +my $seen=''; +my $answer=''; +my $running = ''; +my $WouldInvalidate = 0; + +if ($ARGV[0] && ($ARGV[0] =~ /remove/ || $ARGV[0] =~ /upgrade/)) { + if (-l "/usr/doc/linux-image-$version") { + unlink "/usr/doc/linux-image-$version"; + } +} + +# Ignore all invocations uxcept when called on to remove +exit 0 unless ($ARGV[0] && $ARGV[0] =~ /remove/) ; + +# Paranoid check to make sure that the correct value is put in there +if (! $kimage) { $kimage = "vmlinuz";} # Hmm. empty +elsif ($kimage =~ m/^b?uImage$/o) { $kimage = "vmlinuz";} # these produce vmlinuz +elsif ($kimage =~ m/^b?zImage$/o) { $kimage = "vmlinuz";} # these produce vmlinuz +elsif ($kimage =~ m/^[iI]mage$/o) { my $nop = $kimage; } +elsif ($kimage =~ m/^vmlinux$/o) { my $nop = $kimage; } +else { $kimage = "vmlinuz";} # Default + +if (-r "$CONF_LOC" && -f "$CONF_LOC" ) { + if (open(CONF, "$CONF_LOC")) { + while () { + chomp; + s/\#.*$//g; + next if /^\s*$/; + + $do_symlink = "" if /^\s*do_symlinks\s*=\s*(no|false|0)\s*$/ig; + $no_symlink = "" if /^\s*no_symlinks\s*=\s*(no|false|0)\s*$/ig; + $reverse_symlink = "" if /^\s*reverse_symlinks\s*=\s*(no|false|0)\s*$/ig; + $link_in_boot = "" if /^\s*image_in_boot\s*=\s*(no|false|0)\s*$/ig; + $link_in_boot = "" if /^\s*link_in_boot\s*=\s*(no|false|0)\s*$/ig; + $move_image = "" if /^\s*move_image\s*=\s*(no|false|0)\s*$/ig; + $clobber_modules = '' if /^\s*clobber_modules\s*=\s*(no|false|0)\s*$/ig; + $do_boot_enable = '' if /^\s*do_boot_enable\s*=\s*(no|false|0)\s*$/ig; + $do_bootfloppy = '' if /^\s*do_bootfloppy\s*=\s*(no|false|0)\s*$/ig; + $relative_links = '' if /^\s*relative_links \s*=\s*(no|false|0)\s*$/ig; + $do_bootloader = '' if /^\s*do_bootloader\s*=\s*(no|false|0)\s*$/ig; + $do_initrd = '' if /^\s*do_initrd\s*=\s*(no|false|0)\s*$/ig; + $use_hard_links = '' if /^\s*use_hard_links\s*=\s*(no|false|0)\s*$/ig; + $silent_loader = '' if /^\s*silent_loader\s*=\s*(no|false|0)\s*$/ig; + $warn_reboot = '' if /^\s*warn_reboot\s*=\s*(no|false|0)\s*$/ig; + $minimal_swap = '' if /^\s*minimal_swap\s*=\s*(no|false|0)\s*$/ig; + $ignore_depmod_err = '' if /^\s*ignore_depmod_err\s*=\s*(no|false|0)\s*$/ig; + $relink_build_link = '' if /^\s*relink_build_link\s*=\s*(no|false|0)\s*$/ig; + $force_build_link = '' if /^\s*force_build_link\s*=\s*(no|false|0)\s*$/ig; + + + $do_symlink = "Yes" if /^\s*do_symlinks\s*=\s*(yes|true|1)\s*$/ig; + $no_symlink = "Yes" if /^\s*no_symlinks\s*=\s*(yes|true|1)\s*$/ig; + $reverse_symlink = "Yes" if /^\s*reverse_symlinks\s*=\s*(yes|true|1)\s*$/ig; + $link_in_boot = "Yes" if /^\s*image_in_boot\s*=\s*(yes|true|1)\s*$/ig; + $link_in_boot = "Yes" if /^\s*link_in_boot\s*=\s*(yes|true|1)\s*$/ig; + $move_image = "Yes" if /^\s*move_image\s*=\s*(yes|true|1)\s*$/ig; + $clobber_modules = "Yes" if /^\s*clobber_modules\s*=\s*(yes|true|1)\s*$/ig; + $do_boot_enable = "Yes" if /^\s*do_boot_enable\s*=\s*(yes|true|1)\s*$/ig; + $do_bootfloppy = "Yes" if /^\s*do_bootfloppy\s*=\s*(yes|true|1)\s*$/ig; + $do_bootloader = "Yes" if /^\s*do_bootloader\s*=\s*(yes|true|1)\s*$/ig; + $relative_links = "Yes" if /^\s*relative_links\s*=\s*(yes|true|1)\s*$/ig; + $do_initrd = "Yes" if /^\s*do_initrd\s*=\s*(yes|true|1)\s*$/ig; + $use_hard_links = "Yes" if /^\s*use_hard_links\s*=\s*(yes|true|1)\s*$/ig; + $silent_loader = 'Yes' if /^\s*silent_loader\s*=\s*(yes|true|1)\s*$/ig; + $warn_reboot = 'Yes' if /^\s*warn_reboot\s*=\s*(yes|true|1)\s*$/ig; + $minimal_swap = 'Yes' if /^\s*minimal_swap\s*=\s*(yes|true|1)\s*$/ig; + $ignore_depmod_err = 'Yes' if /^\s*ignore_depmod_err\s*=\s*(yes|true|1)\s*$/ig; + $relink_build_link = 'Yes' if /^\s*relink_build_link\s*=\s*(yes|true|1)\s*$/ig; + $force_build_link = 'Yes' if /^\s*force_build_link\s*=\s*(yes|true|1)\s*$/ig; + + $image_dest = "$1" if /^\s*image_dest\s*=\s*(\S+)/ig; + $postinst_hook = "$1" if /^\s*postinst_hook\s*=\s*(\S+)/ig; + $postrm_hook = "$1" if /^\s*postrm_hook\s*=\s*(\S+)/ig; + $preinst_hook = "$1" if /^\s*preinst_hook\s*=\s*(\S+)/ig; + $prerm_hook = "$1" if /^\s*prerm_hook\s*=\s*(\S+)/ig; + $ramdisk = "$1" if /^\s*ramdisk\s*=\s*(.+)$/ig; + } + close CONF; + $have_conffile = "Yes"; + } +} + + +$ENV{KERNEL_ARCH}=$kernel_arch if $kernel_arch; + +#check to see if we are trying to remove a running kernel +# if so we abort right now. +chop($running=`uname -r`); +if ($running eq $version) { + print STDERR "WARN: Proceeding with removing running kernel image.\n"; +} + +#Now, they have an alternate kernel which they are currently running + +# This is just us being nice to lilo users. + +chdir("/") or die "could not chdir to /:$!\n"; + +if (-f "/etc/$loader.conf") { #I know, could be a link, but .. + open (LILO, "/etc/$loader.conf") || &success(); # this is not critical + while () { + chop; + s/\#.*//; # nix the comments + next unless /^\s*image\s*=\s(\S+)/o; + $image = $1; + if ($image && -e $image) { + while (defined($image) && -l $image) { + $image = readlink ($image); + } + if (defined($image) && -e $image) { + $WouldInvalidate |= $image =~ /$kimage-$version/; + } + else { + &success(); # invalid $loader.conf file + } + } + else { + &success(); # invalid $loader.conf file + } + } + close (LILO); + if ($WouldInvalidate) { + print STFERR "WARN: Proceeding with removing running kernel image.\n"; + &success(); + } +} + + +# set the env var stem +$ENV{'STEM'} = "linux"; + +sub exec_script { + my $type = shift; + my $script = shift; + print STDERR "Running $type hook script $script.\n"; + system ("$script $version $realimageloc$kimage-$version") && + print STDERR "User $type hook script [$script] "; + if ($?) { + if ($? == -1) { + print STDERR "failed to execute: $!\n"; + } + elsif ($? & 127) { + printf STDERR "died with signal %d, %s coredump\n", + ($? & 127), ($? & 128) ? 'with' : 'without'; + } + else { + printf STDERR "exited with value %d\n", $? >> 8; + } + exit $? >> 8; + } +} +sub run_hook { + my $type = shift; + my $script = shift; + if ($script =~ m,^/,) { + # Full path provided for the hook script + if (-x "$script") { + &exec_script($type,$script); + } + else { + die "The provided $type hook script [$script] could not be run.\n"; + } + } + else { + # Look for it in a safe path + for my $path ('/bin', '/sbin', '/usr/bin', '/usr/sbin') { + if (-x "$path/$script") { + &exec_script($type, "$path/$script"); + return 0; + } + } + # No luck + print STDERR "Could not find $type hook script [$script].\n"; + die "Looked in: '/bin', '/sbin', '/usr/bin', '/usr/sbin'\n"; + } +} + + +my $options; +for (@ARGV) { + s,','\\'',g; + $options .= " '$_'"; +} +$ENV{'DEB_MAINT_PARAMS'}="$options"; + +## Run user hook script here, if any +if (-x "$prerm_hook") { + &run_hook("prerm", $prerm_hook); +} +if (-d "/etc/kernel/prerm.d") { + print STDERR "Examining /etc/kernel/prerm.d.\n"; + system ("run-parts --verbose --exit-on-error --arg=$version " . + "--arg=$realimageloc$kimage-$version /etc/kernel/prerm.d") && + die "Failed to process /etc/kernel/prerm.d"; +} +if (-d "/etc/kernel/prerm.d/$version") { + print STDERR "Examining /etc/kernel/prerm.d/$version.\n"; + system ("run-parts --verbose --exit-on-error --arg=$version" . + " --arg=$realimageloc$kimage-$version " . + "/etc/kernel/prerm.d/$version") && + die "Failed to process /etc/kernel/prerm.d/$version"; +} + +sub success () { + # NOTE: need to keep this list in sync with rules.d/2-binary-arch.mk + my %files_to_keep = ( + 'modules.builtin' => 1, + 'modules.order' => 1, + ); + my $short; + for my $file () { + $short = $file; $short =~ s,.*/,,; + if (!defined $files_to_keep{$short}) { + unlink "$file"; + } + } + exit 0; +} + + + +&success(); +exit 0; +__END__ + + + + + --- linux-3.13.0.orig/debian/control.stub +++ linux-3.13.0/debian/control.stub @@ -0,0 +1,975 @@ +Source: linux +Section: devel +Priority: optional +Maintainer: Ubuntu Kernel Team +Standards-Version: 3.9.4.0 +Build-Depends: debhelper (>= 5), cpio, module-init-tools, kernel-wedge (>= 2.24ubuntu1), makedumpfile [amd64 i386], libelf-dev, libnewt-dev, libiberty-dev, rsync, libdw-dev, libpci-dev, dpkg (>= 1.16.0~ubuntu4), pkg-config, flex, bison, libunwind8-dev, openssl, libaudit-dev, bc, python-dev, gawk, device-tree-compiler [powerpc], u-boot-tools [powerpc], libc6-dev-ppc64 [powerpc] +Build-Depends-Indep: xmlto, docbook-utils, ghostscript, transfig, bzip2, sharutils, asciidoc +Vcs-Git: http://kernel.ubuntu.com/git-repos/ubuntu/ubuntu-trusty.git +XS-Testsuite: autopkgtest +#XS-Testsuite-Depends: gcc-4.7 binutils + +Package: linux-source-3.13.0 +Architecture: all +Section: devel +Priority: optional +Provides: linux-source, linux-source-3 +Depends: ${misc:Depends}, binutils, bzip2, coreutils | fileutils (>= 4.0) +Recommends: libc-dev, gcc, make +Suggests: libncurses-dev | ncurses-dev, kernel-package, libqt3-dev +Description: Linux kernel source for version 3.13.0 with Ubuntu patches + This package provides the source code for the Linux kernel version + 3.13.0. + . + This package is mainly meant for other packages to use, in order to build + custom flavours. + . + If you wish to use this package to create a custom Linux kernel, then it + is suggested that you investigate the package kernel-package, which has + been designed to ease the task of creating kernel image packages. + . + If you are simply trying to build third-party modules for your kernel, + you do not want this package. Install the appropriate linux-headers + package instead. + +Package: linux-doc +Architecture: all +Section: doc +Priority: optional +Depends: ${misc:Depends} +Conflicts: linux-doc-3 +Replaces: linux-doc-3 +Description: Linux kernel specific documentation for version 3.13.0 + This package provides the various documents in the 3.13.0 kernel + Documentation/ subdirectory. These document kernel subsystems, APIs, device + drivers, and so on. See + /usr/share/doc/linux-doc/00-INDEX for a list of what is + contained in each file. + +Package: linux-headers-3.13.0-29 +Architecture: all +Multi-Arch: foreign +Section: devel +Priority: optional +Depends: ${misc:Depends}, coreutils | fileutils (>= 4.0) +Description: Header files related to Linux kernel version 3.13.0 + This package provides kernel header files for version 3.13.0, for sites + that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details + +Package: linux-libc-dev +Architecture: i386 amd64 armhf arm64 x32 powerpc ppc64el +Depends: ${misc:Depends} +Conflicts: libc6-dev (<< 2.3.2.ds1-6), libc6.1-dev (<< 2.3.2.ds1-6), dvb-dev (<< 1.0.1-6), amd64-libs-dev (<= 1.1), linux-kernel-headers +Replaces: libc6-dev (<< 2.3.2.ds1-6), libc6.1-dev (<< 2.3.2.ds1-6), dvb-dev (<< 1.0.1-6), linux-kernel-headers, libdrm-dev +Provides: linux-kernel-headers +Multi-Arch: same +Description: Linux Kernel Headers for development + This package provides headers from the Linux kernel. These headers + are used by the installed headers for GNU glibc and other system + libraries. They are NOT meant to be used to build third-party modules for + your kernel. Use linux-headers-* packages for that. + +Package: linux-tools-common +Architecture: all +Multi-Arch: foreign +Section: kernel +Priority: optional +Depends: ${misc:Depends} +Replaces: linux-tools (<= 2.6.32-16.25) +Description: Linux kernel version specific tools for version 3.13.0 + This package provides the architecture independent parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version PGKVER. + +Package: linux-tools-3.13.0-29 +Architecture: i386 amd64 armhf arm64 powerpc ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-tools-common +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + You probabally want to install linux-tools-3.13.0-29-. + +Package: linux-cloud-tools-common +Architecture: all +Multi-Arch: foreign +Section: kernel +Priority: optional +Breaks: linux-tools-common (<< 3.13.0-8.28), hv-kvp-daemon-init (<< 3.13) +Replaces: linux-tools-common (<< 3.13.0-8.28), hv-kvp-daemon-init (<< 3.13) +Depends: ${misc:Depends} +Description: Linux kernel version specific cloud tools for version 3.13.0 + This package provides the architecture independent parts for kernel + version locked tools for cloud tools for version PGKVER. + +Package: linux-cloud-tools-3.13.0-29 +Architecture: i386 amd64 armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-cloud-tools-common +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud tools for version 3.13.0-29 on + 64 bit x86. + You probabally want to install linux-cloud-tools-3.13.0-29-. + + +Package: linux-image-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, kvm-api-4, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-pc [i386 amd64 x32] | grub-efi-amd64 [amd64 x32] | grub-efi-ia32 [i386 amd64 x32] | grub [i386 amd64 x32] | lilo (>= 19.1) [i386 amd64 x32] | flash-kernel [armhf arm64] | grub-ieee1275 [ppc64el] +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-generic +Description: Linux kernel image for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel image for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Generic processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-generic meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-generic, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Generic processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-generic meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64 bit x86 SMP + This package provides kernel header files for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-generic-dbgsym +Architecture: i386 amd64 armhf arm64 ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP + This package provides a kernel debug image for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-generic +Architecture: i386 amd64 armhf arm64 ppc64el +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-generic +XC-Package-Type: udeb +Section: debian-installer +Architecture: i386 amd64 armhf arm64 ppc64el +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-generic-lpae +Architecture: armhf +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, kvm-api-4, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: flash-kernel [armhf] +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-generic-lpae +Description: Linux kernel image for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel image for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Generic LPAE processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-generic-lpae meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-generic-lpae +Architecture: armhf +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-generic-lpae, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Generic LPAE processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-generic-lpae meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-generic-lpae +Architecture: armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64 bit x86 SMP + This package provides kernel header files for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-generic-lpae-dbgsym +Architecture: armhf +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP + This package provides a kernel debug image for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-generic-lpae +Architecture: armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-generic-lpae +Architecture: armhf +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-generic-lpae +XC-Package-Type: udeb +Section: debian-installer +Architecture: armhf +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, kvm-api-4, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-pc [i386 amd64 x32] | grub-efi-amd64 [amd64 x32] | grub-efi-ia32 [i386 amd64 x32] | grub [i386 amd64 x32] | lilo (>= 19.1) [i386 amd64 x32] | flash-kernel [armhf arm64] +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-lowlatency +Description: Linux kernel image for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel image for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Lowlatency processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-lowlatency meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-lowlatency, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 64 bit x86 SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports Lowlatency processors. + . + Geared toward desktop and server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-lowlatency meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64 bit x86 SMP + This package provides kernel header files for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-lowlatency-dbgsym +Architecture: i386 amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64 bit x86 SMP + This package provides a kernel debug image for version 3.13.0 on + 64 bit x86 SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-lowlatency +Architecture: i386 amd64 +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-lowlatency +XC-Package-Type: udeb +Section: debian-installer +Architecture: i386 amd64 +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-ieee1275 +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc64-emb +Description: Linux kernel image for version 3.13.0 on 64-bit PowerPC SMP Book3E + This package contains the Linux kernel image for version 3.13.0 on + 64-bit PowerPC SMP Book3E. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 64-bit PowerPC SMP Book3E processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc64-emb meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc64-emb, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64-bit PowerPC SMP Book3E + This package contains the Linux kernel extra modules for version 3.13.0 on + 64-bit PowerPC SMP Book3E. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 64-bit PowerPC SMP Book3E processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc64-emb meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64-bit PowerPC SMP Book3E + This package provides kernel header files for version 3.13.0 on + 64-bit PowerPC SMP Book3E. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc64-emb-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64-bit PowerPC SMP Book3E + This package provides a kernel debug image for version 3.13.0 on + 64-bit PowerPC SMP Book3E. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc64-emb +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc64-emb +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: yaboot +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc64-smp +Description: Linux kernel image for version 3.13.0 on 64-bit PowerPC SMP + This package contains the Linux kernel image for version 3.13.0 on + 64-bit PowerPC SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 64-bit PowerPC SMP processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc64-smp meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc64-smp, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 64-bit PowerPC SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 64-bit PowerPC SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 64-bit PowerPC SMP processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc64-smp meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 64-bit PowerPC SMP + This package provides kernel header files for version 3.13.0 on + 64-bit PowerPC SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc64-smp-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 64-bit PowerPC SMP + This package provides a kernel debug image for version 3.13.0 on + 64-bit PowerPC SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc64-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc64-smp +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-ieee1275 +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc-e500 +Description: Linux kernel image for version 3.13.0 on 32-bit Freescale Power e500v1 and e500v2 + This package contains the Linux kernel image for version 3.13.0 on + 32-bit Freescale Power e500v1 and e500v2. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit Freescale Power e500v1 and e500v2 processors. + . + Geared toward server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-e500 meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc-e500, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 32-bit Freescale Power e500v1 and e500v2 + This package contains the Linux kernel extra modules for version 3.13.0 on + 32-bit Freescale Power e500v1 and e500v2. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit Freescale Power e500v1 and e500v2 processors. + . + Geared toward server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-e500 meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 32-bit Freescale Power e500v1 and e500v2 + This package provides kernel header files for version 3.13.0 on + 32-bit Freescale Power e500v1 and e500v2. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc-e500-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 32-bit Freescale Power e500v1 and e500v2 + This package provides a kernel debug image for version 3.13.0 on + 32-bit Freescale Power e500v1 and e500v2. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc-e500 +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc-e500 +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: grub-ieee1275 +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc-e500mc +Description: Linux kernel image for version 3.13.0 on 32-bit Freescale Power e500mc + This package contains the Linux kernel image for version 3.13.0 on + 32-bit Freescale Power e500mc. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit Freescale Power e500mc processors. + . + Geared toward server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-e500mc meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc-e500mc, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 32-bit Freescale Power e500mc + This package contains the Linux kernel extra modules for version 3.13.0 on + 32-bit Freescale Power e500mc. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit Freescale Power e500mc processors. + . + Geared toward server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-e500mc meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 32-bit Freescale Power e500mc + This package provides kernel header files for version 3.13.0 on + 32-bit Freescale Power e500mc. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc-e500mc-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 32-bit Freescale Power e500mc + This package provides a kernel debug image for version 3.13.0 on + 32-bit Freescale Power e500mc. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc-e500mc +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc-e500mc +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + + +Package: linux-image-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: kernel +Priority: optional +Pre-Depends: dpkg (>= 1.10.24) +Provides: linux-image, linux-image-3.0, fuse-module, redhat-cluster-modules, ivtv-modules +Depends: ${misc:Depends}, ${shlibs:Depends}, initramfs-tools (>= 0.36ubuntu6), module-init-tools (>= 3.3-pre11-4ubuntu3) +Conflicts: hotplug (<< 0.0.20040105-1) +Recommends: yaboot +Suggests: fdutils, linux-doc-3.13.0 | linux-source-3.13.0, linux-tools, linux-headers-3.13.0-29-powerpc-smp +Description: Linux kernel image for version 3.13.0 on 32-bit PowerPC SMP + This package contains the Linux kernel image for version 3.13.0 on + 32-bit PowerPC SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit PowerPC SMP processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-smp meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-image-extra-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: kernel +Priority: optional +Depends: ${misc:Depends}, ${shlibs:Depends}, linux-image-3.13.0-29-powerpc-smp, crda (>=1.1.1-1ubuntu2) | wireless-crda +Description: Linux kernel extra modules for version 3.13.0 on 32-bit PowerPC SMP + This package contains the Linux kernel extra modules for version 3.13.0 on + 32-bit PowerPC SMP. + . + Also includes the corresponding System.map file, the modules built by the + packager, and scripts that try to ensure that the system is not left in an + unbootable state after an update. + . + Supports 32-bit PowerPC SMP processors. + . + Geared toward desktop or server systems. + . + You likely do not want to install this package directly. Instead, install + the linux-powerpc-smp meta-package, which will ensure that upgrades work + correctly, and that supporting packages are also installed. + +Package: linux-headers-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-headers-3.13.0-29, ${shlibs:Depends} +Provides: linux-headers, linux-headers-3.0 +Description: Linux kernel headers for version 3.13.0 on 32-bit PowerPC SMP + This package provides kernel header files for version 3.13.0 on + 32-bit PowerPC SMP. + . + This is for sites that want the latest kernel headers. Please read + /usr/share/doc/linux-headers-3.13.0-29/debian.README.gz for details. + +Package: linux-image-3.13.0-29-powerpc-smp-dbgsym +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends} +Provides: linux-debug +Description: Linux kernel debug image for version 3.13.0 on 32-bit PowerPC SMP + This package provides a kernel debug image for version 3.13.0 on + 32-bit PowerPC SMP. + . + This is for sites that wish to debug the kernel. + . + The kernel image contained in this package is NOT meant to boot from. It + is uncompressed, and unstripped. This package also includes the + unstripped modules. + +Package: linux-tools-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-tools-3.13.0-29 +Description: Linux kernel version specific tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools (such as perf and x86_energy_perf_policy) for + version 3.13.0-29 on + 64 bit x86. + +Package: linux-cloud-tools-3.13.0-29-powerpc-smp +Architecture: powerpc +Section: devel +Priority: optional +Depends: ${misc:Depends}, linux-cloud-tools-3.13.0-29 +Description: Linux kernel version specific cloud tools for version 3.13.0-29 + This package provides the architecture dependant parts for kernel + version locked tools for cloud for version 3.13.0-29 on + 64 bit x86. + +Package: linux-udebs-powerpc-smp +XC-Package-Type: udeb +Section: debian-installer +Architecture: powerpc +Depends: ${udeb:Depends} +Description: Metapackage depending on kernel udebs + This package depends on the all udebs that the kernel build generated, + for easier version and migration tracking. + --- linux-3.13.0.orig/debian/copyright +++ linux-3.13.0/debian/copyright @@ -0,0 +1,29 @@ +This is the Ubuntu prepackaged version of the Linux kernel. +Linux was written by Linus Torvalds +and others. + +This package was put together by the Ubuntu Kernel Team, from +sources retrieved from upstream linux git. +The sources may be found at most Linux ftp sites, including +ftp://ftp.kernel.org/pub/linux/kernel/ + +This package is currently maintained by the +Ubuntu Kernel Team + +Linux is copyrighted by Linus Torvalds and others. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 dated June, 1991. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +On Ubuntu Linux systems, the complete text of the GNU General +Public License v2 can be found in `/usr/share/common-licenses/GPL-2'. --- linux-3.13.0.orig/debian/debian.env +++ linux-3.13.0/debian/debian.env @@ -0,0 +1 @@ +DEBIAN=debian.master --- linux-3.13.0.orig/debian/docs/README.inclusion-list +++ linux-3.13.0/debian/docs/README.inclusion-list @@ -0,0 +1,51 @@ +This README describes the reason for, and the use of, module +inclusion lists. + +The original Hardy release had the notion of sub-flavours, +e.g., a flavour that was constructed as a subset of an existing flavour. +For example, the virtual flavour was extracted from the server flavour using +a subset of the server flavour modules. However, there were some difficult +mainteneance issues with regard to packaging, make rules, and scripts. This +re-implementation of the sub-flavours philosophy is hopefully simpler, +and retrofitable to all releases. + +A module inclusion list looks at the problem of of constructing a package +from the perspective of what modules do we _want_ in the package, as opposed +to what modules we _don't_ want. As the kernel matures, more and more devices are added +which makes the problem of configuration maintenance a real pain in the ass. +If we took the approach of disabling all of the config options that we don't want, +then the differences between flavours will quickly become quite large, making +it difficult to quickly compare the individual flavour configs. Each time a +new config option is added then we also have to make a decision about disabling in +order to continue to keep the minimal number of modules. + +A module inclusion list is applied on a per-flavour basis. For example, +debian./control.d/${flavour}.inclusion-list. For example, the +config for virtual is very close to server and generic, but the inclusion list +causes the virtual package to be constructed with _only_ the modules described +in the inclusion list. + +The inclusion list format is a simple bash regular expression list of files. For example, + +arch/*/{crypto,kernel,oprofile} +drivers/acpi/* +drivers/ata/ahci.ko + +These 3 regular expression forms are suitable for expansion by bash and as inputs to 'find'. +See debian/scripts/module-inclusion for details. + +There are 2 log files created as a side effect of the application of the module +inclusion list; $(flavour).inclusion-list.log and $(flavour).depmod.log. + +$(flavour).inclusion-list.log : This log is created while the inclusion list +modules are being copied. If any are missing, then those warnings go in this log. +While its not considered a fatal error, you should endevour to correct your inclusion +list such that there are no missing modules. + +$(flavour).depmod.log : The log is created as a result of running depmod on the +resulting set of modules. If there are missing symbols then you'll find that information +here. Again, you should modify your inclusion list such that there are no missing +symbols. + +Tim Gardner +June 2, 2010 --- linux-3.13.0.orig/debian/linux-cloud-tools-common.hv-fcopy-daemon.upstart +++ linux-3.13.0/debian/linux-cloud-tools-common.hv-fcopy-daemon.upstart @@ -0,0 +1,22 @@ +# On Azure/Hyper-V systems start the hv_fcopy_daemon +# +description "Hyper-V File Copy Protocol Daemon" +author "Andy Whitcroft " + +start on runlevel [2345] +stop on runlevel [!2345] +console log + +pre-start script + if [ -e "/etc/default/hv-kvp-daemon-init" ]; then + . /etc/default/hv-kvp-daemon-init + fi + [ "$RUN_FCOPY_DAEMON" -eq 0 ] && { stop; exit 0; } + if [ -d /sys/class/dmi/id/. ]; then + read company " + +start on runlevel [2345] +stop on runlevel [!2345] +console log + +pre-start script + if [ -e "/etc/default/hv-kvp-daemon-init" ]; then + . /etc/default/hv-kvp-daemon-init + fi + [ "$RUN_KVP_DAEMON" = 0 ] && { stop; exit 0; } + if [ -d /sys/class/dmi/id/. ]; then + read company " + +start on runlevel [2345] +stop on runlevel [!2345] +console log + +pre-start script + if [ -e "/etc/default/hv-kvp-daemon-init" ]; then + . /etc/default/hv-kvp-daemon-init + fi + [ "$RUN_VSS_DAEMON" -eq 0 ] && { stop; exit 0; } + if [ -d /sys/class/dmi/id/. ]; then + read company +# + +DEBIAN=$(shell awk -F= '($$1 == "DEBIAN") { print $$2 }' $$new; \ + done + flavours="$(wildcard $(DEBIAN)/control.d/vars.* $(DEBIAN)/sub-flavours/*.vars)";\ + for i in $$flavours; do \ + $(SHELL) $(DROOT)/scripts/control-create $$i | \ + sed -e 's/PKGVER/$(release)/g' \ + -e 's/ABINUM/$(abinum)/g' \ + -e 's/SRCPKGNAME/$(src_pkg_name)/g' \ + -e 's/=HUMAN=/$(human_arch)/g' \ + >> $(DEBIAN)/control.stub; \ + done + cp $(DEBIAN)/control.stub $(DEBIAN)/control + +.PHONY: debian/control +debian/control: $(DEBIAN)/control.stub + rm -rf $(builddir)/modules $(builddir)/firmware \ + $(builddir)/kernel-versions $(builddir)/package-list \ + $(builddir)/$(DEBIAN) + mkdir -p $(builddir)/modules/$(arch)/ + cp $(DEBIAN)/d-i/modules/* $(builddir)/modules/$(arch)/ + mkdir -p $(builddir)/firmware/$(arch)/ + cp $(DEBIAN)/d-i/firmware/* $(builddir)/firmware/$(arch)/ + cp $(DEBIAN)/d-i/package-list $(DEBIAN)/d-i/kernel-versions $(builddir)/ + touch $(builddir)/modules/$(arch)/kernel-image + # kernel-wedge needs to poke around in $(DEBIAN)/ + ln -nsf $(CURDIR)/debian $(builddir)/debian + + # Some files may need to differ between architectures + if [ -d $(DEBIAN)/d-i/modules-$(arch) ]; then \ + cp $(DEBIAN)/d-i/modules-$(arch)/* \ + $(builddir)/modules/$(arch)/; \ + fi + if [ -d $(DEBIAN)/d-i/firmware-$(arch) ]; then \ + cp $(DEBIAN)/d-i/firmware-$(arch)/* \ + $(builddir)/firmware/$(arch)/; \ + fi + + # Remove unwanted stuff for this architecture + if [ -r "$(DEBIAN)/d-i/exclude-modules.$(arch)" ]; then \ + (cat $(DEBIAN)/d-i/exclude-modules.$(arch); \ + ls $(builddir)/modules/$(arch)/) | sort | uniq -d | \ + (cd $(builddir)/modules/$(arch)/; xargs rm -f); \ + fi + if [ -r "$(DEBIAN)/d-i/exclude-firmware.$(arch)" ]; then \ + (cat $(DEBIAN)/d-i/exclude-firmware.$(arch); \ + ls $(builddir)/firmware/$(arch)/) | sort | uniq -d | \ + (cd $(builddir)/firmware/$(arch)/; xargs rm -f); \ + fi + + # Per flavour module lists + flavour_modules=`ls $(DEBIAN)/d-i/modules.$(arch)-* 2>/dev/null` \ + || true; \ + if [ "$$flavour_modules" != "" ]; then \ + for flav in $$flavour_modules; do \ + name=`echo $$flav | sed 's/.*\/modules.$(arch)-//'`; \ + mkdir $(builddir)/modules/$(arch)-$$name; \ + (cd $(builddir)/modules/; tar cf - `cat ../$$flav`) | \ + (cd $(builddir)/modules/$(arch)-$$name/; tar xf -); \ + touch $(builddir)/modules/$(arch)-$$name/kernel-image; \ + done; \ + fi + flavour_firmware=`ls $(DEBIAN)/d-i/firmware.$(arch)-* 2>/dev/null` \ + || true; \ + if [ "$$flavour_firmware" != "" ]; then \ + for flav in $$flavour_firmware; do \ + name=`echo $$flav | sed 's/.*\/firmware.$(arch)-//'`; \ + mkdir $(builddir)/firmware/$(arch)-$$name; \ + (cd $(builddir)/firmware/; tar cf - `cat ../$$flav`) | \ + (cd $(builddir)/firmware/$(arch)-$$name/; tar xf -);\ + touch $(builddir)/firmware/$(arch)-$$name/kernel-image; \ + done; \ + fi + + # Some files may need to differ between flavours + flavour_module_dirs=`ls -d $(DEBIAN)/d-i/modules-$(arch)-* 2>/dev/null`\ + || true; \ + if [ "$$flavour_module_dirs" ]; then \ + for flav in $$flavour_module_dirs; do \ + name=`echo $$flav | sed 's/.*\/modules-$(arch)-//'`; \ + [ -d $(builddir)/modules/$(arch)-$$name ] || \ + cp -a $(builddir)/modules/$(arch) \ + modules/$(arch)-$$name; \ + cp $$flav/* $(builddir)/modules/$(arch)-$$name/; \ + done; \ + fi + flavour_firmware_dirs=`ls -d $(DEBIAN)/d-i/firmware-$(arch)-* 2>/dev/null`\ + || true; \ + if [ "$$flavour_firmware_dirs" ]; then \ + for flav in $$flavour_firmware_dirs; do \ + name=`echo $$flav | sed 's/.*\/firmware-$(arch)-//'`; \ + [ -d $(builddir)/firmware/$(arch)-$$name ] || \ + cp -a $(builddir)/firmware/$(arch) \ + firmware/$(arch)-$$name; \ + cp $$flav/* $(builddir)/firmware/$(arch)-$$name/; \ + done; \ + fi + + # Remove unwanted stuff for each flavour + flavour_exclude=`ls $(DEBIAN)/d-i/exclude-modules.$(arch)-* 2>/dev/null`\ + || true; \ + if [ "$$flavour_exclude" ]; then \ + for flav in $$flavour_exclude; do \ + name=`echo $$flav | sed 's/.*\/exclude-modules.$(arch)-//'`;\ + [ -d $(builddir)/modules/$(arch)-$$name ] || \ + cp -a $(builddir)/modules/$(arch) \ + $(builddir)/modules/$(arch)-$$name; \ + (cat $$flav; \ + ls $(builddir)/modules/$(arch)-$$name) | \ + sort | uniq -d | \ + (cd $(builddir)/modules/$(arch)-$$name/; \ + xargs rm -f); \ + done; \ + fi + flavour_exclude=`ls $(DEBIAN)/d-i/exclude-firmware.$(arch)-* 2>/dev/null`\ + || true; \ + if [ "$$flavour_exclude" ]; then \ + for flav in $$flavour_exclude; do \ + name=`echo $$flav | sed 's/.*\/exclude-firmware.$(arch)-//'`;\ + [ -d $(builddir)/firmware/$(arch)-$$name ] || \ + cp -a $(builddir)/firmware/$(arch) \ + $(builddir)/firmware/$(arch)-$$name; \ + (cat $$flav; \ + ls $(builddir)/firmware/$(arch)-$$name) | \ + sort | uniq -d | \ + (cd $(builddir)/firmware/$(arch)-$$name/; \ + xargs rm -f); \ + done; \ + fi + + if [ ! -d $(builddir)/modules/$(build_arch) ]; then \ + mkdir -p $(builddir)/modules/$(build_arch); \ + cp $(builddir)/modules/$(arch)/* \ + $(builddir)/modules/$(build_arch); \ + fi + if [ ! -d $(builddir)/firmware/$(build_arch) ]; then \ + mkdir -p $(builddir)/firmware/$(build_arch); \ + cp $(builddir)/firmware/$(arch)/* \ + $(builddir)/firmware/$(build_arch); \ + fi + + cp $(DEBIAN)/control.stub debian/control.stub + cd $(builddir) && kernel-wedge gen-control > $(CURDIR)/debian/control --- linux-3.13.0.orig/debian/rules.d/0-common-vars.mk +++ linux-3.13.0/debian/rules.d/0-common-vars.mk @@ -0,0 +1,235 @@ +# +# The source package name will be the first token from $(DEBIAN)/changelog +# +src_pkg_name=$(shell sed -n '1s/^\(.*\) (.*).*$$/\1/p' $(DEBIAN)/changelog) + +# Get some version info +release := $(shell sed -n '1s/^$(src_pkg_name).*(\(.*\)-.*).*$$/\1/p' $(DEBIAN)/changelog) +revisions := $(shell sed -n 's/^$(src_pkg_name)\ .*($(release)-\(.*\)).*$$/\1/p' $(DEBIAN)/changelog | tac) +revision ?= $(word $(words $(revisions)),$(revisions)) +prev_revisions := $(filter-out $(revision),0.0 $(revisions)) +prev_revision := $(word $(words $(prev_revisions)),$(prev_revisions)) + +prev_fullver ?= $(shell dpkg-parsechangelog -l$(DEBIAN)/changelog -o1 -c1 | sed -ne 's/^Version: *//p') + +family=ubuntu + +# This is an internally used mechanism for the daily kernel builds. It +# creates packages whose ABI is suffixed with a minimal representation of +# the current git HEAD sha. If .git/HEAD is not present, then it uses the +# uuidgen program, +# +# AUTOBUILD can also be used by anyone wanting to build a custom kernel +# image, or rebuild the entire set of Ubuntu packages using custom patches +# or configs. +AUTOBUILD= + +ifneq ($(AUTOBUILD),) +skipabi = true +skipmodule = true +skipdbg = true +gitver=$(shell if test -f .git/HEAD; then cat .git/HEAD; else uuidgen; fi) +gitverpre=$(shell echo $(gitver) | cut -b -3) +gitverpost=$(shell echo $(gitver) | cut -b 38-40) +abi_suffix = -$(gitverpre)$(gitverpost) +endif + +ifneq ($(NOKERNLOG),) +ubuntu_log_opts += --no-kern-log +endif +ifneq ($(PRINTSHAS),) +ubuntu_log_opts += --print-shas +endif + +# Get the kernels own extra version to be added to the release signature. +raw_kernelversion=$(shell make kernelversion) + +# +# full_build -- are we doing a full buildd style build +# +ifeq ($(wildcard /CurrentlyBuilding),) +full_build?=false +else +full_build?=true +endif + +# +# The debug packages are ginormous, so you probably want to skip +# building them (as a developer). +# +ifeq ($(full_build),false) +skipdbg=true +endif + +abinum := $(shell echo $(revision) | sed -e 's/\..*//')$(abi_suffix) +prev_abinum := $(shell echo $(prev_revision) | sed -e 's/\..*//')$(abi_suffix) +abi_release := $(release)-$(abinum) + +uploadnum := $(shell echo $(revision) | sed -e 's/.*\.//') +ifneq ($(full_build),false) + uploadnum := $(uploadnum)-Ubuntu +endif + +# XXX: linux-libc-dev got bumped to -803.N inadvertantly by a ti-omap4 upload +# shift our version higher for this package only. Ensure this only +# occurs for the v2.6.35 kernel so that we do not propogate this into +# any other series. +raw_uploadnum := $(shell echo $(revision) | sed -e 's/.*\.//') +libc_dev_version := +ifeq ($(DEBIAN),debian.master) +ifeq ($(release),2.6.35) +libc_dev_version := -v$(release)-$(shell expr "$(abinum)" + 1000).$(raw_uploadnum) +endif +endif + +DEB_HOST_MULTIARCH = $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) +DEB_HOST_GNU_TYPE = $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE = $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +DEB_HOST_ARCH = $(shell dpkg-architecture -qDEB_HOST_ARCH) +DEB_BUILD_ARCH = $(shell dpkg-architecture -qDEB_BUILD_ARCH) + +# +# Detect invocations of the form 'fakeroot debian/rules binary arch=armhf' +# within an x86'en schroot. This only gets you part of the way since the +# packaging phase fails, but you can at least compile the kernel quickly. +# +arch := $(DEB_HOST_ARCH) +ifneq ($(arch),$(DEB_HOST_ARCH)) + CROSS_COMPILE ?= $(shell dpkg-architecture -a$(arch) -qDEB_HOST_GNU_TYPE -f 2>/dev/null)- +endif + +# +# Detect invocations of the form 'dpkg-buildpackage -B -aarmhf' within +# an x86'en schroot. This is the only way to build all of the packages +# (except for tools). +# +ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE)) + CROSS_COMPILE ?= $(DEB_HOST_GNU_TYPE)- +endif + +abidir := $(CURDIR)/$(DEBIAN)/abi/$(release)-$(revision)/$(arch) +prev_abidir := $(CURDIR)/$(DEBIAN)/abi/$(release)-$(prev_revision)/$(arch) +commonconfdir := $(CURDIR)/$(DEBIAN)/config +archconfdir := $(CURDIR)/$(DEBIAN)/config/$(arch) +sharedconfdir := $(CURDIR)/debian.master/config +builddir := $(CURDIR)/debian/build +stampdir := $(CURDIR)/debian/stamps + +# +# The binary package name always starts with linux-image-$KVER-$ABI.$UPLOAD_NUM. There +# are places that you'll find linux-image hard coded, but I guess thats OK since the +# assumption that the binary package always starts with linux-image will never change. +# +bin_pkg_name=linux-image-$(abi_release) +extra_pkg_name=linux-image-extra-$(abi_release) +hdrs_pkg_name=linux-headers-$(abi_release) +indep_hdrs_pkg_name=linux-headers-$(abi_release) + +# +# The generation of content in the doc package depends on both 'AUTOBUILD=' and +# 'do_doc_package_content=true'. There are usually build errors during the development +# cycle, so its OK to leave 'do_doc_package_content=false' until those build +# failures get sorted out. Finally, the doc package doesn't really need to be built +# for developer testing (its kind of slow), so only do it if on a buildd. +do_doc_package=true +do_doc_package_content=true +ifeq ($(full_build),false) +do_doc_package_content=false +endif +doc_pkg_name=$(src_pkg_name)-doc + +# +# Similarly with the linux-source package, you need not build it as a developer. Its +# somewhat I/O intensive and utterly useless. +# +do_source_package=true +do_source_package_content=true +ifeq ($(full_build),false) +do_source_package_content=false +endif + +# linux-libc-dev may not be needed, default to building it. +do_libc_dev_package=true + +# common headers normally is built as an indep package, but may be arch +do_common_headers_indep=true + +# add a 'full source' mode +do_full_source=false + +# build tools +ifneq ($(wildcard $(CURDIR)/tools),) + ifeq ($(do_tools),) + ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE)) + do_tools=false + endif + endif + do_tools?=true +else + do_tools?=false +endif +tools_pkg_name=$(src_pkg_name)-tools-$(abi_release) +tools_common_pkg_name=$(src_pkg_name)-tools-common +tools_flavour_pkg_name=linux-tools-$(abi_release) +cloud_pkg_name=$(src_pkg_name)-cloud-tools-$(abi_release) +cloud_common_pkg_name=$(src_pkg_name)-cloud-tools-common +cloud_flavour_pkg_name=linux-cloud-tools-$(abi_release) + +# The general flavour specific image package. +do_flavour_image_package=true + +# The general flavour specific header package. +do_flavour_header_package=true + +# Support parallel= in DEB_BUILD_OPTIONS (see #209008) +# +# These 2 environment variables set the -j value of the kernel build. For example, +# CONCURRENCY_LEVEL=16 fakeroot $(DEBIAN)/rules binary-debs +# or +# DEB_BUILD_OPTIONS=parallel=16 fakeroot $(DEBIAN)/rules binary-debs +# +# The default is to use the number of CPUs. +# +COMMA=, +DEB_BUILD_OPTIONS_PARA = $(subst parallel=,,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS)))) +ifneq (,$(DEB_BUILD_OPTIONS_PARA)) + CONCURRENCY_LEVEL := $(DEB_BUILD_OPTIONS_PARA) +endif + +ifeq ($(CONCURRENCY_LEVEL),) + # Check the environment + CONCURRENCY_LEVEL := $(shell echo $$CONCURRENCY_LEVEL) + # No? Then build with the number of CPUs on the host. + ifeq ($(CONCURRENCY_LEVEL),) + CONCURRENCY_LEVEL := $(shell expr `getconf _NPROCESSORS_ONLN` \* 1) + endif + # Oh hell, give 'em one + ifeq ($(CONCURRENCY_LEVEL),) + CONCURRENCY_LEVEL := 1 + endif +endif + +conc_level = -j$(CONCURRENCY_LEVEL) + +# target_flavour is filled in for each step +kmake = make ARCH=$(build_arch) \ + CROSS_COMPILE=$(CROSS_COMPILE) \ + KERNELVERSION=$(abi_release)-$(target_flavour) \ + CONFIG_DEBUG_SECTION_MISMATCH=y \ + KBUILD_BUILD_VERSION="$(uploadnum)" \ + LOCALVERSION= localver-extra= \ + CFLAGS_MODULE="-DPKG_ABI=$(abinum)" +ifneq ($(LOCAL_ENV_CC),) +kmake += CC=$(LOCAL_ENV_CC) DISTCC_HOSTS=$(LOCAL_ENV_DISTCC_HOSTS) +endif + +# Locking is required in parallel builds to prevent loss of contents +# of the debian/files. +lockme_file = $(CURDIR)/debian/.LOCK +lockme_cmd = flock -w 60 +lockme = $(lockme_cmd) $(lockme_file) + +# Checks if a var is overriden by the custom rules. Called with var and +# flavour as arguments. +custom_override = \ + $(shell if [ -n "$($(1)_$(2))" ]; then echo "$($(1)_$(2))"; else echo "$($(1))"; fi) --- linux-3.13.0.orig/debian/rules.d/1-maintainer.mk +++ linux-3.13.0/debian/rules.d/1-maintainer.mk @@ -0,0 +1,127 @@ +# The following targets are for the maintainer only! do not run if you don't +# know what they do. + +.PHONY: printenv updateconfigs printchanges insertchanges startnewrelease diffupstream help updateportsconfigs editportsconfigs + +help: + @echo "These are the targets in addition to the normal $(DEBIAN) ones:" + @echo + @echo " printenv : Print some variables used in the build" + @echo + @echo " updateconfigs : Update core arch configs" + @echo + @echo " editconfigs : Update core arch configs interractively" + @echo " genconfigs : Generate core arch configs in CONFIGS/*" + @echo + @echo " updateportsconfigs : Update ports arch configs" + @echo + @echo " editportsconfigs : Update ports arch configs interactivly" + @echo " genportconfigs : Generate ports arch configs in CONFIGS/*" + @echo + @echo " printchanges : Print the current changelog entries (from git)" + @echo + @echo " insertchanges : Insert current changelog entries (from git)" + @echo + @echo " startnewrelease : Start a new changelog set" + @echo + @echo " diffupstream : Diff stock kernel code against upstream (git)" + @echo + @echo " help : If you are kernel hacking, you need the professional" + @echo " version of this" + @echo + @echo "Environment variables:" + @echo + @echo " NOKERNLOG : Do not add upstream kernel commits to changelog" + @echo " CONCURRENCY_LEVEL=X" + @echo " : Use -jX for kernel compile" + @echo " PRINTSHAS : Include SHAs for commits in changelog" + +printdebian: + @echo "$(DEBIAN)" + +updateconfigs defaultconfigs editconfigs genconfigs dumpconfigs: + dh_testdir; + $(SHELL) $(DROOT)/scripts/misc/kernelconfig $@ + rm -rf build + +updateportsconfigs defaultportsconfigs editportsconfigs genportsconfigs askconfigs: + dh_testdir; + $(SHELL) $(DROOT)/scripts/misc/kernelconfig $@ ports + rm -rf build + +printenv: + dh_testdir + @echo "src package name = $(src_pkg_name)" + @echo "release = $(release)" + @echo "revisions = $(revisions)" + @echo "revision = $(revision)" + @echo "uploadnum = $(uploadnum)" + @echo "prev_revisions = $(prev_revisions)" + @echo "prev_revision = $(prev_revision)" + @echo "abinum = $(abinum)" + @echo "gitver = $(gitver)" + @echo "flavours = $(flavours)" + @echo "skipabi = $(skipabi)" + @echo "skipmodule = $(skipmodule)" + @echo "skipdbg = $(skipdbg)" + @echo "ubuntu_log_opts = $(ubuntu_log_opts)" + @echo "CONCURRENCY_LEVEL = $(CONCURRENCY_LEVEL)" + @echo "bin package name = $(bin_pkg_name)" + @echo "hdr package name = $(hdrs_pkg_name)" + @echo "doc package name = $(doc_pkg_name)" + @echo "do_doc_package = $(do_doc_package)" + @echo "do_doc_package_content = $(do_doc_package_content)" + @echo "do_source_package = $(do_source_package)" + @echo "do_source_package_content = $(do_source_package_content)" + @echo "do_libc_dev_package = $(do_libc_dev_package)" + @echo "do_flavour_image_package = $(do_flavour_image_package)" + @echo "do_flavour_header_package = $(do_flavour_header_package)" + @echo "do_common_headers_indep = $(do_common_headers_indep)" + @echo "do_full_source = $(do_full_source)" + @echo "do_tools = $(do_tools)" + @echo "do_any_tools = $(do_any_tools)" + @echo "do_linux_tools = $(do_linux_tools)" + @echo " do_tools_cpupower = $(do_tools_cpupower)" + @echo " do_tools_perf = $(do_tools_perf)" + @echo " do_tools_x86 = $(do_tools_x86)" + @echo "do_cloud_tools = $(do_cloud_tools)" + @echo " do_tools_hyperv = $(do_tools_hyperv)" + @echo "full_build = $(full_build)" + @echo "libc_dev_version = $(libc_dev_version)" + @echo "DEB_HOST_GNU_TYPE = $(DEB_HOST_GNU_TYPE)" + @echo "DEB_BUILD_GNU_TYPE = $(DEB_BUILD_GNU_TYPE)" + @echo "DEB_HOST_ARCH = $(DEB_HOST_ARCH)" + @echo "DEB_BUILD_ARCH = $(DEB_BUILD_ARCH)" + @echo "arch = $(arch)" + @echo "kmake = $(kmake)" + +printchanges: + @baseCommit=$$(git log --pretty=format:'%H %s' | \ + gawk '/UBUNTU: '".*Ubuntu-$(prev_fullver)"'$$/ { print $$1; exit }'); \ + git log "$$baseCommit"..HEAD | \ + perl -w -f $(DROOT)/scripts/misc/git-ubuntu-log $(ubuntu_log_opts) + +insertchanges: + @perl -w -f $(DROOT)/scripts/misc/insert-changes.pl $(DROOT) $(DEBIAN) + +diffupstream: + @git diff-tree -p refs/remotes/linux-2.6/master..HEAD $(shell ls | grep -vE '^(ubuntu|$(DEBIAN)|\.git.*)') + +startnewrelease: + dh_testdir + @nextminor=$(shell expr `echo $(revision) | gawk -F. '{print $$2}'` + 1); \ + nextmajor=$(shell expr `echo $(revision) | awk -F. '{print $$1}'` + 1); \ + now="$(shell date -R)"; \ + echo "Creating new changelog set for $(release)-$$nextmajor.$$nextminor..."; \ + echo -e "$(src_pkg_name) ($(release)-$$nextmajor.$$nextminor) UNRELEASED; urgency=low\n" > $(DEBIAN)/changelog.new; \ + echo " CHANGELOG: Do not edit directly. Autogenerated at release." >> \ + $(DEBIAN)/changelog.new; \ + echo " CHANGELOG: Use the printchanges target to see the curent changes." \ + >> $(DEBIAN)/changelog.new; \ + echo " CHANGELOG: Use the insertchanges target to create the final log." \ + >> $(DEBIAN)/changelog.new; \ + echo -e "\n -- $$DEBFULLNAME <$$DEBEMAIL> $$now\n" >> \ + $(DEBIAN)/changelog.new ; \ + cat $(DEBIAN)/changelog >> $(DEBIAN)/changelog.new; \ + mv $(DEBIAN)/changelog.new $(DEBIAN)/changelog + --- linux-3.13.0.orig/debian/rules.d/2-binary-arch.mk +++ linux-3.13.0/debian/rules.d/2-binary-arch.mk @@ -0,0 +1,636 @@ +# We don't want make removing intermediary stamps +.SECONDARY : + +# Prepare the out-of-tree build directory +ifeq ($(do_full_source),true) +build_cd = cd $(builddir)/build-$*; # +build_O = +else +build_cd = +build_O = O=$(builddir)/build-$* +endif + +# Typically supplied from the arch makefile, e.g., debian.master/control.d/armhf.mk +ifneq ($(gcc),) +kmake += CC=$(CROSS_COMPILE)$(gcc) +endif + +$(stampdir)/stamp-prepare-%: config-prepare-check-% + @echo Debug: $@ + @touch $@ +$(stampdir)/stamp-prepare-tree-%: target_flavour = $* +$(stampdir)/stamp-prepare-tree-%: $(commonconfdir)/config.common.$(family) $(archconfdir)/config.common.$(arch) $(archconfdir)/config.flavour.% + @echo Debug: $@ + install -d $(builddir)/build-$* + touch $(builddir)/build-$*/ubuntu-build + [ "$(do_full_source)" != 'true' ] && true || \ + rsync -a --exclude debian --exclude debian.master --exclude $(DEBIAN) * $(builddir)/build-$* + cat $^ | sed -e 's/.*CONFIG_VERSION_SIGNATURE.*/CONFIG_VERSION_SIGNATURE="Ubuntu $(release)-$(revision)-$* $(raw_kernelversion)"/' > $(builddir)/build-$*/.config + find $(builddir)/build-$* -name "*.ko" | xargs rm -f + $(build_cd) $(kmake) $(build_O) -j1 silentoldconfig prepare scripts + touch $@ + +# Used by developers as a shortcut to prepare a tree for compilation. +prepare-%: $(stampdir)/stamp-prepare-% + @echo Debug: $@ +# Used by developers to allow efficient pre-building without fakeroot. +build-%: $(stampdir)/stamp-build-% + @echo Debug: $@ + +# Do the actual build, including image and modules +$(stampdir)/stamp-build-%: target_flavour = $* +$(stampdir)/stamp-build-%: bldimg = $(call custom_override,build_image,$*) +$(stampdir)/stamp-build-%: dtb_target = $(dtb_files_$*) +$(stampdir)/stamp-build-%: $(stampdir)/stamp-prepare-% + @echo Debug: $@ build_image $(build_image) bldimg $(bldimg) + $(build_cd) $(kmake) $(build_O) $(conc_level) $(bldimg) modules $(dtb_target) + @touch $@ + +# Install the finished build +install-%: pkgdir = $(CURDIR)/debian/$(bin_pkg_name)-$* +install-%: pkgdir_ex = $(CURDIR)/debian/$(extra_pkg_name)-$* +install-%: bindoc = $(pkgdir)/usr/share/doc/$(bin_pkg_name)-$* +install-%: dbgpkgdir = $(CURDIR)/debian/$(bin_pkg_name)-$*-dbgsym +install-%: signed = $(CURDIR)/debian/$(bin_pkg_name)-signed +install-%: toolspkgdir = $(CURDIR)/debian/$(tools_flavour_pkg_name)-$* +install-%: cloudpkgdir = $(CURDIR)/debian/$(cloud_flavour_pkg_name)-$* +install-%: basepkg = $(hdrs_pkg_name) +install-%: indeppkg = $(indep_hdrs_pkg_name) +install-%: kernfile = $(call custom_override,kernel_file,$*) +install-%: instfile = $(call custom_override,install_file,$*) +install-%: hdrdir = $(CURDIR)/debian/$(basepkg)-$*/usr/src/$(basepkg)-$* +install-%: target_flavour = $* +install-%: dtb_files = $(dtb_files_$*) +install-%: CONFIG_MODULE_SIG_HASH=sha512 +install-%: MODSECKEY=$(builddir)/build-$*/signing_key.priv +install-%: MODPUBKEY=$(builddir)/build-$*/signing_key.x509 +install-%: checks-% + @echo Debug: $@ kernel_file $(kernel_file) kernfile $(kernfile) install_file $(install_file) instfile $(instfile) + dh_testdir + dh_testroot + dh_clean -k -p$(bin_pkg_name)-$* + dh_clean -k -p$(hdrs_pkg_name)-$* +ifneq ($(skipdbg),true) + dh_clean -k -p$(dbg_pkg_name)-$* +endif + + # The main image + # compress_file logic required because not all architectures + # generate a zImage automatically out of the box +ifeq ($(compress_file),) + install -m600 -D $(builddir)/build-$*/$(kernfile) \ + $(pkgdir)/boot/$(instfile)-$(abi_release)-$* +else + install -d $(pkgdir)/boot + gzip -c9v $(builddir)/build-$*/$(kernfile) > \ + $(pkgdir)/boot/$(instfile)-$(abi_release)-$* + chmod 600 $(pkgdir)/boot/$(instfile)-$(abi_release)-$* +endif + +ifeq ($(uefi_signed),true) + install -d $(signed)/$(release)-$(revision) + # Check to see if this supports handoff, if not do not sign it. + # Check the identification area magic and version >= 0x020b + handoff=`dd if="$(pkgdir)/boot/$(instfile)-$(abi_release)-$*" bs=1 skip=514 count=6 2>/dev/null | od -s | gawk '($$1 == 0 && $$2 == 25672 && $$3 == 21362 && $$4 >= 523) { print "GOOD" }'`; \ + if [ "$$handoff" = "GOOD" ]; then \ + cp -p $(pkgdir)/boot/$(instfile)-$(abi_release)-$* \ + $(signed)/$(release)-$(revision)/$(instfile)-$(abi_release)-$*.efi; \ + fi +endif + + install -m644 $(builddir)/build-$*/.config \ + $(pkgdir)/boot/config-$(abi_release)-$* + install -m644 $(abidir)/$* \ + $(pkgdir)/boot/abi-$(abi_release)-$* + install -m600 $(builddir)/build-$*/System.map \ + $(pkgdir)/boot/System.map-$(abi_release)-$* + if [ "$(dtb_files)" ]; then \ + install -d $(pkgdir)/lib/firmware/$(abi_release)-$*/device-tree; \ + for dtb_file in $(dtb_files); do \ + install -m644 $(builddir)/build-$*/arch/$(build_arch)/boot/dts/$$dtb_file \ + $(pkgdir)/lib/firmware/$(abi_release)-$*/device-tree/$$dtb_file; \ + done \ + fi +ifeq ($(no_dumpfile),) + makedumpfile -g $(pkgdir)/boot/vmcoreinfo-$(abi_release)-$* \ + -x $(builddir)/build-$*/vmlinux + chmod 0600 $(pkgdir)/boot/vmcoreinfo-$(abi_release)-$* +endif + + $(build_cd) $(kmake) $(build_O) $(conc_level) modules_install \ + INSTALL_MOD_STRIP=1 INSTALL_MOD_PATH=$(pkgdir)/ \ + INSTALL_FW_PATH=$(pkgdir)/lib/firmware/$(abi_release)-$* + +ifeq ($(do_extras_package),true) + # + # Remove all modules not in the inclusion list. + # + if [ -f $(DEBIAN)/control.d/$(target_flavour).inclusion-list ] ; then \ + mkdir -p $(pkgdir_ex)/lib/modules/$(abi_release)-$*; \ + mv $(pkgdir)/lib/modules/$(abi_release)-$*/kernel \ + $(pkgdir_ex)/lib/modules/$(abi_release)-$*/kernel; \ + $(SHELL) $(DROOT)/scripts/module-inclusion --master \ + $(pkgdir_ex)/lib/modules/$(abi_release)-$*/kernel \ + $(pkgdir)/lib/modules/$(abi_release)-$*/kernel \ + $(DEBIAN)/control.d/$(target_flavour).inclusion-list 2>&1 | \ + tee $(target_flavour).inclusion-list.log; \ + /sbin/depmod -b $(pkgdir) -ea -F $(pkgdir)/boot/System.map-$(abi_release)-$* \ + $(abi_release)-$* 2>&1 |tee $(target_flavour).depmod.log; \ + if [ `grep -c 'unknown symbol' $(target_flavour).depmod.log` -gt 0 ]; then \ + echo "EE: Unresolved module dependencies in base package!"; \ + exit 1; \ + fi \ + fi +endif + +ifeq ($(no_dumpfile),) + makedumpfile -g $(pkgdir)/boot/vmcoreinfo-$(abi_release)-$* \ + -x $(builddir)/build-$*/vmlinux + chmod 0600 $(pkgdir)/boot/vmcoreinfo-$(abi_release)-$* +endif + rm -f $(pkgdir)/lib/modules/$(abi_release)-$*/build + rm -f $(pkgdir)/lib/modules/$(abi_release)-$*/source + + # Some initramfs-tools specific modules + install -d $(pkgdir)/lib/modules/$(abi_release)-$*/initrd + if [ -f $(pkgdir)/lib/modules/$(abi_release)-$*/kernel/drivers/video/vesafb.ko ]; then\ + ln -f $(pkgdir)/lib/modules/$(abi_release)-$*/kernel/drivers/video/vesafb.ko \ + $(pkgdir)/lib/modules/$(abi_release)-$*/initrd/; \ + fi + + # Now the image scripts + install -d $(pkgdir)/DEBIAN + for script in postinst postrm preinst prerm; do \ + sed -e 's/=V/$(abi_release)-$*/g' -e 's/=K/$(instfile)/g' \ + -e 's/=L/$(loader)/g' -e 's@=B@$(build_arch)@g' \ + $(DROOT)/control-scripts/$$script > $(pkgdir)/DEBIAN/$$script; \ + chmod 755 $(pkgdir)/DEBIAN/$$script; \ + done +ifeq ($(do_extras_package),true) + # Install the postinit/postrm scripts in the extras package. + if [ -f $(DEBIAN)/control.d/$(target_flavour).inclusion-list ] ; then \ + install -d $(pkgdir_ex)/DEBIAN; \ + for script in postinst postrm ; do \ + sed -e 's/=V/$(abi_release)-$*/g' -e 's/=K/$(instfile)/g' \ + -e 's/=L/$(loader)/g' -e 's@=B@$(build_arch)@g' \ + debian/control-scripts/$$script > $(pkgdir_ex)/DEBIAN/$$script; \ + chmod 755 $(pkgdir_ex)/DEBIAN/$$script; \ + done; \ + fi +endif + + # Install the full changelog. +ifeq ($(do_doc_package),true) + install -d $(bindoc) + cat $(DEBIAN)/changelog $(DEBIAN)/changelog.historical | \ + gzip -9 >$(bindoc)/changelog.Debian.old.gz + chmod 644 $(bindoc)/changelog.Debian.old.gz +endif + +ifneq ($(skipsub),true) + for sub in $($(*)_sub); do \ + if ! (TO=$$sub FROM=$* ABI_RELEASE=$(abi_release) $(SHELL) \ + $(DROOT)/scripts/sub-flavour); then exit 1; fi; \ + /sbin/depmod -b debian/$(bin_pkg_name)-$$sub \ + -ea -F debian/$(bin_pkg_name)-$$sub/boot/System.map-$(abi_release)-$* \ + $(abi_release)-$*; \ + install -d debian/$(bin_pkg_name)-$$sub/DEBIAN; \ + for script in postinst postrm preinst prerm; do \ + sed -e 's/=V/$(abi_release)-$*/g' \ + -e 's/=K/$(instfile)/g' \ + -e 's/=L/$(loader)/g' \ + -e 's@=B@$(build_arch)@g' \ + $(DROOT)/control-scripts/$$script > \ + debian/$(bin_pkg_name)-$$sub/DEBIAN/$$script;\ + chmod 755 debian/$(bin_pkg_name)-$$sub/DEBIAN/$$script;\ + done; \ + done +endif + +ifneq ($(skipdbg),true) + # Debug image is simple + install -m644 -D $(builddir)/build-$*/vmlinux \ + $(dbgpkgdir)/usr/lib/debug/boot/vmlinux-$(abi_release)-$* + $(build_cd) $(kmake) $(build_O) modules_install \ + INSTALL_MOD_PATH=$(dbgpkgdir)/usr/lib/debug + # Add .gnu_debuglink sections to each stripped .ko + # pointing to unstripped verson + find $(pkgdir) -name '*.ko' | sed 's|$(pkgdir)||'| while read module ; do \ + if [[ -f "$(dbgpkgdir)/usr/lib/debug/$$module" ]] ; then \ + $(CROSS_COMPILE)objcopy \ + --add-gnu-debuglink=$(dbgpkgdir)/usr/lib/debug/$$module \ + $(pkgdir)/$$module; \ + scripts/sign-file $(CONFIG_MODULE_SIG_HASH) $(MODSECKEY) $(MODPUBKEY) \ + $(pkgdir)/$$module; \ + fi; \ + done + rm -f $(dbgpkgdir)/usr/lib/debug/lib/modules/$(abi_release)-$*/build + rm -f $(dbgpkgdir)/usr/lib/debug/lib/modules/$(abi_release)-$*/source + rm -f $(dbgpkgdir)/usr/lib/debug/lib/modules/$(abi_release)-$*/modules.* + rm -fr $(dbgpkgdir)/usr/lib/debug/lib/firmware +endif + + # The flavour specific headers image + # TODO: Would be nice if we didn't have to dupe the original builddir + install -d -m755 $(hdrdir) + cat $(builddir)/build-$*/.config | \ + sed -e 's/.*CONFIG_DEBUG_INFO=.*/# CONFIG_DEBUG_INFO is not set/g' > \ + $(hdrdir)/.config + chmod 644 $(hdrdir)/.config + $(kmake) O=$(hdrdir) -j1 silentoldconfig prepare scripts + # We'll symlink this stuff + rm -f $(hdrdir)/Makefile + rm -rf $(hdrdir)/include2 $(hdrdir)/source + # Copy over the compilation version. + cp "$(builddir)/build-$*/include/generated/compile.h" \ + "$(hdrdir)/include/generated/compile.h" + # powerpc kernel arch seems to need some .o files for external module linking. Add them in. +ifeq ($(build_arch),powerpc) + mkdir -p $(hdrdir)/arch/powerpc/lib + cp $(builddir)/build-$*/arch/powerpc/lib/*.o $(hdrdir)/arch/powerpc/lib +endif + # Script to symlink everything up + $(SHELL) $(DROOT)/scripts/link-headers "$(hdrdir)" "$(indeppkg)" "$*" + # The build symlink + install -d debian/$(basepkg)-$*/lib/modules/$(abi_release)-$* + ln -s /usr/src/$(basepkg)-$* \ + debian/$(basepkg)-$*/lib/modules/$(abi_release)-$*/build + # And finally the symvers + install -m644 $(builddir)/build-$*/Module.symvers \ + $(hdrdir)/Module.symvers + + # Now the header scripts + install -d $(CURDIR)/debian/$(basepkg)-$*/DEBIAN + for script in postinst; do \ + sed -e 's/=V/$(abi_release)-$*/g' -e 's/=K/$(instfile)/g' \ + $(DROOT)/control-scripts/headers-$$script > \ + $(CURDIR)/debian/$(basepkg)-$*/DEBIAN/$$script; \ + chmod 755 $(CURDIR)/debian/$(basepkg)-$*/DEBIAN/$$script; \ + done + + # At the end of the package prep, call the tests + DPKG_ARCH="$(arch)" KERN_ARCH="$(build_arch)" FLAVOUR="$*" \ + VERSION="$(abi_release)" REVISION="$(revision)" \ + PREV_REVISION="$(prev_revision)" ABI_NUM="$(abinum)" \ + PREV_ABI_NUM="$(prev_abinum)" BUILD_DIR="$(builddir)/build-$*" \ + INSTALL_DIR="$(pkgdir)" SOURCE_DIR="$(CURDIR)" \ + run-parts -v $(DROOT)/tests-build + + # + # Remove files which are generated at installation by postinst, + # except for modules.order and modules.builtin + # + # NOTE: need to keep this list in sync with postrm + # + mkdir $(pkgdir)/lib/modules/$(abi_release)-$*/_ + mv $(pkgdir)/lib/modules/$(abi_release)-$*/modules.order \ + $(pkgdir)/lib/modules/$(abi_release)-$*/_ + if [ -f $(pkgdir)/lib/modules/$(abi_release)-$*/modules.builtin ] ; then \ + mv $(pkgdir)/lib/modules/$(abi_release)-$*/modules.builtin \ + $(pkgdir)/lib/modules/$(abi_release)-$*/_; \ + fi + rm -f $(pkgdir)/lib/modules/$(abi_release)-$*/modules.* + mv $(pkgdir)/lib/modules/$(abi_release)-$*/_/* \ + $(pkgdir)/lib/modules/$(abi_release)-$* + rmdir $(pkgdir)/lib/modules/$(abi_release)-$*/_ + +ifeq ($(do_linux_tools),true) + # Create the linux-tools tool links + install -d $(toolspkgdir)/usr/lib/linux-tools/$(abi_release)-$* +ifeq ($(do_tools_cpupower),true) + ln -s ../../$(src_pkg_name)-tools-$(abi_release)/cpupower $(toolspkgdir)/usr/lib/linux-tools/$(abi_release)-$* +endif +ifeq ($(do_tools_perf),true) + ln -s ../../$(src_pkg_name)-tools-$(abi_release)/perf $(toolspkgdir)/usr/lib/linux-tools/$(abi_release)-$* +endif +ifeq ($(do_tools_x86),true) + ln -s ../../$(src_pkg_name)-tools-$(abi_release)/x86_energy_perf_policy $(toolspkgdir)/usr/lib/linux-tools/$(abi_release)-$* + ln -s ../../$(src_pkg_name)-tools-$(abi_release)/turbostat $(toolspkgdir)/usr/lib/linux-tools/$(abi_release)-$* +endif +endif +ifeq ($(do_cloud_tools),true) +ifeq ($(do_tools_hyperv),true) + # Create the linux-hyperv tool links + install -d $(cloudpkgdir)/usr/lib/linux-tools/$(abi_release)-$* + ln -s ../../$(src_pkg_name)-tools-$(abi_release)/hv_kvp_daemon $(cloudpkgdir)/usr/lib/linux-tools/$(abi_release)-$* + ln -s ../../$(src_pkg_name)-tools-$(abi_release)/hv_vss_daemon $(cloudpkgdir)/usr/lib/linux-tools/$(abi_release)-$* + ln -s ../../$(src_pkg_name)-tools-$(abi_release)/hv_fcopy_daemon $(cloudpkgdir)/usr/lib/linux-tools/$(abi_release)-$* +endif +endif + +headers_tmp := $(CURDIR)/debian/tmp-headers +headers_dir := $(CURDIR)/debian/linux-libc-dev + +hmake := $(MAKE) -C $(CURDIR) O=$(headers_tmp) \ + KERNELVERSION=$(abi_release) INSTALL_HDR_PATH=$(headers_tmp)/install \ + SHELL="$(SHELL)" ARCH=$(header_arch) + +install-arch-headers: + @echo Debug: $@ + dh_testdir + dh_testroot + dh_clean -k -plinux-libc-dev + + rm -rf $(headers_tmp) + install -d $(headers_tmp) $(headers_dir)/usr/include/ + + $(hmake) $(defconfig) + mv $(headers_tmp)/.config $(headers_tmp)/.config.old + sed -e 's/^# \(CONFIG_MODVERSIONS\) is not set$$/\1=y/' \ + -e 's/.*CONFIG_LOCALVERSION_AUTO.*/# CONFIG_LOCALVERSION_AUTO is not set/' \ + $(headers_tmp)/.config.old > $(headers_tmp)/.config + $(hmake) silentoldconfig + $(hmake) headers_install + + ( cd $(headers_tmp)/install/include/ && \ + find . -name '.' -o -name '.*' -prune -o -print | \ + cpio -pvd --preserve-modification-time \ + $(headers_dir)/usr/include/ ) + mkdir $(headers_dir)/usr/include/$(DEB_HOST_MULTIARCH) + mv $(headers_dir)/usr/include/asm $(headers_dir)/usr/include/$(DEB_HOST_MULTIARCH)/ + + rm -rf $(headers_tmp) + +binary-arch-headers: install-arch-headers + @echo Debug: $@ + dh_testdir + dh_testroot +ifeq ($(do_libc_dev_package),true) +ifneq ($(DEBIAN),debian.master) + echo "non-master branch building linux-libc-dev, aborting" + exit 1 +endif + dh_installchangelogs -plinux-libc-dev + dh_installdocs -plinux-libc-dev + dh_compress -plinux-libc-dev + dh_fixperms -plinux-libc-dev + dh_installdeb -plinux-libc-dev + $(lockme) dh_gencontrol -plinux-libc-dev -- $(libc_dev_version) + dh_md5sums -plinux-libc-dev + dh_builddeb -plinux-libc-dev +endif + +binary-%: pkgimg = $(bin_pkg_name)-$* +binary-%: pkgimg_ex = $(extra_pkg_name)-$* +binary-%: pkghdr = $(hdrs_pkg_name)-$* +binary-%: dbgpkg = $(bin_pkg_name)-$*-dbgsym +binary-%: dbgpkgdir = $(CURDIR)/debian/$(bin_pkg_name)-$*-dbgsym +binary-%: pkgtools = $(tools_flavour_pkg_name)-$* +binary-%: pkgcloud = $(cloud_flavour_pkg_name)-$* +binary-%: target_flavour = $* +binary-%: install-% + @echo Debug: $@ + dh_testdir + dh_testroot + + dh_installchangelogs -p$(pkgimg) + dh_installdocs -p$(pkgimg) + dh_compress -p$(pkgimg) + dh_fixperms -p$(pkgimg) -X/boot/ + dh_installdeb -p$(pkgimg) + dh_shlibdeps -p$(pkgimg) + $(lockme) dh_gencontrol -p$(pkgimg) + dh_md5sums -p$(pkgimg) + dh_builddeb -p$(pkgimg) -- -Zbzip2 -z9 + +ifeq ($(do_extras_package),true) + if [ -f $(DEBIAN)/control.d/$(target_flavour).inclusion-list ] ; then \ + dh_installchangelogs -p$(pkgimg_ex); \ + dh_installdocs -p$(pkgimg_ex); \ + dh_compress -p$(pkgimg_ex); \ + dh_fixperms -p$(pkgimg_ex) -X/boot/; \ + dh_installdeb -p$(pkgimg_ex); \ + dh_shlibdeps -p$(pkgimg_ex); \ + $(lockme) dh_gencontrol -p$(pkgimg_ex); \ + dh_md5sums -p$(pkgimg_ex); \ + dh_builddeb -p$(pkgimg_ex) -- -Zbzip2 -z9; \ + fi +endif + + dh_installchangelogs -p$(pkghdr) + dh_installdocs -p$(pkghdr) + dh_compress -p$(pkghdr) + dh_fixperms -p$(pkghdr) + dh_shlibdeps -p$(pkghdr) + dh_installdeb -p$(pkghdr) + $(lockme) dh_gencontrol -p$(pkghdr) + dh_md5sums -p$(pkghdr) + dh_builddeb -p$(pkghdr) + +ifneq ($(skipsub),true) + @set -e; for sub in $($(*)_sub); do \ + pkg=$(bin_pkg_name)-$$sub; \ + dh_installchangelogs -p$$pkg; \ + dh_installdocs -p$$pkg; \ + dh_compress -p$$pkg; \ + dh_fixperms -p$$pkg -X/boot/; \ + dh_shlibdeps -p$$pkg; \ + dh_installdeb -p$$pkg; \ + $(lockme) dh_gencontrol -p$$pkg; \ + dh_md5sums -p$$pkg; \ + dh_builddeb -p$$pkg; \ + done +endif + +ifneq ($(skipdbg),true) + dh_installchangelogs -p$(dbgpkg) + dh_installdocs -p$(dbgpkg) + dh_compress -p$(dbgpkg) + dh_fixperms -p$(dbgpkg) + dh_installdeb -p$(dbgpkg) + $(lockme) dh_gencontrol -p$(dbgpkg) + dh_md5sums -p$(dbgpkg) + dh_builddeb -p$(dbgpkg) + + # Hokay...here's where we do a little twiddling... + # Renaming the debug package prevents it from getting into + # the primary archive, and therefore prevents this very large + # package from being mirrored. It is instead, through some + # archive admin hackery, copied to http://ddebs.ubuntu.com. + # + mv ../$(dbgpkg)_$(release)-$(revision)_$(arch).deb \ + ../$(dbgpkg)_$(release)-$(revision)_$(arch).ddeb + set -e; \ + ( \ + $(lockme_cmd) 9 || exit 1; \ + if grep -qs '^Build-Debug-Symbols: yes$$' /CurrentlyBuilding; then \ + sed -i '/^$(dbgpkg)_/s/\.deb /.ddeb /' debian/files; \ + else \ + grep -v '^$(dbgpkg)_.*$$' debian/files > debian/files.new; \ + mv debian/files.new debian/files; \ + fi; \ + ) 9>$(lockme_file) + # Now, the package wont get into the archive, but it will get put + # into the debug system. +endif + +ifeq ($(do_linux_tools),true) + dh_installchangelogs -p$(pkgtools) + dh_installdocs -p$(pkgtools) + dh_compress -p$(pkgtools) + dh_fixperms -p$(pkgtools) + dh_shlibdeps -p$(pkgtools) + dh_installdeb -p$(pkgtools) + $(lockme) dh_gencontrol -p$(pkgtools) + dh_md5sums -p$(pkgtools) + dh_builddeb -p$(pkgtools) +endif +ifeq ($(do_cloud_tools),true) + dh_installchangelogs -p$(pkgcloud) + dh_installdocs -p$(pkgcloud) + dh_compress -p$(pkgcloud) + dh_fixperms -p$(pkgcloud) + dh_shlibdeps -p$(pkgcloud) + dh_installdeb -p$(pkgcloud) + $(lockme) dh_gencontrol -p$(pkgcloud) + dh_md5sums -p$(pkgcloud) + dh_builddeb -p$(pkgcloud) +endif + +ifneq ($(full_build),false) + # Clean out this flavours build directory. + rm -rf $(builddir)/build-$* + # Clean out the debugging package source directory. + rm -rf $(dbgpkgdir) +endif + +# +# per-architecture packages +# +builddirpa = $(builddir)/tools-perarch + +$(stampdir)/stamp-prepare-perarch: + @echo Debug: $@ +ifeq ($(do_any_tools),true) + rm -rf $(builddirpa) + install -d $(builddirpa) + for i in *; do ln -s $(CURDIR)/$$i $(builddirpa); done + rm $(builddirpa)/tools + rsync -a tools/ $(builddirpa)/tools/ +endif + touch $@ + +$(stampdir)/stamp-build-perarch: $(stampdir)/stamp-prepare-perarch install-arch-headers + @echo Debug: $@ +ifeq ($(do_linux_tools),true) +ifeq ($(do_tools_cpupower),true) + # Allow for multiple installed versions of cpupower and libcpupower.so: + # Override LIB_MIN in order to to generate a versioned .so named + # libcpupower.so.$(abi_release) and link cpupower with that. + make -C $(builddirpa)/tools/power/cpupower \ + CROSS_COMPILE=$(CROSS_COMPILE) \ + LIB_MIN=$(abi_release) CPUFREQ_BENCH=false +endif +ifeq ($(do_tools_perf),true) + cd $(builddirpa)/tools/perf && \ + make prefix=/usr HAVE_CPLUS_DEMANGLE=1 CROSS_COMPILE=$(CROSS_COMPILE) NO_LIBPYTHON=1 NO_LIBPERL=1 PYTHON=python2.7 +endif +ifeq ($(do_tools_x86),true) + cd $(builddirpa)/tools/power/x86/x86_energy_perf_policy && make CROSS_COMPILE=$(CROSS_COMPILE) + cd $(builddirpa)/tools/power/x86/turbostat && make CROSS_COMPILE=$(CROSS_COMPILE) +endif +endif +ifeq ($(do_cloud_tools),true) +ifeq ($(do_tools_hyperv),true) + cd $(builddirpa)/tools/hv && make CFLAGS="-I$(headers_dir)/usr/include -I$(headers_dir)/usr/include/$(DEB_HOST_MULTIARCH)" CROSS_COMPILE=$(CROSS_COMPILE) hv_kvp_daemon hv_vss_daemon hv_fcopy_daemon +endif +endif + @touch $@ + +install-perarch: toolspkgdir = $(CURDIR)/debian/$(tools_pkg_name) +install-perarch: cloudpkgdir = $(CURDIR)/debian/$(cloud_pkg_name) +install-perarch: $(stampdir)/stamp-build-perarch + @echo Debug: $@ + # Add the tools. +ifeq ($(do_linux_tools),true) + install -d $(toolspkgdir)/usr/lib + install -d $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) + +ifeq ($(do_tools_cpupower),true) + install -m755 $(builddirpa)/tools/power/cpupower/cpupower \ + $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) + # Install only the full versioned libcpupower.so.$(abi_release), not + # the usual symlinks to it. + install -m644 $(builddirpa)/tools/power/cpupower/libcpupower.so.$(abi_release) \ + $(toolspkgdir)/usr/lib/ +endif +ifeq ($(do_tools_perf),true) + install -m755 $(builddirpa)/tools/perf/perf $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) +endif +ifeq ($(do_tools_x86),true) + install -m755 $(builddirpa)/tools/power/x86/x86_energy_perf_policy/x86_energy_perf_policy \ + $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) + install -m755 $(builddirpa)/tools/power/x86/turbostat/turbostat \ + $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) +endif +endif +ifeq ($(do_cloud_tools),true) +ifeq ($(do_tools_hyperv),true) + install -d $(cloudpkgdir)/usr/lib + install -d $(cloudpkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) + install -m755 $(builddirpa)/tools/hv/hv_kvp_daemon \ + $(cloudpkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) + install -m755 $(builddirpa)/tools/hv/hv_vss_daemon \ + $(cloudpkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) + install -m755 $(builddirpa)/tools/hv/hv_fcopy_daemon \ + $(cloudpkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release) +endif +endif + +binary-perarch: toolspkg = $(tools_pkg_name) +binary-perarch: cloudpkg = $(cloud_pkg_name) +binary-perarch: install-perarch + @echo Debug: $@ +ifeq ($(do_linux_tools),true) + dh_strip -p$(toolspkg) + dh_installchangelogs -p$(toolspkg) + dh_installdocs -p$(toolspkg) + dh_compress -p$(toolspkg) + dh_fixperms -p$(toolspkg) + dh_shlibdeps -p$(toolspkg) + dh_installdeb -p$(toolspkg) + $(lockme) dh_gencontrol -p$(toolspkg) + dh_md5sums -p$(toolspkg) + dh_builddeb -p$(toolspkg) +endif +ifeq ($(do_cloud_tools),true) + dh_strip -p$(cloudpkg) + dh_installchangelogs -p$(cloudpkg) + dh_installdocs -p$(cloudpkg) + dh_compress -p$(cloudpkg) + dh_fixperms -p$(cloudpkg) + dh_shlibdeps -p$(cloudpkg) + dh_installdeb -p$(cloudpkg) + $(lockme) dh_gencontrol -p$(cloudpkg) + dh_md5sums -p$(cloudpkg) + dh_builddeb -p$(cloudpkg) +endif + +binary-debs: signed = $(CURDIR)/debian/$(bin_pkg_name)-signed +binary-debs: signedv = $(CURDIR)/debian/$(bin_pkg_name)-signed/$(release)-$(revision) +binary-debs: signed_tar = $(src_pkg_name)_$(release)-$(revision)_$(arch).tar.gz +binary-debs: binary-perarch $(addprefix binary-,$(flavours)) + @echo Debug: $@ +ifeq ($(uefi_signed),true) + echo $(release)-$(revision) > $(signedv)/version + cd $(signedv) && ls *.efi >flavours + cd $(signed) && tar czvf ../../../$(signed_tar) . + dpkg-distaddfile $(signed_tar) raw-uefi - +endif + +build-arch-deps-$(do_flavour_image_package) += $(addprefix $(stampdir)/stamp-build-,$(flavours)) +build-arch: $(build-arch-deps-true) + @echo Debug: $@ + +ifeq ($(AUTOBUILD),) +binary-arch-deps-$(do_flavour_image_package) += binary-udebs +else +binary-arch-deps-$(do_flavour_image_package) = binary-debs +endif +binary-arch-deps-$(do_libc_dev_package) += binary-arch-headers +ifneq ($(do_common_headers_indep),true) +binary-arch-deps-$(do_flavour_header_package) += binary-headers +endif +binary-arch: $(binary-arch-deps-true) + @echo Debug: $@ + --- linux-3.13.0.orig/debian/rules.d/3-binary-indep.mk +++ linux-3.13.0/debian/rules.d/3-binary-indep.mk @@ -0,0 +1,163 @@ +build-indep: + @echo Debug: $@ + +# The binary-indep dependency chain is: +# +# install-headers <- install-doc <- install-source <- install-tools <- install-indep <- binary-indep +# install-headers <- binary-headers +# +indep_hdrpkg = $(indep_hdrs_pkg_name) +indep_hdrdir = $(CURDIR)/debian/$(indep_hdrpkg)/usr/src/$(indep_hdrpkg) +install-headers: + @echo Debug: $@ + dh_testdir + dh_testroot + dh_prep + +ifeq ($(do_flavour_header_package),true) + install -d $(indep_hdrdir) + find . -path './debian' -prune -o -path './$(DEBIAN)' -prune \ + -o -path './include/*' -prune \ + -o -path './scripts/*' -prune -o -type f \ + \( -name 'Makefile*' -o -name 'Kconfig*' -o -name 'Kbuild*' -o \ + -name '*.sh' -o -name '*.pl' -o -name '*.lds' \) \ + -print | cpio -pd --preserve-modification-time $(indep_hdrdir) + cp -a scripts include $(indep_hdrdir) + (find arch -name include -type d -print | \ + xargs -n1 -i: find : -type f) | \ + cpio -pd --preserve-modification-time $(indep_hdrdir) +endif + +docpkg = $(doc_pkg_name) +docdir = $(CURDIR)/debian/$(docpkg)/usr/share/doc/$(docpkg) +install-doc: install-headers + @echo Debug: $@ +ifeq ($(do_doc_package),true) + dh_testdir + dh_testroot + + install -d $(docdir) +ifeq ($(do_doc_package_content),true) + # First the html docs. We skip these for autobuilds + if [ -z "$(AUTOBUILD)" ]; then \ + install -d $(docdir)/$(doc_pkg_name)-tmp; \ + $(kmake) O=$(docdir)/$(doc_pkg_name)-tmp htmldocs; \ + mv $(docdir)/$(doc_pkg_name)-tmp/Documentation/DocBook \ + $(docdir)/html; \ + rm -rf $(docdir)/$(doc_pkg_name)-tmp; \ + fi +endif + # Copy the rest + cp -a Documentation/* $(docdir) + rm -rf $(docdir)/DocBook + find $(docdir) -name .gitignore | xargs rm -f +endif + +srcpkg = $(src_pkg_name)-source-$(release) +srcdir = $(CURDIR)/debian/$(srcpkg)/usr/src/$(srcpkg) +balldir = $(CURDIR)/debian/$(srcpkg)/usr/src/$(srcpkg)/$(srcpkg) +install-source: install-doc + @echo Debug: $@ +ifeq ($(do_source_package),true) + + install -d $(srcdir) +ifeq ($(do_source_package_content),true) + find . -path './debian' -prune -o -path './$(DEBIAN)' -prune -o \ + -path './.*' -prune -o -print | \ + cpio -pd --preserve-modification-time $(balldir) + (cd $(srcdir); tar cf - $(srcpkg)) | bzip2 -9c > \ + $(srcdir)/$(srcpkg).tar.bz2 + rm -rf $(balldir) + find './debian' './$(DEBIAN)' \ + -path './debian/linux-*' -prune -o \ + -path './debian/$(src_pkg_name)-*' -prune -o \ + -path './debian/build' -prune -o \ + -path './debian/files' -prune -o \ + -path './debian/stamps' -prune -o \ + -path './debian/tmp' -prune -o \ + -print | \ + cpio -pd --preserve-modification-time $(srcdir) + ln -s $(srcpkg)/$(srcpkg).tar.bz2 $(srcdir)/.. +endif +endif + +install-tools: toolspkg = $(tools_common_pkg_name) +install-tools: toolsbin = $(CURDIR)/debian/$(toolspkg)/usr/bin +install-tools: toolssbin = $(CURDIR)/debian/$(toolspkg)/usr/sbin +install-tools: toolsman = $(CURDIR)/debian/$(toolspkg)/usr/share/man +install-tools: cloudpkg = $(cloud_common_pkg_name) +install-tools: cloudbin = $(CURDIR)/debian/$(cloudpkg)/usr/bin +install-tools: cloudsbin = $(CURDIR)/debian/$(cloudpkg)/usr/sbin +install-tools: cloudman = $(CURDIR)/debian/$(cloudpkg)/usr/share/man +install-tools: install-source $(stampdir)/stamp-build-perarch + @echo Debug: $@ + + rm -rf $(builddir)/tools + install -d $(builddir)/tools + for i in *; do ln -s $(CURDIR)/$$i $(builddir)/tools/; done + rm $(builddir)/tools/tools + rsync -a tools/ $(builddir)/tools/tools/ + + install -d $(toolsbin) + install -d $(toolsman)/man1 + + install -m755 debian/tools/generic $(toolsbin)/cpupower + install -m644 $(CURDIR)/tools/power/cpupower/man/*.1 $(toolsman)/man1/ + + install -m755 debian/tools/generic $(toolsbin)/perf + + install -m755 debian/tools/generic $(toolsbin)/x86_energy_perf_policy + install -m755 debian/tools/generic $(toolsbin)/turbostat + + cd $(builddir)/tools/tools/perf && make man + install -m644 $(builddir)/tools/tools/perf/Documentation/*.1 \ + $(toolsman)/man1 + + install -d $(toolsman)/man8 + install -m644 $(CURDIR)/tools/power/x86/x86_energy_perf_policy/*.8 $(toolsman)/man8 + install -m644 $(CURDIR)/tools/power/x86/turbostat/*.8 $(toolsman)/man8 + + install -d $(cloudsbin) + install -m755 debian/tools/generic $(cloudsbin)/hv_kvp_daemon + install -m755 debian/tools/generic $(cloudsbin)/hv_vss_daemon + install -m755 debian/tools/generic $(cloudsbin)/hv_fcopy_daemon + install -m755 debian/cloud-tools/hv_get_dhcp_info $(cloudsbin) + install -m755 debian/cloud-tools/hv_get_dns_info $(cloudsbin) + install -m755 debian/cloud-tools/hv_set_ifconfig $(cloudsbin) + + install -d $(cloudman)/man8 + install -m644 $(CURDIR)/tools/hv/*.8 $(cloudman)/man8 + + dh_installinit -p$(cloudpkg) --name hv-kvp-daemon + dh_installinit -p$(cloudpkg) --name hv-vss-daemon + dh_installinit -p$(cloudpkg) --name hv-fcopy-daemon + + + +install-indep: install-tools + @echo Debug: $@ + +# This is just to make it easy to call manually. Normally done in +# binary-indep target during builds. +binary-headers: install-headers + @echo Debug: $@ + dh_installchangelogs -p$(indep_hdrpkg) + dh_installdocs -p$(indep_hdrpkg) + dh_compress -p$(indep_hdrpkg) + dh_fixperms -p$(indep_hdrpkg) + dh_installdeb -p$(indep_hdrpkg) + $(lockme) dh_gencontrol -p$(indep_hdrpkg) + dh_md5sums -p$(indep_hdrpkg) + dh_builddeb -p$(indep_hdrpkg) + +binary-indep: install-indep + @echo Debug: $@ + + dh_installchangelogs -i + dh_installdocs -i + dh_compress -i + dh_fixperms -i + dh_installdeb -i + $(lockme) dh_gencontrol -i + dh_md5sums -i + dh_builddeb -i --- linux-3.13.0.orig/debian/rules.d/4-checks.mk +++ linux-3.13.0/debian/rules.d/4-checks.mk @@ -0,0 +1,27 @@ +# Check ABI for package against last release (if not same abinum) +abi-check-%: $(stampdir)/stamp-build-% + @echo Debug: $@ + install -d $(abidir) + sed -e 's/^\(.\+\)[[:space:]]\+\(.\+\)[[:space:]]\(.\+\)$$/\3 \2 \1/' \ + $(builddir)/build-$*/Module.symvers | sort > $(abidir)/$* + @perl -f $(DROOT)/scripts/abi-check "$*" "$(prev_abinum)" "$(abinum)" \ + "$(prev_abidir)" "$(abidir)" "$(skipabi)" + +# Check the module list against the last release (always) +module-check-%: $(stampdir)/stamp-build-% + @echo Debug: $@ + install -d $(abidir) + find $(builddir)/build-$*/ -name \*.ko | \ + sed -e 's/.*\/\([^\/]*\)\.ko/\1/' | sort > $(abidir)/$*.modules + @perl -f $(DROOT)/scripts/module-check "$*" \ + "$(prev_abidir)" "$(abidir)" $(skipmodule) + +checks-%: module-check-% abi-check-% + @echo Debug: $@ + +# Check the config against the known options list. +config-prepare-check-%: $(stampdir)/stamp-prepare-tree-% + @echo Debug: $@ + @perl -f $(DROOT)/scripts/config-check \ + $(builddir)/build-$*/.config "$(arch)" "$*" "$(sharedconfdir)" "$(skipconfig)" + --- linux-3.13.0.orig/debian/rules.d/5-udebs.mk +++ linux-3.13.0/debian/rules.d/5-udebs.mk @@ -0,0 +1,74 @@ +# Do udebs if not disabled in the arch-specific makefile +binary-udebs: binary-debs + @echo Debug: $@ +ifeq ($(disable_d_i),) + @$(MAKE) --no-print-directory -f $(DROOT)/rules DEBIAN=$(DEBIAN) \ + do-binary-udebs +endif + +do-binary-udebs: debian/control + @echo Debug: $@ + dh_testdir + dh_testroot + + # unpack the kernels into a temporary directory + mkdir -p debian/d-i-${arch} + + imagelist=$$(cat $(builddir)/kernel-versions | grep ^${arch} | gawk '{print $$4}') && \ + for i in $$imagelist; do \ + dpkg -x $$(ls ../linux-image-$$i\_$(release)-$(revision)_${arch}.deb) \ + debian/d-i-${arch}; \ + if [ -f ../linux-image-extra-$$i\_$(release)-$(revision)_${arch}.deb ] ; then \ + dpkg -x ../linux-image-extra-$$i\_$(release)-$(revision)_${arch}.deb \ + debian/d-i-${arch}; \ + fi; \ + /sbin/depmod -b debian/d-i-${arch} $$i; \ + done + + # kernel-wedge will error if no modules unless this is touched + touch $(CURDIR)/debian/build/no-modules + + touch ignore-dups + export SOURCEDIR=$(CURDIR)/debian/d-i-${arch} && \ + cd $(builddir) && \ + kernel-wedge install-files && \ + kernel-wedge check + + # Build just the udebs + dilist=$$(dh_listpackages -s | grep "\-di$$") && \ + [ -z "$dilist" ] || \ + for i in $$dilist; do \ + dh_fixperms -p$$i; \ + $(lockme) dh_gencontrol -p$$i; \ + dh_builddeb -p$$i; \ + done + + # Generate the meta-udeb dependancy lists. + @gawk ' \ + /^Package:/ { \ + package=$$2; flavour=""; parch="" } \ + (/Package-Type: udeb/ && package !~ /^'$(src_pkg_name)'-udebs-/) { \ + match(package, "'$(release)'-'$(abinum)'-(.*)-di", bits); \ + flavour = bits[1]; \ + } \ + (/^Architecture:/ && $$0 " " ~ / '$(arch)'/) { \ + parch=$$0; \ + } \ + (flavour != "" && parch != "") { \ + udebs[flavour] = udebs[flavour] package ", "; \ + flavour=""; parch=""; \ + } \ + END { \ + for (flavour in udebs) { \ + package="'$(src_pkg_name)'-udebs-" flavour; \ + file="debian/" package ".substvars"; \ + print("udeb:Depends=" udebs[flavour]) > file; \ + metas="'$(builddir)'/udeb-meta-packages"; \ + print(package) >metas \ + } \ + } \ + ' <$(CURDIR)/debian/control + @while read i; do \ + $(lockme) dh_gencontrol -p$$i; \ + dh_builddeb -p$$i; \ + done <$(builddir)/udeb-meta-packages --- linux-3.13.0.orig/debian/scripts/abi-check +++ linux-3.13.0/debian/scripts/abi-check @@ -0,0 +1,210 @@ +#!/usr/bin/perl -w + +my $flavour = shift; +my $prev_abinum = shift; +my $abinum = shift; +my $prev_abidir = shift; +my $abidir = shift; +my $skipabi = shift; + +my $fail_exit = 1; +my $EE = "EE:"; +my $errors = 0; +my $abiskip = 0; + +my $count; + +print "II: Checking ABI for $flavour...\n"; + +if (-f "$prev_abidir/ignore" + or -f "$prev_abidir/$flavour.ignore" or "$skipabi" eq "true") { + print "WW: Explicitly asked to ignore ABI, running in no-fail mode\n"; + $fail_exit = 0; + $abiskip = 1; + $EE = "WW:"; +} + +if ($prev_abinum != $abinum) { + print "II: Different ABI's, running in no-fail mode\n"; + $fail_exit = 0; + $EE = "WW:"; +} + +if (not -f "$abidir/$flavour" or not -f "$prev_abidir/$flavour") { + print "EE: Previous or current ABI file missing!\n"; + print " $abidir/$flavour\n" if not -f "$abidir/$flavour"; + print " $prev_abidir/$flavour\n" if not -f "$prev_abidir/$flavour"; + + # Exit if the ABI files are missing, but return status based on whether + # skip ABI was indicated. + if ("$abiskip" eq "1") { + exit(0); + } else { + exit(1); + } +} + +my %symbols; +my %symbols_ignore; +my %modules_ignore; +my %module_syms; + +# See if we have any ignores +my $ignore = 0; +print " Reading symbols/modules to ignore..."; + +for $file ("$prev_abidir/../blacklist", "$prev_abidir/../../perm-blacklist") { + if (-f $file) { + open(IGNORE, "< $file") or + die "Could not open $file"; + while () { + chomp; + if ($_ =~ m/M: (.*)/) { + $modules_ignore{$1} = 1; + } else { + $symbols_ignore{$_} = 1; + } + $ignore++; + } + close(IGNORE); + } +} +print "read $ignore symbols/modules.\n"; + +sub is_ignored($$) { + my ($mod, $sym) = @_; + + die "Missing module name in is_ignored()" if not defined($mod); + die "Missing symbol name in is_ignored()" if not defined($sym); + + if (defined($symbols_ignore{$sym}) or defined($modules_ignore{$mod})) { + return 1; + } + return 0; +} + +# Read new syms first +print " Reading new symbols ($abinum)..."; +$count = 0; +open(NEW, "< $abidir/$flavour") or + die "Could not open $abidir/$flavour"; +while () { + chomp; + m/^(\S+)\s(.+)\s(0x[0-9a-f]+)\s(.+)$/; + $symbols{$4}{'type'} = $1; + $symbols{$4}{'loc'} = $2; + $symbols{$4}{'hash'} = $3; + $module_syms{$2} = 0; + $count++; +} +close(NEW); +print "read $count symbols.\n"; + +# Now the old symbols, checking for missing ones +print " Reading old symbols ($prev_abinum)..."; +$count = 0; +open(OLD, "< $prev_abidir/$flavour") or + die "Could not open $prev_abidir/$flavour"; +while () { + chomp; + m/^(\S+)\s(.+)\s(0x[0-9a-f]+)\s(.+)$/; + $symbols{$4}{'old_type'} = $1; + $symbols{$4}{'old_loc'} = $2; + $symbols{$4}{'old_hash'} = $3; + $count++; +} +close(OLD); + +print "read $count symbols.\n"; + +print "II: Checking for missing symbols in new ABI..."; +$count = 0; +foreach $sym (keys(%symbols)) { + if (!defined($symbols{$sym}{'type'})) { + print "\n" if not $count; + printf(" MISS : %s%s\n", $sym, + is_ignored($symbols{$sym}{'old_loc'}, $sym) ? " (ignored)" : ""); + $count++ if !is_ignored($symbols{$sym}{'old_loc'}, $sym); + } +} +print " " if $count; +print "found $count missing symbols\n"; +if ($count) { + print "$EE Symbols gone missing (what did you do!?!)\n"; + $errors++; +} + + +print "II: Checking for new symbols in new ABI..."; +$count = 0; +foreach $sym (keys(%symbols)) { + if (!defined($symbols{$sym}{'old_type'})) { + print "\n" if not $count; + print " NEW : $sym\n"; + $count++; + } +} +print " " if $count; +print "found $count new symbols\n"; +if ($count and $prev_abinum == $abinum) { + print "WW: Found new symbols within same ABI. Not recommended\n"; +} + +print "II: Checking for changes to ABI...\n"; +$count = 0; +my $moved = 0; +my $changed_type = 0; +my $changed_hash = 0; +foreach $sym (keys(%symbols)) { + if (!defined($symbols{$sym}{'old_type'}) or + !defined($symbols{$sym}{'type'})) { + next; + } + + # Changes in location don't hurt us, but log it anyway + if ($symbols{$sym}{'loc'} ne $symbols{$sym}{'old_loc'}) { + printf(" MOVE : %-40s : %s => %s\n", $sym, $symbols{$sym}{'old_loc'}, + $symbols{$sym}{'loc'}); + $moved++; + } + + # Changes to export type are only bad if new type isn't + # EXPORT_SYMBOL. Changing things to GPL are bad. + if ($symbols{$sym}{'type'} ne $symbols{$sym}{'old_type'}) { + printf(" TYPE : %-40s : %s => %s%s\n", $sym, $symbols{$sym}{'old_type'}. + $symbols{$sym}{'type'}, is_ignored($symbols{$sym}{'loc'}, $sym) + ? " (ignored)" : ""); + $changed_type++ if $symbols{$sym}{'type'} ne "EXPORT_SYMBOL" + and !is_ignored($symbols{$sym}{'loc'}, $sym); + } + + # Changes to the hash are always bad + if ($symbols{$sym}{'hash'} ne $symbols{$sym}{'old_hash'}) { + printf(" HASH : %-40s : %s => %s%s\n", $sym, $symbols{$sym}{'old_hash'}, + $symbols{$sym}{'hash'}, is_ignored($symbols{$sym}{'loc'}, $sym) + ? " (ignored)" : ""); + $changed_hash++ if !is_ignored($symbols{$sym}{'loc'}, $sym); + $module_syms{$symbols{$sym}{'loc'}}++; + } +} + +print "WW: $moved symbols changed location\n" if $moved; +print "$EE $changed_type symbols changed export type and weren't ignored\n" if $changed_type; +print "$EE $changed_hash symbols changed hash and weren't ignored\n" if $changed_hash; + +$errors++ if $changed_hash or $changed_type; +if ($changed_hash) { + print "II: Module hash change summary...\n"; + foreach $mod (sort { $module_syms{$b} <=> $module_syms{$a} } keys %module_syms) { + next if ! $module_syms{$mod}; + printf(" %-40s: %d\n", $mod, $module_syms{$mod}); + } +} + +print "II: Done\n"; + +if ($errors) { + exit($fail_exit); +} else { + exit(0); +} --- linux-3.13.0.orig/debian/scripts/config-check +++ linux-3.13.0/debian/scripts/config-check @@ -0,0 +1,413 @@ +#!/usr/bin/perl +# +# check-config -- check the current config for issues +# +use strict; + +my $P = 'check-config'; + +my $test = -1; +if ($ARGV[0] eq '--test') { + $test = $ARGV[1] + 0; +} elsif ($#ARGV != 4) { + die "Usage: $P \n"; +} + +my ($config, $arch, $flavour, $commonconfig, $warn_only) = @ARGV; + +my $checks = "$commonconfig/enforce"; +my %values = (); + +# If we are in overridden then still perform the checks and emit the messages +# but do not return failure. Those items marked FATAL will alway trigger +# failure. +my $fail_exit = 1; +$fail_exit = 0 if ($warn_only eq 'true' || $warn_only eq '1'); +my $exit_val = 0; + +# Predicate execution engine. +sub pred_first { + my ($rest) = @_; + my $depth = 0; + my $off; + my $char; + my $pred; + + for ($off = 0; $off <= length($rest); $off++) { + $char = substr($rest, $off, 1); + if ($char eq '(') { + $depth++; + } elsif ($char eq ')') { + $depth--; + } elsif ($depth == 0 && $char eq '&') { + last; + } elsif ($depth == 0 && $char eq '|') { + last; + } + } + if ($depth > 0) { + die "$P: $rest: missing close parenthesis ')'\n"; + } elsif ($depth < 0) { + die "$P: $rest: missing open parenthesis '('\n"; + } + + ($pred, $rest) = (substr($rest, 0, $off), substr($rest, $off + 1)); + + $pred =~ s/^\s*//; + $pred =~ s/\s*$//; + + #print "pred<$pred> rest<$rest> char<$char>\n"; + ($pred, $rest, $char); +} + +sub pred_do { + my ($pred) = @_; + my (@a) = split(' ', $pred); + my $possible; + + if ($a[0] eq 'arch') { + die "$P: $pred: malformed -- $pred \n" if ($#a < 1); + for $possible (@a[1..$#a]) { + #print " *** ARCH<$flavour ?? $possible>\n"; + return 1 if ($arch eq $possible); + } + return 0; + } elsif ($a[0] eq 'flavour') { + die "$P: $pred: malformed -- $pred \n" if ($#a < 1); + for $possible (@a[1..$#a]) { + #print " *** FLAVOUR<$flavour ?? $possible>\n"; + return 1 if ($flavour eq $possible); + } + return 0; + } elsif ($a[0] eq 'value') { + die "$P: $pred: malformed -- $pred \n" if ($#a != 2); + #print " *** CHECK<$a[1] $a[2] ?? " . $values{$a[1]} . ">\n"; + return ($values{$a[1]} eq $a[2]); + } elsif ($a[0] eq 'exists') { + die "$P: $pred: malformed -- $pred \n" if ($#a != 1); + return (defined $values{$a[1]}); + } else { + die "$P: $pred: unknown predicate\n"; + } + return 1; +} +sub pred_exec { + my ($rest) = @_; + my $pred; + my $cut = 0; + my $res; + my $sep; + + #print "pred_exec<$rest>\n"; + + ($pred, $rest, $sep) = pred_first($rest); + + # Leading ! implies inversion. + if ($pred =~ /^\s*!\s*(.*)$/) { + #print " invert<$1>\n"; + ($cut, $res) = pred_exec($1); + $res = !$res; + + # Leading / implies a CUT operation. + } elsif ($pred =~ /^\s*\/\s*(.*)$/) { + #print " cut<$1>\n"; + ($cut, $res) = pred_exec($1); + $cut = 1; + + # Recurse left for complex expressions. + } elsif ($pred =~ /^\s*\((.*)\)\s*$/) { + #print " left<$1>\n"; + ($cut, $res) = pred_exec($1); + + # Check for common syntax issues. + } elsif ($pred eq '') { + if ($sep eq '&' || $sep eq '|') { + die "$P: $pred$rest: malformed binary operator\n"; + } else { + die "$P: $pred$rest: syntax error\n"; + } + + # A predicate, execute it. + } else { + #print " DO<$pred> sep<$sep>\n"; + $res = pred_do($pred); + } + + #print " pre-return res<$res> sep<$sep>\n"; + if ($sep eq '') { + # + + # Recurse right for binary operators -- note these are lazy. + } elsif ($sep eq '&' || $sep eq '|') { + #print " right<$rest> ? sep<$sep> res<$res>\n"; + if ($rest =~ /^\s*($|\||\&)/) { + die "$P: $pred$rest: malformed binary operator\n"; + } + if ($cut == 0 && (($res && $sep eq '&') || (!$res && $sep eq '|'))) { + #print " right<$rest>\n"; + ($cut, $res) = pred_exec($rest); + } + + } else { + die "$P: $pred$rest: malformed predicate\n"; + } + #warn " return cut<$cut> res<$res> sep<$sep>\n"; + return ($cut, $res); +} + +# +# PREDICATE TESTS +# +my $test_total = 1; +my $test_good = 0; +sub pred_test { + my ($pred, $eres, $eerr) = @_; + my ($cut, $res, $err, $fail); + + $test_total++; + if ($test != 0 && $test != $test_total - 1) { + return; + } + + eval { + ($cut, $res) = pred_exec($pred); + }; + $err = $@; + chomp($err); + + $res = !!$res; + $eres = !!$eres; + + $fail = ''; + if (defined $eres && $res != $eres) { + $fail = "result missmatch, expected $eres returned $res"; + } + if (defined $eerr && $err eq '') { + $fail = "error missmatch, expected '$eerr' returned success"; + } elsif (defined $eerr && $err !~ /$eerr/) { + $fail = "error missmatch, expected '$eerr' returned '$err'"; + } elsif (!defined $eerr && $err ne '') { + $fail = "error missmatch, expected success returned '$err'"; + } + + if ($fail eq '') { + $test_good++; + } else { + print "$pred: $test_total: FAIL: $fail\n"; + } + #print "TEST<$pred> eres<$eres> eerr<$eerr> res<$res> err<$err>\n"; +} +if ($test >= 0) { + $arch = 'MYARCH'; + $flavour = 'MYFLAVOUR'; + %values = ( 'ENABLED' => 'y', 'DISABLED' => 'n' ); + + # Errors. + my $eunkn = 'unknown predicate'; + my $epred = 'malformed'; + my $eclose = 'missing close parenthesis'; + my $eopen = 'missing open parenthesis'; + my $ebinary = 'malformed binary operator'; + + # Basic predicate tests. + print "TEST: $test_total: basic predicate tests ...\n"; + + pred_test('nosuchcommand', undef, $eunkn); + pred_test('arch', undef, $epred); + pred_test('arch MYARCH', 1, undef); + pred_test('arch MYARCH NOTMYARCH', 1, undef); + pred_test('arch NOTMYARCH MYARCH', 1, undef); + pred_test('arch NOTMYARCH NOTMYARCH MYARCH', 1, undef); + pred_test('arch NOTMYARCH MYARCH NOTMYARCH', 1, undef); + pred_test('arch NOTMYARCH', 0, undef); + + pred_test('flavour', undef, $epred); + pred_test('flavour MYFLAVOUR', 1, undef); + pred_test('flavour NOTMYFLAVOUR MYFLAVOUR', 1, undef); + pred_test('flavour NOTMYFLAVOUR NOTMYFLAVOUR MYFLAVOUR', 1, undef); + pred_test('flavour NOTMYFLAVOUR MYFLAVOUR NOTMYFLAVOUR', 1, undef); + pred_test('flavour NOTMYFLAVOUR', 0, undef); + + pred_test('value', undef, $epred); + pred_test('value ENABLED', undef, $epred); + pred_test('value ENABLED ENABLED ENABLED', undef, $epred); + pred_test('value ENABLED y', 1, undef); + pred_test('value ENABLED n', 0, undef); + pred_test('value DISABLED n', 1, undef); + pred_test('value DISABLED y', 0, undef); + + pred_test('exists', undef, $epred); + pred_test('exists ENABLED ENABLED', undef, $epred); + pred_test('exists ENABLED', 1, undef); + pred_test('exists DISABLED', 1, undef); + pred_test('exists MISSING', 0, undef); + + print "TEST: $test_total: inversion tests ...\n"; + pred_test('!exists ENABLED', 0, undef); + pred_test('!exists MISSING', 1, undef); + pred_test('!!exists ENABLED', 1, undef); + pred_test('!!exists MISSING', 0, undef); + pred_test('!!!exists ENABLED', 0, undef); + pred_test('!!!exists MISSING', 1, undef); + + print "TEST: $test_total: parentheses tests ...\n"; + pred_test('(exists ENABLED)', 1, undef); + pred_test('((exists ENABLED))', 1, undef); + pred_test('(((exists ENABLED)))', 1, undef); + pred_test('(exists MISSING)', 0, undef); + pred_test('((exists MISSING))', 0, undef); + pred_test('(((exists MISSING)))', 0, undef); + + pred_test('(!exists ENABLED)', 0, undef); + pred_test('((!exists ENABLED))', 0, undef); + pred_test('(((!exists ENABLED)))', 0, undef); + pred_test('(!exists MISSING)', 1, undef); + pred_test('((!exists MISSING))', 1, undef); + pred_test('(((!exists MISSING)))', 1, undef); + + pred_test('((!(exists ENABLED)))', 0, undef); + pred_test('((!(exists MISSING)))', 1, undef); + pred_test('(!((exists ENABLED)))', 0, undef); + pred_test('(!((exists MISSING)))', 1, undef); + pred_test('!(((exists ENABLED)))', 0, undef); + pred_test('!(((exists MISSING)))', 1, undef); + pred_test('!((!(exists ENABLED)))', 1, undef); + pred_test('!((!(exists MISSING)))', 0, undef); + pred_test('!(!(!(exists ENABLED)))', 0, undef); + pred_test('!(!(!(exists MISSING)))', 1, undef); + + pred_test('(', undef, $eclose); + pred_test('()(', undef, $eclose); + pred_test('(())(', undef, $eclose); + pred_test('((()))(', undef, $eclose); + pred_test('(()', undef, $eclose); + pred_test('((())', undef, $eclose); + pred_test('(((()))', undef, $eclose); + pred_test('(()()', undef, $eclose); + pred_test('((())()', undef, $eclose); + + pred_test(')', undef, $eopen); + pred_test('())', undef, $eopen); + pred_test('(()))', undef, $eopen); + pred_test('((())))', undef, $eopen); + + print "TEST: $test_total: binary and tests ...\n"; + + pred_test('exists ENABLED &', undef, $ebinary); + pred_test('& exists ENABLED', undef, $ebinary); + pred_test('exists ENABLED & & exists ENABLED', undef, $ebinary); + + pred_test('exists MISSING & exists MISSING', 0, undef); + pred_test('exists MISSING & exists ENABLED', 0, undef); + pred_test('exists ENABLED & exists MISSING', 0, undef); + pred_test('exists ENABLED & exists ENABLED', 1, undef); + + pred_test('exists MISSING & exists MISSING & exists MISSING', 0, undef); + pred_test('exists MISSING & exists MISSING & exists ENABLED', 0, undef); + pred_test('exists MISSING & exists ENABLED & exists MISSING', 0, undef); + pred_test('exists MISSING & exists ENABLED & exists ENABLED', 0, undef); + pred_test('exists ENABLED & exists MISSING & exists MISSING', 0, undef); + pred_test('exists ENABLED & exists MISSING & exists ENABLED', 0, undef); + pred_test('exists ENABLED & exists ENABLED & exists MISSING', 0, undef); + pred_test('exists ENABLED & exists ENABLED & exists ENABLED', 1, undef); + + print "TEST: $test_total: binary or tests ...\n"; + + pred_test('exists ENABLED |', undef, $ebinary); + pred_test('| exists ENABLED', undef, $ebinary); + pred_test('exists ENABLED | | exists ENABLED', undef, $ebinary); + + pred_test('exists MISSING | exists MISSING', 0, undef); + pred_test('exists MISSING | exists ENABLED', 1, undef); + pred_test('exists ENABLED | exists MISSING', 1, undef); + pred_test('exists ENABLED | exists ENABLED', 1, undef); + + pred_test('exists MISSING | exists MISSING | exists MISSING', 0, undef); + pred_test('exists MISSING | exists MISSING | exists ENABLED', 1, undef); + pred_test('exists MISSING | exists ENABLED | exists MISSING', 1, undef); + pred_test('exists MISSING | exists ENABLED | exists ENABLED', 1, undef); + pred_test('exists ENABLED | exists MISSING | exists MISSING', 1, undef); + pred_test('exists ENABLED | exists MISSING | exists ENABLED', 1, undef); + pred_test('exists ENABLED | exists ENABLED | exists MISSING', 1, undef); + pred_test('exists ENABLED | exists ENABLED | exists ENABLED', 1, undef); + + print "TEST: $test_total: binary or/and combination tests ...\n"; + + pred_test('exists MISSING | exists MISSING & exists MISSING', 0, undef); + pred_test('exists MISSING | exists MISSING & exists ENABLED', 0, undef); + pred_test('exists MISSING | exists ENABLED & exists MISSING', 0, undef); + pred_test('exists MISSING | exists ENABLED & exists ENABLED', 1, undef); + pred_test('exists ENABLED | exists MISSING & exists MISSING', 1, undef); + pred_test('exists ENABLED | exists MISSING & exists ENABLED', 1, undef); + pred_test('exists ENABLED | exists ENABLED & exists MISSING', 1, undef); + pred_test('exists ENABLED | exists ENABLED & exists ENABLED', 1, undef); + + print "TEST: $test_total: binary and/or combination tests ...\n"; + + pred_test('exists MISSING & exists MISSING | exists MISSING', 0, undef); + pred_test('exists MISSING & exists MISSING | exists ENABLED', 0, undef); + pred_test('exists MISSING & exists ENABLED | exists MISSING', 0, undef); + pred_test('exists MISSING & exists ENABLED | exists ENABLED', 0, undef); + pred_test('exists ENABLED & exists MISSING | exists MISSING', 0, undef); + pred_test('exists ENABLED & exists MISSING | exists ENABLED', 1, undef); + pred_test('exists ENABLED & exists ENABLED | exists MISSING', 1, undef); + pred_test('exists ENABLED & exists ENABLED | exists ENABLED', 1, undef); + + print "TEST: $test_total: cut tests ...\n"; + pred_test('(arch MYARCH & exists MISSING) | exists ENABLED', 1, undef); + pred_test('(arch MYARCH &/ exists MISSING) | exists ENABLED', 0, undef); + + $test_total--; + print "TEST: $test_good/$test_total succeeded\n"; + + exit $exit_val; +} + +# Load up the current configuration values -- FATAL if this fails +print "$P: $config: loading config\n"; +open(CONFIG, "<$config") || die "$P: $config: open failed -- $! -- aborting\n"; +while () { + # Pull out values. + /^#*\s*(CONFIG_\w+)[\s=](.*)$/ or next; + if ($2 eq 'is not set') { + $values{$1} = 'n'; + } else { + $values{$1} = $2; + } +} +close(CONFIG); + +# FATAL: Check if we have an enforcement list. +my $pass = 0; +my $total = 0; +my $line = ''; +print "$P: $checks: loading checks\n"; +open(CHECKS, "<$checks") || die "$P: $checks: open failed -- $! -- aborting\n"; +while () { + /^#/ && next; + chomp; + + $line .= $_; + if ($line =~ /\\$/) { + chop($line); + $line .= " "; + next; + } + $line =~ /^\s*$/ && next; + + #print "CHECK: <$line>\n"; + $total++; + my (undef, $result) = pred_exec($line); + if (!$result) { + print "$P: FAIL: $line\n"; + $exit_val = $fail_exit; + } else { + $pass++; + } + + $line = ''; +} +close(CHECKS); + +print "$P: $pass/$total checks passed -- exit $exit_val\n"; +exit $exit_val; --- linux-3.13.0.orig/debian/scripts/control-create +++ linux-3.13.0/debian/scripts/control-create @@ -0,0 +1,25 @@ +#!/bin/bash + +. debian/debian.env + +vars=$1 + +. $vars + +if [ "$is_sub" = "" ]; then + flavour=$(basename $vars | sed 's/.*\.//') + stub=${DEBIAN}/control.d/flavour-control.stub +else + flavour=$(basename $vars .vars) + stub=${DEBIAN}/sub-flavours/control.stub +fi + +cat $stub | grep -v '^#' | sed \ + -e "s#FLAVOUR#$flavour#g" \ + -e "s#DESC#$desc#g" \ + -e "s#ARCH#$arch#g" \ + -e "s#SUPPORTED#$supported#g" \ + -e "s#TARGET#$target#g" \ + -e "s#BOOTLOADER#$bootloader#g" \ + -e "s#=PROVIDES=#$provides#g" \ + -e "s#=CONFLICTS=#$conflicts#g" --- linux-3.13.0.orig/debian/scripts/link-headers +++ linux-3.13.0/debian/scripts/link-headers @@ -0,0 +1,42 @@ +#!/bin/bash -e + +. debian/debian.env + +hdrdir="$1" +symdir="$2" +flavour="$3" + +echo "Symlinking and copying headers for $flavour..." + +excludes="( -path ./debian -prune -o -path ./${DEBIAN} -prune -o -path ./.git ) -prune -o" + +( +find . $excludes -type f \ + \( -name 'Makefile*' -o -name 'Kconfig*' -o -name 'Kbuild*' -o \ + -name '*.sh' -o -name '*.pl' -o -name '*.lds' \) -print +find ./include ./scripts -name .gitignore -prune -o -type f -print +find ./include -mindepth 1 -maxdepth 1 $excludes -type d -print +) | ( +while read file; do + dir=$file + lastdir=$file + + if [ -e "$hdrdir/$file" -o -L "$hdrdir/$file" ]; then + continue + fi + + while [ ! -e "$hdrdir/$dir" -a ! -L "$hdrdir/$dir" ]; do + lastdir=$dir + dir=`dirname $dir` + done + # If the last item to exist is a symlink we assume all is good + if [ ! -L "$hdrdir/$dir" ]; then + # Turns things like "./foo" into "../" + deref="`echo -n $lastdir | sed -e 's/^\.//' -e's,/[^/]*,../,g'`" + item="`echo -n $lastdir | sed -e 's/^\.\///'`" + ln -s $deref$symdir/$item $hdrdir/$item + fi +done +) + +exit --- linux-3.13.0.orig/debian/scripts/misc/find-obsolete-firmware +++ linux-3.13.0/debian/scripts/misc/find-obsolete-firmware @@ -0,0 +1,91 @@ +#!/bin/bash +# +# Find all duplicate or obsolete firmware that is being carried +# in the kernel firmware directory. Compare these files against +# the linux-firmware package for the approriate release. For example, +# assuming this is raring, then compare the kernel firmware files +# against the raring branch of linux-firmware. +# +# Example: $0 ~/ubuntu/linux-firmware-raring + +USEAGE="$0 LINUX-FIRMWARE" + +. debian/debian.env + +NFWINFO="`find $DEBIAN -name fwinfo|wc -l`" +if [ ! "$NFWINFO" = "1" ] +then + echo Your repo is hosed. There can only be one fwinfo file. + find $DEBIAN -name fwinfo + exit 1 +fi + +FWINFO="`pwd`/`find $DEBIAN -name fwinfo`" + +if [ "$1" = "" ] +then + echo $USEAGE + exit 1 +fi +FW="$1" + +if [ ! -f $FW/WHENCE ] +then + echo Bogus linux-firmware directory + exit 1 +fi +if ! egrep -q "^firmware:" $FWINFO +then + echo Bogus firmware info file + exit 1 +fi + +# +# Prepare the tree and make firmware. +# +TEE="tee -a" +LO=`pwd`/firmware.txt +LF=`pwd`/lib/firmware +rm -rf debian/build $LF $LO +fakeroot debian/rules clean prepare-generic +cp debian/build/build-generic/.config . +mkdir -p $LF +make firmware_install INSTALL_MOD_PATH=`pwd` + +(cd $LF +find . -type f | while read f +do + BN="`basename $f`" + + if ! grep -q $BN $FWINFO + then + echo "Unused firmware: $f" | $TEE $LO + else + if [ -f $FW/$f ] + then + if ! cmp $FW/$f $f + then + echo "$f differs" | $TEE $LO + else + echo "$f is duplicated" | $TEE $LO + fi + else + echo "$f does not exist in $FW" | $TEE $LO + fi + fi +done) + +# +# Check for firmware files referenced by the kernel +# that do not exist in either location. +# +cat $FWINFO | while read fwi f +do + if [ -s lib/firmware/$f ] || [ -s $FW/$f ] + then + continue + else + echo "Missing firmware $f" | $TEE $LO + fi +done + --- linux-3.13.0.orig/debian/scripts/misc/fw-to-ihex.sh +++ linux-3.13.0/debian/scripts/misc/fw-to-ihex.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +F=$1 +if [ "$F" = "" ] +then + echo You must supply a firmware file. + exit 1 +fi + +echo "unsigned char d[] = {" > $F.c +hexdump -v -e '"\t" 8/1 "0x%02x, " "\n"' $F >> $F.c +echo "};" >> $F.c +sed -i 's/0x .*$//' $F.c + +O="`dirname $F`/`basename $F`.o" +gcc -o $O -c $F.c +objcopy -Oihex $F.o $F.ihex + --- linux-3.13.0.orig/debian/scripts/misc/get-firmware +++ linux-3.13.0/debian/scripts/misc/get-firmware @@ -0,0 +1,62 @@ +#!/bin/bash +# +# Find all files in linux-firmware that are new or different since the previous release +# and copy them into the kernel firmware directory. You should only do this on the +# backport branch since it would be redundant on the released kernel. It assumed you've +# unpacked linux-firmware from each release into separate directories. +# +# Example: $0 ~/ubuntu/linux-firmware-precise ~/ubuntu/linux-firmware-quantal + +if [ "$1" = "" ] || [ "$2" = "" ] || [ ! -f $1/WHENCE ] || [ ! -f $2/WHENCE ] +then + echo You must supply 2 firmware directories. + exit 1 +fi + +if [ ! -f debian/debian.env ] +then + echo You must run this script from the root of the repo + exit 1 +fi +. debian/debian.env + +NFWINFO="`find $DEBIAN -name fwinfo|wc -l`" +if [ ! "$NFWINFO" = "1" ] +then + echo Your repo is hosed. There can only be one fwinfo file. + find $DEBIAN -name fwinfo + exit 1 +fi + +FWINFO="`pwd`/`find $DEBIAN -name fwinfo`" + +CDIR=`pwd` +OFW=$1 +NFW=$2 + +cd $NFW +# +# Find all files in $NFW that are new or different from $1 +# +(find . -type f | egrep -v "debian|git|LICEN|WHEN|READ|Make|configure" | sed 's;\./;;' | \ +while read f +do + if grep -q $f $FWINFO + then + if [ ! -f $OFW/$f ] + then + echo $f + elif ! cmp $f $OFW/$f > /dev/null + then + echo $f + fi + fi +done) |\ +while read f +do + mkdir -p $CDIR/firmware/`dirname $f` + if [ ! -f $CDIR/firmware/`dirname $f`/`basename $f`.ihex ] + then + cp -v $f $CDIR/firmware/`dirname $f` + fi +done --- linux-3.13.0.orig/debian/scripts/misc/getabis +++ linux-3.13.0/debian/scripts/misc/getabis @@ -0,0 +1,130 @@ +#!/bin/bash + +if [ "$#" != "2" ]; then + echo "Usage: $0 " 1>&2 + exit 1 +fi + +if [ "$DEBIAN" = "" ]; then + . debian/debian.env +fi + +ver=$1 +revision=$2 +abi=$(echo $revision | gawk -F. '{print $1}') + +verabi=$ver-$abi +verfull=$ver-$revision + +WGET="wget --tries=1 --timeout=10 --quiet -c" + +abidir="`pwd`/$DEBIAN/abi/$verfull" +tmpdir="`pwd`/abi-tmp-$verfull" +origdir="`pwd`" +fwinfo=$abidir/fwinfo + +test -d $tmpdir || mkdir $tmpdir + +package_prefixes() { + __package_prefixes="$@" +} + +getall() { + arch=$1 + shift + + mkdir -p $abidir/$arch + + for sub in $@; do + if [ -f $abidir/$arch/$sub ]; then + echo "Exists: $sub" + continue + fi + echo -n "Fetching $sub($arch)..." + prefixes="" + filenames="" + cd $tmpdir + for prefix in $__package_prefixes + do + filename=${prefix}-${verabi}-${sub}_${verfull}_${arch}.deb + for r in "${repo_list[@]}" + do + if ! [ -f $filename ]; then + $WGET $r/$filename + fi + if [ -f $filename ]; then + prefixes="$prefixes $prefix" + filenames="$filenames $filename" + break + fi + done + done + if [ "$filenames" != "" ]; then + echo -n "extracting$prefixes..." + for filename in $filenames + do + dpkg-deb --extract $filename tmp + done + find tmp -name "*.ko" | while read f; do + modinfo $f | grep ^firmware >> $fwinfo + done + if [ -f tmp/boot/abi-* ]; then + mv tmp/boot/abi-* $abidir/$arch/$sub + else + echo -n "NO ABI FILE..." + fi + (cd tmp; find lib/modules/$verabi-$sub/kernel -name '*.ko') | \ + sed -e 's/.*\/\([^\/]*\)\.ko/\1/' | sort > \ + $abidir/$arch/$sub.modules + ( + cd tmp; + # Prevent exposing some errors when called by python scripts. SIGPIPE seems to get + # exposed when using the `find ...` form of the command. + ko=$(find lib/modules/$verabi-$sub/kernel \ + -name '*.ko' | head -1) + readelf -p .comment "$ko" | gawk ' + ($1 == "[") { + printf("%s", $3); + for (n=4; n<=NF; n++) { + printf(" %s", $n); + } + print "" + }' | sort -u >$abidir/$arch/$sub.compiler + version=`cat $abidir/$arch/$sub.compiler` + echo -n "$version..." + ) + rm -rf tmp $filenames + echo "done." + else + echo "FAILED." + fi + cd $origdir + done +} + +# MAIN + +# Setup abi directory +mkdir -p $abidir +echo $abi > $abidir/abiname + +# NOTE: The flavours are hardcoded, because they may have changed from the +# current build. + +__package_prefixes="linux-image" + +. $DEBIAN/etc/getabis + +compilers=`cat $abidir/*/*.compiler | sort -u | wc -l` +if [ "$compilers" != 1 ]; then + echo "WARNING: inconsistant compiler versions detected" 1>&2 +fi + +sort < $fwinfo | uniq > fwinfo.tmp +mv fwinfo.tmp $fwinfo + +rmdir $tmpdir + +# Add the new ABI directory, remove the old +git add $abidir +find $DEBIAN/abi/* -maxdepth 0 -type d | grep -v $verfull | while read f; do git rm -r $f;done --- linux-3.13.0.orig/debian/scripts/misc/git-ubuntu-log +++ linux-3.13.0/debian/scripts/misc/git-ubuntu-log @@ -0,0 +1,232 @@ +#!/usr/bin/perl -w + +use strict; +use Text::Wrap; + +my $kernel_auth = "Upstream Kernel Changes"; + +my (%map, @reverts); +my $pstate = 1; +my $no_kern_log = 0; +my $print_shas = 0; +my $first_print = 1; + +while (@ARGV) { + my $opt = $ARGV[0]; + shift; + if ($opt eq "--no-kern-log") { + $no_kern_log = 1; + } elsif ($opt eq "--print-shas") { + $print_shas = 1; + } else { + print STDERR "Unknown options: $opt\n"; + exit(1); + } +} + +sub check_reverts($) { + my ($entry) = @_; + my ($check); + + foreach $check (reverse @reverts) { + my $desc = "Revert \"" . $entry->{'desc'} . "\""; + if ($check->{'desc'} eq $desc) { + @reverts = grep($_->{'desc'} ne $desc, @reverts); + return 1; + } + } + + return 0; +} + +sub add_entry($) { + my ($entry) = @_; + my $key = $entry->{'author'}; + + # store description in array, in email->{desc list} map + if (exists $map{$key}) { + # grab ref + my $obj = $map{$key}; + + # add desc to array + push(@$obj, $entry); + } else { + # create new array, containing 1 item + my @arr = ($entry); + + # store ref to array + $map{$key} = \@arr; + } +} + +sub shortlog_entry($$$$$) { + my ($name, $desc, $bug, $cve, $commit) = @_; + my $entry; + + $desc =~ s#/pub/scm/linux/kernel/git/#/.../#g; + $desc =~ s#\[PATCH\] ##g; + + $desc =~ s#^\s*##g; + $desc =~ s# *UBUNTU: ##g; + + $entry->{'desc'} = $desc; + if ($bug ne '') { + $entry->{'bugno'} = $bug; + } + $entry->{'cve'} = $cve; + $entry->{'commit'} = $commit; + $entry->{'author'} = $name; + + if ($desc =~ /^Revert "/) { + push(@reverts, $entry); + return; + } + + return if check_reverts($entry); + + add_entry($entry); +} + +# sort comparison function +sub by_name($$) { + my ($a, $b) = @_; + + uc($a) cmp uc($b); +} + +sub shortlog_output { + my ($obj, $key, $entry); + + foreach $key (sort by_name keys %map) { + next if $key eq $kernel_auth and $no_kern_log; + + print "\n" unless $first_print; + $first_print = 0; + + # output author + printf " [ %s ]\n\n", $key; + + # output author's 1-line summaries + $obj = $map{$key}; + foreach $entry (reverse @$obj) { + print wrap(" * ", " ", $entry->{'desc'}) . "\n"; + # For non upstream changes, add other info. + if ($key ne $kernel_auth) { + if ($print_shas) { + print " - GIT-SHA " . $entry->{'commit'} . + "\n"; + } + } + if (defined($entry->{'bugno'})) { + print " - LP: #" . $entry->{'bugno'} . "\n"; + } + if (defined($entry->{'cve'})) { + print " - " . $entry->{'cve'} . "\n"; + } + } + } +} + +sub changelog_input { + my ($author, $desc, $commit, $entry, $cve); + + while () { + # get commit + if ($pstate == 1) { + next unless /^commit (.*)/; + + $commit = $1; + + $pstate++; + } + + # get author and email + elsif ($pstate == 2) { + my ($email); + + next unless /^[Aa]uthor:?\s*(.*?)\s*<(.*)>/; + + $author = $1; + $email = $2; + $desc = undef; + $cve = undef; + + # cset author fixups + if (!$author) { + $author = $email; + } + $pstate++; + } + + # skip to blank line + elsif ($pstate == 3) { + next unless /^\s*$/; + $pstate++; + } + + # skip to non-blank line + elsif ($pstate == 4) { + next unless /^\s*?(.*)/; + my $ignore = 0; + my $do_ignore = 0; + my $bug = undef; + my %bugz = (); + my $k; + + # skip lines that are obviously not + # a 1-line cset description + next if /^\s*From: /; + + chomp; + $desc = $1; + + if ($desc =~ /^ *(Revert "|)UBUNTU:/) { + $do_ignore = 1; + } else { + $do_ignore = 0; + $author = $kernel_auth; + $ignore = 1 if $desc =~ /Merge /; + } + while () { + $ignore = 1 if ($do_ignore && /^ *Ignore: yes/i); + if (/^ *Bug: *(#|)([0-9#,\s]*)\s*$/i) { + foreach $k (split('(,|\s)\s*(#|)', $2)) { + $bugz{$k} = 1 if (($k ne '') and ($k =~ /[0-9]+/)); + } + } + elsif (/^ *BugLink: *http.*:\/\/.*\/([0-9]+)/i) { + $bugz{$1} = 1; + } + elsif (/^ *(CVE-.*)/) { + $cve = $1 + } + last if /^commit /; + } + + $bug = join(", #", sort keys(%bugz)); + if (!$ignore) { + &shortlog_entry($author, $desc, $bug, + $cve, $commit, 0); + } + + $pstate = 1; + if ($_ && /^commit (.*)/) { + $commit = $1; + $pstate++; + } + } + + else { + die "invalid parse state $pstate"; + } + } + + foreach $entry (@reverts) { + add_entry($entry); + } +} + +&changelog_input; +&shortlog_output; + +exit(0); --- linux-3.13.0.orig/debian/scripts/misc/insert-changes.pl +++ linux-3.13.0/debian/scripts/misc/insert-changes.pl @@ -0,0 +1,36 @@ +#!/usr/bin/perl -w + +my $debian; +$droot = $ARGV[0] if (defined $ARGV[0]); +$droot = 'debian' if (!defined $droot); +$debian = $ARGV[1] if (defined $ARGV[1]); +$debian = 'debian.master' if (!defined $debian); + +system("make -s -f $droot/rules printchanges > $debian/changes"); + +open(CHANGELOG, "< $debian/changelog") or die "Cannot open changelog"; +open(CHANGES, "< $debian/changes") or die "Cannot open new changes"; +open(NEW, "> $debian/changelog.new") or die "Cannot open new changelog"; + +$printed = 0; + +while () { + if (/^ CHANGELOG: /) { + next if $printed; + + while () { + print NEW; + } + + $printed = 1; + } else { + print NEW; + } +} + +close(NEW); +close(CHANGES); +close(CHANGELOG); + +rename("$debian/changelog.new", "$debian/changelog"); +unlink("$debian/changes"); --- linux-3.13.0.orig/debian/scripts/misc/insert-mainline-changes +++ linux-3.13.0/debian/scripts/misc/insert-mainline-changes @@ -0,0 +1,42 @@ +#!/usr/bin/perl + +if ($#ARGV != 2) { + warn "Usage: $0 \n"; + die " $0 debian.master/changelog v3.2.3 v3.2.2..v3.2.3\n"; +} +my ($changelog, $to, $range) = @ARGV; + +my @changes = (); + +push(@changes, "\n"); +push(@changes, " [ Upstream Kernel Changes ]\n\n"); +push(@changes, " * rebase to $to\n"); + +open(LOG, "git log '$range'|") || die "$0: git log failed: - $!\n"; +while () { + if (m@BugLink: .*launchpad.net/.*/([0-9]+)\s$@) { + push(@changes, " - LP: #$1\n"); + } +} +close(LOG); + +open(CHANGELOG, "< $changelog") or die "Cannot open changelog"; +open(NEW, "> $changelog.new") or die "Cannot open new changelog"; + +$printed = 3; +while () { + if (/^ CHANGELOG: /) { + $printed--; + print NEW; + if ($printed == 0) { + print NEW @changes; + } + next; + } + print NEW; +} + +close(NEW); +close(CHANGELOG); + +rename("$changelog.new", "$changelog"); --- linux-3.13.0.orig/debian/scripts/misc/insert-ubuntu-changes +++ linux-3.13.0/debian/scripts/misc/insert-ubuntu-changes @@ -0,0 +1,58 @@ +#!/usr/bin/perl + +if ($#ARGV != 2) { + die "Usage: $0 \n"; +} +my ($changelog, $end, $start) = @ARGV; + +$end =~ s/.*\.//; +$start =~ s/.*\.//; + +my @changes = (); +my $output = 0; +open(CHG, ") { + if (/^\S+\s+\((.*\.(\d+))\)/) { + if ($2 <= $end) { + last; + } + if ($2 == $start) { + $output = 1; + } + if ($output) { + push(@changes, "\n [ Ubuntu: $1 ]\n\n"); + next; + } + } + next if ($output == 0); + + next if (/^\s*$/); + next if (/^\s--/); + next if (/^\s\s[^\*\s]/); + + push(@changes, $_); +} +close(CHG); + +open(CHANGELOG, "< $changelog") or die "Cannot open changelog"; +open(NEW, "> $changelog.new") or die "Cannot open new changelog"; + +$printed = 3; +while () { + if (/^ CHANGELOG: /) { + $printed--; + print NEW; + if ($printed == 0) { + print NEW @changes; + } + next; + } + print NEW; +} + +close(NEW); +close(CHANGELOG); + +rename("$changelog.new", "$changelog"); --- linux-3.13.0.orig/debian/scripts/misc/kernelconfig +++ linux-3.13.0/debian/scripts/misc/kernelconfig @@ -0,0 +1,172 @@ +#!/bin/bash + +. debian/debian.env + +# Script to merge all configs and run 'make silentoldconfig' on it to wade out bad juju. +# Then split the configs into distro-commmon and flavour-specific parts + +# We have to be in the top level kernel source directory +if [ ! -f MAINTAINERS ] || [ ! -f Makefile ]; then + echo "This does not appear to be the kernel source directory." 1>&2 + exit 1 +fi + +mode=${1:?"Usage: $0 [oldconfig|editconfig]"} +yes=0 +case "$mode" in + update*configs) mode='silentoldconfig' ;; + default*configs) mode='oldconfig'; yes=1 ;; + edit*configs) ;; # All is good + gen*configs) mode='genconfigs' ;; # All is good + dump*configs) mode='config'; yes=1 ;; + *) echo "$0 called with invalid mode" 1>&2 + exit 1 ;; +esac +kerneldir="`pwd`" +confdir="$kerneldir/${DEBIAN}/config" +sharedconfdir="$kerneldir/debian.master/config" +variant="$2" + +. $DEBIAN/etc/kernelconfig + +bindir="`pwd`/${DROOT}/scripts/misc" +common_conf="$confdir/config.common.$family" +tmpdir=`mktemp -d` +mkdir "$tmpdir/CONFIGS" + +if [ "$mode" = "genconfigs" ]; then + keep=1 + mode="oldconfig" + test -d CONFIGS || mkdir CONFIGS +fi + +for arch in $archs; do + rm -rf build + mkdir build + + # Map debian archs to kernel archs + case "$arch" in + ppc64|ppc64el) kernarch="powerpc" ;; + amd64) kernarch="x86_64" ;; + lpia) kernarch="x86" ;; + sparc) kernarch="sparc64" ;; + armel|armhf) kernarch="arm" ;; + *) kernarch="$arch" ;; + esac + + archconfdir=$confdir/$arch + flavourconfigs=$(cd $archconfdir && ls config.flavour.*) + + # Merge configs + # We merge config.common.ubuntu + config.common. + + # config.flavour. + + for config in $flavourconfigs; do + fullconf="$tmpdir/$arch-$config-full" + case $config in + *) + : >"$fullconf" + if [ -f $common_conf ]; then + cat $common_conf >> "$fullconf" + fi + if [ -f $archconfdir/config.common.$arch ]; then + cat $archconfdir/config.common.$arch >> "$fullconf" + fi + cat "$archconfdir/$config" >>"$fullconf" + if [ -f $confdir/OVERRIDES ]; then + cat $confdir/OVERRIDES >> "$fullconf" + fi + ;; + esac + done + + for config in $flavourconfigs; do + if [ -f $archconfdir/$config ]; then + fullconf="$tmpdir/$arch-$config-full" + cat "$fullconf" > build/.config + # Call oldconfig or menuconfig + case "$mode" in + editconfigs) + # Interactively edit config parameters + while : ; do + echo -n "Do you want to edit config: $arch/$config? [Y/n] " + read choice + + case "$choice" in + y* | Y* | "" ) + make O=`pwd`/build ARCH=$kernarch menuconfig + break ;; + n* | N* ) + break ;; + *) + echo "Entry not valid" + esac + done + ;; + *) + echo "* Run $mode (yes=$yes) on $arch/$config ..." + if [ "$yes" -eq 1 ]; then + yes "" | make O=`pwd`/build ARCH=$kernarch "$mode" + else + make O=`pwd`/build ARCH=$kernarch "$mode" + fi ;; + esac + cat build/.config > $archconfdir/$config + cat build/.config > "$tmpdir/CONFIGS/$arch-$config" + if [ "$keep" = "1" ]; then + cat build/.config > CONFIGS/$arch-$config + fi + else + echo "!! Config not found $archconfdir/$config..." + fi + done + + echo "Running splitconfig.pl for $arch" + echo + + # Can we make this more robust by avoiding $tmpdir completely? + # This approach was used for now because I didn't want to change + # splitconfig.pl + (cd $archconfdir; $bindir/splitconfig.pl config.flavour.*; mv config.common \ + config.common.$arch; cp config.common.$arch $tmpdir) +done + +rm -f $common_conf + +# Now run splitconfig.pl on all the config.common. copied to +# $tmpdir +(cd $tmpdir; $bindir/splitconfig.pl *) +( + cd $confdir; + rm -f *-full + grep -v 'is UNMERGABLE' <$tmpdir/config.common >$common_conf + for arch in $archs; do + grep -v 'is UNMERGABLE' <$tmpdir/config.common.$arch \ + >$arch/config.common.$arch + done +) + +echo "" +echo "Running config-check for all configurations ..." +echo "" +fail=0 +for arch in $archs; do + archconfdir=$confdir/$arch + flavourconfigs=$(cd $archconfdir && ls config.flavour.*) + for config in $flavourconfigs; do + flavour="${config##*.}" + if [ -f $archconfdir/$config ]; then + fullconf="$tmpdir/CONFIGS/$arch-$config" + "$bindir/../config-check" "$fullconf" "$arch" "$flavour" "$sharedconfdir" "0" || let "fail=$fail+1" + fi + done +done + +if [ "$fail" != 0 ]; then + echo "" + echo "*** ERROR: $fail config-check failures detected" + echo "" +fi + +rm -rf build + --- linux-3.13.0.orig/debian/scripts/misc/retag +++ linux-3.13.0/debian/scripts/misc/retag @@ -0,0 +1,34 @@ +#!/usr/bin/perl -w + +open(TAGS, "git tag -l |") or die "Could not get list of tags"; +@tags = ; +close(TAGS); + +open(LOGS, "git log --pretty=short |") or die "ERROR: Calling git log"; +my $commit = ""; + +while () { + my $origtag; + + if (m|^commit (.*)$|) { + $commit = $1; + next; + } + + m|\s*UBUNTU: (Ubuntu-2\.6\..*)| or next; + + $tag = $1; + + ($origtag) = grep(/^$tag.orig$/, @tags); + + if (!defined($origtag)) { + print "I: Adding original tag for $tag\n"; + system("git tag -m $tag $tag.orig $tag"); + } + + print "I: Tagging $tag => $commit\n"; + + system("git tag -f -m $tag $tag $commit"); +} + +close(LOGS); --- linux-3.13.0.orig/debian/scripts/misc/splitconfig.pl +++ linux-3.13.0/debian/scripts/misc/splitconfig.pl @@ -0,0 +1,107 @@ +#!/usr/bin/perl -w + +%allconfigs = (); +%common = (); + +print "Reading config's ...\n"; + +for $config (@ARGV) { + # Only config.* + next if $config !~ /^config\..*/; + # Nothing that is disabled, or remnant + next if $config =~ /.*\.(default|disabled|stub)$/; + + %{$allconfigs{$config}} = (); + + print " processing $config ... "; + + open(CONFIG, "< $config"); + + while () { + # Skip comments + /^#*\s*CONFIG_(\w+)[\s=](.*)$/ or next; + + ${$allconfigs{$config}}{$1} = $2; + + $common{$1} = $2; + } + + close(CONFIG); + + print "done.\n"; +} + +print "\n"; + +print "Merging lists ... \n"; + +# %options - pointer to flavour config inside the allconfigs array +for $config (keys(%allconfigs)) { + my %options = %{$allconfigs{$config}}; + + print " processing $config ... "; + + for $key (keys(%common)) { + next if not defined $common{$key}; + + # If we don't have the common option, then it isn't + # common. If we do have that option, it must have the same + # value. EXCEPT where this file does not have a value at all + # which may safely be merged with any other value; the value + # will be elided during recombination of the parts. + if (!defined($options{$key})) { + # Its ok really ... let it merge + } elsif (not defined($options{$key})) { + undef $common{$key}; + } elsif ($common{$key} ne $options{$key}) { + undef $common{$key}; + } + } + + print "done.\n"; +} + +print "\n"; + +print "Creating common config ... "; + +open(COMMON, "> config.common"); +print COMMON "#\n# Common config options automatically generated by splitconfig.pl\n#\n"; + +for $key (sort(keys(%common))) { + if (not defined $common{$key}) { + print COMMON "# CONFIG_$key is UNMERGABLE\n"; + } elsif ($common{$key} eq "is not set") { + print COMMON "# CONFIG_$key is not set\n"; + } else { + print COMMON "CONFIG_$key=$common{$key}\n"; + } +} +close(COMMON); + +print "done.\n\n"; + +print "Creating stub configs ...\n"; + +for $config (keys(%allconfigs)) { + my %options = %{$allconfigs{$config}}; + + print " processing $config ... "; + + open(STUB, "> $config"); + print STUB "#\n# Config options for $config automatically generated by splitconfig.pl\n#\n"; + + for $key (sort(keys(%options))) { + next if defined $common{$key}; + + if ($options{$key} =~ /^is /) { + print STUB "# CONFIG_$key $options{$key}\n"; + } else { + print STUB "CONFIG_$key=$options{$key}\n"; + } + } + + close(STUB); + + print "done.\n"; +} --- linux-3.13.0.orig/debian/scripts/module-check +++ linux-3.13.0/debian/scripts/module-check @@ -0,0 +1,120 @@ +#!/usr/bin/perl -w + +$flavour = shift; +$prev_abidir = shift; +$abidir = shift; +$skipmodule = shift; + +print "II: Checking modules for $flavour..."; + +if (-f "$prev_abidir/ignore.modules" + or -f "$prev_abidir/$flavour.ignore.modules") { + print "explicitly ignoring modules\n"; + exit(0); +} + +if (not -f "$abidir/$flavour.modules" or not -f + "$prev_abidir/$flavour.modules") { + print "previous or current modules file missing!\n"; + print " $abidir/$flavour.modules\n"; + print " $prev_abidir/$flavour.modules\n"; + if (defined($skipmodule)) { + exit(0); + } else { + exit(1); + } +} + +print "\n"; + +my %modules; +my %modules_ignore; +my $missing = 0; +my $new = 0; +my $errors = 0; + +# See if we have any ignores +if (-f "$prev_abidir/../modules.ignore") { + my $ignore = 0; + open(IGNORE, "< $prev_abidir/../modules.ignore") or + die "Could not open $prev_abidir/../modules.ignore"; + print " reading modules to ignore..."; + while () { + chomp; + next if /\s*#/; + $modules_ignore{$_} = 1; + $ignore++; + } + close(IGNORE); + print "read $ignore modules.\n"; +} + +# Read new modules first +print " reading new modules..."; +$new_count = 0; +open(NEW, "< $abidir/$flavour.modules") or + die "Could not open $abidir/$flavour.modules"; +while () { + chomp; + $modules{$_} = 1; + $new_count++; +} +close(NEW); +print "read $new_count modules.\n"; + +# Now the old modules, checking for missing ones +print " reading old modules..."; +$old_count = 0; +open(OLD, "< $prev_abidir/$flavour.modules") or + die "Could not open $prev_abidir/$flavour.modules"; +while () { + chomp; + if (not defined($modules{$_})) { + print "\n" if not $missing; + $missing++; + if (not defined($modules_ignore{$_})) { + print " MISS: $_\n"; + $errors++; + } else { + print " MISS: $_ (ignored)\n"; + } + } else { + $modules{$_}++; + } + $old_count++; +} +close(OLD); +# Check for new modules +foreach $mod (keys(%modules)) { + if ($modules{$mod} < 2) { + print "\n" if not $missing and not $new; + print " NEW : $mod\n"; + $new++; + } +} +if ($new or $missing) { + print " read $old_count modules : new($new) missing($missing)\n"; +} else { + print "read $old_count modules.\n"; +} + + +# Let's see where we stand... +if ($errors) { + if (defined($skipmodule)) { + print "WW: Explicitly asked to ignore failures (probably not good)\n"; + } else { + print "EE: Missing modules (start begging for mercy)\n"; + exit 1 + } +} + +if ($new) { + print "II: New modules (you've been busy, wipe the poop off your nose)\n"; +} else { + print "II: No new modules (hope you're happy, slacker)\n"; +} + +print "II: Done\n"; + +exit(0); --- linux-3.13.0.orig/debian/scripts/module-inclusion +++ linux-3.13.0/debian/scripts/module-inclusion @@ -0,0 +1,60 @@ +#!/bin/bash + +# +# Build a new directory of modules based on an inclusion list. +# The includsion list format must be a bash regular expression. +# +# usage: $0 ROOT INCLUSION_LIST +# example: $0 debian/build/build-virtual \ +# debian/build/build-virtual-ALL debian/build/build-virtual \ +# debian.master/control.d/virtual.inclusion-list +master=0 +if [ "$1" = "--master" ]; then + master=1 + shift +fi + +ROOT=$1 +NROOT=$2 +ILIST=$3 + +# +# Prep a destination directory. +# +mkdir -p ${NROOT} + +# Copy over the framework... +if [ "$master" -eq 1 ]; then + (cd ${ROOT}; find . ! -name "*.ko" -type f) | \ + while read f + do + mkdir -p ${NROOT}/`dirname $f` + mv ${ROOT}/$f ${NROOT}/$f + done +fi + +cat ${ILIST} |while read i +do + # + # 'find' blurts a warning if it cannot find any ko files. + # + if echo "$i" | grep '\*' > /dev/null + then + (cd ${ROOT}; eval find "${i}" -name "*.ko") |while read f + do + mkdir -p ${NROOT}/`dirname $f` + mv ${ROOT}/$f ${NROOT}/$f + done + else + if [ -f "${ROOT}/$i" ] + then + mkdir -p ${NROOT}/`dirname $i` + mv ${ROOT}/$i ${NROOT}/$i + else + echo Warning: Could not find ${ROOT}/$i + fi + fi + +done + +exit 0 --- linux-3.13.0.orig/debian/scripts/sub-flavour +++ linux-3.13.0/debian/scripts/sub-flavour @@ -0,0 +1,69 @@ +#!/bin/bash + +. debian/debian.env + +echo "SUB_PROCESS $FROM => $TO" + +export from_pkg="linux-image-$ABI_RELEASE-$FROM" +export to_pkg="linux-image-$ABI_RELEASE-$TO" + +from_moddir="debian/$from_pkg/lib/modules/$ABI_RELEASE-$FROM" +to_moddir="debian/$to_pkg/lib/modules/$ABI_RELEASE-$FROM" + +install -d "debian/$to_pkg/boot" +install -m644 debian/$from_pkg/boot/config-$ABI_RELEASE-$FROM \ + debian/$to_pkg/boot/ +install -m600 debian/$from_pkg/boot/{vmlinuz,System.map}-$ABI_RELEASE-$FROM \ + debian/$to_pkg/boot/ + +# +# Print some warnings if there are files in the sub-flavours list +# that do not actually exist. +# +cat ${DEBIAN}/sub-flavours/$TO.list | while read line +do +( + cd debian/$from_pkg/lib/modules/$ABI_RELEASE-$FROM/kernel; + # + # If its a wildcard, then check that there are files that match. + # + if echo "$line" | grep '\*' > /dev/null + then + if [ `eval find "$line" -name '*.ko' 2>/dev/null|wc -l` -lt 1 ] + then + echo SUB_INST Warning - No files in $line + fi + # + # Else it should be a single file reference. + # + elif [ ! -f "$line" ] + then + echo SUB_INST Warning - could not find "$line" + fi +) +done + +cat ${DEBIAN}/sub-flavours/$TO.list | while read line; do + ( + cd debian/$from_pkg/lib/modules/$ABI_RELEASE-$FROM/kernel; + if echo "$line" | grep '\*' > /dev/null + then + eval find "$line" -name '*.ko' 2>/dev/null || true + elif [ -f "$line" ] + then + echo "$line" + fi + ); +done | while read mod; do + echo "SUB_INST checking: $mod" + fromdir="/lib/modules/$ABI_RELEASE-$FROM/" + egrep "^($fromdir)?kernel/$mod:" \ + $from_moddir/modules.dep | sed -e "s|^$fromdir||" -e 's/://' -e 's/ /\n/g' | \ + while read m; do + m="${fromdir}$m" + test -f debian/$to_pkg/$m && continue + echo "SUB_INST installing: $m" + install -D -m644 debian/$from_pkg/$m \ + debian/$to_pkg/$m + done +done --- linux-3.13.0.orig/debian/source/format +++ linux-3.13.0/debian/source/format @@ -0,0 +1 @@ +1.0 --- linux-3.13.0.orig/debian/stamps/keep-dir +++ linux-3.13.0/debian/stamps/keep-dir @@ -0,0 +1 @@ +Place holder --- linux-3.13.0.orig/debian/tests-build/README +++ linux-3.13.0/debian/tests-build/README @@ -0,0 +1,21 @@ +Scripts placed in this directory get called one at a time by run-parts(8). +The scripts are expected to perform some sort of sanity checks on the +finished build. Scripts will be called once for each flavour. + +Some environment variables are exported to make life a little easier: + +DPKG_ARCH : The dpkg architecture (e.g. "amd64") +KERN_ARCH : The kernel architecture (e.g. "x86_64") +FLAVOUR : The specific flavour for this run (e.g. "generic") +VERSION : The full version of this build (e.g. 2.6.22-1) +REVISION : The exact revision of this build (e.g. 1.3) +PREV_REVISION : The revision prior to this one +ABI_NUM : The specific ABI number for this build (e.g. 2) +PREV_ABI_NUM : The previous ABI number. Can be the same as ABI_NUM. +BUILD_DIR : The directory where this build took place +INSTALL_DIR : The directory where the package is prepared +SOURCE_DIR : Where the main kernel source is + +Scripts are expected to have a zero exit status when no problems occur, +and non-zero when an error occurs that should stop the build. Scripts +should print whatever info they deem needed to deduce the problem. --- linux-3.13.0.orig/debian/tests-build/check-aliases +++ linux-3.13.0/debian/tests-build/check-aliases @@ -0,0 +1,24 @@ +#!/usr/bin/perl -w + +my %map; + +print "Checking for dupe aliases in $ENV{'FLAVOUR'}...\n"; + +$aliases = + "$ENV{'INSTALL_DIR'}/lib/modules/$ENV{'VERSION'}-$ENV{'FLAVOUR'}/modules.alias"; + +open(ALIASES, "< $aliases") or die "Could not open $aliases"; + +while () { + chomp; + my ($junk, $alias, $module) = split; + + if (defined($map{$alias})) { + printf("%s %20s / %-20s : %s \n", ("$map{$alias}" eq "$module") + ? "INT" : " ", $map{$alias}, $module, $alias); + } else { + $map{$alias} = $module; + } +} + +exit(0); --- linux-3.13.0.orig/debian/tests/control +++ linux-3.13.0/debian/tests/control @@ -0,0 +1,3 @@ +Tests: rebuild +Depends: build-essential +Restrictions: build-needed --- linux-3.13.0.orig/debian/tests/rebuild +++ linux-3.13.0/debian/tests/rebuild @@ -0,0 +1 @@ +#!/bin/true --- linux-3.13.0.orig/debian/tools/generic +++ linux-3.13.0/debian/tools/generic @@ -0,0 +1,60 @@ +#!/bin/bash +full_version=`uname -r` + +# First check for a fully qualified version. +this="/usr/lib/linux-tools/$full_version/`basename $0`" +if [ -f "$this" ]; then + exec "$this" "$@" +fi + +# Removing flavour from version i.e. generic or server. +flavour_abi=${full_version#*-} +flavour=${flavour_abi#*-} +version=${full_version%-$flavour} +this="$0_$version" +if [ -f "$this" ]; then + exec "$this" "$@" +fi + +# Before saucy kernels we had no flavour linkage. +if dpkg --compare-versions "$version" lt "3.11.0"; then + flavour='' +else + flavour="-$flavour" +fi +# Hint at the cloud tools if they exist (trusty and later) +if dpkg --compare-versions "$version" ge "3.13.0"; then + cld="" +else + cld=":" +fi +# Work out if this is an LTS backport or not. +codename=`lsb_release -cs` +case "$codename" in +precise) base='3.2.0-9999' ;; +trusty) base='3.13.0-9999' ;; +*) base='' ;; +esac +std="" +lts=":" +if [ "$base" != "" ]; then + if dpkg --compare-versions "$version" gt "$base"; then + std=":" + lts="" + fi +fi + +# Give them a hint as to what to install. + echo "WARNING: `basename $0` not found for kernel $version" >&2 + echo "" >&2 + echo " You may need to install the following packages for this specific kernel:" >&2 + echo " linux-tools-$version$flavour" >&2 +$cld echo " linux-cloud-tools-$version$flavour" >&2 + echo "" >&2 + echo " You may also want to install one of the following packages to keep up to date:" >&2 +$std echo " linux-tools$flavour" >&2 +$std $cld echo " linux-cloud-tools$flavour" >&2 +$lts echo " linux-tools$flavour-lts-" >&2 +$lts $cld echo " linux-cloud-tools$flavour-lts-" >&2 + +exit 2 --- linux-3.13.0.orig/drivers/Kconfig +++ linux-3.13.0/drivers/Kconfig @@ -170,4 +170,6 @@ source "drivers/powercap/Kconfig" +source "drivers/net/dpa/NetCommSw/Kconfig" + endmenu --- linux-3.13.0.orig/drivers/acpi/acpica/nsrepair.c +++ linux-3.13.0/drivers/acpi/acpica/nsrepair.c @@ -207,13 +207,30 @@ * this predefined name. Either one return value is expected, or none, * for both methods and other objects. * - * Exit now if there is no return object. Warning if one was expected. + * Try to fix if there was no return object. Warning if failed to fix. */ if (!return_object) { if (expected_btypes && (!(expected_btypes & ACPI_RTYPE_NONE))) { - ACPI_WARN_PREDEFINED((AE_INFO, info->full_pathname, - ACPI_WARN_ALWAYS, - "Missing expected return value")); + if (package_index != ACPI_NOT_PACKAGE_ELEMENT) { + ACPI_WARN_PREDEFINED((AE_INFO, + info->full_pathname, + ACPI_WARN_ALWAYS, + "Found unexpected NULL package element")); + + status = + acpi_ns_repair_null_element(info, + expected_btypes, + package_index, + return_object_ptr); + if (ACPI_SUCCESS(status)) { + return (AE_OK); /* Repair was successful */ + } + } else { + ACPI_WARN_PREDEFINED((AE_INFO, + info->full_pathname, + ACPI_WARN_ALWAYS, + "Missing expected return value")); + } return (AE_AML_NO_RETURN_VALUE); } --- linux-3.13.0.orig/drivers/acpi/blacklist.c +++ linux-3.13.0/drivers/acpi/blacklist.c @@ -261,14 +261,6 @@ }, { .callback = dmi_disable_osi_win8, - .ident = "Dell Inspiron 15R SE", - .matches = { - DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), - DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 7520"), - }, - }, - { - .callback = dmi_disable_osi_win8, .ident = "ThinkPad Edge E530", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), @@ -323,6 +315,93 @@ DMI_MATCH(DMI_PRODUCT_VERSION, "2349D15"), }, }, + { + .callback = dmi_disable_osi_win8, + .ident = "Dell Inspiron 7737", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 7737"), + }, + }, + + /* + * The following Lenovo models have a broken workaround in the + * acpi_video backlight implementation to meet the Windows 8 + * requirement of 101 backlight levels. Reverting to pre-Win8 + * behavior fixes the problem. + */ + { + .callback = dmi_disable_osi_win8, + .ident = "Lenovo ThinkPad L430", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad L430"), + }, + }, + { + .callback = dmi_disable_osi_win8, + .ident = "Lenovo ThinkPad T430", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T430"), + }, + }, + { + .callback = dmi_disable_osi_win8, + .ident = "Lenovo ThinkPad T430s", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T430s"), + }, + }, + { + .callback = dmi_disable_osi_win8, + .ident = "Lenovo ThinkPad T530", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T530"), + }, + }, + { + .callback = dmi_disable_osi_win8, + .ident = "Lenovo ThinkPad W530", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad W530"), + }, + }, + { + .callback = dmi_disable_osi_win8, + .ident = "Lenovo ThinkPad X1 Carbon", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad X1 Carbon"), + }, + }, + { + .callback = dmi_disable_osi_win8, + .ident = "Lenovo ThinkPad X230", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad X230"), + }, + }, + { + .callback = dmi_disable_osi_win8, + .ident = "Lenovo ThinkPad Edge E330", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad Edge E330"), + }, + }, + { + .callback = dmi_disable_osi_win8, + .ident = "Dell Inspiron 5537", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "Inspiron 5537"), + }, + }, /* * BIOS invocation of _OSI(Linux) is almost always a BIOS bug. --- linux-3.13.0.orig/drivers/acpi/bus.c +++ linux-3.13.0/drivers/acpi/bus.c @@ -33,6 +33,7 @@ #include #include #include +#include #ifdef CONFIG_X86 #include #endif @@ -576,6 +577,14 @@ goto error0; } + /* + * If the system is using ACPI then we can be reasonably + * confident that any regulators are managed by the firmware + * so tell the regulator core it has everything it needs to + * know. + */ + regulator_has_full_constraints(); + return; error0: --- linux-3.13.0.orig/drivers/acpi/button.c +++ linux-3.13.0/drivers/acpi/button.c @@ -302,6 +302,10 @@ input_sync(input); pm_wakeup_event(&device->dev, 0); + acpi_bus_generate_netlink_event( + device->pnp.device_class, + dev_name(&device->dev), + event, ++button->pushed); } break; default: --- linux-3.13.0.orig/drivers/acpi/ec.c +++ linux-3.13.0/drivers/acpi/ec.c @@ -68,6 +68,8 @@ #define ACPI_EC_DELAY 500 /* Wait 500ms max. during EC ops */ #define ACPI_EC_UDELAY_GLK 1000 /* Wait 1ms max. to get global lock */ #define ACPI_EC_MSI_UDELAY 550 /* Wait 550us for MSI EC */ +#define ACPI_EC_CLEAR_MAX 100 /* Maximum number of events to query + * when trying to clear the EC */ enum { EC_FLAGS_QUERY_PENDING, /* Query is pending */ @@ -121,6 +123,7 @@ static int EC_FLAGS_MSI; /* Out-of-spec MSI controller */ static int EC_FLAGS_VALIDATE_ECDT; /* ASUStec ECDTs need to be validated */ static int EC_FLAGS_SKIP_DSDT_SCAN; /* Not all BIOS survive early DSDT scan */ +static int EC_FLAGS_CLEAR_ON_RESUME; /* Needs acpi_ec_clear() on boot/resume */ /* -------------------------------------------------------------------------- Transaction Management @@ -466,6 +469,29 @@ EXPORT_SYMBOL(ec_get_handle); +static int acpi_ec_query_unlocked(struct acpi_ec *ec, u8 *data); + +/* + * Clears stale _Q events that might have accumulated in the EC. + * Run with locked ec mutex. + */ +static void acpi_ec_clear(struct acpi_ec *ec) +{ + int i, status; + u8 value = 0; + + for (i = 0; i < ACPI_EC_CLEAR_MAX; i++) { + status = acpi_ec_query_unlocked(ec, &value); + if (status || !value) + break; + } + + if (unlikely(i == ACPI_EC_CLEAR_MAX)) + pr_warn("Warning: Maximum of %d stale EC events cleared\n", i); + else + pr_info("%d stale EC events cleared\n", i); +} + void acpi_ec_block_transactions(void) { struct acpi_ec *ec = first_ec; @@ -489,6 +515,10 @@ mutex_lock(&ec->mutex); /* Allow transactions to be carried out again */ clear_bit(EC_FLAGS_BLOCKED, &ec->flags); + + if (EC_FLAGS_CLEAR_ON_RESUME) + acpi_ec_clear(ec); + mutex_unlock(&ec->mutex); } @@ -847,6 +877,13 @@ /* EC is fully operational, allow queries */ clear_bit(EC_FLAGS_QUERY_PENDING, &ec->flags); + + /* Clear stale _Q events if hardware might require that */ + if (EC_FLAGS_CLEAR_ON_RESUME) { + mutex_lock(&ec->mutex); + acpi_ec_clear(ec); + mutex_unlock(&ec->mutex); + } return ret; } @@ -948,6 +985,30 @@ return 0; } +/* + * On some hardware it is necessary to clear events accumulated by the EC during + * sleep. These ECs stop reporting GPEs until they are manually polled, if too + * many events are accumulated. (e.g. Samsung Series 5/9 notebooks) + * + * https://bugzilla.kernel.org/show_bug.cgi?id=44161 + * + * Ideally, the EC should also be instructed NOT to accumulate events during + * sleep (which Windows seems to do somehow), but the interface to control this + * behaviour is not known at this time. + * + * Models known to be affected are Samsung 530Uxx/535Uxx/540Uxx/550Pxx/900Xxx, + * however it is very likely that other Samsung models are affected. + * + * On systems which don't accumulate _Q events during sleep, this extra check + * should be harmless. + */ +static int ec_clear_on_resume(const struct dmi_system_id *id) +{ + pr_debug("Detected system needing EC poll on resume.\n"); + EC_FLAGS_CLEAR_ON_RESUME = 1; + return 0; +} + static struct dmi_system_id ec_dmi_table[] __initdata = { { ec_skip_dsdt_scan, "Compal JFL92", { @@ -991,6 +1052,9 @@ ec_validate_ecdt, "ASUS hardware", { DMI_MATCH(DMI_SYS_VENDOR, "ASUSTek Computer Inc."), DMI_MATCH(DMI_PRODUCT_NAME, "L4R"),}, NULL}, + { + ec_clear_on_resume, "Samsung hardware", { + DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD.")}, NULL}, {}, }; --- linux-3.13.0.orig/drivers/acpi/pci_irq.c +++ linux-3.13.0/drivers/acpi/pci_irq.c @@ -432,6 +432,7 @@ pin_name(pin)); } + kfree(entry); return 0; } --- linux-3.13.0.orig/drivers/acpi/processor_throttling.c +++ linux-3.13.0/drivers/acpi/processor_throttling.c @@ -59,6 +59,12 @@ int target_state; /* target T-state */ }; +struct acpi_processor_throttling_arg { + struct acpi_processor *pr; + int target_state; + bool force; +}; + #define THROTTLING_PRECHANGE (1) #define THROTTLING_POSTCHANGE (2) @@ -1063,16 +1069,24 @@ return 0; } +static long acpi_processor_throttling_fn(void *data) +{ + struct acpi_processor_throttling_arg *arg = data; + struct acpi_processor *pr = arg->pr; + + return pr->throttling.acpi_processor_set_throttling(pr, + arg->target_state, arg->force); +} + int acpi_processor_set_throttling(struct acpi_processor *pr, int state, bool force) { - cpumask_var_t saved_mask; int ret = 0; unsigned int i; struct acpi_processor *match_pr; struct acpi_processor_throttling *p_throttling; + struct acpi_processor_throttling_arg arg; struct throttling_tstate t_state; - cpumask_var_t online_throttling_cpus; if (!pr) return -EINVAL; @@ -1083,14 +1097,6 @@ if ((state < 0) || (state > (pr->throttling.state_count - 1))) return -EINVAL; - if (!alloc_cpumask_var(&saved_mask, GFP_KERNEL)) - return -ENOMEM; - - if (!alloc_cpumask_var(&online_throttling_cpus, GFP_KERNEL)) { - free_cpumask_var(saved_mask); - return -ENOMEM; - } - if (cpu_is_offline(pr->id)) { /* * the cpu pointed by pr->id is offline. Unnecessary to change @@ -1099,17 +1105,15 @@ return -ENODEV; } - cpumask_copy(saved_mask, ¤t->cpus_allowed); t_state.target_state = state; p_throttling = &(pr->throttling); - cpumask_and(online_throttling_cpus, cpu_online_mask, - p_throttling->shared_cpu_map); + /* * The throttling notifier will be called for every * affected cpu in order to get one proper T-state. * The notifier event is THROTTLING_PRECHANGE. */ - for_each_cpu(i, online_throttling_cpus) { + for_each_cpu_and(i, cpu_online_mask, p_throttling->shared_cpu_map) { t_state.cpu = i; acpi_processor_throttling_notifier(THROTTLING_PRECHANGE, &t_state); @@ -1121,21 +1125,18 @@ * it can be called only for the cpu pointed by pr. */ if (p_throttling->shared_type == DOMAIN_COORD_TYPE_SW_ANY) { - /* FIXME: use work_on_cpu() */ - if (set_cpus_allowed_ptr(current, cpumask_of(pr->id))) { - /* Can't migrate to the pr->id CPU. Exit */ - ret = -ENODEV; - goto exit; - } - ret = p_throttling->acpi_processor_set_throttling(pr, - t_state.target_state, force); + arg.pr = pr; + arg.target_state = state; + arg.force = force; + ret = work_on_cpu(pr->id, acpi_processor_throttling_fn, &arg); } else { /* * When the T-state coordination is SW_ALL or HW_ALL, * it is necessary to set T-state for every affected * cpus. */ - for_each_cpu(i, online_throttling_cpus) { + for_each_cpu_and(i, cpu_online_mask, + p_throttling->shared_cpu_map) { match_pr = per_cpu(processors, i); /* * If the pointer is invalid, we will report the @@ -1156,13 +1157,12 @@ "on CPU %d\n", i)); continue; } - t_state.cpu = i; - /* FIXME: use work_on_cpu() */ - if (set_cpus_allowed_ptr(current, cpumask_of(i))) - continue; - ret = match_pr->throttling. - acpi_processor_set_throttling( - match_pr, t_state.target_state, force); + + arg.pr = match_pr; + arg.target_state = state; + arg.force = force; + ret = work_on_cpu(pr->id, acpi_processor_throttling_fn, + &arg); } } /* @@ -1171,17 +1171,12 @@ * affected cpu to update the T-states. * The notifier event is THROTTLING_POSTCHANGE */ - for_each_cpu(i, online_throttling_cpus) { + for_each_cpu_and(i, cpu_online_mask, p_throttling->shared_cpu_map) { t_state.cpu = i; acpi_processor_throttling_notifier(THROTTLING_POSTCHANGE, &t_state); } - /* restore the previous state */ - /* FIXME: use work_on_cpu() */ - set_cpus_allowed_ptr(current, saved_mask); -exit: - free_cpumask_var(online_throttling_cpus); - free_cpumask_var(saved_mask); + return ret; } --- linux-3.13.0.orig/drivers/acpi/resource.c +++ linux-3.13.0/drivers/acpi/resource.c @@ -77,18 +77,24 @@ switch (ares->type) { case ACPI_RESOURCE_TYPE_MEMORY24: memory24 = &ares->data.memory24; + if (!memory24->address_length) + return false; acpi_dev_get_memresource(res, memory24->minimum, memory24->address_length, memory24->write_protect); break; case ACPI_RESOURCE_TYPE_MEMORY32: memory32 = &ares->data.memory32; + if (!memory32->address_length) + return false; acpi_dev_get_memresource(res, memory32->minimum, memory32->address_length, memory32->write_protect); break; case ACPI_RESOURCE_TYPE_FIXED_MEMORY32: fixed_memory32 = &ares->data.fixed_memory32; + if (!fixed_memory32->address_length) + return false; acpi_dev_get_memresource(res, fixed_memory32->address, fixed_memory32->address_length, fixed_memory32->write_protect); @@ -144,12 +150,16 @@ switch (ares->type) { case ACPI_RESOURCE_TYPE_IO: io = &ares->data.io; + if (!io->address_length) + return false; acpi_dev_get_ioresource(res, io->minimum, io->address_length, io->io_decode); break; case ACPI_RESOURCE_TYPE_FIXED_IO: fixed_io = &ares->data.fixed_io; + if (!fixed_io->address_length) + return false; acpi_dev_get_ioresource(res, fixed_io->address, fixed_io->address_length, ACPI_DECODE_10); --- linux-3.13.0.orig/drivers/acpi/sleep.c +++ linux-3.13.0/drivers/acpi/sleep.c @@ -75,6 +75,17 @@ return 0; } +static bool acpi_sleep_state_supported(u8 sleep_state) +{ + acpi_status status; + u8 type_a, type_b; + + status = acpi_get_sleep_type_data(sleep_state, &type_a, &type_b); + return ACPI_SUCCESS(status) && (!acpi_gbl_reduced_hardware + || (acpi_gbl_FADT.sleep_control.address + && acpi_gbl_FADT.sleep_status.address)); +} + #ifdef CONFIG_ACPI_SLEEP static u32 acpi_target_sleep_state = ACPI_STATE_S0; @@ -608,15 +619,9 @@ { int i; - for (i = ACPI_STATE_S1; i < ACPI_STATE_S4; i++) { - acpi_status status; - u8 type_a, type_b; - - status = acpi_get_sleep_type_data(i, &type_a, &type_b); - if (ACPI_SUCCESS(status)) { + for (i = ACPI_STATE_S1; i < ACPI_STATE_S4; i++) + if (acpi_sleep_state_supported(i)) sleep_states[i] = 1; - } - } suspend_set_ops(old_suspend_ordering ? &acpi_suspend_ops_old : &acpi_suspend_ops); @@ -747,11 +752,7 @@ static void acpi_sleep_hibernate_setup(void) { - acpi_status status; - u8 type_a, type_b; - - status = acpi_get_sleep_type_data(ACPI_STATE_S4, &type_a, &type_b); - if (ACPI_FAILURE(status)) + if (!acpi_sleep_state_supported(ACPI_STATE_S4)) return; hibernation_set_ops(old_suspend_ordering ? @@ -800,8 +801,6 @@ int __init acpi_sleep_init(void) { - acpi_status status; - u8 type_a, type_b; char supported[ACPI_S_STATE_COUNT * 3 + 1]; char *pos = supported; int i; @@ -816,8 +815,7 @@ acpi_sleep_suspend_setup(); acpi_sleep_hibernate_setup(); - status = acpi_get_sleep_type_data(ACPI_STATE_S5, &type_a, &type_b); - if (ACPI_SUCCESS(status)) { + if (acpi_sleep_state_supported(ACPI_STATE_S5)) { sleep_states[ACPI_STATE_S5] = 1; pm_power_off_prepare = acpi_power_off_prepare; pm_power_off = acpi_power_off; --- linux-3.13.0.orig/drivers/acpi/video.c +++ linux-3.13.0/drivers/acpi/video.c @@ -82,11 +82,12 @@ module_param(allow_duplicates, bool, 0644); /* - * For Windows 8 systems: if set ture and the GPU driver has - * registered a backlight interface, skip registering ACPI video's. + * For Windows 8 systems: used to decide if video module + * should skip registering backlight interface of its own. */ -static bool use_native_backlight = false; -module_param(use_native_backlight, bool, 0644); +static int use_native_backlight_param = -1; +module_param_named(use_native_backlight, use_native_backlight_param, int, 0444); +static bool use_native_backlight_dmi = false; static int register_count; static struct mutex video_list_lock; @@ -232,9 +233,17 @@ static int acpi_video_switch_brightness(struct acpi_video_device *device, int event); +static bool acpi_video_use_native_backlight(void) +{ + if (use_native_backlight_param != -1) + return use_native_backlight_param; + else + return use_native_backlight_dmi; +} + static bool acpi_video_verify_backlight_support(void) { - if (acpi_osi_is_win8() && use_native_backlight && + if (acpi_osi_is_win8() && acpi_video_use_native_backlight() && backlight_device_registered(BACKLIGHT_RAW)) return false; return acpi_video_backlight_support(); @@ -399,6 +408,12 @@ return 0; } +static int __init video_set_use_native_backlight(const struct dmi_system_id *d) +{ + use_native_backlight_dmi = true; + return 0; +} + static struct dmi_system_id video_dmi_table[] __initdata = { /* * Broken _BQC workaround http://bugzilla.kernel.org/show_bug.cgi?id=13121 @@ -443,6 +458,120 @@ DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 7720"), }, }, + { + .callback = video_set_use_native_backlight, + .ident = "ThinkPad T430s", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T430s"), + }, + }, + { + .callback = video_set_use_native_backlight, + .ident = "ThinkPad X230", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad X230"), + }, + }, + { + .callback = video_set_use_native_backlight, + .ident = "ThinkPad X1 Carbon", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad X1 Carbon"), + }, + }, + { + .callback = video_set_use_native_backlight, + .ident = "Lenovo Yoga 13", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "Lenovo IdeaPad Yoga 13"), + }, + }, + { + .callback = video_set_use_native_backlight, + .ident = "Dell Inspiron 7520", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_VERSION, "Inspiron 7520"), + }, + }, + { + .callback = video_set_use_native_backlight, + .ident = "Acer Aspire 5733Z", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Acer"), + DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 5733Z"), + }, + }, + { + .callback = video_set_use_native_backlight, + .ident = "Acer Aspire V5-431", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Acer"), + DMI_MATCH(DMI_PRODUCT_NAME, "Aspire V5-431"), + }, + }, + { + .callback = video_set_use_native_backlight, + .ident = "HP ProBook 4340s", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"), + DMI_MATCH(DMI_PRODUCT_VERSION, "HP ProBook 4340s"), + }, + }, + { + .callback = video_set_use_native_backlight, + .ident = "HP ProBook 2013 models", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"), + DMI_MATCH(DMI_PRODUCT_NAME, "HP ProBook "), + DMI_MATCH(DMI_PRODUCT_NAME, " G1"), + }, + }, + { + .callback = video_set_use_native_backlight, + .ident = "HP EliteBook 2013 models", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"), + DMI_MATCH(DMI_PRODUCT_NAME, "HP EliteBook "), + DMI_MATCH(DMI_PRODUCT_NAME, " G1"), + }, + }, + { + .callback = video_set_use_native_backlight, + .ident = "HP ZBook 14", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"), + DMI_MATCH(DMI_PRODUCT_NAME, "HP ZBook 14"), + }, + }, + { + .callback = video_set_use_native_backlight, + .ident = "HP ZBook 15", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"), + DMI_MATCH(DMI_PRODUCT_NAME, "HP ZBook 15"), + }, + }, + { + .callback = video_set_use_native_backlight, + .ident = "HP ZBook 17", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"), + DMI_MATCH(DMI_PRODUCT_NAME, "HP ZBook 17"), + }, + }, + { + .callback = video_set_use_native_backlight, + .ident = "HP EliteBook 8780w", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"), + DMI_MATCH(DMI_PRODUCT_NAME, "HP EliteBook 8780w"), + }, + }, {} }; @@ -686,6 +815,7 @@ union acpi_object *o; struct acpi_video_device_brightness *br = NULL; int result = -EINVAL; + u32 value; if (!ACPI_SUCCESS(acpi_video_device_lcd_query_levels(device, &obj))) { ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Could not query available " @@ -716,7 +846,12 @@ printk(KERN_ERR PREFIX "Invalid data\n"); continue; } - br->levels[count] = (u32) o->integer.value; + value = (u32) o->integer.value; + /* Skip duplicate entries */ + if (count > 2 && br->levels[count - 1] == value) + continue; + + br->levels[count] = value; if (br->levels[count] > max_level) max_level = br->levels[count]; --- linux-3.13.0.orig/drivers/ata/Kconfig +++ linux-3.13.0/drivers/ata/Kconfig @@ -106,6 +106,13 @@ If unsure, say N. +config AHCI_XGENE + tristate "APM X-Gene 6.0Gbps AHCI SATA host controller support" + depends on SATA_AHCI_PLATFORM && (ARM64 || COMPILE_TEST) + select PHY_XGENE + help + This option enables support for APM X-Gene SoC SATA host controller. + config SATA_FSL tristate "Freescale 3.0Gbps SATA support" depends on FSL_SOC --- linux-3.13.0.orig/drivers/ata/Makefile +++ linux-3.13.0/drivers/ata/Makefile @@ -11,6 +11,7 @@ obj-$(CONFIG_SATA_DWC) += sata_dwc_460ex.o obj-$(CONFIG_SATA_HIGHBANK) += sata_highbank.o libahci.o obj-$(CONFIG_AHCI_IMX) += ahci_imx.o +obj-$(CONFIG_AHCI_XGENE) += ahci_xgene.o # SFF w/ custom DMA obj-$(CONFIG_PDC_ADMA) += pdc_adma.o --- linux-3.13.0.orig/drivers/ata/ahci.c +++ linux-3.13.0/drivers/ata/ahci.c @@ -61,6 +61,7 @@ /* board IDs by feature in alphabetical order */ board_ahci, board_ahci_ign_iferr, + board_ahci_noncq, board_ahci_nosntf, board_ahci_yes_fbs, @@ -119,6 +120,13 @@ .udma_mask = ATA_UDMA6, .port_ops = &ahci_ops, }, + [board_ahci_noncq] = { + AHCI_HFLAGS (AHCI_HFLAG_NO_NCQ), + .flags = AHCI_FLAG_COMMON, + .pio_mask = ATA_PIO4, + .udma_mask = ATA_UDMA6, + .port_ops = &ahci_ops, + }, [board_ahci_nosntf] = { AHCI_HFLAGS (AHCI_HFLAG_NO_SNTF), .flags = AHCI_FLAG_COMMON, @@ -450,6 +458,12 @@ { PCI_VDEVICE(ASMEDIA, 0x0611), board_ahci }, /* ASM1061 */ { PCI_VDEVICE(ASMEDIA, 0x0612), board_ahci }, /* ASM1062 */ + /* + * Samsung SSDs found on some macbooks. NCQ times out. + * https://bugzilla.kernel.org/show_bug.cgi?id=60731 + */ + { PCI_VDEVICE(SAMSUNG, 0x1600), board_ahci_noncq }, + /* Enmotus */ { PCI_DEVICE(0x1c44, 0x8000), board_ahci }, @@ -562,6 +576,7 @@ unsigned long deadline) { struct ata_port *ap = link->ap; + struct ahci_host_priv *hpriv = ap->host->private_data; bool online; int rc; @@ -572,7 +587,7 @@ rc = sata_link_hardreset(link, sata_ehc_deb_timing(&link->eh_context), deadline, &online, NULL); - ahci_start_engine(ap); + hpriv->start_engine(ap); DPRINTK("EXIT, rc=%d, class=%u\n", rc, *class); @@ -587,6 +602,7 @@ { struct ata_port *ap = link->ap; struct ahci_port_priv *pp = ap->private_data; + struct ahci_host_priv *hpriv = ap->host->private_data; u8 *d2h_fis = pp->rx_fis + RX_FIS_D2H_REG; struct ata_taskfile tf; bool online; @@ -602,7 +618,7 @@ rc = sata_link_hardreset(link, sata_ehc_deb_timing(&link->eh_context), deadline, &online, NULL); - ahci_start_engine(ap); + hpriv->start_engine(ap); /* The pseudo configuration device on SIMG4726 attached to * ASUS P5W-DH Deluxe doesn't send signature FIS after --- linux-3.13.0.orig/drivers/ata/ahci.h +++ linux-3.13.0/drivers/ata/ahci.h @@ -37,6 +37,8 @@ #include #include +#include +#include /* Enclosure Management Control */ #define EM_CTRL_MSG_TYPE 0x000f0000 @@ -51,6 +53,7 @@ enum { AHCI_MAX_PORTS = 32, + AHCI_MAX_CLKS = 3, AHCI_MAX_SG = 168, /* hardware max is 64K */ AHCI_DMA_BOUNDARY = 0xffffffff, AHCI_MAX_CMDS = 32, @@ -321,8 +324,17 @@ u32 em_loc; /* enclosure management location */ u32 em_buf_sz; /* EM buffer size in byte */ u32 em_msg_type; /* EM message type */ - struct clk *clk; /* Only for platforms supporting clk */ + bool got_runtime_pm; /* Did we do pm_runtime_get? */ + struct clk *clks[AHCI_MAX_CLKS]; /* Optional */ + struct regulator *target_pwr; /* Optional */ + struct phy *phy; /* If platform uses phy */ void *plat_data; /* Other platform data */ + /* + * Optional ahci_start_engine override, if not set this gets set to the + * default ahci_start_engine during ahci_save_initial_config, this can + * be overridden anytime before the host is activated. + */ + void (*start_engine)(struct ata_port *ap); }; extern int ahci_ignore_sss; --- linux-3.13.0.orig/drivers/ata/ahci_platform.c +++ linux-3.13.0/drivers/ata/ahci_platform.c @@ -23,6 +23,8 @@ #include #include #include +#include +#include #include "ahci.h" static void ahci_host_stop(struct ata_host *host); @@ -87,78 +89,284 @@ AHCI_SHT("ahci_platform"), }; -static int ahci_probe(struct platform_device *pdev) +/** + * ahci_platform_enable_clks - Enable platform clocks + * @hpriv: host private area to store config values + * + * This function enables all the clks found in hpriv->clks, starting at + * index 0. If any clk fails to enable it disables all the clks already + * enabled in reverse order, and then returns an error. + * + * RETURNS: + * 0 on success otherwise a negative error code + */ +int ahci_platform_enable_clks(struct ahci_host_priv *hpriv) +{ + int c, rc; + + for (c = 0; c < AHCI_MAX_CLKS && hpriv->clks[c]; c++) { + rc = clk_prepare_enable(hpriv->clks[c]); + if (rc) + goto disable_unprepare_clk; + } + return 0; + +disable_unprepare_clk: + while (--c >= 0) + clk_disable_unprepare(hpriv->clks[c]); + return rc; +} +EXPORT_SYMBOL_GPL(ahci_platform_enable_clks); + +/** + * ahci_platform_disable_clks - Disable platform clocks + * @hpriv: host private area to store config values + * + * This function disables all the clks found in hpriv->clks, in reverse + * order of ahci_platform_enable_clks (starting at the end of the array). + */ +void ahci_platform_disable_clks(struct ahci_host_priv *hpriv) +{ + int c; + + for (c = AHCI_MAX_CLKS - 1; c >= 0; c--) + if (hpriv->clks[c]) + clk_disable_unprepare(hpriv->clks[c]); +} +EXPORT_SYMBOL_GPL(ahci_platform_disable_clks); + +/** + * ahci_platform_enable_resources - Enable platform resources + * @hpriv: host private area to store config values + * + * This function enables all ahci_platform managed resources in the + * following order: + * 1) Regulator + * 2) Clocks (through ahci_platform_enable_clks) + * 3) Phy + * + * If resource enabling fails at any point the previous enabled resources + * are disabled in reverse order. + * + * RETURNS: + * 0 on success otherwise a negative error code + */ +int ahci_platform_enable_resources(struct ahci_host_priv *hpriv) { - struct device *dev = &pdev->dev; - struct ahci_platform_data *pdata = dev_get_platdata(dev); - const struct platform_device_id *id = platform_get_device_id(pdev); - struct ata_port_info pi = ahci_port_info[id ? id->driver_data : 0]; - const struct ata_port_info *ppi[] = { &pi, NULL }; - struct ahci_host_priv *hpriv; - struct ata_host *host; - struct resource *mem; - int irq; - int n_ports; - int i; int rc; - mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); - if (!mem) { - dev_err(dev, "no mmio space\n"); - return -EINVAL; + if (hpriv->target_pwr) { + rc = regulator_enable(hpriv->target_pwr); + if (rc) + return rc; } - irq = platform_get_irq(pdev, 0); - if (irq <= 0) { - dev_err(dev, "no irq\n"); - return -EINVAL; + rc = ahci_platform_enable_clks(hpriv); + if (rc) + goto disable_regulator; + + if (hpriv->phy) { + rc = phy_init(hpriv->phy); + if (rc) + goto disable_clks; + + rc = phy_power_on(hpriv->phy); + if (rc) { + phy_exit(hpriv->phy); + goto disable_clks; + } } - if (pdata && pdata->ata_port_info) - pi = *pdata->ata_port_info; + return 0; - hpriv = devm_kzalloc(dev, sizeof(*hpriv), GFP_KERNEL); - if (!hpriv) { - dev_err(dev, "can't alloc ahci_host_priv\n"); - return -ENOMEM; +disable_clks: + ahci_platform_disable_clks(hpriv); + +disable_regulator: + if (hpriv->target_pwr) + regulator_disable(hpriv->target_pwr); + return rc; +} +EXPORT_SYMBOL_GPL(ahci_platform_enable_resources); + +/** + * ahci_platform_disable_resources - Disable platform resources + * @hpriv: host private area to store config values + * + * This function disables all ahci_platform managed resources in the + * following order: + * 1) Phy + * 2) Clocks (through ahci_platform_disable_clks) + * 3) Regulator + */ +void ahci_platform_disable_resources(struct ahci_host_priv *hpriv) +{ + if (hpriv->phy) { + phy_power_off(hpriv->phy); + phy_exit(hpriv->phy); } - hpriv->flags |= (unsigned long)pi.private_data; + ahci_platform_disable_clks(hpriv); + + if (hpriv->target_pwr) + regulator_disable(hpriv->target_pwr); +} +EXPORT_SYMBOL_GPL(ahci_platform_disable_resources); + +static void ahci_platform_put_resources(struct device *dev, void *res) +{ + struct ahci_host_priv *hpriv = res; + int c; + + if (hpriv->got_runtime_pm) { + pm_runtime_put_sync(dev); + pm_runtime_disable(dev); + } + + for (c = 0; c < AHCI_MAX_CLKS && hpriv->clks[c]; c++) + clk_put(hpriv->clks[c]); +} - hpriv->mmio = devm_ioremap(dev, mem->start, resource_size(mem)); +/** + * ahci_platform_get_resources - Get platform resources + * @pdev: platform device to get resources for + * + * This function allocates an ahci_host_priv struct, and gets the following + * resources, storing a reference to them inside the returned struct: + * + * 1) mmio registers (IORESOURCE_MEM 0, mandatory) + * 2) regulator for controlling the targets power (optional) + * 3) 0 - AHCI_MAX_CLKS clocks, as specified in the devs devicetree node, + * or for non devicetree enabled platforms a single clock + * 4) phy (optional) + * + * RETURNS: + * The allocated ahci_host_priv on success, otherwise an ERR_PTR value + */ +struct ahci_host_priv *ahci_platform_get_resources( + struct platform_device *pdev) +{ + struct device *dev = &pdev->dev; + struct ahci_host_priv *hpriv; + struct clk *clk; + int i, rc = -ENOMEM; + + if (!devres_open_group(dev, NULL, GFP_KERNEL)) + return ERR_PTR(-ENOMEM); + + hpriv = devres_alloc(ahci_platform_put_resources, sizeof(*hpriv), + GFP_KERNEL); + if (!hpriv) + goto err_out; + + devres_add(dev, hpriv); + + hpriv->mmio = devm_ioremap_resource(dev, + platform_get_resource(pdev, IORESOURCE_MEM, 0)); if (!hpriv->mmio) { - dev_err(dev, "can't map %pR\n", mem); - return -ENOMEM; + dev_err(dev, "no mmio space\n"); + goto err_out; } - hpriv->clk = clk_get(dev, NULL); - if (IS_ERR(hpriv->clk)) { - dev_err(dev, "can't get clock\n"); - } else { - rc = clk_prepare_enable(hpriv->clk); - if (rc) { - dev_err(dev, "clock prepare enable failed"); - goto free_clk; + hpriv->target_pwr = devm_regulator_get_optional(dev, "target"); + if (IS_ERR(hpriv->target_pwr)) { + rc = PTR_ERR(hpriv->target_pwr); + if (rc == -EPROBE_DEFER) + goto err_out; + hpriv->target_pwr = NULL; + } + + for (i = 0; i < AHCI_MAX_CLKS; i++) { + /* + * For now we must use clk_get(dev, NULL) for the first clock, + * because some platforms (da850, spear13xx) are not yet + * converted to use devicetree for clocks. For new platforms + * this is equivalent to of_clk_get(dev->of_node, 0). + */ + if (i == 0) + clk = clk_get(dev, NULL); + else + clk = of_clk_get(dev->of_node, i); + + if (IS_ERR(clk)) { + rc = PTR_ERR(clk); + if (rc == -EPROBE_DEFER) + goto err_out; + break; } + hpriv->clks[i] = clk; } - /* - * Some platforms might need to prepare for mmio region access, - * which could be done in the following init call. So, the mmio - * region shouldn't be accessed before init (if provided) has - * returned successfully. - */ - if (pdata && pdata->init) { - rc = pdata->init(dev, hpriv->mmio); - if (rc) - goto disable_unprepare_clk; + hpriv->phy = devm_phy_get(dev, "sata-phy"); + if (IS_ERR(hpriv->phy)) { + rc = PTR_ERR(hpriv->phy); + switch (rc) { + case -ENODEV: + case -ENOSYS: + /* continue normally */ + hpriv->phy = NULL; + break; + + case -EPROBE_DEFER: + goto err_out; + + default: + dev_err(dev, "couldn't get sata-phy\n"); + goto err_out; + } } - ahci_save_initial_config(dev, hpriv, - pdata ? pdata->force_port_map : 0, - pdata ? pdata->mask_port_map : 0); + pm_runtime_enable(dev); + pm_runtime_get_sync(dev); + hpriv->got_runtime_pm = true; + + devres_remove_group(dev, NULL); + return hpriv; + +err_out: + devres_release_group(dev, NULL); + return ERR_PTR(rc); +} +EXPORT_SYMBOL_GPL(ahci_platform_get_resources); + +/** + * ahci_platform_init_host - Bring up an ahci-platform host + * @pdev: platform device pointer for the host + * @hpriv: ahci-host private data for the host + * @pi_template: template for the ata_port_info to use + * @force_port_map: param passed to ahci_save_initial_config + * @mask_port_map: param passed to ahci_save_initial_config + * + * This function does all the usual steps needed to bring up an + * ahci-platform host, note any necessary resources (ie clks, phy, etc.) + * must be initialized / enabled before calling this. + * + * RETURNS: + * 0 on success otherwise a negative error code + */ +int ahci_platform_init_host(struct platform_device *pdev, + struct ahci_host_priv *hpriv, + const struct ata_port_info *pi_template, + unsigned int force_port_map, + unsigned int mask_port_map) +{ + struct device *dev = &pdev->dev; + struct ata_port_info pi = *pi_template; + const struct ata_port_info *ppi[] = { &pi, NULL }; + struct ata_host *host; + int i, irq, n_ports, rc; + + irq = platform_get_irq(pdev, 0); + if (irq <= 0) { + dev_err(dev, "no irq\n"); + return -EINVAL; + } /* prepare host */ + hpriv->flags |= (unsigned long)pi.private_data; + + ahci_save_initial_config(dev, hpriv, force_port_map, mask_port_map); + if (hpriv->cap & HOST_CAP_NCQ) pi.flags |= ATA_FLAG_NCQ; @@ -175,10 +383,8 @@ n_ports = max(ahci_nr_ports(hpriv->cap), fls(hpriv->port_map)); host = ata_host_alloc_pinfo(dev, ppi, n_ports); - if (!host) { - rc = -ENOMEM; - goto pdata_exit; - } + if (!host) + return -ENOMEM; host->private_data = hpriv; @@ -193,7 +399,8 @@ for (i = 0; i < host->n_ports; i++) { struct ata_port *ap = host->ports[i]; - ata_port_desc(ap, "mmio %pR", mem); + ata_port_desc(ap, "mmio %pR", + platform_get_resource(pdev, IORESOURCE_MEM, 0)); ata_port_desc(ap, "port 0x%x", 0x100 + ap->port_no * 0x80); /* set enclosure management message type */ @@ -207,13 +414,53 @@ rc = ahci_reset_controller(host); if (rc) - goto pdata_exit; + return rc; ahci_init_controller(host); ahci_print_info(host, "platform"); - rc = ata_host_activate(host, irq, ahci_interrupt, IRQF_SHARED, - &ahci_platform_sht); + return ata_host_activate(host, irq, ahci_interrupt, IRQF_SHARED, + &ahci_platform_sht); +} +EXPORT_SYMBOL_GPL(ahci_platform_init_host); + +static int ahci_probe(struct platform_device *pdev) +{ + struct device *dev = &pdev->dev; + struct ahci_platform_data *pdata = dev_get_platdata(dev); + const struct platform_device_id *id = platform_get_device_id(pdev); + const struct ata_port_info *pi_template; + struct ahci_host_priv *hpriv; + int rc; + + hpriv = ahci_platform_get_resources(pdev); + if (IS_ERR(hpriv)) + return PTR_ERR(hpriv); + + rc = ahci_platform_enable_resources(hpriv); + if (rc) + return rc; + + /* + * Some platforms might need to prepare for mmio region access, + * which could be done in the following init call. So, the mmio + * region shouldn't be accessed before init (if provided) has + * returned successfully. + */ + if (pdata && pdata->init) { + rc = pdata->init(dev, hpriv->mmio); + if (rc) + goto disable_resources; + } + + if (pdata && pdata->ata_port_info) + pi_template = pdata->ata_port_info; + else + pi_template = &ahci_port_info[id ? id->driver_data : 0]; + + rc = ahci_platform_init_host(pdev, hpriv, pi_template, + pdata ? pdata->force_port_map : 0, + pdata ? pdata->mask_port_map : 0); if (rc) goto pdata_exit; @@ -221,12 +468,8 @@ pdata_exit: if (pdata && pdata->exit) pdata->exit(dev); -disable_unprepare_clk: - if (!IS_ERR(hpriv->clk)) - clk_disable_unprepare(hpriv->clk); -free_clk: - if (!IS_ERR(hpriv->clk)) - clk_put(hpriv->clk); +disable_resources: + ahci_platform_disable_resources(hpriv); return rc; } @@ -239,21 +482,27 @@ if (pdata && pdata->exit) pdata->exit(dev); - if (!IS_ERR(hpriv->clk)) { - clk_disable_unprepare(hpriv->clk); - clk_put(hpriv->clk); - } + ahci_platform_disable_resources(hpriv); } #ifdef CONFIG_PM_SLEEP -static int ahci_suspend(struct device *dev) +/** + * ahci_platform_suspend_host - Suspend an ahci-platform host + * @dev: device pointer for the host + * + * This function does all the usual steps needed to suspend an + * ahci-platform host, note any necessary resources (ie clks, phy, etc.) + * must be disabled after calling this. + * + * RETURNS: + * 0 on success otherwise a negative error code + */ +int ahci_platform_suspend_host(struct device *dev) { - struct ahci_platform_data *pdata = dev_get_platdata(dev); struct ata_host *host = dev_get_drvdata(dev); struct ahci_host_priv *hpriv = host->private_data; void __iomem *mmio = hpriv->mmio; u32 ctl; - int rc; if (hpriv->flags & AHCI_HFLAG_NO_SUSPEND) { dev_err(dev, "firmware update required for suspend/resume\n"); @@ -270,61 +519,118 @@ writel(ctl, mmio + HOST_CTL); readl(mmio + HOST_CTL); /* flush */ - rc = ata_host_suspend(host, PMSG_SUSPEND); + return ata_host_suspend(host, PMSG_SUSPEND); +} +EXPORT_SYMBOL_GPL(ahci_platform_suspend_host); + +/** + * ahci_platform_resume_host - Resume an ahci-platform host + * @dev: device pointer for the host + * + * This function does all the usual steps needed to resume an ahci-platform + * host, note any necessary resources (ie clks, phy, etc.) must be + * initialized / enabled before calling this. + * + * RETURNS: + * 0 on success otherwise a negative error code + */ +int ahci_platform_resume_host(struct device *dev) +{ + struct ata_host *host = dev_get_drvdata(dev); + int rc; + + if (dev->power.power_state.event == PM_EVENT_SUSPEND) { + rc = ahci_reset_controller(host); + if (rc) + return rc; + + ahci_init_controller(host); + } + + ata_host_resume(host); + + return 0; +} +EXPORT_SYMBOL_GPL(ahci_platform_resume_host); + +/** + * ahci_platform_suspend - Suspend an ahci-platform device + * @dev: the platform device to suspend + * + * This function suspends the host associated with the device, followed by + * disabling all the resources of the device. + * + * RETURNS: + * 0 on success otherwise a negative error code + */ +int ahci_platform_suspend(struct device *dev) +{ + struct ahci_platform_data *pdata = dev_get_platdata(dev); + struct ata_host *host = dev_get_drvdata(dev); + struct ahci_host_priv *hpriv = host->private_data; + int rc; + + rc = ahci_platform_suspend_host(dev); if (rc) return rc; if (pdata && pdata->suspend) return pdata->suspend(dev); - if (!IS_ERR(hpriv->clk)) - clk_disable_unprepare(hpriv->clk); + ahci_platform_disable_resources(hpriv); return 0; } +EXPORT_SYMBOL_GPL(ahci_platform_suspend); -static int ahci_resume(struct device *dev) +/** + * ahci_platform_resume - Resume an ahci-platform device + * @dev: the platform device to resume + * + * This function enables all the resources of the device followed by + * resuming the host associated with the device. + * + * RETURNS: + * 0 on success otherwise a negative error code + */ +int ahci_platform_resume(struct device *dev) { struct ahci_platform_data *pdata = dev_get_platdata(dev); struct ata_host *host = dev_get_drvdata(dev); struct ahci_host_priv *hpriv = host->private_data; int rc; - if (!IS_ERR(hpriv->clk)) { - rc = clk_prepare_enable(hpriv->clk); - if (rc) { - dev_err(dev, "clock prepare enable failed"); - return rc; - } - } + rc = ahci_platform_enable_resources(hpriv); + if (rc) + return rc; if (pdata && pdata->resume) { rc = pdata->resume(dev); if (rc) - goto disable_unprepare_clk; + goto disable_resources; } - if (dev->power.power_state.event == PM_EVENT_SUSPEND) { - rc = ahci_reset_controller(host); - if (rc) - goto disable_unprepare_clk; - - ahci_init_controller(host); - } + rc = ahci_platform_resume_host(dev); + if (rc) + goto disable_resources; - ata_host_resume(host); + /* We resumed so update PM runtime state */ + pm_runtime_disable(dev); + pm_runtime_set_active(dev); + pm_runtime_enable(dev); return 0; -disable_unprepare_clk: - if (!IS_ERR(hpriv->clk)) - clk_disable_unprepare(hpriv->clk); +disable_resources: + ahci_platform_disable_resources(hpriv); return rc; } +EXPORT_SYMBOL_GPL(ahci_platform_resume); #endif -static SIMPLE_DEV_PM_OPS(ahci_pm_ops, ahci_suspend, ahci_resume); +static SIMPLE_DEV_PM_OPS(ahci_pm_ops, ahci_platform_suspend, + ahci_platform_resume); static const struct of_device_id ahci_of_match[] = { { .compatible = "snps,spear-ahci", }, --- linux-3.13.0.orig/drivers/ata/ahci_xgene.c +++ linux-3.13.0/drivers/ata/ahci_xgene.c @@ -0,0 +1,486 @@ +/* + * AppliedMicro X-Gene SoC SATA Host Controller Driver + * + * Copyright (c) 2014, Applied Micro Circuits Corporation + * Author: Loc Ho + * Tuan Phan + * Suman Tripathi + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation; either version 2 of the License, or (at your + * option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * NOTE: PM support is not currently available. + * + */ +#include +#include +#include +#include +#include +#include +#include "ahci.h" + +/* Max # of disk per a controller */ +#define MAX_AHCI_CHN_PERCTR 2 + +/* MUX CSR */ +#define SATA_ENET_CONFIG_REG 0x00000000 +#define CFG_SATA_ENET_SELECT_MASK 0x00000001 + +/* SATA core host controller CSR */ +#define SLVRDERRATTRIBUTES 0x00000000 +#define SLVWRERRATTRIBUTES 0x00000004 +#define MSTRDERRATTRIBUTES 0x00000008 +#define MSTWRERRATTRIBUTES 0x0000000c +#define BUSCTLREG 0x00000014 +#define IOFMSTRWAUX 0x00000018 +#define INTSTATUSMASK 0x0000002c +#define ERRINTSTATUS 0x00000030 +#define ERRINTSTATUSMASK 0x00000034 + +/* SATA host AHCI CSR */ +#define PORTCFG 0x000000a4 +#define PORTADDR_SET(dst, src) \ + (((dst) & ~0x0000003f) | (((u32)(src)) & 0x0000003f)) +#define PORTPHY1CFG 0x000000a8 +#define PORTPHY1CFG_FRCPHYRDY_SET(dst, src) \ + (((dst) & ~0x00100000) | (((u32)(src) << 0x14) & 0x00100000)) +#define PORTPHY2CFG 0x000000ac +#define PORTPHY3CFG 0x000000b0 +#define PORTPHY4CFG 0x000000b4 +#define PORTPHY5CFG 0x000000b8 +#define SCTL0 0x0000012C +#define PORTPHY5CFG_RTCHG_SET(dst, src) \ + (((dst) & ~0xfff00000) | (((u32)(src) << 0x14) & 0xfff00000)) +#define PORTAXICFG_EN_CONTEXT_SET(dst, src) \ + (((dst) & ~0x01000000) | (((u32)(src) << 0x18) & 0x01000000)) +#define PORTAXICFG 0x000000bc +#define PORTAXICFG_OUTTRANS_SET(dst, src) \ + (((dst) & ~0x00f00000) | (((u32)(src) << 0x14) & 0x00f00000)) + +/* SATA host controller AXI CSR */ +#define INT_SLV_TMOMASK 0x00000010 + +/* SATA diagnostic CSR */ +#define CFG_MEM_RAM_SHUTDOWN 0x00000070 +#define BLOCK_MEM_RDY 0x00000074 + +struct xgene_ahci_context { + struct ahci_host_priv *hpriv; + struct device *dev; + void __iomem *csr_core; /* Core CSR address of IP */ + void __iomem *csr_diag; /* Diag CSR address of IP */ + void __iomem *csr_axi; /* AXI CSR address of IP */ + void __iomem *csr_mux; /* MUX CSR address of IP */ +}; + +static int xgene_ahci_init_memram(struct xgene_ahci_context *ctx) +{ + dev_dbg(ctx->dev, "Release memory from shutdown\n"); + writel(0x0, ctx->csr_diag + CFG_MEM_RAM_SHUTDOWN); + readl(ctx->csr_diag + CFG_MEM_RAM_SHUTDOWN); /* Force a barrier */ + msleep(1); /* reset may take up to 1ms */ + if (readl(ctx->csr_diag + BLOCK_MEM_RDY) != 0xFFFFFFFF) { + dev_err(ctx->dev, "failed to release memory from shutdown\n"); + return -ENODEV; + } + return 0; +} + +/** + * xgene_ahci_read_id - Read ID data from the specified device + * @dev: device + * @tf: proposed taskfile + * @id: data buffer + * + * This custom read ID function is required due to the fact that the HW + * does not support DEVSLP and the controller state machine may get stuck + * after processing the ID query command. + */ +static unsigned int xgene_ahci_read_id(struct ata_device *dev, + struct ata_taskfile *tf, u16 *id) +{ + u32 err_mask; + void __iomem *port_mmio = ahci_port_base(dev->link->ap); + + err_mask = ata_do_dev_read_id(dev, tf, id); + if (err_mask) + return err_mask; + + /* + * Mask reserved area. Word78 spec of Link Power Management + * bit15-8: reserved + * bit7: NCQ autosence + * bit6: Software settings preservation supported + * bit5: reserved + * bit4: In-order sata delivery supported + * bit3: DIPM requests supported + * bit2: DMA Setup FIS Auto-Activate optimization supported + * bit1: DMA Setup FIX non-Zero buffer offsets supported + * bit0: Reserved + * + * Clear reserved bit 8 (DEVSLP bit) as we don't support DEVSLP + */ + id[ATA_ID_FEATURE_SUPP] &= ~(1 << 8); + + /* + * Due to HW errata, restart the port if no other command active. + * Otherwise the controller may get stuck. + */ + if (!readl(port_mmio + PORT_CMD_ISSUE)) { + writel(PORT_CMD_FIS_RX, port_mmio + PORT_CMD); + readl(port_mmio + PORT_CMD); /* Force a barrier */ + writel(PORT_CMD_FIS_RX | PORT_CMD_START, port_mmio + PORT_CMD); + readl(port_mmio + PORT_CMD); /* Force a barrier */ + } + return 0; +} + +static void xgene_ahci_set_phy_cfg(struct xgene_ahci_context *ctx, int channel) +{ + void __iomem *mmio = ctx->hpriv->mmio; + u32 val; + + dev_dbg(ctx->dev, "port configure mmio 0x%p channel %d\n", + mmio, channel); + val = readl(mmio + PORTCFG); + val = PORTADDR_SET(val, channel == 0 ? 2 : 3); + writel(val, mmio + PORTCFG); + readl(mmio + PORTCFG); /* Force a barrier */ + /* Disable fix rate */ + writel(0x0001fffe, mmio + PORTPHY1CFG); + readl(mmio + PORTPHY1CFG); /* Force a barrier */ + writel(0x5018461c, mmio + PORTPHY2CFG); + readl(mmio + PORTPHY2CFG); /* Force a barrier */ + writel(0x1c081907, mmio + PORTPHY3CFG); + readl(mmio + PORTPHY3CFG); /* Force a barrier */ + writel(0x1c080815, mmio + PORTPHY4CFG); + readl(mmio + PORTPHY4CFG); /* Force a barrier */ + /* Set window negotiation */ + val = readl(mmio + PORTPHY5CFG); + val = PORTPHY5CFG_RTCHG_SET(val, 0x300); + writel(val, mmio + PORTPHY5CFG); + readl(mmio + PORTPHY5CFG); /* Force a barrier */ + val = readl(mmio + PORTAXICFG); + val = PORTAXICFG_EN_CONTEXT_SET(val, 0x1); /* Enable context mgmt */ + val = PORTAXICFG_OUTTRANS_SET(val, 0xe); /* Set outstanding */ + writel(val, mmio + PORTAXICFG); + readl(mmio + PORTAXICFG); /* Force a barrier */ +} + +/** + * xgene_ahci_do_hardreset - Issue the actual COMRESET + * @link: link to reset + * @deadline: deadline jiffies for the operation + * @online: Return value to indicate if device online + * + * Due to the limitation of the hardware PHY, a difference set of setting is + * required for each supported disk speed - Gen3 (6.0Gbps), Gen2 (3.0Gbps), + * and Gen1 (1.5Gbps). Otherwise during long IO stress test, the PHY will + * report disparity error and etc. In addition, during COMRESET, there can + * be error reported in the register PORT_SCR_ERR. For SERR_DISPARITY and + * SERR_10B_8B_ERR, the PHY receiver line must be reseted. The following + * algorithm is followed to proper configure the hardware PHY during COMRESET: + * + * Alg Part 1: + * 1. Start the PHY at Gen3 speed (default setting) + * 2. Issue the COMRESET + * 3. If no link, go to Alg Part 3 + * 4. If link up, determine if the negotiated speed matches the PHY + * configured speed + * 5. If they matched, go to Alg Part 2 + * 6. If they do not matched and first time, configure the PHY for the linked + * up disk speed and repeat step 2 + * 7. Go to Alg Part 2 + * + * Alg Part 2: + * 1. On link up, if there are any SERR_DISPARITY and SERR_10B_8B_ERR error + * reported in the register PORT_SCR_ERR, then reset the PHY receiver line + * 2. Go to Alg Part 3 + * + * Alg Part 3: + * 1. Clear any pending from register PORT_SCR_ERR. + * + * NOTE: For the initial version, we will NOT support Gen1/Gen2. In addition + * and until the underlying PHY supports an method to reset the receiver + * line, on detection of SERR_DISPARITY or SERR_10B_8B_ERR errors, + * an warning message will be printed. + */ +static int xgene_ahci_do_hardreset(struct ata_link *link, + unsigned long deadline, bool *online) +{ + const unsigned long *timing = sata_ehc_deb_timing(&link->eh_context); + struct ata_port *ap = link->ap; + struct ahci_host_priv *hpriv = ap->host->private_data; + struct xgene_ahci_context *ctx = hpriv->plat_data; + struct ahci_port_priv *pp = ap->private_data; + u8 *d2h_fis = pp->rx_fis + RX_FIS_D2H_REG; + void __iomem *port_mmio = ahci_port_base(ap); + struct ata_taskfile tf; + int rc; + u32 val; + + /* clear D2H reception area to properly wait for D2H FIS */ + ata_tf_init(link->device, &tf); + tf.command = ATA_BUSY; + ata_tf_to_fis(&tf, 0, 0, d2h_fis); + rc = sata_link_hardreset(link, timing, deadline, online, + ahci_check_ready); + + val = readl(port_mmio + PORT_SCR_ERR); + if (val & (SERR_DISPARITY | SERR_10B_8B_ERR)) + dev_warn(ctx->dev, "link has error\n"); + + /* clear all errors if any pending */ + val = readl(port_mmio + PORT_SCR_ERR); + writel(val, port_mmio + PORT_SCR_ERR); + + return rc; +} + +static int xgene_ahci_hardreset(struct ata_link *link, unsigned int *class, + unsigned long deadline) +{ + struct ata_port *ap = link->ap; + struct ahci_host_priv *hpriv = ap->host->private_data; + void __iomem *port_mmio = ahci_port_base(ap); + bool online; + int rc; + u32 portcmd_saved; + u32 portclb_saved; + u32 portclbhi_saved; + u32 portrxfis_saved; + u32 portrxfishi_saved; + + /* As hardreset resets these CSR, save it to restore later */ + portcmd_saved = readl(port_mmio + PORT_CMD); + portclb_saved = readl(port_mmio + PORT_LST_ADDR); + portclbhi_saved = readl(port_mmio + PORT_LST_ADDR_HI); + portrxfis_saved = readl(port_mmio + PORT_FIS_ADDR); + portrxfishi_saved = readl(port_mmio + PORT_FIS_ADDR_HI); + + ahci_stop_engine(ap); + + rc = xgene_ahci_do_hardreset(link, deadline, &online); + + /* As controller hardreset clears them, restore them */ + writel(portcmd_saved, port_mmio + PORT_CMD); + writel(portclb_saved, port_mmio + PORT_LST_ADDR); + writel(portclbhi_saved, port_mmio + PORT_LST_ADDR_HI); + writel(portrxfis_saved, port_mmio + PORT_FIS_ADDR); + writel(portrxfishi_saved, port_mmio + PORT_FIS_ADDR_HI); + + hpriv->start_engine(ap); + + if (online) + *class = ahci_dev_classify(ap); + + return rc; +} + +static void xgene_ahci_host_stop(struct ata_host *host) +{ + struct ahci_host_priv *hpriv = host->private_data; + + ahci_platform_disable_resources(hpriv); +} + +static struct ata_port_operations xgene_ahci_ops = { + .inherits = &ahci_ops, + .host_stop = xgene_ahci_host_stop, + .hardreset = xgene_ahci_hardreset, + .read_id = xgene_ahci_read_id, +}; + +static const struct ata_port_info xgene_ahci_port_info = { + AHCI_HFLAGS(AHCI_HFLAG_NO_PMP | AHCI_HFLAG_YES_NCQ), + .flags = AHCI_FLAG_COMMON | ATA_FLAG_NCQ, + .pio_mask = ATA_PIO4, + .udma_mask = ATA_UDMA6, + .port_ops = &xgene_ahci_ops, +}; + +static int xgene_ahci_hw_init(struct ahci_host_priv *hpriv) +{ + struct xgene_ahci_context *ctx = hpriv->plat_data; + int i; + int rc; + u32 val; + + /* Remove IP RAM out of shutdown */ + rc = xgene_ahci_init_memram(ctx); + if (rc) + return rc; + + for (i = 0; i < MAX_AHCI_CHN_PERCTR; i++) + xgene_ahci_set_phy_cfg(ctx, i); + + /* AXI disable Mask */ + writel(0xffffffff, hpriv->mmio + HOST_IRQ_STAT); + readl(hpriv->mmio + HOST_IRQ_STAT); /* Force a barrier */ + writel(0, ctx->csr_core + INTSTATUSMASK); + val = readl(ctx->csr_core + INTSTATUSMASK); /* Force a barrier */ + dev_dbg(ctx->dev, "top level interrupt mask 0x%X value 0x%08X\n", + INTSTATUSMASK, val); + + writel(0x0, ctx->csr_core + ERRINTSTATUSMASK); + readl(ctx->csr_core + ERRINTSTATUSMASK); /* Force a barrier */ + writel(0x0, ctx->csr_axi + INT_SLV_TMOMASK); + readl(ctx->csr_axi + INT_SLV_TMOMASK); + + /* Enable AXI Interrupt */ + writel(0xffffffff, ctx->csr_core + SLVRDERRATTRIBUTES); + writel(0xffffffff, ctx->csr_core + SLVWRERRATTRIBUTES); + writel(0xffffffff, ctx->csr_core + MSTRDERRATTRIBUTES); + writel(0xffffffff, ctx->csr_core + MSTWRERRATTRIBUTES); + + /* Enable coherency */ + val = readl(ctx->csr_core + BUSCTLREG); + val &= ~0x00000002; /* Enable write coherency */ + val &= ~0x00000001; /* Enable read coherency */ + writel(val, ctx->csr_core + BUSCTLREG); + + val = readl(ctx->csr_core + IOFMSTRWAUX); + val |= (1 << 3); /* Enable read coherency */ + val |= (1 << 9); /* Enable write coherency */ + writel(val, ctx->csr_core + IOFMSTRWAUX); + val = readl(ctx->csr_core + IOFMSTRWAUX); + dev_dbg(ctx->dev, "coherency 0x%X value 0x%08X\n", + IOFMSTRWAUX, val); + + return rc; +} + +static int xgene_ahci_mux_select(struct xgene_ahci_context *ctx) +{ + u32 val; + + /* Check for optional MUX resource */ + if (IS_ERR(ctx->csr_mux)) + return 0; + + val = readl(ctx->csr_mux + SATA_ENET_CONFIG_REG); + val &= ~CFG_SATA_ENET_SELECT_MASK; + writel(val, ctx->csr_mux + SATA_ENET_CONFIG_REG); + val = readl(ctx->csr_mux + SATA_ENET_CONFIG_REG); + return val & CFG_SATA_ENET_SELECT_MASK ? -1 : 0; +} + +static int xgene_ahci_probe(struct platform_device *pdev) +{ + struct device *dev = &pdev->dev; + struct ahci_host_priv *hpriv; + struct xgene_ahci_context *ctx; + struct resource *res; + int rc; + + hpriv = ahci_platform_get_resources(pdev); + if (IS_ERR(hpriv)) + return PTR_ERR(hpriv); + + ctx = devm_kzalloc(dev, sizeof(*ctx), GFP_KERNEL); + if (!ctx) + return -ENOMEM; + + hpriv->plat_data = ctx; + ctx->hpriv = hpriv; + ctx->dev = dev; + + /* Retrieve the IP core resource */ + res = platform_get_resource(pdev, IORESOURCE_MEM, 1); + ctx->csr_core = devm_ioremap_resource(dev, res); + if (IS_ERR(ctx->csr_core)) + return PTR_ERR(ctx->csr_core); + + /* Retrieve the IP diagnostic resource */ + res = platform_get_resource(pdev, IORESOURCE_MEM, 2); + ctx->csr_diag = devm_ioremap_resource(dev, res); + if (IS_ERR(ctx->csr_diag)) + return PTR_ERR(ctx->csr_diag); + + /* Retrieve the IP AXI resource */ + res = platform_get_resource(pdev, IORESOURCE_MEM, 3); + ctx->csr_axi = devm_ioremap_resource(dev, res); + if (IS_ERR(ctx->csr_axi)) + return PTR_ERR(ctx->csr_axi); + + /* Retrieve the optional IP mux resource */ + res = platform_get_resource(pdev, IORESOURCE_MEM, 4); + ctx->csr_mux = devm_ioremap_resource(dev, res); + + dev_dbg(dev, "VAddr 0x%p Mmio VAddr 0x%p\n", ctx->csr_core, + hpriv->mmio); + + /* Select ATA */ + if ((rc = xgene_ahci_mux_select(ctx))) { + dev_err(dev, "SATA mux selection failed error %d\n", rc); + return -ENODEV; + } + + /* Due to errata, HW requires full toggle transition */ + rc = ahci_platform_enable_clks(hpriv); + if (rc) + goto disable_resources; + ahci_platform_disable_clks(hpriv); + + rc = ahci_platform_enable_resources(hpriv); + if (rc) + goto disable_resources; + + /* Configure the host controller */ + xgene_ahci_hw_init(hpriv); + + /* + * Setup DMA mask. This is preliminary until the DMA range is sorted + * out. + */ + rc = dma_set_mask_and_coherent(dev, DMA_BIT_MASK(64)); + if (rc) { + dev_err(dev, "Unable to set dma mask\n"); + goto disable_resources; + } + + rc = ahci_platform_init_host(pdev, hpriv, &xgene_ahci_port_info, 0, 0); + if (rc) + goto disable_resources; + + dev_dbg(dev, "X-Gene SATA host controller initialized\n"); + return 0; + +disable_resources: + ahci_platform_disable_resources(hpriv); + return rc; +} + +static const struct of_device_id xgene_ahci_of_match[] = { + {.compatible = "apm,xgene-ahci"}, + {}, +}; +MODULE_DEVICE_TABLE(of, xgene_ahci_of_match); + +static struct platform_driver xgene_ahci_driver = { + .probe = xgene_ahci_probe, + .remove = ata_platform_remove_one, + .driver = { + .name = "xgene-ahci", + .owner = THIS_MODULE, + .of_match_table = xgene_ahci_of_match, + }, +}; + +module_platform_driver(xgene_ahci_driver); + +MODULE_DESCRIPTION("APM X-Gene AHCI SATA driver"); +MODULE_AUTHOR("Loc Ho "); +MODULE_LICENSE("GPL"); +MODULE_VERSION("0.4"); --- linux-3.13.0.orig/drivers/ata/libahci.c +++ linux-3.13.0/drivers/ata/libahci.c @@ -394,6 +394,9 @@ * * If inconsistent, config values are fixed up by this function. * + * If it is not set already this function sets hpriv->start_engine to + * ahci_start_engine. + * * LOCKING: * None. */ @@ -500,6 +503,9 @@ hpriv->cap = cap; hpriv->cap2 = cap2; hpriv->port_map = port_map; + + if (!hpriv->start_engine) + hpriv->start_engine = ahci_start_engine; } EXPORT_SYMBOL_GPL(ahci_save_initial_config); @@ -766,7 +772,7 @@ /* enable DMA */ if (!(hpriv->flags & AHCI_HFLAG_DELAY_ENGINE)) - ahci_start_engine(ap); + hpriv->start_engine(ap); /* turn on LEDs */ if (ap->flags & ATA_FLAG_EM) { @@ -1234,7 +1240,7 @@ /* restart engine */ out_restart: - ahci_start_engine(ap); + hpriv->start_engine(ap); return rc; } EXPORT_SYMBOL_GPL(ahci_kick_engine); @@ -1426,6 +1432,7 @@ const unsigned long *timing = sata_ehc_deb_timing(&link->eh_context); struct ata_port *ap = link->ap; struct ahci_port_priv *pp = ap->private_data; + struct ahci_host_priv *hpriv = ap->host->private_data; u8 *d2h_fis = pp->rx_fis + RX_FIS_D2H_REG; struct ata_taskfile tf; bool online; @@ -1443,7 +1450,7 @@ rc = sata_link_hardreset(link, timing, deadline, &online, ahci_check_ready); - ahci_start_engine(ap); + hpriv->start_engine(ap); if (online) *class = ahci_dev_classify(ap); @@ -2007,10 +2014,12 @@ void ahci_error_handler(struct ata_port *ap) { + struct ahci_host_priv *hpriv = ap->host->private_data; + if (!(ap->pflags & ATA_PFLAG_FROZEN)) { /* restart engine */ ahci_stop_engine(ap); - ahci_start_engine(ap); + hpriv->start_engine(ap); } sata_pmp_error_handler(ap); @@ -2031,6 +2040,7 @@ static void ahci_set_aggressive_devslp(struct ata_port *ap, bool sleep) { + struct ahci_host_priv *hpriv = ap->host->private_data; void __iomem *port_mmio = ahci_port_base(ap); struct ata_device *dev = ap->link.device; u32 devslp, dm, dito, mdat, deto; @@ -2094,7 +2104,7 @@ PORT_DEVSLP_ADSE); writel(devslp, port_mmio + PORT_DEVSLP); - ahci_start_engine(ap); + hpriv->start_engine(ap); /* enable device sleep feature for the drive */ err_mask = ata_dev_set_feature(dev, @@ -2106,6 +2116,7 @@ static void ahci_enable_fbs(struct ata_port *ap) { + struct ahci_host_priv *hpriv = ap->host->private_data; struct ahci_port_priv *pp = ap->private_data; void __iomem *port_mmio = ahci_port_base(ap); u32 fbs; @@ -2134,11 +2145,12 @@ } else dev_err(ap->host->dev, "Failed to enable FBS\n"); - ahci_start_engine(ap); + hpriv->start_engine(ap); } static void ahci_disable_fbs(struct ata_port *ap) { + struct ahci_host_priv *hpriv = ap->host->private_data; struct ahci_port_priv *pp = ap->private_data; void __iomem *port_mmio = ahci_port_base(ap); u32 fbs; @@ -2166,7 +2178,7 @@ pp->fbs_enabled = false; } - ahci_start_engine(ap); + hpriv->start_engine(ap); } static void ahci_pmp_attach(struct ata_port *ap) --- linux-3.13.0.orig/drivers/ata/libata-core.c +++ linux-3.13.0/drivers/ata/libata-core.c @@ -2222,6 +2222,16 @@ if (rc) return rc; + /* some WD SATA-1 drives have issues with LPM, turn on NOLPM for them */ + if ((dev->horkage & ATA_HORKAGE_WD_BROKEN_LPM) && + (id[ATA_ID_SATA_CAPABILITY] & 0xe) == 0x2) + dev->horkage |= ATA_HORKAGE_NOLPM; + + if (dev->horkage & ATA_HORKAGE_NOLPM) { + ata_dev_warn(dev, "LPM support broken, forcing max_power\n"); + dev->link->ap->target_lpm_policy = ATA_LPM_MAX_POWER; + } + /* let ACPI work its magic */ rc = ata_acpi_on_devcfg(dev); if (rc) @@ -4165,6 +4175,7 @@ /* Seagate Momentus SpinPoint M8 seem to have FPMDA_AA issues */ { "ST1000LM024 HN-M101MBB", "2AR10001", ATA_HORKAGE_BROKEN_FPDMA_AA }, + { "ST1000LM024 HN-M101MBB", "2BA30001", ATA_HORKAGE_BROKEN_FPDMA_AA }, /* Blacklist entries taken from Silicon Image 3124/3132 Windows driver .inf file - also several Linux problem reports */ @@ -4214,7 +4225,24 @@ /* devices that don't properly handle queued TRIM commands */ { "Micron_M500*", NULL, ATA_HORKAGE_NO_NCQ_TRIM, }, - { "Crucial_CT???M500SSD1", NULL, ATA_HORKAGE_NO_NCQ_TRIM, }, + { "Crucial_CT???M500SSD*", NULL, ATA_HORKAGE_NO_NCQ_TRIM, }, + + /* + * Some WD SATA-I drives spin up and down erratically when the link + * is put into the slumber mode. We don't have full list of the + * affected devices. Disable LPM if the device matches one of the + * known prefixes and is SATA-1. As a side effect LPM partial is + * lost too. + * + * https://bugzilla.kernel.org/show_bug.cgi?id=57211 + */ + { "WDC WD800JD-*", NULL, ATA_HORKAGE_WD_BROKEN_LPM }, + { "WDC WD1200JD-*", NULL, ATA_HORKAGE_WD_BROKEN_LPM }, + { "WDC WD1600JD-*", NULL, ATA_HORKAGE_WD_BROKEN_LPM }, + { "WDC WD2000JD-*", NULL, ATA_HORKAGE_WD_BROKEN_LPM }, + { "WDC WD2500JD-*", NULL, ATA_HORKAGE_WD_BROKEN_LPM }, + { "WDC WD3000JD-*", NULL, ATA_HORKAGE_WD_BROKEN_LPM }, + { "WDC WD3200JD-*", NULL, ATA_HORKAGE_WD_BROKEN_LPM }, /* End Marker */ { } --- linux-3.13.0.orig/drivers/ata/libata-pmp.c +++ linux-3.13.0/drivers/ata/libata-pmp.c @@ -447,8 +447,11 @@ * otherwise. Don't try hard to recover it. */ ap->pmp_link[ap->nr_pmp_links - 1].flags |= ATA_LFLAG_NO_RETRY; - } else if (vendor == 0x197b && devid == 0x2352) { - /* chip found in Thermaltake BlackX Duet, jmicron JMB350? */ + } else if (vendor == 0x197b && (devid == 0x2352 || devid == 0x0325)) { + /* + * 0x2352: found in Thermaltake BlackX Duet, jmicron JMB350? + * 0x0325: jmicron JMB394. + */ ata_for_each_link(link, ap, EDGE) { /* SRST breaks detection and disks get misclassified * LPM disabled to avoid potential problems --- linux-3.13.0.orig/drivers/ata/libata-scsi.c +++ linux-3.13.0/drivers/ata/libata-scsi.c @@ -111,12 +111,14 @@ [ATA_LPM_MIN_POWER] = "min_power", }; -static ssize_t ata_scsi_lpm_store(struct device *dev, +static ssize_t ata_scsi_lpm_store(struct device *device, struct device_attribute *attr, const char *buf, size_t count) { - struct Scsi_Host *shost = class_to_shost(dev); + struct Scsi_Host *shost = class_to_shost(device); struct ata_port *ap = ata_shost_to_port(shost); + struct ata_link *link; + struct ata_device *dev; enum ata_lpm_policy policy; unsigned long flags; @@ -132,10 +134,20 @@ return -EINVAL; spin_lock_irqsave(ap->lock, flags); + + ata_for_each_link(link, ap, EDGE) { + ata_for_each_dev(dev, &ap->link, ENABLED) { + if (dev->horkage & ATA_HORKAGE_NOLPM) { + count = -EOPNOTSUPP; + goto out_unlock; + } + } + } + ap->target_lpm_policy = policy; ata_port_schedule_eh(ap); +out_unlock: spin_unlock_irqrestore(ap->lock, flags); - return count; } --- linux-3.13.0.orig/drivers/ata/sata_highbank.c +++ linux-3.13.0/drivers/ata/sata_highbank.c @@ -404,6 +404,7 @@ static const unsigned long timing[] = { 5, 100, 500}; struct ata_port *ap = link->ap; struct ahci_port_priv *pp = ap->private_data; + struct ahci_host_priv *hpriv = ap->host->private_data; u8 *d2h_fis = pp->rx_fis + RX_FIS_D2H_REG; struct ata_taskfile tf; bool online; @@ -432,7 +433,7 @@ break; } while (!online && retry--); - ahci_start_engine(ap); + hpriv->start_engine(ap); if (online) *class = ahci_dev_classify(ap); --- linux-3.13.0.orig/drivers/ata/sata_mv.c +++ linux-3.13.0/drivers/ata/sata_mv.c @@ -304,6 +304,7 @@ MV5_LTMODE = 0x30, MV5_PHY_CTL = 0x0C, SATA_IFCFG = 0x050, + LP_PHY_CTL = 0x058, MV_M2_PREAMP_MASK = 0x7e0, @@ -431,6 +432,7 @@ MV_HP_CUT_THROUGH = (1 << 10), /* can use EDMA cut-through */ MV_HP_FLAG_SOC = (1 << 11), /* SystemOnChip, no PCI */ MV_HP_QUIRK_LED_BLINK_EN = (1 << 12), /* is led blinking enabled? */ + MV_HP_FIX_LP_PHY_CTL = (1 << 13), /* fix speed in LP_PHY_CTL ? */ /* Port private flags (pp_flags) */ MV_PP_FLAG_EDMA_EN = (1 << 0), /* is EDMA engine enabled? */ @@ -1358,6 +1360,7 @@ if (ofs != 0xffffffffU) { void __iomem *addr = mv_ap_base(link->ap) + ofs; + struct mv_host_priv *hpriv = link->ap->host->private_data; if (sc_reg_in == SCR_CONTROL) { /* * Workaround for 88SX60x1 FEr SATA#26: @@ -1374,6 +1377,18 @@ */ if ((val & 0xf) == 1 || (readl(addr) & 0xf) == 1) val |= 0xf000; + + if (hpriv->hp_flags & MV_HP_FIX_LP_PHY_CTL) { + void __iomem *lp_phy_addr = + mv_ap_base(link->ap) + LP_PHY_CTL; + /* + * Set PHY speed according to SControl speed. + */ + if ((val & 0xf0) == 0x10) + writelfl(0x7, lp_phy_addr); + else + writelfl(0x227, lp_phy_addr); + } } writelfl(val, addr); return 0; @@ -4110,6 +4125,15 @@ if (rc) goto err; + /* + * To allow disk hotplug on Armada 370/XP SoCs, the PHY speed must be + * updated in the LP_PHY_CTL register. + */ + if (pdev->dev.of_node && + of_device_is_compatible(pdev->dev.of_node, + "marvell,armada-370-sata")) + hpriv->hp_flags |= MV_HP_FIX_LP_PHY_CTL; + /* initialize adapter */ rc = mv_init_host(host); if (rc) @@ -4209,6 +4233,7 @@ #ifdef CONFIG_OF static struct of_device_id mv_sata_dt_ids[] = { + { .compatible = "marvell,armada-370-sata", }, { .compatible = "marvell,orion-sata", }, {}, }; --- linux-3.13.0.orig/drivers/ata/sata_sil.c +++ linux-3.13.0/drivers/ata/sata_sil.c @@ -157,6 +157,7 @@ { "ST380011ASL", SIL_QUIRK_MOD15WRITE }, { "ST3120022ASL", SIL_QUIRK_MOD15WRITE }, { "ST3160021ASL", SIL_QUIRK_MOD15WRITE }, + { "TOSHIBA MK2561GSYN", SIL_QUIRK_MOD15WRITE }, { "Maxtor 4D060H3", SIL_QUIRK_UDMA5MAX }, { } }; --- linux-3.13.0.orig/drivers/base/firmware_class.c +++ linux-3.13.0/drivers/base/firmware_class.c @@ -1541,6 +1541,7 @@ switch (mode) { case PM_HIBERNATION_PREPARE: case PM_SUSPEND_PREPARE: + case PM_RESTORE_PREPARE: kill_requests_without_uevent(); device_cache_fw_images(); break; --- linux-3.13.0.orig/drivers/block/aoe/aoecmd.c +++ linux-3.13.0/drivers/block/aoe/aoecmd.c @@ -905,7 +905,7 @@ /* Non-zero page count for non-head members of * compound pages is no longer allowed by the kernel. */ - page = compound_trans_head(bv->bv_page); + page = compound_head(bv->bv_page); atomic_inc(&page->_count); } } @@ -918,7 +918,7 @@ int i; bio_for_each_segment(bv, bio, i) { - page = compound_trans_head(bv->bv_page); + page = compound_head(bv->bv_page); atomic_dec(&page->_count); } } --- linux-3.13.0.orig/drivers/block/floppy.c +++ linux-3.13.0/drivers/block/floppy.c @@ -3053,7 +3053,10 @@ int ret; while (ptr) { - ret = copy_to_user(param, ptr, sizeof(*ptr)); + struct floppy_raw_cmd cmd = *ptr; + cmd.next = NULL; + cmd.kernel_data = NULL; + ret = copy_to_user(param, &cmd, sizeof(cmd)); if (ret) return -EFAULT; param += sizeof(struct floppy_raw_cmd); @@ -3107,10 +3110,11 @@ return -ENOMEM; *rcmd = ptr; ret = copy_from_user(ptr, param, sizeof(*ptr)); - if (ret) - return -EFAULT; ptr->next = NULL; ptr->buffer_length = 0; + ptr->kernel_data = NULL; + if (ret) + return -EFAULT; param += sizeof(struct floppy_raw_cmd); if (ptr->cmd_count > 33) /* the command may now also take up the space @@ -3126,7 +3130,6 @@ for (i = 0; i < 16; i++) ptr->reply[i] = 0; ptr->resultcode = 0; - ptr->kernel_data = NULL; if (ptr->flags & (FD_RAW_READ | FD_RAW_WRITE)) { if (ptr->length <= 0) --- linux-3.13.0.orig/drivers/block/loop.c +++ linux-3.13.0/drivers/block/loop.c @@ -691,6 +691,24 @@ return i && S_ISBLK(i->i_mode) && MAJOR(i->i_rdev) == LOOP_MAJOR; } +/* + * for AUFS + * no get/put for file. + */ +struct file *loop_backing_file(struct super_block *sb) +{ + struct file *ret; + struct loop_device *l; + + ret = NULL; + if (MAJOR(sb->s_dev) == LOOP_MAJOR) { + l = sb->s_bdev->bd_disk->private_data; + ret = l->lo_backing_file; + } + return ret; +} +EXPORT_SYMBOL(loop_backing_file); + /* loop sysfs attributes */ static ssize_t loop_attr_show(struct device *dev, char *page, --- linux-3.13.0.orig/drivers/block/mtip32xx/mtip32xx.c +++ linux-3.13.0/drivers/block/mtip32xx/mtip32xx.c @@ -231,38 +231,45 @@ void *data, int status) { - struct mtip_cmd *command; + struct mtip_cmd *cmd; struct driver_data *dd = data; - int cb_status = status ? -EIO : 0; + int unaligned, cb_status = status ? -EIO : 0; + void (*func)(void *, int); if (unlikely(!dd) || unlikely(!port)) return; - command = &port->commands[tag]; + cmd = &port->commands[tag]; if (unlikely(status == PORT_IRQ_TF_ERR)) { dev_warn(&port->dd->pdev->dev, "Command tag %d failed due to TFE\n", tag); } + /* Clear the active flag */ + atomic_set(&port->commands[tag].active, 0); + /* Upper layer callback */ - if (likely(command->async_callback)) - command->async_callback(command->async_data, cb_status); + func = cmd->async_callback; + if (likely(func && cmpxchg(&cmd->async_callback, func, 0) == func)) { - command->async_callback = NULL; - command->comp_func = NULL; + /* Unmap the DMA scatter list entries */ + dma_unmap_sg(&dd->pdev->dev, + cmd->sg, + cmd->scatter_ents, + cmd->direction); - /* Unmap the DMA scatter list entries */ - dma_unmap_sg(&dd->pdev->dev, - command->sg, - command->scatter_ents, - command->direction); + func(cmd->async_data, cb_status); + unaligned = cmd->unaligned; - /* Clear the allocated and active bits for the command */ - atomic_set(&port->commands[tag].active, 0); - release_slot(port, tag); + /* Clear the allocated bit for the command */ + release_slot(port, tag); - up(&port->cmd_slot); + if (unlikely(unaligned)) + up(&port->cmd_slot_unal); + else + up(&port->cmd_slot); + } } /* @@ -639,11 +646,12 @@ { struct mtip_port *port = (struct mtip_port *) data; struct host_to_dev_fis *fis; - struct mtip_cmd *command; - int tag, cmdto_cnt = 0; + struct mtip_cmd *cmd; + int unaligned, tag, cmdto_cnt = 0; unsigned int bit, group; unsigned int num_command_slots; unsigned long to, tagaccum[SLOTBITS_IN_LONGS]; + void (*func)(void *, int); if (unlikely(!port)) return; @@ -673,8 +681,8 @@ group = tag >> 5; bit = tag & 0x1F; - command = &port->commands[tag]; - fis = (struct host_to_dev_fis *) command->command; + cmd = &port->commands[tag]; + fis = (struct host_to_dev_fis *) cmd->command; set_bit(tag, tagaccum); cmdto_cnt++; @@ -688,27 +696,30 @@ */ writel(1 << bit, port->completed[group]); - /* Call the async completion callback. */ - if (likely(command->async_callback)) - command->async_callback(command->async_data, - -EIO); - command->async_callback = NULL; - command->comp_func = NULL; - - /* Unmap the DMA scatter list entries */ - dma_unmap_sg(&port->dd->pdev->dev, - command->sg, - command->scatter_ents, - command->direction); - - /* - * Clear the allocated bit and active tag for the - * command. - */ + /* Clear the active flag for the command */ atomic_set(&port->commands[tag].active, 0); - release_slot(port, tag); - up(&port->cmd_slot); + func = cmd->async_callback; + if (func && + cmpxchg(&cmd->async_callback, func, 0) == func) { + + /* Unmap the DMA scatter list entries */ + dma_unmap_sg(&port->dd->pdev->dev, + cmd->sg, + cmd->scatter_ents, + cmd->direction); + + func(cmd->async_data, -EIO); + unaligned = cmd->unaligned; + + /* Clear the allocated bit for the command. */ + release_slot(port, tag); + + if (unaligned) + up(&port->cmd_slot_unal); + else + up(&port->cmd_slot); + } } } @@ -4145,6 +4156,7 @@ blk_queue_max_hw_sectors(dd->queue, 0xffff); blk_queue_max_segment_size(dd->queue, 0x400000); blk_queue_io_min(dd->queue, 4096); + blk_queue_bounce_limit(dd->queue, dd->pdev->dma_mask); /* * write back cache is not supported in the device. FUA depends on --- linux-3.13.0.orig/drivers/block/nbd.c +++ linux-3.13.0/drivers/block/nbd.c @@ -57,7 +57,7 @@ static unsigned int nbds_max = 16; static struct nbd_device *nbd_dev; -static int max_part; +static int max_part = 15; /* * Use just one lock (or at most 1 per NIC). Two arguments for this: --- linux-3.13.0.orig/drivers/block/nvme-core.c +++ linux-3.13.0/drivers/block/nvme-core.c @@ -46,7 +46,6 @@ #define NVME_Q_DEPTH 1024 #define SQ_SIZE(depth) (depth * sizeof(struct nvme_command)) #define CQ_SIZE(depth) (depth * sizeof(struct nvme_completion)) -#define NVME_MINORS 64 #define ADMIN_TIMEOUT (60 * HZ) static int nvme_major; @@ -58,6 +57,17 @@ static DEFINE_SPINLOCK(dev_list_lock); static LIST_HEAD(dev_list); static struct task_struct *nvme_thread; +static struct workqueue_struct *nvme_workq; + +static void nvme_reset_failed_dev(struct work_struct *ws); + +struct async_cmd_info { + struct kthread_work work; + struct kthread_worker *worker; + u32 result; + int status; + void *ctx; +}; /* * An NVM Express queue. Each device has at least two (one for admin @@ -66,6 +76,7 @@ struct nvme_queue { struct device *q_dmadev; struct nvme_dev *dev; + char irqname[24]; /* nvme4294967295-65535\0 */ spinlock_t q_lock; struct nvme_command *sq_cmds; volatile struct nvme_completion *cqes; @@ -80,9 +91,11 @@ u16 sq_head; u16 sq_tail; u16 cq_head; + u16 qid; u8 cq_phase; u8 cqe_seen; u8 q_suspended; + struct async_cmd_info cmdinfo; unsigned long cmdid_data[]; }; @@ -97,6 +110,7 @@ BUILD_BUG_ON(sizeof(struct nvme_delete_queue) != 64); BUILD_BUG_ON(sizeof(struct nvme_features) != 64); BUILD_BUG_ON(sizeof(struct nvme_format_cmd) != 64); + BUILD_BUG_ON(sizeof(struct nvme_abort_cmd) != 64); BUILD_BUG_ON(sizeof(struct nvme_command) != 64); BUILD_BUG_ON(sizeof(struct nvme_id_ctrl) != 4096); BUILD_BUG_ON(sizeof(struct nvme_id_ns) != 4096); @@ -111,6 +125,7 @@ nvme_completion_fn fn; void *ctx; unsigned long timeout; + int aborted; }; static struct nvme_cmd_info *nvme_cmd_info(struct nvme_queue *nvmeq) @@ -154,6 +169,7 @@ info[cmdid].fn = handler; info[cmdid].ctx = ctx; info[cmdid].timeout = jiffies + timeout; + info[cmdid].aborted = 0; return cmdid; } @@ -172,6 +188,7 @@ #define CMD_CTX_COMPLETED (0x310 + CMD_CTX_BASE) #define CMD_CTX_INVALID (0x314 + CMD_CTX_BASE) #define CMD_CTX_FLUSH (0x318 + CMD_CTX_BASE) +#define CMD_CTX_ABORT (0x31C + CMD_CTX_BASE) static void special_completion(struct nvme_dev *dev, void *ctx, struct nvme_completion *cqe) @@ -180,6 +197,10 @@ return; if (ctx == CMD_CTX_FLUSH) return; + if (ctx == CMD_CTX_ABORT) { + ++dev->abort_limit; + return; + } if (ctx == CMD_CTX_COMPLETED) { dev_warn(&dev->pci_dev->dev, "completed id %d twice on queue %d\n", @@ -196,6 +217,15 @@ dev_warn(&dev->pci_dev->dev, "Unknown special completion %p\n", ctx); } +static void async_completion(struct nvme_dev *dev, void *ctx, + struct nvme_completion *cqe) +{ + struct async_cmd_info *cmdinfo = ctx; + cmdinfo->result = le32_to_cpup(&cqe->result); + cmdinfo->status = le16_to_cpup(&cqe->status) >> 1; + queue_kthread_work(cmdinfo->worker, &cmdinfo->work); +} + /* * Called with local interrupts disabled and the q_lock held. May not sleep. */ @@ -775,7 +805,7 @@ if (head == nvmeq->cq_head && phase == nvmeq->cq_phase) return 0; - writel(head, nvmeq->q_db + (1 << nvmeq->dev->db_stride)); + writel(head, nvmeq->q_db + nvmeq->dev->db_stride); nvmeq->cq_head = head; nvmeq->cq_phase = phase; @@ -886,12 +916,34 @@ return cmdinfo.status; } +static int nvme_submit_async_cmd(struct nvme_queue *nvmeq, + struct nvme_command *cmd, + struct async_cmd_info *cmdinfo, unsigned timeout) +{ + int cmdid; + + cmdid = alloc_cmdid_killable(nvmeq, cmdinfo, async_completion, timeout); + if (cmdid < 0) + return cmdid; + cmdinfo->status = -EINTR; + cmd->common.command_id = cmdid; + nvme_submit_cmd(nvmeq, cmd); + return 0; +} + int nvme_submit_admin_cmd(struct nvme_dev *dev, struct nvme_command *cmd, u32 *result) { return nvme_submit_sync_cmd(dev->queues[0], cmd, result, ADMIN_TIMEOUT); } +static int nvme_submit_admin_cmd_async(struct nvme_dev *dev, + struct nvme_command *cmd, struct async_cmd_info *cmdinfo) +{ + return nvme_submit_async_cmd(dev->queues[0], cmd, cmdinfo, + ADMIN_TIMEOUT); +} + static int adapter_delete_queue(struct nvme_dev *dev, u8 opcode, u16 id) { int status; @@ -1002,6 +1054,56 @@ } /** + * nvme_abort_cmd - Attempt aborting a command + * @cmdid: Command id of a timed out IO + * @queue: The queue with timed out IO + * + * Schedule controller reset if the command was already aborted once before and + * still hasn't been returned to the driver, or if this is the admin queue. + */ +static void nvme_abort_cmd(int cmdid, struct nvme_queue *nvmeq) +{ + int a_cmdid; + struct nvme_command cmd; + struct nvme_dev *dev = nvmeq->dev; + struct nvme_cmd_info *info = nvme_cmd_info(nvmeq); + + if (!nvmeq->qid || info[cmdid].aborted) { + if (work_busy(&dev->reset_work)) + return; + list_del_init(&dev->node); + dev_warn(&dev->pci_dev->dev, + "I/O %d QID %d timeout, reset controller\n", cmdid, + nvmeq->qid); + PREPARE_WORK(&dev->reset_work, nvme_reset_failed_dev); + queue_work(nvme_workq, &dev->reset_work); + return; + } + + if (!dev->abort_limit) + return; + + a_cmdid = alloc_cmdid(dev->queues[0], CMD_CTX_ABORT, special_completion, + ADMIN_TIMEOUT); + if (a_cmdid < 0) + return; + + memset(&cmd, 0, sizeof(cmd)); + cmd.abort.opcode = nvme_admin_abort_cmd; + cmd.abort.cid = cmdid; + cmd.abort.sqid = cpu_to_le16(nvmeq->qid); + cmd.abort.command_id = a_cmdid; + + --dev->abort_limit; + info[cmdid].aborted = 1; + info[cmdid].timeout = jiffies + ADMIN_TIMEOUT; + + dev_warn(nvmeq->q_dmadev, "Aborting I/O %d QID %d\n", cmdid, + nvmeq->qid); + nvme_submit_cmd(dev->queues[0], &cmd); +} + +/** * nvme_cancel_ios - Cancel outstanding I/Os * @queue: The queue to cancel I/Os on * @timeout: True to only cancel I/Os which have timed out @@ -1024,7 +1126,12 @@ continue; if (info[cmdid].ctx == CMD_CTX_CANCELLED) continue; - dev_warn(nvmeq->q_dmadev, "Cancelling I/O %d\n", cmdid); + if (timeout && nvmeq->dev->initialized) { + nvme_abort_cmd(cmdid, nvmeq); + continue; + } + dev_warn(nvmeq->q_dmadev, "Cancelling I/O %d QID %d\n", cmdid, + nvmeq->qid); ctx = cancel_cmdid(nvmeq, cmdid, &fn); fn(nvmeq->dev, ctx, &cqe); } @@ -1046,26 +1153,31 @@ kfree(nvmeq); } -static void nvme_free_queues(struct nvme_dev *dev) +static void nvme_free_queues(struct nvme_dev *dev, int lowest) { int i; - for (i = dev->queue_count - 1; i >= 0; i--) { + for (i = dev->queue_count - 1; i >= lowest; i--) { nvme_free_queue(dev->queues[i]); dev->queue_count--; dev->queues[i] = NULL; } } -static void nvme_disable_queue(struct nvme_dev *dev, int qid) +/** + * nvme_suspend_queue - put queue into suspended state + * @nvmeq - queue to suspend + * + * Returns 1 if already suspended, 0 otherwise. + */ +static int nvme_suspend_queue(struct nvme_queue *nvmeq) { - struct nvme_queue *nvmeq = dev->queues[qid]; - int vector = dev->entry[nvmeq->cq_vector].vector; + int vector = nvmeq->dev->entry[nvmeq->cq_vector].vector; spin_lock_irq(&nvmeq->q_lock); if (nvmeq->q_suspended) { spin_unlock_irq(&nvmeq->q_lock); - return; + return 1; } nvmeq->q_suspended = 1; spin_unlock_irq(&nvmeq->q_lock); @@ -1073,18 +1185,35 @@ irq_set_affinity_hint(vector, NULL); free_irq(vector, nvmeq); - /* Don't tell the adapter to delete the admin queue */ - if (qid) { - adapter_delete_sq(dev, qid); - adapter_delete_cq(dev, qid); - } + return 0; +} +static void nvme_clear_queue(struct nvme_queue *nvmeq) +{ spin_lock_irq(&nvmeq->q_lock); nvme_process_cq(nvmeq); nvme_cancel_ios(nvmeq, false); spin_unlock_irq(&nvmeq->q_lock); } +static void nvme_disable_queue(struct nvme_dev *dev, int qid) +{ + struct nvme_queue *nvmeq = dev->queues[qid]; + + if (!nvmeq) + return; + if (nvme_suspend_queue(nvmeq)) + return; + + /* Don't tell the adapter to delete the admin queue. + * Don't tell a removed adapter to delete IO queues. */ + if (qid && readl(&dev->bar->csts) != -1) { + adapter_delete_sq(dev, qid); + adapter_delete_cq(dev, qid); + } + nvme_clear_queue(nvmeq); +} + static struct nvme_queue *nvme_alloc_queue(struct nvme_dev *dev, int qid, int depth, int vector) { @@ -1107,15 +1236,18 @@ nvmeq->q_dmadev = dmadev; nvmeq->dev = dev; + snprintf(nvmeq->irqname, sizeof(nvmeq->irqname), "nvme%dq%d", + dev->instance, qid); spin_lock_init(&nvmeq->q_lock); nvmeq->cq_head = 0; nvmeq->cq_phase = 1; init_waitqueue_head(&nvmeq->sq_full); init_waitqueue_entry(&nvmeq->sq_cong_wait, nvme_thread); bio_list_init(&nvmeq->sq_cong); - nvmeq->q_db = &dev->dbs[qid << (dev->db_stride + 1)]; + nvmeq->q_db = &dev->dbs[qid * 2 * dev->db_stride]; nvmeq->q_depth = depth; nvmeq->cq_vector = vector; + nvmeq->qid = qid; nvmeq->q_suspended = 1; dev->queue_count++; @@ -1134,11 +1266,10 @@ { if (use_threaded_interrupts) return request_threaded_irq(dev->entry[nvmeq->cq_vector].vector, - nvme_irq_check, nvme_irq, - IRQF_DISABLED | IRQF_SHARED, + nvme_irq_check, nvme_irq, IRQF_SHARED, name, nvmeq); return request_irq(dev->entry[nvmeq->cq_vector].vector, nvme_irq, - IRQF_DISABLED | IRQF_SHARED, name, nvmeq); + IRQF_SHARED, name, nvmeq); } static void nvme_init_queue(struct nvme_queue *nvmeq, u16 qid) @@ -1149,7 +1280,7 @@ nvmeq->sq_tail = 0; nvmeq->cq_head = 0; nvmeq->cq_phase = 1; - nvmeq->q_db = &dev->dbs[qid << (dev->db_stride + 1)]; + nvmeq->q_db = &dev->dbs[qid * 2 * dev->db_stride]; memset(nvmeq->cmdid_data, 0, extra); memset((void *)nvmeq->cqes, 0, CQ_SIZE(nvmeq->q_depth)); nvme_cancel_ios(nvmeq, false); @@ -1169,13 +1300,13 @@ if (result < 0) goto release_cq; - result = queue_request_irq(dev, nvmeq, "nvme"); + result = queue_request_irq(dev, nvmeq, nvmeq->irqname); if (result < 0) goto release_sq; - spin_lock(&nvmeq->q_lock); + spin_lock_irq(&nvmeq->q_lock); nvme_init_queue(nvmeq, qid); - spin_unlock(&nvmeq->q_lock); + spin_unlock_irq(&nvmeq->q_lock); return result; @@ -1287,13 +1418,13 @@ if (result) return result; - result = queue_request_irq(dev, nvmeq, "nvme admin"); + result = queue_request_irq(dev, nvmeq, nvmeq->irqname); if (result) return result; - spin_lock(&nvmeq->q_lock); + spin_lock_irq(&nvmeq->q_lock); nvme_init_queue(nvmeq, 0); - spin_unlock(&nvmeq->q_lock); + spin_unlock_irq(&nvmeq->q_lock); return result; } @@ -1569,10 +1700,47 @@ } } +#ifdef CONFIG_COMPAT +static int nvme_compat_ioctl(struct block_device *bdev, fmode_t mode, + unsigned int cmd, unsigned long arg) +{ + struct nvme_ns *ns = bdev->bd_disk->private_data; + + switch (cmd) { + case SG_IO: + return nvme_sg_io32(ns, arg); + } + return nvme_ioctl(bdev, mode, cmd, arg); +} +#else +#define nvme_compat_ioctl NULL +#endif + +static int nvme_open(struct block_device *bdev, fmode_t mode) +{ + struct nvme_ns *ns = bdev->bd_disk->private_data; + struct nvme_dev *dev = ns->dev; + + kref_get(&dev->kref); + return 0; +} + +static void nvme_free_dev(struct kref *kref); + +static void nvme_release(struct gendisk *disk, fmode_t mode) +{ + struct nvme_ns *ns = disk->private_data; + struct nvme_dev *dev = ns->dev; + + kref_put(&dev->kref, nvme_free_dev); +} + static const struct block_device_operations nvme_fops = { .owner = THIS_MODULE, .ioctl = nvme_ioctl, - .compat_ioctl = nvme_ioctl, + .compat_ioctl = nvme_compat_ioctl, + .open = nvme_open, + .release = nvme_release, }; static void nvme_resubmit_bios(struct nvme_queue *nvmeq) @@ -1596,13 +1764,25 @@ static int nvme_kthread(void *data) { - struct nvme_dev *dev; + struct nvme_dev *dev, *next; while (!kthread_should_stop()) { set_current_state(TASK_INTERRUPTIBLE); spin_lock(&dev_list_lock); - list_for_each_entry(dev, &dev_list, node) { + list_for_each_entry_safe(dev, next, &dev_list, node) { int i; + if (readl(&dev->bar->csts) & NVME_CSTS_CFS && + dev->initialized) { + if (work_busy(&dev->reset_work)) + continue; + list_del_init(&dev->node); + dev_warn(&dev->pci_dev->dev, + "Failed status, reset controller\n"); + PREPARE_WORK(&dev->reset_work, + nvme_reset_failed_dev); + queue_work(nvme_workq, &dev->reset_work); + continue; + } for (i = 0; i < dev->queue_count; i++) { struct nvme_queue *nvmeq = dev->queues[i]; if (!nvmeq) @@ -1623,33 +1803,6 @@ return 0; } -static DEFINE_IDA(nvme_index_ida); - -static int nvme_get_ns_idx(void) -{ - int index, error; - - do { - if (!ida_pre_get(&nvme_index_ida, GFP_KERNEL)) - return -1; - - spin_lock(&dev_list_lock); - error = ida_get_new(&nvme_index_ida, &index); - spin_unlock(&dev_list_lock); - } while (error == -EAGAIN); - - if (error) - index = -1; - return index; -} - -static void nvme_put_ns_idx(int index) -{ - spin_lock(&dev_list_lock); - ida_remove(&nvme_index_ida, index); - spin_unlock(&dev_list_lock); -} - static void nvme_config_discard(struct nvme_ns *ns) { u32 logical_block_size = queue_logical_block_size(ns->queue); @@ -1683,7 +1836,7 @@ ns->dev = dev; ns->queue->queuedata = ns; - disk = alloc_disk(NVME_MINORS); + disk = alloc_disk(0); if (!disk) goto out_free_queue; ns->ns_id = nsid; @@ -1696,12 +1849,12 @@ blk_queue_max_hw_sectors(ns->queue, dev->max_hw_sectors); disk->major = nvme_major; - disk->minors = NVME_MINORS; - disk->first_minor = NVME_MINORS * nvme_get_ns_idx(); + disk->first_minor = 0; disk->fops = &nvme_fops; disk->private_data = ns; disk->queue = ns->queue; disk->driverfs_dev = &dev->pci_dev->dev; + disk->flags = GENHD_FL_EXT_DEVT; sprintf(disk->disk_name, "nvme%dn%d", dev->instance, nsid); set_capacity(disk, le64_to_cpup(&id->nsze) << (ns->lba_shift - 9)); @@ -1717,15 +1870,6 @@ return NULL; } -static void nvme_ns_free(struct nvme_ns *ns) -{ - int index = ns->disk->first_minor / NVME_MINORS; - put_disk(ns->disk); - nvme_put_ns_idx(index); - blk_cleanup_queue(ns->queue); - kfree(ns); -} - static int set_queue_count(struct nvme_dev *dev, int count) { int status; @@ -1741,11 +1885,12 @@ static size_t db_bar_size(struct nvme_dev *dev, unsigned nr_io_queues) { - return 4096 + ((nr_io_queues + 1) << (dev->db_stride + 3)); + return 4096 + ((nr_io_queues + 1) * 8 * dev->db_stride); } static int nvme_setup_io_queues(struct nvme_dev *dev) { + struct nvme_queue *adminq = dev->queues[0]; struct pci_dev *pdev = dev->pci_dev; int result, cpu, i, vecs, nr_io_queues, size, q_depth; @@ -1772,7 +1917,7 @@ } /* Deregister the admin queue's interrupt */ - free_irq(dev->entry[0].vector, dev->queues[0]); + free_irq(dev->entry[0].vector, adminq); vecs = nr_io_queues; for (i = 0; i < vecs; i++) @@ -1810,9 +1955,9 @@ */ nr_io_queues = vecs; - result = queue_request_irq(dev, dev->queues[0], "nvme admin"); + result = queue_request_irq(dev, adminq, adminq->irqname); if (result) { - dev->queues[0]->q_suspended = 1; + adminq->q_suspended = 1; goto free_queues; } @@ -1821,9 +1966,9 @@ for (i = dev->queue_count - 1; i > nr_io_queues; i--) { struct nvme_queue *nvmeq = dev->queues[i]; - spin_lock(&nvmeq->q_lock); + spin_lock_irq(&nvmeq->q_lock); nvme_cancel_ios(nvmeq, false); - spin_unlock(&nvmeq->q_lock); + spin_unlock_irq(&nvmeq->q_lock); nvme_free_queue(nvmeq); dev->queue_count--; @@ -1864,7 +2009,7 @@ return 0; free_queues: - nvme_free_queues(dev); + nvme_free_queues(dev, 1); return result; } @@ -1876,6 +2021,7 @@ */ static int nvme_dev_add(struct nvme_dev *dev) { + struct pci_dev *pdev = dev->pci_dev; int res; unsigned nn, i; struct nvme_ns *ns; @@ -1885,8 +2031,7 @@ dma_addr_t dma_addr; int shift = NVME_CAP_MPSMIN(readq(&dev->bar->cap)) + 12; - mem = dma_alloc_coherent(&dev->pci_dev->dev, 8192, &dma_addr, - GFP_KERNEL); + mem = dma_alloc_coherent(&pdev->dev, 8192, &dma_addr, GFP_KERNEL); if (!mem) return -ENOMEM; @@ -1899,13 +2044,14 @@ ctrl = mem; nn = le32_to_cpup(&ctrl->nn); dev->oncs = le16_to_cpup(&ctrl->oncs); + dev->abort_limit = ctrl->acl + 1; memcpy(dev->serial, ctrl->sn, sizeof(ctrl->sn)); memcpy(dev->model, ctrl->mn, sizeof(ctrl->mn)); memcpy(dev->firmware_rev, ctrl->fr, sizeof(ctrl->fr)); if (ctrl->mdts) dev->max_hw_sectors = 1 << (ctrl->mdts + shift - 9); - if ((dev->pci_dev->vendor == PCI_VENDOR_ID_INTEL) && - (dev->pci_dev->device == 0x0953) && ctrl->vs[3]) + if ((pdev->vendor == PCI_VENDOR_ID_INTEL) && + (pdev->device == 0x0953) && ctrl->vs[3]) dev->stripe_size = 1 << (ctrl->vs[3] + shift); id_ns = mem; @@ -1953,16 +2099,21 @@ dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32))) goto disable; - pci_set_drvdata(pdev, dev); dev->bar = ioremap(pci_resource_start(pdev, 0), 8192); if (!dev->bar) goto disable; - - dev->db_stride = NVME_CAP_STRIDE(readq(&dev->bar->cap)); + if (readl(&dev->bar->csts) == -1) { + result = -ENODEV; + goto unmap; + } + dev->db_stride = 1 << NVME_CAP_STRIDE(readq(&dev->bar->cap)); dev->dbs = ((void __iomem *)dev->bar) + 4096; return 0; + unmap: + iounmap(dev->bar); + dev->bar = NULL; disable: pci_release_regions(pdev); disable_pci: @@ -1980,37 +2131,183 @@ if (dev->bar) { iounmap(dev->bar); dev->bar = NULL; + pci_release_regions(dev->pci_dev); } - pci_release_regions(dev->pci_dev); if (pci_is_enabled(dev->pci_dev)) pci_disable_device(dev->pci_dev); } +struct nvme_delq_ctx { + struct task_struct *waiter; + struct kthread_worker *worker; + atomic_t refcount; +}; + +static void nvme_wait_dq(struct nvme_delq_ctx *dq, struct nvme_dev *dev) +{ + dq->waiter = current; + mb(); + + for (;;) { + set_current_state(TASK_KILLABLE); + if (!atomic_read(&dq->refcount)) + break; + if (!schedule_timeout(ADMIN_TIMEOUT) || + fatal_signal_pending(current)) { + set_current_state(TASK_RUNNING); + + nvme_disable_ctrl(dev, readq(&dev->bar->cap)); + nvme_disable_queue(dev, 0); + + send_sig(SIGKILL, dq->worker->task, 1); + flush_kthread_worker(dq->worker); + return; + } + } + set_current_state(TASK_RUNNING); +} + +static void nvme_put_dq(struct nvme_delq_ctx *dq) +{ + atomic_dec(&dq->refcount); + if (dq->waiter) + wake_up_process(dq->waiter); +} + +static struct nvme_delq_ctx *nvme_get_dq(struct nvme_delq_ctx *dq) +{ + atomic_inc(&dq->refcount); + return dq; +} + +static void nvme_del_queue_end(struct nvme_queue *nvmeq) +{ + struct nvme_delq_ctx *dq = nvmeq->cmdinfo.ctx; + + nvme_clear_queue(nvmeq); + nvme_put_dq(dq); +} + +static int adapter_async_del_queue(struct nvme_queue *nvmeq, u8 opcode, + kthread_work_func_t fn) +{ + struct nvme_command c; + + memset(&c, 0, sizeof(c)); + c.delete_queue.opcode = opcode; + c.delete_queue.qid = cpu_to_le16(nvmeq->qid); + + init_kthread_work(&nvmeq->cmdinfo.work, fn); + return nvme_submit_admin_cmd_async(nvmeq->dev, &c, &nvmeq->cmdinfo); +} + +static void nvme_del_cq_work_handler(struct kthread_work *work) +{ + struct nvme_queue *nvmeq = container_of(work, struct nvme_queue, + cmdinfo.work); + nvme_del_queue_end(nvmeq); +} + +static int nvme_delete_cq(struct nvme_queue *nvmeq) +{ + return adapter_async_del_queue(nvmeq, nvme_admin_delete_cq, + nvme_del_cq_work_handler); +} + +static void nvme_del_sq_work_handler(struct kthread_work *work) +{ + struct nvme_queue *nvmeq = container_of(work, struct nvme_queue, + cmdinfo.work); + int status = nvmeq->cmdinfo.status; + + if (!status) + status = nvme_delete_cq(nvmeq); + if (status) + nvme_del_queue_end(nvmeq); +} + +static int nvme_delete_sq(struct nvme_queue *nvmeq) +{ + return adapter_async_del_queue(nvmeq, nvme_admin_delete_sq, + nvme_del_sq_work_handler); +} + +static void nvme_del_queue_start(struct kthread_work *work) +{ + struct nvme_queue *nvmeq = container_of(work, struct nvme_queue, + cmdinfo.work); + allow_signal(SIGKILL); + if (nvme_delete_sq(nvmeq)) + nvme_del_queue_end(nvmeq); +} + +static void nvme_disable_io_queues(struct nvme_dev *dev) +{ + int i; + DEFINE_KTHREAD_WORKER_ONSTACK(worker); + struct nvme_delq_ctx dq; + struct task_struct *kworker_task = kthread_run(kthread_worker_fn, + &worker, "nvme%d", dev->instance); + + if (IS_ERR(kworker_task)) { + dev_err(&dev->pci_dev->dev, + "Failed to create queue del task\n"); + for (i = dev->queue_count - 1; i > 0; i--) + nvme_disable_queue(dev, i); + return; + } + + dq.waiter = NULL; + atomic_set(&dq.refcount, 0); + dq.worker = &worker; + for (i = dev->queue_count - 1; i > 0; i--) { + struct nvme_queue *nvmeq = dev->queues[i]; + + if (nvme_suspend_queue(nvmeq)) + continue; + nvmeq->cmdinfo.ctx = nvme_get_dq(&dq); + nvmeq->cmdinfo.worker = dq.worker; + init_kthread_work(&nvmeq->cmdinfo.work, nvme_del_queue_start); + queue_kthread_work(dq.worker, &nvmeq->cmdinfo.work); + } + nvme_wait_dq(&dq, dev); + kthread_stop(kworker_task); +} + static void nvme_dev_shutdown(struct nvme_dev *dev) { int i; - for (i = dev->queue_count - 1; i >= 0; i--) - nvme_disable_queue(dev, i); + dev->initialized = 0; spin_lock(&dev_list_lock); list_del_init(&dev->node); spin_unlock(&dev_list_lock); - if (dev->bar) + if (!dev->bar || (dev->bar && readl(&dev->bar->csts) == -1)) { + for (i = dev->queue_count - 1; i >= 0; i--) { + struct nvme_queue *nvmeq = dev->queues[i]; + nvme_suspend_queue(nvmeq); + nvme_clear_queue(nvmeq); + } + } else { + nvme_disable_io_queues(dev); nvme_shutdown_ctrl(dev); + nvme_disable_queue(dev, 0); + } nvme_dev_unmap(dev); } static void nvme_dev_remove(struct nvme_dev *dev) { - struct nvme_ns *ns, *next; + struct nvme_ns *ns; - list_for_each_entry_safe(ns, next, &dev->namespaces, list) { - list_del(&ns->list); - del_gendisk(ns->disk); - nvme_ns_free(ns); + list_for_each_entry(ns, &dev->namespaces, list) { + if (ns->disk->flags & GENHD_FL_UP) + del_gendisk(ns->disk); + if (!blk_queue_dying(ns->queue)) + blk_cleanup_queue(ns->queue); } } @@ -2067,14 +2364,22 @@ spin_unlock(&dev_list_lock); } +static void nvme_free_namespaces(struct nvme_dev *dev) +{ + struct nvme_ns *ns, *next; + + list_for_each_entry_safe(ns, next, &dev->namespaces, list) { + list_del(&ns->list); + put_disk(ns->disk); + kfree(ns); + } +} + static void nvme_free_dev(struct kref *kref) { struct nvme_dev *dev = container_of(kref, struct nvme_dev, kref); - nvme_dev_remove(dev); - nvme_dev_shutdown(dev); - nvme_free_queues(dev); - nvme_release_instance(dev); - nvme_release_prp_pools(dev); + + nvme_free_namespaces(dev); kfree(dev->queues); kfree(dev->entry); kfree(dev); @@ -2138,6 +2443,7 @@ return result; disable: + nvme_disable_queue(dev, 0); spin_lock(&dev_list_lock); list_del_init(&dev->node); spin_unlock(&dev_list_lock); @@ -2146,6 +2452,71 @@ return result; } +static int nvme_remove_dead_ctrl(void *arg) +{ + struct nvme_dev *dev = (struct nvme_dev *)arg; + struct pci_dev *pdev = dev->pci_dev; + + if (pci_get_drvdata(pdev)) + pci_stop_and_remove_bus_device(pdev); + kref_put(&dev->kref, nvme_free_dev); + return 0; +} + +static void nvme_remove_disks(struct work_struct *ws) +{ + int i; + struct nvme_dev *dev = container_of(ws, struct nvme_dev, reset_work); + + nvme_dev_remove(dev); + spin_lock(&dev_list_lock); + for (i = dev->queue_count - 1; i > 0; i--) { + BUG_ON(!dev->queues[i] || !dev->queues[i]->q_suspended); + nvme_free_queue(dev->queues[i]); + dev->queue_count--; + dev->queues[i] = NULL; + } + spin_unlock(&dev_list_lock); +} + +static int nvme_dev_resume(struct nvme_dev *dev) +{ + int ret; + + ret = nvme_dev_start(dev); + if (ret && ret != -EBUSY) + return ret; + if (ret == -EBUSY) { + spin_lock(&dev_list_lock); + PREPARE_WORK(&dev->reset_work, nvme_remove_disks); + queue_work(nvme_workq, &dev->reset_work); + spin_unlock(&dev_list_lock); + } + dev->initialized = 1; + return 0; +} + +static void nvme_dev_reset(struct nvme_dev *dev) +{ + nvme_dev_shutdown(dev); + if (nvme_dev_resume(dev)) { + dev_err(&dev->pci_dev->dev, "Device failed to resume\n"); + kref_get(&dev->kref); + if (IS_ERR(kthread_run(nvme_remove_dead_ctrl, dev, "nvme%d", + dev->instance))) { + dev_err(&dev->pci_dev->dev, + "Failed to start controller remove task\n"); + kref_put(&dev->kref, nvme_free_dev); + } + } +} + +static void nvme_reset_failed_dev(struct work_struct *ws) +{ + struct nvme_dev *dev = container_of(ws, struct nvme_dev, reset_work); + nvme_dev_reset(dev); +} + static int nvme_probe(struct pci_dev *pdev, const struct pci_device_id *id) { int result = -ENOMEM; @@ -2164,8 +2535,9 @@ goto free; INIT_LIST_HEAD(&dev->namespaces); + INIT_WORK(&dev->reset_work, nvme_reset_failed_dev); dev->pci_dev = pdev; - + pci_set_drvdata(pdev, dev); result = nvme_set_instance(dev); if (result) goto free; @@ -2181,6 +2553,7 @@ goto release_pools; } + kref_init(&dev->kref); result = nvme_dev_add(dev); if (result) goto shutdown; @@ -2195,15 +2568,16 @@ if (result) goto remove; - kref_init(&dev->kref); + dev->initialized = 1; return 0; remove: nvme_dev_remove(dev); + nvme_free_namespaces(dev); shutdown: nvme_dev_shutdown(dev); release_pools: - nvme_free_queues(dev); + nvme_free_queues(dev, 0); nvme_release_prp_pools(dev); release: nvme_release_instance(dev); @@ -2214,10 +2588,28 @@ return result; } +static void nvme_shutdown(struct pci_dev *pdev) +{ + struct nvme_dev *dev = pci_get_drvdata(pdev); + nvme_dev_shutdown(dev); +} + static void nvme_remove(struct pci_dev *pdev) { struct nvme_dev *dev = pci_get_drvdata(pdev); + + spin_lock(&dev_list_lock); + list_del_init(&dev->node); + spin_unlock(&dev_list_lock); + + pci_set_drvdata(pdev, NULL); + flush_work(&dev->reset_work); misc_deregister(&dev->miscdev); + nvme_dev_remove(dev); + nvme_dev_shutdown(dev); + nvme_free_queues(dev, 0); + nvme_release_instance(dev); + nvme_release_prp_pools(dev); kref_put(&dev->kref, nvme_free_dev); } @@ -2241,13 +2633,12 @@ { struct pci_dev *pdev = to_pci_dev(dev); struct nvme_dev *ndev = pci_get_drvdata(pdev); - int ret; - ret = nvme_dev_start(ndev); - /* XXX: should remove gendisks if resume fails */ - if (ret) - nvme_free_queues(ndev); - return ret; + if (nvme_dev_resume(ndev) && !work_busy(&ndev->reset_work)) { + PREPARE_WORK(&ndev->reset_work, nvme_reset_failed_dev); + queue_work(nvme_workq, &ndev->reset_work); + } + return 0; } static SIMPLE_DEV_PM_OPS(nvme_dev_pm_ops, nvme_suspend, nvme_resume); @@ -2274,6 +2665,7 @@ .id_table = nvme_id_table, .probe = nvme_probe, .remove = nvme_remove, + .shutdown = nvme_shutdown, .driver = { .pm = &nvme_dev_pm_ops, }, @@ -2288,9 +2680,14 @@ if (IS_ERR(nvme_thread)) return PTR_ERR(nvme_thread); + result = -ENOMEM; + nvme_workq = create_singlethread_workqueue("nvme"); + if (!nvme_workq) + goto kill_kthread; + result = register_blkdev(nvme_major, "nvme"); if (result < 0) - goto kill_kthread; + goto kill_workq; else if (result > 0) nvme_major = result; @@ -2301,6 +2698,8 @@ unregister_blkdev: unregister_blkdev(nvme_major, "nvme"); + kill_workq: + destroy_workqueue(nvme_workq); kill_kthread: kthread_stop(nvme_thread); return result; @@ -2310,6 +2709,7 @@ { pci_unregister_driver(&nvme_driver); unregister_blkdev(nvme_major, "nvme"); + destroy_workqueue(nvme_workq); kthread_stop(nvme_thread); } --- linux-3.13.0.orig/drivers/block/nvme-scsi.c +++ linux-3.13.0/drivers/block/nvme-scsi.c @@ -25,6 +25,7 @@ #include #include #include +#include #include #include #include @@ -3038,6 +3039,152 @@ return retcode; } +#ifdef CONFIG_COMPAT +typedef struct sg_io_hdr32 { + compat_int_t interface_id; /* [i] 'S' for SCSI generic (required) */ + compat_int_t dxfer_direction; /* [i] data transfer direction */ + unsigned char cmd_len; /* [i] SCSI command length ( <= 16 bytes) */ + unsigned char mx_sb_len; /* [i] max length to write to sbp */ + unsigned short iovec_count; /* [i] 0 implies no scatter gather */ + compat_uint_t dxfer_len; /* [i] byte count of data transfer */ + compat_uint_t dxferp; /* [i], [*io] points to data transfer memory + or scatter gather list */ + compat_uptr_t cmdp; /* [i], [*i] points to command to perform */ + compat_uptr_t sbp; /* [i], [*o] points to sense_buffer memory */ + compat_uint_t timeout; /* [i] MAX_UINT->no timeout (unit: millisec) */ + compat_uint_t flags; /* [i] 0 -> default, see SG_FLAG... */ + compat_int_t pack_id; /* [i->o] unused internally (normally) */ + compat_uptr_t usr_ptr; /* [i->o] unused internally */ + unsigned char status; /* [o] scsi status */ + unsigned char masked_status; /* [o] shifted, masked scsi status */ + unsigned char msg_status; /* [o] messaging level data (optional) */ + unsigned char sb_len_wr; /* [o] byte count actually written to sbp */ + unsigned short host_status; /* [o] errors from host adapter */ + unsigned short driver_status; /* [o] errors from software driver */ + compat_int_t resid; /* [o] dxfer_len - actual_transferred */ + compat_uint_t duration; /* [o] time taken by cmd (unit: millisec) */ + compat_uint_t info; /* [o] auxiliary information */ +} sg_io_hdr32_t; /* 64 bytes long (on sparc32) */ + +typedef struct sg_iovec32 { + compat_uint_t iov_base; + compat_uint_t iov_len; +} sg_iovec32_t; + +static int sg_build_iovec(sg_io_hdr_t __user *sgio, void __user *dxferp, u16 iovec_count) +{ + sg_iovec_t __user *iov = (sg_iovec_t __user *) (sgio + 1); + sg_iovec32_t __user *iov32 = dxferp; + int i; + + for (i = 0; i < iovec_count; i++) { + u32 base, len; + + if (get_user(base, &iov32[i].iov_base) || + get_user(len, &iov32[i].iov_len) || + put_user(compat_ptr(base), &iov[i].iov_base) || + put_user(len, &iov[i].iov_len)) + return -EFAULT; + } + + if (put_user(iov, &sgio->dxferp)) + return -EFAULT; + return 0; +} + +int nvme_sg_io32(struct nvme_ns *ns, unsigned long arg) +{ + sg_io_hdr32_t __user *sgio32 = (sg_io_hdr32_t __user *)arg; + sg_io_hdr_t __user *sgio; + u16 iovec_count; + u32 data; + void __user *dxferp; + int err; + int interface_id; + + if (get_user(interface_id, &sgio32->interface_id)) + return -EFAULT; + if (interface_id != 'S') + return -EINVAL; + + if (get_user(iovec_count, &sgio32->iovec_count)) + return -EFAULT; + + { + void __user *top = compat_alloc_user_space(0); + void __user *new = compat_alloc_user_space(sizeof(sg_io_hdr_t) + + (iovec_count * sizeof(sg_iovec_t))); + if (new > top) + return -EINVAL; + + sgio = new; + } + + /* Ok, now construct. */ + if (copy_in_user(&sgio->interface_id, &sgio32->interface_id, + (2 * sizeof(int)) + + (2 * sizeof(unsigned char)) + + (1 * sizeof(unsigned short)) + + (1 * sizeof(unsigned int)))) + return -EFAULT; + + if (get_user(data, &sgio32->dxferp)) + return -EFAULT; + dxferp = compat_ptr(data); + if (iovec_count) { + if (sg_build_iovec(sgio, dxferp, iovec_count)) + return -EFAULT; + } else { + if (put_user(dxferp, &sgio->dxferp)) + return -EFAULT; + } + + { + unsigned char __user *cmdp; + unsigned char __user *sbp; + + if (get_user(data, &sgio32->cmdp)) + return -EFAULT; + cmdp = compat_ptr(data); + + if (get_user(data, &sgio32->sbp)) + return -EFAULT; + sbp = compat_ptr(data); + + if (put_user(cmdp, &sgio->cmdp) || + put_user(sbp, &sgio->sbp)) + return -EFAULT; + } + + if (copy_in_user(&sgio->timeout, &sgio32->timeout, + 3 * sizeof(int))) + return -EFAULT; + + if (get_user(data, &sgio32->usr_ptr)) + return -EFAULT; + if (put_user(compat_ptr(data), &sgio->usr_ptr)) + return -EFAULT; + + err = nvme_sg_io(ns, sgio); + if (err >= 0) { + void __user *datap; + + if (copy_in_user(&sgio32->pack_id, &sgio->pack_id, + sizeof(int)) || + get_user(datap, &sgio->usr_ptr) || + put_user((u32)(unsigned long)datap, + &sgio32->usr_ptr) || + copy_in_user(&sgio32->status, &sgio->status, + (4 * sizeof(unsigned char)) + + (2 * sizeof(unsigned short)) + + (3 * sizeof(int)))) + err = -EFAULT; + } + + return err; +} +#endif + int nvme_sg_get_version_num(int __user *ip) { return put_user(sg_version_num, ip); --- linux-3.13.0.orig/drivers/block/xen-blkfront.c +++ linux-3.13.0/drivers/block/xen-blkfront.c @@ -1356,7 +1356,7 @@ char *type; int len; /* no unplug has been done: do not hook devices != xen vbds */ - if (xen_platform_pci_unplug & XEN_UNPLUG_UNNECESSARY) { + if (xen_has_pv_and_legacy_disk_devices()) { int major; if (!VDEV_IS_EXTENDED(vdevice)) @@ -1904,13 +1904,16 @@ case XenbusStateReconfiguring: case XenbusStateReconfigured: case XenbusStateUnknown: - case XenbusStateClosed: break; case XenbusStateConnected: blkfront_connect(info); break; + case XenbusStateClosed: + if (dev->state == XenbusStateClosed) + break; + /* Missed the backend's Closing state -- fallthrough */ case XenbusStateClosing: blkfront_closing(info); break; @@ -2079,7 +2082,7 @@ if (!xen_domain()) return -ENODEV; - if (xen_hvm_domain() && !xen_platform_pci_unplug) + if (!xen_has_pv_disk_devices()) return -ENODEV; if (register_blkdev(XENVBD_MAJOR, DEV_NAME)) { --- linux-3.13.0.orig/drivers/bluetooth/btusb.c +++ linux-3.13.0/drivers/bluetooth/btusb.c @@ -24,6 +24,7 @@ #include #include #include +#include #include #include @@ -49,6 +50,7 @@ #define BTUSB_WRONG_SCO_MTU 0x40 #define BTUSB_ATH3012 0x80 #define BTUSB_INTEL 0x100 +#define BTUSB_BCM_PATCHRAM 0x800 static const struct usb_device_id btusb_table[] = { /* Generic Bluetooth USB device */ @@ -105,13 +107,20 @@ { USB_DEVICE(0x0b05, 0x17cb) }, { USB_DEVICE(0x04ca, 0x2003) }, { USB_DEVICE(0x0489, 0xe042) }, - { USB_DEVICE(0x413c, 0x8197) }, + { USB_DEVICE(0x13d3, 0x3388), .driver_info = BTUSB_BCM_PATCHRAM }, + { USB_DEVICE(0x13d3, 0x3389), .driver_info = BTUSB_BCM_PATCHRAM }, + { USB_DEVICE(0x413c, 0x8197), .driver_info = BTUSB_BCM_PATCHRAM }, + { USB_DEVICE(0x413c, 0x8143), .driver_info = BTUSB_BCM_PATCHRAM }, + + /* Broadcom BCM43142A0 */ + { USB_DEVICE(0x04ca, 0x2007), .driver_info = BTUSB_BCM_PATCHRAM }, + { USB_DEVICE(0x105b, 0xe065), .driver_info = BTUSB_BCM_PATCHRAM }, /* Foxconn - Hon Hai */ - { USB_VENDOR_AND_INTERFACE_INFO(0x0489, 0xff, 0x01, 0x01) }, + { USB_VENDOR_AND_INTERFACE_INFO(0x0489, 0xff, 0x01, 0x01), .driver_info = BTUSB_BCM_PATCHRAM }, /*Broadcom devices with vendor specific id */ - { USB_VENDOR_AND_INTERFACE_INFO(0x0a5c, 0xff, 0x01, 0x01) }, + { USB_VENDOR_AND_INTERFACE_INFO(0x0a5c, 0xff, 0x01, 0x01), .driver_info = BTUSB_BCM_PATCHRAM }, /* Belkin F8065bf - Broadcom based */ { USB_VENDOR_AND_INTERFACE_INFO(0x050d, 0xff, 0x01, 0x01) }, @@ -1331,6 +1340,72 @@ return 0; } +static int btusb_setup_patchram_packet(struct hci_dev *hdev, u16 opcode, u32 plen, const void *param) +{ + struct sk_buff *skb; + + skb = __hci_cmd_sync(hdev, opcode, plen, param, HCI_INIT_TIMEOUT); + if (IS_ERR(skb)) + return PTR_ERR(skb); + kfree_skb(skb); + return 0; +} + +#define PATCHRAM_NAME_LEN 20 + +static int btusb_setup_patchram(struct hci_dev *hdev) +{ + struct btusb_data *data = hci_get_drvdata(hdev); + struct usb_device *udev = data->udev; + size_t pos = 0; + int err = 0; + char filename[PATCHRAM_NAME_LEN]; + const struct firmware *fw; + u8 val = 0x00; + + snprintf(filename, PATCHRAM_NAME_LEN, "fw-%04x_%04x.hcd", + le16_to_cpu(udev->descriptor.idVendor), + le16_to_cpu(udev->descriptor.idProduct)); + if (request_firmware(&fw, (const char *) filename, &udev->dev) < 0) { + BT_INFO("can't load firmware, may not work correctly"); + return 0; + } + + err = btusb_setup_patchram_packet(hdev, 0x0c03, 1, &val); + if (err) + goto out; + + msleep(300); + err = btusb_setup_patchram_packet(hdev, 0xfc2e, 1, &val); + if (err) + goto out; + + msleep(1000); + while (pos < fw->size) { + size_t len; + len = fw->data[pos + 2] + 3; + if (pos + len > fw->size) { + err = -EINVAL; + goto out; + } + err = btusb_setup_patchram_packet(hdev, le16_to_cpu(*(u16*)(fw->data + pos)), + fw->data[pos + 2] , &fw->data[pos + 3]); + if (err) + goto out; + pos += len; + } + + err = btusb_setup_patchram_packet(hdev, 0x0c03, 1, &val); +out: + release_firmware(fw); + if (err) { + BT_INFO("fail to load firmware"); + return err; + } + BT_INFO("firmware loaded"); + return 0; +} + static int btusb_probe(struct usb_interface *intf, const struct usb_device_id *id) { @@ -1439,6 +1514,9 @@ if (id->driver_info & BTUSB_INTEL) hdev->setup = btusb_setup_intel; + if (id->driver_info & BTUSB_BCM_PATCHRAM) + hdev->setup = btusb_setup_patchram; + /* Interface numbers are hardcoded in the specification */ data->isoc = usb_ifnum_to_if(data->udev, 1); --- linux-3.13.0.orig/drivers/bluetooth/hci_vhci.c +++ linux-3.13.0/drivers/bluetooth/hci_vhci.c @@ -352,7 +352,7 @@ static struct miscdevice vhci_miscdev= { .name = "vhci", .fops = &vhci_fops, - .minor = MISC_DYNAMIC_MINOR, + .minor = VHCI_MINOR, }; static int __init vhci_init(void) @@ -378,3 +378,4 @@ MODULE_VERSION(VERSION); MODULE_LICENSE("GPL"); MODULE_ALIAS("devname:vhci"); +MODULE_ALIAS_MISCDEV(VHCI_MINOR); --- linux-3.13.0.orig/drivers/cdrom/cdrom.c +++ linux-3.13.0/drivers/cdrom/cdrom.c @@ -289,7 +289,7 @@ /* default compatibility mode */ static bool autoclose=1; static bool autoeject; -static bool lockdoor = 1; +static bool lockdoor = 0; /* will we ever get to use this... sigh. */ static bool check_media_type; /* automatically restart mrw format */ --- linux-3.13.0.orig/drivers/char/ipmi/ipmi_bt_sm.c +++ linux-3.13.0/drivers/char/ipmi/ipmi_bt_sm.c @@ -201,7 +201,7 @@ } bt->state = BT_STATE_IDLE; /* start here */ bt->complete = BT_STATE_IDLE; /* end here */ - bt->BT_CAP_req2rsp = BT_NORMAL_TIMEOUT * 1000000; + bt->BT_CAP_req2rsp = BT_NORMAL_TIMEOUT * USEC_PER_SEC; bt->BT_CAP_retries = BT_NORMAL_RETRY_LIMIT; /* BT_CAP_outreqs == zero is a flag to read BT Capabilities */ return 3; /* We claim 3 bytes of space; ought to check SPMI table */ @@ -352,7 +352,7 @@ static inline int read_all_bytes(struct si_sm_data *bt) { - unsigned char i; + unsigned int i; /* * length is "framing info", minimum = 4: NetFn, Seq, Cmd, cCode. @@ -613,7 +613,7 @@ HOST2BMC(42); /* Sequence number */ HOST2BMC(3); /* Cmd == Soft reset */ BT_CONTROL(BT_H2B_ATN); - bt->timeout = BT_RESET_DELAY * 1000000; + bt->timeout = BT_RESET_DELAY * USEC_PER_SEC; BT_STATE_CHANGE(BT_STATE_RESET3, SI_SM_CALL_WITH_DELAY); @@ -651,14 +651,14 @@ bt_init_data(bt, bt->io); if ((i == 8) && !BT_CAP[2]) { bt->BT_CAP_outreqs = BT_CAP[3]; - bt->BT_CAP_req2rsp = BT_CAP[6] * 1000000; + bt->BT_CAP_req2rsp = BT_CAP[6] * USEC_PER_SEC; bt->BT_CAP_retries = BT_CAP[7]; } else printk(KERN_WARNING "IPMI BT: using default values\n"); if (!bt->BT_CAP_outreqs) bt->BT_CAP_outreqs = 1; printk(KERN_WARNING "IPMI BT: req2rsp=%ld secs retries=%d\n", - bt->BT_CAP_req2rsp / 1000000L, bt->BT_CAP_retries); + bt->BT_CAP_req2rsp / USEC_PER_SEC, bt->BT_CAP_retries); bt->timeout = bt->BT_CAP_req2rsp; return SI_SM_CALL_WITHOUT_DELAY; --- linux-3.13.0.orig/drivers/char/ipmi/ipmi_kcs_sm.c +++ linux-3.13.0/drivers/char/ipmi/ipmi_kcs_sm.c @@ -118,8 +118,8 @@ #define MAX_KCS_WRITE_SIZE IPMI_MAX_MSG_LENGTH /* Timeouts in microseconds. */ -#define IBF_RETRY_TIMEOUT 5000000 -#define OBF_RETRY_TIMEOUT 5000000 +#define IBF_RETRY_TIMEOUT (5*USEC_PER_SEC) +#define OBF_RETRY_TIMEOUT (5*USEC_PER_SEC) #define MAX_ERROR_RETRIES 10 #define ERROR0_OBF_WAIT_JIFFIES (2*HZ) --- linux-3.13.0.orig/drivers/char/ipmi/ipmi_si_intf.c +++ linux-3.13.0/drivers/char/ipmi/ipmi_si_intf.c @@ -1358,7 +1358,7 @@ if (info->si_type == SI_BT) { rv = request_irq(info->irq, si_bt_irq_handler, - IRQF_SHARED | IRQF_DISABLED, + IRQF_SHARED, DEVICE_NAME, info); if (!rv) @@ -1368,7 +1368,7 @@ } else rv = request_irq(info->irq, si_irq_handler, - IRQF_SHARED | IRQF_DISABLED, + IRQF_SHARED, DEVICE_NAME, info); if (rv) { @@ -1849,11 +1849,15 @@ info->irq_setup = std_irq_setup; info->slave_addr = ipmb; - if (!add_smi(info)) { - if (try_smi_init(info)) - cleanup_one_si(info); - } else { + rv = add_smi(info); + if (rv) { kfree(info); + goto out; + } + rv = try_smi_init(info); + if (rv) { + cleanup_one_si(info); + goto out; } } else { /* remove */ @@ -2067,6 +2071,7 @@ static int try_init_spmi(struct SPMITable *spmi) { struct smi_info *info; + int rv; if (spmi->IPMIlegacy != 1) { printk(KERN_INFO PFX "Bad SPMI legacy %d\n", spmi->IPMIlegacy); @@ -2141,10 +2146,11 @@ info->io.addr_data, info->io.regsize, info->io.regspacing, info->irq); - if (add_smi(info)) + rv = add_smi(info); + if (rv) kfree(info); - return 0; + return rv; } static void spmi_find_bmc(void) @@ -2178,6 +2184,7 @@ acpi_handle handle; acpi_status status; unsigned long long tmp; + int rv; acpi_dev = pnp_acpi_device(dev); if (!acpi_dev) @@ -2259,10 +2266,11 @@ res, info->io.regsize, info->io.regspacing, info->irq); - if (add_smi(info)) - goto err_free; + rv = add_smi(info); + if (rv) + kfree(info); - return 0; + return rv; err_free: kfree(info); @@ -2566,16 +2574,20 @@ &pdev->resource[0], info->io.regsize, info->io.regspacing, info->irq); - if (add_smi(info)) + rv = add_smi(info); + if (rv) { kfree(info); + pci_disable_device(pdev); + } - return 0; + return rv; } static void ipmi_pci_remove(struct pci_dev *pdev) { struct smi_info *info = pci_get_drvdata(pdev); cleanup_one_si(info); + pci_disable_device(pdev); } static struct pci_device_id ipmi_pci_devices[] = { @@ -2670,9 +2682,10 @@ dev_set_drvdata(&dev->dev, info); - if (add_smi(info)) { + ret = add_smi(info); + if (ret) { kfree(info); - return -EBUSY; + return ret; } #endif return 0; @@ -2711,6 +2724,7 @@ static int ipmi_parisc_probe(struct parisc_device *dev) { struct smi_info *info; + int rv; info = smi_info_alloc(); @@ -2736,9 +2750,10 @@ dev_set_drvdata(&dev->dev, info); - if (add_smi(info)) { + rv = add_smi(info); + if (rv) { kfree(info); - return -EBUSY; + return rv; } return 0; @@ -2773,7 +2788,7 @@ smi_result == SI_SM_CALL_WITH_TICK_DELAY) { schedule_timeout_uninterruptible(1); smi_result = smi_info->handlers->event( - smi_info->si_sm, 100); + smi_info->si_sm, jiffies_to_usecs(1)); } else if (smi_result == SI_SM_CALL_WITHOUT_DELAY) { smi_result = smi_info->handlers->event( smi_info->si_sm, 0); --- linux-3.13.0.orig/drivers/char/ipmi/ipmi_smic_sm.c +++ linux-3.13.0/drivers/char/ipmi/ipmi_smic_sm.c @@ -80,7 +80,7 @@ #define SMIC_MAX_ERROR_RETRIES 3 /* Timeouts in microseconds. */ -#define SMIC_RETRY_TIMEOUT 2000000 +#define SMIC_RETRY_TIMEOUT (2*USEC_PER_SEC) /* SMIC Flags Register Bits */ #define SMIC_RX_DATA_READY 0x80 --- linux-3.13.0.orig/drivers/char/raw.c +++ linux-3.13.0/drivers/char/raw.c @@ -190,7 +190,7 @@ struct raw_device_data *rawdev; struct block_device *bdev; - if (number <= 0 || number >= MAX_RAW_MINORS) + if (number <= 0 || number >= max_raw_minors) return -EINVAL; rawdev = &raw_devices[number]; --- linux-3.13.0.orig/drivers/char/tpm/tpm_i2c_stm_st33.c +++ linux-3.13.0/drivers/char/tpm/tpm_i2c_stm_st33.c @@ -410,6 +410,8 @@ &chip->vendor.read_queue) == 0) { burstcnt = get_burstcount(chip); + if (burstcnt < 0) + return burstcnt; len = min_t(int, burstcnt, count - size); I2C_READ_DATA(client, TPM_DATA_FIFO, buf + size, len); size += len; @@ -451,7 +453,8 @@ static int tpm_stm_i2c_send(struct tpm_chip *chip, unsigned char *buf, size_t len) { - u32 status, burstcnt = 0, i, size; + u32 status, i, size; + int burstcnt = 0; int ret; u8 data; struct i2c_client *client; @@ -482,6 +485,8 @@ for (i = 0; i < len - 1;) { burstcnt = get_burstcount(chip); + if (burstcnt < 0) + return burstcnt; size = min_t(int, len - i - 1, burstcnt); ret = I2C_WRITE_DATA(client, TPM_DATA_FIFO, buf, size); if (ret < 0) --- linux-3.13.0.orig/drivers/char/tpm/tpm_ppi.c +++ linux-3.13.0/drivers/char/tpm/tpm_ppi.c @@ -172,7 +172,7 @@ * is updated with function index from SUBREQ to SUBREQ2 since PPI * version 1.1 */ - if (strcmp(version, "1.1") == -1) + if (strcmp(version, "1.1") < 0) params[2].integer.value = TPM_PPI_FN_SUBREQ; else params[2].integer.value = TPM_PPI_FN_SUBREQ2; @@ -182,7 +182,7 @@ * string/package type. For PPI version 1.0 and 1.1, use buffer type * for compatibility, and use package type since 1.2 according to spec. */ - if (strcmp(version, "1.2") == -1) { + if (strcmp(version, "1.2") < 0) { params[3].type = ACPI_TYPE_BUFFER; params[3].buffer.length = sizeof(req); sscanf(buf, "%d", &req); @@ -248,7 +248,7 @@ * (e.g. Capella with PPI 1.0) need integer/string/buffer type, so for * compatibility, define params[3].type as buffer, if PPI version < 1.2 */ - if (strcmp(version, "1.2") == -1) { + if (strcmp(version, "1.2") < 0) { params[3].type = ACPI_TYPE_BUFFER; params[3].buffer.length = 0; params[3].buffer.pointer = NULL; @@ -390,7 +390,7 @@ kfree(output.pointer); output.length = ACPI_ALLOCATE_BUFFER; output.pointer = NULL; - if (strcmp(version, "1.2") == -1) + if (strcmp(version, "1.2") < 0) return -EPERM; params[2].integer.value = TPM_PPI_FN_GETOPR; --- linux-3.13.0.orig/drivers/char/tpm/xen-tpmfront.c +++ linux-3.13.0/drivers/char/tpm/xen-tpmfront.c @@ -17,6 +17,7 @@ #include #include #include "tpm.h" +#include struct tpm_private { struct tpm_chip *chip; @@ -421,6 +422,9 @@ if (!xen_domain()) return -ENODEV; + if (!xen_has_pv_devices()) + return -ENODEV; + return xenbus_register_frontend(&tpmfront_driver); } module_init(xen_tpmfront_init); --- linux-3.13.0.orig/drivers/clk/clk-s2mps11.c +++ linux-3.13.0/drivers/clk/clk-s2mps11.c @@ -130,7 +130,7 @@ int i; if (!iodev->dev->of_node) - return NULL; + return ERR_PTR(-EINVAL); clk_np = of_find_node_by_name(iodev->dev->of_node, "clocks"); if (!clk_np) { --- linux-3.13.0.orig/drivers/clocksource/vf_pit_timer.c +++ linux-3.13.0/drivers/clocksource/vf_pit_timer.c @@ -54,7 +54,7 @@ static u64 pit_read_sched_clock(void) { - return __raw_readl(clksrc_base + PITCVAL); + return ~__raw_readl(clksrc_base + PITCVAL); } static int __init pit_clocksource_init(unsigned long rate) --- linux-3.13.0.orig/drivers/cpufreq/Kconfig.powerpc +++ linux-3.13.0/drivers/cpufreq/Kconfig.powerpc @@ -54,3 +54,11 @@ help This adds the support for frequency switching on PA Semi PWRficient processors. + +config POWERNV_CPUFREQ + tristate "CPU frequency scaling for IBM POWERNV platform" + depends on PPC_POWERNV + default y + help + This adds support for CPU frequency switching on IBM POWERNV + platform --- linux-3.13.0.orig/drivers/cpufreq/Makefile +++ linux-3.13.0/drivers/cpufreq/Makefile @@ -86,6 +86,7 @@ obj-$(CONFIG_CPU_FREQ_PMAC) += pmac32-cpufreq.o obj-$(CONFIG_CPU_FREQ_PMAC64) += pmac64-cpufreq.o obj-$(CONFIG_PPC_PASEMI_CPUFREQ) += pasemi-cpufreq.o +obj-$(CONFIG_POWERNV_CPUFREQ) += powernv-cpufreq.o ################################################################################## # Other platform drivers --- linux-3.13.0.orig/drivers/cpufreq/cpufreq.c +++ linux-3.13.0/drivers/cpufreq/cpufreq.c @@ -1051,7 +1051,7 @@ goto err_set_policy_cpu; } - if (cpufreq_driver->get) { + if (cpufreq_driver->get && !cpufreq_driver->setpolicy) { policy->cur = cpufreq_driver->get(policy->cpu); if (!policy->cur) { pr_err("%s: ->get() failed\n", __func__); @@ -1447,23 +1447,16 @@ */ unsigned int cpufreq_get(unsigned int cpu) { - struct cpufreq_policy *policy = per_cpu(cpufreq_cpu_data, cpu); + struct cpufreq_policy *policy = cpufreq_cpu_get(cpu); unsigned int ret_freq = 0; - if (cpufreq_disabled() || !cpufreq_driver) - return -ENOENT; - - BUG_ON(!policy); - - if (!down_read_trylock(&cpufreq_rwsem)) - return 0; - - down_read(&policy->rwsem); - - ret_freq = __cpufreq_get(cpu); + if (policy) { + down_read(&policy->rwsem); + ret_freq = __cpufreq_get(cpu); + up_read(&policy->rwsem); - up_read(&policy->rwsem); - up_read(&cpufreq_rwsem); + cpufreq_cpu_put(policy); + } return ret_freq; } @@ -2058,7 +2051,7 @@ * BIOS might change freq behind our back * -> ask driver for current freq and notify governors about a change */ - if (cpufreq_driver->get) { + if (cpufreq_driver->get && !cpufreq_driver->setpolicy) { new_policy.cur = cpufreq_driver->get(cpu); if (!policy->cur) { pr_debug("Driver did not initialize current freq"); @@ -2123,6 +2116,20 @@ * REGISTER / UNREGISTER CPUFREQ DRIVER * *********************************************************************/ +static char cpufreq_driver_name[CPUFREQ_NAME_LEN]; + +static int __init cpufreq_driver_setup(char *str) +{ + strlcpy(cpufreq_driver_name, str, CPUFREQ_NAME_LEN); + return 1; +} + +/* + * Set this name to only allow one specific cpu freq driver, e.g., + * cpufreq_driver=powernow-k8 + */ +__setup("cpufreq_driver=", cpufreq_driver_setup); + /** * cpufreq_register_driver - register a CPU Frequency driver * @driver_data: A struct cpufreq_driver containing the values# @@ -2146,7 +2153,13 @@ driver_data->target)) return -EINVAL; - pr_debug("trying to register driver %s\n", driver_data->name); + pr_debug("trying to register driver %s, cpufreq_driver=%s\n", + driver_data->name, cpufreq_driver_name); + + if (cpufreq_driver_name[0]) + if (!driver_data->name || + strcmp(cpufreq_driver_name, driver_data->name)) + return -EINVAL; if (driver_data->setpolicy) driver_data->flags |= CPUFREQ_CONST_LOOPS; --- linux-3.13.0.orig/drivers/cpufreq/intel_pstate.c +++ linux-3.13.0/drivers/cpufreq/intel_pstate.c @@ -34,11 +34,15 @@ #define SAMPLE_COUNT 3 -#define BYT_RATIOS 0x66a +#define BYT_RATIOS 0x66a +#define BYT_VIDS 0x66b +#define BYT_TURBO_RATIOS 0x66c -#define FRAC_BITS 8 + +#define FRAC_BITS 6 #define int_tofp(X) ((int64_t)(X) << FRAC_BITS) #define fp_toint(X) ((X) >> FRAC_BITS) +#define FP_ROUNDUP(X) ((X) += 1 << FRAC_BITS) static inline int32_t mul_fp(int32_t x, int32_t y) { @@ -50,10 +54,13 @@ return div_s64((int64_t)x << FRAC_BITS, (int64_t)y); } +static u64 energy_divisor; + struct sample { int32_t core_pct_busy; u64 aperf; u64 mperf; + unsigned long long tsc; int freq; }; @@ -64,6 +71,12 @@ int turbo_pstate; }; +struct vid_data { + int32_t min; + int32_t max; + int32_t ratio; +}; + struct _pid { int setpoint; int32_t integral; @@ -82,12 +95,12 @@ struct timer_list timer; struct pstate_data pstate; + struct vid_data vid; struct _pid pid; - int min_pstate_count; - u64 prev_aperf; u64 prev_mperf; + unsigned long long prev_tsc; int sample_ptr; struct sample samples[SAMPLE_COUNT]; }; @@ -106,7 +119,8 @@ int (*get_max)(void); int (*get_min)(void); int (*get_turbo)(void); - void (*set)(int pstate); + void (*set)(struct cpudata*, int pstate); + void (*get_vid)(struct cpudata *); }; struct cpu_defaults { @@ -348,7 +362,7 @@ { u64 value; rdmsrl(BYT_RATIOS, value); - return value & 0xFF; + return (value >> 8) & 0xFF; } static int byt_get_max_pstate(void) @@ -358,6 +372,49 @@ return (value >> 16) & 0xFF; } +static int byt_get_turbo_pstate(void) +{ + u64 value; + rdmsrl(BYT_TURBO_RATIOS, value); + return value & 0x3F; +} + +static void byt_set_pstate(struct cpudata *cpudata, int pstate) +{ + u64 val; + int32_t vid_fp; + u32 vid; + + val = pstate << 8; + if (limits.no_turbo) + val |= (u64)1 << 32; + + vid_fp = cpudata->vid.min + mul_fp( + int_tofp(pstate - cpudata->pstate.min_pstate), + cpudata->vid.ratio); + + vid_fp = clamp_t(int32_t, vid_fp, cpudata->vid.min, cpudata->vid.max); + vid = fp_toint(vid_fp); + + val |= vid; + + wrmsrl(MSR_IA32_PERF_CTL, val); +} + +static void byt_get_vid(struct cpudata *cpudata) +{ + u64 value; + + rdmsrl(BYT_VIDS, value); + cpudata->vid.min = int_tofp((value >> 8) & 0x7f); + cpudata->vid.max = int_tofp((value >> 16) & 0x7f); + cpudata->vid.ratio = div_fp( + cpudata->vid.max - cpudata->vid.min, + int_tofp(cpudata->pstate.max_pstate - + cpudata->pstate.min_pstate)); +} + + static int core_get_min_pstate(void) { u64 value; @@ -384,7 +441,7 @@ return ret; } -static void core_set_pstate(int pstate) +static void core_set_pstate(struct cpudata *cpudata, int pstate) { u64 val; @@ -424,8 +481,9 @@ .funcs = { .get_max = byt_get_max_pstate, .get_min = byt_get_min_pstate, - .get_turbo = byt_get_max_pstate, - .set = core_set_pstate, + .get_turbo = byt_get_turbo_pstate, + .set = byt_set_pstate, + .get_vid = byt_get_vid, }, }; @@ -462,7 +520,7 @@ cpu->pstate.current_pstate = pstate; - pstate_funcs.set(pstate); + pstate_funcs.set(cpu, pstate); } static inline void intel_pstate_pstate_increase(struct cpudata *cpu, int steps) @@ -488,6 +546,9 @@ cpu->pstate.max_pstate = pstate_funcs.get_max(); cpu->pstate.turbo_pstate = pstate_funcs.get_turbo(); + if (pstate_funcs.get_vid) + pstate_funcs.get_vid(cpu); + /* * goto max pstate so we don't slow up boot if we are built-in if we are * a module we will take care of it during normal operation @@ -498,30 +559,48 @@ static inline void intel_pstate_calc_busy(struct cpudata *cpu, struct sample *sample) { - u64 core_pct; - core_pct = div64_u64(int_tofp(sample->aperf * 100), - sample->mperf); - sample->freq = fp_toint(cpu->pstate.max_pstate * core_pct * 1000); + int32_t core_pct; + int32_t c0_pct; + + core_pct = div_fp(int_tofp((sample->aperf)), + int_tofp((sample->mperf))); + core_pct = mul_fp(core_pct, int_tofp(100)); + FP_ROUNDUP(core_pct); + + c0_pct = div_fp(int_tofp(sample->mperf), int_tofp(sample->tsc)); + + sample->freq = fp_toint( + mul_fp(int_tofp(cpu->pstate.max_pstate * 1000), core_pct)); - sample->core_pct_busy = core_pct; + sample->core_pct_busy = mul_fp(core_pct, c0_pct); } static inline void intel_pstate_sample(struct cpudata *cpu) { u64 aperf, mperf; + unsigned long long tsc; rdmsrl(MSR_IA32_APERF, aperf); rdmsrl(MSR_IA32_MPERF, mperf); + tsc = native_read_tsc(); + + aperf = aperf >> FRAC_BITS; + mperf = mperf >> FRAC_BITS; + tsc = tsc >> FRAC_BITS; + cpu->sample_ptr = (cpu->sample_ptr + 1) % SAMPLE_COUNT; cpu->samples[cpu->sample_ptr].aperf = aperf; cpu->samples[cpu->sample_ptr].mperf = mperf; + cpu->samples[cpu->sample_ptr].tsc = tsc; cpu->samples[cpu->sample_ptr].aperf -= cpu->prev_aperf; cpu->samples[cpu->sample_ptr].mperf -= cpu->prev_mperf; + cpu->samples[cpu->sample_ptr].tsc -= cpu->prev_tsc; intel_pstate_calc_busy(cpu, &cpu->samples[cpu->sample_ptr]); cpu->prev_aperf = aperf; cpu->prev_mperf = mperf; + cpu->prev_tsc = tsc; } static inline void intel_pstate_set_sample_time(struct cpudata *cpu) @@ -540,7 +619,8 @@ core_busy = cpu->samples[cpu->sample_ptr].core_pct_busy; max_pstate = int_tofp(cpu->pstate.max_pstate); current_pstate = int_tofp(cpu->pstate.current_pstate); - return mul_fp(core_busy, div_fp(max_pstate, current_pstate)); + core_busy = mul_fp(core_busy, div_fp(max_pstate, current_pstate)); + return FP_ROUNDUP(core_busy); } static inline void intel_pstate_adjust_busy_pstate(struct cpudata *cpu) @@ -556,6 +636,7 @@ ctl = pid_calc(pid, busy_scaled); steps = abs(ctl); + if (ctl < 0) intel_pstate_pstate_increase(cpu, steps); else @@ -565,17 +646,23 @@ static void intel_pstate_timer_func(unsigned long __data) { struct cpudata *cpu = (struct cpudata *) __data; + struct sample *sample; + u64 energy; intel_pstate_sample(cpu); + + sample = &cpu->samples[cpu->sample_ptr]; + rdmsrl(MSR_PKG_ENERGY_STATUS, energy); + intel_pstate_adjust_busy_pstate(cpu); - if (cpu->pstate.current_pstate == cpu->pstate.min_pstate) { - cpu->min_pstate_count++; - if (!(cpu->min_pstate_count % 5)) { - intel_pstate_set_pstate(cpu, cpu->pstate.max_pstate); - } - } else - cpu->min_pstate_count = 0; + trace_pstate_sample(fp_toint(sample->core_pct_busy), + fp_toint(intel_pstate_get_scaled_busy(cpu)), + cpu->pstate.current_pstate, + sample->mperf, + sample->aperf, + div64_u64(energy, energy_divisor), + sample->freq); intel_pstate_set_sample_time(cpu); } @@ -740,7 +827,7 @@ .name = "intel_pstate", }; -static int __initdata no_load; +static int __initdata no_load = 1; static int intel_pstate_msrs_not_valid(void) { @@ -782,6 +869,7 @@ pstate_funcs.get_min = funcs->get_min; pstate_funcs.get_turbo = funcs->get_turbo; pstate_funcs.set = funcs->set; + pstate_funcs.get_vid = funcs->get_vid; } #if IS_ENABLED(CONFIG_ACPI) @@ -855,6 +943,7 @@ int cpu, rc = 0; const struct x86_cpu_id *id; struct cpu_defaults *cpu_info; + u64 units; if (no_load) return -ENODEV; @@ -888,8 +977,14 @@ if (rc) goto out; + rdmsrl(MSR_RAPL_POWER_UNIT, units); + energy_divisor = 1 << ((units >> 8) & 0x1f); /* bits{12:8} */ + intel_pstate_debug_expose_params(); intel_pstate_sysfs_expose_params(); + + pr_info("Consider also installing thermald for improved thermal control.\n"); + return rc; out: get_online_cpus(); @@ -913,6 +1008,8 @@ if (!strcmp(str, "disable")) no_load = 1; + else if (!strcmp(str, "enable")) + no_load = 0; return 0; } early_param("intel_pstate", intel_pstate_setup); --- linux-3.13.0.orig/drivers/cpufreq/powernow-k6.c +++ linux-3.13.0/drivers/cpufreq/powernow-k6.c @@ -26,41 +26,108 @@ static unsigned int busfreq; /* FSB, in 10 kHz */ static unsigned int max_multiplier; +static unsigned int param_busfreq = 0; +static unsigned int param_max_multiplier = 0; + +module_param_named(max_multiplier, param_max_multiplier, uint, S_IRUGO); +MODULE_PARM_DESC(max_multiplier, "Maximum multiplier (allowed values: 20 30 35 40 45 50 55 60)"); + +module_param_named(bus_frequency, param_busfreq, uint, S_IRUGO); +MODULE_PARM_DESC(bus_frequency, "Bus frequency in kHz"); /* Clock ratio multiplied by 10 - see table 27 in AMD#23446 */ static struct cpufreq_frequency_table clock_ratio[] = { - {45, /* 000 -> 4.5x */ 0}, + {60, /* 110 -> 6.0x */ 0}, + {55, /* 011 -> 5.5x */ 0}, {50, /* 001 -> 5.0x */ 0}, + {45, /* 000 -> 4.5x */ 0}, {40, /* 010 -> 4.0x */ 0}, - {55, /* 011 -> 5.5x */ 0}, - {20, /* 100 -> 2.0x */ 0}, - {30, /* 101 -> 3.0x */ 0}, - {60, /* 110 -> 6.0x */ 0}, {35, /* 111 -> 3.5x */ 0}, + {30, /* 101 -> 3.0x */ 0}, + {20, /* 100 -> 2.0x */ 0}, {0, CPUFREQ_TABLE_END} }; +static const u8 index_to_register[8] = { 6, 3, 1, 0, 2, 7, 5, 4 }; +static const u8 register_to_index[8] = { 3, 2, 4, 1, 7, 6, 0, 5 }; + +static const struct { + unsigned freq; + unsigned mult; +} usual_frequency_table[] = { + { 400000, 40 }, // 100 * 4 + { 450000, 45 }, // 100 * 4.5 + { 475000, 50 }, // 95 * 5 + { 500000, 50 }, // 100 * 5 + { 506250, 45 }, // 112.5 * 4.5 + { 533500, 55 }, // 97 * 5.5 + { 550000, 55 }, // 100 * 5.5 + { 562500, 50 }, // 112.5 * 5 + { 570000, 60 }, // 95 * 6 + { 600000, 60 }, // 100 * 6 + { 618750, 55 }, // 112.5 * 5.5 + { 660000, 55 }, // 120 * 5.5 + { 675000, 60 }, // 112.5 * 6 + { 720000, 60 }, // 120 * 6 +}; + +#define FREQ_RANGE 3000 /** * powernow_k6_get_cpu_multiplier - returns the current FSB multiplier * - * Returns the current setting of the frequency multiplier. Core clock + * Returns the current setting of the frequency multiplier. Core clock * speed is frequency of the Front-Side Bus multiplied with this value. */ static int powernow_k6_get_cpu_multiplier(void) { - u64 invalue = 0; + unsigned long invalue = 0; u32 msrval; + local_irq_disable(); + msrval = POWERNOW_IOPORT + 0x1; wrmsr(MSR_K6_EPMR, msrval, 0); /* enable the PowerNow port */ invalue = inl(POWERNOW_IOPORT + 0x8); msrval = POWERNOW_IOPORT + 0x0; wrmsr(MSR_K6_EPMR, msrval, 0); /* disable it again */ - return clock_ratio[(invalue >> 5)&7].driver_data; + local_irq_enable(); + + return clock_ratio[register_to_index[(invalue >> 5)&7]].driver_data; } +static void powernow_k6_set_cpu_multiplier(unsigned int best_i) +{ + unsigned long outvalue, invalue; + unsigned long msrval; + unsigned long cr0; + + /* we now need to transform best_i to the BVC format, see AMD#23446 */ + + /* + * The processor doesn't respond to inquiry cycles while changing the + * frequency, so we must disable cache. + */ + local_irq_disable(); + cr0 = read_cr0(); + write_cr0(cr0 | X86_CR0_CD); + wbinvd(); + + outvalue = (1<<12) | (1<<10) | (1<<9) | (index_to_register[best_i]<<5); + + msrval = POWERNOW_IOPORT + 0x1; + wrmsr(MSR_K6_EPMR, msrval, 0); /* enable the PowerNow port */ + invalue = inl(POWERNOW_IOPORT + 0x8); + invalue = invalue & 0x1f; + outvalue = outvalue | invalue; + outl(outvalue, (POWERNOW_IOPORT + 0x8)); + msrval = POWERNOW_IOPORT + 0x0; + wrmsr(MSR_K6_EPMR, msrval, 0); /* disable it again */ + + write_cr0(cr0); + local_irq_enable(); +} /** * powernow_k6_target - set the PowerNow! multiplier @@ -71,8 +138,6 @@ static int powernow_k6_target(struct cpufreq_policy *policy, unsigned int best_i) { - unsigned long outvalue = 0, invalue = 0; - unsigned long msrval; struct cpufreq_freqs freqs; if (clock_ratio[best_i].driver_data > max_multiplier) { @@ -85,35 +150,63 @@ cpufreq_notify_transition(policy, &freqs, CPUFREQ_PRECHANGE); - /* we now need to transform best_i to the BVC format, see AMD#23446 */ - - outvalue = (1<<12) | (1<<10) | (1<<9) | (best_i<<5); - - msrval = POWERNOW_IOPORT + 0x1; - wrmsr(MSR_K6_EPMR, msrval, 0); /* enable the PowerNow port */ - invalue = inl(POWERNOW_IOPORT + 0x8); - invalue = invalue & 0xf; - outvalue = outvalue | invalue; - outl(outvalue , (POWERNOW_IOPORT + 0x8)); - msrval = POWERNOW_IOPORT + 0x0; - wrmsr(MSR_K6_EPMR, msrval, 0); /* disable it again */ + powernow_k6_set_cpu_multiplier(best_i); cpufreq_notify_transition(policy, &freqs, CPUFREQ_POSTCHANGE); return 0; } - static int powernow_k6_cpu_init(struct cpufreq_policy *policy) { unsigned int i, f; + unsigned khz; if (policy->cpu != 0) return -ENODEV; - /* get frequencies */ - max_multiplier = powernow_k6_get_cpu_multiplier(); - busfreq = cpu_khz / max_multiplier; + max_multiplier = 0; + khz = cpu_khz; + for (i = 0; i < ARRAY_SIZE(usual_frequency_table); i++) { + if (khz >= usual_frequency_table[i].freq - FREQ_RANGE && + khz <= usual_frequency_table[i].freq + FREQ_RANGE) { + khz = usual_frequency_table[i].freq; + max_multiplier = usual_frequency_table[i].mult; + break; + } + } + if (param_max_multiplier) { + for (i = 0; (clock_ratio[i].frequency != CPUFREQ_TABLE_END); i++) { + if (clock_ratio[i].driver_data == param_max_multiplier) { + max_multiplier = param_max_multiplier; + goto have_max_multiplier; + } + } + printk(KERN_ERR "powernow-k6: invalid max_multiplier parameter, valid parameters 20, 30, 35, 40, 45, 50, 55, 60\n"); + return -EINVAL; + } + + if (!max_multiplier) { + printk(KERN_WARNING "powernow-k6: unknown frequency %u, cannot determine current multiplier\n", khz); + printk(KERN_WARNING "powernow-k6: use module parameters max_multiplier and bus_frequency\n"); + return -EOPNOTSUPP; + } + +have_max_multiplier: + param_max_multiplier = max_multiplier; + + if (param_busfreq) { + if (param_busfreq >= 50000 && param_busfreq <= 150000) { + busfreq = param_busfreq / 10; + goto have_busfreq; + } + printk(KERN_ERR "powernow-k6: invalid bus_frequency parameter, allowed range 50000 - 150000 kHz\n"); + return -EINVAL; + } + + busfreq = khz / max_multiplier; +have_busfreq: + param_busfreq = busfreq * 10; /* table init */ for (i = 0; (clock_ratio[i].frequency != CPUFREQ_TABLE_END); i++) { @@ -125,7 +218,7 @@ } /* cpuinfo and default policy values */ - policy->cpuinfo.transition_latency = 200000; + policy->cpuinfo.transition_latency = 500000; return cpufreq_table_validate_and_show(policy, clock_ratio); } --- linux-3.13.0.orig/drivers/cpufreq/powernow-k8.c +++ linux-3.13.0/drivers/cpufreq/powernow-k8.c @@ -1081,7 +1081,7 @@ { struct powernow_k8_data *data; struct init_on_cpu init_on_cpu; - int rc; + int rc, cpu; smp_call_function_single(pol->cpu, check_supported_cpu, &rc, 1); if (rc) @@ -1145,7 +1145,9 @@ pr_debug("cpu_init done, current fid 0x%x, vid 0x%x\n", data->currfid, data->currvid); - per_cpu(powernow_data, pol->cpu) = data; + /* Point all the CPUs in this policy to the same data */ + for_each_cpu(cpu, pol->cpus) + per_cpu(powernow_data, cpu) = data; return 0; @@ -1160,6 +1162,7 @@ static int powernowk8_cpu_exit(struct cpufreq_policy *pol) { struct powernow_k8_data *data = per_cpu(powernow_data, pol->cpu); + int cpu; if (!data) return -EINVAL; @@ -1170,7 +1173,8 @@ kfree(data->powernow_table); kfree(data); - per_cpu(powernow_data, pol->cpu) = NULL; + for_each_cpu(cpu, pol->cpus) + per_cpu(powernow_data, cpu) = NULL; return 0; } --- linux-3.13.0.orig/drivers/cpufreq/powernv-cpufreq.c +++ linux-3.13.0/drivers/cpufreq/powernv-cpufreq.c @@ -0,0 +1,341 @@ +/* + * POWERNV cpufreq driver for the IBM POWER processors + * + * (C) Copyright IBM 2014 + * + * Author: Vaidyanathan Srinivasan + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#define pr_fmt(fmt) "powernv-cpufreq: " fmt + +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#define POWERNV_MAX_PSTATES 256 + +static struct cpufreq_frequency_table powernv_freqs[POWERNV_MAX_PSTATES+1]; + +/* + * Note: The set of pstates consists of contiguous integers, the + * smallest of which is indicated by powernv_pstate_info.min, the + * largest of which is indicated by powernv_pstate_info.max. + * + * The nominal pstate is the highest non-turbo pstate in this + * platform. This is indicated by powernv_pstate_info.nominal. + */ +static struct powernv_pstate_info { + int min; + int max; + int nominal; + int nr_pstates; +} powernv_pstate_info; + +/* + * Initialize the freq table based on data obtained + * from the firmware passed via device-tree + */ +static int init_powernv_pstates(void) +{ + struct device_node *power_mgt; + int i, pstate_min, pstate_max, pstate_nominal, nr_pstates = 0; + const __be32 *pstate_ids, *pstate_freqs; + u32 len_ids, len_freqs; + + power_mgt = of_find_node_by_path("/ibm,opal/power-mgt"); + if (!power_mgt) { + pr_warn("power-mgt node not found\n"); + return -ENODEV; + } + + if (of_property_read_u32(power_mgt, "ibm,pstate-min", &pstate_min)) { + pr_warn("ibm,pstate-min node not found\n"); + return -ENODEV; + } + + if (of_property_read_u32(power_mgt, "ibm,pstate-max", &pstate_max)) { + pr_warn("ibm,pstate-max node not found\n"); + return -ENODEV; + } + + if (of_property_read_u32(power_mgt, "ibm,pstate-nominal", + &pstate_nominal)) { + pr_warn("ibm,pstate-nominal not found\n"); + return -ENODEV; + } + pr_info("cpufreq pstate min %d nominal %d max %d\n", pstate_min, + pstate_nominal, pstate_max); + + pstate_ids = of_get_property(power_mgt, "ibm,pstate-ids", &len_ids); + if (!pstate_ids) { + pr_warn("ibm,pstate-ids not found\n"); + return -ENODEV; + } + + pstate_freqs = of_get_property(power_mgt, "ibm,pstate-frequencies-mhz", + &len_freqs); + if (!pstate_freqs) { + pr_warn("ibm,pstate-frequencies-mhz not found\n"); + return -ENODEV; + } + + WARN_ON(len_ids != len_freqs); + nr_pstates = min(len_ids, len_freqs) / sizeof(u32); + if (!nr_pstates) { + pr_warn("No PStates found\n"); + return -ENODEV; + } + + pr_debug("NR PStates %d\n", nr_pstates); + for (i = 0; i < nr_pstates; i++) { + u32 id = be32_to_cpu(pstate_ids[i]); + u32 freq = be32_to_cpu(pstate_freqs[i]); + + pr_debug("PState id %d freq %d MHz\n", id, freq); + powernv_freqs[i].frequency = freq * 1000; /* kHz */ + powernv_freqs[i].driver_data = id; + } + /* End of list marker entry */ + powernv_freqs[i].frequency = CPUFREQ_TABLE_END; + + powernv_pstate_info.min = pstate_min; + powernv_pstate_info.max = pstate_max; + powernv_pstate_info.nominal = pstate_nominal; + powernv_pstate_info.nr_pstates = nr_pstates; + + return 0; +} + +/* Returns the CPU frequency corresponding to the pstate_id. */ +static unsigned int pstate_id_to_freq(int pstate_id) +{ + int i; + + i = powernv_pstate_info.max - pstate_id; + BUG_ON(i >= powernv_pstate_info.nr_pstates || i < 0); + + return powernv_freqs[i].frequency; +} + +/* + * cpuinfo_nominal_freq_show - Show the nominal CPU frequency as indicated by + * the firmware + */ +static ssize_t cpuinfo_nominal_freq_show(struct cpufreq_policy *policy, + char *buf) +{ + return sprintf(buf, "%u\n", + pstate_id_to_freq(powernv_pstate_info.nominal)); +} + +struct freq_attr cpufreq_freq_attr_cpuinfo_nominal_freq = + __ATTR_RO(cpuinfo_nominal_freq); + +static struct freq_attr *powernv_cpu_freq_attr[] = { + &cpufreq_freq_attr_scaling_available_freqs, + &cpufreq_freq_attr_cpuinfo_nominal_freq, + NULL, +}; + +/* Helper routines */ + +/* Access helpers to power mgt SPR */ + +static inline unsigned long get_pmspr(unsigned long sprn) +{ + switch (sprn) { + case SPRN_PMCR: + return mfspr(SPRN_PMCR); + + case SPRN_PMICR: + return mfspr(SPRN_PMICR); + + case SPRN_PMSR: + return mfspr(SPRN_PMSR); + } + BUG(); +} + +static inline void set_pmspr(unsigned long sprn, unsigned long val) +{ + switch (sprn) { + case SPRN_PMCR: + mtspr(SPRN_PMCR, val); + return; + + case SPRN_PMICR: + mtspr(SPRN_PMICR, val); + return; + } + BUG(); +} + +/* + * Use objects of this type to query/update + * pstates on a remote CPU via smp_call_function. + */ +struct powernv_smp_call_data { + unsigned int freq; + int pstate_id; +}; + +/* + * powernv_read_cpu_freq: Reads the current frequency on this CPU. + * + * Called via smp_call_function. + * + * Note: The caller of the smp_call_function should pass an argument of + * the type 'struct powernv_smp_call_data *' along with this function. + * + * The current frequency on this CPU will be returned via + * ((struct powernv_smp_call_data *)arg)->freq; + */ +static void powernv_read_cpu_freq(void *arg) +{ + unsigned long pmspr_val; + s8 local_pstate_id; + struct powernv_smp_call_data *freq_data = arg; + + pmspr_val = get_pmspr(SPRN_PMSR); + + /* + * The local pstate id corresponds bits 48..55 in the PMSR. + * Note: Watch out for the sign! + */ + local_pstate_id = (pmspr_val >> 48) & 0xFF; + freq_data->pstate_id = local_pstate_id; + freq_data->freq = pstate_id_to_freq(freq_data->pstate_id); + + pr_debug("cpu %d pmsr %016lX pstate_id %d frequency %d kHz\n", + raw_smp_processor_id(), pmspr_val, freq_data->pstate_id, + freq_data->freq); +} + +/* + * powernv_cpufreq_get: Returns the CPU frequency as reported by the + * firmware for CPU 'cpu'. This value is reported through the sysfs + * file cpuinfo_cur_freq. + */ +unsigned int powernv_cpufreq_get(unsigned int cpu) +{ + struct powernv_smp_call_data freq_data; + + smp_call_function_any(cpu_sibling_mask(cpu), powernv_read_cpu_freq, + &freq_data, 1); + + return freq_data.freq; +} + +/* + * set_pstate: Sets the pstate on this CPU. + * + * This is called via an smp_call_function. + * + * The caller must ensure that freq_data is of the type + * (struct powernv_smp_call_data *) and the pstate_id which needs to be set + * on this CPU should be present in freq_data->pstate_id. + */ +static void set_pstate(void *freq_data) +{ + unsigned long val; + unsigned long pstate_ul = + ((struct powernv_smp_call_data *) freq_data)->pstate_id; + + val = get_pmspr(SPRN_PMCR); + val = val & 0x0000FFFFFFFFFFFFULL; + + pstate_ul = pstate_ul & 0xFF; + + /* Set both global(bits 56..63) and local(bits 48..55) PStates */ + val = val | (pstate_ul << 56) | (pstate_ul << 48); + + pr_debug("Setting cpu %d pmcr to %016lX\n", + raw_smp_processor_id(), val); + set_pmspr(SPRN_PMCR, val); +} + +/* + * powernv_cpufreq_target_index: Sets the frequency corresponding to + * the cpufreq table entry indexed by new_index on the cpus in the + * mask policy->cpus + */ +static int powernv_cpufreq_target_index(struct cpufreq_policy *policy, + unsigned int new_index) +{ + struct powernv_smp_call_data freq_data; + + freq_data.pstate_id = powernv_freqs[new_index].driver_data; + + /* + * Use smp_call_function to send IPI and execute the + * mtspr on target CPU. We could do that without IPI + * if current CPU is within policy->cpus (core) + */ + smp_call_function_any(policy->cpus, set_pstate, &freq_data, 1); + + return 0; +} + +static int powernv_cpufreq_cpu_init(struct cpufreq_policy *policy) +{ + int base, i; + + base = cpu_first_thread_sibling(policy->cpu); + + for (i = 0; i < threads_per_core; i++) + cpumask_set_cpu(base + i, policy->cpus); + + return cpufreq_table_validate_and_show(policy, powernv_freqs); +} + +static struct cpufreq_driver powernv_cpufreq_driver = { + .name = "powernv-cpufreq", + .flags = CPUFREQ_CONST_LOOPS, + .init = powernv_cpufreq_cpu_init, + .verify = cpufreq_generic_frequency_table_verify, + .target_index = powernv_cpufreq_target_index, + .get = powernv_cpufreq_get, + .attr = powernv_cpu_freq_attr, +}; + +static int __init powernv_cpufreq_init(void) +{ + int rc = 0; + + /* Discover pstates from device tree and init */ + rc = init_powernv_pstates(); + if (rc) { + pr_info("powernv-cpufreq disabled. System does not support PState control\n"); + return rc; + } + + return cpufreq_register_driver(&powernv_cpufreq_driver); +} +module_init(powernv_cpufreq_init); + +static void __exit powernv_cpufreq_exit(void) +{ + cpufreq_unregister_driver(&powernv_cpufreq_driver); +} +module_exit(powernv_cpufreq_exit); + +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Vaidyanathan Srinivasan "); --- linux-3.13.0.orig/drivers/crypto/omap-aes.c +++ linux-3.13.0/drivers/crypto/omap-aes.c @@ -784,6 +784,7 @@ static int omap_aes_cra_init(struct crypto_tfm *tfm) { struct omap_aes_dev *dd = NULL; + int err; /* Find AES device, currently picks the first device */ spin_lock_bh(&list_lock); @@ -792,7 +793,13 @@ } spin_unlock_bh(&list_lock); - pm_runtime_get_sync(dd->dev); + err = pm_runtime_get_sync(dd->dev); + if (err < 0) { + dev_err(dd->dev, "%s: failed to get_sync(%d)\n", + __func__, err); + return err; + } + tfm->crt_ablkcipher.reqsize = sizeof(struct omap_aes_reqctx); return 0; @@ -1182,7 +1189,12 @@ dd->phys_base = res.start; pm_runtime_enable(dev); - pm_runtime_get_sync(dev); + err = pm_runtime_get_sync(dev); + if (err < 0) { + dev_err(dev, "%s: failed to get_sync(%d)\n", + __func__, err); + goto err_res; + } omap_aes_dma_stop(dd); --- linux-3.13.0.orig/drivers/dma/ioat/dma.c +++ linux-3.13.0/drivers/dma/ioat/dma.c @@ -77,7 +77,8 @@ attnstatus = readl(instance->reg_base + IOAT_ATTNSTATUS_OFFSET); for_each_set_bit(bit, &attnstatus, BITS_PER_LONG) { chan = ioat_chan_by_index(instance, bit); - tasklet_schedule(&chan->cleanup_task); + if (test_bit(IOAT_RUN, &chan->state)) + tasklet_schedule(&chan->cleanup_task); } writeb(intrctrl, instance->reg_base + IOAT_INTRCTRL_OFFSET); @@ -93,7 +94,8 @@ { struct ioat_chan_common *chan = data; - tasklet_schedule(&chan->cleanup_task); + if (test_bit(IOAT_RUN, &chan->state)) + tasklet_schedule(&chan->cleanup_task); return IRQ_HANDLED; } @@ -116,7 +118,6 @@ chan->timer.function = device->timer_fn; chan->timer.data = data; tasklet_init(&chan->cleanup_task, device->cleanup_fn, data); - tasklet_disable(&chan->cleanup_task); } /** @@ -354,13 +355,49 @@ writel(((u64) chan->completion_dma) >> 32, chan->reg_base + IOAT_CHANCMP_OFFSET_HIGH); - tasklet_enable(&chan->cleanup_task); + set_bit(IOAT_RUN, &chan->state); ioat1_dma_start_null_desc(ioat); /* give chain to dma device */ dev_dbg(to_dev(chan), "%s: allocated %d descriptors\n", __func__, ioat->desccount); return ioat->desccount; } +void ioat_stop(struct ioat_chan_common *chan) +{ + struct ioatdma_device *device = chan->device; + struct pci_dev *pdev = device->pdev; + int chan_id = chan_num(chan); + struct msix_entry *msix; + + /* 1/ stop irq from firing tasklets + * 2/ stop the tasklet from re-arming irqs + */ + clear_bit(IOAT_RUN, &chan->state); + + /* flush inflight interrupts */ + switch (device->irq_mode) { + case IOAT_MSIX: + msix = &device->msix_entries[chan_id]; + synchronize_irq(msix->vector); + break; + case IOAT_MSI: + case IOAT_INTX: + synchronize_irq(pdev->irq); + break; + default: + break; + } + + /* flush inflight timers */ + del_timer_sync(&chan->timer); + + /* flush inflight tasklet runs */ + tasklet_kill(&chan->cleanup_task); + + /* final cleanup now that everything is quiesced and can't re-arm */ + device->cleanup_fn((unsigned long) &chan->common); +} + /** * ioat1_dma_free_chan_resources - release all the descriptors * @chan: the channel to be cleaned @@ -379,9 +416,7 @@ if (ioat->desccount == 0) return; - tasklet_disable(&chan->cleanup_task); - del_timer_sync(&chan->timer); - ioat1_cleanup(ioat); + ioat_stop(chan); /* Delay 100ms after reset to allow internal DMA logic to quiesce * before removing DMA descriptor resources. @@ -526,8 +561,11 @@ static void ioat1_cleanup_event(unsigned long data) { struct ioat_dma_chan *ioat = to_ioat_chan((void *) data); + struct ioat_chan_common *chan = &ioat->base; ioat1_cleanup(ioat); + if (!test_bit(IOAT_RUN, &chan->state)) + return; writew(IOAT_CHANCTRL_RUN, ioat->base.reg_base + IOAT_CHANCTRL_OFFSET); } --- linux-3.13.0.orig/drivers/dma/ioat/dma.h +++ linux-3.13.0/drivers/dma/ioat/dma.h @@ -356,6 +356,7 @@ void ioat_kobject_add(struct ioatdma_device *device, struct kobj_type *type); void ioat_kobject_del(struct ioatdma_device *device); int ioat_dma_setup_interrupts(struct ioatdma_device *device); +void ioat_stop(struct ioat_chan_common *chan); extern const struct sysfs_ops ioat_sysfs_ops; extern struct ioat_sysfs_entry ioat_version_attr; extern struct ioat_sysfs_entry ioat_cap_attr; --- linux-3.13.0.orig/drivers/dma/ioat/dma_v2.c +++ linux-3.13.0/drivers/dma/ioat/dma_v2.c @@ -190,8 +190,11 @@ void ioat2_cleanup_event(unsigned long data) { struct ioat2_dma_chan *ioat = to_ioat2_chan((void *) data); + struct ioat_chan_common *chan = &ioat->base; ioat2_cleanup(ioat); + if (!test_bit(IOAT_RUN, &chan->state)) + return; writew(IOAT_CHANCTRL_RUN, ioat->base.reg_base + IOAT_CHANCTRL_OFFSET); } @@ -553,10 +556,10 @@ ioat->issued = 0; ioat->tail = 0; ioat->alloc_order = order; + set_bit(IOAT_RUN, &chan->state); spin_unlock_bh(&ioat->prep_lock); spin_unlock_bh(&chan->cleanup_lock); - tasklet_enable(&chan->cleanup_task); ioat2_start_null_desc(ioat); /* check that we got off the ground */ @@ -566,7 +569,6 @@ } while (i++ < 20 && !is_ioat_active(status) && !is_ioat_idle(status)); if (is_ioat_active(status) || is_ioat_idle(status)) { - set_bit(IOAT_RUN, &chan->state); return 1 << ioat->alloc_order; } else { u32 chanerr = readl(chan->reg_base + IOAT_CHANERR_OFFSET); @@ -809,11 +811,8 @@ if (!ioat->ring) return; - tasklet_disable(&chan->cleanup_task); - del_timer_sync(&chan->timer); - device->cleanup_fn((unsigned long) c); + ioat_stop(chan); device->reset_hw(chan); - clear_bit(IOAT_RUN, &chan->state); spin_lock_bh(&chan->cleanup_lock); spin_lock_bh(&ioat->prep_lock); --- linux-3.13.0.orig/drivers/dma/ioat/dma_v3.c +++ linux-3.13.0/drivers/dma/ioat/dma_v3.c @@ -464,8 +464,11 @@ static void ioat3_cleanup_event(unsigned long data) { struct ioat2_dma_chan *ioat = to_ioat2_chan((void *) data); + struct ioat_chan_common *chan = &ioat->base; ioat3_cleanup(ioat); + if (!test_bit(IOAT_RUN, &chan->state)) + return; writew(IOAT_CHANCTRL_RUN, ioat->base.reg_base + IOAT_CHANCTRL_OFFSET); } --- linux-3.13.0.orig/drivers/dma/ste_dma40.c +++ linux-3.13.0/drivers/dma/ste_dma40.c @@ -1641,6 +1641,7 @@ struct d40_chan *d40c = (struct d40_chan *) data; struct d40_desc *d40d; unsigned long flags; + bool callback_active; dma_async_tx_callback callback; void *callback_param; @@ -1668,6 +1669,7 @@ } /* Callback to client */ + callback_active = !!(d40d->txd.flags & DMA_PREP_INTERRUPT); callback = d40d->txd.callback; callback_param = d40d->txd.callback_param; @@ -1690,7 +1692,7 @@ spin_unlock_irqrestore(&d40c->lock, flags); - if (callback && (d40d->txd.flags & DMA_PREP_INTERRUPT)) + if (callback_active && callback) callback(callback_param); return; --- linux-3.13.0.orig/drivers/edac/e752x_edac.c +++ linux-3.13.0/drivers/edac/e752x_edac.c @@ -1182,9 +1182,11 @@ pvt->bridge_ck = pci_get_device(PCI_VENDOR_ID_INTEL, pvt->dev_info->err_dev, pvt->bridge_ck); - if (pvt->bridge_ck == NULL) + if (pvt->bridge_ck == NULL) { pvt->bridge_ck = pci_scan_single_device(pdev->bus, PCI_DEVFN(0, 1)); + pci_dev_get(pvt->bridge_ck); + } if (pvt->bridge_ck == NULL) { e752x_printk(KERN_ERR, "error reporting device not found:" --- linux-3.13.0.orig/drivers/edac/edac_mc.c +++ linux-3.13.0/drivers/edac/edac_mc.c @@ -559,7 +559,8 @@ * * called with the mem_ctls_mutex held */ -static void edac_mc_workq_setup(struct mem_ctl_info *mci, unsigned msec) +static void edac_mc_workq_setup(struct mem_ctl_info *mci, unsigned msec, + bool init) { edac_dbg(0, "\n"); @@ -567,7 +568,9 @@ if (mci->op_state != OP_RUNNING_POLL) return; - INIT_DELAYED_WORK(&mci->work, edac_mc_workq_function); + if (init) + INIT_DELAYED_WORK(&mci->work, edac_mc_workq_function); + mod_delayed_work(edac_workqueue, &mci->work, msecs_to_jiffies(msec)); } @@ -601,7 +604,7 @@ * user space has updated our poll period value, need to * reset our workq delays */ -void edac_mc_reset_delay_period(int value) +void edac_mc_reset_delay_period(unsigned long value) { struct mem_ctl_info *mci; struct list_head *item; @@ -611,7 +614,7 @@ list_for_each(item, &mc_devices) { mci = list_entry(item, struct mem_ctl_info, link); - edac_mc_workq_setup(mci, (unsigned long) value); + edac_mc_workq_setup(mci, value, false); } mutex_unlock(&mem_ctls_mutex); @@ -782,7 +785,7 @@ /* This instance is NOW RUNNING */ mci->op_state = OP_RUNNING_POLL; - edac_mc_workq_setup(mci, edac_mc_get_poll_msec()); + edac_mc_workq_setup(mci, edac_mc_get_poll_msec(), true); } else { mci->op_state = OP_RUNNING_INTERRUPT; } --- linux-3.13.0.orig/drivers/edac/edac_mc_sysfs.c +++ linux-3.13.0/drivers/edac/edac_mc_sysfs.c @@ -52,18 +52,20 @@ static int edac_set_poll_msec(const char *val, struct kernel_param *kp) { - long l; + unsigned long l; int ret; if (!val) return -EINVAL; - ret = kstrtol(val, 0, &l); + ret = kstrtoul(val, 0, &l); if (ret) return ret; - if ((int)l != l) + + if (l < 1000) return -EINVAL; - *((int *)kp->arg) = l; + + *((unsigned long *)kp->arg) = l; /* notify edac_mc engine to reset the poll period */ edac_mc_reset_delay_period(l); --- linux-3.13.0.orig/drivers/edac/edac_module.h +++ linux-3.13.0/drivers/edac/edac_module.h @@ -52,7 +52,7 @@ extern void edac_device_workq_teardown(struct edac_device_ctl_info *edac_dev); extern void edac_device_reset_delay_period(struct edac_device_ctl_info *edac_dev, unsigned long value); -extern void edac_mc_reset_delay_period(int value); +extern void edac_mc_reset_delay_period(unsigned long value); extern void *edac_align_ptr(void **p, unsigned size, int n_elems); --- linux-3.13.0.orig/drivers/edac/i7300_edac.c +++ linux-3.13.0/drivers/edac/i7300_edac.c @@ -943,33 +943,35 @@ /* Attempt to 'get' the MCH register we want */ pdev = NULL; - while (!pvt->pci_dev_16_1_fsb_addr_map || - !pvt->pci_dev_16_2_fsb_err_regs) { - pdev = pci_get_device(PCI_VENDOR_ID_INTEL, - PCI_DEVICE_ID_INTEL_I7300_MCH_ERR, pdev); - if (!pdev) { - /* End of list, leave */ - i7300_printk(KERN_ERR, - "'system address,Process Bus' " - "device not found:" - "vendor 0x%x device 0x%x ERR funcs " - "(broken BIOS?)\n", - PCI_VENDOR_ID_INTEL, - PCI_DEVICE_ID_INTEL_I7300_MCH_ERR); - goto error; - } - + while ((pdev = pci_get_device(PCI_VENDOR_ID_INTEL, + PCI_DEVICE_ID_INTEL_I7300_MCH_ERR, + pdev))) { /* Store device 16 funcs 1 and 2 */ switch (PCI_FUNC(pdev->devfn)) { case 1: - pvt->pci_dev_16_1_fsb_addr_map = pdev; + if (!pvt->pci_dev_16_1_fsb_addr_map) + pvt->pci_dev_16_1_fsb_addr_map = + pci_dev_get(pdev); break; case 2: - pvt->pci_dev_16_2_fsb_err_regs = pdev; + if (!pvt->pci_dev_16_2_fsb_err_regs) + pvt->pci_dev_16_2_fsb_err_regs = + pci_dev_get(pdev); break; } } + if (!pvt->pci_dev_16_1_fsb_addr_map || + !pvt->pci_dev_16_2_fsb_err_regs) { + /* At least one device was not found */ + i7300_printk(KERN_ERR, + "'system address,Process Bus' device not found:" + "vendor 0x%x device 0x%x ERR funcs (broken BIOS?)\n", + PCI_VENDOR_ID_INTEL, + PCI_DEVICE_ID_INTEL_I7300_MCH_ERR); + goto error; + } + edac_dbg(1, "System Address, processor bus- PCI Bus ID: %s %x:%x\n", pci_name(pvt->pci_dev_16_0_fsb_ctlr), pvt->pci_dev_16_0_fsb_ctlr->vendor, --- linux-3.13.0.orig/drivers/edac/i7core_edac.c +++ linux-3.13.0/drivers/edac/i7core_edac.c @@ -1334,14 +1334,19 @@ * is at addr 8086:2c40, instead of 8086:2c41. So, we need * to probe for the alternate address in case of failure */ - if (dev_descr->dev_id == PCI_DEVICE_ID_INTEL_I7_NONCORE && !pdev) + if (dev_descr->dev_id == PCI_DEVICE_ID_INTEL_I7_NONCORE && !pdev) { + pci_dev_get(*prev); /* pci_get_device will put it */ pdev = pci_get_device(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_I7_NONCORE_ALT, *prev); + } - if (dev_descr->dev_id == PCI_DEVICE_ID_INTEL_LYNNFIELD_NONCORE && !pdev) + if (dev_descr->dev_id == PCI_DEVICE_ID_INTEL_LYNNFIELD_NONCORE && + !pdev) { + pci_dev_get(*prev); /* pci_get_device will put it */ pdev = pci_get_device(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_LYNNFIELD_NONCORE_ALT, *prev); + } if (!pdev) { if (*prev) { --- linux-3.13.0.orig/drivers/eisa/eisa-bus.c +++ linux-3.13.0/drivers/eisa/eisa-bus.c @@ -275,18 +275,19 @@ } if (slot) { + edev->res[i].name = NULL; edev->res[i].start = SLOT_ADDRESS(root, slot) + (i * 0x400); edev->res[i].end = edev->res[i].start + 0xff; edev->res[i].flags = IORESOURCE_IO; } else { + edev->res[i].name = NULL; edev->res[i].start = SLOT_ADDRESS(root, slot) + EISA_VENDOR_ID_OFFSET; edev->res[i].end = edev->res[i].start + 3; edev->res[i].flags = IORESOURCE_IO | IORESOURCE_BUSY; } - dev_printk(KERN_DEBUG, &edev->dev, "%pR\n", &edev->res[i]); if (request_resource(root->res, &edev->res[i])) goto failed; } @@ -326,19 +327,20 @@ return -ENOMEM; } - if (eisa_init_device(root, edev, 0)) { + if (eisa_request_resources(root, edev, 0)) { + dev_warn(root->dev, + "EISA: Cannot allocate resource for mainboard\n"); kfree(edev); if (!root->force_probe) - return -ENODEV; + return -EBUSY; goto force_probe; } - if (eisa_request_resources(root, edev, 0)) { - dev_warn(root->dev, - "EISA: Cannot allocate resource for mainboard\n"); + if (eisa_init_device(root, edev, 0)) { + eisa_release_resources(edev); kfree(edev); if (!root->force_probe) - return -EBUSY; + return -ENODEV; goto force_probe; } @@ -361,11 +363,6 @@ continue; } - if (eisa_init_device(root, edev, i)) { - kfree(edev); - continue; - } - if (eisa_request_resources(root, edev, i)) { dev_warn(root->dev, "Cannot allocate resource for EISA slot %d\n", @@ -373,6 +370,12 @@ kfree(edev); continue; } + + if (eisa_init_device(root, edev, i)) { + eisa_release_resources(edev); + kfree(edev); + continue; + } if (edev->state == (EISA_CONFIG_ENABLED | EISA_CONFIG_FORCED)) enabled_str = " (forced enabled)"; --- linux-3.13.0.orig/drivers/extcon/extcon-gpio.c +++ linux-3.13.0/drivers/extcon/extcon-gpio.c @@ -105,6 +105,12 @@ extcon_data->state_off = pdata->state_off; if (pdata->state_on && pdata->state_off) extcon_data->edev.print_state = extcon_gpio_print_state; + + ret = devm_gpio_request_one(&pdev->dev, extcon_data->gpio, GPIOF_DIR_IN, + pdev->name); + if (ret < 0) + return ret; + if (pdata->debounce) { ret = gpio_set_debounce(extcon_data->gpio, pdata->debounce * 1000); @@ -117,11 +123,6 @@ if (ret < 0) return ret; - ret = devm_gpio_request_one(&pdev->dev, extcon_data->gpio, GPIOF_DIR_IN, - pdev->name); - if (ret < 0) - goto err; - INIT_DELAYED_WORK(&extcon_data->work, gpio_extcon_work); extcon_data->irq = gpio_to_irq(extcon_data->gpio); --- linux-3.13.0.orig/drivers/firewire/core-device.c +++ linux-3.13.0/drivers/firewire/core-device.c @@ -916,7 +916,7 @@ old->config_rom_retries = 0; fw_notice(card, "rediscovered device %s\n", dev_name(dev)); - PREPARE_DELAYED_WORK(&old->work, fw_device_update); + old->workfn = fw_device_update; fw_schedule_device_work(old, 0); if (current_node == card->root_node) @@ -1075,7 +1075,7 @@ if (atomic_cmpxchg(&device->state, FW_DEVICE_INITIALIZING, FW_DEVICE_RUNNING) == FW_DEVICE_GONE) { - PREPARE_DELAYED_WORK(&device->work, fw_device_shutdown); + device->workfn = fw_device_shutdown; fw_schedule_device_work(device, SHUTDOWN_DELAY); } else { fw_notice(card, "created device %s: GUID %08x%08x, S%d00\n", @@ -1196,13 +1196,20 @@ dev_name(&device->device), fw_rcode_string(ret)); gone: atomic_set(&device->state, FW_DEVICE_GONE); - PREPARE_DELAYED_WORK(&device->work, fw_device_shutdown); + device->workfn = fw_device_shutdown; fw_schedule_device_work(device, SHUTDOWN_DELAY); out: if (node_id == card->root_node->node_id) fw_schedule_bm_work(card, 0); } +static void fw_device_workfn(struct work_struct *work) +{ + struct fw_device *device = container_of(to_delayed_work(work), + struct fw_device, work); + device->workfn(work); +} + void fw_node_event(struct fw_card *card, struct fw_node *node, int event) { struct fw_device *device; @@ -1252,7 +1259,8 @@ * power-up after getting plugged in. We schedule the * first config rom scan half a second after bus reset. */ - INIT_DELAYED_WORK(&device->work, fw_device_init); + device->workfn = fw_device_init; + INIT_DELAYED_WORK(&device->work, fw_device_workfn); fw_schedule_device_work(device, INITIAL_DELAY); break; @@ -1268,7 +1276,7 @@ if (atomic_cmpxchg(&device->state, FW_DEVICE_RUNNING, FW_DEVICE_INITIALIZING) == FW_DEVICE_RUNNING) { - PREPARE_DELAYED_WORK(&device->work, fw_device_refresh); + device->workfn = fw_device_refresh; fw_schedule_device_work(device, device->is_local ? 0 : INITIAL_DELAY); } @@ -1283,7 +1291,7 @@ smp_wmb(); /* update node_id before generation */ device->generation = card->generation; if (atomic_read(&device->state) == FW_DEVICE_RUNNING) { - PREPARE_DELAYED_WORK(&device->work, fw_device_update); + device->workfn = fw_device_update; fw_schedule_device_work(device, 0); } break; @@ -1308,7 +1316,7 @@ device = node->data; if (atomic_xchg(&device->state, FW_DEVICE_GONE) == FW_DEVICE_RUNNING) { - PREPARE_DELAYED_WORK(&device->work, fw_device_shutdown); + device->workfn = fw_device_shutdown; fw_schedule_device_work(device, list_empty(&card->link) ? 0 : SHUTDOWN_DELAY); } --- linux-3.13.0.orig/drivers/firewire/net.c +++ linux-3.13.0/drivers/firewire/net.c @@ -929,8 +929,6 @@ if (rcode == RCODE_COMPLETE) { fwnet_transmit_packet_done(ptask); } else { - fwnet_transmit_packet_failed(ptask); - if (printk_timed_ratelimit(&j, 1000) || rcode != last_rcode) { dev_err(&ptask->dev->netdev->dev, "fwnet_write_complete failed: %x (skipped %d)\n", @@ -938,8 +936,10 @@ errors_skipped = 0; last_rcode = rcode; - } else + } else { errors_skipped++; + } + fwnet_transmit_packet_failed(ptask); } } --- linux-3.13.0.orig/drivers/firewire/ohci.c +++ linux-3.13.0/drivers/firewire/ohci.c @@ -290,7 +290,6 @@ #define QUIRK_NO_MSI 0x10 #define QUIRK_TI_SLLZ059 0x20 #define QUIRK_IR_WAKE 0x40 -#define QUIRK_PHY_LCTRL_TIMEOUT 0x80 /* In case of multiple matches in ohci_quirks[], only the first one is used. */ static const struct { @@ -303,10 +302,7 @@ QUIRK_BE_HEADERS}, {PCI_VENDOR_ID_ATT, PCI_DEVICE_ID_AGERE_FW643, 6, - QUIRK_PHY_LCTRL_TIMEOUT | QUIRK_NO_MSI}, - - {PCI_VENDOR_ID_ATT, PCI_ANY_ID, PCI_ANY_ID, - QUIRK_PHY_LCTRL_TIMEOUT}, + QUIRK_NO_MSI}, {PCI_VENDOR_ID_CREATIVE, PCI_DEVICE_ID_CREATIVE_SB1394, PCI_ANY_ID, QUIRK_RESET_PACKET}, @@ -353,7 +349,6 @@ ", disable MSI = " __stringify(QUIRK_NO_MSI) ", TI SLLZ059 erratum = " __stringify(QUIRK_TI_SLLZ059) ", IR wake unreliable = " __stringify(QUIRK_IR_WAKE) - ", phy LCtrl timeout = " __stringify(QUIRK_PHY_LCTRL_TIMEOUT) ")"); #define OHCI_PARAM_DEBUG_AT_AR 1 @@ -2295,9 +2290,6 @@ * TI TSB82AA2 + TSB81BA3(A) cards signal LPS enabled early but * cannot actually use the phy at that time. These need tens of * millisecods pause between LPS write and first phy access too. - * - * But do not wait for 50msec on Agere/LSI cards. Their phy - * arbitration state machine may time out during such a long wait. */ reg_write(ohci, OHCI1394_HCControlSet, @@ -2305,11 +2297,8 @@ OHCI1394_HCControl_postedWriteEnable); flush_writes(ohci); - if (!(ohci->quirks & QUIRK_PHY_LCTRL_TIMEOUT)) + for (lps = 0, i = 0; !lps && i < 3; i++) { msleep(50); - - for (lps = 0, i = 0; !lps && i < 150; i++) { - msleep(1); lps = reg_read(ohci, OHCI1394_HCControlSet) & OHCI1394_HCControl_LPS; } --- linux-3.13.0.orig/drivers/firewire/sbp2.c +++ linux-3.13.0/drivers/firewire/sbp2.c @@ -146,6 +146,7 @@ */ int generation; int retries; + work_func_t workfn; struct delayed_work work; bool has_sdev; bool blocked; @@ -864,7 +865,7 @@ /* set appropriate retry limit(s) in BUSY_TIMEOUT register */ sbp2_set_busy_timeout(lu); - PREPARE_DELAYED_WORK(&lu->work, sbp2_reconnect); + lu->workfn = sbp2_reconnect; sbp2_agent_reset(lu); /* This was a re-login. */ @@ -918,7 +919,7 @@ * If a bus reset happened, sbp2_update will have requeued * lu->work already. Reset the work from reconnect to login. */ - PREPARE_DELAYED_WORK(&lu->work, sbp2_login); + lu->workfn = sbp2_login; } static void sbp2_reconnect(struct work_struct *work) @@ -952,7 +953,7 @@ lu->retries++ >= 5) { dev_err(tgt_dev(tgt), "failed to reconnect\n"); lu->retries = 0; - PREPARE_DELAYED_WORK(&lu->work, sbp2_login); + lu->workfn = sbp2_login; } sbp2_queue_work(lu, DIV_ROUND_UP(HZ, 5)); @@ -972,6 +973,13 @@ sbp2_conditionally_unblock(lu); } +static void sbp2_lu_workfn(struct work_struct *work) +{ + struct sbp2_logical_unit *lu = container_of(to_delayed_work(work), + struct sbp2_logical_unit, work); + lu->workfn(work); +} + static int sbp2_add_logical_unit(struct sbp2_target *tgt, int lun_entry) { struct sbp2_logical_unit *lu; @@ -998,7 +1006,8 @@ lu->blocked = false; ++tgt->dont_block; INIT_LIST_HEAD(&lu->orb_list); - INIT_DELAYED_WORK(&lu->work, sbp2_login); + lu->workfn = sbp2_login; + INIT_DELAYED_WORK(&lu->work, sbp2_lu_workfn); list_add_tail(&lu->link, &tgt->lu_list); return 0; --- linux-3.13.0.orig/drivers/gpio/gpio-mxs.c +++ linux-3.13.0/drivers/gpio/gpio-mxs.c @@ -214,7 +214,8 @@ ct->regs.ack = PINCTRL_IRQSTAT(port) + MXS_CLR; ct->regs.mask = PINCTRL_IRQEN(port); - irq_setup_generic_chip(gc, IRQ_MSK(32), 0, IRQ_NOREQUEST, 0); + irq_setup_generic_chip(gc, IRQ_MSK(32), IRQ_GC_INIT_NESTED_LOCK, + IRQ_NOREQUEST, 0); } static int mxs_gpio_to_irq(struct gpio_chip *gc, unsigned offset) --- linux-3.13.0.orig/drivers/gpu/drm/armada/armada_crtc.c +++ linux-3.13.0/drivers/gpu/drm/armada/armada_crtc.c @@ -678,6 +678,7 @@ base + LCD_SPU_SRAM_WRDAT); writel_relaxed(addr | SRAM_WRITE, base + LCD_SPU_SRAM_CTRL); + readl_relaxed(base + LCD_SPU_HWC_OVSA_HPXL_VLN); addr += 1; if ((addr & 0x00ff) == 0) addr += 0xf00; --- linux-3.13.0.orig/drivers/gpu/drm/armada/armada_drv.c +++ linux-3.13.0/drivers/gpu/drm/armada/armada_drv.c @@ -68,15 +68,7 @@ { struct armada_private *priv = dev->dev_private; - /* - * Yes, we really must jump through these hoops just to store a - * _pointer_ to something into the kfifo. This is utterly insane - * and idiotic, because it kfifo requires the _data_ pointed to by - * the pointer const, not the pointer itself. Not only that, but - * you have to pass a pointer _to_ the pointer you want stored. - */ - const struct drm_framebuffer *silly_api_alert = fb; - WARN_ON(!kfifo_put(&priv->fb_unref, &silly_api_alert)); + WARN_ON(!kfifo_put(&priv->fb_unref, fb)); schedule_work(&priv->fb_unref_work); } --- linux-3.13.0.orig/drivers/gpu/drm/ast/ast_fb.c +++ linux-3.13.0/drivers/gpu/drm/ast/ast_fb.c @@ -65,7 +65,7 @@ * then the BO is being moved and we should * store up the damage until later. */ - if (!in_interrupt()) + if (drm_can_sleep()) ret = ast_bo_reserve(bo, true); if (ret) { if (ret != -EBUSY) --- linux-3.13.0.orig/drivers/gpu/drm/cirrus/cirrus_fbdev.c +++ linux-3.13.0/drivers/gpu/drm/cirrus/cirrus_fbdev.c @@ -39,7 +39,7 @@ * then the BO is being moved and we should * store up the damage until later. */ - if (!in_interrupt()) + if (drm_can_sleep()) ret = cirrus_bo_reserve(bo, true); if (ret) { if (ret != -EBUSY) --- linux-3.13.0.orig/drivers/gpu/drm/cirrus/cirrus_mode.c +++ linux-3.13.0/drivers/gpu/drm/cirrus/cirrus_mode.c @@ -273,8 +273,8 @@ sr07 |= 0x11; break; case 16: - sr07 |= 0xc1; - hdr = 0xc0; + sr07 |= 0x17; + hdr = 0xc1; break; case 24: sr07 |= 0x15; --- linux-3.13.0.orig/drivers/gpu/drm/drm_crtc.c +++ linux-3.13.0/drivers/gpu/drm/drm_crtc.c @@ -675,6 +675,29 @@ EXPORT_SYMBOL(drm_crtc_cleanup); /** + * drm_crtc_index - find the index of a registered CRTC + * @crtc: CRTC to find index for + * + * Given a registered CRTC, return the index of that CRTC within a DRM + * device's list of CRTCs. + */ +unsigned int drm_crtc_index(struct drm_crtc *crtc) +{ + unsigned int index = 0; + struct drm_crtc *tmp; + + list_for_each_entry(tmp, &crtc->dev->mode_config.crtc_list, head) { + if (tmp == crtc) + return index; + + index++; + } + + BUG(); +} +EXPORT_SYMBOL(drm_crtc_index); + +/** * drm_mode_probed_add - add a mode to a connector's probed mode list * @connector: connector the new mode * @mode: mode data --- linux-3.13.0.orig/drivers/gpu/drm/drm_crtc_helper.c +++ linux-3.13.0/drivers/gpu/drm/drm_crtc_helper.c @@ -324,35 +324,6 @@ } EXPORT_SYMBOL(drm_helper_disable_unused_functions); -/** - * drm_encoder_crtc_ok - can a given crtc drive a given encoder? - * @encoder: encoder to test - * @crtc: crtc to test - * - * Return false if @encoder can't be driven by @crtc, true otherwise. - */ -static bool drm_encoder_crtc_ok(struct drm_encoder *encoder, - struct drm_crtc *crtc) -{ - struct drm_device *dev; - struct drm_crtc *tmp; - int crtc_mask = 1; - - WARN(!crtc, "checking null crtc?\n"); - - dev = crtc->dev; - - list_for_each_entry(tmp, &dev->mode_config.crtc_list, head) { - if (tmp == crtc) - break; - crtc_mask <<= 1; - } - - if (encoder->possible_crtcs & crtc_mask) - return true; - return false; -} - /* * Check the CRTC we're going to map each output to vs. its current * CRTC. If they don't match, we have to disable the output and the CRTC @@ -536,7 +507,7 @@ * are later needed by vblank and swap-completion * timestamping. They are derived from true hwmode. */ - drm_calc_timestamping_constants(crtc); + drm_calc_timestamping_constants(crtc, &crtc->hwmode); /* FIXME: add subpixel order */ done: --- linux-3.13.0.orig/drivers/gpu/drm/drm_gem.c +++ linux-3.13.0/drivers/gpu/drm/drm_gem.c @@ -129,11 +129,12 @@ { struct file *filp; + drm_gem_private_object_init(dev, obj, size); + filp = shmem_file_setup("drm mm object", size, VM_NORESERVE); if (IS_ERR(filp)) return PTR_ERR(filp); - drm_gem_private_object_init(dev, obj, size); obj->filp = filp; return 0; --- linux-3.13.0.orig/drivers/gpu/drm/drm_irq.c +++ linux-3.13.0/drivers/gpu/drm/drm_irq.c @@ -445,20 +445,22 @@ * adjustments into account. * * @crtc drm_crtc whose timestamp constants should be updated. + * @mode display mode containing the scanout timings * */ -void drm_calc_timestamping_constants(struct drm_crtc *crtc) +void drm_calc_timestamping_constants(struct drm_crtc *crtc, + const struct drm_display_mode *mode) { s64 linedur_ns = 0, pixeldur_ns = 0, framedur_ns = 0; u64 dotclock; /* Dot clock in Hz: */ - dotclock = (u64) crtc->hwmode.clock * 1000; + dotclock = (u64) mode->clock * 1000; /* Fields of interlaced scanout modes are only half a frame duration. * Double the dotclock to get half the frame-/line-/pixelduration. */ - if (crtc->hwmode.flags & DRM_MODE_FLAG_INTERLACE) + if (mode->flags & DRM_MODE_FLAG_INTERLACE) dotclock *= 2; /* Valid dotclock? */ @@ -469,10 +471,9 @@ * nanoseconds: */ pixeldur_ns = (s64) div64_u64(1000000000, dotclock); - linedur_ns = (s64) div64_u64(((u64) crtc->hwmode.crtc_htotal * + linedur_ns = (s64) div64_u64(((u64) mode->crtc_htotal * 1000000000), dotclock); - frame_size = crtc->hwmode.crtc_htotal * - crtc->hwmode.crtc_vtotal; + frame_size = mode->crtc_htotal * mode->crtc_vtotal; framedur_ns = (s64) div64_u64((u64) frame_size * 1000000000, dotclock); } else @@ -484,8 +485,8 @@ crtc->framedur_ns = framedur_ns; DRM_DEBUG("crtc %d: hwmode: htotal %d, vtotal %d, vdisplay %d\n", - crtc->base.id, crtc->hwmode.crtc_htotal, - crtc->hwmode.crtc_vtotal, crtc->hwmode.crtc_vdisplay); + crtc->base.id, mode->crtc_htotal, + mode->crtc_vtotal, mode->crtc_vdisplay); DRM_DEBUG("crtc %d: clock %d kHz framedur %d linedur %d, pixeldur %d\n", crtc->base.id, (int) dotclock/1000, (int) framedur_ns, (int) linedur_ns, (int) pixeldur_ns); @@ -521,6 +522,7 @@ * 0 = Default. * DRM_CALLED_FROM_VBLIRQ = If function is called from vbl irq handler. * @refcrtc: drm_crtc* of crtc which defines scanout timing. + * @mode: mode which defines the scanout timings * * Returns negative value on error, failure or if not supported in current * video mode: @@ -540,11 +542,11 @@ int *max_error, struct timeval *vblank_time, unsigned flags, - struct drm_crtc *refcrtc) + const struct drm_crtc *refcrtc, + const struct drm_display_mode *mode) { ktime_t stime, etime, mono_time_offset; struct timeval tv_etime; - struct drm_display_mode *mode; int vbl_status, vtotal, vdisplay; int vpos, hpos, i; s64 framedur_ns, linedur_ns, pixeldur_ns, delta_ns, duration_ns; @@ -561,7 +563,6 @@ return -EIO; } - mode = &refcrtc->hwmode; vtotal = mode->crtc_vtotal; vdisplay = mode->crtc_vdisplay; @@ -590,7 +591,7 @@ * Get vertical and horizontal scanout position vpos, hpos, * and bounding timestamps stime, etime, pre/post query. */ - vbl_status = dev->driver->get_scanout_position(dev, crtc, &vpos, + vbl_status = dev->driver->get_scanout_position(dev, crtc, flags, &vpos, &hpos, &stime, &etime); /* --- linux-3.13.0.orig/drivers/gpu/drm/gma500/gma_display.c +++ linux-3.13.0/drivers/gpu/drm/gma500/gma_display.c @@ -349,6 +349,7 @@ /* If we didn't get a handle then turn the cursor off */ if (!handle) { temp = CURSOR_MODE_DISABLE; + mutex_lock(&dev->struct_mutex); if (gma_power_begin(dev, false)) { REG_WRITE(control, temp); @@ -365,6 +366,7 @@ gma_crtc->cursor_obj = NULL; } + mutex_unlock(&dev->struct_mutex); return 0; } @@ -374,9 +376,12 @@ return -EINVAL; } + mutex_lock(&dev->struct_mutex); obj = drm_gem_object_lookup(dev, file_priv, handle); - if (!obj) - return -ENOENT; + if (!obj) { + ret = -ENOENT; + goto unlock; + } if (obj->size < width * height * 4) { dev_dbg(dev->dev, "Buffer is too small\n"); @@ -440,10 +445,13 @@ } gma_crtc->cursor_obj = obj; +unlock: + mutex_unlock(&dev->struct_mutex); return ret; unref_cursor: drm_gem_object_unreference(obj); + mutex_unlock(&dev->struct_mutex); return ret; } --- linux-3.13.0.orig/drivers/gpu/drm/i915/Kconfig +++ linux-3.13.0/drivers/gpu/drm/i915/Kconfig @@ -35,12 +35,11 @@ config DRM_I915_KMS bool "Enable modesetting on intel by default" depends on DRM_I915 + default y help - Choose this option if you want kernel modesetting enabled by default, - and you have a new enough userspace to support this. Running old - userspaces with this enabled will cause pain. Note that this causes - the driver to bind to PCI devices, which precludes loading things - like intelfb. + Choose this option if you want kernel modesetting enabled by default. + + If in doubt, say "Y". config DRM_I915_FBDEV bool "Enable legacy fbdev support for the modesettting intel driver" @@ -55,9 +54,12 @@ support. Note that this support also provide the linux console support on top of the intel modesetting driver. + If in doubt, say "Y". + config DRM_I915_PRELIMINARY_HW_SUPPORT bool "Enable preliminary support for prerelease Intel hardware by default" depends on DRM_I915 + default n help Choose this option if you have prerelease Intel hardware and want the i915 driver to support it by default. You can enable such support at @@ -65,3 +67,15 @@ option changes the default for that module option. If in doubt, say "N". + +config DRM_I915_UMS + bool "Enable userspace modesetting on Intel hardware (DEPRECATED)" + depends on DRM_I915 + default n + help + Choose this option if you still need userspace modesetting. + + Userspace modesetting is deprecated for quite some time now, so + enable this only if you have ancient versions of the DDX drivers. + + If in doubt, say "N". --- linux-3.13.0.orig/drivers/gpu/drm/i915/i915_dma.c +++ linux-3.13.0/drivers/gpu/drm/i915/i915_dma.c @@ -1679,6 +1679,7 @@ intel_teardown_gmbus(dev); intel_teardown_mchbar(dev); + pm_qos_remove_request(&dev_priv->pm_qos); destroy_workqueue(dev_priv->wq); out_mtrrfree: arch_phys_wc_del(dev_priv->gtt.mtrr); @@ -1910,6 +1911,7 @@ DRM_IOCTL_DEF_DRV(I915_GEM_CONTEXT_CREATE, i915_gem_context_create_ioctl, DRM_UNLOCKED|DRM_RENDER_ALLOW), DRM_IOCTL_DEF_DRV(I915_GEM_CONTEXT_DESTROY, i915_gem_context_destroy_ioctl, DRM_UNLOCKED|DRM_RENDER_ALLOW), DRM_IOCTL_DEF_DRV(I915_REG_READ, i915_reg_read_ioctl, DRM_UNLOCKED|DRM_RENDER_ALLOW), + DRM_IOCTL_DEF_DRV(I915_GET_RESET_STATS, i915_get_reset_stats_ioctl, DRM_UNLOCKED|DRM_RENDER_ALLOW), }; int i915_max_ioctl = DRM_ARRAY_SIZE(i915_ioctls); --- linux-3.13.0.orig/drivers/gpu/drm/i915/i915_drv.c +++ linux-3.13.0/drivers/gpu/drm/i915/i915_drv.c @@ -385,9 +385,7 @@ INTEL_HSW_D_IDS(&intel_haswell_d_info), \ INTEL_HSW_M_IDS(&intel_haswell_m_info), \ INTEL_VLV_M_IDS(&intel_valleyview_m_info), \ - INTEL_VLV_D_IDS(&intel_valleyview_d_info), \ - INTEL_BDW_M_IDS(&intel_broadwell_m_info), \ - INTEL_BDW_D_IDS(&intel_broadwell_d_info) + INTEL_VLV_D_IDS(&intel_valleyview_d_info) static const struct pci_device_id pciidlist[] = { /* aka */ INTEL_PCI_IDS, @@ -401,7 +399,7 @@ void intel_detect_pch(struct drm_device *dev) { struct drm_i915_private *dev_priv = dev->dev_private; - struct pci_dev *pch; + struct pci_dev *pch = NULL; /* In all current cases, num_pipes is equivalent to the PCH_NOP setting * (which really amounts to a PCH but no South Display). @@ -422,12 +420,9 @@ * all the ISA bridge devices and check for the first match, instead * of only checking the first one. */ - pch = pci_get_class(PCI_CLASS_BRIDGE_ISA << 8, NULL); - while (pch) { - struct pci_dev *curr = pch; + while ((pch = pci_get_class(PCI_CLASS_BRIDGE_ISA << 8, pch))) { if (pch->vendor == PCI_VENDOR_ID_INTEL) { - unsigned short id; - id = pch->device & INTEL_PCH_DEVICE_ID_MASK; + unsigned short id = pch->device & INTEL_PCH_DEVICE_ID_MASK; dev_priv->pch_id = id; if (id == INTEL_PCH_IBX_DEVICE_ID_TYPE) { @@ -459,18 +454,16 @@ DRM_DEBUG_KMS("Found LynxPoint LP PCH\n"); WARN_ON(!IS_HASWELL(dev)); WARN_ON(!IS_ULT(dev)); - } else { - goto check_next; - } - pci_dev_put(pch); + } else + continue; + break; } -check_next: - pch = pci_get_class(PCI_CLASS_BRIDGE_ISA << 8, curr); - pci_dev_put(curr); } if (!pch) - DRM_DEBUG_KMS("No PCH found?\n"); + DRM_DEBUG_KMS("No PCH found.\n"); + + pci_dev_put(pch); } bool i915_semaphore_is_enabled(struct drm_device *dev) @@ -615,15 +608,20 @@ drm_helper_hpd_irq_event(dev); } +static int i915_drm_thaw_early(struct drm_device *dev) +{ + intel_uncore_early_sanitize(dev); + intel_uncore_sanitize(dev); + intel_power_domains_init_hw(dev); + + return 0; +} + static int __i915_drm_thaw(struct drm_device *dev, bool restore_gtt_mappings) { struct drm_i915_private *dev_priv = dev->dev_private; int error = 0; - intel_uncore_early_sanitize(dev); - - intel_uncore_sanitize(dev); - if (drm_core_check_feature(dev, DRIVER_MODESET) && restore_gtt_mappings) { mutex_lock(&dev->struct_mutex); @@ -631,8 +629,6 @@ mutex_unlock(&dev->struct_mutex); } - intel_power_domains_init_hw(dev); - i915_restore_state(dev); intel_opregion_setup(dev); @@ -699,19 +695,33 @@ return __i915_drm_thaw(dev, true); } -int i915_resume(struct drm_device *dev) +static int i915_resume_early(struct drm_device *dev) { - struct drm_i915_private *dev_priv = dev->dev_private; - int ret; - if (dev->switch_power_state == DRM_SWITCH_POWER_OFF) return 0; + /* + * We have a resume ordering issue with the snd-hda driver also + * requiring our device to be power up. Due to the lack of a + * parent/child relationship we currently solve this with an early + * resume hook. + * + * FIXME: This should be solved with a special hdmi sink device or + * similar so that power domains can be employed. + */ if (pci_enable_device(dev->pdev)) return -EIO; pci_set_master(dev->pdev); + return i915_drm_thaw_early(dev); +} + +int i915_resume(struct drm_device *dev) +{ + struct drm_i915_private *dev_priv = dev->dev_private; + int ret; + /* * Platforms with opregion should have sane BIOS, older ones (gen3 and * earlier) need to restore the GTT mappings since the BIOS might clear @@ -725,6 +735,14 @@ return 0; } +static int i915_resume_legacy(struct drm_device *dev) +{ + i915_resume_early(dev); + i915_resume(dev); + + return 0; +} + /** * i915_reset - reset chip after a hang * @dev: drm device to reset @@ -858,7 +876,6 @@ { struct pci_dev *pdev = to_pci_dev(dev); struct drm_device *drm_dev = pci_get_drvdata(pdev); - int error; if (!drm_dev || !drm_dev->dev_private) { dev_err(dev, "DRM not initialized, aborting suspend.\n"); @@ -868,9 +885,25 @@ if (drm_dev->switch_power_state == DRM_SWITCH_POWER_OFF) return 0; - error = i915_drm_freeze(drm_dev); - if (error) - return error; + return i915_drm_freeze(drm_dev); +} + +static int i915_pm_suspend_late(struct device *dev) +{ + struct pci_dev *pdev = to_pci_dev(dev); + struct drm_device *drm_dev = pci_get_drvdata(pdev); + + /* + * We have a suspedn ordering issue with the snd-hda driver also + * requiring our device to be power up. Due to the lack of a + * parent/child relationship we currently solve this with an late + * suspend hook. + * + * FIXME: This should be solved with a special hdmi sink device or + * similar so that power domains can be employed. + */ + if (drm_dev->switch_power_state == DRM_SWITCH_POWER_OFF) + return 0; pci_disable_device(pdev); pci_set_power_state(pdev, PCI_D3hot); @@ -878,6 +911,14 @@ return 0; } +static int i915_pm_resume_early(struct device *dev) +{ + struct pci_dev *pdev = to_pci_dev(dev); + struct drm_device *drm_dev = pci_get_drvdata(pdev); + + return i915_resume_early(drm_dev); +} + static int i915_pm_resume(struct device *dev) { struct pci_dev *pdev = to_pci_dev(dev); @@ -899,6 +940,14 @@ return i915_drm_freeze(drm_dev); } +static int i915_pm_thaw_early(struct device *dev) +{ + struct pci_dev *pdev = to_pci_dev(dev); + struct drm_device *drm_dev = pci_get_drvdata(pdev); + + return i915_drm_thaw_early(drm_dev); +} + static int i915_pm_thaw(struct device *dev) { struct pci_dev *pdev = to_pci_dev(dev); @@ -917,10 +966,14 @@ static const struct dev_pm_ops i915_pm_ops = { .suspend = i915_pm_suspend, + .suspend_late = i915_pm_suspend_late, + .resume_early = i915_pm_resume_early, .resume = i915_pm_resume, .freeze = i915_pm_freeze, + .thaw_early = i915_pm_thaw_early, .thaw = i915_pm_thaw, .poweroff = i915_pm_poweroff, + .restore_early = i915_pm_resume_early, .restore = i915_pm_resume, }; @@ -961,7 +1014,7 @@ /* Used in place of i915_pm_ops for non-DRIVER_MODESET */ .suspend = i915_suspend, - .resume = i915_resume, + .resume = i915_resume_legacy, .device_is_agp = i915_driver_device_is_agp, .master_create = i915_master_create, @@ -1024,8 +1077,13 @@ driver.driver_features &= ~DRIVER_MODESET; #endif - if (!(driver.driver_features & DRIVER_MODESET)) + if (!(driver.driver_features & DRIVER_MODESET)) { driver.get_vblank_timestamp = NULL; +#ifndef CONFIG_DRM_I915_UMS + /* Silently fail loading to not upset userspace. */ + return 0; +#endif + } return drm_pci_init(&driver, &i915_pci_driver); } --- linux-3.13.0.orig/drivers/gpu/drm/i915/i915_drv.h +++ linux-3.13.0/drivers/gpu/drm/i915/i915_drv.h @@ -317,6 +317,7 @@ u64 fence[I915_MAX_NUM_FENCES]; struct timeval time; struct drm_i915_error_ring { + bool valid; struct drm_i915_error_object { int page_count; u32 gtt_offset; @@ -1077,34 +1078,30 @@ unsigned long missed_irq_rings; /** - * State variable and reset counter controlling the reset flow + * State variable controlling the reset flow and count * - * Upper bits are for the reset counter. This counter is used by the - * wait_seqno code to race-free noticed that a reset event happened and - * that it needs to restart the entire ioctl (since most likely the - * seqno it waited for won't ever signal anytime soon). + * This is a counter which gets incremented when reset is triggered, + * and again when reset has been handled. So odd values (lowest bit set) + * means that reset is in progress and even values that + * (reset_counter >> 1):th reset was successfully completed. + * + * If reset is not completed succesfully, the I915_WEDGE bit is + * set meaning that hardware is terminally sour and there is no + * recovery. All waiters on the reset_queue will be woken when + * that happens. + * + * This counter is used by the wait_seqno code to notice that reset + * event happened and it needs to restart the entire ioctl (since most + * likely the seqno it waited for won't ever signal anytime soon). * * This is important for lock-free wait paths, where no contended lock * naturally enforces the correct ordering between the bail-out of the * waiter and the gpu reset work code. - * - * Lowest bit controls the reset state machine: Set means a reset is in - * progress. This state will (presuming we don't have any bugs) decay - * into either unset (successful reset) or the special WEDGED value (hw - * terminally sour). All waiters on the reset_queue will be woken when - * that happens. */ atomic_t reset_counter; - /** - * Special values/flags for reset_counter - * - * Note that the code relies on - * I915_WEDGED & I915_RESET_IN_PROGRESS_FLAG - * being true. - */ #define I915_RESET_IN_PROGRESS_FLAG 1 -#define I915_WEDGED 0xffffffff +#define I915_WEDGED (1 << 31) /** * Waitqueue to signal when the reset has completed. Used by clients @@ -2063,12 +2060,17 @@ static inline bool i915_reset_in_progress(struct i915_gpu_error *error) { return unlikely(atomic_read(&error->reset_counter) - & I915_RESET_IN_PROGRESS_FLAG); + & (I915_RESET_IN_PROGRESS_FLAG | I915_WEDGED)); } static inline bool i915_terminally_wedged(struct i915_gpu_error *error) { - return atomic_read(&error->reset_counter) == I915_WEDGED; + return atomic_read(&error->reset_counter) & I915_WEDGED; +} + +static inline u32 i915_reset_count(struct i915_gpu_error *error) +{ + return ((atomic_read(&error->reset_counter) & ~I915_WEDGED) + 1) / 2; } void i915_gem_reset(struct drm_device *dev); @@ -2398,6 +2400,8 @@ extern bool i915_semaphore_is_enabled(struct drm_device *dev); int i915_reg_read_ioctl(struct drm_device *dev, void *data, struct drm_file *file); +int i915_get_reset_stats_ioctl(struct drm_device *dev, void *data, + struct drm_file *file); /* overlay */ extern struct intel_overlay_error_state *intel_overlay_capture_error_state(struct drm_device *dev); --- linux-3.13.0.orig/drivers/gpu/drm/i915/i915_gem.c +++ linux-3.13.0/drivers/gpu/drm/i915/i915_gem.c @@ -3486,7 +3486,7 @@ { struct drm_device *dev = obj->base.dev; drm_i915_private_t *dev_priv = dev->dev_private; - struct i915_vma *vma; + struct i915_vma *vma, *next; int ret; if (obj->cache_level == cache_level) @@ -3497,7 +3497,7 @@ return -EBUSY; } - list_for_each_entry(vma, &obj->vma_list, vma_link) { + list_for_each_entry_safe(vma, next, &obj->vma_list, vma_link) { if (!i915_gem_valid_gtt_space(dev, &vma->node, cache_level)) { ret = i915_vma_unbind(vma); if (ret) --- linux-3.13.0.orig/drivers/gpu/drm/i915/i915_gem_gtt.c +++ linux-3.13.0/drivers/gpu/drm/i915/i915_gem_gtt.c @@ -828,7 +828,7 @@ dev_priv->gtt.base.clear_range(&dev_priv->gtt.base, dev_priv->gtt.base.start / PAGE_SIZE, dev_priv->gtt.base.total / PAGE_SIZE, - false); + true); } void i915_gem_restore_gtt_mappings(struct drm_device *dev) --- linux-3.13.0.orig/drivers/gpu/drm/i915/i915_gem_stolen.c +++ linux-3.13.0/drivers/gpu/drm/i915/i915_gem_stolen.c @@ -201,6 +201,13 @@ struct drm_i915_private *dev_priv = dev->dev_private; int bios_reserved = 0; +#ifdef CONFIG_INTEL_IOMMU + if (intel_iommu_gfx_mapped) { + DRM_INFO("DMAR active, disabling use of stolen memory\n"); + return 0; + } +#endif + if (dev_priv->gtt.stolen_size == 0) return 0; @@ -250,7 +257,7 @@ } sg = st->sgl; - sg->offset = offset; + sg->offset = 0; sg->length = size; sg_dma_address(sg) = (dma_addr_t)dev_priv->mm.stolen_base + offset; --- linux-3.13.0.orig/drivers/gpu/drm/i915/i915_gpu_error.c +++ linux-3.13.0/drivers/gpu/drm/i915/i915_gpu_error.c @@ -146,7 +146,10 @@ va_list tmp; va_copy(tmp, args); - if (!__i915_error_seek(e, vsnprintf(NULL, 0, f, tmp))) + len = vsnprintf(NULL, 0, f, tmp); + va_end(tmp); + + if (!__i915_error_seek(e, len)) return; } @@ -239,6 +242,9 @@ unsigned ring) { BUG_ON(ring >= I915_NUM_RINGS); /* shut up confused gcc */ + if (!error->ring[ring].valid) + return; + err_printf(m, "%s command stream:\n", ring_str(ring)); err_printf(m, " HEAD: 0x%08x\n", error->head[ring]); err_printf(m, " TAIL: 0x%08x\n", error->tail[ring]); @@ -294,7 +300,6 @@ struct drm_device *dev = error_priv->dev; drm_i915_private_t *dev_priv = dev->dev_private; struct drm_i915_error_state *error = error_priv->error; - struct intel_ring_buffer *ring; int i, j, page, offset, elt; if (!error) { @@ -329,7 +334,7 @@ if (INTEL_INFO(dev)->gen == 7) err_printf(m, "ERR_INT: 0x%08x\n", error->err_int); - for_each_ring(ring, dev_priv, i) + for (i = 0; i < ARRAY_SIZE(error->ring); i++) i915_ring_error_state(m, dev, error, i); if (error->active_bo) @@ -386,8 +391,7 @@ } } - obj = error->ring[i].ctx; - if (obj) { + if ((obj = error->ring[i].ctx)) { err_printf(m, "%s --- HW Context = 0x%08x\n", dev_priv->ring[i].name, obj->gtt_offset); @@ -668,7 +672,8 @@ return NULL; obj = ring->scratch.obj; - if (acthd >= i915_gem_obj_ggtt_offset(obj) && + if (obj != NULL && + acthd >= i915_gem_obj_ggtt_offset(obj) && acthd < i915_gem_obj_ggtt_offset(obj) + obj->base.size) return i915_error_object_create(dev_priv, obj); } @@ -775,11 +780,17 @@ struct drm_i915_error_state *error) { struct drm_i915_private *dev_priv = dev->dev_private; - struct intel_ring_buffer *ring; struct drm_i915_gem_request *request; int i, count; - for_each_ring(ring, dev_priv, i) { + for (i = 0; i < I915_NUM_RINGS; i++) { + struct intel_ring_buffer *ring = &dev_priv->ring[i]; + + if (ring->dev == NULL) + continue; + + error->ring[i].valid = true; + i915_record_ring_state(dev, error, ring); error->ring[i].batchbuffer = --- linux-3.13.0.orig/drivers/gpu/drm/i915/i915_irq.c +++ linux-3.13.0/drivers/gpu/drm/i915/i915_irq.c @@ -567,8 +567,7 @@ vbl_start = mode->crtc_vblank_start * mode->crtc_htotal; } else { - enum transcoder cpu_transcoder = - intel_pipe_to_cpu_transcoder(dev_priv, pipe); + enum transcoder cpu_transcoder = (enum transcoder) pipe; u32 htotal; htotal = ((I915_READ(HTOTAL(cpu_transcoder)) >> 16) & 0x1fff) + 1; @@ -675,7 +674,8 @@ } static int i915_get_crtc_scanoutpos(struct drm_device *dev, int pipe, - int *vpos, int *hpos, ktime_t *stime, ktime_t *etime) + unsigned int flags, int *vpos, int *hpos, + ktime_t *stime, ktime_t *etime) { struct drm_i915_private *dev_priv = dev->dev_private; struct drm_crtc *crtc = dev_priv->pipe_to_crtc_mapping[pipe]; @@ -809,7 +809,8 @@ /* Helper routine in DRM core does all the work: */ return drm_calc_vbltimestamp_from_scanoutpos(dev, pipe, max_error, vblank_time, flags, - crtc); + crtc, + &to_intel_crtc(crtc)->config.adjusted_mode); } static bool intel_hpd_irq_event(struct drm_device *dev, @@ -1993,7 +1994,7 @@ kobject_uevent_env(&dev->primary->kdev->kobj, KOBJ_CHANGE, reset_done_event); } else { - atomic_set(&error->reset_counter, I915_WEDGED); + atomic_set_mask(I915_WEDGED, &error->reset_counter); } /* @@ -2761,10 +2762,9 @@ return; if (HAS_PCH_IBX(dev)) { - mask = SDE_GMBUS | SDE_AUX_MASK | SDE_TRANSB_FIFO_UNDER | - SDE_TRANSA_FIFO_UNDER | SDE_POISON; + mask = SDE_GMBUS | SDE_AUX_MASK | SDE_POISON; } else { - mask = SDE_GMBUS_CPT | SDE_AUX_MASK_CPT | SDE_ERROR_CPT; + mask = SDE_GMBUS_CPT | SDE_AUX_MASK_CPT; I915_WRITE(SERR_INT, I915_READ(SERR_INT)); } @@ -2824,20 +2824,19 @@ display_mask = (DE_MASTER_IRQ_CONTROL | DE_GSE_IVB | DE_PCH_EVENT_IVB | DE_PLANEC_FLIP_DONE_IVB | DE_PLANEB_FLIP_DONE_IVB | - DE_PLANEA_FLIP_DONE_IVB | DE_AUX_CHANNEL_A_IVB | - DE_ERR_INT_IVB); + DE_PLANEA_FLIP_DONE_IVB | DE_AUX_CHANNEL_A_IVB); extra_mask = (DE_PIPEC_VBLANK_IVB | DE_PIPEB_VBLANK_IVB | - DE_PIPEA_VBLANK_IVB); + DE_PIPEA_VBLANK_IVB | DE_ERR_INT_IVB); I915_WRITE(GEN7_ERR_INT, I915_READ(GEN7_ERR_INT)); } else { display_mask = (DE_MASTER_IRQ_CONTROL | DE_GSE | DE_PCH_EVENT | DE_PLANEA_FLIP_DONE | DE_PLANEB_FLIP_DONE | DE_AUX_CHANNEL_A | - DE_PIPEB_FIFO_UNDERRUN | DE_PIPEA_FIFO_UNDERRUN | DE_PIPEB_CRC_DONE | DE_PIPEA_CRC_DONE | DE_POISON); - extra_mask = DE_PIPEA_VBLANK | DE_PIPEB_VBLANK | DE_PCU_EVENT; + extra_mask = DE_PIPEA_VBLANK | DE_PIPEB_VBLANK | DE_PCU_EVENT | + DE_PIPEB_FIFO_UNDERRUN | DE_PIPEA_FIFO_UNDERRUN; } dev_priv->irq_mask = ~display_mask; @@ -2953,9 +2952,9 @@ struct drm_device *dev = dev_priv->dev; uint32_t de_pipe_masked = GEN8_PIPE_FLIP_DONE | GEN8_PIPE_CDCLK_CRC_DONE | - GEN8_PIPE_FIFO_UNDERRUN | GEN8_DE_PIPE_IRQ_FAULT_ERRORS; - uint32_t de_pipe_enables = de_pipe_masked | GEN8_PIPE_VBLANK; + uint32_t de_pipe_enables = de_pipe_masked | GEN8_PIPE_VBLANK | + GEN8_PIPE_FIFO_UNDERRUN; int pipe; dev_priv->de_irq_mask[PIPE_A] = ~de_pipe_masked; dev_priv->de_irq_mask[PIPE_B] = ~de_pipe_masked; --- linux-3.13.0.orig/drivers/gpu/drm/i915/i915_reg.h +++ linux-3.13.0/drivers/gpu/drm/i915/i915_reg.h @@ -2117,9 +2117,13 @@ * Please check the detailed lore in the commit message for for experimental * evidence. */ -#define PORTD_HOTPLUG_LIVE_STATUS (1 << 29) -#define PORTC_HOTPLUG_LIVE_STATUS (1 << 28) -#define PORTB_HOTPLUG_LIVE_STATUS (1 << 27) +#define PORTD_HOTPLUG_LIVE_STATUS_G4X (1 << 29) +#define PORTC_HOTPLUG_LIVE_STATUS_G4X (1 << 28) +#define PORTB_HOTPLUG_LIVE_STATUS_G4X (1 << 27) +/* VLV DP/HDMI bits again match Bspec */ +#define PORTD_HOTPLUG_LIVE_STATUS_VLV (1 << 27) +#define PORTC_HOTPLUG_LIVE_STATUS_VLV (1 << 28) +#define PORTB_HOTPLUG_LIVE_STATUS_VLV (1 << 29) #define PORTD_HOTPLUG_INT_STATUS (3 << 21) #define PORTC_HOTPLUG_INT_STATUS (3 << 19) #define PORTB_HOTPLUG_INT_STATUS (3 << 17) --- linux-3.13.0.orig/drivers/gpu/drm/i915/i915_trace.h +++ linux-3.13.0/drivers/gpu/drm/i915/i915_trace.h @@ -238,14 +238,16 @@ TP_ARGS(vm), TP_STRUCT__entry( + __field(u32, dev) __field(struct i915_address_space *, vm) ), TP_fast_assign( + __entry->dev = vm->dev->primary->index; __entry->vm = vm; ), - TP_printk("dev=%d, vm=%p", __entry->vm->dev->primary->index, __entry->vm) + TP_printk("dev=%d, vm=%p", __entry->dev, __entry->vm) ); TRACE_EVENT(i915_gem_ring_sync_to, --- linux-3.13.0.orig/drivers/gpu/drm/i915/intel_crt.c +++ linux-3.13.0/drivers/gpu/drm/i915/intel_crt.c @@ -764,6 +764,14 @@ DMI_MATCH(DMI_PRODUCT_NAME, "ZGB"), }, }, + { + .callback = intel_no_crt_dmi_callback, + .ident = "DELL XPS 8700", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "XPS 8700"), + }, + }, { } }; --- linux-3.13.0.orig/drivers/gpu/drm/i915/intel_display.c +++ linux-3.13.0/drivers/gpu/drm/i915/intel_display.c @@ -8335,6 +8335,20 @@ if (ring->id == RCS) len += 6; + /* + * BSpec MI_DISPLAY_FLIP for IVB: + * "The full packet must be contained within the same cache line." + * + * Currently the LRI+SRM+MI_DISPLAY_FLIP all fit within the same + * cacheline, if we ever start emitting more commands before + * the MI_DISPLAY_FLIP we may need to first emit everything else, + * then do the cacheline alignment, and finally emit the + * MI_DISPLAY_FLIP. + */ + ret = intel_ring_cacheline_align(ring); + if (ret) + goto err_unpin; + ret = intel_ring_begin(ring, len); if (ret) goto err_unpin; @@ -9449,7 +9463,8 @@ * are later needed by vblank and swap-completion * timestamping. They are derived from true hwmode. */ - drm_calc_timestamping_constants(crtc); + drm_calc_timestamping_constants(crtc, + &pipe_config->adjusted_mode); } /* FIXME: add subpixel order */ @@ -10556,6 +10571,9 @@ /* Acer Aspire 4736Z */ { 0x2a42, 0x1025, 0x0260, quirk_invert_brightness }, + /* Acer Aspire 5336 */ + { 0x2a42, 0x1025, 0x048a, quirk_invert_brightness }, + /* Dell XPS13 HD Sandy Bridge */ { 0x0116, 0x1028, 0x052e, quirk_no_pcm_pwm_enable }, /* Dell XPS13 HD and XPS13 FHD Ivy Bridge */ --- linux-3.13.0.orig/drivers/gpu/drm/i915/intel_dp.c +++ linux-3.13.0/drivers/gpu/drm/i915/intel_dp.c @@ -537,6 +537,7 @@ uint8_t msg[20]; int msg_bytes; uint8_t ack; + int retry; if (WARN_ON(send_bytes > 16)) return -E2BIG; @@ -548,18 +549,20 @@ msg[3] = send_bytes - 1; memcpy(&msg[4], send, send_bytes); msg_bytes = send_bytes + 4; - for (;;) { + for (retry = 0; retry < 7; retry++) { ret = intel_dp_aux_ch(intel_dp, msg, msg_bytes, &ack, 1); if (ret < 0) return ret; if ((ack & AUX_NATIVE_REPLY_MASK) == AUX_NATIVE_REPLY_ACK) - break; + return send_bytes; else if ((ack & AUX_NATIVE_REPLY_MASK) == AUX_NATIVE_REPLY_DEFER) - udelay(100); + usleep_range(400, 500); else return -EIO; } - return send_bytes; + + DRM_ERROR("too many retries, giving up\n"); + return -EIO; } /* Write a single byte to the aux channel in native mode */ @@ -581,6 +584,7 @@ int reply_bytes; uint8_t ack; int ret; + int retry; if (WARN_ON(recv_bytes > 19)) return -E2BIG; @@ -594,7 +598,7 @@ msg_bytes = 4; reply_bytes = recv_bytes + 1; - for (;;) { + for (retry = 0; retry < 7; retry++) { ret = intel_dp_aux_ch(intel_dp, msg, msg_bytes, reply, reply_bytes); if (ret == 0) @@ -607,10 +611,13 @@ return ret - 1; } else if ((ack & AUX_NATIVE_REPLY_MASK) == AUX_NATIVE_REPLY_DEFER) - udelay(100); + usleep_range(400, 500); else return -EIO; } + + DRM_ERROR("too many retries, giving up\n"); + return -EIO; } static int @@ -1627,7 +1634,7 @@ val |= EDP_PSR_LINK_DISABLE; I915_WRITE(EDP_PSR_CTL(dev), val | - IS_BROADWELL(dev) ? 0 : link_entry_time | + (IS_BROADWELL(dev) ? 0 : link_entry_time) | max_sleep_time << EDP_PSR_MAX_SLEEP_TIME_SHIFT | idle_frames << EDP_PSR_IDLE_FRAME_SHIFT | EDP_PSR_ENABLE); @@ -1865,10 +1872,12 @@ mutex_unlock(&dev_priv->dpio_lock); - /* init power sequencer on this pipe and port */ - intel_dp_init_panel_power_sequencer(dev, intel_dp, &power_seq); - intel_dp_init_panel_power_sequencer_registers(dev, intel_dp, - &power_seq); + if (is_edp(intel_dp)) { + /* init power sequencer on this pipe and port */ + intel_dp_init_panel_power_sequencer(dev, intel_dp, &power_seq); + intel_dp_init_panel_power_sequencer_registers(dev, intel_dp, + &power_seq); + } intel_enable_dp(encoder); @@ -3020,18 +3029,34 @@ return status; } - switch (intel_dig_port->port) { - case PORT_B: - bit = PORTB_HOTPLUG_LIVE_STATUS; - break; - case PORT_C: - bit = PORTC_HOTPLUG_LIVE_STATUS; - break; - case PORT_D: - bit = PORTD_HOTPLUG_LIVE_STATUS; - break; - default: - return connector_status_unknown; + if (IS_VALLEYVIEW(dev)) { + switch (intel_dig_port->port) { + case PORT_B: + bit = PORTB_HOTPLUG_LIVE_STATUS_VLV; + break; + case PORT_C: + bit = PORTC_HOTPLUG_LIVE_STATUS_VLV; + break; + case PORT_D: + bit = PORTD_HOTPLUG_LIVE_STATUS_VLV; + break; + default: + return connector_status_unknown; + } + } else { + switch (intel_dig_port->port) { + case PORT_B: + bit = PORTB_HOTPLUG_LIVE_STATUS_G4X; + break; + case PORT_C: + bit = PORTC_HOTPLUG_LIVE_STATUS_G4X; + break; + case PORT_D: + bit = PORTD_HOTPLUG_LIVE_STATUS_G4X; + break; + default: + return connector_status_unknown; + } } if ((I915_READ(PORT_HOTPLUG_STAT) & bit) == 0) --- linux-3.13.0.orig/drivers/gpu/drm/i915/intel_hdmi.c +++ linux-3.13.0/drivers/gpu/drm/i915/intel_hdmi.c @@ -845,7 +845,7 @@ { struct drm_device *dev = intel_hdmi_to_dev(hdmi); - if (IS_G4X(dev)) + if (!hdmi->has_hdmi_sink || IS_G4X(dev)) return 165000; else if (IS_HASWELL(dev) || INTEL_INFO(dev)->gen >= 8) return 300000; @@ -898,8 +898,8 @@ * outputs. We also need to check that the higher clock still fits * within limits. */ - if (pipe_config->pipe_bpp > 8*3 && clock_12bpc <= portclock_limit - && HAS_PCH_SPLIT(dev)) { + if (pipe_config->pipe_bpp > 8*3 && intel_hdmi->has_hdmi_sink && + clock_12bpc <= portclock_limit && HAS_PCH_SPLIT(dev)) { DRM_DEBUG_KMS("picking bpc to 12 for HDMI output\n"); desired_bpp = 12*3; --- linux-3.13.0.orig/drivers/gpu/drm/i915/intel_pm.c +++ linux-3.13.0/drivers/gpu/drm/i915/intel_pm.c @@ -5314,8 +5314,8 @@ /* WaPsrDPRSUnmaskVBlankInSRD */ for_each_pipe(i) { I915_WRITE(CHICKEN_PIPESL_1(i), - I915_READ(CHICKEN_PIPESL_1(i) | - DPRS_MASK_VBLANK_SRD)); + I915_READ(CHICKEN_PIPESL_1(i)) | + DPRS_MASK_VBLANK_SRD); } } --- linux-3.13.0.orig/drivers/gpu/drm/i915/intel_ringbuffer.c +++ linux-3.13.0/drivers/gpu/drm/i915/intel_ringbuffer.c @@ -1611,8 +1611,8 @@ return i915_gem_get_seqno(ring->dev, &ring->outstanding_lazy_seqno); } -static int __intel_ring_begin(struct intel_ring_buffer *ring, - int bytes) +static int __intel_ring_prepare(struct intel_ring_buffer *ring, + int bytes) { int ret; @@ -1628,7 +1628,6 @@ return ret; } - ring->space -= bytes; return 0; } @@ -1643,12 +1642,38 @@ if (ret) return ret; + ret = __intel_ring_prepare(ring, num_dwords * sizeof(uint32_t)); + if (ret) + return ret; + /* Preallocate the olr before touching the ring */ ret = intel_ring_alloc_seqno(ring); if (ret) return ret; - return __intel_ring_begin(ring, num_dwords * sizeof(uint32_t)); + ring->space -= num_dwords * sizeof(uint32_t); + return 0; +} + +/* Align the ring tail to a cacheline boundary */ +int intel_ring_cacheline_align(struct intel_ring_buffer *ring) +{ + int num_dwords = (64 - (ring->tail & 63)) / sizeof(uint32_t); + int ret; + + if (num_dwords == 0) + return 0; + + ret = intel_ring_begin(ring, num_dwords); + if (ret) + return ret; + + while (num_dwords--) + intel_ring_emit(ring, MI_NOOP); + + intel_ring_advance(ring); + + return 0; } void intel_ring_init_seqno(struct intel_ring_buffer *ring, u32 seqno) --- linux-3.13.0.orig/drivers/gpu/drm/i915/intel_ringbuffer.h +++ linux-3.13.0/drivers/gpu/drm/i915/intel_ringbuffer.h @@ -233,6 +233,7 @@ void intel_cleanup_ring_buffer(struct intel_ring_buffer *ring); int __must_check intel_ring_begin(struct intel_ring_buffer *ring, int n); +int __must_check intel_ring_cacheline_align(struct intel_ring_buffer *ring); static inline void intel_ring_emit(struct intel_ring_buffer *ring, u32 data) { --- linux-3.13.0.orig/drivers/gpu/drm/i915/intel_tv.c +++ linux-3.13.0/drivers/gpu/drm/i915/intel_tv.c @@ -1536,9 +1536,14 @@ /* * If the device type is not TV, continue. */ - if (p_child->old.device_type != DEVICE_TYPE_INT_TV && - p_child->old.device_type != DEVICE_TYPE_TV) + switch (p_child->old.device_type) { + case DEVICE_TYPE_INT_TV: + case DEVICE_TYPE_TV: + case DEVICE_TYPE_TV_SVIDEO_COMPOSITE: + break; + default: continue; + } /* Only when the addin_offset is non-zero, it is regarded * as present. */ --- linux-3.13.0.orig/drivers/gpu/drm/i915/intel_uncore.c +++ linux-3.13.0/drivers/gpu/drm/i915/intel_uncore.c @@ -687,6 +687,40 @@ return 0; } +int i915_get_reset_stats_ioctl(struct drm_device *dev, + void *data, struct drm_file *file) +{ + struct drm_i915_private *dev_priv = dev->dev_private; + struct drm_i915_reset_stats *args = data; + struct i915_ctx_hang_stats *hs; + int ret; + + if (args->ctx_id == DEFAULT_CONTEXT_ID && !capable(CAP_SYS_ADMIN)) + return -EPERM; + + ret = mutex_lock_interruptible(&dev->struct_mutex); + if (ret) + return ret; + + hs = i915_gem_context_get_hang_stats(dev, file, args->ctx_id); + if (IS_ERR(hs)) { + mutex_unlock(&dev->struct_mutex); + return PTR_ERR(hs); + } + + if (capable(CAP_SYS_ADMIN)) + args->reset_count = i915_reset_count(&dev_priv->gpu_error); + else + args->reset_count = 0; + + args->batch_active = hs->batch_active; + args->batch_pending = hs->batch_pending; + + mutex_unlock(&dev->struct_mutex); + + return 0; +} + static int i965_reset_complete(struct drm_device *dev) { u8 gdrst; --- linux-3.13.0.orig/drivers/gpu/drm/mgag200/mgag200_cursor.c +++ linux-3.13.0/drivers/gpu/drm/mgag200/mgag200_cursor.c @@ -22,8 +22,10 @@ { WREG8(MGA_CURPOSXL, 0); WREG8(MGA_CURPOSXH, 0); - mgag200_bo_unpin(mdev->cursor.pixels_1); - mgag200_bo_unpin(mdev->cursor.pixels_2); + if (mdev->cursor.pixels_1->pin_count) + mgag200_bo_unpin(mdev->cursor.pixels_1); + if (mdev->cursor.pixels_2->pin_count) + mgag200_bo_unpin(mdev->cursor.pixels_2); } int mga_crtc_cursor_set(struct drm_crtc *crtc, @@ -32,7 +34,7 @@ uint32_t width, uint32_t height) { - struct drm_device *dev = (struct drm_device *)file_priv->minor->dev; + struct drm_device *dev = crtc->dev; struct mga_device *mdev = (struct mga_device *)dev->dev_private; struct mgag200_bo *pixels_1 = mdev->cursor.pixels_1; struct mgag200_bo *pixels_2 = mdev->cursor.pixels_2; --- linux-3.13.0.orig/drivers/gpu/drm/mgag200/mgag200_fb.c +++ linux-3.13.0/drivers/gpu/drm/mgag200/mgag200_fb.c @@ -41,7 +41,7 @@ * then the BO is being moved and we should * store up the damage until later. */ - if (!in_interrupt()) + if (drm_can_sleep()) ret = mgag200_bo_reserve(bo, true); if (ret) { if (ret != -EBUSY) --- linux-3.13.0.orig/drivers/gpu/drm/mgag200/mgag200_mode.c +++ linux-3.13.0/drivers/gpu/drm/mgag200/mgag200_mode.c @@ -1519,11 +1519,11 @@ (mga_vga_calculate_mode_bandwidth(mode, bpp) > (32700 * 1024))) { return MODE_BANDWIDTH; - } else if (mode->type == G200_EH && + } else if (mdev->type == G200_EH && (mga_vga_calculate_mode_bandwidth(mode, bpp) > (37500 * 1024))) { return MODE_BANDWIDTH; - } else if (mode->type == G200_ER && + } else if (mdev->type == G200_ER && (mga_vga_calculate_mode_bandwidth(mode, bpp) > (55000 * 1024))) { return MODE_BANDWIDTH; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/Makefile +++ linux-3.13.0/drivers/gpu/drm/nouveau/Makefile @@ -71,7 +71,10 @@ nouveau-y += core/subdev/devinit/nv1a.o nouveau-y += core/subdev/devinit/nv20.o nouveau-y += core/subdev/devinit/nv50.o +nouveau-y += core/subdev/devinit/nv84.o +nouveau-y += core/subdev/devinit/nv98.o nouveau-y += core/subdev/devinit/nva3.o +nouveau-y += core/subdev/devinit/nvaf.o nouveau-y += core/subdev/devinit/nvc0.o nouveau-y += core/subdev/fb/base.o nouveau-y += core/subdev/fb/nv04.o --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/core/engine.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/core/engine.c @@ -42,11 +42,24 @@ if (ret) return ret; - if ( parent && - !nouveau_boolopt(nv_device(parent)->cfgopt, iname, enable)) { - if (!enable) - nv_warn(engine, "disabled, %s=1 to enable\n", iname); - return -ENODEV; + if (parent) { + struct nouveau_device *device = nv_device(parent); + int engidx = nv_engidx(nv_object(engine)); + + if (device->disable_mask & (1ULL << engidx)) { + if (!nouveau_boolopt(device->cfgopt, iname, false)) { + nv_debug(engine, "engine disabled by hw/fw\n"); + return -ENODEV; + } + + nv_warn(engine, "ignoring hw/fw engine disable\n"); + } + + if (!nouveau_boolopt(device->cfgopt, iname, enable)) { + if (!enable) + nv_warn(engine, "disabled, %s=1 to enable\n", iname); + return -ENODEV; + } } INIT_LIST_HEAD(&engine->contexts); --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/engine/copy/nvc0.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/engine/copy/nvc0.c @@ -105,9 +105,6 @@ struct nvc0_copy_priv *priv; int ret; - if (nv_rd32(parent, 0x022500) & 0x00000100) - return -ENODEV; - ret = nouveau_falcon_create(parent, engine, oclass, 0x104000, true, "PCE0", "copy0", &priv); *pobject = nv_object(priv); @@ -133,9 +130,6 @@ struct nvc0_copy_priv *priv; int ret; - if (nv_rd32(parent, 0x022500) & 0x00000200) - return -ENODEV; - ret = nouveau_falcon_create(parent, engine, oclass, 0x105000, true, "PCE1", "copy1", &priv); *pobject = nv_object(priv); --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/engine/copy/nve0.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/engine/copy/nve0.c @@ -88,9 +88,6 @@ struct nve0_copy_priv *priv; int ret; - if (nv_rd32(parent, 0x022500) & 0x00000100) - return -ENODEV; - ret = nouveau_engine_create(parent, engine, oclass, true, "PCE0", "copy0", &priv); *pobject = nv_object(priv); @@ -112,9 +109,6 @@ struct nve0_copy_priv *priv; int ret; - if (nv_rd32(parent, 0x022500) & 0x00000200) - return -ENODEV; - ret = nouveau_engine_create(parent, engine, oclass, true, "PCE1", "copy1", &priv); *pobject = nv_object(priv); --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/engine/device/nv04.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/engine/device/nv04.c @@ -49,7 +49,7 @@ device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv04_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv04_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv04_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -67,7 +67,7 @@ device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv05_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv05_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv04_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/engine/device/nv10.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/engine/device/nv10.c @@ -51,7 +51,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv10_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv10_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv04_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -68,7 +68,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv10_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv10_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv04_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -87,7 +87,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv10_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv10_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv04_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -106,7 +106,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv04_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -125,7 +125,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv10_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv10_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv04_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -144,7 +144,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv10_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv10_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv04_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -163,7 +163,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv04_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -182,7 +182,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv10_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv10_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv04_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/engine/device/nv20.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/engine/device/nv20.c @@ -52,7 +52,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv20_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv20_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv04_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -71,7 +71,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv20_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv20_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv04_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -90,7 +90,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv20_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv20_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv04_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -109,7 +109,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv20_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv20_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv04_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/engine/device/nv30.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/engine/device/nv30.c @@ -52,7 +52,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv20_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv20_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv04_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -71,7 +71,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv20_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv20_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv04_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -90,7 +90,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv20_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv20_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -110,7 +110,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv20_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv20_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -130,7 +130,7 @@ device->oclass[NVDEV_SUBDEV_GPIO ] = &nv10_gpio_oclass; device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv04_clock_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv10_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv10_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv04_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/engine/device/nv40.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/engine/device/nv40.c @@ -57,7 +57,7 @@ device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv40_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -80,7 +80,7 @@ device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv40_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -103,7 +103,7 @@ device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv40_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -126,7 +126,7 @@ device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv40_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -149,7 +149,7 @@ device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv40_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -172,7 +172,7 @@ device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv40_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -195,7 +195,7 @@ device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv40_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -218,7 +218,7 @@ device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv40_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -241,7 +241,7 @@ device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv44_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -264,7 +264,7 @@ device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv44_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -287,7 +287,7 @@ device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv44_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -310,7 +310,7 @@ device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv44_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -333,7 +333,7 @@ device->oclass[NVDEV_SUBDEV_I2C ] = &nv4e_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv44_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -356,7 +356,7 @@ device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv44_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -379,7 +379,7 @@ device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv44_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -402,7 +402,7 @@ device->oclass[NVDEV_SUBDEV_I2C ] = &nv04_i2c_oclass; device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv40_therm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv1a_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv44_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv31_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/engine/device/nv50.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/engine/device/nv50.c @@ -65,7 +65,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = nv50_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv50_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv50_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv50_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv50_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv50_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -90,7 +90,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = nv84_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv84_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv50_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv84_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv50_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv50_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -118,7 +118,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = nv84_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv84_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv50_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv84_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv50_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv50_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -146,7 +146,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = nv84_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv84_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv50_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv84_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv50_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv50_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -174,7 +174,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = nv84_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv84_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv50_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv84_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv94_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv94_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -202,7 +202,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = nv84_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv84_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv50_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv84_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv94_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv94_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -230,7 +230,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = nv84_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv84_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv50_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv98_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv98_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv94_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -258,7 +258,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = nv84_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv84_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv50_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv84_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv98_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv94_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -286,7 +286,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = nvaa_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv84_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv50_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv98_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv98_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv94_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -314,7 +314,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = nvaa_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nv84_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv50_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nv98_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv98_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv94_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -342,7 +342,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nva3_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nva3_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nva3_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nva3_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv98_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv94_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -372,7 +372,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nva3_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nva3_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nva3_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nva3_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv98_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv94_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -401,7 +401,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nva3_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nva3_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nva3_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nva3_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv98_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv94_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -430,7 +430,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nva3_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nva3_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nva3_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nvaf_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nv98_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nv94_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/engine/device/nvc0.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/engine/device/nvc0.c @@ -65,7 +65,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nvc0_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nva3_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nvc0_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nvc0_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nvc0_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nvc0_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -97,7 +97,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nvc0_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nva3_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nvc0_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nvc0_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nvc0_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nvc0_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -129,7 +129,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nvc0_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nva3_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nvc0_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nvc0_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nvc3_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nvc0_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -160,7 +160,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nvc0_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nva3_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nvc0_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nvc0_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nvc0_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nvc0_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -192,7 +192,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nvc0_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nva3_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nvc0_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nvc0_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nvc3_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nvc0_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -224,7 +224,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nvc0_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nva3_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nvc0_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nvc0_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nvc3_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nvc0_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -255,7 +255,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nvc0_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nva3_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nvc0_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nvc0_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nvc0_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nvc0_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -287,7 +287,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nvc0_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nvd0_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nvc0_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nvc0_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nvc3_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nvc0_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -318,7 +318,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nvc0_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nvd0_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nvc0_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nvc0_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nvc3_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nvc0_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/engine/device/nve0.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/engine/device/nve0.c @@ -65,7 +65,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nve0_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nvd0_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nvc0_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nvc0_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nvc3_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nvc0_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -98,7 +98,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nve0_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nvd0_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nvc0_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nvc0_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nvc3_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nvc0_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -131,7 +131,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nve0_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nvd0_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nvc0_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nvc0_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nvc3_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nvc0_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -164,7 +164,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nve0_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nvd0_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nvc0_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nvc0_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nvc3_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nvc0_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; @@ -199,7 +199,7 @@ device->oclass[NVDEV_SUBDEV_CLOCK ] = &nve0_clock_oclass; device->oclass[NVDEV_SUBDEV_THERM ] = &nvd0_therm_oclass; device->oclass[NVDEV_SUBDEV_MXM ] = &nv50_mxm_oclass; - device->oclass[NVDEV_SUBDEV_DEVINIT] = &nvc0_devinit_oclass; + device->oclass[NVDEV_SUBDEV_DEVINIT] = nvc0_devinit_oclass; device->oclass[NVDEV_SUBDEV_MC ] = nvc3_mc_oclass; device->oclass[NVDEV_SUBDEV_BUS ] = nvc0_bus_oclass; device->oclass[NVDEV_SUBDEV_TIMER ] = &nv04_timer_oclass; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/engine/disp/nv50.c @@ -1112,7 +1112,7 @@ if (conf != ~0) { if (outp.location == 0 && outp.type == DCB_OUTPUT_DP) { u32 soff = (ffs(outp.or) - 1) * 0x08; - u32 ctrl = nv_rd32(priv, 0x610798 + soff); + u32 ctrl = nv_rd32(priv, 0x610794 + soff); u32 datarate; switch ((ctrl & 0x000f0000) >> 16) { --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/engine/disp/nvd0.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/engine/disp/nvd0.c @@ -967,9 +967,6 @@ int heads = nv_rd32(parent, 0x022448); int ret; - if (nv_rd32(parent, 0x022500) & 0x00000001) - return -ENODEV; - ret = nouveau_disp_create(parent, engine, oclass, heads, "PDISP", "display", &priv); *pobject = nv_object(priv); --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/engine/disp/nve0.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/engine/disp/nve0.c @@ -54,9 +54,6 @@ int heads = nv_rd32(parent, 0x022448); int ret; - if (nv_rd32(parent, 0x022500) & 0x00000001) - return -ENODEV; - ret = nouveau_disp_create(parent, engine, oclass, heads, "PDISP", "display", &priv); *pobject = nv_object(priv); --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/engine/disp/nvf0.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/engine/disp/nvf0.c @@ -54,9 +54,6 @@ int heads = nv_rd32(parent, 0x022448); int ret; - if (nv_rd32(parent, 0x022500) & 0x00000001) - return -ENODEV; - ret = nouveau_disp_create(parent, engine, oclass, heads, "PDISP", "display", &priv); *pobject = nv_object(priv); --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/engine/falcon.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/engine/falcon.c @@ -56,6 +56,16 @@ nv_wr32(falcon, falcon->addr + addr, data); } +static void * +vmemdup(const void *src, size_t len) +{ + void *p = vmalloc(len); + + if (p) + memcpy(p, src, len); + return p; +} + int _nouveau_falcon_init(struct nouveau_object *object) { @@ -111,7 +121,7 @@ ret = request_firmware(&fw, name, &device->pdev->dev); if (ret == 0) { - falcon->code.data = kmemdup(fw->data, fw->size, GFP_KERNEL); + falcon->code.data = vmemdup(fw->data, fw->size); falcon->code.size = fw->size; falcon->data.data = NULL; falcon->data.size = 0; @@ -134,7 +144,7 @@ return ret; } - falcon->data.data = kmemdup(fw->data, fw->size, GFP_KERNEL); + falcon->data.data = vmemdup(fw->data, fw->size); falcon->data.size = fw->size; release_firmware(fw); if (!falcon->data.data) @@ -149,7 +159,7 @@ return ret; } - falcon->code.data = kmemdup(fw->data, fw->size, GFP_KERNEL); + falcon->code.data = vmemdup(fw->data, fw->size); falcon->code.size = fw->size; release_firmware(fw); if (!falcon->code.data) @@ -235,8 +245,8 @@ if (!suspend) { nouveau_gpuobj_ref(NULL, &falcon->core); if (falcon->external) { - kfree(falcon->data.data); - kfree(falcon->code.data); + vfree(falcon->data.data); + vfree(falcon->code.data); falcon->code.data = NULL; } } --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/include/core/device.h +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/include/core/device.h @@ -70,6 +70,7 @@ const char *dbgopt; const char *name; const char *cname; + u64 disable_mask; enum { NV_04 = 0x04, --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/include/subdev/devinit.h +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/include/subdev/devinit.h @@ -9,7 +9,6 @@ bool post; void (*meminit)(struct nouveau_devinit *); int (*pll_set)(struct nouveau_devinit *, u32 type, u32 freq); - }; static inline struct nouveau_devinit * @@ -18,32 +17,16 @@ return (void *)nv_device(obj)->subdev[NVDEV_SUBDEV_DEVINIT]; } -#define nouveau_devinit_create(p,e,o,d) \ - nouveau_devinit_create_((p), (e), (o), sizeof(**d), (void **)d) -#define nouveau_devinit_destroy(p) \ - nouveau_subdev_destroy(&(p)->base) -#define nouveau_devinit_init(p) ({ \ - struct nouveau_devinit *d = (p); \ - _nouveau_devinit_init(nv_object(d)); \ -}) -#define nouveau_devinit_fini(p,s) ({ \ - struct nouveau_devinit *d = (p); \ - _nouveau_devinit_fini(nv_object(d), (s)); \ -}) - -int nouveau_devinit_create_(struct nouveau_object *, struct nouveau_object *, - struct nouveau_oclass *, int, void **); -#define _nouveau_devinit_dtor _nouveau_subdev_dtor -int _nouveau_devinit_init(struct nouveau_object *); -int _nouveau_devinit_fini(struct nouveau_object *, bool suspend); - -extern struct nouveau_oclass nv04_devinit_oclass; -extern struct nouveau_oclass nv05_devinit_oclass; -extern struct nouveau_oclass nv10_devinit_oclass; -extern struct nouveau_oclass nv1a_devinit_oclass; -extern struct nouveau_oclass nv20_devinit_oclass; -extern struct nouveau_oclass nv50_devinit_oclass; -extern struct nouveau_oclass nva3_devinit_oclass; -extern struct nouveau_oclass nvc0_devinit_oclass; +extern struct nouveau_oclass *nv04_devinit_oclass; +extern struct nouveau_oclass *nv05_devinit_oclass; +extern struct nouveau_oclass *nv10_devinit_oclass; +extern struct nouveau_oclass *nv1a_devinit_oclass; +extern struct nouveau_oclass *nv20_devinit_oclass; +extern struct nouveau_oclass *nv50_devinit_oclass; +extern struct nouveau_oclass *nv84_devinit_oclass; +extern struct nouveau_oclass *nv98_devinit_oclass; +extern struct nouveau_oclass *nva3_devinit_oclass; +extern struct nouveau_oclass *nvaf_devinit_oclass; +extern struct nouveau_oclass *nvc0_devinit_oclass; #endif --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/clock/nv04.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/clock/nv04.c @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include "pll.h" --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/devinit/base.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/devinit/base.c @@ -24,10 +24,11 @@ #include -#include #include #include +#include "priv.h" + int _nouveau_devinit_fini(struct nouveau_object *object, bool suspend) { @@ -43,12 +44,21 @@ int _nouveau_devinit_init(struct nouveau_object *object) { + struct nouveau_devinit_impl *impl = (void *)object->oclass; struct nouveau_devinit *devinit = (void *)object; - int ret = nouveau_subdev_init(&devinit->base); + int ret; + + ret = nouveau_subdev_init(&devinit->base); if (ret) return ret; - return nvbios_init(&devinit->base, devinit->post); + ret = nvbios_init(&devinit->base, devinit->post); + if (ret) + return ret; + + if (impl->disable) + nv_device(devinit)->disable_mask |= impl->disable(devinit); + return 0; } int @@ -57,6 +67,7 @@ struct nouveau_oclass *oclass, int size, void **pobject) { + struct nouveau_devinit_impl *impl = (void *)oclass; struct nouveau_device *device = nv_device(parent); struct nouveau_devinit *devinit; int ret; @@ -68,5 +79,7 @@ return ret; devinit->post = nouveau_boolopt(device->cfgopt, "NvForcePost", false); + devinit->meminit = impl->meminit; + devinit->pll_set = impl->pll_set; return 0; } --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/devinit/nv04.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/devinit/nv04.c @@ -27,12 +27,7 @@ #include #include "fbmem.h" -#include "priv.h" - -struct nv04_devinit_priv { - struct nouveau_devinit base; - int owner; -}; +#include "nv04.h" static void nv04_devinit_meminit(struct nouveau_devinit *devinit) @@ -438,7 +433,7 @@ nouveau_devinit_destroy(&priv->base); } -static int +int nv04_devinit_ctor(struct nouveau_object *parent, struct nouveau_object *engine, struct nouveau_oclass *oclass, void *data, u32 size, struct nouveau_object **pobject) @@ -451,19 +446,19 @@ if (ret) return ret; - priv->base.meminit = nv04_devinit_meminit; - priv->base.pll_set = nv04_devinit_pll_set; priv->owner = -1; return 0; } -struct nouveau_oclass -nv04_devinit_oclass = { - .handle = NV_SUBDEV(DEVINIT, 0x04), - .ofuncs = &(struct nouveau_ofuncs) { +struct nouveau_oclass * +nv04_devinit_oclass = &(struct nouveau_devinit_impl) { + .base.handle = NV_SUBDEV(DEVINIT, 0x04), + .base.ofuncs = &(struct nouveau_ofuncs) { .ctor = nv04_devinit_ctor, .dtor = nv04_devinit_dtor, .init = nv04_devinit_init, .fini = nv04_devinit_fini, }, -}; + .meminit = nv04_devinit_meminit, + .pll_set = nv04_devinit_pll_set, +}.base; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/devinit/nv04.h +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/devinit/nv04.h @@ -0,0 +1,23 @@ +#ifndef __NVKM_DEVINIT_NV04_H__ +#define __NVKM_DEVINIT_NV04_H__ + +#include "priv.h" + +struct nv04_devinit_priv { + struct nouveau_devinit base; + u8 owner; +}; + +int nv04_devinit_ctor(struct nouveau_object *, struct nouveau_object *, + struct nouveau_oclass *, void *, u32, + struct nouveau_object **); +void nv04_devinit_dtor(struct nouveau_object *); +int nv04_devinit_init(struct nouveau_object *); +int nv04_devinit_fini(struct nouveau_object *, bool); +int nv04_devinit_pll_set(struct nouveau_devinit *, u32, u32); + +void setPLL_single(struct nouveau_devinit *, u32, struct nouveau_pll_vals *); +void setPLL_double_highregs(struct nouveau_devinit *, u32, struct nouveau_pll_vals *); +void setPLL_double_lowregs(struct nouveau_devinit *, u32, struct nouveau_pll_vals *); + +#endif --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/devinit/nv05.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/devinit/nv05.c @@ -29,12 +29,7 @@ #include #include "fbmem.h" -#include "priv.h" - -struct nv05_devinit_priv { - struct nouveau_devinit base; - u8 owner; -}; +#include "nv04.h" static void nv05_devinit_meminit(struct nouveau_devinit *devinit) @@ -49,7 +44,7 @@ { 0x06, 0x00 }, { 0x00, 0x00 } }; - struct nv05_devinit_priv *priv = (void *)devinit; + struct nv04_devinit_priv *priv = (void *)devinit; struct nouveau_bios *bios = nouveau_bios(priv); struct io_mapping *fb; u32 patt = 0xdeadbeef; @@ -130,31 +125,15 @@ fbmem_fini(fb); } -static int -nv05_devinit_ctor(struct nouveau_object *parent, struct nouveau_object *engine, - struct nouveau_oclass *oclass, void *data, u32 size, - struct nouveau_object **pobject) -{ - struct nv05_devinit_priv *priv; - int ret; - - ret = nouveau_devinit_create(parent, engine, oclass, &priv); - *pobject = nv_object(priv); - if (ret) - return ret; - - priv->base.meminit = nv05_devinit_meminit; - priv->base.pll_set = nv04_devinit_pll_set; - return 0; -} - -struct nouveau_oclass -nv05_devinit_oclass = { - .handle = NV_SUBDEV(DEVINIT, 0x05), - .ofuncs = &(struct nouveau_ofuncs) { - .ctor = nv05_devinit_ctor, +struct nouveau_oclass * +nv05_devinit_oclass = &(struct nouveau_devinit_impl) { + .base.handle = NV_SUBDEV(DEVINIT, 0x05), + .base.ofuncs = &(struct nouveau_ofuncs) { + .ctor = nv04_devinit_ctor, .dtor = nv04_devinit_dtor, .init = nv04_devinit_init, .fini = nv04_devinit_fini, }, -}; + .meminit = nv05_devinit_meminit, + .pll_set = nv04_devinit_pll_set, +}.base; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/devinit/nv10.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/devinit/nv10.c @@ -27,17 +27,12 @@ #include #include "fbmem.h" -#include "priv.h" - -struct nv10_devinit_priv { - struct nouveau_devinit base; - u8 owner; -}; +#include "nv04.h" static void nv10_devinit_meminit(struct nouveau_devinit *devinit) { - struct nv10_devinit_priv *priv = (void *)devinit; + struct nv04_devinit_priv *priv = (void *)devinit; static const int mem_width[] = { 0x10, 0x00, 0x20 }; int mem_width_count; uint32_t patt = 0xdeadbeef; @@ -101,31 +96,15 @@ fbmem_fini(fb); } -static int -nv10_devinit_ctor(struct nouveau_object *parent, struct nouveau_object *engine, - struct nouveau_oclass *oclass, void *data, u32 size, - struct nouveau_object **pobject) -{ - struct nv10_devinit_priv *priv; - int ret; - - ret = nouveau_devinit_create(parent, engine, oclass, &priv); - *pobject = nv_object(priv); - if (ret) - return ret; - - priv->base.meminit = nv10_devinit_meminit; - priv->base.pll_set = nv04_devinit_pll_set; - return 0; -} - -struct nouveau_oclass -nv10_devinit_oclass = { - .handle = NV_SUBDEV(DEVINIT, 0x10), - .ofuncs = &(struct nouveau_ofuncs) { - .ctor = nv10_devinit_ctor, +struct nouveau_oclass * +nv10_devinit_oclass = &(struct nouveau_devinit_impl) { + .base.handle = NV_SUBDEV(DEVINIT, 0x10), + .base.ofuncs = &(struct nouveau_ofuncs) { + .ctor = nv04_devinit_ctor, .dtor = nv04_devinit_dtor, .init = nv04_devinit_init, .fini = nv04_devinit_fini, }, -}; + .meminit = nv10_devinit_meminit, + .pll_set = nv04_devinit_pll_set, +}.base; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/devinit/nv1a.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/devinit/nv1a.c @@ -22,37 +22,16 @@ * Authors: Ben Skeggs */ -#include "priv.h" +#include "nv04.h" -struct nv1a_devinit_priv { - struct nouveau_devinit base; - u8 owner; -}; - -static int -nv1a_devinit_ctor(struct nouveau_object *parent, struct nouveau_object *engine, - struct nouveau_oclass *oclass, void *data, u32 size, - struct nouveau_object **pobject) -{ - struct nv1a_devinit_priv *priv; - int ret; - - ret = nouveau_devinit_create(parent, engine, oclass, &priv); - *pobject = nv_object(priv); - if (ret) - return ret; - - priv->base.pll_set = nv04_devinit_pll_set; - return 0; -} - -struct nouveau_oclass -nv1a_devinit_oclass = { - .handle = NV_SUBDEV(DEVINIT, 0x1a), - .ofuncs = &(struct nouveau_ofuncs) { - .ctor = nv1a_devinit_ctor, +struct nouveau_oclass * +nv1a_devinit_oclass = &(struct nouveau_devinit_impl) { + .base.handle = NV_SUBDEV(DEVINIT, 0x1a), + .base.ofuncs = &(struct nouveau_ofuncs) { + .ctor = nv04_devinit_ctor, .dtor = nv04_devinit_dtor, .init = nv04_devinit_init, .fini = nv04_devinit_fini, }, -}; + .pll_set = nv04_devinit_pll_set, +}.base; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/devinit/nv20.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/devinit/nv20.c @@ -24,18 +24,13 @@ * */ -#include "priv.h" +#include "nv04.h" #include "fbmem.h" -struct nv20_devinit_priv { - struct nouveau_devinit base; - u8 owner; -}; - static void nv20_devinit_meminit(struct nouveau_devinit *devinit) { - struct nv20_devinit_priv *priv = (void *)devinit; + struct nv04_devinit_priv *priv = (void *)devinit; struct nouveau_device *device = nv_device(priv); uint32_t mask = (device->chipset >= 0x25 ? 0x300 : 0x900); uint32_t amount, off; @@ -65,31 +60,15 @@ fbmem_fini(fb); } -static int -nv20_devinit_ctor(struct nouveau_object *parent, struct nouveau_object *engine, - struct nouveau_oclass *oclass, void *data, u32 size, - struct nouveau_object **pobject) -{ - struct nv20_devinit_priv *priv; - int ret; - - ret = nouveau_devinit_create(parent, engine, oclass, &priv); - *pobject = nv_object(priv); - if (ret) - return ret; - - priv->base.meminit = nv20_devinit_meminit; - priv->base.pll_set = nv04_devinit_pll_set; - return 0; -} - -struct nouveau_oclass -nv20_devinit_oclass = { - .handle = NV_SUBDEV(DEVINIT, 0x20), - .ofuncs = &(struct nouveau_ofuncs) { - .ctor = nv20_devinit_ctor, +struct nouveau_oclass * +nv20_devinit_oclass = &(struct nouveau_devinit_impl) { + .base.handle = NV_SUBDEV(DEVINIT, 0x20), + .base.ofuncs = &(struct nouveau_ofuncs) { + .ctor = nv04_devinit_ctor, .dtor = nv04_devinit_dtor, .init = nv04_devinit_init, .fini = nv04_devinit_fini, }, -}; + .meminit = nv20_devinit_meminit, + .pll_set = nv04_devinit_pll_set, +}.base; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/devinit/nv50.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/devinit/nv50.c @@ -28,9 +28,9 @@ #include #include -#include "priv.h" +#include "nv50.h" -static int +int nv50_devinit_pll_set(struct nouveau_devinit *devinit, u32 type, u32 freq) { struct nv50_devinit_priv *priv = (void *)devinit; @@ -74,6 +74,19 @@ return 0; } +static u64 +nv50_devinit_disable(struct nouveau_devinit *devinit) +{ + struct nv50_devinit_priv *priv = (void *)devinit; + u32 r001540 = nv_rd32(priv, 0x001540); + u64 disable = 0ULL; + + if (!(r001540 & 0x40000000)) + disable |= (1ULL << NVDEV_ENGINE_MPEG); + + return disable; +} + int nv50_devinit_init(struct nouveau_object *object) { @@ -120,7 +133,7 @@ return 0; } -static int +int nv50_devinit_ctor(struct nouveau_object *parent, struct nouveau_object *engine, struct nouveau_oclass *oclass, void *data, u32 size, struct nouveau_object **pobject) @@ -133,17 +146,18 @@ if (ret) return ret; - priv->base.pll_set = nv50_devinit_pll_set; return 0; } -struct nouveau_oclass -nv50_devinit_oclass = { - .handle = NV_SUBDEV(DEVINIT, 0x50), - .ofuncs = &(struct nouveau_ofuncs) { +struct nouveau_oclass * +nv50_devinit_oclass = &(struct nouveau_devinit_impl) { + .base.handle = NV_SUBDEV(DEVINIT, 0x50), + .base.ofuncs = &(struct nouveau_ofuncs) { .ctor = nv50_devinit_ctor, .dtor = _nouveau_devinit_dtor, .init = nv50_devinit_init, .fini = _nouveau_devinit_fini, }, -}; + .pll_set = nv50_devinit_pll_set, + .disable = nv50_devinit_disable, +}.base; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/devinit/nv50.h +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/devinit/nv50.h @@ -0,0 +1,18 @@ +#ifndef __NVKM_DEVINIT_NV50_H__ +#define __NVKM_DEVINIT_NV50_H__ + +#include "priv.h" + +struct nv50_devinit_priv { + struct nouveau_devinit base; +}; + +int nv50_devinit_ctor(struct nouveau_object *, struct nouveau_object *, + struct nouveau_oclass *, void *, u32, + struct nouveau_object **); +int nv50_devinit_init(struct nouveau_object *); +int nv50_devinit_pll_set(struct nouveau_devinit *, u32, u32); + +int nva3_devinit_pll_set(struct nouveau_devinit *, u32, u32); + +#endif --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/devinit/nv84.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/devinit/nv84.c @@ -0,0 +1,63 @@ +/* + * Copyright 2013 Red Hat Inc. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + * + * Authors: Ben Skeggs + */ + +#include "nv50.h" + +static u64 +nv84_devinit_disable(struct nouveau_devinit *devinit) +{ + struct nv50_devinit_priv *priv = (void *)devinit; + u32 r001540 = nv_rd32(priv, 0x001540); + u32 r00154c = nv_rd32(priv, 0x00154c); + u64 disable = 0ULL; + + if (!(r001540 & 0x40000000)) { + disable |= (1ULL << NVDEV_ENGINE_MPEG); + disable |= (1ULL << NVDEV_ENGINE_VP); + disable |= (1ULL << NVDEV_ENGINE_BSP); + disable |= (1ULL << NVDEV_ENGINE_CRYPT); + } + + if (!(r00154c & 0x00000004)) + disable |= (1ULL << NVDEV_ENGINE_DISP); + if (!(r00154c & 0x00000020)) + disable |= (1ULL << NVDEV_ENGINE_BSP); + if (!(r00154c & 0x00000040)) + disable |= (1ULL << NVDEV_ENGINE_CRYPT); + + return disable; +} + +struct nouveau_oclass * +nv84_devinit_oclass = &(struct nouveau_devinit_impl) { + .base.handle = NV_SUBDEV(DEVINIT, 0x84), + .base.ofuncs = &(struct nouveau_ofuncs) { + .ctor = nv50_devinit_ctor, + .dtor = _nouveau_devinit_dtor, + .init = nv50_devinit_init, + .fini = _nouveau_devinit_fini, + }, + .pll_set = nv50_devinit_pll_set, + .disable = nv84_devinit_disable, +}.base; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/devinit/nv98.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/devinit/nv98.c @@ -0,0 +1,62 @@ +/* + * Copyright 2013 Red Hat Inc. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + * + * Authors: Ben Skeggs + */ + +#include "nv50.h" + +static u64 +nv98_devinit_disable(struct nouveau_devinit *devinit) +{ + struct nv50_devinit_priv *priv = (void *)devinit; + u32 r001540 = nv_rd32(priv, 0x001540); + u32 r00154c = nv_rd32(priv, 0x00154c); + u64 disable = 0ULL; + + if (!(r001540 & 0x40000000)) { + disable |= (1ULL << NVDEV_ENGINE_VP); + disable |= (1ULL << NVDEV_ENGINE_BSP); + disable |= (1ULL << NVDEV_ENGINE_PPP); + } + + if (!(r00154c & 0x00000004)) + disable |= (1ULL << NVDEV_ENGINE_DISP); + if (!(r00154c & 0x00000020)) + disable |= (1ULL << NVDEV_ENGINE_BSP); + if (!(r00154c & 0x00000040)) + disable |= (1ULL << NVDEV_ENGINE_CRYPT); + + return disable; +} + +struct nouveau_oclass * +nv98_devinit_oclass = &(struct nouveau_devinit_impl) { + .base.handle = NV_SUBDEV(DEVINIT, 0x98), + .base.ofuncs = &(struct nouveau_ofuncs) { + .ctor = nv50_devinit_ctor, + .dtor = _nouveau_devinit_dtor, + .init = nv50_devinit_init, + .fini = _nouveau_devinit_fini, + }, + .pll_set = nv50_devinit_pll_set, + .disable = nv98_devinit_disable, +}.base; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/devinit/nva3.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/devinit/nva3.c @@ -22,12 +22,12 @@ * Authors: Ben Skeggs */ -#include "priv.h" +#include "nv50.h" -static int +int nva3_devinit_pll_set(struct nouveau_devinit *devinit, u32 type, u32 freq) { - struct nva3_devinit_priv *priv = (void *)devinit; + struct nv50_devinit_priv *priv = (void *)devinit; struct nouveau_bios *bios = nouveau_bios(priv); struct nvbios_pll info; int N, fN, M, P; @@ -58,30 +58,38 @@ return ret; } -static int -nva3_devinit_ctor(struct nouveau_object *parent, struct nouveau_object *engine, - struct nouveau_oclass *oclass, void *data, u32 size, - struct nouveau_object **pobject) +static u64 +nva3_devinit_disable(struct nouveau_devinit *devinit) { - struct nv50_devinit_priv *priv; - int ret; + struct nv50_devinit_priv *priv = (void *)devinit; + u32 r001540 = nv_rd32(priv, 0x001540); + u32 r00154c = nv_rd32(priv, 0x00154c); + u64 disable = 0ULL; + + if (!(r001540 & 0x40000000)) { + disable |= (1ULL << NVDEV_ENGINE_VP); + disable |= (1ULL << NVDEV_ENGINE_PPP); + } - ret = nouveau_devinit_create(parent, engine, oclass, &priv); - *pobject = nv_object(priv); - if (ret) - return ret; + if (!(r00154c & 0x00000004)) + disable |= (1ULL << NVDEV_ENGINE_DISP); + if (!(r00154c & 0x00000020)) + disable |= (1ULL << NVDEV_ENGINE_BSP); + if (!(r00154c & 0x00000200)) + disable |= (1ULL << NVDEV_ENGINE_COPY0); - priv->base.pll_set = nva3_devinit_pll_set; - return 0; + return disable; } -struct nouveau_oclass -nva3_devinit_oclass = { - .handle = NV_SUBDEV(DEVINIT, 0xa3), - .ofuncs = &(struct nouveau_ofuncs) { - .ctor = nva3_devinit_ctor, +struct nouveau_oclass * +nva3_devinit_oclass = &(struct nouveau_devinit_impl) { + .base.handle = NV_SUBDEV(DEVINIT, 0xa3), + .base.ofuncs = &(struct nouveau_ofuncs) { + .ctor = nv50_devinit_ctor, .dtor = _nouveau_devinit_dtor, .init = nv50_devinit_init, .fini = _nouveau_devinit_fini, }, -}; + .pll_set = nva3_devinit_pll_set, + .disable = nva3_devinit_disable, +}.base; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/devinit/nvaf.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/devinit/nvaf.c @@ -0,0 +1,63 @@ +/* + * Copyright 2013 Red Hat Inc. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + * + * Authors: Ben Skeggs + */ + +#include "nv50.h" + +static u64 +nvaf_devinit_disable(struct nouveau_devinit *devinit) +{ + struct nv50_devinit_priv *priv = (void *)devinit; + u32 r001540 = nv_rd32(priv, 0x001540); + u32 r00154c = nv_rd32(priv, 0x00154c); + u64 disable = 0; + + if (!(r001540 & 0x40000000)) { + disable |= (1ULL << NVDEV_ENGINE_VP); + disable |= (1ULL << NVDEV_ENGINE_PPP); + } + + if (!(r00154c & 0x00000004)) + disable |= (1ULL << NVDEV_ENGINE_DISP); + if (!(r00154c & 0x00000020)) + disable |= (1ULL << NVDEV_ENGINE_BSP); + if (!(r00154c & 0x00000040)) + disable |= (1ULL << NVDEV_ENGINE_VIC); + if (!(r00154c & 0x00000200)) + disable |= (1ULL << NVDEV_ENGINE_COPY0); + + return disable; +} + +struct nouveau_oclass * +nvaf_devinit_oclass = &(struct nouveau_devinit_impl) { + .base.handle = NV_SUBDEV(DEVINIT, 0xaf), + .base.ofuncs = &(struct nouveau_ofuncs) { + .ctor = nv50_devinit_ctor, + .dtor = _nouveau_devinit_dtor, + .init = nv50_devinit_init, + .fini = _nouveau_devinit_fini, + }, + .pll_set = nva3_devinit_pll_set, + .disable = nvaf_devinit_disable, +}.base; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/devinit/nvc0.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/devinit/nvc0.c @@ -22,12 +22,12 @@ * Authors: Ben Skeggs */ -#include "priv.h" +#include "nv50.h" static int nvc0_devinit_pll_set(struct nouveau_devinit *devinit, u32 type, u32 freq) { - struct nvc0_devinit_priv *priv = (void *)devinit; + struct nv50_devinit_priv *priv = (void *)devinit; struct nouveau_bios *bios = nouveau_bios(priv); struct nvbios_pll info; int N, fN, M, P; @@ -59,6 +59,33 @@ return ret; } +static u64 +nvc0_devinit_disable(struct nouveau_devinit *devinit) +{ + struct nv50_devinit_priv *priv = (void *)devinit; + u32 r022500 = nv_rd32(priv, 0x022500); + u64 disable = 0ULL; + + if (r022500 & 0x00000001) + disable |= (1ULL << NVDEV_ENGINE_DISP); + + if (r022500 & 0x00000002) { + disable |= (1ULL << NVDEV_ENGINE_VP); + disable |= (1ULL << NVDEV_ENGINE_PPP); + } + + if (r022500 & 0x00000004) + disable |= (1ULL << NVDEV_ENGINE_BSP); + if (r022500 & 0x00000008) + disable |= (1ULL << NVDEV_ENGINE_VENC); + if (r022500 & 0x00000100) + disable |= (1ULL << NVDEV_ENGINE_COPY0); + if (r022500 & 0x00000200) + disable |= (1ULL << NVDEV_ENGINE_COPY1); + + return disable; +} + static int nvc0_devinit_ctor(struct nouveau_object *parent, struct nouveau_object *engine, struct nouveau_oclass *oclass, void *data, u32 size, @@ -72,19 +99,20 @@ if (ret) return ret; - priv->base.pll_set = nvc0_devinit_pll_set; if (nv_rd32(priv, 0x022500) & 0x00000001) priv->base.post = true; return 0; } -struct nouveau_oclass -nvc0_devinit_oclass = { - .handle = NV_SUBDEV(DEVINIT, 0xc0), - .ofuncs = &(struct nouveau_ofuncs) { +struct nouveau_oclass * +nvc0_devinit_oclass = &(struct nouveau_devinit_impl) { + .base.handle = NV_SUBDEV(DEVINIT, 0xc0), + .base.ofuncs = &(struct nouveau_ofuncs) { .ctor = nvc0_devinit_ctor, .dtor = _nouveau_devinit_dtor, .init = nv50_devinit_init, .fini = _nouveau_devinit_fini, }, -}; + .pll_set = nvc0_devinit_pll_set, + .disable = nvc0_devinit_disable, +}.base; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/devinit/priv.h +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/devinit/priv.h @@ -6,20 +6,30 @@ #include #include -void nv04_devinit_dtor(struct nouveau_object *); -int nv04_devinit_init(struct nouveau_object *); -int nv04_devinit_fini(struct nouveau_object *, bool); -int nv04_devinit_pll_set(struct nouveau_devinit *, u32, u32); - -void setPLL_single(struct nouveau_devinit *, u32, struct nouveau_pll_vals *); -void setPLL_double_highregs(struct nouveau_devinit *, u32, struct nouveau_pll_vals *); -void setPLL_double_lowregs(struct nouveau_devinit *, u32, struct nouveau_pll_vals *); - - -struct nv50_devinit_priv { - struct nouveau_devinit base; +struct nouveau_devinit_impl { + struct nouveau_oclass base; + void (*meminit)(struct nouveau_devinit *); + int (*pll_set)(struct nouveau_devinit *, u32 type, u32 freq); + u64 (*disable)(struct nouveau_devinit *); }; -int nv50_devinit_init(struct nouveau_object *); +#define nouveau_devinit_create(p,e,o,d) \ + nouveau_devinit_create_((p), (e), (o), sizeof(**d), (void **)d) +#define nouveau_devinit_destroy(p) \ + nouveau_subdev_destroy(&(p)->base) +#define nouveau_devinit_init(p) ({ \ + struct nouveau_devinit *d = (p); \ + _nouveau_devinit_init(nv_object(d)); \ +}) +#define nouveau_devinit_fini(p,s) ({ \ + struct nouveau_devinit *d = (p); \ + _nouveau_devinit_fini(nv_object(d), (s)); \ +}) + +int nouveau_devinit_create_(struct nouveau_object *, struct nouveau_object *, + struct nouveau_oclass *, int, void **); +#define _nouveau_devinit_dtor _nouveau_subdev_dtor +int _nouveau_devinit_init(struct nouveau_object *); +int _nouveau_devinit_fini(struct nouveau_object *, bool suspend); #endif --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/core/subdev/fb/nv1a.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/core/subdev/fb/nv1a.c @@ -36,7 +36,7 @@ .fini = _nouveau_fb_fini, }, .base.memtype = nv04_fb_memtype_valid, - .base.ram = &nv10_ram_oclass, + .base.ram = &nv1a_ram_oclass, .tile.regions = 8, .tile.init = nv10_fb_tile_init, .tile.fini = nv10_fb_tile_fini, --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/nouveau_bios.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/nouveau_bios.c @@ -352,7 +352,7 @@ /* Apple cards don't have the fp table; the laptops use DDC */ /* The table is also missing on some x86 IGPs */ #ifndef __powerpc__ - NV_ERROR(drm, "Pointer to flat panel table invalid\n"); + NV_WARN(drm, "Pointer to flat panel table invalid\n"); #endif bios->digital_min_front_porch = 0x4b; return 0; @@ -936,7 +936,7 @@ tmdstableptr = ROM16(bios->data[bitentry->offset]); if (!tmdstableptr) { - NV_ERROR(drm, "Pointer to TMDS table invalid\n"); + NV_WARN(drm, "Pointer to TMDS table invalid\n"); return -EINVAL; } --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/nouveau_bo.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/nouveau_bo.c @@ -798,25 +798,25 @@ struct ttm_mem_reg *old_mem, struct ttm_mem_reg *new_mem) { struct nouveau_mem *node = old_mem->mm_node; - struct nouveau_bo *nvbo = nouveau_bo(bo); u64 length = (new_mem->num_pages << PAGE_SHIFT); u64 src_offset = node->vma[0].offset; u64 dst_offset = node->vma[1].offset; + int src_tiled = !!node->memtype; + int dst_tiled = !!((struct nouveau_mem *)new_mem->mm_node)->memtype; int ret; while (length) { u32 amount, stride, height; + ret = RING_SPACE(chan, 18 + 6 * (src_tiled + dst_tiled)); + if (ret) + return ret; + amount = min(length, (u64)(4 * 1024 * 1024)); stride = 16 * 4; height = amount / stride; - if (old_mem->mem_type == TTM_PL_VRAM && - nouveau_bo_tile_layout(nvbo)) { - ret = RING_SPACE(chan, 8); - if (ret) - return ret; - + if (src_tiled) { BEGIN_NV04(chan, NvSubCopy, 0x0200, 7); OUT_RING (chan, 0); OUT_RING (chan, 0); @@ -826,19 +826,10 @@ OUT_RING (chan, 0); OUT_RING (chan, 0); } else { - ret = RING_SPACE(chan, 2); - if (ret) - return ret; - BEGIN_NV04(chan, NvSubCopy, 0x0200, 1); OUT_RING (chan, 1); } - if (new_mem->mem_type == TTM_PL_VRAM && - nouveau_bo_tile_layout(nvbo)) { - ret = RING_SPACE(chan, 8); - if (ret) - return ret; - + if (dst_tiled) { BEGIN_NV04(chan, NvSubCopy, 0x021c, 7); OUT_RING (chan, 0); OUT_RING (chan, 0); @@ -848,18 +839,10 @@ OUT_RING (chan, 0); OUT_RING (chan, 0); } else { - ret = RING_SPACE(chan, 2); - if (ret) - return ret; - BEGIN_NV04(chan, NvSubCopy, 0x021c, 1); OUT_RING (chan, 1); } - ret = RING_SPACE(chan, 14); - if (ret) - return ret; - BEGIN_NV04(chan, NvSubCopy, 0x0238, 2); OUT_RING (chan, upper_32_bits(src_offset)); OUT_RING (chan, upper_32_bits(dst_offset)); --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/nouveau_display.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/nouveau_display.c @@ -603,6 +603,14 @@ if (!s) return -ENOMEM; + if (new_bo != old_bo) { + ret = nouveau_bo_pin(new_bo, TTM_PL_FLAG_VRAM); + if (ret) + goto fail_free; + } + + mutex_lock(&chan->cli->mutex); + /* synchronise rendering channel with the kernel's channel */ spin_lock(&new_bo->bo.bdev->fence_lock); fence = nouveau_fence_ref(new_bo->bo.sync_obj); @@ -610,15 +618,8 @@ ret = nouveau_fence_sync(fence, chan); nouveau_fence_unref(&fence); if (ret) - goto fail_free; - - if (new_bo != old_bo) { - ret = nouveau_bo_pin(new_bo, TTM_PL_FLAG_VRAM); - if (ret) - goto fail_free; - } + goto fail_unpin; - mutex_lock(&chan->cli->mutex); ret = ttm_bo_reserve(&old_bo->bo, true, false, false, NULL); if (ret) goto fail_unpin; --- linux-3.13.0.orig/drivers/gpu/drm/nouveau/nouveau_drm.c +++ linux-3.13.0/drivers/gpu/drm/nouveau/nouveau_drm.c @@ -376,6 +376,8 @@ if (ret) goto fail_device; + dev->irq_enabled = true; + /* workaround an odd issue on nvc1 by disabling the device's * nosnoop capability. hopefully won't cause issues until a * better fix is found - assuming there is one... @@ -475,6 +477,7 @@ struct nouveau_drm *drm = nouveau_drm(dev); struct nouveau_object *device; + dev->irq_enabled = false; device = drm->client.base.device; drm_put_dev(dev); @@ -483,13 +486,13 @@ } static int -nouveau_do_suspend(struct drm_device *dev) +nouveau_do_suspend(struct drm_device *dev, bool runtime) { struct nouveau_drm *drm = nouveau_drm(dev); struct nouveau_cli *cli; int ret; - if (dev->mode_config.num_crtc) { + if (dev->mode_config.num_crtc && !runtime) { NV_INFO(drm, "suspending display...\n"); ret = nouveau_display_suspend(dev); if (ret) @@ -557,7 +560,7 @@ if (drm_dev->mode_config.num_crtc) nouveau_fbcon_set_suspend(drm_dev, 1); - ret = nouveau_do_suspend(drm_dev); + ret = nouveau_do_suspend(drm_dev, false); if (ret) return ret; @@ -637,7 +640,7 @@ if (drm_dev->mode_config.num_crtc) nouveau_fbcon_set_suspend(drm_dev, 1); - ret = nouveau_do_suspend(drm_dev); + ret = nouveau_do_suspend(drm_dev, false); return ret; } @@ -855,20 +858,23 @@ struct drm_device *drm_dev = pci_get_drvdata(pdev); int ret; - if (nouveau_runtime_pm == 0) - return -EINVAL; + if (nouveau_runtime_pm == 0) { + pm_runtime_forbid(dev); + return -EBUSY; + } /* are we optimus enabled? */ if (nouveau_runtime_pm == -1 && !nouveau_is_optimus() && !nouveau_is_v1_dsm()) { DRM_DEBUG_DRIVER("failing to power off - not optimus\n"); - return -EINVAL; + pm_runtime_forbid(dev); + return -EBUSY; } nv_debug_level(SILENT); drm_kms_helper_poll_disable(drm_dev); vga_switcheroo_set_dynamic_switch(pdev, VGA_SWITCHEROO_OFF); nouveau_switcheroo_optimus_dsm(); - ret = nouveau_do_suspend(drm_dev); + ret = nouveau_do_suspend(drm_dev, true); pci_save_state(pdev); pci_disable_device(pdev); pci_set_power_state(pdev, PCI_D3cold); @@ -894,8 +900,6 @@ pci_set_master(pdev); ret = nouveau_do_resume(drm_dev); - if (drm_dev->mode_config.num_crtc) - nouveau_display_resume(drm_dev); drm_kms_helper_poll_enable(drm_dev); /* do magic */ nv_mask(device, 0x88488, (1 << 25), (1 << 25)); @@ -912,12 +916,15 @@ struct nouveau_drm *drm = nouveau_drm(drm_dev); struct drm_crtc *crtc; - if (nouveau_runtime_pm == 0) + if (nouveau_runtime_pm == 0) { + pm_runtime_forbid(dev); return -EBUSY; + } /* are we optimus enabled? */ if (nouveau_runtime_pm == -1 && !nouveau_is_optimus() && !nouveau_is_v1_dsm()) { DRM_DEBUG_DRIVER("failing to power off - not optimus\n"); + pm_runtime_forbid(dev); return -EBUSY; } --- linux-3.13.0.orig/drivers/gpu/drm/qxl/qxl_ttm.c +++ linux-3.13.0/drivers/gpu/drm/qxl/qxl_ttm.c @@ -433,6 +433,7 @@ static void qxl_sync_obj_unref(void **sync_obj) { + *sync_obj = NULL; } static void *qxl_sync_obj_ref(void *sync_obj) --- linux-3.13.0.orig/drivers/gpu/drm/radeon/atombios_crtc.c +++ linux-3.13.0/drivers/gpu/drm/radeon/atombios_crtc.c @@ -209,6 +209,16 @@ atom_execute_table(rdev->mode_info.atom_context, index, (uint32_t *)&args); } +static const u32 vga_control_regs[6] = +{ + AVIVO_D1VGA_CONTROL, + AVIVO_D2VGA_CONTROL, + EVERGREEN_D3VGA_CONTROL, + EVERGREEN_D4VGA_CONTROL, + EVERGREEN_D5VGA_CONTROL, + EVERGREEN_D6VGA_CONTROL, +}; + static void atombios_blank_crtc(struct drm_crtc *crtc, int state) { struct radeon_crtc *radeon_crtc = to_radeon_crtc(crtc); @@ -216,13 +226,23 @@ struct radeon_device *rdev = dev->dev_private; int index = GetIndexIntoMasterTable(COMMAND, BlankCRTC); BLANK_CRTC_PS_ALLOCATION args; + u32 vga_control = 0; memset(&args, 0, sizeof(args)); + if (ASIC_IS_DCE8(rdev)) { + vga_control = RREG32(vga_control_regs[radeon_crtc->crtc_id]); + WREG32(vga_control_regs[radeon_crtc->crtc_id], vga_control | 1); + } + args.ucCRTC = radeon_crtc->crtc_id; args.ucBlanking = state; atom_execute_table(rdev->mode_info.atom_context, index, (uint32_t *)&args); + + if (ASIC_IS_DCE8(rdev)) { + WREG32(vga_control_regs[radeon_crtc->crtc_id], vga_control); + } } static void atombios_powergate_crtc(struct drm_crtc *crtc, int state) @@ -938,11 +958,14 @@ radeon_atombios_get_ppll_ss_info(rdev, &radeon_crtc->ss, ATOM_DP_SS_ID1); - } else + } else { radeon_crtc->ss_enabled = radeon_atombios_get_ppll_ss_info(rdev, &radeon_crtc->ss, ATOM_DP_SS_ID1); + } + /* disable spread spectrum on DCE3 DP */ + radeon_crtc->ss_enabled = false; } break; case ATOM_ENCODER_MODE_LVDS: @@ -1146,7 +1169,7 @@ evergreen_tiling_fields(tiling_flags, &bankw, &bankh, &mtaspect, &tile_split); /* Set NUM_BANKS. */ - if (rdev->family >= CHIP_BONAIRE) { + if (rdev->family >= CHIP_TAHITI) { unsigned tileb, index, num_banks, tile_split_bytes; /* Calculate the macrotile mode index. */ @@ -1164,13 +1187,14 @@ return -EINVAL; } - num_banks = (rdev->config.cik.macrotile_mode_array[index] >> 6) & 0x3; + if (rdev->family >= CHIP_BONAIRE) + num_banks = (rdev->config.cik.macrotile_mode_array[index] >> 6) & 0x3; + else + num_banks = (rdev->config.si.tile_mode_array[index] >> 20) & 0x3; fb_format |= EVERGREEN_GRPH_NUM_BANKS(num_banks); } else { - /* SI and older. */ - if (rdev->family >= CHIP_TAHITI) - tmp = rdev->config.si.tile_config; - else if (rdev->family >= CHIP_CAYMAN) + /* NI and older. */ + if (rdev->family >= CHIP_CAYMAN) tmp = rdev->config.cayman.tile_config; else tmp = rdev->config.evergreen.tile_config; @@ -1743,6 +1767,20 @@ return ATOM_PPLL1; DRM_ERROR("unable to allocate a PPLL\n"); return ATOM_PPLL_INVALID; + } else if (ASIC_IS_DCE41(rdev)) { + /* Don't share PLLs on DCE4.1 chips */ + if (ENCODER_MODE_IS_DP(atombios_get_encoder_mode(radeon_crtc->encoder))) { + if (rdev->clock.dp_extclk) + /* skip PPLL programming if using ext clock */ + return ATOM_PPLL_INVALID; + } + pll_in_use = radeon_get_pll_use_mask(crtc); + if (!(pll_in_use & (1 << ATOM_PPLL1))) + return ATOM_PPLL1; + if (!(pll_in_use & (1 << ATOM_PPLL2))) + return ATOM_PPLL2; + DRM_ERROR("unable to allocate a PPLL\n"); + return ATOM_PPLL_INVALID; } else if (ASIC_IS_DCE4(rdev)) { /* in DP mode, the DP ref clock can come from PPLL, DCPLL, or ext clock, * depending on the asic: @@ -1770,7 +1808,7 @@ if (pll != ATOM_PPLL_INVALID) return pll; } - } else if (!ASIC_IS_DCE41(rdev)) { /* Don't share PLLs on DCE4.1 chips */ + } else { /* use the same PPLL for all monitors with the same clock */ pll = radeon_get_shared_nondp_ppll(crtc); if (pll != ATOM_PPLL_INVALID) --- linux-3.13.0.orig/drivers/gpu/drm/radeon/atombios_encoders.c +++ linux-3.13.0/drivers/gpu/drm/radeon/atombios_encoders.c @@ -1313,7 +1313,7 @@ } if (is_dp) args.v5.ucLaneNum = dp_lane_count; - else if (radeon_encoder->pixel_clock > 165000) + else if (radeon_dig_monitor_is_duallink(encoder, radeon_encoder->pixel_clock)) args.v5.ucLaneNum = 8; else args.v5.ucLaneNum = 4; --- linux-3.13.0.orig/drivers/gpu/drm/radeon/cik.c +++ linux-3.13.0/drivers/gpu/drm/radeon/cik.c @@ -1095,7 +1095,7 @@ 0x8a14, 0xf000003f, 0x00000007, 0x8b24, 0xffffffff, 0x00ffffff, 0x28350, 0x3f3f3fff, 0x00000082, - 0x28355, 0x0000003f, 0x00000000, + 0x28354, 0x0000003f, 0x00000000, 0x3e78, 0x00000001, 0x00000002, 0x913c, 0xffff03df, 0x00000004, 0xc768, 0x00000008, 0x00000008, @@ -3566,8 +3566,6 @@ struct radeon_semaphore *semaphore, bool emit_wait) { -/* TODO: figure out why semaphore cause lockups */ -#if 0 uint64_t addr = semaphore->gpu_addr; unsigned sel = emit_wait ? PACKET3_SEM_SEL_WAIT : PACKET3_SEM_SEL_SIGNAL; @@ -3576,9 +3574,6 @@ radeon_ring_write(ring, (upper_32_bits(addr) & 0xffff) | sel); return true; -#else - return false; -#endif } /** @@ -4074,8 +4069,11 @@ { if (enable) WREG32(CP_MEC_CNTL, 0); - else + else { WREG32(CP_MEC_CNTL, (MEC_ME1_HALT | MEC_ME2_HALT)); + rdev->ring[CAYMAN_RING_TYPE_CP1_INDEX].ready = false; + rdev->ring[CAYMAN_RING_TYPE_CP2_INDEX].ready = false; + } udelay(50); } @@ -6320,8 +6318,8 @@ buffer[count++] = cpu_to_le32(0x00000000); break; case CHIP_HAWAII: - buffer[count++] = 0x3a00161a; - buffer[count++] = 0x0000002e; + buffer[count++] = cpu_to_le32(0x3a00161a); + buffer[count++] = cpu_to_le32(0x0000002e); break; default: buffer[count++] = cpu_to_le32(0x00000000); @@ -7503,26 +7501,7 @@ cik_mc_program(rdev); - if (rdev->flags & RADEON_IS_IGP) { - if (!rdev->me_fw || !rdev->pfp_fw || !rdev->ce_fw || - !rdev->mec_fw || !rdev->sdma_fw || !rdev->rlc_fw) { - r = cik_init_microcode(rdev); - if (r) { - DRM_ERROR("Failed to load firmware!\n"); - return r; - } - } - } else { - if (!rdev->me_fw || !rdev->pfp_fw || !rdev->ce_fw || - !rdev->mec_fw || !rdev->sdma_fw || !rdev->rlc_fw || - !rdev->mc_fw) { - r = cik_init_microcode(rdev); - if (r) { - DRM_ERROR("Failed to load firmware!\n"); - return r; - } - } - + if (!(rdev->flags & RADEON_IS_IGP)) { r = ci_mc_load_microcode(rdev); if (r) { DRM_ERROR("Failed to load MC firmware!\n"); @@ -7835,6 +7814,27 @@ if (r) return r; + if (rdev->flags & RADEON_IS_IGP) { + if (!rdev->me_fw || !rdev->pfp_fw || !rdev->ce_fw || + !rdev->mec_fw || !rdev->sdma_fw || !rdev->rlc_fw) { + r = cik_init_microcode(rdev); + if (r) { + DRM_ERROR("Failed to load firmware!\n"); + return r; + } + } + } else { + if (!rdev->me_fw || !rdev->pfp_fw || !rdev->ce_fw || + !rdev->mec_fw || !rdev->sdma_fw || !rdev->rlc_fw || + !rdev->mc_fw) { + r = cik_init_microcode(rdev); + if (r) { + DRM_ERROR("Failed to load firmware!\n"); + return r; + } + } + } + ring = &rdev->ring[RADEON_RING_TYPE_GFX_INDEX]; ring->ring_obj = NULL; r600_ring_init(rdev, ring, 1024 * 1024); --- linux-3.13.0.orig/drivers/gpu/drm/radeon/cik_sdma.c +++ linux-3.13.0/drivers/gpu/drm/radeon/cik_sdma.c @@ -88,6 +88,35 @@ } /** + * cik_sdma_hdp_flush_ring_emit - emit an hdp flush on the DMA ring + * + * @rdev: radeon_device pointer + * @ridx: radeon ring index + * + * Emit an hdp flush packet on the requested DMA ring. + */ +static void cik_sdma_hdp_flush_ring_emit(struct radeon_device *rdev, + int ridx) +{ + struct radeon_ring *ring = &rdev->ring[ridx]; + u32 extra_bits = (SDMA_POLL_REG_MEM_EXTRA_OP(1) | + SDMA_POLL_REG_MEM_EXTRA_FUNC(3)); /* == */ + u32 ref_and_mask; + + if (ridx == R600_RING_TYPE_DMA_INDEX) + ref_and_mask = SDMA0; + else + ref_and_mask = SDMA1; + + radeon_ring_write(ring, SDMA_PACKET(SDMA_OPCODE_POLL_REG_MEM, 0, extra_bits)); + radeon_ring_write(ring, GPU_HDP_FLUSH_DONE); + radeon_ring_write(ring, GPU_HDP_FLUSH_REQ); + radeon_ring_write(ring, ref_and_mask); /* reference */ + radeon_ring_write(ring, ref_and_mask); /* mask */ + radeon_ring_write(ring, (0xfff << 16) | 10); /* retry count, poll interval */ +} + +/** * cik_sdma_fence_ring_emit - emit a fence on the DMA ring * * @rdev: radeon_device pointer @@ -111,12 +140,7 @@ /* generate an interrupt */ radeon_ring_write(ring, SDMA_PACKET(SDMA_OPCODE_TRAP, 0, 0)); /* flush HDP */ - /* We should be using the new POLL_REG_MEM special op packet here - * but it causes sDMA to hang sometimes - */ - radeon_ring_write(ring, SDMA_PACKET(SDMA_OPCODE_SRBM_WRITE, 0, 0xf000)); - radeon_ring_write(ring, HDP_MEM_COHERENCY_FLUSH_CNTL >> 2); - radeon_ring_write(ring, 0); + cik_sdma_hdp_flush_ring_emit(rdev, fence->ring); } /** @@ -169,6 +193,8 @@ WREG32(SDMA0_GFX_RB_CNTL + reg_offset, rb_cntl); WREG32(SDMA0_GFX_IB_CNTL + reg_offset, 0); } + rdev->ring[R600_RING_TYPE_DMA_INDEX].ready = false; + rdev->ring[CAYMAN_RING_TYPE_DMA1_INDEX].ready = false; } /** @@ -196,6 +222,11 @@ u32 me_cntl, reg_offset; int i; + if (enable == false) { + cik_sdma_gfx_stop(rdev); + cik_sdma_rlc_stop(rdev); + } + for (i = 0; i < 2; i++) { if (i == 0) reg_offset = SDMA0_REGISTER_OFFSET; @@ -323,10 +354,6 @@ if (!rdev->sdma_fw) return -EINVAL; - /* stop the gfx rings and rlc compute queues */ - cik_sdma_gfx_stop(rdev); - cik_sdma_rlc_stop(rdev); - /* halt the MEs */ cik_sdma_enable(rdev, false); @@ -395,9 +422,6 @@ */ void cik_sdma_fini(struct radeon_device *rdev) { - /* stop the gfx rings and rlc compute queues */ - cik_sdma_gfx_stop(rdev); - cik_sdma_rlc_stop(rdev); /* halt the MEs */ cik_sdma_enable(rdev, false); radeon_ring_fini(rdev, &rdev->ring[R600_RING_TYPE_DMA_INDEX]); @@ -747,12 +771,7 @@ radeon_ring_write(ring, VMID(0)); /* flush HDP */ - /* We should be using the new POLL_REG_MEM special op packet here - * but it causes sDMA to hang sometimes - */ - radeon_ring_write(ring, SDMA_PACKET(SDMA_OPCODE_SRBM_WRITE, 0, 0xf000)); - radeon_ring_write(ring, HDP_MEM_COHERENCY_FLUSH_CNTL >> 2); - radeon_ring_write(ring, 0); + cik_sdma_hdp_flush_ring_emit(rdev, ridx); /* flush TLB */ radeon_ring_write(ring, SDMA_PACKET(SDMA_OPCODE_SRBM_WRITE, 0, 0xf000)); --- linux-3.13.0.orig/drivers/gpu/drm/radeon/dce6_afmt.c +++ linux-3.13.0/drivers/gpu/drm/radeon/dce6_afmt.c @@ -283,7 +283,7 @@ bool enable) { WREG32_ENDPOINT(pin->offset, AZ_F0_CODEC_PIN_CONTROL_HOTPLUG_CONTROL, - AUDIO_ENABLED); + enable ? AUDIO_ENABLED : 0); DRM_INFO("%s audio %d support\n", enable ? "Enabling" : "Disabling", pin->id); } --- linux-3.13.0.orig/drivers/gpu/drm/radeon/evergreen.c +++ linux-3.13.0/drivers/gpu/drm/radeon/evergreen.c @@ -4298,8 +4298,8 @@ WREG32(GRPH_INT_CONTROL + EVERGREEN_CRTC5_REGISTER_OFFSET, 0); } - /* only one DAC on DCE6 */ - if (!ASIC_IS_DCE6(rdev)) + /* only one DAC on DCE5 */ + if (!ASIC_IS_DCE5(rdev)) WREG32(DACA_AUTODETECT_INT_CONTROL, 0); WREG32(DACB_AUTODETECT_INT_CONTROL, 0); @@ -5110,26 +5110,11 @@ evergreen_mc_program(rdev); if (ASIC_IS_DCE5(rdev)) { - if (!rdev->me_fw || !rdev->pfp_fw || !rdev->rlc_fw || !rdev->mc_fw) { - r = ni_init_microcode(rdev); - if (r) { - DRM_ERROR("Failed to load firmware!\n"); - return r; - } - } r = ni_mc_load_microcode(rdev); if (r) { DRM_ERROR("Failed to load MC firmware!\n"); return r; } - } else { - if (!rdev->me_fw || !rdev->pfp_fw || !rdev->rlc_fw) { - r = r600_init_microcode(rdev); - if (r) { - DRM_ERROR("Failed to load firmware!\n"); - return r; - } - } } if (rdev->flags & RADEON_IS_AGP) { @@ -5357,6 +5342,24 @@ if (r) return r; + if (ASIC_IS_DCE5(rdev)) { + if (!rdev->me_fw || !rdev->pfp_fw || !rdev->rlc_fw || !rdev->mc_fw) { + r = ni_init_microcode(rdev); + if (r) { + DRM_ERROR("Failed to load firmware!\n"); + return r; + } + } + } else { + if (!rdev->me_fw || !rdev->pfp_fw || !rdev->rlc_fw) { + r = r600_init_microcode(rdev); + if (r) { + DRM_ERROR("Failed to load firmware!\n"); + return r; + } + } + } + rdev->ring[RADEON_RING_TYPE_GFX_INDEX].ring_obj = NULL; r600_ring_init(rdev, &rdev->ring[RADEON_RING_TYPE_GFX_INDEX], 1024 * 1024); @@ -5418,9 +5421,9 @@ radeon_wb_fini(rdev); radeon_ib_pool_fini(rdev); radeon_irq_kms_fini(rdev); - evergreen_pcie_gart_fini(rdev); uvd_v1_0_fini(rdev); radeon_uvd_fini(rdev); + evergreen_pcie_gart_fini(rdev); r600_vram_scratch_fini(rdev); radeon_gem_fini(rdev); radeon_fence_driver_fini(rdev); --- linux-3.13.0.orig/drivers/gpu/drm/radeon/evergreen_cs.c +++ linux-3.13.0/drivers/gpu/drm/radeon/evergreen_cs.c @@ -967,7 +967,10 @@ if (track->cb_dirty) { tmp = track->cb_target_mask; for (i = 0; i < 8; i++) { - if ((tmp >> (i * 4)) & 0xF) { + u32 format = G_028C70_FORMAT(track->cb_color_info[i]); + + if (format != V_028C70_COLOR_INVALID && + (tmp >> (i * 4)) & 0xF) { /* at least one component is enabled */ if (track->cb_color_bo[i] == NULL) { dev_warn(p->dev, "%s:%d mask 0x%08X | 0x%08X no cb for %d\n", --- linux-3.13.0.orig/drivers/gpu/drm/radeon/evergreen_smc.h +++ linux-3.13.0/drivers/gpu/drm/radeon/evergreen_smc.h @@ -57,7 +57,7 @@ #define EVERGREEN_SMC_FIRMWARE_HEADER_LOCATION 0x100 -#define EVERGREEN_SMC_FIRMWARE_HEADER_softRegisters 0x0 +#define EVERGREEN_SMC_FIRMWARE_HEADER_softRegisters 0x8 #define EVERGREEN_SMC_FIRMWARE_HEADER_stateTable 0xC #define EVERGREEN_SMC_FIRMWARE_HEADER_mcRegisterTable 0x20 --- linux-3.13.0.orig/drivers/gpu/drm/radeon/ni.c +++ linux-3.13.0/drivers/gpu/drm/radeon/ni.c @@ -1330,13 +1330,12 @@ { struct radeon_ring *ring = &rdev->ring[fence->ring]; u64 addr = rdev->fence_drv[fence->ring].gpu_addr; + u32 cp_coher_cntl = PACKET3_FULL_CACHE_ENA | PACKET3_TC_ACTION_ENA | + PACKET3_SH_ACTION_ENA; /* flush read cache over gart for this vmid */ - radeon_ring_write(ring, PACKET3(PACKET3_SET_CONFIG_REG, 1)); - radeon_ring_write(ring, (CP_COHER_CNTL2 - PACKET3_SET_CONFIG_REG_START) >> 2); - radeon_ring_write(ring, 0); radeon_ring_write(ring, PACKET3(PACKET3_SURFACE_SYNC, 3)); - radeon_ring_write(ring, PACKET3_TC_ACTION_ENA | PACKET3_SH_ACTION_ENA); + radeon_ring_write(ring, PACKET3_ENGINE_ME | cp_coher_cntl); radeon_ring_write(ring, 0xFFFFFFFF); radeon_ring_write(ring, 0); radeon_ring_write(ring, 10); /* poll interval */ @@ -1352,6 +1351,8 @@ void cayman_ring_ib_execute(struct radeon_device *rdev, struct radeon_ib *ib) { struct radeon_ring *ring = &rdev->ring[ib->ring]; + u32 cp_coher_cntl = PACKET3_FULL_CACHE_ENA | PACKET3_TC_ACTION_ENA | + PACKET3_SH_ACTION_ENA; /* set to DX10/11 mode */ radeon_ring_write(ring, PACKET3(PACKET3_MODE_CONTROL, 0)); @@ -1376,14 +1377,11 @@ (ib->vm ? (ib->vm->id << 24) : 0)); /* flush read cache over gart for this vmid */ - radeon_ring_write(ring, PACKET3(PACKET3_SET_CONFIG_REG, 1)); - radeon_ring_write(ring, (CP_COHER_CNTL2 - PACKET3_SET_CONFIG_REG_START) >> 2); - radeon_ring_write(ring, ib->vm ? ib->vm->id : 0); radeon_ring_write(ring, PACKET3(PACKET3_SURFACE_SYNC, 3)); - radeon_ring_write(ring, PACKET3_TC_ACTION_ENA | PACKET3_SH_ACTION_ENA); + radeon_ring_write(ring, PACKET3_ENGINE_ME | cp_coher_cntl); radeon_ring_write(ring, 0xFFFFFFFF); radeon_ring_write(ring, 0); - radeon_ring_write(ring, 10); /* poll interval */ + radeon_ring_write(ring, ((ib->vm ? ib->vm->id : 0) << 24) | 10); /* poll interval */ } static void cayman_cp_enable(struct radeon_device *rdev, bool enable) @@ -1878,23 +1876,7 @@ evergreen_mc_program(rdev); - if (rdev->flags & RADEON_IS_IGP) { - if (!rdev->me_fw || !rdev->pfp_fw || !rdev->rlc_fw) { - r = ni_init_microcode(rdev); - if (r) { - DRM_ERROR("Failed to load firmware!\n"); - return r; - } - } - } else { - if (!rdev->me_fw || !rdev->pfp_fw || !rdev->rlc_fw || !rdev->mc_fw) { - r = ni_init_microcode(rdev); - if (r) { - DRM_ERROR("Failed to load firmware!\n"); - return r; - } - } - + if (!(rdev->flags & RADEON_IS_IGP)) { r = ni_mc_load_microcode(rdev); if (r) { DRM_ERROR("Failed to load MC firmware!\n"); @@ -2145,6 +2127,24 @@ if (r) return r; + if (rdev->flags & RADEON_IS_IGP) { + if (!rdev->me_fw || !rdev->pfp_fw || !rdev->rlc_fw) { + r = ni_init_microcode(rdev); + if (r) { + DRM_ERROR("Failed to load firmware!\n"); + return r; + } + } + } else { + if (!rdev->me_fw || !rdev->pfp_fw || !rdev->rlc_fw || !rdev->mc_fw) { + r = ni_init_microcode(rdev); + if (r) { + DRM_ERROR("Failed to load firmware!\n"); + return r; + } + } + } + ring->ring_obj = NULL; r600_ring_init(rdev, ring, 1024 * 1024); --- linux-3.13.0.orig/drivers/gpu/drm/radeon/ni_dpm.c +++ linux-3.13.0/drivers/gpu/drm/radeon/ni_dpm.c @@ -2586,7 +2586,7 @@ if (NISLANDS_DPM2_SQ_RAMP_STI_SIZE > (STI_SIZE_MASK >> STI_SIZE_SHIFT)) enable_sq_ramping = false; - if (NISLANDS_DPM2_SQ_RAMP_LTI_RATIO <= (LTI_RATIO_MASK >> LTI_RATIO_SHIFT)) + if (NISLANDS_DPM2_SQ_RAMP_LTI_RATIO > (LTI_RATIO_MASK >> LTI_RATIO_SHIFT)) enable_sq_ramping = false; for (i = 0; i < state->performance_level_count; i++) { --- linux-3.13.0.orig/drivers/gpu/drm/radeon/nid.h +++ linux-3.13.0/drivers/gpu/drm/radeon/nid.h @@ -1154,6 +1154,7 @@ # define PACKET3_DB_ACTION_ENA (1 << 26) # define PACKET3_SH_ACTION_ENA (1 << 27) # define PACKET3_SX_ACTION_ENA (1 << 28) +# define PACKET3_ENGINE_ME (1 << 31) #define PACKET3_ME_INITIALIZE 0x44 #define PACKET3_ME_INITIALIZE_DEVICE_ID(x) ((x) << 16) #define PACKET3_COND_WRITE 0x45 --- linux-3.13.0.orig/drivers/gpu/drm/radeon/r600.c +++ linux-3.13.0/drivers/gpu/drm/radeon/r600.c @@ -2607,14 +2607,17 @@ struct radeon_fence *fence) { struct radeon_ring *ring = &rdev->ring[fence->ring]; + u32 cp_coher_cntl = PACKET3_TC_ACTION_ENA | PACKET3_VC_ACTION_ENA | + PACKET3_SH_ACTION_ENA; + + if (rdev->family >= CHIP_RV770) + cp_coher_cntl |= PACKET3_FULL_CACHE_ENA; if (rdev->wb.use_event) { u64 addr = rdev->fence_drv[fence->ring].gpu_addr; /* flush read cache over gart */ radeon_ring_write(ring, PACKET3(PACKET3_SURFACE_SYNC, 3)); - radeon_ring_write(ring, PACKET3_TC_ACTION_ENA | - PACKET3_VC_ACTION_ENA | - PACKET3_SH_ACTION_ENA); + radeon_ring_write(ring, cp_coher_cntl); radeon_ring_write(ring, 0xFFFFFFFF); radeon_ring_write(ring, 0); radeon_ring_write(ring, 10); /* poll interval */ @@ -2628,9 +2631,7 @@ } else { /* flush read cache over gart */ radeon_ring_write(ring, PACKET3(PACKET3_SURFACE_SYNC, 3)); - radeon_ring_write(ring, PACKET3_TC_ACTION_ENA | - PACKET3_VC_ACTION_ENA | - PACKET3_SH_ACTION_ENA); + radeon_ring_write(ring, cp_coher_cntl); radeon_ring_write(ring, 0xFFFFFFFF); radeon_ring_write(ring, 0); radeon_ring_write(ring, 10); /* poll interval */ @@ -2775,14 +2776,6 @@ r600_mc_program(rdev); - if (!rdev->me_fw || !rdev->pfp_fw || !rdev->rlc_fw) { - r = r600_init_microcode(rdev); - if (r) { - DRM_ERROR("Failed to load firmware!\n"); - return r; - } - } - if (rdev->flags & RADEON_IS_AGP) { r600_agp_enable(rdev); } else { @@ -2970,6 +2963,14 @@ if (r) return r; + if (!rdev->me_fw || !rdev->pfp_fw || !rdev->rlc_fw) { + r = r600_init_microcode(rdev); + if (r) { + DRM_ERROR("Failed to load firmware!\n"); + return r; + } + } + rdev->ring[RADEON_RING_TYPE_GFX_INDEX].ring_obj = NULL; r600_ring_init(rdev, &rdev->ring[RADEON_RING_TYPE_GFX_INDEX], 1024 * 1024); @@ -3903,6 +3904,10 @@ break; } break; + case 124: /* UVD */ + DRM_DEBUG("IH: UVD int: 0x%08x\n", src_data); + radeon_fence_process(rdev, R600_RING_TYPE_UVD_INDEX); + break; case 176: /* CP_INT in ring buffer */ case 177: /* CP_INT in IB1 */ case 178: /* CP_INT in IB2 */ --- linux-3.13.0.orig/drivers/gpu/drm/radeon/r600_cs.c +++ linux-3.13.0/drivers/gpu/drm/radeon/r600_cs.c @@ -749,7 +749,10 @@ } for (i = 0; i < 8; i++) { - if ((tmp >> (i * 4)) & 0xF) { + u32 format = G_0280A0_FORMAT(track->cb_color_info[i]); + + if (format != V_0280A0_COLOR_INVALID && + (tmp >> (i * 4)) & 0xF) { /* at least one component is enabled */ if (track->cb_color_bo[i] == NULL) { dev_warn(p->dev, "%s:%d mask 0x%08X | 0x%08X no cb for %d\n", --- linux-3.13.0.orig/drivers/gpu/drm/radeon/r600d.h +++ linux-3.13.0/drivers/gpu/drm/radeon/r600d.h @@ -1575,6 +1575,7 @@ # define PACKET3_CP_DMA_CMD_DAIC (1 << 29) #define PACKET3_SURFACE_SYNC 0x43 # define PACKET3_CB0_DEST_BASE_ENA (1 << 6) +# define PACKET3_FULL_CACHE_ENA (1 << 20) /* r7xx+ only */ # define PACKET3_TC_ACTION_ENA (1 << 23) # define PACKET3_VC_ACTION_ENA (1 << 24) # define PACKET3_CB_ACTION_ENA (1 << 25) --- linux-3.13.0.orig/drivers/gpu/drm/radeon/radeon.h +++ linux-3.13.0/drivers/gpu/drm/radeon/radeon.h @@ -134,6 +134,9 @@ /* R600+ */ #define R600_RING_TYPE_UVD_INDEX 5 +/* number of hw syncs before falling back on blocking */ +#define RADEON_NUM_SYNCS 4 + /* hardcode those limit for now */ #define RADEON_VA_IB_OFFSET (1 << 20) #define RADEON_VA_RESERVED_SIZE (8 << 20) @@ -544,7 +547,6 @@ /* * Semaphores. */ -/* everything here is constant */ struct radeon_semaphore { struct radeon_sa_bo *sa_bo; signed waiters; --- linux-3.13.0.orig/drivers/gpu/drm/radeon/radeon_atombios.c +++ linux-3.13.0/drivers/gpu/drm/radeon/radeon_atombios.c @@ -3944,6 +3944,10 @@ /* tell the bios not to handle mode switching */ bios_6_scratch |= ATOM_S6_ACC_BLOCK_DISPLAY_SWITCH; + /* clear the vbios dpms state */ + if (ASIC_IS_DCE4(rdev)) + bios_2_scratch &= ~ATOM_S2_DEVICE_DPMS_STATE; + if (rdev->family >= CHIP_R600) { WREG32(R600_BIOS_2_SCRATCH, bios_2_scratch); WREG32(R600_BIOS_6_SCRATCH, bios_6_scratch); --- linux-3.13.0.orig/drivers/gpu/drm/radeon/radeon_atpx_handler.c +++ linux-3.13.0/drivers/gpu/drm/radeon/radeon_atpx_handler.c @@ -219,7 +219,8 @@ memcpy(&output, info->buffer.pointer, size); /* TODO: check version? */ - printk("ATPX version %u\n", output.version); + printk("ATPX version %u, functions 0x%08x\n", + output.version, output.function_bits); radeon_atpx_parse_functions(&atpx->functions, output.function_bits); --- linux-3.13.0.orig/drivers/gpu/drm/radeon/radeon_display.c +++ linux-3.13.0/drivers/gpu/drm/radeon/radeon_display.c @@ -306,7 +306,7 @@ * to complete in this vblank? */ if (update_pending && - (DRM_SCANOUTPOS_VALID & radeon_get_crtc_scanoutpos(rdev->ddev, crtc_id, + (DRM_SCANOUTPOS_VALID & radeon_get_crtc_scanoutpos(rdev->ddev, crtc_id, 0, &vpos, &hpos, NULL, NULL)) && ((vpos >= (99 * rdev->mode_info.crtcs[crtc_id]->base.hwmode.crtc_vdisplay)/100) || (vpos < 0 && !ASIC_IS_AVIVO(rdev)))) { @@ -790,6 +790,7 @@ if (radeon_connector->edid) { drm_mode_connector_update_edid_property(&radeon_connector->base, radeon_connector->edid); ret = drm_add_edid_modes(&radeon_connector->base, radeon_connector->edid); + drm_edid_to_eld(&radeon_connector->base, radeon_connector->edid); return ret; } drm_mode_connector_update_edid_property(&radeon_connector->base, NULL); @@ -1601,6 +1602,7 @@ * * \param dev Device to query. * \param crtc Crtc to query. + * \param flags Flags from caller (DRM_CALLED_FROM_VBLIRQ or 0). * \param *vpos Location where vertical scanout position should be stored. * \param *hpos Location where horizontal scanout position should go. * \param *stime Target location for timestamp taken immediately before @@ -1622,8 +1624,8 @@ * unknown small number of scanlines wrt. real scanout position. * */ -int radeon_get_crtc_scanoutpos(struct drm_device *dev, int crtc, int *vpos, int *hpos, - ktime_t *stime, ktime_t *etime) +int radeon_get_crtc_scanoutpos(struct drm_device *dev, int crtc, unsigned int flags, + int *vpos, int *hpos, ktime_t *stime, ktime_t *etime) { u32 stat_crtc = 0, vbl = 0, position = 0; int vbl_start, vbl_end, vtotal, ret = 0; --- linux-3.13.0.orig/drivers/gpu/drm/radeon/radeon_drv.c +++ linux-3.13.0/drivers/gpu/drm/radeon/radeon_drv.c @@ -109,6 +109,7 @@ void radeon_gem_object_close(struct drm_gem_object *obj, struct drm_file *file_priv); extern int radeon_get_crtc_scanoutpos(struct drm_device *dev, int crtc, + unsigned int flags, int *vpos, int *hpos, ktime_t *stime, ktime_t *etime); extern const struct drm_ioctl_desc radeon_ioctls_kms[]; @@ -400,6 +401,9 @@ if (radeon_runtime_pm == 0) return -EINVAL; + if (radeon_runtime_pm == -1 && !radeon_is_px()) + return -EINVAL; + drm_dev->switch_power_state = DRM_SWITCH_POWER_CHANGING; drm_kms_helper_poll_disable(drm_dev); vga_switcheroo_set_dynamic_switch(pdev, VGA_SWITCHEROO_OFF); @@ -422,6 +426,9 @@ if (radeon_runtime_pm == 0) return -EINVAL; + if (radeon_runtime_pm == -1 && !radeon_is_px()) + return -EINVAL; + drm_dev->switch_power_state = DRM_SWITCH_POWER_CHANGING; pci_set_power_state(pdev, PCI_D0); --- linux-3.13.0.orig/drivers/gpu/drm/radeon/radeon_i2c.c +++ linux-3.13.0/drivers/gpu/drm/radeon/radeon_i2c.c @@ -1020,6 +1020,9 @@ /* Add the default buses */ void radeon_i2c_init(struct radeon_device *rdev) { + if (radeon_hw_i2c) + DRM_INFO("hw_i2c forced on, you may experience display detection problems!\n"); + if (rdev->is_atom_bios) radeon_atombios_i2c_init(rdev); else --- linux-3.13.0.orig/drivers/gpu/drm/radeon/radeon_kms.c +++ linux-3.13.0/drivers/gpu/drm/radeon/radeon_kms.c @@ -33,6 +33,13 @@ #include #include #include + +#if defined(CONFIG_VGA_SWITCHEROO) +bool radeon_is_px(void); +#else +static inline bool radeon_is_px(void) { return false; } +#endif + /** * radeon_driver_unload_kms - Main unload function for KMS. * @@ -130,7 +137,8 @@ "Error during ACPI methods call\n"); } - if (radeon_runtime_pm != 0) { + if ((radeon_runtime_pm == 1) || + ((radeon_runtime_pm == -1) && radeon_is_px())) { pm_runtime_use_autosuspend(dev->dev); pm_runtime_set_autosuspend_delay(dev->dev, 5000); pm_runtime_set_active(dev->dev); @@ -530,6 +538,10 @@ radeon_vm_init(rdev, &fpriv->vm); + r = radeon_bo_reserve(rdev->ring_tmp_bo.bo, false); + if (r) + return r; + /* map the ib pool buffer read only into * virtual address space */ bo_va = radeon_vm_bo_add(rdev, &fpriv->vm, @@ -537,6 +549,8 @@ r = radeon_vm_bo_set_addr(rdev, bo_va, RADEON_VA_IB_OFFSET, RADEON_VM_PAGE_READABLE | RADEON_VM_PAGE_SNOOPED); + + radeon_bo_unreserve(rdev->ring_tmp_bo.bo); if (r) { radeon_vm_fini(rdev, &fpriv->vm); kfree(fpriv); @@ -712,7 +726,7 @@ /* Helper routine in DRM core does all the work: */ return drm_calc_vbltimestamp_from_scanoutpos(dev, crtc, max_error, vblank_time, flags, - drmcrtc); + drmcrtc, &drmcrtc->hwmode); } #define KMS_INVALID_IOCTL(name) \ --- linux-3.13.0.orig/drivers/gpu/drm/radeon/radeon_mode.h +++ linux-3.13.0/drivers/gpu/drm/radeon/radeon_mode.h @@ -766,6 +766,7 @@ int x, int y); extern int radeon_get_crtc_scanoutpos(struct drm_device *dev, int crtc, + unsigned int flags, int *vpos, int *hpos, ktime_t *stime, ktime_t *etime); --- linux-3.13.0.orig/drivers/gpu/drm/radeon/radeon_pm.c +++ linux-3.13.0/drivers/gpu/drm/radeon/radeon_pm.c @@ -1010,8 +1010,10 @@ rdev->pm.current_clock_mode_index = 0; rdev->pm.current_sclk = rdev->pm.default_sclk; rdev->pm.current_mclk = rdev->pm.default_mclk; - rdev->pm.current_vddc = rdev->pm.power_state[rdev->pm.default_power_state_index].clock_info[0].voltage.voltage; - rdev->pm.current_vddci = rdev->pm.power_state[rdev->pm.default_power_state_index].clock_info[0].voltage.vddci; + if (rdev->pm.power_state) { + rdev->pm.current_vddc = rdev->pm.power_state[rdev->pm.default_power_state_index].clock_info[0].voltage.voltage; + rdev->pm.current_vddci = rdev->pm.power_state[rdev->pm.default_power_state_index].clock_info[0].voltage.vddci; + } if (rdev->pm.pm_method == PM_METHOD_DYNPM && rdev->pm.dynpm_state == DYNPM_STATE_SUSPENDED) { rdev->pm.dynpm_state = DYNPM_STATE_ACTIVE; @@ -1228,6 +1230,9 @@ case CHIP_RV670: case CHIP_RS780: case CHIP_RS880: + case CHIP_BARTS: + case CHIP_TURKS: + case CHIP_CAICOS: case CHIP_CAYMAN: case CHIP_BONAIRE: case CHIP_KABINI: @@ -1257,9 +1262,6 @@ case CHIP_PALM: case CHIP_SUMO: case CHIP_SUMO2: - case CHIP_BARTS: - case CHIP_TURKS: - case CHIP_CAICOS: case CHIP_ARUBA: case CHIP_TAHITI: case CHIP_PITCAIRN: @@ -1464,7 +1466,7 @@ */ for (crtc = 0; (crtc < rdev->num_crtc) && in_vbl; crtc++) { if (rdev->pm.active_crtcs & (1 << crtc)) { - vbl_status = radeon_get_crtc_scanoutpos(rdev->ddev, crtc, &vpos, &hpos, NULL, NULL); + vbl_status = radeon_get_crtc_scanoutpos(rdev->ddev, crtc, 0, &vpos, &hpos, NULL, NULL); if ((vbl_status & DRM_SCANOUTPOS_VALID) && !(vbl_status & DRM_SCANOUTPOS_INVBL)) in_vbl = false; --- linux-3.13.0.orig/drivers/gpu/drm/radeon/radeon_ring.c +++ linux-3.13.0/drivers/gpu/drm/radeon/radeon_ring.c @@ -139,7 +139,7 @@ } /* 64 dwords should be enough for fence too */ - r = radeon_ring_lock(rdev, ring, 64 + RADEON_NUM_RINGS * 8); + r = radeon_ring_lock(rdev, ring, 64 + RADEON_NUM_SYNCS * 8); if (r) { dev_err(rdev->dev, "scheduling IB failed (%d).\n", r); return r; @@ -257,6 +257,7 @@ r = radeon_ib_test(rdev, i, ring); if (r) { ring->ready = false; + rdev->needs_reset = false; if (i == RADEON_RING_TYPE_GFX_INDEX) { /* oh, oh, that's really bad */ --- linux-3.13.0.orig/drivers/gpu/drm/radeon/radeon_semaphore.c +++ linux-3.13.0/drivers/gpu/drm/radeon/radeon_semaphore.c @@ -34,14 +34,15 @@ int radeon_semaphore_create(struct radeon_device *rdev, struct radeon_semaphore **semaphore) { + uint32_t *cpu_addr; int i, r; *semaphore = kmalloc(sizeof(struct radeon_semaphore), GFP_KERNEL); if (*semaphore == NULL) { return -ENOMEM; } - r = radeon_sa_bo_new(rdev, &rdev->ring_tmp_bo, - &(*semaphore)->sa_bo, 8, 8, true); + r = radeon_sa_bo_new(rdev, &rdev->ring_tmp_bo, &(*semaphore)->sa_bo, + 8 * RADEON_NUM_SYNCS, 8, true); if (r) { kfree(*semaphore); *semaphore = NULL; @@ -49,7 +50,10 @@ } (*semaphore)->waiters = 0; (*semaphore)->gpu_addr = radeon_sa_bo_gpu_addr((*semaphore)->sa_bo); - *((uint64_t*)radeon_sa_bo_cpu_addr((*semaphore)->sa_bo)) = 0; + + cpu_addr = radeon_sa_bo_cpu_addr((*semaphore)->sa_bo); + for (i = 0; i < RADEON_NUM_SYNCS; ++i) + cpu_addr[i] = 0; for (i = 0; i < RADEON_NUM_RINGS; ++i) (*semaphore)->sync_to[i] = NULL; @@ -125,6 +129,7 @@ struct radeon_semaphore *semaphore, int ring) { + unsigned count = 0; int i, r; for (i = 0; i < RADEON_NUM_RINGS; ++i) { @@ -140,6 +145,12 @@ return -EINVAL; } + if (++count > RADEON_NUM_SYNCS) { + /* not enough room, wait manually */ + radeon_fence_wait_locked(fence); + continue; + } + /* allocate enough space for sync command */ r = radeon_ring_alloc(rdev, &rdev->ring[i], 16); if (r) { @@ -164,6 +175,8 @@ radeon_ring_commit(rdev, &rdev->ring[i]); radeon_fence_note_sync(fence, ring); + + semaphore->gpu_addr += 8; } return 0; --- linux-3.13.0.orig/drivers/gpu/drm/radeon/radeon_ttm.c +++ linux-3.13.0/drivers/gpu/drm/radeon/radeon_ttm.c @@ -712,6 +712,9 @@ DRM_ERROR("Failed initializing VRAM heap.\n"); return r; } + /* Change the size here instead of the init above so only lpfn is affected */ + radeon_ttm_set_active_vram_size(rdev, rdev->mc.visible_vram_size); + r = radeon_bo_create(rdev, 256 * 1024, PAGE_SIZE, true, RADEON_GEM_DOMAIN_VRAM, NULL, &rdev->stollen_vga_memory); --- linux-3.13.0.orig/drivers/gpu/drm/radeon/radeon_uvd.c +++ linux-3.13.0/drivers/gpu/drm/radeon/radeon_uvd.c @@ -91,6 +91,7 @@ case CHIP_VERDE: case CHIP_PITCAIRN: case CHIP_ARUBA: + case CHIP_OLAND: fw_name = FIRMWARE_TAHITI; break; @@ -170,6 +171,8 @@ radeon_bo_unref(&rdev->uvd.vcpu_bo); + radeon_ring_fini(rdev, &rdev->ring[R600_RING_TYPE_UVD_INDEX]); + release_firmware(rdev->uvd_fw); } --- linux-3.13.0.orig/drivers/gpu/drm/radeon/rv770.c +++ linux-3.13.0/drivers/gpu/drm/radeon/rv770.c @@ -1665,14 +1665,6 @@ rv770_mc_program(rdev); - if (!rdev->me_fw || !rdev->pfp_fw || !rdev->rlc_fw) { - r = r600_init_microcode(rdev); - if (r) { - DRM_ERROR("Failed to load firmware!\n"); - return r; - } - } - if (rdev->flags & RADEON_IS_AGP) { rv770_agp_enable(rdev); } else { @@ -1876,6 +1868,14 @@ if (r) return r; + if (!rdev->me_fw || !rdev->pfp_fw || !rdev->rlc_fw) { + r = r600_init_microcode(rdev); + if (r) { + DRM_ERROR("Failed to load firmware!\n"); + return r; + } + } + rdev->ring[RADEON_RING_TYPE_GFX_INDEX].ring_obj = NULL; r600_ring_init(rdev, &rdev->ring[RADEON_RING_TYPE_GFX_INDEX], 1024 * 1024); @@ -1921,9 +1921,9 @@ radeon_wb_fini(rdev); radeon_ib_pool_fini(rdev); radeon_irq_kms_fini(rdev); - rv770_pcie_gart_fini(rdev); uvd_v1_0_fini(rdev); radeon_uvd_fini(rdev); + rv770_pcie_gart_fini(rdev); r600_vram_scratch_fini(rdev); radeon_gem_fini(rdev); radeon_fence_driver_fini(rdev); --- linux-3.13.0.orig/drivers/gpu/drm/radeon/rv770_dpm.c +++ linux-3.13.0/drivers/gpu/drm/radeon/rv770_dpm.c @@ -2531,6 +2531,12 @@ (rdev->pdev->subsystem_device == 0x1c42)) switch_limit = 200; + /* RV770 */ + /* mclk switching doesn't seem to work reliably on desktop RV770s */ + if ((rdev->family == CHIP_RV770) && + !(rdev->flags & RADEON_IS_MOBILITY)) + switch_limit = 0xffffffff; /* disable mclk switching */ + if (vblank_time < switch_limit) return true; else --- linux-3.13.0.orig/drivers/gpu/drm/radeon/si.c +++ linux-3.13.0/drivers/gpu/drm/radeon/si.c @@ -5566,7 +5566,7 @@ } if (!ASIC_IS_NODCE(rdev)) { - WREG32(DACA_AUTODETECT_INT_CONTROL, 0); + WREG32(DAC_AUTODETECT_INT_CONTROL, 0); tmp = RREG32(DC_HPD1_INT_CONTROL) & DC_HPDx_INT_POLARITY; WREG32(DC_HPD1_INT_CONTROL, tmp); @@ -6222,6 +6222,10 @@ break; } break; + case 124: /* UVD */ + DRM_DEBUG("IH: UVD int: 0x%08x\n", src_data); + radeon_fence_process(rdev, R600_RING_TYPE_UVD_INDEX); + break; case 146: case 147: addr = RREG32(VM_CONTEXT1_PROTECTION_FAULT_ADDR); @@ -6324,15 +6328,6 @@ si_mc_program(rdev); - if (!rdev->me_fw || !rdev->pfp_fw || !rdev->ce_fw || - !rdev->rlc_fw || !rdev->mc_fw) { - r = si_init_microcode(rdev); - if (r) { - DRM_ERROR("Failed to load firmware!\n"); - return r; - } - } - r = si_mc_load_microcode(rdev); if (r) { DRM_ERROR("Failed to load MC firmware!\n"); @@ -6600,6 +6595,15 @@ if (r) return r; + if (!rdev->me_fw || !rdev->pfp_fw || !rdev->ce_fw || + !rdev->rlc_fw || !rdev->mc_fw) { + r = si_init_microcode(rdev); + if (r) { + DRM_ERROR("Failed to load firmware!\n"); + return r; + } + } + ring = &rdev->ring[RADEON_RING_TYPE_GFX_INDEX]; ring->ring_obj = NULL; r600_ring_init(rdev, ring, 1024 * 1024); --- linux-3.13.0.orig/drivers/gpu/drm/radeon/si_dpm.c +++ linux-3.13.0/drivers/gpu/drm/radeon/si_dpm.c @@ -2396,7 +2396,7 @@ if (SISLANDS_DPM2_SQ_RAMP_STI_SIZE > (STI_SIZE_MASK >> STI_SIZE_SHIFT)) enable_sq_ramping = false; - if (NISLANDS_DPM2_SQ_RAMP_LTI_RATIO <= (LTI_RATIO_MASK >> LTI_RATIO_SHIFT)) + if (SISLANDS_DPM2_SQ_RAMP_LTI_RATIO > (LTI_RATIO_MASK >> LTI_RATIO_SHIFT)) enable_sq_ramping = false; for (i = 0; i < state->performance_level_count; i++) { @@ -3591,10 +3591,9 @@ /* Setting this to false forces the performance state to low if the crtcs are disabled. * This can be a problem on PowerXpress systems or if you want to use the card - * for offscreen rendering or compute if there are no crtcs enabled. Set it to - * true for now so that performance scales even if the displays are off. + * for offscreen rendering or compute if there are no crtcs enabled. */ - si_notify_smc_display_change(rdev, true /*rdev->pm.dpm.new_active_crtc_count > 0*/); + si_notify_smc_display_change(rdev, rdev->pm.dpm.new_active_crtc_count > 0); } static void si_enable_spread_spectrum(struct radeon_device *rdev, bool enable) @@ -5414,7 +5413,7 @@ for (i = 0, j = 0; j < si_pi->mc_reg_table.last; j++) { if (si_pi->mc_reg_table.valid_flag & (1 << j)) { - if (i >= SMC_NISLANDS_MC_REGISTER_ARRAY_SIZE) + if (i >= SMC_SISLANDS_MC_REGISTER_ARRAY_SIZE) break; mc_reg_table->address[i].s0 = cpu_to_be16(si_pi->mc_reg_table.mc_reg_address[j].s0); --- linux-3.13.0.orig/drivers/gpu/drm/radeon/sid.h +++ linux-3.13.0/drivers/gpu/drm/radeon/sid.h @@ -815,7 +815,7 @@ # define GRPH_PFLIP_INT_MASK (1 << 0) # define GRPH_PFLIP_INT_TYPE (1 << 8) -#define DACA_AUTODETECT_INT_CONTROL 0x66c8 +#define DAC_AUTODETECT_INT_CONTROL 0x67c8 #define DC_HPD1_INT_STATUS 0x601c #define DC_HPD2_INT_STATUS 0x6028 --- linux-3.13.0.orig/drivers/gpu/drm/radeon/uvd_v2_2.c +++ linux-3.13.0/drivers/gpu/drm/radeon/uvd_v2_2.c @@ -153,6 +153,7 @@ chip_id = 0x01000015; break; case CHIP_PITCAIRN: + case CHIP_OLAND: chip_id = 0x01000016; break; case CHIP_ARUBA: --- linux-3.13.0.orig/drivers/gpu/drm/rcar-du/rcar_du_crtc.c +++ linux-3.13.0/drivers/gpu/drm/rcar-du/rcar_du_crtc.c @@ -371,7 +371,6 @@ goto error; rcrtc->plane->format = format; - rcrtc->plane->pitch = crtc->fb->pitches[0]; rcrtc->plane->src_x = x; rcrtc->plane->src_y = y; --- linux-3.13.0.orig/drivers/gpu/drm/rcar-du/rcar_du_plane.c +++ linux-3.13.0/drivers/gpu/drm/rcar-du/rcar_du_plane.c @@ -104,6 +104,15 @@ { struct rcar_du_group *rgrp = plane->group; unsigned int index = plane->hwindex; + u32 mwr; + + /* Memory pitch (expressed in pixels) */ + if (plane->format->planes == 2) + mwr = plane->pitch; + else + mwr = plane->pitch * 8 / plane->format->bpp; + + rcar_du_plane_write(rgrp, index, PnMWR, mwr); /* The Y position is expressed in raster line units and must be doubled * for 32bpp formats, according to the R8A7790 datasheet. No mention of @@ -133,6 +142,8 @@ { struct drm_gem_cma_object *gem; + plane->pitch = fb->pitches[0]; + gem = drm_fb_cma_get_gem_obj(fb, 0); plane->dma[0] = gem->paddr + fb->offsets[0]; @@ -209,7 +220,6 @@ struct rcar_du_group *rgrp = plane->group; u32 ddcr2 = PnDDCR2_CODE; u32 ddcr4; - u32 mwr; /* Data format * @@ -240,14 +250,6 @@ rcar_du_plane_write(rgrp, index, PnDDCR2, ddcr2); rcar_du_plane_write(rgrp, index, PnDDCR4, ddcr4); - /* Memory pitch (expressed in pixels) */ - if (plane->format->planes == 2) - mwr = plane->pitch; - else - mwr = plane->pitch * 8 / plane->format->bpp; - - rcar_du_plane_write(rgrp, index, PnMWR, mwr); - /* Destination position and size */ rcar_du_plane_write(rgrp, index, PnDSXR, plane->width); rcar_du_plane_write(rgrp, index, PnDSYR, plane->height); @@ -309,7 +311,6 @@ rplane->crtc = crtc; rplane->format = format; - rplane->pitch = fb->pitches[0]; rplane->src_x = src_x >> 16; rplane->src_y = src_y >> 16; --- linux-3.13.0.orig/drivers/gpu/drm/ttm/ttm_bo.c +++ linux-3.13.0/drivers/gpu/drm/ttm/ttm_bo.c @@ -351,9 +351,11 @@ moved: if (bo->evicted) { - ret = bdev->driver->invalidate_caches(bdev, bo->mem.placement); - if (ret) - pr_err("Can not flush read caches\n"); + if (bdev->driver->invalidate_caches) { + ret = bdev->driver->invalidate_caches(bdev, bo->mem.placement); + if (ret) + pr_err("Can not flush read caches\n"); + } bo->evicted = false; } --- linux-3.13.0.orig/drivers/gpu/drm/ttm/ttm_object.c +++ linux-3.13.0/drivers/gpu/drm/ttm/ttm_object.c @@ -68,7 +68,7 @@ struct ttm_object_file { struct ttm_object_device *tdev; - rwlock_t lock; + spinlock_t lock; struct list_head ref_list; struct drm_open_hash ref_hash[TTM_REF_NUM]; struct kref refcount; @@ -118,6 +118,7 @@ */ struct ttm_ref_object { + struct rcu_head rcu_head; struct drm_hash_item hash; struct list_head head; struct kref kref; @@ -210,10 +211,9 @@ * call_rcu() or ttm_base_object_kfree(). */ - if (base->refcount_release) { - ttm_object_file_unref(&base->tfile); + ttm_object_file_unref(&base->tfile); + if (base->refcount_release) base->refcount_release(&base); - } } void ttm_base_object_unref(struct ttm_base_object **p_base) @@ -229,32 +229,46 @@ struct ttm_base_object *ttm_base_object_lookup(struct ttm_object_file *tfile, uint32_t key) { - struct ttm_object_device *tdev = tfile->tdev; - struct ttm_base_object *uninitialized_var(base); + struct ttm_base_object *base = NULL; struct drm_hash_item *hash; + struct drm_open_hash *ht = &tfile->ref_hash[TTM_REF_USAGE]; int ret; rcu_read_lock(); - ret = drm_ht_find_item_rcu(&tdev->object_hash, key, &hash); + ret = drm_ht_find_item_rcu(ht, key, &hash); if (likely(ret == 0)) { - base = drm_hash_entry(hash, struct ttm_base_object, hash); - ret = kref_get_unless_zero(&base->refcount) ? 0 : -EINVAL; + base = drm_hash_entry(hash, struct ttm_ref_object, hash)->obj; + if (!kref_get_unless_zero(&base->refcount)) + base = NULL; } rcu_read_unlock(); - if (unlikely(ret != 0)) - return NULL; + return base; +} +EXPORT_SYMBOL(ttm_base_object_lookup); - if (tfile != base->tfile && !base->shareable) { - pr_err("Attempted access of non-shareable object\n"); - ttm_base_object_unref(&base); - return NULL; +struct ttm_base_object * +ttm_base_object_lookup_for_ref(struct ttm_object_device *tdev, uint32_t key) +{ + struct ttm_base_object *base = NULL; + struct drm_hash_item *hash; + struct drm_open_hash *ht = &tdev->object_hash; + int ret; + + rcu_read_lock(); + ret = drm_ht_find_item_rcu(ht, key, &hash); + + if (likely(ret == 0)) { + base = drm_hash_entry(hash, struct ttm_base_object, hash); + if (!kref_get_unless_zero(&base->refcount)) + base = NULL; } + rcu_read_unlock(); return base; } -EXPORT_SYMBOL(ttm_base_object_lookup); +EXPORT_SYMBOL(ttm_base_object_lookup_for_ref); int ttm_ref_object_add(struct ttm_object_file *tfile, struct ttm_base_object *base, @@ -266,21 +280,25 @@ struct ttm_mem_global *mem_glob = tfile->tdev->mem_glob; int ret = -EINVAL; + if (base->tfile != tfile && !base->shareable) + return -EPERM; + if (existed != NULL) *existed = true; while (ret == -EINVAL) { - read_lock(&tfile->lock); - ret = drm_ht_find_item(ht, base->hash.key, &hash); + rcu_read_lock(); + ret = drm_ht_find_item_rcu(ht, base->hash.key, &hash); if (ret == 0) { ref = drm_hash_entry(hash, struct ttm_ref_object, hash); - kref_get(&ref->kref); - read_unlock(&tfile->lock); - break; + if (kref_get_unless_zero(&ref->kref)) { + rcu_read_unlock(); + break; + } } - read_unlock(&tfile->lock); + rcu_read_unlock(); ret = ttm_mem_global_alloc(mem_glob, sizeof(*ref), false, false); if (unlikely(ret != 0)) @@ -297,19 +315,19 @@ ref->ref_type = ref_type; kref_init(&ref->kref); - write_lock(&tfile->lock); - ret = drm_ht_insert_item(ht, &ref->hash); + spin_lock(&tfile->lock); + ret = drm_ht_insert_item_rcu(ht, &ref->hash); if (likely(ret == 0)) { list_add_tail(&ref->head, &tfile->ref_list); kref_get(&base->refcount); - write_unlock(&tfile->lock); + spin_unlock(&tfile->lock); if (existed != NULL) *existed = false; break; } - write_unlock(&tfile->lock); + spin_unlock(&tfile->lock); BUG_ON(ret != -EINVAL); ttm_mem_global_free(mem_glob, sizeof(*ref)); @@ -330,17 +348,17 @@ struct ttm_mem_global *mem_glob = tfile->tdev->mem_glob; ht = &tfile->ref_hash[ref->ref_type]; - (void)drm_ht_remove_item(ht, &ref->hash); + (void)drm_ht_remove_item_rcu(ht, &ref->hash); list_del(&ref->head); - write_unlock(&tfile->lock); + spin_unlock(&tfile->lock); if (ref->ref_type != TTM_REF_USAGE && base->ref_obj_release) base->ref_obj_release(base, ref->ref_type); ttm_base_object_unref(&ref->obj); ttm_mem_global_free(mem_glob, sizeof(*ref)); - kfree(ref); - write_lock(&tfile->lock); + kfree_rcu(ref, rcu_head); + spin_lock(&tfile->lock); } int ttm_ref_object_base_unref(struct ttm_object_file *tfile, @@ -351,15 +369,15 @@ struct drm_hash_item *hash; int ret; - write_lock(&tfile->lock); + spin_lock(&tfile->lock); ret = drm_ht_find_item(ht, key, &hash); if (unlikely(ret != 0)) { - write_unlock(&tfile->lock); + spin_unlock(&tfile->lock); return -EINVAL; } ref = drm_hash_entry(hash, struct ttm_ref_object, hash); kref_put(&ref->kref, ttm_ref_object_release); - write_unlock(&tfile->lock); + spin_unlock(&tfile->lock); return 0; } EXPORT_SYMBOL(ttm_ref_object_base_unref); @@ -372,7 +390,7 @@ struct ttm_object_file *tfile = *p_tfile; *p_tfile = NULL; - write_lock(&tfile->lock); + spin_lock(&tfile->lock); /* * Since we release the lock within the loop, we have to @@ -388,7 +406,7 @@ for (i = 0; i < TTM_REF_NUM; ++i) drm_ht_remove(&tfile->ref_hash[i]); - write_unlock(&tfile->lock); + spin_unlock(&tfile->lock); ttm_object_file_unref(&tfile); } EXPORT_SYMBOL(ttm_object_file_release); @@ -404,7 +422,7 @@ if (unlikely(tfile == NULL)) return NULL; - rwlock_init(&tfile->lock); + spin_lock_init(&tfile->lock); tfile->tdev = tdev; kref_init(&tfile->refcount); INIT_LIST_HEAD(&tfile->ref_list); --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/Makefile +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/Makefile @@ -6,6 +6,6 @@ vmwgfx_fifo.o vmwgfx_irq.o vmwgfx_ldu.o vmwgfx_ttm_glue.o \ vmwgfx_overlay.o vmwgfx_marker.o vmwgfx_gmrid_manager.o \ vmwgfx_fence.o vmwgfx_dmabuf.o vmwgfx_scrn.o vmwgfx_context.o \ - vmwgfx_surface.o vmwgfx_prime.o + vmwgfx_surface.o vmwgfx_prime.o vmwgfx_mob.o vmwgfx_shader.o obj-$(CONFIG_DRM_VMWGFX) := vmwgfx.o --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/svga3d_reg.h +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/svga3d_reg.h @@ -34,6 +34,8 @@ #include "svga_reg.h" +typedef uint32 PPN; +typedef __le64 PPN64; /* * 3D Hardware Version @@ -71,6 +73,9 @@ #define SVGA3D_MAX_CONTEXT_IDS 256 #define SVGA3D_MAX_SURFACE_IDS (32 * 1024) +#define SVGA3D_NUM_TEXTURE_UNITS 32 +#define SVGA3D_NUM_LIGHTS 8 + /* * Surface formats. * @@ -81,6 +86,7 @@ */ typedef enum SVGA3dSurfaceFormat { + SVGA3D_FORMAT_MIN = 0, SVGA3D_FORMAT_INVALID = 0, SVGA3D_X8R8G8B8 = 1, @@ -134,12 +140,6 @@ SVGA3D_RG_S10E5 = 35, SVGA3D_RG_S23E8 = 36, - /* - * Any surface can be used as a buffer object, but SVGA3D_BUFFER is - * the most efficient format to use when creating new surfaces - * expressly for index or vertex data. - */ - SVGA3D_BUFFER = 37, SVGA3D_Z_D24X8 = 38, @@ -159,15 +159,109 @@ /* Video format with alpha */ SVGA3D_AYUV = 45, + SVGA3D_R32G32B32A32_TYPELESS = 46, + SVGA3D_R32G32B32A32_FLOAT = 25, + SVGA3D_R32G32B32A32_UINT = 47, + SVGA3D_R32G32B32A32_SINT = 48, + SVGA3D_R32G32B32_TYPELESS = 49, + SVGA3D_R32G32B32_FLOAT = 50, + SVGA3D_R32G32B32_UINT = 51, + SVGA3D_R32G32B32_SINT = 52, + SVGA3D_R16G16B16A16_TYPELESS = 53, + SVGA3D_R16G16B16A16_FLOAT = 24, + SVGA3D_R16G16B16A16_UNORM = 41, + SVGA3D_R16G16B16A16_UINT = 54, + SVGA3D_R16G16B16A16_SNORM = 55, + SVGA3D_R16G16B16A16_SINT = 56, + SVGA3D_R32G32_TYPELESS = 57, + SVGA3D_R32G32_FLOAT = 36, + SVGA3D_R32G32_UINT = 58, + SVGA3D_R32G32_SINT = 59, + SVGA3D_R32G8X24_TYPELESS = 60, + SVGA3D_D32_FLOAT_S8X24_UINT = 61, + SVGA3D_R32_FLOAT_X8X24_TYPELESS = 62, + SVGA3D_X32_TYPELESS_G8X24_UINT = 63, + SVGA3D_R10G10B10A2_TYPELESS = 64, + SVGA3D_R10G10B10A2_UNORM = 26, + SVGA3D_R10G10B10A2_UINT = 65, + SVGA3D_R11G11B10_FLOAT = 66, + SVGA3D_R8G8B8A8_TYPELESS = 67, + SVGA3D_R8G8B8A8_UNORM = 68, + SVGA3D_R8G8B8A8_UNORM_SRGB = 69, + SVGA3D_R8G8B8A8_UINT = 70, + SVGA3D_R8G8B8A8_SNORM = 28, + SVGA3D_R8G8B8A8_SINT = 71, + SVGA3D_R16G16_TYPELESS = 72, + SVGA3D_R16G16_FLOAT = 35, + SVGA3D_R16G16_UNORM = 40, + SVGA3D_R16G16_UINT = 73, + SVGA3D_R16G16_SNORM = 39, + SVGA3D_R16G16_SINT = 74, + SVGA3D_R32_TYPELESS = 75, + SVGA3D_D32_FLOAT = 76, + SVGA3D_R32_FLOAT = 34, + SVGA3D_R32_UINT = 77, + SVGA3D_R32_SINT = 78, + SVGA3D_R24G8_TYPELESS = 79, + SVGA3D_D24_UNORM_S8_UINT = 80, + SVGA3D_R24_UNORM_X8_TYPELESS = 81, + SVGA3D_X24_TYPELESS_G8_UINT = 82, + SVGA3D_R8G8_TYPELESS = 83, + SVGA3D_R8G8_UNORM = 84, + SVGA3D_R8G8_UINT = 85, + SVGA3D_R8G8_SNORM = 27, + SVGA3D_R8G8_SINT = 86, + SVGA3D_R16_TYPELESS = 87, + SVGA3D_R16_FLOAT = 33, + SVGA3D_D16_UNORM = 8, + SVGA3D_R16_UNORM = 88, + SVGA3D_R16_UINT = 89, + SVGA3D_R16_SNORM = 90, + SVGA3D_R16_SINT = 91, + SVGA3D_R8_TYPELESS = 92, + SVGA3D_R8_UNORM = 93, + SVGA3D_R8_UINT = 94, + SVGA3D_R8_SNORM = 95, + SVGA3D_R8_SINT = 96, + SVGA3D_A8_UNORM = 32, + SVGA3D_R1_UNORM = 97, + SVGA3D_R9G9B9E5_SHAREDEXP = 98, + SVGA3D_R8G8_B8G8_UNORM = 99, + SVGA3D_G8R8_G8B8_UNORM = 100, + SVGA3D_BC1_TYPELESS = 101, + SVGA3D_BC1_UNORM = 15, + SVGA3D_BC1_UNORM_SRGB = 102, + SVGA3D_BC2_TYPELESS = 103, + SVGA3D_BC2_UNORM = 17, + SVGA3D_BC2_UNORM_SRGB = 104, + SVGA3D_BC3_TYPELESS = 105, + SVGA3D_BC3_UNORM = 19, + SVGA3D_BC3_UNORM_SRGB = 106, + SVGA3D_BC4_TYPELESS = 107, SVGA3D_BC4_UNORM = 108, + SVGA3D_BC4_SNORM = 109, + SVGA3D_BC5_TYPELESS = 110, SVGA3D_BC5_UNORM = 111, + SVGA3D_BC5_SNORM = 112, + SVGA3D_B5G6R5_UNORM = 3, + SVGA3D_B5G5R5A1_UNORM = 5, + SVGA3D_B8G8R8A8_UNORM = 2, + SVGA3D_B8G8R8X8_UNORM = 1, + SVGA3D_R10G10B10_XR_BIAS_A2_UNORM = 113, + SVGA3D_B8G8R8A8_TYPELESS = 114, + SVGA3D_B8G8R8A8_UNORM_SRGB = 115, + SVGA3D_B8G8R8X8_TYPELESS = 116, + SVGA3D_B8G8R8X8_UNORM_SRGB = 117, /* Advanced D3D9 depth formats. */ SVGA3D_Z_DF16 = 118, SVGA3D_Z_DF24 = 119, SVGA3D_Z_D24S8_INT = 120, - SVGA3D_FORMAT_MAX + /* Planar video formats. */ + SVGA3D_YV12 = 121, + + SVGA3D_FORMAT_MAX = 122, } SVGA3dSurfaceFormat; typedef uint32 SVGA3dColor; /* a, r, g, b */ @@ -957,15 +1051,21 @@ } SVGA3dCubeFace; typedef enum { + SVGA3D_SHADERTYPE_INVALID = 0, + SVGA3D_SHADERTYPE_MIN = 1, SVGA3D_SHADERTYPE_VS = 1, SVGA3D_SHADERTYPE_PS = 2, - SVGA3D_SHADERTYPE_MAX + SVGA3D_SHADERTYPE_MAX = 3, + SVGA3D_SHADERTYPE_GS = 3, } SVGA3dShaderType; +#define SVGA3D_NUM_SHADERTYPE (SVGA3D_SHADERTYPE_MAX - SVGA3D_SHADERTYPE_MIN) + typedef enum { SVGA3D_CONST_TYPE_FLOAT = 0, SVGA3D_CONST_TYPE_INT = 1, SVGA3D_CONST_TYPE_BOOL = 2, + SVGA3D_CONST_TYPE_MAX } SVGA3dShaderConstType; #define SVGA3D_MAX_SURFACE_FACES 6 @@ -1056,9 +1156,84 @@ #define SVGA_3D_CMD_GENERATE_MIPMAPS SVGA_3D_CMD_BASE + 31 #define SVGA_3D_CMD_ACTIVATE_SURFACE SVGA_3D_CMD_BASE + 40 #define SVGA_3D_CMD_DEACTIVATE_SURFACE SVGA_3D_CMD_BASE + 41 -#define SVGA_3D_CMD_MAX SVGA_3D_CMD_BASE + 42 +#define SVGA_3D_CMD_SCREEN_DMA 1082 +#define SVGA_3D_CMD_SET_UNITY_SURFACE_COOKIE 1083 +#define SVGA_3D_CMD_OPEN_CONTEXT_SURFACE 1084 + +#define SVGA_3D_CMD_LOGICOPS_BITBLT 1085 +#define SVGA_3D_CMD_LOGICOPS_TRANSBLT 1086 +#define SVGA_3D_CMD_LOGICOPS_STRETCHBLT 1087 +#define SVGA_3D_CMD_LOGICOPS_COLORFILL 1088 +#define SVGA_3D_CMD_LOGICOPS_ALPHABLEND 1089 +#define SVGA_3D_CMD_LOGICOPS_CLEARTYPEBLEND 1090 + +#define SVGA_3D_CMD_SET_OTABLE_BASE 1091 +#define SVGA_3D_CMD_READBACK_OTABLE 1092 + +#define SVGA_3D_CMD_DEFINE_GB_MOB 1093 +#define SVGA_3D_CMD_DESTROY_GB_MOB 1094 +#define SVGA_3D_CMD_REDEFINE_GB_MOB 1095 +#define SVGA_3D_CMD_UPDATE_GB_MOB_MAPPING 1096 + +#define SVGA_3D_CMD_DEFINE_GB_SURFACE 1097 +#define SVGA_3D_CMD_DESTROY_GB_SURFACE 1098 +#define SVGA_3D_CMD_BIND_GB_SURFACE 1099 +#define SVGA_3D_CMD_COND_BIND_GB_SURFACE 1100 +#define SVGA_3D_CMD_UPDATE_GB_IMAGE 1101 +#define SVGA_3D_CMD_UPDATE_GB_SURFACE 1102 +#define SVGA_3D_CMD_READBACK_GB_IMAGE 1103 +#define SVGA_3D_CMD_READBACK_GB_SURFACE 1104 +#define SVGA_3D_CMD_INVALIDATE_GB_IMAGE 1105 +#define SVGA_3D_CMD_INVALIDATE_GB_SURFACE 1106 + +#define SVGA_3D_CMD_DEFINE_GB_CONTEXT 1107 +#define SVGA_3D_CMD_DESTROY_GB_CONTEXT 1108 +#define SVGA_3D_CMD_BIND_GB_CONTEXT 1109 +#define SVGA_3D_CMD_READBACK_GB_CONTEXT 1110 +#define SVGA_3D_CMD_INVALIDATE_GB_CONTEXT 1111 + +#define SVGA_3D_CMD_DEFINE_GB_SHADER 1112 +#define SVGA_3D_CMD_DESTROY_GB_SHADER 1113 +#define SVGA_3D_CMD_BIND_GB_SHADER 1114 + +#define SVGA_3D_CMD_SET_OTABLE_BASE64 1115 + +#define SVGA_3D_CMD_BEGIN_GB_QUERY 1116 +#define SVGA_3D_CMD_END_GB_QUERY 1117 +#define SVGA_3D_CMD_WAIT_FOR_GB_QUERY 1118 + +#define SVGA_3D_CMD_NOP 1119 + +#define SVGA_3D_CMD_ENABLE_GART 1120 +#define SVGA_3D_CMD_DISABLE_GART 1121 +#define SVGA_3D_CMD_MAP_MOB_INTO_GART 1122 +#define SVGA_3D_CMD_UNMAP_GART_RANGE 1123 + +#define SVGA_3D_CMD_DEFINE_GB_SCREENTARGET 1124 +#define SVGA_3D_CMD_DESTROY_GB_SCREENTARGET 1125 +#define SVGA_3D_CMD_BIND_GB_SCREENTARGET 1126 +#define SVGA_3D_CMD_UPDATE_GB_SCREENTARGET 1127 + +#define SVGA_3D_CMD_READBACK_GB_IMAGE_PARTIAL 1128 +#define SVGA_3D_CMD_INVALIDATE_GB_IMAGE_PARTIAL 1129 + +#define SVGA_3D_CMD_SET_GB_SHADERCONSTS_INLINE 1130 +#define SVGA_3D_CMD_GB_SCREEN_DMA 1131 +#define SVGA_3D_CMD_BIND_GB_SURFACE_WITH_PITCH 1132 +#define SVGA_3D_CMD_GB_MOB_FENCE 1133 +#define SVGA_3D_CMD_DEFINE_GB_SURFACE_V2 1134 +#define SVGA_3D_CMD_DEFINE_GB_MOB64 1135 +#define SVGA_3D_CMD_REDEFINE_GB_MOB64 1136 +#define SVGA_3D_CMD_NOP_ERROR 1137 + +#define SVGA_3D_CMD_RESERVED1 1138 +#define SVGA_3D_CMD_RESERVED2 1139 +#define SVGA_3D_CMD_RESERVED3 1140 +#define SVGA_3D_CMD_RESERVED4 1141 +#define SVGA_3D_CMD_RESERVED5 1142 -#define SVGA_3D_CMD_FUTURE_MAX 2000 +#define SVGA_3D_CMD_MAX 1142 +#define SVGA_3D_CMD_FUTURE_MAX 3000 /* * Common substructures used in multiple FIFO commands: @@ -1750,6 +1925,507 @@ /* + * Guest-backed surface definitions. + */ + +typedef uint32 SVGAMobId; + +typedef enum SVGAMobFormat { + SVGA3D_MOBFMT_INVALID = SVGA3D_INVALID_ID, + SVGA3D_MOBFMT_PTDEPTH_0 = 0, + SVGA3D_MOBFMT_PTDEPTH_1 = 1, + SVGA3D_MOBFMT_PTDEPTH_2 = 2, + SVGA3D_MOBFMT_RANGE = 3, + SVGA3D_MOBFMT_PTDEPTH64_0 = 4, + SVGA3D_MOBFMT_PTDEPTH64_1 = 5, + SVGA3D_MOBFMT_PTDEPTH64_2 = 6, + SVGA3D_MOBFMT_MAX, +} SVGAMobFormat; + +/* + * Sizes of opaque types. + */ + +#define SVGA3D_OTABLE_MOB_ENTRY_SIZE 16 +#define SVGA3D_OTABLE_CONTEXT_ENTRY_SIZE 8 +#define SVGA3D_OTABLE_SURFACE_ENTRY_SIZE 64 +#define SVGA3D_OTABLE_SHADER_ENTRY_SIZE 16 +#define SVGA3D_OTABLE_SCREEN_TARGET_ENTRY_SIZE 64 +#define SVGA3D_CONTEXT_DATA_SIZE 16384 + +/* + * SVGA3dCmdSetOTableBase -- + * + * This command allows the guest to specify the base PPN of the + * specified object table. + */ + +typedef enum { + SVGA_OTABLE_MOB = 0, + SVGA_OTABLE_MIN = 0, + SVGA_OTABLE_SURFACE = 1, + SVGA_OTABLE_CONTEXT = 2, + SVGA_OTABLE_SHADER = 3, + SVGA_OTABLE_SCREEN_TARGET = 4, + SVGA_OTABLE_DX9_MAX = 5, + SVGA_OTABLE_MAX = 8 +} SVGAOTableType; + +typedef +struct { + SVGAOTableType type; + PPN baseAddress; + uint32 sizeInBytes; + uint32 validSizeInBytes; + SVGAMobFormat ptDepth; +} __packed +SVGA3dCmdSetOTableBase; /* SVGA_3D_CMD_SET_OTABLE_BASE */ + +typedef +struct { + SVGAOTableType type; + PPN64 baseAddress; + uint32 sizeInBytes; + uint32 validSizeInBytes; + SVGAMobFormat ptDepth; +} __packed +SVGA3dCmdSetOTableBase64; /* SVGA_3D_CMD_SET_OTABLE_BASE64 */ + +typedef +struct { + SVGAOTableType type; +} __packed +SVGA3dCmdReadbackOTable; /* SVGA_3D_CMD_READBACK_OTABLE */ + +/* + * Define a memory object (Mob) in the OTable. + */ + +typedef +struct SVGA3dCmdDefineGBMob { + SVGAMobId mobid; + SVGAMobFormat ptDepth; + PPN base; + uint32 sizeInBytes; +} __packed +SVGA3dCmdDefineGBMob; /* SVGA_3D_CMD_DEFINE_GB_MOB */ + + +/* + * Destroys an object in the OTable. + */ + +typedef +struct SVGA3dCmdDestroyGBMob { + SVGAMobId mobid; +} __packed +SVGA3dCmdDestroyGBMob; /* SVGA_3D_CMD_DESTROY_GB_MOB */ + +/* + * Redefine an object in the OTable. + */ + +typedef +struct SVGA3dCmdRedefineGBMob { + SVGAMobId mobid; + SVGAMobFormat ptDepth; + PPN base; + uint32 sizeInBytes; +} __packed +SVGA3dCmdRedefineGBMob; /* SVGA_3D_CMD_REDEFINE_GB_MOB */ + +/* + * Define a memory object (Mob) in the OTable with a PPN64 base. + */ + +typedef +struct SVGA3dCmdDefineGBMob64 { + SVGAMobId mobid; + SVGAMobFormat ptDepth; + PPN64 base; + uint32 sizeInBytes; +} __packed +SVGA3dCmdDefineGBMob64; /* SVGA_3D_CMD_DEFINE_GB_MOB64 */ + +/* + * Redefine an object in the OTable with PPN64 base. + */ + +typedef +struct SVGA3dCmdRedefineGBMob64 { + SVGAMobId mobid; + SVGAMobFormat ptDepth; + PPN64 base; + uint32 sizeInBytes; +} __packed +SVGA3dCmdRedefineGBMob64; /* SVGA_3D_CMD_REDEFINE_GB_MOB64 */ + +/* + * Notification that the page tables have been modified. + */ + +typedef +struct SVGA3dCmdUpdateGBMobMapping { + SVGAMobId mobid; +} __packed +SVGA3dCmdUpdateGBMobMapping; /* SVGA_3D_CMD_UPDATE_GB_MOB_MAPPING */ + +/* + * Define a guest-backed surface. + */ + +typedef +struct SVGA3dCmdDefineGBSurface { + uint32 sid; + SVGA3dSurfaceFlags surfaceFlags; + SVGA3dSurfaceFormat format; + uint32 numMipLevels; + uint32 multisampleCount; + SVGA3dTextureFilter autogenFilter; + SVGA3dSize size; +} __packed +SVGA3dCmdDefineGBSurface; /* SVGA_3D_CMD_DEFINE_GB_SURFACE */ + +/* + * Destroy a guest-backed surface. + */ + +typedef +struct SVGA3dCmdDestroyGBSurface { + uint32 sid; +} __packed +SVGA3dCmdDestroyGBSurface; /* SVGA_3D_CMD_DESTROY_GB_SURFACE */ + +/* + * Bind a guest-backed surface to an object. + */ + +typedef +struct SVGA3dCmdBindGBSurface { + uint32 sid; + SVGAMobId mobid; +} __packed +SVGA3dCmdBindGBSurface; /* SVGA_3D_CMD_BIND_GB_SURFACE */ + +/* + * Conditionally bind a mob to a guest backed surface if testMobid + * matches the currently bound mob. Optionally issue a readback on + * the surface while it is still bound to the old mobid if the mobid + * is changed by this command. + */ + +#define SVGA3D_COND_BIND_GB_SURFACE_FLAG_READBACK (1 << 0) + +typedef +struct{ + uint32 sid; + SVGAMobId testMobid; + SVGAMobId mobid; + uint32 flags; +} __packed +SVGA3dCmdCondBindGBSurface; /* SVGA_3D_CMD_COND_BIND_GB_SURFACE */ + +/* + * Update an image in a guest-backed surface. + * (Inform the device that the guest-contents have been updated.) + */ + +typedef +struct SVGA3dCmdUpdateGBImage { + SVGA3dSurfaceImageId image; + SVGA3dBox box; +} __packed +SVGA3dCmdUpdateGBImage; /* SVGA_3D_CMD_UPDATE_GB_IMAGE */ + +/* + * Update an entire guest-backed surface. + * (Inform the device that the guest-contents have been updated.) + */ + +typedef +struct SVGA3dCmdUpdateGBSurface { + uint32 sid; +} __packed +SVGA3dCmdUpdateGBSurface; /* SVGA_3D_CMD_UPDATE_GB_SURFACE */ + +/* + * Readback an image in a guest-backed surface. + * (Request the device to flush the dirty contents into the guest.) + */ + +typedef +struct SVGA3dCmdReadbackGBImage { + SVGA3dSurfaceImageId image; +} __packed +SVGA3dCmdReadbackGBImage; /* SVGA_3D_CMD_READBACK_GB_IMAGE*/ + +/* + * Readback an entire guest-backed surface. + * (Request the device to flush the dirty contents into the guest.) + */ + +typedef +struct SVGA3dCmdReadbackGBSurface { + uint32 sid; +} __packed +SVGA3dCmdReadbackGBSurface; /* SVGA_3D_CMD_READBACK_GB_SURFACE */ + +/* + * Readback a sub rect of an image in a guest-backed surface. After + * issuing this command the driver is required to issue an update call + * of the same region before issuing any other commands that reference + * this surface or rendering is not guaranteed. + */ + +typedef +struct SVGA3dCmdReadbackGBImagePartial { + SVGA3dSurfaceImageId image; + SVGA3dBox box; + uint32 invertBox; +} __packed +SVGA3dCmdReadbackGBImagePartial; /* SVGA_3D_CMD_READBACK_GB_IMAGE_PARTIAL */ + +/* + * Invalidate an image in a guest-backed surface. + * (Notify the device that the contents can be lost.) + */ + +typedef +struct SVGA3dCmdInvalidateGBImage { + SVGA3dSurfaceImageId image; +} __packed +SVGA3dCmdInvalidateGBImage; /* SVGA_3D_CMD_INVALIDATE_GB_IMAGE */ + +/* + * Invalidate an entire guest-backed surface. + * (Notify the device that the contents if all images can be lost.) + */ + +typedef +struct SVGA3dCmdInvalidateGBSurface { + uint32 sid; +} __packed +SVGA3dCmdInvalidateGBSurface; /* SVGA_3D_CMD_INVALIDATE_GB_SURFACE */ + +/* + * Invalidate a sub rect of an image in a guest-backed surface. After + * issuing this command the driver is required to issue an update call + * of the same region before issuing any other commands that reference + * this surface or rendering is not guaranteed. + */ + +typedef +struct SVGA3dCmdInvalidateGBImagePartial { + SVGA3dSurfaceImageId image; + SVGA3dBox box; + uint32 invertBox; +} __packed +SVGA3dCmdInvalidateGBImagePartial; /* SVGA_3D_CMD_INVALIDATE_GB_IMAGE_PARTIAL */ + +/* + * Define a guest-backed context. + */ + +typedef +struct SVGA3dCmdDefineGBContext { + uint32 cid; +} __packed +SVGA3dCmdDefineGBContext; /* SVGA_3D_CMD_DEFINE_GB_CONTEXT */ + +/* + * Destroy a guest-backed context. + */ + +typedef +struct SVGA3dCmdDestroyGBContext { + uint32 cid; +} __packed +SVGA3dCmdDestroyGBContext; /* SVGA_3D_CMD_DESTROY_GB_CONTEXT */ + +/* + * Bind a guest-backed context. + * + * validContents should be set to 0 for new contexts, + * and 1 if this is an old context which is getting paged + * back on to the device. + * + * For new contexts, it is recommended that the driver + * issue commands to initialize all interesting state + * prior to rendering. + */ + +typedef +struct SVGA3dCmdBindGBContext { + uint32 cid; + SVGAMobId mobid; + uint32 validContents; +} __packed +SVGA3dCmdBindGBContext; /* SVGA_3D_CMD_BIND_GB_CONTEXT */ + +/* + * Readback a guest-backed context. + * (Request that the device flush the contents back into guest memory.) + */ + +typedef +struct SVGA3dCmdReadbackGBContext { + uint32 cid; +} __packed +SVGA3dCmdReadbackGBContext; /* SVGA_3D_CMD_READBACK_GB_CONTEXT */ + +/* + * Invalidate a guest-backed context. + */ +typedef +struct SVGA3dCmdInvalidateGBContext { + uint32 cid; +} __packed +SVGA3dCmdInvalidateGBContext; /* SVGA_3D_CMD_INVALIDATE_GB_CONTEXT */ + +/* + * Define a guest-backed shader. + */ + +typedef +struct SVGA3dCmdDefineGBShader { + uint32 shid; + SVGA3dShaderType type; + uint32 sizeInBytes; +} __packed +SVGA3dCmdDefineGBShader; /* SVGA_3D_CMD_DEFINE_GB_SHADER */ + +/* + * Bind a guest-backed shader. + */ + +typedef struct SVGA3dCmdBindGBShader { + uint32 shid; + SVGAMobId mobid; + uint32 offsetInBytes; +} __packed +SVGA3dCmdBindGBShader; /* SVGA_3D_CMD_BIND_GB_SHADER */ + +/* + * Destroy a guest-backed shader. + */ + +typedef struct SVGA3dCmdDestroyGBShader { + uint32 shid; +} __packed +SVGA3dCmdDestroyGBShader; /* SVGA_3D_CMD_DESTROY_GB_SHADER */ + +typedef +struct { + uint32 cid; + uint32 regStart; + SVGA3dShaderType shaderType; + SVGA3dShaderConstType constType; + + /* + * Followed by a variable number of shader constants. + * + * Note that FLOAT and INT constants are 4-dwords in length, while + * BOOL constants are 1-dword in length. + */ +} __packed +SVGA3dCmdSetGBShaderConstInline; +/* SVGA_3D_CMD_SET_GB_SHADERCONSTS_INLINE */ + +typedef +struct { + uint32 cid; + SVGA3dQueryType type; +} __packed +SVGA3dCmdBeginGBQuery; /* SVGA_3D_CMD_BEGIN_GB_QUERY */ + +typedef +struct { + uint32 cid; + SVGA3dQueryType type; + SVGAMobId mobid; + uint32 offset; +} __packed +SVGA3dCmdEndGBQuery; /* SVGA_3D_CMD_END_GB_QUERY */ + + +/* + * SVGA_3D_CMD_WAIT_FOR_GB_QUERY -- + * + * The semantics of this command are identical to the + * SVGA_3D_CMD_WAIT_FOR_QUERY except that the results are written + * to a Mob instead of a GMR. + */ + +typedef +struct { + uint32 cid; + SVGA3dQueryType type; + SVGAMobId mobid; + uint32 offset; +} __packed +SVGA3dCmdWaitForGBQuery; /* SVGA_3D_CMD_WAIT_FOR_GB_QUERY */ + +typedef +struct { + SVGAMobId mobid; + uint32 fbOffset; + uint32 initalized; +} __packed +SVGA3dCmdEnableGart; /* SVGA_3D_CMD_ENABLE_GART */ + +typedef +struct { + SVGAMobId mobid; + uint32 gartOffset; +} __packed +SVGA3dCmdMapMobIntoGart; /* SVGA_3D_CMD_MAP_MOB_INTO_GART */ + + +typedef +struct { + uint32 gartOffset; + uint32 numPages; +} __packed +SVGA3dCmdUnmapGartRange; /* SVGA_3D_CMD_UNMAP_GART_RANGE */ + + +/* + * Screen Targets + */ +#define SVGA_STFLAG_PRIMARY (1 << 0) + +typedef +struct { + uint32 stid; + uint32 width; + uint32 height; + int32 xRoot; + int32 yRoot; + uint32 flags; +} __packed +SVGA3dCmdDefineGBScreenTarget; /* SVGA_3D_CMD_DEFINE_GB_SCREENTARGET */ + +typedef +struct { + uint32 stid; +} __packed +SVGA3dCmdDestroyGBScreenTarget; /* SVGA_3D_CMD_DESTROY_GB_SCREENTARGET */ + +typedef +struct { + uint32 stid; + SVGA3dSurfaceImageId image; +} __packed +SVGA3dCmdBindGBScreenTarget; /* SVGA_3D_CMD_BIND_GB_SCREENTARGET */ + +typedef +struct { + uint32 stid; + SVGA3dBox box; +} __packed +SVGA3dCmdUpdateGBScreenTarget; /* SVGA_3D_CMD_UPDATE_GB_SCREENTARGET */ + +/* * Capability query index. * * Notes: @@ -1879,10 +2555,41 @@ SVGA3D_DEVCAP_SURFACEFMT_BC5_UNORM = 83, /* - * Don't add new caps into the previous section; the values in this - * enumeration must not change. You can put new values right before - * SVGA3D_DEVCAP_MAX. + * Deprecated. + */ + SVGA3D_DEVCAP_VGPU10 = 84, + + /* + * This contains several SVGA_3D_CAPS_VIDEO_DECODE elements + * ored together, one for every type of video decoding supported. */ + SVGA3D_DEVCAP_VIDEO_DECODE = 85, + + /* + * This contains several SVGA_3D_CAPS_VIDEO_PROCESS elements + * ored together, one for every type of video processing supported. + */ + SVGA3D_DEVCAP_VIDEO_PROCESS = 86, + + SVGA3D_DEVCAP_LINE_AA = 87, /* boolean */ + SVGA3D_DEVCAP_LINE_STIPPLE = 88, /* boolean */ + SVGA3D_DEVCAP_MAX_LINE_WIDTH = 89, /* float */ + SVGA3D_DEVCAP_MAX_AA_LINE_WIDTH = 90, /* float */ + + SVGA3D_DEVCAP_SURFACEFMT_YV12 = 91, + + /* + * Does the host support the SVGA logic ops commands? + */ + SVGA3D_DEVCAP_LOGICOPS = 92, + + /* + * What support does the host have for screen targets? + * + * See the SVGA3D_SCREENTARGET_CAP bits below. + */ + SVGA3D_DEVCAP_SCREENTARGETS = 93, + SVGA3D_DEVCAP_MAX /* This must be the last index. */ } SVGA3dDevCapIndex; @@ -1893,4 +2600,28 @@ float f; } SVGA3dDevCapResult; +typedef enum { + SVGA3DCAPS_RECORD_UNKNOWN = 0, + SVGA3DCAPS_RECORD_DEVCAPS_MIN = 0x100, + SVGA3DCAPS_RECORD_DEVCAPS = 0x100, + SVGA3DCAPS_RECORD_DEVCAPS_MAX = 0x1ff, +} SVGA3dCapsRecordType; + +typedef +struct SVGA3dCapsRecordHeader { + uint32 length; + SVGA3dCapsRecordType type; +} +SVGA3dCapsRecordHeader; + +typedef +struct SVGA3dCapsRecord { + SVGA3dCapsRecordHeader header; + uint32 data[1]; +} +SVGA3dCapsRecord; + + +typedef uint32 SVGA3dCapPair[2]; + #endif /* _SVGA3D_REG_H_ */ --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/svga3d_surfacedefs.h +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/svga3d_surfacedefs.h @@ -38,11 +38,15 @@ #define DIV_ROUND_UP(x, y) (((x) + (y) - 1) / (y)) #define max_t(type, x, y) ((x) > (y) ? (x) : (y)) +#define min_t(type, x, y) ((x) < (y) ? (x) : (y)) #define surf_size_struct SVGA3dSize #define u32 uint32 +#define u64 uint64_t #endif /* __KERNEL__ */ +#define U32_MAX ((u32)~0U) + #include "svga3d_reg.h" /* @@ -704,8 +708,8 @@ static inline u32 clamped_umul32(u32 a, u32 b) { - uint64_t tmp = (uint64_t) a*b; - return (tmp > (uint64_t) ((u32) -1)) ? (u32) -1 : tmp; + u64 tmp = (u64) a*b; + return (tmp > (u64) U32_MAX) ? U32_MAX : tmp; } static inline const struct svga3d_surface_desc * @@ -834,7 +838,7 @@ bool cubemap) { const struct svga3d_surface_desc *desc = svga3dsurface_get_desc(format); - u32 total_size = 0; + u64 total_size = 0; u32 mip; for (mip = 0; mip < num_mip_levels; mip++) { @@ -847,7 +851,7 @@ if (cubemap) total_size *= SVGA3D_MAX_SURFACE_FACES; - return total_size; + return (u32) min_t(u64, total_size, (u64) U32_MAX); } --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/svga_reg.h +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/svga_reg.h @@ -169,7 +169,17 @@ SVGA_REG_TRACES = 45, /* Enable trace-based updates even when FIFO is on */ SVGA_REG_GMRS_MAX_PAGES = 46, /* Maximum number of 4KB pages for all GMRs */ SVGA_REG_MEMORY_SIZE = 47, /* Total dedicated device memory excluding FIFO */ - SVGA_REG_TOP = 48, /* Must be 1 more than the last register */ + SVGA_REG_COMMAND_LOW = 48, /* Lower 32 bits and submits commands */ + SVGA_REG_COMMAND_HIGH = 49, /* Upper 32 bits of command buffer PA */ + SVGA_REG_MAX_PRIMARY_BOUNDING_BOX_MEM = 50, /* Max primary memory */ + SVGA_REG_SUGGESTED_GBOBJECT_MEM_SIZE_KB = 51, /* Suggested limit on mob mem */ + SVGA_REG_DEV_CAP = 52, /* Write dev cap index, read value */ + SVGA_REG_CMD_PREPEND_LOW = 53, + SVGA_REG_CMD_PREPEND_HIGH = 54, + SVGA_REG_SCREENTARGET_MAX_WIDTH = 55, + SVGA_REG_SCREENTARGET_MAX_HEIGHT = 56, + SVGA_REG_MOB_MAX_SIZE = 57, + SVGA_REG_TOP = 58, /* Must be 1 more than the last register */ SVGA_PALETTE_BASE = 1024, /* Base of SVGA color map */ /* Next 768 (== 256*3) registers exist for colormap */ @@ -431,7 +441,10 @@ #define SVGA_CAP_TRACES 0x00200000 #define SVGA_CAP_GMR2 0x00400000 #define SVGA_CAP_SCREEN_OBJECT_2 0x00800000 - +#define SVGA_CAP_COMMAND_BUFFERS 0x01000000 +#define SVGA_CAP_DEAD1 0x02000000 +#define SVGA_CAP_CMD_BUFFERS_2 0x04000000 +#define SVGA_CAP_GBOBJECTS 0x08000000 /* * FIFO register indices. --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c @@ -40,6 +40,10 @@ static uint32_t sys_placement_flags = TTM_PL_FLAG_SYSTEM | TTM_PL_FLAG_CACHED; +static uint32_t sys_ne_placement_flags = TTM_PL_FLAG_SYSTEM | + TTM_PL_FLAG_CACHED | + TTM_PL_FLAG_NO_EVICT; + static uint32_t gmr_placement_flags = VMW_PL_FLAG_GMR | TTM_PL_FLAG_CACHED; @@ -47,6 +51,9 @@ TTM_PL_FLAG_CACHED | TTM_PL_FLAG_NO_EVICT; +static uint32_t mob_placement_flags = VMW_PL_FLAG_MOB | + TTM_PL_FLAG_CACHED; + struct ttm_placement vmw_vram_placement = { .fpfn = 0, .lpfn = 0, @@ -116,16 +123,26 @@ .busy_placement = &sys_placement_flags }; +struct ttm_placement vmw_sys_ne_placement = { + .fpfn = 0, + .lpfn = 0, + .num_placement = 1, + .placement = &sys_ne_placement_flags, + .num_busy_placement = 1, + .busy_placement = &sys_ne_placement_flags +}; + static uint32_t evictable_placement_flags[] = { TTM_PL_FLAG_SYSTEM | TTM_PL_FLAG_CACHED, TTM_PL_FLAG_VRAM | TTM_PL_FLAG_CACHED, - VMW_PL_FLAG_GMR | TTM_PL_FLAG_CACHED + VMW_PL_FLAG_GMR | TTM_PL_FLAG_CACHED, + VMW_PL_FLAG_MOB | TTM_PL_FLAG_CACHED }; struct ttm_placement vmw_evictable_placement = { .fpfn = 0, .lpfn = 0, - .num_placement = 3, + .num_placement = 4, .placement = evictable_placement_flags, .num_busy_placement = 1, .busy_placement = &sys_placement_flags @@ -140,10 +157,21 @@ .busy_placement = gmr_vram_placement_flags }; +struct ttm_placement vmw_mob_placement = { + .fpfn = 0, + .lpfn = 0, + .num_placement = 1, + .num_busy_placement = 1, + .placement = &mob_placement_flags, + .busy_placement = &mob_placement_flags +}; + struct vmw_ttm_tt { struct ttm_dma_tt dma_ttm; struct vmw_private *dev_priv; int gmr_id; + struct vmw_mob *mob; + int mem_type; struct sg_table sgt; struct vmw_sg_table vsgt; uint64_t sg_alloc_size; @@ -244,6 +272,7 @@ viter->dma_address = &__vmw_piter_dma_addr; viter->page = &__vmw_piter_non_sg_page; viter->addrs = vsgt->addrs; + viter->pages = vsgt->pages; break; case vmw_dma_map_populate: case vmw_dma_map_bind: @@ -424,6 +453,63 @@ vmw_tt->mapped = false; } + +/** + * vmw_bo_map_dma - Make sure buffer object pages are visible to the device + * + * @bo: Pointer to a struct ttm_buffer_object + * + * Wrapper around vmw_ttm_map_dma, that takes a TTM buffer object pointer + * instead of a pointer to a struct vmw_ttm_backend as argument. + * Note that the buffer object must be either pinned or reserved before + * calling this function. + */ +int vmw_bo_map_dma(struct ttm_buffer_object *bo) +{ + struct vmw_ttm_tt *vmw_tt = + container_of(bo->ttm, struct vmw_ttm_tt, dma_ttm.ttm); + + return vmw_ttm_map_dma(vmw_tt); +} + + +/** + * vmw_bo_unmap_dma - Make sure buffer object pages are visible to the device + * + * @bo: Pointer to a struct ttm_buffer_object + * + * Wrapper around vmw_ttm_unmap_dma, that takes a TTM buffer object pointer + * instead of a pointer to a struct vmw_ttm_backend as argument. + */ +void vmw_bo_unmap_dma(struct ttm_buffer_object *bo) +{ + struct vmw_ttm_tt *vmw_tt = + container_of(bo->ttm, struct vmw_ttm_tt, dma_ttm.ttm); + + vmw_ttm_unmap_dma(vmw_tt); +} + + +/** + * vmw_bo_sg_table - Return a struct vmw_sg_table object for a + * TTM buffer object + * + * @bo: Pointer to a struct ttm_buffer_object + * + * Returns a pointer to a struct vmw_sg_table object. The object should + * not be freed after use. + * Note that for the device addresses to be valid, the buffer object must + * either be reserved or pinned. + */ +const struct vmw_sg_table *vmw_bo_sg_table(struct ttm_buffer_object *bo) +{ + struct vmw_ttm_tt *vmw_tt = + container_of(bo->ttm, struct vmw_ttm_tt, dma_ttm.ttm); + + return &vmw_tt->vsgt; +} + + static int vmw_ttm_bind(struct ttm_tt *ttm, struct ttm_mem_reg *bo_mem) { struct vmw_ttm_tt *vmw_be = @@ -435,9 +521,27 @@ return ret; vmw_be->gmr_id = bo_mem->start; + vmw_be->mem_type = bo_mem->mem_type; + + switch (bo_mem->mem_type) { + case VMW_PL_GMR: + return vmw_gmr_bind(vmw_be->dev_priv, &vmw_be->vsgt, + ttm->num_pages, vmw_be->gmr_id); + case VMW_PL_MOB: + if (unlikely(vmw_be->mob == NULL)) { + vmw_be->mob = + vmw_mob_create(ttm->num_pages); + if (unlikely(vmw_be->mob == NULL)) + return -ENOMEM; + } - return vmw_gmr_bind(vmw_be->dev_priv, &vmw_be->vsgt, - ttm->num_pages, vmw_be->gmr_id); + return vmw_mob_bind(vmw_be->dev_priv, vmw_be->mob, + &vmw_be->vsgt, ttm->num_pages, + vmw_be->gmr_id); + default: + BUG(); + } + return 0; } static int vmw_ttm_unbind(struct ttm_tt *ttm) @@ -445,7 +549,16 @@ struct vmw_ttm_tt *vmw_be = container_of(ttm, struct vmw_ttm_tt, dma_ttm.ttm); - vmw_gmr_unbind(vmw_be->dev_priv, vmw_be->gmr_id); + switch (vmw_be->mem_type) { + case VMW_PL_GMR: + vmw_gmr_unbind(vmw_be->dev_priv, vmw_be->gmr_id); + break; + case VMW_PL_MOB: + vmw_mob_unbind(vmw_be->dev_priv, vmw_be->mob); + break; + default: + BUG(); + } if (vmw_be->dev_priv->map_mode == vmw_dma_map_bind) vmw_ttm_unmap_dma(vmw_be); @@ -453,6 +566,7 @@ return 0; } + static void vmw_ttm_destroy(struct ttm_tt *ttm) { struct vmw_ttm_tt *vmw_be = @@ -463,9 +577,14 @@ ttm_dma_tt_fini(&vmw_be->dma_ttm); else ttm_tt_fini(ttm); + + if (vmw_be->mob) + vmw_mob_destroy(vmw_be->mob); + kfree(vmw_be); } + static int vmw_ttm_populate(struct ttm_tt *ttm) { struct vmw_ttm_tt *vmw_tt = @@ -500,6 +619,12 @@ struct vmw_private *dev_priv = vmw_tt->dev_priv; struct ttm_mem_global *glob = vmw_mem_glob(dev_priv); + + if (vmw_tt->mob) { + vmw_mob_destroy(vmw_tt->mob); + vmw_tt->mob = NULL; + } + vmw_ttm_unmap_dma(vmw_tt); if (dev_priv->map_mode == vmw_dma_alloc_coherent) { size_t size = @@ -517,7 +642,7 @@ .destroy = vmw_ttm_destroy, }; -struct ttm_tt *vmw_ttm_tt_create(struct ttm_bo_device *bdev, +static struct ttm_tt *vmw_ttm_tt_create(struct ttm_bo_device *bdev, unsigned long size, uint32_t page_flags, struct page *dummy_read_page) { @@ -530,6 +655,7 @@ vmw_be->dma_ttm.ttm.func = &vmw_ttm_func; vmw_be->dev_priv = container_of(bdev, struct vmw_private, bdev); + vmw_be->mob = NULL; if (vmw_be->dev_priv->map_mode == vmw_dma_alloc_coherent) ret = ttm_dma_tt_init(&vmw_be->dma_ttm, bdev, size, page_flags, @@ -546,12 +672,12 @@ return NULL; } -int vmw_invalidate_caches(struct ttm_bo_device *bdev, uint32_t flags) +static int vmw_invalidate_caches(struct ttm_bo_device *bdev, uint32_t flags) { return 0; } -int vmw_init_mem_type(struct ttm_bo_device *bdev, uint32_t type, +static int vmw_init_mem_type(struct ttm_bo_device *bdev, uint32_t type, struct ttm_mem_type_manager *man) { switch (type) { @@ -571,6 +697,7 @@ man->default_caching = TTM_PL_FLAG_CACHED; break; case VMW_PL_GMR: + case VMW_PL_MOB: /* * "Guest Memory Regions" is an aperture like feature with * one slot per bo. There is an upper limit of the number of @@ -589,7 +716,7 @@ return 0; } -void vmw_evict_flags(struct ttm_buffer_object *bo, +static void vmw_evict_flags(struct ttm_buffer_object *bo, struct ttm_placement *placement) { *placement = vmw_sys_placement; @@ -618,6 +745,7 @@ switch (mem->mem_type) { case TTM_PL_SYSTEM: case VMW_PL_GMR: + case VMW_PL_MOB: return 0; case TTM_PL_VRAM: mem->bus.offset = mem->start << PAGE_SHIFT; @@ -677,6 +805,38 @@ VMW_FENCE_WAIT_TIMEOUT); } +/** + * vmw_move_notify - TTM move_notify_callback + * + * @bo: The TTM buffer object about to move. + * @mem: The truct ttm_mem_reg indicating to what memory + * region the move is taking place. + * + * Calls move_notify for all subsystems needing it. + * (currently only resources). + */ +static void vmw_move_notify(struct ttm_buffer_object *bo, + struct ttm_mem_reg *mem) +{ + vmw_resource_move_notify(bo, mem); +} + + +/** + * vmw_swap_notify - TTM move_notify_callback + * + * @bo: The TTM buffer object about to be swapped out. + */ +static void vmw_swap_notify(struct ttm_buffer_object *bo) +{ + struct ttm_bo_device *bdev = bo->bdev; + + spin_lock(&bdev->fence_lock); + ttm_bo_wait(bo, false, false, false); + spin_unlock(&bdev->fence_lock); +} + + struct ttm_bo_driver vmw_bo_driver = { .ttm_tt_create = &vmw_ttm_tt_create, .ttm_tt_populate = &vmw_ttm_populate, @@ -691,8 +851,8 @@ .sync_obj_flush = vmw_sync_obj_flush, .sync_obj_unref = vmw_sync_obj_unref, .sync_obj_ref = vmw_sync_obj_ref, - .move_notify = NULL, - .swap_notify = NULL, + .move_notify = vmw_move_notify, + .swap_notify = vmw_swap_notify, .fault_reserve_notify = &vmw_ttm_fault_reserve_notify, .io_mem_reserve = &vmw_ttm_io_mem_reserve, .io_mem_free = &vmw_ttm_io_mem_free, --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_context.c +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_context.c @@ -32,12 +32,30 @@ struct vmw_user_context { struct ttm_base_object base; struct vmw_resource res; + struct vmw_ctx_binding_state cbs; }; + + +typedef int (*vmw_scrub_func)(struct vmw_ctx_bindinfo *, bool); + static void vmw_user_context_free(struct vmw_resource *res); static struct vmw_resource * vmw_user_context_base_to_res(struct ttm_base_object *base); +static int vmw_gb_context_create(struct vmw_resource *res); +static int vmw_gb_context_bind(struct vmw_resource *res, + struct ttm_validate_buffer *val_buf); +static int vmw_gb_context_unbind(struct vmw_resource *res, + bool readback, + struct ttm_validate_buffer *val_buf); +static int vmw_gb_context_destroy(struct vmw_resource *res); +static int vmw_context_scrub_shader(struct vmw_ctx_bindinfo *bi, bool rebind); +static int vmw_context_scrub_render_target(struct vmw_ctx_bindinfo *bi, + bool rebind); +static int vmw_context_scrub_texture(struct vmw_ctx_bindinfo *bi, bool rebind); +static void vmw_context_binding_state_scrub(struct vmw_ctx_binding_state *cbs); +static void vmw_context_binding_state_kill(struct vmw_ctx_binding_state *cbs); static uint64_t vmw_user_context_size; static const struct vmw_user_resource_conv user_context_conv = { @@ -62,6 +80,23 @@ .unbind = NULL }; +static const struct vmw_res_func vmw_gb_context_func = { + .res_type = vmw_res_context, + .needs_backup = true, + .may_evict = true, + .type_name = "guest backed contexts", + .backup_placement = &vmw_mob_placement, + .create = vmw_gb_context_create, + .destroy = vmw_gb_context_destroy, + .bind = vmw_gb_context_bind, + .unbind = vmw_gb_context_unbind +}; + +static const vmw_scrub_func vmw_scrub_funcs[vmw_ctx_binding_max] = { + [vmw_ctx_binding_shader] = vmw_context_scrub_shader, + [vmw_ctx_binding_rt] = vmw_context_scrub_render_target, + [vmw_ctx_binding_tex] = vmw_context_scrub_texture }; + /** * Context management: */ @@ -76,6 +111,20 @@ } *cmd; + if (res->func->destroy == vmw_gb_context_destroy) { + mutex_lock(&dev_priv->cmdbuf_mutex); + mutex_lock(&dev_priv->binding_mutex); + (void) vmw_context_binding_state_kill + (&container_of(res, struct vmw_user_context, res)->cbs); + (void) vmw_gb_context_destroy(res); + if (dev_priv->pinned_bo != NULL && + !dev_priv->query_cid_valid) + __vmw_execbuf_release_pinned_bo(dev_priv, NULL); + mutex_unlock(&dev_priv->binding_mutex); + mutex_unlock(&dev_priv->cmdbuf_mutex); + return; + } + vmw_execbuf_release_pinned_bo(dev_priv); cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); if (unlikely(cmd == NULL)) { @@ -92,6 +141,33 @@ vmw_3d_resource_dec(dev_priv, false); } +static int vmw_gb_context_init(struct vmw_private *dev_priv, + struct vmw_resource *res, + void (*res_free) (struct vmw_resource *res)) +{ + int ret; + struct vmw_user_context *uctx = + container_of(res, struct vmw_user_context, res); + + ret = vmw_resource_init(dev_priv, res, true, + res_free, &vmw_gb_context_func); + res->backup_size = SVGA3D_CONTEXT_DATA_SIZE; + + if (unlikely(ret != 0)) { + if (res_free) + res_free(res); + else + kfree(res); + return ret; + } + + memset(&uctx->cbs, 0, sizeof(uctx->cbs)); + INIT_LIST_HEAD(&uctx->cbs.list); + + vmw_resource_activate(res, vmw_hw_context_destroy); + return 0; +} + static int vmw_context_init(struct vmw_private *dev_priv, struct vmw_resource *res, void (*res_free) (struct vmw_resource *res)) @@ -103,6 +179,9 @@ SVGA3dCmdDefineContext body; } *cmd; + if (dev_priv->has_mob) + return vmw_gb_context_init(dev_priv, res, res_free); + ret = vmw_resource_init(dev_priv, res, false, res_free, &vmw_legacy_context_func); @@ -154,6 +233,180 @@ return (ret == 0) ? res : NULL; } + +static int vmw_gb_context_create(struct vmw_resource *res) +{ + struct vmw_private *dev_priv = res->dev_priv; + int ret; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdDefineGBContext body; + } *cmd; + + if (likely(res->id != -1)) + return 0; + + ret = vmw_resource_alloc_id(res); + if (unlikely(ret != 0)) { + DRM_ERROR("Failed to allocate a context id.\n"); + goto out_no_id; + } + + if (unlikely(res->id >= VMWGFX_NUM_GB_CONTEXT)) { + ret = -EBUSY; + goto out_no_fifo; + } + + cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for context " + "creation.\n"); + ret = -ENOMEM; + goto out_no_fifo; + } + + cmd->header.id = SVGA_3D_CMD_DEFINE_GB_CONTEXT; + cmd->header.size = sizeof(cmd->body); + cmd->body.cid = res->id; + vmw_fifo_commit(dev_priv, sizeof(*cmd)); + (void) vmw_3d_resource_inc(dev_priv, false); + + return 0; + +out_no_fifo: + vmw_resource_release_id(res); +out_no_id: + return ret; +} + +static int vmw_gb_context_bind(struct vmw_resource *res, + struct ttm_validate_buffer *val_buf) +{ + struct vmw_private *dev_priv = res->dev_priv; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdBindGBContext body; + } *cmd; + struct ttm_buffer_object *bo = val_buf->bo; + + BUG_ON(bo->mem.mem_type != VMW_PL_MOB); + + cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for context " + "binding.\n"); + return -ENOMEM; + } + + cmd->header.id = SVGA_3D_CMD_BIND_GB_CONTEXT; + cmd->header.size = sizeof(cmd->body); + cmd->body.cid = res->id; + cmd->body.mobid = bo->mem.start; + cmd->body.validContents = res->backup_dirty; + res->backup_dirty = false; + vmw_fifo_commit(dev_priv, sizeof(*cmd)); + + return 0; +} + +static int vmw_gb_context_unbind(struct vmw_resource *res, + bool readback, + struct ttm_validate_buffer *val_buf) +{ + struct vmw_private *dev_priv = res->dev_priv; + struct ttm_buffer_object *bo = val_buf->bo; + struct vmw_fence_obj *fence; + struct vmw_user_context *uctx = + container_of(res, struct vmw_user_context, res); + + struct { + SVGA3dCmdHeader header; + SVGA3dCmdReadbackGBContext body; + } *cmd1; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdBindGBContext body; + } *cmd2; + uint32_t submit_size; + uint8_t *cmd; + + + BUG_ON(bo->mem.mem_type != VMW_PL_MOB); + + mutex_lock(&dev_priv->binding_mutex); + vmw_context_binding_state_scrub(&uctx->cbs); + + submit_size = sizeof(*cmd2) + (readback ? sizeof(*cmd1) : 0); + + cmd = vmw_fifo_reserve(dev_priv, submit_size); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for context " + "unbinding.\n"); + mutex_unlock(&dev_priv->binding_mutex); + return -ENOMEM; + } + + cmd2 = (void *) cmd; + if (readback) { + cmd1 = (void *) cmd; + cmd1->header.id = SVGA_3D_CMD_READBACK_GB_CONTEXT; + cmd1->header.size = sizeof(cmd1->body); + cmd1->body.cid = res->id; + cmd2 = (void *) (&cmd1[1]); + } + cmd2->header.id = SVGA_3D_CMD_BIND_GB_CONTEXT; + cmd2->header.size = sizeof(cmd2->body); + cmd2->body.cid = res->id; + cmd2->body.mobid = SVGA3D_INVALID_ID; + + vmw_fifo_commit(dev_priv, submit_size); + mutex_unlock(&dev_priv->binding_mutex); + + /* + * Create a fence object and fence the backup buffer. + */ + + (void) vmw_execbuf_fence_commands(NULL, dev_priv, + &fence, NULL); + + vmw_fence_single_bo(bo, fence); + + if (likely(fence != NULL)) + vmw_fence_obj_unreference(&fence); + + return 0; +} + +static int vmw_gb_context_destroy(struct vmw_resource *res) +{ + struct vmw_private *dev_priv = res->dev_priv; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdDestroyGBContext body; + } *cmd; + + if (likely(res->id == -1)) + return 0; + + cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for context " + "destruction.\n"); + return -ENOMEM; + } + + cmd->header.id = SVGA_3D_CMD_DESTROY_GB_CONTEXT; + cmd->header.size = sizeof(cmd->body); + cmd->body.cid = res->id; + vmw_fifo_commit(dev_priv, sizeof(*cmd)); + if (dev_priv->query_cid == res->id) + dev_priv->query_cid_valid = false; + vmw_resource_release_id(res); + vmw_3d_resource_dec(dev_priv, false); + + return 0; +} + /** * User-space context management: */ @@ -272,3 +525,380 @@ return ret; } + +/** + * vmw_context_scrub_shader - scrub a shader binding from a context. + * + * @bi: single binding information. + * @rebind: Whether to issue a bind instead of scrub command. + */ +static int vmw_context_scrub_shader(struct vmw_ctx_bindinfo *bi, bool rebind) +{ + struct vmw_private *dev_priv = bi->ctx->dev_priv; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdSetShader body; + } *cmd; + + cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for shader " + "unbinding.\n"); + return -ENOMEM; + } + + cmd->header.id = SVGA_3D_CMD_SET_SHADER; + cmd->header.size = sizeof(cmd->body); + cmd->body.cid = bi->ctx->id; + cmd->body.type = bi->i1.shader_type; + cmd->body.shid = ((rebind) ? bi->res->id : SVGA3D_INVALID_ID); + vmw_fifo_commit(dev_priv, sizeof(*cmd)); + + return 0; +} + +/** + * vmw_context_scrub_render_target - scrub a render target binding + * from a context. + * + * @bi: single binding information. + * @rebind: Whether to issue a bind instead of scrub command. + */ +static int vmw_context_scrub_render_target(struct vmw_ctx_bindinfo *bi, + bool rebind) +{ + struct vmw_private *dev_priv = bi->ctx->dev_priv; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdSetRenderTarget body; + } *cmd; + + cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for render target " + "unbinding.\n"); + return -ENOMEM; + } + + cmd->header.id = SVGA_3D_CMD_SETRENDERTARGET; + cmd->header.size = sizeof(cmd->body); + cmd->body.cid = bi->ctx->id; + cmd->body.type = bi->i1.rt_type; + cmd->body.target.sid = ((rebind) ? bi->res->id : SVGA3D_INVALID_ID); + cmd->body.target.face = 0; + cmd->body.target.mipmap = 0; + vmw_fifo_commit(dev_priv, sizeof(*cmd)); + + return 0; +} + +/** + * vmw_context_scrub_texture - scrub a texture binding from a context. + * + * @bi: single binding information. + * @rebind: Whether to issue a bind instead of scrub command. + * + * TODO: Possibly complement this function with a function that takes + * a list of texture bindings and combines them to a single command. + */ +static int vmw_context_scrub_texture(struct vmw_ctx_bindinfo *bi, + bool rebind) +{ + struct vmw_private *dev_priv = bi->ctx->dev_priv; + struct { + SVGA3dCmdHeader header; + struct { + SVGA3dCmdSetTextureState c; + SVGA3dTextureState s1; + } body; + } *cmd; + + cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for texture " + "unbinding.\n"); + return -ENOMEM; + } + + + cmd->header.id = SVGA_3D_CMD_SETTEXTURESTATE; + cmd->header.size = sizeof(cmd->body); + cmd->body.c.cid = bi->ctx->id; + cmd->body.s1.stage = bi->i1.texture_stage; + cmd->body.s1.name = SVGA3D_TS_BIND_TEXTURE; + cmd->body.s1.value = ((rebind) ? bi->res->id : SVGA3D_INVALID_ID); + vmw_fifo_commit(dev_priv, sizeof(*cmd)); + + return 0; +} + +/** + * vmw_context_binding_drop: Stop tracking a context binding + * + * @cb: Pointer to binding tracker storage. + * + * Stops tracking a context binding, and re-initializes its storage. + * Typically used when the context binding is replaced with a binding to + * another (or the same, for that matter) resource. + */ +static void vmw_context_binding_drop(struct vmw_ctx_binding *cb) +{ + list_del(&cb->ctx_list); + if (!list_empty(&cb->res_list)) + list_del(&cb->res_list); + cb->bi.ctx = NULL; +} + +/** + * vmw_context_binding_add: Start tracking a context binding + * + * @cbs: Pointer to the context binding state tracker. + * @bi: Information about the binding to track. + * + * Performs basic checks on the binding to make sure arguments are within + * bounds and then starts tracking the binding in the context binding + * state structure @cbs. + */ +int vmw_context_binding_add(struct vmw_ctx_binding_state *cbs, + const struct vmw_ctx_bindinfo *bi) +{ + struct vmw_ctx_binding *loc; + + switch (bi->bt) { + case vmw_ctx_binding_rt: + if (unlikely((unsigned)bi->i1.rt_type >= SVGA3D_RT_MAX)) { + DRM_ERROR("Illegal render target type %u.\n", + (unsigned) bi->i1.rt_type); + return -EINVAL; + } + loc = &cbs->render_targets[bi->i1.rt_type]; + break; + case vmw_ctx_binding_tex: + if (unlikely((unsigned)bi->i1.texture_stage >= + SVGA3D_NUM_TEXTURE_UNITS)) { + DRM_ERROR("Illegal texture/sampler unit %u.\n", + (unsigned) bi->i1.texture_stage); + return -EINVAL; + } + loc = &cbs->texture_units[bi->i1.texture_stage]; + break; + case vmw_ctx_binding_shader: + if (unlikely((unsigned)bi->i1.shader_type >= + SVGA3D_SHADERTYPE_MAX)) { + DRM_ERROR("Illegal shader type %u.\n", + (unsigned) bi->i1.shader_type); + return -EINVAL; + } + loc = &cbs->shaders[bi->i1.shader_type]; + break; + default: + BUG(); + } + + if (loc->bi.ctx != NULL) + vmw_context_binding_drop(loc); + + loc->bi = *bi; + loc->bi.scrubbed = false; + list_add_tail(&loc->ctx_list, &cbs->list); + INIT_LIST_HEAD(&loc->res_list); + + return 0; +} + +/** + * vmw_context_binding_transfer: Transfer a context binding tracking entry. + * + * @cbs: Pointer to the persistent context binding state tracker. + * @bi: Information about the binding to track. + * + */ +static void vmw_context_binding_transfer(struct vmw_ctx_binding_state *cbs, + const struct vmw_ctx_bindinfo *bi) +{ + struct vmw_ctx_binding *loc; + + switch (bi->bt) { + case vmw_ctx_binding_rt: + loc = &cbs->render_targets[bi->i1.rt_type]; + break; + case vmw_ctx_binding_tex: + loc = &cbs->texture_units[bi->i1.texture_stage]; + break; + case vmw_ctx_binding_shader: + loc = &cbs->shaders[bi->i1.shader_type]; + break; + default: + BUG(); + } + + if (loc->bi.ctx != NULL) + vmw_context_binding_drop(loc); + + if (bi->res != NULL) { + loc->bi = *bi; + list_add_tail(&loc->ctx_list, &cbs->list); + list_add_tail(&loc->res_list, &bi->res->binding_head); + } +} + +/** + * vmw_context_binding_kill - Kill a binding on the device + * and stop tracking it. + * + * @cb: Pointer to binding tracker storage. + * + * Emits FIFO commands to scrub a binding represented by @cb. + * Then stops tracking the binding and re-initializes its storage. + */ +static void vmw_context_binding_kill(struct vmw_ctx_binding *cb) +{ + if (!cb->bi.scrubbed) { + (void) vmw_scrub_funcs[cb->bi.bt](&cb->bi, false); + cb->bi.scrubbed = true; + } + vmw_context_binding_drop(cb); +} + +/** + * vmw_context_binding_state_kill - Kill all bindings associated with a + * struct vmw_ctx_binding state structure, and re-initialize the structure. + * + * @cbs: Pointer to the context binding state tracker. + * + * Emits commands to scrub all bindings associated with the + * context binding state tracker. Then re-initializes the whole structure. + */ +static void vmw_context_binding_state_kill(struct vmw_ctx_binding_state *cbs) +{ + struct vmw_ctx_binding *entry, *next; + + list_for_each_entry_safe(entry, next, &cbs->list, ctx_list) + vmw_context_binding_kill(entry); +} + +/** + * vmw_context_binding_state_scrub - Scrub all bindings associated with a + * struct vmw_ctx_binding state structure. + * + * @cbs: Pointer to the context binding state tracker. + * + * Emits commands to scrub all bindings associated with the + * context binding state tracker. + */ +static void vmw_context_binding_state_scrub(struct vmw_ctx_binding_state *cbs) +{ + struct vmw_ctx_binding *entry; + + list_for_each_entry(entry, &cbs->list, ctx_list) { + if (!entry->bi.scrubbed) { + (void) vmw_scrub_funcs[entry->bi.bt](&entry->bi, false); + entry->bi.scrubbed = true; + } + } +} + +/** + * vmw_context_binding_res_list_kill - Kill all bindings on a + * resource binding list + * + * @head: list head of resource binding list + * + * Kills all bindings associated with a specific resource. Typically + * called before the resource is destroyed. + */ +void vmw_context_binding_res_list_kill(struct list_head *head) +{ + struct vmw_ctx_binding *entry, *next; + + list_for_each_entry_safe(entry, next, head, res_list) + vmw_context_binding_kill(entry); +} + +/** + * vmw_context_binding_res_list_scrub - Scrub all bindings on a + * resource binding list + * + * @head: list head of resource binding list + * + * Scrub all bindings associated with a specific resource. Typically + * called before the resource is evicted. + */ +void vmw_context_binding_res_list_scrub(struct list_head *head) +{ + struct vmw_ctx_binding *entry; + + list_for_each_entry(entry, head, res_list) { + if (!entry->bi.scrubbed) { + (void) vmw_scrub_funcs[entry->bi.bt](&entry->bi, false); + entry->bi.scrubbed = true; + } + } +} + +/** + * vmw_context_binding_state_transfer - Commit staged binding info + * + * @ctx: Pointer to context to commit the staged binding info to. + * @from: Staged binding info built during execbuf. + * + * Transfers binding info from a temporary structure to the persistent + * structure in the context. This can be done once commands + */ +void vmw_context_binding_state_transfer(struct vmw_resource *ctx, + struct vmw_ctx_binding_state *from) +{ + struct vmw_user_context *uctx = + container_of(ctx, struct vmw_user_context, res); + struct vmw_ctx_binding *entry, *next; + + list_for_each_entry_safe(entry, next, &from->list, ctx_list) + vmw_context_binding_transfer(&uctx->cbs, &entry->bi); +} + +/** + * vmw_context_rebind_all - Rebind all scrubbed bindings of a context + * + * @ctx: The context resource + * + * Walks through the context binding list and rebinds all scrubbed + * resources. + */ +int vmw_context_rebind_all(struct vmw_resource *ctx) +{ + struct vmw_ctx_binding *entry; + struct vmw_user_context *uctx = + container_of(ctx, struct vmw_user_context, res); + struct vmw_ctx_binding_state *cbs = &uctx->cbs; + int ret; + + list_for_each_entry(entry, &cbs->list, ctx_list) { + if (likely(!entry->bi.scrubbed)) + continue; + + if (WARN_ON(entry->bi.res == NULL || entry->bi.res->id == + SVGA3D_INVALID_ID)) + continue; + + ret = vmw_scrub_funcs[entry->bi.bt](&entry->bi, true); + if (unlikely(ret != 0)) + return ret; + + entry->bi.scrubbed = false; + } + + return 0; +} + +/** + * vmw_context_binding_list - Return a list of context bindings + * + * @ctx: The context resource + * + * Returns the current list of bindings of the given context. Note that + * this list becomes stale as soon as the dev_priv::binding_mutex is unlocked. + */ +struct list_head *vmw_context_binding_list(struct vmw_resource *ctx) +{ + return &(container_of(ctx, struct vmw_user_context, res)->cbs.list); +} --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_dmabuf.c +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_dmabuf.c @@ -290,8 +290,7 @@ /** * vmw_bo_pin - Pin or unpin a buffer object without moving it. * - * @bo: The buffer object. Must be reserved, and present either in VRAM - * or GMR memory. + * @bo: The buffer object. Must be reserved. * @pin: Whether to pin or unpin. * */ @@ -303,10 +302,9 @@ int ret; lockdep_assert_held(&bo->resv->lock.base); - BUG_ON(old_mem_type != TTM_PL_VRAM && - old_mem_type != VMW_PL_GMR); - pl_flags = TTM_PL_FLAG_VRAM | VMW_PL_FLAG_GMR | TTM_PL_FLAG_CACHED; + pl_flags = TTM_PL_FLAG_VRAM | VMW_PL_FLAG_GMR | VMW_PL_FLAG_MOB + | TTM_PL_FLAG_SYSTEM | TTM_PL_FLAG_CACHED; if (pin) pl_flags |= TTM_PL_FLAG_NO_EVICT; --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c @@ -112,6 +112,21 @@ #define DRM_IOCTL_VMW_UPDATE_LAYOUT \ DRM_IOW(DRM_COMMAND_BASE + DRM_VMW_UPDATE_LAYOUT, \ struct drm_vmw_update_layout_arg) +#define DRM_IOCTL_VMW_CREATE_SHADER \ + DRM_IOWR(DRM_COMMAND_BASE + DRM_VMW_CREATE_SHADER, \ + struct drm_vmw_shader_create_arg) +#define DRM_IOCTL_VMW_UNREF_SHADER \ + DRM_IOW(DRM_COMMAND_BASE + DRM_VMW_UNREF_SHADER, \ + struct drm_vmw_shader_arg) +#define DRM_IOCTL_VMW_GB_SURFACE_CREATE \ + DRM_IOWR(DRM_COMMAND_BASE + DRM_VMW_GB_SURFACE_CREATE, \ + union drm_vmw_gb_surface_create_arg) +#define DRM_IOCTL_VMW_GB_SURFACE_REF \ + DRM_IOWR(DRM_COMMAND_BASE + DRM_VMW_GB_SURFACE_REF, \ + union drm_vmw_gb_surface_reference_arg) +#define DRM_IOCTL_VMW_SYNCCPU \ + DRM_IOW(DRM_COMMAND_BASE + DRM_VMW_SYNCCPU, \ + struct drm_vmw_synccpu_arg) /** * The core DRM version of this macro doesn't account for @@ -177,6 +192,21 @@ VMW_IOCTL_DEF(VMW_UPDATE_LAYOUT, vmw_kms_update_layout_ioctl, DRM_MASTER | DRM_UNLOCKED), + VMW_IOCTL_DEF(VMW_CREATE_SHADER, + vmw_shader_define_ioctl, + DRM_AUTH | DRM_UNLOCKED), + VMW_IOCTL_DEF(VMW_UNREF_SHADER, + vmw_shader_destroy_ioctl, + DRM_AUTH | DRM_UNLOCKED), + VMW_IOCTL_DEF(VMW_GB_SURFACE_CREATE, + vmw_gb_surface_define_ioctl, + DRM_AUTH | DRM_UNLOCKED), + VMW_IOCTL_DEF(VMW_GB_SURFACE_REF, + vmw_gb_surface_reference_ioctl, + DRM_AUTH | DRM_UNLOCKED), + VMW_IOCTL_DEF(VMW_SYNCCPU, + vmw_user_dmabuf_synccpu_ioctl, + DRM_AUTH | DRM_UNLOCKED), }; static struct pci_device_id vmw_pci_id_list[] = { @@ -189,6 +219,7 @@ static int vmw_force_iommu; static int vmw_restrict_iommu; static int vmw_force_coherent; +static int vmw_restrict_dma_mask; static int vmw_probe(struct pci_dev *, const struct pci_device_id *); static void vmw_master_init(struct vmw_master *); @@ -203,6 +234,8 @@ module_param_named(restrict_iommu, vmw_restrict_iommu, int, 0600); MODULE_PARM_DESC(force_coherent, "Force coherent TTM pages"); module_param_named(force_coherent, vmw_force_coherent, int, 0600); +MODULE_PARM_DESC(restrict_dma_mask, "Restrict DMA mask to 44 bits with IOMMU"); +module_param_named(restrict_dma_mask, vmw_restrict_dma_mask, int, 0600); static void vmw_print_capabilities(uint32_t capabilities) @@ -240,38 +273,52 @@ DRM_INFO(" GMR2.\n"); if (capabilities & SVGA_CAP_SCREEN_OBJECT_2) DRM_INFO(" Screen Object 2.\n"); + if (capabilities & SVGA_CAP_COMMAND_BUFFERS) + DRM_INFO(" Command Buffers.\n"); + if (capabilities & SVGA_CAP_CMD_BUFFERS_2) + DRM_INFO(" Command Buffers 2.\n"); + if (capabilities & SVGA_CAP_GBOBJECTS) + DRM_INFO(" Guest Backed Resources.\n"); } - /** - * vmw_execbuf_prepare_dummy_query - Initialize a query result structure at - * the start of a buffer object. + * vmw_dummy_query_bo_create - create a bo to hold a dummy query result * - * @dev_priv: The device private structure. + * @dev_priv: A device private structure. * - * This function will idle the buffer using an uninterruptible wait, then - * map the first page and initialize a pending occlusion query result structure, - * Finally it will unmap the buffer. + * This function creates a small buffer object that holds the query + * result for dummy queries emitted as query barriers. + * The function will then map the first page and initialize a pending + * occlusion query result structure, Finally it will unmap the buffer. + * No interruptible waits are done within this function. * - * TODO: Since we're only mapping a single page, we should optimize the map - * to use kmap_atomic / iomap_atomic. + * Returns an error if bo creation or initialization fails. */ -static void vmw_dummy_query_bo_prepare(struct vmw_private *dev_priv) +static int vmw_dummy_query_bo_create(struct vmw_private *dev_priv) { + int ret; + struct ttm_buffer_object *bo; struct ttm_bo_kmap_obj map; volatile SVGA3dQueryResult *result; bool dummy; - int ret; - struct ttm_bo_device *bdev = &dev_priv->bdev; - struct ttm_buffer_object *bo = dev_priv->dummy_query_bo; - ttm_bo_reserve(bo, false, false, false, 0); - spin_lock(&bdev->fence_lock); - ret = ttm_bo_wait(bo, false, false, false); - spin_unlock(&bdev->fence_lock); + /* + * Create the bo as pinned, so that a tryreserve will + * immediately succeed. This is because we're the only + * user of the bo currently. + */ + ret = ttm_bo_create(&dev_priv->bdev, + PAGE_SIZE, + ttm_bo_type_device, + &vmw_sys_ne_placement, + 0, false, NULL, + &bo); + if (unlikely(ret != 0)) - (void) vmw_fallback_wait(dev_priv, false, true, 0, false, - 10*HZ); + return ret; + + ret = ttm_bo_reserve(bo, false, true, false, 0); + BUG_ON(ret != 0); ret = ttm_bo_kmap(bo, 0, 1, &map); if (likely(ret == 0)) { @@ -280,34 +327,19 @@ result->state = SVGA3D_QUERYSTATE_PENDING; result->result32 = 0xff; ttm_bo_kunmap(&map); - } else - DRM_ERROR("Dummy query buffer map failed.\n"); + } + vmw_bo_pin(bo, false); ttm_bo_unreserve(bo); -} + if (unlikely(ret != 0)) { + DRM_ERROR("Dummy query buffer map failed.\n"); + ttm_bo_unref(&bo); + } else + dev_priv->dummy_query_bo = bo; -/** - * vmw_dummy_query_bo_create - create a bo to hold a dummy query result - * - * @dev_priv: A device private structure. - * - * This function creates a small buffer object that holds the query - * result for dummy queries emitted as query barriers. - * No interruptible waits are done within this function. - * - * Returns an error if bo creation fails. - */ -static int vmw_dummy_query_bo_create(struct vmw_private *dev_priv) -{ - return ttm_bo_create(&dev_priv->bdev, - PAGE_SIZE, - ttm_bo_type_device, - &vmw_vram_sys_placement, - 0, false, NULL, - &dev_priv->dummy_query_bo); + return ret; } - static int vmw_request_device(struct vmw_private *dev_priv) { int ret; @@ -318,14 +350,24 @@ return ret; } vmw_fence_fifo_up(dev_priv->fman); + if (dev_priv->has_mob) { + ret = vmw_otables_setup(dev_priv); + if (unlikely(ret != 0)) { + DRM_ERROR("Unable to initialize " + "guest Memory OBjects.\n"); + goto out_no_mob; + } + } ret = vmw_dummy_query_bo_create(dev_priv); if (unlikely(ret != 0)) goto out_no_query_bo; - vmw_dummy_query_bo_prepare(dev_priv); return 0; out_no_query_bo: + if (dev_priv->has_mob) + vmw_otables_takedown(dev_priv); +out_no_mob: vmw_fence_fifo_down(dev_priv->fman); vmw_fifo_release(dev_priv, &dev_priv->fifo); return ret; @@ -341,10 +383,13 @@ BUG_ON(dev_priv->pinned_bo != NULL); ttm_bo_unref(&dev_priv->dummy_query_bo); + if (dev_priv->has_mob) + vmw_otables_takedown(dev_priv); vmw_fence_fifo_down(dev_priv->fman); vmw_fifo_release(dev_priv, &dev_priv->fifo); } + /** * Increase the 3d resource refcount. * If the count was prevously zero, initialize the fifo, switching to svga @@ -510,6 +555,33 @@ return 0; } +/** + * vmw_dma_masks - set required page- and dma masks + * + * @dev: Pointer to struct drm-device + * + * With 32-bit we can only handle 32 bit PFNs. Optionally set that + * restriction also for 64-bit systems. + */ +#ifdef CONFIG_INTEL_IOMMU +static int vmw_dma_masks(struct vmw_private *dev_priv) +{ + struct drm_device *dev = dev_priv->dev; + + if (intel_iommu_enabled && + (sizeof(unsigned long) == 4 || vmw_restrict_dma_mask)) { + DRM_INFO("Restricting DMA addresses to 44 bits.\n"); + return dma_set_mask(dev->dev, DMA_BIT_MASK(44)); + } + return 0; +} +#else +static int vmw_dma_masks(struct vmw_private *dev_priv) +{ + return 0; +} +#endif + static int vmw_driver_load(struct drm_device *dev, unsigned long chipset) { struct vmw_private *dev_priv; @@ -532,6 +604,7 @@ mutex_init(&dev_priv->hw_mutex); mutex_init(&dev_priv->cmdbuf_mutex); mutex_init(&dev_priv->release_mutex); + mutex_init(&dev_priv->binding_mutex); rwlock_init(&dev_priv->resource_lock); for (i = vmw_res_context; i < vmw_res_max; ++i) { @@ -578,14 +651,9 @@ vmw_get_initial_size(dev_priv); - if (dev_priv->capabilities & SVGA_CAP_GMR) { - dev_priv->max_gmr_descriptors = - vmw_read(dev_priv, - SVGA_REG_GMR_MAX_DESCRIPTOR_LENGTH); + if (dev_priv->capabilities & SVGA_CAP_GMR2) { dev_priv->max_gmr_ids = vmw_read(dev_priv, SVGA_REG_GMR_MAX_IDS); - } - if (dev_priv->capabilities & SVGA_CAP_GMR2) { dev_priv->max_gmr_pages = vmw_read(dev_priv, SVGA_REG_GMRS_MAX_PAGES); dev_priv->memory_size = @@ -598,23 +666,45 @@ */ dev_priv->memory_size = 512*1024*1024; } + dev_priv->max_mob_pages = 0; + dev_priv->max_mob_size = 0; + if (dev_priv->capabilities & SVGA_CAP_GBOBJECTS) { + uint64_t mem_size = + vmw_read(dev_priv, + SVGA_REG_SUGGESTED_GBOBJECT_MEM_SIZE_KB); + + dev_priv->max_mob_pages = mem_size * 1024 / PAGE_SIZE; + dev_priv->prim_bb_mem = + vmw_read(dev_priv, + SVGA_REG_MAX_PRIMARY_BOUNDING_BOX_MEM); + dev_priv->max_mob_size = + vmw_read(dev_priv, SVGA_REG_MOB_MAX_SIZE); + } else + dev_priv->prim_bb_mem = dev_priv->vram_size; + + ret = vmw_dma_masks(dev_priv); + if (unlikely(ret != 0)) { + mutex_unlock(&dev_priv->hw_mutex); + goto out_err0; + } + + if (unlikely(dev_priv->prim_bb_mem < dev_priv->vram_size)) + dev_priv->prim_bb_mem = dev_priv->vram_size; mutex_unlock(&dev_priv->hw_mutex); vmw_print_capabilities(dev_priv->capabilities); - if (dev_priv->capabilities & SVGA_CAP_GMR) { + if (dev_priv->capabilities & SVGA_CAP_GMR2) { DRM_INFO("Max GMR ids is %u\n", (unsigned)dev_priv->max_gmr_ids); - DRM_INFO("Max GMR descriptors is %u\n", - (unsigned)dev_priv->max_gmr_descriptors); - } - if (dev_priv->capabilities & SVGA_CAP_GMR2) { DRM_INFO("Max number of GMR pages is %u\n", (unsigned)dev_priv->max_gmr_pages); DRM_INFO("Max dedicated hypervisor surface memory is %u kiB\n", (unsigned)dev_priv->memory_size / 1024); } + DRM_INFO("Maximum display memory size is %u kiB\n", + dev_priv->prim_bb_mem / 1024); DRM_INFO("VRAM at 0x%08x size is %u kiB\n", dev_priv->vram_start, dev_priv->vram_size / 1024); DRM_INFO("MMIO at 0x%08x size is %u kiB\n", @@ -649,12 +739,22 @@ dev_priv->has_gmr = true; if (((dev_priv->capabilities & (SVGA_CAP_GMR | SVGA_CAP_GMR2)) == 0) || refuse_dma || ttm_bo_init_mm(&dev_priv->bdev, VMW_PL_GMR, - dev_priv->max_gmr_ids) != 0) { + VMW_PL_GMR) != 0) { DRM_INFO("No GMR memory available. " "Graphics memory resources are very limited.\n"); dev_priv->has_gmr = false; } + if (dev_priv->capabilities & SVGA_CAP_GBOBJECTS) { + dev_priv->has_mob = true; + if (ttm_bo_init_mm(&dev_priv->bdev, VMW_PL_MOB, + VMW_PL_MOB) != 0) { + DRM_INFO("No MOB memory available. " + "3D will be disabled.\n"); + dev_priv->has_mob = false; + } + } + dev_priv->mmio_mtrr = arch_phys_wc_add(dev_priv->mmio_start, dev_priv->mmio_size); @@ -757,6 +857,8 @@ iounmap(dev_priv->mmio_virt); out_err3: arch_phys_wc_del(dev_priv->mmio_mtrr); + if (dev_priv->has_mob) + (void) ttm_bo_clean_mm(&dev_priv->bdev, VMW_PL_MOB); if (dev_priv->has_gmr) (void) ttm_bo_clean_mm(&dev_priv->bdev, VMW_PL_GMR); (void)ttm_bo_clean_mm(&dev_priv->bdev, TTM_PL_VRAM); @@ -801,6 +903,8 @@ ttm_object_device_release(&dev_priv->tdev); iounmap(dev_priv->mmio_virt); arch_phys_wc_del(dev_priv->mmio_mtrr); + if (dev_priv->has_mob) + (void) ttm_bo_clean_mm(&dev_priv->bdev, VMW_PL_MOB); if (dev_priv->has_gmr) (void)ttm_bo_clean_mm(&dev_priv->bdev, VMW_PL_GMR); (void)ttm_bo_clean_mm(&dev_priv->bdev, TTM_PL_VRAM); @@ -840,6 +944,7 @@ drm_master_put(&vmw_fp->locked_master); } + vmw_compat_shader_man_destroy(vmw_fp->shman); ttm_object_file_release(&vmw_fp->tfile); kfree(vmw_fp); } @@ -859,11 +964,17 @@ if (unlikely(vmw_fp->tfile == NULL)) goto out_no_tfile; + vmw_fp->shman = vmw_compat_shader_man_create(dev_priv); + if (IS_ERR(vmw_fp->shman)) + goto out_no_shman; + file_priv->driver_priv = vmw_fp; dev_priv->bdev.dev_mapping = dev->dev_mapping; return 0; +out_no_shman: + ttm_object_file_release(&vmw_fp->tfile); out_no_tfile: kfree(vmw_fp); return ret; --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h @@ -40,9 +40,9 @@ #include #include "vmwgfx_fence.h" -#define VMWGFX_DRIVER_DATE "20120209" +#define VMWGFX_DRIVER_DATE "20140228" #define VMWGFX_DRIVER_MAJOR 2 -#define VMWGFX_DRIVER_MINOR 4 +#define VMWGFX_DRIVER_MINOR 5 #define VMWGFX_DRIVER_PATCHLEVEL 0 #define VMWGFX_FILE_PAGE_OFFSET 0x00100000 #define VMWGFX_FIFO_STATIC_SIZE (1024*1024) @@ -50,19 +50,39 @@ #define VMWGFX_MAX_VALIDATIONS 2048 #define VMWGFX_MAX_DISPLAYS 16 #define VMWGFX_CMD_BOUNCE_INIT_SIZE 32768 +#define VMWGFX_ENABLE_SCREEN_TARGET_OTABLE 0 + +/* + * Perhaps we should have sysfs entries for these. + */ +#define VMWGFX_NUM_GB_CONTEXT 256 +#define VMWGFX_NUM_GB_SHADER 20000 +#define VMWGFX_NUM_GB_SURFACE 32768 +#define VMWGFX_NUM_GB_SCREEN_TARGET VMWGFX_MAX_DISPLAYS +#define VMWGFX_NUM_MOB (VMWGFX_NUM_GB_CONTEXT +\ + VMWGFX_NUM_GB_SHADER +\ + VMWGFX_NUM_GB_SURFACE +\ + VMWGFX_NUM_GB_SCREEN_TARGET) #define VMW_PL_GMR TTM_PL_PRIV0 #define VMW_PL_FLAG_GMR TTM_PL_FLAG_PRIV0 +#define VMW_PL_MOB TTM_PL_PRIV1 +#define VMW_PL_FLAG_MOB TTM_PL_FLAG_PRIV1 #define VMW_RES_CONTEXT ttm_driver_type0 #define VMW_RES_SURFACE ttm_driver_type1 #define VMW_RES_STREAM ttm_driver_type2 #define VMW_RES_FENCE ttm_driver_type3 +#define VMW_RES_SHADER ttm_driver_type4 + +struct vmw_compat_shader_manager; struct vmw_fpriv { struct drm_master *locked_master; struct ttm_object_file *tfile; struct list_head fence_events; + bool gb_aware; + struct vmw_compat_shader_manager *shman; }; struct vmw_dma_buffer { @@ -82,6 +102,7 @@ struct vmw_validate_buffer { struct ttm_validate_buffer base; struct drm_hash_item hash; + bool validate_as_mob; }; struct vmw_res_func; @@ -98,6 +119,7 @@ const struct vmw_res_func *func; struct list_head lru_head; /* Protected by the resource lock */ struct list_head mob_head; /* Protected by @backup reserved */ + struct list_head binding_head; /* Protected by binding_mutex */ void (*res_free) (struct vmw_resource *res); void (*hw_destroy) (struct vmw_resource *res); }; @@ -106,6 +128,7 @@ vmw_res_context, vmw_res_surface, vmw_res_stream, + vmw_res_shader, vmw_res_max }; @@ -154,6 +177,7 @@ }; struct vmw_relocation { + SVGAMobId *mob_loc; SVGAGuestPtr *location; uint32_t index; }; @@ -229,11 +253,77 @@ struct page *(*page)(struct vmw_piter *); }; +/* + * enum vmw_ctx_binding_type - abstract resource to context binding types + */ +enum vmw_ctx_binding_type { + vmw_ctx_binding_shader, + vmw_ctx_binding_rt, + vmw_ctx_binding_tex, + vmw_ctx_binding_max +}; + +/** + * struct vmw_ctx_bindinfo - structure representing a single context binding + * + * @ctx: Pointer to the context structure. NULL means the binding is not + * active. + * @res: Non ref-counted pointer to the bound resource. + * @bt: The binding type. + * @i1: Union of information needed to unbind. + */ +struct vmw_ctx_bindinfo { + struct vmw_resource *ctx; + struct vmw_resource *res; + enum vmw_ctx_binding_type bt; + bool scrubbed; + union { + SVGA3dShaderType shader_type; + SVGA3dRenderTargetType rt_type; + uint32 texture_stage; + } i1; +}; + +/** + * struct vmw_ctx_binding - structure representing a single context binding + * - suitable for tracking in a context + * + * @ctx_list: List head for context. + * @res_list: List head for bound resource. + * @bi: Binding info + */ +struct vmw_ctx_binding { + struct list_head ctx_list; + struct list_head res_list; + struct vmw_ctx_bindinfo bi; +}; + + +/** + * struct vmw_ctx_binding_state - context binding state + * + * @list: linked list of individual bindings. + * @render_targets: Render target bindings. + * @texture_units: Texture units/samplers bindings. + * @shaders: Shader bindings. + * + * Note that this structure also provides storage space for the individual + * struct vmw_ctx_binding objects, so that no dynamic allocation is needed + * for individual bindings. + * + */ +struct vmw_ctx_binding_state { + struct list_head list; + struct vmw_ctx_binding render_targets[SVGA3D_RT_MAX]; + struct vmw_ctx_binding texture_units[SVGA3D_NUM_TEXTURE_UNITS]; + struct vmw_ctx_binding shaders[SVGA3D_SHADERTYPE_MAX]; +}; + struct vmw_sw_context{ struct drm_open_hash res_ht; bool res_ht_initialized; bool kernel; /**< is the called made from the kernel */ - struct ttm_object_file *tfile; + struct vmw_fpriv *fp; struct list_head validate_nodes; struct vmw_relocation relocs[VMWGFX_MAX_RELOCATIONS]; uint32_t cur_reloc; @@ -250,6 +340,8 @@ struct vmw_resource *last_query_ctx; bool needs_post_query_barrier; struct vmw_resource *error_resource; + struct vmw_ctx_binding_state staged_bindings; + struct list_head staged_shaders; }; struct vmw_legacy_display; @@ -281,6 +373,7 @@ unsigned int io_start; uint32_t vram_start; uint32_t vram_size; + uint32_t prim_bb_mem; uint32_t mmio_start; uint32_t mmio_size; uint32_t fb_max_width; @@ -290,11 +383,13 @@ __le32 __iomem *mmio_virt; int mmio_mtrr; uint32_t capabilities; - uint32_t max_gmr_descriptors; uint32_t max_gmr_ids; uint32_t max_gmr_pages; + uint32_t max_mob_pages; + uint32_t max_mob_size; uint32_t memory_size; bool has_gmr; + bool has_mob; struct mutex hw_mutex; /* @@ -370,6 +465,7 @@ struct vmw_sw_context ctx; struct mutex cmdbuf_mutex; + struct mutex binding_mutex; /** * Operating mode. @@ -415,6 +511,12 @@ * DMA mapping stuff. */ enum vmw_dma_map_mode map_mode; + + /* + * Guest Backed stuff + */ + struct ttm_buffer_object *otable_bo; + struct vmw_otable *otables; }; static inline struct vmw_surface *vmw_res_to_srf(struct vmw_resource *res) @@ -471,23 +573,14 @@ * Resource utilities - vmwgfx_resource.c */ struct vmw_user_resource_conv; -extern const struct vmw_user_resource_conv *user_surface_converter; -extern const struct vmw_user_resource_conv *user_context_converter; -extern struct vmw_resource *vmw_context_alloc(struct vmw_private *dev_priv); extern void vmw_resource_unreference(struct vmw_resource **p_res); extern struct vmw_resource *vmw_resource_reference(struct vmw_resource *res); +extern struct vmw_resource * +vmw_resource_reference_unless_doomed(struct vmw_resource *res); extern int vmw_resource_validate(struct vmw_resource *res); extern int vmw_resource_reserve(struct vmw_resource *res, bool no_backup); extern bool vmw_resource_needs_backup(const struct vmw_resource *res); -extern int vmw_context_destroy_ioctl(struct drm_device *dev, void *data, - struct drm_file *file_priv); -extern int vmw_context_define_ioctl(struct drm_device *dev, void *data, - struct drm_file *file_priv); -extern int vmw_context_check(struct vmw_private *dev_priv, - struct ttm_object_file *tfile, - int id, - struct vmw_resource **p_res); extern int vmw_user_lookup_handle(struct vmw_private *dev_priv, struct ttm_object_file *tfile, uint32_t handle, @@ -499,18 +592,6 @@ uint32_t handle, const struct vmw_user_resource_conv *converter, struct vmw_resource **p_res); -extern void vmw_surface_res_free(struct vmw_resource *res); -extern int vmw_surface_destroy_ioctl(struct drm_device *dev, void *data, - struct drm_file *file_priv); -extern int vmw_surface_define_ioctl(struct drm_device *dev, void *data, - struct drm_file *file_priv); -extern int vmw_surface_reference_ioctl(struct drm_device *dev, void *data, - struct drm_file *file_priv); -extern int vmw_surface_check(struct vmw_private *dev_priv, - struct ttm_object_file *tfile, - uint32_t handle, int *id); -extern int vmw_surface_validate(struct vmw_private *dev_priv, - struct vmw_surface *srf); extern void vmw_dmabuf_bo_free(struct ttm_buffer_object *bo); extern int vmw_dmabuf_init(struct vmw_private *dev_priv, struct vmw_dma_buffer *vmw_bo, @@ -519,10 +600,21 @@ void (*bo_free) (struct ttm_buffer_object *bo)); extern int vmw_user_dmabuf_verify_access(struct ttm_buffer_object *bo, struct ttm_object_file *tfile); +extern int vmw_user_dmabuf_alloc(struct vmw_private *dev_priv, + struct ttm_object_file *tfile, + uint32_t size, + bool shareable, + uint32_t *handle, + struct vmw_dma_buffer **p_dma_buf); +extern int vmw_user_dmabuf_reference(struct ttm_object_file *tfile, + struct vmw_dma_buffer *dma_buf, + uint32_t *handle); extern int vmw_dmabuf_alloc_ioctl(struct drm_device *dev, void *data, struct drm_file *file_priv); extern int vmw_dmabuf_unref_ioctl(struct drm_device *dev, void *data, struct drm_file *file_priv); +extern int vmw_user_dmabuf_synccpu_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv); extern uint32_t vmw_dmabuf_validate_node(struct ttm_buffer_object *bo, uint32_t cur_validate_node); extern void vmw_dmabuf_validate_clear(struct ttm_buffer_object *bo); @@ -622,10 +714,16 @@ extern struct ttm_placement vmw_vram_gmr_placement; extern struct ttm_placement vmw_vram_gmr_ne_placement; extern struct ttm_placement vmw_sys_placement; +extern struct ttm_placement vmw_sys_ne_placement; extern struct ttm_placement vmw_evictable_placement; extern struct ttm_placement vmw_srf_placement; +extern struct ttm_placement vmw_mob_placement; extern struct ttm_bo_driver vmw_bo_driver; extern int vmw_dma_quiescent(struct drm_device *dev); +extern int vmw_bo_map_dma(struct ttm_buffer_object *bo); +extern void vmw_bo_unmap_dma(struct ttm_buffer_object *bo); +extern const struct vmw_sg_table * +vmw_bo_sg_table(struct ttm_buffer_object *bo); extern void vmw_piter_start(struct vmw_piter *viter, const struct vmw_sg_table *vsgt, unsigned long p_offs); @@ -832,6 +930,101 @@ uint32_t handle, uint32_t flags, int *prime_fd); +/* + * MemoryOBject management - vmwgfx_mob.c + */ +struct vmw_mob; +extern int vmw_mob_bind(struct vmw_private *dev_priv, struct vmw_mob *mob, + const struct vmw_sg_table *vsgt, + unsigned long num_data_pages, int32_t mob_id); +extern void vmw_mob_unbind(struct vmw_private *dev_priv, + struct vmw_mob *mob); +extern void vmw_mob_destroy(struct vmw_mob *mob); +extern struct vmw_mob *vmw_mob_create(unsigned long data_pages); +extern int vmw_otables_setup(struct vmw_private *dev_priv); +extern void vmw_otables_takedown(struct vmw_private *dev_priv); + +/* + * Context management - vmwgfx_context.c + */ + +extern const struct vmw_user_resource_conv *user_context_converter; + +extern struct vmw_resource *vmw_context_alloc(struct vmw_private *dev_priv); + +extern int vmw_context_check(struct vmw_private *dev_priv, + struct ttm_object_file *tfile, + int id, + struct vmw_resource **p_res); +extern int vmw_context_define_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv); +extern int vmw_context_destroy_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv); +extern int vmw_context_binding_add(struct vmw_ctx_binding_state *cbs, + const struct vmw_ctx_bindinfo *ci); +extern void +vmw_context_binding_state_transfer(struct vmw_resource *res, + struct vmw_ctx_binding_state *cbs); +extern void vmw_context_binding_res_list_kill(struct list_head *head); +extern void vmw_context_binding_res_list_scrub(struct list_head *head); +extern int vmw_context_rebind_all(struct vmw_resource *ctx); +extern struct list_head *vmw_context_binding_list(struct vmw_resource *ctx); + +/* + * Surface management - vmwgfx_surface.c + */ + +extern const struct vmw_user_resource_conv *user_surface_converter; + +extern void vmw_surface_res_free(struct vmw_resource *res); +extern int vmw_surface_destroy_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv); +extern int vmw_surface_define_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv); +extern int vmw_surface_reference_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv); +extern int vmw_gb_surface_define_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv); +extern int vmw_gb_surface_reference_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv); +extern int vmw_surface_check(struct vmw_private *dev_priv, + struct ttm_object_file *tfile, + uint32_t handle, int *id); +extern int vmw_surface_validate(struct vmw_private *dev_priv, + struct vmw_surface *srf); + +/* + * Shader management - vmwgfx_shader.c + */ + +extern const struct vmw_user_resource_conv *user_shader_converter; + +extern int vmw_shader_define_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv); +extern int vmw_shader_destroy_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv); +extern int vmw_compat_shader_lookup(struct vmw_compat_shader_manager *man, + SVGA3dShaderType shader_type, + u32 *user_key); +extern void vmw_compat_shaders_commit(struct vmw_compat_shader_manager *man, + struct list_head *list); +extern void vmw_compat_shaders_revert(struct vmw_compat_shader_manager *man, + struct list_head *list); +extern int vmw_compat_shader_remove(struct vmw_compat_shader_manager *man, + u32 user_key, + SVGA3dShaderType shader_type, + struct list_head *list); +extern int vmw_compat_shader_add(struct vmw_compat_shader_manager *man, + u32 user_key, const void *bytecode, + SVGA3dShaderType shader_type, + size_t size, + struct ttm_object_file *tfile, + struct list_head *list); +extern struct vmw_compat_shader_manager * +vmw_compat_shader_man_create(struct vmw_private *dev_priv); +extern void +vmw_compat_shader_man_destroy(struct vmw_compat_shader_manager *man); + /** * Inline helper functions --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c @@ -54,6 +54,8 @@ * @res: Ref-counted pointer to the resource. * @switch_backup: Boolean whether to switch backup buffer on unreserve. * @new_backup: Refcounted pointer to the new backup buffer. + * @staged_bindings: If @res is a context, tracks bindings set up during + * the command batch. Otherwise NULL. * @new_backup_offset: New backup buffer offset if @new_backup is non-NUll. * @first_usage: Set to true the first time the resource is referenced in * the command stream. @@ -65,12 +67,32 @@ struct drm_hash_item hash; struct vmw_resource *res; struct vmw_dma_buffer *new_backup; + struct vmw_ctx_binding_state *staged_bindings; unsigned long new_backup_offset; bool first_usage; bool no_buffer_needed; }; /** + * struct vmw_cmd_entry - Describe a command for the verifier + * + * @user_allow: Whether allowed from the execbuf ioctl. + * @gb_disable: Whether disabled if guest-backed objects are available. + * @gb_enable: Whether enabled iff guest-backed objects are available. + */ +struct vmw_cmd_entry { + int (*func) (struct vmw_private *, struct vmw_sw_context *, + SVGA3dCmdHeader *); + bool user_allow; + bool gb_disable; + bool gb_enable; +}; + +#define VMW_CMD_DEF(_cmd, _func, _user_allow, _gb_disable, _gb_enable) \ + [(_cmd) - SVGA_3D_CMD_BASE] = {(_func), (_user_allow),\ + (_gb_disable), (_gb_enable)} + +/** * vmw_resource_unreserve - unreserve resources previously reserved for * command submission. * @@ -87,6 +109,18 @@ struct vmw_dma_buffer *new_backup = backoff ? NULL : val->new_backup; + /* + * Transfer staged context bindings to the + * persistent context binding tracker. + */ + if (unlikely(val->staged_bindings)) { + if (!backoff) { + vmw_context_binding_state_transfer + (val->res, val->staged_bindings); + } + kfree(val->staged_bindings); + val->staged_bindings = NULL; + } vmw_resource_unreserve(res, new_backup, val->new_backup_offset); vmw_dmabuf_unreference(&val->new_backup); @@ -146,6 +180,44 @@ } /** + * vmw_resource_context_res_add - Put resources previously bound to a context on + * the validation list + * + * @dev_priv: Pointer to a device private structure + * @sw_context: Pointer to a software context used for this command submission + * @ctx: Pointer to the context resource + * + * This function puts all resources that were previously bound to @ctx on + * the resource validation list. This is part of the context state reemission + */ +static int vmw_resource_context_res_add(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + struct vmw_resource *ctx) +{ + struct list_head *binding_list; + struct vmw_ctx_binding *entry; + int ret = 0; + struct vmw_resource *res; + + mutex_lock(&dev_priv->binding_mutex); + binding_list = vmw_context_binding_list(ctx); + + list_for_each_entry(entry, binding_list, ctx_list) { + res = vmw_resource_reference_unless_doomed(entry->bi.res); + if (unlikely(res == NULL)) + continue; + + ret = vmw_resource_val_add(sw_context, entry->bi.res, NULL); + vmw_resource_unreference(&res); + if (unlikely(ret != 0)) + break; + } + + mutex_unlock(&dev_priv->binding_mutex); + return ret; +} + +/** * vmw_resource_relocation_add - Add a relocation to the relocation list * * @list: Pointer to head of relocation list. @@ -201,8 +273,12 @@ { struct vmw_resource_relocation *rel; - list_for_each_entry(rel, list, head) - cb[rel->offset] = rel->res->id; + list_for_each_entry(rel, list, head) { + if (likely(rel->res != NULL)) + cb[rel->offset] = rel->res->id; + else + cb[rel->offset] = SVGA_3D_CMD_NOP; + } } static int vmw_cmd_invalid(struct vmw_private *dev_priv, @@ -224,6 +300,7 @@ * * @sw_context: The software context used for this command submission batch. * @bo: The buffer object to add. + * @validate_as_mob: Validate this buffer as a MOB. * @p_val_node: If non-NULL Will be updated with the validate node number * on return. * @@ -232,6 +309,7 @@ */ static int vmw_bo_to_validate_list(struct vmw_sw_context *sw_context, struct ttm_buffer_object *bo, + bool validate_as_mob, uint32_t *p_val_node) { uint32_t val_node; @@ -244,6 +322,10 @@ &hash) == 0)) { vval_buf = container_of(hash, struct vmw_validate_buffer, hash); + if (unlikely(vval_buf->validate_as_mob != validate_as_mob)) { + DRM_ERROR("Inconsistent buffer usage.\n"); + return -EINVAL; + } val_buf = &vval_buf->base; val_node = vval_buf - sw_context->val_bufs; } else { @@ -266,6 +348,7 @@ val_buf->bo = ttm_bo_reference(bo); val_buf->reserved = false; list_add_tail(&val_buf->head, &sw_context->validate_nodes); + vval_buf->validate_as_mob = validate_as_mob; } sw_context->fence_flags |= DRM_VMW_FENCE_FLAG_EXEC; @@ -302,7 +385,8 @@ struct ttm_buffer_object *bo = &res->backup->base; ret = vmw_bo_to_validate_list - (sw_context, bo, NULL); + (sw_context, bo, + vmw_resource_needs_backup(res), NULL); if (unlikely(ret != 0)) return ret; @@ -339,22 +423,27 @@ } /** - * vmw_cmd_res_check - Check that a resource is present and if so, put it + * vmw_cmd_compat_res_check - Check that a resource is present and if so, put it * on the resource validate list unless it's already there. * * @dev_priv: Pointer to a device private structure. * @sw_context: Pointer to the software context. * @res_type: Resource type. * @converter: User-space visisble type specific information. - * @id: Pointer to the location in the command buffer currently being + * @id: user-space resource id handle. + * @id_loc: Pointer to the location in the command buffer currently being * parsed from where the user-space resource id handle is located. + * @p_val: Pointer to pointer to resource validalidation node. Populated + * on exit. */ -static int vmw_cmd_res_check(struct vmw_private *dev_priv, - struct vmw_sw_context *sw_context, - enum vmw_res_type res_type, - const struct vmw_user_resource_conv *converter, - uint32_t *id, - struct vmw_resource_val_node **p_val) +static int +vmw_cmd_compat_res_check(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + enum vmw_res_type res_type, + const struct vmw_user_resource_conv *converter, + uint32_t id, + uint32_t *id_loc, + struct vmw_resource_val_node **p_val) { struct vmw_res_cache_entry *rcache = &sw_context->res_cache[res_type]; @@ -362,15 +451,22 @@ struct vmw_resource_val_node *node; int ret; - if (*id == SVGA3D_INVALID_ID) + if (id == SVGA3D_INVALID_ID) { + if (p_val) + *p_val = NULL; + if (res_type == vmw_res_context) { + DRM_ERROR("Illegal context invalid id.\n"); + return -EINVAL; + } return 0; + } /* * Fastpath in case of repeated commands referencing the same * resource */ - if (likely(rcache->valid && *id == rcache->handle)) { + if (likely(rcache->valid && id == rcache->handle)) { const struct vmw_resource *res = rcache->res; rcache->node->first_usage = false; @@ -379,28 +475,28 @@ return vmw_resource_relocation_add (&sw_context->res_relocations, res, - id - sw_context->buf_start); + id_loc - sw_context->buf_start); } ret = vmw_user_resource_lookup_handle(dev_priv, - sw_context->tfile, - *id, + sw_context->fp->tfile, + id, converter, &res); if (unlikely(ret != 0)) { DRM_ERROR("Could not find or use resource 0x%08x.\n", - (unsigned) *id); + (unsigned) id); dump_stack(); return ret; } rcache->valid = true; rcache->res = res; - rcache->handle = *id; + rcache->handle = id; ret = vmw_resource_relocation_add(&sw_context->res_relocations, res, - id - sw_context->buf_start); + id_loc - sw_context->buf_start); if (unlikely(ret != 0)) goto out_no_reloc; @@ -411,6 +507,22 @@ rcache->node = node; if (p_val) *p_val = node; + + if (dev_priv->has_mob && node->first_usage && + res_type == vmw_res_context) { + ret = vmw_resource_context_res_add(dev_priv, sw_context, res); + if (unlikely(ret != 0)) + goto out_no_reloc; + node->staged_bindings = + kzalloc(sizeof(*node->staged_bindings), GFP_KERNEL); + if (node->staged_bindings == NULL) { + DRM_ERROR("Failed to allocate context binding " + "information.\n"); + goto out_no_reloc; + } + INIT_LIST_HEAD(&node->staged_bindings->list); + } + vmw_resource_unreference(&res); return 0; @@ -422,6 +534,59 @@ } /** + * vmw_cmd_res_check - Check that a resource is present and if so, put it + * on the resource validate list unless it's already there. + * + * @dev_priv: Pointer to a device private structure. + * @sw_context: Pointer to the software context. + * @res_type: Resource type. + * @converter: User-space visisble type specific information. + * @id_loc: Pointer to the location in the command buffer currently being + * parsed from where the user-space resource id handle is located. + * @p_val: Pointer to pointer to resource validalidation node. Populated + * on exit. + */ +static int +vmw_cmd_res_check(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + enum vmw_res_type res_type, + const struct vmw_user_resource_conv *converter, + uint32_t *id_loc, + struct vmw_resource_val_node **p_val) +{ + return vmw_cmd_compat_res_check(dev_priv, sw_context, res_type, + converter, *id_loc, id_loc, p_val); +} + +/** + * vmw_rebind_contexts - Rebind all resources previously bound to + * referenced contexts. + * + * @sw_context: Pointer to the software context. + * + * Rebind context binding points that have been scrubbed because of eviction. + */ +static int vmw_rebind_contexts(struct vmw_sw_context *sw_context) +{ + struct vmw_resource_val_node *val; + int ret; + + list_for_each_entry(val, &sw_context->resource_list, head) { + if (likely(!val->staged_bindings)) + continue; + + ret = vmw_context_rebind_all(val->res); + if (unlikely(ret != 0)) { + if (ret != -ERESTARTSYS) + DRM_ERROR("Failed to rebind context.\n"); + return ret; + } + } + + return 0; +} + +/** * vmw_cmd_cid_check - Check a command header for valid context information. * * @dev_priv: Pointer to a device private structure. @@ -437,7 +602,7 @@ { struct vmw_cid_cmd { SVGA3dCmdHeader header; - __le32 cid; + uint32_t cid; } *cmd; cmd = container_of(header, struct vmw_cid_cmd, header); @@ -453,17 +618,35 @@ SVGA3dCmdHeader header; SVGA3dCmdSetRenderTarget body; } *cmd; + struct vmw_resource_val_node *ctx_node; + struct vmw_resource_val_node *res_node; int ret; - ret = vmw_cmd_cid_check(dev_priv, sw_context, header); + cmd = container_of(header, struct vmw_sid_cmd, header); + + ret = vmw_cmd_res_check(dev_priv, sw_context, vmw_res_context, + user_context_converter, &cmd->body.cid, + &ctx_node); if (unlikely(ret != 0)) return ret; - cmd = container_of(header, struct vmw_sid_cmd, header); ret = vmw_cmd_res_check(dev_priv, sw_context, vmw_res_surface, user_surface_converter, - &cmd->body.target.sid, NULL); - return ret; + &cmd->body.target.sid, &res_node); + if (unlikely(ret != 0)) + return ret; + + if (dev_priv->has_mob) { + struct vmw_ctx_bindinfo bi; + + bi.ctx = ctx_node->res; + bi.res = res_node ? res_node->res : NULL; + bi.bt = vmw_ctx_binding_rt; + bi.i1.rt_type = cmd->body.type; + return vmw_context_binding_add(ctx_node->staged_bindings, &bi); + } + + return 0; } static int vmw_cmd_surface_copy_check(struct vmw_private *dev_priv, @@ -519,11 +702,6 @@ cmd = container_of(header, struct vmw_sid_cmd, header); - if (unlikely(!sw_context->kernel)) { - DRM_ERROR("Kernel only SVGA3d command: %u.\n", cmd->header.id); - return -EPERM; - } - return vmw_cmd_res_check(dev_priv, sw_context, vmw_res_surface, user_surface_converter, &cmd->body.srcImage.sid, NULL); @@ -541,11 +719,6 @@ cmd = container_of(header, struct vmw_sid_cmd, header); - if (unlikely(!sw_context->kernel)) { - DRM_ERROR("Kernel only SVGA3d command: %u.\n", cmd->header.id); - return -EPERM; - } - return vmw_cmd_res_check(dev_priv, sw_context, vmw_res_surface, user_surface_converter, &cmd->body.sid, NULL); @@ -586,7 +759,7 @@ sw_context->needs_post_query_barrier = true; ret = vmw_bo_to_validate_list(sw_context, sw_context->cur_query_bo, - NULL); + dev_priv->has_mob, NULL); if (unlikely(ret != 0)) return ret; } @@ -594,7 +767,7 @@ ret = vmw_bo_to_validate_list(sw_context, dev_priv->dummy_query_bo, - NULL); + dev_priv->has_mob, NULL); if (unlikely(ret != 0)) return ret; @@ -672,6 +845,66 @@ } /** + * vmw_translate_mob_pointer - Prepare to translate a user-space buffer + * handle to a MOB id. + * + * @dev_priv: Pointer to a device private structure. + * @sw_context: The software context used for this command batch validation. + * @id: Pointer to the user-space handle to be translated. + * @vmw_bo_p: Points to a location that, on successful return will carry + * a reference-counted pointer to the DMA buffer identified by the + * user-space handle in @id. + * + * This function saves information needed to translate a user-space buffer + * handle to a MOB id. The translation does not take place immediately, but + * during a call to vmw_apply_relocations(). This function builds a relocation + * list and a list of buffers to validate. The former needs to be freed using + * either vmw_apply_relocations() or vmw_free_relocations(). The latter + * needs to be freed using vmw_clear_validations. + */ +static int vmw_translate_mob_ptr(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + SVGAMobId *id, + struct vmw_dma_buffer **vmw_bo_p) +{ + struct vmw_dma_buffer *vmw_bo = NULL; + struct ttm_buffer_object *bo; + uint32_t handle = *id; + struct vmw_relocation *reloc; + int ret; + + ret = vmw_user_dmabuf_lookup(sw_context->fp->tfile, handle, &vmw_bo); + if (unlikely(ret != 0)) { + DRM_ERROR("Could not find or use MOB buffer.\n"); + return -EINVAL; + } + bo = &vmw_bo->base; + + if (unlikely(sw_context->cur_reloc >= VMWGFX_MAX_RELOCATIONS)) { + DRM_ERROR("Max number relocations per submission" + " exceeded\n"); + ret = -EINVAL; + goto out_no_reloc; + } + + reloc = &sw_context->relocs[sw_context->cur_reloc++]; + reloc->mob_loc = id; + reloc->location = NULL; + + ret = vmw_bo_to_validate_list(sw_context, bo, true, &reloc->index); + if (unlikely(ret != 0)) + goto out_no_reloc; + + *vmw_bo_p = vmw_bo; + return 0; + +out_no_reloc: + vmw_dmabuf_unreference(&vmw_bo); + vmw_bo_p = NULL; + return ret; +} + +/** * vmw_translate_guest_pointer - Prepare to translate a user-space buffer * handle to a valid SVGAGuestPtr * @@ -701,7 +934,7 @@ struct vmw_relocation *reloc; int ret; - ret = vmw_user_dmabuf_lookup(sw_context->tfile, handle, &vmw_bo); + ret = vmw_user_dmabuf_lookup(sw_context->fp->tfile, handle, &vmw_bo); if (unlikely(ret != 0)) { DRM_ERROR("Could not find or use GMR region.\n"); return -EINVAL; @@ -718,7 +951,7 @@ reloc = &sw_context->relocs[sw_context->cur_reloc++]; reloc->location = ptr; - ret = vmw_bo_to_validate_list(sw_context, bo, &reloc->index); + ret = vmw_bo_to_validate_list(sw_context, bo, false, &reloc->index); if (unlikely(ret != 0)) goto out_no_reloc; @@ -732,6 +965,30 @@ } /** + * vmw_cmd_begin_gb_query - validate a SVGA_3D_CMD_BEGIN_GB_QUERY command. + * + * @dev_priv: Pointer to a device private struct. + * @sw_context: The software context used for this command submission. + * @header: Pointer to the command header in the command stream. + */ +static int vmw_cmd_begin_gb_query(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + SVGA3dCmdHeader *header) +{ + struct vmw_begin_gb_query_cmd { + SVGA3dCmdHeader header; + SVGA3dCmdBeginGBQuery q; + } *cmd; + + cmd = container_of(header, struct vmw_begin_gb_query_cmd, + header); + + return vmw_cmd_res_check(dev_priv, sw_context, vmw_res_context, + user_context_converter, &cmd->q.cid, + NULL); +} + +/** * vmw_cmd_begin_query - validate a SVGA_3D_CMD_BEGIN_QUERY command. * * @dev_priv: Pointer to a device private struct. @@ -750,12 +1007,64 @@ cmd = container_of(header, struct vmw_begin_query_cmd, header); + if (unlikely(dev_priv->has_mob)) { + struct { + SVGA3dCmdHeader header; + SVGA3dCmdBeginGBQuery q; + } gb_cmd; + + BUG_ON(sizeof(gb_cmd) != sizeof(*cmd)); + + gb_cmd.header.id = SVGA_3D_CMD_BEGIN_GB_QUERY; + gb_cmd.header.size = cmd->header.size; + gb_cmd.q.cid = cmd->q.cid; + gb_cmd.q.type = cmd->q.type; + + memcpy(cmd, &gb_cmd, sizeof(*cmd)); + return vmw_cmd_begin_gb_query(dev_priv, sw_context, header); + } + return vmw_cmd_res_check(dev_priv, sw_context, vmw_res_context, user_context_converter, &cmd->q.cid, NULL); } /** + * vmw_cmd_end_gb_query - validate a SVGA_3D_CMD_END_GB_QUERY command. + * + * @dev_priv: Pointer to a device private struct. + * @sw_context: The software context used for this command submission. + * @header: Pointer to the command header in the command stream. + */ +static int vmw_cmd_end_gb_query(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + SVGA3dCmdHeader *header) +{ + struct vmw_dma_buffer *vmw_bo; + struct vmw_query_cmd { + SVGA3dCmdHeader header; + SVGA3dCmdEndGBQuery q; + } *cmd; + int ret; + + cmd = container_of(header, struct vmw_query_cmd, header); + ret = vmw_cmd_cid_check(dev_priv, sw_context, header); + if (unlikely(ret != 0)) + return ret; + + ret = vmw_translate_mob_ptr(dev_priv, sw_context, + &cmd->q.mobid, + &vmw_bo); + if (unlikely(ret != 0)) + return ret; + + ret = vmw_query_bo_switch_prepare(dev_priv, &vmw_bo->base, sw_context); + + vmw_dmabuf_unreference(&vmw_bo); + return ret; +} + +/** * vmw_cmd_end_query - validate a SVGA_3D_CMD_END_QUERY command. * * @dev_priv: Pointer to a device private struct. @@ -774,6 +1083,25 @@ int ret; cmd = container_of(header, struct vmw_query_cmd, header); + if (dev_priv->has_mob) { + struct { + SVGA3dCmdHeader header; + SVGA3dCmdEndGBQuery q; + } gb_cmd; + + BUG_ON(sizeof(gb_cmd) != sizeof(*cmd)); + + gb_cmd.header.id = SVGA_3D_CMD_END_GB_QUERY; + gb_cmd.header.size = cmd->header.size; + gb_cmd.q.cid = cmd->q.cid; + gb_cmd.q.type = cmd->q.type; + gb_cmd.q.mobid = cmd->q.guestResult.gmrId; + gb_cmd.q.offset = cmd->q.guestResult.offset; + + memcpy(cmd, &gb_cmd, sizeof(*cmd)); + return vmw_cmd_end_gb_query(dev_priv, sw_context, header); + } + ret = vmw_cmd_cid_check(dev_priv, sw_context, header); if (unlikely(ret != 0)) return ret; @@ -790,7 +1118,40 @@ return ret; } -/* +/** + * vmw_cmd_wait_gb_query - validate a SVGA_3D_CMD_WAIT_GB_QUERY command. + * + * @dev_priv: Pointer to a device private struct. + * @sw_context: The software context used for this command submission. + * @header: Pointer to the command header in the command stream. + */ +static int vmw_cmd_wait_gb_query(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + SVGA3dCmdHeader *header) +{ + struct vmw_dma_buffer *vmw_bo; + struct vmw_query_cmd { + SVGA3dCmdHeader header; + SVGA3dCmdWaitForGBQuery q; + } *cmd; + int ret; + + cmd = container_of(header, struct vmw_query_cmd, header); + ret = vmw_cmd_cid_check(dev_priv, sw_context, header); + if (unlikely(ret != 0)) + return ret; + + ret = vmw_translate_mob_ptr(dev_priv, sw_context, + &cmd->q.mobid, + &vmw_bo); + if (unlikely(ret != 0)) + return ret; + + vmw_dmabuf_unreference(&vmw_bo); + return 0; +} + +/** * vmw_cmd_wait_query - validate a SVGA_3D_CMD_WAIT_QUERY command. * * @dev_priv: Pointer to a device private struct. @@ -809,6 +1170,25 @@ int ret; cmd = container_of(header, struct vmw_query_cmd, header); + if (dev_priv->has_mob) { + struct { + SVGA3dCmdHeader header; + SVGA3dCmdWaitForGBQuery q; + } gb_cmd; + + BUG_ON(sizeof(gb_cmd) != sizeof(*cmd)); + + gb_cmd.header.id = SVGA_3D_CMD_WAIT_FOR_GB_QUERY; + gb_cmd.header.size = cmd->header.size; + gb_cmd.q.cid = cmd->q.cid; + gb_cmd.q.type = cmd->q.type; + gb_cmd.q.mobid = cmd->q.guestResult.gmrId; + gb_cmd.q.offset = cmd->q.guestResult.offset; + + memcpy(cmd, &gb_cmd, sizeof(*cmd)); + return vmw_cmd_wait_gb_query(dev_priv, sw_context, header); + } + ret = vmw_cmd_cid_check(dev_priv, sw_context, header); if (unlikely(ret != 0)) return ret; @@ -853,7 +1233,8 @@ srf = vmw_res_to_srf(sw_context->res_cache[vmw_res_surface].res); - vmw_kms_cursor_snoop(srf, sw_context->tfile, &vmw_bo->base, header); + vmw_kms_cursor_snoop(srf, sw_context->fp->tfile, &vmw_bo->base, + header); out_no_surface: vmw_dmabuf_unreference(&vmw_bo); @@ -921,15 +1302,22 @@ struct vmw_tex_state_cmd { SVGA3dCmdHeader header; SVGA3dCmdSetTextureState state; - }; + } *cmd; SVGA3dTextureState *last_state = (SVGA3dTextureState *) ((unsigned long) header + header->size + sizeof(header)); SVGA3dTextureState *cur_state = (SVGA3dTextureState *) ((unsigned long) header + sizeof(struct vmw_tex_state_cmd)); + struct vmw_resource_val_node *ctx_node; + struct vmw_resource_val_node *res_node; int ret; - ret = vmw_cmd_cid_check(dev_priv, sw_context, header); + cmd = container_of(header, struct vmw_tex_state_cmd, + header); + + ret = vmw_cmd_res_check(dev_priv, sw_context, vmw_res_context, + user_context_converter, &cmd->state.cid, + &ctx_node); if (unlikely(ret != 0)) return ret; @@ -939,9 +1327,20 @@ ret = vmw_cmd_res_check(dev_priv, sw_context, vmw_res_surface, user_surface_converter, - &cur_state->value, NULL); + &cur_state->value, &res_node); if (unlikely(ret != 0)) return ret; + + if (dev_priv->has_mob) { + struct vmw_ctx_bindinfo bi; + + bi.ctx = ctx_node->res; + bi.res = res_node ? res_node->res : NULL; + bi.bt = vmw_ctx_binding_tex; + bi.i1.texture_stage = cur_state->stage; + vmw_context_binding_add(ctx_node->staged_bindings, + &bi); + } } return 0; @@ -971,6 +1370,314 @@ } /** + * vmw_cmd_switch_backup - Utility function to handle backup buffer switching + * + * @dev_priv: Pointer to a device private struct. + * @sw_context: The software context being used for this batch. + * @res_type: The resource type. + * @converter: Information about user-space binding for this resource type. + * @res_id: Pointer to the user-space resource handle in the command stream. + * @buf_id: Pointer to the user-space backup buffer handle in the command + * stream. + * @backup_offset: Offset of backup into MOB. + * + * This function prepares for registering a switch of backup buffers + * in the resource metadata just prior to unreserving. + */ +static int vmw_cmd_switch_backup(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + enum vmw_res_type res_type, + const struct vmw_user_resource_conv + *converter, + uint32_t *res_id, + uint32_t *buf_id, + unsigned long backup_offset) +{ + int ret; + struct vmw_dma_buffer *dma_buf; + struct vmw_resource_val_node *val_node; + + ret = vmw_cmd_res_check(dev_priv, sw_context, res_type, + converter, res_id, &val_node); + if (unlikely(ret != 0)) + return ret; + + ret = vmw_translate_mob_ptr(dev_priv, sw_context, buf_id, &dma_buf); + if (unlikely(ret != 0)) + return ret; + + if (val_node->first_usage) + val_node->no_buffer_needed = true; + + vmw_dmabuf_unreference(&val_node->new_backup); + val_node->new_backup = dma_buf; + val_node->new_backup_offset = backup_offset; + + return 0; +} + +/** + * vmw_cmd_bind_gb_surface - Validate an SVGA_3D_CMD_BIND_GB_SURFACE + * command + * + * @dev_priv: Pointer to a device private struct. + * @sw_context: The software context being used for this batch. + * @header: Pointer to the command header in the command stream. + */ +static int vmw_cmd_bind_gb_surface(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + SVGA3dCmdHeader *header) +{ + struct vmw_bind_gb_surface_cmd { + SVGA3dCmdHeader header; + SVGA3dCmdBindGBSurface body; + } *cmd; + + cmd = container_of(header, struct vmw_bind_gb_surface_cmd, header); + + return vmw_cmd_switch_backup(dev_priv, sw_context, vmw_res_surface, + user_surface_converter, + &cmd->body.sid, &cmd->body.mobid, + 0); +} + +/** + * vmw_cmd_update_gb_image - Validate an SVGA_3D_CMD_UPDATE_GB_IMAGE + * command + * + * @dev_priv: Pointer to a device private struct. + * @sw_context: The software context being used for this batch. + * @header: Pointer to the command header in the command stream. + */ +static int vmw_cmd_update_gb_image(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + SVGA3dCmdHeader *header) +{ + struct vmw_gb_surface_cmd { + SVGA3dCmdHeader header; + SVGA3dCmdUpdateGBImage body; + } *cmd; + + cmd = container_of(header, struct vmw_gb_surface_cmd, header); + + return vmw_cmd_res_check(dev_priv, sw_context, vmw_res_surface, + user_surface_converter, + &cmd->body.image.sid, NULL); +} + +/** + * vmw_cmd_update_gb_surface - Validate an SVGA_3D_CMD_UPDATE_GB_SURFACE + * command + * + * @dev_priv: Pointer to a device private struct. + * @sw_context: The software context being used for this batch. + * @header: Pointer to the command header in the command stream. + */ +static int vmw_cmd_update_gb_surface(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + SVGA3dCmdHeader *header) +{ + struct vmw_gb_surface_cmd { + SVGA3dCmdHeader header; + SVGA3dCmdUpdateGBSurface body; + } *cmd; + + cmd = container_of(header, struct vmw_gb_surface_cmd, header); + + return vmw_cmd_res_check(dev_priv, sw_context, vmw_res_surface, + user_surface_converter, + &cmd->body.sid, NULL); +} + +/** + * vmw_cmd_readback_gb_image - Validate an SVGA_3D_CMD_READBACK_GB_IMAGE + * command + * + * @dev_priv: Pointer to a device private struct. + * @sw_context: The software context being used for this batch. + * @header: Pointer to the command header in the command stream. + */ +static int vmw_cmd_readback_gb_image(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + SVGA3dCmdHeader *header) +{ + struct vmw_gb_surface_cmd { + SVGA3dCmdHeader header; + SVGA3dCmdReadbackGBImage body; + } *cmd; + + cmd = container_of(header, struct vmw_gb_surface_cmd, header); + + return vmw_cmd_res_check(dev_priv, sw_context, vmw_res_surface, + user_surface_converter, + &cmd->body.image.sid, NULL); +} + +/** + * vmw_cmd_readback_gb_surface - Validate an SVGA_3D_CMD_READBACK_GB_SURFACE + * command + * + * @dev_priv: Pointer to a device private struct. + * @sw_context: The software context being used for this batch. + * @header: Pointer to the command header in the command stream. + */ +static int vmw_cmd_readback_gb_surface(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + SVGA3dCmdHeader *header) +{ + struct vmw_gb_surface_cmd { + SVGA3dCmdHeader header; + SVGA3dCmdReadbackGBSurface body; + } *cmd; + + cmd = container_of(header, struct vmw_gb_surface_cmd, header); + + return vmw_cmd_res_check(dev_priv, sw_context, vmw_res_surface, + user_surface_converter, + &cmd->body.sid, NULL); +} + +/** + * vmw_cmd_invalidate_gb_image - Validate an SVGA_3D_CMD_INVALIDATE_GB_IMAGE + * command + * + * @dev_priv: Pointer to a device private struct. + * @sw_context: The software context being used for this batch. + * @header: Pointer to the command header in the command stream. + */ +static int vmw_cmd_invalidate_gb_image(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + SVGA3dCmdHeader *header) +{ + struct vmw_gb_surface_cmd { + SVGA3dCmdHeader header; + SVGA3dCmdInvalidateGBImage body; + } *cmd; + + cmd = container_of(header, struct vmw_gb_surface_cmd, header); + + return vmw_cmd_res_check(dev_priv, sw_context, vmw_res_surface, + user_surface_converter, + &cmd->body.image.sid, NULL); +} + +/** + * vmw_cmd_invalidate_gb_surface - Validate an + * SVGA_3D_CMD_INVALIDATE_GB_SURFACE command + * + * @dev_priv: Pointer to a device private struct. + * @sw_context: The software context being used for this batch. + * @header: Pointer to the command header in the command stream. + */ +static int vmw_cmd_invalidate_gb_surface(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + SVGA3dCmdHeader *header) +{ + struct vmw_gb_surface_cmd { + SVGA3dCmdHeader header; + SVGA3dCmdInvalidateGBSurface body; + } *cmd; + + cmd = container_of(header, struct vmw_gb_surface_cmd, header); + + return vmw_cmd_res_check(dev_priv, sw_context, vmw_res_surface, + user_surface_converter, + &cmd->body.sid, NULL); +} + + +/** + * vmw_cmd_shader_define - Validate an SVGA_3D_CMD_SHADER_DEFINE + * command + * + * @dev_priv: Pointer to a device private struct. + * @sw_context: The software context being used for this batch. + * @header: Pointer to the command header in the command stream. + */ +static int vmw_cmd_shader_define(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + SVGA3dCmdHeader *header) +{ + struct vmw_shader_define_cmd { + SVGA3dCmdHeader header; + SVGA3dCmdDefineShader body; + } *cmd; + int ret; + size_t size; + + cmd = container_of(header, struct vmw_shader_define_cmd, + header); + + ret = vmw_cmd_res_check(dev_priv, sw_context, vmw_res_context, + user_context_converter, &cmd->body.cid, + NULL); + if (unlikely(ret != 0)) + return ret; + + if (unlikely(!dev_priv->has_mob)) + return 0; + + size = cmd->header.size - sizeof(cmd->body); + ret = vmw_compat_shader_add(sw_context->fp->shman, + cmd->body.shid, cmd + 1, + cmd->body.type, size, + sw_context->fp->tfile, + &sw_context->staged_shaders); + if (unlikely(ret != 0)) + return ret; + + return vmw_resource_relocation_add(&sw_context->res_relocations, + NULL, &cmd->header.id - + sw_context->buf_start); + + return 0; +} + +/** + * vmw_cmd_shader_destroy - Validate an SVGA_3D_CMD_SHADER_DESTROY + * command + * + * @dev_priv: Pointer to a device private struct. + * @sw_context: The software context being used for this batch. + * @header: Pointer to the command header in the command stream. + */ +static int vmw_cmd_shader_destroy(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + SVGA3dCmdHeader *header) +{ + struct vmw_shader_destroy_cmd { + SVGA3dCmdHeader header; + SVGA3dCmdDestroyShader body; + } *cmd; + int ret; + + cmd = container_of(header, struct vmw_shader_destroy_cmd, + header); + + ret = vmw_cmd_res_check(dev_priv, sw_context, vmw_res_context, + user_context_converter, &cmd->body.cid, + NULL); + if (unlikely(ret != 0)) + return ret; + + if (unlikely(!dev_priv->has_mob)) + return 0; + + ret = vmw_compat_shader_remove(sw_context->fp->shman, + cmd->body.shid, + cmd->body.type, + &sw_context->staged_shaders); + if (unlikely(ret != 0)) + return ret; + + return vmw_resource_relocation_add(&sw_context->res_relocations, + NULL, &cmd->header.id - + sw_context->buf_start); + + return 0; +} + +/** * vmw_cmd_set_shader - Validate an SVGA_3D_CMD_SET_SHADER * command * @@ -986,18 +1693,105 @@ SVGA3dCmdHeader header; SVGA3dCmdSetShader body; } *cmd; + struct vmw_resource_val_node *ctx_node; int ret; cmd = container_of(header, struct vmw_set_shader_cmd, header); - ret = vmw_cmd_cid_check(dev_priv, sw_context, header); + ret = vmw_cmd_res_check(dev_priv, sw_context, vmw_res_context, + user_context_converter, &cmd->body.cid, + &ctx_node); + if (unlikely(ret != 0)) + return ret; + + if (dev_priv->has_mob) { + struct vmw_ctx_bindinfo bi; + struct vmw_resource_val_node *res_node; + u32 shid = cmd->body.shid; + + if (shid != SVGA3D_INVALID_ID) + (void) vmw_compat_shader_lookup(sw_context->fp->shman, + cmd->body.type, + &shid); + + ret = vmw_cmd_compat_res_check(dev_priv, sw_context, + vmw_res_shader, + user_shader_converter, + shid, + &cmd->body.shid, &res_node); + if (unlikely(ret != 0)) + return ret; + + bi.ctx = ctx_node->res; + bi.res = res_node ? res_node->res : NULL; + bi.bt = vmw_ctx_binding_shader; + bi.i1.shader_type = cmd->body.type; + return vmw_context_binding_add(ctx_node->staged_bindings, &bi); + } + + return 0; +} + +/** + * vmw_cmd_set_shader_const - Validate an SVGA_3D_CMD_SET_SHADER_CONST + * command + * + * @dev_priv: Pointer to a device private struct. + * @sw_context: The software context being used for this batch. + * @header: Pointer to the command header in the command stream. + */ +static int vmw_cmd_set_shader_const(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + SVGA3dCmdHeader *header) +{ + struct vmw_set_shader_const_cmd { + SVGA3dCmdHeader header; + SVGA3dCmdSetShaderConst body; + } *cmd; + int ret; + + cmd = container_of(header, struct vmw_set_shader_const_cmd, + header); + + ret = vmw_cmd_res_check(dev_priv, sw_context, vmw_res_context, + user_context_converter, &cmd->body.cid, + NULL); if (unlikely(ret != 0)) return ret; + if (dev_priv->has_mob) + header->id = SVGA_3D_CMD_SET_GB_SHADERCONSTS_INLINE; + return 0; } +/** + * vmw_cmd_bind_gb_shader - Validate an SVGA_3D_CMD_BIND_GB_SHADER + * command + * + * @dev_priv: Pointer to a device private struct. + * @sw_context: The software context being used for this batch. + * @header: Pointer to the command header in the command stream. + */ +static int vmw_cmd_bind_gb_shader(struct vmw_private *dev_priv, + struct vmw_sw_context *sw_context, + SVGA3dCmdHeader *header) +{ + struct vmw_bind_gb_shader_cmd { + SVGA3dCmdHeader header; + SVGA3dCmdBindGBShader body; + } *cmd; + + cmd = container_of(header, struct vmw_bind_gb_shader_cmd, + header); + + return vmw_cmd_switch_backup(dev_priv, sw_context, vmw_res_shader, + user_shader_converter, + &cmd->body.shid, &cmd->body.mobid, + cmd->body.offsetInBytes); +} + static int vmw_cmd_check_not_3d(struct vmw_private *dev_priv, struct vmw_sw_context *sw_context, void *buf, uint32_t *size) @@ -1041,50 +1835,173 @@ return 0; } -typedef int (*vmw_cmd_func) (struct vmw_private *, - struct vmw_sw_context *, - SVGA3dCmdHeader *); - -#define VMW_CMD_DEF(cmd, func) \ - [cmd - SVGA_3D_CMD_BASE] = func - -static vmw_cmd_func vmw_cmd_funcs[SVGA_3D_CMD_MAX] = { - VMW_CMD_DEF(SVGA_3D_CMD_SURFACE_DEFINE, &vmw_cmd_invalid), - VMW_CMD_DEF(SVGA_3D_CMD_SURFACE_DESTROY, &vmw_cmd_invalid), - VMW_CMD_DEF(SVGA_3D_CMD_SURFACE_COPY, &vmw_cmd_surface_copy_check), - VMW_CMD_DEF(SVGA_3D_CMD_SURFACE_STRETCHBLT, &vmw_cmd_stretch_blt_check), - VMW_CMD_DEF(SVGA_3D_CMD_SURFACE_DMA, &vmw_cmd_dma), - VMW_CMD_DEF(SVGA_3D_CMD_CONTEXT_DEFINE, &vmw_cmd_invalid), - VMW_CMD_DEF(SVGA_3D_CMD_CONTEXT_DESTROY, &vmw_cmd_invalid), - VMW_CMD_DEF(SVGA_3D_CMD_SETTRANSFORM, &vmw_cmd_cid_check), - VMW_CMD_DEF(SVGA_3D_CMD_SETZRANGE, &vmw_cmd_cid_check), - VMW_CMD_DEF(SVGA_3D_CMD_SETRENDERSTATE, &vmw_cmd_cid_check), +static const struct vmw_cmd_entry vmw_cmd_entries[SVGA_3D_CMD_MAX] = { + VMW_CMD_DEF(SVGA_3D_CMD_SURFACE_DEFINE, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SURFACE_DESTROY, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SURFACE_COPY, &vmw_cmd_surface_copy_check, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SURFACE_STRETCHBLT, &vmw_cmd_stretch_blt_check, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SURFACE_DMA, &vmw_cmd_dma, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_CONTEXT_DEFINE, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_CONTEXT_DESTROY, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SETTRANSFORM, &vmw_cmd_cid_check, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SETZRANGE, &vmw_cmd_cid_check, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SETRENDERSTATE, &vmw_cmd_cid_check, + true, false, false), VMW_CMD_DEF(SVGA_3D_CMD_SETRENDERTARGET, - &vmw_cmd_set_render_target_check), - VMW_CMD_DEF(SVGA_3D_CMD_SETTEXTURESTATE, &vmw_cmd_tex_state), - VMW_CMD_DEF(SVGA_3D_CMD_SETMATERIAL, &vmw_cmd_cid_check), - VMW_CMD_DEF(SVGA_3D_CMD_SETLIGHTDATA, &vmw_cmd_cid_check), - VMW_CMD_DEF(SVGA_3D_CMD_SETLIGHTENABLED, &vmw_cmd_cid_check), - VMW_CMD_DEF(SVGA_3D_CMD_SETVIEWPORT, &vmw_cmd_cid_check), - VMW_CMD_DEF(SVGA_3D_CMD_SETCLIPPLANE, &vmw_cmd_cid_check), - VMW_CMD_DEF(SVGA_3D_CMD_CLEAR, &vmw_cmd_cid_check), - VMW_CMD_DEF(SVGA_3D_CMD_PRESENT, &vmw_cmd_present_check), - VMW_CMD_DEF(SVGA_3D_CMD_SHADER_DEFINE, &vmw_cmd_cid_check), - VMW_CMD_DEF(SVGA_3D_CMD_SHADER_DESTROY, &vmw_cmd_cid_check), - VMW_CMD_DEF(SVGA_3D_CMD_SET_SHADER, &vmw_cmd_set_shader), - VMW_CMD_DEF(SVGA_3D_CMD_SET_SHADER_CONST, &vmw_cmd_cid_check), - VMW_CMD_DEF(SVGA_3D_CMD_DRAW_PRIMITIVES, &vmw_cmd_draw), - VMW_CMD_DEF(SVGA_3D_CMD_SETSCISSORRECT, &vmw_cmd_cid_check), - VMW_CMD_DEF(SVGA_3D_CMD_BEGIN_QUERY, &vmw_cmd_begin_query), - VMW_CMD_DEF(SVGA_3D_CMD_END_QUERY, &vmw_cmd_end_query), - VMW_CMD_DEF(SVGA_3D_CMD_WAIT_FOR_QUERY, &vmw_cmd_wait_query), - VMW_CMD_DEF(SVGA_3D_CMD_PRESENT_READBACK, &vmw_cmd_ok), + &vmw_cmd_set_render_target_check, true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SETTEXTURESTATE, &vmw_cmd_tex_state, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SETMATERIAL, &vmw_cmd_cid_check, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SETLIGHTDATA, &vmw_cmd_cid_check, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SETLIGHTENABLED, &vmw_cmd_cid_check, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SETVIEWPORT, &vmw_cmd_cid_check, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SETCLIPPLANE, &vmw_cmd_cid_check, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_CLEAR, &vmw_cmd_cid_check, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_PRESENT, &vmw_cmd_present_check, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SHADER_DEFINE, &vmw_cmd_shader_define, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SHADER_DESTROY, &vmw_cmd_shader_destroy, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SET_SHADER, &vmw_cmd_set_shader, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SET_SHADER_CONST, &vmw_cmd_set_shader_const, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_DRAW_PRIMITIVES, &vmw_cmd_draw, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SETSCISSORRECT, &vmw_cmd_cid_check, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_BEGIN_QUERY, &vmw_cmd_begin_query, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_END_QUERY, &vmw_cmd_end_query, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_WAIT_FOR_QUERY, &vmw_cmd_wait_query, + true, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_PRESENT_READBACK, &vmw_cmd_ok, + true, false, false), VMW_CMD_DEF(SVGA_3D_CMD_BLIT_SURFACE_TO_SCREEN, - &vmw_cmd_blt_surf_screen_check), - VMW_CMD_DEF(SVGA_3D_CMD_SURFACE_DEFINE_V2, &vmw_cmd_invalid), - VMW_CMD_DEF(SVGA_3D_CMD_GENERATE_MIPMAPS, &vmw_cmd_invalid), - VMW_CMD_DEF(SVGA_3D_CMD_ACTIVATE_SURFACE, &vmw_cmd_invalid), - VMW_CMD_DEF(SVGA_3D_CMD_DEACTIVATE_SURFACE, &vmw_cmd_invalid), + &vmw_cmd_blt_surf_screen_check, false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SURFACE_DEFINE_V2, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_GENERATE_MIPMAPS, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_ACTIVATE_SURFACE, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_DEACTIVATE_SURFACE, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SCREEN_DMA, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SET_UNITY_SURFACE_COOKIE, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_OPEN_CONTEXT_SURFACE, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_LOGICOPS_BITBLT, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_LOGICOPS_TRANSBLT, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_LOGICOPS_STRETCHBLT, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_LOGICOPS_COLORFILL, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_LOGICOPS_ALPHABLEND, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_LOGICOPS_CLEARTYPEBLEND, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_SET_OTABLE_BASE, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_READBACK_OTABLE, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_DEFINE_GB_MOB, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_DESTROY_GB_MOB, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_REDEFINE_GB_MOB, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_UPDATE_GB_MOB_MAPPING, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_DEFINE_GB_SURFACE, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_DESTROY_GB_SURFACE, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_BIND_GB_SURFACE, &vmw_cmd_bind_gb_surface, + true, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_COND_BIND_GB_SURFACE, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_UPDATE_GB_IMAGE, &vmw_cmd_update_gb_image, + true, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_UPDATE_GB_SURFACE, + &vmw_cmd_update_gb_surface, true, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_READBACK_GB_IMAGE, + &vmw_cmd_readback_gb_image, true, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_READBACK_GB_SURFACE, + &vmw_cmd_readback_gb_surface, true, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_INVALIDATE_GB_IMAGE, + &vmw_cmd_invalidate_gb_image, true, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_INVALIDATE_GB_SURFACE, + &vmw_cmd_invalidate_gb_surface, true, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_DEFINE_GB_CONTEXT, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_DESTROY_GB_CONTEXT, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_BIND_GB_CONTEXT, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_READBACK_GB_CONTEXT, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_INVALIDATE_GB_CONTEXT, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_DEFINE_GB_SHADER, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_BIND_GB_SHADER, &vmw_cmd_bind_gb_shader, + true, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_DESTROY_GB_SHADER, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_SET_OTABLE_BASE64, &vmw_cmd_invalid, + false, false, false), + VMW_CMD_DEF(SVGA_3D_CMD_BEGIN_GB_QUERY, &vmw_cmd_begin_gb_query, + true, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_END_GB_QUERY, &vmw_cmd_end_gb_query, + true, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_WAIT_FOR_GB_QUERY, &vmw_cmd_wait_gb_query, + true, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_NOP, &vmw_cmd_ok, + true, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_ENABLE_GART, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_DISABLE_GART, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_MAP_MOB_INTO_GART, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_UNMAP_GART_RANGE, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_DEFINE_GB_SCREENTARGET, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_DESTROY_GB_SCREENTARGET, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_BIND_GB_SCREENTARGET, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_UPDATE_GB_SCREENTARGET, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_READBACK_GB_IMAGE_PARTIAL, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_INVALIDATE_GB_IMAGE_PARTIAL, &vmw_cmd_invalid, + false, false, true), + VMW_CMD_DEF(SVGA_3D_CMD_SET_GB_SHADERCONSTS_INLINE, &vmw_cmd_cid_check, + true, false, true) }; static int vmw_cmd_check(struct vmw_private *dev_priv, @@ -1095,6 +2012,8 @@ uint32_t size_remaining = *size; SVGA3dCmdHeader *header = (SVGA3dCmdHeader *) buf; int ret; + const struct vmw_cmd_entry *entry; + bool gb = dev_priv->capabilities & SVGA_CAP_GBOBJECTS; cmd_id = le32_to_cpu(((uint32_t *)buf)[0]); /* Handle any none 3D commands */ @@ -1107,18 +2026,43 @@ cmd_id -= SVGA_3D_CMD_BASE; if (unlikely(*size > size_remaining)) - goto out_err; + goto out_invalid; if (unlikely(cmd_id >= SVGA_3D_CMD_MAX - SVGA_3D_CMD_BASE)) - goto out_err; + goto out_invalid; + + entry = &vmw_cmd_entries[cmd_id]; + if (unlikely(!entry->func)) + goto out_invalid; + + if (unlikely(!entry->user_allow && !sw_context->kernel)) + goto out_privileged; + + if (unlikely(entry->gb_disable && gb)) + goto out_old; - ret = vmw_cmd_funcs[cmd_id](dev_priv, sw_context, header); + if (unlikely(entry->gb_enable && !gb)) + goto out_new; + + ret = entry->func(dev_priv, sw_context, header); if (unlikely(ret != 0)) - goto out_err; + goto out_invalid; return 0; -out_err: - DRM_ERROR("Illegal / Invalid SVGA3D command: %d\n", +out_invalid: + DRM_ERROR("Invalid SVGA3D command: %d\n", + cmd_id + SVGA_3D_CMD_BASE); + return -EINVAL; +out_privileged: + DRM_ERROR("Privileged SVGA3D command: %d\n", + cmd_id + SVGA_3D_CMD_BASE); + return -EPERM; +out_old: + DRM_ERROR("Deprecated (disallowed) SVGA3D command: %d\n", + cmd_id + SVGA_3D_CMD_BASE); + return -EINVAL; +out_new: + DRM_ERROR("SVGA3D command: %d not supported by virtual hardware.\n", cmd_id + SVGA_3D_CMD_BASE); return -EINVAL; } @@ -1174,6 +2118,9 @@ case VMW_PL_GMR: reloc->location->gmrId = bo->mem.start; break; + case VMW_PL_MOB: + *reloc->mob_loc = bo->mem.start; + break; default: BUG(); } @@ -1198,6 +2145,8 @@ list_for_each_entry_safe(val, val_next, list, head) { list_del_init(&val->head); vmw_resource_unreference(&val->res); + if (unlikely(val->staged_bindings)) + kfree(val->staged_bindings); kfree(val); } } @@ -1224,7 +2173,8 @@ } static int vmw_validate_single_buffer(struct vmw_private *dev_priv, - struct ttm_buffer_object *bo) + struct ttm_buffer_object *bo, + bool validate_as_mob) { int ret; @@ -1238,6 +2188,9 @@ dev_priv->dummy_query_bo_pinned)) return 0; + if (validate_as_mob) + return ttm_bo_validate(bo, &vmw_mob_placement, true, false); + /** * Put BO in VRAM if there is space, otherwise as a GMR. * If there is no space in VRAM and GMR ids are all used up, @@ -1259,7 +2212,6 @@ return ret; } - static int vmw_validate_buffers(struct vmw_private *dev_priv, struct vmw_sw_context *sw_context) { @@ -1267,7 +2219,8 @@ int ret; list_for_each_entry(entry, &sw_context->validate_nodes, base.head) { - ret = vmw_validate_single_buffer(dev_priv, entry->base.bo); + ret = vmw_validate_single_buffer(dev_priv, entry->base.bo, + entry->validate_as_mob); if (unlikely(ret != 0)) return ret; } @@ -1461,7 +2414,7 @@ } else sw_context->kernel = true; - sw_context->tfile = vmw_fpriv(file_priv)->tfile; + sw_context->fp = vmw_fpriv(file_priv); sw_context->cur_reloc = 0; sw_context->cur_val_buf = 0; sw_context->fence_flags = 0; @@ -1478,16 +2431,17 @@ goto out_unlock; sw_context->res_ht_initialized = true; } + INIT_LIST_HEAD(&sw_context->staged_shaders); INIT_LIST_HEAD(&resource_list); ret = vmw_cmd_check_all(dev_priv, sw_context, kernel_commands, command_size); if (unlikely(ret != 0)) - goto out_err; + goto out_err_nores; ret = vmw_resources_reserve(sw_context); if (unlikely(ret != 0)) - goto out_err; + goto out_err_nores; ret = ttm_eu_reserve_buffers(&ticket, &sw_context->validate_nodes); if (unlikely(ret != 0)) @@ -1509,11 +2463,23 @@ goto out_err; } + ret = mutex_lock_interruptible(&dev_priv->binding_mutex); + if (unlikely(ret != 0)) { + ret = -ERESTARTSYS; + goto out_err; + } + + if (dev_priv->has_mob) { + ret = vmw_rebind_contexts(sw_context); + if (unlikely(ret != 0)) + goto out_unlock_binding; + } + cmd = vmw_fifo_reserve(dev_priv, command_size); if (unlikely(cmd == NULL)) { DRM_ERROR("Failed reserving fifo space for commands.\n"); ret = -ENOMEM; - goto out_err; + goto out_unlock_binding; } vmw_apply_relocations(sw_context); @@ -1538,6 +2504,8 @@ DRM_ERROR("Fence submission error. Syncing.\n"); vmw_resource_list_unreserve(&sw_context->resource_list, false); + mutex_unlock(&dev_priv->binding_mutex); + ttm_eu_fence_buffer_objects(&ticket, &sw_context->validate_nodes, (void *) fence); @@ -1558,6 +2526,8 @@ } list_splice_init(&sw_context->resource_list, &resource_list); + vmw_compat_shaders_commit(sw_context->fp->shman, + &sw_context->staged_shaders); mutex_unlock(&dev_priv->cmdbuf_mutex); /* @@ -1568,11 +2538,14 @@ return 0; +out_unlock_binding: + mutex_unlock(&dev_priv->binding_mutex); out_err: - vmw_resource_relocations_free(&sw_context->res_relocations); - vmw_free_relocations(sw_context); ttm_eu_backoff_reservation(&ticket, &sw_context->validate_nodes); +out_err_nores: vmw_resource_list_unreserve(&sw_context->resource_list, true); + vmw_resource_relocations_free(&sw_context->res_relocations); + vmw_free_relocations(sw_context); vmw_clear_validations(sw_context); if (unlikely(dev_priv->pinned_bo != NULL && !dev_priv->query_cid_valid)) @@ -1581,6 +2554,8 @@ list_splice_init(&sw_context->resource_list, &resource_list); error_resource = sw_context->error_resource; sw_context->error_resource = NULL; + vmw_compat_shaders_revert(sw_context->fp->shman, + &sw_context->staged_shaders); mutex_unlock(&dev_priv->cmdbuf_mutex); /* --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c @@ -147,7 +147,7 @@ } if (!vmw_kms_validate_mode_vram(vmw_priv, - info->fix.line_length, + var->xres * var->bits_per_pixel/8, var->yoffset + var->yres)) { DRM_ERROR("Requested geom can not fit in framebuffer\n"); return -EINVAL; @@ -162,6 +162,8 @@ struct vmw_private *vmw_priv = par->vmw_priv; int ret; + info->fix.line_length = info->var.xres * info->var.bits_per_pixel/8; + ret = vmw_kms_write_svga(vmw_priv, info->var.xres, info->var.yres, info->fix.line_length, par->bpp, par->depth); @@ -177,6 +179,7 @@ vmw_write(vmw_priv, SVGA_REG_DISPLAY_POSITION_Y, info->var.yoffset); vmw_write(vmw_priv, SVGA_REG_DISPLAY_WIDTH, info->var.xres); vmw_write(vmw_priv, SVGA_REG_DISPLAY_HEIGHT, info->var.yres); + vmw_write(vmw_priv, SVGA_REG_BYTES_PER_LINE, info->fix.line_length); vmw_write(vmw_priv, SVGA_REG_DISPLAY_ID, SVGA_ID_INVALID); } --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_fence.c +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_fence.c @@ -271,7 +271,7 @@ spin_unlock_irq(&fman->lock); } -void vmw_fences_perform_actions(struct vmw_fence_manager *fman, +static void vmw_fences_perform_actions(struct vmw_fence_manager *fman, struct list_head *list) { struct vmw_fence_action *action, *next_action; @@ -897,7 +897,7 @@ * Note that the action callbacks may be executed before this function * returns. */ -void vmw_fence_obj_add_action(struct vmw_fence_obj *fence, +static void vmw_fence_obj_add_action(struct vmw_fence_obj *fence, struct vmw_fence_action *action) { struct vmw_fence_manager *fman = fence->fman; @@ -993,7 +993,7 @@ struct drm_vmw_event_fence event; }; -int vmw_event_fence_action_create(struct drm_file *file_priv, +static int vmw_event_fence_action_create(struct drm_file *file_priv, struct vmw_fence_obj *fence, uint32_t flags, uint64_t user_data, @@ -1080,7 +1080,8 @@ */ if (arg->handle) { struct ttm_base_object *base = - ttm_base_object_lookup(vmw_fp->tfile, arg->handle); + ttm_base_object_lookup_for_ref(dev_priv->tdev, + arg->handle); if (unlikely(base == NULL)) { DRM_ERROR("Fence event invalid fence object handle " --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c @@ -35,6 +35,23 @@ uint32_t fifo_min, hwversion; const struct vmw_fifo_state *fifo = &dev_priv->fifo; + if (!(dev_priv->capabilities & SVGA_CAP_3D)) + return false; + + if (dev_priv->capabilities & SVGA_CAP_GBOBJECTS) { + uint32_t result; + + if (!dev_priv->has_mob) + return false; + + mutex_lock(&dev_priv->hw_mutex); + vmw_write(dev_priv, SVGA_REG_DEV_CAP, SVGA3D_DEVCAP_3D); + result = vmw_read(dev_priv, SVGA_REG_DEV_CAP); + mutex_unlock(&dev_priv->hw_mutex); + + return (result != 0); + } + if (!(dev_priv->capabilities & SVGA_CAP_EXTENDED_FIFO)) return false; @@ -511,24 +528,16 @@ } /** - * vmw_fifo_emit_dummy_query - emits a dummy query to the fifo. + * vmw_fifo_emit_dummy_legacy_query - emits a dummy query to the fifo using + * legacy query commands. * * @dev_priv: The device private structure. * @cid: The hardware context id used for the query. * - * This function is used to emit a dummy occlusion query with - * no primitives rendered between query begin and query end. - * It's used to provide a query barrier, in order to know that when - * this query is finished, all preceding queries are also finished. - * - * A Query results structure should have been initialized at the start - * of the dev_priv->dummy_query_bo buffer object. And that buffer object - * must also be either reserved or pinned when this function is called. - * - * Returns -ENOMEM on failure to reserve fifo space. + * See the vmw_fifo_emit_dummy_query documentation. */ -int vmw_fifo_emit_dummy_query(struct vmw_private *dev_priv, - uint32_t cid) +static int vmw_fifo_emit_dummy_legacy_query(struct vmw_private *dev_priv, + uint32_t cid) { /* * A query wait without a preceding query end will @@ -566,3 +575,75 @@ return 0; } + +/** + * vmw_fifo_emit_dummy_gb_query - emits a dummy query to the fifo using + * guest-backed resource query commands. + * + * @dev_priv: The device private structure. + * @cid: The hardware context id used for the query. + * + * See the vmw_fifo_emit_dummy_query documentation. + */ +static int vmw_fifo_emit_dummy_gb_query(struct vmw_private *dev_priv, + uint32_t cid) +{ + /* + * A query wait without a preceding query end will + * actually finish all queries for this cid + * without writing to the query result structure. + */ + + struct ttm_buffer_object *bo = dev_priv->dummy_query_bo; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdWaitForGBQuery body; + } *cmd; + + cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); + + if (unlikely(cmd == NULL)) { + DRM_ERROR("Out of fifo space for dummy query.\n"); + return -ENOMEM; + } + + cmd->header.id = SVGA_3D_CMD_WAIT_FOR_GB_QUERY; + cmd->header.size = sizeof(cmd->body); + cmd->body.cid = cid; + cmd->body.type = SVGA3D_QUERYTYPE_OCCLUSION; + BUG_ON(bo->mem.mem_type != VMW_PL_MOB); + cmd->body.mobid = bo->mem.start; + cmd->body.offset = 0; + + vmw_fifo_commit(dev_priv, sizeof(*cmd)); + + return 0; +} + + +/** + * vmw_fifo_emit_dummy_gb_query - emits a dummy query to the fifo using + * appropriate resource query commands. + * + * @dev_priv: The device private structure. + * @cid: The hardware context id used for the query. + * + * This function is used to emit a dummy occlusion query with + * no primitives rendered between query begin and query end. + * It's used to provide a query barrier, in order to know that when + * this query is finished, all preceding queries are also finished. + * + * A Query results structure should have been initialized at the start + * of the dev_priv->dummy_query_bo buffer object. And that buffer object + * must also be either reserved or pinned when this function is called. + * + * Returns -ENOMEM on failure to reserve fifo space. + */ +int vmw_fifo_emit_dummy_query(struct vmw_private *dev_priv, + uint32_t cid) +{ + if (dev_priv->has_mob) + return vmw_fifo_emit_dummy_gb_query(dev_priv, cid); + + return vmw_fifo_emit_dummy_legacy_query(dev_priv, cid); +} --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_gmr.c +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_gmr.c @@ -125,181 +125,27 @@ } -static void vmw_gmr_free_descriptors(struct device *dev, dma_addr_t desc_dma, - struct list_head *desc_pages) -{ - struct page *page, *next; - struct svga_guest_mem_descriptor *page_virtual; - unsigned int desc_per_page = PAGE_SIZE / - sizeof(struct svga_guest_mem_descriptor) - 1; - - if (list_empty(desc_pages)) - return; - - list_for_each_entry_safe(page, next, desc_pages, lru) { - list_del_init(&page->lru); - - if (likely(desc_dma != DMA_ADDR_INVALID)) { - dma_unmap_page(dev, desc_dma, PAGE_SIZE, - DMA_TO_DEVICE); - } - - page_virtual = kmap_atomic(page); - desc_dma = (dma_addr_t) - le32_to_cpu(page_virtual[desc_per_page].ppn) << - PAGE_SHIFT; - kunmap_atomic(page_virtual); - - __free_page(page); - } -} - -/** - * FIXME: Adjust to the ttm lowmem / highmem storage to minimize - * the number of used descriptors. - * - */ - -static int vmw_gmr_build_descriptors(struct device *dev, - struct list_head *desc_pages, - struct vmw_piter *iter, - unsigned long num_pages, - dma_addr_t *first_dma) -{ - struct page *page; - struct svga_guest_mem_descriptor *page_virtual = NULL; - struct svga_guest_mem_descriptor *desc_virtual = NULL; - unsigned int desc_per_page; - unsigned long prev_pfn; - unsigned long pfn; - int ret; - dma_addr_t desc_dma; - - desc_per_page = PAGE_SIZE / - sizeof(struct svga_guest_mem_descriptor) - 1; - - while (likely(num_pages != 0)) { - page = alloc_page(__GFP_HIGHMEM); - if (unlikely(page == NULL)) { - ret = -ENOMEM; - goto out_err; - } - - list_add_tail(&page->lru, desc_pages); - page_virtual = kmap_atomic(page); - desc_virtual = page_virtual - 1; - prev_pfn = ~(0UL); - - while (likely(num_pages != 0)) { - pfn = vmw_piter_dma_addr(iter) >> PAGE_SHIFT; - - if (pfn != prev_pfn + 1) { - - if (desc_virtual - page_virtual == - desc_per_page - 1) - break; - - (++desc_virtual)->ppn = cpu_to_le32(pfn); - desc_virtual->num_pages = cpu_to_le32(1); - } else { - uint32_t tmp = - le32_to_cpu(desc_virtual->num_pages); - desc_virtual->num_pages = cpu_to_le32(tmp + 1); - } - prev_pfn = pfn; - --num_pages; - vmw_piter_next(iter); - } - - (++desc_virtual)->ppn = DMA_PAGE_INVALID; - desc_virtual->num_pages = cpu_to_le32(0); - kunmap_atomic(page_virtual); - } - - desc_dma = 0; - list_for_each_entry_reverse(page, desc_pages, lru) { - page_virtual = kmap_atomic(page); - page_virtual[desc_per_page].ppn = cpu_to_le32 - (desc_dma >> PAGE_SHIFT); - kunmap_atomic(page_virtual); - desc_dma = dma_map_page(dev, page, 0, PAGE_SIZE, - DMA_TO_DEVICE); - - if (unlikely(dma_mapping_error(dev, desc_dma))) - goto out_err; - } - *first_dma = desc_dma; - - return 0; -out_err: - vmw_gmr_free_descriptors(dev, DMA_ADDR_INVALID, desc_pages); - return ret; -} - -static void vmw_gmr_fire_descriptors(struct vmw_private *dev_priv, - int gmr_id, dma_addr_t desc_dma) -{ - mutex_lock(&dev_priv->hw_mutex); - - vmw_write(dev_priv, SVGA_REG_GMR_ID, gmr_id); - wmb(); - vmw_write(dev_priv, SVGA_REG_GMR_DESCRIPTOR, desc_dma >> PAGE_SHIFT); - mb(); - - mutex_unlock(&dev_priv->hw_mutex); - -} - int vmw_gmr_bind(struct vmw_private *dev_priv, const struct vmw_sg_table *vsgt, unsigned long num_pages, int gmr_id) { - struct list_head desc_pages; - dma_addr_t desc_dma = 0; - struct device *dev = dev_priv->dev->dev; struct vmw_piter data_iter; - int ret; vmw_piter_start(&data_iter, vsgt, 0); if (unlikely(!vmw_piter_next(&data_iter))) return 0; - if (likely(dev_priv->capabilities & SVGA_CAP_GMR2)) - return vmw_gmr2_bind(dev_priv, &data_iter, num_pages, gmr_id); - - if (unlikely(!(dev_priv->capabilities & SVGA_CAP_GMR))) - return -EINVAL; - - if (vsgt->num_regions > dev_priv->max_gmr_descriptors) + if (unlikely(!(dev_priv->capabilities & SVGA_CAP_GMR2))) return -EINVAL; - INIT_LIST_HEAD(&desc_pages); - - ret = vmw_gmr_build_descriptors(dev, &desc_pages, &data_iter, - num_pages, &desc_dma); - if (unlikely(ret != 0)) - return ret; - - vmw_gmr_fire_descriptors(dev_priv, gmr_id, desc_dma); - vmw_gmr_free_descriptors(dev, desc_dma, &desc_pages); - - return 0; + return vmw_gmr2_bind(dev_priv, &data_iter, num_pages, gmr_id); } void vmw_gmr_unbind(struct vmw_private *dev_priv, int gmr_id) { - if (likely(dev_priv->capabilities & SVGA_CAP_GMR2)) { + if (likely(dev_priv->capabilities & SVGA_CAP_GMR2)) vmw_gmr2_unbind(dev_priv, gmr_id); - return; - } - - mutex_lock(&dev_priv->hw_mutex); - vmw_write(dev_priv, SVGA_REG_GMR_ID, gmr_id); - wmb(); - vmw_write(dev_priv, SVGA_REG_GMR_DESCRIPTOR, 0); - mb(); - mutex_unlock(&dev_priv->hw_mutex); } --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_gmrid_manager.c +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_gmrid_manager.c @@ -125,10 +125,21 @@ return -ENOMEM; spin_lock_init(&gman->lock); - gman->max_gmr_pages = dev_priv->max_gmr_pages; gman->used_gmr_pages = 0; ida_init(&gman->gmr_ida); - gman->max_gmr_ids = p_size; + + switch (p_size) { + case VMW_PL_GMR: + gman->max_gmr_ids = dev_priv->max_gmr_ids; + gman->max_gmr_pages = dev_priv->max_gmr_pages; + break; + case VMW_PL_MOB: + gman->max_gmr_ids = VMWGFX_NUM_MOB; + gman->max_gmr_pages = dev_priv->max_mob_pages; + break; + default: + BUG(); + } man->priv = (void *) gman; return 0; } --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c @@ -29,12 +29,18 @@ #include #include "vmwgfx_kms.h" +struct svga_3d_compat_cap { + SVGA3dCapsRecordHeader header; + SVGA3dCapPair pairs[SVGA3D_DEVCAP_MAX]; +}; + int vmw_getparam_ioctl(struct drm_device *dev, void *data, struct drm_file *file_priv) { struct vmw_private *dev_priv = vmw_priv(dev); struct drm_vmw_getparam_arg *param = (struct drm_vmw_getparam_arg *)data; + struct vmw_fpriv *vmw_fp = vmw_fpriv(file_priv); switch (param->param) { case DRM_VMW_PARAM_NUM_STREAMS: @@ -53,13 +59,18 @@ param->value = dev_priv->fifo.capabilities; break; case DRM_VMW_PARAM_MAX_FB_SIZE: - param->value = dev_priv->vram_size; + param->value = dev_priv->prim_bb_mem; break; case DRM_VMW_PARAM_FIFO_HW_VERSION: { __le32 __iomem *fifo_mem = dev_priv->mmio_virt; const struct vmw_fifo_state *fifo = &dev_priv->fifo; + if ((dev_priv->capabilities & SVGA_CAP_GBOBJECTS)) { + param->value = SVGA3D_HWVERSION_WS8_B1; + break; + } + param->value = ioread32(fifo_mem + ((fifo->capabilities & @@ -69,7 +80,30 @@ break; } case DRM_VMW_PARAM_MAX_SURF_MEMORY: - param->value = dev_priv->memory_size; + if ((dev_priv->capabilities & SVGA_CAP_GBOBJECTS) && + !vmw_fp->gb_aware) + param->value = dev_priv->max_mob_pages * PAGE_SIZE / 2; + else + param->value = dev_priv->memory_size; + break; + case DRM_VMW_PARAM_3D_CAPS_SIZE: + if ((dev_priv->capabilities & SVGA_CAP_GBOBJECTS) && + vmw_fp->gb_aware) + param->value = SVGA3D_DEVCAP_MAX * sizeof(uint32_t); + else if (dev_priv->capabilities & SVGA_CAP_GBOBJECTS) + param->value = sizeof(struct svga_3d_compat_cap) + + sizeof(uint32_t); + else + param->value = (SVGA_FIFO_3D_CAPS_LAST - + SVGA_FIFO_3D_CAPS + 1) * + sizeof(uint32_t); + break; + case DRM_VMW_PARAM_MAX_MOB_MEMORY: + vmw_fp->gb_aware = true; + param->value = dev_priv->max_mob_pages * PAGE_SIZE; + break; + case DRM_VMW_PARAM_MAX_MOB_SIZE: + param->value = dev_priv->max_mob_size; break; default: DRM_ERROR("Illegal vmwgfx get param request: %d\n", @@ -80,6 +114,38 @@ return 0; } +static int vmw_fill_compat_cap(struct vmw_private *dev_priv, void *bounce, + size_t size) +{ + struct svga_3d_compat_cap *compat_cap = + (struct svga_3d_compat_cap *) bounce; + unsigned int i; + size_t pair_offset = offsetof(struct svga_3d_compat_cap, pairs); + unsigned int max_size; + + if (size < pair_offset) + return -EINVAL; + + max_size = (size - pair_offset) / sizeof(SVGA3dCapPair); + + if (max_size > SVGA3D_DEVCAP_MAX) + max_size = SVGA3D_DEVCAP_MAX; + + compat_cap->header.length = + (pair_offset + max_size * sizeof(SVGA3dCapPair)) / sizeof(u32); + compat_cap->header.type = SVGA3DCAPS_RECORD_DEVCAPS; + + mutex_lock(&dev_priv->hw_mutex); + for (i = 0; i < max_size; ++i) { + vmw_write(dev_priv, SVGA_REG_DEV_CAP, i); + compat_cap->pairs[i][0] = i; + compat_cap->pairs[i][1] = vmw_read(dev_priv, SVGA_REG_DEV_CAP); + } + mutex_unlock(&dev_priv->hw_mutex); + + return 0; +} + int vmw_get_cap_3d_ioctl(struct drm_device *dev, void *data, struct drm_file *file_priv) @@ -92,29 +158,58 @@ void __user *buffer = (void __user *)((unsigned long)(arg->buffer)); void *bounce; int ret; + bool gb_objects = !!(dev_priv->capabilities & SVGA_CAP_GBOBJECTS); + struct vmw_fpriv *vmw_fp = vmw_fpriv(file_priv); if (unlikely(arg->pad64 != 0)) { DRM_ERROR("Illegal GET_3D_CAP argument.\n"); return -EINVAL; } - size = (SVGA_FIFO_3D_CAPS_LAST - SVGA_FIFO_3D_CAPS + 1) << 2; + if (gb_objects && vmw_fp->gb_aware) + size = SVGA3D_DEVCAP_MAX * sizeof(uint32_t); + else if (gb_objects) + size = sizeof(struct svga_3d_compat_cap) + sizeof(uint32_t); + else + size = (SVGA_FIFO_3D_CAPS_LAST - SVGA_FIFO_3D_CAPS + 1) * + sizeof(uint32_t); if (arg->max_size < size) size = arg->max_size; - bounce = vmalloc(size); + bounce = vzalloc(size); if (unlikely(bounce == NULL)) { DRM_ERROR("Failed to allocate bounce buffer for 3D caps.\n"); return -ENOMEM; } - fifo_mem = dev_priv->mmio_virt; - memcpy_fromio(bounce, &fifo_mem[SVGA_FIFO_3D_CAPS], size); + if (gb_objects && vmw_fp->gb_aware) { + int i, num; + uint32_t *bounce32 = (uint32_t *) bounce; + + num = size / sizeof(uint32_t); + if (num > SVGA3D_DEVCAP_MAX) + num = SVGA3D_DEVCAP_MAX; + + mutex_lock(&dev_priv->hw_mutex); + for (i = 0; i < num; ++i) { + vmw_write(dev_priv, SVGA_REG_DEV_CAP, i); + *bounce32++ = vmw_read(dev_priv, SVGA_REG_DEV_CAP); + } + mutex_unlock(&dev_priv->hw_mutex); + } else if (gb_objects) { + ret = vmw_fill_compat_cap(dev_priv, bounce, size); + if (unlikely(ret != 0)) + goto out_err; + } else { + fifo_mem = dev_priv->mmio_virt; + memcpy_fromio(bounce, &fifo_mem[SVGA_FIFO_3D_CAPS], size); + } ret = copy_to_user(buffer, bounce, size); if (ret) ret = -EFAULT; +out_err: vfree(bounce); if (unlikely(ret != 0)) --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c @@ -40,7 +40,7 @@ * Clip @num_rects number of @rects against @clip storing the * results in @out_rects and the number of passed rects in @out_num. */ -void vmw_clip_cliprects(struct drm_clip_rect *rects, +static void vmw_clip_cliprects(struct drm_clip_rect *rects, int num_rects, struct vmw_clip_rect clip, SVGASignedRect *out_rects, @@ -423,7 +423,7 @@ struct drm_master *master; }; -void vmw_framebuffer_surface_destroy(struct drm_framebuffer *framebuffer) +static void vmw_framebuffer_surface_destroy(struct drm_framebuffer *framebuffer) { struct vmw_framebuffer_surface *vfbs = vmw_framebuffer_to_vfbs(framebuffer); @@ -589,7 +589,7 @@ return ret; } -int vmw_framebuffer_surface_dirty(struct drm_framebuffer *framebuffer, +static int vmw_framebuffer_surface_dirty(struct drm_framebuffer *framebuffer, struct drm_file *file_priv, unsigned flags, unsigned color, struct drm_clip_rect *clips, @@ -665,9 +665,9 @@ if (unlikely(surface->mip_levels[0] != 1 || surface->num_sizes != 1 || - surface->sizes[0].width < mode_cmd->width || - surface->sizes[0].height < mode_cmd->height || - surface->sizes[0].depth != 1)) { + surface->base_size.width < mode_cmd->width || + surface->base_size.height < mode_cmd->height || + surface->base_size.depth != 1)) { DRM_ERROR("Incompatible surface dimensions " "for requested mode.\n"); return -EINVAL; @@ -754,7 +754,7 @@ struct vmw_dma_buffer *buffer; }; -void vmw_framebuffer_dmabuf_destroy(struct drm_framebuffer *framebuffer) +static void vmw_framebuffer_dmabuf_destroy(struct drm_framebuffer *framebuffer) { struct vmw_framebuffer_dmabuf *vfbd = vmw_framebuffer_to_vfbd(framebuffer); @@ -940,7 +940,7 @@ return ret; } -int vmw_framebuffer_dmabuf_dirty(struct drm_framebuffer *framebuffer, +static int vmw_framebuffer_dmabuf_dirty(struct drm_framebuffer *framebuffer, struct drm_file *file_priv, unsigned flags, unsigned color, struct drm_clip_rect *clips, @@ -1631,7 +1631,7 @@ uint32_t pitch, uint32_t height) { - return ((u64) pitch * (u64) height) < (u64) dev_priv->vram_size; + return ((u64) pitch * (u64) height) < (u64) dev_priv->prim_bb_mem; } @@ -1663,7 +1663,7 @@ * Small shared kms functions. */ -int vmw_du_update_layout(struct vmw_private *dev_priv, unsigned num, +static int vmw_du_update_layout(struct vmw_private *dev_priv, unsigned num, struct drm_vmw_rect *rects) { struct drm_device *dev = dev_priv->dev; --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_mob.c +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_mob.c @@ -0,0 +1,656 @@ +/************************************************************************** + * + * Copyright © 2012 VMware, Inc., Palo Alto, CA., USA + * All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the + * "Software"), to deal in the Software without restriction, including + * without limitation the rights to use, copy, modify, merge, publish, + * distribute, sub license, and/or sell copies of the Software, and to + * permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice (including the + * next paragraph) shall be included in all copies or substantial portions + * of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL + * THE COPYRIGHT HOLDERS, AUTHORS AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, + * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR + * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE + * USE OR OTHER DEALINGS IN THE SOFTWARE. + * + **************************************************************************/ + +#include "vmwgfx_drv.h" + +/* + * If we set up the screen target otable, screen objects stop working. + */ + +#define VMW_OTABLE_SETUP_SUB ((VMWGFX_ENABLE_SCREEN_TARGET_OTABLE) ? 0 : 1) + +#ifdef CONFIG_64BIT +#define VMW_PPN_SIZE 8 +#define VMW_MOBFMT_PTDEPTH_0 SVGA3D_MOBFMT_PTDEPTH64_0 +#define VMW_MOBFMT_PTDEPTH_1 SVGA3D_MOBFMT_PTDEPTH64_1 +#define VMW_MOBFMT_PTDEPTH_2 SVGA3D_MOBFMT_PTDEPTH64_2 +#else +#define VMW_PPN_SIZE 4 +#define VMW_MOBFMT_PTDEPTH_0 SVGA3D_MOBFMT_PTDEPTH_0 +#define VMW_MOBFMT_PTDEPTH_1 SVGA3D_MOBFMT_PTDEPTH_1 +#define VMW_MOBFMT_PTDEPTH_2 SVGA3D_MOBFMT_PTDEPTH_2 +#endif + +/* + * struct vmw_mob - Structure containing page table and metadata for a + * Guest Memory OBject. + * + * @num_pages Number of pages that make up the page table. + * @pt_level The indirection level of the page table. 0-2. + * @pt_root_page DMA address of the level 0 page of the page table. + */ +struct vmw_mob { + struct ttm_buffer_object *pt_bo; + unsigned long num_pages; + unsigned pt_level; + dma_addr_t pt_root_page; + uint32_t id; +}; + +/* + * struct vmw_otable - Guest Memory OBject table metadata + * + * @size: Size of the table (page-aligned). + * @page_table: Pointer to a struct vmw_mob holding the page table. + */ +struct vmw_otable { + unsigned long size; + struct vmw_mob *page_table; +}; + +static int vmw_mob_pt_populate(struct vmw_private *dev_priv, + struct vmw_mob *mob); +static void vmw_mob_pt_setup(struct vmw_mob *mob, + struct vmw_piter data_iter, + unsigned long num_data_pages); + +/* + * vmw_setup_otable_base - Issue an object table base setup command to + * the device + * + * @dev_priv: Pointer to a device private structure + * @type: Type of object table base + * @offset Start of table offset into dev_priv::otable_bo + * @otable Pointer to otable metadata; + * + * This function returns -ENOMEM if it fails to reserve fifo space, + * and may block waiting for fifo space. + */ +static int vmw_setup_otable_base(struct vmw_private *dev_priv, + SVGAOTableType type, + unsigned long offset, + struct vmw_otable *otable) +{ + struct { + SVGA3dCmdHeader header; + SVGA3dCmdSetOTableBase64 body; + } *cmd; + struct vmw_mob *mob; + const struct vmw_sg_table *vsgt; + struct vmw_piter iter; + int ret; + + BUG_ON(otable->page_table != NULL); + + vsgt = vmw_bo_sg_table(dev_priv->otable_bo); + vmw_piter_start(&iter, vsgt, offset >> PAGE_SHIFT); + WARN_ON(!vmw_piter_next(&iter)); + + mob = vmw_mob_create(otable->size >> PAGE_SHIFT); + if (unlikely(mob == NULL)) { + DRM_ERROR("Failed creating OTable page table.\n"); + return -ENOMEM; + } + + if (otable->size <= PAGE_SIZE) { + mob->pt_level = VMW_MOBFMT_PTDEPTH_0; + mob->pt_root_page = vmw_piter_dma_addr(&iter); + } else if (vsgt->num_regions == 1) { + mob->pt_level = SVGA3D_MOBFMT_RANGE; + mob->pt_root_page = vmw_piter_dma_addr(&iter); + } else { + ret = vmw_mob_pt_populate(dev_priv, mob); + if (unlikely(ret != 0)) + goto out_no_populate; + + vmw_mob_pt_setup(mob, iter, otable->size >> PAGE_SHIFT); + mob->pt_level += VMW_MOBFMT_PTDEPTH_1 - SVGA3D_MOBFMT_PTDEPTH_1; + } + + cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for OTable setup.\n"); + ret = -ENOMEM; + goto out_no_fifo; + } + + memset(cmd, 0, sizeof(*cmd)); + cmd->header.id = SVGA_3D_CMD_SET_OTABLE_BASE64; + cmd->header.size = sizeof(cmd->body); + cmd->body.type = type; + cmd->body.baseAddress = cpu_to_le64(mob->pt_root_page >> PAGE_SHIFT); + cmd->body.sizeInBytes = otable->size; + cmd->body.validSizeInBytes = 0; + cmd->body.ptDepth = mob->pt_level; + + /* + * The device doesn't support this, But the otable size is + * determined at compile-time, so this BUG shouldn't trigger + * randomly. + */ + BUG_ON(mob->pt_level == VMW_MOBFMT_PTDEPTH_2); + + vmw_fifo_commit(dev_priv, sizeof(*cmd)); + otable->page_table = mob; + + return 0; + +out_no_fifo: +out_no_populate: + vmw_mob_destroy(mob); + return ret; +} + +/* + * vmw_takedown_otable_base - Issue an object table base takedown command + * to the device + * + * @dev_priv: Pointer to a device private structure + * @type: Type of object table base + * + */ +static void vmw_takedown_otable_base(struct vmw_private *dev_priv, + SVGAOTableType type, + struct vmw_otable *otable) +{ + struct { + SVGA3dCmdHeader header; + SVGA3dCmdSetOTableBase body; + } *cmd; + struct ttm_buffer_object *bo; + + if (otable->page_table == NULL) + return; + + bo = otable->page_table->pt_bo; + cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for OTable " + "takedown.\n"); + } else { + memset(cmd, 0, sizeof(*cmd)); + cmd->header.id = SVGA_3D_CMD_SET_OTABLE_BASE; + cmd->header.size = sizeof(cmd->body); + cmd->body.type = type; + cmd->body.baseAddress = 0; + cmd->body.sizeInBytes = 0; + cmd->body.validSizeInBytes = 0; + cmd->body.ptDepth = SVGA3D_MOBFMT_INVALID; + vmw_fifo_commit(dev_priv, sizeof(*cmd)); + } + + if (bo) { + int ret; + + ret = ttm_bo_reserve(bo, false, true, false, NULL); + BUG_ON(ret != 0); + + vmw_fence_single_bo(bo, NULL); + ttm_bo_unreserve(bo); + } + + vmw_mob_destroy(otable->page_table); + otable->page_table = NULL; +} + +/* + * vmw_otables_setup - Set up guest backed memory object tables + * + * @dev_priv: Pointer to a device private structure + * + * Takes care of the device guest backed surface + * initialization, by setting up the guest backed memory object tables. + * Returns 0 on success and various error codes on failure. A succesful return + * means the object tables can be taken down using the vmw_otables_takedown + * function. + */ +int vmw_otables_setup(struct vmw_private *dev_priv) +{ + unsigned long offset; + unsigned long bo_size; + struct vmw_otable *otables; + SVGAOTableType i; + int ret; + + otables = kzalloc(SVGA_OTABLE_DX9_MAX * sizeof(*otables), + GFP_KERNEL); + if (unlikely(otables == NULL)) { + DRM_ERROR("Failed to allocate space for otable " + "metadata.\n"); + return -ENOMEM; + } + + otables[SVGA_OTABLE_MOB].size = + VMWGFX_NUM_MOB * SVGA3D_OTABLE_MOB_ENTRY_SIZE; + otables[SVGA_OTABLE_SURFACE].size = + VMWGFX_NUM_GB_SURFACE * SVGA3D_OTABLE_SURFACE_ENTRY_SIZE; + otables[SVGA_OTABLE_CONTEXT].size = + VMWGFX_NUM_GB_CONTEXT * SVGA3D_OTABLE_CONTEXT_ENTRY_SIZE; + otables[SVGA_OTABLE_SHADER].size = + VMWGFX_NUM_GB_SHADER * SVGA3D_OTABLE_SHADER_ENTRY_SIZE; + otables[SVGA_OTABLE_SCREEN_TARGET].size = + VMWGFX_NUM_GB_SCREEN_TARGET * + SVGA3D_OTABLE_SCREEN_TARGET_ENTRY_SIZE; + + bo_size = 0; + for (i = 0; i < SVGA_OTABLE_DX9_MAX; ++i) { + otables[i].size = + (otables[i].size + PAGE_SIZE - 1) & PAGE_MASK; + bo_size += otables[i].size; + } + + ret = ttm_bo_create(&dev_priv->bdev, bo_size, + ttm_bo_type_device, + &vmw_sys_ne_placement, + 0, false, NULL, + &dev_priv->otable_bo); + + if (unlikely(ret != 0)) + goto out_no_bo; + + ret = ttm_bo_reserve(dev_priv->otable_bo, false, true, false, NULL); + BUG_ON(ret != 0); + ret = vmw_bo_driver.ttm_tt_populate(dev_priv->otable_bo->ttm); + if (unlikely(ret != 0)) + goto out_unreserve; + ret = vmw_bo_map_dma(dev_priv->otable_bo); + if (unlikely(ret != 0)) + goto out_unreserve; + + ttm_bo_unreserve(dev_priv->otable_bo); + + offset = 0; + for (i = 0; i < SVGA_OTABLE_DX9_MAX - VMW_OTABLE_SETUP_SUB; ++i) { + ret = vmw_setup_otable_base(dev_priv, i, offset, + &otables[i]); + if (unlikely(ret != 0)) + goto out_no_setup; + offset += otables[i].size; + } + + dev_priv->otables = otables; + return 0; + +out_unreserve: + ttm_bo_unreserve(dev_priv->otable_bo); +out_no_setup: + for (i = 0; i < SVGA_OTABLE_DX9_MAX - VMW_OTABLE_SETUP_SUB; ++i) + vmw_takedown_otable_base(dev_priv, i, &otables[i]); + + ttm_bo_unref(&dev_priv->otable_bo); +out_no_bo: + kfree(otables); + return ret; +} + + +/* + * vmw_otables_takedown - Take down guest backed memory object tables + * + * @dev_priv: Pointer to a device private structure + * + * Take down the Guest Memory Object tables. + */ +void vmw_otables_takedown(struct vmw_private *dev_priv) +{ + SVGAOTableType i; + struct ttm_buffer_object *bo = dev_priv->otable_bo; + int ret; + + for (i = 0; i < SVGA_OTABLE_DX9_MAX - VMW_OTABLE_SETUP_SUB; ++i) + vmw_takedown_otable_base(dev_priv, i, + &dev_priv->otables[i]); + + ret = ttm_bo_reserve(bo, false, true, false, NULL); + BUG_ON(ret != 0); + + vmw_fence_single_bo(bo, NULL); + ttm_bo_unreserve(bo); + + ttm_bo_unref(&dev_priv->otable_bo); + kfree(dev_priv->otables); + dev_priv->otables = NULL; +} + + +/* + * vmw_mob_calculate_pt_pages - Calculate the number of page table pages + * needed for a guest backed memory object. + * + * @data_pages: Number of data pages in the memory object buffer. + */ +static unsigned long vmw_mob_calculate_pt_pages(unsigned long data_pages) +{ + unsigned long data_size = data_pages * PAGE_SIZE; + unsigned long tot_size = 0; + + while (likely(data_size > PAGE_SIZE)) { + data_size = DIV_ROUND_UP(data_size, PAGE_SIZE); + data_size *= VMW_PPN_SIZE; + tot_size += (data_size + PAGE_SIZE - 1) & PAGE_MASK; + } + + return tot_size >> PAGE_SHIFT; +} + +/* + * vmw_mob_create - Create a mob, but don't populate it. + * + * @data_pages: Number of data pages of the underlying buffer object. + */ +struct vmw_mob *vmw_mob_create(unsigned long data_pages) +{ + struct vmw_mob *mob = kzalloc(sizeof(*mob), GFP_KERNEL); + + if (unlikely(mob == NULL)) + return NULL; + + mob->num_pages = vmw_mob_calculate_pt_pages(data_pages); + + return mob; +} + +/* + * vmw_mob_pt_populate - Populate the mob pagetable + * + * @mob: Pointer to the mob the pagetable of which we want to + * populate. + * + * This function allocates memory to be used for the pagetable, and + * adjusts TTM memory accounting accordingly. Returns ENOMEM if + * memory resources aren't sufficient and may cause TTM buffer objects + * to be swapped out by using the TTM memory accounting function. + */ +static int vmw_mob_pt_populate(struct vmw_private *dev_priv, + struct vmw_mob *mob) +{ + int ret; + BUG_ON(mob->pt_bo != NULL); + + ret = ttm_bo_create(&dev_priv->bdev, mob->num_pages * PAGE_SIZE, + ttm_bo_type_device, + &vmw_sys_ne_placement, + 0, false, NULL, &mob->pt_bo); + if (unlikely(ret != 0)) + return ret; + + ret = ttm_bo_reserve(mob->pt_bo, false, true, false, NULL); + + BUG_ON(ret != 0); + ret = vmw_bo_driver.ttm_tt_populate(mob->pt_bo->ttm); + if (unlikely(ret != 0)) + goto out_unreserve; + ret = vmw_bo_map_dma(mob->pt_bo); + if (unlikely(ret != 0)) + goto out_unreserve; + + ttm_bo_unreserve(mob->pt_bo); + + return 0; + +out_unreserve: + ttm_bo_unreserve(mob->pt_bo); + ttm_bo_unref(&mob->pt_bo); + + return ret; +} + +/** + * vmw_mob_assign_ppn - Assign a value to a page table entry + * + * @addr: Pointer to pointer to page table entry. + * @val: The page table entry + * + * Assigns a value to a page table entry pointed to by *@addr and increments + * *@addr according to the page table entry size. + */ +#if (VMW_PPN_SIZE == 8) +static void vmw_mob_assign_ppn(__le32 **addr, dma_addr_t val) +{ + *((__le64 *) *addr) = cpu_to_le64(val >> PAGE_SHIFT); + *addr += 2; +} +#else +static void vmw_mob_assign_ppn(__le32 **addr, dma_addr_t val) +{ + *(*addr)++ = cpu_to_le32(val >> PAGE_SHIFT); +} +#endif + +/* + * vmw_mob_build_pt - Build a pagetable + * + * @data_addr: Array of DMA addresses to the underlying buffer + * object's data pages. + * @num_data_pages: Number of buffer object data pages. + * @pt_pages: Array of page pointers to the page table pages. + * + * Returns the number of page table pages actually used. + * Uses atomic kmaps of highmem pages to avoid TLB thrashing. + */ +static unsigned long vmw_mob_build_pt(struct vmw_piter *data_iter, + unsigned long num_data_pages, + struct vmw_piter *pt_iter) +{ + unsigned long pt_size = num_data_pages * VMW_PPN_SIZE; + unsigned long num_pt_pages = DIV_ROUND_UP(pt_size, PAGE_SIZE); + unsigned long pt_page; + __le32 *addr, *save_addr; + unsigned long i; + struct page *page; + + for (pt_page = 0; pt_page < num_pt_pages; ++pt_page) { + page = vmw_piter_page(pt_iter); + + save_addr = addr = kmap_atomic(page); + + for (i = 0; i < PAGE_SIZE / VMW_PPN_SIZE; ++i) { + vmw_mob_assign_ppn(&addr, + vmw_piter_dma_addr(data_iter)); + if (unlikely(--num_data_pages == 0)) + break; + WARN_ON(!vmw_piter_next(data_iter)); + } + kunmap_atomic(save_addr); + vmw_piter_next(pt_iter); + } + + return num_pt_pages; +} + +/* + * vmw_mob_build_pt - Set up a multilevel mob pagetable + * + * @mob: Pointer to a mob whose page table needs setting up. + * @data_addr Array of DMA addresses to the buffer object's data + * pages. + * @num_data_pages: Number of buffer object data pages. + * + * Uses tail recursion to set up a multilevel mob page table. + */ +static void vmw_mob_pt_setup(struct vmw_mob *mob, + struct vmw_piter data_iter, + unsigned long num_data_pages) +{ + unsigned long num_pt_pages = 0; + struct ttm_buffer_object *bo = mob->pt_bo; + struct vmw_piter save_pt_iter; + struct vmw_piter pt_iter; + const struct vmw_sg_table *vsgt; + int ret; + + ret = ttm_bo_reserve(bo, false, true, false, NULL); + BUG_ON(ret != 0); + + vsgt = vmw_bo_sg_table(bo); + vmw_piter_start(&pt_iter, vsgt, 0); + BUG_ON(!vmw_piter_next(&pt_iter)); + mob->pt_level = 0; + while (likely(num_data_pages > 1)) { + ++mob->pt_level; + BUG_ON(mob->pt_level > 2); + save_pt_iter = pt_iter; + num_pt_pages = vmw_mob_build_pt(&data_iter, num_data_pages, + &pt_iter); + data_iter = save_pt_iter; + num_data_pages = num_pt_pages; + } + + mob->pt_root_page = vmw_piter_dma_addr(&save_pt_iter); + ttm_bo_unreserve(bo); +} + +/* + * vmw_mob_destroy - Destroy a mob, unpopulating first if necessary. + * + * @mob: Pointer to a mob to destroy. + */ +void vmw_mob_destroy(struct vmw_mob *mob) +{ + if (mob->pt_bo) + ttm_bo_unref(&mob->pt_bo); + kfree(mob); +} + +/* + * vmw_mob_unbind - Hide a mob from the device. + * + * @dev_priv: Pointer to a device private. + * @mob_id: Device id of the mob to unbind. + */ +void vmw_mob_unbind(struct vmw_private *dev_priv, + struct vmw_mob *mob) +{ + struct { + SVGA3dCmdHeader header; + SVGA3dCmdDestroyGBMob body; + } *cmd; + int ret; + struct ttm_buffer_object *bo = mob->pt_bo; + + if (bo) { + ret = ttm_bo_reserve(bo, false, true, false, NULL); + /* + * Noone else should be using this buffer. + */ + BUG_ON(ret != 0); + } + + cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for Memory " + "Object unbinding.\n"); + } else { + cmd->header.id = SVGA_3D_CMD_DESTROY_GB_MOB; + cmd->header.size = sizeof(cmd->body); + cmd->body.mobid = mob->id; + vmw_fifo_commit(dev_priv, sizeof(*cmd)); + } + if (bo) { + vmw_fence_single_bo(bo, NULL); + ttm_bo_unreserve(bo); + } + vmw_3d_resource_dec(dev_priv, false); +} + +/* + * vmw_mob_bind - Make a mob visible to the device after first + * populating it if necessary. + * + * @dev_priv: Pointer to a device private. + * @mob: Pointer to the mob we're making visible. + * @data_addr: Array of DMA addresses to the data pages of the underlying + * buffer object. + * @num_data_pages: Number of data pages of the underlying buffer + * object. + * @mob_id: Device id of the mob to bind + * + * This function is intended to be interfaced with the ttm_tt backend + * code. + */ +int vmw_mob_bind(struct vmw_private *dev_priv, + struct vmw_mob *mob, + const struct vmw_sg_table *vsgt, + unsigned long num_data_pages, + int32_t mob_id) +{ + int ret; + bool pt_set_up = false; + struct vmw_piter data_iter; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdDefineGBMob64 body; + } *cmd; + + mob->id = mob_id; + vmw_piter_start(&data_iter, vsgt, 0); + if (unlikely(!vmw_piter_next(&data_iter))) + return 0; + + if (likely(num_data_pages == 1)) { + mob->pt_level = VMW_MOBFMT_PTDEPTH_0; + mob->pt_root_page = vmw_piter_dma_addr(&data_iter); + } else if (vsgt->num_regions == 1) { + mob->pt_level = SVGA3D_MOBFMT_RANGE; + mob->pt_root_page = vmw_piter_dma_addr(&data_iter); + } else if (unlikely(mob->pt_bo == NULL)) { + ret = vmw_mob_pt_populate(dev_priv, mob); + if (unlikely(ret != 0)) + return ret; + + vmw_mob_pt_setup(mob, data_iter, num_data_pages); + pt_set_up = true; + mob->pt_level += VMW_MOBFMT_PTDEPTH_1 - SVGA3D_MOBFMT_PTDEPTH_1; + } + + (void) vmw_3d_resource_inc(dev_priv, false); + + cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for Memory " + "Object binding.\n"); + goto out_no_cmd_space; + } + + cmd->header.id = SVGA_3D_CMD_DEFINE_GB_MOB64; + cmd->header.size = sizeof(cmd->body); + cmd->body.mobid = mob_id; + cmd->body.ptDepth = mob->pt_level; + cmd->body.base = cpu_to_le64(mob->pt_root_page >> PAGE_SHIFT); + cmd->body.sizeInBytes = num_data_pages * PAGE_SIZE; + + vmw_fifo_commit(dev_priv, sizeof(*cmd)); + + return 0; + +out_no_cmd_space: + vmw_3d_resource_dec(dev_priv, false); + if (pt_set_up) + ttm_bo_unref(&mob->pt_bo); + + return -ENOMEM; +} --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c @@ -88,6 +88,11 @@ return res; } +struct vmw_resource * +vmw_resource_reference_unless_doomed(struct vmw_resource *res) +{ + return kref_get_unless_zero(&res->kref) ? res : NULL; +} /** * vmw_resource_release_id - release a resource id to the id manager. @@ -136,8 +141,12 @@ vmw_dmabuf_unreference(&res->backup); } - if (likely(res->hw_destroy != NULL)) + if (likely(res->hw_destroy != NULL)) { res->hw_destroy(res); + mutex_lock(&dev_priv->binding_mutex); + vmw_context_binding_res_list_kill(&res->binding_head); + mutex_unlock(&dev_priv->binding_mutex); + } id = res->id; if (res->res_free != NULL) @@ -215,6 +224,7 @@ res->func = func; INIT_LIST_HEAD(&res->lru_head); INIT_LIST_HEAD(&res->mob_head); + INIT_LIST_HEAD(&res->binding_head); res->id = -1; res->backup = NULL; res->backup_offset = 0; @@ -417,8 +427,7 @@ INIT_LIST_HEAD(&vmw_bo->res_list); ret = ttm_bo_init(bdev, &vmw_bo->base, size, - (user) ? ttm_bo_type_device : - ttm_bo_type_kernel, placement, + ttm_bo_type_device, placement, 0, interruptible, NULL, acc_size, NULL, bo_free); return ret; @@ -441,6 +450,21 @@ ttm_bo_unref(&bo); } +static void vmw_user_dmabuf_ref_obj_release(struct ttm_base_object *base, + enum ttm_ref_type ref_type) +{ + struct vmw_user_dma_buffer *user_bo; + user_bo = container_of(base, struct vmw_user_dma_buffer, prime.base); + + switch (ref_type) { + case TTM_REF_SYNCCPU_WRITE: + ttm_bo_synccpu_write_release(&user_bo->dma.base); + break; + default: + BUG(); + } +} + /** * vmw_user_dmabuf_alloc - Allocate a user dma buffer * @@ -471,6 +495,8 @@ } ret = vmw_dmabuf_init(dev_priv, &user_bo->dma, size, + (dev_priv->has_mob) ? + &vmw_sys_placement : &vmw_vram_sys_placement, true, &vmw_user_dmabuf_destroy); if (unlikely(ret != 0)) @@ -482,7 +508,8 @@ &user_bo->prime, shareable, ttm_buffer_type, - &vmw_user_dmabuf_release, NULL); + &vmw_user_dmabuf_release, + &vmw_user_dmabuf_ref_obj_release); if (unlikely(ret != 0)) { ttm_bo_unref(&tmp); goto out_no_base_object; @@ -515,6 +542,130 @@ vmw_user_bo->prime.base.shareable) ? 0 : -EPERM; } +/** + * vmw_user_dmabuf_synccpu_grab - Grab a struct vmw_user_dma_buffer for cpu + * access, idling previous GPU operations on the buffer and optionally + * blocking it for further command submissions. + * + * @user_bo: Pointer to the buffer object being grabbed for CPU access + * @tfile: Identifying the caller. + * @flags: Flags indicating how the grab should be performed. + * + * A blocking grab will be automatically released when @tfile is closed. + */ +static int vmw_user_dmabuf_synccpu_grab(struct vmw_user_dma_buffer *user_bo, + struct ttm_object_file *tfile, + uint32_t flags) +{ + struct ttm_buffer_object *bo = &user_bo->dma.base; + bool existed; + int ret; + + if (flags & drm_vmw_synccpu_allow_cs) { + struct ttm_bo_device *bdev = bo->bdev; + + spin_lock(&bdev->fence_lock); + ret = ttm_bo_wait(bo, false, true, + !!(flags & drm_vmw_synccpu_dontblock)); + spin_unlock(&bdev->fence_lock); + return ret; + } + + ret = ttm_bo_synccpu_write_grab + (bo, !!(flags & drm_vmw_synccpu_dontblock)); + if (unlikely(ret != 0)) + return ret; + + ret = ttm_ref_object_add(tfile, &user_bo->prime.base, + TTM_REF_SYNCCPU_WRITE, &existed); + if (ret != 0 || existed) + ttm_bo_synccpu_write_release(&user_bo->dma.base); + + return ret; +} + +/** + * vmw_user_dmabuf_synccpu_release - Release a previous grab for CPU access, + * and unblock command submission on the buffer if blocked. + * + * @handle: Handle identifying the buffer object. + * @tfile: Identifying the caller. + * @flags: Flags indicating the type of release. + */ +static int vmw_user_dmabuf_synccpu_release(uint32_t handle, + struct ttm_object_file *tfile, + uint32_t flags) +{ + if (!(flags & drm_vmw_synccpu_allow_cs)) + return ttm_ref_object_base_unref(tfile, handle, + TTM_REF_SYNCCPU_WRITE); + + return 0; +} + +/** + * vmw_user_dmabuf_synccpu_release - ioctl function implementing the synccpu + * functionality. + * + * @dev: Identifies the drm device. + * @data: Pointer to the ioctl argument. + * @file_priv: Identifies the caller. + * + * This function checks the ioctl arguments for validity and calls the + * relevant synccpu functions. + */ +int vmw_user_dmabuf_synccpu_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv) +{ + struct drm_vmw_synccpu_arg *arg = + (struct drm_vmw_synccpu_arg *) data; + struct vmw_dma_buffer *dma_buf; + struct vmw_user_dma_buffer *user_bo; + struct ttm_object_file *tfile = vmw_fpriv(file_priv)->tfile; + int ret; + + if ((arg->flags & (drm_vmw_synccpu_read | drm_vmw_synccpu_write)) == 0 + || (arg->flags & ~(drm_vmw_synccpu_read | drm_vmw_synccpu_write | + drm_vmw_synccpu_dontblock | + drm_vmw_synccpu_allow_cs)) != 0) { + DRM_ERROR("Illegal synccpu flags.\n"); + return -EINVAL; + } + + switch (arg->op) { + case drm_vmw_synccpu_grab: + ret = vmw_user_dmabuf_lookup(tfile, arg->handle, &dma_buf); + if (unlikely(ret != 0)) + return ret; + + user_bo = container_of(dma_buf, struct vmw_user_dma_buffer, + dma); + ret = vmw_user_dmabuf_synccpu_grab(user_bo, tfile, arg->flags); + vmw_dmabuf_unreference(&dma_buf); + if (unlikely(ret != 0 && ret != -ERESTARTSYS && + ret != -EBUSY)) { + DRM_ERROR("Failed synccpu grab on handle 0x%08x.\n", + (unsigned int) arg->handle); + return ret; + } + break; + case drm_vmw_synccpu_release: + ret = vmw_user_dmabuf_synccpu_release(arg->handle, tfile, + arg->flags); + if (unlikely(ret != 0)) { + DRM_ERROR("Failed synccpu release on handle 0x%08x.\n", + (unsigned int) arg->handle); + return ret; + } + break; + default: + DRM_ERROR("Invalid synccpu operation.\n"); + return -EINVAL; + } + + return 0; +} + int vmw_dmabuf_alloc_ioctl(struct drm_device *dev, void *data, struct drm_file *file_priv) { @@ -591,7 +742,8 @@ } int vmw_user_dmabuf_reference(struct ttm_object_file *tfile, - struct vmw_dma_buffer *dma_buf) + struct vmw_dma_buffer *dma_buf, + uint32_t *handle) { struct vmw_user_dma_buffer *user_bo; @@ -599,6 +751,8 @@ return -EINVAL; user_bo = container_of(dma_buf, struct vmw_user_dma_buffer, dma); + + *handle = user_bo->prime.base.hash.key; return ttm_ref_object_add(tfile, &user_bo->prime.base, TTM_REF_USAGE, NULL); } @@ -1291,11 +1445,54 @@ * @mem: The truct ttm_mem_reg indicating to what memory * region the move is taking place. * - * For now does nothing. + * Evicts the Guest Backed hardware resource if the backup + * buffer is being moved out of MOB memory. + * Note that this function should not race with the resource + * validation code as long as it accesses only members of struct + * resource that remain static while bo::res is !NULL and + * while we have @bo reserved. struct resource::backup is *not* a + * static member. The resource validation code will take care + * to set @bo::res to NULL, while having @bo reserved when the + * buffer is no longer bound to the resource, so @bo:res can be + * used to determine whether there is a need to unbind and whether + * it is safe to unbind. */ void vmw_resource_move_notify(struct ttm_buffer_object *bo, struct ttm_mem_reg *mem) { + struct vmw_dma_buffer *dma_buf; + + if (mem == NULL) + return; + + if (bo->destroy != vmw_dmabuf_bo_free && + bo->destroy != vmw_user_dmabuf_destroy) + return; + + dma_buf = container_of(bo, struct vmw_dma_buffer, base); + + if (mem->mem_type != VMW_PL_MOB) { + struct vmw_resource *res, *n; + struct ttm_bo_device *bdev = bo->bdev; + struct ttm_validate_buffer val_buf; + + val_buf.bo = bo; + + list_for_each_entry_safe(res, n, &dma_buf->res_list, mob_head) { + + if (unlikely(res->func->unbind == NULL)) + continue; + + (void) res->func->unbind(res, true, &val_buf); + res->backup_dirty = true; + res->res_dirty = false; + list_del_init(&res->mob_head); + } + + spin_lock(&bdev->fence_lock); + (void) ttm_bo_wait(bo, false, false, false); + spin_unlock(&bdev->fence_lock); + } } /** --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_shader.c +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_shader.c @@ -0,0 +1,812 @@ +/************************************************************************** + * + * Copyright © 2009-2012 VMware, Inc., Palo Alto, CA., USA + * All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the + * "Software"), to deal in the Software without restriction, including + * without limitation the rights to use, copy, modify, merge, publish, + * distribute, sub license, and/or sell copies of the Software, and to + * permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice (including the + * next paragraph) shall be included in all copies or substantial portions + * of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL + * THE COPYRIGHT HOLDERS, AUTHORS AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, + * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR + * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE + * USE OR OTHER DEALINGS IN THE SOFTWARE. + * + **************************************************************************/ + +#include "vmwgfx_drv.h" +#include "vmwgfx_resource_priv.h" +#include "ttm/ttm_placement.h" + +#define VMW_COMPAT_SHADER_HT_ORDER 12 + +struct vmw_shader { + struct vmw_resource res; + SVGA3dShaderType type; + uint32_t size; +}; + +struct vmw_user_shader { + struct ttm_base_object base; + struct vmw_shader shader; +}; + +/** + * enum vmw_compat_shader_state - Staging state for compat shaders + */ +enum vmw_compat_shader_state { + VMW_COMPAT_COMMITED, + VMW_COMPAT_ADD, + VMW_COMPAT_DEL +}; + +/** + * struct vmw_compat_shader - Metadata for compat shaders. + * + * @handle: The TTM handle of the guest backed shader. + * @tfile: The struct ttm_object_file the guest backed shader is registered + * with. + * @hash: Hash item for lookup. + * @head: List head for staging lists or the compat shader manager list. + * @state: Staging state. + * + * The structure is protected by the cmdbuf lock. + */ +struct vmw_compat_shader { + u32 handle; + struct ttm_object_file *tfile; + struct drm_hash_item hash; + struct list_head head; + enum vmw_compat_shader_state state; +}; + +/** + * struct vmw_compat_shader_manager - Compat shader manager. + * + * @shaders: Hash table containing staged and commited compat shaders + * @list: List of commited shaders. + * @dev_priv: Pointer to a device private structure. + * + * @shaders and @list are protected by the cmdbuf mutex for now. + */ +struct vmw_compat_shader_manager { + struct drm_open_hash shaders; + struct list_head list; + struct vmw_private *dev_priv; +}; + +static void vmw_user_shader_free(struct vmw_resource *res); +static struct vmw_resource * +vmw_user_shader_base_to_res(struct ttm_base_object *base); + +static int vmw_gb_shader_create(struct vmw_resource *res); +static int vmw_gb_shader_bind(struct vmw_resource *res, + struct ttm_validate_buffer *val_buf); +static int vmw_gb_shader_unbind(struct vmw_resource *res, + bool readback, + struct ttm_validate_buffer *val_buf); +static int vmw_gb_shader_destroy(struct vmw_resource *res); + +static uint64_t vmw_user_shader_size; + +static const struct vmw_user_resource_conv user_shader_conv = { + .object_type = VMW_RES_SHADER, + .base_obj_to_res = vmw_user_shader_base_to_res, + .res_free = vmw_user_shader_free +}; + +const struct vmw_user_resource_conv *user_shader_converter = + &user_shader_conv; + + +static const struct vmw_res_func vmw_gb_shader_func = { + .res_type = vmw_res_shader, + .needs_backup = true, + .may_evict = true, + .type_name = "guest backed shaders", + .backup_placement = &vmw_mob_placement, + .create = vmw_gb_shader_create, + .destroy = vmw_gb_shader_destroy, + .bind = vmw_gb_shader_bind, + .unbind = vmw_gb_shader_unbind +}; + +/** + * Shader management: + */ + +static inline struct vmw_shader * +vmw_res_to_shader(struct vmw_resource *res) +{ + return container_of(res, struct vmw_shader, res); +} + +static void vmw_hw_shader_destroy(struct vmw_resource *res) +{ + (void) vmw_gb_shader_destroy(res); +} + +static int vmw_gb_shader_init(struct vmw_private *dev_priv, + struct vmw_resource *res, + uint32_t size, + uint64_t offset, + SVGA3dShaderType type, + struct vmw_dma_buffer *byte_code, + void (*res_free) (struct vmw_resource *res)) +{ + struct vmw_shader *shader = vmw_res_to_shader(res); + int ret; + + ret = vmw_resource_init(dev_priv, res, true, + res_free, &vmw_gb_shader_func); + + + if (unlikely(ret != 0)) { + if (res_free) + res_free(res); + else + kfree(res); + return ret; + } + + res->backup_size = size; + if (byte_code) { + res->backup = vmw_dmabuf_reference(byte_code); + res->backup_offset = offset; + } + shader->size = size; + shader->type = type; + + vmw_resource_activate(res, vmw_hw_shader_destroy); + return 0; +} + +static int vmw_gb_shader_create(struct vmw_resource *res) +{ + struct vmw_private *dev_priv = res->dev_priv; + struct vmw_shader *shader = vmw_res_to_shader(res); + int ret; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdDefineGBShader body; + } *cmd; + + if (likely(res->id != -1)) + return 0; + + ret = vmw_resource_alloc_id(res); + if (unlikely(ret != 0)) { + DRM_ERROR("Failed to allocate a shader id.\n"); + goto out_no_id; + } + + if (unlikely(res->id >= VMWGFX_NUM_GB_SHADER)) { + ret = -EBUSY; + goto out_no_fifo; + } + + cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for shader " + "creation.\n"); + ret = -ENOMEM; + goto out_no_fifo; + } + + cmd->header.id = SVGA_3D_CMD_DEFINE_GB_SHADER; + cmd->header.size = sizeof(cmd->body); + cmd->body.shid = res->id; + cmd->body.type = shader->type; + cmd->body.sizeInBytes = shader->size; + vmw_fifo_commit(dev_priv, sizeof(*cmd)); + (void) vmw_3d_resource_inc(dev_priv, false); + + return 0; + +out_no_fifo: + vmw_resource_release_id(res); +out_no_id: + return ret; +} + +static int vmw_gb_shader_bind(struct vmw_resource *res, + struct ttm_validate_buffer *val_buf) +{ + struct vmw_private *dev_priv = res->dev_priv; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdBindGBShader body; + } *cmd; + struct ttm_buffer_object *bo = val_buf->bo; + + BUG_ON(bo->mem.mem_type != VMW_PL_MOB); + + cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for shader " + "binding.\n"); + return -ENOMEM; + } + + cmd->header.id = SVGA_3D_CMD_BIND_GB_SHADER; + cmd->header.size = sizeof(cmd->body); + cmd->body.shid = res->id; + cmd->body.mobid = bo->mem.start; + cmd->body.offsetInBytes = 0; + res->backup_dirty = false; + vmw_fifo_commit(dev_priv, sizeof(*cmd)); + + return 0; +} + +static int vmw_gb_shader_unbind(struct vmw_resource *res, + bool readback, + struct ttm_validate_buffer *val_buf) +{ + struct vmw_private *dev_priv = res->dev_priv; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdBindGBShader body; + } *cmd; + struct vmw_fence_obj *fence; + + BUG_ON(res->backup->base.mem.mem_type != VMW_PL_MOB); + + cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for shader " + "unbinding.\n"); + return -ENOMEM; + } + + cmd->header.id = SVGA_3D_CMD_BIND_GB_SHADER; + cmd->header.size = sizeof(cmd->body); + cmd->body.shid = res->id; + cmd->body.mobid = SVGA3D_INVALID_ID; + cmd->body.offsetInBytes = 0; + vmw_fifo_commit(dev_priv, sizeof(*cmd)); + + /* + * Create a fence object and fence the backup buffer. + */ + + (void) vmw_execbuf_fence_commands(NULL, dev_priv, + &fence, NULL); + + vmw_fence_single_bo(val_buf->bo, fence); + + if (likely(fence != NULL)) + vmw_fence_obj_unreference(&fence); + + return 0; +} + +static int vmw_gb_shader_destroy(struct vmw_resource *res) +{ + struct vmw_private *dev_priv = res->dev_priv; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdDestroyGBShader body; + } *cmd; + + if (likely(res->id == -1)) + return 0; + + mutex_lock(&dev_priv->binding_mutex); + vmw_context_binding_res_list_scrub(&res->binding_head); + + cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for shader " + "destruction.\n"); + mutex_unlock(&dev_priv->binding_mutex); + return -ENOMEM; + } + + cmd->header.id = SVGA_3D_CMD_DESTROY_GB_SHADER; + cmd->header.size = sizeof(cmd->body); + cmd->body.shid = res->id; + vmw_fifo_commit(dev_priv, sizeof(*cmd)); + mutex_unlock(&dev_priv->binding_mutex); + vmw_resource_release_id(res); + vmw_3d_resource_dec(dev_priv, false); + + return 0; +} + +/** + * User-space shader management: + */ + +static struct vmw_resource * +vmw_user_shader_base_to_res(struct ttm_base_object *base) +{ + return &(container_of(base, struct vmw_user_shader, base)-> + shader.res); +} + +static void vmw_user_shader_free(struct vmw_resource *res) +{ + struct vmw_user_shader *ushader = + container_of(res, struct vmw_user_shader, shader.res); + struct vmw_private *dev_priv = res->dev_priv; + + ttm_base_object_kfree(ushader, base); + ttm_mem_global_free(vmw_mem_glob(dev_priv), + vmw_user_shader_size); +} + +/** + * This function is called when user space has no more references on the + * base object. It releases the base-object's reference on the resource object. + */ + +static void vmw_user_shader_base_release(struct ttm_base_object **p_base) +{ + struct ttm_base_object *base = *p_base; + struct vmw_resource *res = vmw_user_shader_base_to_res(base); + + *p_base = NULL; + vmw_resource_unreference(&res); +} + +int vmw_shader_destroy_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv) +{ + struct drm_vmw_shader_arg *arg = (struct drm_vmw_shader_arg *)data; + struct ttm_object_file *tfile = vmw_fpriv(file_priv)->tfile; + + return ttm_ref_object_base_unref(tfile, arg->handle, + TTM_REF_USAGE); +} + +static int vmw_shader_alloc(struct vmw_private *dev_priv, + struct vmw_dma_buffer *buffer, + size_t shader_size, + size_t offset, + SVGA3dShaderType shader_type, + struct ttm_object_file *tfile, + u32 *handle) +{ + struct vmw_user_shader *ushader; + struct vmw_resource *res, *tmp; + int ret; + + /* + * Approximate idr memory usage with 128 bytes. It will be limited + * by maximum number_of shaders anyway. + */ + if (unlikely(vmw_user_shader_size == 0)) + vmw_user_shader_size = + ttm_round_pot(sizeof(struct vmw_user_shader)) + 128; + + ret = ttm_mem_global_alloc(vmw_mem_glob(dev_priv), + vmw_user_shader_size, + false, true); + if (unlikely(ret != 0)) { + if (ret != -ERESTARTSYS) + DRM_ERROR("Out of graphics memory for shader " + "creation.\n"); + goto out; + } + + ushader = kzalloc(sizeof(*ushader), GFP_KERNEL); + if (unlikely(ushader == NULL)) { + ttm_mem_global_free(vmw_mem_glob(dev_priv), + vmw_user_shader_size); + ret = -ENOMEM; + goto out; + } + + res = &ushader->shader.res; + ushader->base.shareable = false; + ushader->base.tfile = NULL; + + /* + * From here on, the destructor takes over resource freeing. + */ + + ret = vmw_gb_shader_init(dev_priv, res, shader_size, + offset, shader_type, buffer, + vmw_user_shader_free); + if (unlikely(ret != 0)) + goto out; + + tmp = vmw_resource_reference(res); + ret = ttm_base_object_init(tfile, &ushader->base, false, + VMW_RES_SHADER, + &vmw_user_shader_base_release, NULL); + + if (unlikely(ret != 0)) { + vmw_resource_unreference(&tmp); + goto out_err; + } + + if (handle) + *handle = ushader->base.hash.key; +out_err: + vmw_resource_unreference(&res); +out: + return ret; +} + + +int vmw_shader_define_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv) +{ + struct vmw_private *dev_priv = vmw_priv(dev); + struct drm_vmw_shader_create_arg *arg = + (struct drm_vmw_shader_create_arg *)data; + struct ttm_object_file *tfile = vmw_fpriv(file_priv)->tfile; + struct vmw_master *vmaster = vmw_master(file_priv->master); + struct vmw_dma_buffer *buffer = NULL; + SVGA3dShaderType shader_type; + int ret; + + if (arg->buffer_handle != SVGA3D_INVALID_ID) { + ret = vmw_user_dmabuf_lookup(tfile, arg->buffer_handle, + &buffer); + if (unlikely(ret != 0)) { + DRM_ERROR("Could not find buffer for shader " + "creation.\n"); + return ret; + } + + if ((u64)buffer->base.num_pages * PAGE_SIZE < + (u64)arg->size + (u64)arg->offset) { + DRM_ERROR("Illegal buffer- or shader size.\n"); + ret = -EINVAL; + goto out_bad_arg; + } + } + + switch (arg->shader_type) { + case drm_vmw_shader_type_vs: + shader_type = SVGA3D_SHADERTYPE_VS; + break; + case drm_vmw_shader_type_ps: + shader_type = SVGA3D_SHADERTYPE_PS; + break; + case drm_vmw_shader_type_gs: + shader_type = SVGA3D_SHADERTYPE_GS; + break; + default: + DRM_ERROR("Illegal shader type.\n"); + ret = -EINVAL; + goto out_bad_arg; + } + + ret = ttm_read_lock(&vmaster->lock, true); + if (unlikely(ret != 0)) + goto out_bad_arg; + + ret = vmw_shader_alloc(dev_priv, buffer, arg->size, arg->offset, + shader_type, tfile, &arg->shader_handle); + + ttm_read_unlock(&vmaster->lock); +out_bad_arg: + vmw_dmabuf_unreference(&buffer); + return ret; +} + +/** + * vmw_compat_shader_lookup - Look up a compat shader + * + * @man: Pointer to the compat shader manager. + * @shader_type: The shader type, that combined with the user_key identifies + * the shader. + * @user_key: On entry, this should be a pointer to the user_key. + * On successful exit, it will contain the guest-backed shader's TTM handle. + * + * Returns 0 on success. Non-zero on failure, in which case the value pointed + * to by @user_key is unmodified. + */ +int vmw_compat_shader_lookup(struct vmw_compat_shader_manager *man, + SVGA3dShaderType shader_type, + u32 *user_key) +{ + struct drm_hash_item *hash; + int ret; + unsigned long key = *user_key | (shader_type << 24); + + ret = drm_ht_find_item(&man->shaders, key, &hash); + if (unlikely(ret != 0)) + return ret; + + *user_key = drm_hash_entry(hash, struct vmw_compat_shader, + hash)->handle; + + return 0; +} + +/** + * vmw_compat_shader_free - Free a compat shader. + * + * @man: Pointer to the compat shader manager. + * @entry: Pointer to a struct vmw_compat_shader. + * + * Frees a struct vmw_compat_shder entry and drops its reference to the + * guest backed shader. + */ +static void vmw_compat_shader_free(struct vmw_compat_shader_manager *man, + struct vmw_compat_shader *entry) +{ + list_del(&entry->head); + WARN_ON(drm_ht_remove_item(&man->shaders, &entry->hash)); + WARN_ON(ttm_ref_object_base_unref(entry->tfile, entry->handle, + TTM_REF_USAGE)); + kfree(entry); +} + +/** + * vmw_compat_shaders_commit - Commit a list of compat shader actions. + * + * @man: Pointer to the compat shader manager. + * @list: Caller's list of compat shader actions. + * + * This function commits a list of compat shader additions or removals. + * It is typically called when the execbuf ioctl call triggering these + * actions has commited the fifo contents to the device. + */ +void vmw_compat_shaders_commit(struct vmw_compat_shader_manager *man, + struct list_head *list) +{ + struct vmw_compat_shader *entry, *next; + + list_for_each_entry_safe(entry, next, list, head) { + list_del(&entry->head); + switch (entry->state) { + case VMW_COMPAT_ADD: + entry->state = VMW_COMPAT_COMMITED; + list_add_tail(&entry->head, &man->list); + break; + case VMW_COMPAT_DEL: + ttm_ref_object_base_unref(entry->tfile, entry->handle, + TTM_REF_USAGE); + kfree(entry); + break; + default: + BUG(); + break; + } + } +} + +/** + * vmw_compat_shaders_revert - Revert a list of compat shader actions + * + * @man: Pointer to the compat shader manager. + * @list: Caller's list of compat shader actions. + * + * This function reverts a list of compat shader additions or removals. + * It is typically called when the execbuf ioctl call triggering these + * actions failed for some reason, and the command stream was never + * submitted. + */ +void vmw_compat_shaders_revert(struct vmw_compat_shader_manager *man, + struct list_head *list) +{ + struct vmw_compat_shader *entry, *next; + int ret; + + list_for_each_entry_safe(entry, next, list, head) { + switch (entry->state) { + case VMW_COMPAT_ADD: + vmw_compat_shader_free(man, entry); + break; + case VMW_COMPAT_DEL: + ret = drm_ht_insert_item(&man->shaders, &entry->hash); + list_del(&entry->head); + list_add_tail(&entry->head, &man->list); + entry->state = VMW_COMPAT_COMMITED; + break; + default: + BUG(); + break; + } + } +} + +/** + * vmw_compat_shader_remove - Stage a compat shader for removal. + * + * @man: Pointer to the compat shader manager + * @user_key: The key that is used to identify the shader. The key is + * unique to the shader type. + * @shader_type: Shader type. + * @list: Caller's list of staged shader actions. + * + * This function stages a compat shader for removal and removes the key from + * the shader manager's hash table. If the shader was previously only staged + * for addition it is completely removed (But the execbuf code may keep a + * reference if it was bound to a context between addition and removal). If + * it was previously commited to the manager, it is staged for removal. + */ +int vmw_compat_shader_remove(struct vmw_compat_shader_manager *man, + u32 user_key, SVGA3dShaderType shader_type, + struct list_head *list) +{ + struct vmw_compat_shader *entry; + struct drm_hash_item *hash; + int ret; + + ret = drm_ht_find_item(&man->shaders, user_key | (shader_type << 24), + &hash); + if (likely(ret != 0)) + return -EINVAL; + + entry = drm_hash_entry(hash, struct vmw_compat_shader, hash); + + switch (entry->state) { + case VMW_COMPAT_ADD: + vmw_compat_shader_free(man, entry); + break; + case VMW_COMPAT_COMMITED: + (void) drm_ht_remove_item(&man->shaders, &entry->hash); + list_del(&entry->head); + entry->state = VMW_COMPAT_DEL; + list_add_tail(&entry->head, list); + break; + default: + BUG(); + break; + } + + return 0; +} + +/** + * vmw_compat_shader_add - Create a compat shader and add the + * key to the manager + * + * @man: Pointer to the compat shader manager + * @user_key: The key that is used to identify the shader. The key is + * unique to the shader type. + * @bytecode: Pointer to the bytecode of the shader. + * @shader_type: Shader type. + * @tfile: Pointer to a struct ttm_object_file that the guest-backed shader is + * to be created with. + * @list: Caller's list of staged shader actions. + * + * Note that only the key is added to the shader manager's hash table. + * The shader is not yet added to the shader manager's list of shaders. + */ +int vmw_compat_shader_add(struct vmw_compat_shader_manager *man, + u32 user_key, const void *bytecode, + SVGA3dShaderType shader_type, + size_t size, + struct ttm_object_file *tfile, + struct list_head *list) +{ + struct vmw_dma_buffer *buf; + struct ttm_bo_kmap_obj map; + bool is_iomem; + struct vmw_compat_shader *compat; + u32 handle; + int ret; + + if (user_key > ((1 << 24) - 1) || (unsigned) shader_type > 16) + return -EINVAL; + + /* Allocate and pin a DMA buffer */ + buf = kzalloc(sizeof(*buf), GFP_KERNEL); + if (unlikely(buf == NULL)) + return -ENOMEM; + + ret = vmw_dmabuf_init(man->dev_priv, buf, size, &vmw_sys_ne_placement, + true, vmw_dmabuf_bo_free); + if (unlikely(ret != 0)) + goto out; + + ret = ttm_bo_reserve(&buf->base, false, true, false, NULL); + if (unlikely(ret != 0)) + goto no_reserve; + + /* Map and copy shader bytecode. */ + ret = ttm_bo_kmap(&buf->base, 0, PAGE_ALIGN(size) >> PAGE_SHIFT, + &map); + if (unlikely(ret != 0)) { + ttm_bo_unreserve(&buf->base); + goto no_reserve; + } + + memcpy(ttm_kmap_obj_virtual(&map, &is_iomem), bytecode, size); + WARN_ON(is_iomem); + + ttm_bo_kunmap(&map); + ret = ttm_bo_validate(&buf->base, &vmw_sys_placement, false, true); + WARN_ON(ret != 0); + ttm_bo_unreserve(&buf->base); + + /* Create a guest-backed shader container backed by the dma buffer */ + ret = vmw_shader_alloc(man->dev_priv, buf, size, 0, shader_type, + tfile, &handle); + vmw_dmabuf_unreference(&buf); + if (unlikely(ret != 0)) + goto no_reserve; + /* + * Create a compat shader structure and stage it for insertion + * in the manager + */ + compat = kzalloc(sizeof(*compat), GFP_KERNEL); + if (compat == NULL) + goto no_compat; + + compat->hash.key = user_key | (shader_type << 24); + ret = drm_ht_insert_item(&man->shaders, &compat->hash); + if (unlikely(ret != 0)) + goto out_invalid_key; + + compat->state = VMW_COMPAT_ADD; + compat->handle = handle; + compat->tfile = tfile; + list_add_tail(&compat->head, list); + + return 0; + +out_invalid_key: + kfree(compat); +no_compat: + ttm_ref_object_base_unref(tfile, handle, TTM_REF_USAGE); +no_reserve: +out: + return ret; +} + +/** + * vmw_compat_shader_man_create - Create a compat shader manager + * + * @dev_priv: Pointer to a device private structure. + * + * Typically done at file open time. If successful returns a pointer to a + * compat shader manager. Otherwise returns an error pointer. + */ +struct vmw_compat_shader_manager * +vmw_compat_shader_man_create(struct vmw_private *dev_priv) +{ + struct vmw_compat_shader_manager *man; + int ret; + + man = kzalloc(sizeof(*man), GFP_KERNEL); + if (man == NULL) + return ERR_PTR(-ENOMEM); + + man->dev_priv = dev_priv; + INIT_LIST_HEAD(&man->list); + ret = drm_ht_create(&man->shaders, VMW_COMPAT_SHADER_HT_ORDER); + if (ret == 0) + return man; + + kfree(man); + return ERR_PTR(ret); +} + +/** + * vmw_compat_shader_man_destroy - Destroy a compat shader manager + * + * @man: Pointer to the shader manager to destroy. + * + * Typically done at file close time. + */ +void vmw_compat_shader_man_destroy(struct vmw_compat_shader_manager *man) +{ + struct vmw_compat_shader *entry, *next; + + mutex_lock(&man->dev_priv->cmdbuf_mutex); + list_for_each_entry_safe(entry, next, &man->list, head) + vmw_compat_shader_free(man, entry); + + mutex_unlock(&man->dev_priv->cmdbuf_mutex); + kfree(man); +} --- linux-3.13.0.orig/drivers/gpu/drm/vmwgfx/vmwgfx_surface.c +++ linux-3.13.0/drivers/gpu/drm/vmwgfx/vmwgfx_surface.c @@ -41,7 +41,6 @@ struct ttm_prime_object prime; struct vmw_surface srf; uint32_t size; - uint32_t backup_handle; }; /** @@ -68,6 +67,14 @@ struct ttm_validate_buffer *val_buf); static int vmw_legacy_srf_create(struct vmw_resource *res); static int vmw_legacy_srf_destroy(struct vmw_resource *res); +static int vmw_gb_surface_create(struct vmw_resource *res); +static int vmw_gb_surface_bind(struct vmw_resource *res, + struct ttm_validate_buffer *val_buf); +static int vmw_gb_surface_unbind(struct vmw_resource *res, + bool readback, + struct ttm_validate_buffer *val_buf); +static int vmw_gb_surface_destroy(struct vmw_resource *res); + static const struct vmw_user_resource_conv user_surface_conv = { .object_type = VMW_RES_SURFACE, @@ -93,6 +100,18 @@ .unbind = &vmw_legacy_srf_unbind }; +static const struct vmw_res_func vmw_gb_surface_func = { + .res_type = vmw_res_surface, + .needs_backup = true, + .may_evict = true, + .type_name = "guest backed surfaces", + .backup_placement = &vmw_mob_placement, + .create = vmw_gb_surface_create, + .destroy = vmw_gb_surface_destroy, + .bind = vmw_gb_surface_bind, + .unbind = vmw_gb_surface_unbind +}; + /** * struct vmw_surface_dma - SVGA3D DMA command */ @@ -291,6 +310,11 @@ struct vmw_surface *srf; void *cmd; + if (res->func->destroy == vmw_gb_surface_destroy) { + (void) vmw_gb_surface_destroy(res); + return; + } + if (res->id != -1) { cmd = vmw_fifo_reserve(dev_priv, vmw_surface_destroy_size()); @@ -549,12 +573,15 @@ struct vmw_resource *res = &srf->res; BUG_ON(res_free == NULL); - (void) vmw_3d_resource_inc(dev_priv, false); + if (!dev_priv->has_mob) + (void) vmw_3d_resource_inc(dev_priv, false); ret = vmw_resource_init(dev_priv, res, true, res_free, + (dev_priv->has_mob) ? &vmw_gb_surface_func : &vmw_legacy_surface_func); if (unlikely(ret != 0)) { - vmw_3d_resource_dec(dev_priv, false); + if (!dev_priv->has_mob) + vmw_3d_resource_dec(dev_priv, false); res_free(res); return ret; } @@ -750,7 +777,7 @@ srf->base_size = *srf->sizes; srf->autogen_filter = SVGA3D_TEX_FILTER_NONE; - srf->multisample_count = 1; + srf->multisample_count = 0; cur_bo_offset = 0; cur_offset = srf->offsets; @@ -803,6 +830,24 @@ if (unlikely(ret != 0)) goto out_unlock; + /* + * A gb-aware client referencing a shared surface will + * expect a backup buffer to be present. + */ + if (dev_priv->has_mob && req->shareable) { + uint32_t backup_handle; + + ret = vmw_user_dmabuf_alloc(dev_priv, tfile, + res->backup_size, + true, + &backup_handle, + &res->backup); + if (unlikely(ret != 0)) { + vmw_resource_unreference(&res); + goto out_unlock; + } + } + tmp = vmw_resource_reference(&srf->res); ret = ttm_prime_object_init(tfile, res->backup_size, &user_srf->prime, req->shareable, VMW_RES_SURFACE, @@ -843,6 +888,7 @@ int vmw_surface_reference_ioctl(struct drm_device *dev, void *data, struct drm_file *file_priv) { + struct vmw_private *dev_priv = vmw_priv(dev); union drm_vmw_surface_reference_arg *arg = (union drm_vmw_surface_reference_arg *)data; struct drm_vmw_surface_arg *req = &arg->req; @@ -854,7 +900,7 @@ struct ttm_base_object *base; int ret = -EINVAL; - base = ttm_base_object_lookup(tfile, req->sid); + base = ttm_base_object_lookup_for_ref(dev_priv->tdev, req->sid); if (unlikely(base == NULL)) { DRM_ERROR("Could not find surface to reference.\n"); return -EINVAL; @@ -880,8 +926,8 @@ rep->size_addr; if (user_sizes) - ret = copy_to_user(user_sizes, srf->sizes, - srf->num_sizes * sizeof(*srf->sizes)); + ret = copy_to_user(user_sizes, &srf->base_size, + sizeof(srf->base_size)); if (unlikely(ret != 0)) { DRM_ERROR("copy_to_user failed %p %u\n", user_sizes, srf->num_sizes); @@ -892,4 +938,437 @@ ttm_base_object_unref(&base); return ret; +} + +/** + * vmw_surface_define_encode - Encode a surface_define command. + * + * @srf: Pointer to a struct vmw_surface object. + * @cmd_space: Pointer to memory area in which the commands should be encoded. + */ +static int vmw_gb_surface_create(struct vmw_resource *res) +{ + struct vmw_private *dev_priv = res->dev_priv; + struct vmw_surface *srf = vmw_res_to_srf(res); + uint32_t cmd_len, submit_len; + int ret; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdDefineGBSurface body; + } *cmd; + + if (likely(res->id != -1)) + return 0; + + (void) vmw_3d_resource_inc(dev_priv, false); + ret = vmw_resource_alloc_id(res); + if (unlikely(ret != 0)) { + DRM_ERROR("Failed to allocate a surface id.\n"); + goto out_no_id; + } + + if (unlikely(res->id >= VMWGFX_NUM_GB_SURFACE)) { + ret = -EBUSY; + goto out_no_fifo; + } + + cmd_len = sizeof(cmd->body); + submit_len = sizeof(*cmd); + cmd = vmw_fifo_reserve(dev_priv, submit_len); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for surface " + "creation.\n"); + ret = -ENOMEM; + goto out_no_fifo; + } + + cmd->header.id = SVGA_3D_CMD_DEFINE_GB_SURFACE; + cmd->header.size = cmd_len; + cmd->body.sid = srf->res.id; + cmd->body.surfaceFlags = srf->flags; + cmd->body.format = cpu_to_le32(srf->format); + cmd->body.numMipLevels = srf->mip_levels[0]; + cmd->body.multisampleCount = srf->multisample_count; + cmd->body.autogenFilter = srf->autogen_filter; + cmd->body.size.width = srf->base_size.width; + cmd->body.size.height = srf->base_size.height; + cmd->body.size.depth = srf->base_size.depth; + vmw_fifo_commit(dev_priv, submit_len); + + return 0; + +out_no_fifo: + vmw_resource_release_id(res); +out_no_id: + vmw_3d_resource_dec(dev_priv, false); + return ret; +} + + +static int vmw_gb_surface_bind(struct vmw_resource *res, + struct ttm_validate_buffer *val_buf) +{ + struct vmw_private *dev_priv = res->dev_priv; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdBindGBSurface body; + } *cmd1; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdUpdateGBSurface body; + } *cmd2; + uint32_t submit_size; + struct ttm_buffer_object *bo = val_buf->bo; + + BUG_ON(bo->mem.mem_type != VMW_PL_MOB); + + submit_size = sizeof(*cmd1) + (res->backup_dirty ? sizeof(*cmd2) : 0); + + cmd1 = vmw_fifo_reserve(dev_priv, submit_size); + if (unlikely(cmd1 == NULL)) { + DRM_ERROR("Failed reserving FIFO space for surface " + "binding.\n"); + return -ENOMEM; + } + + cmd1->header.id = SVGA_3D_CMD_BIND_GB_SURFACE; + cmd1->header.size = sizeof(cmd1->body); + cmd1->body.sid = res->id; + cmd1->body.mobid = bo->mem.start; + if (res->backup_dirty) { + cmd2 = (void *) &cmd1[1]; + cmd2->header.id = SVGA_3D_CMD_UPDATE_GB_SURFACE; + cmd2->header.size = sizeof(cmd2->body); + cmd2->body.sid = res->id; + res->backup_dirty = false; + } + vmw_fifo_commit(dev_priv, submit_size); + + return 0; +} + +static int vmw_gb_surface_unbind(struct vmw_resource *res, + bool readback, + struct ttm_validate_buffer *val_buf) +{ + struct vmw_private *dev_priv = res->dev_priv; + struct ttm_buffer_object *bo = val_buf->bo; + struct vmw_fence_obj *fence; + + struct { + SVGA3dCmdHeader header; + SVGA3dCmdReadbackGBSurface body; + } *cmd1; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdInvalidateGBSurface body; + } *cmd2; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdBindGBSurface body; + } *cmd3; + uint32_t submit_size; + uint8_t *cmd; + + + BUG_ON(bo->mem.mem_type != VMW_PL_MOB); + + submit_size = sizeof(*cmd3) + (readback ? sizeof(*cmd1) : sizeof(*cmd2)); + cmd = vmw_fifo_reserve(dev_priv, submit_size); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for surface " + "unbinding.\n"); + return -ENOMEM; + } + + if (readback) { + cmd1 = (void *) cmd; + cmd1->header.id = SVGA_3D_CMD_READBACK_GB_SURFACE; + cmd1->header.size = sizeof(cmd1->body); + cmd1->body.sid = res->id; + cmd3 = (void *) &cmd1[1]; + } else { + cmd2 = (void *) cmd; + cmd2->header.id = SVGA_3D_CMD_INVALIDATE_GB_SURFACE; + cmd2->header.size = sizeof(cmd2->body); + cmd2->body.sid = res->id; + cmd3 = (void *) &cmd2[1]; + } + + cmd3->header.id = SVGA_3D_CMD_BIND_GB_SURFACE; + cmd3->header.size = sizeof(cmd3->body); + cmd3->body.sid = res->id; + cmd3->body.mobid = SVGA3D_INVALID_ID; + + vmw_fifo_commit(dev_priv, submit_size); + + /* + * Create a fence object and fence the backup buffer. + */ + + (void) vmw_execbuf_fence_commands(NULL, dev_priv, + &fence, NULL); + + vmw_fence_single_bo(val_buf->bo, fence); + + if (likely(fence != NULL)) + vmw_fence_obj_unreference(&fence); + + return 0; +} + +static int vmw_gb_surface_destroy(struct vmw_resource *res) +{ + struct vmw_private *dev_priv = res->dev_priv; + struct { + SVGA3dCmdHeader header; + SVGA3dCmdDestroyGBSurface body; + } *cmd; + + if (likely(res->id == -1)) + return 0; + + mutex_lock(&dev_priv->binding_mutex); + vmw_context_binding_res_list_scrub(&res->binding_head); + + cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd)); + if (unlikely(cmd == NULL)) { + DRM_ERROR("Failed reserving FIFO space for surface " + "destruction.\n"); + mutex_unlock(&dev_priv->binding_mutex); + return -ENOMEM; + } + + cmd->header.id = SVGA_3D_CMD_DESTROY_GB_SURFACE; + cmd->header.size = sizeof(cmd->body); + cmd->body.sid = res->id; + vmw_fifo_commit(dev_priv, sizeof(*cmd)); + mutex_unlock(&dev_priv->binding_mutex); + vmw_resource_release_id(res); + vmw_3d_resource_dec(dev_priv, false); + + return 0; +} + +/** + * vmw_gb_surface_define_ioctl - Ioctl function implementing + * the user surface define functionality. + * + * @dev: Pointer to a struct drm_device. + * @data: Pointer to data copied from / to user-space. + * @file_priv: Pointer to a drm file private structure. + */ +int vmw_gb_surface_define_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv) +{ + struct vmw_private *dev_priv = vmw_priv(dev); + struct vmw_user_surface *user_srf; + struct vmw_surface *srf; + struct vmw_resource *res; + struct vmw_resource *tmp; + union drm_vmw_gb_surface_create_arg *arg = + (union drm_vmw_gb_surface_create_arg *)data; + struct drm_vmw_gb_surface_create_req *req = &arg->req; + struct drm_vmw_gb_surface_create_rep *rep = &arg->rep; + struct ttm_object_file *tfile = vmw_fpriv(file_priv)->tfile; + int ret; + uint32_t size; + struct vmw_master *vmaster = vmw_master(file_priv->master); + const struct svga3d_surface_desc *desc; + uint32_t backup_handle; + + if (unlikely(vmw_user_surface_size == 0)) + vmw_user_surface_size = ttm_round_pot(sizeof(*user_srf)) + + 128; + + size = vmw_user_surface_size + 128; + + desc = svga3dsurface_get_desc(req->format); + if (unlikely(desc->block_desc == SVGA3DBLOCKDESC_NONE)) { + DRM_ERROR("Invalid surface format for surface creation.\n"); + return -EINVAL; + } + + ret = ttm_read_lock(&vmaster->lock, true); + if (unlikely(ret != 0)) + return ret; + + ret = ttm_mem_global_alloc(vmw_mem_glob(dev_priv), + size, false, true); + if (unlikely(ret != 0)) { + if (ret != -ERESTARTSYS) + DRM_ERROR("Out of graphics memory for surface" + " creation.\n"); + goto out_unlock; + } + + user_srf = kzalloc(sizeof(*user_srf), GFP_KERNEL); + if (unlikely(user_srf == NULL)) { + ret = -ENOMEM; + goto out_no_user_srf; + } + + srf = &user_srf->srf; + res = &srf->res; + + srf->flags = req->svga3d_flags; + srf->format = req->format; + srf->scanout = req->drm_surface_flags & drm_vmw_surface_flag_scanout; + srf->mip_levels[0] = req->mip_levels; + srf->num_sizes = 1; + srf->sizes = NULL; + srf->offsets = NULL; + user_srf->size = size; + srf->base_size = req->base_size; + srf->autogen_filter = SVGA3D_TEX_FILTER_NONE; + srf->multisample_count = req->multisample_count; + res->backup_size = svga3dsurface_get_serialized_size + (srf->format, srf->base_size, srf->mip_levels[0], + srf->flags & SVGA3D_SURFACE_CUBEMAP); + + user_srf->prime.base.shareable = false; + user_srf->prime.base.tfile = NULL; + + /** + * From this point, the generic resource management functions + * destroy the object on failure. + */ + + ret = vmw_surface_init(dev_priv, srf, vmw_user_surface_free); + if (unlikely(ret != 0)) + goto out_unlock; + + if (req->buffer_handle != SVGA3D_INVALID_ID) { + ret = vmw_user_dmabuf_lookup(tfile, req->buffer_handle, + &res->backup); + } else if (req->drm_surface_flags & + drm_vmw_surface_flag_create_buffer) + ret = vmw_user_dmabuf_alloc(dev_priv, tfile, + res->backup_size, + req->drm_surface_flags & + drm_vmw_surface_flag_shareable, + &backup_handle, + &res->backup); + + if (unlikely(ret != 0)) { + vmw_resource_unreference(&res); + goto out_unlock; + } + + tmp = vmw_resource_reference(&srf->res); + ret = ttm_prime_object_init(tfile, res->backup_size, &user_srf->prime, + req->drm_surface_flags & + drm_vmw_surface_flag_shareable, + VMW_RES_SURFACE, + &vmw_user_surface_base_release, NULL); + + if (unlikely(ret != 0)) { + vmw_resource_unreference(&tmp); + vmw_resource_unreference(&res); + goto out_unlock; + } + + rep->handle = user_srf->prime.base.hash.key; + rep->backup_size = res->backup_size; + if (res->backup) { + rep->buffer_map_handle = + drm_vma_node_offset_addr(&res->backup->base.vma_node); + rep->buffer_size = res->backup->base.num_pages * PAGE_SIZE; + rep->buffer_handle = backup_handle; + } else { + rep->buffer_map_handle = 0; + rep->buffer_size = 0; + rep->buffer_handle = SVGA3D_INVALID_ID; + } + + vmw_resource_unreference(&res); + + ttm_read_unlock(&vmaster->lock); + return 0; +out_no_user_srf: + ttm_mem_global_free(vmw_mem_glob(dev_priv), size); +out_unlock: + ttm_read_unlock(&vmaster->lock); + return ret; +} + +/** + * vmw_gb_surface_reference_ioctl - Ioctl function implementing + * the user surface reference functionality. + * + * @dev: Pointer to a struct drm_device. + * @data: Pointer to data copied from / to user-space. + * @file_priv: Pointer to a drm file private structure. + */ +int vmw_gb_surface_reference_ioctl(struct drm_device *dev, void *data, + struct drm_file *file_priv) +{ + struct vmw_private *dev_priv = vmw_priv(dev); + union drm_vmw_gb_surface_reference_arg *arg = + (union drm_vmw_gb_surface_reference_arg *)data; + struct drm_vmw_surface_arg *req = &arg->req; + struct drm_vmw_gb_surface_ref_rep *rep = &arg->rep; + struct ttm_object_file *tfile = vmw_fpriv(file_priv)->tfile; + struct vmw_surface *srf; + struct vmw_user_surface *user_srf; + struct ttm_base_object *base; + uint32_t backup_handle; + int ret = -EINVAL; + + base = ttm_base_object_lookup_for_ref(dev_priv->tdev, req->sid); + if (unlikely(base == NULL)) { + DRM_ERROR("Could not find surface to reference.\n"); + return -EINVAL; + } + + if (unlikely(ttm_base_object_type(base) != VMW_RES_SURFACE)) + goto out_bad_resource; + + user_srf = container_of(base, struct vmw_user_surface, prime.base); + srf = &user_srf->srf; + if (srf->res.backup == NULL) { + DRM_ERROR("Shared GB surface is missing a backup buffer.\n"); + goto out_bad_resource; + } + + ret = ttm_ref_object_add(tfile, &user_srf->prime.base, + TTM_REF_USAGE, NULL); + if (unlikely(ret != 0)) { + DRM_ERROR("Could not add a reference to a GB surface.\n"); + goto out_bad_resource; + } + + mutex_lock(&dev_priv->cmdbuf_mutex); /* Protect res->backup */ + ret = vmw_user_dmabuf_reference(tfile, srf->res.backup, + &backup_handle); + mutex_unlock(&dev_priv->cmdbuf_mutex); + + if (unlikely(ret != 0)) { + DRM_ERROR("Could not add a reference to a GB surface " + "backup buffer.\n"); + (void) ttm_ref_object_base_unref(vmw_fpriv(file_priv)->tfile, + req->sid, + TTM_REF_USAGE); + goto out_bad_resource; + } + + rep->creq.svga3d_flags = srf->flags; + rep->creq.format = srf->format; + rep->creq.mip_levels = srf->mip_levels[0]; + rep->creq.drm_surface_flags = 0; + rep->creq.multisample_count = srf->multisample_count; + rep->creq.autogen_filter = srf->autogen_filter; + rep->creq.buffer_handle = backup_handle; + rep->creq.base_size = srf->base_size; + rep->crep.handle = user_srf->prime.base.hash.key; + rep->crep.backup_size = srf->res.backup_size; + rep->crep.buffer_handle = backup_handle; + rep->crep.buffer_map_handle = + drm_vma_node_offset_addr(&srf->res.backup->base.vma_node); + rep->crep.buffer_size = srf->res.backup->base.num_pages * PAGE_SIZE; + +out_bad_resource: + ttm_base_object_unref(&base); + + return ret; } --- linux-3.13.0.orig/drivers/hid/Kconfig +++ linux-3.13.0/drivers/hid/Kconfig @@ -27,7 +27,7 @@ config HID_BATTERY_STRENGTH bool "Battery level reporting for HID devices" - depends on HID && POWER_SUPPLY && HID = POWER_SUPPLY + depends on HID && POWER_SUPPLY default n ---help--- This option adds support of reporting battery strength (for HID devices --- linux-3.13.0.orig/drivers/hid/hid-input.c +++ linux-3.13.0/drivers/hid/hid-input.c @@ -350,9 +350,9 @@ ret = -ENOMEM; break; } - ret = dev->hid_get_raw_report(dev, dev->battery_report_id, - buf, 2, - dev->battery_report_type); + ret = hid_hw_raw_request(dev, dev->battery_report_id, buf, 2, + dev->battery_report_type, + HID_REQ_GET_REPORT); if (ret != 2) { ret = -ENODATA; --- linux-3.13.0.orig/drivers/hid/hid-sony.c +++ linux-3.13.0/drivers/hid/hid-sony.c @@ -432,7 +432,8 @@ if (!buf) return -ENOMEM; - ret = hdev->hid_get_raw_report(hdev, 0xf2, buf, 17, HID_FEATURE_REPORT); + ret = hid_hw_raw_request(hdev, 0xf2, buf, 17, HID_FEATURE_REPORT, + HID_REQ_GET_REPORT); if (ret < 0) hid_err(hdev, "can't set operational mode\n"); --- linux-3.13.0.orig/drivers/hid/hidraw.c +++ linux-3.13.0/drivers/hid/hidraw.c @@ -6,7 +6,7 @@ * to work on raw hid events as they want to, and avoids a need to * use a transport-specific userspace libhid/libusb libraries. * - * Copyright (c) 2007 Jiri Kosina + * Copyright (c) 2007-2014 Jiri Kosina */ /* @@ -104,8 +104,11 @@ return ret; } -/* The first byte is expected to be a report number. - * This function is to be called with the minors_lock mutex held */ +/* + * The first byte of the report buffer is expected to be a report number. + * + * This function is to be called with the minors_lock mutex held. + */ static ssize_t hidraw_send_report(struct file *file, const char __user *buffer, size_t count, unsigned char report_type) { unsigned int minor = iminor(file_inode(file)); @@ -157,7 +160,6 @@ return ret; } -/* the first byte is expected to be a report number */ static ssize_t hidraw_write(struct file *file, const char __user *buffer, size_t count, loff_t *ppos) { ssize_t ret; @@ -168,12 +170,15 @@ } -/* This function performs a Get_Report transfer over the control endpoint +/* + * This function performs a Get_Report transfer over the control endpoint * per section 7.2.1 of the HID specification, version 1.1. The first byte * of buffer is the report number to request, or 0x0 if the defice does not * use numbered reports. The report_type parameter can be HID_FEATURE_REPORT - * or HID_INPUT_REPORT. This function is to be called with the minors_lock - * mutex held. */ + * or HID_INPUT_REPORT. + * + * This function is to be called with the minors_lock mutex held. + */ static ssize_t hidraw_get_report(struct file *file, char __user *buffer, size_t count, unsigned char report_type) { unsigned int minor = iminor(file_inode(file)); @@ -184,7 +189,7 @@ dev = hidraw_table[minor]->hid; - if (!dev->hid_get_raw_report) { + if (!dev->ll_driver->raw_request) { ret = -ENODEV; goto out; } @@ -209,14 +214,17 @@ goto out; } - /* Read the first byte from the user. This is the report number, - * which is passed to dev->hid_get_raw_report(). */ + /* + * Read the first byte from the user. This is the report number, + * which is passed to hid_hw_raw_request(). + */ if (copy_from_user(&report_number, buffer, 1)) { ret = -EFAULT; goto out_free; } - ret = dev->hid_get_raw_report(dev, report_number, buf, count, report_type); + ret = hid_hw_raw_request(dev, report_number, buf, count, report_type, + HID_REQ_GET_REPORT); if (ret < 0) goto out_free; @@ -313,13 +321,13 @@ hid_hw_close(hidraw->hid); wake_up_interruptible(&hidraw->wait); } + device_destroy(hidraw_class, + MKDEV(hidraw_major, hidraw->minor)); } else { --hidraw->open; } if (!hidraw->open) { if (!hidraw->exist) { - device_destroy(hidraw_class, - MKDEV(hidraw_major, hidraw->minor)); hidraw_table[hidraw->minor] = NULL; kfree(hidraw); } else { @@ -498,7 +506,7 @@ int minor, result; struct hidraw *dev; - /* we accept any HID device, no matter the applications */ + /* we accept any HID device, all applications */ dev = kzalloc(sizeof(struct hidraw), GFP_KERNEL); if (!dev) --- linux-3.13.0.orig/drivers/hid/i2c-hid/i2c-hid.c +++ linux-3.13.0/drivers/hid/i2c-hid/i2c-hid.c @@ -256,12 +256,21 @@ return 0; } -static int i2c_hid_set_report(struct i2c_client *client, u8 reportType, - u8 reportID, unsigned char *buf, size_t data_len) +/** + * i2c_hid_set_or_send_report: forward an incoming report to the device + * @client: the i2c_client of the device + * @reportType: 0x03 for HID_FEATURE_REPORT ; 0x02 for HID_OUTPUT_REPORT + * @reportID: the report ID + * @buf: the actual data to transfer, without the report ID + * @len: size of buf + * @use_data: true: use SET_REPORT HID command, false: send plain OUTPUT report + */ +static int i2c_hid_set_or_send_report(struct i2c_client *client, u8 reportType, + u8 reportID, unsigned char *buf, size_t data_len, bool use_data) { struct i2c_hid *ihid = i2c_get_clientdata(client); u8 *args = ihid->argsbuf; - const struct i2c_hid_cmd * hidcmd = &hid_set_report_cmd; + const struct i2c_hid_cmd *hidcmd; int ret; u16 dataRegister = le16_to_cpu(ihid->hdesc.wDataRegister); u16 outputRegister = le16_to_cpu(ihid->hdesc.wOutputRegister); @@ -278,6 +287,9 @@ i2c_hid_dbg(ihid, "%s\n", __func__); + if (!use_data && maxOutputLength == 0) + return -ENOSYS; + if (reportID >= 0x0F) { args[index++] = reportID; reportID = 0x0F; @@ -287,9 +299,10 @@ * use the data register for feature reports or if the device does not * support the output register */ - if (reportType == 0x03 || maxOutputLength == 0) { + if (use_data) { args[index++] = dataRegister & 0xFF; args[index++] = dataRegister >> 8; + hidcmd = &hid_set_report_cmd; } else { args[index++] = outputRegister & 0xFF; args[index++] = outputRegister >> 8; @@ -550,7 +563,7 @@ } static int i2c_hid_output_raw_report(struct hid_device *hid, __u8 *buf, - size_t count, unsigned char report_type) + size_t count, unsigned char report_type, bool use_data) { struct i2c_client *client = hid->driver_data; int report_id = buf[0]; @@ -564,9 +577,9 @@ count--; } - ret = i2c_hid_set_report(client, + ret = i2c_hid_set_or_send_report(client, report_type == HID_FEATURE_REPORT ? 0x03 : 0x02, - report_id, buf, count); + report_id, buf, count, use_data); if (report_id && ret >= 0) ret++; /* add report_id to the number of transfered bytes */ @@ -574,6 +587,42 @@ return ret; } +static int __i2c_hid_output_raw_report(struct hid_device *hid, __u8 *buf, + size_t count, unsigned char report_type) +{ + struct i2c_client *client = hid->driver_data; + struct i2c_hid *ihid = i2c_get_clientdata(client); + bool data = true; /* SET_REPORT */ + + if (report_type == HID_OUTPUT_REPORT) + data = le16_to_cpu(ihid->hdesc.wMaxOutputLength) == 0; + + return i2c_hid_output_raw_report(hid, buf, count, report_type, data); +} + +static int i2c_hid_output_report(struct hid_device *hid, __u8 *buf, + size_t count) +{ + return i2c_hid_output_raw_report(hid, buf, count, HID_OUTPUT_REPORT, + false); +} + +static int i2c_hid_raw_request(struct hid_device *hid, unsigned char reportnum, + __u8 *buf, size_t len, unsigned char rtype, + int reqtype) +{ + switch (reqtype) { + case HID_REQ_GET_REPORT: + return i2c_hid_get_raw_report(hid, reportnum, buf, len, rtype); + case HID_REQ_SET_REPORT: + if (buf[0] != reportnum) + return -EINVAL; + return i2c_hid_output_raw_report(hid, buf, len, rtype, true); + default: + return -EIO; + } +} + static void i2c_hid_request(struct hid_device *hid, struct hid_report *rep, int reqtype) { @@ -597,7 +646,7 @@ break; case HID_REQ_SET_REPORT: hid_output_report(rep, buf); - i2c_hid_output_raw_report(hid, buf, len, rep->type); + i2c_hid_output_raw_report(hid, buf, len, rep->type, true); break; } @@ -761,6 +810,8 @@ .close = i2c_hid_close, .power = i2c_hid_power, .request = i2c_hid_request, + .output_report = i2c_hid_output_report, + .raw_request = i2c_hid_raw_request, }; static int i2c_hid_init_irq(struct i2c_client *client) @@ -1005,8 +1056,7 @@ hid->driver_data = client; hid->ll_driver = &i2c_hid_ll_driver; - hid->hid_get_raw_report = i2c_hid_get_raw_report; - hid->hid_output_raw_report = i2c_hid_output_raw_report; + hid->hid_output_raw_report = __i2c_hid_output_raw_report; hid->dev.parent = &client->dev; ACPI_COMPANION_SET(&hid->dev, ACPI_COMPANION(&client->dev)); hid->bus = BUS_I2C; --- linux-3.13.0.orig/drivers/hid/uhid.c +++ linux-3.13.0/drivers/hid/uhid.c @@ -377,7 +377,6 @@ hid->uniq[63] = 0; hid->ll_driver = &uhid_hid_driver; - hid->hid_get_raw_report = uhid_hid_get_raw; hid->hid_output_raw_report = uhid_hid_output_raw; hid->bus = ev->u.create.bus; hid->vendor = ev->u.create.vendor; --- linux-3.13.0.orig/drivers/hid/usbhid/hid-core.c +++ linux-3.13.0/drivers/hid/usbhid/hid-core.c @@ -1253,7 +1253,6 @@ usb_set_intfdata(intf, hid); hid->ll_driver = &usb_hid_driver; - hid->hid_get_raw_report = usbhid_get_raw_report; hid->hid_output_raw_report = usbhid_output_raw_report; hid->ff_init = hid_pidff_init; #ifdef CONFIG_USB_HIDDEV --- linux-3.13.0.orig/drivers/hv/Makefile +++ linux-3.13.0/drivers/hv/Makefile @@ -5,4 +5,4 @@ hv_vmbus-y := vmbus_drv.o \ hv.o connection.o channel.o \ channel_mgmt.o ring_buffer.o -hv_utils-y := hv_util.o hv_kvp.o hv_snapshot.o +hv_utils-y := hv_util.o hv_kvp.o hv_snapshot.o hv_fcopy.o --- linux-3.13.0.orig/drivers/hv/channel.c +++ linux-3.13.0/drivers/hv/channel.c @@ -209,7 +209,6 @@ { int i; int pagecount; - unsigned long long pfn; struct vmbus_channel_gpadl_header *gpadl_header; struct vmbus_channel_gpadl_body *gpadl_body; struct vmbus_channel_msginfo *msgheader; @@ -219,7 +218,6 @@ int pfnsum, pfncount, pfnleft, pfncurr, pfnsize; pagecount = size >> PAGE_SHIFT; - pfn = virt_to_phys(kbuffer) >> PAGE_SHIFT; /* do we need a gpadl body msg */ pfnsize = MAX_SIZE_CHANNEL_MESSAGE - @@ -248,7 +246,8 @@ gpadl_header->range[0].byte_offset = 0; gpadl_header->range[0].byte_count = size; for (i = 0; i < pfncount; i++) - gpadl_header->range[0].pfn_array[i] = pfn+i; + gpadl_header->range[0].pfn_array[i] = slow_virt_to_phys( + kbuffer + PAGE_SIZE * i) >> PAGE_SHIFT; *msginfo = msgheader; *messagecount = 1; @@ -301,7 +300,9 @@ * so the hypervisor gurantees that this is ok. */ for (i = 0; i < pfncurr; i++) - gpadl_body->pfn[i] = pfn + pfnsum + i; + gpadl_body->pfn[i] = slow_virt_to_phys( + kbuffer + PAGE_SIZE * (pfnsum + i)) >> + PAGE_SHIFT; /* add to msg header */ list_add_tail(&msgbody->msglistentry, @@ -327,7 +328,8 @@ gpadl_header->range[0].byte_offset = 0; gpadl_header->range[0].byte_count = size; for (i = 0; i < pagecount; i++) - gpadl_header->range[0].pfn_array[i] = pfn+i; + gpadl_header->range[0].pfn_array[i] = slow_virt_to_phys( + kbuffer + PAGE_SIZE * i) >> PAGE_SHIFT; *msginfo = msgheader; *messagecount = 1; @@ -344,7 +346,7 @@ * vmbus_establish_gpadl - Estabish a GPADL for the specified buffer * * @channel: a channel - * @kbuffer: from kmalloc + * @kbuffer: from kmalloc or vmalloc * @size: page-size multiple * @gpadl_handle: some funky thing */ --- linux-3.13.0.orig/drivers/hv/connection.c +++ linux-3.13.0/drivers/hv/connection.c @@ -67,7 +67,6 @@ int ret = 0; struct vmbus_channel_initiate_contact *msg; unsigned long flags; - int t; init_completion(&msginfo->waitevent); @@ -78,6 +77,8 @@ msg->interrupt_page = virt_to_phys(vmbus_connection.int_page); msg->monitor_page1 = virt_to_phys(vmbus_connection.monitor_pages[0]); msg->monitor_page2 = virt_to_phys(vmbus_connection.monitor_pages[1]); + if (version == VERSION_WIN8) + msg->target_vcpu = hv_context.vp_index[smp_processor_id()]; /* * Add to list before we send the request since we may @@ -100,15 +101,7 @@ } /* Wait for the connection response */ - t = wait_for_completion_timeout(&msginfo->waitevent, 5*HZ); - if (t == 0) { - spin_lock_irqsave(&vmbus_connection.channelmsg_lock, - flags); - list_del(&msginfo->msglistentry); - spin_unlock_irqrestore(&vmbus_connection.channelmsg_lock, - flags); - return -ETIMEDOUT; - } + wait_for_completion(&msginfo->waitevent); spin_lock_irqsave(&vmbus_connection.channelmsg_lock, flags); list_del(&msginfo->msglistentry); --- linux-3.13.0.orig/drivers/hv/hv.c +++ linux-3.13.0/drivers/hv/hv.c @@ -31,6 +31,14 @@ #include #include "hyperv_vmbus.h" +#ifndef PKG_ABI +/* + * Preserve the ability to 'make deb-pkg' since PKG_ABI is provided + * by the Ubuntu build rules. + */ +#define PKG_ABI 0 +#endif + /* The one and only */ struct hv_context hv_context = { .synic_initialized = false, @@ -148,7 +156,7 @@ /* * Write our OS ID. */ - hv_context.guestid = generate_guest_id(0, LINUX_VERSION_CODE, 0); + hv_context.guestid = generate_guest_id(0x80 /*Canonical*/, LINUX_VERSION_CODE, PKG_ABI); wrmsrl(HV_X64_MSR_GUEST_OS_ID, hv_context.guestid); /* See if the hypercall page is already set */ --- linux-3.13.0.orig/drivers/hv/hv_balloon.c +++ linux-3.13.0/drivers/hv/hv_balloon.c @@ -1171,7 +1171,8 @@ int t; while (!kthread_should_stop()) { - t = wait_for_completion_timeout(&dm_device.config_event, 1*HZ); + t = wait_for_completion_interruptible_timeout( + &dm_device.config_event, 1*HZ); /* * The host expects us to post information on the memory * pressure every second. --- linux-3.13.0.orig/drivers/hv/hv_fcopy.c +++ linux-3.13.0/drivers/hv/hv_fcopy.c @@ -0,0 +1,414 @@ +/* + * An implementation of file copy service. + * + * Copyright (C) 2014, Microsoft, Inc. + * + * Author : K. Y. Srinivasan + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published + * by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or + * NON INFRINGEMENT. See the GNU General Public License for more + * details. + * + */ + +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "hyperv_vmbus.h" + +#define WIN8_SRV_MAJOR 1 +#define WIN8_SRV_MINOR 1 +#define WIN8_SRV_VERSION (WIN8_SRV_MAJOR << 16 | WIN8_SRV_MINOR) + +/* + * Global state maintained for transaction that is being processed. + * For a class of integration services, including the "file copy service", + * the specified protocol is a "request/response" protocol which means that + * there can only be single outstanding transaction from the host at any + * given point in time. We use this to simplify memory management in this + * driver - we cache and process only one message at a time. + * + * While the request/response protocol is guaranteed by the host, we further + * ensure this by serializing packet processing in this driver - we do not + * read additional packets from the VMBUs until the current packet is fully + * handled. + * + * The transaction "active" state is set when we receive a request from the + * host and we cleanup this state when the transaction is completed - when we + * respond to the host with our response. When the transaction active state is + * set, we defer handling incoming packets. + */ + +static struct { + bool active; /* transaction status - active or not */ + int recv_len; /* number of bytes received. */ + struct hv_fcopy_hdr *fcopy_msg; /* current message */ + struct hv_start_fcopy message; /* sent to daemon */ + struct vmbus_channel *recv_channel; /* chn we got the request */ + u64 recv_req_id; /* request ID. */ + void *fcopy_context; /* for the channel callback */ + struct semaphore read_sema; +} fcopy_transaction; + +static bool opened; /* currently device opened */ + +/* + * Before we can accept copy messages from the host, we need + * to handshake with the user level daemon. This state tracks + * if we are in the handshake phase. + */ +static bool in_hand_shake = true; +static void fcopy_send_data(void); +static void fcopy_respond_to_host(int error); +static void fcopy_work_func(struct work_struct *dummy); +static DECLARE_DELAYED_WORK(fcopy_work, fcopy_work_func); +static u8 *recv_buffer; + +static void fcopy_work_func(struct work_struct *dummy) +{ + /* + * If the timer fires, the user-mode component has not responded; + * process the pending transaction. + */ + fcopy_respond_to_host(HV_E_FAIL); +} + +static int fcopy_handle_handshake(u32 version) +{ + switch (version) { + case FCOPY_CURRENT_VERSION: + break; + default: + /* + * For now we will fail the registration. + * If and when we have multiple versions to + * deal with, we will be backward compatible. + * We will add this code when needed. + */ + return -EINVAL; + } + pr_info("FCP: user-mode registering done. Daemon version: %d\n", + version); + fcopy_transaction.active = false; + if (fcopy_transaction.fcopy_context) + hv_fcopy_onchannelcallback(fcopy_transaction.fcopy_context); + in_hand_shake = false; + return 0; +} + +static void fcopy_send_data(void) +{ + struct hv_start_fcopy *smsg_out = &fcopy_transaction.message; + int operation = fcopy_transaction.fcopy_msg->operation; + struct hv_start_fcopy *smsg_in; + + /* + * The strings sent from the host are encoded in + * in utf16; convert it to utf8 strings. + * The host assures us that the utf16 strings will not exceed + * the max lengths specified. We will however, reserve room + * for the string terminating character - in the utf16s_utf8s() + * function we limit the size of the buffer where the converted + * string is placed to W_MAX_PATH -1 to guarantee + * that the strings can be properly terminated! + */ + + switch (operation) { + case START_FILE_COPY: + memset(smsg_out, 0, sizeof(struct hv_start_fcopy)); + smsg_out->hdr.operation = operation; + smsg_in = (struct hv_start_fcopy *)fcopy_transaction.fcopy_msg; + + utf16s_to_utf8s((wchar_t *)smsg_in->file_name, W_MAX_PATH, + UTF16_LITTLE_ENDIAN, + (__u8 *)smsg_out->file_name, W_MAX_PATH - 1); + + utf16s_to_utf8s((wchar_t *)smsg_in->path_name, W_MAX_PATH, + UTF16_LITTLE_ENDIAN, + (__u8 *)smsg_out->path_name, W_MAX_PATH - 1); + + smsg_out->copy_flags = smsg_in->copy_flags; + smsg_out->file_size = smsg_in->file_size; + break; + + default: + break; + } + up(&fcopy_transaction.read_sema); + return; +} + +/* + * Send a response back to the host. + */ + +static void +fcopy_respond_to_host(int error) +{ + struct icmsg_hdr *icmsghdr; + u32 buf_len; + struct vmbus_channel *channel; + u64 req_id; + + /* + * Copy the global state for completing the transaction. Note that + * only one transaction can be active at a time. This is guaranteed + * by the file copy protocol implemented by the host. Furthermore, + * the "transaction active" state we maintain ensures that there can + * only be one active transaction at a time. + */ + + buf_len = fcopy_transaction.recv_len; + channel = fcopy_transaction.recv_channel; + req_id = fcopy_transaction.recv_req_id; + + fcopy_transaction.active = false; + + icmsghdr = (struct icmsg_hdr *) + &recv_buffer[sizeof(struct vmbuspipe_hdr)]; + + if (channel->onchannel_callback == NULL) + /* + * We have raced with util driver being unloaded; + * silently return. + */ + return; + + icmsghdr->status = error; + icmsghdr->icflags = ICMSGHDRFLAG_TRANSACTION | ICMSGHDRFLAG_RESPONSE; + vmbus_sendpacket(channel, recv_buffer, buf_len, req_id, + VM_PKT_DATA_INBAND, 0); +} + +void hv_fcopy_onchannelcallback(void *context) +{ + struct vmbus_channel *channel = context; + u32 recvlen; + u64 requestid; + struct hv_fcopy_hdr *fcopy_msg; + struct icmsg_hdr *icmsghdr; + struct icmsg_negotiate *negop = NULL; + int util_fw_version; + int fcopy_srv_version; + + if (fcopy_transaction.active) { + /* + * We will defer processing this callback once + * the current transaction is complete. + */ + fcopy_transaction.fcopy_context = context; + return; + } + + vmbus_recvpacket(channel, recv_buffer, PAGE_SIZE * 2, &recvlen, + &requestid); + if (recvlen <= 0) + return; + + icmsghdr = (struct icmsg_hdr *)&recv_buffer[ + sizeof(struct vmbuspipe_hdr)]; + if (icmsghdr->icmsgtype == ICMSGTYPE_NEGOTIATE) { + util_fw_version = UTIL_FW_VERSION; + fcopy_srv_version = WIN8_SRV_VERSION; + vmbus_prep_negotiate_resp(icmsghdr, negop, recv_buffer, + util_fw_version, fcopy_srv_version); + } else { + fcopy_msg = (struct hv_fcopy_hdr *)&recv_buffer[ + sizeof(struct vmbuspipe_hdr) + + sizeof(struct icmsg_hdr)]; + + /* + * Stash away this global state for completing the + * transaction; note transactions are serialized. + */ + + fcopy_transaction.active = true; + fcopy_transaction.recv_len = recvlen; + fcopy_transaction.recv_channel = channel; + fcopy_transaction.recv_req_id = requestid; + fcopy_transaction.fcopy_msg = fcopy_msg; + + /* + * Send the information to the user-level daemon. + */ + fcopy_send_data(); + schedule_delayed_work(&fcopy_work, 5*HZ); + return; + } + icmsghdr->icflags = ICMSGHDRFLAG_TRANSACTION | ICMSGHDRFLAG_RESPONSE; + vmbus_sendpacket(channel, recv_buffer, recvlen, requestid, + VM_PKT_DATA_INBAND, 0); +} + +/* + * Create a char device that can support read/write for passing + * the payload. + */ + +static ssize_t fcopy_read(struct file *file, char __user *buf, + size_t count, loff_t *ppos) +{ + void *src; + size_t copy_size; + int operation; + + /* + * Wait until there is something to be read. + */ + if (down_interruptible(&fcopy_transaction.read_sema)) + return -EINTR; + + /* + * The channel may be rescinded and in this case, we will wakeup the + * the thread blocked on the semaphore and we will use the opened + * state to correctly handle this case. + */ + if (!opened) + return -ENODEV; + + operation = fcopy_transaction.fcopy_msg->operation; + + if (operation == START_FILE_COPY) { + src = &fcopy_transaction.message; + copy_size = sizeof(struct hv_start_fcopy); + if (count < copy_size) + return 0; + } else { + src = fcopy_transaction.fcopy_msg; + copy_size = sizeof(struct hv_do_fcopy); + if (count < copy_size) + return 0; + } + if (copy_to_user(buf, src, copy_size)) + return -EFAULT; + + return copy_size; +} + +static ssize_t fcopy_write(struct file *file, const char __user *buf, + size_t count, loff_t *ppos) +{ + int response = 0; + + if (count != sizeof(int)) + return -EINVAL; + + if (copy_from_user(&response, buf, sizeof(int))) + return -EFAULT; + + if (in_hand_shake) { + if (fcopy_handle_handshake(response)) + return -EINVAL; + return sizeof(int); + } + + /* + * Complete the transaction by forwarding the result + * to the host. But first, cancel the timeout. + */ + if (cancel_delayed_work_sync(&fcopy_work)) + fcopy_respond_to_host(response); + + return sizeof(int); +} + +static int fcopy_open(struct inode *inode, struct file *f) +{ + /* + * The user level daemon that will open this device is + * really an extension of this driver. We can have only + * active open at a time. + */ + if (opened) + return -EBUSY; + + /* + * The daemon is alive; setup the state. + */ + opened = true; + return 0; +} + +static int fcopy_release(struct inode *inode, struct file *f) +{ + /* + * The daemon has exited; reset the state. + */ + in_hand_shake = true; + opened = false; + return 0; +} + + +static const struct file_operations fcopy_fops = { + .read = fcopy_read, + .write = fcopy_write, + .release = fcopy_release, + .open = fcopy_open, +}; + +static struct miscdevice fcopy_misc = { + .minor = MISC_DYNAMIC_MINOR, + .name = "vmbus/hv_fcopy", + .fops = &fcopy_fops, +}; + +static int fcopy_dev_init(void) +{ + return misc_register(&fcopy_misc); +} + +static void fcopy_dev_deinit(void) +{ + + /* + * The device is going away - perhaps because the + * host has rescinded the channel. Setup state so that + * user level daemon can gracefully exit if it is blocked + * on the read semaphore. + */ + opened = false; + /* + * Signal the semaphore as the device is + * going away. + */ + up(&fcopy_transaction.read_sema); + misc_deregister(&fcopy_misc); +} + +int hv_fcopy_init(struct hv_util_service *srv) +{ + recv_buffer = srv->recv_buffer; + + /* + * When this driver loads, the user level daemon that + * processes the host requests may not yet be running. + * Defer processing channel callbacks until the daemon + * has registered. + */ + fcopy_transaction.active = true; + sema_init(&fcopy_transaction.read_sema, 0); + + return fcopy_dev_init(); +} + +void hv_fcopy_deinit(void) +{ + cancel_delayed_work_sync(&fcopy_work); + fcopy_dev_deinit(); +} --- linux-3.13.0.orig/drivers/hv/hv_util.c +++ linux-3.13.0/drivers/hv/hv_util.c @@ -28,6 +28,7 @@ #include #include +#include "hyperv_vmbus.h" #define SD_MAJOR 3 #define SD_MINOR 0 @@ -82,6 +83,12 @@ .util_deinit = hv_vss_deinit, }; +static struct hv_util_service util_fcopy = { + .util_cb = hv_fcopy_onchannelcallback, + .util_init = hv_fcopy_init, + .util_deinit = hv_fcopy_deinit, +}; + static void perform_shutdown(struct work_struct *dummy) { orderly_poweroff(true); @@ -401,6 +408,10 @@ { HV_VSS_GUID, .driver_data = (unsigned long)&util_vss }, + /* File copy GUID */ + { HV_FCOPY_GUID, + .driver_data = (unsigned long)&util_fcopy + }, { }, }; --- linux-3.13.0.orig/drivers/hv/hyperv_vmbus.h +++ linux-3.13.0/drivers/hv/hyperv_vmbus.h @@ -669,5 +669,9 @@ void vmbus_on_event(unsigned long data); +int hv_fcopy_init(struct hv_util_service *); +void hv_fcopy_deinit(void); +void hv_fcopy_onchannelcallback(void *); + #endif /* _HYPERV_VMBUS_H */ --- linux-3.13.0.orig/drivers/hv/vmbus_drv.c +++ linux-3.13.0/drivers/hv/vmbus_drv.c @@ -46,6 +46,12 @@ static struct completion probe_event; static int irq; +struct resource hyperv_mmio = { + .name = "hyperv mmio", + .flags = IORESOURCE_MEM, +}; +EXPORT_SYMBOL_GPL(hyperv_mmio); + static int vmbus_exists(void) { if (hv_acpi_dev == NULL) @@ -888,18 +894,21 @@ /* - * VMBUS is an acpi enumerated device. Get the the IRQ information - * from DSDT. + * VMBUS is an acpi enumerated device. Get the the information we + * need from DSDT. */ -static acpi_status vmbus_walk_resources(struct acpi_resource *res, void *irq) +static acpi_status vmbus_walk_resources(struct acpi_resource *res, void *ctx) { + switch (res->type) { + case ACPI_RESOURCE_TYPE_IRQ: + irq = res->data.irq.interrupts[0]; + break; - if (res->type == ACPI_RESOURCE_TYPE_IRQ) { - struct acpi_resource_irq *irqp; - irqp = &res->data.irq; - - *((unsigned int *)irq) = irqp->interrupts[0]; + case ACPI_RESOURCE_TYPE_ADDRESS64: + hyperv_mmio.start = res->data.address64.minimum; + hyperv_mmio.end = res->data.address64.maximum; + break; } return AE_OK; @@ -908,18 +917,34 @@ static int vmbus_acpi_add(struct acpi_device *device) { acpi_status result; + int ret_val = -ENODEV; hv_acpi_dev = device; result = acpi_walk_resources(device->handle, METHOD_NAME__CRS, - vmbus_walk_resources, &irq); + vmbus_walk_resources, NULL); - if (ACPI_FAILURE(result)) { - complete(&probe_event); - return -ENODEV; + if (ACPI_FAILURE(result)) + goto acpi_walk_err; + /* + * The parent of the vmbus acpi device (Gen2 firmware) is the VMOD that + * has the mmio ranges. Get that. + */ + if (device->parent) { + result = acpi_walk_resources(device->parent->handle, + METHOD_NAME__CRS, + vmbus_walk_resources, NULL); + + if (ACPI_FAILURE(result)) + goto acpi_walk_err; + if (hyperv_mmio.start && hyperv_mmio.end) + request_resource(&iomem_resource, &hyperv_mmio); } + ret_val = 0; + +acpi_walk_err: complete(&probe_event); - return 0; + return ret_val; } static const struct acpi_device_id vmbus_acpi_device_ids[] = { --- linux-3.13.0.orig/drivers/hwmon/k10temp.c +++ linux-3.13.0/drivers/hwmon/k10temp.c @@ -210,6 +210,7 @@ { PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_CNB17H_F3) }, { PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_15H_NB_F3) }, { PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_15H_M10H_F3) }, + { PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_15H_M30H_NB_F3) }, { PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_16H_NB_F3) }, {} }; --- linux-3.13.0.orig/drivers/hwmon/max1668.c +++ linux-3.13.0/drivers/hwmon/max1668.c @@ -243,7 +243,7 @@ data->temp_min[index] = clamp_val(temp/1000, -128, 127); if (i2c_smbus_write_byte_data(client, MAX1668_REG_LIML_WR(index), - data->temp_max[index])) + data->temp_min[index])) count = -EIO; mutex_unlock(&data->update_lock); --- linux-3.13.0.orig/drivers/hwmon/ntc_thermistor.c +++ linux-3.13.0/drivers/hwmon/ntc_thermistor.c @@ -145,7 +145,7 @@ static int ntc_adc_iio_read(struct ntc_thermistor_platform_data *pdata) { struct iio_channel *channel = pdata->chan; - unsigned int result; + s64 result; int val, ret; ret = iio_read_channel_raw(channel, &val); @@ -155,10 +155,10 @@ } /* unit: mV */ - result = pdata->pullup_uv * val; + result = pdata->pullup_uv * (s64) val; result >>= 12; - return result; + return (int)result; } static const struct of_device_id ntc_match[] = { --- linux-3.13.0.orig/drivers/i2c/busses/Kconfig +++ linux-3.13.0/drivers/i2c/busses/Kconfig @@ -152,6 +152,7 @@ ATI SB700/SP5100 ATI SB800 AMD Hudson-2 + AMD ML AMD CZ Serverworks OSB4 Serverworks CSB5 @@ -386,7 +387,7 @@ config I2C_CPM tristate "Freescale CPM1 or CPM2 (MPC8xx/826x)" - depends on (CPM1 || CPM2) && OF_I2C + depends on CPM1 || CPM2 help This supports the use of the I2C interface on Freescale processors with CPM1 or CPM2. --- linux-3.13.0.orig/drivers/i2c/busses/i2c-cpm.c +++ linux-3.13.0/drivers/i2c/busses/i2c-cpm.c @@ -40,8 +40,12 @@ #include #include #include +#include #include +#include #include +#include +#include #include #include --- linux-3.13.0.orig/drivers/i2c/busses/i2c-mv64xxx.c +++ linux-3.13.0/drivers/i2c/busses/i2c-mv64xxx.c @@ -97,7 +97,6 @@ enum { MV64XXX_I2C_ACTION_INVALID, MV64XXX_I2C_ACTION_CONTINUE, - MV64XXX_I2C_ACTION_OFFLOAD_SEND_START, MV64XXX_I2C_ACTION_SEND_START, MV64XXX_I2C_ACTION_SEND_RESTART, MV64XXX_I2C_ACTION_OFFLOAD_RESTART, @@ -204,6 +203,9 @@ unsigned long ctrl_reg; struct i2c_msg *msg = drv_data->msgs; + if (!drv_data->offload_enabled) + return -EOPNOTSUPP; + drv_data->msg = msg; drv_data->byte_posn = 0; drv_data->bytes_left = msg->len; @@ -433,8 +435,7 @@ drv_data->msgs++; drv_data->num_msgs--; - if (!(drv_data->offload_enabled && - mv64xxx_i2c_offload_msg(drv_data))) { + if (mv64xxx_i2c_offload_msg(drv_data) < 0) { drv_data->cntl_bits |= MV64XXX_I2C_REG_CONTROL_START; writel(drv_data->cntl_bits, drv_data->reg_base + drv_data->reg_offsets.control); @@ -458,15 +459,14 @@ drv_data->reg_base + drv_data->reg_offsets.control); break; - case MV64XXX_I2C_ACTION_OFFLOAD_SEND_START: - if (!mv64xxx_i2c_offload_msg(drv_data)) - break; - else - drv_data->action = MV64XXX_I2C_ACTION_SEND_START; - /* FALLTHRU */ case MV64XXX_I2C_ACTION_SEND_START: - writel(drv_data->cntl_bits | MV64XXX_I2C_REG_CONTROL_START, - drv_data->reg_base + drv_data->reg_offsets.control); + /* Can we offload this msg ? */ + if (mv64xxx_i2c_offload_msg(drv_data) < 0) { + /* No, switch to standard path */ + mv64xxx_i2c_prepare_for_io(drv_data, drv_data->msgs); + writel(drv_data->cntl_bits | MV64XXX_I2C_REG_CONTROL_START, + drv_data->reg_base + drv_data->reg_offsets.control); + } break; case MV64XXX_I2C_ACTION_SEND_ADDR_1: @@ -625,15 +625,10 @@ unsigned long flags; spin_lock_irqsave(&drv_data->lock, flags); - if (drv_data->offload_enabled) { - drv_data->action = MV64XXX_I2C_ACTION_OFFLOAD_SEND_START; - drv_data->state = MV64XXX_I2C_STATE_WAITING_FOR_START_COND; - } else { - mv64xxx_i2c_prepare_for_io(drv_data, msg); - drv_data->action = MV64XXX_I2C_ACTION_SEND_START; - drv_data->state = MV64XXX_I2C_STATE_WAITING_FOR_START_COND; - } + drv_data->action = MV64XXX_I2C_ACTION_SEND_START; + drv_data->state = MV64XXX_I2C_STATE_WAITING_FOR_START_COND; + drv_data->send_stop = is_last; drv_data->block = 1; mv64xxx_i2c_do_action(drv_data); @@ -692,6 +687,7 @@ { .compatible = "allwinner,sun4i-i2c", .data = &mv64xxx_i2c_regs_sun4i}, { .compatible = "marvell,mv64xxx-i2c", .data = &mv64xxx_i2c_regs_mv64xxx}, { .compatible = "marvell,mv78230-i2c", .data = &mv64xxx_i2c_regs_mv64xxx}, + { .compatible = "marvell,mv78230-a0-i2c", .data = &mv64xxx_i2c_regs_mv64xxx}, {} }; MODULE_DEVICE_TABLE(of, mv64xxx_i2c_of_match_table); @@ -783,6 +779,10 @@ drv_data->errata_delay = true; } + if (of_device_is_compatible(np, "marvell,mv78230-a0-i2c")) { + drv_data->offload_enabled = false; + drv_data->errata_delay = true; + } out: return rc; #endif --- linux-3.13.0.orig/drivers/i2c/busses/i2c-piix4.c +++ linux-3.13.0/drivers/i2c/busses/i2c-piix4.c @@ -22,7 +22,7 @@ Intel PIIX4, 440MX Serverworks OSB4, CSB5, CSB6, HT-1000, HT-1100 ATI IXP200, IXP300, IXP400, SB600, SB700/SP5100, SB800 - AMD Hudson-2, CZ + AMD Hudson-2, ML, CZ SMSC Victory66 Note: we assume there can only be one device, with one or more @@ -235,7 +235,8 @@ { unsigned short piix4_smba; unsigned short smba_idx = 0xcd6; - u8 smba_en_lo, smba_en_hi, i2ccfg, i2ccfg_offset = 0x10, smb_en; + u8 smba_en_lo, smba_en_hi, smb_en, smb_en_status; + u8 i2ccfg, i2ccfg_offset = 0x10; /* SB800 and later SMBus does not support forcing address */ if (force || force_addr) { @@ -245,7 +246,15 @@ } /* Determine the address of the SMBus areas */ - smb_en = (aux) ? 0x28 : 0x2c; + if ((PIIX4_dev->vendor == PCI_VENDOR_ID_AMD && + PIIX4_dev->device == PCI_DEVICE_ID_AMD_HUDSON2_SMBUS && + PIIX4_dev->revision >= 0x41) || + (PIIX4_dev->vendor == PCI_VENDOR_ID_AMD && + PIIX4_dev->device == 0x790b && + PIIX4_dev->revision >= 0x49)) + smb_en = 0x00; + else + smb_en = (aux) ? 0x28 : 0x2c; if (!request_region(smba_idx, 2, "smba_idx")) { dev_err(&PIIX4_dev->dev, "SMBus base address index region " @@ -258,13 +267,22 @@ smba_en_hi = inb_p(smba_idx + 1); release_region(smba_idx, 2); - if ((smba_en_lo & 1) == 0) { + if (!smb_en) { + smb_en_status = smba_en_lo & 0x10; + piix4_smba = smba_en_hi << 8; + if (aux) + piix4_smba |= 0x20; + } else { + smb_en_status = smba_en_lo & 0x01; + piix4_smba = ((smba_en_hi << 8) | smba_en_lo) & 0xffe0; + } + + if (!smb_en_status) { dev_err(&PIIX4_dev->dev, "Host SMBus controller not enabled!\n"); return -ENODEV; } - piix4_smba = ((smba_en_hi << 8) | smba_en_lo) & 0xffe0; if (acpi_check_region(piix4_smba, SMBIOSIZE, piix4_driver.name)) return -ENODEV; @@ -277,7 +295,8 @@ /* Aux SMBus does not support IRQ information */ if (aux) { dev_info(&PIIX4_dev->dev, - "SMBus Host Controller at 0x%x\n", piix4_smba); + "Auxiliary SMBus Host Controller at 0x%x\n", + piix4_smba); return piix4_smba; } --- linux-3.13.0.orig/drivers/iio/adc/max1363.c +++ linux-3.13.0/drivers/iio/adc/max1363.c @@ -1560,7 +1560,7 @@ st->client = client; st->vref_uv = st->chip_info->int_vref_mv * 1000; - vref = devm_regulator_get(&client->dev, "vref"); + vref = devm_regulator_get_optional(&client->dev, "vref"); if (!IS_ERR(vref)) { int vref_uv; --- linux-3.13.0.orig/drivers/iio/gyro/Kconfig +++ linux-3.13.0/drivers/iio/gyro/Kconfig @@ -70,7 +70,7 @@ select IIO_TRIGGERED_BUFFER if (IIO_BUFFER) help Say yes here to build support for STMicroelectronics gyroscopes: - L3G4200D, LSM330DL, L3GD20, L3GD20H, LSM330DLC, L3G4IS, LSM330. + L3G4200D, LSM330DL, L3GD20, LSM330DLC, L3G4IS, LSM330. This driver can also be built as a module. If so, these modules will be created: --- linux-3.13.0.orig/drivers/iio/gyro/st_gyro.h +++ linux-3.13.0/drivers/iio/gyro/st_gyro.h @@ -19,7 +19,6 @@ #define LSM330DL_GYRO_DEV_NAME "lsm330dl_gyro" #define LSM330DLC_GYRO_DEV_NAME "lsm330dlc_gyro" #define L3GD20_GYRO_DEV_NAME "l3gd20" -#define L3GD20H_GYRO_DEV_NAME "l3gd20h" #define L3G4IS_GYRO_DEV_NAME "l3g4is_ui" #define LSM330_GYRO_DEV_NAME "lsm330_gyro" --- linux-3.13.0.orig/drivers/iio/gyro/st_gyro_core.c +++ linux-3.13.0/drivers/iio/gyro/st_gyro_core.c @@ -167,11 +167,10 @@ .wai = ST_GYRO_2_WAI_EXP, .sensors_supported = { [0] = L3GD20_GYRO_DEV_NAME, - [1] = L3GD20H_GYRO_DEV_NAME, - [2] = LSM330D_GYRO_DEV_NAME, - [3] = LSM330DLC_GYRO_DEV_NAME, - [4] = L3G4IS_GYRO_DEV_NAME, - [5] = LSM330_GYRO_DEV_NAME, + [1] = LSM330D_GYRO_DEV_NAME, + [2] = LSM330DLC_GYRO_DEV_NAME, + [3] = L3G4IS_GYRO_DEV_NAME, + [4] = LSM330_GYRO_DEV_NAME, }, .ch = (struct iio_chan_spec *)st_gyro_16bit_channels, .odr = { --- linux-3.13.0.orig/drivers/iio/gyro/st_gyro_i2c.c +++ linux-3.13.0/drivers/iio/gyro/st_gyro_i2c.c @@ -55,7 +55,6 @@ { LSM330DL_GYRO_DEV_NAME }, { LSM330DLC_GYRO_DEV_NAME }, { L3GD20_GYRO_DEV_NAME }, - { L3GD20H_GYRO_DEV_NAME }, { L3G4IS_GYRO_DEV_NAME }, { LSM330_GYRO_DEV_NAME }, {}, --- linux-3.13.0.orig/drivers/iio/gyro/st_gyro_spi.c +++ linux-3.13.0/drivers/iio/gyro/st_gyro_spi.c @@ -54,7 +54,6 @@ { LSM330DL_GYRO_DEV_NAME }, { LSM330DLC_GYRO_DEV_NAME }, { L3GD20_GYRO_DEV_NAME }, - { L3GD20H_GYRO_DEV_NAME }, { L3G4IS_GYRO_DEV_NAME }, { LSM330_GYRO_DEV_NAME }, {}, --- linux-3.13.0.orig/drivers/iio/imu/adis16400.h +++ linux-3.13.0/drivers/iio/imu/adis16400.h @@ -189,6 +189,7 @@ ADIS16300_SCAN_INCLI_X, ADIS16300_SCAN_INCLI_Y, ADIS16400_SCAN_ADC, + ADIS16400_SCAN_TIMESTAMP, }; #ifdef CONFIG_IIO_BUFFER --- linux-3.13.0.orig/drivers/iio/imu/adis16400_core.c +++ linux-3.13.0/drivers/iio/imu/adis16400_core.c @@ -632,7 +632,7 @@ ADIS16400_MAGN_CHAN(Z, ADIS16400_ZMAGN_OUT, 14), ADIS16400_TEMP_CHAN(ADIS16400_TEMP_OUT, 12), ADIS16400_AUX_ADC_CHAN(ADIS16400_AUX_ADC, 12), - IIO_CHAN_SOFT_TIMESTAMP(12) + IIO_CHAN_SOFT_TIMESTAMP(ADIS16400_SCAN_TIMESTAMP), }; static const struct iio_chan_spec adis16448_channels[] = { @@ -659,7 +659,7 @@ }, }, ADIS16400_TEMP_CHAN(ADIS16448_TEMP_OUT, 12), - IIO_CHAN_SOFT_TIMESTAMP(11) + IIO_CHAN_SOFT_TIMESTAMP(ADIS16400_SCAN_TIMESTAMP), }; static const struct iio_chan_spec adis16350_channels[] = { @@ -677,7 +677,7 @@ ADIS16400_MOD_TEMP_CHAN(X, ADIS16350_XTEMP_OUT, 12), ADIS16400_MOD_TEMP_CHAN(Y, ADIS16350_YTEMP_OUT, 12), ADIS16400_MOD_TEMP_CHAN(Z, ADIS16350_ZTEMP_OUT, 12), - IIO_CHAN_SOFT_TIMESTAMP(11) + IIO_CHAN_SOFT_TIMESTAMP(ADIS16400_SCAN_TIMESTAMP), }; static const struct iio_chan_spec adis16300_channels[] = { @@ -690,7 +690,7 @@ ADIS16400_AUX_ADC_CHAN(ADIS16300_AUX_ADC, 12), ADIS16400_INCLI_CHAN(X, ADIS16300_PITCH_OUT, 13), ADIS16400_INCLI_CHAN(Y, ADIS16300_ROLL_OUT, 13), - IIO_CHAN_SOFT_TIMESTAMP(14) + IIO_CHAN_SOFT_TIMESTAMP(ADIS16400_SCAN_TIMESTAMP), }; static const struct iio_chan_spec adis16334_channels[] = { @@ -701,7 +701,7 @@ ADIS16400_ACCEL_CHAN(Y, ADIS16400_YACCL_OUT, 14), ADIS16400_ACCEL_CHAN(Z, ADIS16400_ZACCL_OUT, 14), ADIS16400_TEMP_CHAN(ADIS16350_XTEMP_OUT, 12), - IIO_CHAN_SOFT_TIMESTAMP(8) + IIO_CHAN_SOFT_TIMESTAMP(ADIS16400_SCAN_TIMESTAMP), }; static struct attribute *adis16400_attributes[] = { --- linux-3.13.0.orig/drivers/iio/magnetometer/ak8975.c +++ linux-3.13.0/drivers/iio/magnetometer/ak8975.c @@ -85,6 +85,7 @@ #define AK8975_MAX_CONVERSION_TIMEOUT 500 #define AK8975_CONVERSION_DONE_POLL_TIME 10 #define AK8975_DATA_READY_TIMEOUT ((100*HZ)/1000) +#define RAW_TO_GAUSS(asa) ((((asa) + 128) * 3000) / 256) /* * Per-instance context data for the device. @@ -265,15 +266,15 @@ * * Since 1uT = 0.01 gauss, our final scale factor becomes: * - * Hadj = H * ((ASA + 128) / 256) * 3/10 * 100 - * Hadj = H * ((ASA + 128) * 30 / 256 + * Hadj = H * ((ASA + 128) / 256) * 3/10 * 1/100 + * Hadj = H * ((ASA + 128) * 0.003) / 256 * * Since ASA doesn't change, we cache the resultant scale factor into the * device context in ak8975_setup(). */ - data->raw_to_gauss[0] = ((data->asa[0] + 128) * 30) >> 8; - data->raw_to_gauss[1] = ((data->asa[1] + 128) * 30) >> 8; - data->raw_to_gauss[2] = ((data->asa[2] + 128) * 30) >> 8; + data->raw_to_gauss[0] = RAW_TO_GAUSS(data->asa[0]); + data->raw_to_gauss[1] = RAW_TO_GAUSS(data->asa[1]); + data->raw_to_gauss[2] = RAW_TO_GAUSS(data->asa[2]); return 0; } @@ -428,8 +429,9 @@ case IIO_CHAN_INFO_RAW: return ak8975_read_axis(indio_dev, chan->address, val); case IIO_CHAN_INFO_SCALE: - *val = data->raw_to_gauss[chan->address]; - return IIO_VAL_INT; + *val = 0; + *val2 = data->raw_to_gauss[chan->address]; + return IIO_VAL_INT_PLUS_MICRO; } return -EINVAL; } --- linux-3.13.0.orig/drivers/infiniband/Kconfig +++ linux-3.13.0/drivers/infiniband/Kconfig @@ -3,6 +3,8 @@ depends on PCI || BROKEN depends on HAS_IOMEM depends on NET + depends on INET + depends on m || IPV6 != m ---help--- Core support for InfiniBand (IB). Make sure to also select any protocols you wish to use as well as drivers for your @@ -38,8 +40,7 @@ config INFINIBAND_ADDR_TRANS bool - depends on INET - depends on !(INFINIBAND = y && IPV6 = m) + depends on INFINIBAND default y source "drivers/infiniband/hw/mthca/Kconfig" @@ -53,6 +54,7 @@ source "drivers/infiniband/hw/mlx5/Kconfig" source "drivers/infiniband/hw/nes/Kconfig" source "drivers/infiniband/hw/ocrdma/Kconfig" +source "drivers/infiniband/hw/usnic/Kconfig" source "drivers/infiniband/ulp/ipoib/Kconfig" --- linux-3.13.0.orig/drivers/infiniband/Makefile +++ linux-3.13.0/drivers/infiniband/Makefile @@ -10,6 +10,7 @@ obj-$(CONFIG_MLX5_INFINIBAND) += hw/mlx5/ obj-$(CONFIG_INFINIBAND_NES) += hw/nes/ obj-$(CONFIG_INFINIBAND_OCRDMA) += hw/ocrdma/ +obj-$(CONFIG_INFINIBAND_USNIC) += hw/usnic/ obj-$(CONFIG_INFINIBAND_IPOIB) += ulp/ipoib/ obj-$(CONFIG_INFINIBAND_SRP) += ulp/srp/ obj-$(CONFIG_INFINIBAND_SRPT) += ulp/srpt/ --- linux-3.13.0.orig/drivers/infiniband/core/Makefile +++ linux-3.13.0/drivers/infiniband/core/Makefile @@ -1,8 +1,9 @@ -infiniband-$(CONFIG_INFINIBAND_ADDR_TRANS) := ib_addr.o rdma_cm.o +infiniband-$(CONFIG_INFINIBAND_ADDR_TRANS) := rdma_cm.o user_access-$(CONFIG_INFINIBAND_ADDR_TRANS) := rdma_ucm.o obj-$(CONFIG_INFINIBAND) += ib_core.o ib_mad.o ib_sa.o \ - ib_cm.o iw_cm.o $(infiniband-y) + ib_cm.o iw_cm.o ib_addr.o \ + $(infiniband-y) obj-$(CONFIG_INFINIBAND_USER_MAD) += ib_umad.o obj-$(CONFIG_INFINIBAND_USER_ACCESS) += ib_uverbs.o ib_ucm.o \ $(user_access-y) --- linux-3.13.0.orig/drivers/infiniband/core/addr.c +++ linux-3.13.0/drivers/infiniband/core/addr.c @@ -86,6 +86,8 @@ } EXPORT_SYMBOL(rdma_addr_size); +static struct rdma_addr_client self; + void rdma_addr_register_client(struct rdma_addr_client *client) { atomic_set(&client->refcount, 1); @@ -119,7 +121,8 @@ } EXPORT_SYMBOL(rdma_copy_addr); -int rdma_translate_ip(struct sockaddr *addr, struct rdma_dev_addr *dev_addr) +int rdma_translate_ip(struct sockaddr *addr, struct rdma_dev_addr *dev_addr, + u16 *vlan_id) { struct net_device *dev; int ret = -EADDRNOTAVAIL; @@ -142,6 +145,8 @@ return ret; ret = rdma_copy_addr(dev_addr, dev, NULL); + if (vlan_id) + *vlan_id = rdma_vlan_dev_vlan_id(dev); dev_put(dev); break; @@ -153,6 +158,8 @@ &((struct sockaddr_in6 *) addr)->sin6_addr, dev, 1)) { ret = rdma_copy_addr(dev_addr, dev, NULL); + if (vlan_id) + *vlan_id = rdma_vlan_dev_vlan_id(dev); break; } } @@ -238,7 +245,7 @@ src_in->sin_addr.s_addr = fl4.saddr; if (rt->dst.dev->flags & IFF_LOOPBACK) { - ret = rdma_translate_ip((struct sockaddr *) dst_in, addr); + ret = rdma_translate_ip((struct sockaddr *)dst_in, addr, NULL); if (!ret) memcpy(addr->dst_dev_addr, addr->src_dev_addr, MAX_ADDR_LEN); goto put; @@ -286,7 +293,7 @@ } if (dst->dev->flags & IFF_LOOPBACK) { - ret = rdma_translate_ip((struct sockaddr *) dst_in, addr); + ret = rdma_translate_ip((struct sockaddr *)dst_in, addr, NULL); if (!ret) memcpy(addr->dst_dev_addr, addr->src_dev_addr, MAX_ADDR_LEN); goto put; @@ -437,6 +444,88 @@ } EXPORT_SYMBOL(rdma_addr_cancel); +struct resolve_cb_context { + struct rdma_dev_addr *addr; + struct completion comp; +}; + +static void resolve_cb(int status, struct sockaddr *src_addr, + struct rdma_dev_addr *addr, void *context) +{ + memcpy(((struct resolve_cb_context *)context)->addr, addr, sizeof(struct + rdma_dev_addr)); + complete(&((struct resolve_cb_context *)context)->comp); +} + +int rdma_addr_find_dmac_by_grh(union ib_gid *sgid, union ib_gid *dgid, u8 *dmac, + u16 *vlan_id) +{ + int ret = 0; + struct rdma_dev_addr dev_addr; + struct resolve_cb_context ctx; + struct net_device *dev; + + union { + struct sockaddr _sockaddr; + struct sockaddr_in _sockaddr_in; + struct sockaddr_in6 _sockaddr_in6; + } sgid_addr, dgid_addr; + + + ret = rdma_gid2ip(&sgid_addr._sockaddr, sgid); + if (ret) + return ret; + + ret = rdma_gid2ip(&dgid_addr._sockaddr, dgid); + if (ret) + return ret; + + memset(&dev_addr, 0, sizeof(dev_addr)); + + ctx.addr = &dev_addr; + init_completion(&ctx.comp); + ret = rdma_resolve_ip(&self, &sgid_addr._sockaddr, &dgid_addr._sockaddr, + &dev_addr, 1000, resolve_cb, &ctx); + if (ret) + return ret; + + wait_for_completion(&ctx.comp); + + memcpy(dmac, dev_addr.dst_dev_addr, ETH_ALEN); + dev = dev_get_by_index(&init_net, dev_addr.bound_dev_if); + if (!dev) + return -ENODEV; + if (vlan_id) + *vlan_id = rdma_vlan_dev_vlan_id(dev); + dev_put(dev); + return ret; +} +EXPORT_SYMBOL(rdma_addr_find_dmac_by_grh); + +int rdma_addr_find_smac_by_sgid(union ib_gid *sgid, u8 *smac, u16 *vlan_id) +{ + int ret = 0; + struct rdma_dev_addr dev_addr; + union { + struct sockaddr _sockaddr; + struct sockaddr_in _sockaddr_in; + struct sockaddr_in6 _sockaddr_in6; + } gid_addr; + + ret = rdma_gid2ip(&gid_addr._sockaddr, sgid); + + if (ret) + return ret; + memset(&dev_addr, 0, sizeof(dev_addr)); + ret = rdma_translate_ip(&gid_addr._sockaddr, &dev_addr, vlan_id); + if (ret) + return ret; + + memcpy(smac, dev_addr.src_dev_addr, ETH_ALEN); + return ret; +} +EXPORT_SYMBOL(rdma_addr_find_smac_by_sgid); + static int netevent_callback(struct notifier_block *self, unsigned long event, void *ctx) { @@ -461,11 +550,13 @@ return -ENOMEM; register_netevent_notifier(&nb); + rdma_addr_register_client(&self); return 0; } static void __exit addr_cleanup(void) { + rdma_addr_unregister_client(&self); unregister_netevent_notifier(&nb); destroy_workqueue(addr_wq); } --- linux-3.13.0.orig/drivers/infiniband/core/cm.c +++ linux-3.13.0/drivers/infiniband/core/cm.c @@ -47,6 +47,7 @@ #include #include #include +#include #include #include @@ -177,6 +178,8 @@ struct ib_ah_attr ah_attr; u16 pkey_index; u8 timeout; + u8 valid; + u8 smac[ETH_ALEN]; }; struct cm_work { @@ -376,6 +379,9 @@ ib_init_ah_from_path(cm_dev->ib_device, port->port_num, path, &av->ah_attr); av->timeout = path->packet_life_time + 1; + memcpy(av->smac, path->smac, sizeof(av->smac)); + + av->valid = 1; return 0; } @@ -1554,6 +1560,9 @@ cm_process_routed_req(req_msg, work->mad_recv_wc->wc); cm_format_paths_from_req(req_msg, &work->path[0], &work->path[1]); + + memcpy(work->path[0].dmac, cm_id_priv->av.ah_attr.dmac, ETH_ALEN); + work->path[0].vlan_id = cm_id_priv->av.ah_attr.vlan_id; ret = cm_init_av_by_path(&work->path[0], &cm_id_priv->av); if (ret) { ib_get_cached_gid(work->port->cm_dev->ib_device, @@ -3500,6 +3509,32 @@ *qp_attr_mask = IB_QP_STATE | IB_QP_AV | IB_QP_PATH_MTU | IB_QP_DEST_QPN | IB_QP_RQ_PSN; qp_attr->ah_attr = cm_id_priv->av.ah_attr; + if (!cm_id_priv->av.valid) { + spin_unlock_irqrestore(&cm_id_priv->lock, flags); + return -EINVAL; + } + if (cm_id_priv->av.ah_attr.vlan_id != 0xffff) { + qp_attr->vlan_id = cm_id_priv->av.ah_attr.vlan_id; + *qp_attr_mask |= IB_QP_VID; + } + if (!is_zero_ether_addr(cm_id_priv->av.smac)) { + memcpy(qp_attr->smac, cm_id_priv->av.smac, + sizeof(qp_attr->smac)); + *qp_attr_mask |= IB_QP_SMAC; + } + if (cm_id_priv->alt_av.valid) { + if (cm_id_priv->alt_av.ah_attr.vlan_id != 0xffff) { + qp_attr->alt_vlan_id = + cm_id_priv->alt_av.ah_attr.vlan_id; + *qp_attr_mask |= IB_QP_ALT_VID; + } + if (!is_zero_ether_addr(cm_id_priv->alt_av.smac)) { + memcpy(qp_attr->alt_smac, + cm_id_priv->alt_av.smac, + sizeof(qp_attr->alt_smac)); + *qp_attr_mask |= IB_QP_ALT_SMAC; + } + } qp_attr->path_mtu = cm_id_priv->path_mtu; qp_attr->dest_qp_num = be32_to_cpu(cm_id_priv->remote_qpn); qp_attr->rq_psn = be32_to_cpu(cm_id_priv->rq_psn); --- linux-3.13.0.orig/drivers/infiniband/core/cma.c +++ linux-3.13.0/drivers/infiniband/core/cma.c @@ -340,7 +340,7 @@ int ret; if (addr->sa_family != AF_IB) { - ret = rdma_translate_ip(addr, dev_addr); + ret = rdma_translate_ip(addr, dev_addr, NULL); } else { cma_translate_ib((struct sockaddr_ib *) addr, dev_addr); ret = 0; @@ -365,7 +365,9 @@ return -EINVAL; mutex_lock(&lock); - iboe_addr_get_sgid(dev_addr, &iboe_gid); + rdma_ip2gid((struct sockaddr *)&id_priv->id.route.addr.src_addr, + &iboe_gid); + memcpy(&gid, dev_addr->src_dev_addr + rdma_addr_gid_offset(dev_addr), sizeof gid); if (listen_id_priv && @@ -603,6 +605,7 @@ { struct ib_qp_attr qp_attr; int qp_attr_mask, ret; + union ib_gid sgid; mutex_lock(&id_priv->qp_mutex); if (!id_priv->id.qp) { @@ -625,6 +628,20 @@ if (ret) goto out; + ret = ib_query_gid(id_priv->id.device, id_priv->id.port_num, + qp_attr.ah_attr.grh.sgid_index, &sgid); + if (ret) + goto out; + + if (rdma_node_get_transport(id_priv->cma_dev->device->node_type) + == RDMA_TRANSPORT_IB && + rdma_port_get_link_layer(id_priv->id.device, id_priv->id.port_num) + == IB_LINK_LAYER_ETHERNET) { + ret = rdma_addr_find_smac_by_sgid(&sgid, qp_attr.smac, NULL); + + if (ret) + goto out; + } if (conn_param) qp_attr.max_dest_rd_atomic = conn_param->responder_resources; ret = ib_modify_qp(id_priv->id.qp, &qp_attr, qp_attr_mask); @@ -725,6 +742,7 @@ else ret = ib_cm_init_qp_attr(id_priv->cm_id.ib, qp_attr, qp_attr_mask); + if (qp_attr->qp_state == IB_QPS_RTR) qp_attr->rq_psn = id_priv->seq_num; break; @@ -1309,13 +1327,13 @@ ret = conn_id->id.event_handler(&conn_id->id, &event); if (ret) goto err3; - /* * Acquire mutex to prevent user executing rdma_destroy_id() * while we're accessing the cm_id. */ mutex_lock(&lock); - if (cma_comp(conn_id, RDMA_CM_CONNECT) && (conn_id->id.qp_type != IB_QPT_UD)) + if (cma_comp(conn_id, RDMA_CM_CONNECT) && + (conn_id->id.qp_type != IB_QPT_UD)) ib_send_cm_mra(cm_id, CMA_CM_MRA_SETTING, NULL, 0); mutex_unlock(&lock); mutex_unlock(&conn_id->handler_mutex); @@ -1474,7 +1492,7 @@ mutex_lock_nested(&conn_id->handler_mutex, SINGLE_DEPTH_NESTING); conn_id->state = RDMA_CM_CONNECT; - ret = rdma_translate_ip(laddr, &conn_id->id.route.addr.dev_addr); + ret = rdma_translate_ip(laddr, &conn_id->id.route.addr.dev_addr, NULL); if (ret) { mutex_unlock(&conn_id->handler_mutex); rdma_destroy_id(new_cm_id); @@ -1873,7 +1891,7 @@ struct cma_work *work; int ret; struct net_device *ndev = NULL; - u16 vid; + work = kzalloc(sizeof *work, GFP_KERNEL); if (!work) @@ -1897,10 +1915,14 @@ goto err2; } - vid = rdma_vlan_dev_vlan_id(ndev); - - iboe_mac_vlan_to_ll(&route->path_rec->sgid, addr->dev_addr.src_dev_addr, vid); - iboe_mac_vlan_to_ll(&route->path_rec->dgid, addr->dev_addr.dst_dev_addr, vid); + route->path_rec->vlan_id = rdma_vlan_dev_vlan_id(ndev); + memcpy(route->path_rec->dmac, addr->dev_addr.dst_dev_addr, ETH_ALEN); + memcpy(route->path_rec->smac, ndev->dev_addr, ndev->addr_len); + + rdma_ip2gid((struct sockaddr *)&id_priv->id.route.addr.src_addr, + &route->path_rec->sgid); + rdma_ip2gid((struct sockaddr *)&id_priv->id.route.addr.dst_addr, + &route->path_rec->dgid); route->path_rec->hop_limit = 1; route->path_rec->reversible = 1; @@ -2063,6 +2085,7 @@ RDMA_CM_ADDR_RESOLVED)) goto out; + memcpy(cma_src_addr(id_priv), src_addr, rdma_addr_size(src_addr)); if (!status && !id_priv->cma_dev) status = cma_acquire_dev(id_priv, NULL); @@ -2072,10 +2095,8 @@ goto out; event.event = RDMA_CM_EVENT_ADDR_ERROR; event.status = status; - } else { - memcpy(cma_src_addr(id_priv), src_addr, rdma_addr_size(src_addr)); + } else event.event = RDMA_CM_EVENT_ADDR_RESOLVED; - } if (id_priv->id.event_handler(&id_priv->id, &event)) { cma_exch(id_priv, RDMA_CM_DESTROYING); @@ -2480,8 +2501,11 @@ return 0; sin6 = (struct sockaddr_in6 *) addr; - if ((ipv6_addr_type(&sin6->sin6_addr) & IPV6_ADDR_LINKLOCAL) && - !sin6->sin6_scope_id) + + if (!(ipv6_addr_type(&sin6->sin6_addr) & IPV6_ADDR_LINKLOCAL)) + return 0; + + if (!sin6->sin6_scope_id) return -EINVAL; dev_addr->bound_dev_if = sin6->sin6_scope_id; @@ -2556,6 +2580,7 @@ if (ret) goto err1; + memcpy(cma_src_addr(id_priv), addr, rdma_addr_size(addr)); if (!cma_any_addr(addr)) { ret = cma_translate_addr(addr, &id->route.addr.dev_addr); if (ret) @@ -2566,7 +2591,6 @@ goto err1; } - memcpy(cma_src_addr(id_priv), addr, rdma_addr_size(addr)); if (!(id_priv->options & (1 << CMA_OPTION_AFONLY))) { if (addr->sa_family == AF_INET) id_priv->afonly = 1; @@ -3295,7 +3319,8 @@ err = -EINVAL; goto out2; } - iboe_addr_get_sgid(dev_addr, &mc->multicast.ib->rec.port_gid); + rdma_ip2gid((struct sockaddr *)&id_priv->id.route.addr.src_addr, + &mc->multicast.ib->rec.port_gid); work->id = id_priv; work->mc = mc; INIT_WORK(&work->work, iboe_mcast_work_handler); --- linux-3.13.0.orig/drivers/infiniband/core/core_priv.h +++ linux-3.13.0/drivers/infiniband/core/core_priv.h @@ -49,4 +49,6 @@ int ib_cache_setup(void); void ib_cache_cleanup(void); +int ib_resolve_eth_l2_attrs(struct ib_qp *qp, + struct ib_qp_attr *qp_attr, int *qp_attr_mask); #endif /* _CORE_PRIV_H */ --- linux-3.13.0.orig/drivers/infiniband/core/iwcm.c +++ linux-3.13.0/drivers/infiniband/core/iwcm.c @@ -334,7 +334,6 @@ { struct iwcm_id_private *cm_id_priv; unsigned long flags; - int ret; cm_id_priv = container_of(cm_id, struct iwcm_id_private, id); /* @@ -350,7 +349,7 @@ cm_id_priv->state = IW_CM_STATE_DESTROYING; spin_unlock_irqrestore(&cm_id_priv->lock, flags); /* destroy the listening endpoint */ - ret = cm_id->device->iwcm->destroy_listen(cm_id); + cm_id->device->iwcm->destroy_listen(cm_id); spin_lock_irqsave(&cm_id_priv->lock, flags); break; case IW_CM_STATE_ESTABLISHED: --- linux-3.13.0.orig/drivers/infiniband/core/sa_query.c +++ linux-3.13.0/drivers/infiniband/core/sa_query.c @@ -42,7 +42,7 @@ #include #include #include - +#include #include #include #include "sa.h" @@ -556,6 +556,13 @@ ah_attr->grh.hop_limit = rec->hop_limit; ah_attr->grh.traffic_class = rec->traffic_class; } + if (force_grh) { + memcpy(ah_attr->dmac, rec->dmac, ETH_ALEN); + ah_attr->vlan_id = rec->vlan_id; + } else { + ah_attr->vlan_id = 0xffff; + } + return 0; } EXPORT_SYMBOL(ib_init_ah_from_path); @@ -670,6 +677,9 @@ ib_unpack(path_rec_table, ARRAY_SIZE(path_rec_table), mad->data, &rec); + rec.vlan_id = 0xffff; + memset(rec.dmac, 0, ETH_ALEN); + memset(rec.smac, 0, ETH_ALEN); query->callback(status, &rec, query->context); } else query->callback(status, NULL, query->context); --- linux-3.13.0.orig/drivers/infiniband/core/sysfs.c +++ linux-3.13.0/drivers/infiniband/core/sysfs.c @@ -613,6 +613,7 @@ case RDMA_NODE_IB_CA: return sprintf(buf, "%d: CA\n", dev->node_type); case RDMA_NODE_RNIC: return sprintf(buf, "%d: RNIC\n", dev->node_type); case RDMA_NODE_USNIC: return sprintf(buf, "%d: usNIC\n", dev->node_type); + case RDMA_NODE_USNIC_UDP: return sprintf(buf, "%d: usNIC UDP\n", dev->node_type); case RDMA_NODE_IB_SWITCH: return sprintf(buf, "%d: switch\n", dev->node_type); case RDMA_NODE_IB_ROUTER: return sprintf(buf, "%d: router\n", dev->node_type); default: return sprintf(buf, "%d: \n", dev->node_type); --- linux-3.13.0.orig/drivers/infiniband/core/ucma.c +++ linux-3.13.0/drivers/infiniband/core/ucma.c @@ -655,24 +655,14 @@ static void ucma_copy_iboe_route(struct rdma_ucm_query_route_resp *resp, struct rdma_route *route) { - struct rdma_dev_addr *dev_addr; - struct net_device *dev; - u16 vid = 0; resp->num_paths = route->num_paths; switch (route->num_paths) { case 0: - dev_addr = &route->addr.dev_addr; - dev = dev_get_by_index(&init_net, dev_addr->bound_dev_if); - if (dev) { - vid = rdma_vlan_dev_vlan_id(dev); - dev_put(dev); - } - - iboe_mac_vlan_to_ll((union ib_gid *) &resp->ib_route[0].dgid, - dev_addr->dst_dev_addr, vid); - iboe_addr_get_sgid(dev_addr, - (union ib_gid *) &resp->ib_route[0].sgid); + rdma_ip2gid((struct sockaddr *)&route->addr.dst_addr, + (union ib_gid *)&resp->ib_route[0].dgid); + rdma_ip2gid((struct sockaddr *)&route->addr.src_addr, + (union ib_gid *)&resp->ib_route[0].sgid); resp->ib_route[0].pkey = cpu_to_be16(0xffff); break; case 2: --- linux-3.13.0.orig/drivers/infiniband/core/uverbs_cmd.c +++ linux-3.13.0/drivers/infiniband/core/uverbs_cmd.c @@ -40,6 +40,7 @@ #include #include "uverbs.h" +#include "core_priv.h" struct uverbs_lock_class { struct lock_class_key key; @@ -1961,6 +1962,9 @@ attr->alt_ah_attr.port_num = cmd.alt_dest.port_num; if (qp->real_qp == qp) { + ret = ib_resolve_eth_l2_attrs(qp, attr, &cmd.attr_mask); + if (ret) + goto out; ret = qp->device->modify_qp(qp, attr, modify_qp_mask(qp->qp_type, cmd.attr_mask), &udata); } else { --- linux-3.13.0.orig/drivers/infiniband/core/verbs.c +++ linux-3.13.0/drivers/infiniband/core/verbs.c @@ -44,6 +44,9 @@ #include #include +#include + +#include "core_priv.h" int ib_rate_to_mult(enum ib_rate rate) { @@ -116,6 +119,8 @@ return RDMA_TRANSPORT_IWARP; case RDMA_NODE_USNIC: return RDMA_TRANSPORT_USNIC; + case RDMA_NODE_USNIC_UDP: + return RDMA_TRANSPORT_USNIC_UDP; default: BUG(); return 0; @@ -133,6 +138,7 @@ return IB_LINK_LAYER_INFINIBAND; case RDMA_TRANSPORT_IWARP: case RDMA_TRANSPORT_USNIC: + case RDMA_TRANSPORT_USNIC_UDP: return IB_LINK_LAYER_ETHERNET; default: return IB_LINK_LAYER_UNSPECIFIED; @@ -192,8 +198,28 @@ u32 flow_class; u16 gid_index; int ret; + int is_eth = (rdma_port_get_link_layer(device, port_num) == + IB_LINK_LAYER_ETHERNET); memset(ah_attr, 0, sizeof *ah_attr); + if (is_eth) { + if (!(wc->wc_flags & IB_WC_GRH)) + return -EPROTOTYPE; + + if (wc->wc_flags & IB_WC_WITH_SMAC && + wc->wc_flags & IB_WC_WITH_VLAN) { + memcpy(ah_attr->dmac, wc->smac, ETH_ALEN); + ah_attr->vlan_id = wc->vlan_id; + } else { + ret = rdma_addr_find_dmac_by_grh(&grh->dgid, &grh->sgid, + ah_attr->dmac, &ah_attr->vlan_id); + if (ret) + return ret; + } + } else { + ah_attr->vlan_id = 0xffff; + } + ah_attr->dlid = wc->slid; ah_attr->sl = wc->sl; ah_attr->src_path_bits = wc->dlid_path_bits; @@ -476,7 +502,9 @@ static const struct { int valid; enum ib_qp_attr_mask req_param[IB_QPT_MAX]; + enum ib_qp_attr_mask req_param_add_eth[IB_QPT_MAX]; enum ib_qp_attr_mask opt_param[IB_QPT_MAX]; + enum ib_qp_attr_mask opt_param_add_eth[IB_QPT_MAX]; } qp_state_table[IB_QPS_ERR + 1][IB_QPS_ERR + 1] = { [IB_QPS_RESET] = { [IB_QPS_RESET] = { .valid = 1 }, @@ -557,6 +585,12 @@ IB_QP_MAX_DEST_RD_ATOMIC | IB_QP_MIN_RNR_TIMER), }, + .req_param_add_eth = { + [IB_QPT_RC] = (IB_QP_SMAC), + [IB_QPT_UC] = (IB_QP_SMAC), + [IB_QPT_XRC_INI] = (IB_QP_SMAC), + [IB_QPT_XRC_TGT] = (IB_QP_SMAC) + }, .opt_param = { [IB_QPT_UD] = (IB_QP_PKEY_INDEX | IB_QP_QKEY), @@ -576,7 +610,21 @@ IB_QP_QKEY), [IB_QPT_GSI] = (IB_QP_PKEY_INDEX | IB_QP_QKEY), - } + }, + .opt_param_add_eth = { + [IB_QPT_RC] = (IB_QP_ALT_SMAC | + IB_QP_VID | + IB_QP_ALT_VID), + [IB_QPT_UC] = (IB_QP_ALT_SMAC | + IB_QP_VID | + IB_QP_ALT_VID), + [IB_QPT_XRC_INI] = (IB_QP_ALT_SMAC | + IB_QP_VID | + IB_QP_ALT_VID), + [IB_QPT_XRC_TGT] = (IB_QP_ALT_SMAC | + IB_QP_VID | + IB_QP_ALT_VID) + } } }, [IB_QPS_RTR] = { @@ -779,7 +827,8 @@ }; int ib_modify_qp_is_ok(enum ib_qp_state cur_state, enum ib_qp_state next_state, - enum ib_qp_type type, enum ib_qp_attr_mask mask) + enum ib_qp_type type, enum ib_qp_attr_mask mask, + enum rdma_link_layer ll) { enum ib_qp_attr_mask req_param, opt_param; @@ -798,6 +847,13 @@ req_param = qp_state_table[cur_state][next_state].req_param[type]; opt_param = qp_state_table[cur_state][next_state].opt_param[type]; + if (ll == IB_LINK_LAYER_ETHERNET) { + req_param |= qp_state_table[cur_state][next_state]. + req_param_add_eth[type]; + opt_param |= qp_state_table[cur_state][next_state]. + opt_param_add_eth[type]; + } + if ((mask & req_param) != req_param) return 0; @@ -808,10 +864,51 @@ } EXPORT_SYMBOL(ib_modify_qp_is_ok); +int ib_resolve_eth_l2_attrs(struct ib_qp *qp, + struct ib_qp_attr *qp_attr, int *qp_attr_mask) +{ + int ret = 0; + union ib_gid sgid; + + if ((*qp_attr_mask & IB_QP_AV) && + (rdma_port_get_link_layer(qp->device, qp_attr->ah_attr.port_num) == IB_LINK_LAYER_ETHERNET)) { + ret = ib_query_gid(qp->device, qp_attr->ah_attr.port_num, + qp_attr->ah_attr.grh.sgid_index, &sgid); + if (ret) + goto out; + if (rdma_link_local_addr((struct in6_addr *)qp_attr->ah_attr.grh.dgid.raw)) { + rdma_get_ll_mac((struct in6_addr *)qp_attr->ah_attr.grh.dgid.raw, qp_attr->ah_attr.dmac); + rdma_get_ll_mac((struct in6_addr *)sgid.raw, qp_attr->smac); + qp_attr->vlan_id = rdma_get_vlan_id(&sgid); + } else { + ret = rdma_addr_find_dmac_by_grh(&sgid, &qp_attr->ah_attr.grh.dgid, + qp_attr->ah_attr.dmac, &qp_attr->vlan_id); + if (ret) + goto out; + ret = rdma_addr_find_smac_by_sgid(&sgid, qp_attr->smac, NULL); + if (ret) + goto out; + } + *qp_attr_mask |= IB_QP_SMAC; + if (qp_attr->vlan_id < 0xFFFF) + *qp_attr_mask |= IB_QP_VID; + } +out: + return ret; +} +EXPORT_SYMBOL(ib_resolve_eth_l2_attrs); + + int ib_modify_qp(struct ib_qp *qp, struct ib_qp_attr *qp_attr, int qp_attr_mask) { + int ret; + + ret = ib_resolve_eth_l2_attrs(qp, qp_attr, &qp_attr_mask); + if (ret) + return ret; + return qp->device->modify_qp(qp->real_qp, qp_attr, qp_attr_mask, NULL); } EXPORT_SYMBOL(ib_modify_qp); --- linux-3.13.0.orig/drivers/infiniband/hw/amso1100/c2.c +++ linux-3.13.0/drivers/infiniband/hw/amso1100/c2.c @@ -1082,6 +1082,7 @@ /* Initialize network device */ if ((netdev = c2_devinit(c2dev, mmio_regs)) == NULL) { + ret = -ENOMEM; iounmap(mmio_regs); goto bail4; } @@ -1151,7 +1152,8 @@ goto bail10; } - if (c2_register_device(c2dev)) + ret = c2_register_device(c2dev); + if (ret) goto bail10; return 0; --- linux-3.13.0.orig/drivers/infiniband/hw/amso1100/c2_intr.c +++ linux-3.13.0/drivers/infiniband/hw/amso1100/c2_intr.c @@ -169,7 +169,8 @@ * We should never get here, as the adapter should * never send us a reply that we're not expecting. */ - vq_repbuf_free(c2dev, host_msg); + if (reply_msg != NULL) + vq_repbuf_free(c2dev, host_msg); pr_debug("handle_vq: UNEXPECTEDLY got NULL req\n"); return; } --- linux-3.13.0.orig/drivers/infiniband/hw/amso1100/c2_rnic.c +++ linux-3.13.0/drivers/infiniband/hw/amso1100/c2_rnic.c @@ -576,7 +576,8 @@ goto bail4; /* Initialize cached the adapter limits */ - if (c2_rnic_query(c2dev, &c2dev->props)) + err = c2_rnic_query(c2dev, &c2dev->props); + if (err) goto bail5; /* Initialize the PD pool */ --- linux-3.13.0.orig/drivers/infiniband/hw/cxgb4/cm.c +++ linux-3.13.0/drivers/infiniband/hw/cxgb4/cm.c @@ -1647,6 +1647,15 @@ status != CPL_ERR_ARP_MISS; } +/* Returns whether a CPL status conveys negative advice. + */ +static int is_neg_adv(unsigned int status) +{ + return status == CPL_ERR_RTX_NEG_ADVICE || + status == CPL_ERR_PERSIST_NEG_ADVICE || + status == CPL_ERR_KEEPALV_NEG_ADVICE; +} + #define ACT_OPEN_RETRY_COUNT 2 static int import_ep(struct c4iw_ep *ep, int iptype, __u8 *peer_ip, @@ -1835,7 +1844,7 @@ PDBG("%s ep %p atid %u status %u errno %d\n", __func__, ep, atid, status, status2errno(status)); - if (status == CPL_ERR_RTX_NEG_ADVICE) { + if (is_neg_adv(status)) { printk(KERN_WARNING MOD "Connection problems for atid %u\n", atid); return 0; @@ -2265,15 +2274,6 @@ return 0; } -/* - * Returns whether an ABORT_REQ_RSS message is a negative advice. - */ -static int is_neg_adv_abort(unsigned int status) -{ - return status == CPL_ERR_RTX_NEG_ADVICE || - status == CPL_ERR_PERSIST_NEG_ADVICE; -} - static int peer_abort(struct c4iw_dev *dev, struct sk_buff *skb) { struct cpl_abort_req_rss *req = cplhdr(skb); @@ -2287,7 +2287,7 @@ unsigned int tid = GET_TID(req); ep = lookup_tid(t, tid); - if (is_neg_adv_abort(req->status)) { + if (is_neg_adv(req->status)) { PDBG("%s neg_adv_abort ep %p tid %u\n", __func__, ep, ep->hwtid); return 0; @@ -3352,6 +3352,7 @@ goto free_dst; } + neigh_release(neigh); step = dev->rdev.lldi.nrxq / dev->rdev.lldi.nchan; rss_qid = dev->rdev.lldi.rxq_ids[pi->port_id * step]; window = (__force u16) htons((__force u16)tcph->window); @@ -3569,7 +3570,7 @@ kfree_skb(skb); return 0; } - if (is_neg_adv_abort(req->status)) { + if (is_neg_adv(req->status)) { PDBG("%s neg_adv_abort ep %p tid %u\n", __func__, ep, ep->hwtid); kfree_skb(skb); --- linux-3.13.0.orig/drivers/infiniband/hw/cxgb4/device.c +++ linux-3.13.0/drivers/infiniband/hw/cxgb4/device.c @@ -64,6 +64,10 @@ static LIST_HEAD(uld_ctx_list); static DEFINE_MUTEX(dev_mutex); +#define DB_FC_RESUME_SIZE 64 +#define DB_FC_RESUME_DELAY 1 +#define DB_FC_DRAIN_THRESH 0 + static struct dentry *c4iw_debugfs_root; struct c4iw_debugfs_data { @@ -282,7 +286,7 @@ .llseek = default_llseek, }; -static char *db_state_str[] = {"NORMAL", "FLOW_CONTROL", "RECOVERY"}; +static char *db_state_str[] = {"NORMAL", "FLOW_CONTROL", "RECOVERY", "STOPPED"}; static int stats_show(struct seq_file *seq, void *v) { @@ -311,9 +315,10 @@ seq_printf(seq, " DB FULL: %10llu\n", dev->rdev.stats.db_full); seq_printf(seq, " DB EMPTY: %10llu\n", dev->rdev.stats.db_empty); seq_printf(seq, " DB DROP: %10llu\n", dev->rdev.stats.db_drop); - seq_printf(seq, " DB State: %s Transitions %llu\n", + seq_printf(seq, " DB State: %s Transitions %llu FC Interruptions %llu\n", db_state_str[dev->db_state], - dev->rdev.stats.db_state_transitions); + dev->rdev.stats.db_state_transitions, + dev->rdev.stats.db_fc_interruptions); seq_printf(seq, "TCAM_FULL: %10llu\n", dev->rdev.stats.tcam_full); seq_printf(seq, "ACT_OFLD_CONN_FAILS: %10llu\n", dev->rdev.stats.act_ofld_conn_fails); @@ -643,6 +648,12 @@ printk(KERN_ERR MOD "error %d initializing ocqp pool\n", err); goto err4; } + rdev->status_page = (struct t4_dev_status_page *) + __get_free_page(GFP_KERNEL); + if (!rdev->status_page) { + pr_err(MOD "error allocating status page\n"); + goto err4; + } return 0; err4: c4iw_rqtpool_destroy(rdev); @@ -656,6 +667,7 @@ static void c4iw_rdev_close(struct c4iw_rdev *rdev) { + free_page((unsigned long)rdev->status_page); c4iw_pblpool_destroy(rdev); c4iw_rqtpool_destroy(rdev); c4iw_destroy_resource(&rdev->resource); @@ -703,18 +715,6 @@ pr_info("%s: On-Chip Queues not supported on this device.\n", pci_name(infop->pdev)); - if (!is_t4(infop->adapter_type)) { - if (!allow_db_fc_on_t5) { - db_fc_threshold = 100000; - pr_info("DB Flow Control Disabled.\n"); - } - - if (!allow_db_coalescing_on_t5) { - db_coalescing_threshold = -1; - pr_info("DB Coalescing Disabled.\n"); - } - } - devp = (struct c4iw_dev *)ib_alloc_device(sizeof(*devp)); if (!devp) { printk(KERN_ERR MOD "Cannot allocate ib device\n"); @@ -749,6 +749,7 @@ spin_lock_init(&devp->lock); mutex_init(&devp->rdev.stats.lock); mutex_init(&devp->db_mutex); + INIT_LIST_HEAD(&devp->db_fc_list); if (c4iw_debugfs_root) { devp->debugfs_root = debugfs_create_dir( @@ -977,13 +978,16 @@ static void stop_queues(struct uld_ctx *ctx) { - spin_lock_irq(&ctx->dev->lock); - if (ctx->dev->db_state == NORMAL) { - ctx->dev->rdev.stats.db_state_transitions++; - ctx->dev->db_state = FLOW_CONTROL; + unsigned long flags; + + spin_lock_irqsave(&ctx->dev->lock, flags); + ctx->dev->rdev.stats.db_state_transitions++; + ctx->dev->db_state = STOPPED; + if (ctx->dev->rdev.flags & T4_STATUS_PAGE_DISABLED) idr_for_each(&ctx->dev->qpidr, disable_qp_db, NULL); - } - spin_unlock_irq(&ctx->dev->lock); + else + ctx->dev->rdev.status_page->db_off = 1; + spin_unlock_irqrestore(&ctx->dev->lock, flags); } static int enable_qp_db(int id, void *p, void *data) @@ -994,15 +998,70 @@ return 0; } +static void resume_rc_qp(struct c4iw_qp *qp) +{ + spin_lock(&qp->lock); + t4_ring_sq_db(&qp->wq, qp->wq.sq.wq_pidx_inc); + qp->wq.sq.wq_pidx_inc = 0; + t4_ring_rq_db(&qp->wq, qp->wq.rq.wq_pidx_inc); + qp->wq.rq.wq_pidx_inc = 0; + spin_unlock(&qp->lock); +} + +static void resume_a_chunk(struct uld_ctx *ctx) +{ + int i; + struct c4iw_qp *qp; + + for (i = 0; i < DB_FC_RESUME_SIZE; i++) { + qp = list_first_entry(&ctx->dev->db_fc_list, struct c4iw_qp, + db_fc_entry); + list_del_init(&qp->db_fc_entry); + resume_rc_qp(qp); + if (list_empty(&ctx->dev->db_fc_list)) + break; + } +} + static void resume_queues(struct uld_ctx *ctx) { spin_lock_irq(&ctx->dev->lock); - if (ctx->dev->qpcnt <= db_fc_threshold && - ctx->dev->db_state == FLOW_CONTROL) { - ctx->dev->db_state = NORMAL; - ctx->dev->rdev.stats.db_state_transitions++; - idr_for_each(&ctx->dev->qpidr, enable_qp_db, NULL); + if (ctx->dev->db_state != STOPPED) + goto out; + ctx->dev->db_state = FLOW_CONTROL; + while (1) { + if (list_empty(&ctx->dev->db_fc_list)) { + WARN_ON(ctx->dev->db_state != FLOW_CONTROL); + ctx->dev->db_state = NORMAL; + ctx->dev->rdev.stats.db_state_transitions++; + if (ctx->dev->rdev.flags & T4_STATUS_PAGE_DISABLED) { + idr_for_each(&ctx->dev->qpidr, enable_qp_db, + NULL); + } else { + ctx->dev->rdev.status_page->db_off = 0; + } + break; + } else { + if (cxgb4_dbfifo_count(ctx->dev->rdev.lldi.ports[0], 1) + < (ctx->dev->rdev.lldi.dbfifo_int_thresh << + DB_FC_DRAIN_THRESH)) { + resume_a_chunk(ctx); + } + if (!list_empty(&ctx->dev->db_fc_list)) { + spin_unlock_irq(&ctx->dev->lock); + if (DB_FC_RESUME_DELAY) { + set_current_state(TASK_UNINTERRUPTIBLE); + schedule_timeout(DB_FC_RESUME_DELAY); + } + spin_lock_irq(&ctx->dev->lock); + if (ctx->dev->db_state != FLOW_CONTROL) + break; + } + } } +out: + if (ctx->dev->db_state != NORMAL) + ctx->dev->rdev.stats.db_fc_interruptions++; spin_unlock_irq(&ctx->dev->lock); } @@ -1028,12 +1087,12 @@ return 0; } -static void deref_qps(struct qp_list qp_list) +static void deref_qps(struct qp_list *qp_list) { int idx; - for (idx = 0; idx < qp_list.idx; idx++) - c4iw_qp_rem_ref(&qp_list.qps[idx]->ibqp); + for (idx = 0; idx < qp_list->idx; idx++) + c4iw_qp_rem_ref(&qp_list->qps[idx]->ibqp); } static void recover_lost_dbs(struct uld_ctx *ctx, struct qp_list *qp_list) @@ -1044,17 +1103,22 @@ for (idx = 0; idx < qp_list->idx; idx++) { struct c4iw_qp *qp = qp_list->qps[idx]; + spin_lock_irq(&qp->rhp->lock); + spin_lock(&qp->lock); ret = cxgb4_sync_txq_pidx(qp->rhp->rdev.lldi.ports[0], qp->wq.sq.qid, t4_sq_host_wq_pidx(&qp->wq), t4_sq_wq_size(&qp->wq)); if (ret) { - printk(KERN_ERR MOD "%s: Fatal error - " + pr_err(KERN_ERR MOD "%s: Fatal error - " "DB overflow recovery failed - " "error syncing SQ qid %u\n", pci_name(ctx->lldi.pdev), qp->wq.sq.qid); + spin_unlock(&qp->lock); + spin_unlock_irq(&qp->rhp->lock); return; } + qp->wq.sq.wq_pidx_inc = 0; ret = cxgb4_sync_txq_pidx(qp->rhp->rdev.lldi.ports[0], qp->wq.rq.qid, @@ -1062,12 +1126,17 @@ t4_rq_wq_size(&qp->wq)); if (ret) { - printk(KERN_ERR MOD "%s: Fatal error - " + pr_err(KERN_ERR MOD "%s: Fatal error - " "DB overflow recovery failed - " "error syncing RQ qid %u\n", pci_name(ctx->lldi.pdev), qp->wq.rq.qid); + spin_unlock(&qp->lock); + spin_unlock_irq(&qp->rhp->lock); return; } + qp->wq.rq.wq_pidx_inc = 0; + spin_unlock(&qp->lock); + spin_unlock_irq(&qp->rhp->lock); /* Wait for the dbfifo to drain */ while (cxgb4_dbfifo_count(qp->rhp->rdev.lldi.ports[0], 1) > 0) { @@ -1083,36 +1152,22 @@ struct qp_list qp_list; int ret; - /* lock out kernel db ringers */ - mutex_lock(&ctx->dev->db_mutex); - - /* put all queues in to recovery mode */ - spin_lock_irq(&ctx->dev->lock); - ctx->dev->db_state = RECOVERY; - ctx->dev->rdev.stats.db_state_transitions++; - idr_for_each(&ctx->dev->qpidr, disable_qp_db, NULL); - spin_unlock_irq(&ctx->dev->lock); - /* slow everybody down */ set_current_state(TASK_UNINTERRUPTIBLE); schedule_timeout(usecs_to_jiffies(1000)); - /* Wait for the dbfifo to completely drain. */ - while (cxgb4_dbfifo_count(ctx->dev->rdev.lldi.ports[0], 1) > 0) { - set_current_state(TASK_UNINTERRUPTIBLE); - schedule_timeout(usecs_to_jiffies(10)); - } - /* flush the SGE contexts */ ret = cxgb4_flush_eq_cache(ctx->dev->rdev.lldi.ports[0]); if (ret) { printk(KERN_ERR MOD "%s: Fatal error - DB overflow recovery failed\n", pci_name(ctx->lldi.pdev)); - goto out; + return; } /* Count active queues so we can build a list of queues to recover */ spin_lock_irq(&ctx->dev->lock); + WARN_ON(ctx->dev->db_state != STOPPED); + ctx->dev->db_state = RECOVERY; idr_for_each(&ctx->dev->qpidr, count_qps, &count); qp_list.qps = kzalloc(count * sizeof *qp_list.qps, GFP_ATOMIC); @@ -1120,7 +1175,7 @@ printk(KERN_ERR MOD "%s: Fatal error - DB overflow recovery failed\n", pci_name(ctx->lldi.pdev)); spin_unlock_irq(&ctx->dev->lock); - goto out; + return; } qp_list.idx = 0; @@ -1133,29 +1188,13 @@ recover_lost_dbs(ctx, &qp_list); /* we're almost done! deref the qps and clean up */ - deref_qps(qp_list); + deref_qps(&qp_list); kfree(qp_list.qps); - /* Wait for the dbfifo to completely drain again */ - while (cxgb4_dbfifo_count(ctx->dev->rdev.lldi.ports[0], 1) > 0) { - set_current_state(TASK_UNINTERRUPTIBLE); - schedule_timeout(usecs_to_jiffies(10)); - } - - /* resume the queues */ spin_lock_irq(&ctx->dev->lock); - if (ctx->dev->qpcnt > db_fc_threshold) - ctx->dev->db_state = FLOW_CONTROL; - else { - ctx->dev->db_state = NORMAL; - idr_for_each(&ctx->dev->qpidr, enable_qp_db, NULL); - } - ctx->dev->rdev.stats.db_state_transitions++; + WARN_ON(ctx->dev->db_state != RECOVERY); + ctx->dev->db_state = STOPPED; spin_unlock_irq(&ctx->dev->lock); - -out: - /* start up kernel db ringers again */ - mutex_unlock(&ctx->dev->db_mutex); } static int c4iw_uld_control(void *handle, enum cxgb4_control control, ...) @@ -1165,9 +1204,7 @@ switch (control) { case CXGB4_CONTROL_DB_FULL: stop_queues(ctx); - mutex_lock(&ctx->dev->rdev.stats.lock); ctx->dev->rdev.stats.db_full++; - mutex_unlock(&ctx->dev->rdev.stats.lock); break; case CXGB4_CONTROL_DB_EMPTY: resume_queues(ctx); --- linux-3.13.0.orig/drivers/infiniband/hw/cxgb4/iw_cxgb4.h +++ linux-3.13.0/drivers/infiniband/hw/cxgb4/iw_cxgb4.h @@ -109,6 +109,7 @@ enum c4iw_rdev_flags { T4_FATAL_ERROR = (1<<0), + T4_STATUS_PAGE_DISABLED = (1<<1), }; struct c4iw_stat { @@ -130,6 +131,7 @@ u64 db_empty; u64 db_drop; u64 db_state_transitions; + u64 db_fc_interruptions; u64 tcam_full; u64 act_ofld_conn_fails; u64 pas_ofld_conn_fails; @@ -150,6 +152,7 @@ unsigned long oc_mw_pa; void __iomem *oc_mw_kva; struct c4iw_stats stats; + struct t4_dev_status_page *status_page; }; static inline int c4iw_fatal_error(struct c4iw_rdev *rdev) @@ -211,7 +214,8 @@ enum db_state { NORMAL = 0, FLOW_CONTROL = 1, - RECOVERY = 2 + RECOVERY = 2, + STOPPED = 3 }; struct c4iw_dev { @@ -225,10 +229,10 @@ struct mutex db_mutex; struct dentry *debugfs_root; enum db_state db_state; - int qpcnt; struct idr hwtid_idr; struct idr atid_idr; struct idr stid_idr; + struct list_head db_fc_list; }; static inline struct c4iw_dev *to_c4iw_dev(struct ib_device *ibdev) @@ -432,6 +436,7 @@ struct c4iw_qp { struct ib_qp ibqp; + struct list_head db_fc_entry; struct c4iw_dev *rhp; struct c4iw_ep *ep; struct c4iw_qp_attributes attr; --- linux-3.13.0.orig/drivers/infiniband/hw/cxgb4/mem.c +++ linux-3.13.0/drivers/infiniband/hw/cxgb4/mem.c @@ -76,7 +76,7 @@ INIT_ULPTX_WR(req, wr_len, 0, 0); req->wr.wr_hi = cpu_to_be32(FW_WR_OP(FW_ULPTX_WR) | (wait ? FW_WR_COMPL(1) : 0)); - req->wr.wr_lo = wait ? (__force __be64)&wr_wait : 0; + req->wr.wr_lo = wait ? (__force __be64)(unsigned long) &wr_wait : 0L; req->wr.wr_mid = cpu_to_be32(FW_WR_LEN16(DIV_ROUND_UP(wr_len, 16))); req->cmd = cpu_to_be32(ULPTX_CMD(ULP_TX_MEM_WRITE)); req->cmd |= cpu_to_be32(V_T5_ULP_MEMIO_ORDER(1)); --- linux-3.13.0.orig/drivers/infiniband/hw/cxgb4/provider.c +++ linux-3.13.0/drivers/infiniband/hw/cxgb4/provider.c @@ -106,15 +106,56 @@ { struct c4iw_ucontext *context; struct c4iw_dev *rhp = to_c4iw_dev(ibdev); + static int warned; + struct c4iw_alloc_ucontext_resp uresp; + int ret = 0; + struct c4iw_mm_entry *mm = NULL; PDBG("%s ibdev %p\n", __func__, ibdev); context = kzalloc(sizeof(*context), GFP_KERNEL); - if (!context) - return ERR_PTR(-ENOMEM); + if (!context) { + ret = -ENOMEM; + goto err; + } + c4iw_init_dev_ucontext(&rhp->rdev, &context->uctx); INIT_LIST_HEAD(&context->mmaps); spin_lock_init(&context->mmap_lock); + + if (udata->outlen < sizeof(uresp)) { + if (!warned++) + pr_err(MOD "Warning - downlevel libcxgb4 (non-fatal), device status page disabled."); + rhp->rdev.flags |= T4_STATUS_PAGE_DISABLED; + } else { + mm = kmalloc(sizeof(*mm), GFP_KERNEL); + if (!mm) { + ret = -ENOMEM; + goto err_free; + } + + uresp.status_page_size = PAGE_SIZE; + + spin_lock(&context->mmap_lock); + uresp.status_page_key = context->key; + context->key += PAGE_SIZE; + spin_unlock(&context->mmap_lock); + + ret = ib_copy_to_udata(udata, &uresp, sizeof(uresp)); + if (ret) + goto err_mm; + + mm->key = uresp.status_page_key; + mm->addr = virt_to_phys(rhp->rdev.status_page); + mm->len = PAGE_SIZE; + insert_mmap(context, mm); + } return &context->ibucontext; +err_mm: + kfree(mm); +err_free: + kfree(context); +err: + return ERR_PTR(ret); } static int c4iw_mmap(struct ib_ucontext *context, struct vm_area_struct *vma) --- linux-3.13.0.orig/drivers/infiniband/hw/cxgb4/qp.c +++ linux-3.13.0/drivers/infiniband/hw/cxgb4/qp.c @@ -638,6 +638,46 @@ wake_up(&(to_c4iw_qp(qp)->wait)); } +static void add_to_fc_list(struct list_head *head, struct list_head *entry) +{ + if (list_empty(entry)) + list_add_tail(entry, head); +} + +static int ring_kernel_sq_db(struct c4iw_qp *qhp, u16 inc) +{ + unsigned long flags; + + spin_lock_irqsave(&qhp->rhp->lock, flags); + spin_lock(&qhp->lock); + if (qhp->rhp->db_state == NORMAL) { + t4_ring_sq_db(&qhp->wq, inc); + } else { + add_to_fc_list(&qhp->rhp->db_fc_list, &qhp->db_fc_entry); + qhp->wq.sq.wq_pidx_inc += inc; + } + spin_unlock(&qhp->lock); + spin_unlock_irqrestore(&qhp->rhp->lock, flags); + return 0; +} + +static int ring_kernel_rq_db(struct c4iw_qp *qhp, u16 inc) +{ + unsigned long flags; + + spin_lock_irqsave(&qhp->rhp->lock, flags); + spin_lock(&qhp->lock); + if (qhp->rhp->db_state == NORMAL) { + t4_ring_rq_db(&qhp->wq, inc); + } else { + add_to_fc_list(&qhp->rhp->db_fc_list, &qhp->db_fc_entry); + qhp->wq.rq.wq_pidx_inc += inc; + } + spin_unlock(&qhp->lock); + spin_unlock_irqrestore(&qhp->rhp->lock, flags); + return 0; +} + int c4iw_post_send(struct ib_qp *ibqp, struct ib_send_wr *wr, struct ib_send_wr **bad_wr) { @@ -750,9 +790,13 @@ t4_sq_produce(&qhp->wq, len16); idx += DIV_ROUND_UP(len16*16, T4_EQ_ENTRY_SIZE); } - if (t4_wq_db_enabled(&qhp->wq)) + if (!qhp->rhp->rdev.status_page->db_off) { t4_ring_sq_db(&qhp->wq, idx); - spin_unlock_irqrestore(&qhp->lock, flag); + spin_unlock_irqrestore(&qhp->lock, flag); + } else { + spin_unlock_irqrestore(&qhp->lock, flag); + ring_kernel_sq_db(qhp, idx); + } return err; } @@ -812,9 +856,13 @@ wr = wr->next; num_wrs--; } - if (t4_wq_db_enabled(&qhp->wq)) + if (!qhp->rhp->rdev.status_page->db_off) { t4_ring_rq_db(&qhp->wq, idx); - spin_unlock_irqrestore(&qhp->lock, flag); + spin_unlock_irqrestore(&qhp->lock, flag); + } else { + spin_unlock_irqrestore(&qhp->lock, flag); + ring_kernel_rq_db(qhp, idx); + } return err; } @@ -1200,35 +1248,6 @@ return ret; } -/* - * Called by the library when the qp has user dbs disabled due to - * a DB_FULL condition. This function will single-thread all user - * DB rings to avoid overflowing the hw db-fifo. - */ -static int ring_kernel_db(struct c4iw_qp *qhp, u32 qid, u16 inc) -{ - int delay = db_delay_usecs; - - mutex_lock(&qhp->rhp->db_mutex); - do { - - /* - * The interrupt threshold is dbfifo_int_thresh << 6. So - * make sure we don't cross that and generate an interrupt. - */ - if (cxgb4_dbfifo_count(qhp->rhp->rdev.lldi.ports[0], 1) < - (qhp->rhp->rdev.lldi.dbfifo_int_thresh << 5)) { - writel(QID(qid) | PIDX(inc), qhp->wq.db); - break; - } - set_current_state(TASK_UNINTERRUPTIBLE); - schedule_timeout(usecs_to_jiffies(delay)); - delay = min(delay << 1, 2000); - } while (1); - mutex_unlock(&qhp->rhp->db_mutex); - return 0; -} - int c4iw_modify_qp(struct c4iw_dev *rhp, struct c4iw_qp *qhp, enum c4iw_qp_attr_mask mask, struct c4iw_qp_attributes *attrs, @@ -1278,11 +1297,11 @@ } if (mask & C4IW_QP_ATTR_SQ_DB) { - ret = ring_kernel_db(qhp, qhp->wq.sq.qid, attrs->sq_db_inc); + ret = ring_kernel_sq_db(qhp, attrs->sq_db_inc); goto out; } if (mask & C4IW_QP_ATTR_RQ_DB) { - ret = ring_kernel_db(qhp, qhp->wq.rq.qid, attrs->rq_db_inc); + ret = ring_kernel_rq_db(qhp, attrs->rq_db_inc); goto out; } @@ -1465,14 +1484,6 @@ return ret; } -static int enable_qp_db(int id, void *p, void *data) -{ - struct c4iw_qp *qp = p; - - t4_enable_wq_db(&qp->wq); - return 0; -} - int c4iw_destroy_qp(struct ib_qp *ib_qp) { struct c4iw_dev *rhp; @@ -1490,22 +1501,15 @@ c4iw_modify_qp(rhp, qhp, C4IW_QP_ATTR_NEXT_STATE, &attrs, 0); wait_event(qhp->wait, !qhp->ep); - spin_lock_irq(&rhp->lock); - remove_handle_nolock(rhp, &rhp->qpidr, qhp->wq.sq.qid); - rhp->qpcnt--; - BUG_ON(rhp->qpcnt < 0); - if (rhp->qpcnt <= db_fc_threshold && rhp->db_state == FLOW_CONTROL) { - rhp->rdev.stats.db_state_transitions++; - rhp->db_state = NORMAL; - idr_for_each(&rhp->qpidr, enable_qp_db, NULL); - } - if (db_coalescing_threshold >= 0) - if (rhp->qpcnt <= db_coalescing_threshold) - cxgb4_enable_db_coalescing(rhp->rdev.lldi.ports[0]); - spin_unlock_irq(&rhp->lock); + remove_handle(rhp, &rhp->qpidr, qhp->wq.sq.qid); atomic_dec(&qhp->refcnt); wait_event(qhp->wait, !atomic_read(&qhp->refcnt)); + spin_lock_irq(&rhp->lock); + if (!list_empty(&qhp->db_fc_entry)) + list_del_init(&qhp->db_fc_entry); + spin_unlock_irq(&rhp->lock); + ucontext = ib_qp->uobject ? to_c4iw_ucontext(ib_qp->uobject->context) : NULL; destroy_qp(&rhp->rdev, &qhp->wq, @@ -1516,14 +1520,6 @@ return 0; } -static int disable_qp_db(int id, void *p, void *data) -{ - struct c4iw_qp *qp = p; - - t4_disable_wq_db(&qp->wq); - return 0; -} - struct ib_qp *c4iw_create_qp(struct ib_pd *pd, struct ib_qp_init_attr *attrs, struct ib_udata *udata) { @@ -1610,20 +1606,7 @@ init_waitqueue_head(&qhp->wait); atomic_set(&qhp->refcnt, 1); - spin_lock_irq(&rhp->lock); - if (rhp->db_state != NORMAL) - t4_disable_wq_db(&qhp->wq); - rhp->qpcnt++; - if (rhp->qpcnt > db_fc_threshold && rhp->db_state == NORMAL) { - rhp->rdev.stats.db_state_transitions++; - rhp->db_state = FLOW_CONTROL; - idr_for_each(&rhp->qpidr, disable_qp_db, NULL); - } - if (db_coalescing_threshold >= 0) - if (rhp->qpcnt > db_coalescing_threshold) - cxgb4_disable_db_coalescing(rhp->rdev.lldi.ports[0]); - ret = insert_handle_nolock(rhp, &rhp->qpidr, qhp, qhp->wq.sq.qid); - spin_unlock_irq(&rhp->lock); + ret = insert_handle(rhp, &rhp->qpidr, qhp, qhp->wq.sq.qid); if (ret) goto err2; @@ -1709,6 +1692,7 @@ } qhp->ibqp.qp_num = qhp->wq.sq.qid; init_timer(&(qhp->timer)); + INIT_LIST_HEAD(&qhp->db_fc_entry); PDBG("%s qhp %p sq_num_entries %d, rq_num_entries %d qpid 0x%0x\n", __func__, qhp, qhp->attr.sq_num_entries, qhp->attr.rq_num_entries, qhp->wq.sq.qid); --- linux-3.13.0.orig/drivers/infiniband/hw/cxgb4/t4.h +++ linux-3.13.0/drivers/infiniband/hw/cxgb4/t4.h @@ -300,6 +300,7 @@ u16 cidx; u16 pidx; u16 wq_pidx; + u16 wq_pidx_inc; u16 flags; short flush_cidx; }; @@ -324,6 +325,7 @@ u16 cidx; u16 pidx; u16 wq_pidx; + u16 wq_pidx_inc; }; struct t4_wq { @@ -609,3 +611,7 @@ ((struct t4_status_page *)&cq->queue[cq->size])->qp_err = 1; } #endif + +struct t4_dev_status_page { + u8 db_off; +}; --- linux-3.13.0.orig/drivers/infiniband/hw/cxgb4/user.h +++ linux-3.13.0/drivers/infiniband/hw/cxgb4/user.h @@ -70,4 +70,9 @@ __u32 qid_mask; __u32 flags; }; + +struct c4iw_alloc_ucontext_resp { + __u64 status_page_key; + __u32 status_page_size; +}; #endif --- linux-3.13.0.orig/drivers/infiniband/hw/ehca/ehca_cq.c +++ linux-3.13.0/drivers/infiniband/hw/ehca/ehca_cq.c @@ -283,6 +283,7 @@ (my_cq->galpas.user.fw_handle & (PAGE_SIZE - 1)); if (ib_copy_to_udata(udata, &resp, sizeof(resp))) { ehca_err(device, "Copy to udata failed."); + cq = ERR_PTR(-EFAULT); goto create_cq_exit4; } } --- linux-3.13.0.orig/drivers/infiniband/hw/ehca/ehca_qp.c +++ linux-3.13.0/drivers/infiniband/hw/ehca/ehca_qp.c @@ -1329,7 +1329,7 @@ qp_new_state = attr_mask & IB_QP_STATE ? attr->qp_state : qp_cur_state; if (!smi_reset2init && !ib_modify_qp_is_ok(qp_cur_state, qp_new_state, ibqp->qp_type, - attr_mask)) { + attr_mask, IB_LINK_LAYER_UNSPECIFIED)) { ret = -EINVAL; ehca_err(ibqp->device, "Invalid qp transition new_state=%x cur_state=%x " --- linux-3.13.0.orig/drivers/infiniband/hw/ipath/ipath_diag.c +++ linux-3.13.0/drivers/infiniband/hw/ipath/ipath_diag.c @@ -326,7 +326,7 @@ size_t count, loff_t *off) { u32 __iomem *piobuf; - u32 plen, clen, pbufn; + u32 plen, pbufn, maxlen_reserve; struct ipath_diag_pkt odp; struct ipath_diag_xpkt dp; u32 *tmpbuf = NULL; @@ -335,51 +335,29 @@ u64 val; u32 l_state, lt_state; /* LinkState, LinkTrainingState */ - if (count < sizeof(odp)) { - ret = -EINVAL; - goto bail; - } if (count == sizeof(dp)) { if (copy_from_user(&dp, data, sizeof(dp))) { ret = -EFAULT; goto bail; } - } else if (copy_from_user(&odp, data, sizeof(odp))) { - ret = -EFAULT; + } else if (count == sizeof(odp)) { + if (copy_from_user(&odp, data, sizeof(odp))) { + ret = -EFAULT; + goto bail; + } + } else { + ret = -EINVAL; goto bail; } - /* - * Due to padding/alignment issues (lessened with new struct) - * the old and new structs are the same length. We need to - * disambiguate them, which we can do because odp.len has never - * been less than the total of LRH+BTH+DETH so far, while - * dp.unit (same offset) unit is unlikely to get that high. - * Similarly, dp.data, the pointer to user at the same offset - * as odp.unit, is almost certainly at least one (512byte)page - * "above" NULL. The if-block below can be omitted if compatibility - * between a new driver and older diagnostic code is unimportant. - * compatibility the other direction (new diags, old driver) is - * handled in the diagnostic code, with a warning. - */ - if (dp.unit >= 20 && dp.data < 512) { - /* very probable version mismatch. Fix it up */ - memcpy(&odp, &dp, sizeof(odp)); - /* We got a legacy dp, copy elements to dp */ - dp.unit = odp.unit; - dp.data = odp.data; - dp.len = odp.len; - dp.pbc_wd = 0; /* Indicate we need to compute PBC wd */ - } - /* send count must be an exact number of dwords */ if (dp.len & 3) { ret = -EINVAL; goto bail; } - clen = dp.len >> 2; + plen = dp.len >> 2; dd = ipath_lookup(dp.unit); if (!dd || !(dd->ipath_flags & IPATH_PRESENT) || @@ -422,16 +400,22 @@ goto bail; } - /* need total length before first word written */ - /* +1 word is for the qword padding */ - plen = sizeof(u32) + dp.len; - - if ((plen + 4) > dd->ipath_ibmaxlen) { + /* + * need total length before first word written, plus 2 Dwords. One Dword + * is for padding so we get the full user data when not aligned on + * a word boundary. The other Dword is to make sure we have room for the + * ICRC which gets tacked on later. + */ + maxlen_reserve = 2 * sizeof(u32); + if (dp.len > dd->ipath_ibmaxlen - maxlen_reserve) { ipath_dbg("Pkt len 0x%x > ibmaxlen %x\n", - plen - 4, dd->ipath_ibmaxlen); + dp.len, dd->ipath_ibmaxlen); ret = -EINVAL; - goto bail; /* before writing pbc */ + goto bail; } + + plen = sizeof(u32) + dp.len; + tmpbuf = vmalloc(plen); if (!tmpbuf) { dev_info(&dd->pcidev->dev, "Unable to allocate tmp buffer, " @@ -473,11 +457,11 @@ */ if (dd->ipath_flags & IPATH_PIO_FLUSH_WC) { ipath_flush_wc(); - __iowrite32_copy(piobuf + 2, tmpbuf, clen - 1); + __iowrite32_copy(piobuf + 2, tmpbuf, plen - 1); ipath_flush_wc(); - __raw_writel(tmpbuf[clen - 1], piobuf + clen + 1); + __raw_writel(tmpbuf[plen - 1], piobuf + plen + 1); } else - __iowrite32_copy(piobuf + 2, tmpbuf, clen); + __iowrite32_copy(piobuf + 2, tmpbuf, plen); ipath_flush_wc(); --- linux-3.13.0.orig/drivers/infiniband/hw/ipath/ipath_qp.c +++ linux-3.13.0/drivers/infiniband/hw/ipath/ipath_qp.c @@ -463,7 +463,7 @@ new_state = attr_mask & IB_QP_STATE ? attr->qp_state : cur_state; if (!ib_modify_qp_is_ok(cur_state, new_state, ibqp->qp_type, - attr_mask)) + attr_mask, IB_LINK_LAYER_UNSPECIFIED)) goto inval; if (attr_mask & IB_QP_AV) { --- linux-3.13.0.orig/drivers/infiniband/hw/mlx4/Kconfig +++ linux-3.13.0/drivers/infiniband/hw/mlx4/Kconfig @@ -1,6 +1,6 @@ config MLX4_INFINIBAND tristate "Mellanox ConnectX HCA support" - depends on NETDEVICES && ETHERNET && PCI + depends on NETDEVICES && ETHERNET && PCI && INET select NET_VENDOR_MELLANOX select MLX4_CORE ---help--- --- linux-3.13.0.orig/drivers/infiniband/hw/mlx4/ah.c +++ linux-3.13.0/drivers/infiniband/hw/mlx4/ah.c @@ -39,25 +39,6 @@ #include "mlx4_ib.h" -int mlx4_ib_resolve_grh(struct mlx4_ib_dev *dev, const struct ib_ah_attr *ah_attr, - u8 *mac, int *is_mcast, u8 port) -{ - struct in6_addr in6; - - *is_mcast = 0; - - memcpy(&in6, ah_attr->grh.dgid.raw, sizeof in6); - if (rdma_link_local_addr(&in6)) - rdma_get_ll_mac(&in6, mac); - else if (rdma_is_multicast_addr(&in6)) { - rdma_get_mcast_mac(&in6, mac); - *is_mcast = 1; - } else - return -EINVAL; - - return 0; -} - static struct ib_ah *create_ib_ah(struct ib_pd *pd, struct ib_ah_attr *ah_attr, struct mlx4_ib_ah *ah) { @@ -92,21 +73,18 @@ { struct mlx4_ib_dev *ibdev = to_mdev(pd->device); struct mlx4_dev *dev = ibdev->dev; - union ib_gid sgid; - u8 mac[6]; - int err; int is_mcast; + struct in6_addr in6; u16 vlan_tag; - err = mlx4_ib_resolve_grh(ibdev, ah_attr, mac, &is_mcast, ah_attr->port_num); - if (err) - return ERR_PTR(err); - - memcpy(ah->av.eth.mac, mac, 6); - err = ib_get_cached_gid(pd->device, ah_attr->port_num, ah_attr->grh.sgid_index, &sgid); - if (err) - return ERR_PTR(err); - vlan_tag = rdma_get_vlan_id(&sgid); + memcpy(&in6, ah_attr->grh.dgid.raw, sizeof(in6)); + if (rdma_is_multicast_addr(&in6)) { + is_mcast = 1; + rdma_get_mcast_mac(&in6, ah->av.eth.mac); + } else { + memcpy(ah->av.eth.mac, ah_attr->dmac, ETH_ALEN); + } + vlan_tag = ah_attr->vlan_id; if (vlan_tag < 0x1000) vlan_tag |= (ah_attr->sl & 7) << 13; ah->av.eth.port_pd = cpu_to_be32(to_mpd(pd)->pdn | (ah_attr->port_num << 24)); --- linux-3.13.0.orig/drivers/infiniband/hw/mlx4/alias_GUID.c +++ linux-3.13.0/drivers/infiniband/hw/mlx4/alias_GUID.c @@ -154,7 +154,7 @@ continue; slave_id = (block_num * NUM_ALIAS_GUID_IN_REC) + i ; - if (slave_id >= dev->dev->num_slaves) + if (slave_id >= dev->dev->num_vfs + 1) return; tmp_cur_ag = *(__be64 *)&p_data[i * GUID_REC_SIZE]; form_cache_ag = get_cached_alias_guid(dev, port_num, --- linux-3.13.0.orig/drivers/infiniband/hw/mlx4/cm.c +++ linux-3.13.0/drivers/infiniband/hw/mlx4/cm.c @@ -61,6 +61,11 @@ __be32 remote_comm_id; }; +struct cm_sidr_generic_msg { + struct ib_mad_hdr hdr; + __be32 request_id; +}; + struct cm_req_msg { unsigned char unused[0x60]; union ib_gid primary_path_sgid; @@ -69,28 +74,62 @@ static void set_local_comm_id(struct ib_mad *mad, u32 cm_id) { - struct cm_generic_msg *msg = (struct cm_generic_msg *)mad; - msg->local_comm_id = cpu_to_be32(cm_id); + if (mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID) { + struct cm_sidr_generic_msg *msg = + (struct cm_sidr_generic_msg *)mad; + msg->request_id = cpu_to_be32(cm_id); + } else if (mad->mad_hdr.attr_id == CM_SIDR_REP_ATTR_ID) { + pr_err("trying to set local_comm_id in SIDR_REP\n"); + return; + } else { + struct cm_generic_msg *msg = (struct cm_generic_msg *)mad; + msg->local_comm_id = cpu_to_be32(cm_id); + } } static u32 get_local_comm_id(struct ib_mad *mad) { - struct cm_generic_msg *msg = (struct cm_generic_msg *)mad; - - return be32_to_cpu(msg->local_comm_id); + if (mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID) { + struct cm_sidr_generic_msg *msg = + (struct cm_sidr_generic_msg *)mad; + return be32_to_cpu(msg->request_id); + } else if (mad->mad_hdr.attr_id == CM_SIDR_REP_ATTR_ID) { + pr_err("trying to set local_comm_id in SIDR_REP\n"); + return -1; + } else { + struct cm_generic_msg *msg = (struct cm_generic_msg *)mad; + return be32_to_cpu(msg->local_comm_id); + } } static void set_remote_comm_id(struct ib_mad *mad, u32 cm_id) { - struct cm_generic_msg *msg = (struct cm_generic_msg *)mad; - msg->remote_comm_id = cpu_to_be32(cm_id); + if (mad->mad_hdr.attr_id == CM_SIDR_REP_ATTR_ID) { + struct cm_sidr_generic_msg *msg = + (struct cm_sidr_generic_msg *)mad; + msg->request_id = cpu_to_be32(cm_id); + } else if (mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID) { + pr_err("trying to set remote_comm_id in SIDR_REQ\n"); + return; + } else { + struct cm_generic_msg *msg = (struct cm_generic_msg *)mad; + msg->remote_comm_id = cpu_to_be32(cm_id); + } } static u32 get_remote_comm_id(struct ib_mad *mad) { - struct cm_generic_msg *msg = (struct cm_generic_msg *)mad; - - return be32_to_cpu(msg->remote_comm_id); + if (mad->mad_hdr.attr_id == CM_SIDR_REP_ATTR_ID) { + struct cm_sidr_generic_msg *msg = + (struct cm_sidr_generic_msg *)mad; + return be32_to_cpu(msg->request_id); + } else if (mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID) { + pr_err("trying to set remote_comm_id in SIDR_REQ\n"); + return -1; + } else { + struct cm_generic_msg *msg = (struct cm_generic_msg *)mad; + return be32_to_cpu(msg->remote_comm_id); + } } static union ib_gid gid_from_req_msg(struct ib_device *ibdev, struct ib_mad *mad) @@ -282,19 +321,21 @@ u32 sl_cm_id; int pv_cm_id = -1; - sl_cm_id = get_local_comm_id(mad); - if (mad->mad_hdr.attr_id == CM_REQ_ATTR_ID || - mad->mad_hdr.attr_id == CM_REP_ATTR_ID) { + mad->mad_hdr.attr_id == CM_REP_ATTR_ID || + mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID) { + sl_cm_id = get_local_comm_id(mad); id = id_map_alloc(ibdev, slave_id, sl_cm_id); if (IS_ERR(id)) { mlx4_ib_warn(ibdev, "%s: id{slave: %d, sl_cm_id: 0x%x} Failed to id_map_alloc\n", __func__, slave_id, sl_cm_id); return PTR_ERR(id); } - } else if (mad->mad_hdr.attr_id == CM_REJ_ATTR_ID) { + } else if (mad->mad_hdr.attr_id == CM_REJ_ATTR_ID || + mad->mad_hdr.attr_id == CM_SIDR_REP_ATTR_ID) { return 0; } else { + sl_cm_id = get_local_comm_id(mad); id = id_map_get(ibdev, &pv_cm_id, slave_id, sl_cm_id); } @@ -315,14 +356,18 @@ } int mlx4_ib_demux_cm_handler(struct ib_device *ibdev, int port, int *slave, - struct ib_mad *mad) + struct ib_mad *mad) { u32 pv_cm_id; struct id_map_entry *id; - if (mad->mad_hdr.attr_id == CM_REQ_ATTR_ID) { + if (mad->mad_hdr.attr_id == CM_REQ_ATTR_ID || + mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID) { union ib_gid gid; + if (!slave) + return 0; + gid = gid_from_req_msg(ibdev, mad); *slave = mlx4_ib_find_real_gid(ibdev, port, gid.global.interface_id); if (*slave < 0) { @@ -341,7 +386,8 @@ return -ENOENT; } - *slave = id->slave_id; + if (slave) + *slave = id->slave_id; set_remote_comm_id(mad, id->sl_cm_id); if (mad->mad_hdr.attr_id == CM_DREQ_ATTR_ID) --- linux-3.13.0.orig/drivers/infiniband/hw/mlx4/cq.c +++ linux-3.13.0/drivers/infiniband/hw/mlx4/cq.c @@ -564,7 +564,7 @@ } static int use_tunnel_data(struct mlx4_ib_qp *qp, struct mlx4_ib_cq *cq, struct ib_wc *wc, - unsigned tail, struct mlx4_cqe *cqe) + unsigned tail, struct mlx4_cqe *cqe, int is_eth) { struct mlx4_ib_proxy_sqp_hdr *hdr; @@ -574,12 +574,20 @@ DMA_FROM_DEVICE); hdr = (struct mlx4_ib_proxy_sqp_hdr *) (qp->sqp_proxy_rcv[tail].addr); wc->pkey_index = be16_to_cpu(hdr->tun.pkey_index); - wc->slid = be16_to_cpu(hdr->tun.slid_mac_47_32); - wc->sl = (u8) (be16_to_cpu(hdr->tun.sl_vid) >> 12); wc->src_qp = be32_to_cpu(hdr->tun.flags_src_qp) & 0xFFFFFF; wc->wc_flags |= (hdr->tun.g_ml_path & 0x80) ? (IB_WC_GRH) : 0; wc->dlid_path_bits = 0; + if (is_eth) { + wc->vlan_id = be16_to_cpu(hdr->tun.sl_vid); + memcpy(&(wc->smac[0]), (char *)&hdr->tun.mac_31_0, 4); + memcpy(&(wc->smac[4]), (char *)&hdr->tun.slid_mac_47_32, 2); + wc->wc_flags |= (IB_WC_WITH_VLAN | IB_WC_WITH_SMAC); + } else { + wc->slid = be16_to_cpu(hdr->tun.slid_mac_47_32); + wc->sl = (u8) (be16_to_cpu(hdr->tun.sl_vid) >> 12); + } + return 0; } @@ -594,6 +602,7 @@ struct mlx4_srq *msrq = NULL; int is_send; int is_error; + int is_eth; u32 g_mlpath_rqpn; u16 wqe_ctr; unsigned tail = 0; @@ -778,11 +787,15 @@ break; } + is_eth = (rdma_port_get_link_layer(wc->qp->device, + (*cur_qp)->port) == + IB_LINK_LAYER_ETHERNET); if (mlx4_is_mfunc(to_mdev(cq->ibcq.device)->dev)) { if ((*cur_qp)->mlx4_ib_qp_type & (MLX4_IB_QPT_PROXY_SMI_OWNER | MLX4_IB_QPT_PROXY_SMI | MLX4_IB_QPT_PROXY_GSI)) - return use_tunnel_data(*cur_qp, cq, wc, tail, cqe); + return use_tunnel_data(*cur_qp, cq, wc, tail, + cqe, is_eth); } wc->slid = be16_to_cpu(cqe->rlid); @@ -793,11 +806,21 @@ wc->pkey_index = be32_to_cpu(cqe->immed_rss_invalid) & 0x7f; wc->wc_flags |= mlx4_ib_ipoib_csum_ok(cqe->status, cqe->checksum) ? IB_WC_IP_CSUM_OK : 0; - if (rdma_port_get_link_layer(wc->qp->device, - (*cur_qp)->port) == IB_LINK_LAYER_ETHERNET) + if (is_eth) { wc->sl = be16_to_cpu(cqe->sl_vid) >> 13; - else + if (be32_to_cpu(cqe->vlan_my_qpn) & + MLX4_CQE_VLAN_PRESENT_MASK) { + wc->vlan_id = be16_to_cpu(cqe->sl_vid) & + MLX4_CQE_VID_MASK; + } else { + wc->vlan_id = 0xffff; + } + memcpy(wc->smac, cqe->smac, ETH_ALEN); + wc->wc_flags |= (IB_WC_WITH_VLAN | IB_WC_WITH_SMAC); + } else { wc->sl = be16_to_cpu(cqe->sl_vid) >> 12; + wc->vlan_id = 0xffff; + } } return 0; --- linux-3.13.0.orig/drivers/infiniband/hw/mlx4/mad.c +++ linux-3.13.0/drivers/infiniband/hw/mlx4/mad.c @@ -467,6 +467,7 @@ int ret = 0; u16 tun_pkey_ix; u16 cached_pkey; + u8 is_eth = dev->dev->caps.port_type[port] == MLX4_PORT_TYPE_ETH; if (dest_qpt > IB_QPT_GSI) return -EINVAL; @@ -509,6 +510,10 @@ * The driver will set the force loopback bit in post_send */ memset(&attr, 0, sizeof attr); attr.port_num = port; + if (is_eth) { + memcpy(&attr.grh.dgid.raw[0], &grh->dgid.raw[0], 16); + attr.ah_flags = IB_AH_GRH; + } ah = ib_create_ah(tun_ctx->pd, &attr); if (IS_ERR(ah)) return -ENOMEM; @@ -540,11 +545,36 @@ /* adjust tunnel data */ tun_mad->hdr.pkey_index = cpu_to_be16(tun_pkey_ix); - tun_mad->hdr.sl_vid = cpu_to_be16(((u16)(wc->sl)) << 12); - tun_mad->hdr.slid_mac_47_32 = cpu_to_be16(wc->slid); tun_mad->hdr.flags_src_qp = cpu_to_be32(wc->src_qp & 0xFFFFFF); tun_mad->hdr.g_ml_path = (grh && (wc->wc_flags & IB_WC_GRH)) ? 0x80 : 0; + if (is_eth) { + u16 vlan = 0; + if (mlx4_get_slave_default_vlan(dev->dev, port, slave, &vlan, + NULL)) { + /* VST mode */ + if (vlan != wc->vlan_id) + /* Packet vlan is not the VST-assigned vlan. + * Drop the packet. + */ + goto out; + else + /* Remove the vlan tag before forwarding + * the packet to the VF. + */ + vlan = 0xffff; + } else { + vlan = wc->vlan_id; + } + + tun_mad->hdr.sl_vid = cpu_to_be16(vlan); + memcpy((char *)&tun_mad->hdr.mac_31_0, &(wc->smac[0]), 4); + memcpy((char *)&tun_mad->hdr.slid_mac_47_32, &(wc->smac[4]), 2); + } else { + tun_mad->hdr.sl_vid = cpu_to_be16(((u16)(wc->sl)) << 12); + tun_mad->hdr.slid_mac_47_32 = cpu_to_be16(wc->slid); + } + ib_dma_sync_single_for_device(&dev->ib_dev, tun_qp->tx_ring[tun_tx_ix].buf.map, sizeof (struct mlx4_rcv_tunnel_mad), @@ -580,6 +610,41 @@ int err; int slave; u8 *slave_id; + int is_eth = 0; + + if (rdma_port_get_link_layer(ibdev, port) == IB_LINK_LAYER_INFINIBAND) + is_eth = 0; + else + is_eth = 1; + + if (is_eth) { + if (!(wc->wc_flags & IB_WC_GRH)) { + mlx4_ib_warn(ibdev, "RoCE grh not present.\n"); + return -EINVAL; + } + if (mad->mad_hdr.mgmt_class != IB_MGMT_CLASS_CM) { + mlx4_ib_warn(ibdev, "RoCE mgmt class is not CM\n"); + return -EINVAL; + } + if (mlx4_get_slave_from_roce_gid(dev->dev, port, grh->dgid.raw, &slave)) { + mlx4_ib_warn(ibdev, "failed matching grh\n"); + return -ENOENT; + } + if (slave >= dev->dev->caps.sqp_demux) { + mlx4_ib_warn(ibdev, "slave id: %d is bigger than allowed:%d\n", + slave, dev->dev->caps.sqp_demux); + return -ENOENT; + } + + if (mlx4_ib_demux_cm_handler(ibdev, port, NULL, mad)) + return 0; + + err = mlx4_ib_send_to_slave(dev, slave, port, wc->qp->qp_type, wc, grh, mad); + if (err) + pr_debug("failed sending to slave %d via tunnel qp (%d)\n", + slave, err); + return 0; + } /* Initially assume that this mad is for us */ slave = mlx4_master_func_num(dev->dev); @@ -1076,8 +1141,9 @@ int mlx4_ib_send_to_wire(struct mlx4_ib_dev *dev, int slave, u8 port, - enum ib_qp_type dest_qpt, u16 pkey_index, u32 remote_qpn, - u32 qkey, struct ib_ah_attr *attr, struct ib_mad *mad) + enum ib_qp_type dest_qpt, u16 pkey_index, + u32 remote_qpn, u32 qkey, struct ib_ah_attr *attr, + u8 *s_mac, struct ib_mad *mad) { struct ib_sge list; struct ib_send_wr wr, *bad_wr; @@ -1166,6 +1232,9 @@ wr.num_sge = 1; wr.opcode = IB_WR_SEND; wr.send_flags = IB_SEND_SIGNALED; + if (s_mac) + memcpy(to_mah(ah)->av.eth.s_mac, s_mac, 6); + ret = ib_post_send(send_qp, &wr, &bad_wr); out: @@ -1174,6 +1243,22 @@ return ret; } +static int get_slave_base_gid_ix(struct mlx4_ib_dev *dev, int slave, int port) +{ + if (rdma_port_get_link_layer(&dev->ib_dev, port) == IB_LINK_LAYER_INFINIBAND) + return slave; + return mlx4_get_base_gid_ix(dev->dev, slave, port); +} + +static void fill_in_real_sgid_index(struct mlx4_ib_dev *dev, int slave, int port, + struct ib_ah_attr *ah_attr) +{ + if (rdma_port_get_link_layer(&dev->ib_dev, port) == IB_LINK_LAYER_INFINIBAND) + ah_attr->grh.sgid_index = slave; + else + ah_attr->grh.sgid_index += get_slave_base_gid_ix(dev, slave, port); +} + static void mlx4_ib_multiplex_mad(struct mlx4_ib_demux_pv_ctx *ctx, struct ib_wc *wc) { struct mlx4_ib_dev *dev = to_mdev(ctx->ib_dev); @@ -1184,6 +1269,7 @@ struct ib_ah_attr ah_attr; u8 *slave_id; int slave; + int port; /* Get slave that sent this packet */ if (wc->src_qp < dev->dev->phys_caps.base_proxy_sqpn || @@ -1260,12 +1346,18 @@ memcpy(&ah.av, &tunnel->hdr.av, sizeof (struct mlx4_av)); ah.ibah.device = ctx->ib_dev; mlx4_ib_query_ah(&ah.ibah, &ah_attr); - if ((ah_attr.ah_flags & IB_AH_GRH) && - (ah_attr.grh.sgid_index != slave)) { - mlx4_ib_warn(ctx->ib_dev, "slave:%d accessed invalid sgid_index:%d\n", - slave, ah_attr.grh.sgid_index); + if (ah_attr.ah_flags & IB_AH_GRH) + fill_in_real_sgid_index(dev, slave, ctx->port, &ah_attr); + + port = mlx4_slave_convert_port(dev->dev, slave, ah_attr.port_num); + if (port < 0) return; - } + ah_attr.port_num = port; + memcpy(ah_attr.dmac, tunnel->hdr.mac, 6); + ah_attr.vlan_id = be16_to_cpu(tunnel->hdr.vlan); + /* if slave have default vlan use it */ + mlx4_get_slave_default_vlan(dev->dev, ctx->port, slave, + &ah_attr.vlan_id, &ah_attr.sl); mlx4_ib_send_to_wire(dev, slave, ctx->port, is_proxy_qp0(dev, wc->src_qp, slave) ? @@ -1273,7 +1365,7 @@ be16_to_cpu(tunnel->hdr.pkey_index), be32_to_cpu(tunnel->hdr.remote_qpn), be32_to_cpu(tunnel->hdr.qkey), - &ah_attr, &tunnel->mad); + &ah_attr, wc->smac, &tunnel->mad); } static int mlx4_ib_alloc_pv_bufs(struct mlx4_ib_demux_pv_ctx *ctx, @@ -1850,7 +1942,15 @@ ctx->port = port; ctx->ib_dev = &dev->ib_dev; - for (i = 0; i < dev->dev->caps.sqp_demux; i++) { + for (i = 0; + i < min(dev->dev->caps.sqp_demux, (u16)(dev->dev->num_vfs + 1)); + i++) { + struct mlx4_active_ports actv_ports = + mlx4_get_active_ports(dev->dev, i); + + if (!test_bit(port - 1, actv_ports.ports)) + continue; + ret = alloc_pv_object(dev, i, port, &ctx->tun[i]); if (ret) { ret = -ENOMEM; --- linux-3.13.0.orig/drivers/infiniband/hw/mlx4/main.c +++ linux-3.13.0/drivers/infiniband/hw/mlx4/main.c @@ -39,6 +39,8 @@ #include #include #include +#include +#include #include #include @@ -51,10 +53,11 @@ #include "user.h" #define DRV_NAME MLX4_IB_DRV_NAME -#define DRV_VERSION "1.0" -#define DRV_RELDATE "April 4, 2008" +#define DRV_VERSION "2.2-1" +#define DRV_RELDATE "Feb 2014" #define MLX4_IB_FLOW_MAX_PRIO 0xFFF +#define MLX4_IB_FLOW_QPN_MASK 0xFFFFFF MODULE_AUTHOR("Roland Dreier"); MODULE_DESCRIPTION("Mellanox ConnectX HCA InfiniBand driver"); @@ -92,21 +95,27 @@ static int check_flow_steering_support(struct mlx4_dev *dev) { + int eth_num_ports = 0; int ib_num_ports = 0; - int i; - mlx4_foreach_port(i, dev, MLX4_PORT_TYPE_IB) - ib_num_ports++; + int dmfs = dev->caps.steering_mode == MLX4_STEERING_MODE_DEVICE_MANAGED; - if (dev->caps.steering_mode == MLX4_STEERING_MODE_DEVICE_MANAGED) { - if (ib_num_ports || mlx4_is_mfunc(dev)) { - pr_warn("Device managed flow steering is unavailable " - "for IB ports or in multifunction env.\n"); - return 0; + if (dmfs) { + int i; + mlx4_foreach_port(i, dev, MLX4_PORT_TYPE_ETH) + eth_num_ports++; + mlx4_foreach_port(i, dev, MLX4_PORT_TYPE_IB) + ib_num_ports++; + dmfs &= (!ib_num_ports || + (dev->caps.flags2 & MLX4_DEV_CAP_FLAG2_DMFS_IPOIB)) && + (!eth_num_ports || + (dev->caps.flags2 & MLX4_DEV_CAP_FLAG2_FS_EN)); + if (ib_num_ports && mlx4_is_mfunc(dev)) { + pr_warn("Device managed flow steering is unavailable for IB port in multifunction env.\n"); + dmfs = 0; } - return 1; } - return 0; + return dmfs; } static int mlx4_ib_query_device(struct ib_device *ibdev, @@ -165,7 +174,7 @@ props->device_cap_flags |= IB_DEVICE_MEM_WINDOW_TYPE_2B; else props->device_cap_flags |= IB_DEVICE_MEM_WINDOW_TYPE_2A; - if (check_flow_steering_support(dev->dev)) + if (dev->steering_support == MLX4_STEERING_MODE_DEVICE_MANAGED) props->device_cap_flags |= IB_DEVICE_MANAGED_FLOW_STEERING; } @@ -338,7 +347,7 @@ props->active_width = (((u8 *)mailbox->buf)[5] == 0x40) ? IB_WIDTH_4X : IB_WIDTH_1X; props->active_speed = IB_SPEED_QDR; - props->port_cap_flags = IB_PORT_CM_SUP; + props->port_cap_flags = IB_PORT_CM_SUP | IB_PORT_IP_BASED_GIDS; props->gid_tbl_len = mdev->dev->caps.gid_table_len[port]; props->max_msg_sz = mdev->dev->caps.max_msg_sz; props->pkey_tbl_len = 1; @@ -787,7 +796,6 @@ int mlx4_ib_add_mc(struct mlx4_ib_dev *mdev, struct mlx4_ib_qp *mqp, union ib_gid *gid) { - u8 mac[6]; struct net_device *ndev; int ret = 0; @@ -801,11 +809,7 @@ spin_unlock(&mdev->iboe.lock); if (ndev) { - rdma_get_mcast_mac((struct in6_addr *)gid, mac); - rtnl_lock(); - dev_mc_add(mdev->iboe.netdevs[mqp->port - 1], mac); ret = 1; - rtnl_unlock(); dev_put(ndev); } @@ -819,6 +823,7 @@ }; static int parse_flow_attr(struct mlx4_dev *dev, + u32 qp_num, union ib_flow_spec *ib_spec, struct _rule_hw *mlx4_spec) { @@ -834,6 +839,14 @@ mlx4_spec->eth.vlan_tag = ib_spec->eth.val.vlan_tag; mlx4_spec->eth.vlan_tag_msk = ib_spec->eth.mask.vlan_tag; break; + case IB_FLOW_SPEC_IB: + type = MLX4_NET_TRANS_RULE_ID_IB; + mlx4_spec->ib.l3_qpn = + cpu_to_be32(qp_num); + mlx4_spec->ib.qpn_mask = + cpu_to_be32(MLX4_IB_FLOW_QPN_MASK); + break; + case IB_FLOW_SPEC_IPV4: type = MLX4_NET_TRANS_RULE_ID_IPV4; @@ -865,6 +878,115 @@ return mlx4_hw_rule_sz(dev, type); } +struct default_rules { + __u32 mandatory_fields[IB_FLOW_SPEC_SUPPORT_LAYERS]; + __u32 mandatory_not_fields[IB_FLOW_SPEC_SUPPORT_LAYERS]; + __u32 rules_create_list[IB_FLOW_SPEC_SUPPORT_LAYERS]; + __u8 link_layer; +}; +static const struct default_rules default_table[] = { + { + .mandatory_fields = {IB_FLOW_SPEC_IPV4}, + .mandatory_not_fields = {IB_FLOW_SPEC_ETH}, + .rules_create_list = {IB_FLOW_SPEC_IB}, + .link_layer = IB_LINK_LAYER_INFINIBAND + } +}; + +static int __mlx4_ib_default_rules_match(struct ib_qp *qp, + struct ib_flow_attr *flow_attr) +{ + int i, j, k; + void *ib_flow; + const struct default_rules *pdefault_rules = default_table; + u8 link_layer = rdma_port_get_link_layer(qp->device, flow_attr->port); + + for (i = 0; i < sizeof(default_table)/sizeof(default_table[0]); i++, + pdefault_rules++) { + __u32 field_types[IB_FLOW_SPEC_SUPPORT_LAYERS]; + memset(&field_types, 0, sizeof(field_types)); + + if (link_layer != pdefault_rules->link_layer) + continue; + + ib_flow = flow_attr + 1; + /* we assume the specs are sorted */ + for (j = 0, k = 0; k < IB_FLOW_SPEC_SUPPORT_LAYERS && + j < flow_attr->num_of_specs; k++) { + union ib_flow_spec *current_flow = + (union ib_flow_spec *)ib_flow; + + /* same layer but different type */ + if (((current_flow->type & IB_FLOW_SPEC_LAYER_MASK) == + (pdefault_rules->mandatory_fields[k] & + IB_FLOW_SPEC_LAYER_MASK)) && + (current_flow->type != + pdefault_rules->mandatory_fields[k])) + goto out; + + /* same layer, try match next one */ + if (current_flow->type == + pdefault_rules->mandatory_fields[k]) { + j++; + ib_flow += + ((union ib_flow_spec *)ib_flow)->size; + } + } + + ib_flow = flow_attr + 1; + for (j = 0; j < flow_attr->num_of_specs; + j++, ib_flow += ((union ib_flow_spec *)ib_flow)->size) + for (k = 0; k < IB_FLOW_SPEC_SUPPORT_LAYERS; k++) + /* same layer and same type */ + if (((union ib_flow_spec *)ib_flow)->type == + pdefault_rules->mandatory_not_fields[k]) + goto out; + + return i; + } +out: + return -1; +} + +static int __mlx4_ib_create_default_rules( + struct mlx4_ib_dev *mdev, + struct ib_qp *qp, + const struct default_rules *pdefault_rules, + struct _rule_hw *mlx4_spec) { + int size = 0; + int i; + + for (i = 0; i < sizeof(pdefault_rules->rules_create_list)/ + sizeof(pdefault_rules->rules_create_list[0]); i++) { + int ret; + union ib_flow_spec ib_spec; + switch (pdefault_rules->rules_create_list[i]) { + case 0: + /* no rule */ + continue; + case IB_FLOW_SPEC_IB: + ib_spec.type = IB_FLOW_SPEC_IB; + ib_spec.size = sizeof(struct ib_flow_spec_ib); + + break; + default: + /* invalid rule */ + return -EINVAL; + } + /* We must put empty rule, qpn is being ignored */ + ret = parse_flow_attr(mdev->dev, 0, &ib_spec, + mlx4_spec); + if (ret < 0) { + pr_info("invalid parsing\n"); + return -EINVAL; + } + + mlx4_spec = (void *)mlx4_spec + ret; + size += ret; + } + return size; +} + static int __mlx4_ib_create_flow(struct ib_qp *qp, struct ib_flow_attr *flow_attr, int domain, enum mlx4_net_trans_promisc_mode flow_type, @@ -876,6 +998,7 @@ struct mlx4_ib_dev *mdev = to_mdev(qp->device); struct mlx4_cmd_mailbox *mailbox; struct mlx4_net_trans_rule_hw_ctrl *ctrl; + int default_flow; static const u16 __mlx4_domain[] = { [IB_FLOW_DOMAIN_USER] = MLX4_DOMAIN_UVERBS, @@ -910,8 +1033,21 @@ ib_flow = flow_attr + 1; size += sizeof(struct mlx4_net_trans_rule_hw_ctrl); + /* Add default flows */ + default_flow = __mlx4_ib_default_rules_match(qp, flow_attr); + if (default_flow >= 0) { + ret = __mlx4_ib_create_default_rules( + mdev, qp, default_table + default_flow, + mailbox->buf + size); + if (ret < 0) { + mlx4_free_cmd_mailbox(mdev->dev, mailbox); + return -EINVAL; + } + size += ret; + } for (i = 0; i < flow_attr->num_of_specs; i++) { - ret = parse_flow_attr(mdev->dev, ib_flow, mailbox->buf + size); + ret = parse_flow_attr(mdev->dev, qp->qp_num, ib_flow, + mailbox->buf + size); if (ret < 0) { mlx4_free_cmd_mailbox(mdev->dev, mailbox); return -EINVAL; @@ -1025,6 +1161,8 @@ struct mlx4_ib_qp *mqp = to_mqp(ibqp); u64 reg_id; struct mlx4_ib_steering *ib_steering = NULL; + enum mlx4_protocol prot = (gid->raw[1] == 0x0e) ? + MLX4_PROT_IB_IPV4 : MLX4_PROT_IB_IPV6; if (mdev->dev->caps.steering_mode == MLX4_STEERING_MODE_DEVICE_MANAGED) { @@ -1036,7 +1174,7 @@ err = mlx4_multicast_attach(mdev->dev, &mqp->mqp, gid->raw, mqp->port, !!(mqp->flags & MLX4_IB_QP_BLOCK_MULTICAST_LOOPBACK), - MLX4_PROT_IB_IPV6, ®_id); + prot, ®_id); if (err) goto err_malloc; @@ -1055,7 +1193,7 @@ err_add: mlx4_multicast_detach(mdev->dev, &mqp->mqp, gid->raw, - MLX4_PROT_IB_IPV6, reg_id); + prot, reg_id); err_malloc: kfree(ib_steering); @@ -1083,10 +1221,11 @@ int err; struct mlx4_ib_dev *mdev = to_mdev(ibqp->device); struct mlx4_ib_qp *mqp = to_mqp(ibqp); - u8 mac[6]; struct net_device *ndev; struct mlx4_ib_gid_entry *ge; u64 reg_id = 0; + enum mlx4_protocol prot = (gid->raw[1] == 0x0e) ? + MLX4_PROT_IB_IPV4 : MLX4_PROT_IB_IPV6; if (mdev->dev->caps.steering_mode == MLX4_STEERING_MODE_DEVICE_MANAGED) { @@ -1109,7 +1248,7 @@ } err = mlx4_multicast_detach(mdev->dev, &mqp->mqp, gid->raw, - MLX4_PROT_IB_IPV6, reg_id); + prot, reg_id); if (err) return err; @@ -1121,13 +1260,8 @@ if (ndev) dev_hold(ndev); spin_unlock(&mdev->iboe.lock); - rdma_get_mcast_mac((struct in6_addr *)gid, mac); - if (ndev) { - rtnl_lock(); - dev_mc_del(mdev->iboe.netdevs[ge->port - 1], mac); - rtnl_unlock(); + if (ndev) dev_put(ndev); - } list_del(&ge->list); kfree(ge); } else @@ -1223,7 +1357,8 @@ &dev_attr_board_id }; -static void mlx4_addrconf_ifid_eui48(u8 *eui, u16 vlan_id, struct net_device *dev) +static void mlx4_addrconf_ifid_eui48(u8 *eui, u16 vlan_id, + struct net_device *dev) { memcpy(eui, dev->dev_addr, 3); memcpy(eui + 5, dev->dev_addr + 3, 3); @@ -1259,161 +1394,377 @@ MLX4_CMD_WRAPPED); if (err) pr_warn("set port command failed\n"); - else { - memcpy(gw->dev->iboe.gid_table[gw->port - 1], gw->gids, sizeof gw->gids); + else mlx4_ib_dispatch_event(gw->dev, gw->port, IB_EVENT_GID_CHANGE); + + mlx4_free_cmd_mailbox(dev, mailbox); + kfree(gw); +} + +static void reset_gids_task(struct work_struct *work) +{ + struct update_gid_work *gw = + container_of(work, struct update_gid_work, work); + struct mlx4_cmd_mailbox *mailbox; + union ib_gid *gids; + int err; + struct mlx4_dev *dev = gw->dev->dev; + + mailbox = mlx4_alloc_cmd_mailbox(dev); + if (IS_ERR(mailbox)) { + pr_warn("reset gid table failed\n"); + goto free; + } + + gids = mailbox->buf; + memcpy(gids, gw->gids, sizeof(gw->gids)); + + if (mlx4_ib_port_link_layer(&gw->dev->ib_dev, gw->port) == + IB_LINK_LAYER_ETHERNET) { + err = mlx4_cmd(dev, mailbox->dma, + MLX4_SET_PORT_GID_TABLE << 8 | gw->port, + 1, MLX4_CMD_SET_PORT, + MLX4_CMD_TIME_CLASS_B, + MLX4_CMD_WRAPPED); + if (err) + pr_warn(KERN_WARNING + "set port %d command failed\n", gw->port); } mlx4_free_cmd_mailbox(dev, mailbox); +free: kfree(gw); } -static int update_ipv6_gids(struct mlx4_ib_dev *dev, int port, int clear) +static int update_gid_table(struct mlx4_ib_dev *dev, int port, + union ib_gid *gid, int clear, + int default_gid) { - struct net_device *ndev = dev->iboe.netdevs[port - 1]; struct update_gid_work *work; - struct net_device *tmp; int i; - u8 *hits; - int ret; - union ib_gid gid; - int free; - int found; int need_update = 0; - u16 vid; + int free = -1; + int found = -1; + int max_gids; - work = kzalloc(sizeof *work, GFP_ATOMIC); - if (!work) - return -ENOMEM; - - hits = kzalloc(128, GFP_ATOMIC); - if (!hits) { - ret = -ENOMEM; - goto out; - } - - rcu_read_lock(); - for_each_netdev_rcu(&init_net, tmp) { - if (ndev && (tmp == ndev || rdma_vlan_dev_real_dev(tmp) == ndev)) { - gid.global.subnet_prefix = cpu_to_be64(0xfe80000000000000LL); - vid = rdma_vlan_dev_vlan_id(tmp); - mlx4_addrconf_ifid_eui48(&gid.raw[8], vid, ndev); - found = 0; - free = -1; - for (i = 0; i < 128; ++i) { - if (free < 0 && - !memcmp(&dev->iboe.gid_table[port - 1][i], &zgid, sizeof zgid)) - free = i; - if (!memcmp(&dev->iboe.gid_table[port - 1][i], &gid, sizeof gid)) { - hits[i] = 1; - found = 1; + if (default_gid) { + free = 0; + } else { + max_gids = dev->dev->caps.gid_table_len[port]; + for (i = 1; i < max_gids; ++i) { + if (!memcmp(&dev->iboe.gid_table[port - 1][i], gid, + sizeof(*gid))) + found = i; + + if (clear) { + if (found >= 0) { + need_update = 1; + dev->iboe.gid_table[port - 1][found] = + zgid; break; } - } + } else { + if (found >= 0) + break; - if (!found) { - if (tmp == ndev && - (memcmp(&dev->iboe.gid_table[port - 1][0], - &gid, sizeof gid) || - !memcmp(&dev->iboe.gid_table[port - 1][0], - &zgid, sizeof gid))) { - dev->iboe.gid_table[port - 1][0] = gid; - ++need_update; - hits[0] = 1; - } else if (free >= 0) { - dev->iboe.gid_table[port - 1][free] = gid; - hits[free] = 1; - ++need_update; - } + if (free < 0 && + !memcmp(&dev->iboe.gid_table[port - 1][i], + &zgid, sizeof(*gid))) + free = i; } } } - rcu_read_unlock(); - for (i = 0; i < 128; ++i) - if (!hits[i]) { - if (memcmp(&dev->iboe.gid_table[port - 1][i], &zgid, sizeof zgid)) - ++need_update; - dev->iboe.gid_table[port - 1][i] = zgid; - } + if (found == -1 && !clear && free >= 0) { + dev->iboe.gid_table[port - 1][free] = *gid; + need_update = 1; + } - if (need_update) { - memcpy(work->gids, dev->iboe.gid_table[port - 1], sizeof work->gids); - INIT_WORK(&work->work, update_gids_task); - work->port = port; - work->dev = dev; - queue_work(wq, &work->work); - } else - kfree(work); + if (!need_update) + return 0; + + work = kzalloc(sizeof(*work), GFP_ATOMIC); + if (!work) + return -ENOMEM; + + memcpy(work->gids, dev->iboe.gid_table[port - 1], sizeof(work->gids)); + INIT_WORK(&work->work, update_gids_task); + work->port = port; + work->dev = dev; + queue_work(wq, &work->work); - kfree(hits); return 0; +} -out: - kfree(work); - return ret; +static void mlx4_make_default_gid(struct net_device *dev, union ib_gid *gid) +{ + gid->global.subnet_prefix = cpu_to_be64(0xfe80000000000000LL); + mlx4_addrconf_ifid_eui48(&gid->raw[8], 0xffff, dev); } -static void handle_en_event(struct mlx4_ib_dev *dev, int port, unsigned long event) + +static int reset_gid_table(struct mlx4_ib_dev *dev, u8 port) { - switch (event) { - case NETDEV_UP: - case NETDEV_CHANGEADDR: - update_ipv6_gids(dev, port, 0); - break; + struct update_gid_work *work; - case NETDEV_DOWN: - update_ipv6_gids(dev, port, 1); - dev->iboe.netdevs[port - 1] = NULL; - } + work = kzalloc(sizeof(*work), GFP_ATOMIC); + if (!work) + return -ENOMEM; + + memset(dev->iboe.gid_table[port - 1], 0, sizeof(work->gids)); + memset(work->gids, 0, sizeof(work->gids)); + INIT_WORK(&work->work, reset_gids_task); + work->dev = dev; + work->port = port; + queue_work(wq, &work->work); + return 0; } -static void netdev_added(struct mlx4_ib_dev *dev, int port) +static int mlx4_ib_addr_event(int event, struct net_device *event_netdev, + struct mlx4_ib_dev *ibdev, union ib_gid *gid) { - update_ipv6_gids(dev, port, 0); + struct mlx4_ib_iboe *iboe; + int port = 0; + struct net_device *real_dev = rdma_vlan_dev_real_dev(event_netdev) ? + rdma_vlan_dev_real_dev(event_netdev) : + event_netdev; + union ib_gid default_gid; + + mlx4_make_default_gid(real_dev, &default_gid); + + if (!memcmp(gid, &default_gid, sizeof(*gid))) + return 0; + + if (event != NETDEV_DOWN && event != NETDEV_UP) + return 0; + + if ((real_dev != event_netdev) && + (event == NETDEV_DOWN) && + rdma_link_local_addr((struct in6_addr *)gid)) + return 0; + + iboe = &ibdev->iboe; + spin_lock(&iboe->lock); + + for (port = 1; port <= ibdev->dev->caps.num_ports; ++port) + if ((netif_is_bond_master(real_dev) && + (real_dev == iboe->masters[port - 1])) || + (!netif_is_bond_master(real_dev) && + (real_dev == iboe->netdevs[port - 1]))) + update_gid_table(ibdev, port, gid, + event == NETDEV_DOWN, 0); + + spin_unlock(&iboe->lock); + return 0; + } -static void netdev_removed(struct mlx4_ib_dev *dev, int port) +static u8 mlx4_ib_get_dev_port(struct net_device *dev, + struct mlx4_ib_dev *ibdev) { - update_ipv6_gids(dev, port, 1); + u8 port = 0; + struct mlx4_ib_iboe *iboe; + struct net_device *real_dev = rdma_vlan_dev_real_dev(dev) ? + rdma_vlan_dev_real_dev(dev) : dev; + + iboe = &ibdev->iboe; + + for (port = 1; port <= ibdev->dev->caps.num_ports; ++port) + if ((netif_is_bond_master(real_dev) && + (real_dev == iboe->masters[port - 1])) || + (!netif_is_bond_master(real_dev) && + (real_dev == iboe->netdevs[port - 1]))) + break; + + if ((port == 0) || (port > ibdev->dev->caps.num_ports)) + return 0; + else + return port; } -static int mlx4_ib_netdev_event(struct notifier_block *this, unsigned long event, +static int mlx4_ib_inet_event(struct notifier_block *this, unsigned long event, + void *ptr) +{ + struct mlx4_ib_dev *ibdev; + struct in_ifaddr *ifa = ptr; + union ib_gid gid; + struct net_device *event_netdev = ifa->ifa_dev->dev; + + ipv6_addr_set_v4mapped(ifa->ifa_address, (struct in6_addr *)&gid); + + ibdev = container_of(this, struct mlx4_ib_dev, iboe.nb_inet); + + mlx4_ib_addr_event(event, event_netdev, ibdev, &gid); + return NOTIFY_DONE; +} + +#if IS_ENABLED(CONFIG_IPV6) +static int mlx4_ib_inet6_event(struct notifier_block *this, unsigned long event, void *ptr) { - struct net_device *dev = netdev_notifier_info_to_dev(ptr); struct mlx4_ib_dev *ibdev; - struct net_device *oldnd; + struct inet6_ifaddr *ifa = ptr; + union ib_gid *gid = (union ib_gid *)&ifa->addr; + struct net_device *event_netdev = ifa->idev->dev; + + ibdev = container_of(this, struct mlx4_ib_dev, iboe.nb_inet6); + + mlx4_ib_addr_event(event, event_netdev, ibdev, gid); + return NOTIFY_DONE; +} +#endif + +static void mlx4_ib_get_dev_addr(struct net_device *dev, + struct mlx4_ib_dev *ibdev, u8 port) +{ + struct in_device *in_dev; +#if IS_ENABLED(CONFIG_IPV6) + struct inet6_dev *in6_dev; + union ib_gid *pgid; + struct inet6_ifaddr *ifp; +#endif + union ib_gid gid; + + + if ((port == 0) || (port > ibdev->dev->caps.num_ports)) + return; + + /* IPv4 gids */ + in_dev = in_dev_get(dev); + if (in_dev) { + for_ifa(in_dev) { + /*ifa->ifa_address;*/ + ipv6_addr_set_v4mapped(ifa->ifa_address, + (struct in6_addr *)&gid); + update_gid_table(ibdev, port, &gid, 0, 0); + } + endfor_ifa(in_dev); + in_dev_put(in_dev); + } +#if IS_ENABLED(CONFIG_IPV6) + /* IPv6 gids */ + in6_dev = in6_dev_get(dev); + if (in6_dev) { + read_lock_bh(&in6_dev->lock); + list_for_each_entry(ifp, &in6_dev->addr_list, if_list) { + pgid = (union ib_gid *)&ifp->addr; + update_gid_table(ibdev, port, pgid, 0, 0); + } + read_unlock_bh(&in6_dev->lock); + in6_dev_put(in6_dev); + } +#endif +} + +static void mlx4_ib_set_default_gid(struct mlx4_ib_dev *ibdev, + struct net_device *dev, u8 port) +{ + union ib_gid gid; + mlx4_make_default_gid(dev, &gid); + update_gid_table(ibdev, port, &gid, 0, 1); +} + +static int mlx4_ib_init_gid_table(struct mlx4_ib_dev *ibdev) +{ + struct net_device *dev; + struct mlx4_ib_iboe *iboe = &ibdev->iboe; + int i; + + for (i = 1; i <= ibdev->num_ports; ++i) + if (reset_gid_table(ibdev, i)) + return -1; + + read_lock(&dev_base_lock); + spin_lock(&iboe->lock); + + for_each_netdev(&init_net, dev) { + u8 port = mlx4_ib_get_dev_port(dev, ibdev); + if (port) + mlx4_ib_get_dev_addr(dev, ibdev, port); + } + + spin_unlock(&iboe->lock); + read_unlock(&dev_base_lock); + + return 0; +} + +static void mlx4_ib_scan_netdevs(struct mlx4_ib_dev *ibdev) +{ struct mlx4_ib_iboe *iboe; int port; - if (!net_eq(dev_net(dev), &init_net)) - return NOTIFY_DONE; - - ibdev = container_of(this, struct mlx4_ib_dev, iboe.nb); iboe = &ibdev->iboe; spin_lock(&iboe->lock); mlx4_foreach_ib_transport_port(port, ibdev->dev) { - oldnd = iboe->netdevs[port - 1]; + enum ib_port_state port_state = IB_PORT_NOP; + struct net_device *old_master = iboe->masters[port - 1]; + struct net_device *curr_netdev; + struct net_device *curr_master; + iboe->netdevs[port - 1] = mlx4_get_protocol_dev(ibdev->dev, MLX4_PROT_ETH, port); - if (oldnd != iboe->netdevs[port - 1]) { - if (iboe->netdevs[port - 1]) - netdev_added(ibdev, port); - else - netdev_removed(ibdev, port); + if (iboe->netdevs[port - 1]) + mlx4_ib_set_default_gid(ibdev, + iboe->netdevs[port - 1], port); + curr_netdev = iboe->netdevs[port - 1]; + + if (iboe->netdevs[port - 1] && + netif_is_bond_slave(iboe->netdevs[port - 1])) { + iboe->masters[port - 1] = netdev_master_upper_dev_get( + iboe->netdevs[port - 1]); + } else { + iboe->masters[port - 1] = NULL; } - } + curr_master = iboe->masters[port - 1]; - if (dev == iboe->netdevs[0] || - (iboe->netdevs[0] && rdma_vlan_dev_real_dev(dev) == iboe->netdevs[0])) - handle_en_event(ibdev, 1, event); - else if (dev == iboe->netdevs[1] - || (iboe->netdevs[1] && rdma_vlan_dev_real_dev(dev) == iboe->netdevs[1])) - handle_en_event(ibdev, 2, event); + if (curr_netdev) { + port_state = (netif_running(curr_netdev) && netif_carrier_ok(curr_netdev)) ? + IB_PORT_ACTIVE : IB_PORT_DOWN; + mlx4_ib_set_default_gid(ibdev, curr_netdev, port); + } else { + reset_gid_table(ibdev, port); + } + /* if using bonding/team and a slave port is down, we don't the bond IP + * based gids in the table since flows that select port by gid may get + * the down port. + */ + if (curr_master && (port_state == IB_PORT_DOWN)) { + reset_gid_table(ibdev, port); + mlx4_ib_set_default_gid(ibdev, curr_netdev, port); + } + /* if bonding is used it is possible that we add it to masters + * only after IP address is assigned to the net bonding + * interface. + */ + if (curr_master && (old_master != curr_master)) { + reset_gid_table(ibdev, port); + mlx4_ib_set_default_gid(ibdev, curr_netdev, port); + mlx4_ib_get_dev_addr(curr_master, ibdev, port); + } + + if (!curr_master && (old_master != curr_master)) { + reset_gid_table(ibdev, port); + mlx4_ib_set_default_gid(ibdev, curr_netdev, port); + mlx4_ib_get_dev_addr(curr_netdev, ibdev, port); + } + } spin_unlock(&iboe->lock); +} + +static int mlx4_ib_netdev_event(struct notifier_block *this, + unsigned long event, void *ptr) +{ + struct net_device *dev = netdev_notifier_info_to_dev(ptr); + struct mlx4_ib_dev *ibdev; + + if (!net_eq(dev_net(dev), &init_net)) + return NOTIFY_DONE; + + ibdev = container_of(this, struct mlx4_ib_dev, iboe.nb); + mlx4_ib_scan_netdevs(ibdev); return NOTIFY_DONE; } @@ -1533,17 +1884,10 @@ int i, j; int err; struct mlx4_ib_iboe *iboe; + int ib_num_ports = 0; pr_info_once("%s", mlx4_ib_version); - mlx4_foreach_non_ib_transport_port(i, dev) - num_ports++; - - if (mlx4_is_mfunc(dev) && num_ports) { - dev_err(&dev->pdev->dev, "RoCE is not supported over SRIOV as yet\n"); - return NULL; - } - num_ports = 0; mlx4_foreach_ib_transport_port(i, dev) num_ports++; @@ -1682,6 +2026,7 @@ } if (check_flow_steering_support(dev)) { + ibdev->steering_support = MLX4_STEERING_MODE_DEVICE_MANAGED; ibdev->ib_dev.create_flow = mlx4_ib_create_flow; ibdev->ib_dev.destroy_flow = mlx4_ib_destroy_flow; @@ -1707,11 +2052,42 @@ ibdev->counters[i] = -1; } + mlx4_foreach_port(i, dev, MLX4_PORT_TYPE_IB) + ib_num_ports++; + spin_lock_init(&ibdev->sm_lock); mutex_init(&ibdev->cap_mask_mutex); + if (ibdev->steering_support == MLX4_STEERING_MODE_DEVICE_MANAGED && + ib_num_ports) { + ibdev->steer_qpn_count = MLX4_IB_UC_MAX_NUM_QPS; + err = mlx4_qp_reserve_range(dev, ibdev->steer_qpn_count, + MLX4_IB_UC_STEER_QPN_ALIGN, + &ibdev->steer_qpn_base); + if (err) + goto err_counter; + + ibdev->ib_uc_qpns_bitmap = + kmalloc(BITS_TO_LONGS(ibdev->steer_qpn_count) * + sizeof(long), + GFP_KERNEL); + if (!ibdev->ib_uc_qpns_bitmap) { + dev_err(&dev->pdev->dev, "bit map alloc failed\n"); + goto err_steer_qp_release; + } + + bitmap_zero(ibdev->ib_uc_qpns_bitmap, ibdev->steer_qpn_count); + + err = mlx4_FLOW_STEERING_IB_UC_QP_RANGE( + dev, ibdev->steer_qpn_base, + ibdev->steer_qpn_base + + ibdev->steer_qpn_count - 1); + if (err) + goto err_steer_free_bitmap; + } + if (ib_register_device(&ibdev->ib_dev, NULL)) - goto err_counter; + goto err_steer_free_bitmap; if (mlx4_ib_mad_init(ibdev)) goto err_reg; @@ -1719,11 +2095,39 @@ if (mlx4_ib_init_sriov(ibdev)) goto err_mad; - if (dev->caps.flags & MLX4_DEV_CAP_FLAG_IBOE && !iboe->nb.notifier_call) { - iboe->nb.notifier_call = mlx4_ib_netdev_event; - err = register_netdevice_notifier(&iboe->nb); - if (err) - goto err_sriov; + if (dev->caps.flags & MLX4_DEV_CAP_FLAG_IBOE) { + if (!iboe->nb.notifier_call) { + iboe->nb.notifier_call = mlx4_ib_netdev_event; + err = register_netdevice_notifier(&iboe->nb); + if (err) { + iboe->nb.notifier_call = NULL; + goto err_notif; + } + } + if (!iboe->nb_inet.notifier_call) { + iboe->nb_inet.notifier_call = mlx4_ib_inet_event; + err = register_inetaddr_notifier(&iboe->nb_inet); + if (err) { + iboe->nb_inet.notifier_call = NULL; + goto err_notif; + } + } +#if IS_ENABLED(CONFIG_IPV6) + if (!iboe->nb_inet6.notifier_call) { + iboe->nb_inet6.notifier_call = mlx4_ib_inet6_event; + err = register_inet6addr_notifier(&iboe->nb_inet6); + if (err) { + iboe->nb_inet6.notifier_call = NULL; + goto err_notif; + } + } +#endif + for (i = 1 ; i <= ibdev->num_ports ; ++i) + reset_gid_table(ibdev, i); + rtnl_lock(); + mlx4_ib_scan_netdevs(ibdev); + rtnl_unlock(); + mlx4_ib_init_gid_table(ibdev); } for (j = 0; j < ARRAY_SIZE(mlx4_class_attributes); ++j) { @@ -1749,11 +2153,25 @@ return ibdev; err_notif: - if (unregister_netdevice_notifier(&ibdev->iboe.nb)) - pr_warn("failure unregistering notifier\n"); + if (ibdev->iboe.nb.notifier_call) { + if (unregister_netdevice_notifier(&ibdev->iboe.nb)) + pr_warn("failure unregistering notifier\n"); + ibdev->iboe.nb.notifier_call = NULL; + } + if (ibdev->iboe.nb_inet.notifier_call) { + if (unregister_inetaddr_notifier(&ibdev->iboe.nb_inet)) + pr_warn("failure unregistering notifier\n"); + ibdev->iboe.nb_inet.notifier_call = NULL; + } +#if IS_ENABLED(CONFIG_IPV6) + if (ibdev->iboe.nb_inet6.notifier_call) { + if (unregister_inet6addr_notifier(&ibdev->iboe.nb_inet6)) + pr_warn("failure unregistering notifier\n"); + ibdev->iboe.nb_inet6.notifier_call = NULL; + } +#endif flush_workqueue(wq); -err_sriov: mlx4_ib_close_sriov(ibdev); err_mad: @@ -1762,6 +2180,13 @@ err_reg: ib_unregister_device(&ibdev->ib_dev); +err_steer_free_bitmap: + kfree(ibdev->ib_uc_qpns_bitmap); + +err_steer_qp_release: + if (ibdev->steering_support == MLX4_STEERING_MODE_DEVICE_MANAGED) + mlx4_qp_release_range(dev, ibdev->steer_qpn_base, + ibdev->steer_qpn_count); err_counter: for (; i; --i) if (ibdev->counters[i - 1] != -1) @@ -1782,6 +2207,69 @@ return NULL; } +int mlx4_ib_steer_qp_alloc(struct mlx4_ib_dev *dev, int count, int *qpn) +{ + int offset; + + WARN_ON(!dev->ib_uc_qpns_bitmap); + + offset = bitmap_find_free_region(dev->ib_uc_qpns_bitmap, + dev->steer_qpn_count, + get_count_order(count)); + if (offset < 0) + return offset; + + *qpn = dev->steer_qpn_base + offset; + return 0; +} + +void mlx4_ib_steer_qp_free(struct mlx4_ib_dev *dev, u32 qpn, int count) +{ + if (!qpn || + dev->steering_support != MLX4_STEERING_MODE_DEVICE_MANAGED) + return; + + BUG_ON(qpn < dev->steer_qpn_base); + + bitmap_release_region(dev->ib_uc_qpns_bitmap, + qpn - dev->steer_qpn_base, + get_count_order(count)); +} + +int mlx4_ib_steer_qp_reg(struct mlx4_ib_dev *mdev, struct mlx4_ib_qp *mqp, + int is_attach) +{ + int err; + size_t flow_size; + struct ib_flow_attr *flow = NULL; + struct ib_flow_spec_ib *ib_spec; + + if (is_attach) { + flow_size = sizeof(struct ib_flow_attr) + + sizeof(struct ib_flow_spec_ib); + flow = kzalloc(flow_size, GFP_KERNEL); + if (!flow) + return -ENOMEM; + flow->port = mqp->port; + flow->num_of_specs = 1; + flow->size = flow_size; + ib_spec = (struct ib_flow_spec_ib *)(flow + 1); + ib_spec->type = IB_FLOW_SPEC_IB; + ib_spec->size = sizeof(struct ib_flow_spec_ib); + /* Add an empty rule for IB L2 */ + memset(&ib_spec->mask, 0, sizeof(ib_spec->mask)); + + err = __mlx4_ib_create_flow(&mqp->ibqp, flow, + IB_FLOW_DOMAIN_NIC, + MLX4_FS_REGULAR, + &mqp->reg_id); + } else { + err = __mlx4_ib_destroy_flow(mdev->dev, mqp->reg_id); + } + kfree(flow); + return err; +} + static void mlx4_ib_remove(struct mlx4_dev *dev, void *ibdev_ptr) { struct mlx4_ib_dev *ibdev = ibdev_ptr; @@ -1795,6 +2283,26 @@ pr_warn("failure unregistering notifier\n"); ibdev->iboe.nb.notifier_call = NULL; } + + if (ibdev->steering_support == MLX4_STEERING_MODE_DEVICE_MANAGED) { + mlx4_qp_release_range(dev, ibdev->steer_qpn_base, + ibdev->steer_qpn_count); + kfree(ibdev->ib_uc_qpns_bitmap); + } + + if (ibdev->iboe.nb_inet.notifier_call) { + if (unregister_inetaddr_notifier(&ibdev->iboe.nb_inet)) + pr_warn("failure unregistering notifier\n"); + ibdev->iboe.nb_inet.notifier_call = NULL; + } +#if IS_ENABLED(CONFIG_IPV6) + if (ibdev->iboe.nb_inet6.notifier_call) { + if (unregister_inet6addr_notifier(&ibdev->iboe.nb_inet6)) + pr_warn("failure unregistering notifier\n"); + ibdev->iboe.nb_inet6.notifier_call = NULL; + } +#endif + iounmap(ibdev->uar_map); for (p = 0; p < ibdev->num_ports; ++p) if (ibdev->counters[p] != -1) @@ -1815,17 +2323,24 @@ struct mlx4_dev *dev = ibdev->dev; int i; unsigned long flags; + struct mlx4_active_ports actv_ports; + unsigned int ports; + unsigned int first_port; if (!mlx4_is_master(dev)) return; - dm = kcalloc(dev->caps.num_ports, sizeof *dm, GFP_ATOMIC); + actv_ports = mlx4_get_active_ports(dev, slave); + ports = bitmap_weight(actv_ports.ports, dev->caps.num_ports); + first_port = find_first_bit(actv_ports.ports, dev->caps.num_ports); + + dm = kcalloc(ports, sizeof(*dm), GFP_ATOMIC); if (!dm) { pr_err("failed to allocate memory for tunneling qp update\n"); goto out; } - for (i = 0; i < dev->caps.num_ports; i++) { + for (i = 0; i < ports; i++) { dm[i] = kmalloc(sizeof (struct mlx4_ib_demux_work), GFP_ATOMIC); if (!dm[i]) { pr_err("failed to allocate memory for tunneling qp update work struct\n"); @@ -1837,9 +2352,9 @@ } } /* initialize or tear down tunnel QPs for the slave */ - for (i = 0; i < dev->caps.num_ports; i++) { + for (i = 0; i < ports; i++) { INIT_WORK(&dm[i]->work, mlx4_ib_tunnels_update_work); - dm[i]->port = i + 1; + dm[i]->port = first_port + i + 1; dm[i]->slave = slave; dm[i]->do_init = do_init; dm[i]->dev = ibdev; --- linux-3.13.0.orig/drivers/infiniband/hw/mlx4/mcg.c +++ linux-3.13.0/drivers/infiniband/hw/mlx4/mcg.c @@ -215,8 +215,9 @@ } mlx4_ib_query_ah(dev->sm_ah[ctx->port - 1], &ah_attr); spin_unlock(&dev->sm_lock); - return mlx4_ib_send_to_wire(dev, mlx4_master_func_num(dev->dev), ctx->port, - IB_QPT_GSI, 0, 1, IB_QP1_QKEY, &ah_attr, mad); + return mlx4_ib_send_to_wire(dev, mlx4_master_func_num(dev->dev), + ctx->port, IB_QPT_GSI, 0, 1, IB_QP1_QKEY, + &ah_attr, NULL, mad); } static int send_mad_to_slave(int slave, struct mlx4_ib_demux_ctx *ctx, --- linux-3.13.0.orig/drivers/infiniband/hw/mlx4/mlx4_ib.h +++ linux-3.13.0/drivers/infiniband/hw/mlx4/mlx4_ib.h @@ -68,6 +68,8 @@ /*module param to indicate if SM assigns the alias_GUID*/ extern int mlx4_ib_sm_guid_assign; +#define MLX4_IB_UC_STEER_QPN_ALIGN 1 +#define MLX4_IB_UC_MAX_NUM_QPS 256 struct mlx4_ib_ucontext { struct ib_ucontext ibucontext; struct mlx4_uar uar; @@ -153,6 +155,7 @@ enum mlx4_ib_qp_flags { MLX4_IB_QP_LSO = IB_QP_CREATE_IPOIB_UD_LSO, MLX4_IB_QP_BLOCK_MULTICAST_LOOPBACK = IB_QP_CREATE_BLOCK_MULTICAST_LOOPBACK, + MLX4_IB_QP_NETIF = IB_QP_CREATE_NETIF_QP, MLX4_IB_SRIOV_TUNNEL_QP = 1 << 30, MLX4_IB_SRIOV_SQP = 1 << 31, }; @@ -238,6 +241,22 @@ struct mlx4_rcv_tunnel_hdr tun; } __packed; +struct mlx4_roce_smac_vlan_info { + u64 smac; + int smac_index; + int smac_port; + u64 candidate_smac; + int candidate_smac_index; + int candidate_smac_port; + u16 vid; + int vlan_index; + int vlan_port; + u16 candidate_vid; + int candidate_vlan_index; + int candidate_vlan_port; + int update_vid; +}; + struct mlx4_ib_qp { struct ib_qp ibqp; struct mlx4_qp mqp; @@ -270,7 +289,9 @@ struct list_head gid_list; struct list_head steering_rules; struct mlx4_ib_buf *sqp_proxy_rcv; - + struct mlx4_roce_smac_vlan_info pri; + struct mlx4_roce_smac_vlan_info alt; + u64 reg_id; }; struct mlx4_ib_srq { @@ -428,7 +449,10 @@ struct mlx4_ib_iboe { spinlock_t lock; struct net_device *netdevs[MLX4_MAX_PORTS]; + struct net_device *masters[MLX4_MAX_PORTS]; struct notifier_block nb; + struct notifier_block nb_inet; + struct notifier_block nb_inet6; union ib_gid gid_table[MLX4_MAX_PORTS][128]; }; @@ -494,6 +518,10 @@ struct kobject *dev_ports_parent[MLX4_MFUNC_MAX]; struct mlx4_ib_iov_port iov_ports[MLX4_MAX_PORTS]; struct pkey_mgt pkeys; + unsigned long *ib_uc_qpns_bitmap; + int steer_qpn_count; + int steer_qpn_base; + int steering_support; }; struct ib_event_work { @@ -675,9 +703,6 @@ int __mlx4_ib_query_gid(struct ib_device *ibdev, u8 port, int index, union ib_gid *gid, int netw_view); -int mlx4_ib_resolve_grh(struct mlx4_ib_dev *dev, const struct ib_ah_attr *ah_attr, - u8 *mac, int *is_mcast, u8 port); - static inline bool mlx4_ib_ah_grh_present(struct mlx4_ib_ah *ah) { u8 port = be32_to_cpu(ah->av.ib.port_pd) >> 24 & 3; @@ -712,9 +737,12 @@ int mlx4_ib_send_to_slave(struct mlx4_ib_dev *dev, int slave, u8 port, enum ib_qp_type qpt, struct ib_wc *wc, struct ib_grh *grh, struct ib_mad *mad); + int mlx4_ib_send_to_wire(struct mlx4_ib_dev *dev, int slave, u8 port, enum ib_qp_type dest_qpt, u16 pkey_index, u32 remote_qpn, - u32 qkey, struct ib_ah_attr *attr, struct ib_mad *mad); + u32 qkey, struct ib_ah_attr *attr, u8 *s_mac, + struct ib_mad *mad); + __be64 mlx4_ib_get_new_demux_tid(struct mlx4_ib_demux_ctx *ctx); int mlx4_ib_demux_cm_handler(struct ib_device *ibdev, int port, int *slave, @@ -752,5 +780,9 @@ __be64 mlx4_ib_gen_node_guid(void); +int mlx4_ib_steer_qp_alloc(struct mlx4_ib_dev *dev, int count, int *qpn); +void mlx4_ib_steer_qp_free(struct mlx4_ib_dev *dev, u32 qpn, int count); +int mlx4_ib_steer_qp_reg(struct mlx4_ib_dev *mdev, struct mlx4_ib_qp *mqp, + int is_attach); #endif /* MLX4_IB_H */ --- linux-3.13.0.orig/drivers/infiniband/hw/mlx4/qp.c +++ linux-3.13.0/drivers/infiniband/hw/mlx4/qp.c @@ -90,6 +90,21 @@ MLX4_RAW_QP_MSGMAX = 31, }; +#ifndef ETH_ALEN +#define ETH_ALEN 6 +#endif +static inline u64 mlx4_mac_to_u64(u8 *addr) +{ + u64 mac = 0; + int i; + + for (i = 0; i < ETH_ALEN; i++) { + mac <<= 8; + mac |= addr[i]; + } + return mac; +} + static const __be32 mlx4_ib_opcode[] = { [IB_WR_SEND] = cpu_to_be32(MLX4_OPCODE_SEND), [IB_WR_LSO] = cpu_to_be32(MLX4_OPCODE_LSO), @@ -647,10 +662,14 @@ if (!sqp) return -ENOMEM; qp = &sqp->qp; + qp->pri.vid = 0xFFFF; + qp->alt.vid = 0xFFFF; } else { qp = kzalloc(sizeof (struct mlx4_ib_qp), GFP_KERNEL); if (!qp) return -ENOMEM; + qp->pri.vid = 0xFFFF; + qp->alt.vid = 0xFFFF; } } else qp = *caller_qp; @@ -716,6 +735,14 @@ if (init_attr->create_flags & IB_QP_CREATE_IPOIB_UD_LSO) qp->flags |= MLX4_IB_QP_LSO; + if (init_attr->create_flags & IB_QP_CREATE_NETIF_QP) { + if (dev->steering_support == + MLX4_STEERING_MODE_DEVICE_MANAGED) + qp->flags |= MLX4_IB_QP_NETIF; + else + goto err; + } + err = set_kernel_sq_size(dev, &init_attr->cap, qp_type, qp); if (err) goto err; @@ -765,7 +792,11 @@ if (init_attr->qp_type == IB_QPT_RAW_PACKET) err = mlx4_qp_reserve_range(dev->dev, 1, 1 << 8, &qpn); else - err = mlx4_qp_reserve_range(dev->dev, 1, 1, &qpn); + if (qp->flags & MLX4_IB_QP_NETIF) + err = mlx4_ib_steer_qp_alloc(dev, 1, &qpn); + else + err = mlx4_qp_reserve_range(dev->dev, 1, 1, + &qpn); if (err) goto err_proxy; } @@ -790,8 +821,12 @@ return 0; err_qpn: - if (!sqpn) - mlx4_qp_release_range(dev->dev, qpn, 1); + if (!sqpn) { + if (qp->flags & MLX4_IB_QP_NETIF) + mlx4_ib_steer_qp_free(dev, qpn, 1); + else + mlx4_qp_release_range(dev->dev, qpn, 1); + } err_proxy: if (qp->mlx4_ib_qp_type == MLX4_IB_QPT_PROXY_GSI) free_proxy_bufs(pd->device, qp); @@ -909,11 +944,32 @@ { struct mlx4_ib_cq *send_cq, *recv_cq; - if (qp->state != IB_QPS_RESET) + if (qp->state != IB_QPS_RESET) { if (mlx4_qp_modify(dev->dev, NULL, to_mlx4_state(qp->state), MLX4_QP_STATE_RST, NULL, 0, 0, &qp->mqp)) pr_warn("modify QP %06x to RESET failed.\n", qp->mqp.qpn); + if (qp->pri.smac) { + mlx4_unregister_mac(dev->dev, qp->pri.smac_port, qp->pri.smac); + qp->pri.smac = 0; + } + if (qp->alt.smac) { + mlx4_unregister_mac(dev->dev, qp->alt.smac_port, qp->alt.smac); + qp->alt.smac = 0; + } + if (qp->pri.vid < 0x1000) { + mlx4_unregister_vlan(dev->dev, qp->pri.vlan_port, qp->pri.vid); + qp->pri.vid = 0xFFFF; + qp->pri.candidate_vid = 0xFFFF; + qp->pri.update_vid = 0; + } + if (qp->alt.vid < 0x1000) { + mlx4_unregister_vlan(dev->dev, qp->alt.vlan_port, qp->alt.vid); + qp->alt.vid = 0xFFFF; + qp->alt.candidate_vid = 0xFFFF; + qp->alt.update_vid = 0; + } + } get_cqs(qp, &send_cq, &recv_cq); @@ -932,8 +988,12 @@ mlx4_qp_free(dev->dev, &qp->mqp); - if (!is_sqp(dev, qp) && !is_tunnel_qp(dev, qp)) - mlx4_qp_release_range(dev->dev, qp->mqp.qpn, 1); + if (!is_sqp(dev, qp) && !is_tunnel_qp(dev, qp)) { + if (qp->flags & MLX4_IB_QP_NETIF) + mlx4_ib_steer_qp_free(dev, qp->mqp.qpn, 1); + else + mlx4_qp_release_range(dev->dev, qp->mqp.qpn, 1); + } mlx4_mtt_cleanup(dev->dev, &qp->mtt); @@ -987,9 +1047,16 @@ */ if (init_attr->create_flags & ~(MLX4_IB_QP_LSO | MLX4_IB_QP_BLOCK_MULTICAST_LOOPBACK | - MLX4_IB_SRIOV_TUNNEL_QP | MLX4_IB_SRIOV_SQP)) + MLX4_IB_SRIOV_TUNNEL_QP | + MLX4_IB_SRIOV_SQP | + MLX4_IB_QP_NETIF)) return ERR_PTR(-EINVAL); + if (init_attr->create_flags & IB_QP_CREATE_NETIF_QP) { + if (init_attr->qp_type != IB_QPT_UD) + return ERR_PTR(-EINVAL); + } + if (init_attr->create_flags && (udata || ((init_attr->create_flags & ~MLX4_IB_SRIOV_SQP) && @@ -1015,6 +1082,8 @@ qp = kzalloc(sizeof *qp, GFP_KERNEL); if (!qp) return ERR_PTR(-ENOMEM); + qp->pri.vid = 0xFFFF; + qp->alt.vid = 0xFFFF; /* fall through */ case IB_QPT_UD: { @@ -1144,16 +1213,16 @@ path->sched_queue = (path->sched_queue & 0xbf) | ((port - 1) << 6); } -static int mlx4_set_path(struct mlx4_ib_dev *dev, const struct ib_ah_attr *ah, - struct mlx4_qp_path *path, u8 port) +static int _mlx4_set_path(struct mlx4_ib_dev *dev, const struct ib_ah_attr *ah, + u64 smac, u16 vlan_tag, struct mlx4_qp_path *path, + struct mlx4_roce_smac_vlan_info *smac_info, u8 port) { - int err; int is_eth = rdma_port_get_link_layer(&dev->ib_dev, port) == IB_LINK_LAYER_ETHERNET; - u8 mac[6]; - int is_mcast; - u16 vlan_tag; int vidx; + int smac_index; + int err; + path->grh_mylmc = ah->src_path_bits & 0x7f; path->rlid = cpu_to_be16(ah->dlid); @@ -1182,36 +1251,105 @@ } if (is_eth) { - path->sched_queue = MLX4_IB_DEFAULT_SCHED_QUEUE | - ((port - 1) << 6) | ((ah->sl & 7) << 3); - if (!(ah->ah_flags & IB_AH_GRH)) return -1; - err = mlx4_ib_resolve_grh(dev, ah, mac, &is_mcast, port); - if (err) - return err; - - memcpy(path->dmac, mac, 6); - path->ackto = MLX4_IB_LINK_TYPE_ETH; - /* use index 0 into MAC table for IBoE */ - path->grh_mylmc &= 0x80; + path->sched_queue = MLX4_IB_DEFAULT_SCHED_QUEUE | + ((port - 1) << 6) | ((ah->sl & 7) << 3); - vlan_tag = rdma_get_vlan_id(&dev->iboe.gid_table[port - 1][ah->grh.sgid_index]); + path->feup |= MLX4_FEUP_FORCE_ETH_UP; if (vlan_tag < 0x1000) { - if (mlx4_find_cached_vlan(dev->dev, port, vlan_tag, &vidx)) - return -ENOENT; - - path->vlan_index = vidx; + if (smac_info->vid < 0x1000) { + /* both valid vlan ids */ + if (smac_info->vid != vlan_tag) { + /* different VIDs. unreg old and reg new */ + err = mlx4_register_vlan(dev->dev, port, vlan_tag, &vidx); + if (err) + return err; + smac_info->candidate_vid = vlan_tag; + smac_info->candidate_vlan_index = vidx; + smac_info->candidate_vlan_port = port; + smac_info->update_vid = 1; + path->vlan_index = vidx; + } else { + path->vlan_index = smac_info->vlan_index; + } + } else { + /* no current vlan tag in qp */ + err = mlx4_register_vlan(dev->dev, port, vlan_tag, &vidx); + if (err) + return err; + smac_info->candidate_vid = vlan_tag; + smac_info->candidate_vlan_index = vidx; + smac_info->candidate_vlan_port = port; + smac_info->update_vid = 1; + path->vlan_index = vidx; + } + path->feup |= MLX4_FVL_FORCE_ETH_VLAN; path->fl = 1 << 6; + } else { + /* have current vlan tag. unregister it at modify-qp success */ + if (smac_info->vid < 0x1000) { + smac_info->candidate_vid = 0xFFFF; + smac_info->update_vid = 1; + } } - } else + + /* get smac_index for RoCE use. + * If no smac was yet assigned, register one. + * If one was already assigned, but the new mac differs, + * unregister the old one and register the new one. + */ + if (!smac_info->smac || smac_info->smac != smac) { + /* register candidate now, unreg if needed, after success */ + smac_index = mlx4_register_mac(dev->dev, port, smac); + if (smac_index >= 0) { + smac_info->candidate_smac_index = smac_index; + smac_info->candidate_smac = smac; + smac_info->candidate_smac_port = port; + } else { + return -EINVAL; + } + } else { + smac_index = smac_info->smac_index; + } + + memcpy(path->dmac, ah->dmac, 6); + path->ackto = MLX4_IB_LINK_TYPE_ETH; + /* put MAC table smac index for IBoE */ + path->grh_mylmc = (u8) (smac_index) | 0x80; + } else { path->sched_queue = MLX4_IB_DEFAULT_SCHED_QUEUE | ((port - 1) << 6) | ((ah->sl & 0xf) << 2); + } return 0; } +static int mlx4_set_path(struct mlx4_ib_dev *dev, const struct ib_qp_attr *qp, + enum ib_qp_attr_mask qp_attr_mask, + struct mlx4_ib_qp *mqp, + struct mlx4_qp_path *path, u8 port) +{ + return _mlx4_set_path(dev, &qp->ah_attr, + mlx4_mac_to_u64((u8 *)qp->smac), + (qp_attr_mask & IB_QP_VID) ? qp->vlan_id : 0xffff, + path, &mqp->pri, port); +} + +static int mlx4_set_alt_path(struct mlx4_ib_dev *dev, + const struct ib_qp_attr *qp, + enum ib_qp_attr_mask qp_attr_mask, + struct mlx4_ib_qp *mqp, + struct mlx4_qp_path *path, u8 port) +{ + return _mlx4_set_path(dev, &qp->alt_ah_attr, + mlx4_mac_to_u64((u8 *)qp->alt_smac), + (qp_attr_mask & IB_QP_ALT_VID) ? + qp->alt_vlan_id : 0xffff, + path, &mqp->alt, port); +} + static void update_mcg_macs(struct mlx4_ib_dev *dev, struct mlx4_ib_qp *qp) { struct mlx4_ib_gid_entry *ge, *tmp; @@ -1224,6 +1362,37 @@ } } +static int handle_eth_ud_smac_index(struct mlx4_ib_dev *dev, struct mlx4_ib_qp *qp, u8 *smac, + struct mlx4_qp_context *context) +{ + struct net_device *ndev; + u64 u64_mac; + int smac_index; + + + ndev = dev->iboe.netdevs[qp->port - 1]; + if (ndev) { + smac = ndev->dev_addr; + u64_mac = mlx4_mac_to_u64(smac); + } else { + u64_mac = dev->dev->caps.def_mac[qp->port]; + } + + context->pri_path.sched_queue = MLX4_IB_DEFAULT_SCHED_QUEUE | ((qp->port - 1) << 6); + if (!qp->pri.smac) { + smac_index = mlx4_register_mac(dev->dev, qp->port, u64_mac); + if (smac_index >= 0) { + qp->pri.candidate_smac_index = smac_index; + qp->pri.candidate_smac = u64_mac; + qp->pri.candidate_smac_port = qp->port; + context->pri_path.grh_mylmc = 0x80 | (u8) smac_index; + } else { + return -ENOENT; + } + } + return 0; +} + static int __mlx4_ib_modify_qp(struct ib_qp *ibqp, const struct ib_qp_attr *attr, int attr_mask, enum ib_qp_state cur_state, enum ib_qp_state new_state) @@ -1235,6 +1404,7 @@ struct mlx4_qp_context *context; enum mlx4_qp_optpar optpar = 0; int sqd_event; + int steer_qp = 0; int err = -EINVAL; context = kzalloc(sizeof *context, GFP_KERNEL); @@ -1319,6 +1489,11 @@ optpar |= MLX4_QP_OPTPAR_COUNTER_INDEX; } else context->pri_path.counter_index = 0xff; + + if (qp->flags & MLX4_IB_QP_NETIF) { + mlx4_ib_steer_qp_reg(dev, qp, 1); + steer_qp = 1; + } } if (attr_mask & IB_QP_PKEY_INDEX) { @@ -1329,7 +1504,7 @@ } if (attr_mask & IB_QP_AV) { - if (mlx4_set_path(dev, &attr->ah_attr, &context->pri_path, + if (mlx4_set_path(dev, attr, attr_mask, qp, &context->pri_path, attr_mask & IB_QP_PORT ? attr->port_num : qp->port)) goto out; @@ -1352,8 +1527,9 @@ dev->dev->caps.pkey_table_len[attr->alt_port_num]) goto out; - if (mlx4_set_path(dev, &attr->alt_ah_attr, &context->alt_path, - attr->alt_port_num)) + if (mlx4_set_alt_path(dev, attr, attr_mask, qp, + &context->alt_path, + attr->alt_port_num)) goto out; context->alt_path.pkey_index = attr->alt_pkey_index; @@ -1458,12 +1634,37 @@ context->pri_path.fl = 0x80; context->pri_path.sched_queue |= MLX4_IB_DEFAULT_SCHED_QUEUE; } + if (rdma_port_get_link_layer(&dev->ib_dev, qp->port) == + IB_LINK_LAYER_ETHERNET) { + if (qp->mlx4_ib_qp_type == MLX4_IB_QPT_TUN_GSI || + qp->mlx4_ib_qp_type == MLX4_IB_QPT_GSI) + context->pri_path.feup = 1 << 7; /* don't fsm */ + /* handle smac_index */ + if (qp->mlx4_ib_qp_type == MLX4_IB_QPT_UD || + qp->mlx4_ib_qp_type == MLX4_IB_QPT_PROXY_GSI || + qp->mlx4_ib_qp_type == MLX4_IB_QPT_TUN_GSI) { + err = handle_eth_ud_smac_index(dev, qp, (u8 *)attr->smac, context); + if (err) + return -EINVAL; + } + } } if (qp->ibqp.qp_type == IB_QPT_RAW_PACKET) context->pri_path.ackto = (context->pri_path.ackto & 0xf8) | MLX4_IB_LINK_TYPE_ETH; + if (ibqp->qp_type == IB_QPT_UD && (new_state == IB_QPS_RTR)) { + int is_eth = rdma_port_get_link_layer( + &dev->ib_dev, qp->port) == + IB_LINK_LAYER_ETHERNET; + if (is_eth) { + context->pri_path.ackto = MLX4_IB_LINK_TYPE_ETH; + optpar |= MLX4_QP_OPTPAR_PRIMARY_ADDR_PATH; + } + } + + if (cur_state == IB_QPS_RTS && new_state == IB_QPS_SQD && attr_mask & IB_QP_EN_SQD_ASYNC_NOTIFY && attr->en_sqd_async_notify) sqd_event = 1; @@ -1534,23 +1735,113 @@ * If we moved a kernel QP to RESET, clean up all old CQ * entries and reinitialize the QP. */ - if (new_state == IB_QPS_RESET && !ibqp->uobject) { - mlx4_ib_cq_clean(recv_cq, qp->mqp.qpn, - ibqp->srq ? to_msrq(ibqp->srq): NULL); - if (send_cq != recv_cq) - mlx4_ib_cq_clean(send_cq, qp->mqp.qpn, NULL); - - qp->rq.head = 0; - qp->rq.tail = 0; - qp->sq.head = 0; - qp->sq.tail = 0; - qp->sq_next_wqe = 0; - if (qp->rq.wqe_cnt) - *qp->db.db = 0; + if (new_state == IB_QPS_RESET) { + if (!ibqp->uobject) { + mlx4_ib_cq_clean(recv_cq, qp->mqp.qpn, + ibqp->srq ? to_msrq(ibqp->srq) : NULL); + if (send_cq != recv_cq) + mlx4_ib_cq_clean(send_cq, qp->mqp.qpn, NULL); + + qp->rq.head = 0; + qp->rq.tail = 0; + qp->sq.head = 0; + qp->sq.tail = 0; + qp->sq_next_wqe = 0; + if (qp->rq.wqe_cnt) + *qp->db.db = 0; + + if (qp->flags & MLX4_IB_QP_NETIF) + mlx4_ib_steer_qp_reg(dev, qp, 0); + } + if (qp->pri.smac) { + mlx4_unregister_mac(dev->dev, qp->pri.smac_port, qp->pri.smac); + qp->pri.smac = 0; + } + if (qp->alt.smac) { + mlx4_unregister_mac(dev->dev, qp->alt.smac_port, qp->alt.smac); + qp->alt.smac = 0; + } + if (qp->pri.vid < 0x1000) { + mlx4_unregister_vlan(dev->dev, qp->pri.vlan_port, qp->pri.vid); + qp->pri.vid = 0xFFFF; + qp->pri.candidate_vid = 0xFFFF; + qp->pri.update_vid = 0; + } + + if (qp->alt.vid < 0x1000) { + mlx4_unregister_vlan(dev->dev, qp->alt.vlan_port, qp->alt.vid); + qp->alt.vid = 0xFFFF; + qp->alt.candidate_vid = 0xFFFF; + qp->alt.update_vid = 0; + } } - out: + if (err && steer_qp) + mlx4_ib_steer_qp_reg(dev, qp, 0); kfree(context); + if (qp->pri.candidate_smac) { + if (err) { + mlx4_unregister_mac(dev->dev, qp->pri.candidate_smac_port, qp->pri.candidate_smac); + } else { + if (qp->pri.smac) + mlx4_unregister_mac(dev->dev, qp->pri.smac_port, qp->pri.smac); + qp->pri.smac = qp->pri.candidate_smac; + qp->pri.smac_index = qp->pri.candidate_smac_index; + qp->pri.smac_port = qp->pri.candidate_smac_port; + } + qp->pri.candidate_smac = 0; + qp->pri.candidate_smac_index = 0; + qp->pri.candidate_smac_port = 0; + } + if (qp->alt.candidate_smac) { + if (err) { + mlx4_unregister_mac(dev->dev, qp->alt.candidate_smac_port, qp->alt.candidate_smac); + } else { + if (qp->alt.smac) + mlx4_unregister_mac(dev->dev, qp->alt.smac_port, qp->alt.smac); + qp->alt.smac = qp->alt.candidate_smac; + qp->alt.smac_index = qp->alt.candidate_smac_index; + qp->alt.smac_port = qp->alt.candidate_smac_port; + } + qp->alt.candidate_smac = 0; + qp->alt.candidate_smac_index = 0; + qp->alt.candidate_smac_port = 0; + } + + if (qp->pri.update_vid) { + if (err) { + if (qp->pri.candidate_vid < 0x1000) + mlx4_unregister_vlan(dev->dev, qp->pri.candidate_vlan_port, + qp->pri.candidate_vid); + } else { + if (qp->pri.vid < 0x1000) + mlx4_unregister_vlan(dev->dev, qp->pri.vlan_port, + qp->pri.vid); + qp->pri.vid = qp->pri.candidate_vid; + qp->pri.vlan_port = qp->pri.candidate_vlan_port; + qp->pri.vlan_index = qp->pri.candidate_vlan_index; + } + qp->pri.candidate_vid = 0xFFFF; + qp->pri.update_vid = 0; + } + + if (qp->alt.update_vid) { + if (err) { + if (qp->alt.candidate_vid < 0x1000) + mlx4_unregister_vlan(dev->dev, qp->alt.candidate_vlan_port, + qp->alt.candidate_vid); + } else { + if (qp->alt.vid < 0x1000) + mlx4_unregister_vlan(dev->dev, qp->alt.vlan_port, + qp->alt.vid); + qp->alt.vid = qp->alt.candidate_vid; + qp->alt.vlan_port = qp->alt.candidate_vlan_port; + qp->alt.vlan_index = qp->alt.candidate_vlan_index; + } + qp->alt.candidate_vid = 0xFFFF; + qp->alt.update_vid = 0; + } + return err; } @@ -1561,13 +1852,21 @@ struct mlx4_ib_qp *qp = to_mqp(ibqp); enum ib_qp_state cur_state, new_state; int err = -EINVAL; - + int ll; mutex_lock(&qp->mutex); cur_state = attr_mask & IB_QP_CUR_STATE ? attr->cur_qp_state : qp->state; new_state = attr_mask & IB_QP_STATE ? attr->qp_state : cur_state; - if (!ib_modify_qp_is_ok(cur_state, new_state, ibqp->qp_type, attr_mask)) { + if (cur_state == new_state && cur_state == IB_QPS_RESET) { + ll = IB_LINK_LAYER_UNSPECIFIED; + } else { + int port = attr_mask & IB_QP_PORT ? attr->port_num : qp->port; + ll = rdma_port_get_link_layer(&dev->ib_dev, port); + } + + if (!ib_modify_qp_is_ok(cur_state, new_state, ibqp->qp_type, + attr_mask, ll)) { pr_debug("qpn 0x%x: invalid attribute mask specified " "for transition %d to %d. qp_type %d," " attr_mask 0x%x\n", @@ -1744,9 +2043,9 @@ { struct ib_device *ib_dev = sqp->qp.ibqp.device; struct mlx4_wqe_mlx_seg *mlx = wqe; + struct mlx4_wqe_ctrl_seg *ctrl = wqe; struct mlx4_wqe_inline_seg *inl = wqe + sizeof *mlx; struct mlx4_ib_ah *ah = to_mah(wr->wr.ud.ah); - struct net_device *ndev; union ib_gid sgid; u16 pkey; int send_size; @@ -1770,12 +2069,11 @@ /* When multi-function is enabled, the ib_core gid * indexes don't necessarily match the hw ones, so * we must use our own cache */ - sgid.global.subnet_prefix = - to_mdev(ib_dev)->sriov.demux[sqp->qp.port - 1]. - subnet_prefix; - sgid.global.interface_id = - to_mdev(ib_dev)->sriov.demux[sqp->qp.port - 1]. - guid_cache[ah->av.ib.gid_index]; + err = mlx4_get_roce_gid_from_slave(to_mdev(ib_dev)->dev, + be32_to_cpu(ah->av.ib.port_pd) >> 24, + ah->av.ib.gid_index, &sgid.raw[0]); + if (err) + return err; } else { err = ib_get_cached_gid(ib_dev, be32_to_cpu(ah->av.ib.port_pd) >> 24, @@ -1784,8 +2082,10 @@ return err; } - vlan = rdma_get_vlan_id(&sgid); - is_vlan = vlan < 0x1000; + if (ah->av.eth.vlan != 0xffff) { + vlan = be16_to_cpu(ah->av.eth.vlan) & 0x0fff; + is_vlan = 1; + } } ib_ud_header_init(send_size, !is_eth, is_eth, is_vlan, is_grh, 0, &sqp->ud_header); @@ -1802,6 +2102,9 @@ sqp->ud_header.grh.flow_label = ah->av.ib.sl_tclass_flowlabel & cpu_to_be32(0xfffff); sqp->ud_header.grh.hop_limit = ah->av.ib.hop_limit; + if (is_eth) + memcpy(sqp->ud_header.grh.source_gid.raw, sgid.raw, 16); + else { if (mlx4_is_mfunc(to_mdev(ib_dev)->dev)) { /* When multi-function is enabled, the ib_core gid * indexes don't necessarily match the hw ones, so @@ -1817,6 +2120,7 @@ be32_to_cpu(ah->av.ib.port_pd) >> 24, ah->av.ib.gid_index, &sqp->ud_header.grh.source_gid); + } memcpy(sqp->ud_header.grh.destination_gid.raw, ah->av.ib.dgid, 16); } @@ -1849,16 +2153,23 @@ if (is_eth) { u8 *smac; + struct in6_addr in6; + u16 pcp = (be32_to_cpu(ah->av.ib.sl_tclass_flowlabel) >> 29) << 13; mlx->sched_prio = cpu_to_be16(pcp); memcpy(sqp->ud_header.eth.dmac_h, ah->av.eth.mac, 6); /* FIXME: cache smac value? */ - ndev = to_mdev(sqp->qp.ibqp.device)->iboe.netdevs[sqp->qp.port - 1]; - if (!ndev) - return -ENODEV; - smac = ndev->dev_addr; + memcpy(&ctrl->srcrb_flags16[0], ah->av.eth.mac, 2); + memcpy(&ctrl->imm, ah->av.eth.mac + 2, 4); + memcpy(&in6, sgid.raw, sizeof(in6)); + + if (!mlx4_is_mfunc(to_mdev(ib_dev)->dev)) + smac = to_mdev(sqp->qp.ibqp.device)-> + iboe.netdevs[sqp->qp.port - 1]->dev_addr; + else /* use the src mac of the tunnel */ + smac = ah->av.eth.s_mac; memcpy(sqp->ud_header.eth.smac_h, smac, 6); if (!memcmp(sqp->ud_header.eth.smac_h, sqp->ud_header.eth.dmac_h, 6)) mlx->flags |= cpu_to_be32(MLX4_WQE_CTRL_FORCE_LOOPBACK); @@ -2090,6 +2401,8 @@ hdr.remote_qpn = cpu_to_be32(wr->wr.ud.remote_qpn); hdr.pkey_index = cpu_to_be16(wr->wr.ud.pkey_index); hdr.qkey = cpu_to_be32(wr->wr.ud.remote_qkey); + memcpy(hdr.mac, ah->av.eth.mac, 6); + hdr.vlan = ah->av.eth.vlan; spc = MLX4_INLINE_ALIGN - ((unsigned long) (inl + 1) & (MLX4_INLINE_ALIGN - 1)); @@ -2762,6 +3075,9 @@ if (qp->flags & MLX4_IB_QP_LSO) qp_init_attr->create_flags |= IB_QP_CREATE_IPOIB_UD_LSO; + if (qp->flags & MLX4_IB_QP_NETIF) + qp_init_attr->create_flags |= IB_QP_CREATE_NETIF_QP; + qp_init_attr->sq_sig_type = qp->sq_signal_bits == cpu_to_be32(MLX4_WQE_CTRL_CQ_UPDATE) ? IB_SIGNAL_ALL_WR : IB_SIGNAL_REQ_WR; --- linux-3.13.0.orig/drivers/infiniband/hw/mlx4/sysfs.c +++ linux-3.13.0/drivers/infiniband/hw/mlx4/sysfs.c @@ -582,8 +582,10 @@ p->pkey_group.attrs = alloc_group_attrs(show_port_pkey, store_port_pkey, dev->dev->caps.pkey_table_len[port_num]); - if (!p->pkey_group.attrs) + if (!p->pkey_group.attrs) { + ret = -ENOMEM; goto err_alloc; + } ret = sysfs_create_group(&p->kobj, &p->pkey_group); if (ret) @@ -591,8 +593,10 @@ p->gid_group.name = "gid_idx"; p->gid_group.attrs = alloc_group_attrs(show_port_gid_idx, NULL, 1); - if (!p->gid_group.attrs) + if (!p->gid_group.attrs) { + ret = -ENOMEM; goto err_free_pkey; + } ret = sysfs_create_group(&p->kobj, &p->gid_group); if (ret) @@ -623,6 +627,7 @@ int port; struct kobject *p, *t; struct mlx4_port *mport; + struct mlx4_active_ports actv_ports; get_name(dev, name, slave, sizeof name); @@ -645,7 +650,11 @@ goto err_ports; } + actv_ports = mlx4_get_active_ports(dev->dev, slave); + for (port = 1; port <= dev->dev->caps.num_ports; ++port) { + if (!test_bit(port - 1, actv_ports.ports)) + continue; err = add_port(dev, port, slave); if (err) goto err_add; --- linux-3.13.0.orig/drivers/infiniband/hw/mlx5/Kconfig +++ linux-3.13.0/drivers/infiniband/hw/mlx5/Kconfig @@ -1,6 +1,6 @@ config MLX5_INFINIBAND tristate "Mellanox Connect-IB HCA support" - depends on NETDEVICES && ETHERNET && PCI && X86 + depends on NETDEVICES && ETHERNET && PCI select NET_VENDOR_MELLANOX select MLX5_CORE ---help--- --- linux-3.13.0.orig/drivers/infiniband/hw/mlx5/cq.c +++ linux-3.13.0/drivers/infiniband/hw/mlx5/cq.c @@ -73,14 +73,24 @@ return get_cqe_from_buf(&cq->buf, n, cq->mcq.cqe_sz); } +static u8 sw_ownership_bit(int n, int nent) +{ + return (n & nent) ? 1 : 0; +} + static void *get_sw_cqe(struct mlx5_ib_cq *cq, int n) { void *cqe = get_cqe(cq, n & cq->ibcq.cqe); struct mlx5_cqe64 *cqe64; cqe64 = (cq->mcq.cqe_sz == 64) ? cqe : cqe + 64; - return ((cqe64->op_own & MLX5_CQE_OWNER_MASK) ^ - !!(n & (cq->ibcq.cqe + 1))) ? NULL : cqe; + + if (likely((cqe64->op_own) >> 4 != MLX5_CQE_INVALID) && + !((cqe64->op_own & MLX5_CQE_OWNER_MASK) ^ !!(n & (cq->ibcq.cqe + 1)))) { + return cqe; + } else { + return NULL; + } } static void *next_cqe_sw(struct mlx5_ib_cq *cq) @@ -351,6 +361,11 @@ qp->sq.last_poll = tail; } +static void free_cq_buf(struct mlx5_ib_dev *dev, struct mlx5_ib_cq_buf *buf) +{ + mlx5_buf_free(&dev->mdev, &buf->buf); +} + static int mlx5_poll_one(struct mlx5_ib_cq *cq, struct mlx5_ib_qp **cur_qp, struct ib_wc *wc) @@ -366,6 +381,7 @@ void *cqe; int idx; +repoll: cqe = next_cqe_sw(cq); if (!cqe) return -EAGAIN; @@ -379,7 +395,18 @@ */ rmb(); - /* TBD: resize CQ */ + opcode = cqe64->op_own >> 4; + if (unlikely(opcode == MLX5_CQE_RESIZE_CQ)) { + if (likely(cq->resize_buf)) { + free_cq_buf(dev, &cq->buf); + cq->buf = *cq->resize_buf; + kfree(cq->resize_buf); + cq->resize_buf = NULL; + goto repoll; + } else { + mlx5_ib_warn(dev, "unexpected resize cqe\n"); + } + } qpn = ntohl(cqe64->sop_drop_qpn) & 0xffffff; if (!*cur_qp || (qpn != (*cur_qp)->ibqp.qp_num)) { @@ -398,7 +425,6 @@ } wc->qp = &(*cur_qp)->ibqp; - opcode = cqe64->op_own >> 4; switch (opcode) { case MLX5_CQE_REQ: wq = &(*cur_qp)->sq; @@ -503,15 +529,11 @@ return err; buf->cqe_size = cqe_size; + buf->nent = nent; return 0; } -static void free_cq_buf(struct mlx5_ib_dev *dev, struct mlx5_ib_cq_buf *buf) -{ - mlx5_buf_free(&dev->mdev, &buf->buf); -} - static int create_cq_user(struct mlx5_ib_dev *dev, struct ib_udata *udata, struct ib_ucontext *context, struct mlx5_ib_cq *cq, int entries, struct mlx5_create_cq_mbox_in **cqb, @@ -576,16 +598,16 @@ ib_umem_release(cq->buf.umem); } -static void init_cq_buf(struct mlx5_ib_cq *cq, int nent) +static void init_cq_buf(struct mlx5_ib_cq *cq, struct mlx5_ib_cq_buf *buf) { int i; void *cqe; struct mlx5_cqe64 *cqe64; - for (i = 0; i < nent; i++) { - cqe = get_cqe(cq, i); - cqe64 = (cq->buf.cqe_size == 64) ? cqe : cqe + 64; - cqe64->op_own = 0xf1; + for (i = 0; i < buf->nent; i++) { + cqe = get_cqe_from_buf(buf, i, buf->cqe_size); + cqe64 = buf->cqe_size == 64 ? cqe : cqe + 64; + cqe64->op_own = MLX5_CQE_INVALID << 4; } } @@ -610,7 +632,7 @@ if (err) goto err_db; - init_cq_buf(cq, entries); + init_cq_buf(cq, &cq->buf); *inlen = sizeof(**cqb) + sizeof(*(*cqb)->pas) * cq->buf.buf.npages; *cqb = mlx5_vzalloc(*inlen); @@ -818,12 +840,266 @@ int mlx5_ib_modify_cq(struct ib_cq *cq, u16 cq_count, u16 cq_period) { - return -ENOSYS; + struct mlx5_modify_cq_mbox_in *in; + struct mlx5_ib_dev *dev = to_mdev(cq->device); + struct mlx5_ib_cq *mcq = to_mcq(cq); + int err; + u32 fsel; + + if (!(dev->mdev.caps.flags & MLX5_DEV_CAP_FLAG_CQ_MODER)) + return -ENOSYS; + + in = kzalloc(sizeof(*in), GFP_KERNEL); + if (!in) + return -ENOMEM; + + in->cqn = cpu_to_be32(mcq->mcq.cqn); + fsel = (MLX5_CQ_MODIFY_PERIOD | MLX5_CQ_MODIFY_COUNT); + in->ctx.cq_period = cpu_to_be16(cq_period); + in->ctx.cq_max_count = cpu_to_be16(cq_count); + in->field_select = cpu_to_be32(fsel); + err = mlx5_core_modify_cq(&dev->mdev, &mcq->mcq, in, sizeof(*in)); + kfree(in); + + if (err) + mlx5_ib_warn(dev, "modify cq 0x%x failed\n", mcq->mcq.cqn); + + return err; +} + +static int resize_user(struct mlx5_ib_dev *dev, struct mlx5_ib_cq *cq, + int entries, struct ib_udata *udata, int *npas, + int *page_shift, int *cqe_size) +{ + struct mlx5_ib_resize_cq ucmd; + struct ib_umem *umem; + int err; + int npages; + struct ib_ucontext *context = cq->buf.umem->context; + + err = ib_copy_from_udata(&ucmd, udata, sizeof(ucmd)); + if (err) + return err; + + if (ucmd.reserved0 || ucmd.reserved1) + return -EINVAL; + + umem = ib_umem_get(context, ucmd.buf_addr, entries * ucmd.cqe_size, + IB_ACCESS_LOCAL_WRITE, 1); + if (IS_ERR(umem)) { + err = PTR_ERR(umem); + return err; + } + + mlx5_ib_cont_pages(umem, ucmd.buf_addr, &npages, page_shift, + npas, NULL); + + cq->resize_umem = umem; + *cqe_size = ucmd.cqe_size; + + return 0; +} + +static void un_resize_user(struct mlx5_ib_cq *cq) +{ + ib_umem_release(cq->resize_umem); +} + +static int resize_kernel(struct mlx5_ib_dev *dev, struct mlx5_ib_cq *cq, + int entries, int cqe_size) +{ + int err; + + cq->resize_buf = kzalloc(sizeof(*cq->resize_buf), GFP_KERNEL); + if (!cq->resize_buf) + return -ENOMEM; + + err = alloc_cq_buf(dev, cq->resize_buf, entries, cqe_size); + if (err) + goto ex; + + init_cq_buf(cq, cq->resize_buf); + + return 0; + +ex: + kfree(cq->resize_buf); + return err; +} + +static void un_resize_kernel(struct mlx5_ib_dev *dev, struct mlx5_ib_cq *cq) +{ + free_cq_buf(dev, cq->resize_buf); + cq->resize_buf = NULL; +} + +static int copy_resize_cqes(struct mlx5_ib_cq *cq) +{ + struct mlx5_ib_dev *dev = to_mdev(cq->ibcq.device); + struct mlx5_cqe64 *scqe64; + struct mlx5_cqe64 *dcqe64; + void *start_cqe; + void *scqe; + void *dcqe; + int ssize; + int dsize; + int i; + u8 sw_own; + + ssize = cq->buf.cqe_size; + dsize = cq->resize_buf->cqe_size; + if (ssize != dsize) { + mlx5_ib_warn(dev, "resize from different cqe size is not supported\n"); + return -EINVAL; + } + + i = cq->mcq.cons_index; + scqe = get_sw_cqe(cq, i); + scqe64 = ssize == 64 ? scqe : scqe + 64; + start_cqe = scqe; + if (!scqe) { + mlx5_ib_warn(dev, "expected cqe in sw ownership\n"); + return -EINVAL; + } + + while ((scqe64->op_own >> 4) != MLX5_CQE_RESIZE_CQ) { + dcqe = get_cqe_from_buf(cq->resize_buf, + (i + 1) & (cq->resize_buf->nent), + dsize); + dcqe64 = dsize == 64 ? dcqe : dcqe + 64; + sw_own = sw_ownership_bit(i + 1, cq->resize_buf->nent); + memcpy(dcqe, scqe, dsize); + dcqe64->op_own = (dcqe64->op_own & ~MLX5_CQE_OWNER_MASK) | sw_own; + + ++i; + scqe = get_sw_cqe(cq, i); + scqe64 = ssize == 64 ? scqe : scqe + 64; + if (!scqe) { + mlx5_ib_warn(dev, "expected cqe in sw ownership\n"); + return -EINVAL; + } + + if (scqe == start_cqe) { + pr_warn("resize CQ failed to get resize CQE, CQN 0x%x\n", + cq->mcq.cqn); + return -ENOMEM; + } + } + ++cq->mcq.cons_index; + return 0; } int mlx5_ib_resize_cq(struct ib_cq *ibcq, int entries, struct ib_udata *udata) { - return -ENOSYS; + struct mlx5_ib_dev *dev = to_mdev(ibcq->device); + struct mlx5_ib_cq *cq = to_mcq(ibcq); + struct mlx5_modify_cq_mbox_in *in; + int err; + int npas; + int page_shift; + int inlen; + int uninitialized_var(cqe_size); + unsigned long flags; + + if (!(dev->mdev.caps.flags & MLX5_DEV_CAP_FLAG_RESIZE_CQ)) { + pr_info("Firmware does not support resize CQ\n"); + return -ENOSYS; + } + + if (entries < 1) + return -EINVAL; + + entries = roundup_pow_of_two(entries + 1); + if (entries > dev->mdev.caps.max_cqes + 1) + return -EINVAL; + + if (entries == ibcq->cqe + 1) + return 0; + + mutex_lock(&cq->resize_mutex); + if (udata) { + err = resize_user(dev, cq, entries, udata, &npas, &page_shift, + &cqe_size); + } else { + cqe_size = 64; + err = resize_kernel(dev, cq, entries, cqe_size); + if (!err) { + npas = cq->resize_buf->buf.npages; + page_shift = cq->resize_buf->buf.page_shift; + } + } + + if (err) + goto ex; + + inlen = sizeof(*in) + npas * sizeof(in->pas[0]); + in = mlx5_vzalloc(inlen); + if (!in) { + err = -ENOMEM; + goto ex_resize; + } + + if (udata) + mlx5_ib_populate_pas(dev, cq->resize_umem, page_shift, + in->pas, 0); + else + mlx5_fill_page_array(&cq->resize_buf->buf, in->pas); + + in->field_select = cpu_to_be32(MLX5_MODIFY_CQ_MASK_LOG_SIZE | + MLX5_MODIFY_CQ_MASK_PG_OFFSET | + MLX5_MODIFY_CQ_MASK_PG_SIZE); + in->ctx.log_pg_sz = page_shift - MLX5_ADAPTER_PAGE_SHIFT; + in->ctx.cqe_sz_flags = cqe_sz_to_mlx_sz(cqe_size) << 5; + in->ctx.page_offset = 0; + in->ctx.log_sz_usr_page = cpu_to_be32(ilog2(entries) << 24); + in->hdr.opmod = cpu_to_be16(MLX5_CQ_OPMOD_RESIZE); + in->cqn = cpu_to_be32(cq->mcq.cqn); + + err = mlx5_core_modify_cq(&dev->mdev, &cq->mcq, in, inlen); + if (err) + goto ex_alloc; + + if (udata) { + cq->ibcq.cqe = entries - 1; + ib_umem_release(cq->buf.umem); + cq->buf.umem = cq->resize_umem; + cq->resize_umem = NULL; + } else { + struct mlx5_ib_cq_buf tbuf; + int resized = 0; + + spin_lock_irqsave(&cq->lock, flags); + if (cq->resize_buf) { + err = copy_resize_cqes(cq); + if (!err) { + tbuf = cq->buf; + cq->buf = *cq->resize_buf; + kfree(cq->resize_buf); + cq->resize_buf = NULL; + resized = 1; + } + } + cq->ibcq.cqe = entries - 1; + spin_unlock_irqrestore(&cq->lock, flags); + if (resized) + free_cq_buf(dev, &tbuf); + } + mutex_unlock(&cq->resize_mutex); + + mlx5_vfree(in); + return 0; + +ex_alloc: + mlx5_vfree(in); + +ex_resize: + if (udata) + un_resize_user(cq); + else + un_resize_kernel(dev, cq); +ex: + mutex_unlock(&cq->resize_mutex); + return err; } int mlx5_ib_get_cqe_size(struct mlx5_ib_dev *dev, struct ib_cq *ibcq) --- linux-3.13.0.orig/drivers/infiniband/hw/mlx5/main.c +++ linux-3.13.0/drivers/infiniband/hw/mlx5/main.c @@ -46,8 +46,8 @@ #include "mlx5_ib.h" #define DRIVER_NAME "mlx5_ib" -#define DRIVER_VERSION "1.0" -#define DRIVER_RELDATE "June 2013" +#define DRIVER_VERSION "2.2-1" +#define DRIVER_RELDATE "Feb 2014" MODULE_AUTHOR("Eli Cohen "); MODULE_DESCRIPTION("Mellanox Connect-IB HCA IB driver"); @@ -261,8 +261,7 @@ props->device_cap_flags = IB_DEVICE_CHANGE_PHY_PORT | IB_DEVICE_PORT_ACTIVE_EVENT | IB_DEVICE_SYS_IMAGE_GUID | - IB_DEVICE_RC_RNR_NAK_GEN | - IB_DEVICE_BLOCK_MULTICAST_LOOPBACK; + IB_DEVICE_RC_RNR_NAK_GEN; flags = dev->mdev.caps.flags; if (flags & MLX5_DEV_CAP_FLAG_BAD_PKEY_CNTR) props->device_cap_flags |= IB_DEVICE_BAD_PKEY_CNTR; @@ -536,34 +535,51 @@ struct ib_udata *udata) { struct mlx5_ib_dev *dev = to_mdev(ibdev); - struct mlx5_ib_alloc_ucontext_req req; + struct mlx5_ib_alloc_ucontext_req_v2 req; struct mlx5_ib_alloc_ucontext_resp resp; struct mlx5_ib_ucontext *context; struct mlx5_uuar_info *uuari; struct mlx5_uar *uars; + int gross_uuars; int num_uars; + int ver; int uuarn; int err; int i; + int reqlen; if (!dev->ib_active) return ERR_PTR(-EAGAIN); - err = ib_copy_from_udata(&req, udata, sizeof(req)); + memset(&req, 0, sizeof(req)); + reqlen = udata->inlen - sizeof(struct ib_uverbs_cmd_hdr); + if (reqlen == sizeof(struct mlx5_ib_alloc_ucontext_req)) + ver = 0; + else if (reqlen == sizeof(struct mlx5_ib_alloc_ucontext_req_v2)) + ver = 2; + else + return ERR_PTR(-EINVAL); + + err = ib_copy_from_udata(&req, udata, reqlen); if (err) return ERR_PTR(err); + if (req.flags || req.reserved) + return ERR_PTR(-EINVAL); + if (req.total_num_uuars > MLX5_MAX_UUARS) return ERR_PTR(-ENOMEM); if (req.total_num_uuars == 0) return ERR_PTR(-EINVAL); - req.total_num_uuars = ALIGN(req.total_num_uuars, MLX5_BF_REGS_PER_PAGE); + req.total_num_uuars = ALIGN(req.total_num_uuars, + MLX5_NON_FP_BF_REGS_PER_PAGE); if (req.num_low_latency_uuars > req.total_num_uuars - 1) return ERR_PTR(-EINVAL); - num_uars = req.total_num_uuars / MLX5_BF_REGS_PER_PAGE; + num_uars = req.total_num_uuars / MLX5_NON_FP_BF_REGS_PER_PAGE; + gross_uuars = num_uars * MLX5_BF_REGS_PER_PAGE; resp.qp_tab_size = 1 << dev->mdev.caps.log_max_qp; resp.bf_reg_size = dev->mdev.caps.bf_reg_size; resp.cache_line_size = L1_CACHE_BYTES; @@ -585,7 +601,7 @@ goto out_ctx; } - uuari->bitmap = kcalloc(BITS_TO_LONGS(req.total_num_uuars), + uuari->bitmap = kcalloc(BITS_TO_LONGS(gross_uuars), sizeof(*uuari->bitmap), GFP_KERNEL); if (!uuari->bitmap) { @@ -595,13 +611,13 @@ /* * clear all fast path uuars */ - for (i = 0; i < req.total_num_uuars; i++) { + for (i = 0; i < gross_uuars; i++) { uuarn = i & 3; if (uuarn == 2 || uuarn == 3) set_bit(i, uuari->bitmap); } - uuari->count = kcalloc(req.total_num_uuars, sizeof(*uuari->count), GFP_KERNEL); + uuari->count = kcalloc(gross_uuars, sizeof(*uuari->count), GFP_KERNEL); if (!uuari->count) { err = -ENOMEM; goto out_bitmap; @@ -623,6 +639,7 @@ if (err) goto out_uars; + uuari->ver = ver; uuari->num_low_latency_uuars = req.num_low_latency_uuars; uuari->uars = uars; uuari->num_uars = num_uars; --- linux-3.13.0.orig/drivers/infiniband/hw/mlx5/mlx5_ib.h +++ linux-3.13.0/drivers/infiniband/hw/mlx5/mlx5_ib.h @@ -195,6 +195,7 @@ struct mlx5_buf buf; struct ib_umem *umem; int cqe_size; + int nent; }; enum mlx5_ib_qp_flags { @@ -220,7 +221,7 @@ /* protect resize cq */ struct mutex resize_mutex; - struct mlx5_ib_cq_resize *resize_buf; + struct mlx5_ib_cq_buf *resize_buf; struct ib_umem *resize_umem; int cqe_size; }; @@ -264,7 +265,6 @@ enum ib_wc_status status; struct mlx5_ib_dev *dev; struct mlx5_create_mkey_mbox_out out; - unsigned long start; }; struct mlx5_ib_fast_reg_page_list { --- linux-3.13.0.orig/drivers/infiniband/hw/mlx5/mr.c +++ linux-3.13.0/drivers/infiniband/hw/mlx5/mr.c @@ -146,7 +146,6 @@ spin_lock_irq(&ent->lock); ent->pending++; spin_unlock_irq(&ent->lock); - mr->start = jiffies; err = mlx5_core_create_mkey(&dev->mdev, &mr->mmr, in, sizeof(*in), reg_mr_callback, mr, &mr->out); --- linux-3.13.0.orig/drivers/infiniband/hw/mlx5/qp.c +++ linux-3.13.0/drivers/infiniband/hw/mlx5/qp.c @@ -216,7 +216,9 @@ case IB_QPT_UC: size += sizeof(struct mlx5_wqe_ctrl_seg) + - sizeof(struct mlx5_wqe_raddr_seg); + sizeof(struct mlx5_wqe_raddr_seg) + + sizeof(struct mlx5_wqe_umr_ctrl_seg) + + sizeof(struct mlx5_mkey_seg); break; case IB_QPT_UD: @@ -340,14 +342,57 @@ return 1; } +static int first_med_uuar(void) +{ + return 1; +} + +static int next_uuar(int n) +{ + n++; + + while (((n % 4) & 2)) + n++; + + return n; +} + +static int num_med_uuar(struct mlx5_uuar_info *uuari) +{ + int n; + + n = uuari->num_uars * MLX5_NON_FP_BF_REGS_PER_PAGE - + uuari->num_low_latency_uuars - 1; + + return n >= 0 ? n : 0; +} + +static int max_uuari(struct mlx5_uuar_info *uuari) +{ + return uuari->num_uars * 4; +} + +static int first_hi_uuar(struct mlx5_uuar_info *uuari) +{ + int med; + int i; + int t; + + med = num_med_uuar(uuari); + for (t = 0, i = first_med_uuar();; i = next_uuar(i)) { + t++; + if (t == med) + return next_uuar(i); + } + + return 0; +} + static int alloc_high_class_uuar(struct mlx5_uuar_info *uuari) { - int nuuars = uuari->num_uars * MLX5_BF_REGS_PER_PAGE; - int start_uuar; int i; - start_uuar = nuuars - uuari->num_low_latency_uuars; - for (i = start_uuar; i < nuuars; i++) { + for (i = first_hi_uuar(uuari); i < max_uuari(uuari); i = next_uuar(i)) { if (!test_bit(i, uuari->bitmap)) { set_bit(i, uuari->bitmap); uuari->count[i]++; @@ -360,19 +405,10 @@ static int alloc_med_class_uuar(struct mlx5_uuar_info *uuari) { - int nuuars = uuari->num_uars * MLX5_BF_REGS_PER_PAGE; - int minidx = 1; - int uuarn; - int end; + int minidx = first_med_uuar(); int i; - end = nuuars - uuari->num_low_latency_uuars; - - for (i = 1; i < end; i++) { - uuarn = i & 3; - if (uuarn == 2 || uuarn == 3) - continue; - + for (i = first_med_uuar(); i < first_hi_uuar(uuari); i = next_uuar(i)) { if (uuari->count[i] < uuari->count[minidx]) minidx = i; } @@ -394,11 +430,17 @@ break; case MLX5_IB_LATENCY_CLASS_MEDIUM: - uuarn = alloc_med_class_uuar(uuari); + if (uuari->ver < 2) + uuarn = -ENOMEM; + else + uuarn = alloc_med_class_uuar(uuari); break; case MLX5_IB_LATENCY_CLASS_HIGH: - uuarn = alloc_high_class_uuar(uuari); + if (uuari->ver < 2) + uuarn = -ENOMEM; + else + uuarn = alloc_high_class_uuar(uuari); break; case MLX5_IB_LATENCY_CLASS_FAST_PATH: @@ -489,12 +531,12 @@ { struct mlx5_ib_ucontext *context; struct mlx5_ib_create_qp ucmd; - int page_shift; + int page_shift = 0; int uar_index; int npages; - u32 offset; + u32 offset = 0; int uuarn; - int ncont; + int ncont = 0; int err; err = ib_copy_from_udata(&ucmd, udata, sizeof(ucmd)); @@ -510,11 +552,16 @@ uuarn = alloc_uuar(&context->uuari, MLX5_IB_LATENCY_CLASS_HIGH); if (uuarn < 0) { mlx5_ib_dbg(dev, "failed to allocate low latency UUAR\n"); - mlx5_ib_dbg(dev, "reverting to high latency\n"); - uuarn = alloc_uuar(&context->uuari, MLX5_IB_LATENCY_CLASS_LOW); + mlx5_ib_dbg(dev, "reverting to medium latency\n"); + uuarn = alloc_uuar(&context->uuari, MLX5_IB_LATENCY_CLASS_MEDIUM); if (uuarn < 0) { - mlx5_ib_dbg(dev, "uuar allocation failed\n"); - return uuarn; + mlx5_ib_dbg(dev, "failed to allocate medium latency UUAR\n"); + mlx5_ib_dbg(dev, "reverting to high latency\n"); + uuarn = alloc_uuar(&context->uuari, MLX5_IB_LATENCY_CLASS_LOW); + if (uuarn < 0) { + mlx5_ib_warn(dev, "uuar allocation failed\n"); + return uuarn; + } } } @@ -525,23 +572,29 @@ if (err) goto err_uuar; - qp->umem = ib_umem_get(pd->uobject->context, ucmd.buf_addr, - qp->buf_size, 0, 0); - if (IS_ERR(qp->umem)) { - mlx5_ib_dbg(dev, "umem_get failed\n"); - err = PTR_ERR(qp->umem); - goto err_uuar; + if (ucmd.buf_addr && qp->buf_size) { + qp->umem = ib_umem_get(pd->uobject->context, ucmd.buf_addr, + qp->buf_size, 0, 0); + if (IS_ERR(qp->umem)) { + mlx5_ib_dbg(dev, "umem_get failed\n"); + err = PTR_ERR(qp->umem); + goto err_uuar; + } + } else { + qp->umem = NULL; } - mlx5_ib_cont_pages(qp->umem, ucmd.buf_addr, &npages, &page_shift, - &ncont, NULL); - err = mlx5_ib_get_buf_offset(ucmd.buf_addr, page_shift, &offset); - if (err) { - mlx5_ib_warn(dev, "bad offset\n"); - goto err_umem; + if (qp->umem) { + mlx5_ib_cont_pages(qp->umem, ucmd.buf_addr, &npages, &page_shift, + &ncont, NULL); + err = mlx5_ib_get_buf_offset(ucmd.buf_addr, page_shift, &offset); + if (err) { + mlx5_ib_warn(dev, "bad offset\n"); + goto err_umem; + } + mlx5_ib_dbg(dev, "addr 0x%llx, size %d, npages %d, page_shift %d, ncont %d, offset %d\n", + ucmd.buf_addr, qp->buf_size, npages, page_shift, ncont, offset); } - mlx5_ib_dbg(dev, "addr 0x%llx, size %d, npages %d, page_shift %d, ncont %d, offset %d\n", - ucmd.buf_addr, qp->buf_size, npages, page_shift, ncont, offset); *inlen = sizeof(**in) + sizeof(*(*in)->pas) * ncont; *in = mlx5_vzalloc(*inlen); @@ -549,7 +602,8 @@ err = -ENOMEM; goto err_umem; } - mlx5_ib_populate_pas(dev, qp->umem, page_shift, (*in)->pas, 0); + if (qp->umem) + mlx5_ib_populate_pas(dev, qp->umem, page_shift, (*in)->pas, 0); (*in)->ctx.log_pg_sz_remote_qpn = cpu_to_be32((page_shift - MLX5_ADAPTER_PAGE_SHIFT) << 24); (*in)->ctx.params2 = cpu_to_be32(offset << 6); @@ -580,7 +634,8 @@ mlx5_vfree(*in); err_umem: - ib_umem_release(qp->umem); + if (qp->umem) + ib_umem_release(qp->umem); err_uuar: free_uuar(&context->uuari, uuarn); @@ -593,7 +648,8 @@ context = to_mucontext(pd->uobject->context); mlx5_ib_db_unmap_user(context, &qp->db); - ib_umem_release(qp->umem); + if (qp->umem) + ib_umem_release(qp->umem); free_uuar(&context->uuari, qp->uuarn); } @@ -609,8 +665,8 @@ int err; uuari = &dev->mdev.priv.uuari; - if (init_attr->create_flags & IB_QP_CREATE_BLOCK_MULTICAST_LOOPBACK) - qp->flags |= MLX5_IB_QP_BLOCK_MULTICAST_LOOPBACK; + if (init_attr->create_flags) + return -EINVAL; if (init_attr->qp_type == MLX5_IB_QPT_REG_UMR) lc = MLX5_IB_LATENCY_CLASS_FAST_PATH; @@ -1616,7 +1672,8 @@ new_state = attr_mask & IB_QP_STATE ? attr->qp_state : cur_state; if (ibqp->qp_type != MLX5_IB_QPT_REG_UMR && - !ib_modify_qp_is_ok(cur_state, new_state, ibqp->qp_type, attr_mask)) + !ib_modify_qp_is_ok(cur_state, new_state, ibqp->qp_type, attr_mask, + IB_LINK_LAYER_UNSPECIFIED)) goto out; if ((attr_mask & IB_QP_PORT) && @@ -2212,6 +2269,10 @@ qp->db.db[MLX5_SND_DBR] = cpu_to_be32(qp->sq.cur_post); + /* Make sure doorbell record is visible to the HCA before + * we hit doorbell */ + wmb(); + if (bf->need_lock) spin_lock(&bf->lock); --- linux-3.13.0.orig/drivers/infiniband/hw/mlx5/user.h +++ linux-3.13.0/drivers/infiniband/hw/mlx5/user.h @@ -62,6 +62,13 @@ __u32 num_low_latency_uuars; }; +struct mlx5_ib_alloc_ucontext_req_v2 { + __u32 total_num_uuars; + __u32 num_low_latency_uuars; + __u32 flags; + __u32 reserved; +}; + struct mlx5_ib_alloc_ucontext_resp { __u32 qp_tab_size; __u32 bf_reg_size; @@ -93,6 +100,9 @@ struct mlx5_ib_resize_cq { __u64 buf_addr; + __u16 cqe_size; + __u16 reserved0; + __u32 reserved1; }; struct mlx5_ib_create_srq { --- linux-3.13.0.orig/drivers/infiniband/hw/mthca/mthca_provider.c +++ linux-3.13.0/drivers/infiniband/hw/mthca/mthca_provider.c @@ -695,6 +695,7 @@ if (context && ib_copy_to_udata(udata, &cq->cqn, sizeof (__u32))) { mthca_free_cq(to_mdev(ibdev), cq); + err = -EFAULT; goto err_free; } --- linux-3.13.0.orig/drivers/infiniband/hw/mthca/mthca_qp.c +++ linux-3.13.0/drivers/infiniband/hw/mthca/mthca_qp.c @@ -860,7 +860,8 @@ new_state = attr_mask & IB_QP_STATE ? attr->qp_state : cur_state; - if (!ib_modify_qp_is_ok(cur_state, new_state, ibqp->qp_type, attr_mask)) { + if (!ib_modify_qp_is_ok(cur_state, new_state, ibqp->qp_type, attr_mask, + IB_LINK_LAYER_UNSPECIFIED)) { mthca_dbg(dev, "Bad QP transition (transport %d) " "%d->%d with attr 0x%08x\n", qp->transport, cur_state, new_state, --- linux-3.13.0.orig/drivers/infiniband/hw/nes/nes.c +++ linux-3.13.0/drivers/infiniband/hw/nes/nes.c @@ -675,8 +675,11 @@ INIT_DELAYED_WORK(&nesdev->work, nes_recheck_link_status); /* Initialize network devices */ - if ((netdev = nes_netdev_init(nesdev, mmio_regs)) == NULL) + netdev = nes_netdev_init(nesdev, mmio_regs); + if (netdev == NULL) { + ret = -ENOMEM; goto bail7; + } /* Register network device */ ret = register_netdev(netdev); --- linux-3.13.0.orig/drivers/infiniband/hw/nes/nes_cm.c +++ linux-3.13.0/drivers/infiniband/hw/nes/nes_cm.c @@ -1354,8 +1354,7 @@ neigh->ha, ntohl(rt->rt_gateway)); if (arpindex >= 0) { - if (!memcmp(nesadapter->arp_table[arpindex].mac_addr, - neigh->ha, ETH_ALEN)) { + if (ether_addr_equal(nesadapter->arp_table[arpindex].mac_addr, neigh->ha)) { /* Mac address same as in nes_arp_table */ goto out; } --- linux-3.13.0.orig/drivers/infiniband/hw/nes/nes_verbs.c +++ linux-3.13.0/drivers/infiniband/hw/nes/nes_verbs.c @@ -1186,7 +1186,7 @@ nes_free_resource(nesadapter, nesadapter->allocated_qps, qp_num); kfree(nesqp->allocated_buffer); nes_debug(NES_DBG_QP, "ib_copy_from_udata() Failed \n"); - return NULL; + return ERR_PTR(-EFAULT); } if (req.user_wqe_buffers) { virt_wqs = 1; --- linux-3.13.0.orig/drivers/infiniband/hw/ocrdma/Kconfig +++ linux-3.13.0/drivers/infiniband/hw/ocrdma/Kconfig @@ -1,6 +1,6 @@ config INFINIBAND_OCRDMA tristate "Emulex One Connect HCA support" - depends on ETHERNET && NETDEVICES && PCI && (IPV6 || IPV6=n) + depends on ETHERNET && NETDEVICES && PCI && INET && (IPV6 || IPV6=n) select NET_VENDOR_EMULEX select BE2NET ---help--- --- linux-3.13.0.orig/drivers/infiniband/hw/ocrdma/ocrdma.h +++ linux-3.13.0/drivers/infiniband/hw/ocrdma/ocrdma.h @@ -423,5 +423,17 @@ OCRDMA_CQE_WRITE_IMM) ? 1 : 0; } +static inline int ocrdma_resolve_dmac(struct ocrdma_dev *dev, + struct ib_ah_attr *ah_attr, u8 *mac_addr) +{ + struct in6_addr in6; + + memcpy(&in6, ah_attr->grh.dgid.raw, sizeof(in6)); + if (rdma_is_multicast_addr(&in6)) + rdma_get_mcast_mac(&in6, mac_addr); + else + memcpy(mac_addr, ah_attr->dmac, ETH_ALEN); + return 0; +} #endif --- linux-3.13.0.orig/drivers/infiniband/hw/ocrdma/ocrdma_ah.c +++ linux-3.13.0/drivers/infiniband/hw/ocrdma/ocrdma_ah.c @@ -49,7 +49,7 @@ ah->sgid_index = attr->grh.sgid_index; - vlan_tag = rdma_get_vlan_id(&attr->grh.dgid); + vlan_tag = attr->vlan_id; if (!vlan_tag || (vlan_tag > 0xFFF)) vlan_tag = dev->pvid; if (vlan_tag && (vlan_tag < 0x1000)) { @@ -64,7 +64,8 @@ eth_sz = sizeof(struct ocrdma_eth_basic); } memcpy(ð.smac[0], &dev->nic_info.mac_addr[0], ETH_ALEN); - status = ocrdma_resolve_dgid(dev, &attr->grh.dgid, ð.dmac[0]); + memcpy(ð.dmac[0], attr->dmac, ETH_ALEN); + status = ocrdma_resolve_dmac(dev, attr, ð.dmac[0]); if (status) return status; status = ocrdma_query_gid(&dev->ibdev, 1, attr->grh.sgid_index, @@ -84,6 +85,7 @@ memcpy((u8 *)ah->av + eth_sz, &grh, sizeof(struct ocrdma_grh)); if (vlan_enabled) ah->av->valid |= OCRDMA_AV_VLAN_VALID; + ah->av->valid = cpu_to_le32(ah->av->valid); return status; } --- linux-3.13.0.orig/drivers/infiniband/hw/ocrdma/ocrdma_hw.c +++ linux-3.13.0/drivers/infiniband/hw/ocrdma/ocrdma_hw.c @@ -2076,23 +2076,6 @@ return status; } -int ocrdma_resolve_dgid(struct ocrdma_dev *dev, union ib_gid *dgid, - u8 *mac_addr) -{ - struct in6_addr in6; - - memcpy(&in6, dgid, sizeof in6); - if (rdma_is_multicast_addr(&in6)) { - rdma_get_mcast_mac(&in6, mac_addr); - } else if (rdma_link_local_addr(&in6)) { - rdma_get_ll_mac(&in6, mac_addr); - } else { - pr_err("%s() fail to resolve mac_addr.\n", __func__); - return -EINVAL; - } - return 0; -} - static int ocrdma_set_av_params(struct ocrdma_qp *qp, struct ocrdma_modify_qp *cmd, struct ib_qp_attr *attrs) @@ -2126,14 +2109,14 @@ qp->sgid_idx = ah_attr->grh.sgid_index; memcpy(&cmd->params.sgid[0], &sgid.raw[0], sizeof(cmd->params.sgid)); - ocrdma_resolve_dgid(qp->dev, &ah_attr->grh.dgid, &mac_addr[0]); + ocrdma_resolve_dmac(qp->dev, ah_attr, &mac_addr[0]); cmd->params.dmac_b0_to_b3 = mac_addr[0] | (mac_addr[1] << 8) | (mac_addr[2] << 16) | (mac_addr[3] << 24); /* convert them to LE format. */ ocrdma_cpu_to_le32(&cmd->params.dgid[0], sizeof(cmd->params.dgid)); ocrdma_cpu_to_le32(&cmd->params.sgid[0], sizeof(cmd->params.sgid)); cmd->params.vlan_dmac_b4_to_b5 = mac_addr[4] | (mac_addr[5] << 8); - vlan_id = rdma_get_vlan_id(&sgid); + vlan_id = ah_attr->vlan_id; if (vlan_id && (vlan_id < 0x1000)) { cmd->params.vlan_dmac_b4_to_b5 |= vlan_id << OCRDMA_QP_PARAMS_VLAN_SHIFT; --- linux-3.13.0.orig/drivers/infiniband/hw/ocrdma/ocrdma_hw.h +++ linux-3.13.0/drivers/infiniband/hw/ocrdma/ocrdma_hw.h @@ -94,7 +94,6 @@ int ocrdma_mbx_get_link_speed(struct ocrdma_dev *dev, u8 *lnk_speed); int ocrdma_query_config(struct ocrdma_dev *, struct ocrdma_mbx_query_config *config); -int ocrdma_resolve_dgid(struct ocrdma_dev *, union ib_gid *dgid, u8 *mac_addr); int ocrdma_mbx_alloc_pd(struct ocrdma_dev *, struct ocrdma_pd *); int ocrdma_mbx_dealloc_pd(struct ocrdma_dev *, struct ocrdma_pd *); --- linux-3.13.0.orig/drivers/infiniband/hw/ocrdma/ocrdma_main.c +++ linux-3.13.0/drivers/infiniband/hw/ocrdma/ocrdma_main.c @@ -67,46 +67,24 @@ guid[7] = mac_addr[5]; } -static void ocrdma_build_sgid_mac(union ib_gid *sgid, unsigned char *mac_addr, - bool is_vlan, u16 vlan_id) -{ - sgid->global.subnet_prefix = cpu_to_be64(0xfe80000000000000LL); - sgid->raw[8] = mac_addr[0] ^ 2; - sgid->raw[9] = mac_addr[1]; - sgid->raw[10] = mac_addr[2]; - if (is_vlan) { - sgid->raw[11] = vlan_id >> 8; - sgid->raw[12] = vlan_id & 0xff; - } else { - sgid->raw[11] = 0xff; - sgid->raw[12] = 0xfe; - } - sgid->raw[13] = mac_addr[3]; - sgid->raw[14] = mac_addr[4]; - sgid->raw[15] = mac_addr[5]; -} - -static bool ocrdma_add_sgid(struct ocrdma_dev *dev, unsigned char *mac_addr, - bool is_vlan, u16 vlan_id) +static bool ocrdma_add_sgid(struct ocrdma_dev *dev, union ib_gid *new_sgid) { int i; - union ib_gid new_sgid; unsigned long flags; memset(&ocrdma_zero_sgid, 0, sizeof(union ib_gid)); - ocrdma_build_sgid_mac(&new_sgid, mac_addr, is_vlan, vlan_id); spin_lock_irqsave(&dev->sgid_lock, flags); for (i = 0; i < OCRDMA_MAX_SGID; i++) { if (!memcmp(&dev->sgid_tbl[i], &ocrdma_zero_sgid, sizeof(union ib_gid))) { /* found free entry */ - memcpy(&dev->sgid_tbl[i], &new_sgid, + memcpy(&dev->sgid_tbl[i], new_sgid, sizeof(union ib_gid)); spin_unlock_irqrestore(&dev->sgid_lock, flags); return true; - } else if (!memcmp(&dev->sgid_tbl[i], &new_sgid, + } else if (!memcmp(&dev->sgid_tbl[i], new_sgid, sizeof(union ib_gid))) { /* entry already present, no addition is required. */ spin_unlock_irqrestore(&dev->sgid_lock, flags); @@ -117,20 +95,17 @@ return false; } -static bool ocrdma_del_sgid(struct ocrdma_dev *dev, unsigned char *mac_addr, - bool is_vlan, u16 vlan_id) +static bool ocrdma_del_sgid(struct ocrdma_dev *dev, union ib_gid *sgid) { int found = false; int i; - union ib_gid sgid; unsigned long flags; - ocrdma_build_sgid_mac(&sgid, mac_addr, is_vlan, vlan_id); spin_lock_irqsave(&dev->sgid_lock, flags); /* first is default sgid, which cannot be deleted. */ for (i = 1; i < OCRDMA_MAX_SGID; i++) { - if (!memcmp(&dev->sgid_tbl[i], &sgid, sizeof(union ib_gid))) { + if (!memcmp(&dev->sgid_tbl[i], sgid, sizeof(union ib_gid))) { /* found matching entry */ memset(&dev->sgid_tbl[i], 0, sizeof(union ib_gid)); found = true; @@ -141,75 +116,18 @@ return found; } -static void ocrdma_add_default_sgid(struct ocrdma_dev *dev) -{ - /* GID Index 0 - Invariant manufacturer-assigned EUI-64 */ - union ib_gid *sgid = &dev->sgid_tbl[0]; - - sgid->global.subnet_prefix = cpu_to_be64(0xfe80000000000000LL); - ocrdma_get_guid(dev, &sgid->raw[8]); -} - -#if IS_ENABLED(CONFIG_VLAN_8021Q) -static void ocrdma_add_vlan_sgids(struct ocrdma_dev *dev) -{ - struct net_device *netdev, *tmp; - u16 vlan_id; - bool is_vlan; - - netdev = dev->nic_info.netdev; - - rcu_read_lock(); - for_each_netdev_rcu(&init_net, tmp) { - if (netdev == tmp || vlan_dev_real_dev(tmp) == netdev) { - if (!netif_running(tmp) || !netif_oper_up(tmp)) - continue; - if (netdev != tmp) { - vlan_id = vlan_dev_vlan_id(tmp); - is_vlan = true; - } else { - is_vlan = false; - vlan_id = 0; - tmp = netdev; - } - ocrdma_add_sgid(dev, tmp->dev_addr, is_vlan, vlan_id); - } - } - rcu_read_unlock(); -} -#else -static void ocrdma_add_vlan_sgids(struct ocrdma_dev *dev) -{ - -} -#endif /* VLAN */ - -static int ocrdma_build_sgid_tbl(struct ocrdma_dev *dev) -{ - ocrdma_add_default_sgid(dev); - ocrdma_add_vlan_sgids(dev); - return 0; -} - -#if IS_ENABLED(CONFIG_IPV6) - -static int ocrdma_inet6addr_event(struct notifier_block *notifier, - unsigned long event, void *ptr) +static int ocrdma_addr_event(unsigned long event, struct net_device *netdev, + union ib_gid *gid) { - struct inet6_ifaddr *ifa = (struct inet6_ifaddr *)ptr; - struct net_device *netdev = ifa->idev->dev; struct ib_event gid_event; struct ocrdma_dev *dev; bool found = false; bool updated = false; bool is_vlan = false; - u16 vid = 0; is_vlan = netdev->priv_flags & IFF_802_1Q_VLAN; - if (is_vlan) { - vid = vlan_dev_vlan_id(netdev); - netdev = vlan_dev_real_dev(netdev); - } + if (is_vlan) + netdev = rdma_vlan_dev_real_dev(netdev); rcu_read_lock(); list_for_each_entry_rcu(dev, &ocrdma_dev_list, entry) { @@ -222,16 +140,14 @@ if (!found) return NOTIFY_DONE; - if (!rdma_link_local_addr((struct in6_addr *)&ifa->addr)) - return NOTIFY_DONE; mutex_lock(&dev->dev_lock); switch (event) { case NETDEV_UP: - updated = ocrdma_add_sgid(dev, netdev->dev_addr, is_vlan, vid); + updated = ocrdma_add_sgid(dev, gid); break; case NETDEV_DOWN: - updated = ocrdma_del_sgid(dev, netdev->dev_addr, is_vlan, vid); + updated = ocrdma_del_sgid(dev, gid); break; default: break; @@ -247,6 +163,32 @@ return NOTIFY_OK; } +static int ocrdma_inetaddr_event(struct notifier_block *notifier, + unsigned long event, void *ptr) +{ + struct in_ifaddr *ifa = ptr; + union ib_gid gid; + struct net_device *netdev = ifa->ifa_dev->dev; + + ipv6_addr_set_v4mapped(ifa->ifa_address, (struct in6_addr *)&gid); + return ocrdma_addr_event(event, netdev, &gid); +} + +static struct notifier_block ocrdma_inetaddr_notifier = { + .notifier_call = ocrdma_inetaddr_event +}; + +#if IS_ENABLED(CONFIG_IPV6) + +static int ocrdma_inet6addr_event(struct notifier_block *notifier, + unsigned long event, void *ptr) +{ + struct inet6_ifaddr *ifa = (struct inet6_ifaddr *)ptr; + union ib_gid *gid = (union ib_gid *)&ifa->addr; + struct net_device *netdev = ifa->idev->dev; + return ocrdma_addr_event(event, netdev, gid); +} + static struct notifier_block ocrdma_inet6addr_notifier = { .notifier_call = ocrdma_inet6addr_event }; @@ -423,10 +365,6 @@ if (status) goto alloc_err; - status = ocrdma_build_sgid_tbl(dev); - if (status) - goto alloc_err; - status = ocrdma_register_device(dev); if (status) goto alloc_err; @@ -553,6 +491,10 @@ { int status; + status = register_inetaddr_notifier(&ocrdma_inetaddr_notifier); + if (status) + return status; + #if IS_ENABLED(CONFIG_IPV6) status = register_inet6addr_notifier(&ocrdma_inet6addr_notifier); if (status) --- linux-3.13.0.orig/drivers/infiniband/hw/ocrdma/ocrdma_sli.h +++ linux-3.13.0/drivers/infiniband/hw/ocrdma/ocrdma_sli.h @@ -31,7 +31,7 @@ #define Bit(_b) (1 << (_b)) #define OCRDMA_GEN1_FAMILY 0xB -#define OCRDMA_GEN2_FAMILY 0x2 +#define OCRDMA_GEN2_FAMILY 0x0F #define OCRDMA_SUBSYS_ROCE 10 enum { @@ -1694,7 +1694,7 @@ u16 rsvd; } __packed; -#define OCRDMA_AV_VALID Bit(0) +#define OCRDMA_AV_VALID Bit(7) #define OCRDMA_AV_VLAN_VALID Bit(1) struct ocrdma_av { --- linux-3.13.0.orig/drivers/infiniband/hw/ocrdma/ocrdma_verbs.c +++ linux-3.13.0/drivers/infiniband/hw/ocrdma/ocrdma_verbs.c @@ -176,7 +176,7 @@ props->port_cap_flags = IB_PORT_CM_SUP | IB_PORT_REINIT_SUP | - IB_PORT_DEVICE_MGMT_SUP | IB_PORT_VENDOR_CLASS_SUP; + IB_PORT_DEVICE_MGMT_SUP | IB_PORT_VENDOR_CLASS_SUP | IB_PORT_IP_BASED_GIDS; props->gid_tbl_len = OCRDMA_MAX_SGID; props->pkey_tbl_len = 1; props->bad_pkey_cntr = 0; @@ -1326,7 +1326,8 @@ new_qps = old_qps; spin_unlock_irqrestore(&qp->q_lock, flags); - if (!ib_modify_qp_is_ok(old_qps, new_qps, ibqp->qp_type, attr_mask)) { + if (!ib_modify_qp_is_ok(old_qps, new_qps, ibqp->qp_type, attr_mask, + IB_LINK_LAYER_ETHERNET)) { pr_err("%s(%d) invalid attribute mask=0x%x specified for\n" "qpn=0x%x of type=0x%x old_qps=0x%x, new_qps=0x%x\n", __func__, dev->id, attr_mask, qp->id, ibqp->qp_type, @@ -1415,7 +1416,7 @@ OCRDMA_QP_PARAMS_HOP_LMT_MASK) >> OCRDMA_QP_PARAMS_HOP_LMT_SHIFT; qp_attr->ah_attr.grh.traffic_class = (params.tclass_sq_psn & - OCRDMA_QP_PARAMS_SQ_PSN_MASK) >> + OCRDMA_QP_PARAMS_TCLASS_MASK) >> OCRDMA_QP_PARAMS_TCLASS_SHIFT; qp_attr->ah_attr.ah_flags = IB_AH_GRH; --- linux-3.13.0.orig/drivers/infiniband/hw/qib/qib_file_ops.c +++ linux-3.13.0/drivers/infiniband/hw/qib/qib_file_ops.c @@ -1578,7 +1578,7 @@ struct qib_ctxtdata *rcd = fd->rcd; struct qib_devdata *dd = rcd->dd; - if (dd->flags & QIB_HAS_SEND_DMA) + if (dd->flags & QIB_HAS_SEND_DMA) { fd->pq = qib_user_sdma_queue_create(&dd->pcidev->dev, dd->unit, @@ -1586,6 +1586,7 @@ fd->subctxt); if (!fd->pq) return -ENOMEM; + } return 0; } --- linux-3.13.0.orig/drivers/infiniband/hw/qib/qib_iba7322.c +++ linux-3.13.0/drivers/infiniband/hw/qib/qib_iba7322.c @@ -2395,6 +2395,11 @@ qib_write_kreg_port(ppd, krp_ibcctrl_a, ppd->cpspec->ibcctrl_a); qib_write_kreg(dd, kr_scratch, 0ULL); + /* ensure previous Tx parameters are not still forced */ + qib_write_kreg_port(ppd, krp_tx_deemph_override, + SYM_MASK(IBSD_TX_DEEMPHASIS_OVERRIDE_0, + reset_tx_deemphasis_override)); + if (qib_compat_ddr_negotiate) { ppd->cpspec->ibdeltainprog = 1; ppd->cpspec->ibsymsnap = read_7322_creg32_port(ppd, --- linux-3.13.0.orig/drivers/infiniband/hw/qib/qib_init.c +++ linux-3.13.0/drivers/infiniband/hw/qib/qib_init.c @@ -1097,14 +1097,10 @@ int ret; dd = (struct qib_devdata *) ib_alloc_device(sizeof(*dd) + extra); - if (!dd) { - dd = ERR_PTR(-ENOMEM); - goto bail; - } + if (!dd) + return ERR_PTR(-ENOMEM); -#ifdef CONFIG_DEBUG_FS - qib_dbg_ibdev_init(&dd->verbs_dev); -#endif + INIT_LIST_HEAD(&dd->list); idr_preload(GFP_KERNEL); spin_lock_irqsave(&qib_devs_lock, flags); @@ -1121,11 +1117,6 @@ if (ret < 0) { qib_early_err(&pdev->dev, "Could not allocate unit ID: error %d\n", -ret); -#ifdef CONFIG_DEBUG_FS - qib_dbg_ibdev_exit(&dd->verbs_dev); -#endif - ib_dealloc_device(&dd->verbs_dev.ibdev); - dd = ERR_PTR(ret); goto bail; } @@ -1139,9 +1130,15 @@ qib_early_err(&pdev->dev, "Could not alloc cpulist info, cpu affinity might be wrong\n"); } - -bail: +#ifdef CONFIG_DEBUG_FS + qib_dbg_ibdev_init(&dd->verbs_dev); +#endif return dd; +bail: + if (!list_empty(&dd->list)) + list_del_init(&dd->list); + ib_dealloc_device(&dd->verbs_dev.ibdev); + return ERR_PTR(ret);; } /* --- linux-3.13.0.orig/drivers/infiniband/hw/qib/qib_qp.c +++ linux-3.13.0/drivers/infiniband/hw/qib/qib_qp.c @@ -585,7 +585,7 @@ new_state = attr_mask & IB_QP_STATE ? attr->qp_state : cur_state; if (!ib_modify_qp_is_ok(cur_state, new_state, ibqp->qp_type, - attr_mask)) + attr_mask, IB_LINK_LAYER_UNSPECIFIED)) goto inval; if (attr_mask & IB_QP_AV) { --- linux-3.13.0.orig/drivers/infiniband/hw/qib/qib_ud.c +++ linux-3.13.0/drivers/infiniband/hw/qib/qib_ud.c @@ -57,13 +57,20 @@ struct qib_sge *sge; struct ib_wc wc; u32 length; + enum ib_qp_type sqptype, dqptype; qp = qib_lookup_qpn(ibp, swqe->wr.wr.ud.remote_qpn); if (!qp) { ibp->n_pkt_drops++; return; } - if (qp->ibqp.qp_type != sqp->ibqp.qp_type || + + sqptype = sqp->ibqp.qp_type == IB_QPT_GSI ? + IB_QPT_UD : sqp->ibqp.qp_type; + dqptype = qp->ibqp.qp_type == IB_QPT_GSI ? + IB_QPT_UD : qp->ibqp.qp_type; + + if (dqptype != sqptype || !(ib_qib_state_ops[qp->state] & QIB_PROCESS_RECV_OK)) { ibp->n_pkt_drops++; goto drop; --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/Kconfig +++ linux-3.13.0/drivers/infiniband/hw/usnic/Kconfig @@ -0,0 +1,10 @@ +config INFINIBAND_USNIC + tristate "Verbs support for Cisco VIC" + depends on NETDEVICES && ETHERNET && INET && PCI && INTEL_IOMMU + select ENIC + select NET_VENDOR_CISCO + select PCI_IOV + select INFINIBAND_USER_ACCESS + ---help--- + This is a low-level driver for Cisco's Virtual Interface + Cards (VICs), including the VIC 1240 and 1280 cards. --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/Makefile +++ linux-3.13.0/drivers/infiniband/hw/usnic/Makefile @@ -0,0 +1,15 @@ +ccflags-y := -Idrivers/net/ethernet/cisco/enic + +obj-$(CONFIG_INFINIBAND_USNIC)+= usnic_verbs.o + +usnic_verbs-y=\ +usnic_fwd.o \ +usnic_transport.o \ +usnic_uiom.o \ +usnic_uiom_interval_tree.o \ +usnic_vnic.o \ +usnic_ib_main.o \ +usnic_ib_qp_grp.o \ +usnic_ib_sysfs.o \ +usnic_ib_verbs.o \ +usnic_debugfs.o \ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic.h +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic.h @@ -0,0 +1,29 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#ifndef USNIC_H_ +#define USNIC_H_ + +#define DRV_NAME "usnic_verbs" + +#define PCI_DEVICE_ID_CISCO_VIC_USPACE_NIC 0x00cf /* User space NIC */ + +#define DRV_VERSION "1.0.3" +#define DRV_RELDATE "December 19, 2013" + +#endif /* USNIC_H_ */ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_abi.h +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_abi.h @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + + +#ifndef USNIC_ABI_H +#define USNIC_ABI_H + +/* ABI between userspace and kernel */ +#define USNIC_UVERBS_ABI_VERSION 4 + +#define USNIC_QP_GRP_MAX_WQS 8 +#define USNIC_QP_GRP_MAX_RQS 8 +#define USNIC_QP_GRP_MAX_CQS 16 + +enum usnic_transport_type { + USNIC_TRANSPORT_UNKNOWN = 0, + USNIC_TRANSPORT_ROCE_CUSTOM = 1, + USNIC_TRANSPORT_IPV4_UDP = 2, + USNIC_TRANSPORT_MAX = 3, +}; + +struct usnic_transport_spec { + enum usnic_transport_type trans_type; + union { + struct { + uint16_t port_num; + } usnic_roce; + struct { + uint32_t sock_fd; + } udp; + }; +}; + +struct usnic_ib_create_qp_cmd { + struct usnic_transport_spec spec; +}; + +/*TODO: Future - usnic_modify_qp needs to pass in generic filters */ +struct usnic_ib_create_qp_resp { + u32 vfid; + u32 qp_grp_id; + u64 bar_bus_addr; + u32 bar_len; +/* + * WQ, RQ, CQ are explicity specified bc exposing a generic resources inteface + * expands the scope of ABI to many files. + */ + u32 wq_cnt; + u32 rq_cnt; + u32 cq_cnt; + u32 wq_idx[USNIC_QP_GRP_MAX_WQS]; + u32 rq_idx[USNIC_QP_GRP_MAX_RQS]; + u32 cq_idx[USNIC_QP_GRP_MAX_CQS]; + u32 transport; + u32 reserved[9]; +}; + +#endif /* USNIC_ABI_H */ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_common_pkt_hdr.h +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_common_pkt_hdr.h @@ -0,0 +1,27 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#ifndef USNIC_CMN_PKT_HDR_H +#define USNIC_CMN_PKT_HDR_H + +#define USNIC_ROCE_ETHERTYPE (0x8915) +#define USNIC_ROCE_GRH_VER (8) +#define USNIC_PROTO_VER (1) +#define USNIC_ROCE_GRH_VER_SHIFT (4) + +#endif /* USNIC_COMMON_PKT_HDR_H */ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_common_util.h +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_common_util.h @@ -0,0 +1,68 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#ifndef USNIC_CMN_UTIL_H +#define USNIC_CMN_UTIL_H + +static inline void +usnic_mac_to_gid(const char *const mac, char *raw_gid) +{ + raw_gid[0] = 0xfe; + raw_gid[1] = 0x80; + memset(&raw_gid[2], 0, 6); + raw_gid[8] = mac[0]^2; + raw_gid[9] = mac[1]; + raw_gid[10] = mac[2]; + raw_gid[11] = 0xff; + raw_gid[12] = 0xfe; + raw_gid[13] = mac[3]; + raw_gid[14] = mac[4]; + raw_gid[15] = mac[5]; +} + +static inline void +usnic_mac_ip_to_gid(const char *const mac, const __be32 inaddr, char *raw_gid) +{ + raw_gid[0] = 0xfe; + raw_gid[1] = 0x80; + memset(&raw_gid[2], 0, 2); + memcpy(&raw_gid[4], &inaddr, 4); + raw_gid[8] = mac[0]^2; + raw_gid[9] = mac[1]; + raw_gid[10] = mac[2]; + raw_gid[11] = 0xff; + raw_gid[12] = 0xfe; + raw_gid[13] = mac[3]; + raw_gid[14] = mac[4]; + raw_gid[15] = mac[5]; +} + +static inline void +usnic_write_gid_if_id_from_mac(char *mac, char *raw_gid) +{ + raw_gid[8] = mac[0]^2; + raw_gid[9] = mac[1]; + raw_gid[10] = mac[2]; + raw_gid[11] = 0xff; + raw_gid[12] = 0xfe; + raw_gid[13] = mac[3]; + raw_gid[14] = mac[4]; + raw_gid[15] = mac[5]; +} + +#endif /* USNIC_COMMON_UTIL_H */ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_debugfs.c +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_debugfs.c @@ -0,0 +1,154 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#include +#include + +#include "usnic.h" +#include "usnic_log.h" +#include "usnic_debugfs.h" +#include "usnic_ib_qp_grp.h" +#include "usnic_transport.h" + +static struct dentry *debugfs_root; +static struct dentry *flows_dentry; + +static ssize_t usnic_debugfs_buildinfo_read(struct file *f, char __user *data, + size_t count, loff_t *ppos) +{ + char buf[500]; + int res; + + if (*ppos > 0) + return 0; + + res = scnprintf(buf, sizeof(buf), + "version: %s\n" + "build date: %s\n", + DRV_VERSION, DRV_RELDATE); + + return simple_read_from_buffer(data, count, ppos, buf, res); +} + +static const struct file_operations usnic_debugfs_buildinfo_ops = { + .owner = THIS_MODULE, + .open = simple_open, + .read = usnic_debugfs_buildinfo_read +}; + +static ssize_t flowinfo_read(struct file *f, char __user *data, + size_t count, loff_t *ppos) +{ + struct usnic_ib_qp_grp_flow *qp_flow; + int n; + int left; + char *ptr; + char buf[512]; + + qp_flow = f->private_data; + ptr = buf; + left = count; + + if (*ppos > 0) + return 0; + + spin_lock(&qp_flow->qp_grp->lock); + n = scnprintf(ptr, left, + "QP Grp ID: %d Transport: %s ", + qp_flow->qp_grp->grp_id, + usnic_transport_to_str(qp_flow->trans_type)); + UPDATE_PTR_LEFT(n, ptr, left); + if (qp_flow->trans_type == USNIC_TRANSPORT_ROCE_CUSTOM) { + n = scnprintf(ptr, left, "Port_Num:%hu\n", + qp_flow->usnic_roce.port_num); + UPDATE_PTR_LEFT(n, ptr, left); + } else if (qp_flow->trans_type == USNIC_TRANSPORT_IPV4_UDP) { + n = usnic_transport_sock_to_str(ptr, left, + qp_flow->udp.sock); + UPDATE_PTR_LEFT(n, ptr, left); + n = scnprintf(ptr, left, "\n"); + UPDATE_PTR_LEFT(n, ptr, left); + } + spin_unlock(&qp_flow->qp_grp->lock); + + return simple_read_from_buffer(data, count, ppos, buf, ptr - buf); +} + +static const struct file_operations flowinfo_ops = { + .owner = THIS_MODULE, + .open = simple_open, + .read = flowinfo_read, +}; + +void usnic_debugfs_init(void) +{ + debugfs_root = debugfs_create_dir(DRV_NAME, NULL); + if (IS_ERR(debugfs_root)) { + usnic_err("Failed to create debugfs root dir, check if debugfs is enabled in kernel configuration\n"); + goto out_clear_root; + } + + flows_dentry = debugfs_create_dir("flows", debugfs_root); + if (IS_ERR_OR_NULL(flows_dentry)) { + usnic_err("Failed to create debugfs flow dir with err %ld\n", + PTR_ERR(flows_dentry)); + goto out_free_root; + } + + debugfs_create_file("build-info", S_IRUGO, debugfs_root, + NULL, &usnic_debugfs_buildinfo_ops); + return; + +out_free_root: + debugfs_remove_recursive(debugfs_root); +out_clear_root: + debugfs_root = NULL; +} + +void usnic_debugfs_exit(void) +{ + if (!debugfs_root) + return; + + debugfs_remove_recursive(debugfs_root); + debugfs_root = NULL; +} + +void usnic_debugfs_flow_add(struct usnic_ib_qp_grp_flow *qp_flow) +{ + if (IS_ERR_OR_NULL(flows_dentry)) + return; + + scnprintf(qp_flow->dentry_name, sizeof(qp_flow->dentry_name), + "%u", qp_flow->flow->flow_id); + qp_flow->dbgfs_dentry = debugfs_create_file(qp_flow->dentry_name, + S_IRUGO, + flows_dentry, + qp_flow, + &flowinfo_ops); + if (IS_ERR_OR_NULL(qp_flow->dbgfs_dentry)) { + usnic_err("Failed to create dbg fs entry for flow %u\n", + qp_flow->flow->flow_id); + } +} + +void usnic_debugfs_flow_remove(struct usnic_ib_qp_grp_flow *qp_flow) +{ + if (!IS_ERR_OR_NULL(qp_flow->dbgfs_dentry)) + debugfs_remove(qp_flow->dbgfs_dentry); +} --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_debugfs.h +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_debugfs.h @@ -0,0 +1,29 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ +#ifndef USNIC_DEBUGFS_H_ +#define USNIC_DEBUGFS_H_ + +#include "usnic_ib_qp_grp.h" + +void usnic_debugfs_init(void); + +void usnic_debugfs_exit(void); +void usnic_debugfs_flow_add(struct usnic_ib_qp_grp_flow *qp_flow); +void usnic_debugfs_flow_remove(struct usnic_ib_qp_grp_flow *qp_flow); + +#endif /*!USNIC_DEBUGFS_H_ */ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_fwd.c +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_fwd.c @@ -0,0 +1,350 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ +#include +#include + +#include "enic_api.h" +#include "usnic_common_pkt_hdr.h" +#include "usnic_fwd.h" +#include "usnic_log.h" + +static int usnic_fwd_devcmd_locked(struct usnic_fwd_dev *ufdev, int vnic_idx, + enum vnic_devcmd_cmd cmd, u64 *a0, + u64 *a1) +{ + int status; + struct net_device *netdev = ufdev->netdev; + + lockdep_assert_held(&ufdev->lock); + + status = enic_api_devcmd_proxy_by_index(netdev, + vnic_idx, + cmd, + a0, a1, + 1000); + if (status) { + if (status == ERR_EINVAL && cmd == CMD_DEL_FILTER) { + usnic_dbg("Dev %s vnic idx %u cmd %u already deleted", + ufdev->name, vnic_idx, cmd); + } else { + usnic_err("Dev %s vnic idx %u cmd %u failed with status %d\n", + ufdev->name, vnic_idx, cmd, + status); + } + } else { + usnic_dbg("Dev %s vnic idx %u cmd %u success", + ufdev->name, vnic_idx, cmd); + } + + return status; +} + +static int usnic_fwd_devcmd(struct usnic_fwd_dev *ufdev, int vnic_idx, + enum vnic_devcmd_cmd cmd, u64 *a0, u64 *a1) +{ + int status; + + spin_lock(&ufdev->lock); + status = usnic_fwd_devcmd_locked(ufdev, vnic_idx, cmd, a0, a1); + spin_unlock(&ufdev->lock); + + return status; +} + +struct usnic_fwd_dev *usnic_fwd_dev_alloc(struct pci_dev *pdev) +{ + struct usnic_fwd_dev *ufdev; + + ufdev = kzalloc(sizeof(*ufdev), GFP_KERNEL); + if (!ufdev) + return NULL; + + ufdev->pdev = pdev; + ufdev->netdev = pci_get_drvdata(pdev); + spin_lock_init(&ufdev->lock); + strncpy(ufdev->name, netdev_name(ufdev->netdev), + sizeof(ufdev->name) - 1); + + return ufdev; +} + +void usnic_fwd_dev_free(struct usnic_fwd_dev *ufdev) +{ + kfree(ufdev); +} + +void usnic_fwd_set_mac(struct usnic_fwd_dev *ufdev, char mac[ETH_ALEN]) +{ + spin_lock(&ufdev->lock); + memcpy(&ufdev->mac, mac, sizeof(ufdev->mac)); + spin_unlock(&ufdev->lock); +} + +int usnic_fwd_add_ipaddr(struct usnic_fwd_dev *ufdev, __be32 inaddr) +{ + int status; + + spin_lock(&ufdev->lock); + if (ufdev->inaddr == 0) { + ufdev->inaddr = inaddr; + status = 0; + } else { + status = -EFAULT; + } + spin_unlock(&ufdev->lock); + + return status; +} + +void usnic_fwd_del_ipaddr(struct usnic_fwd_dev *ufdev) +{ + spin_lock(&ufdev->lock); + ufdev->inaddr = 0; + spin_unlock(&ufdev->lock); +} + +void usnic_fwd_carrier_up(struct usnic_fwd_dev *ufdev) +{ + spin_lock(&ufdev->lock); + ufdev->link_up = 1; + spin_unlock(&ufdev->lock); +} + +void usnic_fwd_carrier_down(struct usnic_fwd_dev *ufdev) +{ + spin_lock(&ufdev->lock); + ufdev->link_up = 0; + spin_unlock(&ufdev->lock); +} + +void usnic_fwd_set_mtu(struct usnic_fwd_dev *ufdev, unsigned int mtu) +{ + spin_lock(&ufdev->lock); + ufdev->mtu = mtu; + spin_unlock(&ufdev->lock); +} + +static int usnic_fwd_dev_ready_locked(struct usnic_fwd_dev *ufdev) +{ + lockdep_assert_held(&ufdev->lock); + + if (!ufdev->link_up) + return -EPERM; + + return 0; +} + +static int validate_filter_locked(struct usnic_fwd_dev *ufdev, + struct filter *filter) +{ + + lockdep_assert_held(&ufdev->lock); + + if (filter->type == FILTER_IPV4_5TUPLE) { + if (!(filter->u.ipv4.flags & FILTER_FIELD_5TUP_DST_AD)) + return -EACCES; + if (!(filter->u.ipv4.flags & FILTER_FIELD_5TUP_DST_PT)) + return -EBUSY; + else if (ufdev->inaddr == 0) + return -EINVAL; + else if (filter->u.ipv4.dst_port == 0) + return -ERANGE; + else if (ntohl(ufdev->inaddr) != filter->u.ipv4.dst_addr) + return -EFAULT; + else + return 0; + } + + return 0; +} + +static void fill_tlv(struct filter_tlv *tlv, struct filter *filter, + struct filter_action *action) +{ + tlv->type = CLSF_TLV_FILTER; + tlv->length = sizeof(struct filter); + *((struct filter *)&tlv->val) = *filter; + + tlv = (struct filter_tlv *)((char *)tlv + sizeof(struct filter_tlv) + + sizeof(struct filter)); + tlv->type = CLSF_TLV_ACTION; + tlv->length = sizeof(struct filter_action); + *((struct filter_action *)&tlv->val) = *action; +} + +struct usnic_fwd_flow* +usnic_fwd_alloc_flow(struct usnic_fwd_dev *ufdev, struct filter *filter, + struct usnic_filter_action *uaction) +{ + struct filter_tlv *tlv; + struct pci_dev *pdev; + struct usnic_fwd_flow *flow; + uint64_t a0, a1; + uint64_t tlv_size; + dma_addr_t tlv_pa; + int status; + + pdev = ufdev->pdev; + tlv_size = (2*sizeof(struct filter_tlv) + sizeof(struct filter) + + sizeof(struct filter_action)); + + flow = kzalloc(sizeof(*flow), GFP_ATOMIC); + if (!flow) + return ERR_PTR(-ENOMEM); + + tlv = pci_alloc_consistent(pdev, tlv_size, &tlv_pa); + if (!tlv) { + usnic_err("Failed to allocate memory\n"); + status = -ENOMEM; + goto out_free_flow; + } + + fill_tlv(tlv, filter, &uaction->action); + + spin_lock(&ufdev->lock); + status = usnic_fwd_dev_ready_locked(ufdev); + if (status) { + usnic_err("Forwarding dev %s not ready with status %d\n", + ufdev->name, status); + goto out_free_tlv; + } + + status = validate_filter_locked(ufdev, filter); + if (status) { + usnic_err("Failed to validate filter with status %d\n", + status); + goto out_free_tlv; + } + + /* Issue Devcmd */ + a0 = tlv_pa; + a1 = tlv_size; + status = usnic_fwd_devcmd_locked(ufdev, uaction->vnic_idx, + CMD_ADD_FILTER, &a0, &a1); + if (status) { + usnic_err("VF %s Filter add failed with status:%d", + ufdev->name, status); + status = -EFAULT; + goto out_free_tlv; + } else { + usnic_dbg("VF %s FILTER ID:%llu", ufdev->name, a0); + } + + flow->flow_id = (uint32_t) a0; + flow->vnic_idx = uaction->vnic_idx; + flow->ufdev = ufdev; + +out_free_tlv: + spin_unlock(&ufdev->lock); + pci_free_consistent(pdev, tlv_size, tlv, tlv_pa); + if (!status) + return flow; +out_free_flow: + kfree(flow); + return ERR_PTR(status); +} + +int usnic_fwd_dealloc_flow(struct usnic_fwd_flow *flow) +{ + int status; + u64 a0, a1; + + a0 = flow->flow_id; + + status = usnic_fwd_devcmd(flow->ufdev, flow->vnic_idx, + CMD_DEL_FILTER, &a0, &a1); + if (status) { + if (status == ERR_EINVAL) { + usnic_dbg("Filter %u already deleted for VF Idx %u pf: %s status: %d", + flow->flow_id, flow->vnic_idx, + flow->ufdev->name, status); + } else { + usnic_err("PF %s VF Idx %u Filter: %u FILTER DELETE failed with status %d", + flow->ufdev->name, flow->vnic_idx, + flow->flow_id, status); + } + status = 0; + /* + * Log the error and fake success to the caller because if + * a flow fails to be deleted in the firmware, it is an + * unrecoverable error. + */ + } else { + usnic_dbg("PF %s VF Idx %u Filter: %u FILTER DELETED", + flow->ufdev->name, flow->vnic_idx, + flow->flow_id); + } + + kfree(flow); + return status; +} + +int usnic_fwd_enable_qp(struct usnic_fwd_dev *ufdev, int vnic_idx, int qp_idx) +{ + int status; + struct net_device *pf_netdev; + u64 a0, a1; + + pf_netdev = ufdev->netdev; + a0 = qp_idx; + a1 = CMD_QP_RQWQ; + + status = usnic_fwd_devcmd(ufdev, vnic_idx, CMD_QP_ENABLE, + &a0, &a1); + if (status) { + usnic_err("PF %s VNIC Index %u RQ Index: %u ENABLE Failed with status %d", + netdev_name(pf_netdev), + vnic_idx, + qp_idx, + status); + } else { + usnic_dbg("PF %s VNIC Index %u RQ Index: %u ENABLED", + netdev_name(pf_netdev), + vnic_idx, qp_idx); + } + + return status; +} + +int usnic_fwd_disable_qp(struct usnic_fwd_dev *ufdev, int vnic_idx, int qp_idx) +{ + int status; + u64 a0, a1; + struct net_device *pf_netdev; + + pf_netdev = ufdev->netdev; + a0 = qp_idx; + a1 = CMD_QP_RQWQ; + + status = usnic_fwd_devcmd(ufdev, vnic_idx, CMD_QP_DISABLE, + &a0, &a1); + if (status) { + usnic_err("PF %s VNIC Index %u RQ Index: %u DISABLE Failed with status %d", + netdev_name(pf_netdev), + vnic_idx, + qp_idx, + status); + } else { + usnic_dbg("PF %s VNIC Index %u RQ Index: %u DISABLED", + netdev_name(pf_netdev), + vnic_idx, + qp_idx); + } + + return status; +} --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_fwd.h +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_fwd.h @@ -0,0 +1,113 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#ifndef USNIC_FWD_H_ +#define USNIC_FWD_H_ + +#include +#include +#include +#include + +#include "usnic_abi.h" +#include "usnic_common_pkt_hdr.h" +#include "vnic_devcmd.h" + +struct usnic_fwd_dev { + struct pci_dev *pdev; + struct net_device *netdev; + spinlock_t lock; + /* + * The following fields can be read directly off the device. + * However, they should be set by a accessor function, except name, + * which cannot be changed. + */ + bool link_up; + char mac[ETH_ALEN]; + unsigned int mtu; + __be32 inaddr; + char name[IFNAMSIZ+1]; +}; + +struct usnic_fwd_flow { + uint32_t flow_id; + struct usnic_fwd_dev *ufdev; + unsigned int vnic_idx; +}; + +struct usnic_filter_action { + int vnic_idx; + struct filter_action action; +}; + +struct usnic_fwd_dev *usnic_fwd_dev_alloc(struct pci_dev *pdev); +void usnic_fwd_dev_free(struct usnic_fwd_dev *ufdev); + +void usnic_fwd_set_mac(struct usnic_fwd_dev *ufdev, char mac[ETH_ALEN]); +int usnic_fwd_add_ipaddr(struct usnic_fwd_dev *ufdev, __be32 inaddr); +void usnic_fwd_del_ipaddr(struct usnic_fwd_dev *ufdev); +void usnic_fwd_carrier_up(struct usnic_fwd_dev *ufdev); +void usnic_fwd_carrier_down(struct usnic_fwd_dev *ufdev); +void usnic_fwd_set_mtu(struct usnic_fwd_dev *ufdev, unsigned int mtu); + +/* + * Allocate a flow on this forwarding device. Whoever calls this function, + * must monitor netdev events on ufdev's netdevice. If NETDEV_REBOOT or + * NETDEV_DOWN is seen, flow will no longer function and must be + * immediately freed by calling usnic_dealloc_flow. + */ +struct usnic_fwd_flow* +usnic_fwd_alloc_flow(struct usnic_fwd_dev *ufdev, struct filter *filter, + struct usnic_filter_action *action); +int usnic_fwd_dealloc_flow(struct usnic_fwd_flow *flow); +int usnic_fwd_enable_qp(struct usnic_fwd_dev *ufdev, int vnic_idx, int qp_idx); +int usnic_fwd_disable_qp(struct usnic_fwd_dev *ufdev, int vnic_idx, int qp_idx); + +static inline void usnic_fwd_init_usnic_filter(struct filter *filter, + uint32_t usnic_id) +{ + filter->type = FILTER_USNIC_ID; + filter->u.usnic.ethtype = USNIC_ROCE_ETHERTYPE; + filter->u.usnic.flags = FILTER_FIELD_USNIC_ETHTYPE | + FILTER_FIELD_USNIC_ID | + FILTER_FIELD_USNIC_PROTO; + filter->u.usnic.proto_version = (USNIC_ROCE_GRH_VER << + USNIC_ROCE_GRH_VER_SHIFT) | + USNIC_PROTO_VER; + filter->u.usnic.usnic_id = usnic_id; +} + +static inline void usnic_fwd_init_udp_filter(struct filter *filter, + uint32_t daddr, uint16_t dport) +{ + filter->type = FILTER_IPV4_5TUPLE; + filter->u.ipv4.flags = FILTER_FIELD_5TUP_PROTO; + filter->u.ipv4.protocol = PROTO_UDP; + + if (daddr) { + filter->u.ipv4.flags |= FILTER_FIELD_5TUP_DST_AD; + filter->u.ipv4.dst_addr = daddr; + } + + if (dport) { + filter->u.ipv4.flags |= FILTER_FIELD_5TUP_DST_PT; + filter->u.ipv4.dst_port = dport; + } +} + +#endif /* !USNIC_FWD_H_ */ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_ib.h +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_ib.h @@ -0,0 +1,118 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#ifndef USNIC_IB_H_ +#define USNIC_IB_H_ + +#include +#include + +#include + + +#include "usnic.h" +#include "usnic_abi.h" +#include "usnic_vnic.h" + +#define USNIC_IB_PORT_CNT 1 +#define USNIC_IB_NUM_COMP_VECTORS 1 + +extern unsigned int usnic_ib_share_vf; + +struct usnic_ib_ucontext { + struct ib_ucontext ibucontext; + /* Protected by usnic_ib_dev->usdev_lock */ + struct list_head qp_grp_list; + struct list_head link; +}; + +struct usnic_ib_pd { + struct ib_pd ibpd; + struct usnic_uiom_pd *umem_pd; +}; + +struct usnic_ib_mr { + struct ib_mr ibmr; + struct usnic_uiom_reg *umem; +}; + +struct usnic_ib_dev { + struct ib_device ib_dev; + struct pci_dev *pdev; + struct net_device *netdev; + struct usnic_fwd_dev *ufdev; + struct list_head ib_dev_link; + struct list_head vf_dev_list; + struct list_head ctx_list; + struct mutex usdev_lock; + + /* provisioning information */ + struct kref vf_cnt; + unsigned int vf_res_cnt[USNIC_VNIC_RES_TYPE_MAX]; + + /* sysfs vars for QPN reporting */ + struct kobject *qpn_kobj; +}; + +struct usnic_ib_vf { + struct usnic_ib_dev *pf; + spinlock_t lock; + struct usnic_vnic *vnic; + unsigned int qp_grp_ref_cnt; + struct usnic_ib_pd *pd; + struct list_head link; +}; + +static inline +struct usnic_ib_dev *to_usdev(struct ib_device *ibdev) +{ + return container_of(ibdev, struct usnic_ib_dev, ib_dev); +} + +static inline +struct usnic_ib_ucontext *to_ucontext(struct ib_ucontext *ibucontext) +{ + return container_of(ibucontext, struct usnic_ib_ucontext, ibucontext); +} + +static inline +struct usnic_ib_pd *to_upd(struct ib_pd *ibpd) +{ + return container_of(ibpd, struct usnic_ib_pd, ibpd); +} + +static inline +struct usnic_ib_ucontext *to_uucontext(struct ib_ucontext *ibucontext) +{ + return container_of(ibucontext, struct usnic_ib_ucontext, ibucontext); +} + +static inline +struct usnic_ib_mr *to_umr(struct ib_mr *ibmr) +{ + return container_of(ibmr, struct usnic_ib_mr, ibmr); +} +void usnic_ib_log_vf(struct usnic_ib_vf *vf); + +#define UPDATE_PTR_LEFT(N, P, L) \ +do { \ + L -= (N); \ + P += (N); \ +} while (0) + +#endif /* USNIC_IB_H_ */ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_ib_main.c +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_ib_main.c @@ -0,0 +1,682 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + * Author: Upinder Malhi + * Author: Anant Deepak + * Author: Cesare Cantu' + * Author: Jeff Squyres + * Author: Kiran Thirumalai + * Author: Xuyang Wang + * Author: Reese Faucette + * + */ + +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#include "usnic_abi.h" +#include "usnic_common_util.h" +#include "usnic_ib.h" +#include "usnic_ib_qp_grp.h" +#include "usnic_log.h" +#include "usnic_fwd.h" +#include "usnic_debugfs.h" +#include "usnic_ib_verbs.h" +#include "usnic_transport.h" +#include "usnic_uiom.h" +#include "usnic_ib_sysfs.h" + +unsigned int usnic_log_lvl = USNIC_LOG_LVL_ERR; +unsigned int usnic_ib_share_vf = 1; + +static const char usnic_version[] = + DRV_NAME ": Cisco VIC (USNIC) Verbs Driver v" + DRV_VERSION " (" DRV_RELDATE ")\n"; + +static DEFINE_MUTEX(usnic_ib_ibdev_list_lock); +static LIST_HEAD(usnic_ib_ibdev_list); + +/* Callback dump funcs */ +static int usnic_ib_dump_vf_hdr(void *obj, char *buf, int buf_sz) +{ + struct usnic_ib_vf *vf = obj; + return scnprintf(buf, buf_sz, "PF: %s ", vf->pf->ib_dev.name); +} +/* End callback dump funcs */ + +static void usnic_ib_dump_vf(struct usnic_ib_vf *vf, char *buf, int buf_sz) +{ + usnic_vnic_dump(vf->vnic, buf, buf_sz, vf, + usnic_ib_dump_vf_hdr, + usnic_ib_qp_grp_dump_hdr, usnic_ib_qp_grp_dump_rows); +} + +void usnic_ib_log_vf(struct usnic_ib_vf *vf) +{ + char buf[1000]; + usnic_ib_dump_vf(vf, buf, sizeof(buf)); + usnic_dbg("%s\n", buf); +} + +/* Start of netdev section */ +static inline const char *usnic_ib_netdev_event_to_string(unsigned long event) +{ + const char *event2str[] = {"NETDEV_NONE", "NETDEV_UP", "NETDEV_DOWN", + "NETDEV_REBOOT", "NETDEV_CHANGE", + "NETDEV_REGISTER", "NETDEV_UNREGISTER", "NETDEV_CHANGEMTU", + "NETDEV_CHANGEADDR", "NETDEV_GOING_DOWN", "NETDEV_FEAT_CHANGE", + "NETDEV_BONDING_FAILOVER", "NETDEV_PRE_UP", + "NETDEV_PRE_TYPE_CHANGE", "NETDEV_POST_TYPE_CHANGE", + "NETDEV_POST_INT", "NETDEV_UNREGISTER_FINAL", "NETDEV_RELEASE", + "NETDEV_NOTIFY_PEERS", "NETDEV_JOIN" + }; + + if (event >= ARRAY_SIZE(event2str)) + return "UNKNOWN_NETDEV_EVENT"; + else + return event2str[event]; +} + +static void usnic_ib_qp_grp_modify_active_to_err(struct usnic_ib_dev *us_ibdev) +{ + struct usnic_ib_ucontext *ctx; + struct usnic_ib_qp_grp *qp_grp; + enum ib_qp_state cur_state; + int status; + + BUG_ON(!mutex_is_locked(&us_ibdev->usdev_lock)); + + list_for_each_entry(ctx, &us_ibdev->ctx_list, link) { + list_for_each_entry(qp_grp, &ctx->qp_grp_list, link) { + cur_state = qp_grp->state; + if (cur_state == IB_QPS_INIT || + cur_state == IB_QPS_RTR || + cur_state == IB_QPS_RTS) { + status = usnic_ib_qp_grp_modify(qp_grp, + IB_QPS_ERR, + NULL); + if (status) { + usnic_err("Failed to transistion qp grp %u from %s to %s\n", + qp_grp->grp_id, + usnic_ib_qp_grp_state_to_string + (cur_state), + usnic_ib_qp_grp_state_to_string + (IB_QPS_ERR)); + } + } + } + } +} + +static void usnic_ib_handle_usdev_event(struct usnic_ib_dev *us_ibdev, + unsigned long event) +{ + struct net_device *netdev; + struct ib_event ib_event; + + memset(&ib_event, 0, sizeof(ib_event)); + + mutex_lock(&us_ibdev->usdev_lock); + netdev = us_ibdev->netdev; + switch (event) { + case NETDEV_REBOOT: + usnic_info("PF Reset on %s\n", us_ibdev->ib_dev.name); + usnic_ib_qp_grp_modify_active_to_err(us_ibdev); + ib_event.event = IB_EVENT_PORT_ERR; + ib_event.device = &us_ibdev->ib_dev; + ib_event.element.port_num = 1; + ib_dispatch_event(&ib_event); + break; + case NETDEV_UP: + case NETDEV_DOWN: + case NETDEV_CHANGE: + if (!us_ibdev->ufdev->link_up && + netif_carrier_ok(netdev)) { + usnic_fwd_carrier_up(us_ibdev->ufdev); + usnic_info("Link UP on %s\n", us_ibdev->ib_dev.name); + ib_event.event = IB_EVENT_PORT_ACTIVE; + ib_event.device = &us_ibdev->ib_dev; + ib_event.element.port_num = 1; + ib_dispatch_event(&ib_event); + } else if (us_ibdev->ufdev->link_up && + !netif_carrier_ok(netdev)) { + usnic_fwd_carrier_down(us_ibdev->ufdev); + usnic_info("Link DOWN on %s\n", us_ibdev->ib_dev.name); + usnic_ib_qp_grp_modify_active_to_err(us_ibdev); + ib_event.event = IB_EVENT_PORT_ERR; + ib_event.device = &us_ibdev->ib_dev; + ib_event.element.port_num = 1; + ib_dispatch_event(&ib_event); + } else { + usnic_dbg("Ignoring %s on %s\n", + usnic_ib_netdev_event_to_string(event), + us_ibdev->ib_dev.name); + } + break; + case NETDEV_CHANGEADDR: + if (!memcmp(us_ibdev->ufdev->mac, netdev->dev_addr, + sizeof(us_ibdev->ufdev->mac))) { + usnic_dbg("Ignoring addr change on %s\n", + us_ibdev->ib_dev.name); + } else { + usnic_info(" %s old mac: %pM new mac: %pM\n", + us_ibdev->ib_dev.name, + us_ibdev->ufdev->mac, + netdev->dev_addr); + usnic_fwd_set_mac(us_ibdev->ufdev, netdev->dev_addr); + usnic_ib_qp_grp_modify_active_to_err(us_ibdev); + ib_event.event = IB_EVENT_GID_CHANGE; + ib_event.device = &us_ibdev->ib_dev; + ib_event.element.port_num = 1; + ib_dispatch_event(&ib_event); + } + + break; + case NETDEV_CHANGEMTU: + if (us_ibdev->ufdev->mtu != netdev->mtu) { + usnic_info("MTU Change on %s old: %u new: %u\n", + us_ibdev->ib_dev.name, + us_ibdev->ufdev->mtu, netdev->mtu); + usnic_fwd_set_mtu(us_ibdev->ufdev, netdev->mtu); + usnic_ib_qp_grp_modify_active_to_err(us_ibdev); + } else { + usnic_dbg("Ignoring MTU change on %s\n", + us_ibdev->ib_dev.name); + } + break; + default: + usnic_dbg("Ignoring event %s on %s", + usnic_ib_netdev_event_to_string(event), + us_ibdev->ib_dev.name); + } + mutex_unlock(&us_ibdev->usdev_lock); +} + +static int usnic_ib_netdevice_event(struct notifier_block *notifier, + unsigned long event, void *ptr) +{ + struct usnic_ib_dev *us_ibdev; + + struct net_device *netdev = netdev_notifier_info_to_dev(ptr); + + mutex_lock(&usnic_ib_ibdev_list_lock); + list_for_each_entry(us_ibdev, &usnic_ib_ibdev_list, ib_dev_link) { + if (us_ibdev->netdev == netdev) { + usnic_ib_handle_usdev_event(us_ibdev, event); + break; + } + } + mutex_unlock(&usnic_ib_ibdev_list_lock); + + return NOTIFY_DONE; +} + +static struct notifier_block usnic_ib_netdevice_notifier = { + .notifier_call = usnic_ib_netdevice_event +}; +/* End of netdev section */ + +/* Start of inet section */ +static int usnic_ib_handle_inet_event(struct usnic_ib_dev *us_ibdev, + unsigned long event, void *ptr) +{ + struct in_ifaddr *ifa = ptr; + struct ib_event ib_event; + + mutex_lock(&us_ibdev->usdev_lock); + + switch (event) { + case NETDEV_DOWN: + usnic_info("%s via ip notifiers", + usnic_ib_netdev_event_to_string(event)); + usnic_fwd_del_ipaddr(us_ibdev->ufdev); + usnic_ib_qp_grp_modify_active_to_err(us_ibdev); + ib_event.event = IB_EVENT_GID_CHANGE; + ib_event.device = &us_ibdev->ib_dev; + ib_event.element.port_num = 1; + ib_dispatch_event(&ib_event); + break; + case NETDEV_UP: + usnic_fwd_add_ipaddr(us_ibdev->ufdev, ifa->ifa_address); + usnic_info("%s via ip notifiers: ip %pI4", + usnic_ib_netdev_event_to_string(event), + &us_ibdev->ufdev->inaddr); + ib_event.event = IB_EVENT_GID_CHANGE; + ib_event.device = &us_ibdev->ib_dev; + ib_event.element.port_num = 1; + ib_dispatch_event(&ib_event); + break; + default: + usnic_info("Ignoring event %s on %s", + usnic_ib_netdev_event_to_string(event), + us_ibdev->ib_dev.name); + } + mutex_unlock(&us_ibdev->usdev_lock); + + return NOTIFY_DONE; +} + +static int usnic_ib_inetaddr_event(struct notifier_block *notifier, + unsigned long event, void *ptr) +{ + struct usnic_ib_dev *us_ibdev; + struct in_ifaddr *ifa = ptr; + struct net_device *netdev = ifa->ifa_dev->dev; + + mutex_lock(&usnic_ib_ibdev_list_lock); + list_for_each_entry(us_ibdev, &usnic_ib_ibdev_list, ib_dev_link) { + if (us_ibdev->netdev == netdev) { + usnic_ib_handle_inet_event(us_ibdev, event, ptr); + break; + } + } + mutex_unlock(&usnic_ib_ibdev_list_lock); + + return NOTIFY_DONE; +} +static struct notifier_block usnic_ib_inetaddr_notifier = { + .notifier_call = usnic_ib_inetaddr_event +}; +/* End of inet section*/ + +/* Start of PF discovery section */ +static void *usnic_ib_device_add(struct pci_dev *dev) +{ + struct usnic_ib_dev *us_ibdev; + union ib_gid gid; + struct in_ifaddr *in; + struct net_device *netdev; + + usnic_dbg("\n"); + netdev = pci_get_drvdata(dev); + + us_ibdev = (struct usnic_ib_dev *)ib_alloc_device(sizeof(*us_ibdev)); + if (IS_ERR_OR_NULL(us_ibdev)) { + usnic_err("Device %s context alloc failed\n", + netdev_name(pci_get_drvdata(dev))); + return ERR_PTR(us_ibdev ? PTR_ERR(us_ibdev) : -EFAULT); + } + + us_ibdev->ufdev = usnic_fwd_dev_alloc(dev); + if (IS_ERR_OR_NULL(us_ibdev->ufdev)) { + usnic_err("Failed to alloc ufdev for %s with err %ld\n", + pci_name(dev), PTR_ERR(us_ibdev->ufdev)); + goto err_dealloc; + } + + mutex_init(&us_ibdev->usdev_lock); + INIT_LIST_HEAD(&us_ibdev->vf_dev_list); + INIT_LIST_HEAD(&us_ibdev->ctx_list); + + us_ibdev->pdev = dev; + us_ibdev->netdev = pci_get_drvdata(dev); + us_ibdev->ib_dev.owner = THIS_MODULE; + us_ibdev->ib_dev.node_type = RDMA_NODE_USNIC_UDP; + us_ibdev->ib_dev.phys_port_cnt = USNIC_IB_PORT_CNT; + us_ibdev->ib_dev.num_comp_vectors = USNIC_IB_NUM_COMP_VECTORS; + us_ibdev->ib_dev.dma_device = &dev->dev; + us_ibdev->ib_dev.uverbs_abi_ver = USNIC_UVERBS_ABI_VERSION; + strlcpy(us_ibdev->ib_dev.name, "usnic_%d", IB_DEVICE_NAME_MAX); + + us_ibdev->ib_dev.uverbs_cmd_mask = + (1ull << IB_USER_VERBS_CMD_GET_CONTEXT) | + (1ull << IB_USER_VERBS_CMD_QUERY_DEVICE) | + (1ull << IB_USER_VERBS_CMD_QUERY_PORT) | + (1ull << IB_USER_VERBS_CMD_ALLOC_PD) | + (1ull << IB_USER_VERBS_CMD_DEALLOC_PD) | + (1ull << IB_USER_VERBS_CMD_REG_MR) | + (1ull << IB_USER_VERBS_CMD_DEREG_MR) | + (1ull << IB_USER_VERBS_CMD_CREATE_COMP_CHANNEL) | + (1ull << IB_USER_VERBS_CMD_CREATE_CQ) | + (1ull << IB_USER_VERBS_CMD_DESTROY_CQ) | + (1ull << IB_USER_VERBS_CMD_CREATE_QP) | + (1ull << IB_USER_VERBS_CMD_MODIFY_QP) | + (1ull << IB_USER_VERBS_CMD_QUERY_QP) | + (1ull << IB_USER_VERBS_CMD_DESTROY_QP) | + (1ull << IB_USER_VERBS_CMD_ATTACH_MCAST) | + (1ull << IB_USER_VERBS_CMD_DETACH_MCAST) | + (1ull << IB_USER_VERBS_CMD_OPEN_QP); + + us_ibdev->ib_dev.query_device = usnic_ib_query_device; + us_ibdev->ib_dev.query_port = usnic_ib_query_port; + us_ibdev->ib_dev.query_pkey = usnic_ib_query_pkey; + us_ibdev->ib_dev.query_gid = usnic_ib_query_gid; + us_ibdev->ib_dev.get_link_layer = usnic_ib_port_link_layer; + us_ibdev->ib_dev.alloc_pd = usnic_ib_alloc_pd; + us_ibdev->ib_dev.dealloc_pd = usnic_ib_dealloc_pd; + us_ibdev->ib_dev.create_qp = usnic_ib_create_qp; + us_ibdev->ib_dev.modify_qp = usnic_ib_modify_qp; + us_ibdev->ib_dev.query_qp = usnic_ib_query_qp; + us_ibdev->ib_dev.destroy_qp = usnic_ib_destroy_qp; + us_ibdev->ib_dev.create_cq = usnic_ib_create_cq; + us_ibdev->ib_dev.destroy_cq = usnic_ib_destroy_cq; + us_ibdev->ib_dev.reg_user_mr = usnic_ib_reg_mr; + us_ibdev->ib_dev.dereg_mr = usnic_ib_dereg_mr; + us_ibdev->ib_dev.alloc_ucontext = usnic_ib_alloc_ucontext; + us_ibdev->ib_dev.dealloc_ucontext = usnic_ib_dealloc_ucontext; + us_ibdev->ib_dev.mmap = usnic_ib_mmap; + us_ibdev->ib_dev.create_ah = usnic_ib_create_ah; + us_ibdev->ib_dev.destroy_ah = usnic_ib_destroy_ah; + us_ibdev->ib_dev.post_send = usnic_ib_post_send; + us_ibdev->ib_dev.post_recv = usnic_ib_post_recv; + us_ibdev->ib_dev.poll_cq = usnic_ib_poll_cq; + us_ibdev->ib_dev.req_notify_cq = usnic_ib_req_notify_cq; + us_ibdev->ib_dev.get_dma_mr = usnic_ib_get_dma_mr; + + + if (ib_register_device(&us_ibdev->ib_dev, NULL)) + goto err_fwd_dealloc; + + usnic_fwd_set_mtu(us_ibdev->ufdev, us_ibdev->netdev->mtu); + usnic_fwd_set_mac(us_ibdev->ufdev, us_ibdev->netdev->dev_addr); + if (netif_carrier_ok(us_ibdev->netdev)) + usnic_fwd_carrier_up(us_ibdev->ufdev); + + in = ((struct in_device *)(netdev->ip_ptr))->ifa_list; + if (in != NULL) + usnic_fwd_add_ipaddr(us_ibdev->ufdev, in->ifa_address); + + usnic_mac_ip_to_gid(us_ibdev->netdev->perm_addr, + us_ibdev->ufdev->inaddr, &gid.raw[0]); + memcpy(&us_ibdev->ib_dev.node_guid, &gid.global.interface_id, + sizeof(gid.global.interface_id)); + kref_init(&us_ibdev->vf_cnt); + + usnic_info("Added ibdev: %s netdev: %s with mac %pM Link: %u MTU: %u\n", + us_ibdev->ib_dev.name, netdev_name(us_ibdev->netdev), + us_ibdev->ufdev->mac, us_ibdev->ufdev->link_up, + us_ibdev->ufdev->mtu); + return us_ibdev; + +err_fwd_dealloc: + usnic_fwd_dev_free(us_ibdev->ufdev); +err_dealloc: + usnic_err("failed -- deallocing device\n"); + ib_dealloc_device(&us_ibdev->ib_dev); + return NULL; +} + +static void usnic_ib_device_remove(struct usnic_ib_dev *us_ibdev) +{ + usnic_info("Unregistering %s\n", us_ibdev->ib_dev.name); + usnic_ib_sysfs_unregister_usdev(us_ibdev); + usnic_fwd_dev_free(us_ibdev->ufdev); + ib_unregister_device(&us_ibdev->ib_dev); + ib_dealloc_device(&us_ibdev->ib_dev); +} + +static void usnic_ib_undiscover_pf(struct kref *kref) +{ + struct usnic_ib_dev *us_ibdev, *tmp; + struct pci_dev *dev; + bool found = false; + + dev = container_of(kref, struct usnic_ib_dev, vf_cnt)->pdev; + mutex_lock(&usnic_ib_ibdev_list_lock); + list_for_each_entry_safe(us_ibdev, tmp, + &usnic_ib_ibdev_list, ib_dev_link) { + if (us_ibdev->pdev == dev) { + list_del(&us_ibdev->ib_dev_link); + usnic_ib_device_remove(us_ibdev); + found = true; + break; + } + } + + WARN(!found, "Failed to remove PF %s\n", pci_name(dev)); + + mutex_unlock(&usnic_ib_ibdev_list_lock); +} + +static struct usnic_ib_dev *usnic_ib_discover_pf(struct usnic_vnic *vnic) +{ + struct usnic_ib_dev *us_ibdev; + struct pci_dev *parent_pci, *vf_pci; + int err; + + vf_pci = usnic_vnic_get_pdev(vnic); + parent_pci = pci_physfn(vf_pci); + + BUG_ON(!parent_pci); + + mutex_lock(&usnic_ib_ibdev_list_lock); + list_for_each_entry(us_ibdev, &usnic_ib_ibdev_list, ib_dev_link) { + if (us_ibdev->pdev == parent_pci) { + kref_get(&us_ibdev->vf_cnt); + goto out; + } + } + + us_ibdev = usnic_ib_device_add(parent_pci); + if (IS_ERR_OR_NULL(us_ibdev)) { + us_ibdev = us_ibdev ? us_ibdev : ERR_PTR(-EFAULT); + goto out; + } + + err = usnic_ib_sysfs_register_usdev(us_ibdev); + if (err) { + usnic_ib_device_remove(us_ibdev); + us_ibdev = ERR_PTR(err); + goto out; + } + + list_add(&us_ibdev->ib_dev_link, &usnic_ib_ibdev_list); +out: + mutex_unlock(&usnic_ib_ibdev_list_lock); + return us_ibdev; +} +/* End of PF discovery section */ + +/* Start of PCI section */ + +static DEFINE_PCI_DEVICE_TABLE(usnic_ib_pci_ids) = { + {PCI_DEVICE(PCI_VENDOR_ID_CISCO, PCI_DEVICE_ID_CISCO_VIC_USPACE_NIC)}, + {0,} +}; + +static int usnic_ib_pci_probe(struct pci_dev *pdev, + const struct pci_device_id *id) +{ + int err; + struct usnic_ib_dev *pf; + struct usnic_ib_vf *vf; + enum usnic_vnic_res_type res_type; + + vf = kzalloc(sizeof(*vf), GFP_KERNEL); + if (!vf) + return -ENOMEM; + + err = pci_enable_device(pdev); + if (err) { + usnic_err("Failed to enable %s with err %d\n", + pci_name(pdev), err); + goto out_clean_vf; + } + + err = pci_request_regions(pdev, DRV_NAME); + if (err) { + usnic_err("Failed to request region for %s with err %d\n", + pci_name(pdev), err); + goto out_disable_device; + } + + pci_set_master(pdev); + pci_set_drvdata(pdev, vf); + + vf->vnic = usnic_vnic_alloc(pdev); + if (IS_ERR_OR_NULL(vf->vnic)) { + err = vf->vnic ? PTR_ERR(vf->vnic) : -ENOMEM; + usnic_err("Failed to alloc vnic for %s with err %d\n", + pci_name(pdev), err); + goto out_release_regions; + } + + pf = usnic_ib_discover_pf(vf->vnic); + if (IS_ERR_OR_NULL(pf)) { + usnic_err("Failed to discover pf of vnic %s with err%ld\n", + pci_name(pdev), PTR_ERR(pf)); + err = pf ? PTR_ERR(pf) : -EFAULT; + goto out_clean_vnic; + } + + vf->pf = pf; + spin_lock_init(&vf->lock); + mutex_lock(&pf->usdev_lock); + list_add_tail(&vf->link, &pf->vf_dev_list); + /* + * Save max settings (will be same for each VF, easier to re-write than + * to say "if (!set) { set_values(); set=1; } + */ + for (res_type = USNIC_VNIC_RES_TYPE_EOL+1; + res_type < USNIC_VNIC_RES_TYPE_MAX; + res_type++) { + pf->vf_res_cnt[res_type] = usnic_vnic_res_cnt(vf->vnic, + res_type); + } + + mutex_unlock(&pf->usdev_lock); + + usnic_info("Registering usnic VF %s into PF %s\n", pci_name(pdev), + pf->ib_dev.name); + usnic_ib_log_vf(vf); + return 0; + +out_clean_vnic: + usnic_vnic_free(vf->vnic); +out_release_regions: + pci_set_drvdata(pdev, NULL); + pci_clear_master(pdev); + pci_release_regions(pdev); +out_disable_device: + pci_disable_device(pdev); +out_clean_vf: + kfree(vf); + return err; +} + +static void usnic_ib_pci_remove(struct pci_dev *pdev) +{ + struct usnic_ib_vf *vf = pci_get_drvdata(pdev); + struct usnic_ib_dev *pf = vf->pf; + + mutex_lock(&pf->usdev_lock); + list_del(&vf->link); + mutex_unlock(&pf->usdev_lock); + + kref_put(&pf->vf_cnt, usnic_ib_undiscover_pf); + usnic_vnic_free(vf->vnic); + pci_set_drvdata(pdev, NULL); + pci_clear_master(pdev); + pci_release_regions(pdev); + pci_disable_device(pdev); + kfree(vf); + + usnic_info("Removed VF %s\n", pci_name(pdev)); +} + +/* PCI driver entry points */ +static struct pci_driver usnic_ib_pci_driver = { + .name = DRV_NAME, + .id_table = usnic_ib_pci_ids, + .probe = usnic_ib_pci_probe, + .remove = usnic_ib_pci_remove, +}; +/* End of PCI section */ + +/* Start of module section */ +static int __init usnic_ib_init(void) +{ + int err; + + printk_once(KERN_INFO "%s", usnic_version); + + err = usnic_uiom_init(DRV_NAME); + if (err) { + usnic_err("Unable to initalize umem with err %d\n", err); + return err; + } + + if (pci_register_driver(&usnic_ib_pci_driver)) { + usnic_err("Unable to register with PCI\n"); + goto out_umem_fini; + } + + err = register_netdevice_notifier(&usnic_ib_netdevice_notifier); + if (err) { + usnic_err("Failed to register netdev notifier\n"); + goto out_pci_unreg; + } + + err = register_inetaddr_notifier(&usnic_ib_inetaddr_notifier); + if (err) { + usnic_err("Failed to register inet addr notifier\n"); + goto out_unreg_netdev_notifier; + } + + err = usnic_transport_init(); + if (err) { + usnic_err("Failed to initialize transport\n"); + goto out_unreg_inetaddr_notifier; + } + + usnic_debugfs_init(); + + return 0; + +out_unreg_inetaddr_notifier: + unregister_inetaddr_notifier(&usnic_ib_inetaddr_notifier); +out_unreg_netdev_notifier: + unregister_netdevice_notifier(&usnic_ib_netdevice_notifier); +out_pci_unreg: + pci_unregister_driver(&usnic_ib_pci_driver); +out_umem_fini: + usnic_uiom_fini(); + + return err; +} + +static void __exit usnic_ib_destroy(void) +{ + usnic_dbg("\n"); + usnic_debugfs_exit(); + usnic_transport_fini(); + unregister_inetaddr_notifier(&usnic_ib_inetaddr_notifier); + unregister_netdevice_notifier(&usnic_ib_netdevice_notifier); + pci_unregister_driver(&usnic_ib_pci_driver); + usnic_uiom_fini(); +} + +MODULE_DESCRIPTION("Cisco VIC (usNIC) Verbs Driver"); +MODULE_AUTHOR("Upinder Malhi "); +MODULE_LICENSE("Dual BSD/GPL"); +MODULE_VERSION(DRV_VERSION); +module_param(usnic_log_lvl, uint, S_IRUGO | S_IWUSR); +module_param(usnic_ib_share_vf, uint, S_IRUGO | S_IWUSR); +MODULE_PARM_DESC(usnic_log_lvl, " Off=0, Err=1, Info=2, Debug=3"); +MODULE_PARM_DESC(usnic_ib_share_vf, "Off=0, On=1 VF sharing amongst QPs"); +MODULE_DEVICE_TABLE(pci, usnic_ib_pci_ids); + +module_init(usnic_ib_init); +module_exit(usnic_ib_destroy); +/* End of module section */ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c @@ -0,0 +1,761 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ +#include +#include +#include +#include + +#include "usnic_log.h" +#include "usnic_vnic.h" +#include "usnic_fwd.h" +#include "usnic_uiom.h" +#include "usnic_debugfs.h" +#include "usnic_ib_qp_grp.h" +#include "usnic_ib_sysfs.h" +#include "usnic_transport.h" + +#define DFLT_RQ_IDX 0 + +const char *usnic_ib_qp_grp_state_to_string(enum ib_qp_state state) +{ + switch (state) { + case IB_QPS_RESET: + return "Rst"; + case IB_QPS_INIT: + return "Init"; + case IB_QPS_RTR: + return "RTR"; + case IB_QPS_RTS: + return "RTS"; + case IB_QPS_SQD: + return "SQD"; + case IB_QPS_SQE: + return "SQE"; + case IB_QPS_ERR: + return "ERR"; + default: + return "UNKOWN STATE"; + + } +} + +int usnic_ib_qp_grp_dump_hdr(char *buf, int buf_sz) +{ + return scnprintf(buf, buf_sz, "|QPN\t|State\t|PID\t|VF Idx\t|Fil ID"); +} + +int usnic_ib_qp_grp_dump_rows(void *obj, char *buf, int buf_sz) +{ + struct usnic_ib_qp_grp *qp_grp = obj; + struct usnic_ib_qp_grp_flow *default_flow; + if (obj) { + default_flow = list_first_entry(&qp_grp->flows_lst, + struct usnic_ib_qp_grp_flow, link); + return scnprintf(buf, buf_sz, "|%d\t|%s\t|%d\t|%hu\t|%d", + qp_grp->ibqp.qp_num, + usnic_ib_qp_grp_state_to_string( + qp_grp->state), + qp_grp->owner_pid, + usnic_vnic_get_index(qp_grp->vf->vnic), + default_flow->flow->flow_id); + } else { + return scnprintf(buf, buf_sz, "|N/A\t|N/A\t|N/A\t|N/A\t|N/A"); + } +} + +static struct usnic_vnic_res_chunk * +get_qp_res_chunk(struct usnic_ib_qp_grp *qp_grp) +{ + lockdep_assert_held(&qp_grp->lock); + /* + * The QP res chunk, used to derive qp indices, + * are just indices of the RQs + */ + return usnic_ib_qp_grp_get_chunk(qp_grp, USNIC_VNIC_RES_TYPE_RQ); +} + +static int enable_qp_grp(struct usnic_ib_qp_grp *qp_grp) +{ + + int status; + int i, vnic_idx; + struct usnic_vnic_res_chunk *res_chunk; + struct usnic_vnic_res *res; + + lockdep_assert_held(&qp_grp->lock); + + vnic_idx = usnic_vnic_get_index(qp_grp->vf->vnic); + + res_chunk = get_qp_res_chunk(qp_grp); + if (IS_ERR_OR_NULL(res_chunk)) { + usnic_err("Unable to get qp res with err %ld\n", + PTR_ERR(res_chunk)); + return res_chunk ? PTR_ERR(res_chunk) : -ENOMEM; + } + + for (i = 0; i < res_chunk->cnt; i++) { + res = res_chunk->res[i]; + status = usnic_fwd_enable_qp(qp_grp->ufdev, vnic_idx, + res->vnic_idx); + if (status) { + usnic_err("Failed to enable qp %d of %s:%d\n with err %d\n", + res->vnic_idx, qp_grp->ufdev->name, + vnic_idx, status); + goto out_err; + } + } + + return 0; + +out_err: + for (i--; i >= 0; i--) { + res = res_chunk->res[i]; + usnic_fwd_disable_qp(qp_grp->ufdev, vnic_idx, + res->vnic_idx); + } + + return status; +} + +static int disable_qp_grp(struct usnic_ib_qp_grp *qp_grp) +{ + int i, vnic_idx; + struct usnic_vnic_res_chunk *res_chunk; + struct usnic_vnic_res *res; + int status = 0; + + lockdep_assert_held(&qp_grp->lock); + vnic_idx = usnic_vnic_get_index(qp_grp->vf->vnic); + + res_chunk = get_qp_res_chunk(qp_grp); + if (IS_ERR_OR_NULL(res_chunk)) { + usnic_err("Unable to get qp res with err %ld\n", + PTR_ERR(res_chunk)); + return res_chunk ? PTR_ERR(res_chunk) : -ENOMEM; + } + + for (i = 0; i < res_chunk->cnt; i++) { + res = res_chunk->res[i]; + status = usnic_fwd_disable_qp(qp_grp->ufdev, vnic_idx, + res->vnic_idx); + if (status) { + usnic_err("Failed to disable rq %d of %s:%d\n with err %d\n", + res->vnic_idx, + qp_grp->ufdev->name, + vnic_idx, status); + } + } + + return status; + +} + +static int init_filter_action(struct usnic_ib_qp_grp *qp_grp, + struct usnic_filter_action *uaction) +{ + struct usnic_vnic_res_chunk *res_chunk; + + res_chunk = usnic_ib_qp_grp_get_chunk(qp_grp, USNIC_VNIC_RES_TYPE_RQ); + if (IS_ERR_OR_NULL(res_chunk)) { + usnic_err("Unable to get %s with err %ld\n", + usnic_vnic_res_type_to_str(USNIC_VNIC_RES_TYPE_RQ), + PTR_ERR(res_chunk)); + return res_chunk ? PTR_ERR(res_chunk) : -ENOMEM; + } + + uaction->vnic_idx = usnic_vnic_get_index(qp_grp->vf->vnic); + uaction->action.type = FILTER_ACTION_RQ_STEERING; + uaction->action.u.rq_idx = res_chunk->res[DFLT_RQ_IDX]->vnic_idx; + + return 0; +} + +static struct usnic_ib_qp_grp_flow* +create_roce_custom_flow(struct usnic_ib_qp_grp *qp_grp, + struct usnic_transport_spec *trans_spec) +{ + uint16_t port_num; + int err; + struct filter filter; + struct usnic_filter_action uaction; + struct usnic_ib_qp_grp_flow *qp_flow; + struct usnic_fwd_flow *flow; + enum usnic_transport_type trans_type; + + trans_type = trans_spec->trans_type; + port_num = trans_spec->usnic_roce.port_num; + + /* Reserve Port */ + port_num = usnic_transport_rsrv_port(trans_type, port_num); + if (port_num == 0) + return ERR_PTR(-EINVAL); + + /* Create Flow */ + usnic_fwd_init_usnic_filter(&filter, port_num); + err = init_filter_action(qp_grp, &uaction); + if (err) + goto out_unreserve_port; + + flow = usnic_fwd_alloc_flow(qp_grp->ufdev, &filter, &uaction); + if (IS_ERR_OR_NULL(flow)) { + usnic_err("Unable to alloc flow failed with err %ld\n", + PTR_ERR(flow)); + err = flow ? PTR_ERR(flow) : -EFAULT; + goto out_unreserve_port; + } + + /* Create Flow Handle */ + qp_flow = kzalloc(sizeof(*qp_flow), GFP_ATOMIC); + if (IS_ERR_OR_NULL(qp_flow)) { + err = qp_flow ? PTR_ERR(qp_flow) : -ENOMEM; + goto out_dealloc_flow; + } + qp_flow->flow = flow; + qp_flow->trans_type = trans_type; + qp_flow->usnic_roce.port_num = port_num; + qp_flow->qp_grp = qp_grp; + return qp_flow; + +out_dealloc_flow: + usnic_fwd_dealloc_flow(flow); +out_unreserve_port: + usnic_transport_unrsrv_port(trans_type, port_num); + return ERR_PTR(err); +} + +static void release_roce_custom_flow(struct usnic_ib_qp_grp_flow *qp_flow) +{ + usnic_fwd_dealloc_flow(qp_flow->flow); + usnic_transport_unrsrv_port(qp_flow->trans_type, + qp_flow->usnic_roce.port_num); + kfree(qp_flow); +} + +static struct usnic_ib_qp_grp_flow* +create_udp_flow(struct usnic_ib_qp_grp *qp_grp, + struct usnic_transport_spec *trans_spec) +{ + struct socket *sock; + int sock_fd; + int err; + struct filter filter; + struct usnic_filter_action uaction; + struct usnic_ib_qp_grp_flow *qp_flow; + struct usnic_fwd_flow *flow; + enum usnic_transport_type trans_type; + uint32_t addr; + uint16_t port_num; + int proto; + + trans_type = trans_spec->trans_type; + sock_fd = trans_spec->udp.sock_fd; + + /* Get and check socket */ + sock = usnic_transport_get_socket(sock_fd); + if (IS_ERR_OR_NULL(sock)) + return ERR_CAST(sock); + + err = usnic_transport_sock_get_addr(sock, &proto, &addr, &port_num); + if (err) + goto out_put_sock; + + if (proto != IPPROTO_UDP) { + usnic_err("Protocol for fd %d is not UDP", sock_fd); + err = -EPERM; + goto out_put_sock; + } + + /* Create flow */ + usnic_fwd_init_udp_filter(&filter, addr, port_num); + err = init_filter_action(qp_grp, &uaction); + if (err) + goto out_put_sock; + + flow = usnic_fwd_alloc_flow(qp_grp->ufdev, &filter, &uaction); + if (IS_ERR_OR_NULL(flow)) { + usnic_err("Unable to alloc flow failed with err %ld\n", + PTR_ERR(flow)); + err = flow ? PTR_ERR(flow) : -EFAULT; + goto out_put_sock; + } + + /* Create qp_flow */ + qp_flow = kzalloc(sizeof(*qp_flow), GFP_ATOMIC); + if (IS_ERR_OR_NULL(qp_flow)) { + err = qp_flow ? PTR_ERR(qp_flow) : -ENOMEM; + goto out_dealloc_flow; + } + qp_flow->flow = flow; + qp_flow->trans_type = trans_type; + qp_flow->udp.sock = sock; + qp_flow->qp_grp = qp_grp; + return qp_flow; + +out_dealloc_flow: + usnic_fwd_dealloc_flow(flow); +out_put_sock: + usnic_transport_put_socket(sock); + return ERR_PTR(err); +} + +static void release_udp_flow(struct usnic_ib_qp_grp_flow *qp_flow) +{ + usnic_fwd_dealloc_flow(qp_flow->flow); + usnic_transport_put_socket(qp_flow->udp.sock); + kfree(qp_flow); +} + +static struct usnic_ib_qp_grp_flow* +create_and_add_flow(struct usnic_ib_qp_grp *qp_grp, + struct usnic_transport_spec *trans_spec) +{ + struct usnic_ib_qp_grp_flow *qp_flow; + enum usnic_transport_type trans_type; + + trans_type = trans_spec->trans_type; + switch (trans_type) { + case USNIC_TRANSPORT_ROCE_CUSTOM: + qp_flow = create_roce_custom_flow(qp_grp, trans_spec); + break; + case USNIC_TRANSPORT_IPV4_UDP: + qp_flow = create_udp_flow(qp_grp, trans_spec); + break; + default: + usnic_err("Unsupported transport %u\n", + trans_spec->trans_type); + return ERR_PTR(-EINVAL); + } + + if (!IS_ERR_OR_NULL(qp_flow)) { + list_add_tail(&qp_flow->link, &qp_grp->flows_lst); + usnic_debugfs_flow_add(qp_flow); + } + + + return qp_flow; +} + +static void release_and_remove_flow(struct usnic_ib_qp_grp_flow *qp_flow) +{ + usnic_debugfs_flow_remove(qp_flow); + list_del(&qp_flow->link); + + switch (qp_flow->trans_type) { + case USNIC_TRANSPORT_ROCE_CUSTOM: + release_roce_custom_flow(qp_flow); + break; + case USNIC_TRANSPORT_IPV4_UDP: + release_udp_flow(qp_flow); + break; + default: + WARN(1, "Unsupported transport %u\n", + qp_flow->trans_type); + break; + } +} + +static void release_and_remove_all_flows(struct usnic_ib_qp_grp *qp_grp) +{ + struct usnic_ib_qp_grp_flow *qp_flow, *tmp; + list_for_each_entry_safe(qp_flow, tmp, &qp_grp->flows_lst, link) + release_and_remove_flow(qp_flow); +} + +int usnic_ib_qp_grp_modify(struct usnic_ib_qp_grp *qp_grp, + enum ib_qp_state new_state, + void *data) +{ + int status = 0; + int vnic_idx; + struct ib_event ib_event; + enum ib_qp_state old_state; + struct usnic_transport_spec *trans_spec; + struct usnic_ib_qp_grp_flow *qp_flow; + + old_state = qp_grp->state; + vnic_idx = usnic_vnic_get_index(qp_grp->vf->vnic); + trans_spec = (struct usnic_transport_spec *) data; + + spin_lock(&qp_grp->lock); + switch (new_state) { + case IB_QPS_RESET: + switch (old_state) { + case IB_QPS_RESET: + /* NO-OP */ + break; + case IB_QPS_INIT: + release_and_remove_all_flows(qp_grp); + status = 0; + break; + case IB_QPS_RTR: + case IB_QPS_RTS: + case IB_QPS_ERR: + status = disable_qp_grp(qp_grp); + release_and_remove_all_flows(qp_grp); + break; + default: + status = -EINVAL; + } + break; + case IB_QPS_INIT: + switch (old_state) { + case IB_QPS_RESET: + if (trans_spec) { + qp_flow = create_and_add_flow(qp_grp, + trans_spec); + if (IS_ERR_OR_NULL(qp_flow)) { + status = qp_flow ? PTR_ERR(qp_flow) : -EFAULT; + break; + } + } else { + /* + * Optional to specify filters. + */ + status = 0; + } + break; + case IB_QPS_INIT: + if (trans_spec) { + qp_flow = create_and_add_flow(qp_grp, + trans_spec); + if (IS_ERR_OR_NULL(qp_flow)) { + status = qp_flow ? PTR_ERR(qp_flow) : -EFAULT; + break; + } + } else { + /* + * Doesn't make sense to go into INIT state + * from INIT state w/o adding filters. + */ + status = -EINVAL; + } + break; + case IB_QPS_RTR: + status = disable_qp_grp(qp_grp); + break; + case IB_QPS_RTS: + status = disable_qp_grp(qp_grp); + break; + default: + status = -EINVAL; + } + break; + case IB_QPS_RTR: + switch (old_state) { + case IB_QPS_INIT: + status = enable_qp_grp(qp_grp); + break; + default: + status = -EINVAL; + } + break; + case IB_QPS_RTS: + switch (old_state) { + case IB_QPS_RTR: + /* NO-OP FOR NOW */ + break; + default: + status = -EINVAL; + } + break; + case IB_QPS_ERR: + ib_event.device = &qp_grp->vf->pf->ib_dev; + ib_event.element.qp = &qp_grp->ibqp; + ib_event.event = IB_EVENT_QP_FATAL; + + switch (old_state) { + case IB_QPS_RESET: + qp_grp->ibqp.event_handler(&ib_event, + qp_grp->ibqp.qp_context); + break; + case IB_QPS_INIT: + release_and_remove_all_flows(qp_grp); + qp_grp->ibqp.event_handler(&ib_event, + qp_grp->ibqp.qp_context); + break; + case IB_QPS_RTR: + case IB_QPS_RTS: + status = disable_qp_grp(qp_grp); + release_and_remove_all_flows(qp_grp); + qp_grp->ibqp.event_handler(&ib_event, + qp_grp->ibqp.qp_context); + break; + default: + status = -EINVAL; + } + break; + default: + status = -EINVAL; + } + spin_unlock(&qp_grp->lock); + + if (!status) { + qp_grp->state = new_state; + usnic_info("Transistioned %u from %s to %s", + qp_grp->grp_id, + usnic_ib_qp_grp_state_to_string(old_state), + usnic_ib_qp_grp_state_to_string(new_state)); + } else { + usnic_err("Failed to transistion %u from %s to %s", + qp_grp->grp_id, + usnic_ib_qp_grp_state_to_string(old_state), + usnic_ib_qp_grp_state_to_string(new_state)); + } + + return status; +} + +static struct usnic_vnic_res_chunk** +alloc_res_chunk_list(struct usnic_vnic *vnic, + struct usnic_vnic_res_spec *res_spec, void *owner_obj) +{ + enum usnic_vnic_res_type res_type; + struct usnic_vnic_res_chunk **res_chunk_list; + int err, i, res_cnt, res_lst_sz; + + for (res_lst_sz = 0; + res_spec->resources[res_lst_sz].type != USNIC_VNIC_RES_TYPE_EOL; + res_lst_sz++) { + /* Do Nothing */ + } + + res_chunk_list = kzalloc(sizeof(*res_chunk_list)*(res_lst_sz+1), + GFP_ATOMIC); + if (!res_chunk_list) + return ERR_PTR(-ENOMEM); + + for (i = 0; res_spec->resources[i].type != USNIC_VNIC_RES_TYPE_EOL; + i++) { + res_type = res_spec->resources[i].type; + res_cnt = res_spec->resources[i].cnt; + + res_chunk_list[i] = usnic_vnic_get_resources(vnic, res_type, + res_cnt, owner_obj); + if (IS_ERR_OR_NULL(res_chunk_list[i])) { + err = res_chunk_list[i] ? + PTR_ERR(res_chunk_list[i]) : -ENOMEM; + usnic_err("Failed to get %s from %s with err %d\n", + usnic_vnic_res_type_to_str(res_type), + usnic_vnic_pci_name(vnic), + err); + goto out_free_res; + } + } + + return res_chunk_list; + +out_free_res: + for (i--; i > 0; i--) + usnic_vnic_put_resources(res_chunk_list[i]); + kfree(res_chunk_list); + return ERR_PTR(err); +} + +static void free_qp_grp_res(struct usnic_vnic_res_chunk **res_chunk_list) +{ + int i; + for (i = 0; res_chunk_list[i]; i++) + usnic_vnic_put_resources(res_chunk_list[i]); + kfree(res_chunk_list); +} + +static int qp_grp_and_vf_bind(struct usnic_ib_vf *vf, + struct usnic_ib_pd *pd, + struct usnic_ib_qp_grp *qp_grp) +{ + int err; + struct pci_dev *pdev; + + lockdep_assert_held(&vf->lock); + + pdev = usnic_vnic_get_pdev(vf->vnic); + if (vf->qp_grp_ref_cnt == 0) { + err = usnic_uiom_attach_dev_to_pd(pd->umem_pd, &pdev->dev); + if (err) { + usnic_err("Failed to attach %s to domain\n", + pci_name(pdev)); + return err; + } + vf->pd = pd; + } + vf->qp_grp_ref_cnt++; + + WARN_ON(vf->pd != pd); + qp_grp->vf = vf; + + return 0; +} + +static void qp_grp_and_vf_unbind(struct usnic_ib_qp_grp *qp_grp) +{ + struct pci_dev *pdev; + struct usnic_ib_pd *pd; + + lockdep_assert_held(&qp_grp->vf->lock); + + pd = qp_grp->vf->pd; + pdev = usnic_vnic_get_pdev(qp_grp->vf->vnic); + if (--qp_grp->vf->qp_grp_ref_cnt == 0) { + qp_grp->vf->pd = NULL; + usnic_uiom_detach_dev_from_pd(pd->umem_pd, &pdev->dev); + } + qp_grp->vf = NULL; +} + +static void log_spec(struct usnic_vnic_res_spec *res_spec) +{ + char buf[512]; + usnic_vnic_spec_dump(buf, sizeof(buf), res_spec); + usnic_dbg("%s\n", buf); +} + +static int qp_grp_id_from_flow(struct usnic_ib_qp_grp_flow *qp_flow, + uint32_t *id) +{ + enum usnic_transport_type trans_type = qp_flow->trans_type; + int err; + uint16_t port_num = 0; + + switch (trans_type) { + case USNIC_TRANSPORT_ROCE_CUSTOM: + *id = qp_flow->usnic_roce.port_num; + break; + case USNIC_TRANSPORT_IPV4_UDP: + err = usnic_transport_sock_get_addr(qp_flow->udp.sock, + NULL, NULL, + &port_num); + if (err) + return err; + /* + * Copy port_num to stack first and then to *id, + * so that the short to int cast works for little + * and big endian systems. + */ + *id = port_num; + break; + default: + usnic_err("Unsupported transport %u\n", trans_type); + return -EINVAL; + } + + return 0; +} + +struct usnic_ib_qp_grp * +usnic_ib_qp_grp_create(struct usnic_fwd_dev *ufdev, struct usnic_ib_vf *vf, + struct usnic_ib_pd *pd, + struct usnic_vnic_res_spec *res_spec, + struct usnic_transport_spec *transport_spec) +{ + struct usnic_ib_qp_grp *qp_grp; + int err; + enum usnic_transport_type transport = transport_spec->trans_type; + struct usnic_ib_qp_grp_flow *qp_flow; + + lockdep_assert_held(&vf->lock); + + err = usnic_vnic_res_spec_satisfied(&min_transport_spec[transport], + res_spec); + if (err) { + usnic_err("Spec does not meet miniumum req for transport %d\n", + transport); + log_spec(res_spec); + return ERR_PTR(err); + } + + qp_grp = kzalloc(sizeof(*qp_grp), GFP_ATOMIC); + if (!qp_grp) { + usnic_err("Unable to alloc qp_grp - Out of memory\n"); + return NULL; + } + + qp_grp->res_chunk_list = alloc_res_chunk_list(vf->vnic, res_spec, + qp_grp); + if (IS_ERR_OR_NULL(qp_grp->res_chunk_list)) { + err = qp_grp->res_chunk_list ? + PTR_ERR(qp_grp->res_chunk_list) : -ENOMEM; + usnic_err("Unable to alloc res for %d with err %d\n", + qp_grp->grp_id, err); + goto out_free_qp_grp; + } + + err = qp_grp_and_vf_bind(vf, pd, qp_grp); + if (err) + goto out_free_res; + + INIT_LIST_HEAD(&qp_grp->flows_lst); + spin_lock_init(&qp_grp->lock); + qp_grp->ufdev = ufdev; + qp_grp->state = IB_QPS_RESET; + qp_grp->owner_pid = current->pid; + + qp_flow = create_and_add_flow(qp_grp, transport_spec); + if (IS_ERR_OR_NULL(qp_flow)) { + usnic_err("Unable to create and add flow with err %ld\n", + PTR_ERR(qp_flow)); + err = qp_flow ? PTR_ERR(qp_flow) : -EFAULT; + goto out_qp_grp_vf_unbind; + } + + err = qp_grp_id_from_flow(qp_flow, &qp_grp->grp_id); + if (err) + goto out_release_flow; + qp_grp->ibqp.qp_num = qp_grp->grp_id; + + usnic_ib_sysfs_qpn_add(qp_grp); + + return qp_grp; + +out_release_flow: + release_and_remove_flow(qp_flow); +out_qp_grp_vf_unbind: + qp_grp_and_vf_unbind(qp_grp); +out_free_res: + free_qp_grp_res(qp_grp->res_chunk_list); +out_free_qp_grp: + kfree(qp_grp); + + return ERR_PTR(err); +} + +void usnic_ib_qp_grp_destroy(struct usnic_ib_qp_grp *qp_grp) +{ + + WARN_ON(qp_grp->state != IB_QPS_RESET); + lockdep_assert_held(&qp_grp->vf->lock); + + release_and_remove_all_flows(qp_grp); + usnic_ib_sysfs_qpn_remove(qp_grp); + qp_grp_and_vf_unbind(qp_grp); + free_qp_grp_res(qp_grp->res_chunk_list); + kfree(qp_grp); +} + +struct usnic_vnic_res_chunk* +usnic_ib_qp_grp_get_chunk(struct usnic_ib_qp_grp *qp_grp, + enum usnic_vnic_res_type res_type) +{ + int i; + + for (i = 0; qp_grp->res_chunk_list[i]; i++) { + if (qp_grp->res_chunk_list[i]->type == res_type) + return qp_grp->res_chunk_list[i]; + } + + return ERR_PTR(-EINVAL); +} --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_ib_qp_grp.h +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_ib_qp_grp.h @@ -0,0 +1,117 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#ifndef USNIC_IB_QP_GRP_H_ +#define USNIC_IB_QP_GRP_H_ + +#include +#include + +#include "usnic_ib.h" +#include "usnic_abi.h" +#include "usnic_fwd.h" +#include "usnic_vnic.h" + +/* + * The qp group struct represents all the hw resources needed to present a ib_qp + */ +struct usnic_ib_qp_grp { + struct ib_qp ibqp; + enum ib_qp_state state; + int grp_id; + + struct usnic_fwd_dev *ufdev; + struct usnic_ib_ucontext *ctx; + struct list_head flows_lst; + + struct usnic_vnic_res_chunk **res_chunk_list; + + pid_t owner_pid; + struct usnic_ib_vf *vf; + struct list_head link; + + spinlock_t lock; + + struct kobject kobj; +}; + +struct usnic_ib_qp_grp_flow { + struct usnic_fwd_flow *flow; + enum usnic_transport_type trans_type; + union { + struct { + uint16_t port_num; + } usnic_roce; + struct { + struct socket *sock; + } udp; + }; + struct usnic_ib_qp_grp *qp_grp; + struct list_head link; + + /* Debug FS */ + struct dentry *dbgfs_dentry; + char dentry_name[32]; +}; + +static const struct +usnic_vnic_res_spec min_transport_spec[USNIC_TRANSPORT_MAX] = { + { /*USNIC_TRANSPORT_UNKNOWN*/ + .resources = { + {.type = USNIC_VNIC_RES_TYPE_EOL, .cnt = 0,}, + }, + }, + { /*USNIC_TRANSPORT_ROCE_CUSTOM*/ + .resources = { + {.type = USNIC_VNIC_RES_TYPE_WQ, .cnt = 1,}, + {.type = USNIC_VNIC_RES_TYPE_RQ, .cnt = 1,}, + {.type = USNIC_VNIC_RES_TYPE_CQ, .cnt = 1,}, + {.type = USNIC_VNIC_RES_TYPE_EOL, .cnt = 0,}, + }, + }, + { /*USNIC_TRANSPORT_IPV4_UDP*/ + .resources = { + {.type = USNIC_VNIC_RES_TYPE_WQ, .cnt = 1,}, + {.type = USNIC_VNIC_RES_TYPE_RQ, .cnt = 1,}, + {.type = USNIC_VNIC_RES_TYPE_CQ, .cnt = 1,}, + {.type = USNIC_VNIC_RES_TYPE_EOL, .cnt = 0,}, + }, + }, +}; + +const char *usnic_ib_qp_grp_state_to_string(enum ib_qp_state state); +int usnic_ib_qp_grp_dump_hdr(char *buf, int buf_sz); +int usnic_ib_qp_grp_dump_rows(void *obj, char *buf, int buf_sz); +struct usnic_ib_qp_grp * +usnic_ib_qp_grp_create(struct usnic_fwd_dev *ufdev, struct usnic_ib_vf *vf, + struct usnic_ib_pd *pd, + struct usnic_vnic_res_spec *res_spec, + struct usnic_transport_spec *trans_spec); +void usnic_ib_qp_grp_destroy(struct usnic_ib_qp_grp *qp_grp); +int usnic_ib_qp_grp_modify(struct usnic_ib_qp_grp *qp_grp, + enum ib_qp_state new_state, + void *data); +struct usnic_vnic_res_chunk +*usnic_ib_qp_grp_get_chunk(struct usnic_ib_qp_grp *qp_grp, + enum usnic_vnic_res_type type); +static inline +struct usnic_ib_qp_grp *to_uqp_grp(struct ib_qp *ibqp) +{ + return container_of(ibqp, struct usnic_ib_qp_grp, ibqp); +} +#endif /* USNIC_IB_QP_GRP_H_ */ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_ib_sysfs.c +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_ib_sysfs.c @@ -0,0 +1,341 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#include +#include +#include + +#include +#include + +#include "usnic_common_util.h" +#include "usnic_ib.h" +#include "usnic_ib_qp_grp.h" +#include "usnic_vnic.h" +#include "usnic_ib_verbs.h" +#include "usnic_log.h" + +static ssize_t usnic_ib_show_fw_ver(struct device *device, + struct device_attribute *attr, + char *buf) +{ + struct usnic_ib_dev *us_ibdev = + container_of(device, struct usnic_ib_dev, ib_dev.dev); + struct ethtool_drvinfo info; + + mutex_lock(&us_ibdev->usdev_lock); + us_ibdev->netdev->ethtool_ops->get_drvinfo(us_ibdev->netdev, &info); + mutex_unlock(&us_ibdev->usdev_lock); + + return scnprintf(buf, PAGE_SIZE, "%s\n", info.fw_version); +} + +static ssize_t usnic_ib_show_board(struct device *device, + struct device_attribute *attr, + char *buf) +{ + struct usnic_ib_dev *us_ibdev = + container_of(device, struct usnic_ib_dev, ib_dev.dev); + unsigned short subsystem_device_id; + + mutex_lock(&us_ibdev->usdev_lock); + subsystem_device_id = us_ibdev->pdev->subsystem_device; + mutex_unlock(&us_ibdev->usdev_lock); + + return scnprintf(buf, PAGE_SIZE, "%hu\n", subsystem_device_id); +} + +/* + * Report the configuration for this PF + */ +static ssize_t +usnic_ib_show_config(struct device *device, struct device_attribute *attr, + char *buf) +{ + struct usnic_ib_dev *us_ibdev; + char *ptr; + unsigned left; + unsigned n; + enum usnic_vnic_res_type res_type; + + us_ibdev = container_of(device, struct usnic_ib_dev, ib_dev.dev); + + /* Buffer space limit is 1 page */ + ptr = buf; + left = PAGE_SIZE; + + mutex_lock(&us_ibdev->usdev_lock); + if (atomic_read(&us_ibdev->vf_cnt.refcount) > 0) { + char *busname; + + /* + * bus name seems to come with annoying prefix. + * Remove it if it is predictable + */ + busname = us_ibdev->pdev->bus->name; + if (strncmp(busname, "PCI Bus ", 8) == 0) + busname += 8; + + n = scnprintf(ptr, left, + "%s: %s:%d.%d, %s, %pM, %u VFs\n Per VF:", + us_ibdev->ib_dev.name, + busname, + PCI_SLOT(us_ibdev->pdev->devfn), + PCI_FUNC(us_ibdev->pdev->devfn), + netdev_name(us_ibdev->netdev), + us_ibdev->ufdev->mac, + atomic_read(&us_ibdev->vf_cnt.refcount)); + UPDATE_PTR_LEFT(n, ptr, left); + + for (res_type = USNIC_VNIC_RES_TYPE_EOL; + res_type < USNIC_VNIC_RES_TYPE_MAX; + res_type++) { + if (us_ibdev->vf_res_cnt[res_type] == 0) + continue; + n = scnprintf(ptr, left, " %d %s%s", + us_ibdev->vf_res_cnt[res_type], + usnic_vnic_res_type_to_str(res_type), + (res_type < (USNIC_VNIC_RES_TYPE_MAX - 1)) ? + "," : ""); + UPDATE_PTR_LEFT(n, ptr, left); + } + n = scnprintf(ptr, left, "\n"); + UPDATE_PTR_LEFT(n, ptr, left); + } else { + n = scnprintf(ptr, left, "%s: no VFs\n", + us_ibdev->ib_dev.name); + UPDATE_PTR_LEFT(n, ptr, left); + } + mutex_unlock(&us_ibdev->usdev_lock); + + return ptr - buf; +} + +static ssize_t +usnic_ib_show_iface(struct device *device, struct device_attribute *attr, + char *buf) +{ + struct usnic_ib_dev *us_ibdev; + + us_ibdev = container_of(device, struct usnic_ib_dev, ib_dev.dev); + + return scnprintf(buf, PAGE_SIZE, "%s\n", + netdev_name(us_ibdev->netdev)); +} + +static ssize_t +usnic_ib_show_max_vf(struct device *device, struct device_attribute *attr, + char *buf) +{ + struct usnic_ib_dev *us_ibdev; + + us_ibdev = container_of(device, struct usnic_ib_dev, ib_dev.dev); + + return scnprintf(buf, PAGE_SIZE, "%u\n", + atomic_read(&us_ibdev->vf_cnt.refcount)); +} + +static ssize_t +usnic_ib_show_qp_per_vf(struct device *device, struct device_attribute *attr, + char *buf) +{ + struct usnic_ib_dev *us_ibdev; + int qp_per_vf; + + us_ibdev = container_of(device, struct usnic_ib_dev, ib_dev.dev); + qp_per_vf = max(us_ibdev->vf_res_cnt[USNIC_VNIC_RES_TYPE_WQ], + us_ibdev->vf_res_cnt[USNIC_VNIC_RES_TYPE_RQ]); + + return scnprintf(buf, PAGE_SIZE, + "%d\n", qp_per_vf); +} + +static ssize_t +usnic_ib_show_cq_per_vf(struct device *device, struct device_attribute *attr, + char *buf) +{ + struct usnic_ib_dev *us_ibdev; + + us_ibdev = container_of(device, struct usnic_ib_dev, ib_dev.dev); + + return scnprintf(buf, PAGE_SIZE, "%d\n", + us_ibdev->vf_res_cnt[USNIC_VNIC_RES_TYPE_CQ]); +} + +static DEVICE_ATTR(fw_ver, S_IRUGO, usnic_ib_show_fw_ver, NULL); +static DEVICE_ATTR(board_id, S_IRUGO, usnic_ib_show_board, NULL); +static DEVICE_ATTR(config, S_IRUGO, usnic_ib_show_config, NULL); +static DEVICE_ATTR(iface, S_IRUGO, usnic_ib_show_iface, NULL); +static DEVICE_ATTR(max_vf, S_IRUGO, usnic_ib_show_max_vf, NULL); +static DEVICE_ATTR(qp_per_vf, S_IRUGO, usnic_ib_show_qp_per_vf, NULL); +static DEVICE_ATTR(cq_per_vf, S_IRUGO, usnic_ib_show_cq_per_vf, NULL); + +static struct device_attribute *usnic_class_attributes[] = { + &dev_attr_fw_ver, + &dev_attr_board_id, + &dev_attr_config, + &dev_attr_iface, + &dev_attr_max_vf, + &dev_attr_qp_per_vf, + &dev_attr_cq_per_vf, +}; + +struct qpn_attribute { + struct attribute attr; + ssize_t (*show)(struct usnic_ib_qp_grp *, char *buf); +}; + +/* + * Definitions for supporting QPN entries in sysfs + */ +static ssize_t +usnic_ib_qpn_attr_show(struct kobject *kobj, struct attribute *attr, char *buf) +{ + struct usnic_ib_qp_grp *qp_grp; + struct qpn_attribute *qpn_attr; + + qp_grp = container_of(kobj, struct usnic_ib_qp_grp, kobj); + qpn_attr = container_of(attr, struct qpn_attribute, attr); + + return qpn_attr->show(qp_grp, buf); +} + +static const struct sysfs_ops usnic_ib_qpn_sysfs_ops = { + .show = usnic_ib_qpn_attr_show +}; + +#define QPN_ATTR_RO(NAME) \ +struct qpn_attribute qpn_attr_##NAME = __ATTR_RO(NAME) + +static ssize_t context_show(struct usnic_ib_qp_grp *qp_grp, char *buf) +{ + return scnprintf(buf, PAGE_SIZE, "0x%p\n", qp_grp->ctx); +} + +static ssize_t summary_show(struct usnic_ib_qp_grp *qp_grp, char *buf) +{ + int i, j, n; + int left; + char *ptr; + struct usnic_vnic_res_chunk *res_chunk; + struct usnic_vnic_res *vnic_res; + + left = PAGE_SIZE; + ptr = buf; + + n = scnprintf(ptr, left, + "QPN: %d State: (%s) PID: %u VF Idx: %hu ", + qp_grp->ibqp.qp_num, + usnic_ib_qp_grp_state_to_string(qp_grp->state), + qp_grp->owner_pid, + usnic_vnic_get_index(qp_grp->vf->vnic)); + UPDATE_PTR_LEFT(n, ptr, left); + + for (i = 0; qp_grp->res_chunk_list[i]; i++) { + res_chunk = qp_grp->res_chunk_list[i]; + for (j = 0; j < res_chunk->cnt; j++) { + vnic_res = res_chunk->res[j]; + n = scnprintf(ptr, left, "%s[%d] ", + usnic_vnic_res_type_to_str(vnic_res->type), + vnic_res->vnic_idx); + UPDATE_PTR_LEFT(n, ptr, left); + } + } + + n = scnprintf(ptr, left, "\n"); + UPDATE_PTR_LEFT(n, ptr, left); + + return ptr - buf; +} + +static QPN_ATTR_RO(context); +static QPN_ATTR_RO(summary); + +static struct attribute *usnic_ib_qpn_default_attrs[] = { + &qpn_attr_context.attr, + &qpn_attr_summary.attr, + NULL +}; + +static struct kobj_type usnic_ib_qpn_type = { + .sysfs_ops = &usnic_ib_qpn_sysfs_ops, + .default_attrs = usnic_ib_qpn_default_attrs +}; + +int usnic_ib_sysfs_register_usdev(struct usnic_ib_dev *us_ibdev) +{ + int i; + int err; + for (i = 0; i < ARRAY_SIZE(usnic_class_attributes); ++i) { + err = device_create_file(&us_ibdev->ib_dev.dev, + usnic_class_attributes[i]); + if (err) { + usnic_err("Failed to create device file %d for %s eith err %d", + i, us_ibdev->ib_dev.name, err); + return -EINVAL; + } + } + + /* create kernel object for looking at individual QPs */ + kobject_get(&us_ibdev->ib_dev.dev.kobj); + us_ibdev->qpn_kobj = kobject_create_and_add("qpn", + &us_ibdev->ib_dev.dev.kobj); + if (us_ibdev->qpn_kobj == NULL) { + kobject_put(&us_ibdev->ib_dev.dev.kobj); + return -ENOMEM; + } + + return 0; +} + +void usnic_ib_sysfs_unregister_usdev(struct usnic_ib_dev *us_ibdev) +{ + int i; + for (i = 0; i < ARRAY_SIZE(usnic_class_attributes); ++i) { + device_remove_file(&us_ibdev->ib_dev.dev, + usnic_class_attributes[i]); + } + + kobject_put(us_ibdev->qpn_kobj); +} + +void usnic_ib_sysfs_qpn_add(struct usnic_ib_qp_grp *qp_grp) +{ + struct usnic_ib_dev *us_ibdev; + int err; + + us_ibdev = qp_grp->vf->pf; + + err = kobject_init_and_add(&qp_grp->kobj, &usnic_ib_qpn_type, + kobject_get(us_ibdev->qpn_kobj), + "%d", qp_grp->grp_id); + if (err) { + kobject_put(us_ibdev->qpn_kobj); + return; + } +} + +void usnic_ib_sysfs_qpn_remove(struct usnic_ib_qp_grp *qp_grp) +{ + struct usnic_ib_dev *us_ibdev; + + us_ibdev = qp_grp->vf->pf; + + kobject_put(&qp_grp->kobj); + kobject_put(us_ibdev->qpn_kobj); +} --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_ib_sysfs.h +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_ib_sysfs.h @@ -0,0 +1,29 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#ifndef USNIC_IB_SYSFS_H_ +#define USNIC_IB_SYSFS_H_ + +#include "usnic_ib.h" + +int usnic_ib_sysfs_register_usdev(struct usnic_ib_dev *us_ibdev); +void usnic_ib_sysfs_unregister_usdev(struct usnic_ib_dev *us_ibdev); +void usnic_ib_sysfs_qpn_add(struct usnic_ib_qp_grp *qp_grp); +void usnic_ib_sysfs_qpn_remove(struct usnic_ib_qp_grp *qp_grp); + +#endif /* !USNIC_IB_SYSFS_H_ */ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_ib_verbs.c +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_ib_verbs.c @@ -0,0 +1,765 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ +#include +#include +#include +#include + +#include +#include + +#include "usnic_abi.h" +#include "usnic_ib.h" +#include "usnic_common_util.h" +#include "usnic_ib_qp_grp.h" +#include "usnic_fwd.h" +#include "usnic_log.h" +#include "usnic_uiom.h" +#include "usnic_transport.h" + +#define USNIC_DEFAULT_TRANSPORT USNIC_TRANSPORT_ROCE_CUSTOM + +static void usnic_ib_fw_string_to_u64(char *fw_ver_str, u64 *fw_ver) +{ + *fw_ver = (u64) *fw_ver_str; +} + +static int usnic_ib_fill_create_qp_resp(struct usnic_ib_qp_grp *qp_grp, + struct ib_udata *udata) +{ + struct usnic_ib_dev *us_ibdev; + struct usnic_ib_create_qp_resp resp; + struct pci_dev *pdev; + struct vnic_dev_bar *bar; + struct usnic_vnic_res_chunk *chunk; + struct usnic_ib_qp_grp_flow *default_flow; + int i, err; + + memset(&resp, 0, sizeof(resp)); + + us_ibdev = qp_grp->vf->pf; + pdev = usnic_vnic_get_pdev(qp_grp->vf->vnic); + if (!pdev) { + usnic_err("Failed to get pdev of qp_grp %d\n", + qp_grp->grp_id); + return -EFAULT; + } + + bar = usnic_vnic_get_bar(qp_grp->vf->vnic, 0); + if (!bar) { + usnic_err("Failed to get bar0 of qp_grp %d vf %s", + qp_grp->grp_id, pci_name(pdev)); + return -EFAULT; + } + + resp.vfid = usnic_vnic_get_index(qp_grp->vf->vnic); + resp.bar_bus_addr = bar->bus_addr; + resp.bar_len = bar->len; + + chunk = usnic_ib_qp_grp_get_chunk(qp_grp, USNIC_VNIC_RES_TYPE_RQ); + if (IS_ERR_OR_NULL(chunk)) { + usnic_err("Failed to get chunk %s for qp_grp %d with err %ld\n", + usnic_vnic_res_type_to_str(USNIC_VNIC_RES_TYPE_RQ), + qp_grp->grp_id, + PTR_ERR(chunk)); + return chunk ? PTR_ERR(chunk) : -ENOMEM; + } + + WARN_ON(chunk->type != USNIC_VNIC_RES_TYPE_RQ); + resp.rq_cnt = chunk->cnt; + for (i = 0; i < chunk->cnt; i++) + resp.rq_idx[i] = chunk->res[i]->vnic_idx; + + chunk = usnic_ib_qp_grp_get_chunk(qp_grp, USNIC_VNIC_RES_TYPE_WQ); + if (IS_ERR_OR_NULL(chunk)) { + usnic_err("Failed to get chunk %s for qp_grp %d with err %ld\n", + usnic_vnic_res_type_to_str(USNIC_VNIC_RES_TYPE_WQ), + qp_grp->grp_id, + PTR_ERR(chunk)); + return chunk ? PTR_ERR(chunk) : -ENOMEM; + } + + WARN_ON(chunk->type != USNIC_VNIC_RES_TYPE_WQ); + resp.wq_cnt = chunk->cnt; + for (i = 0; i < chunk->cnt; i++) + resp.wq_idx[i] = chunk->res[i]->vnic_idx; + + chunk = usnic_ib_qp_grp_get_chunk(qp_grp, USNIC_VNIC_RES_TYPE_CQ); + if (IS_ERR_OR_NULL(chunk)) { + usnic_err("Failed to get chunk %s for qp_grp %d with err %ld\n", + usnic_vnic_res_type_to_str(USNIC_VNIC_RES_TYPE_CQ), + qp_grp->grp_id, + PTR_ERR(chunk)); + return chunk ? PTR_ERR(chunk) : -ENOMEM; + } + + WARN_ON(chunk->type != USNIC_VNIC_RES_TYPE_CQ); + resp.cq_cnt = chunk->cnt; + for (i = 0; i < chunk->cnt; i++) + resp.cq_idx[i] = chunk->res[i]->vnic_idx; + + default_flow = list_first_entry(&qp_grp->flows_lst, + struct usnic_ib_qp_grp_flow, link); + resp.transport = default_flow->trans_type; + + err = ib_copy_to_udata(udata, &resp, sizeof(resp)); + if (err) { + usnic_err("Failed to copy udata for %s", us_ibdev->ib_dev.name); + return err; + } + + return 0; +} + +static struct usnic_ib_qp_grp* +find_free_vf_and_create_qp_grp(struct usnic_ib_dev *us_ibdev, + struct usnic_ib_pd *pd, + struct usnic_transport_spec *trans_spec, + struct usnic_vnic_res_spec *res_spec) +{ + struct usnic_ib_vf *vf; + struct usnic_vnic *vnic; + struct usnic_ib_qp_grp *qp_grp; + struct device *dev, **dev_list; + int i, found = 0; + + BUG_ON(!mutex_is_locked(&us_ibdev->usdev_lock)); + + if (list_empty(&us_ibdev->vf_dev_list)) { + usnic_info("No vfs to allocate\n"); + return NULL; + } + + if (usnic_ib_share_vf) { + /* Try to find resouces on a used vf which is in pd */ + dev_list = usnic_uiom_get_dev_list(pd->umem_pd); + for (i = 0; dev_list[i]; i++) { + dev = dev_list[i]; + vf = pci_get_drvdata(to_pci_dev(dev)); + spin_lock(&vf->lock); + vnic = vf->vnic; + if (!usnic_vnic_check_room(vnic, res_spec)) { + usnic_dbg("Found used vnic %s from %s\n", + us_ibdev->ib_dev.name, + pci_name(usnic_vnic_get_pdev( + vnic))); + found = 1; + break; + } + spin_unlock(&vf->lock); + + } + usnic_uiom_free_dev_list(dev_list); + } + + if (!found) { + /* Try to find resources on an unused vf */ + list_for_each_entry(vf, &us_ibdev->vf_dev_list, link) { + spin_lock(&vf->lock); + vnic = vf->vnic; + if (vf->qp_grp_ref_cnt == 0 && + usnic_vnic_check_room(vnic, res_spec) == 0) { + found = 1; + break; + } + spin_unlock(&vf->lock); + } + } + + if (!found) { + usnic_info("No free qp grp found on %s\n", + us_ibdev->ib_dev.name); + return ERR_PTR(-ENOMEM); + } + + qp_grp = usnic_ib_qp_grp_create(us_ibdev->ufdev, vf, pd, res_spec, + trans_spec); + spin_unlock(&vf->lock); + if (IS_ERR_OR_NULL(qp_grp)) { + usnic_err("Failed to allocate qp_grp\n"); + return ERR_PTR(qp_grp ? PTR_ERR(qp_grp) : -ENOMEM); + } + + return qp_grp; +} + +static void qp_grp_destroy(struct usnic_ib_qp_grp *qp_grp) +{ + struct usnic_ib_vf *vf = qp_grp->vf; + + WARN_ON(qp_grp->state != IB_QPS_RESET); + + spin_lock(&vf->lock); + usnic_ib_qp_grp_destroy(qp_grp); + spin_unlock(&vf->lock); +} + +static void eth_speed_to_ib_speed(int speed, u8 *active_speed, + u8 *active_width) +{ + if (speed <= 10000) { + *active_width = IB_WIDTH_1X; + *active_speed = IB_SPEED_FDR10; + } else if (speed <= 20000) { + *active_width = IB_WIDTH_4X; + *active_speed = IB_SPEED_DDR; + } else if (speed <= 30000) { + *active_width = IB_WIDTH_4X; + *active_speed = IB_SPEED_QDR; + } else if (speed <= 40000) { + *active_width = IB_WIDTH_4X; + *active_speed = IB_SPEED_FDR10; + } else { + *active_width = IB_WIDTH_4X; + *active_speed = IB_SPEED_EDR; + } +} + +static int create_qp_validate_user_data(struct usnic_ib_create_qp_cmd cmd) +{ + if (cmd.spec.trans_type <= USNIC_TRANSPORT_UNKNOWN || + cmd.spec.trans_type >= USNIC_TRANSPORT_MAX) + return -EINVAL; + + return 0; +} + +/* Start of ib callback functions */ + +enum rdma_link_layer usnic_ib_port_link_layer(struct ib_device *device, + u8 port_num) +{ + return IB_LINK_LAYER_ETHERNET; +} + +int usnic_ib_query_device(struct ib_device *ibdev, + struct ib_device_attr *props) +{ + struct usnic_ib_dev *us_ibdev = to_usdev(ibdev); + union ib_gid gid; + struct ethtool_drvinfo info; + struct ethtool_cmd cmd; + int qp_per_vf; + + usnic_dbg("\n"); + mutex_lock(&us_ibdev->usdev_lock); + us_ibdev->netdev->ethtool_ops->get_drvinfo(us_ibdev->netdev, &info); + us_ibdev->netdev->ethtool_ops->get_settings(us_ibdev->netdev, &cmd); + memset(props, 0, sizeof(*props)); + usnic_mac_ip_to_gid(us_ibdev->ufdev->mac, us_ibdev->ufdev->inaddr, + &gid.raw[0]); + memcpy(&props->sys_image_guid, &gid.global.interface_id, + sizeof(gid.global.interface_id)); + usnic_ib_fw_string_to_u64(&info.fw_version[0], &props->fw_ver); + props->max_mr_size = USNIC_UIOM_MAX_MR_SIZE; + props->page_size_cap = USNIC_UIOM_PAGE_SIZE; + props->vendor_id = PCI_VENDOR_ID_CISCO; + props->vendor_part_id = PCI_DEVICE_ID_CISCO_VIC_USPACE_NIC; + props->hw_ver = us_ibdev->pdev->subsystem_device; + qp_per_vf = max(us_ibdev->vf_res_cnt[USNIC_VNIC_RES_TYPE_WQ], + us_ibdev->vf_res_cnt[USNIC_VNIC_RES_TYPE_RQ]); + props->max_qp = qp_per_vf * + atomic_read(&us_ibdev->vf_cnt.refcount); + props->device_cap_flags = IB_DEVICE_PORT_ACTIVE_EVENT | + IB_DEVICE_SYS_IMAGE_GUID | IB_DEVICE_BLOCK_MULTICAST_LOOPBACK; + props->max_cq = us_ibdev->vf_res_cnt[USNIC_VNIC_RES_TYPE_CQ] * + atomic_read(&us_ibdev->vf_cnt.refcount); + props->max_pd = USNIC_UIOM_MAX_PD_CNT; + props->max_mr = USNIC_UIOM_MAX_MR_CNT; + props->local_ca_ack_delay = 0; + props->max_pkeys = 0; + props->atomic_cap = IB_ATOMIC_NONE; + props->masked_atomic_cap = props->atomic_cap; + props->max_qp_rd_atom = 0; + props->max_qp_init_rd_atom = 0; + props->max_res_rd_atom = 0; + props->max_srq = 0; + props->max_srq_wr = 0; + props->max_srq_sge = 0; + props->max_fast_reg_page_list_len = 0; + props->max_mcast_grp = 0; + props->max_mcast_qp_attach = 0; + props->max_total_mcast_qp_attach = 0; + props->max_map_per_fmr = 0; + /* Owned by Userspace + * max_qp_wr, max_sge, max_sge_rd, max_cqe */ + mutex_unlock(&us_ibdev->usdev_lock); + + return 0; +} + +int usnic_ib_query_port(struct ib_device *ibdev, u8 port, + struct ib_port_attr *props) +{ + struct usnic_ib_dev *us_ibdev = to_usdev(ibdev); + struct ethtool_cmd cmd; + + usnic_dbg("\n"); + + mutex_lock(&us_ibdev->usdev_lock); + us_ibdev->netdev->ethtool_ops->get_settings(us_ibdev->netdev, &cmd); + memset(props, 0, sizeof(*props)); + + props->lid = 0; + props->lmc = 1; + props->sm_lid = 0; + props->sm_sl = 0; + + if (!us_ibdev->ufdev->link_up) { + props->state = IB_PORT_DOWN; + props->phys_state = 3; + } else if (!us_ibdev->ufdev->inaddr) { + props->state = IB_PORT_INIT; + props->phys_state = 4; + } else { + props->state = IB_PORT_ACTIVE; + props->phys_state = 5; + } + + props->port_cap_flags = 0; + props->gid_tbl_len = 1; + props->pkey_tbl_len = 1; + props->bad_pkey_cntr = 0; + props->qkey_viol_cntr = 0; + eth_speed_to_ib_speed(cmd.speed, &props->active_speed, + &props->active_width); + props->max_mtu = IB_MTU_4096; + props->active_mtu = iboe_get_mtu(us_ibdev->ufdev->mtu); + /* Userspace will adjust for hdrs */ + props->max_msg_sz = us_ibdev->ufdev->mtu; + props->max_vl_num = 1; + mutex_unlock(&us_ibdev->usdev_lock); + + return 0; +} + +int usnic_ib_query_qp(struct ib_qp *qp, struct ib_qp_attr *qp_attr, + int qp_attr_mask, + struct ib_qp_init_attr *qp_init_attr) +{ + struct usnic_ib_qp_grp *qp_grp; + struct usnic_ib_vf *vf; + int err; + + usnic_dbg("\n"); + + memset(qp_attr, 0, sizeof(*qp_attr)); + memset(qp_init_attr, 0, sizeof(*qp_init_attr)); + + qp_grp = to_uqp_grp(qp); + vf = qp_grp->vf; + mutex_lock(&vf->pf->usdev_lock); + usnic_dbg("\n"); + qp_attr->qp_state = qp_grp->state; + qp_attr->cur_qp_state = qp_grp->state; + + switch (qp_grp->ibqp.qp_type) { + case IB_QPT_UD: + qp_attr->qkey = 0; + break; + default: + usnic_err("Unexpected qp_type %d\n", qp_grp->ibqp.qp_type); + err = -EINVAL; + goto err_out; + } + + mutex_unlock(&vf->pf->usdev_lock); + return 0; + +err_out: + mutex_unlock(&vf->pf->usdev_lock); + return err; +} + +int usnic_ib_query_gid(struct ib_device *ibdev, u8 port, int index, + union ib_gid *gid) +{ + + struct usnic_ib_dev *us_ibdev = to_usdev(ibdev); + usnic_dbg("\n"); + + if (index > 1) + return -EINVAL; + + mutex_lock(&us_ibdev->usdev_lock); + memset(&(gid->raw[0]), 0, sizeof(gid->raw)); + usnic_mac_ip_to_gid(us_ibdev->ufdev->mac, us_ibdev->ufdev->inaddr, + &gid->raw[0]); + mutex_unlock(&us_ibdev->usdev_lock); + + return 0; +} + +int usnic_ib_query_pkey(struct ib_device *ibdev, u8 port, u16 index, + u16 *pkey) +{ + if (index > 1) + return -EINVAL; + + *pkey = 0xffff; + return 0; +} + +struct ib_pd *usnic_ib_alloc_pd(struct ib_device *ibdev, + struct ib_ucontext *context, + struct ib_udata *udata) +{ + struct usnic_ib_pd *pd; + void *umem_pd; + + usnic_dbg("\n"); + + pd = kzalloc(sizeof(*pd), GFP_KERNEL); + if (!pd) + return ERR_PTR(-ENOMEM); + + umem_pd = pd->umem_pd = usnic_uiom_alloc_pd(); + if (IS_ERR_OR_NULL(umem_pd)) { + kfree(pd); + return ERR_PTR(umem_pd ? PTR_ERR(umem_pd) : -ENOMEM); + } + + usnic_info("domain 0x%p allocated for context 0x%p and device %s\n", + pd, context, ibdev->name); + return &pd->ibpd; +} + +int usnic_ib_dealloc_pd(struct ib_pd *pd) +{ + usnic_info("freeing domain 0x%p\n", pd); + + usnic_uiom_dealloc_pd((to_upd(pd))->umem_pd); + kfree(pd); + return 0; +} + +struct ib_qp *usnic_ib_create_qp(struct ib_pd *pd, + struct ib_qp_init_attr *init_attr, + struct ib_udata *udata) +{ + int err; + struct usnic_ib_dev *us_ibdev; + struct usnic_ib_qp_grp *qp_grp; + struct usnic_ib_ucontext *ucontext; + int cq_cnt; + struct usnic_vnic_res_spec res_spec; + struct usnic_ib_create_qp_cmd cmd; + struct usnic_transport_spec trans_spec; + + usnic_dbg("\n"); + + ucontext = to_uucontext(pd->uobject->context); + us_ibdev = to_usdev(pd->device); + + err = ib_copy_from_udata(&cmd, udata, sizeof(cmd)); + if (err) { + usnic_err("%s: cannot copy udata for create_qp\n", + us_ibdev->ib_dev.name); + return ERR_PTR(-EINVAL); + } + + err = create_qp_validate_user_data(cmd); + if (err) { + usnic_err("%s: Failed to validate user data\n", + us_ibdev->ib_dev.name); + return ERR_PTR(-EINVAL); + } + + if (init_attr->qp_type != IB_QPT_UD) { + usnic_err("%s asked to make a non-UD QP: %d\n", + us_ibdev->ib_dev.name, init_attr->qp_type); + return ERR_PTR(-EINVAL); + } + + trans_spec = cmd.spec; + mutex_lock(&us_ibdev->usdev_lock); + cq_cnt = (init_attr->send_cq == init_attr->recv_cq) ? 1 : 2; + res_spec = min_transport_spec[trans_spec.trans_type]; + usnic_vnic_res_spec_update(&res_spec, USNIC_VNIC_RES_TYPE_CQ, cq_cnt); + qp_grp = find_free_vf_and_create_qp_grp(us_ibdev, to_upd(pd), + &trans_spec, + &res_spec); + if (IS_ERR_OR_NULL(qp_grp)) { + err = qp_grp ? PTR_ERR(qp_grp) : -ENOMEM; + goto out_release_mutex; + } + + err = usnic_ib_fill_create_qp_resp(qp_grp, udata); + if (err) { + err = -EBUSY; + goto out_release_qp_grp; + } + + qp_grp->ctx = ucontext; + list_add_tail(&qp_grp->link, &ucontext->qp_grp_list); + usnic_ib_log_vf(qp_grp->vf); + mutex_unlock(&us_ibdev->usdev_lock); + return &qp_grp->ibqp; + +out_release_qp_grp: + qp_grp_destroy(qp_grp); +out_release_mutex: + mutex_unlock(&us_ibdev->usdev_lock); + return ERR_PTR(err); +} + +int usnic_ib_destroy_qp(struct ib_qp *qp) +{ + struct usnic_ib_qp_grp *qp_grp; + struct usnic_ib_vf *vf; + + usnic_dbg("\n"); + + qp_grp = to_uqp_grp(qp); + vf = qp_grp->vf; + mutex_lock(&vf->pf->usdev_lock); + if (usnic_ib_qp_grp_modify(qp_grp, IB_QPS_RESET, NULL)) { + usnic_err("Failed to move qp grp %u to reset\n", + qp_grp->grp_id); + } + + list_del(&qp_grp->link); + qp_grp_destroy(qp_grp); + mutex_unlock(&vf->pf->usdev_lock); + + return 0; +} + +int usnic_ib_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr, + int attr_mask, struct ib_udata *udata) +{ + struct usnic_ib_qp_grp *qp_grp; + int status; + usnic_dbg("\n"); + + qp_grp = to_uqp_grp(ibqp); + + /* TODO: Future Support All States */ + mutex_lock(&qp_grp->vf->pf->usdev_lock); + if ((attr_mask & IB_QP_STATE) && attr->qp_state == IB_QPS_INIT) { + status = usnic_ib_qp_grp_modify(qp_grp, IB_QPS_INIT, NULL); + } else if ((attr_mask & IB_QP_STATE) && attr->qp_state == IB_QPS_RTR) { + status = usnic_ib_qp_grp_modify(qp_grp, IB_QPS_RTR, NULL); + } else if ((attr_mask & IB_QP_STATE) && attr->qp_state == IB_QPS_RTS) { + status = usnic_ib_qp_grp_modify(qp_grp, IB_QPS_RTS, NULL); + } else { + usnic_err("Unexpected combination mask: %u state: %u\n", + attr_mask & IB_QP_STATE, attr->qp_state); + status = -EINVAL; + } + + mutex_unlock(&qp_grp->vf->pf->usdev_lock); + return status; +} + +struct ib_cq *usnic_ib_create_cq(struct ib_device *ibdev, int entries, + int vector, struct ib_ucontext *context, + struct ib_udata *udata) +{ + struct ib_cq *cq; + + usnic_dbg("\n"); + cq = kzalloc(sizeof(*cq), GFP_KERNEL); + if (!cq) + return ERR_PTR(-EBUSY); + + return cq; +} + +int usnic_ib_destroy_cq(struct ib_cq *cq) +{ + usnic_dbg("\n"); + kfree(cq); + return 0; +} + +struct ib_mr *usnic_ib_reg_mr(struct ib_pd *pd, u64 start, u64 length, + u64 virt_addr, int access_flags, + struct ib_udata *udata) +{ + struct usnic_ib_mr *mr; + int err; + + usnic_dbg("start 0x%llx va 0x%llx length 0x%llx\n", start, + virt_addr, length); + + mr = kzalloc(sizeof(*mr), GFP_KERNEL); + if (IS_ERR_OR_NULL(mr)) + return ERR_PTR(mr ? PTR_ERR(mr) : -ENOMEM); + + mr->umem = usnic_uiom_reg_get(to_upd(pd)->umem_pd, start, length, + access_flags, 0); + if (IS_ERR_OR_NULL(mr->umem)) { + err = mr->umem ? PTR_ERR(mr->umem) : -EFAULT; + goto err_free; + } + + mr->ibmr.lkey = mr->ibmr.rkey = 0; + return &mr->ibmr; + +err_free: + kfree(mr); + return ERR_PTR(err); +} + +int usnic_ib_dereg_mr(struct ib_mr *ibmr) +{ + struct usnic_ib_mr *mr = to_umr(ibmr); + + usnic_dbg("va 0x%lx length 0x%zx\n", mr->umem->va, mr->umem->length); + + usnic_uiom_reg_release(mr->umem, ibmr->pd->uobject->context->closing); + kfree(mr); + return 0; +} + +struct ib_ucontext *usnic_ib_alloc_ucontext(struct ib_device *ibdev, + struct ib_udata *udata) +{ + struct usnic_ib_ucontext *context; + struct usnic_ib_dev *us_ibdev = to_usdev(ibdev); + usnic_dbg("\n"); + + context = kmalloc(sizeof(*context), GFP_KERNEL); + if (!context) + return ERR_PTR(-ENOMEM); + + INIT_LIST_HEAD(&context->qp_grp_list); + mutex_lock(&us_ibdev->usdev_lock); + list_add_tail(&context->link, &us_ibdev->ctx_list); + mutex_unlock(&us_ibdev->usdev_lock); + + return &context->ibucontext; +} + +int usnic_ib_dealloc_ucontext(struct ib_ucontext *ibcontext) +{ + struct usnic_ib_ucontext *context = to_uucontext(ibcontext); + struct usnic_ib_dev *us_ibdev = to_usdev(ibcontext->device); + usnic_dbg("\n"); + + mutex_lock(&us_ibdev->usdev_lock); + BUG_ON(!list_empty(&context->qp_grp_list)); + list_del(&context->link); + mutex_unlock(&us_ibdev->usdev_lock); + kfree(context); + return 0; +} + +int usnic_ib_mmap(struct ib_ucontext *context, + struct vm_area_struct *vma) +{ + struct usnic_ib_ucontext *uctx = to_ucontext(context); + struct usnic_ib_dev *us_ibdev; + struct usnic_ib_qp_grp *qp_grp; + struct usnic_ib_vf *vf; + struct vnic_dev_bar *bar; + dma_addr_t bus_addr; + unsigned int len; + unsigned int vfid; + + usnic_dbg("\n"); + + us_ibdev = to_usdev(context->device); + vma->vm_flags |= VM_IO; + vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); + vfid = vma->vm_pgoff; + usnic_dbg("Page Offset %lu PAGE_SHIFT %u VFID %u\n", + vma->vm_pgoff, PAGE_SHIFT, vfid); + + mutex_lock(&us_ibdev->usdev_lock); + list_for_each_entry(qp_grp, &uctx->qp_grp_list, link) { + vf = qp_grp->vf; + if (usnic_vnic_get_index(vf->vnic) == vfid) { + bar = usnic_vnic_get_bar(vf->vnic, 0); + if ((vma->vm_end - vma->vm_start) != bar->len) { + usnic_err("Bar0 Len %lu - Request map %lu\n", + bar->len, + vma->vm_end - vma->vm_start); + mutex_unlock(&us_ibdev->usdev_lock); + return -EINVAL; + } + bus_addr = bar->bus_addr; + len = bar->len; + usnic_dbg("bus: %pa vaddr: %p size: %ld\n", + &bus_addr, bar->vaddr, bar->len); + mutex_unlock(&us_ibdev->usdev_lock); + + return remap_pfn_range(vma, + vma->vm_start, + bus_addr >> PAGE_SHIFT, + len, vma->vm_page_prot); + } + } + + mutex_unlock(&us_ibdev->usdev_lock); + usnic_err("No VF %u found\n", vfid); + return -EINVAL; +} + +/* In ib callbacks section - Start of stub funcs */ +struct ib_ah *usnic_ib_create_ah(struct ib_pd *pd, + struct ib_ah_attr *ah_attr) +{ + usnic_dbg("\n"); + return ERR_PTR(-EPERM); +} + +int usnic_ib_destroy_ah(struct ib_ah *ah) +{ + usnic_dbg("\n"); + return -EINVAL; +} + +int usnic_ib_post_send(struct ib_qp *ibqp, struct ib_send_wr *wr, + struct ib_send_wr **bad_wr) +{ + usnic_dbg("\n"); + return -EINVAL; +} + +int usnic_ib_post_recv(struct ib_qp *ibqp, struct ib_recv_wr *wr, + struct ib_recv_wr **bad_wr) +{ + usnic_dbg("\n"); + return -EINVAL; +} + +int usnic_ib_poll_cq(struct ib_cq *ibcq, int num_entries, + struct ib_wc *wc) +{ + usnic_dbg("\n"); + return -EINVAL; +} + +int usnic_ib_req_notify_cq(struct ib_cq *cq, + enum ib_cq_notify_flags flags) +{ + usnic_dbg("\n"); + return -EINVAL; +} + +struct ib_mr *usnic_ib_get_dma_mr(struct ib_pd *pd, int acc) +{ + usnic_dbg("\n"); + return ERR_PTR(-ENOMEM); +} + + +/* In ib callbacks section - End of stub funcs */ +/* End of ib callbacks section */ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_ib_verbs.h +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_ib_verbs.h @@ -0,0 +1,72 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#ifndef USNIC_IB_VERBS_H_ +#define USNIC_IB_VERBS_H_ + +#include "usnic_ib.h" + +enum rdma_link_layer usnic_ib_port_link_layer(struct ib_device *device, + u8 port_num); +int usnic_ib_query_device(struct ib_device *ibdev, + struct ib_device_attr *props); +int usnic_ib_query_port(struct ib_device *ibdev, u8 port, + struct ib_port_attr *props); +int usnic_ib_query_qp(struct ib_qp *qp, struct ib_qp_attr *qp_attr, + int qp_attr_mask, + struct ib_qp_init_attr *qp_init_attr); +int usnic_ib_query_gid(struct ib_device *ibdev, u8 port, int index, + union ib_gid *gid); +int usnic_ib_query_pkey(struct ib_device *ibdev, u8 port, u16 index, + u16 *pkey); +struct ib_pd *usnic_ib_alloc_pd(struct ib_device *ibdev, + struct ib_ucontext *context, + struct ib_udata *udata); +int usnic_ib_dealloc_pd(struct ib_pd *pd); +struct ib_qp *usnic_ib_create_qp(struct ib_pd *pd, + struct ib_qp_init_attr *init_attr, + struct ib_udata *udata); +int usnic_ib_destroy_qp(struct ib_qp *qp); +int usnic_ib_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr, + int attr_mask, struct ib_udata *udata); +struct ib_cq *usnic_ib_create_cq(struct ib_device *ibdev, int entries, + int vector, struct ib_ucontext *context, + struct ib_udata *udata); +int usnic_ib_destroy_cq(struct ib_cq *cq); +struct ib_mr *usnic_ib_reg_mr(struct ib_pd *pd, u64 start, u64 length, + u64 virt_addr, int access_flags, + struct ib_udata *udata); +int usnic_ib_dereg_mr(struct ib_mr *ibmr); +struct ib_ucontext *usnic_ib_alloc_ucontext(struct ib_device *ibdev, + struct ib_udata *udata); +int usnic_ib_dealloc_ucontext(struct ib_ucontext *ibcontext); +int usnic_ib_mmap(struct ib_ucontext *context, + struct vm_area_struct *vma); +struct ib_ah *usnic_ib_create_ah(struct ib_pd *pd, + struct ib_ah_attr *ah_attr); +int usnic_ib_destroy_ah(struct ib_ah *ah); +int usnic_ib_post_send(struct ib_qp *ibqp, struct ib_send_wr *wr, + struct ib_send_wr **bad_wr); +int usnic_ib_post_recv(struct ib_qp *ibqp, struct ib_recv_wr *wr, + struct ib_recv_wr **bad_wr); +int usnic_ib_poll_cq(struct ib_cq *ibcq, int num_entries, + struct ib_wc *wc); +int usnic_ib_req_notify_cq(struct ib_cq *cq, + enum ib_cq_notify_flags flags); +struct ib_mr *usnic_ib_get_dma_mr(struct ib_pd *pd, int acc); +#endif /* !USNIC_IB_VERBS_H */ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_log.h +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_log.h @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#ifndef USNIC_LOG_H_ +#define USNIC_LOG_H_ + +#include "usnic.h" + +extern unsigned int usnic_log_lvl; + +#define USNIC_LOG_LVL_NONE (0) +#define USNIC_LOG_LVL_ERR (1) +#define USNIC_LOG_LVL_INFO (2) +#define USNIC_LOG_LVL_DBG (3) + +#define usnic_printk(lvl, args...) \ + do { \ + printk(lvl "%s:%s:%d: ", DRV_NAME, __func__, \ + __LINE__); \ + printk(args); \ + } while (0) + +#define usnic_dbg(args...) \ + do { \ + if (unlikely(usnic_log_lvl >= USNIC_LOG_LVL_DBG)) { \ + usnic_printk(KERN_INFO, args); \ + } \ +} while (0) + +#define usnic_info(args...) \ +do { \ + if (usnic_log_lvl >= USNIC_LOG_LVL_INFO) { \ + usnic_printk(KERN_INFO, args); \ + } \ +} while (0) + +#define usnic_err(args...) \ + do { \ + if (usnic_log_lvl >= USNIC_LOG_LVL_ERR) { \ + usnic_printk(KERN_ERR, args); \ + } \ + } while (0) +#endif /* !USNIC_LOG_H_ */ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_transport.c +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_transport.c @@ -0,0 +1,202 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ +#include +#include +#include +#include +#include + +#include "usnic_transport.h" +#include "usnic_log.h" + +/* ROCE */ +static unsigned long *roce_bitmap; +static u16 roce_next_port = 1; +#define ROCE_BITMAP_SZ ((1 << (8 /*CHAR_BIT*/ * sizeof(u16)))/8 /*CHAR BIT*/) +static DEFINE_SPINLOCK(roce_bitmap_lock); + +const char *usnic_transport_to_str(enum usnic_transport_type type) +{ + switch (type) { + case USNIC_TRANSPORT_UNKNOWN: + return "Unknown"; + case USNIC_TRANSPORT_ROCE_CUSTOM: + return "roce custom"; + case USNIC_TRANSPORT_IPV4_UDP: + return "IPv4 UDP"; + case USNIC_TRANSPORT_MAX: + return "Max?"; + default: + return "Not known"; + } +} + +int usnic_transport_sock_to_str(char *buf, int buf_sz, + struct socket *sock) +{ + int err; + uint32_t addr; + uint16_t port; + int proto; + + memset(buf, 0, buf_sz); + err = usnic_transport_sock_get_addr(sock, &proto, &addr, &port); + if (err) + return 0; + + return scnprintf(buf, buf_sz, "Proto:%u Addr:%pI4h Port:%hu", + proto, &addr, port); +} + +/* + * reserve a port number. if "0" specified, we will try to pick one + * starting at roce_next_port. roce_next_port will take on the values + * 1..4096 + */ +u16 usnic_transport_rsrv_port(enum usnic_transport_type type, u16 port_num) +{ + if (type == USNIC_TRANSPORT_ROCE_CUSTOM) { + spin_lock(&roce_bitmap_lock); + if (!port_num) { + port_num = bitmap_find_next_zero_area(roce_bitmap, + ROCE_BITMAP_SZ, + roce_next_port /* start */, + 1 /* nr */, + 0 /* align */); + roce_next_port = (port_num & 4095) + 1; + } else if (test_bit(port_num, roce_bitmap)) { + usnic_err("Failed to allocate port for %s\n", + usnic_transport_to_str(type)); + spin_unlock(&roce_bitmap_lock); + goto out_fail; + } + bitmap_set(roce_bitmap, port_num, 1); + spin_unlock(&roce_bitmap_lock); + } else { + usnic_err("Failed to allocate port - transport %s unsupported\n", + usnic_transport_to_str(type)); + goto out_fail; + } + + usnic_dbg("Allocating port %hu for %s\n", port_num, + usnic_transport_to_str(type)); + return port_num; + +out_fail: + return 0; +} + +void usnic_transport_unrsrv_port(enum usnic_transport_type type, u16 port_num) +{ + if (type == USNIC_TRANSPORT_ROCE_CUSTOM) { + spin_lock(&roce_bitmap_lock); + if (!port_num) { + usnic_err("Unreserved unvalid port num 0 for %s\n", + usnic_transport_to_str(type)); + goto out_roce_custom; + } + + if (!test_bit(port_num, roce_bitmap)) { + usnic_err("Unreserving invalid %hu for %s\n", + port_num, + usnic_transport_to_str(type)); + goto out_roce_custom; + } + bitmap_clear(roce_bitmap, port_num, 1); + usnic_dbg("Freeing port %hu for %s\n", port_num, + usnic_transport_to_str(type)); +out_roce_custom: + spin_unlock(&roce_bitmap_lock); + } else { + usnic_err("Freeing invalid port %hu for %d\n", port_num, type); + } +} + +struct socket *usnic_transport_get_socket(int sock_fd) +{ + struct socket *sock; + int err; + char buf[25]; + + /* sockfd_lookup will internally do a fget */ + sock = sockfd_lookup(sock_fd, &err); + if (!sock) { + usnic_err("Unable to lookup socket for fd %d with err %d\n", + sock_fd, err); + return ERR_PTR(-ENOENT); + } + + usnic_transport_sock_to_str(buf, sizeof(buf), sock); + usnic_dbg("Get sock %s\n", buf); + + return sock; +} + +void usnic_transport_put_socket(struct socket *sock) +{ + char buf[100]; + + usnic_transport_sock_to_str(buf, sizeof(buf), sock); + usnic_dbg("Put sock %s\n", buf); + sockfd_put(sock); +} + +int usnic_transport_sock_get_addr(struct socket *sock, int *proto, + uint32_t *addr, uint16_t *port) +{ + int len; + int err; + struct sockaddr_in sock_addr; + + err = sock->ops->getname(sock, + (struct sockaddr *)&sock_addr, + &len, 0); + if (err) + return err; + + if (sock_addr.sin_family != AF_INET) + return -EINVAL; + + if (proto) + *proto = sock->sk->sk_protocol; + if (port) + *port = ntohs(((struct sockaddr_in *)&sock_addr)->sin_port); + if (addr) + *addr = ntohl(((struct sockaddr_in *) + &sock_addr)->sin_addr.s_addr); + + return 0; +} + +int usnic_transport_init(void) +{ + roce_bitmap = kzalloc(ROCE_BITMAP_SZ, GFP_KERNEL); + if (!roce_bitmap) { + usnic_err("Failed to allocate bit map"); + return -ENOMEM; + } + + /* Do not ever allocate bit 0, hence set it here */ + bitmap_set(roce_bitmap, 0, 1); + return 0; +} + +void usnic_transport_fini(void) +{ + kfree(roce_bitmap); +} --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_transport.h +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_transport.h @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#ifndef USNIC_TRANSPORT_H_ +#define USNIC_TRANSPORT_H_ + +#include "usnic_abi.h" + +const char *usnic_transport_to_str(enum usnic_transport_type trans_type); +/* + * Returns number of bytes written, excluding null terminator. If + * nothing was written, the function returns 0. + */ +int usnic_transport_sock_to_str(char *buf, int buf_sz, + struct socket *sock); +/* + * Reserve a port. If "port_num" is set, then the function will try + * to reserve that particular port. + */ +u16 usnic_transport_rsrv_port(enum usnic_transport_type type, u16 port_num); +void usnic_transport_unrsrv_port(enum usnic_transport_type type, u16 port_num); +/* + * Do a fget on the socket refered to by sock_fd and returns the socket. + * Socket will not be destroyed before usnic_transport_put_socket has + * been called. + */ +struct socket *usnic_transport_get_socket(int sock_fd); +void usnic_transport_put_socket(struct socket *sock); +/* + * Call usnic_transport_get_socket before calling *_sock_get_addr + */ +int usnic_transport_sock_get_addr(struct socket *sock, int *proto, + uint32_t *addr, uint16_t *port); +int usnic_transport_init(void); +void usnic_transport_fini(void); +#endif /* !USNIC_TRANSPORT_H */ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_uiom.c +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_uiom.c @@ -0,0 +1,604 @@ +/* + * Copyright (c) 2005 Topspin Communications. All rights reserved. + * Copyright (c) 2005 Mellanox Technologies. All rights reserved. + * Copyright (c) 2013 Cisco Systems. All rights reserved. + * + * This software is available to you under a choice of one of two + * licenses. You may choose to be licensed under the terms of the GNU + * General Public License (GPL) Version 2, available from the file + * COPYING in the main directory of this source tree, or the + * OpenIB.org BSD license below: + * + * Redistribution and use in source and binary forms, with or + * without modification, are permitted provided that the following + * conditions are met: + * + * - Redistributions of source code must retain the above + * copyright notice, this list of conditions and the following + * disclaimer. + * + * - Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials + * provided with the distribution. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "usnic_log.h" +#include "usnic_uiom.h" +#include "usnic_uiom_interval_tree.h" + +static struct workqueue_struct *usnic_uiom_wq; + +#define USNIC_UIOM_PAGE_CHUNK \ + ((PAGE_SIZE - offsetof(struct usnic_uiom_chunk, page_list)) /\ + ((void *) &((struct usnic_uiom_chunk *) 0)->page_list[1] - \ + (void *) &((struct usnic_uiom_chunk *) 0)->page_list[0])) + +static void usnic_uiom_reg_account(struct work_struct *work) +{ + struct usnic_uiom_reg *umem = container_of(work, + struct usnic_uiom_reg, work); + + down_write(&umem->mm->mmap_sem); + umem->mm->locked_vm -= umem->diff; + up_write(&umem->mm->mmap_sem); + mmput(umem->mm); + kfree(umem); +} + +static int usnic_uiom_dma_fault(struct iommu_domain *domain, + struct device *dev, + unsigned long iova, int flags, + void *token) +{ + usnic_err("Device %s iommu fault domain 0x%pK va 0x%lx flags 0x%x\n", + dev_name(dev), + domain, iova, flags); + return -ENOSYS; +} + +static void usnic_uiom_put_pages(struct list_head *chunk_list, int dirty) +{ + struct usnic_uiom_chunk *chunk, *tmp; + struct page *page; + struct scatterlist *sg; + int i; + dma_addr_t pa; + + list_for_each_entry_safe(chunk, tmp, chunk_list, list) { + for_each_sg(chunk->page_list, sg, chunk->nents, i) { + page = sg_page(sg); + pa = sg_phys(sg); + if (dirty) + set_page_dirty_lock(page); + put_page(page); + usnic_dbg("pa: %pa\n", &pa); + } + kfree(chunk); + } +} + +static int usnic_uiom_get_pages(unsigned long addr, size_t size, int writable, + int dmasync, struct list_head *chunk_list) +{ + struct page **page_list; + struct scatterlist *sg; + struct usnic_uiom_chunk *chunk; + unsigned long locked; + unsigned long lock_limit; + unsigned long cur_base; + unsigned long npages; + int ret; + int off; + int i; + int flags; + dma_addr_t pa; + DEFINE_DMA_ATTRS(attrs); + + if (dmasync) + dma_set_attr(DMA_ATTR_WRITE_BARRIER, &attrs); + + if (!can_do_mlock()) + return -EPERM; + + INIT_LIST_HEAD(chunk_list); + + page_list = (struct page **) __get_free_page(GFP_KERNEL); + if (!page_list) + return -ENOMEM; + + npages = PAGE_ALIGN(size + (addr & ~PAGE_MASK)) >> PAGE_SHIFT; + + down_write(¤t->mm->mmap_sem); + + locked = npages + current->mm->locked_vm; + lock_limit = rlimit(RLIMIT_MEMLOCK) >> PAGE_SHIFT; + + if ((locked > lock_limit) && !capable(CAP_IPC_LOCK)) { + ret = -ENOMEM; + goto out; + } + + flags = IOMMU_READ | IOMMU_CACHE; + flags |= (writable) ? IOMMU_WRITE : 0; + cur_base = addr & PAGE_MASK; + ret = 0; + + while (npages) { + ret = get_user_pages(current, current->mm, cur_base, + min_t(unsigned long, npages, + PAGE_SIZE / sizeof(struct page *)), + 1, !writable, page_list, NULL); + + if (ret < 0) + goto out; + + npages -= ret; + off = 0; + + while (ret) { + chunk = kmalloc(sizeof(*chunk) + + sizeof(struct scatterlist) * + min_t(int, ret, USNIC_UIOM_PAGE_CHUNK), + GFP_KERNEL); + if (!chunk) { + ret = -ENOMEM; + goto out; + } + + chunk->nents = min_t(int, ret, USNIC_UIOM_PAGE_CHUNK); + sg_init_table(chunk->page_list, chunk->nents); + for_each_sg(chunk->page_list, sg, chunk->nents, i) { + sg_set_page(sg, page_list[i + off], + PAGE_SIZE, 0); + pa = sg_phys(sg); + usnic_dbg("va: 0x%lx pa: %pa\n", + cur_base + i*PAGE_SIZE, &pa); + } + cur_base += chunk->nents * PAGE_SIZE; + ret -= chunk->nents; + off += chunk->nents; + list_add_tail(&chunk->list, chunk_list); + } + + ret = 0; + } + +out: + if (ret < 0) + usnic_uiom_put_pages(chunk_list, 0); + else + current->mm->locked_vm = locked; + + up_write(¤t->mm->mmap_sem); + free_page((unsigned long) page_list); + return ret; +} + +static void usnic_uiom_unmap_sorted_intervals(struct list_head *intervals, + struct usnic_uiom_pd *pd) +{ + struct usnic_uiom_interval_node *interval, *tmp; + long unsigned va, size; + + list_for_each_entry_safe(interval, tmp, intervals, link) { + va = interval->start << PAGE_SHIFT; + size = ((interval->last - interval->start) + 1) << PAGE_SHIFT; + while (size > 0) { + /* Workaround for RH 970401 */ + usnic_dbg("va 0x%lx size 0x%lx", va, PAGE_SIZE); + iommu_unmap(pd->domain, va, PAGE_SIZE); + va += PAGE_SIZE; + size -= PAGE_SIZE; + } + } +} + +static void __usnic_uiom_reg_release(struct usnic_uiom_pd *pd, + struct usnic_uiom_reg *uiomr, + int dirty) +{ + int npages; + unsigned long vpn_start, vpn_last; + struct usnic_uiom_interval_node *interval, *tmp; + int writable = 0; + LIST_HEAD(rm_intervals); + + npages = PAGE_ALIGN(uiomr->length + uiomr->offset) >> PAGE_SHIFT; + vpn_start = (uiomr->va & PAGE_MASK) >> PAGE_SHIFT; + vpn_last = vpn_start + npages - 1; + + spin_lock(&pd->lock); + usnic_uiom_remove_interval(&pd->rb_root, vpn_start, + vpn_last, &rm_intervals); + usnic_uiom_unmap_sorted_intervals(&rm_intervals, pd); + + list_for_each_entry_safe(interval, tmp, &rm_intervals, link) { + if (interval->flags & IOMMU_WRITE) + writable = 1; + list_del(&interval->link); + kfree(interval); + } + + usnic_uiom_put_pages(&uiomr->chunk_list, dirty & writable); + spin_unlock(&pd->lock); +} + +static int usnic_uiom_map_sorted_intervals(struct list_head *intervals, + struct usnic_uiom_reg *uiomr) +{ + int i, err; + size_t size; + struct usnic_uiom_chunk *chunk; + struct usnic_uiom_interval_node *interval_node; + dma_addr_t pa; + dma_addr_t pa_start = 0; + dma_addr_t pa_end = 0; + long int va_start = -EINVAL; + struct usnic_uiom_pd *pd = uiomr->pd; + long int va = uiomr->va & PAGE_MASK; + int flags = IOMMU_READ | IOMMU_CACHE; + + flags |= (uiomr->writable) ? IOMMU_WRITE : 0; + chunk = list_first_entry(&uiomr->chunk_list, struct usnic_uiom_chunk, + list); + list_for_each_entry(interval_node, intervals, link) { +iter_chunk: + for (i = 0; i < chunk->nents; i++, va += PAGE_SIZE) { + pa = sg_phys(&chunk->page_list[i]); + if ((va >> PAGE_SHIFT) < interval_node->start) + continue; + + if ((va >> PAGE_SHIFT) == interval_node->start) { + /* First page of the interval */ + va_start = va; + pa_start = pa; + pa_end = pa; + } + + WARN_ON(va_start == -EINVAL); + + if ((pa_end + PAGE_SIZE != pa) && + (pa != pa_start)) { + /* PAs are not contiguous */ + size = pa_end - pa_start + PAGE_SIZE; + usnic_dbg("va 0x%lx pa %pa size 0x%zx flags 0x%x", + va_start, &pa_start, size, flags); + err = iommu_map(pd->domain, va_start, pa_start, + size, flags); + if (err) { + usnic_err("Failed to map va 0x%lx pa 0x%pa size 0x%zx with err %d\n", + va_start, &pa_start, size, err); + goto err_out; + } + va_start = va; + pa_start = pa; + pa_end = pa; + } + + if ((va >> PAGE_SHIFT) == interval_node->last) { + /* Last page of the interval */ + size = pa - pa_start + PAGE_SIZE; + usnic_dbg("va 0x%lx pa %pa size 0x%zx flags 0x%x\n", + va_start, &pa_start, size, flags); + err = iommu_map(pd->domain, va_start, pa_start, + size, flags); + if (err) { + usnic_err("Failed to map va 0x%lx pa %pa size 0x%zx with err %d\n", + va_start, &pa_start, size, err); + goto err_out; + } + break; + } + + if (pa != pa_start) + pa_end += PAGE_SIZE; + } + + if (i == chunk->nents) { + /* + * Hit last entry of the chunk, + * hence advance to next chunk + */ + chunk = list_first_entry(&chunk->list, + struct usnic_uiom_chunk, + list); + goto iter_chunk; + } + } + + return 0; + +err_out: + usnic_uiom_unmap_sorted_intervals(intervals, pd); + return err; +} + +struct usnic_uiom_reg *usnic_uiom_reg_get(struct usnic_uiom_pd *pd, + unsigned long addr, size_t size, + int writable, int dmasync) +{ + struct usnic_uiom_reg *uiomr; + unsigned long va_base, vpn_start, vpn_last; + unsigned long npages; + int offset, err; + LIST_HEAD(sorted_diff_intervals); + + /* + * Intel IOMMU map throws an error if a translation entry is + * changed from read to write. This module may not unmap + * and then remap the entry after fixing the permission + * b/c this open up a small windows where hw DMA may page fault + * Hence, make all entries to be writable. + */ + writable = 1; + + va_base = addr & PAGE_MASK; + offset = addr & ~PAGE_MASK; + npages = PAGE_ALIGN(size + offset) >> PAGE_SHIFT; + vpn_start = (addr & PAGE_MASK) >> PAGE_SHIFT; + vpn_last = vpn_start + npages - 1; + + uiomr = kmalloc(sizeof(*uiomr), GFP_KERNEL); + if (!uiomr) + return ERR_PTR(-ENOMEM); + + uiomr->va = va_base; + uiomr->offset = offset; + uiomr->length = size; + uiomr->writable = writable; + uiomr->pd = pd; + + err = usnic_uiom_get_pages(addr, size, writable, dmasync, + &uiomr->chunk_list); + if (err) { + usnic_err("Failed get_pages vpn [0x%lx,0x%lx] err %d\n", + vpn_start, vpn_last, err); + goto out_free_uiomr; + } + + spin_lock(&pd->lock); + err = usnic_uiom_get_intervals_diff(vpn_start, vpn_last, + (writable) ? IOMMU_WRITE : 0, + IOMMU_WRITE, + &pd->rb_root, + &sorted_diff_intervals); + if (err) { + usnic_err("Failed disjoint interval vpn [0x%lx,0x%lx] err %d\n", + vpn_start, vpn_last, err); + goto out_put_pages; + } + + err = usnic_uiom_map_sorted_intervals(&sorted_diff_intervals, uiomr); + if (err) { + usnic_err("Failed map interval vpn [0x%lx,0x%lx] err %d\n", + vpn_start, vpn_last, err); + goto out_put_intervals; + + } + + err = usnic_uiom_insert_interval(&pd->rb_root, vpn_start, vpn_last, + (writable) ? IOMMU_WRITE : 0); + if (err) { + usnic_err("Failed insert interval vpn [0x%lx,0x%lx] err %d\n", + vpn_start, vpn_last, err); + goto out_unmap_intervals; + } + + usnic_uiom_put_interval_set(&sorted_diff_intervals); + spin_unlock(&pd->lock); + + return uiomr; + +out_unmap_intervals: + usnic_uiom_unmap_sorted_intervals(&sorted_diff_intervals, pd); +out_put_intervals: + usnic_uiom_put_interval_set(&sorted_diff_intervals); +out_put_pages: + usnic_uiom_put_pages(&uiomr->chunk_list, 0); + spin_unlock(&pd->lock); +out_free_uiomr: + kfree(uiomr); + return ERR_PTR(err); +} + +void usnic_uiom_reg_release(struct usnic_uiom_reg *uiomr, int closing) +{ + struct mm_struct *mm; + unsigned long diff; + + __usnic_uiom_reg_release(uiomr->pd, uiomr, 1); + + mm = get_task_mm(current); + if (!mm) { + kfree(uiomr); + return; + } + + diff = PAGE_ALIGN(uiomr->length + uiomr->offset) >> PAGE_SHIFT; + + /* + * We may be called with the mm's mmap_sem already held. This + * can happen when a userspace munmap() is the call that drops + * the last reference to our file and calls our release + * method. If there are memory regions to destroy, we'll end + * up here and not be able to take the mmap_sem. In that case + * we defer the vm_locked accounting to the system workqueue. + */ + if (closing) { + if (!down_write_trylock(&mm->mmap_sem)) { + INIT_WORK(&uiomr->work, usnic_uiom_reg_account); + uiomr->mm = mm; + uiomr->diff = diff; + + queue_work(usnic_uiom_wq, &uiomr->work); + return; + } + } else + down_write(&mm->mmap_sem); + + current->mm->locked_vm -= diff; + up_write(&mm->mmap_sem); + mmput(mm); + kfree(uiomr); +} + +struct usnic_uiom_pd *usnic_uiom_alloc_pd(void) +{ + struct usnic_uiom_pd *pd; + void *domain; + + pd = kzalloc(sizeof(*pd), GFP_KERNEL); + if (!pd) + return ERR_PTR(-ENOMEM); + + pd->domain = domain = iommu_domain_alloc(&pci_bus_type); + if (IS_ERR_OR_NULL(domain)) { + usnic_err("Failed to allocate IOMMU domain with err %ld\n", + PTR_ERR(pd->domain)); + kfree(pd); + return ERR_PTR(domain ? PTR_ERR(domain) : -ENOMEM); + } + + iommu_set_fault_handler(pd->domain, usnic_uiom_dma_fault, NULL); + + spin_lock_init(&pd->lock); + INIT_LIST_HEAD(&pd->devs); + + return pd; +} + +void usnic_uiom_dealloc_pd(struct usnic_uiom_pd *pd) +{ + iommu_domain_free(pd->domain); + kfree(pd); +} + +int usnic_uiom_attach_dev_to_pd(struct usnic_uiom_pd *pd, struct device *dev) +{ + struct usnic_uiom_dev *uiom_dev; + int err; + + uiom_dev = kzalloc(sizeof(*uiom_dev), GFP_ATOMIC); + if (!uiom_dev) + return -ENOMEM; + uiom_dev->dev = dev; + + err = iommu_attach_device(pd->domain, dev); + if (err) + goto out_free_dev; + + if (!iommu_domain_has_cap(pd->domain, IOMMU_CAP_CACHE_COHERENCY)) { + usnic_err("IOMMU of %s does not support cache coherency\n", + dev_name(dev)); + err = -EINVAL; + goto out_detach_device; + } + + spin_lock(&pd->lock); + list_add_tail(&uiom_dev->link, &pd->devs); + pd->dev_cnt++; + spin_unlock(&pd->lock); + + return 0; + +out_detach_device: + iommu_detach_device(pd->domain, dev); +out_free_dev: + kfree(uiom_dev); + return err; +} + +void usnic_uiom_detach_dev_from_pd(struct usnic_uiom_pd *pd, struct device *dev) +{ + struct usnic_uiom_dev *uiom_dev; + int found = 0; + + spin_lock(&pd->lock); + list_for_each_entry(uiom_dev, &pd->devs, link) { + if (uiom_dev->dev == dev) { + found = 1; + break; + } + } + + if (!found) { + usnic_err("Unable to free dev %s - not found\n", + dev_name(dev)); + spin_unlock(&pd->lock); + return; + } + + list_del(&uiom_dev->link); + pd->dev_cnt--; + spin_unlock(&pd->lock); + + return iommu_detach_device(pd->domain, dev); +} + +struct device **usnic_uiom_get_dev_list(struct usnic_uiom_pd *pd) +{ + struct usnic_uiom_dev *uiom_dev; + struct device **devs; + int i = 0; + + spin_lock(&pd->lock); + devs = kcalloc(pd->dev_cnt + 1, sizeof(*devs), GFP_ATOMIC); + if (!devs) { + devs = ERR_PTR(-ENOMEM); + goto out; + } + + list_for_each_entry(uiom_dev, &pd->devs, link) { + devs[i++] = uiom_dev->dev; + } +out: + spin_unlock(&pd->lock); + return devs; +} + +void usnic_uiom_free_dev_list(struct device **devs) +{ + kfree(devs); +} + +int usnic_uiom_init(char *drv_name) +{ + if (!iommu_present(&pci_bus_type)) { + usnic_err("IOMMU required but not present or enabled. USNIC QPs will not function w/o enabling IOMMU\n"); + return -EPERM; + } + + usnic_uiom_wq = create_workqueue(drv_name); + if (!usnic_uiom_wq) { + usnic_err("Unable to alloc wq for drv %s\n", drv_name); + return -ENOMEM; + } + + return 0; +} + +void usnic_uiom_fini(void) +{ + flush_workqueue(usnic_uiom_wq); + destroy_workqueue(usnic_uiom_wq); +} --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_uiom.h +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_uiom.h @@ -0,0 +1,80 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#ifndef USNIC_UIOM_H_ +#define USNIC_UIOM_H_ + +#include +#include + +#include "usnic_uiom_interval_tree.h" + +#define USNIC_UIOM_READ (1) +#define USNIC_UIOM_WRITE (2) + +#define USNIC_UIOM_MAX_PD_CNT (1000) +#define USNIC_UIOM_MAX_MR_CNT (1000000) +#define USNIC_UIOM_MAX_MR_SIZE (~0UL) +#define USNIC_UIOM_PAGE_SIZE (PAGE_SIZE) + +struct usnic_uiom_dev { + struct device *dev; + struct list_head link; +}; + +struct usnic_uiom_pd { + struct iommu_domain *domain; + spinlock_t lock; + struct rb_root rb_root; + struct list_head devs; + int dev_cnt; +}; + +struct usnic_uiom_reg { + struct usnic_uiom_pd *pd; + unsigned long va; + size_t length; + int offset; + int page_size; + int writable; + struct list_head chunk_list; + struct work_struct work; + struct mm_struct *mm; + unsigned long diff; +}; + +struct usnic_uiom_chunk { + struct list_head list; + int nents; + struct scatterlist page_list[0]; +}; + +struct usnic_uiom_pd *usnic_uiom_alloc_pd(void); +void usnic_uiom_dealloc_pd(struct usnic_uiom_pd *pd); +int usnic_uiom_attach_dev_to_pd(struct usnic_uiom_pd *pd, struct device *dev); +void usnic_uiom_detach_dev_from_pd(struct usnic_uiom_pd *pd, + struct device *dev); +struct device **usnic_uiom_get_dev_list(struct usnic_uiom_pd *pd); +void usnic_uiom_free_dev_list(struct device **devs); +struct usnic_uiom_reg *usnic_uiom_reg_get(struct usnic_uiom_pd *pd, + unsigned long addr, size_t size, + int access, int dmasync); +void usnic_uiom_reg_release(struct usnic_uiom_reg *uiomr, int closing); +int usnic_uiom_init(char *drv_name); +void usnic_uiom_fini(void); +#endif /* USNIC_UIOM_H_ */ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_uiom_interval_tree.c +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_uiom_interval_tree.c @@ -0,0 +1,236 @@ +#include +#include +#include +#include + +#include +#include "usnic_uiom_interval_tree.h" + +#define START(node) ((node)->start) +#define LAST(node) ((node)->last) + +#define MAKE_NODE(node, start, end, ref_cnt, flags, err, err_out) \ + do { \ + node = usnic_uiom_interval_node_alloc(start, \ + end, ref_cnt, flags); \ + if (!node) { \ + err = -ENOMEM; \ + goto err_out; \ + } \ + } while (0) + +#define MARK_FOR_ADD(node, list) (list_add_tail(&node->link, list)) + +#define MAKE_NODE_AND_APPEND(node, start, end, ref_cnt, flags, err, \ + err_out, list) \ + do { \ + MAKE_NODE(node, start, end, \ + ref_cnt, flags, err, \ + err_out); \ + MARK_FOR_ADD(node, list); \ + } while (0) + +#define FLAGS_EQUAL(flags1, flags2, mask) \ + (((flags1) & (mask)) == ((flags2) & (mask))) + +static struct usnic_uiom_interval_node* +usnic_uiom_interval_node_alloc(long int start, long int last, int ref_cnt, + int flags) +{ + struct usnic_uiom_interval_node *interval = kzalloc(sizeof(*interval), + GFP_ATOMIC); + if (!interval) + return NULL; + + interval->start = start; + interval->last = last; + interval->flags = flags; + interval->ref_cnt = ref_cnt; + + return interval; +} + +static int interval_cmp(void *priv, struct list_head *a, struct list_head *b) +{ + struct usnic_uiom_interval_node *node_a, *node_b; + + node_a = list_entry(a, struct usnic_uiom_interval_node, link); + node_b = list_entry(b, struct usnic_uiom_interval_node, link); + + /* long to int */ + if (node_a->start < node_b->start) + return -1; + else if (node_a->start > node_b->start) + return 1; + + return 0; +} + +static void +find_intervals_intersection_sorted(struct rb_root *root, unsigned long start, + unsigned long last, + struct list_head *list) +{ + struct usnic_uiom_interval_node *node; + + INIT_LIST_HEAD(list); + + for (node = usnic_uiom_interval_tree_iter_first(root, start, last); + node; + node = usnic_uiom_interval_tree_iter_next(node, start, last)) + list_add_tail(&node->link, list); + + list_sort(NULL, list, interval_cmp); +} + +int usnic_uiom_get_intervals_diff(unsigned long start, unsigned long last, + int flags, int flag_mask, + struct rb_root *root, + struct list_head *diff_set) +{ + struct usnic_uiom_interval_node *interval, *tmp; + int err = 0; + long int pivot = start; + LIST_HEAD(intersection_set); + + INIT_LIST_HEAD(diff_set); + + find_intervals_intersection_sorted(root, start, last, + &intersection_set); + + list_for_each_entry(interval, &intersection_set, link) { + if (pivot < interval->start) { + MAKE_NODE_AND_APPEND(tmp, pivot, interval->start - 1, + 1, flags, err, err_out, + diff_set); + pivot = interval->start; + } + + /* + * Invariant: Set [start, pivot] is either in diff_set or root, + * but not in both. + */ + + if (pivot > interval->last) { + continue; + } else if (pivot <= interval->last && + FLAGS_EQUAL(interval->flags, flags, + flag_mask)) { + pivot = interval->last + 1; + } + } + + if (pivot <= last) + MAKE_NODE_AND_APPEND(tmp, pivot, last, 1, flags, err, err_out, + diff_set); + + return 0; + +err_out: + list_for_each_entry_safe(interval, tmp, diff_set, link) { + list_del(&interval->link); + kfree(interval); + } + + return err; +} + +void usnic_uiom_put_interval_set(struct list_head *intervals) +{ + struct usnic_uiom_interval_node *interval, *tmp; + list_for_each_entry_safe(interval, tmp, intervals, link) + kfree(interval); +} + +int usnic_uiom_insert_interval(struct rb_root *root, unsigned long start, + unsigned long last, int flags) +{ + struct usnic_uiom_interval_node *interval, *tmp; + unsigned long istart, ilast; + int iref_cnt, iflags; + unsigned long lpivot = start; + int err = 0; + LIST_HEAD(to_add); + LIST_HEAD(intersection_set); + + find_intervals_intersection_sorted(root, start, last, + &intersection_set); + + list_for_each_entry(interval, &intersection_set, link) { + /* + * Invariant - lpivot is the left edge of next interval to be + * inserted + */ + istart = interval->start; + ilast = interval->last; + iref_cnt = interval->ref_cnt; + iflags = interval->flags; + + if (istart < lpivot) { + MAKE_NODE_AND_APPEND(tmp, istart, lpivot - 1, iref_cnt, + iflags, err, err_out, &to_add); + } else if (istart > lpivot) { + MAKE_NODE_AND_APPEND(tmp, lpivot, istart - 1, 1, flags, + err, err_out, &to_add); + lpivot = istart; + } else { + lpivot = istart; + } + + if (ilast > last) { + MAKE_NODE_AND_APPEND(tmp, lpivot, last, iref_cnt + 1, + iflags | flags, err, err_out, + &to_add); + MAKE_NODE_AND_APPEND(tmp, last + 1, ilast, iref_cnt, + iflags, err, err_out, &to_add); + } else { + MAKE_NODE_AND_APPEND(tmp, lpivot, ilast, iref_cnt + 1, + iflags | flags, err, err_out, + &to_add); + } + + lpivot = ilast + 1; + } + + if (lpivot <= last) + MAKE_NODE_AND_APPEND(tmp, lpivot, last, 1, flags, err, err_out, + &to_add); + + list_for_each_entry_safe(interval, tmp, &intersection_set, link) { + usnic_uiom_interval_tree_remove(interval, root); + kfree(interval); + } + + list_for_each_entry(interval, &to_add, link) + usnic_uiom_interval_tree_insert(interval, root); + + return 0; + +err_out: + list_for_each_entry_safe(interval, tmp, &to_add, link) + kfree(interval); + + return err; +} + +void usnic_uiom_remove_interval(struct rb_root *root, unsigned long start, + unsigned long last, struct list_head *removed) +{ + struct usnic_uiom_interval_node *interval; + + for (interval = usnic_uiom_interval_tree_iter_first(root, start, last); + interval; + interval = usnic_uiom_interval_tree_iter_next(interval, + start, + last)) { + if (--interval->ref_cnt == 0) + list_add_tail(&interval->link, removed); + } + + list_for_each_entry(interval, removed, link) + usnic_uiom_interval_tree_remove(interval, root); +} + +INTERVAL_TREE_DEFINE(struct usnic_uiom_interval_node, rb, + unsigned long, __subtree_last, + START, LAST, , usnic_uiom_interval_tree) --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_uiom_interval_tree.h +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_uiom_interval_tree.h @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#ifndef USNIC_UIOM_INTERVAL_TREE_H_ +#define USNIC_UIOM_INTERVAL_TREE_H_ + +#include + +struct usnic_uiom_interval_node { + struct rb_node rb; + struct list_head link; + unsigned long start; + unsigned long last; + unsigned long __subtree_last; + unsigned int ref_cnt; + int flags; +}; + +extern void +usnic_uiom_interval_tree_insert(struct usnic_uiom_interval_node *node, + struct rb_root *root); +extern void +usnic_uiom_interval_tree_remove(struct usnic_uiom_interval_node *node, + struct rb_root *root); +extern struct usnic_uiom_interval_node * +usnic_uiom_interval_tree_iter_first(struct rb_root *root, + unsigned long start, + unsigned long last); +extern struct usnic_uiom_interval_node * +usnic_uiom_interval_tree_iter_next(struct usnic_uiom_interval_node *node, + unsigned long start, unsigned long last); +/* + * Inserts {start...last} into {root}. If there are overlaps, + * nodes will be broken up and merged + */ +int usnic_uiom_insert_interval(struct rb_root *root, + unsigned long start, unsigned long last, + int flags); +/* + * Removed {start...last} from {root}. The nodes removed are returned in + * 'removed.' The caller is responsibile for freeing memory of nodes in + * 'removed.' + */ +void usnic_uiom_remove_interval(struct rb_root *root, + unsigned long start, unsigned long last, + struct list_head *removed); +/* + * Returns {start...last} - {root} (relative complement of {start...last} in + * {root}) in diff_set sorted ascendingly + */ +int usnic_uiom_get_intervals_diff(unsigned long start, + unsigned long last, int flags, + int flag_mask, + struct rb_root *root, + struct list_head *diff_set); +/* Call this to free diff_set returned by usnic_uiom_get_intervals_diff */ +void usnic_uiom_put_interval_set(struct list_head *intervals); +#endif /* USNIC_UIOM_INTERVAL_TREE_H_ */ --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_vnic.c +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_vnic.c @@ -0,0 +1,467 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ +#include +#include +#include + +#include "usnic_ib.h" +#include "vnic_resource.h" +#include "usnic_log.h" +#include "usnic_vnic.h" + +struct usnic_vnic { + struct vnic_dev *vdev; + struct vnic_dev_bar bar[PCI_NUM_RESOURCES]; + struct usnic_vnic_res_chunk chunks[USNIC_VNIC_RES_TYPE_MAX]; + spinlock_t res_lock; +}; + +static enum vnic_res_type _to_vnic_res_type(enum usnic_vnic_res_type res_type) +{ +#define DEFINE_USNIC_VNIC_RES_AT(usnic_vnic_res_t, vnic_res_type, desc, val) \ + vnic_res_type, +#define DEFINE_USNIC_VNIC_RES(usnic_vnic_res_t, vnic_res_type, desc) \ + vnic_res_type, + static enum vnic_res_type usnic_vnic_type_2_vnic_type[] = { + USNIC_VNIC_RES_TYPES}; +#undef DEFINE_USNIC_VNIC_RES +#undef DEFINE_USNIC_VNIC_RES_AT + + if (res_type >= USNIC_VNIC_RES_TYPE_MAX) + return RES_TYPE_MAX; + + return usnic_vnic_type_2_vnic_type[res_type]; +} + +const char *usnic_vnic_res_type_to_str(enum usnic_vnic_res_type res_type) +{ +#define DEFINE_USNIC_VNIC_RES_AT(usnic_vnic_res_t, vnic_res_type, desc, val) \ + desc, +#define DEFINE_USNIC_VNIC_RES(usnic_vnic_res_t, vnic_res_type, desc) \ + desc, + static const char * const usnic_vnic_res_type_desc[] = { + USNIC_VNIC_RES_TYPES}; +#undef DEFINE_USNIC_VNIC_RES +#undef DEFINE_USNIC_VNIC_RES_AT + + if (res_type >= USNIC_VNIC_RES_TYPE_MAX) + return "unknown"; + + return usnic_vnic_res_type_desc[res_type]; + +} + +const char *usnic_vnic_pci_name(struct usnic_vnic *vnic) +{ + return pci_name(usnic_vnic_get_pdev(vnic)); +} + +int usnic_vnic_dump(struct usnic_vnic *vnic, char *buf, + int buf_sz, + void *hdr_obj, + int (*printtitle)(void *, char*, int), + int (*printcols)(char *, int), + int (*printrow)(void *, char *, int)) +{ + struct usnic_vnic_res_chunk *chunk; + struct usnic_vnic_res *res; + struct vnic_dev_bar *bar0; + int i, j, offset; + + offset = 0; + bar0 = usnic_vnic_get_bar(vnic, 0); + offset += scnprintf(buf + offset, buf_sz - offset, + "VF:%hu BAR0 bus_addr=%pa vaddr=0x%p size=%ld ", + usnic_vnic_get_index(vnic), + &bar0->bus_addr, + bar0->vaddr, bar0->len); + if (printtitle) + offset += printtitle(hdr_obj, buf + offset, buf_sz - offset); + offset += scnprintf(buf + offset, buf_sz - offset, "\n"); + offset += scnprintf(buf + offset, buf_sz - offset, + "|RES\t|CTRL_PIN\t\t|IN_USE\t"); + if (printcols) + offset += printcols(buf + offset, buf_sz - offset); + offset += scnprintf(buf + offset, buf_sz - offset, "\n"); + + spin_lock(&vnic->res_lock); + for (i = 0; i < ARRAY_SIZE(vnic->chunks); i++) { + chunk = &vnic->chunks[i]; + for (j = 0; j < chunk->cnt; j++) { + res = chunk->res[j]; + offset += scnprintf(buf + offset, buf_sz - offset, + "|%s[%u]\t|0x%p\t|%u\t", + usnic_vnic_res_type_to_str(res->type), + res->vnic_idx, res->ctrl, !!res->owner); + if (printrow) { + offset += printrow(res->owner, buf + offset, + buf_sz - offset); + } + offset += scnprintf(buf + offset, buf_sz - offset, + "\n"); + } + } + spin_unlock(&vnic->res_lock); + return offset; +} + +void usnic_vnic_res_spec_update(struct usnic_vnic_res_spec *spec, + enum usnic_vnic_res_type trgt_type, + u16 cnt) +{ + int i; + + for (i = 0; i < USNIC_VNIC_RES_TYPE_MAX; i++) { + if (spec->resources[i].type == trgt_type) { + spec->resources[i].cnt = cnt; + return; + } + } + + WARN_ON(1); +} + +int usnic_vnic_res_spec_satisfied(const struct usnic_vnic_res_spec *min_spec, + struct usnic_vnic_res_spec *res_spec) +{ + int found, i, j; + + for (i = 0; i < USNIC_VNIC_RES_TYPE_MAX; i++) { + found = 0; + + for (j = 0; j < USNIC_VNIC_RES_TYPE_MAX; j++) { + if (res_spec->resources[i].type != + min_spec->resources[i].type) + continue; + found = 1; + if (min_spec->resources[i].cnt > + res_spec->resources[i].cnt) + return -EINVAL; + break; + } + + if (!found) + return -EINVAL; + } + return 0; +} + +int usnic_vnic_spec_dump(char *buf, int buf_sz, + struct usnic_vnic_res_spec *res_spec) +{ + enum usnic_vnic_res_type res_type; + int res_cnt; + int i; + int offset = 0; + + for (i = 0; i < USNIC_VNIC_RES_TYPE_MAX; i++) { + res_type = res_spec->resources[i].type; + res_cnt = res_spec->resources[i].cnt; + offset += scnprintf(buf + offset, buf_sz - offset, + "Res: %s Cnt: %d ", + usnic_vnic_res_type_to_str(res_type), + res_cnt); + } + + return offset; +} + +int usnic_vnic_check_room(struct usnic_vnic *vnic, + struct usnic_vnic_res_spec *res_spec) +{ + int i; + enum usnic_vnic_res_type res_type; + int res_cnt; + + for (i = 0; i < USNIC_VNIC_RES_TYPE_MAX; i++) { + res_type = res_spec->resources[i].type; + res_cnt = res_spec->resources[i].cnt; + + if (res_type == USNIC_VNIC_RES_TYPE_EOL) + break; + + if (res_cnt > usnic_vnic_res_free_cnt(vnic, res_type)) + return -EBUSY; + } + + return 0; +} + +int usnic_vnic_res_cnt(struct usnic_vnic *vnic, + enum usnic_vnic_res_type type) +{ + return vnic->chunks[type].cnt; +} + +int usnic_vnic_res_free_cnt(struct usnic_vnic *vnic, + enum usnic_vnic_res_type type) +{ + return vnic->chunks[type].free_cnt; +} + +struct usnic_vnic_res_chunk * +usnic_vnic_get_resources(struct usnic_vnic *vnic, enum usnic_vnic_res_type type, + int cnt, void *owner) +{ + struct usnic_vnic_res_chunk *src, *ret; + struct usnic_vnic_res *res; + int i; + + if (usnic_vnic_res_free_cnt(vnic, type) < cnt || cnt < 1 || !owner) + return ERR_PTR(-EINVAL); + + ret = kzalloc(sizeof(*ret), GFP_ATOMIC); + if (!ret) { + usnic_err("Failed to allocate chunk for %s - Out of memory\n", + usnic_vnic_pci_name(vnic)); + return ERR_PTR(-ENOMEM); + } + + ret->res = kzalloc(sizeof(*(ret->res))*cnt, GFP_ATOMIC); + if (!ret->res) { + usnic_err("Failed to allocate resources for %s. Out of memory\n", + usnic_vnic_pci_name(vnic)); + kfree(ret); + return ERR_PTR(-ENOMEM); + } + + spin_lock(&vnic->res_lock); + src = &vnic->chunks[type]; + for (i = 0; i < src->cnt && ret->cnt < cnt; i++) { + res = src->res[i]; + if (!res->owner) { + src->free_cnt--; + res->owner = owner; + ret->res[ret->cnt++] = res; + } + } + + spin_unlock(&vnic->res_lock); + ret->type = type; + ret->vnic = vnic; + WARN_ON(ret->cnt != cnt); + + return ret; +} + +void usnic_vnic_put_resources(struct usnic_vnic_res_chunk *chunk) +{ + + struct usnic_vnic_res *res; + int i; + struct usnic_vnic *vnic = chunk->vnic; + + spin_lock(&vnic->res_lock); + while ((i = --chunk->cnt) >= 0) { + res = chunk->res[i]; + chunk->res[i] = NULL; + res->owner = NULL; + vnic->chunks[res->type].free_cnt++; + } + spin_unlock(&vnic->res_lock); + + kfree(chunk->res); + kfree(chunk); +} + +u16 usnic_vnic_get_index(struct usnic_vnic *vnic) +{ + return usnic_vnic_get_pdev(vnic)->devfn - 1; +} + +static int usnic_vnic_alloc_res_chunk(struct usnic_vnic *vnic, + enum usnic_vnic_res_type type, + struct usnic_vnic_res_chunk *chunk) +{ + int cnt, err, i; + struct usnic_vnic_res *res; + + cnt = vnic_dev_get_res_count(vnic->vdev, _to_vnic_res_type(type)); + if (cnt < 1) + return -EINVAL; + + chunk->cnt = chunk->free_cnt = cnt; + chunk->res = kzalloc(sizeof(*(chunk->res))*cnt, GFP_KERNEL); + if (!chunk->res) + return -ENOMEM; + + for (i = 0; i < cnt; i++) { + res = kzalloc(sizeof(*res), GFP_KERNEL); + if (!res) { + err = -ENOMEM; + goto fail; + } + res->type = type; + res->vnic_idx = i; + res->vnic = vnic; + res->ctrl = vnic_dev_get_res(vnic->vdev, + _to_vnic_res_type(type), i); + chunk->res[i] = res; + } + + chunk->vnic = vnic; + return 0; +fail: + for (i--; i >= 0; i--) + kfree(chunk->res[i]); + kfree(chunk->res); + return err; +} + +static void usnic_vnic_free_res_chunk(struct usnic_vnic_res_chunk *chunk) +{ + int i; + for (i = 0; i < chunk->cnt; i++) + kfree(chunk->res[i]); + kfree(chunk->res); +} + +static int usnic_vnic_discover_resources(struct pci_dev *pdev, + struct usnic_vnic *vnic) +{ + enum usnic_vnic_res_type res_type; + int i; + int err = 0; + + for (i = 0; i < ARRAY_SIZE(vnic->bar); i++) { + if (!(pci_resource_flags(pdev, i) & IORESOURCE_MEM)) + continue; + vnic->bar[i].len = pci_resource_len(pdev, i); + vnic->bar[i].vaddr = pci_iomap(pdev, i, vnic->bar[i].len); + if (!vnic->bar[i].vaddr) { + usnic_err("Cannot memory-map BAR %d, aborting\n", + i); + err = -ENODEV; + goto out_clean_bar; + } + vnic->bar[i].bus_addr = pci_resource_start(pdev, i); + } + + vnic->vdev = vnic_dev_register(NULL, pdev, pdev, vnic->bar, + ARRAY_SIZE(vnic->bar)); + if (!vnic->vdev) { + usnic_err("Failed to register device %s\n", + pci_name(pdev)); + err = -EINVAL; + goto out_clean_bar; + } + + for (res_type = USNIC_VNIC_RES_TYPE_EOL + 1; + res_type < USNIC_VNIC_RES_TYPE_MAX; res_type++) { + err = usnic_vnic_alloc_res_chunk(vnic, res_type, + &vnic->chunks[res_type]); + if (err) { + usnic_err("Failed to alloc res %s with err %d\n", + usnic_vnic_res_type_to_str(res_type), + err); + goto out_clean_chunks; + } + } + + return 0; + +out_clean_chunks: + for (res_type--; res_type > USNIC_VNIC_RES_TYPE_EOL; res_type--) + usnic_vnic_free_res_chunk(&vnic->chunks[res_type]); + vnic_dev_unregister(vnic->vdev); +out_clean_bar: + for (i = 0; i < ARRAY_SIZE(vnic->bar); i++) { + if (!(pci_resource_flags(pdev, i) & IORESOURCE_MEM)) + continue; + if (!vnic->bar[i].vaddr) + break; + + iounmap(vnic->bar[i].vaddr); + } + + return err; +} + +struct pci_dev *usnic_vnic_get_pdev(struct usnic_vnic *vnic) +{ + return vnic_dev_get_pdev(vnic->vdev); +} + +struct vnic_dev_bar *usnic_vnic_get_bar(struct usnic_vnic *vnic, + int bar_num) +{ + return (bar_num < ARRAY_SIZE(vnic->bar)) ? &vnic->bar[bar_num] : NULL; +} + +static void usnic_vnic_release_resources(struct usnic_vnic *vnic) +{ + int i; + struct pci_dev *pdev; + enum usnic_vnic_res_type res_type; + + pdev = usnic_vnic_get_pdev(vnic); + + for (res_type = USNIC_VNIC_RES_TYPE_EOL + 1; + res_type < USNIC_VNIC_RES_TYPE_MAX; res_type++) + usnic_vnic_free_res_chunk(&vnic->chunks[res_type]); + + vnic_dev_unregister(vnic->vdev); + + for (i = 0; i < ARRAY_SIZE(vnic->bar); i++) { + if (!(pci_resource_flags(pdev, i) & IORESOURCE_MEM)) + continue; + iounmap(vnic->bar[i].vaddr); + } +} + +struct usnic_vnic *usnic_vnic_alloc(struct pci_dev *pdev) +{ + struct usnic_vnic *vnic; + int err = 0; + + if (!pci_is_enabled(pdev)) { + usnic_err("PCI dev %s is disabled\n", pci_name(pdev)); + return ERR_PTR(-EINVAL); + } + + vnic = kzalloc(sizeof(*vnic), GFP_KERNEL); + if (!vnic) { + usnic_err("Failed to alloc vnic for %s - out of memory\n", + pci_name(pdev)); + return ERR_PTR(-ENOMEM); + } + + spin_lock_init(&vnic->res_lock); + + err = usnic_vnic_discover_resources(pdev, vnic); + if (err) { + usnic_err("Failed to discover %s resources with err %d\n", + pci_name(pdev), err); + goto out_free_vnic; + } + + usnic_dbg("Allocated vnic for %s\n", usnic_vnic_pci_name(vnic)); + + return vnic; + +out_free_vnic: + kfree(vnic); + + return ERR_PTR(err); +} + +void usnic_vnic_free(struct usnic_vnic *vnic) +{ + usnic_vnic_release_resources(vnic); + kfree(vnic); +} --- linux-3.13.0.orig/drivers/infiniband/hw/usnic/usnic_vnic.h +++ linux-3.13.0/drivers/infiniband/hw/usnic/usnic_vnic.h @@ -0,0 +1,103 @@ +/* + * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved. + * + * This program is free software; you may redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + */ + +#ifndef USNIC_VNIC_H_ +#define USNIC_VNIC_H_ + +#include + +#include "vnic_dev.h" + +/* =USNIC_VNIC_RES_TYPE= =VNIC_RES= =DESC= */ +#define USNIC_VNIC_RES_TYPES \ + DEFINE_USNIC_VNIC_RES_AT(EOL, RES_TYPE_EOL, "EOL", 0) \ + DEFINE_USNIC_VNIC_RES(WQ, RES_TYPE_WQ, "WQ") \ + DEFINE_USNIC_VNIC_RES(RQ, RES_TYPE_RQ, "RQ") \ + DEFINE_USNIC_VNIC_RES(CQ, RES_TYPE_CQ, "CQ") \ + DEFINE_USNIC_VNIC_RES(INTR, RES_TYPE_INTR_CTRL, "INT") \ + DEFINE_USNIC_VNIC_RES(MAX, RES_TYPE_MAX, "MAX")\ + +#define DEFINE_USNIC_VNIC_RES_AT(usnic_vnic_res_t, vnic_res_type, desc, val) \ + USNIC_VNIC_RES_TYPE_##usnic_vnic_res_t = val, +#define DEFINE_USNIC_VNIC_RES(usnic_vnic_res_t, vnic_res_type, desc) \ + USNIC_VNIC_RES_TYPE_##usnic_vnic_res_t, +enum usnic_vnic_res_type { + USNIC_VNIC_RES_TYPES +}; +#undef DEFINE_USNIC_VNIC_RES +#undef DEFINE_USNIC_VNIC_RES_AT + +struct usnic_vnic_res { + enum usnic_vnic_res_type type; + unsigned int vnic_idx; + struct usnic_vnic *vnic; + void __iomem *ctrl; + void *owner; +}; + +struct usnic_vnic_res_chunk { + enum usnic_vnic_res_type type; + int cnt; + int free_cnt; + struct usnic_vnic_res **res; + struct usnic_vnic *vnic; +}; + +struct usnic_vnic_res_desc { + enum usnic_vnic_res_type type; + uint16_t cnt; +}; + +struct usnic_vnic_res_spec { + struct usnic_vnic_res_desc resources[USNIC_VNIC_RES_TYPE_MAX]; +}; + +const char *usnic_vnic_res_type_to_str(enum usnic_vnic_res_type res_type); +const char *usnic_vnic_pci_name(struct usnic_vnic *vnic); +int usnic_vnic_dump(struct usnic_vnic *vnic, char *buf, int buf_sz, + void *hdr_obj, + int (*printtitle)(void *, char*, int), + int (*printcols)(char *, int), + int (*printrow)(void *, char *, int)); +void usnic_vnic_res_spec_update(struct usnic_vnic_res_spec *spec, + enum usnic_vnic_res_type trgt_type, + u16 cnt); +int usnic_vnic_res_spec_satisfied(const struct usnic_vnic_res_spec *min_spec, + struct usnic_vnic_res_spec *res_spec); +int usnic_vnic_spec_dump(char *buf, int buf_sz, + struct usnic_vnic_res_spec *res_spec); +int usnic_vnic_check_room(struct usnic_vnic *vnic, + struct usnic_vnic_res_spec *res_spec); +int usnic_vnic_res_cnt(struct usnic_vnic *vnic, + enum usnic_vnic_res_type type); +int usnic_vnic_res_free_cnt(struct usnic_vnic *vnic, + enum usnic_vnic_res_type type); +struct usnic_vnic_res_chunk * +usnic_vnic_get_resources(struct usnic_vnic *vnic, + enum usnic_vnic_res_type type, + int cnt, + void *owner); +void usnic_vnic_put_resources(struct usnic_vnic_res_chunk *chunk); +struct pci_dev *usnic_vnic_get_pdev(struct usnic_vnic *vnic); +struct vnic_dev_bar *usnic_vnic_get_bar(struct usnic_vnic *vnic, + int bar_num); +struct usnic_vnic *usnic_vnic_alloc(struct pci_dev *pdev); +void usnic_vnic_free(struct usnic_vnic *vnic); +u16 usnic_vnic_get_index(struct usnic_vnic *vnic); + +#endif /*!USNIC_VNIC_H_*/ --- linux-3.13.0.orig/drivers/infiniband/ulp/ipoib/ipoib_main.c +++ linux-3.13.0/drivers/infiniband/ulp/ipoib/ipoib_main.c @@ -104,6 +104,8 @@ ipoib_dbg(priv, "bringing up interface\n"); + netif_carrier_off(dev); + set_bit(IPOIB_FLAG_ADMIN_UP, &priv->flags); if (ipoib_pkey_dev_delay_open(dev)) @@ -1366,8 +1368,6 @@ memcpy(dev->broadcast, ipv4_bcast_addr, INFINIBAND_ALEN); - netif_carrier_off(dev); - priv->dev = dev; spin_lock_init(&priv->lock); --- linux-3.13.0.orig/drivers/infiniband/ulp/ipoib/ipoib_verbs.c +++ linux-3.13.0/drivers/infiniband/ulp/ipoib/ipoib_verbs.c @@ -192,6 +192,9 @@ if (priv->hca_caps & IB_DEVICE_BLOCK_MULTICAST_LOOPBACK) init_attr.create_flags |= IB_QP_CREATE_BLOCK_MULTICAST_LOOPBACK; + if (priv->hca_caps & IB_DEVICE_MANAGED_FLOW_STEERING) + init_attr.create_flags |= IB_QP_CREATE_NETIF_QP; + if (dev->features & NETIF_F_SG) init_attr.cap.max_send_sge = MAX_SKB_FRAGS + 1; --- linux-3.13.0.orig/drivers/infiniband/ulp/iser/iser_initiator.c +++ linux-3.13.0/drivers/infiniband/ulp/iser/iser_initiator.c @@ -610,11 +610,12 @@ ib_dma_unmap_single(device->ib_device, tx_desc->dma_addr, ISER_HEADERS_LEN, DMA_TO_DEVICE); kmem_cache_free(ig.desc_cache, tx_desc); + tx_desc = NULL; } atomic_dec(&ib_conn->post_send_buf_count); - if (tx_desc->type == ISCSI_TX_CONTROL) { + if (tx_desc && tx_desc->type == ISCSI_TX_CONTROL) { /* this arithmetic is legal by libiscsi dd_data allocation */ task = (void *) ((long)(void *)tx_desc - sizeof(struct iscsi_task)); --- linux-3.13.0.orig/drivers/infiniband/ulp/iser/iser_verbs.c +++ linux-3.13.0/drivers/infiniband/ulp/iser/iser_verbs.c @@ -652,9 +652,13 @@ /* getting here when the state is UP means that the conn is being * * terminated asynchronously from the iSCSI layer's perspective. */ if (iser_conn_state_comp_exch(ib_conn, ISER_CONN_UP, - ISER_CONN_TERMINATING)) - iscsi_conn_failure(ib_conn->iser_conn->iscsi_conn, - ISCSI_ERR_CONN_FAILED); + ISER_CONN_TERMINATING)){ + if (ib_conn->iser_conn) + iscsi_conn_failure(ib_conn->iser_conn->iscsi_conn, + ISCSI_ERR_CONN_FAILED); + else + iser_err("iscsi_iser connection isn't bound\n"); + } /* Complete the termination process if no posts are pending */ if (ib_conn->post_recv_buf_count == 0 && --- linux-3.13.0.orig/drivers/infiniband/ulp/isert/ib_isert.c +++ linux-3.13.0/drivers/infiniband/ulp/isert/ib_isert.c @@ -47,10 +47,10 @@ isert_map_rdma(struct iscsi_conn *conn, struct iscsi_cmd *cmd, struct isert_rdma_wr *wr); static void -isert_unreg_rdma_frwr(struct isert_cmd *isert_cmd, struct isert_conn *isert_conn); +isert_unreg_rdma(struct isert_cmd *isert_cmd, struct isert_conn *isert_conn); static int -isert_reg_rdma_frwr(struct iscsi_conn *conn, struct iscsi_cmd *cmd, - struct isert_rdma_wr *wr); +isert_reg_rdma(struct iscsi_conn *conn, struct iscsi_cmd *cmd, + struct isert_rdma_wr *wr); static void isert_qp_event_callback(struct ib_event *e, void *context) @@ -227,11 +227,11 @@ /* asign function handlers */ if (dev_attr->device_cap_flags & IB_DEVICE_MEM_MGT_EXTENSIONS) { - device->use_frwr = 1; - device->reg_rdma_mem = isert_reg_rdma_frwr; - device->unreg_rdma_mem = isert_unreg_rdma_frwr; + device->use_fastreg = 1; + device->reg_rdma_mem = isert_reg_rdma; + device->unreg_rdma_mem = isert_unreg_rdma; } else { - device->use_frwr = 0; + device->use_fastreg = 0; device->reg_rdma_mem = isert_map_rdma; device->unreg_rdma_mem = isert_unmap_cmd; } @@ -239,9 +239,10 @@ device->cqs_used = min_t(int, num_online_cpus(), device->ib_device->num_comp_vectors); device->cqs_used = min(ISERT_MAX_CQ, device->cqs_used); - pr_debug("Using %d CQs, device %s supports %d vectors support FRWR %d\n", + pr_debug("Using %d CQs, device %s supports %d vectors support " + "Fast registration %d\n", device->cqs_used, device->ib_device->name, - device->ib_device->num_comp_vectors, device->use_frwr); + device->ib_device->num_comp_vectors, device->use_fastreg); device->cq_desc = kzalloc(sizeof(struct isert_cq_desc) * device->cqs_used, GFP_KERNEL); if (!device->cq_desc) { @@ -250,13 +251,6 @@ } cq_desc = device->cq_desc; - device->dev_pd = ib_alloc_pd(ib_dev); - if (IS_ERR(device->dev_pd)) { - ret = PTR_ERR(device->dev_pd); - pr_err("ib_alloc_pd failed for dev_pd: %d\n", ret); - goto out_cq_desc; - } - for (i = 0; i < device->cqs_used; i++) { cq_desc[i].device = device; cq_desc[i].cq_index = i; @@ -294,13 +288,6 @@ goto out_cq; } - device->dev_mr = ib_get_dma_mr(device->dev_pd, IB_ACCESS_LOCAL_WRITE); - if (IS_ERR(device->dev_mr)) { - ret = PTR_ERR(device->dev_mr); - pr_err("ib_get_dma_mr failed for dev_mr: %d\n", ret); - goto out_cq; - } - return 0; out_cq: @@ -316,9 +303,6 @@ ib_destroy_cq(device->dev_tx_cq[j]); } } - ib_dealloc_pd(device->dev_pd); - -out_cq_desc: kfree(device->cq_desc); return ret; @@ -341,8 +325,6 @@ device->dev_tx_cq[i] = NULL; } - ib_dereg_mr(device->dev_mr); - ib_dealloc_pd(device->dev_pd); kfree(device->cq_desc); } @@ -398,18 +380,18 @@ } static void -isert_conn_free_frwr_pool(struct isert_conn *isert_conn) +isert_conn_free_fastreg_pool(struct isert_conn *isert_conn) { struct fast_reg_descriptor *fr_desc, *tmp; int i = 0; - if (list_empty(&isert_conn->conn_frwr_pool)) + if (list_empty(&isert_conn->conn_fr_pool)) return; - pr_debug("Freeing conn %p frwr pool", isert_conn); + pr_debug("Freeing conn %p fastreg pool", isert_conn); list_for_each_entry_safe(fr_desc, tmp, - &isert_conn->conn_frwr_pool, list) { + &isert_conn->conn_fr_pool, list) { list_del(&fr_desc->list); ib_free_fast_reg_page_list(fr_desc->data_frpl); ib_dereg_mr(fr_desc->data_mr); @@ -417,20 +399,47 @@ ++i; } - if (i < isert_conn->conn_frwr_pool_size) + if (i < isert_conn->conn_fr_pool_size) pr_warn("Pool still has %d regions registered\n", - isert_conn->conn_frwr_pool_size - i); + isert_conn->conn_fr_pool_size - i); } static int -isert_conn_create_frwr_pool(struct isert_conn *isert_conn) +isert_create_fr_desc(struct ib_device *ib_device, struct ib_pd *pd, + struct fast_reg_descriptor *fr_desc) +{ + fr_desc->data_frpl = ib_alloc_fast_reg_page_list(ib_device, + ISCSI_ISER_SG_TABLESIZE); + if (IS_ERR(fr_desc->data_frpl)) { + pr_err("Failed to allocate data frpl err=%ld\n", + PTR_ERR(fr_desc->data_frpl)); + return PTR_ERR(fr_desc->data_frpl); + } + + fr_desc->data_mr = ib_alloc_fast_reg_mr(pd, ISCSI_ISER_SG_TABLESIZE); + if (IS_ERR(fr_desc->data_mr)) { + pr_err("Failed to allocate data frmr err=%ld\n", + PTR_ERR(fr_desc->data_mr)); + ib_free_fast_reg_page_list(fr_desc->data_frpl); + return PTR_ERR(fr_desc->data_mr); + } + pr_debug("Create fr_desc %p page_list %p\n", + fr_desc, fr_desc->data_frpl->page_list); + + fr_desc->valid = true; + + return 0; +} + +static int +isert_conn_create_fastreg_pool(struct isert_conn *isert_conn) { struct fast_reg_descriptor *fr_desc; struct isert_device *device = isert_conn->conn_device; int i, ret; - INIT_LIST_HEAD(&isert_conn->conn_frwr_pool); - isert_conn->conn_frwr_pool_size = 0; + INIT_LIST_HEAD(&isert_conn->conn_fr_pool); + isert_conn->conn_fr_pool_size = 0; for (i = 0; i < ISCSI_DEF_XMIT_CMDS_MAX; i++) { fr_desc = kzalloc(sizeof(*fr_desc), GFP_KERNEL); if (!fr_desc) { @@ -439,40 +448,26 @@ goto err; } - fr_desc->data_frpl = - ib_alloc_fast_reg_page_list(device->ib_device, - ISCSI_ISER_SG_TABLESIZE); - if (IS_ERR(fr_desc->data_frpl)) { - pr_err("Failed to allocate fr_pg_list err=%ld\n", - PTR_ERR(fr_desc->data_frpl)); - ret = PTR_ERR(fr_desc->data_frpl); - goto err; - } - - fr_desc->data_mr = ib_alloc_fast_reg_mr(device->dev_pd, - ISCSI_ISER_SG_TABLESIZE); - if (IS_ERR(fr_desc->data_mr)) { - pr_err("Failed to allocate frmr err=%ld\n", - PTR_ERR(fr_desc->data_mr)); - ret = PTR_ERR(fr_desc->data_mr); - ib_free_fast_reg_page_list(fr_desc->data_frpl); + ret = isert_create_fr_desc(device->ib_device, + isert_conn->conn_pd, fr_desc); + if (ret) { + pr_err("Failed to create fastreg descriptor err=%d\n", + ret); + kfree(fr_desc); goto err; } - pr_debug("Create fr_desc %p page_list %p\n", - fr_desc, fr_desc->data_frpl->page_list); - fr_desc->valid = true; - list_add_tail(&fr_desc->list, &isert_conn->conn_frwr_pool); - isert_conn->conn_frwr_pool_size++; + list_add_tail(&fr_desc->list, &isert_conn->conn_fr_pool); + isert_conn->conn_fr_pool_size++; } - pr_debug("Creating conn %p frwr pool size=%d", - isert_conn, isert_conn->conn_frwr_pool_size); + pr_debug("Creating conn %p fastreg pool size=%d", + isert_conn, isert_conn->conn_fr_pool_size); return 0; err: - isert_conn_free_frwr_pool(isert_conn); + isert_conn_free_fastreg_pool(isert_conn); return ret; } @@ -497,12 +492,11 @@ isert_conn->state = ISER_CONN_INIT; INIT_LIST_HEAD(&isert_conn->conn_accept_node); init_completion(&isert_conn->conn_login_comp); - init_waitqueue_head(&isert_conn->conn_wait); - init_waitqueue_head(&isert_conn->conn_wait_comp_err); + init_completion(&isert_conn->conn_wait); + init_completion(&isert_conn->conn_wait_comp_err); kref_init(&isert_conn->conn_kref); kref_get(&isert_conn->conn_kref); mutex_init(&isert_conn->conn_mutex); - mutex_init(&isert_conn->conn_comp_mutex); spin_lock_init(&isert_conn->conn_lock); cma_id->context = isert_conn; @@ -558,14 +552,29 @@ } isert_conn->conn_device = device; - isert_conn->conn_pd = device->dev_pd; - isert_conn->conn_mr = device->dev_mr; + isert_conn->conn_pd = ib_alloc_pd(isert_conn->conn_device->ib_device); + if (IS_ERR(isert_conn->conn_pd)) { + ret = PTR_ERR(isert_conn->conn_pd); + pr_err("ib_alloc_pd failed for conn %p: ret=%d\n", + isert_conn, ret); + goto out_pd; + } + + isert_conn->conn_mr = ib_get_dma_mr(isert_conn->conn_pd, + IB_ACCESS_LOCAL_WRITE); + if (IS_ERR(isert_conn->conn_mr)) { + ret = PTR_ERR(isert_conn->conn_mr); + pr_err("ib_get_dma_mr failed for conn %p: ret=%d\n", + isert_conn, ret); + goto out_mr; + } - if (device->use_frwr) { - ret = isert_conn_create_frwr_pool(isert_conn); + if (device->use_fastreg) { + ret = isert_conn_create_fastreg_pool(isert_conn); if (ret) { - pr_err("Conn: %p failed to create frwr_pool\n", isert_conn); - goto out_frwr; + pr_err("Conn: %p failed to create fastreg pool\n", + isert_conn); + goto out_fastreg; } } @@ -582,9 +591,13 @@ return 0; out_conn_dev: - if (device->use_frwr) - isert_conn_free_frwr_pool(isert_conn); -out_frwr: + if (device->use_fastreg) + isert_conn_free_fastreg_pool(isert_conn); +out_fastreg: + ib_dereg_mr(isert_conn->conn_mr); +out_mr: + ib_dealloc_pd(isert_conn->conn_pd); +out_pd: isert_device_try_release(device); out_rsp_dma_map: ib_dma_unmap_single(ib_dev, isert_conn->login_rsp_dma, @@ -608,8 +621,8 @@ pr_debug("Entering isert_connect_release(): >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>\n"); - if (device && device->use_frwr) - isert_conn_free_frwr_pool(isert_conn); + if (device && device->use_fastreg) + isert_conn_free_fastreg_pool(isert_conn); if (isert_conn->conn_qp) { cq_index = ((struct isert_cq_desc *) @@ -623,6 +636,9 @@ isert_free_rx_descriptors(isert_conn); rdma_destroy_id(isert_conn->conn_cm_id); + ib_dereg_mr(isert_conn->conn_mr); + ib_dealloc_pd(isert_conn->conn_pd); + if (isert_conn->login_buf) { ib_dma_unmap_single(ib_dev, isert_conn->login_rsp_dma, ISER_RX_LOGIN_SIZE, DMA_TO_DEVICE); @@ -671,11 +687,11 @@ pr_debug("isert_disconnect_work(): >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>\n"); mutex_lock(&isert_conn->conn_mutex); - isert_conn->state = ISER_CONN_DOWN; + if (isert_conn->state == ISER_CONN_UP) + isert_conn->state = ISER_CONN_TERMINATING; if (isert_conn->post_recv_buf_count == 0 && atomic_read(&isert_conn->post_send_buf_count) == 0) { - pr_debug("Calling wake_up(&isert_conn->conn_wait);\n"); mutex_unlock(&isert_conn->conn_mutex); goto wake_up; } @@ -695,7 +711,7 @@ mutex_unlock(&isert_conn->conn_mutex); wake_up: - wake_up(&isert_conn->conn_wait); + complete(&isert_conn->conn_wait); isert_put_conn(isert_conn); } @@ -871,16 +887,17 @@ * Coalesce send completion interrupts by only setting IB_SEND_SIGNALED * bit for every ISERT_COMP_BATCH_COUNT number of ib_post_send() calls. */ - mutex_lock(&isert_conn->conn_comp_mutex); - if (coalesce && + mutex_lock(&isert_conn->conn_mutex); + if (coalesce && isert_conn->state == ISER_CONN_UP && ++isert_conn->conn_comp_batch < ISERT_COMP_BATCH_COUNT) { + tx_desc->llnode_active = true; llist_add(&tx_desc->comp_llnode, &isert_conn->conn_comp_llist); - mutex_unlock(&isert_conn->conn_comp_mutex); + mutex_unlock(&isert_conn->conn_mutex); return; } isert_conn->conn_comp_batch = 0; tx_desc->comp_llnode_batch = llist_del_all(&isert_conn->conn_comp_llist); - mutex_unlock(&isert_conn->conn_comp_mutex); + mutex_unlock(&isert_conn->conn_mutex); send_wr->send_flags = IB_SEND_SIGNALED; } @@ -1024,13 +1041,13 @@ } static struct iscsi_cmd -*isert_allocate_cmd(struct iscsi_conn *conn, gfp_t gfp) +*isert_allocate_cmd(struct iscsi_conn *conn) { struct isert_conn *isert_conn = (struct isert_conn *)conn->context; struct isert_cmd *isert_cmd; struct iscsi_cmd *cmd; - cmd = iscsit_allocate_cmd(conn, gfp); + cmd = iscsit_allocate_cmd(conn, TASK_INTERRUPTIBLE); if (!cmd) { pr_err("Unable to allocate iscsi_cmd + isert_cmd\n"); return NULL; @@ -1219,7 +1236,7 @@ switch (opcode) { case ISCSI_OP_SCSI_CMD: - cmd = isert_allocate_cmd(conn, GFP_KERNEL); + cmd = isert_allocate_cmd(conn); if (!cmd) break; @@ -1233,7 +1250,7 @@ rx_desc, (unsigned char *)hdr); break; case ISCSI_OP_NOOP_OUT: - cmd = isert_allocate_cmd(conn, GFP_KERNEL); + cmd = isert_allocate_cmd(conn); if (!cmd) break; @@ -1246,7 +1263,7 @@ (unsigned char *)hdr); break; case ISCSI_OP_SCSI_TMFUNC: - cmd = isert_allocate_cmd(conn, GFP_KERNEL); + cmd = isert_allocate_cmd(conn); if (!cmd) break; @@ -1254,7 +1271,7 @@ (unsigned char *)hdr); break; case ISCSI_OP_LOGOUT: - cmd = isert_allocate_cmd(conn, GFP_KERNEL); + cmd = isert_allocate_cmd(conn); if (!cmd) break; @@ -1265,7 +1282,7 @@ HZ); break; case ISCSI_OP_TEXT: - cmd = isert_allocate_cmd(conn, GFP_KERNEL); + cmd = isert_allocate_cmd(conn); if (!cmd) break; @@ -1404,25 +1421,25 @@ } static void -isert_unreg_rdma_frwr(struct isert_cmd *isert_cmd, struct isert_conn *isert_conn) +isert_unreg_rdma(struct isert_cmd *isert_cmd, struct isert_conn *isert_conn) { struct isert_rdma_wr *wr = &isert_cmd->rdma_wr; struct ib_device *ib_dev = isert_conn->conn_cm_id->device; LIST_HEAD(unmap_list); - pr_debug("unreg_frwr_cmd: %p\n", isert_cmd); + pr_debug("unreg_fastreg_cmd: %p\n", isert_cmd); if (wr->fr_desc) { - pr_debug("unreg_frwr_cmd: %p free fr_desc %p\n", + pr_debug("unreg_fastreg_cmd: %p free fr_desc %p\n", isert_cmd, wr->fr_desc); spin_lock_bh(&isert_conn->conn_lock); - list_add_tail(&wr->fr_desc->list, &isert_conn->conn_frwr_pool); + list_add_tail(&wr->fr_desc->list, &isert_conn->conn_fr_pool); spin_unlock_bh(&isert_conn->conn_lock); wr->fr_desc = NULL; } if (wr->sge) { - pr_debug("unreg_frwr_cmd: %p unmap_sg op\n", isert_cmd); + pr_debug("unreg_fastreg_cmd: %p unmap_sg op\n", isert_cmd); ib_dma_unmap_sg(ib_dev, wr->sge, wr->num_sge, (wr->iser_ib_op == ISER_IB_RDMA_WRITE) ? DMA_TO_DEVICE : DMA_FROM_DEVICE); @@ -1434,7 +1451,7 @@ } static void -isert_put_cmd(struct isert_cmd *isert_cmd) +isert_put_cmd(struct isert_cmd *isert_cmd, bool comp_err) { struct iscsi_cmd *cmd = isert_cmd->iscsi_cmd; struct isert_conn *isert_conn = isert_cmd->conn; @@ -1447,11 +1464,24 @@ case ISCSI_OP_SCSI_CMD: spin_lock_bh(&conn->cmd_lock); if (!list_empty(&cmd->i_conn_node)) - list_del(&cmd->i_conn_node); + list_del_init(&cmd->i_conn_node); spin_unlock_bh(&conn->cmd_lock); - if (cmd->data_direction == DMA_TO_DEVICE) + if (cmd->data_direction == DMA_TO_DEVICE) { iscsit_stop_dataout_timer(cmd); + /* + * Check for special case during comp_err where + * WRITE_PENDING has been handed off from core, + * but requires an extra target_put_sess_cmd() + * before transport_generic_free_cmd() below. + */ + if (comp_err && + cmd->se_cmd.t_state == TRANSPORT_WRITE_PENDING) { + struct se_cmd *se_cmd = &cmd->se_cmd; + + target_put_sess_cmd(se_cmd->se_sess, se_cmd); + } + } device->unreg_rdma_mem(isert_cmd, isert_conn); transport_generic_free_cmd(&cmd->se_cmd, 0); @@ -1459,7 +1489,7 @@ case ISCSI_OP_SCSI_TMFUNC: spin_lock_bh(&conn->cmd_lock); if (!list_empty(&cmd->i_conn_node)) - list_del(&cmd->i_conn_node); + list_del_init(&cmd->i_conn_node); spin_unlock_bh(&conn->cmd_lock); transport_generic_free_cmd(&cmd->se_cmd, 0); @@ -1469,7 +1499,7 @@ case ISCSI_OP_TEXT: spin_lock_bh(&conn->cmd_lock); if (!list_empty(&cmd->i_conn_node)) - list_del(&cmd->i_conn_node); + list_del_init(&cmd->i_conn_node); spin_unlock_bh(&conn->cmd_lock); /* @@ -1506,7 +1536,7 @@ static void isert_completion_put(struct iser_tx_desc *tx_desc, struct isert_cmd *isert_cmd, - struct ib_device *ib_dev) + struct ib_device *ib_dev, bool comp_err) { if (isert_cmd->pdu_buf_dma != 0) { pr_debug("Calling ib_dma_unmap_single for isert_cmd->pdu_buf_dma\n"); @@ -1516,7 +1546,7 @@ } isert_unmap_tx_desc(tx_desc, ib_dev); - isert_put_cmd(isert_cmd); + isert_put_cmd(isert_cmd, comp_err); } static void @@ -1532,6 +1562,7 @@ iscsit_stop_dataout_timer(cmd); device->unreg_rdma_mem(isert_cmd, isert_conn); cmd->write_data_done = wr->cur_rdma_length; + wr->send_wr_num = 0; pr_debug("Cmd: %p RDMA_READ comp calling execute_cmd\n", isert_cmd); spin_lock_bh(&cmd->istate_lock); @@ -1559,20 +1590,20 @@ iscsit_tmr_post_handler(cmd, cmd->conn); cmd->i_state = ISTATE_SENT_STATUS; - isert_completion_put(&isert_cmd->tx_desc, isert_cmd, ib_dev); + isert_completion_put(&isert_cmd->tx_desc, isert_cmd, ib_dev, false); break; case ISTATE_SEND_REJECT: pr_debug("Got isert_do_control_comp ISTATE_SEND_REJECT: >>>\n"); atomic_dec(&isert_conn->post_send_buf_count); cmd->i_state = ISTATE_SENT_STATUS; - isert_completion_put(&isert_cmd->tx_desc, isert_cmd, ib_dev); + isert_completion_put(&isert_cmd->tx_desc, isert_cmd, ib_dev, false); break; case ISTATE_SEND_LOGOUTRSP: pr_debug("Calling iscsit_logout_post_handler >>>>>>>>>>>>>>\n"); /* * Call atomic_dec(&isert_conn->post_send_buf_count) - * from isert_free_conn() + * from isert_wait_conn() */ isert_conn->logout_posted = true; iscsit_logout_post_handler(cmd, cmd->conn); @@ -1580,7 +1611,7 @@ case ISTATE_SEND_TEXTRSP: atomic_dec(&isert_conn->post_send_buf_count); cmd->i_state = ISTATE_SENT_STATUS; - isert_completion_put(&isert_cmd->tx_desc, isert_cmd, ib_dev); + isert_completion_put(&isert_cmd->tx_desc, isert_cmd, ib_dev, false); break; default: pr_err("Unknown do_control_comp i_state %d\n", cmd->i_state); @@ -1596,6 +1627,7 @@ struct ib_device *ib_dev) { struct iscsi_cmd *cmd = isert_cmd->iscsi_cmd; + struct isert_rdma_wr *wr = &isert_cmd->rdma_wr; if (cmd->i_state == ISTATE_SEND_TASKMGTRSP || cmd->i_state == ISTATE_SEND_LOGOUTRSP || @@ -1607,10 +1639,10 @@ queue_work(isert_comp_wq, &isert_cmd->comp_work); return; } - atomic_dec(&isert_conn->post_send_buf_count); + atomic_sub(wr->send_wr_num + 1, &isert_conn->post_send_buf_count); cmd->i_state = ISTATE_SENT_STATUS; - isert_completion_put(tx_desc, isert_cmd, ib_dev); + isert_completion_put(tx_desc, isert_cmd, ib_dev, false); } static void @@ -1645,7 +1677,7 @@ case ISER_IB_RDMA_READ: pr_debug("isert_send_completion: Got ISER_IB_RDMA_READ:\n"); - atomic_dec(&isert_conn->post_send_buf_count); + atomic_sub(wr->send_wr_num, &isert_conn->post_send_buf_count); isert_completion_rdma_read(tx_desc, isert_cmd); break; default: @@ -1674,31 +1706,78 @@ } static void -isert_cq_comp_err(struct iser_tx_desc *tx_desc, struct isert_conn *isert_conn) +isert_cq_drain_comp_llist(struct isert_conn *isert_conn, struct ib_device *ib_dev) +{ + struct llist_node *llnode; + struct isert_rdma_wr *wr; + struct iser_tx_desc *t; + + mutex_lock(&isert_conn->conn_mutex); + llnode = llist_del_all(&isert_conn->conn_comp_llist); + isert_conn->conn_comp_batch = 0; + mutex_unlock(&isert_conn->conn_mutex); + + while (llnode) { + t = llist_entry(llnode, struct iser_tx_desc, comp_llnode); + llnode = llist_next(llnode); + wr = &t->isert_cmd->rdma_wr; + + atomic_sub(wr->send_wr_num + 1, &isert_conn->post_send_buf_count); + + isert_completion_put(t, t->isert_cmd, ib_dev, true); + } +} + +static void +isert_cq_tx_comp_err(struct iser_tx_desc *tx_desc, struct isert_conn *isert_conn) { struct ib_device *ib_dev = isert_conn->conn_cm_id->device; + struct isert_cmd *isert_cmd = tx_desc->isert_cmd; + struct llist_node *llnode = tx_desc->comp_llnode_batch; + struct isert_rdma_wr *wr; + struct iser_tx_desc *t; - if (tx_desc) { - struct isert_cmd *isert_cmd = tx_desc->isert_cmd; + while (llnode) { + t = llist_entry(llnode, struct iser_tx_desc, comp_llnode); + llnode = llist_next(llnode); + wr = &t->isert_cmd->rdma_wr; + + atomic_sub(wr->send_wr_num + 1, &isert_conn->post_send_buf_count); - if (!isert_cmd) - isert_unmap_tx_desc(tx_desc, ib_dev); - else - isert_completion_put(tx_desc, isert_cmd, ib_dev); + isert_completion_put(t, t->isert_cmd, ib_dev, true); } + tx_desc->comp_llnode_batch = NULL; - if (isert_conn->post_recv_buf_count == 0 && - atomic_read(&isert_conn->post_send_buf_count) == 0) { - pr_debug("isert_cq_comp_err >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>\n"); - pr_debug("Calling wake_up from isert_cq_comp_err\n"); + if (!isert_cmd) + isert_unmap_tx_desc(tx_desc, ib_dev); + else + isert_completion_put(tx_desc, isert_cmd, ib_dev, true); +} - mutex_lock(&isert_conn->conn_mutex); - if (isert_conn->state != ISER_CONN_DOWN) - isert_conn->state = ISER_CONN_TERMINATING; - mutex_unlock(&isert_conn->conn_mutex); +static void +isert_cq_rx_comp_err(struct isert_conn *isert_conn) +{ + struct ib_device *ib_dev = isert_conn->conn_cm_id->device; + struct iscsi_conn *conn = isert_conn->conn; + + if (isert_conn->post_recv_buf_count) + return; + + isert_cq_drain_comp_llist(isert_conn, ib_dev); - wake_up(&isert_conn->conn_wait_comp_err); + if (conn->sess) { + target_sess_cmd_list_set_waiting(conn->sess->se_sess); + target_wait_for_sess_cmds(conn->sess->se_sess); } + + while (atomic_read(&isert_conn->post_send_buf_count)) + msleep(3000); + + mutex_lock(&isert_conn->conn_mutex); + isert_conn->state = ISER_CONN_DOWN; + mutex_unlock(&isert_conn->conn_mutex); + + complete(&isert_conn->conn_wait_comp_err); } static void @@ -1723,8 +1802,14 @@ pr_debug("TX wc.status != IB_WC_SUCCESS >>>>>>>>>>>>>>\n"); pr_debug("TX wc.status: 0x%08x\n", wc.status); pr_debug("TX wc.vendor_err: 0x%08x\n", wc.vendor_err); - atomic_dec(&isert_conn->post_send_buf_count); - isert_cq_comp_err(tx_desc, isert_conn); + + if (wc.wr_id != ISER_FASTREG_LI_WRID) { + if (tx_desc->llnode_active) + continue; + + atomic_dec(&isert_conn->post_send_buf_count); + isert_cq_tx_comp_err(tx_desc, isert_conn); + } } } @@ -1767,7 +1852,7 @@ wc.vendor_err); } isert_conn->post_recv_buf_count--; - isert_cq_comp_err(NULL, isert_conn); + isert_cq_rx_comp_err(isert_conn); } } @@ -2163,32 +2248,29 @@ static int isert_fast_reg_mr(struct fast_reg_descriptor *fr_desc, - struct isert_cmd *isert_cmd, struct isert_conn *isert_conn, - struct ib_sge *ib_sge, u32 offset, unsigned int data_len) + struct isert_conn *isert_conn, struct scatterlist *sg_start, + struct ib_sge *ib_sge, u32 sg_nents, u32 offset, + unsigned int data_len) { - struct iscsi_cmd *cmd = isert_cmd->iscsi_cmd; struct ib_device *ib_dev = isert_conn->conn_cm_id->device; - struct scatterlist *sg_start; - u32 sg_off, page_off; struct ib_send_wr fr_wr, inv_wr; struct ib_send_wr *bad_wr, *wr = NULL; + int ret, pagelist_len; + u32 page_off; u8 key; - int ret, sg_nents, pagelist_len; - sg_off = offset / PAGE_SIZE; - sg_start = &cmd->se_cmd.t_data_sg[sg_off]; - sg_nents = min_t(unsigned int, cmd->se_cmd.t_data_nents - sg_off, - ISCSI_ISER_SG_TABLESIZE); + sg_nents = min_t(unsigned int, sg_nents, ISCSI_ISER_SG_TABLESIZE); page_off = offset % PAGE_SIZE; - pr_debug("Cmd: %p use fr_desc %p sg_nents %d sg_off %d offset %u\n", - isert_cmd, fr_desc, sg_nents, sg_off, offset); + pr_debug("Use fr_desc %p sg_nents %d offset %u\n", + fr_desc, sg_nents, offset); pagelist_len = isert_map_fr_pagelist(ib_dev, sg_start, sg_nents, &fr_desc->data_frpl->page_list[0]); if (!fr_desc->valid) { memset(&inv_wr, 0, sizeof(inv_wr)); + inv_wr.wr_id = ISER_FASTREG_LI_WRID; inv_wr.opcode = IB_WR_LOCAL_INV; inv_wr.ex.invalidate_rkey = fr_desc->data_mr->rkey; wr = &inv_wr; @@ -2199,6 +2281,7 @@ /* Prepare FASTREG WR */ memset(&fr_wr, 0, sizeof(fr_wr)); + fr_wr.wr_id = ISER_FASTREG_LI_WRID; fr_wr.opcode = IB_WR_FAST_REG_MR; fr_wr.wr.fast_reg.iova_start = fr_desc->data_frpl->page_list[0] + page_off; @@ -2232,8 +2315,8 @@ } static int -isert_reg_rdma_frwr(struct iscsi_conn *conn, struct iscsi_cmd *cmd, - struct isert_rdma_wr *wr) +isert_reg_rdma(struct iscsi_conn *conn, struct iscsi_cmd *cmd, + struct isert_rdma_wr *wr) { struct se_cmd *se_cmd = &cmd->se_cmd; struct isert_cmd *isert_cmd = iscsit_priv_cmd(cmd); @@ -2251,9 +2334,9 @@ if (wr->iser_ib_op == ISER_IB_RDMA_WRITE) { data_left = se_cmd->data_length; } else { - sg_off = cmd->write_data_done / PAGE_SIZE; - data_left = se_cmd->data_length - cmd->write_data_done; offset = cmd->write_data_done; + sg_off = offset / PAGE_SIZE; + data_left = se_cmd->data_length - cmd->write_data_done; isert_cmd->tx_desc.isert_cmd = isert_cmd; } @@ -2311,16 +2394,16 @@ wr->fr_desc = NULL; } else { spin_lock_irqsave(&isert_conn->conn_lock, flags); - fr_desc = list_first_entry(&isert_conn->conn_frwr_pool, + fr_desc = list_first_entry(&isert_conn->conn_fr_pool, struct fast_reg_descriptor, list); list_del(&fr_desc->list); spin_unlock_irqrestore(&isert_conn->conn_lock, flags); wr->fr_desc = fr_desc; - ret = isert_fast_reg_mr(fr_desc, isert_cmd, isert_conn, - ib_sge, offset, data_len); + ret = isert_fast_reg_mr(fr_desc, isert_conn, sg_start, + ib_sge, sg_nents, offset, data_len); if (ret) { - list_add_tail(&fr_desc->list, &isert_conn->conn_frwr_pool); + list_add_tail(&fr_desc->list, &isert_conn->conn_fr_pool); goto unmap_sg; } } @@ -2364,12 +2447,12 @@ isert_init_send_wr(isert_conn, isert_cmd, &isert_cmd->tx_desc.send_wr, true); - atomic_inc(&isert_conn->post_send_buf_count); + atomic_add(wr->send_wr_num + 1, &isert_conn->post_send_buf_count); rc = ib_post_send(isert_conn->conn_qp, wr->send_wr, &wr_failed); if (rc) { pr_warn("ib_post_send() failed for IB_WR_RDMA_WRITE\n"); - atomic_dec(&isert_conn->post_send_buf_count); + atomic_sub(wr->send_wr_num + 1, &isert_conn->post_send_buf_count); } pr_debug("Cmd: %p posted RDMA_WRITE + Response for iSER Data READ\n", isert_cmd); @@ -2397,12 +2480,12 @@ return rc; } - atomic_inc(&isert_conn->post_send_buf_count); + atomic_add(wr->send_wr_num, &isert_conn->post_send_buf_count); rc = ib_post_send(isert_conn->conn_qp, wr->send_wr, &wr_failed); if (rc) { pr_warn("ib_post_send() failed for IB_WR_RDMA_READ\n"); - atomic_dec(&isert_conn->post_send_buf_count); + atomic_sub(wr->send_wr_num, &isert_conn->post_send_buf_count); } pr_debug("Cmd: %p posted RDMA_READ memory for ISER Data WRITE\n", isert_cmd); @@ -2689,22 +2772,11 @@ kfree(isert_np); } -static int isert_check_state(struct isert_conn *isert_conn, int state) -{ - int ret; - - mutex_lock(&isert_conn->conn_mutex); - ret = (isert_conn->state == state); - mutex_unlock(&isert_conn->conn_mutex); - - return ret; -} - -static void isert_free_conn(struct iscsi_conn *conn) +static void isert_wait_conn(struct iscsi_conn *conn) { struct isert_conn *isert_conn = conn->context; - pr_debug("isert_free_conn: Starting \n"); + pr_debug("isert_wait_conn: Starting \n"); /* * Decrement post_send_buf_count for special case when called * from isert_do_control_comp() -> iscsit_logout_post_handler() @@ -2714,38 +2786,29 @@ atomic_dec(&isert_conn->post_send_buf_count); if (isert_conn->conn_cm_id && isert_conn->state != ISER_CONN_DOWN) { - pr_debug("Calling rdma_disconnect from isert_free_conn\n"); + pr_debug("Calling rdma_disconnect from isert_wait_conn\n"); rdma_disconnect(isert_conn->conn_cm_id); } /* * Only wait for conn_wait_comp_err if the isert_conn made it * into full feature phase.. */ - if (isert_conn->state == ISER_CONN_UP) { - pr_debug("isert_free_conn: Before wait_event comp_err %d\n", - isert_conn->state); - mutex_unlock(&isert_conn->conn_mutex); - - wait_event(isert_conn->conn_wait_comp_err, - (isert_check_state(isert_conn, ISER_CONN_TERMINATING))); - - wait_event(isert_conn->conn_wait, - (isert_check_state(isert_conn, ISER_CONN_DOWN))); - - isert_put_conn(isert_conn); - return; - } if (isert_conn->state == ISER_CONN_INIT) { mutex_unlock(&isert_conn->conn_mutex); - isert_put_conn(isert_conn); return; } - pr_debug("isert_free_conn: wait_event conn_wait %d\n", - isert_conn->state); + if (isert_conn->state == ISER_CONN_UP) + isert_conn->state = ISER_CONN_TERMINATING; mutex_unlock(&isert_conn->conn_mutex); - wait_event(isert_conn->conn_wait, - (isert_check_state(isert_conn, ISER_CONN_DOWN))); + wait_for_completion(&isert_conn->conn_wait_comp_err); + + wait_for_completion(&isert_conn->conn_wait); +} + +static void isert_free_conn(struct iscsi_conn *conn) +{ + struct isert_conn *isert_conn = conn->context; isert_put_conn(isert_conn); } @@ -2758,6 +2821,7 @@ .iscsit_setup_np = isert_setup_np, .iscsit_accept_np = isert_accept_np, .iscsit_free_np = isert_free_np, + .iscsit_wait_conn = isert_wait_conn, .iscsit_free_conn = isert_free_conn, .iscsit_get_login_rx = isert_get_login_rx, .iscsit_put_login_tx = isert_put_login_tx, --- linux-3.13.0.orig/drivers/infiniband/ulp/isert/ib_isert.h +++ linux-3.13.0/drivers/infiniband/ulp/isert/ib_isert.h @@ -6,6 +6,7 @@ #define ISERT_RDMA_LISTEN_BACKLOG 10 #define ISCSI_ISER_SG_TABLESIZE 256 +#define ISER_FASTREG_LI_WRID 0xffffffffffffffffULL enum isert_desc_type { ISCSI_TX_CONTROL, @@ -45,6 +46,7 @@ struct isert_cmd *isert_cmd; struct llist_node *comp_llnode_batch; struct llist_node comp_llnode; + bool llnode_active; struct ib_send_wr send_wr; } __packed; @@ -116,17 +118,16 @@ struct isert_device *conn_device; struct work_struct conn_logout_work; struct mutex conn_mutex; - wait_queue_head_t conn_wait; - wait_queue_head_t conn_wait_comp_err; + struct completion conn_wait; + struct completion conn_wait_comp_err; struct kref conn_kref; - struct list_head conn_frwr_pool; - int conn_frwr_pool_size; - /* lock to protect frwr_pool */ + struct list_head conn_fr_pool; + int conn_fr_pool_size; + /* lock to protect fastreg pool */ spinlock_t conn_lock; #define ISERT_COMP_BATCH_COUNT 8 int conn_comp_batch; struct llist_head conn_comp_llist; - struct mutex conn_comp_mutex; }; #define ISERT_MAX_CQ 64 @@ -139,13 +140,11 @@ }; struct isert_device { - int use_frwr; + int use_fastreg; int cqs_used; int refcount; int cq_active_qps[ISERT_MAX_CQ]; struct ib_device *ib_device; - struct ib_pd *dev_pd; - struct ib_mr *dev_mr; struct ib_cq *dev_rx_cq[ISERT_MAX_CQ]; struct ib_cq *dev_tx_cq[ISERT_MAX_CQ]; struct isert_cq_desc *cq_desc; --- linux-3.13.0.orig/drivers/infiniband/ulp/srpt/ib_srpt.c +++ linux-3.13.0/drivers/infiniband/ulp/srpt/ib_srpt.c @@ -1078,6 +1078,7 @@ static int srpt_map_sg_to_ib_sge(struct srpt_rdma_ch *ch, struct srpt_send_ioctx *ioctx) { + struct ib_device *dev = ch->sport->sdev->device; struct se_cmd *cmd; struct scatterlist *sg, *sg_orig; int sg_cnt; @@ -1124,7 +1125,7 @@ db = ioctx->rbufs; tsize = cmd->data_length; - dma_len = sg_dma_len(&sg[0]); + dma_len = ib_sg_dma_len(dev, &sg[0]); riu = ioctx->rdma_ius; /* @@ -1155,7 +1156,8 @@ ++j; if (j < count) { sg = sg_next(sg); - dma_len = sg_dma_len(sg); + dma_len = ib_sg_dma_len( + dev, sg); } } } else { @@ -1192,8 +1194,8 @@ tsize = cmd->data_length; riu = ioctx->rdma_ius; sg = sg_orig; - dma_len = sg_dma_len(&sg[0]); - dma_addr = sg_dma_address(&sg[0]); + dma_len = ib_sg_dma_len(dev, &sg[0]); + dma_addr = ib_sg_dma_address(dev, &sg[0]); /* this second loop is really mapped sg_addres to rdma_iu->ib_sge */ for (i = 0, j = 0; @@ -1216,8 +1218,10 @@ ++j; if (j < count) { sg = sg_next(sg); - dma_len = sg_dma_len(sg); - dma_addr = sg_dma_address(sg); + dma_len = ib_sg_dma_len( + dev, sg); + dma_addr = ib_sg_dma_address( + dev, sg); } } } else { @@ -3666,9 +3670,9 @@ unsigned long val; int ret; - ret = strict_strtoul(page, 0, &val); + ret = kstrtoul(page, 0, &val); if (ret < 0) { - pr_err("strict_strtoul() failed with ret: %d\n", ret); + pr_err("kstrtoul() failed with ret: %d\n", ret); return -EINVAL; } if (val > MAX_SRPT_RDMA_SIZE) { @@ -3706,9 +3710,9 @@ unsigned long val; int ret; - ret = strict_strtoul(page, 0, &val); + ret = kstrtoul(page, 0, &val); if (ret < 0) { - pr_err("strict_strtoul() failed with ret: %d\n", ret); + pr_err("kstrtoul() failed with ret: %d\n", ret); return -EINVAL; } if (val > MAX_SRPT_RSP_SIZE) { @@ -3746,9 +3750,9 @@ unsigned long val; int ret; - ret = strict_strtoul(page, 0, &val); + ret = kstrtoul(page, 0, &val); if (ret < 0) { - pr_err("strict_strtoul() failed with ret: %d\n", ret); + pr_err("kstrtoul() failed with ret: %d\n", ret); return -EINVAL; } if (val > MAX_SRPT_SRQ_SIZE) { @@ -3793,7 +3797,7 @@ unsigned long tmp; int ret; - ret = strict_strtoul(page, 0, &tmp); + ret = kstrtoul(page, 0, &tmp); if (ret < 0) { printk(KERN_ERR "Unable to extract srpt_tpg_store_enable\n"); return -EINVAL; --- linux-3.13.0.orig/drivers/input/misc/arizona-haptics.c +++ linux-3.13.0/drivers/input/misc/arizona-haptics.c @@ -77,16 +77,14 @@ return; } + mutex_unlock(dapm_mutex); + ret = snd_soc_dapm_sync(arizona->dapm); if (ret != 0) { dev_err(arizona->dev, "Failed to sync DAPM: %d\n", ret); - mutex_unlock(dapm_mutex); return; } - - mutex_unlock(dapm_mutex); - } else { /* This disable sequence will be a noop if already enabled */ mutex_lock_nested(dapm_mutex, SND_SOC_DAPM_CLASS_RUNTIME); @@ -99,16 +97,15 @@ return; } + mutex_unlock(dapm_mutex); + ret = snd_soc_dapm_sync(arizona->dapm); if (ret != 0) { dev_err(arizona->dev, "Failed to sync DAPM: %d\n", ret); - mutex_unlock(dapm_mutex); return; } - mutex_unlock(dapm_mutex); - ret = regmap_update_bits(arizona->regmap, ARIZONA_HAPTICS_CONTROL_1, ARIZONA_HAP_CTRL_MASK, --- linux-3.13.0.orig/drivers/input/misc/xen-kbdfront.c +++ linux-3.13.0/drivers/input/misc/xen-kbdfront.c @@ -29,6 +29,7 @@ #include #include #include +#include struct xenkbd_info { struct input_dev *kbd; @@ -380,6 +381,9 @@ if (xen_initial_domain()) return -ENODEV; + if (!xen_has_pv_devices()) + return -ENODEV; + return xenbus_register_frontend(&xenkbd_driver); } --- linux-3.13.0.orig/drivers/input/mouse/alps.c +++ linux-3.13.0/drivers/input/mouse/alps.c @@ -277,6 +277,57 @@ } /* + * Process bitmap data for V5 protocols. Return value is null. + * + * The bitmaps don't have enough data to track fingers, so this function + * only generates points representing a bounding box of at most two contacts. + * These two points are returned in x1, y1, x2, and y2. + */ +static void alps_process_bitmap_dolphin(struct alps_data *priv, + struct alps_fields *fields, + int *x1, int *y1, int *x2, int *y2) +{ + int box_middle_x, box_middle_y; + unsigned int x_map, y_map; + unsigned char start_bit, end_bit; + unsigned char x_msb, x_lsb, y_msb, y_lsb; + + x_map = fields->x_map; + y_map = fields->y_map; + + if (!x_map || !y_map) + return; + + /* Get Most-significant and Least-significant bit */ + x_msb = fls(x_map); + x_lsb = ffs(x_map); + y_msb = fls(y_map); + y_lsb = ffs(y_map); + + /* Most-significant bit should never exceed max sensor line number */ + if (x_msb > priv->x_bits || y_msb > priv->y_bits) + return; + + *x1 = *y1 = *x2 = *y2 = 0; + + if (fields->fingers > 1) { + start_bit = priv->x_bits - x_msb; + end_bit = priv->x_bits - x_lsb; + box_middle_x = (priv->x_max * (start_bit + end_bit)) / + (2 * (priv->x_bits - 1)); + + start_bit = y_lsb - 1; + end_bit = y_msb - 1; + box_middle_y = (priv->y_max * (start_bit + end_bit)) / + (2 * (priv->y_bits - 1)); + *x1 = fields->x; + *y1 = fields->y; + *x2 = 2 * box_middle_x - *x1; + *y2 = 2 * box_middle_y - *y1; + } +} + +/* * Process bitmap data from v3 and v4 protocols. Returns the number of * fingers detected. A return value of 0 means at least one of the * bitmaps was empty. @@ -481,7 +532,8 @@ f->ts_middle = !!(p[3] & 0x40); } -static void alps_decode_pinnacle(struct alps_fields *f, unsigned char *p) +static void alps_decode_pinnacle(struct alps_fields *f, unsigned char *p, + struct psmouse *psmouse) { f->first_mp = !!(p[4] & 0x40); f->is_mp = !!(p[0] & 0x40); @@ -502,48 +554,61 @@ alps_decode_buttons_v3(f, p); } -static void alps_decode_rushmore(struct alps_fields *f, unsigned char *p) +static void alps_decode_rushmore(struct alps_fields *f, unsigned char *p, + struct psmouse *psmouse) { - alps_decode_pinnacle(f, p); + alps_decode_pinnacle(f, p, psmouse); f->x_map |= (p[5] & 0x10) << 11; f->y_map |= (p[5] & 0x20) << 6; } -static void alps_decode_dolphin(struct alps_fields *f, unsigned char *p) +static void alps_decode_dolphin(struct alps_fields *f, unsigned char *p, + struct psmouse *psmouse) { + u64 palm_data = 0; + struct alps_data *priv = psmouse->private; + f->first_mp = !!(p[0] & 0x02); f->is_mp = !!(p[0] & 0x20); - f->fingers = ((p[0] & 0x6) >> 1 | + if (!f->is_mp) { + f->x = ((p[1] & 0x7f) | ((p[4] & 0x0f) << 7)); + f->y = ((p[2] & 0x7f) | ((p[4] & 0xf0) << 3)); + f->z = (p[0] & 4) ? 0 : p[5] & 0x7f; + alps_decode_buttons_v3(f, p); + } else { + f->fingers = ((p[0] & 0x6) >> 1 | (p[0] & 0x10) >> 2); - f->x_map = ((p[2] & 0x60) >> 5) | - ((p[4] & 0x7f) << 2) | - ((p[5] & 0x7f) << 9) | - ((p[3] & 0x07) << 16) | - ((p[3] & 0x70) << 15) | - ((p[0] & 0x01) << 22); - f->y_map = (p[1] & 0x7f) | - ((p[2] & 0x1f) << 7); - - f->x = ((p[1] & 0x7f) | ((p[4] & 0x0f) << 7)); - f->y = ((p[2] & 0x7f) | ((p[4] & 0xf0) << 3)); - f->z = (p[0] & 4) ? 0 : p[5] & 0x7f; - alps_decode_buttons_v3(f, p); + palm_data = (p[1] & 0x7f) | + ((p[2] & 0x7f) << 7) | + ((p[4] & 0x7f) << 14) | + ((p[5] & 0x7f) << 21) | + ((p[3] & 0x07) << 28) | + (((u64)p[3] & 0x70) << 27) | + (((u64)p[0] & 0x01) << 34); + + /* Y-profile is stored in P(0) to p(n-1), n = y_bits; */ + f->y_map = palm_data & (BIT(priv->y_bits) - 1); + + /* X-profile is stored in p(n) to p(n+m-1), m = x_bits; */ + f->x_map = (palm_data >> priv->y_bits) & + (BIT(priv->x_bits) - 1); + } } -static void alps_process_touchpad_packet_v3(struct psmouse *psmouse) +static void alps_process_touchpad_packet_v3_v5(struct psmouse *psmouse) { struct alps_data *priv = psmouse->private; unsigned char *packet = psmouse->packet; struct input_dev *dev = psmouse->dev; struct input_dev *dev2 = priv->dev2; int x1 = 0, y1 = 0, x2 = 0, y2 = 0; - int fingers = 0, bmap_fingers; - struct alps_fields f; + int fingers = 0, bmap_fn; + struct alps_fields f = {0}; - priv->decode_fields(&f, packet); + priv->decode_fields(&f, packet, psmouse); /* * There's no single feature of touchpad position and bitmap packets @@ -560,19 +625,38 @@ */ if (f.is_mp) { fingers = f.fingers; - bmap_fingers = alps_process_bitmap(priv, - f.x_map, f.y_map, - &x1, &y1, &x2, &y2); - - /* - * We shouldn't report more than one finger if - * we don't have two coordinates. - */ - if (fingers > 1 && bmap_fingers < 2) - fingers = bmap_fingers; - - /* Now process position packet */ - priv->decode_fields(&f, priv->multi_data); + if (priv->proto_version == ALPS_PROTO_V3) { + bmap_fn = alps_process_bitmap(priv, f.x_map, + f.y_map, &x1, &y1, + &x2, &y2); + + /* + * We shouldn't report more than one finger if + * we don't have two coordinates. + */ + if (fingers > 1 && bmap_fn < 2) + fingers = bmap_fn; + + /* Now process position packet */ + priv->decode_fields(&f, priv->multi_data, + psmouse); + } else { + /* + * Because Dolphin uses position packet's + * coordinate data as Pt1 and uses it to + * calculate Pt2, so we need to do position + * packet decode first. + */ + priv->decode_fields(&f, priv->multi_data, + psmouse); + + /* + * Since Dolphin's finger number is reliable, + * there is no need to compare with bmap_fn. + */ + alps_process_bitmap_dolphin(priv, &f, &x1, &y1, + &x2, &y2); + } } else { priv->multi_packet = 0; } @@ -662,7 +746,7 @@ return; } - alps_process_touchpad_packet_v3(psmouse); + alps_process_touchpad_packet_v3_v5(psmouse); } static void alps_process_packet_v6(struct psmouse *psmouse) @@ -1709,6 +1793,52 @@ return -1; } +static int alps_dolphin_get_device_area(struct psmouse *psmouse, + struct alps_data *priv) +{ + struct ps2dev *ps2dev = &psmouse->ps2dev; + unsigned char param[4] = {0}; + int num_x_electrode, num_y_electrode; + + if (alps_enter_command_mode(psmouse)) + return -1; + + param[0] = 0x0a; + if (ps2_command(ps2dev, NULL, PSMOUSE_CMD_RESET_WRAP) || + ps2_command(ps2dev, NULL, PSMOUSE_CMD_SETPOLL) || + ps2_command(ps2dev, NULL, PSMOUSE_CMD_SETPOLL) || + ps2_command(ps2dev, ¶m[0], PSMOUSE_CMD_SETRATE) || + ps2_command(ps2dev, ¶m[0], PSMOUSE_CMD_SETRATE)) + return -1; + + if (ps2_command(ps2dev, param, PSMOUSE_CMD_GETINFO)) + return -1; + + /* + * Dolphin's sensor line number is not fixed. It can be calculated + * by adding the device's register value with DOLPHIN_PROFILE_X/YOFFSET. + * Further more, we can get device's x_max and y_max by multiplying + * sensor line number with DOLPHIN_COUNT_PER_ELECTRODE. + * + * e.g. When we get register's sensor_x = 11 & sensor_y = 8, + * real sensor line number X = 11 + 8 = 19, and + * real sensor line number Y = 8 + 1 = 9. + * So, x_max = (19 - 1) * 64 = 1152, and + * y_max = (9 - 1) * 64 = 512. + */ + num_x_electrode = DOLPHIN_PROFILE_XOFFSET + (param[2] & 0x0F); + num_y_electrode = DOLPHIN_PROFILE_YOFFSET + ((param[2] >> 4) & 0x0F); + priv->x_bits = num_x_electrode; + priv->y_bits = num_y_electrode; + priv->x_max = (num_x_electrode - 1) * DOLPHIN_COUNT_PER_ELECTRODE; + priv->y_max = (num_y_electrode - 1) * DOLPHIN_COUNT_PER_ELECTRODE; + + if (alps_exit_command_mode(psmouse)) + return -1; + + return 0; +} + static int alps_hw_init_dolphin_v1(struct psmouse *psmouse) { struct ps2dev *ps2dev = &psmouse->ps2dev; @@ -1763,13 +1893,13 @@ break; case ALPS_PROTO_V5: priv->hw_init = alps_hw_init_dolphin_v1; - priv->process_packet = alps_process_packet_v3; + priv->process_packet = alps_process_touchpad_packet_v3_v5; priv->decode_fields = alps_decode_dolphin; priv->set_abs_params = alps_set_abs_params_mt; priv->nibble_commands = alps_v3_nibble_commands; priv->addr_command = PSMOUSE_CMD_RESET_WRAP; priv->byte0 = 0xc8; - priv->mask0 = 0xc8; + priv->mask0 = 0xd8; priv->flags = 0; priv->x_max = 1360; priv->y_max = 660; @@ -1845,11 +1975,13 @@ if (alps_match_table(psmouse, priv, e7, ec) == 0) { return 0; } else if (e7[0] == 0x73 && e7[1] == 0x03 && e7[2] == 0x50 && - ec[0] == 0x73 && ec[1] == 0x01) { + ec[0] == 0x73 && (ec[1] == 0x01 || ec[1] == 0x02)) { priv->proto_version = ALPS_PROTO_V5; alps_set_defaults(priv); - - return 0; + if (alps_dolphin_get_device_area(psmouse, priv)) + return -EIO; + else + return 0; } else if (ec[0] == 0x88 && ec[1] == 0x08) { priv->proto_version = ALPS_PROTO_V3; alps_set_defaults(priv); --- linux-3.13.0.orig/drivers/input/mouse/alps.h +++ linux-3.13.0/drivers/input/mouse/alps.h @@ -19,6 +19,10 @@ #define ALPS_PROTO_V5 5 #define ALPS_PROTO_V6 6 +#define DOLPHIN_COUNT_PER_ELECTRODE 64 +#define DOLPHIN_PROFILE_XOFFSET 8 /* x-electrode offset */ +#define DOLPHIN_PROFILE_YOFFSET 1 /* y-electrode offset */ + /** * struct alps_model_info - touchpad ID table * @signature: E7 response string to match. @@ -146,7 +150,8 @@ int (*hw_init)(struct psmouse *psmouse); void (*process_packet)(struct psmouse *psmouse); - void (*decode_fields)(struct alps_fields *f, unsigned char *p); + void (*decode_fields)(struct alps_fields *f, unsigned char *p, + struct psmouse *psmouse); void (*set_abs_params)(struct alps_data *priv, struct input_dev *dev1); int prev_fin; --- linux-3.13.0.orig/drivers/input/mouse/cypress_ps2.c +++ linux-3.13.0/drivers/input/mouse/cypress_ps2.c @@ -391,7 +391,9 @@ if (ret < 0) return ret; +#if ( CYPRESS_SIMULATED_MT != 1 ) __set_bit(INPUT_PROP_SEMI_MT, input->propbit); +#endif input_abs_set_res(input, ABS_X, cytp->tp_res_x); input_abs_set_res(input, ABS_Y, cytp->tp_res_y); @@ -410,7 +412,6 @@ __clear_bit(REL_X, input->relbit); __clear_bit(REL_Y, input->relbit); - __set_bit(INPUT_PROP_BUTTONPAD, input->propbit); __set_bit(EV_KEY, input->evbit); __set_bit(BTN_LEFT, input->keybit); __set_bit(BTN_RIGHT, input->keybit); @@ -480,6 +481,22 @@ ((packet[5] & 0x0f) << 8) | packet[7]; if (cytp->mode & CYTP_BIT_ABS_PRESSURE) report_data->contacts[1].z = report_data->contacts[0].z; +#if ( CYPRESS_SIMULATED_MT == 1 ) + /* simulate contact positions for >2 fingers */ + if ( report_data->contact_cnt >= 3 ) { + int i; + for ( i=1; icontact_cnt; i++ ) { + report_data->contacts[i].x = + report_data->contacts[0].x + + 100*(i)*((i%2)?-1:1); + report_data->contacts[i].y = + report_data->contacts[0].y; + if (cytp->mode & CYTP_BIT_ABS_PRESSURE) + report_data->contacts[i].z = + report_data->contacts[0].z; + } + } +#endif } report_data->left = (header_byte & BTN_LEFT_BIT) ? 1 : 0; --- linux-3.13.0.orig/drivers/input/mouse/cypress_ps2.h +++ linux-3.13.0/drivers/input/mouse/cypress_ps2.h @@ -130,7 +130,18 @@ #define RESP_REMOTE_BIT 0x40 #define RESP_SMBUS_BIT 0x80 -#define CYTP_MAX_MT_SLOTS 2 +/* + * CYPRESS_SIMULATED_MT + * set to 1 for simulated multitouch (up to 5 contact points) + * set to 0 for SEMI_MT (only 2 corner points, and count of fingers) + */ +#define CYPRESS_SIMULATED_MT 1 + +#if ( CYPRESS_SIMULATED_MT == 1 ) +# define CYTP_MAX_MT_SLOTS 5 +#else +# define CYTP_MAX_MT_SLOTS 2 +#endif struct cytp_contact { int x; --- linux-3.13.0.orig/drivers/input/mouse/elantech.c +++ linux-3.13.0/drivers/input/mouse/elantech.c @@ -486,6 +486,7 @@ unsigned char *packet = psmouse->packet; input_report_key(dev, BTN_LEFT, packet[0] & 0x01); + input_report_key(dev, BTN_RIGHT, packet[0] & 0x02); input_mt_report_pointer_emulation(dev, true); input_sync(dev); } @@ -984,6 +985,44 @@ } /* + * Advertise INPUT_PROP_BUTTONPAD for clickpads. The testing of bit 12 in + * fw_version for this is based on the following fw_version & caps table: + * + * Laptop-model: fw_version: caps: buttons: + * Acer S3 0x461f00 10, 13, 0e clickpad + * Acer S7-392 0x581f01 50, 17, 0d clickpad + * Acer V5-131 0x461f02 01, 16, 0c clickpad + * Acer V5-551 0x461f00 ? clickpad + * Asus K53SV 0x450f01 78, 15, 0c 2 hw buttons + * Asus G46VW 0x460f02 00, 18, 0c 2 hw buttons + * Asus G750JX 0x360f00 00, 16, 0c 2 hw buttons + * Asus UX31 0x361f00 20, 15, 0e clickpad + * Asus UX32VD 0x361f02 00, 15, 0e clickpad + * Avatar AVIU-145A2 0x361f00 ? clickpad + * Gigabyte U2442 0x450f01 58, 17, 0c 2 hw buttons + * Lenovo L430 0x350f02 b9, 15, 0c 2 hw buttons (*) + * Samsung NF210 0x150b00 78, 14, 0a 2 hw buttons + * Samsung NP770Z5E 0x575f01 10, 15, 0f clickpad + * Samsung NP700Z5B 0x361f06 21, 15, 0f clickpad + * Samsung NP900X3E-A02 0x575f03 ? clickpad + * Samsung NP-QX410 0x851b00 19, 14, 0c clickpad + * Samsung RC512 0x450f00 08, 15, 0c 2 hw buttons + * Samsung RF710 0x450f00 ? 2 hw buttons + * System76 Pangolin 0x250f01 ? 2 hw buttons + * (*) + 3 trackpoint buttons + */ +static void elantech_set_buttonpad_prop(struct psmouse *psmouse) +{ + struct input_dev *dev = psmouse->dev; + struct elantech_data *etd = psmouse->private; + + if (etd->fw_version & 0x001000) { + __set_bit(INPUT_PROP_BUTTONPAD, dev->propbit); + __clear_bit(BTN_RIGHT, dev->keybit); + } +} + +/* * Set the appropriate event bits for the input subsystem */ static int elantech_set_input_params(struct psmouse *psmouse) @@ -1026,6 +1065,8 @@ __set_bit(INPUT_PROP_SEMI_MT, dev->propbit); /* fall through */ case 3: + if (etd->hw_version == 3) + elantech_set_buttonpad_prop(psmouse); input_set_abs_params(dev, ABS_X, x_min, x_max, 0, 0); input_set_abs_params(dev, ABS_Y, y_min, y_max, 0, 0); if (etd->reports_pressure) { @@ -1047,9 +1088,7 @@ */ psmouse_warn(psmouse, "couldn't query resolution data.\n"); } - /* v4 is clickpad, with only one button. */ - __set_bit(INPUT_PROP_BUTTONPAD, dev->propbit); - __clear_bit(BTN_RIGHT, dev->keybit); + elantech_set_buttonpad_prop(psmouse); __set_bit(BTN_TOOL_QUADTAP, dev->keybit); /* For X to recognize me as touchpad. */ input_set_abs_params(dev, ABS_X, x_min, x_max, 0, 0); --- linux-3.13.0.orig/drivers/input/mouse/synaptics.c +++ linux-3.13.0/drivers/input/mouse/synaptics.c @@ -265,11 +265,22 @@ * Read touchpad resolution and maximum reported coordinates * Resolution is left zero if touchpad does not support the query */ + +static const int *quirk_min_max; + static int synaptics_resolution(struct psmouse *psmouse) { struct synaptics_data *priv = psmouse->private; unsigned char resp[3]; + if (quirk_min_max) { + priv->x_min = quirk_min_max[0]; + priv->x_max = quirk_min_max[1]; + priv->y_min = quirk_min_max[2]; + priv->y_max = quirk_min_max[3]; + return 0; + } + if (SYN_ID_MAJOR(priv->identity) < 4) return 0; @@ -1317,7 +1328,9 @@ /* Clickpads report only left button */ __clear_bit(BTN_RIGHT, dev->keybit); __clear_bit(BTN_MIDDLE, dev->keybit); - } + } else if (SYN_CAP_CLICKPAD2BTN(priv->ext_cap_0c) || + SYN_CAP_CLICKPAD2BTN2(priv->ext_cap_0c)) + __set_bit(INPUT_PROP_BUTTONPAD, dev->propbit); } static ssize_t synaptics_show_disable_gesture(struct psmouse *psmouse, @@ -1485,10 +1498,54 @@ { } }; +static const struct dmi_system_id min_max_dmi_table[] __initconst = { +#if defined(CONFIG_DMI) + { + /* Lenovo ThinkPad Helix */ + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad Helix"), + }, + .driver_data = (int []){1024, 5052, 2258, 4832}, + }, + { + /* Lenovo ThinkPad X240 */ + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad X240"), + }, + .driver_data = (int []){1232, 5710, 1156, 4696}, + }, + { + /* Lenovo ThinkPad T440s */ + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T440"), + }, + .driver_data = (int []){1024, 5112, 2024, 4832}, + }, + { + /* Lenovo ThinkPad T540p */ + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T540"), + }, + .driver_data = (int []){1024, 5056, 2058, 4832}, + }, +#endif + { } +}; + void __init synaptics_module_init(void) { + const struct dmi_system_id *min_max_dmi; + impaired_toshiba_kbc = dmi_check_system(toshiba_dmi_table); broken_olpc_ec = dmi_check_system(olpc_dmi_table); + + min_max_dmi = dmi_first_match(min_max_dmi_table); + if (min_max_dmi) + quirk_min_max = min_max_dmi->driver_data; } static int __synaptics_init(struct psmouse *psmouse, bool absolute_mode) --- linux-3.13.0.orig/drivers/input/mouse/synaptics.h +++ linux-3.13.0/drivers/input/mouse/synaptics.h @@ -81,6 +81,7 @@ */ #define SYN_CAP_CLICKPAD(ex0c) ((ex0c) & 0x100000) /* 1-button ClickPad */ #define SYN_CAP_CLICKPAD2BTN(ex0c) ((ex0c) & 0x000100) /* 2-button ClickPad */ +#define SYN_CAP_CLICKPAD2BTN2(ex0c) ((ex0c) & 0x200000) /* 2-button ClickPad */ #define SYN_CAP_MAX_DIMENSIONS(ex0c) ((ex0c) & 0x020000) #define SYN_CAP_MIN_DIMENSIONS(ex0c) ((ex0c) & 0x002000) #define SYN_CAP_ADV_GESTURE(ex0c) ((ex0c) & 0x080000) --- linux-3.13.0.orig/drivers/input/mousedev.c +++ linux-3.13.0/drivers/input/mousedev.c @@ -67,7 +67,6 @@ struct device dev; struct cdev cdev; bool exist; - bool is_mixdev; struct list_head mixdev_node; bool opened_by_mixdev; @@ -77,6 +76,9 @@ int old_x[4], old_y[4]; int frac_dx, frac_dy; unsigned long touch; + + int (*open_device)(struct mousedev *mousedev); + void (*close_device)(struct mousedev *mousedev); }; enum mousedev_emul { @@ -116,9 +118,6 @@ static struct mousedev *mousedev_mix; static LIST_HEAD(mousedev_mix_list); -static void mixdev_open_devices(void); -static void mixdev_close_devices(void); - #define fx(i) (mousedev->old_x[(mousedev->pkt_count - (i)) & 03]) #define fy(i) (mousedev->old_y[(mousedev->pkt_count - (i)) & 03]) @@ -428,9 +427,7 @@ if (retval) return retval; - if (mousedev->is_mixdev) - mixdev_open_devices(); - else if (!mousedev->exist) + if (!mousedev->exist) retval = -ENODEV; else if (!mousedev->open++) { retval = input_open_device(&mousedev->handle); @@ -446,9 +443,7 @@ { mutex_lock(&mousedev->mutex); - if (mousedev->is_mixdev) - mixdev_close_devices(); - else if (mousedev->exist && !--mousedev->open) + if (mousedev->exist && !--mousedev->open) input_close_device(&mousedev->handle); mutex_unlock(&mousedev->mutex); @@ -459,21 +454,29 @@ * stream. Note that this function is called with mousedev_mix->mutex * held. */ -static void mixdev_open_devices(void) +static int mixdev_open_devices(struct mousedev *mixdev) { - struct mousedev *mousedev; + int error; + + error = mutex_lock_interruptible(&mixdev->mutex); + if (error) + return error; - if (mousedev_mix->open++) - return; + if (!mixdev->open++) { + struct mousedev *mousedev; - list_for_each_entry(mousedev, &mousedev_mix_list, mixdev_node) { - if (!mousedev->opened_by_mixdev) { - if (mousedev_open_device(mousedev)) - continue; + list_for_each_entry(mousedev, &mousedev_mix_list, mixdev_node) { + if (!mousedev->opened_by_mixdev) { + if (mousedev_open_device(mousedev)) + continue; - mousedev->opened_by_mixdev = true; + mousedev->opened_by_mixdev = true; + } } } + + mutex_unlock(&mixdev->mutex); + return 0; } /* @@ -481,19 +484,22 @@ * device. Note that this function is called with mousedev_mix->mutex * held. */ -static void mixdev_close_devices(void) +static void mixdev_close_devices(struct mousedev *mixdev) { - struct mousedev *mousedev; + mutex_lock(&mixdev->mutex); - if (--mousedev_mix->open) - return; + if (!--mixdev->open) { + struct mousedev *mousedev; - list_for_each_entry(mousedev, &mousedev_mix_list, mixdev_node) { - if (mousedev->opened_by_mixdev) { - mousedev->opened_by_mixdev = false; - mousedev_close_device(mousedev); + list_for_each_entry(mousedev, &mousedev_mix_list, mixdev_node) { + if (mousedev->opened_by_mixdev) { + mousedev->opened_by_mixdev = false; + mousedev_close_device(mousedev); + } } } + + mutex_unlock(&mixdev->mutex); } @@ -522,7 +528,7 @@ mousedev_detach_client(mousedev, client); kfree(client); - mousedev_close_device(mousedev); + mousedev->close_device(mousedev); return 0; } @@ -550,7 +556,7 @@ client->mousedev = mousedev; mousedev_attach_client(mousedev, client); - error = mousedev_open_device(mousedev); + error = mousedev->open_device(mousedev); if (error) goto err_free_client; @@ -861,16 +867,21 @@ if (mixdev) { dev_set_name(&mousedev->dev, "mice"); + + mousedev->open_device = mixdev_open_devices; + mousedev->close_device = mixdev_close_devices; } else { int dev_no = minor; /* Normalize device number if it falls into legacy range */ if (dev_no < MOUSEDEV_MINOR_BASE + MOUSEDEV_MINORS) dev_no -= MOUSEDEV_MINOR_BASE; dev_set_name(&mousedev->dev, "mouse%d", dev_no); + + mousedev->open_device = mousedev_open_device; + mousedev->close_device = mousedev_close_device; } mousedev->exist = true; - mousedev->is_mixdev = mixdev; mousedev->handle.dev = input_get_device(dev); mousedev->handle.name = dev_name(&mousedev->dev); mousedev->handle.handler = handler; @@ -919,7 +930,7 @@ device_del(&mousedev->dev); mousedev_cleanup(mousedev); input_free_minor(MINOR(mousedev->dev.devt)); - if (!mousedev->is_mixdev) + if (mousedev != mousedev_mix) input_unregister_handle(&mousedev->handle); put_device(&mousedev->dev); } --- linux-3.13.0.orig/drivers/input/serio/hyperv-keyboard.c +++ linux-3.13.0/drivers/input/serio/hyperv-keyboard.c @@ -160,7 +160,9 @@ if (info & IS_E0) serio_interrupt(kbd_dev->hv_serio, XTKBD_EMUL0, 0); - + if (info & IS_E1) + serio_interrupt(kbd_dev->hv_serio, + XTKBD_EMUL1, 0); scan_code = __le16_to_cpu(ks_msg->make_code); if (info & IS_BREAK) scan_code |= XTKBD_RELEASE; --- linux-3.13.0.orig/drivers/input/tablet/wacom_sys.c +++ linux-3.13.0/drivers/input/tablet/wacom_sys.c @@ -304,7 +304,7 @@ struct usb_device *dev = interface_to_usbdev(intf); char limit = 0; /* result has to be defined as int for some devices */ - int result = 0; + int result = 0, touch_max = 0; int i = 0, usage = WCM_UNDEFINED, finger = 0, pen = 0; unsigned char *report; @@ -351,7 +351,8 @@ if (usage == WCM_DESKTOP) { if (finger) { features->device_type = BTN_TOOL_FINGER; - + /* touch device at least supports one touch point */ + touch_max = 1; switch (features->type) { case TABLETPC2FG: features->pktlen = WACOM_PKGLEN_TPC2FG; @@ -504,6 +505,8 @@ } out: + if (!features->touch_max && touch_max) + features->touch_max = touch_max; result = 0; kfree(report); return result; @@ -1194,12 +1197,15 @@ wacom_wac1->features.device_type = BTN_TOOL_PEN; snprintf(wacom_wac1->name, WACOM_NAME_MAX, "%s (WL) Pen", wacom_wac1->features.name); + wacom_wac1->shared->touch_max = wacom_wac1->features.touch_max; + wacom_wac1->shared->type = wacom_wac1->features.type; error = wacom_register_input(wacom1); if (error) goto fail; /* Touch interface */ - if (wacom_wac1->features.touch_max) { + if (wacom_wac1->features.touch_max || + wacom_wac1->features.type == INTUOSHT) { wacom_wac2->features = *((struct wacom_features *)id->driver_info); wacom_wac2->features.pktlen = WACOM_PKGLEN_BBTOUCH3; @@ -1214,6 +1220,10 @@ error = wacom_register_input(wacom2); if (error) goto fail; + + if (wacom_wac1->features.type == INTUOSHT && + wacom_wac1->features.touch_max) + wacom_wac->shared->touch_input = wacom_wac2->input; } error = wacom_initialize_battery(wacom); @@ -1322,7 +1332,7 @@ * HID descriptor. If this is the touch interface (wMaxPacketSize * of WACOM_PKGLEN_BBTOUCH3), override the table values. */ - if (features->type >= INTUOS5S && features->type <= INTUOSPL) { + if (features->type >= INTUOS5S && features->type <= INTUOSHT) { if (endpoint->wMaxPacketSize == WACOM_PKGLEN_BBTOUCH3) { features->device_type = BTN_TOOL_FINGER; features->pktlen = WACOM_PKGLEN_BBTOUCH3; @@ -1393,6 +1403,11 @@ } } + if (wacom_wac->features.type == INTUOSHT && wacom_wac->features.touch_max) { + if (wacom_wac->features.device_type == BTN_TOOL_FINGER) + wacom_wac->shared->touch_input = wacom_wac->input; + } + return 0; fail5: wacom_destroy_leds(wacom); --- linux-3.13.0.orig/drivers/input/tablet/wacom_wac.c +++ linux-3.13.0/drivers/input/tablet/wacom_wac.c @@ -210,6 +210,62 @@ return 1; } +static int wacom_dtus_irq(struct wacom_wac *wacom) +{ + char *data = wacom->data; + struct input_dev *input = wacom->input; + unsigned short prox, pressure = 0; + + if (data[0] != WACOM_REPORT_DTUS && data[0] != WACOM_REPORT_DTUSPAD) { + dev_dbg(input->dev.parent, + "%s: received unknown report #%d", __func__, data[0]); + return 0; + } else if (data[0] == WACOM_REPORT_DTUSPAD) { + input_report_key(input, BTN_0, (data[1] & 0x01)); + input_report_key(input, BTN_1, (data[1] & 0x02)); + input_report_key(input, BTN_2, (data[1] & 0x04)); + input_report_key(input, BTN_3, (data[1] & 0x08)); + input_report_abs(input, ABS_MISC, + data[1] & 0x0f ? PAD_DEVICE_ID : 0); + /* + * Serial number is required when expresskeys are + * reported through pen interface. + */ + input_event(input, EV_MSC, MSC_SERIAL, 0xf0); + return 1; + } else { + prox = data[1] & 0x80; + if (prox) { + switch ((data[1] >> 3) & 3) { + case 1: /* Rubber */ + wacom->tool[0] = BTN_TOOL_RUBBER; + wacom->id[0] = ERASER_DEVICE_ID; + break; + + case 2: /* Pen */ + wacom->tool[0] = BTN_TOOL_PEN; + wacom->id[0] = STYLUS_DEVICE_ID; + break; + } + } + + input_report_key(input, BTN_STYLUS, data[1] & 0x20); + input_report_key(input, BTN_STYLUS2, data[1] & 0x40); + input_report_abs(input, ABS_X, get_unaligned_be16(&data[3])); + input_report_abs(input, ABS_Y, get_unaligned_be16(&data[5])); + pressure = ((data[1] & 0x03) << 8) | (data[2] & 0xff); + input_report_abs(input, ABS_PRESSURE, pressure); + input_report_key(input, BTN_TOUCH, pressure > 10); + + if (!prox) /* out-prox */ + wacom->id[0] = 0; + input_report_key(input, wacom->tool[0], prox); + input_report_abs(input, ABS_MISC, wacom->id[0]); + input_event(input, EV_MSC, MSC_SERIAL, 1); + return 1; + } +} + static int wacom_graphire_irq(struct wacom_wac *wacom) { struct wacom_features *features = &wacom->features; @@ -331,7 +387,7 @@ /* Enter report */ if ((data[1] & 0xfc) == 0xc0) { - if (features->quirks == WACOM_QUIRK_MULTI_INPUT) + if (features->quirks & WACOM_QUIRK_MULTI_INPUT) wacom->shared->stylus_in_proximity = true; /* serial number of the tool */ @@ -436,7 +492,7 @@ /* Exit report */ if ((data[1] & 0xfe) == 0x80) { - if (features->quirks == WACOM_QUIRK_MULTI_INPUT) + if (features->quirks & WACOM_QUIRK_MULTI_INPUT) wacom->shared->stylus_in_proximity = false; /* @@ -1151,8 +1207,8 @@ int width, height; if (features->type >= INTUOSPS && features->type <= INTUOSPL) { - width = data[5]; - height = data[6]; + width = data[5] * 100; + height = data[6] * 100; } else { /* * "a" is a scaled-down area which we assume is @@ -1176,10 +1232,16 @@ static void wacom_bpt3_button_msg(struct wacom_wac *wacom, unsigned char *data) { struct input_dev *input = wacom->input; + struct wacom_features *features = &wacom->features; - input_report_key(input, BTN_LEFT, (data[1] & 0x08) != 0); + if (features->type == INTUOSHT) { + input_report_key(input, BTN_LEFT, (data[1] & 0x02) != 0); + input_report_key(input, BTN_BACK, (data[1] & 0x08) != 0); + } else { + input_report_key(input, BTN_BACK, (data[1] & 0x02) != 0); + input_report_key(input, BTN_LEFT, (data[1] & 0x08) != 0); + } input_report_key(input, BTN_FORWARD, (data[1] & 0x04) != 0); - input_report_key(input, BTN_BACK, (data[1] & 0x02) != 0); input_report_key(input, BTN_RIGHT, (data[1] & 0x01) != 0); } @@ -1213,13 +1275,23 @@ static int wacom_bpt_pen(struct wacom_wac *wacom) { + struct wacom_features *features = &wacom->features; struct input_dev *input = wacom->input; unsigned char *data = wacom->data; int prox = 0, x = 0, y = 0, p = 0, d = 0, pen = 0, btn1 = 0, btn2 = 0; - if (data[0] != 0x02) + if (data[0] != WACOM_REPORT_PENABLED && data[0] != WACOM_REPORT_USB) return 0; + if (data[0] == WACOM_REPORT_USB) { + if (features->type == INTUOSHT && features->touch_max) { + input_report_switch(wacom->shared->touch_input, + SW_MUTE_DEVICE, data[8] & 0x40); + input_sync(wacom->shared->touch_input); + } + return 0; + } + prox = (data[1] & 0x20) == 0x20; /* @@ -1252,8 +1324,8 @@ * touching and applying pressure; do not report negative * distance. */ - if (data[8] <= wacom->features.distance_max) - d = wacom->features.distance_max - data[8]; + if (data[8] <= features->distance_max) + d = features->distance_max - data[8]; pen = data[1] & 0x01; btn1 = data[1] & 0x02; @@ -1297,13 +1369,20 @@ unsigned char *data = wacom->data; int connected; - if (len != WACOM_PKGLEN_WIRELESS || data[0] != 0x80) + if (len != WACOM_PKGLEN_WIRELESS || data[0] != WACOM_REPORT_WL) return 0; connected = data[1] & 0x01; if (connected) { int pid, battery; + if ((wacom->shared->type == INTUOSHT) && + wacom->shared->touch_max) { + input_report_switch(wacom->shared->touch_input, + SW_MUTE_DEVICE, data[5] & 0x40); + input_sync(wacom->shared->touch_input); + } + pid = get_unaligned_be16(&data[6]); battery = data[5] & 0x3f; if (wacom->pid != pid) { @@ -1348,6 +1427,10 @@ sync = wacom_dtu_irq(wacom_wac); break; + case DTUS: + sync = wacom_dtus_irq(wacom_wac); + break; + case INTUOS: case INTUOS3S: case INTUOS3: @@ -1391,6 +1474,7 @@ break; case BAMBOO_PT: + case INTUOSHT: sync = wacom_bpt_irq(wacom_wac, len); break; @@ -1459,7 +1543,7 @@ /* these device have multiple inputs */ if (features->type >= WIRELESS || - (features->type >= INTUOS5S && features->type <= INTUOSPL) || + (features->type >= INTUOS5S && features->type <= INTUOSHT) || (features->oVid && features->oPid)) features->quirks |= WACOM_QUIRK_MULTI_INPUT; @@ -1538,7 +1622,7 @@ wacom_abs_set_axis(input_dev, wacom_wac); - switch (wacom_wac->features.type) { + switch (features->type) { case WACOM_MO: input_set_abs_params(input_dev, ABS_WHEEL, 0, 71, 0, 0); /* fall through */ @@ -1749,8 +1833,14 @@ /* fall through */ + case DTUS: case PL: case DTU: + if (features->type == DTUS) { + input_set_capability(input_dev, EV_MSC, MSC_SERIAL); + for (i = 0; i < 3; i++) + __set_bit(BTN_0 + i, input_dev->keybit); + } __set_bit(BTN_TOOL_PEN, input_dev->keybit); __set_bit(BTN_TOOL_RUBBER, input_dev->keybit); __set_bit(BTN_STYLUS, input_dev->keybit); @@ -1771,33 +1861,50 @@ __set_bit(INPUT_PROP_POINTER, input_dev->propbit); break; + case INTUOSHT: + if (features->touch_max && + features->device_type == BTN_TOOL_FINGER) { + input_dev->evbit[0] |= BIT_MASK(EV_SW); + __set_bit(SW_MUTE_DEVICE, input_dev->swbit); + } + /* fall through */ + case BAMBOO_PT: __clear_bit(ABS_MISC, input_dev->absbit); - __set_bit(INPUT_PROP_POINTER, input_dev->propbit); - if (features->device_type == BTN_TOOL_FINGER) { - unsigned int flags = INPUT_MT_POINTER; __set_bit(BTN_LEFT, input_dev->keybit); __set_bit(BTN_FORWARD, input_dev->keybit); __set_bit(BTN_BACK, input_dev->keybit); __set_bit(BTN_RIGHT, input_dev->keybit); - if (features->pktlen == WACOM_PKGLEN_BBTOUCH3) { - input_set_abs_params(input_dev, + if (features->touch_max) { + /* touch interface */ + unsigned int flags = INPUT_MT_POINTER; + + __set_bit(INPUT_PROP_POINTER, input_dev->propbit); + if (features->pktlen == WACOM_PKGLEN_BBTOUCH3) { + input_set_abs_params(input_dev, ABS_MT_TOUCH_MAJOR, 0, features->x_max, 0, 0); - input_set_abs_params(input_dev, + input_set_abs_params(input_dev, ABS_MT_TOUCH_MINOR, 0, features->y_max, 0, 0); + } else { + __set_bit(BTN_TOOL_FINGER, input_dev->keybit); + __set_bit(BTN_TOOL_DOUBLETAP, input_dev->keybit); + flags = 0; + } + input_mt_init_slots(input_dev, features->touch_max, flags); } else { - __set_bit(BTN_TOOL_FINGER, input_dev->keybit); - __set_bit(BTN_TOOL_DOUBLETAP, input_dev->keybit); - flags = 0; + /* buttons/keys only interface */ + __clear_bit(ABS_X, input_dev->absbit); + __clear_bit(ABS_Y, input_dev->absbit); + __clear_bit(BTN_TOUCH, input_dev->keybit); } - input_mt_init_slots(input_dev, features->touch_max, flags); } else if (features->device_type == BTN_TOOL_PEN) { + __set_bit(INPUT_PROP_POINTER, input_dev->propbit); __set_bit(BTN_TOOL_RUBBER, input_dev->keybit); __set_bit(BTN_TOOL_PEN, input_dev->keybit); __set_bit(BTN_STYLUS, input_dev->keybit); @@ -2055,6 +2162,9 @@ static const struct wacom_features wacom_features_0xF0 = { "Wacom DTU1631", WACOM_PKGLEN_GRAPHIRE, 34623, 19553, 511, 0, DTU, WACOM_INTUOS_RES, WACOM_INTUOS_RES }; +static const struct wacom_features wacom_features_0xFB = + { "Wacom DTU1031", WACOM_PKGLEN_DTUS, 22096, 13960, 511, + 0, DTUS, WACOM_INTUOS_RES, WACOM_INTUOS_RES }; static const struct wacom_features wacom_features_0x57 = { "Wacom DTK2241", WACOM_PKGLEN_INTUOS, 95840, 54260, 2047, 63, DTK, WACOM_INTUOS3_RES, WACOM_INTUOS3_RES}; @@ -2200,6 +2310,17 @@ static const struct wacom_features wacom_features_0x301 = { "Wacom Bamboo One M", WACOM_PKGLEN_BBPEN, 21648, 13530, 1023, 31, BAMBOO_PT, WACOM_INTUOS_RES, WACOM_INTUOS_RES }; +static const struct wacom_features wacom_features_0x302 = + { "Wacom Intuos PT S", WACOM_PKGLEN_BBPEN, 15200, 9500, 1023, + 31, INTUOSHT, WACOM_INTUOS_RES, WACOM_INTUOS_RES, + .touch_max = 16 }; +static const struct wacom_features wacom_features_0x303 = + { "Wacom Intuos PT M", WACOM_PKGLEN_BBPEN, 21600, 13500, 1023, + 31, INTUOSHT, WACOM_INTUOS_RES, WACOM_INTUOS_RES, + .touch_max = 16 }; +static const struct wacom_features wacom_features_0x30E = + { "Wacom Intuos S", WACOM_PKGLEN_BBPEN, 15200, 9500, 1023, + 31, INTUOSHT, WACOM_INTUOS_RES, WACOM_INTUOS_RES }; static const struct wacom_features wacom_features_0x6004 = { "ISD-V4", WACOM_PKGLEN_GRAPHIRE, 12800, 8000, 255, 0, TABLETPC, WACOM_INTUOS_RES, WACOM_INTUOS_RES }; @@ -2337,6 +2458,9 @@ { USB_DEVICE_WACOM(0x10F) }, { USB_DEVICE_WACOM(0x300) }, { USB_DEVICE_WACOM(0x301) }, + { USB_DEVICE_DETAILED(0x302, USB_CLASS_HID, 0, 0) }, + { USB_DEVICE_DETAILED(0x303, USB_CLASS_HID, 0, 0) }, + { USB_DEVICE_DETAILED(0x30E, USB_CLASS_HID, 0, 0) }, { USB_DEVICE_WACOM(0x304) }, { USB_DEVICE_DETAILED(0x314, USB_CLASS_HID, 0, 0) }, { USB_DEVICE_DETAILED(0x315, USB_CLASS_HID, 0, 0) }, @@ -2347,6 +2471,7 @@ { USB_DEVICE_WACOM(0xF8) }, { USB_DEVICE_DETAILED(0xF6, USB_CLASS_HID, 0, 0) }, { USB_DEVICE_WACOM(0xFA) }, + { USB_DEVICE_WACOM(0xFB) }, { USB_DEVICE_WACOM(0x0307) }, { USB_DEVICE_DETAILED(0x0309, USB_CLASS_HID, 0, 0) }, { USB_DEVICE_LENOVO(0x6004) }, --- linux-3.13.0.orig/drivers/input/tablet/wacom_wac.h +++ linux-3.13.0/drivers/input/tablet/wacom_wac.h @@ -12,7 +12,7 @@ #include /* maximum packet length for USB devices */ -#define WACOM_PKGLEN_MAX 64 +#define WACOM_PKGLEN_MAX 68 #define WACOM_NAME_MAX 64 @@ -29,6 +29,7 @@ #define WACOM_PKGLEN_WIRELESS 32 #define WACOM_PKGLEN_MTOUCH 62 #define WACOM_PKGLEN_MTTPC 40 +#define WACOM_PKGLEN_DTUS 68 /* wacom data size per MT contact */ #define WACOM_BYTES_PER_MT_PACKET 11 @@ -47,13 +48,17 @@ #define WACOM_REPORT_INTUOSWRITE 6 #define WACOM_REPORT_INTUOSPAD 12 #define WACOM_REPORT_INTUOS5PAD 3 +#define WACOM_REPORT_DTUSPAD 21 #define WACOM_REPORT_TPC1FG 6 #define WACOM_REPORT_TPC2FG 13 #define WACOM_REPORT_TPCMT 13 #define WACOM_REPORT_TPCHID 15 #define WACOM_REPORT_TPCST 16 +#define WACOM_REPORT_DTUS 17 #define WACOM_REPORT_TPC1FGE 18 #define WACOM_REPORT_24HDT 1 +#define WACOM_REPORT_WL 128 +#define WACOM_REPORT_USB 192 /* device quirks */ #define WACOM_QUIRK_MULTI_INPUT 0x0001 @@ -68,6 +73,7 @@ PTU, PL, DTU, + DTUS, INTUOS, INTUOS3S, INTUOS3, @@ -81,6 +87,7 @@ INTUOSPS, INTUOSPM, INTUOSPL, + INTUOSHT, WACOM_21UX2, WACOM_22HD, DTK, @@ -129,6 +136,10 @@ struct wacom_shared { bool stylus_in_proximity; bool touch_down; + /* for wireless device to access USB interfaces */ + unsigned touch_max; + int type; + struct input_dev *touch_input; }; struct wacom_wac { --- linux-3.13.0.orig/drivers/iommu/arm-smmu.c +++ linux-3.13.0/drivers/iommu/arm-smmu.c @@ -78,7 +78,6 @@ #define ARM_SMMU_PTE_CONT_SIZE (PAGE_SIZE * ARM_SMMU_PTE_CONT_ENTRIES) #define ARM_SMMU_PTE_CONT_MASK (~(ARM_SMMU_PTE_CONT_SIZE - 1)) -#define ARM_SMMU_PTE_HWTABLE_SIZE (PTRS_PER_PTE * sizeof(pte_t)) /* Stage-1 PTE */ #define ARM_SMMU_PTE_AP_UNPRIV (((pteval_t)1) << 6) @@ -190,6 +189,9 @@ #define ARM_SMMU_GR1_CBAR(n) (0x0 + ((n) << 2)) #define CBAR_VMID_SHIFT 0 #define CBAR_VMID_MASK 0xff +#define CBAR_S1_BPSHCFG_SHIFT 8 +#define CBAR_S1_BPSHCFG_MASK 3 +#define CBAR_S1_BPSHCFG_NSH 3 #define CBAR_S1_MEMATTR_SHIFT 12 #define CBAR_S1_MEMATTR_MASK 0xf #define CBAR_S1_MEMATTR_WB 0xf @@ -392,7 +394,7 @@ struct arm_smmu_cfg root_cfg; phys_addr_t output_mask; - struct mutex lock; + spinlock_t lock; }; static DEFINE_SPINLOCK(arm_smmu_devices_lock); @@ -631,6 +633,28 @@ return IRQ_HANDLED; } +static void arm_smmu_flush_pgtable(struct arm_smmu_device *smmu, void *addr, + size_t size) +{ + unsigned long offset = (unsigned long)addr & ~PAGE_MASK; + + + /* Ensure new page tables are visible to the hardware walker */ + if (smmu->features & ARM_SMMU_FEAT_COHERENT_WALK) { + dsb(); + } else { + /* + * If the SMMU can't walk tables in the CPU caches, treat them + * like non-coherent DMA since we need to flush the new entries + * all the way out to memory. There's no possibility of + * recursion here as the SMMU table walker will not be wired + * through another SMMU. + */ + dma_map_page(smmu->dev, virt_to_page(addr), offset, size, + DMA_TO_DEVICE); + } +} + static void arm_smmu_init_context_bank(struct arm_smmu_domain *smmu_domain) { u32 reg; @@ -649,11 +673,16 @@ if (smmu->version == 1) reg |= root_cfg->irptndx << CBAR_IRPTNDX_SHIFT; - /* Use the weakest memory type, so it is overridden by the pte */ - if (stage1) - reg |= (CBAR_S1_MEMATTR_WB << CBAR_S1_MEMATTR_SHIFT); - else + /* + * Use the weakest shareability/memory types, so they are + * overridden by the ttbcr/pte. + */ + if (stage1) { + reg |= (CBAR_S1_BPSHCFG_NSH << CBAR_S1_BPSHCFG_SHIFT) | + (CBAR_S1_MEMATTR_WB << CBAR_S1_MEMATTR_SHIFT); + } else { reg |= ARM_SMMU_CB_VMID(root_cfg) << CBAR_VMID_SHIFT; + } writel_relaxed(reg, gr1_base + ARM_SMMU_GR1_CBAR(root_cfg->cbndx)); if (smmu->version > 1) { @@ -714,6 +743,8 @@ } /* TTBR0 */ + arm_smmu_flush_pgtable(smmu, root_cfg->pgd, + PTRS_PER_PGD * sizeof(pgd_t)); reg = __pa(root_cfg->pgd); writel_relaxed(reg, cb_base + ARM_SMMU_CB_TTBR0_LO); reg = (phys_addr_t)__pa(root_cfg->pgd) >> 32; @@ -900,7 +931,7 @@ goto out_free_domain; smmu_domain->root_cfg.pgd = pgd; - mutex_init(&smmu_domain->lock); + spin_lock_init(&smmu_domain->lock); domain->priv = smmu_domain; return 0; @@ -1137,7 +1168,7 @@ * Sanity check the domain. We don't currently support domains * that cross between different SMMU chains. */ - mutex_lock(&smmu_domain->lock); + spin_lock(&smmu_domain->lock); if (!smmu_domain->leaf_smmu) { /* Now that we have a master, we can finalise the domain */ ret = arm_smmu_init_domain_context(domain, dev); @@ -1152,7 +1183,7 @@ dev_name(device_smmu->dev)); goto err_unlock; } - mutex_unlock(&smmu_domain->lock); + spin_unlock(&smmu_domain->lock); /* Looks ok, so add the device to the domain */ master = find_smmu_master(smmu_domain->leaf_smmu, dev->of_node); @@ -1162,7 +1193,7 @@ return arm_smmu_domain_add_master(smmu_domain, master); err_unlock: - mutex_unlock(&smmu_domain->lock); + spin_unlock(&smmu_domain->lock); return ret; } @@ -1176,23 +1207,6 @@ arm_smmu_domain_remove_master(smmu_domain, master); } -static void arm_smmu_flush_pgtable(struct arm_smmu_device *smmu, void *addr, - size_t size) -{ - unsigned long offset = (unsigned long)addr & ~PAGE_MASK; - - /* - * If the SMMU can't walk tables in the CPU caches, treat them - * like non-coherent DMA since we need to flush the new entries - * all the way out to memory. There's no possibility of recursion - * here as the SMMU table walker will not be wired through another - * SMMU. - */ - if (!(smmu->features & ARM_SMMU_FEAT_COHERENT_WALK)) - dma_map_page(smmu->dev, virt_to_page(addr), offset, size, - DMA_TO_DEVICE); -} - static bool arm_smmu_pte_is_contiguous_range(unsigned long addr, unsigned long end) { @@ -1209,12 +1223,11 @@ if (pmd_none(*pmd)) { /* Allocate a new set of tables */ - pgtable_t table = alloc_page(PGALLOC_GFP); + pgtable_t table = alloc_page(GFP_ATOMIC|__GFP_ZERO); if (!table) return -ENOMEM; - arm_smmu_flush_pgtable(smmu, page_address(table), - ARM_SMMU_PTE_HWTABLE_SIZE); + arm_smmu_flush_pgtable(smmu, page_address(table), PAGE_SIZE); if (!pgtable_page_ctor(table)) { __free_page(table); return -ENOMEM; @@ -1314,9 +1327,15 @@ #ifndef __PAGETABLE_PMD_FOLDED if (pud_none(*pud)) { - pmd = pmd_alloc_one(NULL, addr); + pmd = (pmd_t *)get_zeroed_page(GFP_ATOMIC); if (!pmd) return -ENOMEM; + + arm_smmu_flush_pgtable(smmu, pmd, PAGE_SIZE); + pud_populate(NULL, pud, pmd); + arm_smmu_flush_pgtable(smmu, pud, sizeof(*pud)); + + pmd += pmd_index(addr); } else #endif pmd = pmd_offset(pud, addr); @@ -1325,8 +1344,6 @@ next = pmd_addr_end(addr, end); ret = arm_smmu_alloc_init_pte(smmu, pmd, addr, end, pfn, flags, stage); - pud_populate(NULL, pud, pmd); - arm_smmu_flush_pgtable(smmu, pud, sizeof(*pud)); phys += next - addr; } while (pmd++, addr = next, addr < end); @@ -1343,9 +1360,15 @@ #ifndef __PAGETABLE_PUD_FOLDED if (pgd_none(*pgd)) { - pud = pud_alloc_one(NULL, addr); + pud = (pud_t *)get_zeroed_page(GFP_ATOMIC); if (!pud) return -ENOMEM; + + arm_smmu_flush_pgtable(smmu, pud, PAGE_SIZE); + pgd_populate(NULL, pgd, pud); + arm_smmu_flush_pgtable(smmu, pgd, sizeof(*pgd)); + + pud += pud_index(addr); } else #endif pud = pud_offset(pgd, addr); @@ -1354,8 +1377,6 @@ next = pud_addr_end(addr, end); ret = arm_smmu_alloc_init_pmd(smmu, pud, addr, next, phys, flags, stage); - pgd_populate(NULL, pud, pgd); - arm_smmu_flush_pgtable(smmu, pgd, sizeof(*pgd)); phys += next - addr; } while (pud++, addr = next, addr < end); @@ -1394,7 +1415,7 @@ if (paddr & ~output_mask) return -ERANGE; - mutex_lock(&smmu_domain->lock); + spin_lock(&smmu_domain->lock); pgd += pgd_index(iova); end = iova + size; do { @@ -1410,11 +1431,7 @@ } while (pgd++, iova != end); out_unlock: - mutex_unlock(&smmu_domain->lock); - - /* Ensure new page tables are visible to the hardware walker */ - if (smmu->features & ARM_SMMU_FEAT_COHERENT_WALK) - dsb(); + spin_unlock(&smmu_domain->lock); return ret; } --- linux-3.13.0.orig/drivers/iommu/intel-iommu.c +++ linux-3.13.0/drivers/iommu/intel-iommu.c @@ -917,7 +917,7 @@ /* If range covers entire pagetable, free it */ if (!(start_pfn > level_pfn || - last_pfn < level_pfn + level_size(level))) { + last_pfn < level_pfn + level_size(level) - 1)) { dma_clear_pte(pte); domain_flush_cache(domain, pte, sizeof(*pte)); free_pgtable_page(level_pte); --- linux-3.13.0.orig/drivers/irqchip/irq-armada-370-xp.c +++ linux-3.13.0/drivers/irqchip/irq-armada-370-xp.c @@ -381,7 +381,7 @@ ARMADA_370_XP_IN_DRBEL_CAUSE_OFFS) & PCI_MSI_DOORBELL_MASK; - writel(~PCI_MSI_DOORBELL_MASK, per_cpu_int_base + + writel(~msimask, per_cpu_int_base + ARMADA_370_XP_IN_DRBEL_CAUSE_OFFS); for (msinr = PCI_MSI_DOORBELL_START; @@ -407,7 +407,7 @@ ARMADA_370_XP_IN_DRBEL_CAUSE_OFFS) & IPI_DOORBELL_MASK; - writel(~IPI_DOORBELL_MASK, per_cpu_int_base + + writel(~ipimask, per_cpu_int_base + ARMADA_370_XP_IN_DRBEL_CAUSE_OFFS); /* Handle all pending doorbells */ --- linux-3.13.0.orig/drivers/irqchip/irq-metag-ext.c +++ linux-3.13.0/drivers/irqchip/irq-metag-ext.c @@ -515,7 +515,7 @@ * one cpu (the interrupt code doesn't support it), so we just * pick the first cpu we find in 'cpumask'. */ - cpu = cpumask_any(cpumask); + cpu = cpumask_any_and(cpumask, cpu_online_mask); thread = cpu_2_hwthread_id[cpu]; metag_out32(TBI_TRIG_VEC(TBID_SIGNUM_TR2(thread)), vec_addr); --- linux-3.13.0.orig/drivers/irqchip/irq-metag.c +++ linux-3.13.0/drivers/irqchip/irq-metag.c @@ -201,7 +201,7 @@ * one cpu (the interrupt code doesn't support it), so we just * pick the first cpu we find in 'cpumask'. */ - cpu = cpumask_any(cpumask); + cpu = cpumask_any_and(cpumask, cpu_online_mask); thread = cpu_2_hwthread_id[cpu]; metag_out32(TBI_TRIG_VEC(TBID_SIGNUM_TR1(thread)), --- linux-3.13.0.orig/drivers/irqchip/irq-orion.c +++ linux-3.13.0/drivers/irqchip/irq-orion.c @@ -111,7 +111,8 @@ static void orion_bridge_irq_handler(unsigned int irq, struct irq_desc *desc) { struct irq_domain *d = irq_get_handler_data(irq); - struct irq_chip_generic *gc = irq_get_domain_generic_chip(d, irq); + + struct irq_chip_generic *gc = irq_get_domain_generic_chip(d, 0); u32 stat = readl_relaxed(gc->reg_base + ORION_BRIDGE_IRQ_CAUSE) & gc->mask_cache; @@ -123,6 +124,19 @@ } } +/* + * Bridge IRQ_CAUSE is asserted regardless of IRQ_MASK register. + * To avoid interrupt events on stale irqs, we clear them before unmask. + */ +static unsigned int orion_bridge_irq_startup(struct irq_data *d) +{ + struct irq_chip_type *ct = irq_data_get_chip_type(d); + + ct->chip.irq_ack(d); + ct->chip.irq_unmask(d); + return 0; +} + static int __init orion_bridge_irq_init(struct device_node *np, struct device_node *parent) { @@ -143,7 +157,7 @@ } ret = irq_alloc_domain_generic_chips(domain, nrirqs, 1, np->name, - handle_level_irq, clr, 0, IRQ_GC_INIT_MASK_CACHE); + handle_edge_irq, clr, 0, IRQ_GC_INIT_MASK_CACHE); if (ret) { pr_err("%s: unable to alloc irq domain gc\n", np->name); return ret; @@ -176,12 +190,14 @@ gc->chip_types[0].regs.ack = ORION_BRIDGE_IRQ_CAUSE; gc->chip_types[0].regs.mask = ORION_BRIDGE_IRQ_MASK; + gc->chip_types[0].chip.irq_startup = orion_bridge_irq_startup; gc->chip_types[0].chip.irq_ack = irq_gc_ack_clr_bit; gc->chip_types[0].chip.irq_mask = irq_gc_mask_clr_bit; gc->chip_types[0].chip.irq_unmask = irq_gc_mask_set_bit; - /* mask all interrupts */ + /* mask and clear all interrupts */ writel(0, gc->reg_base + ORION_BRIDGE_IRQ_MASK); + writel(0, gc->reg_base + ORION_BRIDGE_IRQ_CAUSE); irq_set_handler_data(irq, domain); irq_set_chained_handler(irq, orion_bridge_irq_handler); --- linux-3.13.0.orig/drivers/isdn/isdnloop/isdnloop.c +++ linux-3.13.0/drivers/isdn/isdnloop/isdnloop.c @@ -518,9 +518,9 @@ static void isdnloop_fake_err(isdnloop_card *card) { - char buf[60]; + char buf[64]; - sprintf(buf, "E%s", card->omsg); + snprintf(buf, sizeof(buf), "E%s", card->omsg); isdnloop_fake(card, buf, -1); isdnloop_fake(card, "NAK", -1); } @@ -903,6 +903,8 @@ case 7: /* 0x;EAZ */ p += 3; + if (strlen(p) >= sizeof(card->eazlist[0])) + break; strcpy(card->eazlist[ch - 1], p); break; case 8: @@ -1070,6 +1072,12 @@ return -EBUSY; if (copy_from_user((char *) &sdef, (char *) sdefp, sizeof(sdef))) return -EFAULT; + + for (i = 0; i < 3; i++) { + if (!memchr(sdef.num[i], 0, sizeof(sdef.num[i]))) + return -EINVAL; + } + spin_lock_irqsave(&card->isdnloop_lock, flags); switch (sdef.ptype) { case ISDN_PTYPE_EURO: @@ -1127,7 +1135,7 @@ { ulong a; int i; - char cbuf[60]; + char cbuf[80]; isdn_ctrl cmd; isdnloop_cdef cdef; @@ -1192,7 +1200,6 @@ break; if ((c->arg & 255) < ISDNLOOP_BCH) { char *p; - char dial[50]; char dcode[4]; a = c->arg; @@ -1204,10 +1211,10 @@ } else /* Normal Dial */ strcpy(dcode, "CAL"); - strcpy(dial, p); - sprintf(cbuf, "%02d;D%s_R%s,%02d,%02d,%s\n", (int) (a + 1), - dcode, dial, c->parm.setup.si1, - c->parm.setup.si2, c->parm.setup.eazmsn); + snprintf(cbuf, sizeof(cbuf), + "%02d;D%s_R%s,%02d,%02d,%s\n", (int) (a + 1), + dcode, p, c->parm.setup.si1, + c->parm.setup.si2, c->parm.setup.eazmsn); i = isdnloop_writecmd(cbuf, strlen(cbuf), 0, card); } break; --- linux-3.13.0.orig/drivers/leds/dell-led.c +++ linux-3.13.0/drivers/leds/dell-led.c @@ -15,12 +15,15 @@ #include #include #include +#include +#include MODULE_AUTHOR("Louis Davis/Jim Dailey"); MODULE_DESCRIPTION("Dell LED Control Driver"); MODULE_LICENSE("GPL"); #define DELL_LED_BIOS_GUID "F6E4FE6E-909D-47cb-8BAB-C9F6F2F8D396" +#define DELL_APP_GUID "A80593CE-A997-11DA-B012-B622A1EF5492" MODULE_ALIAS("wmi:" DELL_LED_BIOS_GUID); /* Error Result Codes: */ @@ -39,6 +42,149 @@ #define CMD_LED_OFF 17 #define CMD_LED_BLINK 18 +struct app_wmi_args { + u16 class; + u16 selector; + u32 arg1; + u32 arg2; + u32 arg3; + u32 arg4; + u32 res1; + u32 res2; + u32 res3; + u32 res4; + char dummy[92]; +}; + +#define GLOBAL_MIC_MUTE_ENABLE 0x364 +#define GLOBAL_MIC_MUTE_DISABLE 0x365 + +struct dell_bios_data_token { + u16 tokenid; + u16 location; + u16 value; +}; + +struct __attribute__ ((__packed__)) dell_bios_calling_interface { + struct dmi_header header; + u16 cmd_io_addr; + u8 cmd_io_code; + u32 supported_cmds; + struct dell_bios_data_token damap[]; +}; + +static struct dell_bios_data_token dell_mic_tokens[2]; + +static int dell_wmi_perform_query(struct app_wmi_args *args) +{ + struct app_wmi_args *bios_return; + union acpi_object *obj; + struct acpi_buffer input; + struct acpi_buffer output = { ACPI_ALLOCATE_BUFFER, NULL }; + acpi_status status; + u32 rc = -EINVAL; + + input.length = 128; + input.pointer = args; + + status = wmi_evaluate_method(DELL_APP_GUID, 0, 1, &input, &output); + if (!ACPI_SUCCESS(status)) + goto err_out0; + + obj = output.pointer; + if (!obj) + goto err_out0; + + if (obj->type != ACPI_TYPE_BUFFER) + goto err_out1; + + bios_return = (struct app_wmi_args *)obj->buffer.pointer; + rc = bios_return->res1; + if (rc) + goto err_out1; + + memcpy(args, bios_return, sizeof(struct app_wmi_args)); + rc = 0; + + err_out1: + kfree(obj); + err_out0: + return rc; +} + +static void __init find_micmute_tokens(const struct dmi_header *dm, void *dummy) +{ + struct dell_bios_calling_interface *calling_interface; + struct dell_bios_data_token *token; + int token_size = sizeof(struct dell_bios_data_token); + int i = 0; + + if (dm->type == 0xda && dm->length > 17) { + calling_interface = container_of(dm, + struct dell_bios_calling_interface, header); + + token = &calling_interface->damap[i]; + while (token->tokenid != 0xffff) { + if (token->tokenid == GLOBAL_MIC_MUTE_DISABLE) + memcpy(&dell_mic_tokens[0], token, token_size); + else if (token->tokenid == GLOBAL_MIC_MUTE_ENABLE) + memcpy(&dell_mic_tokens[1], token, token_size); + + i++; + token = &calling_interface->damap[i]; + } + } +} + +static int dell_micmute_led_set(int state) +{ + struct app_wmi_args args; + struct dell_bios_data_token *token; + + if (!wmi_has_guid(DELL_APP_GUID)) + return -ENODEV; + + if (state == 0 || state == 1) + token = &dell_mic_tokens[state]; + else + return -EINVAL; + + memset(&args, 0, sizeof(struct app_wmi_args)); + + args.class = 1; + args.arg1 = token->location; + args.arg2 = token->value; + + dell_wmi_perform_query(&args); + + return state; +} + +int dell_app_wmi_led_set(int whichled, int on) +{ + int state = 0; + + switch (whichled) { + case DELL_LED_MICMUTE: + state = dell_micmute_led_set(on); + break; + default: + pr_warn("led type %x is not supported\n", whichled); + break; + } + + return state; +} +EXPORT_SYMBOL_GPL(dell_app_wmi_led_set); + +static int __init dell_micmute_led_init(void) +{ + memset(dell_mic_tokens, 0, sizeof(struct dell_bios_data_token) * 2); + dmi_walk(find_micmute_tokens, NULL); + + return 0; +} + struct bios_args { unsigned char length; unsigned char result_code; @@ -181,21 +327,32 @@ { int error = 0; - if (!wmi_has_guid(DELL_LED_BIOS_GUID)) + if (!wmi_has_guid(DELL_LED_BIOS_GUID) && !wmi_has_guid(DELL_APP_GUID)) return -ENODEV; - error = led_off(); - if (error != 0) - return -ENODEV; + if (wmi_has_guid(DELL_APP_GUID)) + error = dell_micmute_led_init(); - return led_classdev_register(NULL, &dell_led); + if (wmi_has_guid(DELL_LED_BIOS_GUID)) { + error = led_off(); + if (error != 0) + return -ENODEV; + + error = led_classdev_register(NULL, &dell_led); + } + + return error; } static void __exit dell_led_exit(void) { - led_classdev_unregister(&dell_led); + int error = 0; - led_off(); + if (wmi_has_guid(DELL_LED_BIOS_GUID)) { + error = led_off(); + if (error == 0) + led_classdev_unregister(&dell_led); + } } module_init(dell_led_init); --- linux-3.13.0.orig/drivers/leds/leds-gpio.c +++ linux-3.13.0/drivers/leds/leds-gpio.c @@ -224,6 +224,8 @@ { .compatible = "gpio-leds", }, {}, }; + +MODULE_DEVICE_TABLE(of, of_gpio_leds_match); #else /* CONFIG_OF_GPIO */ static struct gpio_leds_priv *gpio_leds_create_of(struct platform_device *pdev) { --- linux-3.13.0.orig/drivers/md/Kconfig +++ linux-3.13.0/drivers/md/Kconfig @@ -176,8 +176,12 @@ source "drivers/md/bcache/Kconfig" +config BLK_DEV_DM_BUILTIN + boolean + config BLK_DEV_DM tristate "Device mapper support" + select BLK_DEV_DM_BUILTIN ---help--- Device-mapper is a low level volume manager. It works by allowing people to specify mappings for ranges of logical sectors. Various --- linux-3.13.0.orig/drivers/md/Makefile +++ linux-3.13.0/drivers/md/Makefile @@ -32,6 +32,7 @@ obj-$(CONFIG_BCACHE) += bcache/ obj-$(CONFIG_BLK_DEV_MD) += md-mod.o obj-$(CONFIG_BLK_DEV_DM) += dm-mod.o +obj-$(CONFIG_BLK_DEV_DM_BUILTIN) += dm-builtin.o obj-$(CONFIG_DM_BUFIO) += dm-bufio.o obj-$(CONFIG_DM_BIO_PRISON) += dm-bio-prison.o obj-$(CONFIG_DM_CRYPT) += dm-crypt.o --- linux-3.13.0.orig/drivers/md/bcache/bcache.h +++ linux-3.13.0/drivers/md/bcache/bcache.h @@ -209,7 +209,9 @@ #define GC_MARK_RECLAIMABLE 0 #define GC_MARK_DIRTY 1 #define GC_MARK_METADATA 2 -BITMASK(GC_SECTORS_USED, struct bucket, gc_mark, 2, 13); +#define GC_SECTORS_USED_SIZE 13 +#define MAX_GC_SECTORS_USED (~(~0ULL << GC_SECTORS_USED_SIZE)) +BITMASK(GC_SECTORS_USED, struct bucket, gc_mark, 2, GC_SECTORS_USED_SIZE); BITMASK(GC_MOVE, struct bucket, gc_mark, 15, 1); #include "journal.h" --- linux-3.13.0.orig/drivers/md/bcache/bset.c +++ linux-3.13.0/drivers/md/bcache/bset.c @@ -955,7 +955,7 @@ *i = iter->data[--iter->used]; } -static void btree_sort_fixup(struct btree_iter *iter) +static struct bkey *btree_sort_fixup(struct btree_iter *iter, struct bkey *tmp) { while (iter->used > 1) { struct btree_iter_set *top = iter->data, *i = top + 1; @@ -983,9 +983,22 @@ } else { /* can't happen because of comparison func */ BUG_ON(!bkey_cmp(&START_KEY(top->k), &START_KEY(i->k))); - bch_cut_back(&START_KEY(i->k), top->k); + + if (bkey_cmp(i->k, top->k) < 0) { + bkey_copy(tmp, top->k); + + bch_cut_back(&START_KEY(i->k), tmp); + bch_cut_front(i->k, top->k); + heap_sift(iter, 0, btree_iter_cmp); + + return tmp; + } else { + bch_cut_back(&START_KEY(i->k), top->k); + } } } + + return NULL; } static void btree_mergesort(struct btree *b, struct bset *out, @@ -993,15 +1006,20 @@ bool fixup, bool remove_stale) { struct bkey *k, *last = NULL; + BKEY_PADDED(k) tmp; bool (*bad)(struct btree *, const struct bkey *) = remove_stale ? bch_ptr_bad : bch_ptr_invalid; while (!btree_iter_end(iter)) { if (fixup && !b->level) - btree_sort_fixup(iter); + k = btree_sort_fixup(iter, &tmp.k); + else + k = NULL; + + if (!k) + k = bch_btree_iter_next(iter); - k = bch_btree_iter_next(iter); if (bad(b, k)) continue; --- linux-3.13.0.orig/drivers/md/bcache/btree.c +++ linux-3.13.0/drivers/md/bcache/btree.c @@ -1163,7 +1163,7 @@ /* guard against overflow */ SET_GC_SECTORS_USED(g, min_t(unsigned, GC_SECTORS_USED(g) + KEY_SIZE(k), - (1 << 14) - 1)); + MAX_GC_SECTORS_USED)); BUG_ON(!GC_SECTORS_USED(g)); } --- linux-3.13.0.orig/drivers/md/dm-builtin.c +++ linux-3.13.0/drivers/md/dm-builtin.c @@ -0,0 +1,48 @@ +#include "dm.h" + +/* + * The kobject release method must not be placed in the module itself, + * otherwise we are subject to module unload races. + * + * The release method is called when the last reference to the kobject is + * dropped. It may be called by any other kernel code that drops the last + * reference. + * + * The release method suffers from module unload race. We may prevent the + * module from being unloaded at the start of the release method (using + * increased module reference count or synchronizing against the release + * method), however there is no way to prevent the module from being + * unloaded at the end of the release method. + * + * If this code were placed in the dm module, the following race may + * happen: + * 1. Some other process takes a reference to dm kobject + * 2. The user issues ioctl function to unload the dm device + * 3. dm_sysfs_exit calls kobject_put, however the object is not released + * because of the other reference taken at step 1 + * 4. dm_sysfs_exit waits on the completion + * 5. The other process that took the reference in step 1 drops it, + * dm_kobject_release is called from this process + * 6. dm_kobject_release calls complete() + * 7. a reschedule happens before dm_kobject_release returns + * 8. dm_sysfs_exit continues, the dm device is unloaded, module reference + * count is decremented + * 9. The user unloads the dm module + * 10. The other process that was rescheduled in step 7 continues to run, + * it is now executing code in unloaded module, so it crashes + * + * Note that if the process that takes the foreign reference to dm kobject + * has a low priority and the system is sufficiently loaded with + * higher-priority processes that prevent the low-priority process from + * being scheduled long enough, this bug may really happen. + * + * In order to fix this module unload race, we place the release method + * into a helper code that is compiled directly into the kernel. + */ + +void dm_kobject_release(struct kobject *kobj) +{ + complete(dm_get_completion_from_kobject(kobj)); +} + +EXPORT_SYMBOL(dm_kobject_release); --- linux-3.13.0.orig/drivers/md/dm-cache-metadata.c +++ linux-3.13.0/drivers/md/dm-cache-metadata.c @@ -120,6 +120,12 @@ unsigned policy_version[CACHE_POLICY_VERSION_SIZE]; size_t policy_hint_size; struct dm_cache_statistics stats; + + /* + * Reading the space map root can fail, so we read it into this + * buffer before the superblock is locked and updated. + */ + __u8 metadata_space_map_root[SPACE_MAP_ROOT_SIZE]; }; /*------------------------------------------------------------------- @@ -260,11 +266,31 @@ } } +static int __save_sm_root(struct dm_cache_metadata *cmd) +{ + int r; + size_t metadata_len; + + r = dm_sm_root_size(cmd->metadata_sm, &metadata_len); + if (r < 0) + return r; + + return dm_sm_copy_root(cmd->metadata_sm, &cmd->metadata_space_map_root, + metadata_len); +} + +static void __copy_sm_root(struct dm_cache_metadata *cmd, + struct cache_disk_superblock *disk_super) +{ + memcpy(&disk_super->metadata_space_map_root, + &cmd->metadata_space_map_root, + sizeof(cmd->metadata_space_map_root)); +} + static int __write_initial_superblock(struct dm_cache_metadata *cmd) { int r; struct dm_block *sblock; - size_t metadata_len; struct cache_disk_superblock *disk_super; sector_t bdev_size = i_size_read(cmd->bdev->bd_inode) >> SECTOR_SHIFT; @@ -272,12 +298,16 @@ if (bdev_size > DM_CACHE_METADATA_MAX_SECTORS) bdev_size = DM_CACHE_METADATA_MAX_SECTORS; - r = dm_sm_root_size(cmd->metadata_sm, &metadata_len); + r = dm_tm_pre_commit(cmd->tm); if (r < 0) return r; - r = dm_tm_pre_commit(cmd->tm); - if (r < 0) + /* + * dm_sm_copy_root() can fail. So we need to do it before we start + * updating the superblock. + */ + r = __save_sm_root(cmd); + if (r) return r; r = superblock_lock_zero(cmd, &sblock); @@ -293,10 +323,7 @@ memset(disk_super->policy_version, 0, sizeof(disk_super->policy_version)); disk_super->policy_hint_size = 0; - r = dm_sm_copy_root(cmd->metadata_sm, &disk_super->metadata_space_map_root, - metadata_len); - if (r < 0) - goto bad_locked; + __copy_sm_root(cmd, disk_super); disk_super->mapping_root = cpu_to_le64(cmd->root); disk_super->hint_root = cpu_to_le64(cmd->hint_root); @@ -313,10 +340,6 @@ disk_super->write_misses = cpu_to_le32(0); return dm_tm_commit(cmd->tm, sblock); - -bad_locked: - dm_bm_unlock(sblock); - return r; } static int __format_metadata(struct dm_cache_metadata *cmd) @@ -530,8 +553,9 @@ disk_super = dm_block_data(sblock); update_flags(disk_super, mutator); read_superblock_fields(cmd, disk_super); + dm_bm_unlock(sblock); - return dm_bm_flush_and_unlock(cmd->bm, sblock); + return dm_bm_flush(cmd->bm); } static int __begin_transaction(struct dm_cache_metadata *cmd) @@ -559,7 +583,6 @@ flags_mutator mutator) { int r; - size_t metadata_len; struct cache_disk_superblock *disk_super; struct dm_block *sblock; @@ -577,8 +600,8 @@ if (r < 0) return r; - r = dm_sm_root_size(cmd->metadata_sm, &metadata_len); - if (r < 0) + r = __save_sm_root(cmd); + if (r) return r; r = superblock_lock(cmd, &sblock); @@ -605,13 +628,7 @@ disk_super->read_misses = cpu_to_le32(cmd->stats.read_misses); disk_super->write_hits = cpu_to_le32(cmd->stats.write_hits); disk_super->write_misses = cpu_to_le32(cmd->stats.write_misses); - - r = dm_sm_copy_root(cmd->metadata_sm, &disk_super->metadata_space_map_root, - metadata_len); - if (r < 0) { - dm_bm_unlock(sblock); - return r; - } + __copy_sm_root(cmd, disk_super); return dm_tm_commit(cmd->tm, sblock); } @@ -1228,22 +1245,12 @@ return 0; } -int dm_cache_begin_hints(struct dm_cache_metadata *cmd, struct dm_cache_policy *policy) +static int save_hint(void *context, dm_cblock_t cblock, dm_oblock_t oblock, uint32_t hint) { + struct dm_cache_metadata *cmd = context; + __le32 value = cpu_to_le32(hint); int r; - down_write(&cmd->root_lock); - r = begin_hints(cmd, policy); - up_write(&cmd->root_lock); - - return r; -} - -static int save_hint(struct dm_cache_metadata *cmd, dm_cblock_t cblock, - uint32_t hint) -{ - int r; - __le32 value = cpu_to_le32(hint); __dm_bless_for_disk(&value); r = dm_array_set_value(&cmd->hint_info, cmd->hint_root, @@ -1253,16 +1260,25 @@ return r; } -int dm_cache_save_hint(struct dm_cache_metadata *cmd, dm_cblock_t cblock, - uint32_t hint) +static int write_hints(struct dm_cache_metadata *cmd, struct dm_cache_policy *policy) { int r; - if (!hints_array_initialized(cmd)) - return 0; + r = begin_hints(cmd, policy); + if (r) { + DMERR("begin_hints failed"); + return r; + } + + return policy_walk_mappings(policy, save_hint, cmd); +} + +int dm_cache_write_hints(struct dm_cache_metadata *cmd, struct dm_cache_policy *policy) +{ + int r; down_write(&cmd->root_lock); - r = save_hint(cmd, cblock, hint); + r = write_hints(cmd, policy); up_write(&cmd->root_lock); return r; --- linux-3.13.0.orig/drivers/md/dm-cache-metadata.h +++ linux-3.13.0/drivers/md/dm-cache-metadata.h @@ -128,14 +128,7 @@ * rather than querying the policy for each cblock, we let it walk its data * structures and fill in the hints in whatever order it wishes. */ - -int dm_cache_begin_hints(struct dm_cache_metadata *cmd, struct dm_cache_policy *p); - -/* - * requests hints for every cblock and stores in the metadata device. - */ -int dm_cache_save_hint(struct dm_cache_metadata *cmd, - dm_cblock_t cblock, uint32_t hint); +int dm_cache_write_hints(struct dm_cache_metadata *cmd, struct dm_cache_policy *p); /* * Query method. Are all the blocks in the cache clean? --- linux-3.13.0.orig/drivers/md/dm-cache-policy-mq.c +++ linux-3.13.0/drivers/md/dm-cache-policy-mq.c @@ -869,7 +869,7 @@ { struct mq_policy *mq = to_mq_policy(p); - kfree(mq->table); + vfree(mq->table); epool_exit(&mq->cache_pool); epool_exit(&mq->pre_cache_pool); kfree(mq); @@ -1224,7 +1224,7 @@ mq->nr_buckets = next_power(from_cblock(cache_size) / 2, 16); mq->hash_bits = ffs(mq->nr_buckets) - 1; - mq->table = kzalloc(sizeof(*mq->table) * mq->nr_buckets, GFP_KERNEL); + mq->table = vzalloc(sizeof(*mq->table) * mq->nr_buckets); if (!mq->table) goto bad_alloc_table; --- linux-3.13.0.orig/drivers/md/dm-cache-target.c +++ linux-3.13.0/drivers/md/dm-cache-target.c @@ -233,7 +233,7 @@ */ dm_dblock_t discard_nr_blocks; unsigned long *discard_bitset; - uint32_t discard_block_size; /* a power of 2 times sectors per block */ + uint32_t discard_block_size; /* * Rather than reconstructing the table line for the status we just @@ -283,6 +283,7 @@ bool tick:1; unsigned req_nr:2; struct dm_deferred_entry *all_io_entry; + struct dm_hook_info hook_info; /* * writethrough fields. These MUST remain at the end of this @@ -291,7 +292,6 @@ */ struct cache *cache; dm_cblock_t cblock; - struct dm_hook_info hook_info; struct dm_bio_details bio_details; }; @@ -970,12 +970,13 @@ int r; struct dm_io_region o_region, c_region; struct cache *cache = mg->cache; + sector_t cblock = from_cblock(mg->cblock); o_region.bdev = cache->origin_dev->bdev; o_region.count = cache->sectors_per_block; c_region.bdev = cache->cache_dev->bdev; - c_region.sector = from_cblock(mg->cblock) * cache->sectors_per_block; + c_region.sector = cblock * cache->sectors_per_block; c_region.count = cache->sectors_per_block; if (mg->writeback || mg->demote) { @@ -2159,35 +2160,6 @@ return 0; } -/* - * We want the discard block size to be a power of two, at least the size - * of the cache block size, and have no more than 2^14 discard blocks - * across the origin. - */ -#define MAX_DISCARD_BLOCKS (1 << 14) - -static bool too_many_discard_blocks(sector_t discard_block_size, - sector_t origin_size) -{ - (void) sector_div(origin_size, discard_block_size); - - return origin_size > MAX_DISCARD_BLOCKS; -} - -static sector_t calculate_discard_block_size(sector_t cache_block_size, - sector_t origin_size) -{ - sector_t discard_block_size; - - discard_block_size = roundup_pow_of_two(cache_block_size); - - if (origin_size) - while (too_many_discard_blocks(discard_block_size, origin_size)) - discard_block_size *= 2; - - return discard_block_size; -} - #define DEFAULT_MIGRATION_THRESHOLD 2048 static int cache_create(struct cache_args *ca, struct cache **result) @@ -2309,9 +2281,7 @@ } clear_bitset(cache->dirty_bitset, from_cblock(cache->cache_size)); - cache->discard_block_size = - calculate_discard_block_size(cache->sectors_per_block, - cache->origin_sectors); + cache->discard_block_size = cache->sectors_per_block; cache->discard_nr_blocks = oblock_to_dblock(cache, cache->origin_blocks); cache->discard_bitset = alloc_bitset(from_dblock(cache->discard_nr_blocks)); if (!cache->discard_bitset) { @@ -2453,20 +2423,18 @@ bool discarded_block; struct dm_bio_prison_cell *cell; struct policy_result lookup_result; - struct per_bio_data *pb; + struct per_bio_data *pb = init_per_bio_data(bio, pb_data_size); - if (from_oblock(block) > from_oblock(cache->origin_blocks)) { + if (unlikely(from_oblock(block) >= from_oblock(cache->origin_blocks))) { /* * This can only occur if the io goes to a partial block at * the end of the origin device. We don't cache these. * Just remap to the origin and carry on. */ - remap_to_origin_clear_discard(cache, bio, block); + remap_to_origin(cache, bio); return DM_MAPIO_REMAPPED; } - pb = init_per_bio_data(bio, pb_data_size); - if (bio->bi_rw & (REQ_FLUSH | REQ_FUA | REQ_DISCARD)) { defer_bio(cache, bio); return DM_MAPIO_SUBMITTED; @@ -2621,30 +2589,6 @@ return 0; } -static int save_hint(void *context, dm_cblock_t cblock, dm_oblock_t oblock, - uint32_t hint) -{ - struct cache *cache = context; - return dm_cache_save_hint(cache->cmd, cblock, hint); -} - -static int write_hints(struct cache *cache) -{ - int r; - - r = dm_cache_begin_hints(cache->cmd, cache->policy); - if (r) { - DMERR("dm_cache_begin_hints failed"); - return r; - } - - r = policy_walk_mappings(cache->policy, save_hint, cache); - if (r) - DMERR("policy_walk_mappings failed"); - - return r; -} - /* * returns true on success */ @@ -2662,7 +2606,7 @@ save_stats(cache); - r3 = write_hints(cache); + r3 = dm_cache_write_hints(cache->cmd, cache->policy); if (r3) DMERR("could not write hints"); @@ -3104,7 +3048,7 @@ /* * FIXME: these limits may be incompatible with the cache device */ - limits->max_discard_sectors = cache->discard_block_size * 1024; + limits->max_discard_sectors = cache->discard_block_size; limits->discard_granularity = cache->discard_block_size << SECTOR_SHIFT; } --- linux-3.13.0.orig/drivers/md/dm-crypt.c +++ linux-3.13.0/drivers/md/dm-crypt.c @@ -2003,6 +2003,12 @@ return fn(ti, cc->dev, cc->start, ti->len, data); } +static void crypt_io_hints(struct dm_target *ti, + struct queue_limits *limits) +{ + limits->max_write_same_sectors = 0; +} + static struct target_type crypt_target = { .name = "crypt", .version = {1, 13, 0}, @@ -2017,6 +2023,7 @@ .message = crypt_message, .merge = crypt_merge, .iterate_devices = crypt_iterate_devices, + .io_hints = crypt_io_hints, }; static int __init dm_crypt_init(void) --- linux-3.13.0.orig/drivers/md/dm-mpath.c +++ linux-3.13.0/drivers/md/dm-mpath.c @@ -1626,8 +1626,11 @@ /* * Only pass ioctls through if the device sizes match exactly. */ - if (!r && ti->len != i_size_read(bdev->bd_inode) >> SECTOR_SHIFT) - r = scsi_verify_blk_ioctl(NULL, cmd); + if (!bdev || ti->len != i_size_read(bdev->bd_inode) >> SECTOR_SHIFT) { + int err = scsi_verify_blk_ioctl(NULL, cmd); + if (err) + r = err; + } if (r == -ENOTCONN && !fatal_signal_pending(current)) queue_work(kmultipathd, &m->process_queued_ios); --- linux-3.13.0.orig/drivers/md/dm-sysfs.c +++ linux-3.13.0/drivers/md/dm-sysfs.c @@ -86,6 +86,7 @@ static struct kobj_type dm_ktype = { .sysfs_ops = &dm_sysfs_ops, .default_attrs = dm_attrs, + .release = dm_kobject_release, }; /* @@ -104,5 +105,7 @@ */ void dm_sysfs_exit(struct mapped_device *md) { - kobject_put(dm_kobject(md)); + struct kobject *kobj = dm_kobject(md); + kobject_put(kobj); + wait_for_completion(dm_get_completion_from_kobject(kobj)); } --- linux-3.13.0.orig/drivers/md/dm-thin-metadata.c +++ linux-3.13.0/drivers/md/dm-thin-metadata.c @@ -192,6 +192,13 @@ * operation possible in this state is the closing of the device. */ bool fail_io:1; + + /* + * Reading the space map roots can fail, so we read it into these + * buffers before the superblock is locked and updated. + */ + __u8 data_space_map_root[SPACE_MAP_ROOT_SIZE]; + __u8 metadata_space_map_root[SPACE_MAP_ROOT_SIZE]; }; struct dm_thin_device { @@ -431,26 +438,53 @@ pmd->details_info.value_type.equal = NULL; } +static int save_sm_roots(struct dm_pool_metadata *pmd) +{ + int r; + size_t len; + + r = dm_sm_root_size(pmd->metadata_sm, &len); + if (r < 0) + return r; + + r = dm_sm_copy_root(pmd->metadata_sm, &pmd->metadata_space_map_root, len); + if (r < 0) + return r; + + r = dm_sm_root_size(pmd->data_sm, &len); + if (r < 0) + return r; + + return dm_sm_copy_root(pmd->data_sm, &pmd->data_space_map_root, len); +} + +static void copy_sm_roots(struct dm_pool_metadata *pmd, + struct thin_disk_superblock *disk) +{ + memcpy(&disk->metadata_space_map_root, + &pmd->metadata_space_map_root, + sizeof(pmd->metadata_space_map_root)); + + memcpy(&disk->data_space_map_root, + &pmd->data_space_map_root, + sizeof(pmd->data_space_map_root)); +} + static int __write_initial_superblock(struct dm_pool_metadata *pmd) { int r; struct dm_block *sblock; - size_t metadata_len, data_len; struct thin_disk_superblock *disk_super; sector_t bdev_size = i_size_read(pmd->bdev->bd_inode) >> SECTOR_SHIFT; if (bdev_size > THIN_METADATA_MAX_SECTORS) bdev_size = THIN_METADATA_MAX_SECTORS; - r = dm_sm_root_size(pmd->metadata_sm, &metadata_len); - if (r < 0) - return r; - - r = dm_sm_root_size(pmd->data_sm, &data_len); + r = dm_sm_commit(pmd->data_sm); if (r < 0) return r; - r = dm_sm_commit(pmd->data_sm); + r = save_sm_roots(pmd); if (r < 0) return r; @@ -471,15 +505,7 @@ disk_super->trans_id = 0; disk_super->held_root = 0; - r = dm_sm_copy_root(pmd->metadata_sm, &disk_super->metadata_space_map_root, - metadata_len); - if (r < 0) - goto bad_locked; - - r = dm_sm_copy_root(pmd->data_sm, &disk_super->data_space_map_root, - data_len); - if (r < 0) - goto bad_locked; + copy_sm_roots(pmd, disk_super); disk_super->data_mapping_root = cpu_to_le64(pmd->root); disk_super->device_details_root = cpu_to_le64(pmd->details_root); @@ -488,10 +514,6 @@ disk_super->data_block_size = cpu_to_le32(pmd->data_block_size); return dm_tm_commit(pmd->tm, sblock); - -bad_locked: - dm_bm_unlock(sblock); - return r; } static int __format_metadata(struct dm_pool_metadata *pmd) @@ -769,6 +791,10 @@ if (r < 0) return r; + r = save_sm_roots(pmd); + if (r < 0) + return r; + r = superblock_lock(pmd, &sblock); if (r) return r; @@ -780,21 +806,9 @@ disk_super->trans_id = cpu_to_le64(pmd->trans_id); disk_super->flags = cpu_to_le32(pmd->flags); - r = dm_sm_copy_root(pmd->metadata_sm, &disk_super->metadata_space_map_root, - metadata_len); - if (r < 0) - goto out_locked; - - r = dm_sm_copy_root(pmd->data_sm, &disk_super->data_space_map_root, - data_len); - if (r < 0) - goto out_locked; + copy_sm_roots(pmd, disk_super); return dm_tm_commit(pmd->tm, sblock); - -out_locked: - dm_bm_unlock(sblock); - return r; } struct dm_pool_metadata *dm_pool_metadata_open(struct block_device *bdev, @@ -1349,6 +1363,12 @@ return td->id; } +/* + * Check whether @time (of block creation) is older than @td's last snapshot. + * If so then the associated block is shared with the last snapshot device. + * Any block on a device created *after* the device last got snapshotted is + * necessarily not shared. + */ static bool __snapshotted_since(struct dm_thin_device *td, uint32_t time) { return td->snapshotted_time > time; @@ -1458,6 +1478,20 @@ return r; } +int dm_pool_block_is_used(struct dm_pool_metadata *pmd, dm_block_t b, bool *result) +{ + int r; + uint32_t ref_count; + + down_read(&pmd->root_lock); + r = dm_sm_get_count(pmd->data_sm, b, &ref_count); + if (!r) + *result = (ref_count != 0); + up_read(&pmd->root_lock); + + return r; +} + bool dm_thin_changed_this_transaction(struct dm_thin_device *td) { int r; @@ -1468,6 +1502,23 @@ return r; } + +bool dm_pool_changed_this_transaction(struct dm_pool_metadata *pmd) +{ + bool r = false; + struct dm_thin_device *td, *tmp; + + down_read(&pmd->root_lock); + list_for_each_entry_safe(td, tmp, &pmd->thin_devices, list) { + if (td->changed) { + r = td->changed; + break; + } + } + up_read(&pmd->root_lock); + + return r; +} bool dm_thin_aborted_changes(struct dm_thin_device *td) { --- linux-3.13.0.orig/drivers/md/dm-thin-metadata.h +++ linux-3.13.0/drivers/md/dm-thin-metadata.h @@ -161,6 +161,8 @@ */ bool dm_thin_changed_this_transaction(struct dm_thin_device *td); +bool dm_pool_changed_this_transaction(struct dm_pool_metadata *pmd); + bool dm_thin_aborted_changes(struct dm_thin_device *td); int dm_thin_get_highest_mapped_block(struct dm_thin_device *td, @@ -181,6 +183,8 @@ int dm_pool_get_data_dev_size(struct dm_pool_metadata *pmd, dm_block_t *result); +int dm_pool_block_is_used(struct dm_pool_metadata *pmd, dm_block_t b, bool *result); + /* * Returns -ENOSPC if the new size is too small and already allocated * blocks would be lost. --- linux-3.13.0.orig/drivers/md/dm-thin.c +++ linux-3.13.0/drivers/md/dm-thin.c @@ -512,6 +512,7 @@ unsigned quiesced:1; unsigned prepared:1; unsigned pass_discard:1; + unsigned definitely_not_shared:1; struct thin_c *tc; dm_block_t virt_block; @@ -683,7 +684,15 @@ cell_defer_no_holder(tc, m->cell2); if (m->pass_discard) - remap_and_issue(tc, m->bio, m->data_block); + if (m->definitely_not_shared) + remap_and_issue(tc, m->bio, m->data_block); + else { + bool used = false; + if (dm_pool_block_is_used(tc->pool->pmd, m->data_block, &used) || used) + bio_endio(m->bio, 0); + else + remap_and_issue(tc, m->bio, m->data_block); + } else bio_endio(m->bio, 0); @@ -751,13 +760,17 @@ static struct dm_thin_new_mapping *get_next_mapping(struct pool *pool) { - struct dm_thin_new_mapping *r = pool->next_mapping; + struct dm_thin_new_mapping *m = pool->next_mapping; BUG_ON(!pool->next_mapping); + memset(m, 0, sizeof(struct dm_thin_new_mapping)); + INIT_LIST_HEAD(&m->list); + m->bio = NULL; + pool->next_mapping = NULL; - return r; + return m; } static void schedule_copy(struct thin_c *tc, dm_block_t virt_block, @@ -769,15 +782,10 @@ struct pool *pool = tc->pool; struct dm_thin_new_mapping *m = get_next_mapping(pool); - INIT_LIST_HEAD(&m->list); - m->quiesced = 0; - m->prepared = 0; m->tc = tc; m->virt_block = virt_block; m->data_block = data_dest; m->cell = cell; - m->err = 0; - m->bio = NULL; if (!dm_deferred_set_add_work(pool->shared_read_ds, &m->list)) m->quiesced = 1; @@ -840,15 +848,12 @@ struct pool *pool = tc->pool; struct dm_thin_new_mapping *m = get_next_mapping(pool); - INIT_LIST_HEAD(&m->list); m->quiesced = 1; m->prepared = 0; m->tc = tc; m->virt_block = virt_block; m->data_block = data_block; m->cell = cell; - m->err = 0; - m->bio = NULL; /* * If the whole block of data is being overwritten or we are not @@ -1040,12 +1045,12 @@ */ m = get_next_mapping(pool); m->tc = tc; - m->pass_discard = (!lookup_result.shared) && pool->pf.discard_passdown; + m->pass_discard = pool->pf.discard_passdown; + m->definitely_not_shared = !lookup_result.shared; m->virt_block = block; m->data_block = lookup_result.block; m->cell = cell; m->cell2 = cell2; - m->err = 0; m->bio = bio; if (!dm_deferred_set_add_work(pool->all_io_ds, &m->list)) { @@ -1327,9 +1332,9 @@ */ if (ensure_next_mapping(pool)) { spin_lock_irqsave(&pool->lock, flags); + bio_list_add(&pool->deferred_bios, bio); bio_list_merge(&pool->deferred_bios, &bios); spin_unlock_irqrestore(&pool->lock, flags); - break; } @@ -1349,7 +1354,8 @@ bio_list_init(&pool->deferred_flush_bios); spin_unlock_irqrestore(&pool->lock, flags); - if (bio_list_empty(&bios) && !need_commit_due_to_time(pool)) + if (bio_list_empty(&bios) && + !(dm_pool_changed_this_transaction(pool->pmd) && need_commit_due_to_time(pool))) return; if (commit(pool)) { @@ -1390,16 +1396,16 @@ return pool->pf.mode; } -static void set_pool_mode(struct pool *pool, enum pool_mode mode) +static void set_pool_mode(struct pool *pool, enum pool_mode new_mode) { int r; + enum pool_mode old_mode = pool->pf.mode; - pool->pf.mode = mode; - - switch (mode) { + switch (new_mode) { case PM_FAIL: - DMERR("%s: switching pool to failure mode", - dm_device_name(pool->pool_md)); + if (old_mode != new_mode) + DMERR("%s: switching pool to failure mode", + dm_device_name(pool->pool_md)); dm_pool_metadata_read_only(pool->pmd); pool->process_bio = process_bio_fail; pool->process_discard = process_bio_fail; @@ -1408,13 +1414,15 @@ break; case PM_READ_ONLY: - DMERR("%s: switching pool to read-only mode", - dm_device_name(pool->pool_md)); + if (old_mode != new_mode) + DMERR("%s: switching pool to read-only mode", + dm_device_name(pool->pool_md)); r = dm_pool_abort_metadata(pool->pmd); if (r) { DMERR("%s: aborting transaction failed", dm_device_name(pool->pool_md)); - set_pool_mode(pool, PM_FAIL); + new_mode = PM_FAIL; + set_pool_mode(pool, new_mode); } else { dm_pool_metadata_read_only(pool->pmd); pool->process_bio = process_bio_read_only; @@ -1425,6 +1433,9 @@ break; case PM_WRITE: + if (old_mode != new_mode) + DMINFO("%s: switching pool to write mode", + dm_device_name(pool->pool_md)); dm_pool_metadata_read_write(pool->pmd); pool->process_bio = process_bio; pool->process_discard = process_discard; @@ -1432,6 +1443,8 @@ pool->process_prepared_discard = process_prepared_discard; break; } + + pool->pf.mode = new_mode; } /*----------------------------------------------------------------*/ @@ -1648,6 +1661,17 @@ enum pool_mode new_mode = pt->adjusted_pf.mode; /* + * Don't change the pool's mode until set_pool_mode() below. + * Otherwise the pool's process_* function pointers may + * not match the desired pool mode. + */ + pt->adjusted_pf.mode = old_mode; + + pool->ti = ti; + pool->pf = pt->adjusted_pf; + pool->low_water_blocks = pt->low_water_blocks; + + /* * If we were in PM_FAIL mode, rollback of metadata failed. We're * not going to recover without a thin_repair. So we never let the * pool move out of the old mode. On the other hand a PM_READ_ONLY @@ -1657,10 +1681,6 @@ if (old_mode == PM_FAIL) new_mode = old_mode; - pool->ti = ti; - pool->low_water_blocks = pt->low_water_blocks; - pool->pf = pt->adjusted_pf; - set_pool_mode(pool, new_mode); return 0; @@ -2828,6 +2848,7 @@ if (get_pool_mode(tc->pool) == PM_FAIL) { ti->error = "Couldn't open thin device, Pool is in fail mode"; + r = -EINVAL; goto bad_thin_open; } @@ -2839,7 +2860,7 @@ r = dm_set_target_max_io_len(ti, tc->pool->sectors_per_block); if (r) - goto bad_thin_open; + goto bad_target_max_io_len; ti->num_flush_bios = 1; ti->flush_supported = true; @@ -2860,6 +2881,8 @@ return 0; +bad_target_max_io_len: + dm_pool_close_thin_device(tc->td); bad_thin_open: __pool_dec(tc->pool); bad_pool_lookup: --- linux-3.13.0.orig/drivers/md/dm.c +++ linux-3.13.0/drivers/md/dm.c @@ -200,8 +200,8 @@ /* forced geometry settings */ struct hd_geometry geometry; - /* sysfs handle */ - struct kobject kobj; + /* kobject and completion */ + struct dm_kobject_holder kobj_holder; /* zero-length flush that will be cloned and submitted to targets */ struct bio flush_bio; @@ -2041,6 +2041,7 @@ init_waitqueue_head(&md->wait); INIT_WORK(&md->work, dm_wq_work); init_waitqueue_head(&md->eventq); + init_completion(&md->kobj_holder.completion); md->disk->major = _major; md->disk->first_minor = minor; @@ -2899,23 +2900,18 @@ { return md->disk; } +EXPORT_SYMBOL_GPL(dm_disk); struct kobject *dm_kobject(struct mapped_device *md) { - return &md->kobj; + return &md->kobj_holder.kobj; } -/* - * struct mapped_device should not be exported outside of dm.c - * so use this check to verify that kobj is part of md structure - */ struct mapped_device *dm_get_from_kobject(struct kobject *kobj) { struct mapped_device *md; - md = container_of(kobj, struct mapped_device, kobj); - if (&md->kobj != kobj) - return NULL; + md = container_of(kobj, struct mapped_device, kobj_holder.kobj); if (test_bit(DMF_FREEING, &md->flags) || dm_deleting_md(md)) --- linux-3.13.0.orig/drivers/md/dm.h +++ linux-3.13.0/drivers/md/dm.h @@ -15,6 +15,8 @@ #include #include #include +#include +#include #include "dm-stats.h" @@ -148,12 +150,27 @@ /* * sysfs interface */ +struct dm_kobject_holder { + struct kobject kobj; + struct completion completion; +}; + +static inline struct completion *dm_get_completion_from_kobject(struct kobject *kobj) +{ + return &container_of(kobj, struct dm_kobject_holder, kobj)->completion; +} + int dm_sysfs_init(struct mapped_device *md); void dm_sysfs_exit(struct mapped_device *md); struct kobject *dm_kobject(struct mapped_device *md); struct mapped_device *dm_get_from_kobject(struct kobject *kobj); /* + * The kobject helper + */ +void dm_kobject_release(struct kobject *kobj); + +/* * Targets for linear and striped mappings */ int dm_linear_init(void); --- linux-3.13.0.orig/drivers/md/persistent-data/dm-block-manager.c +++ linux-3.13.0/drivers/md/persistent-data/dm-block-manager.c @@ -595,25 +595,14 @@ } EXPORT_SYMBOL_GPL(dm_bm_unlock); -int dm_bm_flush_and_unlock(struct dm_block_manager *bm, - struct dm_block *superblock) +int dm_bm_flush(struct dm_block_manager *bm) { - int r; - if (bm->read_only) return -EPERM; - r = dm_bufio_write_dirty_buffers(bm->bufio); - if (unlikely(r)) { - dm_bm_unlock(superblock); - return r; - } - - dm_bm_unlock(superblock); - return dm_bufio_write_dirty_buffers(bm->bufio); } -EXPORT_SYMBOL_GPL(dm_bm_flush_and_unlock); +EXPORT_SYMBOL_GPL(dm_bm_flush); void dm_bm_prefetch(struct dm_block_manager *bm, dm_block_t b) { --- linux-3.13.0.orig/drivers/md/persistent-data/dm-block-manager.h +++ linux-3.13.0/drivers/md/persistent-data/dm-block-manager.h @@ -105,8 +105,7 @@ * * This method always blocks. */ -int dm_bm_flush_and_unlock(struct dm_block_manager *bm, - struct dm_block *superblock); +int dm_bm_flush(struct dm_block_manager *bm); /* * Request data is prefetched into the cache. --- linux-3.13.0.orig/drivers/md/persistent-data/dm-space-map-common.c +++ linux-3.13.0/drivers/md/persistent-data/dm-space-map-common.c @@ -245,6 +245,10 @@ return -EINVAL; } + /* + * We need to set this before the dm_tm_new_block() call below. + */ + ll->nr_blocks = nr_blocks; for (i = old_blocks; i < blocks; i++) { struct dm_block *b; struct disk_index_entry idx; @@ -252,6 +256,7 @@ r = dm_tm_new_block(ll->tm, &dm_sm_bitmap_validator, &b); if (r < 0) return r; + idx.blocknr = cpu_to_le64(dm_block_location(b)); r = dm_tm_unlock(ll->tm, b); @@ -266,7 +271,6 @@ return r; } - ll->nr_blocks = nr_blocks; return 0; } --- linux-3.13.0.orig/drivers/md/persistent-data/dm-space-map-metadata.c +++ linux-3.13.0/drivers/md/persistent-data/dm-space-map-metadata.c @@ -91,6 +91,69 @@ dm_block_t block; }; +struct bop_ring_buffer { + unsigned begin; + unsigned end; + struct block_op bops[MAX_RECURSIVE_ALLOCATIONS + 1]; +}; + +static void brb_init(struct bop_ring_buffer *brb) +{ + brb->begin = 0; + brb->end = 0; +} + +static bool brb_empty(struct bop_ring_buffer *brb) +{ + return brb->begin == brb->end; +} + +static unsigned brb_next(struct bop_ring_buffer *brb, unsigned old) +{ + unsigned r = old + 1; + return (r >= (sizeof(brb->bops) / sizeof(*brb->bops))) ? 0 : r; +} + +static int brb_push(struct bop_ring_buffer *brb, + enum block_op_type type, dm_block_t b) +{ + struct block_op *bop; + unsigned next = brb_next(brb, brb->end); + + /* + * We don't allow the last bop to be filled, this way we can + * differentiate between full and empty. + */ + if (next == brb->begin) + return -ENOMEM; + + bop = brb->bops + brb->end; + bop->type = type; + bop->block = b; + + brb->end = next; + + return 0; +} + +static int brb_pop(struct bop_ring_buffer *brb, struct block_op *result) +{ + struct block_op *bop; + + if (brb_empty(brb)) + return -ENODATA; + + bop = brb->bops + brb->begin; + result->type = bop->type; + result->block = bop->block; + + brb->begin = brb_next(brb, brb->begin); + + return 0; +} + +/*----------------------------------------------------------------*/ + struct sm_metadata { struct dm_space_map sm; @@ -101,25 +164,20 @@ unsigned recursion_count; unsigned allocated_this_transaction; - unsigned nr_uncommitted; - struct block_op uncommitted[MAX_RECURSIVE_ALLOCATIONS]; + struct bop_ring_buffer uncommitted; struct threshold threshold; }; static int add_bop(struct sm_metadata *smm, enum block_op_type type, dm_block_t b) { - struct block_op *op; + int r = brb_push(&smm->uncommitted, type, b); - if (smm->nr_uncommitted == MAX_RECURSIVE_ALLOCATIONS) { + if (r) { DMERR("too many recursive allocations"); return -ENOMEM; } - op = smm->uncommitted + smm->nr_uncommitted++; - op->type = type; - op->block = b; - return 0; } @@ -158,11 +216,17 @@ return -ENOMEM; } - if (smm->recursion_count == 1 && smm->nr_uncommitted) { - while (smm->nr_uncommitted && !r) { - smm->nr_uncommitted--; - r = commit_bop(smm, smm->uncommitted + - smm->nr_uncommitted); + if (smm->recursion_count == 1) { + while (!brb_empty(&smm->uncommitted)) { + struct block_op bop; + + r = brb_pop(&smm->uncommitted, &bop); + if (r) { + DMERR("bug in bop ring buffer"); + break; + } + + r = commit_bop(smm, &bop); if (r) break; } @@ -217,7 +281,8 @@ static int sm_metadata_get_count(struct dm_space_map *sm, dm_block_t b, uint32_t *result) { - int r, i; + int r; + unsigned i; struct sm_metadata *smm = container_of(sm, struct sm_metadata, sm); unsigned adjustment = 0; @@ -225,8 +290,10 @@ * We may have some uncommitted adjustments to add. This list * should always be really short. */ - for (i = 0; i < smm->nr_uncommitted; i++) { - struct block_op *op = smm->uncommitted + i; + for (i = smm->uncommitted.begin; + i != smm->uncommitted.end; + i = brb_next(&smm->uncommitted, i)) { + struct block_op *op = smm->uncommitted.bops + i; if (op->block != b) continue; @@ -254,7 +321,8 @@ static int sm_metadata_count_is_more_than_one(struct dm_space_map *sm, dm_block_t b, int *result) { - int r, i, adjustment = 0; + int r, adjustment = 0; + unsigned i; struct sm_metadata *smm = container_of(sm, struct sm_metadata, sm); uint32_t rc; @@ -262,8 +330,11 @@ * We may have some uncommitted adjustments to add. This list * should always be really short. */ - for (i = 0; i < smm->nr_uncommitted; i++) { - struct block_op *op = smm->uncommitted + i; + for (i = smm->uncommitted.begin; + i != smm->uncommitted.end; + i = brb_next(&smm->uncommitted, i)) { + + struct block_op *op = smm->uncommitted.bops + i; if (op->block != b) continue; @@ -608,20 +679,38 @@ * Flick into a mode where all blocks get allocated in the new area. */ smm->begin = old_len; - memcpy(&smm->sm, &bootstrap_ops, sizeof(smm->sm)); + memcpy(sm, &bootstrap_ops, sizeof(*sm)); /* * Extend. */ r = sm_ll_extend(&smm->ll, extra_blocks); + if (r) + goto out; /* - * Switch back to normal behaviour. + * We repeatedly increment then commit until the commit doesn't + * allocate any new blocks. */ - memcpy(&smm->sm, &ops, sizeof(smm->sm)); - for (i = old_len; !r && i < smm->begin; i++) - r = sm_ll_inc(&smm->ll, i, &ev); + do { + for (i = old_len; !r && i < smm->begin; i++) { + r = sm_ll_inc(&smm->ll, i, &ev); + if (r) + goto out; + } + old_len = smm->begin; + + r = sm_ll_commit(&smm->ll); + if (r) + goto out; + + } while (old_len != smm->begin); +out: + /* + * Switch back to normal behaviour. + */ + memcpy(sm, &ops, sizeof(*sm)); return r; } @@ -653,7 +742,7 @@ smm->begin = superblock + 1; smm->recursion_count = 0; smm->allocated_this_transaction = 0; - smm->nr_uncommitted = 0; + brb_init(&smm->uncommitted); threshold_init(&smm->threshold); memcpy(&smm->sm, &bootstrap_ops, sizeof(smm->sm)); @@ -695,7 +784,7 @@ smm->begin = 0; smm->recursion_count = 0; smm->allocated_this_transaction = 0; - smm->nr_uncommitted = 0; + brb_init(&smm->uncommitted); threshold_init(&smm->threshold); memcpy(&smm->old_ll, &smm->ll, sizeof(smm->old_ll)); --- linux-3.13.0.orig/drivers/md/persistent-data/dm-transaction-manager.c +++ linux-3.13.0/drivers/md/persistent-data/dm-transaction-manager.c @@ -154,7 +154,7 @@ if (r < 0) return r; - return 0; + return dm_bm_flush(tm->bm); } EXPORT_SYMBOL_GPL(dm_tm_pre_commit); @@ -164,8 +164,9 @@ return -EWOULDBLOCK; wipe_shadow_table(tm); + dm_bm_unlock(root); - return dm_bm_flush_and_unlock(tm->bm, root); + return dm_bm_flush(tm->bm); } EXPORT_SYMBOL_GPL(dm_tm_commit); --- linux-3.13.0.orig/drivers/md/persistent-data/dm-transaction-manager.h +++ linux-3.13.0/drivers/md/persistent-data/dm-transaction-manager.h @@ -38,18 +38,17 @@ /* * We use a 2-phase commit here. * - * i) In the first phase the block manager is told to start flushing, and - * the changes to the space map are written to disk. You should interrogate - * your particular space map to get detail of its root node etc. to be - * included in your superblock. + * i) Make all changes for the transaction *except* for the superblock. + * Then call dm_tm_pre_commit() to flush them to disk. * - * ii) @root will be committed last. You shouldn't use more than the - * first 512 bytes of @root if you wish the transaction to survive a power - * failure. You *must* have a write lock held on @root for both stage (i) - * and (ii). The commit will drop the write lock. + * ii) Lock your superblock. Update. Then call dm_tm_commit() which will + * unlock the superblock and flush it. No other blocks should be updated + * during this period. Care should be taken to never unlock a partially + * updated superblock; perform any operations that could fail *before* you + * take the superblock lock. */ int dm_tm_pre_commit(struct dm_transaction_manager *tm); -int dm_tm_commit(struct dm_transaction_manager *tm, struct dm_block *root); +int dm_tm_commit(struct dm_transaction_manager *tm, struct dm_block *superblock); /* * These methods are the only way to get hold of a writeable block. --- linux-3.13.0.orig/drivers/md/raid1.c +++ linux-3.13.0/drivers/md/raid1.c @@ -97,6 +97,7 @@ struct pool_info *pi = data; struct r1bio *r1_bio; struct bio *bio; + int need_pages; int i, j; r1_bio = r1bio_pool_alloc(gfp_flags, pi); @@ -119,15 +120,15 @@ * RESYNC_PAGES for each bio. */ if (test_bit(MD_RECOVERY_REQUESTED, &pi->mddev->recovery)) - j = pi->raid_disks; + need_pages = pi->raid_disks; else - j = 1; - while(j--) { + need_pages = 1; + for (j = 0; j < need_pages; j++) { bio = r1_bio->bios[j]; bio->bi_vcnt = RESYNC_PAGES; if (bio_alloc_pages(bio, gfp_flags)) - goto out_free_bio; + goto out_free_pages; } /* If not user-requests, copy the page pointers to all bios */ if (!test_bit(MD_RECOVERY_REQUESTED, &pi->mddev->recovery)) { @@ -141,6 +142,14 @@ return r1_bio; +out_free_pages: + while (--j >= 0) { + struct bio_vec *bv; + + bio_for_each_segment_all(bv, r1_bio->bios[j], i) + __free_page(bv->bv_page); + } + out_free_bio: while (++j < pi->raid_disks) bio_put(r1_bio->bios[j]); @@ -1952,11 +1961,15 @@ for (i = 0; i < conf->raid_disks * 2; i++) { int j; int size; + int uptodate; struct bio *b = r1_bio->bios[i]; if (b->bi_end_io != end_sync_read) continue; - /* fixup the bio for reuse */ + /* fixup the bio for reuse, but preserve BIO_UPTODATE */ + uptodate = test_bit(BIO_UPTODATE, &b->bi_flags); bio_reset(b); + if (!uptodate) + clear_bit(BIO_UPTODATE, &b->bi_flags); b->bi_vcnt = vcnt; b->bi_size = r1_bio->sectors << 9; b->bi_sector = r1_bio->sector + @@ -1989,11 +2002,14 @@ int j; struct bio *pbio = r1_bio->bios[primary]; struct bio *sbio = r1_bio->bios[i]; + int uptodate = test_bit(BIO_UPTODATE, &sbio->bi_flags); if (sbio->bi_end_io != end_sync_read) continue; + /* Now we can 'fixup' the BIO_UPTODATE flag */ + set_bit(BIO_UPTODATE, &sbio->bi_flags); - if (test_bit(BIO_UPTODATE, &sbio->bi_flags)) { + if (uptodate) { for (j = vcnt; j-- ; ) { struct page *p, *s; p = pbio->bi_io_vec[j].bv_page; @@ -2008,7 +2024,7 @@ if (j >= 0) atomic64_add(r1_bio->sectors, &mddev->resync_mismatches); if (j < 0 || (test_bit(MD_RECOVERY_CHECK, &mddev->recovery) - && test_bit(BIO_UPTODATE, &sbio->bi_flags))) { + && uptodate)) { /* No need to write to this device. */ sbio->bi_end_io = NULL; rdev_dec_pending(conf->mirrors[i].rdev, mddev); --- linux-3.13.0.orig/drivers/md/raid5.c +++ linux-3.13.0/drivers/md/raid5.c @@ -675,8 +675,10 @@ || !conf->inactive_blocked), *(conf->hash_locks + hash)); conf->inactive_blocked = 0; - } else + } else { init_stripe(sh, sector, previous); + atomic_inc(&sh->count); + } } else { spin_lock(&conf->device_lock); if (atomic_read(&sh->count)) { @@ -695,13 +697,11 @@ sh->group = NULL; } } + atomic_inc(&sh->count); spin_unlock(&conf->device_lock); } } while (sh == NULL); - if (sh) - atomic_inc(&sh->count); - spin_unlock_irq(conf->hash_locks + hash); return sh; } @@ -2111,6 +2111,7 @@ set_bit(R5_MadeGoodRepl, &sh->dev[i].flags); } else { if (!uptodate) { + set_bit(STRIPE_DEGRADED, &sh->state); set_bit(WriteErrorSeen, &rdev->flags); set_bit(R5_WriteError, &sh->dev[i].flags); if (!test_and_set_bit(WantReplacement, &rdev->flags)) @@ -5511,23 +5512,43 @@ return sectors * (raid_disks - conf->max_degraded); } +static void free_scratch_buffer(struct r5conf *conf, struct raid5_percpu *percpu) +{ + safe_put_page(percpu->spare_page); + kfree(percpu->scribble); + percpu->spare_page = NULL; + percpu->scribble = NULL; +} + +static int alloc_scratch_buffer(struct r5conf *conf, struct raid5_percpu *percpu) +{ + if (conf->level == 6 && !percpu->spare_page) + percpu->spare_page = alloc_page(GFP_KERNEL); + if (!percpu->scribble) + percpu->scribble = kmalloc(conf->scribble_len, GFP_KERNEL); + + if (!percpu->scribble || (conf->level == 6 && !percpu->spare_page)) { + free_scratch_buffer(conf, percpu); + return -ENOMEM; + } + + return 0; +} + static void raid5_free_percpu(struct r5conf *conf) { - struct raid5_percpu *percpu; unsigned long cpu; if (!conf->percpu) return; - get_online_cpus(); - for_each_possible_cpu(cpu) { - percpu = per_cpu_ptr(conf->percpu, cpu); - safe_put_page(percpu->spare_page); - kfree(percpu->scribble); - } #ifdef CONFIG_HOTPLUG_CPU unregister_cpu_notifier(&conf->cpu_notify); #endif + + get_online_cpus(); + for_each_possible_cpu(cpu) + free_scratch_buffer(conf, per_cpu_ptr(conf->percpu, cpu)); put_online_cpus(); free_percpu(conf->percpu); @@ -5554,15 +5575,7 @@ switch (action) { case CPU_UP_PREPARE: case CPU_UP_PREPARE_FROZEN: - if (conf->level == 6 && !percpu->spare_page) - percpu->spare_page = alloc_page(GFP_KERNEL); - if (!percpu->scribble) - percpu->scribble = kmalloc(conf->scribble_len, GFP_KERNEL); - - if (!percpu->scribble || - (conf->level == 6 && !percpu->spare_page)) { - safe_put_page(percpu->spare_page); - kfree(percpu->scribble); + if (alloc_scratch_buffer(conf, percpu)) { pr_err("%s: failed memory allocation for cpu%ld\n", __func__, cpu); return notifier_from_errno(-ENOMEM); @@ -5570,10 +5583,7 @@ break; case CPU_DEAD: case CPU_DEAD_FROZEN: - safe_put_page(percpu->spare_page); - kfree(percpu->scribble); - percpu->spare_page = NULL; - percpu->scribble = NULL; + free_scratch_buffer(conf, per_cpu_ptr(conf->percpu, cpu)); break; default: break; @@ -5585,40 +5595,29 @@ static int raid5_alloc_percpu(struct r5conf *conf) { unsigned long cpu; - struct page *spare_page; - struct raid5_percpu __percpu *allcpus; - void *scribble; - int err; + int err = 0; - allcpus = alloc_percpu(struct raid5_percpu); - if (!allcpus) + conf->percpu = alloc_percpu(struct raid5_percpu); + if (!conf->percpu) return -ENOMEM; - conf->percpu = allcpus; + +#ifdef CONFIG_HOTPLUG_CPU + conf->cpu_notify.notifier_call = raid456_cpu_notify; + conf->cpu_notify.priority = 0; + err = register_cpu_notifier(&conf->cpu_notify); + if (err) + return err; +#endif get_online_cpus(); - err = 0; for_each_present_cpu(cpu) { - if (conf->level == 6) { - spare_page = alloc_page(GFP_KERNEL); - if (!spare_page) { - err = -ENOMEM; - break; - } - per_cpu_ptr(conf->percpu, cpu)->spare_page = spare_page; - } - scribble = kmalloc(conf->scribble_len, GFP_KERNEL); - if (!scribble) { - err = -ENOMEM; + err = alloc_scratch_buffer(conf, per_cpu_ptr(conf->percpu, cpu)); + if (err) { + pr_err("%s: failed memory allocation for cpu%ld\n", + __func__, cpu); break; } - per_cpu_ptr(conf->percpu, cpu)->scribble = scribble; } -#ifdef CONFIG_HOTPLUG_CPU - conf->cpu_notify.notifier_call = raid456_cpu_notify; - conf->cpu_notify.priority = 0; - if (err == 0) - err = register_cpu_notifier(&conf->cpu_notify); -#endif put_online_cpus(); return err; --- linux-3.13.0.orig/drivers/media/dvb-core/dvb-usb-ids.h +++ linux-3.13.0/drivers/media/dvb-core/dvb-usb-ids.h @@ -239,6 +239,7 @@ #define USB_PID_AVERMEDIA_A835B_4835 0x4835 #define USB_PID_AVERMEDIA_1867 0x1867 #define USB_PID_AVERMEDIA_A867 0xa867 +#define USB_PID_AVERMEDIA_H335 0x0335 #define USB_PID_AVERMEDIA_TWINSTAR 0x0825 #define USB_PID_TECHNOTREND_CONNECT_S2400 0x3006 #define USB_PID_TECHNOTREND_CONNECT_S2400_8KEEPROM 0x3009 --- linux-3.13.0.orig/drivers/media/dvb-frontends/cx24117.c +++ linux-3.13.0/drivers/media/dvb-frontends/cx24117.c @@ -1166,7 +1166,7 @@ switch (demod) { case 0: - dev_err(&state->priv->i2c->dev, + dev_err(&i2c->dev, "%s: Error attaching frontend %d\n", KBUILD_MODNAME, demod); goto error1; --- linux-3.13.0.orig/drivers/media/dvb-frontends/dib8000.c +++ linux-3.13.0/drivers/media/dvb-frontends/dib8000.c @@ -157,15 +157,10 @@ return ret; } -static u16 dib8000_read_word(struct dib8000_state *state, u16 reg) +static u16 __dib8000_read_word(struct dib8000_state *state, u16 reg) { u16 ret; - if (mutex_lock_interruptible(&state->i2c_buffer_lock) < 0) { - dprintk("could not acquire lock"); - return 0; - } - state->i2c_write_buffer[0] = reg >> 8; state->i2c_write_buffer[1] = reg & 0xff; @@ -183,6 +178,21 @@ dprintk("i2c read error on %d", reg); ret = (state->i2c_read_buffer[0] << 8) | state->i2c_read_buffer[1]; + + return ret; +} + +static u16 dib8000_read_word(struct dib8000_state *state, u16 reg) +{ + u16 ret; + + if (mutex_lock_interruptible(&state->i2c_buffer_lock) < 0) { + dprintk("could not acquire lock"); + return 0; + } + + ret = __dib8000_read_word(state, reg); + mutex_unlock(&state->i2c_buffer_lock); return ret; @@ -192,8 +202,15 @@ { u16 rw[2]; - rw[0] = dib8000_read_word(state, reg + 0); - rw[1] = dib8000_read_word(state, reg + 1); + if (mutex_lock_interruptible(&state->i2c_buffer_lock) < 0) { + dprintk("could not acquire lock"); + return 0; + } + + rw[0] = __dib8000_read_word(state, reg + 0); + rw[1] = __dib8000_read_word(state, reg + 1); + + mutex_unlock(&state->i2c_buffer_lock); return ((rw[0] << 16) | (rw[1])); } @@ -2445,7 +2462,8 @@ if (state->revision == 0x8090) internal = dib8000_read32(state, 23) / 1000; - if (state->autosearch_state == AS_SEARCHING_FFT) { + if ((state->revision >= 0x8002) && + (state->autosearch_state == AS_SEARCHING_FFT)) { dib8000_write_word(state, 37, 0x0065); /* P_ctrl_pha_off_max default values */ dib8000_write_word(state, 116, 0x0000); /* P_ana_gain to 0 */ @@ -2481,7 +2499,8 @@ dib8000_write_word(state, 770, (dib8000_read_word(state, 770) & 0xdfff) | (1 << 13)); /* P_restart_ccg = 1 */ dib8000_write_word(state, 770, (dib8000_read_word(state, 770) & 0xdfff) | (0 << 13)); /* P_restart_ccg = 0 */ dib8000_write_word(state, 0, (dib8000_read_word(state, 0) & 0x7ff) | (0 << 15) | (1 << 13)); /* P_restart_search = 0; */ - } else if (state->autosearch_state == AS_SEARCHING_GUARD) { + } else if ((state->revision >= 0x8002) && + (state->autosearch_state == AS_SEARCHING_GUARD)) { c->transmission_mode = TRANSMISSION_MODE_8K; c->guard_interval = GUARD_INTERVAL_1_8; c->inversion = 0; @@ -2583,7 +2602,8 @@ struct dib8000_state *state = fe->demodulator_priv; u16 irq_pending = dib8000_read_word(state, 1284); - if (state->autosearch_state == AS_SEARCHING_FFT) { + if ((state->revision >= 0x8002) && + (state->autosearch_state == AS_SEARCHING_FFT)) { if (irq_pending & 0x1) { dprintk("dib8000_autosearch_irq: max correlation result available"); return 3; --- linux-3.13.0.orig/drivers/media/dvb-frontends/m88rs2000.c +++ linux-3.13.0/drivers/media/dvb-frontends/m88rs2000.c @@ -110,28 +110,94 @@ return b1[0]; } +static u32 m88rs2000_get_mclk(struct dvb_frontend *fe) +{ + struct m88rs2000_state *state = fe->demodulator_priv; + u32 mclk; + u8 reg; + /* Must not be 0x00 or 0xff */ + reg = m88rs2000_readreg(state, 0x86); + if (!reg || reg == 0xff) + return 0; + + reg /= 2; + reg += 1; + + mclk = (u32)(reg * RS2000_FE_CRYSTAL_KHZ + 28 / 2) / 28; + + return mclk; +} + +static int m88rs2000_set_carrieroffset(struct dvb_frontend *fe, s16 offset) +{ + struct m88rs2000_state *state = fe->demodulator_priv; + u32 mclk; + s32 tmp; + u8 reg; + int ret; + + mclk = m88rs2000_get_mclk(fe); + if (!mclk) + return -EINVAL; + + tmp = (offset * 4096 + (s32)mclk / 2) / (s32)mclk; + if (tmp < 0) + tmp += 4096; + + /* Carrier Offset */ + ret = m88rs2000_writereg(state, 0x9c, (u8)(tmp >> 4)); + + reg = m88rs2000_readreg(state, 0x9d); + reg &= 0xf; + reg |= (u8)(tmp & 0xf) << 4; + + ret |= m88rs2000_writereg(state, 0x9d, reg); + + return ret; +} + static int m88rs2000_set_symbolrate(struct dvb_frontend *fe, u32 srate) { struct m88rs2000_state *state = fe->demodulator_priv; int ret; - u32 temp; + u64 temp; + u32 mclk; u8 b[3]; if ((srate < 1000000) || (srate > 45000000)) return -EINVAL; + mclk = m88rs2000_get_mclk(fe); + if (!mclk) + return -EINVAL; + temp = srate / 1000; - temp *= 11831; - temp /= 68; - temp -= 3; + temp *= 1 << 24; + + do_div(temp, mclk); b[0] = (u8) (temp >> 16) & 0xff; b[1] = (u8) (temp >> 8) & 0xff; b[2] = (u8) temp & 0xff; + ret = m88rs2000_writereg(state, 0x93, b[2]); ret |= m88rs2000_writereg(state, 0x94, b[1]); ret |= m88rs2000_writereg(state, 0x95, b[0]); + if (srate > 10000000) + ret |= m88rs2000_writereg(state, 0xa0, 0x20); + else + ret |= m88rs2000_writereg(state, 0xa0, 0x60); + + ret |= m88rs2000_writereg(state, 0xa1, 0xe0); + + if (srate > 12000000) + ret |= m88rs2000_writereg(state, 0xa3, 0x20); + else if (srate > 2800000) + ret |= m88rs2000_writereg(state, 0xa3, 0x98); + else + ret |= m88rs2000_writereg(state, 0xa3, 0x90); + deb_info("m88rs2000: m88rs2000_set_symbolrate\n"); return ret; } @@ -261,8 +327,6 @@ struct inittab fe_reset[] = { {DEMOD_WRITE, 0x00, 0x01}, - {DEMOD_WRITE, 0xf1, 0xbf}, - {DEMOD_WRITE, 0x00, 0x01}, {DEMOD_WRITE, 0x20, 0x81}, {DEMOD_WRITE, 0x21, 0x80}, {DEMOD_WRITE, 0x10, 0x33}, @@ -305,9 +369,6 @@ {DEMOD_WRITE, 0x9b, 0x64}, {DEMOD_WRITE, 0x9e, 0x00}, {DEMOD_WRITE, 0x9f, 0xf8}, - {DEMOD_WRITE, 0xa0, 0x20}, - {DEMOD_WRITE, 0xa1, 0xe0}, - {DEMOD_WRITE, 0xa3, 0x38}, {DEMOD_WRITE, 0x98, 0xff}, {DEMOD_WRITE, 0xc0, 0x0f}, {DEMOD_WRITE, 0x89, 0x01}, @@ -540,9 +601,8 @@ struct dtv_frontend_properties *c = &fe->dtv_property_cache; fe_status_t status; int i, ret = 0; - s32 tmp; u32 tuner_freq; - u16 offset = 0; + s16 offset = 0; u8 reg; state->no_lock_count = 0; @@ -567,29 +627,26 @@ if (ret < 0) return -ENODEV; - offset = tuner_freq - c->frequency; - - /* calculate offset assuming 96000kHz*/ - tmp = offset; - tmp *= 65536; + offset = (s16)((s32)tuner_freq - c->frequency); - tmp = (2 * tmp + 96000) / (2 * 96000); - if (tmp < 0) - tmp += 65536; - - offset = tmp & 0xffff; + /* default mclk value 96.4285 * 2 * 1000 = 192857 */ + if (((c->frequency % 192857) >= (192857 - 3000)) || + (c->frequency % 192857) <= 3000) + ret = m88rs2000_writereg(state, 0x86, 0xc2); + else + ret = m88rs2000_writereg(state, 0x86, 0xc6); - ret = m88rs2000_writereg(state, 0x9a, 0x30); - /* Unknown usually 0xc6 sometimes 0xc1 */ - reg = m88rs2000_readreg(state, 0x86); - ret |= m88rs2000_writereg(state, 0x86, reg); - /* Offset lower nibble always 0 */ - ret |= m88rs2000_writereg(state, 0x9c, (offset >> 8)); - ret |= m88rs2000_writereg(state, 0x9d, offset & 0xf0); + ret |= m88rs2000_set_carrieroffset(fe, offset); + if (ret < 0) + return -ENODEV; + /* Reset demod by symbol rate */ + if (c->symbol_rate > 27500000) + ret = m88rs2000_writereg(state, 0xf1, 0xa4); + else + ret = m88rs2000_writereg(state, 0xf1, 0xbf); - /* Reset Demod */ - ret = m88rs2000_tab_set(state, fe_reset); + ret |= m88rs2000_tab_set(state, fe_reset); if (ret < 0) return -ENODEV; @@ -655,6 +712,22 @@ return 0; } +static int m88rs2000_get_tune_settings(struct dvb_frontend *fe, + struct dvb_frontend_tune_settings *tune) +{ + struct dtv_frontend_properties *c = &fe->dtv_property_cache; + + if (c->symbol_rate > 3000000) + tune->min_delay_ms = 2000; + else + tune->min_delay_ms = 3000; + + tune->step_size = c->symbol_rate / 16000; + tune->max_drift = c->symbol_rate / 2000; + + return 0; +} + static int m88rs2000_i2c_gate_ctrl(struct dvb_frontend *fe, int enable) { struct m88rs2000_state *state = fe->demodulator_priv; @@ -686,7 +759,7 @@ .symbol_rate_tolerance = 500, /* ppm */ .caps = FE_CAN_FEC_1_2 | FE_CAN_FEC_2_3 | FE_CAN_FEC_3_4 | FE_CAN_FEC_5_6 | FE_CAN_FEC_7_8 | - FE_CAN_QPSK | + FE_CAN_QPSK | FE_CAN_INVERSION_AUTO | FE_CAN_FEC_AUTO }, @@ -706,6 +779,7 @@ .set_frontend = m88rs2000_set_frontend, .get_frontend = m88rs2000_get_frontend, + .get_tune_settings = m88rs2000_get_tune_settings, }; struct dvb_frontend *m88rs2000_attach(const struct m88rs2000_config *config, --- linux-3.13.0.orig/drivers/media/dvb-frontends/m88rs2000.h +++ linux-3.13.0/drivers/media/dvb-frontends/m88rs2000.h @@ -53,6 +53,8 @@ } #endif /* CONFIG_DVB_M88RS2000 */ +#define RS2000_FE_CRYSTAL_KHZ 27000 + enum { DEMOD_WRITE = 0x1, WRITE_DELAY = 0x10, --- linux-3.13.0.orig/drivers/media/dvb-frontends/nxt200x.c +++ linux-3.13.0/drivers/media/dvb-frontends/nxt200x.c @@ -40,7 +40,7 @@ #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt /* Max transfer size done by I2C transfer functions */ -#define MAX_XFER_SIZE 64 +#define MAX_XFER_SIZE 256 #define NXT2002_DEFAULT_FIRMWARE "dvb-fe-nxt2002.fw" #define NXT2004_DEFAULT_FIRMWARE "dvb-fe-nxt2004.fw" --- linux-3.13.0.orig/drivers/media/pci/cx18/cx18-driver.c +++ linux-3.13.0/drivers/media/pci/cx18/cx18-driver.c @@ -327,13 +327,16 @@ struct i2c_client *c; u8 eedata[256]; + memset(tv, 0, sizeof(*tv)); + c = kzalloc(sizeof(*c), GFP_KERNEL); + if (!c) + return; strlcpy(c->name, "cx18 tveeprom tmp", sizeof(c->name)); c->adapter = &cx->i2c_adap[0]; c->addr = 0xa0 >> 1; - memset(tv, 0, sizeof(*tv)); if (tveeprom_read(c, eedata, sizeof(eedata))) goto ret; --- linux-3.13.0.orig/drivers/media/platform/omap3isp/isppreview.c +++ linux-3.13.0/drivers/media/platform/omap3isp/isppreview.c @@ -1079,6 +1079,7 @@ */ static void preview_config_input_size(struct isp_prev_device *prev, u32 active) { + const struct v4l2_mbus_framefmt *format = &prev->formats[PREV_PAD_SINK]; struct isp_device *isp = to_isp_device(prev); unsigned int sph = prev->crop.left; unsigned int eph = prev->crop.left + prev->crop.width - 1; @@ -1086,6 +1087,14 @@ unsigned int elv = prev->crop.top + prev->crop.height - 1; u32 features; + if (format->code != V4L2_MBUS_FMT_Y8_1X8 && + format->code != V4L2_MBUS_FMT_Y10_1X10) { + sph -= 2; + eph += 2; + slv -= 2; + elv += 2; + } + features = (prev->params.params[0].features & active) | (prev->params.params[1].features & ~active); --- linux-3.13.0.orig/drivers/media/platform/s5p-mfc/s5p_mfc.c +++ linux-3.13.0/drivers/media/platform/s5p-mfc/s5p_mfc.c @@ -177,21 +177,6 @@ mutex_unlock(&dev->mfc_mutex); } -static enum s5p_mfc_node_type s5p_mfc_get_node_type(struct file *file) -{ - struct video_device *vdev = video_devdata(file); - - if (!vdev) { - mfc_err("failed to get video_device"); - return MFCNODE_INVALID; - } - if (vdev->index == 0) - return MFCNODE_DECODER; - else if (vdev->index == 1) - return MFCNODE_ENCODER; - return MFCNODE_INVALID; -} - static void s5p_mfc_clear_int_flags(struct s5p_mfc_dev *dev) { mfc_write(dev, 0, S5P_FIMV_RISC_HOST_INT); @@ -705,6 +690,7 @@ /* Open an MFC node */ static int s5p_mfc_open(struct file *file) { + struct video_device *vdev = video_devdata(file); struct s5p_mfc_dev *dev = video_drvdata(file); struct s5p_mfc_ctx *ctx = NULL; struct vb2_queue *q; @@ -742,7 +728,7 @@ /* Mark context as idle */ clear_work_bit_irqsave(ctx); dev->ctx[ctx->num] = ctx; - if (s5p_mfc_get_node_type(file) == MFCNODE_DECODER) { + if (vdev == dev->vfd_dec) { ctx->type = MFCINST_DECODER; ctx->c_ops = get_dec_codec_ops(); s5p_mfc_dec_init(ctx); @@ -752,7 +738,7 @@ mfc_err("Failed to setup mfc controls\n"); goto err_ctrls_setup; } - } else if (s5p_mfc_get_node_type(file) == MFCNODE_ENCODER) { + } else if (vdev == dev->vfd_enc) { ctx->type = MFCINST_ENCODER; ctx->c_ops = get_enc_codec_ops(); /* only for encoder */ @@ -797,10 +783,10 @@ q = &ctx->vq_dst; q->type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE; q->drv_priv = &ctx->fh; - if (s5p_mfc_get_node_type(file) == MFCNODE_DECODER) { + if (vdev == dev->vfd_dec) { q->io_modes = VB2_MMAP; q->ops = get_dec_queue_ops(); - } else if (s5p_mfc_get_node_type(file) == MFCNODE_ENCODER) { + } else if (vdev == dev->vfd_enc) { q->io_modes = VB2_MMAP | VB2_USERPTR; q->ops = get_enc_queue_ops(); } else { @@ -819,10 +805,10 @@ q->type = V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE; q->io_modes = VB2_MMAP; q->drv_priv = &ctx->fh; - if (s5p_mfc_get_node_type(file) == MFCNODE_DECODER) { + if (vdev == dev->vfd_dec) { q->io_modes = VB2_MMAP; q->ops = get_dec_queue_ops(); - } else if (s5p_mfc_get_node_type(file) == MFCNODE_ENCODER) { + } else if (vdev == dev->vfd_enc) { q->io_modes = VB2_MMAP | VB2_USERPTR; q->ops = get_enc_queue_ops(); } else { --- linux-3.13.0.orig/drivers/media/platform/s5p-mfc/s5p_mfc_common.h +++ linux-3.13.0/drivers/media/platform/s5p-mfc/s5p_mfc_common.h @@ -115,15 +115,6 @@ }; /** - * enum s5p_mfc_node_type - The type of an MFC device node. - */ -enum s5p_mfc_node_type { - MFCNODE_INVALID = -1, - MFCNODE_DECODER = 0, - MFCNODE_ENCODER = 1, -}; - -/** * enum s5p_mfc_inst_type - The type of an MFC instance. */ enum s5p_mfc_inst_type { --- linux-3.13.0.orig/drivers/media/usb/dvb-usb-v2/af9035.c +++ linux-3.13.0/drivers/media/usb/dvb-usb-v2/af9035.c @@ -1539,6 +1539,8 @@ &af9035_props, "TerraTec Cinergy T Stick Dual RC (rev. 2)", NULL) }, { DVB_USB_DEVICE(USB_VID_LEADTEK, 0x6a05, &af9035_props, "Leadtek WinFast DTV Dongle Dual", NULL) }, + { DVB_USB_DEVICE(USB_VID_HAUPPAUGE, 0xf900, + &af9035_props, "Hauppauge WinTV-MiniStick 2", NULL) }, { } }; MODULE_DEVICE_TABLE(usb, af9035_id_table); --- linux-3.13.0.orig/drivers/media/usb/dvb-usb-v2/anysee.c +++ linux-3.13.0/drivers/media/usb/dvb-usb-v2/anysee.c @@ -442,6 +442,7 @@ * IOD[0] ZL10353 1=enabled * IOE[0] tuner 0=enabled * tuner is behind ZL10353 I2C-gate + * tuner is behind TDA10023 I2C-gate * * E7 TC VID=1c73 PID=861f HW=18 FW=0.7 AMTCI=0.5 "anysee-E7TC(LP)" * PCB: 508TC (rev0.6) @@ -956,7 +957,7 @@ if (fe && adap->fe[1]) { /* attach tuner for 2nd FE */ - fe = dvb_attach(dvb_pll_attach, adap->fe[0], + fe = dvb_attach(dvb_pll_attach, adap->fe[1], (0xc0 >> 1), &d->i2c_adap, DVB_PLL_SAMSUNG_DTOS403IH102A); } --- linux-3.13.0.orig/drivers/media/usb/dvb-usb-v2/it913x.c +++ linux-3.13.0/drivers/media/usb/dvb-usb-v2/it913x.c @@ -799,6 +799,9 @@ { DVB_USB_DEVICE(USB_VID_KWORLD_2, USB_PID_CTVDIGDUAL_V2, &it913x_properties, "Digital Dual TV Receiver CTVDIGDUAL_V2", RC_MAP_IT913X_V1) }, + { DVB_USB_DEVICE(USB_VID_AVERMEDIA, USB_PID_AVERMEDIA_H335, + &it913x_properties, "Avermedia H335", + RC_MAP_IT913X_V2) }, {} /* Terminating entry */ }; --- linux-3.13.0.orig/drivers/media/usb/dvb-usb-v2/mxl111sf-tuner.h +++ linux-3.13.0/drivers/media/usb/dvb-usb-v2/mxl111sf-tuner.h @@ -68,7 +68,7 @@ #else static inline struct dvb_frontend *mxl111sf_tuner_attach(struct dvb_frontend *fe, - struct mxl111sf_state *mxl_state + struct mxl111sf_state *mxl_state, struct mxl111sf_tuner_config *cfg) { printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__); --- linux-3.13.0.orig/drivers/media/usb/dvb-usb-v2/mxl111sf.c +++ linux-3.13.0/drivers/media/usb/dvb-usb-v2/mxl111sf.c @@ -105,7 +105,7 @@ ret = -EINVAL; } - pr_debug("R: (0x%02x, 0x%02x)\n", addr, *data); + pr_debug("R: (0x%02x, 0x%02x)\n", addr, buf[1]); fail: return ret; } --- linux-3.13.0.orig/drivers/media/usb/dvb-usb/cxusb.c +++ linux-3.13.0/drivers/media/usb/dvb-usb/cxusb.c @@ -149,6 +149,7 @@ int num) { struct dvb_usb_device *d = i2c_get_adapdata(adap); + int ret; int i; if (mutex_lock_interruptible(&d->i2c_mutex) < 0) @@ -173,7 +174,8 @@ if (1 + msg[i].len > sizeof(ibuf)) { warn("i2c rd: len=%d is too big!\n", msg[i].len); - return -EOPNOTSUPP; + ret = -EOPNOTSUPP; + goto unlock; } obuf[0] = 0; obuf[1] = msg[i].len; @@ -193,12 +195,14 @@ if (3 + msg[i].len > sizeof(obuf)) { warn("i2c wr: len=%d is too big!\n", msg[i].len); - return -EOPNOTSUPP; + ret = -EOPNOTSUPP; + goto unlock; } if (1 + msg[i + 1].len > sizeof(ibuf)) { warn("i2c rd: len=%d is too big!\n", msg[i + 1].len); - return -EOPNOTSUPP; + ret = -EOPNOTSUPP; + goto unlock; } obuf[0] = msg[i].len; obuf[1] = msg[i+1].len; @@ -223,7 +227,8 @@ if (2 + msg[i].len > sizeof(obuf)) { warn("i2c wr: len=%d is too big!\n", msg[i].len); - return -EOPNOTSUPP; + ret = -EOPNOTSUPP; + goto unlock; } obuf[0] = msg[i].addr; obuf[1] = msg[i].len; @@ -237,8 +242,14 @@ } } + if (i == num) + ret = num; + else + ret = -EREMOTEIO; + +unlock: mutex_unlock(&d->i2c_mutex); - return i == num ? num : -EREMOTEIO; + return ret; } static u32 cxusb_i2c_func(struct i2c_adapter *adapter) --- linux-3.13.0.orig/drivers/media/usb/dvb-usb/dw2102.c +++ linux-3.13.0/drivers/media/usb/dvb-usb/dw2102.c @@ -301,6 +301,7 @@ static int dw2102_earda_i2c_transfer(struct i2c_adapter *adap, struct i2c_msg msg[], int num) { struct dvb_usb_device *d = i2c_get_adapdata(adap); + int ret; if (!d) return -ENODEV; @@ -316,7 +317,8 @@ if (2 + msg[1].len > sizeof(ibuf)) { warn("i2c rd: len=%d is too big!\n", msg[1].len); - return -EOPNOTSUPP; + ret = -EOPNOTSUPP; + goto unlock; } obuf[0] = msg[0].addr << 1; @@ -340,7 +342,8 @@ if (2 + msg[0].len > sizeof(obuf)) { warn("i2c wr: len=%d is too big!\n", msg[1].len); - return -EOPNOTSUPP; + ret = -EOPNOTSUPP; + goto unlock; } obuf[0] = msg[0].addr << 1; @@ -357,7 +360,8 @@ if (2 + msg[0].len > sizeof(obuf)) { warn("i2c wr: len=%d is too big!\n", msg[1].len); - return -EOPNOTSUPP; + ret = -EOPNOTSUPP; + goto unlock; } obuf[0] = msg[0].addr << 1; @@ -386,15 +390,17 @@ break; } + ret = num; +unlock: mutex_unlock(&d->i2c_mutex); - return num; + return ret; } static int dw2104_i2c_transfer(struct i2c_adapter *adap, struct i2c_msg msg[], int num) { struct dvb_usb_device *d = i2c_get_adapdata(adap); - int len, i, j; + int len, i, j, ret; if (!d) return -ENODEV; @@ -430,7 +436,8 @@ if (2 + msg[j].len > sizeof(ibuf)) { warn("i2c rd: len=%d is too big!\n", msg[j].len); - return -EOPNOTSUPP; + ret = -EOPNOTSUPP; + goto unlock; } dw210x_op_rw(d->udev, 0xc3, @@ -466,7 +473,8 @@ if (2 + msg[j].len > sizeof(obuf)) { warn("i2c wr: len=%d is too big!\n", msg[j].len); - return -EOPNOTSUPP; + ret = -EOPNOTSUPP; + goto unlock; } obuf[0] = msg[j].addr << 1; @@ -481,15 +489,18 @@ } } + ret = num; +unlock: mutex_unlock(&d->i2c_mutex); - return num; + return ret; } static int dw3101_i2c_transfer(struct i2c_adapter *adap, struct i2c_msg msg[], int num) { struct dvb_usb_device *d = i2c_get_adapdata(adap); + int ret; int i; if (!d) @@ -506,7 +517,8 @@ if (2 + msg[1].len > sizeof(ibuf)) { warn("i2c rd: len=%d is too big!\n", msg[1].len); - return -EOPNOTSUPP; + ret = -EOPNOTSUPP; + goto unlock; } obuf[0] = msg[0].addr << 1; obuf[1] = msg[0].len; @@ -530,7 +542,8 @@ if (2 + msg[0].len > sizeof(obuf)) { warn("i2c wr: len=%d is too big!\n", msg[0].len); - return -EOPNOTSUPP; + ret = -EOPNOTSUPP; + goto unlock; } obuf[0] = msg[0].addr << 1; obuf[1] = msg[0].len; @@ -556,9 +569,11 @@ msg[i].flags == 0 ? ">>>" : "<<<"); debug_dump(msg[i].buf, msg[i].len, deb_xfer); } + ret = num; +unlock: mutex_unlock(&d->i2c_mutex); - return num; + return ret; } static int s6x0_i2c_transfer(struct i2c_adapter *adap, struct i2c_msg msg[], @@ -566,7 +581,7 @@ { struct dvb_usb_device *d = i2c_get_adapdata(adap); struct usb_device *udev; - int len, i, j; + int len, i, j, ret; if (!d) return -ENODEV; @@ -618,7 +633,8 @@ if (msg[j].len > sizeof(ibuf)) { warn("i2c rd: len=%d is too big!\n", msg[j].len); - return -EOPNOTSUPP; + ret = -EOPNOTSUPP; + goto unlock; } dw210x_op_rw(d->udev, 0x91, 0, 0, @@ -652,7 +668,8 @@ if (2 + msg[j].len > sizeof(obuf)) { warn("i2c wr: len=%d is too big!\n", msg[j].len); - return -EOPNOTSUPP; + ret = -EOPNOTSUPP; + goto unlock; } obuf[0] = msg[j + 1].len; @@ -671,7 +688,8 @@ if (2 + msg[j].len > sizeof(obuf)) { warn("i2c wr: len=%d is too big!\n", msg[j].len); - return -EOPNOTSUPP; + ret = -EOPNOTSUPP; + goto unlock; } obuf[0] = msg[j].len + 1; obuf[1] = (msg[j].addr << 1); @@ -685,9 +703,11 @@ } } } + ret = num; +unlock: mutex_unlock(&d->i2c_mutex); - return num; + return ret; } static int su3000_i2c_transfer(struct i2c_adapter *adap, struct i2c_msg msg[], --- linux-3.13.0.orig/drivers/media/usb/em28xx/em28xx-dvb.c +++ linux-3.13.0/drivers/media/usb/em28xx/em28xx-dvb.c @@ -693,7 +693,8 @@ static int em28xx_pctv_290e_set_lna(struct dvb_frontend *fe) { struct dtv_frontend_properties *c = &fe->dtv_property_cache; - struct em28xx *dev = fe->dvb->priv; + struct em28xx_i2c_bus *i2c_bus = fe->dvb->priv; + struct em28xx *dev = i2c_bus->dev; #ifdef CONFIG_GPIOLIB struct em28xx_dvb *dvb = dev->dvb; int ret; --- linux-3.13.0.orig/drivers/media/usb/gspca/sn9c20x.c +++ linux-3.13.0/drivers/media/usb/gspca/sn9c20x.c @@ -2359,6 +2359,7 @@ {USB_DEVICE(0x045e, 0x00f4), SN9C20X(OV9650, 0x30, 0)}, {USB_DEVICE(0x145f, 0x013d), SN9C20X(OV7660, 0x21, 0)}, {USB_DEVICE(0x0458, 0x7029), SN9C20X(HV7131R, 0x11, 0)}, + {USB_DEVICE(0x0458, 0x7045), SN9C20X(MT9M112, 0x5d, LED_REVERSE)}, {USB_DEVICE(0x0458, 0x704a), SN9C20X(MT9M112, 0x5d, 0)}, {USB_DEVICE(0x0458, 0x704c), SN9C20X(MT9M112, 0x5d, 0)}, {USB_DEVICE(0xa168, 0x0610), SN9C20X(HV7131R, 0x11, 0)}, --- linux-3.13.0.orig/drivers/media/usb/uvc/uvc_driver.c +++ linux-3.13.0/drivers/media/usb/uvc/uvc_driver.c @@ -2210,6 +2210,15 @@ .bInterfaceSubClass = 1, .bInterfaceProtocol = 0, .driver_info = UVC_QUIRK_PROBE_DEF }, + /* Alienware X51*/ + { .match_flags = USB_DEVICE_ID_MATCH_DEVICE + | USB_DEVICE_ID_MATCH_INT_INFO, + .idVendor = 0x05a9, + .idProduct = 0x2643, + .bInterfaceClass = USB_CLASS_VIDEO, + .bInterfaceSubClass = 1, + .bInterfaceProtocol = 0, + .driver_info = UVC_QUIRK_PROBE_DEF }, /* Apple Built-In iSight */ { .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_INFO, --- linux-3.13.0.orig/drivers/media/usb/uvc/uvc_video.c +++ linux-3.13.0/drivers/media/usb/uvc/uvc_video.c @@ -1847,7 +1847,25 @@ if (!enable) { uvc_uninit_video(stream, 1); - usb_set_interface(stream->dev->udev, stream->intfnum, 0); + if (stream->intf->num_altsetting > 1) { + usb_set_interface(stream->dev->udev, + stream->intfnum, 0); + } else { + /* UVC doesn't specify how to inform a bulk-based device + * when the video stream is stopped. Windows sends a + * CLEAR_FEATURE(HALT) request to the video streaming + * bulk endpoint, mimic the same behaviour. + */ + unsigned int epnum = stream->header.bEndpointAddress + & USB_ENDPOINT_NUMBER_MASK; + unsigned int dir = stream->header.bEndpointAddress + & USB_ENDPOINT_DIR_MASK; + unsigned int pipe; + + pipe = usb_sndbulkpipe(stream->dev->udev, epnum) | dir; + usb_clear_halt(stream->dev->udev, pipe); + } + uvc_queue_enable(&stream->queue, 0); uvc_video_clock_cleanup(stream); return 0; --- linux-3.13.0.orig/drivers/media/v4l2-core/v4l2-dev.c +++ linux-3.13.0/drivers/media/v4l2-core/v4l2-dev.c @@ -872,8 +872,8 @@ /* Should not happen since we thought this minor was free */ WARN_ON(video_device[vdev->minor] != NULL); - video_device[vdev->minor] = vdev; vdev->index = get_index(vdev); + video_device[vdev->minor] = vdev; mutex_unlock(&videodev_lock); if (vdev->ioctl_ops) --- linux-3.13.0.orig/drivers/media/v4l2-core/videobuf-dma-contig.c +++ linux-3.13.0/drivers/media/v4l2-core/videobuf-dma-contig.c @@ -66,14 +66,11 @@ static void videobuf_vm_open(struct vm_area_struct *vma) { struct videobuf_mapping *map = vma->vm_private_data; - struct videobuf_queue *q = map->q; - dev_dbg(q->dev, "vm_open %p [count=%u,vma=%08lx-%08lx]\n", + dev_dbg(map->q->dev, "vm_open %p [count=%u,vma=%08lx-%08lx]\n", map, map->count, vma->vm_start, vma->vm_end); - videobuf_queue_lock(q); map->count++; - videobuf_queue_unlock(q); } static void videobuf_vm_close(struct vm_area_struct *vma) @@ -85,11 +82,12 @@ dev_dbg(q->dev, "vm_close %p [count=%u,vma=%08lx-%08lx]\n", map, map->count, vma->vm_start, vma->vm_end); - videobuf_queue_lock(q); - if (!--map->count) { + map->count--; + if (0 == map->count) { struct videobuf_dma_contig_memory *mem; dev_dbg(q->dev, "munmap %p q=%p\n", map, q); + videobuf_queue_lock(q); /* We need first to cancel streams, before unmapping */ if (q->streaming) @@ -128,8 +126,8 @@ kfree(map); + videobuf_queue_unlock(q); } - videobuf_queue_unlock(q); } static const struct vm_operations_struct videobuf_vm_ops = { --- linux-3.13.0.orig/drivers/media/v4l2-core/videobuf-dma-sg.c +++ linux-3.13.0/drivers/media/v4l2-core/videobuf-dma-sg.c @@ -338,14 +338,11 @@ static void videobuf_vm_open(struct vm_area_struct *vma) { struct videobuf_mapping *map = vma->vm_private_data; - struct videobuf_queue *q = map->q; dprintk(2, "vm_open %p [count=%d,vma=%08lx-%08lx]\n", map, map->count, vma->vm_start, vma->vm_end); - videobuf_queue_lock(q); map->count++; - videobuf_queue_unlock(q); } static void videobuf_vm_close(struct vm_area_struct *vma) @@ -358,9 +355,10 @@ dprintk(2, "vm_close %p [count=%d,vma=%08lx-%08lx]\n", map, map->count, vma->vm_start, vma->vm_end); - videobuf_queue_lock(q); - if (!--map->count) { + map->count--; + if (0 == map->count) { dprintk(1, "munmap %p q=%p\n", map, q); + videobuf_queue_lock(q); for (i = 0; i < VIDEO_MAX_FRAME; i++) { if (NULL == q->bufs[i]) continue; @@ -376,9 +374,9 @@ q->bufs[i]->baddr = 0; q->ops->buf_release(q, q->bufs[i]); } + videobuf_queue_unlock(q); kfree(map); } - videobuf_queue_unlock(q); return; } --- linux-3.13.0.orig/drivers/media/v4l2-core/videobuf-vmalloc.c +++ linux-3.13.0/drivers/media/v4l2-core/videobuf-vmalloc.c @@ -54,14 +54,11 @@ static void videobuf_vm_open(struct vm_area_struct *vma) { struct videobuf_mapping *map = vma->vm_private_data; - struct videobuf_queue *q = map->q; dprintk(2, "vm_open %p [count=%u,vma=%08lx-%08lx]\n", map, map->count, vma->vm_start, vma->vm_end); - videobuf_queue_lock(q); map->count++; - videobuf_queue_unlock(q); } static void videobuf_vm_close(struct vm_area_struct *vma) @@ -73,11 +70,12 @@ dprintk(2, "vm_close %p [count=%u,vma=%08lx-%08lx]\n", map, map->count, vma->vm_start, vma->vm_end); - videobuf_queue_lock(q); - if (!--map->count) { + map->count--; + if (0 == map->count) { struct videobuf_vmalloc_memory *mem; dprintk(1, "munmap %p q=%p\n", map, q); + videobuf_queue_lock(q); /* We need first to cancel streams, before unmapping */ if (q->streaming) @@ -116,8 +114,8 @@ kfree(map); + videobuf_queue_unlock(q); } - videobuf_queue_unlock(q); return; } --- linux-3.13.0.orig/drivers/mfd/88pm800.c +++ linux-3.13.0/drivers/mfd/88pm800.c @@ -571,7 +571,7 @@ ret = pm800_pages_init(chip); if (ret) { dev_err(&client->dev, "pm800_pages_init failed!\n"); - goto err_page_init; + goto err_device_init; } ret = device_800_init(chip, pdata); @@ -587,7 +587,6 @@ err_device_init: pm800_pages_exit(chip); -err_page_init: err_subchip_alloc: pm80x_deinit(); out_init: --- linux-3.13.0.orig/drivers/mfd/88pm860x-core.c +++ linux-3.13.0/drivers/mfd/88pm860x-core.c @@ -1179,12 +1179,18 @@ chip->companion_addr = pdata->companion_addr; chip->companion = i2c_new_dummy(chip->client->adapter, chip->companion_addr); + if (!chip->companion) { + dev_err(&client->dev, + "Failed to allocate I2C companion device\n"); + return -ENODEV; + } chip->regmap_companion = regmap_init_i2c(chip->companion, &pm860x_regmap_config); if (IS_ERR(chip->regmap_companion)) { ret = PTR_ERR(chip->regmap_companion); dev_err(&chip->companion->dev, "Failed to allocate register map: %d\n", ret); + i2c_unregister_device(chip->companion); return ret; } i2c_set_clientdata(chip->companion, chip); --- linux-3.13.0.orig/drivers/mfd/Kconfig +++ linux-3.13.0/drivers/mfd/Kconfig @@ -1173,9 +1173,6 @@ in various ST Microelectronics and ST-Ericsson embedded Nomadik series. -endmenu -endif - menu "Multimedia Capabilities Port drivers" depends on ARCH_SA1100 @@ -1206,3 +1203,6 @@ help Platform configuration infrastructure for the ARM Ltd. Versatile Express. + +endmenu +endif --- linux-3.13.0.orig/drivers/mfd/da9055-i2c.c +++ linux-3.13.0/drivers/mfd/da9055-i2c.c @@ -53,17 +53,25 @@ return 0; } +/* + * DO NOT change the device Ids. The naming is intentionally specific as both + * the PMIC and CODEC parts of this chip are instantiated separately as I2C + * devices (both have configurable I2C addresses, and are to all intents and + * purposes separate). As a result there are specific DA9055 ids for PMIC + * and CODEC, which must be different to operate together. + */ static struct i2c_device_id da9055_i2c_id[] = { - {"da9055", 0}, + {"da9055-pmic", 0}, { } }; +MODULE_DEVICE_TABLE(i2c, da9055_i2c_id); static struct i2c_driver da9055_i2c_driver = { .probe = da9055_i2c_probe, .remove = da9055_i2c_remove, .id_table = da9055_i2c_id, .driver = { - .name = "da9055", + .name = "da9055-pmic", .owner = THIS_MODULE, }, }; --- linux-3.13.0.orig/drivers/mfd/kempld-core.c +++ linux-3.13.0/drivers/mfd/kempld-core.c @@ -322,9 +322,12 @@ return -ENODEV; } - /* Release hardware mutex if aquired */ - if (!(index_reg & KEMPLD_MUTEX_KEY)) + /* Release hardware mutex if acquired */ + if (!(index_reg & KEMPLD_MUTEX_KEY)) { iowrite8(KEMPLD_MUTEX_KEY, pld->io_index); + /* PXT and COMe-cPC2 boards may require a second release */ + iowrite8(KEMPLD_MUTEX_KEY, pld->io_index); + } mutex_unlock(&pld->lock); --- linux-3.13.0.orig/drivers/mfd/max77686.c +++ linux-3.13.0/drivers/mfd/max77686.c @@ -104,7 +104,7 @@ max77686->irq_gpio = pdata->irq_gpio; max77686->irq = i2c->irq; - max77686->regmap = regmap_init_i2c(i2c, &max77686_regmap_config); + max77686->regmap = devm_regmap_init_i2c(i2c, &max77686_regmap_config); if (IS_ERR(max77686->regmap)) { ret = PTR_ERR(max77686->regmap); dev_err(max77686->dev, "Failed to allocate register map: %d\n", @@ -121,6 +121,10 @@ dev_info(max77686->dev, "device found\n"); max77686->rtc = i2c_new_dummy(i2c->adapter, I2C_ADDR_RTC); + if (!max77686->rtc) { + dev_err(max77686->dev, "Failed to allocate I2C device for RTC\n"); + return -ENODEV; + } i2c_set_clientdata(max77686->rtc, max77686); max77686_irq_init(max77686); --- linux-3.13.0.orig/drivers/mfd/max77693.c +++ linux-3.13.0/drivers/mfd/max77693.c @@ -142,9 +142,18 @@ dev_info(max77693->dev, "device ID: 0x%x\n", reg_data); max77693->muic = i2c_new_dummy(i2c->adapter, I2C_ADDR_MUIC); + if (!max77693->muic) { + dev_err(max77693->dev, "Failed to allocate I2C device for MUIC\n"); + return -ENODEV; + } i2c_set_clientdata(max77693->muic, max77693); max77693->haptic = i2c_new_dummy(i2c->adapter, I2C_ADDR_HAPTIC); + if (!max77693->haptic) { + dev_err(max77693->dev, "Failed to allocate I2C device for Haptic\n"); + ret = -ENODEV; + goto err_i2c_haptic; + } i2c_set_clientdata(max77693->haptic, max77693); /* @@ -178,8 +187,9 @@ max77693_irq_exit(max77693); err_irq: err_regmap_muic: - i2c_unregister_device(max77693->muic); i2c_unregister_device(max77693->haptic); +err_i2c_haptic: + i2c_unregister_device(max77693->muic); return ret; } --- linux-3.13.0.orig/drivers/mfd/max8925-i2c.c +++ linux-3.13.0/drivers/mfd/max8925-i2c.c @@ -181,9 +181,18 @@ mutex_init(&chip->io_lock); chip->rtc = i2c_new_dummy(chip->i2c->adapter, RTC_I2C_ADDR); + if (!chip->rtc) { + dev_err(chip->dev, "Failed to allocate I2C device for RTC\n"); + return -ENODEV; + } i2c_set_clientdata(chip->rtc, chip); chip->adc = i2c_new_dummy(chip->i2c->adapter, ADC_I2C_ADDR); + if (!chip->adc) { + dev_err(chip->dev, "Failed to allocate I2C device for ADC\n"); + i2c_unregister_device(chip->rtc); + return -ENODEV; + } i2c_set_clientdata(chip->adc, chip); device_init_wakeup(&client->dev, 1); --- linux-3.13.0.orig/drivers/mfd/max8997.c +++ linux-3.13.0/drivers/mfd/max8997.c @@ -218,10 +218,26 @@ mutex_init(&max8997->iolock); max8997->rtc = i2c_new_dummy(i2c->adapter, I2C_ADDR_RTC); + if (!max8997->rtc) { + dev_err(max8997->dev, "Failed to allocate I2C device for RTC\n"); + return -ENODEV; + } i2c_set_clientdata(max8997->rtc, max8997); + max8997->haptic = i2c_new_dummy(i2c->adapter, I2C_ADDR_HAPTIC); + if (!max8997->haptic) { + dev_err(max8997->dev, "Failed to allocate I2C device for Haptic\n"); + ret = -ENODEV; + goto err_i2c_haptic; + } i2c_set_clientdata(max8997->haptic, max8997); + max8997->muic = i2c_new_dummy(i2c->adapter, I2C_ADDR_MUIC); + if (!max8997->muic) { + dev_err(max8997->dev, "Failed to allocate I2C device for MUIC\n"); + ret = -ENODEV; + goto err_i2c_muic; + } i2c_set_clientdata(max8997->muic, max8997); pm_runtime_set_active(max8997->dev); @@ -248,7 +264,9 @@ err_mfd: mfd_remove_devices(max8997->dev); i2c_unregister_device(max8997->muic); +err_i2c_muic: i2c_unregister_device(max8997->haptic); +err_i2c_haptic: i2c_unregister_device(max8997->rtc); return ret; } --- linux-3.13.0.orig/drivers/mfd/max8998.c +++ linux-3.13.0/drivers/mfd/max8998.c @@ -215,6 +215,10 @@ mutex_init(&max8998->iolock); max8998->rtc = i2c_new_dummy(i2c->adapter, RTC_I2C_ADDR); + if (!max8998->rtc) { + dev_err(&i2c->dev, "Failed to allocate I2C device for RTC\n"); + return -ENODEV; + } i2c_set_clientdata(max8998->rtc, max8998); max8998_irq_init(max8998); --- linux-3.13.0.orig/drivers/mfd/sec-core.c +++ linux-3.13.0/drivers/mfd/sec-core.c @@ -280,6 +280,10 @@ } sec_pmic->rtc = i2c_new_dummy(i2c->adapter, RTC_I2C_ADDR); + if (!sec_pmic->rtc) { + dev_err(&i2c->dev, "Failed to allocate I2C for RTC\n"); + return -ENODEV; + } i2c_set_clientdata(sec_pmic->rtc, sec_pmic); sec_pmic->regmap_rtc = devm_regmap_init_i2c(sec_pmic->rtc, --- linux-3.13.0.orig/drivers/mfd/tps65910.c +++ linux-3.13.0/drivers/mfd/tps65910.c @@ -255,8 +255,10 @@ ret = regmap_add_irq_chip(tps65910->regmap, tps65910->chip_irq, IRQF_ONESHOT, pdata->irq_base, tps6591x_irqs_chip, &tps65910->irq_data); - if (ret < 0) + if (ret < 0) { dev_warn(tps65910->dev, "Failed to add irq_chip %d\n", ret); + tps65910->chip_irq = 0; + } return ret; } --- linux-3.13.0.orig/drivers/misc/Kconfig +++ linux-3.13.0/drivers/misc/Kconfig @@ -525,4 +525,5 @@ source "drivers/misc/mei/Kconfig" source "drivers/misc/vmw_vmci/Kconfig" source "drivers/misc/mic/Kconfig" +source "drivers/misc/xgene/Kconfig" endmenu --- linux-3.13.0.orig/drivers/misc/Makefile +++ linux-3.13.0/drivers/misc/Makefile @@ -53,3 +53,4 @@ obj-$(CONFIG_LATTICE_ECP3_CONFIG) += lattice-ecp3-config.o obj-$(CONFIG_SRAM) += sram.o obj-y += mic/ +obj-$(CONFIG_ARCH_XGENE) += xgene/ --- linux-3.13.0.orig/drivers/misc/mei/amthif.c +++ linux-3.13.0/drivers/misc/mei/amthif.c @@ -177,7 +177,7 @@ unsigned long timeout; int i; - /* Only Posible if we are in timeout */ + /* Only possible if we are in timeout */ if (!cl || cl != &dev->iamthif_cl) { dev_dbg(&dev->pdev->dev, "bad file ext.\n"); return -ETIMEDOUT; @@ -249,7 +249,7 @@ cb->response_buffer.size); dev_dbg(&dev->pdev->dev, "amthif cb->buf_idx - %lu\n", cb->buf_idx); - /* length is being turncated to PAGE_SIZE, however, + /* length is being truncated to PAGE_SIZE, however, * the buf_idx may point beyond */ length = min_t(size_t, length, (cb->buf_idx - *offset)); @@ -316,6 +316,7 @@ mei_hdr.host_addr = dev->iamthif_cl.host_client_id; mei_hdr.me_addr = dev->iamthif_cl.me_client_id; mei_hdr.reserved = 0; + mei_hdr.internal = 0; dev->iamthif_msg_buf_index += mei_hdr.length; ret = mei_write_message(dev, &mei_hdr, dev->iamthif_msg_buf); if (ret) @@ -477,6 +478,7 @@ mei_hdr.host_addr = cl->host_client_id; mei_hdr.me_addr = cl->me_client_id; mei_hdr.reserved = 0; + mei_hdr.internal = 0; if (*slots >= msg_slots) { mei_hdr.length = len; --- linux-3.13.0.orig/drivers/misc/mei/client.c +++ linux-3.13.0/drivers/misc/mei/client.c @@ -74,23 +74,69 @@ /** - * mei_io_list_flush - removes list entry belonging to cl. + * mei_cl_cmp_id - tells if the clients are the same * - * @list: An instance of our list structure - * @cl: host client + * @cl1: host client 1 + * @cl2: host client 2 + * + * returns true - if the clients has same host and me ids + * false - otherwise + */ +static inline bool mei_cl_cmp_id(const struct mei_cl *cl1, + const struct mei_cl *cl2) +{ + return cl1 && cl2 && + (cl1->host_client_id == cl2->host_client_id) && + (cl1->me_client_id == cl2->me_client_id); +} + +/** + * mei_io_list_flush - removes cbs belonging to cl. + * + * @list: an instance of our list structure + * @cl: host client, can be NULL for flushing the whole list + * @free: whether to free the cbs */ -void mei_io_list_flush(struct mei_cl_cb *list, struct mei_cl *cl) +static void __mei_io_list_flush(struct mei_cl_cb *list, + struct mei_cl *cl, bool free) { struct mei_cl_cb *cb; struct mei_cl_cb *next; + /* enable removing everything if no cl is specified */ list_for_each_entry_safe(cb, next, &list->list, list) { - if (cb->cl && mei_cl_cmp_id(cl, cb->cl)) + if (!cl || (cb->cl && mei_cl_cmp_id(cl, cb->cl))) { list_del(&cb->list); + if (free) + mei_io_cb_free(cb); + } } } /** + * mei_io_list_flush - removes list entry belonging to cl. + * + * @list: An instance of our list structure + * @cl: host client + */ +static inline void mei_io_list_flush(struct mei_cl_cb *list, struct mei_cl *cl) +{ + __mei_io_list_flush(list, cl, false); +} + + +/** + * mei_io_list_free - removes cb belonging to cl and free them + * + * @list: An instance of our list structure + * @cl: host client + */ +static inline void mei_io_list_free(struct mei_cl_cb *list, struct mei_cl *cl) +{ + __mei_io_list_flush(list, cl, true); +} + +/** * mei_io_cb_free - free mei_cb_private related memory * * @cb: mei callback struct @@ -154,7 +200,7 @@ return 0; } /** - * mei_io_cb_alloc_resp_buf - allocate respose buffer + * mei_io_cb_alloc_resp_buf - allocate response buffer * * @cb: io callback structure * @length: size of the buffer @@ -196,8 +242,8 @@ cl_dbg(dev, cl, "remove list entry belonging to cl\n"); mei_io_list_flush(&cl->dev->read_list, cl); - mei_io_list_flush(&cl->dev->write_list, cl); - mei_io_list_flush(&cl->dev->write_waiting_list, cl); + mei_io_list_free(&cl->dev->write_list, cl); + mei_io_list_free(&cl->dev->write_waiting_list, cl); mei_io_list_flush(&cl->dev->ctrl_wr_list, cl); mei_io_list_flush(&cl->dev->ctrl_rd_list, cl); mei_io_list_flush(&cl->dev->amthif_cmd_list, cl); @@ -207,7 +253,7 @@ /** - * mei_cl_init - initializes intialize cl. + * mei_cl_init - initializes cl. * * @cl: host client to be initialized * @dev: mei device @@ -263,10 +309,10 @@ return NULL; } -/** mei_cl_link: allocte host id in the host map +/** mei_cl_link: allocate host id in the host map * * @cl - host client - * @id - fixed host id or -1 for genereting one + * @id - fixed host id or -1 for generic one * * returns 0 on success * -EINVAL on incorrect values @@ -282,19 +328,19 @@ dev = cl->dev; - /* If Id is not asigned get one*/ + /* If Id is not assigned get one*/ if (id == MEI_HOST_CLIENT_ID_ANY) id = find_first_zero_bit(dev->host_clients_map, MEI_CLIENTS_MAX); if (id >= MEI_CLIENTS_MAX) { - dev_err(&dev->pdev->dev, "id exceded %d", MEI_CLIENTS_MAX) ; + dev_err(&dev->pdev->dev, "id exceeded %d", MEI_CLIENTS_MAX); return -EMFILE; } open_handle_count = dev->open_handle_count + dev->iamthif_open_count; if (open_handle_count >= MEI_MAX_OPEN_HANDLE_COUNT) { - dev_err(&dev->pdev->dev, "open_handle_count exceded %d", + dev_err(&dev->pdev->dev, "open_handle_count exceeded %d", MEI_MAX_OPEN_HANDLE_COUNT); return -EMFILE; } @@ -344,8 +390,6 @@ cl->state = MEI_FILE_INITIALIZING; - list_del_init(&cl->link); - return 0; } @@ -372,13 +416,14 @@ } dev->dev_state = MEI_DEV_ENABLED; + dev->reset_count = 0; mutex_unlock(&dev->device_lock); } /** - * mei_cl_disconnect - disconnect host clinet form the me one + * mei_cl_disconnect - disconnect host client from the me one * * @cl: host client * @@ -457,7 +502,7 @@ * * @cl: private data of the file object * - * returns ture if other client is connected, 0 - otherwise. + * returns true if other client is connected, false - otherwise. */ bool mei_cl_is_other_connecting(struct mei_cl *cl) { @@ -481,7 +526,7 @@ } /** - * mei_cl_connect - connect host clinet to the me one + * mei_cl_connect - connect host client to the me one * * @cl: host client * @@ -667,7 +712,6 @@ goto err; cb->fop_type = MEI_FOP_READ; - cl->read_cb = cb; if (dev->hbuf_is_ready) { dev->hbuf_is_ready = false; if (mei_hbm_cl_flow_control_req(dev, cl)) { @@ -679,6 +723,9 @@ } else { list_add_tail(&cb->list, &dev->ctrl_wr_list.list); } + + cl->read_cb = cb; + return rets; err: mei_io_cb_free(cb); @@ -729,6 +776,7 @@ mei_hdr.host_addr = cl->host_client_id; mei_hdr.me_addr = cl->me_client_id; mei_hdr.reserved = 0; + mei_hdr.internal = cb->internal; if (*slots >= msg_slots) { mei_hdr.length = len; @@ -775,7 +823,7 @@ * @cl: host client * @cl: write callback with filled data * - * returns numbe of bytes sent on success, <0 on failure. + * returns number of bytes sent on success, <0 on failure. */ int mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb, bool blocking) { @@ -828,6 +876,7 @@ mei_hdr.host_addr = cl->host_client_id; mei_hdr.me_addr = cl->me_client_id; mei_hdr.reserved = 0; + mei_hdr.internal = cb->internal; rets = mei_write_message(dev, &mei_hdr, buf->data); @@ -907,7 +956,6 @@ list_for_each_entry_safe(cl, next, &dev->file_list, link) { cl->state = MEI_FILE_DISCONNECTED; cl->mei_flow_ctrl_creds = 0; - cl->read_cb = NULL; cl->timer_count = 0; } } @@ -940,12 +988,8 @@ */ void mei_cl_all_write_clear(struct mei_device *dev) { - struct mei_cl_cb *cb, *next; - - list_for_each_entry_safe(cb, next, &dev->write_list.list, list) { - list_del(&cb->list); - mei_io_cb_free(cb); - } + mei_io_list_free(&dev->write_list, NULL); + mei_io_list_free(&dev->write_waiting_list, NULL); } --- linux-3.13.0.orig/drivers/misc/mei/client.h +++ linux-3.13.0/drivers/misc/mei/client.h @@ -45,8 +45,6 @@ { INIT_LIST_HEAD(&list->list); } -void mei_io_list_flush(struct mei_cl_cb *list, struct mei_cl *cl); - /* * MEI Host Client Functions */ @@ -61,22 +59,6 @@ int mei_cl_flush_queues(struct mei_cl *cl); struct mei_cl_cb *mei_cl_find_read_cb(struct mei_cl *cl); -/** - * mei_cl_cmp_id - tells if file private data have same id - * - * @fe1: private data of 1. file object - * @fe2: private data of 2. file object - * - * returns true - if ids are the same and not NULL - */ -static inline bool mei_cl_cmp_id(const struct mei_cl *cl1, - const struct mei_cl *cl2) -{ - return cl1 && cl2 && - (cl1->host_client_id == cl2->host_client_id) && - (cl1->me_client_id == cl2->me_client_id); -} - int mei_cl_flow_ctrl_creds(struct mei_cl *cl); --- linux-3.13.0.orig/drivers/misc/mei/debugfs.c +++ linux-3.13.0/drivers/misc/mei/debugfs.c @@ -43,7 +43,7 @@ mutex_lock(&dev->device_lock); - /* if the driver is not enabled the list won't b consitent */ + /* if the driver is not enabled the list won't be consistent */ if (dev->dev_state != MEI_DEV_ENABLED) goto out; @@ -101,7 +101,7 @@ /** * mei_dbgfs_deregister - Remove the debugfs files and directories - * @mei - pointer to mei device private dat + * @mei - pointer to mei device private data */ void mei_dbgfs_deregister(struct mei_device *dev) { --- linux-3.13.0.orig/drivers/misc/mei/hbm.c +++ linux-3.13.0/drivers/misc/mei/hbm.c @@ -28,9 +28,9 @@ * * @dev: the device structure * - * returns none. + * returns 0 on success -ENOMEM on allocation failure */ -static void mei_hbm_me_cl_allocate(struct mei_device *dev) +static int mei_hbm_me_cl_allocate(struct mei_device *dev) { struct mei_me_client *clients; int b; @@ -44,7 +44,7 @@ dev->me_clients_num++; if (dev->me_clients_num == 0) - return; + return 0; kfree(dev->me_clients); dev->me_clients = NULL; @@ -56,12 +56,10 @@ sizeof(struct mei_me_client), GFP_KERNEL); if (!clients) { dev_err(&dev->pdev->dev, "memory allocation for ME clients failed.\n"); - dev->dev_state = MEI_DEV_RESETTING; - mei_reset(dev, 1); - return; + return -ENOMEM; } dev->me_clients = clients; - return; + return 0; } /** @@ -85,12 +83,12 @@ } /** - * same_disconn_addr - tells if they have the same address + * mei_hbm_cl_addr_equal - tells if they have the same address * - * @file: private data of the file object. - * @disconn: disconnection request. + * @cl: - client + * @buf: buffer with cl header * - * returns true if addres are same + * returns true if addresses are the same */ static inline bool mei_hbm_cl_addr_equal(struct mei_cl *cl, void *buf) @@ -128,6 +126,17 @@ return false; } +/** + * mei_hbm_idle - set hbm to idle state + * + * @dev: the device structure + */ +void mei_hbm_idle(struct mei_device *dev) +{ + dev->init_clients_timer = 0; + dev->hbm_state = MEI_HBM_IDLE; +} + int mei_hbm_start_wait(struct mei_device *dev) { int ret; @@ -137,7 +146,7 @@ mutex_unlock(&dev->device_lock); ret = wait_event_interruptible_timeout(dev->wait_recvd_msg, dev->hbm_state == MEI_HBM_IDLE || - dev->hbm_state > MEI_HBM_START, + dev->hbm_state >= MEI_HBM_STARTED, mei_secs_to_jiffies(MEI_INTEROP_TIMEOUT)); mutex_lock(&dev->device_lock); @@ -153,12 +162,15 @@ * mei_hbm_start_req - sends start request message. * * @dev: the device structure + * + * returns 0 on success and < 0 on failure */ int mei_hbm_start_req(struct mei_device *dev) { struct mei_msg_hdr *mei_hdr = &dev->wr_msg.hdr; struct hbm_host_version_request *start_req; const size_t len = sizeof(struct hbm_host_version_request); + int ret; mei_hbm_hdr(mei_hdr, len); @@ -170,12 +182,13 @@ start_req->host_version.minor_version = HBM_MINOR_VERSION; dev->hbm_state = MEI_HBM_IDLE; - if (mei_write_message(dev, mei_hdr, dev->wr_msg.data)) { - dev_err(&dev->pdev->dev, "version message write failed\n"); - dev->dev_state = MEI_DEV_RESETTING; - mei_reset(dev, 1); - return -EIO; + ret = mei_write_message(dev, mei_hdr, dev->wr_msg.data); + if (ret) { + dev_err(&dev->pdev->dev, "version message write failed: ret = %d\n", + ret); + return ret; } + dev->hbm_state = MEI_HBM_START; dev->init_clients_timer = MEI_CLIENTS_INIT_TIMEOUT; return 0; @@ -186,13 +199,15 @@ * * @dev: the device structure * - * returns none. + * returns 0 on success and < 0 on failure */ -static void mei_hbm_enum_clients_req(struct mei_device *dev) +static int mei_hbm_enum_clients_req(struct mei_device *dev) { struct mei_msg_hdr *mei_hdr = &dev->wr_msg.hdr; struct hbm_host_enum_request *enum_req; const size_t len = sizeof(struct hbm_host_enum_request); + int ret; + /* enumerate clients */ mei_hbm_hdr(mei_hdr, len); @@ -200,14 +215,15 @@ memset(enum_req, 0, len); enum_req->hbm_cmd = HOST_ENUM_REQ_CMD; - if (mei_write_message(dev, mei_hdr, dev->wr_msg.data)) { - dev->dev_state = MEI_DEV_RESETTING; - dev_err(&dev->pdev->dev, "enumeration request write failed.\n"); - mei_reset(dev, 1); + ret = mei_write_message(dev, mei_hdr, dev->wr_msg.data); + if (ret) { + dev_err(&dev->pdev->dev, "enumeration request write failed: ret = %d.\n", + ret); + return ret; } dev->hbm_state = MEI_HBM_ENUM_CLIENTS; dev->init_clients_timer = MEI_CLIENTS_INIT_TIMEOUT; - return; + return 0; } /** @@ -215,7 +231,7 @@ * * @dev: the device structure * - * returns none. + * returns 0 on success and < 0 on failure */ static int mei_hbm_prop_req(struct mei_device *dev) @@ -226,7 +242,7 @@ const size_t len = sizeof(struct hbm_props_request); unsigned long next_client_index; unsigned long client_num; - + int ret; client_num = dev->me_client_presentation_num; @@ -253,12 +269,11 @@ prop_req->hbm_cmd = HOST_CLIENT_PROPERTIES_REQ_CMD; prop_req->address = next_client_index; - if (mei_write_message(dev, mei_hdr, dev->wr_msg.data)) { - dev->dev_state = MEI_DEV_RESETTING; - dev_err(&dev->pdev->dev, "properties request write failed\n"); - mei_reset(dev, 1); - - return -EIO; + ret = mei_write_message(dev, mei_hdr, dev->wr_msg.data); + if (ret) { + dev_err(&dev->pdev->dev, "properties request write failed: ret = %d\n", + ret); + return ret; } dev->init_clients_timer = MEI_CLIENTS_INIT_TIMEOUT; @@ -268,7 +283,7 @@ } /** - * mei_hbm_stop_req_prepare - perpare stop request message + * mei_hbm_stop_req_prepare - prepare stop request message * * @dev - mei device * @mei_hdr - mei message header @@ -289,7 +304,7 @@ } /** - * mei_hbm_cl_flow_control_req - sends flow control requst. + * mei_hbm_cl_flow_control_req - sends flow control request. * * @dev: the device structure * @cl: client info @@ -451,7 +466,7 @@ } /** - * mei_hbm_cl_connect_res - connect resposne from the ME + * mei_hbm_cl_connect_res - connect response from the ME * * @dev: the device structure * @rs: connect response bus message @@ -505,8 +520,8 @@ /** - * mei_hbm_fw_disconnect_req - disconnect request initiated by me - * host sends disoconnect response + * mei_hbm_fw_disconnect_req - disconnect request initiated by ME firmware + * host sends disconnect response * * @dev: the device structure. * @disconnect_req: disconnect request bus message from the me @@ -559,8 +574,10 @@ * * @dev: the device structure * @mei_hdr: header of bus message + * + * returns 0 on success and < 0 on failure */ -void mei_hbm_dispatch(struct mei_device *dev, struct mei_msg_hdr *hdr) +int mei_hbm_dispatch(struct mei_device *dev, struct mei_msg_hdr *hdr) { struct mei_bus_message *mei_msg; struct mei_me_client *me_client; @@ -577,8 +594,20 @@ mei_read_slots(dev, dev->rd_msg_buf, hdr->length); mei_msg = (struct mei_bus_message *)dev->rd_msg_buf; + /* ignore spurious message and prevent reset nesting + * hbm is put to idle during system reset + */ + if (dev->hbm_state == MEI_HBM_IDLE) { + dev_dbg(&dev->pdev->dev, "hbm: state is idle ignore spurious messages\n"); + return 0; + } + switch (mei_msg->hbm_cmd) { case HOST_START_RES_CMD: + dev_dbg(&dev->pdev->dev, "hbm: start: response message received.\n"); + + dev->init_clients_timer = 0; + version_res = (struct hbm_host_version_response *)mei_msg; dev_dbg(&dev->pdev->dev, "HBM VERSION: DRIVER=%02d:%02d DEVICE=%02d:%02d\n", @@ -597,73 +626,89 @@ } if (!mei_hbm_version_is_supported(dev)) { - dev_warn(&dev->pdev->dev, "hbm version mismatch: stopping the driver.\n"); + dev_warn(&dev->pdev->dev, "hbm: start: version mismatch - stopping the driver.\n"); - dev->hbm_state = MEI_HBM_STOP; + dev->hbm_state = MEI_HBM_STOPPED; mei_hbm_stop_req_prepare(dev, &dev->wr_msg.hdr, dev->wr_msg.data); - mei_write_message(dev, &dev->wr_msg.hdr, - dev->wr_msg.data); + if (mei_write_message(dev, &dev->wr_msg.hdr, + dev->wr_msg.data)) { + dev_err(&dev->pdev->dev, "hbm: start: failed to send stop request\n"); + return -EIO; + } + break; + } - return; + if (dev->dev_state != MEI_DEV_INIT_CLIENTS || + dev->hbm_state != MEI_HBM_START) { + dev_err(&dev->pdev->dev, "hbm: start: state mismatch, [%d, %d]\n", + dev->dev_state, dev->hbm_state); + return -EPROTO; } - if (dev->dev_state == MEI_DEV_INIT_CLIENTS && - dev->hbm_state == MEI_HBM_START) { - dev->init_clients_timer = 0; - mei_hbm_enum_clients_req(dev); - } else { - dev_err(&dev->pdev->dev, "reset: wrong host start response\n"); - mei_reset(dev, 1); - return; + dev->hbm_state = MEI_HBM_STARTED; + + if (mei_hbm_enum_clients_req(dev)) { + dev_err(&dev->pdev->dev, "hbm: start: failed to send enumeration request\n"); + return -EIO; } wake_up_interruptible(&dev->wait_recvd_msg); - dev_dbg(&dev->pdev->dev, "host start response message received.\n"); break; case CLIENT_CONNECT_RES_CMD: + dev_dbg(&dev->pdev->dev, "hbm: client connect response: message received.\n"); + connect_res = (struct hbm_client_connect_response *) mei_msg; mei_hbm_cl_connect_res(dev, connect_res); - dev_dbg(&dev->pdev->dev, "client connect response message received.\n"); wake_up(&dev->wait_recvd_msg); break; case CLIENT_DISCONNECT_RES_CMD: + dev_dbg(&dev->pdev->dev, "hbm: client disconnect response: message received.\n"); + disconnect_res = (struct hbm_client_connect_response *) mei_msg; mei_hbm_cl_disconnect_res(dev, disconnect_res); - dev_dbg(&dev->pdev->dev, "client disconnect response message received.\n"); wake_up(&dev->wait_recvd_msg); break; case MEI_FLOW_CONTROL_CMD: + dev_dbg(&dev->pdev->dev, "hbm: client flow control response: message received.\n"); + flow_control = (struct hbm_flow_control *) mei_msg; mei_hbm_cl_flow_control_res(dev, flow_control); - dev_dbg(&dev->pdev->dev, "client flow control response message received.\n"); break; case HOST_CLIENT_PROPERTIES_RES_CMD: + dev_dbg(&dev->pdev->dev, "hbm: properties response: message received.\n"); + + dev->init_clients_timer = 0; + + if (dev->me_clients == NULL) { + dev_err(&dev->pdev->dev, "hbm: properties response: mei_clients not allocated\n"); + return -EPROTO; + } + props_res = (struct hbm_props_response *)mei_msg; me_client = &dev->me_clients[dev->me_client_presentation_num]; - if (props_res->status || !dev->me_clients) { - dev_err(&dev->pdev->dev, "reset: properties response hbm wrong status.\n"); - mei_reset(dev, 1); - return; + if (props_res->status) { + dev_err(&dev->pdev->dev, "hbm: properties response: wrong status = %d\n", + props_res->status); + return -EPROTO; } if (me_client->client_id != props_res->address) { - dev_err(&dev->pdev->dev, "reset: host properties response address mismatch\n"); - mei_reset(dev, 1); - return; + dev_err(&dev->pdev->dev, "hbm: properties response: address mismatch %d ?= %d\n", + me_client->client_id, props_res->address); + return -EPROTO; } if (dev->dev_state != MEI_DEV_INIT_CLIENTS || dev->hbm_state != MEI_HBM_CLIENT_PROPERTIES) { - dev_err(&dev->pdev->dev, "reset: unexpected properties response\n"); - mei_reset(dev, 1); - - return; + dev_err(&dev->pdev->dev, "hbm: properties response: state mismatch, [%d, %d]\n", + dev->dev_state, dev->hbm_state); + return -EPROTO; } me_client->props = props_res->client_properties; @@ -671,49 +716,70 @@ dev->me_client_presentation_num++; /* request property for the next client */ - mei_hbm_prop_req(dev); + if (mei_hbm_prop_req(dev)) + return -EIO; break; case HOST_ENUM_RES_CMD: + dev_dbg(&dev->pdev->dev, "hbm: enumeration response: message received\n"); + + dev->init_clients_timer = 0; + enum_res = (struct hbm_host_enum_response *) mei_msg; BUILD_BUG_ON(sizeof(dev->me_clients_map) < sizeof(enum_res->valid_addresses)); memcpy(dev->me_clients_map, enum_res->valid_addresses, sizeof(enum_res->valid_addresses)); - if (dev->dev_state == MEI_DEV_INIT_CLIENTS && - dev->hbm_state == MEI_HBM_ENUM_CLIENTS) { - dev->init_clients_timer = 0; - mei_hbm_me_cl_allocate(dev); - dev->hbm_state = MEI_HBM_CLIENT_PROPERTIES; - /* first property reqeust */ - mei_hbm_prop_req(dev); - } else { - dev_err(&dev->pdev->dev, "reset: unexpected enumeration response hbm.\n"); - mei_reset(dev, 1); - return; + if (dev->dev_state != MEI_DEV_INIT_CLIENTS || + dev->hbm_state != MEI_HBM_ENUM_CLIENTS) { + dev_err(&dev->pdev->dev, "hbm: enumeration response: state mismatch, [%d, %d]\n", + dev->dev_state, dev->hbm_state); + return -EPROTO; + } + + if (mei_hbm_me_cl_allocate(dev)) { + dev_err(&dev->pdev->dev, "hbm: enumeration response: cannot allocate clients array\n"); + return -ENOMEM; } + + dev->hbm_state = MEI_HBM_CLIENT_PROPERTIES; + + /* first property request */ + if (mei_hbm_prop_req(dev)) + return -EIO; + break; case HOST_STOP_RES_CMD: + dev_dbg(&dev->pdev->dev, "hbm: stop response: message received\n"); - if (dev->hbm_state != MEI_HBM_STOP) - dev_err(&dev->pdev->dev, "unexpected stop response hbm.\n"); - dev->dev_state = MEI_DEV_DISABLED; - dev_info(&dev->pdev->dev, "reset: FW stop response.\n"); - mei_reset(dev, 1); + dev->init_clients_timer = 0; + + if (dev->hbm_state != MEI_HBM_STOPPED) { + dev_err(&dev->pdev->dev, "hbm: stop response: state mismatch, [%d, %d]\n", + dev->dev_state, dev->hbm_state); + return -EPROTO; + } + + dev->dev_state = MEI_DEV_POWER_DOWN; + dev_info(&dev->pdev->dev, "hbm: stop response: resetting.\n"); + /* force the reset */ + return -EPROTO; break; case CLIENT_DISCONNECT_REQ_CMD: - /* search for client */ + dev_dbg(&dev->pdev->dev, "hbm: disconnect request: message received\n"); + disconnect_req = (struct hbm_client_connect_request *)mei_msg; mei_hbm_fw_disconnect_req(dev, disconnect_req); break; case ME_STOP_REQ_CMD: + dev_dbg(&dev->pdev->dev, "hbm: stop request: message received\n"); - dev->hbm_state = MEI_HBM_STOP; + dev->hbm_state = MEI_HBM_STOPPED; mei_hbm_stop_req_prepare(dev, &dev->wr_ext_msg.hdr, dev->wr_ext_msg.data); break; @@ -722,5 +788,6 @@ break; } + return 0; } --- linux-3.13.0.orig/drivers/misc/mei/hbm.h +++ linux-3.13.0/drivers/misc/mei/hbm.h @@ -32,13 +32,13 @@ enum mei_hbm_state { MEI_HBM_IDLE = 0, MEI_HBM_START, + MEI_HBM_STARTED, MEI_HBM_ENUM_CLIENTS, MEI_HBM_CLIENT_PROPERTIES, - MEI_HBM_STARTED, - MEI_HBM_STOP, + MEI_HBM_STOPPED, }; -void mei_hbm_dispatch(struct mei_device *dev, struct mei_msg_hdr *hdr); +int mei_hbm_dispatch(struct mei_device *dev, struct mei_msg_hdr *hdr); static inline void mei_hbm_hdr(struct mei_msg_hdr *hdr, size_t length) { @@ -49,6 +49,7 @@ hdr->reserved = 0; } +void mei_hbm_idle(struct mei_device *dev); int mei_hbm_start_req(struct mei_device *dev); int mei_hbm_start_wait(struct mei_device *dev); int mei_hbm_cl_flow_control_req(struct mei_device *dev, struct mei_cl *cl); --- linux-3.13.0.orig/drivers/misc/mei/hw-me-regs.h +++ linux-3.13.0/drivers/misc/mei/hw-me-regs.h @@ -115,6 +115,11 @@ #define MEI_DEV_ID_LPT_HR 0x8CBA /* Lynx Point H Refresh */ #define MEI_DEV_ID_WPT_LP 0x9CBA /* Wildcat Point LP */ + +/* Host Firmware Status Registers in PCI Config Space */ +#define PCI_CFG_HFS_1 0x40 +#define PCI_CFG_HFS_2 0x48 + /* * MEI HW Section */ --- linux-3.13.0.orig/drivers/misc/mei/hw-me.c +++ linux-3.13.0/drivers/misc/mei/hw-me.c @@ -185,7 +185,7 @@ mei_me_reg_write(hw, H_CSR, hcsr); - if (dev->dev_state == MEI_DEV_POWER_DOWN) + if (intr_enable == false) mei_me_hw_reset_release(dev); return 0; @@ -469,7 +469,7 @@ struct mei_device *dev = (struct mei_device *) dev_id; struct mei_cl_cb complete_list; s32 slots; - int rets; + int rets = 0; dev_dbg(&dev->pdev->dev, "function called after ISR to handle the interrupt processing.\n"); /* initialize our complete list */ @@ -482,15 +482,10 @@ mei_clear_interrupts(dev); /* check if ME wants a reset */ - if (!mei_hw_is_ready(dev) && - dev->dev_state != MEI_DEV_RESETTING && - dev->dev_state != MEI_DEV_INITIALIZING && - dev->dev_state != MEI_DEV_POWER_DOWN && - dev->dev_state != MEI_DEV_POWER_UP) { - dev_dbg(&dev->pdev->dev, "FW not ready.\n"); - mei_reset(dev, 1); - mutex_unlock(&dev->device_lock); - return IRQ_HANDLED; + if (!mei_hw_is_ready(dev) && dev->dev_state != MEI_DEV_RESETTING) { + dev_warn(&dev->pdev->dev, "FW not ready: resetting.\n"); + schedule_work(&dev->reset_work); + goto end; } /* check if we need to start the dev */ @@ -500,15 +495,12 @@ dev->recvd_hw_ready = true; wake_up_interruptible(&dev->wait_hw_ready); - - mutex_unlock(&dev->device_lock); - return IRQ_HANDLED; } else { + dev_dbg(&dev->pdev->dev, "Reset Completed.\n"); mei_me_hw_reset_release(dev); - mutex_unlock(&dev->device_lock); - return IRQ_HANDLED; } + goto end; } /* check slots available for reading */ slots = mei_count_full_read_slots(dev); @@ -516,21 +508,23 @@ /* we have urgent data to send so break the read */ if (dev->wr_ext_msg.hdr.length) break; - dev_dbg(&dev->pdev->dev, "slots =%08x\n", slots); - dev_dbg(&dev->pdev->dev, "call mei_irq_read_handler.\n"); + dev_dbg(&dev->pdev->dev, "slots to read = %08x\n", slots); rets = mei_irq_read_handler(dev, &complete_list, &slots); - if (rets) + if (rets && dev->dev_state != MEI_DEV_RESETTING) { + schedule_work(&dev->reset_work); goto end; + } } + rets = mei_irq_write_handler(dev, &complete_list); -end: - dev_dbg(&dev->pdev->dev, "end of bottom half function.\n"); - dev->hbuf_is_ready = mei_hbuf_is_ready(dev); - mutex_unlock(&dev->device_lock); + dev->hbuf_is_ready = mei_hbuf_is_ready(dev); mei_irq_compl_handler(dev, &complete_list); +end: + dev_dbg(&dev->pdev->dev, "interrupt thread end ret = %d\n", rets); + mutex_unlock(&dev->device_lock); return IRQ_HANDLED; } static const struct mei_hw_ops mei_me_hw_ops = { --- linux-3.13.0.orig/drivers/misc/mei/hw.h +++ linux-3.13.0/drivers/misc/mei/hw.h @@ -111,7 +111,8 @@ u32 me_addr:8; u32 host_addr:8; u32 length:9; - u32 reserved:6; + u32 reserved:5; + u32 internal:1; u32 msg_complete:1; } __packed; --- linux-3.13.0.orig/drivers/misc/mei/init.c +++ linux-3.13.0/drivers/misc/mei/init.c @@ -43,41 +43,119 @@ #undef MEI_DEV_STATE } -void mei_device_init(struct mei_device *dev) -{ - /* setup our list array */ - INIT_LIST_HEAD(&dev->file_list); - INIT_LIST_HEAD(&dev->device_list); - mutex_init(&dev->device_lock); - init_waitqueue_head(&dev->wait_hw_ready); - init_waitqueue_head(&dev->wait_recvd_msg); - init_waitqueue_head(&dev->wait_stop_wd); - dev->dev_state = MEI_DEV_INITIALIZING; - mei_io_list_init(&dev->read_list); - mei_io_list_init(&dev->write_list); - mei_io_list_init(&dev->write_waiting_list); - mei_io_list_init(&dev->ctrl_wr_list); - mei_io_list_init(&dev->ctrl_rd_list); +/** + * mei_cancel_work. Cancel mei background jobs + * + * @dev: the device structure + * + * returns 0 on success or < 0 if the reset hasn't succeeded + */ +void mei_cancel_work(struct mei_device *dev) +{ + cancel_work_sync(&dev->init_work); + cancel_work_sync(&dev->reset_work); - INIT_DELAYED_WORK(&dev->timer_work, mei_timer); - INIT_WORK(&dev->init_work, mei_host_client_init); + cancel_delayed_work(&dev->timer_work); +} +EXPORT_SYMBOL_GPL(mei_cancel_work); - INIT_LIST_HEAD(&dev->wd_cl.link); - INIT_LIST_HEAD(&dev->iamthif_cl.link); - mei_io_list_init(&dev->amthif_cmd_list); - mei_io_list_init(&dev->amthif_rd_complete_list); +/** + * mei_reset - resets host and fw. + * + * @dev: the device structure + */ +int mei_reset(struct mei_device *dev) +{ + enum mei_dev_state state = dev->dev_state; + bool interrupts_enabled; + int ret; - bitmap_zero(dev->host_clients_map, MEI_CLIENTS_MAX); - dev->open_handle_count = 0; + if (state != MEI_DEV_INITIALIZING && + state != MEI_DEV_DISABLED && + state != MEI_DEV_POWER_DOWN && + state != MEI_DEV_POWER_UP) + dev_warn(&dev->pdev->dev, "unexpected reset: dev_state = %s\n", + mei_dev_state_str(state)); - /* - * Reserving the first client ID - * 0: Reserved for MEI Bus Message communications + /* we're already in reset, cancel the init timer + * if the reset was called due the hbm protocol error + * we need to call it before hw start + * so the hbm watchdog won't kick in */ - bitmap_set(dev->host_clients_map, 0, 1); + mei_hbm_idle(dev); + + /* enter reset flow */ + interrupts_enabled = state != MEI_DEV_POWER_DOWN; + dev->dev_state = MEI_DEV_RESETTING; + + dev->reset_count++; + if (dev->reset_count > MEI_MAX_CONSEC_RESET) { + dev_err(&dev->pdev->dev, "reset: reached maximal consecutive resets: disabling the device\n"); + dev->dev_state = MEI_DEV_DISABLED; + return -ENODEV; + } + + ret = mei_hw_reset(dev, interrupts_enabled); + /* fall through and remove the sw state even if hw reset has failed */ + + /* no need to clean up software state in case of power up */ + if (state != MEI_DEV_INITIALIZING && + state != MEI_DEV_POWER_UP) { + + /* remove all waiting requests */ + mei_cl_all_write_clear(dev); + + mei_cl_all_disconnect(dev); + + /* wake up all readers and writers so they can be interrupted */ + mei_cl_all_wakeup(dev); + + /* remove entry if already in list */ + dev_dbg(&dev->pdev->dev, "remove iamthif and wd from the file list.\n"); + mei_cl_unlink(&dev->wd_cl); + mei_cl_unlink(&dev->iamthif_cl); + mei_amthif_reset_params(dev); + memset(&dev->wr_ext_msg, 0, sizeof(dev->wr_ext_msg)); + } + + + dev->me_clients_num = 0; + dev->rd_msg_hdr = 0; + dev->wd_pending = false; + + if (ret) { + dev_err(&dev->pdev->dev, "hw_reset failed ret = %d\n", ret); + dev->dev_state = MEI_DEV_DISABLED; + return ret; + } + + if (state == MEI_DEV_POWER_DOWN) { + dev_dbg(&dev->pdev->dev, "powering down: end of reset\n"); + dev->dev_state = MEI_DEV_DISABLED; + return 0; + } + + ret = mei_hw_start(dev); + if (ret) { + dev_err(&dev->pdev->dev, "hw_start failed ret = %d\n", ret); + dev->dev_state = MEI_DEV_DISABLED; + return ret; + } + + dev_dbg(&dev->pdev->dev, "link is established start sending messages.\n"); + + dev->dev_state = MEI_DEV_INIT_CLIENTS; + ret = mei_hbm_start_req(dev); + if (ret) { + dev_err(&dev->pdev->dev, "hbm_start failed ret = %d\n", ret); + dev->dev_state = MEI_DEV_DISABLED; + return ret; + } + + return 0; } -EXPORT_SYMBOL_GPL(mei_device_init); +EXPORT_SYMBOL_GPL(mei_reset); /** * mei_start - initializes host and fw to start work. @@ -90,14 +168,21 @@ { mutex_lock(&dev->device_lock); - /* acknowledge interrupt and stop interupts */ + /* acknowledge interrupt and stop interrupts */ mei_clear_interrupts(dev); mei_hw_config(dev); dev_dbg(&dev->pdev->dev, "reset in start the mei device.\n"); - mei_reset(dev, 1); + dev->dev_state = MEI_DEV_INITIALIZING; + dev->reset_count = 0; + mei_reset(dev); + + if (dev->dev_state == MEI_DEV_DISABLED) { + dev_err(&dev->pdev->dev, "reset failed"); + goto err; + } if (mei_hbm_start_wait(dev)) { dev_err(&dev->pdev->dev, "HBM haven't started"); @@ -132,101 +217,64 @@ EXPORT_SYMBOL_GPL(mei_start); /** - * mei_reset - resets host and fw. + * mei_restart - restart device after suspend * * @dev: the device structure - * @interrupts_enabled: if interrupt should be enabled after reset. + * + * returns 0 on success or -ENODEV if the restart hasn't succeeded */ -void mei_reset(struct mei_device *dev, int interrupts_enabled) +int mei_restart(struct mei_device *dev) { - bool unexpected; - int ret; - - unexpected = (dev->dev_state != MEI_DEV_INITIALIZING && - dev->dev_state != MEI_DEV_DISABLED && - dev->dev_state != MEI_DEV_POWER_DOWN && - dev->dev_state != MEI_DEV_POWER_UP); + int err; - if (unexpected) - dev_warn(&dev->pdev->dev, "unexpected reset: dev_state = %s\n", - mei_dev_state_str(dev->dev_state)); - - ret = mei_hw_reset(dev, interrupts_enabled); - if (ret) { - dev_err(&dev->pdev->dev, "hw reset failed disabling the device\n"); - interrupts_enabled = false; - dev->dev_state = MEI_DEV_DISABLED; - } - - dev->hbm_state = MEI_HBM_IDLE; + mutex_lock(&dev->device_lock); - if (dev->dev_state != MEI_DEV_INITIALIZING && - dev->dev_state != MEI_DEV_POWER_UP) { - if (dev->dev_state != MEI_DEV_DISABLED && - dev->dev_state != MEI_DEV_POWER_DOWN) - dev->dev_state = MEI_DEV_RESETTING; + mei_clear_interrupts(dev); - /* remove all waiting requests */ - mei_cl_all_write_clear(dev); + dev->dev_state = MEI_DEV_POWER_UP; + dev->reset_count = 0; - mei_cl_all_disconnect(dev); + err = mei_reset(dev); - /* wake up all readings so they can be interrupted */ - mei_cl_all_wakeup(dev); - - /* remove entry if already in list */ - dev_dbg(&dev->pdev->dev, "remove iamthif and wd from the file list.\n"); - mei_cl_unlink(&dev->wd_cl); - mei_cl_unlink(&dev->iamthif_cl); - mei_amthif_reset_params(dev); - memset(&dev->wr_ext_msg, 0, sizeof(dev->wr_ext_msg)); - } + mutex_unlock(&dev->device_lock); - /* we're already in reset, cancel the init timer */ - dev->init_clients_timer = 0; + if (err || dev->dev_state == MEI_DEV_DISABLED) + return -ENODEV; - dev->me_clients_num = 0; - dev->rd_msg_hdr = 0; - dev->wd_pending = false; + return 0; +} +EXPORT_SYMBOL_GPL(mei_restart); - if (!interrupts_enabled) { - dev_dbg(&dev->pdev->dev, "intr not enabled end of reset\n"); - return; - } - ret = mei_hw_start(dev); - if (ret) { - dev_err(&dev->pdev->dev, "hw_start failed disabling the device\n"); - dev->dev_state = MEI_DEV_DISABLED; - return; - } +static void mei_reset_work(struct work_struct *work) +{ + struct mei_device *dev = + container_of(work, struct mei_device, reset_work); - dev_dbg(&dev->pdev->dev, "link is established start sending messages.\n"); - /* link is established * start sending messages. */ + mutex_lock(&dev->device_lock); - dev->dev_state = MEI_DEV_INIT_CLIENTS; + mei_reset(dev); - mei_hbm_start_req(dev); + mutex_unlock(&dev->device_lock); + if (dev->dev_state == MEI_DEV_DISABLED) + dev_err(&dev->pdev->dev, "reset failed"); } -EXPORT_SYMBOL_GPL(mei_reset); void mei_stop(struct mei_device *dev) { dev_dbg(&dev->pdev->dev, "stopping the device.\n"); - flush_scheduled_work(); + mei_cancel_work(dev); - mutex_lock(&dev->device_lock); + mei_nfc_host_exit(dev); - cancel_delayed_work(&dev->timer_work); + mutex_lock(&dev->device_lock); mei_wd_stop(dev); - mei_nfc_host_exit(); - dev->dev_state = MEI_DEV_POWER_DOWN; - mei_reset(dev, 0); + mei_reset(dev); mutex_unlock(&dev->device_lock); @@ -236,3 +284,41 @@ +void mei_device_init(struct mei_device *dev) +{ + /* setup our list array */ + INIT_LIST_HEAD(&dev->file_list); + INIT_LIST_HEAD(&dev->device_list); + mutex_init(&dev->device_lock); + init_waitqueue_head(&dev->wait_hw_ready); + init_waitqueue_head(&dev->wait_recvd_msg); + init_waitqueue_head(&dev->wait_stop_wd); + dev->dev_state = MEI_DEV_INITIALIZING; + dev->reset_count = 0; + + mei_io_list_init(&dev->read_list); + mei_io_list_init(&dev->write_list); + mei_io_list_init(&dev->write_waiting_list); + mei_io_list_init(&dev->ctrl_wr_list); + mei_io_list_init(&dev->ctrl_rd_list); + + INIT_DELAYED_WORK(&dev->timer_work, mei_timer); + INIT_WORK(&dev->init_work, mei_host_client_init); + INIT_WORK(&dev->reset_work, mei_reset_work); + + INIT_LIST_HEAD(&dev->wd_cl.link); + INIT_LIST_HEAD(&dev->iamthif_cl.link); + mei_io_list_init(&dev->amthif_cmd_list); + mei_io_list_init(&dev->amthif_rd_complete_list); + + bitmap_zero(dev->host_clients_map, MEI_CLIENTS_MAX); + dev->open_handle_count = 0; + + /* + * Reserving the first client ID + * 0: Reserved for MEI Bus Message communications + */ + bitmap_set(dev->host_clients_map, 0, 1); +} +EXPORT_SYMBOL_GPL(mei_device_init); + --- linux-3.13.0.orig/drivers/misc/mei/interrupt.c +++ linux-3.13.0/drivers/misc/mei/interrupt.c @@ -31,7 +31,7 @@ /** - * mei_irq_compl_handler - dispatch complete handelers + * mei_irq_compl_handler - dispatch complete handlers * for the completed callbacks * * @dev - mei device @@ -301,13 +301,11 @@ struct mei_cl_cb *cmpl_list, s32 *slots) { struct mei_msg_hdr *mei_hdr; - struct mei_cl *cl_pos = NULL; - struct mei_cl *cl_next = NULL; - int ret = 0; + struct mei_cl *cl; + int ret; if (!dev->rd_msg_hdr) { dev->rd_msg_hdr = mei_read_hdr(dev); - dev_dbg(&dev->pdev->dev, "slots =%08x.\n", *slots); (*slots)--; dev_dbg(&dev->pdev->dev, "slots =%08x.\n", *slots); } @@ -315,61 +313,67 @@ dev_dbg(&dev->pdev->dev, MEI_HDR_FMT, MEI_HDR_PRM(mei_hdr)); if (mei_hdr->reserved || !dev->rd_msg_hdr) { - dev_dbg(&dev->pdev->dev, "corrupted message header.\n"); + dev_err(&dev->pdev->dev, "corrupted message header 0x%08X\n", + dev->rd_msg_hdr); ret = -EBADMSG; goto end; } - if (mei_hdr->host_addr || mei_hdr->me_addr) { - list_for_each_entry_safe(cl_pos, cl_next, - &dev->file_list, link) { - dev_dbg(&dev->pdev->dev, - "list_for_each_entry_safe read host" - " client = %d, ME client = %d\n", - cl_pos->host_client_id, - cl_pos->me_client_id); - if (mei_cl_hbm_equal(cl_pos, mei_hdr)) - break; - } - - if (&cl_pos->link == &dev->file_list) { - dev_dbg(&dev->pdev->dev, "corrupted message header\n"); - ret = -EBADMSG; - goto end; - } - } - if (((*slots) * sizeof(u32)) < mei_hdr->length) { - dev_err(&dev->pdev->dev, - "we can't read the message slots =%08x.\n", + if (mei_slots2data(*slots) < mei_hdr->length) { + dev_err(&dev->pdev->dev, "less data available than length=%08x.\n", *slots); /* we can't read the message */ ret = -ERANGE; goto end; } - /* decide where to read the message too */ - if (!mei_hdr->host_addr) { - dev_dbg(&dev->pdev->dev, "call mei_hbm_dispatch.\n"); - mei_hbm_dispatch(dev, mei_hdr); - dev_dbg(&dev->pdev->dev, "end mei_hbm_dispatch.\n"); - } else if (mei_hdr->host_addr == dev->iamthif_cl.host_client_id && - (MEI_FILE_CONNECTED == dev->iamthif_cl.state) && - (dev->iamthif_state == MEI_IAMTHIF_READING)) { + /* HBM message */ + if (mei_hdr->host_addr == 0 && mei_hdr->me_addr == 0) { + ret = mei_hbm_dispatch(dev, mei_hdr); + if (ret) { + dev_dbg(&dev->pdev->dev, "mei_hbm_dispatch failed ret = %d\n", + ret); + goto end; + } + goto reset_slots; + } - dev_dbg(&dev->pdev->dev, "call mei_amthif_irq_read_msg.\n"); - dev_dbg(&dev->pdev->dev, MEI_HDR_FMT, MEI_HDR_PRM(mei_hdr)); + /* find recipient cl */ + list_for_each_entry(cl, &dev->file_list, link) { + if (mei_cl_hbm_equal(cl, mei_hdr)) { + cl_dbg(dev, cl, "got a message\n"); + break; + } + } + + /* if no recipient cl was found we assume corrupted header */ + if (&cl->link == &dev->file_list) { + dev_err(&dev->pdev->dev, "no destination client found 0x%08X\n", + dev->rd_msg_hdr); + ret = -EBADMSG; + goto end; + } + + if (mei_hdr->host_addr == dev->iamthif_cl.host_client_id && + MEI_FILE_CONNECTED == dev->iamthif_cl.state && + dev->iamthif_state == MEI_IAMTHIF_READING) { ret = mei_amthif_irq_read_msg(dev, mei_hdr, cmpl_list); - if (ret) + if (ret) { + dev_err(&dev->pdev->dev, "mei_amthif_irq_read_msg failed = %d\n", + ret); goto end; + } } else { - dev_dbg(&dev->pdev->dev, "call mei_cl_irq_read_msg.\n"); - dev_dbg(&dev->pdev->dev, MEI_HDR_FMT, MEI_HDR_PRM(mei_hdr)); ret = mei_cl_irq_read_msg(dev, mei_hdr, cmpl_list); - if (ret) + if (ret) { + dev_err(&dev->pdev->dev, "mei_cl_irq_read_msg failed = %d\n", + ret); goto end; + } } +reset_slots: /* reset the number of slots and header */ *slots = mei_count_full_read_slots(dev); dev->rd_msg_hdr = 0; @@ -533,7 +537,6 @@ * * @work: pointer to the work_struct structure * - * NOTE: This function is called by timer interrupt work */ void mei_timer(struct work_struct *work) { @@ -548,24 +551,30 @@ mutex_lock(&dev->device_lock); - if (dev->dev_state != MEI_DEV_ENABLED) { - if (dev->dev_state == MEI_DEV_INIT_CLIENTS) { - if (dev->init_clients_timer) { - if (--dev->init_clients_timer == 0) { - dev_err(&dev->pdev->dev, "reset: init clients timeout hbm_state = %d.\n", - dev->hbm_state); - mei_reset(dev, 1); - } + + /* Catch interrupt stalls during HBM init handshake */ + if (dev->dev_state == MEI_DEV_INIT_CLIENTS && + dev->hbm_state != MEI_HBM_IDLE) { + + if (dev->init_clients_timer) { + if (--dev->init_clients_timer == 0) { + dev_err(&dev->pdev->dev, "timer: init clients timeout hbm_state = %d.\n", + dev->hbm_state); + mei_reset(dev); + goto out; } } - goto out; } + + if (dev->dev_state != MEI_DEV_ENABLED) + goto out; + /*** connect/disconnect timeouts ***/ list_for_each_entry_safe(cl_pos, cl_next, &dev->file_list, link) { if (cl_pos->timer_count) { if (--cl_pos->timer_count == 0) { - dev_err(&dev->pdev->dev, "reset: connect/disconnect timeout.\n"); - mei_reset(dev, 1); + dev_err(&dev->pdev->dev, "timer: connect/disconnect timeout.\n"); + mei_reset(dev); goto out; } } @@ -573,8 +582,8 @@ if (dev->iamthif_stall_timer) { if (--dev->iamthif_stall_timer == 0) { - dev_err(&dev->pdev->dev, "reset: amthif hanged.\n"); - mei_reset(dev, 1); + dev_err(&dev->pdev->dev, "timer: amthif hanged.\n"); + mei_reset(dev); dev->iamthif_msg_buf_size = 0; dev->iamthif_msg_buf_index = 0; dev->iamthif_canceled = false; @@ -627,7 +636,8 @@ } } out: - schedule_delayed_work(&dev->timer_work, 2 * HZ); + if (dev->dev_state != MEI_DEV_DISABLED) + schedule_delayed_work(&dev->timer_work, 2 * HZ); mutex_unlock(&dev->device_lock); } --- linux-3.13.0.orig/drivers/misc/mei/main.c +++ linux-3.13.0/drivers/misc/mei/main.c @@ -48,7 +48,7 @@ * * @inode: pointer to inode structure * @file: pointer to file structure - e + * * returns 0 on success, <0 on error */ static int mei_open(struct inode *inode, struct file *file) --- linux-3.13.0.orig/drivers/misc/mei/mei_dev.h +++ linux-3.13.0/drivers/misc/mei/mei_dev.h @@ -61,11 +61,16 @@ #define MEI_CLIENTS_MAX 256 /* + * maximum number of consecutive resets + */ +#define MEI_MAX_CONSEC_RESET 3 + +/* * Number of File descriptors/handles * that can be opened to the driver. * * Limit to 255: 256 Total Clients - * minus internal client for MEI Bus Messags + * minus internal client for MEI Bus Messages */ #define MEI_MAX_OPEN_HANDLE_COUNT (MEI_CLIENTS_MAX - 1) @@ -178,9 +183,10 @@ unsigned long buf_idx; unsigned long read_time; struct file *file_object; + u32 internal:1; }; -/* MEI client instance carried as file->pirvate_data*/ +/* MEI client instance carried as file->private_data*/ struct mei_cl { struct list_head link; struct mei_device *dev; @@ -326,6 +332,7 @@ /** * struct mei_device - MEI private device struct + * @reset_count - limits the number of consecutive resets * @hbm_state - state of host bus message protocol * @mem_addr - mem mapped base register address @@ -369,6 +376,7 @@ /* * mei device states */ + unsigned long reset_count; enum mei_dev_state dev_state; enum mei_hbm_state hbm_state; u16 init_clients_timer; @@ -427,6 +435,7 @@ bool iamthif_canceled; struct work_struct init_work; + struct work_struct reset_work; /* List of bus devices */ struct list_head device_list; @@ -456,13 +465,25 @@ return DIV_ROUND_UP(sizeof(struct mei_msg_hdr) + length, 4); } +/** + * mei_slots2data- get data in slots - bytes from slots + * @slots - number of available slots + * returns - number of bytes in slots + */ +static inline u32 mei_slots2data(int slots) +{ + return slots * 4; +} + /* * mei init function prototypes */ void mei_device_init(struct mei_device *dev); -void mei_reset(struct mei_device *dev, int interrupts); +int mei_reset(struct mei_device *dev); int mei_start(struct mei_device *dev); +int mei_restart(struct mei_device *dev); void mei_stop(struct mei_device *dev); +void mei_cancel_work(struct mei_device *dev); /* * MEI interrupt functions prototype @@ -510,7 +531,7 @@ * NFC functions */ int mei_nfc_host_init(struct mei_device *dev); -void mei_nfc_host_exit(void); +void mei_nfc_host_exit(struct mei_device *dev); /* * NFC Client UUID @@ -626,9 +647,9 @@ int mei_register(struct mei_device *dev); void mei_deregister(struct mei_device *dev); -#define MEI_HDR_FMT "hdr:host=%02d me=%02d len=%d comp=%1d" +#define MEI_HDR_FMT "hdr:host=%02d me=%02d len=%d internal=%1d comp=%1d" #define MEI_HDR_PRM(hdr) \ (hdr)->host_addr, (hdr)->me_addr, \ - (hdr)->length, (hdr)->msg_complete + (hdr)->length, (hdr)->internal, (hdr)->msg_complete #endif --- linux-3.13.0.orig/drivers/misc/mei/nfc.c +++ linux-3.13.0/drivers/misc/mei/nfc.c @@ -92,7 +92,7 @@ * @cl: NFC host client * @cl_info: NFC info host client * @init_work: perform connection to the info client - * @fw_ivn: NFC Intervace Version Number + * @fw_ivn: NFC Interface Version Number * @vendor_id: NFC manufacturer ID * @radio_type: NFC radio type */ @@ -163,7 +163,7 @@ return 0; default: - dev_err(&dev->pdev->dev, "Unknow radio type 0x%x\n", + dev_err(&dev->pdev->dev, "Unknown radio type 0x%x\n", ndev->radio_type); return -EINVAL; @@ -175,14 +175,14 @@ ndev->bus_name = "pn544"; return 0; default: - dev_err(&dev->pdev->dev, "Unknow radio type 0x%x\n", + dev_err(&dev->pdev->dev, "Unknown radio type 0x%x\n", ndev->radio_type); return -EINVAL; } default: - dev_err(&dev->pdev->dev, "Unknow vendor ID 0x%x\n", + dev_err(&dev->pdev->dev, "Unknown vendor ID 0x%x\n", ndev->vendor_id); return -EINVAL; @@ -428,7 +428,7 @@ mutex_unlock(&dev->device_lock); if (mei_nfc_if_version(ndev) < 0) { - dev_err(&dev->pdev->dev, "Could not get the NFC interfave version"); + dev_err(&dev->pdev->dev, "Could not get the NFC interface version"); goto err; } @@ -469,7 +469,9 @@ return; err: + mutex_lock(&dev->device_lock); mei_nfc_free(ndev); + mutex_unlock(&dev->device_lock); return; } @@ -481,7 +483,7 @@ struct mei_cl *cl_info, *cl = NULL; int i, ret; - /* already initialzed */ + /* already initialized */ if (ndev->cl_info) return 0; @@ -547,12 +549,16 @@ return ret; } -void mei_nfc_host_exit(void) +void mei_nfc_host_exit(struct mei_device *dev) { struct mei_nfc_dev *ndev = &nfc_dev; + cancel_work_sync(&ndev->init_work); + + mutex_lock(&dev->device_lock); if (ndev->cl && ndev->cl->device) mei_cl_remove_device(ndev->cl->device); mei_nfc_free(ndev); + mutex_unlock(&dev->device_lock); } --- linux-3.13.0.orig/drivers/misc/mei/pci-me.c +++ linux-3.13.0/drivers/misc/mei/pci-me.c @@ -43,6 +43,9 @@ #include "hw-me.h" #include "client.h" +static bool disable_msi; +module_param(disable_msi, bool, 0); + /* mei_pci_tbl - PCI Device ID Table */ static DEFINE_PCI_DEVICE_TABLE(mei_me_pci_tbl) = { {PCI_DEVICE(PCI_VENDOR_ID_INTEL, MEI_DEV_ID_82946GZ)}, @@ -100,15 +103,31 @@ const struct pci_device_id *ent) { u32 reg; - if (ent->device == MEI_DEV_ID_PBG_1) { - pci_read_config_dword(pdev, 0x48, ®); - /* make sure that bit 9 is up and bit 10 is down */ - if ((reg & 0x600) == 0x200) { - dev_info(&pdev->dev, "Device doesn't have valid ME Interface\n"); - return false; - } + /* Cougar Point || Patsburg */ + if (ent->device == MEI_DEV_ID_CPT_1 || + ent->device == MEI_DEV_ID_PBG_1) { + pci_read_config_dword(pdev, PCI_CFG_HFS_2, ®); + /* make sure that bit 9 (NM) is up and bit 10 (DM) is down */ + if ((reg & 0x600) == 0x200) + goto no_mei; + } + + /* Lynx Point */ + if (ent->device == MEI_DEV_ID_LPT_H || + ent->device == MEI_DEV_ID_LPT_W || + ent->device == MEI_DEV_ID_LPT_HR) { + /* Read ME FW Status check for SPS Firmware */ + pci_read_config_dword(pdev, PCI_CFG_HFS_1, ®); + /* if bits [19:16] = 15, running SPS Firmware */ + if ((reg & 0xf0000) == 0xf0000) + goto no_mei; } + return true; + +no_mei: + dev_info(&pdev->dev, "Device doesn't have valid ME Interface\n"); + return false; } /** * mei_probe - Device Initialization Routine @@ -144,6 +163,21 @@ dev_err(&pdev->dev, "failed to get pci regions.\n"); goto disable_device; } + + if (dma_set_mask(&pdev->dev, DMA_BIT_MASK(64)) || + dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(64))) { + + err = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32)); + if (err) + err = dma_set_coherent_mask(&pdev->dev, + DMA_BIT_MASK(32)); + } + if (err) { + dev_err(&pdev->dev, "No usable DMA configuration, aborting\n"); + goto release_regions; + } + + /* allocates and initializes the mei dev structure */ dev = mei_me_dev_init(pdev); if (!dev) { @@ -158,7 +192,8 @@ err = -ENOMEM; goto free_device; } - pci_enable_msi(pdev); + if (!disable_msi) + pci_enable_msi(pdev); /* request and enable interrupt */ if (pci_dev_msi_enabled(pdev)) @@ -197,8 +232,8 @@ return 0; release_irq: + mei_cancel_work(dev); mei_disable_interrupts(dev); - flush_scheduled_work(); free_irq(pdev->irq, dev); disable_msi: pci_disable_msi(pdev); @@ -306,16 +341,14 @@ return err; } - mutex_lock(&dev->device_lock); - dev->dev_state = MEI_DEV_POWER_UP; - mei_clear_interrupts(dev); - mei_reset(dev, 1); - mutex_unlock(&dev->device_lock); + err = mei_restart(dev); + if (err) + return err; /* Start timer if stopped in suspend */ schedule_delayed_work(&dev->timer_work, HZ); - return err; + return 0; } static SIMPLE_DEV_PM_OPS(mei_me_pm_ops, mei_me_pci_suspend, mei_me_pci_resume); #define MEI_ME_PM_OPS (&mei_me_pm_ops) --- linux-3.13.0.orig/drivers/misc/mei/wd.c +++ linux-3.13.0/drivers/misc/mei/wd.c @@ -115,6 +115,7 @@ hdr.me_addr = dev->wd_cl.me_client_id; hdr.msg_complete = 1; hdr.reserved = 0; + hdr.internal = 0; if (!memcmp(dev->wd_data, mei_start_wd_params, MEI_WD_HDR_SIZE)) hdr.length = MEI_WD_START_MSG_SIZE; --- linux-3.13.0.orig/drivers/misc/mic/host/mic_device.h +++ linux-3.13.0/drivers/misc/mic/host/mic_device.h @@ -134,6 +134,8 @@ * @send_intr: Send an interrupt for a particular doorbell on the card. * @ack_interrupt: Hardware specific operations to ack the h/w on * receipt of an interrupt. + * @intr_workarounds: Hardware specific workarounds needed after + * handling an interrupt. * @reset: Reset the remote processor. * @reset_fw_ready: Reset firmware ready field. * @is_fw_ready: Check if firmware is ready for OS download. @@ -149,6 +151,7 @@ void (*write_spad)(struct mic_device *mdev, unsigned int idx, u32 val); void (*send_intr)(struct mic_device *mdev, int doorbell); u32 (*ack_interrupt)(struct mic_device *mdev); + void (*intr_workarounds)(struct mic_device *mdev); void (*reset)(struct mic_device *mdev); void (*reset_fw_ready)(struct mic_device *mdev); bool (*is_fw_ready)(struct mic_device *mdev); --- linux-3.13.0.orig/drivers/misc/mic/host/mic_main.c +++ linux-3.13.0/drivers/misc/mic/host/mic_main.c @@ -115,7 +115,7 @@ struct mic_device *mdev = data; struct mic_bootparam *bootparam = mdev->dp; - mdev->ops->ack_interrupt(mdev); + mdev->ops->intr_workarounds(mdev); switch (bootparam->shutdown_status) { case MIC_HALTED: --- linux-3.13.0.orig/drivers/misc/mic/host/mic_virtio.c +++ linux-3.13.0/drivers/misc/mic/host/mic_virtio.c @@ -156,7 +156,8 @@ static int _mic_virtio_copy(struct mic_vdev *mvdev, struct mic_copy_desc *copy) { - int ret = 0, iovcnt = copy->iovcnt; + int ret = 0; + u32 iovcnt = copy->iovcnt; struct iovec iov; struct iovec __user *u_iov = copy->iov; void __user *ubuf = NULL; @@ -369,7 +370,7 @@ struct mic_vdev *mvdev = data; struct mic_device *mdev = mvdev->mdev; - mdev->ops->ack_interrupt(mdev); + mdev->ops->intr_workarounds(mdev); schedule_work(&mvdev->virtio_bh_work); return IRQ_HANDLED; } --- linux-3.13.0.orig/drivers/misc/mic/host/mic_x100.c +++ linux-3.13.0/drivers/misc/mic/host/mic_x100.c @@ -174,35 +174,38 @@ } /** - * mic_ack_interrupt - Device specific interrupt handling. - * @mdev: pointer to mic_device instance + * mic_x100_ack_interrupt - Read the interrupt sources register and + * clear it. This function will be called in the MSI/INTx case. + * @mdev: Pointer to mic_device instance. * - * Returns: bitmask of doorbell events triggered. + * Returns: bitmask of interrupt sources triggered. */ static u32 mic_x100_ack_interrupt(struct mic_device *mdev) { - u32 reg = 0; - struct mic_mw *mw = &mdev->mmio; u32 sicr0 = MIC_X100_SBOX_BASE_ADDRESS + MIC_X100_SBOX_SICR0; + u32 reg = mic_mmio_read(&mdev->mmio, sicr0); + mic_mmio_write(&mdev->mmio, reg, sicr0); + return reg; +} + +/** + * mic_x100_intr_workarounds - These hardware specific workarounds are + * to be invoked everytime an interrupt is handled. + * @mdev: Pointer to mic_device instance. + * + * Returns: none + */ +static void mic_x100_intr_workarounds(struct mic_device *mdev) +{ + struct mic_mw *mw = &mdev->mmio; /* Clear pending bit array. */ if (MIC_A0_STEP == mdev->stepping) mic_mmio_write(mw, 1, MIC_X100_SBOX_BASE_ADDRESS + MIC_X100_SBOX_MSIXPBACR); - if (mdev->irq_info.num_vectors <= 1) { - reg = mic_mmio_read(mw, sicr0); - - if (unlikely(!reg)) - goto done; - - mic_mmio_write(mw, reg, sicr0); - } - if (mdev->stepping >= MIC_B0_STEP) mdev->intr_ops->enable_interrupts(mdev); -done: - return reg; } /** @@ -553,6 +556,7 @@ .write_spad = mic_x100_write_spad, .send_intr = mic_x100_send_intr, .ack_interrupt = mic_x100_ack_interrupt, + .intr_workarounds = mic_x100_intr_workarounds, .reset = mic_x100_hw_reset, .reset_fw_ready = mic_x100_reset_fw_ready, .is_fw_ready = mic_x100_is_fw_ready, --- linux-3.13.0.orig/drivers/misc/xgene/Kconfig +++ linux-3.13.0/drivers/misc/xgene/Kconfig @@ -0,0 +1 @@ +source "drivers/misc/xgene/qmtm/Kconfig" --- linux-3.13.0.orig/drivers/misc/xgene/Makefile +++ linux-3.13.0/drivers/misc/xgene/Makefile @@ -0,0 +1,5 @@ +# +# Makefile for APM X-GENE misc drivers. +# + +obj-$(CONFIG_XGENE_QMTM) += qmtm/ --- linux-3.13.0.orig/drivers/misc/xgene/qmtm/Kconfig +++ linux-3.13.0/drivers/misc/xgene/qmtm/Kconfig @@ -0,0 +1,9 @@ +config XGENE_QMTM + tristate "APM X-Gene Queue Manager/Traffic Manager driver" + depends on ARM64 || COMPILE_TEST + default y + help + This option enables APM X-Gene Queue Manager Traffic Manager (QMTM) + driver support. + QMTM is required for Ethernet, PktDMA (XOR Engine) and Security + Engine. --- linux-3.13.0.orig/drivers/misc/xgene/qmtm/Makefile +++ linux-3.13.0/drivers/misc/xgene/qmtm/Makefile @@ -0,0 +1,7 @@ +# +# Makefile for APM X-GENE Queue Manager Traffic Manager driver. +# + +obj-$(CONFIG_XGENE_QMTM) += xgene-qmtm.o + +xgene-qmtm-objs := xgene_qmtm_main.o xgene_qmtm_storm.o xgene_qmtm_error.o --- linux-3.13.0.orig/drivers/misc/xgene/qmtm/xgene_qmtm_error.c +++ linux-3.13.0/drivers/misc/xgene/qmtm/xgene_qmtm_error.c @@ -0,0 +1,283 @@ +/* + * AppliedMicro X-Gene SOC Queue Manager/Traffic Manager driver + * + * Copyright (c) 2013 Applied Micro Circuits Corporation. + * Author: Ravi Patel + * Keyur Chudgar + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include +#include "xgene_qmtm_main.h" + +#define QM_INTERRUPT_ADDR 0x00000124 +#define QM_INTERRUPTMASK_ADDR 0x00000128 +#define QUEUE_NOT_EMPTYMASK_MASK 0x80000000 +#define ACR_FIFO_CRITICALMASK_MASK 0x00000008 +#define QPCORE_ACR_ERRORMASK_MASK 0x00000004 +#define DEQ_AXI_ERRORMASK_MASK 0x00000002 +#define PBM_DEC_ERRORMASK_MASK 0x00000001 + +#define CSR_PBM_ERRINF_ADDR 0x00000134 +#define ACR_QID_RD(src) (((src) & 0x00ffc000)>>14) +#define QID_RD(src) (((src) & 0x000003ff)) + +#define CSR_MSGRD_ERRINF_ADDR 0x00000138 + +#define CSR_ERRQ_ADDR 0x00000218 +#define UNEXPECTED_EN_SET(dst, src) \ + (((dst) & ~0x80000000) | (((u32)(src)<<31) & 0x80000000)) +#define UNEXPECTED_QID_SET(dst, src) \ + (((dst) & ~0x03ff0000) | (((u32)(src)<<16) & 0x03ff0000)) +#define EXPECTED_EN_SET(dst, src) \ + (((dst) & ~0x00008000) | (((u32)(src)<<15) & 0x00008000)) +#define EXPECTED_QID_SET(dst, src) \ + (((dst) & ~0x000003ff) | (((u32)(src)) & 0x000003ff)) + +/* QMTM Error Reporting */ +enum xgene_qmtm_lerr { + QMTM_NO_ERR, + QMTM_MSG_SIZE_ERR, + QMTM_HOP_COUNT_ERR, + QMTM_VQ_ENQ_ERR, + QMTM_DISABLEDQ_ENQ_ERR, + QMTM_Q_OVERFLOW_ERR, + QMTM_ENQUEUE_ERR, + QMTM_DEQUEUE_ERR, +}; + +/* Parse Error Message received on Error Queue */ +static void xgene_qmtm_error_msg(struct xgene_qmtm_qinfo *qinfo, + struct xgene_qmtm_msg32 *msg) +{ + struct xgene_qmtm_msg16 *msg16 = &msg->msg16; + struct device *dev = &qinfo->qmtm->pdev->dev; + u16 queue_id = qinfo->queue_id; + + dev_err(dev, "Error ELErr[%d] LErr[%d] for Qid[%d]\n", + msg16->ELErr, msg16->LErr, queue_id); + + switch (msg16->LErr) { + case QMTM_MSG_SIZE_ERR: + dev_err(dev, "Msg Size Error for Enqueue on Queue %d\n", + queue_id); + break; + case QMTM_HOP_COUNT_ERR: + dev_err(dev, "Hop count error, hop count of 3 for Queue %d\n", + queue_id); + break; + case QMTM_VQ_ENQ_ERR: + dev_err(dev, "Enqueue on Virtual Queue %d\n", queue_id); + break; + case QMTM_DISABLEDQ_ENQ_ERR: + dev_err(dev, "Enqueue on disabled Queue %d\n", queue_id); + break; + case QMTM_Q_OVERFLOW_ERR: + dev_err(dev, "Queue %d overflow, message sent to Error Queue\n", + queue_id); + break; + case QMTM_ENQUEUE_ERR: + dev_err(dev, "Enqueue Queue\n"); + break; + case QMTM_DEQUEUE_ERR: + dev_err(dev, "Dequeue Queue\n"); + break; + default: + dev_err(dev, "Unknown Error\n"); + break; + } +} + +static void xgene_qmtm_error(struct xgene_qmtm *qmtm) +{ + struct device *dev = &qmtm->pdev->dev; + struct xgene_qmtm_qinfo qinfo; + u32 status; + u32 pbm_err; + u32 msgrd_err; + + memset(&qinfo, 0, sizeof(qinfo)); + qinfo.qmtm = qmtm; + + xgene_qmtm_rd32(qmtm, QM_INTERRUPT_ADDR, &status); + dev_err(dev, "error interrupt status 0x%08X\n", status); + + xgene_qmtm_rd32(qmtm, CSR_PBM_ERRINF_ADDR, &pbm_err); + dev_err(dev, "CSR PBM ERRINF (0x%X) value 0x%08X\n", + CSR_PBM_ERRINF_ADDR, pbm_err); + + xgene_qmtm_rd32(qmtm, CSR_MSGRD_ERRINF_ADDR, &msgrd_err); + dev_err(dev, "CSR MSGRD ERRINF (0x%X) value 0x%08X\n", + CSR_MSGRD_ERRINF_ADDR, msgrd_err); + + qinfo.queue_id = QID_RD(msgrd_err); + dev_err(dev, "DEQ QID %d\n", qinfo.queue_id); + xgene_qmtm_read_qstate(&qinfo); + print_hex_dump(KERN_ERR, "DEQSTATE ", DUMP_PREFIX_ADDRESS, 16, 4, + qinfo.qstate, sizeof(qinfo.qstate), 1); + + qinfo.queue_id = ACR_QID_RD(msgrd_err); + dev_err(dev, "ENQ QID %d\n", qinfo.queue_id); + xgene_qmtm_read_qstate(&qinfo); + print_hex_dump(KERN_INFO, "ENQSTATE ", DUMP_PREFIX_ADDRESS, 16, 4, + qinfo.qstate, sizeof(qinfo.qstate), 1); + + xgene_qmtm_wr32(qmtm, QM_INTERRUPT_ADDR, status); +} + +static irqreturn_t xgene_qmtm_error_intr(int irq, void *qdev) +{ + xgene_qmtm_error((struct xgene_qmtm *)qdev); + + return IRQ_HANDLED; +} + +static irqreturn_t xgene_qmtm_error_queue_intr(int irq, void *qdev) +{ + struct xgene_qmtm_msg64 msg; + struct xgene_qmtm_qinfo *qinfo = (struct xgene_qmtm_qinfo *)qdev; + struct xgene_qmtm *qmtm = qinfo->qmtm; + struct device *dev = &qmtm->pdev->dev; + u16 queue_id = qinfo->queue_id; + u8 qmtm_ip = qinfo->qmtm_ip; + int rc; + + rc = xgene_qmtm_dequeue_msg(qinfo->qdesc, &msg); + if (rc < 0) { + /* Return if invalid interrupt */ + dev_err(dev, "QMTM%d QID %d PBN %d IRQ %d spurious\n", + qmtm_ip, queue_id, qinfo->pbn, irq); + return IRQ_HANDLED; + } + + xgene_qmtm_error(qmtm); + dev_err(dev, "QMTM%d Error: QID %d\n", qmtm_ip, queue_id); + print_hex_dump(KERN_INFO, "Err q MSG: ", DUMP_PREFIX_ADDRESS, + 16, 4, &msg, msg.msg32_1.msg16.NV ? 64 : 32, 1); + xgene_qmtm_error_msg(qinfo, &msg.msg32_1); + + return IRQ_HANDLED; +} + +int xgene_qmtm_enable_error(struct xgene_qmtm *qmtm) +{ + struct device *dev = &qmtm->pdev->dev; + struct xgene_qmtm_qinfo qinfo; + int rc = 0; + u32 val; + u16 irq = platform_get_irq(qmtm->pdev, 0); + u8 qmtm_ip = qmtm->qmtm_ip; + + if (irq) { + u32 mask; + + memset(qmtm->error_irq_s, 0, sizeof(qmtm->error_irq_s)); + snprintf(qmtm->error_irq_s, sizeof(qmtm->error_irq_s), + "%s_Err", qmtm->idev->name); + + rc = devm_request_irq(dev, irq, xgene_qmtm_error_intr, 0, + qmtm->error_irq_s, qmtm); + if (rc < 0) { + dev_err(dev, "request_irq %d failed for %s (%d)\n", + irq, qmtm->error_irq_s, rc); + return rc; + } + + qmtm->error_irq = irq; + + /* Enable QM hardware interrupts */ + mask = ~(u32) (PBM_DEC_ERRORMASK_MASK + | ACR_FIFO_CRITICALMASK_MASK + | QUEUE_NOT_EMPTYMASK_MASK + | DEQ_AXI_ERRORMASK_MASK + | QPCORE_ACR_ERRORMASK_MASK); + xgene_qmtm_wr32(qmtm, QM_INTERRUPTMASK_ADDR, mask); + } + + if (qmtm_ip == QMTM3) + return rc; + + memset(&qinfo, 0, sizeof(qinfo)); + qinfo.sdev = qmtm->idev; + qinfo.qaccess = QACCESS_ALT; + qinfo.qtype = QTYPE_PQ; + qinfo.qsize = QSIZE_2KB; + qinfo.flags = XGENE_SLAVE_DEFAULT_FLAGS; + + /* create error queue */ + rc = xgene_qmtm_set_qinfo(&qinfo); + if (rc < 0) { + dev_err(dev, "QMTM %d unable to configure error queue\n", + qmtm_ip); + return rc; + } + + qmtm->error_qinfo = qmtm->qinfo[qinfo.queue_id]; + memset(qmtm->error_queue_irq_s, 0, sizeof(qmtm->error_queue_irq_s)); + snprintf(qmtm->error_queue_irq_s, sizeof(qmtm->error_queue_irq_s), + "%s_ErQ", qmtm->idev->name); + + rc = devm_request_irq(dev, qinfo.qdesc->irq, + xgene_qmtm_error_queue_intr, + 0, qmtm->error_queue_irq_s, qmtm->error_qinfo); + if (rc < 0) { + dev_err(dev, "request_irq %d failed for %s (%d)\n", + qinfo.qdesc->irq, qmtm->error_queue_irq_s, rc); + xgene_qmtm_clr_qinfo(&qinfo); + qmtm->error_qinfo = NULL; + return rc; + } + + val = 0; + val = UNEXPECTED_EN_SET(val, 1); + val = UNEXPECTED_QID_SET(val, qinfo.queue_id); + val = EXPECTED_EN_SET(val, 1); + val = EXPECTED_QID_SET(val, qinfo.queue_id); + xgene_qmtm_wr32(qmtm, CSR_ERRQ_ADDR, val); + + return rc; +} + +void xgene_qmtm_disable_error(struct xgene_qmtm *qmtm) +{ + struct xgene_qmtm_qinfo *error_qinfo = qmtm->error_qinfo; + struct device *dev = &qmtm->pdev->dev; + + /* Free QMTM Error IRQ */ + if (qmtm->error_irq) { + u32 mask; + + /* Disable QM hardware interrupts */ + mask = PBM_DEC_ERRORMASK_MASK + | ACR_FIFO_CRITICALMASK_MASK + | QUEUE_NOT_EMPTYMASK_MASK + | DEQ_AXI_ERRORMASK_MASK | QPCORE_ACR_ERRORMASK_MASK; + xgene_qmtm_wr32(qmtm, QM_INTERRUPTMASK_ADDR, mask); + devm_free_irq(dev, qmtm->error_irq, qmtm); + qmtm->error_irq = 0; + } + + if (error_qinfo) { + struct xgene_qmtm_qinfo qinfo; + + /* Free QMTM Error Queue IRQ */ + devm_free_irq(dev, error_qinfo->qdesc->irq, error_qinfo); + + /* Delete error queue */ + qinfo.sdev = error_qinfo->qmtm->idev; + qinfo.queue_id = error_qinfo->queue_id; + xgene_qmtm_clr_qinfo(&qinfo); + qmtm->error_qinfo = NULL; + + /* Unassign error queue */ + xgene_qmtm_wr32(qmtm, CSR_ERRQ_ADDR, 0); + } +} --- linux-3.13.0.orig/drivers/misc/xgene/qmtm/xgene_qmtm_main.c +++ linux-3.13.0/drivers/misc/xgene/qmtm/xgene_qmtm_main.c @@ -0,0 +1,765 @@ +/* + * AppliedMicro X-Gene SOC Queue Manager/Traffic Manager driver + * + * Copyright (c) 2013 Applied Micro Circuits Corporation. + * Author: Ravi Patel + * Keyur Chudgar + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include +#include +#include +#include +#include +#include "xgene_qmtm_main.h" + +#define XGENE_QMTM_DRIVER_VER "1.0" +#define XGENE_QMTM_DRIVER_NAME "xgene-qmtm" +#define XGENE_QMTM_DRIVER_DESC "APM X-Gene QMTM driver" + +/* CSR Address Macros */ +#define CSR_QM_CONFIG_ADDR 0x00000004 +#define QM_ENABLE_WR(src) (((u32)(src)<<31) & 0x80000000) + +#define CSR_PBM_ADDR 0x00000008 +#define OVERWRITE_WR(src) (((u32)(src)<<31) & 0x80000000) +#define SLVID_PBN_WR(src) (((u32)(src)) & 0x000003ff) +#define SLAVE_ID_SHIFT 6 + +#define CSR_PBM_BUF_WR_ADDR 0x0000000c +#define CSR_PBM_BUF_RD_ADDR 0x00000010 +#define PB_SIZE_WR(src) (((u32)(src)<<31) & 0x80000000) +#define PREFETCH_BUF_EN_SET(dst, src) \ + (((dst) & ~0x00200000) | (((u32)(src)<<21) & 0x00200000)) +#define IS_FREE_POOL_SET(dst, src) \ + (((dst) & ~0x00100000) | (((u32)(src)<<20) & 0x00100000)) +#define TLVQ_SET(dst, src) \ + (((dst) & ~0x00080000) | (((u32)(src)<<19) & 0x00080000)) +#define CORRESPONDING_QNUM_SET(dst, src) \ + (((dst) & ~0x0007fe00) | (((u32)(src)<<9) & 0x0007fe00)) + +#define CSR_PBM_CTICK0_ADDR 0x00000018 +#define MIN_COAL_TAP 0x0 +#define MAX_COAL_TAP 0x7 + +#define CSR_THRESHOLD0_SET1_ADDR 0x00000030 +#define CSR_THRESHOLD1_SET1_ADDR 0x00000034 +#define CSR_HYSTERESIS_ADDR 0x00000068 +#define CSR_QM_MBOX_NE_INT_MODE_ADDR 0x0000017c +#define CSR_QMLITE_PBN_MAP_0_ADDR 0x00000228 + +#define CSR_RECOMB_CTRL_0_ADDR 0x00000230 +#define RECOMB_EN0_SET(dst, src) \ + (((dst) & ~0x00000001) | (((u32)(src)) & 0x00000001)) + +/* QMTM Diag CSR */ +#define QM_GLBL_DIAG_CSR_BASE_ADDR_OFFSET 0xd000 +#define QM_CFG_MEM_RAM_SHUTDOWN_ADDR 0x00000070 +#define QM_CFG_MEM_RAM_SHUTDOWN_DEFAULT 0xffffffff + +/* PBN macros */ +#define QMTM_MIN_PBN_ID 0 +#define QMTM_MAX_PBN_ID 31 + +/* Common for Queue ID and PBN */ +#define RES_MASK(nr) (1UL << ((nr) % 32)) +#define RES_WORD(nr) ((nr) / 32) + +void xgene_qmtm_wr32(struct xgene_qmtm *qmtm, u32 offset, u32 data) +{ + void *addr = (u8 *)qmtm->csr_vaddr + offset; + writel(data, addr); +} + +void xgene_qmtm_rd32(struct xgene_qmtm *qmtm, u32 offset, u32 *data) +{ + void *addr = (u8 *)qmtm->csr_vaddr + offset; + *data = readl(addr); +} + +/* Get available PBN or Queue Id */ +static int xgene_qmtm_get_resource_id(u32 *resource, u32 start, u32 end) +{ + u32 index; + + for (index = start; index < end; index++) { + if ((resource[RES_WORD(index)] & RES_MASK(index)) == 0) { + resource[RES_WORD(index)] |= RES_MASK(index); + return index; + } + } + + return -ENODEV; +} + +/* Put used PBN or Queue Id */ +static inline void xgene_qmtm_put_resource_id(u32 *resource, u32 index) +{ + resource[RES_WORD(index)] &= ~(u32) RES_MASK(index); +} + +static void xgene_qmtm_write_pbm(struct xgene_qmtm_qinfo *qinfo, u32 val) +{ + u32 pbm = SLVID_PBN_WR((qinfo->slave_id << SLAVE_ID_SHIFT) | + qinfo->pbn) | OVERWRITE_WR(1); + + xgene_qmtm_wr32(qinfo->qmtm, CSR_PBM_ADDR, pbm); + + if (qinfo->qmtm_ip == QMTM0 || qinfo->qmtm_ip == QMTM2) + val |= PB_SIZE_WR(1); + + xgene_qmtm_wr32(qinfo->qmtm, CSR_PBM_BUF_WR_ADDR, val); +} + +static u32 xgene_qmtm_read_pbm(struct xgene_qmtm_qinfo *qinfo) +{ + u32 pbm = SLVID_PBN_WR((qinfo->slave_id << SLAVE_ID_SHIFT) | + qinfo->pbn); + + xgene_qmtm_wr32(qinfo->qmtm, CSR_PBM_ADDR, pbm); + xgene_qmtm_rd32(qinfo->qmtm, CSR_PBM_BUF_RD_ADDR, &pbm); + + return pbm; +} + +static void xgene_qmtm_set_pbm(struct xgene_qmtm_qinfo *qinfo) +{ + u16 is_fp = qinfo->qtype == QTYPE_FP ? 1 : 0; + u16 is_vq = qinfo->qtype == QTYPE_VQ ? 1 : 0; + u32 val = 0; + + val = CORRESPONDING_QNUM_SET(val, qinfo->queue_id); + val = IS_FREE_POOL_SET(val, is_fp); + val = TLVQ_SET(val, is_vq); + val = PREFETCH_BUF_EN_SET(val, 1); + xgene_qmtm_write_pbm(qinfo, val); +} + +static void xgene_qmtm_clr_pbm(struct xgene_qmtm_qinfo *qinfo) +{ + xgene_qmtm_write_pbm(qinfo, 0); +} + +/** + * xgene_qmtm_set_qinfo - Create and configure a queue + * @sdev: Slave context + * @qtype: Queue type (P_QUEUE or FP_QUEUE) + * @qsize: Queue size see xgene_qmtm_qsize + * @qaccess: Queue access method see xgene_qmtm_qaccess + * @flags: Queue Information flags + * @qpaddr: If Desire Queue Physical Address to use + * + * This API will be called by APM X-Gene SOC Ethernet, PktDMA (XOR Engine), + * and Security Engine subsystems to create and configure a queue. + * + * Return: 0 on Success or -1 on Failure + * On Success, updates following in qinfo, + * qmtm_ip - QMTM0, QMTM1, QMTM2 or QMTM3 + * qmtm - QMTM instance context + * slave - Slave see xgene_slave + * slave_id - Slave ID see xgene_qmtm_slave_id + * pbn - Slave ID's prefetch buffer number + * queue_id - Queue ID + * qdesc - Queue descriptor + */ +int xgene_qmtm_set_qinfo(struct xgene_qmtm_qinfo *set) +{ + struct xgene_qmtm_sdev *sdev = set->sdev; + struct device *dev; + struct xgene_qmtm *qmtm; + struct xgene_qmtm_qinfo *qinfo; + u32 *queue_resource = NULL, *pbn_resource = NULL; + int rc; + u8 pbn = 0; + u16 queue_id = 0; + + qmtm = sdev->qmtm; + dev = &qmtm->pdev->dev; + + if (set->flags & XGENE_SLAVE_PB_CONFIGURE) { + u8 pbn_start, pbn_count; + + if (set->qtype == QTYPE_FP) { + pbn_resource = &sdev->fq_pbn_pool; + pbn_start = sdev->fq_pbn_start & ~(u8) 0x20; + pbn_count = sdev->fq_pbn_count; + } else { + pbn_resource = &sdev->wq_pbn_pool; + pbn_start = sdev->wq_pbn_start; + pbn_count = sdev->wq_pbn_count; + } + + rc = xgene_qmtm_get_resource_id(pbn_resource, pbn_start, + pbn_start + pbn_count); + if (rc < 0) { + dev_err(dev, "SETQ: slave %d out of PBN\n", + sdev->slave); + goto _ret_set_qinfo; + } + + pbn = rc; + } + + queue_resource = qmtm->queue_pool; + rc = xgene_qmtm_get_resource_id(queue_resource, 0, qmtm->max_queues); + if (rc < 0) { + dev_err(dev, "SETQ: QMTM %d out of Queue ID\n", sdev->qmtm_ip); + goto _put_pbn_resource; + } + + queue_id = rc; + qinfo = kzalloc(sizeof(struct xgene_qmtm_qinfo), GFP_KERNEL); + if (qinfo == NULL) { + dev_err(dev, "SETQ: Unable to allocate qinfo\n"); + rc = -ENOMEM; + goto _put_queue_resource; + } + + qinfo->slave = sdev->slave; + qinfo->slave_id = sdev->slave_id; + qinfo->qmtm_ip = sdev->qmtm_ip; + qinfo->qtype = set->qtype; + qinfo->qsize = set->qsize; + qinfo->qaccess = set->qaccess; + qinfo->flags = set->flags; + qinfo->pbn = set->qtype == QTYPE_FP ? (pbn | 0x20) : pbn; + qinfo->queue_id = queue_id; + qinfo->qpaddr = set->qpaddr; + qinfo->qfabric = qmtm->fabric_vaddr + (queue_id << 6); + qinfo->sdev = sdev; + qinfo->qmtm = qmtm; + rc = qmtm->set_qstate(qinfo); + if (rc < 0) { + dev_err(dev, "SETQ: set_qstate error for %s Queue ID %d\n", + sdev->name, queue_id); + goto _del_qstate; + } + + if (qinfo->qaccess == QACCESS_ALT) + qinfo->qdesc->command = qinfo->qfabric + 0x2C; + + if (set->flags & XGENE_SLAVE_PB_CONFIGURE) { + xgene_qmtm_set_pbm(qinfo); + + if (set->qaccess == QACCESS_ALT && + sdev->slave_id == QMTM_SLAVE_ID_CPU && + set->qtype == QTYPE_PQ) { + u32 data; + + xgene_qmtm_rd32(qmtm, CSR_QM_MBOX_NE_INT_MODE_ADDR, + &data); + data |= (u32) (1 << (31 - pbn)); + xgene_qmtm_wr32(qmtm, CSR_QM_MBOX_NE_INT_MODE_ADDR, + data); + } + + if (set->qtype == QTYPE_PQ && + (sdev->slave_id == QMTM_SLAVE_ID_CPU || + sdev->slave_id == QMTM_SLAVE_ID_MSLIM)) + qinfo->qdesc->irq = qmtm->dequeue_irq[pbn]; + } + + qmtm->qinfo[queue_id] = qinfo; + memcpy(set, qinfo, sizeof(struct xgene_qmtm_qinfo)); + return rc; + +_del_qstate: + qmtm->clr_qstate(qinfo); + kfree(qinfo); + +_put_queue_resource: + xgene_qmtm_put_resource_id(queue_resource, queue_id); + +_put_pbn_resource: + if (set->flags & XGENE_SLAVE_PB_CONFIGURE) + xgene_qmtm_put_resource_id(pbn_resource, pbn); + +_ret_set_qinfo: + return rc; +} +EXPORT_SYMBOL_GPL(xgene_qmtm_set_qinfo); + +/** + * xgene_qmtm_clr_qinfo - Unconfigure and delete a queue + * @sdev: Slave context + * @queue_id: Queue ID + * + * This API will be called by APM X-Gene SOC Ethernet, PktDMA (XOR Engine), + * and Security Engine subsystems to unconfigure and delete a queue. + */ +void xgene_qmtm_clr_qinfo(struct xgene_qmtm_qinfo *clr) +{ + struct xgene_qmtm_sdev *sdev = clr->sdev; + struct xgene_qmtm *qmtm; + struct xgene_qmtm_qinfo *qinfo; + u8 queue_id = clr->queue_id; + + qmtm = sdev->qmtm; + qinfo = qmtm->qinfo[queue_id]; + + if (qinfo->flags & XGENE_SLAVE_PB_CONFIGURE) { + u32 *pbn_resource; + u8 qtype = qinfo->qtype; + u8 pbn = (qtype == QTYPE_FP) ? + (qinfo->pbn & ~(u8) 0x20) : qinfo->pbn; + + if (qinfo->qaccess == QACCESS_ALT && + qinfo->slave_id == QMTM_SLAVE_ID_CPU && qtype == QTYPE_PQ) { + u32 data; + + xgene_qmtm_rd32(qmtm, CSR_QM_MBOX_NE_INT_MODE_ADDR, + &data); + data &= ~(u32) (1 << (31 - pbn)); + xgene_qmtm_wr32(qmtm, CSR_QM_MBOX_NE_INT_MODE_ADDR, + data); + } + + if (qinfo->qtype == QTYPE_FP) + pbn_resource = &sdev->fq_pbn_pool; + else + pbn_resource = &sdev->wq_pbn_pool; + + xgene_qmtm_clr_pbm(qinfo); + xgene_qmtm_put_resource_id(pbn_resource, pbn); + } + + qmtm->clr_qstate(qinfo); + kfree(qinfo); + xgene_qmtm_put_resource_id(qmtm->queue_pool, queue_id); + qmtm->qinfo[queue_id] = NULL; +} +EXPORT_SYMBOL_GPL(xgene_qmtm_clr_qinfo); + +/** + * xgene_qmtm_read_qstate - Get Queue State information for a queue + * @qmtm: QMTM instance context + * @queue_id: Queue ID + * + * This API will be called by APM X-Gene SOC Ethernet, PktDMA (XOR Engine), + * and Security Engine subsystems to read queue state of a queue. + * + * Return: Updates following in qinfo, + * qstate - Current Queue State in QMTM + * nummsgs - Number os messages in the Queue + * pbm_state - Current prefetch buffer manager state + */ +void xgene_qmtm_read_qstate(struct xgene_qmtm_qinfo *qinfo) +{ + struct xgene_qmtm *qmtm = qinfo->qmtm; + u8 queue_id = qinfo->queue_id; + + memcpy(qinfo, qmtm->qinfo[queue_id], sizeof(struct xgene_qmtm_qinfo)); + qmtm->read_qstate(qinfo); + + if (qinfo->flags & XGENE_SLAVE_PB_CONFIGURE) + qinfo->pbm_state = xgene_qmtm_read_pbm(qinfo); +} +EXPORT_SYMBOL_GPL(xgene_qmtm_read_qstate); + +/** + * xgene_qmtm_intr_coalesce - Set interrupt coalescing for ingrgess queue + * @qmtm: QMTM instance context + * @pbn: CPU's prefetch buffer number corresponding to the interrupt + * @tap: Tap value to set + * + * This API will be called by APM X-Gene SOC Ethernet, PktDMA (XOR Engine), + * and Security Engine subsystems to set interrupt for its ingress queue. + * + * Return: 0 on Success or -1 on Failure + */ +int xgene_qmtm_intr_coalesce(struct xgene_qmtm_qinfo *qinfo, u8 tap) +{ + u32 val, offset, mask, shift; + u8 pbn = qinfo->pbn; + + if (tap < MIN_COAL_TAP || tap > MAX_COAL_TAP) + return -EINVAL; + + if (pbn < QMTM_MIN_PBN_ID || pbn > QMTM_MAX_PBN_ID) + return -EINVAL; + + offset = 4 * (pbn / 8); + shift = 4 * (7 - (pbn % 8)); + mask = 7 << shift; + + xgene_qmtm_rd32(qinfo->qmtm, CSR_PBM_CTICK0_ADDR + offset, &val); + val = (val & ~(u32) mask) | (((u32) tap << shift) & mask); + xgene_qmtm_wr32(qinfo->qmtm, CSR_PBM_CTICK0_ADDR + offset, val); + + return 0; +} +EXPORT_SYMBOL_GPL(xgene_qmtm_intr_coalesce); + +/** + * xgene_qmtm_fp_dealloc_msg - Fill a buffer in a free pool queue + * @qdesc: Queue descriptor + * @msg: QMTM free pool buffer message to fill in to queue + * + * This API will be called by APM X-Gene SOC Ethernet, PktDMA (XOR Engine), + * and Security Engine subsystems to fill a buffer in its free pool queue. + */ +void xgene_qmtm_fp_dealloc_msg(struct xgene_qmtm_qdesc *qdesc, + struct xgene_qmtm_msg16 *msg) +{ + u32 qtail = qdesc->qtail; + u32 count = qdesc->count; + u8 *tailptr = (u8 *)&qdesc->msg16[qtail]; + + memcpy(tailptr, msg, 16); + + if (++qtail == count) + qtail = 0; + + writel(1, qdesc->command); + qdesc->qtail = qtail; +} +EXPORT_SYMBOL_GPL(xgene_qmtm_fp_dealloc_msg); + +/** + * xgene_qmtm_enqueue_msg - Enqueue a work message in subsystem's work queue + * @qdesc: Queue descriptor + * @msg: X-Gene SOC subsystem's work message to enqueue in to queue + * + * This API will be called by APM X-Gene SOC Ethernet, PktDMA (XOR Engine), + * and Security Engine subsystems to enqueue work message in its work queue. + */ +void xgene_qmtm_enqueue_msg(struct xgene_qmtm_qdesc *qdesc, + struct xgene_qmtm_msg64 *msg) +{ + u32 qtail = qdesc->qtail; + u32 count = qdesc->count; + u8 *tailptr = (u8 *)&qdesc->msg32[qtail]; + + memcpy(tailptr, msg, 32); + + if (++qtail == count) + qtail = 0; + + if (!msg->msg32_1.msg16.NV) { + writel(1, qdesc->command); + } else { + memcpy(tailptr + 32, (u8 *) msg + 32, 32); + + if (++qtail == count) + qtail = 0; + + writel(2, qdesc->command); + } + + qdesc->qtail = qtail; +} +EXPORT_SYMBOL_GPL(xgene_qmtm_enqueue_msg); + +/** + * xgene_qmtm_dequeue_msg - Dequeue a work message from QMTM instance + * @qdesc: Queue descriptor + * @msg: Dequeued work message from X-Gene SOC subsystem to CPU + * + * This API will be called by APM X-Gene SOC Ethernet, PktDMA (XOR Engine), + * and Security Engine subsystems to dequeue work message from its ingress + * queue. + * + * Return: 0 on Success or -1 on Failure + */ +int xgene_qmtm_dequeue_msg(struct xgene_qmtm_qdesc *qdesc, + struct xgene_qmtm_msg64 *msg) +{ + u32 qhead = qdesc->qhead; + u32 count = qdesc->count; + u32 *headptr = (u32 *)&qdesc->msg32[qhead]; + + if (headptr[EMPTY_SLOT_INDEX] == EMPTY_SLOT) + return -EAGAIN; + + memcpy(msg, headptr, 32); + headptr[EMPTY_SLOT_INDEX] = EMPTY_SLOT; + + if (++qhead == count) + qhead = 0; + + if (!msg->msg32_1.msg16.NV) { + writel(0xFFFFFFFF, qdesc->command); + } else { + headptr += 8; + + if (headptr[EMPTY_SLOT_INDEX] == EMPTY_SLOT) + return -EAGAIN; + + memcpy((u8 *) msg + 32, headptr, 32); + headptr[EMPTY_SLOT_INDEX] = EMPTY_SLOT; + + if (++qhead == count) + qhead = 0; + + writel(0xFFFFFFFE, qdesc->command); + } + + qdesc->qhead = qhead; + + return 0; +} +EXPORT_SYMBOL_GPL(xgene_qmtm_dequeue_msg); + +/** + * xgene_qmtm_get_sdev - Get slave context from slave name + * @name: Slave name + * + * This API will be called by APM X-Gene SOC Ethernet, PktDMA (XOR Engine), + * and Security Engine subsystems to get its slave context from its name. + * + * Return: Slave context on Success or NULL on Failure + */ +struct xgene_qmtm_sdev *xgene_qmtm_get_sdev(char *name) +{ + return storm_qmtm_get_sdev(name); +} +EXPORT_SYMBOL_GPL(xgene_qmtm_get_sdev); + +static int xgene_qmtm_enable(struct xgene_qmtm *qmtm) +{ + struct xgene_qmtm_qinfo qinfo; + struct device *dev = &qmtm->pdev->dev; + int rc, mwait = 0; + u32 val; + u32 queue_id; + + qmtm->clk = devm_clk_get(dev, NULL); + if (IS_ERR(qmtm->clk)) { + dev_err(dev, "can't get clock\n"); + return PTR_ERR(qmtm->clk); + } + + rc = clk_prepare_enable(qmtm->clk); + if (rc < 0) { + dev_err(dev, "clock prepare enable failed"); + return rc; + } + + xgene_qmtm_wr32(qmtm, QM_GLBL_DIAG_CSR_BASE_ADDR_OFFSET + + QM_CFG_MEM_RAM_SHUTDOWN_ADDR, 0); + do { + /* Wait for Memory to come out of shutdown */ + usleep_range(1000, 2000); + xgene_qmtm_rd32(qmtm, QM_GLBL_DIAG_CSR_BASE_ADDR_OFFSET + + QM_CFG_MEM_RAM_SHUTDOWN_ADDR, &val); + + if (mwait++ >= 1000) { + rc = -EIO; + dev_err(dev, "RAM not out of shutdown %d\n", rc); + clk_disable_unprepare(qmtm->clk); + return rc; + } + } while (val == QM_CFG_MEM_RAM_SHUTDOWN_DEFAULT); + + switch (qmtm->qmtm_ip) { + case QMTM0: + case QMTM2: + xgene_qmtm_rd32(qmtm, CSR_RECOMB_CTRL_0_ADDR, &val); + val = RECOMB_EN0_SET(val, 1); + xgene_qmtm_wr32(qmtm, CSR_RECOMB_CTRL_0_ADDR, val); + break; + case QMTM3: + xgene_qmtm_wr32(qmtm, CSR_QMLITE_PBN_MAP_0_ADDR, 0x00000000); + } + + /* program threshold set 1 and all hysteresis */ + xgene_qmtm_wr32(qmtm, CSR_THRESHOLD0_SET1_ADDR, 100); + xgene_qmtm_wr32(qmtm, CSR_THRESHOLD1_SET1_ADDR, 200); + xgene_qmtm_wr32(qmtm, CSR_HYSTERESIS_ADDR, 0xFFFFFFFF); + + /* Enable QPcore */ + xgene_qmtm_wr32(qmtm, CSR_QM_CONFIG_ADDR, QM_ENABLE_WR(1)); + + /* Clear all HW queue state in case they were not de-activated */ + memset(&qinfo, 0, sizeof(qinfo)); + qinfo.qmtm = qmtm; + + for (queue_id = 0; queue_id < qmtm->max_queues; queue_id++) { + qinfo.queue_id = queue_id; + qmtm->write_qstate(&qinfo); + } + + /* Enable error reporting */ + return xgene_qmtm_enable_error(qmtm); +} + +static int xgene_qmtm_disable(struct xgene_qmtm *qmtm) +{ + u32 queue_id; + + /* Disable error reporting */ + xgene_qmtm_disable_error(qmtm); + + for (queue_id = 0; queue_id < qmtm->max_queues; queue_id++) { + if (qmtm->qinfo[queue_id]) { + dev_err(&qmtm->pdev->dev, + "QMTM %d Queue ID %d Resource in use\n", + qmtm->qmtm_ip, queue_id); + return -EAGAIN; + } + } + + /* Disable QPcore */ + xgene_qmtm_wr32(qmtm, CSR_QM_CONFIG_ADDR, QM_ENABLE_WR(0)); + clk_disable_unprepare(qmtm->clk); + + return 0; +} + +static struct xgene_qmtm *xgene_alloc_qmtm(struct platform_device *pdev) +{ + struct xgene_qmtm *qmtm; + int max_queues, malloc_size; + + qmtm = devm_kzalloc(&pdev->dev, sizeof(struct xgene_qmtm), GFP_KERNEL); + if (qmtm == NULL) { + dev_err(&pdev->dev, "Unable to allocate QMTM context\n"); + return NULL; + } + + qmtm->pdev = pdev; + platform_set_drvdata(pdev, qmtm); + max_queues = QMTM_MAX_QUEUES; + malloc_size = max_queues * (sizeof(struct xgene_qmtm_info *)); + qmtm->qinfo = devm_kzalloc(&pdev->dev, malloc_size, GFP_KERNEL); + if (qmtm->qinfo == NULL) { + dev_err(&pdev->dev, "Unable to allocate QMTM Queue context\n"); + return NULL; + } + + malloc_size = RES_WORD(max_queues + 31) * sizeof(u32); + qmtm->queue_pool = devm_kzalloc(&pdev->dev, malloc_size, GFP_KERNEL); + if (qmtm->queue_pool == NULL) { + dev_err(&pdev->dev, "Unable to allocate QMTM Queue Pool\n"); + return NULL; + } + + qmtm->max_queues = max_queues; + + return qmtm; +} + +static int xgene_get_qmtm(struct xgene_qmtm *qmtm) +{ + struct platform_device *pdev = qmtm->pdev; + struct resource *res; + struct xgene_qmtm_sdev *sdev; + const char *name; + int rc, inum = 1; + u16 pbn; + + /* Retrieve QM CSR register address and size */ + res = platform_get_resource(pdev, IORESOURCE_MEM, 0); + if (!res) { + dev_err(&pdev->dev, "Failed to get QMTM CSR region\n"); + return -ENODEV; + } + + qmtm->csr_vaddr = devm_ioremap_resource(&pdev->dev, res); + if (IS_ERR(qmtm->csr_vaddr)) { + dev_err(&pdev->dev, "Invalid QMTM CSR region\n"); + return PTR_ERR(qmtm->csr_vaddr); + } + + /* Retrieve Primary Fabric address and size */ + res = platform_get_resource(pdev, IORESOURCE_MEM, 1); + if (!res) { + dev_err(&pdev->dev, "Failed to get QMTM Fabric region\n"); + return -ENODEV; + } + + qmtm->fabric_vaddr = devm_ioremap_resource(&pdev->dev, res); + if (IS_ERR(qmtm->fabric_vaddr)) { + dev_err(&pdev->dev, "Invalid QMTM Fabric region\n"); + return PTR_ERR(qmtm->fabric_vaddr); + } + + rc = of_property_read_string(pdev->dev.of_node, "slave-name", &name); + if (rc < 0) { + dev_err(&pdev->dev, "Failed to get QMTM Ingress slave-name\n"); + return rc; + } + + sdev = xgene_qmtm_get_sdev((char *)name); + if (sdev == NULL) { + dev_err(&pdev->dev, "Ingress Slave error\n"); + return -ENODEV; + } + + qmtm->idev = sdev; + qmtm->qmtm_ip = sdev->qmtm_ip; + + for (pbn = sdev->wq_pbn_start; pbn < (sdev->wq_pbn_start + + sdev->wq_pbn_count); + pbn++, inum++) { + int irq = platform_get_irq(pdev, inum); + + if (irq < 0) { + dev_err(&pdev->dev, "Failed to map QMTM%d PBN %d IRQ\n", + qmtm->qmtm_ip, pbn); + continue; + } + + qmtm->dequeue_irq[pbn] = irq; + } + + return rc; +} + +static int xgene_qmtm_probe(struct platform_device *pdev) +{ + struct xgene_qmtm *qmtm; + int rc; + + qmtm = xgene_alloc_qmtm(pdev); + if (qmtm == NULL) + return -ENOMEM; + + rc = xgene_get_qmtm(qmtm); + if (rc) + return rc; + + return xgene_qmtm_enable(qmtm); +} + +static int xgene_qmtm_remove(struct platform_device *pdev) +{ + struct xgene_qmtm *qmtm = platform_get_drvdata(pdev); + return xgene_qmtm_disable(qmtm); +} + +static struct of_device_id xgene_qmtm_match[] = { + {.compatible = "apm,xgene-qmtm-xge0",}, + {.compatible = "apm,xgene-qmtm-soc",}, + {.compatible = "apm,xgene-qmtm-xge2",}, + {.compatible = "apm,xgene-qmtm-lite",}, + {}, +}; + +MODULE_DEVICE_TABLE(of, xgene_qmtm_match); + +static struct platform_driver xgene_qmtm_driver = { + .driver = { + .name = XGENE_QMTM_DRIVER_NAME, + .owner = THIS_MODULE, + .of_match_table = xgene_qmtm_match, + }, + .probe = xgene_qmtm_probe, + .remove = xgene_qmtm_remove, +}; + +module_platform_driver(xgene_qmtm_driver); + +MODULE_VERSION(XGENE_QMTM_DRIVER_VER); +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Ravi Patel "); +MODULE_DESCRIPTION(XGENE_QMTM_DRIVER_DESC); --- linux-3.13.0.orig/drivers/misc/xgene/qmtm/xgene_qmtm_main.h +++ linux-3.13.0/drivers/misc/xgene/qmtm/xgene_qmtm_main.h @@ -0,0 +1,138 @@ +/* + * AppliedMicro X-Gene SOC Queue Manager/Traffic Manager driver + * + * Copyright (c) 2013 Applied Micro Circuits Corporation. + * Author: Ravi Patel + * Keyur Chudgar + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __XGENE_QMTM_MAIN_H__ +#define __XGENE_QMTM_MAIN_H__ + +#include +#include + +/* QMTM Platform Information */ +enum xgene_qmtm_pinfo { + STORM_QMTM, + MAX_PLATFORM, +}; + +/* QMTM IP Blocks */ +enum xgene_qmtm_ip { + QMTM0, + QMTM1, + QMTM2, + QMTM3, + QMTM_MAX, +}; + +#define QMTM_MAX_QUEUES 1024 +#define QMTM_MAX_PBN 32 + +struct xgene_qmtm { + void *csr_vaddr; + void *fabric_vaddr; + u16 qmtm_ip; /* qmtm_ip, see xgene_qmtm_ip */ + u16 error_irq; + u32 max_queues; + u16 dequeue_irq[QMTM_MAX_PBN]; + char error_irq_s[16]; + char error_queue_irq_s[16]; + struct xgene_qmtm_sdev *idev; + u32 *queue_pool; + struct xgene_qmtm_qinfo *(*qinfo); + struct xgene_qmtm_qinfo *error_qinfo; + struct clk *clk; + struct platform_device *pdev; + void (*write_qstate) (struct xgene_qmtm_qinfo *qinfo); + void (*read_qstate) (struct xgene_qmtm_qinfo *qinfo); + int (*set_qstate) (struct xgene_qmtm_qinfo *qinfo); + void (*clr_qstate) (struct xgene_qmtm_qinfo *qinfo); +}; + +/* QMTM Slave */ +enum xgene_slave { + SLAVE_ETH0, + SLAVE_ETH1, + SLAVE_ETH2, + SLAVE_ETH3, + SLAVE_XGE0, + SLAVE_XGE1, + SLAVE_XGE2, + SLAVE_XGE3, + SLAVE_METH, + SLAVE_PKTDMA, + SLAVE_CTX_QMTM0, + SLAVE_CTX_QMTM1, + SLAVE_CTX_QMTM2, + SLAVE_SEC, + SLAVE_CLASS, + SLAVE_MSLIM_QMTM0, + SLAVE_MSLIM_QMTM1, + SLAVE_MSLIM_QMTM2, + SLAVE_MSLIM_QMTM3, + SLAVE_PMPRO, + SLAVE_SMPRO_QMTM0, + SLAVE_SMPRO_QMTM1, + SLAVE_SMPRO_QMTM2, + SLAVE_SMPRO_QMTM3, + SLAVE_CPU_QMTM0, + SLAVE_CPU_QMTM1, + SLAVE_CPU_QMTM2, + SLAVE_CPU_QMTM3, + SLAVE_MAX, +}; + +/* QMTM Slave IDs */ +enum xgene_qmtm_slave_id { + QMTM_SLAVE_ID_ETH0, + QMTM_SLAVE_ID_ETH1, + QMTM_SLAVE_ID_RES2, + QMTM_SLAVE_ID_PKTDMA, + QMTM_SLAVE_ID_CTX, + QMTM_SLAVE_ID_SEC, + QMTM_SLAVE_ID_CLASS, + QMTM_SLAVE_ID_MSLIM, + QMTM_SLAVE_ID_RES8, + QMTM_SLAVE_ID_RES9, + QMTM_SLAVE_ID_RESA, + QMTM_SLAVE_ID_RESB, + QMTM_SLAVE_ID_RESC, + QMTM_SLAVE_ID_PMPRO, + QMTM_SLAVE_ID_SMPRO, + QMTM_SLAVE_ID_CPU, + QMTM_SLAVE_ID_MAX, +}; + +/* QMTM Free Pool Queue modes */ +enum xgene_qmtm_fp_mode { + MSG_NO_CHANGE, + ROUND_ADDR, + REDUCE_LEN, + CHANGE_LEN, +}; + +#define VIRT_TO_PHYS(x) virt_to_phys(x) +#define PHYS_TO_VIRT(x) phys_to_virt(x) + +/* QMTM CSR read/write routine */ +void xgene_qmtm_wr32(struct xgene_qmtm *qmtm, u32 offset, u32 data); +void xgene_qmtm_rd32(struct xgene_qmtm *qmtm, u32 offset, u32 *data); + +/* QMTM Error handling */ +int xgene_qmtm_enable_error(struct xgene_qmtm *qmtm); +void xgene_qmtm_disable_error(struct xgene_qmtm *qmtm); + +struct xgene_qmtm_sdev *storm_qmtm_get_sdev(char *name); + +#endif /* __XGENE_QMTM_MAIN_H__ */ --- linux-3.13.0.orig/drivers/misc/xgene/qmtm/xgene_qmtm_storm.c +++ linux-3.13.0/drivers/misc/xgene/qmtm/xgene_qmtm_storm.c @@ -0,0 +1,373 @@ +/** + * AppliedMicro X-Gene SOC Queue Manager/Traffic Manager driver + * + * Copyright (c) 2013 Applied Micro Circuits Corporation. + * Author: Ravi Patel + * Keyur Chudgar + * Fushen Chen + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include +#include "xgene_qmtm_main.h" +#include "xgene_qmtm_storm.h" + +#define CSR_QSTATE_ADDR 0x0000006c +#define QNUMBER_WR(src) (((u32)(src)) & 0x000003ff) + +#define CSR_QSTATE_WR_0_ADDR 0x00000070 +#define CSR_QSTATE_WR_1_ADDR 0x00000074 +#define CSR_QSTATE_WR_2_ADDR 0x00000078 +#define CSR_QSTATE_WR_3_ADDR 0x0000007c +#define CSR_QSTATE_WR_4_ADDR 0x00000080 + +static struct xgene_qmtm_sdev storm_sdev[SLAVE_MAX] = { + [SLAVE_ETH0] = { + .name = "SGMII0", + .compatible = "apm,xgene-qmtm-soc", + .slave = SLAVE_ETH0, + .qmtm_ip = QMTM1, + .slave_id = QMTM_SLAVE_ID_ETH0, + .wq_pbn_start = 0x00, + .wq_pbn_count = 0x08, + .fq_pbn_start = 0x20, + .fq_pbn_count = 0x08, + }, + [SLAVE_ETH1] = { + .name = "SGMII1", + .compatible = "apm,xgene-qmtm-soc", + .slave = SLAVE_ETH1, + .qmtm_ip = QMTM1, + .slave_id = QMTM_SLAVE_ID_ETH0, + .wq_pbn_start = 0x08, + .wq_pbn_count = 0x08, + .fq_pbn_start = 0x28, + .fq_pbn_count = 0x08, + }, + [SLAVE_ETH2] = { + .name = "SGMII2", + .compatible = "apm,xgene-qmtm-soc", + .slave = SLAVE_ETH2, + .qmtm_ip = QMTM1, + .slave_id = QMTM_SLAVE_ID_ETH1, + .wq_pbn_start = 0x00, + .wq_pbn_count = 0x08, + .fq_pbn_start = 0x20, + .fq_pbn_count = 0x08, + }, + [SLAVE_ETH3] = { + .name = "SGMII3", + .compatible = "apm,xgene-qmtm-soc", + .slave = SLAVE_ETH3, + .qmtm_ip = QMTM1, + .slave_id = QMTM_SLAVE_ID_ETH1, + .wq_pbn_start = 0x08, + .wq_pbn_count = 0x08, + .fq_pbn_start = 0x28, + .fq_pbn_count = 0x08, + }, + [SLAVE_XGE0] = { + .name = "SXGMII0", + .compatible = "apm,xgene-qmtm-xge0", + .slave = SLAVE_XGE0, + .qmtm_ip = QMTM0, + .slave_id = QMTM_SLAVE_ID_ETH0, + .wq_pbn_start = 0x00, + .wq_pbn_count = 0x08, + .fq_pbn_start = 0x20, + .fq_pbn_count = 0x08, + }, + [SLAVE_XGE1] = { + .name = "SXGMII1", + .compatible = "apm,xgene-qmtm-xge0", + .slave = SLAVE_XGE1, + .qmtm_ip = QMTM0, + .slave_id = QMTM_SLAVE_ID_ETH1, + .wq_pbn_start = 0x00, + .wq_pbn_count = 0x08, + .fq_pbn_start = 0x20, + .fq_pbn_count = 0x08, + }, + [SLAVE_XGE2] = { + .name = "SXGMII2", + .compatible = "apm,xgene-qmtm-xge2", + .slave = SLAVE_XGE2, + .qmtm_ip = QMTM2, + .slave_id = QMTM_SLAVE_ID_ETH0, + .wq_pbn_start = 0x00, + .wq_pbn_count = 0x08, + .fq_pbn_start = 0x20, + .fq_pbn_count = 0x08, + }, + [SLAVE_XGE3] = { + .name = "SXGMII3", + .compatible = "apm,xgene-qmtm-xge2", + .slave = SLAVE_XGE3, + .qmtm_ip = QMTM2, + .slave_id = QMTM_SLAVE_ID_ETH1, + .wq_pbn_start = 0x00, + .wq_pbn_count = 0x08, + .fq_pbn_start = 0x20, + .fq_pbn_count = 0x08, + }, + [SLAVE_METH] = { + .name = "RGMII", + .compatible = "apm,xgene-qmtm-lite", + .slave = SLAVE_METH, + .qmtm_ip = QMTM3, + .slave_id = QMTM_SLAVE_ID_ETH0, + .wq_pbn_start = 0x00, + .wq_pbn_count = 0x04, + .fq_pbn_start = 0x20, + .fq_pbn_count = 0x04, + }, + [SLAVE_PKTDMA] = { + .name = "PKTDMA", + .compatible = "apm,xgene-qmtm-soc", + .slave = SLAVE_PKTDMA, + .qmtm_ip = QMTM1, + .slave_id = QMTM_SLAVE_ID_PKTDMA, + .wq_pbn_start = 0x00, + .wq_pbn_count = 0x04, + .fq_pbn_start = 0x20, + .fq_pbn_count = 0x08, + }, + [SLAVE_CPU_QMTM0] = { + .name = "CPU_QMTM0", + .compatible = "apm,xgene-qmtm-xge0", + .slave = SLAVE_CPU_QMTM0, + .qmtm_ip = QMTM0, + .slave_id = QMTM_SLAVE_ID_CPU, + .wq_pbn_start = 0x00, + .wq_pbn_count = 0x10, + .fq_pbn_start = 0x20, + .fq_pbn_count = 0x10, + }, + [SLAVE_CPU_QMTM1] = { + .name = "CPU_QMTM1", + .compatible = "apm,xgene-qmtm-soc", + .slave = SLAVE_CPU_QMTM1, + .qmtm_ip = QMTM1, + .slave_id = QMTM_SLAVE_ID_CPU, + .wq_pbn_start = 0x00, + .wq_pbn_count = 0x20, + .fq_pbn_start = 0x20, + .fq_pbn_count = 0x20, + }, + [SLAVE_CPU_QMTM2] = { + .name = "CPU_QMTM2", + .compatible = "apm,xgene-qmtm-xge2", + .slave = SLAVE_CPU_QMTM2, + .qmtm_ip = QMTM2, + .slave_id = QMTM_SLAVE_ID_CPU, + .wq_pbn_start = 0x10, + .wq_pbn_count = 0x10, + .fq_pbn_start = 0x30, + .fq_pbn_count = 0x10, + }, + [SLAVE_CPU_QMTM3] = { + .name = "CPU_QMTM3", + .compatible = "apm,xgene-qmtm-lite", + .slave = SLAVE_CPU_QMTM3, + .qmtm_ip = QMTM3, + .slave_id = QMTM_SLAVE_ID_CPU, + .wq_pbn_start = 0x00, + .wq_pbn_count = 0x01, + .fq_pbn_start = 0x20, + .fq_pbn_count = 0x01, + }, +}; + +static void storm_qmtm_write_qstate(struct xgene_qmtm_qinfo *qinfo) +{ + struct xgene_qmtm *qmtm = qinfo->qmtm; + u16 queue_id = qinfo->queue_id; + struct storm_qmtm_csr_qstate *csr_qstate = + &((union storm_qmtm_qstate *)qinfo->qstate)->csr; + + /* write queue number */ + queue_id = QNUMBER_WR(queue_id); + xgene_qmtm_wr32(qmtm, CSR_QSTATE_ADDR, (u32) queue_id); + + /* write queue state */ + xgene_qmtm_wr32(qmtm, CSR_QSTATE_WR_0_ADDR, csr_qstate->w0); + xgene_qmtm_wr32(qmtm, CSR_QSTATE_WR_1_ADDR, csr_qstate->w1); + xgene_qmtm_wr32(qmtm, CSR_QSTATE_WR_2_ADDR, csr_qstate->w2); + xgene_qmtm_wr32(qmtm, CSR_QSTATE_WR_3_ADDR, csr_qstate->w3); + xgene_qmtm_wr32(qmtm, CSR_QSTATE_WR_4_ADDR, csr_qstate->w4); +} + +static void storm_qmtm_read_qstate(struct xgene_qmtm_qinfo *qinfo) +{ + struct xgene_qmtm *qmtm = qinfo->qmtm; + struct storm_qmtm_csr_qstate *qfabric = (struct storm_qmtm_csr_qstate *) + (qmtm->fabric_vaddr + (qinfo->queue_id << 6)); + struct storm_qmtm_csr_qstate *csr_qstate = + &((union storm_qmtm_qstate *)qinfo->qstate)->csr; + struct storm_qmtm_pq_fp_qstate *pq_fp = + &((union storm_qmtm_qstate *)(qinfo->qstate))->pq; + + /* read queue state */ + csr_qstate->w0 = readl(&qfabric->w0); + csr_qstate->w1 = readl(&qfabric->w1); + csr_qstate->w2 = readl(&qfabric->w2); + csr_qstate->w3 = readl(&qfabric->w3); + csr_qstate->w4 = readl(&qfabric->w4); + qinfo->nummsgs = pq_fp->nummsg; +} + +static int storm_qmtm_set_qstate(struct xgene_qmtm_qinfo *qinfo) +{ + int rc = 0; + struct storm_qmtm_pq_fp_qstate *pq_fp = + &((union storm_qmtm_qstate *)(qinfo->qstate))->pq; + u64 cfgstartaddr; + u32 qsize = 0; + u8 qtype = qinfo->qtype; + + if (qtype != QTYPE_PQ && qtype != QTYPE_FP) { + pr_err("Queue type %d is invalid\n", qinfo->qtype); + rc = -EINVAL; + goto _ret_set_qstate; + } + + pq_fp->cfgqtype = qinfo->qtype; + + /* if its a free queue, ask QMTM to set len to 0 when dealloc */ + if (qtype == QTYPE_FP) + pq_fp->fp_mode = CHANGE_LEN; + + if (qinfo->slave >= SLAVE_XGE0 && qinfo->slave <= SLAVE_XGE3) { + pq_fp->cfgRecombBuf = 1; + pq_fp->cfgRecombBufTimeoutL = 0xf; + pq_fp->cfgRecombBufTimeoutH = 0x7; + } + + pq_fp->cfgselthrsh = 1; + + /* Allow the queue to accept message with non-zero LErr */ + pq_fp->cfgacceptlerr = 1; + pq_fp->qcoherent = 1; + + switch (qinfo->qsize) { + case QSIZE_512B: + qsize = 512; + break; + case QSIZE_2KB: + qsize = 2 * 1024; + break; + case QSIZE_16KB: + qsize = 16 * 1024; + break; + case QSIZE_64KB: + qsize = 64 * 1024; + break; + case QSIZE_512KB: + qsize = 512 * 1024; + break; + default: + pr_err("Queue size %d is invalid\n", qinfo->qsize); + rc = -EINVAL; + goto _ret_set_qstate; + } + + qinfo->qdesc = kzalloc(sizeof(struct xgene_qmtm_qdesc), GFP_KERNEL); + + if (qinfo->qdesc == NULL) { + rc = -ENOMEM; + goto _ret_set_qstate; + } + + qinfo->qdesc->count = (qtype == QTYPE_PQ) ? (qsize / 32) : (qsize / 16); + + if (qinfo->flags & XGENE_SLAVE_Q_ADDR_ALLOC) { + qinfo->qdesc->qvaddr = kzalloc(qsize, GFP_KERNEL); + if (qinfo->qdesc->qvaddr == NULL) { + kfree(qinfo->qdesc); + rc = -ENOMEM; + goto _ret_set_qstate; + } + + qinfo->qpaddr = (u64) VIRT_TO_PHYS(qinfo->qdesc->qvaddr); + } else { + qinfo->qdesc->qvaddr = PHYS_TO_VIRT(qinfo->qpaddr); + memset(qinfo->qdesc->qvaddr, 0, qsize); + } + + if ((qtype == QTYPE_PQ) && (qinfo->slave_id == QMTM_SLAVE_ID_CPU || + qinfo->slave_id == QMTM_SLAVE_ID_MSLIM)) { + u32 i; + + for (i = 0; i < qinfo->qdesc->count; i++) { + u32 *slot = (u32 *)&qinfo->qdesc->msg32[i]; + + slot[EMPTY_SLOT_INDEX] = EMPTY_SLOT; + } + } + + cfgstartaddr = qinfo->qpaddr >> 8; + pq_fp->cfgstartaddrL = (u32)(cfgstartaddr & (BIT(27) - 1)); + pq_fp->cfgstartaddrH = (u32)(cfgstartaddr >> 27); + pq_fp->cfgqsize = qinfo->qsize; + storm_qmtm_write_qstate(qinfo); + +_ret_set_qstate: + return rc; +} + +static void storm_qmtm_clr_qstate(struct xgene_qmtm_qinfo *qinfo) +{ + memset(qinfo->qstate, 0, sizeof(union storm_qmtm_qstate)); + storm_qmtm_write_qstate(qinfo); + + if (qinfo->flags & XGENE_SLAVE_Q_ADDR_ALLOC && qinfo->qdesc->qvaddr) { + kfree(qinfo->qdesc->qvaddr); + qinfo->qdesc->qvaddr = NULL; + } + + kfree(qinfo->qdesc); +} + +struct xgene_qmtm_sdev *storm_qmtm_get_sdev(char *name) +{ + struct xgene_qmtm *qmtm = NULL; + struct xgene_qmtm_sdev *sdev = NULL; + struct device_node *np = NULL; + struct platform_device *platdev; + u8 slave; + + for (slave = 0; slave < SLAVE_MAX; slave++) { + sdev = &storm_sdev[slave]; + if (sdev->name && strcmp(name, sdev->name) == 0) { + np = of_find_compatible_node(NULL, NULL, + sdev->compatible); + break; + } + } + + if (np == NULL) + return NULL; + + platdev = of_find_device_by_node(np); + qmtm = platform_get_drvdata(platdev); + + if (!qmtm->write_qstate) { + qmtm->write_qstate = storm_qmtm_write_qstate; + qmtm->read_qstate = storm_qmtm_read_qstate; + qmtm->set_qstate = storm_qmtm_set_qstate; + qmtm->clr_qstate = storm_qmtm_clr_qstate; + } + + sdev->qmtm = qmtm; + sdev->idev = qmtm->idev; + + return sdev; +} --- linux-3.13.0.orig/drivers/misc/xgene/qmtm/xgene_qmtm_storm.h +++ linux-3.13.0/drivers/misc/xgene/qmtm/xgene_qmtm_storm.h @@ -0,0 +1,241 @@ +/* + * AppliedMicro X-Gene SOC Queue Manager/Traffic Manager driver + * + * Copyright (c) 2013 Applied Micro Circuits Corporation. + * Author: Ravi Patel + * Keyur Chudgar + * Fushen Chen + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __XGENE_QMTM_STORM_H__ +#define __XGENE_QMTM_STORM_H__ + +/* QMTM Queue State */ +struct storm_qmtm_csr_qstate { + u32 w0; + u32 w1; + u32 w2; + u32 w3; + u32 w4; +} __packed; + +/* + * Physical or free pool queue state (pq or fp) + */ +struct storm_qmtm_pq_fp_qstate { +#ifdef CONFIG_CPU_BIG_ENDIAN + /* register word 0 (bit 31:0) */ + u32 cpu_notify:8; /* 31:24 */ + u32 cfgsaben:1; /* 23 enable SAB broadcasting */ + u32 cfgtmvq:10; /* 22:13 parent vq */ + u32 cfgtmvqen:1; /* 12 enable pq to belong to vq */ + u32 resize_done:1; /* 11 */ + u32 resize_start:1; /* 10 */ + u32 resize_qid:10; /* 9:0 */ + + /* register word 1 (bit 63:32) */ + u32 headptr:15; /* 63:49 */ + u32 nummsg:16; /* 48:33 */ + u32 cfgnotifyqne:1; /* 32 enable Q not empty intr */ + + /* register word 2 (bit 95:64) */ + u32 cfgstartaddrL:27; /* 95:69 split 7/27 */ + u32 qcoherent:1; /* 68 */ + u32 rid:3; /* 67:65 */ + u32 cfgcrid:1; /* 64 */ + + /* register word 3 (bit 127:96) */ + u32 cfgRecombBufTimeoutL:4; /* 127:124 split 3/4 */ + u32 cfgRecombBuf:1; /* 123 */ + u32 qstatelock:1; /* 122 */ + u32 cfgqsize:3; /* 121:119 queue size */ + u32 fp_mode:3; /* 118:116 free pool mode */ + u32 cfgacceptlerr:1; /* 115 */ + u32 reserved_0:1; /* 114 */ + u32 stashing:1; /* 113 */ + u32 slot_pending:8; /* 112:105 */ + u32 vc_chanid:2; /* 104:103 */ + u32 cfgstartaddrH:7; /* 102:96 split 7/27 */ + + /* register word 4 (bit 159:128) */ + u32 resv1:11; /* 159:149 */ + u32 cfgqtype:2; /* 148:147 queue type */ + u32 resv2:5; /* 146:142 */ + u32 half_64B_override:3; /* 141:139 */ + u32 resv3:4; /* 138:135 */ + u32 CfgSupressCmpl:1; /* 134 */ + u32 cfgselthrsh:3; /* 133:131 associated threshold set */ + u32 cfgRecombBufTimeoutH:3; /* 130:128 split 3/4 */ +#else + /* register word 0 (bit 31:0) */ + u32 resize_qid:10; /* 9:0 */ + u32 resize_start:1; /* 10 */ + u32 resize_done:1; /* 11 */ + u32 cfgtmvqen:1; /* 12 enable pq to belong to vq */ + u32 cfgtmvq:10; /* 22:13 parent vq */ + u32 cfgsaben:1; /* 23 enable SAB broadcasting */ + u32 cpu_notify:8; /* 31:24 */ + + /* register word 1 (bit 63:32) */ + u32 cfgnotifyqne:1; /* 32 enable Q not empty intr */ + u32 nummsg:16; /* 48:33 */ + u32 headptr:15; /* 63:49 */ + + /* register word 2 (bit 95:64) */ + u32 cfgcrid:1; /* 64 */ + u32 rid:3; /* 67:65 */ + u32 qcoherent:1; /* 68 */ + u32 cfgstartaddrL:27; /* 95:69 split 7/27 */ + + /* register word 3 (bit 127:96) */ + u32 cfgstartaddrH:7; /* 102:96 split 7/27 */ + u32 vc_chanid:2; /* 104:103 */ + u32 slot_pending:8; /* 112:105 */ + u32 stashing:1; /* 113 */ + u32 reserved_0:1; /* 114 */ + u32 cfgacceptlerr:1; /* 115 */ + u32 fp_mode:3; /* 118:116 free pool mode */ + u32 cfgqsize:3; /* 121:119 queue size */ + u32 qstatelock:1; /* 122 */ + u32 cfgRecombBuf:1; /* 123 */ + u32 cfgRecombBufTimeoutL:4; /* 127:124 split 3/4 */ + + /* register word 4 (bit 159:128) */ + u32 cfgRecombBufTimeoutH:3; /* 130:128 split 3/4 */ + u32 cfgselthrsh:3; /* 133:131 associated threshold set */ + u32 CfgSupressCmpl:1; /* 134 */ + u32 resv3:4; /* 138:135 */ + u32 half_64B_override:3; /* 141:139 */ + u32 resv2:5; /* 146:142 */ + u32 cfgqtype:2; /* 148:147 queue type */ + u32 resv1:11; /* 159:149 */ +#endif +} __packed; + +struct storm_qmtm_vq_qstate { +#ifdef CONFIG_CPU_BIG_ENDIAN + /* register word 0 (bit 31:0) */ + u32 rid:3; /* 31:29 */ + u32 cpu_notify:8; /* 28:21 */ + u32 cfgcrid:1; /* 20 critical rid config */ + u32 cfgnotifyqne:1; /* 19 enable Q not empty intr */ + u32 cfgsaben:1; /* 18 enable SAB broadcasting */ + u32 nummsg:18; /* 17:0 */ + + /* register word 1 (bit 63:32) */ + u32 q5reqvld:1; /* 63 */ + u32 q5txallowed:1; /* 62 */ + u32 q5selarb:2; /* 61:60 */ + u32 q6_sel:10; /* 59:50 */ + u32 q6reqvld:1; /* 49 */ + u32 q6txallowed:1; /* 48 */ + u32 q6selarb:2; /* 47:46 */ + u32 q7_sel:10; /* 45:36 */ + u32 q7reqvld:1; /* 35 */ + u32 q7txallowed:1; /* 34 */ + u32 q7selarb:2; /* 33:32 */ + + /* register word 2 (bit 95:64) */ + u32 q3_selL:4; /* 95:92 split 4/6 */ + u32 q3reqvld:1; /* 91 */ + u32 q3txallowed:1; /* 90 */ + u32 q3selarb:2; /* 89:88 */ + u32 q4_sel:10; /* 87:78 */ + u32 q4reqvld:1; /* 77 */ + u32 q4txallowed:1; /* 76 */ + u32 q4selarb:2; /* 75:74 */ + u32 q5_sel:10; /* 73:64 */ + + /* register word 3 (bit 127:96) */ + u32 q1_selL:8; /* 127:120 split 2/8 */ + u32 q1reqvld:1; /* 119 */ + u32 q1txallowed:1; /* 118 */ + u32 q1selarb:2; /* 117:116 */ + u32 q2_sel:10; /* 115:106 */ + u32 q2reqvld:1; /* 105 */ + u32 q2txallowed:1; /* 104 */ + u32 q2selarb:2; /* 103:102 */ + u32 q3_selH:6; /* 101:96 split 4/6 */ + + /* register word 4 (bit 159:128) */ + u32 resv1:11; /* 159:149 */ + u32 cfgqtype:2; /* 148:147 queue type */ + u32 cfgselthrsh:3; /* 146:144 associated threshold set */ + u32 q0_sel:10; /* 143:134 */ + u32 q0reqvld:1; /* 133 */ + u32 q0txallowed:1; /* 132 */ + u32 q0selarb:2; /* 131:130 */ + u32 q1_selH:2; /* 129:128 split 2/8 */ +#else + /* register word 0 (bit 31:0) */ + u32 nummsg:18; /* 17:0 */ + u32 cfgsaben:1; /* 18 enable SAB broadcasting */ + u32 cfgnotifyqne:1; /* 19 enable Q not empty intr */ + u32 cfgcrid:1; /* 20 critical rid config */ + u32 cpu_notify:8; /* 28:21 */ + u32 rid:3; /* 31:29 */ + + /* register word 1 (bit 63:32) */ + u32 q7selarb:2; /* 33:32 */ + u32 q7txallowed:1; /* 34 */ + u32 q7reqvld:1; /* 35 */ + u32 q7_sel:10; /* 45:36 */ + u32 q6selarb:2; /* 47:46 */ + u32 q6txallowed:1; /* 48 */ + u32 q6reqvld:1; /* 49 */ + u32 q6_sel:10; /* 59:50 */ + u32 q5selarb:2; /* 61:60 */ + u32 q5txallowed:1; /* 62 */ + u32 q5reqvld:1; /* 63 */ + + /* register word 2 (bit 95:64) */ + u32 q5_sel:10; /* 73:64 */ + u32 q4selarb:2; /* 75:74 */ + u32 q4txallowed:1; /* 76 */ + u32 q4reqvld:1; /* 77 */ + u32 q4_sel:10; /* 87:78 */ + u32 q3selarb:2; /* 89:88 */ + u32 q3txallowed:1; /* 90 */ + u32 q3reqvld:1; /* 91 */ + u32 q3_selL:4; /* 95:92 split 4/6 */ + + /* register word 3 (bit 127:96) */ + u32 q3_selH:6; /* 101:96 split 4/6 */ + u32 q2selarb:2; /* 103:102 */ + u32 q2txallowed:1; /* 104 */ + u32 q2reqvld:1; /* 105 */ + u32 q2_sel:10; /* 115:106 */ + u32 q1selarb:2; /* 117:116 */ + u32 q1txallowed:1; /* 118 */ + u32 q1reqvld:1; /* 119 */ + u32 q1_selL:8; /* 127:120 split 2/8 */ + + /* register word 4 (bit 159:128) */ + u32 q1_selH:2; /* 129:128 split 2/8 */ + u32 q0selarb:2; /* 131:130 */ + u32 q0txallowed:1; /* 132 */ + u32 q0reqvld:1; /* 133 */ + u32 q0_sel:10; /* 143:134 */ + u32 cfgselthrsh:3; /* 146:144 associated threshold set */ + u32 cfgqtype:2; /* 148:147 queue type */ + u32 resv1:11; /* 159:149 */ +#endif +} __packed; + +union storm_qmtm_qstate { + struct storm_qmtm_csr_qstate csr; + struct storm_qmtm_pq_fp_qstate pq; + struct storm_qmtm_pq_fp_qstate fp; + struct storm_qmtm_vq_qstate vq; +} __packed; + +#endif /* __XGENE_QMTM_STORM_H__ */ --- linux-3.13.0.orig/drivers/mmc/card/block.c +++ linux-3.13.0/drivers/mmc/card/block.c @@ -1959,6 +1959,7 @@ struct mmc_card *card = md->queue.card; struct mmc_host *host = card->host; unsigned long flags; + unsigned int cmd_flags = req ? req->cmd_flags : 0; if (req && !mq->mqrq_prev->req) /* claim host only for the first request */ @@ -1974,7 +1975,7 @@ } mq->flags &= ~MMC_QUEUE_NEW_REQUEST; - if (req && req->cmd_flags & REQ_DISCARD) { + if (cmd_flags & REQ_DISCARD) { /* complete ongoing async transfer before issuing discard */ if (card->host->areq) mmc_blk_issue_rw_rq(mq, NULL); @@ -1983,7 +1984,7 @@ ret = mmc_blk_issue_secdiscard_rq(mq, req); else ret = mmc_blk_issue_discard_rq(mq, req); - } else if (req && req->cmd_flags & REQ_FLUSH) { + } else if (cmd_flags & REQ_FLUSH) { /* complete ongoing async transfer before issuing flush */ if (card->host->areq) mmc_blk_issue_rw_rq(mq, NULL); @@ -1999,7 +2000,7 @@ out: if ((!req && !(mq->flags & MMC_QUEUE_NEW_REQUEST)) || - (req && (req->cmd_flags & MMC_REQ_SPECIAL_MASK))) + (cmd_flags & MMC_REQ_SPECIAL_MASK)) /* * Release host when there are no more requests * and after special request(discard, flush) is done. --- linux-3.13.0.orig/drivers/mmc/card/queue.c +++ linux-3.13.0/drivers/mmc/card/queue.c @@ -197,7 +197,7 @@ struct mmc_queue_req *mqrq_prev = &mq->mqrq[1]; if (mmc_dev(host)->dma_mask && *mmc_dev(host)->dma_mask) - limit = dma_max_pfn(mmc_dev(host)) << PAGE_SHIFT; + limit = (u64)dma_max_pfn(mmc_dev(host)) << PAGE_SHIFT; mq->card = card; mq->queue = blk_init_queue(mmc_request_fn, lock); --- linux-3.13.0.orig/drivers/mmc/core/sd.c +++ linux-3.13.0/drivers/mmc/core/sd.c @@ -11,6 +11,7 @@ */ #include +#include #include #include #include @@ -45,6 +46,13 @@ 35, 40, 45, 50, 55, 60, 70, 80, }; +static const unsigned int sd_au_size[] = { + 0, SZ_16K / 512, SZ_32K / 512, SZ_64K / 512, + SZ_128K / 512, SZ_256K / 512, SZ_512K / 512, SZ_1M / 512, + SZ_2M / 512, SZ_4M / 512, SZ_8M / 512, (SZ_8M + SZ_4M) / 512, + SZ_16M / 512, (SZ_16M + SZ_8M) / 512, SZ_32M / 512, SZ_64M / 512, +}; + #define UNSTUFF_BITS(resp,start,size) \ ({ \ const int __size = size; \ @@ -216,7 +224,7 @@ static int mmc_read_ssr(struct mmc_card *card) { unsigned int au, es, et, eo; - int err, i, max_au; + int err, i; u32 *ssr; if (!(card->csd.cmdclass & CCC_APP_SPEC)) { @@ -240,26 +248,25 @@ for (i = 0; i < 16; i++) ssr[i] = be32_to_cpu(ssr[i]); - /* SD3.0 increases max AU size to 64MB (0xF) from 4MB (0x9) */ - max_au = card->scr.sda_spec3 ? 0xF : 0x9; - /* * UNSTUFF_BITS only works with four u32s so we have to offset the * bitfield positions accordingly. */ au = UNSTUFF_BITS(ssr, 428 - 384, 4); - if (au > 0 && au <= max_au) { - card->ssr.au = 1 << (au + 4); - es = UNSTUFF_BITS(ssr, 408 - 384, 16); - et = UNSTUFF_BITS(ssr, 402 - 384, 6); - eo = UNSTUFF_BITS(ssr, 400 - 384, 2); - if (es && et) { - card->ssr.erase_timeout = (et * 1000) / es; - card->ssr.erase_offset = eo * 1000; + if (au) { + if (au <= 9 || card->scr.sda_spec3) { + card->ssr.au = sd_au_size[au]; + es = UNSTUFF_BITS(ssr, 408 - 384, 16); + et = UNSTUFF_BITS(ssr, 402 - 384, 6); + if (es && et) { + eo = UNSTUFF_BITS(ssr, 400 - 384, 2); + card->ssr.erase_timeout = (et * 1000) / es; + card->ssr.erase_offset = eo * 1000; + } + } else { + pr_warning("%s: SD Status: Invalid Allocation Unit size.\n", + mmc_hostname(card->host)); } - } else { - pr_warning("%s: SD Status: Invalid Allocation Unit " - "size.\n", mmc_hostname(card->host)); } out: kfree(ssr); --- linux-3.13.0.orig/drivers/mmc/host/Makefile +++ linux-3.13.0/drivers/mmc/host/Makefile @@ -9,6 +9,7 @@ obj-$(CONFIG_MMC_SDHCI) += sdhci.o obj-$(CONFIG_MMC_SDHCI_PCI) += sdhci-pci.o obj-$(subst m,y,$(CONFIG_MMC_SDHCI_PCI)) += sdhci-pci-data.o +obj-$(subst m,y,$(CONFIG_MMC_SDHCI_PCI)) += sdhci-pci-o2micro.o obj-$(CONFIG_MMC_SDHCI_ACPI) += sdhci-acpi.o obj-$(CONFIG_MMC_SDHCI_PXAV3) += sdhci-pxav3.o obj-$(CONFIG_MMC_SDHCI_PXAV2) += sdhci-pxav2.o --- linux-3.13.0.orig/drivers/mmc/host/atmel-mci.c +++ linux-3.13.0/drivers/mmc/host/atmel-mci.c @@ -1192,11 +1192,22 @@ iflags |= ATMCI_CMDRDY; cmd = mrq->cmd; cmdflags = atmci_prepare_command(slot->mmc, cmd); - atmci_send_command(host, cmd, cmdflags); + + /* + * DMA transfer should be started before sending the command to avoid + * unexpected errors especially for read operations in SDIO mode. + * Unfortunately, in PDC mode, command has to be sent before starting + * the transfer. + */ + if (host->submit_data != &atmci_submit_data_dma) + atmci_send_command(host, cmd, cmdflags); if (data) host->submit_data(host, data); + if (host->submit_data == &atmci_submit_data_dma) + atmci_send_command(host, cmd, cmdflags); + if (mrq->stop) { host->stop_cmdr = atmci_prepare_command(slot->mmc, mrq->stop); host->stop_cmdr |= ATMCI_CMDR_STOP_XFER; --- linux-3.13.0.orig/drivers/mmc/host/omap_hsmmc.c +++ linux-3.13.0/drivers/mmc/host/omap_hsmmc.c @@ -1812,7 +1812,7 @@ host->slot_id = 0; host->mapbase = res->start + pdata->reg_offset; host->base = ioremap(host->mapbase, SZ_4K); - host->power_mode = MMC_POWER_OFF; + host->power_mode = -1; host->next_data.cookie = 1; platform_set_drvdata(pdev, host); --- linux-3.13.0.orig/drivers/mmc/host/sdhci-bcm-kona.c +++ linux-3.13.0/drivers/mmc/host/sdhci-bcm-kona.c @@ -314,7 +314,7 @@ return ret; } -static int __exit sdhci_bcm_kona_remove(struct platform_device *pdev) +static int sdhci_bcm_kona_remove(struct platform_device *pdev) { return sdhci_pltfm_unregister(pdev); } --- linux-3.13.0.orig/drivers/mmc/host/sdhci-esdhc-imx.c +++ linux-3.13.0/drivers/mmc/host/sdhci-esdhc-imx.c @@ -558,19 +558,17 @@ struct pltfm_imx_data *imx_data = pltfm_host->priv; struct esdhc_platform_data *boarddata = &imx_data->boarddata; - u32 f_host = clk_get_rate(pltfm_host->clk); - - if (boarddata->f_max && (boarddata->f_max < f_host)) + if (boarddata->f_max && (boarddata->f_max < pltfm_host->clock)) return boarddata->f_max; else - return f_host; + return pltfm_host->clock; } static unsigned int esdhc_pltfm_get_min_clock(struct sdhci_host *host) { struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); - return clk_get_rate(pltfm_host->clk) / 256 / 16; + return pltfm_host->clock / 256 / 16; } static inline void esdhc_pltfm_set_clock(struct sdhci_host *host, @@ -578,7 +576,7 @@ { struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); struct pltfm_imx_data *imx_data = pltfm_host->priv; - unsigned int host_clock = clk_get_rate(pltfm_host->clk); + unsigned int host_clock = pltfm_host->clock; int pre_div = 2; int div = 1; u32 temp, val; @@ -976,7 +974,7 @@ } pltfm_host->clk = imx_data->clk_per; - + pltfm_host->clock = clk_get_rate(pltfm_host->clk); clk_prepare_enable(imx_data->clk_per); clk_prepare_enable(imx_data->clk_ipg); clk_prepare_enable(imx_data->clk_ahb); --- linux-3.13.0.orig/drivers/mmc/host/sdhci-pci-o2micro.c +++ linux-3.13.0/drivers/mmc/host/sdhci-pci-o2micro.c @@ -0,0 +1,321 @@ +/* + * Copyright (C) 2013 BayHub Technology Ltd. + * + * Authors: Peter Guo + * Adam Lee + * + * This software is licensed under the terms of the GNU General Public + * License version 2, as published by the Free Software Foundation, and + * may be copied, distributed, and modified under those terms. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#include + +#include "sdhci.h" +#include "sdhci-pci.h" +#include "sdhci-pci-o2micro.h" + +void sdhci_pci_o2_fujin2_pci_init(struct sdhci_pci_chip *chip) +{ + u32 scratch_32; + int ret; + /* Improve write performance for SD3.0 */ + ret = pci_read_config_dword(chip->pdev, O2_SD_DEV_CTRL, &scratch_32); + if (ret) + return; + scratch_32 &= ~((1 << 12) | (1 << 13) | (1 << 14)); + pci_write_config_dword(chip->pdev, O2_SD_DEV_CTRL, scratch_32); + + /* Enable Link abnormal reset generating Reset */ + ret = pci_read_config_dword(chip->pdev, O2_SD_MISC_REG5, &scratch_32); + if (ret) + return; + scratch_32 &= ~((1 << 19) | (1 << 11)); + scratch_32 |= (1 << 10); + pci_write_config_dword(chip->pdev, O2_SD_MISC_REG5, scratch_32); + + /* set card power over current protection */ + ret = pci_read_config_dword(chip->pdev, O2_SD_TEST_REG, &scratch_32); + if (ret) + return; + scratch_32 |= (1 << 4); + pci_write_config_dword(chip->pdev, O2_SD_TEST_REG, scratch_32); + + /* adjust the output delay for SD mode */ + pci_write_config_dword(chip->pdev, O2_SD_DELAY_CTRL, 0x00002492); + + /* Set the output voltage setting of Aux 1.2v LDO */ + ret = pci_read_config_dword(chip->pdev, O2_SD_LD0_CTRL, &scratch_32); + if (ret) + return; + scratch_32 &= ~(3 << 12); + pci_write_config_dword(chip->pdev, O2_SD_LD0_CTRL, scratch_32); + + /* Set Max power supply capability of SD host */ + ret = pci_read_config_dword(chip->pdev, O2_SD_CAP_REG0, &scratch_32); + if (ret) + return; + scratch_32 &= ~(0x01FE); + scratch_32 |= 0x00CC; + pci_write_config_dword(chip->pdev, O2_SD_CAP_REG0, scratch_32); + /* Set DLL Tuning Window */ + ret = pci_read_config_dword(chip->pdev, + O2_SD_TUNING_CTRL, &scratch_32); + if (ret) + return; + scratch_32 &= ~(0x000000FF); + scratch_32 |= 0x00000066; + pci_write_config_dword(chip->pdev, O2_SD_TUNING_CTRL, scratch_32); + + /* Set UHS2 T_EIDLE */ + ret = pci_read_config_dword(chip->pdev, + O2_SD_UHS2_L1_CTRL, &scratch_32); + if (ret) + return; + scratch_32 &= ~(0x000000FC); + scratch_32 |= 0x00000084; + pci_write_config_dword(chip->pdev, O2_SD_UHS2_L1_CTRL, scratch_32); + + /* Set UHS2 Termination */ + ret = pci_read_config_dword(chip->pdev, O2_SD_FUNC_REG3, &scratch_32); + if (ret) + return; + scratch_32 &= ~((1 << 21) | (1 << 30)); + + /* Set RTD3 function disabled */ + scratch_32 |= ((1 << 29) | (1 << 28)); + pci_write_config_dword(chip->pdev, O2_SD_FUNC_REG3, scratch_32); + + /* Set L1 Entrance Timer */ + ret = pci_read_config_dword(chip->pdev, O2_SD_CAPS, &scratch_32); + if (ret) + return; + scratch_32 &= ~(0xf0000000); + scratch_32 |= 0x30000000; + pci_write_config_dword(chip->pdev, O2_SD_CAPS, scratch_32); + + ret = pci_read_config_dword(chip->pdev, + O2_SD_MISC_CTRL4, &scratch_32); + if (ret) + return; + scratch_32 &= ~(0x000f0000); + scratch_32 |= 0x00080000; + pci_write_config_dword(chip->pdev, O2_SD_MISC_CTRL4, scratch_32); +} +EXPORT_SYMBOL_GPL(sdhci_pci_o2_fujin2_pci_init); + +int sdhci_pci_o2_probe_slot(struct sdhci_pci_slot *slot) +{ + struct sdhci_pci_chip *chip; + struct sdhci_host *host; + u32 reg; + + chip = slot->chip; + host = slot->host; + switch (chip->pdev->device) { + case PCI_DEVICE_ID_O2_SDS0: + case PCI_DEVICE_ID_O2_SEABIRD0: + case PCI_DEVICE_ID_O2_SEABIRD1: + case PCI_DEVICE_ID_O2_SDS1: + case PCI_DEVICE_ID_O2_FUJIN2: + reg = sdhci_readl(host, O2_SD_VENDOR_SETTING); + if (reg & 0x1) + host->quirks |= SDHCI_QUIRK_MULTIBLOCK_READ_ACMD12; + + if (chip->pdev->device != PCI_DEVICE_ID_O2_FUJIN2) + break; + /* set dll watch dog timer */ + reg = sdhci_readl(host, O2_SD_VENDOR_SETTING2); + reg |= (1 << 12); + sdhci_writel(host, reg, O2_SD_VENDOR_SETTING2); + + break; + default: + break; + } + + return 0; +} +EXPORT_SYMBOL_GPL(sdhci_pci_o2_probe_slot); + +int sdhci_pci_o2_probe(struct sdhci_pci_chip *chip) +{ + int ret; + u8 scratch; + u32 scratch_32; + + switch (chip->pdev->device) { + case PCI_DEVICE_ID_O2_8220: + case PCI_DEVICE_ID_O2_8221: + case PCI_DEVICE_ID_O2_8320: + case PCI_DEVICE_ID_O2_8321: + /* This extra setup is required due to broken ADMA. */ + ret = pci_read_config_byte(chip->pdev, + O2_SD_LOCK_WP, &scratch); + if (ret) + return ret; + scratch &= 0x7f; + pci_write_config_byte(chip->pdev, O2_SD_LOCK_WP, scratch); + + /* Set Multi 3 to VCC3V# */ + pci_write_config_byte(chip->pdev, O2_SD_MULTI_VCC3V, 0x08); + + /* Disable CLK_REQ# support after media DET */ + ret = pci_read_config_byte(chip->pdev, + O2_SD_CLKREQ, &scratch); + if (ret) + return ret; + scratch |= 0x20; + pci_write_config_byte(chip->pdev, O2_SD_CLKREQ, scratch); + + /* Choose capabilities, enable SDMA. We have to write 0x01 + * to the capabilities register first to unlock it. + */ + ret = pci_read_config_byte(chip->pdev, O2_SD_CAPS, &scratch); + if (ret) + return ret; + scratch |= 0x01; + pci_write_config_byte(chip->pdev, O2_SD_CAPS, scratch); + pci_write_config_byte(chip->pdev, O2_SD_CAPS, 0x73); + + /* Disable ADMA1/2 */ + pci_write_config_byte(chip->pdev, O2_SD_ADMA1, 0x39); + pci_write_config_byte(chip->pdev, O2_SD_ADMA2, 0x08); + + /* Disable the infinite transfer mode */ + ret = pci_read_config_byte(chip->pdev, + O2_SD_INF_MOD, &scratch); + if (ret) + return ret; + scratch |= 0x08; + pci_write_config_byte(chip->pdev, O2_SD_INF_MOD, scratch); + + /* Lock WP */ + ret = pci_read_config_byte(chip->pdev, + O2_SD_LOCK_WP, &scratch); + if (ret) + return ret; + scratch |= 0x80; + pci_write_config_byte(chip->pdev, O2_SD_LOCK_WP, scratch); + break; + case PCI_DEVICE_ID_O2_SDS0: + case PCI_DEVICE_ID_O2_SDS1: + case PCI_DEVICE_ID_O2_FUJIN2: + /* UnLock WP */ + ret = pci_read_config_byte(chip->pdev, + O2_SD_LOCK_WP, &scratch); + if (ret) + return ret; + + scratch &= 0x7f; + pci_write_config_byte(chip->pdev, O2_SD_LOCK_WP, scratch); + + /* Set timeout CLK */ + ret = pci_read_config_dword(chip->pdev, + O2_SD_CLK_SETTING, &scratch_32); + if (ret) + return ret; + + scratch_32 &= ~(0xFF00); + scratch_32 |= 0x07E0C800; + pci_write_config_dword(chip->pdev, + O2_SD_CLK_SETTING, scratch_32); + + ret = pci_read_config_dword(chip->pdev, + O2_SD_CLKREQ, &scratch_32); + if (ret) + return ret; + scratch_32 |= 0x3; + pci_write_config_dword(chip->pdev, O2_SD_CLKREQ, scratch_32); + + ret = pci_read_config_dword(chip->pdev, + O2_SD_PLL_SETTING, &scratch_32); + if (ret) + return ret; + + scratch_32 &= ~(0x1F3F070E); + scratch_32 |= 0x18270106; + pci_write_config_dword(chip->pdev, + O2_SD_PLL_SETTING, scratch_32); + + /* Disable UHS1 funciton */ + ret = pci_read_config_dword(chip->pdev, + O2_SD_CAP_REG2, &scratch_32); + if (ret) + return ret; + scratch_32 &= ~(0xE0); + pci_write_config_dword(chip->pdev, + O2_SD_CAP_REG2, scratch_32); + + if (chip->pdev->device == PCI_DEVICE_ID_O2_FUJIN2) + sdhci_pci_o2_fujin2_pci_init(chip); + + /* Lock WP */ + ret = pci_read_config_byte(chip->pdev, + O2_SD_LOCK_WP, &scratch); + if (ret) + return ret; + scratch |= 0x80; + pci_write_config_byte(chip->pdev, O2_SD_LOCK_WP, scratch); + break; + case PCI_DEVICE_ID_O2_SEABIRD0: + case PCI_DEVICE_ID_O2_SEABIRD1: + /* UnLock WP */ + ret = pci_read_config_byte(chip->pdev, + O2_SD_LOCK_WP, &scratch); + if (ret) + return ret; + + scratch &= 0x7f; + pci_write_config_byte(chip->pdev, O2_SD_LOCK_WP, scratch); + + ret = pci_read_config_dword(chip->pdev, + O2_SD_FUNC_REG0, &scratch_32); + + if ((scratch_32 & 0xff000000) == 0x01000000) { + scratch_32 &= 0x0000FFFF; + scratch_32 |= 0x1F340000; + + pci_write_config_dword(chip->pdev, + O2_SD_PLL_SETTING, scratch_32); + } else { + scratch_32 &= 0x0000FFFF; + scratch_32 |= 0x2c280000; + + pci_write_config_dword(chip->pdev, + O2_SD_PLL_SETTING, scratch_32); + + ret = pci_read_config_dword(chip->pdev, + O2_SD_FUNC_REG4, + &scratch_32); + scratch_32 |= (1 << 22); + pci_write_config_dword(chip->pdev, + O2_SD_FUNC_REG4, scratch_32); + } + + /* Lock WP */ + ret = pci_read_config_byte(chip->pdev, + O2_SD_LOCK_WP, &scratch); + if (ret) + return ret; + scratch |= 0x80; + pci_write_config_byte(chip->pdev, O2_SD_LOCK_WP, scratch); + break; + } + + return 0; +} +EXPORT_SYMBOL_GPL(sdhci_pci_o2_probe); + +int sdhci_pci_o2_resume(struct sdhci_pci_chip *chip) +{ + sdhci_pci_o2_probe(chip); + return 0; +} +EXPORT_SYMBOL_GPL(sdhci_pci_o2_resume); --- linux-3.13.0.orig/drivers/mmc/host/sdhci-pci-o2micro.h +++ linux-3.13.0/drivers/mmc/host/sdhci-pci-o2micro.h @@ -0,0 +1,72 @@ +/* + * Copyright (C) 2013 BayHub Technology Ltd. + * + * Authors: Peter Guo + * Adam Lee + * + * This software is licensed under the terms of the GNU General Public + * License version 2, as published by the Free Software Foundation, and + * may be copied, distributed, and modified under those terms. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ + +#ifndef __SDHCI_PCI_O2MICRO_H +#define __SDHCI_PCI_O2MICRO_H + +#include "sdhci-pci.h" + +/* + * O2Micro device IDs + */ + +#define PCI_DEVICE_ID_O2_SDS0 0x8420 +#define PCI_DEVICE_ID_O2_SDS1 0x8421 +#define PCI_DEVICE_ID_O2_FUJIN2 0x8520 +#define PCI_DEVICE_ID_O2_SEABIRD0 0x8620 +#define PCI_DEVICE_ID_O2_SEABIRD1 0x8621 + +/* + * O2Micro device registers + */ + +#define O2_SD_MISC_REG5 0x64 +#define O2_SD_LD0_CTRL 0x68 +#define O2_SD_DEV_CTRL 0x88 +#define O2_SD_LOCK_WP 0xD3 +#define O2_SD_TEST_REG 0xD4 +#define O2_SD_FUNC_REG0 0xDC +#define O2_SD_MULTI_VCC3V 0xEE +#define O2_SD_CLKREQ 0xEC +#define O2_SD_CAPS 0xE0 +#define O2_SD_ADMA1 0xE2 +#define O2_SD_ADMA2 0xE7 +#define O2_SD_INF_MOD 0xF1 +#define O2_SD_MISC_CTRL4 0xFC +#define O2_SD_TUNING_CTRL 0x300 +#define O2_SD_PLL_SETTING 0x304 +#define O2_SD_CLK_SETTING 0x328 +#define O2_SD_CAP_REG2 0x330 +#define O2_SD_CAP_REG0 0x334 +#define O2_SD_UHS1_CAP_SETTING 0x33C +#define O2_SD_DELAY_CTRL 0x350 +#define O2_SD_UHS2_L1_CTRL 0x35C +#define O2_SD_FUNC_REG3 0x3E0 +#define O2_SD_FUNC_REG4 0x3E4 + +#define O2_SD_VENDOR_SETTING 0x110 +#define O2_SD_VENDOR_SETTING2 0x1C8 + +extern void sdhci_pci_o2_fujin2_pci_init(struct sdhci_pci_chip *chip); + +extern int sdhci_pci_o2_probe_slot(struct sdhci_pci_slot *slot); + +extern int sdhci_pci_o2_probe(struct sdhci_pci_chip *chip); + +extern int sdhci_pci_o2_resume(struct sdhci_pci_chip *chip); + +#endif /* __SDHCI_PCI_O2MICRO_H */ --- linux-3.13.0.orig/drivers/mmc/host/sdhci-pci.c +++ linux-3.13.0/drivers/mmc/host/sdhci-pci.c @@ -27,79 +27,8 @@ #include #include "sdhci.h" - -/* - * PCI device IDs - */ -#define PCI_DEVICE_ID_INTEL_PCH_SDIO0 0x8809 -#define PCI_DEVICE_ID_INTEL_PCH_SDIO1 0x880a -#define PCI_DEVICE_ID_INTEL_BYT_EMMC 0x0f14 -#define PCI_DEVICE_ID_INTEL_BYT_SDIO 0x0f15 -#define PCI_DEVICE_ID_INTEL_BYT_SD 0x0f16 -#define PCI_DEVICE_ID_INTEL_BYT_EMMC2 0x0f50 -#define PCI_DEVICE_ID_INTEL_MRFL_MMC 0x1190 -#define PCI_DEVICE_ID_INTEL_CLV_SDIO0 0x08f9 -#define PCI_DEVICE_ID_INTEL_CLV_SDIO1 0x08fa -#define PCI_DEVICE_ID_INTEL_CLV_SDIO2 0x08fb -#define PCI_DEVICE_ID_INTEL_CLV_EMMC0 0x08e5 -#define PCI_DEVICE_ID_INTEL_CLV_EMMC1 0x08e6 - -/* - * PCI registers - */ - -#define PCI_SDHCI_IFPIO 0x00 -#define PCI_SDHCI_IFDMA 0x01 -#define PCI_SDHCI_IFVENDOR 0x02 - -#define PCI_SLOT_INFO 0x40 /* 8 bits */ -#define PCI_SLOT_INFO_SLOTS(x) ((x >> 4) & 7) -#define PCI_SLOT_INFO_FIRST_BAR_MASK 0x07 - -#define MAX_SLOTS 8 - -struct sdhci_pci_chip; -struct sdhci_pci_slot; - -struct sdhci_pci_fixes { - unsigned int quirks; - unsigned int quirks2; - bool allow_runtime_pm; - - int (*probe) (struct sdhci_pci_chip *); - - int (*probe_slot) (struct sdhci_pci_slot *); - void (*remove_slot) (struct sdhci_pci_slot *, int); - - int (*suspend) (struct sdhci_pci_chip *); - int (*resume) (struct sdhci_pci_chip *); -}; - -struct sdhci_pci_slot { - struct sdhci_pci_chip *chip; - struct sdhci_host *host; - struct sdhci_pci_data *data; - - int pci_bar; - int rst_n_gpio; - int cd_gpio; - int cd_irq; - - void (*hw_reset)(struct sdhci_host *host); -}; - -struct sdhci_pci_chip { - struct pci_dev *pdev; - - unsigned int quirks; - unsigned int quirks2; - bool allow_runtime_pm; - const struct sdhci_pci_fixes *fixes; - - int num_slots; /* Slots on controller */ - struct sdhci_pci_slot *slots[MAX_SLOTS]; /* Pointers to host slots */ -}; - +#include "sdhci-pci.h" +#include "sdhci-pci-o2micro.h" /*****************************************************************************\ * * @@ -296,6 +225,7 @@ static const struct sdhci_pci_fixes sdhci_intel_mfd_sd = { .quirks = SDHCI_QUIRK_NO_ENDATTR_IN_NOPDESC, .allow_runtime_pm = true, + .own_cd_for_runtime_pm = true, }; static const struct sdhci_pci_fixes sdhci_intel_mfd_sdio = { @@ -360,6 +290,7 @@ static const struct sdhci_pci_fixes sdhci_intel_byt_sd = { .quirks2 = SDHCI_QUIRK2_CARD_ON_NEEDS_BUS_ON, .allow_runtime_pm = true, + .own_cd_for_runtime_pm = true, }; /* Define Host controllers for Intel Merrifield platform */ @@ -381,6 +312,7 @@ static const struct sdhci_pci_fixes sdhci_intel_mrfl_mmc = { .quirks = SDHCI_QUIRK_NO_ENDATTR_IN_NOPDESC, + .quirks2 = SDHCI_QUIRK2_BROKEN_HS200, .probe_slot = intel_mrfl_mmc_probe_slot, }; @@ -393,65 +325,6 @@ #define O2_SD_ADMA2 0xE7 #define O2_SD_INF_MOD 0xF1 -static int o2_probe(struct sdhci_pci_chip *chip) -{ - int ret; - u8 scratch; - - switch (chip->pdev->device) { - case PCI_DEVICE_ID_O2_8220: - case PCI_DEVICE_ID_O2_8221: - case PCI_DEVICE_ID_O2_8320: - case PCI_DEVICE_ID_O2_8321: - /* This extra setup is required due to broken ADMA. */ - ret = pci_read_config_byte(chip->pdev, O2_SD_LOCK_WP, &scratch); - if (ret) - return ret; - scratch &= 0x7f; - pci_write_config_byte(chip->pdev, O2_SD_LOCK_WP, scratch); - - /* Set Multi 3 to VCC3V# */ - pci_write_config_byte(chip->pdev, O2_SD_MULTI_VCC3V, 0x08); - - /* Disable CLK_REQ# support after media DET */ - ret = pci_read_config_byte(chip->pdev, O2_SD_CLKREQ, &scratch); - if (ret) - return ret; - scratch |= 0x20; - pci_write_config_byte(chip->pdev, O2_SD_CLKREQ, scratch); - - /* Choose capabilities, enable SDMA. We have to write 0x01 - * to the capabilities register first to unlock it. - */ - ret = pci_read_config_byte(chip->pdev, O2_SD_CAPS, &scratch); - if (ret) - return ret; - scratch |= 0x01; - pci_write_config_byte(chip->pdev, O2_SD_CAPS, scratch); - pci_write_config_byte(chip->pdev, O2_SD_CAPS, 0x73); - - /* Disable ADMA1/2 */ - pci_write_config_byte(chip->pdev, O2_SD_ADMA1, 0x39); - pci_write_config_byte(chip->pdev, O2_SD_ADMA2, 0x08); - - /* Disable the infinite transfer mode */ - ret = pci_read_config_byte(chip->pdev, O2_SD_INF_MOD, &scratch); - if (ret) - return ret; - scratch |= 0x08; - pci_write_config_byte(chip->pdev, O2_SD_INF_MOD, scratch); - - /* Lock WP */ - ret = pci_read_config_byte(chip->pdev, O2_SD_LOCK_WP, &scratch); - if (ret) - return ret; - scratch |= 0x80; - pci_write_config_byte(chip->pdev, O2_SD_LOCK_WP, scratch); - } - - return 0; -} - static int jmicron_pmos(struct sdhci_pci_chip *chip, int on) { u8 scratch; @@ -642,7 +515,10 @@ } static const struct sdhci_pci_fixes sdhci_o2 = { - .probe = o2_probe, + .probe = sdhci_pci_o2_probe, + .quirks = SDHCI_QUIRK_NO_ENDATTR_IN_NOPDESC, + .probe_slot = sdhci_pci_o2_probe_slot, + .resume = sdhci_pci_o2_resume, }; static const struct sdhci_pci_fixes sdhci_jmicron = { @@ -1055,6 +931,46 @@ .driver_data = (kernel_ulong_t)&sdhci_o2, }, + { + .vendor = PCI_VENDOR_ID_O2, + .device = PCI_DEVICE_ID_O2_FUJIN2, + .subvendor = PCI_ANY_ID, + .subdevice = PCI_ANY_ID, + .driver_data = (kernel_ulong_t)&sdhci_o2, + }, + + { + .vendor = PCI_VENDOR_ID_O2, + .device = PCI_DEVICE_ID_O2_SDS0, + .subvendor = PCI_ANY_ID, + .subdevice = PCI_ANY_ID, + .driver_data = (kernel_ulong_t)&sdhci_o2, + }, + + { + .vendor = PCI_VENDOR_ID_O2, + .device = PCI_DEVICE_ID_O2_SDS1, + .subvendor = PCI_ANY_ID, + .subdevice = PCI_ANY_ID, + .driver_data = (kernel_ulong_t)&sdhci_o2, + }, + + { + .vendor = PCI_VENDOR_ID_O2, + .device = PCI_DEVICE_ID_O2_SEABIRD0, + .subvendor = PCI_ANY_ID, + .subdevice = PCI_ANY_ID, + .driver_data = (kernel_ulong_t)&sdhci_o2, + }, + + { + .vendor = PCI_VENDOR_ID_O2, + .device = PCI_DEVICE_ID_O2_SEABIRD1, + .subvendor = PCI_ANY_ID, + .subdevice = PCI_ANY_ID, + .driver_data = (kernel_ulong_t)&sdhci_o2, + }, + { /* Generic SD host controller */ PCI_DEVICE_CLASS((PCI_CLASS_SYSTEM_SDHCI << 8), 0xFFFF00) }, @@ -1457,6 +1373,15 @@ sdhci_pci_add_own_cd(slot); + /* + * Check if the chip needs a separate GPIO for card detect to wake up + * from runtime suspend. If it is not there, don't allow runtime PM. + * Note sdhci_pci_add_own_cd() sets slot->cd_gpio to -EINVAL on failure. + */ + if (chip->fixes && chip->fixes->own_cd_for_runtime_pm && + !gpio_is_valid(slot->cd_gpio)) + chip->allow_runtime_pm = false; + return slot; remove: --- linux-3.13.0.orig/drivers/mmc/host/sdhci-pci.h +++ linux-3.13.0/drivers/mmc/host/sdhci-pci.h @@ -0,0 +1,78 @@ +#ifndef __SDHCI_PCI_H +#define __SDHCI_PCI_H + +/* + * PCI device IDs + */ + +#define PCI_DEVICE_ID_INTEL_PCH_SDIO0 0x8809 +#define PCI_DEVICE_ID_INTEL_PCH_SDIO1 0x880a +#define PCI_DEVICE_ID_INTEL_BYT_EMMC 0x0f14 +#define PCI_DEVICE_ID_INTEL_BYT_SDIO 0x0f15 +#define PCI_DEVICE_ID_INTEL_BYT_SD 0x0f16 +#define PCI_DEVICE_ID_INTEL_BYT_EMMC2 0x0f50 +#define PCI_DEVICE_ID_INTEL_MRFL_MMC 0x1190 +#define PCI_DEVICE_ID_INTEL_CLV_SDIO0 0x08f9 +#define PCI_DEVICE_ID_INTEL_CLV_SDIO1 0x08fa +#define PCI_DEVICE_ID_INTEL_CLV_SDIO2 0x08fb +#define PCI_DEVICE_ID_INTEL_CLV_EMMC0 0x08e5 +#define PCI_DEVICE_ID_INTEL_CLV_EMMC1 0x08e6 + +/* + * PCI registers + */ + +#define PCI_SDHCI_IFPIO 0x00 +#define PCI_SDHCI_IFDMA 0x01 +#define PCI_SDHCI_IFVENDOR 0x02 + +#define PCI_SLOT_INFO 0x40 /* 8 bits */ +#define PCI_SLOT_INFO_SLOTS(x) ((x >> 4) & 7) +#define PCI_SLOT_INFO_FIRST_BAR_MASK 0x07 + +#define MAX_SLOTS 8 + +struct sdhci_pci_chip; +struct sdhci_pci_slot; + +struct sdhci_pci_fixes { + unsigned int quirks; + unsigned int quirks2; + bool allow_runtime_pm; + bool own_cd_for_runtime_pm; + + int (*probe) (struct sdhci_pci_chip *); + + int (*probe_slot) (struct sdhci_pci_slot *); + void (*remove_slot) (struct sdhci_pci_slot *, int); + + int (*suspend) (struct sdhci_pci_chip *); + int (*resume) (struct sdhci_pci_chip *); +}; + +struct sdhci_pci_slot { + struct sdhci_pci_chip *chip; + struct sdhci_host *host; + struct sdhci_pci_data *data; + + int pci_bar; + int rst_n_gpio; + int cd_gpio; + int cd_irq; + + void (*hw_reset)(struct sdhci_host *host); +}; + +struct sdhci_pci_chip { + struct pci_dev *pdev; + + unsigned int quirks; + unsigned int quirks2; + bool allow_runtime_pm; + const struct sdhci_pci_fixes *fixes; + + int num_slots; /* Slots on controller */ + struct sdhci_pci_slot *slots[MAX_SLOTS]; /* Pointers to host slots */ +}; + +#endif /* __SDHCI_PCI_H */ --- linux-3.13.0.orig/drivers/mmc/host/sdhci.c +++ linux-3.13.0/drivers/mmc/host/sdhci.c @@ -1845,12 +1845,12 @@ unsigned long timeout; int err = 0; bool requires_tuning_nonuhs = false; + unsigned long flags; host = mmc_priv(mmc); sdhci_runtime_pm_get(host); - disable_irq(host->irq); - spin_lock(&host->lock); + spin_lock_irqsave(&host->lock, flags); ctrl = sdhci_readw(host, SDHCI_HOST_CONTROL2); @@ -1870,15 +1870,13 @@ requires_tuning_nonuhs) ctrl |= SDHCI_CTRL_EXEC_TUNING; else { - spin_unlock(&host->lock); - enable_irq(host->irq); + spin_unlock_irqrestore(&host->lock, flags); sdhci_runtime_pm_put(host); return 0; } if (host->ops->platform_execute_tuning) { - spin_unlock(&host->lock); - enable_irq(host->irq); + spin_unlock_irqrestore(&host->lock, flags); err = host->ops->platform_execute_tuning(host, opcode); sdhci_runtime_pm_put(host); return err; @@ -1951,15 +1949,12 @@ host->cmd = NULL; host->mrq = NULL; - spin_unlock(&host->lock); - enable_irq(host->irq); - + spin_unlock_irqrestore(&host->lock, flags); /* Wait for Buffer Read Ready interrupt */ wait_event_interruptible_timeout(host->buf_ready_int, (host->tuning_done == 1), msecs_to_jiffies(50)); - disable_irq(host->irq); - spin_lock(&host->lock); + spin_lock_irqsave(&host->lock, flags); if (!host->tuning_done) { pr_info(DRIVER_NAME ": Timeout waiting for " @@ -2034,8 +2029,7 @@ err = 0; sdhci_clear_set_irqs(host, SDHCI_INT_DATA_AVAIL, ier); - spin_unlock(&host->lock); - enable_irq(host->irq); + spin_unlock_irqrestore(&host->lock, flags); sdhci_runtime_pm_put(host); return err; @@ -3004,7 +2998,8 @@ /* SD3.0: SDR104 is supported so (for eMMC) the caps2 * field can be promoted to support HS200. */ - mmc->caps2 |= MMC_CAP2_HS200; + if (!(host->quirks2 & SDHCI_QUIRK2_BROKEN_HS200)) + mmc->caps2 |= MMC_CAP2_HS200; } else if (caps[1] & SDHCI_SUPPORT_SDR50) mmc->caps |= MMC_CAP_UHS_SDR50; --- linux-3.13.0.orig/drivers/mtd/nand/atmel_nand.c +++ linux-3.13.0/drivers/mtd/nand/atmel_nand.c @@ -1220,6 +1220,7 @@ goto err; } + nand_chip->options |= NAND_NO_SUBPAGE_WRITE; nand_chip->ecc.read_page = atmel_nand_pmecc_read_page; nand_chip->ecc.write_page = atmel_nand_pmecc_write_page; --- linux-3.13.0.orig/drivers/mtd/nand/mxc_nand.c +++ linux-3.13.0/drivers/mtd/nand/mxc_nand.c @@ -677,7 +677,6 @@ ecc_stat >>= 4; } while (--no_subpages); - mtd->ecc_stats.corrected += ret; pr_debug("%d Symbol Correctable RS-ECC Error\n", ret); return ret; --- linux-3.13.0.orig/drivers/mtd/nand/omap2.c +++ linux-3.13.0/drivers/mtd/nand/omap2.c @@ -1633,6 +1633,7 @@ int i; dma_cap_mask_t mask; unsigned sig; + unsigned oob_index; struct resource *res; struct mtd_part_parser_data ppdata = {}; @@ -1832,11 +1833,14 @@ (mtd->writesize / nand_chip->ecc.size); if (nand_chip->options & NAND_BUSWIDTH_16) - ecclayout->eccpos[0] = BADBLOCK_MARKER_LENGTH; + oob_index = BADBLOCK_MARKER_LENGTH; else - ecclayout->eccpos[0] = 1; - ecclayout->oobfree->offset = ecclayout->eccpos[0] + - ecclayout->eccbytes; + oob_index = 1; + for (i = 0; i < ecclayout->eccbytes; i++, oob_index++) + ecclayout->eccpos[i] = oob_index; + /* no reserved-marker in ecclayout for this ecc-scheme */ + ecclayout->oobfree->offset = + ecclayout->eccpos[ecclayout->eccbytes - 1] + 1; break; case OMAP_ECC_BCH4_CODE_HW_DETECTION_SW: @@ -1853,9 +1857,15 @@ ecclayout->eccbytes = nand_chip->ecc.bytes * (mtd->writesize / nand_chip->ecc.size); - ecclayout->eccpos[0] = BADBLOCK_MARKER_LENGTH; - ecclayout->oobfree->offset = ecclayout->eccpos[0] + - ecclayout->eccbytes; + oob_index = BADBLOCK_MARKER_LENGTH; + for (i = 0; i < ecclayout->eccbytes; i++, oob_index++) { + ecclayout->eccpos[i] = oob_index; + if (((i + 1) % nand_chip->ecc.bytes) == 0) + oob_index++; + } + /* include reserved-marker in ecclayout->oobfree calculation */ + ecclayout->oobfree->offset = 1 + + ecclayout->eccpos[ecclayout->eccbytes - 1] + 1; /* software bch library is used for locating errors */ nand_chip->ecc.priv = nand_bch_init(mtd, nand_chip->ecc.size, @@ -1889,9 +1899,12 @@ ecclayout->eccbytes = nand_chip->ecc.bytes * (mtd->writesize / nand_chip->ecc.size); - ecclayout->eccpos[0] = BADBLOCK_MARKER_LENGTH; - ecclayout->oobfree->offset = ecclayout->eccpos[0] + - ecclayout->eccbytes; + oob_index = BADBLOCK_MARKER_LENGTH; + for (i = 0; i < ecclayout->eccbytes; i++, oob_index++) + ecclayout->eccpos[i] = oob_index; + /* reserved marker already included in ecclayout->eccbytes */ + ecclayout->oobfree->offset = + ecclayout->eccpos[ecclayout->eccbytes - 1] + 1; /* This ECC scheme requires ELM H/W block */ if (is_elm_present(info, pdata->elm_of_node, BCH4_ECC) < 0) { pr_err("nand: error: could not initialize ELM\n"); @@ -1919,9 +1932,15 @@ ecclayout->eccbytes = nand_chip->ecc.bytes * (mtd->writesize / nand_chip->ecc.size); - ecclayout->eccpos[0] = BADBLOCK_MARKER_LENGTH; - ecclayout->oobfree->offset = ecclayout->eccpos[0] + - ecclayout->eccbytes; + oob_index = BADBLOCK_MARKER_LENGTH; + for (i = 0; i < ecclayout->eccbytes; i++, oob_index++) { + ecclayout->eccpos[i] = oob_index; + if (((i + 1) % nand_chip->ecc.bytes) == 0) + oob_index++; + } + /* include reserved-marker in ecclayout->oobfree calculation */ + ecclayout->oobfree->offset = 1 + + ecclayout->eccpos[ecclayout->eccbytes - 1] + 1; /* software bch library is used for locating errors */ nand_chip->ecc.priv = nand_bch_init(mtd, nand_chip->ecc.size, @@ -1962,9 +1981,12 @@ ecclayout->eccbytes = nand_chip->ecc.bytes * (mtd->writesize / nand_chip->ecc.size); - ecclayout->eccpos[0] = BADBLOCK_MARKER_LENGTH; - ecclayout->oobfree->offset = ecclayout->eccpos[0] + - ecclayout->eccbytes; + oob_index = BADBLOCK_MARKER_LENGTH; + for (i = 0; i < ecclayout->eccbytes; i++, oob_index++) + ecclayout->eccpos[i] = oob_index; + /* reserved marker already included in ecclayout->eccbytes */ + ecclayout->oobfree->offset = + ecclayout->eccpos[ecclayout->eccbytes - 1] + 1; break; #else pr_err("nand: error: CONFIG_MTD_NAND_OMAP_BCH not enabled\n"); @@ -1978,11 +2000,8 @@ goto return_error; } - /* populate remaining ECC layout data */ - ecclayout->oobfree->length = mtd->oobsize - (BADBLOCK_MARKER_LENGTH + - ecclayout->eccbytes); - for (i = 1; i < ecclayout->eccbytes; i++) - ecclayout->eccpos[i] = ecclayout->eccpos[0] + i; + /* all OOB bytes from oobfree->offset till end off OOB are free */ + ecclayout->oobfree->length = mtd->oobsize - ecclayout->oobfree->offset; /* check if NAND device's OOB is enough to store ECC signatures */ if (mtd->oobsize < (ecclayout->eccbytes + BADBLOCK_MARKER_LENGTH)) { pr_err("not enough OOB bytes required = %d, available=%d\n", --- linux-3.13.0.orig/drivers/net/Kconfig +++ linux-3.13.0/drivers/net/Kconfig @@ -341,7 +341,6 @@ The corresponding Linux frontend driver is enabled by the CONFIG_XEN_NETDEV_FRONTEND configuration option. - The backend driver presents a standard network device endpoint for each paravirtual network device to the driver domain network stack. These can then be bridged or routed @@ -353,12 +352,63 @@ will be called xen-netback. config VMXNET3 - tristate "VMware VMXNET3 ethernet driver" - depends on PCI && INET + tristate "VMware VMXNET3 ethernet driver" + depends on PCI && INET + help + This driver supports VMware's vmxnet3 virtual ethernet NIC. + To compile this driver as a module, choose M here: the + module will be called vmxnet3. + +config DPA + bool "Freescale Data Path Frame Manager Ethernet" + depends on FSL_SOC && FSL_BMAN_PORTAL && FSL_QMAN_PORTAL && FSL_FMAN + select PHYLIB + +config DPA_OFFLINE_PORTS + bool "Offline Ports support" + depends on DPA + default y + help + The Offline Parsing / Host Command ports (short: OH ports, of Offline ports) provide + most of the functionality of the regular, online ports, except they receive their + frames from a core or an accelerator on the SoC, via QMan frame queues, + rather than directly from the network. + Offline ports are configured via PCD (Parse-Classify-Distribute) schemes, just like + any online FMan port. They deliver the processed frames to frame queues, according + to the applied PCD configurations. + + Choosing this feature will not impact the functionality and/or performance of the system, + so it is safe to have it. + +config DPA_MAX_FRM_SIZE + int "Maximum L2 frame size" + depends on DPA + range 64 9600 + default "1522" help - This driver supports VMware's vmxnet3 virtual ethernet NIC. - To compile this driver as a module, choose M here: the - module will be called vmxnet3. + Configure this in relation to the maximum possible MTU of your network configuration. In particular, + one would need to increase this value in order to use jumbo frames. DPA_MAX_FRM_SIZE must accomodate + the Ethernet FCS (4 bytes) and one ETH+VLAN header (18 bytes), to a total of 22 bytes in excess of + the desired L3 MTU. + + Note that having too large a DPA_MAX_FRM_SIZE (much larger than the actual MTU) may lead to buffer + exhaustion, especially in the case of badly fragmented datagrams on the Rx path. Conversely, + having a DPA_MAX_FRM_SIZE smaller than the actual MTU will lead to frames being dropped. + + This can be overridden by specifying "fsl_fman_phy_max_frm" in the kernel bootargs: + * in Hypervisor-based scenarios, by adding a "chosen" node with the "bootargs" property specifying + "fsl_fman_phy_max_frm="; + * in non-Hypervisor-based scenarios, via u-boot's env, by modifying the "bootargs" env variable. + +config FSL_DPA_1588 + tristate "IEEE 1588-compliant timestamping" + depends on DPA + default n + +config DPAA_ETH_UNIT_TESTS + bool "Run Unit Tests for DPAA Ethernet" + depends on DPA + default y source "drivers/net/hyperv/Kconfig" --- linux-3.13.0.orig/drivers/net/Makefile +++ linux-3.13.0/drivers/net/Makefile @@ -56,6 +56,7 @@ obj-$(CONFIG_WLAN) += wireless/ obj-$(CONFIG_WIMAX) += wimax/ obj-$(CONFIG_IEEE802154) += ieee802154/ +obj-$(if $(CONFIG_DPA),y) += dpa/ obj-$(CONFIG_VMXNET3) += vmxnet3/ obj-$(CONFIG_XEN_NETDEV_FRONTEND) += xen-netfront.o --- linux-3.13.0.orig/drivers/net/bonding/bond_3ad.c +++ linux-3.13.0/drivers/net/bonding/bond_3ad.c @@ -1806,8 +1806,6 @@ BOND_AD_INFO(bond).agg_select_timer = timeout; } -static u16 aggregator_identifier; - /** * bond_3ad_initialize - initialize a bond's 802.3ad parameters and structures * @bond: bonding struct to work on @@ -1821,7 +1819,7 @@ if (MAC_ADDRESS_COMPARE(&(BOND_AD_INFO(bond).system.sys_mac_addr), bond->dev->dev_addr)) { - aggregator_identifier = 0; + BOND_AD_INFO(bond).aggregator_identifier = 0; BOND_AD_INFO(bond).system.sys_priority = 0xFFFF; BOND_AD_INFO(bond).system.sys_mac_addr = *((struct mac_addr *)bond->dev->dev_addr); @@ -1892,7 +1890,7 @@ ad_initialize_agg(aggregator); aggregator->aggregator_mac_address = *((struct mac_addr *)bond->dev->dev_addr); - aggregator->aggregator_identifier = (++aggregator_identifier); + aggregator->aggregator_identifier = ++BOND_AD_INFO(bond).aggregator_identifier; aggregator->slave = slave; aggregator->is_active = 0; aggregator->num_of_ports = 0; --- linux-3.13.0.orig/drivers/net/bonding/bond_3ad.h +++ linux-3.13.0/drivers/net/bonding/bond_3ad.h @@ -253,6 +253,7 @@ struct ad_bond_info { struct ad_system system; /* 802.3ad system structure */ u32 agg_select_timer; // Timer to select aggregator after all adapter's hand shakes + u16 aggregator_identifier; }; struct ad_slave_info { --- linux-3.13.0.orig/drivers/net/bonding/bond_alb.c +++ linux-3.13.0/drivers/net/bonding/bond_alb.c @@ -731,7 +731,7 @@ client_info->ntt = 0; } - if (!vlan_get_tag(skb, &client_info->vlan_id)) + if (vlan_get_tag(skb, &client_info->vlan_id)) client_info->vlan_id = 0; if (!client_info->assigned) { --- linux-3.13.0.orig/drivers/net/bonding/bond_main.c +++ linux-3.13.0/drivers/net/bonding/bond_main.c @@ -3733,7 +3733,7 @@ static u16 bond_select_queue(struct net_device *dev, struct sk_buff *skb, - void *accel_priv) + void *accel_priv, select_queue_fallback_t fallback) { /* * This helper function exists to help dev_pick_tx get the correct --- linux-3.13.0.orig/drivers/net/can/dev.c +++ linux-3.13.0/drivers/net/can/dev.c @@ -324,19 +324,10 @@ } if (!priv->echo_skb[idx]) { - struct sock *srcsk = skb->sk; - if (atomic_read(&skb->users) != 1) { - struct sk_buff *old_skb = skb; - - skb = skb_clone(old_skb, GFP_ATOMIC); - kfree_skb(old_skb); - if (!skb) - return; - } else - skb_orphan(skb); - - skb->sk = srcsk; + skb = can_create_echo_skb(skb); + if (!skb) + return; /* make settings for echo to reduce code in irq context */ skb->protocol = htons(ETH_P_CAN); --- linux-3.13.0.orig/drivers/net/can/flexcan.c +++ linux-3.13.0/drivers/net/can/flexcan.c @@ -144,6 +144,8 @@ #define FLEXCAN_MB_CODE_MASK (0xf0ffffff) +#define FLEXCAN_TIMEOUT_US (50) + /* * FLEXCAN hardware feature flags * @@ -259,6 +261,22 @@ } #endif +static inline int flexcan_transceiver_enable(const struct flexcan_priv *priv) +{ + if (!priv->reg_xceiver) + return 0; + + return regulator_enable(priv->reg_xceiver); +} + +static inline int flexcan_transceiver_disable(const struct flexcan_priv *priv) +{ + if (!priv->reg_xceiver) + return 0; + + return regulator_disable(priv->reg_xceiver); +} + static inline int flexcan_has_and_handle_berr(const struct flexcan_priv *priv, u32 reg_esr) { @@ -266,26 +284,42 @@ (reg_esr & FLEXCAN_ESR_ERR_BUS); } -static inline void flexcan_chip_enable(struct flexcan_priv *priv) +static int flexcan_chip_enable(struct flexcan_priv *priv) { struct flexcan_regs __iomem *regs = priv->base; + unsigned int timeout = FLEXCAN_TIMEOUT_US / 10; u32 reg; reg = flexcan_read(®s->mcr); reg &= ~FLEXCAN_MCR_MDIS; flexcan_write(reg, ®s->mcr); - udelay(10); + while (timeout-- && (flexcan_read(®s->mcr) & FLEXCAN_MCR_LPM_ACK)) + usleep_range(10, 20); + + if (flexcan_read(®s->mcr) & FLEXCAN_MCR_LPM_ACK) + return -ETIMEDOUT; + + return 0; } -static inline void flexcan_chip_disable(struct flexcan_priv *priv) +static int flexcan_chip_disable(struct flexcan_priv *priv) { struct flexcan_regs __iomem *regs = priv->base; + unsigned int timeout = FLEXCAN_TIMEOUT_US / 10; u32 reg; reg = flexcan_read(®s->mcr); reg |= FLEXCAN_MCR_MDIS; flexcan_write(reg, ®s->mcr); + + while (timeout-- && !(flexcan_read(®s->mcr) & FLEXCAN_MCR_LPM_ACK)) + usleep_range(10, 20); + + if (!(flexcan_read(®s->mcr) & FLEXCAN_MCR_LPM_ACK)) + return -ETIMEDOUT; + + return 0; } static int flexcan_get_berr_counter(const struct net_device *dev, @@ -706,7 +740,9 @@ u32 reg_mcr, reg_ctrl; /* enable module */ - flexcan_chip_enable(priv); + err = flexcan_chip_enable(priv); + if (err) + return err; /* soft reset */ flexcan_write(FLEXCAN_MCR_SOFTRST, ®s->mcr); @@ -785,11 +821,9 @@ if (priv->devtype_data->features & FLEXCAN_HAS_V10_FEATURES) flexcan_write(0x0, ®s->rxfgmask); - if (priv->reg_xceiver) { - err = regulator_enable(priv->reg_xceiver); - if (err) - goto out; - } + err = flexcan_transceiver_enable(priv); + if (err) + goto out; /* synchronize with the can bus */ reg_mcr = flexcan_read(®s->mcr); @@ -824,16 +858,17 @@ struct flexcan_regs __iomem *regs = priv->base; u32 reg; - /* Disable all interrupts */ - flexcan_write(0, ®s->imask1); - /* Disable + halt module */ reg = flexcan_read(®s->mcr); reg |= FLEXCAN_MCR_MDIS | FLEXCAN_MCR_HALT; flexcan_write(reg, ®s->mcr); - if (priv->reg_xceiver) - regulator_disable(priv->reg_xceiver); + /* Disable all interrupts */ + flexcan_write(0, ®s->imask1); + flexcan_write(priv->reg_ctrl_default & ~FLEXCAN_CTRL_ERR_ALL, + ®s->ctrl); + + flexcan_transceiver_disable(priv); priv->can.state = CAN_STATE_STOPPED; return; @@ -863,7 +898,7 @@ /* start chip and queuing */ err = flexcan_chip_start(dev); if (err) - goto out_close; + goto out_free_irq; can_led_event(dev, CAN_LED_EVENT_OPEN); @@ -872,6 +907,8 @@ return 0; + out_free_irq: + free_irq(dev->irq, dev); out_close: close_candev(dev); out_disable_per: @@ -942,12 +979,16 @@ goto out_disable_ipg; /* select "bus clock", chip must be disabled */ - flexcan_chip_disable(priv); + err = flexcan_chip_disable(priv); + if (err) + goto out_disable_per; reg = flexcan_read(®s->ctrl); reg |= FLEXCAN_CTRL_CLK_SRC; flexcan_write(reg, ®s->ctrl); - flexcan_chip_enable(priv); + err = flexcan_chip_enable(priv); + if (err) + goto out_chip_disable; /* set freeze, halt and activate FIFO, restrict register access */ reg = flexcan_read(®s->mcr); @@ -964,14 +1005,15 @@ if (!(reg & FLEXCAN_MCR_FEN)) { netdev_err(dev, "Could not enable RX FIFO, unsupported core\n"); err = -ENODEV; - goto out_disable_per; + goto out_chip_disable; } err = register_candev(dev); - out_disable_per: /* disable core and turn off clocks */ + out_chip_disable: flexcan_chip_disable(priv); + out_disable_per: clk_disable_unprepare(priv->clk_per); out_disable_ipg: clk_disable_unprepare(priv->clk_ipg); @@ -1101,9 +1143,10 @@ static int flexcan_remove(struct platform_device *pdev) { struct net_device *dev = platform_get_drvdata(pdev); + struct flexcan_priv *priv = netdev_priv(dev); unregister_flexcandev(dev); - + netif_napi_del(&priv->napi); free_candev(dev); return 0; @@ -1114,8 +1157,11 @@ { struct net_device *dev = dev_get_drvdata(device); struct flexcan_priv *priv = netdev_priv(dev); + int err; - flexcan_chip_disable(priv); + err = flexcan_chip_disable(priv); + if (err) + return err; if (netif_running(dev)) { netif_stop_queue(dev); @@ -1136,9 +1182,7 @@ netif_device_attach(dev); netif_start_queue(dev); } - flexcan_chip_enable(priv); - - return 0; + return flexcan_chip_enable(priv); } #endif /* CONFIG_PM_SLEEP */ --- linux-3.13.0.orig/drivers/net/can/janz-ican3.c +++ linux-3.13.0/drivers/net/can/janz-ican3.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include @@ -1134,20 +1135,9 @@ */ static void ican3_put_echo_skb(struct ican3_dev *mod, struct sk_buff *skb) { - struct sock *srcsk = skb->sk; - - if (atomic_read(&skb->users) != 1) { - struct sk_buff *old_skb = skb; - - skb = skb_clone(old_skb, GFP_ATOMIC); - kfree_skb(old_skb); - if (!skb) - return; - } else { - skb_orphan(skb); - } - - skb->sk = srcsk; + skb = can_create_echo_skb(skb); + if (!skb) + return; /* save this skb for tx interrupt echo handling */ skb_queue_tail(&mod->echoq, skb); --- linux-3.13.0.orig/drivers/net/can/usb/kvaser_usb.c +++ linux-3.13.0/drivers/net/can/usb/kvaser_usb.c @@ -474,6 +474,8 @@ return err; dev->nchannels = msg.u.cardinfo.nchannels; + if (dev->nchannels > MAX_NET_DEVICES) + return -EINVAL; return 0; } --- linux-3.13.0.orig/drivers/net/can/vcan.c +++ linux-3.13.0/drivers/net/can/vcan.c @@ -46,6 +46,7 @@ #include #include #include +#include #include #include @@ -109,25 +110,23 @@ stats->rx_packets++; stats->rx_bytes += cfd->len; } - kfree_skb(skb); + consume_skb(skb); return NETDEV_TX_OK; } /* perform standard echo handling for CAN network interfaces */ if (loop) { - struct sock *srcsk = skb->sk; - skb = skb_share_check(skb, GFP_ATOMIC); + skb = can_create_echo_skb(skb); if (!skb) return NETDEV_TX_OK; /* receive with packet counting */ - skb->sk = srcsk; vcan_rx(skb, dev); } else { /* no looped packets => no counting */ - kfree_skb(skb); + consume_skb(skb); } return NETDEV_TX_OK; } --- linux-3.13.0.orig/drivers/net/dpa/Makefile +++ linux-3.13.0/drivers/net/dpa/Makefile @@ -0,0 +1,19 @@ +# +# Makefile for the Freescale Ethernet controllers +# +EXTRA_CFLAGS += -DVERSION=\"\" +# +#Include netcomm SW specific definitions +include $(srctree)/drivers/net/dpa/NetCommSw/ncsw_config.mk + +EXTRA_CFLAGS += -I$(NET_DPA) + +#Netcomm SW tree +obj-$(CONFIG_FSL_FMAN) += NetCommSw/ +obj-$(CONFIG_FSL_DPA_1588) += dpaa_1588.o +obj-$(CONFIG_DPA) += fsl-mac.o fsl-dpa.o +obj-$(CONFIG_DPA_OFFLINE_PORTS) += fsl-oh.o + +fsl-dpa-objs := dpa-ethtool.o dpaa_eth.o +fsl-mac-objs := mac.o mac-api.o +fsl-oh-objs := offline_port.o --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Kconfig +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Kconfig @@ -0,0 +1,57 @@ +menu "Frame Manager support" + +menuconfig FSL_FMAN + bool "Freescale Frame Manager (datapath) support" + # depends on PPC_E500MC + default y + ---help--- + If unsure, say Y. + +if FSL_FMAN + +config FSL_FMAN_TEST + bool "FMan test module" + default n + ---help--- + This option compiles test code for FMan. + +menu "FMAN Processor support" +choice + depends on FSL_FMAN + prompt "Processor Type" + +config FMAN_P3040_P4080_P5020 + bool "P3040 P4080 5020" + +config FMAN_P1023 + bool "P1023" + +endchoice +endmenu + +config FMAN_RESOURCE_ALLOCATION_ALGORITHM + bool "Enable FMan dynamic resource allocation algorithm" + default n + ---help--- + Enables algorithm for dynamic resource allocation + +config FMAN_DISABLE_OH_TO_REUSE_RESOURCES + depends on FMAN_RESOURCE_ALLOCATION_ALGORITHM + bool "Disable offline parsing ports to reuse resources" + default n + ---help--- + Redistributes FMan OH's resources to all other ports, + thus enabling other configurations. + +config FMAN_MIB_CNT_OVF_IRQ_EN + bool "Enable the dTSEC MIB counters overflow interrupt" + default n + ---help--- + Enable the dTSEC MIB counters overflow interrupt to get + accurate MIB counters values. Enabled it compensates + for the counters overflow but reduces performance and + triggers error messages in HV setups. + +endif # FSL_FMAN + +endmenu --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Makefile +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Makefile @@ -0,0 +1,13 @@ +# +# Makefile for the Freescale Ethernet controllers +# +EXTRA_CFLAGS += -DVERSION=\"\" +# +#Include netcomm SW specific definitions +include $(srctree)/drivers/net/dpa/NetCommSw/ncsw_config.mk +# +obj-y += etc/ +obj-${CONFIG_FMAN_P3040_P4080_P5020} += integrations/P3040_P4080_P5020/ +obj-${CONFIG_FMAN_P1023} += integrations/P1023/ +obj-y += Peripherals/FM/ +obj-y += src/ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/HC/Makefile +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/HC/Makefile @@ -0,0 +1,15 @@ +# +# Makefile for the Freescale Ethernet controllers +# +EXTRA_CFLAGS += -DVERSION=\"\" +# +#Include netcomm SW specific definitions +include $(srctree)/drivers/net/dpa/NetCommSw/ncsw_config.mk + +NCSW_FM_INC = $(srctree)/drivers/net/dpa/NetCommSw/Peripherals/FM/inc + +EXTRA_CFLAGS += -I$(NCSW_FM_INC) + +obj-y += fsl-ncsw-Hc.o + +fsl-ncsw-Hc-objs := hc.o --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/HC/hc.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/HC/hc.c @@ -0,0 +1,1584 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "std_ext.h" +#include "error_ext.h" +#include "sprint_ext.h" +#include "string_ext.h" + +#include "fm_common.h" +#include "fm_hc.h" + + +#define HC_HCOR_OPCODE_PLCR_PRFL 0x0 +#define HC_HCOR_OPCODE_KG_SCM 0x1 +#define HC_HCOR_OPCODE_SYNC 0x2 +#define HC_HCOR_OPCODE_CC 0x3 +#define HC_HCOR_OPCODE_CC_CAPWAP_REASSM_TIMEOUT 0x5 + +#define HC_HCOR_GBL 0x20000000 + +#define SIZE_OF_HC_FRAME_PORT_REGS (sizeof(t_HcFrame)-sizeof(t_FmPcdKgInterModuleSchemeRegs)+sizeof(t_FmPcdKgPortRegs)) +#define SIZE_OF_HC_FRAME_SCHEME_REGS sizeof(t_HcFrame) +#define SIZE_OF_HC_FRAME_PROFILES_REGS (sizeof(t_HcFrame)-sizeof(t_FmPcdKgInterModuleSchemeRegs)+sizeof(t_FmPcdPlcrInterModuleProfileRegs)) +#define SIZE_OF_HC_FRAME_PROFILE_CNT (sizeof(t_HcFrame)-sizeof(t_FmPcdPlcrInterModuleProfileRegs)+sizeof(uint32_t)) +#define SIZE_OF_HC_FRAME_READ_OR_CC_DYNAMIC 16 + +#define BUILD_FD(len) \ +do { \ + memset(&fmFd, 0, sizeof(t_DpaaFD)); \ + DPAA_FD_SET_ADDR(&fmFd, p_HcFrame); \ + DPAA_FD_SET_OFFSET(&fmFd, 0); \ + DPAA_FD_SET_LENGTH(&fmFd, len); \ +} while (0) + + +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(push,1) +#endif /* defined(__MWERKS__) && ... */ +#define MEM_MAP_START + +/**************************************************************************//** + @Description PCD KG scheme registers +*//***************************************************************************/ +typedef _Packed struct t_FmPcdKgSchemeRegsWithoutCounter { + volatile uint32_t kgse_mode; /**< MODE */ + volatile uint32_t kgse_ekfc; /**< Extract Known Fields Command */ + volatile uint32_t kgse_ekdv; /**< Extract Known Default Value */ + volatile uint32_t kgse_bmch; /**< Bit Mask Command High */ + volatile uint32_t kgse_bmcl; /**< Bit Mask Command Low */ + volatile uint32_t kgse_fqb; /**< Frame Queue Base */ + volatile uint32_t kgse_hc; /**< Hash Command */ + volatile uint32_t kgse_ppc; /**< Policer Profile Command */ + volatile uint32_t kgse_gec[FM_PCD_KG_NUM_OF_GENERIC_REGS]; + /**< Generic Extract Command */ + volatile uint32_t kgse_dv0; /**< KeyGen Scheme Entry Default Value 0 */ + volatile uint32_t kgse_dv1; /**< KeyGen Scheme Entry Default Value 1 */ + volatile uint32_t kgse_ccbs; /**< KeyGen Scheme Entry Coarse Classification Bit*/ + volatile uint32_t kgse_mv; /**< KeyGen Scheme Entry Match vector */ +} _PackedType t_FmPcdKgSchemeRegsWithoutCounter; + +typedef _Packed struct t_FmPcdKgPortRegs { + volatile uint32_t spReg; + volatile uint32_t cppReg; +} _PackedType t_FmPcdKgPortRegs; + +typedef _Packed struct t_HcFrame { + volatile uint32_t opcode; + volatile uint32_t actionReg; + volatile uint32_t extraReg; + volatile uint32_t commandSequence; + union { + t_FmPcdKgInterModuleSchemeRegs schemeRegs; + t_FmPcdKgInterModuleSchemeRegs schemeRegsWithoutCounter; + t_FmPcdPlcrInterModuleProfileRegs profileRegs; + volatile uint32_t singleRegForWrite; /* for writing SP, CPP, profile counter */ + t_FmPcdKgPortRegs portRegsForRead; + volatile uint32_t clsPlanEntries[CLS_PLAN_NUM_PER_GRP]; + t_FmPcdCcCapwapReassmTimeoutParams ccCapwapReassmTimeout; + } hcSpecificData; +} _PackedType t_HcFrame; + +#define MEM_MAP_END +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(pop) +#endif /* defined(__MWERKS__) && ... */ + + +typedef struct t_FmHc { + t_Handle h_FmPcd; + t_Handle h_HcPortDev; + t_FmPcdQmEnqueueCallback *f_QmEnqueue; /**< A callback for enqueuing frames to the QM */ + t_Handle h_QmArg; /**< A handle to the QM module */ + uint8_t padTill16; + + uint32_t seqNum; + volatile bool wait[32]; +} t_FmHc; + + +static __inline__ t_Error EnQFrm(t_FmHc *p_FmHc, t_DpaaFD *p_FmFd, volatile uint32_t *p_SeqNum) +{ + t_Error err = E_OK; + uint32_t savedSeqNum; + uint32_t intFlags; + uint32_t timeout=100; + + intFlags = FmPcdLock(p_FmHc->h_FmPcd); + *p_SeqNum = p_FmHc->seqNum; + savedSeqNum = p_FmHc->seqNum; + p_FmHc->seqNum = (uint32_t)((p_FmHc->seqNum+1)%32); + ASSERT_COND(!p_FmHc->wait[savedSeqNum]); + p_FmHc->wait[savedSeqNum] = TRUE; + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + DBG(TRACE, ("Send Hc, SeqNum %d, FD@0x%x, fd offset 0x%x", + savedSeqNum,DPAA_FD_GET_ADDR(p_FmFd),DPAA_FD_GET_OFFSET(p_FmFd))); + err = p_FmHc->f_QmEnqueue(p_FmHc->h_QmArg, (void *)p_FmFd); + if(err) + RETURN_ERROR(MINOR, err, ("HC enqueue failed")); + + while (p_FmHc->wait[savedSeqNum] && --timeout) + XX_UDelay(100); + + if (!timeout) + RETURN_ERROR(MINOR, E_TIMEOUT, ("HC Callback, timeout exceeded")); + + return err; +} + +static t_Error CcHcDoDynamicChange(t_FmHc *p_FmHc, t_Handle p_OldPointer, t_Handle p_NewPointer) +{ + t_HcFrame *p_HcFrame; + t_DpaaFD fmFd; + t_Error err = E_OK; + + ASSERT_COND(p_FmHc); + + p_HcFrame = (t_HcFrame *)XX_MallocSmart((sizeof(t_HcFrame) + p_FmHc->padTill16), 0, 16); + if (!p_HcFrame) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("HC Frame obj")); + + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_CC); + p_HcFrame->actionReg = FmPcdCcGetNodeAddrOffsetFromNodeInfo(p_FmHc->h_FmPcd, p_NewPointer); + if(p_HcFrame->actionReg == (uint32_t)ILLEGAL_BASE) + { + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Something wrong with base address")); + } + + p_HcFrame->actionReg |= 0xc0000000; + p_HcFrame->extraReg = FmPcdCcGetNodeAddrOffsetFromNodeInfo(p_FmHc->h_FmPcd, p_OldPointer); + if(p_HcFrame->extraReg == (uint32_t)ILLEGAL_BASE) + { + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Something wrong with base address")); + } + + BUILD_FD(SIZE_OF_HC_FRAME_READ_OR_CC_DYNAMIC); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + XX_FreeSmart(p_HcFrame); + + return E_OK; +} + +static t_Error HcDynamicChange(t_FmHc *p_FmHc,t_List *h_OldPointersLst, t_List *h_NewPointersLst, t_Handle *h_Params) +{ + + t_List *p_PosOld, *p_PosNew; + uint16_t i = 0; + t_Error err = E_OK; + uint8_t numOfModifiedPtr; + + SANITY_CHECK_RETURN_ERROR((LIST_NumOfObjs(h_NewPointersLst) == LIST_NumOfObjs(h_OldPointersLst)),E_INVALID_STATE); + + numOfModifiedPtr = (uint8_t)LIST_NumOfObjs(h_NewPointersLst); + p_PosNew = LIST_FIRST(h_NewPointersLst); + p_PosOld = LIST_FIRST(h_OldPointersLst); + for(i = 0; i < numOfModifiedPtr; i++) + { + err = CcHcDoDynamicChange(p_FmHc, p_PosOld, p_PosNew); + if(err) + { + FmPcdCcReleaseModifiedDataStructure(p_FmHc->h_FmPcd, h_OldPointersLst, h_NewPointersLst, i, h_Params); + RETURN_ERROR(MAJOR, err, ("For part of nodes changes are done - situation is danger")); + } + p_PosNew = LIST_NEXT(p_PosNew); + p_PosOld = LIST_NEXT(p_PosOld); + } + + err = FmPcdCcReleaseModifiedDataStructure(p_FmHc->h_FmPcd, h_OldPointersLst, h_NewPointersLst, i, h_Params); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + + return E_OK; +} + + +t_Handle FmHcConfigAndInit(t_FmHcParams *p_FmHcParams) +{ + t_FmHc *p_FmHc; + t_FmPortParams fmPortParam; + t_Error err = E_OK; + + p_FmHc = (t_FmHc *)XX_Malloc(sizeof(t_FmHc)); + if (!p_FmHc) + { + REPORT_ERROR(MINOR, E_NO_MEMORY, ("HC obj")); + return NULL; + } + memset(p_FmHc,0,sizeof(t_FmHc)); + + p_FmHc->h_FmPcd = p_FmHcParams->h_FmPcd; + p_FmHc->f_QmEnqueue = p_FmHcParams->params.f_QmEnqueue; + p_FmHc->h_QmArg = p_FmHcParams->params.h_QmArg; + + if (!FmIsMaster(p_FmHcParams->h_Fm)) + return (t_Handle)p_FmHc; + +/* +TKT056919 - axi12axi0 can hang if read request follows the single byte write on the very next cycle +TKT038900 - FM dma lockup occur due to AXI slave protocol violation +*/ +#ifdef FM_LOCKUP_ALIGNMENT_ERRATA_FMAN_SW004 + p_FmHc->padTill16 = 16 - (sizeof(t_FmHc) % 16); +#endif /* FM_LOCKUP_ALIGNMENT_ERRATA_FMAN_SW004 */ + memset(&fmPortParam, 0, sizeof(fmPortParam)); + fmPortParam.baseAddr = p_FmHcParams->params.portBaseAddr; + fmPortParam.portType = e_FM_PORT_TYPE_OH_HOST_COMMAND; + fmPortParam.portId = p_FmHcParams->params.portId; + fmPortParam.liodnBase = p_FmHcParams->params.liodnBase; + fmPortParam.h_Fm = p_FmHcParams->h_Fm; + + fmPortParam.specificParams.nonRxParams.errFqid = p_FmHcParams->params.errFqid; + fmPortParam.specificParams.nonRxParams.dfltFqid = p_FmHcParams->params.confFqid; + fmPortParam.specificParams.nonRxParams.qmChannel = p_FmHcParams->params.qmChannel; + + p_FmHc->h_HcPortDev = FM_PORT_Config(&fmPortParam); + if(!p_FmHc->h_HcPortDev) + { + REPORT_ERROR(MAJOR, E_INVALID_HANDLE, ("FM HC port!")); + XX_Free(p_FmHc); + return NULL; + } + + /* final init */ + if ((err = FM_PORT_Init(p_FmHc->h_HcPortDev)) != E_OK) + { + REPORT_ERROR(MAJOR, err, ("FM HC port!")); + FmHcFree(p_FmHc); + return NULL; + } + + if ((err = FM_PORT_Enable(p_FmHc->h_HcPortDev)) != E_OK) + { + REPORT_ERROR(MAJOR, err, ("FM HC port!")); + FmHcFree(p_FmHc); + return NULL; + } + + return (t_Handle)p_FmHc; +} + +void FmHcFree(t_Handle h_FmHc) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + + if (!p_FmHc) + return; + + if (p_FmHc->h_HcPortDev) + FM_PORT_Free(p_FmHc->h_HcPortDev); + + XX_Free(p_FmHc); +} + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +t_Error FmHcDumpRegs(t_Handle h_FmHc) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + + SANITY_CHECK_RETURN_ERROR(p_FmHc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmHc->h_HcPortDev, E_INVALID_HANDLE); + + return FM_PORT_DumpRegs(p_FmHc->h_HcPortDev); + +} +#endif /* (defined(DEBUG_ERRORS) && ... */ + +void FmHcTxConf(t_Handle h_FmHc, t_DpaaFD *p_Fd) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_HcFrame *p_HcFrame; + uint32_t intFlags; + + ASSERT_COND(p_FmHc); + + intFlags = FmPcdLock(p_FmHc->h_FmPcd); + p_HcFrame = (t_HcFrame *)PTR_MOVE(DPAA_FD_GET_ADDR(p_Fd), DPAA_FD_GET_OFFSET(p_Fd)); + + DBG(TRACE, ("Hc Conf, SeqNum %d, FD@0x%x, fd offset 0x%x", + p_HcFrame->commandSequence, DPAA_FD_GET_ADDR(p_Fd), DPAA_FD_GET_OFFSET(p_Fd))); + + if (!(p_FmHc->wait[p_HcFrame->commandSequence])) + REPORT_ERROR(MINOR, E_INVALID_FRAME, ("Not an Host-Command frame received!")); + else + p_FmHc->wait[p_HcFrame->commandSequence] = FALSE; + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); +} + +t_Handle FmHcPcdKgSetScheme(t_Handle h_FmHc, t_FmPcdKgSchemeParams *p_Scheme) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_Error err = E_OK; + t_FmPcdKgInterModuleSchemeRegs schemeRegs; + t_HcFrame *p_HcFrame; + t_DpaaFD fmFd; + uint32_t intFlags; + uint8_t physicalSchemeId, relativeSchemeId; + + p_HcFrame = (t_HcFrame *)XX_MallocSmart((sizeof(t_HcFrame) + p_FmHc->padTill16), 0, 16); + if (!p_HcFrame) + { + REPORT_ERROR(MINOR, E_NO_MEMORY, ("HC Frame obj")); + return NULL; + } + + if(!p_Scheme->modify) + { + /* check that schemeId is in range */ + if(p_Scheme->id.relativeSchemeId >= FmPcdKgGetNumOfPartitionSchemes(p_FmHc->h_FmPcd)) + { + REPORT_ERROR(MAJOR, E_NOT_IN_RANGE, ("Scheme is out of range")); + XX_FreeSmart(p_HcFrame); + return NULL; + } + + relativeSchemeId = p_Scheme->id.relativeSchemeId; + + if (FmPcdKgSchemeTryLock(p_FmHc->h_FmPcd, relativeSchemeId, FALSE)) + { + XX_FreeSmart(p_HcFrame); + return NULL; + } + + physicalSchemeId = FmPcdKgGetPhysicalSchemeId(p_FmHc->h_FmPcd, relativeSchemeId); + + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_KG_SCM); + p_HcFrame->actionReg = FmPcdKgBuildReadSchemeActionReg(physicalSchemeId); + p_HcFrame->extraReg = 0xFFFFF800; + + BUILD_FD(SIZE_OF_HC_FRAME_READ_OR_CC_DYNAMIC); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + REPORT_ERROR(MINOR, err, NO_MSG); + XX_FreeSmart(p_HcFrame); + return NULL; + } + + /* check if this scheme is already used */ + if (FmPcdKgHwSchemeIsValid(p_HcFrame->hcSpecificData.schemeRegs.kgse_mode)) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + REPORT_ERROR(MAJOR, E_ALREADY_EXISTS, ("Scheme is already used")); + XX_FreeSmart(p_HcFrame); + return NULL; + } + } + else + { + intFlags = FmPcdLock(p_FmHc->h_FmPcd); + physicalSchemeId = (uint8_t)(PTR_TO_UINT(p_Scheme->id.h_Scheme)-1); + relativeSchemeId = FmPcdKgGetRelativeSchemeId(p_FmHc->h_FmPcd, physicalSchemeId); + if( relativeSchemeId == FM_PCD_KG_NUM_OF_SCHEMES) + { + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + REPORT_ERROR(MAJOR, E_NOT_IN_RANGE, NO_MSG); + XX_FreeSmart(p_HcFrame); + return NULL; + } + err = FmPcdKgSchemeTryLock(p_FmHc->h_FmPcd, relativeSchemeId, TRUE); + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + if (err) + { + XX_FreeSmart(p_HcFrame); + return NULL; + } + } + + err = FmPcdKgBuildScheme(p_FmHc->h_FmPcd, p_Scheme, &schemeRegs); + if(err) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + REPORT_ERROR(MAJOR, err, NO_MSG); + XX_FreeSmart(p_HcFrame); + return NULL; + } + + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_KG_SCM); + p_HcFrame->actionReg = FmPcdKgBuildWriteSchemeActionReg(physicalSchemeId, p_Scheme->schemeCounter.update); + p_HcFrame->extraReg = 0xFFFFF800; + memcpy(&p_HcFrame->hcSpecificData.schemeRegs, &schemeRegs, sizeof(t_FmPcdKgInterModuleSchemeRegs)); + if(!p_Scheme->schemeCounter.update) + { + p_HcFrame->hcSpecificData.schemeRegs.kgse_dv0 = schemeRegs.kgse_dv0; + p_HcFrame->hcSpecificData.schemeRegs.kgse_dv1 = schemeRegs.kgse_dv1; + p_HcFrame->hcSpecificData.schemeRegs.kgse_ccbs = schemeRegs.kgse_ccbs; + p_HcFrame->hcSpecificData.schemeRegs.kgse_mv = schemeRegs.kgse_mv; + } + + BUILD_FD(sizeof(t_HcFrame)); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + REPORT_ERROR(MINOR, err, NO_MSG); + XX_FreeSmart(p_HcFrame); + return NULL; + } + + FmPcdKgValidateSchemeSw(p_FmHc->h_FmPcd, relativeSchemeId); + + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + + XX_FreeSmart(p_HcFrame); + + return (t_Handle)(UINT_TO_PTR(physicalSchemeId + 1)); +} + +t_Error FmHcPcdKgDeleteScheme(t_Handle h_FmHc, t_Handle h_Scheme) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_Error err = E_OK; + t_HcFrame *p_HcFrame; + t_DpaaFD fmFd; + uint8_t relativeSchemeId; + uint8_t physicalSchemeId = (uint8_t)(PTR_TO_UINT(h_Scheme)-1); + + relativeSchemeId = FmPcdKgGetRelativeSchemeId(p_FmHc->h_FmPcd, physicalSchemeId); + + if ((err = FmPcdKgSchemeTryLock(p_FmHc->h_FmPcd, relativeSchemeId, FALSE)) != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + + if(relativeSchemeId == FM_PCD_KG_NUM_OF_SCHEMES) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + RETURN_ERROR(MAJOR, E_NOT_IN_RANGE, NO_MSG); + } + + err = FmPcdKgCheckInvalidateSchemeSw(p_FmHc->h_FmPcd, relativeSchemeId); + if (err) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + p_HcFrame = (t_HcFrame *)XX_MallocSmart((sizeof(t_HcFrame) + p_FmHc->padTill16), 0, 16); + if (!p_HcFrame) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("HC Frame obj")); + } + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_KG_SCM); + p_HcFrame->actionReg = FmPcdKgBuildWriteSchemeActionReg(physicalSchemeId, TRUE); + p_HcFrame->extraReg = 0xFFFFF800; + memset(&p_HcFrame->hcSpecificData.schemeRegs, 0, sizeof(t_FmPcdKgInterModuleSchemeRegs)); + + BUILD_FD(sizeof(t_HcFrame)); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + FmPcdKgInvalidateSchemeSw(p_FmHc->h_FmPcd, relativeSchemeId); + + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + + XX_FreeSmart(p_HcFrame); + + return E_OK; +} + +t_Error FmHcPcdKgCcGetSetParams(t_Handle h_FmHc, t_Handle h_Scheme, uint32_t requiredAction) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_Error err = E_OK; + t_HcFrame *p_HcFrame; + t_DpaaFD fmFd; + uint8_t relativeSchemeId; + uint8_t physicalSchemeId = (uint8_t)(PTR_TO_UINT(h_Scheme)-1); + uint32_t tmpReg32 = 0; + + relativeSchemeId = FmPcdKgGetRelativeSchemeId(p_FmHc->h_FmPcd, physicalSchemeId); + if( relativeSchemeId == FM_PCD_KG_NUM_OF_SCHEMES) + RETURN_ERROR(MAJOR, E_NOT_IN_RANGE, NO_MSG); + + if (FmPcdKgSchemeTryLock(p_FmHc->h_FmPcd, relativeSchemeId, FALSE)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Lock of the scheme FAILED")); + + if(!FmPcdKgGetPointedOwners(p_FmHc->h_FmPcd, relativeSchemeId) || + !(FmPcdKgGetRequiredAction(p_FmHc->h_FmPcd, relativeSchemeId) & requiredAction)) + { + + if(requiredAction & UPDATE_NIA_ENQ_WITHOUT_DMA) + { + if((FmPcdKgGetNextEngine(p_FmHc->h_FmPcd, relativeSchemeId) == e_FM_PCD_DONE) && (FmPcdKgGetDoneAction(p_FmHc->h_FmPcd, relativeSchemeId) == e_FM_PCD_ENQ_FRAME)) + + { + p_HcFrame = (t_HcFrame *)XX_MallocSmart((sizeof(t_HcFrame) + p_FmHc->padTill16), 0, 16); + if (!p_HcFrame) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("HC Frame obj")); + } + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_KG_SCM); + p_HcFrame->actionReg = FmPcdKgBuildReadSchemeActionReg(physicalSchemeId); + p_HcFrame->extraReg = 0xFFFFF800; + BUILD_FD(SIZE_OF_HC_FRAME_READ_OR_CC_DYNAMIC); + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + /* check if this scheme is already used */ + if (!FmPcdKgHwSchemeIsValid(p_HcFrame->hcSpecificData.schemeRegs.kgse_mode)) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MAJOR, E_ALREADY_EXISTS, ("Scheme is already used")); + } + tmpReg32 = p_HcFrame->hcSpecificData.schemeRegs.kgse_mode; + + ASSERT_COND(tmpReg32 & (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME)); + + p_HcFrame->hcSpecificData.schemeRegs.kgse_mode = tmpReg32 | NIA_BMI_AC_ENQ_FRAME_WITHOUT_DMA; + + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_KG_SCM); + p_HcFrame->actionReg = FmPcdKgBuildWriteSchemeActionReg(physicalSchemeId, FALSE); + p_HcFrame->extraReg = 0x80000000; + + BUILD_FD(sizeof(t_HcFrame)); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + XX_FreeSmart(p_HcFrame); + } + else if (FmPcdKgGetNextEngine(p_FmHc->h_FmPcd, relativeSchemeId) == e_FM_PCD_PLCR) + { + + if((FmPcdKgIsDirectPlcr(p_FmHc->h_FmPcd, relativeSchemeId) == FALSE) || + (FmPcdKgIsDistrOnPlcrProfile(p_FmHc->h_FmPcd, relativeSchemeId) == TRUE)) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("In this situation PP can not be with distribution and has to be shared")); + } + err = FmPcdPlcrCcGetSetParams(p_FmHc->h_FmPcd, FmPcdKgGetRelativeProfileId(p_FmHc->h_FmPcd, relativeSchemeId), requiredAction); + if(err) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + } + } + } + + FmPcdKgUpatePointedOwner(p_FmHc->h_FmPcd, relativeSchemeId,TRUE); + FmPcdKgUpdateRequiredAction(p_FmHc->h_FmPcd, relativeSchemeId,requiredAction); + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + + return E_OK; +} + +uint32_t FmHcPcdKgGetSchemeCounter(t_Handle h_FmHc, t_Handle h_Scheme) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_Error err = E_OK; + t_HcFrame *p_HcFrame; + t_DpaaFD fmFd; + uint32_t retVal; + uint8_t relativeSchemeId; + uint8_t physicalSchemeId = (uint8_t)(PTR_TO_UINT(h_Scheme)-1); + + relativeSchemeId = FmPcdKgGetRelativeSchemeId(p_FmHc->h_FmPcd, physicalSchemeId); + if( relativeSchemeId == FM_PCD_KG_NUM_OF_SCHEMES) + { + REPORT_ERROR(MAJOR, E_NOT_IN_RANGE, NO_MSG); + return 0; + } + + if ((err = FmPcdKgSchemeTryLock(p_FmHc->h_FmPcd, relativeSchemeId, FALSE)) != E_OK) + { + REPORT_ERROR(MAJOR, err, ("Scheme lock")); + return 0; + } + + /* first read scheme and check that it is valid */ + p_HcFrame = (t_HcFrame *)XX_MallocSmart((sizeof(t_HcFrame) + p_FmHc->padTill16), 0, 16); + if (!p_HcFrame) + { + REPORT_ERROR(MINOR, E_NO_MEMORY, ("HC Frame obj")); + return 0; + } + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_KG_SCM); + p_HcFrame->actionReg = FmPcdKgBuildReadSchemeActionReg(physicalSchemeId); + p_HcFrame->extraReg = 0xFFFFF800; + + BUILD_FD(SIZE_OF_HC_FRAME_READ_OR_CC_DYNAMIC); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + REPORT_ERROR(MINOR, err, NO_MSG); + XX_FreeSmart(p_HcFrame); + return 0; + } + + if (!FmPcdKgHwSchemeIsValid(p_HcFrame->hcSpecificData.schemeRegs.kgse_mode)) + { + REPORT_ERROR(MAJOR, E_ALREADY_EXISTS, ("Scheme is invalid")); + XX_FreeSmart(p_HcFrame); + return 0; + } + + retVal = p_HcFrame->hcSpecificData.schemeRegs.kgse_spc; + + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + + XX_FreeSmart(p_HcFrame); + + return retVal; +} + +t_Error FmHcPcdKgSetSchemeCounter(t_Handle h_FmHc, t_Handle h_Scheme, uint32_t value) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_Error err = E_OK; + t_HcFrame *p_HcFrame; + t_DpaaFD fmFd; + uint8_t relativeSchemeId, physicalSchemeId = (uint8_t)(PTR_TO_UINT(h_Scheme)-1); + + relativeSchemeId = FmPcdKgGetRelativeSchemeId(p_FmHc->h_FmPcd, physicalSchemeId); + if( relativeSchemeId == FM_PCD_KG_NUM_OF_SCHEMES) + RETURN_ERROR(MAJOR, E_NOT_IN_RANGE, NO_MSG); + + if ((err = FmPcdKgSchemeTryLock(p_FmHc->h_FmPcd, relativeSchemeId, FALSE)) != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + + /* first read scheme and check that it is valid */ + p_HcFrame = (t_HcFrame *)XX_MallocSmart((sizeof(t_HcFrame) + p_FmHc->padTill16), 0, 16); + if (!p_HcFrame) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("HC Frame obj")); + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_KG_SCM); + p_HcFrame->actionReg = FmPcdKgBuildReadSchemeActionReg(physicalSchemeId); + p_HcFrame->extraReg = 0xFFFFF800; + + BUILD_FD(SIZE_OF_HC_FRAME_READ_OR_CC_DYNAMIC); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + /* check that scheme is valid */ + if (!FmPcdKgHwSchemeIsValid(p_HcFrame->hcSpecificData.schemeRegs.kgse_mode)) + { + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MAJOR, E_ALREADY_EXISTS, ("Scheme is invalid")); + } + + /* Write scheme back, with modified counter */ + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_KG_SCM); + p_HcFrame->actionReg = FmPcdKgBuildWriteSchemeActionReg(physicalSchemeId, TRUE); + p_HcFrame->extraReg = 0xFFFFF800; + /* write counter */ + p_HcFrame->hcSpecificData.schemeRegs.kgse_spc = value; + + BUILD_FD(sizeof(t_HcFrame)); + + err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence); + + FmPcdKgReleaseSchemeLock(p_FmHc->h_FmPcd, relativeSchemeId); + XX_FreeSmart(p_HcFrame); + + return err; +} + +t_Error FmHcPcdKgSetClsPlan(t_Handle h_FmHc, t_FmPcdKgInterModuleClsPlanSet *p_Set) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_HcFrame *p_HcFrame; + t_DpaaFD fmFd; + uint32_t i; + t_Error err = E_OK; + + ASSERT_COND(p_FmHc); + + p_HcFrame = (t_HcFrame *)XX_MallocSmart((sizeof(t_HcFrame) + p_FmHc->padTill16), 0, 16); + if (!p_HcFrame) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("HC Frame obj")); + + for(i=p_Set->baseEntry;ibaseEntry+p_Set->numOfClsPlanEntries;i+=8) + { + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_KG_SCM); + p_HcFrame->actionReg = FmPcdKgBuildWriteClsPlanBlockActionReg((uint8_t)(i / CLS_PLAN_NUM_PER_GRP)); + p_HcFrame->extraReg = 0xFFFFF800; + memcpy((void*)&p_HcFrame->hcSpecificData.clsPlanEntries, (void *)&p_Set->vectors[i-p_Set->baseEntry], CLS_PLAN_NUM_PER_GRP*sizeof(uint32_t)); + + BUILD_FD(sizeof(t_HcFrame)); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + XX_FreeSmart(p_HcFrame); + + return err; +} + +t_Error FmHcPcdKgDeleteClsPlan(t_Handle h_FmHc, uint8_t grpId) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_FmPcdKgInterModuleClsPlanSet *p_ClsPlanSet; + + /* clear clsPlan entries in memory */ + p_ClsPlanSet = (t_FmPcdKgInterModuleClsPlanSet *)XX_Malloc(sizeof(t_FmPcdKgInterModuleClsPlanSet)); + if (!p_ClsPlanSet) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("memory allocation failed for p_ClsPlanSetd")); + memset(p_ClsPlanSet, 0, sizeof(t_FmPcdKgInterModuleClsPlanSet)); + + p_ClsPlanSet->baseEntry = FmPcdKgGetClsPlanGrpBase(p_FmHc->h_FmPcd, grpId); + p_ClsPlanSet->numOfClsPlanEntries = FmPcdKgGetClsPlanGrpSize(p_FmHc->h_FmPcd, grpId); + ASSERT_COND(p_ClsPlanSet->numOfClsPlanEntries <= FM_PCD_MAX_NUM_OF_CLS_PLANS); + + if (FmHcPcdKgSetClsPlan(p_FmHc, p_ClsPlanSet) != E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + XX_Free(p_ClsPlanSet); + + FmPcdKgDestroyClsPlanGrp(p_FmHc->h_FmPcd, grpId); + + return E_OK; +} + +t_Error FmHcPcdCcCapwapTimeoutReassm(t_Handle h_FmHc, t_FmPcdCcCapwapReassmTimeoutParams *p_CcCapwapReassmTimeoutParams ) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_HcFrame *p_HcFrame; + uint32_t intFlags; + t_DpaaFD fmFd; + t_Error err; + + SANITY_CHECK_RETURN_VALUE(h_FmHc, E_INVALID_HANDLE,0); + + intFlags = FmPcdLock(p_FmHc->h_FmPcd); + p_HcFrame = (t_HcFrame *)XX_MallocSmart((sizeof(t_HcFrame) + p_FmHc->padTill16), 0, 16); + if (!p_HcFrame) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("HC Frame obj")); + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_CC_CAPWAP_REASSM_TIMEOUT); + memcpy(&p_HcFrame->hcSpecificData.ccCapwapReassmTimeout, p_CcCapwapReassmTimeoutParams, sizeof(t_FmPcdCcCapwapReassmTimeoutParams)); + BUILD_FD(sizeof(t_HcFrame)); + + err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence); + + XX_FreeSmart(p_HcFrame); + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + return err; +} + + +t_Error FmHcPcdPlcrCcGetSetParams(t_Handle h_FmHc,uint16_t absoluteProfileId, uint32_t requiredAction) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_HcFrame *p_HcFrame; + t_DpaaFD fmFd; + t_Error err; + uint32_t tmpReg32 = 0; + uint32_t requiredActionTmp, pointedOwnersTmp; + + SANITY_CHECK_RETURN_VALUE(h_FmHc, E_INVALID_HANDLE,0); + + if (absoluteProfileId >= FM_PCD_PLCR_NUM_ENTRIES) + RETURN_ERROR(MAJOR, E_INVALID_VALUE,("Policer profile out of range")); + + if (FmPcdPlcrProfileTryLock(p_FmHc->h_FmPcd, absoluteProfileId, FALSE)) + return ERROR_CODE(E_BUSY); + + + requiredActionTmp = FmPcdPlcrGetRequiredAction(p_FmHc->h_FmPcd, absoluteProfileId); + pointedOwnersTmp = FmPcdPlcrGetPointedOwners(p_FmHc->h_FmPcd, absoluteProfileId); + + if(!pointedOwnersTmp || !(requiredActionTmp & requiredAction)) + { + + if(requiredAction & UPDATE_NIA_ENQ_WITHOUT_DMA) + { + + p_HcFrame = (t_HcFrame *)XX_MallocSmart((sizeof(t_HcFrame) + p_FmHc->padTill16), 0, 16); + if (!p_HcFrame) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("HC Frame obj")); + /* first read scheme and check that it is valid */ + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_PLCR_PRFL); + p_HcFrame->actionReg = FmPcdPlcrBuildReadPlcrActionReg(absoluteProfileId); + p_HcFrame->extraReg = 0x00008000; + + BUILD_FD(SIZE_OF_HC_FRAME_READ_OR_CC_DYNAMIC); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, absoluteProfileId); + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + /* check that profile is valid */ + if (!FmPcdPlcrHwProfileIsValid(p_HcFrame->hcSpecificData.profileRegs.fmpl_pemode)) + { + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, absoluteProfileId); + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MAJOR, E_ALREADY_EXISTS, ("Policer is already used")); + } + + tmpReg32 = p_HcFrame->hcSpecificData.profileRegs.fmpl_pegnia; + if(!(tmpReg32 & (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME))) + { + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Next engine of this policer profile has to be assigned to FM_PCD_DONE")); + } + tmpReg32 |= NIA_BMI_AC_ENQ_FRAME_WITHOUT_DMA; + + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_PLCR_PRFL); + p_HcFrame->actionReg = FmPcdPlcrBuildWritePlcrActionReg(absoluteProfileId); + p_HcFrame->actionReg |= FmPcdPlcrBuildNiaProfileReg(TRUE, FALSE, FALSE); + p_HcFrame->extraReg = 0x00008000; + p_HcFrame->hcSpecificData.singleRegForWrite = tmpReg32; + + BUILD_FD(SIZE_OF_HC_FRAME_PROFILE_CNT); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, absoluteProfileId); + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + tmpReg32 = p_HcFrame->hcSpecificData.profileRegs.fmpl_peynia; + if(!(tmpReg32 & (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME))) + { + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Next engine of this policer profile has to be assigned to FM_PCD_DONE")); + } + tmpReg32 |= NIA_BMI_AC_ENQ_FRAME_WITHOUT_DMA; + + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_PLCR_PRFL); + p_HcFrame->actionReg = FmPcdPlcrBuildWritePlcrActionReg(absoluteProfileId); + p_HcFrame->actionReg |= FmPcdPlcrBuildNiaProfileReg(FALSE, TRUE, FALSE); + p_HcFrame->extraReg = 0x00008000; + p_HcFrame->hcSpecificData.singleRegForWrite = tmpReg32; + + BUILD_FD(SIZE_OF_HC_FRAME_PROFILE_CNT); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, absoluteProfileId); + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + tmpReg32 = p_HcFrame->hcSpecificData.profileRegs.fmpl_pernia; + if(!(tmpReg32 & (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME))) + { + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Next engine of this policer profile has to be assigned to FM_PCD_DONE")); + } + tmpReg32 |= NIA_BMI_AC_ENQ_FRAME_WITHOUT_DMA; + + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_PLCR_PRFL); + p_HcFrame->actionReg = FmPcdPlcrBuildWritePlcrActionReg(absoluteProfileId); + p_HcFrame->actionReg |= FmPcdPlcrBuildNiaProfileReg(FALSE, FALSE, TRUE); + p_HcFrame->extraReg = 0x00008000; + p_HcFrame->hcSpecificData.singleRegForWrite = tmpReg32; + + BUILD_FD(SIZE_OF_HC_FRAME_PROFILE_CNT); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, absoluteProfileId); + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MINOR, err, NO_MSG); + } + XX_FreeSmart(p_HcFrame); + } + } + + FmPcdPlcrUpatePointedOwner(p_FmHc->h_FmPcd, absoluteProfileId, TRUE); + FmPcdPlcrUpdateRequiredAction(p_FmHc->h_FmPcd, absoluteProfileId, requiredAction); + + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, absoluteProfileId); + + return E_OK; +} + +t_Handle FmHcPcdPlcrSetProfile(t_Handle h_FmHc,t_FmPcdPlcrProfileParams *p_Profile) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_FmPcdPlcrInterModuleProfileRegs profileRegs; + t_Error err = E_OK; + uint32_t intFlags; + uint16_t profileIndx; + t_HcFrame *p_HcFrame; + t_DpaaFD fmFd; + + if (p_Profile->modify) + { + profileIndx = (uint16_t)(PTR_TO_UINT(p_Profile->id.h_Profile)-1); + if (FmPcdPlcrProfileTryLock(p_FmHc->h_FmPcd, profileIndx, FALSE)) + return NULL; + } + else + { + intFlags = FmPcdLock(p_FmHc->h_FmPcd); + err = FmPcdPlcrGetAbsoluteProfileId(p_FmHc->h_FmPcd, + p_Profile->id.newParams.profileType, + p_Profile->id.newParams.h_FmPort, + p_Profile->id.newParams.relativeProfileId, + &profileIndx); + if (err) + { + REPORT_ERROR(MAJOR, err, NO_MSG); + return NULL; + } + err = FmPcdPlcrProfileTryLock(p_FmHc->h_FmPcd, profileIndx, TRUE); + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + if (err) + return NULL; + } + + p_HcFrame = (t_HcFrame *)XX_MallocSmart((sizeof(t_HcFrame) + p_FmHc->padTill16), 0, 16); + if (!p_HcFrame) + { + REPORT_ERROR(MINOR, E_NO_MEMORY, ("HC Frame obj")); + return NULL; + } + + if(!p_Profile->modify) + { + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_PLCR_PRFL); + p_HcFrame->actionReg = FmPcdPlcrBuildReadPlcrActionReg(profileIndx); + p_HcFrame->extraReg = 0x00008000; + + BUILD_FD(SIZE_OF_HC_FRAME_READ_OR_CC_DYNAMIC); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, profileIndx); + REPORT_ERROR(MINOR, err, NO_MSG); + XX_FreeSmart(p_HcFrame); + return NULL; + } + + /* check if this scheme is already used */ + if (FmPcdPlcrHwProfileIsValid(p_HcFrame->hcSpecificData.profileRegs.fmpl_pemode)) + { + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, profileIndx); + REPORT_ERROR(MAJOR, E_ALREADY_EXISTS, ("Policer is already used")); + XX_FreeSmart(p_HcFrame); + return NULL; + } + } + + memset(&profileRegs, 0, sizeof(t_FmPcdPlcrInterModuleProfileRegs)); + err = FmPcdPlcrBuildProfile(p_FmHc->h_FmPcd, p_Profile, &profileRegs); + if(err) + { + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, profileIndx); + REPORT_ERROR(MAJOR, err, NO_MSG); + XX_FreeSmart(p_HcFrame); + return NULL; + } + + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_PLCR_PRFL); + p_HcFrame->actionReg = FmPcdPlcrBuildWritePlcrActionRegs(profileIndx); + p_HcFrame->extraReg = 0x00008000; + memcpy(&p_HcFrame->hcSpecificData.profileRegs, &profileRegs, sizeof(t_FmPcdPlcrInterModuleProfileRegs)); + + BUILD_FD(sizeof(t_HcFrame)); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, profileIndx); + REPORT_ERROR(MINOR, err, NO_MSG); + XX_FreeSmart(p_HcFrame); + return NULL; + } + + FmPcdPlcrValidateProfileSw(p_FmHc->h_FmPcd, profileIndx); + + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, profileIndx); + + XX_FreeSmart(p_HcFrame); + + return UINT_TO_PTR((uint64_t)profileIndx+1); +} + +t_Error FmHcPcdPlcrDeleteProfile(t_Handle h_FmHc, t_Handle h_Profile) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + uint16_t absoluteProfileId = (uint16_t)(PTR_TO_UINT(h_Profile)-1); + t_Error err = E_OK; + t_HcFrame *p_HcFrame; + t_DpaaFD fmFd; + + if (FmPcdPlcrProfileTryLock(p_FmHc->h_FmPcd, absoluteProfileId, FALSE)) + return ERROR_CODE(E_BUSY); + + FmPcdPlcrInvalidateProfileSw(p_FmHc->h_FmPcd, absoluteProfileId); + + p_HcFrame = (t_HcFrame *)XX_MallocSmart((sizeof(t_HcFrame) + p_FmHc->padTill16), 0, 16); + if (!p_HcFrame) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("HC Frame obj")); + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_PLCR_PRFL); + p_HcFrame->actionReg = FmPcdPlcrBuildWritePlcrActionReg(absoluteProfileId); + p_HcFrame->actionReg |= 0x00008000; + p_HcFrame->extraReg = 0x00008000; + memset(&p_HcFrame->hcSpecificData.profileRegs, 0, sizeof(t_FmPcdPlcrInterModuleProfileRegs)); + + BUILD_FD(sizeof(t_HcFrame)); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, absoluteProfileId); + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, absoluteProfileId); + + XX_FreeSmart(p_HcFrame); + + return E_OK; +} + +t_Error FmHcPcdPlcrSetProfileCounter(t_Handle h_FmHc, t_Handle h_Profile, e_FmPcdPlcrProfileCounters counter, uint32_t value) +{ + + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + uint16_t absoluteProfileId = (uint16_t)(PTR_TO_UINT(h_Profile)-1); + t_Error err = E_OK; + t_HcFrame *p_HcFrame; + t_DpaaFD fmFd; + + if (FmPcdPlcrProfileTryLock(p_FmHc->h_FmPcd, absoluteProfileId, FALSE)) + return ERROR_CODE(E_BUSY); + + /* first read scheme and check that it is valid */ + p_HcFrame = (t_HcFrame *)XX_MallocSmart((sizeof(t_HcFrame) + p_FmHc->padTill16), 0, 16); + if (!p_HcFrame) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("HC Frame obj")); + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_PLCR_PRFL); + p_HcFrame->actionReg = FmPcdPlcrBuildReadPlcrActionReg(absoluteProfileId); + p_HcFrame->extraReg = 0x00008000; + + BUILD_FD(SIZE_OF_HC_FRAME_READ_OR_CC_DYNAMIC); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, absoluteProfileId); + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + /* check that profile is valid */ + if (!FmPcdPlcrHwProfileIsValid(p_HcFrame->hcSpecificData.profileRegs.fmpl_pemode)) + { + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, absoluteProfileId); + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MAJOR, E_ALREADY_EXISTS, ("Policer is already used")); + } + + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_PLCR_PRFL); + p_HcFrame->actionReg = FmPcdPlcrBuildWritePlcrActionReg(absoluteProfileId); + p_HcFrame->actionReg |= FmPcdPlcrBuildCounterProfileReg(counter); + p_HcFrame->extraReg = 0x00008000; + p_HcFrame->hcSpecificData.singleRegForWrite = value; + + BUILD_FD(SIZE_OF_HC_FRAME_PROFILE_CNT); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, absoluteProfileId); + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, absoluteProfileId); + + XX_FreeSmart(p_HcFrame); + + return E_OK; +} + +uint32_t FmHcPcdPlcrGetProfileCounter(t_Handle h_FmHc, t_Handle h_Profile, e_FmPcdPlcrProfileCounters counter) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + uint16_t absoluteProfileId = (uint16_t)(PTR_TO_UINT(h_Profile)-1); + t_Error err = E_OK; + t_HcFrame *p_HcFrame; + t_DpaaFD fmFd; + uint32_t retVal = 0; + + SANITY_CHECK_RETURN_VALUE(h_FmHc, E_INVALID_HANDLE,0); + + if (FmPcdPlcrProfileTryLock(p_FmHc->h_FmPcd, absoluteProfileId, FALSE)) + return 0; + + /* first read scheme and check that it is valid */ + p_HcFrame = (t_HcFrame *)XX_MallocSmart((sizeof(t_HcFrame) + p_FmHc->padTill16), 0, 16); + if (!p_HcFrame) + { + REPORT_ERROR(MINOR, E_NO_MEMORY, ("HC Frame obj")); + return 0; + } + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_PLCR_PRFL); + p_HcFrame->actionReg = FmPcdPlcrBuildReadPlcrActionReg(absoluteProfileId); + p_HcFrame->extraReg = 0x00008000; + + BUILD_FD(SIZE_OF_HC_FRAME_READ_OR_CC_DYNAMIC); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, absoluteProfileId); + REPORT_ERROR(MINOR, err, NO_MSG); + XX_FreeSmart(p_HcFrame); + return 0; + } + + /* check that profile is valid */ + if (!FmPcdPlcrHwProfileIsValid(p_HcFrame->hcSpecificData.profileRegs.fmpl_pemode)) + { + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, absoluteProfileId); + XX_FreeSmart(p_HcFrame); + REPORT_ERROR(MAJOR, E_ALREADY_EXISTS, ("invalid Policer profile")); + return 0; + } + + switch (counter) + { + case e_FM_PCD_PLCR_PROFILE_GREEN_PACKET_TOTAL_COUNTER: + retVal = p_HcFrame->hcSpecificData.profileRegs.fmpl_pegpc; + break; + case e_FM_PCD_PLCR_PROFILE_YELLOW_PACKET_TOTAL_COUNTER: + retVal = p_HcFrame->hcSpecificData.profileRegs.fmpl_peypc; + break; + case e_FM_PCD_PLCR_PROFILE_RED_PACKET_TOTAL_COUNTER: + retVal = p_HcFrame->hcSpecificData.profileRegs.fmpl_perpc; + break; + case e_FM_PCD_PLCR_PROFILE_RECOLOURED_YELLOW_PACKET_TOTAL_COUNTER: + retVal = p_HcFrame->hcSpecificData.profileRegs.fmpl_perypc; + break; + case e_FM_PCD_PLCR_PROFILE_RECOLOURED_RED_PACKET_TOTAL_COUNTER: + retVal = p_HcFrame->hcSpecificData.profileRegs.fmpl_perrpc; + break; + default: + REPORT_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + } + + FmPcdPlcrReleaseProfileLock(p_FmHc->h_FmPcd, absoluteProfileId); + + XX_FreeSmart(p_HcFrame); + + return retVal; +} + +t_Error FmHcPcdCcModifyTreeNextEngine(t_Handle h_FmHc, t_Handle h_CcTree, uint8_t grpId, uint8_t index, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_Error err = E_OK; + uint32_t intFlags; + t_List h_OldPointersLst, h_NewPointersLst; + t_Handle h_Params; + + intFlags = FmPcdLock(p_FmHc->h_FmPcd); + err = FmPcdCcTreeTryLock(h_CcTree); + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + if (err) + return err; + + INIT_LIST(&h_OldPointersLst); + INIT_LIST(&h_NewPointersLst); + + err = FmPcdCcModifyNextEngineParamTree(p_FmHc->h_FmPcd, h_CcTree, grpId, index, p_FmPcdCcNextEngineParams, + &h_OldPointersLst, &h_NewPointersLst, &h_Params); + if(err) + { + FmPcdCcTreeReleaseLock(h_CcTree); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + err = HcDynamicChange(p_FmHc, &h_OldPointersLst, &h_NewPointersLst, &h_Params); + + FmPcdCcTreeReleaseLock(h_CcTree); + + return err; +} + + +t_Error FmHcPcdCcModifyNodeMissNextEngine(t_Handle h_FmHc, t_Handle h_CcNode, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_Handle h_Params; + t_List h_OldPointersLst, h_NewPointersLst; + t_Error err = E_OK; + t_List h_List; + uint32_t intFlags; + + INIT_LIST(&h_List); + + intFlags = FmPcdLock(p_FmHc->h_FmPcd); + + if ((err = FmPcdCcNodeTreeTryLock(p_FmHc->h_FmPcd, h_CcNode, &h_List)) != E_OK) + { + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + return err; + } + + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + + INIT_LIST(&h_OldPointersLst); + INIT_LIST(&h_NewPointersLst); + + err = FmPcdCcModifyMissNextEngineParamNode(p_FmHc->h_FmPcd, h_CcNode, p_FmPcdCcNextEngineParams, &h_OldPointersLst, &h_NewPointersLst, &h_Params); + if(err) + { + FmPcdCcNodeTreeReleaseLock(&h_List); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + err = HcDynamicChange(p_FmHc, &h_OldPointersLst, &h_NewPointersLst, &h_Params); + + FmPcdCcNodeTreeReleaseLock(&h_List); + + + return E_OK; +} + +t_Error FmHcPcdCcRemoveKey(t_Handle h_FmHc, t_Handle h_CcNode, uint8_t keyIndex) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_Handle h_Params; + t_List h_OldPointersLst, h_NewPointersLst; + t_Error err = E_OK; + t_List h_List; + uint32_t intFlags; + + INIT_LIST(&h_List); + + intFlags = FmPcdLock(p_FmHc->h_FmPcd); + + if ((err = FmPcdCcNodeTreeTryLock(p_FmHc->h_FmPcd, h_CcNode, &h_List)) != E_OK) + { + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + return err; + } + + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + + INIT_LIST(&h_OldPointersLst); + INIT_LIST(&h_NewPointersLst); + + + err = FmPcdCcRemoveKey(p_FmHc->h_FmPcd,h_CcNode,keyIndex, &h_OldPointersLst, &h_NewPointersLst, &h_Params); + if(err) + { + FmPcdCcNodeTreeReleaseLock(&h_List); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + err = HcDynamicChange(p_FmHc, &h_OldPointersLst, &h_NewPointersLst, &h_Params); + + FmPcdCcNodeTreeReleaseLock(&h_List); + + return err; + +} + +t_Error FmHcPcdCcAddKey(t_Handle h_FmHc, t_Handle h_CcNode, uint8_t keyIndex, uint8_t keySize, t_FmPcdCcKeyParams *p_KeyParams) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_Handle h_Params; + t_List h_OldPointersLst, h_NewPointersLst; + t_Error err = E_OK; + t_List h_List; + uint32_t intFlags; + + INIT_LIST(&h_List); + + intFlags = FmPcdLock(p_FmHc->h_FmPcd); + + if ((err = FmPcdCcNodeTreeTryLock(p_FmHc->h_FmPcd, h_CcNode, &h_List)) != E_OK) + { + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + return err; + } + + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + + INIT_LIST(&h_OldPointersLst); + INIT_LIST(&h_NewPointersLst); + + + err = FmPcdCcAddKey(p_FmHc->h_FmPcd,h_CcNode,keyIndex,keySize, p_KeyParams, &h_OldPointersLst,&h_NewPointersLst, &h_Params); + if(err) + { + FmPcdCcNodeTreeReleaseLock(&h_List); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + err = HcDynamicChange(p_FmHc, &h_OldPointersLst, &h_NewPointersLst, &h_Params); + + FmPcdCcNodeTreeReleaseLock(&h_List); + + return err; +} + + +t_Error FmHcPcdCcModifyKey(t_Handle h_FmHc, t_Handle h_CcNode, uint8_t keyIndex, uint8_t keySize, uint8_t *p_Key, uint8_t *p_Mask) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_List h_OldPointersLst, h_NewPointersLst; + t_Error err = E_OK; + t_List h_List; + uint32_t intFlags; + t_Handle h_Params; + + UNUSED(keySize); + + INIT_LIST(&h_List); + + intFlags = FmPcdLock(p_FmHc->h_FmPcd); + + if ((err = FmPcdCcNodeTreeTryLock(p_FmHc->h_FmPcd, h_CcNode, &h_List)) != E_OK) + { + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + return err; + } + + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + + INIT_LIST(&h_OldPointersLst); + INIT_LIST(&h_NewPointersLst); + + err = FmPcdCcModifyKey(p_FmHc->h_FmPcd, h_CcNode, keyIndex, keySize, p_Key, p_Mask, &h_OldPointersLst,&h_NewPointersLst, &h_Params); + if(err) + { + FmPcdCcNodeTreeReleaseLock(&h_List); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + err = HcDynamicChange(p_FmHc, &h_OldPointersLst, &h_NewPointersLst, &h_Params); + + FmPcdCcNodeTreeReleaseLock(&h_List); + + return err; +} + +t_Error FmHcPcdCcModifyNodeNextEngine(t_Handle h_FmHc, t_Handle h_CcNode, uint8_t keyIndex, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_Error err = E_OK; + t_List h_OldPointersLst, h_NewPointersLst; + t_List h_List; + uint32_t intFlags; + t_Handle h_Params; + + INIT_LIST(&h_List); + + intFlags = FmPcdLock(p_FmHc->h_FmPcd); + + if ((err = FmPcdCcNodeTreeTryLock(p_FmHc->h_FmPcd, h_CcNode, &h_List)) != E_OK) + { + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + return err; + } + + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + + INIT_LIST(&h_OldPointersLst); + INIT_LIST(&h_NewPointersLst); + + err = FmPcdCcModiyNextEngineParamNode(p_FmHc->h_FmPcd, h_CcNode, keyIndex, p_FmPcdCcNextEngineParams, &h_OldPointersLst, &h_NewPointersLst, &h_Params); + if(err) + { + FmPcdCcNodeTreeReleaseLock(&h_List); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + err = HcDynamicChange(p_FmHc, &h_OldPointersLst, &h_NewPointersLst, &h_Params); + FmPcdCcNodeTreeReleaseLock(&h_List); + return err; +} + + +t_Error FmHcPcdCcModifyKeyAndNextEngine(t_Handle h_FmHc, t_Handle h_CcNode, uint8_t keyIndex, uint8_t keySize, t_FmPcdCcKeyParams *p_KeyParams) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_List h_OldPointersLst, h_NewPointersLst; + t_Error err = E_OK; + t_List h_List; + uint32_t intFlags; + t_Handle h_Params; + + INIT_LIST(&h_OldPointersLst); + INIT_LIST(&h_NewPointersLst); + INIT_LIST(&h_List); + + intFlags = FmPcdLock(p_FmHc->h_FmPcd); + + if ((err = FmPcdCcNodeTreeTryLock(p_FmHc->h_FmPcd, h_CcNode, &h_List)) != E_OK) + { + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + return err; + } + + FmPcdUnlock(p_FmHc->h_FmPcd, intFlags); + + + err = FmPcdCcModifyKeyAndNextEngine(p_FmHc->h_FmPcd,h_CcNode,keyIndex,keySize, p_KeyParams, &h_OldPointersLst,&h_NewPointersLst, &h_Params); + if(err) + { + FmPcdCcNodeTreeReleaseLock(&h_List); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + err = HcDynamicChange(p_FmHc, &h_OldPointersLst, &h_NewPointersLst, &h_Params); + + FmPcdCcNodeTreeReleaseLock(&h_List); + + + return err; +} + + +t_Error FmHcKgWriteSp(t_Handle h_FmHc, uint8_t hardwarePortId, uint32_t spReg, bool add) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_HcFrame *p_HcFrame; + t_DpaaFD fmFd; + t_Error err = E_OK; + + ASSERT_COND(p_FmHc); + + p_HcFrame = (t_HcFrame *)XX_MallocSmart((sizeof(t_HcFrame) + p_FmHc->padTill16), 0, 16); + if (!p_HcFrame) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("HC Frame obj")); + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + /* first read SP register */ + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_KG_SCM); + p_HcFrame->actionReg = FmPcdKgBuildReadPortSchemeBindActionReg(hardwarePortId); + p_HcFrame->extraReg = 0xFFFFF800; + + BUILD_FD(SIZE_OF_HC_FRAME_PORT_REGS); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + /* spReg is the first reg, so we can use it both for read and for write */ + if(add) + p_HcFrame->hcSpecificData.portRegsForRead.spReg |= spReg; + else + p_HcFrame->hcSpecificData.portRegsForRead.spReg &= ~spReg; + + p_HcFrame->actionReg = FmPcdKgBuildWritePortSchemeBindActionReg(hardwarePortId); + + BUILD_FD(sizeof(t_HcFrame)); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + XX_FreeSmart(p_HcFrame); + + return E_OK; +} + +t_Error FmHcKgWriteCpp(t_Handle h_FmHc, uint8_t hardwarePortId, uint32_t cppReg) +{ + t_FmHc *p_FmHc = (t_FmHc*)h_FmHc; + t_HcFrame *p_HcFrame; + t_DpaaFD fmFd; + t_Error err = E_OK; + + ASSERT_COND(p_FmHc); + + p_HcFrame = (t_HcFrame *)XX_MallocSmart((sizeof(t_HcFrame) + p_FmHc->padTill16), 0, 16); + if (!p_HcFrame) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("HC Frame obj")); + memset(p_HcFrame, 0, sizeof(t_HcFrame)); + /* first read SP register */ + p_HcFrame->opcode = (uint32_t)(HC_HCOR_GBL | HC_HCOR_OPCODE_KG_SCM); + p_HcFrame->actionReg = FmPcdKgBuildWritePortClsPlanBindActionReg(hardwarePortId); + p_HcFrame->extraReg = 0xFFFFF800; + p_HcFrame->hcSpecificData.singleRegForWrite = cppReg; + + BUILD_FD(sizeof(t_HcFrame)); + + if ((err = EnQFrm(p_FmHc, &fmFd, &p_HcFrame->commandSequence)) != E_OK) + { + XX_FreeSmart(p_HcFrame); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + XX_FreeSmart(p_HcFrame); + + return E_OK; +} + --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/Makefile +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/Makefile @@ -0,0 +1,14 @@ +# +# Makefile for the Freescale Ethernet controllers +# +EXTRA_CFLAGS += -DVERSION=\"\" +# +#Include netcomm SW specific definitions +include $(srctree)/drivers/net/dpa/NetCommSw/ncsw_config.mk +NCSW_FM_INC = $(srctree)/drivers/net/dpa/NetCommSw/Peripherals/FM/inc + +EXTRA_CFLAGS += -I$(NCSW_FM_INC) + +obj-y += fsl-ncsw-MAC.o + +fsl-ncsw-MAC-objs := dtsec.o dtsec_mii_acc.o fm_mac.o tgec.o tgec_mii_acc.o --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/dtsec.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/dtsec.c @@ -0,0 +1,1943 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File dtsec.c + + @Description FM dTSEC ... +*//***************************************************************************/ + +#include "std_ext.h" +#include "error_ext.h" +#include "string_ext.h" +#include "xx_ext.h" +#include "endian_ext.h" +#include "crc_mac_addr_ext.h" +#include "debug_ext.h" + +#include "fm_common.h" +#include "dtsec.h" + + +/*****************************************************************************/ +/* Internal routines */ +/*****************************************************************************/ + +static t_Error CheckInitParameters(t_Dtsec *p_Dtsec) +{ + if(ENET_SPEED_FROM_MODE(p_Dtsec->enetMode) >= e_ENET_SPEED_10000) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Ethernet 1G MAC driver only supports 1G or lower speeds")); + if(p_Dtsec->macId >= FM_MAX_NUM_OF_1G_MACS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("macId can not be greater than the number of 1G MACs")); + if(p_Dtsec->addr == 0) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Ethernet MAC Must have a valid MAC Address")); + if(((p_Dtsec->enetMode == e_ENET_MODE_SGMII_1000) || + (p_Dtsec->enetMode == e_ENET_MODE_RGMII_1000) || + (p_Dtsec->enetMode == e_ENET_MODE_QSGMII_1000)) && + p_Dtsec->p_DtsecDriverParam->halfDuplex) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Ethernet MAC 1G can't work in half duplex")); + if(p_Dtsec->p_DtsecDriverParam->halfDuplex && (p_Dtsec->p_DtsecDriverParam)->loopback) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("LoopBack is not supported in halfDuplex mode")); +#ifdef FM_NO_RX_PREAM_ERRATA_DTSECx1 + if(p_Dtsec->p_DtsecDriverParam->preambleRxEn) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("preambleRxEn")); +#endif /* FM_NO_RX_PREAM_ERRATA_DTSECx1 */ + if(((p_Dtsec->p_DtsecDriverParam)->preambleTxEn || (p_Dtsec->p_DtsecDriverParam)->preambleRxEn) &&( (p_Dtsec->p_DtsecDriverParam)->preambleLength != 0x7)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Preamble length should be 0x7 bytes")); + if((p_Dtsec->p_DtsecDriverParam)->fifoTxWatermarkH<((p_Dtsec->p_DtsecDriverParam)->fifoTxThr+8)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("fifoTxWatermarkH has to be at least 8 larger than fifoTxThr")); + if((p_Dtsec->p_DtsecDriverParam)->halfDuplex && + (p_Dtsec->p_DtsecDriverParam->txTimeStampEn || p_Dtsec->p_DtsecDriverParam->rxTimeStampEn)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("dTSEC in half duplex mode has to be with 1588 timeStamping diable")); + if((p_Dtsec->p_DtsecDriverParam)->actOnRxPauseFrame && (p_Dtsec->p_DtsecDriverParam)->controlFrameAccept ) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Receive control frame are not passed to the system memory so it can not be accept ")); + if((p_Dtsec->p_DtsecDriverParam)->packetAlignmentPadding > MAX_PACKET_ALIGNMENT) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("packetAlignmentPadding can't be greater than %d ",MAX_PACKET_ALIGNMENT )); + if(((p_Dtsec->p_DtsecDriverParam)->nonBackToBackIpg1 > MAX_INTER_PACKET_GAP) || + ((p_Dtsec->p_DtsecDriverParam)->nonBackToBackIpg2 > MAX_INTER_PACKET_GAP) || + ((p_Dtsec->p_DtsecDriverParam)->backToBackIpg > MAX_INTER_PACKET_GAP)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Inter packet gap can't be greater than %d ",MAX_INTER_PACKET_GAP )); + if((p_Dtsec->p_DtsecDriverParam)->alternateBackoffVal > MAX_INTER_PALTERNATE_BEB) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("alternateBackoffVal can't be greater than %d ",MAX_INTER_PALTERNATE_BEB )); + if((p_Dtsec->p_DtsecDriverParam)->maxRetransmission > MAX_RETRANSMISSION) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("maxRetransmission can't be greater than %d ",MAX_RETRANSMISSION )); + if((p_Dtsec->p_DtsecDriverParam)->collisionWindow > MAX_COLLISION_WINDOW) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("collisionWindow can't be greater than %d ",MAX_COLLISION_WINDOW )); + + /* If Auto negotiation process is disabled, need to */ + /* Set up the PHY using the MII Management Interface */ + if (p_Dtsec->p_DtsecDriverParam->tbiPhyAddr > MAX_PHYS) + RETURN_ERROR(MAJOR, E_NOT_IN_RANGE, ("PHY address (should be 0-%d)", MAX_PHYS)); + if(!p_Dtsec->f_Exception) + RETURN_ERROR(MAJOR, E_INVALID_HANDLE, ("uninitialized f_Exception")); + if(!p_Dtsec->f_Event) + RETURN_ERROR(MAJOR, E_INVALID_HANDLE, ("uninitialized f_Event")); + return E_OK; +} + +static uint8_t GetMiiDiv(int32_t refClk) +{ + uint32_t div,tmpClk; + int minRange; + + div = 1; + minRange = (int)(refClk/40 - 1); + + tmpClk = (uint32_t)ABS(refClk/60 - 1); + if (tmpClk < minRange) + { + div = 2; + minRange = (int)tmpClk; + } + tmpClk = (uint32_t)ABS(refClk/60 - 1); + if (tmpClk < minRange) + { + div = 3; + minRange = (int)tmpClk; + } + tmpClk = (uint32_t)ABS(refClk/80 - 1); + if (tmpClk < minRange) + { + div = 4; + minRange = (int)tmpClk; + } + tmpClk = (uint32_t)ABS(refClk/100 - 1); + if (tmpClk < minRange) + { + div = 5; + minRange = (int)tmpClk; + } + tmpClk = (uint32_t)ABS(refClk/140 - 1); + if (tmpClk < minRange) + { + div = 6; + minRange = (int)tmpClk; + } + tmpClk = (uint32_t)ABS(refClk/280 - 1); + if (tmpClk < minRange) + { + div = 7; + minRange = (int)tmpClk; + } + + return (uint8_t)div; +} + +/* ........................................................................... */ + +static void SetDefaultParam(t_DtsecDriverParam *p_DtsecDriverParam) +{ + p_DtsecDriverParam->errorDisabled = DEFAULT_errorDisabled; + + p_DtsecDriverParam->promiscuousEnable = DEFAULT_promiscuousEnable; + + p_DtsecDriverParam->pauseExtended = DEFAULT_pauseExtended; + p_DtsecDriverParam->pauseTime = DEFAULT_pauseTime; + + p_DtsecDriverParam->halfDuplex = DEFAULT_halfDuplex; + p_DtsecDriverParam->halfDulexFlowControlEn = DEFAULT_halfDulexFlowControlEn; + p_DtsecDriverParam->txTimeStampEn = DEFAULT_txTimeStampEn; + p_DtsecDriverParam->rxTimeStampEn = DEFAULT_rxTimeStampEn; + + p_DtsecDriverParam->packetAlignmentPadding = DEFAULT_packetAlignment; + p_DtsecDriverParam->controlFrameAccept = DEFAULT_controlFrameAccept; + p_DtsecDriverParam->groupHashExtend = DEFAULT_groupHashExtend; + p_DtsecDriverParam->broadcReject = DEFAULT_broadcReject; + p_DtsecDriverParam->rxShortFrame = DEFAULT_rxShortFrame; + p_DtsecDriverParam->exactMatch = DEFAULT_exactMatch; + p_DtsecDriverParam->debugMode = DEFAULT_debugMode; + + p_DtsecDriverParam->loopback = DEFAULT_loopback; + p_DtsecDriverParam->tbiPhyAddr = DEFAULT_tbiPhyAddr; + p_DtsecDriverParam->actOnRxPauseFrame = DEFAULT_actOnRxPauseFrame; + p_DtsecDriverParam->actOnTxPauseFrame = DEFAULT_actOnTxPauseFrame; + + p_DtsecDriverParam->preambleLength = DEFAULT_PreAmLength; + p_DtsecDriverParam->preambleRxEn = DEFAULT_PreAmRxEn; + p_DtsecDriverParam->preambleTxEn = DEFAULT_PreAmTxEn; + p_DtsecDriverParam->lengthCheckEnable = DEFAULT_lengthCheckEnable; + p_DtsecDriverParam->padAndCrcEnable = DEFAULT_padAndCrcEnable; + p_DtsecDriverParam->crcEnable = DEFAULT_crcEnable; + + p_DtsecDriverParam->nonBackToBackIpg1 = DEFAULT_nonBackToBackIpg1; + p_DtsecDriverParam->nonBackToBackIpg2 = DEFAULT_nonBackToBackIpg2; + p_DtsecDriverParam->minIfgEnforcement = DEFAULT_minIfgEnforcement; + p_DtsecDriverParam->backToBackIpg = DEFAULT_backToBackIpg; + + p_DtsecDriverParam->alternateBackoffVal = DEFAULT_altBackoffVal; + p_DtsecDriverParam->alternateBackoffEnable = DEFAULT_altBackoffEnable; + p_DtsecDriverParam->backPressureNoBackoff = DEFAULT_backPressureNoBackoff; + p_DtsecDriverParam->noBackoff = DEFAULT_noBackoff; + p_DtsecDriverParam->excessDefer = DEFAULT_excessDefer; + p_DtsecDriverParam->maxRetransmission = DEFAULT_maxRetransmission; + p_DtsecDriverParam->collisionWindow = DEFAULT_collisionWindow; + + p_DtsecDriverParam->maxFrameLength = DEFAULT_maxFrameLength; + + p_DtsecDriverParam->fifoTxThr = DEFAULT_fifoTxThr; + p_DtsecDriverParam->fifoTxWatermarkH = DEFAULT_fifoTxWatermarkH; + + p_DtsecDriverParam->fifoRxWatermarkL = DEFAULT_fifoRxWatermarkL; +} + +static void DtsecException(t_Handle h_Dtsec) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + uint32_t event; + t_DtsecMemMap *p_DtsecMemMap; + + ASSERT_COND(p_Dtsec); + p_DtsecMemMap = p_Dtsec->p_MemMap; + ASSERT_COND(p_DtsecMemMap); + + event = GET_UINT32(p_DtsecMemMap->ievent); + /* handle only MDIO events */ + event &= (IMASK_MMRDEN | IMASK_MMWREN); + if(event) + { + event &= GET_UINT32(p_DtsecMemMap->imask); + + WRITE_UINT32(p_DtsecMemMap->ievent, event); + + if(event & IMASK_MMRDEN) + p_Dtsec->f_Event(p_Dtsec->h_App, e_FM_MAC_EX_1G_MII_MNG_RD_COMPLET); + if(event & IMASK_MMWREN) + p_Dtsec->f_Event(p_Dtsec->h_App, e_FM_MAC_EX_1G_MII_MNG_WR_COMPLET); + } +} + +static void UpdateStatistics(t_Dtsec *p_Dtsec) +{ + t_DtsecMemMap *p_DtsecMemMap = p_Dtsec->p_MemMap; + uint32_t car1 = GET_UINT32(p_DtsecMemMap->car1); + uint32_t car2 = GET_UINT32(p_DtsecMemMap->car2); + + if(car1) + { + WRITE_UINT32(p_DtsecMemMap->car1, car1); + if(car1 & CAR1_TR64) + p_Dtsec->internalStatistics.tr64 += VAL22BIT; + if(car1 & CAR1_TR127) + p_Dtsec->internalStatistics.tr127 += VAL22BIT; + if(car1 & CAR1_TR255) + p_Dtsec->internalStatistics.tr255 += VAL22BIT; + if(car1 & CAR1_TR511) + p_Dtsec->internalStatistics.tr511 += VAL22BIT; + if(car1 & CAR1_TRK1) + p_Dtsec->internalStatistics.tr1k += VAL22BIT; + if(car1 & CAR1_TRMAX) + p_Dtsec->internalStatistics.trmax += VAL22BIT; + if(car1 & CAR1_TRMGV) + p_Dtsec->internalStatistics.trmgv += VAL22BIT; + if(car1 & CAR1_RBYT) + p_Dtsec->internalStatistics.rbyt += (uint64_t)VAL32BIT; + if(car1 & CAR1_RPKT) + p_Dtsec->internalStatistics.rpkt += VAL22BIT; + if(car1 & CAR1_RMCA) + p_Dtsec->internalStatistics.rmca += VAL22BIT; + if(car1 & CAR1_RBCA) + p_Dtsec->internalStatistics.rbca += VAL22BIT; + if(car1 & CAR1_RXPF) + p_Dtsec->internalStatistics.rxpf += VAL16BIT; + if(car1 & CAR1_RALN) + p_Dtsec->internalStatistics.raln += VAL16BIT; + if(car1 & CAR1_RFLR) + p_Dtsec->internalStatistics.rflr += VAL16BIT; + if(car1 & CAR1_RCDE) + p_Dtsec->internalStatistics.rcde += VAL16BIT; + if(car1 & CAR1_RCSE) + p_Dtsec->internalStatistics.rcse += VAL16BIT; + if(car1 & CAR1_RUND) + p_Dtsec->internalStatistics.rund += VAL16BIT; + if(car1 & CAR1_ROVR) + p_Dtsec->internalStatistics.rovr += VAL16BIT; + if(car1 & CAR1_RFRG) + p_Dtsec->internalStatistics.rfrg += VAL16BIT; + if(car1 & CAR1_RJBR) + p_Dtsec->internalStatistics.rjbr += VAL16BIT; + if(car1 & CAR1_RDRP) + p_Dtsec->internalStatistics.rdrp += VAL16BIT; + } + if(car2) + { + WRITE_UINT32(p_DtsecMemMap->car2, car2); + if(car2 & CAR2_TFCS) + p_Dtsec->internalStatistics.tfcs += VAL12BIT; + if(car2 & CAR2_TBYT) + p_Dtsec->internalStatistics.tbyt += (uint64_t)VAL32BIT; + if(car2 & CAR2_TPKT) + p_Dtsec->internalStatistics.tpkt += VAL22BIT; + if(car2 & CAR2_TMCA) + p_Dtsec->internalStatistics.tmca += VAL22BIT; + if(car2 & CAR2_TBCA) + p_Dtsec->internalStatistics.tbca += VAL22BIT; + if(car2 & CAR2_TXPF) + p_Dtsec->internalStatistics.txpf += VAL16BIT; + if(car2 & CAR2_TDRP) + p_Dtsec->internalStatistics.tdrp += VAL16BIT; + } +} + +/* .............................................................................. */ + +static uint16_t DtsecGetMaxFrameLength(t_Handle h_Dtsec) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + + SANITY_CHECK_RETURN_VALUE(p_Dtsec, E_INVALID_HANDLE, 0); + + return (uint16_t)GET_UINT32(p_Dtsec->p_MemMap->maxfrm); +} + +static void DtsecErrException(t_Handle h_Dtsec) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + uint32_t event; + t_DtsecMemMap *p_DtsecMemMap = p_Dtsec->p_MemMap; + + event = GET_UINT32(p_DtsecMemMap->ievent); + /* do not handle MDIO events */ + event &= ~(IMASK_MMRDEN | IMASK_MMWREN); + + event &= GET_UINT32(p_DtsecMemMap->imask); + + WRITE_UINT32(p_DtsecMemMap->ievent, event); + + if(event & IMASK_BREN) + p_Dtsec->f_Exception(p_Dtsec->h_App, e_FM_MAC_EX_1G_BAB_RX); + if(event & IMASK_RXCEN) + p_Dtsec->f_Exception(p_Dtsec->h_App, e_FM_MAC_EX_1G_RX_CTL); + if(event & IMASK_MSROEN) + UpdateStatistics(p_Dtsec); + if(event & IMASK_GTSCEN) + p_Dtsec->f_Exception(p_Dtsec->h_App, e_FM_MAC_EX_1G_GRATEFUL_TX_STP_COMPLET); + if(event & IMASK_BTEN) + p_Dtsec->f_Exception(p_Dtsec->h_App, e_FM_MAC_EX_1G_BAB_TX); + if(event & IMASK_TXCEN) + p_Dtsec->f_Exception(p_Dtsec->h_App, e_FM_MAC_EX_1G_TX_CTL); + if(event & IMASK_TXEEN) + p_Dtsec->f_Exception(p_Dtsec->h_App, e_FM_MAC_EX_1G_TX_ERR); + if(event & IMASK_LCEN) + p_Dtsec->f_Exception(p_Dtsec->h_App, e_FM_MAC_EX_1G_LATE_COL); + if(event & IMASK_CRLEN) + p_Dtsec->f_Exception(p_Dtsec->h_App, e_FM_MAC_EX_1G_COL_RET_LMT); + if(event & IMASK_XFUNEN) + { +#ifdef FM_TX_LOCKUP_ERRATA_DTSEC6 + uint32_t tpkt1, tmpReg1, tpkt2, tmpReg2, i; + /* a. Write 0x00E0_0C00 to DTSEC_ID */ + /* This is a read only regidter */ + + /* b. Read and save the value of TPKT */ + tpkt1 = GET_UINT32(p_DtsecMemMap->tpkt); + + /* c. Read the register at dTSEC address offset 0x32C */ + tmpReg1 = GET_UINT32(*(uint32_t*)((uint8_t*)p_DtsecMemMap + 0x32c)); + + /* d. Compare bits [9:15] to bits [25:31] of the register at address offset 0x32C. */ + if((tmpReg1 & 0x007F0000) != (tmpReg1 & 0x0000007F)) + { + /* If they are not equal, save the value of this register and wait for at least + * MAXFRM*16 ns */ + XX_UDelay((uint32_t)(MIN(DtsecGetMaxFrameLength(p_Dtsec)*16/1000, 1))); + } + + /* e. Read and save TPKT again and read the register at dTSEC address offset + 0x32C again*/ + tpkt2 = GET_UINT32(p_DtsecMemMap->tpkt); + tmpReg2 = GET_UINT32(*(uint32_t*)((uint8_t*)p_DtsecMemMap + 0x32c)); + + /* f. Compare the value of TPKT saved in step b to value read in step e. Also + compare bits [9:15] of the register at offset 0x32C saved in step d to the value + of bits [9:15] saved in step e. If the two registers values are unchanged, then + the transmit portion of the dTSEC controller is locked up and the user should + proceed to the recover sequence. */ + if((tpkt1 == tpkt2) && ((tmpReg1 & 0x007F0000) == (tmpReg2 & 0x007F0000))) + { + /* recover sequence */ + + /* a.Write a 1 to RCTRL[GRS]*/ + + WRITE_UINT32(p_DtsecMemMap->rctrl, GET_UINT32(p_DtsecMemMap->rctrl) | RCTRL_GRS); + + /* b.Wait until IEVENT[GRSC]=1, or at least 100 us has elapsed. */ + for(i = 0 ; i < 100 ; i++ ) + { + if(GET_UINT32(p_DtsecMemMap->ievent) & IMASK_GRSCEN) + break; + XX_UDelay(1); + } + if(GET_UINT32(p_DtsecMemMap->ievent) & IMASK_GRSCEN) + WRITE_UINT32(p_DtsecMemMap->ievent, IMASK_GRSCEN); + else + DBG(INFO,("Rx lockup due to dTSEC Tx lockup")); + + + /* c.Write a 1 to bit n of FM_RSTC (offset 0x0CC of FPM)*/ + FmResetMac(p_Dtsec->fmMacControllerDriver.h_Fm, e_FM_MAC_1G, p_Dtsec->fmMacControllerDriver.macId); + + /* d.Wait 4 Tx clocks (32 ns) */ + XX_UDelay(1); + + /* e.Write a 0 to bit n of FM_RSTC. */ + /* cleared by FMAN */ + } + else + { + /* If either value has changed, the dTSEC controller is not locked up and the + controller should be allowed to proceed normally by writing the reset value + of 0x0824_0101 to DTSEC_ID. */ + /* Register is read only */ + } +#endif /* FM_TX_LOCKUP_ERRATA_DTSEC6 */ + + p_Dtsec->f_Exception(p_Dtsec->h_App, e_FM_MAC_EX_1G_TX_FIFO_UNDRN); + } + if(event & IMASK_MAGEN) + p_Dtsec->f_Exception(p_Dtsec->h_App, e_FM_MAC_EX_1G_MAG_PCKT); + if(event & IMASK_GRSCEN) + p_Dtsec->f_Exception(p_Dtsec->h_App, e_FM_MAC_EX_1G_GRATEFUL_RX_STP_COMPLET); + if(event & IMASK_TDPEEN) + p_Dtsec->f_Exception(p_Dtsec->h_App, e_FM_MAC_EX_1G_TX_DATA_ERR); + if(event & IMASK_RDPEEN) + p_Dtsec->f_Exception(p_Dtsec->h_App, e_FM_MAC_EX_1G_RX_DATA_ERR); + + /* - masked interrupts */ + ASSERT_COND(!(event & IMASK_ABRTEN)); + ASSERT_COND(!(event & IMASK_IFERREN)); +} + +static void Dtsec1588Exception(t_Handle h_Dtsec) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + uint32_t event; + t_DtsecMemMap *p_DtsecMemMap = p_Dtsec->p_MemMap; + + if (p_Dtsec->ptpTsuEnabled) + { + event = GET_UINT32(p_DtsecMemMap->tmr_pevent); + event &= GET_UINT32(p_DtsecMemMap->tmr_pemask); + if(event) + { + WRITE_UINT32(p_DtsecMemMap->tmr_pevent, event); + ASSERT_COND(event & PEMASK_TSRE); + p_Dtsec->f_Exception(p_Dtsec->h_App, e_FM_MAC_EX_1G_1588_TS_RX_ERR); + } + } +} + +/* ........................................................................... */ + +static void FreeInitResources(t_Dtsec *p_Dtsec) +{ + /*TODO - need to ask why with mdioIrq != 0*/ + if ((p_Dtsec->mdioIrq != 0) && (p_Dtsec->mdioIrq != NO_IRQ)) + { + XX_DisableIntr(p_Dtsec->mdioIrq); + XX_FreeIntr(p_Dtsec->mdioIrq); + } + else if (p_Dtsec->mdioIrq == 0) + FmUnregisterIntr(p_Dtsec->fmMacControllerDriver.h_Fm, e_FM_MOD_1G_MAC, p_Dtsec->macId, e_FM_INTR_TYPE_NORMAL); + FmUnregisterIntr(p_Dtsec->fmMacControllerDriver.h_Fm, e_FM_MOD_1G_MAC, p_Dtsec->macId, e_FM_INTR_TYPE_ERR); + FmUnregisterIntr(p_Dtsec->fmMacControllerDriver.h_Fm, e_FM_MOD_1G_MAC_TMR, p_Dtsec->macId, e_FM_INTR_TYPE_NORMAL); + + /* release the driver's group hash table */ + FreeHashTable(p_Dtsec->p_MulticastAddrHash); + p_Dtsec->p_MulticastAddrHash = NULL; + + /* release the driver's individual hash table */ + FreeHashTable(p_Dtsec->p_UnicastAddrHash); + p_Dtsec->p_UnicastAddrHash = NULL; +} + +/* ........................................................................... */ + +static void HardwareClearAddrInPaddr(t_Dtsec *p_Dtsec, uint8_t paddrNum) +{ + WRITE_UINT32(((t_DtsecMemMap*)p_Dtsec->p_MemMap)->macaddr[paddrNum].exact_match1, 0x0); + WRITE_UINT32(((t_DtsecMemMap*)p_Dtsec->p_MemMap)->macaddr[paddrNum].exact_match2, 0x0); +} + +/* ........................................................................... */ + +static void HardwareAddAddrInPaddr(t_Dtsec *p_Dtsec, uint64_t *p_Addr, uint8_t paddrNum) +{ + uint32_t tmpReg32 = 0; + uint64_t addr = *p_Addr; + t_DtsecMemMap *p_DtsecMemMap = (t_DtsecMemMap*)p_Dtsec->p_MemMap; + + tmpReg32 = (uint32_t)(addr); + SwapUint32P(&tmpReg32); + WRITE_UINT32(p_DtsecMemMap->macaddr[paddrNum].exact_match1, tmpReg32); + + tmpReg32 = (uint32_t)(addr>>32); + SwapUint32P(&tmpReg32); + WRITE_UINT32(p_DtsecMemMap->macaddr[paddrNum].exact_match2, tmpReg32); +} + +/* ........................................................................... */ + +static t_Error GracefulStop(t_Dtsec *p_Dtsec, e_CommMode mode) +{ + t_DtsecMemMap *p_MemMap; + + ASSERT_COND(p_Dtsec); + + p_MemMap= (t_DtsecMemMap*)(p_Dtsec->p_MemMap); + ASSERT_COND(p_MemMap); + + /* Assert the graceful transmit stop bit */ + if (mode & e_COMM_MODE_RX) + WRITE_UINT32(p_MemMap->rctrl, + GET_UINT32(p_MemMap->rctrl) | RCTRL_GRS); + +#ifdef FM_GRS_ERRATA_DTSEC_A002 + XX_UDelay(100); +#endif /* FM_GRS_ERRATA_DTSEC_A002 */ + +#ifdef FM_GTS_ERRATA_DTSEC_A004 + DBG(INFO, ("GTS not supported due to DTSEC_A004 errata.")); +#else /* not FM_GTS_ERRATA_DTSEC_A004 */ + if (mode & e_COMM_MODE_TX) + WRITE_UINT32(p_MemMap->tctrl, + GET_UINT32(p_MemMap->tctrl) | TCTRL_GTS); +#endif /* not FM_GTS_ERRATA_DTSEC_A004 */ + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error GracefulRestart(t_Dtsec *p_Dtsec, e_CommMode mode) +{ + t_DtsecMemMap *p_MemMap; + + ASSERT_COND(p_Dtsec); + + p_MemMap= (t_DtsecMemMap*)(p_Dtsec->p_MemMap); + ASSERT_COND(p_MemMap); + + /* clear the graceful receive stop bit */ + if(mode & e_COMM_MODE_TX) + WRITE_UINT32(p_MemMap->tctrl, + GET_UINT32(p_MemMap->tctrl) & ~TCTRL_GTS); + + if(mode & e_COMM_MODE_RX) + WRITE_UINT32(p_MemMap->rctrl, + GET_UINT32(p_MemMap->rctrl) & ~RCTRL_GRS); + + return E_OK; +} + + +/*****************************************************************************/ +/* dTSEC Configs modification functions */ +/*****************************************************************************/ + + +/* .............................................................................. */ + +static t_Error DtsecConfigLoopback(t_Handle h_Dtsec, bool newVal) +{ + + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_DtsecDriverParam, E_INVALID_STATE); + + p_Dtsec->p_DtsecDriverParam->loopback = newVal; + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecConfigMaxFrameLength(t_Handle h_Dtsec, uint16_t newVal) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_DtsecDriverParam, E_INVALID_STATE); + + p_Dtsec->p_DtsecDriverParam->maxFrameLength = newVal; + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecConfigPadAndCrc(t_Handle h_Dtsec, bool newVal) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_DtsecDriverParam, E_INVALID_STATE); + + p_Dtsec->p_DtsecDriverParam->padAndCrcEnable = newVal; + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecConfigHalfDuplex(t_Handle h_Dtsec, bool newVal) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_DtsecDriverParam, E_INVALID_STATE); + + p_Dtsec->p_DtsecDriverParam->halfDuplex = newVal; + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecConfigLengthCheck(t_Handle h_Dtsec, bool newVal) +{ +#ifdef FM_LEN_CHECK_ERRATA_FMAN_SW002 +UNUSED(h_Dtsec); + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("LengthCheck!")); + +#else + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_DtsecDriverParam, E_INVALID_STATE); + + p_Dtsec->p_DtsecDriverParam->lengthCheckEnable = newVal; + + return E_OK; +#endif /* FM_LEN_CHECK_ERRATA_FMAN_SW002 */ +} + +static t_Error DtsecConfigException(t_Handle h_Dtsec, e_FmMacExceptions exception, bool enable) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + uint32_t bitMask = 0; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_DtsecDriverParam, E_INVALID_STATE); + + if(exception != e_FM_MAC_EX_1G_1588_TS_RX_ERR) + { + GET_EXCEPTION_FLAG(bitMask, exception); + if(bitMask) + { + if (enable) + p_Dtsec->exceptions |= bitMask; + else + p_Dtsec->exceptions &= ~bitMask; + } + else + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Undefined exception")); + } + else + { + if(!p_Dtsec->ptpTsuEnabled) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Exception valid for 1588 only")); + switch(exception){ + case(e_FM_MAC_EX_1G_1588_TS_RX_ERR): + if(enable) + p_Dtsec->enTsuErrExeption = TRUE; + else + p_Dtsec->enTsuErrExeption = FALSE; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Undefined exception")); + } + } + return E_OK; +} +/*****************************************************************************/ +/* dTSEC Run Time API functions */ +/*****************************************************************************/ + +/* .............................................................................. */ + +static t_Error DtsecEnable(t_Handle h_Dtsec, e_CommMode mode) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + t_DtsecMemMap *p_MemMap ; + uint32_t tmpReg32 = 0; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_MemMap, E_INVALID_HANDLE); + + p_MemMap= (t_DtsecMemMap*)(p_Dtsec->p_MemMap); + + tmpReg32 = GET_UINT32(p_MemMap->maccfg1); + if (mode & e_COMM_MODE_RX) + tmpReg32 |= MACCFG1_RX_EN; + if (mode & e_COMM_MODE_TX) + tmpReg32 |= MACCFG1_TX_EN; + WRITE_UINT32(p_MemMap->maccfg1, tmpReg32); + + GracefulRestart(p_Dtsec, mode); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecDisable (t_Handle h_Dtsec, e_CommMode mode) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + t_DtsecMemMap *p_MemMap ; + uint32_t tmpReg32 = 0; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_MemMap, E_INVALID_HANDLE); + + p_MemMap = (t_DtsecMemMap*)(p_Dtsec->p_MemMap); + + GracefulStop(p_Dtsec, mode); + + tmpReg32 = GET_UINT32(p_MemMap->maccfg1); + if (mode & e_COMM_MODE_RX) + tmpReg32 &= ~MACCFG1_RX_EN; + if (mode & e_COMM_MODE_TX) + tmpReg32 &= ~MACCFG1_TX_EN; + WRITE_UINT32(p_MemMap->maccfg1, tmpReg32); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecTxMacPause(t_Handle h_Dtsec, uint16_t pauseTime) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + uint32_t ptv = 0; + t_DtsecMemMap *p_MemMap; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(!p_Dtsec->p_DtsecDriverParam, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_MemMap, E_INVALID_STATE); + + p_MemMap = (t_DtsecMemMap*)(p_Dtsec->p_MemMap); + + if (pauseTime) + { +#ifdef FM_BAD_TX_TS_IN_B_2_B_ERRATA_DTSEC_A003 + { + if (pauseTime <= 320) + RETURN_ERROR(MINOR, E_INVALID_VALUE, + ("This pause-time value of %d is illegal due to errata dTSEC-A003!" + " value should be greater than 320.")); + } +#endif /* FM_BAD_TX_TS_IN_B_2_B_ERRATA_DTSEC_A003 */ + +#ifdef FM_SHORT_PAUSE_TIME_ERRATA_DTSEC1 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_Dtsec->fmMacControllerDriver.h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + pauseTime += 2; + } +#endif /* FM_SHORT_PAUSE_TIME_ERRATA_DTSEC1 */ + + ptv = GET_UINT32(p_MemMap->ptv); + ptv |= pauseTime; + WRITE_UINT32(p_MemMap->ptv, ptv); + + /* trigger the transmission of a flow-control pause frame */ + WRITE_UINT32(p_MemMap->maccfg1, + GET_UINT32(p_MemMap->maccfg1) | MACCFG1_TX_FLOW); + } + else + { + WRITE_UINT32(p_MemMap->maccfg1, + GET_UINT32(p_MemMap->maccfg1) & ~MACCFG1_TX_FLOW); + } + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecRxIgnoreMacPause(t_Handle h_Dtsec, bool en) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + t_DtsecMemMap *p_MemMap; + uint32_t tmpReg32; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(!p_Dtsec->p_DtsecDriverParam, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_MemMap, E_INVALID_STATE); + + p_MemMap = (t_DtsecMemMap*)(p_Dtsec->p_MemMap); + + tmpReg32 = GET_UINT32(p_MemMap->maccfg1); + if (en) + tmpReg32 &= ~MACCFG1_RX_FLOW; + else + tmpReg32 |= MACCFG1_RX_FLOW; + WRITE_UINT32(p_MemMap->maccfg1, tmpReg32); + + return E_OK; +} + + +/* .............................................................................. */ + +static t_Error DtsecEnable1588TimeStamp(t_Handle h_Dtsec) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Dtsec->p_DtsecDriverParam, E_INVALID_STATE); +#ifdef FM_10_100_SGMII_NO_TS_ERRATA_DTSEC3 + if((p_Dtsec->enetMode == e_ENET_MODE_SGMII_10) || (p_Dtsec->enetMode == e_ENET_MODE_SGMII_100)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("1588TimeStamp in 10/100 SGMII")); +#endif /* FM_10_100_SGMII_NO_TS_ERRATA_DTSEC3 */ + p_Dtsec->ptpTsuEnabled = TRUE; + WRITE_UINT32(p_Dtsec->p_MemMap->rctrl, GET_UINT32(p_Dtsec->p_MemMap->rctrl) | RCTRL_RTSE); + WRITE_UINT32(p_Dtsec->p_MemMap->tctrl, GET_UINT32(p_Dtsec->p_MemMap->tctrl) | TCTRL_TTSE); + + return E_OK; +} + +static t_Error DtsecDisable1588TimeStamp(t_Handle h_Dtsec) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Dtsec->p_DtsecDriverParam, E_INVALID_STATE); + + p_Dtsec->ptpTsuEnabled = FALSE; + WRITE_UINT32(p_Dtsec->p_MemMap->rctrl, GET_UINT32(p_Dtsec->p_MemMap->rctrl) & ~RCTRL_RTSE); + WRITE_UINT32(p_Dtsec->p_MemMap->tctrl, GET_UINT32(p_Dtsec->p_MemMap->tctrl) & ~TCTRL_TTSE); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecGetStatistics(t_Handle h_Dtsec, t_FmMacStatistics *p_Statistics) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + t_DtsecMemMap *p_DtsecMemMap; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_MemMap, E_NULL_POINTER); + SANITY_CHECK_RETURN_ERROR(p_Statistics, E_NULL_POINTER); + + if (p_Dtsec->statisticsLevel == e_FM_MAC_NONE_STATISTICS) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Statistics disabled")); + + p_DtsecMemMap = p_Dtsec->p_MemMap; + memset(p_Statistics, 0xff, sizeof(t_FmMacStatistics)); + + if (p_Dtsec->statisticsLevel == e_FM_MAC_FULL_STATISTICS) + { + p_Statistics->eStatPkts64 = (MASK22BIT & GET_UINT32(p_DtsecMemMap->tr64)) + + p_Dtsec->internalStatistics.tr64; /**< r-10G tr-DT 64 byte frame counter */ + p_Statistics->eStatPkts65to127 = (MASK22BIT & GET_UINT32(p_DtsecMemMap->tr127)) + + p_Dtsec->internalStatistics.tr127; /**< r-10G 65 to 127 byte frame counter */ + p_Statistics->eStatPkts128to255 = (MASK22BIT & GET_UINT32(p_DtsecMemMap->tr255)) + + p_Dtsec->internalStatistics.tr255; /**< r-10G 128 to 255 byte frame counter */ + p_Statistics->eStatPkts256to511 = (MASK22BIT & GET_UINT32(p_DtsecMemMap->tr511)) + + p_Dtsec->internalStatistics.tr511; /**< r-10G 256 to 511 byte frame counter */ + p_Statistics->eStatPkts512to1023 = (MASK22BIT & GET_UINT32(p_DtsecMemMap->tr1k)) + + p_Dtsec->internalStatistics.tr1k; /**< r-10G 512 to 1023 byte frame counter */ + p_Statistics->eStatPkts1024to1518 = (MASK22BIT & GET_UINT32(p_DtsecMemMap->trmax)) + + p_Dtsec->internalStatistics.trmax; /**< r-10G 1024 to 1518 byte frame counter */ + p_Statistics->eStatPkts1519to1522 = (MASK22BIT & GET_UINT32(p_DtsecMemMap->trmgv)) + + p_Dtsec->internalStatistics.trmgv; /**< r-10G 1519 to 1522 byte good frame count */ + /* MIB II */ + p_Statistics->ifInOctets = GET_UINT32(p_DtsecMemMap->rbyt) + + p_Dtsec->internalStatistics.rbyt; /**< Total number of byte received. */ + p_Statistics->ifInPkts = (MASK22BIT & GET_UINT32(p_DtsecMemMap->rpkt)) + + p_Dtsec->internalStatistics.rpkt; /**< Total number of packets received.*/ + p_Statistics->ifInMcastPkts = (MASK22BIT & GET_UINT32(p_DtsecMemMap->rmca)) + + p_Dtsec->internalStatistics.rmca; /**< Total number of multicast frame received*/ + p_Statistics->ifInBcastPkts = (MASK22BIT & GET_UINT32(p_DtsecMemMap->rbca)) + + p_Dtsec->internalStatistics.rbca; /**< Total number of broadcast frame received */ + p_Statistics->ifOutOctets = GET_UINT32(p_DtsecMemMap->tbyt) + + p_Dtsec->internalStatistics.tbyt; /**< Total number of byte sent. */ + p_Statistics->ifOutPkts = (MASK22BIT & GET_UINT32(p_DtsecMemMap->tpkt)) + + p_Dtsec->internalStatistics.tpkt; /**< Total number of packets sent .*/ + p_Statistics->ifOutMcastPkts = (MASK22BIT & GET_UINT32(p_DtsecMemMap->tmca)) + + p_Dtsec->internalStatistics.tmca; /**< Total number of multicast frame sent */ + p_Statistics->ifOutBcastPkts = (MASK22BIT & GET_UINT32(p_DtsecMemMap->tbca)) + + p_Dtsec->internalStatistics.tbca; /**< Total number of multicast frame sent */ + } +/* */ + p_Statistics->eStatFragments = (MASK16BIT & GET_UINT32(p_DtsecMemMap->rfrg)) + + p_Dtsec->internalStatistics.rfrg; /**< Total number of packets that were less than 64 octets long with a wrong CRC.*/ + p_Statistics->eStatJabbers = (MASK16BIT & GET_UINT32(p_DtsecMemMap->rjbr)) + + p_Dtsec->internalStatistics.rjbr; /**< Total number of packets longer than valid maximum length octets */ + + p_Statistics->eStatsDropEvents = (MASK16BIT & GET_UINT32(p_DtsecMemMap->rdrp)) + + p_Dtsec->internalStatistics.rdrp; /**< number of dropped packets due to internal errors of the MAC Client. */ + p_Statistics->eStatCRCAlignErrors = (MASK16BIT & GET_UINT32(p_DtsecMemMap->raln)) + + p_Dtsec->internalStatistics.raln; /**< Incremented when frames of correct length but with CRC error are received.*/ + + p_Statistics->eStatUndersizePkts = (MASK16BIT & GET_UINT32(p_DtsecMemMap->rund)) + + p_Dtsec->internalStatistics.rund; /**< Total number of packets that were less than 64 octets long with a good CRC.*/ + p_Statistics->eStatOversizePkts = (MASK16BIT & GET_UINT32(p_DtsecMemMap->rovr)) + + p_Dtsec->internalStatistics.rovr; /**< T,B.D*/ +/* Pause */ + p_Statistics->reStatPause = (MASK16BIT & GET_UINT32(p_DtsecMemMap->rxpf)) + + p_Dtsec->internalStatistics.rxpf; /**< Pause MAC Control received */ + p_Statistics->teStatPause = (MASK16BIT & GET_UINT32(p_DtsecMemMap->txpf)) + + p_Dtsec->internalStatistics.txpf; /**< Pause MAC Control sent */ + + p_Statistics->ifInDiscards = p_Statistics->eStatsDropEvents; /**< Frames received, but discarded due to problems within the MAC RX. */ + + p_Statistics->ifInErrors = p_Statistics->eStatsDropEvents + + p_Statistics->eStatCRCAlignErrors + + (MASK16BIT & GET_UINT32(p_DtsecMemMap->rflr)) + + p_Dtsec->internalStatistics.rflr + + (MASK16BIT & GET_UINT32(p_DtsecMemMap->rcde)) + + p_Dtsec->internalStatistics.rcde + + (MASK16BIT & GET_UINT32(p_DtsecMemMap->rcse)) + + p_Dtsec->internalStatistics.rcse; + + p_Statistics->ifOutDiscards = (MASK16BIT & GET_UINT32(p_DtsecMemMap->tdrp)) + + p_Dtsec->internalStatistics.tdrp; /**< Frames received, but discarded due to problems within the MAC TX N/A!.*/ + p_Statistics->ifOutErrors = p_Statistics->ifOutDiscards /**< Number of frames transmitted with error: */ + + (MASK12BIT & GET_UINT32(p_DtsecMemMap->tfcs)) + + p_Dtsec->internalStatistics.tfcs; + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecModifyMacAddress (t_Handle h_Dtsec, t_EnetAddr *p_EnetAddr) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + t_DtsecMemMap *p_DtsecMemMap; + uint32_t tmpReg32 = 0; + uint64_t addr; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_MemMap, E_NULL_POINTER); + + p_DtsecMemMap = p_Dtsec->p_MemMap; + /* Initialize MAC Station Address registers (1 & 2) */ + /* Station address have to be swapped (big endian to little endian */ + addr = ((*(uint64_t *)p_EnetAddr) >> 16); + p_Dtsec->addr = addr; + + tmpReg32 = (uint32_t)(addr); + SwapUint32P(&tmpReg32); + WRITE_UINT32(p_DtsecMemMap->macstnaddr1, tmpReg32); + + tmpReg32 = (uint32_t)(addr>>32); + SwapUint32P(&tmpReg32); + WRITE_UINT32(p_DtsecMemMap->macstnaddr2, tmpReg32); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecResetCounters (t_Handle h_Dtsec) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + + /* clear HW counters */ + WRITE_UINT32(p_Dtsec->p_MemMap->ecntrl, GET_UINT32(p_Dtsec->p_MemMap->ecntrl) | ECNTRL_CLRCNT); + + /* clear SW counters holding carries */ + memset((char *)&p_Dtsec->internalStatistics, (char)0x0, sizeof(t_InternalStatistics)); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecAddExactMatchMacAddress(t_Handle h_Dtsec, t_EnetAddr *p_EthAddr) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *) h_Dtsec; + uint64_t ethAddr; + uint8_t paddrNum; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + + ethAddr = ((*(uint64_t *)p_EthAddr) >> 16); + + if (ethAddr & GROUP_ADDRESS) + /* Multicast address has no effect in PADDR */ + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Multicast address")); + + /* Make sure no PADDR contains this address */ + for (paddrNum = 0; paddrNum < DTSEC_NUM_OF_PADDRS; paddrNum++) + if (p_Dtsec->indAddrRegUsed[paddrNum]) + if (p_Dtsec->paddr[paddrNum] == ethAddr) + RETURN_ERROR(MAJOR, E_ALREADY_EXISTS, NO_MSG); + + /* Find first unused PADDR */ + for (paddrNum = 0; paddrNum < DTSEC_NUM_OF_PADDRS; paddrNum++) + if (!(p_Dtsec->indAddrRegUsed[paddrNum])) + { + /* mark this PADDR as used */ + p_Dtsec->indAddrRegUsed[paddrNum] = TRUE; + /* store address */ + p_Dtsec->paddr[paddrNum] = ethAddr; + + /* put in hardware */ + HardwareAddAddrInPaddr(p_Dtsec, ðAddr, paddrNum); + p_Dtsec->numOfIndAddrInRegs++; + + return E_OK; + } + + /* No free PADDR */ + RETURN_ERROR(MAJOR, E_FULL, NO_MSG); +} + +/* .............................................................................. */ + +static t_Error DtsecDelExactMatchMacAddress(t_Handle h_Dtsec, t_EnetAddr *p_EthAddr) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *) h_Dtsec; + uint64_t ethAddr; + uint8_t paddrNum; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + + ethAddr = ((*(uint64_t *)p_EthAddr) >> 16); + + /* Find used PADDR containing this address */ + for (paddrNum = 0; paddrNum < DTSEC_NUM_OF_PADDRS; paddrNum++) + { + if ((p_Dtsec->indAddrRegUsed[paddrNum]) && + (p_Dtsec->paddr[paddrNum] == ethAddr)) + { + /* mark this PADDR as not used */ + p_Dtsec->indAddrRegUsed[paddrNum] = FALSE; + /* clear in hardware */ + HardwareClearAddrInPaddr(p_Dtsec, paddrNum); + p_Dtsec->numOfIndAddrInRegs--; + + return E_OK; + } + } + + RETURN_ERROR(MAJOR, E_NOT_FOUND, NO_MSG); +} + +/* .............................................................................. */ + +static t_Error DtsecAddHashMacAddress(t_Handle h_Dtsec, t_EnetAddr *p_EthAddr) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + t_DtsecMemMap *p_DtsecMemMap; + uint32_t crc; + uint8_t crcMirror, reg; + uint32_t bitMask; + t_EthHashEntry *p_HashEntry; + uint64_t ethAddr; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_MemMap, E_NULL_POINTER); + + p_DtsecMemMap = p_Dtsec->p_MemMap; + + ethAddr = ((*(uint64_t *)p_EthAddr) >> 16); + + /* CRC calculation */ + GET_MAC_ADDR_CRC(ethAddr, crc); + + /* calculate the "crc mirror" */ + crcMirror = MIRROR((uint8_t)crc); + + /* 3 MSB bits define the register */ + reg = (uint8_t)(crcMirror >> 5); + /* 5 LSB bits define the bit within the register */ + bitMask = 0x80000000 >> (crcMirror & 0x1f); + + /* Create element to be added to the driver hash table */ + p_HashEntry = (t_EthHashEntry *)XX_Malloc(sizeof(t_EthHashEntry)); + p_HashEntry->addr = ethAddr; + INIT_LIST(&p_HashEntry->node); + + if (ethAddr & GROUP_ADDRESS) + { + /* Group Address */ + LIST_AddToTail(&(p_HashEntry->node), &(p_Dtsec->p_MulticastAddrHash->p_Lsts[crcMirror])); + /* Set the appropriate bit in GADDR0-7 */ + WRITE_UINT32(p_DtsecMemMap->gaddr[reg], + GET_UINT32(p_DtsecMemMap->gaddr[reg]) | bitMask); + } + else + { + LIST_AddToTail(&(p_HashEntry->node), &(p_Dtsec->p_UnicastAddrHash->p_Lsts[crcMirror])); + /* Set the appropriate bit in IADDR0-7 */ + WRITE_UINT32(p_DtsecMemMap->igaddr[reg], + GET_UINT32(p_DtsecMemMap->igaddr[reg]) | bitMask); + } + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecDelHashMacAddress(t_Handle h_Dtsec, t_EnetAddr *p_EthAddr) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + t_DtsecMemMap *p_DtsecMemMap; + t_List *p_Pos; + uint32_t crc; + uint8_t crcMirror, reg; + uint32_t bitMask; + t_EthHashEntry *p_HashEntry = NULL; + uint64_t ethAddr; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_MemMap, E_NULL_POINTER); + + p_DtsecMemMap = p_Dtsec->p_MemMap; + + ethAddr = ((*(uint64_t *)p_EthAddr) >> 16); + + /* CRC calculation */ + GET_MAC_ADDR_CRC(ethAddr, crc); + + /* calculate the "crc mirror" */ + crcMirror = MIRROR((uint8_t)crc); + + /* 3 MSB bits define the register */ + reg =(uint8_t)( crcMirror >> 5); + /* 5 LSB bits define the bit within the register */ + bitMask = 0x80000000 >> (crcMirror & 0x1f); + + if (ethAddr & GROUP_ADDRESS) + { + /* Group Address */ + LIST_FOR_EACH(p_Pos, &(p_Dtsec->p_MulticastAddrHash->p_Lsts[crcMirror])) + { + p_HashEntry = ETH_HASH_ENTRY_OBJ(p_Pos); + if(p_HashEntry->addr == ethAddr) + { + LIST_DelAndInit(&p_HashEntry->node); + XX_Free(p_HashEntry); + break; + } + } + if(LIST_IsEmpty(&p_Dtsec->p_MulticastAddrHash->p_Lsts[crcMirror])) + WRITE_UINT32(p_DtsecMemMap->gaddr[reg], + GET_UINT32(p_DtsecMemMap->gaddr[reg]) & ~bitMask); + } + else + { + /* Individual Address */ + LIST_FOR_EACH(p_Pos, &(p_Dtsec->p_UnicastAddrHash->p_Lsts[crcMirror])) + { + p_HashEntry = ETH_HASH_ENTRY_OBJ(p_Pos); + if(p_HashEntry->addr == ethAddr) + { + LIST_DelAndInit(&p_HashEntry->node); + XX_Free(p_HashEntry); + break; + } + } + if(LIST_IsEmpty(&p_Dtsec->p_UnicastAddrHash->p_Lsts[crcMirror])) + WRITE_UINT32(p_DtsecMemMap->igaddr[reg], + GET_UINT32(p_DtsecMemMap->igaddr[reg]) & ~bitMask); + } + + /* address does not exist */ + ASSERT_COND(p_HashEntry != NULL); + + return E_OK; +} + + +/* .............................................................................. */ + +static t_Error DtsecSetPromiscuous(t_Handle h_Dtsec, bool newVal) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + t_DtsecMemMap *p_DtsecMemMap; + uint32_t tmpReg32; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Dtsec->p_DtsecDriverParam, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_MemMap, E_NULL_POINTER); + + p_DtsecMemMap = p_Dtsec->p_MemMap; + + tmpReg32 = GET_UINT32(p_DtsecMemMap->rctrl); + + if (newVal) + tmpReg32 |= RCTRL_PROM; + else + tmpReg32 &= ~RCTRL_PROM; + + WRITE_UINT32(p_DtsecMemMap->rctrl, tmpReg32); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecSetStatistics(t_Handle h_Dtsec, e_FmMacStatisticsLevel statisticsLevel) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + t_DtsecMemMap *p_DtsecMemMap; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_MemMap, E_NULL_POINTER); + + p_DtsecMemMap = p_Dtsec->p_MemMap; + + p_Dtsec->statisticsLevel = statisticsLevel; + + switch (p_Dtsec->statisticsLevel) + { + case(e_FM_MAC_NONE_STATISTICS): + WRITE_UINT32(p_DtsecMemMap->cam1,0xffffffff); + WRITE_UINT32(p_DtsecMemMap->cam2,0xffffffff); + WRITE_UINT32(p_DtsecMemMap->ecntrl, GET_UINT32(p_DtsecMemMap->ecntrl) & ~ECNTRL_STEN); + WRITE_UINT32(p_DtsecMemMap->imask, GET_UINT32(p_DtsecMemMap->imask) & ~IMASK_MSROEN); + p_Dtsec->exceptions &= ~IMASK_MSROEN; + break; + case(e_FM_MAC_PARTIAL_STATISTICS): + WRITE_UINT32(p_DtsecMemMap->cam1, CAM1_ERRORS_ONLY); + WRITE_UINT32(p_DtsecMemMap->cam2, CAM2_ERRORS_ONLY); + WRITE_UINT32(p_DtsecMemMap->ecntrl, GET_UINT32(p_DtsecMemMap->ecntrl) | ECNTRL_STEN); + WRITE_UINT32(p_DtsecMemMap->imask, GET_UINT32(p_DtsecMemMap->imask) | IMASK_MSROEN); + p_Dtsec->exceptions |= IMASK_MSROEN; + break; + case(e_FM_MAC_FULL_STATISTICS): + WRITE_UINT32(p_DtsecMemMap->cam1,0); + WRITE_UINT32(p_DtsecMemMap->cam2,0); + WRITE_UINT32(p_DtsecMemMap->ecntrl, GET_UINT32(p_DtsecMemMap->ecntrl) | ECNTRL_STEN); + WRITE_UINT32(p_DtsecMemMap->imask, GET_UINT32(p_DtsecMemMap->imask) | IMASK_MSROEN); + p_Dtsec->exceptions |= IMASK_MSROEN; + break; + default: + RETURN_ERROR(MINOR, E_INVALID_SELECTION, NO_MSG); + } + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecAdjustLink(t_Handle h_Dtsec, e_EnetSpeed speed, bool fullDuplex) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + t_DtsecMemMap *p_DtsecMemMap; + uint32_t tmpReg32; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Dtsec->p_DtsecDriverParam, E_INVALID_HANDLE); + p_DtsecMemMap = p_Dtsec->p_MemMap; + SANITY_CHECK_RETURN_ERROR(p_DtsecMemMap, E_INVALID_HANDLE); + + if (!fullDuplex && + ((speed >= e_ENET_SPEED_1000) || + (ENET_INTERFACE_FROM_MODE(p_Dtsec->enetMode) == e_ENET_IF_SGMII))) + RETURN_ERROR(MAJOR, E_CONFLICT, ("Ethernet interface does not support Half Duplex mode")); + + p_Dtsec->enetMode = MAKE_ENET_MODE(ENET_INTERFACE_FROM_MODE(p_Dtsec->enetMode), speed); + p_Dtsec->halfDuplex = !fullDuplex; + + tmpReg32 = GET_UINT32(p_DtsecMemMap->maccfg2); + if(p_Dtsec->halfDuplex) + tmpReg32 &= ~MACCFG2_FULL_DUPLEX; + else + tmpReg32 |= MACCFG2_FULL_DUPLEX; + + tmpReg32 &= ~(MACCFG2_NIBBLE_MODE | MACCFG2_BYTE_MODE); + if((p_Dtsec->enetMode == e_ENET_MODE_RGMII_10) || + (p_Dtsec->enetMode == e_ENET_MODE_RGMII_100)|| + (p_Dtsec->enetMode == e_ENET_MODE_SGMII_10) || + (p_Dtsec->enetMode == e_ENET_MODE_SGMII_100)) + tmpReg32 |= MACCFG2_NIBBLE_MODE; + else if((p_Dtsec->enetMode == e_ENET_MODE_RGMII_1000) || + (p_Dtsec->enetMode == e_ENET_MODE_SGMII_1000)|| + (p_Dtsec->enetMode == e_ENET_MODE_GMII_1000)) + tmpReg32 |= MACCFG2_BYTE_MODE; + WRITE_UINT32(p_DtsecMemMap->maccfg2, tmpReg32); + + tmpReg32 = GET_UINT32(p_DtsecMemMap->ecntrl); + if (!(tmpReg32 & ECNTRL_CFG_RO)) + { + if ((p_Dtsec->enetMode == e_ENET_MODE_RGMII_100) || + (p_Dtsec->enetMode == e_ENET_MODE_SGMII_100)) + tmpReg32 |= ECNTRL_R100M; + else + tmpReg32 &= ~ECNTRL_R100M; + WRITE_UINT32(p_DtsecMemMap->ecntrl, tmpReg32); + } + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecGetId(t_Handle h_Dtsec, uint32_t *macId) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Dtsec->p_DtsecDriverParam, E_INVALID_HANDLE); + + *macId = p_Dtsec->macId; + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecGetVersion(t_Handle h_Dtsec, uint32_t *macVersion) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + t_DtsecMemMap *p_DtsecMemMap; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Dtsec->p_DtsecDriverParam, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_MemMap, E_NULL_POINTER); + + p_DtsecMemMap = p_Dtsec->p_MemMap; + *macVersion = GET_UINT32(p_DtsecMemMap->tsec_id1); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error DtsecSetException(t_Handle h_Dtsec, e_FmMacExceptions exception, bool enable) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + uint32_t tmpReg, bitMask = 0; + t_DtsecMemMap *p_DtsecMemMap; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Dtsec->p_DtsecDriverParam, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_MemMap, E_NULL_POINTER); + + p_DtsecMemMap = p_Dtsec->p_MemMap; + + if(exception != e_FM_MAC_EX_1G_1588_TS_RX_ERR) + { + GET_EXCEPTION_FLAG(bitMask, exception); + if(bitMask) + { + if (enable) + p_Dtsec->exceptions |= bitMask; + else + p_Dtsec->exceptions &= ~bitMask; + } + else + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Undefined exception")); + + tmpReg = GET_UINT32(p_DtsecMemMap->imask); + if(enable) + tmpReg |= bitMask; + else + tmpReg &= ~bitMask; + WRITE_UINT32(p_DtsecMemMap->imask, tmpReg); + + /* warn if MIB OVFL is disabled and statistic gathering is enabled */ + if((exception == e_FM_MAC_EX_1G_RX_MIB_CNT_OVFL) && + !enable && + (p_Dtsec->statisticsLevel != e_FM_MAC_NONE_STATISTICS)) + DBG(WARNING, ("Disabled MIB counters overflow exceptions. Counters value may be inaccurate due to unregistered overflow")); + + } + else + { + if(!p_Dtsec->ptpTsuEnabled) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Exception valid for 1588 only")); + tmpReg = GET_UINT32(p_DtsecMemMap->tmr_pemask); + switch(exception){ + case(e_FM_MAC_EX_1G_1588_TS_RX_ERR): + if(enable) + { + p_Dtsec->enTsuErrExeption = TRUE; + WRITE_UINT32(p_DtsecMemMap->tmr_pemask, tmpReg | PEMASK_TSRE); + } + else + { + p_Dtsec->enTsuErrExeption = FALSE; + WRITE_UINT32(p_DtsecMemMap->tmr_pemask, tmpReg & ~PEMASK_TSRE); + } + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Undefined exception")); + } + } + + return E_OK; +} + +/* ........................................................................... */ + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +static t_Error DtsecDumpRegs(t_Handle h_Dtsec) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + int i = 0; + + DECLARE_DUMP; + + if (p_Dtsec->p_MemMap) + { + + DUMP_TITLE(p_Dtsec->p_MemMap, ("MAC %d: ", p_Dtsec->macId)); + DUMP_VAR(p_Dtsec->p_MemMap, tsec_id1); + DUMP_VAR(p_Dtsec->p_MemMap, tsec_id2); + DUMP_VAR(p_Dtsec->p_MemMap, ievent); + DUMP_VAR(p_Dtsec->p_MemMap, imask); + DUMP_VAR(p_Dtsec->p_MemMap, edis); + DUMP_VAR(p_Dtsec->p_MemMap, ecntrl); + DUMP_VAR(p_Dtsec->p_MemMap, ptv); + DUMP_VAR(p_Dtsec->p_MemMap, tmr_ctrl); + DUMP_VAR(p_Dtsec->p_MemMap, tmr_pevent); + DUMP_VAR(p_Dtsec->p_MemMap, tmr_pemask); + DUMP_VAR(p_Dtsec->p_MemMap, tctrl); + DUMP_VAR(p_Dtsec->p_MemMap, rctrl); + DUMP_VAR(p_Dtsec->p_MemMap, maccfg1); + DUMP_VAR(p_Dtsec->p_MemMap, maccfg2); + DUMP_VAR(p_Dtsec->p_MemMap, ipgifg); + DUMP_VAR(p_Dtsec->p_MemMap, hafdup); + DUMP_VAR(p_Dtsec->p_MemMap, maxfrm); + + DUMP_VAR(p_Dtsec->p_MemMap, macstnaddr1); + DUMP_VAR(p_Dtsec->p_MemMap, macstnaddr2); + + DUMP_SUBSTRUCT_ARRAY(i, 8) + { + DUMP_VAR(p_Dtsec->p_MemMap, macaddr[i].exact_match1); + DUMP_VAR(p_Dtsec->p_MemMap, macaddr[i].exact_match2); + } + } + + return E_OK; +} +#endif /* (defined(DEBUG_ERRORS) && ... */ + + +/*****************************************************************************/ +/* FM Init & Free API */ +/*****************************************************************************/ + +/* .............................................................................. */ + +static t_Error DtsecInit(t_Handle h_Dtsec) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + t_DtsecDriverParam *p_DtsecDriverParam; + t_DtsecMemMap *p_DtsecMemMap; + int i; + uint32_t tmpReg32; + uint64_t addr; + t_Error err; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_DtsecDriverParam, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_MemMap, E_INVALID_STATE); + + CHECK_INIT_PARAMETERS(p_Dtsec, CheckInitParameters); + + p_DtsecDriverParam = p_Dtsec->p_DtsecDriverParam; + p_Dtsec->halfDuplex = p_DtsecDriverParam->halfDuplex; + p_Dtsec->debugMode = p_DtsecDriverParam->debugMode; + p_DtsecMemMap = p_Dtsec->p_MemMap; + + /*************dtsec_id2******************/ + tmpReg32 = GET_UINT32(p_DtsecMemMap->tsec_id2); + + if ((p_Dtsec->enetMode == e_ENET_MODE_RGMII_10) || + (p_Dtsec->enetMode == e_ENET_MODE_RGMII_100) || + (p_Dtsec->enetMode == e_ENET_MODE_RGMII_1000) || + (p_Dtsec->enetMode == e_ENET_MODE_RMII_10) || + (p_Dtsec->enetMode == e_ENET_MODE_RMII_100)) + if(tmpReg32 & ID2_INT_REDUCED_OFF) + { + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("no support for reduced interface in current DTSEC version")); + } + + if ((p_Dtsec->enetMode == e_ENET_MODE_SGMII_10) || + (p_Dtsec->enetMode == e_ENET_MODE_SGMII_100) || + (p_Dtsec->enetMode == e_ENET_MODE_SGMII_1000)|| + (p_Dtsec->enetMode == e_ENET_MODE_MII_10) || + (p_Dtsec->enetMode == e_ENET_MODE_MII_100)) + if(tmpReg32 & ID2_INT_NORMAL_OFF) + { + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("no support for normal interface in current DTSEC version")); + } + /*************dtsec_id2******************/ + + /***************EDIS************************/ + WRITE_UINT32(p_DtsecMemMap->edis, p_DtsecDriverParam->errorDisabled); + /***************EDIS************************/ + + /***************ECNTRL************************/ + tmpReg32 = 0; + if ((p_Dtsec->enetMode == e_ENET_MODE_RGMII_10) || + (p_Dtsec->enetMode == e_ENET_MODE_RGMII_100) || + (p_Dtsec->enetMode == e_ENET_MODE_RGMII_1000) || + (p_Dtsec->enetMode == e_ENET_MODE_GMII_1000)) + tmpReg32 |= ECNTRL_GMIIM; + if ((p_Dtsec->enetMode == e_ENET_MODE_SGMII_10) || + (p_Dtsec->enetMode == e_ENET_MODE_SGMII_100) || + (p_Dtsec->enetMode == e_ENET_MODE_SGMII_1000)) + tmpReg32 |= (ECNTRL_SGMIIM | ECNTRL_TBIM); + if (p_Dtsec->enetMode == e_ENET_MODE_QSGMII_1000) + tmpReg32 |= (ECNTRL_SGMIIM | ECNTRL_TBIM | ECNTRL_QSGMIIM); + if ((p_Dtsec->enetMode == e_ENET_MODE_RGMII_1000) || + (p_Dtsec->enetMode == e_ENET_MODE_RGMII_10)|| + (p_Dtsec->enetMode == e_ENET_MODE_RGMII_100)) + tmpReg32 |= ECNTRL_RPM; + if ((p_Dtsec->enetMode == e_ENET_MODE_RGMII_100) || + (p_Dtsec->enetMode == e_ENET_MODE_SGMII_100) || + (p_Dtsec->enetMode == e_ENET_MODE_RMII_100)) + tmpReg32 |= ECNTRL_R100M; + if ((p_Dtsec->enetMode == e_ENET_MODE_RMII_10) || (p_Dtsec->enetMode == e_ENET_MODE_RMII_100)) + tmpReg32 |= ECNTRL_RMM; + WRITE_UINT32(p_DtsecMemMap->ecntrl, tmpReg32); + /***************ECNTRL************************/ + + /***************PTV************************/ + tmpReg32 = 0; +#ifdef FM_SHORT_PAUSE_TIME_ERRATA_DTSEC1 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_Dtsec->fmMacControllerDriver.h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + p_DtsecDriverParam->pauseTime += 2; + } +#endif /* FM_SHORT_PAUSE_TIME_ERRATA_DTSEC1 */ + if (p_DtsecDriverParam->pauseTime) + tmpReg32 |= (uint32_t)p_DtsecDriverParam->pauseTime; + + if (p_DtsecDriverParam->pauseExtended) + tmpReg32 |= ((uint32_t)p_DtsecDriverParam->pauseExtended) << PTV_PTE_OFST; + WRITE_UINT32(p_DtsecMemMap->ptv, tmpReg32); + /***************PTV************************/ + + /***************TCTRL************************/ + tmpReg32 = 0; + if(p_DtsecDriverParam->halfDuplex) + { + if(p_DtsecDriverParam->halfDulexFlowControlEn) + tmpReg32 |= TCTRL_THDF; + } + else + { + if(p_DtsecDriverParam->txTimeStampEn) + tmpReg32 |= TCTRL_TTSE; + } + WRITE_UINT32(p_DtsecMemMap->tctrl, tmpReg32); + /***************TCTRL************************/ + + /***************RCTRL************************/ + tmpReg32 = 0; + if (p_DtsecDriverParam->packetAlignmentPadding) + tmpReg32 |= ((uint32_t)(0x0000001f & p_DtsecDriverParam->packetAlignmentPadding)) << 16; + if (p_DtsecDriverParam->controlFrameAccept) + tmpReg32 |= RCTRL_CFA; + if (p_DtsecDriverParam->groupHashExtend) + tmpReg32 |= RCTRL_GHTX; + if(p_DtsecDriverParam->rxTimeStampEn) + tmpReg32 |= RCTRL_RTSE; + if (p_DtsecDriverParam->broadcReject) + tmpReg32 |= RCTRL_BC_REJ; + if (p_DtsecDriverParam->rxShortFrame) + tmpReg32 |= RCTRL_RSF; + if (p_DtsecDriverParam->promiscuousEnable) + tmpReg32 |= RCTRL_PROM; + if (p_DtsecDriverParam->exactMatch) + tmpReg32 |= RCTRL_EMEN; + + WRITE_UINT32(p_DtsecMemMap->rctrl, tmpReg32); + /***************RCTRL************************/ + + /* Assign a Phy Address to the TBI (TBIPA). */ + /* Done also in case that TBI is not selected to avoid */ + /* conflict with the external PHYs Physical address */ + WRITE_UINT32(p_DtsecMemMap->tbipa, p_DtsecDriverParam->tbiPhyAddr); + + /* Reset the management interface */ + WRITE_UINT32(p_Dtsec->p_MiiMemMap->miimcfg, MIIMCFG_RESET_MGMT); + WRITE_UINT32(p_Dtsec->p_MiiMemMap->miimcfg, ~MIIMCFG_RESET_MGMT); + /* Setup the MII Mgmt clock speed */ + WRITE_UINT32(p_Dtsec->p_MiiMemMap->miimcfg, + (uint32_t)GetMiiDiv((int32_t)(((p_Dtsec->fmMacControllerDriver.clkFreq*10)/2)/8))); + + if(p_Dtsec->enetMode == e_ENET_MODE_SGMII_1000) + { + uint16_t tmpReg16; + + /* Configure the TBI PHY Control Register */ + tmpReg16 = PHY_TBICON_SPEED2 | PHY_TBICON_SRESET; + + DTSEC_MII_WritePhyReg(p_Dtsec, p_DtsecDriverParam->tbiPhyAddr, 17, tmpReg16); + + tmpReg16 = PHY_TBICON_SPEED2; + + DTSEC_MII_WritePhyReg(p_Dtsec, p_DtsecDriverParam->tbiPhyAddr, 17, tmpReg16); + + if(!p_DtsecDriverParam->halfDuplex) + tmpReg16 |= PHY_CR_FULLDUPLEX | 0x8000 | PHY_CR_ANE; + + DTSEC_MII_WritePhyReg(p_Dtsec, p_DtsecDriverParam->tbiPhyAddr, 0, tmpReg16); + + tmpReg16 = 0x01a0; + DTSEC_MII_WritePhyReg(p_Dtsec, p_DtsecDriverParam->tbiPhyAddr, 4, tmpReg16); + + tmpReg16 = 0x1340; + DTSEC_MII_WritePhyReg(p_Dtsec, p_DtsecDriverParam->tbiPhyAddr, 0, tmpReg16); + } + + /***************TMR_CTL************************/ + WRITE_UINT32(p_DtsecMemMap->tmr_ctrl, 0); + + if(p_Dtsec->ptpTsuEnabled) + { + tmpReg32 = 0; + if (p_Dtsec->enTsuErrExeption) + tmpReg32 |= PEMASK_TSRE; + WRITE_UINT32(p_DtsecMemMap->tmr_pemask, tmpReg32); + WRITE_UINT32(p_DtsecMemMap->tmr_pevent, tmpReg32); + } + + /***************DEBUG************************/ + tmpReg32 = 0; + if(p_DtsecDriverParam->debugMode) + WRITE_UINT32(p_DtsecMemMap->tsec_id1, TSEC_ID1_DEBUG); + /***************DEBUG************************/ + + /***************MACCFG1***********************/ + WRITE_UINT32(p_DtsecMemMap->maccfg1, MACCFG1_SOFT_RESET); + WRITE_UINT32(p_DtsecMemMap->maccfg1, 0); + tmpReg32 = 0; + if(p_DtsecDriverParam->loopback) + tmpReg32 |= MACCFG1_LOOPBACK; + if(p_DtsecDriverParam->actOnRxPauseFrame) + tmpReg32 |= MACCFG1_RX_FLOW; + if(p_DtsecDriverParam->actOnTxPauseFrame) + tmpReg32 |= MACCFG1_TX_FLOW; + WRITE_UINT32(p_DtsecMemMap->maccfg1, tmpReg32); + /***************MACCFG1***********************/ + + /***************MACCFG2***********************/ + tmpReg32 = 0; + if( (p_Dtsec->enetMode == e_ENET_MODE_RMII_10) || + (p_Dtsec->enetMode == e_ENET_MODE_RMII_100) || + (p_Dtsec->enetMode == e_ENET_MODE_MII_10) || + (p_Dtsec->enetMode == e_ENET_MODE_MII_100) || + (p_Dtsec->enetMode == e_ENET_MODE_RGMII_10) || + (p_Dtsec->enetMode == e_ENET_MODE_RGMII_100)|| + (p_Dtsec->enetMode == e_ENET_MODE_SGMII_10) || + (p_Dtsec->enetMode == e_ENET_MODE_SGMII_100)) + tmpReg32 |= MACCFG2_NIBBLE_MODE; + else if((p_Dtsec->enetMode == e_ENET_MODE_RGMII_1000) || + (p_Dtsec->enetMode == e_ENET_MODE_SGMII_1000)|| + (p_Dtsec->enetMode == e_ENET_MODE_GMII_1000)|| + (p_Dtsec->enetMode == e_ENET_MODE_QSGMII_1000)) + tmpReg32 |= MACCFG2_BYTE_MODE; + + tmpReg32 |= (((uint32_t)p_DtsecDriverParam->preambleLength) & 0x0000000f)<< PREAMBLE_LENGTH_SHIFT; + + if(p_DtsecDriverParam->preambleRxEn) + tmpReg32 |= MACCFG2_PRE_AM_Rx_EN; + if(p_DtsecDriverParam->preambleTxEn) + tmpReg32 |= MACCFG2_PRE_AM_Tx_EN; + if(p_DtsecDriverParam->lengthCheckEnable) + tmpReg32 |= MACCFG2_LENGTH_CHECK; + if(p_DtsecDriverParam->padAndCrcEnable) + tmpReg32 |= MACCFG2_PAD_CRC_EN; + if(p_DtsecDriverParam->crcEnable) + tmpReg32 |= MACCFG2_CRC_EN; + if(!p_DtsecDriverParam->halfDuplex) + tmpReg32 |= MACCFG2_FULL_DUPLEX; + WRITE_UINT32(p_DtsecMemMap->maccfg2, tmpReg32); + /***************MACCFG2***********************/ + + /***************IPGIFG************************/ + tmpReg32 = 0; + ASSERT_COND(p_DtsecDriverParam->nonBackToBackIpg1 <= p_DtsecDriverParam->nonBackToBackIpg2); + tmpReg32 = (uint32_t)((((uint32_t)p_DtsecDriverParam->nonBackToBackIpg1 << + IPGIFG_NON_BACK_TO_BACK_IPG_1_SHIFT) & IPGIFG_NON_BACK_TO_BACK_IPG_1) | + (((uint32_t)p_DtsecDriverParam->nonBackToBackIpg2 << + IPGIFG_NON_BACK_TO_BACK_IPG_2_SHIFT) & IPGIFG_NON_BACK_TO_BACK_IPG_2) | + (((uint32_t)p_DtsecDriverParam->minIfgEnforcement << + IPGIFG_MIN_IFG_ENFORCEMENT_SHIFT) & IPGIFG_MIN_IFG_ENFORCEMENT) | + ((uint32_t)p_DtsecDriverParam->backToBackIpg & IPGIFG_BACK_TO_BACK_IPG)); + WRITE_UINT32(p_DtsecMemMap->ipgifg, tmpReg32); + /***************IPGIFG************************/ + + /***************HAFDUP************************/ + tmpReg32 = 0; + if(p_DtsecDriverParam->alternateBackoffEnable) + { + tmpReg32 = (uint32_t) (HAFDUP_ALT_BEB | (((uint32_t)p_DtsecDriverParam->alternateBackoffVal & 0x0000000f) << + HAFDUP_ALTERNATE_BEB_TRUNCATION_SHIFT)); + } + + if(p_DtsecDriverParam->backPressureNoBackoff) + tmpReg32 |= HAFDUP_BP_NO_BACKOFF; + if(p_DtsecDriverParam->noBackoff) + tmpReg32 |= HAFDUP_NO_BACKOFF; + if(p_DtsecDriverParam->excessDefer) + tmpReg32 |= HAFDUP_EXCESS_DEFER; + tmpReg32 |= (((uint32_t)p_DtsecDriverParam->maxRetransmission << + HAFDUP_RETRANSMISSION_MAX_SHIFT )& HAFDUP_RETRANSMISSION_MAX); + tmpReg32|= ((uint32_t)p_DtsecDriverParam->collisionWindow & HAFDUP_COLLISION_WINDOW); + + WRITE_UINT32(p_DtsecMemMap->hafdup, tmpReg32); + /***************HAFDUP************************/ + + /***************MAXFRM************************/ + /* Initialize MAXFRM */ + WRITE_UINT32(p_DtsecMemMap->maxfrm, + p_DtsecDriverParam->maxFrameLength); + err = FmSetMacMaxFrame(p_Dtsec->fmMacControllerDriver.h_Fm, + e_FM_MAC_1G, + p_Dtsec->fmMacControllerDriver.macId, + p_DtsecDriverParam->maxFrameLength); + if (err) + RETURN_ERROR(MAJOR, err, NO_MSG); + /***************MAXFRM************************/ + + /***************CAM1************************/ + WRITE_UINT32(p_DtsecMemMap->cam1,0xffffffff); + WRITE_UINT32(p_DtsecMemMap->cam2,0xffffffff); + + /***************IMASK************************/ + WRITE_UINT32(p_DtsecMemMap->imask, p_Dtsec->exceptions); + /***************IMASK************************/ + + /***************IEVENT************************/ + WRITE_UINT32(p_DtsecMemMap->ievent, EVENTS_MASK); + + /***************MACSTNADDR1/2*****************/ + /* Initialize MAC Station Address registers (1 & 2) */ + /* Station address have to be swapped (big endian to little endian */ + addr = p_Dtsec->addr; + + tmpReg32 = (uint32_t)(addr); + SwapUint32P(&tmpReg32); + WRITE_UINT32(p_DtsecMemMap->macstnaddr1, tmpReg32); + + tmpReg32 = (uint32_t)(addr>>32); + SwapUint32P(&tmpReg32); + WRITE_UINT32(p_DtsecMemMap->macstnaddr2, tmpReg32); + /***************MACSTNADDR1/2*****************/ + + /***************DEBUG*****************/ + WRITE_UINT32(p_DtsecMemMap->tx_threshold, (uint32_t)(p_DtsecDriverParam->fifoTxThr & 0x7f)); + WRITE_UINT32(p_DtsecMemMap->tx_watermark_high, (uint32_t)(p_DtsecDriverParam->fifoTxWatermarkH & 0x7f)); + WRITE_UINT32(p_DtsecMemMap->rx_watermark_low, (uint32_t)(p_DtsecDriverParam->fifoRxWatermarkL & 0x7f)); + /***************DEBUG*****************/ + + /*****************HASH************************/ + for(i=0 ; iigaddr[i], 0); + /* Initialize GADDRx */ + WRITE_UINT32(p_DtsecMemMap->gaddr[i], 0); + } + + p_Dtsec->p_MulticastAddrHash = AllocHashTable(HASH_TABLE_SIZE); + if(!p_Dtsec->p_MulticastAddrHash) + { + FreeInitResources(p_Dtsec); + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("MC hash table is FAILED")); + } + + p_Dtsec->p_UnicastAddrHash = AllocHashTable(HASH_TABLE_SIZE); + if(!p_Dtsec->p_UnicastAddrHash) + { + FreeInitResources(p_Dtsec); + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("UC hash table is FAILED")); + } + + /* register err intr handler for dtsec to FPM (err)*/ + FmRegisterIntr(p_Dtsec->fmMacControllerDriver.h_Fm, e_FM_MOD_1G_MAC, p_Dtsec->macId, e_FM_INTR_TYPE_ERR, DtsecErrException , p_Dtsec); + /* register 1588 intr handler for TMR to FPM (normal)*/ + FmRegisterIntr(p_Dtsec->fmMacControllerDriver.h_Fm, e_FM_MOD_1G_MAC_TMR, p_Dtsec->macId, e_FM_INTR_TYPE_NORMAL, Dtsec1588Exception , p_Dtsec); + /* register normal intr handler for dtsec to main interrupt controller. */ + if (p_Dtsec->mdioIrq != NO_IRQ) + { + XX_SetIntr(p_Dtsec->mdioIrq, DtsecException, p_Dtsec); + XX_EnableIntr(p_Dtsec->mdioIrq); + } + + XX_Free(p_DtsecDriverParam); + p_Dtsec->p_DtsecDriverParam = NULL; + + err = DtsecSetStatistics(p_Dtsec, e_FM_MAC_FULL_STATISTICS); + if(err) + { + FreeInitResources(p_Dtsec); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + return E_OK; +} + +/* ........................................................................... */ + +static t_Error DtsecFree(t_Handle h_Dtsec) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + + FreeInitResources(p_Dtsec); + + if (p_Dtsec->p_DtsecDriverParam) + { + XX_Free(p_Dtsec->p_DtsecDriverParam); + p_Dtsec->p_DtsecDriverParam = NULL; + } + XX_Free (h_Dtsec); + + return E_OK; +} + +/* .............................................................................. */ + +static void InitFmMacControllerDriver(t_FmMacControllerDriver *p_FmMacControllerDriver) +{ + p_FmMacControllerDriver->f_FM_MAC_Init = DtsecInit; + p_FmMacControllerDriver->f_FM_MAC_Free = DtsecFree; + + p_FmMacControllerDriver->f_FM_MAC_SetStatistics = DtsecSetStatistics; + p_FmMacControllerDriver->f_FM_MAC_ConfigLoopback = DtsecConfigLoopback; + p_FmMacControllerDriver->f_FM_MAC_ConfigMaxFrameLength = DtsecConfigMaxFrameLength; + + p_FmMacControllerDriver->f_FM_MAC_ConfigWan = NULL; /* Not supported on dTSEC */ + + p_FmMacControllerDriver->f_FM_MAC_ConfigPadAndCrc = DtsecConfigPadAndCrc; + p_FmMacControllerDriver->f_FM_MAC_ConfigHalfDuplex = DtsecConfigHalfDuplex; + p_FmMacControllerDriver->f_FM_MAC_ConfigLengthCheck = DtsecConfigLengthCheck; + p_FmMacControllerDriver->f_FM_MAC_ConfigException = DtsecConfigException; + + p_FmMacControllerDriver->f_FM_MAC_Enable = DtsecEnable; + p_FmMacControllerDriver->f_FM_MAC_Disable = DtsecDisable; + + p_FmMacControllerDriver->f_FM_MAC_SetException = DtsecSetException; + + p_FmMacControllerDriver->f_FM_MAC_SetPromiscuous = DtsecSetPromiscuous; + p_FmMacControllerDriver->f_FM_MAC_AdjustLink = DtsecAdjustLink; + + p_FmMacControllerDriver->f_FM_MAC_Enable1588TimeStamp = DtsecEnable1588TimeStamp; + p_FmMacControllerDriver->f_FM_MAC_Disable1588TimeStamp = DtsecDisable1588TimeStamp; + + p_FmMacControllerDriver->f_FM_MAC_SetTxAutoPauseFrames = DtsecTxMacPause; + p_FmMacControllerDriver->f_FM_MAC_SetRxIgnorePauseFrames = DtsecRxIgnoreMacPause; + + p_FmMacControllerDriver->f_FM_MAC_ResetCounters = DtsecResetCounters; + p_FmMacControllerDriver->f_FM_MAC_GetStatistics = DtsecGetStatistics; + + p_FmMacControllerDriver->f_FM_MAC_ModifyMacAddr = DtsecModifyMacAddress; + p_FmMacControllerDriver->f_FM_MAC_AddHashMacAddr = DtsecAddHashMacAddress; + p_FmMacControllerDriver->f_FM_MAC_RemoveHashMacAddr = DtsecDelHashMacAddress; + p_FmMacControllerDriver->f_FM_MAC_AddExactMatchMacAddr = DtsecAddExactMatchMacAddress; + p_FmMacControllerDriver->f_FM_MAC_RemovelExactMatchMacAddr = DtsecDelExactMatchMacAddress; + p_FmMacControllerDriver->f_FM_MAC_GetId = DtsecGetId; + p_FmMacControllerDriver->f_FM_MAC_GetVersion = DtsecGetVersion; + p_FmMacControllerDriver->f_FM_MAC_GetMaxFrameLength = DtsecGetMaxFrameLength; + + p_FmMacControllerDriver->f_FM_MAC_MII_WritePhyReg = DTSEC_MII_WritePhyReg; + p_FmMacControllerDriver->f_FM_MAC_MII_ReadPhyReg = DTSEC_MII_ReadPhyReg; + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) + p_FmMacControllerDriver->f_FM_MAC_DumpRegs = DtsecDumpRegs; +#endif /* (defined(DEBUG_ERRORS) && ... */ +} + + +/*****************************************************************************/ +/* dTSEC Config Main Entry */ +/*****************************************************************************/ + +/* .............................................................................. */ + +t_Handle DTSEC_Config(t_FmMacParams *p_FmMacParam) +{ + t_Dtsec *p_Dtsec; + t_DtsecDriverParam *p_DtsecDriverParam; + uintptr_t baseAddr; + uint8_t i; + + SANITY_CHECK_RETURN_VALUE(p_FmMacParam, E_NULL_POINTER, NULL); + + baseAddr = p_FmMacParam->baseAddr; + /* allocate memory for the UCC GETH data structure. */ + p_Dtsec = (t_Dtsec *) XX_Malloc(sizeof(t_Dtsec)); + if (!p_Dtsec) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("dTSEC driver structure")); + return NULL; + } + /* Zero out * p_Dtsec */ + memset(p_Dtsec, 0, sizeof(t_Dtsec)); + InitFmMacControllerDriver(&p_Dtsec->fmMacControllerDriver); + + /* allocate memory for the dTSEC driver parameters data structure. */ + p_DtsecDriverParam = (t_DtsecDriverParam *) XX_Malloc(sizeof(t_DtsecDriverParam)); + if (!p_DtsecDriverParam) + { + XX_Free(p_Dtsec); + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("dTSEC driver parameters")); + return NULL; + } + /* Zero out */ + memset(p_DtsecDriverParam, 0, sizeof(t_DtsecDriverParam)); + + /* Plant parameter structure pointer */ + p_Dtsec->p_DtsecDriverParam = p_DtsecDriverParam; + + SetDefaultParam(p_DtsecDriverParam); + + for (i=0; i < sizeof(p_FmMacParam->addr); i++) + p_Dtsec->addr |= ((uint64_t)p_FmMacParam->addr[i] << ((5-i) * 8)); + + p_Dtsec->p_MemMap = (t_DtsecMemMap *)UINT_TO_PTR(baseAddr); + p_Dtsec->p_MiiMemMap = (t_MiiAccessMemMap *)UINT_TO_PTR(baseAddr + DTSEC_TO_MII_OFFSET); + p_Dtsec->enetMode = p_FmMacParam->enetMode; + p_Dtsec->macId = p_FmMacParam->macId; + p_Dtsec->exceptions = DEFAULT_exceptions; + p_Dtsec->mdioIrq = p_FmMacParam->mdioIrq; + p_Dtsec->f_Exception = p_FmMacParam->f_Exception; + p_Dtsec->f_Event = p_FmMacParam->f_Event; + p_Dtsec->h_App = p_FmMacParam->h_App; + + return p_Dtsec; +} --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/dtsec.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/dtsec.h @@ -0,0 +1,634 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File dtsec.h + + @Description FM dTSEC ... +*//***************************************************************************/ +#ifndef __DTSEC_H +#define __DTSEC_H + +#include "std_ext.h" +#include "error_ext.h" +#include "list_ext.h" +#include "dtsec_mii_acc.h" +#include "fm_mac.h" + + +#define PEMASK_TSRE 0x00010000 + +#define IMASK_BREN 0x80000000 +#define IMASK_RXCEN 0x40000000 +#define IMASK_MSROEN 0x04000000 +#define IMASK_GTSCEN 0x02000000 +#define IMASK_BTEN 0x01000000 +#define IMASK_TXCEN 0x00800000 +#define IMASK_TXEEN 0x00400000 +#define IMASK_LCEN 0x00040000 +#define IMASK_CRLEN 0x00020000 +#define IMASK_XFUNEN 0x00010000 +#define IMASK_ABRTEN 0x00008000 +#define IMASK_IFERREN 0x00004000 +#define IMASK_MAGEN 0x00000800 +#define IMASK_MMRDEN 0x00000400 +#define IMASK_MMWREN 0x00000200 +#define IMASK_GRSCEN 0x00000100 +#define IMASK_TDPEEN 0x00000002 +#define IMASK_RDPEEN 0x00000001 + +#define EVENTS_MASK ((uint32_t)(IMASK_BREN | \ + IMASK_RXCEN | \ + IMASK_MSROEN | \ + IMASK_GTSCEN | \ + IMASK_BTEN | \ + IMASK_TXCEN | \ + IMASK_TXEEN | \ + IMASK_ABRTEN | \ + IMASK_LCEN | \ + IMASK_CRLEN | \ + IMASK_XFUNEN | \ + IMASK_IFERREN | \ + IMASK_MAGEN | \ + IMASK_MMRDEN | \ + IMASK_MMWREN | \ + IMASK_GRSCEN | \ + IMASK_TDPEEN | \ + IMASK_RDPEEN)) + +#define GET_EXCEPTION_FLAG(bitMask, exception) switch(exception){ \ + case e_FM_MAC_EX_1G_BAB_RX: \ + bitMask = IMASK_BREN; break; \ + case e_FM_MAC_EX_1G_RX_CTL: \ + bitMask = IMASK_RXCEN; break; \ + case e_FM_MAC_EX_1G_GRATEFUL_TX_STP_COMPLET: \ + bitMask = IMASK_GTSCEN ; break; \ + case e_FM_MAC_EX_1G_BAB_TX: \ + bitMask = IMASK_BTEN ; break; \ + case e_FM_MAC_EX_1G_TX_CTL: \ + bitMask = IMASK_TXCEN ; break; \ + case e_FM_MAC_EX_1G_TX_ERR: \ + bitMask = IMASK_TXEEN ; break; \ + case e_FM_MAC_EX_1G_LATE_COL: \ + bitMask = IMASK_LCEN ; break; \ + case e_FM_MAC_EX_1G_COL_RET_LMT: \ + bitMask = IMASK_CRLEN ; break; \ + case e_FM_MAC_EX_1G_TX_FIFO_UNDRN: \ + bitMask = IMASK_XFUNEN ; break; \ + case e_FM_MAC_EX_1G_MAG_PCKT: \ + bitMask = IMASK_MAGEN ; break; \ + case e_FM_MAC_EX_1G_MII_MNG_RD_COMPLET: \ + bitMask = IMASK_MMRDEN; break; \ + case e_FM_MAC_EX_1G_MII_MNG_WR_COMPLET: \ + bitMask = IMASK_MMWREN ; break; \ + case e_FM_MAC_EX_1G_GRATEFUL_RX_STP_COMPLET: \ + bitMask = IMASK_GRSCEN; break; \ + case e_FM_MAC_EX_1G_TX_DATA_ERR: \ + bitMask = IMASK_TDPEEN; break; \ + case e_FM_MAC_EX_1G_RX_MIB_CNT_OVFL: \ + bitMask = IMASK_MSROEN ; break; \ + default: bitMask = 0;break;} + + +#define MAX_PACKET_ALIGNMENT 31 +#define MAX_INTER_PACKET_GAP 0x7f +#define MAX_INTER_PALTERNATE_BEB 0x0f +#define MAX_RETRANSMISSION 0x0f +#define MAX_COLLISION_WINDOW 0x03ff + + +/********************* From mac ext ******************************************/ +typedef uint32_t t_ErrorDisable; + +#define ERROR_DISABLE_TRANSMIT 0x00400000 +#define ERROR_DISABLE_LATE_COLLISION 0x00040000 +#define ERROR_DISABLE_COLLISION_RETRY_LIMIT 0x00020000 +#define ERROR_DISABLE_TxFIFO_UNDERRUN 0x00010000 +#define ERROR_DISABLE_TxABORT 0x00008000 +#define ERROR_DISABLE_INTERFACE 0x00004000 +#define ERROR_DISABLE_TxDATA_PARITY 0x00000002 +#define ERROR_DISABLE_RxDATA_PARITY 0x00000001 + +/*****************************************************************************/ +#define DTSEC_NUM_OF_PADDRS 15 /* number of pattern match registers (entries) */ + +#define GROUP_ADDRESS 0x0000010000000000LL /* Group address bit indication */ + +#define HASH_TABLE_SIZE 256 /* Hash table size (= 32 bits * 8 regs) */ + +#define DTSEC_TO_MII_OFFSET 0x1120 /* number of pattern match registers (entries) */ + +#define DEFAULT_errorDisabled 0 +#define DEFAULT_promiscuousEnable FALSE +#define DEFAULT_pauseExtended 0x0 +#define DEFAULT_pauseTime 0xf000 +#define DEFAULT_halfDuplex FALSE +#define DEFAULT_halfDulexFlowControlEn FALSE +#define DEFAULT_txTimeStampEn FALSE +#define DEFAULT_rxTimeStampEn FALSE +#define DEFAULT_packetAlignment 0 +#define DEFAULT_controlFrameAccept FALSE +#define DEFAULT_groupHashExtend FALSE +#define DEFAULT_broadcReject FALSE +#define DEFAULT_rxShortFrame TRUE +#define DEFAULT_exactMatch FALSE +#define DEFAULT_debugMode FALSE +#define DEFAULT_loopback FALSE +#define DEFAULT_actOnRxPauseFrame TRUE +#define DEFAULT_actOnTxPauseFrame TRUE + +#define DEFAULT_PreAmLength 0x7 +#define DEFAULT_PreAmRxEn FALSE +#define DEFAULT_PreAmTxEn FALSE +#define DEFAULT_lengthCheckEnable FALSE +#define DEFAULT_padAndCrcEnable TRUE +#define DEFAULT_crcEnable FALSE + +#define DEFAULT_nonBackToBackIpg1 0x40 +#define DEFAULT_nonBackToBackIpg2 0x60 +#define DEFAULT_minIfgEnforcement 0x50 +#define DEFAULT_backToBackIpg 0x60 + +#define DEFAULT_altBackoffVal 0x0A +#define DEFAULT_altBackoffEnable FALSE +#define DEFAULT_backPressureNoBackoff FALSE +#define DEFAULT_noBackoff FALSE +#define DEFAULT_excessDefer TRUE +#define DEFAULT_maxRetransmission 0x0F +#define DEFAULT_collisionWindow 0x37 + +#define DEFAULT_maxFrameLength 0x600 + +#define DEFAULT_collisionWindow 0x37 + +#define DEFAULT_fifoTxThr 0x10 +#define DEFAULT_fifoTxWatermarkH 0x7e +#define DEFAULT_fifoRxWatermarkL 0x08 +#define DEFAULT_tbiPhyAddr 5 + +#define DEFAULT_exceptions ((uint32_t)(IMASK_BREN | \ + IMASK_RXCEN | \ + IMASK_BTEN | \ + IMASK_TXCEN | \ + IMASK_TXEEN | \ + IMASK_ABRTEN | \ + IMASK_LCEN | \ + IMASK_CRLEN | \ + IMASK_XFUNEN | \ + IMASK_IFERREN | \ + IMASK_MAGEN | \ + IMASK_TDPEEN | \ + IMASK_RDPEEN)) + + +#define MAX_PHYS 32 /* maximum number of phys */ + +#define DTSEC_ID1_ID 0xffff0000 +#define DTSEC_ID1_REV_MJ 0x0000FF00 +#define DTSEC_ID1_REV_MN 0x000000ff + +#define ID2_INT_REDUCED_OFF 0x00010000 +#define ID2_INT_NORMAL_OFF 0x00020000 + +#define ECNTRL_CLRCNT 0x00004000 +#define ECNTRL_AUTOZ 0x00002000 +#define ECNTRL_STEN 0x00001000 +#define ECNTRL_CFG_RO 0x80000000 +#define ECNTRL_GMIIM 0x00000040 +#define ECNTRL_TBIM 0x00000020 +#define ECNTRL_SGMIIM 0x00000002 +#define ECNTRL_RPM 0x00000010 +#define ECNTRL_R100M 0x00000008 +#define ECNTRL_RMM 0x00000004 +#define ECNTRL_QSGMIIM 0x00000001 + +#define TCTRL_THDF 0x00000800 +#define TCTRL_TTSE 0x00000040 +#define TCTRL_GTS 0x00000020 +#define TCTRL_TFC_PAUSE 0x00000010 + +/* PTV offsets */ +#define PTV_PTE_OFST 16 + +#define RCTRL_CFA 0x00008000 +#define RCTRL_GHTX 0x00000400 +#define RCTRL_RTSE 0x00000040 +#define RCTRL_GRS 0x00000020 +#define RCTRL_BC_REJ 0x00000010 +#define RCTRL_MPROM 0x00000008 +#define RCTRL_RSF 0x00000004 +#define RCTRL_EMEN 0x00000002 +#define RCTRL_UPROM 0x00000001 +#define RCTRL_PROM (RCTRL_UPROM | RCTRL_MPROM) + +#define TMR_CTL_ESFDP 0x00000800 +#define TMR_CTL_ESFDE 0x00000400 + +#define TSEC_ID1_DEBUG 0x00e00c00 +#define DEBUG_ENABLE 0x80000000 +#define DPERROR_Tx_ERROR_ON_SEC 0x00400000 +#define DPERROR_Tx_ERROR_ON_WRITE 0x10000000 +#define DPERROR_Rx_ERROR_ON_SEC 0x00000040 +#define DPERROR_Rx_ERROR_ON_WRITE 0x00001000 +#define DPERROR_STT 0x80000000 +#define DPERROR_STR 0x00008000 + +#define MACCFG1_SOFT_RESET 0x80000000 +#define MACCFG1_LOOPBACK 0x00000100 +#define MACCFG1_RX_FLOW 0x00000020 +#define MACCFG1_TX_FLOW 0x00000010 +#define MACCFG1_TX_EN 0x00000001 +#define MACCFG1_RX_EN 0x00000004 +#define MACCFG1_RESET_RxMC 0x00080000 +#define MACCFG1_RESET_TxMC 0x00040000 +#define MACCFG1_RESET_RxFUN 0x00020000 +#define MACCFG1_RESET_TxFUN 0x00010000 + +#define MACCFG2_NIBBLE_MODE 0x00000100 +#define MACCFG2_BYTE_MODE 0x00000200 +#define MACCFG2_PRE_AM_Rx_EN 0x00000080 +#define MACCFG2_PRE_AM_Tx_EN 0x00000040 +#define MACCFG2_LENGTH_CHECK 0x00000010 +#define MACCFG2_MAGIC_PACKET_EN 0x00000008 +#define MACCFG2_PAD_CRC_EN 0x00000004 +#define MACCFG2_CRC_EN 0x00000002 +#define MACCFG2_FULL_DUPLEX 0x00000001 + +#define PREAMBLE_LENGTH_SHIFT 12 + +#define IPGIFG_NON_BACK_TO_BACK_IPG_1_SHIFT 24 +#define IPGIFG_NON_BACK_TO_BACK_IPG_2_SHIFT 16 +#define IPGIFG_MIN_IFG_ENFORCEMENT_SHIFT 8 + +#define IPGIFG_NON_BACK_TO_BACK_IPG_1 0x7F000000 +#define IPGIFG_NON_BACK_TO_BACK_IPG_2 0x007F0000 +#define IPGIFG_MIN_IFG_ENFORCEMENT 0x0000FF00 +#define IPGIFG_BACK_TO_BACK_IPG 0x0000007F + +#define HAFDUP_ALT_BEB 0x00080000 +#define HAFDUP_BP_NO_BACKOFF 0x00040000 +#define HAFDUP_NO_BACKOFF 0x00020000 +#define HAFDUP_EXCESS_DEFER 0x00010000 +#define HAFDUP_COLLISION_WINDOW 0x000003ff + +#define HAFDUP_ALTERNATE_BEB_TRUNCATION_SHIFT 20 +#define HAFDUP_RETRANSMISSION_MAX_SHIFT 12 +#define HAFDUP_RETRANSMISSION_MAX 0x0000f000 + +#define NUM_OF_HASH_REGS 8 /* Number of hash table registers */ + +#define DEBUG_GET_FIFO_READ_INDEX 0x007f0000 +#define DEBUG_GET_FIFO_WRITE_INDEX 0x0000007f +/* Pause Time Value Register */ +#define PTV_PTE_SHIFT 16 + +#define MASK22BIT 0x003FFFFF +#define MASK16BIT 0x0000FFFF +#define MASK12BIT 0x00000FFF +#define MASK8BIT 0x000000FF + +#define VAL32BIT 0x100000000LL +#define VAL22BIT 0x00400000 +#define VAL16BIT 0x00010000 +#define VAL12BIT 0x00001000 + +/* PHY Control Register */ +#define PHY_CR_LOOPBACK 0x4000 +#define PHY_CR_SPEED0 0x2000 +#define PHY_CR_ANE 0x1000 +#define PHY_CR_FULLDUPLEX 0x0100 +#define PHY_CR_SPEED1 0x0040 + +#define PHY_TBICON_SRESET 0x8000 +#define PHY_TBICON_SPEED2 0x0020 + +/* CAR1/2 bits */ +#define CAR1_TR64 0x80000000 +#define CAR1_TR127 0x40000000 +#define CAR1_TR255 0x20000000 +#define CAR1_TR511 0x10000000 +#define CAR1_TRK1 0x08000000 +#define CAR1_TRMAX 0x04000000 +#define CAR1_TRMGV 0x02000000 + +#define CAR1_RBYT 0x00010000 +#define CAR1_RPKT 0x00008000 +#define CAR1_RMCA 0x00002000 +#define CAR1_RBCA 0x00001000 +#define CAR1_RXPF 0x00000400 +#define CAR1_RALN 0x00000100 +#define CAR1_RFLR 0x00000080 +#define CAR1_RCDE 0x00000040 +#define CAR1_RCSE 0x00000020 +#define CAR1_RUND 0x00000010 +#define CAR1_ROVR 0x00000008 +#define CAR1_RFRG 0x00000004 +#define CAR1_RJBR 0x00000002 +#define CAR1_RDRP 0x00000001 + +#define CAR2_TFCS 0x00040000 +#define CAR2_TBYT 0x00002000 +#define CAR2_TPKT 0x00001000 +#define CAR2_TMCA 0x00000800 +#define CAR2_TBCA 0x00000400 +#define CAR2_TXPF 0x00000200 +#define CAR2_TDRP 0x00000001 + +#define CAM1_ERRORS_ONLY (CAR1_RXPF | \ + CAR1_RALN | \ + CAR1_RFLR | \ + CAR1_RCDE | \ + CAR1_RCSE | \ + CAR1_RUND | \ + CAR1_ROVR | \ + CAR1_RFRG | \ + CAR1_RJBR | \ + CAR1_RDRP) + +#define CAM2_ERRORS_ONLY (CAR2_TFCS | CAR2_TXPF | CAR2_TDRP) + +typedef struct t_InternalStatistics +{ + uint64_t tr64; + uint64_t tr127; + uint64_t tr255; + uint64_t tr511; + uint64_t tr1k; + uint64_t trmax; + uint64_t trmgv; + uint64_t rfrg; + uint64_t rjbr; + uint64_t rdrp; + uint64_t raln; + uint64_t rund; + uint64_t rovr; + uint64_t rxpf; + uint64_t txpf; + uint64_t rbyt; + uint64_t rpkt; + uint64_t rmca; + uint64_t rbca; + uint64_t rflr; + uint64_t rcde; + uint64_t rcse; + uint64_t tbyt; + uint64_t tpkt; + uint64_t tmca; + uint64_t tbca; + uint64_t tdrp; + uint64_t tfcs; +} t_InternalStatistics; + +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(push,1) +#endif /* defined(__MWERKS__) && ... */ +#define MEM_MAP_START + +typedef _Packed struct +{ + uint32_t exact_match1; /* octets 1-4 */ + uint32_t exact_match2; /* octets 5-6 */ +} _PackedType macRegs; + +typedef _Packed struct +{ + volatile uint32_t tsec_id1; /* 0x000 ETSEC_ID register */ + volatile uint32_t tsec_id2; /* 0x004 ETSEC_ID2 register */ + volatile uint32_t ievent; /* 0x008 Interrupt event register */ + volatile uint32_t imask; /* 0x00C Interrupt mask register */ + volatile uint32_t edis; /* 0x010 Error disabled register */ + volatile uint32_t ecntrl; /* 0x014 E control register */ + volatile uint32_t ptv; /* 0x018 Pause time value register */ + volatile uint32_t tbipa; /* 0x01C TBI PHY address register */ + volatile uint32_t tmr_ctrl; /* 0x020 Time-stamp Control register */ + volatile uint32_t tmr_pevent; /* 0x024 Time-stamp event register */ + volatile uint32_t tmr_pemask; /* 0x028 Timer event mask register */ + volatile uint32_t DTSEC_RESERVED2; /* 0x02C */ + volatile uint32_t iobistctl; /* 0x030 IO BIST Control register */ + volatile uint32_t DTSEC_RESERVED3[3]; /* 0x034 */ + + volatile uint32_t tctrl; /* 0x040 Transmit control register */ + volatile uint32_t DTSEC_RESERVED4[3]; /* 0x044-0x04C */ + volatile uint32_t rctrl; /* 0x050 Receive control register */ + volatile uint32_t DTSEC_RESERVED5[11]; /* 0x054- 0x07C */ + + volatile uint32_t igaddr[8]; /* 0x080-0x09C Individual/group address registers 0-7 */ + volatile uint32_t gaddr[8]; /* 0x0A0-0x0BC Group address registers 0-7 */ + volatile uint32_t ETSEC_RESERVED6[16]; /* 0x0C0-0x0FC */ + + volatile uint32_t maccfg1; /* 0x100 MAC configuration #1 */ + volatile uint32_t maccfg2; /* 0x104 MAC configuration #2 */ + volatile uint32_t ipgifg; /* 0x108 IPG/IFG */ + volatile uint32_t hafdup; /* 0x10C Half-duplex */ + volatile uint32_t maxfrm; /* 0x110 Maximum frame */ + volatile uint32_t DTSEC_RESERVED7[3]; /* 0x114-0x11C register */ + t_MiiAccessMemMap miiMemMap; + volatile uint32_t ifctrl; /* 0x138 MII Mgmt:interface control */ + volatile uint32_t ifstat; /* 0x13C Interface status */ + volatile uint32_t macstnaddr1; /* 0x140 Station Address,part 1 */ + volatile uint32_t macstnaddr2; /* 0x144 Station Address,part 2 */ + volatile macRegs macaddr[DTSEC_NUM_OF_PADDRS]; /* 0x148-0x1BC mac exact match addresses 1-15, parts 1-2 */ + volatile uint32_t DTSEC_RESERVED8[16]; /* 0x1C0-0x1FC register */ + + /* RMON MIB REGISTERS */ + /* TRANSMIT and RECEIVE COUNTERS */ + + volatile uint32_t tr64; /* 0x200 transmit and receive 64 byte frame counter */ + volatile uint32_t tr127; /* 0x204 transmit and receive 65 to 127 byte frame counter */ + volatile uint32_t tr255; /* 0x208 transmit and receive 128 to 255 byte frame counter */ + volatile uint32_t tr511; /* 0x20C transmit and receive 256 to 511 byte frame counter */ + volatile uint32_t tr1k; /* 0x210 transmit and receive 512 to 1023 byte frame counter */ + volatile uint32_t trmax; /* 0x214 transmit and receive 1024 to 1518 byte frame counter */ + volatile uint32_t trmgv; /* 0x218 transmit and receive 1519 to 1522 byte good VLAN frame count */ + + /* RECEIVE COUNTERS */ + volatile uint32_t rbyt; /* 0x21C receive byte counter */ + volatile uint32_t rpkt; /* 0x220 receive packet counter */ + volatile uint32_t rfcs; /* 0x224 receive FCS error counter */ + volatile uint32_t rmca; /* 0x228 RMCA receive multicast packet counter */ + volatile uint32_t rbca; /* 0x22C receive broadcast packet counter */ + volatile uint32_t rxcf; /* 0x230 receive control frame packet counter */ + volatile uint32_t rxpf; /* 0x234 receive PAUSE frame packet counter */ + volatile uint32_t rxuo; /* 0x238 receive unknown OP code counter */ + volatile uint32_t raln; /* 0x23C receive alignment error counter */ + volatile uint32_t rflr; /* 0x240 receive frame length error counter */ + volatile uint32_t rcde; /* 0x244 receive code error counter */ + volatile uint32_t rcse; /* 0x248 receive carrier sense error counter */ + volatile uint32_t rund; /* 0x24C receive undersize packet counter */ + volatile uint32_t rovr; /* 0x250 receive oversize packet counter */ + volatile uint32_t rfrg; /* 0x254 receive fragments counter */ + volatile uint32_t rjbr; /* 0x258 receive jabber counter */ + volatile uint32_t rdrp; /* 0x25C receive drop */ + + /* TRANSMIT COUNTERS */ + volatile uint32_t tbyt; /* 0x260 transmit byte counter */ + volatile uint32_t tpkt; /* 0x264 transmit packet counter */ + volatile uint32_t tmca; /* 0x268 transmit multicast packet counter */ + volatile uint32_t tbca; /* 0x26C transmit broadcast packet counter */ + volatile uint32_t txpf; /* 0x270 transmit PAUSE control frame counter */ + volatile uint32_t tdfr; /* 0x274 transmit deferral packet counter */ + volatile uint32_t tedf; /* 0x278 transmit excessive deferral packet counter */ + volatile uint32_t tscl; /* 0x27C transmit single collision packet counter */ + volatile uint32_t tmcl; /* 0x280 transmit multiple collision packet counter */ + volatile uint32_t tlcl; /* 0x284 transmit late collision packet counter */ + volatile uint32_t txcl; /* 0x288 transmit excessive collision packet counter */ + volatile uint32_t tncl; /* 0x28C transmit total collision counter */ + volatile uint32_t DTSEC_RESERVED9; /* 0x290 */ + volatile uint32_t tdrp; /* 0x294 transmit drop frame counter */ + volatile uint32_t tjbr; /* 0x298 transmit jabber frame counter */ + volatile uint32_t tfcs; /* 0x29C transmit FCS error counter */ + volatile uint32_t txcf; /* 0x2A0 transmit control frame counter */ + volatile uint32_t tovr; /* 0x2A4 transmit oversize frame counter */ + volatile uint32_t tund; /* 0x2A8 transmit undersize frame counter */ + volatile uint32_t tfrg; /* 0x2AC transmit fragments frame counter */ + + /* GENERAL REGISTERS */ + volatile uint32_t car1; /* 0x2B0 carry register one register* */ + volatile uint32_t car2; /* 0x2B4 carry register two register* */ + volatile uint32_t cam1; /* 0x2B8 carry register one mask register */ + volatile uint32_t cam2; /* 0x2BC carry register two mask register */ + volatile uint32_t DTSEC_RESERVED10[16]; /* 0x2C0-0x2FC */ + + /* Debug and Factory Test Registers */ + volatile uint32_t debug; /* 0x300 DEBUG - Debug Register */ + volatile uint32_t dperror; /* 0x304 DPERROR - Parity Error Register */ + volatile uint32_t hwassert; /* 0x308 HWASSERT */ + volatile uint32_t RESERVED11; /* 0x30C Reserved */ + volatile uint32_t rx_fifo_ptr; /* 0x310 RXFIFOPTR - Rx FIFO R/W Pointer Register */ + volatile uint32_t rx_fifo_dath; /* 0x314 RXFIFODATH - Rx FIFO Data Register */ + volatile uint32_t rx_fifo_datl; /* 0x318 RXFIFODATL - Rx FIFO Data Register */ + volatile uint32_t rx_fifo_stat; /* 0x31C RXFIFOSTAT - Rx FIFO Status Register */ + volatile uint32_t tx_fifo_ptr; /* 0x320 TXFIFOPTR - Tx FIFO R/W Pointer Register */ + volatile uint32_t tx_fifo_dath; /* 0x324 TXFIFODATH - Rx FIFO Data Register */ + volatile uint32_t tx_fifo_datl; /* 0x328 TXFIFODATL - Rx FIFO Data Register */ + volatile uint32_t tx_fifo_stat; /* 0x32C TXFIFOSTAT - Tx FIFO Status Register */ + volatile uint32_t pkt_rcv_cnt; /* 0x330 PKTRCVCNT - Number of packets accepted and written to Rx FIFO */ + volatile uint32_t RESERVED12[3]; /* 0x334-0x33C Reserved */ + volatile uint32_t tx_threshold; /* 0x340 Transmit threshold; Number of entries (4 bytes units) before starting to transmit to the MAC */ + volatile uint32_t tx_watermark_high;/* 0x344 Transmit watermark high; Number of entries (4 byte units) before de-asserting Ready to packet Interface */ + volatile uint32_t rx_watermark_low; /* 0x348 Receive watermark low; Number of entries (4 byte units) before unloading to packet Interface */ +} _PackedType t_DtsecMemMap; + +#define MEM_MAP_END +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(pop) +#endif /* defined(__MWERKS__) && ... */ + + +typedef struct { + uint32_t errorDisabled; + bool halfDuplex; + uint16_t pauseTime; + uint16_t pauseExtended; + uint8_t tbiPhyAddr; /**< TBI Physical address (1-31) [DEFAULT_tbiPhyAddr] */ + + bool autoZeroCounters; + bool promiscuousEnable; + + bool halfDulexFlowControlEn; + bool txTimeStampEn; + bool rxTimeStampEn; + + uint8_t packetAlignmentPadding; + bool controlFrameAccept; + bool groupHashExtend; + bool broadcReject; + bool rxShortFrame; + bool exactMatch; + + bool debugMode; + + bool loopback; + bool actOnRxPauseFrame; + bool actOnTxPauseFrame; + + uint8_t nonBackToBackIpg1; + uint8_t nonBackToBackIpg2; + uint8_t minIfgEnforcement; + uint8_t backToBackIpg; + + uint8_t preambleLength; + bool preambleRxEn; + bool preambleTxEn; + bool lengthCheckEnable; + bool magicPacketEnable; + bool padAndCrcEnable; + bool crcEnable; + + bool alternateBackoffEnable; + uint8_t alternateBackoffVal; + bool backPressureNoBackoff; + bool noBackoff; + bool excessDefer; + uint8_t maxRetransmission; + uint16_t collisionWindow; + + uint16_t maxFrameLength; + + uint8_t fifoTxThr; + uint8_t fifoTxWatermarkH; + uint8_t fifoRxWatermarkL; +} t_DtsecDriverParam; + +typedef struct { + t_FmMacControllerDriver fmMacControllerDriver; + t_Handle h_App; /**< Handle to the upper layer application */ + t_DtsecMemMap *p_MemMap; /**< pointer to dTSEC memory mapped registers. */ + t_MiiAccessMemMap *p_MiiMemMap; /**< pointer to dTSEC MII memory mapped registers. */ + uint64_t addr; /**< MAC address of device; */ + e_EnetMode enetMode; /**< Ethernet physical interface */ + t_FmMacExceptionCallback *f_Exception; + int mdioIrq; + t_FmMacExceptionCallback *f_Event; + bool indAddrRegUsed[DTSEC_NUM_OF_PADDRS]; /**< Whether a particular individual address recognition register is being used */ + uint64_t paddr[DTSEC_NUM_OF_PADDRS]; /**< MAC address for particular individual address recognition register */ + uint8_t numOfIndAddrInRegs; /**< Number of individual addresses in registers for this station. */ + bool debugMode; + bool halfDuplex; + t_InternalStatistics internalStatistics; + t_EthHash *p_MulticastAddrHash; /* pointer to driver's global address hash table */ + t_EthHash *p_UnicastAddrHash; /* pointer to driver's individual address hash table */ + uint8_t macId; + uint32_t exceptions; + bool ptpTsuEnabled; + bool enTsuErrExeption; + e_FmMacStatisticsLevel statisticsLevel; + + t_DtsecDriverParam *p_DtsecDriverParam; +} t_Dtsec; + + +t_Error DTSEC_MII_WritePhyReg(t_Handle h_Dtsec, uint8_t phyAddr, uint8_t reg, uint16_t data); +t_Error DTSEC_MII_ReadPhyReg(t_Handle h_Dtsec, uint8_t phyAddr, uint8_t reg, uint16_t *p_Data); + + +#endif /* __DTSEC_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/dtsec_mii_acc.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/dtsec_mii_acc.c @@ -0,0 +1,120 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File dtsec_mii_acc.c + + @Description FM dtsec MII register access MAC ... +*//***************************************************************************/ + +#include "error_ext.h" +#include "std_ext.h" +#include "fm_mac.h" +#include "dtsec.h" + + +/*****************************************************************************/ +t_Error DTSEC_MII_WritePhyReg(t_Handle h_Dtsec, + uint8_t phyAddr, + uint8_t reg, + uint16_t data) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + t_MiiAccessMemMap *p_MiiAccess; + uint32_t tmpReg; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_MiiMemMap, E_INVALID_HANDLE); + + p_MiiAccess = p_Dtsec->p_MiiMemMap; + + /* Stop the MII management read cycle */ + WRITE_UINT32(p_MiiAccess->miimcom, 0); + /* Dummy read to make sure MIIMCOM is written */ + tmpReg = GET_UINT32(p_MiiAccess->miimcom); + + /* Setting up MII Management Address Register */ + tmpReg = (uint32_t)((phyAddr << MIIMADD_PHY_ADDR_SHIFT) | reg); + WRITE_UINT32(p_MiiAccess->miimadd, tmpReg); + + /* Setting up MII Management Control Register with data */ + WRITE_UINT32(p_MiiAccess->miimcon, (uint32_t)data); + /* Dummy read to make sure MIIMCON is written */ + tmpReg = GET_UINT32(p_MiiAccess->miimcon); + + /* Wait till MII management write is complete */ + while ((GET_UINT32(p_MiiAccess->miimind)) & MIIMIND_BUSY) ; + + return E_OK; +} + +/*****************************************************************************/ +t_Error DTSEC_MII_ReadPhyReg(t_Handle h_Dtsec, + uint8_t phyAddr, + uint8_t reg, + uint16_t *p_Data) +{ + t_Dtsec *p_Dtsec = (t_Dtsec *)h_Dtsec; + t_MiiAccessMemMap *p_MiiAccess; + uint32_t tmpReg; + + SANITY_CHECK_RETURN_ERROR(p_Dtsec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Dtsec->p_MiiMemMap, E_INVALID_HANDLE); + + p_MiiAccess = p_Dtsec->p_MiiMemMap; + + /* Setting up the MII Management Address Register */ + tmpReg = (uint32_t)((phyAddr << MIIMADD_PHY_ADDR_SHIFT) | reg); + WRITE_UINT32(p_MiiAccess->miimadd, tmpReg); + + /* Perform an MII management read cycle */ + WRITE_UINT32(p_MiiAccess->miimcom, MIIMCOM_READ_CYCLE); + /* Dummy read to make sure MIIMCOM is written */ + tmpReg = GET_UINT32(p_MiiAccess->miimcom); + + /* Wait till MII management read is complete */ + while ((GET_UINT32(p_MiiAccess->miimind)) & MIIMIND_BUSY) ; + + /* Read MII management status */ + *p_Data = (uint16_t)GET_UINT32(p_MiiAccess->miimstat); + + WRITE_UINT32(p_MiiAccess->miimcom, 0); + /* Dummy read to make sure MIIMCOM is written */ + tmpReg = GET_UINT32(p_MiiAccess->miimcom); + + if (*p_Data == 0xffff) + RETURN_ERROR(MINOR, E_NO_DEVICE, + ("Read wrong data (0xffff): phyAddr 0x%x, reg 0x%x", + phyAddr, reg)); + + return E_OK; +} --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/dtsec_mii_acc.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/dtsec_mii_acc.h @@ -0,0 +1,78 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __DTSEC_MII_ACC_H +#define __DTSEC_MII_ACC_H + +#include "std_ext.h" + + +/* MII Management Configuration Register */ +#define MIIMCFG_RESET_MGMT 0x80000000 +#define MIIMCFG_MGMT_CLOCK_SELECT 0x00000007 + +/* MII Management Command Register */ +#define MIIMCOM_READ_CYCLE 0x00000001 +#define MIIMCOM_SCAN_CYCLE 0x00000002 + +/* MII Management Address Register */ +#define MIIMADD_PHY_ADDR_SHIFT 8 + +/* MII Management Indicator Register */ +#define MIIMIND_BUSY 0x00000001 + + +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(push,1) +#endif /* defined(__MWERKS__) && ... */ +#define MEM_MAP_START + +/*----------------------------------------------------*/ +/* MII Configuration Control Memory Map Registers */ +/*----------------------------------------------------*/ +typedef _Packed struct t_MiiAccessMemMap +{ + volatile uint32_t miimcfg; /* MII Mgmt:configuration */ + volatile uint32_t miimcom; /* MII Mgmt:command */ + volatile uint32_t miimadd; /* MII Mgmt:address */ + volatile uint32_t miimcon; /* MII Mgmt:control 3 */ + volatile uint32_t miimstat; /* MII Mgmt:status */ + volatile uint32_t miimind; /* MII Mgmt:indicators */ +} _PackedType t_MiiAccessMemMap ; + +#define MEM_MAP_END +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(pop) +#endif /* defined(__MWERKS__) && ... */ + + +#endif /* __DTSEC_MII_ACC_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/fm_mac.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/fm_mac.c @@ -0,0 +1,560 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm_mac.c + + @Description FM MAC ... +*//***************************************************************************/ +#include "std_ext.h" +#include "string_ext.h" +#include "sprint_ext.h" +#include "error_ext.h" +#include "fm_ext.h" + +#include "fm_common.h" +#include "fm_mac.h" + + +/* ........................................................................... */ + +t_Handle FM_MAC_Config (t_FmMacParams *p_FmMacParam) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver; + + SANITY_CHECK_RETURN_VALUE(p_FmMacParam, E_INVALID_HANDLE, NULL); + + if(ENET_SPEED_FROM_MODE(p_FmMacParam->enetMode) < e_ENET_SPEED_10000) + p_FmMacControllerDriver = (t_FmMacControllerDriver *)DTSEC_Config(p_FmMacParam); + else + p_FmMacControllerDriver = (t_FmMacControllerDriver *)TGEC_Config(p_FmMacParam); + + if (!p_FmMacControllerDriver) + return NULL; + + p_FmMacControllerDriver->h_Fm = p_FmMacParam->h_Fm; + p_FmMacControllerDriver->enetMode = p_FmMacParam->enetMode; + p_FmMacControllerDriver->macId = p_FmMacParam->macId; + p_FmMacControllerDriver->resetOnInit = DEFAULT_resetOnInit; + + return (t_Handle)p_FmMacControllerDriver; +} + +/* ........................................................................... */ + +t_Error FM_MAC_Init (t_Handle h_FmMac) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->resetOnInit && + (FmResetMac(p_FmMacControllerDriver->h_Fm, + ((ENET_INTERFACE_FROM_MODE(p_FmMacControllerDriver->enetMode) == e_ENET_IF_XGMII) ? e_FM_MAC_10G : e_FM_MAC_1G), + p_FmMacControllerDriver->macId) != E_OK)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Can't reset MAC!")); + + if ((p_FmMacControllerDriver->clkFreq = FmGetClockFreq(p_FmMacControllerDriver->h_Fm)) == 0) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Can't get clock for MAC!")); + + if (p_FmMacControllerDriver->f_FM_MAC_Init) + return p_FmMacControllerDriver->f_FM_MAC_Init(h_FmMac); + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_Free (t_Handle h_FmMac) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_Free) + return p_FmMacControllerDriver->f_FM_MAC_Free(h_FmMac); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_ConfigResetOnInit (t_Handle h_FmMac, bool enable) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + p_FmMacControllerDriver->resetOnInit = enable; + + return E_OK; +} + +/* ........................................................................... */ + +t_Error FM_MAC_ConfigLoopback (t_Handle h_FmMac, bool newVal) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_ConfigLoopback) + return p_FmMacControllerDriver->f_FM_MAC_ConfigLoopback(h_FmMac, newVal); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_ConfigMaxFrameLength (t_Handle h_FmMac, uint16_t newVal) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_ConfigMaxFrameLength) + return p_FmMacControllerDriver->f_FM_MAC_ConfigMaxFrameLength(h_FmMac, newVal); + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_ConfigWan (t_Handle h_FmMac, bool flag) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_ConfigWan) + return p_FmMacControllerDriver->f_FM_MAC_ConfigWan(h_FmMac, flag); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_ConfigPadAndCrc (t_Handle h_FmMac, bool newVal) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_ConfigPadAndCrc) + return p_FmMacControllerDriver->f_FM_MAC_ConfigPadAndCrc(h_FmMac, newVal); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_ConfigHalfDuplex (t_Handle h_FmMac, bool newVal) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_ConfigHalfDuplex) + return p_FmMacControllerDriver->f_FM_MAC_ConfigHalfDuplex(h_FmMac,newVal); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_ConfigLengthCheck (t_Handle h_FmMac, bool newVal) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_ConfigLengthCheck) + return p_FmMacControllerDriver->f_FM_MAC_ConfigLengthCheck(h_FmMac,newVal); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_ConfigException (t_Handle h_FmMac, e_FmMacExceptions ex, bool enable) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_ConfigException) + return p_FmMacControllerDriver->f_FM_MAC_ConfigException(h_FmMac, ex, enable); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +#ifdef FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 +/* ........................................................................... */ + +t_Error FM_MAC_ConfigSkipFman11Workaround (t_Handle h_FmMac) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_ConfigSkipFman11Workaround) + return p_FmMacControllerDriver->f_FM_MAC_ConfigSkipFman11Workaround(h_FmMac); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} +#endif /* FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 */ + + +/*****************************************************************************/ +/* Run Time Control */ +/*****************************************************************************/ + +/* ........................................................................... */ + +t_Error FM_MAC_Enable (t_Handle h_FmMac, e_CommMode mode) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_Enable) + return p_FmMacControllerDriver->f_FM_MAC_Enable(h_FmMac, mode); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_Disable (t_Handle h_FmMac, e_CommMode mode) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_Disable) + return p_FmMacControllerDriver->f_FM_MAC_Disable(h_FmMac, mode); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_Enable1588TimeStamp (t_Handle h_FmMac) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_Enable1588TimeStamp) + return p_FmMacControllerDriver->f_FM_MAC_Enable1588TimeStamp(h_FmMac); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_Disable1588TimeStamp (t_Handle h_FmMac) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_Disable1588TimeStamp) + return p_FmMacControllerDriver->f_FM_MAC_Disable1588TimeStamp(h_FmMac); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_SetTxAutoPauseFrames (t_Handle h_FmMac, uint16_t pauseTime) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_SetTxAutoPauseFrames) + return p_FmMacControllerDriver->f_FM_MAC_SetTxAutoPauseFrames(h_FmMac, pauseTime); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_SetRxIgnorePauseFrames (t_Handle h_FmMac, bool en) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_SetRxIgnorePauseFrames) + return p_FmMacControllerDriver->f_FM_MAC_SetRxIgnorePauseFrames(h_FmMac, en); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_ResetCounters (t_Handle h_FmMac) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_ResetCounters) + return p_FmMacControllerDriver->f_FM_MAC_ResetCounters(h_FmMac); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_SetException(t_Handle h_FmMac, e_FmMacExceptions ex, bool enable) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_SetException) + return p_FmMacControllerDriver->f_FM_MAC_SetException(h_FmMac, ex, enable); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_SetStatistics (t_Handle h_FmMac, e_FmMacStatisticsLevel statisticsLevel) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_SetStatistics) + return p_FmMacControllerDriver->f_FM_MAC_SetStatistics(h_FmMac, statisticsLevel); + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_GetStatistics (t_Handle h_FmMac, t_FmMacStatistics *p_Statistics) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_GetStatistics) + return p_FmMacControllerDriver->f_FM_MAC_GetStatistics(h_FmMac, p_Statistics); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_ModifyMacAddr (t_Handle h_FmMac, t_EnetAddr *p_EnetAddr) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_ModifyMacAddr) + return p_FmMacControllerDriver->f_FM_MAC_ModifyMacAddr(h_FmMac, p_EnetAddr); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_AddHashMacAddr (t_Handle h_FmMac, t_EnetAddr *p_EnetAddr) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_AddHashMacAddr) + return p_FmMacControllerDriver->f_FM_MAC_AddHashMacAddr(h_FmMac, p_EnetAddr); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_RemoveHashMacAddr (t_Handle h_FmMac, t_EnetAddr *p_EnetAddr) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_RemoveHashMacAddr) + return p_FmMacControllerDriver->f_FM_MAC_RemoveHashMacAddr(h_FmMac, p_EnetAddr); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_AddExactMatchMacAddr (t_Handle h_FmMac, t_EnetAddr *p_EnetAddr) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_AddExactMatchMacAddr) + return p_FmMacControllerDriver->f_FM_MAC_AddExactMatchMacAddr(h_FmMac, p_EnetAddr); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_RemovelExactMatchMacAddr (t_Handle h_FmMac, t_EnetAddr *p_EnetAddr) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_RemovelExactMatchMacAddr) + return p_FmMacControllerDriver->f_FM_MAC_RemovelExactMatchMacAddr(h_FmMac, p_EnetAddr); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_GetVesrion (t_Handle h_FmMac, uint32_t *macVresion) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_GetVersion) + return p_FmMacControllerDriver->f_FM_MAC_GetVersion(h_FmMac, macVresion); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); + +} + +/* ........................................................................... */ + +t_Error FM_MAC_GetId (t_Handle h_FmMac, uint32_t *macId) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_GetId) + return p_FmMacControllerDriver->f_FM_MAC_GetId(h_FmMac, macId); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_SetPromiscuous (t_Handle h_FmMac, bool newVal) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_SetPromiscuous) + return p_FmMacControllerDriver->f_FM_MAC_SetPromiscuous(h_FmMac, newVal); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_AdjustLink(t_Handle h_FmMac, e_EnetSpeed speed, bool fullDuplex) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_AdjustLink) + return p_FmMacControllerDriver->f_FM_MAC_AdjustLink(h_FmMac, speed, fullDuplex); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_MII_WritePhyReg (t_Handle h_FmMac, uint8_t phyAddr, uint8_t reg, uint16_t data) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_MII_WritePhyReg) + return p_FmMacControllerDriver->f_FM_MAC_MII_WritePhyReg(h_FmMac, phyAddr, reg, data); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +t_Error FM_MAC_MII_ReadPhyReg(t_Handle h_FmMac, uint8_t phyAddr, uint8_t reg, uint16_t *p_Data) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_MII_ReadPhyReg) + return p_FmMacControllerDriver->f_FM_MAC_MII_ReadPhyReg(h_FmMac, phyAddr, reg, p_Data); + + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} + +/* ........................................................................... */ + +uint16_t FM_MAC_GetMaxFrameLength(t_Handle h_FmMac) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_VALUE(p_FmMacControllerDriver, E_INVALID_HANDLE, 0); + + if (p_FmMacControllerDriver->f_FM_MAC_GetMaxFrameLength) + return p_FmMacControllerDriver->f_FM_MAC_GetMaxFrameLength(h_FmMac); + + REPORT_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); + return 0; +} + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +/*****************************************************************************/ +t_Error FM_MAC_DumpRegs(t_Handle h_FmMac) +{ + t_FmMacControllerDriver *p_FmMacControllerDriver = (t_FmMacControllerDriver *)h_FmMac; + + SANITY_CHECK_RETURN_ERROR(p_FmMacControllerDriver, E_INVALID_HANDLE); + + if (p_FmMacControllerDriver->f_FM_MAC_DumpRegs) + return p_FmMacControllerDriver->f_FM_MAC_DumpRegs(h_FmMac); + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, NO_MSG); +} +#endif /* (defined(DEBUG_ERRORS) && ... */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/fm_mac.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/fm_mac.h @@ -0,0 +1,197 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm_mac.h + + @Description FM MAC ... +*//***************************************************************************/ +#ifndef __FM_MAC_H +#define __FM_MAC_H + +#include "std_ext.h" +#include "error_ext.h" +#include "list_ext.h" +#include "fm_mac_ext.h" + + +#define __ERR_MODULE__ MODULE_FM_MAC + + +#define DEFAULT_resetOnInit FALSE + + +typedef struct { + uint64_t addr; /* Ethernet Address */ + t_List node; +} t_EthHashEntry; +#define ETH_HASH_ENTRY_OBJ(ptr) LIST_OBJECT(ptr, t_EthHashEntry, node) + +typedef struct { + uint16_t size; + t_List *p_Lsts; +} t_EthHash; + +typedef struct { + t_Error (*f_FM_MAC_Init) (t_Handle h_FmMac); + t_Error (*f_FM_MAC_Free) (t_Handle h_FmMac); + + t_Error (*f_FM_MAC_SetStatistics) (t_Handle h_FmMac, e_FmMacStatisticsLevel statisticsLevel); + t_Error (*f_FM_MAC_ConfigLoopback) (t_Handle h_FmMac, bool newVal); + t_Error (*f_FM_MAC_ConfigMaxFrameLength) (t_Handle h_FmMac, uint16_t newVal); + t_Error (*f_FM_MAC_ConfigWan) (t_Handle h_FmMac, bool flag); + t_Error (*f_FM_MAC_ConfigPadAndCrc) (t_Handle h_FmMac, bool newVal); + t_Error (*f_FM_MAC_ConfigHalfDuplex) (t_Handle h_FmMac, bool newVal); + t_Error (*f_FM_MAC_ConfigLengthCheck) (t_Handle h_FmMac, bool newVal); + t_Error (*f_FM_MAC_ConfigException) (t_Handle h_FmMac, e_FmMacExceptions, bool enable); +#ifdef FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 + t_Error (*f_FM_MAC_ConfigSkipFman11Workaround) (t_Handle h_FmMac); +#endif /* FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 */ + + t_Error (*f_FM_MAC_SetException) (t_Handle h_FmMac, e_FmMacExceptions ex, bool enable); + + t_Error (*f_FM_MAC_Enable) (t_Handle h_FmMac, e_CommMode mode); + t_Error (*f_FM_MAC_Disable) (t_Handle h_FmMac, e_CommMode mode); + t_Error (*f_FM_MAC_Enable1588TimeStamp) (t_Handle h_FmMac); + t_Error (*f_FM_MAC_Disable1588TimeStamp) (t_Handle h_FmMac); + t_Error (*f_FM_MAC_Reset) (t_Handle h_FmMac, bool wait); + + t_Error (*f_FM_MAC_SetTxAutoPauseFrames) (t_Handle h_FmMac, uint16_t pauseTime); + t_Error (*f_FM_MAC_SetRxIgnorePauseFrames) (t_Handle h_FmMac, bool en); + + t_Error (*f_FM_MAC_ResetCounters) (t_Handle h_FmMac); + t_Error (*f_FM_MAC_GetStatistics) (t_Handle h_FmMac, t_FmMacStatistics *p_Statistics); + + t_Error (*f_FM_MAC_ModifyMacAddr) (t_Handle h_FmMac, t_EnetAddr *p_EnetAddr); + t_Error (*f_FM_MAC_AddHashMacAddr) (t_Handle h_FmMac, t_EnetAddr *p_EnetAddr); + t_Error (*f_FM_MAC_RemoveHashMacAddr) (t_Handle h_FmMac, t_EnetAddr *p_EnetAddr); + t_Error (*f_FM_MAC_AddExactMatchMacAddr) (t_Handle h_FmMac, t_EnetAddr *p_EnetAddr); + t_Error (*f_FM_MAC_RemovelExactMatchMacAddr) (t_Handle h_FmMac, t_EnetAddr *p_EnetAddr); + + t_Error (*f_FM_MAC_SetPromiscuous) (t_Handle h_FmMac, bool newVal); + t_Error (*f_FM_MAC_AdjustLink) (t_Handle h_FmMac, e_EnetSpeed speed, bool fullDuplex); + + t_Error (*f_FM_MAC_GetId) (t_Handle h_FmMac, uint32_t *macId); + + t_Error (*f_FM_MAC_GetVersion) (t_Handle h_FmMac, uint32_t *macVersion); + + uint16_t (*f_FM_MAC_GetMaxFrameLength) (t_Handle h_FmMac); + + t_Error (*f_FM_MAC_MII_WritePhyReg)(t_Handle h_FmMac, uint8_t phyAddr, uint8_t reg, uint16_t data); + t_Error (*f_FM_MAC_MII_ReadPhyReg)(t_Handle h_FmMac, uint8_t phyAddr, uint8_t reg, uint16_t *p_Data); + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) + t_Error (*f_FM_MAC_DumpRegs) (t_Handle h_FmMac); +#endif /* (defined(DEBUG_ERRORS) && ... */ + + t_Handle h_Fm; + e_EnetMode enetMode; + uint8_t macId; + bool resetOnInit; + uint16_t clkFreq; +} t_FmMacControllerDriver; + + +t_Handle DTSEC_Config(t_FmMacParams *p_FmMacParam); +t_Handle TGEC_Config(t_FmMacParams *p_FmMacParams); +uint16_t FM_MAC_GetMaxFrameLength(t_Handle FmMac); + + +/* ........................................................................... */ + +static __inline__ t_EthHashEntry *DequeueAddrFromHashEntry(t_List *p_AddrLst) +{ + t_EthHashEntry *p_HashEntry = NULL; + if (!LIST_IsEmpty(p_AddrLst)) + { + p_HashEntry = ETH_HASH_ENTRY_OBJ(p_AddrLst->p_Next); + LIST_DelAndInit(&p_HashEntry->node); + } + return p_HashEntry; +} + +/* ........................................................................... */ + +static __inline__ void FreeHashTable(t_EthHash *p_Hash) +{ + t_EthHashEntry *p_HashEntry; + int i = 0; + + if (!p_Hash || !p_Hash->p_Lsts) + return; + + for(i=0; isize; i++) + { + p_HashEntry = DequeueAddrFromHashEntry(&p_Hash->p_Lsts[i]); + while (p_HashEntry) + { + XX_Free(p_HashEntry); + p_HashEntry = DequeueAddrFromHashEntry(&p_Hash->p_Lsts[i]); + } + } + + XX_Free(p_Hash->p_Lsts); + XX_Free(p_Hash); +} + +/* ........................................................................... */ + +static __inline__ t_EthHash * AllocHashTable(uint16_t size) +{ + uint32_t i; + t_EthHash *p_Hash; + + /* Allocate address hash table */ + p_Hash = (t_EthHash *)XX_Malloc(size*sizeof(t_EthHash *)); + if (!p_Hash) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("Address hash table")); + return NULL; + } + p_Hash->size = size; + + p_Hash->p_Lsts = (t_List *)XX_Malloc(p_Hash->size*sizeof(t_List)); + if (!p_Hash->p_Lsts) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("Address hash table")); + XX_Free(p_Hash); + return NULL; + } + + for(i=0 ; isize; i++) + INIT_LIST(&p_Hash->p_Lsts[i]); + + return p_Hash; +} + + +#endif /* __FM_MAC_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/tgec.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/tgec.c @@ -0,0 +1,1268 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File tgec.c + + @Description FM 10G MAC ... +*//***************************************************************************/ + +#include "std_ext.h" +#include "string_ext.h" +#include "error_ext.h" +#include "xx_ext.h" +#include "endian_ext.h" +#include "crc_mac_addr_ext.h" +#include "debug_ext.h" + +#include "fm_common.h" +#include "tgec.h" + + +/*****************************************************************************/ +/* Internal routines */ +/*****************************************************************************/ + +static t_Error CheckInitParameters(t_Tgec *p_Tgec) +{ + if(ENET_SPEED_FROM_MODE(p_Tgec->enetMode) < e_ENET_SPEED_10000) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Ethernet 10G MAC driver only support 10G speed")); +#if (FM_MAX_NUM_OF_10G_MACS > 0) + if(p_Tgec->macId >= FM_MAX_NUM_OF_10G_MACS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("macId of 10G can not be greater than 0")); +#endif + if(p_Tgec->addr == 0) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Ethernet 10G MAC Must have a valid MAC Address")); + if(!p_Tgec->f_Exception) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("uninitialized f_Exception")); + if(!p_Tgec->f_Event) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("uninitialized f_Event")); + return E_OK; +} + +/* .............................................................................. */ + +static void SetDefaultParam(t_TgecDriverParam *p_TgecDriverParam) +{ + p_TgecDriverParam->wanModeEnable = DEFAULT_wanModeEnable; + p_TgecDriverParam->promiscuousModeEnable = DEFAULT_promiscuousModeEnable; + p_TgecDriverParam->pauseForwardEnable = DEFAULT_pauseForwardEnable; + p_TgecDriverParam->pauseIgnore = DEFAULT_pauseIgnore; + p_TgecDriverParam->txAddrInsEnable = DEFAULT_txAddrInsEnable; + + p_TgecDriverParam->loopbackEnable = DEFAULT_loopbackEnable; + p_TgecDriverParam->cmdFrameEnable = DEFAULT_cmdFrameEnable; + p_TgecDriverParam->rxErrorDiscard = DEFAULT_rxErrorDiscard; + p_TgecDriverParam->phyTxenaOn = DEFAULT_phyTxenaOn; + p_TgecDriverParam->sendIdleEnable = DEFAULT_sendIdleEnable; + p_TgecDriverParam->noLengthCheckEnable = DEFAULT_noLengthCheckEnable; + p_TgecDriverParam->lgthCheckNostdr = DEFAULT_lgthCheckNostdr; + p_TgecDriverParam->timeStampEnable = DEFAULT_timeStampEnable; + p_TgecDriverParam->rxSfdAny = DEFAULT_rxSfdAny; + p_TgecDriverParam->rxPblFwd = DEFAULT_rxPblFwd; + p_TgecDriverParam->txPblFwd = DEFAULT_txPblFwd; + + p_TgecDriverParam->txIpgLength = DEFAULT_txIpgLength; + p_TgecDriverParam->maxFrameLength = DEFAULT_maxFrameLength; + + p_TgecDriverParam->debugMode = DEFAULT_debugMode; + + p_TgecDriverParam->pauseTime = DEFAULT_pauseTime; + +#ifdef FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 + p_TgecDriverParam->skipFman11Workaround = DEFAULT_skipFman11Workaround; +#endif /* FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 */ +} + +/* ........................................................................... */ + +static void TgecErrException(t_Handle h_Tgec) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + uint32_t event; + t_TgecMemMap *p_TgecMemMap = p_Tgec->p_MemMap; + + event = GET_UINT32(p_TgecMemMap->ievent); + /* do not handle MDIO events */ + event &= ~(IMASK_MDIO_SCAN_EVENTMDIO | IMASK_MDIO_CMD_CMPL); + + event &= GET_UINT32(p_TgecMemMap->imask); + + WRITE_UINT32(p_TgecMemMap->ievent, event); + + if (event & IMASK_REM_FAULT) + p_Tgec->f_Exception(p_Tgec->h_App, e_FM_MAC_EX_10G_REM_FAULT); + if (event & IMASK_LOC_FAULT) + p_Tgec->f_Exception(p_Tgec->h_App, e_FM_MAC_EX_10G_LOC_FAULT); + if (event & IMASK_1TX_ECC_ER) + p_Tgec->f_Exception(p_Tgec->h_App, e_FM_MAC_EX_10G_1TX_ECC_ER); + if (event & IMASK_TX_FIFO_UNFL) + p_Tgec->f_Exception(p_Tgec->h_App, e_FM_MAC_EX_10G_TX_FIFO_UNFL); + if (event & IMASK_TX_FIFO_OVFL) + p_Tgec->f_Exception(p_Tgec->h_App, e_FM_MAC_EX_10G_TX_FIFO_OVFL); + if (event & IMASK_TX_ER) + p_Tgec->f_Exception(p_Tgec->h_App, e_FM_MAC_EX_10G_TX_ER); + if (event & IMASK_RX_FIFO_OVFL) + p_Tgec->f_Exception(p_Tgec->h_App, e_FM_MAC_EX_10G_RX_FIFO_OVFL); + if (event & IMASK_RX_ECC_ER) + p_Tgec->f_Exception(p_Tgec->h_App, e_FM_MAC_EX_10G_RX_ECC_ER); + if (event & IMASK_RX_JAB_FRM) + p_Tgec->f_Exception(p_Tgec->h_App, e_FM_MAC_EX_10G_RX_JAB_FRM); + if (event & IMASK_RX_OVRSZ_FRM) + p_Tgec->f_Exception(p_Tgec->h_App, e_FM_MAC_EX_10G_RX_OVRSZ_FRM); + if (event & IMASK_RX_RUNT_FRM) + p_Tgec->f_Exception(p_Tgec->h_App, e_FM_MAC_EX_10G_RX_RUNT_FRM); + if (event & IMASK_RX_FRAG_FRM) + p_Tgec->f_Exception(p_Tgec->h_App, e_FM_MAC_EX_10G_RX_FRAG_FRM); + if (event & IMASK_RX_LEN_ER) + p_Tgec->f_Exception(p_Tgec->h_App, e_FM_MAC_EX_10G_RX_LEN_ER); + if (event & IMASK_RX_CRC_ER) + p_Tgec->f_Exception(p_Tgec->h_App, e_FM_MAC_EX_10G_RX_CRC_ER); + if (event & IMASK_RX_ALIGN_ER) + p_Tgec->f_Exception(p_Tgec->h_App, e_FM_MAC_EX_10G_RX_ALIGN_ER); +} + +static void TgecException(t_Handle h_Tgec) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + uint32_t event; + t_TgecMemMap *p_TgecMemMap = p_Tgec->p_MemMap; + + event = GET_UINT32(p_TgecMemMap->ievent); + /* handle only MDIO events */ + event &= (IMASK_MDIO_SCAN_EVENTMDIO | IMASK_MDIO_CMD_CMPL); + event &= GET_UINT32(p_TgecMemMap->imask); + + WRITE_UINT32(p_TgecMemMap->ievent, event); + + if(event & IMASK_MDIO_SCAN_EVENTMDIO) + p_Tgec->f_Event(p_Tgec->h_App, e_FM_MAC_EX_10G_MDIO_SCAN_EVENTMDIO); + if(event & IMASK_MDIO_CMD_CMPL) + p_Tgec->f_Event(p_Tgec->h_App, e_FM_MAC_EX_10G_MDIO_CMD_CMPL); +} + +static void FreeInitResources(t_Tgec *p_Tgec) +{ + if ((p_Tgec->mdioIrq != 0) && (p_Tgec->mdioIrq != NO_IRQ)) + { + XX_DisableIntr(p_Tgec->mdioIrq); + XX_FreeIntr(p_Tgec->mdioIrq); + } + else if (p_Tgec->mdioIrq == 0) + REPORT_ERROR(MINOR, E_NOT_SUPPORTED, (NO_MSG)); + FmUnregisterIntr(p_Tgec->fmMacControllerDriver.h_Fm, e_FM_MOD_10G_MAC, p_Tgec->macId, e_FM_INTR_TYPE_ERR); + + /* release the driver's group hash table */ + FreeHashTable(p_Tgec->p_MulticastAddrHash); + p_Tgec->p_MulticastAddrHash = NULL; + + /* release the driver's individual hash table */ + FreeHashTable(p_Tgec->p_UnicastAddrHash); + p_Tgec->p_UnicastAddrHash = NULL; +} + +/* .............................................................................. */ + +static void HardwareClearAddrInPaddr(t_Tgec *p_Tgec, uint8_t paddrNum) +{ + if (paddrNum != 0) + return; /* At this time MAC has only one address */ + + WRITE_UINT32(p_Tgec->p_MemMap->mac_addr_2, 0x0); + WRITE_UINT32(p_Tgec->p_MemMap->mac_addr_3, 0x0); +} + +/* ........................................................................... */ + +static void HardwareAddAddrInPaddr(t_Tgec *p_Tgec, uint64_t *p_Addr, uint8_t paddrNum) +{ + uint32_t tmpReg32 = 0; + uint64_t addr = *p_Addr; + t_TgecMemMap *p_TgecMemMap = p_Tgec->p_MemMap; + + if (paddrNum != 0) + return; /* At this time MAC has only one address */ + + tmpReg32 = (uint32_t)(addr>>16); + SwapUint32P(&tmpReg32); + WRITE_UINT32(p_TgecMemMap->mac_addr_2, tmpReg32); + + tmpReg32 = (uint32_t)(addr); + SwapUint32P(&tmpReg32); + tmpReg32 >>= 16; + WRITE_UINT32(p_TgecMemMap->mac_addr_3, tmpReg32); +} + +/*****************************************************************************/ +/* 10G MAC API routines */ +/*****************************************************************************/ + +/* .............................................................................. */ + +static t_Error TgecEnable(t_Handle h_Tgec, e_CommMode mode) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + t_TgecMemMap *p_MemMap ; + uint32_t tmpReg32 = 0; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_MemMap, E_INVALID_HANDLE); + + p_MemMap= (t_TgecMemMap*)(p_Tgec->p_MemMap); + + tmpReg32 = GET_UINT32(p_MemMap->cmd_conf_ctrl); + + switch (mode) + { + case e_COMM_MODE_NONE: + tmpReg32 &= ~(CMD_CFG_TX_EN | CMD_CFG_RX_EN); + break; + case e_COMM_MODE_RX : + tmpReg32 |= CMD_CFG_RX_EN ; + break; + case e_COMM_MODE_TX : + tmpReg32 |= CMD_CFG_TX_EN ; + break; + case e_COMM_MODE_RX_AND_TX: + tmpReg32 |= (CMD_CFG_TX_EN | CMD_CFG_RX_EN); + break; + } + + WRITE_UINT32(p_MemMap->cmd_conf_ctrl, tmpReg32); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error TgecDisable (t_Handle h_Tgec, e_CommMode mode) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + t_TgecMemMap *p_MemMap ; + uint32_t tmpReg32 = 0; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_MemMap, E_INVALID_HANDLE); + + p_MemMap= (t_TgecMemMap*)(p_Tgec->p_MemMap); + + tmpReg32 = GET_UINT32(p_MemMap->cmd_conf_ctrl); + switch (mode) + { + case e_COMM_MODE_RX: + tmpReg32 &= ~CMD_CFG_RX_EN; + break; + case e_COMM_MODE_TX: + tmpReg32 &= ~CMD_CFG_TX_EN; + break; + case e_COMM_MODE_RX_AND_TX: + tmpReg32 &= ~(CMD_CFG_TX_EN | CMD_CFG_RX_EN); + break; + default: + RETURN_ERROR(MINOR, E_INVALID_SELECTION, NO_MSG); + } + WRITE_UINT32(p_MemMap->cmd_conf_ctrl, tmpReg32); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error TgecSetPromiscuous(t_Handle h_Tgec, bool newVal) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + t_TgecMemMap *p_TgecMemMap; + uint32_t tmpReg32; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Tgec->p_TgecDriverParam, E_NULL_POINTER); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_MemMap, E_NULL_POINTER); + + p_TgecMemMap = p_Tgec->p_MemMap; + + tmpReg32 = GET_UINT32(p_TgecMemMap->cmd_conf_ctrl); + + if (newVal) + tmpReg32 |= CMD_CFG_PROMIS_EN; + else + tmpReg32 &= ~CMD_CFG_PROMIS_EN; + + WRITE_UINT32(p_TgecMemMap->cmd_conf_ctrl, tmpReg32); + + return E_OK; +} + + +/*****************************************************************************/ +/* Tgec Configs modification functions */ +/*****************************************************************************/ + +/* .............................................................................. */ + +static t_Error TgecConfigLoopback(t_Handle h_Tgec, bool newVal) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_TgecDriverParam, E_INVALID_STATE); + +#ifdef FM_NO_TGEC_LOOPBACK + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_Tgec->fmMacControllerDriver.h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("no loopback in this chip rev!")); + } +#endif /* FM_NO_TGEC_LOOPBACK */ + + p_Tgec->p_TgecDriverParam->loopbackEnable = newVal; + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error TgecConfigWan(t_Handle h_Tgec, bool newVal) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_TgecDriverParam, E_INVALID_STATE); + + p_Tgec->p_TgecDriverParam->wanModeEnable = newVal; + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error TgecConfigMaxFrameLength(t_Handle h_Tgec, uint16_t newVal) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_TgecDriverParam, E_INVALID_STATE); + + p_Tgec->p_TgecDriverParam->maxFrameLength = newVal; + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error TgecConfigLengthCheck(t_Handle h_Tgec, bool newVal) +{ +#ifdef FM_LEN_CHECK_ERRATA_FMAN_SW002 +UNUSED(h_Tgec); + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("LengthCheck!")); + +#else + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + + UNUSED(newVal); + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_TgecDriverParam, E_INVALID_STATE); + + p_Tgec->p_TgecDriverParam->noLengthCheckEnable = !newVal; + + return E_OK; +#endif /* FM_LEN_CHECK_ERRATA_FMAN_SW002 */ +} + +/* .............................................................................. */ + +static t_Error TgecConfigException(t_Handle h_Tgec, e_FmMacExceptions exception, bool enable) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + uint32_t bitMask = 0; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_TgecDriverParam, E_INVALID_STATE); +#ifdef FM_10G_REM_N_LCL_FLT_EX_ERRATA_10GMAC001 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_Tgec->fmMacControllerDriver.h_Fm, &revInfo); + if((revInfo.majorRev <=2) && + enable && + ((exception == e_FM_MAC_EX_10G_LOC_FAULT) || (exception == e_FM_MAC_EX_10G_REM_FAULT))) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("e_FM_MAC_EX_10G_LOC_FAULT and e_FM_MAC_EX_10G_REM_FAULT !")); + } +#endif /* FM_10G_REM_N_LCL_FLT_EX_ERRATA_10GMAC001 */ + + GET_EXCEPTION_FLAG(bitMask, exception); + if(bitMask) + { + if (enable) + p_Tgec->exceptions |= bitMask; + else + p_Tgec->exceptions &= ~bitMask; + } + else + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Undefined exception")); + + return E_OK; +} + +#ifdef FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 +/* .............................................................................. */ + +static t_Error TgecConfigSkipFman11Workaround(t_Handle h_Tgec) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_TgecDriverParam, E_INVALID_STATE); + + p_Tgec->p_TgecDriverParam->skipFman11Workaround = TRUE; + + return E_OK; +} +#endif /* FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 */ + + +/*****************************************************************************/ +/* Tgec Run Time API functions */ +/*****************************************************************************/ + +/* .............................................................................. */ + +static t_Error TgecTxMacPause(t_Handle h_Tgec, uint16_t pauseTime) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + uint32_t ptv = 0; + t_TgecMemMap *p_MemMap; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(!p_Tgec->p_TgecDriverParam, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_MemMap, E_INVALID_STATE); + + p_MemMap = (t_TgecMemMap*)(p_Tgec->p_MemMap); + + ptv = (uint32_t)pauseTime; + + WRITE_UINT32(p_MemMap->pause_quant, ptv); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error TgecRxIgnoreMacPause(t_Handle h_Tgec, bool en) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + t_TgecMemMap *p_MemMap; + uint32_t tmpReg32; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(!p_Tgec->p_TgecDriverParam, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_MemMap, E_INVALID_STATE); + + p_MemMap = (t_TgecMemMap*)(p_Tgec->p_MemMap); + tmpReg32 = GET_UINT32(p_MemMap->cmd_conf_ctrl); + if (en) + tmpReg32 |= CMD_CFG_PAUSE_IGNORE; + else + tmpReg32 &= ~CMD_CFG_PAUSE_IGNORE; + WRITE_UINT32(p_MemMap->cmd_conf_ctrl, tmpReg32); + + return E_OK; +} + +/* Counters handling */ +/* .............................................................................. */ + +static t_Error TgecGetStatistics(t_Handle h_Tgec, t_FmMacStatistics *p_Statistics) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + t_TgecMemMap *p_TgecMemMap; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_NULL_POINTER); + SANITY_CHECK_RETURN_ERROR(p_Statistics, E_NULL_POINTER); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_MemMap, E_NULL_POINTER); + + p_TgecMemMap = p_Tgec->p_MemMap; + + p_Statistics->eStatPkts64 = GET_UINT64(p_TgecMemMap->R64); + p_Statistics->eStatPkts65to127 = GET_UINT64(p_TgecMemMap->R127); + p_Statistics->eStatPkts128to255 = GET_UINT64(p_TgecMemMap->R255); + p_Statistics->eStatPkts256to511 = GET_UINT64(p_TgecMemMap->R511); + p_Statistics->eStatPkts512to1023 = GET_UINT64(p_TgecMemMap->R1023); + p_Statistics->eStatPkts1024to1518 = GET_UINT64(p_TgecMemMap->R1518); + p_Statistics->eStatPkts1519to1522 = GET_UINT64(p_TgecMemMap->R1519X); +/* */ + p_Statistics->eStatFragments = GET_UINT64(p_TgecMemMap->TRFRG); + p_Statistics->eStatJabbers = GET_UINT64(p_TgecMemMap->TRJBR); + + p_Statistics->eStatsDropEvents = GET_UINT64(p_TgecMemMap->RDRP); + p_Statistics->eStatCRCAlignErrors = GET_UINT64(p_TgecMemMap->RALN); + + p_Statistics->eStatUndersizePkts = GET_UINT64(p_TgecMemMap->TRUND); + p_Statistics->eStatOversizePkts = GET_UINT64(p_TgecMemMap->TROVR); +/* Pause */ + p_Statistics->reStatPause = GET_UINT64(p_TgecMemMap->RXPF); + p_Statistics->teStatPause = GET_UINT64(p_TgecMemMap->TXPF); + + +/* MIB II */ + p_Statistics->ifInOctets = GET_UINT64(p_TgecMemMap->ROCT); + p_Statistics->ifInMcastPkts = GET_UINT64(p_TgecMemMap->RMCA); + p_Statistics->ifInBcastPkts = GET_UINT64(p_TgecMemMap->RBCA); + p_Statistics->ifInPkts = GET_UINT64(p_TgecMemMap->RUCA) + + p_Statistics->ifInMcastPkts + + p_Statistics->ifInBcastPkts; + p_Statistics->ifInDiscards = 0; + p_Statistics->ifInErrors = GET_UINT64(p_TgecMemMap->RERR); + + p_Statistics->ifOutOctets = GET_UINT64(p_TgecMemMap->TOCT); + p_Statistics->ifOutMcastPkts = GET_UINT64(p_TgecMemMap->TMCA); + p_Statistics->ifOutBcastPkts = GET_UINT64(p_TgecMemMap->TBCA); + p_Statistics->ifOutPkts = GET_UINT64(p_TgecMemMap->TUCA); + p_Statistics->ifOutDiscards = 0; + p_Statistics->ifOutErrors = GET_UINT64(p_TgecMemMap->TERR); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error TgecEnable1588TimeStamp(t_Handle h_Tgec) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + t_TgecMemMap *p_TgecMemMap; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Tgec->p_TgecDriverParam, E_INVALID_STATE); + + p_TgecMemMap = p_Tgec->p_MemMap; + SANITY_CHECK_RETURN_ERROR(p_TgecMemMap, E_INVALID_HANDLE); + + WRITE_UINT32(p_TgecMemMap->cmd_conf_ctrl, GET_UINT32(p_TgecMemMap->cmd_conf_ctrl) | CMD_CFG_EN_TIMESTAMP); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error TgecDisable1588TimeStamp(t_Handle h_Tgec) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + t_TgecMemMap *p_TgecMemMap; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Tgec->p_TgecDriverParam, E_INVALID_STATE); + + p_TgecMemMap = p_Tgec->p_MemMap; + SANITY_CHECK_RETURN_ERROR(p_TgecMemMap, E_INVALID_HANDLE); + + WRITE_UINT32(p_TgecMemMap->cmd_conf_ctrl, GET_UINT32(p_TgecMemMap->cmd_conf_ctrl) & ~CMD_CFG_EN_TIMESTAMP); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error TgecModifyMacAddress (t_Handle h_Tgec, t_EnetAddr *p_EnetAddr) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + t_TgecMemMap *p_TgecMemMap; + uint32_t tmpReg32 = 0; + uint64_t addr; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_NULL_POINTER); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_MemMap, E_NULL_POINTER); + + p_TgecMemMap = p_Tgec->p_MemMap; + + /* Initialize MAC Station Address registers (1 & 2) */ + /* Station address have to be swapped (big endian to little endian */ + + addr = ((*(uint64_t *)p_EnetAddr) >> 16); + p_Tgec->addr = addr; + + tmpReg32 = (uint32_t)(addr>>16); + SwapUint32P(&tmpReg32); + WRITE_UINT32(p_TgecMemMap->mac_addr_0, tmpReg32); + + tmpReg32 = (uint32_t)(addr); + SwapUint32P(&tmpReg32); + tmpReg32 >>= 16; + WRITE_UINT32(p_TgecMemMap->mac_addr_1, tmpReg32); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error TgecResetCounters (t_Handle h_Tgec) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + t_TgecMemMap *p_MemMap ; + uint32_t tmpReg32, cmdConfCtrl; + int i; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_MemMap, E_INVALID_HANDLE); + + p_MemMap= (t_TgecMemMap*)(p_Tgec->p_MemMap); + + cmdConfCtrl = GET_UINT32(p_MemMap->cmd_conf_ctrl); + + cmdConfCtrl |= CMD_CFG_STAT_CLR; + + WRITE_UINT32(p_MemMap->cmd_conf_ctrl, cmdConfCtrl); + + for (i=0; i<1000; i++) + { + tmpReg32 = GET_UINT32(p_MemMap->cmd_conf_ctrl); + if (!(tmpReg32 & CMD_CFG_STAT_CLR)) + break; + } + + cmdConfCtrl &= ~CMD_CFG_STAT_CLR; + WRITE_UINT32(p_MemMap->cmd_conf_ctrl, cmdConfCtrl); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error TgecAddExactMatchMacAddress(t_Handle h_Tgec, t_EnetAddr *p_EthAddr) +{ + t_Tgec *p_Tgec = (t_Tgec *) h_Tgec; + uint64_t ethAddr; + uint8_t paddrNum; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + + ethAddr = ((*(uint64_t *)p_EthAddr) >> 16); + + if (ethAddr & GROUP_ADDRESS) + /* Multicast address has no effect in PADDR */ + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Multicast address")); + + /* Make sure no PADDR contains this address */ + for (paddrNum = 0; paddrNum < TGEC_NUM_OF_PADDRS; paddrNum++) + { + if (p_Tgec->indAddrRegUsed[paddrNum]) + { + if (p_Tgec->paddr[paddrNum] == ethAddr) + { + RETURN_ERROR(MAJOR, E_ALREADY_EXISTS, NO_MSG); + } + } + } + + /* Find first unused PADDR */ + for (paddrNum = 0; paddrNum < TGEC_NUM_OF_PADDRS; paddrNum++) + { + if (!(p_Tgec->indAddrRegUsed[paddrNum])) + { + /* mark this PADDR as used */ + p_Tgec->indAddrRegUsed[paddrNum] = TRUE; + /* store address */ + p_Tgec->paddr[paddrNum] = ethAddr; + + /* put in hardware */ + HardwareAddAddrInPaddr(p_Tgec, ðAddr, paddrNum); + p_Tgec->numOfIndAddrInRegs++; + + return E_OK; + } + } + + /* No free PADDR */ + RETURN_ERROR(MAJOR, E_FULL, NO_MSG); +} + +/* .............................................................................. */ + +static t_Error TgecDelExactMatchMacAddress(t_Handle h_Tgec, t_EnetAddr *p_EthAddr) +{ + t_Tgec *p_Tgec = (t_Tgec *) h_Tgec; + uint64_t ethAddr; + uint8_t paddrNum; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_MemMap, E_INVALID_HANDLE); + + ethAddr = ((*(uint64_t *)p_EthAddr) >> 16); + + /* Find used PADDR containing this address */ + for (paddrNum = 0; paddrNum < TGEC_NUM_OF_PADDRS; paddrNum++) + { + if ((p_Tgec->indAddrRegUsed[paddrNum]) && + (p_Tgec->paddr[paddrNum] == ethAddr)) + { + /* mark this PADDR as not used */ + p_Tgec->indAddrRegUsed[paddrNum] = FALSE; + /* clear in hardware */ + HardwareClearAddrInPaddr(p_Tgec, paddrNum); + p_Tgec->numOfIndAddrInRegs--; + + return E_OK; + } + } + + RETURN_ERROR(MAJOR, E_NOT_FOUND, NO_MSG); +} + +/* .............................................................................. */ + +static t_Error TgecAddHashMacAddress(t_Handle h_Tgec, t_EnetAddr *p_EthAddr) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + t_TgecMemMap *p_TgecMemMap; + t_EthHashEntry *p_HashEntry; + uint32_t crc; + uint32_t hash; + uint64_t ethAddr; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_NULL_POINTER); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_MemMap, E_NULL_POINTER); + + p_TgecMemMap = p_Tgec->p_MemMap; + ethAddr = ((*(uint64_t *)p_EthAddr) >> 16); + + if (!(ethAddr & GROUP_ADDRESS)) + /* Unicast addresses not supported in hash */ + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("Unicast Address")); + + /* CRC calculation */ + GET_MAC_ADDR_CRC(ethAddr, crc); + crc = MIRROR_32(crc); + + hash = (crc >> HASH_CTRL_MCAST_SHIFT) & HASH_ADDR_MASK; /* Take 9 MSB bits */ + + /* Create element to be added to the driver hash table */ + p_HashEntry = (t_EthHashEntry *)XX_Malloc(sizeof(t_EthHashEntry)); + p_HashEntry->addr = ethAddr; + INIT_LIST(&p_HashEntry->node); + + LIST_AddToTail(&(p_HashEntry->node), &(p_Tgec->p_MulticastAddrHash->p_Lsts[hash])); + WRITE_UINT32(p_TgecMemMap->hashtable_ctrl, (hash | HASH_CTRL_MCAST_EN)); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error TgecDelHashMacAddress(t_Handle h_Tgec, t_EnetAddr *p_EthAddr) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + t_TgecMemMap *p_TgecMemMap; + t_EthHashEntry *p_HashEntry = NULL; + t_List *p_Pos; + uint32_t crc; + uint32_t hash; + uint64_t ethAddr; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_NULL_POINTER); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_MemMap, E_NULL_POINTER); + + p_TgecMemMap = p_Tgec->p_MemMap; + ethAddr = ((*(uint64_t *)p_EthAddr) >> 16); + + /* CRC calculation */ + GET_MAC_ADDR_CRC(ethAddr, crc); + crc = MIRROR_32(crc); + + hash = (crc >> HASH_CTRL_MCAST_SHIFT) & HASH_ADDR_MASK; /* Take 9 MSB bits */ + + LIST_FOR_EACH(p_Pos, &(p_Tgec->p_MulticastAddrHash->p_Lsts[hash])) + { + + p_HashEntry = ETH_HASH_ENTRY_OBJ(p_Pos); + if(p_HashEntry->addr == ethAddr) + { + LIST_DelAndInit(&p_HashEntry->node); + XX_Free(p_HashEntry); + break; + } + } + if(LIST_IsEmpty(&p_Tgec->p_MulticastAddrHash->p_Lsts[hash])) + WRITE_UINT32(p_TgecMemMap->hashtable_ctrl, (hash & ~HASH_CTRL_MCAST_EN)); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error TgecGetId(t_Handle h_Tgec, uint32_t *macId) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Tgec->p_TgecDriverParam, E_NULL_POINTER); + + UNUSED(p_Tgec); + UNUSED(macId); + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("TgecGetId Not Supported")); +} + +/* .............................................................................. */ + +static t_Error TgecGetVersion(t_Handle h_Tgec, uint32_t *macVersion) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + t_TgecMemMap *p_TgecMemMap; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Tgec->p_TgecDriverParam, E_NULL_POINTER); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_MemMap, E_NULL_POINTER); + + p_TgecMemMap = p_Tgec->p_MemMap; + *macVersion = GET_UINT32(p_TgecMemMap->tgec_id); + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error TgecSetExcpetion(t_Handle h_Tgec, e_FmMacExceptions exception, bool enable) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + uint32_t bitMask = 0, tmpReg; + t_TgecMemMap *p_TgecMemMap; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Tgec->p_TgecDriverParam, E_NULL_POINTER); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_MemMap, E_NULL_POINTER); + + p_TgecMemMap = p_Tgec->p_MemMap; +#ifdef FM_10G_REM_N_LCL_FLT_EX_ERRATA_10GMAC001 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_Tgec->fmMacControllerDriver.h_Fm, &revInfo); + if((revInfo.majorRev <=2) && + enable && + ((exception == e_FM_MAC_EX_10G_LOC_FAULT) || (exception == e_FM_MAC_EX_10G_REM_FAULT))) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("e_FM_MAC_EX_10G_LOC_FAULT and e_FM_MAC_EX_10G_REM_FAULT !")); + } +#endif /* FM_10G_REM_N_LCL_FLT_EX_ERRATA_10GMAC001 */ + + GET_EXCEPTION_FLAG(bitMask, exception); + if(bitMask) + { + if (enable) + p_Tgec->exceptions |= bitMask; + else + p_Tgec->exceptions &= ~bitMask; + } + else + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Undefined exception")); + + tmpReg = GET_UINT32(p_TgecMemMap->imask); + if(enable) + tmpReg |= bitMask; + else + tmpReg &= ~bitMask; + WRITE_UINT32(p_TgecMemMap->imask, tmpReg); + return E_OK; +} + +/* .............................................................................. */ + +static uint16_t TgecGetMaxFrameLength(t_Handle h_Tgec) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + + SANITY_CHECK_RETURN_VALUE(p_Tgec, E_INVALID_HANDLE, 0); + + return (uint16_t)GET_UINT32(p_Tgec->p_MemMap->maxfrm); +} + +/* .............................................................................. */ + +#ifdef FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 +static t_Error TgecTxEccWorkaround(t_Tgec *p_Tgec) +{ + t_Error err; + + XX_Print("Applying 10G tx-ecc error workaround (10GMAC-A004) ..."); + /* enable and set promiscuous */ + WRITE_UINT32(p_Tgec->p_MemMap->cmd_conf_ctrl, CMD_CFG_PROMIS_EN | CMD_CFG_TX_EN | CMD_CFG_RX_EN); + err = Fm10GTxEccWorkaround(p_Tgec->fmMacControllerDriver.h_Fm, p_Tgec->macId); + /* disable */ + WRITE_UINT32(p_Tgec->p_MemMap->cmd_conf_ctrl, 0); + if (err) + XX_Print("FAILED!\n"); + else + XX_Print("done.\n"); + TgecResetCounters (p_Tgec); + + return err; +} +#endif /* FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 */ + +/* .............................................................................. */ + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +static t_Error TgecDumpRegs(t_Handle h_Tgec) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + + DECLARE_DUMP; + + if (p_Tgec->p_MemMap) + { + DUMP_TITLE(p_Tgec->p_MemMap, ("10G MAC %d: ", p_Tgec->macId)); + DUMP_VAR(p_Tgec->p_MemMap, tgec_id); + DUMP_VAR(p_Tgec->p_MemMap, scratch); + DUMP_VAR(p_Tgec->p_MemMap, cmd_conf_ctrl); + DUMP_VAR(p_Tgec->p_MemMap, mac_addr_0); + DUMP_VAR(p_Tgec->p_MemMap, mac_addr_1); + DUMP_VAR(p_Tgec->p_MemMap, maxfrm); + DUMP_VAR(p_Tgec->p_MemMap, pause_quant); + DUMP_VAR(p_Tgec->p_MemMap, rx_fifo_sections); + DUMP_VAR(p_Tgec->p_MemMap, tx_fifo_sections); + DUMP_VAR(p_Tgec->p_MemMap, rx_fifo_almost_f_e); + DUMP_VAR(p_Tgec->p_MemMap, tx_fifo_almost_f_e); + DUMP_VAR(p_Tgec->p_MemMap, hashtable_ctrl); + DUMP_VAR(p_Tgec->p_MemMap, mdio_cfg_status); + DUMP_VAR(p_Tgec->p_MemMap, mdio_command); + DUMP_VAR(p_Tgec->p_MemMap, mdio_data); + DUMP_VAR(p_Tgec->p_MemMap, mdio_regaddr); + DUMP_VAR(p_Tgec->p_MemMap, status); + DUMP_VAR(p_Tgec->p_MemMap, tx_ipg_len); + DUMP_VAR(p_Tgec->p_MemMap, mac_addr_2); + DUMP_VAR(p_Tgec->p_MemMap, mac_addr_3); + DUMP_VAR(p_Tgec->p_MemMap, rx_fifo_ptr_rd); + DUMP_VAR(p_Tgec->p_MemMap, rx_fifo_ptr_wr); + DUMP_VAR(p_Tgec->p_MemMap, tx_fifo_ptr_rd); + DUMP_VAR(p_Tgec->p_MemMap, tx_fifo_ptr_wr); + DUMP_VAR(p_Tgec->p_MemMap, imask); + DUMP_VAR(p_Tgec->p_MemMap, ievent); + DUMP_VAR(p_Tgec->p_MemMap, udp_port); + DUMP_VAR(p_Tgec->p_MemMap, type_1588v2); + } + + return E_OK; +} +#endif /* (defined(DEBUG_ERRORS) && ... */ + + +/*****************************************************************************/ +/* FM Init & Free API */ +/*****************************************************************************/ + +/* .............................................................................. */ + +static t_Error TgecInit(t_Handle h_Tgec) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + t_TgecDriverParam *p_TgecDriverParam; + t_TgecMemMap *p_MemMap; + uint64_t addr; + uint32_t tmpReg32; + t_Error err; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_TgecDriverParam, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_MemMap, E_INVALID_HANDLE); + +#ifdef FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 + if (!p_Tgec->p_TgecDriverParam->skipFman11Workaround && + ((err = TgecTxEccWorkaround(p_Tgec)) != E_OK)) +#ifdef NCSW_LINUX + { + /* the workaround fails in simics, just report and continue initialization */ + REPORT_ERROR(MAJOR, err, ("TgecTxEccWorkaround FAILED, skipping workaround")); + } +#else + { + FreeInitResources(p_Tgec); + RETURN_ERROR(MAJOR, err, ("TgecTxEccWorkaround FAILED")); + } +#endif +#endif /* FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 */ + + CHECK_INIT_PARAMETERS(p_Tgec, CheckInitParameters); + + p_TgecDriverParam = p_Tgec->p_TgecDriverParam; + p_MemMap = p_Tgec->p_MemMap; + + /* MAC Address */ + addr = p_Tgec->addr; + tmpReg32 = (uint32_t)(addr>>16); + SwapUint32P(&tmpReg32); + WRITE_UINT32(p_MemMap->mac_addr_0, tmpReg32); + + tmpReg32 = (uint32_t)(addr); + SwapUint32P(&tmpReg32); + tmpReg32 >>= 16; + WRITE_UINT32(p_MemMap->mac_addr_1, tmpReg32); + + /* Config */ + tmpReg32 = 0; + if (p_TgecDriverParam->wanModeEnable) + tmpReg32 |= CMD_CFG_WAN_MODE; + if (p_TgecDriverParam->promiscuousModeEnable) + tmpReg32 |= CMD_CFG_PROMIS_EN; + if (p_TgecDriverParam->pauseForwardEnable) + tmpReg32 |= CMD_CFG_PAUSE_FWD; + if (p_TgecDriverParam->pauseIgnore) + tmpReg32 |= CMD_CFG_PAUSE_IGNORE; + if (p_TgecDriverParam->txAddrInsEnable) + tmpReg32 |= CMD_CFG_TX_ADDR_INS; + if (p_TgecDriverParam->loopbackEnable) + tmpReg32 |= CMD_CFG_LOOPBACK_EN; + if (p_TgecDriverParam->cmdFrameEnable) + tmpReg32 |= CMD_CFG_CMD_FRM_EN; + if (p_TgecDriverParam->rxErrorDiscard) + tmpReg32 |= CMD_CFG_RX_ER_DISC; + if (p_TgecDriverParam->phyTxenaOn) + tmpReg32 |= CMD_CFG_PHY_TX_EN; + if (p_TgecDriverParam->sendIdleEnable) + tmpReg32 |= CMD_CFG_SEND_IDLE; + if (p_TgecDriverParam->noLengthCheckEnable) + tmpReg32 |= CMD_CFG_NO_LEN_CHK; + if (p_TgecDriverParam->lgthCheckNostdr) + tmpReg32 |= CMD_CFG_LEN_CHK_NOSTDR; + if (p_TgecDriverParam->timeStampEnable) + tmpReg32 |= CMD_CFG_EN_TIMESTAMP; + if (p_TgecDriverParam->rxSfdAny) + tmpReg32 |= RX_SFD_ANY; + if (p_TgecDriverParam->rxPblFwd) + tmpReg32 |= CMD_CFG_RX_PBL_FWD; + if (p_TgecDriverParam->txPblFwd) + tmpReg32 |= CMD_CFG_TX_PBL_FWD; + tmpReg32 |= 0x40; + WRITE_UINT32(p_MemMap->cmd_conf_ctrl, tmpReg32); + + /* Max Frame Length */ + WRITE_UINT32(p_MemMap->maxfrm, (uint32_t)p_TgecDriverParam->maxFrameLength); + err = FmSetMacMaxFrame(p_Tgec->fmMacControllerDriver.h_Fm, e_FM_MAC_10G, p_Tgec->fmMacControllerDriver.macId, p_TgecDriverParam->maxFrameLength); + if(err) + { + FreeInitResources(p_Tgec); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + /* Pause Time */ + WRITE_UINT32(p_MemMap->pause_quant, p_TgecDriverParam->pauseTime); + +#ifdef FM_TX_FIFO_CORRUPTION_ERRATA_10GMAC_A007 + WRITE_UINT32(p_Tgec->p_MemMap->tx_ipg_len, + (GET_UINT32(p_Tgec->p_MemMap->tx_ipg_len) & ~TX_IPG_LENGTH_MASK) | DEFAULT_txIpgLength); +#endif /* FM_TX_FIFO_CORRUPTION_ERRATA_10GMAC_A007 */ + + /* Configure MII */ + tmpReg32 = GET_UINT32(p_Tgec->p_MiiMemMap->mdio_cfg_status); +#ifdef FM_10G_MDIO_HOLD_ERRATA_XAUI3 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_Tgec->fmMacControllerDriver.h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + tmpReg32 |= (MIIMCOM_MDIO_HOLD_4_REG_CLK << 2); + } +#endif /* FM_10G_MDIO_HOLD_ERRATA_XAUI3 */ + tmpReg32 &= ~MIIMCOM_DIV_MASK; + /* (one half of fm clock => 2.5Mhz) */ + tmpReg32 |=((((p_Tgec->fmMacControllerDriver.clkFreq*10)/2)/25) << MIIMCOM_DIV_SHIFT); + WRITE_UINT32(p_Tgec->p_MiiMemMap->mdio_cfg_status, tmpReg32); + + p_Tgec->p_MulticastAddrHash = AllocHashTable(HASH_TABLE_SIZE); + if(!p_Tgec->p_MulticastAddrHash) + { + FreeInitResources(p_Tgec); + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("allocation hash table is FAILED")); + } + + p_Tgec->p_UnicastAddrHash = AllocHashTable(HASH_TABLE_SIZE); + if(!p_Tgec->p_UnicastAddrHash) + { + FreeInitResources(p_Tgec); + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("allocation hash table is FAILED")); + } + + /* interrupts */ +#ifdef FM_10G_REM_N_LCL_FLT_EX_ERRATA_10GMAC001 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_Tgec->fmMacControllerDriver.h_Fm, &revInfo); + if (revInfo.majorRev <=2) + p_Tgec->exceptions &= ~(IMASK_REM_FAULT | IMASK_LOC_FAULT); + } +#endif /* FM_10G_REM_N_LCL_FLT_EX_ERRATA_10GMAC001 */ + WRITE_UINT32(p_MemMap->ievent, EVENTS_MASK); + WRITE_UINT32(p_MemMap->imask, p_Tgec->exceptions); + + FmRegisterIntr(p_Tgec->fmMacControllerDriver.h_Fm, e_FM_MOD_10G_MAC, p_Tgec->macId, e_FM_INTR_TYPE_ERR, TgecErrException , p_Tgec); + if ((p_Tgec->mdioIrq != 0) && (p_Tgec->mdioIrq != NO_IRQ)) + { + XX_SetIntr(p_Tgec->mdioIrq, TgecException, p_Tgec); + XX_EnableIntr(p_Tgec->mdioIrq); + } + else if (p_Tgec->mdioIrq == 0) + REPORT_ERROR(MINOR, E_NOT_SUPPORTED, (NO_MSG)); + + XX_Free(p_TgecDriverParam); + p_Tgec->p_TgecDriverParam = NULL; + + return E_OK; +} + +/* .............................................................................. */ + +static t_Error TgecFree(t_Handle h_Tgec) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + + FreeInitResources(p_Tgec); + + if (p_Tgec->p_TgecDriverParam) + { + XX_Free(p_Tgec->p_TgecDriverParam); + p_Tgec->p_TgecDriverParam = NULL; + } + XX_Free (p_Tgec); + + return E_OK; +} + +/* .............................................................................. */ + +static void InitFmMacControllerDriver(t_FmMacControllerDriver *p_FmMacControllerDriver) +{ + p_FmMacControllerDriver->f_FM_MAC_Init = TgecInit; + p_FmMacControllerDriver->f_FM_MAC_Free = TgecFree; + + p_FmMacControllerDriver->f_FM_MAC_ConfigLoopback = TgecConfigLoopback; + p_FmMacControllerDriver->f_FM_MAC_ConfigMaxFrameLength = TgecConfigMaxFrameLength; + + p_FmMacControllerDriver->f_FM_MAC_ConfigWan = TgecConfigWan; + + p_FmMacControllerDriver->f_FM_MAC_ConfigPadAndCrc = NULL; /* TGEC always works with pad+crc */ + p_FmMacControllerDriver->f_FM_MAC_ConfigHalfDuplex = NULL; /* half-duplex is not supported in xgec */ + p_FmMacControllerDriver->f_FM_MAC_ConfigLengthCheck = TgecConfigLengthCheck; + p_FmMacControllerDriver->f_FM_MAC_ConfigException = TgecConfigException; + +#ifdef FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 + p_FmMacControllerDriver->f_FM_MAC_ConfigSkipFman11Workaround= TgecConfigSkipFman11Workaround; +#endif /* FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 */ + + p_FmMacControllerDriver->f_FM_MAC_SetException = TgecSetExcpetion; + + p_FmMacControllerDriver->f_FM_MAC_Enable1588TimeStamp = TgecEnable1588TimeStamp; + p_FmMacControllerDriver->f_FM_MAC_Disable1588TimeStamp = TgecDisable1588TimeStamp; + + p_FmMacControllerDriver->f_FM_MAC_SetPromiscuous = TgecSetPromiscuous; + p_FmMacControllerDriver->f_FM_MAC_AdjustLink = NULL; + + p_FmMacControllerDriver->f_FM_MAC_Enable = TgecEnable; + p_FmMacControllerDriver->f_FM_MAC_Disable = TgecDisable; + + p_FmMacControllerDriver->f_FM_MAC_SetTxAutoPauseFrames = TgecTxMacPause; + p_FmMacControllerDriver->f_FM_MAC_SetRxIgnorePauseFrames = TgecRxIgnoreMacPause; + + p_FmMacControllerDriver->f_FM_MAC_ResetCounters = TgecResetCounters; + p_FmMacControllerDriver->f_FM_MAC_GetStatistics = TgecGetStatistics; + + p_FmMacControllerDriver->f_FM_MAC_ModifyMacAddr = TgecModifyMacAddress; + p_FmMacControllerDriver->f_FM_MAC_AddHashMacAddr = TgecAddHashMacAddress; + p_FmMacControllerDriver->f_FM_MAC_RemoveHashMacAddr = TgecDelHashMacAddress; + p_FmMacControllerDriver->f_FM_MAC_AddExactMatchMacAddr = TgecAddExactMatchMacAddress; + p_FmMacControllerDriver->f_FM_MAC_RemovelExactMatchMacAddr = TgecDelExactMatchMacAddress; + p_FmMacControllerDriver->f_FM_MAC_GetId = TgecGetId; + p_FmMacControllerDriver->f_FM_MAC_GetVersion = TgecGetVersion; + p_FmMacControllerDriver->f_FM_MAC_GetMaxFrameLength = TgecGetMaxFrameLength; + + p_FmMacControllerDriver->f_FM_MAC_MII_WritePhyReg = TGEC_MII_WritePhyReg; + p_FmMacControllerDriver->f_FM_MAC_MII_ReadPhyReg = TGEC_MII_ReadPhyReg; + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) + p_FmMacControllerDriver->f_FM_MAC_DumpRegs = TgecDumpRegs; +#endif /* (defined(DEBUG_ERRORS) && ... */ +} + + +/*****************************************************************************/ +/* Tgec Config Main Entry */ +/*****************************************************************************/ + +/* .............................................................................. */ + +t_Handle TGEC_Config(t_FmMacParams *p_FmMacParam) +{ + t_Tgec *p_Tgec; + t_TgecDriverParam *p_TgecDriverParam; + uintptr_t baseAddr; + uint8_t i; + + SANITY_CHECK_RETURN_VALUE(p_FmMacParam, E_NULL_POINTER, NULL); + + baseAddr = p_FmMacParam->baseAddr; + /* allocate memory for the UCC GETH data structure. */ + p_Tgec = (t_Tgec *) XX_Malloc(sizeof(t_Tgec)); + if (!p_Tgec) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("10G MAC driver structure")); + return NULL; + } + /* Zero out * p_Tgec */ + memset(p_Tgec, 0, sizeof(t_Tgec)); + InitFmMacControllerDriver(&p_Tgec->fmMacControllerDriver); + + /* allocate memory for the 10G MAC driver parameters data structure. */ + p_TgecDriverParam = (t_TgecDriverParam *) XX_Malloc(sizeof(t_TgecDriverParam)); + if (!p_TgecDriverParam) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("10G MAC driver parameters")); + TgecFree(p_Tgec); + return NULL; + } + /* Zero out */ + memset(p_TgecDriverParam, 0, sizeof(t_TgecDriverParam)); + + /* Plant parameter structure pointer */ + p_Tgec->p_TgecDriverParam = p_TgecDriverParam; + + SetDefaultParam(p_TgecDriverParam); + + for (i=0; i < sizeof(p_FmMacParam->addr); i++) + p_Tgec->addr |= ((uint64_t)p_FmMacParam->addr[i] << ((5-i) * 8)); + + p_Tgec->p_MemMap = (t_TgecMemMap *)UINT_TO_PTR(baseAddr); + p_Tgec->p_MiiMemMap = (t_TgecMiiAccessMemMap *)UINT_TO_PTR(baseAddr + TGEC_TO_MII_OFFSET); + p_Tgec->enetMode = p_FmMacParam->enetMode; + p_Tgec->macId = p_FmMacParam->macId; + p_Tgec->exceptions = DEFAULT_exceptions; + p_Tgec->mdioIrq = p_FmMacParam->mdioIrq; + p_Tgec->f_Exception = p_FmMacParam->f_Exception; + p_Tgec->f_Event = p_FmMacParam->f_Event; + p_Tgec->h_App = p_FmMacParam->h_App; + + return p_Tgec; +} --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/tgec.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/tgec.h @@ -0,0 +1,482 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File tgec.h + + @Description FM 10G MAC ... +*//***************************************************************************/ +#ifndef __TGEC_H +#define __TGEC_H + +#include "std_ext.h" +#include "error_ext.h" +#include "list_ext.h" +#include "tgec_mii_acc.h" +#include "fm_mac.h" + + +/* Interrupt Mask Register (IMASK) */ +#define IMASK_MDIO_SCAN_EVENTMDIO 0x00010000 /* MDIO_SCAN_EVENTMDIO scan event interrupt mask. + * 0 masked + * 1 enabled + */ +#define IMASK_MDIO_CMD_CMPL 0x00008000 /* 16 MDIO_CMD_CMPL MDIO command completion interrupt mask. + * 0 masked + * 1 enabled + */ +#define IMASK_REM_FAULT 0x00004000 /* 17 REM_FAULT Remote fault interrupt mask. + * 0 masked + * 1 enabled + */ +#define IMASK_LOC_FAULT 0x00002000 /* 18 LOC_FAULT Local fault interrupt mask. + * 0 masked + * 1 enabled + */ +#define IMASK_1TX_ECC_ER 0x00001000 /* 19 TX_ECC_ER Transmit frame ECC error interrupt mask. + * 0 masked + * 1 enabled + */ +#define IMASK_TX_FIFO_UNFL 0x00000800 /* 20 TX_FIFO_UNFL Transmit FIFO underflow interrupt mask. + * 0 masked + * 1 enabled + */ +#define IMASK_TX_FIFO_OVFL 0x00000400 /* 21 TX_FIFO_OVFL Transmit FIFO overflow interrupt mask. + * 0 masked + * 1 enabled + */ +#define IMASK_TX_ER 0x00000200 /* 22 TX_ER Transmit frame error interrupt mask. + * 0 masked + * 1 enabled + */ +#define IMASK_RX_FIFO_OVFL 0x00000100 /* 23 RX_FIFO_OVFL Receive FIFO overflow interrupt mask. + * 0 masked + * 1 enabled + */ +#define IMASK_RX_ECC_ER 0x00000080 /* 24 RX_ECC_ER Receive frame ECC error interrupt mask. + * 0 masked + * 1 enabled + */ +#define IMASK_RX_JAB_FRM 0x00000040 /* 25 RX_JAB_FRM Receive jabber frame interrupt mask. + * 0 masked + * 1 enabled + */ +#define IMASK_RX_OVRSZ_FRM 0x00000020 /* 26 RX_OVRSZ_FRM Receive oversized frame interrupt mask. + * 0 masked + * 1 enabled + */ +#define IMASK_RX_RUNT_FRM 0x00000010 /* 27 RX_RUNT_FRM Receive runt frame interrupt mask. + * 0 masked + * 1 enabled + */ +#define IMASK_RX_FRAG_FRM 0x00000008 /* 28 RX_FRAG_FRM Receive fragment frame interrupt mask. + * 0 masked + * 1 enabled + */ +#define IMASK_RX_LEN_ER 0x00000004 /* 29 RX_LEN_ER Receive payload length error interrupt mask. + * 0 masked + * 1 enabled + */ +#define IMASK_RX_CRC_ER 0x00000002 /* 30 RX_CRC_ER Receive CRC error interrupt mask. + * 0 masked + * 1 enabled + */ +#define IMASK_RX_ALIGN_ER 0x00000001 /* 31 RX_ALIGN_ER Receive alignment error interrupt mask. + * 0 masked + * 1 enabled + */ + +#define EVENTS_MASK ((uint32_t)(IMASK_MDIO_SCAN_EVENTMDIO | \ + IMASK_MDIO_CMD_CMPL | \ + IMASK_REM_FAULT | \ + IMASK_LOC_FAULT | \ + IMASK_1TX_ECC_ER | \ + IMASK_TX_FIFO_UNFL | \ + IMASK_TX_FIFO_OVFL | \ + IMASK_TX_ER | \ + IMASK_RX_FIFO_OVFL | \ + IMASK_RX_ECC_ER | \ + IMASK_RX_JAB_FRM | \ + IMASK_RX_OVRSZ_FRM | \ + IMASK_RX_RUNT_FRM | \ + IMASK_RX_FRAG_FRM | \ + IMASK_RX_LEN_ER | \ + IMASK_RX_CRC_ER | \ + IMASK_RX_ALIGN_ER)) + +#define GET_EXCEPTION_FLAG(bitMask, exception) switch(exception){ \ + case e_FM_MAC_EX_10G_MDIO_SCAN_EVENTMDIO: \ + bitMask = IMASK_MDIO_SCAN_EVENTMDIO; break; \ + case e_FM_MAC_EX_10G_MDIO_CMD_CMPL: \ + bitMask = IMASK_MDIO_CMD_CMPL ; break; \ + case e_FM_MAC_EX_10G_REM_FAULT: \ + bitMask = IMASK_REM_FAULT ; break; \ + case e_FM_MAC_EX_10G_LOC_FAULT: \ + bitMask = IMASK_LOC_FAULT ; break; \ + case e_FM_MAC_EX_10G_1TX_ECC_ER: \ + bitMask = IMASK_1TX_ECC_ER ; break; \ + case e_FM_MAC_EX_10G_TX_FIFO_UNFL: \ + bitMask = IMASK_TX_FIFO_UNFL ; break; \ + case e_FM_MAC_EX_10G_TX_FIFO_OVFL: \ + bitMask = IMASK_TX_FIFO_OVFL ; break; \ + case e_FM_MAC_EX_10G_TX_ER: \ + bitMask = IMASK_TX_ER ; break; \ + case e_FM_MAC_EX_10G_RX_FIFO_OVFL: \ + bitMask = IMASK_RX_FIFO_OVFL ; break; \ + case e_FM_MAC_EX_10G_RX_ECC_ER: \ + bitMask = IMASK_RX_ECC_ER ; break; \ + case e_FM_MAC_EX_10G_RX_JAB_FRM: \ + bitMask = IMASK_RX_JAB_FRM ; break; \ + case e_FM_MAC_EX_10G_RX_OVRSZ_FRM: \ + bitMask = IMASK_RX_OVRSZ_FRM ; break; \ + case e_FM_MAC_EX_10G_RX_RUNT_FRM: \ + bitMask = IMASK_RX_RUNT_FRM ; break; \ + case e_FM_MAC_EX_10G_RX_FRAG_FRM: \ + bitMask = IMASK_RX_FRAG_FRM ; break; \ + case e_FM_MAC_EX_10G_RX_LEN_ER: \ + bitMask = IMASK_RX_LEN_ER ; break; \ + case e_FM_MAC_EX_10G_RX_CRC_ER: \ + bitMask = IMASK_RX_CRC_ER ; break; \ + case e_FM_MAC_EX_10G_RX_ALIGN_ER: \ + bitMask = IMASK_RX_ALIGN_ER ; break; \ + default: bitMask = 0;break;} + + +/* Default Config Params */ +#define DEFAULT_wanModeEnable FALSE +#define DEFAULT_promiscuousModeEnable FALSE + + +#define DEFAULT_pauseForwardEnable FALSE +#define DEFAULT_pauseIgnore FALSE +#define DEFAULT_txAddrInsEnable FALSE + +#define DEFAULT_loopbackEnable FALSE +#define DEFAULT_cmdFrameEnable FALSE +#define DEFAULT_rxErrorDiscard FALSE +#define DEFAULT_phyTxenaOn FALSE +#define DEFAULT_sendIdleEnable FALSE +#define DEFAULT_noLengthCheckEnable TRUE +#define DEFAULT_lgthCheckNostdr FALSE +#define DEFAULT_timeStampEnable FALSE +#define DEFAULT_rxSfdAny FALSE +#define DEFAULT_rxPblFwd FALSE +#define DEFAULT_txPblFwd FALSE +#define DEFAULT_txIpgLength 12 + +#define DEFAULT_maxFrameLength 0x600 + +#define DEFAULT_debugMode FALSE +#define DEFAULT_pauseTime 0xf000 +#define DEFAULT_imask 0xf000 +#ifdef FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 +#define DEFAULT_skipFman11Workaround FALSE +#endif /* FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 */ + +#define DEFAULT_exceptions ((uint32_t)(IMASK_MDIO_SCAN_EVENTMDIO | \ + IMASK_REM_FAULT | \ + IMASK_LOC_FAULT | \ + IMASK_1TX_ECC_ER | \ + IMASK_TX_FIFO_UNFL | \ + IMASK_TX_FIFO_OVFL | \ + IMASK_TX_ER | \ + IMASK_RX_FIFO_OVFL | \ + IMASK_RX_ECC_ER | \ + IMASK_RX_JAB_FRM | \ + IMASK_RX_OVRSZ_FRM | \ + IMASK_RX_RUNT_FRM | \ + IMASK_RX_FRAG_FRM | \ + IMASK_RX_CRC_ER | \ + IMASK_RX_ALIGN_ER)) + +#define MAX_PACKET_ALIGNMENT 31 +#define MAX_INTER_PACKET_GAP 0x7f +#define MAX_INTER_PALTERNATE_BEB 0x0f +#define MAX_RETRANSMISSION 0x0f +#define MAX_COLLISION_WINDOW 0x03ff + + +#define TGEC_NUM_OF_PADDRS 1 /* number of pattern match registers (entries) */ + +#define GROUP_ADDRESS 0x0000010000000000LL /* Group address bit indication */ + +#define HASH_TABLE_SIZE 512 /* Hash table size (= 32 bits * 8 regs) */ + +#define TGEC_TO_MII_OFFSET 0x1030 /* Offset from the MEM map to the MDIO mem map */ + +/* 10-gigabit Ethernet MAC Controller ID (10GEC_ID) */ +#define TGEC_ID_ID 0xffff0000 +#define TGEC_ID_MAC_VERSION 0x0000FF00 +#define TGEC_ID_MAC_REV 0x000000ff + +/* Command and Configuration Register (COMMAND_CONFIG) */ +#define CMD_CFG_TX_PBL_FWD 0x00800000 /* 08 Transmit Preamble Forwarding (custom preamble). + */ +#define CMD_CFG_RX_PBL_FWD 0x00400000 /* 09 Receive Preamble Forwarding (custom preamble). + */ +#define RX_SFD_ANY 0x00200000 /* 10 Enables, when set, that any character is allowed at the SFD position of the preamble and the frame will be accepted. + */ +#define CMD_CFG_EN_TIMESTAMP 0x00100000 /* 11 EN_TIMESTAMP IEEE 1588 timeStamp functionality control. + * 0 disabled + * 1 enabled + */ +#define CMD_CFG_TX_ADDR_INS_SEL 0x00080000 /* 12 TX_ADDR_INS_SEL Transmit MAC address select + * 0 insert using first MAC address + * 1 insert using second MAC address + */ +#define CMD_CFG_LEN_CHK_NOSTDR 0x00040000 /* 13 LEN_CHK_NOSTDR + */ +#define CMD_CFG_NO_LEN_CHK 0x00020000 /* 14 NO_LEN_CHK Payload length check disable + * 0 MAC compares the frame payload length with the frame length/type field. + * 1 Payload length check is disabled. + */ +#define CMD_CFG_SEND_IDLE 0x00010000 /* 15 SEND_IDLE Force idle generation + * 0 Normal operation. + * 1 MAC permanently sends XGMII idle sequences even when faults are received. + */ +#define CMD_CFG_PHY_TX_EN 0x00008000 /* 16 PHY_TX_EN PHY transmit enable + * 0 PHY transmit is disabled. + * 1 PHY transmit is enabled. + */ +#define CMD_CFG_RX_ER_DISC 0x00004000 /* 17 RX_ER_DISC Receive error frame discard enable + * 0 Received error frames are processed. + * 1 Any frame received with an error is discarded. + */ +#define CMD_CFG_CMD_FRM_EN 0x00002000 /* 18 CMD_FRM_EN Command frame reception enable + * 0 Only Pause frames are accepted (all other command frames are rejected). + * 1 All command frames are accepted. + */ +#define CMD_CFG_STAT_CLR 0x00001000 /* 19 STAT_CLR Clear statistics + * 0 Normal operations. + * 1 All statistics counters are cleared. + */ +#define CMD_CFG_LOOPBACK_EN 0x00000400 /* 21 LOOPBAC_EN PHY interface loopback enable + * 0 Configure PHY for normal operation. + * 1 Configure PHY for loopback mode. + */ +#define CMD_CFG_TX_ADDR_INS 0x00000200 /* 22 TX_ADDR_INS Transmit source MAC address insertion + * 0 MAC transmits the source MAC address unmodified. + * 1 MAC overwrites the source MAC address with address specified by COMMAND_CONFIG[TX_ADDR_INS_SEL]. + */ +#define CMD_CFG_PAUSE_IGNORE 0x00000100 /* 23 PAUSE_IGNORE Ignore Pause frame quanta + * 0 MAC stops transmit process for the duration specified in the Pause frame quanta of a received Pause frame. + * 1 MAC ignores received Pause frames. + */ +#define CMD_CFG_PAUSE_FWD 0x00000080 /* 24 PAUSE_FWD Terminate/forward received Pause frames + * 0 MAC terminates and discards received Pause frames. + * 1 MAC forwards Pause frames to the user application. + */ +#define CMD_CFG_PROMIS_EN 0x00000010 /* 27 PROMIS_EN Promiscuous operation enable + * 0 Unicast frames with a destination address not matching the core MAC address (defined by registers, MAC_ADDR_0 and MAC_ADDR_1) are rejected. + * 1 All frames are received without any MAC address filtering. + */ +#define CMD_CFG_WAN_MODE 0x00000008 /* 28 WAN_MODE WAN mode enable + * 0 Configure MAC for LAN mode. + * 1 Configure MAC for WAN mode. + */ +#define CMD_CFG_RX_EN 0x00000002 /* 30 RX_EN MAC receive path enable + * 0 MAC receive path is disabled + * 1 MAC receive path is enabled. + */ +#define CMD_CFG_TX_EN 0x00000001 /* 31 TX_EN MAC transmit path enable + * 0 MAC transmit path is disabled + * 1 MAC transmit path is enabled. + */ + +/* Hashtable Control Register (HASHTABLE_CTRL) */ +#define HASH_CTRL_MCAST_SHIFT 23 + +#define HASH_CTRL_MCAST_RD 0x00000400 /* 22 MCAST_READ Entry Multicast frame reception for the hash entry. + * 0 disabled + * 1 enabled + */ +#define HASH_CTRL_MCAST_EN 0x00000200 /* 22 MCAST_EN Multicast frame reception for the hash entry. + * 0 disabled + * 1 enabled + */ +#define HASH_ADDR_MASK 0x000001ff /* 23-31 HASH_ADDR Hash table address code. + */ + +/* Transmit Inter-Packet Gap Length Register (TX_IPG_LENGTH) */ +#define TX_IPG_LENGTH_MASK 0x000003ff + + + +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(push,1) +#endif /* defined(__MWERKS__) && ... */ +#define MEM_MAP_START + +/* + * 10G memory map + */ +typedef _Packed struct { +/* 10Ge General Control and Status */ + volatile uint32_t tgec_id; /* 0x000 10GEC_ID - Controller ID register */ + volatile uint32_t scratch; /* 0x004 */ + volatile uint32_t cmd_conf_ctrl; /* 0x008 COMMAND_CONFIG - Control and configuration register */ + volatile uint32_t mac_addr_0; /* 0x00C MAC_ADDR_0 - Lower 32 bits of the first 48-bit MAC address */ + volatile uint32_t mac_addr_1; /* 0x010 MAC_ADDR_1 - Upper 16 bits of the first 48-bit MAC address */ + volatile uint32_t maxfrm; /* 0x014 MAXFRM - Maximum frame length register */ + volatile uint32_t pause_quant; /* 0x018 PAUSE_QUANT - Pause quanta register */ + volatile uint32_t rx_fifo_sections; /* 0x01c */ + volatile uint32_t tx_fifo_sections; /* 0x020 */ + volatile uint32_t rx_fifo_almost_f_e; /* 0x024 */ + volatile uint32_t tx_fifo_almost_f_e; /* 0x028 */ + volatile uint32_t hashtable_ctrl; /* 0x02C HASHTABLE_CTRL - Hash table control register */ + volatile uint32_t mdio_cfg_status; /* 0x030 */ + volatile uint32_t mdio_command; /* 0x034 */ + volatile uint32_t mdio_data; /* 0x038 */ + volatile uint32_t mdio_regaddr; /* 0x03c */ + volatile uint32_t status; /* 0x040 */ + volatile uint32_t tx_ipg_len; /* 0x044 TX_IPG_LENGTH - Transmitter inter-packet-gap register */ + volatile uint32_t mac_addr_2; /* 0x048 MAC_ADDR_2 - Lower 32 bits of the second 48-bit MAC address */ + volatile uint32_t mac_addr_3; /* 0x04C MAC_ADDR_3 - Upper 16 bits of the second 48-bit MAC address */ + volatile uint32_t rx_fifo_ptr_rd; /* 0x050 */ + volatile uint32_t rx_fifo_ptr_wr; /* 0x054 */ + volatile uint32_t tx_fifo_ptr_rd; /* 0x058 */ + volatile uint32_t tx_fifo_ptr_wr; /* 0x05c */ + volatile uint32_t imask; /* 0x060 IMASK - Interrupt mask register */ + volatile uint32_t ievent; /* 0x064 IEVENT - Interrupt event register */ + volatile uint32_t udp_port; /* 0x068 Defines a UDP Port number. When an UDP/IP frame is received with a matching UDP destination port, the receive status indication pin ff_rx_ts_frm will be asserted.*/ + volatile uint32_t type_1588v2; /* 0x06c Type field for 1588v2 layer 2 frames. IEEE1588 defines the type 0x88f7 for 1588 frames. */ + volatile uint32_t TENGEC_RESERVED4[4]; +/*10Ge Statistics Counter */ + volatile uint64_t TFRM; /* 80 aFramesTransmittedOK */ + volatile uint64_t RFRM; /* 88 aFramesReceivedOK */ + volatile uint64_t RFCS; /* 90 aFrameCheckSequenceErrors */ + volatile uint64_t RALN; /* 98 aAlignmentErrors */ + volatile uint64_t TXPF; /* A0 aPAUSEMACCtrlFramesTransmitted */ + volatile uint64_t RXPF; /* A8 aPAUSEMACCtrlFramesReceived */ + volatile uint64_t RLONG; /* B0 aFrameTooLongErrors */ + volatile uint64_t RFLR; /* B8 aInRangeLengthErrors */ + volatile uint64_t TVLAN; /* C0 VLANTransmittedOK */ + volatile uint64_t RVLAN; /* C8 VLANReceivedOK */ + volatile uint64_t TOCT; /* D0 ifOutOctets */ + volatile uint64_t ROCT; /* D8 ifInOctets */ + volatile uint64_t RUCA; /* E0 ifInUcastPkts */ + volatile uint64_t RMCA; /* E8 ifInMulticastPkts */ + volatile uint64_t RBCA; /* F0 ifInBroadcastPkts */ + volatile uint64_t TERR; /* F8 ifOutErrors */ + volatile uint32_t TENGEC_RESERVED6[2]; + volatile uint64_t TUCA; /* 108 ifOutUcastPkts */ + volatile uint64_t TMCA; /* 110 ifOutMulticastPkts */ + volatile uint64_t TBCA; /* 118 ifOutBroadcastPkts */ + volatile uint64_t RDRP; /* 120 etherStatsDropEvents */ + volatile uint64_t REOCT; /* 128 etherStatsOctets */ + volatile uint64_t RPKT; /* 130 etherStatsPkts */ + volatile uint64_t TRUND; /* 138 etherStatsUndersizePkts */ + volatile uint64_t R64; /* 140 etherStatsPkts64Octets */ + volatile uint64_t R127; /* 148 etherStatsPkts65to127Octets */ + volatile uint64_t R255; /* 150 etherStatsPkts128to255Octets */ + volatile uint64_t R511; /* 158 etherStatsPkts256to511Octets */ + volatile uint64_t R1023; /* 160 etherStatsPkts512to1023Octets */ + volatile uint64_t R1518; /* 168 etherStatsPkts1024to1518Octets */ + volatile uint64_t R1519X; /* 170 etherStatsPkts1519toX */ + volatile uint64_t TROVR; /* 178 etherStatsOversizePkts */ + volatile uint64_t TRJBR; /* 180 etherStatsJabbers */ + volatile uint64_t TRFRG; /* 188 etherStatsFragments */ + volatile uint64_t RERR; /* 190 ifInErrors */ +} _PackedType t_TgecMemMap; + +#define MEM_MAP_END +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(pop) +#endif /* defined(__MWERKS__) && ... */ + + +typedef struct { + bool wanModeEnable; /* WAN Mode Enable. Sets WAN mode (1) or LAN mode (0, default) of operation. */ + bool promiscuousModeEnable; /* Enables MAC promiscuous operation. When set to '1', all frames are received without any MAC address filtering, when set to '0' (Reset value) Unicast Frames with a destination address not matching the Core MAC Address (MAC Address programmed in Registers MAC_ADDR_0 and MAC_ADDR_1 or the MAC address programmed in Registers MAC_ADDR_2 and MAC_ADDR_3 ) are rejected. */ + bool pauseForwardEnable; /* Terminate / Forward Pause Frames. If set to '1' pause frames are forwarded to the user application. When set to '0' (Reset value) pause frames are terminated and discarded within the MAC. */ + bool pauseIgnore; /* Ignore Pause Frame Quanta. If set to '1' received pause frames are ignored by the MAC. When set to '0' (Reset value) the transmit process is stopped for the amount of time specified in the pause quanta received within a pause frame. */ + bool txAddrInsEnable; /* Set Source MAC Address on Transmit. + If set to '1' the MAC overwrites the source MAC address received from the Client Interface with one of the MAC addresses (Refer to section 10.4) + If set to '0' (Reset value), the source MAC address from the Client Interface is transmitted unmodified to the line. */ + bool loopbackEnable; /* PHY Interface Loopback. When set to '1', the signal loop_ena is set to '1', when set to '0' (Reset value) the signal loop_ena is set to '0'. */ + bool cmdFrameEnable; /* Enables reception of all command frames. When set to '1' all Command Frames are accepted, when set to '0' (Reset Value) only Pause Frames are accepted and all other Command Frames are rejected. */ + bool rxErrorDiscard; /* Receive Errored Frame Discard Enable. When set to 1, any frame received with an error is discarded in the Core and not forwarded to the Client interface. When set to 0 (Reset value), errored Frames are forwarded to the Client interface with ff_rx_err asserted. */ + bool phyTxenaOn; /* PHY Transmit Enable. When set to '1', the signal phy_txena is set to '1', when set to '0' (Reset value) the signal phy_txena is set to '0' */ + bool sendIdleEnable; /* Force Idle Generation. When set to '1', the MAC permanently sends XGMII Idle sequences even when faults are received. */ + bool noLengthCheckEnable; /* Payload Length Check Disable. When set to 0 (Reset value), the Core checks the frame's payload length with the Frame Length/Type field, when set to 1, the payload length check is disabled. */ + bool lgthCheckNostdr; /* The Core interprets the Length/Type field differently depending on the value of this Bit */ + bool timeStampEnable; /* This bit selects between enabling and disabling the IEEE 1588 functionality. + 1: IEEE 1588 is enabled. + 0: IEEE 1588 is disabled. */ + bool rxSfdAny; /* Enables, when set, that any character is allowed at the SFD position of the preamble and the frame will be accepted. + If cleared (default) the frame is accepted only if the 8th byte of the preamble contains the SFD value 0xd5. If another value is received, the frame is discarded and the alignment error counter increments. */ + bool rxPblFwd; /* Receive Preamble Forwarding (custom preamble). + If set, the first word (ff_rx_sop) of every received frame contains the preamble of the frame. The frame data starts with the 2nd word from the FIFO. + If the bit is cleared (default) the preamble is removed from the frame before it is written into the receive FIFO. */ + bool txPblFwd; /* Transmit Preamble Forwarding (custom preamble). + If set, the first word written into the TX FIFO is considered as frame preamble. The MAC will not add a preamble in front of the frame. Note that bits 7:0 of the preamble word will still be overwritten with the XGMII start character upon transmission. + If cleared (default) the MAC */ + uint32_t txIpgLength; /*Transmit Inter-Packet-Gap (IPG) value. + A 6-bit value: Depending on LAN or WAN mode of operation (see COMMAND_CONFIG, 19.2.1 page 91) the value has the following meaning: + - LAN Mode: Number of octets in steps of 4. Valid values are 8, 12, 16, ... 100. DIC is fully supported (see 10.6.1 page 49) for any setting. A default of 12 (reset value) must be set to conform to IEEE802.3ae. Warning: When set to 8, PCS layers may not be able to perform clock rate compensation. + - WAN Mode: Stretch factor. Valid values are 4..15. The stretch factor is calculated as (value+1)*8. A default of 12 (reset value) must be set to conform to IEEE 802.3ae (i.e. 13*8=104). A larger value shrinks the IPG (increasing bandwidth). */ +/*.. */ + uint16_t maxFrameLength; + bool debugMode; + uint16_t pauseTime; +#ifdef FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 + bool skipFman11Workaround; +#endif /* FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 */ +} t_TgecDriverParam; + +typedef struct { + t_FmMacControllerDriver fmMacControllerDriver; /**< Upper Mac control block */ + t_Handle h_App; /**< Handle to the upper layer application */ + t_TgecMemMap *p_MemMap; /**< pointer to 10G memory mapped registers. */ + t_TgecMiiAccessMemMap *p_MiiMemMap; /**< pointer to MII memory mapped registers. */ + uint64_t addr; /**< MAC address of device; */ + e_EnetMode enetMode; /**< Ethernet physical interface */ + t_FmMacExceptionCallback *f_Exception; + int mdioIrq; + t_FmMacExceptionCallback *f_Event; + bool indAddrRegUsed[TGEC_NUM_OF_PADDRS]; /**< Whether a particular individual address recognition register is being used */ + uint64_t paddr[TGEC_NUM_OF_PADDRS]; /**< MAC address for particular individual address recognition register */ + uint8_t numOfIndAddrInRegs; /**< Number of individual addresses in registers for this station. */ + t_EthHash *p_MulticastAddrHash; /**< pointer to driver's global address hash table */ + t_EthHash *p_UnicastAddrHash; /**< pointer to driver's individual address hash table */ + bool debugMode; + uint8_t macId; + uint32_t exceptions; + t_TgecDriverParam *p_TgecDriverParam; +} t_Tgec; + + +t_Error TGEC_MII_WritePhyReg(t_Handle h_Tgec, uint8_t phyAddr, uint8_t reg, uint16_t data); +t_Error TGEC_MII_ReadPhyReg(t_Handle h_Tgec, uint8_t phyAddr, uint8_t reg, uint16_t *p_Data); + + +#endif /* __TGEC_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/tgec_mii_acc.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/tgec_mii_acc.c @@ -0,0 +1,121 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#include "error_ext.h" +#include "std_ext.h" +#include "fm_mac.h" +#include "tgec.h" +#include "xx_ext.h" + + +/*****************************************************************************/ +t_Error TGEC_MII_WritePhyReg(t_Handle h_Tgec, + uint8_t phyAddr, + uint8_t reg, + uint16_t data) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + t_TgecMiiAccessMemMap *p_MiiAccess; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_MiiMemMap, E_INVALID_HANDLE); + + p_MiiAccess = p_Tgec->p_MiiMemMap; + + while ((GET_UINT32(p_MiiAccess->mdio_cfg_status)) & MIIMIND_BUSY) + XX_UDelay (1); + + WRITE_UINT32(p_MiiAccess->mdio_command, phyAddr); + + WRITE_UINT32(p_MiiAccess->mdio_regaddr, reg); + + CORE_MemoryBarrier(); + + while ((GET_UINT32(p_MiiAccess->mdio_cfg_status)) & MIIMIND_BUSY) + XX_UDelay (1); + + WRITE_UINT32(p_MiiAccess->mdio_data, data); + + CORE_MemoryBarrier(); + + while ((GET_UINT32(p_MiiAccess->mdio_data)) & MIIDATA_BUSY) + XX_UDelay (1); + + return E_OK; +} + +/*****************************************************************************/ +t_Error TGEC_MII_ReadPhyReg(t_Handle h_Tgec, + uint8_t phyAddr, + uint8_t reg, + uint16_t *p_Data) +{ + t_Tgec *p_Tgec = (t_Tgec *)h_Tgec; + t_TgecMiiAccessMemMap *p_MiiAccess; + uint32_t cfg_status; + + SANITY_CHECK_RETURN_ERROR(p_Tgec, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Tgec->p_MiiMemMap, E_INVALID_HANDLE); + + p_MiiAccess = p_Tgec->p_MiiMemMap; + + while ((GET_UINT32(p_MiiAccess->mdio_cfg_status)) & MIIMIND_BUSY) + XX_UDelay (1); + + WRITE_UINT32(p_MiiAccess->mdio_command, phyAddr); + + WRITE_UINT32(p_MiiAccess->mdio_regaddr, reg); + + CORE_MemoryBarrier(); + + while ((GET_UINT32(p_MiiAccess->mdio_cfg_status)) & MIIMIND_BUSY) + XX_UDelay (1); + + WRITE_UINT32(p_MiiAccess->mdio_command, (uint32_t)(phyAddr | MIIMCOM_READ_CYCLE)); + + CORE_MemoryBarrier(); + + while ((GET_UINT32(p_MiiAccess->mdio_data)) & MIIDATA_BUSY) + XX_UDelay (1); + + *p_Data = (uint16_t)GET_UINT32(p_MiiAccess->mdio_data); + + cfg_status = GET_UINT32(p_MiiAccess->mdio_cfg_status); + + if (cfg_status & MIIMIND_READ_ERROR) + RETURN_ERROR(MINOR, E_INVALID_VALUE, + ("Read Error: phyAddr 0x%x, dev 0x%x, reg 0x%x, cfg_status 0x%x", + ((phyAddr & 0xe0)>>5), (phyAddr & 0x1f), reg, cfg_status)); + + return E_OK; +} --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/tgec_mii_acc.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/MAC/tgec_mii_acc.h @@ -0,0 +1,81 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __TGEC_MII_ACC_H +#define __TGEC_MII_ACC_H + +#include "std_ext.h" + + +/* MII Management Command Register */ +#define MIIMCOM_READ_POST_INCREMENT 0x00004000 +#define MIIMCOM_READ_CYCLE 0x00008000 +#define MIIMCOM_SCAN_CYCLE 0x00000800 +#define MIIMCOM_PREAMBLE_DISABLE 0x00000400 + +#define MIIMCOM_MDIO_HOLD_1_REG_CLK 0 +#define MIIMCOM_MDIO_HOLD_2_REG_CLK 1 +#define MIIMCOM_MDIO_HOLD_3_REG_CLK 2 +#define MIIMCOM_MDIO_HOLD_4_REG_CLK 3 + +#define MIIMCOM_DIV_MASK 0x0000ff00 +#define MIIMCOM_DIV_SHIFT 8 + +/* MII Management Indicator Register */ +#define MIIMIND_BUSY 0x00000001 +#define MIIMIND_READ_ERROR 0x00000002 + +#define MIIDATA_BUSY 0x80000000 + +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(push,1) +#endif /* defined(__MWERKS__) && ... */ +#define MEM_MAP_START + +/*----------------------------------------------------*/ +/* MII Configuration Control Memory Map Registers */ +/*----------------------------------------------------*/ +typedef _Packed struct t_TgecMiiAccessMemMap +{ + volatile uint32_t mdio_cfg_status; /* 0x030 */ + volatile uint32_t mdio_command; /* 0x034 */ + volatile uint32_t mdio_data; /* 0x038 */ + volatile uint32_t mdio_regaddr; /* 0x03c */ +} _PackedType t_TgecMiiAccessMemMap ; + +#define MEM_MAP_END +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(pop) +#endif /* defined(__MWERKS__) && ... */ + + +#endif /* __TGEC_MII_ACC_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Makefile +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Makefile @@ -0,0 +1,21 @@ +# +# Makefile for the Freescale Ethernet controllers +# +EXTRA_CFLAGS += -DVERSION=\"\" +# +#Include netcomm SW specific definitions +include $(srctree)/drivers/net/dpa/NetCommSw/ncsw_config.mk +NCSW_FM_INC = $(srctree)/drivers/net/dpa/NetCommSw/Peripherals/FM/inc + +EXTRA_CFLAGS += -I$(NCSW_FM_INC) + + +obj-y += fsl-ncsw-PFM1.o + +fsl-ncsw-PFM1-objs := fm.o fm_muram.o + +obj-y += MAC/ +obj-y += Pcd/ +obj-y += Port/ +obj-y += HC/ +obj-y += Rtc/ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/Makefile +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/Makefile @@ -0,0 +1,19 @@ +# +# Makefile for the Freescale Ethernet controllers +# +EXTRA_CFLAGS += -DVERSION=\"\" +# +#Include netcomm SW specific definitions +include $(srctree)/drivers/net/dpa/NetCommSw/ncsw_config.mk + +NCSW_FM_INC = $(srctree)/drivers/net/dpa/NetCommSw/Peripherals/FM/inc + +EXTRA_CFLAGS += -I$(NCSW_FM_INC) + +obj-y += fsl-ncsw-Pcd.o + +fsl-ncsw-Pcd-objs := fm_cc.o fm_kg.o fm_pcd.o fm_plcr.o fm_prs.o + + + + --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/fm_cc.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/fm_cc.c @@ -0,0 +1,3467 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm_cc.c + + @Description FM CC ... +*//***************************************************************************/ +#include "std_ext.h" +#include "error_ext.h" +#include "string_ext.h" +#include "debug_ext.h" +#include "fm_pcd_ext.h" +#include "fm_muram_ext.h" + +#include "fm_common.h" +#include "fm_hc.h" +#include "fm_cc.h" + + +#if defined(FM_CAPWAP_SUPPORT) +#define FM_PCD_CC_MANIP +#endif /* defined(FM_CAPWAP_SUPPORT) || ... */ + + +t_Handle FmPcdCcTreeGetSavedManipParams(t_Handle h_FmTree, uint8_t manipIndx) +{ + t_FmPcdCcTree *p_FmPcdCcTree = (t_FmPcdCcTree *)h_FmTree; + + ASSERT_COND(p_FmPcdCcTree); + + return p_FmPcdCcTree->fmPcdCcSavedManipParams[manipIndx]; +} + +void FmPcdCcTreeSetSavedManipParams(t_Handle h_FmTree, t_Handle h_SavedManipParams, uint8_t manipIndx) +{ + t_FmPcdCcTree *p_FmPcdCcTree = (t_FmPcdCcTree *)h_FmTree; + + ASSERT_COND(p_FmPcdCcTree); + + p_FmPcdCcTree->fmPcdCcSavedManipParams[manipIndx] = h_SavedManipParams; +} + +uint8_t FmPcdCcGetParseCode(t_Handle h_CcNode) +{ + t_FmPcdCcNode *p_FmPcdCcNode = (t_FmPcdCcNode *)h_CcNode; + + ASSERT_COND(p_FmPcdCcNode); + return p_FmPcdCcNode->parseCode; +} + +uint8_t FmPcdCcGetOffset(t_Handle h_CcNode) +{ + t_FmPcdCcNode *p_FmPcdCcNode = (t_FmPcdCcNode *)h_CcNode; + + ASSERT_COND(p_FmPcdCcNode); + return p_FmPcdCcNode->offset; +} + +uint16_t FmPcdCcGetNumOfKeys(t_Handle h_CcNode) +{ + t_FmPcdCcNode *p_FmPcdCcNode = (t_FmPcdCcNode *)h_CcNode; + + ASSERT_COND(p_FmPcdCcNode); + return p_FmPcdCcNode->numOfKeys; +} +static void EnqueueNodeInfoToRelevantLst(t_List *p_List, t_CcNodeInformation *p_CcInfo) +{ + t_CcNodeInformation *p_CcInformation; + uint32_t intFlags; + + p_CcInformation = (t_CcNodeInformation *)XX_Malloc(sizeof(t_CcNodeInformation)); + if (p_CcInformation) + { + memset(p_CcInformation, 0, sizeof(t_CcNodeInformation)); + memcpy(p_CcInformation, p_CcInfo, sizeof(t_CcNodeInformation)); + INIT_LIST(&p_CcInformation->node); + + intFlags = XX_DisableAllIntr(); + LIST_AddToTail(&p_CcInformation->node, p_List); + XX_RestoreAllIntr(intFlags); + } + else + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("CC Node Information")); +} + + +static t_CcNodeInformation* FindNodeInfoInReleventLst(t_List *p_List, t_Handle h_Info) +{ + t_CcNodeInformation *p_CcInformation; + t_List *p_Pos; + uint32_t intFlags; + + intFlags = XX_DisableAllIntr(); + for (p_Pos = LIST_FIRST(p_List); p_Pos != (p_List); p_Pos = LIST_NEXT(p_Pos)) + { + p_CcInformation = CC_NODE_F_OBJECT(p_Pos); + ASSERT_COND(p_CcInformation->h_CcNode); + if(p_CcInformation->h_CcNode == h_Info) + { + XX_RestoreAllIntr(intFlags); + return p_CcInformation; + } + } + XX_RestoreAllIntr(intFlags); + return NULL; +} + +static void DequeueNodeInfoFromRelevantLst(t_List *p_List, t_Handle h_Info) +{ + t_CcNodeInformation *p_CcInformation = NULL; + uint32_t intFlags; + t_List *p_Pos; + + intFlags = XX_DisableAllIntr(); + if (LIST_IsEmpty(p_List)) + { + XX_RestoreAllIntr(intFlags); + return; + } + + for (p_Pos = LIST_FIRST(p_List); p_Pos != (p_List); p_Pos = LIST_NEXT(p_Pos)) + { + p_CcInformation = CC_NODE_F_OBJECT(p_Pos); + ASSERT_COND(p_CcInformation->h_CcNode); + if (p_CcInformation->h_CcNode == h_Info) + break; + } + if (p_CcInformation) + LIST_DelAndInit(&p_CcInformation->node); + XX_RestoreAllIntr(intFlags); +} + +static t_Error FmPcdCcSetRequiredAction(t_Handle h_FmPcd, uint32_t requiredAction, t_FmPcdCcNextEngineAndRequiredActionParams *p_CcNextEngineParamsTmp, + t_Handle h_AdTmp, uint16_t numOfEntries, t_Handle h_Tree) +{ + + t_AdOfTypeResult *p_AdTmp = (t_AdOfTypeResult *)h_AdTmp; + uint32_t tmpReg32; + t_Error err; + t_FmPcdCcNode *p_FmPcdCcNode; + int i = 0; + uint16_t tmp = 0; + uint16_t profileId; + uint8_t relativeSchemeId, physicalSchemeId; + t_CcNodeInformation ccNodeInfo; + + for(i = 0; i < numOfEntries; i++) + { + if(i == 0) + h_AdTmp = PTR_MOVE(h_AdTmp, i*FM_PCD_CC_AD_ENTRY_SIZE); + else + h_AdTmp = PTR_MOVE(h_AdTmp, FM_PCD_CC_AD_ENTRY_SIZE); + + if(p_CcNextEngineParamsTmp[i].shadowAction & requiredAction) + continue; + switch(p_CcNextEngineParamsTmp[i].nextEngineParams.nextEngine) + { + case(e_FM_PCD_CC): + if(requiredAction) + { + p_FmPcdCcNode = p_CcNextEngineParamsTmp[i].nextEngineParams.params.ccParams.h_CcNode; + ASSERT_COND(p_FmPcdCcNode); + if(p_FmPcdCcNode->shadowAction == requiredAction) + break; + if((requiredAction & UPDATE_CC_WITH_TREE) && !(p_FmPcdCcNode->shadowAction & UPDATE_CC_WITH_TREE)) + { + + ASSERT_COND(LIST_NumOfObjs(&p_FmPcdCcNode->ccTreesLst) == 0); + if(p_FmPcdCcNode->shadowAction & UPDATE_CC_WITH_DELETE_TREE) + p_FmPcdCcNode->shadowAction &= ~UPDATE_CC_WITH_DELETE_TREE; + memset(&ccNodeInfo, 0, sizeof(t_CcNodeInformation)); + ccNodeInfo.h_CcNode = h_Tree; + EnqueueNodeInfoToRelevantLst(&p_FmPcdCcNode->ccTreesLst, &ccNodeInfo); + p_CcNextEngineParamsTmp[i].shadowAction |= UPDATE_CC_WITH_TREE; + } + if((requiredAction & UPDATE_CC_WITH_DELETE_TREE) && !(p_FmPcdCcNode->shadowAction & UPDATE_CC_WITH_DELETE_TREE)) + { + ASSERT_COND(LIST_NumOfObjs(&p_FmPcdCcNode->ccTreesLst) == 1); + if(p_FmPcdCcNode->shadowAction & UPDATE_CC_WITH_TREE) + p_FmPcdCcNode->shadowAction &= ~UPDATE_CC_WITH_TREE; + DequeueNodeInfoFromRelevantLst(&p_FmPcdCcNode->ccTreesLst, h_Tree); + p_CcNextEngineParamsTmp[i].shadowAction |= UPDATE_CC_WITH_DELETE_TREE; + } + if(p_FmPcdCcNode->nextEngineAndRequiredAction[p_FmPcdCcNode->numOfKeys].nextEngineParams.nextEngine != e_FM_PCD_INVALID) + tmp = (uint8_t)(p_FmPcdCcNode->numOfKeys + 1); + else + tmp = p_FmPcdCcNode->numOfKeys; + err = FmPcdCcSetRequiredAction(h_FmPcd, requiredAction, p_FmPcdCcNode->nextEngineAndRequiredAction, p_FmPcdCcNode->h_AdTable, tmp, h_Tree); + if(err != E_OK) + return err; + p_FmPcdCcNode->shadowAction |= requiredAction; + } + break; + + case(e_FM_PCD_KG): + if((requiredAction & UPDATE_NIA_ENQ_WITHOUT_DMA) && !(p_CcNextEngineParamsTmp[i].shadowAction & UPDATE_NIA_ENQ_WITHOUT_DMA)) + { + physicalSchemeId = (uint8_t)(PTR_TO_UINT(p_CcNextEngineParamsTmp[i].nextEngineParams.params.kgParams.h_DirectScheme)-1); + relativeSchemeId = FmPcdKgGetRelativeSchemeId(h_FmPcd, physicalSchemeId); + if(relativeSchemeId == FM_PCD_KG_NUM_OF_SCHEMES) + RETURN_ERROR(MAJOR, E_NOT_IN_RANGE, NO_MSG); + if (!FmPcdKgIsSchemeValidSw(h_FmPcd, relativeSchemeId)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid direct scheme.")); + if(!KgIsSchemeAlwaysDirect(h_FmPcd, relativeSchemeId)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("For this action scheme has to be direct.")); + err = FmPcdKgCcGetSetParams(h_FmPcd, p_CcNextEngineParamsTmp[i].nextEngineParams.params.kgParams.h_DirectScheme, requiredAction); + if(err != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + p_CcNextEngineParamsTmp[i].shadowAction |= requiredAction; + } + break; + + case(e_FM_PCD_PLCR): + if((requiredAction & UPDATE_NIA_ENQ_WITHOUT_DMA) && !(p_CcNextEngineParamsTmp[i].shadowAction & UPDATE_NIA_ENQ_WITHOUT_DMA)) + { + if(!p_CcNextEngineParamsTmp[i].nextEngineParams.params.plcrParams.overrideParams) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("In this intialization only overrideFqid can be intiizliaes")); + if(!p_CcNextEngineParamsTmp[i].nextEngineParams.params.plcrParams.sharedProfile) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("In this intialization only overrideFqid can be intiizliaes")); + err = FmPcdPlcrGetAbsoluteProfileId(h_FmPcd, e_FM_PCD_PLCR_SHARED, NULL, p_CcNextEngineParamsTmp[i].nextEngineParams.params.plcrParams.newRelativeProfileId, &profileId); + if(err!= E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + err = FmPcdPlcrCcGetSetParams(h_FmPcd, profileId, requiredAction); + if(err != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + p_CcNextEngineParamsTmp[i].shadowAction |= requiredAction; + } + break; + + case(e_FM_PCD_DONE): + if((requiredAction & UPDATE_NIA_ENQ_WITHOUT_DMA) && !(p_CcNextEngineParamsTmp[i].shadowAction & UPDATE_NIA_ENQ_WITHOUT_DMA)) + { + tmpReg32 = GET_UINT32(p_AdTmp->nia); + if((tmpReg32 & (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME)) != (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Next engine was previosely assigned not as PCD_DONE")); + tmpReg32 |= NIA_BMI_AC_ENQ_FRAME_WITHOUT_DMA; + WRITE_UINT32(p_AdTmp->nia, tmpReg32); + p_CcNextEngineParamsTmp[i].shadowAction |= requiredAction; + } + break; + + default: + break; + } + } + + return E_OK; +} + +static t_Error CcUpdateParam(t_Handle h_FmPcd, + t_Handle h_FmPort, + t_FmPcdCcNextEngineAndRequiredActionParams *p_CcNextEngineParams, + uint16_t numOfEntries, + t_Handle h_Ad, + bool validate, + uint16_t level, + t_Handle h_FmTree, + bool modify) +{ + t_CcNodeInformation *p_CcNodeInfo; + t_FmPcdCcNode *p_FmPcdCcNode; + t_Error err; + uint16_t tmp = 0; + int i = 0; + + level++; + + if(numOfEntries) + { + for(i = 0; i < numOfEntries; i++) + { + if(i == 0) + h_Ad = PTR_MOVE(h_Ad, i*FM_PCD_CC_AD_ENTRY_SIZE); + else + h_Ad = PTR_MOVE(h_Ad, FM_PCD_CC_AD_ENTRY_SIZE); + + if(p_CcNextEngineParams[i].nextEngineParams.nextEngine == e_FM_PCD_CC) + { + p_FmPcdCcNode = p_CcNextEngineParams[i].nextEngineParams.params.ccParams.h_CcNode; + ASSERT_COND(p_FmPcdCcNode); + p_CcNodeInfo = FindNodeInfoInReleventLst(&p_FmPcdCcNode->ccTreesLst,h_FmTree); + ASSERT_COND(p_CcNodeInfo); + p_CcNodeInfo->index = level; +#ifdef FM_PCD_CC_MANIP + if(p_CcNextEngineParams[i].nextEngineParams.h_Manip) + { + err = FmPcdManipUpdate(h_FmPcd, h_FmPort, p_CcNextEngineParams[i].nextEngineParams.h_Manip, h_Ad, validate, p_CcNodeInfo->index, h_FmTree, modify); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + } +#endif /* FM_PCD_CC_MANIP */ + + if(p_FmPcdCcNode->nextEngineAndRequiredAction[p_FmPcdCcNode->numOfKeys].nextEngineParams.nextEngine != e_FM_PCD_INVALID) + tmp = (uint8_t)(p_FmPcdCcNode->numOfKeys + 1); + else + tmp = p_FmPcdCcNode->numOfKeys; + + err = CcUpdateParam(h_FmPcd, h_FmPort, p_FmPcdCcNode->nextEngineAndRequiredAction, tmp, p_FmPcdCcNode->h_AdTable, validate,level, h_FmTree, modify); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + } +#ifdef FM_PCD_CC_MANIP + else + { + if(p_CcNextEngineParams[i].nextEngineParams.h_Manip) + { + err = FmPcdManipUpdate(h_FmPcd, h_FmPort, p_CcNextEngineParams[i].nextEngineParams.h_Manip, h_Ad, validate, level,h_FmTree, modify); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + } + } +#endif /* FM_PCD_CC_MANIP */ + } + } + + return E_OK; +} +static bool IsNodeInModifiedState(t_Handle h_CcNode) +{ + t_FmPcdCcNode *p_CcNode = (t_FmPcdCcNode *)h_CcNode; + + ASSERT_COND(p_CcNode); + + return p_CcNode->modifiedState; +} + +static void UpdateNodeWithModifiedState(t_Handle h_CcNode, bool modifiedState) +{ + t_FmPcdCcNode *p_FmPcdCcNode = (t_FmPcdCcNode *)h_CcNode; + + ASSERT_COND(p_FmPcdCcNode); + + p_FmPcdCcNode->modifiedState = modifiedState; +} + +static ccPrivateInfo_t IcDefineCode(t_FmPcdCcNodeParams *p_CcNodeParam) +{ + switch (p_CcNodeParam->extractCcParams.extractNonHdr.action) + { + case(e_FM_PCD_ACTION_EXACT_MATCH): + switch(p_CcNodeParam->extractCcParams.extractNonHdr.src) + { + case(e_FM_PCD_EXTRACT_FROM_KEY): + return CC_PRIVATE_INFO_IC_KEY_EXACT_MATCH; + case(e_FM_PCD_EXTRACT_FROM_HASH): + return CC_PRIVATE_INFO_IC_HASH_EXACT_MATCH; + default: + return CC_PRIVATE_INFO_NONE; + } + case(e_FM_PCD_ACTION_INDEXED_LOOKUP): + switch(p_CcNodeParam->extractCcParams.extractNonHdr.src) + { + case(e_FM_PCD_EXTRACT_FROM_HASH): + return CC_PRIVATE_INFO_IC_HASH_INDEX_LOOKUP; + case(e_FM_PCD_EXTRACT_FROM_FLOW_ID): + return CC_PRIVATE_INFO_IC_DEQ_FQID_INDEX_LOOKUP; + default: + return CC_PRIVATE_INFO_NONE; + } + default: + break; + } + return CC_PRIVATE_INFO_NONE; +} + +static t_CcNodeInformation * DequeueAdditionalInfoFromRelevantLst(t_List *p_List) +{ + t_CcNodeInformation *p_CcNodeInfo = NULL; + uint32_t intFlags; + + intFlags = XX_DisableAllIntr(); + if (!LIST_IsEmpty(p_List)) + { + p_CcNodeInfo = CC_NODE_F_OBJECT(p_List->p_Next); + LIST_DelAndInit(&p_CcNodeInfo->node); + } + XX_RestoreAllIntr(intFlags); + return p_CcNodeInfo; +} + +static void ReleaseLst(t_List *p_List) +{ + t_CcNodeInformation *p_CcNodeInfo = NULL; + + if(!LIST_IsEmpty(p_List)) + { + p_CcNodeInfo = DequeueAdditionalInfoFromRelevantLst(p_List); + while (p_CcNodeInfo) + { + XX_Free(p_CcNodeInfo); + p_CcNodeInfo = DequeueAdditionalInfoFromRelevantLst(p_List); + } + } + LIST_DelAndInit(p_List); +} + +void FmPcdCcTreeReleaseLock(t_Handle h_FmPcdCcTree) +{ + RELEASE_LOCK(((t_FmPcdCcTree *)h_FmPcdCcTree)->lock); +} + +void FmPcdCcNodeTreeReleaseLock(t_List *p_List) +{ + t_List *p_Pos; + t_CcNodeInformation *p_CcNodeInfo; + t_Handle h_FmPcdCcTree; + + LIST_FOR_EACH(p_Pos, p_List) + { + p_CcNodeInfo = CC_NODE_F_OBJECT(p_Pos); + h_FmPcdCcTree = p_CcNodeInfo->h_CcNode; + FmPcdCcTreeReleaseLock(h_FmPcdCcTree); + } + ReleaseLst(p_List); +} + +static void DeleteNode(t_FmPcdCcNode *p_FmPcdCcNode) +{ + if(p_FmPcdCcNode) + { + if(p_FmPcdCcNode->p_GlblMask) + { + XX_Free(p_FmPcdCcNode->p_GlblMask); + p_FmPcdCcNode->p_GlblMask = NULL; + } + if(p_FmPcdCcNode->h_KeysMatchTable) + { + FM_MURAM_FreeMem(FmPcdGetMuramHandle(p_FmPcdCcNode->h_FmPcd), p_FmPcdCcNode->h_KeysMatchTable); + p_FmPcdCcNode->h_KeysMatchTable = NULL; + } + if(p_FmPcdCcNode->h_AdTable) + { + FM_MURAM_FreeMem(FmPcdGetMuramHandle(p_FmPcdCcNode->h_FmPcd), p_FmPcdCcNode->h_AdTable); + p_FmPcdCcNode->h_AdTable = NULL; + } + + ReleaseLst(&p_FmPcdCcNode->ccPrevNodesLst); + ReleaseLst(&p_FmPcdCcNode->ccTreeIdLst); + ReleaseLst(&p_FmPcdCcNode->ccTreesLst); + + XX_Free(p_FmPcdCcNode); + } +} + +static void DeleteTree(t_FmPcdCcTree *p_FmPcdTree, t_FmPcd *p_FmPcd) +{ + if(p_FmPcdTree) + { + if(p_FmPcdTree->ccTreeBaseAddr) + { + FM_MURAM_FreeMem(FmPcdGetMuramHandle(p_FmPcd), UINT_TO_PTR(p_FmPcdTree->ccTreeBaseAddr)); + p_FmPcdTree->ccTreeBaseAddr = 0; + } + + ReleaseLst(&p_FmPcdTree->fmPortsLst); + + XX_Free(p_FmPcdTree); + } +} + +static void UpdateNodeOwner(t_FmPcdCcNode *p_FmPcdCcNode, bool add) +{ + ASSERT_COND(p_FmPcdCcNode); + + if(add) + p_FmPcdCcNode->owners++; + else + { + ASSERT_COND(p_FmPcdCcNode->owners); + p_FmPcdCcNode->owners--; + } +} + +static void GetCcExtractKeySize(uint8_t parseCodeRealSize, uint8_t *parseCodeCcSize) +{ + if((parseCodeRealSize > 0) && (parseCodeRealSize < 2)) + *parseCodeCcSize = 1; + else if(parseCodeRealSize == 2) + *parseCodeCcSize = 2; + else if((parseCodeRealSize > 2) && (parseCodeRealSize <= 4)) + *parseCodeCcSize = 4; + else if((parseCodeRealSize > 4) && (parseCodeRealSize <= 8)) + *parseCodeCcSize = 8; + else if((parseCodeRealSize > 8) && (parseCodeRealSize <= 16)) + *parseCodeCcSize = 16; + else if((parseCodeRealSize > 16) && (parseCodeRealSize <= 24)) + *parseCodeCcSize = 24; + else if((parseCodeRealSize > 24) && (parseCodeRealSize <= 32)) + *parseCodeCcSize = 32; + else if((parseCodeRealSize > 32) && (parseCodeRealSize <= 40)) + *parseCodeCcSize = 40; + else if((parseCodeRealSize > 40) && (parseCodeRealSize <= 48)) + *parseCodeCcSize = 48; + else if((parseCodeRealSize > 48) && (parseCodeRealSize <= 56)) + *parseCodeCcSize = 56; + else + *parseCodeCcSize = 0; +} + +static void GetSizeHeaderField(e_NetHeaderType hdr,t_FmPcdFields field,uint8_t *parseCodeRealSize) +{ + switch(hdr) + { + case (HEADER_TYPE_ETH): + switch(field.eth) + { + case(NET_HEADER_FIELD_ETH_DA): + *parseCodeRealSize = 6; + break; + case(NET_HEADER_FIELD_ETH_SA): + *parseCodeRealSize = 6; + break; + case(NET_HEADER_FIELD_ETH_TYPE): + *parseCodeRealSize = 2; + break; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported1")); + *parseCodeRealSize = CC_SIZE_ILLEGAL; + break; + } + break; + case(HEADER_TYPE_PPPoE): + switch(field.pppoe) + { + case(NET_HEADER_FIELD_PPPoE_PID): + *parseCodeRealSize = 2; + break; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported1")); + *parseCodeRealSize = CC_SIZE_ILLEGAL; + break; + } + break; + case (HEADER_TYPE_VLAN): + switch(field.vlan) + { + case(NET_HEADER_FIELD_VLAN_TCI): + *parseCodeRealSize = 2; + break; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported2")); + *parseCodeRealSize = CC_SIZE_ILLEGAL; + break; + } + break; + case (HEADER_TYPE_MPLS): + switch(field.mpls) + { + case(NET_HEADER_FIELD_MPLS_LABEL_STACK): + *parseCodeRealSize = 4; + break; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported3")); + *parseCodeRealSize = CC_SIZE_ILLEGAL; + break; + } + break; + case (HEADER_TYPE_IPv4): + switch(field.ipv4) + { + case(NET_HEADER_FIELD_IPv4_DST_IP): + case(NET_HEADER_FIELD_IPv4_SRC_IP): + *parseCodeRealSize = 4; + break; + case(NET_HEADER_FIELD_IPv4_TOS): + case(NET_HEADER_FIELD_IPv4_PROTO): + *parseCodeRealSize = 1; + break; + case(NET_HEADER_FIELD_IPv4_DST_IP | NET_HEADER_FIELD_IPv4_SRC_IP): + *parseCodeRealSize = 8; + break; + case(NET_HEADER_FIELD_IPv4_TTL): + *parseCodeRealSize = 1; + break; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported4")); + *parseCodeRealSize = CC_SIZE_ILLEGAL; + break; + } + break; + case (HEADER_TYPE_IPv6): + switch(field.ipv6) + { + case(NET_HEADER_FIELD_IPv6_VER | NET_HEADER_FIELD_IPv6_FL | NET_HEADER_FIELD_IPv6_TC): + *parseCodeRealSize = 4; + break; + case(NET_HEADER_FIELD_IPv6_NEXT_HDR): + case(NET_HEADER_FIELD_IPv6_HOP_LIMIT): + *parseCodeRealSize = 1; + break; + case(NET_HEADER_FIELD_IPv6_DST_IP): + case(NET_HEADER_FIELD_IPv6_SRC_IP): + *parseCodeRealSize = 16; + break; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported5")); + *parseCodeRealSize = CC_SIZE_ILLEGAL; + break; + } + break; + case (HEADER_TYPE_GRE): + switch(field.gre) + { + case(NET_HEADER_FIELD_GRE_TYPE): + *parseCodeRealSize = 2; + break; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported6")); + *parseCodeRealSize = CC_SIZE_ILLEGAL; + break; + } + break; + case (HEADER_TYPE_MINENCAP): + switch(field.minencap) + { + case(NET_HEADER_FIELD_MINENCAP_TYPE): + *parseCodeRealSize = 1; + break; + case(NET_HEADER_FIELD_MINENCAP_DST_IP): + case(NET_HEADER_FIELD_MINENCAP_SRC_IP): + *parseCodeRealSize = 4; + break; + case(NET_HEADER_FIELD_MINENCAP_SRC_IP | NET_HEADER_FIELD_MINENCAP_DST_IP): + *parseCodeRealSize = 8; + break; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported7")); + *parseCodeRealSize = CC_SIZE_ILLEGAL; + break; + } + break; + case (HEADER_TYPE_TCP): + switch(field.tcp) + { + case(NET_HEADER_FIELD_TCP_PORT_SRC): + case(NET_HEADER_FIELD_TCP_PORT_DST): + *parseCodeRealSize = 2; + break; + case(NET_HEADER_FIELD_TCP_PORT_SRC | NET_HEADER_FIELD_TCP_PORT_DST): + *parseCodeRealSize = 4; + break; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported8")); + *parseCodeRealSize = CC_SIZE_ILLEGAL; + break; + } + break; + case (HEADER_TYPE_UDP): + switch(field.udp) + { + case(NET_HEADER_FIELD_UDP_PORT_SRC): + case(NET_HEADER_FIELD_UDP_PORT_DST): + *parseCodeRealSize = 2; + break; + case(NET_HEADER_FIELD_UDP_PORT_SRC | NET_HEADER_FIELD_UDP_PORT_DST): + *parseCodeRealSize = 4; + break; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported9")); + *parseCodeRealSize = CC_SIZE_ILLEGAL; + break; + } + break; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported10")); + *parseCodeRealSize = CC_SIZE_ILLEGAL; + break; + } +} + +static t_Error ValidateNextEngineParams(t_Handle h_FmPcd, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams) +{ + uint16_t absoluteProfileId; + t_Error err = E_OK; + uint8_t relativeSchemeId; + + switch(p_FmPcdCcNextEngineParams->nextEngine) + { + case(e_FM_PCD_INVALID): + err = E_NOT_SUPPORTED; + break; + case(e_FM_PCD_DONE): + if(p_FmPcdCcNextEngineParams->params.enqueueParams.action == e_FM_PCD_ENQ_FRAME) + { + if(p_FmPcdCcNextEngineParams->params.enqueueParams.overrideFqid && + !p_FmPcdCcNextEngineParams->params.enqueueParams.newFqid) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("not defined fqid for control flow for BMI next engine ")); + if(p_FmPcdCcNextEngineParams->params.enqueueParams.newFqid & ~0x00FFFFFF) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("fqidForCtrlFlow must be between 1 and 2^24-1")); + } + break; + case(e_FM_PCD_KG): + relativeSchemeId = FmPcdKgGetRelativeSchemeId(h_FmPcd, (uint8_t)(PTR_TO_UINT(p_FmPcdCcNextEngineParams->params.kgParams.h_DirectScheme)-1)); + if(relativeSchemeId == FM_PCD_KG_NUM_OF_SCHEMES) + RETURN_ERROR(MAJOR, E_NOT_IN_RANGE, NO_MSG); + + if(!FmPcdKgIsSchemeValidSw(h_FmPcd, relativeSchemeId)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("not valid schemeIndex in KG next engine param")); + if(!KgIsSchemeAlwaysDirect(h_FmPcd, relativeSchemeId)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("CC Node may point only to a scheme that is always direct.")); + break; + case(e_FM_PCD_PLCR): + if(p_FmPcdCcNextEngineParams->params.plcrParams.overrideParams) + { + /* if private policer profile, it may be uninitialized yet, therefor no checks are done at this stage */ + if(p_FmPcdCcNextEngineParams->params.plcrParams.sharedProfile) + { + err = FmPcdPlcrGetAbsoluteProfileId(h_FmPcd,e_FM_PCD_PLCR_SHARED,NULL,p_FmPcdCcNextEngineParams->params.plcrParams.newRelativeProfileId, &absoluteProfileId); + if(err) + RETURN_ERROR(MAJOR, err, ("Shared profile offset is out of range")); + if(!FmPcdPlcrIsProfileValid(h_FmPcd, absoluteProfileId)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid profile")); + } + else + { + } + /* TODO - add check according to the revision of the chip. + if(!p_FmPcdCcNextEngineParams->params.plcrParams.newFqid || + (p_FmPcdCcNextEngineParams->params.plcrParams.newFqid & ~0x00FFFFFF)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("newFqid must be between 1 and 2^24-1")); + */ + } + break; + case(e_FM_PCD_CC): + if(!p_FmPcdCcNextEngineParams->params.ccParams.h_CcNode) + RETURN_ERROR(MAJOR, E_NULL_POINTER, ("handler to next Node is NULL")); + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Next engine is not correct")); + } + return err; +} + +static uint8_t GetGenParseCode(e_FmPcdExtractFrom src, uint32_t offset, bool glblMask, uint8_t *parseArrayOffset, bool fromIc, ccPrivateInfo_t icCode) +{ + if(!fromIc) + { + switch(src) + { + case(e_FM_PCD_EXTRACT_FROM_FRAME_START): + if(glblMask) + return CC_PC_GENERIC_WITH_MASK ; + else + return CC_PC_GENERIC_WITHOUT_MASK; + case(e_FM_PCD_EXTRACT_FROM_CURR_END_OF_PARSE): + *parseArrayOffset = CC_PC_PR_NEXT_HEADER_OFFSET; + if(offset) + return CC_PR_OFFSET; + else + return CC_PR_WITHOUT_OFFSET; + default: + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("Illegal 'extract from' src")); + return CC_PC_ILLEGAL; + } + } + else + { + switch (icCode) + { + case(CC_PRIVATE_INFO_IC_KEY_EXACT_MATCH): + *parseArrayOffset = 0x50; + return CC_PC_GENERIC_IC_GMASK; + case(CC_PRIVATE_INFO_IC_HASH_EXACT_MATCH): + *parseArrayOffset = 0x48; + return CC_PC_GENERIC_IC_GMASK; + case(CC_PRIVATE_INFO_IC_HASH_INDEX_LOOKUP): + *parseArrayOffset = 0x48; + return CC_PC_GENERIC_IC_HASH_INDEXED; + case(CC_PRIVATE_INFO_IC_DEQ_FQID_INDEX_LOOKUP): + *parseArrayOffset = 0x16; + return CC_PC_GENERIC_IC_HASH_INDEXED; + default: + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("Illegal 'extract from' src")); + break; + } + } + return CC_PC_ILLEGAL; +} + +static uint8_t GetFullFieldParseCode(e_NetHeaderType hdr, e_FmPcdHdrIndex index, t_FmPcdFields field) +{ + + switch(hdr) + { + case(HEADER_TYPE_NONE): + ASSERT_COND(FALSE); + return CC_PC_ILLEGAL; + + case(HEADER_TYPE_ETH): + switch(field.eth) + { + case(NET_HEADER_FIELD_ETH_DA): + return CC_PC_FF_MACDST; + case(NET_HEADER_FIELD_ETH_SA): + return CC_PC_FF_MACSRC; + case(NET_HEADER_FIELD_ETH_TYPE): + return CC_PC_FF_ETYPE; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported")); + return CC_PC_ILLEGAL; + } + + case(HEADER_TYPE_VLAN): + switch(field.vlan) + { + case(NET_HEADER_FIELD_VLAN_TCI): + if((index == e_FM_PCD_HDR_INDEX_NONE) || (index == e_FM_PCD_HDR_INDEX_1)) + return CC_PC_FF_TCI1; + if(index == e_FM_PCD_HDR_INDEX_LAST) + return CC_PC_FF_TCI2; + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported")); + return CC_PC_ILLEGAL; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported")); + return CC_PC_ILLEGAL; + } + + case(HEADER_TYPE_MPLS): + switch(field.mpls) + { + case(NET_HEADER_FIELD_MPLS_LABEL_STACK): + if((index == e_FM_PCD_HDR_INDEX_NONE) || (index == e_FM_PCD_HDR_INDEX_1)) + return CC_PC_FF_MPLS1; + if(index == e_FM_PCD_HDR_INDEX_LAST) + return CC_PC_FF_MPLS_LAST; + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Illegal MPLS index")); + return CC_PC_ILLEGAL; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported")); + return CC_PC_ILLEGAL; + } + + case(HEADER_TYPE_IPv4): + switch(field.ipv4) + { + case(NET_HEADER_FIELD_IPv4_DST_IP): + if((index == e_FM_PCD_HDR_INDEX_NONE) || (index == e_FM_PCD_HDR_INDEX_1)) + return CC_PC_FF_IPV4DST1; + if(index == e_FM_PCD_HDR_INDEX_2) + return CC_PC_FF_IPV4DST2; + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Illegal IPv4 index")); + return CC_PC_ILLEGAL; + case(NET_HEADER_FIELD_IPv4_TOS): + if((index == e_FM_PCD_HDR_INDEX_NONE) || (index == e_FM_PCD_HDR_INDEX_1)) + return CC_PC_FF_IPV4IPTOS_TC1; + if(index == e_FM_PCD_HDR_INDEX_2) + return CC_PC_FF_IPV4IPTOS_TC2; + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Illegal IPv4 index")); + return CC_PC_ILLEGAL; + case(NET_HEADER_FIELD_IPv4_PROTO): + if((index == e_FM_PCD_HDR_INDEX_NONE) || (index == e_FM_PCD_HDR_INDEX_1)) + return CC_PC_FF_IPV4PTYPE1; + if(index == e_FM_PCD_HDR_INDEX_2) + return CC_PC_FF_IPV4PTYPE2; + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Illegal IPv4 index")); + return CC_PC_ILLEGAL; + case(NET_HEADER_FIELD_IPv4_SRC_IP): + if((index == e_FM_PCD_HDR_INDEX_NONE) || (index == e_FM_PCD_HDR_INDEX_1)) + return CC_PC_FF_IPV4SRC1; + if(index == e_FM_PCD_HDR_INDEX_2) + return CC_PC_FF_IPV4SRC2; + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Illegal IPv4 index")); + return CC_PC_ILLEGAL; + case(NET_HEADER_FIELD_IPv4_SRC_IP | NET_HEADER_FIELD_IPv4_DST_IP): + if((index == e_FM_PCD_HDR_INDEX_NONE) || (index == e_FM_PCD_HDR_INDEX_1)) + return CC_PC_FF_IPV4SRC1_IPV4DST1; + if(index == e_FM_PCD_HDR_INDEX_2) + return CC_PC_FF_IPV4SRC2_IPV4DST2; + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Illegal IPv4 index")); + return CC_PC_ILLEGAL; + case(NET_HEADER_FIELD_IPv4_TTL): + return CC_PC_FF_IPV4TTL; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported")); + return CC_PC_ILLEGAL; + } + + case(HEADER_TYPE_IPv6): + switch(field.ipv6) + { + case(NET_HEADER_FIELD_IPv6_VER | NET_HEADER_FIELD_IPv6_FL | NET_HEADER_FIELD_IPv6_TC): + if((index == e_FM_PCD_HDR_INDEX_NONE) || (index == e_FM_PCD_HDR_INDEX_1)) + return CC_PC_FF_IPTOS_IPV6TC1_IPV6FLOW1; + if(index == e_FM_PCD_HDR_INDEX_2) + return CC_PC_FF_IPTOS_IPV6TC2_IPV6FLOW2; + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Illegal IPv6 index")); + return CC_PC_ILLEGAL; + case(NET_HEADER_FIELD_IPv6_NEXT_HDR): + if((index == e_FM_PCD_HDR_INDEX_NONE) || (index == e_FM_PCD_HDR_INDEX_1)) + return CC_PC_FF_IPV6PTYPE1; + if(index == e_FM_PCD_HDR_INDEX_2) + return CC_PC_FF_IPV6PTYPE2; + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Illegal IPv6 index")); + return CC_PC_ILLEGAL; + case(NET_HEADER_FIELD_IPv6_DST_IP): + if((index == e_FM_PCD_HDR_INDEX_NONE) || (index == e_FM_PCD_HDR_INDEX_1)) + return CC_PC_FF_IPV6DST1; + if(index == e_FM_PCD_HDR_INDEX_2) + return CC_PC_FF_IPV6DST2; + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Illegal IPv6 index")); + return CC_PC_ILLEGAL; + case(NET_HEADER_FIELD_IPv6_SRC_IP): + if((index == e_FM_PCD_HDR_INDEX_NONE) || (index == e_FM_PCD_HDR_INDEX_1)) + return CC_PC_FF_IPV6SRC1; + if(index == e_FM_PCD_HDR_INDEX_2) + return CC_PC_FF_IPV6SRC2; + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Illegal IPv6 index")); + return CC_PC_ILLEGAL; + case(NET_HEADER_FIELD_IPv6_HOP_LIMIT): + return CC_PC_FF_IPV6HOP_LIMIT; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported")); + return CC_PC_ILLEGAL; + } + + case(HEADER_TYPE_GRE): + switch(field.gre) + { + case(NET_HEADER_FIELD_GRE_TYPE): + return CC_PC_FF_GREPTYPE; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported")); + return CC_PC_ILLEGAL; + } + case(HEADER_TYPE_MINENCAP): + switch(field.minencap) + { + case(NET_HEADER_FIELD_MINENCAP_TYPE): + return CC_PC_FF_MINENCAP_PTYPE; + case(NET_HEADER_FIELD_MINENCAP_DST_IP): + return CC_PC_FF_MINENCAP_IPDST; + case(NET_HEADER_FIELD_MINENCAP_SRC_IP): + return CC_PC_FF_MINENCAP_IPSRC; + case(NET_HEADER_FIELD_MINENCAP_SRC_IP | NET_HEADER_FIELD_MINENCAP_DST_IP): + return CC_PC_FF_MINENCAP_IPSRC_IPDST; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported")); + return CC_PC_ILLEGAL; + } + + case(HEADER_TYPE_TCP): + switch(field.tcp) + { + case(NET_HEADER_FIELD_TCP_PORT_SRC): + return CC_PC_FF_L4PSRC; + case(NET_HEADER_FIELD_TCP_PORT_DST): + return CC_PC_FF_L4PDST; + case(NET_HEADER_FIELD_TCP_PORT_DST | NET_HEADER_FIELD_TCP_PORT_SRC): + return CC_PC_FF_L4PSRC_L4PDST; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported")); + return CC_PC_ILLEGAL; + } + + case(HEADER_TYPE_PPPoE): + switch(field.pppoe) + { + case(NET_HEADER_FIELD_PPPoE_PID): + return CC_PC_FF_PPPPID; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported")); + return CC_PC_ILLEGAL; + } + + case(HEADER_TYPE_UDP): + switch(field.udp) + { + case(NET_HEADER_FIELD_UDP_PORT_SRC): + return CC_PC_FF_L4PSRC; + case(NET_HEADER_FIELD_UDP_PORT_DST): + return CC_PC_FF_L4PDST; + case(NET_HEADER_FIELD_UDP_PORT_DST | NET_HEADER_FIELD_UDP_PORT_SRC): + return CC_PC_FF_L4PSRC_L4PDST; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported")); + return CC_PC_ILLEGAL; + } + + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported")); + return CC_PC_ILLEGAL; + } +} + +static uint8_t GetPrParseCode(e_NetHeaderType hdr, e_FmPcdHdrIndex hdrIndex, uint32_t offset, bool glblMask, uint8_t *parseArrayOffset) +{ + bool offsetRelevant = FALSE; + + if(offset) + offsetRelevant = TRUE; + + switch(hdr){ + case(HEADER_TYPE_NONE): + ASSERT_COND(FALSE); + return CC_PC_ILLEGAL; + case(HEADER_TYPE_ETH): + *parseArrayOffset = (uint8_t)CC_PC_PR_ETH_OFFSET; + break; + case(HEADER_TYPE_USER_DEFINED_SHIM1): + if(offset || glblMask) + *parseArrayOffset = (uint8_t)CC_PC_PR_USER_DEFINED_SHIM1_OFFSET; + else + return CC_PC_PR_SHIM1; + break; + case(HEADER_TYPE_USER_DEFINED_SHIM2): + if(offset || glblMask) + *parseArrayOffset = (uint8_t)CC_PC_PR_USER_DEFINED_SHIM2_OFFSET; + else + return CC_PC_PR_SHIM2; + break; + case(HEADER_TYPE_LLC_SNAP): + *parseArrayOffset = CC_PC_PR_USER_LLC_SNAP_OFFSET; + break; + case(HEADER_TYPE_PPPoE): + *parseArrayOffset = CC_PC_PR_PPPOE_OFFSET; + break; + case(HEADER_TYPE_MPLS): + if((hdrIndex == e_FM_PCD_HDR_INDEX_NONE) || (hdrIndex == e_FM_PCD_HDR_INDEX_1)) + *parseArrayOffset = CC_PC_PR_MPLS1_OFFSET; + else if(hdrIndex == e_FM_PCD_HDR_INDEX_LAST) + *parseArrayOffset = CC_PC_PR_MPLS_LAST_OFFSET; + else + { + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Illegal MPLS header index")); + return CC_PC_ILLEGAL; + } + break; + case(HEADER_TYPE_IPv4): + case(HEADER_TYPE_IPv6): + if((hdrIndex == e_FM_PCD_HDR_INDEX_NONE) || (hdrIndex == e_FM_PCD_HDR_INDEX_1)) + *parseArrayOffset = CC_PC_PR_IP1_OFFSET; + else if(hdrIndex == e_FM_PCD_HDR_INDEX_2) + *parseArrayOffset = CC_PC_PR_IP_LAST_OFFSET; + else + { + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Illegal IP header index")); + return CC_PC_ILLEGAL; + + } + break; + case(HEADER_TYPE_MINENCAP): + *parseArrayOffset = CC_PC_PR_MINENC_OFFSET; + break; + case(HEADER_TYPE_GRE): + *parseArrayOffset = CC_PC_PR_GRE_OFFSET; + break; + case(HEADER_TYPE_TCP): + case(HEADER_TYPE_UDP): + case(HEADER_TYPE_IPSEC_AH): + case(HEADER_TYPE_IPSEC_ESP): + case(HEADER_TYPE_DCCP): + case(HEADER_TYPE_SCTP): + *parseArrayOffset = CC_PC_PR_L4_OFFSET; + break; + + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Illegal IP header for this type of operation")); + return CC_PC_ILLEGAL; + } + + if(offsetRelevant) + return CC_PR_OFFSET; + else + return CC_PR_WITHOUT_OFFSET; +} + +static uint8_t GetFieldParseCode(e_NetHeaderType hdr, t_FmPcdFields field, uint32_t offset, uint8_t *parseArrayOffset, e_FmPcdHdrIndex hdrIndex) +{ + bool offsetRelevant = FALSE; + + if(offset) + offsetRelevant = TRUE; + + switch(hdr) + { + case(HEADER_TYPE_NONE): + ASSERT_COND(FALSE); + case(HEADER_TYPE_ETH): + switch(field.eth) + { + case(NET_HEADER_FIELD_ETH_TYPE): + *parseArrayOffset = CC_PC_PR_ETYPE_LAST_OFFSET; + break; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported")); + return CC_PC_ILLEGAL; + } + break; + case(HEADER_TYPE_VLAN): + switch(field.vlan) + { + case(NET_HEADER_FIELD_VLAN_TCI): + if((hdrIndex == e_FM_PCD_HDR_INDEX_NONE) || (hdrIndex == e_FM_PCD_HDR_INDEX_1)) + *parseArrayOffset = CC_PC_PR_VLAN1_OFFSET; + else if(hdrIndex == e_FM_PCD_HDR_INDEX_LAST) + *parseArrayOffset = CC_PC_PR_VLAN2_OFFSET; + break; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Extraction not supported")); + return CC_PC_ILLEGAL; + } + break; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Illegal header ")); + return CC_PC_ILLEGAL; + } + if(offsetRelevant) + return CC_PR_OFFSET; + else + return CC_PR_WITHOUT_OFFSET; +} + +static void FillAdOfTypeResult(t_Handle p_Ad, t_FmPcd *p_FmPcd, t_FmPcdCcNextEngineParams *p_CcNextEngineParams) +{ + t_AdOfTypeResult *p_AdResult = (t_AdOfTypeResult*)p_Ad; + uint32_t tmp = 0, tmpNia = 0; + uint16_t profileId; + t_Handle p_AdNewPtr = NULL; + + p_AdNewPtr = p_AdResult; + +#ifdef FM_PCD_CC_MANIP + if (p_CcNextEngineParams->h_Manip) + FmPcdManipUpdateAdResultForCc(p_CcNextEngineParams->h_Manip, p_Ad, &p_AdNewPtr); +#endif /* FM_PCD_CC_MANIP */ + + if(p_AdNewPtr) + { + switch(p_CcNextEngineParams->nextEngine) + { + case(e_FM_PCD_DONE): + if(p_CcNextEngineParams->params.enqueueParams.action == e_FM_PCD_ENQ_FRAME) + { + if(p_CcNextEngineParams->params.enqueueParams.overrideFqid) + { + tmp = FM_PCD_AD_RESULT_CONTRL_FLOW_TYPE; + tmp |= p_CcNextEngineParams->params.enqueueParams.newFqid; + } + else + { + tmp = FM_PCD_AD_RESULT_DATA_FLOW_TYPE; + tmp |= FM_PCD_AD_RESULT_PLCR_DIS; + } + } + if(p_CcNextEngineParams->params.enqueueParams.action == e_FM_PCD_DROP_FRAME) + tmpNia |= (NIA_ENG_BMI |NIA_BMI_AC_DISCARD); + else + tmpNia |= (NIA_ENG_BMI |NIA_BMI_AC_ENQ_FRAME); + if(p_CcNextEngineParams->params.enqueueParams.statisticsEn) + tmpNia |= FM_PCD_AD_RESULT_EXTENDED_MODE | FM_PCD_AD_RESULT_STATISTICS_EN; + break; + case(e_FM_PCD_KG): + if(p_CcNextEngineParams->params.kgParams.overrideFqid) + { + tmp = FM_PCD_AD_RESULT_CONTRL_FLOW_TYPE; + tmp |= p_CcNextEngineParams->params.kgParams.newFqid; + } + else + { + tmp = FM_PCD_AD_RESULT_DATA_FLOW_TYPE; + tmp |= FM_PCD_AD_RESULT_PLCR_DIS; + } + tmpNia = NIA_KG_DIRECT; + tmpNia |= NIA_ENG_KG; + tmpNia |= (uint8_t)(PTR_TO_UINT(p_CcNextEngineParams->params.kgParams.h_DirectScheme)-1); + if(p_CcNextEngineParams->params.kgParams.statisticsEn) + tmpNia |= FM_PCD_AD_RESULT_EXTENDED_MODE | FM_PCD_AD_RESULT_STATISTICS_EN; + break; + case(e_FM_PCD_PLCR): + tmp = 0; + if(p_CcNextEngineParams->params.plcrParams.overrideParams) + { + tmp = FM_PCD_AD_RESULT_CONTRL_FLOW_TYPE; + + /* if private policer profile, it may be uninitialized yet, therefor no checks are done at this stage */ + if(p_CcNextEngineParams->params.plcrParams.sharedProfile) + { + tmpNia |= NIA_PLCR_ABSOLUTE; + FmPcdPlcrGetAbsoluteProfileId((t_Handle)p_FmPcd,e_FM_PCD_PLCR_SHARED,NULL,p_CcNextEngineParams->params.plcrParams.newRelativeProfileId, &profileId); + } + else + profileId = p_CcNextEngineParams->params.plcrParams.newRelativeProfileId; + + tmp |= p_CcNextEngineParams->params.plcrParams.newFqid; + WRITE_UINT32(p_AdResult->plcrProfile,(uint32_t)((uint32_t)profileId << FM_PCD_AD_PROFILEID_FOR_CNTRL_SHIFT)); + } + else + tmp = FM_PCD_AD_RESULT_DATA_FLOW_TYPE; + tmpNia |= NIA_ENG_PLCR | p_CcNextEngineParams->params.plcrParams.newRelativeProfileId; + if(p_CcNextEngineParams->params.kgParams.statisticsEn) + tmpNia |= FM_PCD_AD_RESULT_EXTENDED_MODE | FM_PCD_AD_RESULT_STATISTICS_EN; + break; + default: + return; + } + WRITE_UINT32(p_AdResult->fqid, tmp); + +#ifdef FM_PCD_CC_MANIP + if(p_CcNextEngineParams->h_Manip) + { + tmp = GET_UINT32(p_AdResult->plcrProfile); + tmp |= (uint32_t)(XX_VirtToPhys(p_AdNewPtr) - (p_FmPcd->physicalMuramBase)) >> 4; + WRITE_UINT32(p_AdResult->plcrProfile, tmp); + + tmpNia |= FM_PCD_AD_RESULT_EXTENDED_MODE; + tmpNia |= FM_PCD_AD_RESULT_NADEN; + } +#endif /* FM_PCD_CC_MANIP */ + + WRITE_UINT32(p_AdResult->nia, tmpNia); + } +} + +static void FillAdOfTypeContLookup(t_Handle p_Ad, t_Handle h_FmPcd, t_Handle p_FmPcdCcNode, t_Handle h_Manip) +{ + t_FmPcdCcNode *p_Node = (t_FmPcdCcNode *)p_FmPcdCcNode; + t_AdOfTypeContLookup *p_AdContLookup = (t_AdOfTypeContLookup *)p_Ad; + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t tmpReg32; + t_Handle p_AdNewPtr = NULL; + + p_AdNewPtr = p_AdContLookup; + +#ifdef FM_PCD_CC_MANIP + if (h_Manip) + FmPcdManipUpdateAdContLookupForCc(h_Manip, p_Ad, &p_AdNewPtr, (uint32_t)((XX_VirtToPhys(p_Node->h_AdTable) - p_FmPcd->physicalMuramBase))); +#else + UNUSED(h_Manip); +#endif /* FM_PCD_CC_MANIP */ + + if(p_AdNewPtr) + { + tmpReg32 = 0; + tmpReg32 |= FM_PCD_AD_CONT_LOOKUP_TYPE; + tmpReg32 |= p_Node->sizeOfExtraction ? ((p_Node->sizeOfExtraction - 1) << 24) : 0; + tmpReg32 |= (uint32_t)(XX_VirtToPhys(p_Node->h_AdTable) - p_FmPcd->physicalMuramBase); + WRITE_UINT32(p_AdContLookup->ccAdBase, tmpReg32); + + tmpReg32 = 0; + tmpReg32 |= p_Node->numOfKeys << 24; + tmpReg32 |= (p_Node->lclMask ? FM_PCD_AD_CONT_LOOKUP_LCL_MASK : 0); + tmpReg32 |= p_Node->h_KeysMatchTable ? + (uint32_t)(XX_VirtToPhys(p_Node->h_KeysMatchTable) - p_FmPcd->physicalMuramBase) : 0; + WRITE_UINT32(p_AdContLookup->matchTblPtr, tmpReg32); + + tmpReg32 = 0; + tmpReg32 |= p_Node->prsArrayOffset << 24; + tmpReg32 |= p_Node->offset << 16; + tmpReg32 |= p_Node->parseCode; + WRITE_UINT32(p_AdContLookup->pcAndOffsets, tmpReg32); + + Mem2IOCpy32((void*)&p_AdContLookup->gmask, p_Node->p_GlblMask, CC_GLBL_MASK_SIZE); + } +} + +static void NextStepAd(t_Handle p_Ad, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams, t_FmPcd *p_FmPcd) +{ + switch(p_FmPcdCcNextEngineParams->nextEngine) + { + case(e_FM_PCD_KG): + case(e_FM_PCD_PLCR): + case(e_FM_PCD_DONE): + FillAdOfTypeResult(p_Ad, p_FmPcd, p_FmPcdCcNextEngineParams); + break; + case(e_FM_PCD_CC): + FillAdOfTypeContLookup(p_Ad, + p_FmPcd, + p_FmPcdCcNextEngineParams->params.ccParams.h_CcNode, +#ifdef FM_PCD_CC_MANIP + p_FmPcdCcNextEngineParams->h_Manip +#else + NULL +#endif /* FM_PCD_CC_MANIP */ + ); + UpdateNodeOwner (p_FmPcdCcNextEngineParams->params.ccParams.h_CcNode, + TRUE); + break; + default: + return; + } +} + + +static void ReleaseNewNodeCommonPart(t_FmPcdModifyCcKeyAdditionalParams *p_AdditionalInfo) +{ + if(p_AdditionalInfo->p_AdTableNew) + FM_MURAM_FreeMem(FmPcdGetMuramHandle(((t_FmPcdCcNode *)(p_AdditionalInfo->h_CurrentNode))->h_FmPcd), p_AdditionalInfo->p_AdTableNew); + if(p_AdditionalInfo->p_KeysMatchTableNew) + FM_MURAM_FreeMem(FmPcdGetMuramHandle(((t_FmPcdCcNode *)(p_AdditionalInfo->h_CurrentNode))->h_FmPcd), p_AdditionalInfo->p_KeysMatchTableNew); +} + +static t_Error UpdateGblMask(t_FmPcdCcNode *p_FmPcdCcNode, uint8_t keySize, uint8_t *p_Mask) +{ + if (p_Mask && + !p_FmPcdCcNode->glblMaskUpdated && + (keySize <= 4) && + !p_FmPcdCcNode->lclMask ) + { + memcpy(p_FmPcdCcNode->p_GlblMask, p_Mask, (sizeof(uint8_t))*keySize); + p_FmPcdCcNode->glblMaskUpdated = TRUE; + p_FmPcdCcNode->glblMaskSize = 4; + } + else if (p_Mask && + (keySize <= 4) && + !p_FmPcdCcNode->lclMask) + { + if (memcmp(p_FmPcdCcNode->p_GlblMask, p_Mask, keySize) != 0) + { + p_FmPcdCcNode->lclMask = TRUE; + p_FmPcdCcNode->glblMaskSize = 0; + } + } + else if (!p_Mask && (p_FmPcdCcNode->glblMaskUpdated) && (keySize <= 4)) + { + uint32_t tmpMask = 0xffffffff; + if (memcmp(p_FmPcdCcNode->p_GlblMask, &tmpMask, 4) != 0) + { + p_FmPcdCcNode->lclMask = TRUE; + p_FmPcdCcNode->glblMaskSize = 0; + } + } + else if (p_Mask) + { + p_FmPcdCcNode->lclMask = TRUE; + p_FmPcdCcNode->glblMaskSize = 0; + } + + return E_OK; +} + +static t_Error BuildNewNodeCommonPart(t_FmPcdCcNode *p_FmPcdCcNode, + int *size, + t_FmPcdModifyCcKeyAdditionalParams *p_AdditionalInfo) +{ + + p_AdditionalInfo->p_AdTableNew = (t_Handle)FM_MURAM_AllocMem(FmPcdGetMuramHandle(p_FmPcdCcNode->h_FmPcd), + (uint32_t)( (p_AdditionalInfo->numOfKeys+1) * FM_PCD_CC_AD_ENTRY_SIZE), + FM_PCD_CC_AD_TABLE_ALIGN); + if(!p_AdditionalInfo->p_AdTableNew) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("No memory in MURAM for AD table ")); + + IOMemSet32((uint8_t*)p_AdditionalInfo->p_AdTableNew, 0, (uint32_t)((p_AdditionalInfo->numOfKeys+1) * FM_PCD_CC_AD_ENTRY_SIZE)); + + if(p_FmPcdCcNode->lclMask) + *size = 2 * p_FmPcdCcNode->ccKeySizeAccExtraction; + else + *size = p_FmPcdCcNode->ccKeySizeAccExtraction; + + p_AdditionalInfo->p_KeysMatchTableNew = + (t_Handle)FM_MURAM_AllocMem(FmPcdGetMuramHandle(p_FmPcdCcNode->h_FmPcd), + (uint32_t)(*size * sizeof(uint8_t) * (p_AdditionalInfo->numOfKeys + 1)), + FM_PCD_CC_KEYS_MATCH_TABLE_ALIGN); + if(!p_AdditionalInfo->p_KeysMatchTableNew) + { + FM_MURAM_FreeMem(FmPcdGetMuramHandle(p_FmPcdCcNode->h_FmPcd), p_AdditionalInfo->p_AdTableNew); + p_AdditionalInfo->p_AdTableNew = NULL; + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("No memory in MURAM for KEY MATCH table")); + } + IOMemSet32((uint8_t*)p_AdditionalInfo->p_KeysMatchTableNew, 0, *size * sizeof(uint8_t) * (p_AdditionalInfo->numOfKeys + 1)); + + p_AdditionalInfo->p_AdTableOld = p_FmPcdCcNode->h_AdTable; + p_AdditionalInfo->p_KeysMatchTableOld = p_FmPcdCcNode->h_KeysMatchTable; + + return E_OK; +} + +static t_Error BuildNewNodeAddOrMdfyKeyAndNextEngine(t_Handle h_FmPcd ,t_FmPcdCcNode *p_FmPcdCcNode, uint8_t keyIndex, t_FmPcdCcKeyParams *p_KeyParams,t_FmPcdModifyCcKeyAdditionalParams *p_AdditionalInfo, bool add) +{ + t_Error err = E_OK; + t_Handle p_AdTableNewTmp, p_KeysMatchTableNewTmp; + t_Handle p_KeysMatchTableOldTmp, p_AdTableOldTmp; + int size; + int i = 0, j = 0; + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t requiredAction = 0; + bool prvLclMask; + t_CcNodeInformation *p_CcNodeInformation; + t_List *p_Pos; + + /*check that new NIA is legal*/ + err = ValidateNextEngineParams(h_FmPcd, &p_KeyParams->ccNextEngineParams); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + + prvLclMask = p_FmPcdCcNode->lclMask; + + /*check that new key is not require update of localMask*/ + err = UpdateGblMask(p_FmPcdCcNode, + p_FmPcdCcNode->ccKeySizeAccExtraction, + p_KeyParams->p_Mask); + if (err != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + + /*update internal data structure for next engine per index (index - key)*/ + memcpy(&p_AdditionalInfo->nextEngineAndRequiredAction[keyIndex].nextEngineParams,&p_KeyParams->ccNextEngineParams, sizeof(t_FmPcdCcNextEngineParams)); + + /*update numOfKeys*/ + if(add) + p_AdditionalInfo->numOfKeys = (uint8_t)(p_FmPcdCcNode->numOfKeys + 1); + else + p_AdditionalInfo->numOfKeys = (uint8_t)p_FmPcdCcNode->numOfKeys; + /*function which build in the memory new KeyTbl, AdTbl*/ + err = BuildNewNodeCommonPart(p_FmPcdCcNode, &size, p_AdditionalInfo); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + +#ifdef FM_PCD_CC_MANIP + /*check that manip is legal and what requiredAction is necessary for this manip*/ + if(p_KeyParams->ccNextEngineParams.h_Manip) + { + err = FmPcdManipCheckParamsForCcNextEgine(&p_KeyParams->ccNextEngineParams,&requiredAction); + if(err) + RETURN_ERROR(MAJOR, err, (NO_MSG)); + + } +#endif /* FM_PCD_CC_MANIP */ + + p_AdditionalInfo->nextEngineAndRequiredAction[keyIndex].requiredAction = requiredAction; + + p_AdditionalInfo->nextEngineAndRequiredAction[keyIndex].requiredAction |= UPDATE_CC_WITH_TREE; + + + /*update new Ad and new Key Table according to new requirement*/ + i = 0; + for(j = 0; j < p_AdditionalInfo->numOfKeys; j++) + { + p_AdTableNewTmp = PTR_MOVE(p_AdditionalInfo->p_AdTableNew, j*FM_PCD_CC_AD_ENTRY_SIZE); + if(j == keyIndex) + { + NextStepAd(p_AdTableNewTmp,&p_KeyParams->ccNextEngineParams, p_FmPcd); + p_KeysMatchTableNewTmp = PTR_MOVE(p_AdditionalInfo->p_KeysMatchTableNew, j*size * sizeof(uint8_t)); + Mem2IOCpy32((void*)p_KeysMatchTableNewTmp, p_KeyParams->p_Key, p_FmPcdCcNode->userSizeOfExtraction); + if(p_FmPcdCcNode->lclMask) + { + if(p_KeyParams->p_Mask) + Mem2IOCpy32(PTR_MOVE(p_KeysMatchTableNewTmp, p_FmPcdCcNode->ccKeySizeAccExtraction), p_KeyParams->p_Mask, p_FmPcdCcNode->userSizeOfExtraction); + else if (p_FmPcdCcNode->ccKeySizeAccExtraction > 4) + IOMemSet32(PTR_MOVE(p_KeysMatchTableNewTmp, p_FmPcdCcNode->ccKeySizeAccExtraction), 0xff, p_FmPcdCcNode->userSizeOfExtraction); + else + Mem2IOCpy32(PTR_MOVE(p_KeysMatchTableNewTmp, p_FmPcdCcNode->ccKeySizeAccExtraction),p_FmPcdCcNode->p_GlblMask, p_FmPcdCcNode->userSizeOfExtraction); + } + if(!add) + i++; + } + else + { + p_AdTableOldTmp = PTR_MOVE(p_AdditionalInfo->p_AdTableOld, i*FM_PCD_CC_AD_ENTRY_SIZE); + IO2IOCpy32(p_AdTableNewTmp, p_AdTableOldTmp, FM_PCD_CC_AD_ENTRY_SIZE); + p_KeysMatchTableNewTmp = PTR_MOVE(p_AdditionalInfo->p_KeysMatchTableNew, j*size * sizeof(uint8_t)); + p_KeysMatchTableOldTmp = PTR_MOVE(p_AdditionalInfo->p_KeysMatchTableOld, i*size * sizeof(uint8_t)); + + if(p_FmPcdCcNode->lclMask) + { + if(prvLclMask) + IO2IOCpy32(PTR_MOVE(p_KeysMatchTableNewTmp, p_FmPcdCcNode->ccKeySizeAccExtraction), + PTR_MOVE(p_KeysMatchTableOldTmp, p_FmPcdCcNode->ccKeySizeAccExtraction), + p_FmPcdCcNode->ccKeySizeAccExtraction); + else + { + p_KeysMatchTableOldTmp = PTR_MOVE(p_FmPcdCcNode->h_KeysMatchTable, i*p_FmPcdCcNode->ccKeySizeAccExtraction*sizeof(uint8_t)); + + if (p_FmPcdCcNode->ccKeySizeAccExtraction > 4) + IOMemSet32(PTR_MOVE(p_KeysMatchTableNewTmp, p_FmPcdCcNode->ccKeySizeAccExtraction), 0xff, p_FmPcdCcNode->userSizeOfExtraction); + else + IO2IOCpy32(PTR_MOVE(p_KeysMatchTableNewTmp, p_FmPcdCcNode->ccKeySizeAccExtraction), p_FmPcdCcNode->p_GlblMask, p_FmPcdCcNode->userSizeOfExtraction); + } + } + IO2IOCpy32(p_KeysMatchTableNewTmp, p_KeysMatchTableOldTmp, p_FmPcdCcNode->ccKeySizeAccExtraction); + i++; + } + } + + p_AdTableNewTmp = PTR_MOVE(p_AdditionalInfo->p_AdTableNew, j*FM_PCD_CC_AD_ENTRY_SIZE); + p_AdTableOldTmp = PTR_MOVE(p_AdditionalInfo->p_AdTableOld, i*FM_PCD_CC_AD_ENTRY_SIZE); + IO2IOCpy32(p_AdTableNewTmp, p_AdTableOldTmp, FM_PCD_CC_AD_ENTRY_SIZE); + + + if(!LIST_IsEmpty(&p_FmPcdCcNode->ccTreesLst)) + { + LIST_FOR_EACH(p_Pos, &p_FmPcdCcNode->ccTreesLst) + { + p_CcNodeInformation = CC_NODE_F_OBJECT(p_Pos); + ASSERT_COND(p_CcNodeInformation->h_CcNode); + /*update the manipulation which has to be updated from parameters of the port*/ + /*it's has to be updated with restrictions defined in the function*/ + err = FmPcdCcSetRequiredAction(p_FmPcdCcNode->h_FmPcd, + p_FmPcdCcNode->shadowAction | p_AdditionalInfo->nextEngineAndRequiredAction[keyIndex].requiredAction, + &p_AdditionalInfo->nextEngineAndRequiredAction[keyIndex], + PTR_MOVE(p_AdditionalInfo->p_AdTableNew, keyIndex*FM_PCD_CC_AD_ENTRY_SIZE), + 1, + p_CcNodeInformation->h_CcNode); + if (err) + RETURN_ERROR(MAJOR, err, (NO_MSG)); + + err = CcUpdateParam(p_FmPcdCcNode->h_FmPcd, + NULL, + &p_AdditionalInfo->nextEngineAndRequiredAction[keyIndex], + 1, + PTR_MOVE(p_AdditionalInfo->p_AdTableNew, keyIndex*FM_PCD_CC_AD_ENTRY_SIZE), + TRUE, + p_CcNodeInformation->index, + p_CcNodeInformation->h_CcNode, + TRUE); + if (err) + RETURN_ERROR(MAJOR, err, (NO_MSG)); + } + } + + if(p_FmPcdCcNode->lclMask) + memset(p_FmPcdCcNode->p_GlblMask, 0xff, CC_GLBL_MASK_SIZE * sizeof(uint8_t)); + + + if(p_KeyParams->ccNextEngineParams.nextEngine == e_FM_PCD_CC) + p_AdditionalInfo->h_NodeForAdd = p_KeyParams->ccNextEngineParams.params.ccParams.h_CcNode; + + if(!add) + { + if(p_FmPcdCcNode->nextEngineAndRequiredAction[keyIndex].nextEngineParams.nextEngine == e_FM_PCD_CC) + p_AdditionalInfo->h_NodeForRmv = p_FmPcdCcNode->nextEngineAndRequiredAction[keyIndex].nextEngineParams.params.ccParams.h_CcNode; +#ifdef FM_PCD_CC_MANIP + if(p_FmPcdCcNode->nextEngineAndRequiredAction[keyIndex].nextEngineParams.h_Manip) + p_AdditionalInfo->h_ManipForRmv = p_FmPcdCcNode->nextEngineAndRequiredAction[keyIndex].nextEngineParams.h_Manip; +#endif /* FM_PCD_CC_MANIP */ + } + + return E_OK; +} + +static t_Error BuildNewNodeRemoveKey(t_FmPcdCcNode *p_FmPcdCcNode, uint8_t keyIndex, t_FmPcdModifyCcKeyAdditionalParams *p_AdditionalInfo) +{ + int i = 0, j = 0; + t_Handle p_AdTableNewTmp,p_KeysMatchTableNewTmp; + t_Handle p_KeysMatchTableOldTmp, p_AdTableOldTmp; + int size; + t_Error err = E_OK; + + /*save new numOfKeys*/ + p_AdditionalInfo->numOfKeys = (uint16_t)(p_FmPcdCcNode->numOfKeys - 1); + + /*function which allocates in the memory new KeyTbl, AdTbl*/ + err = BuildNewNodeCommonPart(p_FmPcdCcNode, &size, p_AdditionalInfo); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + + /*update new Ad and new Key Table according to new requirement*/ + for(i = 0, j = 0; j < p_FmPcdCcNode->numOfKeys; i++, j++) + { + if(j == keyIndex) + { + p_AdTableOldTmp = PTR_MOVE(p_AdditionalInfo->p_AdTableOld, j*FM_PCD_CC_AD_ENTRY_SIZE); + j++; + } + if(j == p_FmPcdCcNode->numOfKeys) + break; + p_AdTableNewTmp = PTR_MOVE(p_AdditionalInfo->p_AdTableNew, i*FM_PCD_CC_AD_ENTRY_SIZE); + p_AdTableOldTmp = PTR_MOVE(p_AdditionalInfo->p_AdTableOld, j*FM_PCD_CC_AD_ENTRY_SIZE); + IO2IOCpy32(p_AdTableNewTmp,p_AdTableOldTmp, FM_PCD_CC_AD_ENTRY_SIZE); + p_KeysMatchTableOldTmp = PTR_MOVE(p_AdditionalInfo->p_KeysMatchTableOld, j*size * sizeof(uint8_t)); + p_KeysMatchTableNewTmp = PTR_MOVE(p_AdditionalInfo->p_KeysMatchTableNew, i*size * sizeof(uint8_t)); + IO2IOCpy32(p_KeysMatchTableNewTmp,p_KeysMatchTableOldTmp, size * sizeof(uint8_t)); + } + + p_AdTableNewTmp = PTR_MOVE(p_AdditionalInfo->p_AdTableNew, i*FM_PCD_CC_AD_ENTRY_SIZE); + p_AdTableOldTmp = PTR_MOVE(p_AdditionalInfo->p_AdTableOld, j*FM_PCD_CC_AD_ENTRY_SIZE); + IO2IOCpy32(p_AdTableNewTmp, p_AdTableOldTmp, FM_PCD_CC_AD_ENTRY_SIZE); + + if(p_FmPcdCcNode->nextEngineAndRequiredAction[keyIndex].nextEngineParams.nextEngine == e_FM_PCD_CC) + p_AdditionalInfo->h_NodeForRmv = p_FmPcdCcNode->nextEngineAndRequiredAction[keyIndex].nextEngineParams.params.ccParams.h_CcNode; +#ifdef FM_PCD_CC_MANIP + if(p_FmPcdCcNode->nextEngineAndRequiredAction[keyIndex].nextEngineParams.h_Manip) + p_AdditionalInfo->h_ManipForRmv = p_FmPcdCcNode->nextEngineAndRequiredAction[keyIndex].nextEngineParams.h_Manip; +#endif /* FM_PCD_CC_MANIP */ + + return E_OK; +} + +static t_Error BuildNewNodeModifyKey(t_FmPcdCcNode *p_FmPcdCcNode, uint8_t keyIndex, uint8_t *p_Key, uint8_t *p_Mask,t_FmPcdModifyCcKeyAdditionalParams *p_AdditionalInfo) +{ + t_Error err = E_OK; + t_Handle p_AdTableNewTmp, p_KeysMatchTableNewTmp; + t_Handle p_KeysMatchTableOldTmp, p_AdTableOldTmp; + int size; + int i = 0, j = 0; + bool prvLclMask; + + p_AdditionalInfo->numOfKeys = p_FmPcdCcNode->numOfKeys; + + prvLclMask = p_FmPcdCcNode->lclMask; + + /*check that new key is not require update of localMask*/ + err = UpdateGblMask(p_FmPcdCcNode, + p_FmPcdCcNode->sizeOfExtraction, + p_Mask); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + + /*function which build in the memory new KeyTbl, AdTbl*/ + err = BuildNewNodeCommonPart(p_FmPcdCcNode, &size, p_AdditionalInfo); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + + /*fill the New AdTable and New KeyTable*/ + for(j = 0, i = 0; j < p_AdditionalInfo->numOfKeys; j++, i++) + { + p_AdTableNewTmp = PTR_MOVE(p_AdditionalInfo->p_AdTableNew, j*FM_PCD_CC_AD_ENTRY_SIZE); + p_AdTableOldTmp = PTR_MOVE(p_AdditionalInfo->p_AdTableOld, i*FM_PCD_CC_AD_ENTRY_SIZE); + IO2IOCpy32(p_AdTableNewTmp, p_AdTableOldTmp, FM_PCD_CC_AD_ENTRY_SIZE); + if(j == keyIndex) + { + p_KeysMatchTableNewTmp = PTR_MOVE(p_AdditionalInfo->p_KeysMatchTableNew, j*size * sizeof(uint8_t)); + Mem2IOCpy32(p_KeysMatchTableNewTmp, p_Key, p_FmPcdCcNode->userSizeOfExtraction); + if(p_FmPcdCcNode->lclMask) + { + if(p_Mask) + Mem2IOCpy32(PTR_MOVE(p_KeysMatchTableNewTmp, p_FmPcdCcNode->ccKeySizeAccExtraction), p_Mask, p_FmPcdCcNode->userSizeOfExtraction); + else if (p_FmPcdCcNode->ccKeySizeAccExtraction > 4) + IOMemSet32(PTR_MOVE(p_KeysMatchTableNewTmp, p_FmPcdCcNode->ccKeySizeAccExtraction), 0xff, p_FmPcdCcNode->userSizeOfExtraction); + else + Mem2IOCpy32(PTR_MOVE(p_KeysMatchTableNewTmp, p_FmPcdCcNode->ccKeySizeAccExtraction),p_FmPcdCcNode->p_GlblMask, p_FmPcdCcNode->userSizeOfExtraction); + } + } + else + { + p_KeysMatchTableNewTmp = PTR_MOVE(p_AdditionalInfo->p_KeysMatchTableNew, j*size * sizeof(uint8_t)); + p_KeysMatchTableOldTmp = PTR_MOVE(p_FmPcdCcNode->h_KeysMatchTable, i*size * sizeof(uint8_t)); + if (p_FmPcdCcNode->lclMask) + { + if(prvLclMask) + IO2IOCpy32(PTR_MOVE(p_KeysMatchTableNewTmp, p_FmPcdCcNode->ccKeySizeAccExtraction), + PTR_MOVE(p_KeysMatchTableOldTmp, p_FmPcdCcNode->ccKeySizeAccExtraction), + p_FmPcdCcNode->userSizeOfExtraction); + else + { + p_KeysMatchTableOldTmp = PTR_MOVE(p_FmPcdCcNode->h_KeysMatchTable, i*p_FmPcdCcNode->ccKeySizeAccExtraction * sizeof(uint8_t)); + + if (p_FmPcdCcNode->ccKeySizeAccExtraction > 4) + IOMemSet32(PTR_MOVE(p_KeysMatchTableNewTmp, p_FmPcdCcNode->ccKeySizeAccExtraction), 0xff, p_FmPcdCcNode->userSizeOfExtraction); + else + IO2IOCpy32(PTR_MOVE(p_KeysMatchTableNewTmp, p_FmPcdCcNode->ccKeySizeAccExtraction), p_FmPcdCcNode->p_GlblMask, p_FmPcdCcNode->userSizeOfExtraction); + } + } + IO2IOCpy32((void*)p_KeysMatchTableNewTmp, p_KeysMatchTableOldTmp, p_FmPcdCcNode->ccKeySizeAccExtraction); + } + } + + p_AdTableNewTmp = PTR_MOVE(p_AdditionalInfo->p_AdTableNew, j*FM_PCD_CC_AD_ENTRY_SIZE); + p_AdTableOldTmp = PTR_MOVE(p_FmPcdCcNode->h_AdTable, i*FM_PCD_CC_AD_ENTRY_SIZE); + IO2IOCpy32(p_AdTableNewTmp, p_AdTableOldTmp, FM_PCD_CC_AD_ENTRY_SIZE); + + return E_OK; +} + +static t_Error BuildNewNodeModifyNextEngine(t_Handle h_FmPcd ,t_Handle h_FmPcdCcNodeOrTree, uint16_t keyIndex,t_FmPcdCcNextEngineParams *p_CcNextEngineParams, t_List *h_OldLst, t_List *h_NewLst,t_FmPcdModifyCcKeyAdditionalParams *p_AdditionalInfo) +{ + + t_Error err = E_OK; + uint32_t requiredAction = 0; + t_List *p_Pos; + t_CcNodeInformation *p_CcNodeInformation, ccNodeInfo; + t_Handle p_Ad; + t_FmPcdCcNode *p_FmPcdCcNode1 = NULL; + t_FmPcdCcTree *p_FmPcdCcTree = NULL; + + ASSERT_COND(p_CcNextEngineParams); + /*check that new NIA is legal*/ + err = ValidateNextEngineParams(h_FmPcd, p_CcNextEngineParams); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + + /*update internal data structure for next engine per index (index - key)*/ + memcpy(&p_AdditionalInfo->nextEngineAndRequiredAction[keyIndex].nextEngineParams,p_CcNextEngineParams, sizeof(t_FmPcdCcNextEngineParams)); + +#ifdef FM_PCD_CC_MANIP + /*check that manip is legal and what requiredAction is necessary for this manip*/ + if(p_CcNextEngineParams->h_Manip) + { + err = FmPcdManipCheckParamsForCcNextEgine(p_CcNextEngineParams,&requiredAction); + if(err) + RETURN_ERROR(MAJOR, err, (NO_MSG)); + + } +#endif /* FM_PCD_CC_MANIP */ + + if(!p_AdditionalInfo->tree) + { + p_FmPcdCcNode1 = (t_FmPcdCcNode *)h_FmPcdCcNodeOrTree; + p_Ad = p_FmPcdCcNode1->h_AdTable; + if(p_FmPcdCcNode1->nextEngineAndRequiredAction[keyIndex].nextEngineParams.nextEngine == e_FM_PCD_CC) + p_AdditionalInfo->h_NodeForRmv = p_FmPcdCcNode1->nextEngineAndRequiredAction[keyIndex].nextEngineParams.params.ccParams.h_CcNode; +#ifdef FM_PCD_CC_MANIP + if(p_FmPcdCcNode1->nextEngineAndRequiredAction[keyIndex].nextEngineParams.h_Manip) + p_AdditionalInfo->h_ManipForRmv = p_FmPcdCcNode1->nextEngineAndRequiredAction[keyIndex].nextEngineParams.h_Manip; +#endif /* FM_PCD_CC_MANIP */ + } + else + { + p_FmPcdCcTree = (t_FmPcdCcTree *)h_FmPcdCcNodeOrTree; + p_Ad = UINT_TO_PTR(p_FmPcdCcTree->ccTreeBaseAddr); + if(p_FmPcdCcTree->nextEngineAndRequiredAction[keyIndex].nextEngineParams.nextEngine == e_FM_PCD_CC) + p_AdditionalInfo->h_NodeForRmv = p_FmPcdCcTree->nextEngineAndRequiredAction[keyIndex].nextEngineParams.params.ccParams.h_CcNode; +#ifdef FM_PCD_CC_MANIP + if(p_FmPcdCcTree->nextEngineAndRequiredAction[keyIndex].nextEngineParams.h_Manip) + p_AdditionalInfo->h_ManipForRmv = p_FmPcdCcTree->nextEngineAndRequiredAction[keyIndex].nextEngineParams.h_Manip; +#endif /* FM_PCD_CC_MANIP */ + } + ASSERT_COND(p_Ad); + memset(&ccNodeInfo, 0, sizeof(t_CcNodeInformation)); + ccNodeInfo.h_CcNode = PTR_MOVE(p_Ad, keyIndex * FM_PCD_CC_AD_ENTRY_SIZE); + EnqueueNodeInfoToRelevantLst(h_OldLst, &ccNodeInfo); + + memset(&ccNodeInfo, 0, sizeof(t_CcNodeInformation)); + p_Ad = (t_Handle)FM_MURAM_AllocMem(FmPcdGetMuramHandle(h_FmPcd), + FM_PCD_CC_AD_ENTRY_SIZE, + FM_PCD_CC_AD_TABLE_ALIGN); + + if(!p_Ad) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("Memory allocation in MURAM FAILED")); + + IOMemSet32((uint8_t *)p_Ad, 0, FM_PCD_CC_AD_ENTRY_SIZE); + if(p_CcNextEngineParams) + NextStepAd(p_Ad,p_CcNextEngineParams, h_FmPcd); + ccNodeInfo.h_CcNode = p_Ad; + EnqueueNodeInfoToRelevantLst(h_NewLst, &ccNodeInfo); + + p_AdditionalInfo->nextEngineAndRequiredAction[keyIndex].requiredAction = requiredAction; + + p_AdditionalInfo->nextEngineAndRequiredAction[keyIndex].requiredAction |= UPDATE_CC_WITH_TREE; + + if(!p_AdditionalInfo->tree) + { + ASSERT_COND(p_FmPcdCcNode1); + if(!LIST_IsEmpty(&p_FmPcdCcNode1->ccTreesLst)) + { + LIST_FOR_EACH(p_Pos, &p_FmPcdCcNode1->ccTreesLst) + { + p_CcNodeInformation = CC_NODE_F_OBJECT(p_Pos); + ASSERT_COND(p_CcNodeInformation->h_CcNode); + /*update the manipulation which has to be updated from parameters of the port*/ + /*it's has to be updated with restrictions defined in the function*/ + err = FmPcdCcSetRequiredAction(p_FmPcdCcNode1->h_FmPcd, p_FmPcdCcNode1->shadowAction | p_AdditionalInfo->nextEngineAndRequiredAction[keyIndex].requiredAction, &p_AdditionalInfo->nextEngineAndRequiredAction[keyIndex], + p_Ad, 1, p_CcNodeInformation->h_CcNode); + if(err) + RETURN_ERROR(MAJOR, err, (NO_MSG)); + err = CcUpdateParam(p_FmPcdCcNode1->h_FmPcd, NULL, &p_AdditionalInfo->nextEngineAndRequiredAction[keyIndex],1, p_Ad, TRUE, p_CcNodeInformation->index, p_CcNodeInformation->h_CcNode, TRUE); + if(err) + RETURN_ERROR(MAJOR, err, (NO_MSG)); + } + } + } + else + { + ASSERT_COND(p_FmPcdCcTree); + err = FmPcdCcSetRequiredAction(h_FmPcd, p_FmPcdCcTree->requiredAction | p_AdditionalInfo->nextEngineAndRequiredAction[keyIndex].requiredAction, &p_AdditionalInfo->nextEngineAndRequiredAction[keyIndex], + p_Ad, 1, (t_Handle)p_FmPcdCcTree); + if(err) + RETURN_ERROR(MAJOR, err, (NO_MSG)); + err = CcUpdateParam(h_FmPcd, NULL, &p_AdditionalInfo->nextEngineAndRequiredAction[keyIndex],1, p_Ad, TRUE, 0, (t_Handle)p_FmPcdCcTree, TRUE); + if(err) + RETURN_ERROR(MAJOR, err, (NO_MSG)); + } + + if(p_CcNextEngineParams->nextEngine == e_FM_PCD_CC) + p_AdditionalInfo->h_NodeForAdd = p_CcNextEngineParams->params.ccParams.h_CcNode; + return E_OK; +} + +static t_Handle BuildNewAd(t_FmPcdModifyCcKeyAdditionalParams *p_FmPcdModifyCcKeyAdditionalParams, + t_FmPcdCcNode *p_FmPcdCcNode, + t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams) +{ + + t_Handle p_Ad; + t_FmPcdCcNode *p_FmPcdCcNodeTmp; + + p_Ad = (t_Handle)FM_MURAM_AllocMem(((t_FmPcd *)(p_FmPcdCcNode->h_FmPcd))->h_FmMuram, + FM_PCD_CC_AD_ENTRY_SIZE, + FM_PCD_CC_AD_TABLE_ALIGN); + if(!p_Ad) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("MURAM for AD")); + return NULL; + } + IOMemSet32(p_Ad, 0, FM_PCD_CC_AD_ENTRY_SIZE); + + p_FmPcdCcNodeTmp = (t_FmPcdCcNode*)XX_Malloc(sizeof(t_FmPcdCcNode)); + if(!p_FmPcdCcNodeTmp) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("p_FmPcdCcNodeTmp")); + return NULL; + } + memset(p_FmPcdCcNodeTmp, 0, sizeof(t_FmPcdCcNode)); + + p_FmPcdCcNodeTmp->numOfKeys = p_FmPcdModifyCcKeyAdditionalParams->numOfKeys; + p_FmPcdCcNodeTmp->h_KeysMatchTable = p_FmPcdModifyCcKeyAdditionalParams->p_KeysMatchTableNew; + p_FmPcdCcNodeTmp->h_AdTable = p_FmPcdModifyCcKeyAdditionalParams->p_AdTableNew; + + p_FmPcdCcNodeTmp->lclMask = p_FmPcdCcNode->lclMask; + p_FmPcdCcNodeTmp->parseCode = p_FmPcdCcNode->parseCode; + p_FmPcdCcNodeTmp->offset = p_FmPcdCcNode->offset; + p_FmPcdCcNodeTmp->prsArrayOffset = p_FmPcdCcNode->prsArrayOffset; + p_FmPcdCcNodeTmp->ctrlFlow = p_FmPcdCcNode->ctrlFlow; + p_FmPcdCcNodeTmp->ccKeySizeAccExtraction = p_FmPcdCcNode->ccKeySizeAccExtraction; + p_FmPcdCcNodeTmp->sizeOfExtraction = p_FmPcdCcNode->sizeOfExtraction; + p_FmPcdCcNodeTmp->glblMaskSize = p_FmPcdCcNode->glblMaskSize; + p_FmPcdCcNodeTmp->p_GlblMask = p_FmPcdCcNode->p_GlblMask; + + if (p_FmPcdCcNextEngineParams->nextEngine == e_FM_PCD_CC) + FillAdOfTypeContLookup(p_Ad, + p_FmPcdCcNode->h_FmPcd, + p_FmPcdCcNodeTmp, +#ifdef FM_PCD_CC_MANIP + p_FmPcdCcNextEngineParams->h_Manip +#else + NULL +#endif /* FM_PCD_CC_MANIP */ + ); + + XX_Free(p_FmPcdCcNodeTmp); + + return p_Ad; +} + +static void UpdateAdPtrOfNodesWhichPointsOnCrntMdfNode(t_FmPcdCcNode *p_CrntMdfNode ,t_FmPcdModifyCcKeyAdditionalParams *p_FmPcdModifyCcKeyAdditionalParams, t_List *h_OldLst, t_List *h_NewLst) +{ + t_CcNodeInformation *p_CcNodeInformation; + t_FmPcdCcNode *p_NodePtrOnCurrentMdfNode = NULL; + t_List *p_Pos; + int i = 0; + t_Handle p_AdTablePtOnCrntCurrentMdfNode, p_AdTableNewModified; + t_CcNodeInformation ccNodeInfo; + + LIST_FOR_EACH(p_Pos, &p_CrntMdfNode->ccPrevNodesLst) + { + p_CcNodeInformation = CC_NODE_F_OBJECT(p_Pos); + p_NodePtrOnCurrentMdfNode = (t_FmPcdCcNode *)p_CcNodeInformation->h_CcNode; + ASSERT_COND(p_NodePtrOnCurrentMdfNode); + /*search in the prev node which exact index points on this current modified node for getting AD */ + for(i = 0; i < p_NodePtrOnCurrentMdfNode->numOfKeys + 1; i++) + { + if(p_NodePtrOnCurrentMdfNode->nextEngineAndRequiredAction[i].nextEngineParams.nextEngine == e_FM_PCD_CC) + { + if(p_NodePtrOnCurrentMdfNode->nextEngineAndRequiredAction[i].nextEngineParams.params.ccParams.h_CcNode == (t_Handle)p_CrntMdfNode) + { + p_AdTablePtOnCrntCurrentMdfNode = PTR_MOVE(p_NodePtrOnCurrentMdfNode->h_AdTable, i*FM_PCD_CC_AD_ENTRY_SIZE); + memset(&ccNodeInfo, 0, sizeof(t_CcNodeInformation)); + ccNodeInfo.h_CcNode = p_AdTablePtOnCrntCurrentMdfNode; + EnqueueNodeInfoToRelevantLst(h_OldLst, &ccNodeInfo); + + p_AdTableNewModified = BuildNewAd(p_FmPcdModifyCcKeyAdditionalParams, p_CrntMdfNode, &p_NodePtrOnCurrentMdfNode->nextEngineAndRequiredAction[i].nextEngineParams); + memset(&ccNodeInfo, 0, sizeof(t_CcNodeInformation)); + ccNodeInfo.h_CcNode = p_AdTableNewModified; + EnqueueNodeInfoToRelevantLst(h_NewLst, &ccNodeInfo); + } + } + } + ASSERT_COND(i != p_NodePtrOnCurrentMdfNode->numOfKeys); + } +} + +static void UpdateAdPtrOfTreesWhichPointsOnCrntMdfNode(t_FmPcdCcNode *p_CrntMdfNode ,t_FmPcdModifyCcKeyAdditionalParams *p_FmPcdModifyCcKeyAdditionalParams, t_List *h_OldLst, t_List *h_NewLst) +{ + t_CcNodeInformation *p_CcNodeInformation; + t_FmPcdCcTree *p_TreePtrOnCurrentMdfNode = NULL; + t_List *p_Pos; + int i = 0; + t_Handle p_AdTableTmp, p_AdTableTmp1; + t_CcNodeInformation ccNodeInfo; + + LIST_FOR_EACH(p_Pos, &p_CrntMdfNode->ccTreeIdLst) + { + p_CcNodeInformation = CC_NODE_F_OBJECT(p_Pos); + p_TreePtrOnCurrentMdfNode = (t_FmPcdCcTree *)p_CcNodeInformation->h_CcNode; + + ASSERT_COND(p_TreePtrOnCurrentMdfNode); + /*search in the trees which exact index points on this current modified node for getting AD + */ + for(i = 0; i < p_TreePtrOnCurrentMdfNode->numOfEntries; i++) + { + if(p_TreePtrOnCurrentMdfNode->nextEngineAndRequiredAction[i].nextEngineParams.nextEngine == e_FM_PCD_CC) + { + if(p_TreePtrOnCurrentMdfNode->nextEngineAndRequiredAction[i].nextEngineParams.params.ccParams.h_CcNode == (t_Handle)p_CrntMdfNode) + { + p_AdTableTmp = UINT_TO_PTR(p_TreePtrOnCurrentMdfNode->ccTreeBaseAddr + i*FM_PCD_CC_AD_ENTRY_SIZE); + memset(&ccNodeInfo, 0, sizeof(t_CcNodeInformation)); + ccNodeInfo.h_CcNode = p_AdTableTmp; + EnqueueNodeInfoToRelevantLst(h_OldLst, &ccNodeInfo); + + p_AdTableTmp1 = BuildNewAd(p_FmPcdModifyCcKeyAdditionalParams, p_CrntMdfNode, &p_TreePtrOnCurrentMdfNode->nextEngineAndRequiredAction[i].nextEngineParams); + memset(&ccNodeInfo, 0, sizeof(t_CcNodeInformation)); + ccNodeInfo.h_CcNode = p_AdTableTmp1; + EnqueueNodeInfoToRelevantLst(h_NewLst, &ccNodeInfo); + } + } + } + ASSERT_COND(i == p_TreePtrOnCurrentMdfNode->numOfEntries); + } +} + +static t_Error ModifyKeyCommonPart1(t_Handle h_FmPcdCcNodeOrTree, uint16_t keyIndex, t_Handle *h_Params, e_ModifyState modifyState, bool check, bool tree) +{ + t_FmPcdModifyCcKeyAdditionalParams *p_FmPcdModifyCcKeyAdditionalParams; + int i = 0, j = 0; + bool wasUpdate = FALSE; + t_FmPcdCcNode *p_FmPcdCcNode = NULL; + t_FmPcdCcTree *p_FmPcdCcTree; + uint16_t numOfKeys; + t_FmPcdCcNextEngineAndRequiredActionParams *p_nextEngineAndRequiredAction = NULL; + + SANITY_CHECK_RETURN_ERROR(h_FmPcdCcNodeOrTree,E_INVALID_HANDLE); + + p_nextEngineAndRequiredAction = XX_Malloc(FM_PCD_MAX_NUM_OF_KEYS * sizeof(*p_nextEngineAndRequiredAction)); + if(!p_nextEngineAndRequiredAction) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("failed to allocate memory for p_nextEngineAndRequiredAction")); + + memset(p_nextEngineAndRequiredAction, 0, FM_PCD_MAX_NUM_OF_KEYS * sizeof(*p_nextEngineAndRequiredAction)); + + if(!tree) + { + p_FmPcdCcNode = (t_FmPcdCcNode *)h_FmPcdCcNodeOrTree; + numOfKeys = p_FmPcdCcNode->numOfKeys; + + /*node has to be pointed by another node or tree*/ + if (!LIST_NumOfObjs(&p_FmPcdCcNode->ccPrevNodesLst) && + !LIST_NumOfObjs(&p_FmPcdCcNode->ccTreeIdLst)) + { + XX_Free(p_nextEngineAndRequiredAction); + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("node has to be pointed by node or tree")); + } + + if(!LIST_NumOfObjs(&p_FmPcdCcNode->ccTreesLst) || + (LIST_NumOfObjs(&p_FmPcdCcNode->ccTreesLst) != 1)) + { + XX_Free(p_nextEngineAndRequiredAction); + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("node has to be belonging to some tree and only to one tree")); + } + + memcpy(p_nextEngineAndRequiredAction, + p_FmPcdCcNode->nextEngineAndRequiredAction, + FM_PCD_MAX_NUM_OF_KEYS * sizeof(t_FmPcdCcNextEngineAndRequiredActionParams)); + + if(check) + { + if((p_FmPcdCcNode->parseCode == CC_PC_FF_IPV4TTL) || + (p_FmPcdCcNode->parseCode == CC_PC_FF_IPV6HOP_LIMIT) || + (p_FmPcdCcNode->parseCode == CC_PC_GENERIC_IC_HASH_INDEXED)) + { + XX_Free(p_nextEngineAndRequiredAction); + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("nodeId of CC_PC_FF_IPV4TTL or CC_PC_FF_IPV6HOP_LIMIT can not be used for addKey, removeKey, modifyKey")); + } + } + } + else + { + p_FmPcdCcTree = (t_FmPcdCcTree *)h_FmPcdCcNodeOrTree; + numOfKeys = p_FmPcdCcTree->numOfEntries; + memcpy(p_nextEngineAndRequiredAction, + p_FmPcdCcTree->nextEngineAndRequiredAction, + FM_PCD_MAX_NUM_OF_KEYS * sizeof(t_FmPcdCcNextEngineAndRequiredActionParams)); + } + + p_FmPcdModifyCcKeyAdditionalParams = + (t_FmPcdModifyCcKeyAdditionalParams *)XX_Malloc(sizeof(t_FmPcdModifyCcKeyAdditionalParams)); + if(!p_FmPcdModifyCcKeyAdditionalParams) + { + XX_Free(p_nextEngineAndRequiredAction); + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("Allocation of internal data structure FAILED")); + } + memset(p_FmPcdModifyCcKeyAdditionalParams, 0, sizeof(t_FmPcdModifyCcKeyAdditionalParams)); + + p_FmPcdModifyCcKeyAdditionalParams->h_CurrentNode = h_FmPcdCcNodeOrTree; + p_FmPcdModifyCcKeyAdditionalParams->keyIndex = keyIndex; + + while(i < numOfKeys) + { + if((j == keyIndex) && !wasUpdate) + { + if(modifyState == e_MODIFY_STATE_ADD) + j++; + else if(modifyState == e_MODIFY_STATE_REMOVE) + i++; + wasUpdate = TRUE; + } + else + { + memcpy(&p_FmPcdModifyCcKeyAdditionalParams->nextEngineAndRequiredAction[j], &p_nextEngineAndRequiredAction[i], sizeof(t_FmPcdCcNextEngineAndRequiredActionParams)); + i++; + j++; + } + } + + if (keyIndex == numOfKeys) + { + if (modifyState == e_MODIFY_STATE_ADD) + j++; + else if(modifyState == e_MODIFY_STATE_REMOVE) + i++; + } + + memcpy(&p_FmPcdModifyCcKeyAdditionalParams->nextEngineAndRequiredAction[j], &p_nextEngineAndRequiredAction[numOfKeys], sizeof(t_FmPcdCcNextEngineAndRequiredActionParams)); + + XX_Free(p_nextEngineAndRequiredAction); + *h_Params = p_FmPcdModifyCcKeyAdditionalParams; + + return E_OK; +} + +static t_Error UpdatePtrWhichPointOnCrntMdfNode(t_FmPcdCcNode *p_FmPcdCcNode, t_FmPcdModifyCcKeyAdditionalParams *p_FmPcdModifyCcKeyAdditionalParams ,t_List *h_OldLst, t_List *h_NewLst) +{ + if(!LIST_IsEmpty(&p_FmPcdCcNode->ccPrevNodesLst)) + UpdateAdPtrOfNodesWhichPointsOnCrntMdfNode(p_FmPcdCcNode, p_FmPcdModifyCcKeyAdditionalParams, h_OldLst, h_NewLst); + + if(!LIST_IsEmpty(&p_FmPcdCcNode->ccTreeIdLst)) + UpdateAdPtrOfTreesWhichPointsOnCrntMdfNode(p_FmPcdCcNode, p_FmPcdModifyCcKeyAdditionalParams, h_OldLst, h_NewLst); + + return E_OK; +} + +static void FmPcdCcUpdateTreeOwner(t_FmPcdCcTree *p_FmPcdCcTree, bool add) +{ + ASSERT_COND(p_FmPcdCcTree); + + if(add) + p_FmPcdCcTree->owners++; + else + { + ASSERT_COND(p_FmPcdCcTree->owners); + p_FmPcdCcTree->owners--; + } +} + +#ifdef FM_PCD_CC_MANIP +static t_Error CheckAndSetManipParamsWithCcNodeParams(t_FmPcdCcNode *p_FmPcdCcNode) +{ + t_Error err = E_OK; + int i = 0; + + for(i = 0; i < p_FmPcdCcNode->numOfKeys; i++) + { + if(p_FmPcdCcNode->nextEngineAndRequiredAction[i].nextEngineParams.h_Manip) + { + err = FmPcdManipCheckParamsWithCcNodeParams(p_FmPcdCcNode->nextEngineAndRequiredAction[i].nextEngineParams.h_Manip, (t_Handle)p_FmPcdCcNode); + if(err) + return err; + } + } + + return err; +} +#endif /* FM_PCD_CC_MANIP */ + +static t_Error CcUpdateParams(t_Handle h_FmPcd, + t_Handle h_FmPort, + t_Handle h_FmTree, + bool validate) +{ + t_FmPcdCcTree *p_CcTree = (t_FmPcdCcTree *) h_FmTree; + + return CcUpdateParam(h_FmPcd, + h_FmPort, + p_CcTree->nextEngineAndRequiredAction, + p_CcTree->numOfEntries, + UINT_TO_PTR(p_CcTree->ccTreeBaseAddr), + validate, + 0, + h_FmTree, + FALSE); +} + +static t_Error CheckParams(t_Handle h_FmPcd, + t_FmPcdCcNodeParams *p_CcNodeParam, + t_FmPcdCcNode *p_FmPcdCcNode, + bool *isKeyTblAlloc) +{ + int tmp = 0; + t_FmPcdCcKeyParams *p_KeyParams; + t_Error err; + uint32_t requiredAction = 0; + + err = ValidateNextEngineParams(h_FmPcd, &p_CcNodeParam->keysParams.ccNextEngineParamsForMiss); + if(err) + RETURN_ERROR(MAJOR, err, ("For this node MissNextEngineParams are not valid")); + +#ifdef FM_PCD_CC_MANIP + if(p_CcNodeParam->keysParams.ccNextEngineParamsForMiss.h_Manip) + { + err = FmPcdManipCheckParamsForCcNextEgine(&p_CcNodeParam->keysParams.ccNextEngineParamsForMiss, &requiredAction); + if(err) + RETURN_ERROR(MAJOR, err, (NO_MSG)); + } +#endif /* FM_PCD_CC_MANIP */ + + memcpy(&p_FmPcdCcNode->nextEngineAndRequiredAction[p_FmPcdCcNode->numOfKeys].nextEngineParams,&p_CcNodeParam->keysParams.ccNextEngineParamsForMiss, sizeof(t_FmPcdCcNextEngineParams)); + p_FmPcdCcNode->nextEngineAndRequiredAction[p_FmPcdCcNode->numOfKeys].requiredAction = requiredAction; + + for(tmp = 0 ; tmp < p_FmPcdCcNode->numOfKeys; tmp++) + { + p_KeyParams = &p_CcNodeParam->keysParams.keyParams[tmp]; + + if(!p_KeyParams->p_Key) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("p_Key is not initialized")); + + + err = ValidateNextEngineParams(h_FmPcd, &p_KeyParams->ccNextEngineParams); + if(err) + RETURN_ERROR(MAJOR, err, (NO_MSG)); + + err = UpdateGblMask(p_FmPcdCcNode, + p_CcNodeParam->keysParams.keySize, + p_KeyParams->p_Mask); + +#ifdef FM_PCD_CC_MANIP + if(p_KeyParams->ccNextEngineParams.h_Manip) + { + err = FmPcdManipCheckParamsForCcNextEgine(&p_KeyParams->ccNextEngineParams, &requiredAction); + if(err) + RETURN_ERROR(MAJOR, err, (NO_MSG)); + } +#endif /* FM_PCD_CC_MANIP */ + + memcpy(&p_FmPcdCcNode->nextEngineAndRequiredAction[tmp],&p_KeyParams->ccNextEngineParams, sizeof(t_FmPcdCcNextEngineParams)); + p_FmPcdCcNode->nextEngineAndRequiredAction[tmp].requiredAction = requiredAction; + } + + *isKeyTblAlloc = TRUE; + return E_OK; +} + +static t_Error Ipv4TtlOrIpv6HopLimiCheckParams( t_Handle h_FmPcd, + t_FmPcdCcNodeParams *p_CcNodeParam, t_FmPcdCcNode *p_FmPcdCcNode, + bool *isKeyTblAlloc) +{ + int tmp = 0; + t_FmPcdCcKeyParams *p_KeyParams; + t_Error err; + uint8_t key = 0x01; + uint32_t requiredAction = 0; + + if(p_FmPcdCcNode->numOfKeys != 1 ) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("for IPV4TTL and IPV6_HOP_LIMIT has to be only 1 key - TTL = 1, otherwise it's Miss")); + + err = ValidateNextEngineParams(h_FmPcd, &p_CcNodeParam->keysParams.ccNextEngineParamsForMiss); + if(err) + RETURN_ERROR(MAJOR, err, ("For this node MissNextEngineParams are not valid")); + +#ifdef FM_PCD_CC_MANIP + if(p_CcNodeParam->keysParams.ccNextEngineParamsForMiss.h_Manip) + { + err = FmPcdManipCheckParamsForCcNextEgine(&p_CcNodeParam->keysParams.ccNextEngineParamsForMiss, &requiredAction); + if(err) + RETURN_ERROR(MAJOR, err, (NO_MSG)); + } +#endif /* FM_PCD_CC_MANIP */ + + memcpy(&p_FmPcdCcNode->nextEngineAndRequiredAction[p_FmPcdCcNode->numOfKeys].nextEngineParams, &p_CcNodeParam->keysParams.ccNextEngineParamsForMiss, sizeof(t_FmPcdCcNextEngineParams)); + p_FmPcdCcNode->nextEngineAndRequiredAction[p_FmPcdCcNode->numOfKeys].requiredAction = requiredAction; + + for(tmp = 0 ; tmp < p_FmPcdCcNode->numOfKeys; tmp++) + { + p_KeyParams = &p_CcNodeParam->keysParams.keyParams[tmp]; + if(p_KeyParams->p_Mask) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("If node of the type IPV4_TTL or IPV6_HOP_LIMIT p_Mask can not be initialized")); + if(memcmp(p_KeyParams->p_Key, &key, 1) != 0) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("If node of the type IPV4_TTL or IPV6_HOP_LIMIT p_Key has to be 1")); + err = ValidateNextEngineParams(h_FmPcd, &p_KeyParams->ccNextEngineParams); + if(err) + RETURN_ERROR(MAJOR, err, (NO_MSG)); + +#ifdef FM_PCD_CC_MANIP + if(p_KeyParams->ccNextEngineParams.h_Manip) + { + err = FmPcdManipCheckParamsForCcNextEgine(&p_KeyParams->ccNextEngineParams, &requiredAction); + if(err) + RETURN_ERROR(MAJOR, err, (NO_MSG)); + } +#endif /* FM_PCD_CC_MANIP */ + + memcpy(&p_FmPcdCcNode->nextEngineAndRequiredAction[tmp].nextEngineParams, &p_KeyParams->ccNextEngineParams, sizeof(t_FmPcdCcNextEngineParams)); + p_FmPcdCcNode->nextEngineAndRequiredAction[tmp].requiredAction = requiredAction; + } + + *isKeyTblAlloc = FALSE; + return E_OK; +} + +static t_Error IcHashIndexedCheckParams(t_Handle h_FmPcd, + t_FmPcdCcNodeParams *p_CcNodeParam, + t_FmPcdCcNode *p_FmPcdCcNode, + /*uint16_t *ccInfo,*/ + /*t_List *ccNextDifferentNodesLst,*/ + bool *isKeyTblAlloc) +{ + int tmp = 0, countOnes = 0; + t_FmPcdCcKeyParams *p_KeyParams; + t_Error err; + uint16_t glblMask = p_CcNodeParam->extractCcParams.extractNonHdr.icIndxMask; + uint16_t countMask = (uint16_t)(glblMask >> 4); +#ifdef FM_PCD_CC_MANIP + uint32_t requiredAction; +#endif /* FM_PCD_CC_MANIP */ + + if (glblMask & 0x000f) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("icIndxMask has to be with last nibble 0")); + + while (countMask) + { + countOnes++; + countMask=(uint16_t)(countMask>>1); + } + + if (!POWER_OF_2(p_FmPcdCcNode->numOfKeys)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("For Node of the type INDEXED numOfKeys has to be powerOfTwo")); + if (p_FmPcdCcNode->numOfKeys != ((uint32_t)1<keysParams.ccNextEngineParamsForMiss); + if(GET_ERROR_TYPE(err)!= E_NOT_SUPPORTED) + RETURN_ERROR(MAJOR, err, ("MissNextEngineParams for the node of the type IC_INDEX_HASH has to be UnInitialized")); + + for(tmp = 0 ; tmp < p_FmPcdCcNode->numOfKeys; tmp++) + { + p_KeyParams = &p_CcNodeParam->keysParams.keyParams[tmp]; + if(p_KeyParams->p_Mask || p_KeyParams->p_Key) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("For Node of the type IC_HASH_INDEXED p_Key or p_Mask has to be NULL")); + + if((glblMask & (tmp * 16)) == (tmp * 16)) + { + err = ValidateNextEngineParams(h_FmPcd, &p_KeyParams->ccNextEngineParams); + if(err) + RETURN_ERROR(MAJOR, err, ("This index has to be initialized for the node of the type IC_INDEX_HASH according to settings of GlobalMask ")); + +#ifdef FM_PCD_CC_MANIP + if(p_KeyParams->ccNextEngineParams.h_Manip) + { + err = FmPcdManipCheckParamsForCcNextEgine(&p_KeyParams->ccNextEngineParams, &requiredAction); + if(err) + RETURN_ERROR(MAJOR, err, (NO_MSG)); + } + p_FmPcdCcNode->nextEngineAndRequiredAction[tmp].requiredAction = requiredAction; +#endif /* FM_PCD_CC_MANIP */ + + memcpy(&p_FmPcdCcNode->nextEngineAndRequiredAction[tmp].nextEngineParams,&p_KeyParams->ccNextEngineParams, sizeof(t_FmPcdCcNextEngineParams)); + } + else + { + err = ValidateNextEngineParams(h_FmPcd, &p_KeyParams->ccNextEngineParams); + if(GET_ERROR_TYPE(err)!= E_NOT_SUPPORTED) + RETURN_ERROR(MAJOR, err, ("This index has to be UnInitialized for the node of the type IC_INDEX_HASH according to settings of GlobalMask")); + } + } + *isKeyTblAlloc = FALSE; + memcpy(PTR_MOVE(p_FmPcdCcNode->p_GlblMask, 2), &glblMask, 2); + + return E_OK; +} + +t_Error FmPcdCcModifyNextEngineParamTree(t_Handle h_FmPcd, t_Handle h_FmPcdCcTree, uint8_t grpId, uint8_t index, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams, t_List *h_OldLst, t_List *h_NewLst, t_Handle *h_AdditionalParams) +{ + t_FmPcdCcTree *p_FmPcdCcTree = (t_FmPcdCcTree *)h_FmPcdCcTree; + t_Error err = E_OK; + uint16_t keyIndex; + t_FmPcdModifyCcKeyAdditionalParams *p_ModifyKeyParams; + + SANITY_CHECK_RETURN_ERROR((grpId <= 7),E_INVALID_VALUE); + SANITY_CHECK_RETURN_ERROR(h_FmPcdCcTree,E_INVALID_VALUE); + + if(grpId >= p_FmPcdCcTree->numOfGrps) + RETURN_ERROR(MAJOR, E_INVALID_HANDLE, ("grpId you asked > numOfGroup of relevant tree")); + + if(index >= p_FmPcdCcTree->fmPcdGroupParam[grpId].numOfEntriesInGroup) + RETURN_ERROR(MAJOR, E_INVALID_HANDLE, ("index > numOfEntriesInGroup")); + + keyIndex = (uint16_t)(p_FmPcdCcTree->fmPcdGroupParam[grpId].baseGroupEntry + index); + + err = ModifyKeyCommonPart1(h_FmPcdCcTree, keyIndex, h_AdditionalParams, e_MODIFY_STATE_CHANGE, TRUE, TRUE); + if(err) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + + p_ModifyKeyParams = (t_FmPcdModifyCcKeyAdditionalParams *)*h_AdditionalParams; + p_ModifyKeyParams->tree = TRUE; + + err = BuildNewNodeModifyNextEngine (h_FmPcd, h_FmPcdCcTree, keyIndex,p_FmPcdCcNextEngineParams, h_OldLst, h_NewLst, p_ModifyKeyParams); + if(err) + { + XX_Free(p_ModifyKeyParams); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + return E_OK; + +} + +t_Error FmPcdCcRemoveKey(t_Handle h_FmPcd, t_Handle h_FmPcdCcNode, uint8_t keyIndex, t_List *h_OldLst, t_List *h_NewLst, t_Handle *h_AdditionalParams) +{ + + t_FmPcdCcNode *p_FmPcdCcNode = (t_FmPcdCcNode *) h_FmPcdCcNode; + t_Error err = E_OK; + t_FmPcdModifyCcKeyAdditionalParams *p_ModifyKeyParams; + + if(keyIndex >= p_FmPcdCcNode->numOfKeys) + RETURN_ERROR(MAJOR, E_INVALID_HANDLE, ("impossible to remove key when numOfKeys <= keyIndex")); + + if(!p_FmPcdCcNode->numOfKeys) + RETURN_ERROR(MAJOR, E_INVALID_HANDLE, ("keyIndex you asked > numOfKeys of relevant node that was initialized")); + + if(p_FmPcdCcNode->h_FmPcd != h_FmPcd) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("handler to FmPcd is diferent from one which was assigned to the node in the Init time")); + + err = ModifyKeyCommonPart1(p_FmPcdCcNode, keyIndex, h_AdditionalParams, e_MODIFY_STATE_REMOVE, TRUE, FALSE); + if(err) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + + p_ModifyKeyParams = (t_FmPcdModifyCcKeyAdditionalParams *)*h_AdditionalParams; + err = BuildNewNodeRemoveKey (p_FmPcdCcNode, keyIndex, p_ModifyKeyParams); + if(err) + { + XX_Free(p_ModifyKeyParams); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + err = UpdatePtrWhichPointOnCrntMdfNode(p_FmPcdCcNode, p_ModifyKeyParams, h_OldLst, h_NewLst); + if(err) + { + ReleaseNewNodeCommonPart(p_ModifyKeyParams); + XX_Free(p_ModifyKeyParams); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + return E_OK; + +} + +t_Error FmPcdCcModifyKey(t_Handle h_FmPcd, t_Handle h_FmPcdCcNode, uint8_t keyIndex, uint8_t keySize, uint8_t *p_Key, uint8_t *p_Mask, t_List *h_OldLst, t_List *h_NewLst,t_Handle *h_AdditionalParams) +{ + t_FmPcdCcNode *p_FmPcdCcNode = (t_FmPcdCcNode *)h_FmPcdCcNode; + t_Error err = E_OK; + t_FmPcdModifyCcKeyAdditionalParams *p_ModifyKeyParams; + + if(keyIndex >= p_FmPcdCcNode->numOfKeys) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("keyIndex > previousely cleared last index + 1")); + + if((p_FmPcdCcNode->numOfKeys + 1) > FM_PCD_MAX_NUM_OF_CC_NODES) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("numOfKeys with new key can not be larger than 255")); + + if(keySize != p_FmPcdCcNode->userSizeOfExtraction) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("size for ModifyKey has to be the same as defined in SetNode")); + + if(p_FmPcdCcNode->h_FmPcd != h_FmPcd) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("handler to FmPcd is diferent from one which was assigned to the node in the Init time")); + + err = ModifyKeyCommonPart1(p_FmPcdCcNode, keyIndex, h_AdditionalParams, e_MODIFY_STATE_CHANGE, TRUE, FALSE); + if(err) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + + p_ModifyKeyParams = (t_FmPcdModifyCcKeyAdditionalParams *)*h_AdditionalParams; + + err = BuildNewNodeModifyKey (p_FmPcdCcNode, keyIndex, p_Key, p_Mask, p_ModifyKeyParams); + if(err) + { + XX_Free(p_ModifyKeyParams); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + err = UpdatePtrWhichPointOnCrntMdfNode(p_FmPcdCcNode, p_ModifyKeyParams, h_OldLst, h_NewLst); + if(err) + { + ReleaseNewNodeCommonPart(p_ModifyKeyParams); + XX_Free(p_ModifyKeyParams); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + return E_OK; +} + + +t_Error FmPcdCcModiyNextEngineParamNode(t_Handle h_FmPcd,t_Handle h_FmPcdCcNode, uint8_t keyIndex,t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams,t_List *h_OldPointer, t_List *h_NewPointer,t_Handle *h_AdditionalParams) +{ + t_FmPcdCcNode *p_FmPcdCcNode = (t_FmPcdCcNode *)h_FmPcdCcNode; + t_Error err = E_OK; + t_FmPcdModifyCcKeyAdditionalParams *p_ModifyKeyParams; + + SANITY_CHECK_RETURN_ERROR(h_FmPcd,E_INVALID_VALUE); + SANITY_CHECK_RETURN_ERROR(p_FmPcdCcNode,E_INVALID_HANDLE); + + if(keyIndex >= p_FmPcdCcNode->numOfKeys) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("keyIndex > previousely cleared last index + 1")); + + if((p_FmPcdCcNode->numOfKeys + 1) > FM_PCD_MAX_NUM_OF_CC_NODES) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("numOfKeys with new key can not be larger than 255")); + + err = ModifyKeyCommonPart1(p_FmPcdCcNode, keyIndex, h_AdditionalParams, e_MODIFY_STATE_CHANGE, FALSE, FALSE); + if(err) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + + p_ModifyKeyParams = (t_FmPcdModifyCcKeyAdditionalParams *)*h_AdditionalParams; + + err = BuildNewNodeModifyNextEngine (h_FmPcd, p_FmPcdCcNode, keyIndex,p_FmPcdCcNextEngineParams, h_OldPointer, h_NewPointer, p_ModifyKeyParams); + if(err) + { + XX_Free(p_ModifyKeyParams); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + return E_OK; +} + +t_Error FmPcdCcModifyMissNextEngineParamNode(t_Handle h_FmPcd,t_Handle h_FmPcdCcNode, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams,t_List *h_OldPointer, t_List *h_NewPointer,t_Handle *h_AdditionalParams) +{ + t_FmPcdCcNode *p_FmPcdCcNode = (t_FmPcdCcNode *)h_FmPcdCcNode; + t_Error err = E_OK; + uint16_t keyIndex; + t_FmPcdModifyCcKeyAdditionalParams *p_ModifyKeyParams; + + SANITY_CHECK_RETURN_ERROR(p_FmPcdCcNode,E_INVALID_VALUE); + + keyIndex = p_FmPcdCcNode->numOfKeys; + + err = ModifyKeyCommonPart1(p_FmPcdCcNode, keyIndex, h_AdditionalParams, e_MODIFY_STATE_CHANGE, TRUE, FALSE); + if(err) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + + p_ModifyKeyParams = (t_FmPcdModifyCcKeyAdditionalParams *)*h_AdditionalParams; + + err = BuildNewNodeModifyNextEngine (h_FmPcd, p_FmPcdCcNode, keyIndex,p_FmPcdCcNextEngineParams, h_OldPointer, h_NewPointer, p_ModifyKeyParams); + if(err) + { + XX_Free(p_ModifyKeyParams); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + return E_OK; +} + +t_Error FmPcdCcAddKey(t_Handle h_FmPcd, t_Handle h_FmPcdCcNode, uint8_t keyIndex, uint8_t keySize, t_FmPcdCcKeyParams *p_FmPcdCcKeyParams, t_List *h_OldLst, t_List *h_NewLst, t_Handle *h_AdditionalParams) +{ + t_FmPcdCcNode *p_FmPcdCcNode = (t_FmPcdCcNode *)h_FmPcdCcNode; + t_FmPcdModifyCcKeyAdditionalParams *p_ModifyKeyParams; + t_Error err = E_OK; + + if(keyIndex > p_FmPcdCcNode->numOfKeys) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("keyIndex > previousely cleared last index + 1")); + + if((p_FmPcdCcNode->numOfKeys + 1) > FM_PCD_MAX_NUM_OF_CC_NODES) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("numOfKeys with new key can not be larger than 255")); + + if(keySize != p_FmPcdCcNode->userSizeOfExtraction) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("keySize has to be defined as it was defined in initialization step.")); + + if(p_FmPcdCcNode->h_FmPcd != h_FmPcd) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("handler to FmPcd is diferent from one which was assigned to the node in the Init time")); + + err = ModifyKeyCommonPart1(p_FmPcdCcNode, keyIndex, h_AdditionalParams, e_MODIFY_STATE_ADD, TRUE, FALSE); + if(err) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + + p_ModifyKeyParams = (t_FmPcdModifyCcKeyAdditionalParams *)*h_AdditionalParams; + err = BuildNewNodeAddOrMdfyKeyAndNextEngine (h_FmPcd, p_FmPcdCcNode, keyIndex, p_FmPcdCcKeyParams, p_ModifyKeyParams, TRUE); + if(err) + { + XX_Free(p_ModifyKeyParams); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + err = UpdatePtrWhichPointOnCrntMdfNode(p_FmPcdCcNode, p_ModifyKeyParams, h_OldLst, h_NewLst); + if(err) + { + ReleaseNewNodeCommonPart(p_ModifyKeyParams); + XX_Free(p_ModifyKeyParams); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + return E_OK; +} + +t_Error FmPcdCcModifyKeyAndNextEngine(t_Handle h_FmPcd, t_Handle h_FmPcdCcNode, uint8_t keyIndex, uint8_t keySize, t_FmPcdCcKeyParams *p_FmPcdCcKeyParams, t_List *h_OldLst, t_List *h_NewLst, t_Handle *h_AdditionalParams) +{ + t_FmPcdCcNode *p_FmPcdCcNode = (t_FmPcdCcNode *)h_FmPcdCcNode; + t_FmPcdModifyCcKeyAdditionalParams *p_ModifyKeyParams; + t_Error err = E_OK; + + if(keyIndex > p_FmPcdCcNode->numOfKeys) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("keyIndex > previousely cleared last index + 1")); + + if((p_FmPcdCcNode->numOfKeys + 1) > FM_PCD_MAX_NUM_OF_CC_NODES) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("numOfKeys with new key can not be larger than 255")); + + if(keySize != p_FmPcdCcNode->userSizeOfExtraction) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("keySize has to be defined as it was defined in initialization step")); + + if(p_FmPcdCcNode->h_FmPcd != h_FmPcd) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("handler to FmPcd is diferent from one which was assigned to the node in the Init time")); + + err = ModifyKeyCommonPart1(p_FmPcdCcNode, keyIndex, h_AdditionalParams, e_MODIFY_STATE_CHANGE, TRUE, FALSE); + if(err) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + + p_ModifyKeyParams = (t_FmPcdModifyCcKeyAdditionalParams *)*h_AdditionalParams; + + err = BuildNewNodeAddOrMdfyKeyAndNextEngine (h_FmPcd, p_FmPcdCcNode, keyIndex, p_FmPcdCcKeyParams, p_ModifyKeyParams, FALSE); + if(err) + { + ReleaseNewNodeCommonPart(p_ModifyKeyParams); + XX_Free(p_ModifyKeyParams); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + err = UpdatePtrWhichPointOnCrntMdfNode(p_FmPcdCcNode, p_ModifyKeyParams, h_OldLst, h_NewLst); + if(err) + { + ReleaseNewNodeCommonPart(p_ModifyKeyParams); + XX_Free(p_ModifyKeyParams); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + return E_OK; +} + +t_Error FmPcdCcReleaseModifiedDataStructure(t_Handle h_FmPcd, t_List *h_FmPcdOldPointersLst, t_List *h_FmPcdNewPointersLst, uint16_t numOfGoodChanges, t_Handle *h_Params) +{ + t_FmPcdModifyCcKeyAdditionalParams *p_CcNewModifyAdditionalParams = (t_FmPcdModifyCcKeyAdditionalParams *)*h_Params; + t_List *p_Pos; + t_Error err = E_OK; + t_CcNodeInformation ccNodeInfo, *p_CcNodeInformation; + t_Handle h_Muram; + t_FmPcdCcNode *p_FmPcdCcNextNode; + t_List *p_UpdateLst; + + UNUSED(numOfGoodChanges); + + SANITY_CHECK_RETURN_ERROR(h_FmPcd,E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_CcNewModifyAdditionalParams->h_CurrentNode,E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(h_FmPcdOldPointersLst,E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(h_FmPcdNewPointersLst,E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR((numOfGoodChanges == LIST_NumOfObjs(h_FmPcdOldPointersLst)),E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR((numOfGoodChanges == LIST_NumOfObjs(h_FmPcdNewPointersLst)),E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR((LIST_NumOfObjs(h_FmPcdOldPointersLst) == LIST_NumOfObjs(h_FmPcdNewPointersLst)),E_INVALID_STATE); + + /*we don't update subtree of the new node with new tree because it was done in the previose stage*/ + if(p_CcNewModifyAdditionalParams->h_NodeForAdd) + { + p_FmPcdCcNextNode = (t_FmPcdCcNode*)p_CcNewModifyAdditionalParams->h_NodeForAdd; + if(!p_CcNewModifyAdditionalParams->tree) + p_UpdateLst = &p_FmPcdCcNextNode->ccPrevNodesLst; + else + p_UpdateLst = &p_FmPcdCcNextNode->ccTreeIdLst; + p_CcNodeInformation = FindNodeInfoInReleventLst(p_UpdateLst, p_CcNewModifyAdditionalParams->h_CurrentNode); + if(p_CcNodeInformation) + p_CcNodeInformation->index++; + else + { + memset(&ccNodeInfo, 0, sizeof(t_CcNodeInformation)); + ccNodeInfo.h_CcNode = (t_Handle)p_CcNewModifyAdditionalParams->h_CurrentNode; + ccNodeInfo.index = 1; + EnqueueNodeInfoToRelevantLst(p_UpdateLst, &ccNodeInfo); + } + } + + if(p_CcNewModifyAdditionalParams->h_NodeForRmv) + { + + p_FmPcdCcNextNode = (t_FmPcdCcNode*)p_CcNewModifyAdditionalParams->h_NodeForRmv; + if(!p_CcNewModifyAdditionalParams->tree) + { + p_UpdateLst = &p_FmPcdCcNextNode->ccPrevNodesLst; + LIST_FOR_EACH(p_Pos, &p_FmPcdCcNextNode->ccTreesLst) + { + p_CcNodeInformation = CC_NODE_F_OBJECT(p_Pos); + ASSERT_COND(p_CcNodeInformation->h_CcNode); + err = FmPcdCcSetRequiredAction(h_FmPcd, + UPDATE_CC_WITH_DELETE_TREE, + &((t_FmPcdCcNode *)(p_CcNewModifyAdditionalParams->h_CurrentNode))->nextEngineAndRequiredAction[p_CcNewModifyAdditionalParams->keyIndex], + PTR_MOVE(((t_FmPcdCcNode *)(p_CcNewModifyAdditionalParams->h_CurrentNode))->h_AdTable, p_CcNewModifyAdditionalParams->keyIndex*FM_PCD_CC_AD_ENTRY_SIZE), + 1, + p_CcNodeInformation->h_CcNode); + } + } + else + { + p_UpdateLst = &p_FmPcdCcNextNode->ccTreeIdLst; + err = FmPcdCcSetRequiredAction(h_FmPcd, + UPDATE_CC_WITH_DELETE_TREE, + &((t_FmPcdCcTree *)(p_CcNewModifyAdditionalParams->h_CurrentNode))->nextEngineAndRequiredAction[p_CcNewModifyAdditionalParams->keyIndex], + UINT_TO_PTR(((t_FmPcdCcTree *)(p_CcNewModifyAdditionalParams->h_CurrentNode))->ccTreeBaseAddr + p_CcNewModifyAdditionalParams->keyIndex*FM_PCD_CC_AD_ENTRY_SIZE), + 1, + p_CcNewModifyAdditionalParams->h_CurrentNode); + } + if(err) + return err; + + /*we remove from the subtree of the removed node tree because it wasn't done in the previose stage*/ + /*update ccPrevNodesLst or ccTreeIdLst of the removed node*/ + /*update of the nodeOwner*/ + p_CcNodeInformation = FindNodeInfoInReleventLst(p_UpdateLst, p_CcNewModifyAdditionalParams->h_CurrentNode); + ASSERT_COND(p_CcNodeInformation); + ASSERT_COND(p_CcNodeInformation->index); + p_CcNodeInformation->index--; + if(p_CcNodeInformation->index == 0) + DequeueNodeInfoFromRelevantLst(p_UpdateLst,p_CcNewModifyAdditionalParams->h_CurrentNode); + ASSERT_COND(LIST_NumOfObjs(&p_FmPcdCcNextNode->ccTreesLst) == 1); + UpdateNodeOwner(p_FmPcdCcNextNode, FALSE); + } + +#ifdef FM_PCD_CC_MANIP + if(p_CcNewModifyAdditionalParams->h_ManipForRmv) + FmPcdManipUpdateOwner(p_CcNewModifyAdditionalParams->h_ManipForRmv, FALSE); +#endif /* FM_PCD_CC_MANIP */ + + h_Muram = FmPcdGetMuramHandle(h_FmPcd); + ASSERT_COND(h_Muram); + + /*we release new AD which was allocated and updated for copy from to actual AD*/ + LIST_FOR_EACH(p_Pos, h_FmPcdNewPointersLst) + { + p_CcNodeInformation = CC_NODE_F_OBJECT(p_Pos); + ASSERT_COND(p_CcNodeInformation->h_CcNode); + FM_MURAM_FreeMem(h_Muram, p_CcNodeInformation->h_CcNode); + + } + + /*free Old data structure if it has to be freed - new data structure was allocated*/ + if(p_CcNewModifyAdditionalParams->p_AdTableOld) + FM_MURAM_FreeMem(h_Muram,p_CcNewModifyAdditionalParams->p_AdTableOld); + if(p_CcNewModifyAdditionalParams->p_KeysMatchTableOld) + FM_MURAM_FreeMem(h_Muram,p_CcNewModifyAdditionalParams->p_KeysMatchTableOld); + + /*update current modified node with changed fields if it's required*/ + if(!p_CcNewModifyAdditionalParams->tree) + { + if(p_CcNewModifyAdditionalParams->p_AdTableNew) + ((t_FmPcdCcNode *)(p_CcNewModifyAdditionalParams->h_CurrentNode))->h_AdTable = p_CcNewModifyAdditionalParams->p_AdTableNew; + if(p_CcNewModifyAdditionalParams->numOfKeys) + ((t_FmPcdCcNode *)(p_CcNewModifyAdditionalParams->h_CurrentNode))->numOfKeys = p_CcNewModifyAdditionalParams->numOfKeys; + if(p_CcNewModifyAdditionalParams->p_KeysMatchTableNew) + ((t_FmPcdCcNode *)(p_CcNewModifyAdditionalParams->h_CurrentNode))->h_KeysMatchTable = p_CcNewModifyAdditionalParams->p_KeysMatchTableNew; + memcpy(((t_FmPcdCcNode *)(p_CcNewModifyAdditionalParams->h_CurrentNode))->nextEngineAndRequiredAction, &p_CcNewModifyAdditionalParams->nextEngineAndRequiredAction, sizeof(t_FmPcdCcNextEngineAndRequiredActionParams) * (FM_PCD_MAX_NUM_OF_KEYS)); + } + else + memcpy(&((t_FmPcdCcTree *)(p_CcNewModifyAdditionalParams->h_CurrentNode))->nextEngineAndRequiredAction, &p_CcNewModifyAdditionalParams->nextEngineAndRequiredAction, sizeof(t_FmPcdCcNextEngineAndRequiredActionParams) * (((t_FmPcdCcTree *)(p_CcNewModifyAdditionalParams->h_CurrentNode))->numOfEntries)); + + ReleaseLst(h_FmPcdOldPointersLst); + ReleaseLst(h_FmPcdNewPointersLst); + XX_Free(p_CcNewModifyAdditionalParams); + + return E_OK; +} + +uint32_t FmPcdCcGetNodeAddrOffsetFromNodeInfo(t_Handle h_FmPcd, t_Handle h_Pointer) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + t_CcNodeInformation *p_CcNodeInfo; + + SANITY_CHECK_RETURN_VALUE(h_FmPcd,E_INVALID_HANDLE, (uint32_t)ILLEGAL_BASE); + + p_CcNodeInfo = CC_NODE_F_OBJECT(h_Pointer); + return (uint32_t)(XX_VirtToPhys(p_CcNodeInfo->h_CcNode) - p_FmPcd->physicalMuramBase); +} + +t_Error FmPcdCcGetGrpParams(t_Handle h_FmPcdCcTree, uint8_t grpId, uint32_t *p_GrpBits, uint8_t *p_GrpBase) +{ + t_FmPcdCcTree *p_FmPcdCcTree = (t_FmPcdCcTree *) h_FmPcdCcTree; + + SANITY_CHECK_RETURN_ERROR(h_FmPcdCcTree, E_INVALID_HANDLE); + + if(grpId >= p_FmPcdCcTree->numOfGrps) + RETURN_ERROR(MAJOR, E_INVALID_HANDLE, ("grpId you asked > numOfGroup of relevant tree")); + *p_GrpBits = p_FmPcdCcTree->fmPcdGroupParam[grpId].totalBitsMask; + *p_GrpBase = p_FmPcdCcTree->fmPcdGroupParam[grpId].baseGroupEntry; + return E_OK; +} + +t_Error FmPcdCcBindTree(t_Handle h_FmPcd, t_Handle h_FmPcdCcTree, uint32_t *p_Offset, t_Handle h_FmPort) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_FmPcdCcTree *p_FmPcdCcTree = (t_FmPcdCcTree *)h_FmPcdCcTree; + t_Error err = E_OK; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd,E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcdCcTree,E_INVALID_STATE); + + FmPcdCcUpdateTreeOwner(p_FmPcdCcTree, TRUE); + + *p_Offset = (uint32_t)(XX_VirtToPhys(UINT_TO_PTR(p_FmPcdCcTree->ccTreeBaseAddr)) - + p_FmPcd->physicalMuramBase); + + err = CcUpdateParams(h_FmPcd, h_FmPort, h_FmPcdCcTree, TRUE); + + return err; +} + +t_Error FmPcdCcUnbindTree(t_Handle h_FmPcd, t_Handle h_FmPcdCcTree) +{ + t_FmPcdCcTree *p_FmPcdCcTree = (t_FmPcdCcTree *)h_FmPcdCcTree; + + UNUSED(h_FmPcd); + + SANITY_CHECK_RETURN_ERROR(p_FmPcdCcTree,E_INVALID_HANDLE); + + FmPcdCcUpdateTreeOwner(p_FmPcdCcTree, FALSE); + + return E_OK; +} + +t_Error FmPcdCcTreeTryLock(t_Handle h_FmPcdCcTree) +{ + if (TRY_LOCK(NULL, &((t_FmPcdCcTree *)h_FmPcdCcTree)->lock)) + return E_OK; + return ERROR_CODE(E_BUSY); +} + +t_Error FmPcdCcNodeTreeTryLock(t_Handle h_FmPcd,t_Handle h_FmPcdCcNode, t_List *p_List) +{ + t_FmPcdCcNode *p_FmPcdCcNode = (t_FmPcdCcNode *)h_FmPcdCcNode; + t_List *p_Pos; + t_CcNodeInformation *p_CcNodeInfo, nodeInfo; + t_Error err = E_OK; + + UNUSED(h_FmPcd); + + if(LIST_IsEmpty(&p_FmPcdCcNode->ccTreesLst)) + RETURN_ERROR(MAJOR, E_NOT_AVAILABLE, ("asked for more nodes in CC than MAX")) ; + LIST_FOR_EACH(p_Pos, &p_FmPcdCcNode->ccTreesLst) + { + p_CcNodeInfo = CC_NODE_F_OBJECT(p_Pos); + ASSERT_COND(p_CcNodeInfo->h_CcNode); + err = FmPcdCcTreeTryLock(p_CcNodeInfo->h_CcNode); + if(err == E_OK) + { + memset(&nodeInfo, 0, sizeof(t_CcNodeInformation)); + nodeInfo.h_CcNode = p_CcNodeInfo->h_CcNode; + EnqueueNodeInfoToRelevantLst(p_List, &nodeInfo); + } + else + FmPcdCcNodeTreeReleaseLock(p_List); + } + + return err; +} + +t_Handle FM_PCD_CcBuildTree(t_Handle h_FmPcd, t_FmPcdCcTreeParams *p_PcdGroupsParam) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + t_Error err = E_OK; + int i = 0, j = 0, k = 0; + t_FmPcdCcTree *p_FmPcdCcTree; + uint8_t numOfEntries; + t_Handle p_CcTreeTmp; + t_FmPcdCcGrpParams *p_FmPcdCcGroupParams; + t_FmPcdCcNextEngineAndRequiredActionParams params[16]; + t_NetEnvParams netEnvParams; + uint8_t lastOne = 0; + uint32_t requiredAction = 0; + t_FmPcdCcNode *p_FmPcdCcNextNode; + t_CcNodeInformation ccNodeInfo, *p_CcInformation; + + SANITY_CHECK_RETURN_VALUE(h_FmPcd,E_INVALID_HANDLE, NULL); + SANITY_CHECK_RETURN_VALUE(p_PcdGroupsParam,E_INVALID_HANDLE, NULL); + + if (p_PcdGroupsParam->numOfGrps > FM_PCD_MAX_NUM_OF_CC_GROUPS) + { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("numOfGrps should not exceed %d", FM_PCD_MAX_NUM_OF_CC_GROUPS)); + return NULL; + } + + p_FmPcdCcTree = (t_FmPcdCcTree*)XX_Malloc(sizeof(t_FmPcdCcTree)); + if(!p_FmPcdCcTree) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("PCD tree structure")); + return NULL; + } + memset(p_FmPcdCcTree, 0, sizeof(t_FmPcdCcTree)) ; + memset(params, 0, 16 * sizeof(t_FmPcdCcNextEngineParams)); + + INIT_LIST(&p_FmPcdCcTree->fmPortsLst); + + numOfEntries = 0; + p_FmPcdCcTree->netEnvId = (uint8_t)(PTR_TO_UINT(p_PcdGroupsParam->h_NetEnv)-1); + for(i = 0; i < p_PcdGroupsParam->numOfGrps; i++) + { + p_FmPcdCcGroupParams = &p_PcdGroupsParam->ccGrpParams[i]; + + if (p_FmPcdCcGroupParams->numOfDistinctionUnits > FM_PCD_MAX_NUM_OF_CC_UNITS) + { + DeleteTree(p_FmPcdCcTree,p_FmPcd); + REPORT_ERROR(MAJOR, E_INVALID_VALUE, + ("numOfDistinctionUnits (group %d) should not exceed %d", i, FM_PCD_MAX_NUM_OF_CC_UNITS)); + return NULL; + } + + p_FmPcdCcTree->fmPcdGroupParam[i].baseGroupEntry = numOfEntries; + p_FmPcdCcTree->fmPcdGroupParam[i].numOfEntriesInGroup =(uint8_t)( 0x01 << p_FmPcdCcGroupParams->numOfDistinctionUnits); + numOfEntries += p_FmPcdCcTree->fmPcdGroupParam[i].numOfEntriesInGroup; + if(numOfEntries > 16) + { + DeleteTree(p_FmPcdCcTree,p_FmPcd); + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("numOfEntries can not be larger than 16")); + return NULL; + } + if(lastOne) + { + if(p_FmPcdCcTree->fmPcdGroupParam[i].numOfEntriesInGroup > lastOne) + { + DeleteTree(p_FmPcdCcTree,p_FmPcd); + REPORT_ERROR(MAJOR, E_CONFLICT, ("numOfEntries per group must be set in descending order")); + return NULL; + } + } + + lastOne = p_FmPcdCcTree->fmPcdGroupParam[i].numOfEntriesInGroup; + + netEnvParams.netEnvId = p_FmPcdCcTree->netEnvId; + netEnvParams.numOfDistinctionUnits = p_FmPcdCcGroupParams->numOfDistinctionUnits; + memcpy(netEnvParams.unitIds, &p_FmPcdCcGroupParams->unitIds, (sizeof(uint8_t)) * p_FmPcdCcGroupParams->numOfDistinctionUnits); + err = PcdGetUnitsVector(p_FmPcd, &netEnvParams); + if(err) + { + DeleteTree(p_FmPcdCcTree,p_FmPcd); + REPORT_ERROR(MAJOR, err, NO_MSG); + return NULL; + } + + p_FmPcdCcTree->fmPcdGroupParam[i].totalBitsMask = netEnvParams.vector; + for(j = 0; j < p_FmPcdCcTree->fmPcdGroupParam[i].numOfEntriesInGroup; j++) + { + err = ValidateNextEngineParams(h_FmPcd,&p_FmPcdCcGroupParams->nextEnginePerEntriesInGrp[j]); + if(err) + { + DeleteTree(p_FmPcdCcTree,p_FmPcd); + REPORT_ERROR(MAJOR, err, (NO_MSG)); + return NULL; + } + +#ifdef FM_PCD_CC_MANIP + if(p_FmPcdCcGroupParams->nextEnginePerEntriesInGrp[j].h_Manip) + { + err = FmPcdManipCheckParamsForCcNextEgine(&p_FmPcdCcGroupParams->nextEnginePerEntriesInGrp[j], &requiredAction); + if(err) + { + DeleteTree(p_FmPcdCcTree,p_FmPcd); + REPORT_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + return NULL; + } + } +#endif /* FM_PCD_CC_MANIP */ + + memcpy(¶ms[k].nextEngineParams, &p_FmPcdCcGroupParams->nextEnginePerEntriesInGrp[j], sizeof(t_FmPcdCcNextEngineParams)); + requiredAction |= UPDATE_CC_WITH_TREE; + params[k].requiredAction = requiredAction; + k++; + } + } + + p_FmPcdCcTree->numOfEntries = (uint8_t)k; + p_FmPcdCcTree->numOfGrps = p_PcdGroupsParam->numOfGrps; + p_FmPcdCcTree->ccTreeBaseAddr = + PTR_TO_UINT(FM_MURAM_AllocMem(FmPcdGetMuramHandle(h_FmPcd), + (uint32_t)( k * FM_PCD_CC_AD_ENTRY_SIZE), + FM_PCD_CC_AD_TABLE_ALIGN)); + + if(!p_FmPcdCcTree->ccTreeBaseAddr) + { + DeleteTree(p_FmPcdCcTree,p_FmPcd); + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("No memory")); + return NULL; + } + IOMemSet32(UINT_TO_PTR(p_FmPcdCcTree->ccTreeBaseAddr), 0, (uint32_t)(k * FM_PCD_CC_AD_ENTRY_SIZE)); + + p_CcTreeTmp = UINT_TO_PTR(p_FmPcdCcTree->ccTreeBaseAddr); + + j = 0; + for(i = 0; i < numOfEntries; i++) + { + NextStepAd(p_CcTreeTmp,¶ms[i].nextEngineParams,p_FmPcd); + p_CcTreeTmp = PTR_MOVE(p_CcTreeTmp, FM_PCD_CC_AD_ENTRY_SIZE); + memcpy(&p_FmPcdCcTree->nextEngineAndRequiredAction[i], ¶ms[i], sizeof(t_FmPcdCcNextEngineAndRequiredActionParams)); + if(p_FmPcdCcTree->nextEngineAndRequiredAction[i].nextEngineParams.nextEngine== e_FM_PCD_CC) + { + p_FmPcdCcNextNode = (t_FmPcdCcNode*)p_FmPcdCcTree->nextEngineAndRequiredAction[i].nextEngineParams.params.ccParams.h_CcNode; + if(!IsNodeInModifiedState((t_Handle)p_FmPcdCcNextNode)) + { + memset(&ccNodeInfo, 0, sizeof(t_CcNodeInformation)); + ccNodeInfo.h_CcNode = (t_Handle)p_FmPcdCcTree; + ccNodeInfo.index = 1; + EnqueueNodeInfoToRelevantLst(&p_FmPcdCcNextNode->ccTreeIdLst, &ccNodeInfo); + UpdateNodeWithModifiedState((t_Handle)p_FmPcdCcNextNode, TRUE); + } + else + { + p_CcInformation = FindNodeInfoInReleventLst(&p_FmPcdCcNextNode->ccTreeIdLst,(t_Handle)p_FmPcdCcTree); + ASSERT_COND(p_CcInformation); + p_CcInformation->index++; + } + } + } + + FmPcdIncNetEnvOwners(h_FmPcd, p_FmPcdCcTree->netEnvId); + p_CcTreeTmp = UINT_TO_PTR(p_FmPcdCcTree->ccTreeBaseAddr); + + for(i = 0; i < p_FmPcdCcTree->numOfEntries ; i++) + { + if(p_FmPcdCcTree->nextEngineAndRequiredAction[i].nextEngineParams.nextEngine == e_FM_PCD_CC) + { + p_FmPcdCcNextNode = (t_FmPcdCcNode*)p_FmPcdCcTree->nextEngineAndRequiredAction[i].nextEngineParams.params.ccParams.h_CcNode; + + if(IsNodeInModifiedState((t_Handle)p_FmPcdCcNextNode)) + UpdateNodeWithModifiedState((t_Handle)p_FmPcdCcNextNode, FALSE); + } + } + + for(i = 0; i < numOfEntries; i++) + { + if(p_FmPcdCcTree->nextEngineAndRequiredAction[i].requiredAction) + { + err = FmPcdCcSetRequiredAction(h_FmPcd, p_FmPcdCcTree->nextEngineAndRequiredAction[i].requiredAction, &p_FmPcdCcTree->nextEngineAndRequiredAction[i], p_CcTreeTmp,1, p_FmPcdCcTree); + if(err) + { + DeleteTree(p_FmPcdCcTree,p_FmPcd); + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("No memory")); + return NULL; + } + p_CcTreeTmp = PTR_MOVE(p_CcTreeTmp, FM_PCD_CC_AD_ENTRY_SIZE); + } + } + + return p_FmPcdCcTree; +} + +t_Error FM_PCD_CcDeleteTree(t_Handle h_FmPcd, t_Handle h_CcTree) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + t_FmPcdCcTree *p_CcTree = (t_FmPcdCcTree *)h_CcTree; + int i= 0; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_CcTree,E_INVALID_STATE); + + FmPcdDecNetEnvOwners(h_FmPcd, p_CcTree->netEnvId); + + if(p_CcTree->owners) + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("the tree with this ID can not be removed because this tree is occupied, first - unbind this tree")); + + for(i = 0; i numOfEntries; i++) + { + if(p_CcTree->nextEngineAndRequiredAction[i].nextEngineParams.nextEngine == e_FM_PCD_CC) + UpdateNodeOwner(p_CcTree->nextEngineAndRequiredAction[i].nextEngineParams.params.ccParams.h_CcNode, FALSE); + } + +#ifdef FM_PCD_CC_MANIP + for(i = 0; i < p_CcTree->numOfEntries; i++) + { + if(p_CcTree->nextEngineAndRequiredAction[i].nextEngineParams.h_Manip) + FmPcdManipUpdateOwner(p_CcTree->nextEngineAndRequiredAction[i].nextEngineParams.h_Manip, FALSE); + } +#endif /* FM_PCD_CC_MANIP */ + + DeleteTree(p_CcTree, p_FmPcd); + return E_OK; +} + +t_Handle FM_PCD_CcSetNode(t_Handle h_FmPcd, t_FmPcdCcNodeParams *p_CcNodeParam) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *) h_FmPcd; + t_FmPcdCcNode *p_FmPcdCcNode, *p_FmPcdCcNextNode; + t_Error err = E_OK; + int tmp, size; + bool glblMask = FALSE; + t_FmPcdCcKeyParams *p_KeyParams; + t_Handle p_KeysMatchTblTmp; + t_Handle p_AdTableTmp; + bool fullField = FALSE; + ccPrivateInfo_t icCode = CC_PRIVATE_INFO_NONE; + bool isKeyTblAlloc, fromIc = FALSE; + t_CcNodeInformation ccNodeInfo, *p_CcInformation; + + SANITY_CHECK_RETURN_VALUE(h_FmPcd,E_INVALID_HANDLE,NULL); + + /* + if (!p_CcNodeParam->keysParams.keySize || + !p_CcNodeParam->keysParams.numOfKeys) + { + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("At least one key of keySize > 0 must be defined.")); + return NULL; + } + */ + p_FmPcdCcNode = (t_FmPcdCcNode*)XX_Malloc(sizeof(t_FmPcdCcNode)); + if(!p_FmPcdCcNode) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("No memory")); + return NULL; + } + memset(p_FmPcdCcNode, 0, sizeof(t_FmPcdCcNode)); + + p_FmPcdCcNode->p_GlblMask = (t_Handle)XX_Malloc(CC_GLBL_MASK_SIZE * sizeof(uint8_t)); + memset(p_FmPcdCcNode->p_GlblMask, 0, CC_GLBL_MASK_SIZE * sizeof(uint8_t)); + + p_FmPcdCcNode->numOfKeys = p_CcNodeParam->keysParams.numOfKeys; + + p_FmPcdCcNode->h_FmPcd = h_FmPcd; + + INIT_LIST(&p_FmPcdCcNode->ccPrevNodesLst); + INIT_LIST(&p_FmPcdCcNode->ccTreeIdLst); + INIT_LIST(&p_FmPcdCcNode->ccTreesLst); + + if((p_CcNodeParam->extractCcParams.type == e_FM_PCD_EXTRACT_BY_HDR) && + ((p_CcNodeParam->extractCcParams.extractByHdr.hdr == HEADER_TYPE_IPv4) || + (p_CcNodeParam->extractCcParams.extractByHdr.hdr == HEADER_TYPE_IPv6)) && + (p_CcNodeParam->extractCcParams.extractByHdr.type == e_FM_PCD_EXTRACT_FULL_FIELD) && + ((p_CcNodeParam->extractCcParams.extractByHdr.extractByHdrType.fullField.ipv6 == NET_HEADER_FIELD_IPv6_HOP_LIMIT) || + (p_CcNodeParam->extractCcParams.extractByHdr.extractByHdrType.fullField.ipv4 == NET_HEADER_FIELD_IPv4_TTL))) + { + err = Ipv4TtlOrIpv6HopLimiCheckParams(h_FmPcd, p_CcNodeParam, p_FmPcdCcNode, &isKeyTblAlloc); + glblMask = FALSE; + + } + else if((p_CcNodeParam->extractCcParams.type == e_FM_PCD_EXTRACT_NON_HDR) && + ((p_CcNodeParam->extractCcParams.extractNonHdr.src == e_FM_PCD_EXTRACT_FROM_KEY) || + (p_CcNodeParam->extractCcParams.extractNonHdr.src == e_FM_PCD_EXTRACT_FROM_HASH) || + (p_CcNodeParam->extractCcParams.extractNonHdr.src == e_FM_PCD_EXTRACT_FROM_FLOW_ID))) + { + if((p_CcNodeParam->extractCcParams.extractNonHdr.src == e_FM_PCD_EXTRACT_FROM_FLOW_ID) && + (p_CcNodeParam->extractCcParams.extractNonHdr.offset != 0)) + { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("In the case of the extraction from e_FM_PCD_EXTRACT_FROM_FLOW_ID offset has to be 0")); + return NULL; + } + + icCode = IcDefineCode(p_CcNodeParam); + fromIc = TRUE; + if(icCode == CC_PRIVATE_INFO_NONE) + { + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("user asked extraction from IC and field in internal context or action wasn't initialized in the right way")); + return NULL; + } + + if((icCode == CC_PRIVATE_INFO_IC_DEQ_FQID_INDEX_LOOKUP) || (icCode == CC_PRIVATE_INFO_IC_HASH_INDEX_LOOKUP)) + { + err = IcHashIndexedCheckParams(h_FmPcd, p_CcNodeParam, p_FmPcdCcNode, &isKeyTblAlloc); + + glblMask = TRUE; + } + else + { + err = CheckParams(h_FmPcd, p_CcNodeParam,p_FmPcdCcNode, &isKeyTblAlloc); + if(p_FmPcdCcNode->glblMaskSize) + glblMask = TRUE; + } + } + else + { + err = CheckParams(h_FmPcd, p_CcNodeParam,p_FmPcdCcNode, &isKeyTblAlloc); + if(p_FmPcdCcNode->glblMaskSize) + glblMask = TRUE; + } + + if(err) + { + DeleteNode(p_FmPcdCcNode); + REPORT_ERROR(MAJOR, err, NO_MSG); + return NULL; + } + + switch(p_CcNodeParam->extractCcParams.type) + { + case(e_FM_PCD_EXTRACT_BY_HDR): + switch(p_CcNodeParam->extractCcParams.extractByHdr.type) + { + case(e_FM_PCD_EXTRACT_FULL_FIELD): + p_FmPcdCcNode->parseCode = GetFullFieldParseCode(p_CcNodeParam->extractCcParams.extractByHdr.hdr, p_CcNodeParam->extractCcParams.extractByHdr.hdrIndex, + p_CcNodeParam->extractCcParams.extractByHdr.extractByHdrType.fullField); + GetSizeHeaderField(p_CcNodeParam->extractCcParams.extractByHdr.hdr, p_CcNodeParam->extractCcParams.extractByHdr.extractByHdrType.fullField, &p_FmPcdCcNode->sizeOfExtraction); + fullField = TRUE; + if((p_FmPcdCcNode->parseCode != CC_PC_FF_TCI1) && (p_FmPcdCcNode->parseCode != CC_PC_FF_TCI2) && + (p_FmPcdCcNode->parseCode != CC_PC_FF_MPLS1) && (p_FmPcdCcNode->parseCode != CC_PC_FF_MPLS1) && + (p_FmPcdCcNode->parseCode != CC_PC_FF_IPV4IPTOS_TC1) && (p_FmPcdCcNode->parseCode != CC_PC_FF_IPV4IPTOS_TC2) && + (p_FmPcdCcNode->parseCode != CC_PC_FF_IPTOS_IPV6TC1_IPV6FLOW1) && (p_FmPcdCcNode->parseCode != CC_PC_FF_IPTOS_IPV6TC2_IPV6FLOW2) && + glblMask) + { + glblMask = FALSE; + p_FmPcdCcNode->glblMaskSize = 4; + p_FmPcdCcNode->lclMask = TRUE; + } + break; + case(e_FM_PCD_EXTRACT_FROM_HDR): + p_FmPcdCcNode->sizeOfExtraction = p_CcNodeParam->extractCcParams.extractByHdr.extractByHdrType.fromHdr.size; + p_FmPcdCcNode->offset = p_CcNodeParam->extractCcParams.extractByHdr.extractByHdrType.fromHdr.offset; + p_FmPcdCcNode->parseCode = GetPrParseCode(p_CcNodeParam->extractCcParams.extractByHdr.hdr, p_CcNodeParam->extractCcParams.extractByHdr.hdrIndex, + p_FmPcdCcNode->offset,glblMask, &p_FmPcdCcNode->prsArrayOffset); + break; + case(e_FM_PCD_EXTRACT_FROM_FIELD): + p_FmPcdCcNode->offset = p_CcNodeParam->extractCcParams.extractByHdr.extractByHdrType.fromField.offset; + p_FmPcdCcNode->sizeOfExtraction = p_CcNodeParam->extractCcParams.extractByHdr.extractByHdrType.fromField.size; + p_FmPcdCcNode->parseCode = GetFieldParseCode(p_CcNodeParam->extractCcParams.extractByHdr.hdr, p_CcNodeParam->extractCcParams.extractByHdr.extractByHdrType.fromField.field, + p_FmPcdCcNode->offset,&p_FmPcdCcNode->prsArrayOffset, + p_CcNodeParam->extractCcParams.extractByHdr.hdrIndex); + break; + default: + DeleteNode(p_FmPcdCcNode); + REPORT_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + return NULL; + } + break; + case(e_FM_PCD_EXTRACT_NON_HDR): + /* get the field code for the generic extract */ + p_FmPcdCcNode->sizeOfExtraction = p_CcNodeParam->extractCcParams.extractNonHdr.size; + p_FmPcdCcNode->offset = p_CcNodeParam->extractCcParams.extractNonHdr.offset; + p_FmPcdCcNode->parseCode = GetGenParseCode(p_CcNodeParam->extractCcParams.extractNonHdr.src, p_FmPcdCcNode->offset, glblMask, &p_FmPcdCcNode->prsArrayOffset, fromIc,icCode); + + if(p_FmPcdCcNode->parseCode == CC_PC_GENERIC_IC_HASH_INDEXED) + { + if((p_FmPcdCcNode->offset + p_FmPcdCcNode->sizeOfExtraction) > 64) + { + DeleteNode(p_FmPcdCcNode); + REPORT_ERROR(MAJOR, E_INVALID_SELECTION,("when node of the type CC_PC_GENERIC_IC_HASH_INDEXED offset + size can not be bigger then size of HASH 64 bits (8 bytes)")); + return NULL; + } + } + if((p_FmPcdCcNode->parseCode == CC_PC_GENERIC_IC_GMASK) || (p_FmPcdCcNode->parseCode == CC_PC_GENERIC_IC_HASH_INDEXED)) + { + p_FmPcdCcNode->offset += p_FmPcdCcNode->prsArrayOffset; + p_FmPcdCcNode->prsArrayOffset = 0; + } + break; + + default: + DeleteNode(p_FmPcdCcNode); + REPORT_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + return NULL; + } + + if(p_FmPcdCcNode->parseCode == CC_PC_ILLEGAL) + { + DeleteNode(p_FmPcdCcNode); + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("illeagl extraction type")); + return NULL; + } + + if((p_FmPcdCcNode->sizeOfExtraction > FM_PCD_MAX_SIZE_OF_KEY) || !p_FmPcdCcNode->sizeOfExtraction) + { + DeleteNode(p_FmPcdCcNode); + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("sizeOfExatrction can not be greater than 56 and not 0")); + return NULL; + } + + if(p_CcNodeParam->keysParams.keySize != p_FmPcdCcNode->sizeOfExtraction) + { + DeleteNode(p_FmPcdCcNode); + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("keySize has to be equal to sizeOfExtraction")); + return NULL; + } + + + p_FmPcdCcNode->userSizeOfExtraction = p_FmPcdCcNode->sizeOfExtraction; + + if(!glblMask) + memset(p_FmPcdCcNode->p_GlblMask, 0xff, CC_GLBL_MASK_SIZE * sizeof(uint8_t)); + +#ifdef FM_PCD_CC_MANIP + err = CheckAndSetManipParamsWithCcNodeParams(p_FmPcdCcNode); + if(err != E_OK) + { + DeleteNode(p_FmPcdCcNode); + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("keySize has to be equal to sizeOfExtraction")); + return NULL; + } +#endif /* FM_PCD_CC_MANIP */ + + GetCcExtractKeySize(p_FmPcdCcNode->sizeOfExtraction, &p_FmPcdCcNode->ccKeySizeAccExtraction); + + if(p_FmPcdCcNode->lclMask) + size = 2 * p_FmPcdCcNode->ccKeySizeAccExtraction; + else + size = p_FmPcdCcNode->ccKeySizeAccExtraction; + + if(isKeyTblAlloc) + { + p_FmPcdCcNode->h_KeysMatchTable =(t_Handle)FM_MURAM_AllocMem(FmPcdGetMuramHandle(p_FmPcdCcNode->h_FmPcd), + (uint32_t)(size * sizeof(uint8_t) * (p_FmPcdCcNode->numOfKeys + 1)), + FM_PCD_CC_KEYS_MATCH_TABLE_ALIGN); + if(!p_FmPcdCcNode->h_KeysMatchTable) + { + DeleteNode(p_FmPcdCcNode); + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("No memory in MURAM for KEY MATCH table")); + return NULL; + } + IOMemSet32((uint8_t *)p_FmPcdCcNode->h_KeysMatchTable, 0, size * sizeof(uint8_t) * (p_FmPcdCcNode->numOfKeys + 1)); + } + + p_FmPcdCcNode->h_AdTable = (t_Handle)FM_MURAM_AllocMem(FmPcdGetMuramHandle(p_FmPcdCcNode->h_FmPcd), + (uint32_t)( (p_FmPcdCcNode->numOfKeys+1) * FM_PCD_CC_AD_ENTRY_SIZE), + FM_PCD_CC_AD_TABLE_ALIGN); + if(!p_FmPcdCcNode->h_AdTable) + { + DeleteNode(p_FmPcdCcNode); + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("No memory in MURAM for AD table ")); + return NULL; + } + IOMemSet32((uint8_t *)p_FmPcdCcNode->h_AdTable, 0, (uint32_t)((p_FmPcdCcNode->numOfKeys+1) * FM_PCD_CC_AD_ENTRY_SIZE)); + + p_KeysMatchTblTmp = p_FmPcdCcNode->h_KeysMatchTable; + p_AdTableTmp = p_FmPcdCcNode->h_AdTable; + for(tmp = 0 ; tmp < p_FmPcdCcNode->numOfKeys; tmp++) + { + p_KeyParams = &p_CcNodeParam->keysParams.keyParams[tmp]; + + if(p_KeysMatchTblTmp) + { + Mem2IOCpy32((void*)p_KeysMatchTblTmp, p_KeyParams->p_Key, p_FmPcdCcNode->sizeOfExtraction); + + if(p_FmPcdCcNode->lclMask && p_KeyParams->p_Mask) + Mem2IOCpy32(PTR_MOVE(p_KeysMatchTblTmp, p_FmPcdCcNode->ccKeySizeAccExtraction), p_KeyParams->p_Mask, p_FmPcdCcNode->sizeOfExtraction); + else if(p_FmPcdCcNode->lclMask) + IOMemSet32(PTR_MOVE(p_KeysMatchTblTmp, p_FmPcdCcNode->ccKeySizeAccExtraction), 0xff, p_FmPcdCcNode->sizeOfExtraction); + p_KeysMatchTblTmp = PTR_MOVE(p_KeysMatchTblTmp, size * sizeof(uint8_t)); + } + NextStepAd(p_AdTableTmp,&p_KeyParams->ccNextEngineParams, p_FmPcd); + + p_AdTableTmp = PTR_MOVE(p_AdTableTmp, FM_PCD_CC_AD_ENTRY_SIZE); + + } + NextStepAd(p_AdTableTmp,&p_CcNodeParam->keysParams.ccNextEngineParamsForMiss, p_FmPcd); + + if(fullField == TRUE) + p_FmPcdCcNode->sizeOfExtraction = 0; + + + for(tmp = 0; tmp < p_FmPcdCcNode->numOfKeys + 1; tmp++) + { + if(p_FmPcdCcNode->nextEngineAndRequiredAction[tmp].nextEngineParams.nextEngine == e_FM_PCD_CC) + { + p_FmPcdCcNextNode = (t_FmPcdCcNode*)p_FmPcdCcNode->nextEngineAndRequiredAction[tmp].nextEngineParams.params.ccParams.h_CcNode; + + if(!IsNodeInModifiedState((t_Handle)p_FmPcdCcNextNode)) + { + memset(&ccNodeInfo, 0, sizeof(t_CcNodeInformation)); + ccNodeInfo.h_CcNode = (t_Handle)p_FmPcdCcNode; + ccNodeInfo.index = 1; + EnqueueNodeInfoToRelevantLst(&p_FmPcdCcNextNode->ccPrevNodesLst, &ccNodeInfo); + UpdateNodeWithModifiedState((t_Handle)p_FmPcdCcNextNode, TRUE); + } + else + { + p_CcInformation = FindNodeInfoInReleventLst(&p_FmPcdCcNextNode->ccPrevNodesLst,(t_Handle)p_FmPcdCcNode); + ASSERT_COND(p_CcInformation); + p_CcInformation->index++; + } + } + + } + + for(tmp = 0; tmp < p_FmPcdCcNode->numOfKeys + 1; tmp++) + { + if(p_FmPcdCcNode->nextEngineAndRequiredAction[tmp].nextEngineParams.nextEngine == e_FM_PCD_CC) + { + p_FmPcdCcNextNode = (t_FmPcdCcNode*)p_FmPcdCcNode->nextEngineAndRequiredAction[tmp].nextEngineParams.params.ccParams.h_CcNode; + + if(IsNodeInModifiedState((t_Handle)p_FmPcdCcNextNode)) + UpdateNodeWithModifiedState((t_Handle)p_FmPcdCcNextNode, FALSE); + } + } + + p_AdTableTmp = p_FmPcdCcNode->h_AdTable; + for(tmp = 0; tmp < p_FmPcdCcNode->numOfKeys; tmp++) + { + if(p_FmPcdCcNode->nextEngineAndRequiredAction[tmp].requiredAction) + { + + err = FmPcdCcSetRequiredAction(h_FmPcd, p_FmPcdCcNode->nextEngineAndRequiredAction[tmp].requiredAction, &p_FmPcdCcNode->nextEngineAndRequiredAction[tmp], p_AdTableTmp,1, NULL); + if(err) + { + FM_PCD_CcDeleteNode(h_FmPcd, (t_Handle)p_FmPcdCcNode); + REPORT_ERROR(MAJOR, err, NO_MSG); + return NULL; + } + p_AdTableTmp = PTR_MOVE(p_AdTableTmp, FM_PCD_CC_AD_ENTRY_SIZE); + } + } + if(p_FmPcdCcNode->nextEngineAndRequiredAction[tmp].requiredAction) + { + err = FmPcdCcSetRequiredAction(h_FmPcd, p_FmPcdCcNode->nextEngineAndRequiredAction[tmp].requiredAction, &p_FmPcdCcNode->nextEngineAndRequiredAction[tmp], p_AdTableTmp,1, NULL); + if(err) + { + FM_PCD_CcDeleteNode(h_FmPcd, (t_Handle)p_FmPcdCcNode); + REPORT_ERROR(MAJOR, err, NO_MSG); + return NULL; + } + + } + + + return p_FmPcdCcNode; +} + +t_Error FM_PCD_CcDeleteNode(t_Handle h_FmPcd, t_Handle h_CcNode) +{ + t_FmPcdCcNode *p_CcNode = (t_FmPcdCcNode *)h_CcNode; + int i = 0; + + SANITY_CHECK_RETURN_ERROR(h_FmPcd, E_INVALID_HANDLE); + + UNUSED(h_FmPcd); + if(!p_CcNode) + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("the node with this ID is not initialized")); + + if(p_CcNode->owners) + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("the node with this ID can not be removed because this node is occupied, first - unbind this node")); + + for(i = 0; i < p_CcNode->numOfKeys; i++) + { + if(p_CcNode->nextEngineAndRequiredAction[i].nextEngineParams.nextEngine == e_FM_PCD_CC) + UpdateNodeOwner(p_CcNode->nextEngineAndRequiredAction[i].nextEngineParams.params.ccParams.h_CcNode, FALSE); + + } + if(p_CcNode->nextEngineAndRequiredAction[i].nextEngineParams.nextEngine == e_FM_PCD_CC) + UpdateNodeOwner(p_CcNode->nextEngineAndRequiredAction[i].nextEngineParams.params.ccParams.h_CcNode, FALSE); + +#ifdef FM_PCD_CC_MANIP + for(i = 0; i < p_CcNode->numOfKeys; i++) + { + if(p_CcNode->nextEngineAndRequiredAction[i].nextEngineParams.h_Manip) + FmPcdManipUpdateOwner(p_CcNode->nextEngineAndRequiredAction[i].nextEngineParams.h_Manip, FALSE); + } + if(p_CcNode->nextEngineAndRequiredAction[i].nextEngineParams.h_Manip) + FmPcdManipUpdateOwner(p_CcNode->nextEngineAndRequiredAction[i].nextEngineParams.h_Manip, FALSE); +#endif /* FM_PCD_CC_MANIP */ + + DeleteNode(p_CcNode); + + return E_OK; +} + +t_Error FM_PCD_CcNodeAddKey(t_Handle h_FmPcd, t_Handle h_CcNode, uint8_t keyIndex, uint8_t keySize, t_FmPcdCcKeyParams *p_KeyParams) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + + SANITY_CHECK_RETURN_ERROR(h_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->h_Hc, E_INVALID_HANDLE); + + return FmHcPcdCcAddKey(p_FmPcd->h_Hc, h_CcNode, keyIndex, keySize, p_KeyParams); +} + +t_Error FM_PCD_CcNodeRemoveKey(t_Handle h_FmPcd, t_Handle h_CcNode, uint8_t keyIndex) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + + SANITY_CHECK_RETURN_ERROR(h_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->h_Hc, E_INVALID_HANDLE); + + return FmHcPcdCcRemoveKey(p_FmPcd->h_Hc, h_CcNode, keyIndex); +} + +t_Error FM_PCD_CcNodeModifyKey(t_Handle h_FmPcd, t_Handle h_CcNode, uint8_t keyIndex, uint8_t keySize, uint8_t *p_Key, uint8_t *p_Mask) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + + SANITY_CHECK_RETURN_ERROR(h_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->h_Hc, E_INVALID_HANDLE); + + return FmHcPcdCcModifyKey(p_FmPcd->h_Hc, h_CcNode, keyIndex, keySize, p_Key, p_Mask); +} + +t_Error FM_PCD_CcNodeModifyNextEngine(t_Handle h_FmPcd, t_Handle h_CcNode, uint8_t keyIndex, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + + SANITY_CHECK_RETURN_ERROR(h_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->h_Hc, E_INVALID_HANDLE); + + return FmHcPcdCcModifyNodeNextEngine(p_FmPcd->h_Hc, h_CcNode, keyIndex, p_FmPcdCcNextEngineParams); +} + +t_Error FM_PCD_CcNodeModifyMissNextEngine(t_Handle h_FmPcd, t_Handle h_CcNode, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + + SANITY_CHECK_RETURN_ERROR(h_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->h_Hc, E_INVALID_HANDLE); + + return FmHcPcdCcModifyNodeMissNextEngine(p_FmPcd->h_Hc, h_CcNode, p_FmPcdCcNextEngineParams); +} + +t_Error FM_PCD_CcTreeModifyNextEngine(t_Handle h_FmPcd, t_Handle h_CcTree, uint8_t grpId, uint8_t index, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + + SANITY_CHECK_RETURN_ERROR(h_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->h_Hc, E_INVALID_HANDLE); + + return FmHcPcdCcModifyTreeNextEngine(p_FmPcd->h_Hc, h_CcTree, grpId, index, p_FmPcdCcNextEngineParams); +} + +t_Error FM_PCD_CcNodeModifyKeyAndNextEngine(t_Handle h_FmPcd, t_Handle h_CcNode, uint8_t keyIndex, uint8_t keySize, t_FmPcdCcKeyParams *p_KeyParams) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + + SANITY_CHECK_RETURN_ERROR(h_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->h_Hc, E_INVALID_HANDLE); + + return FmHcPcdCcModifyKeyAndNextEngine(p_FmPcd->h_Hc, h_CcNode, keyIndex, keySize, p_KeyParams); +} + +uint32_t FM_PCD_CcNodeGetKeyCounter(t_Handle h_FmPcd, t_Handle h_CcNode, uint8_t keyIndex) +{ + t_FmPcdCcNode *p_FmPcdCcNode = (t_FmPcdCcNode *)h_CcNode; + t_AdOfTypeResult *p_AdResult = NULL; + + SANITY_CHECK_RETURN_ERROR(h_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_VALUE(h_CcNode, E_INVALID_HANDLE, 0); +#ifdef DISABLE_SANITY_CHECKS +UNUSED(h_FmPcd); +#endif /* DISABLE_SANITY_CHECKS */ + + if (keyIndex >= p_FmPcdCcNode->numOfKeys) + { + REPORT_ERROR(MINOR, E_INVALID_STATE, + ("keyIndex > numOfKeys defined for this node")); + return 0; + } + + p_AdResult = PTR_MOVE(p_FmPcdCcNode->h_AdTable, keyIndex*FM_PCD_CC_AD_ENTRY_SIZE); + ASSERT_COND(p_AdResult); + + if (p_FmPcdCcNode->nextEngineAndRequiredAction[keyIndex].nextEngineParams.nextEngine == e_FM_PCD_CC) + { + REPORT_ERROR(MINOR, E_INVALID_STATE, + ("statistics updated only for entries where next engine not CC")); + return 0; + } + + if(((p_FmPcdCcNode->nextEngineAndRequiredAction[keyIndex].nextEngineParams.nextEngine == e_FM_PCD_DONE) && + !p_FmPcdCcNode->nextEngineAndRequiredAction[keyIndex].nextEngineParams.params.enqueueParams.statisticsEn) || + ((p_FmPcdCcNode->nextEngineAndRequiredAction[keyIndex].nextEngineParams.nextEngine == e_FM_PCD_KG) && + !p_FmPcdCcNode->nextEngineAndRequiredAction[keyIndex].nextEngineParams.params.kgParams.statisticsEn) || + ((p_FmPcdCcNode->nextEngineAndRequiredAction[keyIndex].nextEngineParams.nextEngine == e_FM_PCD_PLCR) && + !p_FmPcdCcNode->nextEngineAndRequiredAction[keyIndex].nextEngineParams.params.plcrParams.statisticsEn)) + { + REPORT_ERROR(MINOR, E_INVALID_STATE, + ("statistics wasn't enable")); + return 0; + } + + return GET_UINT32(p_AdResult->res); +} --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/fm_cc.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/fm_cc.h @@ -0,0 +1,312 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm_cc.h + + @Description FM PCD CC ... +*//***************************************************************************/ +#ifndef __FM_CC_H +#define __FM_CC_H + +#include "std_ext.h" +#include "error_ext.h" +#include "list_ext.h" + +#include "fm_pcd.h" + + +/***********************************************************************/ +/* Coarse classification defines */ +/***********************************************************************/ + +#define CC_PC_FF_MACDST 0x00 +#define CC_PC_FF_MACSRC 0x01 +#define CC_PC_FF_ETYPE 0x02 + +#define CC_PC_FF_TCI1 0x03 +#define CC_PC_FF_TCI2 0x04 + +#define CC_PC_FF_MPLS1 0x06 +#define CC_PC_FF_MPLS_LAST 0x07 + +#define CC_PC_FF_IPV4DST1 0x08 +#define CC_PC_FF_IPV4DST2 0x16 +#define CC_PC_FF_IPV4IPTOS_TC1 0x09 +#define CC_PC_FF_IPV4IPTOS_TC2 0x17 +#define CC_PC_FF_IPV4PTYPE1 0x0A +#define CC_PC_FF_IPV4PTYPE2 0x18 +#define CC_PC_FF_IPV4SRC1 0x0b +#define CC_PC_FF_IPV4SRC2 0x19 +#define CC_PC_FF_IPV4SRC1_IPV4DST1 0x0c +#define CC_PC_FF_IPV4SRC2_IPV4DST2 0x1a +#define CC_PC_FF_IPV4TTL 0x29 + + +#define CC_PC_FF_IPTOS_IPV6TC1_IPV6FLOW1 0x0d /*TODO - CLASS - what is it? TOS*/ +#define CC_PC_FF_IPTOS_IPV6TC2_IPV6FLOW2 0x1b +#define CC_PC_FF_IPV6PTYPE1 0x0e +#define CC_PC_FF_IPV6PTYPE2 0x1c +#define CC_PC_FF_IPV6DST1 0x0f +#define CC_PC_FF_IPV6DST2 0x1d +#define CC_PC_FF_IPV6SRC1 0x10 +#define CC_PC_FF_IPV6SRC2 0x1e +#define CC_PC_FF_IPV6HOP_LIMIT 0x2a +#define CC_PC_FF_GREPTYPE 0x11 + +#define CC_PC_FF_MINENCAP_PTYPE 0x12 +#define CC_PC_FF_MINENCAP_IPDST 0x13 +#define CC_PC_FF_MINENCAP_IPSRC 0x14 +#define CC_PC_FF_MINENCAP_IPSRC_IPDST 0x15 + +#define CC_PC_FF_L4PSRC 0x1f +#define CC_PC_FF_L4PDST 0x20 +#define CC_PC_FF_L4PSRC_L4PDST 0x21 + +#define CC_PC_FF_PPPPID 0x05 + +#define CC_PC_PR_SHIM1 0x22 +#define CC_PC_PR_SHIM2 0x23 + +#define CC_PC_GENERIC_WITHOUT_MASK 0x27 +#define CC_PC_GENERIC_WITH_MASK 0x28 +#define CC_PC_GENERIC_IC_GMASK 0x2B +#define CC_PC_GENERIC_IC_HASH_INDEXED 0x2C + +#define CC_PR_OFFSET 0x25 +#define CC_PR_WITHOUT_OFFSET 0x26 + +#define CC_PC_PR_ETH_OFFSET 19 +#define CC_PC_PR_USER_DEFINED_SHIM1_OFFSET 16 +#define CC_PC_PR_USER_DEFINED_SHIM2_OFFSET 17 +#define CC_PC_PR_USER_LLC_SNAP_OFFSET 20 +#define CC_PC_PR_VLAN1_OFFSET 21 +#define CC_PC_PR_VLAN2_OFFSET 22 +#define CC_PC_PR_PPPOE_OFFSET 24 +#define CC_PC_PR_MPLS1_OFFSET 25 +#define CC_PC_PR_MPLS_LAST_OFFSET 26 +#define CC_PC_PR_IP1_OFFSET 27 +#define CC_PC_PR_IP_LAST_OFFSET 28 +#define CC_PC_PR_MINENC_OFFSET 28 +#define CC_PC_PR_L4_OFFSET 30 +#define CC_PC_PR_GRE_OFFSET 29 +#define CC_PC_PR_ETYPE_LAST_OFFSET 23 +#define CC_PC_PR_NEXT_HEADER_OFFSET 31 + +#define CC_PC_ILLEGAL 0xff +#define CC_SIZE_ILLEGAL 0 + +#define FM_PCD_CC_KEYS_MATCH_TABLE_ALIGN 16 +#define FM_PCD_CC_AD_TABLE_ALIGN 256 +#define FM_PCD_CC_AD_ENTRY_SIZE 16 +#define FM_PCD_CC_NUM_OF_KEYS 255 + +#define FM_PCD_AD_RESULT_CONTRL_FLOW_TYPE 0x00000000 +#define FM_PCD_AD_RESULT_DATA_FLOW_TYPE 0x80000000 +#define FM_PCD_AD_RESULT_PLCR_DIS 0x20000000 +#define FM_PCD_AD_RESULT_EXTENDED_MODE 0x80000000 +#define FM_PCD_AD_RESULT_NADEN 0x20000000 +#define FM_PCD_AD_RESULT_STATISTICS_EN 0x40000000 + + +#define FM_PCD_AD_CONT_LOOKUP_TYPE 0x40000000 +#define FM_PCD_AD_CONT_LOOKUP_LCL_MASK 0x00800000 + +#define FM_PCD_AD_TYPE_MASK 0xc0000000 +#define FM_PCD_AD_OPCODE_MASK 0x0000000f + +#define FM_PCD_AD_PROFILEID_FOR_CNTRL_SHIFT 16 + +#define GLBL_MASK_FOR_HASH_INDEXED 0xfff00000 +#define CC_GLBL_MASK_SIZE 4 + +typedef uint32_t ccPrivateInfo_t; /**< private info of CC: */ + +#define CC_PRIVATE_INFO_NONE 0 +#define CC_PRIVATE_INFO_IC_HASH_INDEX_LOOKUP 0x80000000 +#define CC_PRIVATE_INFO_IC_HASH_EXACT_MATCH 0x40000000 +#define CC_PRIVATE_INFO_IC_KEY_EXACT_MATCH 0x20000000 +#define CC_PRIVATE_INFO_IC_DEQ_FQID_INDEX_LOOKUP 0x10000000 + +/***********************************************************************/ +/* Memory map */ +/***********************************************************************/ +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(push,1) +#endif /* defined(__MWERKS__) && ... */ +#define MEM_MAP_START + +typedef _Packed struct { + volatile uint32_t fqid; + volatile uint32_t plcrProfile; + volatile uint32_t nia; + volatile uint32_t res; +} _PackedType t_AdOfTypeResult; + +typedef _Packed struct { + volatile uint32_t ccAdBase; + volatile uint32_t matchTblPtr; + volatile uint32_t pcAndOffsets; + volatile uint32_t gmask; +} _PackedType t_AdOfTypeContLookup; + +typedef _Packed union { + volatile t_AdOfTypeResult adResult; + volatile t_AdOfTypeContLookup adContLookup; +} _PackedType t_Ad; + +#define MEM_MAP_END +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(pop) +#endif /* defined(__MWERKS__) && ... */ + + +/***********************************************************************/ +/* Driver's internal structures */ +/***********************************************************************/ + +typedef enum e_ModifyState { + e_MODIFY_STATE_ADD = 0, + e_MODIFY_STATE_REMOVE, + e_MODIFY_STATE_CHANGE +} e_ModifyState; + +typedef struct { + t_FmPcdCcNextEngineParams nextEngineParams; + uint32_t requiredAction; + uint32_t shadowAction; +} t_FmPcdCcNextEngineAndRequiredActionParams; + +typedef struct { + t_Handle p_Ad; + e_FmPcdEngine fmPcdEngine; + bool adAllocated; + bool isTree; + + uint32_t myInfo; + t_List *h_CcNextNodesLst; + t_Handle h_AdditionalInfo; + t_Handle h_Node; +} t_FmPcdModifyCcAdditionalParams; + +typedef struct { + t_Handle p_AdTableNew; + t_Handle p_KeysMatchTableNew; + t_Handle p_AdTableOld; + t_Handle p_KeysMatchTableOld; + uint16_t numOfKeys; + t_Handle h_CurrentNode; + uint16_t keyIndex; + t_Handle h_NodeForAdd; + t_Handle h_NodeForRmv; + t_Handle h_ManipForRmv; + bool tree; + + t_FmPcdCcNextEngineAndRequiredActionParams nextEngineAndRequiredAction[256]; +} t_FmPcdModifyCcKeyAdditionalParams; + +typedef struct { + t_Handle h_Manip; + t_Handle h_CcNode; +} t_CcNextEngineInfo; + +typedef struct { + uint16_t numOfKeys; + bool glblMaskUpdated; + t_Handle p_GlblMask; + bool lclMask; + uint8_t parseCode; + uint8_t offset; + uint8_t prsArrayOffset; + bool ctrlFlow; + uint8_t owners; + + uint8_t ccKeySizeAccExtraction; + uint8_t sizeOfExtraction; + uint8_t glblMaskSize; + + t_Handle h_KeysMatchTable; + t_Handle h_AdTable; + + t_List ccPrevNodesLst; + + t_List ccTreeIdLst; + t_List ccTreesLst; + + t_Handle h_FmPcd; + uint32_t shadowAction; + bool modifiedState; + uint8_t userSizeOfExtraction; + + t_FmPcdCcNextEngineAndRequiredActionParams nextEngineAndRequiredAction[256]; +} t_FmPcdCcNode; + +typedef struct { + t_FmPcdCcNode *p_FmPcdCcNode; + bool occupied; + uint8_t owners; + volatile bool lock; +} t_FmPcdCcNodeArray; + +typedef struct { + uint8_t numOfEntriesInGroup; + uint32_t totalBitsMask; + uint8_t baseGroupEntry; +} t_FmPcdCcGroupParam; + +typedef struct { + uint8_t netEnvId; + uintptr_t ccTreeBaseAddr; + uint8_t numOfGrps; + t_FmPcdCcGroupParam fmPcdGroupParam[FM_PCD_MAX_NUM_OF_CC_GROUPS]; + t_List fmPortsLst; + volatile bool lock; + uint8_t numOfEntries; + uint8_t owners; + t_Handle *fmPcdCcSavedManipParams[256]; + bool modifiedState; + uint32_t requiredAction; + t_FmPcdCcNextEngineAndRequiredActionParams nextEngineAndRequiredAction[FM_PCD_MAX_NUM_OF_KEYS]; +} t_FmPcdCcTree; + +typedef struct { + t_FmPcdCcTree *p_FmPcdCcTree; + bool occupied; + uint8_t owners; + volatile bool lock; +} t_FmPcdCcTreeArray; + + +bool FmPcdManipIsManipNode(t_Handle h_Ad); + + +#endif /* __FM_CC_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/fm_kg.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/fm_kg.c @@ -0,0 +1,3189 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm_kg.c + + @Description FM PCD ... +*//***************************************************************************/ +#include "std_ext.h" +#include "error_ext.h" +#include "string_ext.h" +#include "debug_ext.h" +#include "net_ext.h" +#include "fm_port_ext.h" + +#include "fm_common.h" +#include "fm_pcd.h" +#include "fm_hc.h" + +#include "fm_pcd_ipc.h" + + +static t_Error WriteKgarWait(t_FmPcd *p_FmPcd, uint32_t kgar) +{ + WRITE_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgar, kgar); + /* Wait for GO to be idle and read error */ + while ((kgar = GET_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgar)) & FM_PCD_KG_KGAR_GO) ; + if (kgar & FM_PCD_KG_KGAR_ERR) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Keygen scheme access violation")); + return E_OK; +} + +static e_FmPcdKgExtractDfltSelect GetGenericSwDefault(t_FmPcdKgExtractDflt swDefaults[], uint8_t numOfSwDefaults, uint8_t code) +{ + int i; + + switch(code) + { + case( KG_SCH_GEN_PARSE_RESULT_N_FQID): + case( KG_SCH_GEN_DEFAULT): + case( KG_SCH_GEN_NEXTHDR): + for(i=0 ; i mask 0x1-0x7F */ + if(bitOffset<8) + { + mask = 0; + for(i = 0 ; i < bitOffset ; i++, walking1Mask <<= 1) + mask |= walking1Mask; + } + else + { + mask = 0xFF; + numOfOnesToClear = 0; + if(fqid && bitOffset>24) + /* bitOffset 25-31 --> mask 0xFE-0x80 */ + numOfOnesToClear = (uint8_t)(bitOffset-24); + else + /* bitOffset 9-15 --> mask 0xFE-0x80 */ + if(!fqid && bitOffset>8) + numOfOnesToClear = (uint8_t)(bitOffset-8); + for(i = 0 ; i < numOfOnesToClear ; i++, walking1Mask <<= 1) + mask &= ~walking1Mask; + /* bitOffset 8-24 for FQID, 8 for PP --> no mask (0xFF)*/ + } + return mask; +} + + +t_Error FmPcdKgBuildClsPlanGrp(t_Handle h_FmPcd, t_FmPcdKgInterModuleClsPlanGrpParams *p_Grp, t_FmPcdKgInterModuleClsPlanSet *p_ClsPlanSet) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_FmPcdKgClsPlanGrp *p_ClsPlanGrp; + t_FmPcdIpcKgClsPlanParams kgAlloc; + t_Error err = E_OK; + uint32_t oredVectors = 0; + uint32_t intFlags; + int i, j; + + if (p_Grp->numOfOptions >= FM_PCD_MAX_NUM_OF_OPTIONS(FM_PCD_MAX_NUM_OF_CLS_PLANS)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE,("Too many classification plan basic options selected.")); + + intFlags = FmPcdLock(p_FmPcd); + + /* find a new clsPlan group */ + for(i = 0;ip_FmPcdKg->clsPlanGrps[i].used) + break; + if(i== FM_MAX_NUM_OF_PORTS) + { + FmPcdUnlock(p_FmPcd, intFlags); + RETURN_ERROR(MAJOR, E_FULL,("No classification plan groups available.")); + } + p_FmPcd->p_FmPcdKg->clsPlanGrps[i].used = TRUE; + p_Grp->clsPlanGrpId = (uint8_t)i; + + if(p_Grp->numOfOptions == 0) + p_FmPcd->p_FmPcdKg->emptyClsPlanGrpId = (uint8_t)i; + + if (!TRY_LOCK(NULL, &p_FmPcd->p_FmPcdKg->clsPlanGrps[p_Grp->clsPlanGrpId].lock)) + { + FmPcdUnlock(p_FmPcd, intFlags); + return ERROR_CODE(E_BUSY); + } + FmPcdUnlock(p_FmPcd, intFlags); + + p_ClsPlanGrp = &p_FmPcd->p_FmPcdKg->clsPlanGrps[i]; + p_ClsPlanGrp->netEnvId = p_Grp->netEnvId; + p_ClsPlanGrp->owners = 0; + FmPcdSetClsPlanGrpId(p_FmPcd, p_Grp->netEnvId, p_Grp->clsPlanGrpId); + FmPcdIncNetEnvOwners(p_FmPcd, p_Grp->netEnvId); + + p_ClsPlanGrp->sizeOfGrp = (uint16_t)(1<numOfOptions); + /* a minimal group of 8 is required */ + if(p_ClsPlanGrp->sizeOfGrp < CLS_PLAN_NUM_PER_GRP) + p_ClsPlanGrp->sizeOfGrp = CLS_PLAN_NUM_PER_GRP; + if(p_FmPcd->guestId == NCSW_MASTER_ID) + { + err = KgAllocClsPlanEntries(h_FmPcd, p_ClsPlanGrp->sizeOfGrp, p_FmPcd->guestId, &p_ClsPlanGrp->baseEntry); + + if(err) + { + RELEASE_LOCK(p_FmPcd->p_FmPcdKg->clsPlanGrps[p_Grp->clsPlanGrpId].lock); + RETURN_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + } + + } + else + { + t_FmPcdIpcMsg msg; + uint32_t replyLength; + t_FmPcdIpcReply reply; + + /* in GUEST_PARTITION, we use the IPC, to also set a private driver group if required */ + memset(&reply, 0, sizeof(reply)); + memset(&msg, 0, sizeof(msg)); + memset(&kgAlloc, 0, sizeof(kgAlloc)); + kgAlloc.guestId = p_FmPcd->guestId; + kgAlloc.numOfClsPlanEntries = p_ClsPlanGrp->sizeOfGrp; + msg.msgId = FM_PCD_ALLOC_KG_CLSPLAN; + memcpy(msg.msgBody, &kgAlloc, sizeof(kgAlloc)); + replyLength = (sizeof(uint32_t) + sizeof(p_ClsPlanGrp->baseEntry)); + if ((err = XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId) + sizeof(kgAlloc), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + { + RELEASE_LOCK(p_FmPcd->p_FmPcdKg->clsPlanGrps[p_Grp->clsPlanGrpId].lock); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + if (replyLength != (sizeof(uint32_t) + sizeof(p_ClsPlanGrp->baseEntry))) + { + RELEASE_LOCK(p_FmPcd->p_FmPcdKg->clsPlanGrps[p_Grp->clsPlanGrpId].lock); + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + } + if ((t_Error)reply.error != E_OK) + { + RELEASE_LOCK(p_FmPcd->p_FmPcdKg->clsPlanGrps[p_Grp->clsPlanGrpId].lock); + RETURN_ERROR(MINOR, (t_Error)reply.error, NO_MSG); + } + + p_ClsPlanGrp->baseEntry = *(uint8_t*)(reply.replyBody); + } + + /* build classification plan entries parameters */ + p_ClsPlanSet->baseEntry = p_ClsPlanGrp->baseEntry; + p_ClsPlanSet->numOfClsPlanEntries = p_ClsPlanGrp->sizeOfGrp; + + oredVectors = 0; + for(i = 0; inumOfOptions; i++) + { + oredVectors |= p_Grp->optVectors[i]; + /* save an array of used options - the indexes represent the power of 2 index */ + p_ClsPlanGrp->optArray[i] = p_Grp->options[i]; + } + /* set the classification plan relevant entries so that all bits + * relevant to the list of options is cleared + */ + for(j = 0; jsizeOfGrp; j++) + p_ClsPlanSet->vectors[j] = ~oredVectors; + + for(i = 0; inumOfOptions; i++) + { + /* option i got the place 2^i in the clsPlan array. all entries that + * have bit i set, should have the vector bit cleared. So each option + * has one location that it is exclusive (1,2,4,8...) and represent the + * presence of that option only, and other locations that represent a + * combination of options. + * e.g: + * If ethernet-BC is option 1 it gets entry 2 in the table. Entry 2 + * now represents a frame with ethernet-BC header - so the bit + * representing ethernet-BC should be set and all other option bits + * should be cleared. + * Entries 2,3,6,7,10... also have ethernet-BC and therefore have bit + * vector[1] set, but they also have other bits set: + * 3=1+2, options 0 and 1 + * 6=2+4, options 1 and 2 + * 7=1+2+4, options 0,1,and 2 + * 10=2+8, options 1 and 3 + * etc. + * */ + + /* now for each option (i), we set their bits in all entries (j) + * that contain bit 2^i. + */ + for(j = 0; jsizeOfGrp; j++) + { + if(j & (1<vectors[j] |= p_Grp->optVectors[i]; + } + } + + RELEASE_LOCK(p_FmPcd->p_FmPcdKg->clsPlanGrps[p_Grp->clsPlanGrpId].lock); + + return E_OK; +} + +void FmPcdKgDestroyClsPlanGrp(t_Handle h_FmPcd, uint8_t grpId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_FmPcdIpcKgClsPlanParams kgAlloc; + t_Error err; + t_FmPcdIpcMsg msg; + uint32_t replyLength; + t_FmPcdIpcReply reply; + + /* check that no port is bound to this clsPlan */ + if(p_FmPcd->p_FmPcdKg->clsPlanGrps[grpId].owners) + { + REPORT_ERROR(MINOR, E_INVALID_STATE, ("Trying to delete a clsPlan grp that has ports bound to")); + return; + } + + FmPcdDecNetEnvOwners(p_FmPcd, p_FmPcd->p_FmPcdKg->clsPlanGrps[grpId].netEnvId); + + /* free blocks */ + if(p_FmPcd->guestId == NCSW_MASTER_ID) + { + KgFreeClsPlanEntries(h_FmPcd, + p_FmPcd->p_FmPcdKg->clsPlanGrps[grpId].sizeOfGrp, + p_FmPcd->guestId, + p_FmPcd->p_FmPcdKg->clsPlanGrps[grpId].baseEntry); + } + else /* in GUEST_PARTITION, we use the IPC, to also set a private driver group if required */ + { + memset(&reply, 0, sizeof(reply)); + memset(&msg, 0, sizeof(msg)); + kgAlloc.guestId = p_FmPcd->guestId; + kgAlloc.numOfClsPlanEntries = p_FmPcd->p_FmPcdKg->clsPlanGrps[grpId].sizeOfGrp; + kgAlloc.clsPlanBase = p_FmPcd->p_FmPcdKg->clsPlanGrps[grpId].baseEntry; + msg.msgId = FM_PCD_FREE_KG_CLSPLAN; + memcpy(msg.msgBody, &kgAlloc, sizeof(kgAlloc)); + replyLength = sizeof(uint32_t); + if ((err = XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId) + sizeof(kgAlloc), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + { + REPORT_ERROR(MINOR, err, NO_MSG); + return; + } + if (replyLength != sizeof(uint32_t)) + { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + return; + } + if((t_Error)reply.error != E_OK) + { + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("Free KG clsPlan failed")); + return; + } + } + + if(grpId == p_FmPcd->p_FmPcdKg->emptyClsPlanGrpId) + p_FmPcd->p_FmPcdKg->emptyClsPlanGrpId = ILLEGAL_CLS_PLAN; + /* clear clsPlan driver structure */ + memset(&p_FmPcd->p_FmPcdKg->clsPlanGrps[grpId], 0, sizeof(t_FmPcdKgClsPlanGrp)); +} + +t_Error FmPcdKgBuildBindPortToSchemes(t_Handle h_FmPcd , t_FmPcdKgInterModuleBindPortToSchemes *p_BindPort, uint32_t *p_SpReg, bool add) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t j, schemesPerPortVector = 0; + t_FmPcdKgScheme *p_Scheme; + uint8_t i, relativeSchemeId; + uint32_t tmp, walking1Mask; + uint8_t swPortIndex = 0; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdKg, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE); + + /* for each scheme */ + for(i = 0; inumOfSchemes; i++) + { + relativeSchemeId = FmPcdKgGetRelativeSchemeId(p_FmPcd, p_BindPort->schemesIds[i]); + if(relativeSchemeId >= FM_PCD_KG_NUM_OF_SCHEMES) + RETURN_ERROR(MAJOR, E_NOT_IN_RANGE, NO_MSG); + + if(add) + { + if (!FmPcdKgIsSchemeValidSw(h_FmPcd, relativeSchemeId)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Requested scheme is invalid.")); + + p_Scheme = &p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId]; + /* check netEnvId of the port against the scheme netEnvId */ + if((p_Scheme->netEnvId != p_BindPort->netEnvId) && (p_Scheme->netEnvId != ILLEGAL_NETENV)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Port may not be bound to requested scheme - differ in netEnvId")); + + /* if next engine is private port policer profile, we need to check that it is valid */ + HW_PORT_ID_TO_SW_PORT_INDX(swPortIndex, p_BindPort->hardwarePortId); + if(p_Scheme->nextRelativePlcrProfile) + { + for(j = 0;jnumOfProfiles;j++) + { + ASSERT_COND(p_FmPcd->p_FmPcdPlcr->portsMapping[swPortIndex].h_FmPort); + if(p_Scheme->relativeProfileId+j >= p_FmPcd->p_FmPcdPlcr->portsMapping[swPortIndex].numOfProfiles) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Relative profile not in range")); + if(!FmPcdPlcrIsProfileValid(p_FmPcd, (uint16_t)(p_FmPcd->p_FmPcdPlcr->portsMapping[swPortIndex].profilesBase + p_Scheme->relativeProfileId + j))) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Relative profile not valid.")); + } + } + if(!p_BindPort->useClsPlan) + { + /* if this port does not use clsPlan, it may not be bound to schemes with units that contain + cls plan options. Schemes that are used only directly, should not be checked. + it also may not be bound to schemes that go to CC with units that are options - so we OR + the match vector and the grpBits (= ccUnits) */ + if ((p_Scheme->matchVector != SCHEME_ALWAYS_DIRECT) || p_Scheme->ccUnits) + { + walking1Mask = 0x80000000; + tmp = (p_Scheme->matchVector == SCHEME_ALWAYS_DIRECT)? 0:p_Scheme->matchVector; + tmp |= p_Scheme->ccUnits; + while (tmp) + { + if(tmp & walking1Mask) + { + tmp &= ~walking1Mask; + if(!PcdNetEnvIsUnitWithoutOpts(p_FmPcd, p_Scheme->netEnvId, walking1Mask)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Port (without clsPlan) may not be bound to requested scheme - uses clsPlan options")); + } + walking1Mask >>= 1; + } + } + } + } + /* build vector */ + schemesPerPortVector |= 1 << (31 - p_BindPort->schemesIds[i]); + } + + *p_SpReg = schemesPerPortVector; + + return E_OK; +} + +void FmPcdKgIncSchemeOwners(t_Handle h_FmPcd , t_FmPcdKgInterModuleBindPortToSchemes *p_BindPort) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + int i; + t_FmPcdKgScheme *p_Scheme; + + /* for each scheme - update owners counters */ + for(i = 0; inumOfSchemes; i++) + { + p_Scheme = &p_FmPcd->p_FmPcdKg->schemes[p_BindPort->schemesIds[i]]; + + /* increment owners number */ + p_Scheme->owners++; + } +} + +void FmPcdKgDecSchemeOwners(t_Handle h_FmPcd , t_FmPcdKgInterModuleBindPortToSchemes *p_BindPort) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + int i; + t_FmPcdKgScheme *p_Scheme; + + /* for each scheme - update owners counters */ + for(i = 0; inumOfSchemes; i++) + { + p_Scheme = &p_FmPcd->p_FmPcdKg->schemes[p_BindPort->schemesIds[i]]; + + /* increment owners number */ + ASSERT_COND(p_Scheme->owners); + p_Scheme->owners--; + } +} + +static t_Error KgWriteSp(t_FmPcd *p_FmPcd, uint8_t hardwarePortId, uint32_t spReg, bool add) +{ + t_FmPcdKgPortConfigRegs *p_FmPcdKgPortRegs; + uint32_t tmpKgarReg = 0, tmpKgpeSp, intFlags; + t_Error err = E_OK; + + if (p_FmPcd->h_Hc) + return FmHcKgWriteSp(p_FmPcd->h_Hc, hardwarePortId, spReg, add); + + p_FmPcdKgPortRegs = &p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.portRegs; + + tmpKgarReg = FmPcdKgBuildReadPortSchemeBindActionReg(hardwarePortId); + intFlags = FmPcdLock(p_FmPcd); + err = WriteKgarWait(p_FmPcd, tmpKgarReg); + if(err) + { + FmPcdUnlock(p_FmPcd, intFlags); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + tmpKgpeSp = GET_UINT32(p_FmPcdKgPortRegs->kgoe_sp); + + if(add) + tmpKgpeSp |= spReg; + else /* clear */ + tmpKgpeSp &= ~spReg; + + WRITE_UINT32(p_FmPcdKgPortRegs->kgoe_sp, tmpKgpeSp); + + tmpKgarReg = FmPcdKgBuildWritePortSchemeBindActionReg(hardwarePortId); + + err = WriteKgarWait(p_FmPcd, tmpKgarReg); + FmPcdUnlock(p_FmPcd, intFlags); + return err; +} + +static t_Error KgWriteCpp(t_FmPcd *p_FmPcd, uint8_t hardwarePortId, uint32_t cppReg) +{ + t_FmPcdKgPortConfigRegs *p_FmPcdKgPortRegs; + uint32_t tmpKgarReg, intFlags; + t_Error err; + + if (p_FmPcd->h_Hc) + return FmHcKgWriteCpp(p_FmPcd->h_Hc, hardwarePortId, cppReg); + + p_FmPcdKgPortRegs = &p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.portRegs; + intFlags = FmPcdLock(p_FmPcd); + WRITE_UINT32(p_FmPcdKgPortRegs->kgoe_cpp, cppReg); + + tmpKgarReg = FmPcdKgBuildWritePortClsPlanBindActionReg(hardwarePortId); + err = WriteKgarWait(p_FmPcd, tmpKgarReg); + FmPcdUnlock(p_FmPcd, intFlags); + + return err; +} + +static void FmPcdKgUnbindPortToClsPlanGrp(t_FmPcd *p_FmPcd, uint8_t hardwarePortId) +{ + KgWriteCpp(p_FmPcd, hardwarePortId, 0); +} + +static t_Error KgBindPortToClsPlanGrp(t_FmPcd *p_FmPcd, uint8_t hardwarePortId, uint8_t clsPlanGrpId) +{ + uint32_t tmpKgpeCpp = 0; + + tmpKgpeCpp = FmPcdKgBuildCppReg(p_FmPcd, clsPlanGrpId); + return KgWriteCpp(p_FmPcd, hardwarePortId, tmpKgpeCpp); +} + +t_Error FmPcdKgBindPortToSchemes(t_Handle h_FmPcd , t_FmPcdKgInterModuleBindPortToSchemes *p_SchemeBind) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t spReg; + t_Error err = E_OK; + + err = FmPcdKgBuildBindPortToSchemes(h_FmPcd, p_SchemeBind, &spReg, TRUE); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + + err = KgWriteSp(p_FmPcd, p_SchemeBind->hardwarePortId, spReg, TRUE); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + + FmPcdKgIncSchemeOwners(h_FmPcd, p_SchemeBind); + + return E_OK; +} + +t_Error FmPcdKgUnbindPortToSchemes(t_Handle h_FmPcd , t_FmPcdKgInterModuleBindPortToSchemes *p_SchemeBind) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t spReg; + t_Error err = E_OK; + + err = FmPcdKgBuildBindPortToSchemes(h_FmPcd, p_SchemeBind, &spReg, FALSE); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + + err = KgWriteSp(p_FmPcd, p_SchemeBind->hardwarePortId, spReg, FALSE); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + + FmPcdKgDecSchemeOwners(h_FmPcd, p_SchemeBind); + + return E_OK; +} + +bool FmPcdKgIsSchemeValidSw(t_Handle h_FmPcd, uint8_t schemeId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + return p_FmPcd->p_FmPcdKg->schemes[schemeId].valid; +} + +bool KgIsSchemeAlwaysDirect(t_Handle h_FmPcd, uint8_t schemeId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + if(p_FmPcd->p_FmPcdKg->schemes[schemeId].matchVector == SCHEME_ALWAYS_DIRECT) + return TRUE; + else + return FALSE; +} + +t_Error FmPcdKgAllocSchemes(t_Handle h_FmPcd, uint8_t numOfSchemes, uint8_t guestId, uint8_t *p_SchemesIds) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t intFlags; + uint8_t i,j; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdKg, E_INVALID_HANDLE); + + intFlags = FmPcdLock(p_FmPcd); + for(j=0,i=0;ip_FmPcdKg->schemesMng[i].allocated) + { + p_FmPcd->p_FmPcdKg->schemesMng[i].allocated = TRUE; + p_FmPcd->p_FmPcdKg->schemesMng[i].ownerId = guestId; + p_SchemesIds[j] = i; + j++; + } + } + + if (j != numOfSchemes) + { + /* roll back */ + for(j--; j; j--) + { + p_FmPcd->p_FmPcdKg->schemesMng[p_SchemesIds[j]].allocated = FALSE; + p_FmPcd->p_FmPcdKg->schemesMng[p_SchemesIds[j]].ownerId = 0; + p_SchemesIds[j] = 0; + } + FmPcdUnlock(p_FmPcd, intFlags); + RETURN_ERROR(MAJOR, E_NOT_AVAILABLE, ("No schemes found")); + } + FmPcdUnlock(p_FmPcd, intFlags); + + return E_OK; +} + +t_Error FmPcdKgFreeSchemes(t_Handle h_FmPcd, uint8_t numOfSchemes, uint8_t guestId, uint8_t *p_SchemesIds) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t intFlags; + uint8_t i; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdKg, E_INVALID_HANDLE); + + intFlags = FmPcdLock(p_FmPcd); + + for(i=0;ip_FmPcdKg->schemesMng[p_SchemesIds[i]].allocated) + { + FmPcdUnlock(p_FmPcd, intFlags); + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Scheme was not previously allocated")); + } + if(p_FmPcd->p_FmPcdKg->schemesMng[p_SchemesIds[i]].ownerId != guestId) + { + FmPcdUnlock(p_FmPcd, intFlags); + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Scheme is not owned by caller. ")); + } + p_FmPcd->p_FmPcdKg->schemesMng[p_SchemesIds[i]].allocated = FALSE; + p_FmPcd->p_FmPcdKg->schemesMng[p_SchemesIds[i]].ownerId = 0; + } + + FmPcdUnlock(p_FmPcd, intFlags); + return E_OK; +} + +t_Error KgAllocClsPlanEntries(t_Handle h_FmPcd, uint16_t numOfClsPlanEntries, uint8_t guestId, uint8_t *p_First) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t intFlags; + uint8_t numOfBlocks, blocksFound=0, first=0; + uint8_t i, j; + + intFlags = FmPcdLock(p_FmPcd); + + if(!numOfClsPlanEntries) + { + FmPcdUnlock(p_FmPcd, intFlags); + return E_OK; + } + + if ((numOfClsPlanEntries % CLS_PLAN_NUM_PER_GRP) || (!POWER_OF_2(numOfClsPlanEntries))) + { + FmPcdUnlock(p_FmPcd, intFlags); + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("numOfClsPlanEntries must be a power of 2 and divisible by 8")); + } + + numOfBlocks = (uint8_t)(numOfClsPlanEntries/CLS_PLAN_NUM_PER_GRP); + + /* try to find consequent blocks */ + first = 0; + for(i=0;ip_FmPcdKg->clsPlanBlocksMng[i].allocated) + { + blocksFound++; + i++; + if(blocksFound == numOfBlocks) + break; + } + else + { + blocksFound = 0; + /* advance i to the next aligned address */ + first = i = (uint8_t)(first + numOfBlocks); + } + } + + if(blocksFound == numOfBlocks) + { + *p_First = (uint8_t)(first*CLS_PLAN_NUM_PER_GRP); + for(j = first; jp_FmPcdKg->clsPlanBlocksMng[j].allocated = TRUE; + p_FmPcd->p_FmPcdKg->clsPlanBlocksMng[j].ownerId = guestId; + } + FmPcdUnlock(p_FmPcd, intFlags); + + return E_OK; + } + else + { + FmPcdUnlock(p_FmPcd, intFlags); + RETURN_ERROR(MINOR, E_FULL, ("No recources for clsPlan")); + } +} + +void KgFreeClsPlanEntries(t_Handle h_FmPcd, uint16_t numOfClsPlanEntries, uint8_t guestId, uint8_t base) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t intFlags; + uint8_t numOfBlocks; + uint8_t i, baseBlock; + + UNUSED( guestId); + + intFlags = FmPcdLock(p_FmPcd); + + numOfBlocks = (uint8_t)(numOfClsPlanEntries/CLS_PLAN_NUM_PER_GRP); + ASSERT_COND(!(base%CLS_PLAN_NUM_PER_GRP)); + + baseBlock = (uint8_t)(base/CLS_PLAN_NUM_PER_GRP); + for(i=baseBlock;ip_FmPcdKg->clsPlanBlocksMng[i].allocated); + ASSERT_COND(guestId == p_FmPcd->p_FmPcdKg->clsPlanBlocksMng[i].ownerId); + p_FmPcd->p_FmPcdKg->clsPlanBlocksMng[i].allocated = FALSE; + p_FmPcd->p_FmPcdKg->clsPlanBlocksMng[i].ownerId = 0; + } + FmPcdUnlock(p_FmPcd, intFlags); +} + +void KgEnable(t_FmPcd *p_FmPcd) +{ + t_FmPcdKgRegs *p_Regs = p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs; + + ASSERT_COND(FmIsMaster(p_FmPcd->h_Fm)); + WRITE_UINT32(p_Regs->kggcr,GET_UINT32(p_Regs->kggcr) | FM_PCD_KG_KGGCR_EN); +} + +void KgDisable(t_FmPcd *p_FmPcd) +{ + t_FmPcdKgRegs *p_Regs = p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs; + + ASSERT_COND(FmIsMaster(p_FmPcd->h_Fm)); + WRITE_UINT32(p_Regs->kggcr,GET_UINT32(p_Regs->kggcr) & ~FM_PCD_KG_KGGCR_EN); +} + +void KgSetClsPlan(t_Handle h_FmPcd, t_FmPcdKgInterModuleClsPlanSet *p_Set) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_FmPcdKgClsPlanRegs *p_FmPcdKgPortRegs; + uint32_t tmpKgarReg=0, intFlags; + uint16_t i, j; + + SANITY_CHECK_RETURN(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN(p_FmPcd->p_FmPcdKg, E_INVALID_HANDLE); + + ASSERT_COND(FmIsMaster(p_FmPcd->h_Fm)); + p_FmPcdKgPortRegs = &p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.clsPlanRegs; + + intFlags = FmPcdLock(p_FmPcd); + for(i=p_Set->baseEntry;ibaseEntry+p_Set->numOfClsPlanEntries;i+=8) + { + tmpKgarReg = FmPcdKgBuildWriteClsPlanBlockActionReg((uint8_t)(i / CLS_PLAN_NUM_PER_GRP)); + + for (j = i; j < i+8; j++) + { + ASSERT_COND(IN_RANGE(0, (j - p_Set->baseEntry), FM_PCD_MAX_NUM_OF_CLS_PLANS-1)); + WRITE_UINT32(p_FmPcdKgPortRegs->kgcpe[j % CLS_PLAN_NUM_PER_GRP],p_Set->vectors[j - p_Set->baseEntry]); + } + + if(WriteKgarWait(p_FmPcd, tmpKgarReg) != E_OK) + { + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("WriteKgarWait FAILED")); + return; + } + } + FmPcdUnlock(p_FmPcd, intFlags); +} + +static void PcdKgErrorException(t_Handle h_FmPcd) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + uint32_t event, force, schemeIndexes = 0,index = 0, mask = 0; + + ASSERT_COND(FmIsMaster(p_FmPcd->h_Fm)); + event = GET_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgeer); + mask = GET_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgeeer); + + schemeIndexes = GET_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgseer); + schemeIndexes &= GET_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgseeer); + + event &= mask; + + /* clear the forced events */ + force = GET_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgfeer); + if(force & event) + WRITE_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgfeer, force & ~event); + + WRITE_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgeer, event); + WRITE_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgseer, schemeIndexes); + + if(event & FM_PCD_KG_DOUBLE_ECC) + p_FmPcd->f_Exception(p_FmPcd->h_App,e_FM_PCD_KG_EXCEPTION_DOUBLE_ECC); + if(event & FM_PCD_KG_KEYSIZE_OVERFLOW) + { + if(schemeIndexes) + { + while(schemeIndexes) + { + if(schemeIndexes & 0x1) + p_FmPcd->f_FmPcdIndexedException(p_FmPcd->h_App,e_FM_PCD_KG_EXCEPTION_KEYSIZE_OVERFLOW, (uint16_t)(31 - index)); + schemeIndexes >>= 1; + index+=1; + } + } + else /* this should happen only when interrupt is forced. */ + p_FmPcd->f_Exception(p_FmPcd->h_App,e_FM_PCD_KG_EXCEPTION_KEYSIZE_OVERFLOW); + } +} + +static t_Error KgInitGuest(t_FmPcd *p_FmPcd) +{ + t_Error err = E_OK; + t_FmPcdIpcKgSchemesParams kgAlloc; + uint32_t replyLength; + t_FmPcdIpcReply reply; + t_FmPcdIpcMsg msg; + + ASSERT_COND(p_FmPcd->guestId != NCSW_MASTER_ID); + + /* in GUEST_PARTITION, we use the IPC */ + memset(&reply, 0, sizeof(reply)); + memset(&msg, 0, sizeof(msg)); + memset(&kgAlloc, 0, sizeof(t_FmPcdIpcKgSchemesParams)); + kgAlloc.numOfSchemes = p_FmPcd->p_FmPcdKg->numOfSchemes; + kgAlloc.guestId = p_FmPcd->guestId; + msg.msgId = FM_PCD_ALLOC_KG_SCHEMES; + memcpy(msg.msgBody, &kgAlloc, sizeof(kgAlloc)); + replyLength = sizeof(uint32_t) + p_FmPcd->p_FmPcdKg->numOfSchemes*sizeof(uint8_t); + if ((err = XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId) + sizeof(kgAlloc), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + if(replyLength != (sizeof(uint32_t) + p_FmPcd->p_FmPcdKg->numOfSchemes*sizeof(uint8_t))) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + memcpy(p_FmPcd->p_FmPcdKg->schemesIds, (uint8_t*)(reply.replyBody),p_FmPcd->p_FmPcdKg->numOfSchemes*sizeof(uint8_t)); + + return (t_Error)reply.error; +} + +static t_Error KgInitMaster(t_FmPcd *p_FmPcd) +{ + t_Error err = E_OK; + t_FmPcdKgRegs *p_Regs = p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs; + int i; + uint8_t hardwarePortId = 0; + uint32_t tmpReg; + + ASSERT_COND(p_FmPcd->guestId == NCSW_MASTER_ID); + + /**********************KGEER******************/ + WRITE_UINT32(p_Regs->kgeer, (FM_PCD_KG_DOUBLE_ECC | FM_PCD_KG_KEYSIZE_OVERFLOW)); + /**********************KGEER******************/ + + /**********************KGEEER******************/ + tmpReg = 0; + if(p_FmPcd->exceptions & FM_PCD_EX_KG_DOUBLE_ECC) + { + FmEnableRamsEcc(p_FmPcd->h_Fm); + tmpReg |= FM_PCD_KG_DOUBLE_ECC; + } + if(p_FmPcd->exceptions & FM_PCD_EX_KG_KEYSIZE_OVERFLOW) + tmpReg |= FM_PCD_KG_KEYSIZE_OVERFLOW; + WRITE_UINT32(p_Regs->kgeeer,tmpReg); + /**********************KGEEER******************/ + + /**********************KGFDOR******************/ + WRITE_UINT32(p_Regs->kgfdor,0); + /**********************KGFDOR******************/ + + /**********************KGGDV0R******************/ + WRITE_UINT32(p_Regs->kggdv0r,0); + /**********************KGGDV0R******************/ + + /**********************KGGDV1R******************/ + WRITE_UINT32(p_Regs->kggdv1r,0); + /**********************KGGDV1R******************/ + + /**********************KGGCR******************/ + WRITE_UINT32(p_Regs->kggcr, NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME); + /**********************KGGCR******************/ + + /* register even if no interrupts enabled, to allow future enablement */ + FmRegisterIntr(p_FmPcd->h_Fm, e_FM_MOD_KG, 0, e_FM_INTR_TYPE_ERR, PcdKgErrorException, p_FmPcd); + + /* clear binding between ports to schemes so that all ports are not bound to any schemes */ + for (i=0;ikgseer, 0xFFFFFFFF); + WRITE_UINT32(p_Regs->kgseeer, 0xFFFFFFFF); + + if(p_FmPcd->p_FmPcdKg->numOfSchemes) + { + err = FmPcdKgAllocSchemes(p_FmPcd, + p_FmPcd->p_FmPcdKg->numOfSchemes, + p_FmPcd->guestId, + p_FmPcd->p_FmPcdKg->schemesIds); + if(err) + RETURN_ERROR(MINOR, err, NO_MSG); + } + + return E_OK; +} + + +/****************************************/ +/* API routines */ +/****************************************/ +t_Error FM_PCD_KgSetAdditionalDataAfterParsing(t_Handle h_FmPcd, uint8_t payloadOffset) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_FmPcdKgRegs *p_Regs; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_NULL_POINTER); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdKg, E_NULL_POINTER); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs, E_NULL_POINTER); + + p_Regs = p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs; + if(!FmIsMaster(p_FmPcd->h_Fm)) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("FM_PCD_KgSetAdditionalDataAfterParsing - guest mode!")); + +/* not needed + if(payloadOffset > 256) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("data exatraction offset from parseing end can not be more than 256")); +*/ + + WRITE_UINT32(p_Regs->kgfdor,payloadOffset); + + return E_OK; +} + +t_Error FM_PCD_KgSetDfltValue(t_Handle h_FmPcd, uint8_t valueId, uint32_t value) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_FmPcdKgRegs *p_Regs; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(((valueId == 0) || (valueId == 1)), E_INVALID_VALUE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_NULL_POINTER); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdKg, E_NULL_POINTER); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs, E_NULL_POINTER); + + p_Regs = p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs; + + if(!FmIsMaster(p_FmPcd->h_Fm)) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("FM_PCD_KgSetDfltValue - guest mode!")); + + if(valueId == 0) + WRITE_UINT32(p_Regs->kggdv0r,value); + else + WRITE_UINT32(p_Regs->kggdv1r,value); + return E_OK; +} + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +t_Error FM_PCD_KgDumpRegs(t_Handle h_FmPcd) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + int i = 0, j = 0; + uint8_t hardwarePortId = 0; + uint32_t tmpKgarReg, intFlags; + t_Error err = E_OK; + t_FmPcdIpcMsg msg; + + DECLARE_DUMP; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdKg, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_PCD_KG_DUMP_REGS; + return XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId), + NULL, + NULL, + NULL, + NULL); + } + DUMP_SUBTITLE(("\n")); + DUMP_TITLE(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs, ("FmPcdKgRegs Regs")); + + DUMP_VAR(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs,kggcr); + DUMP_VAR(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs,kgeer); + DUMP_VAR(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs,kgeeer); + DUMP_VAR(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs,kgseer); + DUMP_VAR(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs,kgseeer); + DUMP_VAR(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs,kggsr); + DUMP_VAR(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs,kgtpc); + DUMP_VAR(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs,kgserc); + DUMP_VAR(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs,kgfdor); + DUMP_VAR(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs,kggdv0r); + DUMP_VAR(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs,kggdv1r); + DUMP_VAR(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs,kgfer); + DUMP_VAR(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs,kgfeer); + DUMP_VAR(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs,kgar); + + DUMP_SUBTITLE(("\n")); + intFlags = FmPcdLock(p_FmPcd); + for(j = 0;jp_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs, ("FmPcdKgIndirectAccessSchemeRegs Scheme %d Regs", j)); + + DUMP_VAR(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs,kgse_mode); + DUMP_VAR(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs,kgse_ekfc); + DUMP_VAR(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs,kgse_ekdv); + DUMP_VAR(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs,kgse_bmch); + DUMP_VAR(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs,kgse_bmcl); + DUMP_VAR(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs,kgse_fqb); + DUMP_VAR(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs,kgse_hc); + DUMP_VAR(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs,kgse_ppc); + + DUMP_TITLE(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs.kgse_gec, ("kgse_gec")); + DUMP_SUBSTRUCT_ARRAY(i, FM_PCD_KG_NUM_OF_GENERIC_REGS) + { + DUMP_MEMORY(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs.kgse_gec[i], sizeof(uint32_t)); + } + + DUMP_VAR(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs,kgse_spc); + DUMP_VAR(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs,kgse_dv0); + DUMP_VAR(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs,kgse_dv1); + DUMP_VAR(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs,kgse_ccbs); + DUMP_VAR(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs,kgse_mv); + } + DUMP_SUBTITLE(("\n")); + + for (i=0;ip_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.portRegs, ("FmPcdKgIndirectAccessPortRegs PCD Port %d regs", hardwarePortId)); + + DUMP_VAR(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.portRegs, kgoe_sp); + DUMP_VAR(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.portRegs, kgoe_cpp); + } + + DUMP_SUBTITLE(("\n")); + for(j=0;jp_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.clsPlanRegs, ("FmPcdKgIndirectAccessClsPlanRegs Regs group %d", j)); + DUMP_TITLE(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.clsPlanRegs.kgcpe, ("kgcpe")); + + tmpKgarReg = FmPcdKgBuildReadClsPlanBlockActionReg((uint8_t)j); + err = WriteKgarWait(p_FmPcd, tmpKgarReg); + if(err) + RETURN_ERROR(MINOR, err, NO_MSG); + DUMP_SUBSTRUCT_ARRAY(i, 8) + DUMP_MEMORY(&p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.clsPlanRegs.kgcpe[i], sizeof(uint32_t)); + } + FmPcdUnlock(p_FmPcd, intFlags); + + return E_OK; +} +#endif /* (defined(DEBUG_ERRORS) && ... */ + +t_Handle KgConfig( t_FmPcd *p_FmPcd, t_FmPcdParams *p_FmPcdParams) +{ + t_FmPcdKg *p_FmPcdKg; + + UNUSED(p_FmPcd); + + if (p_FmPcdParams->numOfSchemes > FM_PCD_KG_NUM_OF_SCHEMES) + { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, + ("numOfSchemes should not exceed %d", FM_PCD_KG_NUM_OF_SCHEMES)); + return NULL; + } + + p_FmPcdKg = (t_FmPcdKg *)XX_Malloc(sizeof(t_FmPcdKg)); + if (!p_FmPcdKg) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM Keygen allocation FAILED")); + return NULL; + } + memset(p_FmPcdKg, 0, sizeof(t_FmPcdKg)); + + if(FmIsMaster(p_FmPcd->h_Fm)) + { + p_FmPcdKg->p_FmPcdKgRegs = (t_FmPcdKgRegs *)UINT_TO_PTR(FmGetPcdKgBaseAddr(p_FmPcdParams->h_Fm)); + p_FmPcd->exceptions |= DEFAULT_fmPcdKgErrorExceptions; + } + + p_FmPcdKg->numOfSchemes = p_FmPcdParams->numOfSchemes; + if((p_FmPcd->guestId == NCSW_MASTER_ID) && !p_FmPcdKg->numOfSchemes) + { + p_FmPcdKg->numOfSchemes = FM_PCD_KG_NUM_OF_SCHEMES; + DBG(WARNING, ("numOfSchemes was defined 0 by user, re-defined by driver to FM_PCD_KG_NUM_OF_SCHEMES")); + } + + p_FmPcdKg->emptyClsPlanGrpId = ILLEGAL_CLS_PLAN; + + return p_FmPcdKg; +} + +t_Error KgInit(t_FmPcd *p_FmPcd) +{ + if (p_FmPcd->guestId == NCSW_MASTER_ID) + return KgInitMaster(p_FmPcd); + else + return KgInitGuest(p_FmPcd); +} + +t_Error KgFree(t_FmPcd *p_FmPcd) +{ + t_FmPcdIpcKgSchemesParams kgAlloc; + t_Error err = E_OK; + t_FmPcdIpcMsg msg; + uint32_t replyLength; + t_FmPcdIpcReply reply; + + FmUnregisterIntr(p_FmPcd->h_Fm, e_FM_MOD_KG, 0, e_FM_INTR_TYPE_ERR); + + if(p_FmPcd->guestId == NCSW_MASTER_ID) + return FmPcdKgFreeSchemes(p_FmPcd, + p_FmPcd->p_FmPcdKg->numOfSchemes, + p_FmPcd->guestId, + p_FmPcd->p_FmPcdKg->schemesIds); + + /* guest */ + memset(&reply, 0, sizeof(reply)); + memset(&msg, 0, sizeof(msg)); + kgAlloc.numOfSchemes = p_FmPcd->p_FmPcdKg->numOfSchemes; + kgAlloc.guestId = p_FmPcd->guestId; + ASSERT_COND(kgAlloc.numOfSchemes < FM_PCD_KG_NUM_OF_SCHEMES); + memcpy(kgAlloc.schemesIds, p_FmPcd->p_FmPcdKg->schemesIds , (sizeof(uint8_t))*kgAlloc.numOfSchemes); + msg.msgId = FM_PCD_FREE_KG_SCHEMES; + memcpy(msg.msgBody, &kgAlloc, sizeof(kgAlloc)); + replyLength = sizeof(uint32_t); + if ((err = XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId) + sizeof(kgAlloc), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + if (replyLength != sizeof(uint32_t)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + + return (t_Error)reply.error; +} + +t_Error FmPcdKgSetOrBindToClsPlanGrp(t_Handle h_FmPcd, uint8_t hardwarePortId, uint8_t netEnvId, protocolOpt_t *p_OptArray, uint8_t *p_ClsPlanGrpId, bool *p_IsEmptyClsPlanGrp) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + t_FmPcdKgInterModuleClsPlanGrpParams grpParams, *p_GrpParams; + t_FmPcdKgClsPlanGrp *p_ClsPlanGrp; + t_FmPcdKgInterModuleClsPlanSet *p_ClsPlanSet; + t_Error err; + + memset(&grpParams, 0, sizeof(grpParams)); + grpParams.clsPlanGrpId = ILLEGAL_CLS_PLAN; + p_GrpParams = &grpParams; + + p_GrpParams->netEnvId = netEnvId; + err = PcdGetClsPlanGrpParams(h_FmPcd, p_GrpParams); + if(err) + RETURN_ERROR(MINOR,err,NO_MSG); + if(p_GrpParams->grpExists) + *p_ClsPlanGrpId = p_GrpParams->clsPlanGrpId; + else + { + p_ClsPlanSet = (t_FmPcdKgInterModuleClsPlanSet *)XX_Malloc(sizeof(t_FmPcdKgInterModuleClsPlanSet)); + if (!p_ClsPlanSet) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("memory allocation failed for p_ClsPlanSet")); + memset(p_ClsPlanSet, 0, sizeof(t_FmPcdKgInterModuleClsPlanSet)); + err = FmPcdKgBuildClsPlanGrp(h_FmPcd, p_GrpParams, p_ClsPlanSet); + if (err) + { + XX_Free(p_ClsPlanSet); + RETURN_ERROR(MINOR,err,NO_MSG); + } + *p_ClsPlanGrpId = p_GrpParams->clsPlanGrpId; + + if (p_FmPcd->h_Hc) + { + /* write clsPlan entries to memory */ + err = FmHcPcdKgSetClsPlan(p_FmPcd->h_Hc, p_ClsPlanSet); + if (err) + { + XX_Free(p_ClsPlanSet); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + } + else + /* write clsPlan entries to memory */ + KgSetClsPlan(p_FmPcd, p_ClsPlanSet); + + XX_Free(p_ClsPlanSet); + } + + /* mark if this is an empty classification group */ + if(*p_ClsPlanGrpId == p_FmPcd->p_FmPcdKg->emptyClsPlanGrpId) + *p_IsEmptyClsPlanGrp = TRUE; + else + *p_IsEmptyClsPlanGrp = FALSE; + + p_ClsPlanGrp = &p_FmPcd->p_FmPcdKg->clsPlanGrps[*p_ClsPlanGrpId]; + + /* increment owners number */ + p_ClsPlanGrp->owners++; + + /* copy options array for port */ + memcpy(p_OptArray, &p_FmPcd->p_FmPcdKg->clsPlanGrps[*p_ClsPlanGrpId].optArray, FM_PCD_MAX_NUM_OF_OPTIONS(FM_PCD_MAX_NUM_OF_CLS_PLANS)*sizeof(protocolOpt_t)); + + /* bind port to the new or existing group */ + err = KgBindPortToClsPlanGrp(p_FmPcd, hardwarePortId, p_GrpParams->clsPlanGrpId); + if(err) + RETURN_ERROR(MINOR, err, NO_MSG); + + return E_OK; +} + +t_Error FmPcdKgDeleteOrUnbindPortToClsPlanGrp(t_Handle h_FmPcd, uint8_t hardwarePortId, uint8_t clsPlanGrpId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + t_FmPcdKgClsPlanGrp *p_ClsPlanGrp = &p_FmPcd->p_FmPcdKg->clsPlanGrps[clsPlanGrpId]; + t_FmPcdKgInterModuleClsPlanSet *p_ClsPlanSet; + + FmPcdKgUnbindPortToClsPlanGrp(p_FmPcd, hardwarePortId); + + /* decrement owners number */ + ASSERT_COND(p_ClsPlanGrp->owners); + p_ClsPlanGrp->owners--; + + if(!p_ClsPlanGrp->owners) + { + if (p_FmPcd->h_Hc) + return FmHcPcdKgDeleteClsPlan(p_FmPcd->h_Hc, clsPlanGrpId); + else + { + /* clear clsPlan entries in memory */ + p_ClsPlanSet = (t_FmPcdKgInterModuleClsPlanSet *)XX_Malloc(sizeof(t_FmPcdKgInterModuleClsPlanSet)); + if (!p_ClsPlanSet) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("memory allocation failed for p_ClsPlanSet")); + memset(p_ClsPlanSet, 0, sizeof(t_FmPcdKgInterModuleClsPlanSet)); + p_ClsPlanSet->baseEntry = p_FmPcd->p_FmPcdKg->clsPlanGrps[clsPlanGrpId].baseEntry; + p_ClsPlanSet->numOfClsPlanEntries = p_FmPcd->p_FmPcdKg->clsPlanGrps[clsPlanGrpId].sizeOfGrp; + KgSetClsPlan(p_FmPcd, p_ClsPlanSet); + XX_Free(p_ClsPlanSet); + FmPcdKgDestroyClsPlanGrp(h_FmPcd, clsPlanGrpId); + } + } + return E_OK; +} + +t_Error FmPcdKgBuildScheme(t_Handle h_FmPcd, t_FmPcdKgSchemeParams *p_Scheme, t_FmPcdKgInterModuleSchemeRegs *p_SchemeRegs) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + uint32_t grpBits = 0; + uint8_t grpBase; + bool direct=TRUE, absolute=FALSE; + uint16_t profileId=0, numOfProfiles=0, relativeProfileId; + t_Error err = E_OK; + int i = 0; + t_NetEnvParams netEnvParams; + uint32_t tmpReg, fqbTmp = 0, ppcTmp = 0, selectTmp, maskTmp, knownTmp, genTmp; + t_FmPcdKgKeyExtractAndHashParams *p_KeyAndHash = NULL; + uint8_t j, curr, idx; + uint8_t id, shift=0, code=0, offset=0, size=0; + t_FmPcdExtractEntry *p_Extract = NULL; + t_FmPcdKgExtractedOrParams *p_ExtractOr; + bool generic = FALSE; + t_KnownFieldsMasks bitMask; + e_FmPcdKgExtractDfltSelect swDefault = (e_FmPcdKgExtractDfltSelect)0; + t_FmPcdKgSchemesExtracts *p_LocalExtractsArray; + uint8_t numOfSwDefaults = 0; + t_FmPcdKgExtractDflt swDefaults[NUM_OF_SW_DEFAULTS]; + uint8_t currGenId = 0, relativeSchemeId; + + if(!p_Scheme->modify) + relativeSchemeId = p_Scheme->id.relativeSchemeId; + else + relativeSchemeId = FmPcdKgGetRelativeSchemeId(p_FmPcd, (uint8_t)(PTR_TO_UINT(p_Scheme->id.h_Scheme)-1)); + + memset(&p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId], 0, sizeof(t_FmPcdKgScheme)); + memset(swDefaults, 0, NUM_OF_SW_DEFAULTS*sizeof(t_FmPcdKgExtractDflt)); + memset(p_SchemeRegs, 0, sizeof(t_FmPcdKgInterModuleSchemeRegs)); + + if (p_Scheme->netEnvParams.numOfDistinctionUnits > FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, + ("numOfDistinctionUnits should not exceed %d", FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS)); + + /* by netEnv parameters, get match vector */ + if(!p_Scheme->alwaysDirect) + { + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].netEnvId = + (uint8_t)(PTR_TO_UINT(p_Scheme->netEnvParams.h_NetEnv)-1); + netEnvParams.netEnvId = p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].netEnvId; + netEnvParams.numOfDistinctionUnits = p_Scheme->netEnvParams.numOfDistinctionUnits; + memcpy(netEnvParams.unitIds, p_Scheme->netEnvParams.unitIds, (sizeof(uint8_t))*p_Scheme->netEnvParams.numOfDistinctionUnits); + err = PcdGetUnitsVector(p_FmPcd, &netEnvParams); + if(err) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].matchVector = netEnvParams.vector; + } + else + { + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].matchVector = SCHEME_ALWAYS_DIRECT; + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].netEnvId = ILLEGAL_NETENV; + } + + if(p_Scheme->nextEngine == e_FM_PCD_INVALID) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Next Engine of the scheme is not Valid")); + + if(p_Scheme->bypassFqidGeneration) + { +#ifdef FM_KG_NO_BYPASS_FQID_GEN + { + t_FmRevisionInfo revInfo; + + FM_GetRevision(p_FmPcd->h_Fm, &revInfo); + if (revInfo.majorRev != 4) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("bypassFqidGeneration.")); + } +#endif /* FM_KG_NO_BYPASS_FQID_GEN */ + if(p_Scheme->baseFqid) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("baseFqid set for a scheme that does not generate an FQID")); + } + else + if(!p_Scheme->baseFqid) + DBG(WARNING, ("baseFqid is 0.")); + + if(p_Scheme->nextEngine == e_FM_PCD_PLCR) + { + direct = p_Scheme->kgNextEngineParams.plcrProfile.direct; + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].directPlcr = direct; + absolute = (bool)(p_Scheme->kgNextEngineParams.plcrProfile.sharedProfile ? TRUE : FALSE); + if(!direct && absolute) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Indirect policing is not available when profile is shared.")); + + if(direct) + { + profileId = p_Scheme->kgNextEngineParams.plcrProfile.profileSelect.directRelativeProfileId; + numOfProfiles = 1; + } + else + { + profileId = p_Scheme->kgNextEngineParams.plcrProfile.profileSelect.indirectProfile.fqidOffsetRelativeProfileIdBase; + shift = p_Scheme->kgNextEngineParams.plcrProfile.profileSelect.indirectProfile.fqidOffsetShift; + numOfProfiles = p_Scheme->kgNextEngineParams.plcrProfile.profileSelect.indirectProfile.numOfProfiles; + } + } + + if(p_Scheme->nextEngine == e_FM_PCD_CC) + { +#ifdef FM_KG_NO_BYPASS_PLCR_PROFILE_GEN + if((p_Scheme->kgNextEngineParams.cc.plcrNext) && (p_Scheme->kgNextEngineParams.cc.bypassPlcrProfileGeneration)) + { + t_FmRevisionInfo revInfo; + + FM_GetRevision(p_FmPcd->h_Fm, &revInfo); + if (revInfo.majorRev != 4) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("bypassPlcrProfileGeneration.")); + } +#endif /* FM_KG_NO_BYPASS_PLCR_PROFILE_GEN */ + + err = FmPcdCcGetGrpParams(p_Scheme->kgNextEngineParams.cc.h_CcTree, + p_Scheme->kgNextEngineParams.cc.grpId, + &grpBits, + &grpBase); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].ccUnits = grpBits; + + if((p_Scheme->kgNextEngineParams.cc.plcrNext) && + (!p_Scheme->kgNextEngineParams.cc.bypassPlcrProfileGeneration)) + { + if(p_Scheme->kgNextEngineParams.cc.plcrProfile.sharedProfile) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Shared profile may not be used after Coarse classification.")); + absolute = FALSE; + direct = p_Scheme->kgNextEngineParams.cc.plcrProfile.direct; + if(direct) + { + profileId = p_Scheme->kgNextEngineParams.cc.plcrProfile.profileSelect.directRelativeProfileId; + numOfProfiles = 1; + } + else + { + profileId = p_Scheme->kgNextEngineParams.cc.plcrProfile.profileSelect.indirectProfile.fqidOffsetRelativeProfileIdBase; + shift = p_Scheme->kgNextEngineParams.cc.plcrProfile.profileSelect.indirectProfile.fqidOffsetShift; + numOfProfiles = p_Scheme->kgNextEngineParams.cc.plcrProfile.profileSelect.indirectProfile.numOfProfiles; + } + } + } + + /* if policer is used directly after KG, or after CC */ + if((p_Scheme->nextEngine == e_FM_PCD_PLCR) || + ((p_Scheme->nextEngine == e_FM_PCD_CC) && + (p_Scheme->kgNextEngineParams.cc.plcrNext) && + (!p_Scheme->kgNextEngineParams.cc.bypassPlcrProfileGeneration))) + { + /* if private policer profile, it may be uninitialized yet, therefore no checks are done at this stage */ + if(absolute) + { + /* for absolute direct policy only, */ + relativeProfileId = profileId; + err = FmPcdPlcrGetAbsoluteProfileId(h_FmPcd,e_FM_PCD_PLCR_SHARED,NULL, relativeProfileId, &profileId); + if(err) + RETURN_ERROR(MAJOR, err, ("Shared profile not valid offset")); + if(!FmPcdPlcrIsProfileValid(p_FmPcd, profileId)) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Shared profile not valid.")); + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].relativeProfileId = profileId; + } + else + { + /* save relative profile id's for later check */ + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].nextRelativePlcrProfile = TRUE; + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].relativeProfileId = profileId; + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].numOfProfiles = numOfProfiles; + } + } + else + { + /* if policer is NOT going to be used after KG at all than if bypassFqidGeneration + is set, we do not need numOfUsedExtractedOrs and hashDistributionNumOfFqids */ + if(p_Scheme->bypassFqidGeneration && p_Scheme->numOfUsedExtractedOrs) + RETURN_ERROR(MAJOR, E_INVALID_STATE, + ("numOfUsedExtractedOrs is set in a scheme that does not generate FQID or policer profile ID")); + if(p_Scheme->bypassFqidGeneration && + p_Scheme->useHash && + p_Scheme->keyExtractAndHashParams.hashDistributionNumOfFqids) + RETURN_ERROR(MAJOR, E_INVALID_STATE, + ("hashDistributionNumOfFqids is set in a scheme that does not generate FQID or policer profile ID")); + } + + /* configure all 21 scheme registers */ + tmpReg = KG_SCH_MODE_EN; + switch(p_Scheme->nextEngine) + { + case(e_FM_PCD_PLCR): + /* add to mode register - NIA */ + tmpReg |= KG_SCH_MODE_NIA_PLCR; + tmpReg |= NIA_ENG_PLCR; + tmpReg |= (uint32_t)(p_Scheme->kgNextEngineParams.plcrProfile.sharedProfile ? NIA_PLCR_ABSOLUTE:0); + /* initialize policer profile command - */ + /* configure kgse_ppc */ + if(direct) + /* use profileId as base, other fields are 0 */ + p_SchemeRegs->kgse_ppc = (uint32_t)profileId; + else + { + if(shift > MAX_PP_SHIFT) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("fqidOffsetShift may not be larger than %d", MAX_PP_SHIFT)); + + if(!numOfProfiles || !POWER_OF_2(numOfProfiles)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("numOfProfiles must not be 0 and must be a power of 2")); + + ppcTmp = ((uint32_t)shift << KG_SCH_PP_SHIFT_HIGH_SHIFT) & KG_SCH_PP_SHIFT_HIGH; + ppcTmp |= ((uint32_t)shift << KG_SCH_PP_SHIFT_LOW_SHIFT) & KG_SCH_PP_SHIFT_LOW; + ppcTmp |= ((uint32_t)(numOfProfiles-1) << KG_SCH_PP_MASK_SHIFT); + ppcTmp |= (uint32_t)profileId; + + p_SchemeRegs->kgse_ppc = ppcTmp; + } + break; + case(e_FM_PCD_CC): + /* mode reg - define NIA */ + tmpReg |= (NIA_ENG_FM_CTL | NIA_FM_CTL_AC_CC); + + p_SchemeRegs->kgse_ccbs = grpBits; + tmpReg |= (uint32_t)(grpBase << KG_SCH_MODE_CCOBASE_SHIFT); + + if(p_Scheme->kgNextEngineParams.cc.plcrNext) + { + if(!p_Scheme->kgNextEngineParams.cc.bypassPlcrProfileGeneration) + { + /* find out if absolute or relative */ + if(absolute) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("It is illegal to request a shared profile in a scheme that is in a KG->CC->PLCR flow")); + if(direct) + { + /* mask = 0, base = directProfileId */ + p_SchemeRegs->kgse_ppc = (uint32_t)profileId; + } + else + { + if(shift > MAX_PP_SHIFT) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("fqidOffsetShift may not be larger than %d", MAX_PP_SHIFT)); + if(!numOfProfiles || !POWER_OF_2(numOfProfiles)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("numOfProfiles must not be 0 and must be a power of 2")); + + ppcTmp = ((uint32_t)shift << KG_SCH_PP_SHIFT_HIGH_SHIFT) & KG_SCH_PP_SHIFT_HIGH; + ppcTmp |= ((uint32_t)shift << KG_SCH_PP_SHIFT_LOW_SHIFT) & KG_SCH_PP_SHIFT_LOW; + ppcTmp |= ((uint32_t)(numOfProfiles-1) << KG_SCH_PP_MASK_SHIFT); + ppcTmp |= (uint32_t)profileId; + + p_SchemeRegs->kgse_ppc = ppcTmp; + } + } + else + ppcTmp = KG_SCH_PP_NO_GEN; + } + break; + case(e_FM_PCD_DONE): + if(p_Scheme->kgNextEngineParams.doneAction == e_FM_PCD_DROP_FRAME) + tmpReg |= (NIA_ENG_BMI | NIA_BMI_AC_DISCARD); + else + tmpReg |= (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME); + break; + default: + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("Next engine not supported")); + } + p_SchemeRegs->kgse_mode = tmpReg; + + p_SchemeRegs->kgse_mv = p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].matchVector; + + if(p_Scheme->useHash) + { + p_KeyAndHash = &p_Scheme->keyExtractAndHashParams; + + if (p_KeyAndHash->numOfUsedExtracts >= FM_PCD_KG_MAX_NUM_OF_EXTRACTS_PER_KEY) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("numOfUsedExtracts out of range")); + + /* configure kgse_dv0 */ + p_SchemeRegs->kgse_dv0 = p_KeyAndHash->privateDflt0; + + /* configure kgse_dv1 */ + p_SchemeRegs->kgse_dv1 = p_KeyAndHash->privateDflt1; + + if(!p_Scheme->bypassFqidGeneration) + { + if(!p_KeyAndHash->hashDistributionNumOfFqids || !POWER_OF_2(p_KeyAndHash->hashDistributionNumOfFqids)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("hashDistributionNumOfFqids must not be 0 and must be a power of 2")); + if((p_KeyAndHash->hashDistributionNumOfFqids-1) & p_Scheme->baseFqid) + DBG(WARNING, ("baseFqid unaligned. Distribution may result in less than hashDistributionNumOfFqids queues.")); + } + + /* configure kgse_ekdv */ + tmpReg = 0; + for( i=0 ;inumOfUsedDflts ; i++) + { + switch(p_KeyAndHash->dflts[i].type) + { + case(e_FM_PCD_KG_MAC_ADDR): + tmpReg |= (p_KeyAndHash->dflts[i].dfltSelect << KG_SCH_DEF_MAC_ADDR_SHIFT); + break; + case(e_FM_PCD_KG_TCI): + tmpReg |= (p_KeyAndHash->dflts[i].dfltSelect << KG_SCH_DEF_TCI_SHIFT); + break; + case(e_FM_PCD_KG_ENET_TYPE): + tmpReg |= (p_KeyAndHash->dflts[i].dfltSelect << KG_SCH_DEF_ENET_TYPE_SHIFT); + break; + case(e_FM_PCD_KG_PPP_SESSION_ID): + tmpReg |= (p_KeyAndHash->dflts[i].dfltSelect << KG_SCH_DEF_PPP_SESSION_ID_SHIFT); + break; + case(e_FM_PCD_KG_PPP_PROTOCOL_ID): + tmpReg |= (p_KeyAndHash->dflts[i].dfltSelect << KG_SCH_DEF_PPP_PROTOCOL_ID_SHIFT); + break; + case(e_FM_PCD_KG_MPLS_LABEL): + tmpReg |= (p_KeyAndHash->dflts[i].dfltSelect << KG_SCH_DEF_MPLS_LABEL_SHIFT); + break; + case(e_FM_PCD_KG_IP_ADDR): + tmpReg |= (p_KeyAndHash->dflts[i].dfltSelect << KG_SCH_DEF_IP_ADDR_SHIFT); + break; + case(e_FM_PCD_KG_PROTOCOL_TYPE): + tmpReg |= (p_KeyAndHash->dflts[i].dfltSelect << KG_SCH_DEF_PROTOCOL_TYPE_SHIFT); + break; + case(e_FM_PCD_KG_IP_TOS_TC): + tmpReg |= (p_KeyAndHash->dflts[i].dfltSelect << KG_SCH_DEF_IP_TOS_TC_SHIFT); + break; + case(e_FM_PCD_KG_IPV6_FLOW_LABEL): + tmpReg |= (p_KeyAndHash->dflts[i].dfltSelect << KG_SCH_DEF_L4_PORT_SHIFT); + break; + case(e_FM_PCD_KG_IPSEC_SPI): + tmpReg |= (p_KeyAndHash->dflts[i].dfltSelect << KG_SCH_DEF_IPSEC_SPI_SHIFT); + break; + case(e_FM_PCD_KG_L4_PORT): + tmpReg |= (p_KeyAndHash->dflts[i].dfltSelect << KG_SCH_DEF_L4_PORT_SHIFT); + break; + case(e_FM_PCD_KG_TCP_FLAG): + tmpReg |= (p_KeyAndHash->dflts[i].dfltSelect << KG_SCH_DEF_TCP_FLAG_SHIFT); + break; + case(e_FM_PCD_KG_GENERIC_FROM_DATA): + swDefaults[numOfSwDefaults].type = e_FM_PCD_KG_GENERIC_FROM_DATA; + swDefaults[numOfSwDefaults].dfltSelect = p_KeyAndHash->dflts[i].dfltSelect; + numOfSwDefaults ++; + break; + case(e_FM_PCD_KG_GENERIC_FROM_DATA_NO_V): + swDefaults[numOfSwDefaults].type = e_FM_PCD_KG_GENERIC_FROM_DATA_NO_V; + swDefaults[numOfSwDefaults].dfltSelect = p_KeyAndHash->dflts[i].dfltSelect; + numOfSwDefaults ++; + break; + case(e_FM_PCD_KG_GENERIC_NOT_FROM_DATA): + swDefaults[numOfSwDefaults].type = e_FM_PCD_KG_GENERIC_NOT_FROM_DATA; + swDefaults[numOfSwDefaults].dfltSelect = p_KeyAndHash->dflts[i].dfltSelect; + numOfSwDefaults ++; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + } + } + p_SchemeRegs->kgse_ekdv = tmpReg; + + p_LocalExtractsArray = (t_FmPcdKgSchemesExtracts *)XX_Malloc(sizeof(t_FmPcdKgSchemesExtracts)); + if(!p_LocalExtractsArray) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("No memory")); + + /* configure kgse_ekfc and kgse_gec */ + knownTmp = 0; + for( i=0 ;inumOfUsedExtracts ; i++) + { + p_Extract = &p_KeyAndHash->extractArray[i]; + switch(p_Extract->type) + { + case(e_FM_PCD_KG_EXTRACT_PORT_PRIVATE_INFO): + knownTmp |= KG_SCH_KN_PORT_ID; + /* save in driver structure */ + p_LocalExtractsArray->extractsArray[i].id = GetKnownFieldId(KG_SCH_KN_PORT_ID); + p_LocalExtractsArray->extractsArray[i].known = TRUE; + break; + case(e_FM_PCD_EXTRACT_BY_HDR): + switch(p_Extract->extractByHdr.hdr) + { + case(HEADER_TYPE_UDP_ENCAP_ESP): + switch(p_Extract->extractByHdr.type) + { + case(e_FM_PCD_EXTRACT_FROM_HDR): + /* case where extraction from ESP only */ + if (p_Extract->extractByHdr.extractByHdrType.fromHdr.offset >= UDP_HEADER_SIZE) + { + p_Extract->extractByHdr.hdr = FmPcdGetAliasHdr(p_FmPcd, p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].netEnvId, HEADER_TYPE_UDP_ENCAP_ESP); + p_Extract->extractByHdr.extractByHdrType.fromHdr.offset -= UDP_HEADER_SIZE; + p_Extract->extractByHdr.ignoreProtocolValidation = TRUE; + } + else + { + p_Extract->extractByHdr.hdr = HEADER_TYPE_UDP; + p_Extract->extractByHdr.ignoreProtocolValidation = FALSE; + } + break; + case(e_FM_PCD_EXTRACT_FROM_FIELD): + switch(p_Extract->extractByHdr.extractByHdrType.fromField.field.udpEncapEsp) + { + case(NET_HEADER_FIELD_UDP_ENCAP_ESP_PORT_SRC): + case(NET_HEADER_FIELD_UDP_ENCAP_ESP_PORT_DST): + case(NET_HEADER_FIELD_UDP_ENCAP_ESP_LEN): + case(NET_HEADER_FIELD_UDP_ENCAP_ESP_CKSUM): + p_Extract->extractByHdr.hdr = HEADER_TYPE_UDP; + break; + case(NET_HEADER_FIELD_UDP_ENCAP_ESP_SPI): + p_Extract->extractByHdr.type = e_FM_PCD_EXTRACT_FROM_HDR; + p_Extract->extractByHdr.hdr = FmPcdGetAliasHdr(p_FmPcd, p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].netEnvId, HEADER_TYPE_UDP_ENCAP_ESP); + p_Extract->extractByHdr.extractByHdrType.fromField.size = p_Extract->extractByHdr.extractByHdrType.fromField.size; + /*p_Extract->extractByHdr.extractByHdrType.fromField.offset += ESP_SPI_OFFSET;*/ + p_Extract->extractByHdr.ignoreProtocolValidation = TRUE; + break; + case(NET_HEADER_FIELD_UDP_ENCAP_ESP_SEQUENCE_NUM): + p_Extract->extractByHdr.type = e_FM_PCD_EXTRACT_FROM_HDR; + p_Extract->extractByHdr.hdr = FmPcdGetAliasHdr(p_FmPcd, p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].netEnvId, HEADER_TYPE_UDP_ENCAP_ESP); + p_Extract->extractByHdr.extractByHdrType.fromField.size = p_Extract->extractByHdr.extractByHdrType.fromField.size; + p_Extract->extractByHdr.extractByHdrType.fromField.offset += ESP_SEQ_NUM_OFFSET; + p_Extract->extractByHdr.ignoreProtocolValidation = TRUE; + break; + } + break; + case(e_FM_PCD_EXTRACT_FULL_FIELD): + switch(p_Extract->extractByHdr.extractByHdrType.fullField.udpEncapEsp) + { + case(NET_HEADER_FIELD_UDP_ENCAP_ESP_PORT_SRC): + case(NET_HEADER_FIELD_UDP_ENCAP_ESP_PORT_DST): + case(NET_HEADER_FIELD_UDP_ENCAP_ESP_LEN): + case(NET_HEADER_FIELD_UDP_ENCAP_ESP_CKSUM): + p_Extract->extractByHdr.hdr = HEADER_TYPE_UDP; + break; + case(NET_HEADER_FIELD_UDP_ENCAP_ESP_SPI): + p_Extract->extractByHdr.type = e_FM_PCD_EXTRACT_FROM_HDR; + p_Extract->extractByHdr.hdr = FmPcdGetAliasHdr(p_FmPcd, p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].netEnvId, HEADER_TYPE_UDP_ENCAP_ESP); + p_Extract->extractByHdr.extractByHdrType.fromHdr.size = ESP_SPI_SIZE; + p_Extract->extractByHdr.extractByHdrType.fromHdr.offset = ESP_SPI_OFFSET; + p_Extract->extractByHdr.ignoreProtocolValidation = TRUE; + break; + case(NET_HEADER_FIELD_UDP_ENCAP_ESP_SEQUENCE_NUM): + p_Extract->extractByHdr.type = e_FM_PCD_EXTRACT_FROM_HDR; + p_Extract->extractByHdr.hdr = FmPcdGetAliasHdr(p_FmPcd, p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].netEnvId, HEADER_TYPE_UDP_ENCAP_ESP); + p_Extract->extractByHdr.extractByHdrType.fromHdr.size = ESP_SEQ_NUM_SIZE; + p_Extract->extractByHdr.extractByHdrType.fromHdr.offset = ESP_SEQ_NUM_OFFSET; + p_Extract->extractByHdr.ignoreProtocolValidation = TRUE; + break; + } + break; + } + break; + default: + break; + } + switch(p_Extract->extractByHdr.type) + { + case(e_FM_PCD_EXTRACT_FROM_HDR): + generic = TRUE; + /* get the header code for the generic extract */ + code = GetGenHdrCode(p_Extract->extractByHdr.hdr, p_Extract->extractByHdr.hdrIndex, p_Extract->extractByHdr.ignoreProtocolValidation); + /* set generic register fields */ + offset = p_Extract->extractByHdr.extractByHdrType.fromHdr.offset; + size = p_Extract->extractByHdr.extractByHdrType.fromHdr.size; + break; + case(e_FM_PCD_EXTRACT_FROM_FIELD): + generic = TRUE; + /* get the field code for the generic extract */ + code = GetGenFieldCode(p_Extract->extractByHdr.hdr, + p_Extract->extractByHdr.extractByHdrType.fromField.field, p_Extract->extractByHdr.ignoreProtocolValidation,p_Extract->extractByHdr.hdrIndex); + offset = p_Extract->extractByHdr.extractByHdrType.fromField.offset; + size = p_Extract->extractByHdr.extractByHdrType.fromField.size; + break; + case(e_FM_PCD_EXTRACT_FULL_FIELD): + if(!p_Extract->extractByHdr.ignoreProtocolValidation) + { + /* if we have a known field for it - use it, otherwise use generic */ + bitMask = GetKnownProtMask(p_Extract->extractByHdr.hdr, p_Extract->extractByHdr.hdrIndex, + p_Extract->extractByHdr.extractByHdrType.fullField); + if(bitMask) + { + knownTmp |= bitMask; + /* save in driver structure */ + p_LocalExtractsArray->extractsArray[i].id = GetKnownFieldId(bitMask); + p_LocalExtractsArray->extractsArray[i].known = TRUE; + } + else + generic = TRUE; + + } + else + generic = TRUE; + if(generic) + { + /* tmp - till we cover more headers under generic */ + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("Full header selection not supported")); + } + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + } + break; + case(e_FM_PCD_EXTRACT_NON_HDR): + /* use generic */ + generic = TRUE; + offset = 0; + /* get the field code for the generic extract */ + code = GetGenCode(p_Extract->extractNonHdr.src, &offset); + offset += p_Extract->extractNonHdr.offset; + size = p_Extract->extractNonHdr.size; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + } + + if(generic) + { + /* set generic register fields */ + if(currGenId >= FM_PCD_KG_NUM_OF_GENERIC_REGS) + RETURN_ERROR(MAJOR, E_FULL, ("Generic registers are fully used")); + if(!code) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, NO_MSG); + + genTmp = KG_SCH_GEN_VALID; + genTmp |= (uint32_t)(code << KG_SCH_GEN_HT_SHIFT); + genTmp |= offset; + if((size > MAX_KG_SCH_SIZE) || (size < 1)) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("Illegal extraction (size out of range)")); + genTmp |= (uint32_t)((size - 1) << KG_SCH_GEN_SIZE_SHIFT); + swDefault = GetGenericSwDefault(swDefaults, numOfSwDefaults, code); + if(swDefault == e_FM_PCD_KG_DFLT_ILLEGAL) + DBG(WARNING, ("No sw default configured")); + + genTmp |= swDefault << KG_SCH_GEN_DEF_SHIFT; + genTmp |= KG_SCH_GEN_MASK; + p_SchemeRegs->kgse_gec[currGenId] = genTmp; + /* save in driver structure */ + p_LocalExtractsArray->extractsArray[i].id = currGenId++; + p_LocalExtractsArray->extractsArray[i].known = FALSE; + generic = FALSE; + } + } + p_SchemeRegs->kgse_ekfc = knownTmp; + + selectTmp = 0; + maskTmp = 0xFFFFFFFF; + /* configure kgse_bmch, kgse_bmcl and kgse_fqb */ + + if(p_KeyAndHash->numOfUsedMasks >= FM_PCD_KG_NUM_OF_EXTRACT_MASKS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Only %d masks supported", FM_PCD_KG_NUM_OF_EXTRACT_MASKS)); + for( i=0 ;inumOfUsedMasks ; i++) + { + /* Get the relative id of the extract (for known 0-0x1f, for generic 0-7) */ + id = p_LocalExtractsArray->extractsArray[p_KeyAndHash->masks[i].extractArrayIndex].id; + /* Get the shift of the select field (depending on i) */ + GET_MASK_SEL_SHIFT(shift,i); + if (p_LocalExtractsArray->extractsArray[p_KeyAndHash->masks[i].extractArrayIndex].known) + selectTmp |= id << shift; + else + selectTmp |= (id + MASK_FOR_GENERIC_BASE_ID) << shift; + + /* Get the shift of the offset field (depending on i) - may + be in kgse_bmch or in kgse_fqb (depending on i) */ + GET_MASK_OFFSET_SHIFT(shift,i); + if (i<=1) + selectTmp |= p_KeyAndHash->masks[i].offset << shift; + else + fqbTmp |= p_KeyAndHash->masks[i].offset << shift; + + /* Get the shift of the mask field (depending on i) */ + GET_MASK_SHIFT(shift,i); + /* pass all bits */ + maskTmp |= KG_SCH_BITMASK_MASK << shift; + /* clear bits that need masking */ + maskTmp &= ~(0xFF << shift) ; + /* set mask bits */ + maskTmp |= (p_KeyAndHash->masks[i].mask << shift) ; + } + p_SchemeRegs->kgse_bmch = selectTmp; + p_SchemeRegs->kgse_bmcl = maskTmp; + /* kgse_fqb will be written t the end of the routine */ + + /* configure kgse_hc */ + if(p_KeyAndHash->hashShift > MAX_HASH_SHIFT) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("hashShift must not be larger than %d", MAX_HASH_SHIFT)); + if(p_KeyAndHash->hashDistributionFqidsShift > MAX_DIST_FQID_SHIFT) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("hashDistributionFqidsShift must not be larger than %d", MAX_DIST_FQID_SHIFT)); + + tmpReg = 0; + + tmpReg |= ((p_KeyAndHash->hashDistributionNumOfFqids - 1) << p_KeyAndHash->hashDistributionFqidsShift); + tmpReg |= p_KeyAndHash->hashShift << KG_SCH_HASH_CONFIG_SHIFT_SHIFT; + + if(p_KeyAndHash->symmetricHash) + { + if((!!(p_SchemeRegs->kgse_ekfc & KG_SCH_KN_MACSRC) != !!(p_SchemeRegs->kgse_ekfc & KG_SCH_KN_MACDST)) || + (!!(p_SchemeRegs->kgse_ekfc & KG_SCH_KN_IPSRC1) != !!(p_SchemeRegs->kgse_ekfc & KG_SCH_KN_IPDST1)) || + (!!(p_SchemeRegs->kgse_ekfc & KG_SCH_KN_IPSRC2) != !!(p_SchemeRegs->kgse_ekfc & KG_SCH_KN_IPDST2)) || + (!!(p_SchemeRegs->kgse_ekfc & KG_SCH_KN_L4PSRC) != !!(p_SchemeRegs->kgse_ekfc & KG_SCH_KN_L4PDST))) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("symmetricHash set but src/dest extractions missing")); + tmpReg |= KG_SCH_HASH_CONFIG_SYM; + } + p_SchemeRegs->kgse_hc = tmpReg; + + /* build the return array describing the order of the extractions */ + + /* the last currGenId places of the array + are for generic extracts that are always last. + We now sort for the calculation of the order of the known + extractions we sort the known extracts between orderedArray[0] and + orderedArray[p_KeyAndHash->numOfUsedExtracts - currGenId - 1]. + for the calculation of the order of the generic extractions we use: + num_of_generic - currGenId + num_of_known - p_KeyAndHash->numOfUsedExtracts - currGenId + first_generic_index = num_of_known */ + curr = 0; + for (i=0;inumOfUsedExtracts ; i++) + { + if(p_LocalExtractsArray->extractsArray[i].known) + { + ASSERT_COND(curr<(p_KeyAndHash->numOfUsedExtracts - currGenId)); + j = curr; + /* id is the extract id (port id = 0, mac src = 1 etc.). the value in the array is the original + index in the user's extractions array */ + /* we compare the id of the current extract with the id of the extract in the orderedArray[j-1] + location */ + while((j > 0) && (p_LocalExtractsArray->extractsArray[i].id < + p_LocalExtractsArray->extractsArray[p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].orderedArray[j-1]].id)) + { + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].orderedArray[j] = + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].orderedArray[j-1]; + j--; + } + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].orderedArray[j] = (uint8_t)i; + curr++; + } + else + { + /* index is first_generic_index + generic index (id) */ + idx = (uint8_t)(p_KeyAndHash->numOfUsedExtracts - currGenId + p_LocalExtractsArray->extractsArray[i].id); + ASSERT_COND(idx < FM_PCD_KG_MAX_NUM_OF_EXTRACTS_PER_KEY); + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].orderedArray[idx]= (uint8_t)i; + } + } + XX_Free(p_LocalExtractsArray); + p_LocalExtractsArray = NULL; + + } + else + { + /* clear all unused registers: */ + p_SchemeRegs->kgse_ekfc = 0; + p_SchemeRegs->kgse_ekdv = 0; + p_SchemeRegs->kgse_bmch = 0; + p_SchemeRegs->kgse_bmcl = 0; + p_SchemeRegs->kgse_hc = 0; + p_SchemeRegs->kgse_dv0 = 0; + p_SchemeRegs->kgse_dv1 = 0; + } + + if(p_Scheme->bypassFqidGeneration) + p_SchemeRegs->kgse_hc |= KG_SCH_HASH_CONFIG_NO_FQID; + + /* configure kgse_spc */ + if( p_Scheme->schemeCounter.update) + p_SchemeRegs->kgse_spc = p_Scheme->schemeCounter.value; + + + /* check that are enough generic registers */ + if(p_Scheme->numOfUsedExtractedOrs + currGenId > FM_PCD_KG_NUM_OF_GENERIC_REGS) + RETURN_ERROR(MAJOR, E_FULL, ("Generic registers are fully used")); + + /* extracted OR mask on Qid */ + for( i=0 ;inumOfUsedExtractedOrs ; i++) + { + + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].extractedOrs = TRUE; + /* configure kgse_gec[i] */ + p_ExtractOr = &p_Scheme->extractedOrs[i]; + switch(p_ExtractOr->type) + { + case(e_FM_PCD_KG_EXTRACT_PORT_PRIVATE_INFO): + code = KG_SCH_GEN_PARSE_RESULT_N_FQID; + offset = 0; + break; + case(e_FM_PCD_EXTRACT_BY_HDR): + /* get the header code for the generic extract */ + code = GetGenHdrCode(p_ExtractOr->extractByHdr.hdr, p_ExtractOr->extractByHdr.hdrIndex, p_ExtractOr->extractByHdr.ignoreProtocolValidation); + /* set generic register fields */ + offset = p_ExtractOr->extractionOffset; + break; + case(e_FM_PCD_EXTRACT_NON_HDR): + /* get the field code for the generic extract */ + offset = 0; + code = GetGenCode(p_ExtractOr->src, &offset); + offset += p_ExtractOr->extractionOffset; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + } + + /* set generic register fields */ + if(!code) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, NO_MSG); + genTmp = KG_SCH_GEN_EXTRACT_TYPE | KG_SCH_GEN_VALID; + genTmp |= (uint32_t)(code << KG_SCH_GEN_HT_SHIFT); + genTmp |= offset; + if(!!p_ExtractOr->bitOffsetInFqid == !!p_ExtractOr->bitOffsetInPlcrProfile) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, (" extracted byte must effect either FQID or Policer profile")); + + /************************************************************************************ + bitOffsetInFqid and bitOffsetInPolicerProfile are translated to rotate parameter + in the following way: + + Driver API and implementation: + ============================== + FQID: extracted OR byte may be shifted right 1-31 bits to effect parts of the FQID. + if shifted less than 8 bits, or more than 24 bits a mask is set on the bits that + are not overlapping FQID. + ------------------------ + | FQID (24) | + ------------------------ + -------- + | | extracted OR byte + -------- + + Policer Profile: extracted OR byte may be shifted right 1-15 bits to effect parts of the + PP id. Unless shifted exactly 8 bits to overlap the PP id, a mask is set on the bits that + are not overlapping PP id. + + -------- + | PP (8) | + -------- + -------- + | | extracted OR byte + -------- + + HW implementation + ================= + FQID and PP construct a 32 bit word in the way describe below. Extracted byte is located + as the highest byte of that word and may be rotated to effect any part os the FQID or + the PP. + ------------------------ -------- + | FQID (24) || PP (8) | + ------------------------ -------- + -------- + | | extracted OR byte + -------- + + ************************************************************************************/ + + if(p_ExtractOr->bitOffsetInFqid) + { + if(p_ExtractOr->bitOffsetInFqid > MAX_KG_SCH_FQID_BIT_OFFSET ) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Illegal extraction (bitOffsetInFqid out of range)")); + if(p_ExtractOr->bitOffsetInFqid<8) + genTmp |= (uint32_t)((p_ExtractOr->bitOffsetInFqid+24) << KG_SCH_GEN_SIZE_SHIFT); + else + genTmp |= (uint32_t)((p_ExtractOr->bitOffsetInFqid-8) << KG_SCH_GEN_SIZE_SHIFT); + p_ExtractOr->mask &= GetExtractedOrMask(p_ExtractOr->bitOffsetInFqid, TRUE); + } + else /* effect policer profile */ + { + if(p_ExtractOr->bitOffsetInPlcrProfile > MAX_KG_SCH_PP_BIT_OFFSET ) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Illegal extraction (bitOffsetInPlcrProfile out of range)")); + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].bitOffsetInPlcrProfile = p_ExtractOr->bitOffsetInPlcrProfile; + genTmp |= (uint32_t)((p_ExtractOr->bitOffsetInPlcrProfile+16) << KG_SCH_GEN_SIZE_SHIFT); + p_ExtractOr->mask &= GetExtractedOrMask(p_ExtractOr->bitOffsetInPlcrProfile, FALSE); + } + + genTmp |= (uint32_t)(p_ExtractOr->extractionOffset << KG_SCH_GEN_DEF_SHIFT); + /* clear bits that need masking */ + genTmp &= ~KG_SCH_GEN_MASK ; + /* set mask bits */ + genTmp |= (uint32_t)(p_ExtractOr->mask << KG_SCH_GEN_MASK_SHIFT); + p_SchemeRegs->kgse_gec[currGenId++] = genTmp; + + } + /* clear all unused GEC registers */ + for( i=currGenId ;ikgse_gec[i] = 0; + + /* add base Qid for this scheme */ + /* add configuration for kgse_fqb */ + if(p_Scheme->baseFqid & ~0x00FFFFFF) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("baseFqid must be between 1 and 2^24-1")); + + fqbTmp |= p_Scheme->baseFqid; + p_SchemeRegs->kgse_fqb = fqbTmp; + + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].nextEngine = p_Scheme->nextEngine; + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].doneAction = p_Scheme->kgNextEngineParams.doneAction; + return E_OK; +} + +void FmPcdKgValidateSchemeSw(t_Handle h_FmPcd, uint8_t schemeId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + ASSERT_COND(!p_FmPcd->p_FmPcdKg->schemes[schemeId].valid); + + if(p_FmPcd->p_FmPcdKg->schemes[schemeId].netEnvId != ILLEGAL_NETENV) + FmPcdIncNetEnvOwners(p_FmPcd, p_FmPcd->p_FmPcdKg->schemes[schemeId].netEnvId); + p_FmPcd->p_FmPcdKg->schemes[schemeId].valid = TRUE; +} + +void FmPcdKgInvalidateSchemeSw(t_Handle h_FmPcd, uint8_t schemeId) +{ + + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + if(p_FmPcd->p_FmPcdKg->schemes[schemeId].netEnvId != ILLEGAL_NETENV) + FmPcdDecNetEnvOwners(h_FmPcd, p_FmPcd->p_FmPcdKg->schemes[schemeId].netEnvId); + p_FmPcd->p_FmPcdKg->schemes[schemeId].valid = FALSE; +} + +uint32_t FmPcdKgGetRequiredAction(t_Handle h_FmPcd, uint8_t schemeId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + ASSERT_COND(p_FmPcd->p_FmPcdKg->schemes[schemeId].valid); + + return p_FmPcd->p_FmPcdKg->schemes[schemeId].requiredAction; +} + +uint32_t FmPcdKgGetPointedOwners(t_Handle h_FmPcd, uint8_t schemeId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + ASSERT_COND(p_FmPcd->p_FmPcdKg->schemes[schemeId].valid); + + return p_FmPcd->p_FmPcdKg->schemes[schemeId].pointedOwners; +} + +bool FmPcdKgIsDirectPlcr(t_Handle h_FmPcd, uint8_t schemeId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + ASSERT_COND(p_FmPcd->p_FmPcdKg->schemes[schemeId].valid); + + return p_FmPcd->p_FmPcdKg->schemes[schemeId].directPlcr; +} + + +uint16_t FmPcdKgGetRelativeProfileId(t_Handle h_FmPcd, uint8_t schemeId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + ASSERT_COND(p_FmPcd->p_FmPcdKg->schemes[schemeId].valid); + + return p_FmPcd->p_FmPcdKg->schemes[schemeId].relativeProfileId; +} + + +bool FmPcdKgIsDistrOnPlcrProfile(t_Handle h_FmPcd, uint8_t schemeId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + ASSERT_COND(p_FmPcd->p_FmPcdKg->schemes[schemeId].valid); + + if((p_FmPcd->p_FmPcdKg->schemes[schemeId].extractedOrs && + p_FmPcd->p_FmPcdKg->schemes[schemeId].bitOffsetInPlcrProfile) || + p_FmPcd->p_FmPcdKg->schemes[schemeId].nextRelativePlcrProfile) + return TRUE; + else + return FALSE; + +} +void FmPcdKgUpatePointedOwner(t_Handle h_FmPcd, uint8_t schemeId, bool add) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + ASSERT_COND(p_FmPcd->p_FmPcdKg->schemes[schemeId].valid); + + if(add) + p_FmPcd->p_FmPcdKg->schemes[schemeId].pointedOwners++; + else + p_FmPcd->p_FmPcdKg->schemes[schemeId].pointedOwners--; +} + +e_FmPcdEngine FmPcdKgGetNextEngine(t_Handle h_FmPcd, uint8_t schemeId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + ASSERT_COND(p_FmPcd->p_FmPcdKg->schemes[schemeId].valid); + + return p_FmPcd->p_FmPcdKg->schemes[schemeId].nextEngine; +} + +e_FmPcdDoneAction FmPcdKgGetDoneAction(t_Handle h_FmPcd, uint8_t schemeId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + ASSERT_COND(p_FmPcd->p_FmPcdKg->schemes[schemeId].valid); + + return p_FmPcd->p_FmPcdKg->schemes[schemeId].doneAction; +} + +void FmPcdKgUpdateRequiredAction(t_Handle h_FmPcd, uint8_t schemeId, uint32_t requiredAction) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + ASSERT_COND(p_FmPcd->p_FmPcdKg->schemes[schemeId].valid); + + p_FmPcd->p_FmPcdKg->schemes[schemeId].requiredAction = requiredAction; +} + +t_Error FmPcdKgCheckInvalidateSchemeSw(t_Handle h_FmPcd, uint8_t schemeId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + if(schemeId >= FM_PCD_KG_NUM_OF_SCHEMES) + REPORT_ERROR(MAJOR, E_NOT_IN_RANGE, NO_MSG); + + /* check that no port is bound to this scheme */ + if(p_FmPcd->p_FmPcdKg->schemes[schemeId].owners) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Trying to delete a scheme that has ports bound to")); + if(!p_FmPcd->p_FmPcdKg->schemes[schemeId].valid) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Trying to delete an invalid scheme")); + return E_OK; +} + +uint32_t FmPcdKgBuildCppReg(t_Handle h_FmPcd, uint8_t clsPlanGrpId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t tmpKgpeCpp; + + tmpKgpeCpp = (uint32_t)(p_FmPcd->p_FmPcdKg->clsPlanGrps[clsPlanGrpId].baseEntry / 8); + tmpKgpeCpp |= (uint32_t)(((p_FmPcd->p_FmPcdKg->clsPlanGrps[clsPlanGrpId].sizeOfGrp / 8) - 1) << FM_PCD_KG_PE_CPP_MASK_SHIFT); + return tmpKgpeCpp; +} + +bool FmPcdKgHwSchemeIsValid(uint32_t schemeModeReg) +{ + + if(schemeModeReg & KG_SCH_MODE_EN) + return TRUE; + else + return FALSE; +} + +uint32_t FmPcdKgBuildWriteSchemeActionReg(uint8_t schemeId, bool updateCounter) +{ + return (uint32_t)(((uint32_t)schemeId << FM_PCD_KG_KGAR_NUM_SHIFT)| + FM_PCD_KG_KGAR_GO | + FM_PCD_KG_KGAR_WRITE | + FM_PCD_KG_KGAR_SEL_SCHEME_ENTRY | + DUMMY_PORT_ID | + (updateCounter ? FM_PCD_KG_KGAR_SCHEME_WSEL_UPDATE_CNT:0)); + +} + +uint32_t FmPcdKgBuildReadSchemeActionReg(uint8_t schemeId) +{ + return (uint32_t)(((uint32_t)schemeId << FM_PCD_KG_KGAR_NUM_SHIFT)| + FM_PCD_KG_KGAR_GO | + FM_PCD_KG_KGAR_READ | + FM_PCD_KG_KGAR_SEL_SCHEME_ENTRY | + DUMMY_PORT_ID | + FM_PCD_KG_KGAR_SCHEME_WSEL_UPDATE_CNT); + +} + + +uint32_t FmPcdKgBuildWriteClsPlanBlockActionReg(uint8_t grpId) +{ + return (uint32_t)(FM_PCD_KG_KGAR_GO | + FM_PCD_KG_KGAR_WRITE | + FM_PCD_KG_KGAR_SEL_CLS_PLAN_ENTRY | + DUMMY_PORT_ID | + ((uint32_t)grpId << FM_PCD_KG_KGAR_NUM_SHIFT) | + FM_PCD_KG_KGAR_WSEL_MASK); + + + /* if we ever want to write 1 by 1, use: + sel = (uint8_t)(0x01 << (7- (entryId % CLS_PLAN_NUM_PER_GRP)));*/ +} + +uint32_t FmPcdKgBuildReadClsPlanBlockActionReg(uint8_t grpId) +{ + return (uint32_t)(FM_PCD_KG_KGAR_GO | + FM_PCD_KG_KGAR_READ | + FM_PCD_KG_KGAR_SEL_CLS_PLAN_ENTRY | + DUMMY_PORT_ID | + ((uint32_t)grpId << FM_PCD_KG_KGAR_NUM_SHIFT) | + FM_PCD_KG_KGAR_WSEL_MASK); + + + /* if we ever want to write 1 by 1, use: + sel = (uint8_t)(0x01 << (7- (entryId % CLS_PLAN_NUM_PER_GRP)));*/ +} + +uint32_t FmPcdKgBuildWritePortSchemeBindActionReg(uint8_t hardwarePortId) +{ + + return (uint32_t)(FM_PCD_KG_KGAR_GO | + FM_PCD_KG_KGAR_WRITE | + FM_PCD_KG_KGAR_SEL_PORT_ENTRY | + hardwarePortId | + FM_PCD_KG_KGAR_SEL_PORT_WSEL_SP); +} + +uint32_t FmPcdKgBuildReadPortSchemeBindActionReg(uint8_t hardwarePortId) +{ + + return (uint32_t)(FM_PCD_KG_KGAR_GO | + FM_PCD_KG_KGAR_READ | + FM_PCD_KG_KGAR_SEL_PORT_ENTRY | + hardwarePortId | + FM_PCD_KG_KGAR_SEL_PORT_WSEL_SP); +} +uint32_t FmPcdKgBuildWritePortClsPlanBindActionReg(uint8_t hardwarePortId) +{ + + return (uint32_t)(FM_PCD_KG_KGAR_GO | + FM_PCD_KG_KGAR_WRITE | + FM_PCD_KG_KGAR_SEL_PORT_ENTRY | + hardwarePortId | + FM_PCD_KG_KGAR_SEL_PORT_WSEL_CPP); +} + +uint8_t FmPcdKgGetClsPlanGrpBase(t_Handle h_FmPcd, uint8_t clsPlanGrp) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + return p_FmPcd->p_FmPcdKg->clsPlanGrps[clsPlanGrp].baseEntry; +} + +uint16_t FmPcdKgGetClsPlanGrpSize(t_Handle h_FmPcd, uint8_t clsPlanGrp) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + return p_FmPcd->p_FmPcdKg->clsPlanGrps[clsPlanGrp].sizeOfGrp; +} + +uint8_t FmPcdKgGetSchemeSwId(t_Handle h_FmPcd, uint8_t schemeHwId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint8_t i; + + for(i=0;ip_FmPcdKg->numOfSchemes;i++) + if(p_FmPcd->p_FmPcdKg->schemesIds[i] == schemeHwId) + return i; + ASSERT_COND(i!=p_FmPcd->p_FmPcdKg->numOfSchemes); + return FM_PCD_KG_NUM_OF_SCHEMES; +} + +uint8_t FmPcdKgGetNumOfPartitionSchemes(t_Handle h_FmPcd) +{ + return ((t_FmPcd*)h_FmPcd)->p_FmPcdKg->numOfSchemes; +} + +uint8_t FmPcdKgGetPhysicalSchemeId(t_Handle h_FmPcd, uint8_t relativeSchemeId) +{ + return ((t_FmPcd*)h_FmPcd)->p_FmPcdKg->schemesIds[relativeSchemeId]; +} + +uint8_t FmPcdKgGetRelativeSchemeId(t_Handle h_FmPcd, uint8_t schemeId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint8_t i; + + for(i = 0;ip_FmPcdKg->numOfSchemes;i++) + if(p_FmPcd->p_FmPcdKg->schemesIds[i] == schemeId) + return i; + + if(i == p_FmPcd->p_FmPcdKg->numOfSchemes) + REPORT_ERROR(MAJOR, E_NOT_IN_RANGE, ("Scheme is out of partition range")); + + return FM_PCD_KG_NUM_OF_SCHEMES; +} + +t_Error FmPcdKgCcGetSetParams(t_Handle h_FmPcd, t_Handle h_Scheme, uint32_t requiredAction) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint8_t relativeSchemeId, physicalSchemeId; + uint32_t tmpKgarReg, tmpReg32 = 0, intFlags; + t_Error err; + + SANITY_CHECK_RETURN_VALUE(h_FmPcd, E_INVALID_HANDLE, 0); + SANITY_CHECK_RETURN_VALUE(p_FmPcd->p_FmPcdKg, E_INVALID_HANDLE, 0); + SANITY_CHECK_RETURN_VALUE(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE, 0); + + if (p_FmPcd->h_Hc) + return FmHcPcdKgCcGetSetParams(p_FmPcd->h_Hc, h_Scheme, requiredAction); + + physicalSchemeId = (uint8_t)(PTR_TO_UINT(h_Scheme)-1); + + relativeSchemeId = FmPcdKgGetRelativeSchemeId(p_FmPcd, physicalSchemeId); + if(relativeSchemeId >= FM_PCD_KG_NUM_OF_SCHEMES) + RETURN_ERROR(MAJOR, E_NOT_IN_RANGE, NO_MSG); + + if (FmPcdKgSchemeTryLock(p_FmPcd, relativeSchemeId, FALSE)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Lock of the scheme FAILED")); + + if(!p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].pointedOwners || + !(p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].requiredAction & requiredAction)) + { + if(requiredAction & UPDATE_NIA_ENQ_WITHOUT_DMA) + { + switch(p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].nextEngine) + { + case(e_FM_PCD_DONE): + if(p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].doneAction == e_FM_PCD_ENQ_FRAME) + { + tmpKgarReg = FmPcdKgBuildReadSchemeActionReg(physicalSchemeId); + intFlags = FmPcdLock(p_FmPcd); + WriteKgarWait(p_FmPcd, tmpKgarReg); + if (!(GET_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs.kgse_mode) & KG_SCH_MODE_EN)) + { + RELEASE_LOCK(p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].lock); + RETURN_ERROR(MAJOR, E_ALREADY_EXISTS, ("Scheme is Invalid")); + } + tmpReg32 = GET_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs.kgse_mode); + ASSERT_COND(tmpReg32 & (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME)); + WRITE_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs.kgse_mode, tmpReg32 | NIA_BMI_AC_ENQ_FRAME_WITHOUT_DMA); + /* call indirect command for scheme write */ + tmpKgarReg = FmPcdKgBuildWriteSchemeActionReg(physicalSchemeId, FALSE); + WriteKgarWait(p_FmPcd, tmpKgarReg); + FmPcdUnlock(p_FmPcd, intFlags); + } + break; + case(e_FM_PCD_PLCR): + if(!p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].directPlcr || + (p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].extractedOrs && + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].bitOffsetInPlcrProfile) || + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].nextRelativePlcrProfile) + { + RELEASE_LOCK(p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].lock); + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("In this situation PP can not be with distribution and has to be shared")); + } + err = FmPcdPlcrCcGetSetParams(h_FmPcd, p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].relativeProfileId, requiredAction); + if(err) + { + RELEASE_LOCK(p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].lock); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_VALUE,("in this situation the next engine after scheme can be or PLCR or ENQ_FRAME")); + } + } + } + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].pointedOwners += 1; + p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].requiredAction |= requiredAction; + + RELEASE_LOCK(p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].lock); + return E_OK; +} + +t_Error FmPcdKgSchemeTryLock(t_Handle h_FmPcd, uint8_t schemeId, bool intr) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + bool ans; + + if (intr) + ans = TRY_LOCK(NULL, &p_FmPcd->p_FmPcdKg->schemes[schemeId].lock); + else + ans = TRY_LOCK(p_FmPcd->h_Spinlock, &p_FmPcd->p_FmPcdKg->schemes[schemeId].lock); + if (ans) + return E_OK; + return ERROR_CODE(E_BUSY); +} + +void FmPcdKgReleaseSchemeLock(t_Handle h_FmPcd, uint8_t schemeId) +{ + RELEASE_LOCK(((t_FmPcd*)h_FmPcd)->p_FmPcdKg->schemes[schemeId].lock); +} + +t_Handle FM_PCD_KgSetScheme(t_Handle h_FmPcd, t_FmPcdKgSchemeParams *p_Scheme) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t tmpReg; + t_FmPcdKgInterModuleSchemeRegs schemeRegs; + t_FmPcdKgInterModuleSchemeRegs *p_MemRegs; + uint8_t i; + t_Error err = E_OK; + uint32_t tmpKgarReg; + uint32_t intFlags; + uint8_t physicalSchemeId, relativeSchemeId; + + SANITY_CHECK_RETURN_VALUE(p_FmPcd, E_INVALID_HANDLE, NULL); + SANITY_CHECK_RETURN_VALUE(p_FmPcd->p_FmPcdKg, E_INVALID_HANDLE, NULL); + SANITY_CHECK_RETURN_VALUE(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE, NULL); + + if (p_FmPcd->h_Hc) + return FmHcPcdKgSetScheme(p_FmPcd->h_Hc, p_Scheme); + + /* if not called for modification, check first that this scheme is unused */ + if(!p_Scheme->modify) + { + /* check that schemeId is in range */ + if(p_Scheme->id.relativeSchemeId >= p_FmPcd->p_FmPcdKg->numOfSchemes) + { + REPORT_ERROR(MAJOR, E_NOT_IN_RANGE, ("Scheme is out of range")); + return NULL; + } + relativeSchemeId = p_Scheme->id.relativeSchemeId; + + if (FmPcdKgSchemeTryLock(p_FmPcd, relativeSchemeId, FALSE)) + return NULL; + + physicalSchemeId = p_FmPcd->p_FmPcdKg->schemesIds[relativeSchemeId]; + + /* read specified scheme into scheme registers */ + tmpKgarReg = FmPcdKgBuildReadSchemeActionReg(physicalSchemeId); + intFlags = FmPcdLock(p_FmPcd); + WriteKgarWait(p_FmPcd, tmpKgarReg); + tmpReg = GET_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs.kgse_mode); + FmPcdUnlock(p_FmPcd, intFlags); + + if (tmpReg & KG_SCH_MODE_EN) + { + REPORT_ERROR(MAJOR, E_ALREADY_EXISTS, + ("Scheme %d(phys %d) is already used", relativeSchemeId, physicalSchemeId)); + RELEASE_LOCK(p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].lock); + return NULL; + } + } + else + { + SANITY_CHECK_RETURN_VALUE(p_Scheme->id.h_Scheme, E_INVALID_HANDLE, NULL); + + intFlags = FmPcdLock(p_FmPcd); + physicalSchemeId = (uint8_t)(PTR_TO_UINT(p_Scheme->id.h_Scheme)-1); + relativeSchemeId = FmPcdKgGetRelativeSchemeId(p_FmPcd, physicalSchemeId); + + /* check that schemeId is in range */ + if(relativeSchemeId >= FM_PCD_KG_NUM_OF_SCHEMES) + { + REPORT_ERROR(MAJOR, E_NOT_IN_RANGE, NO_MSG); + FmPcdUnlock(p_FmPcd, intFlags); + return NULL; + } + + err = FmPcdKgSchemeTryLock(p_FmPcd, relativeSchemeId, TRUE); + FmPcdUnlock(p_FmPcd, intFlags); + if (err) + return NULL; + } + + err = FmPcdKgBuildScheme(h_FmPcd, p_Scheme, &schemeRegs); + if(err) + { + REPORT_ERROR(MAJOR, err, NO_MSG); + FmPcdKgInvalidateSchemeSw(h_FmPcd, relativeSchemeId); + RELEASE_LOCK(p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].lock); + return NULL; + } + + /* configure all 21 scheme registers */ + p_MemRegs = &p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs; + intFlags = FmPcdLock(p_FmPcd); + WRITE_UINT32(p_MemRegs->kgse_ppc, schemeRegs.kgse_ppc); + WRITE_UINT32(p_MemRegs->kgse_ccbs, schemeRegs.kgse_ccbs); + WRITE_UINT32(p_MemRegs->kgse_mode, schemeRegs.kgse_mode); + WRITE_UINT32(p_MemRegs->kgse_mv, schemeRegs.kgse_mv); + WRITE_UINT32(p_MemRegs->kgse_dv0, schemeRegs.kgse_dv0); + WRITE_UINT32(p_MemRegs->kgse_dv1, schemeRegs.kgse_dv1); + WRITE_UINT32(p_MemRegs->kgse_ekdv, schemeRegs.kgse_ekdv); + WRITE_UINT32(p_MemRegs->kgse_ekfc, schemeRegs.kgse_ekfc); + WRITE_UINT32(p_MemRegs->kgse_bmch, schemeRegs.kgse_bmch); + WRITE_UINT32(p_MemRegs->kgse_bmcl, schemeRegs.kgse_bmcl); + WRITE_UINT32(p_MemRegs->kgse_hc, schemeRegs.kgse_hc); + WRITE_UINT32(p_MemRegs->kgse_spc, schemeRegs.kgse_spc); + WRITE_UINT32(p_MemRegs->kgse_fqb, schemeRegs.kgse_fqb); + for(i=0 ; ikgse_gec[i], schemeRegs.kgse_gec[i]); + + /* call indirect command for scheme write */ + tmpKgarReg = FmPcdKgBuildWriteSchemeActionReg(physicalSchemeId, p_Scheme->schemeCounter.update); + + WriteKgarWait(p_FmPcd, tmpKgarReg); + FmPcdUnlock(p_FmPcd, intFlags); + + FmPcdKgValidateSchemeSw(h_FmPcd, relativeSchemeId); + + RELEASE_LOCK(p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].lock); + + return UINT_TO_PTR((uint64_t)physicalSchemeId+1); +} + +t_Error FM_PCD_KgDeleteScheme(t_Handle h_FmPcd, t_Handle h_Scheme) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint8_t physicalSchemeId; + uint32_t tmpKgarReg, intFlags; + t_Error err = E_OK; + uint8_t relativeSchemeId; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdKg, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE); + + if (p_FmPcd->h_Hc) + return FmHcPcdKgDeleteScheme(p_FmPcd->h_Hc, h_Scheme); + + physicalSchemeId = (uint8_t)(PTR_TO_UINT(h_Scheme)-1); + relativeSchemeId = FmPcdKgGetRelativeSchemeId(p_FmPcd, physicalSchemeId); + + if(relativeSchemeId >= FM_PCD_KG_NUM_OF_SCHEMES) + RETURN_ERROR(MAJOR, E_NOT_IN_RANGE, NO_MSG); + + if ((err = FmPcdKgSchemeTryLock(p_FmPcd, relativeSchemeId, FALSE)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + + /* check that no port is bound to this scheme */ + err = FmPcdKgCheckInvalidateSchemeSw(h_FmPcd, relativeSchemeId); + if(err) + RETURN_ERROR(MINOR, err, NO_MSG); + + intFlags = FmPcdLock(p_FmPcd); + /* clear mode register, including enable bit */ + WRITE_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs.kgse_mode, 0); + + /* call indirect command for scheme write */ + tmpKgarReg = FmPcdKgBuildWriteSchemeActionReg(physicalSchemeId, FALSE); + + WriteKgarWait(p_FmPcd, tmpKgarReg); + FmPcdUnlock(p_FmPcd, intFlags); + + FmPcdKgInvalidateSchemeSw(h_FmPcd, relativeSchemeId); + + RELEASE_LOCK(p_FmPcd->p_FmPcdKg->schemes[relativeSchemeId].lock); + + return E_OK; +} + +uint32_t FM_PCD_KgGetSchemeCounter(t_Handle h_FmPcd, t_Handle h_Scheme) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t tmpKgarReg, spc, intFlags; + uint8_t physicalSchemeId; + + SANITY_CHECK_RETURN_VALUE(h_FmPcd, E_INVALID_HANDLE, 0); + SANITY_CHECK_RETURN_VALUE(p_FmPcd->p_FmPcdKg, E_INVALID_HANDLE, 0); + SANITY_CHECK_RETURN_VALUE(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE, 0); + + if (p_FmPcd->h_Hc) + return FmHcPcdKgGetSchemeCounter(p_FmPcd->h_Hc, h_Scheme); + + physicalSchemeId = (uint8_t)(PTR_TO_UINT(h_Scheme)-1); + + if(FmPcdKgGetRelativeSchemeId(p_FmPcd, physicalSchemeId) == FM_PCD_KG_NUM_OF_SCHEMES) + REPORT_ERROR(MAJOR, E_NOT_IN_RANGE, NO_MSG); + + tmpKgarReg = FmPcdKgBuildReadSchemeActionReg(physicalSchemeId); + intFlags = FmPcdLock(p_FmPcd); + WriteKgarWait(p_FmPcd, tmpKgarReg); + if (!(GET_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs.kgse_mode) & KG_SCH_MODE_EN)) + REPORT_ERROR(MAJOR, E_ALREADY_EXISTS, ("Scheme is Invalid")); + spc = GET_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs.kgse_spc); + FmPcdUnlock(p_FmPcd, intFlags); + + return spc; +} + +t_Error FM_PCD_KgSetSchemeCounter(t_Handle h_FmPcd, t_Handle h_Scheme, uint32_t value) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t tmpKgarReg, intFlags; + uint8_t physicalSchemeId; + + SANITY_CHECK_RETURN_VALUE(h_FmPcd, E_INVALID_HANDLE, 0); + SANITY_CHECK_RETURN_VALUE(p_FmPcd->p_FmPcdKg, E_INVALID_HANDLE, 0); + SANITY_CHECK_RETURN_VALUE(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE, 0); + + if (p_FmPcd->h_Hc) + return FmHcPcdKgSetSchemeCounter(p_FmPcd->h_Hc, h_Scheme, value); + + physicalSchemeId = (uint8_t)(PTR_TO_UINT(h_Scheme)-1); + /* check that schemeId is in range */ + if(FmPcdKgGetRelativeSchemeId(p_FmPcd, physicalSchemeId) == FM_PCD_KG_NUM_OF_SCHEMES) + REPORT_ERROR(MAJOR, E_NOT_IN_RANGE, NO_MSG); + + /* read specified scheme into scheme registers */ + tmpKgarReg = FmPcdKgBuildReadSchemeActionReg(physicalSchemeId); + intFlags = FmPcdLock(p_FmPcd); + WriteKgarWait(p_FmPcd, tmpKgarReg); + if (!(GET_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs.kgse_mode) & KG_SCH_MODE_EN)) + { + FmPcdUnlock(p_FmPcd, intFlags); + RETURN_ERROR(MAJOR, E_ALREADY_EXISTS, ("Scheme is Invalid")); + } + + /* change counter value */ + WRITE_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->indirectAccessRegs.schemeRegs.kgse_spc, value); + + /* call indirect command for scheme write */ + tmpKgarReg = FmPcdKgBuildWriteSchemeActionReg(physicalSchemeId, TRUE); + + WriteKgarWait(p_FmPcd, tmpKgarReg); + FmPcdUnlock(p_FmPcd, intFlags); + + return E_OK; +} + --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/fm_pcd.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/fm_pcd.c @@ -0,0 +1,1693 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm_pcd.c + + @Description FM PCD ... +*//***************************************************************************/ +#include "std_ext.h" +#include "error_ext.h" +#include "string_ext.h" +#include "xx_ext.h" +#include "sprint_ext.h" +#include "debug_ext.h" +#include "net_ext.h" +#include "fm_ext.h" +#include "fm_pcd_ext.h" + +#include "fm_common.h" +#include "fm_pcd.h" +#include "fm_pcd_ipc.h" +#include "fm_hc.h" + + +static t_Error CheckFmPcdParameters(t_FmPcd *p_FmPcd) +{ + if(!p_FmPcd->h_Fm) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("h_Fm has to be initialized")); + + if(p_FmPcd->guestId == NCSW_MASTER_ID) + { + if(p_FmPcd->p_FmPcdKg && !p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Something WRONG")); + + if(p_FmPcd->p_FmPcdPlcr && !p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Something WRONG")); + + if(!p_FmPcd->f_Exception) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("f_FmPcdExceptions has to be initialized")); + + if((!p_FmPcd->f_FmPcdIndexedException) && (p_FmPcd->p_FmPcdPlcr || p_FmPcd->p_FmPcdKg)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("f_FmPcdIndexedException has to be initialized")); + + if(p_FmPcd->p_FmPcdDriverParam->prsMaxParseCycleLimit > PRS_MAX_CYCLE_LIMIT) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("prsMaxParseCycleLimit has to be less than 8191")); + } + + return E_OK; +} + +static volatile bool blockingFlag = FALSE; +static void FmPcdIpcMsgCompletionCB(t_Handle h_FmPcd, + uint8_t *p_Msg, + uint8_t *p_Reply, + uint32_t replyLength, + t_Error status) +{ + UNUSED(h_FmPcd);UNUSED(p_Msg);UNUSED(p_Reply);UNUSED(replyLength);UNUSED(status); + blockingFlag = FALSE; +} + +static t_Error FmPcdHandleIpcMsgCB(t_Handle h_FmPcd, + uint8_t *p_Msg, + uint32_t msgLength, + uint8_t *p_Reply, + uint32_t *p_ReplyLength) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_Error err = E_OK; + t_FmPcdIpcMsg *p_IpcMsg = (t_FmPcdIpcMsg*)p_Msg; + t_FmPcdIpcReply *p_IpcReply = (t_FmPcdIpcReply*)p_Reply; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR((msgLength >= sizeof(uint32_t)), E_INVALID_VALUE); + +#ifdef DISABLE_SANITY_CHECKS + UNUSED(msgLength); +#endif /* DISABLE_SANITY_CHECKS */ + + ASSERT_COND(p_Msg); + + memset(p_IpcReply, 0, (sizeof(uint8_t) * FM_PCD_MAX_REPLY_SIZE)); + *p_ReplyLength = 0; + + switch(p_IpcMsg->msgId) + { + case (FM_PCD_MASTER_IS_ALIVE): + *(uint8_t*)(p_IpcReply->replyBody) = 1; + p_IpcReply->error = E_OK; + *p_ReplyLength = sizeof(uint32_t) + sizeof(uint8_t); + break; + case (FM_PCD_MASTER_IS_ENABLED): + /* count partitions registrations */ + if(p_FmPcd->enabled) + p_FmPcd->numOfEnabledGuestPartitionsPcds++; + *(uint8_t*)(p_IpcReply->replyBody) = (uint8_t)p_FmPcd->enabled; + p_IpcReply->error = E_OK; + *p_ReplyLength = sizeof(uint32_t) + sizeof(uint8_t); + break; + case (FM_PCD_GUEST_DISABLE): + if(p_FmPcd->numOfEnabledGuestPartitionsPcds) + { + p_FmPcd->numOfEnabledGuestPartitionsPcds--; + p_IpcReply->error = E_OK; + } + else + { + REPORT_ERROR(MINOR, E_INVALID_STATE,("Trying to disable an unregistered partition")); + p_IpcReply->error = E_INVALID_STATE; + } + *p_ReplyLength = sizeof(uint32_t); + break; + case(FM_PCD_GET_COUNTER): + { + e_FmPcdCounters inCounter; + uint32_t outCounter; + + memcpy((uint8_t*)&inCounter, p_IpcMsg->msgBody, sizeof(uint32_t)); + outCounter = FM_PCD_GetCounter(h_FmPcd, inCounter); + memcpy(p_IpcReply->replyBody, (uint8_t*)&outCounter, sizeof(uint32_t)); + p_IpcReply->error = E_OK; + *p_ReplyLength = sizeof(uint32_t) + sizeof(uint32_t); + break; + } + case (FM_PCD_ALLOC_KG_SCHEMES): + { + t_FmPcdIpcKgSchemesParams ipcSchemesParams; + + memcpy((uint8_t*)&ipcSchemesParams, p_IpcMsg->msgBody, sizeof(t_FmPcdIpcKgSchemesParams)); + err = FmPcdKgAllocSchemes(h_FmPcd, + ipcSchemesParams.numOfSchemes, + ipcSchemesParams.guestId, + p_IpcReply->replyBody); + p_IpcReply->error = err; + *p_ReplyLength = sizeof(uint32_t) + ipcSchemesParams.numOfSchemes*sizeof(uint8_t); + break; + } + case (FM_PCD_FREE_KG_SCHEMES): + { + t_FmPcdIpcKgSchemesParams ipcSchemesParams; + + memcpy((uint8_t*)&ipcSchemesParams, p_IpcMsg->msgBody, sizeof(t_FmPcdIpcKgSchemesParams)); + err = FmPcdKgFreeSchemes(h_FmPcd, + ipcSchemesParams.numOfSchemes, + ipcSchemesParams.guestId, + ipcSchemesParams.schemesIds); + p_IpcReply->error = err; + *p_ReplyLength = sizeof(uint32_t); + break; + } + case (FM_PCD_ALLOC_KG_CLSPLAN): + { + t_FmPcdIpcKgClsPlanParams ipcKgClsPlanParams; + + memcpy((uint8_t*)&ipcKgClsPlanParams, p_IpcMsg->msgBody, sizeof(t_FmPcdIpcKgClsPlanParams)); + err = KgAllocClsPlanEntries(h_FmPcd, + ipcKgClsPlanParams.numOfClsPlanEntries, + ipcKgClsPlanParams.guestId, + p_IpcReply->replyBody); + p_IpcReply->error = err; + *p_ReplyLength = sizeof(uint32_t) + sizeof(uint8_t); + break; + } + case (FM_PCD_FREE_KG_CLSPLAN): + { + t_FmPcdIpcKgClsPlanParams ipcKgClsPlanParams; + + memcpy((uint8_t*)&ipcKgClsPlanParams, p_IpcMsg->msgBody, sizeof(t_FmPcdIpcKgClsPlanParams)); + KgFreeClsPlanEntries(h_FmPcd, + ipcKgClsPlanParams.numOfClsPlanEntries, + ipcKgClsPlanParams.guestId, + ipcKgClsPlanParams.clsPlanBase); + *p_ReplyLength = sizeof(uint32_t); + break; + } + case (FM_PCD_ALLOC_PROFILES): + { + t_FmPcdIpcPlcrAllocParams ipcPlcrAllocParams; + uint16_t profilesBase; + + memcpy((uint8_t*)&ipcPlcrAllocParams, p_IpcMsg->msgBody, sizeof(t_FmPcdIpcPlcrAllocParams)); + err = PlcrAllocProfiles(h_FmPcd, + ipcPlcrAllocParams.hardwarePortId, + ipcPlcrAllocParams.num, + &profilesBase); + memcpy(p_IpcReply->replyBody, (uint8_t*)&profilesBase, sizeof(uint16_t)); + p_IpcReply->error = err; + *p_ReplyLength = sizeof(uint32_t) + sizeof(uint16_t); + break; + } + case (FM_PCD_FREE_PROFILES): + { + t_FmPcdIpcPlcrAllocParams ipcPlcrAllocParams; + + memcpy((uint8_t*)&ipcPlcrAllocParams, p_IpcMsg->msgBody, sizeof(t_FmPcdIpcPlcrAllocParams)); + err = PlcrFreeProfiles(h_FmPcd, + ipcPlcrAllocParams.hardwarePortId, + ipcPlcrAllocParams.num, + ipcPlcrAllocParams.plcrProfilesBase); + p_IpcReply->error = err; + *p_ReplyLength = sizeof(uint32_t); + break; + } + case (FM_PCD_ALLOC_SHARED_PROFILES): + { + uint16_t numOfProfiles; + uint16_t profilesIds[FM_PCD_PLCR_NUM_ENTRIES]; + uint32_t profilesMask[FM_PCD_PLCR_NUM_ENTRIES/32]; + int i; + + memset(profilesMask, 0, FM_PCD_PLCR_NUM_ENTRIES/32 * sizeof(uint32_t)); + memcpy((uint8_t*)&numOfProfiles, p_IpcMsg->msgBody, sizeof(uint16_t)); + err = PlcrAllocSharedProfiles(h_FmPcd, + numOfProfiles, + profilesIds); + p_IpcReply->error = err; + + /* translate the allocated profile id's to a 32bit * 8regs mask */ + for(i = 0;i> (profilesIds[i] % 32)); + + memcpy(p_IpcReply->replyBody, (uint8_t*)&profilesMask, sizeof(profilesMask)); + *p_ReplyLength = sizeof(uint32_t) + sizeof(profilesMask); /* num-of-shared-profiles */ + break; + } + case (FM_PCD_FREE_SHARED_PROFILES): + { + t_FmPcdIpcSharedPlcrAllocParams ipcSharedPlcrAllocParams; + uint16_t profilesIds[FM_PCD_PLCR_NUM_ENTRIES]; + int i,j, index = 0; + uint32_t walking1Mask = 0x80000000; + + memset(profilesIds, 0, FM_PCD_PLCR_NUM_ENTRIES*sizeof(uint16_t)); + memcpy((uint8_t*)&ipcSharedPlcrAllocParams, p_IpcMsg->msgBody, sizeof(t_FmPcdIpcSharedPlcrAllocParams)); + for(i = 0; i>= 1; + } + walking1Mask = 0x80000000; + } + } + + PlcrFreeSharedProfiles(h_FmPcd, + ipcSharedPlcrAllocParams.num, + profilesIds); + break; + } + case(FM_PCD_GET_SW_PRS_OFFSET): + { + t_FmPcdIpcSwPrsLable ipcSwPrsLable; + uint32_t swPrsOffset; + + memcpy((uint8_t*)&ipcSwPrsLable, p_IpcMsg->msgBody, sizeof(t_FmPcdIpcSwPrsLable)); + swPrsOffset = + FmPcdGetSwPrsOffset(h_FmPcd, + (e_NetHeaderType)ipcSwPrsLable.enumHdr, + ipcSwPrsLable.indexPerHdr); + memcpy(p_IpcReply->replyBody, (uint8_t*)&swPrsOffset, sizeof(uint32_t)); + *p_ReplyLength = sizeof(uint32_t) + sizeof(uint32_t); + break; + } + case(FM_PCD_PRS_INC_PORT_STATS): + { + t_FmPcdIpcPrsIncludePort ipcPrsIncludePort; + + memcpy((uint8_t*)&ipcPrsIncludePort, p_IpcMsg->msgBody, sizeof(t_FmPcdIpcPrsIncludePort)); + PrsIncludePortInStatistics(h_FmPcd, + ipcPrsIncludePort.hardwarePortId, + ipcPrsIncludePort.include); + break; + } +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) + case(FM_PCD_DUMP_REGS): + if((err = FM_PCD_DumpRegs(h_FmPcd)) != E_OK) + REPORT_ERROR(MINOR, err, NO_MSG); + break; + case(FM_PCD_KG_DUMP_REGS): + if((err = FM_PCD_KgDumpRegs(h_FmPcd)) != E_OK) + REPORT_ERROR(MINOR, err, NO_MSG); + break; + case(FM_PCD_PLCR_DUMP_REGS): + if((err = FM_PCD_PlcrDumpRegs(h_FmPcd)) != E_OK) + REPORT_ERROR(MINOR, err, NO_MSG); + break; + case(FM_PCD_PLCR_PROFILE_DUMP_REGS): + { + t_Handle h_Profile; + memcpy((uint8_t*)&h_Profile, p_IpcMsg->msgBody, sizeof(t_Handle)); + if((err = FM_PCD_PlcrProfileDumpRegs(h_FmPcd, h_Profile)) != E_OK) + REPORT_ERROR(MINOR, err, NO_MSG); + break; + + } + case(FM_PCD_PRS_DUMP_REGS): + if((err = FM_PCD_PrsDumpRegs(h_FmPcd)) != E_OK) + REPORT_ERROR(MINOR, err, NO_MSG); + break; +#endif /* (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) */ + default: + *p_ReplyLength = 0; + RETURN_ERROR(MINOR, E_INVALID_SELECTION, ("command not found!!!")); + } + return E_OK; +} + +void FmPcdSetClsPlanGrpId(t_FmPcd *p_FmPcd, uint8_t netEnvId, uint8_t clsPlanGrpId) +{ + p_FmPcd->netEnvs[netEnvId].clsPlanGrpId = clsPlanGrpId; +} + +t_Error PcdGetClsPlanGrpParams(t_FmPcd *p_FmPcd, t_FmPcdKgInterModuleClsPlanGrpParams *p_GrpParams) +{ + uint8_t netEnvId = p_GrpParams->netEnvId; + int i, k, j; + + if(p_FmPcd->netEnvs[netEnvId].clsPlanGrpId != ILLEGAL_CLS_PLAN) + { + p_GrpParams->grpExists = TRUE; + p_GrpParams->clsPlanGrpId = p_FmPcd->netEnvs[netEnvId].clsPlanGrpId; + return E_OK; + } + + for (i=0; ((i < FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS) && + (p_FmPcd->netEnvs[netEnvId].units[i].hdrs[0].hdr != HEADER_TYPE_NONE)); i++) + { + for (k=0; ((k < FM_PCD_MAX_NUM_OF_INTERCHANGEABLE_HDRS) && + (p_FmPcd->netEnvs[netEnvId].units[i].hdrs[k].hdr != HEADER_TYPE_NONE)); k++) + { + /* if an option exists, add it to the opts list */ + if(p_FmPcd->netEnvs[netEnvId].units[i].hdrs[k].opt) + { + /* check if this option already exists, add if it doesn't */ + for(j = 0;jnumOfOptions;j++) + { + if(p_GrpParams->options[j] == p_FmPcd->netEnvs[netEnvId].units[i].hdrs[k].opt) + break; + } + p_GrpParams->optVectors[j] |= p_FmPcd->netEnvs[netEnvId].unitsVectors[i]; + if(j == p_GrpParams->numOfOptions) + { + p_GrpParams->options[p_GrpParams->numOfOptions] = p_FmPcd->netEnvs[netEnvId].units[i].hdrs[k].opt; + p_GrpParams->numOfOptions++; + } + } + } + } + + if(p_GrpParams->numOfOptions == 0) + { + if(p_FmPcd->p_FmPcdKg->emptyClsPlanGrpId != ILLEGAL_CLS_PLAN) + { + p_GrpParams->grpExists = TRUE; + p_GrpParams->clsPlanGrpId = p_FmPcd->p_FmPcdKg->emptyClsPlanGrpId; + } + } + + return E_OK; + +} + +t_Error PcdGetVectorForOpt(t_FmPcd *p_FmPcd, uint8_t netEnvId, protocolOpt_t opt, uint32_t *p_Vector) +{ + uint8_t j,k; + + *p_Vector = 0; + + for (j=0; ((j < FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS) && + (p_FmPcd->netEnvs[netEnvId].units[j].hdrs[0].hdr != HEADER_TYPE_NONE)); j++) + { + for (k=0; ((k < FM_PCD_MAX_NUM_OF_INTERCHANGEABLE_HDRS) && + (p_FmPcd->netEnvs[netEnvId].units[j].hdrs[k].hdr != HEADER_TYPE_NONE)); k++) + { + if (p_FmPcd->netEnvs[netEnvId].units[j].hdrs[k].opt == opt) + *p_Vector |= p_FmPcd->netEnvs[netEnvId].unitsVectors[j]; + } + } + + if (!*p_Vector) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Requested option was not defined for this Network Environment Characteristics module")); + else + return E_OK; +} + +t_Error PcdGetUnitsVector(t_FmPcd *p_FmPcd, t_NetEnvParams *p_Params) +{ + int i; + + p_Params->vector = 0; + for(i=0; inumOfDistinctionUnits ;i++) + { + if(p_FmPcd->netEnvs[p_Params->netEnvId].units[p_Params->unitIds[i]].hdrs[0].hdr == HEADER_TYPE_NONE) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Requested unit was not defined for this Network Environment Characteristics module")); + ASSERT_COND(p_FmPcd->netEnvs[p_Params->netEnvId].unitsVectors[p_Params->unitIds[i]]); + p_Params->vector |= p_FmPcd->netEnvs[p_Params->netEnvId].unitsVectors[p_Params->unitIds[i]]; + } + + return E_OK; +} + +bool PcdNetEnvIsUnitWithoutOpts(t_FmPcd *p_FmPcd, uint8_t netEnvId, uint32_t unitVector) +{ + int i=0, k; + /* check whether a given unit may be used by non-clsPlan users. */ + /* first, recognize the unit by its vector */ + while (p_FmPcd->netEnvs[netEnvId].units[i].hdrs[0].hdr != HEADER_TYPE_NONE) + { + if (p_FmPcd->netEnvs[netEnvId].unitsVectors[i] == unitVector) + { + for (k=0; + ((k < FM_PCD_MAX_NUM_OF_INTERCHANGEABLE_HDRS) && + (p_FmPcd->netEnvs[netEnvId].units[i].hdrs[k].hdr != HEADER_TYPE_NONE)); + k++) + /* check that no option exists */ + if((protocolOpt_t)p_FmPcd->netEnvs[netEnvId].units[i].hdrs[k].opt) + return FALSE; + break; + } + i++; + } + /* assert that a unit was found to mach the vector */ + ASSERT_COND(p_FmPcd->netEnvs[netEnvId].units[i].hdrs[0].hdr != HEADER_TYPE_NONE); + + return TRUE; +} +bool FmPcdNetEnvIsHdrExist(t_Handle h_FmPcd, uint8_t netEnvId, e_NetHeaderType hdr) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + int i, k; + + ASSERT_COND(p_FmPcd); + + for (i=0; ((i < FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS) && + (p_FmPcd->netEnvs[netEnvId].units[i].hdrs[0].hdr != HEADER_TYPE_NONE)); i++) + { + for (k=0; ((k < FM_PCD_MAX_NUM_OF_INTERCHANGEABLE_HDRS) && + (p_FmPcd->netEnvs[netEnvId].units[i].hdrs[k].hdr != HEADER_TYPE_NONE)); k++) + if (p_FmPcd->netEnvs[netEnvId].units[i].hdrs[k].hdr == hdr) + return TRUE; + } + for (i=0; ((i < FM_PCD_MAX_NUM_OF_PRIVATE_HDRS) && + (p_FmPcd->netEnvs[netEnvId].aliasHdrs[i].hdr != HEADER_TYPE_NONE)); i++) + { + if (p_FmPcd->netEnvs[netEnvId].aliasHdrs[i].hdr == hdr) + return TRUE; + } + + return FALSE; +} + +e_NetHeaderType FmPcdGetAliasHdr(t_FmPcd *p_FmPcd, uint8_t netEnvId, e_NetHeaderType hdr) +{ + int i; + + ASSERT_COND(p_FmPcd); + + for (i=0; (i < FM_PCD_MAX_NUM_OF_PRIVATE_HDRS) + && (p_FmPcd->netEnvs[netEnvId].aliasHdrs[i].hdr != HEADER_TYPE_NONE); i++) + { + if (p_FmPcd->netEnvs[netEnvId].aliasHdrs[i].hdr == hdr) + return p_FmPcd->netEnvs[netEnvId].aliasHdrs[i].aliasHdr; + } + + return HEADER_TYPE_NONE; +} + +void FmPcdPortRegister(t_Handle h_FmPcd, t_Handle h_FmPort, uint8_t hardwarePortId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint16_t swPortIndex = 0; + + HW_PORT_ID_TO_SW_PORT_INDX(swPortIndex, hardwarePortId); + + p_FmPcd->p_FmPcdPlcr->portsMapping[swPortIndex].h_FmPort = h_FmPort; +} + +uint32_t FmPcdGetLcv(t_Handle h_FmPcd, uint32_t netEnvId, uint8_t hdrNum) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + return p_FmPcd->netEnvs[netEnvId].lcvs[hdrNum]; +} + +uint32_t FmPcdGetMacsecLcv(t_Handle h_FmPcd, uint32_t netEnvId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + return p_FmPcd->netEnvs[netEnvId].macsecVector; +} + +void FmPcdIncNetEnvOwners(t_Handle h_FmPcd, uint8_t netEnvId) +{ + ((t_FmPcd*)h_FmPcd)->netEnvs[netEnvId].owners++; +} + +void FmPcdDecNetEnvOwners(t_Handle h_FmPcd, uint8_t netEnvId) +{ + ASSERT_COND(((t_FmPcd*)h_FmPcd)->netEnvs[netEnvId].owners); + ((t_FmPcd*)h_FmPcd)->netEnvs[netEnvId].owners--; +} + +uint32_t FmPcdLock(t_Handle h_FmPcd) +{ + return XX_LockIntrSpinlock(((t_FmPcd*)h_FmPcd)->h_Spinlock); +} + +void FmPcdUnlock(t_Handle h_FmPcd, uint32_t intFlags) +{ + XX_UnlockIntrSpinlock(((t_FmPcd*)h_FmPcd)->h_Spinlock, intFlags); +} + +t_Handle FmPcdGetHcHandle(t_Handle h_FmPcd) +{ + ASSERT_COND(h_FmPcd); + SANITY_CHECK_RETURN_VALUE(((t_FmPcd*)h_FmPcd)->h_Hc, E_INVALID_HANDLE, NULL); + return ((t_FmPcd*)h_FmPcd)->h_Hc; +} + +/**********************************************************************************************************/ +/* API */ +/**********************************************************************************************************/ + +t_Handle FM_PCD_Config(t_FmPcdParams *p_FmPcdParams) +{ + t_FmPcd *p_FmPcd = NULL; + t_FmPhysAddr physicalMuramBase; + uint8_t i; + + SANITY_CHECK_RETURN_VALUE(p_FmPcdParams, E_INVALID_HANDLE,NULL); + + p_FmPcd = (t_FmPcd *) XX_Malloc(sizeof(t_FmPcd)); + if (!p_FmPcd) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM Pcd")); + return NULL; + } + memset(p_FmPcd, 0, sizeof(t_FmPcd)); + + p_FmPcd->p_FmPcdDriverParam = (t_FmPcdDriverParam *) XX_Malloc(sizeof(t_FmPcdDriverParam)); + if (!p_FmPcd->p_FmPcdDriverParam) + { + XX_Free(p_FmPcd); + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM Pcd Driver Param")); + return NULL; + } + memset(p_FmPcd->p_FmPcdDriverParam, 0, sizeof(t_FmPcdDriverParam)); + + p_FmPcd->h_Fm = p_FmPcdParams->h_Fm; + p_FmPcd->guestId = FmGetGuestId(p_FmPcd->h_Fm); + p_FmPcd->h_FmMuram = FmGetMuramHandle(p_FmPcd->h_Fm); + FmGetPhysicalMuramBase(p_FmPcdParams->h_Fm, &physicalMuramBase); + p_FmPcd->physicalMuramBase = (uint64_t)((uint64_t)(&physicalMuramBase)->low | ((uint64_t)(&physicalMuramBase)->high << 32)); + + for(i = 0; inetEnvs[i].clsPlanGrpId = ILLEGAL_CLS_PLAN; + + if (p_FmPcdParams->useHostCommand) + { + t_FmHcParams hcParams; + + memset(&hcParams, 0, sizeof(hcParams)); + hcParams.h_Fm = p_FmPcd->h_Fm; + hcParams.h_FmPcd = (t_Handle)p_FmPcd; + memcpy((uint8_t*)&hcParams.params, (uint8_t*)&p_FmPcdParams->hc, sizeof(t_FmPcdHcParams)); + p_FmPcd->h_Hc = FmHcConfigAndInit(&hcParams); + if (!p_FmPcd->h_Hc) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM Pcd HC")); + FM_PCD_Free(p_FmPcd); + return NULL; + } + } + else if(p_FmPcd->guestId != NCSW_MASTER_ID) + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("No Host Command defined for a guest partition.")); + + if(p_FmPcdParams->kgSupport) + { + p_FmPcd->p_FmPcdKg = (t_FmPcdKg *)KgConfig(p_FmPcd, p_FmPcdParams); + if(!p_FmPcd->p_FmPcdKg) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM Pcd Keygen")); + FM_PCD_Free(p_FmPcd); + return NULL; + } + } + + if(p_FmPcdParams->plcrSupport) + { + p_FmPcd->p_FmPcdPlcr = (t_FmPcdPlcr *)PlcrConfig(p_FmPcd, p_FmPcdParams); + if(!p_FmPcd->p_FmPcdPlcr) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM Pcd Policer")); + FM_PCD_Free(p_FmPcd); + return NULL; + } + } + + if(p_FmPcdParams->prsSupport) + { + p_FmPcd->p_FmPcdPrs = (t_FmPcdPrs *)PrsConfig(p_FmPcd, p_FmPcdParams); + if(!p_FmPcd->p_FmPcdPrs) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM Pcd Parser")); + FM_PCD_Free(p_FmPcd); + return NULL; + } + } + + p_FmPcd->h_Spinlock = XX_InitSpinlock(); + if (!p_FmPcd->h_Spinlock) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM Pcd spinlock")); + FM_PCD_Free(p_FmPcd); + return NULL; + } + + p_FmPcd->numOfEnabledGuestPartitionsPcds = 0; + + p_FmPcd->f_Exception = p_FmPcdParams->f_Exception; + p_FmPcd->f_FmPcdIndexedException = p_FmPcdParams->f_ExceptionId; + p_FmPcd->h_App = p_FmPcdParams->h_App; + + return p_FmPcd; +} + +t_Error FM_PCD_Init(t_Handle h_FmPcd) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_Error err = E_OK; + t_FmPcdIpcMsg msg; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdDriverParam, E_INVALID_HANDLE); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + { + uint8_t isMasterAlive = 0; + t_FmPcdIpcReply reply; + uint32_t replyLength; + + memset(p_FmPcd->fmPcdIpcHandlerModuleName, 0, (sizeof(char)) * MODULE_NAME_SIZE); + if(Sprint (p_FmPcd->fmPcdIpcHandlerModuleName, "FM_PCD_%d_%d", FmGetId(p_FmPcd->h_Fm), NCSW_MASTER_ID) != 10) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Sprint failed")); + memset(p_FmPcd->fmPcdModuleName, 0, (sizeof(char)) * MODULE_NAME_SIZE); + if(Sprint (p_FmPcd->fmPcdModuleName, "FM_PCD_%d_%d",FmGetId(p_FmPcd->h_Fm), p_FmPcd->guestId) != (p_FmPcd->guestId<10 ? 10:11)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Sprint failed")); + + p_FmPcd->h_IpcSession = XX_IpcInitSession(p_FmPcd->fmPcdIpcHandlerModuleName, p_FmPcd->fmPcdModuleName); + if (p_FmPcd->h_IpcSession == NULL) + RETURN_ERROR(MAJOR, E_NOT_AVAILABLE, ("FM PCD Guest %d IPC session", p_FmPcd->guestId)); + + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_PCD_MASTER_IS_ALIVE; + msg.msgBody[0] = p_FmPcd->guestId; + blockingFlag = TRUE; + + do + { + replyLength = sizeof(uint32_t) + sizeof(isMasterAlive); + if ((err = XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId)+sizeof(p_FmPcd->guestId), + (uint8_t*)&reply, + &replyLength, + FmPcdIpcMsgCompletionCB, + h_FmPcd)) != E_OK) + REPORT_ERROR(MAJOR, err, NO_MSG); + while(blockingFlag) ; + if(replyLength != (sizeof(uint32_t) + sizeof(isMasterAlive))) + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + isMasterAlive = *(uint8_t*)(reply.replyBody); + } while (!isMasterAlive); + } + + CHECK_INIT_PARAMETERS(p_FmPcd, CheckFmPcdParameters); + + if(p_FmPcd->p_FmPcdKg) + { + err = KgInit(p_FmPcd); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + if(p_FmPcd->p_FmPcdPlcr) + { + err = PlcrInit(p_FmPcd); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + if(p_FmPcd->p_FmPcdPrs) + { + err = PrsInit(p_FmPcd); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + if(p_FmPcd->guestId == NCSW_MASTER_ID) + { + /* register to inter-core messaging mechanism */ + memset(p_FmPcd->fmPcdModuleName, 0, (sizeof(char)) * MODULE_NAME_SIZE); + if(Sprint (p_FmPcd->fmPcdModuleName, "FM_PCD_%d_%d",FmGetId(p_FmPcd->h_Fm),NCSW_MASTER_ID) != 10) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Sprint failed")); + err = XX_IpcRegisterMsgHandler(p_FmPcd->fmPcdModuleName, FmPcdHandleIpcMsgCB, p_FmPcd, FM_PCD_MAX_REPLY_SIZE); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + XX_Free(p_FmPcd->p_FmPcdDriverParam); + p_FmPcd->p_FmPcdDriverParam = NULL; + + FmRegisterPcd(p_FmPcd->h_Fm, p_FmPcd); + + return E_OK; +} + +t_Error FM_PCD_Free(t_Handle h_FmPcd) +{ + t_FmPcd *p_FmPcd =(t_FmPcd *)h_FmPcd; + t_Error err = E_OK; + + if(p_FmPcd->enabled) + FM_PCD_Disable(p_FmPcd); + + if (p_FmPcd->h_Spinlock) + XX_FreeSpinlock(p_FmPcd->h_Spinlock); + + if(p_FmPcd->p_FmPcdDriverParam) + { + XX_Free(p_FmPcd->p_FmPcdDriverParam); + p_FmPcd->p_FmPcdDriverParam = NULL; + } + if(p_FmPcd->p_FmPcdKg) + { + if((err = KgFree(p_FmPcd)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + XX_Free(p_FmPcd->p_FmPcdKg); + p_FmPcd->p_FmPcdKg = NULL; + } + + if(p_FmPcd->p_FmPcdPlcr) + { + if((err = PlcrFree(p_FmPcd)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + XX_Free(p_FmPcd->p_FmPcdPlcr); + p_FmPcd->p_FmPcdPlcr = NULL; + } + + if(p_FmPcd->p_FmPcdPrs) + { + if(p_FmPcd->guestId == NCSW_MASTER_ID) + PrsFree(p_FmPcd); + XX_Free(p_FmPcd->p_FmPcdPrs); + p_FmPcd->p_FmPcdPrs = NULL; + } + + if (p_FmPcd->h_Hc) + { + FmHcFree(p_FmPcd->h_Hc); + p_FmPcd->h_Hc = NULL; + } + + XX_IpcUnregisterMsgHandler(p_FmPcd->fmPcdModuleName); + + FmUnregisterPcd(p_FmPcd->h_Fm); + + XX_Free(p_FmPcd); + return E_OK; +} + +t_Error FM_PCD_Enable(t_Handle h_FmPcd) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_Error err = E_OK; + + SANITY_CHECK_RETURN_ERROR(h_FmPcd, E_INVALID_HANDLE); + + if(p_FmPcd->guestId == NCSW_MASTER_ID) + { + if(p_FmPcd->p_FmPcdKg) + KgEnable(p_FmPcd); + + if(p_FmPcd->p_FmPcdPlcr) + PlcrEnable(p_FmPcd); + + if(p_FmPcd->p_FmPcdPrs) + PrsEnable(p_FmPcd); + + p_FmPcd->enabled = TRUE; + } + else + { + uint8_t enabled; + t_FmPcdIpcMsg msg; + t_FmPcdIpcReply reply; + uint32_t replyLength; + + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_PCD_MASTER_IS_ENABLED; + replyLength = sizeof(uint32_t) + sizeof(enabled); + if ((err = XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + if (replyLength != sizeof(uint32_t) + sizeof(enabled)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + p_FmPcd->enabled = (bool)!!(*(uint8_t*)(reply.replyBody)); + if (!p_FmPcd->enabled) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("FM-PCD master should be enabled first!")); + } + + return E_OK; +} + +t_Error FM_PCD_Disable(t_Handle h_FmPcd) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_Error err = E_OK; + t_FmPcdIpcMsg msg; + t_FmPcdIpcReply reply; + uint32_t replyLength; + + SANITY_CHECK_RETURN_ERROR(h_FmPcd, E_INVALID_HANDLE); + + if(p_FmPcd->guestId == NCSW_MASTER_ID) + { + if(p_FmPcd->numOfEnabledGuestPartitionsPcds != 0) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Trying to disable a master partition PCD while guest partitions are still enabled.")); + + if(p_FmPcd->p_FmPcdKg) + KgDisable(p_FmPcd); + + if(p_FmPcd->p_FmPcdPlcr) + PlcrDisable(p_FmPcd); + + if(p_FmPcd->p_FmPcdPrs) + PrsDisable(p_FmPcd); + + p_FmPcd->enabled = FALSE; + + return E_OK; + } + + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_PCD_GUEST_DISABLE; + memset(&reply, 0, sizeof(reply)); + replyLength = sizeof(uint32_t); + if ((err = XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + if (replyLength != sizeof(uint32_t)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + + return (t_Error)(reply.error); +} + +t_Handle FM_PCD_SetNetEnvCharacteristics(t_Handle h_FmPcd, t_FmPcdNetEnvParams *p_NetEnvParams) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t intFlags, specialUnits = 0; + uint8_t bitId = 0; + uint8_t i, j, k; + uint8_t netEnvCurrId; + uint8_t ipsecAhUnit = 0,ipsecEspUnit = 0; + bool ipsecAhExists = FALSE, ipsecEspExists = FALSE, shim1Selected = FALSE; + uint8_t hdrNum; + + SANITY_CHECK_RETURN_VALUE(h_FmPcd, E_INVALID_STATE, NULL); + SANITY_CHECK_RETURN_VALUE(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE, NULL); + + intFlags = FmPcdLock(p_FmPcd); + + /* find a new netEnv */ + for(i = 0;inetEnvs[i].used) + break; + + if(i== FM_MAX_NUM_OF_PORTS) + { + REPORT_ERROR(MAJOR, E_FULL,("No more than %d netEnv's allowed.", FM_MAX_NUM_OF_PORTS)); + FmPcdUnlock(p_FmPcd, intFlags); + return NULL; + } + + p_FmPcd->netEnvs[i].used = TRUE; + + if (!TRY_LOCK(NULL, &p_FmPcd->netEnvs[i].lock)) + { + FmPcdUnlock(p_FmPcd, intFlags); + return NULL; + } + FmPcdUnlock(p_FmPcd, intFlags); + + netEnvCurrId = (uint8_t)i; + + /* clear from previous use */ + memset(&p_FmPcd->netEnvs[netEnvCurrId].units, 0, FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS * sizeof(t_FmPcdIntDistinctionUnit)); + memset(&p_FmPcd->netEnvs[netEnvCurrId].aliasHdrs, 0, FM_PCD_MAX_NUM_OF_PRIVATE_HDRS * sizeof(t_FmPcdNetEnvAliases)); + memcpy(&p_FmPcd->netEnvs[netEnvCurrId].units, p_NetEnvParams->units, p_NetEnvParams->numOfDistinctionUnits*sizeof(t_FmPcdIntDistinctionUnit)); + p_FmPcd->netEnvs[netEnvCurrId].clsPlanGrpId = ILLEGAL_CLS_PLAN; + + /* check that header with opt is not interchanged with the same header */ + for (i=0; (i < FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS) + && (p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[0].hdr != HEADER_TYPE_NONE); i++) + { + for (k=0; (k < FM_PCD_MAX_NUM_OF_INTERCHANGEABLE_HDRS) + && (p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[k].hdr != HEADER_TYPE_NONE); k++) + { + /* if an option exists, check that other headers are not the same header + without option */ + if(p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[k].opt) + { + for (j=0; (j < FM_PCD_MAX_NUM_OF_INTERCHANGEABLE_HDRS) + && (p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[j].hdr != HEADER_TYPE_NONE); j++) + if((p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[j].hdr == p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[k].hdr) && + !p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[j].opt) + { + REPORT_ERROR(MINOR, E_FULL, ("Illegal unit - header with opt may not be interchangeable with the same header without opt")); + RELEASE_LOCK(p_FmPcd->netEnvs[netEnvCurrId].lock); + return NULL; + } + } + } + } + + /* IPSEC_AH and IPSEC_SPI can't be 2 units, */ + /* check that header with opt is not interchanged with the same header */ + for(i=0; (i < FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS) + && (p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[0].hdr != HEADER_TYPE_NONE); i++) + { + for(k=0; (k < FM_PCD_MAX_NUM_OF_INTERCHANGEABLE_HDRS) + && (p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[k].hdr != HEADER_TYPE_NONE); k++) + { + /* Some headers pairs may not be defined on different units as the parser + doesn't distinguish */ + if(p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[k].hdr == HEADER_TYPE_IPSEC_AH) + { + if (ipsecEspExists && (ipsecEspUnit != i)) + { + REPORT_ERROR(MINOR, E_INVALID_STATE, ("HEADER_TYPE_IPSEC_AH and HEADER_TYPE_IPSEC_ESP may not be defined in separate units")); + RELEASE_LOCK(p_FmPcd->netEnvs[netEnvCurrId].lock); + return NULL; + } + else + { + ipsecAhUnit = i; + ipsecAhExists = TRUE; + } + } + if(p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[k].hdr == HEADER_TYPE_IPSEC_ESP) + { + if (ipsecAhExists && (ipsecAhUnit != i)) + { + REPORT_ERROR(MINOR, E_INVALID_STATE, ("HEADER_TYPE_IPSEC_AH and HEADER_TYPE_IPSEC_ESP may not be defined in separate units")); + RELEASE_LOCK(p_FmPcd->netEnvs[netEnvCurrId].lock); + return NULL; + } + else + { + ipsecEspUnit = i; + ipsecEspExists = TRUE; + } + } + if(p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[k].hdr == HEADER_TYPE_UDP_ENCAP_ESP) + { + /* TODO - general coding. choose the free shim header */ + p_FmPcd->netEnvs[netEnvCurrId].aliasHdrs[specialUnits].hdr = HEADER_TYPE_UDP_ENCAP_ESP; + p_FmPcd->netEnvs[netEnvCurrId].aliasHdrs[specialUnits++].aliasHdr = HEADER_TYPE_USER_DEFINED_SHIM1; + p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[k].hdr = HEADER_TYPE_USER_DEFINED_SHIM1; + p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[k].opt = 0; + } + } + } + + /* if private header (shim), check that no other headers specified */ + for (i=0; (i < FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS) + && (p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[0].hdr != HEADER_TYPE_NONE); i++) + { + if(IS_PRIVATE_HEADER(p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[0].hdr)) + if(p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[1].hdr != HEADER_TYPE_NONE) + { + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("SHIM header may not be interchanged with other headers")); + RELEASE_LOCK(p_FmPcd->netEnvs[netEnvCurrId].lock); + return NULL; + } + } + + for(i=0; inumOfDistinctionUnits;i++) + { + if (IS_PRIVATE_HEADER(p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[0].hdr)) + switch(p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[0].hdr) + { + case(HEADER_TYPE_USER_DEFINED_SHIM1): + if (shim1Selected) + { + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("SHIM header cannot be selected with UDP_IPSEC_ESP")); + RELEASE_LOCK(p_FmPcd->netEnvs[netEnvCurrId].lock); + return NULL; + } + shim1Selected = TRUE; + p_FmPcd->netEnvs[netEnvCurrId].unitsVectors[i] = 0x00000001; + break; + case(HEADER_TYPE_USER_DEFINED_SHIM2): + p_FmPcd->netEnvs[netEnvCurrId].unitsVectors[i] = 0x00000002; + break; + default: + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Requested SHIM not supported")); + } + else + { + p_FmPcd->netEnvs[netEnvCurrId].unitsVectors[i] = (uint32_t)(0x80000000 >> bitId++); + + if(IS_SPECIAL_HEADER(p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[0].hdr)) + p_FmPcd->netEnvs[netEnvCurrId].macsecVector = p_FmPcd->netEnvs[netEnvCurrId].unitsVectors[i]; + } + } + + /* define a set of hardware parser LCV's according to the defined netenv */ + + /* set an array of LCV's for each header in the netEnv */ + for (i=0; (i < FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS) + && (p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[0].hdr != HEADER_TYPE_NONE); i++) + { + /* private headers have no LCV in the hard parser */ + if (!IS_PRIVATE_HEADER(p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[0].hdr)) + { + for (k=0; (k < FM_PCD_MAX_NUM_OF_INTERCHANGEABLE_HDRS) + && (p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[k].hdr != HEADER_TYPE_NONE); k++) + { + GET_PRS_HDR_NUM(hdrNum, p_FmPcd->netEnvs[netEnvCurrId].units[i].hdrs[k].hdr); + if ((hdrNum == ILLEGAL_HDR_NUM) || (hdrNum == NO_HDR_NUM)) + { + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, NO_MSG); + RELEASE_LOCK(p_FmPcd->netEnvs[netEnvCurrId].lock); + return NULL; + } + p_FmPcd->netEnvs[netEnvCurrId].lcvs[hdrNum] |= p_FmPcd->netEnvs[netEnvCurrId].unitsVectors[i]; + } + } + } + + RELEASE_LOCK(p_FmPcd->netEnvs[netEnvCurrId].lock); + + return UINT_TO_PTR((uint64_t)netEnvCurrId+1); +} + +t_Error FM_PCD_DeleteNetEnvCharacteristics(t_Handle h_FmPcd, t_Handle h_NetEnv) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint8_t netEnvId = (uint8_t)(PTR_TO_UINT(h_NetEnv)-1); + + SANITY_CHECK_RETURN_ERROR(h_FmPcd, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE); + + if (!TRY_LOCK(p_FmPcd->h_Spinlock, &p_FmPcd->netEnvs[netEnvId].lock)) + return ERROR_CODE(E_BUSY); + /* check that no port is bound to this netEnv */ + if(p_FmPcd->netEnvs[netEnvId].owners) + { + RELEASE_LOCK(p_FmPcd->netEnvs[netEnvId].lock); + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Trying to delete a netEnv that has ports/schemes/trees/clsPlanGrps bound to")); + } + p_FmPcd->netEnvs[netEnvId].used= FALSE; + p_FmPcd->netEnvs[netEnvId].clsPlanGrpId = ILLEGAL_CLS_PLAN; + + memset(p_FmPcd->netEnvs[netEnvId].units, 0, sizeof(t_FmPcdIntDistinctionUnit)*FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS); + memset(p_FmPcd->netEnvs[netEnvId].unitsVectors, 0, sizeof(uint32_t)*FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS); + memset(p_FmPcd->netEnvs[netEnvId].lcvs, 0, sizeof(uint32_t)*FM_PCD_PRS_NUM_OF_HDRS); + + RELEASE_LOCK(p_FmPcd->netEnvs[netEnvId].lock); + + return E_OK; +} + +void FM_PCD_HcTxConf(t_Handle h_FmPcd, t_DpaaFD *p_Fd) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + SANITY_CHECK_RETURN(h_FmPcd, E_INVALID_STATE); + + FmHcTxConf(p_FmPcd->h_Hc, p_Fd); +} + +uint32_t FM_PCD_GetCounter(t_Handle h_FmPcd, e_FmPcdCounters counter) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t replyLength, outCounter = 0; + t_FmPcdIpcMsg msg; + t_Error err; + t_FmPcdIpcReply reply; + + SANITY_CHECK_RETURN_VALUE(h_FmPcd, E_INVALID_HANDLE, 0); + SANITY_CHECK_RETURN_VALUE(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE, 0); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_PCD_GET_COUNTER; + memcpy(msg.msgBody, (uint8_t *)&counter, sizeof(uint32_t)); + replyLength = sizeof(uint32_t) + sizeof(uint32_t); + if ((err = XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId) +sizeof(uint32_t), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + if (replyLength != sizeof(uint32_t) + sizeof(uint32_t)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + + memcpy((uint8_t*)&outCounter, reply.replyBody, sizeof(uint32_t)); + return outCounter; + } + + switch(counter) + { + case(e_FM_PCD_KG_COUNTERS_TOTAL): + if(!p_FmPcd->p_FmPcdKg) + { + REPORT_ERROR(MINOR, E_INVALID_STATE, ("Can't ask for this counters")); + return 0; + } + break; + case(e_FM_PCD_PLCR_COUNTERS_YELLOW): + case(e_FM_PCD_PLCR_COUNTERS_RED): + case(e_FM_PCD_PLCR_COUNTERS_RECOLORED_TO_RED): + case(e_FM_PCD_PLCR_COUNTERS_RECOLORED_TO_YELLOW): + case(e_FM_PCD_PLCR_COUNTERS_TOTAL): + case(e_FM_PCD_PLCR_COUNTERS_LENGTH_MISMATCH): + if(!p_FmPcd->p_FmPcdPlcr) + { + REPORT_ERROR(MINOR, E_INVALID_STATE, ("Can't ask for this counters")); + return 0; + } + /* check that counters are enabled */ + if(!(GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_gcr) & FM_PCD_PLCR_GCR_STEN)) + { + REPORT_ERROR(MINOR, E_INVALID_STATE, ("Requested counter was not enabled")); + return 0; + } + break; + case(e_FM_PCD_PRS_COUNTERS_PARSE_DISPATCH): + case(e_FM_PCD_PRS_COUNTERS_L2_PARSE_RESULT_RETURNED): + case(e_FM_PCD_PRS_COUNTERS_L3_PARSE_RESULT_RETURNED): + case(e_FM_PCD_PRS_COUNTERS_L4_PARSE_RESULT_RETURNED): + case(e_FM_PCD_PRS_COUNTERS_SHIM_PARSE_RESULT_RETURNED): + case(e_FM_PCD_PRS_COUNTERS_L2_PARSE_RESULT_RETURNED_WITH_ERR): + case(e_FM_PCD_PRS_COUNTERS_L3_PARSE_RESULT_RETURNED_WITH_ERR): + case(e_FM_PCD_PRS_COUNTERS_L4_PARSE_RESULT_RETURNED_WITH_ERR): + case(e_FM_PCD_PRS_COUNTERS_SHIM_PARSE_RESULT_RETURNED_WITH_ERR): + case(e_FM_PCD_PRS_COUNTERS_SOFT_PRS_CYCLES): + case(e_FM_PCD_PRS_COUNTERS_SOFT_PRS_STALL_CYCLES): + case(e_FM_PCD_PRS_COUNTERS_HARD_PRS_CYCLE_INCL_STALL_CYCLES): + case(e_FM_PCD_PRS_COUNTERS_MURAM_READ_CYCLES): + case(e_FM_PCD_PRS_COUNTERS_MURAM_READ_STALL_CYCLES): + case(e_FM_PCD_PRS_COUNTERS_MURAM_WRITE_CYCLES): + case(e_FM_PCD_PRS_COUNTERS_MURAM_WRITE_STALL_CYCLES): + case(e_FM_PCD_PRS_COUNTERS_FPM_COMMAND_STALL_CYCLES): + if(!p_FmPcd->p_FmPcdPrs) + { + REPORT_ERROR(MINOR, E_INVALID_STATE, ("Can't ask for this counters")); + return 0; + } + break; + default: + REPORT_ERROR(MINOR, E_INVALID_STATE, ("Unsupported type of counter")); + return 0; + } + switch(counter) + { + case(e_FM_PCD_PRS_COUNTERS_PARSE_DISPATCH): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->pds); + case(e_FM_PCD_PRS_COUNTERS_L2_PARSE_RESULT_RETURNED): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->l2rrs); + case(e_FM_PCD_PRS_COUNTERS_L3_PARSE_RESULT_RETURNED): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->l3rrs); + case(e_FM_PCD_PRS_COUNTERS_L4_PARSE_RESULT_RETURNED): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->l4rrs); + case(e_FM_PCD_PRS_COUNTERS_SHIM_PARSE_RESULT_RETURNED): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->srrs); + case(e_FM_PCD_PRS_COUNTERS_L2_PARSE_RESULT_RETURNED_WITH_ERR): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->l2rres); + case(e_FM_PCD_PRS_COUNTERS_L3_PARSE_RESULT_RETURNED_WITH_ERR): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->l3rres); + case(e_FM_PCD_PRS_COUNTERS_L4_PARSE_RESULT_RETURNED_WITH_ERR): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->l4rres); + case(e_FM_PCD_PRS_COUNTERS_SHIM_PARSE_RESULT_RETURNED_WITH_ERR): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->srres); + case(e_FM_PCD_PRS_COUNTERS_SOFT_PRS_CYCLES): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->spcs); + case(e_FM_PCD_PRS_COUNTERS_SOFT_PRS_STALL_CYCLES): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->spscs); + case(e_FM_PCD_PRS_COUNTERS_HARD_PRS_CYCLE_INCL_STALL_CYCLES): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->hxscs); + case(e_FM_PCD_PRS_COUNTERS_MURAM_READ_CYCLES): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->mrcs); + case(e_FM_PCD_PRS_COUNTERS_MURAM_READ_STALL_CYCLES): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->mrscs); + case(e_FM_PCD_PRS_COUNTERS_MURAM_WRITE_CYCLES): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->mwcs); + case(e_FM_PCD_PRS_COUNTERS_MURAM_WRITE_STALL_CYCLES): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->mwscs); + case(e_FM_PCD_PRS_COUNTERS_FPM_COMMAND_STALL_CYCLES): + return GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->fcscs); + case(e_FM_PCD_KG_COUNTERS_TOTAL): + return GET_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgtpc); + + /*Policer statictics*/ + case(e_FM_PCD_PLCR_COUNTERS_YELLOW): + return GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_ypcnt); + case(e_FM_PCD_PLCR_COUNTERS_RED): + return GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_rpcnt); + case(e_FM_PCD_PLCR_COUNTERS_RECOLORED_TO_RED): + return GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_rrpcnt); + case(e_FM_PCD_PLCR_COUNTERS_RECOLORED_TO_YELLOW): + return GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_rypcnt); + case(e_FM_PCD_PLCR_COUNTERS_TOTAL): + return GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_tpcnt); + case(e_FM_PCD_PLCR_COUNTERS_LENGTH_MISMATCH): + return GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_flmcnt); + + default: + REPORT_ERROR(MINOR, E_INVALID_STATE, ("Unsupported type of counter")); + return 0; + } +} + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +t_Error FM_PCD_DumpRegs(t_Handle h_FmPcd) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_FmPcdIpcMsg msg; + + DECLARE_DUMP; + + SANITY_CHECK_RETURN_ERROR(h_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_PCD_DUMP_REGS; + return XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId), + NULL, + NULL, + NULL, + NULL); + } + if (p_FmPcd->p_FmPcdKg) + return FM_PCD_KgDumpRegs(h_FmPcd); + if (p_FmPcd->p_FmPcdPlcr) + return FM_PCD_PlcrDumpRegs(h_FmPcd); + if (p_FmPcd->p_FmPcdPrs) + return FM_PCD_PrsDumpRegs(h_FmPcd); + return E_OK; +} + +t_Error FM_PCD_HcDumpRegs(t_Handle h_FmPcd) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + DECLARE_DUMP; + + SANITY_CHECK_RETURN_ERROR(h_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->h_Hc, E_INVALID_STATE); + + return FmHcDumpRegs(p_FmPcd->h_Hc); +} + +#endif /* (defined(DEBUG_ERRORS) && ... */ + +t_Error FM_PCD_ConfigException(t_Handle h_FmPcd, e_FmPcdExceptions exception, bool enable) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t bitMask = 0; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("FM_PCD_ConfigException - guest mode!")); + + GET_FM_PCD_EXCEPTION_FLAG(bitMask, exception); + if(bitMask) + { + if (enable) + p_FmPcd->exceptions |= bitMask; + else + p_FmPcd->exceptions &= ~bitMask; + } + else + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Undefined exception")); + + return E_OK; +} + +t_Error FM_PCD_SetException(t_Handle h_FmPcd, e_FmPcdExceptions exception, bool enable) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t bitMask = 0, tmpReg; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("FM_PCD_SetException - guest mode!")); + + GET_FM_PCD_EXCEPTION_FLAG(bitMask, exception); + + if(bitMask) + { + if (enable) + p_FmPcd->exceptions |= bitMask; + else + p_FmPcd->exceptions &= ~bitMask; + + switch(exception) + { + case(e_FM_PCD_KG_EXCEPTION_DOUBLE_ECC): + case(e_FM_PCD_KG_EXCEPTION_KEYSIZE_OVERFLOW): + if(!p_FmPcd->p_FmPcdKg) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Can't ask for this interrupt - keygen is not working")); + break; + case(e_FM_PCD_PLCR_EXCEPTION_DOUBLE_ECC): + case(e_FM_PCD_PLCR_EXCEPTION_INIT_ENTRY_ERROR): + case(e_FM_PCD_PLCR_EXCEPTION_PRAM_SELF_INIT_COMPLETE): + case(e_FM_PCD_PLCR_EXCEPTION_ATOMIC_ACTION_COMPLETE): + if(!p_FmPcd->p_FmPcdPlcr) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Can't ask for this interrupt - policer is not working")); + break; + case(e_FM_PCD_PRS_EXCEPTION_DOUBLE_ECC): + case(e_FM_PCD_PRS_EXCEPTION_SINGLE_ECC): + if(!p_FmPcd->p_FmPcdPrs) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Can't ask for this interrupt - parser is not working")); + break; + default: + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Unsupported exception")); + + } + + switch(exception) + { + case(e_FM_PCD_KG_EXCEPTION_DOUBLE_ECC): + tmpReg = GET_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgeeer); + if(enable) + tmpReg |= FM_PCD_KG_DOUBLE_ECC; + else + tmpReg &= ~FM_PCD_KG_DOUBLE_ECC; + WRITE_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgeeer, tmpReg); + break; + case(e_FM_PCD_KG_EXCEPTION_KEYSIZE_OVERFLOW): + tmpReg = GET_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgeeer); + if(enable) + tmpReg |= FM_PCD_KG_KEYSIZE_OVERFLOW; + else + tmpReg &= ~FM_PCD_KG_KEYSIZE_OVERFLOW; + WRITE_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgeeer, tmpReg); + break; + case(e_FM_PCD_PRS_EXCEPTION_DOUBLE_ECC): + tmpReg = GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->perer); + if(enable) + tmpReg |= FM_PCD_PRS_DOUBLE_ECC; + else + tmpReg &= ~FM_PCD_PRS_DOUBLE_ECC; + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->perer, tmpReg); + break; + case(e_FM_PCD_PRS_EXCEPTION_SINGLE_ECC): + tmpReg = GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->pever); + if(enable) + tmpReg |= FM_PCD_PRS_SINGLE_ECC; + else + tmpReg &= ~FM_PCD_PRS_SINGLE_ECC; + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->pever, tmpReg); + break; + case(e_FM_PCD_PLCR_EXCEPTION_DOUBLE_ECC): + tmpReg = GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_eier); + if(enable) + tmpReg |= FM_PCD_PLCR_DOUBLE_ECC; + else + tmpReg &= ~FM_PCD_PLCR_DOUBLE_ECC; + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_eier, tmpReg); + break; + case(e_FM_PCD_PLCR_EXCEPTION_INIT_ENTRY_ERROR): + tmpReg = GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_eier); + if(enable) + tmpReg |= FM_PCD_PLCR_INIT_ENTRY_ERROR; + else + tmpReg &= ~FM_PCD_PLCR_INIT_ENTRY_ERROR; + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_eier, tmpReg); + break; + case(e_FM_PCD_PLCR_EXCEPTION_PRAM_SELF_INIT_COMPLETE): + tmpReg = GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_ier); + if(enable) + tmpReg |= FM_PCD_PLCR_PRAM_SELF_INIT_COMPLETE; + else + tmpReg &= ~FM_PCD_PLCR_PRAM_SELF_INIT_COMPLETE; + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_ier, tmpReg); + break; + case(e_FM_PCD_PLCR_EXCEPTION_ATOMIC_ACTION_COMPLETE): + tmpReg = GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_ier); + if(enable) + tmpReg |= FM_PCD_PLCR_ATOMIC_ACTION_COMPLETE; + else + tmpReg &= ~FM_PCD_PLCR_ATOMIC_ACTION_COMPLETE; + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_ier, tmpReg); + break; + default: + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Unsupported exception")); + } + /* for ECC exceptions driver automatically enables ECC mechanism, if disabled. + Driver may disable them automatically, depending on driver's status */ + if(enable && ( (exception == e_FM_PCD_KG_EXCEPTION_DOUBLE_ECC) | + (exception == e_FM_PCD_PLCR_EXCEPTION_DOUBLE_ECC) | + (exception == e_FM_PCD_PRS_EXCEPTION_DOUBLE_ECC) | + (exception == e_FM_PCD_PRS_EXCEPTION_SINGLE_ECC))) + FmEnableRamsEcc(p_FmPcd->h_Fm); + if(!enable && ( (exception == e_FM_PCD_KG_EXCEPTION_DOUBLE_ECC) | + (exception == e_FM_PCD_PLCR_EXCEPTION_DOUBLE_ECC) | + (exception == e_FM_PCD_PRS_EXCEPTION_DOUBLE_ECC) | + (exception == e_FM_PCD_PRS_EXCEPTION_SINGLE_ECC))) + FmDisableRamsEcc(p_FmPcd->h_Fm); + } + else + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Undefined exception")); + + return E_OK; +} + +t_Error FM_PCD_ForceIntr (t_Handle h_FmPcd, e_FmPcdExceptions exception) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + SANITY_CHECK_RETURN_ERROR(h_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("FM_PCD_ForceIntr - guest mode!")); + + switch(exception) + { + case(e_FM_PCD_KG_EXCEPTION_DOUBLE_ECC): + case(e_FM_PCD_KG_EXCEPTION_KEYSIZE_OVERFLOW): + if(!p_FmPcd->p_FmPcdKg) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Can't ask for this interrupt - keygen is not working")); + break; + case(e_FM_PCD_PLCR_EXCEPTION_DOUBLE_ECC): + case(e_FM_PCD_PLCR_EXCEPTION_INIT_ENTRY_ERROR): + case(e_FM_PCD_PLCR_EXCEPTION_PRAM_SELF_INIT_COMPLETE): + case(e_FM_PCD_PLCR_EXCEPTION_ATOMIC_ACTION_COMPLETE): + if(!p_FmPcd->p_FmPcdPlcr) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Can't ask for this interrupt - policer is not working")); + break; + case(e_FM_PCD_PRS_EXCEPTION_DOUBLE_ECC): + case(e_FM_PCD_PRS_EXCEPTION_SINGLE_ECC): + if(!p_FmPcd->p_FmPcdPrs) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Can't ask for this interrupt -parsrer is not working")); + break; + default: + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Invalid interrupt requested")); + + } + switch(exception) + { + case e_FM_PCD_PRS_EXCEPTION_DOUBLE_ECC: + if (!(p_FmPcd->exceptions & FM_PCD_EX_PRS_DOUBLE_ECC)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception is masked")); + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->perfr, FM_PCD_PRS_DOUBLE_ECC); + break; + case e_FM_PCD_PRS_EXCEPTION_SINGLE_ECC: + if (!(p_FmPcd->exceptions & FM_PCD_EX_PRS_SINGLE_ECC)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception is masked")); + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->pevfr, FM_PCD_PRS_SINGLE_ECC); + break; + case e_FM_PCD_KG_EXCEPTION_DOUBLE_ECC: + if (!(p_FmPcd->exceptions & FM_PCD_EX_KG_DOUBLE_ECC)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception is masked")); + WRITE_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgfeer, FM_PCD_KG_DOUBLE_ECC); + break; + case e_FM_PCD_KG_EXCEPTION_KEYSIZE_OVERFLOW: + if (!(p_FmPcd->exceptions & FM_PCD_EX_KG_KEYSIZE_OVERFLOW)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception is masked")); + WRITE_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgfeer, FM_PCD_KG_KEYSIZE_OVERFLOW); + break; + case e_FM_PCD_PLCR_EXCEPTION_DOUBLE_ECC: + if (!(p_FmPcd->exceptions & FM_PCD_EX_PLCR_DOUBLE_ECC)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception is masked")); + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_eifr, FM_PCD_PLCR_DOUBLE_ECC); + break; + case e_FM_PCD_PLCR_EXCEPTION_INIT_ENTRY_ERROR: + if (!(p_FmPcd->exceptions & FM_PCD_EX_PLCR_INIT_ENTRY_ERROR)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception is masked")); + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_eifr, FM_PCD_PLCR_INIT_ENTRY_ERROR); + break; + case e_FM_PCD_PLCR_EXCEPTION_PRAM_SELF_INIT_COMPLETE: + if (!(p_FmPcd->exceptions & FM_PCD_EX_PLCR_PRAM_SELF_INIT_COMPLETE)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception is masked")); + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_ifr, FM_PCD_PLCR_PRAM_SELF_INIT_COMPLETE); + break; + case e_FM_PCD_PLCR_EXCEPTION_ATOMIC_ACTION_COMPLETE: + if (!(p_FmPcd->exceptions & FM_PCD_EX_PLCR_ATOMIC_ACTION_COMPLETE)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception is masked")); + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_ifr, FM_PCD_PLCR_ATOMIC_ACTION_COMPLETE); + break; + default: + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception may not be forced")); + } + + return E_OK; +} + + +t_Error FM_PCD_ModifyCounter(t_Handle h_FmPcd, e_FmPcdCounters counter, uint32_t value) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + SANITY_CHECK_RETURN_ERROR(h_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("FM_PCD_ModifyCounter - guest mode!")); + + switch(counter) + { + case(e_FM_PCD_KG_COUNTERS_TOTAL): + if(!p_FmPcd->p_FmPcdKg) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Can't ask for this counters - keygen is not working")); + break; + case(e_FM_PCD_PLCR_COUNTERS_YELLOW): + case(e_FM_PCD_PLCR_COUNTERS_RED): + case(e_FM_PCD_PLCR_COUNTERS_RECOLORED_TO_RED): + case(e_FM_PCD_PLCR_COUNTERS_RECOLORED_TO_YELLOW): + case(e_FM_PCD_PLCR_COUNTERS_TOTAL): + case(e_FM_PCD_PLCR_COUNTERS_LENGTH_MISMATCH): + if(!p_FmPcd->p_FmPcdPlcr) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Can't ask for this counters - Policer is not working")); + if(!(GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_gcr) & FM_PCD_PLCR_GCR_STEN)) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter was not enabled")); + break; + case(e_FM_PCD_PRS_COUNTERS_PARSE_DISPATCH): + case(e_FM_PCD_PRS_COUNTERS_L2_PARSE_RESULT_RETURNED): + case(e_FM_PCD_PRS_COUNTERS_L3_PARSE_RESULT_RETURNED): + case(e_FM_PCD_PRS_COUNTERS_L4_PARSE_RESULT_RETURNED): + case(e_FM_PCD_PRS_COUNTERS_SHIM_PARSE_RESULT_RETURNED): + case(e_FM_PCD_PRS_COUNTERS_L2_PARSE_RESULT_RETURNED_WITH_ERR): + case(e_FM_PCD_PRS_COUNTERS_L3_PARSE_RESULT_RETURNED_WITH_ERR): + case(e_FM_PCD_PRS_COUNTERS_L4_PARSE_RESULT_RETURNED_WITH_ERR): + case(e_FM_PCD_PRS_COUNTERS_SHIM_PARSE_RESULT_RETURNED_WITH_ERR): + case(e_FM_PCD_PRS_COUNTERS_SOFT_PRS_CYCLES): + case(e_FM_PCD_PRS_COUNTERS_SOFT_PRS_STALL_CYCLES): + case(e_FM_PCD_PRS_COUNTERS_HARD_PRS_CYCLE_INCL_STALL_CYCLES): + case(e_FM_PCD_PRS_COUNTERS_MURAM_READ_CYCLES): + case(e_FM_PCD_PRS_COUNTERS_MURAM_READ_STALL_CYCLES): + case(e_FM_PCD_PRS_COUNTERS_MURAM_WRITE_CYCLES): + case(e_FM_PCD_PRS_COUNTERS_MURAM_WRITE_STALL_CYCLES): + case(e_FM_PCD_PRS_COUNTERS_FPM_COMMAND_STALL_CYCLES): + if(!p_FmPcd->p_FmPcdPrs) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Unsupported type of counter")); + break; + default: + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Unsupported type of counter")); + } + switch(counter) + { + case(e_FM_PCD_PRS_COUNTERS_PARSE_DISPATCH): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->pds, value); + break; + case(e_FM_PCD_PRS_COUNTERS_L2_PARSE_RESULT_RETURNED): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->l2rrs, value); + break; + case(e_FM_PCD_PRS_COUNTERS_L3_PARSE_RESULT_RETURNED): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->l3rrs, value); + break; + case(e_FM_PCD_PRS_COUNTERS_L4_PARSE_RESULT_RETURNED): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->l4rrs, value); + break; + case(e_FM_PCD_PRS_COUNTERS_SHIM_PARSE_RESULT_RETURNED): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->srrs, value); + break; + case(e_FM_PCD_PRS_COUNTERS_L2_PARSE_RESULT_RETURNED_WITH_ERR): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->l2rres, value); + break; + case(e_FM_PCD_PRS_COUNTERS_L3_PARSE_RESULT_RETURNED_WITH_ERR): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->l3rres, value); + break; + case(e_FM_PCD_PRS_COUNTERS_L4_PARSE_RESULT_RETURNED_WITH_ERR): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->l4rres, value); + break; + case(e_FM_PCD_PRS_COUNTERS_SHIM_PARSE_RESULT_RETURNED_WITH_ERR): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->srres, value); + break; + case(e_FM_PCD_PRS_COUNTERS_SOFT_PRS_CYCLES): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->spcs, value); + break; + case(e_FM_PCD_PRS_COUNTERS_SOFT_PRS_STALL_CYCLES): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->spscs, value); + break; + case(e_FM_PCD_PRS_COUNTERS_HARD_PRS_CYCLE_INCL_STALL_CYCLES): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->hxscs, value); + break; + case(e_FM_PCD_PRS_COUNTERS_MURAM_READ_CYCLES): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->mrcs, value); + break; + case(e_FM_PCD_PRS_COUNTERS_MURAM_READ_STALL_CYCLES): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->mrscs, value); + break; + case(e_FM_PCD_PRS_COUNTERS_MURAM_WRITE_CYCLES): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->mwcs, value); + break; + case(e_FM_PCD_PRS_COUNTERS_MURAM_WRITE_STALL_CYCLES): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->mwscs, value); + break; + case(e_FM_PCD_PRS_COUNTERS_FPM_COMMAND_STALL_CYCLES): + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->fcscs, value); + break; + case(e_FM_PCD_KG_COUNTERS_TOTAL): + WRITE_UINT32(p_FmPcd->p_FmPcdKg->p_FmPcdKgRegs->kgtpc,value); + break; + + /*Policer counters*/ + case(e_FM_PCD_PLCR_COUNTERS_YELLOW): + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_ypcnt, value); + break; + case(e_FM_PCD_PLCR_COUNTERS_RED): + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_rpcnt, value); + break; + case(e_FM_PCD_PLCR_COUNTERS_RECOLORED_TO_RED): + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_rrpcnt, value); + break; + case(e_FM_PCD_PLCR_COUNTERS_RECOLORED_TO_YELLOW): + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_rypcnt, value); + break; + case(e_FM_PCD_PLCR_COUNTERS_TOTAL): + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_tpcnt, value); + break; + case(e_FM_PCD_PLCR_COUNTERS_LENGTH_MISMATCH): + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_flmcnt, value); + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Unsupported type of counter")); + } + +return E_OK; +} + --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/fm_pcd.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/fm_pcd.h @@ -0,0 +1,715 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm_pcd.h + + @Description FM PCD ... +*//***************************************************************************/ +#ifndef __FM_PCD_H +#define __FM_PCD_H + +#include "std_ext.h" +#include "error_ext.h" +#include "list_ext.h" +#include "fm_pcd_ext.h" + + +#define __ERR_MODULE__ MODULE_FM_PCD + + +/**************************************************************************//** + @Group FM_PCD_Runtime_grp FM PCD Runtime Unit + @{ +*//***************************************************************************/ + +/****************************/ +/* Network defines */ +/****************************/ +#define UDP_HEADER_SIZE 8 + +#define ESP_SPI_OFFSET 0 +#define ESP_SPI_SIZE 4 +#define ESP_SEQ_NUM_OFFSET ESP_SPI_SIZE +#define ESP_SEQ_NUM_SIZE 4 + +/****************************/ +/* General defines */ +/****************************/ +#define ILLEGAL_CLS_PLAN 0xff +#define ILLEGAL_NETENV 0xff +/****************************/ +/* Error defines */ +/****************************/ +#define FM_PCD_EX_KG_DOUBLE_ECC 0x80000000 +#define FM_PCD_EX_KG_KEYSIZE_OVERFLOW 0x40000000 + +#define FM_PCD_EX_PLCR_DOUBLE_ECC 0x20000000 +#define FM_PCD_EX_PLCR_INIT_ENTRY_ERROR 0x10000000 +#define FM_PCD_EX_PLCR_PRAM_SELF_INIT_COMPLETE 0x08000000 +#define FM_PCD_EX_PLCR_ATOMIC_ACTION_COMPLETE 0x04000000 + +#define FM_PCD_EX_PRS_DOUBLE_ECC 0x02000000 +#define FM_PCD_EX_PRS_SINGLE_ECC 0x01000000 + +#define GET_FM_PCD_EXCEPTION_FLAG(bitMask, exception) \ +switch(exception){ \ + case e_FM_PCD_KG_EXCEPTION_DOUBLE_ECC: \ + bitMask = FM_PCD_EX_KG_DOUBLE_ECC; break; \ + case e_FM_PCD_PLCR_EXCEPTION_DOUBLE_ECC: \ + bitMask = FM_PCD_EX_PLCR_DOUBLE_ECC; break; \ + case e_FM_PCD_KG_EXCEPTION_KEYSIZE_OVERFLOW: \ + bitMask = FM_PCD_EX_KG_KEYSIZE_OVERFLOW; break; \ + case e_FM_PCD_PLCR_EXCEPTION_INIT_ENTRY_ERROR: \ + bitMask = FM_PCD_EX_PLCR_INIT_ENTRY_ERROR; break; \ + case e_FM_PCD_PLCR_EXCEPTION_PRAM_SELF_INIT_COMPLETE: \ + bitMask = FM_PCD_EX_PLCR_PRAM_SELF_INIT_COMPLETE; break; \ + case e_FM_PCD_PLCR_EXCEPTION_ATOMIC_ACTION_COMPLETE: \ + bitMask = FM_PCD_EX_PLCR_ATOMIC_ACTION_COMPLETE; break; \ + case e_FM_PCD_PRS_EXCEPTION_DOUBLE_ECC: \ + bitMask = FM_PCD_EX_PRS_DOUBLE_ECC; break; \ + case e_FM_PCD_PRS_EXCEPTION_SINGLE_ECC: \ + bitMask = FM_PCD_EX_PRS_SINGLE_ECC; break; \ + default: bitMask = 0;break;} + +/***********************************************************************/ +/* SW parser L4 shells patch */ +/***********************************************************************/ +#ifdef FM_PRS_L4_SHELL_ERRATA_FMANb +#define SW_PRS_L4_PATCH \ +{ 0x31,0x92,0x02,0x1f,0x00,0x32,0x00,0x78, \ + 0x00,0x34,0x32,0xf0,0x00,0x50,0x00,0x0c, \ + 0x28,0x5e,0x83,0x8e,0x29,0x32,0xaf,0x8e, \ + 0x31,0xb2,0x9f,0xff,0x00,0x06,0xaf,0xbf, \ + 0x00,0x06,0x29,0x36,0x00,0x01,0x1b,0xff, \ + 0x32,0xf0,0x00,0x50,0x00,0x08,0x28,0x5e, \ + 0x08,0x99,0x00,0x00,0x9f,0x8e,0x31,0xb2, \ + 0x9f,0xff,0x00,0x06,0x29,0x36,0x00,0x01, \ + 0x1b,0xff,0x32,0xf0,0x00,0x50,0x00,0x04, \ + 0x28,0x5e,0x8f,0x9e,0x29,0x32,0x31,0xb2, \ + 0x8f,0xbf,0x00,0x06,0x29,0x36,0x00,0x01, \ + 0x1b,0xff,0x32,0xf0,0x00,0x50,0x00,0x04, \ + 0x28,0x5e,0x8f,0x9e,0x29,0x32,0x31,0xb2, \ + 0x8f,0xbf,0x00,0x06,0x29,0x36,0x00,0x01, \ + 0x1b,0xff,0x00,0x00,0x00,0x00,0x00,0x00}; + +#define SW_PRS_L4_PATCH_SIZE 120 +#endif /* FM_PRS_L4_SHELL_ERRATA_FMANb */ + +/****************************/ +/* Parser defines */ +/****************************/ +/* masks */ +#define PRS_ERR_CAP 0x80000000 +#define PRS_ERR_TYPE_DOUBLE 0x40000000 +#define PRS_ERR_SINGLE_ECC_CNT_MASK 0x00FF0000 +#define PRS_ERR_ADDR_MASK 0x000001FF +#define FM_PCD_PRS_RPIMAC_EN 0x00000001 +#define FM_PCD_PRS_SINGLE_ECC 0x00004000 +#define FM_PCD_PRS_PORT_IDLE_STS 0xffff0000 +#define FM_PCD_PRS_DOUBLE_ECC 0x00004000 +#define FM_PCD_PRS_PPSC_ALL_PORTS 0xffff0000 + +/* others */ +#define PRS_MAX_CYCLE_LIMIT 8191 +#define PRS_SW_DATA 0x00000800 +#define PRS_REGS_OFFSET 0x00000840 + +#define GET_FM_PCD_PRS_PORT_ID(prsPortId,hardwarePortId) \ + prsPortId = (uint8_t)(hardwarePortId & 0x0f) + +#define GET_FM_PCD_INDEX_FLAG(bitMask, prsPortId) \ + bitMask = 0x80000000>>prsPortId + +/***********************************************************************/ +/* Keygen defines */ +/***********************************************************************/ +/* Masks */ +#define FM_PCD_KG_KGGCR_EN 0x80000000 +#define KG_SCH_GEN_VALID 0x80000000 +#define KG_SCH_GEN_EXTRACT_TYPE 0x00008000 +#define KG_ERR_CAP 0x80000000 +#define KG_ERR_TYPE_DOUBLE 0x40000000 +#define KG_ERR_ADDR_MASK 0x00000FFF +#define FM_PCD_KG_DOUBLE_ECC 0x80000000 +#define FM_PCD_KG_KEYSIZE_OVERFLOW 0x40000000 +#define KG_SCH_MODE_EN 0x80000000 + +/* shifts */ +#define FM_PCD_KG_PE_CPP_MASK_SHIFT 16 +#define FM_PCD_KG_KGAR_WSEL_SHIFT 8 + +/* others */ +#define KG_DOUBLE_MEANING_REGS_OFFSET 0x100 +#define NO_VALIDATION 0x70 +#define KG_ACTION_REG_TO 1024 +#define KG_MAX_PROFILE 255 +#define SCHEME_ALWAYS_DIRECT 0xFFFFFFFF + +typedef struct { + bool known; + uint8_t id; +} t_FmPcdKgSchemesExtractsEntry; + +typedef struct { + t_FmPcdKgSchemesExtractsEntry extractsArray[FM_PCD_KG_MAX_NUM_OF_EXTRACTS_PER_KEY]; +} t_FmPcdKgSchemesExtracts; + +/***********************************************************************/ +/* Policer defines */ +/***********************************************************************/ + +/* masks */ +#define FM_PCD_PLCR_PEMODE_PI 0x80000000 +#define FM_PCD_PLCR_PEMODE_CBLND 0x40000000 +#define FM_PCD_PLCR_PEMODE_ALG_MASK 0x30000000 +#define FM_PCD_PLCR_PEMODE_ALG_RFC2698 0x10000000 +#define FM_PCD_PLCR_PEMODE_ALG_RFC4115 0x20000000 +#define FM_PCD_PLCR_PEMODE_DEFC_MASK 0x0C000000 +#define FM_PCD_PLCR_PEMODE_DEFC_Y 0x04000000 +#define FM_PCD_PLCR_PEMODE_DEFC_R 0x08000000 +#define FM_PCD_PLCR_PEMODE_DEFC_OVERRIDE 0x0C000000 +#define FM_PCD_PLCR_PEMODE_OVCLR_MASK 0x03000000 +#define FM_PCD_PLCR_PEMODE_OVCLR_Y 0x01000000 +#define FM_PCD_PLCR_PEMODE_OVCLR_R 0x02000000 +#define FM_PCD_PLCR_PEMODE_OVCLR_G_NC 0x03000000 +#define FM_PCD_PLCR_PEMODE_PKT 0x00800000 +#define FM_PCD_PLCR_PEMODE_FPP_MASK 0x001F0000 +#define FM_PCD_PLCR_PEMODE_FPP_SHIFT 16 +#define FM_PCD_PLCR_PEMODE_FLS_MASK 0x0000F000 +#define FM_PCD_PLCR_PEMODE_FLS_L2 0x00003000 +#define FM_PCD_PLCR_PEMODE_FLS_L3 0x0000B000 +#define FM_PCD_PLCR_PEMODE_FLS_L4 0x0000E000 +#define FM_PCD_PLCR_PEMODE_FLS_FULL 0x0000F000 +#define FM_PCD_PLCR_PEMODE_RBFLS 0x00000800 +#define FM_PCD_PLCR_PEMODE_TRA 0x00000004 +#define FM_PCD_PLCR_PEMODE_TRB 0x00000002 +#define FM_PCD_PLCR_PEMODE_TRC 0x00000001 +#define FM_PCD_PLCR_DOUBLE_ECC 0x80000000 +#define FM_PCD_PLCR_INIT_ENTRY_ERROR 0x40000000 +#define FM_PCD_PLCR_PRAM_SELF_INIT_COMPLETE 0x80000000 +#define FM_PCD_PLCR_ATOMIC_ACTION_COMPLETE 0x40000000 + +#define FM_PCD_PLCR_NIA_VALID 0x80000000 + +#define FM_PCD_PLCR_GCR_EN 0x80000000 +#define FM_PCD_PLCR_GCR_STEN 0x40000000 +#define FM_PCD_PLCR_GCR_DAR 0x20000000 +#define FM_PCD_PLCR_GCR_DEFNIA 0x00FFFFFF +#define FM_PCD_PLCR_NIA_ABS 0x00000100 + +#define FM_PCD_PLCR_GSR_BSY 0x80000000 +#define FM_PCD_PLCR_GSR_DQS 0x60000000 +#define FM_PCD_PLCR_GSR_RPB 0x20000000 +#define FM_PCD_PLCR_GSR_FQS 0x0C000000 +#define FM_PCD_PLCR_GSR_LPALG 0x0000C000 +#define FM_PCD_PLCR_GSR_LPCA 0x00003000 +#define FM_PCD_PLCR_GSR_LPNUM 0x000000FF + +#define FM_PCD_PLCR_EVR_PSIC 0x80000000 +#define FM_PCD_PLCR_EVR_AAC 0x40000000 + +#define FM_PCD_PLCR_PAR_PSI 0x20000000 +#define FM_PCD_PLCR_PAR_PNUM 0x00FF0000 +/* PWSEL Selctive select options */ +#define FM_PCD_PLCR_PAR_PWSEL_PEMODE 0x00008000 /* 0 */ +#define FM_PCD_PLCR_PAR_PWSEL_PEGNIA 0x00004000 /* 1 */ +#define FM_PCD_PLCR_PAR_PWSEL_PEYNIA 0x00002000 /* 2 */ +#define FM_PCD_PLCR_PAR_PWSEL_PERNIA 0x00001000 /* 3 */ +#define FM_PCD_PLCR_PAR_PWSEL_PECIR 0x00000800 /* 4 */ +#define FM_PCD_PLCR_PAR_PWSEL_PECBS 0x00000400 /* 5 */ +#define FM_PCD_PLCR_PAR_PWSEL_PEPIR_EIR 0x00000200 /* 6 */ +#define FM_PCD_PLCR_PAR_PWSEL_PEPBS_EBS 0x00000100 /* 7 */ +#define FM_PCD_PLCR_PAR_PWSEL_PELTS 0x00000080 /* 8 */ +#define FM_PCD_PLCR_PAR_PWSEL_PECTS 0x00000040 /* 9 */ +#define FM_PCD_PLCR_PAR_PWSEL_PEPTS_ETS 0x00000020 /* 10 */ +#define FM_PCD_PLCR_PAR_PWSEL_PEGPC 0x00000010 /* 11 */ +#define FM_PCD_PLCR_PAR_PWSEL_PEYPC 0x00000008 /* 12 */ +#define FM_PCD_PLCR_PAR_PWSEL_PERPC 0x00000004 /* 13 */ +#define FM_PCD_PLCR_PAR_PWSEL_PERYPC 0x00000002 /* 14 */ +#define FM_PCD_PLCR_PAR_PWSEL_PERRPC 0x00000001 /* 15 */ + +#define FM_PCD_PLCR_PAR_PMR_BRN_1TO1 0x0000 /* - Full bit replacement. {PBNUM[0:N-1] + 1-> 2^N specific locations. */ +#define FM_PCD_PLCR_PAR_PMR_BRN_2TO2 0x1 /* - {PBNUM[0:N-2],PNUM[N-1]}. + 2-> 2^(N-1) base locations. */ +#define FM_PCD_PLCR_PAR_PMR_BRN_4TO4 0x2 /* - {PBNUM[0:N-3],PNUM[N-2:N-1]}. + 4-> 2^(N-2) base locations. */ +#define FM_PCD_PLCR_PAR_PMR_BRN_8TO8 0x3 /* - {PBNUM[0:N-4],PNUM[N-3:N-1]}. + 8->2^(N-3) base locations. */ +#define FM_PCD_PLCR_PAR_PMR_BRN_16TO16 0x4 /* - {PBNUM[0:N-5],PNUM[N-4:N-1]}. + 16-> 2^(N-4) base locations. */ +#define FM_PCD_PLCR_PAR_PMR_BRN_32TO32 0x5 /* {PBNUM[0:N-6],PNUM[N-5:N-1]}. + 32-> 2^(N-5) base locations. */ +#define FM_PCD_PLCR_PAR_PMR_BRN_64TO64 0x6 /* {PBNUM[0:N-7],PNUM[N-6:N-1]}. + 64-> 2^(N-6) base locations. */ +#define FM_PCD_PLCR_PAR_PMR_BRN_128TO128 0x7 /* {PBNUM[0:N-8],PNUM[N-7:N-1]}. + 128-> 2^(N-7) base locations. */ +#define FM_PCD_PLCR_PAR_PMR_BRN_256TO256 0x8 /* - No bit replacement for N=8. {PNUM[N-8:N-1]}. + When N=8 this option maps all 256 profiles by the DISPATCH bus into one group. */ + +#define FM_PCD_PLCR_PMR_V 0x80000000 +#define PLCR_ERR_ECC_CAP 0x80000000 +#define PLCR_ERR_ECC_TYPE_DOUBLE 0x40000000 +#define PLCR_ERR_ECC_PNUM_MASK 0x00000FF0 +#define PLCR_ERR_ECC_OFFSET_MASK 0x0000000F + +#define PLCR_ERR_UNINIT_CAP 0x80000000 +#define PLCR_ERR_UNINIT_NUM_MASK 0x000000FF +#define PLCR_ERR_UNINIT_PID_MASK 0x003f0000 +#define PLCR_ERR_UNINIT_ABSOLUTE_MASK 0x00008000 + +/* shifts */ +#define PLCR_ERR_ECC_PNUM_SHIFT 4 +#define PLCR_ERR_UNINIT_PID_SHIFT 16 + +#define FM_PCD_PLCR_PMR_BRN_SHIFT 16 + +/* others */ +#define WAIT_FOR_PLCR_EVR_AAC \ +{\ + uint32_t count = 0; \ + uint32_t tmpReg32; \ + while (count < FM_PCD_PLCR_POLL) \ + { \ + tmpReg32 = GET_UINT32(p_FmPcdPlcrRegs->fmpl_evr);\ + if (!( tmpReg32 & FM_PCD_PLCR_EVR_AAC)) break;\ + count++;\ + }\ +} + +#define WAIT_FOR_PLCR_PAR_GO \ +{\ + uint32_t count = 0; \ + uint32_t tmpReg32; \ + while (count < FM_PCD_PLCR_POLL) \ + { \ + tmpReg32 = GET_UINT32(p_FmPcdPlcrRegs->fmpl_par);\ + if (!( tmpReg32 & FM_PCD_PLCR_PAR_GO)) break;\ + count++; \ + }\ +} + +#define PLCR_PORT_WINDOW_SIZE(hardwarePortId) + +/****************************/ +/* Defaults */ +/****************************/ +#define DEFAULT_plcrAutoRefresh FALSE +#define DEFAULT_prsMaxParseCycleLimit 0 +#define DEFAULT_fmPcdKgErrorExceptions (FM_PCD_EX_KG_DOUBLE_ECC | FM_PCD_EX_KG_KEYSIZE_OVERFLOW) +#define DEFAULT_fmPcdPlcrErrorExceptions (FM_PCD_EX_PLCR_DOUBLE_ECC | FM_PCD_EX_PLCR_INIT_ENTRY_ERROR) +#define DEFAULT_fmPcdPlcrExceptions 0 +#define DEFAULT_fmPcdPrsErrorExceptions (FM_PCD_EX_PRS_DOUBLE_ECC) + +#define DEFAULT_fmPcdPrsExceptions FM_PCD_EX_PRS_SINGLE_ECC +#define DEFAULT_numOfUsedProfilesPerWindow 16 +#define DEFAULT_numOfSharedPlcrProfiles 4 + +/***********************************************************************/ +/* Memory map */ +/***********************************************************************/ +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(push,1) +#endif /* defined(__MWERKS__) && ... */ +#define MEM_MAP_START + +typedef _Packed struct { + volatile uint32_t kgoe_sp; + volatile uint32_t kgoe_cpp; +} _PackedType t_FmPcdKgPortConfigRegs; + +typedef _Packed struct { + volatile uint32_t kgcpe[8]; +} _PackedType t_FmPcdKgClsPlanRegs; + +typedef _Packed union { + t_FmPcdKgInterModuleSchemeRegs schemeRegs; + t_FmPcdKgPortConfigRegs portRegs; + t_FmPcdKgClsPlanRegs clsPlanRegs; +} _PackedType u_FmPcdKgIndirectAccessRegs; + +typedef _Packed struct { + volatile uint32_t kggcr; + volatile uint32_t res0; + volatile uint32_t res1; + volatile uint32_t kgeer; + volatile uint32_t kgeeer; + volatile uint32_t res2; + volatile uint32_t res3; + volatile uint32_t kgseer; + volatile uint32_t kgseeer; + volatile uint32_t kggsr; + volatile uint32_t kgtpc; + volatile uint32_t kgserc; + volatile uint32_t res4[4]; + volatile uint32_t kgfdor; + volatile uint32_t kggdv0r; + volatile uint32_t kggdv1r; + volatile uint32_t res5[5]; + volatile uint32_t kgfer; + volatile uint32_t kgfeer; + volatile uint32_t res6[38]; + u_FmPcdKgIndirectAccessRegs indirectAccessRegs; + volatile uint32_t res[42]; /*(0xfc-sizeof(u_FmPcdKgIndirectAccessRegs))/4 */ + volatile uint32_t kgar; +} _PackedType t_FmPcdKgRegs; + +typedef _Packed struct { +/* General Configuration and Status Registers */ + volatile uint32_t fmpl_gcr; /* 0x000 FMPL_GCR - FM Policer General Configuration */ + volatile uint32_t fmpl_gsr; /* 0x004 FMPL_GSR - FM Policer Global Status Register */ + volatile uint32_t fmpl_evr; /* 0x008 FMPL_EVR - FM Policer Event Register */ + volatile uint32_t fmpl_ier; /* 0x00C FMPL_IER - FM Policer Interrupt Enable Register */ + volatile uint32_t fmpl_ifr; /* 0x010 FMPL_IFR - FM Policer Interrupt Force Register */ + volatile uint32_t fmpl_eevr; /* 0x014 FMPL_EEVR - FM Policer Error Event Register */ + volatile uint32_t fmpl_eier; /* 0x018 FMPL_EIER - FM Policer Error Interrupt Enable Register */ + volatile uint32_t fmpl_eifr; /* 0x01C FMPL_EIFR - FM Policer Error Interrupt Force Register */ +/* Global Statistic Counters */ + volatile uint32_t fmpl_rpcnt; /* 0x020 FMPL_RPC - FM Policer RED Packets Counter */ + volatile uint32_t fmpl_ypcnt; /* 0x024 FMPL_YPC - FM Policer YELLOW Packets Counter */ + volatile uint32_t fmpl_rrpcnt; /* 0x028 FMPL_RRPC - FM Policer Recolored RED Packet Counter */ + volatile uint32_t fmpl_rypcnt; /* 0x02C FMPL_RYPC - FM Policer Recolored YELLOW Packet Counter */ + volatile uint32_t fmpl_tpcnt; /* 0x030 FMPL_TPC - FM Policer Total Packet Counter */ + volatile uint32_t fmpl_flmcnt; /* 0x034 FMPL_FLMC - FM Policer Frame Length Mismatch Counter */ + volatile uint32_t fmpl_res0[21]; /* 0x038 - 0x08B Reserved */ +/* Profile RAM Access Registers */ + volatile uint32_t fmpl_par; /* 0x08C FMPL_PAR - FM Policer Profile Action Register*/ + t_FmPcdPlcrInterModuleProfileRegs profileRegs; +/* Error Capture Registers */ + volatile uint32_t fmpl_serc; /* 0x100 FMPL_SERC - FM Policer Soft Error Capture */ + volatile uint32_t fmpl_upcr; /* 0x104 FMPL_UPCR - FM Policer Uninitialized Profile Capture Register */ + volatile uint32_t fmpl_res2; /* 0x108 Reserved */ +/* Debug Registers */ + volatile uint32_t fmpl_res3[61]; /* 0x10C-0x200 Reserved Debug*/ +/* Profile Selection Mapping Registers Per Port-ID (n=1-11, 16) */ + volatile uint32_t fmpl_dpmr; /* 0x200 FMPL_DPMR - FM Policer Default Mapping Register */ + volatile uint32_t fmpl_pmr[63]; /*+default 0x204-0x2FF FMPL_PMR1 - FMPL_PMR63, - FM Policer Profile Mapping Registers. + (for port-ID 1-11, only for supported Port-ID registers) */ +} _PackedType t_FmPcdPlcrRegs; + +typedef _Packed struct { + volatile uint32_t rpclim; + volatile uint32_t rpimac; + volatile uint32_t pmeec; + volatile uint32_t res1[5]; + volatile uint32_t pevr; + volatile uint32_t pever; + volatile uint32_t pevfr; + volatile uint32_t perr; + volatile uint32_t perer; + volatile uint32_t perfr; + volatile uint32_t res2[0xA]; + volatile uint32_t ppsc; + volatile uint32_t res3; + volatile uint32_t pds; + volatile uint32_t l2rrs; + volatile uint32_t l3rrs; + volatile uint32_t l4rrs; + volatile uint32_t srrs; + volatile uint32_t l2rres; + volatile uint32_t l3rres; + volatile uint32_t l4rres; + volatile uint32_t srres; + volatile uint32_t spcs; + volatile uint32_t spscs; + volatile uint32_t hxscs; + volatile uint32_t mrcs; + volatile uint32_t mwcs; + volatile uint32_t mrscs; + volatile uint32_t mwscs; + volatile uint32_t fcscs; +} _PackedType t_FmPcdPrsRegs; + +#define MEM_MAP_END +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(pop) +#endif /* defined(__MWERKS__) && ... */ + + +/***********************************************************************/ +/* Driver's internal structures */ +/***********************************************************************/ + +typedef struct { + t_Handle h_Manip; + bool keepRes; + e_FmPcdEngine nextEngine; + uint8_t parseCode; +} t_FmPcdInfoForManip; + +/**************************************************************************//** + @Description A structure of parameters to communicate + between the port and PCD regarding the KG scheme. +*//***************************************************************************/ +typedef struct { + uint8_t netEnvId; /* in */ + uint8_t numOfDistinctionUnits; /* in */ + uint8_t unitIds[FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS]; /* in */ + uint32_t vector; /* out */ +} t_NetEnvParams; + +typedef struct { + volatile bool lock; + bool used; + uint8_t owners; + uint8_t netEnvId; + uint8_t guestId; + uint8_t baseEntry; + uint16_t sizeOfGrp; + protocolOpt_t optArray[FM_PCD_MAX_NUM_OF_OPTIONS(FM_PCD_MAX_NUM_OF_CLS_PLANS)]; +} t_FmPcdKgClsPlanGrp; + +typedef struct { + volatile bool lock; + bool valid; + uint8_t netEnvId; + uint8_t owners; + uint32_t matchVector; + uint32_t ccUnits; + bool nextRelativePlcrProfile; + uint16_t relativeProfileId; + uint16_t numOfProfiles; + t_FmPcdKgKeyOrder orderedArray; + e_FmPcdEngine nextEngine; + e_FmPcdDoneAction doneAction; + uint8_t pointedOwners; + uint32_t requiredAction; + bool extractedOrs; + uint8_t bitOffsetInPlcrProfile; + bool directPlcr; +} t_FmPcdKgScheme; + +typedef struct { + bool allocated; + uint8_t ownerId; /* guestId for KG in multi-partition only, + portId for PLCR in any environment */ +} t_FmPcdAllocMng; + +typedef struct { + t_FmPcdKgRegs *p_FmPcdKgRegs; + uint32_t schemeExceptionsBitMask; + uint8_t numOfSchemes; + uint8_t schemesIds[FM_PCD_KG_NUM_OF_SCHEMES]; + t_FmPcdKgScheme schemes[FM_PCD_KG_NUM_OF_SCHEMES]; + t_FmPcdKgClsPlanGrp clsPlanGrps[FM_MAX_NUM_OF_PORTS]; + uint8_t emptyClsPlanGrpId; + t_FmPcdAllocMng schemesMng[FM_PCD_KG_NUM_OF_SCHEMES]; /* only for MASTER ! */ + t_FmPcdAllocMng clsPlanBlocksMng[FM_PCD_MAX_NUM_OF_CLS_PLANS/CLS_PLAN_NUM_PER_GRP]; +} t_FmPcdKg; + +typedef struct { + uint16_t profilesBase; + uint16_t numOfProfiles; + t_Handle h_FmPort; +} t_FmPcdPlcrMapParam; + +typedef struct { + bool valid; + volatile bool lock; + t_FmPcdAllocMng profilesMng; + uint8_t pointedOwners; + uint32_t requiredAction; + e_FmPcdEngine nextEngineOnGreen; /**< Green next engine type */ + u_FmPcdPlcrNextEngineParams paramsOnGreen; /**< Green next engine params */ + + e_FmPcdEngine nextEngineOnYellow; /**< Yellow next engine type */ + u_FmPcdPlcrNextEngineParams paramsOnYellow; /**< Yellow next engine params */ + + e_FmPcdEngine nextEngineOnRed; /**< Red next engine type */ + u_FmPcdPlcrNextEngineParams paramsOnRed; /**< Red next engine params */ +} t_FmPcdPlcrProfile; + +typedef struct { + t_FmPcdPlcrRegs *p_FmPcdPlcrRegs; + t_FmPcdPlcrProfile profiles[FM_PCD_PLCR_NUM_ENTRIES]; + uint16_t numOfSharedProfiles; + uint16_t sharedProfilesIds[FM_PCD_PLCR_NUM_ENTRIES]; + t_FmPcdPlcrMapParam portsMapping[FM_MAX_NUM_OF_PORTS]; +} t_FmPcdPlcr; + +typedef struct { + uint32_t *p_SwPrsCode; + uint32_t *p_CurrSwPrs; + uint8_t currLabel; + t_FmPcdPrsRegs *p_FmPcdPrsRegs; + t_FmPcdPrsLabelParams labelsTable[FM_PCD_PRS_NUM_OF_LABELS]; + uint32_t fmPcdPrsPortIdStatistics; +} t_FmPcdPrs; + +typedef struct { + struct { + e_NetHeaderType hdr; + protocolOpt_t opt; /* only one option !! */ + } hdrs[FM_PCD_MAX_NUM_OF_INTERCHANGEABLE_HDRS]; +} t_FmPcdIntDistinctionUnit; + +typedef struct { + e_NetHeaderType hdr; + e_NetHeaderType aliasHdr; +} t_FmPcdNetEnvAliases; + +typedef struct { + volatile bool lock; + bool used; + uint8_t owners; + uint8_t clsPlanGrpId; + t_FmPcdIntDistinctionUnit units[FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS]; + uint32_t unitsVectors[FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS]; + uint32_t lcvs[FM_PCD_PRS_NUM_OF_HDRS]; + uint32_t macsecVector; + t_FmPcdNetEnvAliases aliasHdrs[FM_PCD_MAX_NUM_OF_PRIVATE_HDRS]; +} t_FmPcdNetEnv; + +typedef struct { + bool plcrAutoRefresh; + + uint16_t prsMaxParseCycleLimit; +} t_FmPcdDriverParam; + +typedef struct { + t_Handle h_Fm; + t_Handle h_FmMuram; + uint64_t physicalMuramBase; + volatile bool lock; + t_Handle h_Spinlock; + t_Handle h_IpcSession; /* relevant for guest only */ + bool enabled; + uint8_t guestId; /**< Guest Partition Id */ + uint8_t numOfEnabledGuestPartitionsPcds; + char fmPcdModuleName[MODULE_NAME_SIZE]; + char fmPcdIpcHandlerModuleName[MODULE_NAME_SIZE]; /* relevant for guest only - this is the master's name */ + t_FmPcdNetEnv netEnvs[FM_MAX_NUM_OF_PORTS]; + t_FmPcdKg *p_FmPcdKg; + t_FmPcdPlcr *p_FmPcdPlcr; + t_FmPcdPrs *p_FmPcdPrs; + + t_Handle h_Hc; + + uint32_t exceptions; + t_FmPcdExceptionCallback *f_Exception; + t_FmPcdIdExceptionCallback *f_FmPcdIndexedException; + t_Handle h_App; + + t_FmPcdDriverParam *p_FmPcdDriverParam; +} t_FmPcd; + + +/***********************************************************************/ +/* PCD internal routines */ +/***********************************************************************/ + +/**************************************************************************//** + + @Group FM_PCD_InterModule_grp FM PCD Inter-Module Unit + + @Description FM PCD Inter Module functions - + These are not User API routines but routines that may be called + from other modules. This will be the case in a single core environment, + where instead of useing the XX messeging mechanism, the routines may be + called from other modules. In a multicore environment, the other modules may + be run by other cores and therefor these routines may not be called directly. + + @{ +*//***************************************************************************/ + +t_Error PcdGetVectorForOpt(t_FmPcd *p_FmPcd, uint8_t netEnvId, protocolOpt_t opt, uint32_t *p_Vector); +t_Error PcdGetUnitsVector(t_FmPcd *p_FmPcd, t_NetEnvParams *p_Params); +bool PcdNetEnvIsUnitWithoutOpts(t_FmPcd *p_FmPcd, uint8_t netEnvId, uint32_t unitVector); +t_Error PcdGetClsPlanGrpParams(t_FmPcd *p_FmPcd, t_FmPcdKgInterModuleClsPlanGrpParams *p_GrpParams); +void FmPcdSetClsPlanGrpId(t_FmPcd *p_FmPcd, uint8_t netEnvId, uint8_t clsPlanGrpId); +e_NetHeaderType FmPcdGetAliasHdr(t_FmPcd *p_FmPcd, uint8_t netEnvId, e_NetHeaderType hdr); +uint8_t FmPcdNetEnvGetUnitIdForSingleHdr(t_Handle h_FmPcd, uint8_t netEnvId, e_NetHeaderType hdr); + +t_Handle KgConfig( t_FmPcd *p_FmPcd, t_FmPcdParams *p_FmPcdParams); +t_Error KgInit(t_FmPcd *p_FmPcd); +t_Error KgFree(t_FmPcd *p_FmPcd); +void KgSetClsPlan(t_Handle h_FmPcd, t_FmPcdKgInterModuleClsPlanSet *p_Set); +bool KgIsSchemeAlwaysDirect(t_Handle h_FmPcd, uint8_t schemeId); +void KgEnable(t_FmPcd *p_FmPcd); +void KgDisable(t_FmPcd *p_FmPcd); +t_Error KgAllocClsPlanEntries(t_Handle h_FmPcd, uint16_t numOfClsPlanEntries, uint8_t guestId, uint8_t *p_First); +void KgFreeClsPlanEntries(t_Handle h_FmPcd, uint16_t numOfClsPlanEntries, uint8_t guestId, uint8_t base); + +/* only for MULTI partittion */ +t_Error FmPcdKgAllocSchemes(t_Handle h_FmPcd, uint8_t numOfSchemes, uint8_t guestId, uint8_t *p_SchemesIds); +t_Error FmPcdKgFreeSchemes(t_Handle h_FmPcd, uint8_t numOfSchemes, uint8_t guestId, uint8_t *p_SchemesIds); +/* only for SINGLE partittion */ +t_Error KgBindPortToSchemes(t_Handle h_FmPcd , uint8_t hardwarePortId, uint32_t spReg); + +t_Handle PlcrConfig(t_FmPcd *p_FmPcd, t_FmPcdParams *p_FmPcdParams); +t_Error PlcrInit(t_FmPcd *p_FmPcd); +t_Error PlcrFree(t_FmPcd *p_FmPcd); +void PlcrEnable(t_FmPcd *p_FmPcd); +void PlcrDisable(t_FmPcd *p_FmPcd); +t_Error PlcrFreeProfiles(t_FmPcd *p_FmPcd, uint8_t hardwarePortId, uint16_t num, uint16_t base); +t_Error PlcrAllocProfiles(t_FmPcd *p_FmPcd, uint8_t hardwarePortId, uint16_t numOfProfiles, uint16_t *p_Base); +t_Error PlcrAllocSharedProfiles(t_FmPcd *p_FmPcd, uint16_t numOfProfiles, uint16_t *profilesIds); +void PlcrFreeSharedProfiles(t_FmPcd *p_FmPcd, uint16_t numOfProfiles, uint16_t *profilesIds); + +t_Handle PrsConfig(t_FmPcd *p_FmPcd,t_FmPcdParams *p_FmPcdParams); +t_Error PrsInit(t_FmPcd *p_FmPcd); +void PrsEnable(t_FmPcd *p_FmPcd); +void PrsDisable(t_FmPcd *p_FmPcd); +void PrsFree(t_FmPcd *p_FmPcd ); +t_Error PrsIncludePortInStatistics(t_FmPcd *p_FmPcd, uint8_t hardwarePortId, bool include); + +t_Handle FmPcdCcConfig(t_Handle h_FmPcd, t_FmPcdParams *p_FmPcdParams); +t_Error FmPcdCcGetGrpParams(t_Handle treeId, uint8_t grpId, uint32_t *p_GrpBits, uint8_t *p_GrpBase); +uint8_t FmPcdCcGetOffset(t_Handle h_CcNode); +uint8_t FmPcdCcGetParseCode(t_Handle h_CcNode); +uint16_t FmPcdCcGetNumOfKeys(t_Handle h_CcNode); + +void FmPcdManipUpdateOwner(t_Handle h_Manip, bool add); +t_Error FmPcdManipCheckParamsForCcNextEgine(t_FmPcdCcNextEngineParams *p_InfoForManip, uint32_t *requiredAction); +void FmPcdManipUpdateAdResultForCc(t_Handle h_Manip, t_Handle p_Ad, t_Handle *p_AdNew); +void FmPcdManipUpdateAdContLookupForCc(t_Handle h_Manip, t_Handle p_Ad, t_Handle *p_AdNew, uint32_t adTableOffset); +uint32_t FmPcdManipCheckNia(t_Handle h_FmPcd, t_Handle h_Ad); +void FmPcdManipUpdateOwner(t_Handle h_Manip, bool add); +t_Error FmPcdManipCheckParamsWithCcNodeParams(t_Handle h_Manip, t_Handle h_FmPcdCcNode); + +static __inline__ t_Handle FmPcdGetMuramHandle(t_Handle h_FmPcd) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + ASSERT_COND(p_FmPcd); + return p_FmPcd->h_FmMuram; +} + +static __inline__ uint64_t FmPcdGetMuramPhysBase(t_Handle h_FmPcd) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + ASSERT_COND(p_FmPcd); + return p_FmPcd->physicalMuramBase; +} + + +#endif /* __FM_PCD_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/fm_pcd_ipc.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/fm_pcd_ipc.h @@ -0,0 +1,326 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + @File fm_pcd_ipc.h + + @Description FM PCD Inter-Partition prototypes, structures and definitions. +*//***************************************************************************/ +#ifndef __FM_PCD_IPC_H +#define __FM_PCD_IPC_H + +#include "std_ext.h" + + +/**************************************************************************//** + @Group FM_grp Frame Manager API + + @Description FM API functions, definitions and enums + + @{ +*//***************************************************************************/ + + +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(push,1) +#endif /* defined(__MWERKS__) && ... */ +#define MEM_MAP_START + +/**************************************************************************//** + @Description Structure for getting a sw parser address according to a label + Fields commented 'IN' are passed by the port module to be used + by the FM module. + Fields commented 'OUT' will be filled by FM before returning to port. +*//***************************************************************************/ +typedef _Packed struct t_FmPcdIpcSwPrsLable +{ + uint32_t enumHdr; /**< IN. The existance of this header will envoke + the sw parser code. */ + uint8_t indexPerHdr; /**< IN. Normally 0, if more than one sw parser + attachments for the same header, use this + + index to distinguish between them. */ +} _PackedType t_FmPcdIpcSwPrsLable; + +/**************************************************************************//** + @Description Structure for port-PCD communication. + Fields commented 'IN' are passed by the port module to be used + by the FM module. + Fields commented 'OUT' will be filled by FM before returning to port. + Some fields are optional (depending on configuration) and + will be analized by the port and FM modules accordingly. +*//***************************************************************************/ +typedef struct t_FmPcdIpcKgSchemesParams +{ + uint8_t guestId; /**< IN */ + uint8_t numOfSchemes; /**< IN */ + uint8_t schemesIds[FM_PCD_KG_NUM_OF_SCHEMES]; /**< OUT */ +} _PackedType t_FmPcdIpcKgSchemesParams; + +typedef struct t_FmPcdIpcKgClsPlanParams +{ + uint8_t guestId; /**< IN */ + uint16_t numOfClsPlanEntries; /**< IN */ + uint8_t clsPlanBase; /**< IN in alloc only */ +} _PackedType t_FmPcdIpcKgClsPlanParams; + +typedef _Packed struct t_FmPcdIpcPlcrAllocParams +{ + uint16_t num; + uint8_t hardwarePortId; + uint16_t plcrProfilesBase; +} _PackedType t_FmPcdIpcPlcrAllocParams; + +typedef _Packed struct t_FmPcdIpcSharedPlcrAllocParams +{ + uint16_t num; /**< IN */ + //uint16_t profilesIds[FM_PCD_PLCR_NUM_ENTRIES]; /**< OUT */ + uint32_t sharedProfilesMask[8]; +} _PackedType t_FmPcdIpcSharedPlcrAllocParams; + +typedef _Packed struct t_FmPcdIpcPrsIncludePort +{ + uint8_t hardwarePortId; /* IN */ + bool include; /* IN */ +} _PackedType t_FmPcdIpcPrsIncludePort; + + +#define FM_PCD_MAX_REPLY_SIZE 16 +#define FM_PCD_MAX_MSG_SIZE 36 +#define FM_PCD_MAX_REPLY_BODY_SIZE 36 + +typedef _Packed struct +{ + uint32_t msgId; + uint8_t msgBody[FM_PCD_MAX_MSG_SIZE]; +} _PackedType t_FmPcdIpcMsg; + +typedef _Packed struct t_FmPcdIpcReply +{ + uint32_t error; + uint8_t replyBody[FM_PCD_MAX_REPLY_BODY_SIZE]; +} _PackedType t_FmPcdIpcReply; + +#define MEM_MAP_END +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(pop) +#endif /* defined(__MWERKS__) && ... */ + + + +/**************************************************************************//** + @Function FM_PCD_ALLOC_KG_SCHEMES + + @Description Used by FM PCD front-end in order to allocate KG resources + + @Param[in/out] t_FmPcdIpcKgAllocParams Pointer +*//***************************************************************************/ +#define FM_PCD_ALLOC_KG_SCHEMES 3 + +/**************************************************************************//** + @Function FM_PCD_FREE_KG_SCHEMES + + @Description Used by FM PCD front-end in order to Free KG resources + + @Param[in/out] t_FmPcdIpcKgSchemesParams Pointer +*//***************************************************************************/ +#define FM_PCD_FREE_KG_SCHEMES 4 + +/**************************************************************************//** + @Function FM_PCD_ALLOC_PROFILES + + @Description Used by FM PCD front-end in order to allocate Policer profiles + + @Param[in/out] t_FmPcdIpcKgSchemesParams Pointer +*//***************************************************************************/ +#define FM_PCD_ALLOC_PROFILES 5 + +/**************************************************************************//** + @Function FM_PCD_FREE_PROFILES + + @Description Used by FM PCD front-end in order to Free Policer profiles + + @Param[in/out] t_FmPcdIpcPlcrAllocParams Pointer +*//***************************************************************************/ +#define FM_PCD_FREE_PROFILES 6 + +/**************************************************************************//** + @Function FM_PCD_GET_PHYS_MURAM_BASE + + @Description Used by FM PCD front-end in order to get MURAM base address + + @Param[in/out] t_FmPcdIcPhysAddr Pointer +*//***************************************************************************/ +#define FM_PCD_GET_PHYS_MURAM_BASE 7 + +/**************************************************************************//** + @Function FM_PCD_GET_SW_PRS_OFFSET + + @Description Used by FM front-end to get the SW parser offset of the start of + code relevant to a given label. + + @Param[in/out] t_FmPcdIpcSwPrsLable Pointer +*//***************************************************************************/ +#define FM_PCD_GET_SW_PRS_OFFSET 8 + +/**************************************************************************//** + @Function FM_PCD_ALLOC_SHARED_PROFILES + + @Description Used by FM PCD front-end in order to allocate shared profiles + + @Param[in/out] t_FmPcdIpcSharedPlcrAllocParams Pointer +*//***************************************************************************/ +#define FM_PCD_ALLOC_SHARED_PROFILES 9 + +/**************************************************************************//** + @Function FM_PCD_FREE_SHARED_PROFILES + + @Description Used by FM PCD front-end in order to free shared profiles + + @Param[in/out] t_FmPcdIpcSharedPlcrAllocParams Pointer +*//***************************************************************************/ +#define FM_PCD_FREE_SHARED_PROFILES 10 + +/**************************************************************************//** + @Function FM_PCD_MASTER_IS_ENABLED + + @Description Used by FM front-end in order to verify + PCD enablement. + + @Param[in] bool Pointer +*//***************************************************************************/ +#define FM_PCD_MASTER_IS_ENABLED 15 + +/**************************************************************************//** + @Function FM_PCD_GUEST_DISABLE + + @Description Used by FM front-end to inform back-end when + front-end PCD is disabled + + @Param[in] None +*//***************************************************************************/ +#define FM_PCD_GUEST_DISABLE 16 + +/**************************************************************************//** + @Function FM_PCD_DUMP_REGS + + @Description Used by FM front-end to dump all PCD registers + + @Param[in] None +*//***************************************************************************/ +#define FM_PCD_DUMP_REGS 17 + +/**************************************************************************//** + @Function FM_PCD_KG_DUMP_REGS + + @Description Used by FM front-end to dump KG registers + + @Param[in] None +*//***************************************************************************/ +#define FM_PCD_KG_DUMP_REGS 18 + +/**************************************************************************//** + @Function FM_PCD_PLCR_DUMP_REGS + + @Description Used by FM front-end to dump PLCR registers + + @Param[in] None +*//***************************************************************************/ +#define FM_PCD_PLCR_DUMP_REGS 19 + +/**************************************************************************//** + @Function FM_PCD_PLCR_PROFILE_DUMP_REGS + + @Description Used by FM front-end to dump PLCR specified profile registers + + @Param[in] t_Handle Pointer +*//***************************************************************************/ +#define FM_PCD_PLCR_PROFILE_DUMP_REGS 20 + +/**************************************************************************//** + @Function FM_PCD_PRS_DUMP_REGS + + @Description Used by FM front-end to dump PRS registers + + @Param[in] None +*//***************************************************************************/ +#define FM_PCD_PRS_DUMP_REGS 21 + +/**************************************************************************//** + @Function FM_PCD_FREE_KG_CLSPLAN + + @Description Used by FM PCD front-end in order to Free KG classification plan entries + + @Param[in/out] t_FmPcdIpcKgClsPlanParams Pointer +*//***************************************************************************/ +#define FM_PCD_FREE_KG_CLSPLAN 22 + +/**************************************************************************//** + @Function FM_PCD_ALLOC_KG_CLSPLAN + + @Description Used by FM PCD front-end in order to allocate KG classification plan entries + + @Param[in/out] t_FmPcdIpcKgClsPlanParams Pointer +*//***************************************************************************/ +#define FM_PCD_ALLOC_KG_CLSPLAN 23 + +/**************************************************************************//** + @Function FM_PCD_MASTER_IS_ALIVE + + @Description Used by FM front-end to check that back-end exists + + @Param[in] None +*//***************************************************************************/ +#define FM_PCD_MASTER_IS_ALIVE 24 + +/**************************************************************************//** + @Function FM_PCD_GET_COUNTER + + @Description Used by FM front-end to read PCD counters + + @Param[in/out] t_FmPcdIpcGetCounter Pointer +*//***************************************************************************/ +#define FM_PCD_GET_COUNTER 25 + +/**************************************************************************//** + @Function FM_PCD_PRS_INC_PORT_STATS + + @Description Used by FM front-end to set/clear statistics for port + + @Param[in/out] t_FmPcdIpcPrsIncludePort Pointer +*//***************************************************************************/ +#define FM_PCD_PRS_INC_PORT_STATS 26 +/** @} */ /* end of FM_PCD_IPC_grp group */ +/** @} */ /* end of FM_grp group */ + + +#endif /* __FM_PCD_IPC_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/fm_plcr.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/fm_plcr.c @@ -0,0 +1,1702 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm_plcr.c + + @Description FM PCD POLICER... +*//***************************************************************************/ +#include "std_ext.h" +#include "error_ext.h" +#include "string_ext.h" +#include "debug_ext.h" +#include "net_ext.h" +#include "fm_ext.h" + +#include "fm_common.h" +#include "fm_pcd.h" +#include "fm_hc.h" +#include "fm_pcd_ipc.h" + + +static bool FmPcdPlcrIsProfileShared(t_Handle h_FmPcd, uint16_t absoluteProfileId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint16_t i; + + SANITY_CHECK_RETURN_VALUE(p_FmPcd, E_INVALID_HANDLE, FALSE); + + for(i=0;ip_FmPcdPlcr->numOfSharedProfiles;i++) + if(p_FmPcd->p_FmPcdPlcr->sharedProfilesIds[i] == absoluteProfileId) + return TRUE; + return FALSE; +} + +static t_Error SetProfileNia(t_FmPcd *p_FmPcd, e_FmPcdEngine nextEngine, u_FmPcdPlcrNextEngineParams *p_NextEngineParams, uint32_t *nextAction) +{ + uint32_t nia; + uint16_t absoluteProfileId = (uint16_t)(PTR_TO_UINT(p_NextEngineParams->h_Profile)-1); + uint8_t relativeSchemeId, physicatSchemeId; + + nia = FM_PCD_PLCR_NIA_VALID; + + switch (nextEngine) + { + case e_FM_PCD_DONE : + switch (p_NextEngineParams->action) + { + case e_FM_PCD_DROP_FRAME : + nia |= (NIA_ENG_BMI | NIA_BMI_AC_DISCARD); + break; + case e_FM_PCD_ENQ_FRAME: + nia |= (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME); + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + } + break; + case e_FM_PCD_KG: + physicatSchemeId = (uint8_t)(PTR_TO_UINT(p_NextEngineParams->h_DirectScheme)-1); + relativeSchemeId = FmPcdKgGetRelativeSchemeId(p_FmPcd, physicatSchemeId); + if(relativeSchemeId == FM_PCD_KG_NUM_OF_SCHEMES) + RETURN_ERROR(MAJOR, E_NOT_IN_RANGE, NO_MSG); + if (!FmPcdKgIsSchemeValidSw(p_FmPcd, relativeSchemeId)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid direct scheme.")); + if(!KgIsSchemeAlwaysDirect(p_FmPcd, relativeSchemeId)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Policer Profile may point only to a scheme that is always direct.")); + nia |= NIA_ENG_KG | NIA_KG_DIRECT | physicatSchemeId; + break; + case e_FM_PCD_PLCR: + if(!FmPcdPlcrIsProfileShared(p_FmPcd, absoluteProfileId)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Next profile must be a shared profile")); + if(!FmPcdPlcrIsProfileValid(p_FmPcd, absoluteProfileId)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid profile ")); + nia |= NIA_ENG_PLCR | NIA_PLCR_ABSOLUTE | absoluteProfileId; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + } + + *nextAction = nia; + + return E_OK; +} + +static uint32_t FPP_Function(uint32_t fpp) +{ + if(fpp > 15) + return 15 - (0x1f - fpp); + else + return 16 + fpp; +} + +static void GetInfoRateReg(e_FmPcdPlcrRateMode rateMode, + uint32_t rate, + uint64_t tsuInTenthNano, + uint32_t fppShift, + uint64_t *p_Integer, + uint64_t *p_Fraction) +{ + uint64_t tmp, div; + + if(rateMode == e_FM_PCD_PLCR_BYTE_MODE) + { + /* now we calculate the initial integer for the bigger rate */ + /* from Kbps to Bytes/TSU */ + tmp = (uint64_t)rate; + tmp *= 1000; /* kb --> b */ + tmp *= tsuInTenthNano; /* bps --> bpTsu(in 10nano) */ + + div = 1000000000; /* nano */ + div *= 10; /* 10 nano */ + div *= 8; /* bit to byte */ + } + else + { + /* now we calculate the initial integer for the bigger rate */ + /* from Kbps to Bytes/TSU */ + tmp = (uint64_t)rate; + tmp *= tsuInTenthNano; /* bps --> bpTsu(in 10nano) */ + + div = 1000000000; /* nano */ + div *= 10; /* 10 nano */ + } + *p_Integer = (tmp<h_Fm); /* TimeStamp per nano seconds units */ + /* we want the tsu to count 10 nano for better precision normally tsu is 3.9 nano, now we will get 39 */ + tsuInTenthNanos = (uint32_t)(1000*10/(1<comittedInfoRate > p_NonPassthroughAlgParam->peakOrAccessiveInfoRate) + GetInfoRateReg(p_NonPassthroughAlgParam->rateMode, p_NonPassthroughAlgParam->comittedInfoRate, tsuInTenthNanos, 0, &integer, &fraction); + else + GetInfoRateReg(p_NonPassthroughAlgParam->rateMode, p_NonPassthroughAlgParam->peakOrAccessiveInfoRate, tsuInTenthNanos, 0, &integer, &fraction); + + + /* we shift integer, as in cir/pir it is represented by the MSB 16 bits, and + * the LSB bits are for the fraction */ + temp = (uint32_t)((integer<<16) & 0x00000000FFFFFFFF); + /* temp is effected by the rate. For low rates it may be as low as 0, and then we'll + * take max fpp=31. + * For high rates it will never exceed the 32 bit reg (after the 16 shift), as it is + * limited by the 10G physical port. + */ + if(temp != 0) + { + /* count zeroes left of the higher used bit (in order to shift the value such that + * unused bits may be used for fraction). + */ + while ((temp & 0x80000000) == 0) + { + temp = temp << 1; + fppShift++; + } + if(fppShift > 15) + { + REPORT_ERROR(MAJOR, E_INVALID_SELECTION, ("timeStampPeriod to Information rate ratio is too small")); + return; + } + } + else + { + temp = (uint32_t)fraction; /* fraction will alyas be smaller than 2^16 */ + if(!temp) + /* integer and fraction are 0, we set fpp to its max val */ + fppShift = 31; + else + { + /* integer was 0 but fraction is not. fpp is 16 for the integer, + * + all left zeroes of the fraction. */ + fppShift=16; + /* count zeroes left of the higher used bit (in order to shift the value such that + * unused bits may be used for fraction). + */ + while ((temp & 0x8000) == 0) + { + temp = temp << 1; + fppShift++; + } + } + } + + /* + * This means that the FM TS register will now be used so that 'count' bits are for + * fraction and the rest for integer */ + /* now we re-calculate cir */ + GetInfoRateReg(p_NonPassthroughAlgParam->rateMode, p_NonPassthroughAlgParam->comittedInfoRate, tsuInTenthNanos, fppShift, &integer, &fraction); + *cir = (uint32_t)(integer << 16 | (fraction & 0xFFFF)); + GetInfoRateReg(p_NonPassthroughAlgParam->rateMode, p_NonPassthroughAlgParam->peakOrAccessiveInfoRate, tsuInTenthNanos, fppShift, &integer, &fraction); + *pir_eir = (uint32_t)(integer << 16 | (fraction & 0xFFFF)); + + *cbs = p_NonPassthroughAlgParam->comittedBurstSize; + *pbs_ebs = p_NonPassthroughAlgParam->peakOrAccessiveBurstSize; + + /* get fpp as it should be written to reg.*/ + *fpp = FPP_Function(fppShift); + +} + +static void WritePar(t_FmPcd *p_FmPcd, uint32_t par) +{ + t_FmPcdPlcrRegs *p_FmPcdPlcrRegs = p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs; + + ASSERT_COND(FmIsMaster(p_FmPcd->h_Fm)); + WRITE_UINT32(p_FmPcdPlcrRegs->fmpl_par, par); + + while(GET_UINT32(p_FmPcdPlcrRegs->fmpl_par) & FM_PCD_PLCR_PAR_GO) ; + +} + +/*********************************************/ +/*............Policer Exception..............*/ +/*********************************************/ +static void PcdPlcrException(t_Handle h_FmPcd) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + uint32_t event, mask, force; + + ASSERT_COND(FmIsMaster(p_FmPcd->h_Fm)); + event = GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_evr); + mask = GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_ier); + + event &= mask; + + /* clear the forced events */ + force = GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_ifr); + if(force & event) + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_ifr, force & ~event); + + + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_evr, event); + + if(event & FM_PCD_PLCR_PRAM_SELF_INIT_COMPLETE) + p_FmPcd->f_Exception(p_FmPcd->h_App,e_FM_PCD_PLCR_EXCEPTION_PRAM_SELF_INIT_COMPLETE); + if(event & FM_PCD_PLCR_ATOMIC_ACTION_COMPLETE) + p_FmPcd->f_Exception(p_FmPcd->h_App,e_FM_PCD_PLCR_EXCEPTION_ATOMIC_ACTION_COMPLETE); + +} + +/* ..... */ + +static void PcdPlcrErrorException(t_Handle h_FmPcd) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + uint32_t event, force, captureReg, mask; + + ASSERT_COND(FmIsMaster(p_FmPcd->h_Fm)); + event = GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_eevr); + mask = GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_eier); + + event &= mask; + + /* clear the forced events */ + force = GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_eifr); + if(force & event) + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_eifr, force & ~event); + + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_eevr, event); + + if(event & FM_PCD_PLCR_DOUBLE_ECC) + p_FmPcd->f_Exception(p_FmPcd->h_App,e_FM_PCD_PLCR_EXCEPTION_DOUBLE_ECC); + if(event & FM_PCD_PLCR_INIT_ENTRY_ERROR) + { + captureReg = GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_upcr); + /*ASSERT_COND(captureReg & PLCR_ERR_UNINIT_CAP); + p_UnInitCapt->profileNum = (uint8_t)(captureReg & PLCR_ERR_UNINIT_NUM_MASK); + p_UnInitCapt->portId = (uint8_t)((captureReg & PLCR_ERR_UNINIT_PID_MASK) >>PLCR_ERR_UNINIT_PID_SHIFT) ; + p_UnInitCapt->absolute = (bool)(captureReg & PLCR_ERR_UNINIT_ABSOLUTE_MASK);*/ + p_FmPcd->f_FmPcdIndexedException(p_FmPcd->h_App,e_FM_PCD_PLCR_EXCEPTION_INIT_ENTRY_ERROR,(uint16_t)(captureReg & PLCR_ERR_UNINIT_NUM_MASK)); + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_upcr, PLCR_ERR_UNINIT_CAP); + } +} + +void FmPcdPlcrUpatePointedOwner(t_Handle h_FmPcd, uint16_t absoluteProfileId, bool add) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + ASSERT_COND(p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].valid); + + if(add) + p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].pointedOwners++; + else + p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].pointedOwners--; +} + +uint32_t FmPcdPlcrGetPointedOwners(t_Handle h_FmPcd, uint16_t absoluteProfileId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + ASSERT_COND(p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].valid); + + return p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].pointedOwners; +} +uint32_t FmPcdPlcrGetRequiredAction(t_Handle h_FmPcd, uint16_t absoluteProfileId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + ASSERT_COND(p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].valid); + + return p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].requiredAction; +} + +t_Error FmPcdPlcrAllocProfiles(t_Handle h_FmPcd, uint8_t hardwarePortId, uint16_t numOfProfiles) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_FmPcdIpcPlcrAllocParams ipcPlcrParams; + t_Error err = E_OK; + uint16_t base; + uint16_t swPortIndex = 0; + t_FmPcdIpcMsg msg; + uint32_t replyLength; + t_FmPcdIpcReply reply; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + + if(!numOfProfiles) + return E_OK; + + memset(&ipcPlcrParams, 0, sizeof(ipcPlcrParams)); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + { + /* Alloc resources using IPC messaging */ + memset(&reply, 0, sizeof(reply)); + memset(&msg, 0, sizeof(msg)); + ipcPlcrParams.num = numOfProfiles; + ipcPlcrParams.hardwarePortId = hardwarePortId; + msg.msgId = FM_PCD_ALLOC_PROFILES; + memcpy(msg.msgBody, &ipcPlcrParams, sizeof(ipcPlcrParams)); + replyLength = sizeof(uint32_t) + sizeof(uint16_t); + if ((err = XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId) +sizeof(ipcPlcrParams), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MAJOR, err,NO_MSG); + if (replyLength != sizeof(uint32_t) + sizeof(uint16_t)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + if((t_Error)reply.error != E_OK) + RETURN_ERROR(MAJOR, (t_Error)reply.error, ("PLCR profiles allocation failed")); + + memcpy((uint8_t*)&base, reply.replyBody, sizeof(uint16_t)); + } + else /* master */ + { + err = PlcrAllocProfiles(p_FmPcd, hardwarePortId, numOfProfiles, &base); + if(err) + RETURN_ERROR(MAJOR, err,NO_MSG); + } + HW_PORT_ID_TO_SW_PORT_INDX(swPortIndex, hardwarePortId); + + p_FmPcd->p_FmPcdPlcr->portsMapping[swPortIndex].numOfProfiles = numOfProfiles; + p_FmPcd->p_FmPcdPlcr->portsMapping[swPortIndex].profilesBase = base; + + return E_OK; +} + +t_Error FmPcdPlcrFreeProfiles(t_Handle h_FmPcd, uint8_t hardwarePortId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_FmPcdIpcPlcrAllocParams ipcPlcrParams; + t_Error err = E_OK; + uint16_t swPortIndex = 0; + t_FmPcdIpcMsg msg; + uint32_t replyLength; + t_FmPcdIpcReply reply; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + + HW_PORT_ID_TO_SW_PORT_INDX(swPortIndex, hardwarePortId); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + { + /* Alloc resources using IPC messaging */ + memset(&reply, 0, sizeof(reply)); + memset(&msg, 0, sizeof(msg)); + ipcPlcrParams.num = p_FmPcd->p_FmPcdPlcr->portsMapping[swPortIndex].numOfProfiles; + ipcPlcrParams.hardwarePortId = hardwarePortId; + ipcPlcrParams.plcrProfilesBase = p_FmPcd->p_FmPcdPlcr->portsMapping[swPortIndex].profilesBase; + msg.msgId = FM_PCD_FREE_PROFILES; + memcpy(msg.msgBody, &ipcPlcrParams, sizeof(ipcPlcrParams)); + replyLength = sizeof(uint32_t); + if ((err = XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId) +sizeof(ipcPlcrParams), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MAJOR, err,NO_MSG); + if (replyLength != sizeof(uint32_t)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + if ((t_Error)reply.error != E_OK) + RETURN_ERROR(MINOR, (t_Error)reply.error, ("PLCR Free Profiles failed")); + } + else /* master */ + { + err = PlcrFreeProfiles(p_FmPcd, hardwarePortId, p_FmPcd->p_FmPcdPlcr->portsMapping[swPortIndex].numOfProfiles, p_FmPcd->p_FmPcdPlcr->portsMapping[swPortIndex].profilesBase); + if(err) + RETURN_ERROR(MAJOR, err,NO_MSG); + } + p_FmPcd->p_FmPcdPlcr->portsMapping[swPortIndex].numOfProfiles = 0; + p_FmPcd->p_FmPcdPlcr->portsMapping[swPortIndex].profilesBase = 0; + + return E_OK; +} + +bool FmPcdPlcrIsProfileValid(t_Handle h_FmPcd, uint16_t absoluteProfileId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_FmPcdPlcr *p_FmPcdPlcr = p_FmPcd->p_FmPcdPlcr; + + return p_FmPcdPlcr->profiles[absoluteProfileId].valid; +} + +t_Error PlcrAllocProfiles(t_FmPcd *p_FmPcd, uint8_t hardwarePortId, uint16_t numOfProfiles, uint16_t *p_Base) +{ + t_FmPcdPlcrRegs *p_Regs = p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs; + uint32_t profilesFound, log2Num, tmpReg32; + uint32_t intFlags; + uint16_t first, i; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + + ASSERT_COND(FmIsMaster(p_FmPcd->h_Fm)); + if(!numOfProfiles) + return E_OK; + + ASSERT_COND(hardwarePortId); + + if (numOfProfiles>FM_PCD_PLCR_NUM_ENTRIES) + RETURN_ERROR(MINOR, E_INVALID_VALUE, ("numProfiles is too big.")); + + if (!POWER_OF_2(numOfProfiles)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("numProfiles must be a power of 2.")); + + intFlags = FmPcdLock(p_FmPcd); + + if(GET_UINT32(p_Regs->fmpl_pmr[hardwarePortId-1]) & FM_PCD_PLCR_PMR_V) + { + FmPcdUnlock(p_FmPcd, intFlags); + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("The requesting port has already an allocated profiles window.")); + } + + first = 0; + profilesFound = 0; + for(i=0;ip_FmPcdPlcr->profiles[i].profilesMng.allocated) + { + profilesFound++; + i++; + if(profilesFound == numOfProfiles) + break; + } + else + { + profilesFound = 0; + /* advance i to the next aligned address */ + first = i = (uint8_t)(first + numOfProfiles); + } + } + if(profilesFound == numOfProfiles) + { + for(i = first; ip_FmPcdPlcr->profiles[i].profilesMng.allocated = TRUE; + p_FmPcd->p_FmPcdPlcr->profiles[i].profilesMng.ownerId = hardwarePortId; + } + } + else + { + FmPcdUnlock(p_FmPcd, intFlags); + RETURN_ERROR(MINOR, E_FULL, ("No profiles.")); + } + + /**********************FMPL_PMRx******************/ + LOG2((uint64_t)numOfProfiles, log2Num); + tmpReg32 = first; + tmpReg32 |= log2Num << 16; + tmpReg32 |= FM_PCD_PLCR_PMR_V; + WRITE_UINT32(p_Regs->fmpl_pmr[hardwarePortId-1], tmpReg32); + + *p_Base = first; + + FmPcdUnlock(p_FmPcd, intFlags); + + return E_OK; +} + +t_Error PlcrAllocSharedProfiles(t_FmPcd *p_FmPcd, uint16_t numOfProfiles, uint16_t *profilesIds) +{ + uint32_t profilesFound; + uint16_t i, k=0; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + + ASSERT_COND(FmIsMaster(p_FmPcd->h_Fm)); + if(!numOfProfiles) + return E_OK; + + if (numOfProfiles>FM_PCD_PLCR_NUM_ENTRIES) + RETURN_ERROR(MINOR, E_INVALID_VALUE, ("numProfiles is too big.")); + + profilesFound = 0; + for(i=0;ip_FmPcdPlcr->profiles[i].profilesMng.allocated) + { + profilesFound++; + profilesIds[k] = i; + k++; + if(profilesFound == numOfProfiles) + break; + } + } + if(profilesFound != numOfProfiles) + RETURN_ERROR(MAJOR, E_INVALID_STATE,NO_MSG); + for(i = 0;ip_FmPcdPlcr->profiles[profilesIds[i]].profilesMng.allocated = TRUE; + p_FmPcd->p_FmPcdPlcr->profiles[profilesIds[i]].profilesMng.ownerId = 0; + } + + return E_OK; +} + +t_Error PlcrFreeProfiles(t_FmPcd *p_FmPcd, uint8_t hardwarePortId, uint16_t numOfProfiles, uint16_t base) +{ + t_FmPcdPlcrRegs *p_Regs = p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs; + uint16_t i; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_HANDLE); + + ASSERT_COND(FmIsMaster(p_FmPcd->h_Fm)); + ASSERT_COND(IN_RANGE(1, hardwarePortId, 63)); + WRITE_UINT32(p_Regs->fmpl_pmr[hardwarePortId-1], 0); + + for(i = base; ip_FmPcdPlcr->profiles[i].profilesMng.ownerId == hardwarePortId); + ASSERT_COND(p_FmPcd->p_FmPcdPlcr->profiles[i].profilesMng.allocated); + + p_FmPcd->p_FmPcdPlcr->profiles[i].profilesMng.allocated = FALSE; + p_FmPcd->p_FmPcdPlcr->profiles[i].profilesMng.ownerId = 0; + } + + return E_OK; +} + +void PlcrFreeSharedProfiles(t_FmPcd *p_FmPcd, uint16_t numOfProfiles, uint16_t *profilesIds) +{ + uint16_t i; + + SANITY_CHECK_RETURN(p_FmPcd, E_INVALID_HANDLE); + + ASSERT_COND(FmIsMaster(p_FmPcd->h_Fm)); + for(i=0;ip_FmPcdPlcr->profiles[profilesIds[i]].profilesMng.allocated); + p_FmPcd->p_FmPcdPlcr->profiles[profilesIds[i]].profilesMng.allocated = FALSE; + } +} + +void PlcrEnable(t_FmPcd *p_FmPcd) +{ + t_FmPcdPlcrRegs *p_Regs = p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs; + + WRITE_UINT32(p_Regs->fmpl_gcr, GET_UINT32(p_Regs->fmpl_gcr) | FM_PCD_PLCR_GCR_EN); +} + +void PlcrDisable(t_FmPcd *p_FmPcd) +{ + t_FmPcdPlcrRegs *p_Regs = p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs; + + WRITE_UINT32(p_Regs->fmpl_gcr, GET_UINT32(p_Regs->fmpl_gcr) & ~FM_PCD_PLCR_GCR_EN); +} + +t_Error FM_PCD_SetPlcrStatistics(t_Handle h_FmPcd, bool enable) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t tmpReg32; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdPlcr, E_INVALID_HANDLE); + + if(!FmIsMaster(p_FmPcd->h_Fm)) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("FM_PCD_SetPlcrStatistics - guest mode!")); + + tmpReg32 = GET_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_gcr); + if(enable) + tmpReg32 |= FM_PCD_PLCR_GCR_STEN; + else + tmpReg32 &= ~FM_PCD_PLCR_GCR_STEN; + + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_gcr, tmpReg32); + return E_OK; +} + +t_Error FM_PCD_ConfigPlcrAutoRefreshMode(t_Handle h_FmPcd, bool enable) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdDriverParam, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdPlcr, E_INVALID_HANDLE); + + if(!FmIsMaster(p_FmPcd->h_Fm)) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("FM_PCD_ConfigPlcrAutoRefreshMode - guest mode!")); + + p_FmPcd->p_FmPcdDriverParam->plcrAutoRefresh = enable; + + return E_OK; +} + + +t_Error FmPcdPlcrBuildProfile(t_Handle h_FmPcd, t_FmPcdPlcrProfileParams *p_Profile, t_FmPcdPlcrInterModuleProfileRegs *p_PlcrRegs) +{ + + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_Error err = E_OK; + uint32_t pemode, gnia, ynia, rnia; + +/* Set G, Y, R Nia */ + err = SetProfileNia(p_FmPcd, p_Profile->nextEngineOnGreen, &(p_Profile->paramsOnGreen), &gnia); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + err = SetProfileNia(p_FmPcd, p_Profile->nextEngineOnYellow, &(p_Profile->paramsOnYellow), &ynia); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + err = SetProfileNia(p_FmPcd, p_Profile->nextEngineOnRed, &(p_Profile->paramsOnRed), &rnia); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + + +/* Mode fmpl_pemode */ + pemode = FM_PCD_PLCR_PEMODE_PI; + + switch (p_Profile->algSelection) + { + case e_FM_PCD_PLCR_PASS_THROUGH: + p_PlcrRegs->fmpl_pecir = 0; + p_PlcrRegs->fmpl_pecbs = 0; + p_PlcrRegs->fmpl_pepepir_eir = 0; + p_PlcrRegs->fmpl_pepbs_ebs = 0; + p_PlcrRegs->fmpl_pelts = 0; + p_PlcrRegs->fmpl_pects = 0; + p_PlcrRegs->fmpl_pepts_ets = 0; + pemode &= ~FM_PCD_PLCR_PEMODE_ALG_MASK; + switch (p_Profile->colorMode) + { + case e_FM_PCD_PLCR_COLOR_BLIND: + pemode |= FM_PCD_PLCR_PEMODE_CBLND; + switch (p_Profile->color.dfltColor) + { + case e_FM_PCD_PLCR_GREEN: + pemode &= ~FM_PCD_PLCR_PEMODE_DEFC_MASK; + break; + case e_FM_PCD_PLCR_YELLOW: + pemode |= FM_PCD_PLCR_PEMODE_DEFC_Y; + break; + case e_FM_PCD_PLCR_RED: + pemode |= FM_PCD_PLCR_PEMODE_DEFC_R; + break; + case e_FM_PCD_PLCR_OVERRIDE: + pemode |= FM_PCD_PLCR_PEMODE_DEFC_OVERRIDE; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + } + + break; + case e_FM_PCD_PLCR_COLOR_AWARE: + pemode &= ~FM_PCD_PLCR_PEMODE_CBLND; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + } + break; + + case e_FM_PCD_PLCR_RFC_2698: + /* Select algorithm MODE[ALG] = "01" */ + pemode |= FM_PCD_PLCR_PEMODE_ALG_RFC2698; + if (p_Profile->nonPassthroughAlgParams.comittedInfoRate > p_Profile->nonPassthroughAlgParams.peakOrAccessiveInfoRate) + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("in RFC2698 Peak rate must be equal or larger than comittedInfoRate.")); + goto cont_rfc; + case e_FM_PCD_PLCR_RFC_4115: + /* Select algorithm MODE[ALG] = "10" */ + pemode |= FM_PCD_PLCR_PEMODE_ALG_RFC4115; +cont_rfc: + /* Select Color-Blind / Color-Aware operation (MODE[CBLND]) */ + switch (p_Profile->colorMode) + { + case e_FM_PCD_PLCR_COLOR_BLIND: + pemode |= FM_PCD_PLCR_PEMODE_CBLND; + break; + case e_FM_PCD_PLCR_COLOR_AWARE: + pemode &= ~FM_PCD_PLCR_PEMODE_CBLND; + /*In color aware more select override color interpretation (MODE[OVCLR]) */ + switch (p_Profile->color.override) + { + case e_FM_PCD_PLCR_GREEN: + pemode &= ~FM_PCD_PLCR_PEMODE_OVCLR_MASK; + break; + case e_FM_PCD_PLCR_YELLOW: + pemode |= FM_PCD_PLCR_PEMODE_OVCLR_Y; + break; + case e_FM_PCD_PLCR_RED: + pemode |= FM_PCD_PLCR_PEMODE_OVCLR_R; + break; + case e_FM_PCD_PLCR_OVERRIDE: + pemode |= FM_PCD_PLCR_PEMODE_OVCLR_G_NC; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + } + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + } + /* Select Measurement Unit Mode to BYTE or PACKET (MODE[PKT]) */ + switch (p_Profile->nonPassthroughAlgParams.rateMode) + { + case e_FM_PCD_PLCR_BYTE_MODE : + pemode &= ~FM_PCD_PLCR_PEMODE_PKT; + switch (p_Profile->nonPassthroughAlgParams.byteModeParams.frameLengthSelection) + { + case e_FM_PCD_PLCR_L2_FRM_LEN: + pemode |= FM_PCD_PLCR_PEMODE_FLS_L2; + break; + case e_FM_PCD_PLCR_L3_FRM_LEN: + pemode |= FM_PCD_PLCR_PEMODE_FLS_L3; + break; + case e_FM_PCD_PLCR_L4_FRM_LEN: + pemode |= FM_PCD_PLCR_PEMODE_FLS_L4; + break; + case e_FM_PCD_PLCR_FULL_FRM_LEN: + pemode |= FM_PCD_PLCR_PEMODE_FLS_FULL; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + } + switch (p_Profile->nonPassthroughAlgParams.byteModeParams.rollBackFrameSelection) + { + case e_FM_PCD_PLCR_ROLLBACK_L2_FRM_LEN: + pemode &= ~FM_PCD_PLCR_PEMODE_RBFLS; + break; + case e_FM_PCD_PLCR_ROLLBACK_FULL_FRM_LEN: + pemode |= FM_PCD_PLCR_PEMODE_RBFLS; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + } + break; + case e_FM_PCD_PLCR_PACKET_MODE : + pemode |= FM_PCD_PLCR_PEMODE_PKT; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + } + /* Select timeStamp floating point position (MODE[FPP]) to fit the actual traffic rates. For PACKET + mode with low traffic rates move the fixed point to the left to increase fraction accuracy. For BYTE + mode with high traffic rates move the fixed point to the right to increase integer accuracy. */ + + /* Configure Traffic Parameters*/ + { + uint32_t cir=0, cbs=0, pir_eir=0, pbs_ebs=0, fpp=0; + + calcRates(h_FmPcd, &p_Profile->nonPassthroughAlgParams, &cir, &cbs, &pir_eir, &pbs_ebs, &fpp); + + /* Set Committed Information Rate (CIR) */ + p_PlcrRegs->fmpl_pecir = cir; + /* Set Committed Burst Size (CBS). */ + p_PlcrRegs->fmpl_pecbs = cbs; + /* Set Peak Information Rate (PIR_EIR used as PIR) */ + p_PlcrRegs->fmpl_pepepir_eir = pir_eir; + /* Set Peak Burst Size (PBS_EBS used as PBS) */ + p_PlcrRegs->fmpl_pepbs_ebs = pbs_ebs; + + /* Initialize the Metering Buckets to be full (write them with 0xFFFFFFFF. */ + /* Peak Rate Token Bucket Size (PTS_ETS used as PTS) */ + p_PlcrRegs->fmpl_pepts_ets = 0xFFFFFFFF; + /* Committed Rate Token Bucket Size (CTS) */ + p_PlcrRegs->fmpl_pects = 0xFFFFFFFF; + + /* Set the FPP based on calculation */ + pemode |= (fpp << FM_PCD_PLCR_PEMODE_FPP_SHIFT); + } + break; /* FM_PCD_PLCR_PEMODE_ALG_RFC2698 , FM_PCD_PLCR_PEMODE_ALG_RFC4115 */ + default: + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + } + + p_PlcrRegs->fmpl_pemode = pemode; + + p_PlcrRegs->fmpl_pegnia = gnia; + p_PlcrRegs->fmpl_peynia = ynia; + p_PlcrRegs->fmpl_pernia = rnia; + + /* Zero Counters */ + p_PlcrRegs->fmpl_pegpc = 0; + p_PlcrRegs->fmpl_peypc = 0; + p_PlcrRegs->fmpl_perpc = 0; + p_PlcrRegs->fmpl_perypc = 0; + p_PlcrRegs->fmpl_perrpc = 0; + + return E_OK; +} + +void FmPcdPlcrValidateProfileSw(t_Handle h_FmPcd, uint16_t absoluteProfileId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + ASSERT_COND(!p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].valid); + p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].valid = TRUE; +} + +void FmPcdPlcrInvalidateProfileSw(t_Handle h_FmPcd, uint16_t absoluteProfileId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + ASSERT_COND(p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].valid); + p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].valid = FALSE; +} + +t_Handle PlcrConfig(t_FmPcd *p_FmPcd, t_FmPcdParams *p_FmPcdParams) +{ + t_FmPcdPlcr *p_FmPcdPlcr; + /*uint8_t i=0;*/ + + UNUSED(p_FmPcd); + UNUSED(p_FmPcdParams); + + p_FmPcdPlcr = (t_FmPcdPlcr *) XX_Malloc(sizeof(t_FmPcdPlcr)); + if (!p_FmPcdPlcr) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM Policer structure allocation FAILED")); + return NULL; + } + memset(p_FmPcdPlcr, 0, sizeof(t_FmPcdPlcr)); + if(p_FmPcd->guestId == NCSW_MASTER_ID) + { + p_FmPcdPlcr->p_FmPcdPlcrRegs = (t_FmPcdPlcrRegs *)UINT_TO_PTR(FmGetPcdPlcrBaseAddr(p_FmPcdParams->h_Fm)); + p_FmPcd->p_FmPcdDriverParam->plcrAutoRefresh = DEFAULT_plcrAutoRefresh; + p_FmPcd->exceptions |= (DEFAULT_fmPcdPlcrExceptions | DEFAULT_fmPcdPlcrErrorExceptions); + } + + p_FmPcdPlcr->numOfSharedProfiles = DEFAULT_numOfSharedPlcrProfiles; + + return p_FmPcdPlcr; +} + +t_Error PlcrInit(t_FmPcd *p_FmPcd) +{ + t_FmPcdDriverParam *p_Param = p_FmPcd->p_FmPcdDriverParam; + t_FmPcdPlcr *p_FmPcdPlcr = p_FmPcd->p_FmPcdPlcr; + uint32_t tmpReg32 = 0; + t_Error err = E_OK; + t_FmPcdPlcrRegs *p_Regs = p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs; + t_FmPcdIpcMsg msg; + uint32_t replyLength; + t_FmPcdIpcReply reply; + + if ((p_FmPcd->guestId != NCSW_MASTER_ID) && + (p_FmPcdPlcr->numOfSharedProfiles)) + { + int i, j, index = 0; + uint32_t walking1Mask = 0x80000000; + uint32_t sharedProfilesMask[FM_PCD_PLCR_NUM_ENTRIES/32]; + + memset(sharedProfilesMask, 0, FM_PCD_PLCR_NUM_ENTRIES/32 * sizeof(uint32_t)); + memset(&reply, 0, sizeof(reply)); + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_PCD_ALLOC_SHARED_PROFILES; + memcpy(msg.msgBody, (uint8_t *)&p_FmPcdPlcr->numOfSharedProfiles, sizeof(uint16_t)); + replyLength = sizeof(uint32_t) + sizeof(sharedProfilesMask); + if ((err = XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId)+ sizeof(p_FmPcdPlcr->numOfSharedProfiles), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MAJOR, err,NO_MSG); + if (replyLength != (sizeof(uint32_t) + sizeof(sharedProfilesMask))) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + + memcpy(sharedProfilesMask, reply.replyBody, sizeof(sharedProfilesMask)); + /* translate 8 regs of 32 bits masks into an array of up to 256 indexes. */ + for(i = 0; ip_FmPcdPlcr->sharedProfilesIds[index++] = (uint16_t)(i*32+j); + walking1Mask >>= 1; + } + walking1Mask = 0x80000000; + } + } + return (t_Error)reply.error; + } + + if(p_FmPcdPlcr->numOfSharedProfiles) + { + err = PlcrAllocSharedProfiles(p_FmPcd, p_FmPcdPlcr->numOfSharedProfiles, p_FmPcd->p_FmPcdPlcr->sharedProfilesIds); + if(err) + RETURN_ERROR(MAJOR, err,NO_MSG); + } + + /**********************FMPL_GCR******************/ + tmpReg32 = 0; + tmpReg32 |= FM_PCD_PLCR_GCR_STEN; + if(p_Param->plcrAutoRefresh) + tmpReg32 |= FM_PCD_PLCR_GCR_DAR; + tmpReg32 |= NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME; + + WRITE_UINT32(p_Regs->fmpl_gcr, tmpReg32); + /**********************FMPL_GCR******************/ + + /**********************FMPL_EEVR******************/ + WRITE_UINT32(p_Regs->fmpl_eevr, (FM_PCD_PLCR_DOUBLE_ECC | FM_PCD_PLCR_INIT_ENTRY_ERROR)); + /**********************FMPL_EEVR******************/ + /**********************FMPL_EIER******************/ + tmpReg32 = 0; + if(p_FmPcd->exceptions & FM_PCD_EX_PLCR_DOUBLE_ECC) + { + FmEnableRamsEcc(p_FmPcd->h_Fm); + tmpReg32 |= FM_PCD_PLCR_DOUBLE_ECC; + } + if(p_FmPcd->exceptions & FM_PCD_EX_PLCR_INIT_ENTRY_ERROR) + tmpReg32 |= FM_PCD_PLCR_INIT_ENTRY_ERROR; + WRITE_UINT32(p_Regs->fmpl_eier, tmpReg32); + /**********************FMPL_EIER******************/ + + /**********************FMPL_EVR******************/ + WRITE_UINT32(p_Regs->fmpl_evr, (FM_PCD_PLCR_PRAM_SELF_INIT_COMPLETE | FM_PCD_PLCR_ATOMIC_ACTION_COMPLETE)); + /**********************FMPL_EVR******************/ + /**********************FMPL_IER******************/ + tmpReg32 = 0; + if(p_FmPcd->exceptions & FM_PCD_EX_PLCR_PRAM_SELF_INIT_COMPLETE) + tmpReg32 |= FM_PCD_PLCR_PRAM_SELF_INIT_COMPLETE; + if(p_FmPcd->exceptions & FM_PCD_EX_PLCR_ATOMIC_ACTION_COMPLETE ) + tmpReg32 |= FM_PCD_PLCR_ATOMIC_ACTION_COMPLETE; + WRITE_UINT32(p_Regs->fmpl_ier, tmpReg32); + /**********************FMPL_IER******************/ + + /* register even if no interrupts enabled, to allow future enablement */ + FmRegisterIntr(p_FmPcd->h_Fm, e_FM_MOD_PLCR, 0, e_FM_INTR_TYPE_ERR, PcdPlcrErrorException, p_FmPcd); + FmRegisterIntr(p_FmPcd->h_Fm, e_FM_MOD_PLCR, 0, e_FM_INTR_TYPE_NORMAL, PcdPlcrException, p_FmPcd); + + /* driver initializes one DFLT profile at the last entry*/ + /**********************FMPL_DPMR******************/ + tmpReg32 = 0; + WRITE_UINT32(p_Regs->fmpl_dpmr, tmpReg32); + p_FmPcd->p_FmPcdPlcr->profiles[0].profilesMng.allocated = TRUE; + + return E_OK; +} + +t_Error PlcrFree(t_FmPcd *p_FmPcd) +{ + t_Error err; + t_FmPcdIpcSharedPlcrAllocParams ipcSharedPlcrParams; + t_FmPcdIpcMsg msg; + + FmUnregisterIntr(p_FmPcd->h_Fm, e_FM_MOD_PLCR, 0, e_FM_INTR_TYPE_ERR); + FmUnregisterIntr(p_FmPcd->h_Fm, e_FM_MOD_PLCR, 0, e_FM_INTR_TYPE_NORMAL); + + if(p_FmPcd->p_FmPcdPlcr->numOfSharedProfiles) + { + if(p_FmPcd->guestId != NCSW_MASTER_ID) + { + int i; + memset(ipcSharedPlcrParams.sharedProfilesMask, 0, sizeof(ipcSharedPlcrParams.sharedProfilesMask)); + /* Free resources using IPC messaging */ + ipcSharedPlcrParams.num = p_FmPcd->p_FmPcdPlcr->numOfSharedProfiles; + + /* translate the allocated profile id's to a 32bit * 8regs mask */ + for(i = 0;ip_FmPcdPlcr->numOfSharedProfiles;i++) + ipcSharedPlcrParams.sharedProfilesMask[p_FmPcd->p_FmPcdPlcr->sharedProfilesIds[i]/32] |= (0x80000000 >> (p_FmPcd->p_FmPcdPlcr->sharedProfilesIds[i] % 32)); + + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_PCD_FREE_SHARED_PROFILES; + memcpy(msg.msgBody, &ipcSharedPlcrParams, sizeof(ipcSharedPlcrParams)); + if ((err = XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId)+sizeof(ipcSharedPlcrParams), + NULL, + NULL, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MAJOR, err,NO_MSG); + } + /* else + PlcrFreeSharedProfiles(p_FmPcd, p_FmPcd->p_FmPcdPlcr->numOfSharedProfiles, p_FmPcd->p_FmPcdPlcr->sharedProfilesIds);*/ + } + return E_OK; +} + +t_Error FmPcdPlcrGetAbsoluteProfileId(t_Handle h_FmPcd, + e_FmPcdProfileTypeSelection profileType, + t_Handle h_FmPort, + uint16_t relativeProfile, + uint16_t *p_AbsoluteId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_FmPcdPlcr *p_FmPcdPlcr = p_FmPcd->p_FmPcdPlcr; + uint8_t i; + + switch (profileType) + { + case e_FM_PCD_PLCR_PORT_PRIVATE: + /* get port PCD id from port handle */ + for(i=0;ip_FmPcdPlcr->portsMapping[i].h_FmPort == h_FmPort) + break; + if (i == FM_MAX_NUM_OF_PORTS) + RETURN_ERROR(MAJOR, E_INVALID_STATE , ("Invalid port handle.")); + + if(!p_FmPcd->p_FmPcdPlcr->portsMapping[i].numOfProfiles) + RETURN_ERROR(MAJOR, E_INVALID_SELECTION , ("Port has no allocated profiles")); + if(relativeProfile >= p_FmPcd->p_FmPcdPlcr->portsMapping[i].numOfProfiles) + RETURN_ERROR(MAJOR, E_INVALID_SELECTION , ("Profile id is out of range")); + *p_AbsoluteId = (uint16_t)(p_FmPcd->p_FmPcdPlcr->portsMapping[i].profilesBase + relativeProfile); + break; + case e_FM_PCD_PLCR_SHARED: + if(relativeProfile >= p_FmPcdPlcr->numOfSharedProfiles) + RETURN_ERROR(MAJOR, E_INVALID_SELECTION , ("Profile id is out of range")); + *p_AbsoluteId = (uint16_t)(p_FmPcdPlcr->sharedProfilesIds[relativeProfile]); + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("Invalid policer profile type")); + } + return E_OK; +} + +uint16_t FmPcdPlcrGetPortProfilesBase(t_Handle h_FmPcd, uint8_t hardwarePortId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + uint16_t swPortIndex = 0; + + HW_PORT_ID_TO_SW_PORT_INDX(swPortIndex, hardwarePortId); + + return p_FmPcd->p_FmPcdPlcr->portsMapping[swPortIndex].profilesBase; +} + +uint16_t FmPcdPlcrGetPortNumOfProfiles(t_Handle h_FmPcd, uint8_t hardwarePortId) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + uint16_t swPortIndex = 0; + + HW_PORT_ID_TO_SW_PORT_INDX(swPortIndex, hardwarePortId); + + return p_FmPcd->p_FmPcdPlcr->portsMapping[swPortIndex].numOfProfiles; + +} +uint32_t FmPcdPlcrBuildWritePlcrActionReg(uint16_t absoluteProfileId) +{ + return (uint32_t)(FM_PCD_PLCR_PAR_GO | + ((uint32_t)absoluteProfileId << FM_PCD_PLCR_PAR_PNUM_SHIFT)); +} + +uint32_t FmPcdPlcrBuildWritePlcrActionRegs(uint16_t absoluteProfileId) +{ + return (uint32_t)(FM_PCD_PLCR_PAR_GO | + ((uint32_t)absoluteProfileId << FM_PCD_PLCR_PAR_PNUM_SHIFT) | + FM_PCD_PLCR_PAR_PWSEL_MASK); +} + +bool FmPcdPlcrHwProfileIsValid(uint32_t profileModeReg) +{ + + if(profileModeReg & FM_PCD_PLCR_PEMODE_PI) + return TRUE; + else + return FALSE; +} + +uint32_t FmPcdPlcrBuildReadPlcrActionReg(uint16_t absoluteProfileId) +{ + return (uint32_t)(FM_PCD_PLCR_PAR_GO | + FM_PCD_PLCR_PAR_R | + ((uint32_t)absoluteProfileId << FM_PCD_PLCR_PAR_PNUM_SHIFT) | + FM_PCD_PLCR_PAR_PWSEL_MASK); +} + +uint32_t FmPcdPlcrBuildCounterProfileReg(e_FmPcdPlcrProfileCounters counter) +{ + switch(counter) + { + case(e_FM_PCD_PLCR_PROFILE_GREEN_PACKET_TOTAL_COUNTER): + return FM_PCD_PLCR_PAR_PWSEL_PEGPC; + case(e_FM_PCD_PLCR_PROFILE_YELLOW_PACKET_TOTAL_COUNTER): + return FM_PCD_PLCR_PAR_PWSEL_PEYPC; + case(e_FM_PCD_PLCR_PROFILE_RED_PACKET_TOTAL_COUNTER) : + return FM_PCD_PLCR_PAR_PWSEL_PERPC; + case(e_FM_PCD_PLCR_PROFILE_RECOLOURED_YELLOW_PACKET_TOTAL_COUNTER) : + return FM_PCD_PLCR_PAR_PWSEL_PERYPC; + case(e_FM_PCD_PLCR_PROFILE_RECOLOURED_RED_PACKET_TOTAL_COUNTER) : + return FM_PCD_PLCR_PAR_PWSEL_PERRPC; + default: + REPORT_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + return 0; + } +} + +uint32_t FmPcdPlcrBuildNiaProfileReg(bool green, bool yellow, bool red) +{ + + uint32_t tmpReg32 = 0; + + if(green) + tmpReg32 |= FM_PCD_PLCR_PAR_PWSEL_PEGNIA; + if(yellow) + tmpReg32 |= FM_PCD_PLCR_PAR_PWSEL_PEYNIA; + if(red) + tmpReg32 |= FM_PCD_PLCR_PAR_PWSEL_PERNIA; + + return tmpReg32; +} + +void FmPcdPlcrUpdateRequiredAction(t_Handle h_FmPcd, uint16_t absoluteProfileId, uint32_t requiredAction) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + ASSERT_COND(p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].valid); + + p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].requiredAction = requiredAction; +} + +t_Error FmPcdPlcrProfileTryLock(t_Handle h_FmPcd, uint16_t profileId, bool intr) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + bool ans; + if (intr) + ans = TRY_LOCK(NULL, &p_FmPcd->p_FmPcdPlcr->profiles[profileId].lock); + else + ans = TRY_LOCK(p_FmPcd->h_Spinlock, &p_FmPcd->p_FmPcdPlcr->profiles[profileId].lock); + if (ans) + return E_OK; + return ERROR_CODE(E_BUSY); +} + +void FmPcdPlcrReleaseProfileLock(t_Handle h_FmPcd, uint16_t profileId) +{ + RELEASE_LOCK(((t_FmPcd*)h_FmPcd)->p_FmPcdPlcr->profiles[profileId].lock); +} + +/**************************************************/ +/*............Policer API.........................*/ +/**************************************************/ + +t_Handle FM_PCD_PlcrSetProfile(t_Handle h_FmPcd, + t_FmPcdPlcrProfileParams *p_Profile) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_FmPcdPlcrRegs *p_FmPcdPlcrRegs; + t_FmPcdPlcrInterModuleProfileRegs plcrProfileReg; + uint32_t intFlags; + uint16_t absoluteProfileId; + t_Error err = E_OK; + uint32_t tmpReg32; + + SANITY_CHECK_RETURN_VALUE(p_FmPcd, E_INVALID_HANDLE, NULL); + SANITY_CHECK_RETURN_VALUE(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE, NULL); + SANITY_CHECK_RETURN_VALUE(p_FmPcd->p_FmPcdPlcr, E_INVALID_HANDLE, NULL); + + if (p_FmPcd->h_Hc) + return FmHcPcdPlcrSetProfile(p_FmPcd->h_Hc, p_Profile); + + p_FmPcdPlcrRegs = p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs; + SANITY_CHECK_RETURN_VALUE(p_FmPcdPlcrRegs, E_INVALID_HANDLE, NULL); + + if (p_Profile->modify) + { + absoluteProfileId = (uint16_t)(PTR_TO_UINT(p_Profile->id.h_Profile)-1); + if (absoluteProfileId >= FM_PCD_PLCR_NUM_ENTRIES) + { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("profileId too Big ")); + return NULL; + } + if (FmPcdPlcrProfileTryLock(p_FmPcd, absoluteProfileId, FALSE)) + return NULL; + } + else + { + intFlags = FmPcdLock(p_FmPcd); + err = FmPcdPlcrGetAbsoluteProfileId(h_FmPcd, + p_Profile->id.newParams.profileType, + p_Profile->id.newParams.h_FmPort, + p_Profile->id.newParams.relativeProfileId, + &absoluteProfileId); + if (absoluteProfileId >= FM_PCD_PLCR_NUM_ENTRIES) + { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("profileId too Big ")); + return NULL; + } + if(err) + { + FmPcdUnlock(p_FmPcd, intFlags); + REPORT_ERROR(MAJOR, err, NO_MSG); + return NULL; + } + err = FmPcdPlcrProfileTryLock(p_FmPcd, absoluteProfileId, TRUE); + FmPcdUnlock(p_FmPcd, intFlags); + if (err) + return NULL; + } + + /* if no override, check first that this profile is unused */ + if(!p_Profile->modify) + { + /* read specified profile into profile registers */ + tmpReg32 = FmPcdPlcrBuildReadPlcrActionReg(absoluteProfileId); + intFlags = FmPcdLock(p_FmPcd); + WritePar(p_FmPcd, tmpReg32); + tmpReg32 = GET_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pemode); + FmPcdUnlock(p_FmPcd, intFlags); + if (tmpReg32 & FM_PCD_PLCR_PEMODE_PI) + { + RELEASE_LOCK(p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].lock); + REPORT_ERROR(MAJOR, E_ALREADY_EXISTS, ("Policer Profile is already used")); + return NULL; + } + } + + memset(&plcrProfileReg, 0, sizeof(t_FmPcdPlcrInterModuleProfileRegs)); + + err = FmPcdPlcrBuildProfile(h_FmPcd, p_Profile, &plcrProfileReg); + if(err) + { + RELEASE_LOCK(p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].lock); + REPORT_ERROR(MAJOR, err, NO_MSG); + return NULL; + } + + p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].nextEngineOnGreen = p_Profile->nextEngineOnGreen; + memcpy(&p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].paramsOnGreen, &(p_Profile->paramsOnGreen), sizeof(u_FmPcdPlcrNextEngineParams)); + + p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].nextEngineOnYellow = p_Profile->nextEngineOnYellow; + memcpy(&p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].paramsOnYellow, &(p_Profile->paramsOnYellow), sizeof(u_FmPcdPlcrNextEngineParams)); + + p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].nextEngineOnRed = p_Profile->nextEngineOnRed; + memcpy(&p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].paramsOnRed, &(p_Profile->paramsOnRed), sizeof(u_FmPcdPlcrNextEngineParams)); + + intFlags = FmPcdLock(p_FmPcd); + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pemode , plcrProfileReg.fmpl_pemode); + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pegnia , plcrProfileReg.fmpl_pegnia); + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_peynia , plcrProfileReg.fmpl_peynia); + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pernia , plcrProfileReg.fmpl_pernia); + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pecir , plcrProfileReg.fmpl_pecir); + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pecbs , plcrProfileReg.fmpl_pecbs); + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pepepir_eir,plcrProfileReg.fmpl_pepepir_eir); + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pepbs_ebs,plcrProfileReg.fmpl_pepbs_ebs); + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pelts , plcrProfileReg.fmpl_pelts); + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pects , plcrProfileReg.fmpl_pects); + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pepts_ets,plcrProfileReg.fmpl_pepts_ets); + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pegpc , plcrProfileReg.fmpl_pegpc); + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_peypc , plcrProfileReg.fmpl_peypc); + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_perpc , plcrProfileReg.fmpl_perpc); + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_perypc , plcrProfileReg.fmpl_perypc); + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_perrpc , plcrProfileReg.fmpl_perrpc); + + tmpReg32 = FmPcdPlcrBuildWritePlcrActionRegs(absoluteProfileId); + WritePar(p_FmPcd, tmpReg32); + + FmPcdUnlock(p_FmPcd, intFlags); + + if (!p_Profile->modify) + FmPcdPlcrValidateProfileSw(p_FmPcd,absoluteProfileId); + + RELEASE_LOCK(p_FmPcd->p_FmPcdPlcr->profiles[absoluteProfileId].lock); + + return UINT_TO_PTR((uint64_t)absoluteProfileId+1); +} + +t_Error FM_PCD_PlcrDeleteProfile(t_Handle h_FmPcd, t_Handle h_Profile) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint16_t profileIndx = (uint16_t)(PTR_TO_UINT(h_Profile)-1); + uint32_t tmpReg32, intFlags; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdPlcr, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR((profileIndx < FM_PCD_PLCR_NUM_ENTRIES), E_INVALID_SELECTION); + + if (p_FmPcd->h_Hc) + return FmHcPcdPlcrDeleteProfile(p_FmPcd->h_Hc, h_Profile); + + FmPcdPlcrInvalidateProfileSw(p_FmPcd,profileIndx); + + intFlags = FmPcdLock(p_FmPcd); + WRITE_UINT32(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->profileRegs.fmpl_pemode, ~FM_PCD_PLCR_PEMODE_PI); + + tmpReg32 = FmPcdPlcrBuildWritePlcrActionRegs(profileIndx); + WritePar(p_FmPcd, tmpReg32); + FmPcdUnlock(p_FmPcd, intFlags); + + return E_OK; +} + +/* ......... */ +/***************************************************/ +/*............Policer Profile Counter..............*/ +/***************************************************/ +uint32_t FM_PCD_PlcrGetProfileCounter(t_Handle h_FmPcd, t_Handle h_Profile, e_FmPcdPlcrProfileCounters counter) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint16_t profileIndx = (uint16_t)(PTR_TO_UINT(h_Profile)-1); + t_FmPcdPlcrRegs *p_FmPcdPlcrRegs; + uint32_t intFlags, counterVal = 0; + + SANITY_CHECK_RETURN_VALUE(p_FmPcd, E_INVALID_HANDLE, 0); + SANITY_CHECK_RETURN_VALUE(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE, 0); + SANITY_CHECK_RETURN_VALUE(p_FmPcd->p_FmPcdPlcr, E_INVALID_HANDLE, 0); + + if (p_FmPcd->h_Hc) + return FmHcPcdPlcrGetProfileCounter(p_FmPcd->h_Hc, h_Profile, counter); + + p_FmPcdPlcrRegs = p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs; + SANITY_CHECK_RETURN_VALUE(p_FmPcdPlcrRegs, E_INVALID_HANDLE, 0); + + if (profileIndx >= FM_PCD_PLCR_NUM_ENTRIES) + { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("profileId too Big ")); + return 0; + } + intFlags = FmPcdLock(p_FmPcd); + WritePar(p_FmPcd, FmPcdPlcrBuildReadPlcrActionReg(profileIndx)); + + if(!FmPcdPlcrHwProfileIsValid(GET_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pemode))) + { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("Uninitialized profile")); + FmPcdUnlock(p_FmPcd, intFlags); + return 0; + } + + switch (counter) + { + case e_FM_PCD_PLCR_PROFILE_GREEN_PACKET_TOTAL_COUNTER: + counterVal = (GET_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pegpc)); + break; + case e_FM_PCD_PLCR_PROFILE_YELLOW_PACKET_TOTAL_COUNTER: + counterVal = GET_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_peypc); + break; + case e_FM_PCD_PLCR_PROFILE_RED_PACKET_TOTAL_COUNTER: + counterVal = GET_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_perpc); + break; + case e_FM_PCD_PLCR_PROFILE_RECOLOURED_YELLOW_PACKET_TOTAL_COUNTER: + counterVal = GET_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_perypc); + break; + case e_FM_PCD_PLCR_PROFILE_RECOLOURED_RED_PACKET_TOTAL_COUNTER: + counterVal = GET_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_perrpc); + break; + default: + REPORT_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + break; + } + FmPcdUnlock(p_FmPcd, intFlags); + + return counterVal; +} + + +t_Error FmPcdPlcrCcGetSetParams(t_Handle h_FmPcd, uint16_t profileIndx ,uint32_t requiredAction) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + t_FmPcdPlcr *p_FmPcdPlcr = p_FmPcd->p_FmPcdPlcr; + t_FmPcdPlcrRegs *p_FmPcdPlcrRegs = p_FmPcdPlcr->p_FmPcdPlcrRegs; + uint32_t tmpReg32, intFlags; + + if (p_FmPcd->h_Hc) + return FmHcPcdPlcrCcGetSetParams(p_FmPcd->h_Hc, profileIndx, requiredAction); + + if (profileIndx >= FM_PCD_PLCR_NUM_ENTRIES) + RETURN_ERROR(MAJOR, E_INVALID_VALUE,("Policer profile out of range")); + + if (FmPcdPlcrProfileTryLock(p_FmPcd, profileIndx, FALSE)) + RETURN_ERROR(MAJOR, E_INVALID_STATE,("Lock on PP FAILED")); + + intFlags = FmPcdLock(p_FmPcd); + WritePar(p_FmPcd, FmPcdPlcrBuildReadPlcrActionReg(profileIndx)); + + if(!FmPcdPlcrHwProfileIsValid(GET_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pemode))) + { + FmPcdUnlock(p_FmPcd, intFlags); + RELEASE_LOCK(p_FmPcd->p_FmPcdPlcr->profiles[profileIndx].lock); + RETURN_ERROR(MAJOR, E_INVALID_VALUE,("Policer profile is not valid")); + } + + ASSERT_COND(p_FmPcd->p_FmPcdPlcr->profiles[profileIndx].valid); + + if(!p_FmPcd->p_FmPcdPlcr->profiles[profileIndx].pointedOwners || + !(p_FmPcd->p_FmPcdPlcr->profiles[profileIndx].requiredAction & requiredAction)) + { + if(requiredAction & UPDATE_NIA_ENQ_WITHOUT_DMA) + { + if((p_FmPcd->p_FmPcdPlcr->profiles[profileIndx].nextEngineOnGreen!= e_FM_PCD_DONE) || + (p_FmPcd->p_FmPcdPlcr->profiles[profileIndx].nextEngineOnYellow!= e_FM_PCD_DONE) || + (p_FmPcd->p_FmPcdPlcr->profiles[profileIndx].nextEngineOnRed!= e_FM_PCD_DONE)) + { + FmPcdUnlock(p_FmPcd, intFlags); + RETURN_ERROR (MAJOR, E_OK, ("In this case the next engine can be e_FM_PCD_DONE")); + } + + if(p_FmPcd->p_FmPcdPlcr->profiles[profileIndx].paramsOnGreen.action == e_FM_PCD_ENQ_FRAME) + { + tmpReg32 = GET_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pegnia); + if(!(tmpReg32 & (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME))) + { + FmPcdUnlock(p_FmPcd, intFlags); + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Next engine of this policer profile has to be assigned to FM_PCD_DONE")); + } + tmpReg32 |= NIA_BMI_AC_ENQ_FRAME_WITHOUT_DMA; + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pegnia, tmpReg32); + tmpReg32 = FmPcdPlcrBuildWritePlcrActionReg(profileIndx); + tmpReg32 |= FM_PCD_PLCR_PAR_PWSEL_PEGNIA; + WritePar(p_FmPcd, tmpReg32); + } + + if(p_FmPcd->p_FmPcdPlcr->profiles[profileIndx].paramsOnYellow.action == e_FM_PCD_ENQ_FRAME) + { + tmpReg32 = GET_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_peynia); + if(!(tmpReg32 & (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME))) + { + FmPcdUnlock(p_FmPcd, intFlags); + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Next engine of this policer profile has to be assigned to FM_PCD_DONE")); + } + tmpReg32 |= NIA_BMI_AC_ENQ_FRAME_WITHOUT_DMA; + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_peynia, tmpReg32); + tmpReg32 = FmPcdPlcrBuildWritePlcrActionReg(profileIndx); + tmpReg32 |= FM_PCD_PLCR_PAR_PWSEL_PEYNIA; + WritePar(p_FmPcd, tmpReg32); + } + + if(p_FmPcd->p_FmPcdPlcr->profiles[profileIndx].paramsOnRed.action == e_FM_PCD_ENQ_FRAME) + { + tmpReg32 = GET_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pernia); + if(!(tmpReg32 & (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME))) + { + FmPcdUnlock(p_FmPcd, intFlags); + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Next engine of this policer profile has to be assigned to FM_PCD_DONE")); + } + tmpReg32 |= NIA_BMI_AC_ENQ_FRAME_WITHOUT_DMA; + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pernia, tmpReg32); + tmpReg32 = FmPcdPlcrBuildWritePlcrActionReg(profileIndx); + tmpReg32 |= FM_PCD_PLCR_PAR_PWSEL_PERNIA; + WritePar(p_FmPcd, tmpReg32); + } + } + } + FmPcdUnlock(p_FmPcd, intFlags); + + p_FmPcd->p_FmPcdPlcr->profiles[profileIndx].pointedOwners += 1; + p_FmPcd->p_FmPcdPlcr->profiles[profileIndx].requiredAction |= requiredAction; + + RELEASE_LOCK(p_FmPcd->p_FmPcdPlcr->profiles[profileIndx].lock); + + return E_OK; +} + +t_Error FM_PCD_PlcrSetProfileCounter(t_Handle h_FmPcd, t_Handle h_Profile, e_FmPcdPlcrProfileCounters counter, uint32_t value) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint16_t profileIndx = (uint16_t)(PTR_TO_UINT(h_Profile)-1); + t_FmPcdPlcrRegs *p_FmPcdPlcrRegs; + uint32_t tmpReg32, intFlags; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdPlcr, E_INVALID_HANDLE); + + if (p_FmPcd->h_Hc) + return FmHcPcdPlcrSetProfileCounter(p_FmPcd->h_Hc, h_Profile, counter, value); + + p_FmPcdPlcrRegs = p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs; + SANITY_CHECK_RETURN_ERROR(p_FmPcdPlcrRegs, E_INVALID_HANDLE); + + intFlags = FmPcdLock(p_FmPcd); + switch (counter) + { + case e_FM_PCD_PLCR_PROFILE_GREEN_PACKET_TOTAL_COUNTER: + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_pegpc, value); + break; + case e_FM_PCD_PLCR_PROFILE_YELLOW_PACKET_TOTAL_COUNTER: + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_peypc, value); + break; + case e_FM_PCD_PLCR_PROFILE_RED_PACKET_TOTAL_COUNTER: + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_perpc, value); + break; + case e_FM_PCD_PLCR_PROFILE_RECOLOURED_YELLOW_PACKET_TOTAL_COUNTER: + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_perypc ,value); + break; + case e_FM_PCD_PLCR_PROFILE_RECOLOURED_RED_PACKET_TOTAL_COUNTER: + WRITE_UINT32(p_FmPcdPlcrRegs->profileRegs.fmpl_perrpc ,value); + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, NO_MSG); + } + + /* Activate the atomic write action by writing FMPL_PAR with: GO=1, RW=1, PSI=0, PNUM = + * Profile Number, PWSEL=0xFFFF (select all words). + */ + tmpReg32 = FmPcdPlcrBuildWritePlcrActionReg(profileIndx); + tmpReg32 |= FmPcdPlcrBuildCounterProfileReg(counter); + WritePar(p_FmPcd, tmpReg32); + FmPcdUnlock(p_FmPcd, intFlags); + + return E_OK; +} + +t_Error FM_PCD_ConfigPlcrNumOfSharedProfiles(t_Handle h_FmPcd, uint16_t numOfSharedPlcrProfiles) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdDriverParam, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdPlcr, E_INVALID_HANDLE); + + p_FmPcd->p_FmPcdPlcr->numOfSharedProfiles = numOfSharedPlcrProfiles; + + return E_OK; +} + + +/* ... */ + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +t_Error FM_PCD_PlcrDumpRegs(t_Handle h_FmPcd) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + int i = 0; + t_FmPcdIpcMsg msg; + + DECLARE_DUMP; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdPlcr, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_PCD_PLCR_DUMP_REGS; + return XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId), + NULL, + NULL, + NULL, + NULL); + } + else + { + DUMP_SUBTITLE(("\n")); + DUMP_TITLE(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs, ("FmPcdPlcrRegs Regs")); + + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_gcr); + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_gsr); + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_evr); + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_ier); + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_ifr); + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_eevr); + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_eier); + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_eifr); + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_rpcnt); + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_ypcnt); + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_rrpcnt); + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_rypcnt); + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_tpcnt); + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_flmcnt); + + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_serc); + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_upcr); + DUMP_VAR(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs,fmpl_dpmr); + + + DUMP_TITLE(&p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_pmr, ("fmpl_pmr")); + DUMP_SUBSTRUCT_ARRAY(i, 63) + { + DUMP_MEMORY(&p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_pmr[i], sizeof(uint32_t)); + } + + return E_OK; + } +} + +t_Error FM_PCD_PlcrProfileDumpRegs(t_Handle h_FmPcd, t_Handle h_Profile) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_FmPcdPlcrInterModuleProfileRegs *p_ProfilesRegs; + uint32_t tmpReg, intFlags; + uint16_t profileIndx = (uint16_t)(PTR_TO_UINT(h_Profile)-1); + t_FmPcdIpcMsg msg; + + DECLARE_DUMP; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdPlcr, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_PCD_PLCR_PROFILE_DUMP_REGS; + memcpy(msg.msgBody, (uint8_t *)&h_Profile, sizeof(uint32_t)); + return XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId) + sizeof(uint32_t), + NULL, + NULL, + NULL, + NULL); + } + else + { + DUMP_SUBTITLE(("\n")); + DUMP_TITLE(p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs, ("FmPcdPlcrRegs Profile Regs")); + + p_ProfilesRegs = &p_FmPcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->profileRegs; + + tmpReg = FmPcdPlcrBuildReadPlcrActionReg((uint16_t)profileIndx); + intFlags = FmPcdLock(p_FmPcd); + WritePar(p_FmPcd, tmpReg); + + DUMP_TITLE(p_ProfilesRegs, ("Profile %d regs", profileIndx)); + + DUMP_VAR(p_ProfilesRegs, fmpl_pemode); + DUMP_VAR(p_ProfilesRegs, fmpl_pegnia); + DUMP_VAR(p_ProfilesRegs, fmpl_peynia); + DUMP_VAR(p_ProfilesRegs, fmpl_pernia); + DUMP_VAR(p_ProfilesRegs, fmpl_pecir); + DUMP_VAR(p_ProfilesRegs, fmpl_pecbs); + DUMP_VAR(p_ProfilesRegs, fmpl_pepepir_eir); + DUMP_VAR(p_ProfilesRegs, fmpl_pepbs_ebs); + DUMP_VAR(p_ProfilesRegs, fmpl_pelts); + DUMP_VAR(p_ProfilesRegs, fmpl_pects); + DUMP_VAR(p_ProfilesRegs, fmpl_pepts_ets); + DUMP_VAR(p_ProfilesRegs, fmpl_pegpc); + DUMP_VAR(p_ProfilesRegs, fmpl_peypc); + DUMP_VAR(p_ProfilesRegs, fmpl_perpc); + DUMP_VAR(p_ProfilesRegs, fmpl_perypc); + DUMP_VAR(p_ProfilesRegs, fmpl_perrpc); + FmPcdUnlock(p_FmPcd, intFlags); + + return E_OK; + } +} +#endif /* (defined(DEBUG_ERRORS) && ... */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/fm_prs.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Pcd/fm_prs.c @@ -0,0 +1,517 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm_pcd.c + + @Description FM PCD ... +*//***************************************************************************/ +#include "std_ext.h" +#include "error_ext.h" +#include "string_ext.h" +#include "debug_ext.h" +#include "net_ext.h" + +#include "fm_common.h" +#include "fm_pcd.h" +#include "fm_pcd_ipc.h" + + +t_Handle PrsConfig(t_FmPcd *p_FmPcd,t_FmPcdParams *p_FmPcdParams) +{ + t_FmPcdPrs *p_FmPcdPrs; + uintptr_t baseAddr; + + UNUSED(p_FmPcd); + UNUSED(p_FmPcdParams); + + p_FmPcdPrs = (t_FmPcdPrs *) XX_Malloc(sizeof(t_FmPcdPrs)); + if (!p_FmPcdPrs) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM Parser structure allocation FAILED")); + return NULL; + } + memset(p_FmPcdPrs, 0, sizeof(t_FmPcdPrs)); + + if (p_FmPcd->guestId == NCSW_MASTER_ID) + { + baseAddr = FmGetPcdPrsBaseAddr(p_FmPcdParams->h_Fm); + p_FmPcdPrs->p_SwPrsCode = (uint32_t *)UINT_TO_PTR(baseAddr); + p_FmPcdPrs->p_FmPcdPrsRegs = (t_FmPcdPrsRegs *)UINT_TO_PTR(baseAddr + PRS_REGS_OFFSET); + } + + p_FmPcdPrs->fmPcdPrsPortIdStatistics = 0; + p_FmPcd->p_FmPcdDriverParam->prsMaxParseCycleLimit = DEFAULT_prsMaxParseCycleLimit; + p_FmPcd->exceptions |= (DEFAULT_fmPcdPrsErrorExceptions | DEFAULT_fmPcdPrsExceptions); + + return p_FmPcdPrs; +} + +static void PcdPrsErrorException(t_Handle h_FmPcd) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + uint32_t event, mask, force; + + ASSERT_COND(p_FmPcd->guestId == NCSW_MASTER_ID); + event = GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->perr); + mask = GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->perer); + + event &= mask; + + /* clear the forced events */ + force = GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->perfr); + if(force & event) + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->perfr, force & ~event); + + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->perr, event); + + DBG(TRACE, ("parser error - 0x%08x\n",event)); + + if(event & FM_PCD_PRS_DOUBLE_ECC) + p_FmPcd->f_Exception(p_FmPcd->h_App,e_FM_PCD_PRS_EXCEPTION_DOUBLE_ECC); +} + +static void PcdPrsException(t_Handle h_FmPcd) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + uint32_t event, force; + + ASSERT_COND(p_FmPcd->guestId == NCSW_MASTER_ID); + event = GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->pevr); + event &= GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->pever); + + ASSERT_COND(event & FM_PCD_PRS_SINGLE_ECC); + + DBG(TRACE, ("parser event - 0x%08x\n",event)); + + /* clear the forced events */ + force = GET_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->pevfr); + if(force & event) + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->pevfr, force & ~event); + + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->pevr, event); + + p_FmPcd->f_Exception(p_FmPcd->h_App,e_FM_PCD_PRS_EXCEPTION_SINGLE_ECC); +} + +static uint32_t GetSwPrsOffset(t_Handle h_FmPcd, e_NetHeaderType hdr, uint8_t indexPerHdr) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + int i; + t_FmPcdPrsLabelParams *p_Label; + + SANITY_CHECK_RETURN_VALUE(p_FmPcd, E_INVALID_HANDLE, 0); + SANITY_CHECK_RETURN_VALUE(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_HANDLE, 0); + + ASSERT_COND(p_FmPcd->guestId == NCSW_MASTER_ID); + ASSERT_COND(p_FmPcd->p_FmPcdPrs->currLabel < FM_PCD_PRS_NUM_OF_LABELS); + + for (i=0; i < p_FmPcd->p_FmPcdPrs->currLabel; i++) + { + p_Label = &p_FmPcd->p_FmPcdPrs->labelsTable[i]; + + if ((hdr == p_Label->hdr) && (indexPerHdr == p_Label->indexPerHdr)) + return p_Label->instructionOffset; + } + + REPORT_ERROR(MAJOR, E_NOT_FOUND, ("Sw Parser attachment Not found")); + return (uint32_t)ILLEGAL_BASE; +} + +t_Error PrsInit(t_FmPcd *p_FmPcd) +{ + t_FmPcdDriverParam *p_Param = p_FmPcd->p_FmPcdDriverParam; + t_FmPcdPrsRegs *p_Regs = p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs; + uint32_t tmpReg; + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + return E_OK; + + ASSERT_COND(p_FmPcd->guestId == NCSW_MASTER_ID); + +#ifdef FM_PRS_MEM_ERRATA_FMAN_SW003 + { + uint32_t i; + uint32_t regsToGlobalOffset = 0x840; + uint32_t firstPortToGlobalOffset = 0x45800; + uint64_t globalAddr = PTR_TO_UINT(p_Regs) - regsToGlobalOffset; + uint32_t firstPortAddr = (uint32_t)(globalAddr - (uint64_t)firstPortToGlobalOffset); + uint32_t portSize = 0x1000; + t_FmRevisionInfo revInfo; + + FM_GetRevision(p_FmPcd->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + { + /* clear all parser memory */ + IOMemSet32(UINT_TO_PTR(globalAddr), 0x00000000, 0x800); + for(i = 0;i<16;i++) + IOMemSet32(UINT_TO_PTR(firstPortAddr+i*portSize), (uint8_t)0x00000000, (uint32_t)0x80); + } + } +#endif /* FM_PRS_MEM_ERRATA_FMAN_SW003 */ + + /**********************RPCLIM******************/ + WRITE_UINT32(p_Regs->rpclim, (uint32_t)p_Param->prsMaxParseCycleLimit); + /**********************FMPL_RPCLIM******************/ + + /* register even if no interrupts enabled, to allow future enablement */ + FmRegisterIntr(p_FmPcd->h_Fm, e_FM_MOD_PRS, 0, e_FM_INTR_TYPE_ERR, PcdPrsErrorException, p_FmPcd); + + /* register even if no interrupts enabled, to allow future enablement */ + FmRegisterIntr(p_FmPcd->h_Fm, e_FM_MOD_PRS, 0, e_FM_INTR_TYPE_NORMAL, PcdPrsException, p_FmPcd); + + /**********************PEVR******************/ + WRITE_UINT32(p_Regs->pevr, (FM_PCD_PRS_SINGLE_ECC | FM_PCD_PRS_PORT_IDLE_STS) ); + /**********************PEVR******************/ + + /**********************PEVER******************/ + if(p_FmPcd->exceptions & FM_PCD_EX_PRS_SINGLE_ECC) + { + FmEnableRamsEcc(p_FmPcd->h_Fm); + WRITE_UINT32(p_Regs->pever, FM_PCD_PRS_SINGLE_ECC); + } + else + WRITE_UINT32(p_Regs->pever, 0); + /**********************PEVER******************/ + + /**********************PERR******************/ + WRITE_UINT32(p_Regs->perr, FM_PCD_PRS_DOUBLE_ECC); + + /**********************PERR******************/ + + /**********************PERER******************/ + tmpReg = 0; + if(p_FmPcd->exceptions & FM_PCD_EX_PRS_DOUBLE_ECC) + { + FmEnableRamsEcc(p_FmPcd->h_Fm); + tmpReg |= FM_PCD_PRS_DOUBLE_ECC; + } + WRITE_UINT32(p_Regs->perer, tmpReg); + /**********************PERER******************/ + + /**********************PPCS******************/ + WRITE_UINT32(p_Regs->ppsc, p_FmPcd->p_FmPcdPrs->fmPcdPrsPortIdStatistics); + /**********************PPCS******************/ + +#ifdef FM_PRS_L4_SHELL_ERRATA_FMANb + { + uint32_t i, j; + t_FmRevisionInfo revInfo; + uint8_t swPrsL4Patch[] = SW_PRS_L4_PATCH; + + FM_GetRevision(p_FmPcd->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + { + /* load sw parser L4 patch */ + for(i=0;ip_FmPcdPrs->p_SwPrsCode+ FM_PCD_PRS_SW_OFFSET/4 + i), tmpReg); + } + p_FmPcd->p_FmPcdPrs->p_CurrSwPrs = FM_PCD_PRS_SW_OFFSET/4 + p_FmPcd->p_FmPcdPrs->p_SwPrsCode+sizeof(swPrsL4Patch)/4; + } + } +#endif /* FM_PRS_L4_SHELL_ERRATA_FMANb */ + + return E_OK; +} + +void PrsFree(t_FmPcd *p_FmPcd ) +{ + ASSERT_COND(p_FmPcd->guestId == NCSW_MASTER_ID); + FmUnregisterIntr(p_FmPcd->h_Fm, e_FM_MOD_PRS, 0, e_FM_INTR_TYPE_ERR); + /* register even if no interrupts enabled, to allow future enablement */ + FmUnregisterIntr(p_FmPcd->h_Fm, e_FM_MOD_PRS, 0, e_FM_INTR_TYPE_NORMAL); +} + +void PrsEnable(t_FmPcd *p_FmPcd ) +{ + t_FmPcdPrsRegs *p_Regs = p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs; + + ASSERT_COND(p_FmPcd->guestId == NCSW_MASTER_ID); + WRITE_UINT32(p_Regs->rpimac, GET_UINT32(p_Regs->rpimac) | FM_PCD_PRS_RPIMAC_EN); +} + +void PrsDisable(t_FmPcd *p_FmPcd ) +{ + t_FmPcdPrsRegs *p_Regs = p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs; + + ASSERT_COND(p_FmPcd->guestId == NCSW_MASTER_ID); + WRITE_UINT32(p_Regs->rpimac, GET_UINT32(p_Regs->rpimac) & ~FM_PCD_PRS_RPIMAC_EN); +} + +t_Error PrsIncludePortInStatistics(t_FmPcd *p_FmPcd, uint8_t hardwarePortId, bool include) +{ + uint32_t bitMask = 0; + uint8_t prsPortId; + + SANITY_CHECK_RETURN_ERROR((hardwarePortId >=1 && hardwarePortId <= 16), E_INVALID_VALUE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdPrs, E_INVALID_HANDLE); + + GET_FM_PCD_PRS_PORT_ID(prsPortId, hardwarePortId); + GET_FM_PCD_INDEX_FLAG(bitMask, prsPortId); + + if(include) + p_FmPcd->p_FmPcdPrs->fmPcdPrsPortIdStatistics |= bitMask; + else + p_FmPcd->p_FmPcdPrs->fmPcdPrsPortIdStatistics &= ~bitMask; + + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->ppsc, p_FmPcd->p_FmPcdPrs->fmPcdPrsPortIdStatistics); + + return E_OK; +} + +t_Error FmPcdPrsIncludePortInStatistics(t_Handle h_FmPcd, uint8_t hardwarePortId, bool include) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + t_FmPcdIpcPrsIncludePort prsIncludePortParams; + t_FmPcdIpcMsg msg; + t_Error err; + + SANITY_CHECK_RETURN_ERROR((hardwarePortId >=1 && hardwarePortId <= 16), E_INVALID_VALUE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdPrs, E_INVALID_HANDLE); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + { + prsIncludePortParams.hardwarePortId = hardwarePortId; + prsIncludePortParams.include = include; + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_PCD_PRS_INC_PORT_STATS; + memcpy(msg.msgBody, &prsIncludePortParams, sizeof(prsIncludePortParams)); + if ((err = XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId) +sizeof(prsIncludePortParams), + NULL, + NULL, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + return E_OK; + } + return PrsIncludePortInStatistics(p_FmPcd, hardwarePortId, include); +} + +uint32_t FmPcdGetSwPrsOffset(t_Handle h_FmPcd, e_NetHeaderType hdr, uint8_t indexPerHdr) +{ + t_FmPcd *p_FmPcd = (t_FmPcd *)h_FmPcd; + t_Error err = E_OK; + t_FmPcdIpcSwPrsLable labelParams; + t_FmPcdIpcMsg msg; + uint32_t prsOffset = 0; + t_FmPcdIpcReply reply; + uint32_t replyLength; + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + { + memset(&reply, 0, sizeof(reply)); + memset(&msg, 0, sizeof(msg)); + labelParams.enumHdr = (uint32_t)hdr; + labelParams.indexPerHdr = indexPerHdr; + msg.msgId = FM_PCD_GET_SW_PRS_OFFSET; + memcpy(msg.msgBody, &labelParams, sizeof(labelParams)); + replyLength = sizeof(uint32_t) + sizeof(uint32_t); + if ((err = XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId) +sizeof(labelParams), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + if(replyLength != sizeof(uint32_t) + sizeof(uint32_t)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + + memcpy((uint8_t*)&prsOffset, reply.replyBody, sizeof(uint32_t)); + return prsOffset; + } + + return GetSwPrsOffset(h_FmPcd, hdr, indexPerHdr); +} + +void FM_PCD_SetPrsStatistics(t_Handle h_FmPcd, bool enable) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + SANITY_CHECK_RETURN(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN(p_FmPcd->p_FmPcdPrs, E_INVALID_HANDLE); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + { + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("FM_PCD_SetPrsStatistics - guest mode!")); + return; + } + if(enable) + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->ppsc, FM_PCD_PRS_PPSC_ALL_PORTS); + else + WRITE_UINT32(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs->ppsc, 0); + +} + +t_Error FM_PCD_PrsLoadSw(t_Handle h_FmPcd, t_FmPcdPrsSwParams *p_SwPrs) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + uint32_t *p_LoadTarget, tmpReg; + int i, j; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdPrs, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_SwPrs, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->enabled, E_INVALID_HANDLE); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("FM_PCD_PrsLoadSw - guest mode!")); + + if(!p_SwPrs->override) + { + if(p_FmPcd->p_FmPcdPrs->p_CurrSwPrs > p_FmPcd->p_FmPcdPrs->p_SwPrsCode + p_SwPrs->base*2/4) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("SW parser base must be larger than current loaded code")); + } + if(p_SwPrs->size > FM_PCD_SW_PRS_SIZE - FM_PCD_PRS_SW_TAIL_SIZE - p_SwPrs->base*2) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("p_SwPrs->size may not be larger than MAX_SW_PRS_CODE_SIZE")); + if(p_SwPrs->size % 4) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("p_SwPrs->size must be divisible by 4")); + + /* save sw parser labels */ + if(p_SwPrs->override) + p_FmPcd->p_FmPcdPrs->currLabel = 0; + if(p_FmPcd->p_FmPcdPrs->currLabel+ p_SwPrs->numOfLabels > FM_PCD_PRS_NUM_OF_LABELS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Exceeded number of labels allowed ")); + memcpy(&p_FmPcd->p_FmPcdPrs->labelsTable[p_FmPcd->p_FmPcdPrs->currLabel], p_SwPrs->labelsTable, p_SwPrs->numOfLabels*sizeof(t_FmPcdPrsLabelParams)); + p_FmPcd->p_FmPcdPrs->currLabel += p_SwPrs->numOfLabels; + /* load sw parser code */ + p_LoadTarget = p_FmPcd->p_FmPcdPrs->p_SwPrsCode + p_SwPrs->base*2/4; + for(i=0;isize/4;i++) + { + tmpReg = 0; + for(j =0;j<4;j++) + { + tmpReg <<= 8; + tmpReg |= *(p_SwPrs->p_Code+i*4+j); + } + WRITE_UINT32(*(p_LoadTarget + i), tmpReg); + } + p_FmPcd->p_FmPcdPrs->p_CurrSwPrs = p_FmPcd->p_FmPcdPrs->p_SwPrsCode + p_SwPrs->base*2/4 + p_SwPrs->size/4; + + /* copy data parameters */ + for(i=0;ip_FmPcdPrs->p_SwPrsCode+PRS_SW_DATA/4+i), p_SwPrs->swPrsDataParams[i]); + + + /* Clear last 4 bytes */ + WRITE_UINT32(*(p_FmPcd->p_FmPcdPrs->p_SwPrsCode+(PRS_SW_DATA-FM_PCD_PRS_SW_TAIL_SIZE)/4), 0); + + return E_OK; +} + +t_Error FM_PCD_ConfigPrsMaxCycleLimit(t_Handle h_FmPcd,uint16_t value) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdDriverParam, E_INVALID_HANDLE); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("FM_PCD_ConfigPrsMaxCycleLimit - guest mode!")); + + p_FmPcd->p_FmPcdDriverParam->prsMaxParseCycleLimit = value; + + return E_OK; +} + + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +t_Error FM_PCD_PrsDumpRegs(t_Handle h_FmPcd) +{ + t_FmPcd *p_FmPcd = (t_FmPcd*)h_FmPcd; + t_FmPcdIpcMsg msg; + + DECLARE_DUMP; + + SANITY_CHECK_RETURN_ERROR(p_FmPcd, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPcd->p_FmPcdPrs, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPcd->p_FmPcdDriverParam, E_INVALID_STATE); + + if(p_FmPcd->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_PCD_PRS_DUMP_REGS; + return XX_IpcSendMessage(p_FmPcd->h_IpcSession, + (uint8_t*)&msg, + sizeof(msg.msgId), + NULL, + NULL, + NULL, + NULL); + } + DUMP_SUBTITLE(("\n")); + DUMP_TITLE(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs, ("FmPcdPrsRegs Regs")); + + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,rpclim); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,rpimac); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,pmeec); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,pevr); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,pever); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,pevfr); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,perr); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,perer); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,perfr); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,ppsc); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,pds); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,l2rrs); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,l3rrs); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,l4rrs); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,srrs); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,l2rres); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,l3rres); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,l4rres); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,srres); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,spcs); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,spscs); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,hxscs); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,mrcs); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,mwcs); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,mrscs); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,mwscs); + DUMP_VAR(p_FmPcd->p_FmPcdPrs->p_FmPcdPrsRegs,fcscs); + + return E_OK; +} +#endif /* (defined(DEBUG_ERRORS) && ... */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Port/Makefile +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Port/Makefile @@ -0,0 +1,19 @@ +# +# Makefile for the Freescale Ethernet controllers +# +EXTRA_CFLAGS += -DVERSION=\"\" +# +#Include netcomm SW specific definitions +include $(srctree)/drivers/net/dpa/NetCommSw/ncsw_config.mk + +NCSW_FM_INC = $(srctree)/drivers/net/dpa/NetCommSw/Peripherals/FM/inc + +EXTRA_CFLAGS += -I$(NCSW_FM_INC) + +obj-y += fsl-ncsw-Pcd.o + +fsl-ncsw-Pcd-objs := fm_port.o fm_port_im.o + + + + --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Port/fm_port.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Port/fm_port.c @@ -0,0 +1,5060 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm_port.c + + @Description FM driver routines implementation. +*//***************************************************************************/ +#include "error_ext.h" +#include "std_ext.h" +#include "string_ext.h" +#include "sprint_ext.h" +#include "debug_ext.h" +#include "fm_pcd_ext.h" + +#include "fm_port.h" + + +/****************************************/ +/* static functions */ +/****************************************/ + +static t_Error CheckInitParameters(t_FmPort *p_FmPort) +{ + t_FmPortDriverParam *p_Params = p_FmPort->p_FmPortDriverParam; + t_Error ans = E_OK; + uint32_t unusedMask; + uint8_t i; + uint8_t j; + bool found; + + if (p_FmPort->imEn) + { + if ((ans = FmPortImCheckInitParameters(p_FmPort)) != E_OK) + return ERROR_CODE(ans); + } + else + { + /****************************************/ + /* Rx only */ + /****************************************/ + if((p_FmPort->portType == e_FM_PORT_TYPE_RX) || (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G)) + { + /* external buffer pools */ + if(!p_Params->extBufPools.numOfPoolsUsed) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("extBufPools.numOfPoolsUsed=0. At least one buffer pool must be defined")); + + if(p_Params->extBufPools.numOfPoolsUsed > FM_PORT_MAX_NUM_OF_EXT_POOLS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("numOfPoolsUsed can't be larger than %d", FM_PORT_MAX_NUM_OF_EXT_POOLS)); + + for(i=0;iextBufPools.numOfPoolsUsed;i++) + { + if(p_Params->extBufPools.extBufPool[i].id >= BM_MAX_NUM_OF_POOLS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("extBufPools.extBufPool[%d].id can't be larger than %d", i, BM_MAX_NUM_OF_POOLS)); + if(!p_Params->extBufPools.extBufPool[i].size) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("extBufPools.extBufPool[%d].size is 0", i)); + } + + /* backup BM pools indication is valid only for some chip deriviatives + (limited by the config routine) */ + if(p_Params->p_BackupBmPools) + { + if(p_Params->p_BackupBmPools->numOfBackupPools >= p_Params->extBufPools.numOfPoolsUsed) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("p_BackupBmPools must be smaller than extBufPools.numOfPoolsUsed")); + found = FALSE; + for(i = 0;ip_BackupBmPools->numOfBackupPools;i++) + for(j=0;jextBufPools.numOfPoolsUsed;j++) + if(p_Params->p_BackupBmPools->poolIds[i] == p_Params->extBufPools.extBufPool[j].id) + found = TRUE; + if (!found) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("All p_BackupBmPools.poolIds must be included in extBufPools.extBufPool[n].id")); + } + + /* up to extBufPools.numOfPoolsUsed pools may be defined */ + if(p_Params->bufPoolDepletion.numberOfPoolsModeEnable) + { + if((p_Params->bufPoolDepletion.numOfPools > p_Params->extBufPools.numOfPoolsUsed)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("bufPoolDepletion.numOfPools can't be larger than %d and can't be larger than numOfPoolsUsed", FM_PORT_MAX_NUM_OF_EXT_POOLS)); + + if(!p_Params->bufPoolDepletion.numOfPools) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("bufPoolDepletion.numOfPoolsToConsider can not be 0 when numberOfPoolsModeEnable=TRUE")); + } + /* Check that part of IC that needs copying is small enough to enter start margin */ + if(p_Params->intContext.size + p_Params->intContext.extBufOffset > p_Params->bufMargins.startMargins) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("intContext.size is larger than start margins")); + + if(p_Params->liodnOffset & ~FM_LIODN_OFFSET_MASK) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("liodnOffset is larger than %d", FM_LIODN_OFFSET_MASK+1)); +#ifdef FM_PARTITION_ARRAY + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + { + if(p_Params->liodnOffset >= MAX_LIODN_OFFSET) + { + p_Params->liodnOffset = (uint16_t)(p_Params->liodnOffset & (MAX_LIODN_OFFSET-1)); + DBG(WARNING, ("liodnOffset number is out of rev1 range - MSB bits cleard.")); + } + } + } +#endif /* FM_PARTITION_ARRAY */ + } + + /****************************************/ + /* Non Rx ports */ + /****************************************/ + else + { + if(p_Params->deqSubPortal >= MAX_QMI_DEQ_SUBPORTAL) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, (" deqSubPortal has to be in the range of 0 - %d", MAX_QMI_DEQ_SUBPORTAL)); + + /* to protect HW internal-context from overwrite */ + if((p_Params->intContext.size) && (p_Params->intContext.intContextOffset < MIN_TX_INT_OFFSET)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("non-Rx intContext.intContextOffset can't be smaller than %d", MIN_TX_INT_OFFSET)); + } + + /****************************************/ + /* Rx Or Offline Parsing */ + /****************************************/ + if((p_FmPort->portType == e_FM_PORT_TYPE_RX) || (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G) || (p_FmPort->portType == e_FM_PORT_TYPE_OH_OFFLINE_PARSING)) + { + + if(!p_Params->dfltFqid) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("dfltFqid must be between 1 and 2^24-1")); +#if defined(FM_CAPWAP_SUPPORT) && defined(FM_LOCKUP_ALIGNMENT_ERRATA_FMAN_SW004) + if(p_FmPort->p_FmPortDriverParam->bufferPrefixContent.manipExtraSpace % 16) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("bufferPrefixContent.manipExtraSpace has to be devidable by 16")); +#endif /* defined(FM_CAPWAP_SUPPORT) && ... */ + } + + /****************************************/ + /* All ports */ + /****************************************/ + /* common BMI registers values */ + /* Check that Queue Id is not larger than 2^24, and is not 0 */ + if((p_Params->errFqid & ~0x00FFFFFF) || !p_Params->errFqid) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("errFqid must be between 1 and 2^24-1")); + if(p_Params->dfltFqid & ~0x00FFFFFF) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("dfltFqid must be between 1 and 2^24-1")); + } + + /****************************************/ + /* Rx only */ + /****************************************/ + if((p_FmPort->portType == e_FM_PORT_TYPE_RX) || (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G)) + { + /* Check that divisible by 256 and not larger than 256 */ + if(p_Params->rxFifoPriElevationLevel % BMI_FIFO_UNITS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("rxFifoPriElevationLevel has to be divisible by %d", BMI_FIFO_UNITS)); + if(!p_Params->rxFifoPriElevationLevel || (p_Params->rxFifoPriElevationLevel > BMI_MAX_FIFO_SIZE)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("rxFifoPriElevationLevel has to be in the range of 256 - %d", BMI_MAX_FIFO_SIZE)); + if(p_Params->rxFifoThreshold % BMI_FIFO_UNITS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("rxFifoThreshold has to be divisible by %d", BMI_FIFO_UNITS)); + if(!p_Params->rxFifoThreshold ||(p_Params->rxFifoThreshold > BMI_MAX_FIFO_SIZE)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("rxFifoThreshold has to be in the range of 256 - %d", BMI_MAX_FIFO_SIZE)); + + /* Check that not larger than 16 */ + if(p_Params->cutBytesFromEnd > FRAME_END_DATA_SIZE) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("cutBytesFromEnd can't be larger than %d", FRAME_END_DATA_SIZE)); + + /* Check the margin definition */ + if(p_Params->bufMargins.startMargins > MAX_EXT_BUFFER_OFFSET) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("bufMargins.startMargins can't be larger than %d", MAX_EXT_BUFFER_OFFSET)); + if(p_Params->bufMargins.endMargins > MAX_EXT_BUFFER_OFFSET) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("bufMargins.endMargins can't be larger than %d", MAX_EXT_BUFFER_OFFSET)); + + /* extra FIFO size (allowed only to Rx ports) */ + if(p_FmPort->fifoBufs.extra % BMI_FIFO_UNITS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("fifoBufs.extra has to be divisible by %d", BMI_FIFO_UNITS)); + + if(p_Params->bufPoolDepletion.numberOfPoolsModeEnable && + !p_Params->bufPoolDepletion.numOfPools) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("bufPoolDepletion.numOfPoolsToConsider can not be 0 when numberOfPoolsModeEnable=TRUE")); +#ifdef FM_CSI_CFED_LIMIT + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + + if (revInfo.majorRev == 4) + { + /* Check that not larger than 16 */ + if(p_Params->cutBytesFromEnd + p_Params->cheksumLastBytesIgnore > FRAME_END_DATA_SIZE) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("cheksumLastBytesIgnore + cutBytesFromEnd can't be larger than %d", FRAME_END_DATA_SIZE)); + } + } +#endif /* FM_CSI_CFED_LIMIT */ + + } + + /****************************************/ + /* Non Rx ports */ + /****************************************/ + else + /* extra FIFO size (allowed only to Rx ports) */ + if(p_FmPort->fifoBufs.extra) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, (" No fifoBufs.extra for non Rx ports")); + + /****************************************/ + /* Rx & Tx */ + /****************************************/ + if((p_FmPort->portType == e_FM_PORT_TYPE_TX) || (p_FmPort->portType == e_FM_PORT_TYPE_TX_10G) || + (p_FmPort->portType == e_FM_PORT_TYPE_RX) || (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G)) + { + /* Check that not larger than 16 */ + if(p_Params->cheksumLastBytesIgnore > FRAME_END_DATA_SIZE) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("cheksumLastBytesIgnore can't be larger than %d", FRAME_END_DATA_SIZE)); + } + + /****************************************/ + /* Tx only */ + /****************************************/ + if((p_FmPort->portType == e_FM_PORT_TYPE_TX) || (p_FmPort->portType == e_FM_PORT_TYPE_TX_10G)) + { + /* Check that divisible by 256 and not larger than 256 */ + if(p_Params->txFifoMinFillLevel % BMI_FIFO_UNITS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("txFifoMinFillLevel has to be divisible by %d", BMI_FIFO_UNITS)); + if(p_Params->txFifoMinFillLevel > (BMI_MAX_FIFO_SIZE - 256)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("txFifoMinFillLevel has to be in the range of 0 - %d", BMI_MAX_FIFO_SIZE)); + if(p_Params->txFifoLowComfLevel % BMI_FIFO_UNITS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("txFifoLowComfLevel has to be divisible by %d", BMI_FIFO_UNITS)); + if(!p_Params->txFifoLowComfLevel || (p_Params->txFifoLowComfLevel > BMI_MAX_FIFO_SIZE)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("txFifoLowComfLevel has to be in the range of 256 - %d", BMI_MAX_FIFO_SIZE)); + + /* Check that not larger than 8 */ + if((!p_FmPort->txFifoDeqPipelineDepth) ||( p_FmPort->txFifoDeqPipelineDepth > MAX_FIFO_PIPELINE_DEPTH)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("txFifoDeqPipelineDepth can't be larger than %d", MAX_FIFO_PIPELINE_DEPTH)); + if(p_FmPort->portType == e_FM_PORT_TYPE_TX) + if(p_FmPort->txFifoDeqPipelineDepth > 2) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("txFifoDeqPipelineDepth for !G can't be larger than 2")); + } + else + /****************************************/ + /* Non Tx Ports */ + /****************************************/ + { + /* If discard override was selected , no frames may be discarded. */ + if(p_Params->frmDiscardOverride && p_Params->errorsToDiscard) + RETURN_ERROR(MAJOR, E_CONFLICT, ("errorsToDiscard is not empty, but frmDiscardOverride selected (all discarded frames to be enqueued to error queue).")); + } + + /****************************************/ + /* Rx and Offline parsing */ + /****************************************/ + if((p_FmPort->portType == e_FM_PORT_TYPE_RX) || (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G) + || (p_FmPort->portType == e_FM_PORT_TYPE_OH_OFFLINE_PARSING)) + { + if(p_FmPort->portType == e_FM_PORT_TYPE_OH_OFFLINE_PARSING) + unusedMask = BMI_STATUS_OP_MASK_UNUSED; + else + unusedMask = BMI_STATUS_RX_MASK_UNUSED; + + /* Check that no common bits with BMI_STATUS_MASK_UNUSED */ + if(p_Params->errorsToDiscard & unusedMask) + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("errorsToDiscard contains undefined bits")); + } + + /****************************************/ + /* All ports */ + /****************************************/ + + /* Check that divisible by 16 and not larger than 240 */ + if(p_Params->intContext.intContextOffset >MAX_INT_OFFSET) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("intContext.intContextOffset can't be larger than %d", MAX_INT_OFFSET)); + if(p_Params->intContext.intContextOffset % OFFSET_UNITS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("intContext.intContextOffset has to be divisible by %d", OFFSET_UNITS)); + + /* check that ic size+ic internal offset, does not exceed ic block size */ + if(p_Params->intContext.size + p_Params->intContext.intContextOffset > MAX_IC_SIZE) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("intContext.size + intContext.intContextOffset has to be smaller than %d", MAX_IC_SIZE)); + /* Check that divisible by 16 and not larger than 256 */ + if(p_Params->intContext.size % OFFSET_UNITS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("intContext.size has to be divisible by %d", OFFSET_UNITS)); + + /* Check that divisible by 16 and not larger than 4K */ + if(p_Params->intContext.extBufOffset > MAX_EXT_OFFSET) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("intContext.extBufOffset can't be larger than %d", MAX_EXT_OFFSET)); + if(p_Params->intContext.extBufOffset % OFFSET_UNITS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("intContext.extBufOffset has to be divisible by %d", OFFSET_UNITS)); + + /* common BMI registers values */ + if((!p_FmPort->tasks.num) || (p_FmPort->tasks.num > MAX_NUM_OF_TASKS)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("tasks.num can't be larger than %d", MAX_NUM_OF_TASKS)); + if(p_FmPort->tasks.extra > MAX_NUM_OF_EXTRA_TASKS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("tasks.extra can't be larger than %d", MAX_NUM_OF_EXTRA_TASKS)); + if((!p_FmPort->openDmas.num) || (p_FmPort->openDmas.num > MAX_NUM_OF_DMAS)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("openDmas.num can't be larger than %d", MAX_NUM_OF_DMAS)); + if(p_FmPort->openDmas.extra > MAX_NUM_OF_EXTRA_DMAS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("openDmas.extra can't be larger than %d", MAX_NUM_OF_EXTRA_DMAS)); + if(!p_FmPort->fifoBufs.num || (p_FmPort->fifoBufs.num > BMI_MAX_FIFO_SIZE)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("fifoBufs.num has to be in the range of 256 - %d", BMI_MAX_FIFO_SIZE)); + if(p_FmPort->fifoBufs.num % BMI_FIFO_UNITS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("fifoBufs.num has to be divisible by %d", BMI_FIFO_UNITS)); + + return E_OK; +} + +static void FmPortDriverParamFree(t_FmPort *p_FmPort) +{ + if(p_FmPort->p_FmPortDriverParam) + { + XX_Free(p_FmPort->p_FmPortDriverParam); + p_FmPort->p_FmPortDriverParam = NULL; + } +} + +static t_Error SetExtBufferPools(t_FmPort *p_FmPort) +{ + t_FmPortExtPools *p_ExtBufPools = &p_FmPort->p_FmPortDriverParam->extBufPools; + t_FmPortBufPoolDepletion *p_BufPoolDepletion = &p_FmPort->p_FmPortDriverParam->bufPoolDepletion; + volatile uint32_t *p_ExtBufRegs; + volatile uint32_t *p_BufPoolDepletionReg; + bool rxPort; + bool found; + uint8_t orderedArray[FM_PORT_MAX_NUM_OF_EXT_POOLS]; + uint16_t sizesArray[BM_MAX_NUM_OF_POOLS]; + uint8_t count = 0; + uint8_t numOfPools; + uint16_t bufSize = 0, largestBufSize = 0; + int i=0, j=0, k=0; + uint32_t tmpReg, vector, minFifoSizeRequired=0; + + memset(&orderedArray, 0, sizeof(uint8_t) * FM_PORT_MAX_NUM_OF_EXT_POOLS); + memset(&sizesArray, 0, sizeof(uint16_t) * BM_MAX_NUM_OF_POOLS); + memcpy(&p_FmPort->extBufPools, p_ExtBufPools, sizeof(t_FmPortExtPools)); + + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_ExtBufRegs = p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_ebmpi; + p_BufPoolDepletionReg = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_mpd; + rxPort = TRUE; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + p_ExtBufRegs = p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_oebmpi; + p_BufPoolDepletionReg = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ompd; + rxPort = FALSE; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("Not available for port type")); + } + + /* First we copy the external buffers pools information to an ordered local array */ + for(i=0;inumOfPoolsUsed;i++) + { + /* get pool size */ + bufSize = p_ExtBufPools->extBufPool[i].size; + + /* keep sizes in an array according to poolId for direct access */ + sizesArray[p_ExtBufPools->extBufPool[i].id] = bufSize; + + /* save poolId in an ordered array according to size */ + for (j=0;j<=i;j++) + { + /* this is the next free place in the array */ + if (j==i) + orderedArray[i] = p_ExtBufPools->extBufPool[i].id; + else + { + /* find the right place for this poolId */ + if(bufSize < sizesArray[orderedArray[j]]) + { + /* move the poolIds one place ahead to make room for this poolId */ + for(k=i;k>j;k--) + orderedArray[k] = orderedArray[k-1]; + + /* now k==j, this is the place for the new size */ + orderedArray[k] = p_ExtBufPools->extBufPool[i].id; + break; + } + } + } + } + + /* build the register value */ + + for(i=0;inumOfPoolsUsed;i++) + { + tmpReg = BMI_EXT_BUF_POOL_VALID | BMI_EXT_BUF_POOL_EN_COUNTER; + tmpReg |= ((uint32_t)orderedArray[i] << BMI_EXT_BUF_POOL_ID_SHIFT); + tmpReg |= sizesArray[orderedArray[i]]; + /* functionality available only for some deriviatives (limited by config) */ + if(p_FmPort->p_FmPortDriverParam->p_BackupBmPools) + for(j=0;jp_FmPortDriverParam->p_BackupBmPools->numOfBackupPools;j++) + if(orderedArray[i] == p_FmPort->p_FmPortDriverParam->p_BackupBmPools->poolIds[j]) + { + tmpReg |= BMI_EXT_BUF_POOL_BACKUP; + break; + } + WRITE_UINT32(*(p_ExtBufRegs+i), tmpReg); + } + + if(p_FmPort->p_FmPortDriverParam->p_BackupBmPools) + XX_Free(p_FmPort->p_FmPortDriverParam->p_BackupBmPools); + + numOfPools = (uint8_t)(rxPort ? FM_PORT_MAX_NUM_OF_EXT_POOLS:FM_PORT_MAX_NUM_OF_OBSERVED_EXT_POOLS); + + /* clear unused pools */ + for(i=p_ExtBufPools->numOfPoolsUsed;irxPoolsParams.largestBufSize = largestBufSize = sizesArray[orderedArray[p_ExtBufPools->numOfPoolsUsed-1]]; + if((p_FmPort->portType == e_FM_PORT_TYPE_RX) || (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G)) + { +#ifdef FM_FIFO_ALLOCATION_OLD_ALG + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + + if(revInfo.majorRev != 4) + { + minFifoSizeRequired = (uint32_t)(((largestBufSize % BMI_FIFO_UNITS) ? + ((largestBufSize/BMI_FIFO_UNITS + 1) * BMI_FIFO_UNITS) : + largestBufSize) + + (7*BMI_FIFO_UNITS)); + } + else +#endif /* FM_FIFO_ALLOCATION_OLD_ALG */ + { + p_FmPort->rxPoolsParams.numOfPools = p_ExtBufPools->numOfPoolsUsed; + if(p_ExtBufPools->numOfPoolsUsed == 1) + minFifoSizeRequired = 8*BMI_FIFO_UNITS; + else + { + uint16_t secondLargestBufSize = sizesArray[orderedArray[p_ExtBufPools->numOfPoolsUsed-2]]; + p_FmPort->rxPoolsParams.secondLargestBufSize = secondLargestBufSize; + minFifoSizeRequired = (uint32_t)(((secondLargestBufSize % BMI_FIFO_UNITS) ? + ((secondLargestBufSize/BMI_FIFO_UNITS + 1) * BMI_FIFO_UNITS) : + secondLargestBufSize) + + (7*BMI_FIFO_UNITS)); + } + } + if(p_FmPort->fifoBufs.num < minFifoSizeRequired) + { + p_FmPort->fifoBufs.num = minFifoSizeRequired; + DBG(INFO, ("FIFO size for Rx port enlarged to %d",minFifoSizeRequired)); + } + } + + /* check if pool size is not too big */ + /* This is a definition problem in which if the fifo for the RX port + is lower than the largest pool size the hardware will allocate scatter gather + buffers even though the frame size can fit in a single buffer. */ + if (largestBufSize > p_FmPort->fifoBufs.num) + DBG(WARNING, ("Frame larger than port Fifo size (%u) will be split to more than a single buffer (S/G) even if shorter than largest buffer size (%u)", + p_FmPort->fifoBufs.num, largestBufSize)); + + /* pool depletion */ + tmpReg = 0; + if(p_BufPoolDepletion->numberOfPoolsModeEnable) + { + /* calculate vector for number of pools depletion */ + found = FALSE; + vector = 0; + count = 0; + for(i=0;ipoolsToConsider[i]) + { + for(j=0;jnumOfPoolsUsed;j++) + { + if (i == orderedArray[j]) + { + vector |= 0x80000000 >> j; + found = TRUE; + count++; + break; + } + } + if (!found) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Pools selected for depletion are not used.")); + else + found = FALSE; + } + } + if (count < p_BufPoolDepletion->numOfPools) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("bufPoolDepletion.numOfPools is larger than the number of pools defined.")); + + /* configure num of pools and vector for number of pools mode */ + tmpReg |= (((uint32_t)p_BufPoolDepletion->numOfPools - 1) << BMI_POOL_DEP_NUM_OF_POOLS_SHIFT); + tmpReg |= vector; + } + + if(p_BufPoolDepletion->singlePoolModeEnable) + { + /* calculate vector for number of pools depletion */ + found = FALSE; + vector = 0; + count = 0; + for(i=0;ipoolsToConsiderForSingleMode[i]) + { + for(j=0;jnumOfPoolsUsed;j++) + { + if (i == orderedArray[j]) + { + vector |= 0x00000080 >> j; + found = TRUE; + count++; + break; + } + } + if (!found) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Pools selected for depletion are not used.")); + else + found = FALSE; + } + } + if (!count) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("No pools defined for single buffer mode pool depletion.")); + + /* configure num of pools and vector for number of pools mode */ + tmpReg |= vector; + } + + WRITE_UINT32(*p_BufPoolDepletionReg, tmpReg); + + return E_OK; +} + +static t_Error ClearPerfCnts(t_FmPort *p_FmPort) +{ + FM_PORT_ModifyCounter(p_FmPort, e_FM_PORT_COUNTERS_TASK_UTIL, 0); + FM_PORT_ModifyCounter(p_FmPort, e_FM_PORT_COUNTERS_QUEUE_UTIL, 0); + FM_PORT_ModifyCounter(p_FmPort, e_FM_PORT_COUNTERS_DMA_UTIL, 0); + FM_PORT_ModifyCounter(p_FmPort, e_FM_PORT_COUNTERS_FIFO_UTIL, 0); + return E_OK; +} + +static t_Error BmiRxPortInit(t_FmPort *p_FmPort) +{ + t_FmPortRxBmiRegs *p_Regs = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs; + uint32_t tmpReg; + t_FmPortDriverParam *p_Params = p_FmPort->p_FmPortDriverParam; + uint32_t errorsToEnq = 0; + t_FmPortPerformanceCnt performanceContersParams; + t_Error err; + + /* check that port is not busy */ + if (GET_UINT32(p_Regs->fmbm_rcfg) & BMI_PORT_CFG_EN) + RETURN_ERROR(MAJOR, E_INVALID_STATE, + ("Port(%d,%d) is already enabled",p_FmPort->portType, p_FmPort->portId)); + + /* Set Config register */ + tmpReg = 0; + if (p_FmPort->imEn) + tmpReg |= BMI_PORT_CFG_IM; + /* No discard - all error frames go to error queue */ + else if (p_Params->frmDiscardOverride) + tmpReg |= BMI_PORT_CFG_FDOVR; + + WRITE_UINT32(p_Regs->fmbm_rcfg, tmpReg); + + /* Configure dma attributes */ + tmpReg = 0; + tmpReg |= (uint32_t)p_Params->dmaSwapData << BMI_DMA_ATTR_SWP_SHIFT; + tmpReg |= (uint32_t)p_Params->dmaIntContextCacheAttr << BMI_DMA_ATTR_IC_CACHE_SHIFT; + tmpReg |= (uint32_t)p_Params->dmaHeaderCacheAttr << BMI_DMA_ATTR_HDR_CACHE_SHIFT; + tmpReg |= (uint32_t)p_Params->dmaScatterGatherCacheAttr << BMI_DMA_ATTR_SG_CACHE_SHIFT; + if(p_Params->dmaWriteOptimize) + tmpReg |= BMI_DMA_ATTR_WRITE_OPTIMIZE; + + WRITE_UINT32(p_Regs->fmbm_rda, tmpReg); + + /* Configure Rx Fifo params */ + tmpReg = 0; + tmpReg |= ((p_Params->rxFifoPriElevationLevel/BMI_FIFO_UNITS - 1) << BMI_RX_FIFO_PRI_ELEVATION_SHIFT); + tmpReg |= ((p_Params->rxFifoThreshold/BMI_FIFO_UNITS - 1) << BMI_RX_FIFO_THRESHOLD_SHIFT); + + WRITE_UINT32(p_Regs->fmbm_rfp, tmpReg); + + { +#ifdef FM_NO_THRESHOLD_REG + t_FmRevisionInfo revInfo; + + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if (revInfo.majorRev > 1) +#endif /* FM_NO_THRESHOLD_REG */ + /* always allow access to the extra resources */ + WRITE_UINT32(p_Regs->fmbm_reth, BMI_RX_FIFO_THRESHOLD_BC); + } + + /* frame end parameters */ + tmpReg = 0; + tmpReg |= ((uint32_t)p_Params->cheksumLastBytesIgnore << BMI_RX_FRAME_END_CS_IGNORE_SHIFT); + tmpReg |= ((uint32_t)p_Params->cutBytesFromEnd<< BMI_RX_FRAME_END_CUT_SHIFT); + + WRITE_UINT32(p_Regs->fmbm_rfed, tmpReg); + + /* IC parameters */ + tmpReg = 0; + tmpReg |= (((uint32_t)p_Params->intContext.extBufOffset/OFFSET_UNITS) << BMI_IC_TO_EXT_SHIFT); + tmpReg |= (((uint32_t)p_Params->intContext.intContextOffset/OFFSET_UNITS) << BMI_IC_FROM_INT_SHIFT); + tmpReg |= (((uint32_t)p_Params->intContext.size/OFFSET_UNITS) << BMI_IC_SIZE_SHIFT); + + WRITE_UINT32(p_Regs->fmbm_ricp, tmpReg); + + if (!p_FmPort->imEn) + { + /* check if the largest external buffer pool is large enough */ + if(p_Params->bufMargins.startMargins + MIN_EXT_BUF_SIZE + p_Params->bufMargins.endMargins > p_FmPort->rxPoolsParams.largestBufSize) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("bufMargins.startMargins (%d) + minimum buf size (64) + bufMargins.endMargins (%d) is larger than maximum external buffer size (%d)", + p_Params->bufMargins.startMargins, p_Params->bufMargins.endMargins, p_FmPort->rxPoolsParams.largestBufSize)); + + /* buffer margins */ + tmpReg = 0; + tmpReg |= (((uint32_t)p_Params->bufMargins.startMargins) << BMI_EXT_BUF_MARG_START_SHIFT); + tmpReg |= (((uint32_t)p_Params->bufMargins.endMargins) << BMI_EXT_BUF_MARG_END_SHIFT); + + WRITE_UINT32(p_Regs->fmbm_rebm, tmpReg); + } + + + if(p_FmPort->internalBufferOffset) + { + tmpReg = (uint32_t)((p_FmPort->internalBufferOffset % OFFSET_UNITS) ? + (p_FmPort->internalBufferOffset/OFFSET_UNITS + 1): + (p_FmPort->internalBufferOffset/OFFSET_UNITS)); + p_FmPort->internalBufferOffset = (uint8_t)(tmpReg * OFFSET_UNITS); + WRITE_UINT32(p_Regs->fmbm_rim, tmpReg << BMI_IM_FOF_SHIFT); + } + + /* NIA */ + if (p_FmPort->imEn) + WRITE_UINT32(p_Regs->fmbm_rfne, NIA_ENG_FM_CTL | NIA_FM_CTL_AC_IND_MODE_RX); + else + { + tmpReg = 0; + if (p_Params->forwardReuseIntContext) + tmpReg |= BMI_PORT_RFNE_FRWD_RPD; + /* L3/L4 checksum verify is enabled by default. */ + /*tmpReg |= BMI_PORT_RFNE_FRWD_DCL4C;*/ + WRITE_UINT32(p_Regs->fmbm_rfne, tmpReg | NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME); + } + WRITE_UINT32(p_Regs->fmbm_rfene, NIA_ENG_QMI_ENQ | NIA_ORDER_RESTOR); + + /* command attribute */ + tmpReg = BMI_CMD_RX_MR_DEF; + if (!p_FmPort->imEn) + { + tmpReg |= BMI_CMD_ATTR_ORDER; + if(p_Params->syncReq) + tmpReg |= BMI_CMD_ATTR_SYNC; + tmpReg |= ((uint32_t)p_Params->color << BMI_CMD_ATTR_COLOR_SHIFT); + } + + WRITE_UINT32(p_Regs->fmbm_rfca, tmpReg); + + /* default queues */ + if (!p_FmPort->imEn) + { + WRITE_UINT32(p_Regs->fmbm_rfqid, p_Params->dfltFqid); + WRITE_UINT32(p_Regs->fmbm_refqid, p_Params->errFqid); + } + + /* set counters */ + WRITE_UINT32(p_Regs->fmbm_rstc, BMI_COUNTERS_EN); + + performanceContersParams.taskCompVal = (uint8_t)p_FmPort->tasks.num; + performanceContersParams.queueCompVal = 1; + performanceContersParams.dmaCompVal =(uint8_t) p_FmPort->openDmas.num; + performanceContersParams.fifoCompVal = p_FmPort->fifoBufs.num; + if((err = FM_PORT_SetPerformanceCountersParams(p_FmPort, &performanceContersParams)) != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + + WRITE_UINT32(p_Regs->fmbm_rpc, BMI_COUNTERS_EN); + + /* error/status mask - check that if discard OV is set, no + discard is required for specific errors.*/ + WRITE_UINT32(p_Regs->fmbm_rfsdm, p_Params->errorsToDiscard); + + errorsToEnq = (RX_ERRS_TO_ENQ & ~p_Params->errorsToDiscard); + WRITE_UINT32(p_Regs->fmbm_rfsem, errorsToEnq); + +#ifdef FM_BMI_TO_RISC_ENQ_ERRATA_FMANc + if((GET_UINT32(p_Regs->fmbm_rfene) && NIA_ENG_MASK)== NIA_ENG_FM_CTL) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("NIA not supported at this stage")); +#endif /* FM_BMI_TO_RISC_ENQ_ERRATA_FMANc */ + + return E_OK; +} + +static t_Error BmiTxPortInit(t_FmPort *p_FmPort) +{ + t_FmPortTxBmiRegs *p_Regs = &p_FmPort->p_FmPortBmiRegs->txPortBmiRegs; + uint32_t tmpReg; + t_FmPortDriverParam *p_Params = p_FmPort->p_FmPortDriverParam; + /*uint32_t rateCountUnit;*/ + t_FmPortPerformanceCnt performanceContersParams; + + /* check that port is not busy */ + if (GET_UINT32(p_Regs->fmbm_tcfg) & BMI_PORT_CFG_EN) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Port is already enabled")); + + tmpReg = 0; + if (p_FmPort->imEn) + tmpReg |= BMI_PORT_CFG_IM; + + WRITE_UINT32(p_Regs->fmbm_tcfg, tmpReg); + + /* Configure dma attributes */ + tmpReg = 0; + tmpReg |= (uint32_t)p_Params->dmaSwapData << BMI_DMA_ATTR_SWP_SHIFT; + tmpReg |= (uint32_t)p_Params->dmaIntContextCacheAttr << BMI_DMA_ATTR_IC_CACHE_SHIFT; + tmpReg |= (uint32_t)p_Params->dmaHeaderCacheAttr << BMI_DMA_ATTR_HDR_CACHE_SHIFT; + tmpReg |= (uint32_t)p_Params->dmaScatterGatherCacheAttr << BMI_DMA_ATTR_SG_CACHE_SHIFT; + + WRITE_UINT32(p_Regs->fmbm_tda, tmpReg); + + /* Configure Tx Fifo params */ + tmpReg = 0; + tmpReg |= ((p_Params->txFifoMinFillLevel/BMI_FIFO_UNITS) << BMI_TX_FIFO_MIN_FILL_SHIFT); + tmpReg |= (((uint32_t)p_FmPort->txFifoDeqPipelineDepth - 1) << BMI_TX_FIFO_PIPELINE_DEPTH_SHIFT); + tmpReg |= ((p_Params->txFifoLowComfLevel/BMI_FIFO_UNITS - 1) << BMI_TX_LOW_COMF_SHIFT); + + WRITE_UINT32(p_Regs->fmbm_tfp, tmpReg); + + /* frame end parameters */ + tmpReg = 0; + tmpReg |= ((uint32_t)p_Params->cheksumLastBytesIgnore << BMI_TX_FRAME_END_CS_IGNORE_SHIFT); + + WRITE_UINT32(p_Regs->fmbm_tfed, tmpReg); + + if (!p_FmPort->imEn) + { + /* IC parameters */ + tmpReg = 0; + tmpReg |= (((uint32_t)p_Params->intContext.extBufOffset/OFFSET_UNITS) << BMI_IC_TO_EXT_SHIFT); + tmpReg |= (((uint32_t)p_Params->intContext.intContextOffset/OFFSET_UNITS) << BMI_IC_FROM_INT_SHIFT); + tmpReg |= (((uint32_t)p_Params->intContext.size/OFFSET_UNITS) << BMI_IC_SIZE_SHIFT); + + WRITE_UINT32(p_Regs->fmbm_ticp, tmpReg); + } + + /* NIA */ + if (p_FmPort->imEn) + { + WRITE_UINT32(p_Regs->fmbm_tfne, NIA_ENG_FM_CTL | NIA_FM_CTL_AC_IND_MODE_TX); + WRITE_UINT32(p_Regs->fmbm_tfene, NIA_ENG_FM_CTL | NIA_FM_CTL_AC_IND_MODE_TX); + } + else + { + WRITE_UINT32(p_Regs->fmbm_tfne, NIA_ENG_QMI_DEQ); + WRITE_UINT32(p_Regs->fmbm_tfene, NIA_ENG_QMI_ENQ | NIA_ORDER_RESTOR); + /* The line bellow is a trick so the FM will not release the buffer + to BM nor will try to enq the frame to QM */ + if(!p_Params->dfltFqid && p_Params->dontReleaseBuf) + { + /* override fmbm_tcfqid 0 with a false non-0 value. This will force FM to + * act acording to tfene. Otherwise, if fmbm_tcfqid is 0 the FM will release + * buffers to BM regardless of fmbm_tfene + */ + WRITE_UINT32(p_Regs->fmbm_tcfqid, 0xFFFFFF); + WRITE_UINT32(p_Regs->fmbm_tfene, NIA_ENG_BMI | NIA_BMI_AC_TX_RELEASE); + } + } + + /* command attribute */ + tmpReg = BMI_CMD_TX_MR_DEF; + if (p_FmPort->imEn) + tmpReg |= BMI_CMD_MR_DEAS; + else + { + tmpReg |= BMI_CMD_ATTR_ORDER; + /* if we set syncReq, we may get stuck when HC command is running */ + /*if(p_Params->syncReq) + tmpReg |= BMI_CMD_ATTR_SYNC;*/ + tmpReg |= ((uint32_t)p_Params->color << BMI_CMD_ATTR_COLOR_SHIFT); + } + + WRITE_UINT32(p_Regs->fmbm_tfca, tmpReg); + + /* default queues */ + if (!p_FmPort->imEn) + { + if(p_Params->dfltFqid || !p_Params->dontReleaseBuf) + WRITE_UINT32(p_Regs->fmbm_tcfqid, p_Params->dfltFqid); + WRITE_UINT32(p_Regs->fmbm_tfeqid, p_Params->errFqid); + } + + /* statistics & performance counters */ + WRITE_UINT32(p_Regs->fmbm_tstc, BMI_COUNTERS_EN); + + performanceContersParams.taskCompVal = (uint8_t)p_FmPort->tasks.num; + performanceContersParams.queueCompVal = 1; + performanceContersParams.dmaCompVal = (uint8_t)p_FmPort->openDmas.num; + performanceContersParams.fifoCompVal = p_FmPort->fifoBufs.num; + FM_PORT_SetPerformanceCountersParams(p_FmPort, &performanceContersParams); + + WRITE_UINT32(p_Regs->fmbm_tpc, BMI_COUNTERS_EN); + + return E_OK; +} + +static t_Error BmiOhPortInit(t_FmPort *p_FmPort) +{ + t_FmPortOhBmiRegs *p_Regs = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs; + uint32_t tmpReg, errorsToEnq = 0; + t_FmPortDriverParam *p_Params = p_FmPort->p_FmPortDriverParam; + t_FmPortPerformanceCnt performanceContersParams; + t_Error err; + + /* check that port is not busy */ + if (GET_UINT32(p_Regs->fmbm_ocfg) & BMI_PORT_CFG_EN) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Port is already enabled")); + + /* Configure dma attributes */ + tmpReg = 0; + tmpReg |= (uint32_t)p_Params->dmaSwapData << BMI_DMA_ATTR_SWP_SHIFT; + tmpReg |= (uint32_t)p_Params->dmaIntContextCacheAttr << BMI_DMA_ATTR_IC_CACHE_SHIFT; + tmpReg |= (uint32_t)p_Params->dmaHeaderCacheAttr << BMI_DMA_ATTR_HDR_CACHE_SHIFT; + tmpReg |= (uint32_t)p_Params->dmaScatterGatherCacheAttr << BMI_DMA_ATTR_SG_CACHE_SHIFT; + if(p_Params->dmaWriteOptimize) + tmpReg |= BMI_DMA_ATTR_WRITE_OPTIMIZE; + + WRITE_UINT32(p_Regs->fmbm_oda, tmpReg); + + /* IC parameters */ + tmpReg = 0; + tmpReg |= (((uint32_t)p_Params->intContext.extBufOffset/OFFSET_UNITS) << BMI_IC_TO_EXT_SHIFT); + tmpReg |= (((uint32_t)p_Params->intContext.intContextOffset/OFFSET_UNITS) << BMI_IC_FROM_INT_SHIFT); + tmpReg |= (((uint32_t)p_Params->intContext.size/OFFSET_UNITS) << BMI_IC_SIZE_SHIFT); + + WRITE_UINT32(p_Regs->fmbm_oicp, tmpReg); + + /* NIA */ + WRITE_UINT32(p_Regs->fmbm_ofdne, NIA_ENG_QMI_DEQ); + + if (p_FmPort->portType==e_FM_PORT_TYPE_OH_HOST_COMMAND) + WRITE_UINT32(p_Regs->fmbm_ofene, NIA_ENG_QMI_ENQ); + else + WRITE_UINT32(p_Regs->fmbm_ofene, NIA_ENG_QMI_ENQ | NIA_ORDER_RESTOR); + + /* command attribute */ + if (p_FmPort->portType==e_FM_PORT_TYPE_OH_HOST_COMMAND) + tmpReg = BMI_CMD_MR_DEAS | BMI_CMD_MR_MA; + else + tmpReg = BMI_CMD_ATTR_ORDER | BMI_CMD_MR_DEAS | BMI_CMD_MR_MA; + + if(p_Params->syncReq) + tmpReg |= BMI_CMD_ATTR_SYNC; + tmpReg |= ((uint32_t)p_Params->color << BMI_CMD_ATTR_COLOR_SHIFT); + WRITE_UINT32(p_Regs->fmbm_ofca, tmpReg); + + /* No discard - all error frames go to error queue */ + if (p_Params->frmDiscardOverride) + tmpReg = BMI_PORT_CFG_FDOVR; + else + tmpReg = 0; + WRITE_UINT32(p_Regs->fmbm_ocfg, tmpReg); + + if(p_FmPort->portType == e_FM_PORT_TYPE_OH_OFFLINE_PARSING) + { + WRITE_UINT32(p_Regs->fmbm_ofsdm, p_Params->errorsToDiscard); + + errorsToEnq = (OP_ERRS_TO_ENQ & ~p_Params->errorsToDiscard); + WRITE_UINT32(p_Regs->fmbm_ofsem, errorsToEnq); + + /* NIA */ + WRITE_UINT32(p_Regs->fmbm_ofne, NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME); + { +#ifdef FM_NO_OP_OBSERVED_POOLS + t_FmRevisionInfo revInfo; + + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 4) && (p_Params->enBufPoolDepletion)) +#endif /* FM_NO_OP_OBSERVED_POOLS */ + { + /* define external buffer pools */ + err = SetExtBufferPools(p_FmPort); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + } + } + } + else + /* NIA */ + WRITE_UINT32(p_Regs->fmbm_ofne, NIA_ENG_FM_CTL | NIA_FM_CTL_AC_HC); + + /* default queues */ + WRITE_UINT32(p_Regs->fmbm_ofqid, p_Params->dfltFqid); + WRITE_UINT32(p_Regs->fmbm_oefqid, p_Params->errFqid); + + if(p_FmPort->internalBufferOffset) + { + tmpReg = (uint32_t)((p_FmPort->internalBufferOffset % OFFSET_UNITS) ? + (p_FmPort->internalBufferOffset/OFFSET_UNITS + 1): + (p_FmPort->internalBufferOffset/OFFSET_UNITS)); + p_FmPort->internalBufferOffset = (uint8_t)(tmpReg * OFFSET_UNITS); + WRITE_UINT32(p_Regs->fmbm_oim, tmpReg << BMI_IM_FOF_SHIFT); + } + /* statistics & performance counters */ + WRITE_UINT32(p_Regs->fmbm_ostc, BMI_COUNTERS_EN); + + performanceContersParams.taskCompVal = (uint8_t)p_FmPort->tasks.num; + performanceContersParams.queueCompVal = 0; + performanceContersParams.dmaCompVal = (uint8_t)p_FmPort->openDmas.num; + performanceContersParams.fifoCompVal = p_FmPort->fifoBufs.num; + FM_PORT_SetPerformanceCountersParams(p_FmPort, &performanceContersParams); + + WRITE_UINT32(p_Regs->fmbm_opc, BMI_COUNTERS_EN); + + return E_OK; +} + +static t_Error QmiInit(t_FmPort *p_FmPort) +{ + t_FmPortDriverParam *p_Params = NULL; + uint32_t tmpReg; + + p_Params = p_FmPort->p_FmPortDriverParam; + + /* check that port is not busy */ + if(((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && + (p_FmPort->portType != e_FM_PORT_TYPE_RX)) && + (GET_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnc) & QMI_PORT_CFG_EN)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Port is already enabled")); + + /* enable & clear counters */ + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnc, QMI_PORT_CFG_EN_COUNTERS); + + /* The following is done for non-Rx ports only */ + if((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && + (p_FmPort->portType != e_FM_PORT_TYPE_RX)) + { + if((p_FmPort->portType == e_FM_PORT_TYPE_TX_10G) || + (p_FmPort->portType == e_FM_PORT_TYPE_TX)) + { + /* define dequeue NIA */ + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs.fmqm_pndn, NIA_ENG_BMI | NIA_BMI_AC_TX); + /* define enqueue NIA */ + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnen, NIA_ENG_BMI | NIA_BMI_AC_TX_RELEASE); + } + else /* for HC & OP */ + { + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs.fmqm_pndn, NIA_ENG_BMI | NIA_BMI_AC_FETCH); + /* define enqueue NIA */ + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnen, NIA_ENG_BMI | NIA_BMI_AC_RELEASE); + } + + /* configure dequeue */ + tmpReg = 0; + if(p_Params->deqHighPriority) + tmpReg |= QMI_DEQ_CFG_PRI; + + switch(p_Params->deqType) + { + case(e_FM_PORT_DEQ_TYPE1): + tmpReg |= QMI_DEQ_CFG_TYPE1; + break; + case(e_FM_PORT_DEQ_TYPE2): + tmpReg |= QMI_DEQ_CFG_TYPE2; + break; + case(e_FM_PORT_DEQ_TYPE3): + tmpReg |= QMI_DEQ_CFG_TYPE3; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid dequeue type")); + } + +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT + switch(p_Params->deqPrefetchOption) + { + case(e_FM_PORT_DEQ_NO_PREFETCH): + /* Do nothing - QMI_DEQ_CFG_PREFETCH_WAITING_TNUM | QMI_DEQ_CFG_PREFETCH_1_FRAME = 0 */ + break; + case(e_FM_PORT_DEQ_PARTIAL_PREFETCH): + tmpReg |= QMI_DEQ_CFG_PREFETCH_WAITING_TNUM | QMI_DEQ_CFG_PREFETCH_3_FRAMES; + break; + case(e_FM_PORT_DEQ_FULL_PREFETCH): + tmpReg |= QMI_DEQ_CFG_PREFETCH_NO_TNUM | QMI_DEQ_CFG_PREFETCH_3_FRAMES; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid dequeue prefetch option")); + } +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ + + tmpReg |= p_Params->deqByteCnt; + tmpReg |= (uint32_t)p_Params->deqSubPortal << QMI_DEQ_CFG_SUBPORTAL_SHIFT; + + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs.fmqm_pndc, tmpReg); + } + else /* rx port */ + /* define enqueue NIA */ + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnen, NIA_ENG_BMI | NIA_BMI_AC_RELEASE); + + return E_OK; +} + +static t_Error BmiRxPortCheckAndGetCounterPtr(t_FmPort *p_FmPort, e_FmPortCounters counter, volatile uint32_t **p_Ptr) +{ + t_FmPortRxBmiRegs *p_BmiRegs = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs; + + /* check that counters are enabled */ + switch(counter) + { + case(e_FM_PORT_COUNTERS_CYCLE): + case(e_FM_PORT_COUNTERS_TASK_UTIL): + case(e_FM_PORT_COUNTERS_QUEUE_UTIL): + case(e_FM_PORT_COUNTERS_DMA_UTIL): + case(e_FM_PORT_COUNTERS_FIFO_UTIL): + case(e_FM_PORT_COUNTERS_RX_PAUSE_ACTIVATION): + /* performance counters - may be read when disabled */ + break; + case(e_FM_PORT_COUNTERS_FRAME): + case(e_FM_PORT_COUNTERS_DISCARD_FRAME): + case(e_FM_PORT_COUNTERS_RX_BAD_FRAME): + case(e_FM_PORT_COUNTERS_RX_LARGE_FRAME): + case(e_FM_PORT_COUNTERS_RX_FILTER_FRAME): + case(e_FM_PORT_COUNTERS_RX_LIST_DMA_ERR): + case(e_FM_PORT_COUNTERS_RX_OUT_OF_BUFFERS_DISCARD): + case(e_FM_PORT_COUNTERS_DEALLOC_BUF): + if(!(GET_UINT32(p_BmiRegs->fmbm_rstc) & BMI_COUNTERS_EN)) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter was not enabled")); + break; + default: + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter is not available for Rx ports")); + } + + /* Set counter */ + switch(counter) + { + case(e_FM_PORT_COUNTERS_CYCLE): + *p_Ptr = &p_BmiRegs->fmbm_rccn; + break; + case(e_FM_PORT_COUNTERS_TASK_UTIL): + *p_Ptr = &p_BmiRegs->fmbm_rtuc; + break; + case(e_FM_PORT_COUNTERS_QUEUE_UTIL): + *p_Ptr = &p_BmiRegs->fmbm_rrquc; + break; + case(e_FM_PORT_COUNTERS_DMA_UTIL): + *p_Ptr = &p_BmiRegs->fmbm_rduc; + break; + case(e_FM_PORT_COUNTERS_FIFO_UTIL): + *p_Ptr = &p_BmiRegs->fmbm_rfuc; + break; + case(e_FM_PORT_COUNTERS_RX_PAUSE_ACTIVATION): + *p_Ptr = &p_BmiRegs->fmbm_rpac; + break; + case(e_FM_PORT_COUNTERS_FRAME): + *p_Ptr = &p_BmiRegs->fmbm_rfrc; + break; + case(e_FM_PORT_COUNTERS_DISCARD_FRAME): + *p_Ptr = &p_BmiRegs->fmbm_rfcd; + break; + case(e_FM_PORT_COUNTERS_RX_BAD_FRAME): + *p_Ptr = &p_BmiRegs->fmbm_rfbc; + break; + case(e_FM_PORT_COUNTERS_RX_LARGE_FRAME): + *p_Ptr = &p_BmiRegs->fmbm_rlfc; + break; + case(e_FM_PORT_COUNTERS_RX_FILTER_FRAME): + *p_Ptr = &p_BmiRegs->fmbm_rffc; + break; + case(e_FM_PORT_COUNTERS_RX_LIST_DMA_ERR): +#ifdef FM_PORT_COUNTERS_ERRATA_FMANg + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("Requested counter is not available in rev1")); + } +#endif /* FM_PORT_COUNTERS_ERRATA_FMANg */ + *p_Ptr = &p_BmiRegs->fmbm_rfldec; + break; + case(e_FM_PORT_COUNTERS_RX_OUT_OF_BUFFERS_DISCARD): + *p_Ptr = &p_BmiRegs->fmbm_rodc; + break; + case(e_FM_PORT_COUNTERS_DEALLOC_BUF): + *p_Ptr = &p_BmiRegs->fmbm_rbdc; + break; + default: + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter is not available for Rx ports")); + } + + return E_OK; +} + +static t_Error BmiTxPortCheckAndGetCounterPtr(t_FmPort *p_FmPort, e_FmPortCounters counter, volatile uint32_t **p_Ptr) +{ + t_FmPortTxBmiRegs *p_BmiRegs = &p_FmPort->p_FmPortBmiRegs->txPortBmiRegs; + + /* check that counters are enabled */ + switch(counter) + { + case(e_FM_PORT_COUNTERS_CYCLE): + case(e_FM_PORT_COUNTERS_TASK_UTIL): + case(e_FM_PORT_COUNTERS_QUEUE_UTIL): + case(e_FM_PORT_COUNTERS_DMA_UTIL): + case(e_FM_PORT_COUNTERS_FIFO_UTIL): + /* performance counters - may be read when disabled */ + break; + case(e_FM_PORT_COUNTERS_FRAME): + case(e_FM_PORT_COUNTERS_DISCARD_FRAME): + case(e_FM_PORT_COUNTERS_LENGTH_ERR): + case(e_FM_PORT_COUNTERS_UNSUPPRTED_FORMAT): + case(e_FM_PORT_COUNTERS_DEALLOC_BUF): + if(!(GET_UINT32(p_BmiRegs->fmbm_tstc) & BMI_COUNTERS_EN)) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter was not enabled")); + break; + default: + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter is not available for Tx ports")); + } + + /* Set counter */ + switch(counter) + { + case(e_FM_PORT_COUNTERS_CYCLE): + *p_Ptr = &p_BmiRegs->fmbm_tccn; + break; + case(e_FM_PORT_COUNTERS_TASK_UTIL): + *p_Ptr = &p_BmiRegs->fmbm_ttuc; + break; + case(e_FM_PORT_COUNTERS_QUEUE_UTIL): + *p_Ptr = &p_BmiRegs->fmbm_ttcquc; + break; + case(e_FM_PORT_COUNTERS_DMA_UTIL): + *p_Ptr = &p_BmiRegs->fmbm_tduc; + break; + case(e_FM_PORT_COUNTERS_FIFO_UTIL): + *p_Ptr = &p_BmiRegs->fmbm_tfuc; + break; + case(e_FM_PORT_COUNTERS_FRAME): + *p_Ptr = &p_BmiRegs->fmbm_tfrc; + break; + case(e_FM_PORT_COUNTERS_DISCARD_FRAME): + *p_Ptr = &p_BmiRegs->fmbm_tfdc; + break; + case(e_FM_PORT_COUNTERS_LENGTH_ERR): + *p_Ptr = &p_BmiRegs->fmbm_tfledc; + break; + case(e_FM_PORT_COUNTERS_UNSUPPRTED_FORMAT): + *p_Ptr = &p_BmiRegs->fmbm_tfufdc; + break; + case(e_FM_PORT_COUNTERS_DEALLOC_BUF): + *p_Ptr = &p_BmiRegs->fmbm_tbdc; + break; + default: + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter is not available for Tx ports")); + } + + return E_OK; +} + +static t_Error BmiOhPortCheckAndGetCounterPtr(t_FmPort *p_FmPort, e_FmPortCounters counter, volatile uint32_t **p_Ptr) +{ + t_FmPortOhBmiRegs *p_BmiRegs = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs; + + /* check that counters are enabled */ + switch(counter) + { + case(e_FM_PORT_COUNTERS_CYCLE): + case(e_FM_PORT_COUNTERS_TASK_UTIL): + case(e_FM_PORT_COUNTERS_DMA_UTIL): + case(e_FM_PORT_COUNTERS_FIFO_UTIL): + /* performance counters - may be read when disabled */ + break; + case(e_FM_PORT_COUNTERS_FRAME): + case(e_FM_PORT_COUNTERS_DISCARD_FRAME): + case(e_FM_PORT_COUNTERS_RX_LIST_DMA_ERR): + case(e_FM_PORT_COUNTERS_WRED_DISCARD): + case(e_FM_PORT_COUNTERS_LENGTH_ERR): + case(e_FM_PORT_COUNTERS_UNSUPPRTED_FORMAT): + case(e_FM_PORT_COUNTERS_DEALLOC_BUF): + if(!(GET_UINT32(p_BmiRegs->fmbm_ostc) & BMI_COUNTERS_EN)) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter was not enabled")); + break; + case(e_FM_PORT_COUNTERS_RX_FILTER_FRAME): /* only valid for offline parsing */ + if(p_FmPort->portType == e_FM_PORT_TYPE_OH_HOST_COMMAND) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter is not available for Host Command ports")); + if(!(GET_UINT32(p_BmiRegs->fmbm_ostc) & BMI_COUNTERS_EN)) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter was not enabled")); + break; + default: + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter is not available for O/H ports")); + } + + /* Set counter */ + switch(counter) + { + case(e_FM_PORT_COUNTERS_CYCLE): + *p_Ptr = &p_BmiRegs->fmbm_occn; + break; + case(e_FM_PORT_COUNTERS_TASK_UTIL): + *p_Ptr = &p_BmiRegs->fmbm_otuc; + break; + case(e_FM_PORT_COUNTERS_DMA_UTIL): + *p_Ptr = &p_BmiRegs->fmbm_oduc; + break; + case(e_FM_PORT_COUNTERS_FIFO_UTIL): + *p_Ptr = &p_BmiRegs->fmbm_ofuc; + break; + case(e_FM_PORT_COUNTERS_FRAME): + *p_Ptr = &p_BmiRegs->fmbm_ofrc; + break; + case(e_FM_PORT_COUNTERS_DISCARD_FRAME): + *p_Ptr = &p_BmiRegs->fmbm_ofdc; + break; + case(e_FM_PORT_COUNTERS_RX_FILTER_FRAME): + *p_Ptr = &p_BmiRegs->fmbm_offc; + break; + case(e_FM_PORT_COUNTERS_RX_LIST_DMA_ERR): +#ifdef FM_PORT_COUNTERS_ERRATA_FMANg + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("Requested counter is not available in rev1")); + } +#endif /* FM_PORT_COUNTERS_ERRATA_FMANg */ + *p_Ptr = &p_BmiRegs->fmbm_ofldec; + break; + case(e_FM_PORT_COUNTERS_WRED_DISCARD): + *p_Ptr = &p_BmiRegs->fmbm_ofwdc; + break; + case(e_FM_PORT_COUNTERS_LENGTH_ERR): + *p_Ptr = &p_BmiRegs->fmbm_ofledc; + break; + case(e_FM_PORT_COUNTERS_UNSUPPRTED_FORMAT): + *p_Ptr = &p_BmiRegs->fmbm_ofufdc; + break; + case(e_FM_PORT_COUNTERS_DEALLOC_BUF): + *p_Ptr = &p_BmiRegs->fmbm_obdc; + break; + default: + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter is not available for O/H ports")); + } + + return E_OK; +} + +static t_Error AdditionalPrsParams(t_FmPort *p_FmPort, t_FmPcdPrsAdditionalHdrParams *p_HdrParams, uint32_t *p_SoftSeqAttachReg) +{ + uint8_t hdrNum, Ipv4HdrNum; + u_FmPcdHdrPrsOpts *p_prsOpts; + uint32_t tmpReg = 0, tmpPrsOffset; + + if(IS_PRIVATE_HEADER(p_HdrParams->hdr) || IS_SPECIAL_HEADER(p_HdrParams->hdr)) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("No additional parameters for private or special headers.")); + + if(p_HdrParams->errDisable) + tmpReg |= PRS_HDR_ERROR_DIS; + + /* Set parser options */ + if(p_HdrParams->usePrsOpts) + { + p_prsOpts = &p_HdrParams->prsOpts; + switch(p_HdrParams->hdr) + { + case(HEADER_TYPE_MPLS): + if(p_prsOpts->mplsPrsOptions.labelInterpretationEnable) + tmpReg |= PRS_HDR_MPLS_LBL_INTER_EN; + GET_PRS_HDR_NUM(hdrNum, p_prsOpts->mplsPrsOptions.nextParse); + if(hdrNum == ILLEGAL_HDR_NUM) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, NO_MSG); + GET_PRS_HDR_NUM(Ipv4HdrNum, HEADER_TYPE_IPv4); + if(hdrNum < Ipv4HdrNum) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, + ("Header must be equal or higher than IPv4")); + tmpReg |= ((uint32_t)hdrNum * PRS_HDR_ENTRY_SIZE) << PRS_HDR_MPLS_NEXT_HDR_SHIFT; + break; + case(HEADER_TYPE_PPPoE): + if(p_prsOpts->pppoePrsOptions.enableMTUCheck) + { +#ifdef FM_PPPOE_NO_MTU_CHECK + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("Invalid parser option")); + else +#endif /* FM_PPPOE_NO_MTU_CHECK */ + tmpReg |= PRS_HDR_PPPOE_MTU_CHECK_EN; + } + break; + case(HEADER_TYPE_IPv6): + if(p_prsOpts->ipv6PrsOptions.routingHdrDisable) + tmpReg |= PRS_HDR_IPV6_ROUTE_HDR_DIS; + break; + case(HEADER_TYPE_TCP): + if(p_prsOpts->tcpPrsOptions.padIgnoreChecksum) + tmpReg |= PRS_HDR_TCP_PAD_REMOVAL; + break; + case(HEADER_TYPE_UDP): + if(p_prsOpts->udpPrsOptions.padIgnoreChecksum) + tmpReg |= PRS_HDR_TCP_PAD_REMOVAL; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid header")); + } + } + + /* set software parsing (address is devided in 2 since parser uses 2 byte access. */ + if(p_HdrParams->swPrsEnable) + { + tmpPrsOffset = FmPcdGetSwPrsOffset(p_FmPort->h_FmPcd, p_HdrParams->hdr, p_HdrParams->indexPerHdr); + if(tmpPrsOffset == ILLEGAL_BASE) + RETURN_ERROR(MINOR, E_INVALID_VALUE, NO_MSG); + tmpReg |= (PRS_HDR_SW_PRS_EN | tmpPrsOffset); + } + *p_SoftSeqAttachReg = tmpReg; + + return E_OK; +} + +static uint32_t GetPortSchemeBindParams(t_Handle h_FmPort, t_FmPcdKgInterModuleBindPortToSchemes *p_SchemeBind) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + uint32_t walking1Mask = 0x80000000, tmp; + uint8_t idx = 0; + + p_SchemeBind->netEnvId = p_FmPort->netEnvId; + p_SchemeBind->hardwarePortId = p_FmPort->hardwarePortId; + p_SchemeBind->useClsPlan = p_FmPort->useClsPlan; + p_SchemeBind->numOfSchemes = 0; + tmp = p_FmPort->schemesPerPortVector; + if(tmp) + { + while (tmp) + { + if(tmp & walking1Mask) + { + p_SchemeBind->schemesIds[p_SchemeBind->numOfSchemes] = FmPcdKgGetSchemeSwId(p_FmPort->h_FmPcd, idx); + p_SchemeBind->numOfSchemes++; + tmp &= ~walking1Mask; + } + walking1Mask >>= 1; + idx++; + } + } + + return tmp; +} + +static t_Error BuildBufferStructure(t_FmPort *p_FmPort) +{ + uint32_t tmp; + + ASSERT_COND(p_FmPort); + + /* Align start of internal context data to 16 byte */ + p_FmPort->p_FmPortDriverParam->intContext.extBufOffset = + (uint16_t)((p_FmPort->p_FmPortDriverParam->bufferPrefixContent.privDataSize & (OFFSET_UNITS-1)) ? + ((p_FmPort->p_FmPortDriverParam->bufferPrefixContent.privDataSize + OFFSET_UNITS) & ~(uint16_t)(OFFSET_UNITS-1)) : + p_FmPort->p_FmPortDriverParam->bufferPrefixContent.privDataSize); + + /* Translate margin and intContext params to FM parameters */ +#ifdef FM_INCORRECT_CS_ERRATA_FMAN18 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + { + uint8_t mod = p_FmPort->p_FmPortDriverParam->bufferPrefixContent.dataAlign % 256; + if(mod) + { + p_FmPort->p_FmPortDriverParam->bufferPrefixContent.dataAlign += (256-mod); + DBG(WARNING,("dataAlign modified to next 256 to conform with FMAN18 errata\n")); + } + } + } +#endif /* FM_INCORRECT_CS_ERRATA_FMAN18 */ + + /* Initialize with illegal value. Later we'll set legal values. */ + p_FmPort->bufferOffsets.prsResultOffset = (uint32_t)ILLEGAL_BASE; + p_FmPort->bufferOffsets.timeStampOffset = (uint32_t)ILLEGAL_BASE; + p_FmPort->bufferOffsets.hashResultOffset= (uint32_t)ILLEGAL_BASE; + p_FmPort->bufferOffsets.pcdInfoOffset = (uint32_t)ILLEGAL_BASE; +#ifdef DEBUG + p_FmPort->bufferOffsets.debugOffset = (uint32_t)ILLEGAL_BASE; +#endif /* DEBUG */ + + /* Internally the driver supports 4 options + 1. prsResult/timestamp/hashResult selection (in fact 8 options, but for simplicity we'll + relate to it as 1). + 2. All IC context (from AD) except debug. + 3. Debug information only. + 4. All IC context (from AD) including debug. + Note, that if user asks for prsResult/timestamp/hashResult and Debug, we give them (4) */ + + /* This 'if' covers options 2 & 4. We copy from beginning of context with or without debug. */ + /* If passAllOtherPCDInfo explicitly requested, or passDebugInfo+prs/ts --> we also take passAllOtherPCDInfo */ + if ((p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passAllOtherPCDInfo) +#ifdef DEBUG + || (p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passDebugInfo && + (p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passPrsResult || + p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passTimeStamp || + p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passHashResult)) +#endif /* DEBUG */ + ) + { +#ifdef DEBUG + if(p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passDebugInfo) + { + p_FmPort->p_FmPortDriverParam->intContext.size = 240; + p_FmPort->bufferOffsets.debugOffset = + (uint32_t)(p_FmPort->p_FmPortDriverParam->intContext.extBufOffset + 128); + } + else +#endif /* DEBUG */ + p_FmPort->p_FmPortDriverParam->intContext.size = 128; /* must be aligned to 16 */ + /* Start copying data after 16 bytes (FD) from the beginning of the internal context */ + p_FmPort->p_FmPortDriverParam->intContext.intContextOffset = 16; + + if (p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passAllOtherPCDInfo) + p_FmPort->bufferOffsets.pcdInfoOffset = p_FmPort->p_FmPortDriverParam->intContext.extBufOffset; + if (p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passPrsResult) + p_FmPort->bufferOffsets.prsResultOffset = + (uint32_t)(p_FmPort->p_FmPortDriverParam->intContext.extBufOffset + 16); + if (p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passTimeStamp) + p_FmPort->bufferOffsets.timeStampOffset = + (uint32_t)(p_FmPort->p_FmPortDriverParam->intContext.extBufOffset + 48); + if (p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passHashResult) + p_FmPort->bufferOffsets.hashResultOffset = + (uint32_t)(p_FmPort->p_FmPortDriverParam->intContext.extBufOffset + 56); + } + else + { +#ifdef DEBUG + if (p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passDebugInfo) + { + /* This case covers option 3 */ + p_FmPort->p_FmPortDriverParam->intContext.size = 112; + p_FmPort->p_FmPortDriverParam->intContext.intContextOffset = 144; + p_FmPort->bufferOffsets.debugOffset = p_FmPort->p_FmPortDriverParam->intContext.extBufOffset; + } + else +#endif /* DEBUG */ + { + /* This case covers the options under 1 */ + /* Copy size must be in 16-byte granularity. */ + p_FmPort->p_FmPortDriverParam->intContext.size = + (uint16_t)((p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passPrsResult ? 32 : 0) + + ((p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passTimeStamp || + p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passHashResult) ? 16 : 0)); + + /* Align start of internal context data to 16 byte */ + p_FmPort->p_FmPortDriverParam->intContext.intContextOffset = + (uint8_t)(p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passPrsResult ? 32 : + ((p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passTimeStamp || + p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passHashResult) ? 64 : 0)); + + if(p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passPrsResult) + p_FmPort->bufferOffsets.prsResultOffset = p_FmPort->p_FmPortDriverParam->intContext.extBufOffset; + if(p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passTimeStamp) + p_FmPort->bufferOffsets.timeStampOffset = p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passPrsResult ? + (p_FmPort->p_FmPortDriverParam->intContext.extBufOffset + sizeof(t_FmPrsResult)) : + p_FmPort->p_FmPortDriverParam->intContext.extBufOffset; + if(p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passHashResult) + /* If PR is not requested, whether TS is requested or not, IC will be copied from TS */ + p_FmPort->bufferOffsets.hashResultOffset = p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passPrsResult ? + (p_FmPort->p_FmPortDriverParam->intContext.extBufOffset + sizeof(t_FmPrsResult) + 8) : + p_FmPort->p_FmPortDriverParam->intContext.extBufOffset + 8; + } + } + + p_FmPort->p_FmPortDriverParam->bufMargins.startMargins = + (uint16_t)(p_FmPort->p_FmPortDriverParam->intContext.extBufOffset + + p_FmPort->p_FmPortDriverParam->intContext.size); +#ifdef FM_CAPWAP_SUPPORT + /* save extra space for manip in both external and internal buffers */ + if(p_FmPort->p_FmPortDriverParam->bufferPrefixContent.manipExtraSpace) + { + if((p_FmPort->p_FmPortDriverParam->bufferPrefixContent.manipExtraSpace + FRAG_EXTRA_SPACE) >= 256) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("p_FmPort->p_FmPortDriverParam->bufferPrefixContent.manipExtraSpace + 32 can not be equal or larger to 256")); + p_FmPort->bufferOffsets.manipOffset = p_FmPort->p_FmPortDriverParam->bufMargins.startMargins; + p_FmPort->p_FmPortDriverParam->bufMargins.startMargins += (p_FmPort->p_FmPortDriverParam->bufferPrefixContent.manipExtraSpace + FRAG_EXTRA_SPACE); + p_FmPort->p_FmPortDriverParam->internalBufferOffset = + (uint8_t)(p_FmPort->p_FmPortDriverParam->bufferPrefixContent.manipExtraSpace + FRAG_EXTRA_SPACE); + } +#endif /* FM_CAPWAP_SUPPORT */ + + /* align data start */ + tmp = (uint32_t)(p_FmPort->p_FmPortDriverParam->bufMargins.startMargins % + p_FmPort->p_FmPortDriverParam->bufferPrefixContent.dataAlign); + if (tmp) + p_FmPort->p_FmPortDriverParam->bufMargins.startMargins += (p_FmPort->p_FmPortDriverParam->bufferPrefixContent.dataAlign-tmp); + p_FmPort->bufferOffsets.dataOffset = p_FmPort->p_FmPortDriverParam->bufMargins.startMargins; + p_FmPort->internalBufferOffset = p_FmPort->p_FmPortDriverParam->internalBufferOffset; + + return E_OK; +} + +static t_Error SetPcd(t_Handle h_FmPort, t_FmPortPcdParams *p_PcdParams) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_Error err = E_OK; + uint32_t tmpReg; + volatile uint32_t *p_BmiNia=NULL; + volatile uint32_t *p_BmiPrsNia=NULL; + volatile uint32_t *p_BmiPrsStartOffset=NULL; + volatile uint32_t *p_BmiInitPrsResult=NULL; + volatile uint32_t *p_BmiCcBase=NULL; + uint8_t hdrNum, L3HdrNum, greHdrNum; + int i; + bool isEmptyClsPlanGrp; + uint32_t tmpHxs[FM_PCD_PRS_NUM_OF_HDRS]; + uint16_t absoluteProfileId; + uint8_t physicalSchemeId; + uint32_t ccTreePhysOffset; + SANITY_CHECK_RETURN_ERROR(h_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + if (p_FmPort->imEn) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for non-independant mode ports only")); + + if ((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && + (p_FmPort->portType != e_FM_PORT_TYPE_RX) && + (p_FmPort->portType != e_FM_PORT_TYPE_OH_OFFLINE_PARSING)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx and offline parsing ports only")); + + p_FmPort->netEnvId = (uint8_t)(PTR_TO_UINT(p_PcdParams->h_NetEnv)-1); + + p_FmPort->pcdEngines = 0; + + /* initialize p_FmPort->pcdEngines field in port's structure */ + switch(p_PcdParams->pcdSupport) + { + case(e_FM_PORT_PCD_SUPPORT_NONE): + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("No PCD configuration required if e_FM_PORT_PCD_SUPPORT_NONE selected")); + case(e_FM_PORT_PCD_SUPPORT_PRS_ONLY): + p_FmPort->pcdEngines |= FM_PCD_PRS; + break; + case(e_FM_PORT_PCD_SUPPORT_PLCR_ONLY): + if (CHECK_FM_CTL_AC_POST_FETCH_PCD(p_FmPort->savedBmiNia)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("parser support is required")); + p_FmPort->pcdEngines |= FM_PCD_PLCR; + break; + case(e_FM_PORT_PCD_SUPPORT_PRS_AND_PLCR): + p_FmPort->pcdEngines |= FM_PCD_PRS; + p_FmPort->pcdEngines |= FM_PCD_PLCR; + break; + case(e_FM_PORT_PCD_SUPPORT_PRS_AND_KG): + p_FmPort->pcdEngines |= FM_PCD_PRS; + p_FmPort->pcdEngines |= FM_PCD_KG; + break; + case(e_FM_PORT_PCD_SUPPORT_PRS_AND_KG_AND_CC): + p_FmPort->pcdEngines |= FM_PCD_PRS; + p_FmPort->pcdEngines |= FM_PCD_CC; + p_FmPort->pcdEngines |= FM_PCD_KG; + break; + case(e_FM_PORT_PCD_SUPPORT_PRS_AND_KG_AND_CC_AND_PLCR): + p_FmPort->pcdEngines |= FM_PCD_PRS; + p_FmPort->pcdEngines |= FM_PCD_KG; + p_FmPort->pcdEngines |= FM_PCD_CC; + p_FmPort->pcdEngines |= FM_PCD_PLCR; + break; + case(e_FM_PORT_PCD_SUPPORT_PRS_AND_KG_AND_PLCR): + p_FmPort->pcdEngines |= FM_PCD_PRS; + p_FmPort->pcdEngines |= FM_PCD_KG; + p_FmPort->pcdEngines |= FM_PCD_PLCR; + break; + +#ifdef FM_CAPWAP_SUPPORT + case(e_FM_PORT_PCD_SUPPORT_CC_ONLY): + if (CHECK_FM_CTL_AC_POST_FETCH_PCD(p_FmPort->savedBmiNia)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("parser support is required")); + p_FmPort->pcdEngines |= FM_PCD_CC; + break; + case(e_FM_PORT_PCD_SUPPORT_CC_AND_KG): + if (CHECK_FM_CTL_AC_POST_FETCH_PCD(p_FmPort->savedBmiNia)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("parser support is required")); + p_FmPort->pcdEngines |= FM_PCD_CC; + p_FmPort->pcdEngines |= FM_PCD_KG; + break; + case(e_FM_PORT_PCD_SUPPORT_CC_AND_KG_AND_PLCR): + if (CHECK_FM_CTL_AC_POST_FETCH_PCD(p_FmPort->savedBmiNia)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("parser support is required")); + p_FmPort->pcdEngines |= FM_PCD_CC; + p_FmPort->pcdEngines |= FM_PCD_KG; + p_FmPort->pcdEngines |= FM_PCD_PLCR; + break; +#endif /* FM_CAPWAP_SUPPORT */ + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("invalid pcdSupport")); + } + + if((p_FmPort->pcdEngines & FM_PCD_PRS) && (p_PcdParams->p_PrsParams->numOfHdrsWithAdditionalParams > FM_PCD_PRS_NUM_OF_HDRS)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Port parser numOfHdrsWithAdditionalParams may not exceed %d", FM_PCD_PRS_NUM_OF_HDRS)); + + /* check that parameters exist for each and only each defined engine */ + if((!!(p_FmPort->pcdEngines & FM_PCD_PRS) != !!p_PcdParams->p_PrsParams) || + (!!(p_FmPort->pcdEngines & FM_PCD_KG) != !!p_PcdParams->p_KgParams) || + (!!(p_FmPort->pcdEngines & FM_PCD_CC) != !!p_PcdParams->p_CcParams)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("PCD initialization structure is not consistant with pcdSupport")); + + /* get PCD registers pointers */ + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_BmiNia = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rfne; + p_BmiPrsNia = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rfpne; + p_BmiPrsStartOffset = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rpso; + p_BmiInitPrsResult = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rprai[0]; + p_BmiCcBase = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rccb; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + p_BmiNia = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ofne; + p_BmiPrsNia = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ofpne; + p_BmiPrsStartOffset = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_opso; + p_BmiInitPrsResult = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_oprai[0]; + p_BmiCcBase = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_occb; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid port type")); + } + + if(p_FmPort->pcdEngines & FM_PCD_KG) + { + + if(p_PcdParams->p_KgParams->numOfSchemes == 0) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("For ports using Keygen, at lease one scheme must be bound. ")); + /* for each scheme */ + for(i = 0; ip_KgParams->numOfSchemes; i++) + { + physicalSchemeId = (uint8_t)(PTR_TO_UINT(p_PcdParams->p_KgParams->h_Schemes[i])-1); + /* build vector */ + p_FmPort->schemesPerPortVector |= 1 << (31 - (uint32_t)physicalSchemeId); + } + + err = FmPcdKgSetOrBindToClsPlanGrp(p_FmPort->h_FmPcd, + p_FmPort->hardwarePortId, + p_FmPort->netEnvId, + p_FmPort->optArray, + &p_FmPort->clsPlanGrpId, + &isEmptyClsPlanGrp); + if(err) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("FmPcdKgSetOrBindToClsPlanGrp failed. ")); + + p_FmPort->useClsPlan = !isEmptyClsPlanGrp; + } + + /* set PCD port parameter */ + if(p_FmPort->pcdEngines & FM_PCD_CC) + { + err = FmPcdCcBindTree(p_FmPort->h_FmPcd, p_PcdParams->p_CcParams->h_CcTree, &ccTreePhysOffset, h_FmPort); + if(err) + RETURN_ERROR(MINOR, err, NO_MSG); + + WRITE_UINT32(*p_BmiCcBase, ccTreePhysOffset); + p_FmPort->ccTreeId = p_PcdParams->p_CcParams->h_CcTree; + } + + /***************************/ + /* configure NIA after BMI */ + /***************************/ + if (!CHECK_FM_CTL_AC_POST_FETCH_PCD(p_FmPort->savedBmiNia)) + /* rfne may contain FDCS bits, so first we read them. */ + p_FmPort->savedBmiNia = GET_UINT32(*p_BmiNia) & BMI_RFNE_FDCS_MASK; + + /* If policer is used directly after BMI or PRS */ + if((p_FmPort->pcdEngines & FM_PCD_PLCR) && + ((p_PcdParams->pcdSupport == e_FM_PORT_PCD_SUPPORT_PLCR_ONLY) || + (p_PcdParams->pcdSupport == e_FM_PORT_PCD_SUPPORT_PRS_AND_PLCR))) + { + absoluteProfileId = (uint16_t)(PTR_TO_UINT(p_PcdParams->p_PlcrParams->h_Profile)-1); + + if(!FmPcdPlcrIsProfileValid(p_FmPort->h_FmPcd, absoluteProfileId)) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Private port profile not valid.")); + + tmpReg = (uint32_t)(absoluteProfileId | NIA_PLCR_ABSOLUTE); + + if(p_FmPort->pcdEngines & FM_PCD_PRS) /* e_FM_PCD_SUPPORT_PRS_AND_PLCR */ + { + /* update BMI HPNIA */ + WRITE_UINT32(*p_BmiPrsNia, (uint32_t)(NIA_ENG_PLCR | tmpReg)); + } + else /* e_FM_PCD_SUPPORT_PLCR_ONLY */ + /* update BMI NIA */ + p_FmPort->savedBmiNia |= (uint32_t)(NIA_ENG_PLCR); + } + +#ifdef FM_CAPWAP_SUPPORT + /* if CC is used directly after BMI */ + if((p_PcdParams->pcdSupport == e_FM_PORT_PCD_SUPPORT_CC_ONLY) || + (p_PcdParams->pcdSupport == e_FM_PORT_PCD_SUPPORT_CC_AND_KG) || + (p_PcdParams->pcdSupport == e_FM_PORT_PCD_SUPPORT_CC_AND_KG_AND_PLCR)) + { + if (p_FmPort->portType != e_FM_PORT_TYPE_OH_OFFLINE_PARSING) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("e_FM_PORT_PCD_SUPPORT_CC_xx available for offline parsing ports only")); + p_FmPort->savedBmiNia |= (uint32_t)(NIA_ENG_FM_CTL | NIA_FM_CTL_AC_CC); + /* check that prs start offset == RIM[FOF] */ + } +#endif /* FM_CAPWAP_SUPPORT */ + + if (p_FmPort->pcdEngines & FM_PCD_PRS) + { + ASSERT_COND(p_PcdParams->p_PrsParams); + /* if PRS is used it is always first */ + GET_PRS_HDR_NUM(hdrNum, p_PcdParams->p_PrsParams->firstPrsHdr); + if (hdrNum == ILLEGAL_HDR_NUM) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("Unsupported header.")); + if (!CHECK_FM_CTL_AC_POST_FETCH_PCD(p_FmPort->savedBmiNia)) + p_FmPort->savedBmiNia |= (uint32_t)(NIA_ENG_PRS | (uint32_t)(hdrNum)); + /* set after parser NIA */ + tmpReg = 0; + switch(p_PcdParams->pcdSupport) + { + case(e_FM_PORT_PCD_SUPPORT_PRS_ONLY): + WRITE_UINT32(*p_BmiPrsNia, NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME); + break; + case(e_FM_PORT_PCD_SUPPORT_PRS_AND_KG_AND_CC): + case(e_FM_PORT_PCD_SUPPORT_PRS_AND_KG_AND_CC_AND_PLCR): + tmpReg = NIA_KG_CC_EN; + case(e_FM_PORT_PCD_SUPPORT_PRS_AND_KG): + case(e_FM_PORT_PCD_SUPPORT_PRS_AND_KG_AND_PLCR): + if(p_PcdParams->p_KgParams->directScheme) + { + physicalSchemeId = (uint8_t)(PTR_TO_UINT(p_PcdParams->p_KgParams->h_DirectScheme)-1); + /* check that this scheme was bound to this port */ + for(i=0 ; ip_KgParams->numOfSchemes; i++) + if(p_PcdParams->p_KgParams->h_DirectScheme == p_PcdParams->p_KgParams->h_Schemes[i]) + break; + if(i == p_PcdParams->p_KgParams->numOfSchemes) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Direct scheme is not one of the port selected schemes.")); + tmpReg |= (uint32_t)(NIA_KG_DIRECT | physicalSchemeId); + } + WRITE_UINT32(*p_BmiPrsNia, NIA_ENG_KG | tmpReg); + break; + case(e_FM_PORT_PCD_SUPPORT_PRS_AND_PLCR): + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid PCD support")); + } + + /* set start parsing offset */ + /* WRITE_UINT32(*p_BmiPrsStartOffset, p_PcdParams->p_PrsParams->parsingOffset); */ + + /************************************/ + /* Parser port parameters */ + /************************************/ + /* stop before configuring */ + WRITE_UINT32(p_FmPort->p_FmPortPrsRegs->pcac, PRS_CAC_STOP); + /* wait for parser to be in idle state */ + while(GET_UINT32(p_FmPort->p_FmPortPrsRegs->pcac) & PRS_CAC_ACTIVE) ; + + /* set soft seq attachment register */ + memset(tmpHxs, 0, FM_PCD_PRS_NUM_OF_HDRS*sizeof(uint32_t)); + + /* set protocol options */ + for(i=0;p_FmPort->optArray[i];i++) + switch(p_FmPort->optArray[i]) + { + case(ETH_BROADCAST): + GET_PRS_HDR_NUM(hdrNum, HEADER_TYPE_ETH) + tmpHxs[hdrNum] |= (i+1) << PRS_HDR_ETH_BC_SHIFT; + break; + case(ETH_MULTICAST): + GET_PRS_HDR_NUM(hdrNum, HEADER_TYPE_ETH) + tmpHxs[hdrNum] |= (i+1) << PRS_HDR_ETH_MC_SHIFT; + break; + case(VLAN_STACKED): + GET_PRS_HDR_NUM(hdrNum, HEADER_TYPE_VLAN) + tmpHxs[hdrNum] |= (i+1)<< PRS_HDR_VLAN_STACKED_SHIFT; + break; + case(MPLS_STACKED): + GET_PRS_HDR_NUM(hdrNum, HEADER_TYPE_MPLS) + tmpHxs[hdrNum] |= (i+1) << PRS_HDR_MPLS_STACKED_SHIFT; + break; + case(IPV4_BROADCAST_1): + GET_PRS_HDR_NUM(hdrNum, HEADER_TYPE_IPv4) + tmpHxs[hdrNum] |= (i+1) << PRS_HDR_IPV4_1_BC_SHIFT; + break; + case(IPV4_MULTICAST_1): + GET_PRS_HDR_NUM(hdrNum, HEADER_TYPE_IPv4) + tmpHxs[hdrNum] |= (i+1) << PRS_HDR_IPV4_1_MC_SHIFT; + break; + case(IPV4_UNICAST_2): + GET_PRS_HDR_NUM(hdrNum, HEADER_TYPE_IPv4) + tmpHxs[hdrNum] |= (i+1) << PRS_HDR_IPV4_2_UC_SHIFT; + break; + case(IPV4_MULTICAST_BROADCAST_2): + GET_PRS_HDR_NUM(hdrNum, HEADER_TYPE_IPv4) + tmpHxs[hdrNum] |= (i+1) << PRS_HDR_IPV4_2_MC_BC_SHIFT; + break; + case(IPV6_MULTICAST_1): + GET_PRS_HDR_NUM(hdrNum, HEADER_TYPE_IPv6) + tmpHxs[hdrNum] |= (i+1) << PRS_HDR_IPV6_1_MC_SHIFT; + break; + case(IPV6_UNICAST_2): + GET_PRS_HDR_NUM(hdrNum, HEADER_TYPE_IPv6) + tmpHxs[hdrNum] |= (i+1) << PRS_HDR_IPV6_2_UC_SHIFT; + break; + case(IPV6_MULTICAST_2): + GET_PRS_HDR_NUM(hdrNum, HEADER_TYPE_IPv6) + tmpHxs[hdrNum] |= (i+1) << PRS_HDR_IPV6_2_MC_SHIFT; + break; + } + + if (FmPcdNetEnvIsHdrExist(p_FmPort->h_FmPcd, p_FmPort->netEnvId, HEADER_TYPE_UDP_ENCAP_ESP)) + { + p_PcdParams->p_PrsParams->additionalParams + [p_PcdParams->p_PrsParams->numOfHdrsWithAdditionalParams].hdr = HEADER_TYPE_UDP; + p_PcdParams->p_PrsParams->additionalParams + [p_PcdParams->p_PrsParams->numOfHdrsWithAdditionalParams].swPrsEnable = TRUE; + p_PcdParams->p_PrsParams->numOfHdrsWithAdditionalParams++; + } + + /* set MPLS default next header - HW reset workaround */ + GET_PRS_HDR_NUM(hdrNum, HEADER_TYPE_MPLS) + tmpHxs[hdrNum] |= PRS_HDR_MPLS_LBL_INTER_EN; + GET_PRS_HDR_NUM(L3HdrNum, HEADER_TYPE_USER_DEFINED_L3); + tmpHxs[hdrNum] |= (uint32_t)L3HdrNum << PRS_HDR_MPLS_NEXT_HDR_SHIFT; + + /* for GRE, disable errors */ + GET_PRS_HDR_NUM(greHdrNum, HEADER_TYPE_GRE); + tmpHxs[greHdrNum] |= PRS_HDR_ERROR_DIS; + + /* config additional params for specific headers */ + for(i=0 ; ip_PrsParams->numOfHdrsWithAdditionalParams ; i++) + { + GET_PRS_HDR_NUM(hdrNum, p_PcdParams->p_PrsParams->additionalParams[i].hdr); + if(hdrNum== ILLEGAL_HDR_NUM) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, NO_MSG); + if(hdrNum==NO_HDR_NUM) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Private headers may not use additional parameters")); + + err = AdditionalPrsParams(p_FmPort, &p_PcdParams->p_PrsParams->additionalParams[i], &tmpReg); + if(err) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, NO_MSG); + + tmpHxs[hdrNum] |= tmpReg; + } +#ifdef FM_PRS_L4_SHELL_ERRATA_FMANb + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + { + /* link to sw parser code for L4 shells - only if no other code is applied. */ + GET_PRS_HDR_NUM(hdrNum, HEADER_TYPE_SCTP) + if(!(tmpHxs[hdrNum] & PRS_HDR_SW_PRS_EN)) + tmpHxs[hdrNum] |= (PRS_HDR_SW_PRS_EN | SCTP_SW_PATCH_START); + GET_PRS_HDR_NUM(hdrNum, HEADER_TYPE_DCCP) + if(!(tmpHxs[hdrNum] & PRS_HDR_SW_PRS_EN)) + tmpHxs[hdrNum] |= (PRS_HDR_SW_PRS_EN | DCCP_SW_PATCH_START); + GET_PRS_HDR_NUM(hdrNum, HEADER_TYPE_IPSEC_AH) + if(!(tmpHxs[hdrNum] & PRS_HDR_SW_PRS_EN)) + tmpHxs[hdrNum] |= (PRS_HDR_SW_PRS_EN | IPSEC_SW_PATCH_START); + } + } +#endif /* FM_PRS_L4_SHELL_ERRATA_FMANb */ + + for(i=0 ; ip_FmPortPrsRegs->hdrs[i].lcv, FmPcdGetLcv(p_FmPort->h_FmPcd, p_FmPort->netEnvId, (uint8_t)i)); + /* set HXS register according to default+Additional params+protocol options */ + WRITE_UINT32(p_FmPort->p_FmPortPrsRegs->hdrs[i].softSeqAttach, tmpHxs[i]); + } + + /* set tpid. */ + tmpReg = PRS_TPID_DFLT; + if(p_PcdParams->p_PrsParams->setVlanTpid1) + { + tmpReg &= PRS_TPID2_MASK; + tmpReg |= (uint32_t)p_PcdParams->p_PrsParams->vlanTpid1 << PRS_PCTPID_SHIFT; + } + if(p_PcdParams->p_PrsParams->setVlanTpid2) + { + tmpReg &= PRS_TPID1_MASK; + tmpReg |= (uint32_t)p_PcdParams->p_PrsParams->vlanTpid2; + } + WRITE_UINT32(p_FmPort->p_FmPortPrsRegs->pctpid, tmpReg); + + /* enable parser */ + WRITE_UINT32(p_FmPort->p_FmPortPrsRegs->pcac, 0); + + if(p_PcdParams->p_PrsParams->prsResultPrivateInfo) + p_FmPort->privateInfo = p_PcdParams->p_PrsParams->prsResultPrivateInfo; + + } /* end parser */ + else + p_FmPort->privateInfo = 0; + + WRITE_UINT32(*p_BmiPrsStartOffset, GET_UINT32(*p_BmiPrsStartOffset) + p_FmPort->internalBufferOffset); + + /* set initial parser result - used for all engines */ + for (i=0;iprivateInfo << BMI_PR_PORTID_SHIFT) + | BMI_PRS_RESULT_HIGH)); + else + if (i< FM_PORT_PRS_RESULT_NUM_OF_WORDS/2) + WRITE_UINT32(*(p_BmiInitPrsResult+i), BMI_PRS_RESULT_HIGH); + else + WRITE_UINT32(*(p_BmiInitPrsResult+i), BMI_PRS_RESULT_LOW); + } + + return E_OK; +} + +static t_Error DeletePcd(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_Error err = E_OK; + volatile uint32_t *p_BmiNia=NULL; + + SANITY_CHECK_RETURN_ERROR(h_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + if (p_FmPort->imEn) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for non-independant mode ports only")); + + if ((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && + (p_FmPort->portType != e_FM_PORT_TYPE_RX) && + (p_FmPort->portType != e_FM_PORT_TYPE_OH_OFFLINE_PARSING)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx and offline parsing ports only")); + + if(!p_FmPort->pcdEngines) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("called for non PCD port")); + + /* get PCD registers pointers */ + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_BmiNia = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rfne; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + p_BmiNia = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ofne; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid port type")); + } + + if((GET_UINT32(*p_BmiNia) & (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME)) != (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("port has to be detached previousely")); + + /* "cut" PCD out of the port's flow - go to BMI */ + /* WRITE_UINT32(*p_BmiNia, (p_FmPort->savedBmiNia & BMI_RFNE_FDCS_MASK) | (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME)); */ + + if(p_FmPort->pcdEngines | FM_PCD_PRS) + { + /* stop parser */ + WRITE_UINT32(p_FmPort->p_FmPortPrsRegs->pcac, PRS_CAC_STOP); + /* wait for parser to be in idle state */ + while(GET_UINT32(p_FmPort->p_FmPortPrsRegs->pcac) & PRS_CAC_ACTIVE) ; + } + + if(p_FmPort->pcdEngines & FM_PCD_KG) + { + err = FmPcdKgDeleteOrUnbindPortToClsPlanGrp(p_FmPort->h_FmPcd, p_FmPort->hardwarePortId, p_FmPort->clsPlanGrpId); + if(err) + RETURN_ERROR(MINOR, err, NO_MSG); + p_FmPort->useClsPlan = FALSE; + } + + if(p_FmPort->pcdEngines & FM_PCD_CC) + { + /* unbind - we need to get the treeId too */ + err = FmPcdCcUnbindTree(p_FmPort->h_FmPcd, p_FmPort->ccTreeId); + if(err) + RETURN_ERROR(MINOR, err, NO_MSG); + } + + p_FmPort->pcdEngines = 0; + + return E_OK; +} + + +/********************************************/ +/* Inter-module API */ +/********************************************/ +void FmPortSetMacsecLcv(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + volatile uint32_t *p_BmiCfgReg = NULL; + uint32_t macsecEn = BMI_PORT_CFG_EN_MACSEC; + uint32_t lcv, walking1Mask = 0x80000000; + uint8_t cnt = 0; + + SANITY_CHECK_RETURN(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + if((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && (p_FmPort->portType != e_FM_PORT_TYPE_RX)) + { + REPORT_ERROR(MAJOR, E_INVALID_OPERATION, ("The routine is relevant for Rx ports only")); + return; + } + + p_BmiCfgReg = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rcfg; + /* get LCV for MACSEC */ + if ((p_FmPort->h_FmPcd) && ((lcv = FmPcdGetMacsecLcv(p_FmPort->h_FmPcd, p_FmPort->netEnvId))!= 0)) + { + while(!(lcv & walking1Mask)) + { + cnt++; + walking1Mask >>= 1; + } + + macsecEn |= (uint32_t)cnt << BMI_PORT_CFG_MS_SEL_SHIFT; + } + + WRITE_UINT32(*p_BmiCfgReg, GET_UINT32(*p_BmiCfgReg) | macsecEn); +} + +void FmPortSetMacsecCmd(t_Handle h_FmPort, uint8_t dfltSci) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + volatile uint32_t *p_BmiCfgReg = NULL; + uint32_t tmpReg; + + SANITY_CHECK_RETURN(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN(p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + if ((p_FmPort->portType != e_FM_PORT_TYPE_TX_10G) && (p_FmPort->portType != e_FM_PORT_TYPE_TX)) + { + REPORT_ERROR(MAJOR, E_INVALID_OPERATION, ("The routine is relevant for Tx ports only")); + return; + } + + p_BmiCfgReg = &p_FmPort->p_FmPortBmiRegs->txPortBmiRegs.fmbm_tfca; + tmpReg = GET_UINT32(*p_BmiCfgReg) & ~BMI_CMD_ATTR_MACCMD_MASK; + tmpReg |= BMI_CMD_ATTR_MACCMD_SECURED; + tmpReg |= (((uint32_t)dfltSci << BMI_CMD_ATTR_MACCMD_SC_SHIFT) & BMI_CMD_ATTR_MACCMD_SC_MASK); + + WRITE_UINT32(*p_BmiCfgReg, tmpReg); +} + +uint8_t FmPortGetNetEnvId(t_Handle h_FmPort) +{ + return ((t_FmPort*)h_FmPort)->netEnvId; +} + +uint8_t FmPortGetHardwarePortId(t_Handle h_FmPort) +{ + return ((t_FmPort*)h_FmPort)->hardwarePortId; +} + +uint32_t FmPortGetPcdEngines(t_Handle h_FmPort) +{ + return ((t_FmPort*)h_FmPort)->pcdEngines; +} + +t_Error FmPortAttachPCD(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + volatile uint32_t *p_BmiNia=NULL; + +/*TODO - to take care about the chnges that were made in the port because of the previously assigned tree. +pndn, pnen ... maybe were changed because of the Tree requirement*/ + + /* get PCD registers pointers */ + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_BmiNia = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rfne; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + p_BmiNia = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ofne; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx and offline parsing ports only")); + } + + if(p_FmPort->requiredAction & UPDATE_FMFP_PRC_WITH_ONE_RISC_ONLY) + if(FmSetNumOfRiscsPerPort(p_FmPort->h_Fm, p_FmPort->hardwarePortId, 1)!= E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + + /* check that current NIA is BMI to BMI */ + if((GET_UINT32(*p_BmiNia) & ~BMI_RFNE_FDCS_MASK) != (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("may be called only for ports in BMI-to-BMI state.")); + + WRITE_UINT32(*p_BmiNia, p_FmPort->savedBmiNia); + + if(p_FmPort->requiredAction & UPDATE_NIA_PNEN) + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnen, p_FmPort->savedQmiPnen); + + if(p_FmPort->requiredAction & UPDATE_NIA_PNDN) + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs.fmqm_pndn, p_FmPort->savedNonRxQmiRegsPndn); + + + return E_OK; +} + +t_Error FmPortGetSetCcParams(t_Handle h_FmPort, t_FmPortGetSetCcParams *p_CcParams) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + int tmpInt; + volatile uint32_t *p_BmiPrsStartOffset = NULL; + + /* this function called from Cc for pass and receive parameters port params between CC and PORT*/ + + if((p_CcParams->getCcParams.type & OFFSET_OF_PR) && (p_FmPort->bufferOffsets.prsResultOffset != ILLEGAL_BASE)) + { + p_CcParams->getCcParams.prOffset = (uint8_t)p_FmPort->bufferOffsets.prsResultOffset; + p_CcParams->getCcParams.type &= ~OFFSET_OF_PR; + } + if(p_CcParams->getCcParams.type & HW_PORT_ID) + { + p_CcParams->getCcParams.hardwarePortId = (uint8_t)p_FmPort->hardwarePortId; + p_CcParams->getCcParams.type &= ~HW_PORT_ID; + } + if((p_CcParams->getCcParams.type & OFFSET_OF_DATA) && (p_FmPort->bufferOffsets.dataOffset != ILLEGAL_BASE)) + { + p_CcParams->getCcParams.dataOffset = (uint16_t)p_FmPort->bufferOffsets.dataOffset; + p_CcParams->getCcParams.type &= ~OFFSET_OF_DATA; + } + if(p_CcParams->getCcParams.type & NUM_OF_TASKS) + { + p_CcParams->getCcParams.numOfTasks = p_FmPort->numOfTasks; + p_CcParams->getCcParams.type &= ~NUM_OF_TASKS; + } + if(p_CcParams->getCcParams.type & BUFFER_POOL_ID_FOR_MANIP) + { + if(p_CcParams->getCcParams.poolIndex < p_FmPort->extBufPools.numOfPoolsUsed) + { + p_CcParams->getCcParams.poolIdForManip = p_FmPort->extBufPools.extBufPool[p_CcParams->getCcParams.poolIndex].id; + p_CcParams->getCcParams.type &= ~BUFFER_POOL_ID_FOR_MANIP; + } + } + + if((p_CcParams->setCcParams.type & UPDATE_FMFP_PRC_WITH_ONE_RISC_ONLY) && !(p_FmPort->requiredAction & UPDATE_FMFP_PRC_WITH_ONE_RISC_ONLY)) + { + p_FmPort->requiredAction |= UPDATE_FMFP_PRC_WITH_ONE_RISC_ONLY; + } + + if((p_CcParams->setCcParams.type & UPDATE_NIA_PNEN) && !(p_FmPort->requiredAction & UPDATE_NIA_PNEN)) + { + p_FmPort->savedQmiPnen = p_CcParams->setCcParams.nia; + p_FmPort->requiredAction |= UPDATE_NIA_PNEN; + } + else if (p_CcParams->setCcParams.type & UPDATE_NIA_PNEN) + { + if(p_FmPort->savedQmiPnen != p_CcParams->setCcParams.nia) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("pnen was defined previously different")); + } + + if((p_CcParams->setCcParams.type & UPDATE_NIA_PNDN) && !(p_FmPort->requiredAction & UPDATE_NIA_PNDN)) + { + p_FmPort->savedNonRxQmiRegsPndn = p_CcParams->setCcParams.nia; + p_FmPort->requiredAction |= UPDATE_NIA_PNDN; + } + else if(p_CcParams->setCcParams.type & UPDATE_NIA_PNDN) + { + if(p_FmPort->savedNonRxQmiRegsPndn != p_CcParams->setCcParams.nia) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("pndn was defined previously different")); + } + + + if((p_CcParams->setCcParams.type & UPDATE_PSO) && !(p_FmPort->requiredAction & UPDATE_PSO)) + { + /* get PCD registers pointers */ + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_BmiPrsStartOffset = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rpso; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + p_BmiPrsStartOffset = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_opso; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid port type")); + } + /* set start parsing offset */ + tmpInt = (int)GET_UINT32(*p_BmiPrsStartOffset)+ p_CcParams->setCcParams.psoSize; + if(tmpInt>0) + WRITE_UINT32(*p_BmiPrsStartOffset, (uint32_t)tmpInt); + + p_FmPort->requiredAction |= UPDATE_PSO; + p_FmPort->savedPrsStartOffset = p_CcParams->setCcParams.psoSize; + + } + else if (p_CcParams->setCcParams.type & UPDATE_PSO) + { + if(p_FmPort->savedPrsStartOffset != p_CcParams->setCcParams.psoSize) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("parser start offset was defoned previousley different")); + } + return E_OK; +} +/********************************** End of inter-module routines ********************************/ + +/****************************************/ +/* API Init unit functions */ +/****************************************/ +t_Handle FM_PORT_Config(t_FmPortParams *p_FmPortParams) +{ + t_FmPort *p_FmPort; + uintptr_t baseAddr = p_FmPortParams->baseAddr; + + /* Allocate FM structure */ + p_FmPort = (t_FmPort *) XX_Malloc(sizeof(t_FmPort)); + if (!p_FmPort) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM Port driver structure")); + return NULL; + } + memset(p_FmPort, 0, sizeof(t_FmPort)); + + /* Allocate the FM driver's parameters structure */ + p_FmPort->p_FmPortDriverParam = (t_FmPortDriverParam *)XX_Malloc(sizeof(t_FmPortDriverParam)); + if (!p_FmPort->p_FmPortDriverParam) + { + XX_Free(p_FmPort); + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM Port driver parameters")); + return NULL; + } + memset(p_FmPort->p_FmPortDriverParam, 0, sizeof(t_FmPortDriverParam)); + + /* Initialize FM port parameters which will be kept by the driver */ + p_FmPort->portType = p_FmPortParams->portType; + p_FmPort->portId = p_FmPortParams->portId; + p_FmPort->pcdEngines = FM_PCD_NONE; + p_FmPort->f_Exception = p_FmPortParams->f_Exception; + p_FmPort->h_App = p_FmPortParams->h_App; + p_FmPort->h_Fm = p_FmPortParams->h_Fm; + + /* calculate global portId number */ + SW_PORT_ID_TO_HW_PORT_ID(p_FmPort->hardwarePortId, p_FmPort->portType, p_FmPortParams->portId); + + /* Initialize FM port parameters for initialization phase only */ + p_FmPort->p_FmPortDriverParam->baseAddr = baseAddr; + p_FmPort->p_FmPortDriverParam->bufferPrefixContent.privDataSize = DEFAULT_PORT_bufferPrefixContent_privDataSize; + p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passPrsResult= DEFAULT_PORT_bufferPrefixContent_passPrsResult; + p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passTimeStamp= DEFAULT_PORT_bufferPrefixContent_passTimeStamp; + p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passAllOtherPCDInfo + = DEFAULT_PORT_bufferPrefixContent_passTimeStamp; +#ifdef DEBUG + p_FmPort->p_FmPortDriverParam->bufferPrefixContent.passDebugInfo= DEFAULT_PORT_bufferPrefixContent_debugInfo; +#endif /* DEBUG */ + p_FmPort->p_FmPortDriverParam->bufferPrefixContent.dataAlign = DEFAULT_PORT_bufferPrefixContent_dataAlign; + p_FmPort->p_FmPortDriverParam->dmaSwapData = DEFAULT_PORT_dmaSwapData; + p_FmPort->p_FmPortDriverParam->dmaIntContextCacheAttr = DEFAULT_PORT_dmaIntContextCacheAttr; + p_FmPort->p_FmPortDriverParam->dmaHeaderCacheAttr = DEFAULT_PORT_dmaHeaderCacheAttr; + p_FmPort->p_FmPortDriverParam->dmaScatterGatherCacheAttr = DEFAULT_PORT_dmaScatterGatherCacheAttr; + p_FmPort->p_FmPortDriverParam->dmaWriteOptimize = DEFAULT_PORT_dmaWriteOptimize; + p_FmPort->p_FmPortDriverParam->liodnBase = p_FmPortParams->liodnBase; + + /* resource distribution. */ + p_FmPort->fifoBufs.num = DEFAULT_PORT_sizeOfFifo(p_FmPort->portType); + p_FmPort->fifoBufs.extra = DEFAULT_PORT_extraSizeOfFifo(p_FmPort->portType); + p_FmPort->openDmas.num = DEFAULT_PORT_numOfOpenDmas(p_FmPort->portType); + p_FmPort->openDmas.extra = DEFAULT_PORT_extraNumOfOpenDmas(p_FmPort->portType); + p_FmPort->tasks.num = DEFAULT_PORT_numOfTasks(p_FmPort->portType); + p_FmPort->tasks.extra = DEFAULT_PORT_extraNumOfTasks(p_FmPort->portType); + p_FmPort->numOfTasks = (uint8_t)p_FmPort->tasks.num; +#ifdef FM_PORT_EXCESSIVE_BUDGET_ERRATA_FMANx16 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + { + p_FmPort->fifoBufs.extra = 0; + p_FmPort->openDmas.extra = 0; + p_FmPort->tasks.extra = 0; + } + } +#endif /* FM_PORT_EXCESSIVE_BUDGET_ERRATA_FMANx16 */ + + p_FmPort->p_FmPortDriverParam->color = DEFAULT_PORT_color; +#ifdef FM_OP_PORT_QMAN_REJECT_ERRATA_FMAN21 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0) && + (p_FmPort->portType == e_FM_PORT_TYPE_OH_OFFLINE_PARSING)) + p_FmPort->p_FmPortDriverParam->color = e_FM_PORT_COLOR_OVERRIDE; + } +#endif /* FM_OP_PORT_QMAN_REJECT_ERRATA_FMAN21 */ + + if (p_FmPort->portType == e_FM_PORT_TYPE_OH_HOST_COMMAND) + p_FmPort->p_FmPortDriverParam->syncReq = DEFAULT_PORT_syncReqForHc; + else + p_FmPort->p_FmPortDriverParam->syncReq = DEFAULT_PORT_syncReq; + +#ifdef FM_PORT_SYNC_ERRATA_FMAN6 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0) && + (p_FmPort->portType != e_FM_PORT_TYPE_OH_OFFLINE_PARSING)) + p_FmPort->p_FmPortDriverParam->syncReq = FALSE; + } +#endif /* FM_PORT_SYNC_ERRATA_FMAN6 */ + + /* Port type specific initialization: */ + if ((p_FmPort->portType != e_FM_PORT_TYPE_TX) && + (p_FmPort->portType != e_FM_PORT_TYPE_TX_10G)) + p_FmPort->p_FmPortDriverParam->frmDiscardOverride = DEFAULT_PORT_frmDiscardOverride; + + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX): + case(e_FM_PORT_TYPE_RX_10G): + /* Initialize FM port parameters for initialization phase only */ + p_FmPort->p_FmPortDriverParam->cutBytesFromEnd = DEFAULT_PORT_cutBytesFromEnd; + p_FmPort->p_FmPortDriverParam->enBufPoolDepletion = FALSE; + p_FmPort->p_FmPortDriverParam->frmDiscardOverride = DEFAULT_PORT_frmDiscardOverride; + p_FmPort->p_FmPortDriverParam->rxFifoPriElevationLevel = DEFAULT_PORT_rxFifoPriElevationLevel; + p_FmPort->p_FmPortDriverParam->rxFifoThreshold = DEFAULT_PORT_rxFifoThreshold; + p_FmPort->p_FmPortDriverParam->bufMargins.endMargins = DEFAULT_PORT_BufMargins_endMargins; + p_FmPort->p_FmPortDriverParam->errorsToDiscard = DEFAULT_PORT_errorsToDiscard; + p_FmPort->p_FmPortDriverParam->cheksumLastBytesIgnore = DEFAULT_PORT_cheksumLastBytesIgnore; + p_FmPort->p_FmPortDriverParam->forwardReuseIntContext = DEFAULT_PORT_forwardIntContextReuse; + break; + + case(e_FM_PORT_TYPE_TX): + p_FmPort->txFifoDeqPipelineDepth = DEFAULT_PORT_txFifoDeqPipelineDepth_1G; + p_FmPort->p_FmPortDriverParam->dontReleaseBuf = FALSE; + case(e_FM_PORT_TYPE_TX_10G): + if(p_FmPort->portType == e_FM_PORT_TYPE_TX_10G) + p_FmPort->txFifoDeqPipelineDepth = DEFAULT_PORT_txFifoDeqPipelineDepth_10G; + p_FmPort->p_FmPortDriverParam->cheksumLastBytesIgnore = DEFAULT_PORT_cheksumLastBytesIgnore; + p_FmPort->p_FmPortDriverParam->txFifoMinFillLevel = DEFAULT_PORT_txFifoMinFillLevel; + p_FmPort->p_FmPortDriverParam->txFifoLowComfLevel = DEFAULT_PORT_txFifoLowComfLevel; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + case(e_FM_PORT_TYPE_OH_HOST_COMMAND): + p_FmPort->p_FmPortDriverParam->deqHighPriority = DEFAULT_PORT_deqHighPriority; + p_FmPort->p_FmPortDriverParam->deqType = DEFAULT_PORT_deqType; +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT + p_FmPort->p_FmPortDriverParam->deqPrefetchOption = DEFAULT_PORT_deqPrefetchOption; +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ + p_FmPort->p_FmPortDriverParam->deqByteCnt = DEFAULT_PORT_deqByteCnt; + + if (p_FmPort->portType == e_FM_PORT_TYPE_OH_OFFLINE_PARSING) + p_FmPort->p_FmPortDriverParam->errorsToDiscard = DEFAULT_PORT_errorsToDiscard; + break; + + default: + XX_Free(p_FmPort->p_FmPortDriverParam); + XX_Free(p_FmPort); + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("Invalid port type")); + return NULL; + } +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT + if (p_FmPort->portType == e_FM_PORT_TYPE_OH_HOST_COMMAND) + p_FmPort->p_FmPortDriverParam->deqPrefetchOption = DEFAULT_PORT_deqPrefetchOption_HC; +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ + + if ((p_FmPort->portType == e_FM_PORT_TYPE_OH_OFFLINE_PARSING) || + (p_FmPort->portType == e_FM_PORT_TYPE_OH_HOST_COMMAND)) + p_FmPort->txFifoDeqPipelineDepth = OH_PIPELINE_DEPTH; + + p_FmPort->imEn = p_FmPortParams->independentModeEnable; + + if (p_FmPort->imEn) + { + if ((p_FmPort->portType == e_FM_PORT_TYPE_TX) || + (p_FmPort->portType == e_FM_PORT_TYPE_TX_10G)) + p_FmPort->txFifoDeqPipelineDepth = DEFAULT_PORT_txFifoDeqPipelineDepth_IM; + FmPortConfigIM(p_FmPort, p_FmPortParams); + } + else + { + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX): + case(e_FM_PORT_TYPE_RX_10G): + /* Initialize FM port parameters for initialization phase only */ + memcpy(&p_FmPort->p_FmPortDriverParam->extBufPools, + &p_FmPortParams->specificParams.rxParams.extBufPools, + sizeof(t_FmPortExtPools)); + p_FmPort->p_FmPortDriverParam->errFqid = p_FmPortParams->specificParams.rxParams.errFqid; + p_FmPort->p_FmPortDriverParam->dfltFqid = p_FmPortParams->specificParams.rxParams.dfltFqid; + p_FmPort->p_FmPortDriverParam->liodnOffset = p_FmPortParams->specificParams.rxParams.liodnOffset; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): +#ifdef FM_OP_PARTITION_ERRATA_FMANx8 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + p_FmPort->p_FmPortDriverParam->liodnOffset = p_FmPortParams->specificParams.nonRxParams.opLiodnOffset; + } +#endif /* FM_OP_PARTITION_ERRATA_FMANx8 */ + case(e_FM_PORT_TYPE_TX): + case(e_FM_PORT_TYPE_TX_10G): + case(e_FM_PORT_TYPE_OH_HOST_COMMAND): + p_FmPort->p_FmPortDriverParam->errFqid = p_FmPortParams->specificParams.nonRxParams.errFqid; + p_FmPort->p_FmPortDriverParam->deqSubPortal = + (uint8_t)(p_FmPortParams->specificParams.nonRxParams.qmChannel & QMI_DEQ_CFG_SUBPORTAL_MASK); + p_FmPort->p_FmPortDriverParam->dfltFqid = p_FmPortParams->specificParams.nonRxParams.dfltFqid; + break; + default: + XX_Free(p_FmPort->p_FmPortDriverParam); + XX_Free(p_FmPort); + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("Invalid port type")); + return NULL; + } + } + + memset(p_FmPort->name, 0, (sizeof(char)) * MODULE_NAME_SIZE); + if(Sprint (p_FmPort->name, "FM-%d-port-%s-%d", + FmGetId(p_FmPort->h_Fm), + ((p_FmPort->portType == e_FM_PORT_TYPE_OH_OFFLINE_PARSING || + (p_FmPort->portType == e_FM_PORT_TYPE_OH_HOST_COMMAND)) ? + "OH" : (p_FmPort->portType == e_FM_PORT_TYPE_RX ? + "1g-RX" : (p_FmPort->portType == e_FM_PORT_TYPE_TX ? + "1g-TX" : (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G ? + "10g-RX" : "10g-TX")))), + p_FmPort->portId) == 0) + { + XX_Free(p_FmPort->p_FmPortDriverParam); + XX_Free(p_FmPort); + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("Sprint failed")); + return NULL; + } + + p_FmPort->h_Spinlock = XX_InitSpinlock(); + if (!p_FmPort->h_Spinlock) + { + XX_Free(p_FmPort->p_FmPortDriverParam); + XX_Free(p_FmPort); + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("Sprint failed")); + return NULL; + } + + return p_FmPort; +} + +/**************************************************************************//** + @Function FM_PORT_Init + + @Description Initializes the FM module + + @Param[in] h_FmPort - FM module descriptor + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_PORT_Init(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_FmPortDriverParam *p_Params; + t_Error err = E_OK; + t_FmInterModulePortInitParams fmParams; + uint32_t minFifoSizeRequired = 0; + + SANITY_CHECK_RETURN_ERROR(h_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + if ((err = BuildBufferStructure(p_FmPort)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + + CHECK_INIT_PARAMETERS(p_FmPort, CheckInitParameters); + + p_Params = p_FmPort->p_FmPortDriverParam; + + /* set memory map pointers */ + p_FmPort->p_FmPortQmiRegs = (t_FmPortQmiRegs *)UINT_TO_PTR(p_Params->baseAddr + QMI_PORT_REGS_OFFSET); + p_FmPort->p_FmPortBmiRegs = (u_FmPortBmiRegs *)UINT_TO_PTR(p_Params->baseAddr + BMI_PORT_REGS_OFFSET); + p_FmPort->p_FmPortPrsRegs = (t_FmPortPrsRegs *)UINT_TO_PTR(p_Params->baseAddr + PRS_PORT_REGS_OFFSET); + + /* For O/H ports, check fifo size and update if necessary */ + if ((p_FmPort->portType == e_FM_PORT_TYPE_OH_OFFLINE_PARSING) || (p_FmPort->portType == e_FM_PORT_TYPE_OH_HOST_COMMAND)) + { + minFifoSizeRequired = (uint32_t)((p_FmPort->txFifoDeqPipelineDepth+4)*BMI_FIFO_UNITS); + if (p_FmPort->fifoBufs.num < minFifoSizeRequired) + { + p_FmPort->fifoBufs.num = minFifoSizeRequired; + DBG(WARNING, ("FIFO size enlarged to %d due to txFifoDeqPipelineDepth size", minFifoSizeRequired)); + } + } + + /* For Rx Ports, call the external Buffer routine which also checks fifo + size and updates it if necessary */ + if(((p_FmPort->portType == e_FM_PORT_TYPE_RX) || (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G)) + && !p_FmPort->imEn) + { + /* define external buffer pools and pool depletion*/ + err = SetExtBufferPools(p_FmPort); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + /************************************************************/ + /* Call FM module routine for communicating parameters */ + /************************************************************/ + memset(&fmParams, 0, sizeof(fmParams)); + fmParams.hardwarePortId = p_FmPort->hardwarePortId; + fmParams.portType = (e_FmPortType)p_FmPort->portType; + fmParams.numOfTasks = (uint8_t)p_FmPort->tasks.num; + fmParams.numOfExtraTasks = (uint8_t)p_FmPort->tasks.extra; + fmParams.numOfOpenDmas = (uint8_t)p_FmPort->openDmas.num; + fmParams.numOfExtraOpenDmas = (uint8_t)p_FmPort->openDmas.extra; + fmParams.sizeOfFifo = p_FmPort->fifoBufs.num; + fmParams.extraSizeOfFifo = p_FmPort->fifoBufs.extra; + fmParams.independentMode = p_FmPort->imEn; + fmParams.liodnOffset = p_Params->liodnOffset; + fmParams.liodnBase = p_Params->liodnBase; + + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + break; + case(e_FM_PORT_TYPE_TX_10G): + case(e_FM_PORT_TYPE_TX): + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + case(e_FM_PORT_TYPE_OH_HOST_COMMAND): + fmParams.deqPipelineDepth = p_FmPort->txFifoDeqPipelineDepth; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + } + + err = FmGetSetPortParams(p_FmPort->h_Fm, &fmParams); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + + p_FmPort->tasks.num = fmParams.numOfTasks; + p_FmPort->tasks.extra = fmParams.numOfExtraTasks; + p_FmPort->openDmas.num = fmParams.numOfOpenDmas; + p_FmPort->openDmas.extra = fmParams.numOfExtraOpenDmas; + p_FmPort->fifoBufs.num = fmParams.sizeOfFifo; + p_FmPort->fifoBufs.extra = fmParams.extraSizeOfFifo; + + /* get params for use in init */ + p_Params->fmMuramPhysBaseAddr = + (uint64_t)((uint64_t)(fmParams.fmMuramPhysBaseAddr.low) | + ((uint64_t)(fmParams.fmMuramPhysBaseAddr.high) << 32)); + + /**********************/ + /* Init BMI Registers */ + /**********************/ + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + err = BmiRxPortInit(p_FmPort); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + break; + case(e_FM_PORT_TYPE_TX_10G): + case(e_FM_PORT_TYPE_TX): + err = BmiTxPortInit(p_FmPort); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + case(e_FM_PORT_TYPE_OH_HOST_COMMAND): + err = BmiOhPortInit(p_FmPort); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + } + + /**********************/ + /* Init QMI Registers */ + /**********************/ + if (!p_FmPort->imEn && ((err = QmiInit(p_FmPort)) != E_OK)) + RETURN_ERROR(MAJOR, err, NO_MSG); + + if (p_FmPort->imEn && ((err = FmPortImInit(p_FmPort)) != E_OK)) + RETURN_ERROR(MAJOR, err, NO_MSG); + + FmPortDriverParamFree(p_FmPort); + + return E_OK; +} + +/**************************************************************************//** + @Function FM_PORT_Free + + @Description Frees all resources that were assigned to FM module. + + Calling this routine invalidates the descriptor. + + @Param[in] h_FmPort - FM module descriptor + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_PORT_Free(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_FmInterModulePortFreeParams fmParams; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + + if(p_FmPort->pcdEngines) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Trying to free a port with PCD. FM_PORT_DeletePCD must be called first.")); + + if (p_FmPort->enabled) + { + if (FM_PORT_Disable(p_FmPort) != E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("FM_PORT_Disable FAILED")); + } + + if (p_FmPort->h_Spinlock) + XX_FreeSpinlock(p_FmPort->h_Spinlock); + + FmPortDriverParamFree(p_FmPort); + + if (p_FmPort->imEn) + FmPortImFree(p_FmPort); + + fmParams.hardwarePortId = p_FmPort->hardwarePortId; + fmParams.portType = (e_FmPortType)p_FmPort->portType; +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT + fmParams.deqPipelineDepth = p_FmPort->txFifoDeqPipelineDepth; +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ + + FmFreePortParams(p_FmPort->h_Fm, &fmParams); + + XX_Free(p_FmPort); + + return E_OK; +} + + +/*************************************************/ +/* API Advanced Init unit functions */ +/*************************************************/ + +t_Error FM_PORT_ConfigDeqHighPriority(t_Handle h_FmPort, bool highPri) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if((p_FmPort->portType == e_FM_PORT_TYPE_RX_10G) || (p_FmPort->portType == e_FM_PORT_TYPE_RX)) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("not available for Rx ports")); + + p_FmPort->p_FmPortDriverParam->deqHighPriority = highPri; + + return E_OK; +} + +t_Error FM_PORT_ConfigDeqType(t_Handle h_FmPort, e_FmPortDeqType deqType) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if((p_FmPort->portType == e_FM_PORT_TYPE_RX_10G) || (p_FmPort->portType == e_FM_PORT_TYPE_RX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("not available for Rx ports")); + + p_FmPort->p_FmPortDriverParam->deqType = deqType; + + return E_OK; +} + +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT +t_Error FM_PORT_ConfigDeqPrefetchOption(t_Handle h_FmPort, e_FmPortDeqPrefetchOption deqPrefetchOption) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if((p_FmPort->portType == e_FM_PORT_TYPE_RX_10G) || (p_FmPort->portType == e_FM_PORT_TYPE_RX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("not available for Rx ports")); + p_FmPort->p_FmPortDriverParam->deqPrefetchOption = deqPrefetchOption; + return E_OK; +} +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ + +t_Error FM_PORT_ConfigBackupPools(t_Handle h_FmPort, t_FmPortBackupBmPools *p_BackupBmPools) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; +#ifdef FM_NO_BACKUP_POOLS + t_FmRevisionInfo revInfo; +#endif /* FM_NO_BACKUP_POOLS */ + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && (p_FmPort->portType != e_FM_PORT_TYPE_RX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx ports only")); + +#ifdef FM_NO_BACKUP_POOLS + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if (revInfo.majorRev != 4) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("FM_PORT_ConfigBackupPools")); +#endif /* FM_NO_BACKUP_POOLS */ + + p_FmPort->p_FmPortDriverParam->p_BackupBmPools = (t_FmPortBackupBmPools *)XX_Malloc(sizeof(t_FmPortBackupBmPools)); + if(!p_FmPort->p_FmPortDriverParam->p_BackupBmPools) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("p_BackupBmPools allocation failed")); + memcpy(p_FmPort->p_FmPortDriverParam->p_BackupBmPools, p_BackupBmPools, sizeof(t_FmPortBackupBmPools)); + + return E_OK; +} + +t_Error FM_PORT_ConfigDeqByteCnt(t_Handle h_FmPort, uint16_t deqByteCnt) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if((p_FmPort->portType == e_FM_PORT_TYPE_RX_10G) || (p_FmPort->portType == e_FM_PORT_TYPE_RX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("not available for Rx ports")); + + p_FmPort->p_FmPortDriverParam->deqByteCnt = deqByteCnt; + + return E_OK; +} + +t_Error FM_PORT_ConfigBufferPrefixContent(t_Handle h_FmPort, t_FmPortBufferPrefixContent *p_FmPortBufferPrefixContent) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + memcpy(&p_FmPort->p_FmPortDriverParam->bufferPrefixContent, p_FmPortBufferPrefixContent, sizeof(t_FmPortBufferPrefixContent)); + /* if dataAlign was not initialized by user, we return to driver's deafult */ + if (!p_FmPort->p_FmPortDriverParam->bufferPrefixContent.dataAlign) + p_FmPort->p_FmPortDriverParam->bufferPrefixContent.dataAlign = DEFAULT_PORT_bufferPrefixContent_dataAlign; + + return E_OK; +} + +t_Error FM_PORT_ConfigCheksumLastBytesIgnore(t_Handle h_FmPort, uint8_t cheksumLastBytesIgnore) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if((p_FmPort->portType == e_FM_PORT_TYPE_OH_OFFLINE_PARSING) || (p_FmPort->portType == e_FM_PORT_TYPE_OH_HOST_COMMAND)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx & Tx ports only")); + + p_FmPort->p_FmPortDriverParam->cheksumLastBytesIgnore = cheksumLastBytesIgnore; + + return E_OK; +} + +t_Error FM_PORT_ConfigCutBytesFromEnd(t_Handle h_FmPort, uint8_t cutBytesFromEnd) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && (p_FmPort->portType != e_FM_PORT_TYPE_RX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx ports only")); + + p_FmPort->p_FmPortDriverParam->cutBytesFromEnd = cutBytesFromEnd; + + return E_OK; +} + +t_Error FM_PORT_ConfigPoolDepletion(t_Handle h_FmPort, t_FmPortBufPoolDepletion *p_BufPoolDepletion) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && (p_FmPort->portType != e_FM_PORT_TYPE_RX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx ports only")); + + p_FmPort->p_FmPortDriverParam->enBufPoolDepletion = TRUE; + memcpy(&p_FmPort->p_FmPortDriverParam->bufPoolDepletion, p_BufPoolDepletion, sizeof(t_FmPortBufPoolDepletion)); + + return E_OK; +} + +t_Error FM_PORT_ConfigObservedPoolDepletion(t_Handle h_FmPort, t_FmPortObservedBufPoolDepletion *p_FmPortObservedBufPoolDepletion) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if(p_FmPort->portType != e_FM_PORT_TYPE_OH_OFFLINE_PARSING) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for OP ports only")); + + p_FmPort->p_FmPortDriverParam->enBufPoolDepletion = TRUE; + memcpy(&p_FmPort->p_FmPortDriverParam->bufPoolDepletion, &p_FmPortObservedBufPoolDepletion->poolDepletionParams, sizeof(t_FmPortBufPoolDepletion)); + memcpy(&p_FmPort->p_FmPortDriverParam->extBufPools, &p_FmPortObservedBufPoolDepletion->poolsParams, sizeof(t_FmPortExtPools)); + + return E_OK; +} + +t_Error FM_PORT_ConfigExtBufPools(t_Handle h_FmPort, t_FmPortExtPools *p_FmPortExtPools) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if(p_FmPort->portType != e_FM_PORT_TYPE_OH_OFFLINE_PARSING) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for OP ports only")); + + memcpy(&p_FmPort->p_FmPortDriverParam->extBufPools, p_FmPortExtPools, sizeof(t_FmPortExtPools)); + + return E_OK; +} + +t_Error FM_PORT_ConfigRxFifoThreshold(t_Handle h_FmPort, uint32_t fifoThreshold) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && (p_FmPort->portType != e_FM_PORT_TYPE_RX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx ports only")); + + p_FmPort->p_FmPortDriverParam->rxFifoThreshold = fifoThreshold; + + return E_OK; +} + +t_Error FM_PORT_ConfigRxFifoPriElevationLevel(t_Handle h_FmPort, uint32_t priElevationLevel) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && (p_FmPort->portType != e_FM_PORT_TYPE_RX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx ports only")); + + p_FmPort->p_FmPortDriverParam->rxFifoPriElevationLevel = priElevationLevel; + + return E_OK; +} + +t_Error FM_PORT_ConfigTxFifoMinFillLevel(t_Handle h_FmPort, uint32_t minFillLevel) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if((p_FmPort->portType != e_FM_PORT_TYPE_TX_10G) && (p_FmPort->portType != e_FM_PORT_TYPE_TX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Tx ports only")); + + p_FmPort->p_FmPortDriverParam->txFifoMinFillLevel = minFillLevel; + + return E_OK; +} + +t_Error FM_PORT_ConfigTxFifoDeqPipelineDepth(t_Handle h_FmPort, uint8_t deqPipelineDepth) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if ((p_FmPort->portType != e_FM_PORT_TYPE_TX_10G) && + (p_FmPort->portType != e_FM_PORT_TYPE_TX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Tx ports only")); + if (p_FmPort->imEn) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("Not available for IM ports!")); + + p_FmPort->txFifoDeqPipelineDepth = deqPipelineDepth; + + return E_OK; +} + +t_Error FM_PORT_ConfigTxFifoLowComfLevel(t_Handle h_FmPort, uint32_t fifoLowComfLevel) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if((p_FmPort->portType != e_FM_PORT_TYPE_TX_10G) && (p_FmPort->portType != e_FM_PORT_TYPE_TX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Tx ports only")); + + p_FmPort->p_FmPortDriverParam->txFifoLowComfLevel = fifoLowComfLevel; + + return E_OK; +} + +t_Error FM_PORT_ConfigDontReleaseTxBufToBM(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if((p_FmPort->portType != e_FM_PORT_TYPE_TX_10G) && (p_FmPort->portType != e_FM_PORT_TYPE_TX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Tx ports only")); + + p_FmPort->p_FmPortDriverParam->dontReleaseBuf = TRUE; + + return E_OK; +} + +t_Error FM_PORT_ConfigDfltColor(t_Handle h_FmPort, e_FmPortColor color) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); +#ifdef FM_OP_PORT_QMAN_REJECT_ERRATA_FMAN21 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("FM_PORT_ConfigDfltColor!")); + } +#endif /* FM_OP_PORT_QMAN_REJECT_ERRATA_FMAN21 */ + p_FmPort->p_FmPortDriverParam->color = color; + + return E_OK; +} + +t_Error FM_PORT_ConfigSyncReq(t_Handle h_FmPort, bool syncReq) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); +#ifdef FM_PORT_SYNC_ERRATA_FMAN6 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("port-sync!")); + } +#endif /* FM_PORT_SYNC_ERRATA_FMAN6 */ + + p_FmPort->p_FmPortDriverParam->syncReq = syncReq; + + return E_OK; +} + + +t_Error FM_PORT_ConfigFrmDiscardOverride(t_Handle h_FmPort, bool override) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if((p_FmPort->portType == e_FM_PORT_TYPE_TX_10G) && (p_FmPort->portType == e_FM_PORT_TYPE_TX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("not available for Tx ports")); + + p_FmPort->p_FmPortDriverParam->frmDiscardOverride = override; + + return E_OK; +} + +t_Error FM_PORT_ConfigErrorsToDiscard(t_Handle h_FmPort, fmPortFrameErrSelect_t errs) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + if((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && (p_FmPort->portType != e_FM_PORT_TYPE_RX) && + (p_FmPort->portType != e_FM_PORT_TYPE_OH_OFFLINE_PARSING)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx and offline parsing ports only")); + + p_FmPort->p_FmPortDriverParam->errorsToDiscard = errs; + + return E_OK; +} + +t_Error FM_PORT_ConfigDmaSwapData(t_Handle h_FmPort, e_FmPortDmaSwap swapData) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + p_FmPort->p_FmPortDriverParam->dmaSwapData = swapData; + + return E_OK; +} + +t_Error FM_PORT_ConfigDmaIcCacheAttr(t_Handle h_FmPort, e_FmPortDmaCache intContextCacheAttr) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + p_FmPort->p_FmPortDriverParam->dmaIntContextCacheAttr = intContextCacheAttr; + + return E_OK; +} + +t_Error FM_PORT_ConfigDmaHdrAttr(t_Handle h_FmPort, e_FmPortDmaCache headerCacheAttr) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + p_FmPort->p_FmPortDriverParam->dmaHeaderCacheAttr = headerCacheAttr; + + return E_OK; +} + +t_Error FM_PORT_ConfigDmaScatterGatherAttr(t_Handle h_FmPort, e_FmPortDmaCache scatterGatherCacheAttr) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + p_FmPort->p_FmPortDriverParam->dmaScatterGatherCacheAttr = scatterGatherCacheAttr; + + return E_OK; +} + +t_Error FM_PORT_ConfigDmaWriteOptimize(t_Handle h_FmPort, bool optimize) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + if((p_FmPort->portType == e_FM_PORT_TYPE_TX_10G) || (p_FmPort->portType == e_FM_PORT_TYPE_TX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("Not available for Tx ports")); + + p_FmPort->p_FmPortDriverParam->dmaWriteOptimize = optimize; + + return E_OK; +} + +t_Error FM_PORT_ConfigForwardReuseIntContext(t_Handle h_FmPort, bool forwardReuse) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + if((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && (p_FmPort->portType != e_FM_PORT_TYPE_RX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx ports only")); + + p_FmPort->p_FmPortDriverParam->forwardReuseIntContext = forwardReuse; + + return E_OK; +} + + +/****************************************************/ +/* PCD Advaced config API */ +/****************************************************/ + +/****************************************************/ +/* API Run-time Control unit functions */ +/****************************************************/ + +t_Error FM_PORT_SetNumOfOpenDmas(t_Handle h_FmPort, t_FmPortRsrc *p_NumOfOpenDmas) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_Error err; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + +#ifdef FM_PORT_EXCESSIVE_BUDGET_ERRATA_FMANx16 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0) && + (p_NumOfOpenDmas->extra)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("excessive resources")); + } +#endif /* FM_PORT_EXCESSIVE_BUDGET_ERRATA_FMANx16 */ + + if((!p_NumOfOpenDmas->num) || (p_NumOfOpenDmas->num > MAX_NUM_OF_DMAS)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("openDmas-num can't be larger than %d", MAX_NUM_OF_DMAS)); + if(p_NumOfOpenDmas->extra > MAX_NUM_OF_EXTRA_DMAS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("openDmas-extra can't be larger than %d", MAX_NUM_OF_EXTRA_DMAS)); + err = FmSetNumOfOpenDmas(p_FmPort->h_Fm, p_FmPort->hardwarePortId, (uint8_t)p_NumOfOpenDmas->num, (uint8_t)p_NumOfOpenDmas->extra, FALSE); + if(err) + RETURN_ERROR(MINOR, err, NO_MSG); + + memcpy(&p_FmPort->openDmas, p_NumOfOpenDmas, sizeof(t_FmPortRsrc)); + + return E_OK; +} + +t_Error FM_PORT_SetNumOfTasks(t_Handle h_FmPort, t_FmPortRsrc *p_NumOfTasks) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_Error err; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + if (p_FmPort->portType == e_FM_PORT_TYPE_OH_HOST_COMMAND) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("not available for host command port where number is always 1")); + +#ifdef FM_PORT_EXCESSIVE_BUDGET_ERRATA_FMANx16 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0) && + (p_NumOfTasks->extra)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("excessive resources")); + } +#endif /* FM_PORT_EXCESSIVE_BUDGET_ERRATA_FMANx16 */ + + if((!p_NumOfTasks->num) || (p_NumOfTasks->num > MAX_NUM_OF_TASKS)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("NumOfTasks-num can't be larger than %d", MAX_NUM_OF_TASKS)); + if(p_NumOfTasks->extra > MAX_NUM_OF_EXTRA_TASKS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("NumOfTasks-extra can't be larger than %d", MAX_NUM_OF_EXTRA_TASKS)); + + err = FmSetNumOfTasks(p_FmPort->h_Fm, p_FmPort->hardwarePortId, (uint8_t)p_NumOfTasks->num, (uint8_t)p_NumOfTasks->extra, FALSE); + if(err) + RETURN_ERROR(MINOR, err, NO_MSG); + + /* update driver's struct */ + memcpy(&p_FmPort->tasks, p_NumOfTasks, sizeof(t_FmPortRsrc)); + return E_OK; +} + +t_Error FM_PORT_SetSizeOfFifo(t_Handle h_FmPort, t_FmPortRsrc *p_SizeOfFifo) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_Error err; + t_FmInterModulePortRxPoolsParams rxPoolsParams; + uint32_t minFifoSizeRequired; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + +#ifdef FM_PORT_EXCESSIVE_BUDGET_ERRATA_FMANx16 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0) && + (p_SizeOfFifo->extra)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("excessive resources")); + } +#endif /* FM_PORT_EXCESSIVE_BUDGET_ERRATA_FMANx16 */ + if(!p_SizeOfFifo->num || (p_SizeOfFifo->num > BMI_MAX_FIFO_SIZE)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("SizeOfFifo-num has to be in the range of 256 - %d", BMI_MAX_FIFO_SIZE)); + if(p_SizeOfFifo->num % BMI_FIFO_UNITS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("SizeOfFifo-num has to be divisible by %d", BMI_FIFO_UNITS)); + if((p_FmPort->portType == e_FM_PORT_TYPE_RX) || (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G)) + { + /* extra FIFO size (allowed only to Rx ports) */ + if(p_SizeOfFifo->extra % BMI_FIFO_UNITS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("SizeOfFifo-extra has to be divisible by %d", BMI_FIFO_UNITS)); + } + else + if(p_SizeOfFifo->extra) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, (" No SizeOfFifo-extra for non Rx ports")); + + /* For O/H ports, check fifo size and update if necessary */ + if((p_FmPort->portType == e_FM_PORT_TYPE_OH_OFFLINE_PARSING) || (p_FmPort->portType == e_FM_PORT_TYPE_OH_HOST_COMMAND)) + { + minFifoSizeRequired = (uint32_t)((p_FmPort->txFifoDeqPipelineDepth+4)*BMI_FIFO_UNITS); + if (p_FmPort->fifoBufs.num < minFifoSizeRequired) + { + p_FmPort->fifoBufs.num = minFifoSizeRequired; + DBG(INFO, ("FIFO size enlarged to %d", minFifoSizeRequired)); + } + } + memcpy(&rxPoolsParams, &p_FmPort->rxPoolsParams, sizeof(rxPoolsParams)); + err = FmSetSizeOfFifo(p_FmPort->h_Fm, + p_FmPort->hardwarePortId, + p_FmPort->portType, + p_FmPort->imEn, + &p_SizeOfFifo->num, + p_SizeOfFifo->extra, + p_FmPort->txFifoDeqPipelineDepth, + &rxPoolsParams, + FALSE); + if(err) + RETURN_ERROR(MINOR, err, NO_MSG); + + /* update driver's structure AFTER the FM routine, as it may change by the FM. */ + memcpy(&p_FmPort->fifoBufs, p_SizeOfFifo, sizeof(t_FmPortRsrc)); + + return E_OK; +} + +uint32_t FM_PORT_GetBufferDataOffset(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_VALUE(p_FmPort, E_INVALID_HANDLE, 0); + SANITY_CHECK_RETURN_VALUE(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE, 0); + + return p_FmPort->bufferOffsets.dataOffset; +} + +uint8_t * FM_PORT_GetBufferICInfo(t_Handle h_FmPort, char *p_Data) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_VALUE(p_FmPort, E_INVALID_HANDLE, 0); + SANITY_CHECK_RETURN_VALUE(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE, 0); + + if(p_FmPort->bufferOffsets.pcdInfoOffset == ILLEGAL_BASE) + return NULL; + + return (uint8_t *)PTR_MOVE(p_Data, p_FmPort->bufferOffsets.pcdInfoOffset); +} + +#ifdef DEBUG +uint8_t * FM_PORT_GetBufferDebugInfo(t_Handle h_FmPort, char *p_Data) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_VALUE(p_FmPort, E_INVALID_HANDLE, 0); + SANITY_CHECK_RETURN_VALUE(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE, 0); + + if(p_FmPort->bufferOffsets.debugOffset == ILLEGAL_BASE) + return NULL; + + return (uint8_t *)PTR_MOVE(p_Data, p_FmPort->bufferOffsets.debugOffset); +} +#endif /* DEBUG */ + +t_FmPrsResult * FM_PORT_GetBufferPrsResult(t_Handle h_FmPort, char *p_Data) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_VALUE(p_FmPort, E_INVALID_HANDLE, NULL); + SANITY_CHECK_RETURN_VALUE(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE, NULL); + + if(p_FmPort->bufferOffsets.prsResultOffset == ILLEGAL_BASE) + return NULL; + + return (t_FmPrsResult *)PTR_MOVE(p_Data, p_FmPort->bufferOffsets.prsResultOffset); +} + +uint64_t * FM_PORT_GetBufferTimeStamp(t_Handle h_FmPort, char *p_Data) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_VALUE(p_FmPort, E_INVALID_HANDLE, NULL); + SANITY_CHECK_RETURN_VALUE(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE, NULL); + + if(p_FmPort->bufferOffsets.timeStampOffset == ILLEGAL_BASE) + return NULL; + + return (uint64_t *)PTR_MOVE(p_Data, p_FmPort->bufferOffsets.timeStampOffset); +} + +uint8_t * FM_PORT_GetBufferHashResult(t_Handle h_FmPort, char *p_Data) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_VALUE(p_FmPort, E_INVALID_HANDLE, 0); + SANITY_CHECK_RETURN_VALUE(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE, 0); + + if(p_FmPort->bufferOffsets.hashResultOffset == ILLEGAL_BASE) + return NULL; + + return (uint8_t *)PTR_MOVE(p_Data, p_FmPort->bufferOffsets.hashResultOffset); +} + +t_Error FM_PORT_Disable(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + volatile uint32_t *p_BmiCfgReg = NULL; + volatile uint32_t *p_BmiStatusReg = NULL; + bool rxPort = FALSE; + int tries; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_BmiCfgReg = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rcfg; + p_BmiStatusReg = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rst; + rxPort = TRUE; + break; + case(e_FM_PORT_TYPE_TX_10G): + case(e_FM_PORT_TYPE_TX): + p_BmiCfgReg = &p_FmPort->p_FmPortBmiRegs->txPortBmiRegs.fmbm_tcfg; + p_BmiStatusReg = &p_FmPort->p_FmPortBmiRegs->txPortBmiRegs.fmbm_tst; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + case(e_FM_PORT_TYPE_OH_HOST_COMMAND): + p_BmiCfgReg = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ocfg; + p_BmiStatusReg = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ost; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid port type")); + } + /* check if port is already disabled */ + if(!(GET_UINT32(*p_BmiCfgReg) & BMI_PORT_CFG_EN)) + { + if (!rxPort && !p_FmPort->imEn) + { + if(!(GET_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnc)& QMI_PORT_CFG_EN)) + /* port is disabled */ + return E_OK; + else + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Inconsistency: Port's QMI is enabled but BMI disabled")); + } + /* port is disabled */ + return E_OK; + } + + /* Disable QMI */ + if (!rxPort && !p_FmPort->imEn) + { + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnc, + GET_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnc) & ~QMI_PORT_CFG_EN); + /* wait for QMI to finish Handling dequeue tnums */ + tries=1000; + while ((GET_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pns) & QMI_PORT_STATUS_DEQ_FD_BSY) && + --tries) + XX_UDelay(1); + if (!tries) + RETURN_ERROR(MINOR, E_BUSY, ("%s: can't disable!", p_FmPort->name)); + } + + /* Disable BMI */ + WRITE_UINT32(*p_BmiCfgReg, GET_UINT32(*p_BmiCfgReg) & ~BMI_PORT_CFG_EN); + + if (p_FmPort->imEn) + FmPortImDisable(p_FmPort); + + tries=5000; + while ((GET_UINT32(*p_BmiStatusReg) & BMI_PORT_STATUS_BSY) && + --tries) + XX_UDelay(1); + + if (!tries) + RETURN_ERROR(MINOR, E_BUSY, ("%s: can't disable!", p_FmPort->name)); + + p_FmPort->enabled = 0; + + return E_OK; +} + +t_Error FM_PORT_Enable(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + volatile uint32_t *p_BmiCfgReg = NULL; + bool rxPort = FALSE; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_BmiCfgReg = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rcfg; + rxPort = TRUE; + break; + case(e_FM_PORT_TYPE_TX_10G): + case(e_FM_PORT_TYPE_TX): + p_BmiCfgReg = &p_FmPort->p_FmPortBmiRegs->txPortBmiRegs.fmbm_tcfg; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + case(e_FM_PORT_TYPE_OH_HOST_COMMAND): + p_BmiCfgReg = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ocfg; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid port type")); + } + + /* check if port is already enabled */ + if(GET_UINT32(*p_BmiCfgReg) & BMI_PORT_CFG_EN) + { + if (!rxPort && !p_FmPort->imEn) + { + if(GET_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnc)& QMI_PORT_CFG_EN) + /* port is enabled */ + return E_OK; + else + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Inconsistency: Port's BMI is enabled but QMI disabled")); + } + /* port is enabled */ + return E_OK; + } + + if (p_FmPort->imEn) + FmPortImEnable(p_FmPort); + + /* Enable QMI */ + if (!rxPort && !p_FmPort->imEn) + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnc, + GET_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnc) | QMI_PORT_CFG_EN); + + /* Enable BMI */ + WRITE_UINT32(*p_BmiCfgReg, GET_UINT32(*p_BmiCfgReg) | BMI_PORT_CFG_EN); + + p_FmPort->enabled = 1; + + return E_OK; +} + +t_Error FM_PORT_SetRateLimit(t_Handle h_FmPort, t_FmPortRateLimit *p_RateLimit) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + uint32_t tmpRateLimit, tmpRateLimitScale; + volatile uint32_t *p_RateLimitReg, *p_RateLimitScaleReg; + uint8_t factor, countUnitBit; + uint16_t baseGran; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + if((p_FmPort->portType == e_FM_PORT_TYPE_RX_10G) || (p_FmPort->portType == e_FM_PORT_TYPE_RX) || + (p_FmPort->portType == e_FM_PORT_TYPE_OH_HOST_COMMAND)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Tx and Offline parsing ports only")); + + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_TX_10G): + case(e_FM_PORT_TYPE_TX): + p_RateLimitReg = &p_FmPort->p_FmPortBmiRegs->txPortBmiRegs.fmbm_trlmt; + p_RateLimitScaleReg = &p_FmPort->p_FmPortBmiRegs->txPortBmiRegs.fmbm_trlmts; + baseGran = 16000; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + p_RateLimitReg = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_orlmt; + p_RateLimitScaleReg = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_orlmts; + baseGran = 10000; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid port type")); + } + + countUnitBit = (uint8_t)FmGetTimeStampScale(p_FmPort->h_Fm); /* TimeStamp per nano seconds units */ + /* normally, we use 1 usec as the reference count */ + factor = 1; + /* if ratelimit is too small for a 1usec factor, multiply the factor */ + while (p_RateLimit->rateLimit < baseGran/factor) + { + if (countUnitBit==31) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Rate limit is too small")); + + countUnitBit++; + factor <<= 1; + } + /* if ratelimit is too large for a 1usec factor, it is also larger than max rate*/ + if (p_RateLimit->rateLimit > ((uint32_t)baseGran * (1<<10) * (uint32_t)factor)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Rate limit is too large")); + + tmpRateLimit = (uint32_t)(p_RateLimit->rateLimit*factor/baseGran - 1); + + if(!p_RateLimit->maxBurstSize || (p_RateLimit->maxBurstSize > MAX_BURST_SIZE)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("maxBurstSize must be between 1K and %dk", MAX_BURST_SIZE)); + + tmpRateLimitScale = ((31 - (uint32_t)countUnitBit) << BMI_COUNT_RATE_UNIT_SHIFT) | BMI_RATE_LIMIT_EN; + + if(p_FmPort->portType != e_FM_PORT_TYPE_OH_OFFLINE_PARSING) + tmpRateLimit |= (uint32_t)(p_RateLimit->maxBurstSize - 1) << BMI_MAX_BURST_SHIFT; + else + { +#ifndef FM_NO_ADVANCED_RATE_LIMITER + t_FmRevisionInfo revInfo; + + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if (revInfo.majorRev == 4) + { + switch(p_RateLimit->rateLimitDivider) + { + case(e_FM_PORT_DUAL_RATE_LIMITER_NONE): + break; + case(e_FM_PORT_DUAL_RATE_LIMITER_SCALE_DOWN_BY_2): + tmpRateLimitScale |= BMI_RATE_LIMIT_SCALE_BY_2; + break; + case(e_FM_PORT_DUAL_RATE_LIMITER_SCALE_DOWN_BY_4): + tmpRateLimitScale |= BMI_RATE_LIMIT_SCALE_BY_4; + break; + case(e_FM_PORT_DUAL_RATE_LIMITER_SCALE_DOWN_BY_8): + tmpRateLimitScale |= BMI_RATE_LIMIT_SCALE_BY_8; + break; + default: + break; + } + tmpRateLimit |= BMI_RATE_LIMIT_BURST_SIZE_GRAN; + } + else +#endif /* ! FM_NO_ADVANCED_RATE_LIMITER */ + { + if(p_RateLimit->rateLimitDivider != e_FM_PORT_DUAL_RATE_LIMITER_NONE) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("FM_PORT_ConfigDualRateLimitScaleDown")); + + if(p_RateLimit->maxBurstSize % 1000) + { + p_RateLimit->maxBurstSize = (uint16_t)((p_RateLimit->maxBurstSize/1000)+1); + DBG(WARNING, ("rateLimit.maxBurstSize rounded up to %d", (p_RateLimit->maxBurstSize/1000+1)*1000)); + } + else + p_RateLimit->maxBurstSize = (uint16_t)(p_RateLimit->maxBurstSize/1000); + } + tmpRateLimit |= (uint32_t)(p_RateLimit->maxBurstSize - 1) << BMI_MAX_BURST_SHIFT; + + } + WRITE_UINT32(*p_RateLimitScaleReg, tmpRateLimitScale); + WRITE_UINT32(*p_RateLimitReg, tmpRateLimit); + + return E_OK; +} + +t_Error FM_PORT_DeleteRateLimit(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + volatile uint32_t *p_RateLimitReg, *p_RateLimitScaleReg; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + if((p_FmPort->portType == e_FM_PORT_TYPE_RX_10G) || (p_FmPort->portType == e_FM_PORT_TYPE_RX) || + (p_FmPort->portType == e_FM_PORT_TYPE_OH_HOST_COMMAND)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Tx and Offline parsing ports only")); + + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_TX_10G): + case(e_FM_PORT_TYPE_TX): + p_RateLimitReg = &p_FmPort->p_FmPortBmiRegs->txPortBmiRegs.fmbm_trlmt; + p_RateLimitScaleReg = &p_FmPort->p_FmPortBmiRegs->txPortBmiRegs.fmbm_trlmts; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + p_RateLimitReg = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_orlmt; + p_RateLimitScaleReg = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_orlmts; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid port type")); + } + + WRITE_UINT32(*p_RateLimitScaleReg, 0); + WRITE_UINT32(*p_RateLimitReg, 0); + + return E_OK; +} + + +t_Error FM_PORT_SetFrameQueueCounters(t_Handle h_FmPort, bool enable) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + uint32_t tmpReg; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + tmpReg = GET_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnc); + if(enable) + tmpReg |= QMI_PORT_CFG_EN_COUNTERS ; + else + tmpReg &= ~QMI_PORT_CFG_EN_COUNTERS; + + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnc, tmpReg); + + return E_OK; +} + +t_Error FM_PORT_SetPerformanceCounters(t_Handle h_FmPort, bool enable) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + volatile uint32_t *p_BmiPcReg = NULL; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_BmiPcReg = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rpc; + break; + case(e_FM_PORT_TYPE_TX_10G): + case(e_FM_PORT_TYPE_TX): + p_BmiPcReg = &p_FmPort->p_FmPortBmiRegs->txPortBmiRegs.fmbm_tpc; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + case(e_FM_PORT_TYPE_OH_HOST_COMMAND): + p_BmiPcReg = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_opc; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid port type")); + } + + if(enable) + WRITE_UINT32(*p_BmiPcReg, BMI_COUNTERS_EN); + else + WRITE_UINT32(*p_BmiPcReg, 0); + + return E_OK; +} + +t_Error FM_PORT_SetPerformanceCountersParams(t_Handle h_FmPort, t_FmPortPerformanceCnt *p_FmPortPerformanceCnt) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + uint32_t tmpReg; + volatile uint32_t *p_BmiPcpReg = NULL; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_BmiPcpReg = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rpcp; + break; + case(e_FM_PORT_TYPE_TX_10G): + case(e_FM_PORT_TYPE_TX): + p_BmiPcpReg = &p_FmPort->p_FmPortBmiRegs->txPortBmiRegs.fmbm_tpcp; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + case(e_FM_PORT_TYPE_OH_HOST_COMMAND): + p_BmiPcpReg = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_opcp; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid port type")); + } + + /* check parameters */ + if (!p_FmPortPerformanceCnt->taskCompVal || + (p_FmPortPerformanceCnt->taskCompVal > p_FmPort->tasks.num)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, + ("performanceCnt.taskCompVal has to be in the range of 1 - %d (current value)!", + p_FmPort->tasks.num)); + if (!p_FmPortPerformanceCnt->dmaCompVal || + (p_FmPortPerformanceCnt->dmaCompVal > p_FmPort->openDmas.num)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, + ("performanceCnt.dmaCompVal has to be in the range of 1 - %d (current value)!", + p_FmPort->openDmas.num)); + if (!p_FmPortPerformanceCnt->fifoCompVal || + (p_FmPortPerformanceCnt->fifoCompVal > p_FmPort->fifoBufs.num)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, + ("performanceCnt.fifoCompVal has to be in the range of 256 - %d (current value)!", + p_FmPort->fifoBufs.num)); + if (p_FmPortPerformanceCnt->fifoCompVal % BMI_FIFO_UNITS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, + ("performanceCnt.fifoCompVal has to be divisible by %d", + BMI_FIFO_UNITS)); + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + if (!p_FmPortPerformanceCnt->queueCompVal || + (p_FmPortPerformanceCnt->queueCompVal > MAX_PERFORMANCE_RX_QUEUE_COMP)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, + ("performanceCnt.queueCompVal for Rx has to be in the range of 1 - %d", + MAX_PERFORMANCE_RX_QUEUE_COMP)); + break; + case(e_FM_PORT_TYPE_TX_10G): + case(e_FM_PORT_TYPE_TX): + if (!p_FmPortPerformanceCnt->queueCompVal || + (p_FmPortPerformanceCnt->queueCompVal > MAX_PERFORMANCE_TX_QUEUE_COMP)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, + ("performanceCnt.queueCompVal for Tx has to be in the range of 1 - %d", + MAX_PERFORMANCE_TX_QUEUE_COMP)); + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + case(e_FM_PORT_TYPE_OH_HOST_COMMAND): + if (p_FmPortPerformanceCnt->queueCompVal) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("performanceCnt.queueCompVal is not relevant for H/O ports.")); + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid port type")); + } + + tmpReg = 0; + tmpReg |= ((uint32_t)(p_FmPortPerformanceCnt->queueCompVal - 1) << BMI_PERFORMANCE_PORT_COMP_SHIFT); + tmpReg |= ((uint32_t)(p_FmPortPerformanceCnt->dmaCompVal- 1) << BMI_PERFORMANCE_DMA_COMP_SHIFT); + tmpReg |= ((uint32_t)(p_FmPortPerformanceCnt->fifoCompVal/BMI_FIFO_UNITS - 1) << BMI_PERFORMANCE_FIFO_COMP_SHIFT); + if ((p_FmPort->portType != e_FM_PORT_TYPE_OH_OFFLINE_PARSING) && (p_FmPort->portType != e_FM_PORT_TYPE_OH_HOST_COMMAND)) + tmpReg |= ((uint32_t)(p_FmPortPerformanceCnt->taskCompVal - 1) << BMI_PERFORMANCE_TASK_COMP_SHIFT); + + WRITE_UINT32(*p_BmiPcpReg, tmpReg); + + return E_OK; +} + +t_Error FM_PORT_AnalyzePerformanceParams(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_FmPortPerformanceCnt currParams, savedParams; + t_Error err; + bool underTest, failed = FALSE; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + + XX_Print("Analyzing Performance parameters for port (type %d, id%d)\n", + p_FmPort->portType, p_FmPort->portId); + + currParams.taskCompVal = (uint8_t)p_FmPort->tasks.num; + if ((p_FmPort->portType == e_FM_PORT_TYPE_OH_OFFLINE_PARSING) || + (p_FmPort->portType == e_FM_PORT_TYPE_OH_HOST_COMMAND)) + currParams.queueCompVal = 0; + else + currParams.queueCompVal = 1; + currParams.dmaCompVal =(uint8_t) p_FmPort->openDmas.num; + currParams.fifoCompVal = p_FmPort->fifoBufs.num; + + FM_PORT_SetPerformanceCounters(p_FmPort, FALSE); + ClearPerfCnts(p_FmPort); + if ((err = FM_PORT_SetPerformanceCountersParams(p_FmPort, &currParams)) != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + FM_PORT_SetPerformanceCounters(p_FmPort, TRUE); + XX_UDelay(1000000); + FM_PORT_SetPerformanceCounters(p_FmPort, FALSE); + if (FM_PORT_GetCounter(p_FmPort, e_FM_PORT_COUNTERS_TASK_UTIL)) + { + XX_Print ("Max num of defined port tasks (%d) utilized - Please enlarge\n",p_FmPort->tasks.num); + failed = TRUE; + } + if (FM_PORT_GetCounter(p_FmPort, e_FM_PORT_COUNTERS_DMA_UTIL)) + { + XX_Print ("Max num of defined port openDmas (%d) utilized - Please enlarge\n",p_FmPort->openDmas.num); + failed = TRUE; + } + if (FM_PORT_GetCounter(p_FmPort, e_FM_PORT_COUNTERS_FIFO_UTIL)) + { + XX_Print ("Max size of defined port fifo (%d) utilized - Please enlarge\n",p_FmPort->fifoBufs.num*BMI_FIFO_UNITS); + failed = TRUE; + } + if (failed) + RETURN_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + + memset(&savedParams, 0, sizeof(savedParams)); + while (TRUE) + { + underTest = FALSE; + if ((currParams.taskCompVal != 1) && !savedParams.taskCompVal) + { + currParams.taskCompVal--; + underTest = TRUE; + } + if ((currParams.dmaCompVal != 1) && !savedParams.dmaCompVal) + { + currParams.dmaCompVal--; + underTest = TRUE; + } + if ((currParams.fifoCompVal != BMI_FIFO_UNITS) && !savedParams.fifoCompVal) + { + currParams.fifoCompVal -= BMI_FIFO_UNITS; + underTest = TRUE; + } + if (!underTest) + break; + + ClearPerfCnts(p_FmPort); + if ((err = FM_PORT_SetPerformanceCountersParams(p_FmPort, &currParams)) != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + FM_PORT_SetPerformanceCounters(p_FmPort, TRUE); + XX_UDelay(1000000); + FM_PORT_SetPerformanceCounters(p_FmPort, FALSE); + + if (!savedParams.taskCompVal && FM_PORT_GetCounter(p_FmPort, e_FM_PORT_COUNTERS_TASK_UTIL)) + savedParams.taskCompVal = (uint8_t)(currParams.taskCompVal+2); + if (!savedParams.dmaCompVal && FM_PORT_GetCounter(p_FmPort, e_FM_PORT_COUNTERS_DMA_UTIL)) + savedParams.dmaCompVal = (uint8_t)(currParams.dmaCompVal+2); + if (!savedParams.fifoCompVal && FM_PORT_GetCounter(p_FmPort, e_FM_PORT_COUNTERS_FIFO_UTIL)) + savedParams.fifoCompVal = currParams.fifoCompVal+2; + } + + XX_Print("best vals: tasks %d, dmas %d, fifos %d\n", + savedParams.taskCompVal, savedParams.dmaCompVal, savedParams.fifoCompVal); + return E_OK; +} + +t_Error FM_PORT_SetStatisticsCounters(t_Handle h_FmPort, bool enable) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + uint32_t tmpReg; + volatile uint32_t *p_BmiStcReg = NULL; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_BmiStcReg = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rstc; + break; + case(e_FM_PORT_TYPE_TX_10G): + case(e_FM_PORT_TYPE_TX): + p_BmiStcReg = &p_FmPort->p_FmPortBmiRegs->txPortBmiRegs.fmbm_tstc; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + case(e_FM_PORT_TYPE_OH_HOST_COMMAND): + p_BmiStcReg = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ostc; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid port type")); + } + + tmpReg = GET_UINT32(*p_BmiStcReg); + + if(enable) + tmpReg |= BMI_COUNTERS_EN; + else + tmpReg &= ~BMI_COUNTERS_EN; + + WRITE_UINT32(*p_BmiStcReg, tmpReg); + + return E_OK; +} + +t_Error FM_PORT_SetErrorsRoute(t_Handle h_FmPort, fmPortFrameErrSelect_t errs) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + volatile uint32_t *p_ErrQReg, *p_ErrDiscard; + + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_ErrQReg = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rfsem; + p_ErrDiscard = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rfsdm; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + p_ErrQReg = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ofsem; + p_ErrDiscard = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ofsdm; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx and offline parsing ports only")); + } + + if (GET_UINT32(*p_ErrDiscard) & errs) + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("Selectd Errors that were configured to cause frame discard.")); + + WRITE_UINT32(*p_ErrQReg, errs); + + return E_OK; +} + +t_Error FM_PORT_SetAllocBufCounter(t_Handle h_FmPort, uint8_t poolId, bool enable) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + uint32_t tmpReg; + int i; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(poolIdp_FmPortDriverParam, E_INVALID_STATE); + + if((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && (p_FmPort->portType != e_FM_PORT_TYPE_RX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx ports only")); + + for(i=0 ; i< FM_PORT_MAX_NUM_OF_EXT_POOLS ; i++) + { + tmpReg = GET_UINT32(p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_ebmpi[i]); + if ((uint8_t)((tmpReg & BMI_EXT_BUF_POOL_ID_MASK) >> BMI_EXT_BUF_POOL_ID_SHIFT) == poolId) + { + if(enable) + tmpReg |= BMI_EXT_BUF_POOL_EN_COUNTER; + else + tmpReg &= ~BMI_EXT_BUF_POOL_EN_COUNTER; + WRITE_UINT32(p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_ebmpi[i], tmpReg); + break; + } + } + if (i == FM_PORT_MAX_NUM_OF_EXT_POOLS) + RETURN_ERROR(MINOR, E_INVALID_VALUE,("poolId %d is not included in this ports pools", poolId)); + + return E_OK; +} + +uint32_t FM_PORT_GetCounter(t_Handle h_FmPort, e_FmPortCounters counter) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + bool bmiCounter = FALSE; + volatile uint32_t *p_Reg; + + SANITY_CHECK_RETURN_VALUE(p_FmPort, E_INVALID_HANDLE, 0); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + switch(counter) + { + case(e_FM_PORT_COUNTERS_DEQ_TOTAL): + case(e_FM_PORT_COUNTERS_DEQ_FROM_DEFAULT): + case(e_FM_PORT_COUNTERS_DEQ_CONFIRM ): + /* check that counter is available for the port type */ + if((p_FmPort->portType == e_FM_PORT_TYPE_RX) || (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G)) + { + REPORT_ERROR(MINOR, E_INVALID_STATE, ("Requested counter is not available for Rx ports")); + return 0; + } + bmiCounter = FALSE; + case(e_FM_PORT_COUNTERS_ENQ_TOTAL): + bmiCounter = FALSE; + break; + default: /* BMI counters (or error - will be checked in BMI routine )*/ + bmiCounter = TRUE; + break; + } + + if(bmiCounter) + { + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + if(BmiRxPortCheckAndGetCounterPtr(p_FmPort, counter, &p_Reg)) + { + REPORT_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + return 0; + } + break; + case(e_FM_PORT_TYPE_TX_10G): + case(e_FM_PORT_TYPE_TX): + if(BmiTxPortCheckAndGetCounterPtr(p_FmPort, counter, &p_Reg)) + { + REPORT_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + return 0; + } + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + case(e_FM_PORT_TYPE_OH_HOST_COMMAND): + if(BmiOhPortCheckAndGetCounterPtr(p_FmPort, counter, &p_Reg)) + { + REPORT_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + return 0; + } + break; + default: + REPORT_ERROR(MINOR, E_INVALID_STATE, ("Unsupported port type")); + return 0; + } + return GET_UINT32(*p_Reg); + } + else /* QMI counter */ + { + + /* check that counters are enabled */ + if(!(GET_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnc) & QMI_PORT_CFG_EN_COUNTERS)) + { + REPORT_ERROR(MINOR, E_INVALID_STATE, ("Requested counter was not enabled")); + return 0; + } + + /* Set counter */ + switch(counter) + { + case(e_FM_PORT_COUNTERS_ENQ_TOTAL): + return GET_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnetfc); + case(e_FM_PORT_COUNTERS_DEQ_TOTAL): + return GET_UINT32(p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs.fmqm_pndtfc); + case(e_FM_PORT_COUNTERS_DEQ_FROM_DEFAULT): + return GET_UINT32(p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs.fmqm_pndfdc); + case(e_FM_PORT_COUNTERS_DEQ_CONFIRM): + return GET_UINT32(p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs.fmqm_pndcc); + default: + REPORT_ERROR(MINOR, E_INVALID_STATE, ("Requested counter is not available")); + return 0; + } + } + + return 0; +} + +t_Error FM_PORT_ModifyCounter(t_Handle h_FmPort, e_FmPortCounters counter, uint32_t value) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + bool bmiCounter = FALSE; + volatile uint32_t *p_Reg; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + switch(counter) + { + case(e_FM_PORT_COUNTERS_DEQ_TOTAL): + case(e_FM_PORT_COUNTERS_DEQ_FROM_DEFAULT): + case(e_FM_PORT_COUNTERS_DEQ_CONFIRM ): + /* check that counter is available for the port type */ + if((p_FmPort->portType == e_FM_PORT_TYPE_RX) || (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G)) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter is not available for Rx ports")); + case(e_FM_PORT_COUNTERS_ENQ_TOTAL): + bmiCounter = FALSE; + break; + default: /* BMI counters (or error - will be checked in BMI routine )*/ + bmiCounter = TRUE; + break; + } + + if(bmiCounter) + { + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + if(BmiRxPortCheckAndGetCounterPtr(p_FmPort, counter, &p_Reg)) + RETURN_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + break; + case(e_FM_PORT_TYPE_TX_10G): + case(e_FM_PORT_TYPE_TX): + if(BmiTxPortCheckAndGetCounterPtr(p_FmPort, counter, &p_Reg)) + RETURN_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + case(e_FM_PORT_TYPE_OH_HOST_COMMAND): + if(BmiOhPortCheckAndGetCounterPtr(p_FmPort, counter, &p_Reg)) + RETURN_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + break; + default: + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Unsupported port type")); + } + WRITE_UINT32(*p_Reg, value); + } + else /* QMI counter */ + { + + /* check that counters are enabled */ + if(!(GET_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnc) & QMI_PORT_CFG_EN_COUNTERS)) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter was not enabled")); + + /* Set counter */ + switch(counter) + { + case(e_FM_PORT_COUNTERS_ENQ_TOTAL): + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnetfc, value); + break; + case(e_FM_PORT_COUNTERS_DEQ_TOTAL): + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs.fmqm_pndtfc, value); + break; + case(e_FM_PORT_COUNTERS_DEQ_FROM_DEFAULT): + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs.fmqm_pndfdc, value); + break; + case(e_FM_PORT_COUNTERS_DEQ_CONFIRM): + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs.fmqm_pndcc, value); + break; + default: + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter is not available")); + } + } + + return E_OK; +} + +uint32_t FM_PORT_GetAllocBufCounter(t_Handle h_FmPort, uint8_t poolId) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + uint32_t extPoolReg; + uint8_t tmpPool; + uint8_t i; + + SANITY_CHECK_RETURN_VALUE(p_FmPort, E_INVALID_HANDLE, 0); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + if((p_FmPort->portType != e_FM_PORT_TYPE_RX) && (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G)) + { + REPORT_ERROR(MINOR, E_INVALID_STATE, ("Requested counter is not available for non-Rx ports")); + return 0; + } + + for(i=0;ip_FmPortBmiRegs->rxPortBmiRegs.fmbm_ebmpi[i]); + if (extPoolReg & BMI_EXT_BUF_POOL_VALID) + { + tmpPool = (uint8_t)((extPoolReg & BMI_EXT_BUF_POOL_ID_MASK) >> BMI_EXT_BUF_POOL_ID_SHIFT); + if(tmpPool == poolId) + { + if(extPoolReg & BMI_EXT_BUF_POOL_EN_COUNTER) + return GET_UINT32(p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_acnt[i]); + else + { + REPORT_ERROR(MINOR, E_INVALID_STATE, ("Requested counter is not enabled")); + return 0; + } + } + } + } + REPORT_ERROR(MINOR, E_INVALID_STATE, ("Pool %d is not used", poolId)); + return 0; +} + +t_Error FM_PORT_ModifyAllocBufCounter(t_Handle h_FmPort, uint8_t poolId, uint32_t value) +{ + t_FmPort *p_FmPort = (t_FmPort *)h_FmPort; + uint32_t extPoolReg; + uint8_t tmpPool; + uint8_t i; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + if((p_FmPort->portType != e_FM_PORT_TYPE_RX) && (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G)) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter is not available for non-Rx ports")); + + + for(i=0;ip_FmPortBmiRegs->rxPortBmiRegs.fmbm_ebmpi[i]); + if (extPoolReg & BMI_EXT_BUF_POOL_VALID) + { + tmpPool = (uint8_t)((extPoolReg & BMI_EXT_BUF_POOL_ID_MASK) >> BMI_EXT_BUF_POOL_ID_SHIFT); + if(tmpPool == poolId) + { + if(extPoolReg & BMI_EXT_BUF_POOL_EN_COUNTER) + { + WRITE_UINT32(p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_acnt[i], value); + return E_OK; + } + else + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter is not enabled")); + } + } + } + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Pool %d is not used", poolId)); +} + +bool FM_PORT_IsStalled(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_Error err; + bool isStalled; + + SANITY_CHECK_RETURN_VALUE(p_FmPort, E_INVALID_HANDLE, FALSE); + SANITY_CHECK_RETURN_VALUE(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE, FALSE); + + err = FmIsPortStalled(p_FmPort->h_Fm, p_FmPort->hardwarePortId, &isStalled); + if(err != E_OK) + { + REPORT_ERROR(MINOR, err, NO_MSG); + return TRUE; + } + return isStalled; +} + +t_Error FM_PORT_ReleaseStalled(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + return FmResumeStalledPort(p_FmPort->h_Fm, p_FmPort->hardwarePortId); +} + +t_Error FM_PORT_SetRxL4ChecksumVerify(t_Handle h_FmPort, bool l4Checksum) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + uint32_t tmpReg; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + if ((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && + (p_FmPort->portType != e_FM_PORT_TYPE_RX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx ports only")); + + tmpReg = GET_UINT32(p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rfne); + if (l4Checksum) + tmpReg &= ~BMI_PORT_RFNE_FRWD_DCL4C; + else + tmpReg |= BMI_PORT_RFNE_FRWD_DCL4C; + WRITE_UINT32(p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rfne, tmpReg); + + return E_OK; +} + + +/* API Run-time PCD Control unit functions */ + +t_Error FM_PORT_PcdPlcrAllocProfiles(t_Handle h_FmPort, uint16_t numOfProfiles) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_Error err = E_OK; + + p_FmPort->h_FmPcd = FmGetPcdHandle(p_FmPort->h_Fm); + ASSERT_COND(p_FmPort->h_FmPcd); + + if(numOfProfiles) + { + err = FmPcdPlcrAllocProfiles(p_FmPort->h_FmPcd, p_FmPort->hardwarePortId, numOfProfiles); + if(err) + RETURN_ERROR(MAJOR, err,NO_MSG); + } + FmPcdPortRegister(p_FmPort->h_FmPcd, h_FmPort, p_FmPort->hardwarePortId); + + return E_OK; +} + +t_Error FM_PORT_PcdPlcrFreeProfiles(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_Error err = E_OK; + + err = FmPcdPlcrFreeProfiles(p_FmPort->h_FmPcd, p_FmPort->hardwarePortId); + if(err) + RETURN_ERROR(MAJOR, err,NO_MSG); + return E_OK; +} + +t_Error FM_PORT_PcdKgModifyInitialScheme (t_Handle h_FmPort, t_FmPcdKgSchemeSelect *p_FmPcdKgScheme) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + volatile uint32_t *p_BmiHpnia = NULL; + uint32_t tmpReg; + uint8_t relativeSchemeId; + uint8_t physicalSchemeId; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->pcdEngines & FM_PCD_KG , E_INVALID_STATE); + + tmpReg = (uint32_t)((p_FmPort->pcdEngines & FM_PCD_CC)? NIA_KG_CC_EN:0); + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_BmiHpnia = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rfpne; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + p_BmiHpnia = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ofpne; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx and offline parsing ports only")); + } + + if (!TRY_LOCK(p_FmPort->h_Spinlock, &p_FmPort->lock)) + return ERROR_CODE(E_BUSY); + /* if we want to change to direct scheme, we need to check that this scheme is valid */ + if(p_FmPcdKgScheme->direct) + { + physicalSchemeId = (uint8_t)(PTR_TO_UINT(p_FmPcdKgScheme->h_DirectScheme)-1); + /* check that this scheme is bound to this port */ + if(!(p_FmPort->schemesPerPortVector & (uint32_t)(1 << (31 - (uint32_t)physicalSchemeId)))) + { + RELEASE_LOCK(p_FmPort->lock); + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("called with a scheme that is not bound to this port")); + } + + relativeSchemeId = FmPcdKgGetRelativeSchemeId(p_FmPort->h_FmPcd, physicalSchemeId); + if(relativeSchemeId >= FM_PCD_KG_NUM_OF_SCHEMES) + { + RELEASE_LOCK(p_FmPort->lock); + RETURN_ERROR(MAJOR, E_NOT_IN_RANGE, ("called with invalid Scheme ")); + } + + if(!FmPcdKgIsSchemeValidSw(p_FmPort->h_FmPcd, relativeSchemeId)) + { + RELEASE_LOCK(p_FmPort->lock); + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("called with uninitialized Scheme ")); + } + + WRITE_UINT32(*p_BmiHpnia, NIA_ENG_KG | tmpReg | NIA_KG_DIRECT | (uint32_t)physicalSchemeId); + } + else /* change to indirect scheme */ + WRITE_UINT32(*p_BmiHpnia, NIA_ENG_KG | tmpReg); + RELEASE_LOCK(p_FmPort->lock); + + return E_OK; +} + +t_Error FM_PORT_PcdPlcrModifyInitialProfile (t_Handle h_FmPort, t_Handle h_Profile) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + volatile uint32_t *p_BmiNia; + volatile uint32_t *p_BmiHpnia; + uint32_t tmpReg; + uint16_t absoluteProfileId = (uint16_t)(PTR_TO_UINT(h_Profile)-1); + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->pcdEngines & FM_PCD_PLCR , E_INVALID_STATE); + + /* check relevancy of this routine - only when policer is used + directly after BMI or Parser */ + if((p_FmPort->pcdEngines & FM_PCD_KG) || (p_FmPort->pcdEngines & FM_PCD_CC)) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("relevant only when PCD support mode is e_FM_PCD_SUPPORT_PLCR_ONLY or e_FM_PCD_SUPPORT_PRS_AND_PLCR")); + + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_BmiNia = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rfne; + p_BmiHpnia = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rfpne; + tmpReg = GET_UINT32(*p_BmiNia) & BMI_RFNE_FDCS_MASK; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + p_BmiNia = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ofne; + p_BmiHpnia = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ofpne; + tmpReg = 0; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx and offline parsing ports only")); + } + + if (!TRY_LOCK(p_FmPort->h_Spinlock, &p_FmPort->lock)) + return ERROR_CODE(E_BUSY); + if(!FmPcdPlcrIsProfileValid(p_FmPort->h_FmPcd, absoluteProfileId)) + { + RELEASE_LOCK(p_FmPort->lock); + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("Invalid profile")); + } + + tmpReg = (uint32_t)(NIA_ENG_PLCR | NIA_PLCR_ABSOLUTE | absoluteProfileId); + + if(p_FmPort->pcdEngines & FM_PCD_PRS) /* e_FM_PCD_SUPPORT_PRS_AND_PLCR */ + { + /* update BMI HPNIA */ + WRITE_UINT32(*p_BmiHpnia, tmpReg); + } + else /* e_FM_PCD_SUPPORT_PLCR_ONLY */ + { + /* rfne may contain FDCS bits, so first we read them. */ + tmpReg |= (GET_UINT32(*p_BmiNia) & BMI_RFNE_FDCS_MASK); + /* update BMI NIA */ + WRITE_UINT32(*p_BmiNia, tmpReg); + } + RELEASE_LOCK(p_FmPort->lock); + + return E_OK; +} + + +t_Error FM_PORT_PcdCcModifyTree (t_Handle h_FmPort, t_Handle h_CcTree) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_Error err = E_OK; + volatile uint32_t *p_BmiCcBase=NULL; + volatile uint32_t *p_BmiNia=NULL; + uint32_t ccTreePhysOffset; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_VALUE); + + if (p_FmPort->imEn) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for non-independant mode ports only")); + + /* get PCD registers pointers */ + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_BmiNia = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rfne; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + p_BmiNia = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ofne; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx and offline parsing ports only")); + } + + /* check that current NIA is BMI to BMI */ + if((GET_UINT32(*p_BmiNia) & ~BMI_RFNE_FDCS_MASK) != (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("may be called only for ports in BMI-to-BMI state.")); + +/*TODO - to take care of changes due to previous tree. Maybe in the previous tree where chnged pndn, pnen ... + it has to be returned to the default state - initially*/ + + p_FmPort->requiredAction = 0; + + if(p_FmPort->pcdEngines & FM_PCD_CC) + { + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_BmiCcBase = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rccb; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + p_BmiCcBase = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_occb; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid port type")); + } + + if (!TRY_LOCK(p_FmPort->h_Spinlock, &p_FmPort->lock)) + return ERROR_CODE(E_BUSY); + err = FmPcdCcBindTree(p_FmPort->h_FmPcd, h_CcTree, &ccTreePhysOffset, h_FmPort); + if(err) + { + RELEASE_LOCK(p_FmPort->lock); + RETURN_ERROR(MINOR, err, NO_MSG); + } + WRITE_UINT32(*p_BmiCcBase, ccTreePhysOffset); + + p_FmPort->ccTreeId = h_CcTree; + RELEASE_LOCK(p_FmPort->lock); + } + else + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Coarse CLassification not defined for this port.")); + + return E_OK; +} + +t_Error FM_PORT_AttachPCD(t_Handle h_FmPort) +{ + + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_Error err = E_OK; + + SANITY_CHECK_RETURN_ERROR(h_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + if (p_FmPort->imEn) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for non-independant mode ports only")); + + /* TODO - may add here checks for: + SP (or in sw: schemes) + CPP (or in sw clsPlan) + Parser enabled and configured(?) + Tree(?) + Profile - only if direct. + Scheme - only if direct + */ + + if (!TRY_LOCK(p_FmPort->h_Spinlock, &p_FmPort->lock)) + return ERROR_CODE(E_BUSY); + err = FmPortAttachPCD(h_FmPort); + RELEASE_LOCK(p_FmPort->lock); + + return err; +} + +t_Error FM_PORT_DetachPCD(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + volatile uint32_t *p_BmiNia=NULL; + + SANITY_CHECK_RETURN_ERROR(h_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + if (p_FmPort->imEn) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for non-independant mode ports only")); + + /* get PCD registers pointers */ + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_BmiNia = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rfne; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + p_BmiNia = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ofne; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx and offline parsing ports only")); + } + + WRITE_UINT32(*p_BmiNia, (p_FmPort->savedBmiNia & BMI_RFNE_FDCS_MASK) | (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME)); + +/*TODO - not atomic - it seems that port has to be disabled*/ + if(p_FmPort->requiredAction & UPDATE_NIA_PNEN) + { + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_TX_10G): + case(e_FM_PORT_TYPE_TX): + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnen, NIA_ENG_BMI | NIA_BMI_AC_TX_RELEASE); + break; + case(e_FM_PORT_TYPE_OH_HOST_COMMAND): + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + case(e_FM_PORT_TYPE_RX): + case(e_FM_PORT_TYPE_RX_10G): + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->fmqm_pnen, NIA_ENG_BMI | NIA_BMI_AC_RELEASE); + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Can not reach this stage")); + } + } + + if(p_FmPort->requiredAction & UPDATE_NIA_PNDN) + { + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_TX_10G): + case(e_FM_PORT_TYPE_TX): + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs.fmqm_pndn, NIA_ENG_BMI | NIA_BMI_AC_TX); + break; + case(e_FM_PORT_TYPE_OH_HOST_COMMAND): + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + WRITE_UINT32(p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs.fmqm_pndn, NIA_ENG_BMI | NIA_BMI_AC_FETCH); + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Can not reach this stage")); + } + } + + + if(p_FmPort->requiredAction & UPDATE_FMFP_PRC_WITH_ONE_RISC_ONLY) + if(FmSetNumOfRiscsPerPort(p_FmPort->h_Fm, p_FmPort->hardwarePortId, 2)!= E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + return E_OK; +} + +t_Error FM_PORT_SetPCD(t_Handle h_FmPort, t_FmPortPcdParams *p_PcdParams) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_FmPcdKgInterModuleBindPortToSchemes schemeBind; + t_Error err = E_OK; + uint8_t i; + + SANITY_CHECK_RETURN_ERROR(h_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + if (p_FmPort->imEn) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for non-independent mode ports only")); + + if (!TRY_LOCK(p_FmPort->h_Spinlock, &p_FmPort->lock)) + return ERROR_CODE(E_BUSY); + p_FmPort->h_FmPcd = FmGetPcdHandle(p_FmPort->h_Fm); + ASSERT_COND(p_FmPort->h_FmPcd); + + err = SetPcd( h_FmPort, p_PcdParams); + if(err) + { + RELEASE_LOCK(p_FmPort->lock); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + if(p_FmPort->pcdEngines & FM_PCD_KG) + { + schemeBind.netEnvId = p_FmPort->netEnvId; + schemeBind.hardwarePortId = p_FmPort->hardwarePortId; + schemeBind.numOfSchemes = p_PcdParams->p_KgParams->numOfSchemes; + schemeBind.useClsPlan = p_FmPort->useClsPlan; + for(i = 0;ip_KgParams->h_Schemes[i])-1); + + err = FmPcdKgBindPortToSchemes(p_FmPort->h_FmPcd, &schemeBind); + if(err) + { + DeletePcd(p_FmPort); + RELEASE_LOCK(p_FmPort->lock); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + } + + if ((p_FmPort->pcdEngines & FM_PCD_PRS) && (p_PcdParams->p_PrsParams->includeInPrsStatistics)) + FmPcdPrsIncludePortInStatistics(p_FmPort->h_FmPcd, p_FmPort->hardwarePortId, TRUE); + + FmPcdIncNetEnvOwners(p_FmPort->h_FmPcd, p_FmPort->netEnvId); + + err = FmPortAttachPCD(h_FmPort); + RELEASE_LOCK(p_FmPort->lock); + + return err; +} + +t_Error FM_PORT_DeletePCD(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_FmPcdKgInterModuleBindPortToSchemes schemeBind; + t_Error err = E_OK; + + SANITY_CHECK_RETURN_ERROR(h_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + + if (p_FmPort->imEn) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for non-independant mode ports only")); + + if (!TRY_LOCK(p_FmPort->h_Spinlock, &p_FmPort->lock)) + return ERROR_CODE(E_BUSY); + + err = FM_PORT_DetachPCD(h_FmPort); + if(err) + { + RELEASE_LOCK(p_FmPort->lock); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + FmPcdDecNetEnvOwners(p_FmPort->h_FmPcd, p_FmPort->netEnvId); + + /* we do it anyway, instead of checking if included */ + if (FmIsMaster(p_FmPort->h_Fm) && + (p_FmPort->pcdEngines & FM_PCD_PRS)) + FmPcdPrsIncludePortInStatistics(p_FmPort->h_FmPcd, p_FmPort->hardwarePortId, FALSE); + + if(p_FmPort->pcdEngines & FM_PCD_KG) + { + /* unbind all schemes */ + p_FmPort->schemesPerPortVector = GetPortSchemeBindParams(p_FmPort, &schemeBind); + + err = FmPcdKgUnbindPortToSchemes(p_FmPort->h_FmPcd, &schemeBind); + if(err) + { + RELEASE_LOCK(p_FmPort->lock); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + } + + err = DeletePcd(h_FmPort); + RELEASE_LOCK(p_FmPort->lock); + + return err; +} + +t_Error FM_PORT_PcdKgBindSchemes (t_Handle h_FmPort, t_FmPcdPortSchemesParams *p_PortScheme) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_FmPcdKgInterModuleBindPortToSchemes schemeBind; + t_Error err = E_OK; + uint32_t tmpScmVec=0; + int i; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->pcdEngines & FM_PCD_KG , E_INVALID_STATE); + + schemeBind.netEnvId = p_FmPort->netEnvId; + schemeBind.hardwarePortId = p_FmPort->hardwarePortId; + schemeBind.numOfSchemes = p_PortScheme->numOfSchemes; + schemeBind.useClsPlan = p_FmPort->useClsPlan; + for (i=0; ih_Schemes[i])-1); + /* build vector */ + tmpScmVec |= 1 << (31 - (uint32_t)schemeBind.schemesIds[i]); + } + + if (!TRY_LOCK(p_FmPort->h_Spinlock, &p_FmPort->lock)) + return ERROR_CODE(E_BUSY); + err = FmPcdKgBindPortToSchemes(p_FmPort->h_FmPcd, &schemeBind); + if (err == E_OK) + p_FmPort->schemesPerPortVector |= tmpScmVec; + RELEASE_LOCK(p_FmPort->lock); + + return err; +} + +t_Error FM_PORT_PcdKgUnbindSchemes (t_Handle h_FmPort, t_FmPcdPortSchemesParams *p_PortScheme) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_FmPcdKgInterModuleBindPortToSchemes schemeBind; + t_Error err = E_OK; + uint32_t tmpScmVec=0; + int i; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->pcdEngines & FM_PCD_KG , E_INVALID_STATE); + + schemeBind.netEnvId = p_FmPort->netEnvId; + schemeBind.hardwarePortId = p_FmPort->hardwarePortId; + schemeBind.numOfSchemes = p_PortScheme->numOfSchemes; + for (i=0; ih_Schemes[i])-1); + /* build vector */ + tmpScmVec |= 1 << (31 - (uint32_t)schemeBind.schemesIds[i]); + } + + if (!TRY_LOCK(p_FmPort->h_Spinlock, &p_FmPort->lock)) + return ERROR_CODE(E_BUSY); + err = FmPcdKgUnbindPortToSchemes(p_FmPort->h_FmPcd, &schemeBind); + if (err == E_OK) + p_FmPort->schemesPerPortVector &= ~tmpScmVec; + RELEASE_LOCK(p_FmPort->lock); + + return err; +} + +t_Error FM_PORT_PcdPrsModifyStartOffset (t_Handle h_FmPort, t_FmPcdPrsStart *p_FmPcdPrsStart) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + volatile uint32_t *p_BmiPrsStartOffset = NULL; + volatile uint32_t *p_BmiNia = NULL; + uint32_t tmpReg; + uint8_t hdrNum; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->pcdEngines & FM_PCD_PRS , E_INVALID_STATE); + + switch(p_FmPort->portType) + { + case(e_FM_PORT_TYPE_RX_10G): + case(e_FM_PORT_TYPE_RX): + p_BmiPrsStartOffset = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rpso; + p_BmiNia = &p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rfne; + tmpReg = GET_UINT32(*p_BmiNia) & BMI_RFNE_FDCS_MASK; + break; + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + p_BmiPrsStartOffset = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_opso; + p_BmiNia = &p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ofne; + tmpReg = 0; + break; + default: + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("available for Rx and offline parsing ports only")); + } + + /* check that current NIA is BMI to BMI */ + if((GET_UINT32(*p_BmiNia) & ~BMI_RFNE_FDCS_MASK) != (NIA_ENG_BMI | NIA_BMI_AC_ENQ_FRAME)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("may be called only for ports in BMI-to-BMI state.")); + + if (!TRY_LOCK(p_FmPort->h_Spinlock, &p_FmPort->lock)) + return ERROR_CODE(E_BUSY); + /* set the first header */ + GET_PRS_HDR_NUM(hdrNum, p_FmPcdPrsStart->firstPrsHdr); + if ((hdrNum == ILLEGAL_HDR_NUM) || (hdrNum == NO_HDR_NUM)) + { + RELEASE_LOCK(p_FmPort->lock); + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("Unsupported header.")); + } + WRITE_UINT32(*p_BmiNia, (uint32_t)(NIA_ENG_PRS | (uint32_t)hdrNum | tmpReg)); + + /* set start parsing offset */ + WRITE_UINT32(*p_BmiPrsStartOffset, (uint32_t)(p_FmPcdPrsStart->parsingOffset + p_FmPort->internalBufferOffset)); + RELEASE_LOCK(p_FmPort->lock); + + return E_OK; +} + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +t_Error FM_PORT_DumpRegs(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_Error err = E_OK; + char arr[30]; + uint8_t flag; + int i=0; + + DECLARE_DUMP; + + SANITY_CHECK_RETURN_ERROR(h_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortQmiRegs, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortBmiRegs, E_INVALID_HANDLE); + + switch (p_FmPort->portType) + { + case (e_FM_PORT_TYPE_OH_OFFLINE_PARSING): + strcpy(arr, "PORT_TYPE_OFFLINE_PARSING"); + flag = 0; + break; + case (e_FM_PORT_TYPE_OH_HOST_COMMAND): + strcpy(arr, "PORT_TYPE_HOST_COMMAND"); + flag = 0; + break; + case (e_FM_PORT_TYPE_RX): + strcpy(arr, "PORT_TYPE_RX"); + flag = 1; + break; + case (e_FM_PORT_TYPE_RX_10G): + strcpy(arr, "PORT_TYPE_RX_10G"); + flag = 1; + break; + case (e_FM_PORT_TYPE_TX): + strcpy(arr, "PORT_TYPE_TX"); + flag = 2; + break; + case (e_FM_PORT_TYPE_TX_10G): + strcpy(arr, "PORT_TYPE_TX_10G"); + flag = 2; + break; + default: + return ERROR_CODE(E_INVALID_VALUE); + } + + DUMP_TITLE(UINT_TO_PTR(p_FmPort->hardwarePortId), ("PortId for %s %d", arr, p_FmPort->portId )); + DUMP_TITLE(p_FmPort->p_FmPortBmiRegs, ("Bmi Port Regs")); + + err = FmDumpPortRegs(p_FmPort->h_Fm, p_FmPort->hardwarePortId); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + + switch(flag) + { + case(0): + + DUMP_SUBTITLE(("\n")); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ocfg); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ost); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_oda); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ofdne); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ofne); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ofca); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ofpne); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_opso); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_opp); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_occb); + + DUMP_TITLE(&(p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_oprai), ("fmbm_oprai")); + DUMP_SUBSTRUCT_ARRAY(i, FM_PORT_PRS_RESULT_NUM_OF_WORDS) + { + DUMP_MEMORY(&(p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_oprai[i]), sizeof(uint32_t)); + } + DUMP_SUBTITLE(("\n")); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ofqid ); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_oefqid); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ofsdm ); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ofsem ); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ofene ); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_orlmts); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_orlmt); + + { +#ifndef FM_NO_OP_OBSERVED_POOLS + t_FmRevisionInfo revInfo; + + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if (revInfo.majorRev == 4) +#endif /* !FM_NO_OP_OBSERVED_POOLS */ + { + DUMP_TITLE(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_oebmpi, ("fmbm_oebmpi")); + + DUMP_SUBSTRUCT_ARRAY(i, FM_PORT_MAX_NUM_OF_OBSERVED_EXT_POOLS) + { + DUMP_MEMORY(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_oebmpi[i], sizeof(uint32_t)); + } + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ocgm); + } + } + + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ostc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ofrc ); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ofdc ); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ofledc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ofufdc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_offc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ofwdc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ofldec); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_opc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_opcp); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_occn); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_otuc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_oduc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs,fmbm_ofuc); + break; + case(1): + DUMP_SUBTITLE(("\n")); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rcfg); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rst); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rda); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rfp); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_reth); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rfed); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_ricp); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rebm); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rfne); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rfca); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rfpne); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rpso); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rpp); + + DUMP_TITLE(&(p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rprai), ("fmbm_rprai")); + DUMP_SUBSTRUCT_ARRAY(i, FM_PORT_PRS_RESULT_NUM_OF_WORDS) + { + DUMP_MEMORY(&(p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rprai[i]), sizeof(uint32_t)); + } + DUMP_SUBTITLE(("\n")); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rfqid); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_refqid); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rfsdm); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rfsem); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rfene); + DUMP_TITLE(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_ebmpi, ("fmbm_ebmpi")); + DUMP_SUBSTRUCT_ARRAY(i, FM_PORT_MAX_NUM_OF_EXT_POOLS) + { + DUMP_MEMORY(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_ebmpi[i], sizeof(uint32_t)); + } + DUMP_TITLE(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_acnt, ("fmbm_acnt")); + DUMP_SUBSTRUCT_ARRAY(i, FM_PORT_MAX_NUM_OF_EXT_POOLS) + { + DUMP_MEMORY(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_acnt[i], sizeof(uint32_t)); + } + DUMP_TITLE(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_cgm, ("fmbm_cgm")); + DUMP_SUBSTRUCT_ARRAY(i, FM_PORT_NUM_OF_CONGESTION_GRPS/32) + { + DUMP_MEMORY(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_cgm[i], sizeof(uint32_t)); + } + DUMP_SUBTITLE(("\n")); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_mpd); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rstc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rfrc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rfbc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rlfc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rffc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rfcd); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rfldec); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rodc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rpc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rpcp); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rccn); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rtuc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rrquc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rduc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rfuc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rpac); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs,fmbm_rdbg); + break; + case(2): + + DUMP_SUBTITLE(("\n")); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tcfg); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tst); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tda); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tfp); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tfed); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_ticp); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tfne); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tfca); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tcfqid); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tfeqid); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tfene); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_trlmts); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_trlmt); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tstc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tfrc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tfdc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tfledc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tfufdc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tpc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tpcp); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tccn); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_ttuc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_ttcquc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tduc); + DUMP_VAR(&p_FmPort->p_FmPortBmiRegs->txPortBmiRegs,fmbm_tfuc); + break; + + default: + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Invalid flag")); + } + + DUMP_TITLE(p_FmPort->p_FmPortQmiRegs, ("Qmi Port Regs")); + + DUMP_VAR(p_FmPort->p_FmPortQmiRegs,fmqm_pnc); + DUMP_VAR(p_FmPort->p_FmPortQmiRegs,fmqm_pns); + DUMP_VAR(p_FmPort->p_FmPortQmiRegs,fmqm_pnts); + DUMP_VAR(p_FmPort->p_FmPortQmiRegs,fmqm_pnen); + DUMP_VAR(p_FmPort->p_FmPortQmiRegs,fmqm_pnetfc); + + if(flag !=1) + { + DUMP_VAR(&p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs,fmqm_pndn); + DUMP_VAR(&p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs,fmqm_pndc); + DUMP_VAR(&p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs,fmqm_pndtfc); + DUMP_VAR(&p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs,fmqm_pndfdc); + DUMP_VAR(&p_FmPort->p_FmPortQmiRegs->nonRxQmiRegs,fmqm_pndcc); + } + + return E_OK; +} +#endif /* (defined(DEBUG_ERRORS) && ... */ + +t_Error FM_PORT_AddCongestionGrps(t_Handle h_FmPort, t_FmPortCongestionGrps *p_CongestionGrps) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + bool tmpArray[FM_PORT_NUM_OF_CONGESTION_GRPS], opPort; + int i; + uint8_t mod; + uint32_t tmpReg = 0; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + + { +#ifdef FM_NO_OP_OBSERVED_CGS + t_FmRevisionInfo revInfo; + + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if (revInfo.majorRev != 4) + { + if((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && + (p_FmPort->portType != e_FM_PORT_TYPE_RX)) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("Available for Rx ports only")); + } + else +#endif /* FM_NO_OP_OBSERVED_CGS */ + if((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && + (p_FmPort->portType != e_FM_PORT_TYPE_RX) && + (p_FmPort->portType != e_FM_PORT_TYPE_OH_OFFLINE_PARSING)) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("Available for Rx & OP ports only")); + } + + opPort = (bool)((p_FmPort->portType == e_FM_PORT_TYPE_OH_OFFLINE_PARSING) ? TRUE:FALSE); + + /* to minimize memory access (groups may belong to the same regsiter, and may + be out of order), we first collect all information into a 256 booleans array, + representing each possible group. */ + + memset(&tmpArray, 0, FM_PORT_NUM_OF_CONGESTION_GRPS*sizeof(bool)); + for(i=0;inumOfCongestionGrpsToConsider;i++) + tmpArray[p_CongestionGrps->congestionGrpsToConsider[i]] = TRUE; + + for(i=0;ip_FmPortBmiRegs->ohPortBmiRegs.fmbm_ocgm): + GET_UINT32(p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_cgm[7-i/32]); + + /* set in the register, the bit representing the relevant congestion group. */ + if(tmpArray[i]) + tmpReg |= (0x00000001 << (uint32_t)mod); + + if (mod == 31) /* last in a 32 bunch of congestion groups - write the corresponding register */ + { + if(opPort) + WRITE_UINT32(p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ocgm, tmpReg); + else + WRITE_UINT32(p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_cgm[7-i/32], tmpReg); + } + } + + return E_OK; +} + +t_Error FM_PORT_RemoveCongestionGrps(t_Handle h_FmPort, t_FmPortCongestionGrps *p_CongestionGrps) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + bool tmpArray[FM_PORT_NUM_OF_CONGESTION_GRPS], opPort; + int i; + uint8_t mod; + uint32_t tmpReg = 0; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + + { +#ifdef FM_NO_OP_OBSERVED_CGS + t_FmRevisionInfo revInfo; + + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if (revInfo.majorRev != 4) + { + if((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && + (p_FmPort->portType != e_FM_PORT_TYPE_RX)) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("Available for Rx ports only")); + } + else +#endif /* FM_NO_OP_OBSERVED_CGS */ + if((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && + (p_FmPort->portType != e_FM_PORT_TYPE_RX) && + (p_FmPort->portType != e_FM_PORT_TYPE_OH_OFFLINE_PARSING)) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("Available for Rx & OP ports only")); + } + + opPort = (bool)((p_FmPort->portType == e_FM_PORT_TYPE_OH_OFFLINE_PARSING) ? TRUE:FALSE); + + /* to minimize memory access (groups may belong to the same regsiter, and may + be out of order), we first collect all information into a 256 booleans array, + representing each possible group. */ + memset(&tmpArray, 0, FM_PORT_NUM_OF_CONGESTION_GRPS*sizeof(bool)); + for(i=0;inumOfCongestionGrpsToConsider;i++) + tmpArray[p_CongestionGrps->congestionGrpsToConsider[i]] = TRUE; + + for(i=0;ip_FmPortBmiRegs->ohPortBmiRegs.fmbm_ocgm): + GET_UINT32(p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_cgm[7-i/32]); + + /* set in the register, the bit representing the relevant congestion group. */ + if(tmpArray[i]) + tmpReg &= ~(0x00000001 << (uint32_t)mod); + + if (mod == 31) /* last in a 32 bunch of congestion groups - write the corresponding register */ + { + if(opPort) + WRITE_UINT32(p_FmPort->p_FmPortBmiRegs->ohPortBmiRegs.fmbm_ocgm, tmpReg); + else + WRITE_UINT32(p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_cgm[7-i/32], tmpReg); + } + } + + return E_OK; +} + --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Port/fm_port.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Port/fm_port.h @@ -0,0 +1,894 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm_port.h + + @Description FM Port internal structures and definitions. +*//***************************************************************************/ +#ifndef __FM_PORT_H +#define __FM_PORT_H + +#include "error_ext.h" +#include "std_ext.h" +#include "fm_port_ext.h" + +#include "fm_common.h" + + +#define __ERR_MODULE__ MODULE_FM_PORT + + +#define MIN_EXT_BUF_SIZE 64 +#define DATA_ALIGNMENT 64 +#define MAX_LIODN_OFFSET 64 + +/**************************************************************************//** + @Description Memory Map defines +*//***************************************************************************/ +#define BMI_PORT_REGS_OFFSET 0 +#define QMI_PORT_REGS_OFFSET 0x400 +#define PRS_PORT_REGS_OFFSET 0x800 + +/**************************************************************************//** + @Description defaults +*//***************************************************************************/ +#define DEFAULT_PORT_deqHighPriority TRUE +#define DEFAULT_PORT_deqType e_FM_PORT_DEQ_TYPE1 +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT +#define DEFAULT_PORT_deqPrefetchOption e_FM_PORT_DEQ_FULL_PREFETCH +#define DEFAULT_PORT_deqPrefetchOption_HC e_FM_PORT_DEQ_NO_PREFETCH +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ +#define DEFAULT_PORT_deqByteCnt 2000 +#define DEFAULT_PORT_bufferPrefixContent_privDataSize 0 +#define DEFAULT_PORT_bufferPrefixContent_passPrsResult FALSE +#define DEFAULT_PORT_bufferPrefixContent_passTimeStamp FALSE +#define DEFAULT_PORT_bufferPrefixContent_allOtherPCDInfo FALSE +#ifdef DEBUG +#define DEFAULT_PORT_bufferPrefixContent_debugInfo FALSE +#endif /* DEBUG */ +#define DEFAULT_PORT_bufferPrefixContent_dataAlign DATA_ALIGNMENT +#define DEFAULT_PORT_cheksumLastBytesIgnore 0 +#define DEFAULT_PORT_cutBytesFromEnd 4 +#define DEFAULT_PORT_txFifoMinFillLevel 0 +#define DEFAULT_PORT_txFifoDeqPipelineDepth_IM 2 +#define DEFAULT_PORT_txFifoDeqPipelineDepth_1G 2 +#define DEFAULT_PORT_txFifoDeqPipelineDepth_10G 8 +#define DEFAULT_PORT_txFifoLowComfLevel (5*KILOBYTE) +#define DEFAULT_PORT_rxFifoPriElevationLevel BMI_MAX_FIFO_SIZE +#define DEFAULT_PORT_rxFifoThreshold (BMI_MAX_FIFO_SIZE*3/4) +#define DEFAULT_PORT_frmDiscardOverride FALSE +#define DEFAULT_PORT_dmaSwapData e_FM_PORT_DMA_NO_SWP +#define DEFAULT_PORT_dmaIntContextCacheAttr e_FM_PORT_DMA_NO_STASH +#define DEFAULT_PORT_dmaHeaderCacheAttr e_FM_PORT_DMA_NO_STASH +#define DEFAULT_PORT_dmaScatterGatherCacheAttr e_FM_PORT_DMA_NO_STASH +#define DEFAULT_PORT_dmaWriteOptimize TRUE +#define DEFAULT_PORT_forwardIntContextReuse FALSE +#define DEFAULT_PORT_BufMargins_startMargins 32 +#define DEFAULT_PORT_BufMargins_endMargins 0 +#define DEFAULT_PORT_syncReq TRUE +#define DEFAULT_PORT_syncReqForHc FALSE +#define DEFAULT_PORT_color e_FM_PORT_COLOR_GREEN +#define DEFAULT_PORT_errorsToDiscard FM_PORT_FRM_ERR_CLS_DISCARD +#define DEFAULT_dualRateLimitScaleDown e_FM_PORT_DUAL_RATE_LIMITER_NONE +#define DEFAULT_rateLimitBurstSizeHighGranularity FALSE +#define DEFAULT_exception IM_EV_BSY + +/* Host command port MUST NOT be changed to more than 1 !!! */ +#define DEFAULT_PORT_numOfTasks(type) \ + (uint32_t)((((type) == e_FM_PORT_TYPE_RX_10G) || \ + ((type) == e_FM_PORT_TYPE_TX_10G)) ? 16 : \ + ((((type) == e_FM_PORT_TYPE_RX) || \ + ((type) == e_FM_PORT_TYPE_TX) || \ + ((type) == e_FM_PORT_TYPE_OH_OFFLINE_PARSING)) ? 3 : 1)) + +#define DEFAULT_PORT_extraNumOfTasks(type) \ + (uint32_t)((((type) == e_FM_PORT_TYPE_RX_10G) || \ + ((type) == e_FM_PORT_TYPE_TX_10G)) ? 8 : \ + ((((type) == e_FM_PORT_TYPE_RX) || \ + ((type) == e_FM_PORT_TYPE_TX) || \ + ((type) == e_FM_PORT_TYPE_OH_OFFLINE_PARSING)) ? 2 : 0)) + +#define DEFAULT_PORT_numOfOpenDmas(type) \ + (uint32_t)(((type) == e_FM_PORT_TYPE_TX_10G) ? 8 : \ + (((type) == e_FM_PORT_TYPE_RX_10G) ? 4 : 1)) + +#define DEFAULT_PORT_extraNumOfOpenDmas(type) \ + (uint32_t)((((type) == e_FM_PORT_TYPE_RX_10G) || \ + ((type) == e_FM_PORT_TYPE_TX_10G)) ? 8 : \ + ((((type) == e_FM_PORT_TYPE_RX) || \ + ((type) == e_FM_PORT_TYPE_TX) || \ + ((type) == e_FM_PORT_TYPE_OH_OFFLINE_PARSING)) ? 1 : 0)) + +#if defined(CONFIG_FMAN_RESOURCE_ALLOCATION_ALGORITHM) +/* Let LLD to set minimum fifosize, otherwise fifosize settings will not work */ +#define DEFAULT_PORT_sizeOfFifo(type) \ + (uint32_t)(KILOBYTE) +#else +#define DEFAULT_PORT_sizeOfFifo(type) \ + (uint32_t)((((type) == e_FM_PORT_TYPE_RX_10G) || \ + ((type) == e_FM_PORT_TYPE_TX_10G)) ? (16*KILOBYTE) : \ + ((((type) == e_FM_PORT_TYPE_RX) || \ + ((type) == e_FM_PORT_TYPE_TX) || \ + ((type) == e_FM_PORT_TYPE_OH_OFFLINE_PARSING)) ? (4*KILOBYTE) : (1536))) +#endif + +#define DEFAULT_PORT_extraSizeOfFifo(type) \ + (uint32_t)(((type) == e_FM_PORT_TYPE_RX_10G) ? (8*KILOBYTE) : \ + (((type) == e_FM_PORT_TYPE_RX) ? (4*KILOBYTE) : (0))) + +#define DEFAULT_PORT_txBdRingLength 16 +#define DEFAULT_PORT_rxBdRingLength 128 +#define DEFAULT_PORT_ImfwExtStructsMemId 0 +#define DEFAULT_PORT_ImfwExtStructsMemAttr MEMORY_ATTR_CACHEABLE + +#define OH_PIPELINE_DEPTH 2 + +/**************************************************************************//** + @Description Memory Mapped Registers +*//***************************************************************************/ + +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(push,1) +#endif /* defined(__MWERKS__) && ... */ +#define MEM_MAP_START + +#define FM_PORT_MAX_NUM_OF_EXT_POOLS_ALL_INTEGRATIONS 8 +#define FM_PORT_NUM_OF_CONGESTION_GRPS_ALL_INTEGRATIONS 256 + +typedef _Packed struct +{ + volatile uint32_t fmbm_rcfg; /**< Rx Configuration */ + volatile uint32_t fmbm_rst; /**< Rx Status */ + volatile uint32_t fmbm_rda; /**< Rx DMA attributes*/ + volatile uint32_t fmbm_rfp; /**< Rx FIFO Parameters*/ + volatile uint32_t fmbm_rfed; /**< Rx Frame End Data*/ + volatile uint32_t fmbm_ricp; /**< Rx Internal Context Parameters*/ + volatile uint32_t fmbm_rim; /**< Rx Internal Buffer Margins*/ + volatile uint32_t fmbm_rebm; /**< Rx External Buffer Margins*/ + volatile uint32_t fmbm_rfne; /**< Rx Frame Next Engine*/ + volatile uint32_t fmbm_rfca; /**< Rx Frame Command Attributes.*/ + volatile uint32_t fmbm_rfpne; /**< Rx Frame Parser Next Engine*/ + volatile uint32_t fmbm_rpso; /**< Rx Parse Start Offset*/ + volatile uint32_t fmbm_rpp; /**< Rx Policer Profile */ + volatile uint32_t fmbm_rccb; /**< Rx Coarse Classification Base */ + volatile uint32_t fmbm_reth; /**< Rx Excessive Threshold */ + volatile uint32_t reserved1[1]; /**< (0x03C 0x03F) */ + volatile uint32_t fmbm_rprai[FM_PORT_PRS_RESULT_NUM_OF_WORDS]; + /**< Rx Parse Results Array Initialization*/ + volatile uint32_t fmbm_rfqid; /**< Rx Frame Queue ID*/ + volatile uint32_t fmbm_refqid; /**< Rx Error Frame Queue ID*/ + volatile uint32_t fmbm_rfsdm; /**< Rx Frame Status Discard Mask*/ + volatile uint32_t fmbm_rfsem; /**< Rx Frame Status Error Mask*/ + volatile uint32_t fmbm_rfene; /**< Rx Frame Enqueue Next Engine */ + volatile uint32_t reserved2[0x23];/**< (0x074 0x0FF) */ + volatile uint32_t fmbm_ebmpi[FM_PORT_MAX_NUM_OF_EXT_POOLS_ALL_INTEGRATIONS]; + /**< Buffer Manager pool Information-*/ + volatile uint32_t fmbm_acnt[FM_PORT_MAX_NUM_OF_EXT_POOLS_ALL_INTEGRATIONS]; + /**< Allocate Counter-*/ + volatile uint32_t reserved3[8]; + /**< 0x130/0x140 - 0x15F reserved -*/ + volatile uint32_t fmbm_cgm[FM_PORT_NUM_OF_CONGESTION_GRPS_ALL_INTEGRATIONS/32]; + /**< Congestion Group Map*/ + volatile uint32_t fmbm_mpd; /**< BM Pool Depletion */ + volatile uint32_t reserved4[0x1F];/**< (0x184 0x1FF) */ + volatile uint32_t fmbm_rstc; /**< Rx Statistics Counters*/ + volatile uint32_t fmbm_rfrc; /**< Rx Frame Counter*/ + volatile uint32_t fmbm_rfbc; /**< Rx Bad Frames Counter*/ + volatile uint32_t fmbm_rlfc; /**< Rx Large Frames Counter*/ + volatile uint32_t fmbm_rffc; /**< Rx Filter Frames Counter*/ + volatile uint32_t fmbm_rfcd; /**< Rx Frame Discard Counter*/ + volatile uint32_t fmbm_rfldec; /**< Rx Frames List DMA Error Counter*/ + volatile uint32_t fmbm_rodc; /**< Rx Out of Buffers Discard Counter-*/ + volatile uint32_t fmbm_rbdc; /**< Rx Buffers Deallocate Counter-*/ + volatile uint32_t reserved5[0x17];/**< (0x224 0x27F) */ + volatile uint32_t fmbm_rpc; /**< Rx Performance Counters*/ + volatile uint32_t fmbm_rpcp; /**< Rx Performance Count Parameters*/ + volatile uint32_t fmbm_rccn; /**< Rx Cycle Counter*/ + volatile uint32_t fmbm_rtuc; /**< Rx Tasks Utilization Counter*/ + volatile uint32_t fmbm_rrquc; /**< Rx Receive Queue Utilization Counter*/ + volatile uint32_t fmbm_rduc; /**< Rx DMA Utilization Counter*/ + volatile uint32_t fmbm_rfuc; /**< Rx FIFO Utilization Counter*/ + volatile uint32_t fmbm_rpac; /**< Rx Pause Activation Counter*/ + volatile uint32_t reserved6[0x18];/**< (0x2A0 0x2FF) */ + volatile uint32_t fmbm_rdbg; /**< Rx Debug-*/ +} _PackedType t_FmPortRxBmiRegs; + +typedef _Packed struct +{ + volatile uint32_t fmbm_tcfg; /**< Tx Configuration */ + volatile uint32_t fmbm_tst; /**< Tx Status */ + volatile uint32_t fmbm_tda; /**< Tx DMA attributes */ + volatile uint32_t fmbm_tfp; /**< Tx FIFO Parameters */ + volatile uint32_t fmbm_tfed; /**< Tx Frame End Data */ + volatile uint32_t fmbm_ticp; /**< Tx Internal Context Parameters */ + volatile uint32_t fmbm_tfne; /**< Tx Frame Next Engine. */ + volatile uint32_t fmbm_tfca; /**< Tx Frame Command attribute. */ + volatile uint32_t fmbm_tcfqid; /**< Tx Confirmation Frame Queue ID. */ + volatile uint32_t fmbm_tfeqid; /**< Tx Frame Error Queue ID */ + volatile uint32_t fmbm_tfene; /**< Tx Frame Enqueue Next Engine */ + volatile uint32_t fmbm_trlmts; /**< Tx Rate Limiter Scale */ + volatile uint32_t fmbm_trlmt; /**< Tx Rate Limiter */ + volatile uint32_t reserved0[0x73];/**< (0x038-0x200) */ + volatile uint32_t fmbm_tstc; /**< Tx Statistics Counters */ + volatile uint32_t fmbm_tfrc; /**< Tx Frame Counter */ + volatile uint32_t fmbm_tfdc; /**< Tx Frames Discard Counter */ + volatile uint32_t fmbm_tfledc; /**< Tx Frame Length error discard counter */ + volatile uint32_t fmbm_tfufdc; /**< Tx Frame unsupported format discard Counter */ + volatile uint32_t fmbm_tbdc; /**< Tx Buffers Deallocate Counter */ + volatile uint32_t reserved1[0x1A];/**< (0x218-0x280) */ + volatile uint32_t fmbm_tpc; /**< Tx Performance Counters*/ + volatile uint32_t fmbm_tpcp; /**< Tx Performance Count Parameters*/ + volatile uint32_t fmbm_tccn; /**< Tx Cycle Counter*/ + volatile uint32_t fmbm_ttuc; /**< Tx Tasks Utilization Counter*/ + volatile uint32_t fmbm_ttcquc; /**< Tx Transmit Confirm Queue Utilization Counter*/ + volatile uint32_t fmbm_tduc; /**< Tx DMA Utilization Counter*/ + volatile uint32_t fmbm_tfuc; /**< Tx FIFO Utilization Counter*/ +} _PackedType t_FmPortTxBmiRegs; + +typedef _Packed struct +{ + volatile uint32_t fmbm_ocfg; /**< O/H Configuration */ + volatile uint32_t fmbm_ost; /**< O/H Status */ + volatile uint32_t fmbm_oda; /**< O/H DMA attributes */ + volatile uint32_t fmbm_oicp; /**< O/H Internal Context Parameters */ + volatile uint32_t fmbm_ofdne; /**< O/H Frame Dequeue Next Engine */ + volatile uint32_t fmbm_ofne; /**< O/H Frame Next Engine */ + volatile uint32_t fmbm_ofca; /**< O/H Frame Command Attributes. */ + volatile uint32_t fmbm_ofpne; /**< O/H Frame Parser Next Engine */ + volatile uint32_t fmbm_opso; /**< O/H Parse Start Offset */ + volatile uint32_t fmbm_opp; /**< O/H Policer Profile */ + volatile uint32_t fmbm_occb; /**< O/H Coarse Classification base */ + volatile uint32_t fmbm_oim; /**< O/H Internal margins*/ + volatile uint32_t reserved0[4]; /**< (0x030 - 0x03F) */ + volatile uint32_t fmbm_oprai[FM_PORT_PRS_RESULT_NUM_OF_WORDS]; + /**< O/H Parse Results Array Initialization */ + volatile uint32_t fmbm_ofqid; /**< O/H Frame Queue ID */ + volatile uint32_t fmbm_oefqid; /**< O/H Error Frame Queue ID */ + volatile uint32_t fmbm_ofsdm; /**< O/H Frame Status Discard Mask */ + volatile uint32_t fmbm_ofsem; /**< O/H Frame Status Error Mask */ + volatile uint32_t fmbm_ofene; /**< O/H Frame Enqueue Next Engine */ + volatile uint32_t fmbm_orlmts; /**< O/H Rate Limiter Scale */ + volatile uint32_t fmbm_orlmt; /**< O/H Rate Limiter */ + volatile uint32_t reserved0a[0x21]; + /**< 0x07C - 0x0FF Reserved */ + union + { + volatile uint32_t fmbm_oebmpi[FM_PORT_MAX_NUM_OF_OBSERVED_EXT_POOLS]; + /**< Buffer Manager Observed Pool Information */ + volatile uint32_t reserved0b[0x18]; + }; /**< 0x100 - 0x15F Reserved */ + volatile uint32_t fmbm_ocgm; /**< Observed Congestion Group Map */ + volatile uint32_t reserved0c[0x7];/**< 0x164 - 0x17F Reserved */ + volatile uint32_t fmbm_ompd; /**< Observed BMan Pool Depletion */ + volatile uint32_t reserved0d[0x1F]; + /**< 0x184 - 0x1FF Reserved */ + volatile uint32_t fmbm_ostc; /**< O/H Statistics Counters */ + volatile uint32_t fmbm_ofrc; /**< O/H Frame Counter */ + volatile uint32_t fmbm_ofdc; /**< O/H Frames Discard Counter */ + volatile uint32_t fmbm_ofledc; /**< O/H Frames Length Error Discard Counter */ + volatile uint32_t fmbm_ofufdc; /**< O/H Frames Unsupported Format Discard Counter */ + volatile uint32_t fmbm_offc; /**< O/H Filter Frames Counter */ + volatile uint32_t fmbm_ofwdc; /**< - Rx Frames WRED Discard Counter */ + volatile uint32_t fmbm_ofldec; /**< O/H Frames List DMA Error Counter */ + volatile uint32_t fmbm_obdc; /**< O/H Buffers Deallocate Counter */ + volatile uint32_t reserved2[0x17];/**< (0x218 - 0x27F) */ + volatile uint32_t fmbm_opc; /**< O/H Performance Counters */ + volatile uint32_t fmbm_opcp; /**< O/H Performance Count Parameters */ + volatile uint32_t fmbm_occn; /**< O/H Cycle Counter */ + volatile uint32_t fmbm_otuc; /**< O/H Tasks Utilization Counter */ + volatile uint32_t fmbm_oduc; /**< O/H DMA Utilization Counter */ + volatile uint32_t fmbm_ofuc; /**< O/H FIFO Utilization Counter */ +} _PackedType t_FmPortOhBmiRegs; + +typedef _Packed union +{ + t_FmPortRxBmiRegs rxPortBmiRegs; + t_FmPortTxBmiRegs txPortBmiRegs; + t_FmPortOhBmiRegs ohPortBmiRegs; +} _PackedType u_FmPortBmiRegs; + +typedef _Packed struct +{ + volatile uint32_t reserved1[2]; /**< 0xn024 - 0x02B */ + volatile uint32_t fmqm_pndn; /**< PortID n Dequeue NIA Register */ + volatile uint32_t fmqm_pndc; /**< PortID n Dequeue Config Register */ + volatile uint32_t fmqm_pndtfc; /**< PortID n Dequeue Total Frame Counter */ + volatile uint32_t fmqm_pndfdc; /**< PortID n Dequeue FQID from Default Counter */ + volatile uint32_t fmqm_pndcc; /**< PortID n Dequeue Confirm Counter */ +} _PackedType t_FmPortNonRxQmiRegs; + +typedef _Packed struct +{ + volatile uint32_t fmqm_pnc; /**< PortID n Configuration Register */ + volatile uint32_t fmqm_pns; /**< PortID n Status Register */ + volatile uint32_t fmqm_pnts; /**< PortID n Task Status Register */ + volatile uint32_t reserved0[4]; /**< 0xn00C - 0xn01B */ + volatile uint32_t fmqm_pnen; /**< PortID n Enqueue NIA Register */ + volatile uint32_t fmqm_pnetfc; /**< PortID n Enqueue Total Frame Counter */ + t_FmPortNonRxQmiRegs nonRxQmiRegs; /**< Registers for Tx Hc & Op ports */ +} _PackedType t_FmPortQmiRegs; + +typedef _Packed struct +{ + _Packed struct + { + volatile uint32_t softSeqAttach; /**< Soft Sequence Attachment */ + volatile uint32_t lcv; /**< Line-up Enable Confirmation Mask */ + } _PackedType hdrs[FM_PCD_PRS_NUM_OF_HDRS]; + volatile uint8_t reserved0[0x378]; + volatile uint32_t pcac; /**< Parse Internal Memory Configuration Access Control Register */ + volatile uint32_t pctpid; /**< Parse Internal Memory Configured TPID Register */ +} _PackedType t_FmPortPrsRegs; + +/**************************************************************************//* + @Description Basic buffer descriptor (BD) structure +*//***************************************************************************/ +typedef _Packed struct +{ + volatile uint16_t status; + volatile uint16_t length; + volatile uint8_t reserved0[0x6]; + volatile uint8_t reserved1[0x1]; + volatile t_FmPhysAddr buff; +} _PackedType t_FmImBd; + +typedef _Packed struct +{ + volatile uint16_t gen; /**< tbd */ + volatile uint8_t reserved0[0x1]; + volatile t_FmPhysAddr bdRingBase; /**< tbd */ + volatile uint16_t bdRingSize; /**< tbd */ + volatile uint16_t offsetIn; /**< tbd */ + volatile uint16_t offsetOut; /**< tbd */ + volatile uint8_t reserved1[0x12]; /**< 0x0e - 0x1f */ +} _PackedType t_FmPortImQd; + +typedef _Packed struct +{ + volatile uint32_t mode; /**< Mode register */ + volatile uint32_t rxQdPtr; /**< tbd */ + volatile uint32_t txQdPtr; /**< tbd */ + volatile uint16_t mrblr; /**< tbd */ + volatile uint16_t rxQdBsyCnt; /**< tbd */ + volatile uint8_t reserved0[0x10]; /**< 0x10 - 0x1f */ + t_FmPortImQd rxQd; + t_FmPortImQd txQd; + volatile uint8_t reserved1[0xa0]; /**< 0x60 - 0xff */ +} _PackedType t_FmPortImPram; + +#define MEM_MAP_END +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(pop) +#endif /* defined(__MWERKS__) && ... */ + + +/**************************************************************************//** + @Description Registers bit fields +*//***************************************************************************/ + +/**************************************************************************//** + @Description BMI defines +*//***************************************************************************/ +#define BMI_PORT_CFG_EN 0x80000000 +#define BMI_PORT_CFG_EN_MACSEC 0x00800000 +#define BMI_PORT_CFG_FDOVR 0x02000000 +#define BMI_PORT_CFG_IM 0x01000000 +#define BMI_PORT_STATUS_BSY 0x80000000 +#define BMI_COUNTERS_EN 0x80000000 +#define BMI_DMA_ATTR_WRITE_OPTIMIZE 0x00100000 +#define BMI_PORT_RFNE_FRWD_DCL4C 0x10000000 +#define BMI_PORT_RFNE_FRWD_RPD 0x40000000 +#define BMI_RFNE_FDCS_MASK 0xFF000000 + +#define BMI_CMD_MR_LEAC 0x00200000 +#define BMI_CMD_MR_SLEAC 0x00100000 +#define BMI_CMD_MR_MA 0x00080000 +#define BMI_CMD_MR_DEAS 0x00040000 +#define BMI_CMD_TX_MR_DEF (0) +#define BMI_CMD_RX_MR_DEF (BMI_CMD_MR_LEAC | \ + BMI_CMD_MR_SLEAC | \ + BMI_CMD_MR_MA | \ + BMI_CMD_MR_DEAS) +#define BMI_CMD_ATTR_ORDER 0x80000000 +#define BMI_CMD_ATTR_SYNC 0x02000000 +#define BMI_CMD_ATTR_MACCMD_MASK 0x0000ff00 +#define BMI_CMD_ATTR_MACCMD_OVERRIDE 0x00008000 +#define BMI_CMD_ATTR_MACCMD_SECURED 0x00001000 +#define BMI_CMD_ATTR_MACCMD_SC_MASK 0x00000f00 + +#define BMI_EXT_BUF_POOL_VALID 0x80000000 +#define BMI_EXT_BUF_POOL_EN_COUNTER 0x40000000 +#define BMI_EXT_BUF_POOL_BACKUP 0x20000000 +#define BMI_EXT_BUF_POOL_ID_MASK 0x003F0000 +#define BMI_STATUS_RX_MASK_UNUSED (uint32_t)(~(FM_PORT_FRM_ERR_DMA | \ + FM_PORT_FRM_ERR_PHYSICAL | \ + FM_PORT_FRM_ERR_SIZE | \ + FM_PORT_FRM_ERR_CLS_DISCARD | \ + FM_PORT_FRM_ERR_EXTRACTION | \ + FM_PORT_FRM_ERR_NO_SCHEME | \ + FM_PORT_FRM_ERR_COLOR_RED | \ + FM_PORT_FRM_ERR_COLOR_YELLOW | \ + FM_PORT_FRM_ERR_ILL_PLCR | \ + FM_PORT_FRM_ERR_PLCR_FRAME_LEN | \ + FM_PORT_FRM_ERR_PRS_TIMEOUT | \ + FM_PORT_FRM_ERR_PRS_ILL_INSTRUCT | \ + FM_PORT_FRM_ERR_BLOCK_LIMIT_EXCEEDED | \ + FM_PORT_FRM_ERR_PRS_HDR_ERR | \ + FM_PORT_FRM_ERR_PROCESS_TIMEOUT | \ + FM_PORT_FRM_ERR_KEYSIZE_OVERFLOW)) + +#define BMI_STATUS_OP_MASK_UNUSED (uint32_t)(BMI_STATUS_RX_MASK_UNUSED & \ + ~(FM_PORT_FRM_ERR_LENGTH | \ + FM_PORT_FRM_ERR_UNSUPPORTED_FORMAT)) + +#define BMI_RATE_LIMIT_EN 0x80000000 +#define BMI_RATE_LIMIT_BURST_SIZE_GRAN 0x80000000 +#define BMI_RATE_LIMIT_SCALE_BY_2 0x00000001 +#define BMI_RATE_LIMIT_SCALE_BY_4 0x00000002 +#define BMI_RATE_LIMIT_SCALE_BY_8 0x00000003 + +#define BMI_RX_FIFO_THRESHOLD_BC 0x80000000 + +#define BMI_PRS_RESULT_HIGH 0x00000000 +#define BMI_PRS_RESULT_LOW 0xFFFFFFFF + +#define RX_ERRS_TO_ENQ (FM_PORT_FRM_ERR_DMA | \ + FM_PORT_FRM_ERR_PHYSICAL | \ + FM_PORT_FRM_ERR_SIZE | \ + FM_PORT_FRM_ERR_EXTRACTION | \ + FM_PORT_FRM_ERR_NO_SCHEME | \ + FM_PORT_FRM_ERR_ILL_PLCR | \ + FM_PORT_FRM_ERR_PLCR_FRAME_LEN | \ + FM_PORT_FRM_ERR_PRS_TIMEOUT | \ + FM_PORT_FRM_ERR_PRS_ILL_INSTRUCT | \ + FM_PORT_FRM_ERR_BLOCK_LIMIT_EXCEEDED | \ + FM_PORT_FRM_ERR_PRS_HDR_ERR | \ + FM_PORT_FRM_ERR_PROCESS_TIMEOUT | \ + FM_PORT_FRM_ERR_KEYSIZE_OVERFLOW) + +#ifdef FM_CAPWAP_SUPPORT +#define OP_ERRS_TO_ENQ (RX_ERRS_TO_ENQ | \ + FM_PORT_FRM_ERR_LENGTH | \ + FM_PORT_FRM_ERR_NON_FM | \ + FM_PORT_FRM_ERR_UNSUPPORTED_FORMAT) + +#else +#define OP_ERRS_TO_ENQ (RX_ERRS_TO_ENQ | \ + FM_PORT_FRM_ERR_LENGTH | \ + FM_PORT_FRM_ERR_UNSUPPORTED_FORMAT) +#endif /* FM_CAPWAP_SUPPORT */ + +/* shifts */ +#define BMI_PORT_CFG_MS_SEL_SHIFT 16 +#define BMI_DMA_ATTR_SWP_SHIFT 30 +#define BMI_DMA_ATTR_IC_CACHE_SHIFT 28 +#define BMI_DMA_ATTR_HDR_CACHE_SHIFT 26 +#define BMI_DMA_ATTR_SG_CACHE_SHIFT 24 + +#define BMI_IM_FOF_SHIFT 28 +#define BMI_PR_PORTID_SHIFT 24 + +#define BMI_RX_FIFO_PRI_ELEVATION_SHIFT 16 +#define BMI_RX_FIFO_THRESHOLD_SHIFT 0 + +#define BMI_RX_FRAME_END_CS_IGNORE_SHIFT 24 +#define BMI_RX_FRAME_END_CUT_SHIFT 16 + +#define BMI_IC_TO_EXT_SHIFT 16 +#define BMI_IC_FROM_INT_SHIFT 8 +#define BMI_IC_SIZE_SHIFT 0 + +#define BMI_INT_BUF_MARG_SHIFT 28 + +#define BMI_EXT_BUF_MARG_START_SHIFT 16 +#define BMI_EXT_BUF_MARG_END_SHIFT 0 + +#define BMI_CMD_ATTR_COLOR_SHIFT 26 +#define BMI_CMD_ATTR_COM_MODE_SHIFT 16 +#define BMI_CMD_ATTR_MACCMD_SHIFT 8 +#define BMI_CMD_ATTR_MACCMD_OVERRIDE_SHIFT 15 +#define BMI_CMD_ATTR_MACCMD_SECURED_SHIFT 12 +#define BMI_CMD_ATTR_MACCMD_SC_SHIFT 8 + +#define BMI_POOL_DEP_NUM_OF_POOLS_SHIFT 16 +#define BMI_POOL_DEP_NUM_OF_POOLS_VECTOR_SHIFT 24 + +#define BMI_EXT_BUF_POOL_ID_SHIFT 16 + +#define BMI_TX_FIFO_MIN_FILL_SHIFT 16 +#define BMI_TX_FIFO_PIPELINE_DEPTH_SHIFT 12 +#define BMI_TX_LOW_COMF_SHIFT 0 + +#define BMI_TX_FRAME_END_CS_IGNORE_SHIFT 24 + +#define BMI_PERFORMANCE_TASK_COMP_SHIFT 24 +#define BMI_PERFORMANCE_PORT_COMP_SHIFT 16 +#define BMI_PERFORMANCE_DMA_COMP_SHIFT 12 +#define BMI_PERFORMANCE_FIFO_COMP_SHIFT 0 + +#define BMI_MAX_BURST_SHIFT 16 +#define BMI_COUNT_RATE_UNIT_SHIFT 16 + +/* sizes */ +#define FRAME_END_DATA_SIZE 16 +#define OFFSET_UNITS 16 +#define FRAME_OFFSET_UNITS 16 +#define MAX_EXT_OFFSET 496 +#define MAX_EXT_BUFFER_OFFSET 511 +#define MAX_INT_OFFSET 240 +#define MIN_TX_INT_OFFSET 16 +#define MAX_IC_SIZE 256 +#define MAX_FRAME_OFFSET 64 +#define MAX_FIFO_PIPELINE_DEPTH 8 +#define MAX_PERFORMANCE_TASK_COMP 64 +#define MAX_PERFORMANCE_TX_QUEUE_COMP 8 +#define MAX_PERFORMANCE_RX_QUEUE_COMP 64 +#define MAX_PERFORMANCE_DMA_COMP 16 +#define MAX_NUM_OF_TASKS 64 +#define MAX_NUM_OF_EXTRA_TASKS 8 +#define MAX_NUM_OF_DMAS 16 +#define MAX_NUM_OF_EXTRA_DMAS 8 +#define MAX_BURST_SIZE 1024 +#define FRAG_EXTRA_SPACE 32 + +/**************************************************************************//** + @Description QMI defines +*//***************************************************************************/ +/* masks */ +#define QMI_PORT_CFG_EN 0x80000000 +#define QMI_PORT_CFG_EN_COUNTERS 0x10000000 +#define QMI_PORT_STATUS_DEQ_TNUM_BSY 0x80000000 +#define QMI_PORT_STATUS_DEQ_FD_BSY 0x20000000 + +#define QMI_DEQ_CFG_PREFETCH_NO_TNUM 0x02000000 +#define QMI_DEQ_CFG_PREFETCH_WAITING_TNUM 0 +#define QMI_DEQ_CFG_PREFETCH_1_FRAME 0 +#define QMI_DEQ_CFG_PREFETCH_3_FRAMES 0x01000000 + +#define QMI_DEQ_CFG_PRI 0x80000000 +#define QMI_DEQ_CFG_TYPE1 0x10000000 +#define QMI_DEQ_CFG_TYPE2 0x20000000 +#define QMI_DEQ_CFG_TYPE3 0x30000000 + +#define QMI_DEQ_CFG_SUBPORTAL_MASK 0x1f +#define QMI_DEQ_CFG_SUBPORTAL_SHIFT 20 + +/**************************************************************************//** + @Description PARSER defines +*//***************************************************************************/ +/* masks */ +#define PRS_HDR_ERROR_DIS 0x00000800 +#define PRS_HDR_SW_PRS_EN 0x00000400 +#define PRS_CP_OFFSET_MASK 0x0000000F +#define PRS_TPID1_MASK 0xFFFF0000 +#define PRS_TPID2_MASK 0x0000FFFF +#define PRS_TPID_DFLT 0x91009100 + +#define PRS_HDR_MPLS_LBL_INTER_EN 0x00200000 +#define PRS_HDR_IPV6_ROUTE_HDR_DIS 0x00008000 +#define PRS_HDR_PPPOE_MTU_CHECK_EN 0x80000000 +#define PRS_HDR_UDP_PAD_REMOVAL 0x80000000 +#define PRS_HDR_TCP_PAD_REMOVAL 0x80000000 +#define PRS_CAC_STOP 0x00000001 +#define PRS_CAC_ACTIVE 0x00000100 + +/* shifts */ +#define PRS_PCTPID_SHIFT 16 +#define PRS_HDR_MPLS_NEXT_HDR_SHIFT 22 +#define PRS_HDR_ETH_BC_SHIFT 28 +#define PRS_HDR_ETH_MC_SHIFT 24 +#define PRS_HDR_VLAN_STACKED_SHIFT 16 +#define PRS_HDR_MPLS_STACKED_SHIFT 16 +#define PRS_HDR_IPV4_1_BC_SHIFT 28 +#define PRS_HDR_IPV4_1_MC_SHIFT 24 +#define PRS_HDR_IPV4_2_UC_SHIFT 20 +#define PRS_HDR_IPV4_2_MC_BC_SHIFT 16 +#define PRS_HDR_IPV6_1_MC_SHIFT 24 +#define PRS_HDR_IPV6_2_UC_SHIFT 20 +#define PRS_HDR_IPV6_2_MC_SHIFT 16 + +#define PRS_HDR_ETH_BC_MASK 0x0fffffff +#define PRS_HDR_ETH_MC_MASK 0xf0ffffff +#define PRS_HDR_VLAN_STACKED_MASK 0xfff0ffff +#define PRS_HDR_MPLS_STACKED_MASK 0xfff0ffff +#define PRS_HDR_IPV4_1_BC_MASK 0x0fffffff +#define PRS_HDR_IPV4_1_MC_MASK 0xf0ffffff +#define PRS_HDR_IPV4_2_UC_MASK 0xff0fffff +#define PRS_HDR_IPV4_2_MC_BC_MASK 0xfff0ffff +#define PRS_HDR_IPV6_1_MC_MASK 0xf0ffffff +#define PRS_HDR_IPV6_2_UC_MASK 0xff0fffff +#define PRS_HDR_IPV6_2_MC_MASK 0xfff0ffff + +/* others */ +#define PRS_HDR_ENTRY_SIZE 8 +#define DEFAULT_CLS_PLAN_VECTOR 0xFFFFFFFF + +#define IPSEC_SW_PATCH_START 0x20 +#define SCTP_SW_PATCH_START 0x4D +#define DCCP_SW_PATCH_START 0x41 + +#define IP_FRAG_SW_PATCH_IPv4 0x300 +#define IP_FRAG_SW_PATCH_IPv6_0 0x320 +#define IP_FRAG_SW_PATCH_IPv6_1 0x372 + +/**************************************************************************//** + @Description IM defines +*//***************************************************************************/ +#define BD_R_E 0x80000000 +#define BD_L 0x08000000 + +#define BD_RX_CRE 0x00080000 +#define BD_RX_FTL 0x00040000 +#define BD_RX_FTS 0x00020000 +#define BD_RX_OV 0x00010000 + +#define BD_RX_ERRORS (BD_RX_CRE | BD_RX_FTL | BD_RX_FTS | BD_RX_OV) +#define BD_ERROR_PASS_FRAME BD_RX_ERRORS + +#define FM_IM_SIZEOF_BD sizeof(t_FmImBd) + +#define BD_STATUS_MASK 0xffff0000 +#define BD_LENGTH_MASK 0x0000ffff + +#define BD_STATUS_AND_LENGTH_SET(bd, val) WRITE_UINT32(*(volatile uint32_t*)(bd), (val)) + +#define BD_STATUS_AND_LENGTH(bd) GET_UINT32(*(volatile uint32_t*)(bd)) + +#define BD_GET(id) &p_FmPort->im.p_BdRing[id] + +#define IM_ILEGAL_BD_ID 0xffff + +/* others */ +#define IM_PRAM_ALIGN 0x100 + +/* masks */ +#define IM_MODE_GBL 0x20000000 +#define IM_MODE_BO_MASK 0x18000000 +#define IM_MODE_BO_SHIFT 3 +#define IM_MODE_GRC_STP 0x00800000 + +#define IM_MODE_SET_BO(val) (uint32_t)((val << (31-IM_MODE_BO_SHIFT)) & IM_MODE_BO_MASK) + +#define IM_RXQD_BSYINTM 0x0008 +#define IM_RXQD_RXFINTM 0x0010 +#define IM_RXQD_FPMEVT_SEL_MASK 0x0003 + +#define IM_EV_BSY 0x40000000 +#define IM_EV_RX 0x80000000 + +typedef struct { + t_Handle h_FmMuram; + t_FmPortImPram *p_FmPortImPram; + uint8_t fwExtStructsMemId; + uint32_t fwExtStructsMemAttr; + uint16_t bdRingSize; + t_FmImBd *p_BdRing; + t_Handle *p_BdShadow; + uint16_t currBdId; + uint16_t firstBdOfFrameId; + + /* Rx port parameters */ + uint8_t dataMemId; /**< Memory partition ID for data buffers */ + uint32_t dataMemAttributes; /**< Memory attributes for data buffers */ + t_BufferPoolInfo rxPool; + uint16_t mrblr; + uint16_t rxFrameAccumLength; + t_FmPortImRxStoreCallback *f_RxStore; + + /* Tx port parameters */ + uint32_t txFirstBdStatus; + t_FmPortImTxConfCallback *f_TxConf; +} t_FmMacIm; + +/**************************************************************************//** + @Description structure for defining internal context copying +*//***************************************************************************/ +typedef struct +{ + uint16_t extBufOffset; /**< Offset in External buffer to which internal + context is copied to (Rx) or taken from (Tx, Op). */ + uint8_t intContextOffset; /**< Offset within internal context to copy from + (Rx) or to copy to (Tx, Op). */ + uint16_t size; /**< Internal offset size to be copied */ +} t_FmPortIntContextDataCopy; + +/**************************************************************************//** + @Description struct for defining external buffer margins +*//***************************************************************************/ +typedef struct { + uint16_t startMargins; /**< Number of bytes to be left at the beginning + of the external buffer (must be divisible by 16) */ + uint16_t endMargins; /**< number of bytes to be left at the end + of the external buffer(must be divisible by 16) */ +} t_FmPortBufMargins; + +typedef struct { + uint32_t dataOffset; + uint32_t prsResultOffset; + uint32_t timeStampOffset; + uint32_t hashResultOffset; + uint32_t pcdInfoOffset; + uint32_t manipOffset; +#ifdef DEBUG + uint32_t debugOffset; +#endif /* DEBUG */ +} t_FmPortBufferOffsets; + +typedef struct { + uint32_t dfltFqid; + uint32_t confFqid; + uint32_t errFqid; + uintptr_t baseAddr; + uint8_t deqSubPortal; + bool deqHighPriority; + e_FmPortDeqType deqType; +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT + e_FmPortDeqPrefetchOption deqPrefetchOption; +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ + uint16_t deqByteCnt; + uint8_t cheksumLastBytesIgnore; + uint8_t cutBytesFromEnd; + t_FmPortBufPoolDepletion bufPoolDepletion; + uint8_t pipelineDepth; + uint16_t fifoLowComfLevel; + bool frmDiscardOverride; + bool enRateLimit; + t_FmPortRateLimit rateLimit; + e_FmPortDualRateLimiterScaleDown rateLimitDivider; + bool enBufPoolDepletion; + uint16_t liodnOffset; + uint16_t liodnBase; + t_FmPortExtPools extBufPools; + e_FmPortDmaSwap dmaSwapData; + e_FmPortDmaCache dmaIntContextCacheAttr; + e_FmPortDmaCache dmaHeaderCacheAttr; + e_FmPortDmaCache dmaScatterGatherCacheAttr; + bool dmaReadOptimize; + bool dmaWriteOptimize; + uint32_t txFifoMinFillLevel; + uint32_t txFifoLowComfLevel; + uint32_t rxFifoPriElevationLevel; + uint32_t rxFifoThreshold; + t_FmPortBufMargins bufMargins; + t_FmPortIntContextDataCopy intContext; + bool syncReq; + e_FmPortColor color; + fmPortFrameErrSelect_t errorsToDiscard; + fmPortFrameErrSelect_t errorsToEnq; + uint64_t fmMuramPhysBaseAddr; + bool forwardReuseIntContext; + t_FmPortBufferPrefixContent bufferPrefixContent; + uint8_t internalBufferOffset; + t_FmPortBackupBmPools *p_BackupBmPools; + bool dontReleaseBuf; +} t_FmPortDriverParam; + +typedef struct { + t_Handle h_Fm; + t_Handle h_FmPcd; + uint8_t portId; + e_FmPortType portType; + int enabled; + char name[MODULE_NAME_SIZE]; + uint8_t hardwarePortId; + uint16_t fmClkFreq; + t_FmPortQmiRegs *p_FmPortQmiRegs; + u_FmPortBmiRegs *p_FmPortBmiRegs; + t_FmPortPrsRegs *p_FmPortPrsRegs; + fmPcdEngines_t pcdEngines; + uint32_t savedBmiNia; + uint8_t netEnvId; + uint32_t optArray[FM_PCD_MAX_NUM_OF_OPTIONS(FM_PCD_MAX_NUM_OF_CLS_PLANS)]; + uint32_t lcvs[FM_PCD_PRS_NUM_OF_HDRS]; + uint8_t privateInfo; + uint32_t schemesPerPortVector; + bool useClsPlan; + uint8_t clsPlanGrpId; + t_Handle ccTreeId; + t_Handle completeArg; + void (*f_Complete)(t_Handle arg); + t_FmPortBufferOffsets bufferOffsets; + /* Independent-Mode parameters support */ + bool imEn; + t_FmMacIm im; + uint8_t txFifoDeqPipelineDepth; + volatile bool lock; + t_Handle h_Spinlock; + t_FmPortExceptionCallback *f_Exception; + t_Handle h_App; + uint8_t internalBufferOffset; + uint8_t fmanCtrlEventId; + uint32_t exceptions; + bool polling; + uint8_t numOfTasks; + t_FmPortExtPools extBufPools; + uint32_t requiredAction; + uint32_t savedQmiPnen; + uint32_t savedNonRxQmiRegsPndn; + int savedPrsStartOffset; + t_FmPortRsrc openDmas; + t_FmPortRsrc tasks; + t_FmPortRsrc fifoBufs; + t_FmInterModulePortRxPoolsParams rxPoolsParams; + t_FmPortDriverParam *p_FmPortDriverParam; +} t_FmPort; + +#define CHECK_FM_CTL_AC_POST_FETCH_PCD(savedBmiNia) \ + ((((savedBmiNia) & NIA_ENG_MASK) == NIA_ENG_FM_CTL) && \ + ((((savedBmiNia) & NIA_FM_CTL_AC_MASK) == NIA_FM_CTL_AC_POST_FETCH_PCD) || \ + (((savedBmiNia) & NIA_FM_CTL_AC_MASK) == NIA_FM_CTL_AC_POST_FETCH_PCD_UDP_LEN))) + +void FmPortConfigIM (t_FmPort *p_FmPort, t_FmPortParams *p_FmPortParams); +t_Error FmPortImCheckInitParameters(t_FmPort *p_FmPort); + +t_Error FmPortImInit(t_FmPort *p_FmPort); +void FmPortImFree(t_FmPort *p_FmPort); + +t_Error FmPortImEnable (t_FmPort *p_FmPort); +t_Error FmPortImDisable (t_FmPort *p_FmPort); +t_Error FmPortImRx (t_FmPort *p_FmPort); + +void FmPortSetMacsecLcv(t_Handle h_FmPort); +void FmPortSetMacsecCmd(t_Handle h_FmPort, uint8_t dfltSci); + + +static __inline__ uint8_t * BdBufferGet (t_PhysToVirt *f_PhysToVirt, t_FmImBd *p_Bd) +{ + uint64_t physAddr = (uint64_t)((uint64_t)GET_UINT8(p_Bd->buff.high) << 32); + physAddr |= GET_UINT32(p_Bd->buff.low); + + return (uint8_t *)f_PhysToVirt((physAddress_t)(physAddr)); +} + +static __inline__ void SET_ADDR(volatile t_FmPhysAddr *fmPhysAddr, uint64_t value) +{ + WRITE_UINT8(fmPhysAddr->high,(uint8_t)((value & 0x000000ff00000000LL) >> 32)); + WRITE_UINT32(fmPhysAddr->low,(uint32_t)value); +} + +static __inline__ void BdBufferSet(t_VirtToPhys *f_VirtToPhys, t_FmImBd *p_Bd, uint8_t *p_Buffer) +{ + uint64_t physAddr = (uint64_t)(f_VirtToPhys(p_Buffer)); + SET_ADDR(&p_Bd->buff, physAddr); +} + +static __inline__ uint16_t GetNextBdId(t_FmPort *p_FmPort, uint16_t id) +{ + if (id < p_FmPort->im.bdRingSize-1) + return (uint16_t)(id+1); + else + return 0; +} + + +#endif /* __FM_PORT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Port/fm_port_im.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Port/fm_port_im.c @@ -0,0 +1,789 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm_port_im.c + + @Description FM Port Independent-Mode ... +*//***************************************************************************/ +#include "std_ext.h" +#include "string_ext.h" +#include "error_ext.h" +#include "fm_muram_ext.h" + +#include "fm_port.h" + + +#define TX_CONF_STATUS_UNSENT 0x1 + +#ifdef CORE_8BIT_ACCESS_ERRATA +#undef WRITE_UINT16 +#undef GET_UINT16 + +#define WRITE_UINT16(addr, val) \ + do{ \ + if((int)&(addr) % 4) \ + WRITE_UINT32(*(uint32_t*)(uint32_t)((uint32_t)&addr & ~0x3L), \ + ((GET_UINT32(*(uint32_t*)(uint32_t)((uint32_t)&addr & ~0x3L)) & 0xffff0000) | (uint32_t)val)); \ + else \ + WRITE_UINT32(*(uint32_t*)&addr, \ + ((GET_UINT32(*(uint32_t*)&addr) & 0x0000ffff) | (uint32_t)val<<16)); \ + }while(0); + +#define GET_UINT16(addr) (((uint32_t)&addr%4) ? \ + ((uint16_t)GET_UINT32(*(uint32_t*)(uint32_t)((uint32_t)&addr & ~0x3L))): \ + ((uint16_t)(GET_UINT32(*(uint32_t*)(uint32_t)&addr) >> 16))) +#endif /* CORE_8BIT_ACCESS_ERRATA */ + + +typedef enum e_TxConfType +{ + e_TX_CONF_TYPE_CHECK = 0 /**< check if all the buffers were touched by the muxator, no confirmation callback */ + ,e_TX_CONF_TYPE_CALLBACK = 1 /**< confirm to user all the available sent buffers */ + ,e_TX_CONF_TYPE_FLUSH = 3 /**< confirm all buffers plus the unsent one with an appropriate status */ +} e_TxConfType; + + +static void ImException(t_Handle h_FmPort, uint32_t event) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + ASSERT_COND(((event & IM_EV_RX) && FmIsMaster(p_FmPort->h_Fm)) || + !FmIsMaster(p_FmPort->h_Fm)); + + if (event & IM_EV_RX) + FmPortImRx(p_FmPort); + if ((event & IM_EV_BSY) && p_FmPort->f_Exception) + p_FmPort->f_Exception(p_FmPort->h_App, e_FM_PORT_EXCEPTION_IM_BUSY); +} + + +static t_Error TxConf(t_FmPort *p_FmPort, e_TxConfType confType) +{ + t_Error retVal = E_BUSY; + uint32_t bdStatus; + uint16_t savedStartBdId, confBdId; + + ASSERT_COND(p_FmPort); + + /* + if (confType==e_TX_CONF_TYPE_CHECK) + return (WfqEntryIsQueueEmpty(p_FmPort->im.h_WfqEntry) ? E_OK : E_BUSY); + */ + + confBdId = savedStartBdId = p_FmPort->im.currBdId; + bdStatus = BD_STATUS_AND_LENGTH(BD_GET(confBdId)); + + /* If R bit is set, we don't enter, or we break. + we run till we get to R, or complete the loop */ + while ((!(bdStatus & BD_R_E) || (confType == e_TX_CONF_TYPE_FLUSH)) && (retVal != E_OK)) + { + if (confType & e_TX_CONF_TYPE_CALLBACK) /* if it is confirmation with user callbacks */ + BD_STATUS_AND_LENGTH_SET(BD_GET(confBdId), 0); + + /* case 1: R bit is 0 and Length is set -> confirm! */ + if ((confType & e_TX_CONF_TYPE_CALLBACK) && (bdStatus & BD_LENGTH_MASK)) + { + if (p_FmPort->im.f_TxConf) + { + if ((confType == e_TX_CONF_TYPE_FLUSH) && (bdStatus & BD_R_E)) + p_FmPort->im.f_TxConf(p_FmPort->h_App, + BdBufferGet(XX_PhysToVirt, BD_GET(confBdId)), + TX_CONF_STATUS_UNSENT, + p_FmPort->im.p_BdShadow[confBdId]); + else + p_FmPort->im.f_TxConf(p_FmPort->h_App, + BdBufferGet(XX_PhysToVirt, BD_GET(confBdId)), + 0, + p_FmPort->im.p_BdShadow[confBdId]); + } + } + /* case 2: R bit is 0 and Length is 0 -> not used yet, nop! */ + + confBdId = GetNextBdId(p_FmPort, confBdId); + if (confBdId == savedStartBdId) + retVal = E_OK; + bdStatus = BD_STATUS_AND_LENGTH(BD_GET(confBdId)); + } + + return retVal; +} + +t_Error FmPortImEnable(t_FmPort *p_FmPort) +{ + uint32_t tmpReg = GET_UINT32(p_FmPort->im.p_FmPortImPram->mode); + WRITE_UINT32(p_FmPort->im.p_FmPortImPram->mode, (uint32_t)(tmpReg & ~IM_MODE_GRC_STP)); + return E_OK; +} + +t_Error FmPortImDisable(t_FmPort *p_FmPort) +{ + uint32_t tmpReg = GET_UINT32(p_FmPort->im.p_FmPortImPram->mode); + WRITE_UINT32(p_FmPort->im.p_FmPortImPram->mode, (uint32_t)(tmpReg | IM_MODE_GRC_STP)); + return E_OK; +} + +t_Error FmPortImRx(t_FmPort *p_FmPort) +{ + t_Handle h_CurrUserPriv, h_NewUserPriv; + uint32_t bdStatus; + volatile uint8_t buffPos; + uint16_t length; + uint16_t errors/*, reportErrors*/; + uint8_t *p_CurData, *p_Data; + uint32_t flags; + + ASSERT_COND(p_FmPort); + + flags = XX_LockIntrSpinlock(p_FmPort->h_Spinlock); + if (p_FmPort->lock) + { + XX_UnlockIntrSpinlock(p_FmPort->h_Spinlock, flags); + return E_OK; + } + p_FmPort->lock = TRUE; + XX_UnlockIntrSpinlock(p_FmPort->h_Spinlock, flags); + + bdStatus = BD_STATUS_AND_LENGTH(BD_GET(p_FmPort->im.currBdId)); + + while (!(bdStatus & BD_R_E)) /* while there is data in the Rx BD */ + { + if ((p_Data = p_FmPort->im.rxPool.f_GetBuf(p_FmPort->im.rxPool.h_BufferPool, &h_NewUserPriv)) == NULL) + { + p_FmPort->lock = FALSE; + RETURN_ERROR(MAJOR, E_NOT_AVAILABLE, ("Data buffer")); + } + + if (p_FmPort->im.firstBdOfFrameId == IM_ILEGAL_BD_ID) + p_FmPort->im.firstBdOfFrameId = p_FmPort->im.currBdId; + + errors = 0; + p_CurData = BdBufferGet(p_FmPort->im.rxPool.f_PhysToVirt, BD_GET(p_FmPort->im.currBdId)); + h_CurrUserPriv = p_FmPort->im.p_BdShadow[p_FmPort->im.currBdId]; + length = (uint16_t)((bdStatus & BD_L) ? + ((bdStatus & BD_LENGTH_MASK) - p_FmPort->im.rxFrameAccumLength): + (bdStatus & BD_LENGTH_MASK)); + p_FmPort->im.rxFrameAccumLength += length; + + /* determine whether buffer is first, last, first and last (single */ + /* buffer frame) or middle (not first and not last) */ + buffPos = (uint8_t)((p_FmPort->im.currBdId == p_FmPort->im.firstBdOfFrameId) ? + ((bdStatus & BD_L) ? SINGLE_BUF : FIRST_BUF) : + ((bdStatus & BD_L) ? LAST_BUF : MIDDLE_BUF)); + + if (bdStatus & BD_L) + { + p_FmPort->im.rxFrameAccumLength = 0; + p_FmPort->im.firstBdOfFrameId = IM_ILEGAL_BD_ID; + } + + BdBufferSet(p_FmPort->im.rxPool.f_VirtToPhys, BD_GET(p_FmPort->im.currBdId), p_Data); + + BD_STATUS_AND_LENGTH_SET(BD_GET(p_FmPort->im.currBdId), BD_R_E); + + errors = (uint16_t)((bdStatus & BD_RX_ERRORS) >> 16); + p_FmPort->im.p_BdShadow[p_FmPort->im.currBdId] = h_NewUserPriv; + + p_FmPort->im.currBdId = GetNextBdId(p_FmPort, p_FmPort->im.currBdId); + WRITE_UINT16(p_FmPort->im.p_FmPortImPram->rxQd.offsetOut, (uint16_t)(p_FmPort->im.currBdId<<4)); + /* Pass the buffer if one of the conditions is true: + - There are no errors + - This is a part of a larger frame ( the application has already received some buffers ) + - There is an error, but it was defined to be passed anyway. */ + if ((buffPos != SINGLE_BUF) || !errors || (errors & (uint16_t)(BD_ERROR_PASS_FRAME>>16))) + { + if (p_FmPort->im.f_RxStore(p_FmPort->h_App, + p_CurData, + length, + errors, + buffPos, + h_CurrUserPriv) == e_RX_STORE_RESPONSE_PAUSE) + break; + } + else if (p_FmPort->im.rxPool.f_PutBuf(p_FmPort->im.rxPool.h_BufferPool, + p_CurData, + h_CurrUserPriv)) + { + p_FmPort->lock = FALSE; + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Failed freeing data buffer")); + } + + bdStatus = BD_STATUS_AND_LENGTH(BD_GET(p_FmPort->im.currBdId)); + } + p_FmPort->lock = FALSE; + return E_OK; +} + +void FmPortConfigIM (t_FmPort *p_FmPort, t_FmPortParams *p_FmPortParams) +{ + ASSERT_COND(p_FmPort); + + SANITY_CHECK_RETURN(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + p_FmPort->im.h_FmMuram = p_FmPortParams->specificParams.imRxTxParams.h_FmMuram; + p_FmPort->p_FmPortDriverParam->liodnOffset = p_FmPortParams->specificParams.imRxTxParams.liodnOffset; + p_FmPort->im.dataMemId = p_FmPortParams->specificParams.imRxTxParams.dataMemId; + p_FmPort->im.dataMemAttributes = p_FmPortParams->specificParams.imRxTxParams.dataMemAttributes; + + p_FmPort->im.fwExtStructsMemId = DEFAULT_PORT_ImfwExtStructsMemId; + p_FmPort->im.fwExtStructsMemAttr = DEFAULT_PORT_ImfwExtStructsMemAttr; + + if ((p_FmPort->portType == e_FM_PORT_TYPE_RX) || + (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G)) + { + p_FmPort->im.rxPool.h_BufferPool = p_FmPortParams->specificParams.imRxTxParams.rxPoolParams.h_BufferPool; + p_FmPort->im.rxPool.f_GetBuf = p_FmPortParams->specificParams.imRxTxParams.rxPoolParams.f_GetBuf; + p_FmPort->im.rxPool.f_PutBuf = p_FmPortParams->specificParams.imRxTxParams.rxPoolParams.f_PutBuf; + p_FmPort->im.rxPool.bufferSize = p_FmPortParams->specificParams.imRxTxParams.rxPoolParams.bufferSize; + p_FmPort->im.rxPool.f_PhysToVirt = p_FmPortParams->specificParams.imRxTxParams.rxPoolParams.f_PhysToVirt; + if (!p_FmPort->im.rxPool.f_PhysToVirt) + p_FmPort->im.rxPool.f_PhysToVirt = XX_PhysToVirt; + p_FmPort->im.rxPool.f_VirtToPhys = p_FmPortParams->specificParams.imRxTxParams.rxPoolParams.f_VirtToPhys; + if (!p_FmPort->im.rxPool.f_VirtToPhys) + p_FmPort->im.rxPool.f_VirtToPhys = XX_VirtToPhys; + p_FmPort->im.f_RxStore = p_FmPortParams->specificParams.imRxTxParams.f_RxStore; + + p_FmPort->im.mrblr = 0x8000; + while (p_FmPort->im.mrblr) + { + if (p_FmPort->im.rxPool.bufferSize & p_FmPort->im.mrblr) + break; + p_FmPort->im.mrblr >>= 1; + } + if (p_FmPort->im.mrblr != p_FmPort->im.rxPool.bufferSize) + DBG(WARNING, ("Max-Rx-Buffer-Length set to %d", p_FmPort->im.mrblr)); + p_FmPort->im.bdRingSize = DEFAULT_PORT_rxBdRingLength; + p_FmPort->exceptions = DEFAULT_exception; + if (FmIsMaster(p_FmPort->h_Fm)) + p_FmPort->polling = FALSE; + else + p_FmPort->polling = TRUE; + p_FmPort->fmanCtrlEventId = (uint8_t)NO_IRQ; + } + else + { + p_FmPort->im.f_TxConf = p_FmPortParams->specificParams.imRxTxParams.f_TxConf; + + p_FmPort->im.bdRingSize = DEFAULT_PORT_txBdRingLength; + } +} + +t_Error FmPortImCheckInitParameters(t_FmPort *p_FmPort) +{ + if ((p_FmPort->portType != e_FM_PORT_TYPE_RX) && + (p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && + (p_FmPort->portType != e_FM_PORT_TYPE_TX) && + (p_FmPort->portType != e_FM_PORT_TYPE_TX_10G)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, NO_MSG); + + if ((p_FmPort->portType == e_FM_PORT_TYPE_RX) || + (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G)) + { + if (!POWER_OF_2(p_FmPort->im.mrblr)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("max Rx buffer length must be power of 2!!!")); + if (p_FmPort->im.mrblr < 256) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("max Rx buffer length must at least 256!!!")); + if(p_FmPort->p_FmPortDriverParam->liodnOffset & ~FM_LIODN_OFFSET_MASK) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("liodnOffset is larger than %d", FM_LIODN_OFFSET_MASK+1)); +#ifdef FM_PARTITION_ARRAY + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_FmPort->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + { + if(p_FmPort->p_FmPortDriverParam->liodnOffset >= MAX_LIODN_OFFSET) + { + p_FmPort->p_FmPortDriverParam->liodnOffset = + (uint16_t)(p_FmPort->p_FmPortDriverParam->liodnOffset & (MAX_LIODN_OFFSET-1)); + DBG(WARNING, ("liodnOffset number is out of rev1 range - MSB bits cleard.")); + } + } + } +#endif /* FM_PARTITION_ARRAY */ +/* TODO - add checks */ + } + else + { +/* TODO - add checks */ + } + + return E_OK; +} + +t_Error FmPortImInit(t_FmPort *p_FmPort) +{ + t_FmImBd *p_Bd=NULL; + t_Handle h_BufContext; + uint64_t tmpPhysBase; + uint16_t log2Num; + uint8_t *p_Data/*, *p_Tmp*/; + int i; + t_Error err; + uint16_t tmpReg16; + uint32_t tmpReg32; + + ASSERT_COND(p_FmPort); + + p_FmPort->im.p_FmPortImPram = + (t_FmPortImPram *)FM_MURAM_AllocMem(p_FmPort->im.h_FmMuram, sizeof(t_FmPortImPram), IM_PRAM_ALIGN); + if (!p_FmPort->im.p_FmPortImPram) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("Independent-Mode Parameter-RAM!!!")); + WRITE_BLOCK(p_FmPort->im.p_FmPortImPram, 0, sizeof(t_FmPortImPram)); + + if ((p_FmPort->portType == e_FM_PORT_TYPE_RX) || + (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G)) + { + p_FmPort->im.p_BdRing = (t_FmImBd *)XX_MallocSmart((uint32_t)(sizeof(t_FmImBd)*p_FmPort->im.bdRingSize), p_FmPort->im.fwExtStructsMemId, 4); + if (!p_FmPort->im.p_BdRing) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("Independent-Mode Rx BD ring!!!")); + IOMemSet32(p_FmPort->im.p_BdRing, 0, (uint32_t)(sizeof(t_FmImBd)*p_FmPort->im.bdRingSize)); + + p_FmPort->im.p_BdShadow = (t_Handle *)XX_Malloc((uint32_t)(sizeof(t_Handle)*p_FmPort->im.bdRingSize)); + if (!p_FmPort->im.p_BdShadow) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("Independent-Mode Rx BD shadow!!!")); + memset(p_FmPort->im.p_BdShadow, 0, (uint32_t)(sizeof(t_Handle)*p_FmPort->im.bdRingSize)); + + /* Initialize the Rx-BD ring */ + for (i=0; iim.bdRingSize; i++) + { + p_Bd = BD_GET(i); + BD_STATUS_AND_LENGTH_SET (p_Bd, BD_R_E); + + if ((p_Data = p_FmPort->im.rxPool.f_GetBuf(p_FmPort->im.rxPool.h_BufferPool, &h_BufContext)) == NULL) + RETURN_ERROR(MAJOR, E_NOT_AVAILABLE, ("Data buffer")); + BdBufferSet(p_FmPort->im.rxPool.f_VirtToPhys, p_Bd, p_Data); + p_FmPort->im.p_BdShadow[i] = h_BufContext; + } + + if ((p_FmPort->im.dataMemAttributes & MEMORY_ATTR_CACHEABLE) || + (p_FmPort->im.fwExtStructsMemAttr & MEMORY_ATTR_CACHEABLE)) + WRITE_UINT32(p_FmPort->im.p_FmPortImPram->mode, IM_MODE_GBL | IM_MODE_SET_BO(2)); + else + WRITE_UINT32(p_FmPort->im.p_FmPortImPram->mode, IM_MODE_SET_BO(2)); + + WRITE_UINT32(p_FmPort->im.p_FmPortImPram->rxQdPtr, + (uint32_t)((uint64_t)(XX_VirtToPhys(p_FmPort->im.p_FmPortImPram)) - + p_FmPort->p_FmPortDriverParam->fmMuramPhysBaseAddr + 0x20)); + + LOG2((uint64_t)p_FmPort->im.mrblr, log2Num); + WRITE_UINT16(p_FmPort->im.p_FmPortImPram->mrblr, log2Num); + + /* Initialize Rx QD */ + tmpPhysBase = (uint64_t)(XX_VirtToPhys(p_FmPort->im.p_BdRing)); + SET_ADDR(&p_FmPort->im.p_FmPortImPram->rxQd.bdRingBase, tmpPhysBase); + WRITE_UINT16(p_FmPort->im.p_FmPortImPram->rxQd.bdRingSize, (uint16_t)(sizeof(t_FmImBd)*p_FmPort->im.bdRingSize)); + + /* Update the IM PRAM address in the BMI */ + WRITE_UINT32(p_FmPort->p_FmPortBmiRegs->rxPortBmiRegs.fmbm_rfqid, + (uint32_t)((uint64_t)(XX_VirtToPhys(p_FmPort->im.p_FmPortImPram)) - + p_FmPort->p_FmPortDriverParam->fmMuramPhysBaseAddr)); + if (!p_FmPort->polling || p_FmPort->exceptions) + { + /* Allocate, configure and register interrupts */ + err = FmAllocFmanCtrlEventReg(p_FmPort->h_Fm, &p_FmPort->fmanCtrlEventId); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + + ASSERT_COND(!(p_FmPort->fmanCtrlEventId & ~IM_RXQD_FPMEVT_SEL_MASK)); + tmpReg16 = (uint16_t)(p_FmPort->fmanCtrlEventId & IM_RXQD_FPMEVT_SEL_MASK); + tmpReg32 = 0; + + if(p_FmPort->exceptions & IM_EV_BSY) + { + tmpReg16 |= IM_RXQD_BSYINTM; + tmpReg32 |= IM_EV_BSY; + } + if(!p_FmPort->polling) + { + tmpReg16 |= IM_RXQD_RXFINTM; + tmpReg32 |= IM_EV_RX; + } + WRITE_UINT16(p_FmPort->im.p_FmPortImPram->rxQd.gen, tmpReg16); + + FmRegisterFmanCtrlIntr(p_FmPort->h_Fm, p_FmPort->fmanCtrlEventId, ImException , (t_Handle)p_FmPort); + + FmSetFmanCtrlIntr(p_FmPort->h_Fm, p_FmPort->fmanCtrlEventId, tmpReg32); + } + else + p_FmPort->fmanCtrlEventId = (uint8_t)NO_IRQ; + } + else + { + p_FmPort->im.p_BdRing = (t_FmImBd *)XX_MallocSmart((uint32_t)(sizeof(t_FmImBd)*p_FmPort->im.bdRingSize), p_FmPort->im.fwExtStructsMemId, 4); + if (!p_FmPort->im.p_BdRing) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("Independent-Mode Tx BD ring!!!")); + IOMemSet32(p_FmPort->im.p_BdRing, 0, (uint32_t)(sizeof(t_FmImBd)*p_FmPort->im.bdRingSize)); + + p_FmPort->im.p_BdShadow = (t_Handle *)XX_Malloc((uint32_t)(sizeof(t_Handle)*p_FmPort->im.bdRingSize)); + if (!p_FmPort->im.p_BdShadow) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("Independent-Mode Rx BD shadow!!!")); + memset(p_FmPort->im.p_BdShadow, 0, (uint32_t)(sizeof(t_Handle)*p_FmPort->im.bdRingSize)); + p_FmPort->im.firstBdOfFrameId = IM_ILEGAL_BD_ID; + + if ((p_FmPort->im.dataMemAttributes & MEMORY_ATTR_CACHEABLE) || + (p_FmPort->im.fwExtStructsMemAttr & MEMORY_ATTR_CACHEABLE)) + WRITE_UINT32(p_FmPort->im.p_FmPortImPram->mode, IM_MODE_GBL | IM_MODE_SET_BO(2)); + else + WRITE_UINT32(p_FmPort->im.p_FmPortImPram->mode, IM_MODE_SET_BO(2)); + + WRITE_UINT32(p_FmPort->im.p_FmPortImPram->txQdPtr, + (uint32_t)((uint64_t)(XX_VirtToPhys(p_FmPort->im.p_FmPortImPram)) - + p_FmPort->p_FmPortDriverParam->fmMuramPhysBaseAddr + 0x40)); + + /* Initialize Tx QD */ + tmpPhysBase = (uint64_t)(XX_VirtToPhys(p_FmPort->im.p_BdRing)); + SET_ADDR(&p_FmPort->im.p_FmPortImPram->txQd.bdRingBase, tmpPhysBase); + WRITE_UINT16(p_FmPort->im.p_FmPortImPram->txQd.bdRingSize, (uint16_t)(sizeof(t_FmImBd)*p_FmPort->im.bdRingSize)); + + /* Update the IM PRAM address in the BMI */ + WRITE_UINT32(p_FmPort->p_FmPortBmiRegs->txPortBmiRegs.fmbm_tcfqid, + (uint32_t)((uint64_t)(XX_VirtToPhys(p_FmPort->im.p_FmPortImPram)) - + p_FmPort->p_FmPortDriverParam->fmMuramPhysBaseAddr)); + } + + + return E_OK; +} + +void FmPortImFree(t_FmPort *p_FmPort) +{ + uint32_t bdStatus; + uint8_t *p_CurData; + + ASSERT_COND(p_FmPort); + ASSERT_COND(p_FmPort->im.p_FmPortImPram); + + if ((p_FmPort->portType == e_FM_PORT_TYPE_RX) || + (p_FmPort->portType == e_FM_PORT_TYPE_RX_10G)) + { + if (!p_FmPort->polling || p_FmPort->exceptions) + { + /* Deallocate and unregister interrupts */ + FmSetFmanCtrlIntr(p_FmPort->h_Fm, p_FmPort->fmanCtrlEventId, 0); + + FmFreeFmanCtrlEventReg(p_FmPort->h_Fm, p_FmPort->fmanCtrlEventId); + + WRITE_UINT16(p_FmPort->im.p_FmPortImPram->rxQd.gen, 0); + + FmUnregisterFmanCtrlIntr(p_FmPort->h_Fm, p_FmPort->fmanCtrlEventId); + } + /* Try first clean what has received */ + FmPortImRx(p_FmPort); + + /* Now, get rid of the the empty buffer! */ + bdStatus = BD_STATUS_AND_LENGTH(BD_GET(p_FmPort->im.currBdId)); + + while (bdStatus & BD_R_E) /* while there is data in the Rx BD */ + { + p_CurData = BdBufferGet(p_FmPort->im.rxPool.f_PhysToVirt, BD_GET(p_FmPort->im.currBdId)); + + BdBufferSet(p_FmPort->im.rxPool.f_VirtToPhys, BD_GET(p_FmPort->im.currBdId), NULL); + BD_STATUS_AND_LENGTH_SET(BD_GET(p_FmPort->im.currBdId), 0); + + p_FmPort->im.rxPool.f_PutBuf(p_FmPort->im.rxPool.h_BufferPool, + p_CurData, + p_FmPort->im.p_BdShadow[p_FmPort->im.currBdId]); + + p_FmPort->im.currBdId = GetNextBdId(p_FmPort, p_FmPort->im.currBdId); + bdStatus = BD_STATUS_AND_LENGTH(BD_GET(p_FmPort->im.currBdId)); + } + } + else + TxConf(p_FmPort, e_TX_CONF_TYPE_FLUSH); + + FM_MURAM_FreeMem(p_FmPort->im.h_FmMuram, p_FmPort->im.p_FmPortImPram); + + if (p_FmPort->im.p_BdShadow) + XX_Free(p_FmPort->im.p_BdShadow); + + if (p_FmPort->im.p_BdRing) + XX_FreeSmart(p_FmPort->im.p_BdRing); +} + + +t_Error FM_PORT_ConfigIMMaxRxBufLength(t_Handle h_FmPort, uint16_t newVal) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->imEn, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + p_FmPort->im.mrblr = newVal; + + return E_OK; +} + +t_Error FM_PORT_ConfigIMRxBdRingLength(t_Handle h_FmPort, uint16_t newVal) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->imEn, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + p_FmPort->im.bdRingSize = newVal; + + return E_OK; +} + +t_Error FM_PORT_ConfigIMTxBdRingLength(t_Handle h_FmPort, uint16_t newVal) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->imEn, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + p_FmPort->im.bdRingSize = newVal; + + return E_OK; +} + +t_Error FM_PORT_ConfigIMFmanCtrlExternalStructsMemory(t_Handle h_FmPort, + uint8_t memId, + uint32_t memAttributes) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->imEn, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + p_FmPort->im.fwExtStructsMemId = memId; + p_FmPort->im.fwExtStructsMemAttr = memAttributes; + + return E_OK; +} + +t_Error FM_PORT_ConfigIMPolling(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->imEn, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + if((p_FmPort->portType != e_FM_PORT_TYPE_RX_10G) && (p_FmPort->portType != e_FM_PORT_TYPE_RX)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("Available for Rx ports only")); + + if (!FmIsMaster(p_FmPort->h_Fm)) + RETURN_ERROR(MAJOR, E_INVALID_OPERATION, ("Available on master-partition only;" + "in guest-partitions, IM is always in polling!")); + + p_FmPort->polling = TRUE; + + return E_OK; +} + +t_Error FM_PORT_SetIMExceptions(t_Handle h_FmPort, e_FmPortExceptions exception, bool enable) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + t_Error err; + uint16_t tmpReg16; + uint32_t tmpReg32; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->imEn, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + if(exception == e_FM_PORT_EXCEPTION_IM_BUSY) + { + if(enable) + { + p_FmPort->exceptions |= IM_EV_BSY; + if(p_FmPort->fmanCtrlEventId == (uint8_t)NO_IRQ) + { + /* Allocate, configure and register interrupts */ + err = FmAllocFmanCtrlEventReg(p_FmPort->h_Fm, &p_FmPort->fmanCtrlEventId); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + ASSERT_COND(!(p_FmPort->fmanCtrlEventId & ~IM_RXQD_FPMEVT_SEL_MASK)); + + FmRegisterFmanCtrlIntr(p_FmPort->h_Fm, p_FmPort->fmanCtrlEventId, ImException, (t_Handle)p_FmPort); + tmpReg16 = (uint16_t)((p_FmPort->fmanCtrlEventId & IM_RXQD_FPMEVT_SEL_MASK) | IM_RXQD_BSYINTM); + tmpReg32 = IM_EV_BSY; + } + else + { + tmpReg16 = (uint16_t)(GET_UINT16(p_FmPort->im.p_FmPortImPram->rxQd.gen) | IM_RXQD_BSYINTM); + tmpReg32 = FmGetFmanCtrlIntr(p_FmPort->h_Fm, p_FmPort->fmanCtrlEventId) | IM_EV_BSY; + } + + WRITE_UINT16(p_FmPort->im.p_FmPortImPram->rxQd.gen, tmpReg16); + FmSetFmanCtrlIntr(p_FmPort->h_Fm, p_FmPort->fmanCtrlEventId, tmpReg32); + } + else + { + p_FmPort->exceptions &= ~IM_EV_BSY; + if (!p_FmPort->exceptions && p_FmPort->polling) + { + FmFreeFmanCtrlEventReg(p_FmPort->h_Fm, p_FmPort->fmanCtrlEventId); + FmUnregisterFmanCtrlIntr(p_FmPort->h_Fm, p_FmPort->fmanCtrlEventId); + FmSetFmanCtrlIntr(p_FmPort->h_Fm, p_FmPort->fmanCtrlEventId, 0); + WRITE_UINT16(p_FmPort->im.p_FmPortImPram->rxQd.gen, 0); + p_FmPort->fmanCtrlEventId = (uint8_t)NO_IRQ; + } + else + { + tmpReg16 = (uint16_t)(GET_UINT16(p_FmPort->im.p_FmPortImPram->rxQd.gen) & ~IM_RXQD_BSYINTM); + WRITE_UINT16(p_FmPort->im.p_FmPortImPram->rxQd.gen, tmpReg16); + tmpReg32 = FmGetFmanCtrlIntr(p_FmPort->h_Fm, p_FmPort->fmanCtrlEventId) & ~IM_EV_BSY; + FmSetFmanCtrlIntr(p_FmPort->h_Fm, p_FmPort->fmanCtrlEventId, tmpReg32); + } + } + } + else + RETURN_ERROR(MINOR, E_INVALID_SELECTION, ("Invalid exception.")); + + return E_OK; +} + +t_Error FM_PORT_ImTx( t_Handle h_FmPort, + uint8_t *p_Data, + uint16_t length, + bool lastBuffer, + t_Handle h_BufContext) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + uint16_t nextBdId; + uint32_t bdStatus, nextBdStatus; + bool firstBuffer; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->imEn, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + bdStatus = BD_STATUS_AND_LENGTH(BD_GET(p_FmPort->im.currBdId)); + nextBdId = GetNextBdId(p_FmPort, p_FmPort->im.currBdId); + nextBdStatus = BD_STATUS_AND_LENGTH(BD_GET(nextBdId)); + + if (!(bdStatus & BD_R_E) && !(nextBdStatus & BD_R_E)) + { + /* Confirm the current BD - BD is available */ + if ((bdStatus & BD_LENGTH_MASK) && (p_FmPort->im.f_TxConf)) + p_FmPort->im.f_TxConf (p_FmPort->h_App, + BdBufferGet(XX_PhysToVirt, BD_GET(p_FmPort->im.currBdId)), + 0, + p_FmPort->im.p_BdShadow[p_FmPort->im.currBdId]); + + bdStatus = length; + + /* if this is the first BD of a frame */ + if (p_FmPort->im.firstBdOfFrameId == IM_ILEGAL_BD_ID) + { + firstBuffer = TRUE; + p_FmPort->im.txFirstBdStatus = (bdStatus | BD_R_E); + + if (!lastBuffer) + p_FmPort->im.firstBdOfFrameId = p_FmPort->im.currBdId; + } + else + firstBuffer = FALSE; + + BdBufferSet(XX_VirtToPhys, BD_GET(p_FmPort->im.currBdId), p_Data); + p_FmPort->im.p_BdShadow[p_FmPort->im.currBdId] = h_BufContext; + + /* deal with last */ + if (lastBuffer) + { + /* if single buffer frame */ + if (firstBuffer) + BD_STATUS_AND_LENGTH_SET(BD_GET(p_FmPort->im.currBdId), p_FmPort->im.txFirstBdStatus | BD_L); + else + { + /* Set the last BD of the frame */ + BD_STATUS_AND_LENGTH_SET (BD_GET(p_FmPort->im.currBdId), (bdStatus | BD_R_E | BD_L)); + /* Set the first BD of the frame */ + BD_STATUS_AND_LENGTH_SET(BD_GET(p_FmPort->im.firstBdOfFrameId), p_FmPort->im.txFirstBdStatus); + p_FmPort->im.firstBdOfFrameId = IM_ILEGAL_BD_ID; + } + WRITE_UINT16(p_FmPort->im.p_FmPortImPram->txQd.offsetIn, (uint16_t)(GetNextBdId(p_FmPort, p_FmPort->im.currBdId)<<4)); + } + else if (!firstBuffer) /* mid frame buffer */ + BD_STATUS_AND_LENGTH_SET (BD_GET(p_FmPort->im.currBdId), bdStatus | BD_R_E); + + p_FmPort->im.currBdId = GetNextBdId(p_FmPort, p_FmPort->im.currBdId); + } + else + { + /* Discard current frame. Return error. */ + if (p_FmPort->im.firstBdOfFrameId != IM_ILEGAL_BD_ID) + { + /* Error: No free BD */ + /* Response: Discard current frame. Return error. */ + uint16_t cleanBdId = p_FmPort->im.firstBdOfFrameId; + + ASSERT_COND(p_FmPort->im.firstBdOfFrameId != p_FmPort->im.currBdId); + + /* Since firstInFrame is not NULL, one buffer at least has already been + inserted into the BD ring. Using do-while covers the situation of a + frame spanned throughout the whole Tx BD ring (p_CleanBd is incremented + prior to testing whether or not it's equal to TxBd). */ + do + { + BD_STATUS_AND_LENGTH_SET(BD_GET(cleanBdId), 0); + /* Advance BD pointer */ + cleanBdId = GetNextBdId(p_FmPort, cleanBdId); + } while (cleanBdId != p_FmPort->im.currBdId); + + p_FmPort->im.currBdId = cleanBdId; + p_FmPort->im.firstBdOfFrameId = IM_ILEGAL_BD_ID; + } + + return ERROR_CODE(E_FULL); + } + + return E_OK; +} + +void FM_PORT_ImTxConf(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN(p_FmPort->imEn, E_INVALID_STATE); + SANITY_CHECK_RETURN(!p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + TxConf(p_FmPort, e_TX_CONF_TYPE_CALLBACK); +} + +t_Error FM_PORT_ImRx(t_Handle h_FmPort) +{ + t_FmPort *p_FmPort = (t_FmPort*)h_FmPort; + + SANITY_CHECK_RETURN_ERROR(p_FmPort, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmPort->imEn, E_INVALID_STATE); + SANITY_CHECK_RETURN_ERROR(!p_FmPort->p_FmPortDriverParam, E_INVALID_HANDLE); + + return FmPortImRx(p_FmPort); +} --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Rtc/Makefile +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Rtc/Makefile @@ -0,0 +1,15 @@ +# +# Makefile for the Freescale Ethernet controllers +# +EXTRA_CFLAGS += -DVERSION=\"\" +# +#Include netcomm SW specific definitions +include $(srctree)/drivers/net/dpa/NetCommSw/ncsw_config.mk + +NCSW_FM_INC = $(srctree)/drivers/net/dpa/NetCommSw/Peripherals/FM/inc + +EXTRA_CFLAGS += -I$(NCSW_FM_INC) + +obj-y += fsl-ncsw-RTC.o + +fsl-ncsw-RTC-objs := fm_rtc.o --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Rtc/fm_rtc.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Rtc/fm_rtc.c @@ -0,0 +1,891 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm_rtc.c + + @Description FM RTC driver implementation. + + @Cautions None +*//***************************************************************************/ + +#include "error_ext.h" +#include "debug_ext.h" +#include "string_ext.h" +#include "part_ext.h" +#include "xx_ext.h" +#include "ncsw_ext.h" + +#include "fm_rtc.h" +#include "fm_common.h" + + +/*****************************************************************************/ +static void SetDefaultParam(t_FmRtc *p_Rtc) +{ + t_FmRtcDriverParam *p_RtcDriverParam = p_Rtc->p_RtcDriverParam; + int i; + + p_Rtc->outputClockDivisor = DEFAULT_outputClockDivisor; + p_Rtc->p_RtcDriverParam->bypass = DEFAULT_bypass; + p_RtcDriverParam->srcClk = DEFAULT_srcClock; + p_RtcDriverParam->invertInputClkPhase = DEFAULT_invertInputClkPhase; + p_RtcDriverParam->invertOutputClkPhase = DEFAULT_invertOutputClkPhase; + p_RtcDriverParam->pulseRealign = DEFAULT_pulseRealign; + for (i=0; i < FM_RTC_NUM_OF_ALARMS; i++) + { + p_RtcDriverParam->alarmPolarity[i] = DEFAULT_alarmPolarity; + } + for (i=0; i < FM_RTC_NUM_OF_EXT_TRIGGERS; i++) + { + p_RtcDriverParam->triggerPolarity[i] = DEFAULT_triggerPolarity; + } + p_Rtc->clockPeriodNanoSec = DEFAULT_clockPeriod; /* 1 usec */ +} + +/*****************************************************************************/ +static t_Error CheckInitParameters(t_FmRtc *p_Rtc) +{ + t_FmRtcDriverParam *p_RtcDriverParam = p_Rtc->p_RtcDriverParam; + int i; + + if ((p_RtcDriverParam->srcClk != e_FM_RTC_SOURCE_CLOCK_EXTERNAL) && + (p_RtcDriverParam->srcClk != e_FM_RTC_SOURCE_CLOCK_SYSTEM) && + (p_RtcDriverParam->srcClk != e_FM_RTC_SOURCE_CLOCK_OSCILATOR)) + RETURN_ERROR(MAJOR, E_INVALID_CLOCK, ("Source clock undefined")); + + if (p_Rtc->outputClockDivisor == 0) + { + RETURN_ERROR(MAJOR, E_INVALID_VALUE, + ("Divisor for output clock (should be positive)")); + } + + for (i=0; i < FM_RTC_NUM_OF_ALARMS; i++) + { + if ((p_RtcDriverParam->alarmPolarity[i] != e_FM_RTC_ALARM_POLARITY_ACTIVE_LOW) && + (p_RtcDriverParam->alarmPolarity[i] != e_FM_RTC_ALARM_POLARITY_ACTIVE_HIGH)) + { + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("Alarm %d signal polarity", i)); + } + } + for (i=0; i < FM_RTC_NUM_OF_EXT_TRIGGERS; i++) + { + if ((p_RtcDriverParam->triggerPolarity[i] != e_FM_RTC_TRIGGER_ON_FALLING_EDGE) && + (p_RtcDriverParam->triggerPolarity[i] != e_FM_RTC_TRIGGER_ON_RISING_EDGE)) + { + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("Trigger %d signal polarity", i)); + } + } + +#ifdef FM_1588_SRC_CLK_ERRATA_FMAN1 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_Rtc->h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)&& + ((p_RtcDriverParam->srcClk==e_FM_RTC_SOURCE_CLOCK_SYSTEM) && p_RtcDriverParam->invertInputClkPhase)) + RETURN_ERROR(MAJOR, E_NOT_SUPPORTED, ("Can not use invertInputClkPhase when source clock is e_FM_RTC_SOURCE_CLOCK_SYSTEM")); + } +#endif /* FM_1588_SRC_CLK_ERRATA_FMAN1 */ + + return E_OK; +} + +/*****************************************************************************/ +static void RtcExceptions(t_Handle h_FmRtc) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + t_FmRtcMemMap *p_MemMap; + register uint32_t events; + + ASSERT_COND(p_Rtc); + p_MemMap = p_Rtc->p_MemMap; + + /* Get valid events */ + events = GET_UINT32(p_MemMap->tmr_tevent); + events &= GET_UINT32(p_MemMap->tmr_temask); + + /* Clear event bits */ + WRITE_UINT32(p_MemMap->tmr_tevent, events); + + if (events & TMR_TEVENT_ALM1) + { + if(p_Rtc->alarmParams[0].clearOnExpiration) + { + WRITE_UINT32(p_MemMap->tmr_alarm[0].tmr_alarm_l, 0); + WRITE_UINT32(p_MemMap->tmr_temask, GET_UINT32(p_MemMap->tmr_temask) & ~TMR_TEVENT_ALM1); + } + ASSERT_COND(p_Rtc->alarmParams[0].f_AlarmCallback); + p_Rtc->alarmParams[0].f_AlarmCallback(p_Rtc->h_App, 0); + } + if (events & TMR_TEVENT_ALM2) + { + if(p_Rtc->alarmParams[1].clearOnExpiration) + { + WRITE_UINT32(p_MemMap->tmr_alarm[1].tmr_alarm_l, 0); + WRITE_UINT32(p_MemMap->tmr_temask, GET_UINT32(p_MemMap->tmr_temask) & ~TMR_TEVENT_ALM2); + } + ASSERT_COND(p_Rtc->alarmParams[1].f_AlarmCallback); + p_Rtc->alarmParams[1].f_AlarmCallback(p_Rtc->h_App, 1); + } + if (events & TMR_TEVENT_PP1) + { + ASSERT_COND(p_Rtc->periodicPulseParams[0].f_PeriodicPulseCallback); + p_Rtc->periodicPulseParams[0].f_PeriodicPulseCallback(p_Rtc->h_App, 0); + } + if (events & TMR_TEVENT_PP2) + { + ASSERT_COND(p_Rtc->periodicPulseParams[1].f_PeriodicPulseCallback); + p_Rtc->periodicPulseParams[1].f_PeriodicPulseCallback(p_Rtc->h_App, 1); + } + if (events & TMR_TEVENT_ETS1) + { + ASSERT_COND(p_Rtc->externalTriggerParams[0].f_ExternalTriggerCallback); + p_Rtc->externalTriggerParams[0].f_ExternalTriggerCallback(p_Rtc->h_App, 0); + } + if (events & TMR_TEVENT_ETS2) + { + ASSERT_COND(p_Rtc->externalTriggerParams[1].f_ExternalTriggerCallback); + p_Rtc->externalTriggerParams[1].f_ExternalTriggerCallback(p_Rtc->h_App, 1); + } +} + + +/*****************************************************************************/ +t_Handle FM_RTC_Config(t_FmRtcParams *p_FmRtcParam) +{ + t_FmRtc *p_Rtc; + + SANITY_CHECK_RETURN_VALUE(p_FmRtcParam, E_NULL_POINTER, NULL); + + /* Allocate memory for the FM RTC driver parameters */ + p_Rtc = (t_FmRtc *)XX_Malloc(sizeof(t_FmRtc)); + if (!p_Rtc) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM RTC driver structure")); + return NULL; + } + + memset(p_Rtc, 0, sizeof(t_FmRtc)); + + /* Allocate memory for the FM RTC driver parameters */ + p_Rtc->p_RtcDriverParam = (t_FmRtcDriverParam *)XX_Malloc(sizeof(t_FmRtcDriverParam)); + if (!p_Rtc->p_RtcDriverParam) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM RTC driver parameters")); + XX_Free(p_Rtc); + return NULL; + } + + memset(p_Rtc->p_RtcDriverParam, 0, sizeof(t_FmRtcDriverParam)); + + /* Store RTC configuration parameters */ + p_Rtc->h_Fm = p_FmRtcParam->h_Fm; + + /* Set default RTC configuration parameters */ + SetDefaultParam(p_Rtc); + + /* Store RTC parameters in the RTC control structure */ + p_Rtc->p_MemMap = (t_FmRtcMemMap *)UINT_TO_PTR(p_FmRtcParam->baseAddress); + p_Rtc->h_App = p_FmRtcParam->h_App; + + return p_Rtc; +} + +/*****************************************************************************/ +t_Error FM_RTC_Init(t_Handle h_FmRtc) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + t_FmRtcDriverParam *p_RtcDriverParam; + t_FmRtcMemMap *p_MemMap; + uint32_t freqCompensation; + uint32_t tmrCtrl; + int i; + uint64_t tmpDouble; + + p_RtcDriverParam = p_Rtc->p_RtcDriverParam; + p_MemMap = p_Rtc->p_MemMap; + + if(CheckInitParameters(p_Rtc)!=E_OK) + RETURN_ERROR(MAJOR, E_CONFLICT, + ("Init Parameters are not Valid")); + + /* TODO A check must be added here, that no timestamping MAC's + * are working in this stage. */ + WRITE_UINT32(p_MemMap->tmr_ctrl, TMR_CTRL_TMSR); + XX_UDelay(10); + WRITE_UINT32(p_MemMap->tmr_ctrl, 0); + + /* Set the source clock */ + switch (p_RtcDriverParam->srcClk) + { + case e_FM_RTC_SOURCE_CLOCK_SYSTEM: + tmrCtrl = TMR_CTRL_CKSEL_MAC_CLK; + break; + case e_FM_RTC_SOURCE_CLOCK_OSCILATOR: + tmrCtrl = TMR_CTRL_CKSEL_OSC_CLK; + break; + default: + /* Use a clock from the External TMR reference clock.*/ + tmrCtrl = TMR_CTRL_CKSEL_EXT_CLK; + break; + } + + /* whatever period the user picked, the timestamp will advance in '1' every time + * the period passed. */ + tmrCtrl |= ((1 << TMR_CTRL_TCLK_PERIOD_SHIFT) & TMR_CTRL_TCLK_PERIOD_MASK); + + if (p_RtcDriverParam->invertInputClkPhase) + tmrCtrl |= TMR_CTRL_CIPH; + if (p_RtcDriverParam->invertOutputClkPhase) + tmrCtrl |= TMR_CTRL_COPH; + + for (i=0; i < FM_RTC_NUM_OF_ALARMS; i++) + { + if (p_RtcDriverParam->alarmPolarity[i] == e_FM_RTC_ALARM_POLARITY_ACTIVE_LOW) + tmrCtrl |= (TMR_CTRL_ALMP1 >> i); + } + + for (i=0; i < FM_RTC_NUM_OF_EXT_TRIGGERS; i++) + if (p_RtcDriverParam->triggerPolarity[i] == e_FM_RTC_TRIGGER_ON_FALLING_EDGE) + tmrCtrl |= (TMR_CTRL_ETEP1 << i); + + if (!p_RtcDriverParam->timerSlaveMode && p_Rtc->p_RtcDriverParam->bypass) + tmrCtrl |= TMR_CTRL_BYP; + + WRITE_UINT32(p_MemMap->tmr_ctrl, tmrCtrl); + + for (i=0; i < FM_RTC_NUM_OF_ALARMS; i++) + { + /* Clear TMR_ALARM registers */ + WRITE_UINT32(p_MemMap->tmr_alarm[i].tmr_alarm_l, 0xFFFFFFFF); + WRITE_UINT32(p_MemMap->tmr_alarm[i].tmr_alarm_h, 0xFFFFFFFF); + } + + /* Clear TMR_TEVENT */ + WRITE_UINT32(p_MemMap->tmr_tevent, TMR_TEVENT_ALL); + + /* Initialize TMR_TEMASK */ + WRITE_UINT32(p_MemMap->tmr_temask, 0); + + + /* find source clock frequency in Mhz */ + if (p_Rtc->p_RtcDriverParam->srcClk != e_FM_RTC_SOURCE_CLOCK_SYSTEM) + p_Rtc->srcClkFreqMhz = p_Rtc->p_RtcDriverParam->extSrcClkFreq; + else + p_Rtc->srcClkFreqMhz = (uint32_t)(FmGetClockFreq(p_Rtc->h_Fm)/2); + + /* if timer in Master mode Initialize TMR_CTRL */ + /* We want the counter (TMR_CNT) to count in nano-seconds */ + if (!p_RtcDriverParam->timerSlaveMode && p_Rtc->p_RtcDriverParam->bypass) + { + p_Rtc->clockPeriodNanoSec = (1000 / p_Rtc->srcClkFreqMhz); + } + else + { + /* Initialize TMR_ADD with the initial frequency compensation value: + freqCompensation = (2^32 / frequency ratio) */ + /* frequency ratio = sorce clock/rtc clock = + * (p_Rtc->srcClkFreqMhz*1000000))/ 1/(p_Rtc->clockPeriodNanoSec * 1000000000) */ + freqCompensation = (uint32_t)DIV_CEIL(ACCUMULATOR_OVERFLOW * 1000, + p_Rtc->clockPeriodNanoSec * p_Rtc->srcClkFreqMhz); + WRITE_UINT32(p_MemMap->tmr_add, freqCompensation); + } + /* check the legality of the relation between source and destination clocks */ + /* should be larger than 1.0001 */ + tmpDouble = 10000 * (uint64_t)p_Rtc->clockPeriodNanoSec * (uint64_t)p_Rtc->srcClkFreqMhz; + if((tmpDouble) <= 10001) + RETURN_ERROR(MAJOR, E_CONFLICT, + ("Invalid relation between source and destination clocks. Should be larger than 1.0001")); + + + for (i=0; i < 2; i++) + /* Clear TMR_FIPER registers */ + WRITE_UINT32(p_MemMap->tmr_fiper[i], 0xFFFFFFFF); + + /* Initialize TMR_PRSC */ + WRITE_UINT32(p_MemMap->tmr_prsc, p_Rtc->outputClockDivisor); + + /* Clear TMR_OFF */ + WRITE_UINT32(p_MemMap->tmr_off_l, 0); + WRITE_UINT32(p_MemMap->tmr_off_h, 0); + + /* Register the FM RTC interrupt */ + FmRegisterIntr(p_Rtc->h_Fm, e_FM_MOD_TMR, 0, e_FM_INTR_TYPE_NORMAL, RtcExceptions , p_Rtc); + + /* Free parameters structures */ + XX_Free(p_Rtc->p_RtcDriverParam); + p_Rtc->p_RtcDriverParam = NULL; + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_Free(t_Handle h_FmRtc) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + + if (p_Rtc->p_RtcDriverParam) + { + XX_Free(p_Rtc->p_RtcDriverParam); + } + else + { + FM_RTC_Disable(h_FmRtc); + } + + /* Unregister FM RTC interrupt */ + FmUnregisterIntr(p_Rtc->h_Fm, e_FM_MOD_TMR, 0, e_FM_INTR_TYPE_NORMAL); + XX_Free(p_Rtc); + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_ConfigSourceClock(t_Handle h_FmRtc, + e_FmSrcClk srcClk, + uint32_t freqInMhz) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + p_Rtc->p_RtcDriverParam->srcClk = srcClk; + if(srcClk != e_FM_RTC_SOURCE_CLOCK_SYSTEM) + p_Rtc->p_RtcDriverParam->extSrcClkFreq = freqInMhz; + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_ConfigPeriod(t_Handle h_FmRtc, uint32_t period) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + p_Rtc->clockPeriodNanoSec = period; + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_ConfigFrequencyBypass(t_Handle h_FmRtc, bool enabled) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + p_Rtc->p_RtcDriverParam->bypass = enabled; + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_ConfigInvertedInputClockPhase(t_Handle h_FmRtc, bool inverted) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + p_Rtc->p_RtcDriverParam->invertInputClkPhase = inverted; + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_ConfigInvertedOutputClockPhase(t_Handle h_FmRtc, bool inverted) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + p_Rtc->p_RtcDriverParam->invertOutputClkPhase = inverted; + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_ConfigOutputClockDivisor(t_Handle h_FmRtc, uint16_t divisor) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + p_Rtc->outputClockDivisor = divisor; + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_ConfigPulseRealignment(t_Handle h_FmRtc, bool enable) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + p_Rtc->p_RtcDriverParam->pulseRealign = enable; + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_ConfigAlarmPolarity(t_Handle h_FmRtc, + uint8_t alarmId, + e_FmRtcAlarmPolarity alarmPolarity) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + if (alarmId >= FM_RTC_NUM_OF_ALARMS) + { + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("Alarm ID")); + } + + p_Rtc->p_RtcDriverParam->alarmPolarity[alarmId] = alarmPolarity; + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_ConfigExternalTriggerPolarity(t_Handle h_FmRtc, + uint8_t triggerId, + e_FmRtcTriggerPolarity triggerPolarity) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + if (triggerId >= FM_RTC_NUM_OF_EXT_TRIGGERS) + { + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("External trigger ID")); + } + + p_Rtc->p_RtcDriverParam->triggerPolarity[triggerId] = triggerPolarity; + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_Enable(t_Handle h_FmRtc, bool resetClock) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + uint32_t tmrCtrl; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + tmrCtrl = GET_UINT32(p_Rtc->p_MemMap->tmr_ctrl); + + /* TODO A check must be added here, that no timestamping MAC's + * are working in this stage. */ + if (resetClock) + { + WRITE_UINT32(p_Rtc->p_MemMap->tmr_ctrl, (tmrCtrl | TMR_CTRL_TMSR)); + + XX_UDelay(10); + /* Clear TMR_OFF */ + WRITE_UINT32(p_Rtc->p_MemMap->tmr_off_l, 0); + WRITE_UINT32(p_Rtc->p_MemMap->tmr_off_h, 0); + } + + WRITE_UINT32(p_Rtc->p_MemMap->tmr_ctrl, (tmrCtrl | TMR_CTRL_TE)); + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_Disable(t_Handle h_FmRtc) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + uint32_t tmrCtrl; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + /* TODO A check must be added here, that no timestamping MAC's + * are working in this stage. */ + tmrCtrl = GET_UINT32(p_Rtc->p_MemMap->tmr_ctrl); + WRITE_UINT32(p_Rtc->p_MemMap->tmr_ctrl, (tmrCtrl & ~(TMR_CTRL_TE))); + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_SetClockOffset(t_Handle h_FmRtc, int64_t offset) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + /* TMR_OFF_L must be written first */ + WRITE_UINT32(p_Rtc->p_MemMap->tmr_off_l, (uint32_t)offset); + WRITE_UINT32(p_Rtc->p_MemMap->tmr_off_h, (uint32_t)(offset >> 32)); + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_SetAlarm(t_Handle h_FmRtc, t_FmRtcAlarmParams *p_FmRtcAlarmParams) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + t_FmRtcMemMap *p_MemMap; + uint32_t tmpReg; + uint64_t tmpAlarm; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + p_MemMap = p_Rtc->p_MemMap; + + if (p_FmRtcAlarmParams->alarmId >= FM_RTC_NUM_OF_ALARMS) + { + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("Alarm ID")); + } + + if(p_FmRtcAlarmParams->alarmTime < p_Rtc->clockPeriodNanoSec) + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("Alarm time must be equal or larger than RTC period - %d nanoseconds", p_Rtc->clockPeriodNanoSec)); + if(p_FmRtcAlarmParams->alarmTime % (uint64_t)p_Rtc->clockPeriodNanoSec) + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("Alarm time must be a multiple of RTC period - %d nanoseconds", p_Rtc->clockPeriodNanoSec)); + tmpAlarm = p_FmRtcAlarmParams->alarmTime/(uint64_t)p_Rtc->clockPeriodNanoSec; + + /* TMR_ALARM_L must be written first */ + WRITE_UINT32(p_MemMap->tmr_alarm[p_FmRtcAlarmParams->alarmId].tmr_alarm_l, (uint32_t)tmpAlarm); + WRITE_UINT32(p_MemMap->tmr_alarm[p_FmRtcAlarmParams->alarmId].tmr_alarm_h, + (uint32_t)(tmpAlarm >> 32)); + + if (p_FmRtcAlarmParams->f_AlarmCallback) + { + p_Rtc->alarmParams[p_FmRtcAlarmParams->alarmId].f_AlarmCallback = p_FmRtcAlarmParams->f_AlarmCallback; + p_Rtc->alarmParams[p_FmRtcAlarmParams->alarmId].clearOnExpiration = p_FmRtcAlarmParams->clearOnExpiration; + + if(p_FmRtcAlarmParams->alarmId == 0) + tmpReg = TMR_TEVENT_ALM1; + else + tmpReg = TMR_TEVENT_ALM2; + WRITE_UINT32(p_MemMap->tmr_temask, GET_UINT32(p_MemMap->tmr_temask) | tmpReg); + } + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_SetPeriodicPulse(t_Handle h_FmRtc, t_FmRtcPeriodicPulseParams *p_FmRtcPeriodicPulseParams) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + t_FmRtcMemMap *p_MemMap; + uint32_t tmpReg; + uint64_t tmpFiper; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + p_MemMap = p_Rtc->p_MemMap; + + if (p_FmRtcPeriodicPulseParams->periodicPulseId >= FM_RTC_NUM_OF_PERIODIC_PULSES) + { + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("Periodic pulse ID")); + } + if(GET_UINT32(p_MemMap->tmr_ctrl) & TMR_CTRL_TE) + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("Can't set Periodic pulse when RTC is enabled.")); + if(p_FmRtcPeriodicPulseParams->periodicPulsePeriod < p_Rtc->clockPeriodNanoSec) + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("Periodic pulse must be equal or larger than RTC period - %d nanoseconds", p_Rtc->clockPeriodNanoSec)); + if(p_FmRtcPeriodicPulseParams->periodicPulsePeriod % (uint64_t)p_Rtc->clockPeriodNanoSec) + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("Periodic pulse must be a multiple of RTC period - %d nanoseconds", p_Rtc->clockPeriodNanoSec)); + tmpFiper = p_FmRtcPeriodicPulseParams->periodicPulsePeriod/(uint64_t)p_Rtc->clockPeriodNanoSec; + if(tmpFiper & 0xffffffff00000000LL) + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("Periodic pulse/RTC Period must be smaller than 4294967296", p_Rtc->clockPeriodNanoSec)); + + WRITE_UINT32(p_MemMap->tmr_fiper[p_FmRtcPeriodicPulseParams->periodicPulseId], (uint32_t)tmpFiper); + + if (p_FmRtcPeriodicPulseParams->f_PeriodicPulseCallback) + { + p_Rtc->periodicPulseParams[p_FmRtcPeriodicPulseParams->periodicPulseId].f_PeriodicPulseCallback = + p_FmRtcPeriodicPulseParams->f_PeriodicPulseCallback; + + if(p_FmRtcPeriodicPulseParams->periodicPulseId == 0) + tmpReg = TMR_TEVENT_PP1; + else + tmpReg = TMR_TEVENT_PP2; + WRITE_UINT32(p_MemMap->tmr_temask, GET_UINT32(p_MemMap->tmr_temask) | tmpReg); + } + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_ClearPeriodicPulse(t_Handle h_FmRtc, uint8_t periodicPulseId) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + uint32_t tmpReg; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + if (periodicPulseId >= FM_RTC_NUM_OF_PERIODIC_PULSES) + { + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("Periodic pulse ID")); + } + + p_Rtc->periodicPulseParams[periodicPulseId].f_PeriodicPulseCallback = NULL; + + if(periodicPulseId == 0) + tmpReg = TMR_TEVENT_PP1; + else + tmpReg = TMR_TEVENT_PP2; + WRITE_UINT32(p_Rtc->p_MemMap->tmr_temask, GET_UINT32(p_Rtc->p_MemMap->tmr_temask) & ~tmpReg); + + if (GET_UINT32(p_Rtc->p_MemMap->tmr_ctrl) & TMR_CTRL_FS) + WRITE_UINT32(p_Rtc->p_MemMap->tmr_ctrl, GET_UINT32(p_Rtc->p_MemMap->tmr_ctrl) & ~TMR_CTRL_FS); + + WRITE_UINT32(p_Rtc->p_MemMap->tmr_fiper[periodicPulseId], 0xFFFFFFFF); + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_SetExternalTrigger(t_Handle h_FmRtc, t_FmRtcExternalTriggerParams *p_FmRtcExternalTriggerParams) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + uint32_t tmpReg; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + if (p_FmRtcExternalTriggerParams->externalTriggerId >= FM_RTC_NUM_OF_EXT_TRIGGERS) + { + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("External Trigger ID")); + } + + if (p_FmRtcExternalTriggerParams->f_ExternalTriggerCallback) + { + p_Rtc->externalTriggerParams[p_FmRtcExternalTriggerParams->externalTriggerId].f_ExternalTriggerCallback = p_FmRtcExternalTriggerParams->f_ExternalTriggerCallback; + if(p_FmRtcExternalTriggerParams->externalTriggerId == 0) + tmpReg = TMR_TEVENT_ETS1; + else + tmpReg = TMR_TEVENT_ETS2; + WRITE_UINT32(p_Rtc->p_MemMap->tmr_temask, GET_UINT32(p_Rtc->p_MemMap->tmr_temask) | tmpReg); + } + + if(p_FmRtcExternalTriggerParams->usePulseAsInput) + { + if(p_FmRtcExternalTriggerParams->externalTriggerId == 0) + tmpReg = TMR_CTRL_PP1L; + else + tmpReg = TMR_CTRL_PP2L; + WRITE_UINT32(p_Rtc->p_MemMap->tmr_ctrl, GET_UINT32(p_Rtc->p_MemMap->tmr_ctrl) | tmpReg); + } + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_ClearExternalTrigger(t_Handle h_FmRtc, uint8_t externalTriggerId) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + uint32_t tmpReg; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + if (externalTriggerId >= FM_RTC_NUM_OF_EXT_TRIGGERS) + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("External Trigger ID")); + + p_Rtc->externalTriggerParams[externalTriggerId].f_ExternalTriggerCallback = NULL; + + if(externalTriggerId == 0) + tmpReg = TMR_TEVENT_ETS1; + else + tmpReg = TMR_TEVENT_ETS2; + WRITE_UINT32(p_Rtc->p_MemMap->tmr_temask, GET_UINT32(p_Rtc->p_MemMap->tmr_temask) & ~tmpReg); + + if(externalTriggerId == 0) + tmpReg = TMR_CTRL_PP1L; + else + tmpReg = TMR_CTRL_PP2L; + + if (GET_UINT32(p_Rtc->p_MemMap->tmr_ctrl) & tmpReg) + WRITE_UINT32(p_Rtc->p_MemMap->tmr_ctrl, GET_UINT32(p_Rtc->p_MemMap->tmr_ctrl) & ~tmpReg); + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_GetExternalTriggerTimeStamp(t_Handle h_FmRtc, + uint8_t triggerId, + uint64_t *p_TimeStamp) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + uint64_t timeStamp; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + if (triggerId >= FM_RTC_NUM_OF_EXT_TRIGGERS) + { + RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("External trigger ID")); + } + + timeStamp = (uint64_t)GET_UINT32(p_Rtc->p_MemMap->tmr_etts[triggerId].tmr_etts_l); + timeStamp |= ((uint64_t)GET_UINT32(p_Rtc->p_MemMap->tmr_etts[triggerId].tmr_etts_h) << 32); + + timeStamp = timeStamp*p_Rtc->clockPeriodNanoSec; + *p_TimeStamp = timeStamp; + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_GetCurrentTime(t_Handle h_FmRtc, uint64_t *p_Ts) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + uint64_t time; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + /* TMR_CNT_L must be read first to get an accurate value */ + time = (uint64_t)GET_UINT32(p_Rtc->p_MemMap->tmr_cnt_l); + time |= ((uint64_t)GET_UINT32(p_Rtc->p_MemMap->tmr_cnt_h) << 32); + + time = time*p_Rtc->clockPeriodNanoSec; + + *p_Ts = time; + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_SetCurrentTime(t_Handle h_FmRtc, uint64_t ts) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + ts = ts/p_Rtc->clockPeriodNanoSec; + /* TMR_CNT_L must be written first to get an accurate value */ + WRITE_UINT32(p_Rtc->p_MemMap->tmr_cnt_l, (uint32_t)ts); + WRITE_UINT32(p_Rtc->p_MemMap->tmr_cnt_h, (uint32_t)(ts >> 32)); + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_GetFreqCompensation(t_Handle h_FmRtc, uint32_t *p_Compensation) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + *p_Compensation = (uint32_t) + DIV_CEIL(ACCUMULATOR_OVERFLOW * 1000, + p_Rtc->clockPeriodNanoSec * p_Rtc->srcClkFreqMhz); + + return E_OK; +} + +/*****************************************************************************/ +t_Error FM_RTC_SetFreqCompensation(t_Handle h_FmRtc, uint32_t freqCompensation) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + + SANITY_CHECK_RETURN_ERROR(p_Rtc, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Rtc->p_RtcDriverParam, E_INVALID_STATE); + + /* set the new freqCompensation */ + WRITE_UINT32(p_Rtc->p_MemMap->tmr_add, freqCompensation); + + return E_OK; +} + +/*****************************************************************************/ +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +t_Error FM_RTC_DumpRegs(t_Handle h_FmRtc) +{ + t_FmRtc *p_Rtc = (t_FmRtc *)h_FmRtc; + t_FmRtcMemMap *p_MemMap = p_Rtc->p_MemMap; + int i = 0; + + DECLARE_DUMP; + + if (p_MemMap) + { + + DUMP_TITLE(p_MemMap, ("RTC:")); + DUMP_VAR(p_MemMap, tmr_id); + DUMP_VAR(p_MemMap, tmr_id2); + DUMP_VAR(p_MemMap, tmr_ctrl); + DUMP_VAR(p_MemMap, tmr_tevent); + DUMP_VAR(p_MemMap, tmr_temask); + DUMP_VAR(p_MemMap, tmr_cnt_h); + DUMP_VAR(p_MemMap, tmr_cnt_l); + DUMP_VAR(p_MemMap, tmr_ctrl); + DUMP_VAR(p_MemMap, tmr_add); + DUMP_VAR(p_MemMap, tmr_acc); + DUMP_VAR(p_MemMap, tmr_prsc); + DUMP_VAR(p_MemMap, tmr_off_h); + DUMP_VAR(p_MemMap, tmr_off_l); + + DUMP_SUBSTRUCT_ARRAY(i, 2) + { + DUMP_VAR(p_MemMap, tmr_alarm[i].tmr_alarm_h); + DUMP_VAR(p_MemMap, tmr_alarm[i].tmr_alarm_l); + } + DUMP_SUBSTRUCT_ARRAY(i, 2) + { + DUMP_VAR(p_MemMap, tmr_fiper[i]); + DUMP_VAR(p_MemMap, tmr_fiper[i]); + } + DUMP_SUBSTRUCT_ARRAY(i, 2) + { + DUMP_VAR(p_MemMap, tmr_etts[i].tmr_etts_l); + DUMP_VAR(p_MemMap, tmr_etts[i].tmr_etts_l); + } + } + + return E_OK; +} +#endif /* (defined(DEBUG_ERRORS) && ... */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/Rtc/fm_rtc.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/Rtc/fm_rtc.h @@ -0,0 +1,217 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm_rtc.h + + @Description Memory map and internal definitions for FM RTC IEEE1588 Timer driver. + + @Cautions None +*//***************************************************************************/ + +#ifndef __FM_RTC_H__ +#define __FM_RTC_H__ + +#include "std_ext.h" +#include "fm_rtc_ext.h" + + +#define __ERR_MODULE__ MODULE_FM_RTC + +/* General definitions */ + +#define NANOSEC_PER_ONE_HZ_TICK 1000000000 +#define MIN_RTC_CLK_FREQ_HZ 1000 +#define MHz 1000000 + +#define ACCUMULATOR_OVERFLOW ((uint64_t)(1LL << 32)) + +/* RTC default values */ +#define DEFAULT_srcClock e_FM_RTC_SOURCE_CLOCK_SYSTEM +#define DEFAULT_bypass FALSE +#define DEFAULT_invertInputClkPhase FALSE +#define DEFAULT_invertOutputClkPhase FALSE +#define DEFAULT_outputClockDivisor 0x00000002 +#define DEFAULT_alarmPolarity e_FM_RTC_ALARM_POLARITY_ACTIVE_HIGH +#define DEFAULT_triggerPolarity e_FM_RTC_TRIGGER_ON_FALLING_EDGE +#define DEFAULT_pulseRealign FALSE +#define DEFAULT_clockPeriod 1000 + +/* FM RTC Registers definitions */ +#define TMR_CTRL_ALMP1 0x80000000 +#define TMR_CTRL_ALMP2 0x40000000 +#define TMR_CTRL_FS 0x10000000 +#define TMR_CTRL_PP1L 0x08000000 +#define TMR_CTRL_PP2L 0x04000000 +#define TMR_CTRL_TCLK_PERIOD_MASK 0x03FF0000 +#define TMR_CTRL_FRD 0x00004000 +#define TMR_CTRL_SLV 0x00002000 +#define TMR_CTRL_ETEP1 0x00000100 +#define TMR_CTRL_COPH 0x00000080 +#define TMR_CTRL_CIPH 0x00000040 +#define TMR_CTRL_TMSR 0x00000020 +#define TMR_CTRL_DBG 0x00000010 +#define TMR_CTRL_BYP 0x00000008 +#define TMR_CTRL_TE 0x00000004 +#define TMR_CTRL_CKSEL_OSC_CLK 0x00000003 +#define TMR_CTRL_CKSEL_MAC_CLK 0x00000001 +#define TMR_CTRL_CKSEL_EXT_CLK 0x00000000 +#define TMR_CTRL_TCLK_PERIOD_SHIFT 16 + +#define TMR_TEVENT_ETS2 0x02000000 +#define TMR_TEVENT_ETS1 0x01000000 +#define TMR_TEVENT_ALM2 0x00020000 +#define TMR_TEVENT_ALM1 0x00010000 +#define TMR_TEVENT_PP1 0x00000080 +#define TMR_TEVENT_PP2 0x00000040 +#define TMR_TEVENT_PP3 0x00000020 +#define TMR_TEVENT_ALL (TMR_TEVENT_ETS2 | TMR_TEVENT_ETS1 | \ + TMR_TEVENT_ALM2 | TMR_TEVENT_ALM1 | \ + TMR_TEVENT_PP1 | TMR_TEVENT_PP2 | TMR_TEVENT_PP3) + +#define TMR_PRSC_OCK_MASK 0x0000FFFF + + +/**************************************************************************//** + @Description Memory Mapped Registers +*//***************************************************************************/ + +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(push,1) +#endif /* defined(__MWERKS__) && ... */ +#define MEM_MAP_START + +/**************************************************************************//** + @Description FM RTC timer alarm +*//***************************************************************************/ +typedef _Packed struct t_TmrAlaram +{ + volatile uint32_t tmr_alarm_h; /**< */ + volatile uint32_t tmr_alarm_l; /**< */ +} _PackedType t_TmrAlaram; + +/**************************************************************************//** + @Description FM RTC timer Ex trigger +*//***************************************************************************/ +typedef _Packed struct t_TmrExtTrigger +{ + volatile uint32_t tmr_etts_h; /**< */ + volatile uint32_t tmr_etts_l; /**< */ +} _PackedType t_TmrExtTrigger; + +typedef _Packed struct +{ + volatile uint32_t tmr_id; /* Module ID and version register */ + volatile uint32_t tmr_id2; /* Module ID and configuration register */ + volatile uint32_t PTP_RESERVED1[30]; + volatile uint32_t tmr_ctrl; /* timer control register */ + volatile uint32_t tmr_tevent; /* timer event register */ + volatile uint32_t tmr_temask; /* timer event mask register */ + volatile uint32_t PTP_RESERVED2[3]; + volatile uint32_t tmr_cnt_h; /* timer counter high register */ + volatile uint32_t tmr_cnt_l; /* timer counter low register */ + volatile uint32_t tmr_add; /* timer drift compensation addend register */ + volatile uint32_t tmr_acc; /* timer accumulator register */ + volatile uint32_t tmr_prsc; /* timer prescale */ + volatile uint32_t PTP_RESERVED3; + volatile uint32_t tmr_off_h; /* timer offset high */ + volatile uint32_t tmr_off_l; /* timer offset low */ + volatile t_TmrAlaram tmr_alarm[FM_RTC_NUM_OF_ALARMS]; /* timer alarm */ + volatile uint32_t PTP_RESERVED4[2]; + volatile uint32_t tmr_fiper[FM_RTC_NUM_OF_PERIODIC_PULSES]; /* timer fixed period interval */ + volatile uint32_t PTP_RESERVED5[2]; + volatile t_TmrExtTrigger tmr_etts[FM_RTC_NUM_OF_EXT_TRIGGERS]; /*time stamp general purpose external */ + volatile uint32_t PTP_RESERVED6[3]; +} _PackedType t_FmRtcMemMap; + +#define MEM_MAP_END +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(pop) +#endif /* defined(__MWERKS__) && ... */ + + +/**************************************************************************//** + @Description RTC FM driver parameters structure. +*//***************************************************************************/ +typedef struct t_FmRtcDriverParam +{ + t_Handle h_Fm; /**< */ + e_FmSrcClk srcClk; /**< */ + uint32_t extSrcClkFreq; /**< */ + uint32_t rtcFreqHz; /**< */ + bool timerSlaveMode; /*Slave/Master Mode*/ + bool invertInputClkPhase; + bool invertOutputClkPhase; + uint32_t eventsMask; + bool bypass; /**< Indicates if frequency compensation is bypassed */ + bool pulseRealign; + e_FmRtcAlarmPolarity alarmPolarity[FM_RTC_NUM_OF_ALARMS]; + e_FmRtcTriggerPolarity triggerPolarity[FM_RTC_NUM_OF_EXT_TRIGGERS]; +} t_FmRtcDriverParam; + +typedef struct t_FmRtcAlarm +{ + t_FmRtcExceptionsCallback *f_AlarmCallback; + bool clearOnExpiration; +} t_FmRtcAlarm; + +typedef struct t_FmRtcPeriodicPulse +{ + t_FmRtcExceptionsCallback *f_PeriodicPulseCallback; +} t_FmRtcPeriodicPulse; + +typedef struct t_FmRtcExternalTrigger +{ + t_FmRtcExceptionsCallback *f_ExternalTriggerCallback; +} t_FmRtcExternalTrigger; + + +/**************************************************************************//** + @Description RTC FM driver control structure. +*//***************************************************************************/ +typedef struct t_FmRtc +{ + t_Part *p_Part; /**< Pointer to the integration device */ + t_Handle h_Fm; + t_Handle h_App; /**< Application handle */ + t_FmRtcMemMap *p_MemMap; /**< Pointer to RTC memory map */ + uint32_t clockPeriodNanoSec; /**< RTC clock period in nano-seconds (for FS mode) */ + uint32_t srcClkFreqMhz; + uint16_t outputClockDivisor; /**< Output clock divisor (for FS mode) */ + t_FmRtcAlarm alarmParams[FM_RTC_NUM_OF_ALARMS]; + t_FmRtcPeriodicPulse periodicPulseParams[FM_RTC_NUM_OF_PERIODIC_PULSES]; + t_FmRtcExternalTrigger externalTriggerParams[FM_RTC_NUM_OF_EXT_TRIGGERS]; + t_FmRtcDriverParam *p_RtcDriverParam; /**< RTC Driver parameters (for Init phase) */ +} t_FmRtc; + + +#endif /* __FM_RTC_H__ */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/fm.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/fm.c @@ -0,0 +1,4605 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm.c + + @Description FM driver routines implementation. +*//***************************************************************************/ +#include "std_ext.h" +#include "error_ext.h" +#include "xx_ext.h" +#include "string_ext.h" +#include "sprint_ext.h" +#include "debug_ext.h" +#include "fm_muram_ext.h" + +#include "fm_common.h" +#include "fm_ipc.h" +#include "fm.h" + + +/****************************************/ +/* static functions */ +/****************************************/ + +static volatile bool blockingFlag = FALSE; +static void IpcMsgCompletionCB(t_Handle h_Fm, + uint8_t *p_Msg, + uint8_t *p_Reply, + uint32_t replyLength, + t_Error status) +{ + UNUSED(h_Fm);UNUSED(p_Msg);UNUSED(p_Reply);UNUSED(replyLength);UNUSED(status); + blockingFlag = FALSE; +} + +static bool IsFmanCtrlCodeLoaded(t_Fm *p_Fm) +{ + t_FMIramRegs *p_Iram; + + ASSERT_COND(p_Fm); + p_Iram = (t_FMIramRegs *)UINT_TO_PTR(p_Fm->baseAddr + FM_MM_IMEM); + + return (bool)!!(GET_UINT32(p_Iram->iready) & IRAM_READY); +} + +static t_Error CheckFmParameters(t_Fm *p_Fm) +{ + if (IsFmanCtrlCodeLoaded(p_Fm) && !p_Fm->p_FmDriverParam->resetOnInit) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Old FMan CTRL code is loaded; FM must be reset!")); + if(!p_Fm->p_FmDriverParam->dmaAxiDbgNumOfBeats || (p_Fm->p_FmDriverParam->dmaAxiDbgNumOfBeats > DMA_MODE_MAX_AXI_DBG_NUM_OF_BEATS)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("axiDbgNumOfBeats has to be in the range 1 - %d", DMA_MODE_MAX_AXI_DBG_NUM_OF_BEATS)); + if(p_Fm->p_FmDriverParam->dmaCamNumOfEntries % DMA_CAM_UNITS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("dmaCamNumOfEntries has to be divisble by %d", DMA_CAM_UNITS)); + if(!p_Fm->p_FmDriverParam->dmaCamNumOfEntries || (p_Fm->p_FmDriverParam->dmaCamNumOfEntries > DMA_MODE_MAX_CAM_NUM_OF_ENTRIES)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("dmaCamNumOfEntries has to be in the range 1 - %d", DMA_MODE_MAX_CAM_NUM_OF_ENTRIES)); + if(p_Fm->p_FmDriverParam->dmaCommQThresholds.assertEmergency > DMA_THRESH_MAX_COMMQ) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("dmaCommQThresholds.assertEmergency can not be larger than %d", DMA_THRESH_MAX_COMMQ)); + if(p_Fm->p_FmDriverParam->dmaCommQThresholds.clearEmergency > DMA_THRESH_MAX_COMMQ) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("dmaCommQThresholds.clearEmergency can not be larger than %d", DMA_THRESH_MAX_COMMQ)); + if(p_Fm->p_FmDriverParam->dmaCommQThresholds.clearEmergency >= p_Fm->p_FmDriverParam->dmaCommQThresholds.assertEmergency) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("dmaCommQThresholds.clearEmergency must be smaller than dmaCommQThresholds.assertEmergency")); + if(p_Fm->p_FmDriverParam->dmaReadBufThresholds.assertEmergency > DMA_THRESH_MAX_BUF) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("dmaReadBufThresholds.assertEmergency can not be larger than %d", DMA_THRESH_MAX_BUF)); + if(p_Fm->p_FmDriverParam->dmaReadBufThresholds.clearEmergency > DMA_THRESH_MAX_BUF) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("dmaReadBufThresholds.clearEmergency can not be larger than %d", DMA_THRESH_MAX_BUF)); + if(p_Fm->p_FmDriverParam->dmaReadBufThresholds.clearEmergency >= p_Fm->p_FmDriverParam->dmaReadBufThresholds.assertEmergency) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("dmaReadBufThresholds.clearEmergency must be smaller than dmaReadBufThresholds.assertEmergency")); + if(p_Fm->p_FmDriverParam->dmaWriteBufThresholds.assertEmergency > DMA_THRESH_MAX_BUF) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("dmaWriteBufThresholds.assertEmergency can not be larger than %d", DMA_THRESH_MAX_BUF)); + if(p_Fm->p_FmDriverParam->dmaWriteBufThresholds.clearEmergency > DMA_THRESH_MAX_BUF) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("dmaWriteBufThresholds.clearEmergency can not be larger than %d", DMA_THRESH_MAX_BUF)); + if(p_Fm->p_FmDriverParam->dmaWriteBufThresholds.clearEmergency >= p_Fm->p_FmDriverParam->dmaWriteBufThresholds.assertEmergency) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("dmaWriteBufThresholds.clearEmergency must be smaller than dmaWriteBufThresholds.assertEmergency")); + + if(!p_Fm->p_FmStateStruct->fmClkFreq) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("fmClkFreq must be set.")); + if (USEC_TO_CLK(p_Fm->p_FmDriverParam->dmaWatchdog, p_Fm->p_FmStateStruct->fmClkFreq) > DMA_MAX_WATCHDOG) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, + ("dmaWatchdog depends on FM clock. dmaWatchdog(in microseconds) * clk (in Mhz), may not exceed 0x08x", DMA_MAX_WATCHDOG)); + +#ifdef FM_PARTITION_ARRAY + { + t_FmRevisionInfo revInfo; + uint8_t i; + + FM_GetRevision(p_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + for (i=0; ip_FmDriverParam->liodnBasePerPort[i] & ~FM_LIODN_BASE_MASK) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("liodn number is out of range")); + } +#endif /* FM_PARTITION_ARRAY */ + + if(p_Fm->p_FmStateStruct->totalFifoSize % BMI_FIFO_UNITS) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("totalFifoSize number has to be divisible by %d", BMI_FIFO_UNITS)); + if(!p_Fm->p_FmStateStruct->totalFifoSize || (p_Fm->p_FmStateStruct->totalFifoSize > BMI_MAX_FIFO_SIZE)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("totalFifoSize number has to be in the range 256 - %d", BMI_MAX_FIFO_SIZE)); + if(!p_Fm->p_FmStateStruct->totalNumOfTasks || (p_Fm->p_FmStateStruct->totalNumOfTasks > BMI_MAX_NUM_OF_TASKS)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("totalNumOfTasks number has to be in the range 1 - %d", BMI_MAX_NUM_OF_TASKS)); + if(!p_Fm->p_FmStateStruct->maxNumOfOpenDmas || (p_Fm->p_FmStateStruct->maxNumOfOpenDmas > BMI_MAX_NUM_OF_DMAS)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("maxNumOfOpenDmas number has to be in the range 1 - %d", BMI_MAX_NUM_OF_DMAS)); + + if(p_Fm->p_FmDriverParam->thresholds.dispLimit > FPM_MAX_DISP_LIMIT) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("thresholds.dispLimit can't be greater than %d", FPM_MAX_DISP_LIMIT)); + + if(!p_Fm->f_Exception) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Exceptions callback not provided")); + if(!p_Fm->f_BusError) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Exceptions callback not provided")); + + return E_OK; +} + +static void SendIpcIsr(t_Fm *p_Fm, uint32_t macEvent, uint32_t pendingReg) +{ + t_Error err; + t_FmIpcIsr fmIpcIsr; + t_FmIpcMsg msg; + + ASSERT_COND(p_Fm->guestId == NCSW_MASTER_ID); + ASSERT_COND(p_Fm->h_IpcSessions[p_Fm->intrMng[macEvent].guestId]); + if (p_Fm->intrMng[macEvent].guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_GUEST_ISR; + fmIpcIsr.pendingReg = pendingReg; + fmIpcIsr.boolErr = FALSE; + memcpy(msg.msgBody, &fmIpcIsr, sizeof(fmIpcIsr)); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[p_Fm->intrMng[macEvent].guestId], + (uint8_t*)&msg, + sizeof(msg.msgId) + sizeof(fmIpcIsr), + NULL, + NULL, + NULL, + NULL)) != E_OK) + REPORT_ERROR(MINOR, err, NO_MSG); + return; + } + else + p_Fm->intrMng[macEvent].f_Isr(p_Fm->intrMng[macEvent].h_SrcHandle); +} + +static void BmiErrEvent(t_Fm *p_Fm) +{ + uint32_t event, mask, force; + + event = GET_UINT32(p_Fm->p_FmBmiRegs->fmbm_ievr); + mask = GET_UINT32(p_Fm->p_FmBmiRegs->fmbm_ier); + event &= mask; + + /* clear the forced events */ + force = GET_UINT32(p_Fm->p_FmBmiRegs->fmbm_ifr); + if(force & event) + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_ifr, force & ~event); + + + /* clear the acknowledged events */ + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_ievr, event); + + if(event & BMI_ERR_INTR_EN_PIPELINE_ECC) + p_Fm->f_Exception(p_Fm->h_App,e_FM_EX_BMI_PIPELINE_ECC); + if(event & BMI_ERR_INTR_EN_LIST_RAM_ECC) + p_Fm->f_Exception(p_Fm->h_App,e_FM_EX_BMI_LIST_RAM_ECC); + if(event & BMI_ERR_INTR_EN_STATISTICS_RAM_ECC) + p_Fm->f_Exception(p_Fm->h_App,e_FM_EX_BMI_STATISTICS_RAM_ECC); + if(event & BMI_ERR_INTR_EN_DISPATCH_RAM_ECC) + p_Fm->f_Exception(p_Fm->h_App,e_FM_EX_BMI_DISPATCH_RAM_ECC); +} + +static void QmiErrEvent(t_Fm *p_Fm) +{ + uint32_t event, mask, force; + + event = GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_eie); + mask = GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_eien); + + event &= mask; + + /* clear the forced events */ + force = GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_eif); + if(force & event) + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_eif, force & ~event); + + /* clear the acknowledged events */ + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_eie, event); + + if(event & QMI_ERR_INTR_EN_DOUBLE_ECC) + p_Fm->f_Exception(p_Fm->h_App,e_FM_EX_QMI_DOUBLE_ECC); + if(event & QMI_ERR_INTR_EN_DEQ_FROM_DEF) + p_Fm->f_Exception(p_Fm->h_App,e_FM_EX_QMI_DEQ_FROM_UNKNOWN_PORTID); +} + +static void DmaErrEvent(t_Fm *p_Fm) +{ + uint64_t addr=0; + uint32_t status, mask, tmpReg=0; + uint8_t tnum; + uint8_t hardwarePortId; + uint8_t relativePortId; + uint16_t liodn; + + status = GET_UINT32(p_Fm->p_FmDmaRegs->fmdmsr); + mask = GET_UINT32(p_Fm->p_FmDmaRegs->fmdmmr); + + /* get bus error regs befor clearing BER */ + if ((status & DMA_STATUS_BUS_ERR) && (mask & DMA_MODE_BER)) + { + addr = (uint64_t)GET_UINT32(p_Fm->p_FmDmaRegs->fmdmtal); + addr |= ((uint64_t)(GET_UINT32(p_Fm->p_FmDmaRegs->fmdmtah)) << 32); + + /* get information about the owner of that bus error */ + tmpReg = GET_UINT32(p_Fm->p_FmDmaRegs->fmdmtcid); + } + + /* clear set events */ + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmsr, status); + + if ((status & DMA_STATUS_BUS_ERR) && (mask & DMA_MODE_BER)) + { + hardwarePortId = (uint8_t)(((tmpReg & DMA_TRANSFER_PORTID_MASK) >> DMA_TRANSFER_PORTID_SHIFT)); + HW_PORT_ID_TO_SW_PORT_ID(relativePortId, hardwarePortId); + tnum = (uint8_t)((tmpReg & DMA_TRANSFER_TNUM_MASK) >> DMA_TRANSFER_TNUM_SHIFT); + liodn = (uint16_t)(tmpReg & DMA_TRANSFER_LIODN_MASK); + ASSERT_COND(p_Fm->p_FmStateStruct->portsTypes[hardwarePortId] != e_FM_PORT_TYPE_DUMMY); + p_Fm->f_BusError(p_Fm->h_App, p_Fm->p_FmStateStruct->portsTypes[hardwarePortId], relativePortId, addr, tnum, liodn); + } + if(mask & DMA_MODE_ECC) + { + if (status & DMA_STATUS_READ_ECC) + p_Fm->f_Exception(p_Fm->h_App, e_FM_EX_DMA_READ_ECC); + if (status & DMA_STATUS_SYSTEM_WRITE_ECC) + p_Fm->f_Exception(p_Fm->h_App, e_FM_EX_DMA_SYSTEM_WRITE_ECC); + if (status & DMA_STATUS_FM_WRITE_ECC) + p_Fm->f_Exception(p_Fm->h_App, e_FM_EX_DMA_FM_WRITE_ECC); + } +} + +static void FpmErrEvent(t_Fm *p_Fm) +{ + uint32_t event; + + event = GET_UINT32(p_Fm->p_FmFpmRegs->fpmem); + + /* clear the all occurred events */ + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmem, event); + + if((event & FPM_EV_MASK_DOUBLE_ECC) && (event & FPM_EV_MASK_DOUBLE_ECC_EN)) + p_Fm->f_Exception(p_Fm->h_App,e_FM_EX_FPM_DOUBLE_ECC); + if((event & FPM_EV_MASK_STALL) && (event & FPM_EV_MASK_STALL_EN)) + p_Fm->f_Exception(p_Fm->h_App,e_FM_EX_FPM_STALL_ON_TASKS); + if((event & FPM_EV_MASK_SINGLE_ECC) && (event & FPM_EV_MASK_SINGLE_ECC_EN)) + p_Fm->f_Exception(p_Fm->h_App,e_FM_EX_FPM_SINGLE_ECC); +} + +static void MuramErrIntr(t_Fm *p_Fm) +{ + uint32_t event, mask; + + event = GET_UINT32(p_Fm->p_FmFpmRegs->fmrcr); + mask = GET_UINT32(p_Fm->p_FmFpmRegs->fmrie); + + /* clear MURAM event bit */ + WRITE_UINT32(p_Fm->p_FmFpmRegs->fmrcr, event & ~FPM_RAM_CTL_IRAM_ECC); + + ASSERT_COND(event & FPM_RAM_CTL_MURAM_ECC); + ASSERT_COND(event & FPM_RAM_CTL_RAMS_ECC_EN); + + if ((mask & FPM_MURAM_ECC_ERR_EX_EN)) + p_Fm->f_Exception(p_Fm->h_App, e_FM_EX_MURAM_ECC); +} + +static void IramErrIntr(t_Fm *p_Fm) +{ + uint32_t event, mask; + + event = GET_UINT32(p_Fm->p_FmFpmRegs->fmrcr) ; + mask = GET_UINT32(p_Fm->p_FmFpmRegs->fmrie); + /* clear the acknowledged events (do not clear IRAM event) */ + WRITE_UINT32(p_Fm->p_FmFpmRegs->fmrcr, event & ~FPM_RAM_CTL_MURAM_ECC); + + ASSERT_COND(event & FPM_RAM_CTL_IRAM_ECC); + ASSERT_COND(event & FPM_RAM_CTL_IRAM_ECC_EN); + + if ((mask & FPM_IRAM_ECC_ERR_EX_EN)) + p_Fm->f_Exception(p_Fm->h_App, e_FM_EX_IRAM_ECC); +} + +static void QmiEvent(t_Fm *p_Fm) +{ + uint32_t event, mask, force; + + event = GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_ie); + mask = GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_ien); + + event &= mask; + + /* clear the forced events */ + force = GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_if); + if(force & event) + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_if, force & ~event); + + /* clear the acknowledged events */ + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_ie, event); + + if(event & QMI_INTR_EN_SINGLE_ECC) + p_Fm->f_Exception(p_Fm->h_App,e_FM_EX_QMI_SINGLE_ECC); +} + +static void UnimplementedIsr(t_Handle h_Arg) +{ + UNUSED(h_Arg); + + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Unimplemented Isr!")); +} + +static void UnimplementedFmanCtrlIsr(t_Handle h_Arg, uint32_t event) +{ + UNUSED(h_Arg); UNUSED(event); + + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Unimplemented FmCtl Isr!")); +} + +static void FmEnableTimeStamp(t_Fm *p_Fm) +{ + uint32_t tmpReg; + uint64_t fraction; + uint32_t integer; + uint8_t count1MicroBit = 8; + uint32_t tsFrequency = (uint32_t)(1<p_FmStateStruct->fmClkFreq; + /* we multiply by 2^16 to keep the fraction of the division */ + /* we do not divid back, since we write this value as fraction - see spec */ + fraction = ((tsFrequency << 16) - (integer << 16)*p_Fm->p_FmStateStruct->fmClkFreq)/p_Fm->p_FmStateStruct->fmClkFreq; + /* we check remainder of the division in order to round up if not integer */ + if(((tsFrequency << 16) - (integer << 16)*p_Fm->p_FmStateStruct->fmClkFreq) % p_Fm->p_FmStateStruct->fmClkFreq) + fraction++; + + tmpReg = (integer << FPM_TS_INT_SHIFT) | (uint16_t)fraction; + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmtsc2, tmpReg); + + /* enable timestamp with original clock */ + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmtsc1, FPM_TS_CTL_EN); + + p_Fm->p_FmStateStruct->count1MicroBit = count1MicroBit; + p_Fm->p_FmStateStruct->enabledTimeStamp = TRUE; +} + +static void FreeInitResources(t_Fm *p_Fm) +{ + if (p_Fm->camBaseAddr) + FM_MURAM_FreeMem(p_Fm->h_FmMuram, UINT_TO_PTR(p_Fm->camBaseAddr)); + if (p_Fm->fifoBaseAddr) + FM_MURAM_FreeMem(p_Fm->h_FmMuram, UINT_TO_PTR(p_Fm->fifoBaseAddr)); + if (p_Fm->resAddr) + FM_MURAM_FreeMem(p_Fm->h_FmMuram, UINT_TO_PTR(p_Fm->resAddr)); +} + +static t_Error ClearIRam(t_Fm *p_Fm) +{ + t_FMIramRegs *p_Iram; + int i; + + ASSERT_COND(p_Fm); + p_Iram = (t_FMIramRegs *)UINT_TO_PTR(p_Fm->baseAddr + FM_MM_IMEM); + + /* Enable the auto-increment */ + WRITE_UINT32(p_Iram->iadd, IRAM_IADD_AIE); + while (GET_UINT32(p_Iram->iadd) != IRAM_IADD_AIE) ; + + for (i=0; i < (FM_IRAM_SIZE/4); i++) + WRITE_UINT32(p_Iram->idata, 0xffffffff); + + WRITE_UINT32(p_Iram->iadd, FM_IRAM_SIZE - 4); + CORE_MemoryBarrier(); + while (GET_UINT32(p_Iram->idata) != 0xffffffff) ; + + return E_OK; +} + +static t_Error LoadFmanCtrlCode(t_Fm *p_Fm) +{ + t_FMIramRegs *p_Iram; + int i; + uint32_t tmp; + uint8_t compTo16; + + ASSERT_COND(p_Fm); + p_Iram = (t_FMIramRegs *)UINT_TO_PTR(p_Fm->baseAddr + FM_MM_IMEM); + + /* Enable the auto-increment */ + WRITE_UINT32(p_Iram->iadd, IRAM_IADD_AIE); + while (GET_UINT32(p_Iram->iadd) != IRAM_IADD_AIE) ; + + for (i=0; i < (p_Fm->p_FmDriverParam->firmware.size / 4); i++) + WRITE_UINT32(p_Iram->idata, p_Fm->p_FmDriverParam->firmware.p_Code[i]); + + compTo16 = (uint8_t)(p_Fm->p_FmDriverParam->firmware.size % 16); + if(compTo16) + for (i=0; i < ((16-compTo16) / 4); i++) + WRITE_UINT32(p_Iram->idata, 0xffffffff); + + WRITE_UINT32(p_Iram->iadd,p_Fm->p_FmDriverParam->firmware.size-4); + while(GET_UINT32(p_Iram->iadd) != (p_Fm->p_FmDriverParam->firmware.size-4)) ; + + /* verify that writing has completed */ + while (GET_UINT32(p_Iram->idata) != p_Fm->p_FmDriverParam->firmware.p_Code[(p_Fm->p_FmDriverParam->firmware.size / 4)-1]) ; + + if (p_Fm->p_FmDriverParam->fwVerify) + { + WRITE_UINT32(p_Iram->iadd, IRAM_IADD_AIE); + while (GET_UINT32(p_Iram->iadd) != IRAM_IADD_AIE) ; + for (i=0; i < (p_Fm->p_FmDriverParam->firmware.size / 4); i++) + if ((tmp=GET_UINT32(p_Iram->idata)) != p_Fm->p_FmDriverParam->firmware.p_Code[i]) + RETURN_ERROR(MAJOR, E_WRITE_FAILED, + ("UCode write error : write 0x%x, read 0x%x", + p_Fm->p_FmDriverParam->firmware.p_Code[i],tmp)); + WRITE_UINT32(p_Iram->iadd, 0x0); + } + + /* Enable patch from IRAM */ + WRITE_UINT32(p_Iram->iready, IRAM_READY); + XX_UDelay(1000); + + DBG(INFO, ("FMan-Controller code (ver %d.%d) loaded to IRAM.", + ((uint8_t *)p_Fm->p_FmDriverParam->firmware.p_Code)[5], + ((uint8_t *)p_Fm->p_FmDriverParam->firmware.p_Code)[7])); + + return E_OK; +} + +static void GuestErrorIsr(t_Fm *p_Fm, uint32_t pending) +{ +#define FM_G_CALL_1G_MAC_ERR_ISR(_id) \ +do { \ + p_Fm->intrMng[(e_FmInterModuleEvent)(e_FM_EV_ERR_1G_MAC0+_id)].f_Isr(p_Fm->intrMng[(e_FmInterModuleEvent)(e_FM_EV_ERR_1G_MAC0+_id)].h_SrcHandle);\ +} while (0) +#define FM_G_CALL_10G_MAC_ERR_ISR(_id) \ +do { \ + p_Fm->intrMng[(e_FmInterModuleEvent)(e_FM_EV_ERR_10G_MAC0+_id)].f_Isr(p_Fm->intrMng[(e_FmInterModuleEvent)(e_FM_EV_ERR_10G_MAC0+_id)].h_SrcHandle);\ +} while (0) + + /* error interrupts */ + if (pending & ERR_INTR_EN_1G_MAC0) + FM_G_CALL_1G_MAC_ERR_ISR(0); + if (pending & ERR_INTR_EN_1G_MAC1) + FM_G_CALL_1G_MAC_ERR_ISR(1); + if (pending & ERR_INTR_EN_1G_MAC2) + FM_G_CALL_1G_MAC_ERR_ISR(2); + if (pending & ERR_INTR_EN_1G_MAC3) + FM_G_CALL_1G_MAC_ERR_ISR(3); + if (pending & ERR_INTR_EN_1G_MAC4) + FM_G_CALL_1G_MAC_ERR_ISR(4); + if (pending & ERR_INTR_EN_10G_MAC0) + FM_G_CALL_10G_MAC_ERR_ISR(0); +} + +static void GuestEventIsr(t_Fm *p_Fm, uint32_t pending) +{ +#define FM_G_CALL_1G_MAC_TMR_ISR(_id) \ +do { \ + p_Fm->intrMng[(e_FmInterModuleEvent)(e_FM_EV_1G_MAC0_TMR+_id)].f_Isr(p_Fm->intrMng[(e_FmInterModuleEvent)(e_FM_EV_1G_MAC0_TMR+_id)].h_SrcHandle);\ +} while (0) + + if (pending & INTR_EN_1G_MAC0_TMR) + FM_G_CALL_1G_MAC_TMR_ISR(0); + if (pending & INTR_EN_1G_MAC1_TMR) + FM_G_CALL_1G_MAC_TMR_ISR(1); + if (pending & INTR_EN_1G_MAC2_TMR) + FM_G_CALL_1G_MAC_TMR_ISR(2); + if (pending & INTR_EN_1G_MAC3_TMR) + FM_G_CALL_1G_MAC_TMR_ISR(3); + if (pending & INTR_EN_1G_MAC4_TMR) + FM_G_CALL_1G_MAC_TMR_ISR(4); + if(pending & INTR_EN_TMR) + p_Fm->intrMng[e_FM_EV_TMR].f_Isr(p_Fm->intrMng[e_FM_EV_TMR].h_SrcHandle); +} + + +/****************************************/ +/* Inter-Module functions */ +/****************************************/ +static t_Error FmGuestHandleIpcMsgCB(t_Handle h_Fm, + uint8_t *p_Msg, + uint32_t msgLength, + uint8_t *p_Reply, + uint32_t *p_ReplyLength) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + t_FmIpcMsg *p_IpcMsg = (t_FmIpcMsg*)p_Msg; + + UNUSED(p_Reply); + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR((msgLength > sizeof(uint32_t)), E_INVALID_VALUE); + +#ifdef DISABLE_SANITY_CHECKS + UNUSED(msgLength); +#endif /* DISABLE_SANITY_CHECKS */ + + ASSERT_COND(p_Msg); + + *p_ReplyLength = 0; + + switch(p_IpcMsg->msgId) + { + case (FM_GUEST_ISR): + { + t_FmIpcIsr ipcIsr; + + memcpy((uint8_t*)&ipcIsr, p_IpcMsg->msgBody, sizeof(t_FmIpcIsr)); + if(ipcIsr.boolErr) + GuestErrorIsr(p_Fm, ipcIsr.pendingReg); + else + GuestEventIsr(p_Fm, ipcIsr.pendingReg); + break; + } + default: + *p_ReplyLength = 0; + RETURN_ERROR(MINOR, E_INVALID_SELECTION, ("command not found!!!")); + } + return E_OK; +} + +static t_Error FmHandleIpcMsgCB(t_Handle h_Fm, + uint8_t *p_Msg, + uint32_t msgLength, + uint8_t *p_Reply, + uint32_t *p_ReplyLength) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + t_FmIpcMsg *p_IpcMsg = (t_FmIpcMsg*)p_Msg; + t_FmIpcReply *p_IpcReply = (t_FmIpcReply*)p_Reply; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR((msgLength >= sizeof(uint32_t)), E_INVALID_VALUE); + +#ifdef DISABLE_SANITY_CHECKS + UNUSED(msgLength); +#endif /* DISABLE_SANITY_CHECKS */ + + ASSERT_COND(p_IpcMsg); + + memset(p_IpcReply, 0, (sizeof(uint8_t) * FM_IPC_MAX_REPLY_SIZE)); + *p_ReplyLength = 0; + + switch(p_IpcMsg->msgId) + { + case (FM_GET_SET_PORT_PARAMS): + { + t_FmIpcPortInInitParams ipcInitParams; + t_FmInterModulePortInitParams initParams; + t_FmIpcPhysAddr ipcPhysAddr; + + memcpy((uint8_t*)&ipcInitParams, p_IpcMsg->msgBody, sizeof(t_FmIpcPortInInitParams)); + initParams.hardwarePortId = ipcInitParams.hardwarePortId; + initParams.portType = (e_FmPortType)ipcInitParams.enumPortType; + initParams.independentMode = (bool)(ipcInitParams.boolIndependentMode); + initParams.liodnOffset = ipcInitParams.liodnOffset; + initParams.numOfTasks = ipcInitParams.numOfTasks; + initParams.numOfExtraTasks = ipcInitParams.numOfExtraTasks; + initParams.numOfOpenDmas = ipcInitParams.numOfOpenDmas; + initParams.numOfExtraOpenDmas = ipcInitParams.numOfExtraOpenDmas; + initParams.sizeOfFifo = ipcInitParams.sizeOfFifo; + initParams.extraSizeOfFifo = ipcInitParams.extraSizeOfFifo; + initParams.deqPipelineDepth = ipcInitParams.deqPipelineDepth; + initParams.liodnBase = ipcInitParams.liodnBase; + + p_IpcReply->error = (uint32_t)FmGetSetPortParams(h_Fm, &initParams); + ipcPhysAddr.high = initParams.fmMuramPhysBaseAddr.high; + ipcPhysAddr.low = initParams.fmMuramPhysBaseAddr.low; + memcpy(p_IpcReply->replyBody, (uint8_t*)&ipcPhysAddr, sizeof(t_FmIpcPhysAddr)); + *p_ReplyLength = sizeof(uint32_t) + sizeof(t_FmIpcPhysAddr); + break; + } + case (FM_SET_SIZE_OF_FIFO): + { + t_FmIpcPortFifoParams ipcPortFifoParams; + t_FmInterModulePortRxPoolsParams rxPoolsParams; + + memcpy((uint8_t*)&ipcPortFifoParams, p_IpcMsg->msgBody, sizeof(t_FmIpcPortFifoParams)); + rxPoolsParams.numOfPools = ipcPortFifoParams.numOfPools; + rxPoolsParams.secondLargestBufSize = ipcPortFifoParams.secondLargestBufSize; + rxPoolsParams.largestBufSize = ipcPortFifoParams.largestBufSize; + + p_IpcReply->error = (uint32_t)FmSetSizeOfFifo(h_Fm, ipcPortFifoParams.rsrcParams.hardwarePortId, + (e_FmPortType)ipcPortFifoParams.enumPortType, + (bool)ipcPortFifoParams.boolIndependentMode, + &ipcPortFifoParams.rsrcParams.val, + ipcPortFifoParams.rsrcParams.extra, + ipcPortFifoParams.deqPipelineDepth, + &rxPoolsParams, + (bool)ipcPortFifoParams.boolInitialConfig); + memcpy(p_IpcReply->replyBody, (uint8_t*)&ipcPortFifoParams.rsrcParams.val, sizeof(uint32_t)); + *p_ReplyLength = sizeof(uint32_t) + sizeof(uint32_t); + break; + } + case (FM_SET_NUM_OF_TASKS): + { + t_FmIpcPortRsrcParams ipcPortRsrcParams; + + memcpy((uint8_t*)&ipcPortRsrcParams, p_IpcMsg->msgBody, sizeof(t_FmIpcPortRsrcParams)); + p_IpcReply->error = (uint32_t)FmSetNumOfTasks(h_Fm, ipcPortRsrcParams.hardwarePortId, + (uint8_t)ipcPortRsrcParams.val, + (uint8_t)ipcPortRsrcParams.extra, + (bool)ipcPortRsrcParams.boolInitialConfig); + *p_ReplyLength = sizeof(uint32_t); + break; + } + case (FM_SET_NUM_OF_OPEN_DMAS): + { + t_FmIpcPortRsrcParams ipcPortRsrcParams; + + memcpy((uint8_t*)&ipcPortRsrcParams, p_IpcMsg->msgBody, sizeof(t_FmIpcPortRsrcParams)); + p_IpcReply->error = (uint32_t)FmSetNumOfOpenDmas(h_Fm, ipcPortRsrcParams.hardwarePortId, + (uint8_t)ipcPortRsrcParams.val, + (uint8_t)ipcPortRsrcParams.extra, + (bool)ipcPortRsrcParams.boolInitialConfig); + *p_ReplyLength = sizeof(uint32_t); + break; + } + case (FM_RESUME_STALLED_PORT): + *p_ReplyLength = sizeof(uint32_t); + p_IpcReply->error = (uint32_t)FmResumeStalledPort(h_Fm, p_IpcMsg->msgBody[0]); + break; + case (FM_MASTER_IS_ALIVE): + { + uint8_t guestId = p_IpcMsg->msgBody[0]; + /* build the FM master partition IPC address */ + memset(p_Fm->fmIpcHandlerModuleName[guestId], 0, (sizeof(char)) * MODULE_NAME_SIZE); + if(Sprint (p_Fm->fmIpcHandlerModuleName[guestId], "FM_%d_%d",p_Fm->p_FmStateStruct->fmId, guestId) != (guestId<10 ? 6:7)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Sprint failed")); + p_Fm->h_IpcSessions[guestId] = XX_IpcInitSession(p_Fm->fmIpcHandlerModuleName[guestId], p_Fm->fmModuleName); + if (p_Fm->h_IpcSessions[guestId] == NULL) + RETURN_ERROR(MAJOR, E_NOT_AVAILABLE, ("FM Master IPC session for guest %d", guestId)); + *(uint8_t*)(p_IpcReply->replyBody) = 1; + *p_ReplyLength = sizeof(uint32_t) + sizeof(uint8_t); + break; + } + case (FM_IS_PORT_STALLED): + { + bool tmp; + + p_IpcReply->error = (uint32_t)FmIsPortStalled(h_Fm, p_IpcMsg->msgBody[0], &tmp); + *(uint8_t*)(p_IpcReply->replyBody) = (uint8_t)tmp; + *p_ReplyLength = sizeof(uint32_t) + sizeof(uint8_t); + break; + } + case (FM_RESET_MAC): + { + t_FmIpcMacParams ipcMacParams; + + memcpy((uint8_t*)&ipcMacParams, p_IpcMsg->msgBody, sizeof(t_FmIpcMacParams)); + p_IpcReply->error = (uint32_t)FmResetMac(p_Fm, + (e_FmMacType)(ipcMacParams.enumType), + ipcMacParams.id); + *p_ReplyLength = sizeof(uint32_t); + break; + } + case (FM_SET_MAC_MAX_FRAME): + { + t_Error err; + t_FmIpcMacMaxFrameParams ipcMacMaxFrameParams; + + memcpy((uint8_t*)&ipcMacMaxFrameParams, p_IpcMsg->msgBody, sizeof(t_FmIpcMacMaxFrameParams)); + if ((err = FmSetMacMaxFrame(p_Fm, + (e_FmMacType)(ipcMacMaxFrameParams.macParams.enumType), + ipcMacMaxFrameParams.macParams.id, + ipcMacMaxFrameParams.maxFrameLength)) != E_OK) + REPORT_ERROR(MINOR, err, NO_MSG); + break; + } + case (FM_GET_CLK_FREQ): + memcpy(p_IpcReply->replyBody, (uint8_t*)&p_Fm->p_FmStateStruct->fmClkFreq, sizeof(uint16_t)); + *p_ReplyLength = sizeof(uint32_t) + sizeof(uint16_t); + break; + case (FM_FREE_PORT): + { + t_FmInterModulePortFreeParams portParams; + t_FmIpcPortFreeParams ipcPortParams; + + memcpy((uint8_t*)&ipcPortParams, p_IpcMsg->msgBody, sizeof(t_FmIpcPortFreeParams)); + portParams.hardwarePortId = ipcPortParams.hardwarePortId; + portParams.portType = (e_FmPortType)(ipcPortParams.enumPortType); +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT + portParams.deqPipelineDepth = ipcPortParams.deqPipelineDepth; +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ + FmFreePortParams(h_Fm, &portParams); + break; + } + case (FM_REGISTER_INTR): + { + t_FmIpcRegisterIntr ipcRegIntr; + + memcpy((uint8_t*)&ipcRegIntr, p_IpcMsg->msgBody, sizeof(ipcRegIntr)); + p_Fm->intrMng[ipcRegIntr.event].guestId = ipcRegIntr.guestId; + break; + } +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) + case (FM_DUMP_REGS): + { + t_Error err; + if ((err = FM_DumpRegs(h_Fm)) != E_OK) + REPORT_ERROR(MINOR, err, NO_MSG); + break; + } + case (FM_DUMP_PORT_REGS): + { + t_Error err; + + if ((err = FmDumpPortRegs(h_Fm, p_IpcMsg->msgBody[0])) != E_OK) + REPORT_ERROR(MINOR, err, NO_MSG); + break; + } +#endif /* (defined(DEBUG_ERRORS) && ... */ + case (FM_GET_REV): + { + t_FmRevisionInfo revInfo; + t_FmIpcRevisionInfo ipcRevInfo; + + p_IpcReply->error = (uint32_t)FM_GetRevision(h_Fm, &revInfo); + ipcRevInfo.majorRev = revInfo.majorRev; + ipcRevInfo.minorRev = revInfo.minorRev; + memcpy(p_IpcReply->replyBody, (uint8_t*)&ipcRevInfo, sizeof(t_FmIpcRevisionInfo)); + *p_ReplyLength = sizeof(uint32_t) + sizeof(t_FmIpcRevisionInfo); + break; + } + case (FM_DMA_STAT): + { + t_FmDmaStatus dmaStatus; + t_FmIpcDmaStatus ipcDmaStatus; + + FM_GetDmaStatus(h_Fm, &dmaStatus); + ipcDmaStatus.boolCmqNotEmpty = (uint8_t)dmaStatus.cmqNotEmpty; + ipcDmaStatus.boolBusError = (uint8_t)dmaStatus.busError; + ipcDmaStatus.boolReadBufEccError = (uint8_t)dmaStatus.readBufEccError; + ipcDmaStatus.boolWriteBufEccSysError = (uint8_t)dmaStatus.writeBufEccSysError; + ipcDmaStatus.boolWriteBufEccFmError = (uint8_t)dmaStatus.writeBufEccFmError; + memcpy(p_IpcReply->replyBody, (uint8_t*)&ipcDmaStatus, sizeof(t_FmIpcDmaStatus)); + *p_ReplyLength = sizeof(uint32_t) + sizeof(t_FmIpcDmaStatus); + break; + } + case (FM_ALLOC_FMAN_CTRL_EVENT_REG): + p_IpcReply->error = (uint32_t)FmAllocFmanCtrlEventReg(h_Fm, (uint8_t*)p_IpcReply->replyBody); + *p_ReplyLength = sizeof(uint32_t) + sizeof(uint8_t); + break; + case (FM_FREE_FMAN_CTRL_EVENT_REG): + FmFreeFmanCtrlEventReg(h_Fm, p_IpcMsg->msgBody[0]); + break; + case (FM_GET_TIMESTAMP_SCALE): + { + uint32_t timeStamp = FmGetTimeStampScale(h_Fm); + + memcpy(p_IpcReply->replyBody, (uint8_t*)&timeStamp, sizeof(uint32_t)); + *p_ReplyLength = sizeof(uint32_t) + sizeof(uint32_t); + break; + } + case (FM_GET_COUNTER): + { + e_FmCounters inCounter; + uint32_t outCounter; + + memcpy((uint8_t*)&inCounter, p_IpcMsg->msgBody, sizeof(uint32_t)); + outCounter = FM_GetCounter(h_Fm, inCounter); + memcpy(p_IpcReply->replyBody, (uint8_t*)&outCounter, sizeof(uint32_t)); + *p_ReplyLength = sizeof(uint32_t) + sizeof(uint32_t); + break; + } + case (FM_SET_FMAN_CTRL_EVENTS_ENABLE): + { + t_FmIpcFmanEvents ipcFmanEvents; + + memcpy((uint8_t*)&ipcFmanEvents, p_IpcMsg->msgBody, sizeof(t_FmIpcFmanEvents)); + FmSetFmanCtrlIntr(h_Fm, + ipcFmanEvents.eventRegId, + ipcFmanEvents.enableEvents); + break; + } + case (FM_GET_FMAN_CTRL_EVENTS_ENABLE): + { + uint32_t tmp = FmGetFmanCtrlIntr(h_Fm, p_IpcMsg->msgBody[0]); + + memcpy(p_IpcReply->replyBody, (uint8_t*)&tmp, sizeof(uint32_t)); + *p_ReplyLength = sizeof(uint32_t) + sizeof(uint32_t); + break; + } + case (FM_GET_PHYS_MURAM_BASE): + { + t_FmPhysAddr physAddr; + t_FmIpcPhysAddr ipcPhysAddr; + + FmGetPhysicalMuramBase(h_Fm, &physAddr); + ipcPhysAddr.high = physAddr.high; + ipcPhysAddr.low = physAddr.low; + memcpy(p_IpcReply->replyBody, (uint8_t*)&ipcPhysAddr, sizeof(t_FmIpcPhysAddr)); + *p_ReplyLength = sizeof(uint32_t) + sizeof(t_FmIpcPhysAddr); + break; + } + case (FM_ENABLE_RAM_ECC): + { + t_Error err; + + if (((err = FM_EnableRamsEcc(h_Fm)) != E_OK) || + ((err = FM_SetException(h_Fm, e_FM_EX_IRAM_ECC, TRUE)) != E_OK) || + ((err = FM_SetException(h_Fm, e_FM_EX_MURAM_ECC, TRUE)) != E_OK)) + REPORT_ERROR(MINOR, err, NO_MSG); + break; + } + case (FM_DISABLE_RAM_ECC): + { + t_Error err; + + if (((err = FM_SetException(h_Fm, e_FM_EX_IRAM_ECC, FALSE)) != E_OK) || + ((err = FM_SetException(h_Fm, e_FM_EX_MURAM_ECC, FALSE)) != E_OK) || + ((err = FM_DisableRamsEcc(h_Fm)) != E_OK)) + REPORT_ERROR(MINOR, err, NO_MSG); + break; + } + case (FM_SET_NUM_OF_FMAN_CTRL): + { + t_Error err; + t_FmIpcPortNumOfFmanCtrls ipcPortNumOfFmanCtrls; + + memcpy((uint8_t*)&ipcPortNumOfFmanCtrls, p_IpcMsg->msgBody, sizeof(t_FmIpcPortNumOfFmanCtrls)); + if ((err = FmSetNumOfRiscsPerPort(h_Fm, + ipcPortNumOfFmanCtrls.hardwarePortId, + ipcPortNumOfFmanCtrls.numOfFmanCtrls)) != E_OK) + REPORT_ERROR(MINOR, err, NO_MSG); + break; + } +#ifdef FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 + case (FM_10G_TX_ECC_WA): + p_IpcReply->error = (uint32_t)Fm10GTxEccWorkaround(h_Fm, p_IpcMsg->msgBody[0]); + *p_ReplyLength = sizeof(uint32_t); + break; +#endif /* FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 */ + default: + *p_ReplyLength = 0; + RETURN_ERROR(MINOR, E_INVALID_SELECTION, ("command not found!!!")); + } + return E_OK; +} + +static void ErrorIsrCB(t_Handle h_Fm) +{ +#define FM_M_CALL_1G_MAC_ERR_ISR(_id) \ + { \ + if (p_Fm->guestId != p_Fm->intrMng[(e_FmInterModuleEvent)(e_FM_EV_ERR_1G_MAC0+_id)].guestId) \ + SendIpcIsr(p_Fm, (e_FmInterModuleEvent)(e_FM_EV_ERR_1G_MAC0+_id), pending); \ + else \ + p_Fm->intrMng[(e_FmInterModuleEvent)(e_FM_EV_ERR_1G_MAC0+_id)].f_Isr(p_Fm->intrMng[(e_FmInterModuleEvent)(e_FM_EV_ERR_1G_MAC0+_id)].h_SrcHandle);\ + } + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t pending; + + SANITY_CHECK_RETURN(h_Fm, E_INVALID_HANDLE); + + /* error interrupts */ + pending = GET_UINT32(p_Fm->p_FmFpmRegs->fmepi); + if (!pending) + return; + + if(pending & ERR_INTR_EN_BMI) + BmiErrEvent(p_Fm); + if(pending & ERR_INTR_EN_QMI) + QmiErrEvent(p_Fm); + if(pending & ERR_INTR_EN_FPM) + FpmErrEvent(p_Fm); + if(pending & ERR_INTR_EN_DMA) + DmaErrEvent(p_Fm); + if(pending & ERR_INTR_EN_IRAM) + IramErrIntr(p_Fm); + if(pending & ERR_INTR_EN_MURAM) + MuramErrIntr(p_Fm); + if(pending & ERR_INTR_EN_PRS) + p_Fm->intrMng[e_FM_EV_ERR_PRS].f_Isr(p_Fm->intrMng[e_FM_EV_ERR_PRS].h_SrcHandle); + if(pending & ERR_INTR_EN_PLCR) + p_Fm->intrMng[e_FM_EV_ERR_PLCR].f_Isr(p_Fm->intrMng[e_FM_EV_ERR_PLCR].h_SrcHandle); + if(pending & ERR_INTR_EN_KG) + p_Fm->intrMng[e_FM_EV_ERR_KG].f_Isr(p_Fm->intrMng[e_FM_EV_ERR_KG].h_SrcHandle); + + /* MAC events may belong to different partitions */ + if(pending & ERR_INTR_EN_1G_MAC0) + FM_M_CALL_1G_MAC_ERR_ISR(0); + if(pending & ERR_INTR_EN_1G_MAC1) + FM_M_CALL_1G_MAC_ERR_ISR(1); + if(pending & ERR_INTR_EN_1G_MAC2) + FM_M_CALL_1G_MAC_ERR_ISR(2); + if(pending & ERR_INTR_EN_1G_MAC3) + FM_M_CALL_1G_MAC_ERR_ISR(3); + if(pending & ERR_INTR_EN_1G_MAC4) + FM_M_CALL_1G_MAC_ERR_ISR(4); + if(pending & ERR_INTR_EN_10G_MAC0) + { + if (p_Fm->guestId != p_Fm->intrMng[e_FM_EV_ERR_10G_MAC0].guestId) + SendIpcIsr(p_Fm, e_FM_EV_ERR_10G_MAC0, pending); + else + p_Fm->intrMng[e_FM_EV_ERR_10G_MAC0].f_Isr(p_Fm->intrMng[e_FM_EV_ERR_10G_MAC0].h_SrcHandle); + } +} + + +#ifdef FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 +t_Error Fm10GTxEccWorkaround(t_Handle h_Fm, uint8_t macId) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + int timeout = 1000; + t_Error err = E_OK; + t_FmIpcMsg msg; + t_FmIpcReply reply; + uint32_t replyLength; + uint8_t rxHardwarePortId, txHardwarePortId; + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_10G_TX_ECC_WA; + msg.msgBody[0] = macId; + replyLength = sizeof(uint32_t); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId)+sizeof(macId), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + if (replyLength != sizeof(uint32_t)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + return (t_Error)(reply.error); + } + + SANITY_CHECK_RETURN_ERROR((macId == 0), E_NOT_SUPPORTED); + SANITY_CHECK_RETURN_ERROR(IsFmanCtrlCodeLoaded(p_Fm), E_INVALID_STATE); + + SW_PORT_ID_TO_HW_PORT_ID(rxHardwarePortId, e_FM_PORT_TYPE_RX_10G, macId); + SW_PORT_ID_TO_HW_PORT_ID(txHardwarePortId, e_FM_PORT_TYPE_TX_10G, macId); + if ((p_Fm->p_FmStateStruct->portsTypes[rxHardwarePortId] != e_FM_PORT_TYPE_DUMMY) || + (p_Fm->p_FmStateStruct->portsTypes[txHardwarePortId] != e_FM_PORT_TYPE_DUMMY)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, + ("MAC should be initialized prior to rx and tx ports!")); + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmextc, 0x40000000); + CORE_MemoryBarrier(); + while ((GET_UINT32(p_Fm->p_FmFpmRegs->fpmextc) & 0x40000000) && + --timeout) ; + if (!timeout) + return ERROR_CODE(E_TIMEOUT); + return E_OK; +} +#endif /* FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 */ + +uintptr_t FmGetPcdPrsBaseAddr(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_VALUE(p_Fm, E_INVALID_HANDLE, 0); + + if(p_Fm->guestId != NCSW_MASTER_ID) + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("Guset")); + + return (p_Fm->baseAddr + FM_MM_PRS); +} + +uintptr_t FmGetPcdKgBaseAddr(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_VALUE(p_Fm, E_INVALID_HANDLE, 0); + + if(p_Fm->guestId != NCSW_MASTER_ID) + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("Guset")); + + return (p_Fm->baseAddr + FM_MM_KG); +} + +uintptr_t FmGetPcdPlcrBaseAddr(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_VALUE(p_Fm, E_INVALID_HANDLE, 0); + + if(p_Fm->guestId != NCSW_MASTER_ID) + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("Guset")); + + return (p_Fm->baseAddr + FM_MM_PLCR); +} + +t_Handle FmGetMuramHandle(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_VALUE(p_Fm, E_INVALID_HANDLE, NULL); + + return (p_Fm->h_FmMuram); +} + +void FmGetPhysicalMuramBase(t_Handle h_Fm, t_FmPhysAddr *p_FmPhysAddr) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + t_Error err; + t_FmIpcMsg msg; + t_FmIpcReply reply; + uint32_t replyLength; + t_FmIpcPhysAddr ipcPhysAddr; + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_GET_PHYS_MURAM_BASE; + replyLength = sizeof(uint32_t) + sizeof(t_FmPhysAddr); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + { + REPORT_ERROR(MINOR, err, NO_MSG); + return; + } + if (replyLength != (sizeof(uint32_t) + sizeof(t_FmPhysAddr))) + { + REPORT_ERROR(MINOR, E_INVALID_VALUE,("IPC reply length mismatch")); + return; + } + memcpy((uint8_t*)&ipcPhysAddr, reply.replyBody, sizeof(t_FmIpcPhysAddr)); + p_FmPhysAddr->high = ipcPhysAddr.high; + p_FmPhysAddr->low = ipcPhysAddr.low; + return ; + } + + /* General FM driver initialization */ + p_FmPhysAddr->low = (uint32_t)p_Fm->fmMuramPhysBaseAddr; + p_FmPhysAddr->high = (uint8_t)((p_Fm->fmMuramPhysBaseAddr & 0x000000ff00000000LL) >> 32); +} + +t_Error FmAllocFmanCtrlEventReg(t_Handle h_Fm, uint8_t *p_EventId) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint8_t i; + t_Error err; + t_FmIpcMsg msg; + t_FmIpcReply reply; + uint32_t replyLength; + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_ALLOC_FMAN_CTRL_EVENT_REG; + replyLength = sizeof(uint32_t) + sizeof(uint8_t); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + if (replyLength != (sizeof(uint32_t) + sizeof(uint8_t))) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + + *p_EventId = *(uint8_t*)(reply.replyBody); + + return (t_Error)(reply.error); + } + + for(i=0;iusedEventRegs[i]) + { + p_Fm->usedEventRegs[i] = TRUE; + *p_EventId = i; + break; + } + + if (i==FM_NUM_OF_FMAN_CTRL_EVENT_REGS) + RETURN_ERROR(MAJOR, E_BUSY, ("No resource - Fman controller event register.")); + + return E_OK; +} + +void FmFreeFmanCtrlEventReg(t_Handle h_Fm, uint8_t eventId) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + t_Error err; + t_FmIpcMsg msg; + + if(((t_Fm *)h_Fm)->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_FREE_FMAN_CTRL_EVENT_REG; + msg.msgBody[0] = eventId; + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId)+sizeof(eventId), + NULL, + NULL, + NULL, + NULL)) != E_OK) + REPORT_ERROR(MINOR, err, NO_MSG); + return; + } + + ((t_Fm*)h_Fm)->usedEventRegs[eventId] = FALSE; +} + +void FmRegisterIntr(t_Handle h_Fm, + e_FmEventModules module, + uint8_t modId, + e_FmIntrType intrType, + void (*f_Isr) (t_Handle h_Arg), + t_Handle h_Arg) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint8_t event= 0; + t_FmIpcRegisterIntr fmIpcRegisterIntr; + t_Error err; + t_FmIpcMsg msg; + + ASSERT_COND(h_Fm); + + GET_FM_MODULE_EVENT(module, modId,intrType, event); + + /* register in local FM structure */ + ASSERT_COND(event != e_FM_EV_DUMMY_LAST); + p_Fm->intrMng[event].f_Isr = f_Isr; + p_Fm->intrMng[event].h_SrcHandle = h_Arg; + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + if(p_Fm->h_IpcSessions[0]) + { + /* register in Master FM structure */ + fmIpcRegisterIntr.event = event; + fmIpcRegisterIntr.guestId = p_Fm->guestId; + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_REGISTER_INTR; + memcpy(msg.msgBody, &fmIpcRegisterIntr, sizeof(fmIpcRegisterIntr)); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId) + sizeof(fmIpcRegisterIntr), + NULL, + NULL, + NULL, + NULL)) != E_OK) + REPORT_ERROR(MINOR, err, NO_MSG); + } + else + DBG(WARNING,("'Register interrupt' - unavailable - No IPC")); + } + +} + +void FmUnregisterIntr(t_Handle h_Fm, + e_FmEventModules module, + uint8_t modId, + e_FmIntrType intrType) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint8_t event= 0; + + ASSERT_COND(h_Fm); + + GET_FM_MODULE_EVENT(module, modId,intrType, event); + + ASSERT_COND(event != e_FM_EV_DUMMY_LAST); + p_Fm->intrMng[event].f_Isr = UnimplementedIsr; + p_Fm->intrMng[event].h_SrcHandle = NULL; +} + +void FmSetFmanCtrlIntr(t_Handle h_Fm, uint8_t eventRegId, uint32_t enableEvents) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + t_FmIpcFmanEvents fmanCtrl; + t_Error err; + t_FmIpcMsg msg; + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + fmanCtrl.eventRegId = eventRegId; + fmanCtrl.enableEvents = enableEvents; + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_SET_FMAN_CTRL_EVENTS_ENABLE; + memcpy(msg.msgBody, &fmanCtrl, sizeof(fmanCtrl)); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId)+sizeof(fmanCtrl), + NULL, + NULL, + NULL, + NULL)) != E_OK) + REPORT_ERROR(MINOR, err, NO_MSG); + return; + } + + ASSERT_COND(eventRegId < FM_NUM_OF_FMAN_CTRL_EVENT_REGS); + WRITE_UINT32(p_Fm->p_FmFpmRegs->fmfpfcee[eventRegId], enableEvents); +} + +uint32_t FmGetFmanCtrlIntr(t_Handle h_Fm, uint8_t eventRegId) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + t_Error err; + t_FmIpcMsg msg; + t_FmIpcReply reply; + uint32_t replyLength, ctrlIntr; + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_GET_FMAN_CTRL_EVENTS_ENABLE; + msg.msgBody[0] = eventRegId; + replyLength = sizeof(uint32_t) + sizeof(uint32_t); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId)+sizeof(eventRegId), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + { + REPORT_ERROR(MINOR, err, NO_MSG); + return 0; + } + if (replyLength != (sizeof(uint32_t) + sizeof(uint32_t))) + { + REPORT_ERROR(MINOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + return 0; + } + memcpy((uint8_t*)&ctrlIntr, reply.replyBody, sizeof(uint32_t)); + return ctrlIntr; + } + + return GET_UINT32(p_Fm->p_FmFpmRegs->fmfpfcee[eventRegId]); +} + +void FmRegisterFmanCtrlIntr(t_Handle h_Fm, uint8_t eventRegId, void (*f_Isr) (t_Handle h_Arg, uint32_t event), t_Handle h_Arg) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + ASSERT_COND(eventRegIdguestId != NCSW_MASTER_ID) + { + ASSERT_COND(0); + /* TODO */ + } + + p_Fm->fmanCtrlIntr[eventRegId].f_Isr = f_Isr; + p_Fm->fmanCtrlIntr[eventRegId].h_SrcHandle = h_Arg; +} + +void FmUnregisterFmanCtrlIntr(t_Handle h_Fm, uint8_t eventRegId) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + ASSERT_COND(eventRegIdguestId != NCSW_MASTER_ID) + { + ASSERT_COND(0); + /* TODO */ + } + + p_Fm->fmanCtrlIntr[eventRegId].f_Isr = UnimplementedFmanCtrlIsr; + p_Fm->fmanCtrlIntr[eventRegId].h_SrcHandle = NULL; +} + +void FmRegisterPcd(t_Handle h_Fm, t_Handle h_FmPcd) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + if(p_Fm->h_Pcd) + REPORT_ERROR(MAJOR, E_ALREADY_EXISTS, ("PCD already set")); + + p_Fm->h_Pcd = h_FmPcd; + +} + +void FmUnregisterPcd(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + if(!p_Fm->h_Pcd) + REPORT_ERROR(MAJOR, E_ALREADY_EXISTS, ("No PCD")); + + p_Fm->h_Pcd = NULL; + +} + +t_Handle FmGetPcdHandle(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + return p_Fm->h_Pcd; +} + +uint8_t FmGetId(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_VALUE(p_Fm, E_INVALID_HANDLE, 0xff); + + return p_Fm->p_FmStateStruct->fmId; +} + +t_Error FmSetNumOfRiscsPerPort(t_Handle h_Fm, uint8_t hardwarePortId, uint8_t numOfFmanCtrls) +{ + + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t tmpReg = 0; + t_Error err; + t_FmIpcPortNumOfFmanCtrls params; + t_FmIpcMsg msg; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(((numOfFmanCtrls > 0) && (numOfFmanCtrls < 3)) , E_INVALID_HANDLE); + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + params.hardwarePortId = hardwarePortId; + params.numOfFmanCtrls = numOfFmanCtrls; + msg.msgId = FM_SET_NUM_OF_FMAN_CTRL; + memcpy(msg.msgBody, ¶ms, sizeof(params)); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId) +sizeof(params), + NULL, + NULL, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + + return E_OK; + } + + XX_LockSpinlock(p_Fm->h_Spinlock); + + tmpReg = (uint32_t)(hardwarePortId << FPM_PORT_FM_CTL_PORTID_SHIFT); + + /*TODO - maybe to put CTL# according to another criteria*/ + + if(numOfFmanCtrls == 2) + tmpReg = FPM_PORT_FM_CTL2 | FPM_PORT_FM_CTL1; + + /* order restoration */ + if(hardwarePortId%2) + tmpReg |= (FPM_PORT_FM_CTL1 << FPM_PRC_ORA_FM_CTL_SEL_SHIFT) | FPM_PORT_FM_CTL1; + else + tmpReg |= (FPM_PORT_FM_CTL2 << FPM_PRC_ORA_FM_CTL_SEL_SHIFT) | FPM_PORT_FM_CTL2; + + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmpr, tmpReg); + XX_UnlockSpinlock(p_Fm->h_Spinlock); + + return E_OK; +} + +t_Error FmGetSetPortParams(t_Handle h_Fm,t_FmInterModulePortInitParams *p_PortParams) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t tmpReg; + uint8_t hardwarePortId = p_PortParams->hardwarePortId; + t_FmIpcPortInInitParams portInParams; + t_FmIpcPhysAddr ipcPhysAddr; + t_Error err; + t_FmIpcMsg msg; + t_FmIpcReply reply; + uint32_t replyLength; + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + portInParams.hardwarePortId = p_PortParams->hardwarePortId; + portInParams.enumPortType = (uint32_t)p_PortParams->portType; + portInParams.boolIndependentMode = (uint8_t)p_PortParams->independentMode; + portInParams.liodnOffset = p_PortParams->liodnOffset; + portInParams.numOfTasks = p_PortParams->numOfTasks; + portInParams.numOfExtraTasks = p_PortParams->numOfExtraTasks; + portInParams.numOfOpenDmas = p_PortParams->numOfOpenDmas; + portInParams.numOfExtraOpenDmas = p_PortParams->numOfExtraOpenDmas; + portInParams.sizeOfFifo = p_PortParams->sizeOfFifo; + portInParams.extraSizeOfFifo = p_PortParams->extraSizeOfFifo; + portInParams.deqPipelineDepth = p_PortParams->deqPipelineDepth; + portInParams.liodnBase = p_PortParams->liodnBase; + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_GET_SET_PORT_PARAMS; + memcpy(msg.msgBody, &portInParams, sizeof(portInParams)); + replyLength = (sizeof(uint32_t) + sizeof(p_PortParams->fmMuramPhysBaseAddr)); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId) +sizeof(portInParams), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + if (replyLength != (sizeof(uint32_t) + sizeof(p_PortParams->fmMuramPhysBaseAddr))) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + memcpy((uint8_t*)&ipcPhysAddr, reply.replyBody, sizeof(t_FmIpcPhysAddr)); + p_PortParams->fmMuramPhysBaseAddr.high = ipcPhysAddr.high; + p_PortParams->fmMuramPhysBaseAddr.low = ipcPhysAddr.low; + + return (t_Error)(reply.error); + } + + ASSERT_COND(IN_RANGE(1, hardwarePortId, 63)); + XX_LockSpinlock(p_Fm->h_Spinlock); + + if(p_PortParams->independentMode) + { + /* set port parameters */ + p_Fm->independentMode = p_PortParams->independentMode; + /* disable dispatch limit */ + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmflc, 0); + } + + if(p_PortParams->portType == e_FM_PORT_TYPE_OH_HOST_COMMAND) + { + if(p_Fm->hcPortInitialized) + { + XX_UnlockSpinlock(p_Fm->h_Spinlock); + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Only one host command port is allowed.")); + } + else + p_Fm->hcPortInitialized = TRUE; + } + p_Fm->p_FmStateStruct->portsTypes[hardwarePortId] = p_PortParams->portType; + + err = FmSetNumOfTasks(p_Fm, p_PortParams->hardwarePortId, p_PortParams->numOfTasks, p_PortParams->numOfExtraTasks, TRUE); + if(err) + { + XX_UnlockSpinlock(p_Fm->h_Spinlock); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT + if((p_PortParams->portType != e_FM_PORT_TYPE_RX) && (p_PortParams->portType != e_FM_PORT_TYPE_RX_10G)) + /* for transmit & O/H ports */ + { + uint8_t enqTh; + uint8_t deqTh; + bool update = FALSE; + + /* update qmi ENQ/DEQ threshold */ + p_Fm->p_FmStateStruct->accumulatedNumOfDeqTnums += p_PortParams->deqPipelineDepth; + tmpReg = GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_gc); + enqTh = (uint8_t)(tmpReg>>8); + /* if enqTh is too big, we reduce it to the max value that is still OK */ + if(enqTh >= (QMI_MAX_NUM_OF_TNUMS - p_Fm->p_FmStateStruct->accumulatedNumOfDeqTnums)) + { + enqTh = (uint8_t)(QMI_MAX_NUM_OF_TNUMS - p_Fm->p_FmStateStruct->accumulatedNumOfDeqTnums - 1); + tmpReg &= ~QMI_CFG_ENQ_MASK; + tmpReg |= ((uint32_t)enqTh << 8); + update = TRUE; + } + + deqTh = (uint8_t)tmpReg; + /* if deqTh is too small, we enlarge it to the min value that is still OK. + deqTh may not be larger than 63 (QMI_MAX_NUM_OF_TNUMS-1). */ + if((deqTh <= p_Fm->p_FmStateStruct->accumulatedNumOfDeqTnums) && (deqTh < QMI_MAX_NUM_OF_TNUMS-1)) + { + deqTh = (uint8_t)(p_Fm->p_FmStateStruct->accumulatedNumOfDeqTnums + 1); + tmpReg &= ~QMI_CFG_DEQ_MASK; + tmpReg |= (uint32_t)deqTh; + update = TRUE; + } + if(update) + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_gc, tmpReg); + } +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ + +#ifdef FM_LOW_END_RESTRICTION + if((hardwarePortId==0x1) || (hardwarePortId==0x29)) + { + if(p_Fm->p_FmStateStruct->lowEndRestriction) + { + XX_UnlockSpinlock(p_Fm->h_Spinlock); + RETURN_ERROR(MAJOR, E_NOT_AVAILABLE, ("OP #0 cannot work with Tx Port #1.")); + } + else + p_Fm->p_FmStateStruct->lowEndRestriction = TRUE; + } +#endif /* FM_LOW_END_RESTRICTION */ + + err = FmSetSizeOfFifo(p_Fm, + p_PortParams->hardwarePortId, + p_PortParams->portType, + p_PortParams->independentMode, + &p_PortParams->sizeOfFifo, + p_PortParams->extraSizeOfFifo, + p_PortParams->deqPipelineDepth, + NULL, + TRUE); + if(err) + { + XX_UnlockSpinlock(p_Fm->h_Spinlock); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + err = FmSetNumOfOpenDmas(p_Fm, p_PortParams->hardwarePortId, p_PortParams->numOfOpenDmas, p_PortParams->numOfExtraOpenDmas, TRUE); + if(err) + { + XX_UnlockSpinlock(p_Fm->h_Spinlock); + RETURN_ERROR(MAJOR, err, NO_MSG); + } + + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_ppid[hardwarePortId-1], (uint32_t)p_PortParams->liodnOffset); + + tmpReg = (uint32_t)(hardwarePortId << FPM_PORT_FM_CTL_PORTID_SHIFT); + if(p_PortParams->independentMode) + { + if((p_PortParams->portType==e_FM_PORT_TYPE_RX) || (p_PortParams->portType==e_FM_PORT_TYPE_RX_10G)) + tmpReg |= (FPM_PORT_FM_CTL1 << FPM_PRC_ORA_FM_CTL_SEL_SHIFT) |FPM_PORT_FM_CTL1; + else + tmpReg |= (FPM_PORT_FM_CTL2 << FPM_PRC_ORA_FM_CTL_SEL_SHIFT) |FPM_PORT_FM_CTL2; + } + else + { + tmpReg |= (FPM_PORT_FM_CTL2|FPM_PORT_FM_CTL1); + + /* order restoration */ + if(hardwarePortId%2) + tmpReg |= (FPM_PORT_FM_CTL1 << FPM_PRC_ORA_FM_CTL_SEL_SHIFT); + else + tmpReg |= (FPM_PORT_FM_CTL2 << FPM_PRC_ORA_FM_CTL_SEL_SHIFT); + } + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmpr, tmpReg); + + { +#ifdef FM_PARTITION_ARRAY + t_FmRevisionInfo revInfo; + + FM_GetRevision(p_Fm, &revInfo); + if (revInfo.majorRev >= 2) +#endif /* FM_PARTITION_ARRAY */ + { + /* set LIODN base for this port */ + tmpReg = GET_UINT32(p_Fm->p_FmDmaRegs->fmdmplr[hardwarePortId/2]); + if(hardwarePortId%2) + { + tmpReg &= ~FM_LIODN_BASE_MASK; + tmpReg |= (uint32_t)p_PortParams->liodnBase; + } + else + { + tmpReg &= ~(FM_LIODN_BASE_MASK<< DMA_LIODN_SHIFT); + tmpReg |= (uint32_t)p_PortParams->liodnBase << DMA_LIODN_SHIFT; + } + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmplr[hardwarePortId/2], tmpReg); + } + } + + FmGetPhysicalMuramBase(p_Fm, &p_PortParams->fmMuramPhysBaseAddr); + XX_UnlockSpinlock(p_Fm->h_Spinlock); + + return E_OK; +} + +void FmFreePortParams(t_Handle h_Fm,t_FmInterModulePortFreeParams *p_PortParams) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t tmpReg; + uint8_t hardwarePortId = p_PortParams->hardwarePortId; + uint8_t numOfTasks; + t_Error err; + t_FmIpcPortFreeParams portParams; + t_FmIpcMsg msg; + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + portParams.hardwarePortId = p_PortParams->hardwarePortId; + portParams.enumPortType = (uint32_t)p_PortParams->portType; +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT + portParams.deqPipelineDepth = p_PortParams->deqPipelineDepth; +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_FREE_PORT; + memcpy(msg.msgBody, &portParams, sizeof(portParams)); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId)+sizeof(portParams), + NULL, + NULL, + NULL, + NULL)) != E_OK) + REPORT_ERROR(MINOR, err, NO_MSG); + return; + } + + ASSERT_COND(IN_RANGE(1, hardwarePortId, 63)); + XX_LockSpinlock(p_Fm->h_Spinlock); + + + if(p_PortParams->portType == e_FM_PORT_TYPE_OH_HOST_COMMAND) + { + ASSERT_COND(p_Fm->hcPortInitialized); + p_Fm->hcPortInitialized = FALSE; + } + + p_Fm->p_FmStateStruct->portsTypes[hardwarePortId] = e_FM_PORT_TYPE_DUMMY; + + tmpReg = GET_UINT32(p_Fm->p_FmBmiRegs->fmbm_pp[hardwarePortId-1]); + /* free numOfTasks */ + numOfTasks = (uint8_t)(((tmpReg & BMI_NUM_OF_TASKS_MASK) >> BMI_NUM_OF_TASKS_SHIFT) + 1); + ASSERT_COND(p_Fm->p_FmStateStruct->accumulatedNumOfTasks >= numOfTasks); + p_Fm->p_FmStateStruct->accumulatedNumOfTasks -= numOfTasks; + + /* free numOfOpenDmas */ + ASSERT_COND(p_Fm->p_FmStateStruct->accumulatedNumOfOpenDmas >= ((tmpReg & BMI_NUM_OF_DMAS_MASK) >> BMI_NUM_OF_DMAS_SHIFT) + 1); + p_Fm->p_FmStateStruct->accumulatedNumOfOpenDmas -= (((tmpReg & BMI_NUM_OF_DMAS_MASK) >> BMI_NUM_OF_DMAS_SHIFT) + 1); + + /* update total num of DMA's with committed number of open DMAS, and max uncommitted pool. */ + tmpReg = GET_UINT32(p_Fm->p_FmBmiRegs->fmbm_cfg2) & ~BMI_CFG2_DMAS_MASK; + tmpReg |= (uint32_t)(p_Fm->p_FmStateStruct->accumulatedNumOfOpenDmas + p_Fm->p_FmStateStruct->extraOpenDmasPoolSize - 1) << BMI_CFG2_DMAS_SHIFT; + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_cfg2, tmpReg); + + /* free sizeOfFifo */ + tmpReg = GET_UINT32(p_Fm->p_FmBmiRegs->fmbm_pfs[hardwarePortId-1]); + ASSERT_COND(p_Fm->p_FmStateStruct->accumulatedFifoSize >= + (((tmpReg & BMI_FIFO_SIZE_MASK) + 1) * BMI_FIFO_UNITS)); + p_Fm->p_FmStateStruct->accumulatedFifoSize -= + (((tmpReg & BMI_FIFO_SIZE_MASK) + 1) * BMI_FIFO_UNITS); + + /* clear registers */ + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_pp[hardwarePortId-1], 0); + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_pfs[hardwarePortId-1], 0); + /* WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_ppid[hardwarePortId-1], 0); */ + +#ifdef FM_PORT_DISABLED_ERRATA_FMANx9 + /* this errata means that when a port is taken down, other port may not use its + * resources for a while as it may still be using it (in case of reject). + */ + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + XX_UDelay(100000); + } +#endif /* FM_PORT_DISABLED_ERRATA_FMANx9 */ + +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT + if((p_PortParams->portType != e_FM_PORT_TYPE_RX) && (p_PortParams->portType != e_FM_PORT_TYPE_RX_10G)) + /* for transmit & O/H ports */ + { + uint8_t enqTh; + uint8_t deqTh; + + tmpReg = GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_gc); + /* update qmi ENQ/DEQ threshold */ + p_Fm->p_FmStateStruct->accumulatedNumOfDeqTnums -= p_PortParams->deqPipelineDepth; + + /* p_Fm->p_FmStateStruct->accumulatedNumOfDeqTnums is now smaller, + so we can enlarge enqTh */ + enqTh = (uint8_t)(QMI_MAX_NUM_OF_TNUMS - p_Fm->p_FmStateStruct->accumulatedNumOfDeqTnums - 1); + tmpReg &= ~QMI_CFG_ENQ_MASK; + tmpReg |= ((uint32_t)enqTh << QMI_CFG_ENQ_SHIFT); + + /* p_Fm->p_FmStateStruct->accumulatedNumOfDeqTnums is now smaller, + so we can reduce deqTh */ + deqTh = (uint8_t)(p_Fm->p_FmStateStruct->accumulatedNumOfDeqTnums + 1); + tmpReg &= ~QMI_CFG_DEQ_MASK; + tmpReg |= (uint32_t)deqTh; + + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_gc, tmpReg); + } +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ + +#ifdef FM_LOW_END_RESTRICTION + if((hardwarePortId==0x1) || (hardwarePortId==0x29)) + p_Fm->p_FmStateStruct->lowEndRestriction = FALSE; +#endif /* FM_LOW_END_RESTRICTION */ + XX_UnlockSpinlock(p_Fm->h_Spinlock); +} + +t_Error FmIsPortStalled(t_Handle h_Fm, uint8_t hardwarePortId, bool *p_IsStalled) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t tmpReg; + t_Error err; + t_FmIpcMsg msg; + t_FmIpcReply reply; + uint32_t replyLength; + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_IS_PORT_STALLED; + msg.msgBody[0] = hardwarePortId; + replyLength = sizeof(uint32_t) + sizeof(uint8_t); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId)+sizeof(hardwarePortId), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + if (replyLength != (sizeof(uint32_t) + sizeof(uint8_t))) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + + *p_IsStalled = (bool)!!(*(uint8_t*)(reply.replyBody)); + + return (t_Error)(reply.error); + } + + tmpReg = GET_UINT32(p_Fm->p_FmFpmRegs->fmfp_ps[hardwarePortId]); + *p_IsStalled = (bool)!!(tmpReg & FPM_PS_STALLED); + + return E_OK; +} + +t_Error FmResumeStalledPort(t_Handle h_Fm, uint8_t hardwarePortId) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t tmpReg; + t_Error err; + bool isStalled; + t_FmIpcMsg msg; + t_FmIpcReply reply; + uint32_t replyLength; + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_RESUME_STALLED_PORT; + msg.msgBody[0] = hardwarePortId; + replyLength = sizeof(uint32_t); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId) + sizeof(hardwarePortId), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + if (replyLength != sizeof(uint32_t)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + return (t_Error)(reply.error); + } + + /* Get port status */ + err = FmIsPortStalled(h_Fm, hardwarePortId, &isStalled); + if(err) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Can't get port status")); + if (!isStalled) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Port is not stalled")); + + tmpReg = (uint32_t)((hardwarePortId << FPM_PORT_FM_CTL_PORTID_SHIFT) | FPM_PRC_REALSE_STALLED); + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmpr, tmpReg); + + return E_OK; +} + +t_Error FmResetMac(t_Handle h_Fm, e_FmMacType type, uint8_t macId) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t bitMask, timeout = 1000; + t_FmIpcMacParams macParams; + t_Error err; + t_FmIpcMsg msg; + t_FmIpcReply reply; + uint32_t replyLength; + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + if(p_Fm->h_IpcSessions[0]) + { + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + macParams.id = macId; + macParams.enumType = (uint32_t)type; + msg.msgId = FM_RESET_MAC; + memcpy(msg.msgBody, &macParams, sizeof(macParams)); + replyLength = sizeof(uint32_t); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId)+sizeof(macParams), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + if (replyLength != sizeof(uint32_t)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + return (t_Error)(reply.error); + } + else + if(!p_Fm->p_FmFpmRegs) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("No IPC and no registers address")); + } + + /* Get the relevant bit mask */ + if (type == e_FM_MAC_10G) + { + switch(macId) + { + case(0): + bitMask = FPM_RSTC_10G0_RESET; + break; + default: + RETURN_ERROR(MINOR, E_INVALID_VALUE, ("Illegal MAC Id")); + } + } + else + { + switch(macId) + { + case(0): + bitMask = FPM_RSTC_1G0_RESET; + break; + case(1): + bitMask = FPM_RSTC_1G1_RESET; + break; + case(2): + bitMask = FPM_RSTC_1G2_RESET; + break; + case(3): + bitMask = FPM_RSTC_1G3_RESET; + break; + case(4): + bitMask = FPM_RSTC_1G4_RESET; + break; + default: + RETURN_ERROR(MINOR, E_INVALID_VALUE, ("Illegal MAC Id")); + } + } + + /* reset */ + WRITE_UINT32(p_Fm->p_FmFpmRegs->fmrstc, bitMask); + while ((GET_UINT32(p_Fm->p_FmFpmRegs->fmrstc) & bitMask) && + --timeout) ; + if (!timeout) + return ERROR_CODE(E_TIMEOUT); + return E_OK; +} + +t_Error FmSetMacMaxFrame(t_Handle h_Fm, e_FmMacType type, uint8_t macId, uint16_t mtu) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + t_FmIpcMacMaxFrameParams macMaxFrameLengthParams; + t_Error err; + t_FmIpcMsg msg; + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + macMaxFrameLengthParams.macParams.id = macId; + macMaxFrameLengthParams.macParams.enumType = (uint32_t)type; + macMaxFrameLengthParams.maxFrameLength = (uint16_t)mtu; + msg.msgId = FM_SET_MAC_MAX_FRAME; + memcpy(msg.msgBody, &macMaxFrameLengthParams, sizeof(macMaxFrameLengthParams)); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId)+sizeof(macMaxFrameLengthParams), + NULL, + NULL, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + return E_OK; + } + +#if (defined(FM_MAX_NUM_OF_10G_MACS) && (FM_MAX_NUM_OF_10G_MACS)) + if (type == e_FM_MAC_10G) + p_Fm->p_FmStateStruct->macMaxFrameLengths10G[macId] = mtu; + else +#else + UNUSED(type); +#endif /* (defined(FM_MAX_NUM_OF_10G_MACS) && ... */ + p_Fm->p_FmStateStruct->macMaxFrameLengths1G[macId] = mtu; + + return E_OK; +} + +uint16_t FmGetClockFreq(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + /* for MC environment: this depends on the + * fact that fmClkFreq was properly initialized at "init". */ + return p_Fm->p_FmStateStruct->fmClkFreq; +} + +uint32_t FmGetTimeStampScale(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + t_Error err; + t_FmIpcMsg msg; + t_FmIpcReply reply; + uint32_t replyLength, timeStamp; + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_GET_TIMESTAMP_SCALE; + replyLength = sizeof(uint32_t) + sizeof(uint32_t); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + if(replyLength != (sizeof(uint32_t) + sizeof(uint32_t))) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + + memcpy((uint8_t*)&timeStamp, reply.replyBody, sizeof(uint32_t)); + return timeStamp; + } + + if(!p_Fm->p_FmStateStruct->enabledTimeStamp) + FmEnableTimeStamp(p_Fm); + + return p_Fm->p_FmStateStruct->count1MicroBit; +} + +bool FmRamsEccIsExternalCtl(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t tmpReg; + + tmpReg = GET_UINT32(p_Fm->p_FmFpmRegs->fmrcr); + if(tmpReg & FPM_RAM_CTL_RAMS_ECC_EN_SRC_SEL) + return TRUE; + else + return FALSE; +} + +t_Error FmEnableRamsEcc(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + + p_Fm->p_FmStateStruct->ramsEccOwners++; + p_Fm->p_FmStateStruct->internalCall = TRUE; + + return FM_EnableRamsEcc(p_Fm); +} + +t_Error FmDisableRamsEcc(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + + ASSERT_COND(p_Fm->p_FmStateStruct->ramsEccOwners); + p_Fm->p_FmStateStruct->ramsEccOwners--; + + if(p_Fm->p_FmStateStruct->ramsEccOwners==0) + { + p_Fm->p_FmStateStruct->internalCall = TRUE; + return FM_DisableRamsEcc(p_Fm); + } + return E_OK; +} + +uint8_t FmGetGuestId(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + return p_Fm->guestId; +} + +bool FmIsMaster(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + return (p_Fm->guestId == NCSW_MASTER_ID); +} + +t_Error FmSetSizeOfFifo(t_Handle h_Fm, + uint8_t hardwarePortId, + e_FmPortType portType, + bool independentMode, + uint32_t *p_SizeOfFifo, + uint32_t extraSizeOfFifo, + uint8_t deqPipelineDepth, + t_FmInterModulePortRxPoolsParams *p_RxPoolsParams, + bool initialConfig) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint8_t relativePortId; + uint16_t macMaxFrameLength = 0, oldVal; + uint32_t minFifoSizeRequired = 0, sizeOfFifo, tmpReg = 0; + t_FmIpcPortFifoParams fifoParams; + t_Error err; + + ASSERT_COND(IN_RANGE(1, hardwarePortId, 63)); + ASSERT_COND(initialConfig || p_RxPoolsParams); + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + t_FmIpcMsg msg; + t_FmIpcReply reply; + uint32_t replyLength; + + ASSERT_COND(p_RxPoolsParams); + + memset(&fifoParams, 0, sizeof(fifoParams)); + fifoParams.rsrcParams.hardwarePortId = hardwarePortId; + fifoParams.rsrcParams.val = *p_SizeOfFifo; + fifoParams.rsrcParams.extra = extraSizeOfFifo; + fifoParams.enumPortType = (uint32_t)portType; + fifoParams.boolIndependentMode = (uint8_t)independentMode; + fifoParams.deqPipelineDepth = deqPipelineDepth; + fifoParams.numOfPools = p_RxPoolsParams->numOfPools; + fifoParams.secondLargestBufSize = p_RxPoolsParams->secondLargestBufSize; + fifoParams.largestBufSize = p_RxPoolsParams->largestBufSize; + fifoParams.boolInitialConfig = (uint8_t)initialConfig; + + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_SET_SIZE_OF_FIFO; + memcpy(msg.msgBody, &fifoParams, sizeof(fifoParams)); + replyLength = sizeof(uint32_t) + sizeof(uint32_t); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId) + sizeof(fifoParams), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + if (replyLength != (sizeof(uint32_t) + sizeof(uint32_t))) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + memcpy((uint8_t*)p_SizeOfFifo, reply.replyBody, sizeof(uint32_t)); + + return (t_Error)(reply.error); + } + sizeOfFifo = *p_SizeOfFifo; + /* if neseccary (cases where frame length is relevant), update sizeOfFifo field. */ + if((portType == e_FM_PORT_TYPE_TX) || ((portType == e_FM_PORT_TYPE_RX) && independentMode)) + { + HW_PORT_ID_TO_SW_PORT_ID(relativePortId, hardwarePortId); + ASSERT_COND(relativePortId < FM_MAX_NUM_OF_1G_MACS); + macMaxFrameLength = p_Fm->p_FmStateStruct->macMaxFrameLengths1G[relativePortId]; + } + +#if (defined(FM_MAX_NUM_OF_10G_MACS) && (FM_MAX_NUM_OF_10G_MACS)) + if((portType == e_FM_PORT_TYPE_TX_10G) || ((portType == e_FM_PORT_TYPE_RX_10G) && independentMode)) + { + HW_PORT_ID_TO_SW_PORT_ID(relativePortId, hardwarePortId); + ASSERT_COND(relativePortId < FM_MAX_NUM_OF_10G_MACS); + macMaxFrameLength = p_Fm->p_FmStateStruct->macMaxFrameLengths10G[relativePortId]; + } +#endif /* (defined(FM_MAX_NUM_OF_10G_MACS) && ... */ + + /*************************/ + /* TX PORTS */ + /*************************/ + if((portType == e_FM_PORT_TYPE_TX) || (portType == e_FM_PORT_TYPE_TX_10G)) + { + if(independentMode) + minFifoSizeRequired = (uint32_t)((macMaxFrameLength % BMI_FIFO_UNITS ? + (macMaxFrameLength/BMI_FIFO_UNITS + 1) * BMI_FIFO_UNITS : + macMaxFrameLength) + + (3*BMI_FIFO_UNITS)); + else + minFifoSizeRequired = (uint32_t)((macMaxFrameLength % BMI_FIFO_UNITS ? + (macMaxFrameLength/BMI_FIFO_UNITS + 1) * BMI_FIFO_UNITS : + macMaxFrameLength) + + (deqPipelineDepth+3)*BMI_FIFO_UNITS); + } + /*************************/ + /* RX IM PORTS */ + /*************************/ + else if(((portType == e_FM_PORT_TYPE_RX) || (portType == e_FM_PORT_TYPE_RX_10G)) && independentMode) + minFifoSizeRequired = (uint32_t)(((macMaxFrameLength % BMI_FIFO_UNITS) ? + ((macMaxFrameLength/BMI_FIFO_UNITS + 1) * BMI_FIFO_UNITS) : + macMaxFrameLength) + + (4*BMI_FIFO_UNITS)); + + /* for Rx (non-Im) ports or OP, buffer pools are relevant for fifo size. + If this routine is called as part of the "GetSet" routine, initialConfig is TRUE + and these checks where done in the port routine. + If it is called by an explicit user request ("SetSizeOfFifo"), than these parameters + should be checked/updated */ + if(!initialConfig && + ((portType == e_FM_PORT_TYPE_OH_OFFLINE_PARSING) || + (((portType == e_FM_PORT_TYPE_RX) || (portType == e_FM_PORT_TYPE_RX_10G)) && !independentMode))) + { + if((portType == e_FM_PORT_TYPE_RX) || (portType == e_FM_PORT_TYPE_RX_10G)) + { + /*************************/ + /* RX non-IM PORTS */ + /*************************/ +#ifdef FM_FIFO_ALLOCATION_OLD_ALG + t_FmRevisionInfo revInfo; + + FM_GetRevision(p_Fm, &revInfo); + if(revInfo.majorRev != 4) + minFifoSizeRequired = (uint32_t)(((p_RxPoolsParams->largestBufSize % BMI_FIFO_UNITS) ? + ((p_RxPoolsParams->largestBufSize/BMI_FIFO_UNITS + 1) * BMI_FIFO_UNITS) : + p_RxPoolsParams->largestBufSize) + + (7*BMI_FIFO_UNITS)); + else +#endif /* FM_FIFO_ALLOCATION_OLD_ALG */ + { + if(p_RxPoolsParams->numOfPools == 1) + minFifoSizeRequired = 8*BMI_FIFO_UNITS; + else + { + minFifoSizeRequired = (uint32_t)(((p_RxPoolsParams->secondLargestBufSize % BMI_FIFO_UNITS) ? + ((p_RxPoolsParams->secondLargestBufSize/BMI_FIFO_UNITS + 1) * BMI_FIFO_UNITS) : + p_RxPoolsParams->secondLargestBufSize) + + (7*BMI_FIFO_UNITS)); + if((sizeOfFifo < minFifoSizeRequired)) + { + DBG(WARNING, ("User set FIFO size for Rx port is not optimized. (not modified by driver)")); + minFifoSizeRequired = 8*BMI_FIFO_UNITS; + } + } + } + } + else + { + /*************************/ + /* OP PORTS */ + /*************************/ + /* check if pool size is not too big */ + if(p_RxPoolsParams->largestBufSize > sizeOfFifo ) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Largest pool size is bigger than ports committed fifo size")); + } + } + + + if (minFifoSizeRequired && (sizeOfFifo < minFifoSizeRequired)) + { + sizeOfFifo = minFifoSizeRequired; + DBG(WARNING, ("FIFO size enlarged to %d for port %#x", minFifoSizeRequired, hardwarePortId)); + } + + if(initialConfig) + oldVal = 0; + else + { + tmpReg = GET_UINT32(p_Fm->p_FmBmiRegs->fmbm_pfs[hardwarePortId-1]); + /* read into oldVal the current extra fifo size */ + oldVal = (uint16_t)((((tmpReg & BMI_EXTRA_FIFO_SIZE_MASK) + 1)*BMI_FIFO_UNITS) >> BMI_EXTRA_FIFO_SIZE_SHIFT); + } + + if(extraSizeOfFifo > oldVal) + p_Fm->p_FmStateStruct->extraFifoPoolSize = MAX(p_Fm->p_FmStateStruct->extraFifoPoolSize, extraSizeOfFifo); + + if(!initialConfig) + /* read into oldVal the current num of tasks */ + oldVal = (uint16_t)(((tmpReg & BMI_FIFO_SIZE_MASK) + 1)*BMI_FIFO_UNITS); + + /* check that there are enough uncommitted fifo size */ + if((p_Fm->p_FmStateStruct->accumulatedFifoSize - oldVal + sizeOfFifo) > + (p_Fm->p_FmStateStruct->totalFifoSize - p_Fm->p_FmStateStruct->extraFifoPoolSize)) + RETURN_ERROR(MAJOR, E_NOT_AVAILABLE, ("Requested fifo size and extra size exceed total FIFO size.")); + else + { + /* update acummulated */ + ASSERT_COND(p_Fm->p_FmStateStruct->accumulatedFifoSize >= oldVal); + p_Fm->p_FmStateStruct->accumulatedFifoSize -= oldVal; + p_Fm->p_FmStateStruct->accumulatedFifoSize += sizeOfFifo; + /* calculate reg */ + tmpReg = (uint32_t)((sizeOfFifo/BMI_FIFO_UNITS - 1) | + ((extraSizeOfFifo/BMI_FIFO_UNITS) << BMI_EXTRA_FIFO_SIZE_SHIFT)); + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_pfs[hardwarePortId-1], tmpReg); + } + *p_SizeOfFifo = sizeOfFifo; + + return E_OK; +} + +t_Error FmSetNumOfTasks(t_Handle h_Fm, + uint8_t hardwarePortId, + uint8_t numOfTasks, + uint8_t numOfExtraTasks, + bool initialConfig) +{ + t_Fm *p_Fm = (t_Fm *)h_Fm; + uint8_t oldVal; + uint32_t tmpReg = 0; + t_FmIpcPortRsrcParams rsrcParams; + t_Error err; + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + t_FmIpcMsg msg; + t_FmIpcReply reply; + uint32_t replyLength; + + rsrcParams.hardwarePortId = hardwarePortId; + rsrcParams.val = numOfTasks; + rsrcParams.extra = numOfExtraTasks; + rsrcParams.boolInitialConfig = (uint8_t)initialConfig; + + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_SET_NUM_OF_TASKS; + memcpy(msg.msgBody, &rsrcParams, sizeof(rsrcParams)); + replyLength = sizeof(uint32_t); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId) + sizeof(rsrcParams), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + if (replyLength != sizeof(uint32_t)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + return (t_Error)(reply.error); + } + + ASSERT_COND(IN_RANGE(1, hardwarePortId, 63)); + + if(initialConfig) + oldVal = 0; + else + { + tmpReg = GET_UINT32(p_Fm->p_FmBmiRegs->fmbm_pp[hardwarePortId-1]); + /* read into oldVal the current extra tasks */ + oldVal = (uint8_t)((tmpReg & BMI_NUM_OF_EXTRA_TASKS_MASK) >> BMI_EXTRA_NUM_OF_TASKS_SHIFT); + } + + if(numOfExtraTasks > oldVal) + p_Fm->p_FmStateStruct->extraTasksPoolSize = (uint8_t)MAX(p_Fm->p_FmStateStruct->extraTasksPoolSize, numOfExtraTasks); + + if(!initialConfig) + /* read into oldVal the current num of tasks */ + oldVal = (uint8_t)(((tmpReg & BMI_NUM_OF_TASKS_MASK) >> BMI_NUM_OF_TASKS_SHIFT) + 1); + + /* check that there are enough uncommitted tasks */ + if((p_Fm->p_FmStateStruct->accumulatedNumOfTasks - oldVal + numOfTasks) > + (p_Fm->p_FmStateStruct->totalNumOfTasks - p_Fm->p_FmStateStruct->extraTasksPoolSize)) + RETURN_ERROR(MAJOR, E_NOT_AVAILABLE, + ("Requested numOfTasks and extra tasks pool for fm%d exceed total numOfTasks.", + p_Fm->p_FmStateStruct->fmId)); + else + { + ASSERT_COND(p_Fm->p_FmStateStruct->accumulatedNumOfTasks >= oldVal); + /* update acummulated */ + p_Fm->p_FmStateStruct->accumulatedNumOfTasks -= oldVal; + p_Fm->p_FmStateStruct->accumulatedNumOfTasks += numOfTasks; + /* calculate reg */ + tmpReg = GET_UINT32(p_Fm->p_FmBmiRegs->fmbm_pp[hardwarePortId-1]) & ~(BMI_NUM_OF_TASKS_MASK | BMI_NUM_OF_EXTRA_TASKS_MASK); + tmpReg |= (uint32_t)(((numOfTasks-1) << BMI_NUM_OF_TASKS_SHIFT) | + (numOfExtraTasks << BMI_EXTRA_NUM_OF_TASKS_SHIFT)); + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_pp[hardwarePortId-1],tmpReg); + } + + return E_OK; +} + +t_Error FmSetNumOfOpenDmas(t_Handle h_Fm, + uint8_t hardwarePortId, + uint8_t numOfOpenDmas, + uint8_t numOfExtraOpenDmas, + bool initialConfig) + +{ + t_Fm *p_Fm = (t_Fm *)h_Fm; + uint8_t oldVal; + uint32_t tmpReg = 0; + t_FmIpcPortRsrcParams rsrcParams; + t_Error err; + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + t_FmIpcMsg msg; + t_FmIpcReply reply; + uint32_t replyLength; + + rsrcParams.hardwarePortId = hardwarePortId; + rsrcParams.val = numOfOpenDmas; + rsrcParams.extra = numOfExtraOpenDmas; + rsrcParams.boolInitialConfig = (uint8_t)initialConfig; + + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_SET_NUM_OF_OPEN_DMAS; + memcpy(msg.msgBody, &rsrcParams, sizeof(rsrcParams)); + replyLength = sizeof(uint32_t); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId) + sizeof(rsrcParams), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + if (replyLength != sizeof(uint32_t)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + return (t_Error)(reply.error); + } + + ASSERT_COND(IN_RANGE(1, hardwarePortId, 63)); + + if(initialConfig) + oldVal = 0; + else + { + tmpReg = GET_UINT32(p_Fm->p_FmBmiRegs->fmbm_pp[hardwarePortId-1]); + /* read into oldVal the current extra tasks */ + oldVal = (uint8_t)((tmpReg & BMI_NUM_OF_EXTRA_DMAS_MASK) >> BMI_EXTRA_NUM_OF_DMAS_SHIFT); + } + + if(numOfExtraOpenDmas > oldVal) + p_Fm->p_FmStateStruct->extraOpenDmasPoolSize = (uint8_t)MAX(p_Fm->p_FmStateStruct->extraOpenDmasPoolSize, numOfExtraOpenDmas); + + if(!initialConfig) + /* read into oldVal the current num of tasks */ + oldVal = (uint8_t)(((tmpReg & BMI_NUM_OF_DMAS_MASK) >> BMI_NUM_OF_DMAS_SHIFT) + 1); + + /* check that there are enough uncommitted open DMA's */ + ASSERT_COND(p_Fm->p_FmStateStruct->accumulatedNumOfOpenDmas >= oldVal); + if((p_Fm->p_FmStateStruct->accumulatedNumOfOpenDmas - oldVal + numOfOpenDmas) > + p_Fm->p_FmStateStruct->maxNumOfOpenDmas) + RETURN_ERROR(MAJOR, E_NOT_AVAILABLE, + ("Requested numOfOpenDmas for fm%d exceeds total numOfOpenDmas.", + p_Fm->p_FmStateStruct->fmId)); + else + { + /* update acummulated */ + p_Fm->p_FmStateStruct->accumulatedNumOfOpenDmas -= oldVal; + p_Fm->p_FmStateStruct->accumulatedNumOfOpenDmas += numOfOpenDmas; + /* calculate reg */ + tmpReg = GET_UINT32(p_Fm->p_FmBmiRegs->fmbm_pp[hardwarePortId-1]) & ~(BMI_NUM_OF_DMAS_MASK | BMI_NUM_OF_EXTRA_DMAS_MASK); + tmpReg |= (uint32_t)(((numOfOpenDmas-1) << BMI_NUM_OF_DMAS_SHIFT) | + (numOfExtraOpenDmas << BMI_EXTRA_NUM_OF_DMAS_SHIFT)); + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_pp[hardwarePortId-1], tmpReg); + + /* update total num of DMA's with committed number of open DMAS, and max uncommitted pool. */ + tmpReg = GET_UINT32(p_Fm->p_FmBmiRegs->fmbm_cfg2) & ~BMI_CFG2_DMAS_MASK; + tmpReg |= (uint32_t)(p_Fm->p_FmStateStruct->accumulatedNumOfOpenDmas + p_Fm->p_FmStateStruct->extraOpenDmasPoolSize - 1) << BMI_CFG2_DMAS_SHIFT; + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_cfg2, tmpReg); + } + + return E_OK; +} + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +t_Error FmDumpPortRegs (t_Handle h_Fm,uint8_t hardwarePortId) +{ + t_Fm *p_Fm = (t_Fm *)h_Fm; + t_FmIpcMsg msg; + t_Error err; + + DECLARE_DUMP; + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_DUMP_PORT_REGS; + msg.msgBody[0] = hardwarePortId; + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId)+sizeof(hardwarePortId), + NULL, + NULL, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + return E_OK; + } + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + + DUMP_TITLE(&p_Fm->p_FmBmiRegs->fmbm_pp[hardwarePortId-1], ("fmbm_pp for port %u", (hardwarePortId))); + DUMP_MEMORY(&p_Fm->p_FmBmiRegs->fmbm_pp[hardwarePortId-1], sizeof(uint32_t)); + + DUMP_TITLE(&p_Fm->p_FmBmiRegs->fmbm_pfs[hardwarePortId-1], ("fmbm_pfs for port %u", (hardwarePortId ))); + DUMP_MEMORY(&p_Fm->p_FmBmiRegs->fmbm_pfs[hardwarePortId-1], sizeof(uint32_t)); + + DUMP_TITLE(&p_Fm->p_FmBmiRegs->fmbm_ppid[hardwarePortId-1], ("bm_ppid for port %u", (hardwarePortId))); + DUMP_MEMORY(&p_Fm->p_FmBmiRegs->fmbm_ppid[hardwarePortId-1], sizeof(uint32_t)); + + return E_OK; +} +#endif /* (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) */ + + +/*****************************************************************************/ +/* API Init unit functions */ +/*****************************************************************************/ +t_Handle FM_Config(t_FmParams *p_FmParam) +{ + t_Fm *p_Fm; + uint8_t i; + uintptr_t baseAddr; + + SANITY_CHECK_RETURN_VALUE(p_FmParam, E_NULL_POINTER, NULL); + SANITY_CHECK_RETURN_VALUE(((p_FmParam->firmware.p_Code && p_FmParam->firmware.size) || + (!p_FmParam->firmware.p_Code && !p_FmParam->firmware.size)), + E_INVALID_VALUE, NULL); + + baseAddr = p_FmParam->baseAddr; + + /* Allocate FM structure */ + p_Fm = (t_Fm *) XX_Malloc(sizeof(t_Fm)); + if (!p_Fm) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM driver structure")); + return NULL; + } + memset(p_Fm, 0, sizeof(t_Fm)); + + p_Fm->p_FmStateStruct = (t_FmStateStruct *) XX_Malloc(sizeof(t_FmStateStruct)); + if (!p_Fm->p_FmStateStruct) + { + XX_Free(p_Fm); + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM Status structure")); + return NULL; + } + memset(p_Fm->p_FmStateStruct, 0, sizeof(t_FmStateStruct)); + + /* Initialize FM parameters which will be kept by the driver */ + p_Fm->p_FmStateStruct->fmId = p_FmParam->fmId; + p_Fm->guestId = p_FmParam->guestId; + + for(i=0; ip_FmStateStruct->portsTypes[i] = e_FM_PORT_TYPE_DUMMY; + + /* Allocate the FM driver's parameters structure */ + p_Fm->p_FmDriverParam = (t_FmDriverParam *)XX_Malloc(sizeof(t_FmDriverParam)); + if (!p_Fm->p_FmDriverParam) + { + XX_Free(p_Fm->p_FmStateStruct); + XX_Free(p_Fm); + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM driver parameters")); + return NULL; + } + memset(p_Fm->p_FmDriverParam, 0, sizeof(t_FmDriverParam)); + + /* Initialize FM parameters which will be kept by the driver */ + p_Fm->p_FmStateStruct->fmId = p_FmParam->fmId; + p_Fm->h_FmMuram = p_FmParam->h_FmMuram; + p_Fm->h_App = p_FmParam->h_App; + p_Fm->p_FmStateStruct->fmClkFreq = p_FmParam->fmClkFreq; + p_Fm->f_Exception = p_FmParam->f_Exception; + p_Fm->f_BusError = p_FmParam->f_BusError; + p_Fm->p_FmFpmRegs = (t_FmFpmRegs *)UINT_TO_PTR(baseAddr + FM_MM_FPM); + p_Fm->p_FmBmiRegs = (t_FmBmiRegs *)UINT_TO_PTR(baseAddr + FM_MM_BMI); + p_Fm->p_FmQmiRegs = (t_FmQmiRegs *)UINT_TO_PTR(baseAddr + FM_MM_QMI); + p_Fm->p_FmDmaRegs = (t_FmDmaRegs *)UINT_TO_PTR(baseAddr + FM_MM_DMA); + p_Fm->baseAddr = baseAddr; + p_Fm->p_FmStateStruct->irq = p_FmParam->irq; + p_Fm->p_FmStateStruct->errIrq = p_FmParam->errIrq; + p_Fm->hcPortInitialized = FALSE; + p_Fm->independentMode = FALSE; + p_Fm->p_FmStateStruct->ramsEccEnable = FALSE; + p_Fm->p_FmStateStruct->totalNumOfTasks = DEFAULT_totalNumOfTasks; + p_Fm->p_FmStateStruct->totalFifoSize = DEFAULT_totalFifoSize; + p_Fm->p_FmStateStruct->maxNumOfOpenDmas = DEFAULT_maxNumOfOpenDmas; + p_Fm->p_FmStateStruct->extraFifoPoolSize = FM_MAX_NUM_OF_RX_PORTS*BMI_FIFO_UNITS; + p_Fm->p_FmStateStruct->exceptions = DEFAULT_exceptions; + for(i = 0;ip_FmStateStruct->macMaxFrameLengths1G[i] = DEFAULT_mtu; +#if defined(FM_MAX_NUM_OF_10G_MACS) && (FM_MAX_NUM_OF_10G_MACS) + for(i = 0;ip_FmStateStruct->macMaxFrameLengths10G[i] = DEFAULT_mtu; +#endif /*defined(FM_MAX_NUM_OF_10G_MACS) && (FM_MAX_NUM_OF_10G_MACS)*/ + + p_Fm->h_Spinlock = XX_InitSpinlock(); + if (!p_Fm->h_Spinlock) + { + XX_Free(p_Fm->p_FmDriverParam); + XX_Free(p_Fm->p_FmStateStruct); + XX_Free(p_Fm); + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("cant allocate spinlock!")); + return NULL; + } + +#ifdef FM_PARTITION_ARRAY + /* Initialize FM driver parameters parameters (for initialization phase only) */ + memcpy(p_Fm->p_FmDriverParam->liodnBasePerPort, p_FmParam->liodnBasePerPort, FM_SIZE_OF_LIODN_TABLE*sizeof(uint16_t)); +#endif /* FM_PARTITION_ARRAY */ + + /*p_Fm->p_FmDriverParam->numOfPartitions = p_FmParam->numOfPartitions; */ + p_Fm->p_FmDriverParam->enCounters = FALSE; + + p_Fm->p_FmDriverParam->resetOnInit = DEFAULT_resetOnInit; + + p_Fm->p_FmDriverParam->thresholds.dispLimit = DEFAULT_dispLimit; + p_Fm->p_FmDriverParam->thresholds.prsDispTh = DEFAULT_prsDispTh; + p_Fm->p_FmDriverParam->thresholds.plcrDispTh = DEFAULT_plcrDispTh; + p_Fm->p_FmDriverParam->thresholds.kgDispTh = DEFAULT_kgDispTh; + p_Fm->p_FmDriverParam->thresholds.bmiDispTh = DEFAULT_bmiDispTh; + p_Fm->p_FmDriverParam->thresholds.qmiEnqDispTh = DEFAULT_qmiEnqDispTh; + p_Fm->p_FmDriverParam->thresholds.qmiDeqDispTh = DEFAULT_qmiDeqDispTh; + p_Fm->p_FmDriverParam->thresholds.fmCtl1DispTh = DEFAULT_fmCtl1DispTh; + p_Fm->p_FmDriverParam->thresholds.fmCtl2DispTh = DEFAULT_fmCtl2DispTh; + + p_Fm->p_FmDriverParam->dmaStopOnBusError = DEFAULT_dmaStopOnBusError; + + p_Fm->p_FmDriverParam->dmaCacheOverride = DEFAULT_cacheOverride; + p_Fm->p_FmDriverParam->dmaAidMode = DEFAULT_aidMode; + p_Fm->p_FmDriverParam->dmaAidOverride = DEFAULT_aidOverride; + p_Fm->p_FmDriverParam->dmaAxiDbgNumOfBeats = DEFAULT_axiDbgNumOfBeats; + p_Fm->p_FmDriverParam->dmaCamNumOfEntries = DEFAULT_dmaCamNumOfEntries; + p_Fm->p_FmDriverParam->dmaWatchdog = DEFAULT_dmaWatchdog; + + p_Fm->p_FmDriverParam->dmaCommQThresholds.clearEmergency = DEFAULT_dmaCommQLow; + p_Fm->p_FmDriverParam->dmaCommQThresholds.assertEmergency = DEFAULT_dmaCommQHigh; + p_Fm->p_FmDriverParam->dmaReadBufThresholds.clearEmergency = DEFAULT_dmaReadIntBufLow; + p_Fm->p_FmDriverParam->dmaReadBufThresholds.assertEmergency = DEFAULT_dmaReadIntBufHigh; + p_Fm->p_FmDriverParam->dmaWriteBufThresholds.clearEmergency = DEFAULT_dmaWriteIntBufLow; + p_Fm->p_FmDriverParam->dmaWriteBufThresholds.assertEmergency = DEFAULT_dmaWriteIntBufHigh; + p_Fm->p_FmDriverParam->dmaSosEmergency = DEFAULT_dmaSosEmergency; + + p_Fm->p_FmDriverParam->dmaDbgCntMode = DEFAULT_dmaDbgCntMode; + + p_Fm->p_FmDriverParam->dmaEnEmergency = FALSE; + p_Fm->p_FmDriverParam->dmaEnEmergencySmoother = FALSE; + p_Fm->p_FmDriverParam->catastrophicErr = DEFAULT_catastrophicErr; + p_Fm->p_FmDriverParam->dmaErr = DEFAULT_dmaErr; + p_Fm->p_FmDriverParam->haltOnExternalActivation = DEFAULT_haltOnExternalActivation; + p_Fm->p_FmDriverParam->haltOnUnrecoverableEccError = DEFAULT_haltOnUnrecoverableEccError; + p_Fm->p_FmDriverParam->enIramTestMode = FALSE; + p_Fm->p_FmDriverParam->enMuramTestMode = FALSE; + p_Fm->p_FmDriverParam->externalEccRamsEnable = DEFAULT_externalEccRamsEnable; + + p_Fm->p_FmDriverParam->fwVerify = DEFAULT_VerifyUcode; + p_Fm->p_FmDriverParam->firmware.size = p_FmParam->firmware.size; + if (p_Fm->p_FmDriverParam->firmware.size) + { + p_Fm->p_FmDriverParam->firmware.p_Code = (uint32_t *)XX_Malloc(p_Fm->p_FmDriverParam->firmware.size); + if (!p_Fm->p_FmDriverParam->firmware.p_Code) + { + XX_FreeSpinlock(p_Fm->h_Spinlock); + XX_Free(p_Fm->p_FmStateStruct); + XX_Free(p_Fm->p_FmDriverParam); + XX_Free(p_Fm); + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM firmware code")); + return NULL; + } + memcpy(p_Fm->p_FmDriverParam->firmware.p_Code, p_FmParam->firmware.p_Code, p_Fm->p_FmDriverParam->firmware.size); + } + + return p_Fm; +} + +/**************************************************************************//** + @Function FM_Init + + @Description Initializes the FM module + + @Param[in] h_Fm - FM module descriptor + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_Init(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + t_FmDriverParam *p_FmDriverParam = NULL; + t_Error err = E_OK; + uint32_t tmpReg, cfgReg = 0; + int i; + uint16_t periodInFmClocks; + uint8_t remainder; + t_FmRevisionInfo revInfo; + + SANITY_CHECK_RETURN_ERROR(h_Fm, E_INVALID_HANDLE); + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + uint8_t isMasterAlive; + t_FmIpcMsg msg; + t_FmIpcReply reply; + uint32_t replyLength; + + /* build the FM guest partition IPC address */ + if(Sprint (p_Fm->fmModuleName, "FM_%d_%d",p_Fm->p_FmStateStruct->fmId, p_Fm->guestId) != (p_Fm->guestId<10 ? 6:7)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Sprint failed")); + + /* build the FM master partition IPC address */ + memset(p_Fm->fmIpcHandlerModuleName, 0, (sizeof(char)) * MODULE_NAME_SIZE); + if(Sprint (p_Fm->fmIpcHandlerModuleName[0], "FM_%d_%d",p_Fm->p_FmStateStruct->fmId, NCSW_MASTER_ID) != 6) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Sprint failed")); + + for(i=0;iintrMng[i].f_Isr = UnimplementedIsr; + + p_Fm->h_IpcSessions[0] = XX_IpcInitSession(p_Fm->fmIpcHandlerModuleName[0], p_Fm->fmModuleName); + if (p_Fm->h_IpcSessions[0]) + { + err = XX_IpcRegisterMsgHandler(p_Fm->fmModuleName, FmGuestHandleIpcMsgCB, p_Fm, FM_IPC_MAX_REPLY_SIZE); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_MASTER_IS_ALIVE; + msg.msgBody[0] = p_Fm->guestId; + replyLength = sizeof(uint32_t) + sizeof(uint8_t); + do + { + blockingFlag = TRUE; + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId)+sizeof(p_Fm->guestId), + (uint8_t*)&reply, + &replyLength, + IpcMsgCompletionCB, + h_Fm)) != E_OK) + REPORT_ERROR(MINOR, err, NO_MSG); + while(blockingFlag) ; + if(replyLength != (sizeof(uint32_t) + sizeof(uint8_t))) + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + isMasterAlive = *(uint8_t*)(reply.replyBody); + } while (!isMasterAlive); + + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_GET_CLK_FREQ; + replyLength = sizeof(uint32_t) + sizeof(p_Fm->p_FmStateStruct->fmClkFreq); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + if(replyLength != (sizeof(uint32_t) + sizeof(p_Fm->p_FmStateStruct->fmClkFreq))) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + memcpy((uint8_t*)&p_Fm->p_FmStateStruct->fmClkFreq, reply.replyBody, sizeof(uint16_t)); + } + else + { + DBG(WARNING, ("FM Guest mode - without IPC")); + if(!p_Fm->p_FmStateStruct->fmClkFreq ) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("No fmClkFreq configured for guest without IPC")); + if(!p_Fm->baseAddr) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("No baseAddr configured for guest without IPC")); + } + + XX_Free(p_Fm->p_FmDriverParam); + p_Fm->p_FmDriverParam = NULL; + + if ((p_Fm->guestId == NCSW_MASTER_ID) || + (p_Fm->h_IpcSessions[0])) + { + FM_DisableRamsEcc(p_Fm); + FmMuramClear(p_Fm->h_FmMuram); + FM_EnableRamsEcc(p_Fm); + } + + return E_OK; + } + + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + FM_GetRevision(p_Fm, &revInfo); + +#ifdef FM_NO_DISPATCH_RAM_ECC + if (revInfo.majorRev != 4) + p_Fm->p_FmStateStruct->exceptions &= ~FM_EX_BMI_DISPATCH_RAM_ECC; +#endif /* FM_NO_DISPATCH_RAM_ECC */ + +#ifdef FM_RAM_LIST_ERR_IRQ_ERRATA_FMAN8 + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + p_Fm->p_FmStateStruct->exceptions &= ~FM_EX_BMI_LIST_RAM_ECC; +#endif /* FM_RAM_LIST_ERR_IRQ_ERRATA_FMAN8 */ + +#ifdef FM_BMI_PIPELINE_ERR_IRQ_ERRATA_FMAN9 + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + p_Fm->p_FmStateStruct->exceptions &= ~FM_EX_BMI_PIPELINE_ECC; +#endif /* FM_BMI_PIPELINE_ERR_IRQ_ERRATA_FMAN9 */ + +#ifdef FM_QMI_NO_ECC_EXCEPTIONS + if (revInfo.majorRev == 4) + p_Fm->p_FmStateStruct->exceptions &= ~(FM_EX_QMI_SINGLE_ECC | FM_EX_QMI_DOUBLE_ECC); +#endif /* FM_QMI_NO_ECC_EXCEPTIONS */ + + CHECK_INIT_PARAMETERS(p_Fm, CheckFmParameters); + + p_FmDriverParam = p_Fm->p_FmDriverParam; + + FmMuramClear(p_Fm->h_FmMuram); + +#ifdef FM_UCODE_NOT_RESET_ERRATA_BUGZILLA6173 + if (p_FmDriverParam->resetOnInit) + { + t_FMIramRegs *p_Iram = (t_FMIramRegs *)UINT_TO_PTR(p_Fm->baseAddr + FM_MM_IMEM); + uint32_t debug_reg; + + /* write to IRAM first location the debug instruction */ + WRITE_UINT32(p_Iram->iadd, 0); + while (GET_UINT32(p_Iram->iadd) != 0) ; + WRITE_UINT32(p_Iram->idata, FM_UCODE_DEBUG_INSTRUCTION); + + WRITE_UINT32(p_Iram->iadd, 0); + while (GET_UINT32(p_Iram->iadd) != 0) ; + while (GET_UINT32(p_Iram->idata) != FM_UCODE_DEBUG_INSTRUCTION) ; + + /* Enable patch from IRAM */ + WRITE_UINT32(p_Iram->iready, IRAM_READY); + XX_UDelay(100); + + /* reset FMAN */ + WRITE_UINT32(p_Fm->p_FmFpmRegs->fmrstc, FPM_RSTC_FM_RESET); + XX_UDelay(100); + + /* verify breakpoint debug status register */ + debug_reg = GET_UINT32(*(uint32_t *)UINT_TO_PTR(p_Fm->baseAddr + FM_DEBUG_STATUS_REGISTER_OFFSET)); +#ifndef NCSW_LINUX + if(!debug_reg) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Invalid debug status register value = 0")); +#else + if(!debug_reg) + DBG(INFO,("Invalid debug status register value = 0")); +#endif + /*************************************/ + /* Load FMan-Controller code to Iram */ + /*************************************/ + if (ClearIRam(p_Fm) != E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + if (p_Fm->p_FmDriverParam->firmware.p_Code && + (LoadFmanCtrlCode(p_Fm) != E_OK)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + XX_UDelay(100); + + /* reset FMAN again to start the microcode */ + WRITE_UINT32(p_Fm->p_FmFpmRegs->fmrstc, FPM_RSTC_FM_RESET); + XX_UDelay(1000); + } + else + { +#endif /* FM_UCODE_NOT_RESET_ERRATA_BUGZILLA6173 */ + if(p_FmDriverParam->resetOnInit) + { + WRITE_UINT32(p_Fm->p_FmFpmRegs->fmrstc, FPM_RSTC_FM_RESET); + XX_UDelay(100); + } + + /*************************************/ + /* Load FMan-Controller code to Iram */ + /*************************************/ + if (ClearIRam(p_Fm) != E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + if (p_Fm->p_FmDriverParam->firmware.p_Code && + (LoadFmanCtrlCode(p_Fm) != E_OK)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); +#ifdef FM_UCODE_NOT_RESET_ERRATA_BUGZILLA6173 + } +#endif /* FM_UCODE_NOT_RESET_ERRATA_BUGZILLA6173 */ + +#ifdef FM_CAPWAP_SUPPORT + /* save first 256 byte in MURAM */ + p_Fm->resAddr = PTR_TO_UINT(FM_MURAM_AllocMem(p_Fm->h_FmMuram, 256, 0)); + if (!p_Fm->resAddr) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("MURAM alloc for reserved Area failed")); + + WRITE_BLOCK(UINT_TO_PTR(p_Fm->resAddr), 0, 256); +#endif /* FM_CAPWAP_SUPPORT */ + + /* General FM driver initialization */ + p_Fm->fmMuramPhysBaseAddr = (uint64_t)(XX_VirtToPhys(UINT_TO_PTR(p_Fm->baseAddr + FM_MM_MURAM))); + for(i=0;iintrMng[i].f_Isr = UnimplementedIsr; + for(i=0;ifmanCtrlIntr[i].f_Isr = UnimplementedFmanCtrlIsr; + + /**********************/ + /* Init DMA Registers */ + /**********************/ + /* clear status reg events */ + tmpReg = (DMA_STATUS_BUS_ERR | DMA_STATUS_READ_ECC | DMA_STATUS_SYSTEM_WRITE_ECC | DMA_STATUS_FM_WRITE_ECC); + /*tmpReg |= (DMA_STATUS_SYSTEM_DPEXT_ECC | DMA_STATUS_FM_DPEXT_ECC | DMA_STATUS_SYSTEM_DPDAT_ECC | DMA_STATUS_FM_DPDAT_ECC | DMA_STATUS_FM_SPDAT_ECC);*/ + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmsr, GET_UINT32(p_Fm->p_FmDmaRegs->fmdmsr) | tmpReg); + + /* configure mode register */ + tmpReg = 0; + tmpReg |= p_FmDriverParam->dmaCacheOverride << DMA_MODE_CACHE_OR_SHIFT; + if(p_FmDriverParam->dmaAidOverride) + tmpReg |= DMA_MODE_AID_OR; + if (p_Fm->p_FmStateStruct->exceptions & FM_EX_DMA_BUS_ERROR) + tmpReg |= DMA_MODE_BER; + if ((p_Fm->p_FmStateStruct->exceptions & FM_EX_DMA_SYSTEM_WRITE_ECC) | (p_Fm->p_FmStateStruct->exceptions & FM_EX_DMA_READ_ECC) | (p_Fm->p_FmStateStruct->exceptions & FM_EX_DMA_FM_WRITE_ECC)) + tmpReg |= DMA_MODE_ECC; + if(p_FmDriverParam->dmaStopOnBusError) + tmpReg |= DMA_MODE_SBER; + tmpReg |= (uint32_t)(p_FmDriverParam->dmaAxiDbgNumOfBeats - 1) << DMA_MODE_AXI_DBG_SHIFT; + if (p_FmDriverParam->dmaEnEmergency) + { + tmpReg |= p_FmDriverParam->dmaEmergency.emergencyBusSelect; + tmpReg |= p_FmDriverParam->dmaEmergency.emergencyLevel << DMA_MODE_EMERGENCY_LEVEL_SHIFT; + if(p_FmDriverParam->dmaEnEmergencySmoother) + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmemsr, p_FmDriverParam->dmaEmergencySwitchCounter); + } + tmpReg |= ((p_FmDriverParam->dmaCamNumOfEntries/DMA_CAM_UNITS) - 1) << DMA_MODE_CEN_SHIFT; + + tmpReg |= DMA_MODE_SECURE_PROT; + tmpReg |= p_FmDriverParam->dmaDbgCntMode << DMA_MODE_DBG_SHIFT; + tmpReg |= p_FmDriverParam->dmaAidMode << DMA_MODE_AID_MODE_SHIFT; + +#ifdef FM_PEDANTIC_DMA + tmpReg |= DMA_MODE_EMERGENCY_READ; +#endif /* FM_PEDANTIC_DMA */ + + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmmr, tmpReg); + + /* configure thresholds register */ + tmpReg = ((uint32_t)p_FmDriverParam->dmaCommQThresholds.assertEmergency << DMA_THRESH_COMMQ_SHIFT) | + ((uint32_t)p_FmDriverParam->dmaReadBufThresholds.assertEmergency << DMA_THRESH_READ_INT_BUF_SHIFT) | + ((uint32_t)p_FmDriverParam->dmaWriteBufThresholds.assertEmergency); + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmtr, tmpReg); + + /* configure hysteresis register */ + tmpReg = ((uint32_t)p_FmDriverParam->dmaCommQThresholds.clearEmergency << DMA_THRESH_COMMQ_SHIFT) | + ((uint32_t)p_FmDriverParam->dmaReadBufThresholds.clearEmergency << DMA_THRESH_READ_INT_BUF_SHIFT) | + ((uint32_t)p_FmDriverParam->dmaWriteBufThresholds.clearEmergency); + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmhy, tmpReg); + + /* configure emergency threshold */ + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmsetr, p_FmDriverParam->dmaSosEmergency); + + /* configure Watchdog */ + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmwcr, USEC_TO_CLK(p_FmDriverParam->dmaWatchdog, p_Fm->p_FmStateStruct->fmClkFreq)); + + /* Allocate MURAM for CAM */ + p_Fm->camBaseAddr = PTR_TO_UINT(FM_MURAM_AllocMem(p_Fm->h_FmMuram, + (uint32_t)(p_FmDriverParam->dmaCamNumOfEntries*DMA_CAM_SIZEOF_ENTRY), + DMA_CAM_ALIGN)); + if (!p_Fm->camBaseAddr ) + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("MURAM alloc for DMA CAM failed")); + + WRITE_BLOCK(UINT_TO_PTR(p_Fm->camBaseAddr), 0, (uint32_t)(p_FmDriverParam->dmaCamNumOfEntries*DMA_CAM_SIZEOF_ENTRY)); + + /* VirtToPhys */ + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmebcr, + (uint32_t)(XX_VirtToPhys(UINT_TO_PTR(p_Fm->camBaseAddr)) - p_Fm->fmMuramPhysBaseAddr)); + +#ifdef FM_PARTITION_ARRAY + { + t_FmRevisionInfo revInfo; + FM_GetRevision(p_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + /* liodn-partitions */ + for (i=0 ; iliodnBasePerPort[i] << DMA_LIODN_SHIFT) | + (uint32_t)p_FmDriverParam->liodnBasePerPort[i+1]); + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmplr[i/2], tmpReg); + } + } +#endif /* FM_PARTITION_ARRAY */ + + /**********************/ + /* Init FPM Registers */ + /**********************/ + tmpReg = (uint32_t)(p_FmDriverParam->thresholds.dispLimit << FPM_DISP_LIMIT_SHIFT); + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmflc, tmpReg); + + tmpReg = (((uint32_t)p_FmDriverParam->thresholds.prsDispTh << FPM_THR1_PRS_SHIFT) | + ((uint32_t)p_FmDriverParam->thresholds.kgDispTh << FPM_THR1_KG_SHIFT) | + ((uint32_t)p_FmDriverParam->thresholds.plcrDispTh << FPM_THR1_PLCR_SHIFT) | + ((uint32_t)p_FmDriverParam->thresholds.bmiDispTh << FPM_THR1_BMI_SHIFT)); + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmdis1, tmpReg); + + tmpReg = (((uint32_t)p_FmDriverParam->thresholds.qmiEnqDispTh << FPM_THR2_QMI_ENQ_SHIFT) | + ((uint32_t)p_FmDriverParam->thresholds.qmiDeqDispTh << FPM_THR2_QMI_DEQ_SHIFT) | + ((uint32_t)p_FmDriverParam->thresholds.fmCtl1DispTh << FPM_THR2_FM_CTL1_SHIFT) | + ((uint32_t)p_FmDriverParam->thresholds.fmCtl2DispTh << FPM_THR2_FM_CTL2_SHIFT)); + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmdis2, tmpReg); + + /* define exceptions and error behavior */ + tmpReg = 0; + /* Clear events */ + tmpReg |= (FPM_EV_MASK_STALL | FPM_EV_MASK_DOUBLE_ECC | FPM_EV_MASK_SINGLE_ECC); + /* enable interrupts */ + if(p_Fm->p_FmStateStruct->exceptions & FM_EX_FPM_STALL_ON_TASKS) + tmpReg |= FPM_EV_MASK_STALL_EN; + if(p_Fm->p_FmStateStruct->exceptions & FM_EX_FPM_SINGLE_ECC) + tmpReg |= FPM_EV_MASK_SINGLE_ECC_EN; + if(p_Fm->p_FmStateStruct->exceptions & FM_EX_FPM_DOUBLE_ECC) + tmpReg |= FPM_EV_MASK_DOUBLE_ECC_EN; + tmpReg |= (p_Fm->p_FmDriverParam->catastrophicErr << FPM_EV_MASK_CAT_ERR_SHIFT); + tmpReg |= (p_Fm->p_FmDriverParam->dmaErr << FPM_EV_MASK_DMA_ERR_SHIFT); + if(!p_Fm->p_FmDriverParam->haltOnExternalActivation) + tmpReg |= FPM_EV_MASK_EXTERNAL_HALT; + if(!p_Fm->p_FmDriverParam->haltOnUnrecoverableEccError) + tmpReg |= FPM_EV_MASK_ECC_ERR_HALT; + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmem, tmpReg); + + /* clear all fmCtls event registers */ + for(i=0;ip_FmFpmRegs->fpmcev[i], 0xFFFFFFFF); + + /* RAM ECC - enable and clear events*/ + /* first we need to clear all parser memory, as it is uninitialized and + may cause ECC errors */ + tmpReg = 0; + /* event bits */ + tmpReg = (FPM_RAM_CTL_MURAM_ECC | FPM_RAM_CTL_IRAM_ECC); + /* Rams enable is not effected by the RCR bit, but by a COP configuration */ + if(p_Fm->p_FmDriverParam->externalEccRamsEnable) + tmpReg |= FPM_RAM_CTL_RAMS_ECC_EN_SRC_SEL; + + /* enable test mode */ + if(p_FmDriverParam->enMuramTestMode) + tmpReg |= FPM_RAM_CTL_MURAM_TEST_ECC; + if(p_FmDriverParam->enIramTestMode) + tmpReg |= FPM_RAM_CTL_IRAM_TEST_ECC; + WRITE_UINT32(p_Fm->p_FmFpmRegs->fmrcr, tmpReg); + + tmpReg = 0; + if(p_Fm->p_FmStateStruct->exceptions & FM_EX_IRAM_ECC) + { + tmpReg |= FPM_IRAM_ECC_ERR_EX_EN; + FmEnableRamsEcc(p_Fm); + } + if(p_Fm->p_FmStateStruct->exceptions & FM_EX_NURAM_ECC) + { + tmpReg |= FPM_MURAM_ECC_ERR_EX_EN; + FmEnableRamsEcc(p_Fm); + } + WRITE_UINT32(p_Fm->p_FmFpmRegs->fmrie, tmpReg); + + /**********************/ + /* Init BMI Registers */ + /**********************/ + + /* define common resources */ + /* allocate MURAM for FIFO according to total size */ + p_Fm->fifoBaseAddr = PTR_TO_UINT(FM_MURAM_AllocMem(p_Fm->h_FmMuram, + p_Fm->p_FmStateStruct->totalFifoSize, + BMI_FIFO_ALIGN)); + if (!p_Fm->fifoBaseAddr) + { + FreeInitResources(p_Fm); + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("MURAM alloc for FIFO failed")); + } + + tmpReg = (uint32_t)(XX_VirtToPhys(UINT_TO_PTR(p_Fm->fifoBaseAddr)) - p_Fm->fmMuramPhysBaseAddr); + tmpReg = tmpReg / BMI_FIFO_ALIGN; + + tmpReg |= ((p_Fm->p_FmStateStruct->totalFifoSize/BMI_FIFO_UNITS - 1) << BMI_CFG1_FIFO_SIZE_SHIFT); + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_cfg1, tmpReg); + + tmpReg = ((uint32_t)(p_Fm->p_FmStateStruct->totalNumOfTasks - 1) << BMI_CFG2_TASKS_SHIFT ); + /* num of DMA's will be dynamically updated when each port is set */ + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_cfg2, tmpReg); + + /* define unmaskable exceptions, enable and clear events */ + tmpReg = 0; + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_ievr, (BMI_ERR_INTR_EN_LIST_RAM_ECC | + BMI_ERR_INTR_EN_PIPELINE_ECC | + BMI_ERR_INTR_EN_STATISTICS_RAM_ECC | + BMI_ERR_INTR_EN_DISPATCH_RAM_ECC)); + if(p_Fm->p_FmStateStruct->exceptions & FM_EX_BMI_LIST_RAM_ECC) + tmpReg |= BMI_ERR_INTR_EN_LIST_RAM_ECC; + if(p_Fm->p_FmStateStruct->exceptions & FM_EX_BMI_PIPELINE_ECC) + tmpReg |= BMI_ERR_INTR_EN_PIPELINE_ECC; + if(p_Fm->p_FmStateStruct->exceptions & FM_EX_BMI_STATISTICS_RAM_ECC) + tmpReg |= BMI_ERR_INTR_EN_STATISTICS_RAM_ECC; + if(p_Fm->p_FmStateStruct->exceptions & FM_EX_BMI_DISPATCH_RAM_ECC) + tmpReg |= BMI_ERR_INTR_EN_DISPATCH_RAM_ECC; + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_ier, tmpReg); + + /**********************/ + /* Init QMI Registers */ + /**********************/ + /* Clear error interrupt events */ + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_eie, (QMI_ERR_INTR_EN_DOUBLE_ECC | QMI_ERR_INTR_EN_DEQ_FROM_DEF)); + tmpReg = 0; + if(p_Fm->p_FmStateStruct->exceptions & FM_EX_QMI_DEQ_FROM_UNKNOWN_PORTID) + tmpReg |= QMI_ERR_INTR_EN_DEQ_FROM_DEF; + if(p_Fm->p_FmStateStruct->exceptions & FM_EX_QMI_DOUBLE_ECC) + tmpReg |= QMI_ERR_INTR_EN_DOUBLE_ECC; + /* enable events */ + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_eien, tmpReg); + + if(p_Fm->p_FmDriverParam->tnumAgingPeriod) + { + /* tnumAgingPeriod is in units of microseconds, p_FmClockFreq is in Mhz */ + periodInFmClocks = (uint16_t)(p_Fm->p_FmDriverParam->tnumAgingPeriod*p_Fm->p_FmStateStruct->fmClkFreq); + /* periodInFmClocks must be a 64 multiply */ + remainder = (uint8_t)(periodInFmClocks % 64); + if (remainder > 64) + tmpReg = (uint32_t)((periodInFmClocks/64) + 1); + else + { + tmpReg = (uint32_t)(periodInFmClocks/64); + if(!tmpReg) + tmpReg = 1; + } + tmpReg <<= QMI_TAPC_TAP; + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_tapc, tmpReg); + + } + tmpReg = 0; + /* Clear interrupt events */ + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_ie, QMI_INTR_EN_SINGLE_ECC); + if(p_Fm->p_FmStateStruct->exceptions & FM_EX_QMI_SINGLE_ECC) + tmpReg |= QMI_INTR_EN_SINGLE_ECC; + /* enable events */ + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_ien, tmpReg); + + /* clear & enable global counters - calculate reg and save for later, + because it's the same reg for QMI enable */ + if(p_Fm->p_FmDriverParam->enCounters) + cfgReg = QMI_CFG_EN_COUNTERS; +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT + cfgReg |= (uint32_t)(((QMI_DEF_TNUMS_THRESH) << 8) | (uint32_t)QMI_DEF_TNUMS_THRESH); +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ + + if (p_Fm->p_FmStateStruct->irq != NO_IRQ) + { + XX_SetIntr(p_Fm->p_FmStateStruct->irq, FM_EventIsr, p_Fm); + XX_EnableIntr(p_Fm->p_FmStateStruct->irq); + } + + if (p_Fm->p_FmStateStruct->errIrq != NO_IRQ) + { + XX_SetIntr(p_Fm->p_FmStateStruct->errIrq, ErrorIsrCB, p_Fm); + XX_EnableIntr(p_Fm->p_FmStateStruct->errIrq); + } + + /* build the FM master partition IPC address */ + if (Sprint (p_Fm->fmModuleName, "FM_%d_%d",p_Fm->p_FmStateStruct->fmId, NCSW_MASTER_ID) != 6) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("Sprint failed")); + + err = XX_IpcRegisterMsgHandler(p_Fm->fmModuleName, FmHandleIpcMsgCB, p_Fm, FM_IPC_MAX_REPLY_SIZE); + if(err) + RETURN_ERROR(MAJOR, err, NO_MSG); + + /**********************/ + /* Enable all modules */ + /**********************/ + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_init, BMI_INIT_START); + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_gc, cfgReg | QMI_CFG_ENQ_EN | QMI_CFG_DEQ_EN); + + if (p_Fm->p_FmDriverParam->firmware.p_Code) + { + XX_Free(p_Fm->p_FmDriverParam->firmware.p_Code); + p_Fm->p_FmDriverParam->firmware.p_Code = NULL; + } + + XX_Free(p_Fm->p_FmDriverParam); + p_Fm->p_FmDriverParam = NULL; + + return E_OK; +} + +/**************************************************************************//** + @Function FM_Free + + @Description Frees all resources that were assigned to FM module. + + Calling this routine invalidates the descriptor. + + @Param[in] h_Fm - FM module descriptor + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_Free(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + + if (p_Fm->guestId != NCSW_MASTER_ID) + { + XX_IpcUnregisterMsgHandler(p_Fm->fmModuleName); + + if(!p_Fm->recoveryMode) + XX_Free(p_Fm->p_FmStateStruct); + + XX_Free(p_Fm); + + return E_OK; + } + + /* disable BMI and QMI */ + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_init, 0); + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_gc, 0); + + /* release BMI resources */ + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_cfg2, 0); + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_cfg1, 0); + + /* disable ECC */ + WRITE_UINT32(p_Fm->p_FmFpmRegs->fmrcr, 0); + + if ((p_Fm->guestId == NCSW_MASTER_ID) && (p_Fm->fmModuleName[0] != 0)) + XX_IpcUnregisterMsgHandler(p_Fm->fmModuleName); + + if (p_Fm->p_FmStateStruct) + { + if (p_Fm->p_FmStateStruct->irq != NO_IRQ) + { + XX_DisableIntr(p_Fm->p_FmStateStruct->irq); + XX_FreeIntr(p_Fm->p_FmStateStruct->irq); + } + if (p_Fm->p_FmStateStruct->errIrq != NO_IRQ) + { + XX_DisableIntr(p_Fm->p_FmStateStruct->errIrq); + XX_FreeIntr(p_Fm->p_FmStateStruct->errIrq); + } + } + + if (p_Fm->h_Spinlock) + XX_FreeSpinlock(p_Fm->h_Spinlock); + + if (p_Fm->p_FmDriverParam) + { + if (p_Fm->p_FmDriverParam->firmware.p_Code) + XX_Free(p_Fm->p_FmDriverParam->firmware.p_Code); + XX_Free(p_Fm->p_FmDriverParam); + p_Fm->p_FmDriverParam = NULL; + } + + FreeInitResources(p_Fm); + + if (!p_Fm->recoveryMode && p_Fm->p_FmStateStruct) + XX_Free(p_Fm->p_FmStateStruct); + + XX_Free(p_Fm); + + return E_OK; +} + +/*************************************************/ +/* API Advanced Init unit functions */ +/*************************************************/ + +t_Error FM_ConfigResetOnInit(t_Handle h_Fm, bool enable) +{ + + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmDriverParam->resetOnInit = enable; + + return E_OK; +} + + +t_Error FM_ConfigTotalNumOfTasks(t_Handle h_Fm, uint8_t totalNumOfTasks) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmStateStruct->totalNumOfTasks = totalNumOfTasks; + + return E_OK; +} + +t_Error FM_ConfigTotalFifoSize(t_Handle h_Fm, uint32_t totalFifoSize) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmStateStruct->totalFifoSize = totalFifoSize; + + return E_OK; +} + +t_Error FM_ConfigMaxNumOfOpenDmas(t_Handle h_Fm, uint8_t maxNumOfOpenDmas) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmStateStruct->maxNumOfOpenDmas = maxNumOfOpenDmas; + + return E_OK; +} + +t_Error FM_ConfigThresholds(t_Handle h_Fm, t_FmThresholds *p_FmThresholds) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + memcpy(&p_Fm->p_FmDriverParam->thresholds, p_FmThresholds, sizeof(t_FmThresholds)); + + return E_OK; +} + +t_Error FM_ConfigDmaCacheOverride(t_Handle h_Fm, e_FmDmaCacheOverride cacheOverride) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmDriverParam->dmaCacheOverride = cacheOverride; + + return E_OK; +} + +t_Error FM_ConfigDmaAidOverride(t_Handle h_Fm, bool aidOverride) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmDriverParam->dmaAidOverride = aidOverride; + + return E_OK; +} + +t_Error FM_ConfigDmaAidMode(t_Handle h_Fm, e_FmDmaAidMode aidMode) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmDriverParam->dmaAidMode = aidMode; + + return E_OK; +} + +t_Error FM_ConfigDmaAxiDbgNumOfBeats(t_Handle h_Fm, uint8_t axiDbgNumOfBeats) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmDriverParam->dmaAxiDbgNumOfBeats = axiDbgNumOfBeats; + + return E_OK; +} + +t_Error FM_ConfigDmaCamNumOfEntries(t_Handle h_Fm, uint8_t numOfEntries) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmDriverParam->dmaCamNumOfEntries = numOfEntries; + + return E_OK; +} + +t_Error FM_ConfigDmaWatchdog(t_Handle h_Fm, uint32_t watchdogValue) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + +#ifdef FM_NO_WATCHDOG + { + t_FmRevisionInfo revInfo; + FM_GetRevision(h_Fm, &revInfo); + if (revInfo.majorRev != 4) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("watchdog!")); + } +#endif /* FM_NO_WATCHDOG */ + + p_Fm->p_FmDriverParam->dmaWatchdog = watchdogValue; + + return E_OK; +} + +t_Error FM_ConfigDmaWriteBufThresholds(t_Handle h_Fm, t_FmDmaThresholds *p_FmDmaThresholds) + +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + memcpy(&p_Fm->p_FmDriverParam->dmaWriteBufThresholds, p_FmDmaThresholds, sizeof(t_FmDmaThresholds)); + + return E_OK; +} + +t_Error FM_ConfigDmaCommQThresholds(t_Handle h_Fm, t_FmDmaThresholds *p_FmDmaThresholds) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + memcpy(&p_Fm->p_FmDriverParam->dmaCommQThresholds, p_FmDmaThresholds, sizeof(t_FmDmaThresholds)); + + return E_OK; +} + +t_Error FM_ConfigDmaReadBufThresholds(t_Handle h_Fm, t_FmDmaThresholds *p_FmDmaThresholds) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + memcpy(&p_Fm->p_FmDriverParam->dmaReadBufThresholds, p_FmDmaThresholds, sizeof(t_FmDmaThresholds)); + + return E_OK; +} + +t_Error FM_ConfigDmaEmergency(t_Handle h_Fm, t_FmDmaEmergency *p_Emergency) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmDriverParam->dmaEnEmergency = TRUE; + memcpy(&p_Fm->p_FmDriverParam->dmaEmergency, p_Emergency, sizeof(t_FmDmaEmergency)); + + return E_OK; +} + +t_Error FM_ConfigDmaEmergencySmoother(t_Handle h_Fm, uint32_t emergencyCnt) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + if(!p_Fm->p_FmDriverParam->dmaEnEmergency) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("FM_ConfigEnDmaEmergencySmoother may be called only after FM_ConfigEnDmaEmergency")); + + p_Fm->p_FmDriverParam->dmaEnEmergencySmoother = TRUE; + p_Fm->p_FmDriverParam->dmaEmergencySwitchCounter = emergencyCnt; + + return E_OK; +} + +t_Error FM_ConfigDmaDbgCounter(t_Handle h_Fm, e_FmDmaDbgCntMode fmDmaDbgCntMode) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmDriverParam->dmaDbgCntMode = fmDmaDbgCntMode; + + return E_OK; +} + +t_Error FM_ConfigDmaStopOnBusErr(t_Handle h_Fm, bool stop) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmDriverParam->dmaStopOnBusError = stop; + + return E_OK; +} + +t_Error FM_ConfigDmaSosEmergencyThreshold(t_Handle h_Fm, uint32_t dmaSosEmergency) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmDriverParam->dmaSosEmergency = dmaSosEmergency; + + return E_OK; +} + +t_Error FM_ConfigEnableCounters(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmDriverParam->enCounters = TRUE; + + return E_OK; +} + +t_Error FM_ConfigDmaErr(t_Handle h_Fm, e_FmDmaErr dmaErr) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmDriverParam->dmaErr = dmaErr; + + return E_OK; +} + +t_Error FM_ConfigCatastrophicErr(t_Handle h_Fm, e_FmCatastrophicErr catastrophicErr) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmDriverParam->catastrophicErr = catastrophicErr; + + return E_OK; +} + +t_Error FM_ConfigEnableMuramTestMode(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmDriverParam->enMuramTestMode = TRUE; + + return E_OK; +} + +t_Error FM_ConfigEnableIramTestMode(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + p_Fm->p_FmDriverParam->enIramTestMode = TRUE; + + return E_OK; +} + +t_Error FM_ConfigHaltOnExternalActivation(t_Handle h_Fm, bool enable) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + +#ifdef FM_HALT_SIG_ERRATA_GEN12 + { + t_FmRevisionInfo revInfo; + FM_GetRevision(h_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("HaltOnExternalActivation!")); + } +#endif /* FM_HALT_SIG_ERRATA_GEN12 */ + + p_Fm->p_FmDriverParam->haltOnExternalActivation = enable; + + return E_OK; +} + +t_Error FM_ConfigHaltOnUnrecoverableEccError(t_Handle h_Fm, bool enable) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + +#ifdef FM_ECC_HALT_NO_SYNC_ERRATA_10GMAC_A008 + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("HaltOnEccError!")); +#endif /* FM_ECC_HALT_NO_SYNC_ERRATA_10GMAC_A008 */ + + p_Fm->p_FmDriverParam->haltOnUnrecoverableEccError = enable; + + return E_OK; +} + +t_Error FM_ConfigException(t_Handle h_Fm, e_FmExceptions exception, bool enable) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t bitMask = 0; + t_FmRevisionInfo revInfo; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + + FM_GetRevision(p_Fm, &revInfo); +#ifdef FM_BMI_PIPELINE_ERR_IRQ_ERRATA_FMAN9 + if((exception == e_FM_EX_BMI_PIPELINE_ECC) && (enable)) + { + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + { + REPORT_ERROR(MINOR, E_NOT_SUPPORTED, ("e_FM_EX_BMI_PIPELINE_ECC!")); + return E_OK; + } + } +#endif /* FM_BMI_PIPELINE_ERR_IRQ_ERRATA_FMAN9 */ +#ifdef FM_RAM_LIST_ERR_IRQ_ERRATA_FMAN8 + if((exception == e_FM_EX_BMI_LIST_RAM_ECC) && (enable)) + { + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + { + REPORT_ERROR(MINOR, E_NOT_SUPPORTED, ("e_FM_EX_BMI_LIST_RAM_ECC!")); + return E_OK; + } + } +#endif /* FM_RAM_LIST_ERR_IRQ_ERRATA_FMAN8 */ +#ifdef FM_QMI_NO_ECC_EXCEPTIONS + if(((exception == e_FM_EX_QMI_SINGLE_ECC) || (exception == e_FM_EX_QMI_DOUBLE_ECC)) && + enable) + { + if (revInfo.majorRev == 4) + { + REPORT_ERROR(MINOR, E_NOT_SUPPORTED, ("QMI ECC exception!")); + return E_OK; + } + } +#endif /* FM_QMI_NO_ECC_EXCEPTIONS */ +#ifdef FM_NO_DISPATCH_RAM_ECC + if((exception == e_FM_EX_BMI_DISPATCH_RAM_ECC) && (enable)) + { + if (revInfo.majorRev != 4) + { + REPORT_ERROR(MINOR, E_NOT_SUPPORTED, ("e_FM_EX_BMI_DISPATCH_RAM_ECC!")); + return E_OK; + } + } +#endif /* FM_NO_DISPATCH_RAM_ECC */ + + GET_EXCEPTION_FLAG(bitMask, exception); + if(bitMask) + { + if (enable) + p_Fm->p_FmStateStruct->exceptions |= bitMask; + else + p_Fm->p_FmStateStruct->exceptions &= ~bitMask; + } + else + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Undefined exception")); + + return E_OK; +} + +t_Error FM_ConfigExternalEccRamsEnable(t_Handle h_Fm, bool enable) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + + p_Fm->p_FmDriverParam->externalEccRamsEnable = enable; + + return E_OK; +} + +t_Error FM_ConfigTnumAgingPeriod(t_Handle h_Fm, uint16_t tnumAgingPeriod) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; +#ifdef FM_NO_TNUM_AGING + t_FmRevisionInfo revInfo; +#endif /* FM_NO_TNUM_AGING */ + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + +#ifdef FM_NO_TNUM_AGING + FM_GetRevision(h_Fm, &revInfo); + if (revInfo.majorRev != 4) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("FM_ConfigTnumAgingPeriod!")); +#endif /* FM_NO_TNUM_AGING */ + + p_Fm->p_FmDriverParam->tnumAgingPeriod = tnumAgingPeriod; + + return E_OK; + +} + +/****************************************************/ +/* API Run-time Control uint functions */ +/****************************************************/ +t_Handle FM_GetPcdHandle(t_Handle h_Fm) +{ + SANITY_CHECK_RETURN_VALUE(h_Fm, E_INVALID_HANDLE, NULL); + SANITY_CHECK_RETURN_VALUE(!((t_Fm*)h_Fm)->p_FmDriverParam, E_INVALID_STATE, NULL); + + return ((t_Fm*)h_Fm)->h_Pcd; +} + +void FM_EventIsr(t_Handle h_Fm) +{ +#define FM_M_CALL_1G_MAC_TMR_ISR(_id) \ + { \ + if (p_Fm->guestId != p_Fm->intrMng[(e_FmInterModuleEvent)(e_FM_EV_1G_MAC0_TMR+_id)].guestId) \ + SendIpcIsr(p_Fm, (e_FmInterModuleEvent)(e_FM_EV_1G_MAC0_TMR+_id), pending); \ + else \ + p_Fm->intrMng[(e_FmInterModuleEvent)(e_FM_EV_1G_MAC0_TMR+_id)].f_Isr(p_Fm->intrMng[(e_FmInterModuleEvent)(e_FM_EV_1G_MAC0_TMR+_id)].h_SrcHandle);\ + } + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t pending, event; + + SANITY_CHECK_RETURN(h_Fm, E_INVALID_HANDLE); + + /* normal interrupts */ + pending = GET_UINT32(p_Fm->p_FmFpmRegs->fmnpi); + ASSERT_COND(pending); + if (pending & INTR_EN_BMI) + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("BMI Event - undefined!")); + if (pending & INTR_EN_QMI) + QmiEvent(p_Fm); + if (pending & INTR_EN_PRS) + p_Fm->intrMng[e_FM_EV_PRS].f_Isr(p_Fm->intrMng[e_FM_EV_PRS].h_SrcHandle); + if (pending & INTR_EN_PLCR) + p_Fm->intrMng[e_FM_EV_PLCR].f_Isr(p_Fm->intrMng[e_FM_EV_PLCR].h_SrcHandle); + if (pending & INTR_EN_KG) + p_Fm->intrMng[e_FM_EV_KG].f_Isr(p_Fm->intrMng[e_FM_EV_KG].h_SrcHandle); + if (pending & INTR_EN_TMR) + p_Fm->intrMng[e_FM_EV_TMR].f_Isr(p_Fm->intrMng[e_FM_EV_TMR].h_SrcHandle); + + /* MAC events may belong to different partitions */ + if (pending & INTR_EN_1G_MAC0_TMR) + FM_M_CALL_1G_MAC_TMR_ISR(0); + if (pending & INTR_EN_1G_MAC1_TMR) + FM_M_CALL_1G_MAC_TMR_ISR(1); + if (pending & INTR_EN_1G_MAC2_TMR) + FM_M_CALL_1G_MAC_TMR_ISR(2); + if (pending & INTR_EN_1G_MAC3_TMR) + FM_M_CALL_1G_MAC_TMR_ISR(3); + if (pending & INTR_EN_1G_MAC4_TMR) + FM_M_CALL_1G_MAC_TMR_ISR(4); + + /* IM port events may belong to different partitions */ + if (pending & INTR_EN_REV0) + { + event = GET_UINT32(p_Fm->p_FmFpmRegs->fmfpfcev[0]) & GET_UINT32(p_Fm->p_FmFpmRegs->fmfpfcee[0]); + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmcev[0], event); + if (p_Fm->guestId != p_Fm->intrMng[e_FM_EV_FMAN_CTRL_0].guestId) + /*TODO IPC ISR For Fman Ctrl */ + ASSERT_COND(0); + /* SendIpcIsr(p_Fm, e_FM_EV_FMAN_CTRL_0, pending); */ + else + p_Fm->fmanCtrlIntr[0].f_Isr(p_Fm->fmanCtrlIntr[0].h_SrcHandle, event); + + } + if (pending & INTR_EN_REV1) + { + event = GET_UINT32(p_Fm->p_FmFpmRegs->fmfpfcev[1]) & GET_UINT32(p_Fm->p_FmFpmRegs->fmfpfcee[1]); + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmcev[1], event); + if (p_Fm->guestId != p_Fm->intrMng[e_FM_EV_FMAN_CTRL_1].guestId) + /*TODO IPC ISR For Fman Ctrl */ + ASSERT_COND(0); + /* SendIpcIsr(p_Fm, e_FM_EV_FMAN_CTRL_1, pending); */ + else + p_Fm->fmanCtrlIntr[1].f_Isr(p_Fm->fmanCtrlIntr[1].h_SrcHandle, event); + + } + if (pending & INTR_EN_REV2) + { + event = GET_UINT32(p_Fm->p_FmFpmRegs->fmfpfcev[2]) & GET_UINT32(p_Fm->p_FmFpmRegs->fmfpfcee[2]); + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmcev[2], event); + if (p_Fm->guestId != p_Fm->intrMng[e_FM_EV_FMAN_CTRL_2].guestId) + /*TODO IPC ISR For Fman Ctrl */ + ASSERT_COND(0); + /* SendIpcIsr(p_Fm, e_FM_EV_FMAN_CTRL_2, pending); */ + else + p_Fm->fmanCtrlIntr[2].f_Isr(p_Fm->fmanCtrlIntr[2].h_SrcHandle, event); + } + if (pending & INTR_EN_REV3) + { + event = GET_UINT32(p_Fm->p_FmFpmRegs->fmfpfcev[3]) & GET_UINT32(p_Fm->p_FmFpmRegs->fmfpfcee[3]); + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmcev[3], event); + if (p_Fm->guestId != p_Fm->intrMng[e_FM_EV_FMAN_CTRL_3].guestId) + /*TODO IPC ISR For Fman Ctrl */ + ASSERT_COND(0); + /* SendIpcIsr(p_Fm, e_FM_EV_FMAN_CTRL_2, pendin3); */ + else + p_Fm->fmanCtrlIntr[3].f_Isr(p_Fm->fmanCtrlIntr[3].h_SrcHandle, event); + } +} + +t_Error FM_ErrorIsr(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(h_Fm, E_INVALID_HANDLE); + + /* error interrupts */ + if (GET_UINT32(p_Fm->p_FmFpmRegs->fmepi) == 0) + return ERROR_CODE(E_EMPTY); + + ErrorIsrCB(p_Fm); + return E_OK; +} + +t_Error FM_SetPortsBandwidth(t_Handle h_Fm, t_FmPortsBandwidthParams *p_PortsBandwidth) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + int i; + uint8_t sum; + uint8_t hardwarePortId; + uint32_t tmpRegs[8] = {0,0,0,0,0,0,0,0}; + uint8_t relativePortId, shift, weight, maxPercent = 0; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Fm->p_FmDriverParam, E_INVALID_STATE); + + /* check that all ports add up to 100% */ + sum = 0; + for (i=0;inumOfPorts;i++) + sum +=p_PortsBandwidth->portsBandwidths[i].bandwidth; + if (sum != 100) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Sum of ports bandwidth differ from 100%")); + + /* find highest precent */ + for (i=0;inumOfPorts;i++) + { + if (p_PortsBandwidth->portsBandwidths[i].bandwidth > maxPercent) + maxPercent = p_PortsBandwidth->portsBandwidths[i].bandwidth; + } + + /* calculate weight for each port */ + for (i=0;inumOfPorts;i++) + { + weight = (uint8_t)((p_PortsBandwidth->portsBandwidths[i].bandwidth * PORT_MAX_WEIGHT )/maxPercent); + /* we want even division between 1-to-PORT_MAX_WEIGHT. so if exect division + is not reached, we round up so that: + 0 until maxPercent/PORT_MAX_WEIGHT get "1" + maxPercent/PORT_MAX_WEIGHT+1 until (maxPercent/PORT_MAX_WEIGHT)*2 get "2" + ... + maxPercent - maxPercent/PORT_MAX_WEIGHT until maxPercent get "PORT_MAX_WEIGHT: */ + if ((uint8_t)((p_PortsBandwidth->portsBandwidths[i].bandwidth * PORT_MAX_WEIGHT ) % maxPercent)) + weight++; + + /* find the location of this port within the register */ + SW_PORT_ID_TO_HW_PORT_ID(hardwarePortId, + p_PortsBandwidth->portsBandwidths[i].type, + p_PortsBandwidth->portsBandwidths[i].relativePortId); + relativePortId = (uint8_t)(hardwarePortId % 8); + shift = (uint8_t)(32-4*(relativePortId+1)); + + + if(weight > 1) + /* Add this port to tmpReg */ + /* (each 8 ports result in one register)*/ + tmpRegs[hardwarePortId/8] |= ((weight-1) << shift); + } + + for(i=0;i<8;i++) + if(tmpRegs[i]) + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_arb[i], tmpRegs[i]); + + return E_OK; +} + +t_Error FM_EnableRamsEcc(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t tmpReg; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + t_FmIpcMsg msg; + t_Error err; + + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_ENABLE_RAM_ECC; + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId), + NULL, + NULL, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + return E_OK; + } + + if(!p_Fm->p_FmStateStruct->internalCall) + p_Fm->p_FmStateStruct->explicitEnable = TRUE; + p_Fm->p_FmStateStruct->internalCall = FALSE; + + if(p_Fm->p_FmStateStruct->ramsEccEnable) + return E_OK; + else + { + tmpReg = GET_UINT32(p_Fm->p_FmFpmRegs->fmrcr); + if(tmpReg & FPM_RAM_CTL_RAMS_ECC_EN_SRC_SEL) + { + DBG(WARNING, ("Rams ECC is configured to be controlled through JTAG")); + WRITE_UINT32(p_Fm->p_FmFpmRegs->fmrcr, tmpReg | FPM_RAM_CTL_IRAM_ECC_EN); + } + else + WRITE_UINT32(p_Fm->p_FmFpmRegs->fmrcr, tmpReg | (FPM_RAM_CTL_RAMS_ECC_EN | FPM_RAM_CTL_IRAM_ECC_EN)); + p_Fm->p_FmStateStruct->ramsEccEnable = TRUE; + } + + return E_OK; +} + +t_Error FM_DisableRamsEcc(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t tmpReg; + bool explicitDisable = FALSE; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Fm->p_FmDriverParam, E_INVALID_HANDLE); + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + t_Error err; + t_FmIpcMsg msg; + + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_DISABLE_RAM_ECC; + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId), + NULL, + NULL, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + return E_OK; + } + + if(!p_Fm->p_FmStateStruct->internalCall) + explicitDisable = TRUE; + p_Fm->p_FmStateStruct->internalCall = FALSE; + + /* if rams are already disabled, or if rams were explicitly enabled and are + currently called indirectly (not explicitly), ignore this call. */ + if(!p_Fm->p_FmStateStruct->ramsEccEnable || (p_Fm->p_FmStateStruct->explicitEnable && !explicitDisable)) + return E_OK; + else + { + if(p_Fm->p_FmStateStruct->explicitEnable) + /* This is the case were both explicit are TRUE. + Turn off this flag for cases were following ramsEnable + routines are called */ + p_Fm->p_FmStateStruct->explicitEnable = FALSE; + + tmpReg = GET_UINT32(p_Fm->p_FmFpmRegs->fmrcr); + if(tmpReg & FPM_RAM_CTL_RAMS_ECC_EN_SRC_SEL) + { + DBG(WARNING, ("Rams ECC is configured to be controlled through JTAG")); + WRITE_UINT32(p_Fm->p_FmFpmRegs->fmrcr, tmpReg & ~FPM_RAM_CTL_IRAM_ECC_EN); + } + else + WRITE_UINT32(p_Fm->p_FmFpmRegs->fmrcr, tmpReg & ~(FPM_RAM_CTL_RAMS_ECC_EN | FPM_RAM_CTL_IRAM_ECC_EN)); + p_Fm->p_FmStateStruct->ramsEccEnable = FALSE; + } + + return E_OK; +} + +t_Error FM_SetException(t_Handle h_Fm, e_FmExceptions exception, bool enable) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t bitMask = 0; + uint32_t tmpReg; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Fm->p_FmDriverParam, E_INVALID_STATE); + + GET_EXCEPTION_FLAG(bitMask, exception); + if(bitMask) + { + if (enable) + p_Fm->p_FmStateStruct->exceptions |= bitMask; + else + p_Fm->p_FmStateStruct->exceptions &= ~bitMask; + + switch(exception) + { + case(e_FM_EX_DMA_BUS_ERROR): + tmpReg = GET_UINT32(p_Fm->p_FmDmaRegs->fmdmmr); + if(enable) + tmpReg |= DMA_MODE_BER; + else + tmpReg &= ~DMA_MODE_BER; + /* disable bus error */ + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmmr, tmpReg); + break; + case(e_FM_EX_DMA_READ_ECC): + case(e_FM_EX_DMA_SYSTEM_WRITE_ECC): + case(e_FM_EX_DMA_FM_WRITE_ECC): + tmpReg = GET_UINT32(p_Fm->p_FmDmaRegs->fmdmmr); + if(enable) + tmpReg |= DMA_MODE_ECC; + else + tmpReg &= ~DMA_MODE_ECC; + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmmr, tmpReg); + break; + case(e_FM_EX_FPM_STALL_ON_TASKS): + tmpReg = GET_UINT32(p_Fm->p_FmFpmRegs->fpmem); + if(enable) + tmpReg |= FPM_EV_MASK_STALL_EN; + else + tmpReg &= ~FPM_EV_MASK_STALL_EN; + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmem, tmpReg); + break; + case(e_FM_EX_FPM_SINGLE_ECC): + tmpReg = GET_UINT32(p_Fm->p_FmFpmRegs->fpmem); + if(enable) + tmpReg |= FPM_EV_MASK_SINGLE_ECC_EN; + else + tmpReg &= ~FPM_EV_MASK_SINGLE_ECC_EN; + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmem, tmpReg); + break; + case( e_FM_EX_FPM_DOUBLE_ECC): + tmpReg = GET_UINT32(p_Fm->p_FmFpmRegs->fpmem); + if(enable) + tmpReg |= FPM_EV_MASK_DOUBLE_ECC_EN; + else + tmpReg &= ~FPM_EV_MASK_DOUBLE_ECC_EN; + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmem, tmpReg); + break; + case( e_FM_EX_QMI_SINGLE_ECC): + tmpReg = GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_ien); + if(enable) + { +#ifdef FM_QMI_NO_ECC_EXCEPTIONS + t_FmRevisionInfo revInfo; + FM_GetRevision(p_Fm, &revInfo); + if (revInfo.majorRev == 4) + { + REPORT_ERROR(MINOR, E_NOT_SUPPORTED, ("e_FM_EX_QMI_SINGLE_ECC")); + return E_OK; + } +#endif /* FM_QMI_NO_ECC_EXCEPTIONS */ + tmpReg |= QMI_INTR_EN_SINGLE_ECC; + } + else + tmpReg &= ~QMI_INTR_EN_SINGLE_ECC; + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_ien, tmpReg); + break; + case(e_FM_EX_QMI_DOUBLE_ECC): + tmpReg = GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_eien); + if(enable) + { +#ifdef FM_QMI_NO_ECC_EXCEPTIONS + t_FmRevisionInfo revInfo; + FM_GetRevision(p_Fm, &revInfo); + if (revInfo.majorRev == 4) + { + REPORT_ERROR(MINOR, E_NOT_SUPPORTED, ("e_FM_EX_QMI_DOUBLE_ECC")); + return E_OK; + } +#endif /* FM_QMI_NO_ECC_EXCEPTIONS */ + tmpReg |= QMI_ERR_INTR_EN_DOUBLE_ECC; + } + else + tmpReg &= ~QMI_ERR_INTR_EN_DOUBLE_ECC; + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_eien, tmpReg); + break; + case(e_FM_EX_QMI_DEQ_FROM_UNKNOWN_PORTID): + tmpReg = GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_eien); + if(enable) + tmpReg |= QMI_ERR_INTR_EN_DEQ_FROM_DEF; + else + tmpReg &= ~QMI_ERR_INTR_EN_DEQ_FROM_DEF; + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_eien, tmpReg); + break; + case(e_FM_EX_BMI_LIST_RAM_ECC): + tmpReg = GET_UINT32(p_Fm->p_FmBmiRegs->fmbm_ier); + if(enable) + { +#ifdef FM_RAM_LIST_ERR_IRQ_ERRATA_FMAN8 + t_FmRevisionInfo revInfo; + FM_GetRevision(p_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + { + REPORT_ERROR(MINOR, E_NOT_SUPPORTED, ("e_FM_EX_BMI_LIST_RAM_ECC")); + return E_OK; + } +#endif /* FM_RAM_LIST_ERR_IRQ_ERRATA_FMAN8 */ + tmpReg |= BMI_ERR_INTR_EN_LIST_RAM_ECC; + } + else + tmpReg &= ~BMI_ERR_INTR_EN_LIST_RAM_ECC; + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_ier, tmpReg); + break; + case(e_FM_EX_BMI_PIPELINE_ECC): + tmpReg = GET_UINT32(p_Fm->p_FmBmiRegs->fmbm_ier); + if(enable) + { +#ifdef FM_BMI_PIPELINE_ERR_IRQ_ERRATA_FMAN9 + t_FmRevisionInfo revInfo; + FM_GetRevision(p_Fm, &revInfo); + if ((revInfo.majorRev == 1) && (revInfo.minorRev == 0)) + { + REPORT_ERROR(MINOR, E_NOT_SUPPORTED, ("e_FM_EX_BMI_PIPELINE_ECCBMI_LIST_RAM_ECC")); + return E_OK; + } +#endif /* FM_BMI_PIPELINE_ERR_IRQ_ERRATA_FMAN9 */ + tmpReg |= BMI_ERR_INTR_EN_PIPELINE_ECC; + } + else + tmpReg &= ~BMI_ERR_INTR_EN_PIPELINE_ECC; + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_ier, tmpReg); + break; + case(e_FM_EX_BMI_STATISTICS_RAM_ECC): + tmpReg = GET_UINT32(p_Fm->p_FmBmiRegs->fmbm_ier); + if(enable) + tmpReg |= BMI_ERR_INTR_EN_STATISTICS_RAM_ECC; + else + tmpReg &= ~BMI_ERR_INTR_EN_STATISTICS_RAM_ECC; + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_ier, tmpReg); + break; + case(e_FM_EX_BMI_DISPATCH_RAM_ECC): + tmpReg = GET_UINT32(p_Fm->p_FmBmiRegs->fmbm_ier); + if(enable) + { +#ifdef FM_NO_DISPATCH_RAM_ECC + t_FmRevisionInfo revInfo; + FM_GetRevision(p_Fm, &revInfo); + if (revInfo.majorRev != 4) + { + REPORT_ERROR(MINOR, E_NOT_SUPPORTED, ("e_FM_EX_BMI_DISPATCH_RAM_ECC")); + return E_OK; + } +#endif /* FM_NO_DISPATCH_RAM_ECC */ + tmpReg |= BMI_ERR_INTR_EN_DISPATCH_RAM_ECC; + } + else + tmpReg &= ~BMI_ERR_INTR_EN_DISPATCH_RAM_ECC; + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_ier, tmpReg); + break; + case(e_FM_EX_IRAM_ECC): + tmpReg = GET_UINT32(p_Fm->p_FmFpmRegs->fmrie); + if(enable) + { + /* enable ECC if not enabled */ + FmEnableRamsEcc(p_Fm); + /* enable ECC interrupts */ + tmpReg |= FPM_IRAM_ECC_ERR_EX_EN; + } + else + { + /* ECC mechanism may be disabled, depending on driver status */ + FmDisableRamsEcc(p_Fm); + tmpReg &= ~FPM_IRAM_ECC_ERR_EX_EN; + } + WRITE_UINT32(p_Fm->p_FmFpmRegs->fmrie, tmpReg); + break; + + case(e_FM_EX_MURAM_ECC): + tmpReg = GET_UINT32(p_Fm->p_FmFpmRegs->fmrie); + if(enable) + { + /* enable ECC if not enabled */ + FmEnableRamsEcc(p_Fm); + /* enable ECC interrupts */ + tmpReg |= FPM_MURAM_ECC_ERR_EX_EN; + } + else + { + /* ECC mechanism may be disabled, depending on driver status */ + FmDisableRamsEcc(p_Fm); + tmpReg &= ~FPM_MURAM_ECC_ERR_EX_EN; + } + + WRITE_UINT32(p_Fm->p_FmFpmRegs->fmrie, tmpReg); + break; + default: + RETURN_ERROR(MINOR, E_INVALID_SELECTION, NO_MSG); + } + } + else + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Undefined exception")); + + return E_OK; +} + +t_Error FM_GetRevision(t_Handle h_Fm, t_FmRevisionInfo *p_FmRevisionInfo) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t tmpReg; + t_Error err; + t_FmIpcMsg msg; + t_FmIpcReply reply; + uint32_t replyLength; + t_FmIpcRevisionInfo ipcRevInfo; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + + if (p_Fm->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_GET_REV; + replyLength = sizeof(uint32_t) + sizeof(t_FmRevisionInfo); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + if (replyLength != (sizeof(uint32_t) + sizeof(t_FmRevisionInfo))) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + memcpy((uint8_t*)&ipcRevInfo, reply.replyBody, sizeof(t_FmRevisionInfo)); + p_FmRevisionInfo->majorRev = ipcRevInfo.majorRev; + p_FmRevisionInfo->minorRev = ipcRevInfo.minorRev; + return (t_Error)(reply.error); + } + + /* read revision register 1 */ + tmpReg = GET_UINT32(p_Fm->p_FmFpmRegs->fm_ip_rev_1); + p_FmRevisionInfo->majorRev = (uint8_t)((tmpReg & FPM_REV1_MAJOR_MASK) >> FPM_REV1_MAJOR_SHIFT); + p_FmRevisionInfo->minorRev = (uint8_t)((tmpReg & FPM_REV1_MINOR_MASK) >> FPM_REV1_MINOR_SHIFT); + + return E_OK; +} + +uint32_t FM_GetCounter(t_Handle h_Fm, e_FmCounters counter) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + t_Error err; + uint32_t counterValue; + t_FmIpcMsg msg; + t_FmIpcReply reply; + uint32_t replyLength, outCounter; + + SANITY_CHECK_RETURN_VALUE(p_Fm, E_INVALID_HANDLE, 0); + SANITY_CHECK_RETURN_VALUE(!p_Fm->p_FmDriverParam, E_INVALID_STATE, 0); + + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_GET_COUNTER; + memcpy(msg.msgBody, (uint8_t *)&counter, sizeof(uint32_t)); + replyLength = sizeof(uint32_t) + sizeof(uint32_t); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId) +sizeof(counterValue), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + if(replyLength != (sizeof(uint32_t) + sizeof(uint32_t))) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + memcpy((uint8_t*)&outCounter, reply.replyBody, sizeof(uint32_t)); + + return outCounter; + } + + switch(counter) + { + case(e_FM_COUNTERS_ENQ_TOTAL_FRAME): + return GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_etfc); + case(e_FM_COUNTERS_DEQ_TOTAL_FRAME): + return GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_dtfc); + case(e_FM_COUNTERS_DEQ_0): + return GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_dc0); + case(e_FM_COUNTERS_DEQ_1): + return GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_dc1); + case(e_FM_COUNTERS_DEQ_2): + return GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_dc2); + case(e_FM_COUNTERS_DEQ_3): + return GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_dc3); + case(e_FM_COUNTERS_DEQ_FROM_DEFAULT): + return GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_dfdc); + case(e_FM_COUNTERS_DEQ_FROM_CONTEXT): + return GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_dfcc); + case(e_FM_COUNTERS_DEQ_FROM_FD): + return GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_dffc); + case(e_FM_COUNTERS_DEQ_CONFIRM): + return GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_dcc); + case(e_FM_COUNTERS_SEMAPHOR_ENTRY_FULL_REJECT): + return GET_UINT32(p_Fm->p_FmDmaRegs->fmdmsefrc); + case(e_FM_COUNTERS_SEMAPHOR_QUEUE_FULL_REJECT): + return GET_UINT32(p_Fm->p_FmDmaRegs->fmdmsqfrc); + case(e_FM_COUNTERS_SEMAPHOR_SYNC_REJECT): + return GET_UINT32(p_Fm->p_FmDmaRegs->fmdmssrc); + default: + break; + } + /* should never get here */ + ASSERT_COND(FALSE); + + return 0; +} + +t_Error FM_ModifyCounter(t_Handle h_Fm, e_FmCounters counter, uint32_t val) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Fm->p_FmDriverParam, E_INVALID_STATE); + + /* When applicable (when there is an 'enable counters' bit, + check that counters are enabled */ + switch(counter) + { + case(e_FM_COUNTERS_ENQ_TOTAL_FRAME): + case(e_FM_COUNTERS_DEQ_TOTAL_FRAME): + case(e_FM_COUNTERS_DEQ_0): + case(e_FM_COUNTERS_DEQ_1): + case(e_FM_COUNTERS_DEQ_2): + case(e_FM_COUNTERS_DEQ_3): + case(e_FM_COUNTERS_DEQ_FROM_DEFAULT): + case(e_FM_COUNTERS_DEQ_FROM_CONTEXT): + case(e_FM_COUNTERS_DEQ_FROM_FD): + case(e_FM_COUNTERS_DEQ_CONFIRM): + if(!(GET_UINT32(p_Fm->p_FmQmiRegs->fmqm_gc) & QMI_CFG_EN_COUNTERS)) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Requested counter was not enabled")); + break; + default: + break; + } + + /* Set counter */ + switch(counter) + { + case(e_FM_COUNTERS_ENQ_TOTAL_FRAME): + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_etfc, val); + break; + case(e_FM_COUNTERS_DEQ_TOTAL_FRAME): + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_dtfc, val); + break; + case(e_FM_COUNTERS_DEQ_0): + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_dc0, val); + break; + case(e_FM_COUNTERS_DEQ_1): + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_dc1, val); + break; + case(e_FM_COUNTERS_DEQ_2): + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_dc2, val); + break; + case(e_FM_COUNTERS_DEQ_3): + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_dc3, val); + break; + case(e_FM_COUNTERS_DEQ_FROM_DEFAULT): + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_dfdc, val); + break; + case(e_FM_COUNTERS_DEQ_FROM_CONTEXT): + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_dfcc, val); + break; + case(e_FM_COUNTERS_DEQ_FROM_FD): + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_dffc, val); + break; + case(e_FM_COUNTERS_DEQ_CONFIRM): + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_dcc, val); + break; + case(e_FM_COUNTERS_SEMAPHOR_ENTRY_FULL_REJECT): + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmsefrc, val); + break; + case(e_FM_COUNTERS_SEMAPHOR_QUEUE_FULL_REJECT): + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmsqfrc, val); + break; + case(e_FM_COUNTERS_SEMAPHOR_SYNC_REJECT): + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmssrc, val); + break; + default: + break; + } + + return E_OK; +} + +void FM_SetDmaEmergency(t_Handle h_Fm, e_FmDmaMuramPort muramPort, bool enable) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t bitMask; + + SANITY_CHECK_RETURN(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN(!p_Fm->p_FmDriverParam, E_INVALID_STATE); + + bitMask = (uint32_t)((muramPort==e_FM_DMA_MURAM_PORT_WRITE) ? DMA_MODE_EMERGENCY_WRITE : DMA_MODE_EMERGENCY_READ); + + if(enable) + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmmr, GET_UINT32(p_Fm->p_FmDmaRegs->fmdmmr) | bitMask); + else /* disable */ + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmmr, GET_UINT32(p_Fm->p_FmDmaRegs->fmdmmr) & ~bitMask); + + return; +} + +void FM_SetDmaExtBusPri(t_Handle h_Fm, e_FmDmaExtBusPri pri) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN(!p_Fm->p_FmDriverParam, E_INVALID_STATE); + + WRITE_UINT32(p_Fm->p_FmDmaRegs->fmdmmr, GET_UINT32(p_Fm->p_FmDmaRegs->fmdmmr) | ((uint32_t)pri << DMA_MODE_BUS_PRI_SHIFT) ); + + return; +} + +void FM_GetDmaStatus(t_Handle h_Fm, t_FmDmaStatus *p_FmDmaStatus) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t tmpReg; + t_Error err; + t_FmIpcMsg msg; + t_FmIpcReply reply; + uint32_t replyLength; + t_FmIpcDmaStatus ipcDmaStatus; + + SANITY_CHECK_RETURN(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN(!p_Fm->p_FmDriverParam, E_INVALID_STATE); + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + memset(&reply, 0, sizeof(reply)); + msg.msgId = FM_DMA_STAT; + replyLength = sizeof(uint32_t) + sizeof(t_FmIpcDmaStatus); + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId), + (uint8_t*)&reply, + &replyLength, + NULL, + NULL)) != E_OK) + { + REPORT_ERROR(MINOR, err, NO_MSG); + return; + } + if (replyLength != (sizeof(uint32_t) + sizeof(t_FmIpcDmaStatus))) + { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("IPC reply length mismatch")); + return; + } + memcpy((uint8_t*)&ipcDmaStatus, reply.replyBody, sizeof(t_FmIpcDmaStatus)); + + p_FmDmaStatus->cmqNotEmpty = (bool)ipcDmaStatus.boolCmqNotEmpty; /**< Command queue is not empty */ + p_FmDmaStatus->busError = (bool)ipcDmaStatus.boolBusError; /**< Bus error occurred */ + p_FmDmaStatus->readBufEccError = (bool)ipcDmaStatus.boolReadBufEccError; /**< Double ECC error on buffer Read */ + p_FmDmaStatus->writeBufEccSysError =(bool)ipcDmaStatus.boolWriteBufEccSysError; /**< Double ECC error on buffer write from system side */ + p_FmDmaStatus->writeBufEccFmError = (bool)ipcDmaStatus.boolWriteBufEccFmError; /**< Double ECC error on buffer write from FM side */ + return; + } + + tmpReg = GET_UINT32(p_Fm->p_FmDmaRegs->fmdmsr); + + p_FmDmaStatus->cmqNotEmpty = (bool)(tmpReg & DMA_STATUS_CMD_QUEUE_NOT_EMPTY); + p_FmDmaStatus->busError = (bool)(tmpReg & DMA_STATUS_BUS_ERR); + p_FmDmaStatus->readBufEccError = (bool)(tmpReg & DMA_STATUS_READ_ECC); + p_FmDmaStatus->writeBufEccSysError = (bool)(tmpReg & DMA_STATUS_SYSTEM_WRITE_ECC); + p_FmDmaStatus->writeBufEccFmError = (bool)(tmpReg & DMA_STATUS_FM_WRITE_ECC); + return; +} + +t_Error FM_ForceIntr (t_Handle h_Fm, e_FmExceptions exception) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Fm->p_FmDriverParam, E_INVALID_STATE); + + switch(exception) + { + case e_FM_EX_QMI_DEQ_FROM_UNKNOWN_PORTID: + if (!(p_Fm->p_FmStateStruct->exceptions & FM_EX_QMI_DEQ_FROM_UNKNOWN_PORTID)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception is masked")); + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_eif, QMI_ERR_INTR_EN_DEQ_FROM_DEF); + break; + case e_FM_EX_QMI_SINGLE_ECC: + if (!(p_Fm->p_FmStateStruct->exceptions & FM_EX_QMI_SINGLE_ECC)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception is masked")); + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_if, QMI_INTR_EN_SINGLE_ECC); + break; + case e_FM_EX_QMI_DOUBLE_ECC: + if (!(p_Fm->p_FmStateStruct->exceptions & FM_EX_QMI_DOUBLE_ECC)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception is masked")); + WRITE_UINT32(p_Fm->p_FmQmiRegs->fmqm_eif, QMI_ERR_INTR_EN_DOUBLE_ECC); + break; + case e_FM_EX_BMI_LIST_RAM_ECC: + if (!(p_Fm->p_FmStateStruct->exceptions & FM_EX_BMI_LIST_RAM_ECC)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception is masked")); + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_ifr, BMI_ERR_INTR_EN_LIST_RAM_ECC); + break; + case e_FM_EX_BMI_PIPELINE_ECC: + if (!(p_Fm->p_FmStateStruct->exceptions & FM_EX_BMI_PIPELINE_ECC)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception is masked")); + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_ifr, BMI_ERR_INTR_EN_PIPELINE_ECC); + break; + case e_FM_EX_BMI_STATISTICS_RAM_ECC: + if (!(p_Fm->p_FmStateStruct->exceptions & FM_EX_BMI_STATISTICS_RAM_ECC)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception is masked")); + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_ifr, BMI_ERR_INTR_EN_STATISTICS_RAM_ECC); + break; + case e_FM_EX_BMI_DISPATCH_RAM_ECC: + if (!(p_Fm->p_FmStateStruct->exceptions & FM_EX_BMI_DISPATCH_RAM_ECC)) + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception is masked")); + WRITE_UINT32(p_Fm->p_FmBmiRegs->fmbm_ifr, BMI_ERR_INTR_EN_DISPATCH_RAM_ECC); + break; + default: + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("The selected exception may not be forced")); + } + + return E_OK; +} + +void FM_Resume(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm*)h_Fm; + uint32_t tmpReg; + + SANITY_CHECK_RETURN(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN(!p_Fm->p_FmDriverParam, E_INVALID_STATE); + + if (p_Fm->guestId == NCSW_MASTER_ID) + { + tmpReg = GET_UINT32(p_Fm->p_FmFpmRegs->fpmem); + /* clear tmpReg event bits in order not to clear standing events */ + tmpReg &= ~(FPM_EV_MASK_DOUBLE_ECC | FPM_EV_MASK_STALL | FPM_EV_MASK_SINGLE_ECC); + WRITE_UINT32(p_Fm->p_FmFpmRegs->fpmem, tmpReg | FPM_EV_MASK_RELEASE_FM); + } + else + ASSERT_COND(0); /* TODO */ +} + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +t_Error FM_DumpRegs(t_Handle h_Fm) +{ + t_Fm *p_Fm = (t_Fm *)h_Fm; + uint8_t i = 0; + t_Error err; + t_FmIpcMsg msg; + + DECLARE_DUMP; + + SANITY_CHECK_RETURN_ERROR(p_Fm, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(!p_Fm->p_FmDriverParam, E_INVALID_STATE); + + + if(p_Fm->guestId != NCSW_MASTER_ID) + { + memset(&msg, 0, sizeof(msg)); + msg.msgId = FM_DUMP_REGS; + if ((err = XX_IpcSendMessage(p_Fm->h_IpcSessions[0], + (uint8_t*)&msg, + sizeof(msg.msgId), + NULL, + NULL, + NULL, + NULL)) != E_OK) + RETURN_ERROR(MINOR, err, NO_MSG); + return E_OK; + } + + + DUMP_SUBTITLE(("\n")); + + DUMP_TITLE(p_Fm->p_FmFpmRegs, ("FmFpmRegs Regs")); + + DUMP_VAR(p_Fm->p_FmFpmRegs,fpmtnc); + DUMP_VAR(p_Fm->p_FmFpmRegs,fpmpr); + DUMP_VAR(p_Fm->p_FmFpmRegs,brkc); + DUMP_VAR(p_Fm->p_FmFpmRegs,fpmflc); + DUMP_VAR(p_Fm->p_FmFpmRegs,fpmdis1); + DUMP_VAR(p_Fm->p_FmFpmRegs,fpmdis2); + DUMP_VAR(p_Fm->p_FmFpmRegs,fmepi); + DUMP_VAR(p_Fm->p_FmFpmRegs,fmrie); + + DUMP_TITLE(&p_Fm->p_FmFpmRegs->fmfpfcev, ("fmfpfcev")); + DUMP_SUBSTRUCT_ARRAY(i, 4) + { + DUMP_MEMORY(&p_Fm->p_FmFpmRegs->fmfpfcev[i], sizeof(uint32_t)); + } + + DUMP_TITLE(&p_Fm->p_FmFpmRegs->fmfpfcee, ("fmfpfcee")); + DUMP_SUBSTRUCT_ARRAY(i, 4) + { + DUMP_MEMORY(&p_Fm->p_FmFpmRegs->fmfpfcee[i], sizeof(uint32_t)); + } + + DUMP_SUBTITLE(("\n")); + DUMP_VAR(p_Fm->p_FmFpmRegs,fpmtsc1); + DUMP_VAR(p_Fm->p_FmFpmRegs,fpmtsc2); + DUMP_VAR(p_Fm->p_FmFpmRegs,fpmtsp); + DUMP_VAR(p_Fm->p_FmFpmRegs,fpmtsf); + DUMP_VAR(p_Fm->p_FmFpmRegs,fmrcr); + DUMP_VAR(p_Fm->p_FmFpmRegs,fpmextc); + DUMP_VAR(p_Fm->p_FmFpmRegs,fpmext1); + DUMP_VAR(p_Fm->p_FmFpmRegs,fpmext2); + + DUMP_TITLE(&p_Fm->p_FmFpmRegs->fpmdrd, ("fpmdrd")); + DUMP_SUBSTRUCT_ARRAY(i, 16) + { + DUMP_MEMORY(&p_Fm->p_FmFpmRegs->fpmdrd[i], sizeof(uint32_t)); + } + + DUMP_SUBTITLE(("\n")); + DUMP_VAR(p_Fm->p_FmFpmRegs,fpmdra); + DUMP_VAR(p_Fm->p_FmFpmRegs,fm_ip_rev_1); + DUMP_VAR(p_Fm->p_FmFpmRegs,fm_ip_rev_2); + DUMP_VAR(p_Fm->p_FmFpmRegs,fmrstc); + DUMP_VAR(p_Fm->p_FmFpmRegs,fmcld); + DUMP_VAR(p_Fm->p_FmFpmRegs,fmnpi); + DUMP_VAR(p_Fm->p_FmFpmRegs,fpmem); + + DUMP_TITLE(&p_Fm->p_FmFpmRegs->fpmcev, ("fpmcev")); + DUMP_SUBSTRUCT_ARRAY(i, 4) + { + DUMP_MEMORY(&p_Fm->p_FmFpmRegs->fpmcev[i], sizeof(uint32_t)); + } + + DUMP_TITLE(&p_Fm->p_FmFpmRegs->fmfp_ps, ("fmfp_ps")); + DUMP_SUBSTRUCT_ARRAY(i, 64) + { + DUMP_MEMORY(&p_Fm->p_FmFpmRegs->fmfp_ps[i], sizeof(uint32_t)); + } + + + DUMP_TITLE(p_Fm->p_FmDmaRegs, ("p_FmDmaRegs Regs")); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmsr); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmmr); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmtr); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmhy); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmsetr); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmtah); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmtal); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmtcid); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmra); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmrd); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmwcr); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmebcr); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmccqdr); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmccqvr1); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmccqvr2); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmcqvr3); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmcqvr4); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmcqvr5); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmsefrc); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmsqfrc); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmssrc); + DUMP_VAR(p_Fm->p_FmDmaRegs,fmdmdcr); + + DUMP_TITLE(&p_Fm->p_FmDmaRegs->fmdmplr, ("fmdmplr")); + + DUMP_SUBSTRUCT_ARRAY(i, FM_SIZE_OF_LIODN_TABLE/2) + { + DUMP_MEMORY(&p_Fm->p_FmDmaRegs->fmdmplr[i], sizeof(uint32_t)); + } + + DUMP_TITLE(p_Fm->p_FmBmiRegs, ("p_FmBmiRegs COMMON Regs")); + DUMP_VAR(p_Fm->p_FmBmiRegs,fmbm_init); + DUMP_VAR(p_Fm->p_FmBmiRegs,fmbm_cfg1); + DUMP_VAR(p_Fm->p_FmBmiRegs,fmbm_cfg2); + DUMP_VAR(p_Fm->p_FmBmiRegs,fmbm_ievr); + DUMP_VAR(p_Fm->p_FmBmiRegs,fmbm_ier); + + DUMP_TITLE(&p_Fm->p_FmBmiRegs->fmbm_arb, ("fmbm_arb")); + DUMP_SUBSTRUCT_ARRAY(i, 8) + { + DUMP_MEMORY(&p_Fm->p_FmBmiRegs->fmbm_arb[i], sizeof(uint32_t)); + } + + + DUMP_TITLE(p_Fm->p_FmQmiRegs, ("p_FmQmiRegs COMMON Regs")); + DUMP_VAR(p_Fm->p_FmQmiRegs,fmqm_gc); + DUMP_VAR(p_Fm->p_FmQmiRegs,fmqm_eie); + DUMP_VAR(p_Fm->p_FmQmiRegs,fmqm_eien); + DUMP_VAR(p_Fm->p_FmQmiRegs,fmqm_eif); + DUMP_VAR(p_Fm->p_FmQmiRegs,fmqm_ie); + DUMP_VAR(p_Fm->p_FmQmiRegs,fmqm_ien); + DUMP_VAR(p_Fm->p_FmQmiRegs,fmqm_if); + DUMP_VAR(p_Fm->p_FmQmiRegs,fmqm_gs); + DUMP_VAR(p_Fm->p_FmQmiRegs,fmqm_ts); + DUMP_VAR(p_Fm->p_FmQmiRegs,fmqm_etfc); + + return E_OK; +} +#endif /* (defined(DEBUG_ERRORS) && ... */ + --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/fm.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/fm.h @@ -0,0 +1,699 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm.h + + @Description FM internal structures and definitions. +*//***************************************************************************/ +#ifndef __FM_H +#define __FM_H + +#include "error_ext.h" +#include "std_ext.h" +#include "fm_ext.h" +#include "fm_ipc.h" + + +#define __ERR_MODULE__ MODULE_FM + +#define FM_MAX_NUM_OF_HW_PORT_IDS 64 +#define FM_MAX_NUM_OF_GUESTS 100 + +/**************************************************************************//** + @Description Exceptions +*//***************************************************************************/ +#define FM_EX_DMA_BUS_ERROR 0x80000000 /**< DMA bus error. */ +#define FM_EX_DMA_READ_ECC 0x40000000 +#define FM_EX_DMA_SYSTEM_WRITE_ECC 0x20000000 +#define FM_EX_DMA_FM_WRITE_ECC 0x10000000 +#define FM_EX_FPM_STALL_ON_TASKS 0x08000000 /**< Stall of tasks on FPM */ +#define FM_EX_FPM_SINGLE_ECC 0x04000000 /**< Single ECC on FPM */ +#define FM_EX_FPM_DOUBLE_ECC 0x02000000 +#define FM_EX_QMI_SINGLE_ECC 0x01000000 /**< Single ECC on FPM */ +#define FM_EX_QMI_DEQ_FROM_UNKNOWN_PORTID 0x00800000 /**< Dequeu from default queue id */ +#define FM_EX_QMI_DOUBLE_ECC 0x00400000 +#define FM_EX_BMI_LIST_RAM_ECC 0x00200000 +#define FM_EX_BMI_PIPELINE_ECC 0x00100000 +#define FM_EX_BMI_STATISTICS_RAM_ECC 0x00080000 +#define FM_EX_IRAM_ECC 0x00040000 +#define FM_EX_NURAM_ECC 0x00020000 +#define FM_EX_BMI_DISPATCH_RAM_ECC 0x00010000 + +#define GET_EXCEPTION_FLAG(bitMask, exception) switch(exception){ \ + case e_FM_EX_DMA_BUS_ERROR: \ + bitMask = FM_EX_DMA_BUS_ERROR; break; \ + case e_FM_EX_DMA_READ_ECC: \ + bitMask = FM_EX_DMA_READ_ECC; break; \ + case e_FM_EX_DMA_SYSTEM_WRITE_ECC: \ + bitMask = FM_EX_DMA_SYSTEM_WRITE_ECC; break; \ + case e_FM_EX_DMA_FM_WRITE_ECC: \ + bitMask = FM_EX_DMA_FM_WRITE_ECC; break; \ + case e_FM_EX_FPM_STALL_ON_TASKS: \ + bitMask = FM_EX_FPM_STALL_ON_TASKS; break; \ + case e_FM_EX_FPM_SINGLE_ECC: \ + bitMask = FM_EX_FPM_SINGLE_ECC; break; \ + case e_FM_EX_FPM_DOUBLE_ECC: \ + bitMask = FM_EX_FPM_DOUBLE_ECC; break; \ + case e_FM_EX_QMI_SINGLE_ECC: \ + bitMask = FM_EX_QMI_SINGLE_ECC; break; \ + case e_FM_EX_QMI_DOUBLE_ECC: \ + bitMask = FM_EX_QMI_DOUBLE_ECC; break; \ + case e_FM_EX_QMI_DEQ_FROM_UNKNOWN_PORTID: \ + bitMask = FM_EX_QMI_DEQ_FROM_UNKNOWN_PORTID; break; \ + case e_FM_EX_BMI_LIST_RAM_ECC: \ + bitMask = FM_EX_BMI_LIST_RAM_ECC; break; \ + case e_FM_EX_BMI_PIPELINE_ECC: \ + bitMask = FM_EX_BMI_PIPELINE_ECC; break; \ + case e_FM_EX_BMI_STATISTICS_RAM_ECC: \ + bitMask = FM_EX_BMI_STATISTICS_RAM_ECC; break; \ + case e_FM_EX_BMI_DISPATCH_RAM_ECC: \ + bitMask = FM_EX_BMI_DISPATCH_RAM_ECC; break; \ + case e_FM_EX_IRAM_ECC: \ + bitMask = FM_EX_IRAM_ECC; break; \ + case e_FM_EX_MURAM_ECC: \ + bitMask = FM_EX_NURAM_ECC; break; \ + default: bitMask = 0;break;} + +/**************************************************************************//** + @Description defaults +*//***************************************************************************/ +#define DEFAULT_exceptions (FM_EX_DMA_BUS_ERROR |\ + FM_EX_DMA_READ_ECC |\ + FM_EX_DMA_SYSTEM_WRITE_ECC |\ + FM_EX_DMA_FM_WRITE_ECC |\ + FM_EX_FPM_STALL_ON_TASKS |\ + FM_EX_FPM_SINGLE_ECC |\ + FM_EX_FPM_DOUBLE_ECC |\ + FM_EX_QMI_SINGLE_ECC |\ + FM_EX_QMI_DEQ_FROM_UNKNOWN_PORTID|\ + FM_EX_QMI_DOUBLE_ECC |\ + FM_EX_BMI_LIST_RAM_ECC |\ + FM_EX_BMI_PIPELINE_ECC |\ + FM_EX_BMI_STATISTICS_RAM_ECC |\ + FM_EX_BMI_DISPATCH_RAM_ECC |\ + FM_EX_IRAM_ECC |\ + FM_EX_NURAM_ECC ) +#define DEFAULT_totalNumOfTasks (BMI_MAX_NUM_OF_TASKS*3/4) +#define DEFAULT_totalFifoSize (BMI_MAX_FIFO_SIZE*3/4) +#define DEFAULT_maxNumOfOpenDmas (BMI_MAX_NUM_OF_DMAS*3/4) +#define DEFAULT_eccEnable FALSE +#define DEFAULT_dispLimit 0 +#define DEFAULT_prsDispTh 16 +#define DEFAULT_plcrDispTh 16 +#define DEFAULT_kgDispTh 16 +#define DEFAULT_bmiDispTh 16 +#define DEFAULT_qmiEnqDispTh 16 +#define DEFAULT_qmiDeqDispTh 16 +#define DEFAULT_fmCtl1DispTh 16 +#define DEFAULT_fmCtl2DispTh 16 +#define DEFAULT_cacheOverride e_FM_DMA_NO_CACHE_OR +#ifdef FM_PEDANTIC_DMA +#define DEFAULT_aidOverride TRUE +#else +#define DEFAULT_aidOverride FALSE +#endif /* FM_PEDANTIC_DMA */ +#define DEFAULT_aidMode e_FM_DMA_AID_OUT_TNUM +#define DEFAULT_dmaStopOnBusError FALSE +#define DEFAULT_stopAtBusError FALSE +#define DEFAULT_axiDbgNumOfBeats 1 +#define DEFAULT_dmaCamNumOfEntries 32 +#define DEFAULT_dmaCommQLow ((DMA_THRESH_MAX_COMMQ+1)/2) +#define DEFAULT_dmaCommQHigh ((DMA_THRESH_MAX_COMMQ+1)*3/4) +#define DEFAULT_dmaReadIntBufLow ((DMA_THRESH_MAX_BUF+1)/2) +#define DEFAULT_dmaReadIntBufHigh ((DMA_THRESH_MAX_BUF+1)*3/4) +#define DEFAULT_dmaWriteIntBufLow ((DMA_THRESH_MAX_BUF+1)/2) +#define DEFAULT_dmaWriteIntBufHigh ((DMA_THRESH_MAX_BUF+1)*3/4) +#define DEFAULT_dmaSosEmergency 0 +#define DEFAULT_dmaDbgCntMode e_FM_DMA_DBG_NO_CNT +#define DEFAULT_catastrophicErr e_FM_CATASTROPHIC_ERR_STALL_PORT +#define DEFAULT_dmaErr e_FM_DMA_ERR_CATASTROPHIC +#define DEFAULT_resetOnInit FALSE +#define DEFAULT_haltOnExternalActivation FALSE /* do not change! if changed, must be disabled for rev1 ! */ +#define DEFAULT_haltOnUnrecoverableEccError FALSE /* do not change! if changed, must be disabled for rev1 ! */ +#define DEFAULT_externalEccRamsEnable FALSE +#define DEFAULT_VerifyUcode FALSE +#define DEFAULT_tnumAgingPeriod 0 +#define DEFAULT_dmaWatchdog 0 /* disabled */ +#define DEFAULT_mtu 9600 + +/**************************************************************************//** + @Description Modules registers offsets +*//***************************************************************************/ +#define FM_MM_MURAM 0x00000000 +#define FM_MM_BMI 0x00080000 +#define FM_MM_QMI 0x00080400 +#define FM_MM_PRS 0x000c7000 +#define FM_MM_KG 0x000C1000 +#define FM_MM_DMA 0x000C2000 +#define FM_MM_FPM 0x000C3000 +#define FM_MM_PLCR 0x000C0000 +#define FM_MM_IMEM 0x000C4000 + +/**************************************************************************//** + @Description Interrupt Enable/Mask +*//***************************************************************************/ + +/**************************************************************************//** + @Description Memory Mapped Registers +*//***************************************************************************/ + +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(push,1) +#endif /* defined(__MWERKS__) && ... */ +#define MEM_MAP_START + +typedef _Packed struct +{ + volatile uint32_t fpmtnc; /**< FPM TNUM Control */ + volatile uint32_t fpmpr; /**< FPM Port_ID FmCtl Association */ + volatile uint32_t brkc; /**< FPM Breakpoint Control */ + volatile uint32_t fpmflc; /**< FPM Flush Control */ + volatile uint32_t fpmdis1; /**< FPM Dispatch Thresholds1 */ + volatile uint32_t fpmdis2; /**< FPM Dispatch Thresholds2 */ + volatile uint32_t fmepi; /**< FM Error Pending Interrupts */ + volatile uint32_t fmrie; /**< FM Error Interrupt Enable */ + volatile uint32_t fmfpfcev[4]; /**< FPM FMan-Controller Event 1-4 */ + volatile uint8_t res1[16]; /**< reserved */ + volatile uint32_t fmfpfcee[4]; /**< PM FMan-Controller Event 1-4 */ + volatile uint8_t res2[16]; /**< reserved */ + volatile uint32_t fpmtsc1; /**< FPM TimeStamp Control1 */ + volatile uint32_t fpmtsc2; /**< FPM TimeStamp Control2 */ + volatile uint32_t fpmtsp; /**< FPM Time Stamp */ + volatile uint32_t fpmtsf; /**< FPM Time Stamp Fraction */ + volatile uint32_t fmrcr; /**< FM Rams Control */ + volatile uint32_t fpmextc; /**< FPM External Requests Control */ + volatile uint32_t fpmext1; /**< FPM External Requests Config1 */ + volatile uint32_t fpmext2; /**< FPM External Requests Config2 */ + volatile uint32_t fpmdrd[16]; /**< FPM Data_Ram Data 0-15 */ + volatile uint32_t fpmdra; /**< FPM Data Ram Access */ + volatile uint32_t fm_ip_rev_1; /**< FM IP Block Revision 1 */ + volatile uint32_t fm_ip_rev_2; /**< FM IP Block Revision 2 */ + volatile uint32_t fmrstc; /**< FM Reset Command */ + volatile uint32_t fmcld; /**< FM Classifier Debug */ + volatile uint32_t fmnpi; /**< FM Normal Pending Interrupts */ + volatile uint32_t fmfp_exte; /**< FPM External Requests Enable */ + volatile uint32_t fpmem; /**< FPM Event & Mask */ + volatile uint32_t fpmcev[4]; /**< FPM CPU Event 1-4 */ + volatile uint8_t res4[16]; /**< reserved */ + volatile uint32_t fmfp_ps[0x40]; /**< FPM Port Status */ + volatile uint8_t reserved1[0x260]; + volatile uint32_t fpmts[128]; /**< 0x400: FPM Task Status */ +} _PackedType t_FmFpmRegs; + +#define NUM_OF_DBG_TRAPS 3 + +typedef _Packed struct +{ + volatile uint32_t fmbm_init; /**< BMI Initialization */ + volatile uint32_t fmbm_cfg1; /**< BMI Configuration 1 */ + volatile uint32_t fmbm_cfg2; /**< BMI Configuration 2 */ + volatile uint32_t reserved[5]; + volatile uint32_t fmbm_ievr; /**< Interrupt Event Register */ + volatile uint32_t fmbm_ier; /**< Interrupt Enable Register */ + volatile uint32_t fmbm_ifr; /**< Interrupt Force Register */ + volatile uint32_t reserved1[5]; + volatile uint32_t fmbm_arb[8]; /**< BMI Arbitration */ + volatile uint32_t reserved2[12]; + volatile uint32_t fmbm_dtc[NUM_OF_DBG_TRAPS]; /**< BMI Debug Trap Counter */ + volatile uint32_t reserved3; + volatile uint32_t fmbm_dcv[NUM_OF_DBG_TRAPS][4]; /**< BMI Debug Compare Value */ + volatile uint32_t fmbm_dcm[NUM_OF_DBG_TRAPS][4]; /**< BMI Debug Compare Mask */ + volatile uint32_t fmbm_gde; /**< BMI Global Debug Enable */ + volatile uint32_t fmbm_pp[63]; /**< BMI Port Parameters */ + volatile uint32_t reserved4; + volatile uint32_t fmbm_pfs[63]; /**< BMI Port FIFO Size */ + volatile uint32_t reserved5; + volatile uint32_t fmbm_ppid[63]; /**< Port Partition ID */ +} _PackedType t_FmBmiRegs; + +typedef _Packed struct +{ + volatile uint32_t fmqm_gc; /**< General Configuration Register */ + volatile uint32_t Reserved0; + volatile uint32_t fmqm_eie; /**< Error Interrupt Event Register */ + volatile uint32_t fmqm_eien; /**< Error Interrupt Enable Register */ + volatile uint32_t fmqm_eif; /**< Error Interrupt Force Register */ + volatile uint32_t fmqm_ie; /**< Interrupt Event Register */ + volatile uint32_t fmqm_ien; /**< Interrupt Enable Register */ + volatile uint32_t fmqm_if; /**< Interrupt Force Register */ + volatile uint32_t fmqm_gs; /**< Global Status Register */ + volatile uint32_t fmqm_ts; /**< Task Status Register */ + volatile uint32_t fmqm_etfc; /**< Enqueue Total Frame Counter */ + volatile uint32_t fmqm_dtfc; /**< Dequeue Total Frame Counter */ + volatile uint32_t fmqm_dc0; /**< Dequeue Counter 0 */ + volatile uint32_t fmqm_dc1; /**< Dequeue Counter 1 */ + volatile uint32_t fmqm_dc2; /**< Dequeue Counter 2 */ + volatile uint32_t fmqm_dc3; /**< Dequeue Counter 3 */ + volatile uint32_t fmqm_dfdc; /**< Dequeue FQID from Default Counter */ + volatile uint32_t fmqm_dfcc; /**< Dequeue FQID from Context Counter */ + volatile uint32_t fmqm_dffc; /**< Dequeue FQID from FD Counter */ + volatile uint32_t fmqm_dcc; /**< Dequeue Confirm Counter */ + volatile uint32_t Reserved1a[7]; + volatile uint32_t fmqm_tapc; /**< Tnum Aging Period Control */ + volatile uint32_t fmqm_dmcvc; /**< Dequeue MAC Command Valid Counter */ + volatile uint32_t fmqm_difdcc; /**< Dequeue Invalid FD Command Counter */ + volatile uint32_t fmqm_da1v; /**< Dequeue A1 Valid Counter */ + volatile uint32_t Reserved1b; + volatile uint32_t fmqm_dtc; /**< 0x0080 Debug Trap Counter */ + volatile uint32_t fmqm_efddd; /**< 0x0084 Enqueue Frame Descriptor Dynamic Debug */ + volatile uint32_t Reserved3[2]; + _Packed struct { + volatile uint32_t fmqm_dtcfg1; /**< 0x0090 Debug Trap Configuration 1 Register */ + volatile uint32_t fmqm_dtval1; /**< Debug Trap Value 1 Register */ + volatile uint32_t fmqm_dtm1; /**< Debug Trap Mask 1 Register */ + volatile uint32_t fmqm_dtc1; /**< Debug Trap Counter 1 Register */ + volatile uint32_t fmqm_dtcfg2; /**< Debug Trap Configuration 2 Register */ + volatile uint32_t fmqm_dtval2; /**< Debug Trap Value 2 Register */ + volatile uint32_t fmqm_dtm2; /**< Debug Trap Mask 2 Register */ + volatile uint32_t Reserved1; + } _PackedType dbgTraps[NUM_OF_DBG_TRAPS]; +} _PackedType t_FmQmiRegs; + +typedef _Packed struct +{ + volatile uint32_t fmdmsr; /**< FM DMA status register 0x04 */ + volatile uint32_t fmdmmr; /**< FM DMA mode register 0x08 */ + volatile uint32_t fmdmtr; /**< FM DMA bus threshold register 0x0c */ + volatile uint32_t fmdmhy; /**< FM DMA bus hysteresis register 0x10 */ + volatile uint32_t fmdmsetr; /**< FM DMA SOS emergency Threshold Register 0x14 */ + volatile uint32_t fmdmtah; /**< FM DMA transfer bus address high register 0x18 */ + volatile uint32_t fmdmtal; /**< FM DMA transfer bus address low register 0x1C */ + volatile uint32_t fmdmtcid; /**< FM DMA transfer bus communication ID register 0x20 */ + volatile uint32_t fmdmra; /**< FM DMA bus internal ram address register 0x24 */ + volatile uint32_t fmdmrd; /**< FM DMA bus internal ram data register 0x28 */ + volatile uint32_t fmdmwcr; /**< FM DMA CAM watchdog counter value 0x2C */ + volatile uint32_t fmdmebcr; /**< FM DMA CAM base in MURAM register 0x30 */ + volatile uint32_t fmdmccqdr; /**< FM DMA CAM and CMD Queue Debug register 0x34 */ + volatile uint32_t fmdmccqvr1; /**< FM DMA CAM and CMD Queue Value register #1 0x38 */ + volatile uint32_t fmdmccqvr2; /**< FM DMA CAM and CMD Queue Value register #2 0x3C */ + volatile uint32_t fmdmcqvr3; /**< FM DMA CMD Queue Value register #3 0x40 */ + volatile uint32_t fmdmcqvr4; /**< FM DMA CMD Queue Value register #4 0x44 */ + volatile uint32_t fmdmcqvr5; /**< FM DMA CMD Queue Value register #5 0x48 */ + volatile uint32_t fmdmsefrc; /**< FM DMA Semaphore Entry Full Reject Counter 0x50 */ + volatile uint32_t fmdmsqfrc; /**< FM DMA Semaphore Queue Full Reject Counter 0x54 */ + volatile uint32_t fmdmssrc; /**< FM DMA Semaphore SYNC Reject Counter 0x54 */ + volatile uint32_t fmdmdcr; /**< FM DMA Debug Counter */ + volatile uint32_t fmdmemsr; /**< FM DMA Emrgency Smoother Register */ + volatile uint32_t reserved; + volatile uint32_t fmdmplr[FM_SIZE_OF_LIODN_TABLE/2]; + /**< FM DMA PID-LIODN # register */ +} _PackedType t_FmDmaRegs; + +typedef _Packed struct +{ + volatile uint32_t iadd; /**< FM IRAM instruction address register */ + volatile uint32_t idata; /**< FM IRAM instruction data register */ + volatile uint32_t itcfg; /**< FM IRAM timing config register */ + volatile uint32_t iready; /**< FM IRAM ready register */ + volatile uint8_t res[0x80000-0x10]; +} _PackedType t_FMIramRegs; + +#define MEM_MAP_END +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(pop) +#endif /* defined(__MWERKS__) && ... */ + + +/**************************************************************************//** + @Description General defines +*//***************************************************************************/ + +#define FM_DEBUG_STATUS_REGISTER_OFFSET 0x000d1084UL +#define FM_UCODE_DEBUG_INSTRUCTION 0x6ffff805UL + + +/**************************************************************************//** + @Description DMA definitions +*//***************************************************************************/ + +/* masks */ +#define DMA_MODE_AID_OR 0x20000000 +#define DMA_MODE_SBER 0x10000000 +#define DMA_MODE_BER 0x00200000 +#define DMA_MODE_ECC 0x00000020 +#define DMA_MODE_PRIVILEGE_PROT 0x00001000 +#define DMA_MODE_SECURE_PROT 0x00000800 +#define DMA_MODE_EMERGENCY_READ 0x00080000 +#define DMA_MODE_EMERGENCY_WRITE 0x00040000 + +#define DMA_TRANSFER_PORTID_MASK 0xFF000000 +#define DMA_TRANSFER_TNUM_MASK 0x00FF0000 +#define DMA_TRANSFER_LIODN_MASK 0x00000FFF + +#define DMA_HIGH_LIODN_MASK 0x0FFF0000 +#define DMA_LOW_LIODN_MASK 0x00000FFF + +#define DMA_STATUS_CMD_QUEUE_NOT_EMPTY 0x10000000 +#define DMA_STATUS_BUS_ERR 0x08000000 +#define DMA_STATUS_READ_ECC 0x04000000 +#define DMA_STATUS_SYSTEM_WRITE_ECC 0x02000000 +#define DMA_STATUS_FM_WRITE_ECC 0x01000000 +#define DMA_STATUS_SYSTEM_DPEXT_ECC 0x00800000 +#define DMA_STATUS_FM_DPEXT_ECC 0x00400000 +#define DMA_STATUS_SYSTEM_DPDAT_ECC 0x00200000 +#define DMA_STATUS_FM_DPDAT_ECC 0x00100000 +#define DMA_STATUS_FM_SPDAT_ECC 0x00080000 + +#define FM_LIODN_BASE_MASK 0x00000FFF + +/* shifts */ +#define DMA_MODE_CACHE_OR_SHIFT 30 +#define DMA_MODE_BUS_PRI_SHIFT 16 +#define DMA_MODE_AXI_DBG_SHIFT 24 +#define DMA_MODE_CEN_SHIFT 13 +#define DMA_MODE_BUS_PROT_SHIFT 10 +#define DMA_MODE_DBG_SHIFT 7 +#define DMA_MODE_EMERGENCY_LEVEL_SHIFT 6 +#define DMA_MODE_AID_MODE_SHIFT 4 +#define DMA_MODE_MAX_AXI_DBG_NUM_OF_BEATS 16 +#define DMA_MODE_MAX_CAM_NUM_OF_ENTRIES 32 + +#define DMA_THRESH_COMMQ_SHIFT 24 +#define DMA_THRESH_READ_INT_BUF_SHIFT 16 + +#define DMA_LIODN_SHIFT 16 + +#define DMA_TRANSFER_PORTID_SHIFT 24 +#define DMA_TRANSFER_TNUM_SHIFT 16 + +/* sizes */ +#define DMA_MAX_WATCHDOG 0xffffffff + +/* others */ +#define DMA_CAM_SIZEOF_ENTRY 0x40 +#define DMA_CAM_ALIGN 0x1000 +#define DMA_CAM_UNITS 8 + + +/**************************************************************************//** + @Description FPM defines +*//***************************************************************************/ + +/* masks */ +#define FPM_EV_MASK_DOUBLE_ECC 0x80000000 +#define FPM_EV_MASK_STALL 0x40000000 +#define FPM_EV_MASK_SINGLE_ECC 0x20000000 +#define FPM_EV_MASK_RELEASE_FM 0x00010000 +#define FPM_EV_MASK_DOUBLE_ECC_EN 0x00008000 +#define FPM_EV_MASK_STALL_EN 0x00004000 +#define FPM_EV_MASK_SINGLE_ECC_EN 0x00002000 +#define FPM_EV_MASK_EXTERNAL_HALT 0x00000008 +#define FPM_EV_MASK_ECC_ERR_HALT 0x00000004 + +#define FPM_RAM_CTL_RAMS_ECC_EN 0x80000000 +#define FPM_RAM_CTL_IRAM_ECC_EN 0x40000000 +#define FPM_RAM_CTL_MURAM_ECC 0x00008000 +#define FPM_RAM_CTL_IRAM_ECC 0x00004000 +#define FPM_RAM_CTL_MURAM_TEST_ECC 0x20000000 +#define FPM_RAM_CTL_IRAM_TEST_ECC 0x10000000 +#define FPM_RAM_CTL_RAMS_ECC_EN_SRC_SEL 0x08000000 + +#define FPM_IRAM_ECC_ERR_EX_EN 0x00020000 +#define FPM_MURAM_ECC_ERR_EX_EN 0x00040000 + +#define FPM_REV1_MAJOR_MASK 0x0000FF00 +#define FPM_REV1_MINOR_MASK 0x000000FF + +#define FPM_REV2_INTEG_MASK 0x00FF0000 +#define FPM_REV2_ERR_MASK 0x0000FF00 +#define FPM_REV2_CFG_MASK 0x000000FF + +#define FPM_TS_FRACTION_MASK 0x0000FFFF +#define FPM_TS_CTL_EN 0x80000000 + +#define FPM_PORT_FM_CTL1 0x00000001 +#define FPM_PORT_FM_CTL2 0x00000002 +#define FPM_PRC_REALSE_STALLED 0x00800000 + +#define FPM_PS_STALLED 0x00800000 +#define FPM_PS_FM_CTL1_SEL 0x80000000 +#define FPM_PS_FM_CTL2_SEL 0x40000000 +#define FPM_PS_FM_CTL_SEL_MASK (FPM_PS_FM_CTL1_SEL | FPM_PS_FM_CTL2_SEL) + +#define FPM_RSTC_FM_RESET 0x80000000 +#define FPM_RSTC_10G0_RESET 0x04000000 +#define FPM_RSTC_1G0_RESET 0x40000000 +#define FPM_RSTC_1G1_RESET 0x20000000 +#define FPM_RSTC_1G2_RESET 0x10000000 +#define FPM_RSTC_1G3_RESET 0x08000000 +#define FPM_RSTC_1G4_RESET 0x02000000 + + +/* shifts */ +#define FPM_DISP_LIMIT_SHIFT 24 + +#define FPM_THR1_PRS_SHIFT 24 +#define FPM_THR1_KG_SHIFT 16 +#define FPM_THR1_PLCR_SHIFT 8 +#define FPM_THR1_BMI_SHIFT 0 + +#define FPM_THR2_QMI_ENQ_SHIFT 24 +#define FPM_THR2_QMI_DEQ_SHIFT 0 +#define FPM_THR2_FM_CTL1_SHIFT 16 +#define FPM_THR2_FM_CTL2_SHIFT 8 + +#define FPM_EV_MASK_CAT_ERR_SHIFT 1 +#define FPM_EV_MASK_DMA_ERR_SHIFT 0 + +#define FPM_REV1_MAJOR_SHIFT 8 +#define FPM_REV1_MINOR_SHIFT 0 + +#define FPM_REV2_INTEG_SHIFT 16 +#define FPM_REV2_ERR_SHIFT 8 +#define FPM_REV2_CFG_SHIFT 0 + +#define FPM_TS_INT_SHIFT 16 + +#define FPM_PORT_FM_CTL_PORTID_SHIFT 24 + +#define FPM_PS_FM_CTL_SEL_SHIFT 30 +#define FPM_PRC_ORA_FM_CTL_SEL_SHIFT 16 + +/* Interrupts defines */ +#define FPM_EVENT_FM_CTL_0 0x00008000 +#define FPM_EVENT_FM_CTL 0x0000FF00 +#define FPM_EVENT_FM_CTL_BRK 0x00000080 + +/* others */ +#define FPM_MAX_DISP_LIMIT 31 + +/**************************************************************************//** + @Description BMI defines +*//***************************************************************************/ +/* masks */ +#define BMI_INIT_START 0x80000000 +#define BMI_ERR_INTR_EN_PIPELINE_ECC 0x80000000 +#define BMI_ERR_INTR_EN_LIST_RAM_ECC 0x40000000 +#define BMI_ERR_INTR_EN_STATISTICS_RAM_ECC 0x20000000 +#define BMI_ERR_INTR_EN_DISPATCH_RAM_ECC 0x10000000 +#define BMI_NUM_OF_TASKS_MASK 0x3F000000 +#define BMI_NUM_OF_EXTRA_TASKS_MASK 0x000F0000 +#define BMI_NUM_OF_DMAS_MASK 0x00000F00 +#define BMI_NUM_OF_EXTRA_DMAS_MASK 0x0000000F +#define BMI_FIFO_SIZE_MASK 0x000003FF +#define BMI_EXTRA_FIFO_SIZE_MASK 0x03FF0000 +#define BMI_CFG2_DMAS_MASK 0x0000003F + +/* shifts */ +#define BMI_CFG2_TASKS_SHIFT 16 +#define BMI_CFG2_DMAS_SHIFT 0 +#define BMI_CFG1_FIFO_SIZE_SHIFT 16 +#define BMI_FIFO_SIZE_SHIFT 0 +#define BMI_EXTRA_FIFO_SIZE_SHIFT 16 +#define BMI_NUM_OF_TASKS_SHIFT 24 +#define BMI_EXTRA_NUM_OF_TASKS_SHIFT 16 +#define BMI_NUM_OF_DMAS_SHIFT 8 +#define BMI_EXTRA_NUM_OF_DMAS_SHIFT 0 + +/* others */ +#define BMI_FIFO_ALIGN 0x100 + + +/**************************************************************************//** + @Description QMI defines +*//***************************************************************************/ +/* masks */ +#define QMI_CFG_ENQ_EN 0x80000000 +#define QMI_CFG_DEQ_EN 0x40000000 +#define QMI_CFG_EN_COUNTERS 0x10000000 +#define QMI_CFG_SOFT_RESET 0x01000000 +#define QMI_CFG_DEQ_MASK 0x0000003F +#define QMI_CFG_ENQ_MASK 0x00003F00 + +#define QMI_ERR_INTR_EN_DOUBLE_ECC 0x80000000 +#define QMI_ERR_INTR_EN_DEQ_FROM_DEF 0x40000000 +#define QMI_INTR_EN_SINGLE_ECC 0x80000000 + +/* shifts */ +#define QMI_CFG_ENQ_SHIFT 8 +#define QMI_TAPC_TAP 22 + + +/**************************************************************************//** + @Description IRAM defines +*//***************************************************************************/ +/* masks */ +#define IRAM_IADD_AIE 0x80000000 +#define IRAM_READY 0x80000000 + +typedef struct { + void (*f_Isr) (t_Handle h_Arg, uint32_t event); + t_Handle h_SrcHandle; +} t_FmanCtrlIntrSrc; + + +typedef struct +{ + /* uint8_t numOfPartitions; */ + bool resetOnInit; +#ifdef FM_PARTITION_ARRAY + uint16_t liodnBasePerPort[FM_SIZE_OF_LIODN_TABLE]; +#endif + bool enCounters; + t_FmThresholds thresholds; + e_FmDmaCacheOverride dmaCacheOverride; + e_FmDmaAidMode dmaAidMode; + bool dmaAidOverride; + uint8_t dmaAxiDbgNumOfBeats; + uint8_t dmaCamNumOfEntries; + uint32_t dmaWatchdog; + t_FmDmaThresholds dmaCommQThresholds; + t_FmDmaThresholds dmaWriteBufThresholds; + t_FmDmaThresholds dmaReadBufThresholds; + uint32_t dmaSosEmergency; + e_FmDmaDbgCntMode dmaDbgCntMode; + bool dmaStopOnBusError; + bool dmaEnEmergency; + t_FmDmaEmergency dmaEmergency; + bool dmaEnEmergencySmoother; + uint32_t dmaEmergencySwitchCounter; + bool haltOnExternalActivation; + bool haltOnUnrecoverableEccError; + e_FmCatastrophicErr catastrophicErr; + e_FmDmaErr dmaErr; + bool enMuramTestMode; + bool enIramTestMode; + bool externalEccRamsEnable; + uint16_t tnumAgingPeriod; + t_FmPcdFirmwareParams firmware; + bool fwVerify; +} t_FmDriverParam; + +typedef void (t_FmanCtrlIsr)( t_Handle h_Fm, uint32_t event); + +typedef struct +{ +/***************************/ +/* Master/Guest parameters */ +/***************************/ + uint8_t fmId; + e_FmPortType portsTypes[FM_MAX_NUM_OF_HW_PORT_IDS]; + uint16_t fmClkFreq; +/**************************/ +/* Master Only parameters */ +/**************************/ + bool enabledTimeStamp; + uint8_t count1MicroBit; + uint8_t totalNumOfTasks; + uint32_t totalFifoSize; + uint8_t maxNumOfOpenDmas; + uint8_t accumulatedNumOfTasks; + uint32_t accumulatedFifoSize; + uint8_t accumulatedNumOfOpenDmas; +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT + uint8_t accumulatedNumOfDeqTnums; +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ +#ifdef FM_LOW_END_RESTRICTION + bool lowEndRestriction; +#endif /* FM_LOW_END_RESTRICTION */ + uint32_t exceptions; + int irq; + int errIrq; + bool ramsEccEnable; + bool explicitEnable; + bool internalCall; + uint8_t ramsEccOwners; + uint32_t extraFifoPoolSize; + uint8_t extraTasksPoolSize; + uint8_t extraOpenDmasPoolSize; +#if defined(FM_MAX_NUM_OF_10G_MACS) && (FM_MAX_NUM_OF_10G_MACS) + uint16_t macMaxFrameLengths10G[FM_MAX_NUM_OF_10G_MACS]; +#endif /* defined(FM_MAX_NUM_OF_10G_MACS) && (FM_MAX_NUM_OF_10G_MACS) */ + uint16_t macMaxFrameLengths1G[FM_MAX_NUM_OF_1G_MACS]; +} t_FmStateStruct; + +typedef struct +{ +/***************************/ +/* Master/Guest parameters */ +/***************************/ +/* locals for recovery */ + uintptr_t baseAddr; + +/* un-needed for recovery */ + t_Handle h_Pcd; + char fmModuleName[MODULE_NAME_SIZE]; + char fmIpcHandlerModuleName[FM_MAX_NUM_OF_GUESTS][MODULE_NAME_SIZE]; + t_Handle h_IpcSessions[FM_MAX_NUM_OF_GUESTS]; + t_FmIntrSrc intrMng[e_FM_EV_DUMMY_LAST]; /* FM exceptions user callback */ + uint8_t guestId; +/**************************/ +/* Master Only parameters */ +/**************************/ +/* locals for recovery */ + t_FmFpmRegs *p_FmFpmRegs; + t_FmBmiRegs *p_FmBmiRegs; + t_FmQmiRegs *p_FmQmiRegs; + t_FmDmaRegs *p_FmDmaRegs; + t_FmExceptionsCallback *f_Exception; + t_FmBusErrorCallback *f_BusError; + t_Handle h_App; /* Application handle */ + t_Handle h_Spinlock; + bool recoveryMode; + t_FmStateStruct *p_FmStateStruct; + +/* un-needed for recovery */ + t_FmDriverParam *p_FmDriverParam; + t_Handle h_FmMuram; + uint64_t fmMuramPhysBaseAddr; + bool independentMode; + bool hcPortInitialized; + uintptr_t camBaseAddr; /* save for freeing */ + uintptr_t resAddr; + uintptr_t fifoBaseAddr; /* save for freeing */ + t_FmanCtrlIntrSrc fmanCtrlIntr[FM_NUM_OF_FMAN_CTRL_EVENT_REGS]; /* FM exceptions user callback */ + bool usedEventRegs[FM_NUM_OF_FMAN_CTRL_EVENT_REGS]; +} t_Fm; + + +#endif /* __FM_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/fm_ipc.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/fm_ipc.h @@ -0,0 +1,449 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + @File fm_ipc.h + + @Description FM Inter-Partition prototypes, structures and definitions. +*//***************************************************************************/ +#ifndef __FM_IPC_H +#define __FM_IPC_H + +#include "error_ext.h" +#include "std_ext.h" + + +/**************************************************************************//** + @Group FM_grp Frame Manager API + + @Description FM API functions, definitions and enums + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group FM_IPC_grp FM Inter-Partition messaging Unit + + @Description FM Inter-Partition messaging unit API definitions and enums. + + @{ +*//***************************************************************************/ + +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(push,1) +#endif /* defined(__MWERKS__) && ... */ +#define MEM_MAP_START + +/**************************************************************************//** + @Description enum for defining MAC types +*//***************************************************************************/ + +/**************************************************************************//** + @Description A structure of parameters for specifying a MAC. +*//***************************************************************************/ +typedef _Packed struct +{ + uint8_t id; + uint32_t enumType; +} _PackedType t_FmIpcMacParams; + +/**************************************************************************//** + @Description A structure of parameters for specifying a MAC. +*//***************************************************************************/ +typedef _Packed struct +{ + t_FmIpcMacParams macParams; + uint16_t maxFrameLength; +} _PackedType t_FmIpcMacMaxFrameParams; + +/**************************************************************************//** + @Description FM physical Address +*//***************************************************************************/ +typedef _Packed struct t_FmIpcPhysAddr +{ + volatile uint8_t high; + volatile uint32_t low; +} _PackedType t_FmIpcPhysAddr; + +/**************************************************************************//** + @Description Structure for IPC communication during FM_PORT_Init. +*//***************************************************************************/ +typedef _Packed struct t_FmIpcPortInInitParams { + uint8_t hardwarePortId; /**< IN. port Id */ + uint32_t enumPortType; /**< IN. Port type */ + uint8_t boolIndependentMode;/**< IN. TRUE if FM Port operates in independent mode */ + uint16_t liodnOffset; /**< IN. Port's requested resource */ + uint8_t numOfTasks; /**< IN. Port's requested resource */ + uint8_t numOfExtraTasks; /**< IN. Port's requested resource */ + uint8_t numOfOpenDmas; /**< IN. Port's requested resource */ + uint8_t numOfExtraOpenDmas; /**< IN. Port's requested resource */ + uint32_t sizeOfFifo; /**< IN. Port's requested resource */ + uint32_t extraSizeOfFifo; /**< IN. Port's requested resource */ + uint8_t deqPipelineDepth; /**< IN. Port's requested resource */ + uint16_t liodnBase; /**< IN. Irrelevant for P4080 rev 1. + LIODN base for this port, to be + used together with LIODN offset. */ +} _PackedType t_FmIpcPortInInitParams; + + +/**************************************************************************//** + @Description Structure for IPC communication between port and FM + regarding tasks and open DMA resources management. +*//***************************************************************************/ +typedef _Packed struct t_FmIpcPortRsrcParams { + uint8_t hardwarePortId; /**< IN. port Id */ + uint32_t val; /**< IN. Port's requested resource */ + uint32_t extra; /**< IN. Port's requested resource */ + uint8_t boolInitialConfig; +} _PackedType t_FmIpcPortRsrcParams; + + +/**************************************************************************//** + @Description Structure for IPC communication between port and FM + regarding tasks and open DMA resources management. +*//***************************************************************************/ +typedef _Packed struct t_FmIpcPortFifoParams { + t_FmIpcPortRsrcParams rsrcParams; + uint32_t enumPortType; + uint8_t boolIndependentMode; + uint8_t deqPipelineDepth; + uint8_t numOfPools; + uint16_t secondLargestBufSize; + uint16_t largestBufSize; + uint8_t boolInitialConfig; +} _PackedType t_FmIpcPortFifoParams; + +/**************************************************************************//** + @Description Structure for port-FM communication during FM_PORT_Free. +*//***************************************************************************/ +typedef _Packed struct t_FmIpcPortFreeParams { + uint8_t hardwarePortId; /**< IN. port Id */ + uint32_t enumPortType; /**< IN. Port type */ +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT + uint8_t deqPipelineDepth; /**< IN. Port's requested resource */ +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ +} _PackedType t_FmIpcPortFreeParams; + +/**************************************************************************//** + @Description Structure for defining DMA status +*//***************************************************************************/ +typedef _Packed struct t_FmIpcDmaStatus { + uint8_t boolCmqNotEmpty; /**< Command queue is not empty */ + uint8_t boolBusError; /**< Bus error occurred */ + uint8_t boolReadBufEccError; /**< Double ECC error on buffer Read */ + uint8_t boolWriteBufEccSysError; /**< Double ECC error on buffer write from system side */ + uint8_t boolWriteBufEccFmError; /**< Double ECC error on buffer write from FM side */ +} _PackedType t_FmIpcDmaStatus; + +typedef _Packed struct t_FmIpcRegisterIntr +{ + uint8_t guestId; /* IN */ + uint32_t event; /* IN */ +} _PackedType t_FmIpcRegisterIntr; + +typedef _Packed struct t_FmIpcIsr +{ + uint8_t boolErr; /* IN */ + uint32_t pendingReg; /* IN */ +} _PackedType t_FmIpcIsr; + +/**************************************************************************//** + @Description structure for returning revision information +*//***************************************************************************/ +typedef _Packed struct t_FmIpcRevisionInfo { + uint8_t majorRev; /**< OUT: Major revision */ + uint8_t minorRev; /**< OUT: Minor revision */ +} _PackedType t_FmIpcRevisionInfo; + +/**************************************************************************//** + @Description Structure for defining Fm number of Fman controlers +*//***************************************************************************/ +typedef _Packed struct t_FmIpcPortNumOfFmanCtrls { + uint8_t hardwarePortId; /**< IN. port Id */ + uint8_t numOfFmanCtrls; /**< IN. Port type */ +} t_FmIpcPortNumOfFmanCtrls; + +/**************************************************************************//** + @Description structure for setting Fman contriller events +*//***************************************************************************/ +typedef _Packed struct t_FmIpcFmanEvents { + uint8_t eventRegId; /**< IN: Fman controller event register id */ + uint32_t enableEvents; /**< IN/OUT: required enabled events mask */ +} _PackedType t_FmIpcFmanEvents; + +#define FM_IPC_MAX_REPLY_BODY_SIZE 16 +#define FM_IPC_MAX_REPLY_SIZE (FM_IPC_MAX_REPLY_BODY_SIZE + sizeof(uint32_t)) +#define FM_IPC_MAX_MSG_SIZE 30 +typedef _Packed struct t_FmIpcMsg +{ + uint32_t msgId; + uint8_t msgBody[FM_IPC_MAX_MSG_SIZE]; +} _PackedType t_FmIpcMsg; + +typedef _Packed struct t_FmIpcReply +{ + uint32_t error; + uint8_t replyBody[FM_IPC_MAX_REPLY_BODY_SIZE]; +} _PackedType t_FmIpcReply; + +#define MEM_MAP_END +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(pop) +#endif /* defined(__MWERKS__) && ... */ + + +/***************************************************************************/ +/************************ FRONT-END-TO-BACK-END*****************************/ +/***************************************************************************/ + +/**************************************************************************//** + @Function FM_GET_TIMESTAMP_SCALE + + @Description Used by FM front-end. + + @Param[out] uint32_t Pointer +*//***************************************************************************/ +#define FM_GET_TIMESTAMP_SCALE 1 + +/**************************************************************************//** + @Function FM_GET_COUNTER + + @Description Used by FM front-end. + + @Param[in/out] t_FmIpcGetCounter Pointer +*//***************************************************************************/ +#define FM_GET_COUNTER 2 + +/**************************************************************************//** + @Function FM_DUMP_REGS + + @Description Used by FM front-end for the PORT module in order to set and get + parameters in/from master FM module on FM PORT initialization time. + + @Param None +*//***************************************************************************/ +#define FM_DUMP_REGS 3 + +/**************************************************************************//** + @Function FM_GET_SET_PORT_PARAMS + + @Description Used by FM front-end for the PORT module in order to set and get + parameters in/from master FM module on FM PORT initialization time. + + @Param[in/out] t_FmIcPortInitParams Pointer +*//***************************************************************************/ +#define FM_GET_SET_PORT_PARAMS 4 + +/**************************************************************************//** + @Function FM_FREE_PORT + + @Description Used by FM front-end for the PORT module when a port is freed + to free all FM PORT resources. + + @Param[in] uint8_t Pointer +*//***************************************************************************/ +#define FM_FREE_PORT 5 + +/**************************************************************************//** + @Function FM_RESET_MAC + + @Description Used by front-end for the MAC module to reset the MAC registers + + @Param[in] t_FmIpcMacParams Pointer . +*//***************************************************************************/ +#define FM_RESET_MAC 6 + +/**************************************************************************//** + @Function FM_RESUME_STALLED_PORT + + @Description Used by FM front-end for the PORT module in order to + release a stalled FM Port. + + @Param[in] uint8_t Pointer +*//***************************************************************************/ +#define FM_RESUME_STALLED_PORT 7 + +/**************************************************************************//** + @Function FM_IS_PORT_STALLED + + @Description Used by FM front-end for the PORT module in order to check whether + an FM port is stalled. + + @Param[in/out] t_FmIcPortIsStalled Pointer +*//***************************************************************************/ +#define FM_IS_PORT_STALLED 8 + +/**************************************************************************//** + @Function FM_DUMP_PORT_REGS + + @Description Used by FM front-end for the PORT module in order to dump + all port registers. + + @Param[in] uint8_t Pointer +*//***************************************************************************/ +#define FM_DUMP_PORT_REGS 9 + +/**************************************************************************//** + @Function FM_GET_REV + + @Description Used by FM front-end for the PORT module in order to dump + all port registers. + + @Param[in] uint8_t Pointer +*//***************************************************************************/ +#define FM_GET_REV 10 + +/**************************************************************************//** + @Function FM_REGISTER_INTR + + @Description Used by FM front-end to register an interrupt handler to + be called upon interrupt for guest. + + @Param[out] t_FmIpcRegisterIntr Pointer +*//***************************************************************************/ +#define FM_REGISTER_INTR 11 + +/**************************************************************************//** + @Function FM_GET_CLK_FREQ + + @Description Used by FM Front-end to read the FM clock frequency. + + @Param[out] uint32_t Pointer +*//***************************************************************************/ +#define FM_GET_CLK_FREQ 12 + +/**************************************************************************//** + @Function FM_DMA_STAT + + @Description Used by FM front-end to read the FM DMA status. + + @Param[out] t_FmIpcDmaStatus Pointer +*//***************************************************************************/ +#define FM_DMA_STAT 13 + +/**************************************************************************//** + @Function FM_ALLOC_FMAN_CTRL_EVENT_REG + + @Description Used by FM front-end to allocate event register. + + @Param[out] Event register id Pointer +*//***************************************************************************/ +#define FM_ALLOC_FMAN_CTRL_EVENT_REG 14 + +/**************************************************************************//** + @Function FM_FREE_FMAN_CTRL_EVENT_REG + + @Description Used by FM front-end to free locate event register. + + @Param[in] uint8_t Pointer - Event register id +*//***************************************************************************/ +#define FM_FREE_FMAN_CTRL_EVENT_REG 15 + +/**************************************************************************//** + @Function FM_SET_FMAN_CTRL_EVENTS_ENABLE + + @Description Used by FM front-end to enable events in the FPM + Fman controller event register. + + @Param[in] t_FmIpcFmanEvents Pointer +*//***************************************************************************/ +#define FM_SET_FMAN_CTRL_EVENTS_ENABLE 16 + +/**************************************************************************//** + @Function FM_SET_FMAN_CTRL_EVENTS_ENABLE + + @Description Used by FM front-end to enable events in the FPM + Fman controller event register. + + @Param[in/out] t_FmIpcFmanEvents Pointer +*//***************************************************************************/ +#define FM_GET_FMAN_CTRL_EVENTS_ENABLE 17 + +/**************************************************************************//** + @Function FM_SET_MAC_MAX_FRAME + + @Description Used by FM front-end to set MAC's MTU/RTU's in + back-end. + + @Param[in/out] t_FmIpcMacMaxFrameParams Pointer +*//***************************************************************************/ +#define FM_SET_MAC_MAX_FRAME 18 + +/**************************************************************************//** + @Function FM_GET_PHYS_MURAM_BASE + + @Description Used by FM front-end in order to get MURAM base address + + @Param[in/out] t_FmIpcPhysAddr Pointer +*//***************************************************************************/ +#define FM_GET_PHYS_MURAM_BASE 19 + +/**************************************************************************//** + @Function FM_MASTER_IS_ALIVE + + @Description Used by FM front-end in order to verify Master is up + + @Param[in/out] bool +*//***************************************************************************/ +#define FM_MASTER_IS_ALIVE 20 + +#define FM_ENABLE_RAM_ECC 21 +#define FM_DISABLE_RAM_ECC 22 +#define FM_SET_NUM_OF_FMAN_CTRL 23 +#define FM_SET_SIZE_OF_FIFO 24 +#define FM_SET_NUM_OF_TASKS 25 +#define FM_SET_NUM_OF_OPEN_DMAS 26 + +#ifdef FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 +#define FM_10G_TX_ECC_WA 100 +#endif /* FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 */ + +/***************************************************************************/ +/************************ BACK-END-TO-FRONT-END*****************************/ +/***************************************************************************/ + +/**************************************************************************//** + @Function FM_GUEST_ISR + + @Description Used by FM back-end to report an interrupt to the front-end. + + @Param[out] t_FmIpcIsr Pointer +*//***************************************************************************/ +#define FM_GUEST_ISR 1 + + + +/** @} */ /* end of FM_IPC_grp group */ +/** @} */ /* end of FM_grp group */ + + +#endif /* __FM_IPC_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/fm_muram.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/fm_muram.c @@ -0,0 +1,164 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File FM_muram.c + + @Description FM MURAM ... +*//***************************************************************************/ +#include "error_ext.h" +#include "std_ext.h" +#include "mm_ext.h" +#include "string_ext.h" +#include "sprint_ext.h" +#include "fm_muram_ext.h" +#include "fm_common.h" + + +#define __ERR_MODULE__ MODULE_FM_MURAM + + +typedef struct +{ + t_Handle h_Mem; + uintptr_t baseAddr; + uint32_t size; +} t_FmMuram; + + +void FmMuramClear(t_Handle h_FmMuram) +{ + t_FmMuram *p_FmMuram = ( t_FmMuram *)h_FmMuram; + + SANITY_CHECK_RETURN(h_FmMuram, E_INVALID_HANDLE); + IOMemSet32(UINT_TO_PTR(p_FmMuram->baseAddr), 0, p_FmMuram->size); +} + + +t_Handle FM_MURAM_ConfigAndInit(uintptr_t baseAddress, uint32_t size) +{ + t_Handle h_Mem; + t_FmMuram *p_FmMuram; + + if (!baseAddress) + { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("baseAddress 0 is not supported")); + return NULL; + } + + if (baseAddress%4) + { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("baseAddress not 4 bytes aligned!")); + return NULL; + } + + /* Allocate FM MURAM structure */ + p_FmMuram = (t_FmMuram *) XX_Malloc(sizeof(t_FmMuram)); + if (!p_FmMuram) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FM MURAM driver structure")); + return NULL; + } + memset(p_FmMuram, 0, sizeof(t_FmMuram)); + + + if ((MM_Init(&h_Mem, baseAddress, size) != E_OK) || (!h_Mem)) + { + XX_Free(p_FmMuram); + REPORT_ERROR(MAJOR, E_INVALID_HANDLE, ("FM-MURAM partition!!!")); + return NULL; + } + + /* Initialize FM MURAM parameters which will be kept by the driver */ + p_FmMuram->baseAddr = baseAddress; + p_FmMuram->size = size; + p_FmMuram->h_Mem = h_Mem; + + return p_FmMuram; +} + +t_Error FM_MURAM_Free(t_Handle h_FmMuram) +{ + t_FmMuram *p_FmMuram = ( t_FmMuram *)h_FmMuram; + + if (p_FmMuram->h_Mem) + MM_Free(p_FmMuram->h_Mem); + + XX_Free(h_FmMuram); + + return E_OK; +} + +void * FM_MURAM_AllocMem(t_Handle h_FmMuram, uint32_t size, uint32_t align) +{ + t_FmMuram *p_FmMuram = ( t_FmMuram *)h_FmMuram; + uintptr_t addr; + + SANITY_CHECK_RETURN_VALUE(h_FmMuram, E_INVALID_HANDLE, NULL); + SANITY_CHECK_RETURN_VALUE(p_FmMuram->h_Mem, E_INVALID_HANDLE, NULL); + + addr = (uintptr_t)MM_Get(p_FmMuram->h_Mem, size, align ,"FM MURAM"); + + if (addr == ILLEGAL_BASE) + return NULL; + + return UINT_TO_PTR(addr); +} + +void * FM_MURAM_AllocMemForce(t_Handle h_FmMuram, uint64_t base, uint32_t size) +{ + t_FmMuram *p_FmMuram = ( t_FmMuram *)h_FmMuram; + uintptr_t addr; + + SANITY_CHECK_RETURN_VALUE(h_FmMuram, E_INVALID_HANDLE, NULL); + SANITY_CHECK_RETURN_VALUE(p_FmMuram->h_Mem, E_INVALID_HANDLE, NULL); + + addr = (uintptr_t)MM_GetForce(p_FmMuram->h_Mem, base, size, "FM MURAM"); + + if (addr == ILLEGAL_BASE) + return NULL; + + return UINT_TO_PTR(addr); +} + +t_Error FM_MURAM_FreeMem(t_Handle h_FmMuram, void *ptr) +{ + t_FmMuram *p_FmMuram = ( t_FmMuram *)h_FmMuram; + + SANITY_CHECK_RETURN_ERROR(h_FmMuram, E_INVALID_HANDLE); + SANITY_CHECK_RETURN_ERROR(p_FmMuram->h_Mem, E_INVALID_HANDLE); + + if (MM_Put(p_FmMuram->h_Mem, PTR_TO_UINT(ptr)) == 0) + RETURN_ERROR(MINOR, E_INVALID_HANDLE, ("memory pointer!!!")); + + return E_OK; +} --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/inc/fm_common.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/inc/fm_common.h @@ -0,0 +1,1173 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fm_common.h + + @Description FM internal structures and definitions. +*//***************************************************************************/ +#ifndef __FM_COMMON_H +#define __FM_COMMON_H + +#include "error_ext.h" +#include "std_ext.h" +#include "fm_pcd_ext.h" +#include "fm_port_ext.h" + +#define CLS_PLAN_NUM_PER_GRP 8 + + +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(push,1) +#endif /* defined(__MWERKS__) && ... */ +#define MEM_MAP_START + +/**************************************************************************//** + @Description PCD KG scheme registers +*//***************************************************************************/ +typedef _Packed struct t_FmPcdPlcrInterModuleProfileRegs { + volatile uint32_t fmpl_pemode; /* 0x090 FMPL_PEMODE - FM Policer Profile Entry Mode*/ + volatile uint32_t fmpl_pegnia; /* 0x094 FMPL_PEGNIA - FM Policer Profile Entry GREEN Next Invoked Action*/ + volatile uint32_t fmpl_peynia; /* 0x098 FMPL_PEYNIA - FM Policer Profile Entry YELLOW Next Invoked Action*/ + volatile uint32_t fmpl_pernia; /* 0x09C FMPL_PERNIA - FM Policer Profile Entry RED Next Invoked Action*/ + volatile uint32_t fmpl_pecir; /* 0x0A0 FMPL_PECIR - FM Policer Profile Entry Committed Information Rate*/ + volatile uint32_t fmpl_pecbs; /* 0x0A4 FMPL_PECBS - FM Policer Profile Entry Committed Burst Size*/ + volatile uint32_t fmpl_pepepir_eir; /* 0x0A8 FMPL_PEPIR_EIR - FM Policer Profile Entry Peak/Excess Information Rate*/ + volatile uint32_t fmpl_pepbs_ebs; /* 0x0AC FMPL_PEPBS_EBS - FM Policer Profile Entry Peak/Excess Information Rate*/ + volatile uint32_t fmpl_pelts; /* 0x0B0 FMPL_PELTS - FM Policer Profile Entry Last TimeStamp*/ + volatile uint32_t fmpl_pects; /* 0x0B4 FMPL_PECTS - FM Policer Profile Entry Committed Token Status*/ + volatile uint32_t fmpl_pepts_ets; /* 0x0B8 FMPL_PEPTS_ETS - FM Policer Profile Entry Peak/Excess Token Status*/ + volatile uint32_t fmpl_pegpc; /* 0x0BC FMPL_PEGPC - FM Policer Profile Entry GREEN Packet Counter*/ + volatile uint32_t fmpl_peypc; /* 0x0C0 FMPL_PEYPC - FM Policer Profile Entry YELLOW Packet Counter*/ + volatile uint32_t fmpl_perpc; /* 0x0C4 FMPL_PERPC - FM Policer Profile Entry RED Packet Counter */ + volatile uint32_t fmpl_perypc; /* 0x0C8 FMPL_PERYPC - FM Policer Profile Entry Recolored YELLOW Packet Counter*/ + volatile uint32_t fmpl_perrpc; /* 0x0CC FMPL_PERRPC - FM Policer Profile Entry Recolored RED Packet Counter*/ + volatile uint32_t fmpl_res1[12]; /* 0x0D0-0x0FF Reserved */ +} _PackedType t_FmPcdPlcrInterModuleProfileRegs; + +/**************************************************************************//** + @Description PCD KG scheme registers +*//***************************************************************************/ +typedef _Packed struct t_FmPcdKgInterModuleSchemeRegs { + volatile uint32_t kgse_mode; /**< MODE */ + volatile uint32_t kgse_ekfc; /**< Extract Known Fields Command */ + volatile uint32_t kgse_ekdv; /**< Extract Known Default Value */ + volatile uint32_t kgse_bmch; /**< Bit Mask Command High */ + volatile uint32_t kgse_bmcl; /**< Bit Mask Command Low */ + volatile uint32_t kgse_fqb; /**< Frame Queue Base */ + volatile uint32_t kgse_hc; /**< Hash Command */ + volatile uint32_t kgse_ppc; /**< Policer Profile Command */ + volatile uint32_t kgse_gec[FM_PCD_KG_NUM_OF_GENERIC_REGS]; + /**< Generic Extract Command */ + volatile uint32_t kgse_spc; /**< KeyGen Scheme Entry Statistic Packet Counter */ + volatile uint32_t kgse_dv0; /**< KeyGen Scheme Entry Default Value 0 */ + volatile uint32_t kgse_dv1; /**< KeyGen Scheme Entry Default Value 1 */ + volatile uint32_t kgse_ccbs; /**< KeyGen Scheme Entry Coarse Classification Bit*/ + volatile uint32_t kgse_mv; /**< KeyGen Scheme Entry Match vector */ +} _PackedType t_FmPcdKgInterModuleSchemeRegs; + +typedef _Packed struct t_FmPcdCcCapwapReassmTimeoutParams { + volatile uint32_t portIdAndCapwapReassmTbl; + volatile uint32_t fqidForTimeOutFrames; + volatile uint32_t timeoutRequestTime; +}_PackedType t_FmPcdCcCapwapReassmTimeoutParams; + + + +#define MEM_MAP_END +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(pop) +#endif /* defined(__MWERKS__) && ... */ + + +typedef struct { + uint8_t baseEntry; + uint16_t numOfClsPlanEntries; + uint32_t vectors[FM_PCD_MAX_NUM_OF_CLS_PLANS]; +} t_FmPcdKgInterModuleClsPlanSet; + +/**************************************************************************//** + @Description Structure for binding a port to keygen schemes. +*//***************************************************************************/ +typedef struct t_FmPcdKgInterModuleBindPortToSchemes { + uint8_t hardwarePortId; + uint8_t netEnvId; + bool useClsPlan; /**< TRUE if this port uses the clsPlan mechanism */ + uint8_t numOfSchemes; + uint8_t schemesIds[FM_PCD_KG_NUM_OF_SCHEMES]; +} t_FmPcdKgInterModuleBindPortToSchemes; + +typedef struct { + uint32_t nextCcNodeInfo; + t_List node; +} t_CcNodeInfo; + +typedef struct +{ + t_Handle h_CcNode; + uint16_t index; + t_List node; +}t_CcNodeInformation; +#define CC_NODE_F_OBJECT(ptr) LIST_OBJECT(ptr, t_CcNodeInformation, node) + +typedef struct +{ + t_Handle h_Manip; + t_List node; +}t_ManipInfo; +#define CC_NEXT_NODE_F_OBJECT(ptr) LIST_OBJECT(ptr, t_CcNodeInfo, node) + +typedef struct { + uint32_t type; + uint8_t prOffset; + + uint16_t dataOffset; + uint8_t poolIndex; + + uint8_t poolIdForManip; + uint8_t numOfTasks; + + uint8_t hardwarePortId; + +} t_GetCcParams; + +typedef struct { + uint32_t type; + int psoSize; + uint32_t nia; + +} t_SetCcParams; + +typedef struct { + t_GetCcParams getCcParams; + t_SetCcParams setCcParams; +} t_FmPortGetSetCcParams; + + +static __inline__ bool TRY_LOCK(t_Handle h_Spinlock, volatile bool *p_Flag) +{ + uint32_t intFlags; + if (h_Spinlock) + intFlags = XX_LockIntrSpinlock(h_Spinlock); + else + intFlags = XX_DisableAllIntr(); + if (*p_Flag) + { + if (h_Spinlock) + XX_UnlockIntrSpinlock(h_Spinlock, intFlags); + else + XX_RestoreAllIntr(intFlags); + return FALSE; + } + *p_Flag = TRUE; + if (h_Spinlock) + XX_UnlockIntrSpinlock(h_Spinlock, intFlags); + else + XX_RestoreAllIntr(intFlags); + return TRUE; +} + +#define RELEASE_LOCK(_flag) _flag = FALSE; + +/**************************************************************************//** + @Collection Defines used for manipulation CC and BMI + @{ +*//***************************************************************************/ +#define INTERNAL_CONTEXT_OFFSET 0x80000000 +#define OFFSET_OF_PR 0x40000000 +#define BUFFER_POOL_ID_FOR_MANIP 0x20000000 +#define NUM_OF_TASKS 0x10000000 +#define OFFSET_OF_DATA 0x08000000 +#define HW_PORT_ID 0x04000000 + + +#define UPDATE_NIA_PNEN 0x80000000 +#define UPDATE_PSO 0x40000000 +#define UPDATE_NIA_PNDN 0x20000000 +#define UPDATE_FMFP_PRC_WITH_ONE_RISC_ONLY 0x10000000 +/* @} */ + +/**************************************************************************//** + @Collection Defines used for manipulation CC and CC + @{ +*//***************************************************************************/ +#define UPDATE_NIA_ENQ_WITHOUT_DMA 0x80000000 +#define UPDATE_CC_WITH_TREE 0x40000000 +#define UPDATE_CC_WITH_DELETE_TREE 0x20000000 +/* @} */ + +/**************************************************************************//** + @Collection Defines used for enabling/disabling FM interrupts + @{ +*//***************************************************************************/ +typedef uint32_t t_FmBlockErrIntrEnable; + +#define ERR_INTR_EN_DMA 0x00010000 +#define ERR_INTR_EN_FPM 0x80000000 +#define ERR_INTR_EN_BMI 0x00800000 +#define ERR_INTR_EN_QMI 0x00400000 +#define ERR_INTR_EN_PRS 0x00200000 +#define ERR_INTR_EN_KG 0x00100000 +#define ERR_INTR_EN_PLCR 0x00080000 +#define ERR_INTR_EN_MURAM 0x00040000 +#define ERR_INTR_EN_IRAM 0x00020000 +#define ERR_INTR_EN_10G_MAC0 0x00008000 +#define ERR_INTR_EN_1G_MAC0 0x00004000 +#define ERR_INTR_EN_1G_MAC1 0x00002000 +#define ERR_INTR_EN_1G_MAC2 0x00001000 +#define ERR_INTR_EN_1G_MAC3 0x00000800 +#define ERR_INTR_EN_1G_MAC4 0x00000400 +#define ERR_INTR_EN_MACSEC_MAC0 0x00000200 + + +typedef uint32_t t_FmBlockIntrEnable; + +#define INTR_EN_BMI 0x80000000 +#define INTR_EN_QMI 0x40000000 +#define INTR_EN_PRS 0x20000000 +#define INTR_EN_KG 0x10000000 +#define INTR_EN_PLCR 0x08000000 +#define INTR_EN_1G_MAC0_TMR 0x00080000 +#define INTR_EN_1G_MAC1_TMR 0x00040000 +#define INTR_EN_1G_MAC2_TMR 0x00020000 +#define INTR_EN_1G_MAC3_TMR 0x00010000 +#define INTR_EN_1G_MAC4_TMR 0x00000040 +#define INTR_EN_REV0 0x00008000 +#define INTR_EN_REV1 0x00004000 +#define INTR_EN_REV2 0x00002000 +#define INTR_EN_REV3 0x00001000 +#define INTR_EN_BRK 0x00000080 +#define INTR_EN_TMR 0x01000000 +#define INTR_EN_MACSEC_MAC0 0x00000001 +/* @} */ + +#define FM_MAX_NUM_OF_PORTS (FM_MAX_NUM_OF_OH_PORTS + \ + FM_MAX_NUM_OF_1G_RX_PORTS + \ + FM_MAX_NUM_OF_10G_RX_PORTS + \ + FM_MAX_NUM_OF_1G_TX_PORTS + \ + FM_MAX_NUM_OF_10G_TX_PORTS) + +#define MODULE_NAME_SIZE 30 +#define DUMMY_PORT_ID 0 + +#define FM_LIODN_OFFSET_MASK 0x3FF + +/**************************************************************************//** + @Description NIA Description +*//***************************************************************************/ +#define NIA_ORDER_RESTOR 0x00800000 +#define NIA_ENG_FM_CTL 0x00000000 +#define NIA_ENG_PRS 0x00440000 +#define NIA_ENG_KG 0x00480000 +#define NIA_ENG_PLCR 0x004C0000 +#define NIA_ENG_BMI 0x00500000 +#define NIA_ENG_QMI_ENQ 0x00540000 +#define NIA_ENG_QMI_DEQ 0x00580000 +#define NIA_ENG_MASK 0x007C0000 + +#define NIA_FM_CTL_AC_CC 0x00000006 +#define NIA_FM_CTL_AC_HC 0x0000000C +#define NIA_FM_CTL_AC_IND_MODE_TX 0x00000008 +#define NIA_FM_CTL_AC_IND_MODE_RX 0x0000000A +#define NIA_FM_CTL_AC_FRAG 0x0000000e +#define NIA_FM_CTL_AC_PRE_FETCH 0x00000010 +#define NIA_FM_CTL_AC_POST_FETCH_PCD 0x00000012 +#define NIA_FM_CTL_AC_POST_FETCH_PCD_UDP_LEN 0x00000018 +#define NIA_FM_CTL_AC_POST_FETCH_NO_PCD 0x00000012 +#define NIA_FM_CTL_AC_FRAG_CHECK 0x00000014 +#define NIA_FM_CTL_AC_MASK 0x0000001f + +#define NIA_BMI_AC_ENQ_FRAME 0x00000002 +#define NIA_BMI_AC_TX_RELEASE 0x000002C0 +#define NIA_BMI_AC_RELEASE 0x000000C0 +#define NIA_BMI_AC_DISCARD 0x000000C1 +#define NIA_BMI_AC_TX 0x00000274 +#define NIA_BMI_AC_FETCH 0x00000208 +#define NIA_BMI_AC_MASK 0x000003FF + +#define NIA_KG_DIRECT 0x00000100 +#define NIA_KG_CC_EN 0x00000200 +#define NIA_PLCR_ABSOLUTE 0x00008000 + +#define NIA_BMI_AC_ENQ_FRAME_WITHOUT_DMA 0x00000202 + +/**************************************************************************//** + @Description Port Id defines +*//***************************************************************************/ +#define BASE_OH_PORTID 1 +#define BASE_1G_RX_PORTID 8 +#define BASE_10G_RX_PORTID 0x10 +#define BASE_1G_TX_PORTID 0x28 +#define BASE_10G_TX_PORTID 0x30 + +#define FM_PCD_PORT_OH_BASE_INDX 0 +#define FM_PCD_PORT_1G_RX_BASE_INDX (FM_PCD_PORT_OH_BASE_INDX+FM_MAX_NUM_OF_OH_PORTS) +#define FM_PCD_PORT_10G_RX_BASE_INDX (FM_PCD_PORT_1G_RX_BASE_INDX+FM_MAX_NUM_OF_1G_RX_PORTS) +#define FM_PCD_PORT_1G_TX_BASE_INDX (FM_PCD_PORT_10G_RX_BASE_INDX+FM_MAX_NUM_OF_10G_RX_PORTS) +#define FM_PCD_PORT_10G_TX_BASE_INDX (FM_PCD_PORT_1G_TX_BASE_INDX+FM_MAX_NUM_OF_1G_TX_PORTS) + +#if (FM_MAX_NUM_OF_OH_PORTS > 0) +#define CHECK_PORT_ID_OH_PORTS(_relativePortId) \ + if ((_relativePortId) >= FM_MAX_NUM_OF_OH_PORTS) \ + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("Illegal OH_PORT port id")) +#else +#define CHECK_PORT_ID_OH_PORTS(_relativePortId) \ + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("Illegal OH_PORT port id")) +#endif +#if (FM_MAX_NUM_OF_1G_RX_PORTS > 0) +#define CHECK_PORT_ID_1G_RX_PORTS(_relativePortId) \ + if ((_relativePortId) >= FM_MAX_NUM_OF_1G_RX_PORTS) \ + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("Illegal 1G_RX_PORT port id")) +#else +#define CHECK_PORT_ID_1G_RX_PORTS(_relativePortId) \ + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("Illegal 1G_RX_PORT port id")) +#endif +#if (FM_MAX_NUM_OF_10G_RX_PORTS > 0) +#define CHECK_PORT_ID_10G_RX_PORTS(_relativePortId) \ + if ((_relativePortId) >= FM_MAX_NUM_OF_10G_RX_PORTS) \ + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("Illegal 10G_RX_PORT port id")) +#else +#define CHECK_PORT_ID_10G_RX_PORTS(_relativePortId) \ + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("Illegal 10G_RX_PORT port id")) +#endif +#if (FM_MAX_NUM_OF_1G_TX_PORTS > 0) +#define CHECK_PORT_ID_1G_TX_PORTS(_relativePortId) \ + if ((_relativePortId) >= FM_MAX_NUM_OF_1G_TX_PORTS) \ + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("Illegal 1G_TX_PORT port id")) +#else +#define CHECK_PORT_ID_1G_TX_PORTS(_relativePortId) \ + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("Illegal 1G_TX_PORT port id")) +#endif +#if (FM_MAX_NUM_OF_10G_TX_PORTS > 0) +#define CHECK_PORT_ID_10G_TX_PORTS(_relativePortId) \ + if ((_relativePortId) >= FM_MAX_NUM_OF_10G_TX_PORTS) \ + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("Illegal 10G_TX_PORT port id")) +#else +#define CHECK_PORT_ID_10G_TX_PORTS(_relativePortId) \ + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("Illegal 10G_TX_PORT port id")) +#endif + + +#define SW_PORT_ID_TO_HW_PORT_ID(_port, _type, _relativePortId) \ +switch(_type) { \ + case(e_FM_PORT_TYPE_OH_OFFLINE_PARSING): \ + case(e_FM_PORT_TYPE_OH_HOST_COMMAND): \ + CHECK_PORT_ID_OH_PORTS(_relativePortId); \ + _port = (uint8_t)(BASE_OH_PORTID + (_relativePortId)); \ + break; \ + case(e_FM_PORT_TYPE_RX): \ + CHECK_PORT_ID_1G_RX_PORTS(_relativePortId); \ + _port = (uint8_t)(BASE_1G_RX_PORTID + (_relativePortId)); \ + break; \ + case(e_FM_PORT_TYPE_RX_10G): \ + CHECK_PORT_ID_10G_RX_PORTS(_relativePortId); \ + _port = (uint8_t)(BASE_10G_RX_PORTID + (_relativePortId)); \ + break; \ + case(e_FM_PORT_TYPE_TX): \ + CHECK_PORT_ID_1G_TX_PORTS(_relativePortId); \ + _port = (uint8_t)(BASE_1G_TX_PORTID + (_relativePortId)); \ + break; \ + case(e_FM_PORT_TYPE_TX_10G): \ + CHECK_PORT_ID_10G_TX_PORTS(_relativePortId); \ + _port = (uint8_t)(BASE_10G_TX_PORTID + (_relativePortId)); \ + break; \ + default: \ + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("Illegal port type")); \ + _port = 0; \ + break; \ +} + +#define HW_PORT_ID_TO_SW_PORT_ID(_relativePortId, hardwarePortId) \ +{ if (((hardwarePortId) >= BASE_OH_PORTID) && \ + ((hardwarePortId) < BASE_OH_PORTID+FM_MAX_NUM_OF_OH_PORTS)) \ + _relativePortId = (uint8_t)((hardwarePortId)-BASE_OH_PORTID); \ + else if (((hardwarePortId) >= BASE_10G_TX_PORTID) && \ + ((hardwarePortId) < BASE_10G_TX_PORTID+FM_MAX_NUM_OF_10G_TX_PORTS)) \ + _relativePortId = (uint8_t)((hardwarePortId)-BASE_10G_TX_PORTID); \ + else if (((hardwarePortId) >= BASE_1G_TX_PORTID) && \ + ((hardwarePortId) < BASE_1G_TX_PORTID+FM_MAX_NUM_OF_1G_TX_PORTS)) \ + _relativePortId = (uint8_t)((hardwarePortId)-BASE_1G_TX_PORTID); \ + else if (((hardwarePortId) >= BASE_10G_RX_PORTID) && \ + ((hardwarePortId) < BASE_10G_RX_PORTID+FM_MAX_NUM_OF_10G_RX_PORTS)) \ + _relativePortId = (uint8_t)((hardwarePortId)-BASE_10G_RX_PORTID); \ + else if (((hardwarePortId) >= BASE_1G_RX_PORTID) && \ + ((hardwarePortId) < BASE_1G_RX_PORTID+FM_MAX_NUM_OF_1G_RX_PORTS)) \ + _relativePortId = (uint8_t)((hardwarePortId)-BASE_1G_RX_PORTID); \ + else { \ + _relativePortId = (uint8_t)DUMMY_PORT_ID; \ + ASSERT_COND(TRUE); \ + } \ +} + +#define HW_PORT_ID_TO_SW_PORT_INDX(swPortIndex, hardwarePortId) \ +do { \ + if (((hardwarePortId) >= BASE_OH_PORTID) && ((hardwarePortId) < BASE_OH_PORTID+FM_MAX_NUM_OF_OH_PORTS)) \ + swPortIndex = (uint8_t)((hardwarePortId)-BASE_OH_PORTID+FM_PCD_PORT_OH_BASE_INDX); \ + else if (((hardwarePortId) >= BASE_1G_RX_PORTID) && \ + ((hardwarePortId) < BASE_1G_RX_PORTID+FM_MAX_NUM_OF_1G_RX_PORTS)) \ + swPortIndex = (uint8_t)((hardwarePortId)-BASE_1G_RX_PORTID+FM_PCD_PORT_1G_RX_BASE_INDX); \ + else if (((hardwarePortId) >= BASE_10G_RX_PORTID) && \ + ((hardwarePortId) < BASE_10G_RX_PORTID+FM_MAX_NUM_OF_10G_RX_PORTS)) \ + swPortIndex = (uint8_t)((hardwarePortId)-BASE_10G_RX_PORTID+FM_PCD_PORT_10G_RX_BASE_INDX); \ + else if (((hardwarePortId) >= BASE_1G_TX_PORTID) && \ + ((hardwarePortId) < BASE_1G_TX_PORTID+FM_MAX_NUM_OF_1G_TX_PORTS)) \ + swPortIndex = (uint8_t)((hardwarePortId)-BASE_1G_TX_PORTID+FM_PCD_PORT_1G_TX_BASE_INDX); \ + else if (((hardwarePortId) >= BASE_10G_TX_PORTID) && \ + ((hardwarePortId) < BASE_10G_TX_PORTID+FM_MAX_NUM_OF_10G_TX_PORTS)) \ + swPortIndex = (uint8_t)((hardwarePortId)-BASE_10G_TX_PORTID+FM_PCD_PORT_10G_TX_BASE_INDX); \ + else ASSERT_COND(FALSE); \ +} while (0) + +#define SW_PORT_INDX_TO_HW_PORT_ID(hardwarePortId, swPortIndex) \ +do { \ + if (((swPortIndex) >= FM_PCD_PORT_OH_BASE_INDX) && ((swPortIndex) < FM_PCD_PORT_1G_RX_BASE_INDX)) \ + hardwarePortId = (uint8_t)((swPortIndex)-FM_PCD_PORT_OH_BASE_INDX+BASE_OH_PORTID); \ + else if (((swPortIndex) >= FM_PCD_PORT_1G_RX_BASE_INDX) && ((swPortIndex) < FM_PCD_PORT_10G_RX_BASE_INDX)) \ + hardwarePortId = (uint8_t)((swPortIndex)-FM_PCD_PORT_1G_RX_BASE_INDX+BASE_1G_RX_PORTID); \ + else if (((swPortIndex) >= FM_PCD_PORT_10G_RX_BASE_INDX) && ((swPortIndex) < FM_MAX_NUM_OF_PORTS)) \ + hardwarePortId = (uint8_t)((swPortIndex)-FM_PCD_PORT_10G_RX_BASE_INDX+BASE_10G_RX_PORTID); \ + else if (((swPortIndex) >= FM_PCD_PORT_1G_TX_BASE_INDX) && ((swPortIndex) < FM_PCD_PORT_10G_TX_BASE_INDX)) \ + hardwarePortId = (uint8_t)((swPortIndex)-FM_PCD_PORT_1G_TX_BASE_INDX+BASE_1G_TX_PORTID); \ + else if (((swPortIndex) >= FM_PCD_PORT_10G_TX_BASE_INDX) && ((swPortIndex) < FM_MAX_NUM_OF_PORTS)) \ + hardwarePortId = (uint8_t)((swPortIndex)-FM_PCD_PORT_10G_TX_BASE_INDX+BASE_10G_TX_PORTID); \ + else ASSERT_COND(FALSE); \ +} while (0) + +#define BMI_FIFO_UNITS 0x100 + +typedef struct { + void (*f_Isr) (t_Handle h_Arg); + t_Handle h_SrcHandle; + uint8_t guestId; +} t_FmIntrSrc; + +#define ILLEGAL_HDR_NUM 0xFF +#define NO_HDR_NUM FM_PCD_PRS_NUM_OF_HDRS + +#define IS_PRIVATE_HEADER(hdr) (((hdr) == HEADER_TYPE_USER_DEFINED_SHIM1) || \ + ((hdr) == HEADER_TYPE_USER_DEFINED_SHIM2)) +#define IS_SPECIAL_HEADER(hdr) ((hdr) == HEADER_TYPE_MACSEC) + +#define GET_PRS_HDR_NUM(num, hdr) \ +switch(hdr) \ +{ case(HEADER_TYPE_ETH): num = 0; break; \ + case(HEADER_TYPE_LLC_SNAP): num = 1; break; \ + case(HEADER_TYPE_VLAN): num = 2; break; \ + case(HEADER_TYPE_PPPoE): num = 3; break; \ + case(HEADER_TYPE_MPLS): num = 4; break; \ + case(HEADER_TYPE_IPv4): num = 5; break; \ + case(HEADER_TYPE_IPv6): num = 6; break; \ + case(HEADER_TYPE_GRE): num = 7; break; \ + case(HEADER_TYPE_MINENCAP): num = 8; break; \ + case(HEADER_TYPE_USER_DEFINED_L3): num = 9; break; \ + case(HEADER_TYPE_TCP): num = 10; break; \ + case(HEADER_TYPE_UDP): num = 11; break; \ + case(HEADER_TYPE_IPSEC_AH): \ + case(HEADER_TYPE_IPSEC_ESP): num = 12; break; \ + case(HEADER_TYPE_SCTP): num = 13; break; \ + case(HEADER_TYPE_DCCP): num = 14; break; \ + case(HEADER_TYPE_USER_DEFINED_L4): num = 15; break; \ + case(HEADER_TYPE_USER_DEFINED_SHIM1): \ + case(HEADER_TYPE_USER_DEFINED_SHIM2): \ + case(HEADER_TYPE_MACSEC): \ + num = NO_HDR_NUM; break; \ + default: \ + REPORT_ERROR(MAJOR, E_NOT_SUPPORTED, ("Unsupported header for parser"));\ + num = ILLEGAL_HDR_NUM; break; \ +} + +/***********************************************************************/ +/* Policer defines */ +/***********************************************************************/ +#define FM_PCD_PLCR_PAR_GO 0x80000000 +#define FM_PCD_PLCR_PAR_PWSEL_MASK 0x0000FFFF +#define FM_PCD_PLCR_PAR_R 0x40000000 + +/* shifts */ +#define FM_PCD_PLCR_PAR_PNUM_SHIFT 16 + + +/***********************************************************************/ +/* Keygen defines */ +/***********************************************************************/ +/* maskes */ +#define KG_SCH_PP_SHIFT_HIGH 0x80000000 +#define KG_SCH_PP_NO_GEN 0x10000000 +#define KG_SCH_PP_SHIFT_LOW 0x0000F000 +#define KG_SCH_MODE_NIA_PLCR 0x40000000 +#define KG_SCH_GEN_EXTRACT_TYPE 0x00008000 +#define KG_SCH_BITMASK_MASK 0x000000FF +#define KG_SCH_GEN_VALID 0x80000000 +#define KG_SCH_GEN_MASK 0x00FF0000 +#define FM_PCD_KG_KGAR_ERR 0x20000000 +#define FM_PCD_KG_KGAR_SEL_CLS_PLAN_ENTRY 0x01000000 +#define FM_PCD_KG_KGAR_SEL_PORT_ENTRY 0x02000000 +#define FM_PCD_KG_KGAR_SEL_PORT_WSEL_SP 0x00008000 +#define FM_PCD_KG_KGAR_SEL_PORT_WSEL_CPP 0x00004000 +#define FM_PCD_KG_KGAR_WSEL_MASK 0x0000FF00 +#define KG_SCH_HASH_CONFIG_NO_FQID 0x80000000 +#define KG_SCH_HASH_CONFIG_SYM 0x40000000 + +#define FM_PCD_KG_KGAR_GO 0x80000000 +#define FM_PCD_KG_KGAR_READ 0x40000000 +#define FM_PCD_KG_KGAR_WRITE 0x00000000 +#define FM_PCD_KG_KGAR_SEL_SCHEME_ENTRY 0x00000000 +#define FM_PCD_KG_KGAR_SCHEME_WSEL_UPDATE_CNT 0x00008000 + + +typedef uint32_t t_KnownFieldsMasks; + +#define KG_SCH_KN_PORT_ID 0x80000000 +#define KG_SCH_KN_MACDST 0x40000000 +#define KG_SCH_KN_MACSRC 0x20000000 +#define KG_SCH_KN_TCI1 0x10000000 +#define KG_SCH_KN_TCI2 0x08000000 +#define KG_SCH_KN_ETYPE 0x04000000 +#define KG_SCH_KN_PPPSID 0x02000000 +#define KG_SCH_KN_PPPID 0x01000000 +#define KG_SCH_KN_MPLS1 0x00800000 +#define KG_SCH_KN_MPLS2 0x00400000 +#define KG_SCH_KN_MPLS_LAST 0x00200000 +#define KG_SCH_KN_IPSRC1 0x00100000 +#define KG_SCH_KN_IPDST1 0x00080000 +#define KG_SCH_KN_PTYPE1 0x00040000 +#define KG_SCH_KN_IPTOS_TC1 0x00020000 +#define KG_SCH_KN_IPV6FL1 0x00010000 +#define KG_SCH_KN_IPSRC2 0x00008000 +#define KG_SCH_KN_IPDST2 0x00004000 +#define KG_SCH_KN_PTYPE2 0x00002000 +#define KG_SCH_KN_IPTOS_TC2 0x00001000 +#define KG_SCH_KN_IPV6FL2 0x00000800 +#define KG_SCH_KN_GREPTYPE 0x00000400 +#define KG_SCH_KN_IPSEC_SPI 0x00000200 +#define KG_SCH_KN_IPSEC_NH 0x00000100 +#define KG_SCH_KN_L4PSRC 0x00000004 +#define KG_SCH_KN_L4PDST 0x00000002 +#define KG_SCH_KN_TFLG 0x00000001 + +typedef uint8_t t_GenericCodes; + +#define KG_SCH_GEN_SHIM1 0x70 +#define KG_SCH_GEN_DEFAULT 0x10 +#define KG_SCH_GEN_PARSE_RESULT_N_FQID 0x20 +#define KG_SCH_GEN_START_OF_FRM 0x40 +#define KG_SCH_GEN_SHIM2 0x71 +#define KG_SCH_GEN_IP_PID_NO_V 0x72 +#define KG_SCH_GEN_ETH 0x03 +#define KG_SCH_GEN_ETH_NO_V 0x73 +#define KG_SCH_GEN_SNAP 0x04 +#define KG_SCH_GEN_SNAP_NO_V 0x74 +#define KG_SCH_GEN_VLAN1 0x05 +#define KG_SCH_GEN_VLAN1_NO_V 0x75 +#define KG_SCH_GEN_VLAN2 0x06 +#define KG_SCH_GEN_VLAN2_NO_V 0x76 +#define KG_SCH_GEN_ETH_TYPE 0x07 +#define KG_SCH_GEN_ETH_TYPE_NO_V 0x77 +#define KG_SCH_GEN_PPP 0x08 +#define KG_SCH_GEN_PPP_NO_V 0x78 +#define KG_SCH_GEN_MPLS1 0x09 +#define KG_SCH_GEN_MPLS2 0x19 +#define KG_SCH_GEN_MPLS3 0x29 +#define KG_SCH_GEN_MPLS1_NO_V 0x79 +#define KG_SCH_GEN_MPLS_LAST 0x0a +#define KG_SCH_GEN_MPLS_LAST_NO_V 0x7a +#define KG_SCH_GEN_IPV4 0x0b +#define KG_SCH_GEN_IPV6 0x1b +#define KG_SCH_GEN_L3_NO_V 0x7b +#define KG_SCH_GEN_IPV4_TUNNELED 0x0c +#define KG_SCH_GEN_IPV6_TUNNELED 0x1c +#define KG_SCH_GEN_MIN_ENCAP 0x2c +#define KG_SCH_GEN_IP2_NO_V 0x7c +#define KG_SCH_GEN_GRE 0x0d +#define KG_SCH_GEN_GRE_NO_V 0x7d +#define KG_SCH_GEN_TCP 0x0e +#define KG_SCH_GEN_UDP 0x1e +#define KG_SCH_GEN_IPSEC_AH 0x2e +#define KG_SCH_GEN_SCTP 0x3e +#define KG_SCH_GEN_DCCP 0x4e +#define KG_SCH_GEN_IPSEC_ESP 0x6e +#define KG_SCH_GEN_L4_NO_V 0x7e +#define KG_SCH_GEN_NEXTHDR 0x7f + +/* shifts */ +#define KG_SCH_PP_SHIFT_HIGH_SHIFT 27 +#define KG_SCH_PP_SHIFT_LOW_SHIFT 12 +#define KG_SCH_PP_MASK_SHIFT 16 +#define KG_SCH_MODE_CCOBASE_SHIFT 24 +#define KG_SCH_DEF_MAC_ADDR_SHIFT 30 +#define KG_SCH_DEF_TCI_SHIFT 28 +#define KG_SCH_DEF_ENET_TYPE_SHIFT 26 +#define KG_SCH_DEF_PPP_SESSION_ID_SHIFT 24 +#define KG_SCH_DEF_PPP_PROTOCOL_ID_SHIFT 22 +#define KG_SCH_DEF_MPLS_LABEL_SHIFT 20 +#define KG_SCH_DEF_IP_ADDR_SHIFT 18 +#define KG_SCH_DEF_PROTOCOL_TYPE_SHIFT 16 +#define KG_SCH_DEF_IP_TOS_TC_SHIFT 14 +#define KG_SCH_DEF_IPV6_FLOW_LABEL_SHIFT 12 +#define KG_SCH_DEF_IPSEC_SPI_SHIFT 10 +#define KG_SCH_DEF_L4_PORT_SHIFT 8 +#define KG_SCH_DEF_TCP_FLAG_SHIFT 6 +#define KG_SCH_HASH_CONFIG_SHIFT_SHIFT 24 +#define KG_SCH_GEN_MASK_SHIFT 16 +#define KG_SCH_GEN_HT_SHIFT 8 +#define KG_SCH_GEN_SIZE_SHIFT 24 +#define KG_SCH_GEN_DEF_SHIFT 29 +#define FM_PCD_KG_KGAR_NUM_SHIFT 16 + + +/* others */ +#define NUM_OF_SW_DEFAULTS 3 +#define MAX_PP_SHIFT 15 +#define MAX_KG_SCH_SIZE 16 +#define MASK_FOR_GENERIC_BASE_ID 0x20 +#define MAX_HASH_SHIFT 40 +#define MAX_KG_SCH_FQID_BIT_OFFSET 31 +#define MAX_KG_SCH_PP_BIT_OFFSET 15 +#define MAX_DIST_FQID_SHIFT 23 + +#define GET_MASK_SEL_SHIFT(shift,i) \ +switch(i) { \ + case(0):shift = 26;break; \ + case(1):shift = 20;break; \ + case(2):shift = 10;break; \ + case(3):shift = 4;break; \ + default: \ + RETURN_ERROR(MAJOR, E_INVALID_VALUE, NO_MSG);\ +} + +#define GET_MASK_OFFSET_SHIFT(shift,i) \ +switch(i) { \ + case(0):shift = 16;break; \ + case(1):shift = 0;break; \ + case(2):shift = 28;break; \ + case(3):shift = 24;break; \ + default: \ + RETURN_ERROR(MAJOR, E_INVALID_VALUE, NO_MSG);\ +} + +#define GET_MASK_SHIFT(shift,i) \ +switch(i) { \ + case(0):shift = 24;break; \ + case(1):shift = 16;break; \ + case(2):shift = 8;break; \ + case(3):shift = 0;break; \ + default: \ + RETURN_ERROR(MAJOR, E_INVALID_VALUE, NO_MSG);\ +} + +#define FM_PCD_MAX_NUM_OF_OPTIONS(clsPlanEntries) ((clsPlanEntries==256)? 8:((clsPlanEntries==128)? 7: ((clsPlanEntries==64)? 6: ((clsPlanEntries==32)? 5:0)))) + +typedef struct { + uint16_t num; + uint8_t hardwarePortId; + uint16_t plcrProfilesBase; +} t_FmPortPcdInterModulePlcrParams; + +/**************************************************************************//** + @Description A structure for initializing a keygen classification plan group +*//***************************************************************************/ +typedef struct t_FmPcdKgInterModuleClsPlanGrpParams { + uint8_t netEnvId; /* IN */ + bool grpExists; /* OUT (unused in FmPcdKgBuildClsPlanGrp)*/ + uint8_t clsPlanGrpId; /* OUT */ + bool emptyClsPlanGrp; /* OUT */ + uint8_t numOfOptions; /* OUT in FmPcdGetSetClsPlanGrpParams IN in FmPcdKgBuildClsPlanGrp*/ + protocolOpt_t options[FM_PCD_MAX_NUM_OF_OPTIONS(FM_PCD_MAX_NUM_OF_CLS_PLANS)]; + /* OUT in FmPcdGetSetClsPlanGrpParams IN in FmPcdKgBuildClsPlanGrp*/ + uint32_t optVectors[FM_PCD_MAX_NUM_OF_OPTIONS(FM_PCD_MAX_NUM_OF_CLS_PLANS)]; + /* OUT in FmPcdGetSetClsPlanGrpParams IN in FmPcdKgBuildClsPlanGrp*/ +} t_FmPcdKgInterModuleClsPlanGrpParams; + +typedef struct t_FmInterModulePortRxPoolsParams +{ + uint8_t numOfPools; + uint16_t secondLargestBufSize; + uint16_t largestBufSize; +} t_FmInterModulePortRxPoolsParams; + + +typedef t_Error (t_FmPortGetSetCcParamsCallback) (t_Handle h_FmPort, + t_FmPortGetSetCcParams *p_FmPortGetSetCcParams); + + +t_Handle FmPcdGetHcHandle(t_Handle h_FmPcd); +uint32_t FmPcdGetSwPrsOffset(t_Handle h_FmPcd, e_NetHeaderType hdr, uint8_t indexPerHdr); +uint32_t FmPcdGetLcv(t_Handle h_FmPcd, uint32_t netEnvId, uint8_t hdrNum); +uint32_t FmPcdGetMacsecLcv(t_Handle h_FmPcd, uint32_t netEnvId); +void FmPcdIncNetEnvOwners(t_Handle h_FmPcd, uint8_t netEnvId); +void FmPcdDecNetEnvOwners(t_Handle h_FmPcd, uint8_t netEnvId); +void FmPcdPortRegister(t_Handle h_FmPcd, t_Handle h_FmPort, uint8_t hardwarePortId); +uint32_t FmPcdLock(t_Handle h_FmPcd); +void FmPcdUnlock(t_Handle h_FmPcd, uint32_t intFlags); +bool FmPcdNetEnvIsHdrExist(t_Handle h_FmPcd, uint8_t netEnvId, e_NetHeaderType hdr); +bool FmPcdIsIpFrag(t_Handle h_FmPcd, uint8_t netEnvId); + +t_Error FmPcdCcReleaseModifiedDataStructure(t_Handle h_FmPcd, t_List *h_FmPcdOldPointersLst, t_List *h_FmPcdNewPointersLst, uint16_t numOfGoodChanges, t_Handle *h_Params); +uint32_t FmPcdCcGetNodeAddrOffset(t_Handle h_FmPcd, t_Handle h_Pointer); +t_Error FmPcdCcRemoveKey(t_Handle h_FmPcd, t_Handle h_FmPcdCcNode, uint8_t keyIndex, t_List *h_OldLst, t_List *h_NewLst, t_Handle *h_AdditionalParams); +t_Error FmPcdCcAddKey(t_Handle h_FmPcd, t_Handle h_CcNode, uint8_t keyIndex, uint8_t keySize, t_FmPcdCcKeyParams *p_FmPCdCcKeyParams, t_List *h_OldLst, t_List *h_NewLst, t_Handle *h_Params); +t_Error FmPcdCcModifyKey(t_Handle h_FmPcd, t_Handle h_CcNode, uint8_t keyIndex, uint8_t keySize, uint8_t *p_Key, uint8_t *p_Mask, t_List *h_OldLst, t_List *h_NewLst, t_Handle *h_AdditionalParams); +t_Error FmPcdCcModifyKeyAndNextEngine(t_Handle h_FmPcd, t_Handle h_FmPcdCcNode, uint8_t keyIndex, uint8_t keySize, t_FmPcdCcKeyParams *p_FmPcdCcKeyParams, t_List *h_OldLst, t_List *h_NewLst, t_Handle *h_AdditionalParams); +t_Error FmPcdCcModifyMissNextEngineParamNode(t_Handle h_FmPcd,t_Handle h_FmPcdCcNode, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams,t_List *h_OldPointer, t_List *h_NewPointer,t_Handle *h_AdditionalParams); +t_Error FmPcdCcModifyNextEngineParamTree(t_Handle h_FmPcd, t_Handle h_FmPcdCcTree, uint8_t grpId, uint8_t index, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams, t_List *h_OldLst, t_List *h_NewLst, t_Handle *h_AdditionalParams); +t_Error FmPcdCcModiyNextEngineParamNode(t_Handle h_FmPcd,t_Handle h_FmPcdCcNode, uint8_t keyIndex,t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams,t_List *h_OldPointer, t_List *h_NewPointer,t_Handle *h_AdditionalParams); +uint32_t FmPcdCcGetNodeAddrOffsetFromNodeInfo(t_Handle h_FmPcd, t_Handle h_Pointer); +t_Error FmPcdCcTreeTryLock(t_Handle h_FmPcdCcTree); +t_Error FmPcdCcNodeTreeTryLock(t_Handle h_FmPcd,t_Handle h_FmPcdCcNode, t_List *p_List); +void FmPcdCcTreeReleaseLock(t_Handle h_FmPcdCcTree); +void FmPcdCcNodeTreeReleaseLock(t_List *p_List); +t_Handle FmPcdCcTreeGetSavedManipParams(t_Handle h_FmTree, uint8_t manipIndx); +void FmPcdCcTreeSetSavedManipParams(t_Handle h_FmTree, t_Handle h_SavedManipParams, uint8_t manipIndx); + +bool FmPcdKgIsSchemeValidSw(t_Handle h_FmPcd, uint8_t schemeId); +uint8_t FmPcdKgGetClsPlanGrpBase(t_Handle h_FmPcd, uint8_t clsPlanGrp); +uint16_t FmPcdKgGetClsPlanGrpSize(t_Handle h_FmPcd, uint8_t clsPlanGrp); + +t_Error FmPcdKgBuildScheme(t_Handle h_FmPcd, t_FmPcdKgSchemeParams *p_Scheme, t_FmPcdKgInterModuleSchemeRegs *p_SchemeRegs); +t_Error FmPcdKgBuildClsPlanGrp(t_Handle h_FmPcd, t_FmPcdKgInterModuleClsPlanGrpParams *p_Grp, t_FmPcdKgInterModuleClsPlanSet *p_ClsPlanSet); +uint8_t FmPcdKgGetNumOfPartitionSchemes(t_Handle h_FmPcd); +uint8_t FmPcdKgGetPhysicalSchemeId(t_Handle h_FmPcd, uint8_t schemeId); +uint8_t FmPcdKgGetRelativeSchemeId(t_Handle h_FmPcd, uint8_t schemeId); +void FmPcdKgDestroyClsPlanGrp(t_Handle h_FmPcd, uint8_t grpId); +void FmPcdKgValidateSchemeSw(t_Handle h_FmPcd, uint8_t schemeId); +void FmPcdKgInvalidateSchemeSw(t_Handle h_FmPcd, uint8_t schemeId); +t_Error FmPcdKgCheckInvalidateSchemeSw(t_Handle h_FmPcd, uint8_t schemeId); +t_Error FmPcdKgBuildBindPortToSchemes(t_Handle h_FmPcd , t_FmPcdKgInterModuleBindPortToSchemes *p_BindPortToSchemes, uint32_t *p_SpReg, bool add); +void FmPcdKgIncSchemeOwners(t_Handle h_FmPcd , t_FmPcdKgInterModuleBindPortToSchemes *p_BindPort); +void FmPcdKgDecSchemeOwners(t_Handle h_FmPcd , t_FmPcdKgInterModuleBindPortToSchemes *p_BindPort); +bool FmPcdKgIsDriverClsPlan(t_Handle h_FmPcd); +bool FmPcdKgHwSchemeIsValid(uint32_t schemeModeReg); +uint32_t FmPcdKgBuildCppReg(t_Handle h_FmPcd, uint8_t clsPlanGrpId); +uint32_t FmPcdKgBuildWriteSchemeActionReg(uint8_t schemeId, bool updateCounter); +uint32_t FmPcdKgBuildReadSchemeActionReg(uint8_t schemeId); +uint32_t FmPcdKgBuildWriteClsPlanBlockActionReg(uint8_t grpId); +uint32_t FmPcdKgBuildReadClsPlanBlockActionReg(uint8_t grpId); +uint32_t FmPcdKgBuildWritePortSchemeBindActionReg(uint8_t hardwarePortId); +uint32_t FmPcdKgBuildReadPortSchemeBindActionReg(uint8_t hardwarePortId); +uint32_t FmPcdKgBuildWritePortClsPlanBindActionReg(uint8_t hardwarePortId); +uint8_t FmPcdKgGetSchemeSwId(t_Handle h_FmPcd, uint8_t schemeHwId); +t_Error FmPcdKgSchemeTryLock(t_Handle h_FmPcd, uint8_t schemeId, bool intr); +void FmPcdKgReleaseSchemeLock(t_Handle h_FmPcd, uint8_t schemeId); +void FmPcdKgUpatePointedOwner(t_Handle h_FmPcd, uint8_t schemeId, bool add); + +t_Error FmPcdKgBindPortToSchemes(t_Handle h_FmPcd , t_FmPcdKgInterModuleBindPortToSchemes *p_SchemeBind); +t_Error FmPcdKgUnbindPortToSchemes(t_Handle h_FmPcd , t_FmPcdKgInterModuleBindPortToSchemes *p_SchemeBind); +uint32_t FmPcdKgGetRequiredAction(t_Handle h_FmPcd, uint8_t schemeId); +uint32_t FmPcdKgGetPointedOwners(t_Handle h_FmPcd, uint8_t schemeId); +e_FmPcdDoneAction FmPcdKgGetDoneAction(t_Handle h_FmPcd, uint8_t schemeId); +e_FmPcdEngine FmPcdKgGetNextEngine(t_Handle h_FmPcd, uint8_t schemeId); +void FmPcdKgUpdateRequiredAction(t_Handle h_FmPcd, uint8_t schemeId, uint32_t requiredAction); +bool FmPcdKgIsDirectPlcr(t_Handle h_FmPcd, uint8_t schemeId); +bool FmPcdKgIsDistrOnPlcrProfile(t_Handle h_FmPcd, uint8_t schemeId); +uint16_t FmPcdKgGetRelativeProfileId(t_Handle h_FmPcd, uint8_t schemeId); + +/* FM-PCD parser API routines */ +t_Error FmPcdPrsIncludePortInStatistics(t_Handle p_FmPcd, uint8_t hardwarePortId, bool include); + +/* FM-PCD policer API routines */ +t_Error FmPcdPlcrAllocProfiles(t_Handle h_FmPcd, uint8_t hardwarePortId, uint16_t numOfProfiles); +t_Error FmPcdPlcrFreeProfiles(t_Handle h_FmPcd, uint8_t hardwarePortId); +bool FmPcdPlcrIsProfileValid(t_Handle h_FmPcd, uint16_t absoluteProfileId); +uint16_t FmPcdPlcrGetPortProfilesBase(t_Handle h_FmPcd, uint8_t hardwarePortId); +uint16_t FmPcdPlcrGetPortNumOfProfiles(t_Handle h_FmPcd, uint8_t hardwarePortId); +uint32_t FmPcdPlcrBuildWritePlcrActionRegs(uint16_t absoluteProfileId); +uint32_t FmPcdPlcrBuildCounterProfileReg(e_FmPcdPlcrProfileCounters counter); +uint32_t FmPcdPlcrBuildWritePlcrActionReg(uint16_t absoluteProfileId); +uint32_t FmPcdPlcrBuildReadPlcrActionReg(uint16_t absoluteProfileId); +t_Error FmPcdPlcrBuildProfile(t_Handle h_FmPcd, t_FmPcdPlcrProfileParams *p_Profile, t_FmPcdPlcrInterModuleProfileRegs *p_PlcrRegs); +t_Error FmPcdPlcrGetAbsoluteProfileId(t_Handle h_FmPcd, + e_FmPcdProfileTypeSelection profileType, + t_Handle h_FmPort, + uint16_t relativeProfile, + uint16_t *p_AbsoluteId); +void FmPcdPlcrInvalidateProfileSw(t_Handle h_FmPcd, uint16_t absoluteProfileId); +void FmPcdPlcrValidateProfileSw(t_Handle h_FmPcd, uint16_t absoluteProfileId); +bool FmPcdPlcrHwProfileIsValid(uint32_t profileModeReg); +t_Error FmPcdPlcrProfileTryLock(t_Handle h_FmPcd, uint16_t profileId, bool intr); +void FmPcdPlcrReleaseProfileLock(t_Handle h_FmPcd, uint16_t profileId); +uint32_t FmPcdPlcrGetRequiredAction(t_Handle h_FmPcd, uint16_t absoluteProfileId); +uint32_t FmPcdPlcrGetPointedOwners(t_Handle h_FmPcd, uint16_t absoluteProfileId); +void FmPcdPlcrUpatePointedOwner(t_Handle h_FmPcd, uint16_t absoluteProfileId, bool add); +uint32_t FmPcdPlcrBuildNiaProfileReg(bool green, bool yellow, bool red); +void FmPcdPlcrUpdateRequiredAction(t_Handle h_FmPcd, uint16_t absoluteProfileId, uint32_t requiredAction); + +/* FM-PCD Coarse-Classification API routines */ +uint8_t FmPcdCcGetParseCode(t_Handle h_CcNode); +uint8_t FmPcdCcGetOffset(t_Handle h_CcNode); + +t_Error FmPcdManipUpdate(t_Handle h_FmPcd, t_Handle h_FmPort, t_Handle h_Manip, t_Handle h_Ad, bool validate, int level, t_Handle h_FmTree, bool modify); +t_Error FmPortGetSetCcParams(t_Handle h_FmPort, t_FmPortGetSetCcParams *p_FmPortGetSetCcParams); +uint32_t FmPcdManipGetRequiredAction (t_Handle h_Manip); +t_Error FmPcdCcBindTree(t_Handle h_FmPcd, t_Handle h_CcTree, uint32_t *p_Offset,t_Handle h_FmPort); +t_Error FmPcdCcUnbindTree(t_Handle h_FmPcd, t_Handle h_CcTree); + +t_Error FmPcdPlcrCcGetSetParams(t_Handle h_FmPcd, uint16_t profileIndx,uint32_t requiredAction); +t_Error FmPcdKgCcGetSetParams(t_Handle h_FmPcd, t_Handle h_Scheme, uint32_t requiredAction); + +uint8_t FmPortGetNetEnvId(t_Handle h_FmPort); +uint8_t FmPortGetHardwarePortId(t_Handle h_FmPort); +uint32_t FmPortGetPcdEngines(t_Handle h_FmPort); +void FmPortPcdKgSwUnbindClsPlanGrp (t_Handle h_FmPort); +t_Error FmPortAttachPCD(t_Handle h_FmPort); +t_Error FmPcdKgSetOrBindToClsPlanGrp(t_Handle h_FmPcd, uint8_t hardwarePortId, uint8_t netEnvId, protocolOpt_t *p_OptArray, uint8_t *p_ClsPlanGrpId, bool *p_IsEmptyClsPlanGrp); +t_Error FmPcdKgDeleteOrUnbindPortToClsPlanGrp(t_Handle h_FmPcd, uint8_t hardwarePortId, uint8_t clsPlanGrpId); + + +/**************************************************************************//** + @Function FmRegisterIntr + + @Description Used to register an inter-module event handler to be processed by FM + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] mod The module that causes the event + @Param[in] modId Module id - if more than 1 instansiation of this + mode exists,0 otherwise. + @Param[in] intrType Interrupt type (error/normal) selection. + @Param[in] f_Isr The interrupt service routine. + @Param[in] h_Arg Argument to be passed to f_Isr. + + @Return None. +*//***************************************************************************/ +void FmRegisterIntr(t_Handle h_Fm, + e_FmEventModules mod, + uint8_t modId, + e_FmIntrType intrType, + void (*f_Isr) (t_Handle h_Arg), + t_Handle h_Arg); + +/**************************************************************************//** + @Function FmUnregisterIntr + + @Description Used to un-register an inter-module event handler that was processed by FM + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] mod The module that causes the event + @Param[in] modId Module id - if more than 1 instansiation of this + mode exists,0 otherwise. + @Param[in] intrType Interrupt type (error/normal) selection. + + @Return None. +*//***************************************************************************/ +void FmUnregisterIntr(t_Handle h_Fm, + e_FmEventModules mod, + uint8_t modId, + e_FmIntrType intrType); + +/**************************************************************************//** + @Function FmRegisterFmCtlIntr + + @Description Used to register to one of the fmCtl events in the FM module + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] eventRegId FmCtl event id (0-7). + @Param[in] f_Isr The interrupt service routine. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +void FmRegisterFmCtlIntr(t_Handle h_Fm, uint8_t eventRegId, void (*f_Isr) (t_Handle h_Fm, uint32_t event)); + + +/**************************************************************************//** + @Description enum for defining MAC types +*//***************************************************************************/ +typedef enum e_FmMacType { + e_FM_MAC_10G = 0, /**< 10G MAC */ + e_FM_MAC_1G /**< 1G MAC */ +} e_FmMacType; + +/**************************************************************************//** + @Description Structure for port-FM communication during FM_PORT_Init. + Fields commented 'IN' are passed by the port module to be used + by the FM module. + Fields commented 'OUT' will be filled by FM before returning to port. + Some fields are optional (depending on configuration) and + will be analized by the port and FM modules accordingly. +*//***************************************************************************/ +typedef struct t_FmInterModulePortInitParams { + uint8_t hardwarePortId; /**< IN. port Id */ + e_FmPortType portType; /**< IN. Port type */ + bool independentMode; /**< IN. TRUE if FM Port operates in independent mode */ + uint16_t liodnOffset; /**< IN. Port's requested resource */ + uint8_t numOfTasks; /**< IN. Port's requested resource */ + uint8_t numOfExtraTasks; /**< IN. Port's requested resource */ + uint8_t numOfOpenDmas; /**< IN. Port's requested resource */ + uint8_t numOfExtraOpenDmas; /**< IN. Port's requested resource */ + uint32_t sizeOfFifo; /**< IN. Port's requested resource */ + uint32_t extraSizeOfFifo; /**< IN. Port's requested resource */ + uint8_t deqPipelineDepth; /**< IN. Port's requested resource */ + uint16_t liodnBase; /**< IN. Irrelevant for P4080 rev 1. + LIODN base for this port, to be + used together with LIODN offset. */ + t_FmPhysAddr fmMuramPhysBaseAddr;/**< OUT. FM-MURAM physical address*/ +} t_FmInterModulePortInitParams; + +/**************************************************************************//** + @Description Structure for port-FM communication during FM_PORT_Free. +*//***************************************************************************/ +typedef struct t_FmInterModulePortFreeParams { + uint8_t hardwarePortId; /**< IN. port Id */ + e_FmPortType portType; /**< IN. Port type */ +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT + uint8_t deqPipelineDepth; /**< IN. Port's requested resource */ +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ +} t_FmInterModulePortFreeParams; + +/**************************************************************************//** + @Function FmGetPcdPrsBaseAddr + + @Description Get the base address of the Parser from the FM module + + @Param[in] h_Fm A handle to an FM Module. + + @Return Base address. +*//***************************************************************************/ +uintptr_t FmGetPcdPrsBaseAddr(t_Handle h_Fm); + +/**************************************************************************//** + @Function FmGetPcdKgBaseAddr + + @Description Get the base address of the Keygen from the FM module + + @Param[in] h_Fm A handle to an FM Module. + + @Return Base address. +*//***************************************************************************/ +uintptr_t FmGetPcdKgBaseAddr(t_Handle h_Fm); + +/**************************************************************************//** + @Function FmGetPcdPlcrBaseAddr + + @Description Get the base address of the Policer from the FM module + + @Param[in] h_Fm A handle to an FM Module. + + @Return Base address. +*//***************************************************************************/ +uintptr_t FmGetPcdPlcrBaseAddr(t_Handle h_Fm); + +/**************************************************************************//** + @Function FmGetMuramHandle + + @Description Get the handle of the MURAM from the FM module + + @Param[in] h_Fm A handle to an FM Module. + + @Return MURAM module handle. +*//***************************************************************************/ +t_Handle FmGetMuramHandle(t_Handle h_Fm); + +/**************************************************************************//** + @Function FmGetPhysicalMuramBase + + @Description Get the physical base address of the MURAM from the FM module + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] fmPhysAddr Physical MURAM base + + @Return Physical base address. +*//***************************************************************************/ +void FmGetPhysicalMuramBase(t_Handle h_Fm, t_FmPhysAddr *fmPhysAddr); + +/**************************************************************************//** + @Function FmGetTimeStampScale + + @Description Used internally by other modules in order to get the timeStamp + period as requested by the application. + + @Param[in] h_Fm A handle to an FM Module. + + @Return TimeStamp period in nanoseconds. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +uint32_t FmGetTimeStampScale(t_Handle h_Fm); + +/**************************************************************************//** + @Function FmResumeStalledPort + + @Description Used internally by FM port to release a stalled port. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] hardwarePortId HW port id. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +t_Error FmResumeStalledPort(t_Handle h_Fm, uint8_t hardwarePortId); + +/**************************************************************************//** + @Function FmIsPortStalled + + @Description Used internally by FM port to read the port's status. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] hardwarePortId HW port id. + @Param[in] p_IsStalled A pointer to the boolean port stalled state + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +t_Error FmIsPortStalled(t_Handle h_Fm, uint8_t hardwarePortId, bool *p_IsStalled); + +/**************************************************************************//** + @Function FmResetMac + + @Description Used by MAC driver to reset the MAC registers + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] type MAC type. + @Param[in] macId MAC id - according to type. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +t_Error FmResetMac(t_Handle h_Fm, e_FmMacType type, uint8_t macId); + +/**************************************************************************//** + @Function FmGetClockFreq + + @Description Used by MAC driver to get the FM clock frequency + + @Param[in] h_Fm A handle to an FM Module. + + @Return clock-freq on success; 0 otherwise. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +uint16_t FmGetClockFreq(t_Handle h_Fm); + +/**************************************************************************//** + @Function FmGetId + + @Description Used by PCD driver to read rhe FM id + + @Param[in] h_Fm A handle to an FM Module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +uint8_t FmGetId(t_Handle h_Fm); + +/**************************************************************************//** + @Function FmGetSetPortParams + + @Description Used by FM-PORT driver to pass and receive parameters between + PORT and FM modules. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in,out] p_PortParams A structure of FM Port parameters. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +t_Error FmGetSetPortParams(t_Handle h_Fm,t_FmInterModulePortInitParams *p_PortParams); + +/**************************************************************************//** + @Function FmFreePortParams + + @Description Used by FM-PORT driver to free port's resources within the FM. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in,out] p_PortParams A structure of FM Port parameters. + + @Return None. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +void FmFreePortParams(t_Handle h_Fm,t_FmInterModulePortFreeParams *p_PortParams); + +/**************************************************************************//** + @Function FmSetPortToWorkWithOneRiscOnly + + @Description Used by FM-PORT driver to pass parameter between + PORT and FM modules for working with number of RISC.. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in,out] p_PortParams A structure of FM Port parameters. + + @Return None. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +t_Error FmSetNumOfRiscsPerPort(t_Handle h_Fm, uint8_t hardwarePortId, uint8_t numOfFmanCtrls); + + +void FmRegisterPcd(t_Handle h_Fm, t_Handle h_FmPcd); +void FmUnregisterPcd(t_Handle h_Fm); +t_Handle FmGetPcdHandle(t_Handle h_Fm); +bool FmRamsEccIsExternalCtl(t_Handle h_Fm); +t_Error FmEnableRamsEcc(t_Handle h_Fm); +t_Error FmDisableRamsEcc(t_Handle h_Fm); +void FmGetRevision(t_Handle h_Fm, t_FmRevisionInfo *p_FmRevisionInfo); +t_Error FmAllocFmanCtrlEventReg(t_Handle h_Fm, uint8_t *p_EventId); +void FmFreeFmanCtrlEventReg(t_Handle h_Fm, uint8_t eventId); +void FmSetFmanCtrlIntr(t_Handle h_Fm, uint8_t eventRegId, uint32_t enableEvents); +uint32_t FmGetFmanCtrlIntr(t_Handle h_Fm, uint8_t eventRegId); +void FmRegisterFmanCtrlIntr(t_Handle h_Fm, uint8_t eventRegId, void (*f_Isr) (t_Handle h_Fm, uint32_t event), t_Handle h_Arg); +void FmUnregisterFmanCtrlIntr(t_Handle h_Fm, uint8_t eventRegId); +t_Error FmSetMacMaxFrame(t_Handle h_Fm, e_FmMacType type, uint8_t macId, uint16_t mtu); +bool FmIsMaster(t_Handle h_Fm); +uint8_t FmGetGuestId(t_Handle h_Fm); +#ifdef FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 +t_Error Fm10GTxEccWorkaround(t_Handle h_Fm, uint8_t macId); +#endif /* FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 */ + +void FmMuramClear(t_Handle h_FmMuram); +t_Error FmSetNumOfOpenDmas(t_Handle h_Fm, + uint8_t hardwarePortId, + uint8_t numOfOpenDmas, + uint8_t numOfExtraOpenDmas, + bool initialConfig); +t_Error FmSetNumOfTasks(t_Handle h_Fm, + uint8_t hardwarePortId, + uint8_t numOfTasks, + uint8_t numOfExtraTasks, + bool initialConfig); +t_Error FmSetSizeOfFifo(t_Handle h_Fm, + uint8_t hardwarePortId, + e_FmPortType portType, + bool independentMode, + uint32_t *p_SizeOfFifo, + uint32_t extraSizeOfFifo, + uint8_t deqPipelineDepth, + t_FmInterModulePortRxPoolsParams *p_RxPoolsParams, + bool initialConfig); + + +#endif /* __FM_COMMON_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/Peripherals/FM/inc/fm_hc.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/Peripherals/FM/inc/fm_hc.h @@ -0,0 +1,86 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __FM_HC_H +#define __FM_HC_H + +#include "std_ext.h" +#include "error_ext.h" + + +#define __ERR_MODULE__ MODULE_FM_PCD + + +typedef struct t_FmHcParams { + t_Handle h_Fm; + t_Handle h_FmPcd; + t_FmPcdHcParams params; +} t_FmHcParams; + + +t_Handle FmHcConfigAndInit(t_FmHcParams *p_FmHcParams); +void FmHcFree(t_Handle h_FmHc); +t_Error FmHcDumpRegs(t_Handle h_FmHc); + +void FmHcTxConf(t_Handle h_FmHc, t_DpaaFD *p_Fd); + +t_Handle FmHcPcdKgSetScheme(t_Handle h_FmHc, t_FmPcdKgSchemeParams *p_Scheme); +t_Error FmHcPcdKgDeleteScheme(t_Handle h_FmHc, t_Handle h_Scheme); +t_Error FmHcPcdCcCapwapTimeoutReassm(t_Handle h_FmHc, t_FmPcdCcCapwapReassmTimeoutParams *p_CcCapwapReassmTimeoutParams ); +t_Error FmHcPcdKgSetClsPlan(t_Handle h_FmHc, t_FmPcdKgInterModuleClsPlanSet *p_Set); +t_Error FmHcPcdKgDeleteClsPlan(t_Handle h_FmHc, uint8_t clsPlanGrpId); + +t_Error FmHcPcdKgSetSchemeCounter(t_Handle h_FmHc, t_Handle h_Scheme, uint32_t value); +uint32_t FmHcPcdKgGetSchemeCounter(t_Handle h_FmHc, t_Handle h_Scheme); + +t_Error FmHcPcdCcModifyTreeNextEngine(t_Handle h_FmHc, t_Handle h_CcTree, uint8_t grpId, uint8_t index, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams); +t_Error FmHcPcdCcModifyNodeNextEngine(t_Handle h_FmHc, t_Handle h_CcNode, uint8_t keyIndex, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams); +t_Error FmHcPcdCcModifyNodeMissNextEngine(t_Handle h_FmHc, t_Handle h_CcNode, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams); +t_Error FmHcPcdCcRemoveKey(t_Handle h_FmHc, t_Handle h_CcNode, uint8_t keyIndex); +t_Error FmHcPcdCcAddKey(t_Handle h_FmHc, t_Handle h_CcNode, uint8_t keyIndex, uint8_t keySize, t_FmPcdCcKeyParams *p_KeyParams); +t_Error FmHcPcdCcModifyKeyAndNextEngine(t_Handle h_FmHc, t_Handle h_CcNode, uint8_t keyIndex, uint8_t keySize, t_FmPcdCcKeyParams *p_KeyParams); +t_Error FmHcPcdCcModifyKey(t_Handle h_FmHc, t_Handle h_CcNode, uint8_t keyIndex, uint8_t keySize, uint8_t *p_Key, uint8_t *p_Mask); + +t_Handle FmHcPcdPlcrSetProfile(t_Handle h_FmHc,t_FmPcdPlcrProfileParams *p_Profile); +t_Error FmHcPcdPlcrDeleteProfile(t_Handle h_FmHc, t_Handle h_Profile); + +t_Error FmHcPcdPlcrSetProfileCounter(t_Handle h_FmHc, t_Handle h_Profile, e_FmPcdPlcrProfileCounters counter, uint32_t value); +uint32_t FmHcPcdPlcrGetProfileCounter(t_Handle h_FmHc, t_Handle h_Profile, e_FmPcdPlcrProfileCounters counter); + +t_Error FmHcKgWriteSp(t_Handle h_FmHc, uint8_t hardwarePortId, uint32_t spReg, bool add); +t_Error FmHcKgWriteCpp(t_Handle h_FmHc, uint8_t hardwarePortId, uint32_t cppReg); + +t_Error FmHcPcdKgCcGetSetParams(t_Handle h_FmHc, t_Handle h_Scheme, uint32_t requiredAction); +t_Error FmHcPcdPlcrCcGetSetParams(t_Handle h_FmHc,uint16_t absoluteProfileId, uint32_t requiredAction); + + +#endif /* __FM_HC_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/etc/Makefile +++ linux-3.13.0/drivers/net/dpa/NetCommSw/etc/Makefile @@ -0,0 +1,11 @@ +# +# Makefile for the Freescale Ethernet controllers +# +EXTRA_CFLAGS += -DVERSION=\"\" +# +#Include netcomm SW specific definitions +include $(srctree)/drivers/net/dpa/NetCommSw/ncsw_config.mk + +obj-y += fsl-ncsw-etc.o + +fsl-ncsw-etc-objs := mm.o memcpy.o sprint.o list.o error.o --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/etc/error.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/etc/error.c @@ -0,0 +1,118 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/* + + @File error.c + + @Description General errors and events reporting utilities. +*//***************************************************************************/ + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) + +const char *dbgLevelStrings[] = +{ + "CRITICAL" + ,"MAJOR" + ,"MINOR" + ,"WARNING" + ,"INFO" + ,"TRACE" +}; + +const char *errTypeStrings[] = +{ + "Invalid State" /* E_INVALID_STATE */ + ,"Invalid Operation" /* E_INVALID_OPERATION */ + ,"Unsupported Operation" /* E_NOT_SUPPORTED */ + ,"No Device" /* E_NO_DEVICE */ + ,"Invalid Handle" /* E_INVALID_HANDLE */ + ,"Invalid ID" /* E_INVALID_ID */ + ,"Unexpected NULL Pointer" /* E_NULL_POINTER */ + ,"Invalid Value" /* E_INVALID_VALUE */ + ,"Invalid Selection" /* E_INVALID_SELECTION */ + ,"Invalid Communication Mode" /* E_INVALID_COMM_MODE */ + ,"Invalid Byte Order" /* E_INVALID_BYTE_ORDER */ + ,"Invalid Memory Type" /* E_INVALID_MEMORY_TYPE */ + ,"Invalid Interrupt Queue" /* E_INVALID_INTR_QUEUE */ + ,"Invalid Priority" /* E_INVALID_PRIORITY */ + ,"Invalid Clock" /* E_INVALID_CLOCK */ + ,"Invalid Rate" /* E_INVALID_RATE */ + ,"Invalid Address" /* E_INVALID_ADDRESS */ + ,"Invalid Bus" /* E_INVALID_BUS */ + ,"Conflict In Bus Selection" /* E_BUS_CONFLICT */ + ,"Conflict In Settings" /* E_CONFLICT */ + ,"Incorrect Alignment" /* E_NOT_ALIGNED */ + ,"Value Out Of Range" /* E_NOT_IN_RANGE */ + ,"Invalid Frame" /* E_INVALID_FRAME */ + ,"Frame Is Empty" /* E_EMPTY_FRAME */ + ,"Buffer Is Empty" /* E_EMPTY_BUFFER */ + ,"Memory Allocation Failed" /* E_NO_MEMORY */ + ,"Resource Not Found" /* E_NOT_FOUND */ + ,"Resource Is Unavailable" /* E_NOT_AVAILABLE */ + ,"Resource Already Exists" /* E_ALREADY_EXISTS */ + ,"Resource Is Full" /* E_FULL */ + ,"Resource Is Empty" /* E_EMPTY */ + ,"Resource Is Busy" /* E_BUSY */ + ,"Resource Already Free" /* E_ALREADY_FREE */ + ,"Read Access Failed" /* E_READ_FAILED */ + ,"Write Access Failed" /* E_WRITE_FAILED */ + ,"Send Operation Failed" /* E_SEND_FAILED */ + ,"Receive Operation Failed" /* E_RECEIVE_FAILED */ + ,"Operation Timed Out" /* E_TIMEOUT */ +}; + + +#if (defined(REPORT_EVENTS) && (REPORT_EVENTS > 0)) + +const char *eventStrings[] = +{ + "Rx Discard" /* EV_RX_DISCARD */ + ,"Rx Error" /* EV_RX_ERROR */ + ,"Tx Error" /* EV_TX_ERROR */ + ,"No Buffer Objects" /* EV_NO_BUFFERS */ + ,"No MB-Frame Objects" /* EV_NO_MB_FRAMES */ + ,"No SB-Frame Objects" /* EV_NO_SB_FRAMES */ + ,"Tx Queue Is Full" /* EV_TX_QUEUE_FULL */ + ,"Rx Queue Is Full" /* EV_RX_QUEUE_FULL */ + ,"Interrupts Queue Is Full" /* EV_INTR_QUEUE_FULL */ + ,"Data Buffer Is Unavailable" /* EV_NO_DATA_BUFFER */ + ,"Objects Pool Is Empty" /* EV_OBJ_POOL_EMPTY */ + ,"Illegal bus access" /* EV_BUS_ERROR */ + ,"PTP Tx Timestamps Queue Is Full" /* EV_PTP_TXTS_QUEUE_FULL */ + ,"PTP Rx Timestamps Queue Is Full" /* EV_PTP_RXTS_QUEUE_FULL */ +}; + +#endif /* (defined(REPORT_EVENTS) && (REPORT_EVENTS > 0)) */ + +#endif /* (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) */ + --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/etc/list.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/etc/list.c @@ -0,0 +1,70 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + + @File list.c + + @Description Implementation of list. +*//***************************************************************************/ +#include "std_ext.h" +#include "list_ext.h" + + +void LIST_Append(t_List *p_NewList, t_List *p_Head) +{ + t_List *p_First = LIST_FIRST(p_NewList); + + if (p_First != p_NewList) + { + t_List *p_Last = LIST_LAST(p_NewList); + t_List *p_Cur = LIST_NEXT(p_Head); + + LIST_PREV(p_First) = p_Head; + LIST_FIRST(p_Head) = p_First; + LIST_NEXT(p_Last) = p_Cur; + LIST_LAST(p_Cur) = p_Last; + } +} + + +int LIST_NumOfObjs(t_List *p_List) +{ + t_List *p_Tmp; + int numOfObjs = 0; + + if (!LIST_IsEmpty(p_List)) + LIST_FOR_EACH(p_Tmp, p_List) + numOfObjs++; + + return numOfObjs; +} --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/etc/memcpy.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/etc/memcpy.c @@ -0,0 +1,665 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#include "std_ext.h" +#include "xx_ext.h" +#include "memcpy_ext.h" + + +#ifdef CORE_8BIT_ACCESS_ERRATA +static void MY_MY_WRITE_UINT8(uint8_t *addr, uint8_t val) +{ + uint32_t newAddr, newVal; + newAddr = (uint32_t)addr & ~0x3L; + switch ((uint32_t)addr%4) + { + case (0): + newVal = GET_UINT32(*(uint32_t*)newAddr); + newVal = (newVal & 0x00ffffff) | (((uint32_t)val)<<24); + WRITE_UINT32(*(uint32_t*)newAddr, newVal); + break; + case (1): + newVal = GET_UINT32(*(uint32_t*)newAddr); + newVal = (newVal & 0xff00ffff) | (((uint32_t)val)<<16); + WRITE_UINT32(*(uint32_t*)newAddr, newVal); + break; + case (2): + newVal = GET_UINT32(*(uint32_t*)newAddr); + newVal = (newVal & 0xffff00ff) | (((uint32_t)val)<<8); + WRITE_UINT32(*(uint32_t*)newAddr, newVal); + break; + case (3): + newVal = GET_UINT32(*(uint32_t*)newAddr); + newVal = (newVal & 0xffffff00) | val; + WRITE_UINT32(*(uint32_t*)newAddr, newVal); + break; + } +} + +static uint8_t MY_MY_GET_UINT8(uint8_t *addr) +{ + uint32_t newAddr, newVal=0; + newAddr = (uint32_t)addr & ~0x3L; + switch ((uint32_t)addr%4) + { + case (0): + newVal = GET_UINT32(*(uint32_t*)newAddr); + newVal = (newVal & 0xff000000)>>24; + break; + case (1): + newVal = GET_UINT32(*(uint32_t*)newAddr); + newVal = (newVal & 0x00ff0000)>>16; + break; + case (2): + newVal = GET_UINT32(*(uint32_t*)newAddr); + newVal = (newVal & 0x0000ff00)>>8; + break; + case (3): + newVal = GET_UINT32(*(uint32_t*)newAddr); + newVal = (newVal & 0x000000ff); + break; + } + + return (uint8_t)newVal; +} + +#define MY_WRITE_UINT8(addr,val) MY_MY_WRITE_UINT8(&addr,val) +#define MY_GET_UINT8(addr) MY_MY_GET_UINT8(&addr) +#else +#define MY_WRITE_UINT8 WRITE_UINT8 +#define MY_GET_UINT8 GET_UINT8 +#endif /* CORE_8BIT_ACCESS_ERRATA */ + + +void * MemCpy32(void* pDst,void* pSrc, uint32_t size) +{ + uint32_t leftAlign; + uint32_t rightAlign; + uint32_t lastWord; + uint32_t currWord; + uint32_t *p_Src32; + uint32_t *p_Dst32; + uint8_t *p_Src8; + uint8_t *p_Dst8; + + p_Src8 = (uint8_t*)(pSrc); + p_Dst8 = (uint8_t*)(pDst); + /* first copy byte by byte till the source first alignment + * this step is necessary to ensure we do not even try to access + * data which is before the source buffer, hence it is not ours. + */ + while((PTR_TO_UINT(p_Src8) & 3) && size) /* (pSrc mod 4) > 0 and size > 0 */ + { + *p_Dst8++ = *p_Src8++; + size--; + } + + /* align destination (possibly disaligning source)*/ + while((PTR_TO_UINT(p_Dst8) & 3) && size) /* (pDst mod 4) > 0 and size > 0 */ + { + *p_Dst8++ = *p_Src8++; + size--; + } + + /* dest is aligned and source is not necessarily aligned */ + leftAlign = (uint32_t)((PTR_TO_UINT(p_Src8) & 3) << 3); /* leftAlign = (pSrc mod 4)*8 */ + rightAlign = 32 - leftAlign; + + + if (leftAlign == 0) + { + /* source is also aligned */ + p_Src32 = (uint32_t*)(p_Src8); + p_Dst32 = (uint32_t*)(p_Dst8); + while (size >> 2) /* size >= 4 */ + { + *p_Dst32++ = *p_Src32++; + size -= 4; + } + p_Src8 = (uint8_t*)(p_Src32); + p_Dst8 = (uint8_t*)(p_Dst32); + } + else + { + /* source is not aligned (destination is aligned)*/ + p_Src32 = (uint32_t*)(p_Src8 - (leftAlign >> 3)); + p_Dst32 = (uint32_t*)(p_Dst8); + lastWord = *p_Src32++; + while(size >> 3) /* size >= 8 */ + { + currWord = *p_Src32; + *p_Dst32 = (lastWord << leftAlign) | (currWord >> rightAlign); + lastWord = currWord; + p_Src32++; + p_Dst32++; + size -= 4; + } + p_Dst8 = (uint8_t*)(p_Dst32); + p_Src8 = (uint8_t*)(p_Src32) - 4 + (leftAlign >> 3); + } + + /* complete the left overs */ + while (size--) + *p_Dst8++ = *p_Src8++; + + return pDst; +} + +void * IO2IOCpy32(void* pDst,void* pSrc, uint32_t size) +{ + uint32_t leftAlign; + uint32_t rightAlign; + uint32_t lastWord; + uint32_t currWord; + uint32_t *p_Src32; + uint32_t *p_Dst32; + uint8_t *p_Src8; + uint8_t *p_Dst8; + + p_Src8 = (uint8_t*)(pSrc); + p_Dst8 = (uint8_t*)(pDst); + /* first copy byte by byte till the source first alignment + * this step is necessary to ensure we do not even try to access + * data which is before the source buffer, hence it is not ours. + */ + while((PTR_TO_UINT(p_Src8) & 3) && size) /* (pSrc mod 4) > 0 and size > 0 */ + { + MY_WRITE_UINT8(*p_Dst8, MY_GET_UINT8(*p_Src8)); + p_Dst8++;p_Src8++; + size--; + } + + /* align destination (possibly disaligning source)*/ + while((PTR_TO_UINT(p_Dst8) & 3) && size) /* (pDst mod 4) > 0 and size > 0 */ + { + MY_WRITE_UINT8(*p_Dst8, MY_GET_UINT8(*p_Src8)); + p_Dst8++;p_Src8++; + size--; + } + + /* dest is aligned and source is not necessarily aligned */ + leftAlign = (uint32_t)((PTR_TO_UINT(p_Src8) & 3) << 3); /* leftAlign = (pSrc mod 4)*8 */ + rightAlign = 32 - leftAlign; + + if (leftAlign == 0) + { + /* source is also aligned */ + p_Src32 = (uint32_t*)(p_Src8); + p_Dst32 = (uint32_t*)(p_Dst8); + while (size >> 2) /* size >= 4 */ + { + WRITE_UINT32(*p_Dst32, GET_UINT32(*p_Src32)); + p_Dst32++;p_Src32++; + size -= 4; + } + p_Src8 = (uint8_t*)(p_Src32); + p_Dst8 = (uint8_t*)(p_Dst32); + } + else + { + /* source is not aligned (destination is aligned)*/ + p_Src32 = (uint32_t*)(p_Src8 - (leftAlign >> 3)); + p_Dst32 = (uint32_t*)(p_Dst8); + lastWord = GET_UINT32(*p_Src32); + p_Src32++; + while(size >> 3) /* size >= 8 */ + { + currWord = GET_UINT32(*p_Src32); + WRITE_UINT32(*p_Dst32, (lastWord << leftAlign) | (currWord >> rightAlign)); + lastWord = currWord; + p_Src32++;p_Dst32++; + size -= 4; + } + p_Dst8 = (uint8_t*)(p_Dst32); + p_Src8 = (uint8_t*)(p_Src32) - 4 + (leftAlign >> 3); + } + + /* complete the left overs */ + while (size--) + { + MY_WRITE_UINT8(*p_Dst8, MY_GET_UINT8(*p_Src8)); + p_Dst8++;p_Src8++; + } + + return pDst; +} + +void * Mem2IOCpy32(void* pDst,void* pSrc, uint32_t size) +{ + uint32_t leftAlign; + uint32_t rightAlign; + uint32_t lastWord; + uint32_t currWord; + uint32_t *p_Src32; + uint32_t *p_Dst32; + uint8_t *p_Src8; + uint8_t *p_Dst8; + + p_Src8 = (uint8_t*)(pSrc); + p_Dst8 = (uint8_t*)(pDst); + /* first copy byte by byte till the source first alignment + * this step is necessary to ensure we do not even try to access + * data which is before the source buffer, hence it is not ours. + */ + while((PTR_TO_UINT(p_Src8) & 3) && size) /* (pSrc mod 4) > 0 and size > 0 */ + { + MY_WRITE_UINT8(*p_Dst8, *p_Src8); + p_Dst8++;p_Src8++; + size--; + } + + /* align destination (possibly disaligning source)*/ + while((PTR_TO_UINT(p_Dst8) & 3) && size) /* (pDst mod 4) > 0 and size > 0 */ + { + MY_WRITE_UINT8(*p_Dst8, *p_Src8); + p_Dst8++;p_Src8++; + size--; + } + + /* dest is aligned and source is not necessarily aligned */ + leftAlign = (uint32_t)((PTR_TO_UINT(p_Src8) & 3) << 3); /* leftAlign = (pSrc mod 4)*8 */ + rightAlign = 32 - leftAlign; + + if (leftAlign == 0) + { + /* source is also aligned */ + p_Src32 = (uint32_t*)(p_Src8); + p_Dst32 = (uint32_t*)(p_Dst8); + while (size >> 2) /* size >= 4 */ + { + WRITE_UINT32(*p_Dst32, *p_Src32); + p_Dst32++;p_Src32++; + size -= 4; + } + p_Src8 = (uint8_t*)(p_Src32); + p_Dst8 = (uint8_t*)(p_Dst32); + } + else + { + /* source is not aligned (destination is aligned)*/ + p_Src32 = (uint32_t*)(p_Src8 - (leftAlign >> 3)); + p_Dst32 = (uint32_t*)(p_Dst8); + lastWord = *p_Src32++; + while(size >> 3) /* size >= 8 */ + { + currWord = *p_Src32; + WRITE_UINT32(*p_Dst32, (lastWord << leftAlign) | (currWord >> rightAlign)); + lastWord = currWord; + p_Src32++;p_Dst32++; + size -= 4; + } + p_Dst8 = (uint8_t*)(p_Dst32); + p_Src8 = (uint8_t*)(p_Src32) - 4 + (leftAlign >> 3); + } + + /* complete the left overs */ + while (size--) + { + MY_WRITE_UINT8(*p_Dst8, *p_Src8); + p_Dst8++;p_Src8++; + } + + return pDst; +} + +void * IO2MemCpy32(void* pDst,void* pSrc, uint32_t size) +{ + uint32_t leftAlign; + uint32_t rightAlign; + uint32_t lastWord; + uint32_t currWord; + uint32_t *p_Src32; + uint32_t *p_Dst32; + uint8_t *p_Src8; + uint8_t *p_Dst8; + + p_Src8 = (uint8_t*)(pSrc); + p_Dst8 = (uint8_t*)(pDst); + /* first copy byte by byte till the source first alignment + * this step is necessary to ensure we do not even try to access + * data which is before the source buffer, hence it is not ours. + */ + while((PTR_TO_UINT(p_Src8) & 3) && size) /* (pSrc mod 4) > 0 and size > 0 */ + { + *p_Dst8 = MY_GET_UINT8(*p_Src8); + p_Dst8++;p_Src8++; + size--; + } + + /* align destination (possibly disaligning source)*/ + while((PTR_TO_UINT(p_Dst8) & 3) && size) /* (pDst mod 4) > 0 and size > 0 */ + { + *p_Dst8 = MY_GET_UINT8(*p_Src8); + p_Dst8++;p_Src8++; + size--; + } + + /* dest is aligned and source is not necessarily aligned */ + leftAlign = (uint32_t)((PTR_TO_UINT(p_Src8) & 3) << 3); /* leftAlign = (pSrc mod 4)*8 */ + rightAlign = 32 - leftAlign; + + if (leftAlign == 0) + { + /* source is also aligned */ + p_Src32 = (uint32_t*)(p_Src8); + p_Dst32 = (uint32_t*)(p_Dst8); + while (size >> 2) /* size >= 4 */ + { + *p_Dst32 = GET_UINT32(*p_Src32); + p_Dst32++;p_Src32++; + size -= 4; + } + p_Src8 = (uint8_t*)(p_Src32); + p_Dst8 = (uint8_t*)(p_Dst32); + } + else + { + /* source is not aligned (destination is aligned)*/ + p_Src32 = (uint32_t*)(p_Src8 - (leftAlign >> 3)); + p_Dst32 = (uint32_t*)(p_Dst8); + lastWord = GET_UINT32(*p_Src32); + p_Src32++; + while(size >> 3) /* size >= 8 */ + { + currWord = GET_UINT32(*p_Src32); + *p_Dst32 = (lastWord << leftAlign) | (currWord >> rightAlign); + lastWord = currWord; + p_Src32++;p_Dst32++; + size -= 4; + } + p_Dst8 = (uint8_t*)(p_Dst32); + p_Src8 = (uint8_t*)(p_Src32) - 4 + (leftAlign >> 3); + } + + /* complete the left overs */ + while (size--) + { + *p_Dst8 = MY_GET_UINT8(*p_Src8); + p_Dst8++;p_Src8++; + } + + return pDst; +} + +void * MemCpy64(void* pDst,void* pSrc, uint32_t size) +{ + uint32_t leftAlign; + uint32_t rightAlign; + uint64_t lastWord; + uint64_t currWord; + uint64_t *pSrc64; + uint64_t *pDst64; + uint8_t *p_Src8; + uint8_t *p_Dst8; + + p_Src8 = (uint8_t*)(pSrc); + p_Dst8 = (uint8_t*)(pDst); + /* first copy byte by byte till the source first alignment + * this step is necessarily to ensure we do not even try to access + * data which is before the source buffer, hence it is not ours. + */ + while((PTR_TO_UINT(p_Src8) & 7) && size) /* (pSrc mod 8) > 0 and size > 0 */ + { + *p_Dst8++ = *p_Src8++; + size--; + } + + /* align destination (possibly disaligning source)*/ + while((PTR_TO_UINT(p_Dst8) & 7) && size) /* (pDst mod 8) > 0 and size > 0 */ + { + *p_Dst8++ = *p_Src8++; + size--; + } + + /* dest is aligned and source is not necessarily aligned */ + leftAlign = (uint32_t)((PTR_TO_UINT(p_Src8) & 7) << 3); /* leftAlign = (pSrc mod 8)*8 */ + rightAlign = 64 - leftAlign; + + + if (leftAlign == 0) + { + /* source is also aligned */ + pSrc64 = (uint64_t*)(p_Src8); + pDst64 = (uint64_t*)(p_Dst8); + while (size >> 3) /* size >= 8 */ + { + *pDst64++ = *pSrc64++; + size -= 8; + } + p_Src8 = (uint8_t*)(pSrc64); + p_Dst8 = (uint8_t*)(pDst64); + } + else + { + /* source is not aligned (destination is aligned)*/ + pSrc64 = (uint64_t*)(p_Src8 - (leftAlign >> 3)); + pDst64 = (uint64_t*)(p_Dst8); + lastWord = *pSrc64++; + while(size >> 4) /* size >= 16 */ + { + currWord = *pSrc64; + *pDst64 = (lastWord << leftAlign) | (currWord >> rightAlign); + lastWord = currWord; + pSrc64++; + pDst64++; + size -= 8; + } + p_Dst8 = (uint8_t*)(pDst64); + p_Src8 = (uint8_t*)(pSrc64) - 8 + (leftAlign >> 3); + } + + /* complete the left overs */ + while (size--) + *p_Dst8++ = *p_Src8++; + + return pDst; +} + +void * MemSet32(void* pDst, uint8_t val, uint32_t size) +{ + uint32_t val32; + uint32_t *p_Dst32; + uint8_t *p_Dst8; + + p_Dst8 = (uint8_t*)(pDst); + + /* generate four 8-bit val's in 32-bit container */ + val32 = (uint32_t) val; + val32 |= (val32 << 8); + val32 |= (val32 << 16); + + /* align destination to 32 */ + while((PTR_TO_UINT(p_Dst8) & 3) && size) /* (pDst mod 4) > 0 and size > 0 */ + { + *p_Dst8++ = val; + size--; + } + + /* 32-bit chunks */ + p_Dst32 = (uint32_t*)(p_Dst8); + while (size >> 2) /* size >= 4 */ + { + *p_Dst32++ = val32; + size -= 4; + } + + /* complete the leftovers */ + p_Dst8 = (uint8_t*)(p_Dst32); + while (size--) + *p_Dst8++ = val; + + return pDst; +} + +void * IOMemSet32(void* pDst, uint8_t val, uint32_t size) +{ + uint32_t val32; + uint32_t *p_Dst32; + uint8_t *p_Dst8; + + p_Dst8 = (uint8_t*)(pDst); + + /* generate four 8-bit val's in 32-bit container */ + val32 = (uint32_t) val; + val32 |= (val32 << 8); + val32 |= (val32 << 16); + + /* align destination to 32 */ + while((PTR_TO_UINT(p_Dst8) & 3) && size) /* (pDst mod 4) > 0 and size > 0 */ + { + MY_WRITE_UINT8(*p_Dst8, val); + p_Dst8++; + size--; + } + + /* 32-bit chunks */ + p_Dst32 = (uint32_t*)(p_Dst8); + while (size >> 2) /* size >= 4 */ + { + WRITE_UINT32(*p_Dst32, val32); + p_Dst32++; + size -= 4; + } + + /* complete the leftovers */ + p_Dst8 = (uint8_t*)(p_Dst32); + while (size--) + { + MY_WRITE_UINT8(*p_Dst8, val); + p_Dst8++; + } + + return pDst; +} + +void * MemSet64(void* pDst, uint8_t val, uint32_t size) +{ + uint64_t val64; + uint64_t *pDst64; + uint8_t *p_Dst8; + + p_Dst8 = (uint8_t*)(pDst); + + /* generate four 8-bit val's in 32-bit container */ + val64 = (uint64_t) val; + val64 |= (val64 << 8); + val64 |= (val64 << 16); + val64 |= (val64 << 24); + val64 |= (val64 << 32); + + /* align destination to 64 */ + while((PTR_TO_UINT(p_Dst8) & 7) && size) /* (pDst mod 8) > 0 and size > 0 */ + { + *p_Dst8++ = val; + size--; + } + + /* 64-bit chunks */ + pDst64 = (uint64_t*)(p_Dst8); + while (size >> 4) /* size >= 8 */ + { + *pDst64++ = val64; + size -= 8; + } + + /* complete the leftovers */ + p_Dst8 = (uint8_t*)(pDst64); + while (size--) + *p_Dst8++ = val; + + return pDst; +} + +void MemDisp(uint8_t *p, int size) +{ + uint32_t space = (uint32_t)(PTR_TO_UINT(p) & 0x3); + uint8_t *p_Limit; + + if (space) + { + p_Limit = (p - space + 4); + + XX_Print("0x%08X: ", (p - space)); + + while (space--) + { + XX_Print("--"); + } + while (size && (p < p_Limit)) + { + XX_Print("%02x", *(uint8_t*)p); + size--; + p++; + } + + XX_Print(" "); + p_Limit += 12; + + while ((size > 3) && (p < p_Limit)) + { + XX_Print("%08x ", *(uint32_t*)p); + size -= 4; + p += 4; + } + XX_Print("\r\n"); + } + + while (size > 15) + { + XX_Print("0x%08X: %08x %08x %08x %08x\r\n", + p, *(uint32_t *)p, *(uint32_t *)(p + 4), + *(uint32_t *)(p + 8), *(uint32_t *)(p + 12)); + size -= 16; + p += 16; + } + + if (size) + { + XX_Print("0x%08X: ", p); + + while (size > 3) + { + XX_Print("%08x ", *(uint32_t *)p); + size -= 4; + p += 4; + } + while (size) + { + XX_Print("%02x", *(uint8_t *)p); + size--; + p++; + } + + XX_Print("\r\n"); + } +} --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/etc/mm.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/etc/mm.c @@ -0,0 +1,1109 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "string_ext.h" +#include "error_ext.h" +#include "std_ext.h" +#include "sprint_ext.h" +#include "part_ext.h" +#include "xx_ext.h" + +#include "mm.h" + + + + +/********************************************************************** + * MM internal routines set * + **********************************************************************/ + +/**************************************************************** + * Routine: CreateBusyBlock + * + * Description: + * Initializes a new busy block of "size" bytes and started + * rom "base" address. Each busy block has a name that + * specified the purpose of the memory allocation. + * + * Arguments: + * base - base address of the busy block + * size - size of the busy block + * name - name that specified the busy block + * + * Return value: + * A pointer to new created structure returned on success; + * Otherwise, NULL. + ****************************************************************/ +static t_BusyBlock * CreateBusyBlock(uint64_t base, uint64_t size, char *name) +{ + t_BusyBlock *p_BusyBlock; + uint32_t n; + + p_BusyBlock = (t_BusyBlock *)XX_Malloc(sizeof(t_BusyBlock)); + if ( !p_BusyBlock ) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, NO_MSG); + return NULL; + } + + p_BusyBlock->base = base; + p_BusyBlock->end = base + size; + + n = strlen(name); + if (n >= MM_MAX_NAME_LEN) + n = MM_MAX_NAME_LEN - 1; + strncpy(p_BusyBlock->name, name, MM_MAX_NAME_LEN-1); + p_BusyBlock->name[n] = '\0'; + p_BusyBlock->p_Next = 0; + + return p_BusyBlock; +} + +/**************************************************************** + * Routine: CreateNewBlock + * + * Description: + * Initializes a new memory block of "size" bytes and started + * from "base" address. + * + * Arguments: + * base - base address of the memory block + * size - size of the memory block + * + * Return value: + * A pointer to new created structure returned on success; + * Otherwise, NULL. + ****************************************************************/ +static t_MemBlock * CreateNewBlock(uint64_t base, uint64_t size) +{ + t_MemBlock *p_MemBlock; + + p_MemBlock = (t_MemBlock *)XX_Malloc(sizeof(t_MemBlock)); + if ( !p_MemBlock ) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, NO_MSG); + return NULL; + } + + p_MemBlock->base = base; + p_MemBlock->end = base+size; + p_MemBlock->p_Next = 0; + + return p_MemBlock; +} + +/**************************************************************** + * Routine: CreateFreeBlock + * + * Description: + * Initializes a new free block of of "size" bytes and + * started from "base" address. + * + * Arguments: + * base - base address of the free block + * size - size of the free block + * + * Return value: + * A pointer to new created structure returned on success; + * Otherwise, NULL. + ****************************************************************/ +static t_FreeBlock * CreateFreeBlock(uint64_t base, uint64_t size) +{ + t_FreeBlock *p_FreeBlock; + + p_FreeBlock = (t_FreeBlock *)XX_Malloc(sizeof(t_FreeBlock)); + if ( !p_FreeBlock ) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, NO_MSG); + return NULL; + } + + p_FreeBlock->base = base; + p_FreeBlock->end = base + size; + p_FreeBlock->p_Next = 0; + + return p_FreeBlock; +} + +/**************************************************************** + * Routine: AddFree + * + * Description: + * Adds a new free block to the free lists. It updates each + * free list to include a new free block. + * Note, that all free block in each free list are ordered + * by their base address. + * + * Arguments: + * p_MM - pointer to the MM object + * base - base address of a given free block + * end - end address of a given free block + * + * Return value: + * + * + ****************************************************************/ +static t_Error AddFree(t_MM *p_MM, uint64_t base, uint64_t end) +{ + t_FreeBlock *p_PrevB, *p_CurrB, *p_NewB; + uint64_t alignment; + uint64_t alignBase; + int i; + + /* Updates free lists to include a just released block */ + for (i=0; i <= MM_MAX_ALIGNMENT; i++) + { + p_PrevB = p_NewB = 0; + p_CurrB = p_MM->freeBlocks[i]; + + alignment = (uint64_t)(0x1 << i); + alignBase = MAKE_ALIGNED(base, alignment); + + /* Goes to the next free list if there is no block to free */ + if (alignBase >= end) + continue; + + /* Looks for a free block that should be updated */ + while ( p_CurrB ) + { + if ( alignBase <= p_CurrB->end ) + { + if ( end > p_CurrB->end ) + { + t_FreeBlock *p_NextB; + while ( p_CurrB->p_Next && end > p_CurrB->p_Next->end ) + { + p_NextB = p_CurrB->p_Next; + p_CurrB->p_Next = p_CurrB->p_Next->p_Next; + XX_Free(p_NextB); + } + + p_NextB = p_CurrB->p_Next; + if ( !p_NextB || (p_NextB && end < p_NextB->base) ) + { + p_CurrB->end = end; + } + else + { + p_CurrB->end = p_NextB->end; + p_CurrB->p_Next = p_NextB->p_Next; + XX_Free(p_NextB); + } + } + else if ( (end < p_CurrB->base) && ((end-alignBase) >= alignment) ) + { + if ((p_NewB = CreateFreeBlock(alignBase, end-alignBase)) == NULL) + RETURN_ERROR(MAJOR, E_NO_MEMORY, NO_MSG); + + p_NewB->p_Next = p_CurrB; + if (p_PrevB) + p_PrevB->p_Next = p_NewB; + else + p_MM->freeBlocks[i] = p_NewB; + break; + } + + if ((alignBase < p_CurrB->base) && (end >= p_CurrB->base)) + { + p_CurrB->base = alignBase; + } + + /* if size of the free block is less then alignment + * deletes that free block from the free list. */ + if ( (p_CurrB->end - p_CurrB->base) < alignment) + { + if ( p_PrevB ) + p_PrevB->p_Next = p_CurrB->p_Next; + else + p_MM->freeBlocks[i] = p_CurrB->p_Next; + XX_Free(p_CurrB); + } + break; + } + else + { + p_PrevB = p_CurrB; + p_CurrB = p_CurrB->p_Next; + } + } + + /* If no free block found to be updated, insert a new free block + * to the end of the free list. + */ + if ( !p_CurrB && ((((uint64_t)(end-base)) & ((uint64_t)(alignment-1))) == 0) ) + { + if ((p_NewB = CreateFreeBlock(alignBase, end-base)) == NULL) + RETURN_ERROR(MAJOR, E_NO_MEMORY, NO_MSG); + + if (p_PrevB) + p_PrevB->p_Next = p_NewB; + else + p_MM->freeBlocks[i] = p_NewB; + } + + /* Update boundaries of the new free block */ + if ((alignment == 1) && !p_NewB) + { + if ( p_CurrB && base > p_CurrB->base ) + base = p_CurrB->base; + if ( p_CurrB && end < p_CurrB->end ) + end = p_CurrB->end; + } + } + + return (E_OK); +} + +/**************************************************************** + * Routine: CutFree + * + * Description: + * Cuts a free block from holdBase to holdEnd from the free lists. + * That is, it updates all free lists of the MM object do + * not include a block of memory from holdBase to holdEnd. + * For each free lists it seek for a free block that holds + * either holdBase or holdEnd. If such block is found it updates it. + * + * Arguments: + * p_MM - pointer to the MM object + * holdBase - base address of the allocated block + * holdEnd - end address of the allocated block + * + * Return value: + * E_OK is returned on success, + * otherwise returns an error code. + * + ****************************************************************/ +static t_Error CutFree(t_MM *p_MM, uint64_t holdBase, uint64_t holdEnd) +{ + t_FreeBlock *p_PrevB, *p_CurrB, *p_NewB; + uint64_t alignBase, base, end; + uint64_t alignment; + int i; + + for (i=0; i <= MM_MAX_ALIGNMENT; i++) + { + p_PrevB = p_NewB = 0; + p_CurrB = p_MM->freeBlocks[i]; + + alignment = (uint64_t)(0x1 << i); + alignBase = MAKE_ALIGNED(holdEnd, alignment); + + while ( p_CurrB ) + { + base = p_CurrB->base; + end = p_CurrB->end; + + if ( (holdBase <= base) && (holdEnd <= end) && (holdEnd > base) ) + { + if ( alignBase >= end || + (alignBase < end && ((end-alignBase) < alignment)) ) + { + if (p_PrevB) + p_PrevB->p_Next = p_CurrB->p_Next; + else + p_MM->freeBlocks[i] = p_CurrB->p_Next; + XX_Free(p_CurrB); + } + else + { + p_CurrB->base = alignBase; + } + break; + } + else if ( (holdBase > base) && (holdEnd <= end) ) + { + if ( (holdBase-base) >= alignment ) + { + if ( (alignBase < end) && ((end-alignBase) >= alignment) ) + { + if ((p_NewB = CreateFreeBlock(alignBase, end-alignBase)) == NULL) + RETURN_ERROR(MAJOR, E_NO_MEMORY, NO_MSG); + p_NewB->p_Next = p_CurrB->p_Next; + p_CurrB->p_Next = p_NewB; + } + p_CurrB->end = holdBase; + } + else if ( (alignBase < end) && ((end-alignBase) >= alignment) ) + { + p_CurrB->base = alignBase; + } + else + { + if (p_PrevB) + p_PrevB->p_Next = p_CurrB->p_Next; + else + p_MM->freeBlocks[i] = p_CurrB->p_Next; + XX_Free(p_CurrB); + } + break; + } + else + { + p_PrevB = p_CurrB; + p_CurrB = p_CurrB->p_Next; + } + } + } + + return (E_OK); +} + +/**************************************************************** + * Routine: AddBusy + * + * Description: + * Adds a new busy block to the list of busy blocks. Note, + * that all busy blocks are ordered by their base address in + * the busy list. + * + * Arguments: + * MM - handler to the MM object + * p_NewBusyB - pointer to the a busy block + * + * Return value: + * None. + * + ****************************************************************/ +static void AddBusy(t_MM *p_MM, t_BusyBlock *p_NewBusyB) +{ + t_BusyBlock *p_CurrBusyB, *p_PrevBusyB; + + /* finds a place of a new busy block in the list of busy blocks */ + p_PrevBusyB = 0; + p_CurrBusyB = p_MM->busyBlocks; + + while ( p_CurrBusyB && p_NewBusyB->base > p_CurrBusyB->base ) + { + p_PrevBusyB = p_CurrBusyB; + p_CurrBusyB = p_CurrBusyB->p_Next; + } + + /* insert the new busy block into the list of busy blocks */ + if ( p_CurrBusyB ) + p_NewBusyB->p_Next = p_CurrBusyB; + if ( p_PrevBusyB ) + p_PrevBusyB->p_Next = p_NewBusyB; + else + p_MM->busyBlocks = p_NewBusyB; +} + +/**************************************************************** + * Routine: CutBusy + * + * Description: + * Cuts a block from base to end from the list of busy blocks. + * This is done by updating the list of busy blocks do not + * include a given block, that block is going to be free. If a + * given block is a part of some other busy block, so that + * busy block is updated. If there are number of busy blocks + * included in the given block, so all that blocks are removed + * from the busy list and the end blocks are updated. + * If the given block devides some block into two parts, a new + * busy block is added to the busy list. + * + * Arguments: + * p_MM - pointer to the MM object + * base - base address of a given busy block + * end - end address of a given busy block + * + * Return value: + * E_OK on success, E_NOMEMORY otherwise. + * + ****************************************************************/ +static t_Error CutBusy(t_MM *p_MM, uint64_t base, uint64_t end) +{ + t_BusyBlock *p_CurrB, *p_PrevB, *p_NewB; + + p_CurrB = p_MM->busyBlocks; + p_PrevB = p_NewB = 0; + + while ( p_CurrB ) + { + if ( base < p_CurrB->end ) + { + if ( end > p_CurrB->end ) + { + t_BusyBlock *p_NextB; + while ( p_CurrB->p_Next && end >= p_CurrB->p_Next->end ) + { + p_NextB = p_CurrB->p_Next; + p_CurrB->p_Next = p_CurrB->p_Next->p_Next; + XX_Free(p_NextB); + } + + p_NextB = p_CurrB->p_Next; + if ( p_NextB && end > p_NextB->base ) + { + p_NextB->base = end; + } + } + + if ( base <= p_CurrB->base ) + { + if ( end < p_CurrB->end && end > p_CurrB->base ) + { + p_CurrB->base = end; + } + else if ( end >= p_CurrB->end ) + { + if ( p_PrevB ) + p_PrevB->p_Next = p_CurrB->p_Next; + else + p_MM->busyBlocks = p_CurrB->p_Next; + XX_Free(p_CurrB); + } + } + else + { + if ( end < p_CurrB->end && end > p_CurrB->base ) + { + if ((p_NewB = CreateBusyBlock(end, + p_CurrB->end-end, + p_CurrB->name)) == NULL) + RETURN_ERROR(MAJOR, E_NO_MEMORY, NO_MSG); + p_NewB->p_Next = p_CurrB->p_Next; + p_CurrB->p_Next = p_NewB; + } + p_CurrB->end = base; + } + break; + } + else + { + p_PrevB = p_CurrB; + p_CurrB = p_CurrB->p_Next; + } + } + + return (E_OK); +} + +/**************************************************************** + * Routine: MmGetGreaterAlignment + * + * Description: + * Allocates a block of memory according to the given size + * and the alignment. That routine is called from the MM_Get + * routine if the required alignment is greater then MM_MAX_ALIGNMENT. + * In that case, it goes over free blocks of 64 byte align list + * and checks if it has the required size of bytes of the required + * alignment. If no blocks found returns ILLEGAL_BASE. + * After the block is found and data is allocated, it calls + * the internal CutFree routine to update all free lists + * do not include a just allocated block. Of course, each + * free list contains a free blocks with the same alignment. + * It is also creates a busy block that holds + * information about an allocated block. + * + * Arguments: + * MM - handle to the MM object + * size - size of the MM + * alignment - index as a power of two defines + * a required alignment that is greater then 64. + * name - the name that specifies an allocated block. + * + * Return value: + * base address of an allocated block. + * ILLEGAL_BASE if can't allocate a block + * + ****************************************************************/ +static uint64_t MmGetGreaterAlignment(t_MM *p_MM, uint64_t size, uint64_t alignment, char* name) +{ + t_FreeBlock *p_FreeB; + t_BusyBlock *p_NewBusyB; + uint64_t holdBase, holdEnd, alignBase = 0; + + /* goes over free blocks of the 64 byte alignment list + and look for a block of the suitable size and + base address according to the alignment. */ + p_FreeB = p_MM->freeBlocks[MM_MAX_ALIGNMENT]; + + while ( p_FreeB ) + { + alignBase = MAKE_ALIGNED(p_FreeB->base, alignment); + + /* the block is found if the aligned base inside the block + * and has the anough size. */ + if ( alignBase >= p_FreeB->base && + alignBase < p_FreeB->end && + size <= (p_FreeB->end - alignBase) ) + break; + else + p_FreeB = p_FreeB->p_Next; + } + + /* If such block isn't found */ + if ( !p_FreeB ) + return (uint64_t)(ILLEGAL_BASE); + + holdBase = alignBase; + holdEnd = alignBase + size; + + /* init a new busy block */ + if ((p_NewBusyB = CreateBusyBlock(holdBase, size, name)) == NULL) + return (uint64_t)(ILLEGAL_BASE); + + /* calls Update routine to update a lists of free blocks */ + if ( CutFree ( p_MM, holdBase, holdEnd ) != E_OK ) + return (uint64_t)(ILLEGAL_BASE); + + /* insert the new busy block into the list of busy blocks */ + AddBusy ( p_MM, p_NewBusyB ); + + return (holdBase); +} + + +/********************************************************************** + * MM API routines set * + **********************************************************************/ + +/*****************************************************************************/ +t_Error MM_Init(t_Handle *h_MM, uint64_t base, uint64_t size) +{ + t_MM *p_MM; + uint64_t newBase, newSize; + int i; + + if (!size) + { + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Size (should be positive)")); + } + + /* Initializes a new MM object */ + p_MM = (t_MM *)XX_Malloc(sizeof(t_MM)); + if (!p_MM) + { + RETURN_ERROR(MAJOR, E_NO_MEMORY, NO_MSG); + } + + p_MM->h_Spinlock = XX_InitSpinlock(); + if (!p_MM->h_Spinlock) + { + XX_Free(p_MM); + RETURN_ERROR(MAJOR, E_NO_MEMORY, ("MM spinlock!")); + } + + /* initializes a new memory block */ + if ((p_MM->memBlocks = CreateNewBlock(base, size)) == NULL) + RETURN_ERROR(MAJOR, E_NO_MEMORY, NO_MSG); + + /* A busy list is empty */ + p_MM->busyBlocks = 0; + + /*Initializes a new free block for each free list*/ + for (i=0; i <= MM_MAX_ALIGNMENT; i++) + { + newBase = MAKE_ALIGNED( base, (0x1 << i) ); + newSize = size - (newBase - base); + + if ((p_MM->freeBlocks[i] = CreateFreeBlock(newBase, newSize)) == NULL) + RETURN_ERROR(MAJOR, E_NO_MEMORY, NO_MSG); + } + + *h_MM = p_MM; + + return (E_OK); +} + +/*****************************************************************************/ +void MM_Free(t_Handle h_MM) +{ + t_MM *p_MM = (t_MM *)h_MM; + t_MemBlock *p_MemBlock; + t_BusyBlock *p_BusyBlock; + t_FreeBlock *p_FreeBlock; + void *p_Block; + int i; + + ASSERT_COND(p_MM); + + /* release memory allocated for busy blocks */ + p_BusyBlock = p_MM->busyBlocks; + while ( p_BusyBlock ) + { + p_Block = p_BusyBlock; + p_BusyBlock = p_BusyBlock->p_Next; + XX_Free(p_Block); + } + + /* release memory allocated for free blocks */ + for (i=0; i <= MM_MAX_ALIGNMENT; i++) + { + p_FreeBlock = p_MM->freeBlocks[i]; + while ( p_FreeBlock ) + { + p_Block = p_FreeBlock; + p_FreeBlock = p_FreeBlock->p_Next; + XX_Free(p_Block); + } + } + + /* release memory allocated for memory blocks */ + p_MemBlock = p_MM->memBlocks; + while ( p_MemBlock ) + { + p_Block = p_MemBlock; + p_MemBlock = p_MemBlock->p_Next; + XX_Free(p_Block); + } + + if (p_MM->h_Spinlock) + XX_FreeSpinlock(p_MM->h_Spinlock); + + /* release memory allocated for MM object itself */ + XX_Free(p_MM); +} + +/*****************************************************************************/ +uint64_t MM_Get(t_Handle h_MM, uint64_t size, uint64_t alignment, char* name) +{ + t_MM *p_MM = (t_MM *)h_MM; + t_FreeBlock *p_FreeB; + t_BusyBlock *p_NewBusyB; + uint64_t holdBase, holdEnd, j, i = 0; + uint32_t intFlags; + + SANITY_CHECK_RETURN_VALUE(p_MM, E_INVALID_HANDLE, (uint64_t)ILLEGAL_BASE); + + /* checks that alignment value is greater then zero */ + if (alignment == 0) + { + alignment = 1; + } + + j = alignment; + + /* checks if alignment is a power of two, if it correct and if the + required size is multiple of the given alignment. */ + while ((j & 0x1) == 0) + { + i++; + j = j >> 1; + } + + /* if the given alignment isn't power of two, returns an error */ + if (j != 1) + { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("alignment (should be power of 2)")); + return (uint64_t)ILLEGAL_BASE; + } + + if (i > MM_MAX_ALIGNMENT) + { + return (MmGetGreaterAlignment(p_MM, size, alignment, name)); + } + + intFlags = XX_LockIntrSpinlock(p_MM->h_Spinlock); + /* look for a block of the size greater or equal to the required size. */ + p_FreeB = p_MM->freeBlocks[i]; + while ( p_FreeB && (p_FreeB->end - p_FreeB->base) < size ) + p_FreeB = p_FreeB->p_Next; + + /* If such block is found */ + if ( !p_FreeB ) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + return (uint64_t)(ILLEGAL_BASE); + } + + holdBase = p_FreeB->base; + holdEnd = holdBase + size; + + /* init a new busy block */ + if ((p_NewBusyB = CreateBusyBlock(holdBase, size, name)) == NULL) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + return (uint64_t)(ILLEGAL_BASE); + } + + /* calls Update routine to update a lists of free blocks */ + if ( CutFree ( p_MM, holdBase, holdEnd ) != E_OK ) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + return (uint64_t)(ILLEGAL_BASE); + } + + /* insert the new busy block into the list of busy blocks */ + AddBusy ( p_MM, p_NewBusyB ); + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + + return (holdBase); +} + +/*****************************************************************************/ +uint64_t MM_GetForce(t_Handle h_MM, uint64_t base, uint64_t size, char* name) +{ + t_MM *p_MM = (t_MM *)h_MM; + t_FreeBlock *p_FreeB; + t_BusyBlock *p_NewBusyB; + uint32_t intFlags; + bool blockIsFree = FALSE; + + ASSERT_COND(p_MM); + + intFlags = XX_LockIntrSpinlock(p_MM->h_Spinlock); + p_FreeB = p_MM->freeBlocks[0]; /* The biggest free blocks are in the + free list with alignment 1 */ + + while ( p_FreeB ) + { + if ( base >= p_FreeB->base && (base+size) <= p_FreeB->end ) + { + blockIsFree = TRUE; + break; + } + else + p_FreeB = p_FreeB->p_Next; + } + + if ( !blockIsFree ) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + return (uint64_t)(ILLEGAL_BASE); + } + + /* init a new busy block */ + if ((p_NewBusyB = CreateBusyBlock(base, size, name)) == NULL) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + return (uint64_t)(ILLEGAL_BASE); + } + + /* calls Update routine to update a lists of free blocks */ + if ( CutFree ( p_MM, base, base+size ) != E_OK ) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + return (uint64_t)(ILLEGAL_BASE); + } + + /* insert the new busy block into the list of busy blocks */ + AddBusy ( p_MM, p_NewBusyB ); + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + + return (base); +} + +/*****************************************************************************/ +uint64_t MM_GetForceMin(t_Handle h_MM, uint64_t size, uint64_t alignment, uint64_t min, char* name) +{ + t_MM *p_MM = (t_MM *)h_MM; + t_FreeBlock *p_FreeB; + t_BusyBlock *p_NewBusyB; + uint64_t holdBase, holdEnd, j = alignment, i=0; + uint32_t intFlags; + + ASSERT_COND(p_MM); + + /* checks if alignment is a power of two, if it correct and if the + required size is multiple of the given alignment. */ + while ((j & 0x1) == 0) + { + i++; + j = j >> 1; + } + + if ( (j != 1) || (i > MM_MAX_ALIGNMENT) ) + { + return (uint64_t)(ILLEGAL_BASE); + } + + intFlags = XX_LockIntrSpinlock(p_MM->h_Spinlock); + p_FreeB = p_MM->freeBlocks[i]; + + /* look for the first block that contains the minimum + base address. If the whole required size may be fit + into it, use that block, otherwise look for the next + block of size greater or equal to the required size. */ + while ( p_FreeB && (min >= p_FreeB->end)) + p_FreeB = p_FreeB->p_Next; + + /* If such block is found */ + if ( !p_FreeB ) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + return (uint64_t)(ILLEGAL_BASE); + } + + /* if this block is large enough, use this block */ + holdBase = ( min <= p_FreeB->base ) ? p_FreeB->base : min; + if ((holdBase + size) <= p_FreeB->end ) + { + holdEnd = holdBase + size; + } + else + { + p_FreeB = p_FreeB->p_Next; + while ( p_FreeB && ((p_FreeB->end - p_FreeB->base) < size) ) + p_FreeB = p_FreeB->p_Next; + + /* If such block is found */ + if ( !p_FreeB ) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + return (uint64_t)(ILLEGAL_BASE); + } + + holdBase = p_FreeB->base; + holdEnd = holdBase + size; + } + + /* init a new busy block */ + if ((p_NewBusyB = CreateBusyBlock(holdBase, size, name)) == NULL) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + return (uint64_t)(ILLEGAL_BASE); + } + + /* calls Update routine to update a lists of free blocks */ + if ( CutFree( p_MM, holdBase, holdEnd ) != E_OK ) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + return (uint64_t)(ILLEGAL_BASE); + } + + /* insert the new busy block into the list of busy blocks */ + AddBusy( p_MM, p_NewBusyB ); + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + + return (holdBase); +} + +/*****************************************************************************/ +uint64_t MM_Put(t_Handle h_MM, uint64_t base) +{ + t_MM *p_MM = (t_MM *)h_MM; + t_BusyBlock *p_BusyB, *p_PrevBusyB; + uint64_t size; + uint32_t intFlags; + + ASSERT_COND(p_MM); + + /* Look for a busy block that have the given base value. + * That block will be returned back to the memory. + */ + p_PrevBusyB = 0; + + intFlags = XX_LockIntrSpinlock(p_MM->h_Spinlock); + p_BusyB = p_MM->busyBlocks; + while ( p_BusyB && base != p_BusyB->base ) + { + p_PrevBusyB = p_BusyB; + p_BusyB = p_BusyB->p_Next; + } + + if ( !p_BusyB ) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + return (uint64_t)(0); + } + + if ( AddFree( p_MM, p_BusyB->base, p_BusyB->end ) != E_OK ) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + return (uint64_t)(0); + } + + /* removes a busy block form the list of busy blocks */ + if ( p_PrevBusyB ) + p_PrevBusyB->p_Next = p_BusyB->p_Next; + else + p_MM->busyBlocks = p_BusyB->p_Next; + + size = p_BusyB->end - p_BusyB->base; + + XX_Free(p_BusyB); + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + + return (size); +} + +/*****************************************************************************/ +uint64_t MM_PutForce(t_Handle h_MM, uint64_t base, uint64_t size) +{ + t_MM *p_MM = (t_MM *)h_MM; + uint64_t end = base + size; + uint32_t intFlags; + + ASSERT_COND(p_MM); + + intFlags = XX_LockIntrSpinlock(p_MM->h_Spinlock); + if ( CutBusy( p_MM, base, end ) != E_OK ) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + return (uint64_t)(0); + } + + if ( AddFree ( p_MM, base, end ) != E_OK ) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + return (uint64_t)(0); + } + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + + return (size); +} + +/*****************************************************************************/ +t_Error MM_Add(t_Handle h_MM, uint64_t base, uint64_t size) +{ + t_MM *p_MM = (t_MM *)h_MM; + t_MemBlock *p_MemB, *p_NewMemB; + t_Error errCode; + uint32_t intFlags; + + ASSERT_COND(p_MM); + + /* find a last block in the list of memory blocks to insert a new + * memory block + */ + intFlags = XX_LockIntrSpinlock(p_MM->h_Spinlock); + p_MemB = p_MM->memBlocks; + while ( p_MemB->p_Next ) + { + if ( base >= p_MemB->base && base < p_MemB->end ) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + RETURN_ERROR(MAJOR, E_ALREADY_EXISTS, NO_MSG); + } + p_MemB = p_MemB->p_Next; + } + /* check for a last memory block */ + if ( base >= p_MemB->base && base < p_MemB->end ) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + RETURN_ERROR(MAJOR, E_ALREADY_EXISTS, NO_MSG); + } + + /* create a new memory block */ + if ((p_NewMemB = CreateNewBlock(base, size)) == NULL) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + RETURN_ERROR(MAJOR, E_NO_MEMORY, NO_MSG); + } + + /* append a new memory block to the end of the list of memory blocks */ + p_MemB->p_Next = p_NewMemB; + + /* add a new free block to the free lists */ + errCode = AddFree(p_MM, base, base+size); + if (errCode) + { + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + p_MemB->p_Next = 0; + XX_Free(p_NewMemB); + return ((t_Error)errCode); + } + XX_UnlockIntrSpinlock(p_MM->h_Spinlock, intFlags); + + return (E_OK); +} + +/*****************************************************************************/ +uint64_t MM_GetMemBlock(t_Handle h_MM, int index) +{ + t_MM *p_MM = (t_MM*)h_MM; + t_MemBlock *p_MemBlock; + int i; + + ASSERT_COND(p_MM); + + p_MemBlock = p_MM->memBlocks; + for (i=0; i < index; i++) + p_MemBlock = p_MemBlock->p_Next; + + if ( p_MemBlock ) + return (p_MemBlock->base); + else + return (uint64_t)ILLEGAL_BASE; +} + +/*****************************************************************************/ +uint64_t MM_GetBase(t_Handle h_MM) +{ + t_MM *p_MM = (t_MM*)h_MM; + t_MemBlock *p_MemBlock; + + ASSERT_COND(p_MM); + + p_MemBlock = p_MM->memBlocks; + return p_MemBlock->base; +} + +/*****************************************************************************/ +bool MM_InRange(t_Handle h_MM, uint64_t addr) +{ + t_MM *p_MM = (t_MM*)h_MM; + t_MemBlock *p_MemBlock; + + ASSERT_COND(p_MM); + + p_MemBlock = p_MM->memBlocks; + + if ((addr >= p_MemBlock->base) && (addr < p_MemBlock->end)) + return TRUE; + else + return FALSE; +} + +/*****************************************************************************/ +void MM_Dump(t_Handle h_MM, void *buff) +{ + t_MM *p_MM = (t_MM *)h_MM; + t_FreeBlock *p_FreeB; + t_BusyBlock *p_BusyB; + int i; + + p_BusyB = p_MM->busyBlocks; + Sprint(buff, "List of busy blocks:\n"); + while (p_BusyB) + { + Sprint(buff, "\t0x%p: (%s: b=0x%lx, e=0x%lx)\n", + p_BusyB, p_BusyB->name, p_BusyB->base, p_BusyB->end ); + p_BusyB = p_BusyB->p_Next; + } + + Sprint(buff, "\nLists of free blocks according to alignment:\n"); + for (i=0; i <= MM_MAX_ALIGNMENT; i++) + { + Sprint(buff, "%d alignment:\n", (0x1 << i)); + p_FreeB = p_MM->freeBlocks[i]; + while (p_FreeB) + { + Sprint(buff, "\t0x%p: (b=0x%lx, e=0x%lx)\n", + p_FreeB, p_FreeB->base, p_FreeB->end); + p_FreeB = p_FreeB->p_Next; + } + Sprint(buff, "\n"); + } +} --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/etc/mm.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/etc/mm.h @@ -0,0 +1,101 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************** + * + * File: mm.h + * + * + * Description: + * MM (Memory Management) object definitions. + * It also includes definitions of the Free Block, Busy Block + * and Memory Block structures used by the MM object. + * + ****************************************************************/ + +#ifndef __MM_H +#define __MM_H + + +#include "mm_ext.h" + +#define __ERR_MODULE__ MODULE_MM + + +#define MAKE_ALIGNED(addr, align) \ + (((uint64_t)(addr) + ((align) - 1)) & (~(((uint64_t)align) - 1))) + + +/* t_MemBlock data stucutre defines parameters of the Memory Block */ +typedef struct t_MemBlock +{ + struct t_MemBlock *p_Next; /* Pointer to the next memory block */ + + uint64_t base; /* Base address of the memory block */ + uint64_t end; /* End address of the memory block */ +} t_MemBlock; + + +/* t_FreeBlock data stucutre defines parameters of the Free Block */ +typedef struct t_FreeBlock +{ + struct t_FreeBlock *p_Next; /* Pointer to the next free block */ + + uint64_t base; /* Base address of the block */ + uint64_t end; /* End address of the block */ +} t_FreeBlock; + + +/* t_BusyBlock data stucutre defines parameters of the Busy Block */ +typedef struct t_BusyBlock +{ + struct t_BusyBlock *p_Next; /* Pointer to the next free block */ + + uint64_t base; /* Base address of the block */ + uint64_t end; /* End address of the block */ + char name[MM_MAX_NAME_LEN]; /* That block of memory was allocated for + something specified by the Name */ +} t_BusyBlock; + + +/* t_MM data structure defines parameters of the MM object */ +typedef struct t_MM +{ + t_MemBlock *memBlocks; /* List of memory blocks (Memory list) */ + t_BusyBlock *busyBlocks; /* List of busy blocks (Busy list) */ + t_FreeBlock *freeBlocks[MM_MAX_ALIGNMENT + 1]; + /* Alignment lists of free blocks (Free lists) */ + t_Handle h_Spinlock; +} t_MM; + + +#endif /* __MM_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/etc/sprint.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/etc/sprint.c @@ -0,0 +1,81 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/*------------------------------------------------------*/ +/* File: sprint.c */ +/* */ +/* Description: */ +/* Debug routines (externals) */ +/*------------------------------------------------------*/ +#include "string_ext.h" +#include "stdlib_ext.h" +#include "ctype_ext.h" +#include "stdarg_ext.h" +#include "sprint_ext.h" +#include "std_ext.h" +#include "xx_ext.h" + + +int Sprint(char * buf, const char *fmt, ...) +{ + va_list args; + int i; + + va_start(args, fmt); + i=vsprintf(buf,fmt,args); + va_end(args); + return i; +} + +int Snprint(char * buf, uint32_t size, const char *fmt, ...) +{ + va_list args; + int i; + + va_start(args, fmt); + i=vsnprintf(buf,size,fmt,args); + va_end(args); + return i; +} + +#ifndef NCSW_VXWORKS +int Sscan(const char * buf, const char * fmt, ...) +{ + va_list args; + int i; + + va_start(args,fmt); + i = vsscanf(buf,fmt,args); + va_end(args); + return i; +} +#endif /* NCSW_VXWORKS */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/Peripherals/crc_mac_addr_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/Peripherals/crc_mac_addr_ext.h @@ -0,0 +1,363 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/*------------------------------------------------------*/ +/* */ +/* File: crc_mac_addr_ext.h */ +/* */ +/* Description: */ +/* Define a macro that calculate the crc value of */ +/* an Ethernet MAC address (48 bitd address */ +/*------------------------------------------------------*/ + +#ifndef __crc_mac_addr_ext_h +#define __crc_mac_addr_ext_h + +#include "std_ext.h" + + +static uint32_t crc_table[256] = +{ + 0x00000000, + 0x77073096, + 0xee0e612c, + 0x990951ba, + 0x076dc419, + 0x706af48f, + 0xe963a535, + 0x9e6495a3, + 0x0edb8832, + 0x79dcb8a4, + 0xe0d5e91e, + 0x97d2d988, + 0x09b64c2b, + 0x7eb17cbd, + 0xe7b82d07, + 0x90bf1d91, + 0x1db71064, + 0x6ab020f2, + 0xf3b97148, + 0x84be41de, + 0x1adad47d, + 0x6ddde4eb, + 0xf4d4b551, + 0x83d385c7, + 0x136c9856, + 0x646ba8c0, + 0xfd62f97a, + 0x8a65c9ec, + 0x14015c4f, + 0x63066cd9, + 0xfa0f3d63, + 0x8d080df5, + 0x3b6e20c8, + 0x4c69105e, + 0xd56041e4, + 0xa2677172, + 0x3c03e4d1, + 0x4b04d447, + 0xd20d85fd, + 0xa50ab56b, + 0x35b5a8fa, + 0x42b2986c, + 0xdbbbc9d6, + 0xacbcf940, + 0x32d86ce3, + 0x45df5c75, + 0xdcd60dcf, + 0xabd13d59, + 0x26d930ac, + 0x51de003a, + 0xc8d75180, + 0xbfd06116, + 0x21b4f4b5, + 0x56b3c423, + 0xcfba9599, + 0xb8bda50f, + 0x2802b89e, + 0x5f058808, + 0xc60cd9b2, + 0xb10be924, + 0x2f6f7c87, + 0x58684c11, + 0xc1611dab, + 0xb6662d3d, + 0x76dc4190, + 0x01db7106, + 0x98d220bc, + 0xefd5102a, + 0x71b18589, + 0x06b6b51f, + 0x9fbfe4a5, + 0xe8b8d433, + 0x7807c9a2, + 0x0f00f934, + 0x9609a88e, + 0xe10e9818, + 0x7f6a0dbb, + 0x086d3d2d, + 0x91646c97, + 0xe6635c01, + 0x6b6b51f4, + 0x1c6c6162, + 0x856530d8, + 0xf262004e, + 0x6c0695ed, + 0x1b01a57b, + 0x8208f4c1, + 0xf50fc457, + 0x65b0d9c6, + 0x12b7e950, + 0x8bbeb8ea, + 0xfcb9887c, + 0x62dd1ddf, + 0x15da2d49, + 0x8cd37cf3, + 0xfbd44c65, + 0x4db26158, + 0x3ab551ce, + 0xa3bc0074, + 0xd4bb30e2, + 0x4adfa541, + 0x3dd895d7, + 0xa4d1c46d, + 0xd3d6f4fb, + 0x4369e96a, + 0x346ed9fc, + 0xad678846, + 0xda60b8d0, + 0x44042d73, + 0x33031de5, + 0xaa0a4c5f, + 0xdd0d7cc9, + 0x5005713c, + 0x270241aa, + 0xbe0b1010, + 0xc90c2086, + 0x5768b525, + 0x206f85b3, + 0xb966d409, + 0xce61e49f, + 0x5edef90e, + 0x29d9c998, + 0xb0d09822, + 0xc7d7a8b4, + 0x59b33d17, + 0x2eb40d81, + 0xb7bd5c3b, + 0xc0ba6cad, + 0xedb88320, + 0x9abfb3b6, + 0x03b6e20c, + 0x74b1d29a, + 0xead54739, + 0x9dd277af, + 0x04db2615, + 0x73dc1683, + 0xe3630b12, + 0x94643b84, + 0x0d6d6a3e, + 0x7a6a5aa8, + 0xe40ecf0b, + 0x9309ff9d, + 0x0a00ae27, + 0x7d079eb1, + 0xf00f9344, + 0x8708a3d2, + 0x1e01f268, + 0x6906c2fe, + 0xf762575d, + 0x806567cb, + 0x196c3671, + 0x6e6b06e7, + 0xfed41b76, + 0x89d32be0, + 0x10da7a5a, + 0x67dd4acc, + 0xf9b9df6f, + 0x8ebeeff9, + 0x17b7be43, + 0x60b08ed5, + 0xd6d6a3e8, + 0xa1d1937e, + 0x38d8c2c4, + 0x4fdff252, + 0xd1bb67f1, + 0xa6bc5767, + 0x3fb506dd, + 0x48b2364b, + 0xd80d2bda, + 0xaf0a1b4c, + 0x36034af6, + 0x41047a60, + 0xdf60efc3, + 0xa867df55, + 0x316e8eef, + 0x4669be79, + 0xcb61b38c, + 0xbc66831a, + 0x256fd2a0, + 0x5268e236, + 0xcc0c7795, + 0xbb0b4703, + 0x220216b9, + 0x5505262f, + 0xc5ba3bbe, + 0xb2bd0b28, + 0x2bb45a92, + 0x5cb36a04, + 0xc2d7ffa7, + 0xb5d0cf31, + 0x2cd99e8b, + 0x5bdeae1d, + 0x9b64c2b0, + 0xec63f226, + 0x756aa39c, + 0x026d930a, + 0x9c0906a9, + 0xeb0e363f, + 0x72076785, + 0x05005713, + 0x95bf4a82, + 0xe2b87a14, + 0x7bb12bae, + 0x0cb61b38, + 0x92d28e9b, + 0xe5d5be0d, + 0x7cdcefb7, + 0x0bdbdf21, + 0x86d3d2d4, + 0xf1d4e242, + 0x68ddb3f8, + 0x1fda836e, + 0x81be16cd, + 0xf6b9265b, + 0x6fb077e1, + 0x18b74777, + 0x88085ae6, + 0xff0f6a70, + 0x66063bca, + 0x11010b5c, + 0x8f659eff, + 0xf862ae69, + 0x616bffd3, + 0x166ccf45, + 0xa00ae278, + 0xd70dd2ee, + 0x4e048354, + 0x3903b3c2, + 0xa7672661, + 0xd06016f7, + 0x4969474d, + 0x3e6e77db, + 0xaed16a4a, + 0xd9d65adc, + 0x40df0b66, + 0x37d83bf0, + 0xa9bcae53, + 0xdebb9ec5, + 0x47b2cf7f, + 0x30b5ffe9, + 0xbdbdf21c, + 0xcabac28a, + 0x53b39330, + 0x24b4a3a6, + 0xbad03605, + 0xcdd70693, + 0x54de5729, + 0x23d967bf, + 0xb3667a2e, + 0xc4614ab8, + 0x5d681b02, + 0x2a6f2b94, + 0xb40bbe37, + 0xc30c8ea1, + 0x5a05df1b, + 0x2d02ef8d +}; + + +#define GET_MAC_ADDR_CRC(addr, crc) \ +{ \ + uint32_t i; \ + uint8_t data; \ + \ + /* CRC calculation */ \ + crc = 0xffffffff; \ + for (i=0; i < 6; i++) \ + { \ + data = (uint8_t)(addr >> ((5-i)*8)); \ + crc = crc^data; \ + crc = crc_table[crc&0xff] ^ (crc>>8); \ + } \ +} \ + +/* Define a macro for getting the mirrored value of */ +/* a byte size number. (0x11010011 --> 0x11001011) */ +/* Sometimes the mirrored value of the CRC is required */ +static __inline__ uint8_t GetMirror(uint8_t n) +{ + uint8_t mirror[16] = + { + 0x00, + 0x08, + 0x04, + 0x0c, + 0x02, + 0x0a, + 0x06, + 0x0e, + 0x01, + 0x09, + 0x05, + 0x0d, + 0x03, + 0x0b, + 0x07, + 0x0f + }; + return ((uint8_t)(((mirror[n & 0x0f] << 4) | (mirror[n >> 4])))); +} + +static __inline__ uint32_t GetMirror32(uint32_t n) +{ + return (((uint32_t)GetMirror((uint8_t)(n))<<24) | + ((uint32_t)GetMirror((uint8_t)(n>>8))<<16) | + ((uint32_t)GetMirror((uint8_t)(n>>16))<<8) | + ((uint32_t)GetMirror((uint8_t)(n>>24)))); +} + +#define MIRROR GetMirror +#define MIRROR_32 GetMirror32 + + +#endif /* __crc_mac_addr_ext_h */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/Peripherals/dpaa_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/Peripherals/dpaa_ext.h @@ -0,0 +1,206 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File dpaa_ext.h + + @Description DPAA Application Programming Interface. +*//***************************************************************************/ +#ifndef __DPAA_EXT_H +#define __DPAA_EXT_H + +#include "std_ext.h" +#include "error_ext.h" + + +/**************************************************************************//** + @Group DPAA_grp Data Path Acceleration Architecture API + + @Description DPAA API functions, definitions and enums. + + @{ +*//***************************************************************************/ + +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(push,1) +#endif /* defined(__MWERKS__) && ... */ +#define MEM_MAP_START + +/**************************************************************************//** + @Description Frame descriptor +*//***************************************************************************/ +typedef _Packed struct t_DpaaFD { + volatile uint32_t id; /**< FD id */ + volatile uint32_t addrl; /**< Data Address */ + volatile uint32_t length; /**< Frame length */ + volatile uint32_t status; /**< FD status */ +} _PackedType t_DpaaFD; + +/**************************************************************************//** + @Description enum for defining frame format +*//***************************************************************************/ +typedef enum e_DpaaFDFormatType { + e_DPAA_FD_FORMAT_TYPE_SHORT_SBSF = 0x0, /**< Simple frame Single buffer; Offset and + small length (9b OFFSET, 20b LENGTH) */ + e_DPAA_FD_FORMAT_TYPE_LONG_SBSF = 0x2, /**< Simple frame, single buffer; big length + (29b LENGTH ,No OFFSET) */ + e_DPAA_FD_FORMAT_TYPE_SHORT_MBSF = 0x4, /**< Simple frame, Scatter Gather table; Offset + and small length (9b OFFSET, 20b LENGTH) */ + e_DPAA_FD_FORMAT_TYPE_LONG_MBSF = 0x6, /**< Simple frame, Scatter Gather table; + big length (29b LENGTH ,No OFFSET) */ + e_DPAA_FD_FORMAT_TYPE_COMPOUND = 0x1, /**< Compound Frame (29b CONGESTION-WEIGHT + No LENGTH or OFFSET) */ + e_DPAA_FD_FORMAT_TYPE_DUMMY +} e_DpaaFDFormatType; + +/**************************************************************************//** + @Collection Frame descriptor macros +*//***************************************************************************/ +#define DPAA_FD_DD_MASK 0xc0000000 /**< FD DD field mask */ +#define DPAA_FD_PID_MASK 0x3f000000 /**< FD PID field mask */ +#define DPAA_FD_ELIODN_MASK 0x0000f000 /**< FD ELIODN field mask */ +#define DPAA_FD_BPID_MASK 0x00ff0000 /**< FD BPID field mask */ +#define DPAA_FD_ADDRH_MASK 0x000000ff /**< FD ADDRH field mask */ +#define DPAA_FD_ADDRL_MASK 0xffffffff /**< FD ADDRL field mask */ +#define DPAA_FD_FORMAT_MASK 0xe0000000 /**< FD FORMAT field mask */ +#define DPAA_FD_OFFSET_MASK 0x1ff00000 /**< FD OFFSET field mask */ +#define DPAA_FD_LENGTH_MASK 0x000fffff /**< FD LENGTH field mask */ + +#define DPAA_FD_GET_DD(fd) ((((t_DpaaFD *)fd)->id & DPAA_FD_DD_MASK) >> (31-1)) /**< Macro to get FD DD field */ +#define DPAA_FD_GET_PID(fd) (((((t_DpaaFD *)fd)->id & DPAA_FD_PID_MASK) >> (31-7)) | \ + ((((t_DpaaFD *)fd)->id & DPAA_FD_ELIODN_MASK) >> (31-19-6))) /**< Macro to get FD PID field */ +#define DPAA_FD_GET_BPID(fd) ((((t_DpaaFD *)fd)->id & DPAA_FD_BPID_MASK) >> (31-15)) /**< Macro to get FD BPID field */ +#define DPAA_FD_GET_ADDRH(fd) (((t_DpaaFD *)fd)->id & DPAA_FD_ADDRH_MASK) /**< Macro to get FD ADDRH field */ +#define DPAA_FD_GET_ADDRL(fd) ((t_DpaaFD *)fd)->addrl /**< Macro to get FD ADDRL field */ +#define DPAA_FD_GET_PHYS_ADDR(fd) ((physAddress_t)(((uint64_t)DPAA_FD_GET_ADDRH(fd) << 32) | (uint64_t)DPAA_FD_GET_ADDRL(fd))) /**< Macro to get FD ADDR field */ +#define DPAA_FD_GET_FORMAT(fd) ((((t_DpaaFD *)fd)->length & DPAA_FD_FORMAT_MASK) >> (31-2)) /**< Macro to get FD FORMAT field */ +#define DPAA_FD_GET_OFFSET(fd) ((((t_DpaaFD *)fd)->length & DPAA_FD_OFFSET_MASK) >> (31-11)) /**< Macro to get FD OFFSET field */ +#define DPAA_FD_GET_LENGTH(fd) (((t_DpaaFD *)fd)->length & DPAA_FD_LENGTH_MASK) /**< Macro to get FD LENGTH field */ +#define DPAA_FD_GET_STATUS(fd) ((t_DpaaFD *)fd)->status /**< Macro to get FD STATUS field */ +#define DPAA_FD_GET_ADDR(fd) XX_PhysToVirt(DPAA_FD_GET_PHYS_ADDR(fd)) + +#define DPAA_FD_SET_DD(fd,val) (((t_DpaaFD *)fd)->id = ((((t_DpaaFD *)fd)->id & ~DPAA_FD_DD_MASK) | (((val) << (31-1)) & DPAA_FD_DD_MASK ))) /**< Macro to set FD DD field */ + /**< Macro to set FD PID field or LIODN offset*/ +#define DPAA_FD_SET_PID(fd,val) (((t_DpaaFD *)fd)->id = ((((t_DpaaFD *)fd)->id & ~(DPAA_FD_PID_MASK|DPAA_FD_ELIODN_MASK)) | ((((val) << (31-7)) & DPAA_FD_PID_MASK) | ((((val)>>6) << (31-19)) & DPAA_FD_ELIODN_MASK)))) +#define DPAA_FD_SET_BPID(fd,val) (((t_DpaaFD *)fd)->id = ((((t_DpaaFD *)fd)->id & ~DPAA_FD_BPID_MASK) | (((val) << (31-15)) & DPAA_FD_BPID_MASK))) /**< Macro to set FD BPID field */ +#define DPAA_FD_SET_ADDRH(fd,val) (((t_DpaaFD *)fd)->id = ((((t_DpaaFD *)fd)->id & ~DPAA_FD_ADDRH_MASK) | ((val) & DPAA_FD_ADDRH_MASK))) /**< Macro to set FD ADDRH field */ +#define DPAA_FD_SET_ADDRL(fd,val) ((t_DpaaFD *)fd)->addrl = (val) /**< Macro to set FD ADDRL field */ +#define DPAA_FD_SET_ADDR(fd,val) \ +do { \ + uint64_t physAddr = (uint64_t)(XX_VirtToPhys(val)); \ + DPAA_FD_SET_ADDRH(fd, ((uint32_t)(physAddr >> 32))); \ + DPAA_FD_SET_ADDRL(fd, (uint32_t)physAddr); \ +} while (0) /**< Macro to set FD ADDR field */ +#define DPAA_FD_SET_FORMAT(fd,val) (((t_DpaaFD *)fd)->length = ((((t_DpaaFD *)fd)->length & ~DPAA_FD_FORMAT_MASK) | (((val) << (31-2))& DPAA_FD_FORMAT_MASK))) /**< Macro to set FD FORMAT field */ +#define DPAA_FD_SET_OFFSET(fd,val) (((t_DpaaFD *)fd)->length = ((((t_DpaaFD *)fd)->length & ~DPAA_FD_OFFSET_MASK) | (((val) << (31-11))& DPAA_FD_OFFSET_MASK) )) /**< Macro to set FD OFFSET field */ +#define DPAA_FD_SET_LENGTH(fd,val) (((t_DpaaFD *)fd)->length = (((t_DpaaFD *)fd)->length & ~DPAA_FD_LENGTH_MASK) | ((val) & DPAA_FD_LENGTH_MASK)) /**< Macro to set FD LENGTH field */ +#define DPAA_FD_SET_STATUS(fd,val) ((t_DpaaFD *)fd)->status = (val) /**< Macro to set FD STATUS field */ +/* @} */ + +/**************************************************************************//** + @Description Frame Scatter/Gather Table Entry +*//***************************************************************************/ +typedef _Packed struct t_DpaaSGTE { + volatile uint32_t addrh; /**< Buffer Address high */ + volatile uint32_t addrl; /**< Buffer Address low */ + volatile uint32_t length; /**< Buffer length */ + volatile uint32_t offset; /**< SGTE offset */ +} _PackedType t_DpaaSGTE; + +#define DPAA_NUM_OF_SG_TABLE_ENTRY 16 + +/**************************************************************************//** + @Description Frame Scatter/Gather Table +*//***************************************************************************/ +typedef _Packed struct t_DpaaSGT { + t_DpaaSGTE tableEntry[DPAA_NUM_OF_SG_TABLE_ENTRY]; + /**< structure that hold the information about + a single S/G entry. */ +} _PackedType t_DpaaSGT; + +/**************************************************************************//** + @Description Compound Frame Table +*//***************************************************************************/ +typedef _Packed struct t_DpaaCompTbl { + t_DpaaSGTE outputBuffInfo; /**< structure that holds the information about + the compound-frame output buffer; + NOTE: this may point to a S/G table */ + t_DpaaSGTE inputBuffInfo; /**< structure that holds the information about + the compound-frame input buffer; + NOTE: this may point to a S/G table */ +} _PackedType t_DpaaCompTbl; + +/**************************************************************************//** + @Collection Frame Scatter/Gather Table Entry macros +*//***************************************************************************/ +#define DPAA_SGTE_ADDRH_MASK 0x000000ff /**< SGTE ADDRH field mask */ +#define DPAA_SGTE_ADDRL_MASK 0xffffffff /**< SGTE ADDRL field mask */ +#define DPAA_SGTE_E_MASK 0x80000000 /**< SGTE Extension field mask */ +#define DPAA_SGTE_F_MASK 0x40000000 /**< SGTE Final field mask */ +#define DPAA_SGTE_LENGTH_MASK 0x3fffffff /**< SGTE LENGTH field mask */ +#define DPAA_SGTE_BPID_MASK 0x00ff0000 /**< SGTE BPID field mask */ +#define DPAA_SGTE_OFFSET_MASK 0x00001fff /**< SGTE OFFSET field mask */ + +#define DPAA_SGTE_GET_ADDRH(sgte) (((t_DpaaSGTE *)sgte)->addrh & DPAA_SGTE_ADDRH_MASK) /**< Macro to get SGTE ADDRH field */ +#define DPAA_SGTE_GET_ADDRL(sgte) ((t_DpaaSGTE *)sgte)->addrl /**< Macro to get SGTE ADDRL field */ +#define DPAA_SGTE_GET_PHYS_ADDR(sgte) ((physAddress_t)(((uint64_t)DPAA_SGTE_GET_ADDRH(sgte) << 32) | (uint64_t)DPAA_SGTE_GET_ADDRL(sgte))) /**< Macro to get FD ADDR field */ +#define DPAA_SGTE_GET_EXTENSION(sgte) ((((t_DpaaSGTE *)sgte)->length & DPAA_SGTE_E_MASK) >> (31-0)) /**< Macro to get SGTE EXTENSION field */ +#define DPAA_SGTE_GET_FINAL(sgte) ((((t_DpaaSGTE *)sgte)->length & DPAA_SGTE_F_MASK) >> (31-1)) /**< Macro to get SGTE FINAL field */ +#define DPAA_SGTE_GET_LENGTH(sgte) (((t_DpaaSGTE *)sgte)->length & DPAA_SGTE_LENGTH_MASK) /**< Macro to get SGTE LENGTH field */ +#define DPAA_SGTE_GET_BPID(sgte) ((((t_DpaaSGTE *)sgte)->offset & DPAA_SGTE_BPID_MASK) >> (31-15)) /**< Macro to get SGTE BPID field */ +#define DPAA_SGTE_GET_OFFSET(sgte) (((t_DpaaSGTE *)sgte)->offset & DPAA_SGTE_OFFSET_MASK) /**< Macro to get SGTE OFFSET field */ +#define DPAA_SGTE_GET_ADDR(sgte) XX_PhysToVirt(DPAA_SGTE_GET_PHYS_ADDR(sgte)) + +#define DPAA_SGTE_SET_ADDRH(sgte,val) (((t_DpaaSGTE *)sgte)->addrh = ((((t_DpaaSGTE *)sgte)->addrh & ~DPAA_SGTE_ADDRH_MASK) | ((val) & DPAA_SGTE_ADDRH_MASK))) /**< Macro to set SGTE ADDRH field */ +#define DPAA_SGTE_SET_ADDRL(sgte,val) ((t_DpaaSGTE *)sgte)->addrl = (val) /**< Macro to set SGTE ADDRL field */ +#define DPAA_SGTE_SET_ADDR(sgte,val) \ +do { \ + uint64_t physAddr = (uint64_t)(XX_VirtToPhys(val)); \ + DPAA_SGTE_SET_ADDRH(sgte, ((uint32_t)(physAddr >> 32))); \ + DPAA_SGTE_SET_ADDRL(sgte, (uint32_t)physAddr); \ +} while (0) /**< Macro to set SGTE ADDR field */ +#define DPAA_SGTE_SET_EXTENSION(sgte,val) (((t_DpaaSGTE *)sgte)->length = ((((t_DpaaSGTE *)sgte)->length & ~DPAA_SGTE_E_MASK) | (((val) << (31-0))& DPAA_SGTE_E_MASK))) /**< Macro to set SGTE EXTENSION field */ +#define DPAA_SGTE_SET_FINAL(sgte,val) (((t_DpaaSGTE *)sgte)->length = ((((t_DpaaSGTE *)sgte)->length & ~DPAA_SGTE_F_MASK) | (((val) << (31-1))& DPAA_SGTE_F_MASK))) /**< Macro to set SGTE FINAL field */ +#define DPAA_SGTE_SET_LENGTH(sgte,val) (((t_DpaaSGTE *)sgte)->length = (((t_DpaaSGTE *)sgte)->length & ~DPAA_SGTE_LENGTH_MASK) | ((val) & DPAA_SGTE_LENGTH_MASK)) /**< Macro to set SGTE LENGTH field */ +#define DPAA_SGTE_SET_BPID(sgte,val) (((t_DpaaSGTE *)sgte)->offset = ((((t_DpaaSGTE *)sgte)->offset & ~DPAA_SGTE_BPID_MASK) | (((val) << (31-15))& DPAA_SGTE_BPID_MASK))) /**< Macro to set SGTE BPID field */ +#define DPAA_SGTE_SET_OFFSET(sgte,val) (((t_DpaaSGTE *)sgte)->offset = ((((t_DpaaSGTE *)sgte)->offset & ~DPAA_SGTE_OFFSET_MASK) | (((val) << (31-31))& DPAA_SGTE_OFFSET_MASK) )) /**< Macro to set SGTE OFFSET field */ +/* @} */ + +#define MEM_MAP_END +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(pop) +#endif /* defined(__MWERKS__) && ... */ + +/** @} */ /* end of DPAA_grp group */ + + +#endif /* __DPAA_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/Peripherals/fm_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/Peripherals/fm_ext.h @@ -0,0 +1,1347 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + @File fm_ext.h + + @Description FM Application Programming Interface. +*//***************************************************************************/ +#ifndef __FM_EXT +#define __FM_EXT + +#include "error_ext.h" +#include "std_ext.h" +#include "dpaa_ext.h" + + +/**************************************************************************//** + @Group FM_grp Frame Manager API + + @Description FM API functions, definitions and enums. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group FM_lib_grp FM library + + @Description FM API functions, definitions and enums + The FM module is the main driver module and is a mandatory module + for FM driver users. Before any further module initialization, + this module must be initialized. + The FM is a "singletone" module. It is responsible of the common + HW modules: FPM, DMA, common QMI, common BMI initializations and + run-time control routines. This module must be initialized always + when working with any of the FM modules. + NOTE - We assumes that the FML will be initialize only by core No. 0! + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description enum for defining port types +*//***************************************************************************/ +typedef enum e_FmPortType { + e_FM_PORT_TYPE_OH_OFFLINE_PARSING = 0, /**< Offline parsing port (id's: 0-6, share id's with + host command, so must have exclusive id) */ + e_FM_PORT_TYPE_OH_HOST_COMMAND, /**< Host command port (id's: 0-6, share id's with + offline parsing ports, so must have exclusive id) */ + e_FM_PORT_TYPE_RX, /**< 1G Rx port (id's: 0-3) */ + e_FM_PORT_TYPE_RX_10G, /**< 10G Rx port (id's: 0) */ + e_FM_PORT_TYPE_TX, /**< 1G Tx port (id's: 0-3) */ + e_FM_PORT_TYPE_TX_10G, /**< 10G Tx port (id's: 0) */ + e_FM_PORT_TYPE_DUMMY +} e_FmPortType; + +/**************************************************************************//** + @Collection General FM defines +*//***************************************************************************/ +#define FM_MAX_NUM_OF_PARTITIONS 64 /**< Maximum number of partitions */ +#define FM_PHYS_ADDRESS_SIZE 6 /**< FM Physical address size */ +/* @} */ + + +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(push,1) +#endif /* defined(__MWERKS__) && ... */ +#define MEM_MAP_START + +/**************************************************************************//** + @Description FM physical Address +*//***************************************************************************/ +typedef _Packed struct t_FmPhysAddr { + volatile uint8_t high; /**< High part of the physical address */ + volatile uint32_t low; /**< Low part of the physical address */ +} _PackedType t_FmPhysAddr; + +/**************************************************************************//** + @Description Parse results memory layout +*//***************************************************************************/ +typedef _Packed struct t_FmPrsResult { + volatile uint8_t lpid; /**< Logical port id */ + volatile uint8_t shimr; /**< Shim header result */ + volatile uint16_t l2r; /**< Layer 2 result */ + volatile uint16_t l3r; /**< Layer 3 result */ + volatile uint8_t l4r; /**< Layer 4 result */ + volatile uint8_t cplan; /**< Classification plan id */ + volatile uint16_t nxthdr; /**< Next Header */ + volatile uint16_t cksum; /**< Checksum */ + volatile uint32_t lcv; /**< LCV */ + volatile uint8_t shim_off[3]; /**< Shim offset */ + volatile uint8_t eth_off; /**< ETH offset */ + volatile uint8_t llc_snap_off; /**< LLC_SNAP offset */ + volatile uint8_t vlan_off[2]; /**< VLAN offset */ + volatile uint8_t etype_off; /**< ETYPE offset */ + volatile uint8_t pppoe_off; /**< PPP offset */ + volatile uint8_t mpls_off[2]; /**< MPLS offset */ + volatile uint8_t ip_off[2]; /**< IP offset */ + volatile uint8_t gre_off; /**< GRE offset */ + volatile uint8_t l4_off; /**< Layer 4 offset */ + volatile uint8_t nxthdr_off; /**< Parser end point */ +} _PackedType t_FmPrsResult; + +/**************************************************************************//** + @Collection FM Parser results +*//***************************************************************************/ +#define FM_PR_L2_VLAN_STACK 0x00000100 /**< Parse Result: VLAN stack */ +#define FM_PR_L2_ETHERNET 0x00008000 /**< Parse Result: Ethernet*/ +#define FM_PR_L2_VLAN 0x00004000 /**< Parse Result: VLAN */ +#define FM_PR_L2_LLC_SNAP 0x00002000 /**< Parse Result: LLC_SNAP */ +#define FM_PR_L2_MPLS 0x00001000 /**< Parse Result: MPLS */ +#define FM_PR_L2_PPPoE 0x00000800 /**< Parse Result: PPPoE */ +/* @} */ + +/**************************************************************************//** + @Collection FM Frame descriptor macros +*//***************************************************************************/ +#define FM_FD_CMD_FCO 0x80000000 /**< Frame queue Context Override */ +#define FM_FD_CMD_RPD 0x40000000 /**< Read Prepended Data */ +#define FM_FD_CMD_UPD 0x20000000 /**< Update Prepended Data */ +#define FM_FD_CMD_DTC 0x10000000 /**< Do L4 Checksum */ +#define FM_FD_CMD_DCL4C 0x10000000 /**< Didn't calculate L4 Checksum */ +#define FM_FD_CMD_CFQ 0x00ffffff /**< Confirmation Frame Queue */ + +#define FM_FD_TX_STATUS_ERR_MASK 0x07000000 /**< TX Error FD bits */ +#define FM_FD_RX_STATUS_ERR_MASK 0x070ee3f8 /**< RX Error FD bits */ +/* @} */ + +/**************************************************************************//** + @Description Context A +*//***************************************************************************/ +typedef _Packed struct t_FmContextA { + volatile uint32_t command; /**< ContextA Command */ + volatile uint8_t res0[4]; /**< ContextA Reserved bits */ +} _PackedType t_FmContextA; + +/**************************************************************************//** + @Description Context B +*//***************************************************************************/ +typedef uint32_t t_FmContextB; + +/**************************************************************************//** + @Collection Context A macros +*//***************************************************************************/ +#define FM_CONTEXTA_OVERRIDE_MASK 0x80000000 +#define FM_CONTEXTA_ICMD_MASK 0x40000000 +#define FM_CONTEXTA_A1_VALID_MASK 0x20000000 +#define FM_CONTEXTA_MACCMD_MASK 0x00ff0000 +#define FM_CONTEXTA_MACCMD_VALID_MASK 0x00800000 +#define FM_CONTEXTA_MACCMD_SECURED_MASK 0x00100000 +#define FM_CONTEXTA_MACCMD_SC_MASK 0x000f0000 +#define FM_CONTEXTA_A1_MASK 0x0000ffff + +#define FM_CONTEXTA_GET_OVERRIDE(contextA) ((((t_FmContextA *)contextA)->command & FM_CONTEXTA_OVERRIDE_MASK) >> (31-0)) +#define FM_CONTEXTA_GET_ICMD(contextA) ((((t_FmContextA *)contextA)->command & FM_CONTEXTA_ICMD_MASK) >> (31-1)) +#define FM_CONTEXTA_GET_A1_VALID(contextA) ((((t_FmContextA *)contextA)->command & FM_CONTEXTA_A1_VALID_MASK) >> (31-2)) +#define FM_CONTEXTA_GET_A1(contextA) ((((t_FmContextA *)contextA)->command & FM_CONTEXTA_A1_MASK) >> (31-31)) +#define FM_CONTEXTA_GET_MACCMD(contextA) ((((t_FmContextA *)contextA)->command & FM_CONTEXTA_MACCMD_MASK) >> (31-15)) +#define FM_CONTEXTA_GET_MACCMD_VALID(contextA) ((((t_FmContextA *)contextA)->command & FM_CONTEXTA_MACCMD_VALID_MASK) >> (31-8)) +#define FM_CONTEXTA_GET_MACCMD_SECURED(contextA) ((((t_FmContextA *)contextA)->command & FM_CONTEXTA_MACCMD_SECURED_MASK) >> (31-11)) +#define FM_CONTEXTA_GET_MACCMD_SECURE_CHANNEL(contextA) ((((t_FmContextA *)contextA)->command & FM_CONTEXTA_MACCMD_SC_MASK) >> (31-15)) + +#define FM_CONTEXTA_SET_OVERRIDE(contextA,val) (((t_FmContextA *)contextA)->command = (uint32_t)((((t_FmContextA *)contextA)->command & ~FM_CONTEXTA_OVERRIDE_MASK) | (((uint32_t)(val) << (31-0)) & FM_CONTEXTA_OVERRIDE_MASK) )) +#define FM_CONTEXTA_SET_ICMD(contextA,val) (((t_FmContextA *)contextA)->command = (uint32_t)((((t_FmContextA *)contextA)->command & ~FM_CONTEXTA_ICMD_MASK) | (((val) << (31-1)) & FM_CONTEXTA_ICMD_MASK) )) +#define FM_CONTEXTA_SET_A1_VALID(contextA,val) (((t_FmContextA *)contextA)->command = (uint32_t)((((t_FmContextA *)contextA)->command & ~FM_CONTEXTA_A1_VALID_MASK) | (((val) << (31-2)) & FM_CONTEXTA_A1_VALID_MASK) )) +#define FM_CONTEXTA_SET_A1(contextA,val) (((t_FmContextA *)contextA)->command = (uint32_t)((((t_FmContextA *)contextA)->command & ~FM_CONTEXTA_A1_MASK) | (((val) << (31-31)) & FM_CONTEXTA_A1_MASK) )) +#define FM_CONTEXTA_SET_MACCMD(contextA,val) (((t_FmContextA *)contextA)->command = (uint32_t)((((t_FmContextA *)contextA)->command & ~FM_CONTEXTA_MACCMD_MASK) | (((val) << (31-15)) & FM_CONTEXTA_MACCMD_MASK) )) +#define FM_CONTEXTA_SET_MACCMD_VALID(contextA,val) (((t_FmContextA *)contextA)->command = (uint32_t)((((t_FmContextA *)contextA)->command & ~FM_CONTEXTA_MACCMD_VALID_MASK) | (((val) << (31-8)) & FM_CONTEXTA_MACCMD_VALID_MASK) )) +#define FM_CONTEXTA_SET_MACCMD_SECURED(contextA,val) (((t_FmContextA *)contextA)->command = (uint32_t)((((t_FmContextA *)contextA)->command & ~FM_CONTEXTA_MACCMD_SECURED_MASK) | (((val) << (31-11)) & FM_CONTEXTA_MACCMD_SECURED_MASK) )) +#define FM_CONTEXTA_SET_MACCMD_SECURE_CHANNEL(contextA,val) (((t_FmContextA *)contextA)->command = (uint32_t)((((t_FmContextA *)contextA)->command & ~FM_CONTEXTA_MACCMD_SC_MASK) | (((val) << (31-15)) & FM_CONTEXTA_MACCMD_SC_MASK) )) +/* @} */ + +/**************************************************************************//** + @Collection Context B macros +*//***************************************************************************/ +#define FM_CONTEXTB_FQID_MASK 0x00ffffff + +#define FM_CONTEXTB_GET_FQID(contextB) (*((t_FmContextB *)contextB) & FM_CONTEXTB_FQID_MASK) +#define FM_CONTEXTB_SET_FQID(contextB,val) (*((t_FmContextB *)contextB) = ((*((t_FmContextB *)contextB) & ~FM_CONTEXTB_FQID_MASK) | ((val) & FM_CONTEXTB_FQID_MASK))) +/* @} */ + +#define MEM_MAP_END +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(pop) +#endif /* defined(__MWERKS__) && ... */ + + +/**************************************************************************//** + @Description FM Exceptions +*//***************************************************************************/ +typedef enum e_FmExceptions { + e_FM_EX_DMA_BUS_ERROR, /**< DMA bus error. */ + e_FM_EX_DMA_READ_ECC, /**< Read Buffer ECC error */ + e_FM_EX_DMA_SYSTEM_WRITE_ECC, /**< Write Buffer ECC error on system side */ + e_FM_EX_DMA_FM_WRITE_ECC, /**< Write Buffer ECC error on FM side */ + e_FM_EX_FPM_STALL_ON_TASKS, /**< Stall of tasks on FPM */ + e_FM_EX_FPM_SINGLE_ECC, /**< Single ECC on FPM. */ + e_FM_EX_FPM_DOUBLE_ECC, /**< Double ECC error on FPM ram access */ + e_FM_EX_QMI_SINGLE_ECC, /**< Single ECC on QMI. */ + e_FM_EX_QMI_DOUBLE_ECC, /**< Double bit ECC occurred on QMI */ + e_FM_EX_QMI_DEQ_FROM_UNKNOWN_PORTID,/**< Dequeu from unknown port id */ + e_FM_EX_BMI_LIST_RAM_ECC, /**< Linked List RAM ECC error */ + e_FM_EX_BMI_PIPELINE_ECC, /**< Pipeline Table ECC Error */ + e_FM_EX_BMI_STATISTICS_RAM_ECC, /**< Statistics Count RAM ECC Error Enable */ + e_FM_EX_BMI_DISPATCH_RAM_ECC, /**< Dispatch RAM ECC Error Enable */ + e_FM_EX_IRAM_ECC, /**< Double bit ECC occurred on IRAM*/ + e_FM_EX_MURAM_ECC /**< Double bit ECC occurred on MURAM*/ +} e_FmExceptions; + +/**************************************************************************//** + @Group FM_init_grp FM Initialization Unit + + @Description FM Initialization Unit + + Initialization Flow + Initialization of the FM Module will be carried out by the application + according to the following sequence: + a. Calling the configuration routine with basic parameters. + b. Calling the advance initialization routines to change driver's defaults. + c. Calling the initialization routine. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Function t_FmExceptionsCallback + + @Description Exceptions user callback routine, will be called upon an + exception passing the exception identification. + + @Param[in] h_App - User's application descriptor. + @Param[in] exception - The exception. +*//***************************************************************************/ +typedef void (t_FmExceptionsCallback) (t_Handle h_App, + e_FmExceptions exception); + +/**************************************************************************//** + @Function t_FmBusErrorCallback + + @Description Bus error user callback routine, will be called upon a + bus error, passing parameters describing the errors and the owner. + + @Param[in] h_App - User's application descriptor. + @Param[in] portType - Port type (e_FmPortType) + @Param[in] portId - Port id - relative to type. + @Param[in] addr - Address that caused the error + @Param[in] tnum - Owner of error + @Param[in] liodn - Logical IO device number +*//***************************************************************************/ +typedef void (t_FmBusErrorCallback) (t_Handle h_App, + e_FmPortType portType, + uint8_t portId, + uint64_t addr, + uint8_t tnum, + uint16_t liodn); + +/**************************************************************************//** + @Description structure for defining Ucode patch for loading. +*//***************************************************************************/ +typedef struct t_FmPcdFirmwareParams { + uint32_t size; /**< Size of uCode */ + uint32_t *p_Code; /**< A pointer to the uCode */ +} t_FmPcdFirmwareParams; + +/**************************************************************************//** + @Description structure representing FM initialization parameters +*//***************************************************************************/ +#define FM_SIZE_OF_LIODN_TABLE 64 +typedef struct t_FmParams { + uint8_t fmId; /**< Index of the FM */ + + uint8_t guestId; /**< FM Partition Id */ + + uintptr_t baseAddr; /**< Relevant when guestId = NCSW_MASSTER_ID only. + A pointer to base of memory mapped FM registers (virtual); + NOTE that this should include ALL common regs of the FM including + the PCD regs area. */ + t_Handle h_FmMuram; /**< Relevant when guestId = NCSW_MASSTER_ID only. + A handle of an initialized MURAM object, + to be used by the FM */ + uint16_t fmClkFreq; /**< Relevant when guestId = NCSW_MASSTER_ID only. + In Mhz */ +#ifdef FM_PARTITION_ARRAY + uint16_t liodnBasePerPort[FM_SIZE_OF_LIODN_TABLE]; + /**< Relevant when guestId = NCSW_MASSTER_ID only. + For each partition, LIODN should be configured here. */ +#endif /* FM_PARTITION_ARRAY */ + t_FmExceptionsCallback *f_Exception; /**< Relevant when guestId = NCSW_MASSTER_ID only. + An application callback routine to + handle exceptions.*/ + t_FmBusErrorCallback *f_BusError; /**< Relevant when guestId = NCSW_MASSTER_ID only. + An application callback routine to + handle exceptions.*/ + t_Handle h_App; /**< Relevant when guestId = NCSW_MASSTER_ID only. + A handle to an application layer object; This handle will + be passed by the driver upon calling the above callbacks */ + int irq; /**< Relevant when guestId = NCSW_MASSTER_ID only. + FM interrupt source for normal events */ + int errIrq; /**< Relevant when guestId = NCSW_MASSTER_ID only. + FM interrupt source for errors */ + t_FmPcdFirmwareParams firmware; /**< Relevant when guestId = NCSW_MASSTER_ID only. + Ucode */ +} t_FmParams; + + +/**************************************************************************//** + @Function FM_Config + + @Description Creates descriptor for the FM module. + + The routine returns a handle (descriptor) to the FM object. + This descriptor must be passed as first parameter to all other + FM function calls. + + No actual initialization or configuration of FM hardware is + done by this routine. + + @Param[in] p_FmParams - A pointer to data structure of parameters + + @Return Handle to FM object, or NULL for Failure. +*//***************************************************************************/ +t_Handle FM_Config(t_FmParams *p_FmParams); + +/**************************************************************************//** + @Function FM_Init + + @Description Initializes the FM module + + @Param[in] h_Fm - FM module descriptor + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_Init(t_Handle h_Fm); + +/**************************************************************************//** + @Function FM_Free + + @Description Frees all resources that were assigned to FM module. + + Calling this routine invalidates the descriptor. + + @Param[in] h_Fm - FM module descriptor + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_Free(t_Handle h_Fm); + + +/**************************************************************************//** + @Group FM_advanced_init_grp FM Advanced Configuration Unit + + @Description Configuration functions used to change default values; + Note: Advanced init routines are not available for guest partition. + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description DMA debug mode +*//***************************************************************************/ +typedef enum e_FmDmaDbgCntMode { + e_FM_DMA_DBG_NO_CNT = 0, /**< No counting */ + e_FM_DMA_DBG_CNT_DONE, /**< Count DONE commands */ + e_FM_DMA_DBG_CNT_COMM_Q_EM, /**< count command queue emergency signals */ + e_FM_DMA_DBG_CNT_INT_READ_EM, /**< Count Internal Read buffer emergency signal */ + e_FM_DMA_DBG_CNT_INT_WRITE_EM, /**< Count Internal Write buffer emergency signal */ + e_FM_DMA_DBG_CNT_FPM_WAIT, /**< Count FPM WAIT signal */ + e_FM_DMA_DBG_CNT_SIGLE_BIT_ECC, /**< Single bit ECC errors. */ + e_FM_DMA_DBG_CNT_RAW_WAR_PROT /**< Number of times there was a need for RAW & WAR protection. */ +} e_FmDmaDbgCntMode; + +/**************************************************************************//** + @Description DMA Cache Override +*//***************************************************************************/ +typedef enum e_FmDmaCacheOverride { + e_FM_DMA_NO_CACHE_OR = 0, /**< No override of the Cache field */ + e_FM_DMA_NO_STASH_DATA, /**< Data should not be stashed in system level cache */ + e_FM_DMA_MAY_STASH_DATA, /**< Data may be stashed in system level cache */ + e_FM_DMA_STASH_DATA /**< Data should be stashed in system level cache */ +} e_FmDmaCacheOverride; + +/**************************************************************************//** + @Description DMA External Bus Priority +*//***************************************************************************/ +typedef enum e_FmDmaExtBusPri { + e_FM_DMA_EXT_BUS_NORMAL = 0, /**< Normal priority */ + e_FM_DMA_EXT_BUS_EBS, /**< AXI extended bus service priority */ + e_FM_DMA_EXT_BUS_SOS, /**< AXI sos priority */ + e_FM_DMA_EXT_BUS_EBS_AND_SOS /**< AXI ebs + sos priority */ +} e_FmDmaExtBusPri; + +/**************************************************************************//** + @Description enum for choosing the field that will be output on AID +*//***************************************************************************/ +typedef enum e_FmDmaAidMode { + e_FM_DMA_AID_OUT_PORT_ID = 0, /**< 4 LSB of PORT_ID */ + e_FM_DMA_AID_OUT_TNUM /**< 4 LSB of TNUM */ +} e_FmDmaAidMode; + +/**************************************************************************//** + @Description FPM Catasrophic error behaviour +*//***************************************************************************/ +typedef enum e_FmCatastrophicErr { + e_FM_CATASTROPHIC_ERR_STALL_PORT = 0, /**< Port_ID is stalled (only reset can release it) */ + e_FM_CATASTROPHIC_ERR_STALL_TASK /**< Only errornous task is stalled */ +} e_FmCatastrophicErr; + +/**************************************************************************//** + @Description FPM DMA error behaviour +*//***************************************************************************/ +typedef enum e_FmDmaErr { + e_FM_DMA_ERR_CATASTROPHIC = 0, /**< Dma error is treated as a catastrophic error */ + e_FM_DMA_ERR_REPORT /**< Dma error is just reported */ +} e_FmDmaErr; + +/**************************************************************************//** + @Description DMA Emergency level by BMI emergency signal +*//***************************************************************************/ +typedef enum e_FmDmaEmergencyLevel { + e_FM_DMA_EM_EBS = 0, /**< EBS emergency */ + e_FM_DMA_EM_SOS /**< SOS emergency */ +} e_FmDmaEmergencyLevel; + +/**************************************************************************//** + @Collection DMA emergency options +*//***************************************************************************/ +typedef uint32_t fmEmergencyBus_t; /**< DMA emergency options */ + +#define FM_DMA_MURAM_READ_EMERGENCY 0x00800000 /**< Enable emergency for MURAM1 */ +#define FM_DMA_MURAM_WRITE_EMERGENCY 0x00400000 /**< Enable emergency for MURAM2 */ +#define FM_DMA_EXT_BUS_EMERGENCY 0x00100000 /**< Enable emergency for external bus */ +/* @} */ + +/**************************************************************************//** + @Description A structure for defining DMA emergency level +*//***************************************************************************/ +typedef struct t_FmDmaEmergency { + fmEmergencyBus_t emergencyBusSelect; /**< An OR of the busses where emergency + should be enabled */ + e_FmDmaEmergencyLevel emergencyLevel; /**< EBS/SOS */ +} t_FmDmaEmergency; + +/**************************************************************************//** + @Description structure for defining FM threshold +*//***************************************************************************/ +typedef struct t_FmThresholds { + uint8_t dispLimit; /**< The number of times a frames may + be passed in the FM before assumed to + be looping. */ + uint8_t prsDispTh; /**< This is the number pf packets that may be + queued in the parser dispatch queue*/ + uint8_t plcrDispTh; /**< This is the number pf packets that may be + queued in the policer dispatch queue*/ + uint8_t kgDispTh; /**< This is the number pf packets that may be + queued in the keygen dispatch queue*/ + uint8_t bmiDispTh; /**< This is the number pf packets that may be + queued in the BMI dispatch queue*/ + uint8_t qmiEnqDispTh; /**< This is the number pf packets that may be + queued in the QMI enqueue dispatch queue*/ + uint8_t qmiDeqDispTh; /**< This is the number pf packets that may be + queued in the QMI dequeue dispatch queue*/ + uint8_t fmCtl1DispTh; /**< This is the number pf packets that may be + queued in fmCtl1 dispatch queue*/ + uint8_t fmCtl2DispTh; /**< This is the number pf packets that may be + queued in fmCtl2 dispatch queue*/ +} t_FmThresholds; + + +/**************************************************************************//** + @Description structure for defining DMA thresholds +*//***************************************************************************/ +typedef struct t_FmDmaThresholds { + uint8_t assertEmergency; /**< When this value is reached, + assert emergency (Threshold)*/ + uint8_t clearEmergency; /**< After emergency is asserted, it is held + until this value is reached (Hystheresis) */ +} t_FmDmaThresholds; + + +/**************************************************************************//** + @Function FM_ConfigResetOnInit + + @Description Tell the driver whether to reset the FM before initialization or + not. It changes the default configuration [FALSE]. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] enable When TRUE, FM will be reset before any initialization. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigResetOnInit(t_Handle h_Fm, bool enable); + +/**************************************************************************//** + @Function FM_ConfigTotalNumOfTasks + + @Description Change the total number of tasks from its default + configuration [BMI_MAX_NUM_OF_TASKS] + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] totalNumOfTasks The selected new value. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigTotalNumOfTasks(t_Handle h_Fm, uint8_t totalNumOfTasks); + +/**************************************************************************//** + @Function FM_ConfigTotalFifoSize + + @Description Change the total Fifo size from its default + configuration [BMI_MAX_FIFO_SIZE] + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] totalFifoSize The selected new value. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigTotalFifoSize(t_Handle h_Fm, uint32_t totalFifoSize); + +/**************************************************************************//** + @Function FM_ConfigMaxNumOfOpenDmas + + @Description Change the maximum allowed open DMA's for this FM from its default + configuration [BMI_MAX_NUM_OF_DMAS] + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] maxNumOfOpenDmas The selected new value. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigMaxNumOfOpenDmas(t_Handle h_Fm, uint8_t maxNumOfOpenDmas); + +/**************************************************************************//** + @Function FM_ConfigThresholds + + @Description Calling this routine changes the internal driver data base + from its default FM threshold configuration: + dispLimit: [0] + prsDispTh: [16] + plcrDispTh: [16] + kgDispTh: [16] + bmiDispTh: [16] + qmiEnqDispTh: [16] + qmiDeqDispTh: [16] + fmCtl1DispTh: [16] + fmCtl2DispTh: [16] + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] p_FmThresholds A structure of threshold parameters. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigThresholds(t_Handle h_Fm, t_FmThresholds *p_FmThresholds); + + /**************************************************************************//** + @Function FM_ConfigDmaCacheOverride + + @Description Calling this routine changes the internal driver data base + from its default configuration of cache override mode [e_FM_DMA_NO_CACHE_OR] + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] cacheOverride The selected new value. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigDmaCacheOverride(t_Handle h_Fm, e_FmDmaCacheOverride cacheOverride); + +/**************************************************************************//** + @Function FM_ConfigDmaAidOverride + + @Description Calling this routine changes the internal driver data base + from its default configuration of aid override mode [TRUE] + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] aidOverride The selected new value. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigDmaAidOverride(t_Handle h_Fm, bool aidOverride); + +/**************************************************************************//** + @Function FM_ConfigDmaAidMode + + @Description Calling this routine changes the internal driver data base + from its default configuration of aid mode [e_FM_DMA_AID_OUT_TNUM] + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] aidMode The selected new value. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigDmaAidMode(t_Handle h_Fm, e_FmDmaAidMode aidMode); + +/**************************************************************************//** + @Function FM_ConfigDmaAxiDbgNumOfBeats + + @Description Calling this routine changes the internal driver data base + from its default configuration of axi debug [1] + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] axiDbgNumOfBeats The selected new value. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigDmaAxiDbgNumOfBeats(t_Handle h_Fm, uint8_t axiDbgNumOfBeats); + +/**************************************************************************//** + @Function FM_ConfigDmaCamNumOfEntries + + @Description Calling this routine changes the internal driver data base + from its default configuration of number of CAM entries [32] + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] numOfEntries The selected new value. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigDmaCamNumOfEntries(t_Handle h_Fm, uint8_t numOfEntries); + +/**************************************************************************//** + @Function FM_ConfigDmaWatchdog + + @Description Calling this routine changes the internal driver data base + from its default watchdog configuration, which is disabled + [0]. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] watchDogValue The selected new value - in microseconds. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigDmaWatchdog(t_Handle h_Fm, uint32_t watchDogValue); + +/**************************************************************************//** + @Function FM_ConfigDmaWriteBufThresholds + + @Description Calling this routine changes the internal driver data base + from its default configuration of DMA write buffer threshold + assertEmergency: [DMA_THRESH_MAX_BUF] + clearEmergency: [DMA_THRESH_MAX_BUF] + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] p_FmDmaThresholds A structure of thresholds to define emergency behavior - + When 'assertEmergency' value is reached, emergency is asserted, + then it is held until 'clearEmergency' value is reached. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigDmaWriteBufThresholds(t_Handle h_Fm, t_FmDmaThresholds *p_FmDmaThresholds); + + /**************************************************************************//** + @Function FM_ConfigDmaCommQThresholds + + @Description Calling this routine changes the internal driver data base + from its default configuration of DMA command queue threshold + assertEmergency: [DMA_THRESH_MAX_COMMQ] + clearEmergency: [DMA_THRESH_MAX_COMMQ] + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] p_FmDmaThresholds A structure of thresholds to define emergency behavior - + When 'assertEmergency' value is reached, emergency is asserted, + then it is held until 'clearEmergency' value is reached.. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigDmaCommQThresholds(t_Handle h_Fm, t_FmDmaThresholds *p_FmDmaThresholds); + +/**************************************************************************//** + @Function FM_ConfigDmaReadBufThresholds + + @Description Calling this routine changes the internal driver data base + from its default configuration of DMA read buffer threshold + assertEmergency: [DMA_THRESH_MAX_BUF] + clearEmergency: [DMA_THRESH_MAX_BUF] + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] p_FmDmaThresholds A structure of thresholds to define emergency behavior - + When 'assertEmergency' value is reached, emergency is asserted, + then it is held until 'clearEmergency' value is reached.. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigDmaReadBufThresholds(t_Handle h_Fm, t_FmDmaThresholds *p_FmDmaThresholds); + +/**************************************************************************//** + @Function FM_ConfigDmaSosEmergencyThreshold + + @Description Calling this routine changes the internal driver data base + from its default dma SOS emergency configuration [0] + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] dmaSosEmergency The selected new value. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigDmaSosEmergencyThreshold(t_Handle h_Fm, uint32_t dmaSosEmergency); + +/**************************************************************************//** + @Function FM_ConfigEnableCounters + + @Description Calling this routine changes the internal driver data base + from its default counters configuration where counters are disabled. + + @Param[in] h_Fm A handle to an FM Module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigEnableCounters(t_Handle h_Fm); + +/**************************************************************************//** + @Function FM_ConfigDmaDbgCounter + + @Description Calling this routine changes the internal driver data base + from its default DMA debug counters configuration [e_FM_DMA_DBG_NO_CNT] + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] fmDmaDbgCntMode An enum selecting the debug counter mode. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigDmaDbgCounter(t_Handle h_Fm, e_FmDmaDbgCntMode fmDmaDbgCntMode); + +/**************************************************************************//** + @Function FM_ConfigDmaStopOnBusErr + + @Description Calling this routine changes the internal driver data base + from its default selection of bus error behavior [FALSE] + + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] stop TRUE to stop on bus error, FALSE to continue. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). + Only if bus error is enabled. +*//***************************************************************************/ +t_Error FM_ConfigDmaStopOnBusErr(t_Handle h_Fm, bool stop); + +/**************************************************************************//** + @Function FM_ConfigDmaEmergency + + @Description Calling this routine changes the internal driver data base + from its default selection of DMA emergency where's it's disabled. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] p_Emergency An OR mask of all required options. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigDmaEmergency(t_Handle h_Fm, t_FmDmaEmergency *p_Emergency); + +/**************************************************************************//** + @Function FM_ConfigDmaEmergencySmoother + + @Description sets the minimum amount of DATA beats transferred on the AXI + READ and WRITE ports before lowering the emergency level. + By default smother is disabled. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] emergencyCnt emergency switching counter. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigDmaEmergencySmoother(t_Handle h_Fm, uint32_t emergencyCnt); + +/**************************************************************************//** + @Function FM_ConfigDmaErr + + @Description Calling this routine changes the internal driver data base + from its default DMA error treatment [e_FM_DMA_ERR_CATASTROPHIC] + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] dmaErr The selected new choice. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigDmaErr(t_Handle h_Fm, e_FmDmaErr dmaErr); + +/**************************************************************************//** + @Function FM_ConfigCatastrophicErr + + @Description Calling this routine changes the internal driver data base + from its default behavior on catastrophic error [e_FM_CATASTROPHIC_ERR_STALL_PORT] + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] catastrophicErr The selected new choice. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigCatastrophicErr(t_Handle h_Fm, e_FmCatastrophicErr catastrophicErr); + +/**************************************************************************//** + @Function FM_ConfigEnableMuramTestMode + + @Description Calling this routine changes the internal driver data base + from its default selection of test mode where it's disabled. + + @Param[in] h_Fm A handle to an FM Module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigEnableMuramTestMode(t_Handle h_Fm); + +/**************************************************************************//** + @Function FM_ConfigEnableIramTestMode + + @Description Calling this routine changes the internal driver data base + from its default selection of test mode where it's disabled. + + @Param[in] h_Fm A handle to an FM Module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigEnableIramTestMode(t_Handle h_Fm); + +/**************************************************************************//** + @Function FM_ConfigHaltOnExternalActivation + + @Description Calling this routine changes the internal driver data base + from its default selection of FM behaviour on external halt + activation [FALSE]. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] enable TRUE to enable halt on external halt + activation. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigHaltOnExternalActivation(t_Handle h_Fm, bool enable); + +/**************************************************************************//** + @Function FM_ConfigHaltOnUnrecoverableEccError + + @Description Calling this routine changes the internal driver data base + from its default selection of FM behaviour on unrecoverable + Ecc error [FALSE]. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] enable TRUE to enable halt on unrecoverable Ecc error + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigHaltOnUnrecoverableEccError(t_Handle h_Fm, bool enable); + +/**************************************************************************//** + @Function FM_ConfigException + + @Description Calling this routine changes the internal driver data base + from its default selection of exceptions enablement. + By default all exceptions are enabled. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] exception The exception to be selected. + @Param[in] enable TRUE to enable interrupt, FALSE to mask it. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigException(t_Handle h_Fm, e_FmExceptions exception, bool enable); + +/**************************************************************************//** + @Function FM_ConfigExternalEccRamsEnable + + @Description Calling this routine changes the internal driver data base + from its default [FALSE]. + When this option is enabled Rams ECC enable is not effected + by the FPM RCR bit, but by a JTAG. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] enable TRUE to enable this option. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigExternalEccRamsEnable(t_Handle h_Fm, bool enable); + +/**************************************************************************//** + @Function FM_ConfigTnumAgingPeriod + + @Description Calling this routine changes the internal driver data base + from its default configuration for aging of dequeue TNUM's + in the QMI.[0] + Note that this functionality is not available in all chips. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] tnumAgingPeriod Tnum Aging Period in microseconds. + Note that period is recalculated in units of + 64 FM clocks. Driver will pick the closest + possible period. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_ConfigTnumAgingPeriod(t_Handle h_Fm, uint16_t tnumAgingPeriod); + +/** @} */ /* end of FM_advanced_init_grp group */ +/** @} */ /* end of FM_init_grp group */ + + +/**************************************************************************//** + @Group FM_runtime_control_grp FM Runtime Control Unit + + @Description FM Runtime control unit API functions, definitions and enums. + The FM driver provides a set of control routines for each module. + These routines may only be called after the module was fully + initialized (both configuration and initialization routines were + called). They are typically used to get information from hardware + (status, counters/statistics, revision etc.), to modify a current + state or to force/enable a required action. Run-time control may + be called whenever necessary and as many times as needed. + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Collection General FM defines. +*//***************************************************************************/ +#define FM_MAX_NUM_OF_VALID_PORTS (FM_MAX_NUM_OF_OH_PORTS + \ + FM_MAX_NUM_OF_1G_RX_PORTS + \ + FM_MAX_NUM_OF_10G_RX_PORTS + \ + FM_MAX_NUM_OF_1G_TX_PORTS + \ + FM_MAX_NUM_OF_10G_TX_PORTS) +/* @} */ + +/**************************************************************************//** + @Description Structure for Port bandwidth requirement. Port is identified + by type and relative id. +*//***************************************************************************/ +typedef struct t_FmPortBandwidth { + e_FmPortType type; /**< FM port type */ + uint8_t relativePortId; /**< Type relative port id */ + uint8_t bandwidth; /**< bandwidth - (in term of percents) */ +} t_FmPortBandwidth; + +/**************************************************************************//** + @Description A Structure containing an array of Port bandwidth requirements. + The user should state the ports requiring bandwidth in terms of + percentage - i.e. all port's bandwidths in the array must add + up to 100. +*//***************************************************************************/ +typedef struct t_FmPortsBandwidthParams { + uint8_t numOfPorts; /**< num of ports listed in the array below */ + t_FmPortBandwidth portsBandwidths[FM_MAX_NUM_OF_VALID_PORTS]; + /**< for each port, it's bandwidth (all port's + bandwidths must add up to 100.*/ +} t_FmPortsBandwidthParams; + +/**************************************************************************//** + @Description DMA Emergency control on MURAM +*//***************************************************************************/ +typedef enum e_FmDmaMuramPort { + e_FM_DMA_MURAM_PORT_WRITE, /**< MURAM write port */ + e_FM_DMA_MURAM_PORT_READ /**< MURAM read port */ +} e_FmDmaMuramPort; + +/**************************************************************************//** + @Description enum for defining FM counters +*//***************************************************************************/ +typedef enum e_FmCounters { + e_FM_COUNTERS_ENQ_TOTAL_FRAME = 0, /**< QMI total enqueued frames counter */ + e_FM_COUNTERS_DEQ_TOTAL_FRAME, /**< QMI total dequeued frames counter */ + e_FM_COUNTERS_DEQ_0, /**< QMI 0 frames from QMan counter */ + e_FM_COUNTERS_DEQ_1, /**< QMI 1 frames from QMan counter */ + e_FM_COUNTERS_DEQ_2, /**< QMI 2 frames from QMan counter */ + e_FM_COUNTERS_DEQ_3, /**< QMI 3 frames from QMan counter */ + e_FM_COUNTERS_DEQ_FROM_DEFAULT, /**< QMI dequeue from default queue counter */ + e_FM_COUNTERS_DEQ_FROM_CONTEXT, /**< QMI dequeue from FQ context counter */ + e_FM_COUNTERS_DEQ_FROM_FD, /**< QMI dequeue from FD command field counter */ + e_FM_COUNTERS_DEQ_CONFIRM, /**< QMI dequeue confirm counter */ + e_FM_COUNTERS_SEMAPHOR_ENTRY_FULL_REJECT, /**< DMA semaphor reject due to full entry counter */ + e_FM_COUNTERS_SEMAPHOR_QUEUE_FULL_REJECT, /**< DMA semaphor reject due to full CAM queue counter */ + e_FM_COUNTERS_SEMAPHOR_SYNC_REJECT /**< DMA semaphor reject due to sync counter */ +} e_FmCounters; + +/**************************************************************************//** + @Description structure for returning revision information +*//***************************************************************************/ +typedef struct t_FmRevisionInfo { + uint8_t majorRev; /**< Major revision */ + uint8_t minorRev; /**< Minor revision */ +} t_FmRevisionInfo; + +/**************************************************************************//** + @Description struct for defining DMA status +*//***************************************************************************/ +typedef struct t_FmDmaStatus { + bool cmqNotEmpty; /**< Command queue is not empty */ + bool busError; /**< Bus error occurred */ + bool readBufEccError; /**< Double ECC error on buffer Read */ + bool writeBufEccSysError; /**< Double ECC error on buffer write from system side */ + bool writeBufEccFmError; /**< Double ECC error on buffer write from FM side */ +} t_FmDmaStatus; + + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +/**************************************************************************//** + @Function FM_DumpRegs + + @Description Dumps all FM registers + + @Param[in] h_Fm A handle to an FM Module. + + @Return E_OK on success; + + @Cautions Allowed only FM_Init(). +*//***************************************************************************/ +t_Error FM_DumpRegs(t_Handle h_Fm); +#endif /* (defined(DEBUG_ERRORS) && ... */ + +/**************************************************************************//** + @Function FM_SetException + + @Description Calling this routine enables/disables the specified exception. + Note: Not available for guest partition. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] exception The exception to be selected. + @Param[in] enable TRUE to enable interrupt, FALSE to mask it. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +t_Error FM_SetException(t_Handle h_Fm, e_FmExceptions exception, bool enable); + +/**************************************************************************//** + @Function FM_SetPortsBandwidth + + @Description Sets relative weights between ports when accessing common resources. + Note: Not available for guest partition. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] p_PortsBandwidth A structure of ports bandwidths in percentage, i.e. + total must equal 100. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +t_Error FM_SetPortsBandwidth(t_Handle h_Fm, t_FmPortsBandwidthParams *p_PortsBandwidth); + +/**************************************************************************//** + @Function FM_EnableRamsEcc + + @Description Enables ECC mechanism for all the different FM RAM's; E.g. IRAM, + MURAM, Parser, Keygen, Policer, etc. + Note: + If FM_ConfigExternalEccRamsEnable was called to enable external + setting of ECC, this routine effects IRAM ECC only. + This routine is also called by the driver if an ECC exception is + enabled. + Note: Not available for guest partition. + + @Param[in] h_Fm A handle to an FM Module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_EnableRamsEcc(t_Handle h_Fm); + +/**************************************************************************//** + @Function FM_DisableRamsEcc + + @Description Disables ECC mechanism for all the different FM RAM's; E.g. IRAM, + MURAM, Parser, Keygen, Policer, etc. + Note: + If FM_ConfigExternalEccRamsEnable was called to enable external + setting of ECC, this routine effects IRAM ECC only. + In opposed to FM_EnableRamsEcc, this routine must be called + explicitly to disable all Rams ECC. + Note: Not available for guest partition. + + + @Param[in] h_Fm A handle to an FM Module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Config() and before FM_Init(). +*//***************************************************************************/ +t_Error FM_DisableRamsEcc(t_Handle h_Fm); + +/**************************************************************************//** + @Function FM_GetRevision + + @Description Returns the FM revision + + @Param[in] h_Fm A handle to an FM Module. + @Param[out] p_FmRevisionInfo A structure of revision information parameters. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +t_Error FM_GetRevision(t_Handle h_Fm, t_FmRevisionInfo *p_FmRevisionInfo); + +/**************************************************************************//** + @Function FM_GetCounter + + @Description Reads one of the FM counters. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] counter The requested counter. + + @Return Counter's current value. + + @Cautions Allowed only following FM_Init(). + Note that it is user's responsibility to call this routine only + for enabled counters, and there will be no indication if a + disabled counter is accessed. +*//***************************************************************************/ +uint32_t FM_GetCounter(t_Handle h_Fm, e_FmCounters counter); + +/**************************************************************************//** + @Function FM_ModifyCounter + + @Description Sets a value to an enabled counter. Use "0" to reset the counter. + Note: Not available for guest partition. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] counter The requested counter. + @Param[in] val The requested value to be written into the counter. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +t_Error FM_ModifyCounter(t_Handle h_Fm, e_FmCounters counter, uint32_t val); + +/**************************************************************************//** + @Function FM_Resume + + @Description Release FM after halt FM command or after unrecoverable ECC error. + Note: Not available for guest partition. + + @Param[in] h_Fm A handle to an FM Module. + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +void FM_Resume(t_Handle h_Fm); + +/**************************************************************************//** + @Function FM_SetDmaEmergency + + @Description Manual emergency set + Note: Not available for guest partition. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] muramPort MURAM direction select. + @Param[in] enable TRUE to manually enable emergency, FALSE to disable. + + @Return None. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +void FM_SetDmaEmergency(t_Handle h_Fm, e_FmDmaMuramPort muramPort, bool enable); + +/**************************************************************************//** + @Function FM_SetDmaExtBusPri + + @Description Manual emergency set + Note: Not available for guest partition. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] pri External bus priority select + + @Return None. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +void FM_SetDmaExtBusPri(t_Handle h_Fm, e_FmDmaExtBusPri pri); + +/**************************************************************************//** + @Function FM_ForceIntr + + @Description Causes an interrupt event on the requested source. + Note: Not available for guest partition. + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] exception An exception to be forced. + + @Return E_OK on success; Error code if the exception is not enabled, + or is not able to create interrupt. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +t_Error FM_ForceIntr (t_Handle h_Fm, e_FmExceptions exception); + +/**************************************************************************//** + @Function FM_GetDmaStatus + + @Description Reads the DMA current status + + @Param[in] h_Fm A handle to an FM Module. + @Param[out] p_FmDmaStatus A structure of DMA status parameters. + + @Return None + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +void FM_GetDmaStatus(t_Handle h_Fm, t_FmDmaStatus *p_FmDmaStatus); + +/**************************************************************************//** + @Function FM_GetPcdHandle + + @Description Used by FMC in order to get PCD handle + + @Param[in] h_Fm A handle to an FM Module. + + @Return A handle to the PCD module, NULL if uninitialized. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +t_Handle FM_GetPcdHandle(t_Handle h_Fm); + +/**************************************************************************//** + @Function FM_ErrorIsr + Note: Not available for guest partition. + + @Description FM interrupt-service-routine for errors. + + @Param[in] h_Fm A handle to an FM Module. + + @Return E_OK on success; E_EMPTY if no errors found in register, other + error code otherwise. + + @Cautions Allowed only following FM_Init(). + This routine should NOT be called from guest-partition + (i.e. guestId != NCSW_MASTER_ID) +*//***************************************************************************/ +t_Error FM_ErrorIsr(t_Handle h_Fm); + +/**************************************************************************//** + @Function FM_EventIsr + Note: Not available for guest partition. + + @Description FM interrupt-service-routine for normal events. + + @Param[in] h_Fm A handle to an FM Module. + + @Cautions Allowed only following FM_Init(). + This routine should NOT be called from guest-partition + (i.e. guestId != NCSW_MASTER_ID) +*//***************************************************************************/ +void FM_EventIsr(t_Handle h_Fm); + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +/**************************************************************************//** + @Function FmDumpPortRegs + + @Description Dumps FM port registers which are part of FM common registers + + @Param[in] h_Fm A handle to an FM Module. + @Param[in] hardwarePortId HW port id. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only FM_Init(). +*//***************************************************************************/ +t_Error FmDumpPortRegs(t_Handle h_Fm,uint8_t hardwarePortId); +#endif /* (defined(DEBUG_ERRORS) && ... */ + + +/** @} */ /* end of FM_runtime_control_grp group */ +/** @} */ /* end of FM_lib_grp group */ +/** @} */ /* end of FM_grp group */ + +#endif /* __FM_EXT */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/Peripherals/fm_mac_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/Peripherals/fm_mac_ext.h @@ -0,0 +1,713 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + @File fm_mac_ext.h + + @Description FM MAC ... +*//***************************************************************************/ +#ifndef __FM_MAC_EXT_H +#define __FM_MAC_EXT_H + +#include "std_ext.h" +#include "enet_ext.h" + + +/**************************************************************************//** + + @Group FM_grp Frame Manager API + + @Description FM API functions, definitions and enums + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group FM_mac_grp FM MAC + + @Description FM MAC API functions, definitions and enums + + @{ +*//***************************************************************************/ + + +/**************************************************************************//** + @Description FM MAC Exceptions +*//***************************************************************************/ +typedef enum e_FmMacExceptions { + e_FM_MAC_EX_10G_MDIO_SCAN_EVENTMDIO = 0 + ,e_FM_MAC_EX_10G_MDIO_CMD_CMPL + ,e_FM_MAC_EX_10G_REM_FAULT + ,e_FM_MAC_EX_10G_LOC_FAULT + ,e_FM_MAC_EX_10G_1TX_ECC_ER + ,e_FM_MAC_EX_10G_TX_FIFO_UNFL + ,e_FM_MAC_EX_10G_TX_FIFO_OVFL + ,e_FM_MAC_EX_10G_TX_ER + ,e_FM_MAC_EX_10G_RX_FIFO_OVFL + ,e_FM_MAC_EX_10G_RX_ECC_ER + ,e_FM_MAC_EX_10G_RX_JAB_FRM + ,e_FM_MAC_EX_10G_RX_OVRSZ_FRM + ,e_FM_MAC_EX_10G_RX_RUNT_FRM + ,e_FM_MAC_EX_10G_RX_FRAG_FRM + ,e_FM_MAC_EX_10G_RX_LEN_ER + ,e_FM_MAC_EX_10G_RX_CRC_ER + ,e_FM_MAC_EX_10G_RX_ALIGN_ER + ,e_FM_MAC_EX_1G_BAB_RX + ,e_FM_MAC_EX_1G_RX_CTL + ,e_FM_MAC_EX_1G_GRATEFUL_TX_STP_COMPLET + ,e_FM_MAC_EX_1G_BAB_TX + ,e_FM_MAC_EX_1G_TX_CTL + ,e_FM_MAC_EX_1G_TX_ERR + ,e_FM_MAC_EX_1G_LATE_COL + ,e_FM_MAC_EX_1G_COL_RET_LMT + ,e_FM_MAC_EX_1G_TX_FIFO_UNDRN + ,e_FM_MAC_EX_1G_MAG_PCKT + ,e_FM_MAC_EX_1G_MII_MNG_RD_COMPLET + ,e_FM_MAC_EX_1G_MII_MNG_WR_COMPLET + ,e_FM_MAC_EX_1G_GRATEFUL_RX_STP_COMPLET + ,e_FM_MAC_EX_1G_TX_DATA_ERR + ,e_FM_MAC_EX_1G_RX_DATA_ERR + ,e_FM_MAC_EX_1G_1588_TS_RX_ERR + ,e_FM_MAC_EX_1G_RX_MIB_CNT_OVFL +} e_FmMacExceptions; + +/**************************************************************************//** + @Description TM MAC statistics level +*//***************************************************************************/ +typedef enum e_FmMacStatisticsLevel { + e_FM_MAC_NONE_STATISTICS = 0, /**< No statistics */ + e_FM_MAC_PARTIAL_STATISTICS, /**< Only error counters are available. Optimized for performance */ + e_FM_MAC_FULL_STATISTICS /**< All counters available. Not optimized for performance */ +} e_FmMacStatisticsLevel; + + +/**************************************************************************//** + @Function t_FmMacExceptionCallback + + @Description Fm Mac Exception Callback from FM MAC to the user + + @Param[in] h_App - Handle to the upper layer handler + + @Param[in] exceptions - The exception that occurred + + + @Return void. +*//***************************************************************************/ +typedef void (t_FmMacExceptionCallback)(t_Handle h_App, e_FmMacExceptions exceptions); + + +/**************************************************************************//** + @Description TM MAC statistics rfc3635 +*//***************************************************************************/ +typedef struct t_FmMacStatistics { +/* RMON */ + uint64_t eStatPkts64; /**< r-10G tr-DT 64 byte frame counter */ + uint64_t eStatPkts65to127; /**< r-10G 65 to 127 byte frame counter */ + uint64_t eStatPkts128to255; /**< r-10G 128 to 255 byte frame counter */ + uint64_t eStatPkts256to511; /**< r-10G 256 to 511 byte frame counter */ + uint64_t eStatPkts512to1023; /**< r-10G 512 to 1023 byte frame counter */ + uint64_t eStatPkts1024to1518; /**< r-10G 1024 to 1518 byte frame counter */ + uint64_t eStatPkts1519to1522; /**< r-10G 1519 to 1522 byte good frame count */ +/* */ + uint64_t eStatFragments; /**< Total number of packets that were less than 64 octets long with a wrong CRC.*/ + uint64_t eStatJabbers; /**< Total number of packets longer than valid maximum length octets */ + uint64_t eStatsDropEvents; /**< number of dropped packets due to internal errors of the MAC Client. */ + uint64_t eStatCRCAlignErrors; /**< Incremented when frames of correct length but with CRC error are received.*/ + uint64_t eStatUndersizePkts; /**< Total number of packets that were less than 64 octets long with a good CRC.*/ + uint64_t eStatOversizePkts; /**< T,B.D*/ +/* Pause */ + uint64_t teStatPause; /**< Pause MAC Control received */ + uint64_t reStatPause; /**< Pause MAC Control sent */ + +/* MIB II */ + uint64_t ifInOctets; /**< Total number of byte received. */ + uint64_t ifInPkts; /**< Total number of packets received.*/ + uint64_t ifInMcastPkts; /**< Total number of multicast frame received*/ + uint64_t ifInBcastPkts; /**< Total number of broadcast frame received */ + uint64_t ifInDiscards; /**< Frames received, but discarded due to problems within the MAC RX. */ + uint64_t ifInErrors; /**< Number of frames received with error: + - FIFO Overflow Error + - CRC Error + - Frame Too Long Error + - Alignment Error + - The dedicated Error Code (0xfe, not a code error) was received */ + uint64_t ifOutOctets; /**< Total number of byte sent. */ + uint64_t ifOutPkts; /**< Total number of packets sent .*/ + uint64_t ifOutMcastPkts; /**< Total number of multicast frame sent */ + uint64_t ifOutBcastPkts; /**< Total number of multicast frame sent */ + uint64_t ifOutDiscards; /**< Frames received, but discarded due to problems within the MAC TX N/A!.*/ + uint64_t ifOutErrors; /**< Number of frames transmitted with error: + - FIFO Overflow Error + - FIFO Underflow Error + - Other */ +} t_FmMacStatistics; + + +/**************************************************************************//** + @Group FM_mac_init_grp Initialization Unit + + @Description FM MAC Initialization Unit + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description FM MAC config input +*//***************************************************************************/ +typedef struct t_FmMacParams { + uintptr_t baseAddr; /**< Base of memory mapped FM MAC registers */ + t_EnetAddr addr; /**< MAC address of device; First octet is sent first */ + uint8_t macId; /**< MAC ID <10G 0> */ + e_EnetMode enetMode; /**< Ethernet operation mode (MAC-PHY interface and speed) */ + t_Handle h_Fm; /**< A handle to the FM object this port related to */ + int mdioIrq; /**< MDIO exceptions interrupt source - not valid for all + MACs; MUST be set to 'NO_IRQ' for MACs that don't have + mdio-irq, or for polling */ + t_FmMacExceptionCallback *f_Event; /**< MDIO Events Callback Routine */ + t_FmMacExceptionCallback *f_Exception; /**< Exception Callback Routine */ + t_Handle h_App; /**< A handle to an application layer object; This handle will + be passed by the driver upon calling the above callbacks */ +} t_FmMacParams; + + +/**************************************************************************//** + @Function FM_MAC_Config + + @Description Creates descriptor for the FM MAC module. + + The routine returns a handle (descriptor) to the FM MAC object. + This descriptor must be passed as first parameter to all other + FM MAC function calls. + + No actual initialization or configuration of FM MAC hardware is + done by this routine. + + @Param[in] p_FmMacParam - Pointer to data structure of parameters + + @Retval Handle to FM MAC object, or NULL for Failure. +*//***************************************************************************/ +t_Handle FM_MAC_Config (t_FmMacParams *p_FmMacParam); + +/**************************************************************************//** + @Function FM_MAC_Init + + @Description Initializes the FM MAC module + + @Param[in] h_FmMac - FM module descriptor + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_MAC_Init (t_Handle h_FmMac); + +/**************************************************************************//** + @Function FM_Free + + @Description Frees all resources that were assigned to FM MAC module. + + Calling this routine invalidates the descriptor. + + @Param[in] h_FmMac - FM module descriptor + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_MAC_Free (t_Handle h_FmMac); + + +/**************************************************************************//** + @Group FM_mac_advanced_init_grp Advanced Configuration Unit + + @Description Configuration functions used to change default values. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Function FM_MAC_ConfigResetOnInit + + @Description Tell the driver whether to reset the FM MAC before initialization or + not. It changes the default configuration [FALSE]. + + @Param[in] h_FmMac A handle to a FM MAC Module. + @Param[in] enable When TRUE, FM will be reset before any initialization. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Config() and before FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_ConfigResetOnInit (t_Handle h_FmMac, bool enable); + +/**************************************************************************//** + @Function FM_MAC_ConfigLoopback + + @Description Enable/Disable internal loopback mode + + @Param[in] h_FmMac A handle to a FM MAC Module. + @Param[in] enable TRUE to enable or FALSE to disable. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Config() and before FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_ConfigLoopback (t_Handle h_FmMac, bool enable); + +/**************************************************************************//** + @Function FM_MAC_ConfigMaxFrameLength + + @Description Setup maximum Frame Length + + @Param[in] h_FmMac A handle to a FM MAC Module. + @Param[in] newVal MAX Frame length + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Config() and before FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_ConfigMaxFrameLength (t_Handle h_FmMac, uint16_t newVal); + +/**************************************************************************//** + @Function FM_MAC_ConfigWan + + @Description ENABLE WAN mode in 10G MAC + + @Param[in] h_FmMac A handle to a FM MAC Module. + @Param[in] enable TRUE to enable or FALSE to disable. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Config() and before FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_ConfigWan (t_Handle h_FmMac, bool enable); + +/**************************************************************************//** + @Function FM_MAC_ConfigPadAndCrc + + @Description Config PAD and CRC mode + + @Param[in] h_FmMac A handle to a FM MAC Module. + @Param[in] enable TRUE to enable or FALSE to disable. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Config() and before FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_ConfigPadAndCrc (t_Handle h_FmMac, bool enable); + +/**************************************************************************//** + @Function FM_MAC_ConfigHalfDuplex + + @Description Config Half Duplex Mode + + @Param[in] h_FmMac A handle to a FM MAC Module. + @Param[in] enable TRUE to enable or FALSE to disable. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Config() and before FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_ConfigHalfDuplex (t_Handle h_FmMac, bool enable); + +/**************************************************************************//** + @Function FM_MAC_ConfigLengthCheck + + @Description Configure thef frame length checking. + + @Param[in] h_FmMac A handle to a FM MAC Module. + @Param[in] enable TRUE to enable or FALSE to disable. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Config() and before FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_ConfigLengthCheck (t_Handle h_FmMac, bool enable); + +/**************************************************************************//** + @Function FM_MAC_ConfigException + + @Description Change Exception selection from default + + @Param[in] h_FmMac A handle to a FM MAC Module. + @Param[in] ex Type of the desired exceptions + @Param[in] enable TRUE to enable the specified exception, FALSE to disable it. + + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Config() and before FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_ConfigException(t_Handle h_FmMac, e_FmMacExceptions ex, bool enable); + +#ifdef FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 +t_Error FM_MAC_ConfigSkipFman11Workaround (t_Handle h_FmMac); +#endif /* FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 */ +/** @} */ /* end of FM_mac_advanced_init_grp group */ +/** @} */ /* end of FM_mac_init_grp group */ + + +/**************************************************************************//** + @Group FM_mac_runtime_control_grp Runtime Control Unit + + @Description FM MAC Runtime control unit API functions, definitions and enums. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Function FM_MAC_Enable + + @Description Enable the MAC + + @Param[in] h_FmMac A handle to a FM MAC Module. + @Param[in] mode Mode of operation (RX, TX, Both) + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_Enable (t_Handle h_FmMac, e_CommMode mode); + +/**************************************************************************//** + @Function FM_MAC_Disable + + @Description DISABLE the MAC + + @Param[in] h_FmMac A handle to a FM MAC Module. + @Param[in] mode Define what part to Disable (RX, TX or BOTH) + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_Disable (t_Handle h_FmMac, e_CommMode mode); + +/**************************************************************************//** + @Function FM_MAC_Enable1588TimeStamp + + @Description Enables the TSU operation. + + @Param[in] h_Fm - Handle to the PTP as returned from the FM_MAC_PtpConfig. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_Enable1588TimeStamp(t_Handle h_Fm); + +/**************************************************************************//** + @Function FM_MAC_Disable1588TimeStamp + + @Description Disables the TSU operation. + + @Param[in] h_Fm - Handle to the PTP as returned from the FM_MAC_PtpConfig. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_Disable1588TimeStamp(t_Handle h_Fm); + +/**************************************************************************//** + @Function FM_MAC_SetTxAutoPauseFrames + + @Description Enable/Disable transmition of Pause-Frames. + + @Param[in] h_FmMac A handle to a FM MAC Module. + @Param[in] pauseTime Pause quanta value used with transmitted pause frames. + Each quanta represents a 512 bit-times; Note that '0' + as an input here will be used as disabling the + transmission of the pause-frames. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_SetTxAutoPauseFrames (t_Handle h_FmMac, uint16_t pauseTime); + +/**************************************************************************//** + @Function FM_MAC_SetRxIgnorePauseFrames + + @Description Enable/Disable ignoring of Pause-Frames. + + @Param[in] h_FmMac A handle to a FM MAC Module. + @Param[in] en boolean indicates whether to ignore the incoming pause + frames or not. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_SetRxIgnorePauseFrames (t_Handle h_FmMac, bool en); + +/**************************************************************************//** + @Function FM_MAC_ResetCounters + + @Description reset all statistics counters + + @Param[in] h_FmMac A handle to a FM MAC Module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_ResetCounters (t_Handle h_FmMac); + +/**************************************************************************//** + @Function FM_MAC_SetException + + @Description Enable/Disable a specific Exception + + @Param[in] h_FmMac A handle to a FM MAC Module. + @Param[in] ex Type of the desired exceptions + @Param[in] enable TRUE to enable the specified exception, FALSE to disable it. + + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_SetException(t_Handle h_FmMac, e_FmMacExceptions ex, bool enable); + +/**************************************************************************//** + @Function FM_MAC_SetStatistics + + @Description Define Statistics level. + Where applicable, the routine also enables the MIB counters + overflow interrupt in order to keep counters accurate + and account for overflows. + + @Param[in] h_FmMac A handle to a FM MAC Module. + @Param[in] statisticsLevel Full statistics level provides all standard counters but may + reduce performance. Partial statistics provides only special + event counters (errors etc.). If selected, regular counters (such as + byte/packet) will be invalid and will return -1. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_SetStatistics (t_Handle h_FmMac, e_FmMacStatisticsLevel statisticsLevel); + +/**************************************************************************//** + @Function FM_MAC_GetStatistics + + @Description get all statistics counters + + @Param[in] h_FmMac A handle to a FM MAC Module. + @Param[in] p_Statistics Staructure with statistics + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_Init(). +*//***************************************************************************/ +t_Error FM_MAC_GetStatistics (t_Handle h_FmMac, t_FmMacStatistics *p_Statistics); + +/**************************************************************************//** + @Function FM_MAC_ModifyMacAddr + + @Description Replace the main MAC Address + + @Param[in] h_FmMac - A handle to a FM Module. + @Param[in] p_EnetAddr - Ethernet Mac address + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only after FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_ModifyMacAddr (t_Handle h_FmMac, t_EnetAddr *p_EnetAddr); + +/**************************************************************************//** + @Function FM_MAC_AddHashMacAddr + + @Description Add an Address to the hash table. This is for filter purpose only. + + @Param[in] h_FmMac - A handle to a FM Module. + @Param[in] p_EnetAddr - Ethernet Mac address + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Init(). It is a filter only address. + @Cautions Some address need to be filterd out in upper FM blocks. +*//***************************************************************************/ +t_Error FM_MAC_AddHashMacAddr (t_Handle h_FmMac, t_EnetAddr *p_EnetAddr); + +/**************************************************************************//** + @Function FM_MAC_RemoveHashMacAddr + + @Description Delete an Address to the hash table. This is for filter purpose only. + + @Param[in] h_FmMac - A handle to a FM Module. + @Param[in] p_EnetAddr - Ethernet Mac address + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_RemoveHashMacAddr (t_Handle h_FmMac, t_EnetAddr *p_EnetAddr); + +/**************************************************************************//** + @Function FM_MAC_AddExactMatchMacAddr + + @Description Add a unicast or multicast mac address for exact-match filtering + (8 on dTSEC, 2 for 10G-MAC) + + @Param[in] h_FmMac - A handle to a FM Module. + @Param[in] p_EnetAddr - MAC Address to ADD + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only after FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_AddExactMatchMacAddr (t_Handle h_FmMac, t_EnetAddr *p_EnetAddr); + +/**************************************************************************//** + @Function FM_MAC_RemovelExactMatchMacAddr + + @Description Remove a uni cast or multi cast mac address. + + @Param[in] h_FmMac - A handle to a FM Module. + @Param[in] p_EnetAddr - MAC Address to remove + + @Return E_OK on success; Error code otherwise.. + + @Cautions Allowed only after FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_RemovelExactMatchMacAddr (t_Handle h_FmMac, t_EnetAddr *p_EnetAddr); + +/**************************************************************************//** + @Function FM_MAC_SetPromiscuous + + @Description Enable/Disable MAC Promiscuous mode for ALL mac addresses. + + @Param[in] h_FmMac - A handle to a FM MAC Module. + @Param[in] enable - TRUE to enable or FALSE to disable. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only after FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_SetPromiscuous (t_Handle h_FmMac, bool enable); + +/**************************************************************************//** + @Function FM_MAC_AdjustLink + + @Description Adjusts the Ethernet link with new speed/duplex setup. + + @Param[in] h_FmMac - A handle to a FM Module. + @Param[in] speed - Ethernet speed. + @Param[in] fullDuplex - TRUE for Full-Duplex mode; + FALSE for Half-Duplex mode. + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_MAC_AdjustLink(t_Handle h_FmMac, e_EnetSpeed speed, bool fullDuplex); + +/**************************************************************************//** + @Function FM_MAC_GetId + + @Description Return the MAC ID + + @Param[in] h_FmMac - A handle to a FM Module. + @Param[out] p_MacId - MAC ID of device + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only after FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_GetId (t_Handle h_FmMac, uint32_t *p_MacId); + +/**************************************************************************//** + @Function FM_MAC_GetVesrion + + @Description Return Mac HW chip version + + @Param[in] h_FmMac - A handle to a FM Module. + @Param[out] p_MacVresion - Mac version as defined by the chip + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only after FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_GetVesrion (t_Handle h_FmMac, uint32_t *p_MacVresion); + +/**************************************************************************//** + @Function FM_MAC_MII_WritePhyReg + + @Description Write data into Phy Register + + @Param[in] h_FmMac - A handle to a FM Module. + @Param[in] phyAddr - Phy Address on the MII bus + @Param[in] reg - Register Number. + @Param[in] data - Data to write. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only after FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_MII_WritePhyReg (t_Handle h_FmMac, uint8_t phyAddr, uint8_t reg, uint16_t data); + +/**************************************************************************//** + @Function FM_MAC_MII_ReadPhyReg + + @Description Read data from Phy Register + + @Param[in] h_FmMac - A handle to a FM Module. + @Param[in] phyAddr - Phy Address on the MII bus + @Param[in] reg - Register Number. + @Param[out] p_Data - Data from PHY. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only after FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_MII_ReadPhyReg(t_Handle h_FmMac, uint8_t phyAddr, uint8_t reg, uint16_t *p_Data); + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +/**************************************************************************//** + @Function FM_MAC_DumpRegs + + @Description Dump internal registers + + @Param[in] h_FmMac - A handle to a FM Module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only after FM_MAC_Init(). +*//***************************************************************************/ +t_Error FM_MAC_DumpRegs(t_Handle h_FmMac); +#endif /* (defined(DEBUG_ERRORS) && ... */ + +/** @} */ /* end of FM_mac_runtime_control_grp group */ +/** @} */ /* end of FM_mac_grp group */ +/** @} */ /* end of FM_grp group */ + + + +#endif /* __FM_MAC_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/Peripherals/fm_muram_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/Peripherals/fm_muram_ext.h @@ -0,0 +1,158 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + @File fm_muram_ext.h + + @Description FM MURAM Application Programming Interface. +*//***************************************************************************/ +#ifndef __FM_MURAM_EXT +#define __FM_MURAM_EXT + +#include "error_ext.h" +#include "std_ext.h" + + +/**************************************************************************//** + + @Group FM_grp Frame Manager API + + @Description FM API functions, definitions and enums + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group FM_muram_grp FM MURAM + + @Description FM MURAM API functions, definitions and enums + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group FM_muram_init_grp FM MURAM Initialization + + @Description FM MURAM initialization API functions, definitions and enums + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Function FM_MURAM_ConfigAndInit + + @Description Creates partition in the MURAM. + + The routine returns a handle (descriptor) to the MURAM partition. + This descriptor must be passed as first parameter to all other + FM-MURAM function calls. + + No actual initialization or configuration of FM_MURAM hardware is + done by this routine. + + @Param[in] baseAddress - Pointer to base of memory mapped FM-MURAM. + @Param[in] size - Size of the FM-MURAM partition. + + @Return Handle to FM-MURAM object, or NULL for Failure. +*//***************************************************************************/ +t_Handle FM_MURAM_ConfigAndInit(uintptr_t baseAddress, uint32_t size); + +/**************************************************************************//** + @Function FM_MURAM_Free + + @Description Frees all resources that were assigned to FM-MURAM module. + + Calling this routine invalidates the descriptor. + + @Param[in] h_FmMuram - FM-MURAM module descriptor. + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_MURAM_Free(t_Handle h_FmMuram); + +/** @} */ /* end of FM_muram_init_grp group */ + + +/**************************************************************************//** + @Group FM_muram_ctrl_grp FM MURAM Control + + @Description FM MURAM control API functions, definitions and enums + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Function FM_MURAM_AllocMem + + @Description Allocate some memory from FM-MURAM partition. + + @Param[in] h_FmMuram - FM-MURAM module descriptor. + @Param[in] size - size of the memory to be allocated. + @Param[in] align - Alignment of the memory. + + @Return address of the allocated memory; NULL otherwise. +*//***************************************************************************/ +void * FM_MURAM_AllocMem(t_Handle h_FmMuram, uint32_t size, uint32_t align); + +/**************************************************************************//** + @Function FM_MURAM_AllocMemForce + + @Description Allocate some specific memory from FM-MURAM partition (according + to base). + + @Param[in] h_FmMuram - FM-MURAM module descriptor. + @Param[in] base - the desired base-address to be allocated. + @Param[in] size - size of the memory to be allocated. + + @Return address of the allocated memory; NULL otherwise. +*//***************************************************************************/ +void * FM_MURAM_AllocMemForce(t_Handle h_FmMuram, uint64_t base, uint32_t size); + +/**************************************************************************//** + @Function FM_MURAM_FreeMem + + @Description Free an allocated memory from FM-MURAM partition. + + @Param[in] h_FmMuram - FM-MURAM module descriptor. + @Param[in] ptr - A pointer to an allocated memory. + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_MURAM_FreeMem(t_Handle h_FmMuram, void *ptr); + +/** @} */ /* end of FM_muram_ctrl_grp group */ +/** @} */ /* end of FM_muram_grp group */ +/** @} */ /* end of FM_grp group */ + + + +#endif /* __FM_MURAM_EXT */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/Peripherals/fm_pcd_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/Peripherals/fm_pcd_ext.h @@ -0,0 +1,2160 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + @File fm_pcd_ext.h + + @Description FM PCD ... +*//***************************************************************************/ +#ifndef __FM_PCD_EXT +#define __FM_PCD_EXT + +#include "std_ext.h" +#include "net_ext.h" +#include "list_ext.h" +#include "fm_ext.h" + + +/**************************************************************************//** + + @Group FM_grp Frame Manager API + + @Description FM API functions, definitions and enums + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group FM_PCD_grp FM PCD + + @Description FM PCD API functions, definitions and enums + + The FM PCD module is responsible for the initialization of all + global classifying FM modules. This includes the parser general and + common registers, the key generator global and common registers, + and the Policer global and common registers. + In addition, the FM PCD SW module will initialize all required + key generator schemes, coarse classification flows, and Policer + profiles. When An FM module is configured to work with one of these + entities, it will register to it using the FM PORT API. The PCD + module will manage the PCD resources - i.e. resource management of + Keygen schemes, etc. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Collection General PCD defines +*//***************************************************************************/ +typedef uint32_t fmPcdEngines_t; /**< options as defined below: */ + +#define FM_PCD_NONE 0 /**< No PCD Engine indicated */ +#define FM_PCD_PRS 0x80000000 /**< Parser indicated */ +#define FM_PCD_KG 0x40000000 /**< Keygen indicated */ +#define FM_PCD_CC 0x20000000 /**< Coarse classification indicated */ +#define FM_PCD_PLCR 0x10000000 /**< Policer indicated */ +#define FM_PCD_MANIP 0x08000000 /**< Manipulation indicated */ + +#define FM_PCD_MAX_NUM_OF_PRIVATE_HDRS 2 /**< Number of units/headers saved for user */ + +#define FM_PCD_PRS_NUM_OF_HDRS 16 /**< Number of headers supported by HW parser */ +#define FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS (32 - FM_PCD_MAX_NUM_OF_PRIVATE_HDRS) + /**< number of distinction units is limited by + register size (32), - reserved bits for + private headers. */ + +#define FM_PCD_MAX_NUM_OF_INTERCHANGEABLE_HDRS 4 /**< Maximum number of interchangeable headers in a distinction unit */ +#define FM_PCD_KG_NUM_OF_GENERIC_REGS 8 /**< Total number of generic KG registers */ +#define FM_PCD_KG_MAX_NUM_OF_EXTRACTS_PER_KEY 35 /**< Max number allowed on any configuration. + For reason of HW implementation, in most + cases less than this will be allowed. The + driver will return error in initialization + time if resource is overused. */ +#define FM_PCD_KG_NUM_OF_EXTRACT_MASKS 4 /**< Total number of masks allowed on KG extractions. */ +#define FM_PCD_KG_NUM_OF_DEFAULT_GROUPS 16 /**< Number of default value logical groups */ + +#define FM_PCD_PRS_NUM_OF_LABELS 32 /**< Max number of SW parser label */ +#define FM_PCD_SW_PRS_SIZE 0x00000800 /**< Total size of sw parser area */ +#define FM_PCD_PRS_SW_OFFSET 0x00000040 /**< Size of illegal addresses at the beginning + of the SW parser area */ +#define FM_PCD_PRS_SW_PATCHES_SIZE 0x00000200 /**< Number of bytes saved for patches */ +#define FM_PCD_PRS_SW_TAIL_SIZE 4 /**< Number of bytes that must be cleared at + the end of the SW parser area */ +#define FM_SW_PRS_MAX_IMAGE_SIZE (FM_PCD_SW_PRS_SIZE-FM_PCD_PRS_SW_OFFSET-FM_PCD_PRS_SW_TAIL_SIZE-FM_PCD_PRS_SW_PATCHES_SIZE) + /**< Max possible size of SW parser code */ + +#define FM_PCD_MAX_MANIP_INSRT_TEMPLATE_SIZE 128 /**< Max possible size of insertion template for + insert manipulation*/ +/* @} */ + + +/**************************************************************************//** + @Group FM_PCD_init_grp FM PCD Initialization Unit + + @Description FM PCD Initialization Unit + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description PCD counters +*//***************************************************************************/ +typedef enum e_FmPcdCounters { + e_FM_PCD_KG_COUNTERS_TOTAL, /**< Policer counter */ + e_FM_PCD_PLCR_COUNTERS_YELLOW, /**< Policer counter */ + e_FM_PCD_PLCR_COUNTERS_RED, /**< Policer counter */ + e_FM_PCD_PLCR_COUNTERS_RECOLORED_TO_RED, /**< Policer counter */ + e_FM_PCD_PLCR_COUNTERS_RECOLORED_TO_YELLOW, /**< Policer counter */ + e_FM_PCD_PLCR_COUNTERS_TOTAL, /**< Policer counter */ + e_FM_PCD_PLCR_COUNTERS_LENGTH_MISMATCH, /**< Policer counter */ + e_FM_PCD_PRS_COUNTERS_PARSE_DISPATCH, /**< Parser counter */ + e_FM_PCD_PRS_COUNTERS_L2_PARSE_RESULT_RETURNED, /**< Parser counter */ + e_FM_PCD_PRS_COUNTERS_L3_PARSE_RESULT_RETURNED, /**< Parser counter */ + e_FM_PCD_PRS_COUNTERS_L4_PARSE_RESULT_RETURNED, /**< Parser counter */ + e_FM_PCD_PRS_COUNTERS_SHIM_PARSE_RESULT_RETURNED, /**< Parser counter */ + e_FM_PCD_PRS_COUNTERS_L2_PARSE_RESULT_RETURNED_WITH_ERR, /**< Parser counter */ + e_FM_PCD_PRS_COUNTERS_L3_PARSE_RESULT_RETURNED_WITH_ERR, /**< Parser counter */ + e_FM_PCD_PRS_COUNTERS_L4_PARSE_RESULT_RETURNED_WITH_ERR, /**< Parser counter */ + e_FM_PCD_PRS_COUNTERS_SHIM_PARSE_RESULT_RETURNED_WITH_ERR, /**< Parser counter */ + e_FM_PCD_PRS_COUNTERS_SOFT_PRS_CYCLES, /**< Parser counter */ + e_FM_PCD_PRS_COUNTERS_SOFT_PRS_STALL_CYCLES, /**< Parser counter */ + e_FM_PCD_PRS_COUNTERS_HARD_PRS_CYCLE_INCL_STALL_CYCLES, /**< Parser counter */ + e_FM_PCD_PRS_COUNTERS_MURAM_READ_CYCLES, /**< MURAM counter */ + e_FM_PCD_PRS_COUNTERS_MURAM_READ_STALL_CYCLES, /**< MURAM counter */ + e_FM_PCD_PRS_COUNTERS_MURAM_WRITE_CYCLES, /**< MURAM counter */ + e_FM_PCD_PRS_COUNTERS_MURAM_WRITE_STALL_CYCLES, /**< MURAM counter */ + e_FM_PCD_PRS_COUNTERS_FPM_COMMAND_STALL_CYCLES /**< FPM counter */ +} e_FmPcdCounters; + +/**************************************************************************//** + @Description PCD interrupts +*//***************************************************************************/ +typedef enum e_FmPcdExceptions { + e_FM_PCD_KG_EXCEPTION_DOUBLE_ECC, /**< Keygen ECC error */ + e_FM_PCD_PLCR_EXCEPTION_DOUBLE_ECC, /**< Read Buffer ECC error */ + e_FM_PCD_KG_EXCEPTION_KEYSIZE_OVERFLOW, /**< Write Buffer ECC error on system side */ + e_FM_PCD_PLCR_EXCEPTION_INIT_ENTRY_ERROR, /**< Write Buffer ECC error on FM side */ + e_FM_PCD_PLCR_EXCEPTION_PRAM_SELF_INIT_COMPLETE, /**< Self init complete */ + e_FM_PCD_PLCR_EXCEPTION_ATOMIC_ACTION_COMPLETE, /**< Atomic action complete */ + e_FM_PCD_PRS_EXCEPTION_DOUBLE_ECC, /**< Parser ECC error */ + e_FM_PCD_PRS_EXCEPTION_SINGLE_ECC /**< Parser single ECC */ +} e_FmPcdExceptions; + + +/**************************************************************************//** + @Description Exceptions user callback routine, will be called upon an + exception passing the exception identification. + + @Param[in] h_App - User's application descriptor. + @Param[in] exception - The exception. + *//***************************************************************************/ +typedef void (t_FmPcdExceptionCallback) (t_Handle h_App, e_FmPcdExceptions exception); + +/**************************************************************************//** + @Description Exceptions user callback routine, will be called upon an exception + passing the exception identification. + + @Param[in] h_App - User's application descriptor. + @Param[in] exception - The exception. + @Param[in] index - id of the relevant source (may be scheme or profile id). + *//***************************************************************************/ +typedef void (t_FmPcdIdExceptionCallback) ( t_Handle h_App, + e_FmPcdExceptions exception, + uint16_t index); + +/**************************************************************************//** + @Description A callback for enqueuing frame onto a QM queue. + + @Param[in] h_App - User's application descriptor. + @Param[in] p_Fd - Frame descriptor for the frame. + + @Return E_OK on success; Error code otherwise. + *//***************************************************************************/ +typedef t_Error (t_FmPcdQmEnqueueCallback) (t_Handle h_QmArg, void *p_Fd); + +/**************************************************************************//** + @Description A structure for Host-Command + When using Host command for PCD functionalities, a dedicated port + must be used. If this routine is called for a PCD in a single partition + environment, or it is the Master partition in a Multi partition + environment, The port will be initialized by the PCD driver + initialization routine. + *//***************************************************************************/ +typedef struct t_FmPcdHcParams { + uintptr_t portBaseAddr; /**< Host-Command Port Virtual Address of + memory mapped registers.*/ + uint8_t portId; /**< Host-Command Port Id (0-6 relative + to Host-Command/Offline parsing ports) */ + uint16_t liodnBase; /**< Irrelevant for P4080 rev 1. LIODN base for this port, to be + used together with LIODN offset. */ + uint32_t errFqid; /**< Host-Command Port Error Queue Id. */ + uint32_t confFqid; /**< Host-Command Port Confirmation queue Id. */ + uint32_t qmChannel; /**< Host-Command port - QM-channel dedicated to + this port will be used by the FM for dequeue. */ + t_FmPcdQmEnqueueCallback *f_QmEnqueue; /**< Call back routine for enqueuing a frame to the QM */ + t_Handle h_QmArg; /**< A handle of the QM module */ +} t_FmPcdHcParams; + +/**************************************************************************//** + @Description The main structure for PCD initialization + *//***************************************************************************/ +typedef struct t_FmPcdParams { + bool prsSupport; /**< TRUE if Parser will be used for any + of the FM ports */ + bool ccSupport; /**< TRUE if Coarse Classification will be used for any + of the FM ports */ + bool kgSupport; /**< TRUE if Keygen will be used for any + of the FM ports */ + bool plcrSupport; /**< TRUE if Policer will be used for any + of the FM ports */ + t_Handle h_Fm; /**< A handle to the FM module */ + uint8_t numOfSchemes; /**< Number of schemes dedicated to this partition. */ + bool useHostCommand; /**< Optional for single partition, Mandatory for Multi partition */ + t_FmPcdHcParams hc; /**< Relevant only if useHostCommand=TRUE. + Host Command parameters. */ + + t_FmPcdExceptionCallback *f_Exception; /**< Relevant for master (or single) partition only: Callback routine + to be called of PCD exception */ + t_FmPcdIdExceptionCallback *f_ExceptionId; /**< Relevant for master (or single) partition only: Callback routine + to be used for a single scheme and + profile exceptions */ + t_Handle h_App; /**< Relevant for master (or single) partition only: A handle to an + application layer object; This handle will + be passed by the driver upon calling the above callbacks */ +} t_FmPcdParams; + + +/**************************************************************************//** + @Function FM_PCD_Config + + @Description Basic configuration of the PCD module. + Creates descriptor for the FM PCD module. + + @Param[in] p_FmPcdParams A structure of parameters for the initialization of PCD. + + @Return A handle to the initialized module. +*//***************************************************************************/ +t_Handle FM_PCD_Config(t_FmPcdParams *p_FmPcdParams); + +/**************************************************************************//** + @Function FM_PCD_Init + + @Description Initialization of the PCD module. + + @Param[in] h_FmPcd - FM PCD module descriptor. + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_PCD_Init(t_Handle h_FmPcd); + +/**************************************************************************//** + @Function FM_PCD_Free + + @Description Frees all resources that were assigned to FM module. + + Calling this routine invalidates the descriptor. + + @Param[in] h_FmPcd - FM PCD module descriptor. + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_PCD_Free(t_Handle h_FmPcd); + +/**************************************************************************//** + @Group FM_PCD_advanced_init_grp FM PCD Advanced Configuration Unit + + @Description Configuration functions used to change default values. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Function FM_PCD_ConfigPlcrNumOfSharedProfiles + + @Description Calling this routine changes the internal driver data base + from its default selection of exceptions enablement. + [4]. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] numOfSharedPlcrProfiles Number of profiles to + be shared between ports on this partition + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_PCD_ConfigPlcrNumOfSharedProfiles(t_Handle h_FmPcd, uint16_t numOfSharedPlcrProfiles); + +/**************************************************************************//** + @Function FM_PCD_ConfigException + + @Description Calling this routine changes the internal driver data base + from its default selection of exceptions enablement. + By default all exceptions are enabled. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] exception The exception to be selected. + @Param[in] enable TRUE to enable interrupt, FALSE to mask it. + + @Return E_OK on success; Error code otherwise. + + @Cautions Not available for guest partition. +*//***************************************************************************/ +t_Error FM_PCD_ConfigException(t_Handle h_FmPcd, e_FmPcdExceptions exception, bool enable); + +/**************************************************************************//** + @Function FM_PCD_ConfigPlcrAutoRefreshMode + + @Description Calling this routine changes the internal driver data base + from its default selection of exceptions enablement. + By default autorefresh is enabled. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] enable TRUE to enable, FALSE to disable + + @Return E_OK on success; Error code otherwise. + + @Cautions Not available for guest partition. +*//***************************************************************************/ +t_Error FM_PCD_ConfigPlcrAutoRefreshMode(t_Handle h_FmPcd, bool enable); + +/**************************************************************************//** + @Function FM_PCD_ConfigPrsMaxCycleLimit + + @Description Calling this routine changes the internal data structure for + the maximum parsing time from its default value + [0]. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] value 0 to disable the mechanism, or new + maximum parsing time. + + @Return E_OK on success; Error code otherwise. + + @Cautions Not available for guest partition. +*//***************************************************************************/ +t_Error FM_PCD_ConfigPrsMaxCycleLimit(t_Handle h_FmPcd,uint16_t value); + +/** @} */ /* end of FM_PCD_advanced_init_grp group */ +/** @} */ /* end of FM_PCD_init_grp group */ + + +/**************************************************************************//** + @Group FM_PCD_Runtime_grp FM PCD Runtime Unit + + @Description FM PCD Runtime Unit + + The runtime control allows creation of PCD infrastructure modules + such as Network Environment Characteristics, Classification Plan + Groups and Coarse Classification Trees. + It also allows on-the-fly initialization, modification and removal + of PCD modules such as Keygen schemes, coarse classification nodes + and Policer profiles. + + + In order to explain the programming model of the PCD driver interface + a few terms should be explained, and will be used below. + * Distinction Header - One of the 16 protocols supported by the FM parser, + or one of the shim headers (1 or 2). May be a header with a special + option (see below). + * Interchangeable Headers Group- This is a group of Headers recognized + by either one of them. For example, if in a specific context the user + chooses to treat IPv4 and IPV6 in the same way, they may create an + interchangeable Headers Unit consisting of these 2 headers. + * A Distinction Unit - a Distinction Header or an Interchangeable Headers + Group. + * Header with special option - applies to ethernet, mpls, vlan, ipv4 and + ipv6, includes multicast, broadcast and other protocol specific options. + In terms of hardware it relates to the options available in the classification + plan. + * Network Environment Characteristics - a set of Distinction Units that define + the total recognizable header selection for a certain environment. This is + NOT the list of all headers that will ever appear in a flow, but rather + everything that needs distinction in a flow, where distinction is made by keygen + schemes and coarse classification action descriptors. + + The PCD runtime modules initialization is done in stages. The first stage after + initializing the PCD module itself is to establish a Network Flows Environment + Definition. The application may choose to establish one or more such environments. + Later, when needed, the application will have to state, for some of its modules, + to which single environment it belongs. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description A structure for sw parser labels + *//***************************************************************************/ +typedef struct t_FmPcdPrsLabelParams { + uint32_t instructionOffset; /**< SW parser label instruction offset (2 bytes + resolution), relative to Parser RAM. */ + e_NetHeaderType hdr; /**< The existance of this header will envoke + the sw parser code. */ + uint8_t indexPerHdr; /**< Normally 0, if more than one sw parser + attachments for the same header, use this + index to distinguish between them. */ +} t_FmPcdPrsLabelParams; + +/**************************************************************************//** + @Description A structure for sw parser + *//***************************************************************************/ +typedef struct t_FmPcdPrsSwParams { + bool override; /**< FALSE to invoke a check that nothing else + was loaded to this address, including + internal patches. + TRUE to override any existing code.*/ + uint32_t size; /**< SW parser code size */ + uint16_t base; /**< SW parser base (in instruction counts! + must be larger than 0x20)*/ + uint8_t *p_Code; /**< SW parser code */ + uint32_t swPrsDataParams[FM_PCD_PRS_NUM_OF_HDRS]; + /**< SW parser data (parameters) */ + uint8_t numOfLabels; /**< Number of labels for SW parser. */ + t_FmPcdPrsLabelParams labelsTable[FM_PCD_PRS_NUM_OF_LABELS]; + /**< SW parser labels table, containing + numOfLabels entries */ +} t_FmPcdPrsSwParams; + + +/**************************************************************************//** + @Function FM_PCD_Enable + + @Description This routine should be called after PCD is initialized for enabling all + PCD engines according to their existing configuration. + + @Param[in] h_FmPcd FM PCD module descriptor. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_Init() and when PCD is disabled. +*//***************************************************************************/ +t_Error FM_PCD_Enable(t_Handle h_FmPcd); + +/**************************************************************************//** + @Function FM_PCD_Disable + + @Description This routine may be called when PCD is enabled in order to + disable all PCD engines. It may be called + only when none of the ports in the system are using the PCD. + + @Param[in] h_FmPcd FM PCD module descriptor. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_Init() and when PCD is enabled. +*//***************************************************************************/ +t_Error FM_PCD_Disable(t_Handle h_FmPcd); + + +/**************************************************************************//** + @Function FM_PCD_GetCounter + + @Description Reads one of the FM PCD counters. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] counter The requested counter. + + @Return Counter's current value. + + @Cautions Allowed only following FM_PCD_Init(). + Note that it is user's responsibility to call this routine only + for enabled counters, and there will be no indication if a + disabled counter is accessed. +*//***************************************************************************/ +uint32_t FM_PCD_GetCounter(t_Handle h_FmPcd, e_FmPcdCounters counter); + +/**************************************************************************//** +@Function FM_PCD_PrsLoadSw + +@Description This routine may be called in order to load software parsing code. + + +@Param[in] h_FmPcd FM PCD module descriptor. +@Param[in] p_SwPrs A pointer to a structure of software + parser parameters, including the software + parser image. + +@Return E_OK on success; Error code otherwise. + +@Cautions Allowed only following FM_PCD_Init() and when PCD is disabled. + Not available for guest partition. +*//***************************************************************************/ +t_Error FM_PCD_PrsLoadSw(t_Handle h_FmPcd, t_FmPcdPrsSwParams *p_SwPrs); + +/**************************************************************************//** + @Function FM_PCD_KgSetDfltValue + + @Description Calling this routine sets a global default value to be used + by the keygen when parser does not recognize a required + field/header. + By default default values are 0. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] valueId 0,1 - one of 2 global default values. + @Param[in] value The requested default value. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_Init() and when PCD is disabled. + Not available for guest partition. +*//***************************************************************************/ +t_Error FM_PCD_KgSetDfltValue(t_Handle h_FmPcd, uint8_t valueId, uint32_t value); + +/**************************************************************************//** + @Function FM_PCD_KgSetAdditionalDataAfterParsing + + @Description Calling this routine allows the keygen to access data past + the parser finishing point. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] payloadOffset the number of bytes beyond the parser location. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_Init() and when PCD is disabled. + Not available for guest partition. +*//***************************************************************************/ +t_Error FM_PCD_KgSetAdditionalDataAfterParsing(t_Handle h_FmPcd, uint8_t payloadOffset); + +/**************************************************************************//** + @Function FM_PCD_SetException + + @Description Calling this routine enables/disables PCD interrupts. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] exception The exception to be selected. + @Param[in] enable TRUE to enable interrupt, FALSE to mask it. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). + Not available for guest partition. +*//***************************************************************************/ +t_Error FM_PCD_SetException(t_Handle h_FmPcd, e_FmPcdExceptions exception, bool enable); + +/**************************************************************************//** + @Function FM_PCD_ModifyCounter + + @Description Sets a value to an enabled counter. Use "0" to reset the counter. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] counter The requested counter. + @Param[in] value The requested value to be written into the counter. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). + Not available for guest partition. +*//***************************************************************************/ +t_Error FM_PCD_ModifyCounter(t_Handle h_FmPcd, e_FmPcdCounters counter, uint32_t value); + +/**************************************************************************//** + @Function FM_PCD_SetPlcrStatistics + + @Description This routine may be used to enable/disable policer statistics + counter. By default the statistics is enabled. + + @Param[in] h_FmPcd FM PCD module descriptor + @Param[in] enable TRUE to enable, FALSE to disable. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). + Not available for guest partition. +*//***************************************************************************/ +t_Error FM_PCD_SetPlcrStatistics(t_Handle h_FmPcd, bool enable); + +/**************************************************************************//** + @Function FM_PCD_SetPrsStatistics + + @Description Defines whether to gather parser statistics including all ports. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] enable TRUE to enable, FALSE to disable. + + @Return None + + @Cautions Allowed only following FM_PCD_Init(). + Not available for guest partition. +*//***************************************************************************/ +void FM_PCD_SetPrsStatistics(t_Handle h_FmPcd, bool enable); + +/**************************************************************************//** + @Function FM_PCD_ForceIntr + + @Description Causes an interrupt event on the requested source. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] exception An exception to be forced. + + @Return E_OK on success; Error code if the exception is not enabled, + or is not able to create interrupt. + + @Cautions Allowed only following FM_PCD_Init(). + Not available for guest partition. +*//***************************************************************************/ +t_Error FM_PCD_ForceIntr (t_Handle h_FmPcd, e_FmPcdExceptions exception); + +/**************************************************************************//** + @Function FM_PCD_HcTxConf + + @Description This routine should be called to confirm frames that were + received on the HC confirmation queue. + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] p_Fd Frame descriptor of the received frame. + + @Cautions Allowed only following FM_PCD_Init(). Allowed only if 'useHostCommand' + option was selected in the initialization. +*//***************************************************************************/ +void FM_PCD_HcTxConf(t_Handle h_FmPcd, t_DpaaFD *p_Fd); + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +/**************************************************************************//** + @Function FM_PCD_DumpRegs + + @Description Dumps all PCD registers + + @Param[in] h_FmPcd A handle to an FM PCD Module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Error FM_PCD_DumpRegs(t_Handle h_FmPcd); + +/**************************************************************************//** + @Function FM_PCD_KgDumpRegs + + @Description Dumps all PCD KG registers + + @Param[in] h_FmPcd A handle to an FM PCD Module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Error FM_PCD_KgDumpRegs(t_Handle h_FmPcd); + +/**************************************************************************//** + @Function FM_PCD_PlcrDumpRegs + + @Description Dumps all PCD Plcr registers + + @Param[in] h_FmPcd A handle to an FM PCD Module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Error FM_PCD_PlcrDumpRegs(t_Handle h_FmPcd); + +/**************************************************************************//** + @Function FM_PCD_PlcrProfileDumpRegs + + @Description Dumps all PCD Plcr registers + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] h_Profile A handle to a profile. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Error FM_PCD_PlcrProfileDumpRegs(t_Handle h_FmPcd, t_Handle h_Profile); + +/**************************************************************************//** + @Function FM_PCD_PrsDumpRegs + + @Description Dumps all PCD Prs registers + + @Param[in] h_FmPcd A handle to an FM PCD Module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Error FM_PCD_PrsDumpRegs(t_Handle h_FmPcd); + +/**************************************************************************//** + @Function FM_PCD_HcDumpRegs + + @Description Dumps HC Port registers + + @Param[in] h_FmPcd A handle to an FM PCD Module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Error FM_PCD_HcDumpRegs(t_Handle h_FmPcd); +#endif /* (defined(DEBUG_ERRORS) && ... */ + + + +/**************************************************************************//** + @Group FM_PCD_Runtime_tree_buildgrp FM PCD Tree building Unit + + @Description FM PCD Runtime Unit + + This group contains routines for setting, deleting and modifying + PCD resources, for defining the total PCD tree. + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Collection Definitions of coarse classification + parameters as required by keygen (when coarse classification + is the next engine after this scheme). +*//***************************************************************************/ +#define FM_PCD_MAX_NUM_OF_CC_NODES 255 +#define FM_PCD_MAX_NUM_OF_CC_TREES 8 +#define FM_PCD_MAX_NUM_OF_CC_GROUPS 16 +#define FM_PCD_MAX_NUM_OF_CC_UNITS 4 +#define FM_PCD_MAX_NUM_OF_KEYS 256 +#define FM_PCD_MAX_SIZE_OF_KEY 56 +#define FM_PCD_MAX_NUM_OF_CC_ENTRIES_IN_GRP 16 +/* @} */ + +/**************************************************************************//** + @Collection A set of definitions to allow protocol + special option description. +*//***************************************************************************/ +typedef uint32_t protocolOpt_t; /**< A general type to define a protocol option. */ + +typedef protocolOpt_t ethProtocolOpt_t; /**< Ethernet protocol options. */ +#define ETH_BROADCAST 0x80000000 /**< Ethernet Broadcast. */ +#define ETH_MULTICAST 0x40000000 /**< Ethernet Multicast. */ + +typedef protocolOpt_t vlanProtocolOpt_t; /**< Vlan protocol options. */ +#define VLAN_STACKED 0x20000000 /**< Vlan Stacked. */ + +typedef protocolOpt_t mplsProtocolOpt_t; /**< MPLS protocol options. */ +#define MPLS_STACKED 0x10000000 /**< MPLS Stacked. */ + +typedef protocolOpt_t ipv4ProtocolOpt_t; /**< IPv4 protocol options. */ +#define IPV4_BROADCAST_1 0x08000000 /**< IPv4 Broadcast. */ +#define IPV4_MULTICAST_1 0x04000000 /**< IPv4 Multicast. */ +#define IPV4_UNICAST_2 0x02000000 /**< Tunneled IPv4 - Unicast. */ +#define IPV4_MULTICAST_BROADCAST_2 0x01000000 /**< Tunneled IPv4 - Broadcast/Multicast. */ + +typedef protocolOpt_t ipv6ProtocolOpt_t; /**< IPv6 protocol options. */ +#define IPV6_MULTICAST_1 0x00800000 /**< IPv6 Multicast. */ +#define IPV6_UNICAST_2 0x00400000 /**< Tunneled IPv6 - Unicast. */ +#define IPV6_MULTICAST_2 0x00200000 /**< Tunneled IPv6 - Multicast. */ +/* @} */ + +/**************************************************************************//** + @Description A type used for returning the order of the key extraction. + each value in this array represents the index of the extraction + command as defined by the user in the initialization extraction array. + The valid size of this array is the user define number of extractions + required (also marked by the second '0' in this array). +*//***************************************************************************/ +typedef uint8_t t_FmPcdKgKeyOrder [FM_PCD_KG_MAX_NUM_OF_EXTRACTS_PER_KEY]; + +/**************************************************************************//** + @Description All PCD engines +*//***************************************************************************/ +typedef enum e_FmPcdEngine { + e_FM_PCD_INVALID = 0, /**< Invalid PCD engine indicated*/ + e_FM_PCD_DONE, /**< No PCD Engine indicated */ + e_FM_PCD_KG, /**< Keygen indicated */ + e_FM_PCD_CC, /**< Coarse classification indicated */ + e_FM_PCD_PLCR, /**< Policer indicated */ + e_FM_PCD_PRS /**< Parser indicated */ +} e_FmPcdEngine; + +/**************************************************************************//** + @Description An enum for selecting extraction by header types +*//***************************************************************************/ +typedef enum e_FmPcdExtractByHdrType { + e_FM_PCD_EXTRACT_FROM_HDR, /**< Extract bytes from header */ + e_FM_PCD_EXTRACT_FROM_FIELD, /**< Extract bytes from header field */ + e_FM_PCD_EXTRACT_FULL_FIELD /**< Extract a full field */ +} e_FmPcdExtractByHdrType; + +/**************************************************************************//** + @Description An enum for selecting extraction source + (when it is not the header) +*//***************************************************************************/ +typedef enum e_FmPcdExtractFrom { + e_FM_PCD_EXTRACT_FROM_FRAME_START, /**< KG & CC: Extract from beginning of frame */ + e_FM_PCD_EXTRACT_FROM_DFLT_VALUE, /**< KG only: Extract from a default value */ + e_FM_PCD_EXTRACT_FROM_CURR_END_OF_PARSE, /**< KG only: Extract from the point where parsing had finished */ + e_FM_PCD_EXTRACT_FROM_KEY, /**< CC only: Field where saved KEY */ + e_FM_PCD_EXTRACT_FROM_HASH, /**< CC only: Field where saved HASH */ + e_FM_PCD_EXTRACT_FROM_PARSE_RESULT, /**< KG & CC: Extract from the parser result */ + e_FM_PCD_EXTRACT_FROM_ENQ_FQID, /**< KG & CC: Extract from enqueue FQID */ + e_FM_PCD_EXTRACT_FROM_FLOW_ID /**< CC only: Field where saved Dequeue FQID */ +} e_FmPcdExtractFrom; + +/**************************************************************************//** + @Description An enum for selecting extraction type +*//***************************************************************************/ +typedef enum e_FmPcdExtractType { + e_FM_PCD_EXTRACT_BY_HDR, /**< Extract according to header */ + e_FM_PCD_EXTRACT_NON_HDR, /**< Extract from data that is not the header */ + e_FM_PCD_KG_EXTRACT_PORT_PRIVATE_INFO /**< Extract private info as specified by user */ +} e_FmPcdExtractType; + +/**************************************************************************//** + @Description An enum for selecting a default +*//***************************************************************************/ +typedef enum e_FmPcdKgExtractDfltSelect { + e_FM_PCD_KG_DFLT_GBL_0, /**< Default selection is KG register 0 */ + e_FM_PCD_KG_DFLT_GBL_1, /**< Default selection is KG register 1 */ + e_FM_PCD_KG_DFLT_PRIVATE_0, /**< Default selection is a per scheme register 0 */ + e_FM_PCD_KG_DFLT_PRIVATE_1, /**< Default selection is a per scheme register 1 */ + e_FM_PCD_KG_DFLT_ILLEGAL /**< Illegal selection */ +} e_FmPcdKgExtractDfltSelect; + +/**************************************************************************//** + @Description An enum defining all default groups - + each group shares a default value, one of 4 user + initialized values. +*//***************************************************************************/ +typedef enum e_FmPcdKgKnownFieldsDfltTypes { + e_FM_PCD_KG_MAC_ADDR, /**< MAC Address */ + e_FM_PCD_KG_TCI, /**< TCI field */ + e_FM_PCD_KG_ENET_TYPE, /**< ENET Type */ + e_FM_PCD_KG_PPP_SESSION_ID, /**< PPP Session id */ + e_FM_PCD_KG_PPP_PROTOCOL_ID, /**< PPP Protocol id */ + e_FM_PCD_KG_MPLS_LABEL, /**< MPLS label */ + e_FM_PCD_KG_IP_ADDR, /**< IP addr */ + e_FM_PCD_KG_PROTOCOL_TYPE, /**< Protocol type */ + e_FM_PCD_KG_IP_TOS_TC, /**< TOS or TC */ + e_FM_PCD_KG_IPV6_FLOW_LABEL, /**< IPV6 flow label */ + e_FM_PCD_KG_IPSEC_SPI, /**< IPSEC SPI */ + e_FM_PCD_KG_L4_PORT, /**< L4 Port */ + e_FM_PCD_KG_TCP_FLAG, /**< TCP Flag */ + e_FM_PCD_KG_GENERIC_FROM_DATA, /**< grouping implemented by sw, + any data extraction that is not the full + field described above */ + e_FM_PCD_KG_GENERIC_FROM_DATA_NO_V, /**< grouping implemented by sw, + any data extraction without validation */ + e_FM_PCD_KG_GENERIC_NOT_FROM_DATA /**< grouping implemented by sw, + extraction from parser result or + direct use of default value */ +} e_FmPcdKgKnownFieldsDfltTypes; + +/**************************************************************************//** + @Description enum for defining header index when headers may repeat +*//***************************************************************************/ +typedef enum e_FmPcdHdrIndex { + e_FM_PCD_HDR_INDEX_NONE = 0, /**< used when multiple headers not used, also + to specify regular IP (not tunneled). */ + e_FM_PCD_HDR_INDEX_1, /**< may be used for VLAN, MPLS, tunneled IP */ + e_FM_PCD_HDR_INDEX_2, /**< may be used for MPLS, tunneled IP */ + e_FM_PCD_HDR_INDEX_3, /**< may be used for MPLS */ + e_FM_PCD_HDR_INDEX_LAST = 0xFF /**< may be used for VLAN, MPLS */ +} e_FmPcdHdrIndex; + +/**************************************************************************//** + @Description A structure for selcting the policer profile functional type +*//***************************************************************************/ +typedef enum e_FmPcdProfileTypeSelection { + e_FM_PCD_PLCR_PORT_PRIVATE, /**< Port dedicated profile */ + e_FM_PCD_PLCR_SHARED /**< Shared profile (shared within partition) */ +} e_FmPcdProfileTypeSelection; + +/**************************************************************************//** + @Description A structure for selcting the policer profile algorithem +*//***************************************************************************/ +typedef enum e_FmPcdPlcrAlgorithmSelection { + e_FM_PCD_PLCR_PASS_THROUGH, /**< Policer pass through */ + e_FM_PCD_PLCR_RFC_2698, /**< Policer algorythm RFC 2698 */ + e_FM_PCD_PLCR_RFC_4115 /**< Policer algorythm RFC 4115 */ +} e_FmPcdPlcrAlgorithmSelection; + +/**************************************************************************//** + @Description A structure for selcting the policer profile color mode +*//***************************************************************************/ +typedef enum e_FmPcdPlcrColorMode { + e_FM_PCD_PLCR_COLOR_BLIND, /**< Color blind */ + e_FM_PCD_PLCR_COLOR_AWARE /**< Color aware */ +} e_FmPcdPlcrColorMode; + +/**************************************************************************//** + @Description A structure for selcting the policer profile color functional mode +*//***************************************************************************/ +typedef enum e_FmPcdPlcrColor { + e_FM_PCD_PLCR_GREEN, /**< Green */ + e_FM_PCD_PLCR_YELLOW, /**< Yellow */ + e_FM_PCD_PLCR_RED, /**< Red */ + e_FM_PCD_PLCR_OVERRIDE /**< Color override */ +} e_FmPcdPlcrColor; + +/**************************************************************************//** + @Description A structure for selcting the policer profile packet frame length selector +*//***************************************************************************/ +typedef enum e_FmPcdPlcrFrameLengthSelect { + e_FM_PCD_PLCR_L2_FRM_LEN, /**< L2 frame length */ + e_FM_PCD_PLCR_L3_FRM_LEN, /**< L3 frame length */ + e_FM_PCD_PLCR_L4_FRM_LEN, /**< L4 frame length */ + e_FM_PCD_PLCR_FULL_FRM_LEN /**< Full frame length */ +} e_FmPcdPlcrFrameLengthSelect; + +/**************************************************************************//** + @Description An enum for selecting rollback frame +*//***************************************************************************/ +typedef enum e_FmPcdPlcrRollBackFrameSelect { + e_FM_PCD_PLCR_ROLLBACK_L2_FRM_LEN, /**< Rollback L2 frame length */ + e_FM_PCD_PLCR_ROLLBACK_FULL_FRM_LEN /**< Rollback Full frame length */ +} e_FmPcdPlcrRollBackFrameSelect; + +/**************************************************************************//** + @Description A structure for selcting the policer profile packet or byte mode +*//***************************************************************************/ +typedef enum e_FmPcdPlcrRateMode { + e_FM_PCD_PLCR_BYTE_MODE, /**< Byte mode */ + e_FM_PCD_PLCR_PACKET_MODE /**< Packet mode */ +} e_FmPcdPlcrRateMode; + +/**************************************************************************//** + @Description An enum for defining action of frame +*//***************************************************************************/ +typedef enum e_FmPcdDoneAction { + e_FM_PCD_ENQ_FRAME = 0, /**< Enqueue frame */ + e_FM_PCD_DROP_FRAME /**< Drop frame */ +} e_FmPcdDoneAction; + +/**************************************************************************//** + @Description A structure for selecting the policer counter +*//***************************************************************************/ +typedef enum e_FmPcdPlcrProfileCounters { + e_FM_PCD_PLCR_PROFILE_GREEN_PACKET_TOTAL_COUNTER, /**< Green packets counter */ + e_FM_PCD_PLCR_PROFILE_YELLOW_PACKET_TOTAL_COUNTER, /**< Yellow packets counter */ + e_FM_PCD_PLCR_PROFILE_RED_PACKET_TOTAL_COUNTER, /**< Red packets counter */ + e_FM_PCD_PLCR_PROFILE_RECOLOURED_YELLOW_PACKET_TOTAL_COUNTER, /**< Recolored yellow packets counter */ + e_FM_PCD_PLCR_PROFILE_RECOLOURED_RED_PACKET_TOTAL_COUNTER /**< Recolored red packets counter */ +} e_FmPcdPlcrProfileCounters; + +/**************************************************************************//** + @Description A structure for selecting action +*//***************************************************************************/ +typedef enum e_FmPcdAction { + e_FM_PCD_ACTION_NONE, /**< NONE */ + e_FM_PCD_ACTION_EXACT_MATCH, /**< Exact match on the selected extraction*/ + e_FM_PCD_ACTION_INDEXED_LOOKUP /**< Indexed lookup on the selected extraction*/ +} e_FmPcdAction; + +#if defined(FM_CAPWAP_SUPPORT) +/**************************************************************************//** + @Description An enum for selecting type of insert manipulation +*//***************************************************************************/ +typedef enum e_FmPcdManipInsrtType { + e_FM_PCD_MANIP_INSRT_NONE = 0, /**< No insertion */ + e_FM_PCD_MANIP_INSRT_TO_START_OF_FRAME_INT_FRAME_HDR, /**< Insert internal frame header to start of frame */ + e_FM_PCD_MANIP_INSRT_TO_START_OF_FRAME_TEMPLATE /**< Insert template to start of frame*/ +} e_FmPcdManipInsrtType; + +/**************************************************************************//** + @Description An enum for selecting type of remove manipulation +*//***************************************************************************/ +typedef enum e_FmPcdManipRmvParamsType { + e_FM_PCD_MANIP_RMV_NONE = 0, /**< No remove */ + e_FM_PCD_MANIP_RMV_FROM_START_OF_FRAME_TILL_SPECIFIC_LOCATION, /**< Remove from start of frame till (excluding) specified indication */ + e_FM_PCD_MANIP_RMV_FROM_START_OF_FRAME_INCLUDE_SPECIFIC_LOCATION, /**< Remove from start of frame till (including) specified indication */ + e_FM_PCD_MANIP_RMV_INT_FRAME_HDR /**< Remove internal frame header to start of frame */ +} e_FmPcdManipRmvParamsType; + +/**************************************************************************//** + @Description An enum for selecting type of location +*//***************************************************************************/ +typedef enum e_FmPcdManipLocateType { + e_FM_PCD_MANIP_LOC_BY_HDR = 0, /**< Locate according to header */ + e_FM_PCD_MANIP_LOC_NON_HDR /**< Locate from data that is not the header */ +} e_FmPcdManipLocateType; + +/**************************************************************************//** + @Description An enum for selecting type of Timeout mode +*//***************************************************************************/ +typedef enum e_FmPcdManipReassemTimeOutMode { + e_FM_PCD_MANIP_TIME_OUT_BETWEEN_FRAMES, /**< limits the time of the reassm process from the first frag to the last */ + e_FM_PCD_MANIP_TIME_OUT_BETWEEN_FRAG /**< limits the time of receiving the fragment */ +} e_FmPcdManipReassemTimeOutMode; + +/**************************************************************************//** + @Description An enum for selecting type of WaysNumber mode +*//***************************************************************************/ +typedef enum e_FmPcdManipReassemWaysNumber { + e_FM_PCD_MANIP_ONE_WAY_HASH = 1, /**< -------------- */ + e_FM_PCD_MANIP_TWO_WAYS_HASH, /**< -------------- */ + e_FM_PCD_MANIP_THREE_WAYS_HASH, /**< -------------- */ + e_FM_PCD_MANIP_FOUR_WAYS_HASH, /**< four ways hash */ + e_FM_PCD_MANIP_FIVE_WAYS_HASH, /**< -------------- */ + e_FM_PCD_MANIP_SIX_WAYS_HASH, /**< -------------- */ + e_FM_PCD_MANIP_SEVEN_WAYS_HASH, /**< -------------- */ + e_FM_PCD_MANIP_EIGHT_WAYS_HASH /**< eight ways hash*/ +} e_FmPcdManipReassemWaysNumber; + +/**************************************************************************//** + @Description An enum for selecting type of statistics mode +*//***************************************************************************/ +typedef enum e_FmPcdStatsType { + e_FM_PCD_STATS_PER_FLOWID = 0 /**< type where flowId used as index for getting statistics */ +} e_FmPcdStatsType; + +#endif /* FM_CAPWAP_SUPPORT */ + + +/**************************************************************************//** + @Description A Union of protocol dependent special options +*//***************************************************************************/ +typedef union u_FmPcdHdrProtocolOpt { + ethProtocolOpt_t ethOpt; /**< Ethernet options */ + vlanProtocolOpt_t vlanOpt; /**< Vlan options */ + mplsProtocolOpt_t mplsOpt; /**< MPLS options */ + ipv4ProtocolOpt_t ipv4Opt; /**< IPv4 options */ + ipv6ProtocolOpt_t ipv6Opt; /**< IPv6 options */ +} u_FmPcdHdrProtocolOpt; + +/**************************************************************************//** + @Description A union holding all known protocol fields +*//***************************************************************************/ +typedef union t_FmPcdFields { + headerFieldEth_t eth; /**< eth */ + headerFieldVlan_t vlan; /**< vlan */ + headerFieldLlcSnap_t llcSnap; /**< llcSnap */ + headerFieldPppoe_t pppoe; /**< pppoe */ + headerFieldMpls_t mpls; /**< mpls */ + headerFieldIpv4_t ipv4; /**< ipv4 */ + headerFieldIpv6_t ipv6; /**< ipv6 */ + headerFieldUdp_t udp; /**< udp */ + headerFieldTcp_t tcp; /**< tcp */ + headerFieldSctp_t sctp; /**< sctp */ + headerFieldDccp_t dccp; /**< dccp */ + headerFieldGre_t gre; /**< gre */ + headerFieldMinencap_t minencap; /**< minencap */ + headerFieldIpsecAh_t ipsecAh; /**< ipsecAh */ + headerFieldIpsecEsp_t ipsecEsp; /**< ipsecEsp */ + headerFieldUdpEncapEsp_t udpEncapEsp; /**< udpEncapEsp */ +} t_FmPcdFields; + +/**************************************************************************//** + @Description structure for defining header extraction for key generation +*//***************************************************************************/ +typedef struct t_FmPcdFromHdr { + uint8_t size; /**< Size in byte */ + uint8_t offset; /**< Byte offset */ +} t_FmPcdFromHdr; + +/**************************************************************************//** + @Description structure for defining field extraction for key generation +*//***************************************************************************/ +typedef struct t_FmPcdFromField { + t_FmPcdFields field; /**< Field selection */ + uint8_t size; /**< Size in byte */ + uint8_t offset; /**< Byte offset */ +} t_FmPcdFromField; + +/**************************************************************************//** + @Description A structure of parameters used to define a single network + environment unit. + A unit should be defined if it will later be used by one or + more PCD engines to distinguich between flows. +*//***************************************************************************/ +typedef struct t_FmPcdDistinctionUnit { + struct { + e_NetHeaderType hdr; /**< One of the headers supported by the FM */ + u_FmPcdHdrProtocolOpt opt; /**< only one option !! */ + } hdrs[FM_PCD_MAX_NUM_OF_INTERCHANGEABLE_HDRS]; +} t_FmPcdDistinctionUnit; + +/**************************************************************************//** + @Description A structure of parameters used to define the different + units supported by a specific PCD Network Environment + Characteristics module. Each unit represent + a protocol or a group of protocols that may be used later + by the different PCD engined to distinguich between flows. +*//***************************************************************************/ +typedef struct t_FmPcdNetEnvParams { + uint8_t numOfDistinctionUnits; /**< Number of different units to be identified */ + t_FmPcdDistinctionUnit units[FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS]; /**< An array of numOfDistinctionUnits of the + different units to be identified */ +} t_FmPcdNetEnvParams; + +/**************************************************************************//** + @Description structure for defining a single extraction action + when creating a key +*//***************************************************************************/ +typedef struct t_FmPcdExtractEntry { + e_FmPcdExtractType type; /**< Extraction type select */ + union { + struct { + e_NetHeaderType hdr; /**< Header selection */ + bool ignoreProtocolValidation; + /**< Ignore protocol validation */ + e_FmPcdHdrIndex hdrIndex; /**< Relevant only for MPLS, VLAN and tunneled + IP. Otherwise should be cleared.*/ + e_FmPcdExtractByHdrType type; /**< Header extraction type select */ + union { + t_FmPcdFromHdr fromHdr; /**< Extract bytes from header parameters */ + t_FmPcdFromField fromField; /**< Extract bytes from field parameters*/ + t_FmPcdFields fullField; /**< Extract full filed parameters*/ + } extractByHdrType; + } extractByHdr; /**< used when type = e_FM_PCD_KG_EXTRACT_BY_HDR */ + struct { + e_FmPcdExtractFrom src; /**< Non-header extraction source */ + e_FmPcdAction action; /**< Relevant for CC Only */ + uint16_t icIndxMask; /**< Relevant only for CC where + action=e_FM_PCD_ACTION_INDEXED_LOOKUP */ + uint8_t offset; /**< Byte offset */ + uint8_t size; /**< Size in byte */ + } extractNonHdr; /**< used when type = e_FM_PCD_KG_EXTRACT_NON_HDR */ + }; +} t_FmPcdExtractEntry; + +/**************************************************************************//** + @Description A structure for defining masks for each extracted + field in the key. +*//***************************************************************************/ +typedef struct t_FmPcdKgExtractMask { + uint8_t extractArrayIndex; /**< Index in the extraction array, as initialized by user */ + uint8_t offset; /**< Byte offset */ + uint8_t mask; /**< A byte mask (selected bits will be used) */ +} t_FmPcdKgExtractMask; + +/**************************************************************************//** + @Description A structure for defining default selection per groups + of fields +*//***************************************************************************/ +typedef struct t_FmPcdKgExtractDflt { + e_FmPcdKgKnownFieldsDfltTypes type; /**< Default type select*/ + e_FmPcdKgExtractDfltSelect dfltSelect; /**< Default register select */ +} t_FmPcdKgExtractDflt; + +/**************************************************************************//** + @Description A structure for defining all parameters needed for + generation a key and using a hash function +*//***************************************************************************/ +typedef struct t_FmPcdKgKeyExtractAndHashParams { + uint32_t privateDflt0; /**< Scheme default register 0 */ + uint32_t privateDflt1; /**< Scheme default register 1 */ + uint8_t numOfUsedExtracts; /**< defines the valid size of the following array */ + t_FmPcdExtractEntry extractArray [FM_PCD_KG_MAX_NUM_OF_EXTRACTS_PER_KEY]; /**< An array of extractions definition. */ + uint8_t numOfUsedDflts; /**< defines the valid size of the following array */ + t_FmPcdKgExtractDflt dflts[FM_PCD_KG_NUM_OF_DEFAULT_GROUPS]; + /**< For each extraction used in this scheme, specify the required + default register to be used when header is not found. + types not specified in this array will get undefined value. */ + uint8_t numOfUsedMasks; /**< defines the valid size of the following array */ + t_FmPcdKgExtractMask masks[FM_PCD_KG_NUM_OF_EXTRACT_MASKS]; + uint8_t hashShift; /**< hash result right shift. Select the 24 bits out of the 64 hash + result. 0 means using the 24 LSB's, otherwise use the + 24 LSB's after shifting right.*/ + uint32_t hashDistributionNumOfFqids; /**< must be > 1 and a power of 2. Represents the range + of queues for the key and hash functionality */ + uint8_t hashDistributionFqidsShift; /**< selects the FQID bits that will be effected by the hash */ + bool symmetricHash; /**< TRUE to generate the same hash for frames with swapped source and + destination fields on all layers; If TRUE, driver will check that for + all layers, if SRC extraction is selected, DST extraction must also be + selected, and vice versa. */ +} t_FmPcdKgKeyExtractAndHashParams; + +/**************************************************************************//** + @Description A structure of parameters for defining a single + Fqid mask (extracted OR). +*//***************************************************************************/ +typedef struct t_FmPcdKgExtractedOrParams { + e_FmPcdExtractType type; /**< Extraction type select */ + union { + struct { /**< used when type = e_FM_PCD_KG_EXTRACT_BY_HDR */ + e_NetHeaderType hdr; + e_FmPcdHdrIndex hdrIndex; /**< Relevant only for MPLS, VLAN and tunneled + IP. Otherwise should be cleared.*/ + bool ignoreProtocolValidation; + /**< continue extraction even if protocol is not recognized */ + } extractByHdr; + e_FmPcdExtractFrom src; /**< used when type = e_FM_PCD_KG_EXTRACT_NON_HDR */ + }; + uint8_t extractionOffset; /**< Offset for extraction (in bytes). */ + e_FmPcdKgExtractDfltSelect dfltValue; /**< Select register from which extraction is taken if + field not found */ + uint8_t mask; /**< Extraction mask (specified bits are used) */ + uint8_t bitOffsetInFqid; /**< 0-31, Selects which bits of the 24 FQID bits to effect using + the extracted byte; Assume byte is placed as the 8 MSB's in + a 32 bit word where the lower bits + are the FQID; i.e if bitOffsetInFqid=1 than its LSB + will effect the FQID MSB, if bitOffsetInFqid=24 than the + extracted byte will effect the 8 LSB's of the FQID, + if bitOffsetInFqid=31 than the byte's MSB will effect + the FQID's LSB; 0 means - no effect on FQID; + Note that one, and only one of + bitOffsetInFqid or bitOffsetInPlcrProfile must be set (i.e, + extracted byte must effect either FQID or Policer profile).*/ + uint8_t bitOffsetInPlcrProfile; + /**< 0-15, Selects which bits of the 8 policer profile id bits to + effect using the extracted byte; Assume byte is placed + as the 8 MSB's in a 16 bit word where the lower bits + are the policer profile id; i.e if bitOffsetInPlcrProfile=1 + than its LSB will effect the profile MSB, if bitOffsetInFqid=8 + than the extracted byte will effect the whole policer profile id, + if bitOffsetInFqid=15 than the byte's MSB will effect + the Policer Profile id's LSB; + 0 means - no effect on policer profile; Note that one, and only one of + bitOffsetInFqid or bitOffsetInPlcrProfile must be set (i.e, + extracted byte must effect either FQID or Policer profile).*/ +} t_FmPcdKgExtractedOrParams; + +/**************************************************************************//** + @Description A structure for configuring scheme counter +*//***************************************************************************/ +typedef struct t_FmPcdKgSchemeCounter { + bool update; /**< FALSE to keep the current counter state + and continue from that point, TRUE to update/reset + the counter when the scheme is written. */ + uint32_t value; /**< If update=TRUE, this value will be written into the + counter. clear this field to reset the counter. */ +} t_FmPcdKgSchemeCounter; + +/**************************************************************************//** + @Description A structure for defining policer profile + parameters as required by keygen (when policer + is the next engine after this scheme). +*//***************************************************************************/ +typedef struct t_FmPcdKgPlcrProfile { + bool sharedProfile; /**< TRUE if this profile is shared between ports + (i.e. managed by master partition) May not be TRUE + if profile is after Coarse Classification*/ + bool direct; /**< if TRUE, directRelativeProfileId only selects the profile + id, if FALSE fqidOffsetRelativeProfileIdBase is used + together with fqidOffsetShift and numOfProfiles + parameters, to define a range of profiles from + which the keygen result will determine the + destination policer profile. */ + union { + uint16_t directRelativeProfileId; /**< Used if 'direct' is TRUE, to select policer profile. + This parameter should + indicate the policer profile offset within the port's + policer profiles or SHARED window. */ + struct { + uint8_t fqidOffsetShift; /**< shift of KG results without the qid base */ + uint8_t fqidOffsetRelativeProfileIdBase; + /**< OR of KG results without the qid base + This parameter should indicate the policer profile + offset within the port's policer profiles window or + SHARED window depends on sharedProfile */ + uint8_t numOfProfiles; /**< Range of profiles starting at base */ + } indirectProfile; + } profileSelect; +} t_FmPcdKgPlcrProfile; + +/**************************************************************************//** + @Description A structure for CC parameters if CC is the next engine after KG +*//***************************************************************************/ +typedef struct t_FmPcdKgCc { + t_Handle h_CcTree; /**< A handle to a CC Tree */ + uint8_t grpId; /**< CC group id within the CC tree */ + bool plcrNext; /**< TRUE if after CC, in case of data frame, + policing is required. */ + bool bypassPlcrProfileGeneration; + /**< TRUE to bypass keygen policer profile + generation (profile selected is the one selected at + port initialization). */ + t_FmPcdKgPlcrProfile plcrProfile; /**< only if plcrNext=TRUE and bypassPlcrProfileGeneration=FALSE */ +} t_FmPcdKgCc; + +/**************************************************************************//** + @Description A structure for initializing a keygen single scheme +*//***************************************************************************/ +typedef struct t_FmPcdKgSchemeParams { + bool modify; /**< TRUE to change an existing scheme */ + union + { + uint8_t relativeSchemeId; /**< if modify=FALSE:Partition relative scheme id */ + t_Handle h_Scheme; /**< if modify=TRUE: a handle of the existing scheme */ + }id; + bool alwaysDirect; /**< This scheme is reached only directly, i.e. no need for match vector. Keygen will ignore + it when matching */ + struct { /**< HL Relevant only if alwaysDirect = FALSE */ + t_Handle h_NetEnv; /**< A handle to the Network environment as returned + by FM_PCD_SetNetEnvCharacteristics() */ + uint8_t numOfDistinctionUnits; /**< Number of netenv units listed in unitIds array */ + uint8_t unitIds[FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS]; + /**< Indexes as passed to SetNetEnvCharacteristics array*/ + } netEnvParams; + bool useHash; /**< use the KG Hash functionality */ + t_FmPcdKgKeyExtractAndHashParams keyExtractAndHashParams; + /**< used only if useHash = TRUE */ + bool bypassFqidGeneration; /**< Normally - FALSE, TRUE to avoid FQID update in the IC; + In such a case FQID after KG will be the default FQID + defined for the relevant port, or the FQID defined by CC + in cases where CC was the previous engine. */ + uint32_t baseFqid; /**< Base FQID; Relevant only if bypassFqidGeneration = FALSE; + If hash is used and an even distribution is expected + according to hashDistributionNumOfFqids, baseFqid must be aligned to + hashDistributionNumOfFqids. */ + uint8_t numOfUsedExtractedOrs; /**< Number of Fqid masks listed in extractedOrs array*/ + t_FmPcdKgExtractedOrParams extractedOrs[FM_PCD_KG_NUM_OF_GENERIC_REGS]; + /**< IN: FM_PCD_KG_NUM_OF_GENERIC_REGS + registers are shared between qidMasks + functionality and some of the extraction + actions; Normally only some will be used + for qidMask. Driver will return error if + resource is full at initialization time. */ + e_FmPcdEngine nextEngine; /**< may be BMI, PLCR or CC */ + union { /**< depends on nextEngine */ + e_FmPcdDoneAction doneAction; /**< Used when next engine is BMI (done) */ + t_FmPcdKgPlcrProfile plcrProfile; /**< Used when next engine is PLCR */ + t_FmPcdKgCc cc; /**< Used when next engine is CC */ + } kgNextEngineParams; + t_FmPcdKgSchemeCounter schemeCounter; /**< A structure of parameters for updating + the scheme counter */ +} t_FmPcdKgSchemeParams; + +/**************************************************************************//** + @Description A structure for defining CC params when CC is the + next engine after a CC node. +*//***************************************************************************/ +typedef struct t_FmPcdCcNextCcParams { + t_Handle h_CcNode; /**< A handle of the next CC node */ +} t_FmPcdCcNextCcParams; + +/**************************************************************************//** + @Description A structure for defining PLCR params when PLCR is the + next engine after a CC node. +*//***************************************************************************/ +typedef struct t_FmPcdCcNextPlcrParams { + bool overrideParams; /**< TRUE if CC override previously decided parameters*/ + bool sharedProfile; /**< Relevant only if overrideParams=TRUE: + TRUE if this profile is shared between ports */ + uint16_t newRelativeProfileId; /**< Relevant only if overrideParams=TRUE: + (otherwise profile id is taken from keygen); + This parameter should indicate the policer + profile offset within the port's + policer profiles or from SHARED window.*/ + uint32_t newFqid; /**< Relevant only if overrideParams=TRUE: + FQID for enqueuing the frame; + In earlier chips if policer next engine is KEYGEN, + this parameter can be 0, because the KEYGEN + always decides the enqueue FQID.*/ + bool statisticsEn; /**< In the case of TRUE Statistic counter is + incremented for each received frame passed through + this Coarse Classification entry.*/ +} t_FmPcdCcNextPlcrParams; + +/**************************************************************************//** + @Description A structure for defining enqueue params when BMI is the + next engine after a CC node. +*//***************************************************************************/ +typedef struct t_FmPcdCcNextEnqueueParams { + + e_FmPcdDoneAction action; /**< Action - when next engine is BMI (done) */ + bool overrideFqid; /**< TRUE if CC override previously decided Fqid(by Keygen), + relevant if action = e_FM_PCD_ENQ_FRAME */ + uint32_t newFqid; /**< Valid if overrideFqid=TRUE, FQID for enqueuing the frame + (otherwise FQID is taken from keygen), + relevant if action = e_FM_PCD_ENQ_FRAME*/ + bool statisticsEn; /**< In the case of TRUE Statistic counter is + incremented for each received frame passed through + this Coarse Classification entry.*/ +} t_FmPcdCcNextEnqueueParams; + +/**************************************************************************//** + @Description A structure for defining KG params when KG is the + next engine after a CC node. +*//***************************************************************************/ +typedef struct t_FmPcdCcNextKgParams { + bool overrideFqid; /**< TRUE if CC override previously decided Fqid (by keygen), + Note - this parameters irrelevant for earlier chips*/ + uint32_t newFqid; /**< Valid if overrideFqid=TRUE, FQID for enqueuing the frame + (otherwise FQID is taken from keygen), + Note - this parameters irrelevant for earlier chips*/ + t_Handle h_DirectScheme; /**< Direct scheme handle to go to. */ + bool statisticsEn; /**< In the case of TRUE Statistic counter is + incremented for each received frame passed through + this Coarse Classification entry.*/ +} t_FmPcdCcNextKgParams; + +/**************************************************************************//** + @Description A structure for defining next engine params after a CC node. +*//***************************************************************************/ +typedef struct t_FmPcdCcNextEngineParams { + e_FmPcdEngine nextEngine; /**< User has to initialize parameters + according to nextEngine definition */ + union { + t_FmPcdCcNextCcParams ccParams; /**< Parameters in case next engine is CC */ + t_FmPcdCcNextPlcrParams plcrParams; /**< Parameters in case next engine is PLCR */ + t_FmPcdCcNextEnqueueParams enqueueParams; /**< Parameters in case next engine is BMI */ + t_FmPcdCcNextKgParams kgParams; /**< Parameters in case next engine is KG */ + } params; +#if defined(FM_CAPWAP_SUPPORT) + t_Handle h_Manip; /**< Handler to headerManip. + Relevant if next engine of the type result + (e_FM_PCD_PLCR, e_FM_PCD_KG, e_FM_PCD_DONE) */ +#endif /* defined(FM_CAPWAP_SUPPORT) || ... */ +} t_FmPcdCcNextEngineParams; + +/**************************************************************************//** + @Description A structure for defining a single CC Key parameters +*//***************************************************************************/ +typedef struct t_FmPcdCcKeyParams { + uint8_t *p_Key; /**< pointer to the key of the size defined in keySize*/ + uint8_t *p_Mask; /**< pointer to the Mask per key of the size defined + in keySize. p_Key and p_Mask (if defined) has to be + of the same size defined in the keySize */ + t_FmPcdCcNextEngineParams ccNextEngineParams; + /**< parameters for the next for the defined Key in + the p_Key */ +} t_FmPcdCcKeyParams; + +/**************************************************************************//** + @Description A structure for defining CC Keys parameters +*//***************************************************************************/ +typedef struct t_KeysParams { + uint8_t numOfKeys; /**< Number Of relevant Keys */ + uint8_t keySize; /**< size of the key - in the case of the extraction of + the type FULL_FIELD keySize has to be as standard size of the relevant + key. In the another type of extraction keySize has to be as size of extraction. + In the case of action = e_FM_PCD_ACTION_INDEXED_LOOKUP the size of keySize has to be 2*/ + t_FmPcdCcKeyParams keyParams[FM_PCD_MAX_NUM_OF_KEYS]; + /**< it's array with numOfKeys entries each entry in + the array of the type t_FmPcdCcKeyParams */ + t_FmPcdCcNextEngineParams ccNextEngineParamsForMiss; + /**< parameters for the next step of + unfound (or undefined) key . Not relevant in the case + of action = e_FM_PCD_ACTION_INDEXED_LOOKUP*/ +} t_KeysParams; + +/**************************************************************************//** + @Description A structure for defining the CC node params +*//***************************************************************************/ +typedef struct t_FmPcdCcNodeParams { + t_FmPcdExtractEntry extractCcParams; /**< params which defines extraction parameters */ + t_KeysParams keysParams; /**< params which defines Keys parameters of the + extraction defined in extractCcParams */ +} t_FmPcdCcNodeParams; + +/**************************************************************************//** + @Description A structure for defining each CC tree group in term of + NetEnv units and the action to be taken in each case. + the unitIds list must be in order from lower to higher indexes. + + t_FmPcdCcNextEngineParams is a list of 2^numOfDistinctionUnits + structures where each defines the next action to be taken for + each units combination. for example: + numOfDistinctionUnits = 2 + unitIds = {1,3} + p_NextEnginePerEntriesInGrp[0] = t_FmPcdCcNextEngineParams for the case that + unit 1 - not found; unit 3 - not found; + p_NextEnginePerEntriesInGrp[1] = t_FmPcdCcNextEngineParams for the case that + unit 1 - not found; unit 3 - found; + p_NextEnginePerEntriesInGrp[2] = t_FmPcdCcNextEngineParams for the case that + unit 1 - found; unit 3 - not found; + p_NextEnginePerEntriesInGrp[3] = t_FmPcdCcNextEngineParams for the case that + unit 1 - found; unit 3 - found; +*//***************************************************************************/ +typedef struct t_FmPcdCcGrpParams { + uint8_t numOfDistinctionUnits; /**< up to 4 */ + uint8_t unitIds[FM_PCD_MAX_NUM_OF_CC_UNITS]; + /**< Indexes of the units as defined in + FM_PCD_SetNetEnvCharacteristics() */ + t_FmPcdCcNextEngineParams nextEnginePerEntriesInGrp[FM_PCD_MAX_NUM_OF_CC_ENTRIES_IN_GRP]; + /**< Max size is 16 - if only one group used */ +} t_FmPcdCcGrpParams; + +/**************************************************************************//** + @Description A structure for defining the CC tree groups +*//***************************************************************************/ +typedef struct t_FmPcdCcTreeParams { + t_Handle h_NetEnv; /**< A handle to the Network environment as returned + by FM_PCD_SetNetEnvCharacteristics() */ + uint8_t numOfGrps; /**< Number of CC groups within the CC tree */ + t_FmPcdCcGrpParams ccGrpParams[FM_PCD_MAX_NUM_OF_CC_GROUPS]; /**< Parameters for each group. */ +} t_FmPcdCcTreeParams; + +/**************************************************************************//** + @Description A structure for defining parameters for byte rate +*//***************************************************************************/ +typedef struct t_FmPcdPlcrByteRateModeParams { + e_FmPcdPlcrFrameLengthSelect frameLengthSelection; /**< Frame length selection */ + e_FmPcdPlcrRollBackFrameSelect rollBackFrameSelection; /**< relevant option only e_FM_PCD_PLCR_L2_FRM_LEN, + e_FM_PCD_PLCR_FULL_FRM_LEN */ +} t_FmPcdPlcrByteRateModeParams; + +/**************************************************************************//** + @Description A structure for selcting the policer profile RFC-2698 or + RFC-4115 parameters +*//***************************************************************************/ +typedef struct t_FmPcdPlcrNonPassthroughAlgParams { + e_FmPcdPlcrRateMode rateMode; /**< Byte / Packet */ + t_FmPcdPlcrByteRateModeParams byteModeParams; /**< Valid for Byte NULL for Packet */ + uint32_t comittedInfoRate; /**< KBits/Sec or Packets/Sec */ + uint32_t comittedBurstSize; /**< Bytes/Packets */ + uint32_t peakOrAccessiveInfoRate; /**< KBits/Sec or Packets/Sec */ + uint32_t peakOrAccessiveBurstSize; /**< Bytes/Packets */ +} t_FmPcdPlcrNonPassthroughAlgParams; + +/**************************************************************************//** + @Description A union for defining Policer next engine parameters +*//***************************************************************************/ +typedef union u_FmPcdPlcrNextEngineParams { + e_FmPcdDoneAction action; /**< Action - when next engine is BMI (done) */ + t_Handle h_Profile; /**< Policer profile handle - used when next engine + is PLCR, must be a SHARED profile */ + t_Handle h_DirectScheme; /**< Direct scheme select - when next engine is Keygen */ +} u_FmPcdPlcrNextEngineParams; + +/**************************************************************************//** + @Description A structure for selecting the policer profile entry parameters +*//***************************************************************************/ +typedef struct t_FmPcdPlcrProfileParams { + bool modify; /**< TRUE to change an existing profile */ + union { + struct { + e_FmPcdProfileTypeSelection profileType; /**< Type of policer profile */ + t_Handle h_FmPort; /**< Relevant for per-port profiles only */ + uint16_t relativeProfileId; /**< Profile id - relative to shared group or to port */ + } newParams; /**< use it when modify=FALSE */ + t_Handle h_Profile; /**< A handle to a profile - use it when modify=TRUE */ + } id; + e_FmPcdPlcrAlgorithmSelection algSelection; /**< Profile Algorithm PASS_THROUGH, RFC_2698, RFC_4115 */ + e_FmPcdPlcrColorMode colorMode; /**< COLOR_BLIND, COLOR_AWARE */ + + union { + e_FmPcdPlcrColor dfltColor; /**< For Color-Blind Pass-Through mode. the policer will re-color + any incoming packet with the default value. */ + e_FmPcdPlcrColor override; /**< For Color-Aware modes. The profile response to a + pre-color value of 2'b11. */ + } color; + + t_FmPcdPlcrNonPassthroughAlgParams nonPassthroughAlgParams; /**< RFC2698 or RFC4115 params */ + + e_FmPcdEngine nextEngineOnGreen; /**< Green next engine type */ + u_FmPcdPlcrNextEngineParams paramsOnGreen; /**< Green next engine params */ + + e_FmPcdEngine nextEngineOnYellow; /**< Yellow next engine type */ + u_FmPcdPlcrNextEngineParams paramsOnYellow; /**< Yellow next engine params */ + + e_FmPcdEngine nextEngineOnRed; /**< Red next engine type */ + u_FmPcdPlcrNextEngineParams paramsOnRed; /**< Red next engine params */ + + bool trapProfileOnFlowA; /**< Trap on flow A */ + bool trapProfileOnFlowB; /**< Trap on flow B */ + bool trapProfileOnFlowC; /**< Trap on flow C */ +} t_FmPcdPlcrProfileParams; + +#if defined(FM_CAPWAP_SUPPORT) +/**************************************************************************//** + @Description A structure for selecting the location of manipulation +*//***************************************************************************/ +typedef struct t_FmPcdManipLocationParams { + e_FmPcdManipLocateType type; /**< location of manipulation type select */ + struct { /**< used when type = e_FM_PCD_MANIP_BY_HDR */ + e_NetHeaderType hdr; /**< Header selection */ + e_FmPcdHdrIndex hdrIndex; /**< Relevant only for MPLS, VLAN and tunneled + IP. Otherwise should be cleared. */ + bool byField; /**< TRUE if the location of manipulation is according to some field in the specific header*/ + t_FmPcdFields fullField; /**< Relevant only when byField = TRUE: Extract field */ + } manipByHdr; +} t_FmPcdManipLocationParams; + +/**************************************************************************//** + @Description structure for defining insert manipulation + of the type e_FM_PCD_MANIP_INSRT_TO_START_OF_FRAME_TEMPLATE +*//***************************************************************************/ +typedef struct t_FmPcdManipInsrtByTemplateParams { + uint8_t size; /**< size of insert template to the start of the frame. */ + uint8_t hdrTemplate[FM_PCD_MAX_MANIP_INSRT_TEMPLATE_SIZE]; + /**< array of the insertion template. */ + + bool modifyOuterIp; /**< TRUE if user want to modify some fields in outer IP. */ + struct { + uint16_t ipOuterOffset; /**< offset of outer IP in the insert template, relevant if modifyOuterIp = TRUE.*/ + uint16_t dscpEcn; /**< value of dscpEcn in IP outer, relevant if modifyOuterIp = TRUE. + in IPV4 dscpEcn only byte - it has to be adjusted to the right*/ + bool udpPresent; /**< TRUE if UDP is present in the insert template, relevant if modifyOuterIp = TRUE.*/ + uint8_t udpOffset; /**< offset in the insert template of UDP, relevant if modifyOuterIp = TRUE and udpPresent=TRUE.*/ + uint8_t ipIdentGenId; /**< Used by FMan-CTRL to calculate IP-identification field,relevant if modifyOuterIp = TRUE.*/ + bool recalculateLength; /**< TRUE if recalculate length has to be performed due to the engines in the path which can change the frame later, relevant if modifyOuterIp = TRUE.*/ + struct { + uint8_t blockSize; /**< The CAAM block-size; Used by FMan-CTRL to calculate the IP-total-len field.*/ + uint8_t extraBytesAddedAlignedToBlockSize; /**< Used by FMan-CTRL to calculate the IP-total-len field and UDP length*/ + uint8_t extraBytesAddedNotAlignedToBlockSize;/**< Used by FMan-CTRL to calculate the IP-total-len field and UDP length.*/ + } recalculateLengthParams; /**< recalculate length parameters - relevant if modifyOuterIp = TRUE and recalculateLength = TRUE */ + } modifyOuterIpParams; /**< Outer IP modification parameters - ignored if modifyOuterIp is FALSE */ + + bool modifyOuterVlan; /**< TRUE if user wants to modify vpri field in the outer VLAN header*/ + struct { + uint8_t vpri; /**< value of vpri, relevant if modifyOuterVlan = TRUE + vpri only 3 bits, it has to be adjusted to the right*/ + } modifyOuterVlanParams; +} t_FmPcdManipInsrtByTemplateParams; +#endif /* defined(FM_CAPWAP_SUPPORT) || ... */ + + +#ifdef FM_CAPWAP_SUPPORT +/**************************************************************************//** + @Description structure for defining CAPWAP fragmentation +*//***************************************************************************/ +typedef struct t_CapwapFragmentationParams { + uint16_t sizeForFragmentation; /**< if length of the frame is greater than this value, CAPWAP fragmentation will be executed.*/ + bool headerOptionsCompr; /**< TRUE - first fragment include the CAPWAP header options field, + and all other fragments exclude the CAPWAP options field, + FALSE - all fragments include CAPWAP header options field. */ +} t_CapwapFragmentationParams; + +/**************************************************************************//** + @Description structure for defining CAPWAP Re-assembly +*//***************************************************************************/ +typedef struct t_CapwapReassemblyParams { + uint16_t maxNumFramesInProcess; /**< Number of frames which can be processed by Reassembly in the same time. + It has to be power of 2. + In the case numOfFramesPerHashEntry == e_FM_PCD_MANIP_FOUR_WAYS_HASH, + maxNumFramesInProcess has to be in the range of 4 - 512, + In the case numOfFramesPerHashEntry == e_FM_PCD_MANIP_EIGHT_WAYS_HASH, + maxNumFramesInProcess has to be in the range of 8 - 2048 */ + bool haltOnDuplicationFrag; /**< In the case of TRUE, Reassembly process halted due to duplicated fragment, + and all processed fragments passed for enqueue with error indication. + In the case of FALSE, only duplicated fragment passed for enqueue with error indication */ + + e_FmPcdManipReassemTimeOutMode timeOutMode; /**< Expiration delay initialized by Reassembly process */ + uint32_t fqidForTimeOutFrames; /**< Fqid in which time out frames will enqueue during Time Out Process */ + uint32_t timeoutRoutineRequestTime; + /**< Represents the time interval in microseconds between consecutive + timeout routine requests It has to be power of 2. */ + uint32_t timeoutThresholdForReassmProcess; + /**< Represents the time interval in microseconds which defines + if opened frame (at least one fragment was processed but not all the fragments)is found as too old*/ + + e_FmPcdManipReassemWaysNumber numOfFramesPerHashEntry;/**< Number of frames per hash entry needed for reassembly process */ +} t_CapwapReassemblyParams; +#endif /* FM_CAPWAP_SUPPORT */ + + +#if defined(FM_CAPWAP_SUPPORT) +/**************************************************************************//** + @Description structure for defining fragmentation/reassembly +*//***************************************************************************/ +typedef struct t_FmPcdManipFragOrReasmParams { + bool frag; /**< TRUE if using the structure for fragmentation, + otherwise this structure is used for reassembly */ + uint8_t extBufPoolIndx; /**< Index of the buffer pool ID which was configured for port + and can be used for manipulation; + NOTE: This field is relevant only for CAPWAP fragmentation + and reassembly */ + e_NetHeaderType hdr; /**< Header selection */ + union { +#ifdef FM_CAPWAP_SUPPORT + t_CapwapFragmentationParams capwapFragParams; /**< Structure for CAPWAP fragmentation, relevant if frag = TRUE, hdr = HEADER_TYPE_CAPWAP */ + t_CapwapReassemblyParams capwapReasmParams; /**< Structure for CAPWAP reassembly, relevant if frag = FALSE, hdr = HEADER_TYPE_CAPWAP */ +#endif /* FM_CAPWAP_SUPPORT */ + }; +} t_FmPcdManipFragOrReasmParams; + +/**************************************************************************//** + @Description structure for defining insert manipulation +*//***************************************************************************/ +typedef struct t_FmPcdManipInsrtParams { + e_FmPcdManipInsrtType type; /**< Type of insert manipulation */ + union { + t_FmPcdManipInsrtByTemplateParams insrtByTemplateParams; + /**< parameters for insert manipulation, relevant if + type = e_FM_PCD_MANIP_INSRT_TO_START_OF_FRAME_TEMPLATE */ + }; +} t_FmPcdManipInsrtParams; + +/**************************************************************************//** + @Description structure for defining remove manipulation +*//***************************************************************************/ +typedef struct t_FmPcdManipRmvParams { + e_FmPcdManipRmvParamsType type; /**< Type of remove manipulation */ + t_FmPcdManipLocationParams rmvSpecificLocationParams; + /**< Specified location of remove manipulation; + This params should be initialized in cases: + - e_FM_PCD_MANIP_RMV_FROM_START_OF_FRAME_TILL_SPECIFIC_LOCATION + - e_FM_PCD_MANIP_RMV_FROM_START_OF_FRAME_INCLUDE_SPECIFIC_LOCATION */ +} t_FmPcdManipRmvParams; + +/**************************************************************************//** + @Description structure for defining manipulation +*//***************************************************************************/ +typedef struct t_FmPcdManipParams { + bool rmv; /**< TRUE, if defined remove manipulation */ + t_FmPcdManipRmvParams rmvParams; /**< Parameters for remove manipulation, relevant if rmv = TRUE */ + + bool insrt; /**< TRUE, if defined insert manipulation */ + t_FmPcdManipInsrtParams insrtParams; /**< Parameters for insert manipulation, relevant if insrt = TRUE */ + + bool fragOrReasm; /**< TRUE, if defined fragmentation/reassembly manipulation */ + t_FmPcdManipFragOrReasmParams fragOrReasmParams; /**< Parameters for fragmentation/reassembly manipulation, relevant if fragOrReasm = TRUE */ + + /**< General parameters */ + bool treatFdStatusFieldsAsErrors; + /**< Set to TRUE when the port that is using this manip is chained + to SEC (i.e. the traffic was forwarded from SEC) */ +} t_FmPcdManipParams; + +/**************************************************************************//** + @Description structure for defining statistics node +*//***************************************************************************/ +typedef struct t_FmPcdStatsParams { + e_FmPcdStatsType type; /**< type of statistics node */ +} t_FmPcdStatsParams; +#endif /* defined(FM_CAPWAP_SUPPORT) || ... */ + + +/**************************************************************************//** + @Function FM_PCD_SetNetEnvCharacteristics + + @Description Define a set of Network Environment Characteristics. + When setting an environment it is important to understand its + application. It is not meant to describe the flows that will run + on the ports using this environment, but what the user means TO DO + with the PCD mechanisms in order to parse-classify-distribute those + frames. + By specifying a distinction unit, the user means it would use that option + for distinction between frames at either a keygen scheme keygen or a coarse + classification action descriptor. Using interchangeable headers to define a + unit means that the user is indifferent to which of the interchangeable + headers is present in the frame, and they want the distinction to be based + on the presence of either one of them. + Depending on context, there are limitations to the use of environments. A + port using the PCD functionality is bound to an environment. Some or even + all ports may share an environment but also an environment per port is + possible. When initializing a scheme, a classification plan group (see below), + or a coarse classification tree, one of the initialized environments must be + stated and related to. When a port is bound to a scheme, a classification + plan group, or a coarse classification tree, it MUST be bound to the same + environment. + The different PCD modules, may relate (for flows definition) ONLY on + distinction units as defined by their environment. When initializing a + scheme for example, it may not choose to select IPV4 as a match for + recognizing flows unless it was defined in the relating environment. In + fact, to guide the user through the configuration of the PCD, each module's + characterization in terms of flows is not done using protocol names, but using + environment indexes. + In terms of HW implementation, the list of distinction units sets the LCV vectors + and later used for match vector, classification plan vectors and coarse classification + indexing. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] p_NetEnvParams A structure of parameters for the initialization of + the network environment. + + @Return A handle to the initialized object on success; NULL code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Handle FM_PCD_SetNetEnvCharacteristics(t_Handle h_FmPcd, t_FmPcdNetEnvParams *p_NetEnvParams); + +/**************************************************************************//** + @Function FM_PCD_DeleteNetEnvCharacteristics + + @Description Deletes a set of Network Environment Characteristics. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] h_NetEnv A handle to the Network environment. + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_PCD_DeleteNetEnvCharacteristics(t_Handle h_FmPcd, t_Handle h_NetEnv); + +/**************************************************************************//** + @Function FM_PCD_KgSetScheme + + @Description Initializing or modifying and enabling a scheme for the keygen. + This routine should be called for adding or modifying a scheme. + When a scheme needs modifying, the API requires that it will be + rewritten. In such a case 'modify' should be TRUE. If the + routine is called for a valid scheme and 'modify' is FALSE, + it will return error. + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in,out] p_Scheme A structure of parameters for defining the scheme + + @Return A handle to the initialized scheme on success; NULL code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Handle FM_PCD_KgSetScheme (t_Handle h_FmPcd, + t_FmPcdKgSchemeParams *p_Scheme); + +/**************************************************************************//** + @Function FM_PCD_KgDeleteScheme + + @Description Deleting an initialized scheme. + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] h_Scheme scheme handle as returned by FM_PCD_KgSetScheme + + @Return E_OK on success; Error code otherwise. + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Error FM_PCD_KgDeleteScheme(t_Handle h_FmPcd, t_Handle h_Scheme); + +/**************************************************************************//** + @Function FM_PCD_KgGetSchemeCounter + + @Description Reads scheme packet counter. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] h_Scheme scheme handle as returned by FM_PCD_KgSetScheme. + + @Return Counter's current value. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +uint32_t FM_PCD_KgGetSchemeCounter(t_Handle h_FmPcd, t_Handle h_Scheme); + +/**************************************************************************//** + @Function FM_PCD_KgSetSchemeCounter + + @Description Writes scheme packet counter. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] h_Scheme scheme handle as returned by FM_PCD_KgSetScheme. + @Param[in] value New scheme counter value - typically '0' for + resetting the counter. + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Error FM_PCD_KgSetSchemeCounter(t_Handle h_FmPcd, t_Handle h_Scheme, uint32_t value); + +/**************************************************************************//** + @Function FM_PCD_CcBuildTree + + @Description This routine must be called to define a complete coarse + classification tree. This is the way to define coarse + classification to a certain flow - the keygen schemes + may point only to trees defined in this way. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] p_FmPcdCcTreeParams A structure of parameters to define the tree. + + @Return A handle to the initialized object on success; NULL code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Handle FM_PCD_CcBuildTree (t_Handle h_FmPcd, + t_FmPcdCcTreeParams *p_FmPcdCcTreeParams); + +/**************************************************************************//** + @Function FM_PCD_CcDeleteTree + + @Description Deleting an built tree. + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] h_CcTree A handle to a CC tree. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Error FM_PCD_CcDeleteTree(t_Handle h_FmPcd, t_Handle h_CcTree); + +/**************************************************************************//** + @Function FM_PCD_CcSetNode + + @Description This routine should be called for each CC (coarse classification) + node. The whole CC tree should be built bottom up so that each + node points to already defined nodes. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] p_CcNodeParam A structure of parameters defining the CC node + + @Return A handle to the initialized object on success; NULL code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Handle FM_PCD_CcSetNode(t_Handle h_FmPcd, + t_FmPcdCcNodeParams *p_CcNodeParam); + +/**************************************************************************//** + @Function FM_PCD_CcDeleteNode + + @Description Deleting an built node. + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] h_CcNode A handle to a CC node. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Error FM_PCD_CcDeleteNode(t_Handle h_FmPcd, t_Handle h_CcNode); + +/**************************************************************************//** + @Function FM_PCD_CcTreeModifyNextEngine + + @Description Modify the Next Engine Parameters in the entry of the tree. + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] h_CcTree A handle to the tree + @Param[in] grpId A Group index in the tree + @Param[in] index Entry index in the group defined by grpId + @Param[in] p_FmPcdCcNextEngineParams A structure for defining new next engine params + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_CcBuildTree(). +*//***************************************************************************/ +t_Error FM_PCD_CcTreeModifyNextEngine(t_Handle h_FmPcd, t_Handle h_CcTree, uint8_t grpId, uint8_t index, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams); + +/**************************************************************************//** + @Function FM_PCD_CcNodeModifyNextEngine + + @Description Modify the Next Engine Parameters in the relevant key entry of the node. + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] h_CcNode A handle to the node + @Param[in] keyIndex Key index for Next Engine Params modifications + @Param[in] p_FmPcdCcNextEngineParams A structure for defining new next engine params + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_CcSetNode(). +*//***************************************************************************/ +t_Error FM_PCD_CcNodeModifyNextEngine(t_Handle h_FmPcd, t_Handle h_CcNode, uint8_t keyIndex, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams); + +/**************************************************************************//** + @Function FM_PCD_CcNodeModifyMissNextEngine + + @Description Modify the Next Engine Parameters of the Miss key case of the node. + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] h_CcNode A handle to the node + @Param[in] p_FmPcdCcNextEngineParams A structure for defining new next engine params + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_CcSetNode(). +*//***************************************************************************/ +t_Error FM_PCD_CcNodeModifyMissNextEngine(t_Handle h_FmPcd, t_Handle h_CcNode, t_FmPcdCcNextEngineParams *p_FmPcdCcNextEngineParams); + +/**************************************************************************//** + @Function FM_PCD_CcNodeRemoveKey + + @Description Remove the key (include Next Engine Parameters of this key) defined by the index of the relevant node . + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] h_CcNode A handle to the node + @Param[in] keyIndex Key index for removing + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_CcSetNode() not only of the relevant node but also + the node that points to this node +*//***************************************************************************/ +t_Error FM_PCD_CcNodeRemoveKey(t_Handle h_FmPcd, t_Handle h_CcNode, uint8_t keyIndex); + +/**************************************************************************//** + @Function FM_PCD_CcNodeAddKey + + @Description Add the key(include Next Engine Parameters of this key)in the index defined by the keyIndex . + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] h_CcNode A handle to the node + @Param[in] keyIndex Key index for adding + @Param[in] keySize Key size of added key + @Param[in] p_KeyParams A pointer to the parameters includes new key with Next Engine Parameters + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_CcSetNode() not only of the relevant node but also + the node that points to this node +*//***************************************************************************/ +t_Error FM_PCD_CcNodeAddKey(t_Handle h_FmPcd, t_Handle h_CcNode, uint8_t keyIndex, uint8_t keySize, t_FmPcdCcKeyParams *p_KeyParams); + +/**************************************************************************//** + @Function FM_PCD_CcNodeModifyKeyAndNextEngine + + @Description Modify the key and Next Engine Parameters of this key in the index defined by the keyIndex . + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] h_CcNode A handle to the node + @Param[in] keyIndex Key index for adding + @Param[in] keySize Key size of added key + @Param[in] p_KeyParams A pointer to the parameters includes modified key and modified Next Engine Parameters + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_CcSetNode() not only of the relevant node but also + the node that points to this node +*//***************************************************************************/ +t_Error FM_PCD_CcNodeModifyKeyAndNextEngine(t_Handle h_FmPcd, t_Handle h_CcNode, uint8_t keyIndex, uint8_t keySize, t_FmPcdCcKeyParams *p_KeyParams); + +/**************************************************************************//** + @Function FM_PCD_CcNodeModifyKey + + @Description Modify the key in the index defined by the keyIndex . + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] h_CcNode A handle to the node + @Param[in] keyIndex Key index for adding + @Param[in] keySize Key size of added key + @Param[in] p_Key A pointer to the new key + @Param[in] p_Mask A pointer to the new mask if relevant, otherwise pointer to NULL + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_CcSetNode() not only of the relevant node but also + the node that points to this node +*//***************************************************************************/ +t_Error FM_PCD_CcNodeModifyKey(t_Handle h_FmPcd, t_Handle h_CcNode, uint8_t keyIndex, uint8_t keySize, uint8_t *p_Key, uint8_t *p_Mask); + +/**************************************************************************//** + @Function FM_PCD_CcNodeGetKeyCounter + + @Description This routine may be used to get a counter of specific key in a CC + Node; This counter reflects how many frames passed that were matched + this key. + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] h_CcNode A handle to the node + @Param[in] keyIndex Key index for adding + + @Return The specific key counter. + + @Cautions Allowed only following FM_PCD_CcSetNode() not only of the relevant node but also + the node that points to this node +*//***************************************************************************/ +uint32_t FM_PCD_CcNodeGetKeyCounter(t_Handle h_FmPcd, t_Handle h_CcNode, uint8_t keyIndex); + +/**************************************************************************//** + @Function FM_PCD_PlcrSetProfile + + @Description Sets a profile entry in the policer profile table. + The routine overrides any existing value. + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] p_Profile A structure of parameters for defining a + policer profile entry. + + @Return A handle to the initialized object on success; NULL code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Handle FM_PCD_PlcrSetProfile(t_Handle h_FmPcd, + t_FmPcdPlcrProfileParams *p_Profile); + +/**************************************************************************//** + @Function FM_PCD_PlcrDeleteProfile + + @Description Delete a profile entry in the policer profile table. + The routine set entry to invalid. + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] h_Profile A handle to the profile. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Error FM_PCD_PlcrDeleteProfile(t_Handle h_FmPcd, t_Handle h_Profile); + +/**************************************************************************//** + @Function FM_PCD_PlcrGetProfileCounter + + @Description Sets an entry in the classification plan. + The routine overrides any existing value. + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] h_Profile A handle to the profile. + @Param[in] counter Counter selector. + + @Return specific counter value. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +uint32_t FM_PCD_PlcrGetProfileCounter(t_Handle h_FmPcd, t_Handle h_Profile, e_FmPcdPlcrProfileCounters counter); + +/**************************************************************************//** + @Function FM_PCD_PlcrSetProfileCounter + + @Description Sets an entry in the classification plan. + The routine overrides any existing value. + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] h_Profile A handle to the profile. + @Param[in] counter Counter selector. + @Param[in] value value to set counter with. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Error FM_PCD_PlcrSetProfileCounter(t_Handle h_FmPcd, t_Handle h_Profile, e_FmPcdPlcrProfileCounters counter, uint32_t value); + +#if defined(FM_CAPWAP_SUPPORT) +/**************************************************************************//** + @Function FM_PCD_ManipSetNode + + @Description This routine should be called for defining a manipulation + node. A manipulation node must be defined before the CC node + that precedes it. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] p_FmPcdManipParams A structure of parameters defining the manipulation + + @Return A handle to the initialized object on success; NULL code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Handle FM_PCD_ManipSetNode(t_Handle h_FmPcd, t_FmPcdManipParams *p_FmPcdManipParams); + +/**************************************************************************//** + @Function FM_PCD_ManipDeleteNode + + @Description Delete an existing manip node. + + @Param[in] h_FmPcd A handle to an FM PCD Module. + @Param[in] h_HdrManipNode A handle to a Manip node. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Error FM_PCD_ManipDeleteNode(t_Handle h_FmPcd, t_Handle h_HdrManipNode); +#endif /* defined(FM_CAPWAP_SUPPORT) || ... */ + + +#ifdef FM_CAPWAP_SUPPORT +/**************************************************************************//** + @Function FM_PCD_StatisticsSetNode + + @Description This routine should be called for defining a statistics + node. + + @Param[in] h_FmPcd FM PCD module descriptor. + @Param[in] p_FmPcdstatsParams A structure of parameters defining the statistics + + @Return A handle to the initialized object on success; NULL code otherwise. + + @Cautions Allowed only following FM_PCD_Init(). +*//***************************************************************************/ +t_Handle FM_PCD_StatisticsSetNode(t_Handle h_FmPcd, t_FmPcdStatsParams *p_FmPcdstatsParams); +#endif /* FM_CAPWAP_SUPPORT */ + +/** @} */ /* end of FM_PCD_Runtime_tree_buildgrp group */ +/** @} */ /* end of FM_PCD_Runtime_grp group */ +/** @} */ /* end of FM_PCD_grp group */ +/** @} */ /* end of FM_grp group */ + + + +#endif /* __FM_PCD_EXT */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/Peripherals/fm_port_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/Peripherals/fm_port_ext.h @@ -0,0 +1,2196 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + @File fm_port_ext.h + + @Description FM-Port Application Programming Interface. +*//***************************************************************************/ +#ifndef __FM_PORT_EXT +#define __FM_PORT_EXT + +#include "error_ext.h" +#include "std_ext.h" +#include "fm_pcd_ext.h" +#include "fm_ext.h" +#include "net_ext.h" + + +/**************************************************************************//** + + @Group FM_grp Frame Manager API + + @Description FM API functions, definitions and enums + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group FM_PORT_grp FM Port + + @Description FM Port API + + The FM uses a general module called "port" to represent a Tx port + (MAC), an Rx port (MAC), offline parsing flow or host command + flow. There may be up to 17 (may change) ports in an FM - 5 Tx + ports (4 for the 1G MACs, 1 for the 10G MAC), 5 Rx Ports, and 7 + Host command/Offline parsing ports. The SW driver manages these + ports as sub-modules of the FM, i.e. after an FM is initialized, + its ports may be initialized and operated upon. + + The port is initialized aware of its type, but other functions on + a port may be indifferent to its type. When necessary, the driver + verifies coherency and returns error if applicable. + + On initialization, user specifies the port type and it's index + (relative to the port's type). Host command and Offline parsing + ports share the same id range, I.e user may not initialized host + command port 0 and offline parsing port 0. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description An enum for defining port PCD modes. + This enum defines the superset of PCD engines support - i.e. not + all engines have to be used, but all have to be enabled. The real + flow of a specific frame depends on the PCD configuration and the + frame headers and payload. +*//***************************************************************************/ +typedef enum e_FmPortPcdSupport { + e_FM_PORT_PCD_SUPPORT_NONE = 0, /**< BMI to BMI, PCD is not used */ + e_FM_PORT_PCD_SUPPORT_PRS_ONLY, /**< Use only Parser */ + e_FM_PORT_PCD_SUPPORT_PLCR_ONLY, /**< Use only Policer */ + e_FM_PORT_PCD_SUPPORT_PRS_AND_PLCR, /**< Use Parser and Policer */ + e_FM_PORT_PCD_SUPPORT_PRS_AND_KG, /**< Use Parser and Keygen */ + e_FM_PORT_PCD_SUPPORT_PRS_AND_KG_AND_CC, /**< Use Parser, Keygen and Coarse Classification */ + e_FM_PORT_PCD_SUPPORT_PRS_AND_KG_AND_CC_AND_PLCR, + /**< Use all PCD engines */ + e_FM_PORT_PCD_SUPPORT_PRS_AND_KG_AND_PLCR /**< Use Parser, Keygen and Policer */ +#ifdef FM_CAPWAP_SUPPORT + , + e_FM_PORT_PCD_SUPPORT_CC_ONLY, /**< Use only Coarse Classification */ + e_FM_PORT_PCD_SUPPORT_CC_AND_KG, /**< Use Coarse Classification,and Keygen */ + e_FM_PORT_PCD_SUPPORT_CC_AND_KG_AND_PLCR /**< Use Coarse Classification, Keygen and Policer */ +#endif /* FM_CAPWAP_SUPPORT */ +} e_FmPortPcdSupport; + +/**************************************************************************//** + @Description Port interrupts +*//***************************************************************************/ +typedef enum e_FmPortExceptions { + e_FM_PORT_EXCEPTION_IM_BUSY /**< Independent-Mode Rx-BUSY */ +} e_FmPortExceptions; + + +/**************************************************************************//** + @Collection General FM Port defines +*//***************************************************************************/ +#define FM_PORT_PRS_RESULT_NUM_OF_WORDS 8 /**< Number of 4 bytes words in parser result */ +/* @} */ + +/**************************************************************************//** + @Collection FM Frame error +*//***************************************************************************/ +typedef uint32_t fmPortFrameErrSelect_t; /**< typedef for defining Frame Descriptor errors */ + +#define FM_PORT_FRM_ERR_UNSUPPORTED_FORMAT 0x04000000 /**< Offline parsing only! Unsupported Format */ +#define FM_PORT_FRM_ERR_LENGTH 0x02000000 /**< Offline parsing only! Length Error */ +#define FM_PORT_FRM_ERR_DMA 0x01000000 /**< DMA Data error */ +#ifdef FM_CAPWAP_SUPPORT +#define FM_PORT_FRM_ERR_NON_FM 0x00400000 /**< non Frame-Manager error; probably come from SEC that + was chained to FM */ +#endif /* FM_CAPWAP_SUPPORT */ +#define FM_PORT_FRM_ERR_PHYSICAL 0x00080000 /**< Rx FIFO overflow, FCS error, code error, running disparity + error (SGMII and TBI modes), FIFO parity error. PHY + Sequence error, PHY error control character detected. */ +#define FM_PORT_FRM_ERR_SIZE 0x00040000 /**< Frame too long OR Frame size exceeds max_length_frame */ +#define FM_PORT_FRM_ERR_CLS_DISCARD 0x00020000 /**< classification discard */ +#define FM_PORT_FRM_ERR_EXTRACTION 0x00008000 /**< Extract Out of Frame */ +#define FM_PORT_FRM_ERR_NO_SCHEME 0x00004000 /**< No Scheme Selected */ +#define FM_PORT_FRM_ERR_KEYSIZE_OVERFLOW 0x00002000 /**< Keysize Overflow */ +#define FM_PORT_FRM_ERR_COLOR_YELLOW 0x00000400 /**< Frame color is yellow */ +#define FM_PORT_FRM_ERR_COLOR_RED 0x00000800 /**< Frame color is red */ +#define FM_PORT_FRM_ERR_ILL_PLCR 0x00000200 /**< Illegal Policer Profile selected */ +#define FM_PORT_FRM_ERR_PLCR_FRAME_LEN 0x00000100 /**< Policer frame length error */ +#define FM_PORT_FRM_ERR_PRS_TIMEOUT 0x00000080 /**< Parser Time out Exceed */ +#define FM_PORT_FRM_ERR_PRS_ILL_INSTRUCT 0x00000040 /**< Invalid Soft Parser instruction */ +#define FM_PORT_FRM_ERR_PRS_HDR_ERR 0x00000020 /**< Header error was identified during parsing */ +#define FM_PORT_FRM_ERR_BLOCK_LIMIT_EXCEEDED 0x00000008 /**< Frame parsed beyind 256 first bytes */ +#define FM_PORT_FRM_ERR_PROCESS_TIMEOUT 0x00000001 /**< FPM Frame Processing Timeout Exceeded */ +/* @} */ + + + +/**************************************************************************//** + @Group FM_PORT_init_grp FM Port Initialization Unit + + @Description FM Port Initialization Unit + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description Exceptions user callback routine, will be called upon an + exception passing the exception identification. + + @Param[in] h_App - User's application descriptor. + @Param[in] exception - The exception. + *//***************************************************************************/ +typedef void (t_FmPortExceptionCallback) (t_Handle h_App, e_FmPortExceptions exception); + +/**************************************************************************//** + @Description User callback function called by driver with received data. + + User provides this function. Driver invokes it. + + @Param[in] h_App Application's handle originally specified to + the API Config function + @Param[in] p_Data A pointer to data received + @Param[in] length length of received data + @Param[in] status receive status and errors + @Param[in] position position of buffer in frame + @Param[in] h_BufContext A handle of the user acossiated with this buffer + + @Retval e_RX_STORE_RESPONSE_CONTINUE - order the driver to continue Rx + operation for all ready data. + @Retval e_RX_STORE_RESPONSE_PAUSE - order the driver to stop Rx operation. +*//***************************************************************************/ +typedef e_RxStoreResponse (t_FmPortImRxStoreCallback) (t_Handle h_App, + uint8_t *p_Data, + uint16_t length, + uint16_t status, + uint8_t position, + t_Handle h_BufContext); + +/**************************************************************************//** + @Description User callback function called by driver when transmit completed. + + User provides this function. Driver invokes it. + + @Param[in] h_App Application's handle originally specified to + the API Config function + @Param[in] p_Data A pointer to data received + @Param[in] status transmit status and errors + @Param[in] lastBuffer is last buffer in frame + @Param[in] h_BufContext A handle of the user acossiated with this buffer + *//***************************************************************************/ +typedef void (t_FmPortImTxConfCallback) (t_Handle h_App, + uint8_t *p_Data, + uint16_t status, + t_Handle h_BufContext); + +/**************************************************************************//** + @Description A structure of information about each of the external + buffer pools used by the port, +*//***************************************************************************/ +typedef struct t_FmPortExtPoolParams { + uint8_t id; /**< External buffer pool id */ + uint16_t size; /**< External buffer pool buffer size */ +} t_FmPortExtPoolParams; + +/**************************************************************************//** + @Description A structure for informing the driver about the external + buffer pools allocated in the BM and used by this port. +*//***************************************************************************/ +typedef struct t_FmPortExtPools { + uint8_t numOfPoolsUsed; /**< Number of pools use by this port */ + t_FmPortExtPoolParams extBufPool[FM_PORT_MAX_NUM_OF_EXT_POOLS]; + /**< Parameters for each port */ +} t_FmPortExtPools; + +/**************************************************************************//** + @Description structure for additional Rx port parameters +*//***************************************************************************/ +typedef struct t_FmPortRxParams { + uint32_t errFqid; /**< Error Queue Id. */ + uint32_t dfltFqid; /**< Default Queue Id. */ + uint16_t liodnOffset; /**< Port's LIODN offset. */ + t_FmPortExtPools extBufPools; /**< Which external buffer pools are used + (up to FM_PORT_MAX_NUM_OF_EXT_POOLS), and their sizes. */ +} t_FmPortRxParams; + +/**************************************************************************//** + @Description structure for additional non-Rx port parameters +*//***************************************************************************/ +typedef struct t_FmPortNonRxParams { + uint32_t errFqid; /**< Error Queue Id. */ + uint32_t dfltFqid; /**< For Tx and HC - Default Confirmation queue, + 0 means no Tx confirmation for processed + frames. For OP - default Rx queue. */ + uint32_t qmChannel; /**< QM-channel dedicated to this port; will be used + by the FM for dequeue. */ +#ifdef FM_OP_PARTITION_ERRATA_FMANx8 + uint16_t opLiodnOffset; /**< For Offline Parsing ports only. Port's LIODN offset. */ +#endif /* FM_OP_PARTITION_ERRATA_FMANx8 */ +} t_FmPortNonRxParams; + +/**************************************************************************//** + @Description structure for additional Rx port parameters +*//***************************************************************************/ +typedef struct t_FmPortImRxTxParams { + t_Handle h_FmMuram; /**< A handle of the FM-MURAM partition */ + uint16_t liodnOffset; /**< For Rx ports only. Port's LIODN Offset. */ + uint8_t dataMemId; /**< Memory partition ID for data buffers */ + uint32_t dataMemAttributes; /**< Memory attributes for data buffers */ + t_BufferPoolInfo rxPoolParams; /**< For Rx ports only. */ + t_FmPortImRxStoreCallback *f_RxStore; /**< For Rx ports only. */ + t_FmPortImTxConfCallback *f_TxConf; /**< For Tx ports only. */ +} t_FmPortImRxTxParams; + +/**************************************************************************//** + @Description Union for additional parameters depending on port type +*//***************************************************************************/ +typedef union u_FmPortSpecificParams { + t_FmPortImRxTxParams imRxTxParams; /**< Rx/Tx Independent-Mode port parameter structure */ + t_FmPortRxParams rxParams; /**< Rx port parameters structure */ + t_FmPortNonRxParams nonRxParams; /**< Non-Rx port parameters structure */ +} u_FmPortSpecificParams; + +/**************************************************************************//** + @Description structure representing FM initialization parameters +*//***************************************************************************/ +typedef struct t_FmPortParams { + uintptr_t baseAddr; /**< Virtual Address of memory mapped FM Port registers.*/ + t_Handle h_Fm; /**< A handle to the FM object this port related to */ + e_FmPortType portType; /**< Port type */ + uint8_t portId; /**< Port Id - relative to type */ + bool independentModeEnable; + /**< This port is Independent-Mode - Used for Rx/Tx ports only! */ + uint16_t liodnBase; /**< Irrelevant for P4080 rev 1. LIODN base for this port, to be + used together with LIODN offset. */ + u_FmPortSpecificParams specificParams; /**< Additional parameters depending on port + type. */ + + t_FmPortExceptionCallback *f_Exception; /**< Callback routine to be called of PCD exception */ + t_Handle h_App; /**< A handle to an application layer object; This handle will + be passed by the driver upon calling the above callbacks */ +} t_FmPortParams; + + +/**************************************************************************//** + @Function FM_PORT_Config + + @Description Creates descriptor for the FM PORT module. + + The routine returns a handle (descriptor) to the FM PORT object. + This descriptor must be passed as first parameter to all other + FM PORT function calls. + + No actual initialization or configuration of FM hardware is + done by this routine. + + @Param[in] p_FmPortParams - Pointer to data structure of parameters + + @Retval Handle to FM object, or NULL for Failure. +*//***************************************************************************/ +t_Handle FM_PORT_Config(t_FmPortParams *p_FmPortParams); + +/**************************************************************************//** + @Function FM_PORT_Init + + @Description Initializes the FM PORT module + + @Param[in] h_FmPort - FM PORT module descriptor + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_PORT_Init(t_Handle h_FmPort); + +/**************************************************************************//** + @Function FM_PORT_Free + + @Description Frees all resources that were assigned to FM PORT module. + + Calling this routine invalidates the descriptor. + + @Param[in] h_FmPort - FM PORT module descriptor + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_PORT_Free(t_Handle h_FmPort); + + +/**************************************************************************//** + @Group FM_PORT_advanced_init_grp FM Port Advanced Configuration Unit + + @Description Configuration functions used to change default values. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description enum for defining QM frame dequeue +*//***************************************************************************/ +typedef enum e_FmPortDeqType { + e_FM_PORT_DEQ_TYPE1, /**< Dequeue from the SP channel - with priority precedence, + and Intra-Class Scheduling respected. */ + e_FM_PORT_DEQ_TYPE2, /**< Dequeue from the SP channel - with active FQ precedence, + and Intra-Class Scheduling respected. */ + e_FM_PORT_DEQ_TYPE3 /**< Dequeue from the SP channel - with active FQ precedence, + and override Intra-Class Scheduling */ +} e_FmPortDeqType; + +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT +/**************************************************************************//** + @Description enum for defining QM frame dequeue +*//***************************************************************************/ +typedef enum e_FmPortDeqPrefetchOption { + e_FM_PORT_DEQ_NO_PREFETCH, /**< QMI preforms a dequeue action for a single frame + only when a dedicated portID Tnum is waiting. */ + e_FM_PORT_DEQ_PARTIAL_PREFETCH, /**< QMI preforms a dequeue action for 3 frames when + one dedicated portId tnum is waiting. */ + e_FM_PORT_DEQ_FULL_PREFETCH /**< QMI preforms a dequeue action for 3 frames when + no dedicated portId tnums are waiting. */ + +} e_FmPortDeqPrefetchOption; +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ + +/**************************************************************************//** + @Description enum for defining port DMA swap mode +*//***************************************************************************/ +typedef enum e_FmPortDmaSwap { + e_FM_PORT_DMA_NO_SWP, /**< No swap, transfer data as is.*/ + e_FM_PORT_DMA_SWP_PPC_LE, /**< The transferred data should be swapped + in PowerPc Little Endian mode. */ + e_FM_PORT_DMA_SWP_BE /**< The transferred data should be swapped + in Big Endian mode */ +} e_FmPortDmaSwap; + +/**************************************************************************//** + @Description enum for defining port DMA cache attributes +*//***************************************************************************/ +typedef enum e_FmPortDmaCache { + e_FM_PORT_DMA_NO_STASH = 0, /**< Cacheable, no Allocate (No Stashing) */ + e_FM_PORT_DMA_STASH = 1 /**< Cacheable and Allocate (Stashing on) */ +} e_FmPortDmaCache; + +/**************************************************************************//** + @Description enum for defining port default color +*//***************************************************************************/ +typedef enum e_FmPortColor { + e_FM_PORT_COLOR_GREEN, /**< Default port color is green */ + e_FM_PORT_COLOR_YELLOW, /**< Default port color is yellow */ + e_FM_PORT_COLOR_RED, /**< Default port color is red */ + e_FM_PORT_COLOR_OVERRIDE /**< Ignore color */ +} e_FmPortColor; + +/**************************************************************************//** + @Description struct for defining Dual Tx rate limiting scale +*//***************************************************************************/ +typedef enum e_FmPortDualRateLimiterScaleDown { + e_FM_PORT_DUAL_RATE_LIMITER_NONE = 0, /**< Use only single rate limiter */ + e_FM_PORT_DUAL_RATE_LIMITER_SCALE_DOWN_BY_2, /**< Divide high rate limiter by 2 */ + e_FM_PORT_DUAL_RATE_LIMITER_SCALE_DOWN_BY_4, /**< Divide high rate limiter by 4 */ + e_FM_PORT_DUAL_RATE_LIMITER_SCALE_DOWN_BY_8 /**< Divide high rate limiter by 8 */ +} e_FmPortDualRateLimiterScaleDown; + + +/**************************************************************************//** + @Description struct for defining FM port resources +*//***************************************************************************/ +typedef struct t_FmPortRsrc { + uint32_t num; /**< Committed required resource */ + uint32_t extra; /**< Extra (not committed) required resource */ +} t_FmPortRsrc; + +/**************************************************************************//** + @Description struct for defining pool depletion criteria +*//***************************************************************************/ +typedef struct t_FmPortBufPoolDepletion { + bool numberOfPoolsModeEnable; /**< select mode in which pause frames will be sent after + a number of pools are depleted */ + uint8_t numOfPools; /**< the minimum number of depleted pools that will + invoke pause frames transmission. */ + bool poolsToConsider[BM_MAX_NUM_OF_POOLS]; + /**< For each pool, TRUE if it should be considered for + depletion (Note - this pool must be used by this port!) */ + bool singlePoolModeEnable; /**< select mode in which pause frames will be sent after + a single of pools are depleted */ + bool poolsToConsiderForSingleMode[BM_MAX_NUM_OF_POOLS]; + /**< For each pool, TRUE if it should be considered for + depletion (Note - this pool must be used by this port!) */ +} t_FmPortBufPoolDepletion; + +/**************************************************************************//** + @Description struct for defining observed pool depletion +*//***************************************************************************/ +typedef struct t_FmPortObservedBufPoolDepletion { + t_FmPortBufPoolDepletion poolDepletionParams;/**< parameters to define pool depletion */ + t_FmPortExtPools poolsParams; /**< Which external buffer pools are observed + (up to FM_PORT_MAX_NUM_OF_OBSERVED_EXT_POOLS), + and their sizes. */ +} t_FmPortObservedBufPoolDepletion; + +/**************************************************************************//** + @Description struct for defining Tx rate limiting +*//***************************************************************************/ +typedef struct t_FmPortRateLimit { + uint16_t maxBurstSize; /**< in kBytes for Tx ports, in frames + for offline parsing ports. (note that + for early chips burst size is + rounded up to a multiply of 1000 frames).*/ + uint32_t rateLimit; /**< in Kb/sec for Tx ports, in frame/sec for + offline parsing ports. Rate limit refers to + data rate (rather than line rate). */ + e_FmPortDualRateLimiterScaleDown rateLimitDivider; /**< For offline parsing ports only. Not-valid + for some earlier chip revisions */ +} t_FmPortRateLimit; + +/**************************************************************************//** + @Description struct for defining define the parameters of + the Rx port performance counters +*//***************************************************************************/ +typedef struct t_FmPortPerformanceCnt { + uint8_t taskCompVal; /**< Task compare value */ + uint8_t queueCompVal; /**< Rx queue/Tx confirm queue compare + value (unused for H/O) */ + uint8_t dmaCompVal; /**< Dma compare value */ + uint32_t fifoCompVal; /**< Fifo compare value (in bytes) */ +} t_FmPortPerformanceCnt; + +/**************************************************************************//** + @Description struct for defining buffer content. +*//***************************************************************************/ +typedef struct t_FmPortBufferPrefixContent { + uint16_t privDataSize; /**< Number of bytes to be left at the beginning + of the external buffer */ + bool passPrsResult; /**< TRUE to pass the parse result to/from the FM */ + bool passTimeStamp; /**< TRUE to pass the timeStamp to/from the FM */ + bool passHashResult; /**< TRUE to pass the KG hash result to/from the FM */ + bool passAllOtherPCDInfo;/**< Add all other Internal-Context information: + AD, hash-result, key, etc. */ + uint16_t dataAlign; /**< 0 to use driver's default alignment, other value + for selecting a data alignment (must be a + power of 2) */ +#ifdef DEBUG + bool passDebugInfo; /**< Debug-information */ +#endif /* DEBUG */ +#ifdef FM_CAPWAP_SUPPORT + uint8_t manipExtraSpace; /**< Maximum extra size needed (insertion-size minus removal-size) */ +#endif /* FM_CAPWAP_SUPPORT */ +} t_FmPortBufferPrefixContent; + +/**************************************************************************//** + @Description struct for defining backup Bm Pools. +*//***************************************************************************/ +typedef struct t_FmPortBackupBmPools { + uint8_t numOfBackupPools; /**< Number of BM backup pools - + must be smaller than the total number of + pools defined for the specified port.*/ + uint8_t poolIds[FM_PORT_MAX_NUM_OF_EXT_POOLS]; + /**< numOfBackupPools pool id's, specifying which + pools should be used only as backup. Pool + id's specified here must be a subset of the + pools used by the specified port.*/ +} t_FmPortBackupBmPools; + + +/**************************************************************************//** + @Function FM_PORT_ConfigDeqHighPriority + + @Description Calling this routine changes the dequeue priority in the + internal driver data base from its default configuration + [TRUE] + + May be used for Non-Rx ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] highPri TRUE to select high priority, FALSE for normal operation. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigDeqHighPriority(t_Handle h_FmPort, bool highPri); + +/**************************************************************************//** + @Function FM_PORT_ConfigDeqType + + @Description Calling this routine changes the dequeue type parameter in the + internal driver data base from its default configuration + [e_FM_PORT_DEQ_TYPE1]. + + May be used for Non-Rx ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] deqType According to QM definition. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigDeqType(t_Handle h_FmPort, e_FmPortDeqType deqType); + +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT +/**************************************************************************//** + @Function FM_PORT_ConfigDeqPrefetchOption + + @Description Calling this routine changes the dequeue prefetch option parameter in the + internal driver data base from its default configuration + [e_FM_PORT_DEQ_FULL_PREFETCH] + Note: Available for some chips only + + May be used for Non-Rx ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] deqPrefetchOption New option + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigDeqPrefetchOption(t_Handle h_FmPort, e_FmPortDeqPrefetchOption deqPrefetchOption); +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ + +/**************************************************************************//** + @Function FM_PORT_ConfigDeqByteCnt + + @Description Calling this routine changes the dequeue byte count parameter in + the internal driver data base from its default configuration [2000]. + + May be used for Non-Rx ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] deqByteCnt New byte count + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigDeqByteCnt(t_Handle h_FmPort, uint16_t deqByteCnt); + +/**************************************************************************//** + @Function FM_PORT_ConfigTxFifoMinFillLevel + + @Description Calling this routine changes the fifo minimum + fill level parameter in the internal driver data base + from its default configuration [0] + + May be used for Tx ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] minFillLevel New value + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigTxFifoMinFillLevel(t_Handle h_FmPort, uint32_t minFillLevel); + +/**************************************************************************//** + @Function FM_PORT_ConfigTxFifoDeqPipelineDepth + + @Description Calling this routine changes the fifo dequeue + pipeline depth parameter in the internal driver data base + + from its default configuration: 1G ports: [2], + 10G port: [8] + + May be used for Tx ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] deqPipelineDepth New value + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigTxFifoDeqPipelineDepth(t_Handle h_FmPort, uint8_t deqPipelineDepth); + +/**************************************************************************//** + @Function FM_PORT_ConfigTxFifoLowComfLevel + + @Description Calling this routine changes the fifo low comfort level + parameter in internal driver data base + from its default configuration [5] + + May be used for Tx ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] fifoLowComfLevel New value + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigTxFifoLowComfLevel(t_Handle h_FmPort, uint32_t fifoLowComfLevel); + +/**************************************************************************//** + @Function FM_PORT_ConfigRxFifoThreshold + + @Description Calling this routine changes the threshold of the FIFO + fill level parameter in the internal driver data base + from its default configuration [BMI_MAX_FIFO_SIZE] + + If the total number of buffers which are + currently in use and associated with the + specific RX port exceed this threshold, the + BMI will signal the MAC to send a pause frame + over the link. + + May be used for Rx ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] fifoThreshold New value + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigRxFifoThreshold(t_Handle h_FmPort, uint32_t fifoThreshold); + +/**************************************************************************//** + @Function FM_PORT_ConfigRxFifoPriElevationLevel + + @Description Calling this routine changes the priority elevation level + parameter in the internal driver data base from its default + configuration [BMI_MAX_FIFO_SIZE] + + If the total number of buffers which are currently in use and + associated with the specific RX port exceed the amount specified + in priElevationLevel, BMI will signal the main FM's DMA to + elevate the FM priority on the system bus. + + May be used for Rx ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] priElevationLevel New value + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigRxFifoPriElevationLevel(t_Handle h_FmPort, uint32_t priElevationLevel); + +/**************************************************************************//** + @Function FM_PORT_ConfigBufferPrefixContent + + @Description Defines the structure, size and content of the application buffer. + The prefix will + In Tx ports, if 'passPrsResult', the application + should set a value to their offsets in the prefix of + the FM will save the first 'privDataSize', than, + depending on 'passPrsResult' and 'passTimeStamp', copy parse result + and timeStamp, and the packet itself (in this order), to the + application buffer, and to offset. + Calling this routine changes the buffer margins definitions + in the internal driver data base from its default + configuration: Data size: [0] + Pass Parser result: [FALSE]. + Pass timestamp: [FALSE]. + + May be used for all ports + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in,out] p_FmPortBufferPrefixContent A structure of parameters describing the + structure of the buffer. + Out parameter: Start margin - offset + of data from start of external buffer. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigBufferPrefixContent(t_Handle h_FmPort, t_FmPortBufferPrefixContent *p_FmPortBufferPrefixContent); + + +/**************************************************************************//** + @Function FM_PORT_ConfigCheksumLastBytesIgnore + + @Description Calling this routine changes the number of checksum bytes to ignore + parameter in the internal driver data base from its default configuration + [0] + + May be used by Tx & Rx ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] cheksumLastBytesIgnore New value + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigCheksumLastBytesIgnore(t_Handle h_FmPort, uint8_t cheksumLastBytesIgnore); + +/**************************************************************************//** + @Function FM_PORT_ConfigCutBytesFromEnd + + @Description Calling this routine changes the number of bytes to cut from a + frame's end parameter in the internal driver data base + from its default configuration [4] + Note that if the result of (frame length before chop - cutBytesFromEnd) is + less than 14 bytes, the chop operation is not executed. + + May be used for Rx ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] cutBytesFromEnd New value + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigCutBytesFromEnd(t_Handle h_FmPort, uint8_t cutBytesFromEnd); + +/**************************************************************************//** + @Function FM_PORT_ConfigPoolDepletion + + @Description Calling this routine enables pause frame generation depending on the + depletion status of BM pools. It also defines the conditions to activate + this functionality. By default, this functionality is disabled. + + May be used for Rx ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_BufPoolDepletion A structure of pool depletion parameters + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigPoolDepletion(t_Handle h_FmPort, t_FmPortBufPoolDepletion *p_BufPoolDepletion); + +/**************************************************************************//** + @Function FM_PORT_ConfigObservedPoolDepletion + + @Description Calling this routine enables a mechanism to stop port enqueue + depending on the depletion status of selected BM pools. + It also defines the conditions to activate + this functionality. By default, this functionality is disabled. + + Note: Available for some chips only + + May be used for Offline Parsing ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_FmPortObservedBufPoolDepletion A structure of parameters for pool depletion. + + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigObservedPoolDepletion(t_Handle h_FmPort, t_FmPortObservedBufPoolDepletion *p_FmPortObservedBufPoolDepletion); + +/**************************************************************************//** + @Function FM_PORT_ConfigExtBufPools + + @Description This routine should be called for offline parsing ports + that internally use BM buffer pools. In such cases, e.g. for fragmentation and + re-assembly, the FM needs new BM buffers. By calling this routine the user + specifies the BM buffer pools that should be used. + + Note: Available for some chips only + + May be used for Offline Parsing ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_FmPortExtPools A structure of parameters for the external pools. + + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigExtBufPools(t_Handle h_FmPort, t_FmPortExtPools *p_FmPortExtPools); + +/**************************************************************************//** + @Function FM_PORT_ConfigBackupPools + + @Description Calling this routine allows the configuration of some of the BM pools + defined for this port as backup pools. + A pool configured to be a backup pool will be used only if all other + enabled non-backup pools are depleted. + + May be used for Rx ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_FmPortBackupBmPools An array of pool id's. All pools specified here will + be defined as backup pools. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigBackupPools(t_Handle h_FmPort, t_FmPortBackupBmPools *p_FmPortBackupBmPools); + +/**************************************************************************//** + @Function FM_PORT_ConfigFrmDiscardOverride + + @Description Calling this routine changes the error frames destination parameter + in the internal driver data base from its default configuration: + override = [FALSE] + + May be used for Rx and offline parsing ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] override TRUE to override dicarding of error frames and + enqueueing them to error queue. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigFrmDiscardOverride(t_Handle h_FmPort, bool override); + +/**************************************************************************//** + @Function FM_PORT_ConfigErrorsToDiscard + + @Description Calling this routine changes the behaviour on error parameter + in the internal driver data base from its default configuration: + [FM_PORT_FRM_ERR_CLS_DISCARD]. + If a requested error was previously defined as "ErrorsToEnqueue" it's + definition will change and the frame will be discarded. + Errors that were not defined either as "ErrorsToEnqueue" nor as + "ErrorsToDiscard", will be forwarded to CPU. + + + May be used for Rx and offline parsing ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] errs A list of errors to discard + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigErrorsToDiscard(t_Handle h_FmPort, fmPortFrameErrSelect_t errs); + +/**************************************************************************//** + @Function FM_PORT_ConfigDmaSwapData + + @Description Calling this routine changes the DMA swap data aparameter + in the internal driver data base from its default + configuration [e_FM_PORT_DMA_NO_SWP] + + May be used for all port types + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] swapData New selection + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigDmaSwapData(t_Handle h_FmPort, e_FmPortDmaSwap swapData); + +/**************************************************************************//** + @Function FM_PORT_ConfigDmaIcCacheAttr + + @Description Calling this routine changes the internal context cache + attribute parameter in the internal driver data base + from its default configuration [e_FM_PORT_DMA_NO_STASH] + + May be used for all port types + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] intContextCacheAttr New selection + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigDmaIcCacheAttr(t_Handle h_FmPort, e_FmPortDmaCache intContextCacheAttr); + +/**************************************************************************//** + @Function FM_PORT_ConfigDmaHdrAttr + + @Description Calling this routine changes the header cache + attribute parameter in the internal driver data base + from its default configuration [e_FM_PORT_DMA_NO_STASH] + + May be used for all port types + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] headerCacheAttr New selection + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigDmaHdrAttr(t_Handle h_FmPort, e_FmPortDmaCache headerCacheAttr); + +/**************************************************************************//** + @Function FM_PORT_ConfigDmaScatterGatherAttr + + @Description Calling this routine changes the scatter gather cache + attribute parameter in the internal driver data base + from its default configuration [e_FM_PORT_DMA_NO_STASH] + + May be used for all port types + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] scatterGatherCacheAttr New selection + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigDmaScatterGatherAttr(t_Handle h_FmPort, e_FmPortDmaCache scatterGatherCacheAttr); + +/**************************************************************************//** + @Function FM_PORT_ConfigDmaWriteOptimize + + @Description Calling this routine changes the write optimization + parameter in the internal driver data base + from its default configuration: optimize = [TRUE] + + May be used for non-Tx port types + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] optimize TRUE to enable optimization, FALSE for normal operation + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigDmaWriteOptimize(t_Handle h_FmPort, bool optimize); + +/**************************************************************************//** + @Function FM_PORT_ConfigDfltColor + + @Description Calling this routine changes the internal default color parameter + in the internal driver data base + from its default configuration [e_FM_PORT_COLOR_GREEN] + + May be used for all port types + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] color New selection + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigDfltColor(t_Handle h_FmPort, e_FmPortColor color); + +/**************************************************************************//** + @Function FM_PORT_ConfigSyncReq + + @Description Calling this routine changes the synchronization attribute parameter + in the internal driver data base from its default configuration: + syncReq = [TRUE] + + May be used for all port types + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] syncReq TRUE to request synchronization, FALSE otherwize. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigSyncReq(t_Handle h_FmPort, bool syncReq); + +/**************************************************************************//** + @Function FM_PORT_ConfigForwardReuseIntContext + + @Description This routine is relevant for Rx ports that are routed to offline + parsing. It changes the internal context reuse option + in the internal driver data base from its default configuration: + reuse = [FALSE] + + May be used for Rx ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] reuse TRUE to reuse internal context on frames + forwarded to offline parsing. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigForwardReuseIntContext(t_Handle h_FmPort, bool reuse); + +/**************************************************************************//** + @Function FM_PORT_ConfigDontReleaseTxBufToBM + + @Description This routine should be called if no Tx confirmation + is done, and yet buffers should not be released to the BM. + Normally, buffers are returned using the Tx confirmation + process. When Tx confirmation is not used (defFqid=0), + buffers are typically released to the BM. This routine + may be called to avoid this behavior and not release the + buffers. + + May be used for Tx ports only + + @Param[in] h_FmPort A handle to a FM Port module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ConfigDontReleaseTxBufToBM(t_Handle h_FmPort); + +/**************************************************************************//** + @Function FM_PORT_ConfigIMMaxRxBufLength + + @Description Changes the maximum receive buffer length from its default + configuration: Closest rounded down power of 2 value of the + data buffer size. + + The maximum receive buffer length directly affects the structure + of received frames (single- or multi-buffered) and the performance + of both the FM and the driver. + + The selection between single- or multi-buffered frames should be + done according to the characteristics of the specific application. + The recommended mode is to use a single data buffer per packet, + as this mode provides the best performance. However, the user can + select to use multiple data buffers per packet. + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] newVal Maximum receive buffer length (in bytes). + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). + This routine is to be used only if Independent-Mode is enabled. +*//***************************************************************************/ +t_Error FM_PORT_ConfigIMMaxRxBufLength(t_Handle h_FmPort, uint16_t newVal); + +/**************************************************************************//** + @Function FM_PORT_ConfigIMRxBdRingLength + + @Description Changes the receive BD ring length from its default + configuration:[128] + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] newVal The desired BD ring length. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). + This routine is to be used only if Independent-Mode is enabled. +*//***************************************************************************/ +t_Error FM_PORT_ConfigIMRxBdRingLength(t_Handle h_FmPort, uint16_t newVal); + +/**************************************************************************//** + @Function FM_PORT_ConfigIMTxBdRingLength + + @Description Changes the transmit BD ring length from its default + configuration:[16] + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] newVal The desired BD ring length. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). + This routine is to be used only if Independent-Mode is enabled. +*//***************************************************************************/ +t_Error FM_PORT_ConfigIMTxBdRingLength(t_Handle h_FmPort, uint16_t newVal); + +/**************************************************************************//** + @Function FM_PORT_ConfigIMFmanCtrlExternalStructsMemory + + @Description Configures memory partition and attributes for FMan-Controller + data structures (e.g. BD rings). + Calling this routine changes the internal driver data base + from its default configuration + [0 , MEMORY_ATTR_CACHEABLE]. + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] memId Memory partition ID. + @Param[in] memAttributes Memory attributes mask (a combination of MEMORY_ATTR_x flags). + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error FM_PORT_ConfigIMFmanCtrlExternalStructsMemory(t_Handle h_FmPort, + uint8_t memId, + uint32_t memAttributes); + +/**************************************************************************//** + @Function FM_PORT_ConfigIMPolling + + @Description Changes the Rx flow from interrupt driven (default) to polling. + + @Param[in] h_FmPort A handle to a FM Port module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). + This routine is to be used only if Independent-Mode is enabled. +*//***************************************************************************/ +t_Error FM_PORT_ConfigIMPolling(t_Handle h_FmPort); + +/** @} */ /* end of FM_PORT_advanced_init_grp group */ +/** @} */ /* end of FM_PORT_init_grp group */ + + +/**************************************************************************//** + @Group FM_PORT_runtime_control_grp FM Port Runtime Control Unit + + @Description FM Port Runtime control unit API functions, definitions and enums. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description enum for defining FM Port counters +*//***************************************************************************/ +typedef enum e_FmPortCounters { + e_FM_PORT_COUNTERS_CYCLE, /**< BMI performance counter */ + e_FM_PORT_COUNTERS_TASK_UTIL, /**< BMI performance counter */ + e_FM_PORT_COUNTERS_QUEUE_UTIL, /**< BMI performance counter */ + e_FM_PORT_COUNTERS_DMA_UTIL, /**< BMI performance counter */ + e_FM_PORT_COUNTERS_FIFO_UTIL, /**< BMI performance counter */ + e_FM_PORT_COUNTERS_RX_PAUSE_ACTIVATION, /**< BMI Rx only performance counter */ + e_FM_PORT_COUNTERS_FRAME, /**< BMI statistics counter */ + e_FM_PORT_COUNTERS_DISCARD_FRAME, /**< BMI statistics counter */ + e_FM_PORT_COUNTERS_DEALLOC_BUF, /**< BMI deallocate buffer statistics counter */ + e_FM_PORT_COUNTERS_RX_BAD_FRAME, /**< BMI Rx only statistics counter */ + e_FM_PORT_COUNTERS_RX_LARGE_FRAME, /**< BMI Rx only statistics counter */ + e_FM_PORT_COUNTERS_RX_OUT_OF_BUFFERS_DISCARD, /**< BMI Rx only statistics counter */ + e_FM_PORT_COUNTERS_RX_FILTER_FRAME, /**< BMI Rx & OP only statistics counter */ + e_FM_PORT_COUNTERS_RX_LIST_DMA_ERR, /**< BMI Rx, OP & HC only statistics counter */ + e_FM_PORT_COUNTERS_WRED_DISCARD, /**< BMI OP & HC only statistics counter */ + e_FM_PORT_COUNTERS_LENGTH_ERR, /**< BMI non-Rx statistics counter */ + e_FM_PORT_COUNTERS_UNSUPPRTED_FORMAT, /**< BMI non-Rx statistics counter */ + e_FM_PORT_COUNTERS_DEQ_TOTAL, /**< QMI counter */ + e_FM_PORT_COUNTERS_ENQ_TOTAL, /**< QMI counter */ + e_FM_PORT_COUNTERS_DEQ_FROM_DEFAULT, /**< QMI counter */ + e_FM_PORT_COUNTERS_DEQ_CONFIRM /**< QMI counter */ +} e_FmPortCounters; + +/**************************************************************************//** + @Description Structure for Port id parameters. + Fields commented 'IN' are passed by the port module to be used + by the FM module. + Fields commented 'OUT' will be filled by FM before returning to port. +*//***************************************************************************/ +typedef struct t_FmPortCongestionGrps { + uint16_t numOfCongestionGrpsToConsider; /**< The number of required congestion groups + to define the size of the following array */ + uint8_t congestionGrpsToConsider[FM_PORT_NUM_OF_CONGESTION_GRPS]; + /**< An array of 'numOfCongestionGrpsToConsider' + describing the groups */ +} t_FmPortCongestionGrps; + + + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +/**************************************************************************//** + @Function FM_PORT_DumpRegs + + @Description Dump all regs. + + Calling this routine invalidates the descriptor. + + @Param[in] h_FmPort - FM PORT module descriptor + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_DumpRegs(t_Handle h_FmPort); +#endif /* (defined(DEBUG_ERRORS) && ... */ + +/**************************************************************************//** + @Function FM_PORT_GetBufferDataOffset + + @Description Relevant for Rx ports. + Returns the data offset from the beginning of the data buffer + + @Param[in] h_FmPort - FM PORT module descriptor + + @Return data offset. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +uint32_t FM_PORT_GetBufferDataOffset(t_Handle h_FmPort); + +/**************************************************************************//** + @Function FM_PORT_GetBufferICInfo + + @Description Returns the Internal Context offset from the beginning of the data buffer + + @Param[in] h_FmPort - FM PORT module descriptor + @Param[in] p_Data - A pointer to the data buffer. + + @Return Internal context info pointer on success, NULL if 'allOtherInfo' was not + configured for this port. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +uint8_t * FM_PORT_GetBufferICInfo(t_Handle h_FmPort, char *p_Data); + +#ifdef DEBUG +/**************************************************************************//** + @Function FM_PORT_GetBufferDebugInfo + + @Description Returns the debug info offset from the beginning of the data buffer + + @Param[in] h_FmPort - FM PORT module descriptor + @Param[in] p_Data - A pointer to the data buffer. + + @Return Debug info pointer on success, NULL if 'passDebugInfo' was not + configured for this port. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +uint8_t * FM_PORT_GetBufferDebugInfo(t_Handle h_FmPort, char *p_Data); +#endif /* DEBUG */ + +/**************************************************************************//** + @Function FM_PORT_GetBufferPrsResult + + @Description Returns the pointer to the parse result in the data buffer. + In Rx ports this is relevant after reception, if parse + result is configured to be part of the data passed to the + application. For non Rx ports it may be used to get the pointer + of the area in the buffer where parse result should be + initialized - if so configured. + See FM_PORT_ConfigBufferPrefixContent for data buffer prefix + configuration. + + @Param[in] h_FmPort - FM PORT module descriptor + @Param[in] p_Data - A pointer to the data buffer. + + @Return Parse result pointer on success, NULL if parse result was not + configured for this port. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_FmPrsResult * FM_PORT_GetBufferPrsResult(t_Handle h_FmPort, char *p_Data); + +/**************************************************************************//** + @Function FM_PORT_GetBufferTimeStamp + + @Description Returns the time stamp in the data buffer. + Relevant for Rx ports for getting the buffer time stamp. + See FM_PORT_ConfigBufferPrefixContent for data buffer prefix + configuration. + + @Param[in] h_FmPort - FM PORT module descriptor + @Param[in] p_Data - A pointer to the data buffer. + + @Return A pointer to the hash result on success, NULL otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +uint64_t * FM_PORT_GetBufferTimeStamp(t_Handle h_FmPort, char *p_Data); + +/**************************************************************************//** + @Function FM_PORT_GetBufferHashResult + + @Description Given a data buffer, on the condition that hash result was defined + as a part of the buffer content (see FM_PORT_ConfigBufferPrefixContent) + this routine will return the pointer to the hash result location in the + buffer prefix. + + @Param[in] h_FmPort - FM PORT module descriptor + @Param[in] p_Data - A pointer to the data buffer. + + @Return A pointer to the hash result on success, NULL otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +uint8_t * FM_PORT_GetBufferHashResult(t_Handle h_FmPort, char *p_Data); + +/**************************************************************************//** + @Function FM_PORT_Disable + + @Description Gracefully disable an FM port. The port will not start new tasks after all + tasks associated with the port are terminated. + + @Param[in] h_FmPort A handle to a FM Port module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). + This is a blocking routine, it returns after port is + gracefully stopped, i.e. the port will not except new frames, + but it will finish all frames or tasks which were already began +*//***************************************************************************/ +t_Error FM_PORT_Disable(t_Handle h_FmPort); + +/**************************************************************************//** + @Function FM_PORT_Enable + + @Description A runtime routine provided to allow disable/enable of port. + + @Param[in] h_FmPort A handle to a FM Port module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_Enable(t_Handle h_FmPort); + +/**************************************************************************//** + @Function FM_PORT_SetRateLimit + + @Description Calling this routine enables rate limit algorithm. + By default, this functionality is disabled. + Note that rate-limit mechanism uses the FM time stamp. + The selected rate limit specified here would be + rounded DOWN to the nearest 16M. + + May be used for Tx and offline parsing ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_RateLimit A structure of rate limit parameters + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_SetRateLimit(t_Handle h_FmPort, t_FmPortRateLimit *p_RateLimit); + +/**************************************************************************//** + @Function FM_PORT_DeleteRateLimit + + @Description Calling this routine disables and clears rate limit + initialization. + + May be used for Tx and offline parsing ports only + + @Param[in] h_FmPort A handle to a FM Port module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_DeleteRateLimit(t_Handle h_FmPort); + +/**************************************************************************//** + @Function FM_PORT_SetStatisticsCounters + + @Description Calling this routine enables/disables port's statistics counters. + By default, counters are enabled. + + May be used for all port types + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] enable TRUE to enable, FALSE to disable. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_SetStatisticsCounters(t_Handle h_FmPort, bool enable); + +/**************************************************************************//** + @Function FM_PORT_SetFrameQueueCounters + + @Description Calling this routine enables/disables port's enqueue/dequeue counters. + By default, counters are enabled. + + May be used for all ports + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] enable TRUE to enable, FALSE to disable. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_SetFrameQueueCounters(t_Handle h_FmPort, bool enable); + +/**************************************************************************//** + @Function FM_PORT_SetPerformanceCounters + + @Description Calling this routine enables/disables port's performance counters. + By default, counters are enabled. + + May be used for all port types + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] enable TRUE to enable, FALSE to disable. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_SetPerformanceCounters(t_Handle h_FmPort, bool enable); + +/**************************************************************************//** + @Function FM_PORT_SetPerformanceCounters + + @Description Calling this routine defines port's performance + counters parameters. + + May be used for all port types + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_FmPortPerformanceCnt A pointer to a structure of performance + counters parameters. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_SetPerformanceCountersParams(t_Handle h_FmPort, t_FmPortPerformanceCnt *p_FmPortPerformanceCnt); + +/**************************************************************************//** + @Function FM_PORT_AnalyzePerformanceParams + + @Description User may call this routine to so the driver will analyze if the + basic performance parameters are correct and also the driver may + suggest of improvments; The basic parameters are FIFO sizes, number + of DMAs and number of TNUMs for the port. + + May be used for all port types + + @Param[in] h_FmPort A handle to a FM Port module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_AnalyzePerformanceParams(t_Handle h_FmPort); + +/**************************************************************************//** + @Function FM_PORT_SetNumOfOpenDmas + + @Description Calling this routine updates the number of open DMA requested for + this port. + + + May be used for all port types. + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_NumOfOpenDmas A structure of resource requested parameters + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_SetNumOfOpenDmas(t_Handle h_FmPort, t_FmPortRsrc *p_NumOfOpenDmas); + +/**************************************************************************//** + @Function FM_PORT_SetNumOfTasks + + @Description Calling this routine updates the number of tasks requested for + this port. + + May be used for all port types. + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_NumOfTasks A structure of resource requested parameters + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_SetNumOfTasks(t_Handle h_FmPort, t_FmPortRsrc *p_NumOfTasks); + +/**************************************************************************//** + @Function FM_PORT_SetSizeOfFifo + + @Description Calling this routine updates the Fifo size resource requested for + this port. + + May be used for all port types - note that only Rx has 'extra' + fifo size. For other ports 'extra' field must be disabled. + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_SizeOfFifo A structure of resource requested parameters + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_SetSizeOfFifo(t_Handle h_FmPort, t_FmPortRsrc *p_SizeOfFifo); + +/**************************************************************************//** + @Function FM_PORT_SetAllocBufCounter + + @Description Calling this routine enables/disables BM pool allocate + buffer counters. + By default, counters are enabled. + + May be used for Rx ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] poolId BM pool id. + @Param[in] enable TRUE to enable, FALSE to disable. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_SetAllocBufCounter(t_Handle h_FmPort, uint8_t poolId, bool enable); + +/**************************************************************************//** + @Function FM_PORT_GetCounter + + @Description Reads one of the FM PORT counters. + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] fmPortCounter The requested counter. + + @Return Counter's current value. + + @Cautions Allowed only following FM_PORT_Init(). + Note that it is user's responsibility to call this routine only + for enabled counters, and there will be no indication if a + disabled counter is accessed. +*//***************************************************************************/ +uint32_t FM_PORT_GetCounter(t_Handle h_FmPort, e_FmPortCounters fmPortCounter); + +/**************************************************************************//** + @Function FM_PORT_ModifyCounter + + @Description Sets a value to an enabled counter. Use "0" to reset the counter. + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] fmPortCounter The requested counter. + @Param[in] value The requested value to be written into the counter. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ModifyCounter(t_Handle h_FmPort, e_FmPortCounters fmPortCounter, uint32_t value); + +/**************************************************************************//** + @Function FM_PORT_GetAllocBufCounter + + @Description Reads one of the FM PORT buffer counters. + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] poolId The requested pool. + + @Return Counter's current value. + + @Cautions Allowed only following FM_PORT_Init(). + Note that it is user's responsibility to call this routine only + for enabled counters, and there will be no indication if a + disabled counter is accessed. +*//***************************************************************************/ +uint32_t FM_PORT_GetAllocBufCounter(t_Handle h_FmPort, uint8_t poolId); + +/**************************************************************************//** + @Function FM_PORT_ModifyAllocBufCounter + + @Description Sets a value to an enabled counter. Use "0" to reset the counter. + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] poolId The requested pool. + @Param[in] value The requested value to be written into the counter. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ModifyAllocBufCounter(t_Handle h_FmPort, uint8_t poolId, uint32_t value); + +/**************************************************************************//** + @Function FM_PORT_AddCongestionGrps + + @Description This routine effects the corresponding Tx port. + It should be called in order to enable pause + frame transmission in case of congestion in one or more + of the congestion groups relevant to this port. + Each call to this routine may add one or more congestion + groups to be considered relevant to this port. + + May be used for Rx, or RX+OP ports only (depending on chip) + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_CongestionGrps A pointer to an array of congestion groups + id's to consider. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_AddCongestionGrps(t_Handle h_FmPort, t_FmPortCongestionGrps *p_CongestionGrps); + +/**************************************************************************//** + @Function FM_PORT_RemoveCongestionGrps + + @Description This routine effects the corresponding Tx port. It should be + called when congestion groups were + defined for this port and are no longer relevant, or pause + frames transmitting is not required on their behalf. + Each call to this routine may remove one or more congestion + groups to be considered relevant to this port. + + May be used for Rx, or RX+OP ports only (depending on chip) + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_CongestionGrps A pointer to an array of congestion groups + id's to consider. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_RemoveCongestionGrps(t_Handle h_FmPort, t_FmPortCongestionGrps *p_CongestionGrps); + +/**************************************************************************//** + @Function FM_PORT_IsStalled + + @Description A routine for checking whether the specified port is stalled. + + @Param[in] h_FmPort A handle to a FM Port module. + + @Return TRUE if port is stalled, FALSE otherwize + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +bool FM_PORT_IsStalled(t_Handle h_FmPort); + +/**************************************************************************//** + @Function FM_PORT_ReleaseStalled + + @Description This routine may be called in case the port was stalled and may + now be released. + + @Param[in] h_FmPort A handle to a FM Port module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_ReleaseStalled(t_Handle h_FmPort); + +/**************************************************************************//** + @Function FM_PORT_SetRxL4ChecksumVerify + + @Description This routine is relevant for Rx ports (1G and 10G). The routine + set/clear the L3/L4 checksum verification (on RX side). + Note that this takes affect only if hw-parser is enabled! + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] l4Checksum boolean indicates whether to do L3/L4 checksum + on frames or not. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_SetRxL4ChecksumVerify(t_Handle h_FmPort, bool l4Checksum); + +/**************************************************************************//** + @Function FM_PORT_SetErrorsRoute + + @Description Errors selected for this routine will cause a frame with that error + to be enqueued to error queue. + Errors not selected for this routine will cause a frame with that error + to be enqueued to the one of the other port queues. + By default all errors are defined to be enqueued to error queue. + Errors that were configured to be discarded (at initialization) + may not be selected here. + + May be used for Rx and offline parsing ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] errs A list of errors to enqueue to error queue + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Config() and before FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_SetErrorsRoute(t_Handle h_FmPort, fmPortFrameErrSelect_t errs); + +/**************************************************************************//** + @Function FM_PORT_SetIMExceptions + + @Description Calling this routine enables/disables FM PORT interrupts. + Note: Not available for guest partition. + + @Param[in] h_FmPort FM PORT module descriptor. + @Param[in] exception The exception to be selected. + @Param[in] enable TRUE to enable interrupt, FALSE to mask it. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_SetIMExceptions(t_Handle h_FmPort, e_FmPortExceptions exception, bool enable); + + + +/**************************************************************************//** + @Group FM_PORT_pcd_runtime_control_grp FM Port PCD Runtime Control Unit + + @Description FM Port PCD Runtime control unit API functions, definitions and enums. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description A structure defining the KG scheme after the parser. + This is relevant only to change scheme selection mode - from + direct to indirect and vice versa, or when the scheme is selected directly, + to select the scheme id. + +*//***************************************************************************/ +typedef struct t_FmPcdKgSchemeSelect { + bool direct; /**< TRUE to use 'h_Scheme' directly, FALSE to use LCV.*/ + t_Handle h_DirectScheme; /**< Relevant for 'direct'=TRUE only. + 'h_DirectScheme' selects the scheme after parser. */ +} t_FmPcdKgSchemeSelect; + +/**************************************************************************//** + @Description A structure of scheme parameters +*//***************************************************************************/ +typedef struct t_FmPcdPortSchemesParams { + uint8_t numOfSchemes; /**< Number of schemes for port to be bound to. */ + t_Handle h_Schemes[FM_PCD_KG_NUM_OF_SCHEMES]; /**< Array of 'numOfSchemes' schemes for the + port to be bound to */ +} t_FmPcdPortSchemesParams; + +/**************************************************************************//** + @Description Union for defining port protocol parameters for parser +*//***************************************************************************/ +typedef union u_FmPcdHdrPrsOpts { + /* MPLS */ + struct { + bool labelInterpretationEnable; /**< When this bit is set, the last MPLS label will be + interpreted as described in HW spec table. When the bit + is cleared, the parser will advance to MPLS next parse */ + e_NetHeaderType nextParse; /**< must be equal or higher than IPv4 */ + } mplsPrsOptions; + /* VLAN */ + struct { + uint16_t tagProtocolId1; /**< User defined Tag Protocol Identifier, to be recognized + on VLAN TAG on top of 0x8100 and 0x88A8 */ + uint16_t tagProtocolId2; /**< User defined Tag Protocol Identifier, to be recognized + on VLAN TAG on top of 0x8100 and 0x88A8 */ + } vlanPrsOptions; + /* PPP */ + struct{ + bool enableMTUCheck; /**< Check validity of MTU according to RFC2516 */ + } pppoePrsOptions; + + /* IPV6 */ + struct{ + bool routingHdrDisable; /**< Disable routing header */ + } ipv6PrsOptions; + + /* UDP */ + struct{ + bool padIgnoreChecksum; /**< TRUE to ignore pad in checksum */ + } udpPrsOptions; + + /* TCP */ + struct { + bool padIgnoreChecksum; /**< TRUE to ignore pad in checksum */ + } tcpPrsOptions; +} u_FmPcdHdrPrsOpts; + +/**************************************************************************//** + @Description A structure for defining each header for the parser +*//***************************************************************************/ +typedef struct t_FmPcdPrsAdditionalHdrParams { + e_NetHeaderType hdr; /**< Selected header */ + bool errDisable; /**< TRUE to disable error indication */ + bool swPrsEnable; /**< Enable jump to SW parser when this + header is recognized by the HW parser. */ + uint8_t indexPerHdr; /**< Normally 0, if more than one sw parser + attachments exists for the same header, + (in the main sw parser code) use this + index to distinguish between them. */ + bool usePrsOpts; /**< TRUE to use parser options. */ + u_FmPcdHdrPrsOpts prsOpts; /**< A union according to header type, + defining the parser options selected.*/ +} t_FmPcdPrsAdditionalHdrParams; + +/**************************************************************************//** + @Description struct for defining port PCD parameters +*//***************************************************************************/ +typedef struct t_FmPortPcdPrsParams { + uint8_t prsResultPrivateInfo; /**< The private info provides a method of inserting + port information into the parser result. This information + may be extracted by Keygen and be used for frames + distribution when a per-port distinction is required, + it may also be used as a port logical id for analyzing + incoming frames. */ + uint8_t parsingOffset; /**< Number of bytes from beginning of packet to start parsing */ + e_NetHeaderType firstPrsHdr; /**< The type of the first header expected at 'parsingOffset' */ + bool includeInPrsStatistics; /**< TRUE to include this port in the parser statistics; + NOTE: this field is not valid when the FN is in "guest" mode. */ + uint8_t numOfHdrsWithAdditionalParams; /**< Normally 0, some headers may get + special parameters */ + t_FmPcdPrsAdditionalHdrParams additionalParams[FM_PCD_PRS_NUM_OF_HDRS]; + /**< 'numOfHdrsWithAdditionalParams' structures + of additional parameters + for each header that requires them */ + bool setVlanTpid1; /**< TRUE to configure user selection of Ethertype to + indicate a VLAN tag (in addition to the TPID values + 0x8100 and 0x88A8). */ + uint16_t vlanTpid1; /**< extra tag to use if setVlanTpid1=TRUE. */ + bool setVlanTpid2; /**< TRUE to configure user selection of Ethertype to + indicate a VLAN tag (in addition to the TPID values + 0x8100 and 0x88A8). */ + uint16_t vlanTpid2; /**< extra tag to use if setVlanTpid1=TRUE. */ +} t_FmPortPcdPrsParams; + +/**************************************************************************//** + @Description struct for defining coarse alassification parameters +*//***************************************************************************/ +typedef struct t_FmPortPcdCcParams { + t_Handle h_CcTree; /**< A handle to a CC tree */ +} t_FmPortPcdCcParams; + +/**************************************************************************//** + @Description struct for defining keygen parameters +*//***************************************************************************/ +typedef struct t_FmPortPcdKgParams { + uint8_t numOfSchemes; /**< Number of schemes for port to be bound to. */ + t_Handle h_Schemes[FM_PCD_KG_NUM_OF_SCHEMES]; + /**< Array of 'numOfSchemes' schemes handles for the + port to be bound to */ + bool directScheme; /**< TRUE for going from parser to a specific scheme, + regardless of parser result */ + t_Handle h_DirectScheme; /**< relevant only if direct == TRUE, Scheme handle, + as returned by FM_PCD_KgSetScheme */ +} t_FmPortPcdKgParams; + +/**************************************************************************//** + @Description struct for defining policer parameters +*//***************************************************************************/ +typedef struct t_FmPortPcdPlcrParams { + t_Handle h_Profile; /**< Selected profile handle; Relevant for one of + following cases: + e_FM_PORT_PCD_SUPPORT_PLCR_ONLY or + e_FM_PORT_PCD_SUPPORT_PRS_AND_PLCR were selected, + or if any flow uses a KG scheme were policer + profile is not generated + (bypassPlcrProfileGeneration selected) */ +} t_FmPortPcdPlcrParams; + +/**************************************************************************//** + @Description struct for defining port PCD parameters +*//***************************************************************************/ +typedef struct t_FmPortPcdParams { + e_FmPortPcdSupport pcdSupport; /**< Relevant for Rx and offline ports only. + Describes the active PCD engines for this port. */ + t_Handle h_NetEnv; /**< HL Unused in PLCR only mode */ + t_FmPortPcdPrsParams *p_PrsParams; /**< Parser parameters for this port */ + t_FmPortPcdCcParams *p_CcParams; /**< Coarse classification parameters for this port */ + t_FmPortPcdKgParams *p_KgParams; /**< Keygen parameters for this port */ + t_FmPortPcdPlcrParams *p_PlcrParams; /**< Policer parameters for this port */ +} t_FmPortPcdParams; + +/**************************************************************************//** + @Description A structure for defining the Parser starting point +*//***************************************************************************/ +typedef struct t_FmPcdPrsStart { + uint8_t parsingOffset; /**< Number of bytes from beginning of packet to + start parsing */ + e_NetHeaderType firstPrsHdr; /**< The type of the first header axpected at + 'parsingOffset' */ +} t_FmPcdPrsStart; + + +/**************************************************************************//** + @Function FM_PORT_SetPCD + + @Description Calling this routine defines the port's PCD configuration. + It changes it from its default configuration which is PCD + disabled (BMI to BMI) and configures it according to the passed + parameters. + + May be used for Rx and offline parsing ports only + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_FmPortPcd A Structure of parameters defining the port's PCD + configuration. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_SetPCD(t_Handle h_FmPort, t_FmPortPcdParams *p_FmPortPcd); + +/**************************************************************************//** + @Function FM_PORT_DeletePCD + + @Description Calling this routine releases the port's PCD configuration. + The port returns to its default configuration which is PCD + disabled (BMI to BMI) and all PCD configuration is removed. + + May be used for Rx and offline parsing ports which are + in PCD mode only + + @Param[in] h_FmPort A handle to a FM Port module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_DeletePCD(t_Handle h_FmPort); + +/**************************************************************************//** + @Function FM_PORT_AttachPCD + + @Description This routine may be called after FM_PORT_DetachPCD was called, + to return to the originally configured PCD support flow. + The couple of routines are used to allow PCD configuration changes + that demand that PCD will not be used while changes take place. + + May be used for Rx and offline parsing ports which are + in PCD mode only + + @Param[in] h_FmPort A handle to a FM Port module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). +*//***************************************************************************/ +t_Error FM_PORT_AttachPCD(t_Handle h_FmPort); + +/**************************************************************************//** + @Function FM_PORT_DetachPCD + + @Description Calling this routine detaches the port from its PCD functionality. + The port returns to its default flow which is BMI to BMI. + + May be used for Rx and offline parsing ports which are + in PCD mode only + + @Param[in] h_FmPort A handle to a FM Port module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_AttachPCD(). +*//***************************************************************************/ +t_Error FM_PORT_DetachPCD(t_Handle h_FmPort); + +/**************************************************************************//** + @Function FM_PORT_PcdPlcrAllocProfiles + + @Description This routine may be called only for ports that use the Policer in + order to allocate private policer profiles. + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] numOfProfiles The number of required policer profiles + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init() and FM_PCD_Init(), and before FM_PORT_SetPCD(). +*//***************************************************************************/ +t_Error FM_PORT_PcdPlcrAllocProfiles(t_Handle h_FmPort, uint16_t numOfProfiles); + +/**************************************************************************//** + @Function FM_PORT_PcdPlcrFreeProfiles + + @Description This routine should be called for freeing private policer profiles. + + @Param[in] h_FmPort A handle to a FM Port module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init() and FM_PCD_Init(), and before FM_PORT_SetPCD(). +*//***************************************************************************/ +t_Error FM_PORT_PcdPlcrFreeProfiles(t_Handle h_FmPort); + +/**************************************************************************//** + @Function FM_PORT_PcdKgModifyInitialScheme + + @Description This routine may be called only for ports that use the keygen in + order to change the initial scheme frame should be routed to. + The change may be of a scheme id (in case of direct mode), + from direct to indirect, or from indirect to direct - specifying the scheme id. + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_FmPcdKgScheme A structure of parameters for defining whether + a scheme is direct/indirect, and if direct - scheme id. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init() and FM_PORT_SetPCD(). +*//***************************************************************************/ +t_Error FM_PORT_PcdKgModifyInitialScheme (t_Handle h_FmPort, t_FmPcdKgSchemeSelect *p_FmPcdKgScheme); + +/**************************************************************************//** + @Function FM_PORT_PcdPlcrModifyInitialProfile + + @Description This routine may be called for ports with flows + e_FM_PORT_PCD_SUPPORT_PLCR_ONLY or e_FM_PORT_PCD_SUPPORT_PRS_AND_PLCR + only, to change the initial Policer profile frame should be + routed to. The change may be of a profile and/or absolute/direct + mode selection. + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] h_Profile Policer profile handle + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init() and FM_PORT_SetPCD(). +*//***************************************************************************/ +t_Error FM_PORT_PcdPlcrModifyInitialProfile (t_Handle h_FmPort, t_Handle h_Profile); + +/**************************************************************************//** + @Function FM_PORT_PcdCcModifyTree + + @Description This routine may be called for ports that use coarse classification tree + if the user wishes to replace the tree. The routine may not be called while port + receives packets using the PCD functionalities, therefor port must be first detached + from the PCD, only than the routine may be called, and than port be attached to PCD again. + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] h_CcTree A CC tree that was already built. The tree id as returned from + the BuildTree routine. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(), FM_PORT_SetPCD() and FM_PORT_DetachPCD() +*//***************************************************************************/ +t_Error FM_PORT_PcdCcModifyTree (t_Handle h_FmPort, t_Handle h_CcTree); + +/**************************************************************************//** + @Function FM_PORT_PcdKgBindSchemes + + @Description These routines may be called for adding more schemes for the + port to be bound to. The selected schemes are not added, + just this specific port starts using them. + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_PortScheme A structure defining the list of schemes to be added. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init() and FM_PORT_SetPCD(). +*//***************************************************************************/ +t_Error FM_PORT_PcdKgBindSchemes (t_Handle h_FmPort, t_FmPcdPortSchemesParams *p_PortScheme); + +/**************************************************************************//** + @Function FM_PORT_PcdKgUnbindSchemes + + @Description These routines may be called for adding more schemes for the + port to be bound to. The selected schemes are not removed or invalidated, + just this specific port stops using them. + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_PortScheme A structure defining the list of schemes to be added. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init() and FM_PORT_SetPCD(). +*//***************************************************************************/ +t_Error FM_PORT_PcdKgUnbindSchemes (t_Handle h_FmPort, t_FmPcdPortSchemesParams *p_PortScheme); + +/**************************************************************************//** + @Function FM_PORT_PcdPrsModifyStartOffset + + @Description Runtime change of the parser start offset within the header. + The routine may not be called while port + receives packets using the PCD functionalities, therefore port must be first detached + from the PCD, only than the routine may be called, and than port be attached to PCD again. + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_FmPcdPrsStart A structure of parameters for defining the + start point for the parser. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(), FM_PORT_SetPCD() and FM_PORT_DetatchPCD(). +*//***************************************************************************/ +t_Error FM_PORT_PcdPrsModifyStartOffset (t_Handle h_FmPort, t_FmPcdPrsStart *p_FmPcdPrsStart); + +/** @} */ /* end of FM_PORT_pcd_runtime_control_grp group */ +/** @} */ /* end of FM_PORT_runtime_control_grp group */ + + +/**************************************************************************//** + @Group FM_PORT_runtime_data_grp FM Port Runtime Data-path Unit + + @Description FM Port Runtime data unit API functions, definitions and enums. + This API is valid only if working in Independent-Mode. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Function FM_PORT_ImTx + + @Description Tx function, called to transmit a data buffer on the port. + + @Param[in] h_FmPort A handle to a FM Port module. + @Param[in] p_Data A pointer to an LCP data buffer. + @Param[in] length Size of data for transmission. + @Param[in] lastBuffer Buffer position - TRUE for the last buffer + of a frame, including a single buffer frame + @Param[in] h_BufContext A handle of the user acossiated with this buffer + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). + NOTE - This routine can be used only when working in + Independent-Mode mode. +*//***************************************************************************/ +t_Error FM_PORT_ImTx( t_Handle h_FmPort, + uint8_t *p_Data, + uint16_t length, + bool lastBuffer, + t_Handle h_BufContext); + +/**************************************************************************//** + @Function FM_PORT_ImTxConf + + @Description Tx port confirmation routine, optional, may be called to verify + transmission of all frames. The procedure performed by this + routine will be performed automatically on next buffer transmission, + but if desired, calling this routine will invoke this action on + demand. + + @Param[in] h_FmPort A handle to a FM Port module. + + @Cautions Allowed only following FM_PORT_Init(). + NOTE - This routine can be used only when working in + Independent-Mode mode. +*//***************************************************************************/ +void FM_PORT_ImTxConf(t_Handle h_FmPort); + +/**************************************************************************//** + @Function FM_PORT_ImRx + + @Description Rx function, may be called to poll for received buffers. + Normally, Rx process is invoked by the driver on Rx interrupt. + Alternatively, this routine may be called on demand. + + @Param[in] h_FmPort A handle to a FM Port module. + + @Return E_OK on success; Error code otherwise. + + @Cautions Allowed only following FM_PORT_Init(). + NOTE - This routine can be used only when working in + Independent-Mode mode. +*//***************************************************************************/ +t_Error FM_PORT_ImRx(t_Handle h_FmPort); + +/** @} */ /* end of FM_PORT_runtime_data_grp group */ +/** @} */ /* end of FM_PORT_grp group */ +/** @} */ /* end of FM_grp group */ + + + + +#endif /* __FM_PORT_EXT */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/Peripherals/fm_rtc_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/Peripherals/fm_rtc_ext.h @@ -0,0 +1,592 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + @File fm_rtc_ext.h + + @Description External definitions and API for FM RTC IEEE1588 Timer Module. + + @Cautions None. +*//***************************************************************************/ + +#ifndef __FM_RTC_EXT_H__ +#define __FM_RTC_EXT_H__ + + +#include "error_ext.h" +#include "std_ext.h" + + +/**************************************************************************//** + + @Group FM_grp Frame Manager API + + @Description FM API functions, definitions and enums + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group fm_rtc_grp FM RTC + + @Description FM RTC functions, definitions and enums. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group fm_rtc_init_grp FM RTC Initialization Unit + + @Description FM RTC initialization API. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description FM RTC Alarm Polarity Options. +*//***************************************************************************/ +typedef enum e_FmRtcAlarmPolarity +{ + e_FM_RTC_ALARM_POLARITY_ACTIVE_HIGH, /**< Active-high output polarity */ + e_FM_RTC_ALARM_POLARITY_ACTIVE_LOW /**< Active-low output polarity */ +} e_FmRtcAlarmPolarity; + +/**************************************************************************//** + @Description FM RTC Trigger Polarity Options. +*//***************************************************************************/ +typedef enum e_FmRtcTriggerPolarity +{ + e_FM_RTC_TRIGGER_ON_RISING_EDGE, /**< Trigger on rising edge */ + e_FM_RTC_TRIGGER_ON_FALLING_EDGE /**< Trigger on falling edge */ +} e_FmRtcTriggerPolarity; + +/**************************************************************************//** + @Description IEEE1588 Timer Module FM RTC Optional Clock Sources. +*//***************************************************************************/ +typedef enum e_FmSrcClock +{ + e_FM_RTC_SOURCE_CLOCK_EXTERNAL, /**< external high precision timer reference clock */ + e_FM_RTC_SOURCE_CLOCK_SYSTEM, /**< MAC system clock */ + e_FM_RTC_SOURCE_CLOCK_OSCILATOR /**< RTC clock oscilator */ +}e_FmSrcClk; + +/**************************************************************************//** + @Description FM RTC configuration parameters structure. + + This structure should be passed to FM_RTC_Config(). +*//***************************************************************************/ +typedef struct t_FmRtcParams +{ + t_Handle h_Fm; /**< FM Handle*/ + uintptr_t baseAddress; /**< Base address of FM RTC registers */ + t_Handle h_App; /**< A handle to an application layer object; This handle will + be passed by the driver upon calling the above callbacks */ +} t_FmRtcParams; + + +/**************************************************************************//** + @Function FM_RTC_Config + + @Description Configures the FM RTC module according to user's parameters. + + The driver assigns default values to some FM RTC parameters. + These parameters can be overwritten using the advanced + configuration routines. + + @Param[in] p_FmRtcParam - FM RTC configuration parameters. + + @Return Handle to the new FM RTC object; NULL pointer on failure. + + @Cautions None +*//***************************************************************************/ +t_Handle FM_RTC_Config(t_FmRtcParams *p_FmRtcParam); + +/**************************************************************************//** + @Function FM_RTC_Init + + @Description Initializes the FM RTC driver and hardware. + + @Param[in] h_FmRtc - Handle to FM RTC object. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously created using FM_RTC_Config(). +*//***************************************************************************/ +t_Error FM_RTC_Init(t_Handle h_FmRtc); + +/**************************************************************************//** + @Function FM_RTC_Free + + @Description Frees the FM RTC object and all allocated resources. + + @Param[in] h_FmRtc - Handle to FM RTC object. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously created using FM_RTC_Config(). +*//***************************************************************************/ +t_Error FM_RTC_Free(t_Handle h_FmRtc); + + +/**************************************************************************//** + @Group fm_rtc_adv_config_grp FM RTC Advanced Configuration Unit + + @Description FM RTC advanced configuration functions. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Function FM_RTC_ConfigPeriod + + @Description Configures the period of the timestamp if different than + default [1000]. + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] period - Period in nano-seconds. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously created using FM_RTC_Config(). +*//***************************************************************************/ +t_Error FM_RTC_ConfigPeriod(t_Handle h_FmRtc, uint32_t period); + +/**************************************************************************//** + @Function FM_RTC_ConfigSourceClock + + @Description Configures the source clock of the RTC. + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] srcClk - Source clock selection. + @Param[in] freqInMhz - the source-clock frequency (in MHz). + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously created using FM_RTC_Config(). +*//***************************************************************************/ +t_Error FM_RTC_ConfigSourceClock(t_Handle h_FmRtc, + e_FmSrcClk srcClk, + uint32_t freqInMhz); + +/**************************************************************************//** + @Function FM_RTC_ConfigPulseRealignment + + @Description Configures the RTC to automatic FIPER pulse realignment in + response to timer adjustments [FALSE] + + In this mode, the RTC clock is identical to the source clock. + This feature can be useful when the system contains an external + RTC with inherent frequency compensation. + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] enable - TRUE to enable automatic realignment. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously created using FM_RTC_Config(). +*//***************************************************************************/ +t_Error FM_RTC_ConfigPulseRealignment(t_Handle h_FmRtc, bool enable); + +/**************************************************************************//** + @Function FM_RTC_ConfigFrequencyBypass + + @Description Configures the RTC to bypass the frequency compensation + mechanism. [FALSE] + + In this mode, the RTC clock is identical to the source clock. + This feature can be useful when the system contains an external + RTC with inherent frequency compensation. + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] enabled - TRUE to bypass frequency compensation; + FALSE otherwise. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously created using FM_RTC_Config(). +*//***************************************************************************/ +t_Error FM_RTC_ConfigFrequencyBypass(t_Handle h_FmRtc, bool enabled); + +/**************************************************************************//** + @Function FM_RTC_ConfigInvertedInputClockPhase + + @Description Configures the RTC to invert the source clock phase on input. + [FALSE] + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] inverted - TRUE to invert the source clock phase on input. + FALSE otherwise. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously created using FM_RTC_Config(). +*//***************************************************************************/ +t_Error FM_RTC_ConfigInvertedInputClockPhase(t_Handle h_FmRtc, bool inverted); + +/**************************************************************************//** + @Function FM_RTC_ConfigInvertedOutputClockPhase + + @Description Configures the RTC to invert the output clock phase. + [FALSE] + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] inverted - TRUE to invert the output clock phase. + FALSE otherwise. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously created using FM_RTC_Config(). +*//***************************************************************************/ +t_Error FM_RTC_ConfigInvertedOutputClockPhase(t_Handle h_FmRtc, bool inverted); + +/**************************************************************************//** + @Function FM_RTC_ConfigOutputClockDivisor + + @Description Configures the divisor for generating the output clock from + the RTC clock. [0x00000002] + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] divisor - Divisor for generation of the output clock. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously created using FM_RTC_Config(). +*//***************************************************************************/ +t_Error FM_RTC_ConfigOutputClockDivisor(t_Handle h_FmRtc, uint16_t divisor); + +/**************************************************************************//** + @Function FM_RTC_ConfigAlarmPolarity + + @Description Configures the polarity (active-high/active-low) of a specific + alarm signal. [e_FM_RTC_ALARM_POLARITY_ACTIVE_HIGH] + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] alarmId - Alarm ID. + @Param[in] alarmPolarity - Alarm polarity. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously created using FM_RTC_Config(). +*//***************************************************************************/ +t_Error FM_RTC_ConfigAlarmPolarity(t_Handle h_FmRtc, + uint8_t alarmId, + e_FmRtcAlarmPolarity alarmPolarity); + +/**************************************************************************//** + @Function FM_RTC_ConfigExternalTriggerPolarity + + @Description Configures the polarity (rising/falling edge) of a specific + external trigger signal. [e_FM_RTC_TRIGGER_ON_FALLING_EDGE] + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] triggerId - Trigger ID. + @Param[in] triggerPolarity - Trigger polarity. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously created using FM_RTC_Config(). +*//***************************************************************************/ +t_Error FM_RTC_ConfigExternalTriggerPolarity(t_Handle h_FmRtc, + uint8_t triggerId, + e_FmRtcTriggerPolarity triggerPolarity); + +/** @} */ /* end of fm_rtc_adv_config_grp */ +/** @} */ /* end of fm_rtc_init_grp */ + + +/**************************************************************************//** + @Group fm_rtc_control_grp FM RTC Control Unit + + @Description FM RTC runtime control API. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Function t_FmRtcExceptionsCallback + + @Description Exceptions user callback routine, used for RTC different mechanisms. + + @Param[in] h_App - User's application descriptor. + @Param[in] id - source id. +*//***************************************************************************/ +typedef void (t_FmRtcExceptionsCallback) ( t_Handle h_App, uint8_t id); + +/**************************************************************************//** + @Description FM RTC alarm parameters. +*//***************************************************************************/ +typedef struct t_FmRtcAlarmParams { + uint8_t alarmId; /**< 0 or 1 */ + uint64_t alarmTime; /**< In nanoseconds, the time when the alarm + should go off - must be a multiple of + the RTC period */ + t_FmRtcExceptionsCallback *f_AlarmCallback; /**< This routine will be called when RTC + reaches alarmTime */ + bool clearOnExpiration; /**< TRUE to turn off the alarm once expired. */ +} t_FmRtcAlarmParams; + +/**************************************************************************//** + @Description FM RTC Periodic Pulse parameters. +*//***************************************************************************/ +typedef struct t_FmRtcPeriodicPulseParams { + uint8_t periodicPulseId; /**< 0 or 1 */ + uint64_t periodicPulsePeriod; /**< In Nanoseconds. Must be + a multiple of the RTC period */ + t_FmRtcExceptionsCallback *f_PeriodicPulseCallback; /**< This routine will be called every + periodicPulsePeriod. */ +} t_FmRtcPeriodicPulseParams; + +/**************************************************************************//** + @Description FM RTC Periodic Pulse parameters. +*//***************************************************************************/ +typedef struct t_FmRtcExternalTriggerParams { + uint8_t externalTriggerId; /**< 0 or 1 */ + bool usePulseAsInput; /**< Use the pulse interrupt instead of + an external signal */ + t_FmRtcExceptionsCallback *f_ExternalTriggerCallback; /**< This routine will be called every + periodicPulsePeriod. */ +} t_FmRtcExternalTriggerParams; + + +/**************************************************************************//** + @Function FM_RTC_Enable + + @Description Enable the RTC (time count is started). + + The user can select to resume the time count from previous + point, or to restart the time count. + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] resetClock - Restart the time count from zero. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously initialized using FM_RTC_Init(). +*//***************************************************************************/ +t_Error FM_RTC_Enable(t_Handle h_FmRtc, bool resetClock); + +/**************************************************************************//** + @Function FM_RTC_Disable + + @Description Disables the RTC (time count is stopped). + + @Param[in] h_FmRtc - Handle to FM RTC object. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously initialized using FM_RTC_Init(). +*//***************************************************************************/ +t_Error FM_RTC_Disable(t_Handle h_FmRtc); + +/**************************************************************************//** + @Function FM_RTC_SetClockOffset + + @Description Sets the clock offset (usually relative to another clock). + + The user can pass a negative offset value. + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] offset - New clock offset (in nanoseconds). + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously initialized using FM_RTC_Init(). +*//***************************************************************************/ +t_Error FM_RTC_SetClockOffset(t_Handle h_FmRtc, int64_t offset); + +/**************************************************************************//** + @Function FM_RTC_SetAlarm + + @Description Schedules an alarm event to a given RTC time. + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] p_FmRtcAlarmParams - Alarm parameters. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously initialized using FM_RTC_Init(). + Must be called only prior to FM_RTC_Enable(). +*//***************************************************************************/ +t_Error FM_RTC_SetAlarm(t_Handle h_FmRtc, t_FmRtcAlarmParams *p_FmRtcAlarmParams); + +/**************************************************************************//** + @Function FM_RTC_SetPeriodicPulse + + @Description Sets a periodic pulse. + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] p_FmRtcPeriodicPulseParams - Periodic pulse parameters. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously initialized using FM_RTC_Init(). + Must be called only prior to FM_RTC_Enable(). +*//***************************************************************************/ +t_Error FM_RTC_SetPeriodicPulse(t_Handle h_FmRtc, t_FmRtcPeriodicPulseParams *p_FmRtcPeriodicPulseParams); + +/**************************************************************************//** + @Function FM_RTC_ClearPeriodicPulse + + @Description Clears a periodic pulse. + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] periodicPulseId - Periodic pulse id. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously initialized using FM_RTC_Init(). +*//***************************************************************************/ +t_Error FM_RTC_ClearPeriodicPulse(t_Handle h_FmRtc, uint8_t periodicPulseId); + +/**************************************************************************//** + @Function FM_RTC_SetExternalTrigger + + @Description Sets an external trigger indication and define a callback + routine to be called on such event. + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] p_FmRtcExternalTriggerParams - External Trigger parameters. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously initialized using FM_RTC_Init(). +*//***************************************************************************/ +t_Error FM_RTC_SetExternalTrigger(t_Handle h_FmRtc, t_FmRtcExternalTriggerParams *p_FmRtcExternalTriggerParams); + +/**************************************************************************//** + @Function FM_RTC_ClearExternalTrigger + + @Description Clears external trigger indication. + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] id - External Trigger id. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously initialized using FM_RTC_Init(). +*//***************************************************************************/ +t_Error FM_RTC_ClearExternalTrigger(t_Handle h_FmRtc, uint8_t id); + +/**************************************************************************//** + @Function FM_RTC_GetExternalTriggerTimeStamp + + @Description Reads the External Trigger TimeStamp. + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] triggerId - External Trigger id. + @Param[out] p_TimeStamp - External Trigger timestamp (in nanoseconds). + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously initialized using FM_RTC_Init(). +*//***************************************************************************/ +t_Error FM_RTC_GetExternalTriggerTimeStamp(t_Handle h_FmRtc, + uint8_t triggerId, + uint64_t *p_TimeStamp); + +/**************************************************************************//** + @Function FM_RTC_GetCurrentTime + + @Description Returns the current RTC time. + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[out] p_Ts - returned time stamp (in nanoseconds). + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously initialized using FM_RTC_Init(). +*//***************************************************************************/ +t_Error FM_RTC_GetCurrentTime(t_Handle h_FmRtc, uint64_t *p_Ts); + +/**************************************************************************//** + @Function FM_RTC_SetCurrentTime + + @Description Sets the current RTC time. + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] ts - The new time stamp (in nanoseconds). + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously initialized using FM_RTC_Init(). +*//***************************************************************************/ +t_Error FM_RTC_SetCurrentTime(t_Handle h_FmRtc, uint64_t ts); + +/**************************************************************************//** + @Function FM_RTC_GetFreqCompensation + + @Description TODO + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[out] p_Compensation - A pointer to the returned value of compensation. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously initialized using FM_RTC_Init(). +*//***************************************************************************/ +t_Error FM_RTC_GetFreqCompensation(t_Handle h_FmRtc, uint32_t *p_Compensation); + +/**************************************************************************//** + @Function FM_RTC_SetFreqCompensation + + @Description TODO + + @Param[in] h_FmRtc - Handle to FM RTC object. + @Param[in] freqCompensation - the new desired compensation value to be set. + + @Return E_OK on success; Error code otherwise. + + @Cautions h_FmRtc must have been previously initialized using FM_RTC_Init(). +*//***************************************************************************/ +t_Error FM_RTC_SetFreqCompensation(t_Handle h_FmRtc, uint32_t freqCompensation); + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) +/**************************************************************************//** + @Function FM_RTC_DumpRegs + + @Description Dumps all FM registers + + @Param[in] h_FmRtc A handle to an FM RTC Module. + + @Return E_OK on success; + + @Cautions Allowed only FM_Init(). +*//***************************************************************************/ +t_Error FM_RTC_DumpRegs(t_Handle h_FmRtc); +#endif /* (defined(DEBUG_ERRORS) && ... */ + +/** @} */ /* end of fm_rtc_control_grp */ +/** @} */ /* end of fm_rtc_grp */ +/** @} */ /* end of FM_grp group */ + + +#endif /* __FM_RTC_EXT_H__ */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/Peripherals/mii_acc_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/Peripherals/mii_acc_ext.h @@ -0,0 +1,75 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#ifndef __MII_ACC_EXT_H +#define __MII_ACC_EXT_H + + +/**************************************************************************//** + @Function MII_ReadPhyReg + + @Description This routine is called to read a specified PHY + register value. + + @Param[in] h_MiiAccess - Handle to MII configuration access registers + @Param[in] phyAddr - PHY address (0-31). + @Param[in] reg - PHY register to read + @Param[out] p_Data - Gets the register value. + + @Return Always zero (success). +*//***************************************************************************/ +int MII_ReadPhyReg(t_Handle h_MiiAccess, + uint8_t phyAddr, + uint8_t reg, + uint16_t *p_Data); + +/**************************************************************************//** + @Function MII_WritePhyReg + + @Description This routine is called to write data to a specified PHY + register. + + @Param[in] h_MiiAccess - Handle to MII configuration access registers + @Param[in] phyAddr - PHY address (0-31). + @Param[in] reg - PHY register to write + @Param[in] data - Data to write in register. + + @Return Always zero (success). +*//***************************************************************************/ +int MII_WritePhyReg(t_Handle h_MiiAccess, + uint8_t phyAddr, + uint8_t reg, + uint16_t data); + + +#endif /* __MII_ACC_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/core_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/core_ext.h @@ -0,0 +1,81 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + @File core_ext.h + + @Description Generic interface to basic core operations. + + The system integrator must ensure that this interface is + mapped to a specific core implementation, by including the + appropriate header file. +*//***************************************************************************/ +#ifndef __CORE_EXT_H +#define __CORE_EXT_H + + +#ifdef NCSW_PPC_CORE +#include "ppc_ext.h" +#elif defined(NCSW_VXWORKS) +#include "core_vxw_ext.h" +#else +#error "Core is not defined!" +#endif /* NCSW_CORE */ + +#if (!defined(CORE_IS_LITTLE_ENDIAN) && !defined(CORE_IS_BIG_ENDIAN)) +#error "Must define core as little-endian or big-endian!" +#endif /* (!defined(CORE_IS_LITTLE_ENDIAN) && ... */ + + +/**************************************************************************//** + @Function CORE_GetId + + @Description Returns the core ID in the system. + + @Return Core ID. +*//***************************************************************************/ +uint32_t CORE_GetId(void); + +/**************************************************************************//** + @Function CORE_MemoryBarrier + + @Description This routine will cause the core to stop executing any commands + until all previous memory read/write commands are completely out + of the core's pipeline. + + @Return None. +*//***************************************************************************/ +void CORE_MemoryBarrier(void); + + +#endif /* __CORE_EXT_H */ + --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/cores/e500v2_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/cores/e500v2_ext.h @@ -0,0 +1,413 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + @File e500v2_ext.h + + @Description E500 external definitions prototypes + This file is not included by the E500 + source file as it is an assembly file. It is used + only for prototypes exposure, for inclusion + by user and other modules. +*//***************************************************************************/ + +#ifndef __E500V2_EXT_H +#define __E500V2_EXT_H + +#include "std_ext.h" + + +/* Layer 1 Cache Manipulations + *============================== + * Should not be called directly by the user. + */ +void L1DCache_Invalidate (void); +void L1ICache_Invalidate(void); +void L1DCache_Enable(void); +void L1ICache_Enable(void); +void L1DCache_Disable(void); +void L1ICache_Disable(void); +void L1DCache_Flush(void); +void L1ICache_Flush(void); +/* + * + */ +uint32_t L1DCache_LineLock(uint32_t addr); +uint32_t L1ICache_LineLock(uint32_t addr); +void L1Cache_BroadCastEnable(void); +void L1Cache_BroadCastDisable(void); + + +#define CORE_DCacheEnable E500_DCacheEnable +#define CORE_ICacheEnable E500_ICacheEnable +#define CORE_DCacheDisable E500_DCacheDisable +#define CORE_ICacheDisable E500_ICacheDisable +#define CORE_GetId E500_GetId +#define CORE_TestAndSet E500_TestAndSet +#define CORE_MemoryBarrier E500_MemoryBarrier +#define CORE_InstructionSync E500_InstructionSync + +#define CORE_SetDozeMode E500_SetDozeMode +#define CORE_SetNapMode E500_SetNapMode +#define CORE_SetSleepMode E500_SetSleepMode +#define CORE_SetJogMode E500_SetJogMode +#define CORE_SetDeepSleepMode E500_SetDeepSleepMode + +#define CORE_RecoverDozeMode E500_RecoverDozeMode +#define CORE_RecoverNapMode E500_RecoverNapMode +#define CORE_RecoverSleepMode E500_RecoverSleepMode +#define CORE_RecoverJogMode E500_RecoverJogMode + +void E500_SetDozeMode(void); +void E500_SetNapMode(void); +void E500_SetSleepMode(void); +void E500_SetJogMode(void); +t_Error E500_SetDeepSleepMode(uint32_t bptrAddress); + +void E500_RecoverDozeMode(void); +void E500_RecoverNapMode(void); +void E500_RecoverSleepMode(void); +void E500_RecoverJogMode(void); + + +/**************************************************************************//** + @Group E500_id E500 Application Programming Interface + + @Description E500 API functions, definitions and enums + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group E500_init_grp E500 Initialization Unit + + @Description E500 initialization unit API functions, definitions and enums + + @{ +*//***************************************************************************/ + + +/**************************************************************************//** + @Function E500_DCacheEnable + + @Description Enables the data cache for memory pages that are + not cache inhibited. + + @Return None. +*//***************************************************************************/ +void E500_DCacheEnable(void); + +/**************************************************************************//** + @Function E500_ICacheEnable + + @Description Enables the instruction cache for memory pages that are + not cache inhibited. + + @Return None. +*//***************************************************************************/ +void E500_ICacheEnable(void); + +/**************************************************************************//** + @Function E500_DCacheDisable + + @Description Disables the data cache. + + @Return None. +*//***************************************************************************/ +void E500_DCacheDisable(void); + +/**************************************************************************//** + @Function E500_ICacheDisable + + @Description Disables the instruction cache. + + @Return None. +*//***************************************************************************/ +void E500_ICacheDisable(void); + +/**************************************************************************//** + @Function E500_DCacheFlush + + @Description Flushes the data cache + + @Return None. +*//***************************************************************************/ +void E500_DCacheFlush(void); + +/**************************************************************************//** + @Function E500_ICacheFlush + + @Description Flushes the instruction cache. + + @Return None. +*//***************************************************************************/ +void E500_ICacheFlush(void); + +/**************************************************************************//** + @Function E500_DCacheSetStashId + + @Description Set Stash Id for data cache + + @Param[in] stashId the stash id to be set. + + @Return None. +*//***************************************************************************/ +void E500_DCacheSetStashId(uint8_t stashId); + +/**************************************************************************//** + @Description E500mc L2 Cache Operation Mode +*//***************************************************************************/ +typedef enum e_E500mcL2CacheMode +{ + e_L2_CACHE_MODE_DATA_ONLY = 0x00000001, /**< Cache data only */ + e_L2_CACHE_MODE_INST_ONLY = 0x00000002, /**< Cache instructions only */ + e_L2_CACHE_MODE_DATA_AND_INST = 0x00000003 /**< Cache data and instructions */ +} e_E500mcL2CacheMode; + +/**************************************************************************//** + @Function E500_L2CacheEnable + + @Description Enables the cache for memory pages that are not cache inhibited. + + @param[in] mode - L2 cache mode: data only, instruction only or instruction and data. + + @Return None. + + @Cautions This routine must be call only ONCE for both caches. I.e. it is + not possible to call this routine for i-cache and than to call + again for d-cache; The second call will override the first one. +*//***************************************************************************/ +void E500_L2CacheEnable(e_E500mcL2CacheMode mode); + +/**************************************************************************//** + @Function E500_L2CacheDisable + + @Description Disables the cache (data instruction or both). + + @Return None. + +*//***************************************************************************/ +void E500_L2CacheDisable(void); + +/**************************************************************************//** + @Function E500_L2CacheFlush + + @Description Flushes the cache. + + @Return None. +*//***************************************************************************/ +void E500_L2CacheFlush(void); + +/**************************************************************************//** + @Function E500_L2SetStashId + + @Description Set Stash Id + + @Param[in] stashId the stash id to be set. + + @Return None. +*//***************************************************************************/ +void E500_L2SetStashId(uint8_t stashId); + +/**************************************************************************//** + @Function E500_AddressBusStreamingEnable + + @Description Enables address bus streaming on the CCB. + + This setting, along with the ECM streaming configuration + parameters, enables address bus streaming on the CCB. + + @Return None. +*//***************************************************************************/ +void E500_AddressBusStreamingEnable(void); + +/**************************************************************************//** + @Function E500_AddressBusStreamingDisable + + @Description Disables address bus streaming on the CCB. + + @Return None. +*//***************************************************************************/ +void E500_AddressBusStreamingDisable(void); + +/**************************************************************************//** + @Function E500_AddressBroadcastEnable + + @Description Enables address broadcast. + + The e500 broadcasts cache management instructions (dcbst, dcblc + (CT = 1), icblc (CT = 1), dcbf, dcbi, mbar, msync, tlbsync, icbi) + based on ABE. ABE must be set to allow management of external + L2 caches. + + @Return None. +*//***************************************************************************/ +void E500_AddressBroadcastEnable(void); + +/**************************************************************************//** + @Function E500_AddressBroadcastDisable + + @Description Disables address broadcast. + + The e500 broadcasts cache management instructions (dcbst, dcblc + (CT = 1), icblc (CT = 1), dcbf, dcbi, mbar, msync, tlbsync, icbi) + based on ABE. ABE must be set to allow management of external + L2 caches. + + @Return None. +*//***************************************************************************/ +void E500_AddressBroadcastDisable(void); + +/**************************************************************************//** + @Function E500_IsTaskletSupported + + @Description Checks if tasklets are supported by the e500 interrupt handler. + + @Retval TRUE - Tasklets are supported. + @Retval FALSE - Tasklets are not supported. +*//***************************************************************************/ +bool E500_IsTaskletSupported(void); + +void E500_EnableTimeBase(void); +void E500_DisableTimeBase(void); + +uint64_t E500_GetTimeBaseTime(void); + +void E500_GenericIntrInit(void); + +t_Error E500_SetIntr(int ppcIntrSrc, + void (* Isr)(t_Handle handle), + t_Handle handle); + +t_Error E500_ClearIntr(int ppcIntrSrc); + +/**************************************************************************//** + @Function E500_GenericIntrHandler + + @Description This is the general e500 interrupt handler. + + It is called by the main assembly interrupt handler + when an exception occurs and no other function has been + assigned to this exception. + + @Param intrEntry - (In) The exception interrupt vector entry. +*//***************************************************************************/ +void E500_GenericIntrHandler(uint32_t intrEntry); + +/**************************************************************************//** + @Function CriticalIntr + + @Description This is the specific critical e500 interrupt handler. + + It is called by the main assembly interrupt handler + when an critical interrupt. + + @Param intrEntry - (In) The exception interrupt vector entry. +*//***************************************************************************/ +void CriticalIntr(uint32_t intrEntry); + + +/**************************************************************************//** + @Function E500_GetId + + @Description Returns the core ID in the system. + + @Return Core ID. +*//***************************************************************************/ +uint32_t E500_GetId(void); + +/**************************************************************************//** + @Function E500_TestAndSet + + @Description This routine tries to atomically test-and-set an integer + in memory to a non-zero value. + + The memory will be set only if it is tested as zero, in which + case the routine returns the new non-zero value; otherwise the + routine returns zero. + + @Param[in] p - pointer to a volatile int in memory, on which test-and-set + operation should be made. + + @Retval Zero - Operation failed - memory was already set. + @Retval Non-zero - Operation succeeded - memory has been set. +*//***************************************************************************/ +int E500_TestAndSet(volatile int *p); + +/**************************************************************************//** + @Function E500_MemoryBarrier + + @Description This routine will cause the core to stop executing any commands + until all previous memory read/write commands are completely out + of the core's pipeline. + + @Return None. +*//***************************************************************************/ +static __inline__ void E500_MemoryBarrier(void) +{ +#ifdef CORE_E500MC + __asm__ ("mbar 1"); +#else + /**** ERRATA WORK AROUND START ****/ + /* ERRATA num: CPU1 */ + /* Description: "mbar MO = 1" instruction fails to order caching-inhibited + guarded loads and stores. */ + + /* "msync" instruction is used instead */ + + __asm__ ("msync"); + + /**** ERRATA WORK AROUND END ****/ +#endif +} + +/**************************************************************************//** + @Function E500_InstructionSync + + @Description This routine will cause the core to wait for previous instructions + (including any interrupts they generate) to complete before the + synchronization command executes, which purges all instructions + from the processor's pipeline and refetches the next instruction. + + @Return None. +*//***************************************************************************/ +static __inline__ void E500_InstructionSync(void) +{ + __asm__ ("isync"); +} + + +/** @} */ /* end of E500_init_grp group */ +/** @} */ /* end of E500_grp group */ + + +#endif /* __E500V2_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/cores/ppc_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/cores/ppc_ext.h @@ -0,0 +1,130 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + @File ppc_ext.h + + @Description Core API for PowerPC cores + + These routines must be implemented by each specific PowerPC + core driver. +*//***************************************************************************/ +#ifndef __PPC_EXT_H +#define __PPC_EXT_H + +#include "part_ext.h" + + +#define CORE_IS_BIG_ENDIAN + + +/**************************************************************************//** + @Function CORE_TestAndSet + + @Description This routine tries to atomically test-and-set an integer + in memory to a non-zero value. + + The memory will be set only if it is tested as zero, in which + case the routine returns the new non-zero value; otherwise the + routine returns zero. + + @Param[in] p - pointer to a volatile int in memory, on which test-and-set + operation should be made. + + @Retval Zero - Operation failed - memory was already set. + @Retval Non-zero - Operation succeeded - memory has been set. +*//***************************************************************************/ +int CORE_TestAndSet(volatile int *p); + +/**************************************************************************//** + @Function CORE_InstructionSync + + @Description This routine will cause the core to wait for previous instructions + (including any interrupts they generate) to complete before the + synchronization command executes, which purges all instructions + from the processor's pipeline and refetches the next instruction. + + @Return None. +*//***************************************************************************/ +void CORE_InstructionSync(void); + +/**************************************************************************//** + @Function CORE_DCacheEnable + + @Description Enables the data cache for memory pages that are + not cache inhibited. + + @Return None. +*//***************************************************************************/ +void CORE_DCacheEnable(void); + +/**************************************************************************//** + @Function CORE_ICacheEnable + + @Description Enables the instruction cache for memory pages that are + not cache inhibited. + + @Return None. +*//***************************************************************************/ +void CORE_ICacheEnable(void); + +/**************************************************************************//** + @Function CORE_DCacheDisable + + @Description Disables the data cache. + + @Return None. +*//***************************************************************************/ +void CORE_DCacheDisable(void); + +/**************************************************************************//** + @Function CORE_ICacheDisable + + @Description Disables the instruction cache. + + @Return None. +*//***************************************************************************/ +void CORE_ICacheDisable(void); + + + + +#if defined(CORE_E300) +#include "e300_ext.h" +#elif defined(CORE_E500V2) || defined(CORE_E500MC) +#include "e500v2_ext.h" +#else +#error "Core not defined!" +#endif + + +#endif /* __PPC_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/ctype_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/ctype_ext.h @@ -0,0 +1,93 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __CTYPE_EXT_H +#define __CTYPE_EXT_H + + +#if defined(NCSW_LINUX) && defined(__KERNEL__) +/* + * NOTE! This ctype does not handle EOF like the standard C + * library is required to. + */ + +#define _U 0x01 /* upper */ +#define _L 0x02 /* lower */ +#define _D 0x04 /* digit */ +#define _C 0x08 /* cntrl */ +#define _P 0x10 /* punct */ +#define _S 0x20 /* white space (space/lf/tab) */ +#define _X 0x40 /* hex digit */ +#define _SP 0x80 /* hard space (0x20) */ + +extern unsigned char _ctype[]; + +#define __ismask(x) (_ctype[(int)(unsigned char)(x)]) + +#define isalnum(c) ((__ismask(c)&(_U|_L|_D)) != 0) +#define isalpha(c) ((__ismask(c)&(_U|_L)) != 0) +#define iscntrl(c) ((__ismask(c)&(_C)) != 0) +#define isdigit(c) ((__ismask(c)&(_D)) != 0) +#define isgraph(c) ((__ismask(c)&(_P|_U|_L|_D)) != 0) +#define islower(c) ((__ismask(c)&(_L)) != 0) +#define isprint(c) ((__ismask(c)&(_P|_U|_L|_D|_SP)) != 0) +#define ispunct(c) ((__ismask(c)&(_P)) != 0) +#define isspace(c) ((__ismask(c)&(_S)) != 0) +#define isupper(c) ((__ismask(c)&(_U)) != 0) +#define isxdigit(c) ((__ismask(c)&(_D|_X)) != 0) + +#define isascii(c) (((unsigned char)(c))<=0x7f) +#define toascii(c) (((unsigned char)(c))&0x7f) + +static __inline__ unsigned char __tolower(unsigned char c) +{ + if (isupper(c)) + c -= 'A'-'a'; + return c; +} + +static __inline__ unsigned char __toupper(unsigned char c) +{ + if (islower(c)) + c -= 'a'-'A'; + return c; +} + +#define tolower(c) __tolower(c) +#define toupper(c) __toupper(c) + +#else +#include +#endif /* defined(NCSW_LINUX) && defined(__KERNEL__) */ + + +#endif /* __CTYPE_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/debug_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/debug_ext.h @@ -0,0 +1,259 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + @File debug_ext.h + + @Description Debug mode definitions. +*//***************************************************************************/ + +#ifndef __DEBUG_EXT_H +#define __DEBUG_EXT_H + +#include "std_ext.h" +#include "xx_ext.h" +#include "memcpy_ext.h" +#if (DEBUG_ERRORS > 0) +#include "sprint_ext.h" +#include "string_ext.h" +#endif /* DEBUG_ERRORS > 0 */ + + +#if (DEBUG_ERRORS > 0) + +/* Internally used macros */ + +#define DUMP_Print XX_Print +#define DUMP_MAX_LEVELS 6 +#define DUMP_MAX_STR 64 + + +#define _CREATE_DUMP_SUBSTR(phrase) \ + dumpTmpLevel = 0; dumpSubStr[0] = '\0'; \ + sprintf(dumpTmpStr, "%s", #phrase); \ + p_DumpToken = strtok(dumpTmpStr, (dumpIsArr[0] ? "[" : ".")); \ + while (p_DumpToken != NULL) \ + { \ + strcat(dumpSubStr, p_DumpToken); \ + if (dumpIsArr[dumpTmpLevel]) \ + { \ + strcat(dumpSubStr, dumpIdxStr[dumpTmpLevel]); \ + p_DumpToken = strtok(NULL, "."); \ + } \ + if ((p_DumpToken = strtok(NULL, (dumpIsArr[++dumpTmpLevel] ? "[" : "."))) != 0) \ + strcat(dumpSubStr, "."); \ + }\ + + +/**************************************************************************//** + @Group gen_id General Drivers Utilities + + @Description External routines. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group dump_id Memory and Registers Dump Mechanism + + @Description Macros for dumping memory mapped structures. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description Declaration of dump mechanism variables. + + This macro must be declared at the beginning of each routine + which uses the dump mechanism macros, before the routine's code + starts. +*//***************************************************************************/ +#define DECLARE_DUMP \ + char dumpIdxStr[DUMP_MAX_LEVELS + 1][6] = { "", }; \ + char dumpSubStr[DUMP_MAX_STR] = ""; \ + char dumpTmpStr[DUMP_MAX_STR] = ""; \ + char *p_DumpToken = NULL; \ + int dumpArrIdx = 0, dumpArrSize = 0, dumpVarSize = 0, dumpLevel = 0, dumpTmpLevel = 0; \ + uint8_t dumpIsArr[DUMP_MAX_LEVELS + 1] = { 0 }; \ + /* Prevent warnings if not all used */ \ + UNUSED(dumpIdxStr[0][0]); \ + UNUSED(dumpSubStr[0]); \ + UNUSED(dumpTmpStr[0]); \ + UNUSED(p_DumpToken); \ + UNUSED(dumpArrIdx); \ + UNUSED(dumpArrSize); \ + UNUSED(dumpVarSize); \ + UNUSED(dumpLevel); \ + UNUSED(dumpTmpLevel); \ + UNUSED(dumpIsArr[0]); + + +/**************************************************************************//** + @Description Prints a title for a subsequent dumped structure or memory. + + The inputs for this macro are the structure/memory title and + its base addresses. +*//***************************************************************************/ +#define DUMP_TITLE(addr, msg) \ + DUMP_Print("\r\n"); DUMP_Print msg; \ + DUMP_Print(" (0x%p)\r\n" \ + "---------------------------------------------------------\r\n", \ + (addr)) + +/**************************************************************************//** + @Description Prints a subtitle for a subsequent dumped sub-structure (optional). + + The inputs for this macro are the sub-structure subtitle. + A separating line with this subtitle will be printed. +*//***************************************************************************/ +#define DUMP_SUBTITLE(subtitle) \ + DUMP_Print("----------- "); DUMP_Print subtitle; DUMP_Print("\r\n") + + +/**************************************************************************//** + @Description Dumps a memory region in 4-bytes aligned format. + + The inputs for this macro are the base addresses and size + (in bytes) of the memory region. +*//***************************************************************************/ +#define DUMP_MEMORY(addr, size) \ + MemDisp((uint8_t *)(addr), (int)(size)) + + +/**************************************************************************//** + @Description Declares a dump loop, for dumping a sub-structure array. + + The inputs for this macro are: + - idx: an index variable, for indexing the sub-structure items + inside the loop. This variable must be declared separately + in the beginning of the routine. + - cnt: the number of times to repeat the loop. This number should + equal the number of items in the sub-structures array. + + Note, that the body of the loop must be written inside brackets. +*//***************************************************************************/ +#define DUMP_SUBSTRUCT_ARRAY(idx, cnt) \ + for (idx=0, dumpIsArr[dumpLevel++] = 1; \ + (idx < cnt) && sprintf(dumpIdxStr[dumpLevel-1], "[%d]", idx); \ + idx++, ((idx < cnt) || ((dumpIsArr[--dumpLevel] = 0) == 0))) + + +/**************************************************************************//** + @Description Dumps a structure's member variable. + + The input for this macro is the full reference for the member + variable, where the structure is referenced using a pointer. + + Note, that a members array must be dumped using DUMP_ARR macro, + rather than using this macro. + + If the member variable is part of a sub-structure hierarchy, + the full hierarchy (including array indexing) must be specified. + + Examples: p_Struct->member + p_Struct->sub.member + p_Struct->sub[i].member +*//***************************************************************************/ +#define DUMP_VAR(st, phrase) \ + do { \ + void *addr = (void *)&((st)->phrase); \ + _CREATE_DUMP_SUBSTR(phrase); \ + dumpVarSize = sizeof((st)->phrase); \ + switch (dumpVarSize) \ + { \ + case 1: DUMP_Print("0x%08X: 0x%02x%14s\t%s\r\n", \ + addr, GET_UINT8(*(uint8_t*)addr), "", dumpSubStr); break; \ + case 2: DUMP_Print("0x%08X: 0x%04x%12s\t%s\r\n", \ + addr, GET_UINT16(*(uint16_t*)addr), "", dumpSubStr); break; \ + case 4: DUMP_Print("0x%08X: 0x%08x%8s\t%s\r\n", \ + addr, GET_UINT32(*(uint32_t*)addr), "", dumpSubStr); break; \ + case 8: DUMP_Print("0x%08X: 0x%016llx\t%s\r\n", \ + addr, GET_UINT64(*(uint64_t*)addr), dumpSubStr); break; \ + default: DUMP_Print("Bad size %d (" #st "->" #phrase ")\r\n", dumpVarSize); \ + } \ + } while (0) + + +/**************************************************************************//** + @Description Dumps a structure's members array. + + The input for this macro is the full reference for the members + array, where the structure is referenced using a pointer. + + If the members array is part of a sub-structure hierarchy, + the full hierarchy (including array indexing) must be specified. + + Examples: p_Struct->array + p_Struct->sub.array + p_Struct->sub[i].array +*//***************************************************************************/ +#define DUMP_ARR(st, phrase) \ + do { \ + _CREATE_DUMP_SUBSTR(phrase); \ + dumpArrSize = ARRAY_SIZE((st)->phrase); \ + dumpVarSize = sizeof((st)->phrase[0]); \ + switch (dumpVarSize) \ + { \ + case 1: \ + for (dumpArrIdx=0; dumpArrIdx < dumpArrSize; dumpArrIdx++) { \ + DUMP_Print("0x%08X: 0x%02x%14s\t%s[%d]\r\n", \ + &((st)->phrase[dumpArrIdx]), GET_UINT8((st)->phrase[dumpArrIdx]), "", dumpSubStr, dumpArrIdx); \ + } break; \ + case 2: \ + for (dumpArrIdx=0; dumpArrIdx < dumpArrSize; dumpArrIdx++) { \ + DUMP_Print("0x%08X: 0x%04x%12s\t%s[%d]\r\n", \ + &((st)->phrase[dumpArrIdx]), GET_UINT16((st)->phrase[dumpArrIdx]), "", dumpSubStr, dumpArrIdx); \ + } break; \ + case 4: \ + for (dumpArrIdx=0; dumpArrIdx < dumpArrSize; dumpArrIdx++) { \ + DUMP_Print("0x%08X: 0x%08x%8s\t%s[%d]\r\n", \ + &((st)->phrase[dumpArrIdx]), GET_UINT32((st)->phrase[dumpArrIdx]), "", dumpSubStr, dumpArrIdx); \ + } break; \ + case 8: \ + for (dumpArrIdx=0; dumpArrIdx < dumpArrSize; dumpArrIdx++) { \ + DUMP_Print("0x%08X: 0x%016llx\t%s[%d]\r\n", \ + &((st)->phrase[dumpArrIdx]), GET_UINT64((st)->phrase[dumpArrIdx]), dumpSubStr, dumpArrIdx); \ + } break; \ + default: DUMP_Print("Bad size %d (" #st "->" #phrase "[0])\r\n", dumpVarSize); \ + } \ + } while (0) + + +#endif /* DEBUG_ERRORS > 0 */ + + +/** @} */ /* end of dump_id group */ +/** @} */ /* end of gen_id group */ + + +#endif /* __DEBUG_EXT_H */ + --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/endian_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/endian_ext.h @@ -0,0 +1,446 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + + @File endian_ext.h + + @Description Big/little endian swapping routines. +*//***************************************************************************/ + +#ifndef __ENDIAN_EXT_H +#define __ENDIAN_EXT_H + +#include "std_ext.h" + + +/**************************************************************************//** + @Group gen_id General Drivers Utilities + + @Description General usage API. This API is intended for usage by both the + internal modules and the user's application. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group endian_id Big/Little-Endian Conversion + + @Description Routines and macros for Big/Little-Endian conversion and + general byte swapping. + + All routines and macros are expecting unsigned values as + parameters, but will generate the correct result also for + signed values. Therefore, signed/unsigned casting is allowed. + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Collection Byte-Swap Macros + + Macros for swapping byte order. + + @Cautions The parameters of these macros are evaluated multiple times. + For calculated expressions or expressions that contain function + calls it is recommended to use the byte-swap routines. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description Swaps the byte order of a given 16-bit value. + + @Param[in] val - The 16-bit value to swap. + + @Return The byte-swapped value.. + + @Cautions The given value is evaluated multiple times by this macro. + For calculated expressions or expressions that contain function + calls it is recommended to use the SwapUint16() routine. + + @hideinitializer +*//***************************************************************************/ +#define SWAP_UINT16(val) \ + ((uint16_t)((((val) & 0x00FF) << 8) | (((val) & 0xFF00) >> 8))) + +/**************************************************************************//** + @Description Swaps the byte order of a given 32-bit value. + + @Param[in] val - The 32-bit value to swap. + + @Return The byte-swapped value.. + + @Cautions The given value is evaluated multiple times by this macro. + For calculated expressions or expressions that contain function + calls it is recommended to use the SwapUint32() routine. + + @hideinitializer +*//***************************************************************************/ +#define SWAP_UINT32(val) \ + ((uint32_t)((((val) & 0x000000FF) << 24) | \ + (((val) & 0x0000FF00) << 8) | \ + (((val) & 0x00FF0000) >> 8) | \ + (((val) & 0xFF000000) >> 24))) + +/**************************************************************************//** + @Description Swaps the byte order of a given 64-bit value. + + @Param[in] val - The 64-bit value to swap. + + @Return The byte-swapped value.. + + @Cautions The given value is evaluated multiple times by this macro. + For calculated expressions or expressions that contain function + calls it is recommended to use the SwapUint64() routine. + + @hideinitializer +*//***************************************************************************/ +#define SWAP_UINT64(val) \ + ((uint64_t)((((val) & 0x00000000000000FFULL) << 56) | \ + (((val) & 0x000000000000FF00ULL) << 40) | \ + (((val) & 0x0000000000FF0000ULL) << 24) | \ + (((val) & 0x00000000FF000000ULL) << 8) | \ + (((val) & 0x000000FF00000000ULL) >> 8) | \ + (((val) & 0x0000FF0000000000ULL) >> 24) | \ + (((val) & 0x00FF000000000000ULL) >> 40) | \ + (((val) & 0xFF00000000000000ULL) >> 56))) + +/* @} */ + +/**************************************************************************//** + @Collection Byte-Swap Routines + + Routines for swapping the byte order of a given parameter and + returning the swapped value. + + These inline routines are safer than the byte-swap macros, + because they evaluate the parameter expression only once. + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Function SwapUint16 + + @Description Returns the byte-swapped value of a given 16-bit value. + + @Param[in] val - The 16-bit value. + + @Return The byte-swapped value of the parameter. +*//***************************************************************************/ +static __inline__ uint16_t SwapUint16(uint16_t val) +{ + return (uint16_t)(((val & 0x00FF) << 8) | + ((val & 0xFF00) >> 8)); +} + +/**************************************************************************//** + @Function SwapUint32 + + @Description Returns the byte-swapped value of a given 32-bit value. + + @Param[in] val - The 32-bit value. + + @Return The byte-swapped value of the parameter. +*//***************************************************************************/ +static __inline__ uint32_t SwapUint32(uint32_t val) +{ + return (uint32_t)(((val & 0x000000FF) << 24) | + ((val & 0x0000FF00) << 8) | + ((val & 0x00FF0000) >> 8) | + ((val & 0xFF000000) >> 24)); +} + +/**************************************************************************//** + @Function SwapUint64 + + @Description Returns the byte-swapped value of a given 64-bit value. + + @Param[in] val - The 64-bit value. + + @Return The byte-swapped value of the parameter. +*//***************************************************************************/ +static __inline__ uint64_t SwapUint64(uint64_t val) +{ + return (uint64_t)(((val & 0x00000000000000FFULL) << 56) | + ((val & 0x000000000000FF00ULL) << 40) | + ((val & 0x0000000000FF0000ULL) << 24) | + ((val & 0x00000000FF000000ULL) << 8) | + ((val & 0x000000FF00000000ULL) >> 8) | + ((val & 0x0000FF0000000000ULL) >> 24) | + ((val & 0x00FF000000000000ULL) >> 40) | + ((val & 0xFF00000000000000ULL) >> 56)); +} + +/* @} */ + +/**************************************************************************//** + @Collection In-place Byte-Swap-And-Set Routines + + Routines for swapping the byte order of a given variable and + setting the swapped value back to the same variable. + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Function SwapUint16P + + @Description Swaps the byte order of a given 16-bit variable. + + @Param[in] p_Val - Pointer to the 16-bit variable. + + @Return None. +*//***************************************************************************/ +static __inline__ void SwapUint16P(uint16_t *p_Val) +{ + *p_Val = SwapUint16(*p_Val); +} + +/**************************************************************************//** + @Function SwapUint32P + + @Description Swaps the byte order of a given 32-bit variable. + + @Param[in] p_Val - Pointer to the 32-bit variable. + + @Return None. +*//***************************************************************************/ +static __inline__ void SwapUint32P(uint32_t *p_Val) +{ + *p_Val = SwapUint32(*p_Val); +} + +/**************************************************************************//** + @Function SwapUint64P + + @Description Swaps the byte order of a given 64-bit variable. + + @Param[in] p_Val - Pointer to the 64-bit variable. + + @Return None. +*//***************************************************************************/ +static __inline__ void SwapUint64P(uint64_t *p_Val) +{ + *p_Val = SwapUint64(*p_Val); +} + +/* @} */ + + +/**************************************************************************//** + @Collection Little-Endian Conversion Macros + + These macros convert given parameters to or from Little-Endian + format. Use these macros when you want to read or write a specific + Little-Endian value in memory, without a-priori knowing the CPU + byte order. + + These macros use the byte-swap routines. For conversion of + constants in initialization structures, you may use the CONST + versions of these macros (see below), which are using the + byte-swap macros instead. + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description Converts a given 16-bit value from CPU byte order to + Little-Endian byte order. + + @Param[in] val - The 16-bit value to convert. + + @Return The converted value. + + @hideinitializer +*//***************************************************************************/ +#define CPU_TO_LE16(val) SwapUint16(val) + +/**************************************************************************//** + @Description Converts a given 32-bit value from CPU byte order to + Little-Endian byte order. + + @Param[in] val - The 32-bit value to convert. + + @Return The converted value. + + @hideinitializer +*//***************************************************************************/ +#define CPU_TO_LE32(val) SwapUint32(val) + +/**************************************************************************//** + @Description Converts a given 64-bit value from CPU byte order to + Little-Endian byte order. + + @Param[in] val - The 64-bit value to convert. + + @Return The converted value. + + @hideinitializer +*//***************************************************************************/ +#define CPU_TO_LE64(val) SwapUint64(val) + + +/**************************************************************************//** + @Description Converts a given 16-bit value from Little-Endian byte order to + CPU byte order. + + @Param[in] val - The 16-bit value to convert. + + @Return The converted value. + + @hideinitializer +*//***************************************************************************/ +#define LE16_TO_CPU(val) CPU_TO_LE16(val) + +/**************************************************************************//** + @Description Converts a given 32-bit value from Little-Endian byte order to + CPU byte order. + + @Param[in] val - The 32-bit value to convert. + + @Return The converted value. + + @hideinitializer +*//***************************************************************************/ +#define LE32_TO_CPU(val) CPU_TO_LE32(val) + +/**************************************************************************//** + @Description Converts a given 64-bit value from Little-Endian byte order to + CPU byte order. + + @Param[in] val - The 64-bit value to convert. + + @Return The converted value. + + @hideinitializer +*//***************************************************************************/ +#define LE64_TO_CPU(val) CPU_TO_LE64(val) + +/* @} */ + +/**************************************************************************//** + @Collection Little-Endian Constant Conversion Macros + + These macros convert given constants to or from Little-Endian + format. Use these macros when you want to read or write a specific + Little-Endian constant in memory, without a-priori knowing the + CPU byte order. + + These macros use the byte-swap macros, therefore can be used for + conversion of constants in initialization structures. + + @Cautions The parameters of these macros are evaluated multiple times. + For non-constant expressions, use the non-CONST macro versions. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description Converts a given 16-bit constant from CPU byte order to + Little-Endian byte order. + + @Param[in] val - The 16-bit value to convert. + + @Return The converted value. + + @hideinitializer +*//***************************************************************************/ +#define CONST_CPU_TO_LE16(val) SWAP_UINT16(val) + +/**************************************************************************//** + @Description Converts a given 32-bit constant from CPU byte order to + Little-Endian byte order. + + @Param[in] val - The 32-bit value to convert. + + @Return The converted value. + + @hideinitializer +*//***************************************************************************/ +#define CONST_CPU_TO_LE32(val) SWAP_UINT32(val) + +/**************************************************************************//** + @Description Converts a given 64-bit constant from CPU byte order to + Little-Endian byte order. + + @Param[in] val - The 64-bit value to convert. + + @Return The converted value. + + @hideinitializer +*//***************************************************************************/ +#define CONST_CPU_TO_LE64(val) SWAP_UINT64(val) + + +/**************************************************************************//** + @Description Converts a given 16-bit constant from Little-Endian byte order + to CPU byte order. + + @Param[in] val - The 16-bit value to convert. + + @Return The converted value. + + @hideinitializer +*//***************************************************************************/ +#define CONST_LE16_TO_CPU(val) CONST_CPU_TO_LE16(val) + +/**************************************************************************//** + @Description Converts a given 32-bit constant from Little-Endian byte order + to CPU byte order. + + @Param[in] val - The 32-bit value to convert. + + @Return The converted value. + + @hideinitializer +*//***************************************************************************/ +#define CONST_LE32_TO_CPU(val) CONST_CPU_TO_LE32(val) + +/**************************************************************************//** + @Description Converts a given 64-bit constant from Little-Endian byte order + to CPU byte order. + + @Param[in] val - The 64-bit value to convert. + + @Return The converted value. + + @hideinitializer +*//***************************************************************************/ +#define CONST_LE64_TO_CPU(val) CONST_CPU_TO_LE64(val) + +/* @} */ + + +/** @} */ /* end of endian_id group */ +/** @} */ /* end of gen_id group */ + + +#endif /* __ENDIAN_EXT_H */ + --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/enet_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/enet_ext.h @@ -0,0 +1,154 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + @File enet_ext.h + + @Description Ethernet generic definitions and enums. +*//***************************************************************************/ + +#ifndef __ENET_EXT_H +#define __ENET_EXT_H + + +#define ENET_NUM_OCTETS_PER_ADDRESS 6 /**< Number of octets (8-bit bytes) in an ethernet address */ +#define ENET_GROUP_ADDR 0x01 /**< Group address mask for ethernet addresses */ + + +/**************************************************************************//** + @Description Ethernet Address +*//***************************************************************************/ +typedef uint8_t t_EnetAddr[ENET_NUM_OCTETS_PER_ADDRESS]; + +/**************************************************************************//** + @Description Ethernet Address Type. +*//***************************************************************************/ +typedef enum e_EnetAddrType +{ + e_ENET_ADDR_TYPE_INDIVIDUAL, /**< Individual (unicast) address */ + e_ENET_ADDR_TYPE_GROUP, /**< Group (multicast) address */ + e_ENET_ADDR_TYPE_BROADCAST /**< Broadcast address */ +} e_EnetAddrType; + + +/**************************************************************************//** + @Description Ethernet MAC-PHY Interface +*//***************************************************************************/ +typedef enum e_EnetInterface +{ + e_ENET_IF_MII = 0x00010000, /**< MII interface */ + e_ENET_IF_RMII = 0x00020000, /**< RMII interface */ + e_ENET_IF_SMII = 0x00030000, /**< SMII interface */ + e_ENET_IF_GMII = 0x00040000, /**< GMII interface */ + e_ENET_IF_RGMII = 0x00050000, /**< RGMII interface */ + e_ENET_IF_TBI = 0x00060000, /**< TBI interface */ + e_ENET_IF_RTBI = 0x00070000, /**< RTBI interface */ + e_ENET_IF_SGMII = 0x00080000, /**< SGMII interface */ + e_ENET_IF_XGMII = 0x00090000, /**< XGMII interface */ + e_ENET_IF_QSGMII= 0x000a0000 /**< QSGMII interface */ +} e_EnetInterface; + +/**************************************************************************//** + @Description Ethernet Duplex Mode +*//***************************************************************************/ +typedef enum e_EnetDuplexMode +{ + e_ENET_HALF_DUPLEX, /**< Half-Duplex mode */ + e_ENET_FULL_DUPLEX /**< Full-Duplex mode */ +} e_EnetDuplexMode; + +/**************************************************************************//** + @Description Ethernet Speed (nominal data rate) +*//***************************************************************************/ +typedef enum e_EnetSpeed +{ + e_ENET_SPEED_10 = 10, /**< 10 Mbps */ + e_ENET_SPEED_100 = 100, /**< 100 Mbps */ + e_ENET_SPEED_1000 = 1000, /**< 1000 Mbps = 1 Gbps */ + e_ENET_SPEED_10000 = 10000 /**< 10000 Mbps = 10 Gbps */ +} e_EnetSpeed; + +/**************************************************************************//** + @Description Ethernet mode (combination of MAC-PHY interface and speed) +*//***************************************************************************/ +typedef enum e_EnetMode +{ + e_ENET_MODE_INVALID = 0, /**< Invalid Ethernet mode */ + e_ENET_MODE_MII_10 = (e_ENET_IF_MII | e_ENET_SPEED_10), /**< 10 Mbps MII */ + e_ENET_MODE_MII_100 = (e_ENET_IF_MII | e_ENET_SPEED_100), /**< 100 Mbps MII */ + e_ENET_MODE_RMII_10 = (e_ENET_IF_RMII | e_ENET_SPEED_10), /**< 10 Mbps RMII */ + e_ENET_MODE_RMII_100 = (e_ENET_IF_RMII | e_ENET_SPEED_100), /**< 100 Mbps RMII */ + e_ENET_MODE_SMII_10 = (e_ENET_IF_SMII | e_ENET_SPEED_10), /**< 10 Mbps SMII */ + e_ENET_MODE_SMII_100 = (e_ENET_IF_SMII | e_ENET_SPEED_100), /**< 100 Mbps SMII */ + e_ENET_MODE_GMII_1000 = (e_ENET_IF_GMII | e_ENET_SPEED_1000), /**< 1000 Mbps GMII */ + e_ENET_MODE_RGMII_10 = (e_ENET_IF_RGMII | e_ENET_SPEED_10), /**< 10 Mbps RGMII */ + e_ENET_MODE_RGMII_100 = (e_ENET_IF_RGMII | e_ENET_SPEED_100), /**< 100 Mbps RGMII */ + e_ENET_MODE_RGMII_1000 = (e_ENET_IF_RGMII | e_ENET_SPEED_1000), /**< 1000 Mbps RGMII */ + e_ENET_MODE_TBI_1000 = (e_ENET_IF_TBI | e_ENET_SPEED_1000), /**< 1000 Mbps TBI */ + e_ENET_MODE_RTBI_1000 = (e_ENET_IF_RTBI | e_ENET_SPEED_1000), /**< 1000 Mbps RTBI */ + e_ENET_MODE_SGMII_10 = (e_ENET_IF_SGMII | e_ENET_SPEED_10), /**< 10 Mbps SGMII */ + e_ENET_MODE_SGMII_100 = (e_ENET_IF_SGMII | e_ENET_SPEED_100), /**< 100 Mbps SGMII */ + e_ENET_MODE_SGMII_1000 = (e_ENET_IF_SGMII | e_ENET_SPEED_1000), /**< 1000 Mbps SGMII */ + e_ENET_MODE_XGMII_10000 = (e_ENET_IF_XGMII | e_ENET_SPEED_10000), /**< 10000 Mbps XGMII */ + e_ENET_MODE_QSGMII_1000 = (e_ENET_IF_QSGMII| e_ENET_SPEED_1000) /**< 1000 Mbps QSGMII */ +} e_EnetMode; + + +#define IS_ENET_MODE_VALID(mode) \ + (((mode) == e_ENET_MODE_MII_10 ) || \ + ((mode) == e_ENET_MODE_MII_100 ) || \ + ((mode) == e_ENET_MODE_RMII_10 ) || \ + ((mode) == e_ENET_MODE_RMII_100 ) || \ + ((mode) == e_ENET_MODE_SMII_10 ) || \ + ((mode) == e_ENET_MODE_SMII_100 ) || \ + ((mode) == e_ENET_MODE_GMII_1000 ) || \ + ((mode) == e_ENET_MODE_RGMII_10 ) || \ + ((mode) == e_ENET_MODE_RGMII_100 ) || \ + ((mode) == e_ENET_MODE_RGMII_1000 ) || \ + ((mode) == e_ENET_MODE_TBI_1000 ) || \ + ((mode) == e_ENET_MODE_RTBI_1000 ) || \ + ((mode) == e_ENET_MODE_SGMII_10 ) || \ + ((mode) == e_ENET_MODE_SGMII_100 ) || \ + ((mode) == e_ENET_MODE_SGMII_1000 ) || \ + ((mode) == e_ENET_MODE_XGMII_10000) || \ + ((mode) == e_ENET_MODE_QSGMII_1000)) + + +#define MAKE_ENET_MODE(_interface, _speed) (e_EnetMode)((_interface) | (_speed)) + +#define ENET_INTERFACE_FROM_MODE(mode) (e_EnetInterface)((mode) & 0xFFFF0000) +#define ENET_SPEED_FROM_MODE(mode) (e_EnetSpeed)((mode) & 0x0000FFFF) + + + +#endif /* __ENET_EXT_H */ + --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/error_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/error_ext.h @@ -0,0 +1,553 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + @File error_ext.h + + @Description Error definitions. +*//***************************************************************************/ + +#ifndef __ERROR_EXT_H +#define __ERROR_EXT_H + +#include "std_ext.h" +#include "xx_ext.h" +#include "core_ext.h" + +/**************************************************************************//** + @Group gen_id General Drivers Utilities + + @Description External routines. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group gen_error_id Errors, Events and Debug + + @Description External routines. + + @{ +*//***************************************************************************/ + +/****************************************************************************** +The scheme below provides the bits description for error codes: + + 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 +| Reserved (should be zero) | Module ID | + + 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 +| Error Type | +******************************************************************************/ + +#define ERROR_CODE(_err) ((((uint32_t)_err) & 0x0000FFFF) | __ERR_MODULE__) + +#define GET_ERROR_TYPE(_errcode) ((_errcode) & 0x0000FFFF) + /**< Extract module code from error code (#t_Error) */ + +#define GET_ERROR_MODULE(_errcode) ((_errcode) & 0x00FF0000) + /**< Extract error type (#e_ErrorType) from + error code (#t_Error) */ + + +/**************************************************************************//** + @Description Error Type Enumeration +*//***************************************************************************/ +typedef enum e_ErrorType /* Comments / Associated Message Strings */ +{ /* ------------------------------------------------------------ */ + E_OK = 0 /* Never use "RETURN_ERROR" with E_OK; Use "return E_OK;" */ + + /* Invalid Function Calls */ + ,E_INVALID_STATE /**< The operation is not allowed in current module state. */ + /* String: none. */ + ,E_INVALID_OPERATION /**< The operation/command is invalid (unrecognized). */ + /* String: none. */ + ,E_NOT_SUPPORTED /**< The function is not supported or not implemented. */ + /* String: none. */ + ,E_NO_DEVICE /**< The associated device is not initialized. */ + /* String: none. */ + + /* Invalid Parameters */ + ,E_INVALID_HANDLE /**< Invalid handle of module or object. */ + /* String: none, unless the function takes in more than one + handle (in this case add the handle description) */ + ,E_INVALID_ID /**< Invalid module ID (usually enumeration or index). */ + /* String: none, unless the function takes in more than one + ID (in this case add the ID description) */ + ,E_NULL_POINTER /**< Unexpected NULL pointer. */ + /* String: pointer description. */ + ,E_INVALID_VALUE /**< Invalid value. */ + /* Use for non-enumeration parameters, and + only when other error types are not suitable. + String: parameter description + "(should be )", + e.g: "Maximum Rx buffer length (should be divisible by 8)", + "Channel number (should be even)". */ + ,E_INVALID_SELECTION /**< Invalid selection or mode. */ + /* Use for enumeration values, only when other error types + are not suitable. + String: parameter description. */ + ,E_INVALID_COMM_MODE /**< Invalid communication mode. */ + /* String: none, unless the function takes in more than one + communication mode indications (in this case add + parameter description). */ + ,E_INVALID_BYTE_ORDER /**< Invalid byte order. */ + /* String: none, unless the function takes in more than one + byte order indications (in this case add parameter + description). */ + ,E_INVALID_MEMORY_TYPE /**< Invalid memory type. */ + /* String: none, unless the function takes in more than one + memory types (in this case add memory description, + e.g: "Data memory", "Buffer descriptors memory"). */ + ,E_INVALID_INTR_QUEUE /**< Invalid interrupt queue. */ + /* String: none, unless the function takes in more than one + interrupt queues (in this case add queue description, + e.g: "Rx interrupt queue", "Tx interrupt queue"). */ + ,E_INVALID_PRIORITY /**< Invalid priority. */ + /* String: none, unless the function takes in more than one + priority (in this case add priority description). */ + ,E_INVALID_CLOCK /**< Invalid clock. */ + /* String: none, unless the function takes in more than one + clocks (in this case add clock description, + e.g: "Rx clock", "Tx clock"). */ + ,E_INVALID_RATE /**< Invalid rate value. */ + /* String: none, unless the function takes in more than one + rate values (in this case add rate description). */ + ,E_INVALID_ADDRESS /**< Invalid address. */ + /* String: description of the specific violation. */ + ,E_INVALID_BUS /**< Invalid bus type. */ + /* String: none, unless the function takes in more than one + bus parameters (in this case add bus description). */ + ,E_BUS_CONFLICT /**< Bus (or memory) type conflicts with another setting. */ + /* String: description of the conflicting buses/memories. */ + ,E_CONFLICT /**< Some setting conflicts with another setting. */ + /* String: description of the conflicting settings. */ + ,E_NOT_ALIGNED /**< Non-aligned address. */ + /* String: parameter description + "(should be %d-bytes aligned)", + e.g: "Rx data buffer (should be 32-bytes aligned)". */ + ,E_NOT_IN_RANGE /**< Parameter value is out of range. */ + /* Don't use this error for enumeration parameters. + String: parameter description + "(should be %d-%d)", + e.g: "Number of pad characters (should be 0-15)". */ + + /* Frame/Buffer Errors */ + ,E_INVALID_FRAME /**< Invalid frame object (NULL handle or missing buffers). */ + /* String: none. */ + ,E_EMPTY_FRAME /**< Frame object is empty (has no buffers). */ + /* String: none. */ + ,E_EMPTY_BUFFER /**< Buffer object is empty (no data, or zero data length). */ + /* String: none. */ + + /* Resource Errors */ + ,E_NO_MEMORY /**< External memory allocation failed. */ + /* String: description of item for which allocation failed. */ + ,E_NOT_FOUND /**< Requested resource or item was not found. */ + /* Use only when the resource/item is uniquely identified. + String: none, unless the operation is not the main goal + of the function (in this case add item description). */ + ,E_NOT_AVAILABLE /**< Resource is unavailable. */ + /* String: none, unless the operation is not the main goal + of the function (in this case add resource description). */ + ,E_ALREADY_EXISTS /**< Requested resource or item already exists. */ + /* Use when resource duplication or sharing are not allowed. + String: none, unless the operation is not the main goal + of the function (in this case add item description). */ + ,E_FULL /**< Resource is full. */ + /* String: none, unless the operation is not the main goal + of the function (in this case add resource description). */ + ,E_EMPTY /**< Resource is empty. */ + /* String: none, unless the operation is not the main goal + of the function (in this case add resource description). */ + ,E_BUSY /**< Resource or module is busy. */ + /* String: none, unless the operation is not the main goal + of the function (in this case add resource description). */ + ,E_ALREADY_FREE /**< Specified resource or item is already free or deleted. */ + /* String: none, unless the operation is not the main goal + of the function (in this case add item description). */ + + /* Read/Write Access Errors */ + ,E_READ_FAILED /**< Read access failed on memory/device. */ + /* String: none, or device name. */ + ,E_WRITE_FAILED /**< Write access failed on memory/device. */ + /* String: none, or device name. */ + + /* Send/Receive Failures */ + ,E_SEND_FAILED /**< Send operation failed on device. */ + /* String: none, or device name. */ + ,E_RECEIVE_FAILED /**< Receive operation failed on device. */ + /* String: none, or device name. */ + + /* Operation time-out */ + ,E_TIMEOUT /**< The operation timed out. */ + /* String: none. */ + + ,E_DUMMY_LAST /* NEVER USED */ + +} e_ErrorType; + + +/**************************************************************************//** + @Description Event Type Enumeration +*//***************************************************************************/ +typedef enum e_Event /* Comments / Associated Flags and Message Strings */ +{ /* ------------------------------------------------------------ */ + EV_NO_EVENT = 0 /**< No event; Never used. */ + + ,EV_RX_DISCARD /**< Received packet discarded (by the driver, and only for + complete packets); + Flags: error flags in case of error, zero otherwise. */ + /* String: reason for discard, e.g: "Error in frame", + "Disordered frame", "Incomplete frame", "No frame object". */ + ,EV_RX_ERROR /**< Receive error (by hardware/firmware); + Flags: usually status flags from the buffer descriptor. */ + /* String: none. */ + ,EV_TX_ERROR /**< Transmit error (by hardware/firmware); + Flags: usually status flags from the buffer descriptor. */ + /* String: none. */ + ,EV_NO_BUFFERS /**< System ran out of buffer objects; + Flags: zero. */ + /* String: none. */ + ,EV_NO_MB_FRAMES /**< System ran out of multi-buffer frame objects; + Flags: zero. */ + /* String: none. */ + ,EV_NO_SB_FRAMES /**< System ran out of single-buffer frame objects; + Flags: zero. */ + /* String: none. */ + ,EV_TX_QUEUE_FULL /**< Transmit queue is full; + Flags: zero. */ + /* String: none. */ + ,EV_RX_QUEUE_FULL /**< Receive queue is full; + Flags: zero. */ + /* String: none. */ + ,EV_INTR_QUEUE_FULL /**< Interrupt queue overflow; + Flags: zero. */ + /* String: none. */ + ,EV_NO_DATA_BUFFER /**< Data buffer allocation (from higher layer) failed; + Flags: zero. */ + /* String: none. */ + ,EV_OBJ_POOL_EMPTY /**< Objects pool is empty; + Flags: zero. */ + /* String: object description (name). */ + ,EV_BUS_ERROR /**< Illegal access on bus; + Flags: the address (if available) or bus identifier */ + /* String: bus/address/module description. */ + ,EV_PTP_TXTS_QUEUE_FULL /**< PTP Tx timestamps queue is full; + Flags: zero. */ + /* String: none. */ + ,EV_PTP_RXTS_QUEUE_FULL /**< PTP Rx timestamps queue is full; + Flags: zero. */ + /* String: none. */ + ,EV_DUMMY_LAST + +} e_Event; + + +/**************************************************************************//** + @Collection Debug Levels for Errors and Events + + The level description refers to errors only. + For events, classification is done by the user. + + The TRACE, INFO and WARNING levels are allowed only when using + the DBG macro, and are not allowed when using the error macros + (RETURN_ERROR or REPORT_ERROR). + @{ +*//***************************************************************************/ +#define REPORT_LEVEL_CRITICAL 1 /**< Crasher: Incorrect flow, NULL pointers/handles. */ +#define REPORT_LEVEL_MAJOR 2 /**< Cannot proceed: Invalid operation, parameters or + configuration. */ +#define REPORT_LEVEL_MINOR 3 /**< Recoverable problem: a repeating call with the same + parameters may be successful. */ +#define REPORT_LEVEL_WARNING 4 /**< Something is not exactly right, yet it is not an error. */ +#define REPORT_LEVEL_INFO 5 /**< Messages which may be of interest to user/programmer. */ +#define REPORT_LEVEL_TRACE 6 /**< Program flow messages. */ + +#define EVENT_DISABLED 0xFF /**< Disabled event (not reported at all) */ + +/* @} */ + + + +#define NO_MSG ("") + +#ifndef DEBUG_GLOBAL_LEVEL +#define DEBUG_GLOBAL_LEVEL REPORT_LEVEL_WARNING +#endif /* DEBUG_GLOBAL_LEVEL */ + +#ifndef ERROR_GLOBAL_LEVEL +#define ERROR_GLOBAL_LEVEL DEBUG_GLOBAL_LEVEL +#endif /* ERROR_GLOBAL_LEVEL */ + +#ifndef EVENT_GLOBAL_LEVEL +#define EVENT_GLOBAL_LEVEL REPORT_LEVEL_MINOR +#endif /* EVENT_GLOBAL_LEVEL */ + +#ifdef EVENT_LOCAL_LEVEL +#define EVENT_DYNAMIC_LEVEL EVENT_LOCAL_LEVEL +#else +#define EVENT_DYNAMIC_LEVEL EVENT_GLOBAL_LEVEL +#endif /* EVENT_LOCAL_LEVEL */ + + +#ifndef DEBUG_DYNAMIC_LEVEL +#define DEBUG_USING_STATIC_LEVEL + +#ifdef DEBUG_STATIC_LEVEL +#define DEBUG_DYNAMIC_LEVEL DEBUG_STATIC_LEVEL +#else +#define DEBUG_DYNAMIC_LEVEL DEBUG_GLOBAL_LEVEL +#endif /* DEBUG_STATIC_LEVEL */ + +#else /* DEBUG_DYNAMIC_LEVEL */ +#ifdef DEBUG_STATIC_LEVEL +#error "Please use either DEBUG_STATIC_LEVEL or DEBUG_DYNAMIC_LEVEL (not both)" +#else +int DEBUG_DYNAMIC_LEVEL = DEBUG_GLOBAL_LEVEL; +#endif /* DEBUG_STATIC_LEVEL */ +#endif /* !DEBUG_DYNAMIC_LEVEL */ + + +#ifndef ERROR_DYNAMIC_LEVEL + +#ifdef ERROR_STATIC_LEVEL +#define ERROR_DYNAMIC_LEVEL ERROR_STATIC_LEVEL +#else +#define ERROR_DYNAMIC_LEVEL ERROR_GLOBAL_LEVEL +#endif /* ERROR_STATIC_LEVEL */ + +#else /* ERROR_DYNAMIC_LEVEL */ +#ifdef ERROR_STATIC_LEVEL +#error "Please use either ERROR_STATIC_LEVEL or ERROR_DYNAMIC_LEVEL (not both)" +#else +int ERROR_DYNAMIC_LEVEL = ERROR_GLOBAL_LEVEL; +#endif /* ERROR_STATIC_LEVEL */ +#endif /* !ERROR_DYNAMIC_LEVEL */ + +#define PRINT_FORMAT "[CPU%02d, %s:%d %s]" +#define PRINT_FMT_PARAMS CORE_GetId(), __FILE__, __LINE__, __FUNCTION__ + +#if (!(defined(DEBUG_ERRORS)) || (DEBUG_ERRORS == 0)) +/* No debug/error/event messages at all */ +#define DBG(_level, _vmsg) + +#define REPORT_ERROR(_level, _err, _vmsg) + +#define RETURN_ERROR(_level, _err, _vmsg) \ + return ERROR_CODE(_err) + +#if (REPORT_EVENTS > 0) + +#define REPORT_EVENT(_ev, _appId, _flg, _vmsg) \ + do { \ + if (_ev##_LEVEL <= EVENT_DYNAMIC_LEVEL) { \ + XX_EventById((uint32_t)(_ev), (t_Handle)(_appId), (uint16_t)(_flg), NO_MSG); \ + } \ + } while (0) + +#else + +#define REPORT_EVENT(_ev, _appId, _flg, _vmsg) + +#endif /* (REPORT_EVENTS > 0) */ + + +#else /* DEBUG_ERRORS > 0 */ + +extern const char *dbgLevelStrings[]; +extern const char *errTypeStrings[]; +extern const char *moduleStrings[]; +#if (REPORT_EVENTS > 0) +extern const char *eventStrings[]; +#endif /* (REPORT_EVENTS > 0) */ + + +#if ((defined(DEBUG_USING_STATIC_LEVEL)) && (DEBUG_DYNAMIC_LEVEL < REPORT_LEVEL_WARNING)) +/* No need for DBG macro - debug level is higher anyway */ +#define DBG(_level, _vmsg) +#else +#define DBG(_level, _vmsg) \ + do { \ + if (REPORT_LEVEL_##_level <= DEBUG_DYNAMIC_LEVEL) { \ + XX_Print("> %s (%s) " PRINT_FORMAT ": ", \ + dbgLevelStrings[REPORT_LEVEL_##_level - 1], \ + moduleStrings[__ERR_MODULE__ >> 16], \ + PRINT_FMT_PARAMS); \ + XX_Print _vmsg; \ + XX_Print("\r\n"); \ + } \ + } while (0) +#endif /* (defined(DEBUG_USING_STATIC_LEVEL) && (DEBUG_DYNAMIC_LEVEL < WARNING)) */ + + +#define REPORT_ERROR(_level, _err, _vmsg) \ + do { \ + if (REPORT_LEVEL_##_level <= ERROR_DYNAMIC_LEVEL) { \ + XX_Print("! %s %s Error " PRINT_FORMAT ": %s; ", \ + dbgLevelStrings[REPORT_LEVEL_##_level - 1], \ + moduleStrings[__ERR_MODULE__ >> 16], \ + PRINT_FMT_PARAMS, \ + errTypeStrings[(GET_ERROR_TYPE(_err) - E_OK - 1)]); \ + XX_Print _vmsg; \ + XX_Print("\r\n"); \ + } \ + } while (0) + + +#define RETURN_ERROR(_level, _err, _vmsg) \ + do { \ + REPORT_ERROR(_level, (_err), _vmsg); \ + return ERROR_CODE(_err); \ + } while (0) + + +#if (REPORT_EVENTS > 0) + +#define REPORT_EVENT(_ev, _appId, _flg, _vmsg) \ + do { \ + if (_ev##_LEVEL <= EVENT_DYNAMIC_LEVEL) { \ + XX_Print("~ %s %s Event " PRINT_FORMAT ": %s (flags: 0x%04x); ", \ + dbgLevelStrings[_ev##_LEVEL - 1], \ + moduleStrings[__ERR_MODULE__ >> 16], \ + PRINT_FMT_PARAMS, \ + eventStrings[((_ev) - EV_NO_EVENT - 1)], \ + (uint16_t)(_flg)); \ + XX_Print _vmsg; \ + XX_Print("\r\n"); \ + XX_EventById((uint32_t)(_ev), (t_Handle)(_appId), (uint16_t)(_flg), NO_MSG); \ + } \ + } while (0) + +#else /* not REPORT_EVENTS */ + +#define REPORT_EVENT(_ev, _appId, _flg, _vmsg) + +#endif /* (REPORT_EVENTS > 0) */ + +#endif /* (DEBUG_ERRORS > 0) */ + + +/**************************************************************************//** + @Function ASSERT_COND + + @Description Assertion macro. + + @Param[in] _cond - The condition being checked, in positive form; + Failure of the condition triggers the assert. +*//***************************************************************************/ +#ifdef DISABLE_ASSERTIONS +#define ASSERT_COND(_cond) +#else +#define ASSERT_COND(_cond) \ + do { \ + if (!(_cond)) { \ + XX_Print("*** ASSERT_COND failed " PRINT_FORMAT "\r\n", \ + PRINT_FMT_PARAMS); \ + XX_Exit(1); \ + } \ + } while (0) +#endif /* DISABLE_ASSERTIONS */ + + +#ifdef DISABLE_INIT_PARAMETERS_CHECK + +#define CHECK_INIT_PARAMETERS(handle, f_check) +#define CHECK_INIT_PARAMETERS_RETURN_VALUE(handle, f_check, retval) + +#else + +#define CHECK_INIT_PARAMETERS(handle, f_check) \ + do { \ + t_Error err = f_check(handle); \ + if (err != E_OK) { \ + RETURN_ERROR(MAJOR, err, NO_MSG); \ + } \ + } while (0) + +#define CHECK_INIT_PARAMETERS_RETURN_VALUE(handle, f_check, retval) \ + do { \ + t_Error err = f_check(handle); \ + if (err != E_OK) { \ + REPORT_ERROR(MAJOR, err, NO_MSG); \ + return (retval); \ + } \ + } while (0) + +#endif /* DISABLE_INIT_PARAMETERS_CHECK */ + +#ifdef DISABLE_SANITY_CHECKS + +#define SANITY_CHECK_RETURN_ERROR(_cond, _err) +#define SANITY_CHECK_RETURN_VALUE(_cond, _err, retval) +#define SANITY_CHECK_RETURN(_cond, _err) +#define SANITY_CHECK_EXIT(_cond, _err) + +#else /* DISABLE_SANITY_CHECKS */ + +#define SANITY_CHECK_RETURN_ERROR(_cond, _err) \ + do { \ + if (!(_cond)) { \ + RETURN_ERROR(CRITICAL, (_err), NO_MSG); \ + } \ + } while (0) + +#define SANITY_CHECK_RETURN_VALUE(_cond, _err, retval) \ + do { \ + if (!(_cond)) { \ + REPORT_ERROR(CRITICAL, (_err), NO_MSG); \ + return (retval); \ + } \ + } while (0) + +#define SANITY_CHECK_RETURN(_cond, _err) \ + do { \ + if (!(_cond)) { \ + REPORT_ERROR(CRITICAL, (_err), NO_MSG); \ + return; \ + } \ + } while (0) + +#define SANITY_CHECK_EXIT(_cond, _err) \ + do { \ + if (!(_cond)) { \ + REPORT_ERROR(CRITICAL, (_err), NO_MSG); \ + XX_Exit(1); \ + } \ + } while (0) + +#endif /* DISABLE_SANITY_CHECKS */ + +/** @} */ /* end of Debug/error Utils group */ + +/** @} */ /* end of General Utils group */ + +#endif /* __ERROR_EXT_H */ + + --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/etc/list_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/etc/list_ext.h @@ -0,0 +1,357 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + + @File list_ext.h + + @Description External prototypes for list.c +*//***************************************************************************/ + +#ifndef __LIST_EXT_H +#define __LIST_EXT_H + + +#include "std_ext.h" + + +/**************************************************************************//** + @Group etc_id Utility Library Application Programming Interface + + @Description External routines. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group list_id List + + @Description List module functions,definitions and enums. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description List structure. +*//***************************************************************************/ +typedef struct List +{ + struct List *p_Next; /**< A pointer to the next list object */ + struct List *p_Prev; /**< A pointer to the previous list object */ +} t_List; + + +/**************************************************************************//** + @Function LIST_FIRST/LIST_LAST/LIST_NEXT/LIST_PREV + + @Description Macro to get first/last/next/previous entry in a list. + + @Param[in] p_List - A pointer to a list. +*//***************************************************************************/ +#define LIST_FIRST(p_List) (p_List)->p_Next +#define LIST_LAST(p_List) (p_List)->p_Prev +#define LIST_NEXT LIST_FIRST +#define LIST_PREV LIST_LAST + + +/**************************************************************************//** + @Function LIST_INIT + + @Description Macro for initialization of a list struct. + + @Param[in] lst - The t_List object to initialize. +*//***************************************************************************/ +#define LIST_INIT(lst) {&(lst), &(lst)} + + +/**************************************************************************//** + @Function LIST + + @Description Macro to declare of a list. + + @Param[in] listName - The list object name. +*//***************************************************************************/ +#define LIST(listName) t_List listName = LIST_INIT(listName) + + +/**************************************************************************//** + @Function INIT_LIST + + @Description Macro to initialize a list pointer. + + @Param[in] p_List - The list pointer. +*//***************************************************************************/ +#define INIT_LIST(p_List) LIST_FIRST(p_List) = LIST_LAST(p_List) = (p_List) + + +/**************************************************************************//** + @Function LIST_OBJECT + + @Description Macro to get the struct (object) for this entry. + + @Param[in] type - The type of the struct (object) this list is embedded in. + @Param[in] member - The name of the t_List object within the struct. + + @Return The structure pointer for this entry. +*//***************************************************************************/ +#define MEMBER_OFFSET(type, member) (PTR_TO_UINT(&((type *)0)->member)) +#define LIST_OBJECT(p_List, type, member) \ + ((type *)((char *)(p_List)-MEMBER_OFFSET(type, member))) + + +/**************************************************************************//** + @Function LIST_FOR_EACH + + @Description Macro to iterate over a list. + + @Param[in] p_Pos - A pointer to a list to use as a loop counter. + @Param[in] p_Head - A pointer to the head for your list pointer. + + @Cautions You can't delete items with this routine. + For deletion use LIST_FOR_EACH_SAFE(). +*//***************************************************************************/ +#define LIST_FOR_EACH(p_Pos, p_Head) \ + for (p_Pos = LIST_FIRST(p_Head); p_Pos != (p_Head); p_Pos = LIST_NEXT(p_Pos)) + + +/**************************************************************************//** + @Function LIST_FOR_EACH_SAFE + + @Description Macro to iterate over a list safe against removal of list entry. + + @Param[in] p_Pos - A pointer to a list to use as a loop counter. + @Param[in] p_Tmp - Another pointer to a list to use as temporary storage. + @Param[in] p_Head - A pointer to the head for your list pointer. +*//***************************************************************************/ +#define LIST_FOR_EACH_SAFE(p_Pos, p_Tmp, p_Head) \ + for (p_Pos = LIST_FIRST(p_Head), p_Tmp = LIST_FIRST(p_Pos); \ + p_Pos != (p_Head); \ + p_Pos = p_Tmp, p_Tmp = LIST_NEXT(p_Pos)) + + +/**************************************************************************//** + @Function LIST_FOR_EACH_OBJECT_SAFE + + @Description Macro to iterate over list of given type safely. + + @Param[in] p_Pos - A pointer to a list to use as a loop counter. + @Param[in] p_Tmp - Another pointer to a list to use as temporary storage. + @Param[in] type - The type of the struct this is embedded in. + @Param[in] p_Head - A pointer to the head for your list pointer. + @Param[in] member - The name of the list_struct within the struct. + + @Cautions You can't delete items with this routine. + For deletion use LIST_FOR_EACH_SAFE(). +*//***************************************************************************/ +#define LIST_FOR_EACH_OBJECT_SAFE(p_Pos, p_Tmp, p_Head, type, member) \ + for (p_Pos = LIST_OBJECT(LIST_FIRST(p_Head), type, member), \ + p_Tmp = LIST_OBJECT(LIST_FIRST(&p_Pos->member), type, member); \ + &p_Pos->member != (p_Head); \ + p_Pos = p_Tmp, \ + p_Tmp = LIST_OBJECT(LIST_FIRST(&p_Pos->member), type, member)) + +/**************************************************************************//** + @Function LIST_FOR_EACH_OBJECT + + @Description Macro to iterate over list of given type. + + @Param[in] p_Pos - A pointer to a list to use as a loop counter. + @Param[in] type - The type of the struct this is embedded in. + @Param[in] p_Head - A pointer to the head for your list pointer. + @Param[in] member - The name of the list_struct within the struct. + + @Cautions You can't delete items with this routine. + For deletion use LIST_FOR_EACH_SAFE(). +*//***************************************************************************/ +#define LIST_FOR_EACH_OBJECT(p_Pos, type, p_Head, member) \ + for (p_Pos = LIST_OBJECT(LIST_FIRST(p_Head), type, member); \ + &p_Pos->member != (p_Head); \ + p_Pos = LIST_OBJECT(LIST_FIRST(&(p_Pos->member)), type, member)) + + +/**************************************************************************//** + @Function LIST_Add + + @Description Add a new entry to a list. + + Insert a new entry after the specified head. + This is good for implementing stacks. + + @Param[in] p_New - A pointer to a new list entry to be added. + @Param[in] p_Head - A pointer to a list head to add it after. + + @Return none. +*//***************************************************************************/ +static __inline__ void LIST_Add(t_List *p_New, t_List *p_Head) +{ + LIST_PREV(LIST_NEXT(p_Head)) = p_New; + LIST_NEXT(p_New) = LIST_NEXT(p_Head); + LIST_PREV(p_New) = p_Head; + LIST_NEXT(p_Head) = p_New; +} + + +/**************************************************************************//** + @Function LIST_AddToTail + + @Description Add a new entry to a list. + + Insert a new entry before the specified head. + This is useful for implementing queues. + + @Param[in] p_New - A pointer to a new list entry to be added. + @Param[in] p_Head - A pointer to a list head to add it after. + + @Return none. +*//***************************************************************************/ +static __inline__ void LIST_AddToTail(t_List *p_New, t_List *p_Head) +{ + LIST_NEXT(LIST_PREV(p_Head)) = p_New; + LIST_PREV(p_New) = LIST_PREV(p_Head); + LIST_NEXT(p_New) = p_Head; + LIST_PREV(p_Head) = p_New; +} + + +/**************************************************************************//** + @Function LIST_Del + + @Description Deletes entry from a list. + + @Param[in] p_Entry - A pointer to the element to delete from the list. + + @Return none. + + @Cautions LIST_IsEmpty() on entry does not return true after this, + the entry is in an undefined state. +*//***************************************************************************/ +static __inline__ void LIST_Del(t_List *p_Entry) +{ + LIST_PREV(LIST_NEXT(p_Entry)) = LIST_PREV(p_Entry); + LIST_NEXT(LIST_PREV(p_Entry)) = LIST_NEXT(p_Entry); +} + + +/**************************************************************************//** + @Function LIST_DelAndInit + + @Description Deletes entry from list and reinitialize it. + + @Param[in] p_Entry - A pointer to the element to delete from the list. + + @Return none. +*//***************************************************************************/ +static __inline__ void LIST_DelAndInit(t_List *p_Entry) +{ + LIST_Del(p_Entry); + INIT_LIST(p_Entry); +} + + +/**************************************************************************//** + @Function LIST_Move + + @Description Delete from one list and add as another's head. + + @Param[in] p_Entry - A pointer to the list entry to move. + @Param[in] p_Head - A pointer to the list head that will precede our entry. + + @Return none. +*//***************************************************************************/ +static __inline__ void LIST_Move(t_List *p_Entry, t_List *p_Head) +{ + LIST_Del(p_Entry); + LIST_Add(p_Entry, p_Head); +} + + +/**************************************************************************//** + @Function LIST_MoveToTail + + @Description Delete from one list and add as another's tail. + + @Param[in] p_Entry - A pointer to the entry to move. + @Param[in] p_Head - A pointer to the list head that will follow our entry. + + @Return none. +*//***************************************************************************/ +static __inline__ void LIST_MoveToTail(t_List *p_Entry, t_List *p_Head) +{ + LIST_Del(p_Entry); + LIST_AddToTail(p_Entry, p_Head); +} + + +/**************************************************************************//** + @Function LIST_IsEmpty + + @Description Tests whether a list is empty. + + @Param[in] p_List - A pointer to the list to test. + + @Return 1 if the list is empty, 0 otherwise. +*//***************************************************************************/ +static __inline__ int LIST_IsEmpty(t_List *p_List) +{ + return (LIST_FIRST(p_List) == p_List); +} + + +/**************************************************************************//** + @Function LIST_Append + + @Description Join two lists. + + @Param[in] p_NewList - A pointer to the new list to add. + @Param[in] p_Head - A pointer to the place to add it in the first list. + + @Return none. +*//***************************************************************************/ +void LIST_Append(t_List *p_NewList, t_List *p_Head); + + +/**************************************************************************//** + @Function LIST_NumOfObjs + + @Description Counts number of objects in the list + + @Param[in] p_List - A pointer to the list which objects are to be counted. + + @Return Number of objects in the list. +*//***************************************************************************/ +int LIST_NumOfObjs(t_List *p_List); + +/** @} */ /* end of list_id group */ +/** @} */ /* end of etc_id group */ + + +#endif /* __LIST_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/etc/mem_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/etc/mem_ext.h @@ -0,0 +1,317 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + + @File mem_ext.h + + @Description External prototypes for the memory manager object +*//***************************************************************************/ + +#ifndef __MEM_EXT_H +#define __MEM_EXT_H + +#include "std_ext.h" +#include "part_ext.h" + + +/**************************************************************************//** + @Group etc_id Utility Library Application Programming Interface + + @Description External routines. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group mem_id Slab Memory Manager + + @Description Slab Memory Manager module functions, definitions and enums. + + @{ +*//***************************************************************************/ + +/* Each block is of the following structure: + * + * + * +-----------+----------+---------------------------+-----------+-----------+ + * | Alignment | Prefix | Data | Postfix | Alignment | + * | field | field | field | field | Padding | + * | | | | | | + * +-----------+----------+---------------------------+-----------+-----------+ + * and at the beginning of all bytes, an additional optional padding might reside + * to ensure that the first blocks data field is aligned as requested. + */ + + +#define MEM_MAX_NAME_LENGTH 8 + +/**************************************************************************//* + @Description Memory Segment structure +*//***************************************************************************/ + +typedef struct +{ + char name[MEM_MAX_NAME_LENGTH]; + /* The segment's name */ + uint8_t **p_Bases; /* Base addresses of the segments */ + uint8_t **p_BlocksStack; /* Array of pointers to blocks */ + t_Handle h_Spinlock; + uint16_t dataSize; /* Size of each data block */ + uint16_t prefixSize; /* How many bytes to reserve before the data */ + uint16_t postfixSize; /* How many bytes to reserve after the data */ + uint16_t alignment; /* Requested alignment for the data field */ + int allocOwner; /* Memory allocation owner */ + uint32_t getFailures; /* Number of times get failed */ + uint32_t num; /* Number of blocks in segment */ + uint32_t current; /* Current block */ + bool consecutiveMem; /* Allocate consecutive data blocks memory */ +#ifdef DEBUG_MEM_LEAKS + void *p_MemDbg; /* MEM debug database (MEM leaks detection) */ + uint32_t blockOffset; + uint32_t blockSize; +#endif /* DEBUG_MEM_LEAKS */ +} t_MemorySegment; + + + +/**************************************************************************//** + @Function MEM_Init + + @Description Create a new memory segment. + + @Param[in] name - Name of memory partition. + @Param[in] p_Handle - Handle to new segment is returned through here. + @Param[in] num - Number of blocks in new segment. + @Param[in] dataSize - Size of blocks in segment. + @Param[in] prefixSize - How many bytes to allocate before the data. + @Param[in] postfixSize - How many bytes to allocate after the data. + @Param[in] alignment - Requested alignment for data field (in bytes). + + @Return E_OK - success, E_NO_MEMORY - out of memory. +*//***************************************************************************/ +t_Error MEM_Init(char name[], + t_Handle *p_Handle, + uint32_t num, + uint16_t dataSize, + uint16_t prefixSize, + uint16_t postfixSize, + uint16_t alignment); + +/**************************************************************************//** + @Function MEM_InitSmart + + @Description Create a new memory segment. + + @Param[in] name - Name of memory partition. + @Param[in] p_Handle - Handle to new segment is returned through here. + @Param[in] num - Number of blocks in new segment. + @Param[in] dataSize - Size of blocks in segment. + @Param[in] prefixSize - How many bytes to allocate before the data. + @Param[in] postfixSize - How many bytes to allocate after the data. + @Param[in] alignment - Requested alignment for data field (in bytes). + @Param[in] memPartitionId - Memory partition ID for allocation. + @Param[in] consecutiveMem - Whether to allocate the memory blocks + continuously or not. + + @Return E_OK - success, E_NO_MEMORY - out of memory. +*//***************************************************************************/ +t_Error MEM_InitSmart(char name[], + t_Handle *p_Handle, + uint32_t num, + uint16_t dataSize, + uint16_t prefixSize, + uint16_t postfixSize, + uint16_t alignment, + uint8_t memPartitionId, + bool consecutiveMem); + +/**************************************************************************//** + @Function MEM_InitByAddress + + @Description Create a new memory segment with a specified base address. + + @Param[in] name - Name of memory partition. + @Param[in] p_Handle - Handle to new segment is returned through here. + @Param[in] num - Number of blocks in new segment. + @Param[in] dataSize - Size of blocks in segment. + @Param[in] prefixSize - How many bytes to allocate before the data. + @Param[in] postfixSize - How many bytes to allocate after the data. + @Param[in] alignment - Requested alignment for data field (in bytes). + @Param[in] address - The required base address. + + @Return E_OK - success, E_NO_MEMORY - out of memory. + *//***************************************************************************/ +t_Error MEM_InitByAddress(char name[], + t_Handle *p_Handle, + uint32_t num, + uint16_t dataSize, + uint16_t prefixSize, + uint16_t postfixSize, + uint16_t alignment, + uint8_t *address); + +/**************************************************************************//** + @Function MEM_Free + + @Description Free a specific memory segment. + + @Param[in] h_Mem - Handle to memory segment. + + @Return None. +*//***************************************************************************/ +void MEM_Free(t_Handle h_Mem); + +/**************************************************************************//** + @Function MEM_Get + + @Description Get a block of memory from a segment. + + @Param[in] h_Mem - Handle to memory segment. + + @Return Pointer to new memory block on success,0 otherwise. +*//***************************************************************************/ +void * MEM_Get(t_Handle h_Mem); + +/**************************************************************************//** + @Function MEM_GetN + + @Description Get up to N blocks of memory from a segment. + + The blocks are assumed to be of a fixed size (one size per segment). + + @Param[in] h_Mem - Handle to memory segment. + @Param[in] num - Number of blocks to allocate. + @Param[out] array - Array of at least num pointers to which the addresses + of the allocated blocks are written. + + @Return The number of blocks actually allocated. + + @Cautions Interrupts are disabled for all of the allocation loop. + Although this loop is very short for each block (several machine + instructions), you should not allocate a very large number + of blocks via this routine. +*//***************************************************************************/ +uint16_t MEM_GetN(t_Handle h_Mem, uint32_t num, void *array[]); + +/**************************************************************************//** + @Function MEM_Put + + @Description Put a block of memory back to a segment. + + @Param[in] h_Mem - Handle to memory segment. + @Param[in] p_Block - The block to return. + + @Return Pointer to new memory block on success,0 otherwise. +*//***************************************************************************/ +t_Error MEM_Put(t_Handle h_Mem, void *p_Block); + +/**************************************************************************//** + @Function MEM_ComputePartitionSize + + @Description calculate a tight upper boundary of the size of a partition with + given attributes. + + The returned value is suitable if one wants to use MEM_InitByAddress(). + + @Param[in] num - The number of blocks in the segment. + @Param[in] dataSize - Size of block to get. + @Param[in] prefixSize - The prefix size + @Param postfixSize - The postfix size + @Param[in] alignment - The requested alignment value (in bytes) + + @Return The memory block size a segment with the given attributes needs. +*//***************************************************************************/ +uint32_t MEM_ComputePartitionSize(uint32_t num, + uint16_t dataSize, + uint16_t prefixSize, + uint16_t postfixSize, + uint16_t alignment); + +#ifdef DEBUG_MEM_LEAKS +#if !(defined(__MWERKS__) && (__dest_os == __ppc_eabi)) +#error "Memory-Leaks-Debug option is supported only for freescale CodeWarrior" +#endif /* !(defined(__MWERKS__) && ... */ + +/**************************************************************************//** + @Function MEM_CheckLeaks + + @Description Report MEM object leaks. + + This routine is automatically called by the MEM_Free() routine, + but it can also be invoked while the MEM object is alive. + + @Param[in] h_Mem - Handle to memory segment. + + @Return None. +*//***************************************************************************/ +void MEM_CheckLeaks(t_Handle h_Mem); + +#else /* not DEBUG_MEM_LEAKS */ +#define MEM_CheckLeaks(h_Mem) +#endif /* not DEBUG_MEM_LEAKS */ + +/**************************************************************************//** + @Description Get base of MEM +*//***************************************************************************/ +#define MEM_GetBase(h_Mem) ((t_MemorySegment *)(h_Mem))->p_Bases[0] + +/**************************************************************************//** + @Description Get size of MEM block +*//***************************************************************************/ +#define MEM_GetSize(h_Mem) ((t_MemorySegment *)(h_Mem))->dataSize + +/**************************************************************************//** + @Description Get prefix size of MEM block +*//***************************************************************************/ +#define MEM_GetPrefixSize(h_Mem) ((t_MemorySegment *)(h_Mem))->prefixSize + +/**************************************************************************//** + @Description Get postfix size of MEM block +*//***************************************************************************/ +#define MEM_GetPostfixSize(h_Mem) ((t_MemorySegment *)(h_Mem))->postfixSize + +/**************************************************************************//** + @Description Get alignment of MEM block (in bytes) +*//***************************************************************************/ +#define MEM_GetAlignment(h_Mem) ((t_MemorySegment *)(h_Mem))->alignment + +/**************************************************************************//** + @Description Get the number of blocks in the segment +*//***************************************************************************/ +#define MEM_GetNumOfBlocks(h_Mem) ((t_MemorySegment *)(h_Mem))->num + +/** @} */ /* end of MEM group */ +/** @} */ /* end of etc_id group */ + + +#endif /* __MEM_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/etc/memcpy_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/etc/memcpy_ext.h @@ -0,0 +1,173 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + + @File memcpy_ext.h + + @Description Efficient functions for copying and setting blocks of memory. +*//***************************************************************************/ + +#ifndef __MEMCPY_EXT_H +#define __MEMCPY_EXT_H + +#include "std_ext.h" + + +/**************************************************************************//** + @Group etc_id Utility Library Application Programming Interface + + @Description External routines. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group mem_cpy Memory Copy + + @Description Memory Copy module functions,definitions and enums. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Function MemCpy32 + + @Description Copies one memory buffer into another one in 4-byte chunks! + Which should be more efficient than byte by byte. + + For large buffers (over 60 bytes) this function is about 4 times + more efficient than the trivial memory copy. For short buffers + it is reduced to the trivial copy and may be a bit worse. + + @Param[in] pDst - The address of the destination buffer. + @Param[in] pSrc - The address of the source buffer. + @Param[in] size - The number of bytes that will be copied from pSrc to pDst. + + @Return pDst (the address of the destination buffer). + + @Cautions There is no parameter or boundary checking! It is up to the user + to supply non-null parameters as source & destination and size + that actually fits into the destination buffer. +*//***************************************************************************/ +void * MemCpy32(void* pDst,void* pSrc, uint32_t size); +void * IO2IOCpy32(void* pDst,void* pSrc, uint32_t size); +void * IO2MemCpy32(void* pDst,void* pSrc, uint32_t size); +void * Mem2IOCpy32(void* pDst,void* pSrc, uint32_t size); + +/**************************************************************************//** + @Function MemCpy64 + + @Description Copies one memory buffer into another one in 8-byte chunks! + Which should be more efficient than byte by byte. + + For large buffers (over 60 bytes) this function is about 8 times + more efficient than the trivial memory copy. For short buffers + it is reduced to the trivial copy and may be a bit worse. + + Some testing suggests that MemCpy32() preforms better than + MemCpy64() over small buffers. On average they break even at + 100 byte buffers. For buffers larger than that MemCpy64 is + superior. + + @Param[in] pDst - The address of the destination buffer. + @Param[in] pSrc - The address of the source buffer. + @Param[in] size - The number of bytes that will be copied from pSrc to pDst. + + @Return pDst (the address of the destination buffer). + + @Cautions There is no parameter or boundary checking! It is up to the user + to supply non null parameters as source & destination and size + that actually fits into their buffer. + + Do not use under Linux. +*//***************************************************************************/ +void * MemCpy64(void* pDst,void* pSrc, uint32_t size); + +/**************************************************************************//** + @Function MemSet32 + + @Description Sets all bytes of a memory buffer to a specific value, in + 4-byte chunks. + + @Param[in] pDst - The address of the destination buffer. + @Param[in] val - Value to set destination bytes to. + @Param[in] size - The number of bytes that will be set to val. + + @Return pDst (the address of the destination buffer). + + @Cautions There is no parameter or boundary checking! It is up to the user + to supply non null parameter as destination and size + that actually fits into the destination buffer. +*//***************************************************************************/ +void * MemSet32(void* pDst, uint8_t val, uint32_t size); +void * IOMemSet32(void* pDst, uint8_t val, uint32_t size); + +/**************************************************************************//** + @Function MemSet64 + + @Description Sets all bytes of a memory buffer to a specific value, in + 8-byte chunks. + + @Param[in] pDst - The address of the destination buffer. + @Param[in] val - Value to set destination bytes to. + @Param[in] size - The number of bytes that will be set to val. + + @Return pDst (the address of the destination buffer). + + @Cautions There is no parameter or boundary checking! It is up to the user + to supply non null parameter as destination and size + that actually fits into the destination buffer. +*//***************************************************************************/ +void * MemSet64(void* pDst, uint8_t val, uint32_t size); + +/**************************************************************************//** + @Function MemDisp + + @Description Displays a block of memory in chunks of 32 bits. + + @Param[in] addr - The address of the memory to display. + @Param[in] size - The number of bytes that will be displayed. + + @Return None. + + @Cautions There is no parameter or boundary checking! It is up to the user + to supply non null parameter as destination and size + that actually fits into the destination buffer. +*//***************************************************************************/ +void MemDisp(uint8_t *addr, int size); + +/** @} */ /* end of mem_cpy group */ +/** @} */ /* end of etc_id group */ + + +#endif /* __MEMCPY_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/etc/mm_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/etc/mm_ext.h @@ -0,0 +1,300 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + /**************************************************************************//** + + @File mm_ext.h + + @Description Memory Manager Application Programming Interface +*//***************************************************************************/ +#ifndef __MM_EXT +#define __MM_EXT + +#include "std_ext.h" + +#define MM_MAX_ALIGNMENT 20 /* Alignments from 2 to 128 are available + where maximum alignment defined as + MM_MAX_ALIGNMENT power of 2 */ + +#define MM_MAX_NAME_LEN 32 + +/**************************************************************************//** + @Group etc_id Utility Library Application Programming Interface + + @Description External routines. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group mm_grp Flexible Memory Manager + + @Description Flexible Memory Manager module functions,definitions and enums. + (All of the following functions,definitions and enums can be found in mm_ext.h) + + @{ +*//***************************************************************************/ + + +/**************************************************************************//** + @Function MM_Init + + @Description Initializes a new MM object. + + It initializes a new memory block consisting of base address + and size of the available memory by calling to MemBlock_Init + routine. It is also initializes a new free block for each + by calling FreeBlock_Init routine, which is pointed to + the almost all memory started from the required alignment + from the base address and to the end of the memory. + The handle to the new MM object is returned via "MM" + argument (passed by reference). + + @Param[in] h_MM - Handle to the MM object. + @Param[in] base - Base address of the MM. + @Param[in] size - Size of the MM. + + @Return E_OK is returned on success. E_NOMEMORY is returned if the new MM object or a new free block can not be initialized. +*//***************************************************************************/ +t_Error MM_Init(t_Handle *h_MM, uint64_t base, uint64_t size); + +/**************************************************************************//** + @Function MM_Get + + @Description Allocates a block of memory according to the given size and the alignment. + + The Alignment argument tells from which + free list allocate a block of memory. 2^alignment indicates + the alignment that the base address of the allocated block + should have. So, the only values 1, 2, 4, 8, 16, 32 and 64 + are available for the alignment argument. + The routine passes through the specific free list of free + blocks and seeks for a first block that have anough memory + that is required (best fit). + After the block is found and data is allocated, it calls + the internal MM_CutFree routine to update all free lists + do not include a just allocated block. Of course, each + free list contains a free blocks with the same alignment. + It is also creates a busy block that holds + information about an allocated block. + + @Param[in] h_MM - Handle to the MM object. + @Param[in] size - Size of the MM. + @Param[in] alignment - Index as a power of two defines a required + alignment (in bytes); Should be 1, 2, 4, 8, 16, 32 or 64 + @Param[in] name - The name that specifies an allocated block. + + @Return base address of an allocated block ILLEGAL_BASE if can't allocate a block +*//***************************************************************************/ +uint64_t MM_Get(t_Handle h_MM, uint64_t size, uint64_t alignment, char *name); + +/**************************************************************************//** + @Function MM_GetBase + + @Description Gets the base address of the required MM objects. + + @Param[in] h_MM - Handle to the MM object. + + @Return base address of the block. +*//***************************************************************************/ +uint64_t MM_GetBase(t_Handle h_MM); + +/**************************************************************************//** + @Function MM_GetForce + + @Description Force memory allocation. + + It means to allocate a block of memory of the given + size from the given base address. + The routine checks if the required block can be allocated + (that is it is free) and then, calls the internal MM_CutFree + routine to update all free lists do not include that block. + + @Param[in] h_MM - Handle to the MM object. + @Param[in] base - Base address of the MM. + @Param[in] size - Size of the MM. + @Param[in] name - Name that specifies an allocated block. + + @Return base address of an allocated block, ILLEGAL_BASE if can't allocate a block. +*//***************************************************************************/ +uint64_t MM_GetForce(t_Handle h_MM, uint64_t base, uint64_t size, char *name); + +/**************************************************************************//** + @Function MM_GetForceMin + + @Description Allocates a block of memory according to the given size, the alignment and minimum base address. + + The Alignment argument tells from which + free list allocate a block of memory. 2^alignment indicates + the alignment that the base address of the allocated block + should have. So, the only values 1, 2, 4, 8, 16, 32 and 64 + are available for the alignment argument. + The minimum baser address forces the location of the block + to be from a given address onward. + The routine passes through the specific free list of free + blocks and seeks for the first base address equal or smaller + than the required minimum address and end address larger than + than the required base + its size - i.e. that may contain + the required block. + After the block is found and data is allocated, it calls + the internal MM_CutFree routine to update all free lists + do not include a just allocated block. Of course, each + free list contains a free blocks with the same alignment. + It is also creates a busy block that holds + information about an allocated block. + + @Param[in] h_MM - Handle to the MM object. + @Param[in] size - Size of the MM. + @Param[in] alignment - Index as a power of two defines a required + alignment (in bytes); Should be 1, 2, 4, 8, 16, 32 or 64 + @Param[in] min - The minimum base address of the block. + @Param[in] name - Name that specifies an allocated block. + + @Return base address of an allocated block,ILLEGAL_BASE if can't allocate a block. +*//***************************************************************************/ +uint64_t MM_GetForceMin(t_Handle h_MM, + uint64_t size, + uint64_t alignment, + uint64_t min, + char *name); + +/**************************************************************************//** + @Function MM_Put + + @Description Puts a block of memory of the given base address back to the memory. + + It checks if there is a busy block with the + given base address. If not, it returns 0, that + means can't free a block. Otherwise, it gets parameters of + the busy block and after it updates lists of free blocks, + removes that busy block from the list by calling to MM_CutBusy + routine. + After that it calls to MM_AddFree routine to add a new free + block to the free lists. + + @Param[in] h_MM - Handle to the MM object. + @Param[in] base - Base address of the MM. + + @Return The size of bytes released, 0 if failed. +*//***************************************************************************/ +uint64_t MM_Put(t_Handle h_MM, uint64_t base); + +/**************************************************************************//** + @Function MM_PutForce + + @Description Releases a block of memory of the required size from the required base address. + + First, it calls to MM_CutBusy routine + to cut a free block from the busy list. And then, calls to + MM_AddFree routine to add the free block to the free lists. + + @Param[in] h_MM - Handle to the MM object. + @Param[in] base - Base address of of a block to free. + @Param[in] size - Size of a block to free. + + @Return The number of bytes released, 0 on failure. +*//***************************************************************************/ +uint64_t MM_PutForce(t_Handle h_MM, uint64_t base, uint64_t size); + +/**************************************************************************//** + @Function MM_Add + + @Description Adds a new memory block for memory allocation. + + When a new memory block is initialized and added to the + memory list, it calls to MM_AddFree routine to add the + new free block to the free lists. + + @Param[in] h_MM - Handle to the MM object. + @Param[in] base - Base address of the memory block. + @Param[in] size - Size of the memory block. + + @Return E_OK on success, otherwise returns an error code. +*//***************************************************************************/ +t_Error MM_Add(t_Handle h_MM, uint64_t base, uint64_t size); + +/**************************************************************************//** + @Function MM_Dump + + @Description Prints results of free and busy lists into the file. + + @Param[in] h_MM - Handle to the MM object. + @Param[in] buff - A pointer to a buffer +*//***************************************************************************/ +void MM_Dump(t_Handle h_MM, void *buff); + +/**************************************************************************//** + @Function MM_Free + + @Description Releases memory allocated for MM object. + + @Param[in] h_MM - Handle of the MM object. +*//***************************************************************************/ +void MM_Free(t_Handle h_MM); + +/**************************************************************************//** + @Function MM_GetMemBlock + + @Description Returns base address of the memory block specified by the index. + + If index is 0, returns base address + of the first memory block, 1 - returns base address + of the second memory block, etc. + Note, those memory blocks are allocated by the + application before MM_Init or MM_Add and have to + be released by the application before or after invoking + the MM_Free routine. + + @Param[in] h_MM - Handle to the MM object. + @Param[in] index - Index of the memory block. + + @Return valid base address or ILLEGAL_BASE if no memory block specified by the index. +*//***************************************************************************/ +uint64_t MM_GetMemBlock(t_Handle h_MM, int index); + +/**************************************************************************//** + @Function MM_InRange + + @Description Checks if a specific address is in the memory range of the passed MM object. + + @Param[in] h_MM - Handle to the MM object. + @Param[in] addr - The address to be checked. + + @Return TRUE if the address is in the address range of the block, FALSE otherwise. +*//***************************************************************************/ +bool MM_InRange(t_Handle h_MM, uint64_t addr); + + +/** @} */ /* end of mm_grp group */ +/** @} */ /* end of etc_id group */ + +#endif /* __MM_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/etc/sprint_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/etc/sprint_ext.h @@ -0,0 +1,125 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + + @File sprint_ext.h + + @Description Debug routines (externals). + +*//***************************************************************************/ + +#ifndef __SPRINT_EXT_H +#define __SPRINT_EXT_H + + +#if defined(NCSW_LINUX) && defined(__KERNEL__) +#include + +#elif defined(NCSW_LINUX_USD) +#include +#include "stdarg_ext.h" +#include "std_ext.h" + +extern int vsscanf(const char *, const char *, va_list); + +#elif defined(NCSW_VXWORKS) +#include "private/stdioP.h" + +#else +#include +#endif /* defined(NCSW_LINUX) && defined(__KERNEL__) */ + +#include "std_ext.h" + + +/**************************************************************************//** + @Group etc_id Utility Library Application Programming Interface + + @Description External routines. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group sprint_id Sprint + + @Description Sprint & Sscan module functions,definitions and enums. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Function Sprint + + @Description Format a string and place it in a buffer. + + @Param[in] buff - The buffer to place the result into. + @Param[in] str - The format string to use. + @Param[in] ... - Arguments for the format string. + + @Return Number of bytes formatted. +*//***************************************************************************/ +int Sprint(char *buff, const char *str, ...); + +/**************************************************************************//** + @Function Snprint + + @Description Format a string and place it in a buffer. + + @Param[in] buf - The buffer to place the result into. + @Param[in] size - The size of the buffer, including the trailing null space. + @Param[in] fmt - The format string to use. + @Param[in] ... - Arguments for the format string. + + @Return Number of bytes formatted. +*//***************************************************************************/ +int Snprint(char * buf, uint32_t size, const char *fmt, ...); + +/**************************************************************************//** + @Function Sscan + + @Description Unformat a buffer into a list of arguments. + + @Param[in] buf - input buffer. + @Param[in] fmt - formatting of buffer. + @Param[out] ... - resulting arguments. + + @Return Number of bytes unformatted. +*//***************************************************************************/ +int Sscan(const char * buf, const char * fmt, ...); + +/** @} */ /* end of sprint_id group */ +/** @} */ /* end of etc_id group */ + + +#endif /* __SPRINT_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/integrations/P1023/dpaa_integration_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/integrations/P1023/dpaa_integration_ext.h @@ -0,0 +1,328 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + + @File dpaa_integration_ext.h + + @Description P1023 FM external definitions and structures. +*//***************************************************************************/ +#ifndef __DPAA_INTEGRATION_EXT_H +#define __DPAA_INTEGRATION_EXT_H + +#include "std_ext.h" + + +typedef enum e_DpaaSwPortal { + e_DPAA_SWPORTAL0 = 0, + e_DPAA_SWPORTAL1, + e_DPAA_SWPORTAL2 +} e_DpaaSwPortal; + +typedef enum { + e_DPAA_DCPORTAL0 = 0, + e_DPAA_DCPORTAL1, + e_DPAA_DCPORTAL2, + e_DPAA_DCPORTAL3 +} e_DpaaDcPortal; + +#define DPAA_MAX_NUM_OF_SW_PORTALS 3 +#define DPAA_MAX_NUM_OF_DC_PORTALS 3 + +/***************************************************************************** + QMAN INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +#define QM_MAX_NUM_OF_POOL_CHANNELS 3 +#define QM_MAX_NUM_OF_WQ 8 +#define QM_MAX_NUM_OF_SWP_AS 2 +#define QM_MAX_NUM_OF_CGS 64 +#define QM_MAX_NUM_OF_FQIDS (16*MEGABYTE) + +typedef enum { + e_QM_FQ_CHANNEL_SWPORTAL0 = 0, + e_QM_FQ_CHANNEL_SWPORTAL1, + e_QM_FQ_CHANNEL_SWPORTAL2, + + e_QM_FQ_CHANNEL_POOL1 = 0x21, + e_QM_FQ_CHANNEL_POOL2, + e_QM_FQ_CHANNEL_POOL3, + + e_QM_FQ_CHANNEL_FMAN0_SP0 = 0x40, + e_QM_FQ_CHANNEL_FMAN0_SP1, + e_QM_FQ_CHANNEL_FMAN0_SP2, + e_QM_FQ_CHANNEL_FMAN0_SP3, + e_QM_FQ_CHANNEL_FMAN0_SP4, + e_QM_FQ_CHANNEL_FMAN0_SP5, + e_QM_FQ_CHANNEL_FMAN0_SP6, + + + e_QM_FQ_CHANNEL_CAAM = 0x80 +} e_QmFQChannel; + +/***************************************************************************** + BMAN INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +#define BM_MAX_NUM_OF_POOLS 8 + +/***************************************************************************** + FM INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +#define INTG_MAX_NUM_OF_FM 1 + +/* Ports defines */ +#define FM_MAX_NUM_OF_1G_RX_PORTS 2 +#define FM_MAX_NUM_OF_10G_RX_PORTS 0 +#define FM_MAX_NUM_OF_RX_PORTS (FM_MAX_NUM_OF_10G_RX_PORTS+FM_MAX_NUM_OF_1G_RX_PORTS) +#define FM_MAX_NUM_OF_1G_TX_PORTS 2 +#define FM_MAX_NUM_OF_10G_TX_PORTS 0 +#define FM_MAX_NUM_OF_TX_PORTS (FM_MAX_NUM_OF_10G_TX_PORTS+FM_MAX_NUM_OF_1G_TX_PORTS) +#define FM_MAX_NUM_OF_OH_PORTS 5 +#define FM_MAX_NUM_OF_1G_MACS (FM_MAX_NUM_OF_1G_RX_PORTS) +#define FM_MAX_NUM_OF_10G_MACS (FM_MAX_NUM_OF_10G_RX_PORTS) +#define FM_MAX_NUM_OF_MACS (FM_MAX_NUM_OF_1G_MACS+FM_MAX_NUM_OF_10G_MACS) +#define FM_MAX_NUM_OF_MACSECS 1 + +#if 0 +#define FM_MACSEC_SUPPORT +#define FM_CAPWAP_SUPPORT +#endif + +#define FM_LOW_END_RESTRICTION /* prevents the use of TX port 1 with OP port 0 */ + +#define FM_PORT_MAX_NUM_OF_EXT_POOLS 4 /**< Number of external BM pools per Rx port */ +#define FM_PORT_MAX_NUM_OF_OBSERVED_EXT_POOLS 2 /**< Number of Offline parsing port external BM pools per Rx port */ +#define FM_PORT_NUM_OF_CONGESTION_GRPS 32 /**< Total number of congestion groups in QM */ +#define FM_MAX_NUM_OF_SUB_PORTALS 7 + +/* Rams defines */ +#define FM_MURAM_SIZE (64*KILOBYTE) +#define FM_IRAM_SIZE (32*KILOBYTE) + +/* PCD defines */ +#define FM_PCD_PLCR_NUM_ENTRIES 32 /**< Total number of policer profiles */ +#define FM_PCD_KG_NUM_OF_SCHEMES 16 /**< Total number of KG schemes */ +#define FM_PCD_MAX_NUM_OF_CLS_PLANS 128 /**< Number of classification plan entries. */ + +/* RTC defines */ +#define FM_RTC_NUM_OF_ALARMS 2 +#define FM_RTC_NUM_OF_PERIODIC_PULSES 2 +#define FM_RTC_NUM_OF_EXT_TRIGGERS 2 + +/* QMI defines */ +#define QMI_MAX_NUM_OF_TNUMS 15 +#define MAX_QMI_DEQ_SUBPORTAL 7 + +/* FPM defines */ +#define FM_NUM_OF_FMAN_CTRL_EVENT_REGS 4 + +/* DMA defines */ +#define DMA_THRESH_MAX_COMMQ 15 +#define DMA_THRESH_MAX_BUF 7 + +/* BMI defines */ +#define BMI_MAX_NUM_OF_TASKS 64 +#define BMI_MAX_NUM_OF_DMAS 16 +#define BMI_MAX_FIFO_SIZE (FM_MURAM_SIZE) +#define PORT_MAX_WEIGHT 4 + +/**************************************************************************//** + @Description Enum for inter-module interrupts registration +*//***************************************************************************/ +typedef enum e_FmEventModules{ + e_FM_MOD_PRS, /**< Parser event */ + e_FM_MOD_KG, /**< Keygen event */ + e_FM_MOD_PLCR, /**< Policer event */ + e_FM_MOD_10G_MAC, /**< 10G MAC error event */ + e_FM_MOD_1G_MAC, /**< 1G MAC error event */ + e_FM_MOD_TMR, /**< Timer event */ + e_FM_MOD_1G_MAC_TMR, /**< 1G MAC Timer event */ + e_FM_MOD_FMAN_CTRL, /**< FMAN Controller Timer event */ + e_FM_MOD_MACSEC, + e_FM_MOD_DUMMY_LAST +} e_FmEventModules; + +/**************************************************************************//** + @Description Enum for interrupts types +*//***************************************************************************/ +typedef enum e_FmIntrType { + e_FM_INTR_TYPE_ERR, + e_FM_INTR_TYPE_NORMAL +} e_FmIntrType; + +/**************************************************************************//** + @Description Enum for inter-module interrupts registration +*//***************************************************************************/ +typedef enum e_FmInterModuleEvent { + e_FM_EV_PRS, /**< Parser event */ + e_FM_EV_ERR_PRS, /**< Parser error event */ + e_FM_EV_KG, /**< Keygen event */ + e_FM_EV_ERR_KG, /**< Keygen error event */ + e_FM_EV_PLCR, /**< Policer event */ + e_FM_EV_ERR_PLCR, /**< Policer error event */ + e_FM_EV_ERR_10G_MAC0, /**< 10G MAC 0 error event */ + e_FM_EV_ERR_1G_MAC0, /**< 1G MAC 0 error event */ + e_FM_EV_ERR_1G_MAC1, /**< 1G MAC 1 error event */ + e_FM_EV_ERR_1G_MAC2, /**< 1G MAC 2 error event */ + e_FM_EV_ERR_1G_MAC3, /**< 1G MAC 3 error event */ + e_FM_EV_ERR_MACSEC_MAC0, /**< MACSEC MAC 0 error event */ + e_FM_EV_TMR, /**< Timer event */ + e_FM_EV_1G_MAC0_TMR, /**< 1G MAC 0 Timer event */ + e_FM_EV_1G_MAC1_TMR, /**< 1G MAC 1 Timer event */ + e_FM_EV_1G_MAC2_TMR, /**< 1G MAC 2 Timer event */ + e_FM_EV_1G_MAC3_TMR, /**< 1G MAC 3 Timer event */ + e_FM_EV_MACSEC_MAC0, /**< MACSEC MAC 0 event */ + e_FM_EV_FMAN_CTRL_0, /**< Fman controller event 0 */ + e_FM_EV_FMAN_CTRL_1, /**< Fman controller event 1 */ + e_FM_EV_FMAN_CTRL_2, /**< Fman controller event 2 */ + e_FM_EV_FMAN_CTRL_3, /**< Fman controller event 3 */ + e_FM_EV_DUMMY_LAST +} e_FmInterModuleEvent; + +#define GET_FM_MODULE_EVENT(mod, id, intrType, event) \ + switch(mod){ \ + case e_FM_MOD_PRS: \ + if (id) event = e_FM_EV_DUMMY_LAST; \ + else event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_PRS:e_FM_EV_PRS; \ + break; \ + case e_FM_MOD_KG: \ + if (id) event = e_FM_EV_DUMMY_LAST; \ + else event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_KG:e_FM_EV_DUMMY_LAST; \ + break; \ + case e_FM_MOD_PLCR: \ + if (id) event = e_FM_EV_DUMMY_LAST; \ + else event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_PLCR:e_FM_EV_PLCR; \ + break; \ + case e_FM_MOD_1G_MAC: \ + switch(id){ \ + case(0): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_1G_MAC0:e_FM_EV_DUMMY_LAST; break; \ + case(1): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_1G_MAC1:e_FM_EV_DUMMY_LAST; break; \ + case(2): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_1G_MAC2:e_FM_EV_DUMMY_LAST; break; \ + case(3): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_1G_MAC3:e_FM_EV_DUMMY_LAST; break; \ + } \ + break; \ + case e_FM_MOD_TMR: \ + if (id) event = e_FM_EV_DUMMY_LAST; \ + else event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_DUMMY_LAST:e_FM_EV_TMR; \ + break; \ + case e_FM_MOD_1G_MAC_TMR: \ + switch(id){ \ + case(0): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_DUMMY_LAST:e_FM_EV_1G_MAC0_TMR; break; \ + case(1): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_DUMMY_LAST:e_FM_EV_1G_MAC1_TMR; break; \ + case(2): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_DUMMY_LAST:e_FM_EV_1G_MAC2_TMR; break; \ + case(3): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_DUMMY_LAST:e_FM_EV_1G_MAC3_TMR; break; \ + } \ + break; \ + case e_FM_MOD_MACSEC: \ + switch(id){ \ + case(0): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_MACSEC_MAC0:e_FM_EV_MACSEC_MAC0; break; \ + } \ + break; \ + case e_FM_MOD_FMAN_CTRL: \ + if (intrType == e_FM_INTR_TYPE_ERR) event = e_FM_EV_DUMMY_LAST; \ + else switch(id){ \ + case(0): event = e_FM_EV_FMAN_CTRL_0; break; \ + case(1): event = e_FM_EV_FMAN_CTRL_1; break; \ + case(2): event = e_FM_EV_FMAN_CTRL_2; break; \ + case(3): event = e_FM_EV_FMAN_CTRL_3; break; \ + } \ + break; \ + default:event = e_FM_EV_DUMMY_LAST; \ + break;} + +/***************************************************************************** + FM MACSEC INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +#define NUM_OF_RX_SC 16 +#define NUM_OF_TX_SC 16 + +#define NUM_OF_SA_PER_RX_SC 2 +#define NUM_OF_SA_PER_TX_SC 2 + +/**************************************************************************//** + @Description Enum for inter-module interrupts registration +*//***************************************************************************/ + +typedef enum e_FmMacsecEventModules{ + e_FM_MACSEC_MOD_SC_TX, + e_FM_MACSEC_MOD_DUMMY_LAST +} e_FmMacsecEventModules; + +typedef enum e_FmMacsecInterModuleEvent { + e_FM_MACSEC_EV_SC_TX, + e_FM_MACSEC_EV_ERR_SC_TX, + e_FM_MACSEC_EV_DUMMY_LAST +} e_FmMacsecInterModuleEvent; + +#define NUM_OF_INTER_MODULE_EVENTS (NUM_OF_TX_SC * 2) + +#define GET_MACSEC_MODULE_EVENT(mod, id, intrType, event) \ + switch(mod){ \ + case e_FM_MACSEC_MOD_SC_TX: \ + event = (intrType == e_FM_INTR_TYPE_ERR) ? \ + e_FM_MACSEC_EV_ERR_SC_TX: \ + e_FM_MACSEC_EV_SC_TX; \ + event += (uint8_t)(2 * id);break; \ + break; \ + default:event = e_FM_MACSEC_EV_DUMMY_LAST; \ + break;} + + +/* 1023 unique features */ +#define FM_QMI_NO_ECC_EXCEPTIONS +#define FM_CSI_CFED_LIMIT +#define FM_PEDANTIC_DMA + +/* FM erratas */ +#define FM_NO_RX_PREAM_ERRATA_DTSECx1 +#define FM_RX_PREAM_4_ERRATA_DTSEC_A001 FM_NO_RX_PREAM_ERRATA_DTSECx1 +#define FM_MAGIC_PACKET_UNRECOGNIZED_ERRATA_DTSEC2 /* No implementation, Out of LLD scope */ + +#define FM_IM_TX_SYNC_SKIP_TNUM_ERRATA_FMAN_A001 /* Implemented by ucode */ +#define FM_HC_DEF_FQID_ONLY_ERRATA_FMAN_A003 /* Implemented by ucode */ +#define FM_IM_TX_SHARED_TNUM_ERRATA_FMAN4 /* Implemented by ucode */ +#define FM_IM_GS_DEADLOCK_ERRATA_FMAN5 /* Implemented by ucode */ +#define FM_IM_DEQ_PIPELINE_DEPTH_ERRATA_FMAN10 /* Implemented by ucode */ +#define FM_CC_GEN6_MISSMATCH_ERRATA_FMAN12 /* Implemented by ucode */ +#define FM_CC_CHANGE_SHARED_TNUM_ERRATA_FMAN13 /* Implemented by ucode */ +#define FM_IM_LARGE_MRBLR_ERRATA_FMAN15 /* Implemented by ucode */ + +/* #define FM_UCODE_NOT_RESET_ERRATA_BUGZILLA6173 */ + +/* ??? */ +#define FM_GRS_ERRATA_DTSEC_A002 +#define FM_BAD_TX_TS_IN_B_2_B_ERRATA_DTSEC_A003 +#define FM_GTS_ERRATA_DTSEC_A004 +#define FM_TX_LOCKUP_ERRATA_DTSEC6 + +#define FM_LOCKUP_ALIGNMENT_ERRATA_FMAN_SW004 + +#endif /* __FM_INTEGRATION_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/integrations/P1023/part_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/integrations/P1023/part_ext.h @@ -0,0 +1,81 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + + @File part_ext.h + + @Description Definitions for the part (integration) module. +*//***************************************************************************/ + +#ifndef __PART_EXT_H +#define __PART_EXT_H + +#include "std_ext.h" +#include "part_integration_ext.h" + + +#if !(defined(MPC8306) || \ + defined(MPC8309) || \ + defined(MPC834x) || \ + defined(MPC836x) || \ + defined(MPC832x) || \ + defined(MPC837x) || \ + defined(MPC8568) || \ + defined(MPC8569) || \ + defined(P1020) || \ + defined(P1021) || \ + defined(P1022) || \ + defined(P1023) || \ + defined(P2020) || \ + defined(P3041) || \ + defined(P4080) || \ + defined(P5020) || \ + defined(MSC814x)) +#error "unable to proceed without chip-definition" +#endif + + +/**************************************************************************//* + @Description Part data structure - must be contained in any integration + data structure. +*//***************************************************************************/ +typedef struct t_Part +{ + uint64_t (* f_GetModuleBase)(t_Handle h_Part, e_ModuleId moduleId); + /**< Returns the address of the module's memory map base. */ + e_ModuleId (* f_GetModuleIdByBase)(t_Handle h_Part, uint64_t baseAddress); + /**< Returns the module's ID according to its memory map base. */ +} t_Part; + + +#endif /* __PART_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/integrations/P1023/part_integration_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/integrations/P1023/part_integration_ext.h @@ -0,0 +1,659 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + + @File part_integration_ext.h + + @Description P1023 external definitions and structures. +*//***************************************************************************/ +#ifndef __PART_INTEGRATION_EXT_H +#define __PART_INTEGRATION_EXT_H + +#include "std_ext.h" +#ifndef NCSW_LINUX +#include "ddr_std_ext.h" +#endif +#include "dpaa_integration_ext.h" + + +/**************************************************************************//** + @Group 1023_chip_id P1023 Application Programming Interface + + @Description P1023 Chip functions,definitions and enums. + + @{ +*//***************************************************************************/ + +#define INTG_MAX_NUM_OF_CORES 1 + + +/**************************************************************************//** + @Description Module types. +*//***************************************************************************/ +typedef enum e_ModuleId +{ + e_MODULE_ID_LAW, /**< Local Access module */ + e_MODULE_ID_ECM, /**< e500 Coherency Module */ + e_MODULE_ID_DDR, /**< DDR memory controller */ + e_MODULE_ID_I2C_1, /**< I2C 1 */ + e_MODULE_ID_I2C_2, /**< I2C 1 */ + e_MODULE_ID_DUART_1, /**< DUART module 1 */ + e_MODULE_ID_DUART_2, /**< DUART module 2 */ + e_MODULE_ID_LBC, /**< Local bus memory controller module */ + e_MODULE_ID_PCIE_1, /**< PCI Express 1 controller module */ + e_MODULE_ID_PCIE_ATMU_1, /**< PCI 1 ATMU Window */ + e_MODULE_ID_PCIE_2, /**< PCI Express 2 controller module */ + e_MODULE_ID_PCIE_ATMU_2, /**< PCI 2 ATMU Window */ + e_MODULE_ID_PCIE_3, /**< PCI Express 3 controller module */ + e_MODULE_ID_PCIE_ATMU_3, /**< PCI 3 ATMU Window */ + e_MODULE_ID_MSI, /**< MSI registers */ + e_MODULE_ID_L2_SRAM, /**< L2/SRAM Memory-Mapped controller module */ + e_MODULE_ID_DMA_1, /**< DMA controller 1 */ + e_MODULE_ID_DMA_2, /**< DMA controller 2 */ + e_MODULE_ID_EPIC, /**< Programmable interrupt controller */ + e_MODULE_ID_ESPI, /**< ESPI module */ + e_MODULE_ID_GPIO, /**< General Purpose I/O */ + e_MODULE_ID_SEC_GEN, /**< SEC 4.0 General registers */ + e_MODULE_ID_SEC_QI, /**< SEC 4.0 QI registers */ + e_MODULE_ID_SEC_JQ0, /**< SEC 4.0 JQ-0 registers */ + e_MODULE_ID_SEC_JQ1, /**< SEC 4.0 JQ-1 registers */ + e_MODULE_ID_SEC_JQ2, /**< SEC 4.0 JQ-2 registers */ + e_MODULE_ID_SEC_JQ3, /**< SEC 4.0 JQ-3 registers */ + e_MODULE_ID_SEC_RTIC, /**< SEC 4.0 RTIC registers */ + e_MODULE_ID_SEC_DECO0_CCB0, /**< SEC 4.0 DECO-0/CCB-0 registers */ + e_MODULE_ID_SEC_DECO1_CCB1, /**< SEC 4.0 DECO-1/CCB-1 registers */ + e_MODULE_ID_SEC_DECO2_CCB2, /**< SEC 4.0 DECO-2/CCB-2 registers */ + e_MODULE_ID_SEC_DECO3_CCB3, /**< SEC 4.0 DECO-3/CCB-3 registers */ + e_MODULE_ID_SEC_DECO4_CCB4, /**< SEC 4.0 DECO-4/CCB-4 registers */ + e_MODULE_ID_USB_DR_1, /**< USB 2.0 module 1 */ + e_MODULE_ID_USB_DR_2, /**< USB 2.0 module 2 */ + e_MODULE_ID_ETSEC_MII_MNG, /**< MII MNG registers */ + e_MODULE_ID_ETSEC_1, /**< ETSEC module 1 */ + e_MODULE_ID_ETSEC_2, /**< ETSEC module 2 */ + e_MODULE_ID_GUTS, /**< Serial DMA */ + e_MODULE_ID_PM, /**< Performance Monitor module */ + e_MODULE_ID_QM, /**< Queue manager module */ + e_MODULE_ID_BM, /**< Buffer manager module */ + e_MODULE_ID_QM_CE_PORTAL, + e_MODULE_ID_QM_CI_PORTAL, + e_MODULE_ID_BM_CE_PORTAL, + e_MODULE_ID_BM_CI_PORTAL, + e_MODULE_ID_FM, /**< Frame manager #1 module */ + e_MODULE_ID_FM_RTC, /**< FM Real-Time-Clock */ + e_MODULE_ID_FM_MURAM, /**< FM Multi-User-RAM */ + e_MODULE_ID_FM_BMI, /**< FM BMI block */ + e_MODULE_ID_FM_QMI, /**< FM QMI block */ + e_MODULE_ID_FM_PRS, /**< FM parser block */ + e_MODULE_ID_FM_PORT_HO0, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM_PORT_HO1, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM_PORT_HO2, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM_PORT_HO3, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM_PORT_HO4, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM_PORT_1GRx0, /**< FM Rx 1G MAC port block */ + e_MODULE_ID_FM_PORT_1GRx1, /**< FM Rx 1G MAC port block */ + e_MODULE_ID_FM_PORT_1GTx0, /**< FM Tx 1G MAC port block */ + e_MODULE_ID_FM_PORT_1GTx1, /**< FM Tx 1G MAC port block */ + e_MODULE_ID_FM_PLCR, /**< FM Policer */ + e_MODULE_ID_FM_KG, /**< FM Keygen */ + e_MODULE_ID_FM_DMA, /**< FM DMA */ + e_MODULE_ID_FM_FPM, /**< FM FPM */ + e_MODULE_ID_FM_IRAM, /**< FM Instruction-RAM */ + e_MODULE_ID_FM_1GMDIO0, /**< FM 1G MDIO MAC 0*/ + e_MODULE_ID_FM_1GMDIO1, /**< FM 1G MDIO MAC 1*/ + e_MODULE_ID_FM_PRS_IRAM, /**< FM SW-parser Instruction-RAM */ + e_MODULE_ID_FM_RISC0, /**< FM risc #0 */ + e_MODULE_ID_FM_RISC1, /**< FM risc #1 */ + e_MODULE_ID_FM_1GMAC0, /**< FM 1G MAC #0 */ + e_MODULE_ID_FM_1GMAC1, /**< FM 1G MAC #1 */ + e_MODULE_ID_FM_MACSEC, /**< FM MACSEC */ + + e_MODULE_ID_DUMMY_LAST +} e_ModuleId; + +#define NUM_OF_MODULES e_MODULE_ID_DUMMY_LAST + + +#define P1023_OFFSET_LAW 0x00000C08 +#define P1023_OFFSET_ECM 0x00001000 +#define P1023_OFFSET_DDR 0x00002000 +#define P1023_OFFSET_I2C1 0x00003000 +#define P1023_OFFSET_I2C2 0x00003100 +#define P1023_OFFSET_DUART1 0x00004500 +#define P1023_OFFSET_DUART2 0x00004600 +#define P1023_OFFSET_LBC 0x00005000 +#define P1023_OFFSET_ESPI 0x00007000 +#define P1023_OFFSET_PCIE2 0x00009000 +#define P1023_OFFSET_PCIE2_ATMU 0x00009C00 +#define P1023_OFFSET_PCIE1 0x0000A000 +#define P1023_OFFSET_PCIE1_ATMU 0x0000AC00 +#define P1023_OFFSET_PCIE3 0x0000B000 +#define P1023_OFFSET_PCIE3_ATMU 0x0000BC00 +#define P1023_OFFSET_DMA2 0x0000C100 +#define P1023_OFFSET_GPIO 0x0000F000 +#define P1023_OFFSET_L2_SRAM 0x00020000 +#define P1023_OFFSET_DMA1 0x00021100 +#define P1023_OFFSET_USB1 0x00022000 +#define P1023_OFFSET_SEC_GEN 0x00030000 +#define P1023_OFFSET_SEC_JQ0 0x00031000 +#define P1023_OFFSET_SEC_JQ1 0x00032000 +#define P1023_OFFSET_SEC_JQ2 0x00033000 +#define P1023_OFFSET_SEC_JQ3 0x00034000 +#define P1023_OFFSET_SEC_RTIC 0x00036000 +#define P1023_OFFSET_SEC_QI 0x00037000 +#define P1023_OFFSET_SEC_DECO0_CCB0 0x00038000 +#define P1023_OFFSET_SEC_DECO1_CCB1 0x00039000 +#define P1023_OFFSET_SEC_DECO2_CCB2 0x0003a000 +#define P1023_OFFSET_SEC_DECO3_CCB3 0x0003b000 +#define P1023_OFFSET_SEC_DECO4_CCB4 0x0003c000 +#define P1023_OFFSET_PIC 0x00040000 +#define P1023_OFFSET_MSI 0x00041600 +#define P1023_OFFSET_AXI 0x00081000 +#define P1023_OFFSET_QM 0x00088000 +#define P1023_OFFSET_BM 0x0008A000 +#define P1022_OFFSET_PM 0x000E1000 + +#define P1023_OFFSET_GUTIL 0x000E0000 +#define P1023_OFFSET_PM 0x000E1000 +#define P1023_OFFSET_DEBUG 0x000E2000 +#define P1023_OFFSET_SERDES 0x000E3000 +#define P1023_OFFSET_ROM 0x000F0000 +#define P1023_OFFSET_FM 0x00100000 + +#define P1023_OFFSET_FM_MURAM (P1023_OFFSET_FM + 0x00000000) +#define P1023_OFFSET_FM_BMI (P1023_OFFSET_FM + 0x00080000) +#define P1023_OFFSET_FM_QMI (P1023_OFFSET_FM + 0x00080400) +#define P1023_OFFSET_FM_PRS (P1023_OFFSET_FM + 0x00080800) +#define P1023_OFFSET_FM_PORT_HO0 (P1023_OFFSET_FM + 0x00081000) +#define P1023_OFFSET_FM_PORT_HO1 (P1023_OFFSET_FM + 0x00082000) +#define P1023_OFFSET_FM_PORT_HO2 (P1023_OFFSET_FM + 0x00083000) +#define P1023_OFFSET_FM_PORT_HO3 (P1023_OFFSET_FM + 0x00084000) +#define P1023_OFFSET_FM_PORT_HO4 (P1023_OFFSET_FM + 0x00085000) +#define P1023_OFFSET_FM_PORT_1GRX0 (P1023_OFFSET_FM + 0x00088000) +#define P1023_OFFSET_FM_PORT_1GRX1 (P1023_OFFSET_FM + 0x00089000) +#define P1023_OFFSET_FM_PORT_1GTX0 (P1023_OFFSET_FM + 0x000A8000) +#define P1023_OFFSET_FM_PORT_1GTX1 (P1023_OFFSET_FM + 0x000A9000) +#define P1023_OFFSET_FM_PLCR (P1023_OFFSET_FM + 0x000C0000) +#define P1023_OFFSET_FM_KG (P1023_OFFSET_FM + 0x000C1000) +#define P1023_OFFSET_FM_DMA (P1023_OFFSET_FM + 0x000C2000) +#define P1023_OFFSET_FM_FPM (P1023_OFFSET_FM + 0x000C3000) +#define P1023_OFFSET_FM_IRAM (P1023_OFFSET_FM + 0x000C4000) +#define P1023_OFFSET_FM_PRS_IRAM (P1023_OFFSET_FM + 0x000C7000) +#define P1023_OFFSET_FM_RISC0 (P1023_OFFSET_FM + 0x000D0000) +#define P1023_OFFSET_FM_RISC1 (P1023_OFFSET_FM + 0x000D0400) +#define P1023_OFFSET_FM_MACSEC (P1023_OFFSET_FM + 0x000D8000) +#define P1023_OFFSET_FM_1GMAC0 (P1023_OFFSET_FM + 0x000E0000) +#define P1023_OFFSET_FM_1GMDIO0 (P1023_OFFSET_FM + 0x000E1120) +#define P1023_OFFSET_FM_1GMAC1 (P1023_OFFSET_FM + 0x000E2000) +#define P1023_OFFSET_FM_1GMDIO1 (P1023_OFFSET_FM + 0x000E3000) +#define P1023_OFFSET_FM_RTC (P1023_OFFSET_FM + 0x000FE000) + +/* Offsets relative to QM or BM portals base */ +#define P1023_OFFSET_PORTALS_CE_AREA 0x00000000 /* cache enabled area */ +#define P1023_OFFSET_PORTALS_CI_AREA 0x00100000 /* cache inhibited area */ + +#define P1023_OFFSET_PORTALS_CE(portal) (P1023_OFFSET_PORTALS_CE_AREA + 0x4000 * (portal)) +#define P1023_OFFSET_PORTALS_CI(portal) (P1023_OFFSET_PORTALS_CI_AREA + 0x1000 * (portal)) + +/**************************************************************************//** + @Description Transaction source ID (for memory controllers error reporting). +*//***************************************************************************/ +typedef enum e_TransSrc +{ + e_TRANS_SRC_PCIE_2 = 0x01, /**< PCIe port 2 */ + e_TRANS_SRC_PCIE_1 = 0x02, /**< PCIe port 1 */ + e_TRANS_SRC_PCIE_3 = 0x03, /**< PCIe port 3 */ + e_TRANS_SRC_LBC = 0x04, /**< Enhanced local bus */ + e_TRANS_SRC_DPAA_SW_PORTALS = 0x0E, /**< DPAA software portals or SRAM */ + e_TRANS_SRC_DDR = 0x0F, /**< DDR controller */ + e_TRANS_SRC_CORE_INS_FETCH = 0x10, /**< Processor (instruction) */ + e_TRANS_SRC_CORE_DATA = 0x11, /**< Processor (data) */ + e_TRANS_SRC_DMA = 0x15 /**< DMA */ +} e_TransSrc; + +/**************************************************************************//** + @Description Local Access Window Target interface ID +*//***************************************************************************/ +typedef enum e_P1023LawTargetId +{ + e_P1023_LAW_TARGET_PCIE_2 = 0x01, /**< PCI Express 2 target interface */ + e_P1023_LAW_TARGET_PCIE_1 = 0x02, /**< PCI Express 1 target interface */ + e_P1023_LAW_TARGET_PCIE_3 = 0x03, /**< PCI Express 3 target interface */ + e_P1023_LAW_TARGET_LBC = 0x04, /**< Local bus target interface */ + e_P1023_LAW_TARGET_QM_PORTALS = 0x0E, /**< Queue Manager Portals */ + e_P1023_LAW_TARGET_BM_PORTALS = 0x0E, /**< Buffer Manager Portals */ + e_P1023_LAW_TARGET_SRAM = 0x0E, /**< SRAM scratchpad */ + e_P1023_LAW_TARGET_DDR = 0x0F, /**< DDR target interface */ + e_P1023_LAW_TARGET_NONE = 0xFF /**< Invalid target interface */ +} e_P1023LawTargetId; + + +/**************************************************************************//** + @Group 1023_init_grp P1023 Initialization Unit + + @Description P1023 initialization unit API functions, definitions and enums + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Description Part ID and revision number +*//***************************************************************************/ +typedef enum e_P1023DeviceName +{ + e_P1023_REV_INVALID = 0x00000000, /**< Invalid revision */ + e_SC1023_REV_1_0 = (int)0x80FC0010, /**< SC1023 rev 1.0 */ + e_SC1023_REV_1_1 = (int)0x80FC0011, /**< SC1023 rev 1.1 */ + e_P1023_REV_1_0 = (int)0x80FE0010, /**< P1023 rev 1.0 with security */ + e_P1023_REV_1_1 = (int)0x80FE0011, /**< P1023 rev 1.1 with security */ + e_P1023_REV_1_0_NO_SEC = (int)0x80F60010, /**< P1023 rev 1.0 without security */ + e_P1023_REV_1_1_NO_SEC = (int)0x80F60011 /**< P1023 rev 1.1 without security */ +} e_P1023DeviceName; + +/**************************************************************************//** + @Description structure representing P1023 initialization parameters +*//***************************************************************************/ +typedef struct t_P1023Params +{ + uintptr_t ccsrBaseAddress; /**< CCSR base address (virtual) */ + uintptr_t bmPortalsBaseAddress; /**< Portals base address (virtual) */ + uintptr_t qmPortalsBaseAddress; /**< Portals base address (virtual) */ +} t_P1023Params; + +/**************************************************************************//** + @Function P1023_ConfigAndInit + + @Description General initiation of the chip registers. + + @Param[in] p_P1023Params - A pointer to data structure of parameters + + @Return A handle to the P1023 data structure. +*//***************************************************************************/ +t_Handle P1023_ConfigAndInit(t_P1023Params *p_P1023Params); + +/**************************************************************************//** + @Function P1023_Free + + @Description Free all resources. + + @Param h_P1023 - (In) The handle of the initialized P1023 object. + + @Return E_OK on success; Other value otherwise. +*//***************************************************************************/ +t_Error P1023_Free(t_Handle h_P1023); + +/**************************************************************************//** + @Function P1023_GetRevInfo + + @Description This routine enables access to chip and revision information. + + @Param[in] gutilBase - Base address of P1023 GUTIL registers. + + @Return Part ID and revision. +*//***************************************************************************/ +e_P1023DeviceName P1023_GetRevInfo(uintptr_t gutilBase); + +/**************************************************************************//** + @Function P1023_GetE500Factor + + @Description Returns E500 core clock multiplication factor. + + @Param[in] gutilBase - Base address of P1023 GUTIL registers. + @Param[in] coreId - Id of the requested core. + @Param[out] p_E500MulFactor - Returns E500 to CCB multification factor. + @Param[out] p_E500DivFactor - Returns E500 to CCB division factor. + + @Return E_OK on success; Other value otherwise. +* +*//***************************************************************************/ +t_Error P1023_GetE500Factor(uintptr_t gutilBase, + uint32_t coreId, + uint32_t *p_E500MulFactor, + uint32_t *p_E500DivFactor); + +/**************************************************************************//** + @Function P1023_GetFmFactor + + @Description returns FM multiplication factors. (This value is returned using + two parameters to avoid using float parameter). + + @Param[in] gutilBase - Base address of P1023 GUTIL registers. + @Param[out] p_FmMulFactor - returns E500 to CCB multification factor. + @Param[out] p_FmDivFactor - returns E500 to CCB division factor. + + @Return E_OK on success; Other value otherwise. +*//***************************************************************************/ +t_Error P1023_GetFmFactor(uintptr_t gutilBase, uint32_t *p_FmMulFactor, uint32_t *p_FmDivFactor); + +/**************************************************************************//** + @Function P1023_GetCcbFactor + + @Description returns system multiplication factor. + + @Param[in] gutilBase - Base address of P1023 GUTIL registers. + + @Return System multiplication factor. +*//***************************************************************************/ +uint32_t P1023_GetCcbFactor(uintptr_t gutilBase); + +/**************************************************************************//** + @Function P1023_GetDdrFactor + + @Description returns the multiplication factor of the clock in for the DDR clock . + Note: assumes the ddr_in_clk is identical to the sys_in_clk + + @Param[in] gutilBase - Base address of P1023 GUTIL registers. + @Param p_DdrMulFactor - returns DDR in clk multification factor. + @Param p_DdrDivFactor - returns DDR division factor. + + @Return E_OK on success; Other value otherwise.. +*//***************************************************************************/ +t_Error P1023_GetDdrFactor( uintptr_t gutilBase, + uint32_t *p_DdrMulFactor, + uint32_t *p_DdrDivFactor); + + +/**************************************************************************//** + @Function P1023_GetDdrType + + @Description returns the multiplication factor of the clock in for the DDR clock . + + @Param[in] gutilBase - Base address of P1023 GUTIL registers. + @Param p_DdrType - (Out) returns DDR type DDR1/DDR2/DDR3. + + @Return E_OK on success; Other value otherwise. +*//***************************************************************************/ +#ifndef NCSW_LINUX +t_Error P1023_GetDdrType(uintptr_t gutilBase, e_DdrType *p_DdrType ); +#endif + + +/** @} */ /* end of 1023_init_grp group */ +/** @} */ /* end of 1023_grp group */ + +#define CORE_E500V2 + +/***************************************************************************** + INTEGRATION-SPECIFIC MODULE CODES +******************************************************************************/ +#define MODULE_UNKNOWN 0x00000000 +#define MODULE_MEM 0x00010000 +#define MODULE_MM 0x00020000 +#define MODULE_CORE 0x00030000 +#define MODULE_P1023 0x00040000 +#define MODULE_MII 0x00050000 +#define MODULE_PM 0x00060000 +#define MODULE_MMU 0x00070000 +#define MODULE_PIC 0x00080000 +#define MODULE_L2_CACHE 0x00090000 +#define MODULE_DUART 0x000a0000 +#define MODULE_SERDES 0x000b0000 +#define MODULE_PIO 0x000c0000 +#define MODULE_QM 0x000d0000 +#define MODULE_BM 0x000e0000 +#define MODULE_SEC 0x000f0000 +#define MODULE_FM 0x00100000 +#define MODULE_FM_MURAM 0x00110000 +#define MODULE_FM_PCD 0x00120000 +#define MODULE_FM_RTC 0x00130000 +#define MODULE_FM_MAC 0x00140000 +#define MODULE_FM_PORT 0x00150000 +#define MODULE_FM_MACSEC 0x00160000 +#define MODULE_FM_MACSEC_SECY 0x00170000 +#define MODULE_ECM 0x00180000 +#define MODULE_DMA 0x00190000 +#define MODULE_DDR 0x001a0000 +#define MODULE_LAW 0x001b0000 +#define MODULE_LBC 0x001c0000 +#define MODULE_I2C 0x001d0000 +#define MODULE_ESPI 0x001e0000 +#define MODULE_PCI 0x001f0000 +#define MODULE_DPA 0x00200000 +#define MODULE_USB 0x00210000 + +/***************************************************************************** + LBC INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +/**************************************************************************//** + @Group lbc_exception_grp LBC Exception Unit + + @Description LBC Exception unit API functions, definitions and enums + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Anchor lbc_exbm + + @Collection LBC Errors Bit Mask + + These errors are reported through the exceptions callback.. + The values can be or'ed in any combination in the errors mask + parameter of the errors report structure. + + These errors can also be passed as a bit-mask to + LBC_EnableErrorChecking() or LBC_DisableErrorChecking(), + for enabling or disabling error checking. + @{ +*//***************************************************************************/ +#define LBC_ERR_BUS_MONITOR 0x80000000 /**< Bus monitor error */ +#define LBC_ERR_PARITY_ECC 0x20000000 /**< Parity error for GPCM/UPM */ +#define LBC_ERR_WRITE_PROTECT 0x04000000 /**< Write protection error */ +#define LBC_ERR_CHIP_SELECT 0x00080000 /**< Unrecognized chip select */ + +#define LBC_ERR_ALL (LBC_ERR_BUS_MONITOR | LBC_ERR_PARITY_ECC | \ + LBC_ERR_WRITE_PROTECT | LBC_ERR_CHIP_SELECT) + /**< All possible errors */ +/* @} */ +/** @} */ /* end of lbc_exception_grp group */ + +#define LBC_NUM_OF_BANKS 2 +#define LBC_MAX_CS_SIZE 0x0000000100000000LL +#define LBC_ATOMIC_OPERATION_SUPPORT +#define LBC_PARITY_SUPPORT +#define LBC_ADDRESS_SHIFT_SUPPORT +#define LBC_ADDRESS_HOLD_TIME_CTRL +#define LBC_HIGH_CLK_DIVIDERS +#define LBC_FCM_AVAILABLE + + +/***************************************************************************** + LAW INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +#define LAW_ARCH_CCB +#define LAW_NUM_OF_WINDOWS 12 +#define LAW_MIN_WINDOW_SIZE 0x0000000000001000LL /**< 4KB */ +#define LAW_MAX_WINDOW_SIZE 0x0000001000000000LL /**< 32GB */ + + +/***************************************************************************** + SPI INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +#define SPI_NUM_OF_CONTROLLERS 1 + +/***************************************************************************** + PCI/PCIe INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ + +#define PCI_MAX_INBOUND_WINDOWS_NUM 4 +#define PCI_MAX_OUTBOUND_WINDOWS_NUM 5 + +/**************************************************************************//** + @Description Target interface of an inbound window +*//***************************************************************************/ +typedef enum e_PciTargetInterface +{ + e_PCI_TARGET_PCIE_2 = 0x1, /**< PCI Express target interface 2 */ + e_PCI_TARGET_PCIE_1 = 0x2, /**< PCI Express target interface 1 */ + e_PCI_TARGET_PCIE_3 = 0x3, /**< PCI Express target interface 3 */ + e_PCI_TARGET_LOCAL_MEMORY = 0xF /**< Local Memory (DDR SDRAM, Local Bus, SRAM) target interface */ + +} e_PciTargetInterface; + +/***************************************************************************** + DDR INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +#define DDR_NUM_OF_VALID_CS 2 + +/***************************************************************************** + SEC INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +#define SEC_ERRATA_STAT_REGS_UNUSABLE + +/***************************************************************************** + DMA INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +#define DMA_NUM_OF_CONTROLLERS 1 + + + + +/***************************************************************************** + 1588 INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +#define PTP_V2 + +/**************************************************************************//** + @Function P1023_GetMuxControlReg + + @Description Returns the value of PMUXCR (Alternate Function Signal Multiplex + Control Register) + + @Param[in] gutilBase - Base address of P1023 GUTIL registers. + + @Return Value of PMUXCR +*//***************************************************************************/ +uint32_t P1023_GetMuxControlReg(uintptr_t gutilBase); + +/**************************************************************************//** + @Function P1023_SetMuxControlReg + + @Description Sets the value of PMUXCR (Alternate Function Signal Multiplex + Control Register) + + @Param[in] gutilBase - Base address of P1023 GUTIL registers. + @Param[in] val - the new value for PMUXCR. + + @Return None +*//***************************************************************************/ +void P1023_SetMuxControlReg(uintptr_t gutilBase, uint32_t val); + +/**************************************************************************//** + @Function P1023_GetPowerMngClkDisableReg + + @Description Returns the value of PMCDR (Power Management Clock Disable Register) + + @Param[in] gutilBase - Base address of P1023 GUTIL registers. + + @Return Value of PMCDR +*//***************************************************************************/ +uint32_t P1023_GetPowerMngClkDisableReg(uintptr_t gutilBase); + +/**************************************************************************//** + @Function P1023_SetPowerMngClkDisableReg + + @Description Sets the value of PMCDR ((Power Management Clock Disable Register)) + + @Param[in] gutilBase - Base address of P1023 GUTIL registers. + @Param[in] val - the new value for PMCDR. + + @Return None +*//***************************************************************************/ +void P1023_SetPowerMngClkDisableReg(uintptr_t gutilBase, uint32_t val); + +/**************************************************************************//** + @Function P1023_GetDeviceDisableStatusRegister + + @Description Returns the value of DEVDISR (Device Disable Register) + + @Param[in] gutilBase - Base address of P1023 GUTIL registers. + + @Return Value of DEVDISR +*//***************************************************************************/ +uint32_t P1023_GetDeviceDisableStatusRegister(uintptr_t gutilBase); + +/**************************************************************************//** + @Function P1023_GetPorDeviceStatusRegister + + @Description Returns the value of POR Device Status Register + + @Param[in] gutilBase - Base address of P1023 GUTIL registers. + + @Return POR Device Status Register +*//***************************************************************************/ +uint32_t P1023_GetPorDeviceStatusRegister(uintptr_t gutilBase); + +/**************************************************************************//** + @Function P1023_GetPorBootModeStatusRegister + + @Description Returns the value of POR Boot Mode Status Register + + @Param[in] gutilBase - Base address of P1023 GUTIL registers. + + @Return POR Boot Mode Status Register value +*//***************************************************************************/ +uint32_t P1023_GetPorBootModeStatusRegister(uintptr_t gutilBase); + + +#define PORDEVSR_SGMII1_DIS 0x10000000 +#define PORDEVSR_SGMII2_DIS 0x08000000 +#define PORDEVSR_ECP1 0x02000000 +#define PORDEVSR_IO_SEL 0x00780000 +#define PORDEVSR_IO_SEL_SHIFT 19 +#define PORBMSR_HA 0x00070000 +#define PORBMSR_HA_SHIFT 16 + +#define DEVDISR_QM_BM 0x80000000 +#define DEVDISR_FM 0x40000000 +#define DEVDISR_PCIE1 0x20000000 +#define DEVDISR_MAC_SEC 0x10000000 +#define DEVDISR_ELBC 0x08000000 +#define DEVDISR_PCIE2 0x04000000 +#define DEVDISR_PCIE3 0x02000000 +#define DEVDISR_CAAM 0x01000000 +#define DEVDISR_USB0 0x00800000 +#define DEVDISR_1588 0x00020000 +#define DEVDISR_CORE0 0x00008000 +#define DEVDISR_TB0 0x00004000 +#define DEVDISR_CORE1 0x00002000 +#define DEVDISR_TB1 0x00001000 +#define DEVDISR_DMA1 0x00000400 +#define DEVDISR_DMA2 0x00000200 +#define DEVDISR_DDR 0x00000010 +#define DEVDISR_TSEC1 0x00000080 +#define DEVDISR_TSEC2 0x00000040 +#define DEVDISR_SPI 0x00000008 +#define DEVDISR_I2C 0x00000004 +#define DEVDISR_DUART 0x00000002 + + +#endif /* __PART_INTEGRATION_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/integrations/P3040_P4080_P5020/dpaa_integration_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/integrations/P3040_P4080_P5020/dpaa_integration_ext.h @@ -0,0 +1,452 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + + @File dpaa_integration_ext.h + + @Description P4080 FM external definitions and structures. +*//***************************************************************************/ +#ifndef __DPAA_INTEGRATION_EXT_H +#define __DPAA_INTEGRATION_EXT_H + +#include "std_ext.h" + + +typedef enum { + e_DPAA_SWPORTAL0 = 0, + e_DPAA_SWPORTAL1, + e_DPAA_SWPORTAL2, + e_DPAA_SWPORTAL3, + e_DPAA_SWPORTAL4, + e_DPAA_SWPORTAL5, + e_DPAA_SWPORTAL6, + e_DPAA_SWPORTAL7, + e_DPAA_SWPORTAL8, + e_DPAA_SWPORTAL9, + e_DPAA_SWPORTAL_DUMMY_LAST +} e_DpaaSwPortal; + +typedef enum { + e_DPAA_DCPORTAL0 = 0, + e_DPAA_DCPORTAL1, + e_DPAA_DCPORTAL2, + e_DPAA_DCPORTAL3, + e_DPAA_DCPORTAL4, + e_DPAA_DCPORTAL_DUMMY_LAST +} e_DpaaDcPortal; + +#define DPAA_MAX_NUM_OF_SW_PORTALS e_DPAA_SWPORTAL_DUMMY_LAST +#define DPAA_MAX_NUM_OF_DC_PORTALS e_DPAA_DCPORTAL_DUMMY_LAST + +/***************************************************************************** + QMan INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +#define QMAN_PM_DCP_COUNTERS_ERRATA_QMAN1 +#define QMAN_FQD_AVOID_BLK_ERRATA_QMAN2 +#define QMAN_DBG_TRC_EV_ERRATA_QMAN3 +#define QMAN_WQ_CS_CFG_ERRATA_QMAN4 +#define QMAN_SFDR_LEAK_ERRATA_QMAN5 +#define QMAN_FQ_TD_THRESH_ERRATA_QMAN6 +#define QMAN_FQ_INIT_ON_PARKED_ERRATA_QMAN7 +#define QMAN_NESN_ORR_ERRATA_QMAN8 +#define QMAN_ERN_REJ_CODE6_ERRATA_QMAN9 +#define QMAN_ERN_MOULTI_CORE_ERRATA_QMAN10 +#define QMAN_PERFMON_FOR_DCP_FQD_ERRATA_QMAN11 + +#define QM_MAX_NUM_OF_POOL_CHANNELS 15 +#define QM_MAX_NUM_OF_WQ 8 +#define QM_MAX_NUM_OF_SWP_AS 4 +#define QM_MAX_NUM_OF_CGS 256 +#define QM_MAX_NUM_OF_FQIDS (16*MEGABYTE) + +/**************************************************************************//** + @Description Work Queue Channel assignments in QMan. +*//***************************************************************************/ +typedef enum +{ + e_QM_FQ_CHANNEL_SWPORTAL0 = 0, /**< Dedicated channels serviced by software portals 0 to 9 */ + e_QM_FQ_CHANNEL_SWPORTAL1, + e_QM_FQ_CHANNEL_SWPORTAL2, + e_QM_FQ_CHANNEL_SWPORTAL3, + e_QM_FQ_CHANNEL_SWPORTAL4, + e_QM_FQ_CHANNEL_SWPORTAL5, + e_QM_FQ_CHANNEL_SWPORTAL6, + e_QM_FQ_CHANNEL_SWPORTAL7, + e_QM_FQ_CHANNEL_SWPORTAL8, + e_QM_FQ_CHANNEL_SWPORTAL9, + + e_QM_FQ_CHANNEL_POOL1 = 0x21, /**< Pool channels that can be serviced by any of the software portals */ + e_QM_FQ_CHANNEL_POOL2, + e_QM_FQ_CHANNEL_POOL3, + e_QM_FQ_CHANNEL_POOL4, + e_QM_FQ_CHANNEL_POOL5, + e_QM_FQ_CHANNEL_POOL6, + e_QM_FQ_CHANNEL_POOL7, + e_QM_FQ_CHANNEL_POOL8, + e_QM_FQ_CHANNEL_POOL9, + e_QM_FQ_CHANNEL_POOL10, + e_QM_FQ_CHANNEL_POOL11, + e_QM_FQ_CHANNEL_POOL12, + e_QM_FQ_CHANNEL_POOL13, + e_QM_FQ_CHANNEL_POOL14, + e_QM_FQ_CHANNEL_POOL15, + + e_QM_FQ_CHANNEL_FMAN0_SP0 = 0x40, /**< Dedicated channels serviced by Direct Connect Portal 0: + connected to FMan 0; assigned in incrementing order to + each sub-portal (SP) in the portal */ + e_QM_FQ_CHANNEL_FMAN0_SP1, + e_QM_FQ_CHANNEL_FMAN0_SP2, + e_QM_FQ_CHANNEL_FMAN0_SP3, + e_QM_FQ_CHANNEL_FMAN0_SP4, + e_QM_FQ_CHANNEL_FMAN0_SP5, + e_QM_FQ_CHANNEL_FMAN0_SP6, + e_QM_FQ_CHANNEL_FMAN0_SP7, + e_QM_FQ_CHANNEL_FMAN0_SP8, + e_QM_FQ_CHANNEL_FMAN0_SP9, + e_QM_FQ_CHANNEL_FMAN0_SP10, + e_QM_FQ_CHANNEL_FMAN0_SP11, + + e_QM_FQ_CHANNEL_FMAN1_SP0 = 0x60, + e_QM_FQ_CHANNEL_FMAN1_SP1, + e_QM_FQ_CHANNEL_FMAN1_SP2, + e_QM_FQ_CHANNEL_FMAN1_SP3, + e_QM_FQ_CHANNEL_FMAN1_SP4, + e_QM_FQ_CHANNEL_FMAN1_SP5, + e_QM_FQ_CHANNEL_FMAN1_SP6, + e_QM_FQ_CHANNEL_FMAN1_SP7, + e_QM_FQ_CHANNEL_FMAN1_SP8, + e_QM_FQ_CHANNEL_FMAN1_SP9, + e_QM_FQ_CHANNEL_FMAN1_SP10, + e_QM_FQ_CHANNEL_FMAN1_SP11, + + e_QM_FQ_CHANNEL_CAAM = 0x80, /**< Dedicated channel serviced by Direct Connect Portal 2: + connected to SEC 4.x */ + + e_QM_FQ_CHANNEL_PME = 0xA0, /**< Dedicated channel serviced by Direct Connect Portal 3: + connected to PME */ +} e_QmFQChannel; + +/* p4080-rev1 unique features */ +#define QM_CGS_NO_FRAME_MODE + +/***************************************************************************** + BMan INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +#define BM_MAX_NUM_OF_POOLS 64 + +/***************************************************************************** + SEC INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +/* SEC erratas */ +#ifdef UNDER_CONSTRUCTION_IPSEC +#define SEC_IPV6_UDP_CHECKSUM_UPDATE +#define SEC_UDP_LENGTH_UPDATE +#endif /* UNDER_CONSTRUCTION_IPSEC */ + +/***************************************************************************** + FM INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +#define INTG_MAX_NUM_OF_FM 2 + +/* Ports defines */ +#define FM_MAX_NUM_OF_1G_RX_PORTS 5 +#define FM_MAX_NUM_OF_10G_RX_PORTS 1 +#define FM_MAX_NUM_OF_RX_PORTS (FM_MAX_NUM_OF_10G_RX_PORTS+FM_MAX_NUM_OF_1G_RX_PORTS) +#define FM_MAX_NUM_OF_1G_TX_PORTS 5 +#define FM_MAX_NUM_OF_10G_TX_PORTS 1 +#define FM_MAX_NUM_OF_TX_PORTS (FM_MAX_NUM_OF_10G_TX_PORTS+FM_MAX_NUM_OF_1G_TX_PORTS) +#define FM_MAX_NUM_OF_OH_PORTS 7 +#define FM_MAX_NUM_OF_1G_MACS (FM_MAX_NUM_OF_1G_RX_PORTS) +#define FM_MAX_NUM_OF_10G_MACS (FM_MAX_NUM_OF_10G_RX_PORTS) +#define FM_MAX_NUM_OF_MACS (FM_MAX_NUM_OF_1G_MACS+FM_MAX_NUM_OF_10G_MACS) + + +#define FM_PORT_MAX_NUM_OF_EXT_POOLS 8 /**< Number of external BM pools per Rx port */ +#define FM_PORT_NUM_OF_CONGESTION_GRPS 256 /**< Total number of congestion groups in QM */ +#define FM_MAX_NUM_OF_SUB_PORTALS 12 +#define FM_PORT_MAX_NUM_OF_OBSERVED_EXT_POOLS 0 + +/* RAMs defines */ +#define FM_MURAM_SIZE (160 * KILOBYTE) +#define FM_IRAM_SIZE ( 64 * KILOBYTE) + +/* PCD defines */ +#define FM_PCD_PLCR_NUM_ENTRIES 256 /**< Total number of policer profiles */ +#define FM_PCD_KG_NUM_OF_SCHEMES 32 /**< Total number of KG schemes */ +#define FM_PCD_MAX_NUM_OF_CLS_PLANS 256 /**< Number of classification plan entries. */ + +/* RTC defines */ +#define FM_RTC_NUM_OF_ALARMS 2 /**< RTC number of alarms */ +#define FM_RTC_NUM_OF_PERIODIC_PULSES 2 /**< RTC number of periodic pulses */ +#define FM_RTC_NUM_OF_EXT_TRIGGERS 2 /**< RTC number of external triggers */ + +/* QMI defines */ +#define QMI_MAX_NUM_OF_TNUMS 64 +#define MAX_QMI_DEQ_SUBPORTAL 12 +#define QMI_DEF_TNUMS_THRESH 48 + +/* FPM defines */ +#define FM_NUM_OF_FMAN_CTRL_EVENT_REGS 4 + +/* DMA defines */ +#define DMA_THRESH_MAX_COMMQ 31 +#define DMA_THRESH_MAX_BUF 127 + +/* BMI defines */ +#define BMI_MAX_NUM_OF_TASKS 128 +#define BMI_MAX_NUM_OF_DMAS 32 +#define BMI_MAX_FIFO_SIZE (FM_MURAM_SIZE) +#define PORT_MAX_WEIGHT 16 + +#ifdef UNDER_CONSTRUCTION_FRAG_REASSEMBLY +/* Reassembly defines */ +#define FM_MAX_NUM_OF_REASSEMBLY_PORTS 4 +#endif /* UNDER_CONSTRUCTION_FRAG_REASSEMBLY */ + + +/**************************************************************************//** + @Description Enum for inter-module interrupts registration +*//***************************************************************************/ +typedef enum e_FmEventModules{ + e_FM_MOD_PRS, /**< Parser event */ + e_FM_MOD_KG, /**< Keygen event */ + e_FM_MOD_PLCR, /**< Policer event */ + e_FM_MOD_10G_MAC, /**< 10G MAC error event */ + e_FM_MOD_1G_MAC, /**< 1G MAC error event */ + e_FM_MOD_TMR, /**< Timer event */ + e_FM_MOD_1G_MAC_TMR, /**< 1G MAC timer event */ + e_FM_MOD_FMAN_CTRL, /**< FMAN Controller timer event */ + e_FM_MOD_DUMMY_LAST +} e_FmEventModules; + +/**************************************************************************//** + @Description Enum for interrupts types +*//***************************************************************************/ +typedef enum e_FmIntrType { + e_FM_INTR_TYPE_ERR, + e_FM_INTR_TYPE_NORMAL +} e_FmIntrType; + +/**************************************************************************//** + @Description Enum for inter-module interrupts registration +*//***************************************************************************/ +typedef enum e_FmInterModuleEvent { + e_FM_EV_PRS, /**< Parser event */ + e_FM_EV_ERR_PRS, /**< Parser error event */ + e_FM_EV_KG, /**< Keygen event */ + e_FM_EV_ERR_KG, /**< Keygen error event */ + e_FM_EV_PLCR, /**< Policer event */ + e_FM_EV_ERR_PLCR, /**< Policer error event */ + e_FM_EV_ERR_10G_MAC0, /**< 10G MAC 0 error event */ + e_FM_EV_ERR_1G_MAC0, /**< 1G MAC 0 error event */ + e_FM_EV_ERR_1G_MAC1, /**< 1G MAC 1 error event */ + e_FM_EV_ERR_1G_MAC2, /**< 1G MAC 2 error event */ + e_FM_EV_ERR_1G_MAC3, /**< 1G MAC 3 error event */ + e_FM_EV_ERR_1G_MAC4, /**< 1G MAC 4 error event */ + e_FM_EV_TMR, /**< Timer event */ + e_FM_EV_1G_MAC1, /**< 1G MAC 1 event */ + e_FM_EV_1G_MAC2, /**< 1G MAC 2 event */ + e_FM_EV_1G_MAC3, /**< 1G MAC 3 event */ + e_FM_EV_1G_MAC4, /**< 1G MAC 3 event */ + e_FM_EV_1G_MAC0_TMR, /**< 1G MAC 0 Timer event */ + e_FM_EV_1G_MAC1_TMR, /**< 1G MAC 1 Timer event */ + e_FM_EV_1G_MAC2_TMR, /**< 1G MAC 2 Timer event */ + e_FM_EV_1G_MAC3_TMR, /**< 1G MAC 3 Timer event */ + e_FM_EV_1G_MAC4_TMR, /**< 1G MAC 4 Timer event */ + e_FM_EV_FMAN_CTRL_0, /**< Fman controller event 0 */ + e_FM_EV_FMAN_CTRL_1, /**< Fman controller event 1 */ + e_FM_EV_FMAN_CTRL_2, /**< Fman controller event 2 */ + e_FM_EV_FMAN_CTRL_3, /**< Fman controller event 3 */ + e_FM_EV_DUMMY_LAST +} e_FmInterModuleEvent; + +#define GET_FM_MODULE_EVENT(mod, id, intrType, event) \ + switch(mod){ \ + case e_FM_MOD_PRS: \ + if (id) event = e_FM_EV_DUMMY_LAST; \ + else event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_PRS : e_FM_EV_PRS; \ + break; \ + case e_FM_MOD_KG: \ + if (id) event = e_FM_EV_DUMMY_LAST; \ + else event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_KG : e_FM_EV_DUMMY_LAST; \ + break; \ + case e_FM_MOD_PLCR: \ + if (id) event = e_FM_EV_DUMMY_LAST; \ + else event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_PLCR : e_FM_EV_PLCR; \ + break; \ + case e_FM_MOD_10G_MAC: \ + if (id) event = e_FM_EV_DUMMY_LAST; \ + else event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_10G_MAC0 : e_FM_EV_DUMMY_LAST;\ + break; \ + case e_FM_MOD_1G_MAC: \ + switch(id){ \ + case(0): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_1G_MAC0 : e_FM_EV_DUMMY_LAST; break; \ + case(1): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_1G_MAC1 : e_FM_EV_DUMMY_LAST; break; \ + case(2): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_1G_MAC2 : e_FM_EV_DUMMY_LAST; break; \ + case(3): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_1G_MAC3 : e_FM_EV_DUMMY_LAST; break; \ + case(4): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_ERR_1G_MAC4 : e_FM_EV_DUMMY_LAST; break; \ + } \ + break; \ + case e_FM_MOD_TMR: \ + if (id) event = e_FM_EV_DUMMY_LAST; \ + else event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_DUMMY_LAST : e_FM_EV_TMR; \ + break; \ + case e_FM_MOD_1G_MAC_TMR: \ + switch(id){ \ + case(0): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_DUMMY_LAST : e_FM_EV_1G_MAC0_TMR; break;\ + case(1): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_DUMMY_LAST : e_FM_EV_1G_MAC1_TMR; break;\ + case(2): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_DUMMY_LAST : e_FM_EV_1G_MAC2_TMR; break;\ + case(3): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_DUMMY_LAST : e_FM_EV_1G_MAC3_TMR; break;\ + case(4): event = (intrType == e_FM_INTR_TYPE_ERR) ? e_FM_EV_DUMMY_LAST : e_FM_EV_1G_MAC4_TMR; break;\ + } \ + break; \ + case e_FM_MOD_FMAN_CTRL: \ + if (intrType == e_FM_INTR_TYPE_ERR) event = e_FM_EV_DUMMY_LAST; \ + else switch(id){ \ + case(0): event = e_FM_EV_FMAN_CTRL_0; break; \ + case(1): event = e_FM_EV_FMAN_CTRL_1; break; \ + case(2): event = e_FM_EV_FMAN_CTRL_2; break; \ + case(3): event = e_FM_EV_FMAN_CTRL_3; break; \ + } \ + break; \ + default: event = e_FM_EV_DUMMY_LAST; \ + break;} + +#define FM_CHECK_PORT_RESTRICTIONS(__validPorts, __newPortIndx) TRUE + +/* p4080-rev1 unique features */ +#define FM_PARTITION_ARRAY +#define FM_PPPOE_NO_MTU_CHECK + +/* p4080 unique features */ +#ifdef UNDER_CONSTRUCTION_IPSEC +#define FM_ETH_TYPE_FIX +#define FM_DISABLE_SEC_ERRORS +#endif /* UNDER_CONSTRUCTION_IPSEC */ +#define FM_QMI_DEQ_OPTIONS_SUPPORT +#define FM_NO_DISPATCH_RAM_ECC +#define FM_FIFO_ALLOCATION_OLD_ALG +#define FM_NO_WATCHDOG +#define FM_NO_TNUM_AGING +#define FM_NO_TGEC_LOOPBACK +#define FM_KG_NO_BYPASS_FQID_GEN +#define FM_KG_NO_BYPASS_PLCR_PROFILE_GEN +#define FM_NO_BACKUP_POOLS +#define FM_NO_OP_OBSERVED_POOLS +#define FM_NO_ADVANCED_RATE_LIMITER +#define FM_NO_OP_OBSERVED_CGS + +/* FM erratas */ +#define FM_SINGLE_MDIO_ERRATA_GEN8 /* implemented in platform */ +#define FM_HALT_SIG_ERRATA_GEN12 + +#define FM_10G_MDIO_HOLD_ERRATA_XAUI3 /* implemented in platform */ +#define FM_10G_PCS_ALIGNMENT_ERRATA_XAUI4 /* implemented in platform */ + +#define FM_IEEE_BAD_TS_ERRATA_IEEE1588_A001 /* No implementation, Out of LLD scope */ + +#define FM_FALSE_RDRP_ERRATA_10GMAC_A001 /* No implementation, Out of LLD scope */ +#define FM_RX_EXTRA_BYTES_ERRATA_10GMAC_A002 /* No implementation, Out of LLD scope */ +#define FM_TX_PAUSE_ON_ENABLE_ERRATA_10GMAC_A003 /* No implementation, Out of LLD scope */ +#define FM_TX_ECC_FRMS_ERRATA_10GMAC_A004 +#define FM_TX_SHORT_FRAME_BAD_TS_ERRATA_10GMAC_A006 /* No implementation, Out of LLD scope */ +#define FM_TX_FIFO_CORRUPTION_ERRATA_10GMAC_A007 +#define FM_ECC_HALT_NO_SYNC_ERRATA_10GMAC_A008 + +#define FM_TX_INVALID_ECC_ERRATA_10GMAC_A009 + +#define FM_NO_RX_PREAM_ERRATA_DTSECx1 +#define FM_RX_PREAM_4_ERRATA_DTSEC_A001 FM_NO_RX_PREAM_ERRATA_DTSECx1 +#define FM_GRS_ERRATA_DTSEC_A002 +#define FM_BAD_TX_TS_IN_B_2_B_ERRATA_DTSEC_A003 +#define FM_GTS_ERRATA_DTSEC_A004 +#define FM_PAUSE_BLOCK_ERRATA_DTSEC_A006 /* do nothing */ +#define FM_RESERVED_ACCESS_TO_DISABLED_DEV_ERRATA_DTSEC_A0011 /* do nothing */ +#define FM_GTS_AFTER_MAC_ABORTED_FRAME_ERRATA_DTSEC_A0012 FM_GTS_ERRATA_DTSEC_A004 + +#define FM_SHORT_PAUSE_TIME_ERRATA_DTSEC1 +#define FM_MAGIC_PACKET_UNRECOGNIZED_ERRATA_DTSEC2 /* No implementation, Out of LLD scope */ +#define FM_10_100_SGMII_NO_TS_ERRATA_DTSEC3 +#define FM_TX_LOCKUP_ERRATA_DTSEC6 + +#define FM_IM_TX_SYNC_SKIP_TNUM_ERRATA_FMAN_A001 /* Implemented by ucode */ +#define FM_RX_PIPELINE_OF_DATA_CORRUPTION_ERRATA_FMAN_A002 /* No implementation, Out of LLD scope */ +#define FM_HC_DEF_FQID_ONLY_ERRATA_FMAN_A003 /* Implemented by ucode */ + +#define FM_1588_SRC_CLK_ERRATA_FMAN1 +#define FM_NO_RUNNING_SUM_FOR_DBG_N_SWPRS_ERRATA_FMAN2 /* No implementation, Out of LLD scope */ +#define FM_IM_TX_SHARED_TNUM_ERRATA_FMAN4 /* Implemented by ucode */ +#define FM_IM_GS_DEADLOCK_ERRATA_FMAN5 /* Implemented by ucode */ +#define FM_PORT_SYNC_ERRATA_FMAN6 +#define FM_RAM_LIST_ERR_IRQ_ERRATA_FMAN8 +#define FM_BMI_PIPELINE_ERR_IRQ_ERRATA_FMAN9 +#define FM_IM_DEQ_PIPELINE_DEPTH_ERRATA_FMAN10 /* Implemented by ucode */ +#define FM_CC_GEN6_MISSMATCH_ERRATA_FMAN12 /* Implemented by ucode */ +#define FM_CC_CHANGE_SHARED_TNUM_ERRATA_FMAN13 /* Implemented by ucode */ +#define FM_IM_LARGE_MRBLR_ERRATA_FMAN15 /* Implemented by ucode */ +#define FM_RESET_ERRATA_FMAN16 /* No implementation, Out of LLD scope */ +#define FM_IPV4_HDRLEN0_ERRATA_FMAN17 /* No implementation, Out of LLD scope */ +#define FM_INCORRECT_CS_ERRATA_FMAN18 +#define FM_ILLEGAL_FRM_LEN_ERRATA_FMAN20 /* No implementation, Out of LLD scope */ +#define FM_OP_PORT_QMAN_REJECT_ERRATA_FMAN21 + +#define FM_PRS_L4_SHELL_ERRATA_FMANb +#define FM_BMI_TO_RISC_ENQ_ERRATA_FMANc +#define FM_INVALID_SWPRS_DATA_ERRATA_FMANd /* No implementation, Out of LLD scope */ +//#define FM_PRS_L4_NO_CLEAR_ERRATA_FMANe /* No implementation, No patch yet */ +//#define FM_PRS_MPLS_ERROR_ERRATA_FMANf /* No implementation, No patch yet */ +#define FM_PORT_COUNTERS_ERRATA_FMANg +#define FM_BAD_RX_FD_ERRATA_FMANh /* No implementation, Out of LLD scope */ +//#define FM_PRS_MPLS_SSA_ERRATA_FMANj /* No implementation, No patch yet */ +//#define FM_PRS_INITIAL_PLANID_ERRATA_FMANk /* No implementation, No patch yet */ + + +#define FM_OP_PARTITION_ERRATA_FMANx8 +#define FM_PORT_DISABLED_ERRATA_FMANx9 +#define FM_TX_PORT_IM_OR_ERRATA_FMANx11 /* Implemented by ucode */ +#define FM_PORT_EXCESSIVE_BUDGET_ERRATA_FMANx16 +#define FM_PORT_OTF_CHANGES_ERRATA_FMANx12 FM_PORT_EXCESSIVE_BUDGET_ERRATA_FMANx16 +#define FM_SOFT_RESET_ERRATA_FMANx15 /* No implementation, Out of LLD scope */ + +#define FM_UCODE_NOT_RESET_ERRATA_BUGZILLA6173 + +#define FM_PRS_MEM_ERRATA_FMAN_SW003 +#define FM_LEN_CHECK_ERRATA_FMAN_SW002 +#define FM_10G_REM_N_LCL_FLT_EX_ERRATA_10GMAC001 + +#ifdef UNDER_CONSTRUCTION_IPSEC +#define FM_NO_COPY_CTXA_CTXB_ERRATA_FMAN_SW001 +#endif /* UNDER_CONSTRUCTION_IPSEC */ + + +#endif /* __DPAA_INTEGRATION_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/integrations/P3040_P4080_P5020/part_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/integrations/P3040_P4080_P5020/part_ext.h @@ -0,0 +1,83 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + + @File part_ext.h + + @Description Definitions for the part (integration) module. +*//***************************************************************************/ + +#ifndef __PART_EXT_H +#define __PART_EXT_H + +#include "std_ext.h" +#include "part_integration_ext.h" + + +#if !(defined(MPC8306) || \ + defined(MPC8309) || \ + defined(MPC834x) || \ + defined(MPC836x) || \ + defined(MPC832x) || \ + defined(MPC837x) || \ + defined(MPC8568) || \ + defined(MPC8569) || \ + defined(P1020) || \ + defined(P1021) || \ + defined(P1022) || \ + defined(P1023) || \ + defined(P2020) || \ + defined(P2040) || \ + defined(P3041) || \ + defined(P4080) || \ + defined(SC4080) || \ + defined(P5020) || \ + defined(MSC814x)) +#error "unable to proceed without chip-definition" +#endif /* !(defined(MPC834x) || ... */ + + +/**************************************************************************//* + @Description Part data structure - must be contained in any integration + data structure. +*//***************************************************************************/ +typedef struct t_Part +{ + uintptr_t (* f_GetModuleBase)(t_Handle h_Part, e_ModuleId moduleId); + /**< Returns the address of the module's memory map base. */ + e_ModuleId (* f_GetModuleIdByBase)(t_Handle h_Part, uintptr_t baseAddress); + /**< Returns the module's ID according to its memory map base. */ +} t_Part; + + +#endif /* __PART_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/integrations/P3040_P4080_P5020/part_integration_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/integrations/P3040_P4080_P5020/part_integration_ext.h @@ -0,0 +1,331 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + + @File part_integration_ext.h + + @Description P3040/P4080/P5020 external definitions and structures. +*//***************************************************************************/ +#ifndef __PART_INTEGRATION_EXT_H +#define __PART_INTEGRATION_EXT_H + +#include "std_ext.h" +#include "dpaa_integration_ext.h" + + +/**************************************************************************//** + @Group P3040/P4080/P5020_chip_id P5020 Application Programming Interface + + @Description P3040/P4080/P5020 Chip functions,definitions and enums. + + @{ +*//***************************************************************************/ + +#define CORE_E500MC + +#define INTG_MAX_NUM_OF_CORES 1 + + +/**************************************************************************//** + @Description Module types. +*//***************************************************************************/ +typedef enum e_ModuleId +{ + e_MODULE_ID_DUART_1 = 0, + e_MODULE_ID_DUART_2, + e_MODULE_ID_DUART_3, + e_MODULE_ID_DUART_4, + e_MODULE_ID_LAW, + e_MODULE_ID_LBC, + e_MODULE_ID_PAMU, + e_MODULE_ID_QM, /**< Queue manager module */ + e_MODULE_ID_BM, /**< Buffer manager module */ + e_MODULE_ID_QM_CE_PORTAL_0, + e_MODULE_ID_QM_CI_PORTAL_0, + e_MODULE_ID_QM_CE_PORTAL_1, + e_MODULE_ID_QM_CI_PORTAL_1, + e_MODULE_ID_QM_CE_PORTAL_2, + e_MODULE_ID_QM_CI_PORTAL_2, + e_MODULE_ID_QM_CE_PORTAL_3, + e_MODULE_ID_QM_CI_PORTAL_3, + e_MODULE_ID_QM_CE_PORTAL_4, + e_MODULE_ID_QM_CI_PORTAL_4, + e_MODULE_ID_QM_CE_PORTAL_5, + e_MODULE_ID_QM_CI_PORTAL_5, + e_MODULE_ID_QM_CE_PORTAL_6, + e_MODULE_ID_QM_CI_PORTAL_6, + e_MODULE_ID_QM_CE_PORTAL_7, + e_MODULE_ID_QM_CI_PORTAL_7, + e_MODULE_ID_QM_CE_PORTAL_8, + e_MODULE_ID_QM_CI_PORTAL_8, + e_MODULE_ID_QM_CE_PORTAL_9, + e_MODULE_ID_QM_CI_PORTAL_9, + e_MODULE_ID_BM_CE_PORTAL_0, + e_MODULE_ID_BM_CI_PORTAL_0, + e_MODULE_ID_BM_CE_PORTAL_1, + e_MODULE_ID_BM_CI_PORTAL_1, + e_MODULE_ID_BM_CE_PORTAL_2, + e_MODULE_ID_BM_CI_PORTAL_2, + e_MODULE_ID_BM_CE_PORTAL_3, + e_MODULE_ID_BM_CI_PORTAL_3, + e_MODULE_ID_BM_CE_PORTAL_4, + e_MODULE_ID_BM_CI_PORTAL_4, + e_MODULE_ID_BM_CE_PORTAL_5, + e_MODULE_ID_BM_CI_PORTAL_5, + e_MODULE_ID_BM_CE_PORTAL_6, + e_MODULE_ID_BM_CI_PORTAL_6, + e_MODULE_ID_BM_CE_PORTAL_7, + e_MODULE_ID_BM_CI_PORTAL_7, + e_MODULE_ID_BM_CE_PORTAL_8, + e_MODULE_ID_BM_CI_PORTAL_8, + e_MODULE_ID_BM_CE_PORTAL_9, + e_MODULE_ID_BM_CI_PORTAL_9, + e_MODULE_ID_FM1, /**< Frame manager #1 module */ + e_MODULE_ID_FM1_RTC, /**< FM Real-Time-Clock */ + e_MODULE_ID_FM1_MURAM, /**< FM Multi-User-RAM */ + e_MODULE_ID_FM1_BMI, /**< FM BMI block */ + e_MODULE_ID_FM1_QMI, /**< FM QMI block */ + e_MODULE_ID_FM1_PRS, /**< FM parser block */ + e_MODULE_ID_FM1_PORT_HO0, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM1_PORT_HO1, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM1_PORT_HO2, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM1_PORT_HO3, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM1_PORT_HO4, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM1_PORT_HO5, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM1_PORT_HO6, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM1_PORT_1GRx0, /**< FM Rx 1G MAC port block */ + e_MODULE_ID_FM1_PORT_1GRx1, /**< FM Rx 1G MAC port block */ + e_MODULE_ID_FM1_PORT_1GRx2, /**< FM Rx 1G MAC port block */ + e_MODULE_ID_FM1_PORT_1GRx3, /**< FM Rx 1G MAC port block */ + e_MODULE_ID_FM1_PORT_1GRx4, /**< FM Rx 1G MAC port block */ + e_MODULE_ID_FM1_PORT_10GRx0, /**< FM Rx 10G MAC port block */ + e_MODULE_ID_FM1_PORT_1GTx0, /**< FM Tx 1G MAC port block */ + e_MODULE_ID_FM1_PORT_1GTx1, /**< FM Tx 1G MAC port block */ + e_MODULE_ID_FM1_PORT_1GTx2, /**< FM Tx 1G MAC port block */ + e_MODULE_ID_FM1_PORT_1GTx3, /**< FM Tx 1G MAC port block */ + e_MODULE_ID_FM1_PORT_1GTx4, /**< FM Tx 1G MAC port block */ + e_MODULE_ID_FM1_PORT_10GTx0, /**< FM Tx 10G MAC port block */ + e_MODULE_ID_FM1_PLCR, /**< FM Policer */ + e_MODULE_ID_FM1_KG, /**< FM Keygen */ + e_MODULE_ID_FM1_DMA, /**< FM DMA */ + e_MODULE_ID_FM1_FPM, /**< FM FPM */ + e_MODULE_ID_FM1_IRAM, /**< FM Instruction-RAM */ + e_MODULE_ID_FM1_1GMDIO0, /**< FM 1G MDIO MAC 0*/ + e_MODULE_ID_FM1_1GMDIO1, /**< FM 1G MDIO MAC 1*/ + e_MODULE_ID_FM1_1GMDIO2, /**< FM 1G MDIO MAC 2*/ + e_MODULE_ID_FM1_1GMDIO3, /**< FM 1G MDIO MAC 3*/ + e_MODULE_ID_FM1_10GMDIO, /**< FM 10G MDIO */ + e_MODULE_ID_FM1_PRS_IRAM, /**< FM SW-parser Instruction-RAM */ + e_MODULE_ID_FM1_1GMAC0, /**< FM 1G MAC #0 */ + e_MODULE_ID_FM1_1GMAC1, /**< FM 1G MAC #1 */ + e_MODULE_ID_FM1_1GMAC2, /**< FM 1G MAC #2 */ + e_MODULE_ID_FM1_1GMAC3, /**< FM 1G MAC #3 */ + e_MODULE_ID_FM1_10GMAC0, /**< FM 10G MAC #0 */ + + e_MODULE_ID_FM2, /**< Frame manager #2 module */ + e_MODULE_ID_FM2_RTC, /**< FM Real-Time-Clock */ + e_MODULE_ID_FM2_MURAM, /**< FM Multi-User-RAM */ + e_MODULE_ID_FM2_BMI, /**< FM BMI block */ + e_MODULE_ID_FM2_QMI, /**< FM QMI block */ + e_MODULE_ID_FM2_PRS, /**< FM parser block */ + e_MODULE_ID_FM2_PORT_HO0, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM2_PORT_HO1, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM2_PORT_HO2, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM2_PORT_HO3, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM2_PORT_HO4, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM2_PORT_HO5, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM2_PORT_HO6, /**< FM Host-command/offline-parsing port block */ + e_MODULE_ID_FM2_PORT_1GRx0, /**< FM Rx 1G MAC port block */ + e_MODULE_ID_FM2_PORT_1GRx1, /**< FM Rx 1G MAC port block */ + e_MODULE_ID_FM2_PORT_1GRx2, /**< FM Rx 1G MAC port block */ + e_MODULE_ID_FM2_PORT_1GRx3, /**< FM Rx 1G MAC port block */ + e_MODULE_ID_FM2_PORT_10GRx0, /**< FM Rx 10G MAC port block */ + e_MODULE_ID_FM2_PORT_1GTx0, /**< FM Tx 1G MAC port block */ + e_MODULE_ID_FM2_PORT_1GTx1, /**< FM Tx 1G MAC port block */ + e_MODULE_ID_FM2_PORT_1GTx2, /**< FM Tx 1G MAC port block */ + e_MODULE_ID_FM2_PORT_1GTx3, /**< FM Tx 1G MAC port block */ + e_MODULE_ID_FM2_PORT_10GTx0, /**< FM Tx 10G MAC port block */ + e_MODULE_ID_FM2_PLCR, /**< FM Policer */ + e_MODULE_ID_FM2_KG, /**< FM Keygen */ + e_MODULE_ID_FM2_DMA, /**< FM DMA */ + e_MODULE_ID_FM2_FPM, /**< FM FPM */ + e_MODULE_ID_FM2_IRAM, /**< FM Instruction-RAM */ + e_MODULE_ID_FM2_1GMDIO0, /**< FM 1G MDIO MAC 0*/ + e_MODULE_ID_FM2_1GMDIO1, /**< FM 1G MDIO MAC 1*/ + e_MODULE_ID_FM2_1GMDIO2, /**< FM 1G MDIO MAC 2*/ + e_MODULE_ID_FM2_1GMDIO3, /**< FM 1G MDIO MAC 3*/ + e_MODULE_ID_FM2_10GMDIO, /**< FM 10G MDIO */ + e_MODULE_ID_FM2_PRS_IRAM, /**< FM SW-parser Instruction-RAM */ + e_MODULE_ID_FM2_1GMAC0, /**< FM 1G MAC #0 */ + e_MODULE_ID_FM2_1GMAC1, /**< FM 1G MAC #1 */ + e_MODULE_ID_FM2_1GMAC2, /**< FM 1G MAC #2 */ + e_MODULE_ID_FM2_1GMAC3, /**< FM 1G MAC #3 */ + e_MODULE_ID_FM2_10GMAC0, /**< FM 10G MAC #0 */ + + e_MODULE_ID_SEC_GEN, /**< SEC 4.0 General registers */ + e_MODULE_ID_SEC_QI, /**< SEC 4.0 QI registers */ + e_MODULE_ID_SEC_JQ0, /**< SEC 4.0 JQ-0 registers */ + e_MODULE_ID_SEC_JQ1, /**< SEC 4.0 JQ-1 registers */ + e_MODULE_ID_SEC_JQ2, /**< SEC 4.0 JQ-2 registers */ + e_MODULE_ID_SEC_JQ3, /**< SEC 4.0 JQ-3 registers */ + e_MODULE_ID_SEC_RTIC, /**< SEC 4.0 RTIC registers */ + e_MODULE_ID_SEC_DECO0_CCB0, /**< SEC 4.0 DECO-0/CCB-0 registers */ + e_MODULE_ID_SEC_DECO1_CCB1, /**< SEC 4.0 DECO-1/CCB-1 registers */ + e_MODULE_ID_SEC_DECO2_CCB2, /**< SEC 4.0 DECO-2/CCB-2 registers */ + e_MODULE_ID_SEC_DECO3_CCB3, /**< SEC 4.0 DECO-3/CCB-3 registers */ + e_MODULE_ID_SEC_DECO4_CCB4, /**< SEC 4.0 DECO-4/CCB-4 registers */ + + e_MODULE_ID_MPIC, /**< MPIC */ + e_MODULE_ID_GPIO, /**< GPIO */ + e_MODULE_ID_SERDES, /**< SERDES */ + e_MODULE_ID_CPC_1, /**< CoreNet-Platform-Cache 1 */ + e_MODULE_ID_CPC_2, /**< CoreNet-Platform-Cache 2 */ + + e_MODULE_ID_SRIO_PORTS, /**< RapidIO controller */ + e_MODULE_ID_SRIO_MU, /**< RapidIO messaging unit module */ + + e_MODULE_ID_DUMMY_LAST +} e_ModuleId; + +#define NUM_OF_MODULES e_MODULE_ID_DUMMY_LAST + + +/***************************************************************************** + INTEGRATION-SPECIFIC MODULE CODES +******************************************************************************/ +#define MODULE_UNKNOWN 0x00000000 +#define MODULE_MEM 0x00010000 +#define MODULE_MM 0x00020000 +#define MODULE_CORE 0x00030000 +#define MODULE_CHIP 0x00040000 +#define MODULE_PLTFRM 0x00050000 +#define MODULE_PM 0x00060000 +#define MODULE_MMU 0x00070000 +#define MODULE_PIC 0x00080000 +#define MODULE_CPC 0x00090000 +#define MODULE_DUART 0x000a0000 +#define MODULE_SERDES 0x000b0000 +#define MODULE_PIO 0x000c0000 +#define MODULE_QM 0x000d0000 +#define MODULE_BM 0x000e0000 +#define MODULE_SEC 0x000f0000 +#define MODULE_LAW 0x00100000 +#define MODULE_LBC 0x00110000 +#define MODULE_PAMU 0x00120000 +#define MODULE_FM 0x00130000 +#define MODULE_FM_MURAM 0x00140000 +#define MODULE_FM_PCD 0x00150000 +#define MODULE_FM_RTC 0x00160000 +#define MODULE_FM_MAC 0x00170000 +#define MODULE_FM_PORT 0x00180000 +#define MODULE_DPA 0x00190000 +#define MODULE_SRIO 0x00200000 +#define MODULE_DMA 0x00100000 + +/***************************************************************************** + PAMU INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +#define PAMU_NUM_OF_PARTITIONS 5 + +#define PAMU_PICS_AVICS_ERRATA_PAMU3 + +/***************************************************************************** + LAW INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +#define LAW_NUM_OF_WINDOWS 32 +#define LAW_MIN_WINDOW_SIZE 0x0000000000001000LL /**< 4KB */ +#define LAW_MAX_WINDOW_SIZE 0x0000002000000000LL /**< 64GB */ + + +/***************************************************************************** + LBC INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +/**************************************************************************//** + @Group lbc_exception_grp LBC Exception Unit + + @Description LBC Exception unit API functions, definitions and enums + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Anchor lbc_exbm + + @Collection LBC Errors Bit Mask + + These errors are reported through the exceptions callback.. + The values can be or'ed in any combination in the errors mask + parameter of the errors report structure. + + These errors can also be passed as a bit-mask to + LBC_EnableErrorChecking() or LBC_DisableErrorChecking(), + for enabling or disabling error checking. + @{ +*//***************************************************************************/ +#define LBC_ERR_BUS_MONITOR 0x80000000 /**< Bus monitor error */ +#define LBC_ERR_PARITY_ECC 0x20000000 /**< Parity error for GPCM/UPM */ +#define LBC_ERR_WRITE_PROTECT 0x04000000 /**< Write protection error */ +#define LBC_ERR_ATOMIC_WRITE 0x00800000 /**< Atomic write error */ +#define LBC_ERR_ATOMIC_READ 0x00400000 /**< Atomic read error */ +#define LBC_ERR_CHIP_SELECT 0x00080000 /**< Unrecognized chip select */ + +#define LBC_ERR_ALL (LBC_ERR_BUS_MONITOR | LBC_ERR_PARITY_ECC | \ + LBC_ERR_WRITE_PROTECT | LBC_ERR_ATOMIC_WRITE | \ + LBC_ERR_ATOMIC_READ | LBC_ERR_CHIP_SELECT) + /**< All possible errors */ +/* @} */ +/** @} */ /* end of lbc_exception_grp group */ + +#define LBC_INCORRECT_ERROR_REPORT_ERRATA + +#define LBC_NUM_OF_BANKS 8 +#define LBC_MAX_CS_SIZE 0x0000000100000000LL +#define LBC_ATOMIC_OPERATION_SUPPORT +#define LBC_PARITY_SUPPORT +#define LBC_ADDRESS_HOLD_TIME_CTRL +#define LBC_HIGH_CLK_DIVIDERS +#define LBC_FCM_AVAILABLE + +/***************************************************************************** + GPIO INTEGRATION-SPECIFIC DEFINITIONS +******************************************************************************/ +#define GPIO_NUM_OF_PORTS 1 /**< Number of ports in GPIO module; + Each port contains up to 32 i/O pins. */ + +#define GPIO_VALID_PIN_MASKS \ + { /* Port A */ 0xFFFFFFFF } + +#define GPIO_VALID_INTR_MASKS \ + { /* Port A */ 0xFFFFFFFF } + +#endif /* __PART_INTEGRATION_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/math_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/math_ext.h @@ -0,0 +1,98 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __MATH_EXT_H +#define __MATH_EXT_H + + +#if defined(NCSW_LINUX) && defined(__KERNEL__) +#include + +#elif defined(__MWERKS__) +#define LOW(x) ( sizeof(x)==8 ? *(1+(int32_t*)&x) : (*(int32_t*)&x)) +#define HIGH(x) (*(int32_t*)&x) +#define ULOW(x) ( sizeof(x)==8 ? *(1+(uint32_t*)&x) : (*(uint32_t*)&x)) +#define UHIGH(x) (*(uint32_t*)&x) + +static const double big = 1.0e300; + +/* Macro for checking if a number is a power of 2 */ +static __inline__ double ceil(double x) +{ + int32_t i0,i1,j0; /*- cc 020130 -*/ + uint32_t i,j; /*- cc 020130 -*/ + i0 = HIGH(x); + i1 = LOW(x); + j0 = ((i0>>20)&0x7ff)-0x3ff; + if(j0<20) { + if(j0<0) { /* raise inexact if x != 0 */ + if(big+x>0.0) {/* return 0*sign(x) if |x|<1 */ + if(i0<0) {i0=0x80000000;i1=0;} + else if((i0|i1)!=0) { i0=0x3ff00000;i1=0;} + } + } else { + i = (uint32_t)(0x000fffff)>>j0; + if(((i0&i)|i1)==0) return x; /* x is integral */ + if(big+x>0.0) { /* raise inexact flag */ + if(i0>0) i0 += (0x00100000)>>j0; + i0 &= (~i); i1=0; + } + } + } else if (j0>51) { + if(j0==0x400) return x+x; /* inf or NaN */ + else return x; /* x is integral */ + } else { + i = ((uint32_t)(0xffffffff))>>(j0-20); /*- cc 020130 -*/ + if((i1&i)==0) return x; /* x is integral */ + if(big+x>0.0) { /* raise inexact flag */ + if(i0>0) { + if(j0==20) i0+=1; + else { + j = (uint32_t)(i1 + (1<<(52-j0))); + if(j +#endif /* defined(NCSW_LINUX) && defined(__KERNEL__) */ + + +#endif /* __MATH_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/ncsw_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/ncsw_ext.h @@ -0,0 +1,430 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + /**************************************************************************//** + @File ncsw_ext.h + + @Description General NetCommSw Standard Definitions +*//***************************************************************************/ + +#ifndef __NCSW_EXT_H +#define __NCSW_EXT_H + +#include "memcpy_ext.h" + + +#define WRITE_BLOCK IOMemSet32 +#define COPY_BLOCK Mem2IOCpy32 + +#define PTR_TO_UINT(_ptr) ((uintptr_t)(_ptr)) +#define UINT_TO_PTR(_val) ((void*)(uintptr_t)(_val)) + +#define PTR_MOVE(_ptr, _offset) (void*)((uint8_t*)(_ptr) + (_offset)) + + +#define WRITE_UINT8_UINT24(arg, data08, data24) WRITE_UINT32(arg,((uint32_t)(data08)<<24)|((uint32_t)(data24)&0x00FFFFFF)) +#define WRITE_UINT24_UINT8(arg, data24, data08) WRITE_UINT32(arg,((uint32_t)(data24)<< 8)|((uint32_t)(data08)&0x000000FF)) + +/* Little-Endian access macros */ + +#define WRITE_UINT16_LE(arg, data) \ + WRITE_UINT16((arg), SwapUint16(data)) + +#define WRITE_UINT32_LE(arg, data) \ + WRITE_UINT32((arg), SwapUint32(data)) + +#define WRITE_UINT64_LE(arg, data) \ + WRITE_UINT64((arg), SwapUint64(data)) + +#define GET_UINT16_LE(arg) \ + SwapUint16(GET_UINT16(arg)) + +#define GET_UINT32_LE(arg) \ + SwapUint32(GET_UINT32(arg)) + +#define GET_UINT64_LE(arg) \ + SwapUint64(GET_UINT64(arg)) + +/* Write and Read again macros */ +#define WRITE_UINT_SYNC(size, arg, data) \ + do { \ + WRITE_UINT##size((arg), (data)); \ + CORE_MemoryBarrier(); \ + } while (0) + +#define WRITE_UINT8_SYNC(arg, data) WRITE_UINT_SYNC(8, (arg), (data)) + +#define WRITE_UINT16_SYNC(arg, data) WRITE_UINT_SYNC(16, (arg), (data)) +#define WRITE_UINT32_SYNC(arg, data) WRITE_UINT_SYNC(32, (arg), (data)) + +#define MAKE_UINT64(high32, low32) (((uint64_t)high32 << 32) | (low32)) + + +/*----------------------*/ +/* Miscellaneous macros */ +/*----------------------*/ + +#define UNUSED(X) (X=X) + +#define KILOBYTE 0x400UL /* 1024 */ +#define MEGABYTE (KILOBYTE * KILOBYTE) /* 1024*1024 */ +#define GIGABYTE (KILOBYTE * MEGABYTE) /* 1024*1024*1024 */ + +#undef NO_IRQ +#define NO_IRQ (-1) +#define NCSW_MASTER_ID (0) + +/* Macro for checking if a number is a power of 2 */ +#define POWER_OF_2(n) (!((n) & ((n)-1))) + +/* Macro for calculating log of base 2 */ +#define LOG2(num, log2Num) \ + do \ + { \ + uint64_t tmp = (num); \ + log2Num = 0; \ + while (tmp > 1) \ + { \ + log2Num++; \ + tmp >>= 1; \ + } \ + } while (0) + +#define NEXT_POWER_OF_2(_num, _nextPow) \ +do \ +{ \ + if (POWER_OF_2(_num)) \ + _nextPow = (_num); \ + else \ + { \ + uint64_t tmp = (_num); \ + _nextPow = 1; \ + while (tmp) \ + { \ + _nextPow <<= 1; \ + tmp >>= 1; \ + } \ + } \ +} while (0) + +/* Ceiling division - not the fastest way, but safer in terms of overflow */ +#define DIV_CEIL(x,y) (((x)/(y)) + ((((((x)/(y)))*(y)) == (x)) ? 0 : 1)) + +/* Round up a number to be a multiple of a second number */ +#define ROUND_UP(x,y) ((((x) + (y) - 1) / (y)) * (y)) + +/* Timing macro for converting usec units to number of ticks. */ +/* (number of usec * clock_Hz) / 1,000,000) - since */ +/* clk is in MHz units, no division needed. */ +#define USEC_TO_CLK(usec,clk) ((usec) * (clk)) +#define CYCLES_TO_USEC(cycles,clk) ((cycles) / (clk)) + +/* Timing macros for converting between nsec units and number of clocks. */ +#define NSEC_TO_CLK(nsec,clk) DIV_CEIL(((nsec) * (clk)), 1000) +#define CYCLES_TO_NSEC(cycles,clk) (((cycles) * 1000) / (clk)) + +/* Timing macros for converting between psec units and number of clocks. */ +#define PSEC_TO_CLK(psec,clk) DIV_CEIL(((psec) * (clk)), 1000000) +#define CYCLES_TO_PSEC(cycles,clk) (((cycles) * 1000000) / (clk)) + +/* Min, Max macros */ +#define MIN(a,b) ((a) < (b) ? (a) : (b)) +#define MAX(a,b) ((a) > (b) ? (a) : (b)) +#define IN_RANGE(min,val,max) ((min)<=(val) && (val)<=(max)) + +#define ABS(a) ((a<0)?(a*-1):a) + +#if !(defined(ARRAY_SIZE)) +#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) +#endif /* !defined(ARRAY_SIZE) */ + + +/* possible alignments */ +#define HALF_WORD_ALIGNMENT 2 +#define WORD_ALIGNMENT 4 +#define DOUBLE_WORD_ALIGNMENT 8 +#define BURST_ALIGNMENT 32 + +#define HALF_WORD_ALIGNED 0x00000001 +#define WORD_ALIGNED 0x00000003 +#define DOUBLE_WORD_ALIGNED 0x00000007 +#define BURST_ALIGNED 0x0000001f +#ifndef IS_ALIGNED +#define IS_ALIGNED(n,align) (!((uint32_t)(n) & (align - 1))) +#endif /* IS_ALIGNED */ + + +#define LAST_BUF 1 +#define FIRST_BUF 2 +#define SINGLE_BUF (LAST_BUF | FIRST_BUF) +#define MIDDLE_BUF 4 + +#define ARRAY_END -1 + +#define ILLEGAL_BASE (~0) + +#define BUF_POSITION(first, last) state[(!!(last))<<1 | !!(first)] +#define DECLARE_POSITION static uint8_t state[4] = { (uint8_t)MIDDLE_BUF, (uint8_t)FIRST_BUF, (uint8_t)LAST_BUF, (uint8_t)SINGLE_BUF }; + + +/**************************************************************************//** + @Description Timers operation mode +*//***************************************************************************/ +typedef enum e_TimerMode +{ + e_TIMER_MODE_INVALID = 0, + e_TIMER_MODE_FREE_RUN, /**< Free run - counter continues to increase + after reaching the reference value. */ + e_TIMER_MODE_PERIODIC, /**< Periodic - counter restarts counting from 0 + after reaching the reference value. */ + e_TIMER_MODE_SINGLE /**< Single (one-shot) - counter stops counting + after reaching the reference value. */ +} e_TimerMode; + + +/**************************************************************************//** + @Description Enumeration (bit flags) of communication modes (Transmit, + receive or both). +*//***************************************************************************/ +typedef enum e_CommMode +{ + e_COMM_MODE_NONE = 0, /**< No transmit/receive communication */ + e_COMM_MODE_RX = 1, /**< Only receive communication */ + e_COMM_MODE_TX = 2, /**< Only transmit communication */ + e_COMM_MODE_RX_AND_TX = 3 /**< Both transmit and receive communication */ +} e_CommMode; + +/**************************************************************************//** + @Description General Diagnostic Mode +*//***************************************************************************/ +typedef enum e_DiagMode +{ + e_DIAG_MODE_NONE = 0, /**< Normal operation; no diagnostic mode */ + e_DIAG_MODE_CTRL_LOOPBACK, /**< Loopback in the controller */ + e_DIAG_MODE_CHIP_LOOPBACK, /**< Loopback in the chip but not in the + controller; e.g. IO-pins, SerDes, etc. */ + e_DIAG_MODE_PHY_LOOPBACK, /**< Loopback in the external PHY */ + e_DIAG_MODE_EXT_LOOPBACK, /**< Loopback in the external line (beyond the PHY) */ + e_DIAG_MODE_CTRL_ECHO, /**< Echo incoming data by the controller */ + e_DIAG_MODE_PHY_ECHO /**< Echo incoming data by the PHY */ +} e_DiagMode; + +/**************************************************************************//** + @Description Possible RxStore callback responses. +*//***************************************************************************/ +typedef enum e_RxStoreResponse +{ + e_RX_STORE_RESPONSE_PAUSE /**< Pause invoking callback with received data; + in polling mode, start again invoking callback + only next time user invokes the receive routine; + in interrupt mode, start again invoking callback + only next time a receive event triggers an interrupt; + in all cases, received data that are pending are not + lost, rather, their processing is temporarily deferred; + in all cases, received data are processed in the order + in which they were received. */ + , e_RX_STORE_RESPONSE_CONTINUE /**< Continue invoking callback with received data. */ +} e_RxStoreResponse; + + +/**************************************************************************//** + @Description General Handle +*//***************************************************************************/ +typedef void * t_Handle; /**< handle, used as object's descriptor */ + +/**************************************************************************//** + @Description MUTEX type +*//***************************************************************************/ +typedef uint32_t t_Mutex; + +/**************************************************************************//** + @Description Error Code. + + The high word of the error code is the code of the software + module (driver). The low word is the error type (e_ErrorType). + To get the values from the error code, use GET_ERROR_TYPE() + and GET_ERROR_MODULE(). +*//***************************************************************************/ +typedef uint32_t t_Error; + +/**************************************************************************//** + @Description General prototype of interrupt service routine (ISR). + + @Param[in] handle - Optional handle of the module handling the interrupt. + + @Return None + *//***************************************************************************/ +typedef void (t_Isr)(t_Handle handle); + +/**************************************************************************//** + @Anchor mem_attr + + @Collection Memory Attributes + + Various attributes of memory partitions. These values may be + or'ed together to create a mask of all memory attributes. + @{ +*//***************************************************************************/ +#define MEMORY_ATTR_CACHEABLE 0x00000001 + /**< Memory is cacheable */ +#define MEMORY_ATTR_QE_2ND_BUS_ACCESS 0x00000002 + /**< Memory can be accessed by QUICC Engine + through its secondary bus interface */ + +/* @} */ + + +/**************************************************************************//** + @Function t_GetBufFunction + + @Description User callback function called by driver to get data buffer. + + User provides this function. Driver invokes it. + + @Param[in] h_BufferPool - A handle to buffer pool manager + @Param[out] p_BufContextHandle - Returns the user's private context that + should be associated with the buffer + + @Return Pointer to data buffer, NULL if error + *//***************************************************************************/ +typedef uint8_t * (t_GetBufFunction)(t_Handle h_BufferPool, + t_Handle *p_BufContextHandle); + +/**************************************************************************//** + @Function t_PutBufFunction + + @Description User callback function called by driver to return data buffer. + + User provides this function. Driver invokes it. + + @Param[in] h_BufferPool - A handle to buffer pool manager + @Param[in] p_Buffer - A pointer to buffer to return + @Param[in] h_BufContext - The user's private context associated with + the returned buffer + + @Return E_OK on success; Error code otherwise + *//***************************************************************************/ +typedef t_Error (t_PutBufFunction)(t_Handle h_BufferPool, + uint8_t *p_Buffer, + t_Handle h_BufContext); + +/**************************************************************************//** + @Function t_PhysToVirt + + @Description Translates a physical address to the matching virtual address. + + @Param[in] addr - The physical address to translate. + + @Return Virtual address. +*//***************************************************************************/ +typedef void * t_PhysToVirt(physAddress_t addr); + +/**************************************************************************//** + @Function t_VirtToPhys + + @Description Translates a virtual address to the matching physical address. + + @Param[in] addr - The virtual address to translate. + + @Return Physical address. +*//***************************************************************************/ +typedef physAddress_t t_VirtToPhys(void *addr); + +/**************************************************************************//** + @Description Buffer Pool Information Structure. +*//***************************************************************************/ +typedef struct t_BufferPoolInfo +{ + t_Handle h_BufferPool; /**< A handle to the buffer pool manager */ + t_GetBufFunction *f_GetBuf; /**< User callback to get a free buffer */ + t_PutBufFunction *f_PutBuf; /**< User callback to return a buffer */ + uint16_t bufferSize; /**< Buffer size (in bytes) */ + + t_PhysToVirt *f_PhysToVirt; /**< User callback to translate pool buffers + physical addresses to virtual addresses */ + t_VirtToPhys *f_VirtToPhys; /**< User callback to translate pool buffers + virtual addresses to physical addresses */ +} t_BufferPoolInfo; + + +/**************************************************************************//** + @Description User callback function called by driver when transmit completed. + + User provides this function. Driver invokes it. + + @Param[in] h_App - Application's handle, as was provided to the + driver by the user + @Param[in] queueId - Transmit queue ID + @Param[in] p_Data - Pointer to the data buffer + @Param[in] h_BufContext - The user's private context associated with + the given data buffer + @Param[in] status - Transmit status and errors + @Param[in] flags - Driver-dependent information + *//***************************************************************************/ +typedef void (t_TxConfFunction)(t_Handle h_App, + uint32_t queueId, + uint8_t *p_Data, + t_Handle h_BufContext, + uint16_t status, + uint32_t flags); + +/**************************************************************************//** + @Description User callback function called by driver with receive data. + + User provides this function. Driver invokes it. + + @Param[in] h_App - Application's handle, as was provided to the + driver by the user + @Param[in] queueId - Receive queue ID + @Param[in] p_Data - Pointer to the buffer with received data + @Param[in] h_BufContext - The user's private context associated with + the given data buffer + @Param[in] length - Length of received data + @Param[in] status - Receive status and errors + @Param[in] position - Position of buffer in frame + @Param[in] flags - Driver-dependent information + + @Retval e_RX_STORE_RESPONSE_CONTINUE - order the driver to continue Rx + operation for all ready data. + @Retval e_RX_STORE_RESPONSE_PAUSE - order the driver to stop Rx operation. + *//***************************************************************************/ +typedef e_RxStoreResponse (t_RxStoreFunction)(t_Handle h_App, + uint32_t queueId, + uint8_t *p_Data, + t_Handle h_BufContext, + uint32_t length, + uint16_t status, + uint8_t position, + uint32_t flags); + + +#endif /* __NCSW_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/net_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/net_ext.h @@ -0,0 +1,388 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + @File net_ext.h + + @Description This file contains common and general netcomm headers definitions. +*//***************************************************************************/ +#ifndef __NET_EXT_H +#define __NET_EXT_H + +#include "std_ext.h" + + +typedef uint8_t headerFieldPpp_t; + +#define NET_HEADER_FIELD_PPP_PID (1) +#define NET_HEADER_FIELD_PPP_COMPRESSED (NET_HEADER_FIELD_PPP_PID << 1) +#define NET_HEADER_FIELD_PPP_ALL_FIELDS ((NET_HEADER_FIELD_PPP_PID << 2) - 1) + + +typedef uint8_t headerFieldPppoe_t; + +#define NET_HEADER_FIELD_PPPoE_VER (1) +#define NET_HEADER_FIELD_PPPoE_TYPE (NET_HEADER_FIELD_PPPoE_VER << 1) +#define NET_HEADER_FIELD_PPPoE_CODE (NET_HEADER_FIELD_PPPoE_VER << 2) +#define NET_HEADER_FIELD_PPPoE_SID (NET_HEADER_FIELD_PPPoE_VER << 3) +#define NET_HEADER_FIELD_PPPoE_LEN (NET_HEADER_FIELD_PPPoE_VER << 4) +#define NET_HEADER_FIELD_PPPoE_SESSION (NET_HEADER_FIELD_PPPoE_VER << 5) +#define NET_HEADER_FIELD_PPPoE_PID (NET_HEADER_FIELD_PPPoE_VER << 6) +#define NET_HEADER_FIELD_PPPoE_ALL_FIELDS ((NET_HEADER_FIELD_PPPoE_VER << 7) - 1) + +#define NET_HEADER_FIELD_PPPMUX_PID (1) +#define NET_HEADER_FIELD_PPPMUX_CKSUM (NET_HEADER_FIELD_PPPMUX_PID << 1) +#define NET_HEADER_FIELD_PPPMUX_COMPRESSED (NET_HEADER_FIELD_PPPMUX_PID << 2) +#define NET_HEADER_FIELD_PPPMUX_ALL_FIELDS ((NET_HEADER_FIELD_PPPMUX_PID << 3) - 1) + +#define NET_HEADER_FIELD_PPPMUX_SUBFRAME_PFF (1) +#define NET_HEADER_FIELD_PPPMUX_SUBFRAME_LXT (NET_HEADER_FIELD_PPPMUX_SUBFRAME_PFF << 1) +#define NET_HEADER_FIELD_PPPMUX_SUBFRAME_LEN (NET_HEADER_FIELD_PPPMUX_SUBFRAME_PFF << 2) +#define NET_HEADER_FIELD_PPPMUX_SUBFRAME_PID (NET_HEADER_FIELD_PPPMUX_SUBFRAME_PFF << 3) +#define NET_HEADER_FIELD_PPPMUX_SUBFRAME_USE_PID (NET_HEADER_FIELD_PPPMUX_SUBFRAME_PFF << 4) +#define NET_HEADER_FIELD_PPPMUX_SUBFRAME_ALL_FIELDS ((NET_HEADER_FIELD_PPPMUX_SUBFRAME_PFF << 5) - 1) + + +typedef uint8_t headerFieldEth_t; + +#define NET_HEADER_FIELD_ETH_DA (1) +#define NET_HEADER_FIELD_ETH_SA (NET_HEADER_FIELD_ETH_DA << 1) +#define NET_HEADER_FIELD_ETH_LENGTH (NET_HEADER_FIELD_ETH_DA << 2) +#define NET_HEADER_FIELD_ETH_TYPE (NET_HEADER_FIELD_ETH_DA << 3) +#define NET_HEADER_FIELD_ETH_FINAL_CKSUM (NET_HEADER_FIELD_ETH_DA << 4) +#define NET_HEADER_FIELD_ETH_PADDING (NET_HEADER_FIELD_ETH_DA << 5) +#define NET_HEADER_FIELD_ETH_ALL_FIELDS ((NET_HEADER_FIELD_ETH_DA << 6) - 1) + + +typedef uint16_t headerFieldIpv4_t; + +#define NET_HEADER_FIELD_IPv4_VER (1) +#define NET_HEADER_FIELD_IPv4_HDR_LEN (NET_HEADER_FIELD_IPv4_VER << 1) +#define NET_HEADER_FIELD_IPv4_TOS (NET_HEADER_FIELD_IPv4_VER << 2) +#define NET_HEADER_FIELD_IPv4_TOTAL_LEN (NET_HEADER_FIELD_IPv4_VER << 3) +#define NET_HEADER_FIELD_IPv4_ID (NET_HEADER_FIELD_IPv4_VER << 4) +#define NET_HEADER_FIELD_IPv4_FLAG_D (NET_HEADER_FIELD_IPv4_VER << 5) +#define NET_HEADER_FIELD_IPv4_FLAG_M (NET_HEADER_FIELD_IPv4_VER << 6) +#define NET_HEADER_FIELD_IPv4_OFFSET (NET_HEADER_FIELD_IPv4_VER << 7) +#define NET_HEADER_FIELD_IPv4_TTL (NET_HEADER_FIELD_IPv4_VER << 8) +#define NET_HEADER_FIELD_IPv4_PROTO (NET_HEADER_FIELD_IPv4_VER << 9) +#define NET_HEADER_FIELD_IPv4_CKSUM (NET_HEADER_FIELD_IPv4_VER << 10) +#define NET_HEADER_FIELD_IPv4_SRC_IP (NET_HEADER_FIELD_IPv4_VER << 11) +#define NET_HEADER_FIELD_IPv4_DST_IP (NET_HEADER_FIELD_IPv4_VER << 12) +#define NET_HEADER_FIELD_IPv4_OPTS (NET_HEADER_FIELD_IPv4_VER << 13) +#define NET_HEADER_FIELD_IPv4_OPTS_COUNT (NET_HEADER_FIELD_IPv4_VER << 14) +#define NET_HEADER_FIELD_IPv4_ALL_FIELDS ((NET_HEADER_FIELD_IPv4_VER << 15) - 1) + + +typedef uint8_t headerFieldIpv6_t; + +#define NET_HEADER_FIELD_IPv6_VER (1) +#define NET_HEADER_FIELD_IPv6_TC (NET_HEADER_FIELD_IPv6_VER << 1) +#define NET_HEADER_FIELD_IPv6_SRC_IP (NET_HEADER_FIELD_IPv6_VER << 2) +#define NET_HEADER_FIELD_IPv6_DST_IP (NET_HEADER_FIELD_IPv6_VER << 3) +#define NET_HEADER_FIELD_IPv6_NEXT_HDR (NET_HEADER_FIELD_IPv6_VER << 4) +#define NET_HEADER_FIELD_IPv6_FL (NET_HEADER_FIELD_IPv6_VER << 5) +#define NET_HEADER_FIELD_IPv6_HOP_LIMIT (NET_HEADER_FIELD_IPv6_VER << 6) +#define NET_HEADER_FIELD_IPv6_ALL_FIELDS ((NET_HEADER_FIELD_IPv6_VER << 7) - 1) + +#define NET_HEADER_FIELD_ICMP_TYPE (1) +#define NET_HEADER_FIELD_ICMP_CODE (NET_HEADER_FIELD_ICMP_TYPE << 1) +#define NET_HEADER_FIELD_ICMP_CKSUM (NET_HEADER_FIELD_ICMP_TYPE << 2) +#define NET_HEADER_FIELD_ICMP_ID (NET_HEADER_FIELD_ICMP_TYPE << 3) +#define NET_HEADER_FIELD_ICMP_SQ_NUM (NET_HEADER_FIELD_ICMP_TYPE << 4) +#define NET_HEADER_FIELD_ICMP_ALL_FIELDS ((NET_HEADER_FIELD_ICMP_TYPE << 5) - 1) + +#define NET_HEADER_FIELD_IGMP_VERSION (1) +#define NET_HEADER_FIELD_IGMP_TYPE (NET_HEADER_FIELD_IGMP_VERSION << 1) +#define NET_HEADER_FIELD_IGMP_CKSUM (NET_HEADER_FIELD_IGMP_VERSION << 2) +#define NET_HEADER_FIELD_IGMP_DATA (NET_HEADER_FIELD_IGMP_VERSION << 3) +#define NET_HEADER_FIELD_IGMP_ALL_FIELDS ((NET_HEADER_FIELD_IGMP_VERSION << 4) - 1) + + +typedef uint16_t headerFieldTcp_t; + +#define NET_HEADER_FIELD_TCP_PORT_SRC (1) +#define NET_HEADER_FIELD_TCP_PORT_DST (NET_HEADER_FIELD_TCP_PORT_SRC << 1) +#define NET_HEADER_FIELD_TCP_SEQ (NET_HEADER_FIELD_TCP_PORT_SRC << 2) +#define NET_HEADER_FIELD_TCP_ACK (NET_HEADER_FIELD_TCP_PORT_SRC << 3) +#define NET_HEADER_FIELD_TCP_OFFSET (NET_HEADER_FIELD_TCP_PORT_SRC << 4) +#define NET_HEADER_FIELD_TCP_FLAGS (NET_HEADER_FIELD_TCP_PORT_SRC << 5) +#define NET_HEADER_FIELD_TCP_WINDOW (NET_HEADER_FIELD_TCP_PORT_SRC << 6) +#define NET_HEADER_FIELD_TCP_CKSUM (NET_HEADER_FIELD_TCP_PORT_SRC << 7) +#define NET_HEADER_FIELD_TCP_URGPTR (NET_HEADER_FIELD_TCP_PORT_SRC << 8) +#define NET_HEADER_FIELD_TCP_OPTS (NET_HEADER_FIELD_TCP_PORT_SRC << 9) +#define NET_HEADER_FIELD_TCP_OPTS_COUNT (NET_HEADER_FIELD_TCP_PORT_SRC << 10) +#define NET_HEADER_FIELD_TCP_ALL_FIELDS ((NET_HEADER_FIELD_TCP_PORT_SRC << 11) - 1) + + +typedef uint8_t headerFieldSctp_t; + +#define NET_HEADER_FIELD_SCTP_PORT_SRC (1) +#define NET_HEADER_FIELD_SCTP_PORT_DST (NET_HEADER_FIELD_SCTP_PORT_SRC << 1) +#define NET_HEADER_FIELD_SCTP_VER_TAG (NET_HEADER_FIELD_SCTP_PORT_SRC << 2) +#define NET_HEADER_FIELD_SCTP_CKSUM (NET_HEADER_FIELD_SCTP_PORT_SRC << 3) +#define NET_HEADER_FIELD_SCTP_ALL_FIELDS ((NET_HEADER_FIELD_SCTP_PORT_SRC << 4) - 1) + + +typedef uint8_t headerFieldDccp_t; + +#define NET_HEADER_FIELD_DCCP_PORT_SRC (1) +#define NET_HEADER_FIELD_DCCP_PORT_DST (NET_HEADER_FIELD_DCCP_PORT_SRC << 1) +#define NET_HEADER_FIELD_DCCP_ALL_FIELDS ((NET_HEADER_FIELD_DCCP_PORT_SRC << 2) - 1) + + +typedef uint8_t headerFieldUdp_t; + +#define NET_HEADER_FIELD_UDP_PORT_SRC (1) +#define NET_HEADER_FIELD_UDP_PORT_DST (NET_HEADER_FIELD_UDP_PORT_SRC << 1) +#define NET_HEADER_FIELD_UDP_LEN (NET_HEADER_FIELD_UDP_PORT_SRC << 2) +#define NET_HEADER_FIELD_UDP_CKSUM (NET_HEADER_FIELD_UDP_PORT_SRC << 3) +#define NET_HEADER_FIELD_UDP_ALL_FIELDS ((NET_HEADER_FIELD_UDP_PORT_SRC << 4) - 1) + +typedef uint8_t headerFieldUdpEncapEsp_t; + +#define NET_HEADER_FIELD_UDP_ENCAP_ESP_PORT_SRC (1) +#define NET_HEADER_FIELD_UDP_ENCAP_ESP_PORT_DST (NET_HEADER_FIELD_UDP_ENCAP_ESP_PORT_SRC << 1) +#define NET_HEADER_FIELD_UDP_ENCAP_ESP_LEN (NET_HEADER_FIELD_UDP_ENCAP_ESP_PORT_SRC << 2) +#define NET_HEADER_FIELD_UDP_ENCAP_ESP_CKSUM (NET_HEADER_FIELD_UDP_ENCAP_ESP_PORT_SRC << 3) +#define NET_HEADER_FIELD_UDP_ENCAP_ESP_SPI (NET_HEADER_FIELD_UDP_ENCAP_ESP_PORT_SRC << 4) +#define NET_HEADER_FIELD_UDP_ENCAP_ESP_SEQUENCE_NUM (NET_HEADER_FIELD_UDP_ENCAP_ESP_PORT_SRC << 5) +#define NET_HEADER_FIELD_UDP_ENCAP_ESP_ALL_FIELDS ((NET_HEADER_FIELD_UDP_ENCAP_ESP_PORT_SRC << 6) - 1) + +#define NET_HEADER_FIELD_IPHC_CID (1) +#define NET_HEADER_FIELD_IPHC_CID_TYPE (NET_HEADER_FIELD_IPHC_CID << 1) +#define NET_HEADER_FIELD_IPHC_HCINDEX (NET_HEADER_FIELD_IPHC_CID << 2) +#define NET_HEADER_FIELD_IPHC_GEN (NET_HEADER_FIELD_IPHC_CID << 3) +#define NET_HEADER_FIELD_IPHC_D_BIT (NET_HEADER_FIELD_IPHC_CID << 4) +#define NET_HEADER_FIELD_IPHC_ALL_FIELDS ((NET_HEADER_FIELD_IPHC_CID << 5) - 1) + +#define NET_HEADER_FIELD_SCTP_CHUNK_DATA_TYPE (1) +#define NET_HEADER_FIELD_SCTP_CHUNK_DATA_FLAGS (NET_HEADER_FIELD_SCTP_CHUNK_DATA_TYPE << 1) +#define NET_HEADER_FIELD_SCTP_CHUNK_DATA_LENGTH (NET_HEADER_FIELD_SCTP_CHUNK_DATA_TYPE << 2) +#define NET_HEADER_FIELD_SCTP_CHUNK_DATA_TSN (NET_HEADER_FIELD_SCTP_CHUNK_DATA_TYPE << 3) +#define NET_HEADER_FIELD_SCTP_CHUNK_DATA_STREAM_ID (NET_HEADER_FIELD_SCTP_CHUNK_DATA_TYPE << 4) +#define NET_HEADER_FIELD_SCTP_CHUNK_DATA_STREAM_SQN (NET_HEADER_FIELD_SCTP_CHUNK_DATA_TYPE << 5) +#define NET_HEADER_FIELD_SCTP_CHUNK_DATA_PAYLOAD_PID (NET_HEADER_FIELD_SCTP_CHUNK_DATA_TYPE << 6) +#define NET_HEADER_FIELD_SCTP_CHUNK_DATA_UNORDERED (NET_HEADER_FIELD_SCTP_CHUNK_DATA_TYPE << 7) +#define NET_HEADER_FIELD_SCTP_CHUNK_DATA_BEGGINING (NET_HEADER_FIELD_SCTP_CHUNK_DATA_TYPE << 8) +#define NET_HEADER_FIELD_SCTP_CHUNK_DATA_END (NET_HEADER_FIELD_SCTP_CHUNK_DATA_TYPE << 9) +#define NET_HEADER_FIELD_SCTP_CHUNK_DATA_ALL_FIELDS ((NET_HEADER_FIELD_SCTP_CHUNK_DATA_TYPE << 10) - 1) + +#define NET_HEADER_FIELD_L2TPv2_TYPE_BIT (1) +#define NET_HEADER_FIELD_L2TPv2_LENGTH_BIT (NET_HEADER_FIELD_L2TPv2_TYPE_BIT << 1) +#define NET_HEADER_FIELD_L2TPv2_SEQUENCE_BIT (NET_HEADER_FIELD_L2TPv2_TYPE_BIT << 2) +#define NET_HEADER_FIELD_L2TPv2_OFFSET_BIT (NET_HEADER_FIELD_L2TPv2_TYPE_BIT << 3) +#define NET_HEADER_FIELD_L2TPv2_PRIORITY_BIT (NET_HEADER_FIELD_L2TPv2_TYPE_BIT << 4) +#define NET_HEADER_FIELD_L2TPv2_VERSION (NET_HEADER_FIELD_L2TPv2_TYPE_BIT << 5) +#define NET_HEADER_FIELD_L2TPv2_LEN (NET_HEADER_FIELD_L2TPv2_TYPE_BIT << 6) +#define NET_HEADER_FIELD_L2TPv2_TUNNEL_ID (NET_HEADER_FIELD_L2TPv2_TYPE_BIT << 7) +#define NET_HEADER_FIELD_L2TPv2_SESSION_ID (NET_HEADER_FIELD_L2TPv2_TYPE_BIT << 8) +#define NET_HEADER_FIELD_L2TPv2_NS (NET_HEADER_FIELD_L2TPv2_TYPE_BIT << 9) +#define NET_HEADER_FIELD_L2TPv2_NR (NET_HEADER_FIELD_L2TPv2_TYPE_BIT << 10) +#define NET_HEADER_FIELD_L2TPv2_OFFSET_SIZE (NET_HEADER_FIELD_L2TPv2_TYPE_BIT << 11) +#define NET_HEADER_FIELD_L2TPv2_FIRST_BYTE (NET_HEADER_FIELD_L2TPv2_TYPE_BIT << 12) +#define NET_HEADER_FIELD_L2TPv2_ALL_FIELDS ((NET_HEADER_FIELD_L2TPv2_TYPE_BIT << 13) - 1) + +#define NET_HEADER_FIELD_L2TPv3_CTRL_TYPE_BIT (1) +#define NET_HEADER_FIELD_L2TPv3_CTRL_LENGTH_BIT (NET_HEADER_FIELD_L2TPv3_CTRL_TYPE_BIT << 1) +#define NET_HEADER_FIELD_L2TPv3_CTRL_SEQUENCE_BIT (NET_HEADER_FIELD_L2TPv3_CTRL_TYPE_BIT << 2) +#define NET_HEADER_FIELD_L2TPv3_CTRL_VERSION (NET_HEADER_FIELD_L2TPv3_CTRL_TYPE_BIT << 3) +#define NET_HEADER_FIELD_L2TPv3_CTRL_LENGTH (NET_HEADER_FIELD_L2TPv3_CTRL_TYPE_BIT << 4) +#define NET_HEADER_FIELD_L2TPv3_CTRL_CONTROL (NET_HEADER_FIELD_L2TPv3_CTRL_TYPE_BIT << 5) +#define NET_HEADER_FIELD_L2TPv3_CTRL_SENT (NET_HEADER_FIELD_L2TPv3_CTRL_TYPE_BIT << 6) +#define NET_HEADER_FIELD_L2TPv3_CTRL_RECV (NET_HEADER_FIELD_L2TPv3_CTRL_TYPE_BIT << 7) +#define NET_HEADER_FIELD_L2TPv3_CTRL_FIRST_BYTE (NET_HEADER_FIELD_L2TPv3_CTRL_TYPE_BIT << 8) +#define NET_HEADER_FIELD_L2TPv3_CTRL_ALL_FIELDS ((NET_HEADER_FIELD_L2TPv3_CTRL_TYPE_BIT << 9) - 1) + +#define NET_HEADER_FIELD_L2TPv3_SESS_TYPE_BIT (1) +#define NET_HEADER_FIELD_L2TPv3_SESS_VERSION (NET_HEADER_FIELD_L2TPv3_SESS_TYPE_BIT << 1) +#define NET_HEADER_FIELD_L2TPv3_SESS_ID (NET_HEADER_FIELD_L2TPv3_SESS_TYPE_BIT << 2) +#define NET_HEADER_FIELD_L2TPv3_SESS_COOKIE (NET_HEADER_FIELD_L2TPv3_SESS_TYPE_BIT << 3) +#define NET_HEADER_FIELD_L2TPv3_SESS_ALL_FIELDS ((NET_HEADER_FIELD_L2TPv3_SESS_TYPE_BIT << 4) - 1) + + +typedef uint8_t headerFieldVlan_t; + +#define NET_HEADER_FIELD_VLAN_VPRI (1) +#define NET_HEADER_FIELD_VLAN_CFI (NET_HEADER_FIELD_VLAN_VPRI << 1) +#define NET_HEADER_FIELD_VLAN_VID (NET_HEADER_FIELD_VLAN_VPRI << 2) +#define NET_HEADER_FIELD_VLAN_LENGTH (NET_HEADER_FIELD_VLAN_VPRI << 3) +#define NET_HEADER_FIELD_VLAN_TYPE (NET_HEADER_FIELD_VLAN_VPRI << 4) +#define NET_HEADER_FIELD_VLAN_ALL_FIELDS ((NET_HEADER_FIELD_VLAN_VPRI << 5) - 1) + +#define NET_HEADER_FIELD_VLAN_TCI (NET_HEADER_FIELD_VLAN_VPRI | \ + NET_HEADER_FIELD_VLAN_CFI | \ + NET_HEADER_FIELD_VLAN_VID) + + +typedef uint8_t headerFieldLlc_t; + +#define NET_HEADER_FIELD_LLC_DSAP (1) +#define NET_HEADER_FIELD_LLC_SSAP (NET_HEADER_FIELD_LLC_DSAP << 1) +#define NET_HEADER_FIELD_LLC_CTRL (NET_HEADER_FIELD_LLC_DSAP << 2) +#define NET_HEADER_FIELD_LLC_ALL_FIELDS ((NET_HEADER_FIELD_LLC_DSAP << 3) - 1) + +#define NET_HEADER_FIELD_NLPID_NLPID (1) +#define NET_HEADER_FIELD_NLPID_ALL_FIELDS ((NET_HEADER_FIELD_NLPID_NLPID << 1) - 1) + + +typedef uint8_t headerFieldSnap_t; + +#define NET_HEADER_FIELD_SNAP_OUI (1) +#define NET_HEADER_FIELD_SNAP_PID (NET_HEADER_FIELD_SNAP_OUI << 1) +#define NET_HEADER_FIELD_SNAP_ALL_FIELDS ((NET_HEADER_FIELD_SNAP_OUI << 2) - 1) + + +typedef uint8_t headerFieldLlcSnap_t; + +#define NET_HEADER_FIELD_LLC_SNAP_TYPE (1) +#define NET_HEADER_FIELD_LLC_SNAP_ALL_FIELDS ((NET_HEADER_FIELD_LLC_SNAP_TYPE << 1) - 1) + +#define NET_HEADER_FIELD_ARP_HTYPE (1) +#define NET_HEADER_FIELD_ARP_PTYPE (NET_HEADER_FIELD_ARP_HTYPE << 1) +#define NET_HEADER_FIELD_ARP_HLEN (NET_HEADER_FIELD_ARP_HTYPE << 2) +#define NET_HEADER_FIELD_ARP_PLEN (NET_HEADER_FIELD_ARP_HTYPE << 3) +#define NET_HEADER_FIELD_ARP_OPER (NET_HEADER_FIELD_ARP_HTYPE << 4) +#define NET_HEADER_FIELD_ARP_SHA (NET_HEADER_FIELD_ARP_HTYPE << 5) +#define NET_HEADER_FIELD_ARP_SPA (NET_HEADER_FIELD_ARP_HTYPE << 6) +#define NET_HEADER_FIELD_ARP_THA (NET_HEADER_FIELD_ARP_HTYPE << 7) +#define NET_HEADER_FIELD_ARP_TPA (NET_HEADER_FIELD_ARP_HTYPE << 8) +#define NET_HEADER_FIELD_ARP_ALL_FIELDS ((NET_HEADER_FIELD_ARP_HTYPE << 9) - 1) + +#define NET_HEADER_FIELD_RFC2684_LLC (1) +#define NET_HEADER_FIELD_RFC2684_NLPID (NET_HEADER_FIELD_RFC2684_LLC << 1) +#define NET_HEADER_FIELD_RFC2684_OUI (NET_HEADER_FIELD_RFC2684_LLC << 2) +#define NET_HEADER_FIELD_RFC2684_PID (NET_HEADER_FIELD_RFC2684_LLC << 3) +#define NET_HEADER_FIELD_RFC2684_VPN_OUI (NET_HEADER_FIELD_RFC2684_LLC << 4) +#define NET_HEADER_FIELD_RFC2684_VPN_IDX (NET_HEADER_FIELD_RFC2684_LLC << 5) +#define NET_HEADER_FIELD_RFC2684_ALL_FIELDS ((NET_HEADER_FIELD_RFC2684_LLC << 6) - 1) + +#define NET_HEADER_FIELD_USER_DEFINED_SRCPORT (1) +#define NET_HEADER_FIELD_USER_DEFINED_PCDID (NET_HEADER_FIELD_USER_DEFINED_SRCPORT << 1) +#define NET_HEADER_FIELD_USER_DEFINED_ALL_FIELDS ((NET_HEADER_FIELD_USER_DEFINED_SRCPORT << 2) - 1) + +#define NET_HEADER_FIELD_PAYLOAD_BUFFER (1) +#define NET_HEADER_FIELD_PAYLOAD_SIZE (NET_HEADER_FIELD_PAYLOAD_BUFFER << 1) +#define NET_HEADER_FIELD_MAX_FRM_SIZE (NET_HEADER_FIELD_PAYLOAD_BUFFER << 2) +#define NET_HEADER_FIELD_MIN_FRM_SIZE (NET_HEADER_FIELD_PAYLOAD_BUFFER << 3) +#define NET_HEADER_FIELD_PAYLOAD_TYPE (NET_HEADER_FIELD_PAYLOAD_BUFFER << 4) +#define NET_HEADER_FIELD_FRAME_SIZE (NET_HEADER_FIELD_PAYLOAD_BUFFER << 5) +#define NET_HEADER_FIELD_PAYLOAD_ALL_FIELDS ((NET_HEADER_FIELD_PAYLOAD_BUFFER << 6) - 1) + + +typedef uint8_t headerFieldGre_t; + +#define NET_HEADER_FIELD_GRE_TYPE (1) +#define NET_HEADER_FIELD_GRE_ALL_FIELDS ((NET_HEADER_FIELD_GRE_TYPE << 1) - 1) + + +typedef uint8_t headerFieldMinencap_t; + +#define NET_HEADER_FIELD_MINENCAP_SRC_IP (1) +#define NET_HEADER_FIELD_MINENCAP_DST_IP (NET_HEADER_FIELD_MINENCAP_SRC_IP << 1) +#define NET_HEADER_FIELD_MINENCAP_TYPE (NET_HEADER_FIELD_MINENCAP_SRC_IP << 2) +#define NET_HEADER_FIELD_MINENCAP_ALL_FIELDS ((NET_HEADER_FIELD_MINENCAP_SRC_IP << 3) - 1) + + +typedef uint8_t headerFieldIpsecAh_t; + +#define NET_HEADER_FIELD_IPSEC_AH_SPI (1) +#define NET_HEADER_FIELD_IPSEC_AH_NH (NET_HEADER_FIELD_IPSEC_AH_SPI << 1) +#define NET_HEADER_FIELD_IPSEC_AH_ALL_FIELDS ((NET_HEADER_FIELD_IPSEC_AH_SPI << 2) - 1) + + +typedef uint8_t headerFieldIpsecEsp_t; + +#define NET_HEADER_FIELD_IPSEC_ESP_SPI (1) +#define NET_HEADER_FIELD_IPSEC_ESP_SEQUENCE_NUM (NET_HEADER_FIELD_IPSEC_ESP_SPI << 1) +#define NET_HEADER_FIELD_IPSEC_ESP_ALL_FIELDS ((NET_HEADER_FIELD_IPSEC_ESP_SPI << 2) - 1) + + +typedef uint8_t headerFieldMpls_t; + +#define NET_HEADER_FIELD_MPLS_LABEL_STACK (1) +#define NET_HEADER_FIELD_MPLS_LABEL_STACK_ALL_FIELDS ((NET_HEADER_FIELD_MPLS_LABEL_STACK << 1) - 1) + + +typedef uint8_t headerFieldMacsec_t; + +#define NET_HEADER_FIELD_MACSEC_SECTAG (1) +#define NET_HEADER_FIELD_MACSEC_ALL_FIELDS ((NET_HEADER_FIELD_MACSEC_SECTAG << 1) - 1) + + +typedef enum { + HEADER_TYPE_NONE = 0, + HEADER_TYPE_PAYLOAD, + HEADER_TYPE_ETH, + HEADER_TYPE_VLAN, + HEADER_TYPE_IPv4, + HEADER_TYPE_IPv6, + HEADER_TYPE_TCP, + HEADER_TYPE_UDP, + HEADER_TYPE_IPHC, + HEADER_TYPE_SCTP, + HEADER_TYPE_SCTP_CHUNK_DATA, + HEADER_TYPE_PPPoE, + HEADER_TYPE_PPP, + HEADER_TYPE_PPPMUX, + HEADER_TYPE_PPPMUX_SUBFRAME, + HEADER_TYPE_L2TPv2, + HEADER_TYPE_L2TPv3_CTRL, + HEADER_TYPE_L2TPv3_SESS, + HEADER_TYPE_LLC, + HEADER_TYPE_LLC_SNAP, + HEADER_TYPE_NLPID, + HEADER_TYPE_SNAP, + HEADER_TYPE_MPLS, + HEADER_TYPE_IPSEC_AH, + HEADER_TYPE_IPSEC_ESP, + HEADER_TYPE_UDP_ENCAP_ESP, /* RFC 3948 */ + HEADER_TYPE_MACSEC, + HEADER_TYPE_GRE, + HEADER_TYPE_MINENCAP, + HEADER_TYPE_DCCP, + HEADER_TYPE_ICMP, + HEADER_TYPE_IGMP, + HEADER_TYPE_ARP, + HEADER_TYPE_CAPWAP, + HEADER_TYPE_CAPWAP_DTLS, + HEADER_TYPE_RFC2684, + HEADER_TYPE_USER_DEFINED_L2, + HEADER_TYPE_USER_DEFINED_L3, + HEADER_TYPE_USER_DEFINED_L4, + HEADER_TYPE_USER_DEFINED_SHIM1, + HEADER_TYPE_USER_DEFINED_SHIM2, + MAX_HEADER_TYPE_COUNT +} e_NetHeaderType; + + +#endif /* __NET_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/std_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/std_ext.h @@ -0,0 +1,48 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + /**************************************************************************//** + + @File std_ext.h + + @Description General Standard Definitions +*//***************************************************************************/ + +#ifndef __STD_EXT_H +#define __STD_EXT_H + + +#include "types_ext.h" +#include "ncsw_ext.h" + + +#endif /* __STD_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/stdarg_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/stdarg_ext.h @@ -0,0 +1,48 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __STDARG_EXT_H +#define __STDARG_EXT_H + + +#if defined(NCSW_LINUX) && defined(__KERNEL__) +#include + +#else +#include + +#endif /* defined(NCSW_LINUX) && defined(__KERNEL__) */ + +#include "std_ext.h" + + +#endif /* __STDARG_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/stdlib_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/stdlib_ext.h @@ -0,0 +1,161 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#ifndef __STDLIB_EXT_H +#define __STDLIB_EXT_H + + +#if (defined(NCSW_LINUX)) && defined(__KERNEL__) +#include "stdarg_ext.h" +#include "std_ext.h" + + +/** + * strtoul - convert a string to an uint32_t + * @cp: The start of the string + * @endp: A pointer to the end of the parsed string will be placed here + * @base: The number base to use + */ +uint32_t strtoul(const char *cp,char **endp,uint32_t base); + +/** + * strtol - convert a string to a int32_t + * @cp: The start of the string + * @endp: A pointer to the end of the parsed string will be placed here + * @base: The number base to use + */ +long strtol(const char *cp,char **endp,uint32_t base); + +/** + * strtoull - convert a string to an uint64_t + * @cp: The start of the string + * @endp: A pointer to the end of the parsed string will be placed here + * @base: The number base to use + */ +uint64_t strtoull(const char *cp,char **endp,uint32_t base); + +/** + * strtoll - convert a string to a int64 long + * @cp: The start of the string + * @endp: A pointer to the end of the parsed string will be placed here + * @base: The number base to use + */ +long long strtoll(const char *cp,char **endp,uint32_t base); + +/** + * atoi - convert a character to a int + * @s: The start of the string + */ +int atoi(const char *s); + +/** + * strnlen - Find the length of a length-limited string + * @s: The string to be sized + * @count: The maximum number of bytes to search + */ +size_t strnlen(const char * s, size_t count); + +/** + * strlen - Find the length of a string + * @s: The string to be sized + */ +size_t strlen(const char * s); + +/** + * strtok - Split a string into tokens + * @s: The string to be searched + * @ct: The characters to search for + * + * WARNING: strtok is deprecated, use strsep instead. + */ +char * strtok(char * s,const char * ct); + +/** + * strncpy - Copy a length-limited, %NUL-terminated string + * @dest: Where to copy the string to + * @src: Where to copy the string from + * @count: The maximum number of bytes to copy + * + * Note that unlike userspace strncpy, this does not %NUL-pad the buffer. + * However, the result is not %NUL-terminated if the source exceeds + * @count bytes. + */ +char * strncpy(char * dest,const char *src,size_t count); + +/** + * strcpy - Copy a %NUL terminated string + * @dest: Where to copy the string to + * @src: Where to copy the string from + */ +char * strcpy(char * dest,const char *src); + +/** + * vsscanf - Unformat a buffer into a list of arguments + * @buf: input buffer + * @fmt: format of buffer + * @args: arguments + */ +int vsscanf(const char * buf, const char * fmt, va_list args); + +/** + * vsnprintf - Format a string and place it in a buffer + * @buf: The buffer to place the result into + * @size: The size of the buffer, including the trailing null space + * @fmt: The format string to use + * @args: Arguments for the format string + * + * Call this function if you are already dealing with a va_list. + * You probably want snprintf instead. + */ +int vsnprintf(char *buf, size_t size, const char *fmt, va_list args); + +/** + * vsprintf - Format a string and place it in a buffer + * @buf: The buffer to place the result into + * @fmt: The format string to use + * @args: Arguments for the format string + * + * Call this function if you are already dealing with a va_list. + * You probably want sprintf instead. + */ +int vsprintf(char *buf, const char *fmt, va_list args); + +#else +#include +#include +#endif /* defined(NCSW_LINUX) && defined(__KERNEL__) */ + +#include "std_ext.h" + + +#endif /* __STDLIB_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/string_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/string_ext.h @@ -0,0 +1,55 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __STRING_EXT_H +#define __STRING_EXT_H + + +#if defined(NCSW_LINUX) && defined(__KERNEL__) +#include +#include +extern char * strtok ( char * str, const char * delimiters ); + +#elif defined(__KERNEL__) +#include "linux/types.h" +#include "linux/posix_types.h" +#include "linux/string.h" + +#else +#include + +#endif /* defined(NCSW_LINUX) && defined(__KERNEL__) */ + +#include "std_ext.h" + + +#endif /* __STRING_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/types_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/types_ext.h @@ -0,0 +1,111 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + /**************************************************************************//** + @File types_ext.h + + @Description General types Standard Definitions +*//***************************************************************************/ + +#ifndef __TYPES_EXT_H +#define __TYPES_EXT_H + + +#if defined(NCSW_LINUX) +#include "types_linux.h" + +#elif defined(NCSW_LINUX_USD) +#include "types_linux_usd.h" + +#elif defined(NCSW_VXWORKS) +#include "types_vxworks.h" + +#elif defined(__MWERKS__) && defined(__GNUC__) && defined(__cplusplus) +#include "types_bb_gpp.h" + +#elif defined(__MWERKS__) && defined(__GNUC__) +#include "types_bb_gcc.h" + +#elif defined(__ghs__) +#include "types_ghs.h" + +#else +#include "types_dflt.h" +#endif /* defined (__ROCOO__) */ + + +static __inline__ void TypesChecker(void) +{ +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(push,1) +#endif /* defined(__MWERKS__) && ... */ +#define MEM_MAP_START + _Packed struct strct { + __volatile__ int vi; + } _PackedType; +#define MEM_MAP_END +#if defined(__MWERKS__) && !defined(__GNUC__) +#pragma pack(pop) +#endif /* defined(__MWERKS__) && ... */ + size_t size = 0; + bool tr = TRUE, fls = FALSE; + struct strct *p_Strct = NULL; + physAddress_t addr = 0x100; + + tr = fls; + p_Strct = p_Strct; + size++; + if (tr) size++; + + WRITE_UINT8(*((uint8_t*)((size_t)(addr))), + GET_UINT8(*((uint8_t*)((size_t)(addr))))); + + WRITE_UINT8(*((uint8_t*)((size_t)(UINT8_MAX))), + GET_UINT8(*((uint8_t*)((size_t)(UINT8_MAX))))); + WRITE_UINT16(*((uint16_t*)((size_t)(UINT16_MAX))), + GET_UINT16(*((uint16_t*)((size_t)(UINT16_MAX))))); + WRITE_UINT32(*((uint32_t*)((size_t)(UINT32_MAX))), + GET_UINT32(*((uint32_t*)((size_t)(UINT32_MAX))))); + WRITE_UINT64(*((uint64_t*)((size_t)(UINT64_MAX))), + GET_UINT64(*((uint64_t*)((size_t)(UINT64_MAX))))); + WRITE_UINT8(*((uint8_t*)((size_t)(INT8_MAX))), + GET_UINT8(*((uint8_t*)((size_t)(INT8_MIN))))); + WRITE_UINT16(*((uint16_t*)((size_t)(INT16_MAX))), + GET_UINT16(*((uint16_t*)((size_t)(INT16_MIN))))); + WRITE_UINT32(*((uint32_t*)((size_t)(INT32_MAX))), + GET_UINT32(*((uint32_t*)((size_t)(INT32_MIN))))); + WRITE_UINT64(*((uint64_t*)((size_t)(INT64_MAX))), + GET_UINT64(*((uint64_t*)((size_t)(INT64_MIN))))); +} + + +#endif /* __TYPES_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/inc/xx_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/inc/xx_ext.h @@ -0,0 +1,881 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + @File xx_ext.h + + @Description Prototypes, externals and typedefs for system-supplied + (external) routines +*//***************************************************************************/ + +#ifndef __XX_EXT_H +#define __XX_EXT_H + +#include "std_ext.h" +#include "part_ext.h" + +#if defined(__MWERKS__) && defined(OPTIMIZED_FOR_SPEED) +#include "xx_integration_ext.h" +#endif /* defined(__MWERKS__) && defined(OPTIMIZED_FOR_SPEED) */ + + +/**************************************************************************//** + @Group xx_id XX Interface (System call hooks) + + @Description Prototypes, externals and typedefs for system-supplied + (external) routines + + @{ +*//***************************************************************************/ + +#if (defined(REPORT_EVENTS) && (REPORT_EVENTS > 0)) +/**************************************************************************//** + @Function XX_EventById + + @Description Event reporting routine - executed only when REPORT_EVENTS=1. + + @Param[in] event - Event code (e_Event). + @Param[in] appId - Application identifier. + @Param[in] flags - Event flags. + @Param[in] msg - Event message. + + @Return None +*//***************************************************************************/ +void XX_EventById(uint32_t event, t_Handle appId, uint16_t flags, char *msg); + +#else /* not REPORT_EVENTS */ +#define XX_EventById(event, appId, flags, msg) +#endif /* REPORT_EVENTS */ + + + +#ifdef DEBUG_XX_MALLOC +void * XX_MallocDebug(uint32_t size, char *fname, int line); + +void * XX_MallocSmartDebug(uint32_t size, + int memPartitionId, + uint32_t alignment, + char *fname, + int line); + +#define XX_Malloc(sz) \ + XX_MallocDebug((sz), __FILE__, __LINE__) + +#define XX_MallocSmart(sz, memt, al) \ + XX_MallocSmartDebug((sz), (memt), (al), __FILE__, __LINE__) + +#else /* not DEBUG_XX_MALLOC */ +/**************************************************************************//** + @Function XX_Malloc + + @Description allocates contiguous block of memory. + + @Param[in] size - Number of bytes to allocate. + + @Return The address of the newly allocated block on success, NULL on failure. +*//***************************************************************************/ +void * XX_Malloc(uint32_t size); + +/**************************************************************************//** + @Function XX_MallocSmart + + @Description Allocates contiguous block of memory in a specified + alignment and from the specified segment. + + @Param[in] size - Number of bytes to allocate. + @Param[in] memPartitionId - Memory partition ID; The value zero must + be mapped to the default heap partition. + @Param[in] alignment - Required memory alignment (in bytes). + + @Return The address of the newly allocated block on success, NULL on failure. +*//***************************************************************************/ +void * XX_MallocSmart(uint32_t size, int memPartitionId, uint32_t alignment); +#endif /* not DEBUG_XX_MALLOC */ + +/**************************************************************************//** + @Function XX_FreeSmart + + @Description Frees the memory block pointed to by "p". + Only for memory allocated by XX_MallocSmart + + @Param[in] p_Memory - pointer to the memory block. + + @Return None. +*//***************************************************************************/ +void XX_FreeSmart(void *p_Memory); + +/**************************************************************************//** + @Function XX_Free + + @Description frees the memory block pointed to by "p". + + @Param[in] p_Memory - pointer to the memory block. + + @Return None. +*//***************************************************************************/ +void XX_Free(void *p_Memory); + +#ifndef NCSW_LINUX +/**************************************************************************//** + @Function XX_GetMemPartitionBase + + @Description This routine gets the address of a memory segment according to + the memory type. + + @Param[in] memPartitionId - Memory partition ID; The value zero must + be mapped to the default heap partition. + + @Return The address of the required memory type. +*//***************************************************************************/ +void * XX_GetMemPartitionBase(int memPartitionId); +#endif + +/**************************************************************************//** + @Function XX_Print + + @Description print a string. + + @Param[in] str - string to print. + + @Return None. +*//***************************************************************************/ +void XX_Print(char *str, ...); + +/**************************************************************************//** + @Function XX_GetChar + + @Description Get character from console. + + @Return Character is returned on success. Zero is returned otherwise. +*//***************************************************************************/ +char XX_GetChar(void); + +/**************************************************************************//** + @Function XX_SetIntr + + @Description Set an interrupt service routine for a specific interrupt source. + + @Param[in] irq - Interrupt ID (system-specific number). + @Param[in] f_Isr - Callback routine that will be called when the interrupt occurs. + @Param[in] handle - The argument for the user callback routine. + + @Return E_OK on success; error code otherwise.. +*//***************************************************************************/ +t_Error XX_SetIntr(int irq, t_Isr *f_Isr, t_Handle handle); + +/**************************************************************************//** + @Function XX_FreeIntr + + @Description Free a specific interrupt and a specific callback routine. + + @Param[in] irq - Interrupt ID (system-specific number). + + @Return E_OK on success; error code otherwise.. +*//***************************************************************************/ +t_Error XX_FreeIntr(int irq); + +/**************************************************************************//** + @Function XX_EnableIntr + + @Description Enable a specific interrupt. + + @Param[in] irq - Interrupt ID (system-specific number). + + @Return E_OK on success; error code otherwise.. +*//***************************************************************************/ +t_Error XX_EnableIntr(int irq); + +/**************************************************************************//** + @Function XX_DisableIntr + + @Description Disable a specific interrupt. + + @Param[in] irq - Interrupt ID (system-specific number). + + @Return E_OK on success; error code otherwise.. +*//***************************************************************************/ +t_Error XX_DisableIntr(int irq); + +#if !(defined(__MWERKS__) && defined(OPTIMIZED_FOR_SPEED)) +/**************************************************************************//** + @Function XX_DisableAllIntr + + @Description Disable all interrupts by masking them at the CPU. + + @Return A value that represents the interrupts state before the + operation, and should be passed to the matching + XX_RestoreAllIntr() call. +*//***************************************************************************/ +uint32_t XX_DisableAllIntr(void); + +/**************************************************************************//** + @Function XX_RestoreAllIntr + + @Description Restore previous state of interrupts level at the CPU. + + @Param[in] flags - A value that represents the interrupts state to restore, + as returned by the matching call for XX_DisableAllIntr(). + + @Return None. +*//***************************************************************************/ +void XX_RestoreAllIntr(uint32_t flags); +#endif /* !(defined(__MWERKS__) && defined(OPTIMIZED_FOR_SPEED)) */ + +/**************************************************************************//** + @Function XX_Call + + @Description Call a service in another task. + + Activate the routine "f" via the queue identified by "IntrManagerId". The + parameter to "f" is Id - the handle of the destination object + + @Param[in] intrManagerId - Queue ID. + @Param[in] f - routine pointer. + @Param[in] Id - the parameter to be passed to f(). + @Param[in] h_App - Application handle. + @Param[in] flags - Unused, + + @Return E_OK is returned on success. E_FAIL is returned otherwise (usually an operating system level failure). +*//***************************************************************************/ +t_Error XX_Call( uint32_t intrManagerId, + t_Error (* f)(t_Handle), + t_Handle Id, + t_Handle h_App, + uint16_t flags ); + +/**************************************************************************//** + @Function XX_Exit + + @Description Stop execution and report status (where it is applicable) + + @Param[in] status - exit status +*//***************************************************************************/ +void XX_Exit(int status); + +/*****************************************************************************/ +/* Tasklet Service Routines */ +/*****************************************************************************/ +typedef t_Handle t_TaskletHandle; + +/**************************************************************************//** + @Function XX_InitTasklet + + @Description Create and initialize a tasklet object. + + @Param[in] routine - A routine to be ran as a tasklet. + @Param[in] data - An argument to pass to the tasklet. + + @Return Tasklet handle is returned on success. NULL is returned otherwise. +*//***************************************************************************/ +t_TaskletHandle XX_InitTasklet (void (*routine)(void *), void *data); + +/**************************************************************************//** + @Function XX_FreeTasklet + + @Description Free a tasklet object. + + @Param[in] h_Tasklet - A handle to a tasklet to be free. + + @Return None. +*//***************************************************************************/ +void XX_FreeTasklet (t_TaskletHandle h_Tasklet); + +/**************************************************************************//** + @Function XX_ScheduleTask + + @Description Schedule a tasklet object. + + @Param[in] h_Tasklet - A handle to a tasklet to be scheduled. + @Param[in] immediate - Indicate whether to schedule this tasklet on + the immediate queue or on the delayed one. + + @Return 0 - on success. Error code - otherwise. +*//***************************************************************************/ +int XX_ScheduleTask(t_TaskletHandle h_Tasklet, int immediate); + +/**************************************************************************//** + @Function XX_FlushScheduledTasks + + @Description Flush all tasks there are in the scheduled tasks queue. + + @Return None. +*//***************************************************************************/ +void XX_FlushScheduledTasks(void); + +/**************************************************************************//** + @Function XX_TaskletIsQueued + + @Description Check if task is queued. + + @Param[in] h_Tasklet - A handle to a tasklet to be scheduled. + + @Return 1 - task is queued. 0 - otherwise. +*//***************************************************************************/ +int XX_TaskletIsQueued(t_TaskletHandle h_Tasklet); + +/**************************************************************************//** + @Function XX_SetTaskletData + + @Description Set data to a scheduled task. Used to change data of already + scheduled task. + + @Param[in] h_Tasklet - A handle to a tasklet to be scheduled. + @Param[in] data - Data to be set. +*//***************************************************************************/ +void XX_SetTaskletData(t_TaskletHandle h_Tasklet, t_Handle data); + +/**************************************************************************//** + @Function XX_GetTaskletData + + @Description Get the data of scheduled task. + + @Param[in] h_Tasklet - A handle to a tasklet to be scheduled. + + @Return handle to the data of the task. +*//***************************************************************************/ +t_Handle XX_GetTaskletData(t_TaskletHandle h_Tasklet); + +/**************************************************************************//** + @Function XX_BottomHalf + + @Description Bottom half implementation, invoked by the interrupt handler. + + This routine handles all bottom-half tasklets with interrupts + enabled. + + @Return None. +*//***************************************************************************/ +void XX_BottomHalf(void); + + +/*****************************************************************************/ +/* Spinlock Service Routines */ +/*****************************************************************************/ + +/**************************************************************************//** + @Function XX_InitSpinlock + + @Description Creates a spinlock. + + @Return Spinlock handle is returned on success; NULL otherwise. +*//***************************************************************************/ +t_Handle XX_InitSpinlock(void); + +/**************************************************************************//** + @Function XX_FreeSpinlock + + @Description Frees the memory allocated for the spinlock creation. + + @Param[in] h_Spinlock - A handle to a spinlock. + + @Return None. +*//***************************************************************************/ +void XX_FreeSpinlock(t_Handle h_Spinlock); + +/**************************************************************************//** + @Function XX_LockSpinlock + + @Description Locks a spinlock. + + @Param[in] h_Spinlock - A handle to a spinlock. + + @Return None. +*//***************************************************************************/ +void XX_LockSpinlock(t_Handle h_Spinlock); + +/**************************************************************************//** + @Function XX_UnlockSpinlock + + @Description Unlocks a spinlock. + + @Param[in] h_Spinlock - A handle to a spinlock. + + @Return None. +*//***************************************************************************/ +void XX_UnlockSpinlock(t_Handle h_Spinlock); + +/**************************************************************************//** + @Function XX_LockIntrSpinlock + + @Description Locks a spinlock (interrupt safe). + + @Param[in] h_Spinlock - A handle to a spinlock. + + @Return A value that represents the interrupts state before the + operation, and should be passed to the matching + XX_UnlockIntrSpinlock() call. +*//***************************************************************************/ +uint32_t XX_LockIntrSpinlock(t_Handle h_Spinlock); + +/**************************************************************************//** + @Function XX_UnlockIntrSpinlock + + @Description Unlocks a spinlock (interrupt safe). + + @Param[in] h_Spinlock - A handle to a spinlock. + @Param[in] intrFlags - A value that represents the interrupts state to + restore, as returned by the matching call for + XX_LockIntrSpinlock(). + + @Return None. +*//***************************************************************************/ +void XX_UnlockIntrSpinlock(t_Handle h_Spinlock, uint32_t intrFlags); + + +/*****************************************************************************/ +/* Timers Service Routines */ +/*****************************************************************************/ + +/**************************************************************************//** + @Function XX_CurrentTime + + @Description Returns current system time. + + @Return Current system time (in milliseconds). +*//***************************************************************************/ +uint32_t XX_CurrentTime(void); + +/**************************************************************************//** + @Function XX_CreateTimer + + @Description Creates a timer. + + @Return Timer handle is returned on success; NULL otherwise. +*//***************************************************************************/ +t_Handle XX_CreateTimer(void); + +/**************************************************************************//** + @Function XX_FreeTimer + + @Description Frees the memory allocated for the timer creation. + + @Param[in] h_Timer - A handle to a timer. + + @Return None. +*//***************************************************************************/ +void XX_FreeTimer(t_Handle h_Timer); + +/**************************************************************************//** + @Function XX_StartTimer + + @Description Starts a timer. + + The user can select to start the timer as periodic timer or as + one-shot timer. The user should provide a callback routine that + will be called when the timer expires. + + @Param[in] h_Timer - A handle to a timer. + @Param[in] msecs - Timer expiration period (in milliseconds). + @Param[in] periodic - TRUE for a periodic timer; + FALSE for a one-shot timer.. + @Param[in] f_TimerExpired - A callback routine to be called when the + timer expires. + @Param[in] h_Arg - The argument to pass in the timer-expired + callback routine. + + @Return None. +*//***************************************************************************/ +void XX_StartTimer(t_Handle h_Timer, + uint32_t msecs, + bool periodic, + void (*f_TimerExpired)(t_Handle h_Arg), + t_Handle h_Arg); + +/**************************************************************************//** + @Function XX_StopTimer + + @Description Frees the memory allocated for the timer creation. + + @Param[in] h_Timer - A handle to a timer. + + @Return None. +*//***************************************************************************/ +void XX_StopTimer(t_Handle h_Timer); + +/**************************************************************************//** + @Function XX_GetExpirationTime + + @Description Returns the time (in milliseconds) remaining until the + expiration of a timer. + + @Param[in] h_Timer - A handle to a timer. + + @Return The time left until the timer expires. +*//***************************************************************************/ +uint32_t XX_GetExpirationTime(t_Handle h_Timer); + +/**************************************************************************//** + @Function XX_ModTimer + + @Description Updates the expiration time of a timer. + + This routine adds the given time to the current system time, + and sets this value as the new expiration time of the timer. + + @Param[in] h_Timer - A handle to a timer. + @Param[in] msecs - The new interval until timer expiration + (in milliseconds). + + @Return None. +*//***************************************************************************/ +void XX_ModTimer(t_Handle h_Timer, uint32_t msecs); + +/**************************************************************************//** + @Function XX_TimerIsActive + + @Description Checks whether a timer is active (pending) or not. + + @Param[in] h_Timer - A handle to a timer. + + @Return 0 - the timer is inactive; Non-zero value - the timer is active; +*//***************************************************************************/ +int XX_TimerIsActive(t_Handle h_Timer); + +/**************************************************************************//** + @Function XX_Sleep + + @Description Non-busy wait until the desired time (in milliseconds) has passed. + + @Param[in] msecs - The requested sleep time (in milliseconds). + + @Return None. + + @Cautions This routine enables interrupts during its wait time. +*//***************************************************************************/ +uint32_t XX_Sleep(uint32_t msecs); + +/**************************************************************************//** + @Function XX_UDelay + + @Description Busy-wait until the desired time (in microseconds) has passed. + + @Param[in] usecs - The requested delay time (in microseconds). + + @Return None. + + @Cautions It is highly unrecommended to call this routine during interrupt + time, because the system time may not be updated properly during + the delay loop. The behavior of this routine during interrupt + time is unexpected. +*//***************************************************************************/ +void XX_UDelay(uint32_t usecs); + + +/*****************************************************************************/ +/* Other Service Routines */ +/*****************************************************************************/ + +/**************************************************************************//** + @Function XX_PhysToVirt + + @Description Translates a physical address to the matching virtual address. + + @Param[in] addr - The physical address to translate. + + @Return Virtual address. +*//***************************************************************************/ +void * XX_PhysToVirt(physAddress_t addr); + +/**************************************************************************//** + @Function XX_VirtToPhys + + @Description Translates a virtual address to the matching physical address. + + @Param[in] addr - The virtual address to translate. + + @Return Physical address. +*//***************************************************************************/ +physAddress_t XX_VirtToPhys(void *addr); + + +/**************************************************************************//** + @Group xx_ipc XX Inter-Partition-Communication API + + @Description The following API is to be used when working with multiple + partitions configuration. + + @{ +*//***************************************************************************/ + +#define XX_IPC_MAX_ADDR_NAME_LENGTH 16 /**< Maximum length of an endpoint name string; + The IPC service can use this constant to limit + the storage space for IPC endpoint names. */ + + +/**************************************************************************//** + @Function t_IpcMsgCompletion + + @Description Callback function used upon IPC non-blocking transaction completion + to return message buffer to the caller and to forward reply if available. + + This callback function may be attached by the source endpoint to any outgoing + IPC message to indicate a non-blocking send (see also XX_IpcSendMessage() routine). + Upon completion of an IPC transaction (consisting of a message and an optional reply), + the IPC service invokes this callback routine to return the message buffer to the sender + and to provide the received reply, if requested. + + User provides this function. Driver invokes it. + + @Param[in] h_Module - Abstract handle to the sending module - the same handle as was passed + in the XX_IpcSendMessage() function; This handle is typically used to point + to the internal data structure of the source endpoint. + @Param[in] p_Msg - Pointer to original (sent) message buffer; + The source endpoint can free (or reuse) this buffer when message + completion callback is called. + @Param[in] p_Reply - Pointer to (received) reply buffer; + This pointer is the same as was provided by the source endpoint in + XX_IpcSendMessage(). + @Param[in] replyLength - Length (in bytes) of actual data in the reply buffer. + @Param[in] status - Completion status - E_OK or failure indication, e.g. IPC transaction completion + timeout. + + @Return None + *//***************************************************************************/ +typedef void (t_IpcMsgCompletion)(t_Handle h_Module, + uint8_t *p_Msg, + uint8_t *p_Reply, + uint32_t replyLength, + t_Error status); + +/**************************************************************************//** + @Function t_IpcMsgHandler + + @Description Callback function used as IPC message handler. + + The IPC service invokes message handlers for each IPC message received. + The actual function pointer should be registered by each destination endpoint + via the XX_IpcRegisterMsgHandler() routine. + + User provides this function. Driver invokes it. + + @Param[in] h_Module - Abstract handle to the message handling module - the same handle as + was passed in the XX_IpcRegisterMsgHandler() function; this handle is + typically used to point to the internal data structure of the destination + endpoint. + @Param[in] p_Msg - Pointer to message buffer with data received from peer. + @Param[in] msgLength - Length (in bytes) of message data. + @Param[in] p_Reply - Pointer to reply buffer, to be filled by the message handler and then sent + by the IPC service; + The reply buffer is allocated by the IPC service with size equals to the + replyLength parameter provided in message handler registration (see + XX_IpcRegisterMsgHandler() function); + If replyLength was initially specified as zero during message handler registration, + the IPC service may set this pointer to NULL and assume that a reply is not needed; + The IPC service is also responsible for freeing the reply buffer after the + reply has been sent or dismissed. + @Param[in,out] p_ReplyLength - Pointer to reply length, which has a dual role in this function: + [In] equals the replyLength parameter provided in message handler + registration (see XX_IpcRegisterMsgHandler() function), and + [Out] should be updated by message handler to the actual reply length; if + this value is set to zero, the IPC service must assume that a reply should + not be sent; + Note: If p_Reply is not NULL, p_ReplyLength must not be NULL as well. + + @Return E_OK on success; Error code otherwise. + *//***************************************************************************/ +typedef t_Error (t_IpcMsgHandler)(t_Handle h_Module, + uint8_t *p_Msg, + uint32_t msgLength, + uint8_t *p_Reply, + uint32_t *p_ReplyLength); + +/**************************************************************************//** + @Function XX_IpcRegisterMsgHandler + + @Description IPC mailbox registration. + + This function is used for registering an IPC message handler in the IPC service. + This function is called by each destination endpoint to indicate that it is ready + to handle incoming messages. The IPC service invokes the message handler upon receiving + a message addressed to the specified destination endpoint. + + @Param[in] addr - The address name string associated with the destination endpoint; + This address must be unique across the IPC service domain to ensure + correct message routing. + @Param[in] f_MsgHandler - Pointer to the message handler callback for processing incoming + message; invoked by the IPC service upon receiving a message + addressed to the destination endpoint specified by the addr + parameter. + @Param[in] h_Module - Abstract handle to the message handling module, passed unchanged + to f_MsgHandler callback function. + @Param[in] replyLength - The maximal data length (in bytes) of any reply that the specified message handler + may generate; the IPC service provides the message handler with buffer + for reply according to the length specified here (refer also to the description + of #t_IpcMsgHandler callback function type); + This size shall be zero if the message handler never generates replies. + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error XX_IpcRegisterMsgHandler(char addr[XX_IPC_MAX_ADDR_NAME_LENGTH], + t_IpcMsgHandler *f_MsgHandler, + t_Handle h_Module, + uint32_t replyLength); + +/**************************************************************************//** + @Function XX_IpcUnregisterMsgHandler + + @Description Release IPC mailbox routine. + + This function is used for unregistering an IPC message handler from the IPC service. + This function is called by each destination endpoint to indicate that it is no longer + capable of handling incoming messages. + + @Param[in] addr - The address name string associated with the destination endpoint; + This address is the same as was used when the message handler was + registered via XX_IpcRegisterMsgHandler(). + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error XX_IpcUnregisterMsgHandler(char addr[XX_IPC_MAX_ADDR_NAME_LENGTH]); + +/**************************************************************************//** + @Function XX_IpcInitSession + + @Description This function is used for creating an IPC session between the source endpoint + and the destination endpoint. + + The actual implementation and representation of a session is left for the IPC service. + The function returns an abstract handle to the created session. This handle shall be used + by the source endpoint in subsequent calls to XX_IpcSendMessage(). + The IPC service assumes that before this function is called, no messages are sent from + the specified source endpoint to the specified destination endpoint. + + The IPC service may use a connection-oriented approach or a connectionless approach (or both) + as described below. + + @par Connection-Oriented Approach + + The IPC service may implement a session in a connection-oriented approach - when this function is called, + the IPC service should take the necessary steps to bring up a source-to-destination channel for messages + and a destination-to-source channel for replies. The returned handle should represent the internal + representation of these channels. + + @par Connectionless Approach + + The IPC service may implement a session in a connectionless approach - when this function is called, the + IPC service should not perform any particular steps, but it must store the pair of source and destination + addresses in some session representation and return it as a handle. When XX_IpcSendMessage() shall be + called, the IPC service may use this handle to provide the necessary identifiers for routing the messages + through the connectionless medium. + + @Param[in] destAddr - The address name string associated with the destination endpoint. + @Param[in] srcAddr - The address name string associated with the source endpoint. + + @Return Abstract handle to the initialized session, or NULL on error. +*//***************************************************************************/ +t_Handle XX_IpcInitSession(char destAddr[XX_IPC_MAX_ADDR_NAME_LENGTH], + char srcAddr[XX_IPC_MAX_ADDR_NAME_LENGTH]); + +/**************************************************************************//** + @Function XX_IpcFreeSession + + @Description This function is used for terminating an existing IPC session between a source endpoint + and a destination endpoint. + + The IPC service assumes that after this function is called, no messages shall be sent from + the associated source endpoint to the associated destination endpoint. + + @Param[in] h_Session - Abstract handle to the IPC session - the same handle as was originally + returned by the XX_IpcInitSession() function. + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error XX_IpcFreeSession(t_Handle h_Session); + +/**************************************************************************//** + @Function XX_IpcSendMessage + + @Description IPC message send routine. + + This function may be used by a source endpoint to send an IPC message to a destination + endpoint. The source endpoint cannot send a message to the destination endpoint without + first initiating a session with that destination endpoint via XX_IpcInitSession() routine. + + The source endpoint must provide the buffer pointer and length of the outgoing message. + Optionally, it may also provide a buffer for an expected reply. In the latter case, the + transaction is not considered complete by the IPC service until the reply has been received. + If the source endpoint does not provide a reply buffer, the transaction is considered + complete after the message has been sent. The source endpoint must keep the message (and + optional reply) buffers valid until the transaction is complete. + + @par Non-blocking mode + + The source endpoint may request a non-blocking send by providing a non-NULL pointer to a message + completion callback function (f_Completion). Upon completion of the IPC transaction (consisting of a + message and an optional reply), the IPC service invokes this callback routine to return the message + buffer to the sender and to provide the received reply, if requested. + + @par Blocking mode + + The source endpoint may request a blocking send by setting f_Completion to NULL. The function is + expected to block until the IPC transaction is complete - either the reply has been received or (if no reply + was requested) the message has been sent. + + @Param[in] h_Session - Abstract handle to the IPC session - the same handle as was originally + returned by the XX_IpcInitSession() function. + @Param[in] p_Msg - Pointer to message buffer to send. + @Param[in] msgLength - Length (in bytes) of actual data in the message buffer. + @Param[in] p_Reply - Pointer to reply buffer - if this buffer is not NULL, the IPC service + fills this buffer with the received reply data; + In blocking mode, the reply data must be valid when the function returns; + In non-blocking mode, the reply data is valid when f_Completion is called; + If this pointer is NULL, no reply is expected. + @Param[in,out] p_ReplyLength - Pointer to reply length, which has a dual role in this function: + [In] specifies the maximal length (in bytes) of the reply buffer pointed by + p_Reply, and + [Out] in non-blocking mode this value is updated by the IPC service to the + actual reply length (in bytes). + @Param[in] f_Completion - Pointer to a completion callback to be used in non-blocking send mode; + The completion callback is invoked by the IPC service upon + completion of the IPC transaction (consisting of a message and an optional + reply); + If this pointer is NULL, the function is expected to block until the IPC + transaction is complete. + @Param[in] h_Arg - Abstract handle to the sending module; passed unchanged to the f_Completion + callback function as the first argument. + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error XX_IpcSendMessage(t_Handle h_Session, + uint8_t *p_Msg, + uint32_t msgLength, + uint8_t *p_Reply, + uint32_t *p_ReplyLength, + t_IpcMsgCompletion *f_Completion, + t_Handle h_Arg); + + +/** @} */ /* end of xx_ipc group */ +/** @} */ /* end of xx_id group */ + + +#endif /* __XX_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/integrations/P1023/Makefile +++ linux-3.13.0/drivers/net/dpa/NetCommSw/integrations/P1023/Makefile @@ -0,0 +1,9 @@ +# +# Makefile for the Freescale Ethernet controllers +# +EXTRA_CFLAGS += -DVERSION=\"\" +# +#Include netcomm SW specific definitions +include $(srctree)/drivers/net/dpa/NetCommSw/ncsw_config.mk + +obj-y += module_strings.o --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/integrations/P1023/module_strings.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/integrations/P1023/module_strings.c @@ -0,0 +1,71 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +/* Module names for debug messages */ +const char *moduleStrings[] = +{ + "" /* MODULE_UNKNOWN */ + ,"MEM" /* MODULE_ */ + ,"MM" /* MODULE_MM */ + ,"CORE" /* MODULE_CORE */ + ,"P1023" /* MODULE_P1023 */ + ,"MII" /* MODULE_MII */ + ,"PM" /* MODULE_PM */ + ,"MMU" /* MODULE_MMU */ + ,"PIC" /* MODULE_PIC */ + ,"L2 cache" /* MODULE_L2_CACHE */ + ,"DUART" /* MODULE_DUART */ + ,"SerDes" /* MODULE_SERDES */ + ,"PIO" /* MODULE_PIO */ + ,"QM" /* MODULE_QM */ + ,"BM" /* MODULE_BM */ + ,"SEC" /* MODULE_SEC */ + ,"FM" /* MODULE_FM */ + ,"FM-MURAM" /* MODULE_FM_MURAM */ + ,"FM-PCD" /* MODULE_FM_PCD */ + ,"FM-RTC" /* MODULE_FM_RTC */ + ,"FM-MAC" /* MODULE_FM_MAC */ + ,"FM-Port" /* MODULE_FM_PORT */ + ,"FM-MACSEC" /* MODULE_FM_MACSEC */ + ,"FM-MACSEC-SecY" /* MODULE_FM_MACSEC_SECY */ + ,"ECM" /* MODULE_ECM */ + ,"DMA" /* MODULE_DMA */ + ,"DDR" /* MODULE_DDR */ + ,"LAW" /* MODULE_LAW */ + ,"LBC" /* MODULE_LBC */ + ,"I2C" /* MODULE_I2C */ + ,"ESPI" /* MODULE_ESPI */ + ,"PCI" /* MODULE_PCI */ + ,"DPA" /* MODULE_DPA */ + ,"USB" /* MODULE_USB */ +}; --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/integrations/P3040_P4080_P5020/Makefile +++ linux-3.13.0/drivers/net/dpa/NetCommSw/integrations/P3040_P4080_P5020/Makefile @@ -0,0 +1,9 @@ +# +# Makefile for the Freescale Ethernet controllers +# +EXTRA_CFLAGS += -DVERSION=\"\" +# +#Include netcomm SW specific definitions +include $(srctree)/drivers/net/dpa/NetCommSw/ncsw_config.mk + +obj-y += module_strings.o --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/integrations/P3040_P4080_P5020/module_strings.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/integrations/P3040_P4080_P5020/module_strings.c @@ -0,0 +1,62 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/* Module names for debug messages */ +const char *moduleStrings[] = +{ + "???" /* MODULE_UNKNOWN */ + ,"MEM" /* MODULE_ */ + ,"MM" /* MODULE_MM */ + ,"CORE" /* MODULE_CORE */ + ,"P4080" /* MODULE_P4080 */ + ,"P4080-Platform" /* MODULE_P4080_PLTFRM */ + ,"PM" /* MODULE_PM */ + ,"MMU" /* MODULE_MMU */ + ,"PIC" /* MODULE_PIC */ + ,"L3 cache (CPC)" /* MODULE_CPC */ + ,"DUART" /* MODULE_DUART */ + ,"SerDes" /* MODULE_SERDES */ + ,"PIO" /* MODULE_PIO */ + ,"QM" /* MODULE_QM */ + ,"BM" /* MODULE_BM */ + ,"SEC" /* MODULE_SEC */ + ,"LAW" /* MODULE_LAW */ + ,"LBC" /* MODULE_LBC */ + ,"PAMU" /* MODULE_PAMU */ + ,"FM" /* MODULE_FM */ + ,"FM-MURAM" /* MODULE_FM_MURAM */ + ,"FM-PCD" /* MODULE_FM_PCD */ + ,"FM-RTC" /* MODULE_FM_RTC */ + ,"FM-MAC" /* MODULE_FM_MAC */ + ,"FM-Port" /* MODULE_FM_PORT */ + ,"DPA" /* MODULE_DPA */ +}; --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/ncsw_config.mk +++ linux-3.13.0/drivers/net/dpa/NetCommSw/ncsw_config.mk @@ -0,0 +1,34 @@ +# +# Makefile config for the Freescale NetcommSW +# +NET_DPA = $(srctree)/drivers/net/ethernet/freescale +DRV_DPA = $(srctree)/drivers/net/dpa +NCSW = $(srctree)/drivers/net/dpa/NetCommSw + +ifdef CONFIG_FMAN_P3040_P4080_P5020 +EXTRA_CFLAGS +=-include $(NCSW)/p3040_4080_5020_dflags.h +endif +ifdef CONFIG_FMAN_P1023 +EXTRA_CFLAGS +=-include $(NCSW)/p1023_dflags.h +endif + +EXTRA_CFLAGS += -I$(DRV_DPA)/ +EXTRA_CFLAGS += -I$(NCSW)/inc +EXTRA_CFLAGS += -I$(NCSW)/inc/cores +EXTRA_CFLAGS += -I$(NCSW)/inc/etc +EXTRA_CFLAGS += -I$(NCSW)/inc/Peripherals + +ifdef CONFIG_FMAN_P3040_P4080_P5020 +EXTRA_CFLAGS += -I$(NCSW)/inc/integrations/P3040_P4080_P5020 +endif +ifdef CONFIG_FMAN_P1023 +EXTRA_CFLAGS += -I$(NCSW)/inc/integrations/P1023 +endif + +EXTRA_CFLAGS += -I$(NCSW)/src/inc +EXTRA_CFLAGS += -I$(NCSW)/src/inc/system +EXTRA_CFLAGS += -I$(NCSW)/src/inc/wrapper +EXTRA_CFLAGS += -I$(NCSW)/src/inc/xx +EXTRA_CFLAGS += -I$(srctree)/include/linux/fmd +EXTRA_CFLAGS += -I$(srctree)/include/linux/fmd/Peripherals +EXTRA_CFLAGS += -I$(srctree)/include/linux/fmd/integrations --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/p1023_dflags.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/p1023_dflags.h @@ -0,0 +1,65 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __dflags_h +#define __dflags_h + + +#define NCSW_LINUX +#if 0 +#define DEBUG +#endif + +#define P1023 +#define NCSW_PPC_CORE + +#define DEBUG_ERRORS 1 + +#if defined(DEBUG) +#define DEBUG_GLOBAL_LEVEL REPORT_LEVEL_INFO + +#define DEBUG_XX_MALLOC +#define DEBUG_MEM_LEAKS + +#else +#define DEBUG_GLOBAL_LEVEL REPORT_LEVEL_WARNING +#endif /* (DEBUG) */ + +#define REPORT_EVENTS 1 +#define EVENT_GLOBAL_LEVEL REPORT_LEVEL_MINOR + +#ifdef CONFIG_P4080_SIM +#error "Do not define CONFIG_P4080_SIM..." +#endif + + +#endif /* __dflags_h */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/p3040_4080_5020_dflags.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/p3040_4080_5020_dflags.h @@ -0,0 +1,62 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __dflags_h +#define __dflags_h + + +#define NCSW_LINUX + +#define P4080 +#define NCSW_PPC_CORE + +#define DEBUG_ERRORS 1 + +#if defined(DEBUG) +#define DEBUG_GLOBAL_LEVEL REPORT_LEVEL_INFO + +#define DEBUG_XX_MALLOC +#define DEBUG_MEM_LEAKS + +#else +#define DEBUG_GLOBAL_LEVEL REPORT_LEVEL_MAJOR +#endif /* (DEBUG) */ + +#define REPORT_EVENTS 0 +#define EVENT_GLOBAL_LEVEL REPORT_LEVEL_MINOR + +#ifdef CONFIG_P4080_SIM +#define SIMULATOR +#endif /* CONFIG_P4080_SIM */ + + +#endif /* __dflags_h */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/Makefile +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/Makefile @@ -0,0 +1,11 @@ +# +# Makefile for the Freescale Ethernet controllers +# +EXTRA_CFLAGS += -DVERSION=\"\" +# +#Include netcomm SW specific definitions +include $(srctree)/drivers/net/dpa/NetCommSw/ncsw_config.mk +# +obj-y += system/ +obj-y += wrapper/ +obj-y += xx/ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/inc/system/sys_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/inc/system/sys_ext.h @@ -0,0 +1,118 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __SYS_EXT_H +#define __SYS_EXT_H + +#include "std_ext.h" + + +/**************************************************************************//** + @Group sys_grp System Interfaces + + @Description Linux system programming interfaces. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group sys_gen_grp System General Interface + + @Description General definitions, structures and routines of the linux + system programming interface. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Collection Macros for Advanced Configuration Requests + @{ +*//***************************************************************************/ +#define SYS_MAX_ADV_CONFIG_ARGS 4 + /**< Maximum number of arguments in + an advanced configuration entry */ +/* @} */ + +/**************************************************************************//** + @Description System Object Advanced Configuration Entry + + This structure represents a single request for an advanced + configuration call on the initialized object. An array of such + requests may be contained in the settings structure of the + corresponding object. + + The maximum number of arguments is limited to #SYS_MAX_ADV_CONFIG_ARGS. +*//***************************************************************************/ +typedef struct t_SysObjectAdvConfigEntry +{ + void *p_Function; /**< Pointer to advanced configuration routine */ + + uintptr_t args[SYS_MAX_ADV_CONFIG_ARGS]; + /**< Array of arguments for the specified routine; + All arguments should be casted to uint32_t. */ +} t_SysObjectAdvConfigEntry; + + +/** @} */ /* end of sys_gen_grp */ +/** @} */ /* end of sys_grp */ + +#define PARAMS(_num, _params) ADV_CONFIG_PARAMS_##_num _params + +#define ADV_CONFIG_PARAMS_1(_type) \ + , (_type)p_Entry->args[0] + +#define SET_ADV_CONFIG_ARGS_1(_arg0) \ + p_Entry->args[0] = (uintptr_t )(_arg0); \ + +#define ARGS(_num, _params) SET_ADV_CONFIG_ARGS_##_num _params + +#define ADD_ADV_CONFIG_START(_p_Entries, _maxEntries) \ + { \ + t_SysObjectAdvConfigEntry *p_Entry; \ + t_SysObjectAdvConfigEntry *p_Entrys = (_p_Entries); \ + int i=0, max = (_maxEntries); \ + +#define ADD_ADV_CONFIG_END \ + } + +#define ADV_CONFIG_CHECK_START(_p_Entry) \ + { \ + t_SysObjectAdvConfigEntry *p_Entry = _p_Entry; \ + t_Error errCode; \ + +#define ADV_CONFIG_CHECK(_handle, _func, _params) \ + if (p_Entry->p_Function == _func) \ + { \ + errCode = _func(_handle _params); \ + } else + +#endif /* __SYS_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/inc/system/sys_io_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/inc/system/sys_io_ext.h @@ -0,0 +1,46 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __SYS_IO_EXT_H +#define __SYS_IO_EXT_H + +#include "std_ext.h" +#include "error_ext.h" + + +t_Error SYS_RegisterIoMap (uint64_t virtAddr, uint64_t physAddr, uint32_t size); +t_Error SYS_UnregisterIoMap (uint64_t virtAddr); +uint64_t SYS_PhysToVirt (uint64_t addr); +uint64_t SYS_VirtToPhys (uint64_t addr); + + +#endif /* __SYS_IO_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/inc/types_linux.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/inc/types_linux.h @@ -0,0 +1,200 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __TYPES_LINUX_H__ +#define __TYPES_LINUX_H__ + +#include + +#if defined(CONFIG_MODVERSIONS) && !defined(MODVERSIONS) +#define MODVERSIONS +#endif +#ifdef MODVERSIONS +#include +#endif /* MODVERSIONS */ + +#include +#include +#include + +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,11) + #error "This kernel is probably not supported!!!" +#elif (!((LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,19)) || \ + (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,27)) || \ + (LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,30)))) + #warning "This kernel is probably not supported!!! You may need to add some fixes." +#endif /* LINUX_VERSION_CODE */ + + +typedef float float_t; /* Single precision floating point */ +typedef double double_t; /* Double precision floating point */ + + +#define _Packed +#define _PackedType __attribute__ ((packed)) + +typedef phys_addr_t physAddress_t; + +#define UINT8_MAX 0xFF +#define UINT8_MIN 0 +#define UINT16_MAX 0xFFFF +#define UINT16_MIN 0 +#define UINT32_MAX 0xFFFFFFFF +#define UINT32_MIN 0 +#define UINT64_MAX 0xFFFFFFFFFFFFFFFFLL +#define UINT64_MIN 0 +#define INT8_MAX 0x7F +#define INT8_MIN 0x80 +#define INT16_MAX 0x7FFF +#define INT16_MIN 0x8000 +#define INT32_MAX 0x7FFFFFFF +#define INT32_MIN 0x80000000 +#define INT64_MAX 0x7FFFFFFFFFFFFFFFLL +#define INT64_MIN 0x8000000000000000LL + +#define ON 1 +#define OFF 0 + +#define FALSE false +#define TRUE true + + +/************************/ +/* memory access macros */ +/************************/ +#define GET_UINT8(arg) *(volatile uint8_t *)(&(arg)) +#define GET_UINT16(arg) in_be16(&(arg))//*(volatile uint16_t*)(&(arg)) +#define GET_UINT32(arg) in_be32(&(arg))//*(volatile uint32_t*)(&(arg)) +#define GET_UINT64(arg) *(volatile uint64_t*)(&(arg)) + +#ifdef VERBOSE_WRITE +void XX_Print(char *str, ...); +#define WRITE_UINT8(arg, data) \ + do { XX_Print("ADDR: 0x%08x, VAL: 0x%02x\r\n", (uint32_t)&(arg), (data)); *(volatile uint8_t *)(&(arg)) = (data); } while (0) +#define WRITE_UINT16(arg, data) \ + do { XX_Print("ADDR: 0x%08x, VAL: 0x%04x\r\n", (uint32_t)&(arg), (data)); out_be16(&(arg), data); /* *(volatile uint16_t*)(&(arg)) = (data);*/ } while (0) +#define WRITE_UINT32(arg, data) \ + do { XX_Print("ADDR: 0x%08x, VAL: 0x%08x\r\n", (uint32_t)&(arg), (data)); out_be32(&(arg), data); /* *(volatile uint32_t*)(&(arg)) = (data);*/ } while (0) +#define WRITE_UINT64(arg, data) \ + do { XX_Print("ADDR: 0x%08x, VAL: 0x%016llx\r\n", (uint32_t)&(arg), (data)); *(volatile uint64_t*)(&(arg)) = (data); } while (0) + +#else /* not VERBOSE_WRITE */ +#define WRITE_UINT8(arg, data) *(volatile uint8_t *)(&(arg)) = (data) +#define WRITE_UINT16(arg, data) out_be16(&(arg), data)//*(volatile uint16_t*)(&(arg)) = (data) +#define WRITE_UINT32(arg, data) out_be32(&(arg), data)//*(volatile unsigned int *)(&(arg)) = (data) +#define WRITE_UINT64(arg, data) *(volatile uint64_t*)(&(arg)) = (data) +#endif /* not VERBOSE_WRITE */ + + +/*****************************************************************************/ +/* General stuff */ +/*****************************************************************************/ +#ifdef ARRAY_SIZE +#undef ARRAY_SIZE +#endif /* ARRAY_SIZE */ + +#ifdef MAJOR +#undef MAJOR +#endif /* MAJOR */ + +#ifdef MINOR +#undef MINOR +#endif /* MINOR */ + +#ifdef QE_SIZEOF_BD +#undef QE_SIZEOF_BD +#endif /* QE_SIZEOF_BD */ + +#ifdef BD_BUFFER_CLEAR +#undef BD_BUFFER_CLEAR +#endif /* BD_BUFFER_CLEAR */ + +#ifdef BD_BUFFER +#undef BD_BUFFER +#endif /* BD_BUFFER */ + +#ifdef BD_STATUS_AND_LENGTH_SET +#undef BD_STATUS_AND_LENGTH_SET +#endif /* BD_STATUS_AND_LENGTH_SET */ + +#ifdef BD_STATUS_AND_LENGTH +#undef BD_STATUS_AND_LENGTH +#endif /* BD_STATUS_AND_LENGTH */ + +#ifdef BD_BUFFER_ARG +#undef BD_BUFFER_ARG +#endif /* BD_BUFFER_ARG */ + +#ifdef BD_GET_NEXT +#undef BD_GET_NEXT +#endif /* BD_GET_NEXT */ + +#ifdef QE_SDEBCR_BA_MASK +#undef QE_SDEBCR_BA_MASK +#endif /* QE_SDEBCR_BA_MASK */ + +#ifdef BD_BUFFER_SET +#undef BD_BUFFER_SET +#endif /* BD_BUFFER_SET */ + +#ifdef UPGCR_PROTOCOL +#undef UPGCR_PROTOCOL +#endif /* UPGCR_PROTOCOL */ + +#ifdef UPGCR_TMS +#undef UPGCR_TMS +#endif /* UPGCR_TMS */ + +#ifdef UPGCR_RMS +#undef UPGCR_RMS +#endif /* UPGCR_RMS */ + +#ifdef UPGCR_ADDR +#undef UPGCR_ADDR +#endif /* UPGCR_ADDR */ + +#ifdef UPGCR_DIAG +#undef UPGCR_DIAG +#endif /* UPGCR_DIAG */ + +#ifdef PARAMS +#undef PARAMS +#endif /* PARAMS */ + +#ifdef NO_IRQ +#undef NO_IRQ +#endif /* NO_IRQ */ + +#define PRINT_LINE XX_Print("%s:\n %s [%d]\n",__FILE__,__FUNCTION__,__LINE__); + + +#endif /* __TYPES_LINUX_H__ */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/inc/wrapper/fsl_fman.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/inc/wrapper/fsl_fman.h @@ -0,0 +1,279 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fsl_fman.h + + @Description Linux internal kernel API +*//***************************************************************************/ + +#ifndef __FSL_FMAN_H +#define __FSL_FMAN_H + +#include +#include /* struct device */ +#include /* struct qman_fq */ +#include "dpaa_integration_ext.h" + +/**************************************************************************//** + @Group FM_LnxKern_grp Frame Manager Linux wrapper API + + @Description FM API functions, definitions and enums. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group FM_LnxKern_ctrl_grp Control Unit + + @Description Control Unit + + Internal Kernel Control Unit API + @{ +*//***************************************************************************/ + +/*****************************************************************************/ +/* Internal Linux kernel routines */ +/*****************************************************************************/ + +/**************************************************************************//** + @Description A structure .., +*//***************************************************************************/ +struct fm; + +/**************************************************************************//** + @Description A structure .., +*//***************************************************************************/ +struct fm_port; + +typedef int (*alloc_pcd_fqids)(struct device *dev, + uint32_t num, + uint8_t alignment, + uint32_t *base_fqid); + +typedef int (*free_pcd_fqids)(struct device *dev, + uint32_t base_fqid); + +struct fm_port_pcd_param { + alloc_pcd_fqids cba; + free_pcd_fqids cbf; + struct device *dev; +}; + +/**************************************************************************//** + @Description A structure of information about each of the external + buffer pools used by the port, +*//***************************************************************************/ +struct fm_port_pool_param { + uint8_t id; /**< External buffer pool id */ + uint16_t size; /**< External buffer pool buffer size */ +}; + +/**************************************************************************//** + @Description structure for additional Rx port parameters +*//***************************************************************************/ +struct fm_port_rx_params { + uint32_t errq; /**< Error Queue Id. */ + uint32_t defq; /**< Default Queue Id. */ + uint8_t num_pools; /**< Number of pools use by this port */ + struct fm_port_pool_param pool_param[FM_PORT_MAX_NUM_OF_EXT_POOLS]; + /**< Parameters for each pool */ + uint16_t priv_data_size; /**< Area that user may save for his own need (E.g. save the SKB) */ + bool parse_results; /**< Whether to have the parser-results in the Received buffer */ + bool hash_results; /**< Whether to have the hash-results in the Received buffer */ + bool time_stamp; /**< Whether to have the time-stamp in the Received buffer */ +}; + +/**************************************************************************//** + @Description structure for additional non-Rx port parameters +*//***************************************************************************/ +struct fm_port_non_rx_params { + uint32_t errq; /**< Error Queue Id. */ + uint32_t defq; /**< For Tx and HC - Default Confirmation queue, + 0 means no Tx confirmation for processed + frames. For OP - default Rx queue. */ + uint16_t priv_data_size; /**< Area that user may save for his own need (E.g. save the SKB) */ + bool parse_results; /**< Whether to put the parser-results in the Transmitted buffer */ + bool hash_results; /**< Whether to have the hash-results in the Received buffer */ + bool time_stamp; /**< Whether to have the time-stamp in the Received buffer */ +}; + + +/**************************************************************************//** + @Function fm_bind + + @Description Bind to a specific FM device. + + @Param[in] fm_dev - the OF handle of the FM device. + + @Return A handle of the FM device. + + @Cautions Allowed only after the port was created. +*//***************************************************************************/ +struct fm * fm_bind (struct device *fm_dev); + +/**************************************************************************//** + @Function fm_unbind + + @Description Un-bind from a specific FM device. + + @Param[in] fm - A handle of the FM device. + + @Cautions Allowed only after the port was created. +*//***************************************************************************/ +void fm_unbind(struct fm *fm); + +void * fm_get_handle(struct fm *fm); +void * fm_get_rtc_handle(struct fm *fm); +struct resource * fm_get_mem_region(struct fm *fm); + +/**************************************************************************//** + @Function fm_port_bind + + @Description Bind to a specific FM-port device (may be Rx or Tx port). + + @Param[in] fm_port_dev - the OF handle of the FM port device. + + @Return A handle of the FM port device. + + @Cautions Allowed only after the port was created. +*//***************************************************************************/ +struct fm_port * fm_port_bind (struct device *fm_port_dev); + +/**************************************************************************//** + @Function fm_port_unbind + + @Description Un-bind from a specific FM-port device (may be Rx or Tx port). + + @Param[in] port - A handle of the FM port device. + + @Cautions Allowed only after the port was created. +*//***************************************************************************/ +void fm_port_unbind(struct fm_port *port); + +/**************************************************************************//** + @Function fm_set_rx_port_params + + @Description Configure parameters for a specific Rx FM-port device. + + @Param[in] port - A handle of the FM port device. + @Param[in] params - Rx port parameters + + @Cautions Allowed only after the port is binded. +*//***************************************************************************/ +void fm_set_rx_port_params(struct fm_port *port, struct fm_port_rx_params *params); + +/**************************************************************************//** + @Function fm_port_pcd_bind + + @Description Bind as a listener on a port PCD. + + @Param[in] port - A handle of the FM port device. + @Param[in] params - PCD port parameters + + @Cautions Allowed only after the port is binded. +*//***************************************************************************/ +void fm_port_pcd_bind (struct fm_port *port, struct fm_port_pcd_param *params); + +/**************************************************************************//** + @Function fm_get_tx_port_channel + + @Description Get qman-channel number for this Tx port. + + @Param[in] port - A handle of the FM port device. + + @Return qman-channel number for this Tx port. + + @Cautions Allowed only after the port is binded. +*//***************************************************************************/ +int fm_get_tx_port_channel(struct fm_port *port); + +/**************************************************************************//** + @Function fm_set_tx_port_params + + @Description Configure parameters for a specific Tx FM-port device + + @Param[in] port - A handle of the FM port device. + @Param[in] params - Tx port parameters + + @Cautions Allowed only after the port is binded. +*//***************************************************************************/ +void fm_set_tx_port_params(struct fm_port *port, struct fm_port_non_rx_params *params); + +/**************************************************************************//** + @Function fm_port_enable + + @Description Enable specific FM-port device (may be Rx or Tx port). + + @Param[in] port - A handle of the FM port device. + + @Cautions Allowed only the port is initialized. +*//***************************************************************************/ +int fm_port_enable (struct fm_port *port); + +/**************************************************************************//** + @Function fm_port_disable + + @Description Disable specific FM-port device (may be Rx or Tx port). + + @Param[in] port - A handle of the FM port device. + + @Cautions Allowed only the port is initialized. +*//***************************************************************************/ +void fm_port_disable(struct fm_port *port); + +void * fm_port_get_handle(struct fm_port *port); + +/**************************************************************************//** + @Description Get base address of this port. Useful for accessing + port-specific registers (i.e., not common ones). + + @Param[in] port - A handle of the FM port device. + @Param[out] base_addr - The port's base addr (virtual address). +*//***************************************************************************/ +void fm_port_get_base_addr(const struct fm_port *port, uint64_t *base_addr); + +/**************************************************************************//** + @Description Lock function required before any FMD/LLD call. +*//***************************************************************************/ +void fm_mutex_lock(void); + +/**************************************************************************//** + @Description Unlock function required after any FMD/LLD call. +*//***************************************************************************/ +void fm_mutex_unlock(void); + +/** @} */ /* end of FM_LnxKern_ctrl_grp group */ +/** @} */ /* end of FM_LnxKern_grp group */ + + +#endif /* __FSL_FMAN_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/inc/wrapper/fsl_fman_test.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/inc/wrapper/fsl_fman_test.h @@ -0,0 +1,83 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File fsl_fman_test.h + + @Description +*//***************************************************************************/ + +#ifndef __FSL_FMAN_TEST_H +#define __FSL_FMAN_TEST_H + +#include + + +#define FMT_RX_ERR_Q 0xffffffff +#define FMT_RX_DFLT_Q 0xfffffffe +#define FMT_TX_ERR_Q 0xfffffffd +#define FMT_TX_CONF_Q 0xfffffffc + + +/**************************************************************************//** + @Function is_fman_test + + @Description Check if arriving frame belong to the test + + @Param[in] mac_dev - TODO + @Param[in] queueId - TODO + @Param[in] buffer - A pointer to the buffer to check. + @Param[in] size - size of the given buffer. + + @Return true if this buffer belongs to FMan test application; false otherwise. + + @Cautions Allowed only the port is initialized. +*//***************************************************************************/ +bool is_fman_test (void *mac_dev, + uint32_t queueId, + uint8_t *buffer, + uint32_t size); + +/**************************************************************************//** + @Function fman_test_ip_manip + + @Description IP header manipulation + + @Param[in] mac_dev - TODO + @Param[in] data - A pointer to the data (payload) to manipulate. + + @Cautions Allowed only the port is initialized. +*//***************************************************************************/ +void fman_test_ip_manip (void *mac_dev, uint8_t *data); + + +#endif /* __FSL_FMAN_TEST_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/inc/wrapper/lnxwrp_fm_ext.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/inc/wrapper/lnxwrp_fm_ext.h @@ -0,0 +1,162 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/****************************************************************************** + @File lnxwrp_fm_ext.h + + @Description TODO +*//***************************************************************************/ + +#ifndef __LNXWRP_FM_EXT_H +#define __LNXWRP_FM_EXT_H + +#include "std_ext.h" +#include "sys_ext.h" +#include "fm_ext.h" +#include "fm_muram_ext.h" +#include "fm_pcd_ext.h" +#include "fm_port_ext.h" +#include "fm_mac_ext.h" +#include "fm_rtc_ext.h" + + +/**************************************************************************//** + @Group FM_LnxKern_grp Frame Manager Linux wrapper API + + @Description FM API functions, definitions and enums. + + @{ +*//***************************************************************************/ + +/**************************************************************************//** + @Group FM_LnxKern_init_grp Initialization Unit + + @Description Initialization Unit + + Initialization Flow: + Initialization of the FM Module will be carried out by the Linux + kernel according to the following sequence: + a. Calling the initialization routine with no parameters. + b. The driver will register to the Device-Tree. + c. The Linux Device-Tree will initiate a call to the driver for + initialization. + d. The driver will read the appropriate information from the Device-Tree + e. [Optional] Calling the advance initialization routines to change + driver's defaults. + f. Initialization of the device will be automatically upon using it. + + @{ +*//***************************************************************************/ + +typedef struct t_WrpFmDevSettings +{ + t_FmParams param; + t_SysObjectAdvConfigEntry *advConfig; +} t_WrpFmDevSettings; + +typedef struct t_WrpFmPcdDevSettings +{ + t_FmPcdParams param; + t_SysObjectAdvConfigEntry *advConfig; +} t_WrpFmPcdDevSettings; + +typedef struct t_WrpFmPortDevSettings +{ + t_FmPortParams param; + t_SysObjectAdvConfigEntry *advConfig; +} t_WrpFmPortDevSettings; + +typedef struct t_WrpFmMacDevSettings +{ + t_FmMacParams param; + t_SysObjectAdvConfigEntry *advConfig; +} t_WrpFmMacDevSettings; + + +/**************************************************************************//** + @Function LNXWRP_FM_Init + + @Description Initialize the FM linux wrapper. + + @Return A handle (descriptor) of the newly created FM Linux wrapper + structure. +*//***************************************************************************/ +t_Handle LNXWRP_FM_Init(void); + +/**************************************************************************//** + @Function LNXWRP_FM_Free + + @Description Free the FM linux wrapper. + + @Param[in] h_LnxWrpFm - A handle to the FM linux wrapper. + + @Return E_OK on success; Error code otherwise. +*//***************************************************************************/ +t_Error LNXWRP_FM_Free(t_Handle h_LnxWrpFm); + +/**************************************************************************//** + @Function LNXWRP_FM_GetMacHandle + + @Description Get the FM-MAC LLD handle from the FM linux wrapper. + + @Param[in] h_LnxWrpFm - A handle to the FM linux wrapper. + @Param[in] fmId - Index of the FM device to get the MAC handle from. + @Param[in] macId - Index of the mac handle. + + @Return A handle of the LLD compressor. +*//***************************************************************************/ +t_Handle LNXWRP_FM_GetMacHandle(t_Handle h_LnxWrpFm, uint8_t fmId, uint8_t macId); + +#ifdef CONFIG_FSL_FMAN_TEST +t_Handle LNXWRP_FM_TEST_Init(void); +t_Error LNXWRP_FM_TEST_Free(t_Handle h_FmTestLnxWrp); +#endif /* CONFIG_FSL_FMAN_TEST */ + +/** @} */ /* end of FM_LnxKern_init_grp group */ + + +/**************************************************************************//** + @Group FM_LnxKern_ctrl_grp Control Unit + + @Description Control Unit + + TODO + @{ +*//***************************************************************************/ + +#include "fsl_fman.h" + +/** @} */ /* end of FM_LnxKern_ctrl_grp group */ +/** @} */ /* end of FM_LnxKern_grp group */ + + +#endif /* __LNXWRP_FM_EXT_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/inc/xx/xx.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/inc/xx/xx.h @@ -0,0 +1,50 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __XX_H +#define __XX_H + +#include "xx_ext.h" + +void * xx_Malloc(uint32_t n); +void xx_Free(void *p); + +void *xx_MallocSmart(uint32_t size, int memPartitionId, uint32_t align); +void xx_FreeSmart(void *p); + +/* never used: */ +#define GetDeviceName(irq) ((char *)NULL) + +int GetDeviceIrqNum(int irq); + + +#endif /* __XX_H */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/system/Makefile +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/system/Makefile @@ -0,0 +1,10 @@ +# +# Makefile for the Freescale Ethernet controllers +# +EXTRA_CFLAGS += -DVERSION=\"\" +# +#Include netcomm SW specific definitions +include $(srctree)/drivers/net/dpa/NetCommSw/ncsw_config.mk +# + +obj-y += sys_io.o --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/system/sys_io.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/system/sys_io.c @@ -0,0 +1,171 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include + +#if defined(CONFIG_MODVERSIONS) && !defined(MODVERSIONS) +#define MODVERSIONS +#endif +#ifdef MODVERSIONS +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) +#include +#else +#include +#endif /* LINUX_VERSION_CODE */ +#endif /* MODVERSIONS */ + +#include +#include + +#include + +#include "std_ext.h" +#include "error_ext.h" +#include "string_ext.h" +#include "list_ext.h" +#include "sys_io_ext.h" + + +#define __ERR_MODULE__ MODULE_UNKNOWN + + +typedef struct { + uint64_t virtAddr; + uint64_t physAddr; + uint32_t size; + t_List node; +} t_IoMap; +#define IOMAP_OBJECT(ptr) LIST_OBJECT(ptr, t_IoMap, node) + +LIST(mapsList); + + +static void EnqueueIoMap(t_IoMap *p_IoMap) +{ + uint32_t intFlags; + + intFlags = XX_DisableAllIntr(); + LIST_AddToTail(&p_IoMap->node, &mapsList); + XX_RestoreAllIntr(intFlags); +} + +static t_IoMap * FindIoMapByVirtAddr(uint64_t addr) +{ + t_IoMap *p_IoMap; + t_List *p_Pos; + + LIST_FOR_EACH(p_Pos, &mapsList) + { + p_IoMap = IOMAP_OBJECT(p_Pos); + if ((addr >= p_IoMap->virtAddr) && (addr < p_IoMap->virtAddr+p_IoMap->size)) + return p_IoMap; + } + + return NULL; +} + +static t_IoMap * FindIoMapByPhysAddr(uint64_t addr) +{ + t_IoMap *p_IoMap; + t_List *p_Pos; + + LIST_FOR_EACH(p_Pos, &mapsList) + { + p_IoMap = IOMAP_OBJECT(p_Pos); + if ((addr >= p_IoMap->physAddr) && (addr < p_IoMap->physAddr+p_IoMap->size)) + return p_IoMap; + } + + return NULL; +} + +t_Error SYS_RegisterIoMap (uint64_t virtAddr, uint64_t physAddr, uint32_t size) +{ + t_IoMap *p_IoMap; + + p_IoMap = (t_IoMap*)XX_Malloc(sizeof(t_IoMap)); + if (!p_IoMap) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("message handler object!!!")); + memset(p_IoMap, 0, sizeof(t_IoMap)); + + p_IoMap->virtAddr = virtAddr; + p_IoMap->physAddr = physAddr; + p_IoMap->size = size; + + INIT_LIST(&p_IoMap->node); + EnqueueIoMap(p_IoMap); + + return E_OK; +} + +t_Error SYS_UnregisterIoMap (uint64_t virtAddr) +{ + t_IoMap *p_IoMap = FindIoMapByVirtAddr(virtAddr); + if (!p_IoMap) + RETURN_ERROR(MINOR, E_NO_DEVICE, ("message handler not found in list!!!")); + + LIST_Del(&p_IoMap->node); + XX_Free(p_IoMap); + + return E_OK; +} + +uint64_t SYS_PhysToVirt(uint64_t addr) +{ + t_IoMap *p_IoMap = FindIoMapByPhysAddr(addr); + if (p_IoMap) + { + /* This is optimization - put the latest in the list-head - like a cache */ + if (mapsList.p_Next != &p_IoMap->node) + { + uint32_t intFlags = XX_DisableAllIntr(); + LIST_DelAndInit(&p_IoMap->node); + LIST_Add(&p_IoMap->node, &mapsList); + XX_RestoreAllIntr(intFlags); + } + return (uint64_t)(addr - p_IoMap->physAddr + p_IoMap->virtAddr); + } + return PTR_TO_UINT(phys_to_virt((unsigned long)addr)); +} + +uint64_t SYS_VirtToPhys(uint64_t addr) +{ + t_IoMap *p_IoMap; + + if (addr == 0) + return 0; + + p_IoMap = FindIoMapByVirtAddr(addr); + if (p_IoMap) + return (uint64_t)(addr - p_IoMap->virtAddr + p_IoMap->physAddr); + return (uint64_t)virt_to_phys(UINT_TO_PTR(addr)); +} --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/wrapper/Makefile +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/wrapper/Makefile @@ -0,0 +1,18 @@ +# +# Makefile for the Freescale Ethernet controllers +# +EXTRA_CFLAGS += -DVERSION=\"\" +# +#Include netcomm SW specific definitions +include $(srctree)/drivers/net/dpa/NetCommSw/ncsw_config.mk + +EXTRA_CFLAGS += -I$(NCSW_FM_INC) +EXTRA_CFLAGS += -I$(NET_DPA) + +obj-y += fsl-ncsw-PFM.o +obj-$(CONFIG_FSL_FMAN_TEST) += fman_test.o + +fsl-ncsw-PFM-objs := lnxwrp_fm.o lnxwrp_fm_port.o lnxwrp_ioctls_fm.o \ + lnxwrp_sysfs.o lnxwrp_sysfs_fm.o lnxwrp_sysfs_fm_port.o \ + lnxwrp_resources.o +obj-$(CONFIG_COMPAT) += lnxwrp_ioctls_fm_compat.o --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/wrapper/fman_test.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/wrapper/fman_test.c @@ -0,0 +1,1076 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + + @File fman_test.c + + @Author Moti Bar + + @Description FM Linux test + +*/ + +/* Linux Headers ------------------- */ +#include + +#if defined(CONFIG_MODVERSIONS) && !defined(MODVERSIONS) +#define MODVERSIONS +#endif +#ifdef MODVERSIONS +#include +#endif /* MODVERSIONS */ + +#include +#include +#include +#include +#include +#include +#include +#include /*struct qman_fq */ +#include +#include +#include /*for mixed environment */ +#include +#include + +/* NetCommSw Headers --------------- */ +#include "std_ext.h" +#include "error_ext.h" +#include "debug_ext.h" +#include "list_ext.h" +#include "fm_ext.h" + +#include "fm_test_ioctls.h" +#include "fsl_fman.h" +#include "fsl_fman_test.h" +#include "fm_port_ext.h" + + +#define __ERR_MODULE__ MODULE_FM + +#define FMT_FRM_WATERMARK 0xdeadbeefdeadbeeaLL + +#ifdef CONFIG_COMPAT +/* Define this for KS64b - US32b */ +#define FMAN_TEST_CONFIG_COMPAT +#warning Please make sure you have the right value for FMAN_TEST_CONFIG_COMPAT +#endif + +typedef struct { + ioc_fmt_buff_desc_t buff; + t_List node; +} t_FmTestFrame; + +#define FMT_FRAME_OBJECT(ptr) LIST_OBJECT(ptr, t_FmTestFrame, node) + +typedef struct t_FmTestFq { + struct qman_fq fq_base; + struct list_head list; + void *port; + bool init; +} t_FmTestFq; + +typedef struct { + bool valid; + uint8_t id; + ioc_fmt_port_type portType; + ioc_diag_mode diag; + bool echo; + bool ip_header_manip; + struct fm_port *p_TxPort; + t_Handle h_TxFmPortDev; + struct fm_port *p_RxPort; + t_Handle h_RxFmPortDev; + t_Handle h_Mac; + uint64_t fmPhysBaseAddr; + t_List rxFrmsQ; + + int numOfTxQs; + struct qman_fq *p_TxFqs[8]; +} t_FmTestPort; + +typedef struct { + int major; + t_FmTestPort ports[IOC_FMT_MAX_NUM_OF_PORTS]; + struct class *fm_test_class; +} t_FmTest; + + +static t_FmTest fmTest; + + +static t_Error Set1GMacIntLoopback(t_FmTestPort *p_FmTestPort, bool en) +{ +#define FM_1GMAC0_OFFSET 0x000e0000 +#define FM_1GMAC_CMD_CONF_CTRL_OFFSET 0x100 +#define MACCFG1_LOOPBACK 0x00000100 + + uint64_t baseAddr, regAddr; + uint32_t tmpVal; + + baseAddr = p_FmTestPort->fmPhysBaseAddr + (FM_1GMAC0_OFFSET + (p_FmTestPort->id*0x2000)); + + baseAddr = PTR_TO_UINT(ioremap(baseAddr, 0x1000)); + + regAddr = baseAddr + FM_1GMAC_CMD_CONF_CTRL_OFFSET; + tmpVal = GET_UINT32(*((uint32_t *)UINT_TO_PTR(regAddr))); + if (en) + tmpVal |= MACCFG1_LOOPBACK; + else + tmpVal &= ~MACCFG1_LOOPBACK; + WRITE_UINT32(*((uint32_t *)UINT_TO_PTR(regAddr)), tmpVal); + + iounmap(UINT_TO_PTR(baseAddr)); + + return E_OK; +} + +#ifndef FM_10G_MAC_NO_CTRL_LOOPBACK +static t_Error Set10GMacIntLoopback(t_FmTestPort *p_FmTestPort, bool en) +{ +#define FM_10GMAC0_OFFSET 0x000f0000 +#define FM_10GMAC_CMD_CONF_CTRL_OFFSET 0x8 +#define CMD_CFG_LOOPBACK_EN 0x00000400 + + uint64_t baseAddr, regAddr; + uint32_t tmpVal; + + baseAddr = p_FmTestPort->fmPhysBaseAddr + (FM_10GMAC0_OFFSET + ((p_FmTestPort->id-FM_MAX_NUM_OF_1G_RX_PORTS)*0x2000)); + + baseAddr = PTR_TO_UINT(ioremap(baseAddr, 0x1000)); + + regAddr = baseAddr + FM_10GMAC_CMD_CONF_CTRL_OFFSET; + tmpVal = GET_UINT32(*((uint32_t *)UINT_TO_PTR(regAddr))); + if (en) + tmpVal |= CMD_CFG_LOOPBACK_EN; + else + tmpVal &= ~CMD_CFG_LOOPBACK_EN; + WRITE_UINT32(*((uint32_t *)UINT_TO_PTR(regAddr)), tmpVal); + + iounmap(UINT_TO_PTR(baseAddr)); + + return E_OK; +} +#endif /* !FM_10G_MAC_NO_CTRL_LOOPBACK */ + +static t_Error SetMacIntLoopback(t_FmTestPort *p_FmTestPort, bool en) +{ + + if (p_FmTestPort->portType == e_IOC_FMT_PORT_T_RXTX) + { + if (p_FmTestPort->id < FM_MAX_NUM_OF_1G_RX_PORTS) + return Set1GMacIntLoopback(p_FmTestPort, en); + else if ((p_FmTestPort->id >= FM_MAX_NUM_OF_1G_RX_PORTS) && (p_FmTestPort->id < FM_MAX_NUM_OF_1G_RX_PORTS + FM_MAX_NUM_OF_10G_RX_PORTS)) +#ifndef FM_10G_MAC_NO_CTRL_LOOPBACK + return Set10GMacIntLoopback(p_FmTestPort, en); +#else + RETURN_ERROR(MINOR, E_NOT_SUPPORTED, ("TGEC don't have internal-loopback")); +#endif /* !FM_10G_MAC_NO_CTRL_LOOPBACK */ + } + else if (p_FmTestPort->portType == e_IOC_FMT_PORT_T_OP) + return E_OK; /* no Mac loopback can be set on OH ports */ + else + RETURN_ERROR(MINOR, E_INVALID_VALUE, ("fm-port-test id!")); + RETURN_ERROR(MINOR, E_INVALID_STATE, NO_MSG); +} + +static void EnqueueFrameToRxQ(t_FmTestPort *p_FmTestPort, t_FmTestFrame *p_FmTestFrame) +{ + uint32_t intFlags; + + intFlags = XX_DisableAllIntr(); + LIST_AddToTail(&p_FmTestFrame->node, &p_FmTestPort->rxFrmsQ); + XX_RestoreAllIntr(intFlags); +} + +static t_FmTestFrame * DequeueFrameFromRxQ(t_FmTestPort *p_FmTestPort) +{ + t_FmTestFrame *p_FmTestFrame = NULL; + uint32_t intFlags; + + intFlags = XX_DisableAllIntr(); + if (!LIST_IsEmpty(&p_FmTestPort->rxFrmsQ)) + { + p_FmTestFrame = FMT_FRAME_OBJECT(p_FmTestPort->rxFrmsQ.p_Next); + LIST_DelAndInit(&p_FmTestFrame->node); + } + XX_RestoreAllIntr(intFlags); + + return p_FmTestFrame; +} + +static enum qman_cb_dqrr_result egress_dqrr(struct qman_portal *portal, + struct qman_fq *fq, + const struct qm_dqrr_entry *dq) +{ + WARN(1, "FMD: failure at %s:%d/%s()!\n", __FILE__, __LINE__, __func__); + return qman_cb_dqrr_consume; +} + +static void egress_ern(struct qman_portal *portal, + struct qman_fq *fq, + const struct qm_mr_entry *msg) +{ + WARN(1, "FMD: failure at %s:%d/%s()!\n", __FILE__, __LINE__, __func__); +} + +static struct qman_fq * FqAlloc(t_FmTestPort *p_FmTestPort, + uint32_t fqid, + uint32_t flags, + uint16_t channel, + uint8_t wq) +{ + int _errno; + struct qman_fq *fq = NULL; + t_FmTestFq *p_FmtFq; + struct qm_mcc_initfq initfq; + + p_FmtFq = (t_FmTestFq *)XX_Malloc(sizeof(t_FmTestFq)); + if (!p_FmtFq) { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FQ obj!!!")); + return NULL; + } + + p_FmtFq->fq_base.cb.dqrr = egress_dqrr; + p_FmtFq->fq_base.cb.ern = p_FmtFq->fq_base.cb.dc_ern = p_FmtFq->fq_base.cb.fqs = egress_ern; + p_FmtFq->port = (void *)p_FmTestPort; + if (fqid == 0) { + flags |= QMAN_FQ_FLAG_DYNAMIC_FQID; + flags &= ~QMAN_FQ_FLAG_NO_MODIFY; + } else { + flags &= ~QMAN_FQ_FLAG_DYNAMIC_FQID; + } + + p_FmtFq->init = !(flags & QMAN_FQ_FLAG_NO_MODIFY); + + DBG(TRACE, ("fqid %d, flags 0x%08x, channel %d, wq %d",fqid,flags,channel,wq)); + + _errno = qman_create_fq(fqid, flags, &p_FmtFq->fq_base); + if (unlikely(_errno)) { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FQ obj - qman_new_fq!!!")); + XX_Free(p_FmtFq); + return NULL; + } + fq = &p_FmtFq->fq_base; + + if (p_FmtFq->init) { + initfq.we_mask = QM_INITFQ_WE_DESTWQ; + initfq.fqd.dest.channel = channel; + initfq.fqd.dest.wq = wq; + + _errno = qman_init_fq(fq, QMAN_INITFQ_FLAG_SCHED, &initfq); + if (unlikely(_errno < 0)) { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FQ obj - qman_init_fq!!!")); + qman_destroy_fq(fq, 0); + XX_Free(p_FmtFq); + return NULL; + } + } + + return fq; +} + +static t_Error PortInit (t_FmTestPort *p_FmTestPort, ioc_fmt_port_param_t *p_Params) +{ + struct device_node *fm_node, *fm_port_node; + const uint32_t *uint32_prop; + int _errno=0, lenp; + uint32_t i; + static struct of_device_id fm_node_of_match[] = { + { .compatible = "fsl,fman", }, + { /* end of list */ }, + }; + + INIT_LIST(&p_FmTestPort->rxFrmsQ); + p_FmTestPort->numOfTxQs = p_Params->num_tx_queues; + p_FmTestPort->id = p_Params->fm_port_id; + p_FmTestPort->portType = p_Params->fm_port_type; + p_FmTestPort->diag = e_IOC_DIAG_MODE_NONE; + p_FmTestPort->ip_header_manip = FALSE; + + /* Get all the FM nodes */ + for_each_matching_node(fm_node, fm_node_of_match) { + + uint32_prop = (uint32_t *)of_get_property(fm_node, "cell-index", &lenp); + if (unlikely(uint32_prop == NULL)) { + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("of_get_property(%s, cell-index) failed", fm_node->full_name)); + } + if (WARN_ON(lenp != sizeof(uint32_t))) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("of_get_property(%s, cell-index) invalid", fm_node->full_name)); + if (*uint32_prop == p_Params->fm_id) { + struct resource res; + /* Get the FM address */ + _errno = of_address_to_resource(fm_node, 0, &res); + if (unlikely(_errno < 0)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("of_address_to_resource() = %d", _errno)); + + p_FmTestPort->fmPhysBaseAddr = res.start; + + for_each_child_of_node(fm_node, fm_port_node) { + struct platform_device *of_dev; + + uint32_prop = (uint32_t *)of_get_property(fm_port_node, "cell-index", &lenp); + if (uint32_prop == NULL) + continue; + + if (of_device_is_compatible(fm_port_node, "fsl,fman-port-oh") && + (p_FmTestPort->portType == e_IOC_FMT_PORT_T_OP)) { + if (*uint32_prop == p_FmTestPort->id) + { + of_dev = of_find_device_by_node(fm_port_node); + if (unlikely(of_dev == NULL)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("fm id!")); + p_FmTestPort->p_TxPort = fm_port_bind(&of_dev->dev); + p_FmTestPort->h_TxFmPortDev = (t_Handle)fm_port_get_handle(p_FmTestPort->p_TxPort); + p_FmTestPort->h_RxFmPortDev = p_FmTestPort->h_TxFmPortDev; + p_FmTestPort->h_Mac = NULL; + break; + } + } + else if ((*uint32_prop == p_FmTestPort->id) && + p_FmTestPort->portType == e_IOC_FMT_PORT_T_RXTX) { + of_dev = of_find_device_by_node(fm_port_node); + if (unlikely(of_dev == NULL)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("fm id!")); + if(of_device_is_compatible(fm_port_node, "fsl,fman-port-1g-tx")) + { + p_FmTestPort->p_TxPort = fm_port_bind(&of_dev->dev); + p_FmTestPort->h_TxFmPortDev = (t_Handle)fm_port_get_handle(p_FmTestPort->p_TxPort); + } + else if(of_device_is_compatible(fm_port_node, "fsl,fman-port-1g-rx")) + { + p_FmTestPort->p_RxPort = fm_port_bind(&of_dev->dev); + p_FmTestPort->h_RxFmPortDev = (t_Handle)fm_port_get_handle(p_FmTestPort->p_RxPort); + } + else if (of_device_is_compatible(fm_port_node, "fsl,fman-1g-mac")) + p_FmTestPort->h_Mac = (typeof(p_FmTestPort->h_Mac))dev_get_drvdata(&of_dev->dev); + else + continue; + if(p_FmTestPort->h_TxFmPortDev && p_FmTestPort->h_RxFmPortDev && p_FmTestPort->h_Mac) + break; + } + else if (((*uint32_prop + FM_MAX_NUM_OF_1G_RX_PORTS )== p_FmTestPort->id) && + p_FmTestPort->portType == e_IOC_FMT_PORT_T_RXTX) { + of_dev = of_find_device_by_node(fm_port_node); + if (unlikely(of_dev == NULL)) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("fm id!")); + if(of_device_is_compatible(fm_port_node, "fsl,fman-port-10g-tx")) + { + p_FmTestPort->p_TxPort = fm_port_bind(&of_dev->dev); + p_FmTestPort->h_TxFmPortDev = (t_Handle)fm_port_get_handle(p_FmTestPort->p_TxPort); + } + else if(of_device_is_compatible(fm_port_node, "fsl,fman-port-10g-rx")) + { + p_FmTestPort->p_RxPort = fm_port_bind(&of_dev->dev); + p_FmTestPort->h_RxFmPortDev = (t_Handle)fm_port_get_handle(p_FmTestPort->p_RxPort); + } + else if (of_device_is_compatible(fm_port_node, "fsl,fman-10g-mac")) + p_FmTestPort->h_Mac = (typeof(p_FmTestPort->h_Mac))dev_get_drvdata(&of_dev->dev); + else + continue; + if(p_FmTestPort->h_TxFmPortDev && p_FmTestPort->h_RxFmPortDev && p_FmTestPort->h_Mac) + break; + } + } //for_each_child + } + } //for each matching node + + DBG(TRACE, ("h_TxFmPortDev - 0x%08x, h_RxFmPortDev - 0x%08x, h_Mac - 0x%08x\n", + p_FmTestPort->h_TxFmPortDev,p_FmTestPort->h_RxFmPortDev,p_FmTestPort->h_Mac)); + + if(p_FmTestPort->h_TxFmPortDev == 0 || p_FmTestPort->h_RxFmPortDev == 0) + RETURN_ERROR(MINOR, E_INVALID_ADDRESS, ("Bad pointers!")); + + //init Queues + for (i=0; inumOfTxQs; i++) { + p_FmTestPort->p_TxFqs[i] = + FqAlloc(p_FmTestPort, + 0, + QMAN_FQ_FLAG_TO_DCPORTAL, + fm_get_tx_port_channel(p_FmTestPort->p_TxPort), + i); + if (IS_ERR(p_FmTestPort->p_TxFqs[i])) + RETURN_ERROR(MAJOR, E_INVALID_HANDLE, ("Tx FQs!")); + } + + p_FmTestPort->valid = TRUE; + + return E_OK; +} + + +bool is_fman_test (void *mac_dev, + uint32_t queueId, + uint8_t *buffer, + uint32_t size) +{ + t_FmTest *p_FmTest = &fmTest; + t_FmTestPort *p_FmTestPort=NULL; + t_FmTestFrame *p_FmTestFrame; + uint32_t count=size-7; + uint64_t temp; + uint8_t *temp_buf=buffer, i; + bool fman_test_flag = false; + uint32_t dataOffset; + struct fm_port *fm_port = (struct fm_port *) mac_dev; + +#if 0 + if ((queueId == FMT_TX_CONF_Q) || (queueId == FMT_TX_ERR_Q)) + { + /* Check for the FM-test-port object existence, otherwise we make wrong frees all the time */ + for (i=0; iports[i].h_Mac) + p_FmTestPort = &p_FmTest->ports[i]; + if (!p_FmTestPort) + return false; + + if (buffer != NULL) + XX_Free(buffer); + return true; + } +#endif + + /* Get the FM-test-port object */ + for (i=0; iports[i].h_Mac && mac_dev == p_FmTest->ports[i].h_Mac) || + fm_port == p_FmTest->ports[i].p_TxPort) + { + p_FmTestPort = &p_FmTest->ports[i]; + break; + } + if (!p_FmTestPort) + return false; + + /* Check according to watermark if this frame is for FM-test */ + while(count--) + { + temp = *(uint64_t *)temp_buf; + if (temp == FMT_FRM_WATERMARK) + { + fman_test_flag = true; + break; + } + temp_buf++; + } + + if (fman_test_flag /*|| p_FmTestPort->echo*/) + { + if ((queueId == FMT_TX_CONF_Q) || (queueId == FMT_TX_ERR_Q)) + { + if (buffer != NULL) + XX_Free(buffer); + return true; + } + + DBG(TRACE, ("Port %d got FMUC frame\n", p_FmTestPort->id)); + dataOffset = FM_PORT_GetBufferDataOffset(p_FmTestPort->h_RxFmPortDev); + + p_FmTestFrame = (t_FmTestFrame *)XX_Malloc(sizeof(t_FmTestFrame)); + /* dump frame... no more space left on device */ + if(p_FmTestFrame == NULL) + return false; + + memset(p_FmTestFrame, 0, sizeof(t_FmTestFrame)); + INIT_LIST(&p_FmTestFrame->node); + + p_FmTestFrame->buff.p_data = (uint8_t *)XX_Malloc(size * sizeof(uint8_t)); + /* No more space left on device*/ + if(p_FmTestFrame->buff.p_data == NULL){ + XX_Free(p_FmTestFrame); + return false; + } + + p_FmTestFrame->buff.size = size-dataOffset; + p_FmTestFrame->buff.qid = queueId; + + memcpy(p_FmTestFrame->buff.p_data, + (uint8_t *)PTR_MOVE(buffer, dataOffset), + p_FmTestFrame->buff.size); + + memcpy(p_FmTestFrame->buff.buff_context.fm_prs_res, + FM_PORT_GetBufferPrsResult(p_FmTestPort->h_RxFmPortDev, (char*)buffer), + 32); + + EnqueueFrameToRxQ(p_FmTestPort, p_FmTestFrame); + return true; + } + + return false; +} + +void fman_test_ip_manip (void *mac_dev, uint8_t *data) +{ + t_FmTest *p_FmTest = &fmTest; + t_FmTestPort *p_FmTestPort=NULL; + struct iphdr *iph; + uint32_t *p_Data = (uint32_t *)data; + uint32_t net; + uint32_t saddr, daddr; + uint8_t i; + + /* Get the FM-test-port object */ + for (i=0; iports[i].h_Mac) + p_FmTestPort = &p_FmTest->ports[i]; + if (!p_FmTestPort || !p_FmTestPort->ip_header_manip) + return; + + iph = (struct iphdr *)p_Data; + saddr = iph->saddr; + daddr = iph->daddr; + + /* If it is ARP packet ... */ + if (*p_Data == 0x00010800) + { + saddr = *((uint32_t *)PTR_MOVE(p_Data, 14)); + daddr = *((uint32_t *)PTR_MOVE(p_Data, 24)); + } + + DBG(TRACE, + ("\nSrc IP before header-manipulation: %d.%d.%d.%d" + "\nDest IP before header-manipulation: %d.%d.%d.%d", + (int)((saddr & 0xff000000) >> 24), + (int)((saddr & 0x00ff0000) >> 16), + (int)((saddr & 0x0000ff00) >> 8), + (int)((saddr & 0x000000ff) >> 0), + (int)((daddr & 0xff000000) >> 24), + (int)((daddr & 0x00ff0000) >> 16), + (int)((daddr & 0x0000ff00) >> 8), + (int)((daddr & 0x000000ff) >> 0))); + + if ((p_FmTestPort->diag == e_IOC_DIAG_MODE_CTRL_LOOPBACK) || + (p_FmTestPort->diag == e_IOC_DIAG_MODE_CHIP_LOOPBACK) || + (p_FmTestPort->diag == e_IOC_DIAG_MODE_PHY_LOOPBACK) || + (p_FmTestPort->diag == e_IOC_DIAG_MODE_LINE_LOOPBACK)) + { + net = saddr; + saddr = daddr; + daddr = net; + } + else + { + /* We allow only up to 10 eth ports */ + net = ((daddr & 0x000000ff) % 10); + saddr = (uint32_t)((saddr & ~0x0000ff00) | (net << 8)); + daddr = (uint32_t)((daddr & ~0x0000ff00) | (net << 8)); + } + + /* If not ARP ... */ + if (*p_Data != 0x00010800) + { + iph->check = 0; + + iph->saddr = saddr; + iph->daddr = daddr; + iph->check = ip_fast_csum((unsigned char *)iph, iph->ihl); + } + else /* The packet is ARP */ + { + *((uint32_t *)PTR_MOVE(p_Data, 14)) = saddr; + *((uint32_t *)PTR_MOVE(p_Data, 24)) = daddr; + } + + DBG(TRACE, + ("\nSrc IP after header-manipulation: %d.%d.%d.%d" + "\nDest IP after header-manipulation: %d.%d.%d.%d", + (int)((saddr & 0xff000000) >> 24), + (int)((saddr & 0x00ff0000) >> 16), + (int)((saddr & 0x0000ff00) >> 8), + (int)((saddr & 0x000000ff) >> 0), + (int)((daddr & 0xff000000) >> 24), + (int)((daddr & 0x00ff0000) >> 16), + (int)((daddr & 0x0000ff00) >> 8), + (int)((daddr & 0x000000ff) >> 0))); +} + + +/*****************************************************************************/ +/* API routines for the FM Linux Device */ +/*****************************************************************************/ + +static int fm_test_open(struct inode *inode, struct file *file) +{ + t_FmTest *p_FmTest = &fmTest; + //unsigned int major = imajor(inode); + unsigned int minor = iminor(inode); + + DBG(TRACE, ("Opening minor - %d - ", minor)); + + if (file->private_data != NULL) + return 0; + + if ((minor >= DEV_FM_TEST_PORTS_MINOR_BASE) && + (minor < DEV_FM_TEST_MAX_MINORS)) + file->private_data = &p_FmTest->ports[minor]; + else + return -ENXIO; + + return 0; +} + +static int fm_test_close(struct inode *inode, struct file *file) +{ + t_FmTestPort *p_FmTestPort; + unsigned int minor = iminor(inode); + int err = 0; + + DBG(TRACE, ("Closing minor - %d - ", minor)); + + p_FmTestPort = file->private_data; + if (!p_FmTestPort) + return -ENODEV; + + p_FmTestPort->valid = FALSE; + + /* Complete!!! */ + return err; +} + +static int fm_test_ioctls(unsigned int minor, struct file *file, unsigned int cmd, unsigned long arg, bool compat) +{ + t_FmTestPort *p_FmTestPort; + + DBG(TRACE, ("IOCTL minor - %d, cmd - 0x%08x, arg - 0x%08x", minor, cmd, arg)); + + p_FmTestPort = file->private_data; + if (!p_FmTestPort) + return -ENODEV; + + switch (cmd) + { + case FMT_PORT_IOC_INIT: + { + ioc_fmt_port_param_t param; + + if (p_FmTestPort->valid) { + REPORT_ERROR(MINOR, E_INVALID_STATE, ("port is already initialized!!!")); + return -EFAULT; + } +#if defined(FMAN_TEST_CONFIG_COMPAT) + if (compat){ + if (copy_from_user(¶m, (ioc_fmt_port_param_t *)compat_ptr(arg), sizeof(ioc_fmt_port_param_t))) { + REPORT_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + return -EFAULT; + } + } +#endif + else{ + if (copy_from_user(¶m, (ioc_fmt_port_param_t *) arg, sizeof(ioc_fmt_port_param_t))) { + REPORT_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + return -EFAULT; + } + } + + return PortInit(p_FmTestPort, ¶m); + } + + case FMT_PORT_IOC_SET_DIAG_MODE: + { + if (get_user(p_FmTestPort->diag, (ioc_diag_mode *)arg)) { + REPORT_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + return -EFAULT; + } + + if (p_FmTestPort->diag == e_IOC_DIAG_MODE_CTRL_LOOPBACK) + return SetMacIntLoopback(p_FmTestPort, TRUE); + else + return SetMacIntLoopback(p_FmTestPort, FALSE); + break; + } + + case FMT_PORT_IOC_SET_DPAECHO_MODE: + { +#if defined(FMAN_TEST_CONFIG_COMPAT) + if (compat){ + if (get_user(p_FmTestPort->echo, (int *)compat_ptr(arg))) { + REPORT_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + return -EFAULT; + } + } + else +#endif + { + if (get_user(p_FmTestPort->echo, (int *)arg)) { + REPORT_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + return -EFAULT; + } + } + break; + } + + case FMT_PORT_IOC_SET_IP_HEADER_MANIP: + { +#if defined(FMAN_TEST_CONFIG_COMPAT) + if (compat){ + if (get_user(p_FmTestPort->ip_header_manip, (int *)compat_ptr(arg))) { + REPORT_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + return -EFAULT; + } + } + else +#endif + { + if (get_user(p_FmTestPort->ip_header_manip, (int *)arg)) { + REPORT_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + return -EFAULT; + } + } + break; + } + + default: + REPORT_ERROR(MINOR, E_INVALID_SELECTION, ("IOCTL TEST cmd (0x%08lx):(0x%02lx:0x%02lx)!", cmd, _IOC_TYPE(cmd), _IOC_NR(cmd))); + return -EFAULT; + } + + return 0; +} + +#ifdef FMAN_TEST_CONFIG_COMPAT +static long fm_test_compat_ioctl(struct file *file, unsigned int cmd, unsigned long arg) +{ + unsigned int minor = iminor(file->f_path.dentry->d_inode); + + return fm_test_ioctls(minor, file, cmd, arg, true); +} +#endif + +static long fm_test_ioctl(struct file *file, unsigned int cmd, unsigned long arg) +{ + unsigned int minor = iminor(file->f_path.dentry->d_inode); + unsigned int res; + + fm_mutex_lock(); + res = fm_test_ioctls(minor, file, cmd, arg, false); + fm_mutex_unlock(); + + return res; +} + +#ifdef FMAN_TEST_CONFIG_COMPAT +void copy_compat_test_frame_buffer(ioc_fmt_buff_desc_t *buff, ioc_fmt_compat_buff_desc_t *compat_buff) +{ + compat_buff->qid = buff->qid; + compat_buff->p_data = ptr_to_compat(buff->p_data); + compat_buff->size = buff->size; + compat_buff->status = buff->status; + + compat_buff->buff_context.p_user_priv = ptr_to_compat(buff->buff_context.p_user_priv); + memcpy(compat_buff->buff_context.fm_prs_res,buff->buff_context.fm_prs_res,FM_PRS_MAX * sizeof(uint8_t)); + memcpy(compat_buff->buff_context.fm_time_stamp,buff->buff_context.fm_time_stamp,FM_TIME_STAMP_MAX * sizeof(uint8_t)); +} +#endif + +ssize_t fm_test_read (struct file *file, char __user *buf, size_t size, loff_t *ppos) +{ + t_FmTestPort *p_FmTestPort; + t_FmTestFrame *p_FmTestFrame; + ssize_t cnt = 0; + + p_FmTestPort = file->private_data; + if (!p_FmTestPort || !p_FmTestPort->valid) + return -ENODEV; + + p_FmTestFrame = DequeueFrameFromRxQ(p_FmTestPort); + if (!p_FmTestFrame) + return 0; + + if (!p_FmTestPort->echo) { +#ifdef FMAN_TEST_CONFIG_COMPAT + cnt = sizeof(ioc_fmt_compat_buff_desc_t); +#else + cnt = sizeof(ioc_fmt_buff_desc_t); +#endif + if (sizebuff.p_data); + XX_Free(p_FmTestFrame); + REPORT_ERROR(MINOR, E_NO_MEMORY, ("Illegal buffer-size!")); + return 0; + } + + /* Copy structure */ +#ifdef FMAN_TEST_CONFIG_COMPAT + { + ioc_fmt_compat_buff_desc_t compat_buff; + copy_compat_test_frame_buffer(&p_FmTestFrame->buff, &compat_buff); + + if (copy_to_user(buf, &compat_buff, cnt)) { + XX_Free(p_FmTestFrame->buff.p_data); + XX_Free(p_FmTestFrame); + REPORT_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + return 0; + } + } + + ((ioc_fmt_compat_buff_desc_t *)buf)->p_data = ptr_to_compat(buf+sizeof(ioc_fmt_compat_buff_desc_t)); + cnt += MIN(p_FmTestFrame->buff.size, size-cnt); +#else + if (copy_to_user(buf, &p_FmTestFrame->buff, cnt)) { + XX_Free(p_FmTestFrame->buff.p_data); + XX_Free(p_FmTestFrame); + REPORT_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + return 0; + } + + ((ioc_fmt_buff_desc_t *)buf)->p_data = buf+sizeof(ioc_fmt_buff_desc_t); + cnt += MIN(p_FmTestFrame->buff.size, size-cnt); +#endif + + if (sizebuff.p_data); + XX_Free(p_FmTestFrame); + REPORT_ERROR(MINOR, E_NO_MEMORY, ("Illegal buffer-size!")); + return 0; + } + + /* copy frame */ +#ifdef FMAN_TEST_CONFIG_COMPAT + if (copy_to_user(buf+sizeof(ioc_fmt_compat_buff_desc_t), p_FmTestFrame->buff.p_data, cnt)) { + XX_Free(p_FmTestFrame->buff.p_data); + XX_Free(p_FmTestFrame); + REPORT_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + return 0; + } +#else + if (copy_to_user(buf+sizeof(ioc_fmt_buff_desc_t), p_FmTestFrame->buff.p_data, cnt)) { + XX_Free(p_FmTestFrame->buff.p_data); + XX_Free(p_FmTestFrame); + REPORT_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + return 0; + } +#endif + + XX_Free(p_FmTestFrame->buff.p_data); + XX_Free(p_FmTestFrame); + } + else { + uint8_t *p_Data = NULL; + uint32_t frameSize =0; + t_DpaaFD fd; + int _errno = 0; + + p_Data = (uint8_t *)p_FmTestFrame->buff.p_data; + frameSize = p_FmTestFrame->buff.size; + + /* paranoia ...*/ + if(!p_Data){ + XX_Free(p_FmTestFrame); + return 0; + } + + /* Set frame descriptor... */ + memset(&fd, 0, sizeof(fd)); + DPAA_FD_SET_ADDR(&fd, p_Data); + DPAA_FD_SET_OFFSET(&fd, 0); + DPAA_FD_SET_LENGTH(&fd, frameSize); + + /* Enqueue frame... */ + _errno = qman_enqueue(p_FmTestPort->p_TxFqs[0], (struct qm_fd*)&fd, 0); + if (_errno) { + XX_Free(p_FmTestFrame); + XX_Free(p_Data); + return 0; + } + + XX_Free(p_FmTestFrame); + } + + return cnt; +} + +ssize_t fm_test_write (struct file *file, const char __user *buf, size_t size, loff_t *ppos) +{ + t_FmTestPort *p_FmTestPort; + + ioc_fmt_buff_desc_t buffDesc; +#ifdef FMAN_TEST_CONFIG_COMPAT + ioc_fmt_compat_buff_desc_t compatBuffDesc; +#endif + t_DpaaFD fd; + uint8_t *p_Data; + uint32_t dataOffset; + int _errno; + + p_FmTestPort = file->private_data; + if (!p_FmTestPort || !p_FmTestPort->valid) { + REPORT_ERROR(MINOR, E_INVALID_HANDLE, NO_MSG); + return -1; + } + + /* If Compat (32B UserSpace - 64B KernelSpace) */ +#ifdef FMAN_TEST_CONFIG_COMPAT + if (copy_from_user(&compatBuffDesc, buf, sizeof(ioc_fmt_compat_buff_desc_t))) { + REPORT_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + return -1; + } + + buffDesc.qid = compatBuffDesc.qid; + buffDesc.p_data = compat_ptr(compatBuffDesc.p_data); + buffDesc.size = compatBuffDesc.size; + buffDesc.status = compatBuffDesc.status; + + buffDesc.buff_context.p_user_priv = compat_ptr(compatBuffDesc.buff_context.p_user_priv); + memcpy(buffDesc.buff_context.fm_prs_res, compatBuffDesc.buff_context.fm_prs_res, FM_PRS_MAX * sizeof(uint8_t)); + memcpy(buffDesc.buff_context.fm_time_stamp, compatBuffDesc.buff_context.fm_time_stamp, FM_TIME_STAMP_MAX * sizeof(uint8_t)); +#else + if (copy_from_user(&buffDesc, (ioc_fmt_buff_desc_t *)buf, sizeof(ioc_fmt_buff_desc_t))) { + REPORT_ERROR(MINOR, E_INVALID_STATE, NO_MSG); + return -1; + } +#endif + + dataOffset = FM_PORT_GetBufferDataOffset(p_FmTestPort->h_TxFmPortDev); + p_Data = (uint8_t*)XX_Malloc(buffDesc.size+dataOffset); + if (!p_Data) { + REPORT_ERROR(MINOR, E_NO_MEMORY, ("data buff!")); + return -1; + } + + /* If Compat (32UserSpace - 64KernelSpace) the buffDesc.p_data is ok */ + if (copy_from_user ((uint8_t *)PTR_MOVE(p_Data, dataOffset), + buffDesc.p_data, + buffDesc.size)) { + REPORT_ERROR(MINOR, E_NO_MEMORY, ("data buff!")); + XX_Free(p_Data); + return -1; + } + + memset(&fd, 0, sizeof(fd)); + DPAA_FD_SET_ADDR(&fd, p_Data); + DPAA_FD_SET_OFFSET(&fd, dataOffset); + DPAA_FD_SET_LENGTH(&fd, buffDesc.size); + + DBG(TRACE, ("buffDesc qId %d, fqid %d, frame len %d, fq 0x%8x\n", + buffDesc.qid, qman_fq_fqid(p_FmTestPort->p_TxFqs[buffDesc.qid]), buffDesc.size, p_FmTestPort->p_TxFqs[buffDesc.qid])); + + _errno = qman_enqueue(p_FmTestPort->p_TxFqs[buffDesc.qid], (struct qm_fd*)&fd, 0); + if (_errno) { + buffDesc.status = (uint32_t)_errno; + if (copy_to_user((ioc_fmt_buff_desc_t*)buf, &buffDesc, sizeof(ioc_fmt_buff_desc_t))) { + REPORT_ERROR(MINOR, E_WRITE_FAILED, NO_MSG); + XX_Free(p_Data); + return -1; + } + } + return buffDesc.size; +} + +/* Globals for FM character device */ +static struct file_operations fm_test_fops = +{ + owner: THIS_MODULE, +#ifdef FMAN_TEST_CONFIG_COMPAT + compat_ioctl:fm_test_compat_ioctl, +#endif + unlocked_ioctl: fm_test_ioctl, + open: fm_test_open, + release: fm_test_close, + read: fm_test_read, + write: fm_test_write, +}; + +t_Handle LNXWRP_FM_TEST_Init(void) +{ + t_FmTest *p_FmTest = &fmTest; + int id; + + /* Register to the /dev for IOCTL API */ + /* Register dynamically a new major number for the character device: */ + if ((p_FmTest->major = register_chrdev(0, DEV_FM_TEST_NAME, &fm_test_fops)) <= 0) + { + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("Failed to allocate a major number for device \"%s\"", DEV_FM_TEST_NAME)); + return NULL; + } + + /* Creating class for FMan_test */ + DBG(TRACE ,("class_create fm_test_class")); + p_FmTest->fm_test_class = class_create(THIS_MODULE, DEV_FM_TEST_NAME); + if (IS_ERR(p_FmTest->fm_test_class)) { + unregister_chrdev(p_FmTest->major, DEV_FM_TEST_NAME); + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("class_create error fm_test_class")); + return NULL; + } + + for (id = 0; id < IOC_FMT_MAX_NUM_OF_PORTS; id++) + if(NULL == device_create(p_FmTest->fm_test_class, NULL, MKDEV(p_FmTest->major, DEV_FM_TEST_PORTS_MINOR_BASE + id), NULL, + DEV_FM_TEST_NAME "%d", id)) + { + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("Error creating device.\n")); + return NULL; + } + + /* Seed the QMan allocator so we'll have enough queues to run PCD with + dinamically fqid-range allocation */ + qman_release_fqid_range(0x100, 0x400); + + return p_FmTest; +} + +t_Error LNXWRP_FM_TEST_Free(t_Handle h_FmTestLnxWrp) +{ + t_FmTest *p_FmTest = (t_FmTest*)h_FmTestLnxWrp; + int id; + + DBG(TRACE, ("destroy fm_test_class")); + for (id = 0; id < IOC_FMT_MAX_NUM_OF_PORTS; id++) + device_destroy(p_FmTest->fm_test_class, MKDEV(p_FmTest->major, DEV_FM_TEST_PORTS_MINOR_BASE + id)); + class_destroy(p_FmTest->fm_test_class); + + return E_OK; +} + +static t_Handle h_FmTestLnxWrp; + +static int __init __cold fm_test_load (void) +{ + if ((h_FmTestLnxWrp = LNXWRP_FM_TEST_Init()) == NULL) + { + printk("Failed to init FM-test wrapper!\n"); + if (h_FmTestLnxWrp) + LNXWRP_FM_TEST_Free(h_FmTestLnxWrp); + return -ENODEV; + } + + printk (KERN_CRIT "Freescale FM test module ("__DATE__ ":"__TIME__")\n"); + + return 0; +} + +static void __exit __cold fm_test_unload (void) +{ + if (h_FmTestLnxWrp) + LNXWRP_FM_TEST_Free(h_FmTestLnxWrp); +} + +module_init (fm_test_load); +module_exit (fm_test_unload); --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_fm.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_fm.c @@ -0,0 +1,1204 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + + @File lnxwrp_fm.c + + @Author Shlomi Gridish + + @Description FM Linux wrapper functions. + +*/ + +#include +#include +#if defined(CONFIG_MODVERSIONS) && !defined(MODVERSIONS) +#define MODVERSIONS +#endif +#ifdef MODVERSIONS +#include +#endif /* MODVERSIONS */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include /* For struct qe_firmware */ +#include +#include /* For file access mask */ +#include +#include +#include + +/* NetCommSw Headers --------------- */ +#include "std_ext.h" +#include "error_ext.h" +#include "sprint_ext.h" +#include "debug_ext.h" +#include "sys_io_ext.h" + +#include "fm_ioctls.h" + +#include "lnxwrp_fm.h" +#include "lnxwrp_resources.h" +#include "lnxwrp_sysfs_fm.h" +#include "lnxwrp_sysfs_fm_port.h" + +#define PROC_PRINT(args...) offset += sprintf(buf+offset,args) + +#define ADD_ADV_CONFIG_NO_RET(_func, _param) \ + do { \ + if (ip_Function = _func; \ + _param \ + i++; \ + } \ + else \ + REPORT_ERROR(MAJOR, E_INVALID_VALUE,\ + ("Number of advanced-configuration entries exceeded"));\ + } while (0) + +static t_LnxWrpFm lnxWrpFm; + + +static irqreturn_t fm_irq(int irq, void *_dev) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = (t_LnxWrpFmDev *)_dev; + + if (!p_LnxWrpFmDev || !p_LnxWrpFmDev->h_Dev) + return IRQ_NONE; + + FM_EventIsr(p_LnxWrpFmDev->h_Dev); + + return IRQ_HANDLED; +} + +static irqreturn_t fm_err_irq(int irq, void *_dev) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = (t_LnxWrpFmDev *)_dev; + + if (!p_LnxWrpFmDev || !p_LnxWrpFmDev->h_Dev) + return IRQ_NONE; + + if (FM_ErrorIsr(p_LnxWrpFmDev->h_Dev) == E_OK) + return IRQ_HANDLED; + + return IRQ_NONE; +} + +/* used to protect FMD/LLD from concurrent calls in functions fm_mutex_lock / fm_mutex_unlock */ +static struct mutex lnxwrp_mutex; + +static t_LnxWrpFmDev * CreateFmDev(uint8_t id) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev; + int j; + + p_LnxWrpFmDev = (t_LnxWrpFmDev *)XX_Malloc(sizeof(t_LnxWrpFmDev)); + if (!p_LnxWrpFmDev) + { + REPORT_ERROR(MAJOR, E_NO_MEMORY, NO_MSG); + return NULL; + } + + memset(p_LnxWrpFmDev, 0, sizeof(t_LnxWrpFmDev)); + p_LnxWrpFmDev->fmDevSettings.advConfig = (t_SysObjectAdvConfigEntry*)XX_Malloc(FM_MAX_NUM_OF_ADV_SETTINGS*sizeof(t_SysObjectAdvConfigEntry)); + memset(p_LnxWrpFmDev->fmDevSettings.advConfig, 0, (FM_MAX_NUM_OF_ADV_SETTINGS*sizeof(t_SysObjectAdvConfigEntry))); + p_LnxWrpFmDev->fmPcdDevSettings.advConfig = (t_SysObjectAdvConfigEntry*)XX_Malloc(FM_MAX_NUM_OF_ADV_SETTINGS*sizeof(t_SysObjectAdvConfigEntry)); + memset(p_LnxWrpFmDev->fmPcdDevSettings.advConfig, 0, (FM_MAX_NUM_OF_ADV_SETTINGS*sizeof(t_SysObjectAdvConfigEntry))); + p_LnxWrpFmDev->hcPort.settings.advConfig = (t_SysObjectAdvConfigEntry*)XX_Malloc(FM_MAX_NUM_OF_ADV_SETTINGS*sizeof(t_SysObjectAdvConfigEntry)); + memset(p_LnxWrpFmDev->hcPort.settings.advConfig, 0, (FM_MAX_NUM_OF_ADV_SETTINGS*sizeof(t_SysObjectAdvConfigEntry))); + for (j=0; jrxPorts[j].settings.advConfig = (t_SysObjectAdvConfigEntry*)XX_Malloc(FM_MAX_NUM_OF_ADV_SETTINGS*sizeof(t_SysObjectAdvConfigEntry)); + memset(p_LnxWrpFmDev->rxPorts[j].settings.advConfig, 0, (FM_MAX_NUM_OF_ADV_SETTINGS*sizeof(t_SysObjectAdvConfigEntry))); + } + for (j=0; jtxPorts[j].settings.advConfig = (t_SysObjectAdvConfigEntry*)XX_Malloc(FM_MAX_NUM_OF_ADV_SETTINGS*sizeof(t_SysObjectAdvConfigEntry)); + memset(p_LnxWrpFmDev->txPorts[j].settings.advConfig, 0, (FM_MAX_NUM_OF_ADV_SETTINGS*sizeof(t_SysObjectAdvConfigEntry))); + } + for (j=0; jopPorts[j].settings.advConfig = (t_SysObjectAdvConfigEntry*)XX_Malloc(FM_MAX_NUM_OF_ADV_SETTINGS*sizeof(t_SysObjectAdvConfigEntry)); + memset(p_LnxWrpFmDev->opPorts[j].settings.advConfig, 0, (FM_MAX_NUM_OF_ADV_SETTINGS*sizeof(t_SysObjectAdvConfigEntry))); + } + + return p_LnxWrpFmDev; +} + +static void DestroyFmDev(t_LnxWrpFmDev *p_LnxWrpFmDev) +{ + int j; + + for (j=0; jopPorts[j].settings.advConfig) + XX_Free(p_LnxWrpFmDev->opPorts[j].settings.advConfig); + for (j=0; jtxPorts[j].settings.advConfig) + XX_Free(p_LnxWrpFmDev->txPorts[j].settings.advConfig); + for (j=0; jrxPorts[j].settings.advConfig) + XX_Free(p_LnxWrpFmDev->rxPorts[j].settings.advConfig); + if (p_LnxWrpFmDev->hcPort.settings.advConfig) + XX_Free(p_LnxWrpFmDev->hcPort.settings.advConfig); + if (p_LnxWrpFmDev->fmPcdDevSettings.advConfig) + XX_Free(p_LnxWrpFmDev->fmPcdDevSettings.advConfig); + if (p_LnxWrpFmDev->fmDevSettings.advConfig) + XX_Free(p_LnxWrpFmDev->fmDevSettings.advConfig); + + XX_Free(p_LnxWrpFmDev); +} + +static t_Error FillRestFmInfo(t_LnxWrpFmDev *p_LnxWrpFmDev) +{ +#define FM_BMI_PPIDS_OFFSET 0x00080304 +#define FM_DMA_PLR_OFFSET 0x000c2060 +#define FM_FPM_IP_REV_1_OFFSET 0x000c30c4 +#define DMA_HIGH_LIODN_MASK 0x0FFF0000 +#define DMA_LOW_LIODN_MASK 0x00000FFF +#define DMA_LIODN_SHIFT 16 + +typedef _Packed struct { + uint32_t plr[32]; +} _PackedType t_Plr; + +typedef _Packed struct { + volatile uint32_t fmbm_ppid[63]; +} _PackedType t_Ppids; + + t_Plr *p_Plr; + t_Ppids *p_Ppids; + int i,j; + uint32_t fmRev; + + static const uint8_t phys1GRxPortId[] = {0x8,0x9,0xa,0xb,0xc}; + static const uint8_t phys10GRxPortId[] = {0x10}; + static const uint8_t physOhPortId[] = {0x1,0x2,0x3,0x4,0x5,0x6,0x7}; + static const uint8_t phys1GTxPortId[] = {0x28,0x29,0x2a,0x2b,0x2c}; + static const uint8_t phys10GTxPortId[] = {0x30}; + + fmRev = (uint32_t)(*((volatile uint32_t *)UINT_TO_PTR(p_LnxWrpFmDev->fmBaseAddr+FM_FPM_IP_REV_1_OFFSET))); + fmRev &= 0xffff; + + p_Plr = (t_Plr *)UINT_TO_PTR(p_LnxWrpFmDev->fmBaseAddr+FM_DMA_PLR_OFFSET); +#ifdef MODULE + for (i=0;iplr[i] = 0; +#endif /* MODULE */ + + for (i=0; iplr[i/2] & DMA_LOW_LIODN_MASK) : + ((p_Plr->plr[i/2] & DMA_HIGH_LIODN_MASK) >> DMA_LIODN_SHIFT)); +#ifdef FM_PARTITION_ARRAY + /* TODO: this was .liodnPerPartition[i] = liodnBase; is the index meaning the same? */ + p_LnxWrpFmDev->fmDevSettings.param.liodnBasePerPort[i] = liodnBase; +#endif /* FM_PARTITION_ARRAY */ + + if ((i >= phys1GRxPortId[0]) && + (i <= phys1GRxPortId[FM_MAX_NUM_OF_1G_RX_PORTS-1])) + { + for (j=0; jrxPorts[j].settings.param.liodnBase = liodnBase; + } + else if (FM_MAX_NUM_OF_10G_RX_PORTS && + (i >= phys10GRxPortId[0]) && + (i <= phys10GRxPortId[FM_MAX_NUM_OF_10G_RX_PORTS-1])) + { + for (j=0; jrxPorts[FM_MAX_NUM_OF_1G_RX_PORTS+j].settings.param.liodnBase = liodnBase; + } + else if ((i >= physOhPortId[0]) && + (i <= physOhPortId[FM_MAX_NUM_OF_OH_PORTS-1])) + { + for (j=0; jhcPort.settings.param.liodnBase = liodnBase; + else + p_LnxWrpFmDev->opPorts[j - 1].settings.param.liodnBase = liodnBase; + } + else if ((i >= phys1GTxPortId[0]) && + (i <= phys1GTxPortId[FM_MAX_NUM_OF_1G_TX_PORTS-1])) + { + for (j=0; jtxPorts[j].settings.param.liodnBase = liodnBase; + } + else if (FM_MAX_NUM_OF_10G_TX_PORTS && + (i >= phys10GTxPortId[0]) && + (i <= phys10GTxPortId[FM_MAX_NUM_OF_10G_TX_PORTS-1])) + { + for (j=0; jtxPorts[FM_MAX_NUM_OF_1G_TX_PORTS+j].settings.param.liodnBase = liodnBase; + } + } + + p_Ppids = (t_Ppids *)UINT_TO_PTR(p_LnxWrpFmDev->fmBaseAddr+FM_BMI_PPIDS_OFFSET); + + for (i=0; irxPorts[i].settings.param.specificParams.rxParams.liodnOffset = + p_Ppids->fmbm_ppid[phys1GRxPortId[i]-1]; + + for (i=0; irxPorts[FM_MAX_NUM_OF_1G_RX_PORTS+i].settings.param.specificParams.rxParams.liodnOffset = + p_Ppids->fmbm_ppid[phys10GRxPortId[i]-1]; + +#ifdef FM_OP_PARTITION_ERRATA_FMANx8 + for (i=0; iopPorts[i-1].settings.param.specificParams.nonRxParams.opLiodnOffset = + p_Ppids->fmbm_ppid[physOhPortId[i]-1]; + } +#endif /* FM_OP_PARTITION_ERRATA_FMANx8 */ + + return E_OK; +} + +/* The default address for the Fman microcode in flash. Having a default + * allows older systems to continue functioning. 0xEF000000 is the address + * where the firmware is normally on a P4080DS. + */ +#ifdef CONFIG_PHYS_64BIT +static phys_addr_t P4080_UCAddr = 0xfef000000ull; +#else +static phys_addr_t P4080_UCAddr = 0xef000000; +#endif + + +/** + * FmanUcodeAddrParam - process the fman_ucode kernel command-line parameter + * + * This function is called when the kernel encounters a fman_ucode command- + * line parameter. This parameter contains the address of the Fman microcode + * in flash. + */ +static int FmanUcodeAddrParam(char *str) +{ + unsigned long long l; + int ret; + + ret = strict_strtoull(str, 0, &l); + if (!ret) + P4080_UCAddr = (phys_addr_t) l; + + return ret; +} +__setup("fman_ucode=", FmanUcodeAddrParam); + +/** + * FindFmanMicrocode - find the Fman microcode in memory + * + * This function returns a pointer to the QE Firmware blob that holds + * the Fman microcode. We use the QE Firmware structure because Fman microcode + * is similar to QE microcode, so there's no point in defining a new layout. + * + * Current versions of U-Boot embed the Fman firmware into the device tree, + * so we check for that first. Each Fman node in the device tree contains a + * node or a pointer to node that holds the firmware. Technically, we should + * be fetching the firmware node for the current Fman, but we don't have that + * information any more, so we assume that there is only one firmware node in + * the device tree, and that all Fmen use the same firmware. + * + * If we have an older U-Boot, then we assume that the firmware is located in + * flash at physical address 'P4080_UCAddr' + */ +static const struct qe_firmware *FindFmanMicrocode(void) +{ + static const struct qe_firmware *P4080_UCPatch; + struct device_node *np; +#ifdef FMAN_READ_MICROCODE_FROM_NOR_FLASH + unsigned long P4080_UCSize; + const struct qe_header *hdr; +#endif + + if (P4080_UCPatch) + return P4080_UCPatch; + + /* The firmware should be inside the device tree. */ + np = of_find_compatible_node(NULL, NULL, "fsl,fman-firmware"); + if (np) { + P4080_UCPatch = of_get_property(np, "fsl,firmware", NULL); + of_node_put(np); + if (P4080_UCPatch) + return P4080_UCPatch; + else + REPORT_ERROR(WARNING, E_NOT_FOUND, ("firmware node is incomplete")); + } + +#ifdef FMAN_READ_MICROCODE_FROM_NOR_FLASH + /* If not, then we have a legacy U-Boot. The firmware is in flash. */ + /* Only map enough to the get the core structure */ + P4080_UCPatch = ioremap(P4080_UCAddr, sizeof(struct qe_firmware)); + if (!P4080_UCPatch) { + REPORT_ERROR(MAJOR, E_NULL_POINTER, ("ioremap(%llx) returned NULL", (u64) P4080_UCAddr)); + return NULL; + } + /* Make sure it really is a QE Firmware blob */ + hdr = &P4080_UCPatch->header; + if (!hdr || + (hdr->magic[0] != 'Q') || (hdr->magic[1] != 'E') || + (hdr->magic[2] != 'F')) { + REPORT_ERROR(MAJOR, E_NOT_FOUND, ("data at %llx is not a Fman microcode", (u64) P4080_UCAddr)); + return NULL; + } + + /* Now we call ioremap again, this time to pick up the whole blob. We never + * iounmap() the memory because we might reset the Fman at any time. + */ + /* TODO: ionumap() should be performed when unloading the driver */ + P4080_UCSize = sizeof(u32) * P4080_UCPatch->microcode[0].count; + iounmap((void *)P4080_UCPatch); + P4080_UCPatch = ioremap(P4080_UCAddr, P4080_UCSize); + if (!P4080_UCPatch) { + REPORT_ERROR(MAJOR, E_NULL_POINTER, ("ioremap(%llx) returned NULL", (u64) P4080_UCAddr)); + return NULL; + } +#else + /* Returning NULL here forces the reuse of the IRAM content */ + P4080_UCPatch = NULL; +#endif /* FMAN_READ_MICROCODE_FROM_NOR_FLASH */ + return P4080_UCPatch; +} + +static t_LnxWrpFmDev * ReadFmDevTreeNode (struct platform_device *of_dev) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev; + struct device_node *fm_node, *dev_node, *dpa_node; + struct of_device_id name; + struct resource res; + const uint32_t *uint32_prop; + int _errno=0, lenp; + static struct of_device_id dpa_eth_node_of_match[] = { + { .compatible = "fsl,dpa-ethernet", }, + { /* end of list */ }, + }; + + fm_node = of_node_get(of_dev->dev.of_node); + + uint32_prop = (uint32_t *)of_get_property(fm_node, "cell-index", &lenp); + if (unlikely(uint32_prop == NULL)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("of_get_property(%s, cell-index) failed", fm_node->full_name)); + return NULL; + } + if (WARN_ON(lenp != sizeof(uint32_t))) + return NULL; + if (*uint32_prop > INTG_MAX_NUM_OF_FM) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("fm id!")); + return NULL; + } + p_LnxWrpFmDev = CreateFmDev(*uint32_prop); + if (!p_LnxWrpFmDev) { + REPORT_ERROR(MAJOR, E_NULL_POINTER, NO_MSG); + return NULL; + } + p_LnxWrpFmDev->dev = &of_dev->dev; + p_LnxWrpFmDev->id = *uint32_prop; + + /* Get the FM interrupt */ + p_LnxWrpFmDev->irq = of_irq_to_resource(fm_node, 0, NULL); + if (unlikely(p_LnxWrpFmDev->irq == /*NO_IRQ*/0)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("of_irq_to_resource() = %d", NO_IRQ)); + return NULL; + } + + /* Get the FM error interrupt */ + p_LnxWrpFmDev->err_irq = of_irq_to_resource(fm_node, 1, NULL); + /* TODO - un-comment it once there will be err_irq in the DTS */ +#if 0 + if (unlikely(p_LnxWrpFmDev->err_irq == /*NO_IRQ*/0)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("of_irq_to_resource() = %d", NO_IRQ)); + return NULL; + } +#endif /* 0 */ + + /* Get the FM address */ + _errno = of_address_to_resource(fm_node, 0, &res); + if (unlikely(_errno < 0)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("of_address_to_resource() = %d", _errno)); + return NULL; + } + + p_LnxWrpFmDev->fmBaseAddr = 0; + p_LnxWrpFmDev->fmPhysBaseAddr = res.start; + p_LnxWrpFmDev->fmMemSize = res.end + 1 - res.start; + + uint32_prop = (uint32_t *)of_get_property(fm_node, "clock-frequency", &lenp); + if (unlikely(uint32_prop == NULL)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("of_get_property(%s, clock-frequency) failed", fm_node->full_name)); + return NULL; + } + if (WARN_ON(lenp != sizeof(uint32_t))) + return NULL; + p_LnxWrpFmDev->fmDevSettings.param.fmClkFreq = (*uint32_prop + 500000)/1000000; /* In MHz, rounded */ + + /* Get the MURAM base address and size */ + memset(&name, 0, sizeof(struct of_device_id)); + if (WARN_ON(strlen("muram") >= sizeof(name.name))) + return NULL; + strcpy(name.name, "muram"); + if (WARN_ON(strlen("fsl,fman-muram") >= sizeof(name.compatible))) + return NULL; + strcpy(name.compatible, "fsl,fman-muram"); + for_each_child_of_node(fm_node, dev_node) { + if (likely(of_match_node(&name, dev_node) != NULL)) { + _errno = of_address_to_resource(dev_node, 0, &res); + if (unlikely(_errno < 0)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("of_address_to_resource() = %d", _errno)); + return NULL; + } + + p_LnxWrpFmDev->fmMuramBaseAddr = 0; + p_LnxWrpFmDev->fmMuramPhysBaseAddr = res.start; + p_LnxWrpFmDev->fmMuramMemSize = res.end + 1 - res.start; + } + } + + /* Get the RTC base address and size */ + memset(&name, 0, sizeof(struct of_device_id)); + if (WARN_ON(strlen("rtc") >= sizeof(name.name))) + return NULL; + strcpy(name.name, "rtc"); + if (WARN_ON(strlen("fsl,fman-rtc") >= sizeof(name.compatible))) + return NULL; + strcpy(name.compatible, "fsl,fman-rtc"); + for_each_child_of_node(fm_node, dev_node) { + if (likely(of_match_node(&name, dev_node) != NULL)) { + _errno = of_address_to_resource(dev_node, 0, &res); + if (unlikely(_errno < 0)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("of_address_to_resource() = %d", _errno)); + return NULL; + } + + p_LnxWrpFmDev->fmRtcBaseAddr = 0; + p_LnxWrpFmDev->fmRtcPhysBaseAddr = res.start; + p_LnxWrpFmDev->fmRtcMemSize = res.end + 1 - res.start; + } + } + + /* Get all PCD nodes */ + memset(&name, 0, sizeof(struct of_device_id)); + if (WARN_ON(strlen("parser") >= sizeof(name.name))) + return NULL; + strcpy(name.name, "parser"); + if (WARN_ON(strlen("fsl,fman-parser") >= sizeof(name.compatible))) + return NULL; + strcpy(name.compatible, "fsl,fman-parser"); + for_each_child_of_node(fm_node, dev_node) + if (likely(of_match_node(&name, dev_node) != NULL)) + p_LnxWrpFmDev->prsActive = TRUE; + + memset(&name, 0, sizeof(struct of_device_id)); + if (WARN_ON(strlen("keygen") >= sizeof(name.name))) + return NULL; + strcpy(name.name, "keygen"); + if (WARN_ON(strlen("fsl,fman-keygen") >= sizeof(name.compatible))) + return NULL; + strcpy(name.compatible, "fsl,fman-keygen"); + for_each_child_of_node(fm_node, dev_node) + if (likely(of_match_node(&name, dev_node) != NULL)) + p_LnxWrpFmDev->kgActive = TRUE; + + memset(&name, 0, sizeof(struct of_device_id)); + if (WARN_ON(strlen("cc") >= sizeof(name.name))) + return NULL; + strcpy(name.name, "cc"); + if (WARN_ON(strlen("fsl,fman-cc") >= sizeof(name.compatible))) + return NULL; + strcpy(name.compatible, "fsl,fman-cc"); + for_each_child_of_node(fm_node, dev_node) + if (likely(of_match_node(&name, dev_node) != NULL)) + p_LnxWrpFmDev->ccActive = TRUE; + + memset(&name, 0, sizeof(struct of_device_id)); + if (WARN_ON(strlen("policer") >= sizeof(name.name))) + return NULL; + strcpy(name.name, "policer"); + if (WARN_ON(strlen("fsl,fman-policer") >= sizeof(name.compatible))) + return NULL; + strcpy(name.compatible, "fsl,fman-policer"); + for_each_child_of_node(fm_node, dev_node) + if (likely(of_match_node(&name, dev_node) != NULL)) + p_LnxWrpFmDev->plcrActive = TRUE; + + if (p_LnxWrpFmDev->prsActive || p_LnxWrpFmDev->kgActive || + p_LnxWrpFmDev->ccActive || p_LnxWrpFmDev->plcrActive) + p_LnxWrpFmDev->pcdActive = TRUE; + + if (p_LnxWrpFmDev->pcdActive) + { + const char *str_prop = (char *)of_get_property(fm_node, "fsl,default-pcd", &lenp); + if (str_prop) { + if (strncmp(str_prop, "3-tuple", strlen("3-tuple")) == 0) + p_LnxWrpFmDev->defPcd = e_FM_PCD_3_TUPLE; + } + else + p_LnxWrpFmDev->defPcd = e_NO_PCD; + } + + of_node_put(fm_node); + + for_each_matching_node(dpa_node, dpa_eth_node_of_match) { + struct device_node *mac_node; + const phandle *phandle_prop; + + phandle_prop = (typeof(phandle_prop))of_get_property(dpa_node, "fsl,fman-mac", &lenp); + if (phandle_prop == NULL) + continue; + + if (WARN_ON(lenp != sizeof(phandle))) + return NULL; + + mac_node = of_find_node_by_phandle(*phandle_prop); + if (unlikely(mac_node == NULL)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("of_find_node_by_phandle() failed")); + return NULL; + } + + fm_node = of_get_parent(mac_node); + of_node_put(mac_node); + if (unlikely(fm_node == NULL)) { + REPORT_ERROR(MAJOR, E_NO_DEVICE, ("of_get_parent() = %d", _errno)); + return NULL; + } + + uint32_prop = (uint32_t *)of_get_property(fm_node, "cell-index", &lenp); + if (unlikely(uint32_prop == NULL)) { + of_node_put(fm_node); + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("of_get_property(%s, cell-index) failed", fm_node->full_name)); + return NULL; + } + if (WARN_ON(lenp != sizeof(uint32_t))) + return NULL; + of_node_put(fm_node); + + if (*uint32_prop == p_LnxWrpFmDev->id) { + phandle_prop = (typeof(phandle_prop))of_get_property(dpa_node, "fsl,qman-channel", &lenp); + if (unlikely(phandle_prop == NULL)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("of_get_property(%s, fsl,qman-channel) failed", dpa_node->full_name)); + return NULL; + } + if (WARN_ON(lenp != sizeof(phandle))) + return NULL; + + dev_node = of_find_node_by_phandle(*phandle_prop); + if (unlikely(dev_node == NULL)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("of_find_node_by_phandle() failed")); + return NULL; + } + + uint32_prop = (typeof(uint32_prop))of_get_property(dev_node, "fsl,qman-channel-id", &lenp); + if (unlikely(uint32_prop == NULL)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("of_get_property(%s, fsl,qman-channel-id) failed", dev_node->full_name)); + of_node_put(dev_node); + return NULL; + } + of_node_put(dev_node); + if (WARN_ON(lenp != sizeof(uint32_t))) + return NULL; + p_LnxWrpFmDev->hcCh = *uint32_prop; + break; + } + } + + p_LnxWrpFmDev->active = TRUE; + + return p_LnxWrpFmDev; +} + +static void LnxwrpFmDevExceptionsCb(t_Handle h_App, e_FmExceptions exception) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = (t_LnxWrpFmDev *)h_App; + + ASSERT_COND(p_LnxWrpFmDev); + + DBG(INFO, ("got fm exception %d", exception)); + + /* do nothing */ + UNUSED(exception); +} + +static void LnxwrpFmDevBusErrorCb(t_Handle h_App, + e_FmPortType portType, + uint8_t portId, + uint64_t addr, + uint8_t tnum, + uint16_t liodn) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = (t_LnxWrpFmDev *)h_App; + + ASSERT_COND(p_LnxWrpFmDev); + + /* do nothing */ + UNUSED(portType);UNUSED(portId);UNUSED(addr);UNUSED(tnum);UNUSED(liodn); +} + +static t_Error ConfigureFmDev(t_LnxWrpFmDev *p_LnxWrpFmDev) +{ + struct resource *dev_res; + int _errno; + + if (!p_LnxWrpFmDev->active) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("FM not configured!!!")); + +#ifndef MODULE + _errno = can_request_irq(p_LnxWrpFmDev->irq, 0); + if (unlikely(_errno < 0)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("can_request_irq() = %d", _errno)); +#endif + _errno = devm_request_irq(p_LnxWrpFmDev->dev, p_LnxWrpFmDev->irq, fm_irq, 0, "fman", p_LnxWrpFmDev); + if (unlikely(_errno < 0)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("request_irq(%d) = %d", p_LnxWrpFmDev->irq, _errno)); + + if (p_LnxWrpFmDev->err_irq != 0) { +#ifndef MODULE + _errno = can_request_irq(p_LnxWrpFmDev->err_irq, 0); + if (unlikely(_errno < 0)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("can_request_irq() = %d", _errno)); +#endif + _errno = devm_request_irq(p_LnxWrpFmDev->dev, p_LnxWrpFmDev->err_irq, fm_err_irq, IRQF_SHARED, "fman-err", p_LnxWrpFmDev); + if (unlikely(_errno < 0)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("request_irq(%d) = %d", p_LnxWrpFmDev->err_irq, _errno)); + } + + p_LnxWrpFmDev->res = devm_request_mem_region(p_LnxWrpFmDev->dev, p_LnxWrpFmDev->fmPhysBaseAddr, p_LnxWrpFmDev->fmMemSize, "fman"); + if (unlikely(p_LnxWrpFmDev->res == NULL)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("request_mem_region() failed")); + + p_LnxWrpFmDev->fmBaseAddr = PTR_TO_UINT(devm_ioremap(p_LnxWrpFmDev->dev, p_LnxWrpFmDev->fmPhysBaseAddr, p_LnxWrpFmDev->fmMemSize)); + if (unlikely(p_LnxWrpFmDev->fmBaseAddr == 0)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("devm_ioremap() failed")); + + if (SYS_RegisterIoMap((uint64_t)p_LnxWrpFmDev->fmBaseAddr, (uint64_t)p_LnxWrpFmDev->fmPhysBaseAddr, p_LnxWrpFmDev->fmMemSize) != E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("FM memory map")); + + dev_res = __devm_request_region(p_LnxWrpFmDev->dev, p_LnxWrpFmDev->res, p_LnxWrpFmDev->fmMuramPhysBaseAddr, p_LnxWrpFmDev->fmMuramMemSize, "fman-muram"); + if (unlikely(dev_res == NULL)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("__devm_request_region() failed")); + + p_LnxWrpFmDev->fmMuramBaseAddr = PTR_TO_UINT(devm_ioremap(p_LnxWrpFmDev->dev, p_LnxWrpFmDev->fmMuramPhysBaseAddr, p_LnxWrpFmDev->fmMuramMemSize)); + if (unlikely(p_LnxWrpFmDev->fmMuramBaseAddr == 0)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("devm_ioremap() failed")); + + if (SYS_RegisterIoMap((uint64_t)p_LnxWrpFmDev->fmMuramBaseAddr, (uint64_t)p_LnxWrpFmDev->fmMuramPhysBaseAddr, p_LnxWrpFmDev->fmMuramMemSize) != E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("FM MURAM memory map")); + + if (p_LnxWrpFmDev->fmRtcPhysBaseAddr) + { + dev_res = __devm_request_region(p_LnxWrpFmDev->dev, p_LnxWrpFmDev->res, p_LnxWrpFmDev->fmRtcPhysBaseAddr, p_LnxWrpFmDev->fmRtcMemSize, "fman-rtc"); + if (unlikely(dev_res == NULL)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("__devm_request_region() failed")); + + p_LnxWrpFmDev->fmRtcBaseAddr = PTR_TO_UINT(devm_ioremap(p_LnxWrpFmDev->dev, p_LnxWrpFmDev->fmRtcPhysBaseAddr, p_LnxWrpFmDev->fmRtcMemSize)); + if (unlikely(p_LnxWrpFmDev->fmRtcBaseAddr == 0)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("devm_ioremap() failed")); + + if (SYS_RegisterIoMap((uint64_t)p_LnxWrpFmDev->fmRtcBaseAddr, (uint64_t)p_LnxWrpFmDev->fmRtcPhysBaseAddr, p_LnxWrpFmDev->fmRtcMemSize) != E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("FM-RTC memory map")); + } + + p_LnxWrpFmDev->fmDevSettings.param.baseAddr = p_LnxWrpFmDev->fmBaseAddr; + p_LnxWrpFmDev->fmDevSettings.param.fmId = p_LnxWrpFmDev->id; + p_LnxWrpFmDev->fmDevSettings.param.irq = NO_IRQ; + p_LnxWrpFmDev->fmDevSettings.param.errIrq = NO_IRQ; + p_LnxWrpFmDev->fmDevSettings.param.f_Exception = LnxwrpFmDevExceptionsCb; + p_LnxWrpFmDev->fmDevSettings.param.f_BusError = LnxwrpFmDevBusErrorCb; + p_LnxWrpFmDev->fmDevSettings.param.h_App = p_LnxWrpFmDev; + + return FillRestFmInfo(p_LnxWrpFmDev); +} + +static t_Error InitFmDev(t_LnxWrpFmDev *p_LnxWrpFmDev) +{ + const struct qe_firmware *fw; + + if (!p_LnxWrpFmDev->active) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("FM not configured!!!")); + + if ((p_LnxWrpFmDev->h_MuramDev = FM_MURAM_ConfigAndInit(p_LnxWrpFmDev->fmMuramBaseAddr, p_LnxWrpFmDev->fmMuramMemSize)) == NULL) + RETURN_ERROR(MAJOR, E_INVALID_HANDLE, ("FM-MURAM!")); + + /* Loading the fman-controller code */ + fw = FindFmanMicrocode(); + + if (!fw) { +#ifdef FMAN_READ_MICROCODE_FROM_NOR_FLASH + /* We already reported an error, so just return NULL*/ + return ERROR_CODE(E_NULL_POINTER); +#else + /* this forces the reuse of the current IRAM content */ + p_LnxWrpFmDev->fmDevSettings.param.firmware.size = 0; + p_LnxWrpFmDev->fmDevSettings.param.firmware.p_Code = NULL; +#endif + } else { + p_LnxWrpFmDev->fmDevSettings.param.firmware.p_Code = + (void *) fw + fw->microcode[0].code_offset; + p_LnxWrpFmDev->fmDevSettings.param.firmware.size = + sizeof(u32) * fw->microcode[0].count; + DBG(INFO, ("Loading fman-controller code version %d.%d.%d", + fw->microcode[0].major, + fw->microcode[0].minor, + fw->microcode[0].revision)); + } + + p_LnxWrpFmDev->fmDevSettings.param.h_FmMuram = p_LnxWrpFmDev->h_MuramDev; + + if ((p_LnxWrpFmDev->h_Dev = FM_Config(&p_LnxWrpFmDev->fmDevSettings.param)) == NULL) + RETURN_ERROR(MAJOR, E_INVALID_HANDLE, ("FM")); + + if (FM_ConfigMaxNumOfOpenDmas(p_LnxWrpFmDev->h_Dev,BMI_MAX_NUM_OF_DMAS) != E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("FM")); + + if (FM_ConfigResetOnInit(p_LnxWrpFmDev->h_Dev, TRUE) != E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("FM")); + +#ifdef CONFIG_FMAN_P1023 + if (FM_ConfigDmaAidOverride(p_LnxWrpFmDev->h_Dev, TRUE) != E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("FM")); +#endif + + /* Use the entire amount of TNUMS, maybe performance will improve... + for OPEN DMAs - are all by default = 32 and fifosize = MURAM*3/4 and + the rest of it is for PCD */ + FM_ConfigTotalNumOfTasks(p_LnxWrpFmDev->h_Dev, BMI_MAX_NUM_OF_TASKS); + +#if defined(CONFIG_FMAN_RESOURCE_ALLOCATION_ALGORITHM) && defined(CONFIG_FMAN_P3040_P4080_P5020) + /* Enable 14g w/ jumbo frames following HW suggestion. */ + FM_ConfigTotalFifoSize(p_LnxWrpFmDev->h_Dev, 128*KILOBYTE); +#endif + + if (FM_Init(p_LnxWrpFmDev->h_Dev) != E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("FM")); + + if (p_LnxWrpFmDev->err_irq == 0) { + FM_SetException(p_LnxWrpFmDev->h_Dev, e_FM_EX_DMA_BUS_ERROR,FALSE); + FM_SetException(p_LnxWrpFmDev->h_Dev,e_FM_EX_DMA_READ_ECC,FALSE); + FM_SetException(p_LnxWrpFmDev->h_Dev,e_FM_EX_DMA_SYSTEM_WRITE_ECC,FALSE); + FM_SetException(p_LnxWrpFmDev->h_Dev,e_FM_EX_DMA_FM_WRITE_ECC,FALSE); + FM_SetException(p_LnxWrpFmDev->h_Dev,e_FM_EX_FPM_STALL_ON_TASKS , FALSE); + FM_SetException(p_LnxWrpFmDev->h_Dev,e_FM_EX_FPM_DOUBLE_ECC,FALSE); + FM_SetException(p_LnxWrpFmDev->h_Dev,e_FM_EX_IRAM_ECC,FALSE); + /* TODO: FmDisableRamsEcc assert for ramsEccOwners. + * FM_SetException(p_LnxWrpFmDev->h_Dev,e_FM_EX_MURAM_ECC,FALSE);*/ + FM_SetException(p_LnxWrpFmDev->h_Dev,e_FM_EX_QMI_DOUBLE_ECC,FALSE); + FM_SetException(p_LnxWrpFmDev->h_Dev,e_FM_EX_QMI_DEQ_FROM_UNKNOWN_PORTID,FALSE); + FM_SetException(p_LnxWrpFmDev->h_Dev,e_FM_EX_BMI_LIST_RAM_ECC,FALSE); + FM_SetException(p_LnxWrpFmDev->h_Dev,e_FM_EX_BMI_PIPELINE_ECC,FALSE); + FM_SetException(p_LnxWrpFmDev->h_Dev,e_FM_EX_BMI_STATISTICS_RAM_ECC, FALSE); + FM_SetException(p_LnxWrpFmDev->h_Dev,e_FM_EX_FPM_SINGLE_ECC, FALSE); + FM_SetException(p_LnxWrpFmDev->h_Dev,e_FM_EX_QMI_SINGLE_ECC, FALSE); + } + + if (p_LnxWrpFmDev->fmRtcBaseAddr) + { + t_FmRtcParams fmRtcParam; + + memset(&fmRtcParam, 0, sizeof(fmRtcParam)); + fmRtcParam.h_App = p_LnxWrpFmDev; + fmRtcParam.h_Fm = p_LnxWrpFmDev->h_Dev; + fmRtcParam.baseAddress = p_LnxWrpFmDev->fmRtcBaseAddr; + + if(!(p_LnxWrpFmDev->h_RtcDev = FM_RTC_Config(&fmRtcParam))) + RETURN_ERROR(MAJOR, E_INVALID_HANDLE, ("FM-RTC")); + + if (FM_RTC_ConfigPeriod(p_LnxWrpFmDev->h_RtcDev, 10) != E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("FM-RTC")); + + if (FM_RTC_Init(p_LnxWrpFmDev->h_RtcDev) != E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, ("FM-RTC")); + } + + return E_OK; +} + +/* TODO: to be moved back here */ +extern void FreeFmPcdDev(t_LnxWrpFmDev *p_LnxWrpFmDev); + +static void FreeFmDev(t_LnxWrpFmDev *p_LnxWrpFmDev) +{ + if (!p_LnxWrpFmDev->active) + return; + + FreeFmPcdDev(p_LnxWrpFmDev); + + if (p_LnxWrpFmDev->h_RtcDev) + FM_RTC_Free(p_LnxWrpFmDev->h_RtcDev); + + if (p_LnxWrpFmDev->h_Dev) + FM_Free(p_LnxWrpFmDev->h_Dev); + + if (p_LnxWrpFmDev->h_MuramDev) + FM_MURAM_Free(p_LnxWrpFmDev->h_MuramDev); + + if (p_LnxWrpFmDev->fmRtcBaseAddr) + { + SYS_UnregisterIoMap(p_LnxWrpFmDev->fmRtcBaseAddr); + devm_iounmap(p_LnxWrpFmDev->dev, UINT_TO_PTR(p_LnxWrpFmDev->fmRtcBaseAddr)); + __devm_release_region(p_LnxWrpFmDev->dev, p_LnxWrpFmDev->res, p_LnxWrpFmDev->fmRtcPhysBaseAddr, p_LnxWrpFmDev->fmRtcMemSize); + } + SYS_UnregisterIoMap(p_LnxWrpFmDev->fmMuramBaseAddr); + devm_iounmap(p_LnxWrpFmDev->dev, UINT_TO_PTR(p_LnxWrpFmDev->fmMuramBaseAddr)); + __devm_release_region(p_LnxWrpFmDev->dev, p_LnxWrpFmDev->res, p_LnxWrpFmDev->fmMuramPhysBaseAddr, p_LnxWrpFmDev->fmMuramMemSize); + SYS_UnregisterIoMap(p_LnxWrpFmDev->fmBaseAddr); + devm_iounmap(p_LnxWrpFmDev->dev, UINT_TO_PTR(p_LnxWrpFmDev->fmBaseAddr)); + devm_release_mem_region(p_LnxWrpFmDev->dev, p_LnxWrpFmDev->fmPhysBaseAddr, p_LnxWrpFmDev->fmMemSize); + if (p_LnxWrpFmDev->err_irq != 0) { + devm_free_irq(p_LnxWrpFmDev->dev, p_LnxWrpFmDev->err_irq, p_LnxWrpFmDev); + } + + devm_free_irq(p_LnxWrpFmDev->dev, p_LnxWrpFmDev->irq, p_LnxWrpFmDev); +} + +/* FMan character device file operations */ +extern struct file_operations fm_fops; + +static int fm_probe(struct platform_device *of_dev) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev; + + if ((p_LnxWrpFmDev = ReadFmDevTreeNode(of_dev)) == NULL) + return -EIO; + if (ConfigureFmDev(p_LnxWrpFmDev) != E_OK) + return -EIO; + if (InitFmDev(p_LnxWrpFmDev) != E_OK) + return -EIO; + + Sprint (p_LnxWrpFmDev->name, "%s%d", DEV_FM_NAME, p_LnxWrpFmDev->id); + + /* Register to the /dev for IOCTL API */ + /* Register dynamically a new major number for the character device: */ + if ((p_LnxWrpFmDev->major = register_chrdev(0, p_LnxWrpFmDev->name, &fm_fops)) <= 0) { + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("Failed to allocate a major number for device \"%s\"", p_LnxWrpFmDev->name)); + return -EIO; + } + + /* Creating classes for FM */ + DBG(TRACE ,("class_create fm_class")); + p_LnxWrpFmDev->fm_class = class_create(THIS_MODULE, p_LnxWrpFmDev->name); + if (IS_ERR(p_LnxWrpFmDev->fm_class)) { + unregister_chrdev(p_LnxWrpFmDev->major, p_LnxWrpFmDev->name); + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("class_create error fm_class")); + return -EIO; + } + + device_create(p_LnxWrpFmDev->fm_class, NULL, MKDEV(p_LnxWrpFmDev->major, DEV_FM_MINOR_BASE), NULL, + "fm%d", p_LnxWrpFmDev->id); + device_create(p_LnxWrpFmDev->fm_class, NULL, MKDEV(p_LnxWrpFmDev->major, DEV_FM_PCD_MINOR_BASE), NULL, + "fm%d-pcd", p_LnxWrpFmDev->id); + dev_set_drvdata(p_LnxWrpFmDev->dev, p_LnxWrpFmDev); + + /* create sysfs entries for stats and regs */ + if ( fm_sysfs_create(p_LnxWrpFmDev->dev) !=0 ) + { + FreeFmDev(p_LnxWrpFmDev); + REPORT_ERROR(MAJOR, E_INVALID_STATE, ("Unable to create sysfs entry - fm!!!")); + return -EIO; + } + + DBG(TRACE, ("FM%d probed", p_LnxWrpFmDev->id)); + +#if defined(CONFIG_FMAN_RESOURCE_ALLOCATION_ALGORITHM) + /* Precalculate resources for FMAN based on number of + * FMan ports available + */ + if(fm_set_active_fman_ports(of_dev, p_LnxWrpFmDev)!= 0) + return -EIO; + +#if defined(CONFIG_FMAN_P3040_P4080_P5020) + /* 128K MURAM for p3,p4 and p5 */ + if(fm_precalculate_fifosizes( + p_LnxWrpFmDev, + 128*KILOBYTE) + != 0) + return -EIO; +#else + /* for all other platforms: MURAM Space for fifosize=3/4 * MURAM_SIZE*/ + if(fm_precalculate_fifosizes( + p_LnxWrpFmDev, + CEIL_DIV((3*FM_MURAM_SIZE-1),4)) + != 0) + return -EIO; +#endif + if(fm_precalculate_open_dma( + p_LnxWrpFmDev, + BMI_MAX_NUM_OF_DMAS, /* max open dmas:dpaa_integration_ext.h */ + FM_DEFAULT_TX10G_OPENDMA, /* default TX 10g open dmas */ + FM_DEFAULT_RX10G_OPENDMA, /* default RX 10g open dmas */ + FM_10G_OPENDMA_MIN_TRESHOLD,/* TX 10g minimum treshold */ + FM_10G_OPENDMA_MIN_TRESHOLD)/* RX 10g minimum treshold */ + != 0) + return -EIO; + if(fm_precalculate_tnums( + p_LnxWrpFmDev, + BMI_MAX_NUM_OF_TASKS) /* max TNUMS: dpa integration file. */ + != 0) + return -EIO; +#endif + + return 0; +} + +static int fm_remove(struct platform_device *of_dev) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev; + struct device *dev; + + dev = &of_dev->dev; + p_LnxWrpFmDev = dev_get_drvdata(dev); + + fm_sysfs_destroy(dev); + + DBG(TRACE, ("destroy fm_class")); + device_destroy(p_LnxWrpFmDev->fm_class, MKDEV(p_LnxWrpFmDev->major, DEV_FM_MINOR_BASE)); + device_destroy(p_LnxWrpFmDev->fm_class, MKDEV(p_LnxWrpFmDev->major, DEV_FM_PCD_MINOR_BASE)); + class_destroy(p_LnxWrpFmDev->fm_class); + + /* Destroy chardev */ + unregister_chrdev(p_LnxWrpFmDev->major, p_LnxWrpFmDev->name); + + FreeFmDev(p_LnxWrpFmDev); + + DestroyFmDev(p_LnxWrpFmDev); + + dev_set_drvdata(dev, NULL); + + return 0; +} + +static const struct of_device_id fm_match[] = { + { + .compatible = "fsl,fman" + }, + {} +}; +#ifndef MODULE +MODULE_DEVICE_TABLE(of, fm_match); +#endif /* !MODULE */ + +static struct platform_driver fm_driver = { + .driver = { + .name = "fsl-fman", + .of_match_table = fm_match, + .owner = THIS_MODULE, + }, + .probe = fm_probe, + .remove = fm_remove, +}; + +t_Handle LNXWRP_FM_Init(void) +{ + memset(&lnxWrpFm, 0, sizeof(lnxWrpFm)); + mutex_init(&lnxwrp_mutex); + + /* Register to the DTB for basic FM API */ + platform_driver_register(&fm_driver); + + return &lnxWrpFm; +} + +t_Error LNXWRP_FM_Free(t_Handle h_LnxWrpFm) +{ + platform_driver_unregister(&fm_driver); + mutex_destroy(&lnxwrp_mutex); + + return E_OK; +} + + +struct fm * fm_bind(struct device *fm_dev) +{ + return (struct fm *)(dev_get_drvdata(get_device(fm_dev))); +} +EXPORT_SYMBOL(fm_bind); + +void fm_unbind(struct fm *fm) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = (t_LnxWrpFmDev*)fm; + + put_device(p_LnxWrpFmDev->dev); +} +EXPORT_SYMBOL(fm_unbind); + +struct resource * fm_get_mem_region(struct fm *fm) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = (t_LnxWrpFmDev*)fm; + + return p_LnxWrpFmDev->res; +} +EXPORT_SYMBOL(fm_get_mem_region); + +void * fm_get_handle(struct fm *fm) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = (t_LnxWrpFmDev*)fm; + + return (void *)p_LnxWrpFmDev->h_Dev; +} +EXPORT_SYMBOL(fm_get_handle); + +void * fm_get_rtc_handle(struct fm *fm) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = (t_LnxWrpFmDev*)fm; + + return (void *)p_LnxWrpFmDev->h_RtcDev; +} +EXPORT_SYMBOL(fm_get_rtc_handle); + +struct fm_port * fm_port_bind (struct device *fm_port_dev) +{ + return (struct fm_port *)(dev_get_drvdata(get_device(fm_port_dev))); +} +EXPORT_SYMBOL(fm_port_bind); + +void fm_port_unbind(struct fm_port *port) +{ + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev = (t_LnxWrpFmPortDev*)port; + + put_device(p_LnxWrpFmPortDev->dev); +} +EXPORT_SYMBOL(fm_port_unbind); + +void * fm_port_get_handle(struct fm_port *port) +{ + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev = (t_LnxWrpFmPortDev*)port; + + return (void *)p_LnxWrpFmPortDev->h_Dev; +} +EXPORT_SYMBOL(fm_port_get_handle); + +void fm_port_get_base_addr(const struct fm_port *port, uint64_t *base_addr) +{ + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev = (t_LnxWrpFmPortDev *)port; + + *base_addr = p_LnxWrpFmPortDev->settings.param.baseAddr; +} +EXPORT_SYMBOL(fm_port_get_base_addr); + +void fm_port_pcd_bind (struct fm_port *port, struct fm_port_pcd_param *params) +{ + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev = (t_LnxWrpFmPortDev*)port; + + p_LnxWrpFmPortDev->pcd_owner_params.cba = params->cba; + p_LnxWrpFmPortDev->pcd_owner_params.cbf = params->cbf; + p_LnxWrpFmPortDev->pcd_owner_params.dev = params->dev; +} +EXPORT_SYMBOL(fm_port_pcd_bind); + +int fm_get_tx_port_channel(struct fm_port *port) +{ + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev = (t_LnxWrpFmPortDev*)port; + + return p_LnxWrpFmPortDev->txCh; +} +EXPORT_SYMBOL(fm_get_tx_port_channel); + +int fm_port_enable (struct fm_port *port) +{ + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev = (t_LnxWrpFmPortDev*)port; + + FM_PORT_Enable(p_LnxWrpFmPortDev->h_Dev); + + return 0; +} +EXPORT_SYMBOL(fm_port_enable); + +void fm_port_disable(struct fm_port *port) +{ + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev = (t_LnxWrpFmPortDev*)port; + + FM_PORT_Disable(p_LnxWrpFmPortDev->h_Dev); +} +EXPORT_SYMBOL(fm_port_disable); + +void fm_mutex_lock(void) +{ + mutex_lock(&lnxwrp_mutex); +} +EXPORT_SYMBOL(fm_mutex_lock); + +void fm_mutex_unlock(void) +{ + mutex_unlock(&lnxwrp_mutex); +} +EXPORT_SYMBOL(fm_mutex_unlock); + +static t_Handle h_FmLnxWrp; + +static int __init __cold fm_load (void) +{ + if ((h_FmLnxWrp = LNXWRP_FM_Init()) == NULL) + { + printk("Failed to init FM wrapper!\n"); + return -ENODEV; + } + + printk (KERN_INFO "Freescale FM module ("__DATE__ ":"__TIME__")\n"); + + return 0; +} + +static void __exit __cold fm_unload (void) +{ + if (h_FmLnxWrp) + LNXWRP_FM_Free(h_FmLnxWrp); +} + +module_init (fm_load); +module_exit (fm_unload); --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_fm.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_fm.h @@ -0,0 +1,257 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + + @File lnxwrp_fm.h + + @Author Shlomi Gridish + + @Description FM Linux wrapper functions. + +*/ + +#ifndef __LNXWRP_FM_H__ +#define __LNXWRP_FM_H__ + +#include /* struct qman_fq */ + +#include "std_ext.h" +#include "error_ext.h" +#include "list_ext.h" + +#include "lnxwrp_fm_ext.h" + +#define __ERR_MODULE__ MODULE_FM + +#define FM_MAX_NUM_OF_ADV_SETTINGS 10 + +#define LNXWRP_FM_NUM_OF_SHARED_PROFILES 16 + +#if defined(CONFIG_FMAN_DISABLE_OH_TO_REUSE_RESOURCES) +#define FM_10G_OPENDMA_MIN_TRESHOLD 8 /* 10g minimum treshold if only HC is enabled and no OH port enabled */ +#define FM_OPENDMA_RX_TX_RAPORT 2 /* RX = 2*TX */ +#else +#define FM_10G_OPENDMA_MIN_TRESHOLD 7 /* 10g minimum treshold if 7 OH ports are enabled */ +#define FM_OPENDMA_RX_TX_RAPORT 1 /* RX = TX */ +#endif +#define FM_DEFAULT_TX10G_OPENDMA 8 /* default TX 10g open dmas */ +#define FM_DEFAULT_RX10G_OPENDMA 8 /* default RX 10g open dmas */ + +typedef enum { + e_NO_PCD = 0, + e_FM_PCD_3_TUPLE +} e_LnxWrpFmPortPcdDefUseCase; + + +typedef struct t_FmTestFq { + struct qman_fq fq_base; + t_Handle h_Arg; +} t_FmTestFq; + +typedef struct { + uint8_t id; /* sw port id, see SW_PORT_ID_TO_HW_PORT_ID() in fm_common.h */ + int minor; + char name[20]; + bool active; + uint64_t phys_baseAddr; + uint64_t baseAddr; /* Port's *virtual* address */ + uint32_t memSize; + t_WrpFmPortDevSettings settings; + uint8_t totalNumOfSchemes; + uint8_t schemesBase; + uint8_t numOfSchemesUsed; + uint32_t pcdBaseQ; + uint16_t pcdNumOfQs; + struct fm_port_pcd_param pcd_owner_params; + e_LnxWrpFmPortPcdDefUseCase defPcd; + t_Handle h_DefNetEnv; + t_Handle h_Schemes[FM_PCD_KG_NUM_OF_SCHEMES]; + t_FmPortBufferPrefixContent buffPrefixContent; + t_Handle h_Dev; + t_Handle h_LnxWrpFmDev; + uint16_t txCh; + struct device *dev; + struct device_attribute *dev_attr_stats; + struct device_attribute *dev_attr_regs; +} t_LnxWrpFmPortDev; + +typedef struct { + uint8_t id; + bool active; + uint64_t baseAddr; + uint32_t memSize; + t_WrpFmMacDevSettings settings; + t_Handle h_Dev; + t_Handle h_LnxWrpFmDev; +} t_LnxWrpFmMacDev; + +/* information about all active ports for an FMan. + * !Some ports may be disabled by u-boot, thus will not be available */ +struct fm_active_ports { + uint32_t num_oh_ports; + uint32_t num_tx_ports; + uint32_t num_rx_ports; + uint32_t num_tx25_ports; + uint32_t num_rx25_ports; + uint32_t num_tx10_ports; + uint32_t num_rx10_ports; +}; + +/* FMan resources precalculated at fm probe based + * on available FMan port. */ +struct fm_resource_settings { + /* buffers - fifo sizes */ + uint32_t tx1g_num_buffers; + uint32_t rx1g_num_buffers; + uint32_t tx2g5_num_buffers; /* Not supported yet by LLD */ + uint32_t rx2g5_num_buffers; /* Not supported yet by LLD */ + uint32_t tx10g_num_buffers; + uint32_t rx10g_num_buffers; + uint32_t oh_num_buffers; + uint32_t shared_ext_buffers; + + /* open DMAs */ + uint32_t tx_1g_dmas; + uint32_t rx_1g_dmas; + uint32_t tx_2g5_dmas; /* Not supported yet by LLD */ + uint32_t rx_2g5_dmas; /* Not supported yet by LLD */ + uint32_t tx_10g_dmas; + uint32_t rx_10g_dmas; + uint32_t oh_dmas; + uint32_t shared_ext_open_dma; + + /* Tnums */ + uint32_t tx_1g_tnums; + uint32_t rx_1g_tnums; + uint32_t tx_2g5_tnums; /* Not supported yet by LLD */ + uint32_t rx_2g5_tnums; /* Not supported yet by LLD */ + uint32_t tx_10g_tnums; + uint32_t rx_10g_tnums; + uint32_t oh_tnums; + uint32_t shared_ext_tnums; +}; + +typedef struct { + uint8_t id; + char name[10]; + bool active; + bool pcdActive; + bool prsActive; + bool kgActive; + bool ccActive; + bool plcrActive; + e_LnxWrpFmPortPcdDefUseCase defPcd; + uint32_t usedSchemes; + uint8_t totalNumOfSharedSchemes; + uint8_t sharedSchemesBase; + uint8_t numOfSchemesUsed; + uint8_t defNetEnvId; + uint64_t fmPhysBaseAddr; + uint64_t fmBaseAddr; + uint32_t fmMemSize; + uint64_t fmMuramPhysBaseAddr; + uint64_t fmMuramBaseAddr; + uint32_t fmMuramMemSize; + uint64_t fmRtcPhysBaseAddr; + uint64_t fmRtcBaseAddr; + uint32_t fmRtcMemSize; + int irq; + int err_irq; + t_WrpFmDevSettings fmDevSettings; + t_WrpFmPcdDevSettings fmPcdDevSettings; + t_Handle h_Dev; + uint16_t hcCh; + + t_Handle h_MuramDev; + t_Handle h_PcdDev; + t_Handle h_RtcDev; + + t_LnxWrpFmPortDev hcPort; + t_LnxWrpFmPortDev opPorts[FM_MAX_NUM_OF_OH_PORTS-1]; + t_LnxWrpFmPortDev rxPorts[FM_MAX_NUM_OF_RX_PORTS]; + t_LnxWrpFmPortDev txPorts[FM_MAX_NUM_OF_TX_PORTS]; + t_LnxWrpFmMacDev macs[FM_MAX_NUM_OF_MACS]; + struct fm_active_ports fm_active_ports_info; + struct fm_resource_settings fm_resource_settings_info; + + struct device *dev; + struct resource *res; + int major; + struct class *fm_class; + struct device_attribute *dev_attr_stats; + struct device_attribute *dev_attr_regs; + + struct device_attribute *dev_pcd_attr_stats; + struct device_attribute *dev_pcd_attr_regs; + + struct qman_fq *hc_tx_conf_fq, *hc_tx_err_fq, *hc_tx_fq; +} t_LnxWrpFmDev; + +typedef struct { + t_LnxWrpFmDev *p_FmDevs[INTG_MAX_NUM_OF_FM]; +} t_LnxWrpFm; +#define LNXWRP_FM_OBJECT(ptr) LIST_OBJECT(ptr, t_LnxWrpFm, fms[((t_LnxWrpFmDev *)ptr)->id]) + + +t_Error LnxwrpFmIOCTL(t_LnxWrpFmDev *p_LnxWrpFmDev, unsigned int cmd, unsigned long arg, bool compat); +t_Error LnxwrpFmPortIOCTL(t_LnxWrpFmPortDev *p_LnxWrpFmPortDev, unsigned int cmd, unsigned long arg, bool compat); + + +static __inline__ t_Error AllocSchemesForPort(t_LnxWrpFmDev *p_LnxWrpFmDev, uint8_t numSchemes, uint8_t *p_BaseSchemeNum) +{ + uint32_t schemeMask; + uint8_t i; + + if (!numSchemes) + RETURN_ERROR(MINOR, E_INVALID_VALUE, NO_MSG); + + schemeMask = 0x80000000; + *p_BaseSchemeNum = 0xff; + + for (i=0; schemeMask && numSchemes; schemeMask>>=1, i++) + if ((p_LnxWrpFmDev->usedSchemes & schemeMask) == 0) + { + p_LnxWrpFmDev->usedSchemes |= schemeMask; + numSchemes--; + if (*p_BaseSchemeNum==0xff) + *p_BaseSchemeNum = i; + } + else if (*p_BaseSchemeNum!=0xff) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("Fragmentation on schemes array!!!")); + + if (numSchemes) + RETURN_ERROR(MINOR, E_FULL, ("schemes!!!")); + return E_OK; +} + + +#endif /* __LNXWRP_FM_H__ */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_fm_port.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_fm_port.c @@ -0,0 +1,1183 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + + @File lnxwrp_fm_port.c + + @Description FMD wrapper - FMan port functions. + +*/ + +#include +#if defined(CONFIG_MODVERSIONS) && !defined(MODVERSIONS) +#define MODVERSIONS +#endif +#ifdef MODVERSIONS +#include +#endif /* MODVERSIONS */ +#include +#include +#include +#include +#include +#include +#include + +#include "sprint_ext.h" +#include "fm_port_ext.h" +#include "fm_ioctls.h" +#include "lnxwrp_resources.h" +#include "lnxwrp_sysfs_fm_port.h" + +/* TODO: duplicated, see lnxwrp_fm.c */ +#define ADD_ADV_CONFIG_NO_RET(_func, _param)\ +do {\ + if (i < max) {\ + p_Entry = &p_Entrys[i];\ + p_Entry->p_Function = _func;\ + _param\ + i++;\ + } else {\ + REPORT_ERROR(MAJOR, E_INVALID_VALUE,\ + ("Number of advanced-configuration entries exceeded"));\ + } \ +} while (0) + + +static volatile int hcFrmRcv/* = 0 */; +static spinlock_t lock; + +static enum qman_cb_dqrr_result qm_tx_conf_dqrr_cb(struct qman_portal *portal, + struct qman_fq *fq, + const struct qm_dqrr_entry + *dq) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = ((t_FmTestFq *) fq)->h_Arg; + unsigned long flags; + + FM_PCD_HcTxConf(p_LnxWrpFmDev->h_PcdDev, (t_DpaaFD *)&dq->fd); + spin_lock_irqsave(&lock, flags); + hcFrmRcv--; + spin_unlock_irqrestore(&lock, flags); + + return qman_cb_dqrr_consume; +} + +static enum qman_cb_dqrr_result qm_tx_dqrr_cb(struct qman_portal *portal, + struct qman_fq *fq, + const struct qm_dqrr_entry *dq) +{ + WARN(1, "FMD: failure at %s:%d/%s()!\n", __FILE__, __LINE__, + __func__); + return qman_cb_dqrr_consume; +} + +static void qm_err_cb(struct qman_portal *portal, + struct qman_fq *fq, const struct qm_mr_entry *msg) +{ + WARN(1, "FMD: failure at %s:%d/%s()!\n", __FILE__, __LINE__, + __func__); +} + +static struct qman_fq *FqAlloc(t_LnxWrpFmDev * p_LnxWrpFmDev, + uint32_t fqid, + uint32_t flags, uint16_t channel, uint8_t wq) +{ + int _errno; + struct qman_fq *fq = NULL; + t_FmTestFq *p_FmtFq; + struct qm_mcc_initfq initfq; + + p_FmtFq = (t_FmTestFq *) XX_Malloc(sizeof(t_FmTestFq)); + if (!p_FmtFq) { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FQ obj!!!")); + return NULL; + } + + p_FmtFq->fq_base.cb.dqrr = + (QMAN_FQ_FLAG_NO_ENQUEUE ? qm_tx_conf_dqrr_cb : + qm_tx_dqrr_cb); + p_FmtFq->fq_base.cb.ern = qm_err_cb; + p_FmtFq->fq_base.cb.dc_ern = qm_err_cb; + /* p_FmtFq->fq_base.cb.fqs = qm_err_cb; */ + /* qm_err_cb wrongly called when the FQ is parked */ + p_FmtFq->fq_base.cb.fqs = NULL; + p_FmtFq->h_Arg = (t_Handle) p_LnxWrpFmDev; + if (fqid == 0) { + flags |= QMAN_FQ_FLAG_DYNAMIC_FQID; + flags &= ~QMAN_FQ_FLAG_NO_MODIFY; + } else { + flags &= ~QMAN_FQ_FLAG_DYNAMIC_FQID; + } + + if (qman_create_fq(fqid, flags, &p_FmtFq->fq_base)) { + REPORT_ERROR(MAJOR, E_NO_MEMORY, ("FQ obj - qman_new_fq!!!")); + XX_Free(p_FmtFq); + return NULL; + } + fq = &p_FmtFq->fq_base; + + if (!(flags & QMAN_FQ_FLAG_NO_MODIFY)) { + initfq.we_mask = QM_INITFQ_WE_DESTWQ; + initfq.fqd.dest.channel = channel; + initfq.fqd.dest.wq = wq; + + _errno = qman_init_fq(fq, QMAN_INITFQ_FLAG_SCHED, &initfq); + if (unlikely(_errno < 0)) { + REPORT_ERROR(MAJOR, E_NO_MEMORY, + ("FQ obj - qman_init_fq!!!")); + qman_destroy_fq(fq, 0); + XX_Free(p_FmtFq); + return NULL; + } + } + + DBG(TRACE, + ("fqid %d, flags 0x%08x, channel %d, wq %d", qman_fq_fqid(fq), + flags, channel, wq)); + + return fq; +} + +static void FqFree(struct qman_fq *fq) +{ + int _errno; + + _errno = qman_retire_fq(fq, NULL); + if (unlikely(_errno < 0)) + printk(KERN_WARNING "qman_retire_fq(%u) = %d\n", qman_fq_fqid(fq), _errno); + + _errno = qman_oos_fq(fq); + if (unlikely(_errno < 0)) + printk(KERN_WARNING "qman_oos_fq(%u) = %d\n", qman_fq_fqid(fq), _errno); + + qman_destroy_fq(fq, 0); + XX_Free((t_FmTestFq *) fq); +} + +static t_Error QmEnqueueCB(t_Handle h_Arg, void *p_Fd) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = (t_LnxWrpFmDev *) h_Arg; + int _errno, timeout = 1000000; + unsigned long flags; + + ASSERT_COND(p_LnxWrpFmDev); + + spin_lock_irqsave(&lock, flags); + hcFrmRcv++; + spin_unlock_irqrestore(&lock, flags); + + _errno = qman_enqueue(p_LnxWrpFmDev->hc_tx_fq, (struct qm_fd *) p_Fd, + 0); + if (_errno) + RETURN_ERROR(MINOR, E_INVALID_STATE, + ("qman_enqueue() failed")); + + while (hcFrmRcv && --timeout) { + udelay(1); + cpu_relax(); + } + if (timeout == 0) { + dump_stack(); + RETURN_ERROR(MINOR, E_WRITE_FAILED, + ("timeout waiting for Tx confirmation")); + return E_WRITE_FAILED; + } + + return E_OK; +} + +static t_LnxWrpFmPortDev *ReadFmPortDevTreeNode(struct platform_device + *of_dev) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev; + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev; + struct device_node *fm_node, *port_node; + struct resource res; + const uint32_t *uint32_prop; + int _errno = 0, lenp; +#ifdef CONFIG_FMAN_P1023 + static unsigned char have_oh_port/* = 0 */; +#endif + + port_node = of_node_get(of_dev->dev.of_node); + + /* Get the FM node */ + fm_node = of_get_parent(port_node); + if (unlikely(fm_node == NULL)) { + REPORT_ERROR(MAJOR, E_NO_DEVICE, + ("of_get_parent() = %d", _errno)); + return NULL; + } + + p_LnxWrpFmDev = + dev_get_drvdata(&of_find_device_by_node(fm_node)->dev); + of_node_put(fm_node); + + /* if fm_probe() failed, no point in going further with port probing */ + if (p_LnxWrpFmDev == NULL) + return NULL; + + uint32_prop = + (uint32_t *) of_get_property(port_node, "cell-index", &lenp); + if (unlikely(uint32_prop == NULL)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, + ("of_get_property(%s, cell-index) failed", + port_node->full_name)); + return NULL; + } + if (WARN_ON(lenp != sizeof(uint32_t))) + return NULL; + if (of_device_is_compatible(port_node, "fsl,fman-port-oh")) { + if (unlikely(*uint32_prop >= FM_MAX_NUM_OF_OH_PORTS)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, + ("of_get_property(%s, cell-index) failed", + port_node->full_name)); + return NULL; + } + +#ifdef CONFIG_FMAN_P1023 + /* Beware, this can be done when there is only + one FMan to be initialized */ + if (!have_oh_port) { + have_oh_port = 1; /* first OP/HC port + is used for host command */ +#else + /* Here it is hardcoded the use of the OH port 1 + (with cell-index 0) */ + if (*uint32_prop == 0) { +#endif + p_LnxWrpFmPortDev = &p_LnxWrpFmDev->hcPort; + p_LnxWrpFmPortDev->id = 0; + /* + p_LnxWrpFmPortDev->id = *uint32_prop-1; + p_LnxWrpFmPortDev->id = *uint32_prop; + */ + p_LnxWrpFmPortDev->settings.param.portType = + e_FM_PORT_TYPE_OH_HOST_COMMAND; + } else { + p_LnxWrpFmPortDev = + &p_LnxWrpFmDev->opPorts[*uint32_prop - 1]; + p_LnxWrpFmPortDev->id = *uint32_prop - 1; + p_LnxWrpFmPortDev->settings.param.portType = + e_FM_PORT_TYPE_OH_OFFLINE_PARSING; + } + p_LnxWrpFmPortDev->settings.param.portId = *uint32_prop; + + uint32_prop = + (uint32_t *) of_get_property(port_node, + "fsl,qman-channel-id", + &lenp); + if (uint32_prop == NULL) { + /* + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("missing fsl,qman-channel-id")); + */ + XX_Print("FM warning: missing fsl,qman-channel-id" + " for OH port.\n"); + return NULL; + } + if (WARN_ON(lenp != sizeof(uint32_t))) + return NULL; + p_LnxWrpFmPortDev->txCh = *uint32_prop; + + p_LnxWrpFmPortDev->settings.param.specificParams.nonRxParams. + qmChannel = p_LnxWrpFmPortDev->txCh; + } else if (of_device_is_compatible(port_node, "fsl,fman-port-1g-tx") || + of_device_is_compatible(port_node, "fsl,fman-port-10g-tx")) { + if (unlikely(*uint32_prop >= FM_MAX_NUM_OF_TX_PORTS)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, + ("of_get_property(%s, cell-index) failed", + port_node->full_name)); + return NULL; + } + if (of_device_is_compatible + (port_node, "fsl,fman-port-10g-tx")) + p_LnxWrpFmPortDev = + &p_LnxWrpFmDev->txPorts[*uint32_prop + + FM_MAX_NUM_OF_1G_TX_PORTS]; + else + p_LnxWrpFmPortDev = + &p_LnxWrpFmDev->txPorts[*uint32_prop]; + + p_LnxWrpFmPortDev->id = *uint32_prop; + p_LnxWrpFmPortDev->settings.param.portId = + p_LnxWrpFmPortDev->id; + if (of_device_is_compatible + (port_node, "fsl,fman-port-10g-tx")) + p_LnxWrpFmPortDev->settings.param.portType = + e_FM_PORT_TYPE_TX_10G; + else + p_LnxWrpFmPortDev->settings.param.portType = + e_FM_PORT_TYPE_TX; + + uint32_prop = + (uint32_t *) of_get_property(port_node, + "fsl,qman-channel-id", + &lenp); + if (uint32_prop == NULL) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, + ("missing fsl,qman-channel-id")); + return NULL; + } + if (WARN_ON(lenp != sizeof(uint32_t))) + return NULL; + p_LnxWrpFmPortDev->txCh = *uint32_prop; + p_LnxWrpFmPortDev->settings.param.specificParams.nonRxParams. + qmChannel = p_LnxWrpFmPortDev->txCh; + } else if (of_device_is_compatible(port_node, "fsl,fman-port-1g-rx") || + of_device_is_compatible(port_node, "fsl,fman-port-10g-rx")) { + if (unlikely(*uint32_prop >= FM_MAX_NUM_OF_RX_PORTS)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, + ("of_get_property(%s, cell-index) failed", + port_node->full_name)); + return NULL; + } + if (of_device_is_compatible + (port_node, "fsl,fman-port-10g-rx")) + p_LnxWrpFmPortDev = + &p_LnxWrpFmDev->rxPorts[*uint32_prop + + FM_MAX_NUM_OF_1G_RX_PORTS]; + else + p_LnxWrpFmPortDev = + &p_LnxWrpFmDev->rxPorts[*uint32_prop]; + + p_LnxWrpFmPortDev->id = *uint32_prop; + p_LnxWrpFmPortDev->settings.param.portId = + p_LnxWrpFmPortDev->id; + if (of_device_is_compatible + (port_node, "fsl,fman-port-10g-rx")) + p_LnxWrpFmPortDev->settings.param.portType = + e_FM_PORT_TYPE_RX_10G; + else + p_LnxWrpFmPortDev->settings.param.portType = + e_FM_PORT_TYPE_RX; + + if (p_LnxWrpFmDev->pcdActive) + p_LnxWrpFmPortDev->defPcd = p_LnxWrpFmDev->defPcd; + } else { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("Illegal port type")); + return NULL; + } + + _errno = of_address_to_resource(port_node, 0, &res); + if (unlikely(_errno < 0)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, + ("of_address_to_resource() = %d", _errno)); + return NULL; + } + + p_LnxWrpFmPortDev->dev = &of_dev->dev; + p_LnxWrpFmPortDev->baseAddr = 0; + p_LnxWrpFmPortDev->phys_baseAddr = res.start; + p_LnxWrpFmPortDev->memSize = res.end + 1 - res.start; + p_LnxWrpFmPortDev->settings.param.h_Fm = p_LnxWrpFmDev->h_Dev; + p_LnxWrpFmPortDev->h_LnxWrpFmDev = (t_Handle) p_LnxWrpFmDev; + + of_node_put(port_node); + + p_LnxWrpFmPortDev->active = TRUE; + +#if defined(CONFIG_FMAN_DISABLE_OH_TO_REUSE_RESOURCES) + /* for performance mode no OH port available. */ + if (p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_OH_OFFLINE_PARSING) + p_LnxWrpFmPortDev->active = FALSE; +#endif + + return p_LnxWrpFmPortDev; +} + +static t_Error ConfigureFmPortDev(t_LnxWrpFmPortDev *p_LnxWrpFmPortDev) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = + (t_LnxWrpFmDev *) p_LnxWrpFmPortDev->h_LnxWrpFmDev; + struct resource *dev_res; + + if (!p_LnxWrpFmPortDev->active) + RETURN_ERROR(MAJOR, E_INVALID_STATE, + ("FM port not configured!!!")); + + dev_res = + __devm_request_region(p_LnxWrpFmDev->dev, p_LnxWrpFmDev->res, + p_LnxWrpFmPortDev->phys_baseAddr, + p_LnxWrpFmPortDev->memSize, + "fman-port-hc"); + if (unlikely(dev_res == NULL)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, + ("__devm_request_region() failed")); + p_LnxWrpFmPortDev->baseAddr = + PTR_TO_UINT(devm_ioremap + (p_LnxWrpFmDev->dev, + p_LnxWrpFmPortDev->phys_baseAddr, + p_LnxWrpFmPortDev->memSize)); + if (unlikely(p_LnxWrpFmPortDev->baseAddr == 0)) + REPORT_ERROR(MAJOR, E_INVALID_STATE, + ("devm_ioremap() failed")); + + p_LnxWrpFmPortDev->settings.param.baseAddr = + p_LnxWrpFmPortDev->baseAddr; + + return E_OK; +} + +static t_Error InitFmPort3TupleDefPcd(t_LnxWrpFmPortDev *p_LnxWrpFmPortDev) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = + (t_LnxWrpFmDev *) p_LnxWrpFmPortDev->h_LnxWrpFmDev; + t_FmPcdNetEnvParams *p_netEnvParam = NULL; + t_FmPcdKgSchemeParams *p_schemeParam = NULL; + t_FmPortPcdParams pcdParam; + t_FmPortPcdPrsParams prsParam; + t_FmPortPcdKgParams kgParam; + uint8_t i, j; + + if (!p_LnxWrpFmDev->kgActive) + RETURN_ERROR(MAJOR, E_INVALID_STATE, + ("keygen must be enabled for 3-tuple PCD!")); + + if (!p_LnxWrpFmDev->prsActive) + RETURN_ERROR(MAJOR, E_INVALID_STATE, + ("parser must be enabled for 3-tuple PCD!")); + + if (p_LnxWrpFmPortDev->pcdNumOfQs < 9) + RETURN_ERROR(MINOR, E_INVALID_VALUE, + ("Need to save at least 18 queues for" + "3-tuple PCD!!!")); + + p_LnxWrpFmPortDev->totalNumOfSchemes = + p_LnxWrpFmPortDev->numOfSchemesUsed = 2; + + if (AllocSchemesForPort + (p_LnxWrpFmDev, p_LnxWrpFmPortDev->totalNumOfSchemes, + &p_LnxWrpFmPortDev->schemesBase) != E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, + ("No schemes for Rx or OP port for" + " 3-tuple PCD!!!")); + + p_netEnvParam = kzalloc(sizeof(*p_netEnvParam), GFP_KERNEL); + if (!p_netEnvParam) { + RETURN_ERROR(MAJOR, E_NO_MEMORY, + ("Failed to allocate p_netEnvParam")); + } + /* set netEnv */ + p_netEnvParam->numOfDistinctionUnits = 2; + p_netEnvParam->units[0].hdrs[0].hdr = + HEADER_TYPE_IPv4; /* no special options */ + p_netEnvParam->units[1].hdrs[0].hdr = HEADER_TYPE_ETH; + p_LnxWrpFmPortDev->h_DefNetEnv = + FM_PCD_SetNetEnvCharacteristics(p_LnxWrpFmDev->h_PcdDev, + p_netEnvParam); + kfree(p_netEnvParam); + if (!p_LnxWrpFmPortDev->h_DefNetEnv) + RETURN_ERROR(MAJOR, E_INVALID_HANDLE, ("FM PCD!")); + + p_schemeParam = kmalloc(sizeof(*p_schemeParam), GFP_KERNEL); + if (!p_schemeParam) { + RETURN_ERROR(MAJOR, E_NO_MEMORY, + ("Failed to allocate p_schemeParam")); + } + for (i = 0; i < p_LnxWrpFmPortDev->numOfSchemesUsed; i++) { + memset(p_schemeParam, 0, sizeof(*p_schemeParam)); + p_schemeParam->modify = FALSE; + p_schemeParam->id.relativeSchemeId = + i + p_LnxWrpFmPortDev->schemesBase; + p_schemeParam->alwaysDirect = FALSE; + p_schemeParam->netEnvParams.h_NetEnv = + p_LnxWrpFmPortDev->h_DefNetEnv; + p_schemeParam->schemeCounter.update = TRUE; + p_schemeParam->schemeCounter.value = 0; + + switch (i) { + case (0): /* catch IPv4 */ + p_schemeParam->netEnvParams.numOfDistinctionUnits = 1; + p_schemeParam->netEnvParams.unitIds[0] = 0; + p_schemeParam->baseFqid = p_LnxWrpFmPortDev->pcdBaseQ; + p_schemeParam->nextEngine = e_FM_PCD_DONE; + p_schemeParam->numOfUsedExtractedOrs = 0; + p_schemeParam->useHash = TRUE; + p_schemeParam->keyExtractAndHashParams. + numOfUsedExtracts = 3; + for (j = 0; + j < + p_schemeParam->keyExtractAndHashParams. + numOfUsedExtracts; j++) { + p_schemeParam->keyExtractAndHashParams. + extractArray[j].type = + e_FM_PCD_EXTRACT_BY_HDR; + p_schemeParam->keyExtractAndHashParams. + extractArray[j].extractByHdr.hdr = + HEADER_TYPE_IPv4; + p_schemeParam->keyExtractAndHashParams. + extractArray[j].extractByHdr. + ignoreProtocolValidation = FALSE; + p_schemeParam->keyExtractAndHashParams. + extractArray[j].extractByHdr.type = + e_FM_PCD_EXTRACT_FULL_FIELD; + } + p_schemeParam->keyExtractAndHashParams. + extractArray[0].extractByHdr.extractByHdrType. + fullField.ipv4 = NET_HEADER_FIELD_IPv4_PROTO; + p_schemeParam->keyExtractAndHashParams. + extractArray[1].extractByHdr.extractByHdrType. + fullField.ipv4 = NET_HEADER_FIELD_IPv4_SRC_IP; + p_schemeParam->keyExtractAndHashParams. + extractArray[2].extractByHdr.extractByHdrType. + fullField.ipv4 = NET_HEADER_FIELD_IPv4_DST_IP; + + if (p_schemeParam->useHash) { + p_schemeParam->keyExtractAndHashParams. + privateDflt0 = 0x01020304; + p_schemeParam->keyExtractAndHashParams. + privateDflt1 = 0x11121314; + p_schemeParam->keyExtractAndHashParams. + numOfUsedDflts = + FM_PCD_KG_NUM_OF_DEFAULT_GROUPS; + for (j = 0; + j < FM_PCD_KG_NUM_OF_DEFAULT_GROUPS; + j++) { + /* all types */ + p_schemeParam->keyExtractAndHashParams.dflts[j].type = + (e_FmPcdKgKnownFieldsDfltTypes) j; + p_schemeParam-> + keyExtractAndHashParams. + dflts[j].dfltSelect = + e_FM_PCD_KG_DFLT_GBL_0; + } + p_schemeParam->keyExtractAndHashParams. + numOfUsedMasks = 0; + p_schemeParam->keyExtractAndHashParams. + hashShift = 0; + p_schemeParam->keyExtractAndHashParams. + hashDistributionNumOfFqids = 8; + } + break; + + case (1): /* Garbage collector */ + p_schemeParam->netEnvParams.numOfDistinctionUnits = 0; + p_schemeParam->baseFqid = + p_LnxWrpFmPortDev->pcdBaseQ + 8; + break; + + default: + break; + } + + p_LnxWrpFmPortDev->h_Schemes[i] = + FM_PCD_KgSetScheme(p_LnxWrpFmDev->h_PcdDev, + p_schemeParam); + if (!p_LnxWrpFmPortDev->h_Schemes[i]) { + kfree(p_schemeParam); + RETURN_ERROR(MAJOR, E_INVALID_HANDLE, + ("FM_PCD_KgSetScheme failed")); + } + } + kfree(p_schemeParam); + + /* initialize PCD parameters */ + memset(&pcdParam, 0, sizeof(t_FmPortPcdParams)); + pcdParam.h_NetEnv = p_LnxWrpFmPortDev->h_DefNetEnv; + pcdParam.pcdSupport = e_FM_PORT_PCD_SUPPORT_PRS_AND_KG; + + /* initialize Keygen parameters */ + memset(&prsParam, 0, sizeof(t_FmPortPcdPrsParams)); + + prsParam.parsingOffset = 0; + prsParam.firstPrsHdr = HEADER_TYPE_ETH; + pcdParam.p_PrsParams = &prsParam; + + /* initialize Parser parameters */ + memset(&kgParam, 0, sizeof(t_FmPortPcdKgParams)); + kgParam.numOfSchemes = p_LnxWrpFmPortDev->numOfSchemesUsed; + for (i = 0; i < kgParam.numOfSchemes; i++) + kgParam.h_Schemes[i] = p_LnxWrpFmPortDev->h_Schemes[i]; + + pcdParam.p_KgParams = &kgParam; + + return FM_PORT_SetPCD(p_LnxWrpFmPortDev->h_Dev, &pcdParam); +} + +static t_Error InitFmPortDev(t_LnxWrpFmPortDev *p_LnxWrpFmPortDev) +{ +#define MY_ADV_CONFIG_CHECK_END \ + RETURN_ERROR(MAJOR, E_INVALID_SELECTION,\ + ("Advanced configuration routine"));\ + if (errCode != E_OK)\ + RETURN_ERROR(MAJOR, errCode, NO_MSG);\ + } + + int i = 0; + + if (!p_LnxWrpFmPortDev->active || p_LnxWrpFmPortDev->h_Dev) + return E_INVALID_STATE; + + p_LnxWrpFmPortDev->h_Dev = + FM_PORT_Config(&p_LnxWrpFmPortDev->settings.param); + if (p_LnxWrpFmPortDev->h_Dev == NULL) + RETURN_ERROR(MAJOR, E_INVALID_HANDLE, ("FM-port")); + + if ((p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_TX_10G) + || (p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_TX)) { + t_Error errCode = E_OK; + errCode = + FM_PORT_ConfigDeqHighPriority(p_LnxWrpFmPortDev->h_Dev, + TRUE); + if (errCode != E_OK) + RETURN_ERROR(MAJOR, errCode, NO_MSG); +#ifdef FM_QMI_DEQ_OPTIONS_SUPPORT + errCode = + FM_PORT_ConfigDeqPrefetchOption(p_LnxWrpFmPortDev->h_Dev, + e_FM_PORT_DEQ_FULL_PREFETCH); + if (errCode + != E_OK) + RETURN_ERROR(MAJOR, errCode, NO_MSG); +#endif /* FM_QMI_DEQ_OPTIONS_SUPPORT */ + } + +/* Call the driver's advanced configuration routines, if requested: + Compare the function pointer of each entry to the available routines, + and invoke the matching routine with proper casting of arguments. */ + while (p_LnxWrpFmPortDev->settings.advConfig[i].p_Function + && (i < FM_MAX_NUM_OF_ADV_SETTINGS)) { + ADV_CONFIG_CHECK_START(& + (p_LnxWrpFmPortDev->settings. + advConfig[i])) + + ADV_CONFIG_CHECK(p_LnxWrpFmPortDev->h_Dev, + FM_PORT_ConfigBufferPrefixContent, + PARAMS(1, + (t_FmPortBufferPrefixContent + *))) + + MY_ADV_CONFIG_CHECK_END + /* Advance to next advanced configuration entry */ + i++; + } + + if (FM_PORT_Init(p_LnxWrpFmPortDev->h_Dev) != E_OK) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); +#if defined(CONFIG_FMAN_RESOURCE_ALLOCATION_ALGORITHM) + /* even if these functions return w/ error, do not crash kernel. + Do not return anything because the container function is not + linux complient (it should return -EIO). */ + fm_set_precalculate_fifosize(p_LnxWrpFmPortDev); + fm_set_precalculate_open_dma(p_LnxWrpFmPortDev); + fm_set_precalculate_tnums(p_LnxWrpFmPortDev); +#endif + +/* FMan Fifo sizes behind the scene": + * Using the following formulae (*), under a set of simplifying assumptions (.): + * . all ports are configured in Normal Mode (rather than Independent Mode) + * . the DPAA Eth driver allocates buffers of size: + * . MAXFRM + NET_IP_ALIGN + DPA_PRIV_DATA_SIZE + DPA_PARSE_RESULTS_SIZE + * + DPA_HASH_RESULTS_SIZE, i.e.: + * MAXFRM + 2 + 16 + sizeof(t_FmPrsResult) + 16, i.e.: + * MAXFRM + 66 + * . excessive buffer pools not accounted for + * + * * for Rx ports on P4080: + * . IFSZ = ceil(max(FMBM_EBMPI[PBS]) / 256) * 256 + 7 * 256 + * . no internal frame offset (FMBM_RIM[FOF] == 0) - otherwise, + * add up to 256 to the above + * + * * for Rx ports on P1023: + * . IFSZ = ceil(second_largest(FMBM_EBMPI[PBS] / 256)) * 256 + 7 * 256, + * if at least 2 bpools are configured + * . IFSZ = 8 * 256, if only a single bpool is configured + * + * * for Tx ports: + * . IFSZ = ceil(frame_size / 256) * 256 + 3 * 256 + * + FMBM_TFP[DPDE] * 256, i.e.: + * IFSZ = ceil(MAXFRM / 256) * 256 + 3 x 256 + FMBM_TFP[DPDE] * 256 + * + * * for OH ports on P4080: + * . IFSZ = ceil(frame_size / 256) * 256 + 1 * 256 + FMBM_PP[MXT] * 256 + * * for OH ports on P1023: + * . IFSZ = ceil(frame_size / 256) * 256 + 3 * 256 + FMBM_TFP[DPDE] * 256 + * * for both P4080 and P1023: + * . (conservative decisions, assuming that BMI must bring the entire + * frame, not only the frame header) + * . no internal frame offset (FMBM_OIM[FOF] == 0) - otherwise, + * add up to 256 to the above + * + * . for P4080/P5020/P3041/P2040, DPDE is: + * > 0 or 1, for 1Gb ports, HW default: 0 + * > 2..7 (recommended: 3..7) for 10Gb ports, HW default: 3 + * . for P1023, DPDE should be 1 + * + * . for P1023, MXT is in range (0..31) + * . for P4080, MXT is in range (0..63) + * + */ + + if ((p_LnxWrpFmPortDev->defPcd != e_NO_PCD) && + (InitFmPort3TupleDefPcd(p_LnxWrpFmPortDev) != E_OK)) + RETURN_ERROR(MAJOR, E_INVALID_STATE, NO_MSG); + + return E_OK; +} + +void fm_set_rx_port_params(struct fm_port *port, + struct fm_port_rx_params *params) +{ + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev = (t_LnxWrpFmPortDev *) port; + int i; + + p_LnxWrpFmPortDev->settings.param.specificParams.rxParams.errFqid = + params->errq; + p_LnxWrpFmPortDev->settings.param.specificParams.rxParams.dfltFqid = + params->defq; + p_LnxWrpFmPortDev->settings.param.specificParams.rxParams.extBufPools. + numOfPoolsUsed = params->num_pools; + for (i = 0; i < params->num_pools; i++) { + p_LnxWrpFmPortDev->settings.param.specificParams.rxParams. + extBufPools.extBufPool[i].id = + params->pool_param[i].id; + p_LnxWrpFmPortDev->settings.param.specificParams.rxParams. + extBufPools.extBufPool[i].size = + params->pool_param[i].size; + } + + p_LnxWrpFmPortDev->buffPrefixContent.privDataSize = + params->priv_data_size; + p_LnxWrpFmPortDev->buffPrefixContent.passPrsResult = + params->parse_results; + p_LnxWrpFmPortDev->buffPrefixContent.passHashResult = + params->hash_results; + p_LnxWrpFmPortDev->buffPrefixContent.passTimeStamp = + params->time_stamp; + + ADD_ADV_CONFIG_START(p_LnxWrpFmPortDev->settings.advConfig, + FM_MAX_NUM_OF_ADV_SETTINGS) + + ADD_ADV_CONFIG_NO_RET(FM_PORT_ConfigBufferPrefixContent, + ARGS(1, + (&p_LnxWrpFmPortDev-> + buffPrefixContent))); + + ADD_ADV_CONFIG_END InitFmPortDev(p_LnxWrpFmPortDev); +} +EXPORT_SYMBOL(fm_set_rx_port_params); + +void fm_set_tx_port_params(struct fm_port *port, + struct fm_port_non_rx_params *params) +{ + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev = (t_LnxWrpFmPortDev *) port; + + p_LnxWrpFmPortDev->settings.param.specificParams.nonRxParams.errFqid = + params->errq; + p_LnxWrpFmPortDev->settings.param.specificParams.nonRxParams. + dfltFqid = params->defq; + + p_LnxWrpFmPortDev->buffPrefixContent.privDataSize = + params->priv_data_size; + p_LnxWrpFmPortDev->buffPrefixContent.passPrsResult = + params->parse_results; + p_LnxWrpFmPortDev->buffPrefixContent.passHashResult = + params->hash_results; + p_LnxWrpFmPortDev->buffPrefixContent.passTimeStamp = + params->time_stamp; + + ADD_ADV_CONFIG_START(p_LnxWrpFmPortDev->settings.advConfig, + FM_MAX_NUM_OF_ADV_SETTINGS) + + ADD_ADV_CONFIG_NO_RET(FM_PORT_ConfigBufferPrefixContent, + ARGS(1, + (&p_LnxWrpFmPortDev-> + buffPrefixContent))); + + ADD_ADV_CONFIG_END InitFmPortDev(p_LnxWrpFmPortDev); +} +EXPORT_SYMBOL(fm_set_tx_port_params); + +static void LnxwrpFmPcdDevExceptionsCb(t_Handle h_App, + e_FmPcdExceptions exception) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = (t_LnxWrpFmDev *) h_App; + + ASSERT_COND(p_LnxWrpFmDev); + + DBG(INFO, ("got fm-pcd exception %d", exception)); + + /* do nothing */ + UNUSED(exception); +} + +static void LnxwrpFmPcdDevIndexedExceptionsCb(t_Handle h_App, + e_FmPcdExceptions exception, + uint16_t index) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = (t_LnxWrpFmDev *) h_App; + + ASSERT_COND(p_LnxWrpFmDev); + + DBG(INFO, + ("got fm-pcd-indexed exception %d, indx %d", exception, index)); + + /* do nothing */ + UNUSED(exception); + UNUSED(index); +} + +static t_Error InitFmPcdDev(t_LnxWrpFmDev *p_LnxWrpFmDev) +{ + spin_lock_init(&lock); + + if (p_LnxWrpFmDev->pcdActive) { + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev = &p_LnxWrpFmDev->hcPort; + t_FmPcdParams fmPcdParams; + t_Error err; + + memset(&fmPcdParams, 0, sizeof(fmPcdParams)); + fmPcdParams.h_Fm = p_LnxWrpFmDev->h_Dev; + fmPcdParams.prsSupport = p_LnxWrpFmDev->prsActive; + fmPcdParams.kgSupport = p_LnxWrpFmDev->kgActive; + fmPcdParams.plcrSupport = p_LnxWrpFmDev->plcrActive; + fmPcdParams.ccSupport = p_LnxWrpFmDev->ccActive; + fmPcdParams.numOfSchemes = FM_PCD_KG_NUM_OF_SCHEMES; + +#ifndef CONFIG_GUEST_PARTITION + fmPcdParams.f_Exception = LnxwrpFmPcdDevExceptionsCb; + if (fmPcdParams.kgSupport) + fmPcdParams.f_ExceptionId = + LnxwrpFmPcdDevIndexedExceptionsCb; + fmPcdParams.h_App = p_LnxWrpFmDev; +#endif /* !CONFIG_GUEST_PARTITION */ + +#ifdef CONFIG_MULTI_PARTITION_SUPPORT + fmPcdParams.numOfSchemes = 0; + fmPcdParams.numOfClsPlanEntries = 0; + fmPcdParams.partitionId = 0; +#endif /* CONFIG_MULTI_PARTITION_SUPPORT */ + fmPcdParams.useHostCommand = TRUE; + + p_LnxWrpFmDev->hc_tx_fq = + FqAlloc(p_LnxWrpFmDev, + 0, + QMAN_FQ_FLAG_TO_DCPORTAL, + p_LnxWrpFmPortDev->txCh, 0); + if (!p_LnxWrpFmDev->hc_tx_fq) + RETURN_ERROR(MAJOR, E_NULL_POINTER, + ("Frame queue allocation failed...")); + + p_LnxWrpFmDev->hc_tx_conf_fq = + FqAlloc(p_LnxWrpFmDev, + 0, + QMAN_FQ_FLAG_NO_ENQUEUE, + p_LnxWrpFmDev->hcCh, 7); + if (!p_LnxWrpFmDev->hc_tx_conf_fq) + RETURN_ERROR(MAJOR, E_NULL_POINTER, + ("Frame queue allocation failed...")); + + p_LnxWrpFmDev->hc_tx_err_fq = + FqAlloc(p_LnxWrpFmDev, + 0, + QMAN_FQ_FLAG_NO_ENQUEUE, + p_LnxWrpFmDev->hcCh, 7); + if (!p_LnxWrpFmDev->hc_tx_err_fq) + RETURN_ERROR(MAJOR, E_NULL_POINTER, + ("Frame queue allocation failed...")); + + fmPcdParams.hc.portBaseAddr = p_LnxWrpFmPortDev->baseAddr; + fmPcdParams.hc.portId = + p_LnxWrpFmPortDev->settings.param.portId; + fmPcdParams.hc.liodnBase = + p_LnxWrpFmPortDev->settings.param.liodnBase; + fmPcdParams.hc.errFqid = + qman_fq_fqid(p_LnxWrpFmDev->hc_tx_err_fq); + fmPcdParams.hc.confFqid = + qman_fq_fqid(p_LnxWrpFmDev->hc_tx_conf_fq); + fmPcdParams.hc.qmChannel = p_LnxWrpFmPortDev->txCh; + fmPcdParams.hc.f_QmEnqueue = QmEnqueueCB; + fmPcdParams.hc.h_QmArg = (t_Handle) p_LnxWrpFmDev; + + p_LnxWrpFmDev->h_PcdDev = FM_PCD_Config(&fmPcdParams); + if (!p_LnxWrpFmDev->h_PcdDev) + RETURN_ERROR(MAJOR, E_INVALID_HANDLE, ("FM PCD!")); + + err = + FM_PCD_ConfigPlcrNumOfSharedProfiles(p_LnxWrpFmDev->h_PcdDev, + LNXWRP_FM_NUM_OF_SHARED_PROFILES); + if (err != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + + err = FM_PCD_Init(p_LnxWrpFmDev->h_PcdDev); + if (err != E_OK) + RETURN_ERROR(MAJOR, err, NO_MSG); + + if (p_LnxWrpFmDev->err_irq == 0) { + FM_PCD_SetException(p_LnxWrpFmDev->h_PcdDev, + e_FM_PCD_KG_EXCEPTION_DOUBLE_ECC, + FALSE); + FM_PCD_SetException(p_LnxWrpFmDev->h_PcdDev, + e_FM_PCD_KG_EXCEPTION_KEYSIZE_OVERFLOW, + FALSE); + FM_PCD_SetException(p_LnxWrpFmDev->h_PcdDev, + e_FM_PCD_PLCR_EXCEPTION_INIT_ENTRY_ERROR, + FALSE); + FM_PCD_SetException(p_LnxWrpFmDev->h_PcdDev, + e_FM_PCD_PLCR_EXCEPTION_DOUBLE_ECC, + FALSE); + FM_PCD_SetException(p_LnxWrpFmDev->h_PcdDev, + e_FM_PCD_PRS_EXCEPTION_DOUBLE_ECC, + FALSE); + FM_PCD_SetException(p_LnxWrpFmDev->h_PcdDev, + e_FM_PCD_PLCR_EXCEPTION_PRAM_SELF_INIT_COMPLETE, + FALSE); + FM_PCD_SetException(p_LnxWrpFmDev->h_PcdDev, + e_FM_PCD_PLCR_EXCEPTION_ATOMIC_ACTION_COMPLETE, + FALSE); + FM_PCD_SetException(p_LnxWrpFmDev->h_PcdDev, + e_FM_PCD_PRS_EXCEPTION_SINGLE_ECC, + FALSE); + } + } + + return E_OK; +} + +void FreeFmPcdDev(t_LnxWrpFmDev *p_LnxWrpFmDev) +{ + + if (p_LnxWrpFmDev->h_PcdDev) + FM_PCD_Free(p_LnxWrpFmDev->h_PcdDev); + + if (p_LnxWrpFmDev->hc_tx_err_fq) + FqFree(p_LnxWrpFmDev->hc_tx_err_fq); + + if (p_LnxWrpFmDev->hc_tx_conf_fq) + FqFree(p_LnxWrpFmDev->hc_tx_conf_fq); + + if (p_LnxWrpFmDev->hc_tx_fq) + FqFree(p_LnxWrpFmDev->hc_tx_fq); +} + +static void FreeFmPortDev(t_LnxWrpFmPortDev *p_LnxWrpFmPortDev) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = + (t_LnxWrpFmDev *) p_LnxWrpFmPortDev->h_LnxWrpFmDev; + + if (!p_LnxWrpFmPortDev->active) + return; + + if (p_LnxWrpFmPortDev->h_Dev) + FM_PORT_Free(p_LnxWrpFmPortDev->h_Dev); + + devm_iounmap(p_LnxWrpFmDev->dev, + UINT_TO_PTR(p_LnxWrpFmPortDev->baseAddr)); + __devm_release_region(p_LnxWrpFmDev->dev, p_LnxWrpFmDev->res, + p_LnxWrpFmPortDev->phys_baseAddr, + p_LnxWrpFmPortDev->memSize); +} + +static int fm_port_probe(struct platform_device *of_dev) +{ + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev; + t_LnxWrpFmDev *p_LnxWrpFmDev; + struct device *dev; + + dev = &of_dev->dev; + + p_LnxWrpFmPortDev = ReadFmPortDevTreeNode(of_dev); + if (p_LnxWrpFmPortDev == NULL) + return -EIO; + /* Port can be inactive, thus will not be probed: + - in performance mode, OH ports are disabled + ... + */ + if (!p_LnxWrpFmPortDev->active) + return 0; + + if (ConfigureFmPortDev(p_LnxWrpFmPortDev) != E_OK) + return -EIO; + + dev_set_drvdata(dev, p_LnxWrpFmPortDev); + + if ((p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_OH_HOST_COMMAND) + && + (InitFmPcdDev((t_LnxWrpFmDev *) p_LnxWrpFmPortDev->h_LnxWrpFmDev) + != E_OK)) + return -EIO; + + p_LnxWrpFmDev = (t_LnxWrpFmDev *) p_LnxWrpFmPortDev->h_LnxWrpFmDev; + + if (p_LnxWrpFmPortDev->settings.param.portType == e_FM_PORT_TYPE_RX) { + Sprint(p_LnxWrpFmPortDev->name, "%s-port-rx%d", + p_LnxWrpFmDev->name, p_LnxWrpFmPortDev->id); + p_LnxWrpFmPortDev->minor = + p_LnxWrpFmPortDev->id + DEV_FM_RX_PORTS_MINOR_BASE; + } else if (p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_RX_10G) { + Sprint(p_LnxWrpFmPortDev->name, "%s-port-rx%d", + p_LnxWrpFmDev->name, + p_LnxWrpFmPortDev->id + FM_MAX_NUM_OF_1G_RX_PORTS); + p_LnxWrpFmPortDev->minor = + p_LnxWrpFmPortDev->id + FM_MAX_NUM_OF_1G_RX_PORTS + + DEV_FM_RX_PORTS_MINOR_BASE; + } else if (p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_TX) { + Sprint(p_LnxWrpFmPortDev->name, "%s-port-tx%d", + p_LnxWrpFmDev->name, p_LnxWrpFmPortDev->id); + p_LnxWrpFmPortDev->minor = + p_LnxWrpFmPortDev->id + DEV_FM_TX_PORTS_MINOR_BASE; + } else if (p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_TX_10G) { + Sprint(p_LnxWrpFmPortDev->name, "%s-port-tx%d", + p_LnxWrpFmDev->name, + p_LnxWrpFmPortDev->id + FM_MAX_NUM_OF_1G_TX_PORTS); + p_LnxWrpFmPortDev->minor = + p_LnxWrpFmPortDev->id + FM_MAX_NUM_OF_1G_TX_PORTS + + DEV_FM_TX_PORTS_MINOR_BASE; + } else if (p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_OH_HOST_COMMAND) { + Sprint(p_LnxWrpFmPortDev->name, "%s-port-oh%d", + p_LnxWrpFmDev->name, p_LnxWrpFmPortDev->id); + p_LnxWrpFmPortDev->minor = + p_LnxWrpFmPortDev->id + DEV_FM_OH_PORTS_MINOR_BASE; + } else if (p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_OH_OFFLINE_PARSING) { + Sprint(p_LnxWrpFmPortDev->name, "%s-port-oh%d", + p_LnxWrpFmDev->name, p_LnxWrpFmPortDev->id + 1); + p_LnxWrpFmPortDev->minor = + p_LnxWrpFmPortDev->id + 1 + + DEV_FM_OH_PORTS_MINOR_BASE; + } + + device_create(p_LnxWrpFmDev->fm_class, NULL, + MKDEV(p_LnxWrpFmDev->major, p_LnxWrpFmPortDev->minor), + NULL, p_LnxWrpFmPortDev->name); + + /* create sysfs entries for stats and regs */ + + if (fm_port_sysfs_create(dev) != 0) { + FreeFmPortDev(p_LnxWrpFmPortDev); + REPORT_ERROR(MAJOR, E_INVALID_STATE, + ("Unable to create sys entry - fm port!!!")); + return -EIO; + } + +#ifdef FM_TX_INVALID_ECC_ERRATA_10GMAC_A009 + FM_DisableRamsEcc(p_LnxWrpFmDev->h_Dev); +#endif /* FM_TX_INVALID_ECC_ERRATA_10GMAC_A009 */ + + DBG(TRACE, ("%s probed", p_LnxWrpFmPortDev->name)); + + return 0; +} + +static int fm_port_remove(struct platform_device *of_dev) +{ + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev; + t_LnxWrpFmDev *p_LnxWrpFmDev; + struct device *dev; + + dev = &of_dev->dev; + p_LnxWrpFmPortDev = dev_get_drvdata(dev); + + fm_port_sysfs_destroy(dev); + + p_LnxWrpFmDev = (t_LnxWrpFmDev *) p_LnxWrpFmPortDev->h_LnxWrpFmDev; + device_destroy(p_LnxWrpFmDev->fm_class, + MKDEV(p_LnxWrpFmDev->major, p_LnxWrpFmPortDev->minor)); + + FreeFmPortDev(p_LnxWrpFmPortDev); + + dev_set_drvdata(dev, NULL); + + return 0; +} + +static const struct of_device_id fm_port_match[] = { + { + .compatible = "fsl,fman-port-oh"}, + { + .compatible = "fsl,fman-port-1g-rx"}, + { + .compatible = "fsl,fman-port-10g-rx"}, + { + .compatible = "fsl,fman-port-1g-tx"}, + { + .compatible = "fsl,fman-port-10g-tx"}, + {} +}; + +#ifndef MODULE +MODULE_DEVICE_TABLE(of, fm_port_match); +#endif /* !MODULE */ + +static struct platform_driver fm_port_driver = { + + .driver = { + .name = "fsl-fman-port", + .of_match_table = fm_port_match, + .owner = THIS_MODULE, + }, + .probe = fm_port_probe, + .remove = fm_port_remove, +}; + + +t_Error LNXWRP_FM_Port_Init(void) +{ + /* Register to the DTB for basic FM port API */ + if (platform_driver_register(&fm_port_driver)) + return E_NO_DEVICE; + + return E_OK; +} + +void LNXWRP_FM_Port_Free(void) +{ + platform_driver_unregister(&fm_port_driver); +} + +static int __init __cold fm_port_load(void) +{ + if (LNXWRP_FM_Port_Init() != E_OK) { + printk(KERN_CRIT "Failed to init FM Ports wrapper!\n"); + return -ENODEV; + } + + printk(KERN_INFO "Freescale FM Ports module (" __DATE__ ":" __TIME__ ")\n"); + + return 0; +} + +static void __exit __cold fm_port_unload(void) +{ + LNXWRP_FM_Port_Free(); +} + +module_init(fm_port_load); +module_exit(fm_port_unload); --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_ioctls_fm.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_ioctls_fm.c @@ -0,0 +1,2648 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + + @File lnxwrp_ioctls_fm.c + + @Author Shlomi Gridish + + @Description FM Linux wrapper functions. + +*/ + +/* Linux Headers ------------------- */ +#include + +#if defined(CONFIG_MODVERSIONS) && !defined(MODVERSIONS) +#define MODVERSIONS +#endif +#ifdef MODVERSIONS +#include +#endif /* MODVERSIONS */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#if defined(CONFIG_COMPAT) +#include +#endif + +#include "part_ext.h" +#include "fm_ioctls.h" +#include "fm_pcd_ioctls.h" +#include "fm_port_ioctls.h" + +#if defined(CONFIG_COMPAT) +#include "lnxwrp_ioctls_fm_compat.h" +#endif + +#include "lnxwrp_fm.h" + +#define CMP_IOC_DEFINE(def) (IOC_##def != def) + +/* fm_pcd_ioctls.h === fm_pcd_ext.h assertions */ +#if CMP_IOC_DEFINE(FM_PCD_MAX_NUM_OF_PRIVATE_HDRS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(FM_PCD_PRS_NUM_OF_HDRS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(FM_PCD_KG_NUM_OF_SCHEMES) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS) +#error Error: please synchronize IOC_ defines! +#endif + +/* please check for this one in fm_common.h: */ +#define FM_PCD_MAX_NUM_OF_OPTIONS(clsPlanEntries) ((clsPlanEntries==256)? 8:((clsPlanEntries==128)? 7: ((clsPlanEntries==64)? 6: ((clsPlanEntries==32)? 5:0)))) +#if (IOC_FM_PCD_MAX_NUM_OF_OPTIONS != FM_PCD_MAX_NUM_OF_OPTIONS(FM_PCD_MAX_NUM_OF_CLS_PLANS)) +#error Error: please synchronize IOC_ defines! +#endif +#undef FM_PCD_MAX_NUM_OF_OPTIONS + +#if CMP_IOC_DEFINE(FM_PCD_MAX_NUM_OF_INTERCHANGEABLE_HDRS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(FM_PCD_KG_NUM_OF_GENERIC_REGS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(FM_PCD_KG_MAX_NUM_OF_EXTRACTS_PER_KEY) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(FM_PCD_MAX_NUM_OF_CLS_PLANS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(FM_PCD_KG_NUM_OF_EXTRACT_MASKS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(FM_PCD_KG_NUM_OF_DEFAULT_GROUPS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(FM_PCD_PRS_NUM_OF_LABELS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(FM_PCD_MAX_NUM_OF_CC_NODES) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(FM_PCD_MAX_NUM_OF_CC_TREES) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(FM_PCD_MAX_NUM_OF_CC_GROUPS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(FM_PCD_MAX_NUM_OF_CC_UNITS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(FM_PCD_MAX_NUM_OF_KEYS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(FM_PCD_MAX_SIZE_OF_KEY) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(FM_PCD_MAX_NUM_OF_CC_ENTRIES_IN_GRP) +#error Error: please synchronize IOC_ defines! +#endif + +/* net_ioctls.h === net_ext.h assertions */ +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_PPP_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_PPPoE_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_PPPMUX_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_PPPMUX_SUBFRAME_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_ETH_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_IPv4_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_IPv6_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_ICMP_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_IGMP_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_TCP_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_SCTP_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_DCCP_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_UDP_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_UDP_ENCAP_ESP_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_IPHC_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_SCTP_CHUNK_DATA_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_L2TPv2_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_L2TPv3_CTRL_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_L2TPv3_SESS_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_VLAN_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_LLC_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_NLPID_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_SNAP_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_LLC_SNAP_ALL_FIELDS) +#warning Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_ARP_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_RFC2684_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_USER_DEFINED_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_PAYLOAD_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_GRE_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_MINENCAP_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_IPSEC_AH_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_IPSEC_ESP_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_MPLS_LABEL_STACK_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +#if CMP_IOC_DEFINE(NET_HEADER_FIELD_MACSEC_ALL_FIELDS) +#error Error: please synchronize IOC_ defines! +#endif + +/* fm_ioctls.h === fm_ext.h assertions */ +#if CMP_IOC_DEFINE(FM_MAX_NUM_OF_VALID_PORTS) +#error Error: please synchronize IOC_ defines! +#endif + +/* fm_port_ioctls.h === dpaa_integrations_ext.h assertions */ +#if CMP_IOC_DEFINE(FM_PORT_NUM_OF_CONGESTION_GRPS) +#error Error: please synchronize IOC_ defines! +#endif + +#define ASSERT_IOC_NET_ENUM(def) ASSERT_COND((unsigned long)e_IOC_NET_##def == (unsigned long)def) + +static void LnxwrpAssertions(void) +{ + /* sampling checks */ + ASSERT_IOC_NET_ENUM(HEADER_TYPE_MACSEC); + ASSERT_IOC_NET_ENUM(HEADER_TYPE_PPP); + ASSERT_IOC_NET_ENUM(MAX_HEADER_TYPE_COUNT); + ASSERT_COND((unsigned long)e_IOC_FM_PORT_TYPE_DUMMY == (unsigned long)e_FM_PORT_TYPE_DUMMY); + ASSERT_COND((unsigned long)e_IOC_FM_EX_MURAM_ECC == (unsigned long)e_FM_EX_MURAM_ECC); + ASSERT_COND((unsigned long)e_IOC_FM_COUNTERS_SEMAPHOR_SYNC_REJECT == (unsigned long)e_FM_COUNTERS_SEMAPHOR_SYNC_REJECT); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_PRS_COUNTERS_FPM_COMMAND_STALL_CYCLES == (unsigned long)e_FM_PCD_PRS_COUNTERS_FPM_COMMAND_STALL_CYCLES); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_PRS_EXCEPTION_SINGLE_ECC == (unsigned long)e_FM_PCD_PRS_EXCEPTION_SINGLE_ECC); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_PRS == (unsigned long)e_FM_PCD_PRS); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_EXTRACT_FULL_FIELD == (unsigned long)e_FM_PCD_EXTRACT_FULL_FIELD); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_EXTRACT_FROM_FLOW_ID == (unsigned long)e_FM_PCD_EXTRACT_FROM_FLOW_ID); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_KG_EXTRACT_PORT_PRIVATE_INFO == (unsigned long)e_FM_PCD_KG_EXTRACT_PORT_PRIVATE_INFO); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_KG_DFLT_ILLEGAL == (unsigned long)e_FM_PCD_KG_DFLT_ILLEGAL); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_KG_GENERIC_NOT_FROM_DATA == (unsigned long)e_FM_PCD_KG_GENERIC_NOT_FROM_DATA); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_HDR_INDEX_3 == (unsigned long)e_FM_PCD_HDR_INDEX_3); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_PLCR_SHARED == (unsigned long)e_FM_PCD_PLCR_SHARED); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_PLCR_RFC_4115 == (unsigned long)e_FM_PCD_PLCR_RFC_4115); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_PLCR_COLOR_AWARE == (unsigned long)e_FM_PCD_PLCR_COLOR_AWARE); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_PLCR_OVERRIDE == (unsigned long)e_FM_PCD_PLCR_OVERRIDE); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_PLCR_FULL_FRM_LEN == (unsigned long)e_FM_PCD_PLCR_FULL_FRM_LEN); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_PLCR_ROLLBACK_FULL_FRM_LEN == (unsigned long)e_FM_PCD_PLCR_ROLLBACK_FULL_FRM_LEN); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_PLCR_PACKET_MODE == (unsigned long)e_FM_PCD_PLCR_PACKET_MODE); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_DROP_FRAME == (unsigned long)e_FM_PCD_DROP_FRAME); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_PLCR_PROFILE_RECOLOURED_RED_PACKET_TOTAL_COUNTER == (unsigned long)e_FM_PCD_PLCR_PROFILE_RECOLOURED_RED_PACKET_TOTAL_COUNTER); + ASSERT_COND((unsigned long)e_IOC_FM_PCD_ACTION_INDEXED_LOOKUP == (unsigned long)e_FM_PCD_ACTION_INDEXED_LOOKUP); + ASSERT_COND((unsigned long)e_IOC_FM_PORT_PCD_SUPPORT_PRS_AND_KG_AND_PLCR == (unsigned long)e_FM_PORT_PCD_SUPPORT_PRS_AND_KG_AND_PLCR); +#ifdef FM_CAPWAP_SUPPORT + ASSERT_COND((unsigned long)e_IOC_FM_PORT_PCD_SUPPORT_CC_AND_KG_AND_PLCR == (unsigned long)e_FM_PORT_PCD_SUPPORT_CC_AND_KG_AND_PLCR); +#endif + ASSERT_COND((unsigned long)e_IOC_FM_PORT_COUNTERS_DEQ_CONFIRM == (unsigned long)e_FM_PORT_COUNTERS_DEQ_CONFIRM); + ASSERT_COND((unsigned long)e_IOC_FM_PORT_DUAL_RATE_LIMITER_SCALE_DOWN_BY_8 == (unsigned long)e_FM_PORT_DUAL_RATE_LIMITER_SCALE_DOWN_BY_8); +} + +static t_Error LnxwrpFmPcdIOCTL(t_LnxWrpFmDev *p_LnxWrpFmDev, unsigned int cmd, unsigned long arg, bool compat) +{ + t_Error err = E_READ_FAILED; + + /* can be moved from here */ + LnxwrpAssertions(); + + switch (cmd) + { +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_PRS_LOAD_SW_COMPAT: +#endif + case FM_PCD_IOC_PRS_LOAD_SW: + { + ioc_fm_pcd_prs_sw_params_t *param; + uint8_t *p_code; + + ASSERT_COND(sizeof(ioc_fm_pcd_prs_sw_params_t) == sizeof(t_FmPcdPrsSwParams)); + + param = (ioc_fm_pcd_prs_sw_params_t *) XX_Malloc(sizeof(ioc_fm_pcd_prs_sw_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_prs_sw_params_t *compat_param; + + compat_param = (ioc_compat_fm_pcd_prs_sw_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_prs_sw_params_t)); + if (!compat_param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + if (copy_from_user(compat_param, + (ioc_compat_fm_pcd_prs_sw_params_t *) compat_ptr(arg), + sizeof(ioc_compat_fm_pcd_prs_sw_params_t))) + { + XX_Free(compat_param); + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + compat_fm_pcd_prs_sw(compat_param, param, COMPAT_US_TO_K); + + XX_Free(compat_param); + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_prs_sw_params_t *)arg, + sizeof(ioc_fm_pcd_prs_sw_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + + p_code = (uint8_t *) XX_Malloc(param->size); + if (!p_code) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + if (copy_from_user(p_code, param->p_code, param->size)) { + XX_Free(p_code); + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + param->p_code = p_code; + + err = FM_PCD_PrsLoadSw(p_LnxWrpFmDev->h_PcdDev, (t_FmPcdPrsSwParams*)param); + XX_Free(p_code); + XX_Free(param); + break; + } + + case FM_PCD_IOC_ENABLE: + return FM_PCD_Enable(p_LnxWrpFmDev->h_PcdDev); + + case FM_PCD_IOC_DISABLE: + return FM_PCD_Disable(p_LnxWrpFmDev->h_PcdDev); + + case FM_PCD_IOC_FORCE_INTR: + { + int exception; + +#if defined(CONFIG_COMPAT) + if (compat) + { + if (get_user(exception, (int *) compat_ptr(arg))) + break; + } + else +#endif + { + if (get_user(exception, (int *)arg)) + break; + } + + return FM_PCD_ForceIntr(p_LnxWrpFmDev->h_PcdDev, (e_FmPcdExceptions)exception); + } + + case FM_PCD_IOC_SET_EXCEPTION: + { + ioc_fm_pcd_exception_params_t *param; + + param = (ioc_fm_pcd_exception_params_t *) XX_Malloc( + sizeof(ioc_fm_pcd_exception_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + if (copy_from_user(param, (ioc_fm_pcd_exception_params_t *)compat_ptr(arg), + sizeof(ioc_fm_pcd_exception_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_exception_params_t *)arg, + sizeof(ioc_fm_pcd_exception_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + + err = FM_PCD_SetException(p_LnxWrpFmDev->h_PcdDev, param->exception, param->enable); + XX_Free(param); + break; + } + + case FM_PCD_IOC_KG_SET_ADDITIONAL_DATA_AFTER_PARSING: + { + uint8_t payloadOffset; + +#if defined(CONFIG_COMPAT) + if (compat) + { + if (get_user(payloadOffset, (uint8_t*) compat_ptr(arg))) + break; + } + else +#endif + { + if (get_user(payloadOffset, (uint8_t*) arg)) + break; + } + + return FM_PCD_KgSetAdditionalDataAfterParsing(p_LnxWrpFmDev->h_PcdDev, payloadOffset); + } + + case FM_PCD_IOC_KG_SET_DFLT_VALUE: + { + ioc_fm_pcd_kg_dflt_value_params_t *param; + + param = (ioc_fm_pcd_kg_dflt_value_params_t *) XX_Malloc( + sizeof(ioc_fm_pcd_kg_dflt_value_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + if (copy_from_user(param, (ioc_fm_pcd_kg_dflt_value_params_t *)compat_ptr(arg), + sizeof(ioc_fm_pcd_kg_dflt_value_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_kg_dflt_value_params_t *)arg, + sizeof(ioc_fm_pcd_kg_dflt_value_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + + err = FM_PCD_KgSetDfltValue(p_LnxWrpFmDev->h_PcdDev, param->valueId, param->value); + XX_Free(param); + break; + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_SET_NET_ENV_CHARACTERISTICS_COMPAT: +#endif + case FM_PCD_IOC_SET_NET_ENV_CHARACTERISTICS: + { + ioc_fm_pcd_net_env_params_t *param; + + param = (ioc_fm_pcd_net_env_params_t *) XX_Malloc(sizeof(ioc_fm_pcd_net_env_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_net_env_params_t *compat_param; + + compat_param = (ioc_compat_fm_pcd_net_env_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_net_env_params_t)); + if (!compat_param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + if (copy_from_user(compat_param, (ioc_compat_fm_pcd_net_env_params_t *) compat_ptr(arg), + sizeof(ioc_compat_fm_pcd_net_env_params_t))) + { + XX_Free(compat_param); + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + compat_copy_fm_pcd_net_env(compat_param, param, COMPAT_US_TO_K); + XX_Free(compat_param); + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_net_env_params_t *) arg, + sizeof(ioc_fm_pcd_net_env_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + + param->id = FM_PCD_SetNetEnvCharacteristics(p_LnxWrpFmDev->h_PcdDev, (t_FmPcdNetEnvParams*)param); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_net_env_params_t *compat_param; + + compat_param = (ioc_compat_fm_pcd_net_env_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_net_env_params_t)); + if (!compat_param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + compat_copy_fm_pcd_net_env(compat_param, param, COMPAT_K_TO_US); + + if (param->id && !copy_to_user((ioc_compat_fm_pcd_net_env_params_t *) compat_ptr(arg), + compat_param, + sizeof(ioc_compat_fm_pcd_net_env_params_t))) + err = E_OK; + + XX_Free(compat_param); + } + else +#endif + { + if (param->id && !copy_to_user((ioc_fm_pcd_net_env_params_t *)arg, param, sizeof(ioc_fm_pcd_net_env_params_t))) + err = E_OK; + } + + XX_Free(param); + break; + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_DELETE_NET_ENV_CHARACTERISTICS_COMPAT: +#endif + case FM_PCD_IOC_DELETE_NET_ENV_CHARACTERISTICS: + { + ioc_fm_obj_t id; + + memset(&id, 0 , sizeof(ioc_fm_obj_t)); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_obj_t compat_id; + + if (copy_from_user(&compat_id, (ioc_compat_fm_obj_t *) compat_ptr(arg), sizeof(ioc_compat_fm_obj_t))) + break; + + id.obj = compat_ptr(compat_id.obj); + } + else +#endif + { + if (copy_from_user(&id, (ioc_fm_obj_t *) arg, sizeof(ioc_fm_obj_t))) + break; + } + + return FM_PCD_DeleteNetEnvCharacteristics(p_LnxWrpFmDev->h_PcdDev, id.obj); + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_KG_SET_SCHEME_COMPAT: +#endif + case FM_PCD_IOC_KG_SET_SCHEME: + { + ioc_fm_pcd_kg_scheme_params_t *param; + + ASSERT_COND(sizeof(t_FmPcdKgSchemeParams) + sizeof(void *) == sizeof(ioc_fm_pcd_kg_scheme_params_t)); + param = (ioc_fm_pcd_kg_scheme_params_t *) XX_Malloc(sizeof(ioc_fm_pcd_kg_scheme_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_kg_scheme_params_t *compat_param = NULL; + + compat_param = (ioc_compat_fm_pcd_kg_scheme_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_kg_scheme_params_t)); + if (!compat_param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + if (copy_from_user(compat_param, (ioc_compat_fm_pcd_kg_scheme_params_t *) compat_ptr(arg), + sizeof(ioc_compat_fm_pcd_kg_scheme_params_t))) + { + XX_Free(compat_param); + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + compat_copy_fm_pcd_kg_scheme(compat_param, param, COMPAT_US_TO_K); + + XX_Free(compat_param); + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_kg_scheme_params_t *)arg, + sizeof(ioc_fm_pcd_kg_scheme_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + + param->id = FM_PCD_KgSetScheme(p_LnxWrpFmDev->h_PcdDev, (t_FmPcdKgSchemeParams*)param); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_kg_scheme_params_t *compat_param = NULL; + + compat_param = (ioc_compat_fm_pcd_kg_scheme_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_kg_scheme_params_t)); + if (!compat_param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + compat_copy_fm_pcd_kg_scheme(compat_param, param, COMPAT_K_TO_US); + + if (param->id && !copy_to_user((ioc_compat_fm_pcd_kg_scheme_params_t *)compat_ptr(arg), + compat_param, + sizeof(ioc_compat_fm_pcd_kg_scheme_params_t))) + err = E_OK; + XX_Free(compat_param); + } + else +#endif + { + if (param->id && !copy_to_user((ioc_fm_pcd_kg_scheme_params_t *)arg, + param, + sizeof(ioc_fm_pcd_kg_scheme_params_t))) + err = E_OK; + } + + XX_Free(param); + break; + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_KG_DEL_SCHEME_COMPAT: +#endif + case FM_PCD_IOC_KG_DEL_SCHEME: + { + ioc_fm_obj_t id; + + memset(&id, 0 , sizeof(ioc_fm_obj_t)); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_obj_t compat_id; + + if (copy_from_user(&compat_id, (ioc_compat_fm_obj_t *) compat_ptr(arg), sizeof(ioc_compat_fm_obj_t))) + break; + + id.obj = compat_ptr(compat_id.obj); + } + else +#endif + { + if (copy_from_user(&id, (ioc_fm_obj_t *) arg, sizeof(ioc_fm_obj_t))) + break; + } + + return FM_PCD_KgDeleteScheme(p_LnxWrpFmDev->h_PcdDev, id.obj); + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_CC_SET_NODE_COMPAT: +#endif + case FM_PCD_IOC_CC_SET_NODE: + { + ioc_fm_pcd_cc_node_params_t *param; + uint8_t *keys; + uint8_t *masks; + int i,k; + + ASSERT_COND(sizeof(t_FmPcdCcNodeParams) + sizeof(void *) == sizeof(ioc_fm_pcd_cc_node_params_t)); + + param = (ioc_fm_pcd_cc_node_params_t *) XX_Malloc( + sizeof(ioc_fm_pcd_cc_node_params_t) + + 2 * IOC_FM_PCD_MAX_NUM_OF_KEYS * IOC_FM_PCD_MAX_SIZE_OF_KEY); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + + memset(param, 0, sizeof(ioc_fm_pcd_cc_node_params_t) + + 2 * IOC_FM_PCD_MAX_NUM_OF_KEYS * IOC_FM_PCD_MAX_SIZE_OF_KEY); + + keys = (uint8_t *) (param + 1); + masks = keys + IOC_FM_PCD_MAX_NUM_OF_KEYS * IOC_FM_PCD_MAX_SIZE_OF_KEY; + memset(keys, 0, 2 * IOC_FM_PCD_MAX_NUM_OF_KEYS * IOC_FM_PCD_MAX_SIZE_OF_KEY); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_cc_node_params_t *compat_param; + + compat_param = (ioc_compat_fm_pcd_cc_node_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_cc_node_params_t) + + 2 * IOC_FM_PCD_MAX_NUM_OF_KEYS * IOC_FM_PCD_MAX_SIZE_OF_KEY); + if (!compat_param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + memset(compat_param, 0, sizeof(ioc_compat_fm_pcd_cc_node_params_t) + + 2 * IOC_FM_PCD_MAX_NUM_OF_KEYS * IOC_FM_PCD_MAX_SIZE_OF_KEY); + + if (copy_from_user(compat_param, + (ioc_compat_fm_pcd_cc_node_params_t *)compat_ptr(arg), + sizeof(ioc_compat_fm_pcd_cc_node_params_t))) + { + XX_Free(compat_param); + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + compat_copy_fm_pcd_cc_node(compat_param, param, COMPAT_US_TO_K); + + XX_Free(compat_param); + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_cc_node_params_t *)arg, sizeof(ioc_fm_pcd_cc_node_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + ASSERT_COND(param->keys_params.num_of_keys <= IOC_FM_PCD_MAX_NUM_OF_KEYS); + ASSERT_COND(param->keys_params.key_size <= IOC_FM_PCD_MAX_SIZE_OF_KEY); + + /* support for indexed lookup */ + if( !(param->extract_cc_params.type == e_IOC_FM_PCD_EXTRACT_NON_HDR && + param->extract_cc_params.extract_params.extract_non_hdr.src == e_IOC_FM_PCD_EXTRACT_FROM_HASH && + param->extract_cc_params.extract_params.extract_non_hdr.action == e_IOC_FM_PCD_ACTION_INDEXED_LOOKUP)) + { + for (i=0, k=0; + i < param->keys_params.num_of_keys; + i++, k += IOC_FM_PCD_MAX_SIZE_OF_KEY) + { + if (copy_from_user(&keys[k], + param->keys_params.key_params[i].p_key, + param->keys_params.key_size)) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + param->keys_params.key_params[i].p_key = &keys[k]; + + if (param->keys_params.key_params[i].p_mask) + { + if (copy_from_user(&masks[k], + param->keys_params.key_params[i].p_mask, + param->keys_params.key_size)) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + param->keys_params.key_params[i].p_mask = &masks[k]; + } + } + } + + param->id = FM_PCD_CcSetNode(p_LnxWrpFmDev->h_PcdDev, (t_FmPcdCcNodeParams*)param); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_cc_node_params_t *compat_param; + compat_param = (ioc_compat_fm_pcd_cc_node_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_cc_node_params_t) + + 2 * IOC_FM_PCD_MAX_NUM_OF_KEYS * IOC_FM_PCD_MAX_SIZE_OF_KEY); + if (!compat_param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + memset(compat_param, 0, sizeof(ioc_compat_fm_pcd_cc_node_params_t) + + 2 * IOC_FM_PCD_MAX_NUM_OF_KEYS * IOC_FM_PCD_MAX_SIZE_OF_KEY); + + /* setup user space structure */ + compat_copy_fm_pcd_cc_node(compat_param, param, COMPAT_K_TO_US); + + compat_param->id = compat_add_ptr2id(param->id); + + if (param->id && !copy_to_user((ioc_compat_fm_pcd_cc_node_params_t *)compat_ptr(arg), + compat_param, + sizeof(ioc_compat_fm_pcd_cc_node_params_t))) + err = E_OK; + + XX_Free(compat_param); + } + else +#endif + { + if (param->id && !copy_to_user((ioc_fm_pcd_cc_node_params_t *)arg, param, sizeof(ioc_fm_pcd_cc_node_params_t))) + err = E_OK; + } + + XX_Free(param); + break; + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_CC_DELETE_NODE_COMPAT: +#endif + case FM_PCD_IOC_CC_DELETE_NODE: + { + ioc_fm_obj_t id; + + memset(&id, 0 , sizeof(ioc_fm_obj_t)); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_obj_t compat_id; + + if (copy_from_user(&compat_id, (ioc_compat_fm_obj_t *) compat_ptr(arg), sizeof(ioc_compat_fm_obj_t))) + break; + + id.obj = compat_get_id2ptr(compat_id.obj); + compat_del_ptr2id(id.obj); + } + else +#endif + { + if (copy_from_user(&id, (ioc_fm_obj_t *) arg, sizeof(ioc_fm_obj_t))) + break; + } + + return FM_PCD_CcDeleteNode(p_LnxWrpFmDev->h_PcdDev, id.obj); + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_CC_BUILD_TREE_COMPAT: +#endif + case FM_PCD_IOC_CC_BUILD_TREE: + { + ioc_fm_pcd_cc_tree_params_t *param; + + ASSERT_COND(sizeof(t_FmPcdCcTreeParams) + sizeof(void *) == sizeof(ioc_fm_pcd_cc_tree_params_t)); + + param = (ioc_fm_pcd_cc_tree_params_t *) XX_Malloc(sizeof(ioc_fm_pcd_cc_tree_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + + memset(param, 0, sizeof(ioc_fm_pcd_cc_tree_params_t)); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_cc_tree_params_t *compat_param; + + compat_param = (ioc_compat_fm_pcd_cc_tree_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_cc_tree_params_t)); + if (!compat_param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + memset(compat_param, 0, sizeof(ioc_compat_fm_pcd_cc_tree_params_t)); + + if (copy_from_user(compat_param, + (ioc_compat_fm_pcd_cc_tree_params_t *)compat_ptr(arg), + sizeof(ioc_compat_fm_pcd_cc_tree_params_t))) + { + XX_Free(compat_param); + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + compat_copy_fm_pcd_cc_tree(compat_param, param, COMPAT_US_TO_K); + + XX_Free(compat_param); + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_cc_tree_params_t *)arg, + sizeof(ioc_fm_pcd_cc_tree_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + + param->id = FM_PCD_CcBuildTree(p_LnxWrpFmDev->h_PcdDev, (t_FmPcdCcTreeParams*)param); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_cc_tree_params_t *compat_param; + + compat_param = (ioc_compat_fm_pcd_cc_tree_params_t *) XX_Malloc(sizeof(ioc_compat_fm_pcd_cc_tree_params_t)); + if (!compat_param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + memset(compat_param, 0, sizeof(ioc_compat_fm_pcd_cc_tree_params_t)); + + compat_add_ptr2id(param->id); + param->id = (void *)(uint64_t)compat_get_ptr2id(param->id); + + compat_copy_fm_pcd_cc_tree(compat_param, param, COMPAT_K_TO_US); + + if (param->id && !copy_to_user((ioc_compat_fm_pcd_cc_tree_params_t *)compat_ptr(arg), + compat_param, + sizeof(ioc_compat_fm_pcd_cc_tree_params_t))) + err = E_OK; + + XX_Free(compat_param); + } + else +#endif + { + if (param->id && !copy_to_user((ioc_fm_pcd_cc_tree_params_t *)arg, param, sizeof(ioc_fm_pcd_cc_tree_params_t))) + err = E_OK; + } + + XX_Free(param); + break; + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_CC_DELETE_TREE_COMPAT: +#endif + case FM_PCD_IOC_CC_DELETE_TREE: + { + ioc_fm_obj_t id; + + memset(&id, 0 , sizeof(ioc_fm_obj_t)); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_obj_t compat_id; + + if (copy_from_user(&compat_id, (ioc_compat_fm_obj_t *) compat_ptr(arg), sizeof(ioc_compat_fm_obj_t))) + break; + + id.obj = compat_get_id2ptr(compat_id.obj); + } + else +#endif + { + if (copy_from_user(&id, (ioc_fm_obj_t *) arg, sizeof(ioc_fm_obj_t))) + break; + } + + return FM_PCD_CcDeleteTree(p_LnxWrpFmDev->h_PcdDev, id.obj); + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_PLCR_SET_PROFILE_COMPAT: +#endif + case FM_PCD_IOC_PLCR_SET_PROFILE: + { + ioc_fm_pcd_plcr_profile_params_t *param; + + ASSERT_COND(sizeof(t_FmPcdPlcrProfileParams) + sizeof(void *) == sizeof(ioc_fm_pcd_plcr_profile_params_t)); + + param = (ioc_fm_pcd_plcr_profile_params_t *) XX_Malloc( + sizeof(ioc_fm_pcd_plcr_profile_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_plcr_profile_params_t *compat_param; + + compat_param = (ioc_compat_fm_pcd_plcr_profile_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_plcr_profile_params_t)); + if (!compat_param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + if (copy_from_user(compat_param, (ioc_compat_fm_pcd_plcr_profile_params_t *)compat_ptr(arg), + sizeof(ioc_compat_fm_pcd_plcr_profile_params_t))) { + XX_Free(compat_param); + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + compat_copy_fm_pcd_plcr_profile(compat_param, param, COMPAT_US_TO_K); + + XX_Free(compat_param); + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_plcr_profile_params_t *)arg, + sizeof(ioc_fm_pcd_plcr_profile_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + + if (!param->modify && + (((t_FmPcdPlcrProfileParams*)param)->id.newParams.profileType != e_FM_PCD_PLCR_SHARED)) + { + t_Handle h_Port; + fm_pcd_port_params_t *port_params; + + port_params = (fm_pcd_port_params_t*) XX_Malloc(sizeof(fm_pcd_port_params_t)); + if (!port_params) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + if (copy_from_user(port_params, (fm_pcd_port_params_t*)((t_FmPcdPlcrProfileParams*)param)->id.newParams.h_FmPort, + sizeof(fm_pcd_port_params_t))) + { + XX_Free(port_params); + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + switch(port_params->port_type) + { + case (e_IOC_FM_PORT_TYPE_RX): + h_Port = p_LnxWrpFmDev->rxPorts[port_params->port_id].h_Dev; + break; + case (e_IOC_FM_PORT_TYPE_RX_10G): + h_Port = p_LnxWrpFmDev->rxPorts[port_params->port_id + FM_MAX_NUM_OF_1G_RX_PORTS].h_Dev; + break; + case (e_IOC_FM_PORT_TYPE_OFFLINE_PARSING): + if (port_params->port_id) + { + h_Port = p_LnxWrpFmDev->opPorts[port_params->port_id - 1].h_Dev; + break; + } + default: + XX_Free(port_params); + XX_Free(param); + RETURN_ERROR(MINOR, E_INVALID_SELECTION, NO_MSG); + } + + ((t_FmPcdPlcrProfileParams*)param)->id.newParams.h_FmPort = h_Port; + XX_Free(port_params); + } + + param->id = FM_PCD_PlcrSetProfile(p_LnxWrpFmDev->h_PcdDev, (t_FmPcdPlcrProfileParams*)param); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_plcr_profile_params_t *compat_param; + + compat_param = (ioc_compat_fm_pcd_plcr_profile_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_plcr_profile_params_t)); + if (!compat_param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + compat_copy_fm_pcd_plcr_profile(compat_param, param, COMPAT_K_TO_US); + + if (param->id && !copy_to_user((ioc_compat_fm_pcd_plcr_profile_params_t *) compat_ptr(arg), + compat_param, + sizeof(ioc_compat_fm_pcd_plcr_profile_params_t))) + err = E_OK; + + XX_Free(compat_param); + } + else +#endif + { + if (param->id && !copy_to_user((ioc_fm_pcd_plcr_profile_params_t *)arg, param, sizeof(ioc_fm_pcd_plcr_profile_params_t))) + err = E_OK; + } + + XX_Free(param); + break; + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_PLCR_DEL_PROFILE_COMPAT: +#endif + case FM_PCD_IOC_PLCR_DEL_PROFILE: + { + ioc_fm_obj_t id; + + memset(&id, 0 , sizeof(ioc_fm_obj_t)); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_obj_t compat_id; + + if (copy_from_user(&compat_id, (ioc_compat_fm_obj_t *) compat_ptr(arg), sizeof(ioc_compat_fm_obj_t))) + break; + + id.obj = compat_ptr(compat_id.obj); + } + else +#endif + { + if (copy_from_user(&id, (ioc_fm_obj_t *) arg, sizeof(ioc_fm_obj_t))) + break; + } + + return FM_PCD_PlcrDeleteProfile(p_LnxWrpFmDev->h_PcdDev, id.obj); + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_CC_TREE_MODIFY_NEXT_ENGINE_COMPAT: +#endif + case FM_PCD_IOC_CC_TREE_MODIFY_NEXT_ENGINE: + { + ioc_fm_pcd_cc_tree_modify_next_engine_params_t *param; + + ASSERT_COND(sizeof(ioc_fm_pcd_cc_next_engine_params_t) == sizeof(t_FmPcdCcNextEngineParams)); + + param = (ioc_fm_pcd_cc_tree_modify_next_engine_params_t *) XX_Malloc( + sizeof(ioc_fm_pcd_cc_tree_modify_next_engine_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_cc_tree_modify_next_engine_params_t *compat_param; + + compat_param = (ioc_compat_fm_pcd_cc_tree_modify_next_engine_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_cc_tree_modify_next_engine_params_t)); + if (!compat_param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + if (copy_from_user(compat_param, (ioc_compat_fm_pcd_cc_tree_modify_next_engine_params_t *) compat_ptr(arg), + sizeof(ioc_compat_fm_pcd_cc_tree_modify_next_engine_params_t))) + { + XX_Free(param); + XX_Free(compat_param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + compat_fm_pcd_cc_tree_modify_next_engine(compat_param, param, COMPAT_US_TO_K); + + XX_Free(compat_param); + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_cc_tree_modify_next_engine_params_t *)arg, + sizeof(ioc_fm_pcd_cc_tree_modify_next_engine_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + + err = FM_PCD_CcTreeModifyNextEngine(p_LnxWrpFmDev->h_PcdDev, + param->id, + param->grp_indx, + param->indx, + (t_FmPcdCcNextEngineParams*)(¶m->cc_next_engine_params)); + XX_Free(param); + break; + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_CC_NODE_MODIFY_NEXT_ENGINE_COMPAT: +#endif + case FM_PCD_IOC_CC_NODE_MODIFY_NEXT_ENGINE: + { + ioc_fm_pcd_cc_node_modify_next_engine_params_t *param; + + ASSERT_COND(sizeof(ioc_fm_pcd_cc_next_engine_params_t) == sizeof(t_FmPcdCcNextEngineParams)); + + param = (ioc_fm_pcd_cc_node_modify_next_engine_params_t *) XX_Malloc( + sizeof(ioc_fm_pcd_cc_node_modify_next_engine_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_cc_node_modify_next_engine_params_t *compat_param; + + compat_param = (ioc_compat_fm_pcd_cc_node_modify_next_engine_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_cc_node_modify_next_engine_params_t)); + if (!compat_param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + if (copy_from_user(compat_param, (ioc_compat_fm_pcd_cc_node_modify_next_engine_params_t *) compat_ptr(arg), + sizeof(ioc_compat_fm_pcd_cc_node_modify_next_engine_params_t))) + { + XX_Free(param); + XX_Free(compat_param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + compat_copy_fm_pcd_cc_node_modify_next_engine(compat_param, param, COMPAT_US_TO_K); + + XX_Free(compat_param); + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_cc_node_modify_next_engine_params_t *)arg, + sizeof(ioc_fm_pcd_cc_node_modify_next_engine_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + + err = FM_PCD_CcNodeModifyNextEngine(p_LnxWrpFmDev->h_PcdDev, + param->id, + param->key_indx, + (t_FmPcdCcNextEngineParams*)(¶m->cc_next_engine_params)); + XX_Free(param); + break; + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_CC_NODE_MODIFY_MISS_NEXT_ENGINE_COMPAT: +#endif + case FM_PCD_IOC_CC_NODE_MODIFY_MISS_NEXT_ENGINE: + { + ioc_fm_pcd_cc_node_modify_next_engine_params_t *param; + + ASSERT_COND(sizeof(ioc_fm_pcd_cc_next_engine_params_t) == sizeof(t_FmPcdCcNextEngineParams)); + + param = (ioc_fm_pcd_cc_node_modify_next_engine_params_t *) XX_Malloc( + sizeof(ioc_fm_pcd_cc_node_modify_next_engine_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_cc_node_modify_next_engine_params_t *compat_param; + + compat_param = (ioc_compat_fm_pcd_cc_node_modify_next_engine_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_cc_node_modify_next_engine_params_t)); + if (!compat_param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + if (copy_from_user(compat_param, (ioc_compat_fm_pcd_cc_node_modify_next_engine_params_t *) compat_ptr(arg), + sizeof(ioc_compat_fm_pcd_cc_node_modify_next_engine_params_t))) + { + XX_Free(param); + XX_Free(compat_param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + compat_copy_fm_pcd_cc_node_modify_next_engine(compat_param, param, COMPAT_US_TO_K); + + XX_Free(compat_param); + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_cc_node_modify_next_engine_params_t *) arg, + sizeof(ioc_fm_pcd_cc_node_modify_next_engine_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + + err = FM_PCD_CcNodeModifyMissNextEngine(p_LnxWrpFmDev->h_PcdDev, param->id, + (t_FmPcdCcNextEngineParams*)(¶m->cc_next_engine_params)); + XX_Free(param); + break; + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_CC_NODE_REMOVE_KEY_COMPAT: +#endif + case FM_PCD_IOC_CC_NODE_REMOVE_KEY: + { + ioc_fm_pcd_cc_node_remove_key_params_t *param; + + param = (ioc_fm_pcd_cc_node_remove_key_params_t *) XX_Malloc( + sizeof(ioc_fm_pcd_cc_node_remove_key_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_cc_node_remove_key_params_t *compat_param; + + compat_param = (ioc_compat_fm_pcd_cc_node_remove_key_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_cc_node_remove_key_params_t)); + if (!compat_param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + if (copy_from_user(compat_param, + (ioc_compat_fm_pcd_cc_node_remove_key_params_t *)compat_ptr(arg), + sizeof(ioc_compat_fm_pcd_cc_node_remove_key_params_t))) + { + XX_Free(param); + XX_Free(compat_param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + param->id = compat_ptr(compat_param->id); + param->key_indx = compat_param->key_indx; + + XX_Free(compat_param); + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_cc_node_remove_key_params_t *) arg, + sizeof(ioc_fm_pcd_cc_node_remove_key_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + + err = FM_PCD_CcNodeRemoveKey(p_LnxWrpFmDev->h_PcdDev, param->id, param->key_indx); + XX_Free(param); + break; + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_CC_NODE_ADD_KEY_COMPAT: +#endif + case FM_PCD_IOC_CC_NODE_ADD_KEY: + { + ioc_fm_pcd_cc_node_modify_key_and_next_engine_params_t *param; + + ASSERT_COND(sizeof(ioc_fm_pcd_cc_key_params_t) == sizeof(t_FmPcdCcKeyParams)); + + param = (ioc_fm_pcd_cc_node_modify_key_and_next_engine_params_t *) XX_Malloc( + sizeof(ioc_fm_pcd_cc_node_modify_key_and_next_engine_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_cc_node_modify_key_and_next_engine_params_t *compat_param; + + compat_param = (ioc_compat_fm_pcd_cc_node_modify_key_and_next_engine_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_cc_node_modify_key_and_next_engine_params_t)); + if (!compat_param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + if (copy_from_user(compat_param, + (ioc_compat_fm_pcd_cc_node_modify_key_and_next_engine_params_t *)compat_ptr(arg), + sizeof(ioc_compat_fm_pcd_cc_node_modify_key_and_next_engine_params_t))) + { + XX_Free(param); + XX_Free(compat_param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + compat_copy_fm_pcd_cc_node_modify_key_and_next_engine(compat_param, param, COMPAT_US_TO_K); + + XX_Free(compat_param); + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_cc_node_modify_key_and_next_engine_params_t *)arg, + sizeof(ioc_fm_pcd_cc_node_modify_key_and_next_engine_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + + err = FM_PCD_CcNodeAddKey(p_LnxWrpFmDev->h_PcdDev, + param->id, + param->key_indx, + param->key_size, + (t_FmPcdCcKeyParams*)(¶m->key_params)); + XX_Free(param); + break; + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_CC_NODE_MODIFY_KEY_AND_NEXT_ENGINE_COMPAT: +#endif + case FM_PCD_IOC_CC_NODE_MODIFY_KEY_AND_NEXT_ENGINE: + { + ioc_fm_pcd_cc_node_modify_key_and_next_engine_params_t *param; + + ASSERT_COND(sizeof(ioc_fm_pcd_cc_key_params_t) == sizeof(t_FmPcdCcKeyParams)); + + param = (ioc_fm_pcd_cc_node_modify_key_and_next_engine_params_t *) XX_Malloc( + sizeof(ioc_fm_pcd_cc_node_modify_key_and_next_engine_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_cc_node_modify_key_and_next_engine_params_t *compat_param; + + compat_param = (ioc_compat_fm_pcd_cc_node_modify_key_and_next_engine_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_cc_node_modify_key_and_next_engine_params_t)); + if (!compat_param) + { + XX_Free(compat_param); + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + if (copy_from_user(compat_param, + (ioc_compat_fm_pcd_cc_node_modify_key_and_next_engine_params_t *)compat_ptr(arg), + sizeof(ioc_compat_fm_pcd_cc_node_modify_key_and_next_engine_params_t))) + { + XX_Free(compat_param); + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + compat_copy_fm_pcd_cc_node_modify_key_and_next_engine(compat_param, param, COMPAT_US_TO_K); + + XX_Free(compat_param); + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_cc_node_modify_key_and_next_engine_params_t *)arg, + sizeof(ioc_fm_pcd_cc_node_modify_key_and_next_engine_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + + err = FM_PCD_CcNodeModifyKeyAndNextEngine(p_LnxWrpFmDev->h_PcdDev, + param->id, + param->key_indx, + param->key_size, + (t_FmPcdCcKeyParams*)(¶m->key_params)); + XX_Free(param); + break; + } + +#if defined(CONFIG_COMPAT) + case FM_PCD_IOC_CC_NODE_MODIFY_KEY_COMPAT: +#endif + case FM_PCD_IOC_CC_NODE_MODIFY_KEY: + { + ioc_fm_pcd_cc_node_modify_key_params_t *param = NULL; + uint8_t *key = NULL; + uint8_t *mask = NULL; + + param = (ioc_fm_pcd_cc_node_modify_key_params_t *) XX_Malloc( + sizeof(ioc_fm_pcd_cc_node_modify_key_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_cc_node_modify_key_params_t *compat_param = NULL; + compat_param = (ioc_compat_fm_pcd_cc_node_modify_key_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_cc_node_modify_key_params_t)); + if (!param) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + } + + if (copy_from_user(compat_param, (ioc_compat_fm_pcd_cc_node_modify_key_params_t *)compat_ptr(arg), + sizeof(ioc_compat_fm_pcd_cc_node_modify_key_params_t))) + { + XX_Free(compat_param); + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + + compat_copy_fm_pcd_cc_node_modify_key(compat_param, param, COMPAT_US_TO_K); + + XX_Free(compat_param); + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_cc_node_modify_key_params_t *)arg, + sizeof(ioc_fm_pcd_cc_node_modify_key_params_t))) + { + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + } + + if (param->p_key) + { + key = (uint8_t *) XX_Malloc(sizeof(uint8_t)*IOC_FM_PCD_MAX_SIZE_OF_KEY); + if (!key) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD key")); + } + memset(key, 0, sizeof(uint8_t)*IOC_FM_PCD_MAX_SIZE_OF_KEY); + + if (copy_from_user(key, param->p_key, param->key_size)) + { + XX_Free(key); + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + param->p_key = key; + } + + if (param->p_mask) + { + mask = (uint8_t *) XX_Malloc(sizeof(uint8_t)*IOC_FM_PCD_MAX_SIZE_OF_KEY); + if (!mask) + { + if (key) + XX_Free(key); + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD mask")); + } + memset(mask, 0, sizeof(uint8_t)*IOC_FM_PCD_MAX_SIZE_OF_KEY); + + if (copy_from_user(mask, param->p_mask, param->key_size)) + { + if (mask) + XX_Free(mask); + if (key) + XX_Free(key); + XX_Free(param); + RETURN_ERROR(MINOR, err, NO_MSG); + } + param->p_mask = mask; + } + + err = FM_PCD_CcNodeModifyKey(p_LnxWrpFmDev->h_PcdDev, + param->id, + param->key_indx, + param->key_size, + param->p_key, + param->p_mask); + if (mask) + XX_Free(mask); + if (key) + XX_Free(key); + XX_Free(param); + break; + } + + default: + RETURN_ERROR(MINOR, E_INVALID_SELECTION, ("IOCTL cmd (0x%08x):(0x%02x:0x%02x)!", cmd, _IOC_TYPE(cmd), _IOC_NR(cmd))); + break; + } + + return err; +} + +t_Error LnxwrpFmIOCTL(t_LnxWrpFmDev *p_LnxWrpFmDev, unsigned int cmd, unsigned long arg, bool compat) +{ + t_Error err = E_READ_FAILED; + + DBG(TRACE, ("p_LnxWrpFmDev - 0x%08lx, cmd - 0x%08x, arg - 0x%08lx \n", (uintptr_t)p_LnxWrpFmDev, cmd, arg)); + + switch (cmd) + { + case FM_IOC_SET_PORTS_BANDWIDTH: + { + ioc_fm_port_bandwidth_params *param; + + ASSERT_COND(sizeof(t_FmPortsBandwidthParams) == sizeof(ioc_fm_port_bandwidth_params)); + + param = (ioc_fm_port_bandwidth_params*) XX_Malloc(sizeof(ioc_fm_port_bandwidth_params)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + if (copy_from_user(param, (ioc_fm_port_bandwidth_params*)compat_ptr(arg), sizeof(ioc_fm_port_bandwidth_params))) + { + XX_Free(param); + return err; + } + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_port_bandwidth_params*)arg, sizeof(ioc_fm_port_bandwidth_params))) + { + XX_Free(param); + return err; + } + } + + err = FM_SetPortsBandwidth(p_LnxWrpFmDev->h_Dev, (t_FmPortsBandwidthParams*) param); + XX_Free(param); + return err; + } + + case FM_IOC_GET_REVISION: + { + ioc_fm_revision_info_t *param; + + ASSERT_COND(sizeof(t_FmRevisionInfo) == sizeof(ioc_fm_revision_info_t)); + + param = (ioc_fm_revision_info_t *) XX_Malloc(sizeof(ioc_fm_revision_info_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + + FM_GetRevision(p_LnxWrpFmDev->h_Dev, (t_FmRevisionInfo*)param); + +#if defined(CONFIG_COMPAT) + if (compat) + { + if (copy_to_user((ioc_fm_revision_info_t *)compat_ptr(arg), + param, + sizeof(ioc_fm_revision_info_t))) + err = E_WRITE_FAILED; + else + err = E_OK; + } + else +#endif + { + if (copy_to_user((ioc_fm_revision_info_t *)arg, + param, + sizeof(ioc_fm_revision_info_t))) + err = E_WRITE_FAILED; + else + err = E_OK; + } + + XX_Free(param); + return err; + } + + case FM_IOC_SET_COUNTER: + { + ioc_fm_counters_params_t *param; + + param = (ioc_fm_counters_params_t *) XX_Malloc(sizeof(ioc_fm_counters_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + if (copy_from_user(param, (ioc_fm_counters_params_t *)compat_ptr(arg), sizeof(ioc_fm_counters_params_t))) + { + XX_Free(param); + return err; + } + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_counters_params_t *)arg, sizeof(ioc_fm_counters_params_t))) + { + XX_Free(param); + return err; + } + } + + err = FM_ModifyCounter(p_LnxWrpFmDev->h_Dev, param->cnt, param->val); + + XX_Free(param); + return err; + } + + case FM_IOC_GET_COUNTER: + { + ioc_fm_counters_params_t *param; + + param = (ioc_fm_counters_params_t *) XX_Malloc(sizeof(ioc_fm_counters_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PCD")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + if (copy_from_user(param, (ioc_fm_counters_params_t *)compat_ptr(arg), sizeof(ioc_fm_counters_params_t))) + { + XX_Free(param); + return err; + } + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_counters_params_t *)arg, sizeof(ioc_fm_counters_params_t))) + { + XX_Free(param); + return err; + } + } + + param->val = FM_GetCounter(p_LnxWrpFmDev->h_Dev, param->cnt); + +#if defined(CONFIG_COMPAT) + if (compat) + { + if (copy_to_user((ioc_fm_counters_params_t *)compat_ptr(arg), param, sizeof(ioc_fm_counters_params_t))) + err = E_WRITE_FAILED; + } + else +#endif + { + if (copy_to_user((ioc_fm_counters_params_t *)arg, param, sizeof(ioc_fm_counters_params_t))) + err = E_WRITE_FAILED; + } + + XX_Free(param); + return err; + } + + case FM_IOC_FORCE_INTR: + { + ioc_fm_exceptions param; + +#if defined(CONFIG_COMPAT) + if (compat) + { + if (get_user(param, (ioc_fm_exceptions*) compat_ptr(arg))) + break; + } + else +#endif + { + if (get_user(param, (ioc_fm_exceptions*)arg)) + break; + } + + return FM_ForceIntr(p_LnxWrpFmDev->h_Dev, (e_FmExceptions)param); + } + + default: + return LnxwrpFmPcdIOCTL(p_LnxWrpFmDev, cmd, arg, compat); + } + + RETURN_ERROR(MINOR, E_INVALID_OPERATION, ("IOCTL FM")); +} + +t_Error LnxwrpFmPortIOCTL(t_LnxWrpFmPortDev *p_LnxWrpFmPortDev, unsigned int cmd, unsigned long arg, bool compat) +{ + t_Error err = E_READ_FAILED; + DBG(TRACE, ("p_LnxWrpFmPortDev - 0x%08lx, cmd - 0x%08x, arg - 0x%08lx", (uintptr_t)p_LnxWrpFmPortDev, cmd, arg)); + + switch (cmd) + { + case FM_PORT_IOC_DISABLE: + FM_PORT_Disable(p_LnxWrpFmPortDev->h_Dev); + return E_OK; + + case FM_PORT_IOC_ENABLE: + FM_PORT_Enable(p_LnxWrpFmPortDev->h_Dev); + return E_OK; + + case FM_PORT_IOC_SET_ERRORS_ROUTE: + { + ioc_fm_port_frame_err_select_t errs; + +#if defined(CONFIG_COMPAT) + if (compat) + { + if (get_user(errs, (ioc_fm_port_frame_err_select_t*)compat_ptr(arg))) + break; + } + else +#endif + { + if (get_user(errs, (ioc_fm_port_frame_err_select_t*)arg)) + break; + } + + return FM_PORT_SetErrorsRoute(p_LnxWrpFmPortDev->h_Dev, (fmPortFrameErrSelect_t)errs); + } + + case FM_PORT_IOC_SET_RATE_LIMIT: + { + ioc_fm_port_rate_limit_t *param; + + ASSERT_COND(sizeof(t_FmPortRateLimit) == sizeof(ioc_fm_port_rate_limit_t)); + + param = (ioc_fm_port_rate_limit_t *) XX_Malloc(sizeof(ioc_fm_port_rate_limit_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PORT")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + if (copy_from_user(param, (ioc_fm_port_rate_limit_t *)compat_ptr(arg), sizeof(ioc_fm_port_rate_limit_t))) + { + XX_Free(param); + RETURN_ERROR(MAJOR, E_READ_FAILED, NO_MSG); + } + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_port_rate_limit_t *)arg, sizeof(ioc_fm_port_rate_limit_t))) + { + XX_Free(param); + RETURN_ERROR(MAJOR, E_READ_FAILED, NO_MSG); + } + } + + err = FM_PORT_SetRateLimit(p_LnxWrpFmPortDev->h_Dev, (t_FmPortRateLimit *)param); + + XX_Free(param); + return err; + } + + case FM_PORT_IOC_REMOVE_RATE_LIMIT: + FM_PORT_DeleteRateLimit(p_LnxWrpFmPortDev->h_Dev); + return E_OK; + + case FM_PORT_IOC_ALLOC_PCD_FQIDS: + { + ioc_fm_port_pcd_fqids_params_t *param; + + if (!p_LnxWrpFmPortDev->pcd_owner_params.cba) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("No one to listen on this PCD!!!")); + + param = (ioc_fm_port_pcd_fqids_params_t *) XX_Malloc(sizeof(ioc_fm_port_pcd_fqids_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PORT")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + if (copy_from_user(param, (ioc_fm_port_pcd_fqids_params_t *)compat_ptr(arg), + sizeof(ioc_fm_port_pcd_fqids_params_t))) + { + XX_Free(param); + return err; + } + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_port_pcd_fqids_params_t *)arg, + sizeof(ioc_fm_port_pcd_fqids_params_t))) + { + XX_Free(param); + return err; + } + } + + if (p_LnxWrpFmPortDev->pcd_owner_params.cba(p_LnxWrpFmPortDev->pcd_owner_params.dev, + param->num_fqids, + param->alignment, + ¶m->base_fqid)) + { + XX_Free(param); + RETURN_ERROR(MINOR, E_INVALID_STATE, ("can't allocate fqids for PCD!!!")); + } + +#if defined(CONFIG_COMPAT) + if (compat) + { + if (copy_to_user((ioc_fm_port_pcd_fqids_params_t *)compat_ptr(arg), + param, sizeof(ioc_fm_port_pcd_fqids_params_t))) + { + XX_Free(param); + RETURN_ERROR(MAJOR, E_WRITE_FAILED, NO_MSG); + } + } + else +#endif + { + if (copy_to_user((ioc_fm_port_pcd_fqids_params_t *)arg, + param, sizeof(ioc_fm_port_pcd_fqids_params_t))) + { + XX_Free(param); + RETURN_ERROR(MAJOR, E_WRITE_FAILED, NO_MSG); + } + } + + XX_Free(param); + return E_OK; + } + + case FM_PORT_IOC_FREE_PCD_FQIDS: + { + uint32_t base_fqid; + + if (!p_LnxWrpFmPortDev->pcd_owner_params.cbf) + RETURN_ERROR(MINOR, E_INVALID_STATE, ("No one to listen on this PCD!!!")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + if (get_user(base_fqid, (uint32_t*) compat_ptr(arg))) + break; + } + else +#endif + { + if (get_user(base_fqid, (uint32_t*)arg)) + break; + } + + if (p_LnxWrpFmPortDev->pcd_owner_params.cbf(p_LnxWrpFmPortDev->pcd_owner_params.dev, base_fqid)) + RETURN_ERROR(MAJOR, E_WRITE_FAILED, NO_MSG); + + return E_OK; + } + +#if defined(CONFIG_COMPAT) + case FM_PORT_IOC_SET_PCD_COMPAT: +#endif + case FM_PORT_IOC_SET_PCD: + { + ioc_fm_port_pcd_params_t *port_pcd_params; + ioc_fm_port_pcd_prs_params_t *port_pcd_prs_params; + ioc_fm_port_pcd_cc_params_t *port_pcd_cc_params; + ioc_fm_port_pcd_kg_params_t *port_pcd_kg_params; + ioc_fm_port_pcd_plcr_params_t *port_pcd_plcr_params; + + long copy_fail = 0; + + ASSERT_COND(sizeof(t_FmPortPcdParams) == sizeof(ioc_fm_port_pcd_params_t)); + + port_pcd_params = (ioc_fm_port_pcd_params_t *) XX_Malloc( + sizeof(ioc_fm_port_pcd_params_t) + + sizeof(ioc_fm_port_pcd_prs_params_t) + + sizeof(ioc_fm_port_pcd_cc_params_t) + + sizeof(ioc_fm_port_pcd_kg_params_t) + + sizeof(ioc_fm_port_pcd_plcr_params_t)); + if (!port_pcd_params) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PORT")); + + port_pcd_prs_params = (ioc_fm_port_pcd_prs_params_t *) (port_pcd_params + 1); + port_pcd_cc_params = (ioc_fm_port_pcd_cc_params_t *) (port_pcd_prs_params + 1); + port_pcd_kg_params = (ioc_fm_port_pcd_kg_params_t *) (port_pcd_cc_params + 1); + port_pcd_plcr_params = (ioc_fm_port_pcd_plcr_params_t *) (port_pcd_kg_params + 1); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_port_pcd_params_t *compat_port_pcd_params; + ioc_fm_port_pcd_prs_params_t *same_port_pcd_prs_params; + ioc_compat_fm_port_pcd_cc_params_t *compat_port_pcd_cc_params; + ioc_compat_fm_port_pcd_kg_params_t *compat_port_pcd_kg_params; + ioc_compat_fm_port_pcd_plcr_params_t *compat_port_pcd_plcr_params; + + compat_port_pcd_params = (ioc_compat_fm_port_pcd_params_t *) XX_Malloc( + sizeof(ioc_compat_fm_port_pcd_params_t) + + sizeof(ioc_fm_port_pcd_prs_params_t) + + sizeof(ioc_compat_fm_port_pcd_cc_params_t) + + sizeof(ioc_compat_fm_port_pcd_kg_params_t) + + sizeof(ioc_compat_fm_port_pcd_plcr_params_t)); + if (!compat_port_pcd_params) + { + XX_Free(port_pcd_params); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PORT")); + } + + same_port_pcd_prs_params = (ioc_fm_port_pcd_prs_params_t *) (compat_port_pcd_params + 1); + compat_port_pcd_cc_params = (ioc_compat_fm_port_pcd_cc_params_t *) (same_port_pcd_prs_params + 1); + compat_port_pcd_kg_params = (ioc_compat_fm_port_pcd_kg_params_t *) (compat_port_pcd_cc_params + 1); + compat_port_pcd_plcr_params = (ioc_compat_fm_port_pcd_plcr_params_t *) (compat_port_pcd_kg_params + 1); + + /* Pseudo-while */ + while (!(copy_fail = copy_from_user(compat_port_pcd_params, + (ioc_compat_fm_port_pcd_params_t *)compat_ptr(arg), + sizeof(ioc_compat_fm_port_pcd_params_t)))) + { + compat_copy_fm_port_pcd(compat_port_pcd_params, port_pcd_params, COMPAT_US_TO_K); + + /* the prs member is the same, no compat structure...memcpy only */ + if (port_pcd_params->p_prs_params && !copy_fail) + { + if(!(copy_fail = copy_from_user(same_port_pcd_prs_params, + port_pcd_params->p_prs_params, + sizeof(ioc_fm_port_pcd_prs_params_t)))) + { + memcpy(port_pcd_prs_params, same_port_pcd_prs_params, sizeof(ioc_fm_port_pcd_prs_params_t)); + port_pcd_params->p_prs_params = port_pcd_prs_params; + } + else + break; + } + + if (port_pcd_params->p_cc_params && !copy_fail) + { + if(!(copy_fail = copy_from_user(compat_port_pcd_cc_params, + port_pcd_params->p_cc_params, + sizeof(ioc_compat_fm_port_pcd_cc_params_t)))) + { + port_pcd_params->p_cc_params = port_pcd_cc_params; + port_pcd_params->p_cc_params->cc_tree_id = compat_get_id2ptr(compat_port_pcd_cc_params->cc_tree_id); + } + else + break; + } + + if (port_pcd_params->p_kg_params && !copy_fail) + { + if(!(copy_fail = copy_from_user(compat_port_pcd_kg_params, + port_pcd_params->p_kg_params, + sizeof(ioc_compat_fm_port_pcd_kg_params_t)))) + { + compat_copy_fm_port_pcd_kg(compat_port_pcd_kg_params, port_pcd_kg_params, COMPAT_US_TO_K); + port_pcd_params->p_kg_params = port_pcd_kg_params; + } + else + break; + } + + if (port_pcd_params->p_plcr_params && !copy_fail) + { + if(!(copy_fail = copy_from_user(compat_port_pcd_plcr_params, + port_pcd_params->p_plcr_params, + sizeof(ioc_compat_fm_port_pcd_plcr_params_t)))) + { + port_pcd_params->p_plcr_params = port_pcd_plcr_params; + port_pcd_params->p_plcr_params->plcr_profile_id = compat_ptr(compat_port_pcd_plcr_params->plcr_profile_id); + } + } + + /* always run once! */ + break; + } + + XX_Free(compat_port_pcd_params); + } + else +#endif + { + /* Pseudo-while */ + while (!(copy_fail = copy_from_user(port_pcd_params, + (ioc_fm_port_pcd_params_t *)arg, + sizeof(ioc_fm_port_pcd_params_t)))) + { + if (port_pcd_params->p_prs_params && !copy_fail) + { + if (!(copy_fail = copy_from_user(port_pcd_prs_params, + port_pcd_params->p_prs_params, + sizeof(ioc_fm_port_pcd_prs_params_t)))) + port_pcd_params->p_prs_params = port_pcd_prs_params; + else + break; + } + + if (port_pcd_params->p_cc_params && !copy_fail) + { + if (!(copy_fail = copy_from_user(port_pcd_cc_params, + port_pcd_params->p_cc_params, + sizeof(ioc_fm_port_pcd_cc_params_t)))) + port_pcd_params->p_cc_params = port_pcd_cc_params; + else + break; + } + + if (port_pcd_params->p_kg_params && !copy_fail) + { + if (!(copy_fail = copy_from_user(port_pcd_kg_params, + port_pcd_params->p_kg_params, + sizeof(ioc_fm_port_pcd_kg_params_t)))) + port_pcd_params->p_kg_params = port_pcd_kg_params; + else + break; + } + + if (port_pcd_params->p_plcr_params && !copy_fail) + { + if (!(copy_fail = copy_from_user(port_pcd_plcr_params, + port_pcd_params->p_plcr_params, + sizeof(ioc_fm_port_pcd_plcr_params_t)))) + port_pcd_params->p_plcr_params = port_pcd_plcr_params; + } + + /* always run once! */ + break; + } + } + + if (!copy_fail) + err = FM_PORT_SetPCD(p_LnxWrpFmPortDev->h_Dev, (t_FmPortPcdParams*) port_pcd_params); + else + err = E_READ_FAILED; + + XX_Free(port_pcd_params); + + return err; + } + + case FM_PORT_IOC_DELETE_PCD: + return FM_PORT_DeletePCD(p_LnxWrpFmPortDev->h_Dev); + +#if defined(CONFIG_COMPAT) + case FM_PORT_IOC_PCD_KG_MODIFY_INITIAL_SCHEME_COMPAT: +#endif + case FM_PORT_IOC_PCD_KG_MODIFY_INITIAL_SCHEME: + { + ioc_fm_pcd_kg_scheme_select_t *param; + + ASSERT_COND(sizeof(t_FmPcdKgSchemeSelect) == sizeof(ioc_fm_pcd_kg_scheme_select_t)); + + param = (ioc_fm_pcd_kg_scheme_select_t *) XX_Malloc( + sizeof(ioc_fm_pcd_kg_scheme_select_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PORT")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_kg_scheme_select_t *compat_param; + + compat_param = (ioc_compat_fm_pcd_kg_scheme_select_t *) XX_Malloc( + sizeof(ioc_compat_fm_pcd_kg_scheme_select_t)); + if (!compat_param){ + XX_Free(param); + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PORT")); + } + + if (copy_from_user(compat_param, + (ioc_compat_fm_pcd_kg_scheme_select_t *) compat_ptr(arg), + sizeof(ioc_compat_fm_pcd_kg_scheme_select_t))) + { + XX_Free(param); + XX_Free(compat_param); + RETURN_ERROR(MAJOR, E_READ_FAILED, NO_MSG); + } + + compat_copy_fm_pcd_kg_scheme_select(compat_param, param, COMPAT_US_TO_K); + + XX_Free(compat_param); + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_kg_scheme_select_t *)arg, + sizeof(ioc_fm_pcd_kg_scheme_select_t))) + { + XX_Free(param); + RETURN_ERROR(MAJOR, E_READ_FAILED, NO_MSG); + } + } + + err = FM_PORT_PcdKgModifyInitialScheme(p_LnxWrpFmPortDev->h_Dev, (t_FmPcdKgSchemeSelect *)param); + + XX_Free(param); + return err; + } + +#if defined(CONFIG_COMPAT) + case FM_PORT_IOC_PCD_PLCR_MODIFY_INITIAL_PROFILE_COMPAT: +#endif + case FM_PORT_IOC_PCD_PLCR_MODIFY_INITIAL_PROFILE: + { + ioc_fm_obj_t id; + + memset(&id, 0 , sizeof(ioc_fm_obj_t)); +#if defined(CONFIG_COMPAT) + if (compat) { + ioc_compat_fm_obj_t compat_id; + + if (copy_from_user(&compat_id, (ioc_compat_fm_obj_t *) compat_ptr(arg), sizeof(ioc_compat_fm_obj_t))) + break; + + id.obj = compat_ptr(compat_id.obj); + } + else +#endif + { + if (copy_from_user(&id, (ioc_fm_obj_t *) arg, sizeof(ioc_fm_obj_t))) + break; + } + + return FM_PORT_PcdPlcrModifyInitialProfile(p_LnxWrpFmPortDev->h_Dev, id.obj); + } + +#if defined(CONFIG_COMPAT) + case FM_PORT_IOC_PCD_KG_BIND_SCHEMES_COMPAT: +#endif + case FM_PORT_IOC_PCD_KG_BIND_SCHEMES: + { + ioc_fm_pcd_port_schemes_params_t *param; + + ASSERT_COND(sizeof(t_FmPcdPortSchemesParams) == sizeof(ioc_fm_pcd_port_schemes_params_t)); + + param = (ioc_fm_pcd_port_schemes_params_t *) XX_Malloc( + sizeof(ioc_fm_pcd_port_schemes_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PORT")); + + memset(¶m, 0 , sizeof(ioc_fm_pcd_port_schemes_params_t)); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_port_schemes_params_t compat_param; + + if (copy_from_user(&compat_param, + (ioc_compat_fm_pcd_port_schemes_params_t *) compat_ptr(arg), + sizeof(ioc_compat_fm_pcd_port_schemes_params_t))) + break; + + compat_copy_fm_pcd_kg_schemes_params(&compat_param, param, COMPAT_US_TO_K); + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_port_schemes_params_t *) arg, + sizeof(ioc_fm_pcd_port_schemes_params_t))) + { + XX_Free(param); + RETURN_ERROR(MAJOR, E_WRITE_FAILED, NO_MSG); + } + } + + err = FM_PORT_PcdKgBindSchemes(p_LnxWrpFmPortDev->h_Dev, (t_FmPcdPortSchemesParams *)param); + + XX_Free(param); + return err; + } + +#if defined(CONFIG_COMPAT) + case FM_PORT_IOC_PCD_KG_UNBIND_SCHEMES_COMPAT: +#endif + case FM_PORT_IOC_PCD_KG_UNBIND_SCHEMES: + { + ioc_fm_pcd_port_schemes_params_t *param; + + ASSERT_COND(sizeof(t_FmPcdPortSchemesParams) == sizeof(ioc_fm_pcd_port_schemes_params_t)); + + param = (ioc_fm_pcd_port_schemes_params_t *) XX_Malloc( + sizeof(ioc_fm_pcd_port_schemes_params_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PORT")); + + memset(¶m, 0 , sizeof(ioc_fm_pcd_port_schemes_params_t)); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_pcd_port_schemes_params_t compat_param; + + if (copy_from_user(&compat_param, + (ioc_compat_fm_pcd_port_schemes_params_t *) compat_ptr(arg), + sizeof(ioc_compat_fm_pcd_port_schemes_params_t))) + break; + + compat_copy_fm_pcd_kg_schemes_params(&compat_param, param, COMPAT_US_TO_K); + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_port_schemes_params_t *) arg, + sizeof(ioc_fm_pcd_port_schemes_params_t))) + { + XX_Free(param); + RETURN_ERROR(MAJOR, E_WRITE_FAILED, NO_MSG); + } + } + + err = FM_PORT_PcdKgUnbindSchemes(p_LnxWrpFmPortDev->h_Dev, (t_FmPcdPortSchemesParams *)param); + + XX_Free(param); + return err; + } + + case FM_PORT_IOC_PCD_PRS_MODIFY_START_OFFSET: + { + ioc_fm_pcd_prs_start_t *param; + + ASSERT_COND(sizeof(t_FmPcdPrsStart) == sizeof(ioc_fm_pcd_prs_start_t)); + + param = (ioc_fm_pcd_prs_start_t *) XX_Malloc(sizeof(ioc_fm_pcd_prs_start_t)); + if (!param) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("IOCTL FM PORT")); + +#if defined(CONFIG_COMPAT) + if (compat) + { + if (copy_from_user(param, (ioc_fm_pcd_prs_start_t *)compat_ptr(arg), + sizeof(ioc_fm_pcd_prs_start_t))) + { + XX_Free(param); + RETURN_ERROR(MAJOR, E_WRITE_FAILED, NO_MSG); + } + } + else +#endif + { + if (copy_from_user(param, (ioc_fm_pcd_prs_start_t *)arg, + sizeof(ioc_fm_pcd_prs_start_t))) + { + XX_Free(param); + RETURN_ERROR(MAJOR, E_WRITE_FAILED, NO_MSG); + } + } + err = FM_PORT_PcdPrsModifyStartOffset(p_LnxWrpFmPortDev->h_Dev, (t_FmPcdPrsStart *)param); + + XX_Free(param); + return err; + } + + case FM_PORT_IOC_PCD_PLCR_ALLOC_PROFILES: + { + uint16_t num; + if (get_user(num, (uint16_t*) arg)) + break; + return FM_PORT_PcdPlcrAllocProfiles(p_LnxWrpFmPortDev->h_Dev, num); + } + + case FM_PORT_IOC_PCD_PLCR_FREE_PROFILES: + return FM_PORT_PcdPlcrFreeProfiles(p_LnxWrpFmPortDev->h_Dev); + + case FM_PORT_IOC_DETACH_PCD: + return FM_PORT_DetachPCD(p_LnxWrpFmPortDev->h_Dev); + + case FM_PORT_IOC_ATTACH_PCD: + return FM_PORT_AttachPCD(p_LnxWrpFmPortDev->h_Dev); + +#if defined(CONFIG_COMPAT) + case FM_PORT_IOC_PCD_CC_MODIFY_TREE_COMPAT: +#endif + case FM_PORT_IOC_PCD_CC_MODIFY_TREE: + { + ioc_fm_obj_t id; + + memset(&id, 0 , sizeof(ioc_fm_obj_t)); + +#if defined(CONFIG_COMPAT) + if (compat) + { + ioc_compat_fm_obj_t compat_id; + + if (copy_from_user(&compat_id, (ioc_compat_fm_obj_t *) compat_ptr(arg), sizeof(ioc_compat_fm_obj_t))) + break; + + id.obj = compat_get_id2ptr(compat_id.obj); + } + else +#endif + { + if (copy_from_user(&id, (ioc_fm_obj_t *) arg, sizeof(ioc_fm_obj_t))) + break; + } + + return FM_PORT_PcdCcModifyTree(p_LnxWrpFmPortDev->h_Dev, id.obj); + } + + default: + RETURN_ERROR(MINOR, E_INVALID_SELECTION, ("IOCTL cmd (0x%08x):(0x%02x:0x%02x)!", cmd, _IOC_TYPE(cmd), _IOC_NR(cmd))); + } + + RETURN_ERROR(MINOR, E_INVALID_OPERATION, ("IOCTL port")); +} + +/*****************************************************************************/ +/* API routines for the FM Linux Device */ +/*****************************************************************************/ + +static int fm_open(struct inode *inode, struct file *file) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = NULL; + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev = NULL; + unsigned int major = imajor(inode); + unsigned int minor = iminor(inode); + struct device_node *fm_node; + static struct of_device_id fm_node_of_match[] = { + { .compatible = "fsl,fman", }, + { /* end of list */ }, + }; + + DBG(TRACE, ("Opening minor - %d - ", minor)); + + if (file->private_data != NULL) + return 0; + + /* Get all the FM nodes */ + for_each_matching_node(fm_node, fm_node_of_match) { + struct platform_device *of_dev; + + of_dev = of_find_device_by_node(fm_node); + if (unlikely(of_dev == NULL)) { + REPORT_ERROR(MAJOR, E_INVALID_VALUE, ("fm id!")); + return -ENXIO; + } + + p_LnxWrpFmDev = (t_LnxWrpFmDev *)fm_bind(&of_dev->dev); + if (p_LnxWrpFmDev->major == major) + break; + fm_unbind((struct fm *)p_LnxWrpFmDev); + p_LnxWrpFmDev = NULL; + } + + if (!p_LnxWrpFmDev) + return -ENODEV; + + if (minor == DEV_FM_MINOR_BASE) + file->private_data = p_LnxWrpFmDev; + else if (minor == DEV_FM_PCD_MINOR_BASE) + file->private_data = p_LnxWrpFmDev; + else { + if (minor == DEV_FM_OH_PORTS_MINOR_BASE) + p_LnxWrpFmPortDev = &p_LnxWrpFmDev->hcPort; + else if ((minor > DEV_FM_OH_PORTS_MINOR_BASE) && (minor < DEV_FM_RX_PORTS_MINOR_BASE)) + p_LnxWrpFmPortDev = &p_LnxWrpFmDev->opPorts[minor-DEV_FM_OH_PORTS_MINOR_BASE-1]; + else if ((minor >= DEV_FM_RX_PORTS_MINOR_BASE) && (minor < DEV_FM_TX_PORTS_MINOR_BASE)) + p_LnxWrpFmPortDev = &p_LnxWrpFmDev->rxPorts[minor-DEV_FM_RX_PORTS_MINOR_BASE]; + else if ((minor >= DEV_FM_TX_PORTS_MINOR_BASE) && (minor < DEV_FM_MAX_MINORS)) + p_LnxWrpFmPortDev = &p_LnxWrpFmDev->txPorts[minor-DEV_FM_TX_PORTS_MINOR_BASE]; + else + return -EINVAL; + + /* if trying to open port, check if it initialized */ + if (!p_LnxWrpFmPortDev->h_Dev) + return -ENODEV; + + p_LnxWrpFmPortDev = (t_LnxWrpFmPortDev *)fm_port_bind(p_LnxWrpFmPortDev->dev); + file->private_data = p_LnxWrpFmPortDev; + fm_unbind((struct fm *)p_LnxWrpFmDev); + } + + if (file->private_data == NULL) + return -ENXIO; + + return 0; +} + +static int fm_close(struct inode *inode, struct file *file) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev; + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev; + unsigned int minor = iminor(inode); + int err = 0; + + DBG(TRACE, ("Closing minor - %d - ", minor)); + + if ((minor == DEV_FM_MINOR_BASE) || + (minor == DEV_FM_PCD_MINOR_BASE)) + { + p_LnxWrpFmDev = (t_LnxWrpFmDev*)file->private_data; + if (!p_LnxWrpFmDev) + return -ENODEV; + fm_unbind((struct fm *)p_LnxWrpFmDev); + } + else if (((minor >= DEV_FM_OH_PORTS_MINOR_BASE) && (minor < DEV_FM_RX_PORTS_MINOR_BASE)) || + ((minor >= DEV_FM_RX_PORTS_MINOR_BASE) && (minor < DEV_FM_TX_PORTS_MINOR_BASE)) || + ((minor >= DEV_FM_TX_PORTS_MINOR_BASE) && (minor < DEV_FM_MAX_MINORS))) + { + p_LnxWrpFmPortDev = (t_LnxWrpFmPortDev*)file->private_data; + if (!p_LnxWrpFmPortDev) + return -ENODEV; + fm_port_unbind((struct fm_port *)p_LnxWrpFmPortDev); + } + + return err; +} + +static int fm_ioctls(unsigned int minor, struct file *file, unsigned int cmd, unsigned long arg, bool compat) +{ + DBG(TRACE, ("IOCTL minor - %u, cmd - 0x%08x, arg - 0x%08lx \n", minor, cmd, arg)); + + if ((minor == DEV_FM_MINOR_BASE) || + (minor == DEV_FM_PCD_MINOR_BASE)) + { + t_LnxWrpFmDev *p_LnxWrpFmDev = ((t_LnxWrpFmDev*)file->private_data); + if (!p_LnxWrpFmDev) + return -ENODEV; + if (LnxwrpFmIOCTL(p_LnxWrpFmDev, cmd, arg, compat)) + return -EFAULT; + } + else if (((minor >= DEV_FM_OH_PORTS_MINOR_BASE) && (minor < DEV_FM_RX_PORTS_MINOR_BASE)) || + ((minor >= DEV_FM_RX_PORTS_MINOR_BASE) && (minor < DEV_FM_TX_PORTS_MINOR_BASE)) || + ((minor >= DEV_FM_TX_PORTS_MINOR_BASE) && (minor < DEV_FM_MAX_MINORS))) + { + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev = ((t_LnxWrpFmPortDev*)file->private_data); + if (!p_LnxWrpFmPortDev) + return -ENODEV; + if (LnxwrpFmPortIOCTL(p_LnxWrpFmPortDev, cmd, arg, compat)) + return -EFAULT; + } + else + { + REPORT_ERROR(MINOR, E_INVALID_VALUE, ("minor")); + return -ENODEV; + } + + return 0; +} + +#ifdef CONFIG_COMPAT +static long fm_compat_ioctl(struct file *file, unsigned int cmd, unsigned long arg) +{ + unsigned int minor = iminor(file->f_path.dentry->d_inode); + long res; + + fm_mutex_lock(); + res = fm_ioctls(minor, file, cmd, arg, true); + fm_mutex_unlock(); + + return res; +} +#endif + +static long fm_ioctl(struct file *file, unsigned int cmd, unsigned long arg) +{ + unsigned int minor = iminor(file->f_path.dentry->d_inode); + long res; + + fm_mutex_lock(); + res = fm_ioctls(minor, file, cmd, arg, false); + fm_mutex_unlock(); + + return res; +} + +/* Globals for FM character device */ +struct file_operations fm_fops = +{ + .owner = THIS_MODULE, + .unlocked_ioctl = fm_ioctl, +#ifdef CONFIG_COMPAT + .compat_ioctl = fm_compat_ioctl, +#endif + .open = fm_open, + .release = fm_close, +}; --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_ioctls_fm_compat.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_ioctls_fm_compat.c @@ -0,0 +1,789 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + + @File lnxwrp_fm_compat_ioctls.c + + @Description FM PCD compat functions + +*/ + +#if !defined(CONFIG_COMPAT) +#error "missing COMPAT layer..." +#endif + + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "part_ext.h" +#include "fm_ioctls.h" +#include "fm_pcd_ioctls.h" +#include "fm_port_ioctls.h" +#include "lnxwrp_ioctls_fm_compat.h" + +/* debug dump */ +#if 0 +static void hex_dump(void * p_addr, unsigned int size) +{ + int i; + + for(i=0; i ", p);*/ + + if(!p) + return 0; + + for(k=1; k < COMPAT_PTR2ID_ARRAY_MAX; k++) + if(compat_ptr2id_array[k] == NULL) + { + compat_ptr2id_array[k] = p; + /*printk("0x%08x\n", k | COMPAT_PTR2ID_WATERMARK);*/ + return k | COMPAT_PTR2ID_WATERMARK; + } + + return 0; +} + +compat_uptr_t compat_get_ptr2id(void *p) +{ + compat_uptr_t k; + + /*printk("\ncompat_get_ptr2id(%p) -> ", p);*/ + + for(k=1; k < COMPAT_PTR2ID_ARRAY_MAX; k++) + if(compat_ptr2id_array[k] == p) { + /*printk("0x%08x\n", k | COMPAT_PTR2ID_WATERMARK);*/ + return k | COMPAT_PTR2ID_WATERMARK; + } + + return 0; +} + +void *compat_get_id2ptr(compat_uptr_t comp) +{ + + /*printk("\ncompat_get_id2ptr(0x%08x) -> ", comp);*/ + + if((COMPAT_PTR2ID_WM_MASK & comp) != COMPAT_PTR2ID_WATERMARK) { + /*printk("Error, invalid watermark!\n\n"); + dump_stack();*/ + return compat_ptr(comp); + } + + comp &= ~COMPAT_PTR2ID_WM_MASK; + + if((0 < comp) && (comp < COMPAT_PTR2ID_ARRAY_MAX) && (compat_ptr2id_array[comp] != NULL)) { + /*printk("%p\n", compat_ptr2id_array[comp]);*/ + return compat_ptr2id_array[comp]; + } + return NULL; +} +/* } maping kernel pointers w/ UserSpace id's */ + +static inline void compat_copy_fm_pcd_plcr_next_engine( + ioc_compat_fm_pcd_plcr_next_engine_params_u *compat_param, + ioc_fm_pcd_plcr_next_engine_params_u *param, + ioc_fm_pcd_engine next_engine, + uint8_t compat) +{ + switch (next_engine) + { + case e_IOC_FM_PCD_PLCR: + if (compat) + param->p_profile = compat_ptr(compat_param->p_profile); + else + compat_param->p_profile = ptr_to_compat(param->p_profile); + break; + + case e_IOC_FM_PCD_KG: + if (compat) + param->p_direct_scheme = compat_ptr(compat_param->p_direct_scheme); + else + compat_param->p_direct_scheme = ptr_to_compat(param->p_direct_scheme); + break; + + default: + if (compat) + param->action = compat_param->action; + else + compat_param->action = param->action; + } +} + +void compat_copy_fm_pcd_plcr_profile( + ioc_compat_fm_pcd_plcr_profile_params_t *compat_param, + ioc_fm_pcd_plcr_profile_params_t *param, + uint8_t compat) +{ + if (compat) + { + param->modify = compat_param->modify; + + /* profile_select */ + if (!compat_param->modify) + { + param->profile_select.new_params.profile_type = + compat_param->profile_select.new_params.profile_type; + param->profile_select.new_params.p_port = + compat_ptr(compat_param->profile_select.new_params.p_port); + param->profile_select.new_params.relative_profile_id = + compat_param->profile_select.new_params.relative_profile_id; + } + else + param->profile_select.p_profile = + compat_ptr(compat_param->profile_select.p_profile); + + param->alg_selection = compat_param->alg_selection; + param->color_mode = compat_param->color_mode; + + /* both parameters in the union has the same size, so memcpy works */ + memcpy(¶m->color, &compat_param->color, sizeof(param->color)); + + memcpy(¶m->non_passthrough_alg_param, &compat_param->non_passthrough_alg_param, sizeof(ioc_fm_pcd_plcr_non_passthrough_alg_param_t)); + + param->next_engine_on_green = compat_param->next_engine_on_green; + param->next_engine_on_yellow = compat_param->next_engine_on_yellow; + param->next_engine_on_red = compat_param->next_engine_on_red; + + param->trap_profile_on_flow_A = compat_param->trap_profile_on_flow_A; + param->trap_profile_on_flow_B = compat_param->trap_profile_on_flow_B; + param->trap_profile_on_flow_C = compat_param->trap_profile_on_flow_C; + + param->id = compat_ptr(compat_param->id); + } + else + { + compat_param->modify = param->modify; + + /* profile_select */ + if(!param->modify){ + compat_param->profile_select.new_params.profile_type = + param->profile_select.new_params.profile_type; + compat_param->profile_select.new_params.p_port = + ptr_to_compat(param->profile_select.new_params.p_port); + compat_param->profile_select.new_params.relative_profile_id = + param->profile_select.new_params.relative_profile_id; + } + else + compat_param->profile_select.p_profile = + ptr_to_compat(param->profile_select.p_profile); + + compat_param->alg_selection = param->alg_selection; + compat_param->color_mode = param->color_mode; + + /* both parameters in the union has the same size, so memcpy works */ + memcpy(&compat_param->color, ¶m->color, sizeof(compat_param->color)); + + memcpy(&compat_param->non_passthrough_alg_param, ¶m->non_passthrough_alg_param, sizeof(ioc_fm_pcd_plcr_non_passthrough_alg_param_t)); + + compat_param->next_engine_on_green = param->next_engine_on_green; + compat_param->next_engine_on_yellow = param->next_engine_on_yellow; + compat_param->next_engine_on_red = param->next_engine_on_red; + + compat_param->trap_profile_on_flow_A = param->trap_profile_on_flow_A; + compat_param->trap_profile_on_flow_B = param->trap_profile_on_flow_B; + compat_param->trap_profile_on_flow_C = param->trap_profile_on_flow_C; + + compat_param->id = ptr_to_compat(param->id); + } + + compat_copy_fm_pcd_plcr_next_engine(&compat_param->params_on_green, + ¶m->params_on_green, param->next_engine_on_green, compat); + + compat_copy_fm_pcd_plcr_next_engine(&compat_param->params_on_yellow, + ¶m->params_on_yellow, param->next_engine_on_yellow, compat); + + compat_copy_fm_pcd_plcr_next_engine(&compat_param->params_on_red, + ¶m->params_on_red, param->next_engine_on_red, compat); +} + +static inline void compat_copy_fm_pcd_cc_next_kg( + ioc_compat_fm_pcd_cc_next_kg_params_t *compat_param, + ioc_fm_pcd_cc_next_kg_params_t *param, + uint8_t compat) +{ + if (compat) + { + param->new_fqid = compat_param->new_fqid; + param->override_fqid = compat_param->override_fqid; + param->p_direct_scheme = compat_ptr(compat_param->p_direct_scheme); + } + else + { + compat_param->new_fqid = param->new_fqid; + compat_param->override_fqid = param->override_fqid; + compat_param->p_direct_scheme = ptr_to_compat(param->p_direct_scheme); + } +} + +static inline void compat_copy_fm_pcd_cc_next_cc( + ioc_compat_fm_pcd_cc_next_cc_params_t *compat_param, + ioc_fm_pcd_cc_next_cc_params_t *param, + uint8_t compat) +{ + if (compat) + param->cc_node_id = compat_get_id2ptr(compat_param->cc_node_id); + else + compat_param->cc_node_id = compat_get_ptr2id(param->cc_node_id); +} + +static inline void compat_copy_fm_pcd_cc_next_engine( + ioc_compat_fm_pcd_cc_next_engine_params_t *compat_param, + ioc_fm_pcd_cc_next_engine_params_t *param, + uint8_t compat) +{ + if (compat) + { + param->next_engine = compat_param->next_engine; + + switch (compat_param->next_engine) + { + case e_IOC_FM_PCD_KG: + compat_copy_fm_pcd_cc_next_kg(&compat_param->params.kg_params, ¶m->params.kg_params, compat); + break; + case e_IOC_FM_PCD_CC: + compat_copy_fm_pcd_cc_next_cc(&compat_param->params.cc_params, ¶m->params.cc_params, compat); + break; + default: + memcpy(¶m->params, &compat_param->params, sizeof(param->params)); + break; + } +#ifdef FM_PCD_CC_MANIP + param->p_manip = compat_ptr(compat_param->p_manip); +#endif + } + else + { + compat_param->next_engine = param->next_engine; + + switch (compat_param->next_engine) + { + case e_IOC_FM_PCD_KG: + compat_copy_fm_pcd_cc_next_kg(&compat_param->params.kg_params, ¶m->params.kg_params, compat); + break; + case e_IOC_FM_PCD_CC: + compat_copy_fm_pcd_cc_next_cc(&compat_param->params.cc_params, ¶m->params.cc_params, compat); + break; + default: + memcpy(&compat_param->params, ¶m->params, sizeof(compat_param->params)); + break; + } + +#ifdef FM_PCD_CC_MANIP + compat_param->p_manip = ptr_to_compat(param->p_manip); +#endif + } +} + +void compat_copy_fm_pcd_cc_key( + ioc_compat_fm_pcd_cc_key_params_t *compat_param, + ioc_fm_pcd_cc_key_params_t *param, + uint8_t compat) +{ + if (compat) + { + param->p_key = compat_ptr(compat_param->p_key); + param->p_mask = compat_ptr(compat_param->p_mask); + } + else + { + compat_param->p_key = ptr_to_compat(param->p_key); + compat_param->p_mask = ptr_to_compat(param->p_mask); + } + + compat_copy_fm_pcd_cc_next_engine( + &compat_param->cc_next_engine_params, + ¶m->cc_next_engine_params, + compat); +} + +void compat_copy_fm_pcd_cc_node_modify_key_and_next_engine( + ioc_compat_fm_pcd_cc_node_modify_key_and_next_engine_params_t *compat_param, + ioc_fm_pcd_cc_node_modify_key_and_next_engine_params_t *param, + uint8_t compat) +{ + if (compat) + { + param->id = compat_ptr(compat_param->id); + param->key_indx = compat_param->key_indx; + param->key_size = compat_param->key_indx; + compat_copy_fm_pcd_cc_key( + &compat_param->key_params, + ¶m->key_params, + compat); + } + else + { + compat_param->id = ptr_to_compat(param->id); + compat_param->key_indx = param->key_indx; + compat_param->key_size = param->key_indx; + compat_copy_fm_pcd_cc_key( + &compat_param->key_params, + ¶m->key_params, + compat); + } +} + +void compat_copy_fm_pcd_cc_node_modify_next_engine( + ioc_compat_fm_pcd_cc_node_modify_next_engine_params_t *compat_param, + ioc_fm_pcd_cc_node_modify_next_engine_params_t *param, + uint8_t compat) +{ + if (compat) + { + param->id = compat_ptr(compat_param->id); + param->key_indx = compat_param->key_indx; + param->key_size = compat_param->key_size; + } + else + { + compat_param->id = ptr_to_compat(param->id); + compat_param->key_indx = param->key_indx; + compat_param->key_size = param->key_size; + } + + compat_copy_fm_pcd_cc_next_engine( + &compat_param->cc_next_engine_params, + ¶m->cc_next_engine_params, + compat); +} + +void compat_fm_pcd_cc_tree_modify_next_engine( + ioc_compat_fm_pcd_cc_tree_modify_next_engine_params_t *compat_param, + ioc_fm_pcd_cc_tree_modify_next_engine_params_t *param, + uint8_t compat) +{ + if (compat) + { + param->id = compat_ptr(compat_param->id); + param->grp_indx = compat_param->grp_indx; + param->indx = compat_param->indx; + } + else + { + compat_param->id = ptr_to_compat(param->id); + compat_param->grp_indx = param->grp_indx; + compat_param->indx = param->indx; + } + + compat_copy_fm_pcd_cc_next_engine( + &compat_param->cc_next_engine_params, + ¶m->cc_next_engine_params, + compat); +} + +void compat_copy_fm_pcd_cc_grp( + ioc_compat_fm_pcd_cc_grp_params_t *compat_param, + ioc_fm_pcd_cc_grp_params_t *param, + uint8_t compat) +{ + int k; + + if (compat) + { + param->num_of_distinction_units = compat_param->num_of_distinction_units; + memcpy(param->unit_ids, compat_param->unit_ids, IOC_FM_PCD_MAX_NUM_OF_CC_UNITS); + } + else + { + compat_param->num_of_distinction_units = param->num_of_distinction_units; + memcpy(compat_param->unit_ids, param->unit_ids, IOC_FM_PCD_MAX_NUM_OF_CC_UNITS); + } + + for (k=0; k < IOC_FM_PCD_MAX_NUM_OF_CC_ENTRIES_IN_GRP; k++) + compat_copy_fm_pcd_cc_next_engine( + &compat_param->next_engine_per_entries_in_grp[k], + ¶m->next_engine_per_entries_in_grp[k], + compat); +} + +void compat_copy_fm_pcd_cc_tree( + ioc_compat_fm_pcd_cc_tree_params_t *compat_param, + ioc_fm_pcd_cc_tree_params_t *param, + uint8_t compat) +{ + int k; + + if (compat) + { + param->net_env_id = compat_ptr(compat_param->net_env_id); + param->num_of_groups = compat_param->num_of_groups; + + for (k=0; k < IOC_FM_PCD_MAX_NUM_OF_CC_GROUPS; k++) + compat_copy_fm_pcd_cc_grp( + &compat_param->fm_pcd_cc_group_params[k], + ¶m->fm_pcd_cc_group_params[k], + compat); + param->id = compat_ptr(compat_param->id); + } + else + { + compat_param->net_env_id = ptr_to_compat(param->net_env_id); + compat_param->num_of_groups = param->num_of_groups; + for (k=0; k < IOC_FM_PCD_MAX_NUM_OF_CC_GROUPS; k++) + compat_copy_fm_pcd_cc_grp( + &compat_param->fm_pcd_cc_group_params[k], + ¶m->fm_pcd_cc_group_params[k], + compat); + compat_param->id = ptr_to_compat(param->id); + } +} + +void compat_fm_pcd_prs_sw( + ioc_compat_fm_pcd_prs_sw_params_t *compat_param, + ioc_fm_pcd_prs_sw_params_t *param, + uint8_t compat) +{ + if (compat) + { + param->override = compat_param->override; + param->size = compat_param->size; + param->base = compat_param->base; + param->p_code = compat_ptr(compat_param->p_code); + memcpy(param->sw_prs_data_params,compat_param->sw_prs_data_params,IOC_FM_PCD_PRS_NUM_OF_HDRS*sizeof(uint32_t)); + param->num_of_labels = compat_param->num_of_labels; + memcpy(param->labels_table,compat_param->labels_table,IOC_FM_PCD_PRS_NUM_OF_LABELS*sizeof(ioc_fm_pcd_prs_label_params_t)); + return; + } + + WARN(1, "\n\nFMD: fatal error, feature not implemented!\n\n"); +} + +void compat_copy_fm_pcd_kg_scheme( + ioc_compat_fm_pcd_kg_scheme_params_t *compat_param, + ioc_fm_pcd_kg_scheme_params_t *param, + uint8_t compat) +{ + if (compat) + { + param->modify = compat_param->modify; + + /* scm_id */ + if(compat_param->modify) + param->scm_id.scheme_id = compat_ptr(compat_param->scm_id.scheme_id); + else + param->scm_id.relative_scheme_id = compat_param->scm_id.relative_scheme_id; + + param->always_direct = compat_param->always_direct; + /* netEnvParams */ + param->netEnvParams.net_env_id = compat_ptr(compat_param->netEnvParams.net_env_id); + param->netEnvParams.num_of_distinction_units = compat_param->netEnvParams.num_of_distinction_units; + memcpy(param->netEnvParams.unit_ids, + compat_param->netEnvParams.unit_ids, + IOC_FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS); + + param->use_hash = compat_param->use_hash; + memcpy(¶m->key_extract_and_hash_params, + &compat_param->key_extract_and_hash_params, + sizeof(ioc_fm_pcd_kg_key_extract_and_hash_params_t)); + param->bypass_fqid_generation = compat_param->bypass_fqid_generation; + param->base_fqid = compat_param->base_fqid; + param->numOfUsedExtractedOrs = compat_param->numOfUsedExtractedOrs; + memcpy(param->extracted_ors, compat_param->extracted_ors, IOC_FM_PCD_KG_NUM_OF_GENERIC_REGS * sizeof(ioc_fm_pcd_kg_extracted_or_params_t)); + param->next_engine = compat_param->next_engine; + + /* kg_next_engine_params */ + if(param->next_engine == e_IOC_FM_PCD_CC){ + param->kg_next_engine_params.cc.tree_id = compat_get_id2ptr(compat_param->kg_next_engine_params.cc.tree_id); + param->kg_next_engine_params.cc.grp_id = compat_param->kg_next_engine_params.cc.grp_id; + param->kg_next_engine_params.cc.plcr_next = compat_param->kg_next_engine_params.cc.plcr_next; + param->kg_next_engine_params.cc.bypass_plcr_profile_generation = compat_param->kg_next_engine_params.cc.bypass_plcr_profile_generation; + memcpy(¶m->kg_next_engine_params.cc.plcr_profile, + &compat_param->kg_next_engine_params.cc.plcr_profile, + sizeof(ioc_fm_pcd_kg_plcr_profile_t)); + } + else + memcpy(¶m->kg_next_engine_params, + &compat_param->kg_next_engine_params, + sizeof(param->kg_next_engine_params)); + + memcpy(¶m->scheme_counter, &compat_param->scheme_counter, sizeof(ioc_fm_pcd_kg_scheme_counter_t)); + param->id = compat_ptr(compat_param->id); + } + else + { + compat_param->modify = param->modify; + + /* scm_id */ + if(param->modify) + compat_param->scm_id.scheme_id = ptr_to_compat(param->scm_id.scheme_id); + else + compat_param->scm_id.relative_scheme_id = param->scm_id.relative_scheme_id; + + compat_param->always_direct = param->always_direct; + + /* netEnvParams */ + compat_param->netEnvParams.net_env_id = ptr_to_compat(param->netEnvParams.net_env_id); + compat_param->netEnvParams.num_of_distinction_units = param->netEnvParams.num_of_distinction_units; + memcpy(compat_param->netEnvParams.unit_ids, param->netEnvParams.unit_ids, IOC_FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS); + + compat_param->use_hash = param->use_hash; + memcpy(&compat_param->key_extract_and_hash_params, ¶m->key_extract_and_hash_params, sizeof(ioc_fm_pcd_kg_key_extract_and_hash_params_t)); + compat_param->bypass_fqid_generation = param->bypass_fqid_generation; + compat_param->base_fqid = param->base_fqid; + compat_param->numOfUsedExtractedOrs = param->numOfUsedExtractedOrs; + memcpy(compat_param->extracted_ors, param->extracted_ors, IOC_FM_PCD_KG_NUM_OF_GENERIC_REGS * sizeof(ioc_fm_pcd_kg_extracted_or_params_t)); + compat_param->next_engine = param->next_engine; + + /* kg_next_engine_params */ + if(compat_param->next_engine == e_IOC_FM_PCD_CC){ + compat_param->kg_next_engine_params.cc.tree_id = compat_get_ptr2id(param->kg_next_engine_params.cc.tree_id); + compat_param->kg_next_engine_params.cc.grp_id = param->kg_next_engine_params.cc.grp_id; + compat_param->kg_next_engine_params.cc.plcr_next = param->kg_next_engine_params.cc.plcr_next; + compat_param->kg_next_engine_params.cc.bypass_plcr_profile_generation = param->kg_next_engine_params.cc.bypass_plcr_profile_generation; + memcpy(&compat_param->kg_next_engine_params.cc.plcr_profile, ¶m->kg_next_engine_params.cc.plcr_profile, sizeof(ioc_fm_pcd_kg_plcr_profile_t)); + } + else + memcpy(¶m->kg_next_engine_params, &compat_param->kg_next_engine_params, sizeof(compat_param->kg_next_engine_params)); + + memcpy(&compat_param->scheme_counter, ¶m->scheme_counter, sizeof(ioc_fm_pcd_kg_scheme_counter_t)); + compat_param->id = ptr_to_compat(param->id); + } +} + +void compat_copy_fm_pcd_kg_scheme_select( + ioc_compat_fm_pcd_kg_scheme_select_t *compat_param, + ioc_fm_pcd_kg_scheme_select_t *param, + uint8_t compat) +{ + if (compat){ + param->direct = compat_param->direct; + param->scheme_id = compat_ptr(compat_param->direct); + } + else { + printk(" %s:%u feature not implemented... \n", __func__, __LINE__); + } +} + +void compat_copy_fm_pcd_kg_schemes_params( + ioc_compat_fm_pcd_port_schemes_params_t *compat_param, + ioc_fm_pcd_port_schemes_params_t *param, + uint8_t compat) +{ + int k; + + if (compat) { + param->num_of_schemes = compat_param->num_of_schemes; + for(k=0; k < IOC_FM_PCD_KG_NUM_OF_SCHEMES; k++) + param->scheme_ids[k] = compat_ptr(compat_param->schemes_ids[k]); + } + else { + printk(" %s:%u feature not implemented... \n", __func__, __LINE__); + } +} + +void compat_copy_fm_port_pcd_kg( + ioc_compat_fm_port_pcd_kg_params_t *compat_param, + ioc_fm_port_pcd_kg_params_t *param, + uint8_t compat) +{ + if (compat){ + uint8_t k; + param->num_of_schemes = compat_param->num_of_schemes; + for(k=0;kschemes_ids[k] = compat_ptr(compat_param->schemes_ids[k]); + param->direct_scheme = compat_param->direct_scheme; + param->direct_scheme_id = compat_ptr(compat_param->direct_scheme_id); + } + else { + printk(" %s:%u feature not implemented... \n", __func__, __LINE__);; + } +} + +void compat_copy_fm_port_pcd( + ioc_compat_fm_port_pcd_params_t *compat_param, + ioc_fm_port_pcd_params_t *param, + uint8_t compat) +{ + if (compat){ + param->pcd_support = compat_param->pcd_support; + param->net_env_id = compat_ptr(compat_param->net_env_id); + param->p_prs_params = compat_ptr(compat_param->p_prs_params); /* same structure */ + param->p_cc_params = compat_ptr(compat_param->p_cc_params); + param->p_kg_params = compat_ptr(compat_param->p_kg_params); + param->p_plcr_params = compat_ptr(compat_param->p_plcr_params); + } + else { + compat_param->pcd_support = param->pcd_support; + compat_param->net_env_id = ptr_to_compat(param->net_env_id); + compat_param->p_prs_params = ptr_to_compat(param->p_prs_params); /* same structure */ + compat_param->p_cc_params = ptr_to_compat(param->p_cc_params); + compat_param->p_kg_params = ptr_to_compat(param->p_kg_params); + compat_param->p_plcr_params = ptr_to_compat(param->p_plcr_params); + } +} + +void compat_copy_fm_pcd_net_env( + ioc_compat_fm_pcd_net_env_params_t *compat_param, + ioc_fm_pcd_net_env_params_t *param, + uint8_t compat) +{ + if (compat) + { + param->num_of_distinction_units = compat_param->num_of_distinction_units; + memcpy(param->units, compat_param->units, sizeof(ioc_fm_pcd_distinction_unit_t)*IOC_FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS); + param->id = compat_ptr(compat_param->id); + } + else + { + compat_param->num_of_distinction_units = param->num_of_distinction_units; + memcpy(compat_param->units, param->units, sizeof(ioc_fm_pcd_distinction_unit_t)*IOC_FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS); + compat_param->id = ptr_to_compat(param->id); + } +} + +void compat_copy_fm_pcd_cc_node_modify_key( + ioc_compat_fm_pcd_cc_node_modify_key_params_t *compat_param, + ioc_fm_pcd_cc_node_modify_key_params_t *param, + uint8_t compat) +{ + if (compat) + { + param->id = compat_ptr(compat_param->id); + param->key_indx = compat_param->key_indx; + param->key_size = compat_param->key_size; + param->p_key = (uint8_t *)compat_ptr(compat_param->p_key); + param->p_mask = (uint8_t *)compat_ptr(compat_param->p_mask); + } + else + { + compat_param->id = ptr_to_compat(param->id); + compat_param->key_indx = param->key_indx; + compat_param->key_size = param->key_size; + compat_param->p_key = ptr_to_compat((void *)param->p_key); + compat_param->p_mask = ptr_to_compat((void *)param->p_mask); + } +} + +void compat_copy_keys( + ioc_compat_keys_params_t *compat_param, + ioc_keys_params_t *param, + uint8_t compat) +{ + int k = 0; + if (compat){ + param->num_of_keys = compat_param->num_of_keys; + param->key_size = compat_param->key_size; + + for(k=0;kkey_params[k], + ¶m->key_params[k], + compat); + + } + else { + + compat_param->num_of_keys = param->num_of_keys; + compat_param->key_size = param->key_size; + + for(k=0;kkey_params[k], + ¶m->key_params[k], + compat); + } + + compat_copy_fm_pcd_cc_next_engine( + &compat_param->cc_next_engine_params_for_miss, + ¶m->cc_next_engine_params_for_miss, + compat); + +} + +void compat_copy_fm_pcd_cc_node( + ioc_compat_fm_pcd_cc_node_params_t *compat_param, + ioc_fm_pcd_cc_node_params_t *param, + uint8_t compat) +{ + if (compat) + { + /* no pointer inside, so sizeof US and KS are the same - memcpy is ok */ + memcpy(¶m->extract_cc_params, &compat_param->extract_cc_params, sizeof(ioc_fm_pcd_extract_entry_t)); + + compat_copy_keys(&compat_param->keys_params, ¶m->keys_params, compat); + + param->id = compat_get_id2ptr(compat_param->id); + } + else + { + /* no pointer inside, so sizeof US and KS are the same - memcpy is ok */ + memcpy(&compat_param->extract_cc_params, ¶m->extract_cc_params, sizeof(ioc_fm_pcd_extract_entry_t)); + + compat_copy_keys(&compat_param->keys_params, ¶m->keys_params, compat); + + compat_param->id = ptr_to_compat(param->id); + } +} + --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_ioctls_fm_compat.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_ioctls_fm_compat.h @@ -0,0 +1,379 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + + @File lnxwrp_ioctls_fm_compat.h + + @Description FM PCD compat structures definition. + +*/ + +#ifndef __FM_COMPAT_IOCTLS_H +#define __FM_COMPAT_IOCTLS_H + +#include + +#define COMPAT_K_TO_US 0 /* copy from Kernel to User */ +#define COMPAT_US_TO_K 1 /* copy from User to Kernel */ + +#define COMPAT_COPY_K2US(dest, src, type) compat_copy_##type(src, dest, 0) +#define COMPAT_COPY_US2K(dest, src, type) compat_copy_##type(dest, src, 1) + +/* maping kernel pointers w/ UserSpace id's { */ +/* Because compat_ptr(ptr_to_compat(X)) != X, this way we cannot exchange pointers + back and forth (US - KS). compat_ptr is a cast and pointers are broken. */ +#define COMPAT_PTR2ID_ARRAY_MAX (256+1) /* first location is not used */ +#define COMPAT_PTR2ID_WATERMARK 0xface0000 +#define COMPAT_PTR2ID_WM_MASK 0xffff0000 + +void compat_del_ptr2id(void *p); +compat_uptr_t compat_add_ptr2id(void *p); +compat_uptr_t compat_get_ptr2id(void *p); +void *compat_get_id2ptr(compat_uptr_t comp); +/* } maping kernel pointers w/ UserSpace id's */ + +/* pcd compat structures { */ +typedef struct ioc_compat_fm_pcd_cc_node_remove_key_params_t { + compat_uptr_t id; + uint8_t key_indx; +} ioc_compat_fm_pcd_cc_node_remove_key_params_t; + +typedef union ioc_compat_fm_pcd_plcr_next_engine_params_u { + ioc_fm_pcd_done_action action; + compat_uptr_t p_profile; + compat_uptr_t p_direct_scheme; +} ioc_compat_fm_pcd_plcr_next_engine_params_u; + +typedef struct ioc_compat_fm_pcd_plcr_profile_params_t { + bool modify; + union { + struct { + ioc_fm_pcd_profile_type_selection profile_type; + compat_uptr_t p_port; + uint16_t relative_profile_id; + } new_params; + compat_uptr_t p_profile; + } profile_select; + ioc_fm_pcd_plcr_algorithm_selection alg_selection; + ioc_fm_pcd_plcr_color_mode color_mode; + + union { + ioc_fm_pcd_plcr_color dflt_color; + ioc_fm_pcd_plcr_color override; + } color; + + ioc_fm_pcd_plcr_non_passthrough_alg_param_t non_passthrough_alg_param; + + ioc_fm_pcd_engine next_engine_on_green; + ioc_compat_fm_pcd_plcr_next_engine_params_u params_on_green; + + ioc_fm_pcd_engine next_engine_on_yellow; + ioc_compat_fm_pcd_plcr_next_engine_params_u params_on_yellow; + + ioc_fm_pcd_engine next_engine_on_red; + ioc_compat_fm_pcd_plcr_next_engine_params_u params_on_red; + + bool trap_profile_on_flow_A; + bool trap_profile_on_flow_B; + bool trap_profile_on_flow_C; + compat_uptr_t id; +} ioc_compat_fm_pcd_plcr_profile_params_t; + +typedef struct ioc_compat_fm_obj_t { + compat_uptr_t obj; +} ioc_compat_fm_obj_t; + +typedef struct ioc_compat_fm_pcd_kg_scheme_select_t { + bool direct; + compat_uptr_t scheme_id; +} ioc_compat_fm_pcd_kg_scheme_select_t; + +typedef struct ioc_compat_fm_pcd_port_schemes_params_t { + uint8_t num_of_schemes; + compat_uptr_t schemes_ids [IOC_FM_PCD_KG_NUM_OF_SCHEMES]; +} ioc_compat_fm_pcd_port_schemes_params_t; + +typedef struct ioc_compat_fm_pcd_net_env_params_t { + uint8_t num_of_distinction_units; + ioc_fm_pcd_distinction_unit_t units[IOC_FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS]; /* same structure*/ + compat_uptr_t id; +} ioc_compat_fm_pcd_net_env_params_t; + +typedef struct ioc_compat_fm_pcd_prs_sw_params_t { + bool override; + uint32_t size; + uint16_t base; + compat_uptr_t p_code; + uint32_t sw_prs_data_params[IOC_FM_PCD_PRS_NUM_OF_HDRS]; + uint8_t num_of_labels; + ioc_fm_pcd_prs_label_params_t labels_table[IOC_FM_PCD_PRS_NUM_OF_LABELS]; +} ioc_compat_fm_pcd_prs_sw_params_t; + +typedef struct ioc_compat_fm_pcd_cc_next_kg_params_t { + bool override_fqid; + uint32_t new_fqid; + compat_uptr_t p_direct_scheme; +} ioc_compat_fm_pcd_cc_next_kg_params_t; + +typedef struct ioc_compat_fm_pcd_cc_next_cc_params_t { + compat_uptr_t cc_node_id; +} ioc_compat_fm_pcd_cc_next_cc_params_t; + +typedef struct ioc_compat_fm_pcd_cc_next_engine_params_t { + ioc_fm_pcd_engine next_engine; + union { + ioc_compat_fm_pcd_cc_next_cc_params_t cc_params; /**< compat structure*/ + ioc_fm_pcd_cc_next_plcr_params_t plcr_params; /**< same structure*/ + ioc_fm_pcd_cc_next_enqueue_params_t enqueue_params; /**< same structure*/ + ioc_compat_fm_pcd_cc_next_kg_params_t kg_params; /**< compat structure*/ + } params; +#ifdef FM_PCD_CC_MANIP + compat_uptr_t p_manip; +#endif +} ioc_compat_fm_pcd_cc_next_engine_params_t; + + +typedef struct ioc_compat_fm_pcd_cc_grp_params_t { + uint8_t num_of_distinction_units; /**< up to 4 */ + uint8_t unit_ids [IOC_FM_PCD_MAX_NUM_OF_CC_UNITS]; + /**< Indexes of the units as defined in + FM_PCD_SetNetEnvCharacteristics */ + ioc_compat_fm_pcd_cc_next_engine_params_t next_engine_per_entries_in_grp[IOC_FM_PCD_MAX_NUM_OF_CC_ENTRIES_IN_GRP]; + /**< Max size is 16 - if only one group used */ +} ioc_compat_fm_pcd_cc_grp_params_t; + +typedef struct ioc_compat_fm_pcd_cc_tree_params_t { + compat_uptr_t net_env_id; + uint8_t num_of_groups; + ioc_compat_fm_pcd_cc_grp_params_t fm_pcd_cc_group_params [IOC_FM_PCD_MAX_NUM_OF_CC_GROUPS]; + compat_uptr_t id; +} ioc_compat_fm_pcd_cc_tree_params_t; + +typedef struct ioc_compat_fm_pcd_cc_tree_modify_next_engine_params_t { + compat_uptr_t id; + uint8_t grp_indx; + uint8_t indx; + ioc_compat_fm_pcd_cc_next_engine_params_t cc_next_engine_params; +} ioc_compat_fm_pcd_cc_tree_modify_next_engine_params_t; + +typedef struct ioc_compat_fm_pcd_cc_key_params_t { + compat_uptr_t p_key; + compat_uptr_t p_mask; + ioc_compat_fm_pcd_cc_next_engine_params_t cc_next_engine_params; /**< compat structure*/ +} ioc_compat_fm_pcd_cc_key_params_t; + +typedef struct ioc_compat_keys_params_t { + uint8_t num_of_keys; + uint8_t key_size; + ioc_compat_fm_pcd_cc_key_params_t key_params[IOC_FM_PCD_MAX_NUM_OF_KEYS]; /**< compat structure*/ + ioc_compat_fm_pcd_cc_next_engine_params_t cc_next_engine_params_for_miss; /**< compat structure*/ +} ioc_compat_keys_params_t; + +typedef struct ioc_compat_fm_pcd_cc_node_params_t { + ioc_fm_pcd_extract_entry_t extract_cc_params; /**< same structure*/ + ioc_compat_keys_params_t keys_params; /**< compat structure*/ + compat_uptr_t id; +} ioc_compat_fm_pcd_cc_node_params_t; + +typedef struct ioc_compat_fm_pcd_cc_node_modify_key_params_t { + compat_uptr_t id; + uint8_t key_indx; + uint8_t key_size; + compat_uptr_t p_key; + compat_uptr_t p_mask; +} ioc_compat_fm_pcd_cc_node_modify_key_params_t; + +typedef struct ioc_compat_fm_pcd_cc_node_modify_key_and_next_engine_params_t { + compat_uptr_t id; + uint8_t key_indx; + uint8_t key_size; + ioc_compat_fm_pcd_cc_key_params_t key_params; +} ioc_compat_fm_pcd_cc_node_modify_key_and_next_engine_params_t; + +typedef struct ioc_compat_fm_port_pcd_plcr_params_t { + compat_uptr_t plcr_profile_id; +} ioc_compat_fm_port_pcd_plcr_params_t; + +typedef struct ioc_compat_fm_port_pcd_cc_params_t { + compat_uptr_t cc_tree_id; +} ioc_compat_fm_port_pcd_cc_params_t; + +typedef struct ioc_compat_fm_port_pcd_kg_params_t { + uint8_t num_of_schemes; + compat_uptr_t schemes_ids[IOC_FM_PCD_KG_NUM_OF_SCHEMES]; + bool direct_scheme; + compat_uptr_t direct_scheme_id; +} ioc_compat_fm_port_pcd_kg_params_t; + +typedef struct ioc_compat_fm_port_pcd_params_t { + ioc_fm_port_pcd_support pcd_support; + compat_uptr_t net_env_id; + compat_uptr_t p_prs_params; + compat_uptr_t p_cc_params; + compat_uptr_t p_kg_params; + compat_uptr_t p_plcr_params; +} ioc_compat_fm_port_pcd_params_t; + +typedef struct ioc_compat_fm_pcd_kg_cc_t { + compat_uptr_t tree_id; + uint8_t grp_id; + bool plcr_next; + bool bypass_plcr_profile_generation; + ioc_fm_pcd_kg_plcr_profile_t plcr_profile; +} ioc_compat_fm_pcd_kg_cc_t; + +typedef struct ioc_compat_fm_pcd_kg_scheme_params_t { + bool modify; + union + { + uint8_t relative_scheme_id; + compat_uptr_t scheme_id; + } scm_id; + bool always_direct; + struct + { + compat_uptr_t net_env_id; + uint8_t num_of_distinction_units; + uint8_t unit_ids[IOC_FM_PCD_MAX_NUM_OF_DISTINCTION_UNITS]; + } netEnvParams; + bool use_hash; + ioc_fm_pcd_kg_key_extract_and_hash_params_t key_extract_and_hash_params; + bool bypass_fqid_generation; + uint32_t base_fqid; + uint8_t numOfUsedExtractedOrs; + ioc_fm_pcd_kg_extracted_or_params_t extracted_ors[IOC_FM_PCD_KG_NUM_OF_GENERIC_REGS]; + ioc_fm_pcd_engine next_engine; + union{ + ioc_fm_pcd_done_action done_action; + ioc_fm_pcd_kg_plcr_profile_t plcr_profile; + ioc_compat_fm_pcd_kg_cc_t cc; + } kg_next_engine_params; + ioc_fm_pcd_kg_scheme_counter_t scheme_counter; + compat_uptr_t id; +} ioc_compat_fm_pcd_kg_scheme_params_t; + +typedef struct ioc_compat_fm_pcd_cc_node_modify_next_engine_params_t { + compat_uptr_t id; + uint8_t key_indx; + uint8_t key_size; + ioc_compat_fm_pcd_cc_next_engine_params_t cc_next_engine_params; +} ioc_compat_fm_pcd_cc_node_modify_next_engine_params_t; +/* } pcd compat structures */ + +/* pcd compat functions { */ +void compat_copy_fm_pcd_plcr_profile( + ioc_compat_fm_pcd_plcr_profile_params_t *compat_param, + ioc_fm_pcd_plcr_profile_params_t *param, + uint8_t compat); + +void compat_copy_fm_pcd_cc_key( + ioc_compat_fm_pcd_cc_key_params_t *compat_param, + ioc_fm_pcd_cc_key_params_t *param, + uint8_t compat); + +void compat_copy_fm_pcd_cc_node_modify_key_and_next_engine( + ioc_compat_fm_pcd_cc_node_modify_key_and_next_engine_params_t *compat_param, + ioc_fm_pcd_cc_node_modify_key_and_next_engine_params_t *param, + uint8_t compat); + +void compat_copy_fm_pcd_cc_node_modify_next_engine( + ioc_compat_fm_pcd_cc_node_modify_next_engine_params_t *compat_param, + ioc_fm_pcd_cc_node_modify_next_engine_params_t *param, + uint8_t compat); + +void compat_fm_pcd_cc_tree_modify_next_engine( + ioc_compat_fm_pcd_cc_tree_modify_next_engine_params_t *compat_param, + ioc_fm_pcd_cc_tree_modify_next_engine_params_t *param, + uint8_t compat); + +void compat_copy_fm_pcd_cc_grp( + ioc_compat_fm_pcd_cc_grp_params_t *compat_param, + ioc_fm_pcd_cc_grp_params_t *param, + uint8_t compat); + +void compat_copy_fm_pcd_cc_tree( + ioc_compat_fm_pcd_cc_tree_params_t *compat_param, + ioc_fm_pcd_cc_tree_params_t *param, + uint8_t compat); + +void compat_fm_pcd_prs_sw( + ioc_compat_fm_pcd_prs_sw_params_t *compat_param, + ioc_fm_pcd_prs_sw_params_t *param, + uint8_t compat); + +void compat_copy_fm_pcd_kg_scheme( + ioc_compat_fm_pcd_kg_scheme_params_t *compat_param, + ioc_fm_pcd_kg_scheme_params_t *param, + uint8_t compat); + +void compat_copy_fm_pcd_kg_scheme_select( + ioc_compat_fm_pcd_kg_scheme_select_t *compat_param, + ioc_fm_pcd_kg_scheme_select_t *param, + uint8_t compat); + +void compat_copy_fm_pcd_kg_schemes_params( + ioc_compat_fm_pcd_port_schemes_params_t *compat_param, + ioc_fm_pcd_port_schemes_params_t *param, + uint8_t compat); + +void compat_copy_fm_port_pcd_kg( + ioc_compat_fm_port_pcd_kg_params_t *compat_param, + ioc_fm_port_pcd_kg_params_t *param, + uint8_t compat); + +void compat_copy_fm_port_pcd( + ioc_compat_fm_port_pcd_params_t *compat_param, + ioc_fm_port_pcd_params_t *param, + uint8_t compat); + +void compat_copy_fm_pcd_net_env( + ioc_compat_fm_pcd_net_env_params_t *compat_param, + ioc_fm_pcd_net_env_params_t *param, + uint8_t compat); + +void compat_copy_fm_pcd_cc_node_modify_key( + ioc_compat_fm_pcd_cc_node_modify_key_params_t *compat_param, + ioc_fm_pcd_cc_node_modify_key_params_t *param, + uint8_t compat); + +void compat_copy_keys( + ioc_compat_keys_params_t *compat_param, + ioc_keys_params_t *param, + uint8_t compat); + +void compat_copy_fm_pcd_cc_node( + ioc_compat_fm_pcd_cc_node_params_t *compat_param, + ioc_fm_pcd_cc_node_params_t *param, + uint8_t compat); + +/* } pcd compat functions */ +#endif --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_resources.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_resources.c @@ -0,0 +1,1172 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + + @File lnxwrp_resources.c + + @Description FMD wrapper resource allocation functions. + +*/ + +#include +#if defined(CONFIG_MODVERSIONS) && !defined(MODVERSIONS) +#define MODVERSIONS +#endif +#ifdef MODVERSIONS +#include +#endif /* MODVERSIONS */ +#include +#include +#include +#include + +#include "lnxwrp_resources.h" + +extern int fsl_fman_phy_maxfrm; /* MAC file */ + +static struct device_node *match_mac_to_dpaa_port(struct device_node + *enet_mac_node) +{ + struct device_node *dpaa_node = NULL; + struct device_node *dpaa_itf = NULL; + + /* find DPAA node starting from root */ + dpaa_node = of_find_compatible_node(NULL, NULL, "fsl,dpaa"); + if (dpaa_node) { + /* for all dpaa ports check which one refers this mac node. */ + for_each_child_of_node(dpaa_node, dpaa_itf) { + struct device_node *by_handle_enet_mac_node = NULL; + const phandle *phandle_prop = NULL; + int lenp = 0; + + phandle_prop = + (typeof(phandle_prop)) + of_get_property(dpaa_itf, "fsl,fman-mac", + &lenp); + if (phandle_prop == NULL) + continue; + + if (WARN_ON(lenp != sizeof(phandle))) + return NULL; + + by_handle_enet_mac_node = + of_find_node_by_phandle(*phandle_prop); + if (unlikely(by_handle_enet_mac_node == NULL)) + return NULL; + + /* check */ + if (by_handle_enet_mac_node == enet_mac_node) { + of_node_put(by_handle_enet_mac_node); + return dpaa_itf; + } + + of_node_put(by_handle_enet_mac_node); + } + of_node_put(dpaa_node); + } + + return NULL; +} + +static struct device_node *match_fman_port_to_mac(struct device_node *fm_node, + struct device_node + *fm_port_node) +{ + struct device_node *fm_node_idx = NULL; + + /* for all enet nodes (macs) check which one refers this FMan port. */ + for_each_child_of_node(fm_node, fm_node_idx) { + if (of_device_is_compatible(fm_node_idx, "fsl,fman-1g-mac") || + of_device_is_compatible(fm_node_idx, + "fsl,fman-10g-mac")) { + struct device_node *fman_port_node_rx = NULL; + struct device_node *fman_port_node_tx = NULL; + /* RX is first */ + fman_port_node_rx = of_parse_phandle(fm_node_idx, + "fsl,port-handles", 0); + if (unlikely(fman_port_node_rx == NULL)) + continue; + /* TX is second */ + fman_port_node_tx = of_parse_phandle(fm_node_idx, + "fsl,port-handles", 1); + if (unlikely(fman_port_node_tx == NULL)) { + of_node_put(fman_port_node_rx); + continue; + } + + /* check */ + if (fman_port_node_rx == fm_port_node + || fman_port_node_tx == fm_port_node) { + of_node_put(fman_port_node_rx); + of_node_put(fman_port_node_tx); + return fm_node_idx; + } + + of_node_put(fman_port_node_rx); + of_node_put(fman_port_node_tx); + } + } + + return NULL; +} + +static bool is_fman_port_active(struct device_node *fm_node, + struct device_node *fm_port_node) +{ + struct device_node *enet_mac_node = NULL; + struct device_node *itf_node = NULL; + + /* Which MAC node refers to this FMan port. */ + enet_mac_node = match_fman_port_to_mac(fm_node, fm_port_node); + + if (unlikely(enet_mac_node == NULL)) + return false; + + /* Which dpaa port node refers this MAC node. */ + itf_node = match_mac_to_dpaa_port(enet_mac_node); + of_node_put(enet_mac_node); + + if (unlikely(!itf_node)) + return false; + + /* check if itf (DPAA ports) is available. + * if available, means that the FMan port is + * also available - return true + */ + if (!of_device_is_available(itf_node)) { + of_node_put(itf_node); + return false; + } + of_node_put(itf_node); + + return true; +} + +int fm_set_active_fman_ports(struct platform_device *of_dev, + t_LnxWrpFmDev *p_LnxWrpFmDev) +{ + struct device_node *fm_node = NULL; + struct device_node *fm_port_node = NULL; + + memset(&p_LnxWrpFmDev->fm_active_ports_info, 0, + sizeof(struct fm_active_ports)); + + /* get FMan node */ + fm_node = of_dev->dev.of_node; + + /* for all ports which belong to this FMan, check if they are active. + * If active, set their parameters. */ + for_each_child_of_node(fm_node, fm_port_node) { + + /* OH FMan ports */ + if (of_device_is_compatible(fm_port_node, + "fsl,fman-port-oh")) + /* all oh ports are active */ + p_LnxWrpFmDev->fm_active_ports_info.num_oh_ports++; + + if (!is_fman_port_active(fm_node, fm_port_node)) + continue; + + /* 10g TX FMan ports */ + if (of_device_is_compatible(fm_port_node, + "fsl,fman-port-10g-tx")) + p_LnxWrpFmDev->fm_active_ports_info.num_tx10_ports++; + + /* 10g RX FMan ports */ + else if (of_device_is_compatible(fm_port_node, + "fsl,fman-port-10g-rx")) + p_LnxWrpFmDev->fm_active_ports_info.num_rx10_ports++; + + /* 1G TX FMan ports */ + else if (of_device_is_compatible(fm_port_node, + "fsl,fman-port-1g-tx")) + p_LnxWrpFmDev->fm_active_ports_info.num_tx_ports++; + + /* 1G RX FMan ports */ + else if (of_device_is_compatible(fm_port_node, + "fsl,fman-port-1g-rx")) + p_LnxWrpFmDev->fm_active_ports_info.num_rx_ports++; + } + + /* If performance is needed no oh port is probed + * except the one used for host command. */ +#if defined(CONFIG_FMAN_DISABLE_OH_TO_REUSE_RESOURCES) + if (p_LnxWrpFmDev->fm_active_ports_info.num_oh_ports) + p_LnxWrpFmDev->fm_active_ports_info.num_oh_ports = 1; + + printk(KERN_WARNING "FMAN(%u)-Performance mode - no OH support...\n", + p_LnxWrpFmDev->id); +#endif + + return 0; +} + +#ifdef FM_FIFO_ALLOCATION_OLD_ALG +/* BPOOL size is constant and equal w/ DPA_BP_SIZE */ +static uint32_t get_largest_buf_size(uint32_t max_rx_frame_size, uint32_t buf_size) +{ + uint32_t priv_data_size = 16; /* DPA_PRIV_DATA_SIZE */ + uint32_t hash_results_size = 16; /* DPA_HASH_RESULTS_SIZE */ + uint32_t parse_results_size = + sizeof(t_FmPrsResult); /* DPA_PARSE_RESULTS_SIZE */ + uint32_t bp_head = priv_data_size + hash_results_size + + parse_results_size; /* DPA_BP_HEAD */ + uint32_t bp_size = bp_head + max_rx_frame_size + + NET_IP_ALIGN; /* DPA_BP_SIZE */ + + return CEIL_DIV(bp_size, buf_size); +} +#endif + +/* Calculate the fifosize based on MURAM allocation, number of ports, dpde + value and s/g software support (! Kernel does not suport s/g). + + Algorithm summary: + - Calculate the the minimum fifosize required for every type of port + (TX,RX for 1G, 2.5G and 10G). + - Set TX the minimum fifosize required. + - Distribute the remaining buffers (after all TX were set) to RX ports + based on: + 1G RX = Remaining_buffers * 1/(1+2.5+10) + 2.5G RX = Remaining_buffers * 2.5/(1+2.5+10) + 10G RX = Remaining_buffers * 10/(1+2.5+10) + - if the RX is smaller than the minimum required, then set the minimum + required + - In the end distribuite the leftovers if there are any (due to + unprecise calculus) or if over allocation cat some buffers from all RX + ports w/o pass over minimum required treshold, but if there must be + pass the treshold in order to cat the over allocation ,then this + configuration can not be set - KERN_ALERT. +*/ +int fm_precalculate_fifosizes(t_LnxWrpFmDev *p_LnxWrpFmDev, int muram_fifo_size) +{ + + /* input parameters */ + struct fm_active_ports *fm_active_ports_info = NULL; + int num_1g_ports = 0; + int num_2g5_ports = 0; + int num_10g_ports = 0; + int num_oh_ports = 0; + + /* output parameters */ + struct fm_resource_settings *fm_resource_settings_info = NULL; + int oh_buff = 0; + int tx_1g_bufs = 0, rx_1g_bufs = 0; + int tx_2g5_bufs = 0, rx_2g5_bufs = 0; + int tx_10g_bufs = 0, rx_10g_bufs = 0; + int err = 0; + + /* throughput parameters: divide it by 10 when used */ + int gb1g = 10, gb2g5 = 25, gb10g = 100, gb_sum = 0; + + /* buffers parameters */ + int buf_size = 0x100; /* Buffer unit size */ + int total_no_buffers = 0; /* Calculus based on MURAM size for + fifos and buf. unit size */ + + int shared_ext_buff = 0; /* External buffers allocated - LLD + boundaries:DEFAULT_PORT_extraSizeOfFifo */ + + int min_tx_1g_2g5_bufs = 0; /* minimum TX1g buffers required + (see refman.) */ + int min_tx_10g_bufs = 0; /* minimum TX10g buffers required + (see refman.) */ + int min_rx_bufs = 0; /* minimum RX buffers required (see refman.) */ + + /* Buffer sizes calculus */ + int max_frame_size = + fsl_fman_phy_maxfrm ? fsl_fman_phy_maxfrm : + CONFIG_DPA_MAX_FRM_SIZE; + int remaining_bufs = 0; + int rx_1g_bufs_ceil = 0, rx_2g5_bufs_ceil = 0, rx_10g_bufs_ceil = 0; + int rx_2g5_max_bufs = 0, rx_10g_max_bufs = 0; + int rx_1g_used = 0, rx_1g_2g5_used = 0, rx_1g_10g_used =0, + rx_2g5_used = 0, rx_2g5_10g_used = 0, rx_1g_2g5_10g_used = 0; + + /* overflow checking */ + int tot_rx_buffs, tot_tx_buffs, tot_oh_buffs, tot_used_buffs, + leftovers = 0; + int overflow = 0; + bool loop = false; + + /* check input parameters correctness */ + ASSERT_COND(p_LnxWrpFmDev != NULL); + fm_active_ports_info = &p_LnxWrpFmDev->fm_active_ports_info; + fm_resource_settings_info = &p_LnxWrpFmDev->fm_resource_settings_info; + ASSERT_COND(fm_active_ports_info != NULL); + ASSERT_COND(fm_resource_settings_info != NULL); + ASSERT_COND(fm_active_ports_info->num_tx_ports == + fm_active_ports_info->num_rx_ports); + ASSERT_COND(fm_active_ports_info->num_tx25_ports == + fm_active_ports_info->num_tx25_ports); + ASSERT_COND(fm_active_ports_info->num_tx10_ports == + fm_active_ports_info->num_tx10_ports); + ASSERT_COND(max_frame_size != 0); + ASSERT_COND(muram_fifo_size != 0); + + /* set input parameters */ + num_1g_ports = fm_active_ports_info->num_tx_ports; + num_2g5_ports = fm_active_ports_info->num_tx25_ports; + num_10g_ports = fm_active_ports_info->num_tx10_ports; + num_oh_ports = fm_active_ports_info->num_oh_ports; + + /* throughput calculus */ + gb_sum = gb1g * num_1g_ports + gb2g5 * num_2g5_ports + + gb10g * num_10g_ports; /* divide it by 10 */ + + /* Base buffer calculus */ + oh_buff = DPDE_1G + 4; /* should be: + get_largest_buf_size(max_frame_size, buf_size), + but LLD: DPDE + 4 */ + total_no_buffers = muram_fifo_size / buf_size; + + min_tx_1g_2g5_bufs = CEIL_DIV(max_frame_size, buf_size) + + DPDE_1G + 3 + 1; /* +1 to handle Jumbo Frames */ + min_tx_10g_bufs = CEIL_DIV(max_frame_size, buf_size) + + DPDE_10G + 3 + 1; /* +1 to handle Jumbo Frames */ + + { +#ifdef FM_FIFO_ALLOCATION_OLD_ALG + uint8_t fm_rev_major = 0; + fm_rev_major = + (uint8_t) ((* + ((volatile uint32_t *) + UINT_TO_PTR(p_LnxWrpFmDev->fmBaseAddr + + 0x000c30c4)) & 0xff00) >> 8); + + if (fm_rev_major < 4) + min_rx_bufs = + get_largest_buf_size(max_frame_size, + buf_size) + 7; + else +#endif + min_rx_bufs = 8; + } + + shared_ext_buff = num_10g_ports ? 32 : 16; /* LLD boundaries: + DEFAULT_PORT_extraSizeOfFifo */ + + /* TX ports will have minimum required buffers + Calculus of the remaining buffers for all RX ports */ + tx_1g_bufs = num_1g_ports ? min_tx_1g_2g5_bufs : 0; + tx_2g5_bufs = num_2g5_ports ? min_tx_1g_2g5_bufs : 0; + tx_10g_bufs = num_10g_ports ? min_tx_10g_bufs : 0; + + remaining_bufs = total_no_buffers - + oh_buff * num_oh_ports - + num_1g_ports * min_tx_1g_2g5_bufs - + num_2g5_ports * min_tx_1g_2g5_bufs - + num_10g_ports * min_tx_10g_bufs - shared_ext_buff; + + if (remaining_bufs < 0) { + printk(KERN_ALERT + "This configuration will not work due to low number of" + " buffers (%u buffers)...\n", + total_no_buffers); + err = -1; + goto precalculated_fifosize_out; + } + + /* Per port buffer size calculus + . for TX ports give always minimum required + . for RX ports give whatever left scaled per port type */ + /* ------------------------------------------------------- */ + if (num_1g_ports) { + rx_1g_bufs_ceil = + (gb_sum / + 10) ? CEIL_DIV(((remaining_bufs * gb1g) / 10), + (gb_sum / 10)) : 0; + rx_1g_bufs = MAX(min_rx_bufs, rx_1g_bufs_ceil); + rx_1g_used = rx_1g_bufs - rx_1g_bufs_ceil; /* always >= 0 */ + /* distribute to 2.5g and 10g ports */ + rx_1g_2g5_used = + (num_2g5_ports + + num_10g_ports) ? CEIL_DIV(rx_1g_used * num_1g_ports * + num_2g5_ports, + num_2g5_ports + + num_10g_ports) : 0; + rx_1g_10g_used = + (num_2g5_ports + + num_10g_ports) ? CEIL_DIV(rx_1g_used * num_1g_ports * + num_10g_ports, + num_2g5_ports + + num_10g_ports) : 0; + } + + if (num_2g5_ports) { + rx_2g5_bufs_ceil = + (gb_sum / + 10) ? CEIL_DIV(((remaining_bufs * gb2g5) / 10), + (gb_sum / 10)) : 0; + rx_2g5_max_bufs = MAX(min_rx_bufs, rx_2g5_bufs_ceil); + rx_2g5_bufs = + MAX(min_rx_bufs, rx_2g5_max_bufs - rx_1g_2g5_used); + rx_2g5_used = rx_2g5_bufs - rx_2g5_bufs_ceil; /* always >= 0 */ + /* distribute to 10g ports */ + rx_2g5_10g_used = + num_10g_ports ? CEIL_DIV(rx_2g5_used * num_2g5_ports, + num_10g_ports) : 0; + } + + if (num_10g_ports) { + rx_10g_bufs_ceil = + (gb_sum / + 10) ? CEIL_DIV(((remaining_bufs * gb10g) / 10), + (gb_sum / 10)) : 0; + rx_10g_max_bufs = MAX(min_rx_bufs, rx_10g_bufs_ceil); + /* keep count of all distribution */ + rx_1g_2g5_10g_used = rx_1g_10g_used + rx_2g5_10g_used; + rx_10g_bufs = + MAX(min_rx_bufs, + rx_10g_max_bufs - rx_1g_2g5_10g_used); + } + + /* overflow-leftover calculus */ + tot_rx_buffs = rx_1g_bufs * num_1g_ports + + rx_2g5_bufs * num_2g5_ports + rx_10g_bufs * num_10g_ports; + tot_tx_buffs = tx_1g_bufs * num_1g_ports + + tx_2g5_bufs * num_2g5_ports + tx_10g_bufs * num_10g_ports; + tot_oh_buffs = oh_buff * num_oh_ports; + tot_used_buffs = + tot_oh_buffs + tot_tx_buffs + tot_rx_buffs + shared_ext_buff; + + overflow = tot_used_buffs - total_no_buffers; + /* used more than available */ + if (overflow > 0) { + loop = true; + while (overflow > 0 && loop) { + loop = false; + if (overflow && num_10g_ports + && rx_10g_bufs > min_rx_bufs) { + rx_10g_bufs--; + overflow -= num_10g_ports; + loop = true; + } + if (overflow && num_2g5_ports + && rx_2g5_bufs > min_rx_bufs) { + rx_2g5_bufs--; + overflow -= num_2g5_ports; + loop = true; + } + if (overflow && num_1g_ports + && rx_1g_bufs > min_rx_bufs) { + rx_1g_bufs--; + overflow -= num_1g_ports; + loop = true; + } + } + + if (overflow > 0) { + printk(KERN_ALERT + "This configuration will not work due to over" + " buffer allocation (%d buffers)...\n", + overflow); + err = -1; + goto precalculated_fifosize_out; + } + } + /* left a few buffers */ + else if (overflow < 0) { + leftovers = total_no_buffers - tot_used_buffs; + loop = true; + while (leftovers > 0 && loop) { + loop = false; + if (leftovers && num_1g_ports) { + rx_1g_bufs++; + leftovers -= num_1g_ports; + loop = true; + } + + if (leftovers && num_2g5_ports) { + rx_2g5_bufs++; + leftovers -= num_2g5_ports; + loop = true; + } + + if (leftovers && num_10g_ports) { + rx_10g_bufs++; + leftovers -= num_10g_ports; + loop = true; + } + } + } + + /* set fifosizes for this FMan ports */ + fm_resource_settings_info->tx1g_num_buffers = tx_1g_bufs; + fm_resource_settings_info->rx1g_num_buffers = rx_1g_bufs; + fm_resource_settings_info->tx2g5_num_buffers = tx_2g5_bufs; + fm_resource_settings_info->rx2g5_num_buffers = rx_2g5_bufs; + fm_resource_settings_info->tx10g_num_buffers = tx_10g_bufs; + fm_resource_settings_info->rx10g_num_buffers = rx_10g_bufs; + fm_resource_settings_info->oh_num_buffers = oh_buff; + fm_resource_settings_info->shared_ext_buffers = shared_ext_buff; + +precalculated_fifosize_out: + printk(KERN_INFO " FMAN(%u) Fifo size settings:\n", + p_LnxWrpFmDev->id); + printk(KERN_INFO " - Total buffers available(%u - 256B/buffer)\n", + total_no_buffers); + printk(KERN_INFO " - Total throughput(%uGbps)\n", (gb_sum / 10)); + printk(KERN_INFO " - Max frame size(%uB)\n", max_frame_size); + if (num_1g_ports) { + printk(KERN_INFO + " - 1G ports TX %u(%u bufs set (min: %u))\n", + num_1g_ports, tx_1g_bufs, min_tx_1g_2g5_bufs); + printk(KERN_INFO + " - 1G ports RX %u(%u bufs set (min: %u))\n", + num_1g_ports, rx_1g_bufs, min_rx_bufs); + } + if (num_2g5_ports) { + printk(KERN_INFO + " - 2.5G ports TX %u(%u bufs set (min: %u))\n", + num_2g5_ports, tx_2g5_bufs, min_tx_1g_2g5_bufs); + printk(KERN_INFO + " - 2.5G ports RX %u(%u bufs set (min: %u))\n", + num_2g5_ports, rx_2g5_bufs, min_rx_bufs); + } + if (num_10g_ports) { + printk(KERN_INFO + " - 10G ports TX %u(%u bufs set (min: %u))\n", + num_10g_ports, tx_10g_bufs, min_tx_10g_bufs); + printk(KERN_INFO + " - 10G ports RX %u(%u bufs set (min: %u))\n", + num_10g_ports, rx_10g_bufs, min_rx_bufs); + } + if (num_oh_ports) + printk(KERN_INFO " - OH-HC ports %u(%u)\n", num_oh_ports, + oh_buff); + printk(KERN_INFO " - Shared extra buffers(%u)\n", shared_ext_buff); + + return err; +} + +int fm_set_precalculate_fifosize(t_LnxWrpFmPortDev *p_LnxWrpFmPortDev) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = + (t_LnxWrpFmDev *) p_LnxWrpFmPortDev->h_LnxWrpFmDev; + struct fm_resource_settings *fm_resource_settings_info = NULL; + struct fm_active_ports *fm_active_ports_info = NULL; + t_FmPortRsrc portRsrc; + t_Error errCode; + uint32_t buf_size = 0x100; + + ASSERT_COND(p_LnxWrpFmDev != NULL); + fm_resource_settings_info = &p_LnxWrpFmDev->fm_resource_settings_info; + fm_active_ports_info = &p_LnxWrpFmDev->fm_active_ports_info; + + memset(&portRsrc, 0, sizeof(t_FmPortRsrc)); + +/* IF 1G PORT */ + if (p_LnxWrpFmPortDev->settings.param.portType == e_FM_PORT_TYPE_TX) { + portRsrc.num = + fm_resource_settings_info->tx1g_num_buffers * buf_size; + portRsrc.extra = 0; + } else if (p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_RX) { + portRsrc.num = + fm_resource_settings_info->rx1g_num_buffers * buf_size; + portRsrc.extra = + fm_resource_settings_info->shared_ext_buffers * + buf_size; + } +/* IF 2.5G PORT */ + /* TODO: Not supported by LLD yet. */ + +/* IF 10G PORT */ + else if (p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_TX_10G) { + portRsrc.num = + fm_resource_settings_info->tx10g_num_buffers * + buf_size; + portRsrc.extra = 0; + } else if (p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_RX_10G) { + portRsrc.num = + fm_resource_settings_info->rx10g_num_buffers * + buf_size; + portRsrc.extra = + fm_resource_settings_info->shared_ext_buffers * + buf_size; + } else { /* IF OH PORT */ + portRsrc.num = + fm_resource_settings_info->oh_num_buffers * buf_size; + portRsrc.extra = 0; + } + + errCode = FM_PORT_SetSizeOfFifo(p_LnxWrpFmPortDev->h_Dev, &portRsrc); + if (errCode != E_OK) { + printk(KERN_WARNING + "FM_PORT_SetSizeOfFifo failed (errCode:0x%2x)", + errCode); + return -EIO; + } + + return 0; +} + +/* Compute FMan open DMA based on total number of open DMAs and + * number of available FMan ports. + * + * By default 10g ports are set to input parameters. The other ports + * tries to keep the proportion rx=2tx open DMAs or thresholds. + * + * If leftovers, then those will be set as shared. + * + * If after computing overflow appears, then it decrements open DMA + * for all ports w/o cross the thresholds. If the thresholds are meet + * and is still overflow, then it returns error. + */ +int fm_precalculate_open_dma(t_LnxWrpFmDev *p_LnxWrpFmDev, + int max_fm_open_dma, + int default_tx_10g_dmas, + int default_rx_10g_dmas, + int min_tx_10g_treshold, int min_rx_10g_treshold) +{ + /* input parameters */ + struct fm_active_ports *fm_active_ports_info = NULL; + int num_1g_ports = 0; + int num_2g5_ports = 0; + int num_10g_ports = 0; + int num_oh_ports = 0; + + /* output parameters */ + struct fm_resource_settings *fm_resource_settings_info = NULL; + int tx_1g_dmas = 0, rx_1g_dmas = 0; + int tx_2g5_dmas = 0, rx_2g5_dmas = 0; + int tx_10g_dmas = 0, rx_10g_dmas = 0; + int oh_dmas = 0; + int shared_ext_open_dma = 0; + int err = 0; + + /* open dma calculus */ + int remaing_dmas = 0; + int rx_tx_raport = + FM_OPENDMA_RX_TX_RAPORT; /* RX = FM_OPENDMA_RX_TX_RAPORT *TX */ + int min_tx_1_2g5_treshold = 1; + int min_rx_1_2g5_treshold = 1; + int max_open_dma_treshold = 16; /* LLD: MAX_NUM_OF_DMAS */ + int max_ext_open_dma_treshold = 8; /* LLD: MAX_NUM_OF_EXTRA_DMAS */ + + int open_dmas_computed = 0; + int weighted_remaining_ports = 0; + int overflow = 0; + bool re_loop = false; + + /* check input parameters correctness */ + ASSERT_COND(p_LnxWrpFmDev != NULL); + fm_active_ports_info = &p_LnxWrpFmDev->fm_active_ports_info; + fm_resource_settings_info = &p_LnxWrpFmDev->fm_resource_settings_info; + ASSERT_COND(fm_active_ports_info != NULL); + ASSERT_COND(fm_resource_settings_info != NULL); + ASSERT_COND(fm_active_ports_info->num_tx_ports == + fm_active_ports_info->num_rx_ports); + ASSERT_COND(fm_active_ports_info->num_tx25_ports == + fm_active_ports_info->num_tx25_ports); + ASSERT_COND(fm_active_ports_info->num_tx10_ports == + fm_active_ports_info->num_tx10_ports); + ASSERT_COND(min_tx_10g_treshold <= max_open_dma_treshold); + ASSERT_COND(min_tx_10g_treshold <= max_open_dma_treshold); + + /* set input parameters */ + num_1g_ports = fm_active_ports_info->num_tx_ports; + num_2g5_ports = fm_active_ports_info->num_tx25_ports; + num_10g_ports = fm_active_ports_info->num_tx10_ports; + num_oh_ports = fm_active_ports_info->num_oh_ports; + + /* compute open DMAs per port */ + /* ------------------------------------------------------- */ + if (num_10g_ports) { + tx_10g_dmas = default_tx_10g_dmas; /* per 10G TX port */ + rx_10g_dmas = default_rx_10g_dmas; /* per 10G RX port */ + } + if (num_oh_ports) + oh_dmas = 1; /* per OH port */ + + /* should this be null? or LLD: + DEFAULT_PORT_extraNumOfOpenDmas:10g-8,else 1 */ + shared_ext_open_dma = 0; + + /* based on total number of ports set open DMAs for all other ports */ + remaing_dmas = max_fm_open_dma - + (oh_dmas * num_oh_ports) - + (tx_10g_dmas * num_10g_ports + rx_10g_dmas * num_10g_ports) - + shared_ext_open_dma; + + if (remaing_dmas < 0) { + printk(KERN_ALERT + "This configuration will not work due to low number" + " of open dmas (%u open dmas)...\n", + max_fm_open_dma); + err = -1; + goto precalculated_open_dma_out; + } + + weighted_remaining_ports = + /*tx */ num_1g_ports * rx_tx_raport + /*rx */ num_1g_ports + + /*tx */ num_2g5_ports * rx_tx_raport + /*rx */ num_2g5_ports; + + /* compute the other ports */ + if (num_1g_ports) { + tx_1g_dmas = + MAX(MIN + (ROUND_DIV + (remaing_dmas, weighted_remaining_ports), + max_open_dma_treshold), min_tx_1_2g5_treshold); + rx_1g_dmas = + MAX(MIN + (ROUND_DIV + ((remaing_dmas * rx_tx_raport), + weighted_remaining_ports), + max_open_dma_treshold), min_rx_1_2g5_treshold); + } + if (num_2g5_ports) { + tx_2g5_dmas = + MAX(MIN + (CEIL_DIV(remaing_dmas, weighted_remaining_ports), + max_open_dma_treshold), min_tx_1_2g5_treshold); + rx_2g5_dmas = + MAX(MIN + (CEIL_DIV + ((remaing_dmas * rx_tx_raport), + weighted_remaining_ports), + max_open_dma_treshold), min_rx_1_2g5_treshold); + + } + + /* Check if these settings is not exceding treshold */ + open_dmas_computed = num_1g_ports * tx_1g_dmas + + num_1g_ports * rx_1g_dmas + + num_2g5_ports * tx_2g5_dmas + + num_2g5_ports * rx_2g5_dmas + + num_10g_ports * tx_10g_dmas + + num_10g_ports * rx_10g_dmas + + num_oh_ports * oh_dmas + shared_ext_open_dma; + + /* overflow-leftover calculus */ + overflow = open_dmas_computed - max_fm_open_dma; + re_loop = true; + while (overflow > 0 && re_loop == true) { + re_loop = false; + if (num_1g_ports && overflow + && rx_1g_dmas > min_rx_1_2g5_treshold) { + rx_1g_dmas--; + overflow -= num_1g_ports; + re_loop = true; + } + if (num_2g5_ports && overflow + && rx_2g5_dmas > min_rx_1_2g5_treshold) { + rx_2g5_dmas--; + overflow -= num_2g5_ports; + re_loop = true; + } + if (num_10g_ports && overflow + && rx_10g_dmas > min_rx_10g_treshold) { + rx_10g_dmas--; + overflow -= num_10g_ports; + re_loop = true; + } + + if (num_1g_ports && overflow + && tx_1g_dmas > min_tx_1_2g5_treshold) { + tx_1g_dmas--; + overflow -= num_1g_ports; + re_loop = true; + } + if (num_2g5_ports && overflow + && tx_2g5_dmas > min_tx_1_2g5_treshold) { + tx_2g5_dmas--; + overflow -= num_2g5_ports; + re_loop = true; + } + if (num_10g_ports && overflow + && tx_10g_dmas > min_tx_10g_treshold) { + tx_10g_dmas--; + overflow -= num_10g_ports; + re_loop = true; + } + } + + if (overflow > 0) { + printk(KERN_ALERT + "This configuration will not work due to over open dma" + " allocation (%d open dmas)...\n", + overflow); + err = -1; + goto precalculated_open_dma_out; + } + + /* could remain leftovers... e.g. overflow=1, + 2ports => leftover=1 => shared=1 */ + open_dmas_computed = num_1g_ports * tx_1g_dmas + + num_1g_ports * rx_1g_dmas + + num_2g5_ports * tx_2g5_dmas + + num_2g5_ports * rx_2g5_dmas + + num_10g_ports * tx_10g_dmas + + num_10g_ports * rx_10g_dmas + + num_oh_ports * oh_dmas + shared_ext_open_dma; + + if (max_fm_open_dma - open_dmas_computed > 0) + shared_ext_open_dma = + MIN(shared_ext_open_dma + max_fm_open_dma - + open_dmas_computed, max_ext_open_dma_treshold); + + /* set open dmas */ + fm_resource_settings_info->tx_1g_dmas = tx_1g_dmas; + fm_resource_settings_info->rx_1g_dmas = rx_1g_dmas; + fm_resource_settings_info->tx_2g5_dmas = tx_2g5_dmas; + fm_resource_settings_info->rx_2g5_dmas = rx_2g5_dmas; + fm_resource_settings_info->tx_10g_dmas = tx_10g_dmas; + fm_resource_settings_info->rx_10g_dmas = rx_10g_dmas; + fm_resource_settings_info->oh_dmas = oh_dmas; + fm_resource_settings_info->shared_ext_open_dma = shared_ext_open_dma; + +precalculated_open_dma_out: + printk(KERN_INFO " FMAN(%u) open dma settings:\n", + p_LnxWrpFmDev->id); + printk(KERN_INFO " - Total open dma available(%u)\n", + max_fm_open_dma); + if (num_1g_ports) { + printk(KERN_INFO " - 1G ports TX %u(%u)\n", num_1g_ports, + tx_1g_dmas); + printk(KERN_INFO " - 1G ports RX %u(%u)\n", num_1g_ports, + rx_1g_dmas); + } + if (num_2g5_ports) { + printk(KERN_INFO " - 2.5G ports TX %u(%u)\n", num_2g5_ports, + tx_2g5_dmas); + printk(KERN_INFO " - 2.5G ports RX %u(%u)\n", num_2g5_ports, + tx_2g5_dmas); + } + if (num_10g_ports) { + printk(KERN_INFO " - 10G ports TX %u(%u)\n", num_10g_ports, + tx_10g_dmas); + printk(KERN_INFO " - 10G ports RX %u(%u)\n", num_10g_ports, + rx_10g_dmas); + } + if (num_oh_ports) + printk(KERN_INFO " - OH-HC ports %u(%u)\n", num_oh_ports, + oh_dmas); + printk(KERN_INFO " - Shared extra open dma(%u)\n", + shared_ext_open_dma ? shared_ext_open_dma : 0); + + return err; +} + +int fm_set_precalculate_open_dma(t_LnxWrpFmPortDev *p_LnxWrpFmPortDev) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = + (t_LnxWrpFmDev *) p_LnxWrpFmPortDev->h_LnxWrpFmDev; + struct fm_resource_settings *fm_resource_settings_info = NULL; + t_FmPortRsrc numOfOpenDmas; + t_Error errCode; + + ASSERT_COND(p_LnxWrpFmDev != NULL); + fm_resource_settings_info = &p_LnxWrpFmDev->fm_resource_settings_info; + + memset(&numOfOpenDmas, 0, sizeof(t_FmPortRsrc)); + +/* IF 1G PORT */ + if (p_LnxWrpFmPortDev->settings.param.portType == e_FM_PORT_TYPE_TX) + numOfOpenDmas.num = fm_resource_settings_info->tx_1g_dmas; + else if (p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_RX) + numOfOpenDmas.num = fm_resource_settings_info->rx_1g_dmas; +/* IF 2.5G PORT*/ + /* TODO: Not supported by LLD yet. */ + +/* IF 10G PORT */ + else if (p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_TX_10G) + numOfOpenDmas.num = fm_resource_settings_info->tx_10g_dmas; + else if (p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_RX_10G) + numOfOpenDmas.num = fm_resource_settings_info->rx_10g_dmas; +/* IF OH PORT */ + else + numOfOpenDmas.num = fm_resource_settings_info->oh_dmas; + + numOfOpenDmas.extra = fm_resource_settings_info->shared_ext_open_dma; + + errCode = FM_PORT_SetNumOfOpenDmas(p_LnxWrpFmPortDev->h_Dev, + &numOfOpenDmas); + if (errCode != E_OK) { + printk(KERN_WARNING + "FM_PORT_SetNumOfOpenDmas failed (errCode:0x%2x)", + errCode); + return -EIO; + } + + return 0; +} + +/* Compute FMan tnums based on available tnums and number of ports. + Set defaults (minim tresholds) and then distribute leftovers.*/ +int fm_precalculate_tnums(t_LnxWrpFmDev *p_LnxWrpFmDev, int max_fm_tnums) +{ + /* input parameters */ + struct fm_active_ports *fm_active_ports_info = NULL; + int num_1g_ports = 0; + int num_2g5_ports = 0; + int num_10g_ports = 0; + int num_oh_ports = 0; + + /* output parameters */ + struct fm_resource_settings *fm_resource_settings_info = NULL; + int tx_1g_tnums = 0, rx_1g_tnums = 0; + int tx_2g5_tnums = 0, rx_2g5_tnums = 0; + int tx_10g_tnums = 0, rx_10g_tnums = 0; + int oh_tnums = 0; + int shared_ext_tnums = 0; + int err = 0; + + /* open dma calculus */ + int default_and_treshold_rx_tx_10g_tnums = 16; /* DPDE_10g */ + int default_and_treshold_rx_tx_1g_2g5_tnums = 4; /* DPDE_1g */ + int default_and_treshold_oh_tnums = 2; /* Hell knows why */ + int max_tnums_treshold = 64; /* LLD: MAX_NUM_OF_TASKS */ + int max_ext_tnums_treshold = 8; /* LLD: MAX_NUM_OF_EXTRA_TASKS */ + int remaing_tnums = 0; + int tnums_computed = 0; + int leftovers = 0; + bool re_loop = true; + + /* check input parameters correctness */ + ASSERT_COND(p_LnxWrpFmDev != NULL); + fm_active_ports_info = &p_LnxWrpFmDev->fm_active_ports_info; + fm_resource_settings_info = &p_LnxWrpFmDev->fm_resource_settings_info; + ASSERT_COND(fm_active_ports_info != NULL); + ASSERT_COND(fm_resource_settings_info != NULL); + ASSERT_COND(fm_active_ports_info->num_tx_ports == + fm_active_ports_info->num_rx_ports); + ASSERT_COND(fm_active_ports_info->num_tx25_ports == + fm_active_ports_info->num_tx25_ports); + ASSERT_COND(fm_active_ports_info->num_tx10_ports == + fm_active_ports_info->num_tx10_ports); + + /* set input parameters */ + num_1g_ports = fm_active_ports_info->num_tx_ports; + num_2g5_ports = fm_active_ports_info->num_tx25_ports; + num_10g_ports = fm_active_ports_info->num_tx10_ports; + num_oh_ports = fm_active_ports_info->num_oh_ports; + + /* compute FMan TNUMs per port */ + /* ------------------------------------------------------- */ + if (num_1g_ports) { + tx_1g_tnums = default_and_treshold_rx_tx_1g_2g5_tnums; + rx_1g_tnums = default_and_treshold_rx_tx_1g_2g5_tnums; + } + if (num_2g5_ports) { + tx_2g5_tnums = default_and_treshold_rx_tx_1g_2g5_tnums; + rx_2g5_tnums = default_and_treshold_rx_tx_1g_2g5_tnums; + } + if (num_10g_ports) { + tx_10g_tnums = default_and_treshold_rx_tx_10g_tnums; + rx_10g_tnums = default_and_treshold_rx_tx_10g_tnums; + } + if (num_oh_ports) + oh_tnums = default_and_treshold_oh_tnums; + + shared_ext_tnums = num_10g_ports ? + max_ext_tnums_treshold : 2; /* DEFAULT_PORT_extraNumOfTasks */ + + /* based on total number of ports set open DMAs for all other ports */ + remaing_tnums = max_fm_tnums - + (oh_tnums * num_oh_ports) - + (tx_1g_tnums * num_1g_ports + rx_1g_tnums * num_1g_ports) - + (tx_2g5_tnums * num_2g5_ports + rx_2g5_tnums * num_2g5_ports) - + (tx_10g_tnums * num_10g_ports + rx_10g_tnums * num_10g_ports) - + shared_ext_tnums; + + if (remaing_tnums < 0) { + printk(KERN_ALERT + "This configuration will not work due to low number" + " of tnums (%u tnums) and number of total ports" + " available...\n", + max_fm_tnums); + err = -1; + goto precalculated_tnums_out; + } + + leftovers = remaing_tnums; + re_loop = true; + while (leftovers > 0 && re_loop == true) { + re_loop = false; + if (num_10g_ports && (leftovers - (int) num_10g_ports) >= 0 + && (rx_10g_tnums < max_tnums_treshold)) { + rx_10g_tnums++; + leftovers -= num_10g_ports; + re_loop = true; + } + + if (num_10g_ports && (leftovers - (int) num_10g_ports) >= 0 + && (tx_10g_tnums < max_tnums_treshold)) { + tx_10g_tnums++; + leftovers -= num_10g_ports; + re_loop = true; + } + + if (num_2g5_ports && (leftovers - (int) num_2g5_ports) >= 0 + && (rx_2g5_tnums < max_tnums_treshold)) { + rx_2g5_tnums++; + leftovers -= num_2g5_ports; + re_loop = true; + } + + if (num_2g5_ports && (leftovers - (int) num_2g5_ports) >= 0 + && (tx_2g5_tnums < max_tnums_treshold)) { + tx_2g5_tnums++; + leftovers -= num_2g5_ports; + re_loop = true; + } + + if (num_1g_ports && (leftovers - (int) num_1g_ports) >= 0 + && (rx_1g_tnums < max_tnums_treshold)) { + rx_1g_tnums++; + leftovers -= num_1g_ports; + re_loop = true; + } + + if (num_1g_ports && (leftovers - (int) num_1g_ports) >= 0 + && (tx_1g_tnums < max_tnums_treshold)) { + tx_1g_tnums++; + leftovers -= num_1g_ports; + re_loop = true; + } + } + + tnums_computed = + num_1g_ports * tx_1g_tnums + + num_1g_ports * rx_1g_tnums + + num_2g5_ports * tx_2g5_tnums + + num_2g5_ports * rx_2g5_tnums + + num_10g_ports * tx_10g_tnums + + num_10g_ports * rx_10g_tnums + + num_oh_ports * oh_tnums + + shared_ext_tnums; + + if (leftovers > 0) + shared_ext_tnums = + MIN(shared_ext_tnums + max_fm_tnums - tnums_computed, + max_ext_tnums_treshold); + + ASSERT_COND((oh_tnums * num_oh_ports) + + (tx_1g_tnums * num_1g_ports + rx_1g_tnums * num_1g_ports) + + (tx_2g5_tnums * num_2g5_ports + + rx_2g5_tnums * num_2g5_ports) + + (tx_10g_tnums * num_10g_ports + + rx_10g_tnums * num_10g_ports) + shared_ext_tnums <= + max_fm_tnums); + + /* set computed tnums */ + fm_resource_settings_info->tx_1g_tnums = tx_1g_tnums; + fm_resource_settings_info->rx_1g_tnums = rx_1g_tnums; + fm_resource_settings_info->tx_2g5_tnums = tx_2g5_tnums; + fm_resource_settings_info->rx_2g5_tnums = rx_2g5_tnums; + fm_resource_settings_info->tx_10g_tnums = tx_10g_tnums; + fm_resource_settings_info->rx_10g_tnums = rx_10g_tnums; + fm_resource_settings_info->oh_tnums = oh_tnums; + fm_resource_settings_info->shared_ext_tnums = shared_ext_tnums; + +precalculated_tnums_out: + printk(KERN_INFO " FMAN(%u) Tnums settings:\n", p_LnxWrpFmDev->id); + printk(KERN_INFO " - Total Tnums available(%u)\n", max_fm_tnums); + if (num_1g_ports) { + printk(KERN_INFO " - 1G ports TX %u(%u)\n", num_1g_ports, + tx_1g_tnums); + printk(KERN_INFO " - 1G ports RX %u(%u)\n", num_1g_ports, + rx_1g_tnums); + } + if (num_2g5_ports) { + printk(KERN_INFO " - 2.5G ports TX %u(%u)\n", num_2g5_ports, + tx_2g5_tnums); + printk(KERN_INFO " - 2.5G ports RX %u(%u)\n", num_2g5_ports, + rx_2g5_tnums); + } + if (num_10g_ports) { + printk(KERN_INFO " - 10G ports TX %u(%u)\n", num_10g_ports, + tx_10g_tnums); + printk(KERN_INFO " - 10G ports RX %u(%u)\n", num_10g_ports, + rx_10g_tnums); + } + if (num_oh_ports) + printk(KERN_INFO " - OH-HC ports %u(%u)\n", num_oh_ports, + oh_tnums); + printk(KERN_INFO " - Shared extra tnums(%u)\n", shared_ext_tnums); + + return err; +} + +int fm_set_precalculate_tnums(t_LnxWrpFmPortDev *p_LnxWrpFmPortDev) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = + (t_LnxWrpFmDev *) p_LnxWrpFmPortDev->h_LnxWrpFmDev; + struct fm_resource_settings *fm_resource_settings_info = NULL; + t_FmPortRsrc numOfTask; + t_Error errCode; + + ASSERT_COND(p_LnxWrpFmDev != NULL); + fm_resource_settings_info = &p_LnxWrpFmDev->fm_resource_settings_info; + + memset(&numOfTask, 0, sizeof(t_FmPortRsrc)); + +/* IF 1G PORT */ + if (p_LnxWrpFmPortDev->settings.param.portType == e_FM_PORT_TYPE_TX) + numOfTask.num = fm_resource_settings_info->tx_1g_tnums; + else if (p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_RX) + numOfTask.num = fm_resource_settings_info->rx_1g_tnums; +/* IF 2.5G PORT*/ + /* TODO: Not supported by LLD yet. */ + +/* IF 10G PORT */ + else if (p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_TX_10G) + numOfTask.num = fm_resource_settings_info->tx_10g_tnums; + else if (p_LnxWrpFmPortDev->settings.param.portType == + e_FM_PORT_TYPE_RX_10G) + numOfTask.num = fm_resource_settings_info->rx_10g_tnums; +/* IF OH PORT */ + else + numOfTask.num = fm_resource_settings_info->oh_dmas; + + numOfTask.extra = fm_resource_settings_info->shared_ext_tnums; + + errCode = FM_PORT_SetNumOfTasks(p_LnxWrpFmPortDev->h_Dev, &numOfTask); + if (errCode != E_OK) { + printk(KERN_WARNING + "FM_PORT_SetNumOfTasks failed (errCode:0x%2x)", + errCode); + return -EIO; + } + + return 0; +} --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_resources.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_resources.h @@ -0,0 +1,111 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + + @File lnxwrp_resources.h + + @Description FMD wrapper resource allocation functions. + +*/ + +#ifndef LNXWRP_RESOURCES_H_ +#define LNXWRP_RESOURCES_H_ + +#include "lnxwrp_fm.h" + +#define ROUND(X) ((2*(X)+1)/2) +#define CEIL(X) ((X)+1) +/* #define ROUND_DIV(X, Y) (((X)+(Y)/2)/(Y)) */ +#define ROUND_DIV(X, Y) ((2*(X)+(Y))/(2*(Y))) +#define CEIL_DIV(X, Y) (((X)+(Y)-1)/(Y)) + +/* used for resource calculus */ +#define DPDE_1G 2 /* DQDP 1g - from LLD: + DEFAULT_PORT_txFifoDeqPipelineDepth_1G */ +#define DPDE_10G 8 /* DQDP 10g - from LLD: + DEFAULT_PORT_txFifoDeqPipelineDepth_10G */ + +int fm_set_active_fman_ports(struct platform_device *of_dev, + t_LnxWrpFmDev *p_LnxWrpFmDev); + +/* Calculate the fifosize based on MURAM allocation, number of ports, dpde + * value and s/g software support (! Kernel does not suport s/g). + * + * Algorithm summary: + * - Calculate the the minimum fifosize required for every type of port + * (TX,RX for 1G, 2.5G and 10G). + * - Set TX the minimum fifosize required. + * - Distribute the remaining buffers (after all TX were set) to RX ports + * based on: + * 1G RX = Remaining_buffers * 1/(1+2.5+10) + * 2.5G RX = Remaining_buffers * 2.5/(1+2.5+10) + * 10G RX = Remaining_buffers * 10/(1+2.5+10) + * - if the RX is smaller than the minimum required, then set the minimum + * required + * - In the end distribuite the leftovers if there are any (due to + * unprecise calculus) or if over allocation cat some buffers from all RX + * ports w/o pass over minimum required treshold, but if there must be + * pass the treshold in order to cat the over allocation ,then this + * configuration can not be set - KERN_ALERT. +*/ +int fm_precalculate_fifosizes(t_LnxWrpFmDev *p_LnxWrpFmDev, + int muram_fifo_size); + +int fm_set_precalculate_fifosize(t_LnxWrpFmPortDev *p_LnxWrpFmPortDev); + +/* Compute FMan open DMA based on total number of open DMAs and + * number of available fman ports. + * + * By default 10g ports are set to input parameters. The other ports + * tries to keep the proportion rx=2tx open dmas or tresholds. + * + * If leftovers, then those will be set as shared. + * + * If after computing overflow appears, then it decrements open dma + * for all ports w/o cross the tresholds. If the tresholds are meet + * and is still overflow, then it returns error. +*/ +int fm_precalculate_open_dma(t_LnxWrpFmDev *p_LnxWrpFmDev, + int max_fm_open_dma, + int default_tx_10g_dmas, + int default_rx_10g_dmas, + int min_tx_10g_treshold, int min_rx_10g_treshold); + +int fm_set_precalculate_open_dma(t_LnxWrpFmPortDev *p_LnxWrpFmPortDev); + +/* Compute FMan tnums based on available tnums and number of ports. + * Set defaults (minim tresholds) and then distribute leftovers.*/ +int fm_precalculate_tnums(t_LnxWrpFmDev *p_LnxWrpFmDev, int max_fm_tnums); + +int fm_set_precalculate_tnums(t_LnxWrpFmPortDev *p_LnxWrpFmPortDev); + +#endif /* LNXWRP_RESOURCES_H_ */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_sysfs.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_sysfs.c @@ -0,0 +1,60 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + + @File lnxwrp_sysfs.c + + @Description FM wrapper sysfs related functions. + +*/ + +#include +#include "lnxwrp_sysfs.h" + +uint8_t fm_find_statistic_counter_by_name(const char *attr_name, + struct SysfsStats_t *sysfs_stats, + uint8_t *offset) +{ + int i = 0; + + while (sysfs_stats[i].statisticName != NULL) { + if (strcmp(sysfs_stats[i].statisticName, attr_name) == 0) { + if (offset != NULL) + *offset = i; + return sysfs_stats[i].statisticCounter; + } + + i++; + } + WARN(1, "FMD: Should never get here!"); + return 0; +} --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_sysfs.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_sysfs.h @@ -0,0 +1,67 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + + @File lnxwrp_sysfs.h + + @Description FM sysfs functions. + +*/ + +#ifndef LNXWRP_SYSFS_H_ +#define LNXWRP_SYSFS_H_ + +/* Linux Headers ------------------- */ +#include + +#if defined(CONFIG_MODVERSIONS) && !defined(MODVERSIONS) +#define MODVERSIONS +#endif +#ifdef MODVERSIONS +#include +#endif /* MODVERSIONS */ + +#include +#include +#include +#include + +struct SysfsStats_t { + const char *statisticName; + uint8_t statisticCounter; +}; + +uint8_t fm_find_statistic_counter_by_name(const char *attr_name, + struct SysfsStats_t *sysfs_stats, + uint8_t *offset); + +#endif /* LNXWRP_SYSFS_H_ */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_sysfs_fm.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_sysfs_fm.c @@ -0,0 +1,575 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + + @File lnxwrp_sysfs_fm.c + + @Description FM sysfs related functions. + +*/ + +#include "lnxwrp_sysfs.h" +#include "lnxwrp_fm.h" + +enum e_FmDmaMatchStatistics { + e_FM_DMA_COUNTERS_CMQ_NOT_EMPTY, + e_FM_DMA_COUNTERS_BUS_ERROR, + e_FM_DMA_COUNTERS_READ_BUF_ECC_ERROR, + e_FM_DMA_COUNTERS_WRITE_BUF_ECC_SYS_ERROR, + e_FM_DMA_COUNTERS_WRITE_BUF_ECC_FM_ERROR +}; + +static const struct SysfsStats_t fmSysfsStats[] = { + /* FM statistics */ + { + .statisticName = "enq_total_frame", + .statisticCounter = e_FM_COUNTERS_ENQ_TOTAL_FRAME, + }, + { + .statisticName = "deq_total_frame", + .statisticCounter = e_FM_COUNTERS_DEQ_TOTAL_FRAME, + }, + { + .statisticName = "deq_0", + .statisticCounter = e_FM_COUNTERS_DEQ_0, + }, + { + .statisticName = "deq_1", + .statisticCounter = e_FM_COUNTERS_DEQ_1, + }, + { + .statisticName = "deq_2", + .statisticCounter = e_FM_COUNTERS_DEQ_2, + }, + { + .statisticName = "deq_from_default", + .statisticCounter = e_FM_COUNTERS_DEQ_FROM_DEFAULT, + }, + { + .statisticName = "deq_from_context", + .statisticCounter = e_FM_COUNTERS_DEQ_FROM_CONTEXT, + }, + { + .statisticName = "deq_from_fd", + .statisticCounter = e_FM_COUNTERS_DEQ_FROM_FD, + }, + { + .statisticName = "deq_confirm", + .statisticCounter = e_FM_COUNTERS_DEQ_CONFIRM, + }, + /* FM:DMA statistics */ + { + .statisticName = "cmq_not_empty", + .statisticCounter = e_FM_DMA_COUNTERS_CMQ_NOT_EMPTY, + }, + { + .statisticName = "bus_error", + .statisticCounter = e_FM_DMA_COUNTERS_BUS_ERROR, + }, + { + .statisticName = "read_buf_ecc_error", + .statisticCounter = e_FM_DMA_COUNTERS_READ_BUF_ECC_ERROR, + }, + { + .statisticName = "write_buf_ecc_sys_error", + .statisticCounter = e_FM_DMA_COUNTERS_WRITE_BUF_ECC_SYS_ERROR, + }, + { + .statisticName = "write_buf_ecc_fm_error", + .statisticCounter = e_FM_DMA_COUNTERS_WRITE_BUF_ECC_FM_ERROR, + }, + /* FM:PCD statistics */ + { + .statisticName = "pcd_enq_total_frame", + .statisticCounter = e_FM_COUNTERS_ENQ_TOTAL_FRAME, + }, + { + .statisticName = "pcd_kg_total", + .statisticCounter = e_FM_PCD_KG_COUNTERS_TOTAL, + }, + { + .statisticName = "pcd_plcr_yellow", + .statisticCounter = e_FM_PCD_PLCR_COUNTERS_YELLOW, + }, + { + .statisticName = "pcd_plcr_red", + .statisticCounter = e_FM_PCD_PLCR_COUNTERS_RED, + }, + { + .statisticName = "pcd_plcr_recolored_to_red", + .statisticCounter = e_FM_PCD_PLCR_COUNTERS_RECOLORED_TO_RED, + }, + { + .statisticName = "pcd_plcr_recolored_to_yellow", + .statisticCounter = e_FM_PCD_PLCR_COUNTERS_RECOLORED_TO_YELLOW, + }, + { + .statisticName = "pcd_plcr_total", + .statisticCounter = e_FM_PCD_PLCR_COUNTERS_TOTAL, + }, + { + .statisticName = "pcd_plcr_length_mismatch", + .statisticCounter = e_FM_PCD_PLCR_COUNTERS_LENGTH_MISMATCH, + }, + { + .statisticName = "pcd_prs_parse_dispatch", + .statisticCounter = e_FM_PCD_PRS_COUNTERS_PARSE_DISPATCH, + }, + { + .statisticName = "pcd_prs_l2_parse_result_returned", + .statisticCounter = e_FM_PCD_PRS_COUNTERS_L2_PARSE_RESULT_RETURNED, + }, + { + .statisticName = "pcd_prs_l3_parse_result_returned", + .statisticCounter = e_FM_PCD_PRS_COUNTERS_L3_PARSE_RESULT_RETURNED, + }, + { + .statisticName = "pcd_prs_l4_parse_result_returned", + .statisticCounter = e_FM_PCD_PRS_COUNTERS_L4_PARSE_RESULT_RETURNED, + }, + { + .statisticName = "pcd_prs_shim_parse_result_returned", + .statisticCounter = e_FM_PCD_PRS_COUNTERS_SHIM_PARSE_RESULT_RETURNED, + }, + { + .statisticName = "pcd_prs_l2_parse_result_returned_with_err", + .statisticCounter = + e_FM_PCD_PRS_COUNTERS_L2_PARSE_RESULT_RETURNED_WITH_ERR, + }, + { + .statisticName = "pcd_prs_l3_parse_result_returned_with_err", + .statisticCounter = + e_FM_PCD_PRS_COUNTERS_L3_PARSE_RESULT_RETURNED_WITH_ERR, + }, + { + .statisticName = "pcd_prs_l4_parse_result_returned_with_err", + .statisticCounter = + e_FM_PCD_PRS_COUNTERS_L4_PARSE_RESULT_RETURNED_WITH_ERR, + }, + { + .statisticName = "pcd_prs_shim_parse_result_returned_with_err", + .statisticCounter = + e_FM_PCD_PRS_COUNTERS_SHIM_PARSE_RESULT_RETURNED_WITH_ERR, + }, + { + .statisticName = "pcd_prs_soft_prs_cycles", + .statisticCounter = e_FM_PCD_PRS_COUNTERS_SOFT_PRS_CYCLES, + }, + { + .statisticName = "pcd_prs_soft_prs_stall_cycles", + .statisticCounter = e_FM_PCD_PRS_COUNTERS_SOFT_PRS_STALL_CYCLES, + }, + { + .statisticName = "pcd_prs_hard_prs_cycle_incl_stall_cycles", + .statisticCounter = + e_FM_PCD_PRS_COUNTERS_HARD_PRS_CYCLE_INCL_STALL_CYCLES, + }, + { + .statisticName = "pcd_prs_muram_read_cycles", + .statisticCounter = e_FM_PCD_PRS_COUNTERS_MURAM_READ_CYCLES, + }, + { + .statisticName = "pcd_prs_muram_read_stall_cycles", + .statisticCounter = e_FM_PCD_PRS_COUNTERS_MURAM_READ_STALL_CYCLES, + }, + { + .statisticName = "pcd_prs_muram_write_cycles", + .statisticCounter = e_FM_PCD_PRS_COUNTERS_MURAM_WRITE_CYCLES, + }, + { + .statisticName = "pcd_prs_muram_write_stall_cycles", + .statisticCounter = e_FM_PCD_PRS_COUNTERS_MURAM_WRITE_STALL_CYCLES, + }, + { + .statisticName = "pcd_prs_fpm_command_stall_cycles", + .statisticCounter = e_FM_PCD_PRS_COUNTERS_FPM_COMMAND_STALL_CYCLES, + }, + {} +}; + +/* Fm stats and regs dumps via sysfs */ +static ssize_t show_fm_dma_stats(struct device *dev, + struct device_attribute *attr, char *buf) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = NULL; + t_FmDmaStatus fmDmaStatus; + unsigned long flags = 0; + unsigned n = 0; + uint8_t counter_value = 0, counter = 0; + + if (attr == NULL || buf == NULL || dev == NULL) + return -EINVAL; + + p_LnxWrpFmDev = (t_LnxWrpFmDev *) dev_get_drvdata(dev); + if (WARN_ON(p_LnxWrpFmDev == NULL)) + return -EINVAL; + + if (!p_LnxWrpFmDev->active || !p_LnxWrpFmDev->h_Dev) + return -EIO; + + counter = + fm_find_statistic_counter_by_name(attr->attr.name, + (struct SysfsStats_t *) + &fmSysfsStats[0], NULL); + + local_irq_save(flags); + + memset(&fmDmaStatus, 0, sizeof(fmDmaStatus)); + FM_GetDmaStatus(p_LnxWrpFmDev->h_Dev, &fmDmaStatus); + + switch (counter) { + case e_FM_DMA_COUNTERS_CMQ_NOT_EMPTY: + counter_value = fmDmaStatus.cmqNotEmpty; + break; + case e_FM_DMA_COUNTERS_BUS_ERROR: + counter_value = fmDmaStatus.busError; + break; + case e_FM_DMA_COUNTERS_READ_BUF_ECC_ERROR: + counter_value = fmDmaStatus.readBufEccError; + break; + case e_FM_DMA_COUNTERS_WRITE_BUF_ECC_SYS_ERROR: + counter_value = fmDmaStatus.writeBufEccSysError; + break; + case e_FM_DMA_COUNTERS_WRITE_BUF_ECC_FM_ERROR: + counter_value = fmDmaStatus.writeBufEccFmError; + break; + default: + WARN(1, "FMD: failure at %s:%d/%s()!\n", __FILE__, __LINE__, + __func__); + break; + }; + + n = snprintf(buf, PAGE_SIZE, "\tFM %u counter: %c\n", + p_LnxWrpFmDev->id, counter_value ? 'T' : 'F'); + + local_irq_restore(flags); + + return n; +} + +static ssize_t show_fm_stats(struct device *dev, + struct device_attribute *attr, char *buf) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = NULL; + unsigned long flags = 0; + unsigned n = 0, counter = 0; + + if (attr == NULL || buf == NULL || dev == NULL) + return -EINVAL; + + p_LnxWrpFmDev = (t_LnxWrpFmDev *) dev_get_drvdata(dev); + if (WARN_ON(p_LnxWrpFmDev == NULL)) + return -EINVAL; + + if (!p_LnxWrpFmDev->active || !p_LnxWrpFmDev->h_Dev) + return -EIO; + + counter = + fm_find_statistic_counter_by_name(attr->attr.name, + (struct SysfsStats_t *) + &fmSysfsStats[0], NULL); + + local_irq_save(flags); + + n = snprintf(buf, PAGE_SIZE, "\tFM %d counter: %d\n", + p_LnxWrpFmDev->id, + FM_GetCounter(p_LnxWrpFmDev->h_Dev, + (e_FmCounters) counter)); + + local_irq_restore(flags); + + return n; +} + +static ssize_t show_fm_pcd_stats(struct device *dev, + struct device_attribute *attr, char *buf) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = NULL; + unsigned long flags = 0; + unsigned n = 0, counter = 0; + + if (attr == NULL || buf == NULL || dev == NULL) + return -EINVAL; + + p_LnxWrpFmDev = (t_LnxWrpFmDev *) dev_get_drvdata(dev); + if (WARN_ON(p_LnxWrpFmDev == NULL)) + return -EINVAL; + + if (!p_LnxWrpFmDev->active || !p_LnxWrpFmDev->h_Dev) + return -EIO; + + counter = + fm_find_statistic_counter_by_name(attr->attr.name, + (struct SysfsStats_t *) + &fmSysfsStats[0], NULL); + + local_irq_save(flags); + + n = snprintf(buf, PAGE_SIZE, "\tFM %d counter: %d\n", + p_LnxWrpFmDev->id, + FM_PCD_GetCounter(p_LnxWrpFmDev->h_PcdDev, + (e_FmPcdCounters) counter)); + + local_irq_restore(flags); + + return n; +} + +/* FM */ +static DEVICE_ATTR(enq_total_frame, S_IRUGO, show_fm_stats, NULL); +static DEVICE_ATTR(deq_total_frame, S_IRUGO, show_fm_stats, NULL); +static DEVICE_ATTR(deq_0, S_IRUGO, show_fm_stats, NULL); +static DEVICE_ATTR(deq_1, S_IRUGO, show_fm_stats, NULL); +static DEVICE_ATTR(deq_2, S_IRUGO, show_fm_stats, NULL); +static DEVICE_ATTR(deq_from_default, S_IRUGO, show_fm_stats, NULL); +static DEVICE_ATTR(deq_from_context, S_IRUGO, show_fm_stats, NULL); +static DEVICE_ATTR(deq_from_fd, S_IRUGO, show_fm_stats, NULL); +static DEVICE_ATTR(deq_confirm, S_IRUGO, show_fm_stats, NULL); +/* FM:DMA */ +static DEVICE_ATTR(cmq_not_empty, S_IRUGO, show_fm_dma_stats, NULL); +static DEVICE_ATTR(bus_error, S_IRUGO, show_fm_dma_stats, NULL); +static DEVICE_ATTR(read_buf_ecc_error, S_IRUGO, show_fm_dma_stats, NULL); +static DEVICE_ATTR(write_buf_ecc_sys_error, S_IRUGO, show_fm_dma_stats, NULL); +static DEVICE_ATTR(write_buf_ecc_fm_error, S_IRUGO, show_fm_dma_stats, NULL); +/* FM:PCD */ +static DEVICE_ATTR(pcd_enq_total_frame, S_IRUGO, show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_kg_total, S_IRUGO, show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_plcr_yellow, S_IRUGO, show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_plcr_red, S_IRUGO, show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_plcr_recolored_to_red, S_IRUGO, show_fm_pcd_stats, + NULL); +static DEVICE_ATTR(pcd_plcr_recolored_to_yellow, S_IRUGO, show_fm_pcd_stats, + NULL); +static DEVICE_ATTR(pcd_plcr_total, S_IRUGO, show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_plcr_length_mismatch, S_IRUGO, show_fm_pcd_stats, + NULL); +static DEVICE_ATTR(pcd_prs_parse_dispatch, S_IRUGO, show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_prs_l2_parse_result_returned, S_IRUGO, + show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_prs_l3_parse_result_returned, S_IRUGO, + show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_prs_l4_parse_result_returned, S_IRUGO, + show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_prs_shim_parse_result_returned, S_IRUGO, + show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_prs_l2_parse_result_returned_with_err, S_IRUGO, + show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_prs_l3_parse_result_returned_with_err, S_IRUGO, + show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_prs_l4_parse_result_returned_with_err, S_IRUGO, + show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_prs_shim_parse_result_returned_with_err, S_IRUGO, + show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_prs_soft_prs_cycles, S_IRUGO, show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_prs_soft_prs_stall_cycles, S_IRUGO, show_fm_pcd_stats, + NULL); +static DEVICE_ATTR(pcd_prs_hard_prs_cycle_incl_stall_cycles, S_IRUGO, + show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_prs_muram_read_cycles, S_IRUGO, show_fm_pcd_stats, + NULL); +static DEVICE_ATTR(pcd_prs_muram_read_stall_cycles, S_IRUGO, + show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_prs_muram_write_cycles, S_IRUGO, show_fm_pcd_stats, + NULL); +static DEVICE_ATTR(pcd_prs_muram_write_stall_cycles, S_IRUGO, + show_fm_pcd_stats, NULL); +static DEVICE_ATTR(pcd_prs_fpm_command_stall_cycles, S_IRUGO, + show_fm_pcd_stats, NULL); + +static struct attribute *fm_dev_stats_attributes[] = { + &dev_attr_enq_total_frame.attr, + &dev_attr_deq_total_frame.attr, + &dev_attr_deq_0.attr, + &dev_attr_deq_1.attr, + &dev_attr_deq_2.attr, + &dev_attr_deq_from_default.attr, + &dev_attr_deq_from_context.attr, + &dev_attr_deq_from_fd.attr, + &dev_attr_deq_confirm.attr, + &dev_attr_cmq_not_empty.attr, + &dev_attr_bus_error.attr, + &dev_attr_read_buf_ecc_error.attr, + &dev_attr_write_buf_ecc_sys_error.attr, + &dev_attr_write_buf_ecc_fm_error.attr, + &dev_attr_pcd_enq_total_frame.attr, + &dev_attr_pcd_kg_total.attr, + &dev_attr_pcd_plcr_yellow.attr, + &dev_attr_pcd_plcr_red.attr, + &dev_attr_pcd_plcr_recolored_to_red.attr, + &dev_attr_pcd_plcr_recolored_to_yellow.attr, + &dev_attr_pcd_plcr_total.attr, + &dev_attr_pcd_plcr_length_mismatch.attr, + &dev_attr_pcd_prs_parse_dispatch.attr, + &dev_attr_pcd_prs_l2_parse_result_returned.attr, + &dev_attr_pcd_prs_l3_parse_result_returned.attr, + &dev_attr_pcd_prs_l4_parse_result_returned.attr, + &dev_attr_pcd_prs_shim_parse_result_returned.attr, + &dev_attr_pcd_prs_l2_parse_result_returned_with_err.attr, + &dev_attr_pcd_prs_l3_parse_result_returned_with_err.attr, + &dev_attr_pcd_prs_l4_parse_result_returned_with_err.attr, + &dev_attr_pcd_prs_shim_parse_result_returned_with_err.attr, + &dev_attr_pcd_prs_soft_prs_cycles.attr, + &dev_attr_pcd_prs_soft_prs_stall_cycles.attr, + &dev_attr_pcd_prs_hard_prs_cycle_incl_stall_cycles.attr, + &dev_attr_pcd_prs_muram_read_cycles.attr, + &dev_attr_pcd_prs_muram_read_stall_cycles.attr, + &dev_attr_pcd_prs_muram_write_cycles.attr, + &dev_attr_pcd_prs_muram_write_stall_cycles.attr, + &dev_attr_pcd_prs_fpm_command_stall_cycles.attr, + NULL +}; + +static const struct attribute_group fm_dev_stats_attr_grp = { + .name = "statistics", + .attrs = fm_dev_stats_attributes +}; + +static ssize_t show_fm_regs(struct device *dev, struct device_attribute *attr, + char *buf) +{ + unsigned long flags; + unsigned n = 0; +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) + t_LnxWrpFmDev *p_LnxWrpFmDev = NULL; +#endif + + if (attr == NULL || buf == NULL || dev == NULL) + return -EINVAL; + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) + + p_LnxWrpFmDev = (t_LnxWrpFmDev *) dev_get_drvdata(dev); + if (WARN_ON(p_LnxWrpFmDev == NULL)) + return -EINVAL; + + local_irq_save(flags); + + n = snprintf(buf, PAGE_SIZE, "FM driver registers dump.\n"); + + if (!p_LnxWrpFmDev->active || !p_LnxWrpFmDev->h_Dev) + return -EIO; + else + FM_DumpRegs(p_LnxWrpFmDev->h_Dev); + + local_irq_restore(flags); +#else + + local_irq_save(flags); + n = snprintf(buf, PAGE_SIZE, + "Debug level is too low to dump registers!!!\n"); + local_irq_restore(flags); +#endif /* (defined(DEBUG_ERRORS) && ... */ + + return n; +} + +static ssize_t show_pcd_regs(struct device *dev, + struct device_attribute *attr, char *buf) +{ + unsigned long flags; + unsigned n = 0; +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) + t_LnxWrpFmDev *p_LnxWrpFmDev = NULL; +#endif + + if (attr == NULL || buf == NULL || dev == NULL) + return -EINVAL; + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) + p_LnxWrpFmDev = (t_LnxWrpFmDev *) dev_get_drvdata(dev); + if (WARN_ON(p_LnxWrpFmDev == NULL)) + return -EINVAL; + + local_irq_save(flags); + n = snprintf(buf, PAGE_SIZE, "FM driver registers dump.\n"); + + if (!p_LnxWrpFmDev->active || !p_LnxWrpFmDev->h_PcdDev) + return -EIO; + else + FM_PCD_DumpRegs(p_LnxWrpFmDev->h_PcdDev); + + local_irq_restore(flags); +#else + + local_irq_save(flags); + n = snprintf(buf, PAGE_SIZE, + "Debug level is too low to dump registers!!!\n"); + local_irq_restore(flags); + +#endif /* (defined(DEBUG_ERRORS) && ... */ + + return n; +} + +static DEVICE_ATTR(fm_regs, S_IRUGO, show_fm_regs, NULL); +static DEVICE_ATTR(fm_pcd_regs, S_IRUGO, show_pcd_regs, NULL); + +int fm_sysfs_create(struct device *dev) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = NULL; + + if (dev == NULL) + return -EIO; + + p_LnxWrpFmDev = (t_LnxWrpFmDev *) dev_get_drvdata(dev); + + /* store to remove them when module is disabled */ + p_LnxWrpFmDev->dev_attr_regs = &dev_attr_fm_regs; + p_LnxWrpFmDev->dev_pcd_attr_regs = &dev_attr_fm_pcd_regs; + + /* Create sysfs statistics group for FM module */ + if (sysfs_create_group(&dev->kobj, &fm_dev_stats_attr_grp) != 0) + return -EIO; + + /* Registers dump entry - in future will be moved to debugfs */ + if (device_create_file(dev, &dev_attr_fm_regs) != 0 || + device_create_file(dev, &dev_attr_fm_pcd_regs) != 0) + return -EIO; + + return 0; +} + +void fm_sysfs_destroy(struct device *dev) +{ + t_LnxWrpFmDev *p_LnxWrpFmDev = NULL; + + if (WARN_ON(dev == NULL)) + return; + + p_LnxWrpFmDev = (t_LnxWrpFmDev *) dev_get_drvdata(dev); + if (WARN_ON(p_LnxWrpFmDev == NULL)) + return; + + sysfs_remove_group(&dev->kobj, &fm_dev_stats_attr_grp); + device_remove_file(dev, p_LnxWrpFmDev->dev_attr_regs); + device_remove_file(dev, p_LnxWrpFmDev->dev_pcd_attr_regs); +} --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_sysfs_fm.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_sysfs_fm.h @@ -0,0 +1,48 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + + @File lnxwrp_sysfs_fm.h + + @Description FM sysfs functions. + +*/ + +#ifndef LNXWRP_SYSFS_FM_H_ +#define LNXWRP_SYSFS_FM_H_ + +#include "lnxwrp_sysfs.h" + +int fm_sysfs_create(struct device *dev); +void fm_sysfs_destroy(struct device *dev); + +#endif /* LNXWRP_SYSFS_FM_H_ */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_sysfs_fm_port.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_sysfs_fm_port.c @@ -0,0 +1,364 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + + @File lnxwrp_sysfs_fm_port.c + + @Description FM port sysfs related functions. + +*/ + +#include "lnxwrp_sysfs.h" +#include "lnxwrp_fm.h" + +static const struct SysfsStats_t portSysfsStats[] = { + /* RX/TX/OH common statistics */ + { + .statisticName = "port_frame", + .statisticCounter = e_FM_PORT_COUNTERS_FRAME, + }, + { + .statisticName = "port_discard_frame", + .statisticCounter = e_FM_PORT_COUNTERS_DISCARD_FRAME, + }, + { + .statisticName = "port_dealloc_buf", + .statisticCounter = e_FM_PORT_COUNTERS_DEALLOC_BUF, + }, + { + .statisticName = "port_enq_total", + .statisticCounter = e_FM_PORT_COUNTERS_ENQ_TOTAL, + }, + /* TX/OH */ + { + .statisticName = "port_length_err", + .statisticCounter = e_FM_PORT_COUNTERS_LENGTH_ERR, + }, + { + .statisticName = "port_unsupprted_format", + .statisticCounter = e_FM_PORT_COUNTERS_UNSUPPRTED_FORMAT, + }, + { + .statisticName = "port_deq_total", + .statisticCounter = e_FM_PORT_COUNTERS_DEQ_TOTAL, + }, + { + .statisticName = "port_deq_from_default", + .statisticCounter = e_FM_PORT_COUNTERS_DEQ_FROM_DEFAULT, + }, + { + .statisticName = "port_deq_confirm", + .statisticCounter = e_FM_PORT_COUNTERS_DEQ_CONFIRM, + }, + /* RX/OH */ + { + .statisticName = "port_rx_bad_frame", + .statisticCounter = e_FM_PORT_COUNTERS_RX_BAD_FRAME, + }, + { + .statisticName = "port_rx_large_frame", + .statisticCounter = e_FM_PORT_COUNTERS_RX_LARGE_FRAME, + }, + { + .statisticName = "port_rx_out_of_buffers_discard", + .statisticCounter = e_FM_PORT_COUNTERS_RX_OUT_OF_BUFFERS_DISCARD, + }, + { + .statisticName = "port_rx_filter_frame", + .statisticCounter = e_FM_PORT_COUNTERS_RX_FILTER_FRAME, + }, + /* TODO: Particular statistics for OH ports */ + {} +}; + +static ssize_t show_fm_port_stats(struct device *dev, + struct device_attribute *attr, char *buf) +{ + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev; + t_LnxWrpFmDev *p_LnxWrpFmDev; + unsigned long flags; + int n = 0; + uint8_t counter = 0; + + if (attr == NULL || buf == NULL || dev == NULL) + return -EINVAL; + + p_LnxWrpFmPortDev = (t_LnxWrpFmPortDev *) dev_get_drvdata(dev); + if (WARN_ON(p_LnxWrpFmPortDev == NULL)) + return -EINVAL; + + p_LnxWrpFmDev = (t_LnxWrpFmDev *) p_LnxWrpFmPortDev->h_LnxWrpFmDev; + if (WARN_ON(p_LnxWrpFmDev == NULL)) + return -EINVAL; + + if (!p_LnxWrpFmDev->active || !p_LnxWrpFmDev->h_Dev) + return -EIO; + + if (!p_LnxWrpFmPortDev->h_Dev) { + n = snprintf(buf, PAGE_SIZE, "\tFM Port not configured...\n"); + return n; + } + + counter = + fm_find_statistic_counter_by_name(attr->attr.name, + (struct SysfsStats_t *) & + portSysfsStats[0], NULL); + + if (counter == e_FM_PORT_COUNTERS_RX_LIST_DMA_ERR) { + uint32_t fmRev = 0; + fmRev = 0xffff & ioread32(UINT_TO_PTR(p_LnxWrpFmDev->fmBaseAddr + + 0x000c30c4)); + + if (fmRev == 0x0100) { + local_irq_save(flags); + n = snprintf(buf, PAGE_SIZE, + "counter not available for revision 1\n"); + local_irq_restore(flags); + } + return n; + } + + local_irq_save(flags); + n = snprintf(buf, PAGE_SIZE, "\tFM %d Port %d counter: %d\n", + p_LnxWrpFmDev->id, + p_LnxWrpFmPortDev->id, + FM_PORT_GetCounter(p_LnxWrpFmPortDev->h_Dev, + (e_FmPortCounters) counter)); + local_irq_restore(flags); + + return n; +} + +/* FM PORT RX/TX/OH statistics */ +static DEVICE_ATTR(port_frame, S_IRUGO, show_fm_port_stats, NULL); +static DEVICE_ATTR(port_discard_frame, S_IRUGO, show_fm_port_stats, NULL); +static DEVICE_ATTR(port_dealloc_buf, S_IRUGO, show_fm_port_stats, NULL); +static DEVICE_ATTR(port_enq_total, S_IRUGO, show_fm_port_stats, NULL); +/* FM PORT TX/OH statistics */ +static DEVICE_ATTR(port_length_err, S_IRUGO, show_fm_port_stats, NULL); +static DEVICE_ATTR(port_unsupprted_format, S_IRUGO, show_fm_port_stats, NULL); +static DEVICE_ATTR(port_deq_total, S_IRUGO, show_fm_port_stats, NULL); +static DEVICE_ATTR(port_deq_from_default, S_IRUGO, show_fm_port_stats, NULL); +static DEVICE_ATTR(port_deq_confirm, S_IRUGO, show_fm_port_stats, NULL); +/* FM PORT RX/OH statistics */ +static DEVICE_ATTR(port_rx_bad_frame, S_IRUGO, show_fm_port_stats, NULL); +static DEVICE_ATTR(port_rx_large_frame, S_IRUGO, show_fm_port_stats, NULL); +static DEVICE_ATTR(port_rx_out_of_buffers_discard, S_IRUGO, + show_fm_port_stats, NULL); +static DEVICE_ATTR(port_rx_filter_frame, S_IRUGO, show_fm_port_stats, NULL); + +/* FM PORT TX statistics */ +static struct attribute *fm_tx_port_dev_stats_attributes[] = { + &dev_attr_port_frame.attr, + &dev_attr_port_discard_frame.attr, + &dev_attr_port_dealloc_buf.attr, + &dev_attr_port_enq_total.attr, + &dev_attr_port_length_err.attr, + &dev_attr_port_unsupprted_format.attr, + &dev_attr_port_deq_total.attr, + &dev_attr_port_deq_from_default.attr, + &dev_attr_port_deq_confirm.attr, + NULL +}; + +static const struct attribute_group fm_tx_port_dev_stats_attr_grp = { + .name = "statistics", + .attrs = fm_tx_port_dev_stats_attributes +}; + +/* FM PORT RX statistics */ +static struct attribute *fm_rx_port_dev_stats_attributes[] = { + &dev_attr_port_frame.attr, + &dev_attr_port_discard_frame.attr, + &dev_attr_port_dealloc_buf.attr, + &dev_attr_port_enq_total.attr, + &dev_attr_port_rx_bad_frame.attr, + &dev_attr_port_rx_large_frame.attr, + &dev_attr_port_rx_out_of_buffers_discard.attr, + &dev_attr_port_rx_filter_frame.attr, + NULL +}; + +static const struct attribute_group fm_rx_port_dev_stats_attr_grp = { + .name = "statistics", + .attrs = fm_rx_port_dev_stats_attributes +}; + +/* TODO: add particular OH ports statistics */ +static struct attribute *fm_oh_port_dev_stats_attributes[] = { + &dev_attr_port_frame.attr, + &dev_attr_port_discard_frame.attr, + &dev_attr_port_dealloc_buf.attr, + &dev_attr_port_enq_total.attr, + /*TX*/ &dev_attr_port_length_err.attr, + &dev_attr_port_unsupprted_format.attr, + &dev_attr_port_deq_total.attr, + &dev_attr_port_deq_from_default.attr, + &dev_attr_port_deq_confirm.attr, + /*RX*/ &dev_attr_port_rx_bad_frame.attr, + &dev_attr_port_rx_large_frame.attr, + &dev_attr_port_rx_out_of_buffers_discard.attr, + /*&dev_attr_port_rx_filter_frame.attr, */ + NULL +}; + +static const struct attribute_group fm_oh_port_dev_stats_attr_grp = { + .name = "statistics", + .attrs = fm_oh_port_dev_stats_attributes +}; + +static ssize_t show_fm_port_regs(struct device *dev, + struct device_attribute *attr, char *buf) +{ + unsigned long flags; + unsigned n = 0; +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev = + (t_LnxWrpFmPortDev *) dev_get_drvdata(dev); +#endif + + if (attr == NULL || buf == NULL || dev == NULL) + return -EINVAL; + +#if (defined(DEBUG_ERRORS) && (DEBUG_ERRORS > 0)) + local_irq_save(flags); + + if (!p_LnxWrpFmPortDev->h_Dev) { + n = snprintf(buf, PAGE_SIZE, "\tFM Port not configured...\n"); + return n; + } else { + n = snprintf(buf, PAGE_SIZE, + "FM port driver registers dump.\n"); + FM_PORT_DumpRegs(p_LnxWrpFmPortDev->h_Dev); + } + + local_irq_restore(flags); + + return n; +#else + + local_irq_save(flags); + n = snprintf(buf, PAGE_SIZE, + "Debug level is too low to dump registers!!!\n"); + local_irq_restore(flags); + + return n; +#endif +} + +static DEVICE_ATTR(fm_port_regs, 0x644, show_fm_port_regs, NULL); + +int fm_port_sysfs_create(struct device *dev) +{ + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev; + + if (dev == NULL) + return -EINVAL; + + p_LnxWrpFmPortDev = (t_LnxWrpFmPortDev *) dev_get_drvdata(dev); + if (WARN_ON(p_LnxWrpFmPortDev == NULL)) + return -EINVAL; + + /* store to remove them when module is disabled */ + p_LnxWrpFmPortDev->dev_attr_regs = &dev_attr_fm_port_regs; + + /* Registers dump entry - in future will be moved to debugfs */ + if (device_create_file(dev, &dev_attr_fm_port_regs) != 0) + return -EIO; + + /* FM Ports statistics */ + switch (p_LnxWrpFmPortDev->settings.param.portType) { + case e_FM_PORT_TYPE_TX: + case e_FM_PORT_TYPE_TX_10G: + if (sysfs_create_group + (&dev->kobj, &fm_tx_port_dev_stats_attr_grp) != 0) + return -EIO; + break; + case e_FM_PORT_TYPE_RX: + case e_FM_PORT_TYPE_RX_10G: + if (sysfs_create_group + (&dev->kobj, &fm_rx_port_dev_stats_attr_grp) != 0) + return -EIO; + break; + case e_FM_PORT_TYPE_OH_OFFLINE_PARSING: + case e_FM_PORT_TYPE_OH_HOST_COMMAND: + if (sysfs_create_group + (&dev->kobj, &fm_oh_port_dev_stats_attr_grp) != 0) + return -EIO; + break; + case e_FM_PORT_TYPE_DUMMY: + default: + WARN(1, "FMD: failure at %s:%d/%s()!\n", __FILE__, __LINE__, + __func__); + return -EINVAL; + break; + }; + + return 0; +} + +void fm_port_sysfs_destroy(struct device *dev) +{ + t_LnxWrpFmPortDev *p_LnxWrpFmPortDev = NULL; + + /* this function has never been tested !!! */ + + if (WARN_ON(dev == NULL)) + return; + + p_LnxWrpFmPortDev = (t_LnxWrpFmPortDev *) dev_get_drvdata(dev); + if (WARN_ON(p_LnxWrpFmPortDev == NULL)) + return; + + /* The name attribute will be freed also by these 2 functions? */ + switch (p_LnxWrpFmPortDev->settings.param.portType) { + case e_FM_PORT_TYPE_TX: + case e_FM_PORT_TYPE_TX_10G: + sysfs_remove_group(&dev->kobj, &fm_tx_port_dev_stats_attr_grp); + break; + case e_FM_PORT_TYPE_RX: + case e_FM_PORT_TYPE_RX_10G: + sysfs_remove_group(&dev->kobj, &fm_rx_port_dev_stats_attr_grp); + break; + case e_FM_PORT_TYPE_OH_OFFLINE_PARSING: + case e_FM_PORT_TYPE_OH_HOST_COMMAND: + sysfs_remove_group(&dev->kobj, &fm_oh_port_dev_stats_attr_grp); + break; + case e_FM_PORT_TYPE_DUMMY: + default: + WARN(1, "FMD: failure at %s:%d/%s()!\n", __FILE__, __LINE__, + __func__); + break; + }; + + device_remove_file(dev, p_LnxWrpFmPortDev->dev_attr_regs); +} --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_sysfs_fm_port.h +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/wrapper/lnxwrp_sysfs_fm_port.h @@ -0,0 +1,48 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/* + + @File lnxwrp_sysfs_fm_port.h + + @Description FM port sysfs functions. + +*/ + +#ifndef LNXWRP_SYSFS_FM_PORT_H_ +#define LNXWRP_SYSFS_FM_PORT_H_ + +#include "lnxwrp_sysfs.h" + +int fm_port_sysfs_create(struct device *dev); +void fm_port_sysfs_destroy(struct device *dev); + +#endif /* LNXWRP_SYSFS_FM_PORT_H_ */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/xx/Makefile +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/xx/Makefile @@ -0,0 +1,12 @@ +# +# Makefile for the Freescale Ethernet controllers +# +EXTRA_CFLAGS += -DVERSION=\"\" +# +#Include netcomm SW specific definitions +include $(srctree)/drivers/net/dpa/NetCommSw/ncsw_config.mk + +obj-y += fsl-ncsw-xx.o + +fsl-ncsw-xx-objs := xx_linux.o udivdi3.o stdlib.o + --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/xx/stdlib.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/xx/stdlib.c @@ -0,0 +1,264 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/*------------------------------------------------------*/ +/* */ +/* File: stdlib.c */ +/* */ +/* Description: */ +/* Standard library routines (externals) */ +/* */ +/* Modifications: */ +/* ============== */ +/* */ +/*------------------------------------------------------*/ +#include "stdlib_ext.h" +#include "stdarg_ext.h" +#include "ctype_ext.h" +#include "string_ext.h" +#include "std_ext.h" +#include "xx_ext.h" + + +#ifdef MODULE +/** + * strtoul - convert a string to an uint32_t + * @cp: The start of the string + * @endp: A pointer to the end of the parsed string will be placed here + * @base: The number base to use + */ +uint32_t strtoul(const char *cp,char **endp,uint32_t base) +{ + uint32_t result = 0,value; + + if (!base) { + base = 10; + if (*cp == '0') { + base = 8; + cp++; + if ((*cp == 'x') && isxdigit(cp[1])) { + cp++; + base = 16; + } + } + } + while (isxdigit(*cp) && + (value = (uint32_t)(isdigit(*cp) ? *cp-'0' : toupper((uint8_t)(*cp))-'A'+10)) < base) { + result = result*base + value; + cp++; + } + if (endp) + *endp = (char *)cp; + return result; +} + +/** + * strtol - convert a string to a int32_t + * @cp: The start of the string + * @endp: A pointer to the end of the parsed string will be placed here + * @base: The number base to use + */ +long strtol(const char *cp,char **endp,uint32_t base) +{ + if(*cp=='-') + return (long)(-strtoul(cp+1,endp,base)); + return (long)strtoul(cp,endp,base); +} + +/** + * strtoull - convert a string to an uint64_t + * @cp: The start of the string + * @endp: A pointer to the end of the parsed string will be placed here + * @base: The number base to use + */ +uint64_t strtoull(const char *cp,char **endp,uint32_t base) +{ + uint64_t result = 0,value; + + if (!base) { + base = 10; + if (*cp == '0') { + base = 8; + cp++; + if ((*cp == 'x') && isxdigit(cp[1])) { + cp++; + base = 16; + } + } + } + while (isxdigit(*cp) && (value = isdigit(*cp) ? *cp-'0' : (islower(*cp) + ? toupper((uint8_t)(*cp)) : *cp)-'A'+10) < base) { + result = result*base + value; + cp++; + } + if (endp) + *endp = (char *)cp; + return result; +} + +/** + * strtoll - convert a string to a int64 + * @cp: The start of the string + * @endp: A pointer to the end of the parsed string will be placed here + * @base: The number base to use + */ +long long strtoll(const char *cp,char **endp,uint32_t base) +{ + if(*cp=='-') + return (long long)(-strtoull(cp+1,endp,base)); + return (long long)(strtoull(cp,endp,base)); +} + +/** + * atoi - convert a string to a int + * @s: The start of the string + */ +int atoi(const char *s) +{ + int i=0; + const char **tmp_s = &s; + + while (isdigit(**tmp_s)) + i = i*10 + *((*tmp_s)++) - '0'; + return i; +} + +/** + * strlen - Find the length of a string + * @s: The string to be sized + */ +size_t strlen(const char * s) +{ + const char *sc; + + for (sc = s; *sc != '\0'; ++sc) + /* nothing */; + + return sc - s; +} + +/** + * strnlen - Find the length of a length-limited string + * @s: The string to be sized + * @count: The maximum number of bytes to search + */ +size_t strnlen(const char * s, size_t count) +{ + const char *sc; + + for (sc = s; count-- && *sc != '\0'; ++sc) + /* nothing */; + + return sc - s; +} + +/** + * strcpy - Copy a %NUL terminated string + * @dest: Where to copy the string to + * @src: Where to copy the string from + */ +char * strcpy(char * dest,const char *src) +{ + char *tmp = dest; + + while ((*dest++ = *src++) != '\0') + /* nothing */; + + return tmp; +} +#endif /* MODULE */ + +/** + * strtok - Split a string into tokens + * @s: The string to be searched + * @ct: The characters to search for + * + * WARNING: strtok is deprecated, use strsep instead. + */ +char *___strtok; + +char * strtok(char * s,const char * ct) +{ + char *sbegin, *send; + + sbegin = s ? s : ___strtok; + if (!sbegin) { + return NULL; + } + sbegin += strspn(sbegin,ct); + if (*sbegin == '\0') { + ___strtok = NULL; + return( NULL ); + } + send = strpbrk( sbegin, ct); + if (send && *send != '\0') + *send++ = '\0'; + ___strtok = send; + return (sbegin); +} + + +#ifdef MODULE +/** + * strncpy - Copy a length-limited, %NUL-terminated string + * @dest: Where to copy the string to + * @src: Where to copy the string from + * @count: The maximum number of bytes to copy + * + * Note that unlike userspace strncpy, this does not %NUL-pad the buffer. + * However, the result is not %NUL-terminated if the source exceeds + * @count bytes. + */ +char * strncpy(char * dest,const char *src,size_t count) +{ + char *tmp = dest; + + while (count-- && (*dest++ = *src++) != '\0') + /* nothing */; + + return tmp; +} + +/** + * vsprintf - Format a string and place it in a buffer + * @buf: The buffer to place the result into + * @fmt: The format string to use + * @args: Arguments for the format string + * + * Call this function if you are already dealing with a va_list. + * You probably want sprintf instead. + */ +int vsprintf(char *buf, const char *fmt, va_list args) +{ + return vsnprintf(buf, INT32_MAX, fmt, args); +} +#endif /* MODULE */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/xx/udivdi3.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/xx/udivdi3.c @@ -0,0 +1,132 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include + +#if defined(CONFIG_MODVERSIONS) && !defined(MODVERSIONS) +#define MODVERSIONS +#endif +#ifdef MODVERSIONS +#include +#endif /* MODVERSIONS */ + +#include +#include +#include + + +#define BITS_PER_UNIT 8 +#define SI_TYPE_SIZE (sizeof (SItype) * BITS_PER_UNIT) + + +typedef unsigned int UQItype __attribute__ ((mode (QI))); +typedef int SItype __attribute__ ((mode (SI))); +typedef unsigned int USItype __attribute__ ((mode (SI))); +typedef int DItype __attribute__ ((mode (DI))); +typedef int word_type __attribute__ ((mode (__word__))); +typedef unsigned int UDItype __attribute__ ((mode (DI))); + +struct DIstruct {SItype low, high;}; + +typedef union +{ + struct DIstruct s; + DItype ll; +} DIunion; + + +/* bit divisor, dividend and result. dynamic precision */ +static __inline__ uint64_t _div64_64(uint64_t dividend, uint64_t divisor) +{ + uint32_t d = divisor; + + if (divisor > 0xffffffffULL) + { + unsigned int shift = fls(divisor >> 32); + + d = divisor >> shift; + dividend >>= shift; + } + + /* avoid 64 bit division if possible */ + if (dividend >> 32) + do_div(dividend, d); + else + dividend = (uint32_t) dividend / d; + + return dividend; +} + +UDItype __udivdi3 (UDItype n, UDItype d) +{ + return _div64_64(n, d); +} + +DItype __divdi3 (DItype n, DItype d) +{ + DItype sign = 1; + if (n<0) + { + sign *= -1; + n *= -1; + } + if (d<0) + { + sign *= -1; + d *= -1; + } + return sign*_div64_64((UDItype)n, (UDItype)d); +} + +UDItype __umoddi3 (UDItype n, UDItype d) +{ + return n-(_div64_64(n, d)*d); +} + +#ifdef MODULE +word_type __ucmpdi2 (DItype a, DItype b) +{ + DIunion au, bu; + + au.ll = a, bu.ll = b; + + if ((USItype) au.s.high < (USItype) bu.s.high) + return 0; + else if ((USItype) au.s.high > (USItype) bu.s.high) + return 2; + if ((USItype) au.s.low < (USItype) bu.s.low) + return 0; + else if ((USItype) au.s.low > (USItype) bu.s.low) + return 2; + return 1; +} +#endif /* MODULE */ --- linux-3.13.0.orig/drivers/net/dpa/NetCommSw/src/xx/xx_linux.c +++ linux-3.13.0/drivers/net/dpa/NetCommSw/src/xx/xx_linux.c @@ -0,0 +1,901 @@ +/* Copyright (c) 2008-2011 Freescale Semiconductor, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************//** + @File xx_linux.c + + @Description XX routines implementation for Linux. +*//***************************************************************************/ +#include + +#if defined(CONFIG_MODVERSIONS) && !defined(MODVERSIONS) +#define MODVERSIONS +#endif +#ifdef MODVERSIONS +#include +#endif /* MODVERSIONS */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#ifdef BIGPHYSAREA_ENABLE +#include +#endif /* BIGPHYSAREA_ENABLE */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "error_ext.h" +#include "std_ext.h" +#include "list_ext.h" +#include "mm_ext.h" +#include "sys_io_ext.h" +#include "xx.h" + + +#define __ERR_MODULE__ MODULE_UNKNOWN + +#ifdef BIGPHYSAREA_ENABLE +#define MAX_ALLOCATION_SIZE 128 * 1024 /* Maximum size allocated with kmalloc is 128K */ + + +/* TODO: large allocations => use big phys area */ +/****************************************************************************** + * routine: get_nr_pages + * + * description: + * calculates the number of memory pages for a given size (in bytes) + * + * arguments: + * size - the number of bytes + * + * return code: + * The number of pages + * + *****************************************************************************/ +static __inline__ uint32_t get_nr_pages (uint32_t size) +{ + return (uint32_t)((size >> PAGE_SHIFT) + (size & PAGE_SHIFT ? 1 : 0)); +} + +static bool in_big_phys_area (uint32_t addr) +{ + uint32_t base, size; + + bigphysarea_get_details (&base, &size); + return ((addr >= base) && (addr < base + size)); +} +#endif /* BIGPHYSAREA_ENABLE */ + +void * xx_Malloc(uint32_t n) +{ + void *a; + uint32_t flags; + + flags = XX_DisableAllIntr(); +#ifdef BIGPHYSAREA_ENABLE + if (n >= MAX_ALLOCATION_SIZE) + a = (void*)bigphysarea_alloc_pages(get_nr_pages(n), 0, GFP_ATOMIC); + else +#endif /* BIGPHYSAREA_ENABLE */ + a = (void *)kmalloc((uint32_t)n, GFP_ATOMIC); + if (!a) + XX_Print("No memory for XX_Malloc\n"); + XX_RestoreAllIntr(flags); + + return a; +} + +void xx_Free(void *p) +{ +#ifdef BIGPHYSAREA_ENABLE + if (in_big_phys_area ((uint32_t)p)) + bigphysarea_free_pages(p); + else +#endif /* BIGPHYSAREA_ENABLE */ + kfree(p); +} + +void XX_Exit(int status) +{ + WARN(1, "\n\nFMD: fatal error, driver can't go on!!!\n\n"); +} + +#define BUF_SIZE 512 +void XX_Print(char *str, ...) +{ + va_list args; +#ifdef CONFIG_SMP + char buf[BUF_SIZE]; +#endif /* CONFIG_SMP */ + + va_start(args, str); +#ifdef CONFIG_SMP + if (vsnprintf (buf, BUF_SIZE, str, args) >= BUF_SIZE) + printk(KERN_WARNING "Illegal string to print!\n more than %d characters.\n\tString was not printed completelly.\n", BUF_SIZE); + printk (KERN_WARNING "cpu%d/%d: %s",hard_smp_processor_id(), smp_processor_id(), buf); +#else + vprintk(str, args); +#endif /* CONFIG_SMP */ + va_end(args); +} + +void XX_Fprint(void *file, char *str, ...) +{ + va_list args; +#ifdef CONFIG_SMP + char buf[BUF_SIZE]; +#endif /* CONFIG_SMP */ + + va_start(args, str); +#ifdef CONFIG_SMP + if (vsnprintf (buf, BUF_SIZE, str, args) >= BUF_SIZE) + printk(KERN_WARNING "Illegal string to print!\n more than %d characters.\n\tString was not printed completelly.\n", BUF_SIZE); + printk (KERN_CRIT "cpu%d/%d: %s",hard_smp_processor_id(), smp_processor_id(), buf); +#else + vprintk(str, args); +#endif /* CONFIG_SMP */ + va_end(args); +} + +#ifdef DEBUG_XX_MALLOC +typedef void (*t_ffn)(void *); +typedef struct { + t_ffn f_free; + void *mem; + char *fname; + int fline; + uint32_t size; + t_List node; +} t_MemDebug; +#define MEMDBG_OBJECT(p_List) LIST_OBJECT(p_List, t_MemDebug, node) + +LIST(memDbgLst); + + +void * XX_MallocDebug(uint32_t size, char *fname, int line) +{ + void *mem; + t_MemDebug *p_MemDbg; + + p_MemDbg = (t_MemDebug *)xx_Malloc(sizeof(t_MemDebug)); + if (p_MemDbg == NULL) + return NULL; + + mem = xx_Malloc(size); + if (mem == NULL) + { + XX_Free(p_MemDbg); + return NULL; + } + + INIT_LIST(&p_MemDbg->node); + p_MemDbg->f_free = xx_Free; + p_MemDbg->mem = mem; + p_MemDbg->fname = fname; + p_MemDbg->fline = line; + p_MemDbg->size = size+sizeof(t_MemDebug); + LIST_AddToTail(&p_MemDbg->node, &memDbgLst); + + return mem; +} + +void * XX_MallocSmartDebug(uint32_t size, + int memPartitionId, + uint32_t align, + char *fname, + int line) +{ + void *mem; + t_MemDebug *p_MemDbg; + + p_MemDbg = (t_MemDebug *)XX_Malloc(sizeof(t_MemDebug)); + if (p_MemDbg == NULL) + return NULL; + + mem = xx_MallocSmart((uint32_t)size, memPartitionId, align); + if (mem == NULL) + { + XX_Free(p_MemDbg); + return NULL; + } + + INIT_LIST(&p_MemDbg->node); + p_MemDbg->f_free = xx_FreeSmart; + p_MemDbg->mem = mem; + p_MemDbg->fname = fname; + p_MemDbg->fline = line; + p_MemDbg->size = size+sizeof(t_MemDebug); + LIST_AddToTail(&p_MemDbg->node, &memDbgLst); + + return mem; +} + +static void debug_free(void *mem) +{ + t_List *p_MemDbgLh = NULL; + t_MemDebug *p_MemDbg; + bool found = FALSE; + + if (LIST_IsEmpty(&memDbgLst)) + { + REPORT_ERROR(MAJOR, E_ALREADY_FREE, ("Unbalanced free (0x%08x)", mem)); + return; + } + + LIST_FOR_EACH(p_MemDbgLh, &memDbgLst) + { + p_MemDbg = MEMDBG_OBJECT(p_MemDbgLh); + if (p_MemDbg->mem == mem) + { + found = TRUE; + break; + } + } + + if (!found) + { + REPORT_ERROR(MAJOR, E_NOT_FOUND, + ("Attempt to free unallocated address (0x%08x)",mem)); + dump_stack(); + return; + } + + LIST_Del(p_MemDbgLh); + p_MemDbg->f_free(mem); + p_MemDbg->f_free(p_MemDbg); +} + +void XX_FreeSmart(void *p) +{ + debug_free(p); +} + + +void XX_Free(void *p) +{ + debug_free(p); +} + +#else /* not DEBUG_XX_MALLOC */ +void * XX_Malloc(uint32_t size) +{ + return xx_Malloc(size); +} + +void * XX_MallocSmart(uint32_t size, int memPartitionId, uint32_t alignment) +{ + return xx_MallocSmart(size,memPartitionId, alignment); +} + +void XX_FreeSmart(void *p) +{ + xx_FreeSmart(p); +} + + +void XX_Free(void *p) +{ + xx_Free(p); +} +#endif /* not DEBUG_XX_MALLOC */ + + +#if (defined(REPORT_EVENTS) && (REPORT_EVENTS > 0)) +void XX_EventById(uint32_t event, t_Handle appId, uint16_t flags, char *msg) +{ + e_Event eventCode = (e_Event)event; + + UNUSED(eventCode); + UNUSED(appId); + UNUSED(flags); + UNUSED(msg); +} +#endif /* (defined(REPORT_EVENTS) && ... */ + + +uint32_t XX_DisableAllIntr(void) +{ + unsigned long flags; + + local_irq_save(flags); + + return (uint32_t)flags; +} + +void XX_RestoreAllIntr(uint32_t flags) +{ + local_irq_restore((unsigned long)flags); +} + +t_Error XX_Call( uint32_t qid, t_Error (* f)(t_Handle), t_Handle id, t_Handle appId, uint16_t flags ) +{ + UNUSED(qid); + UNUSED(appId); + UNUSED(flags); + + return f(id); +} + +int XX_IsICacheEnable(void) +{ + return TRUE; +} + +int XX_IsDCacheEnable(void) +{ + return TRUE; +} + + +typedef struct { + t_Isr *f_Isr; + t_Handle handle; +} t_InterruptHandler; + + +t_Handle interruptHandlers[0x00010000]; + +static irqreturn_t LinuxInterruptHandler (int irq, void *dev_id) +{ + t_InterruptHandler *p_IntrHndl = (t_InterruptHandler *)dev_id; + p_IntrHndl->f_Isr(p_IntrHndl->handle); + return IRQ_HANDLED; +} + +t_Error XX_SetIntr(int irq, t_Isr *f_Isr, t_Handle handle) +{ + const char *device; + t_InterruptHandler *p_IntrHndl; + + device = GetDeviceName(irq); + if (device == NULL) + RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Interrupt source - %d", irq)); + + p_IntrHndl = (t_InterruptHandler *)XX_Malloc(sizeof(t_InterruptHandler)); + if (p_IntrHndl == NULL) + RETURN_ERROR(MAJOR, E_NO_MEMORY, NO_MSG); + p_IntrHndl->f_Isr = f_Isr; + p_IntrHndl->handle = handle; + interruptHandlers[irq] = p_IntrHndl; + + if (request_irq(GetDeviceIrqNum(irq), LinuxInterruptHandler, 0, device, p_IntrHndl) < 0) + RETURN_ERROR(MAJOR, E_BUSY, ("Can't get IRQ %s\n", device)); + disable_irq(GetDeviceIrqNum(irq)); + + return E_OK; +} + +t_Error XX_FreeIntr(int irq) +{ + t_InterruptHandler *p_IntrHndl = interruptHandlers[irq]; + free_irq(GetDeviceIrqNum(irq), p_IntrHndl); + XX_Free(p_IntrHndl); + interruptHandlers[irq] = 0; + return E_OK; +} + +t_Error XX_EnableIntr(int irq) +{ + enable_irq(GetDeviceIrqNum(irq)); + return E_OK; +} + +t_Error XX_DisableIntr(int irq) +{ + disable_irq(GetDeviceIrqNum(irq)); + return E_OK; +} + + +/*****************************************************************************/ +/* Tasklet Service Routines */ +/*****************************************************************************/ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20) +typedef struct +{ + t_Handle h_Data; + void (*f_Callback) (void *); + struct delayed_work dwork; +} t_Tasklet; + +static void GenericTaskletCallback(struct work_struct *p_Work) +{ + t_Tasklet *p_Task = container_of(p_Work, t_Tasklet, dwork.work); + + p_Task->f_Callback(p_Task->h_Data); +} +#endif /* LINUX_VERSION_CODE */ + + +t_TaskletHandle XX_InitTasklet (void (*routine)(void *), void *data) +{ +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20) + struct work_struct *p_Task; + p_Task = (struct work_struct *)XX_Malloc(sizeof(struct work_struct)); + INIT_WORK(p_Task, routine, data); +#else + t_Tasklet *p_Task = (t_Tasklet *)XX_Malloc(sizeof(t_Tasklet)); + p_Task->h_Data = data; + p_Task->f_Callback = routine; + INIT_DELAYED_WORK(&p_Task->dwork, GenericTaskletCallback); +#endif /* LINUX_VERSION_CODE */ + + return (t_TaskletHandle)p_Task; +} + + +void XX_FreeTasklet (t_TaskletHandle h_Tasklet) +{ + if (h_Tasklet) + XX_Free(h_Tasklet); +} + +int XX_ScheduleTask(t_TaskletHandle h_Tasklet, int immediate) +{ + int ans; + +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20) + if (immediate) + ans = schedule_work(h_Tasklet); + else + ans = schedule_delayed_work(h_Tasklet, 1); +#else + if (immediate) + ans = schedule_delayed_work(&((t_Tasklet *)h_Tasklet)->dwork, 0); + else + ans = schedule_delayed_work(&((t_Tasklet *)h_Tasklet)->dwork, HZ); +#endif /* LINUX_VERSION_CODE */ + + return ans; +} + +void XX_FlushScheduledTasks(void) +{ +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) + flush_scheduled_tasks(); +#else + flush_scheduled_work(); +#endif /* LINUX_VERSION_CODE */ +} + +int XX_TaskletIsQueued(t_TaskletHandle h_Tasklet) +{ +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20) + return (int)(((struct work_struct *)h_Tasklet)->pending); +#else + return (int)delayed_work_pending(&((t_Tasklet *)h_Tasklet)->dwork); +#endif /* LINUX_VERSION_CODE */ +} + +void XX_SetTaskletData(t_TaskletHandle h_Tasklet, t_Handle data) +{ +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) + ((struct tq_struct *)h_Tasklet)->data = data; +#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20) + ((struct work_struct *)h_Tasklet)->data = data; +#else + ((t_Tasklet *)h_Tasklet)->h_Data = data; +#endif /* LINUX_VERSION_CODE */ +} + +t_Handle XX_GetTaskletData(t_TaskletHandle h_Tasklet) +{ +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20) + return (t_Handle)(((struct work_struct *)h_Tasklet)->data); +#else + return ((t_Tasklet *)h_Tasklet)->h_Data; +#endif /* LINUX_VERSION_CODE */ +} + + +/*****************************************************************************/ +/* Spinlock Service Routines */ +/*****************************************************************************/ + +t_Handle XX_InitSpinlock(void) +{ + spinlock_t *p_Spinlock = (spinlock_t *)XX_Malloc(sizeof(spinlock_t)); + if (!p_Spinlock) + return NULL; + + spin_lock_init(p_Spinlock); + + return (t_Handle)p_Spinlock; +} + +void XX_FreeSpinlock(t_Handle h_Spinlock) +{ + if (h_Spinlock) + XX_Free(h_Spinlock); +} + +void XX_LockSpinlock(t_Handle h_Spinlock) +{ + spin_lock((spinlock_t *)h_Spinlock); +} + +void XX_UnlockSpinlock(t_Handle h_Spinlock) +{ + spin_unlock((spinlock_t *)h_Spinlock); +} + +uint32_t XX_LockIntrSpinlock(t_Handle h_Spinlock) +{ + unsigned long intrFlags; + spin_lock_irqsave((spinlock_t *)h_Spinlock, intrFlags); + return intrFlags; +} + +void XX_UnlockIntrSpinlock(t_Handle h_Spinlock, uint32_t intrFlags) +{ + spin_unlock_irqrestore((spinlock_t *)h_Spinlock, (unsigned long)intrFlags); +} + + +/*****************************************************************************/ +/* Timers Service Routines */ +/*****************************************************************************/ +/* The time now is in mili sec. resolution */ +uint32_t XX_CurrentTime(void) +{ + return (jiffies*1000)/HZ; +} + + +t_Handle XX_CreateTimer(void) +{ + struct timer_list *p_Timer = (struct timer_list *)XX_Malloc(sizeof(struct timer_list)); + if (p_Timer) + { + memset(p_Timer, 0, sizeof(struct timer_list)); + init_timer(p_Timer); + } + return (t_Handle)p_Timer; +} + +void XX_FreeTimer(t_Handle h_Timer) +{ + if (h_Timer) + XX_Free(h_Timer); +} + +void XX_StartTimer(t_Handle h_Timer, + uint32_t msecs, + bool periodic, + void (*f_TimerExpired)(t_Handle), + t_Handle h_Arg) +{ + int tmp_jiffies = (msecs*HZ)/1000; + struct timer_list *p_Timer = (struct timer_list *)h_Timer; + + SANITY_CHECK_RETURN((periodic == FALSE), E_NOT_SUPPORTED); + + p_Timer->function = (void (*)(unsigned long))f_TimerExpired; + p_Timer->data = (unsigned long)h_Arg; + if ((msecs*HZ)%1000) + tmp_jiffies++; + p_Timer->expires = (jiffies + tmp_jiffies); + + add_timer((struct timer_list *)h_Timer); +} + +void XX_SetTimerData(t_Handle h_Timer, t_Handle data) +{ + struct timer_list *p_Timer = (struct timer_list *)h_Timer; + + p_Timer->data = (unsigned long)data; +} + +t_Handle XX_GetTimerData(t_Handle h_Timer) +{ + struct timer_list *p_Timer = (struct timer_list *)h_Timer; + + return (t_Handle)p_Timer->data; +} + +uint32_t XX_GetExpirationTime(t_Handle h_Timer) +{ + struct timer_list *p_Timer = (struct timer_list *)h_Timer; + + return (uint32_t)p_Timer->expires; +} + +void XX_StopTimer(t_Handle h_Timer) +{ + del_timer((struct timer_list *)h_Timer); +} + +void XX_ModTimer(t_Handle h_Timer, uint32_t msecs) +{ + int tmp_jiffies = (msecs*HZ)/1000; + + if ((msecs*HZ)%1000) + tmp_jiffies++; + mod_timer((struct timer_list *)h_Timer, jiffies + tmp_jiffies); +} + +int XX_TimerIsActive(t_Handle h_Timer) +{ + return timer_pending((struct timer_list *)h_Timer); +} + +uint32_t XX_Sleep(uint32_t msecs) +{ + int tmp_jiffies = (msecs*HZ)/1000; + + if ((msecs*HZ)%1000) + tmp_jiffies++; + return schedule_timeout(tmp_jiffies); +} + +/*BEWARE!!!!! UDelay routine is BUSY WAITTING!!!!!*/ +void XX_UDelay(uint32_t usecs) +{ + udelay(usecs); +} + +/* TODO: verify that these are correct */ +#define MSG_BODY_SIZE 512 +typedef t_Error (t_MsgHandler) (t_Handle h_Mod, uint32_t msgId, uint8_t msgBody[MSG_BODY_SIZE]); +typedef void (t_MsgCompletionCB) (t_Handle h_Arg, uint8_t msgBody[MSG_BODY_SIZE]); +t_Error XX_SendMessage(char *p_DestAddr, + uint32_t msgId, + uint8_t msgBody[MSG_BODY_SIZE], + t_MsgCompletionCB *f_CompletionCB, + t_Handle h_CBArg); + +typedef struct { + char *p_Addr; + t_MsgHandler *f_MsgHandlerCB; + t_Handle h_Mod; + t_List node; +} t_MsgHndlr; +#define MSG_HNDLR_OBJECT(ptr) LIST_OBJECT(ptr, t_MsgHndlr, node) + +LIST(msgHndlrList); + +static void EnqueueMsgHndlr(t_MsgHndlr *p_MsgHndlr) +{ + uint32_t intFlags; + + intFlags = XX_DisableAllIntr(); + LIST_AddToTail(&p_MsgHndlr->node, &msgHndlrList); + XX_RestoreAllIntr(intFlags); +} +/* TODO: add this for multi-platform support +static t_MsgHndlr * DequeueMsgHndlr(void) +{ + t_MsgHndlr *p_MsgHndlr = NULL; + uint32_t intFlags; + + intFlags = XX_DisableAllIntr(); + if (!LIST_IsEmpty(&msgHndlrList)) + { + p_MsgHndlr = MSG_HNDLR_OBJECT(msgHndlrList.p_Next); + LIST_DelAndInit(&p_MsgHndlr->node); + } + XX_RestoreAllIntr(intFlags); + + return p_MsgHndlr; +} +*/ +static t_MsgHndlr * FindMsgHndlr(char *p_Addr) +{ + t_MsgHndlr *p_MsgHndlr; + t_List *p_Pos; + + LIST_FOR_EACH(p_Pos, &msgHndlrList) + { + p_MsgHndlr = MSG_HNDLR_OBJECT(p_Pos); + if (strstr(p_MsgHndlr->p_Addr, p_Addr)) + return p_MsgHndlr; + } + + return NULL; +} + +t_Error XX_RegisterMessageHandler (char *p_Addr, t_MsgHandler *f_MsgHandlerCB, t_Handle h_Mod) +{ + t_MsgHndlr *p_MsgHndlr; + uint32_t len; + + p_MsgHndlr = (t_MsgHndlr*)XX_Malloc(sizeof(t_MsgHndlr)); + if (!p_MsgHndlr) + RETURN_ERROR(MINOR, E_NO_MEMORY, ("message handler object!!!")); + memset(p_MsgHndlr, 0, sizeof(t_MsgHndlr)); + + len = strlen(p_Addr); + p_MsgHndlr->p_Addr = (char*)XX_Malloc(len+1); + strncpy(p_MsgHndlr->p_Addr,p_Addr, (uint32_t)(len+1)); + + p_MsgHndlr->f_MsgHandlerCB = f_MsgHandlerCB; + p_MsgHndlr->h_Mod = h_Mod; + INIT_LIST(&p_MsgHndlr->node); + EnqueueMsgHndlr(p_MsgHndlr); + + return E_OK; +} + +t_Error XX_UnregisterMessageHandler (char *p_Addr) +{ + t_MsgHndlr *p_MsgHndlr = FindMsgHndlr(p_Addr); + if (!p_MsgHndlr) + RETURN_ERROR(MINOR, E_NO_DEVICE, ("message handler not found in list!!!")); + + LIST_Del(&p_MsgHndlr->node); + XX_Free(p_MsgHndlr->p_Addr); + XX_Free(p_MsgHndlr); + + return E_OK; +} + +t_Error XX_SendMessage(char *p_DestAddr, + uint32_t msgId, + uint8_t msgBody[MSG_BODY_SIZE], + t_MsgCompletionCB *f_CompletionCB, + t_Handle h_CBArg) +{ + t_Error ans; + t_MsgHndlr *p_MsgHndlr = FindMsgHndlr(p_DestAddr); + if (!p_MsgHndlr) + RETURN_ERROR(MINOR, E_NO_DEVICE, ("message handler not found in list!!!")); + + ans = p_MsgHndlr->f_MsgHandlerCB(p_MsgHndlr->h_Mod, msgId, msgBody); + + if (f_CompletionCB) + f_CompletionCB(h_CBArg, msgBody); + + return ans; +} + +t_Error XX_IpcRegisterMsgHandler(char addr[XX_IPC_MAX_ADDR_NAME_LENGTH], + t_IpcMsgHandler *f_MsgHandler, + t_Handle h_Module, + uint32_t replyLength) +{ + UNUSED(addr);UNUSED(f_MsgHandler);UNUSED(h_Module);UNUSED(replyLength); + return E_OK; +} + +t_Error XX_IpcUnregisterMsgHandler(char addr[XX_IPC_MAX_ADDR_NAME_LENGTH]) +{ + UNUSED(addr); + return E_OK; +} + + +t_Error XX_IpcSendMessage(t_Handle h_Session, + uint8_t *p_Msg, + uint32_t msgLength, + uint8_t *p_Reply, + uint32_t *p_ReplyLength, + t_IpcMsgCompletion *f_Completion, + t_Handle h_Arg) +{ + UNUSED(h_Session); UNUSED(p_Msg); UNUSED(msgLength); UNUSED(p_Reply); + UNUSED(p_ReplyLength); UNUSED(f_Completion); UNUSED(h_Arg); + return E_OK; +} + +t_Handle XX_IpcInitSession(char destAddr[XX_IPC_MAX_ADDR_NAME_LENGTH], + char srcAddr[XX_IPC_MAX_ADDR_NAME_LENGTH]) +{ + UNUSED(destAddr); UNUSED(srcAddr); + return E_OK; +} + +/*Forced to introduce due to PRINT_FMT_PARAMS define*/ +uint32_t E500_GetId(void) +{ + return smp_processor_id(); +} + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22) +int GetDeviceIrqNum(int irq) +{ + struct device_node *iPar; + struct irq_domain *irqHost; + uint32_t hwIrq; + + /* Get the interrupt controller */ + iPar = of_find_node_by_name(NULL, "mpic"); + hwIrq = 0; + + ASSERT_COND(iPar != NULL); + /* Get the irq host */ + irqHost = irq_find_host(iPar); + of_node_put(iPar); + + /* Create irq mapping */ + return irq_create_mapping(irqHost, hwIrq); +} +#else +#error "kernel not supported!!!" +#endif /* LINUX_VERSION_CODE */ + +void * XX_PhysToVirt(physAddress_t addr) +{ + return UINT_TO_PTR(SYS_PhysToVirt((uint64_t)addr)); +} + +physAddress_t XX_VirtToPhys(void * addr) +{ + return (physAddress_t)SYS_VirtToPhys(PTR_TO_UINT(addr)); +} + +void * xx_MallocSmart(uint32_t size, int memPartitionId, uint32_t alignment) +{ + uintptr_t *returnCode, tmp; + + if (alignment < sizeof(uintptr_t)) + alignment = sizeof(uintptr_t); + size += alignment + sizeof(returnCode); + tmp = (uintptr_t)xx_Malloc(size); + if (tmp == 0) + return NULL; + returnCode = (uintptr_t*)((tmp + alignment + sizeof(returnCode)) & ~((uintptr_t)alignment - 1)); + *(returnCode - 1) = tmp; + + return (void*)returnCode; +} + +void xx_FreeSmart(void *p) +{ + xx_Free((void*)(*((uintptr_t *)(p) - 1))); +} --- linux-3.13.0.orig/drivers/net/dpa/dpa-ethtool.c +++ linux-3.13.0/drivers/net/dpa/dpa-ethtool.c @@ -0,0 +1,201 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include + +#include "dpaa_eth.h" + +static int __cold dpa_get_settings(struct net_device *net_dev, struct ethtool_cmd *et_cmd) +{ + int _errno; + struct dpa_priv_s *priv; + + priv = netdev_priv(net_dev); + + if (priv->mac_dev == NULL) { + cpu_netdev_info(net_dev, "This is a MAC-less interface\n"); + return -ENODEV; + } + if (unlikely(priv->mac_dev->phy_dev == NULL)) { + cpu_netdev_err(net_dev, "phy device not initialized\n"); + return -ENODEV; + } + + _errno = phy_ethtool_gset(priv->mac_dev->phy_dev, et_cmd); + if (unlikely(_errno < 0)) + cpu_netdev_err(net_dev, "phy_ethtool_gset() = %d\n", _errno); + + return _errno; +} + +static int __cold dpa_set_settings(struct net_device *net_dev, struct ethtool_cmd *et_cmd) +{ + int _errno; + struct dpa_priv_s *priv; + + priv = netdev_priv(net_dev); + + if (priv->mac_dev == NULL) { + cpu_netdev_info(net_dev, "This is a MAC-less interface\n"); + return -ENODEV; + } + if (unlikely(priv->mac_dev->phy_dev == NULL)) { + cpu_netdev_err(net_dev, "phy device not initialized\n"); + return -ENODEV; + } + + _errno = phy_ethtool_sset(priv->mac_dev->phy_dev, et_cmd); + if (unlikely(_errno < 0)) + cpu_netdev_err(net_dev, "phy_ethtool_sset() = %d\n", _errno); + + return _errno; +} + +static void __cold dpa_get_drvinfo(struct net_device *net_dev, struct ethtool_drvinfo *drvinfo) +{ + int _errno; + + strncpy(drvinfo->driver, KBUILD_MODNAME, + sizeof(drvinfo->driver) - 1)[sizeof(drvinfo->driver)-1] = 0; + strncpy(drvinfo->version, VERSION, + sizeof(drvinfo->driver) - 1)[sizeof(drvinfo->version)-1] = 0; + _errno = snprintf(drvinfo->fw_version, sizeof(drvinfo->fw_version), "%X", 0); + + if (unlikely(_errno >= sizeof(drvinfo->fw_version))) { /* Truncated output */ + cpu_netdev_notice(net_dev, "snprintf() = %d\n", _errno); + } else if (unlikely(_errno < 0)) { + cpu_netdev_warn(net_dev, "snprintf() = %d\n", _errno); + memset(drvinfo->fw_version, 0, sizeof(drvinfo->fw_version)); + } + strncpy(drvinfo->bus_info, dev_name(net_dev->dev.parent->parent), + sizeof(drvinfo->bus_info) - 1)[sizeof(drvinfo->bus_info)-1] = 0; +} + +uint32_t __cold dpa_get_msglevel(struct net_device *net_dev) +{ + return ((struct dpa_priv_s *)netdev_priv(net_dev))->msg_enable; +} + +void __cold dpa_set_msglevel(struct net_device *net_dev, uint32_t msg_enable) +{ + ((struct dpa_priv_s *)netdev_priv(net_dev))->msg_enable = msg_enable; +} + +int __cold dpa_nway_reset(struct net_device *net_dev) +{ + int _errno; + struct dpa_priv_s *priv; + + priv = netdev_priv(net_dev); + + if (priv->mac_dev == NULL) { + cpu_netdev_info(net_dev, "This is a MAC-less interface\n"); + return -ENODEV; + } + if (unlikely(priv->mac_dev->phy_dev == NULL)) { + cpu_netdev_err(net_dev, "phy device not initialized\n"); + return -ENODEV; + } + + _errno = 0; + if (priv->mac_dev->phy_dev->autoneg) { + _errno = phy_start_aneg(priv->mac_dev->phy_dev); + if (unlikely(_errno < 0)) + cpu_netdev_err(net_dev, "phy_start_aneg() = %d\n", + _errno); + } + + return _errno; +} + +void __cold dpa_get_ringparam(struct net_device *net_dev, struct ethtool_ringparam *et_ringparam) +{ + et_ringparam->rx_max_pending = 0; + et_ringparam->rx_mini_max_pending = 0; + et_ringparam->rx_jumbo_max_pending = 0; + et_ringparam->tx_max_pending = 0; + + et_ringparam->rx_pending = 0; + et_ringparam->rx_mini_pending = 0; + et_ringparam->rx_jumbo_pending = 0; + et_ringparam->tx_pending = 0; +} + +void __cold dpa_get_pauseparam(struct net_device *net_dev, struct ethtool_pauseparam *et_pauseparam) +{ + struct dpa_priv_s *priv; + + priv = netdev_priv(net_dev); + + if (priv->mac_dev == NULL) { + cpu_netdev_info(net_dev, "This is a MAC-less interface\n"); + return; + } + if (unlikely(priv->mac_dev->phy_dev == NULL)) { + cpu_netdev_err(net_dev, "phy device not initialized\n"); + return; + } + + et_pauseparam->autoneg = priv->mac_dev->phy_dev->autoneg; +} + +int __cold dpa_set_pauseparam(struct net_device *net_dev, struct ethtool_pauseparam *et_pauseparam) +{ + struct dpa_priv_s *priv; + + priv = netdev_priv(net_dev); + + if (priv->mac_dev == NULL) { + cpu_netdev_info(net_dev, "This is a MAC-less interface\n"); + return -ENODEV; + } + if (unlikely(priv->mac_dev->phy_dev == NULL)) { + cpu_netdev_err(net_dev, "phy device not initialized\n"); + return -ENODEV; + } + + priv->mac_dev->phy_dev->autoneg = et_pauseparam->autoneg; + + return 0; +} + +const struct ethtool_ops dpa_ethtool_ops = { + .get_settings = dpa_get_settings, + .set_settings = dpa_set_settings, + .get_drvinfo = dpa_get_drvinfo, + .get_msglevel = dpa_get_msglevel, + .set_msglevel = dpa_set_msglevel, + .nway_reset = dpa_nway_reset, + .get_link = ethtool_op_get_link, + .get_ringparam = dpa_get_ringparam, + .get_pauseparam = dpa_get_pauseparam, + .set_pauseparam = dpa_set_pauseparam, +}; --- linux-3.13.0.orig/drivers/net/dpa/dpaa_1588.c +++ linux-3.13.0/drivers/net/dpa/dpaa_1588.c @@ -0,0 +1,562 @@ +/* + * drivers/net/dpa/dpaa_1588.c + * + * Copyright (C) 2011 Freescale Semiconductor, Inc. + * Copyright (C) 2009 IXXAT Automation, GmbH + * + * DPAA Ethernet Driver -- IEEE 1588 interface functionality + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + * + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "dpaa_eth.h" +#include "dpaa_1588.h" + +static int dpa_ptp_init_circ(struct dpa_ptp_circ_buf *ptp_buf, u32 size) +{ + struct circ_buf *circ_buf = &ptp_buf->circ_buf; + + circ_buf->buf = vmalloc(sizeof(struct dpa_ptp_data) * size); + if (!circ_buf->buf) + return 1; + + circ_buf->head = 0; + circ_buf->tail = 0; + ptp_buf->size = size; + spin_lock_init(&ptp_buf->ptp_lock); + + return 0; +} + +static void dpa_ptp_reset_circ(struct dpa_ptp_circ_buf *ptp_buf, u32 size) +{ + struct circ_buf *circ_buf = &ptp_buf->circ_buf; + + circ_buf->head = 0; + circ_buf->tail = 0; + ptp_buf->size = size; +} + +static int dpa_ptp_insert(struct dpa_ptp_circ_buf *ptp_buf, + struct dpa_ptp_data *data) +{ + struct circ_buf *circ_buf = &ptp_buf->circ_buf; + int size = ptp_buf->size; + struct dpa_ptp_data *tmp; + unsigned long flags; + int head, tail; + + spin_lock_irqsave(&ptp_buf->ptp_lock, flags); + + head = circ_buf->head; + tail = circ_buf->tail; + + if (CIRC_SPACE(head, tail, size) <= 0) { + spin_unlock_irqrestore(&ptp_buf->ptp_lock, flags); + return 1; + } + + tmp = (struct dpa_ptp_data *)(circ_buf->buf) + head; + memcpy(tmp, data, sizeof(struct dpa_ptp_data)); + + circ_buf->head = (head + 1) & (size - 1); + + spin_unlock_irqrestore(&ptp_buf->ptp_lock, flags); + + return 0; +} + +static int dpa_ptp_is_ident_match(struct dpa_ptp_ident *dst, + struct dpa_ptp_ident *src) +{ + int ret; + + if ((dst->version != src->version) || (dst->msg_type != src->msg_type)) + return 0; + + if ((dst->netw_prot == src->netw_prot) + || src->netw_prot == DPA_PTP_PROT_DONTCARE) { + if (dst->seq_id != src->seq_id) + return 0; + + ret = memcmp(dst->snd_port_id, src->snd_port_id, + DPA_PTP_SOURCE_PORT_LENGTH); + if (ret) + return 0; + else + return 1; + } + + return 0; +} + +static int dpa_ptp_find_and_remove(struct dpa_ptp_circ_buf *ptp_buf, + struct dpa_ptp_ident *ident, + struct dpa_ptp_time *ts) +{ + struct circ_buf *circ_buf = &ptp_buf->circ_buf; + int size = ptp_buf->size; + int head, tail, idx; + unsigned long flags; + struct dpa_ptp_data *tmp; + struct dpa_ptp_ident *tmp_ident; + + spin_lock_irqsave(&ptp_buf->ptp_lock, flags); + + head = circ_buf->head; + tail = idx = circ_buf->tail; + + if (CIRC_CNT_TO_END(head, tail, size) == 0) { + spin_unlock_irqrestore(&ptp_buf->ptp_lock, flags); + return 1; + } + + while (idx != head) { + tmp = (struct dpa_ptp_data *)(circ_buf->buf) + idx; + tmp_ident = &tmp->ident; + if (dpa_ptp_is_ident_match(tmp_ident, ident)) + break; + idx = (idx + 1) & (size - 1); + } + + if (idx == head) { + circ_buf->tail = head; + spin_unlock_irqrestore(&ptp_buf->ptp_lock, flags); + return 1; + } + + ts->sec = tmp->ts.sec; + ts->nsec = tmp->ts.nsec; + + circ_buf->tail = (idx + 1) & (size - 1); + + spin_unlock_irqrestore(&ptp_buf->ptp_lock, flags); + + return 0; +} + +static int dpa_ptp_get_time(dma_addr_t fd_addr, u32 *high, u32 *low) +{ + u8 *ts_addr = (u8 *)phys_to_virt(fd_addr); + u32 sec, nsec, mod; + u64 tmp; + + ts_addr += DPA_PTP_TIMESTAMP_OFFSET; + sec = *((u32 *)ts_addr); + nsec = *(((u32 *)ts_addr) + 1); + tmp = ((u64)sec << 32 | nsec) * DPA_PTP_NOMINAL_FREQ_PERIOD; + + mod = do_div(tmp, NANOSEC_PER_SECOND); + *high = (u32)tmp; + *low = mod; + + return 0; +} + +/* + * Parse the PTP packets + * + * The PTP header can be found in an IPv4 packet, IPv6 patcket or in + * an IEEE802.3 ethernet frame. This function returns the position of + * the PTP packet or NULL if no PTP found + */ +static u8 *dpa_ptp_parse_packet(struct sk_buff *skb, u16 *eth_type) +{ + u8 *pos = skb->data + ETH_ALEN + ETH_ALEN; + u8 *ptp_loc = NULL; + u8 msg_type; + struct iphdr *iph; + struct udphdr *udph; + struct ipv6hdr *ipv6h; + + *eth_type = *((u16 *)pos); + + /* Check if inner tag is here */ + if (*eth_type == ETH_P_8021Q) { + pos += DPA_VLAN_TAG_LEN; + *eth_type = *((u16 *)pos); + } + + pos += DPA_ETYPE_LEN; + + switch (*eth_type) { + /* Transport of PTP over Ethernet */ + case ETH_P_1588: + ptp_loc = pos; + msg_type = *((u8 *)(ptp_loc + PTP_OFFS_MSG_TYPE)) & 0xf; + if ((msg_type == PTP_MSGTYPE_SYNC) + || (msg_type == PTP_MSGTYPE_DELREQ) + || (msg_type == PTP_MSGTYPE_PDELREQ) + || (msg_type == PTP_MSGTYPE_PDELRESP)) + return ptp_loc; + break; + /* Transport of PTP over IPv4 */ + case ETH_P_IP: + iph = (struct iphdr *)pos; + if (ntohs(iph->protocol) != IPPROTO_UDP) + return NULL; + + pos += iph->ihl * 4; + udph = (struct udphdr *)pos; + if (ntohs(udph->dest) != 319) + return NULL; + ptp_loc = pos + sizeof(struct udphdr); + break; + /* Transport of PTP over IPv6 */ + case ETH_P_IPV6: + ipv6h = (struct ipv6hdr *)pos; + if (ntohs(ipv6h->nexthdr) != IPPROTO_UDP) + return NULL; + + pos += sizeof(struct ipv6hdr); + udph = (struct udphdr *)pos; + if (ntohs(udph->dest) != 319) + return NULL; + ptp_loc = pos + sizeof(struct udphdr); + break; + default: + break; + } + + return ptp_loc; +} + +static int dpa_ptp_store_stamp(struct net_device *dev, struct sk_buff *skb, + dma_addr_t fd_addr, struct dpa_ptp_data *ptp_data) +{ + u32 sec, nsec; + u8 *ptp_loc; + u16 eth_type; + + ptp_loc = dpa_ptp_parse_packet(skb, ð_type); + if (!ptp_loc) + return -EINVAL; + + switch (eth_type) { + case ETH_P_IP: + ptp_data->ident.netw_prot = DPA_PTP_PROT_IPV4; + break; + case ETH_P_IPV6: + ptp_data->ident.netw_prot = DPA_PTP_PROT_IPV6; + break; + case ETH_P_1588: + ptp_data->ident.netw_prot = DPA_PTP_PROT_802_3; + break; + default: + return -EINVAL; + } + + ptp_data->ident.version = *(ptp_loc + PTP_OFFS_VER_PTP) & 0xf; + ptp_data->ident.msg_type = *(ptp_loc + PTP_OFFS_MSG_TYPE) & 0xf; + ptp_data->ident.seq_id = *((u16 *)(ptp_loc + PTP_OFFS_SEQ_ID)); + memcpy(ptp_data->ident.snd_port_id, ptp_loc + PTP_OFFS_SRCPRTID, + DPA_PTP_SOURCE_PORT_LENGTH); + + dpa_ptp_get_time(fd_addr, &sec, &nsec); + ptp_data->ts.sec = (u64)sec; + ptp_data->ts.nsec = nsec; + + return 0; +} + +void dpa_ptp_store_txstamp(struct net_device *dev, struct sk_buff *skb, + const struct qm_fd *fd) +{ + struct dpa_priv_s *priv = netdev_priv(dev); + struct dpa_ptp_tsu *tsu = priv->tsu; + struct dpa_ptp_data ptp_tx_data; + dma_addr_t fd_addr = qm_fd_addr(fd); + int ret; + + ret = dpa_ptp_store_stamp(dev, skb, fd_addr, &ptp_tx_data); + if (ret) + return; + dpa_ptp_insert(&tsu->tx_timestamps, &ptp_tx_data); +} + +void dpa_ptp_store_rxstamp(struct net_device *dev, struct sk_buff *skb, + const struct qm_fd *fd) +{ + struct dpa_priv_s *priv = netdev_priv(dev); + struct dpa_ptp_tsu *tsu = priv->tsu; + struct dpa_ptp_data ptp_rx_data; + dma_addr_t fd_addr = qm_fd_addr(fd); + int ret; + + ret = dpa_ptp_store_stamp(dev, skb, fd_addr, &ptp_rx_data); + if (ret) + return; + dpa_ptp_insert(&tsu->rx_timestamps, &ptp_rx_data); +} + +static uint8_t dpa_get_tx_timestamp(struct dpa_ptp_tsu *ptp_tsu, + struct dpa_ptp_ident *ident, + struct dpa_ptp_time *ts) +{ + struct dpa_ptp_tsu *tsu = ptp_tsu; + struct dpa_ptp_time tmp; + int flag; + + flag = dpa_ptp_find_and_remove(&tsu->tx_timestamps, ident, &tmp); + if (!flag) { + ts->sec = tmp.sec; + ts->nsec = tmp.nsec; + return 0; + } + + return -1; +} + +static uint8_t dpa_get_rx_timestamp(struct dpa_ptp_tsu *ptp_tsu, + struct dpa_ptp_ident *ident, + struct dpa_ptp_time *ts) +{ + struct dpa_ptp_tsu *tsu = ptp_tsu; + struct dpa_ptp_time tmp; + int flag; + + flag = dpa_ptp_find_and_remove(&tsu->rx_timestamps, ident, &tmp); + if (!flag) { + ts->sec = tmp.sec; + ts->nsec = tmp.nsec; + return 0; + } + + return -1; +} + +static void dpa_set_fiper_alarm(struct dpa_ptp_tsu *tsu, + struct dpa_ptp_time *cnt_time) +{ + struct mac_device *mac_dev = tsu->dpa_priv->mac_dev; + u64 tmp, fiper; + + if (mac_dev->fm_rtc_disable) + mac_dev->fm_rtc_disable(tsu->dpa_priv->net_dev); + + /* TMR_FIPER1 will pulse every second after ALARM1 expired */ + tmp = (u64)cnt_time->sec * NANOSEC_PER_SECOND + (u64)cnt_time->nsec; + fiper = NANOSEC_PER_SECOND - DPA_PTP_NOMINAL_FREQ_PERIOD; + if (mac_dev->fm_rtc_set_alarm) + mac_dev->fm_rtc_set_alarm(tsu->dpa_priv->net_dev, 0, tmp); + if (mac_dev->fm_rtc_set_fiper) + mac_dev->fm_rtc_set_fiper(tsu->dpa_priv->net_dev, 0, fiper); + + if (mac_dev->fm_rtc_enable) + mac_dev->fm_rtc_enable(tsu->dpa_priv->net_dev); +} + +static void dpa_get_curr_cnt(struct dpa_ptp_tsu *tsu, + struct dpa_ptp_time *curr_time) +{ + struct mac_device *mac_dev = tsu->dpa_priv->mac_dev; + u64 tmp; + u32 mod; + + if (mac_dev->fm_rtc_get_cnt) + mac_dev->fm_rtc_get_cnt(tsu->dpa_priv->net_dev, &tmp); + + mod = do_div(tmp, NANOSEC_PER_SECOND); + curr_time->sec = (u32)tmp; + curr_time->nsec = mod; +} + +static void dpa_set_1588cnt(struct dpa_ptp_tsu *tsu, + struct dpa_ptp_time *cnt_time) +{ + struct mac_device *mac_dev = tsu->dpa_priv->mac_dev; + u64 tmp; + + tmp = (u64)cnt_time->sec * NANOSEC_PER_SECOND + (u64)cnt_time->nsec; + + if (mac_dev->fm_rtc_set_cnt) + mac_dev->fm_rtc_set_cnt(tsu->dpa_priv->net_dev, tmp); + + /* Restart fiper two seconds later */ + cnt_time->sec += 2; + cnt_time->nsec = 0; + dpa_set_fiper_alarm(tsu, cnt_time); +} + +static void dpa_get_drift(struct dpa_ptp_tsu *tsu, u32 *addend) +{ + struct mac_device *mac_dev = tsu->dpa_priv->mac_dev; + u32 drift; + + if (mac_dev->fm_rtc_get_drift) + mac_dev->fm_rtc_get_drift(tsu->dpa_priv->net_dev, &drift); + + *addend = drift; +} + +static void dpa_set_drift(struct dpa_ptp_tsu *tsu, u32 addend) +{ + struct mac_device *mac_dev = tsu->dpa_priv->mac_dev; + + if (mac_dev->fm_rtc_set_drift) + mac_dev->fm_rtc_set_drift(tsu->dpa_priv->net_dev, addend); +} + +static void dpa_flush_timestamp(struct dpa_ptp_tsu *tsu) +{ + dpa_ptp_reset_circ(&tsu->rx_timestamps, DEFAULT_PTP_RX_BUF_SZ); + dpa_ptp_reset_circ(&tsu->tx_timestamps, DEFAULT_PTP_TX_BUF_SZ); +} + +int dpa_ioctl_1588(struct net_device *dev, struct ifreq *ifr, int cmd) +{ + struct dpa_priv_s *priv = netdev_priv(dev); + struct dpa_ptp_tsu *tsu = priv->tsu; + struct mac_device *mac_dev = priv->mac_dev; + struct dpa_ptp_data ptp_data; + struct dpa_ptp_data *ptp_data_user; + struct dpa_ptp_time act_time; + u32 addend; + int retval = 0; + + if (!tsu || !tsu->valid) + return -ENODEV; + + switch (cmd) { + case PTP_ENBL_TXTS_IOCTL: + tsu->hwts_tx_en_ioctl = 1; + if (mac_dev->ptp_enable) + mac_dev->ptp_enable(mac_dev); + break; + case PTP_DSBL_TXTS_IOCTL: + tsu->hwts_tx_en_ioctl = 0; + if (mac_dev->ptp_disable) + mac_dev->ptp_disable(mac_dev); + break; + case PTP_ENBL_RXTS_IOCTL: + tsu->hwts_rx_en_ioctl = 1; + break; + case PTP_DSBL_RXTS_IOCTL: + tsu->hwts_rx_en_ioctl = 0; + break; + case PTP_GET_RX_TIMESTAMP: + ptp_data_user = (struct dpa_ptp_data *)ifr->ifr_data; + if (copy_from_user(&ptp_data.ident, + &ptp_data_user->ident, sizeof(ptp_data.ident))) + return -EINVAL; + + if (dpa_get_rx_timestamp(tsu, &ptp_data.ident, &ptp_data.ts)) + return -EAGAIN; + + if (copy_to_user((void __user *)&ptp_data_user->ts, + &ptp_data.ts, sizeof(ptp_data.ts))) + return -EFAULT; + break; + case PTP_GET_TX_TIMESTAMP: + ptp_data_user = (struct dpa_ptp_data *)ifr->ifr_data; + if (copy_from_user(&ptp_data.ident, + &ptp_data_user->ident, sizeof(ptp_data.ident))) + return -EINVAL; + + if (dpa_get_tx_timestamp(tsu, &ptp_data.ident, &ptp_data.ts)) + return -EAGAIN; + + if (copy_to_user((void __user *)&ptp_data_user->ts, + &ptp_data.ts, sizeof(ptp_data.ts))) + return -EFAULT; + break; + case PTP_GET_TIME: + dpa_get_curr_cnt(tsu, &act_time); + if (copy_to_user(ifr->ifr_data, &act_time, sizeof(act_time))) + return -EFAULT; + break; + case PTP_SET_TIME: + if (copy_from_user(&act_time, ifr->ifr_data, sizeof(act_time))) + return -EINVAL; + dpa_set_1588cnt(tsu, &act_time); + break; + case PTP_GET_ADJ: + dpa_get_drift(tsu, &addend); + if (copy_to_user(ifr->ifr_data, &addend, sizeof(addend))) + return -EFAULT; + break; + case PTP_SET_ADJ: + if (copy_from_user(&addend, ifr->ifr_data, sizeof(addend))) + return -EINVAL; + dpa_set_drift(tsu, addend); + break; + case PTP_SET_FIPER_ALARM: + if (copy_from_user(&act_time, ifr->ifr_data, sizeof(act_time))) + return -EINVAL; + dpa_set_fiper_alarm(tsu, &act_time); + break; + case PTP_CLEANUP_TS: + dpa_flush_timestamp(tsu); + break; + default: + return -EINVAL; + } + + return retval; +} + +int dpa_ptp_init(struct dpa_priv_s *priv) +{ + struct dpa_ptp_tsu *tsu; + + /* Allocate memory for PTP structure */ + tsu = kzalloc(sizeof(struct dpa_ptp_tsu), GFP_KERNEL); + if (!tsu) + return -ENOMEM; + + memset(tsu, 0, sizeof(*tsu)); + tsu->valid = TRUE; + tsu->dpa_priv = priv; + + dpa_ptp_init_circ(&tsu->rx_timestamps, DEFAULT_PTP_RX_BUF_SZ); + dpa_ptp_init_circ(&tsu->tx_timestamps, DEFAULT_PTP_TX_BUF_SZ); + + priv->tsu = tsu; + + return 0; +} +EXPORT_SYMBOL(dpa_ptp_init); + +void dpa_ptp_cleanup(struct dpa_priv_s *priv) +{ + struct dpa_ptp_tsu *tsu = priv->tsu; + + tsu->valid = FALSE; + vfree(tsu->rx_timestamps.circ_buf.buf); + vfree(tsu->tx_timestamps.circ_buf.buf); + + kfree(tsu); +} +EXPORT_SYMBOL(dpa_ptp_cleanup); + +static int __init __cold dpa_ptp_load(void) +{ + return 0; +} +module_init(dpa_ptp_load); + +static void __exit __cold dpa_ptp_unload(void) +{ +} +module_exit(dpa_ptp_unload); --- linux-3.13.0.orig/drivers/net/dpa/dpaa_1588.h +++ linux-3.13.0/drivers/net/dpa/dpaa_1588.h @@ -0,0 +1,141 @@ +/* + * drivers/net/dpa/dpaa_1588.h + * + * Copyright (C) 2011 Freescale Semiconductor, Inc. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + * + */ +#ifndef __DPAA_1588_H__ +#define __DPAA_1588_H__ + +#include +#include +#include +#include + +#define DEFAULT_PTP_RX_BUF_SZ 2048 +#define DEFAULT_PTP_TX_BUF_SZ 512 + +/* 1588 private ioctl calls */ +#define PTP_ENBL_TXTS_IOCTL SIOCDEVPRIVATE +#define PTP_DSBL_TXTS_IOCTL (SIOCDEVPRIVATE + 1) +#define PTP_ENBL_RXTS_IOCTL (SIOCDEVPRIVATE + 2) +#define PTP_DSBL_RXTS_IOCTL (SIOCDEVPRIVATE + 3) +#define PTP_GET_TX_TIMESTAMP (SIOCDEVPRIVATE + 4) +#define PTP_GET_RX_TIMESTAMP (SIOCDEVPRIVATE + 5) +#define PTP_SET_TIME (SIOCDEVPRIVATE + 6) +#define PTP_GET_TIME (SIOCDEVPRIVATE + 7) +#define PTP_SET_FIPER_ALARM (SIOCDEVPRIVATE + 8) +#define PTP_SET_ADJ (SIOCDEVPRIVATE + 9) +#define PTP_GET_ADJ (SIOCDEVPRIVATE + 10) +#define PTP_CLEANUP_TS (SIOCDEVPRIVATE + 11) + +/* PTP V2 message type */ +enum { + PTP_MSGTYPE_SYNC = 0x0, + PTP_MSGTYPE_DELREQ = 0x1, + PTP_MSGTYPE_PDELREQ = 0x2, + PTP_MSGTYPE_PDELRESP = 0x3, + PTP_MSGTYPE_FLWUP = 0x8, + PTP_MSGTYPE_DELRESP = 0x9, + PTP_MSGTYPE_PDELRES_FLWUP = 0xA, + PTP_MSGTYPE_ANNOUNCE = 0xB, + PTP_MSGTYPE_SGNLNG = 0xC, + PTP_MSGTYPE_MNGMNT = 0xD, +}; + +/* Byte offset of data in the PTP V2 headers */ +#define PTP_OFFS_MSG_TYPE 0 +#define PTP_OFFS_VER_PTP 1 +#define PTP_OFFS_MSG_LEN 2 +#define PTP_OFFS_DOM_NMB 4 +#define PTP_OFFS_FLAGS 6 +#define PTP_OFFS_CORFIELD 8 +#define PTP_OFFS_SRCPRTID 20 +#define PTP_OFFS_SEQ_ID 30 +#define PTP_OFFS_CTRL 32 +#define PTP_OFFS_LOGMEAN 33 + +#define PTP_IP_OFFS 14 +#define PTP_UDP_OFFS 34 +#define PTP_HEADER_OFFS 42 +#define PTP_MSG_TYPE_OFFS (PTP_HEADER_OFFS + PTP_OFFS_MSG_TYPE) +#define PTP_SPORT_ID_OFFS (PTP_HEADER_OFFS + PTP_OFFS_SRCPRTID) +#define PTP_SEQ_ID_OFFS (PTP_HEADER_OFFS + PTP_OFFS_SEQ_ID) +#define PTP_CTRL_OFFS (PTP_HEADER_OFFS + PTP_OFFS_CTRL) + +/* 1588-2008 network protocol enumeration values */ +#define DPA_PTP_PROT_IPV4 1 +#define DPA_PTP_PROT_IPV6 2 +#define DPA_PTP_PROT_802_3 3 +#define DPA_PTP_PROT_DONTCARE 0xFFFF + +#define DPA_PTP_SOURCE_PORT_LENGTH 10 +#define DPA_PTP_HEADER_SZE 34 +#define DPA_ETYPE_LEN 2 +#define DPA_VLAN_TAG_LEN 4 + +#define DPA_PTP_TIMESTAMP_OFFSET 0x30 +#define DPA_PTP_NOMINAL_FREQ_PERIOD 0xa /* 10ns -> 100M */ +#define NANOSEC_PER_SECOND 1000000000 + +/* Struct needed to identify a timestamp */ +struct dpa_ptp_ident { + u8 version; + u8 msg_type; + u16 netw_prot; + u16 seq_id; + u8 snd_port_id[DPA_PTP_SOURCE_PORT_LENGTH]; +}; + +/* Timestamp format in 1588-2008 */ +struct dpa_ptp_time { + u64 sec; /* just 48 bit used */ + u32 nsec; +}; + +/* needed for timestamp data over ioctl */ +struct dpa_ptp_data { + struct dpa_ptp_ident ident; + struct dpa_ptp_time ts; +}; + +struct dpa_ptp_circ_buf { + struct circ_buf circ_buf; + u32 size; + spinlock_t ptp_lock; +}; + +/* PTP TSU control structure */ +struct dpa_ptp_tsu { + struct dpa_priv_s *dpa_priv; + bool valid; + struct dpa_ptp_circ_buf rx_timestamps; + struct dpa_ptp_circ_buf tx_timestamps; + + /* HW timestamping over ioctl enabled flag */ + int hwts_tx_en_ioctl; + int hwts_rx_en_ioctl; +}; + +extern int dpa_ptp_init(struct dpa_priv_s *priv); +extern void dpa_ptp_cleanup(struct dpa_priv_s *priv); +extern void dpa_ptp_store_txstamp(struct net_device *dev, struct sk_buff *skb, + const struct qm_fd *fd); +extern void dpa_ptp_store_rxstamp(struct net_device *dev, struct sk_buff *skb, + const struct qm_fd *fd); +extern int dpa_ioctl_1588(struct net_device *dev, struct ifreq *ifr, int cmd); +#endif --- linux-3.13.0.orig/drivers/net/dpa/dpaa_eth-common.h +++ linux-3.13.0/drivers/net/dpa/dpaa_eth-common.h @@ -0,0 +1,150 @@ +/* + * Copyright 2008-2011 Freescale Semiconductor Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __DPA_COMMON_H +#define __DPA_COMMON_H + +#include /* pr_*() */ +#include /* dev_*() */ +#include /* smp_processor_id() */ + +/* The basename of the source file is being compiled */ +#define __file__ KBUILD_BASENAME".c" + +#define __hot + +#define cpu_printk(level, format, arg...) \ + pr_##level("cpu%d: " format, smp_processor_id(), ##arg) + +#define cpu_pr_emerg(format, arg...) \ + cpu_printk(emerg, format, ##arg) +#define cpu_pr_alert(format, arg...) \ + cpu_printk(alert, format, ##arg) +#define cpu_pr_crit(format, arg...) \ + cpu_printk(crit, format, ##arg) +#define cpu_pr_err(format, arg...) \ + cpu_printk(err, format, ##arg) +#define cpu_pr_warning(format, arg...) \ + cpu_printk(warning, format, ##arg) +#define cpu_pr_notice(format, arg...) \ + cpu_printk(notice, format, ##arg) +#define cpu_pr_info(format, arg...) \ + cpu_printk(info, format, ##arg) +#define cpu_pr_debug(format, arg...) \ + cpu_printk(debug, format, ##arg) + +/* Keep this in sync with the dev_*() definitions from linux/device.h */ +#define cpu_dev_printk(level, dev, format, arg...) \ + cpu_pr_##level("%s: %s: " format, dev_driver_string(dev), \ + dev_name(dev), ##arg) + +#define cpu_dev_emerg(dev, format, arg...) \ + cpu_dev_printk(emerg, dev, format, ##arg) +#define cpu_dev_alert(dev, format, arg...) \ + cpu_dev_printk(alert, dev, format, ##arg) +#define cpu_dev_crit(dev, format, arg...) \ + cpu_dev_printk(crit, dev, format, ##arg) +#define cpu_dev_err(dev, format, arg...) \ + cpu_dev_printk(err, dev, format, ##arg) +#define cpu_dev_warn(dev, format, arg...) \ + cpu_dev_printk(warning, dev, format, ##arg) +#define cpu_dev_notice(dev, format, arg...) \ + cpu_dev_printk(notice, dev, format, ##arg) +#define cpu_dev_info(dev, format, arg...) \ + cpu_dev_printk(info, dev, format, ##arg) +#define cpu_dev_dbg(dev, format, arg...) \ + cpu_dev_printk(debug, dev, format, ##arg) + +#define dpaa_eth_printk(level, dev, format, arg...) \ + cpu_dev_printk(level, dev, "%s:%hu:%s() " format, \ + __file__, __LINE__, __func__, ##arg) + +#define dpaa_eth_emerg(dev, format, arg...) \ + dpaa_eth_printk(emerg, dev, format, ##arg) +#define dpaa_eth_alert(dev, format, arg...) \ + dpaa_eth_printk(alert, dev, format, ##arg) +#define dpaa_eth_crit(dev, format, arg...) \ + dpaa_eth_printk(crit, dev, format, ##arg) +#define dpaa_eth_err(dev, format, arg...) \ + dpaa_eth_printk(err, dev, format, ##arg) +#define dpaa_eth_warning(dev, format, arg...) \ + dpaa_eth_printk(warning, dev, format, ##arg) +#define dpaa_eth_notice(dev, format, arg...) \ + dpaa_eth_printk(notice, dev, format, ##arg) +#define dpaa_eth_info(dev, format, arg...) \ + dpaa_eth_printk(info, dev, format, ##arg) +#define dpaa_eth_debug(dev, format, arg...) \ + dpaa_eth_printk(debug, dev, format, ##arg) + +#define cpu_netdev_emerg(net_dev, format, arg...) \ + dpaa_eth_emerg((net_dev)->dev.parent, "%s: " format, \ + (net_dev)->name , ##arg) +#define cpu_netdev_alert(net_dev, format, arg...) \ + dpaa_eth_alert((net_dev)->dev.parent, "%s: " format, \ + (net_dev)->name , ##arg) +#define cpu_netdev_crit(net_dev, format, arg...) \ + dpaa_eth_crit((net_dev)->dev.parent, "%s: " format, \ + (net_dev)->name , ##arg) +#define cpu_netdev_err(net_dev, format, arg...) \ + dpaa_eth_err((net_dev)->dev.parent, "%s: " format, \ + (net_dev)->name , ##arg) +#define cpu_netdev_warn(net_dev, format, arg...) \ + dpaa_eth_warning((net_dev)->dev.parent, "%s: " format, \ + (net_dev)->name , ##arg) +#define cpu_netdev_notice(net_dev, format, arg...) \ + dpaa_eth_notice((net_dev)->dev.parent, "%s: " format, \ + (net_dev)->name , ##arg) +#define cpu_netdev_info(net_dev, format, arg...) \ + dpaa_eth_info((net_dev)->dev.parent, "%s: " format, \ + (net_dev)->name , ##arg) +#define cpu_netdev_dbg(net_dev, format, arg...) \ + dpaa_eth_debug((net_dev)->dev.parent, "%s: " format, \ + (net_dev)->name , ##arg) + +enum {RX, TX}; + +#define DPA_PRIV_DATA_SIZE 16 +#define DPA_PARSE_RESULTS_SIZE sizeof(t_FmPrsResult) +#define DPA_HASH_RESULTS_SIZE 16 + +#define dpaa_eth_init_port(type, port, param, errq_id, defq_id, has_timer) \ +{ \ + param.errq = errq_id; \ + param.defq = defq_id; \ + param.priv_data_size = DPA_PRIV_DATA_SIZE; \ + param.parse_results = true; \ + param.hash_results = true; \ + param.time_stamp = has_timer; \ + fm_set_##type##_port_params(port, ¶m); \ +} + +#endif /* __DPA_COMMON_H */ --- linux-3.13.0.orig/drivers/net/dpa/dpaa_eth.c +++ linux-3.13.0/drivers/net/dpa/dpaa_eth.c @@ -0,0 +1,3237 @@ +/* + * Copyright 2008-2011 Freescale Semiconductor Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include /* arp_hdr_len() */ +#include /* VLAN_HLEN */ +#include /* struct icmphdr */ +#include /* struct iphdr */ +#include /* struct ipv6hdr */ +#include /* struct udphdr */ +#include /* struct tcphdr */ +#include /* net_ratelimit() */ +#include /* ETH_P_IP and ETH_P_IPV6 */ +#include +#include +#include +#include /* get_hard_smp_processor_id() */ +#include +#ifdef CONFIG_DEBUG_FS +#include +#endif +#include + +#include "fsl_fman.h" +#include "fm_ext.h" +#include "fm_port_ext.h" + +#include "mac.h" +#include "dpaa_eth.h" +#include "dpaa_1588.h" + +#define ARRAY2_SIZE(arr) (ARRAY_SIZE(arr) * ARRAY_SIZE((arr)[0])) + +#define DPA_NETIF_FEATURES (NETIF_F_HW_QDISC) +#define DEFAULT_COUNT 64 +#define DEFAULT_BUF_SIZE DPA_BP_SIZE(fsl_fman_phy_maxfrm); +#define DPA_MAX_TX_BACKLOG 512 +#define DPA_NAPI_WEIGHT 64 + +#define DPA_BP_REFILL (1 | (smp_processor_id() << 16)) +#define DPA_BP_FINE ((smp_processor_id() << 16)) +#define DPA_BP_REFILL_NEEDED 1 + +/* Bootarg used to override the Kconfig DPA_MAX_FRM_SIZE value */ +#define FSL_FMAN_PHY_MAXFRM_BOOTARG "fsl_fman_phy_max_frm" + +/* + * Values for the L3R field of the FM Parse Results + */ +/* L3 Type field: First IP Present IPv4 */ +#define FM_L3_PARSE_RESULT_IPV4 0x8000 +/* L3 Type field: First IP Present IPv6 */ +#define FM_L3_PARSE_RESULT_IPV6 0x4000 + +/* + * Values for the L4R field of the FM Parse Results + */ +/* L4 Type field: UDP */ +#define FM_L4_PARSE_RESULT_UDP 0x40 +/* L4 Type field: TCP */ +#define FM_L4_PARSE_RESULT_TCP 0x20 + +/* + * FD status field indicating whether the FM Parser has attempted to validate + * the L4 csum of the frame. + * Note that having this bit set doesn't necessarily imply that the checksum + * is valid. One would have to check the parse results to find that out. + */ +#define FM_FD_STAT_L4CV 0x00000004 + +#define DPA_DESCRIPTION "FSL DPAA Ethernet driver" + +MODULE_LICENSE("Dual BSD/GPL"); + +MODULE_AUTHOR("Andy Fleming "); + +MODULE_DESCRIPTION(DPA_DESCRIPTION); + +static uint8_t debug = -1; +module_param(debug, byte, S_IRUGO); +MODULE_PARM_DESC(debug, "Module/Driver verbosity level"); + +static uint16_t tx_timeout = 1000; +module_param(tx_timeout, ushort, S_IRUGO); +MODULE_PARM_DESC(tx_timeout, "The Tx timeout in ms"); + +#ifdef CONFIG_DEBUG_FS +static struct dentry *dpa_debugfs_root; +#endif + +/* + * Max frame size, across all interfaces. + * Configurable from Kconfig or bootargs, to avoid allocating + * oversized (socket) buffers when not using jumbo frames. + * Must be large enough to accomodate the network MTU, but small enough + * to avoid wasting skb memory. + * + * Could be overridden once, at boot-time, via the + * fsl_fman_phy_set_max_frm() callback. + */ +int fsl_fman_phy_maxfrm = CONFIG_DPA_MAX_FRM_SIZE; + +static const char rtx[][3] = { + [RX] = "RX", + [TX] = "TX" +}; + +struct dpa_fq { + struct qman_fq fq_base; + struct list_head list; + struct net_device *net_dev; + bool init; + uint32_t fqid; + uint32_t flags; + uint16_t channel; + uint8_t wq; +}; + +/* BM */ + +#ifdef DEBUG +#define GFP_DPA_BP (GFP_DMA | __GFP_ZERO | GFP_ATOMIC) +#else +#define GFP_DPA_BP (GFP_DMA | GFP_ATOMIC) +#endif + +#define DPA_BP_HEAD (DPA_PRIV_DATA_SIZE + DPA_PARSE_RESULTS_SIZE + \ + DPA_HASH_RESULTS_SIZE) +#define DPA_BP_SIZE(s) (DPA_BP_HEAD + (s)) + +#define DPAA_ETH_MAX_PAD (L1_CACHE_BYTES * 8) + +#define FM_FD_STAT_ERRORS \ + (FM_PORT_FRM_ERR_DMA | FM_PORT_FRM_ERR_PHYSICAL | \ + FM_PORT_FRM_ERR_SIZE | FM_PORT_FRM_ERR_CLS_DISCARD | \ + FM_PORT_FRM_ERR_EXTRACTION | FM_PORT_FRM_ERR_NO_SCHEME | \ + FM_PORT_FRM_ERR_ILL_PLCR | FM_PORT_FRM_ERR_PRS_TIMEOUT | \ + FM_PORT_FRM_ERR_PRS_ILL_INSTRUCT | FM_PORT_FRM_ERR_PRS_HDR_ERR) + +static struct dpa_bp *dpa_bp_array[64]; + +static struct dpa_bp *default_pool; + +static struct dpa_bp *dpa_bpid2pool(int bpid) +{ + return dpa_bp_array[bpid]; +} + +static void dpa_bp_depletion(struct bman_portal *portal, + struct bman_pool *pool, void *cb_ctx, int depleted) +{ + if (net_ratelimit()) + pr_err("Invalid Pool depleted notification!\n"); +} + +static void bmb_free(struct dpa_bp *bp, struct bm_buffer *bmb) +{ + int i; + struct sk_buff **skbh; + struct sk_buff *skb; + + for (i = 0; i < 8; i++) { + dma_addr_t addr = bm_buf_addr(&bmb[i]); + if (!addr) + break; + + skbh = (struct sk_buff **)phys_to_virt(addr); + skb = *skbh; + + dma_unmap_single(bp->dev, addr, bp->size, DMA_FROM_DEVICE); + + dev_kfree_skb(skb); + } +} + +static void dpa_bp_add_8(struct dpa_bp *dpa_bp) +{ + struct bm_buffer bmb[8]; + struct sk_buff **skbh; + dma_addr_t addr; + int i; + struct sk_buff *skb; + int err; + int *count_ptr; + + count_ptr = per_cpu_ptr(dpa_bp->percpu_count, smp_processor_id()); + + for (i = 0; i < 8; i++) { + /* + * The buffers tend to be aligned all to the same cache + * index. A standard dequeue operation pulls in 15 packets. + * This means that when it stashes, it evicts half of the + * packets it's stashing. In order to prevent that, we pad + * by a variable number of cache lines, to reduce collisions. + * We always pad by at least 1 cache line, because we want + * a little extra room at the beginning for IPSec and to + * accommodate NET_IP_ALIGN. + */ + int pad = (i + 1) * L1_CACHE_BYTES; + + skb = dev_alloc_skb(dpa_bp->size + pad); + if (unlikely(!skb)) { + printk(KERN_ERR "dev_alloc_skb() failed for %d bytes\n", dpa_bp->size + pad); + bm_buffer_set64(&bmb[i], 0); + break; + } + + skbh = (struct sk_buff **)(skb->head + pad); + *skbh = skb; + + addr = dma_map_single(dpa_bp->dev, skb->head + pad, + dpa_bp->size, DMA_FROM_DEVICE); + + bm_buffer_set64(&bmb[i], addr); + } + + /* Avoid releasing a completely null buffer; bman_release() requires + * at least one buf. */ + if (likely(i)) { + err = bman_release(dpa_bp->pool, bmb, i, 0); + + if (unlikely(err < 0)) + bmb_free(dpa_bp, bmb); + else + *count_ptr += i; + } +} + +static void dpa_make_private_pool(struct dpa_bp *dpa_bp) +{ + int i; + + dpa_bp->percpu_count = __alloc_percpu(sizeof(*dpa_bp->percpu_count), + __alignof__(*dpa_bp->percpu_count)); + + /* Give each cpu an allotment of "count" buffers */ + for_each_online_cpu(i) { + int *thiscount; + int *countptr; + int j; + thiscount = per_cpu_ptr(dpa_bp->percpu_count, + smp_processor_id()); + countptr = per_cpu_ptr(dpa_bp->percpu_count, i); + + for (j = 0; j < dpa_bp->count; j += 8) + dpa_bp_add_8(dpa_bp); + + /* Adjust the counts */ + *countptr = j; + + if (countptr != thiscount) + *thiscount = *thiscount - j; + } +} + + +static void dpaa_eth_seed_pool(struct dpa_bp *bp) +{ + size_t count = bp->count; + size_t addr = bp->paddr; + + while (count) { + struct bm_buffer bufs[8]; + int num_bufs = 0; + + do { + BUG_ON(addr > 0xffffffffffffull); + bufs[num_bufs].bpid = bp->bpid; + bm_buffer_set64(&bufs[num_bufs++], addr); + addr += bp->size; + + } while (--count && (num_bufs < 8)); + + while (bman_release(bp->pool, bufs, num_bufs, 0)) + cpu_relax(); + } +} + +static int dpa_make_shared_pool(struct dpa_bp *bp) +{ + devm_request_mem_region(bp->dev, bp->paddr, bp->size * bp->count, + KBUILD_MODNAME); + bp->vaddr = devm_ioremap_prot(bp->dev, bp->paddr, + bp->size * bp->count, 0); + if (bp->vaddr == NULL) { + cpu_pr_err("Could not map memory for pool %d\n", bp->bpid); + return -EIO; + } + + if (bp->seed_pool) + dpaa_eth_seed_pool(bp); + + return 0; +} + +static int __must_check __attribute__((nonnull)) +dpa_bp_alloc(struct dpa_bp *dpa_bp) +{ + int err = 0; + struct bman_pool_params bp_params; + struct platform_device *pdev; + + BUG_ON(dpa_bp->size == 0); + BUG_ON(dpa_bp->count == 0); + + bp_params.flags = BMAN_POOL_FLAG_DEPLETION; + bp_params.cb = dpa_bp_depletion; + bp_params.cb_ctx = dpa_bp; + + /* We support two options. Either a global shared pool, or + * a specified pool. If the pool is specified, we only + * create one per bpid */ + if (dpa_bp->kernel_pool && default_pool) { + atomic_inc(&default_pool->refs); + return 0; + } + + if (dpa_bp_array[dpa_bp->bpid]) { + atomic_inc(&dpa_bp_array[dpa_bp->bpid]->refs); + return 0; + } + + if (dpa_bp->bpid == 0) + bp_params.flags |= BMAN_POOL_FLAG_DYNAMIC_BPID; + else + bp_params.bpid = dpa_bp->bpid; + + dpa_bp->pool = bman_new_pool(&bp_params); + if (unlikely(dpa_bp->pool == NULL)) { + cpu_pr_err("bman_new_pool() failed\n"); + return -ENODEV; + } + + dpa_bp->bpid = bman_get_params(dpa_bp->pool)->bpid; + + pdev = platform_device_register_simple("dpaa_eth_bpool", + dpa_bp->bpid, NULL, 0); + if (IS_ERR(pdev)) { + err = PTR_ERR(pdev); + goto pdev_register_failed; + } + + if (dma_set_mask(&pdev->dev, DMA_BIT_MASK(40))) + goto pdev_mask_failed; + + dpa_bp->dev = &pdev->dev; + + if (dpa_bp->kernel_pool) { + dpa_make_private_pool(dpa_bp); + if (!default_pool) + default_pool = dpa_bp; + } else { + err = dpa_make_shared_pool(dpa_bp); + if (err) + goto make_shared_pool_failed; + } + + dpa_bp_array[dpa_bp->bpid] = dpa_bp; + + atomic_set(&dpa_bp->refs, 1); + + return 0; + +make_shared_pool_failed: +pdev_mask_failed: + platform_device_unregister(pdev); +pdev_register_failed: + bman_free_pool(dpa_bp->pool); + + return err; +} + +static void __cold __attribute__((nonnull)) +_dpa_bp_free(struct dpa_bp *dpa_bp) +{ + struct dpa_bp *bp = dpa_bpid2pool(dpa_bp->bpid); + + if (!atomic_dec_and_test(&bp->refs)) + return; + + if (bp->kernel_pool) { + int num; + + do { + struct bm_buffer bmb[8]; + int i; + + num = bman_acquire(bp->pool, bmb, 8, 0); + + for (i = 0; i < num; i++) { + dma_addr_t addr = bm_buf_addr(&bmb[i]); + struct sk_buff **skbh = phys_to_virt(addr); + struct sk_buff *skb = *skbh; + + dma_unmap_single(bp->dev, addr, bp->size, + DMA_FROM_DEVICE); + + dev_kfree_skb_any(skb); + } + } while (num == 8); + } + + dpa_bp_array[bp->bpid] = 0; + bman_free_pool(bp->pool); +} + +static void __cold __attribute__((nonnull)) +dpa_bp_free(struct dpa_priv_s *priv, struct dpa_bp *dpa_bp) +{ + int i; + + for (i = 0; i < priv->bp_count; i++) + _dpa_bp_free(&priv->dpa_bp[i]); +} + +/* QM */ + +static int __must_check __attribute__((nonnull)) +_dpa_fq_alloc(struct list_head *list, struct dpa_fq *dpa_fq) +{ + int _errno; + const struct dpa_priv_s *priv; + struct device *dev; + struct qman_fq *fq; + struct qm_mcc_initfq initfq; + /* Set the QMan taildrop threshold high enough to accomodate + * one 64k frame, plus an extra (here, 16k) for + * other frames awaiting Tx. */ + const u32 qman_taildrop_threshold = 0x14000; + + priv = netdev_priv(dpa_fq->net_dev); + dev = dpa_fq->net_dev->dev.parent; + + if (dpa_fq->fqid == 0) + dpa_fq->flags |= QMAN_FQ_FLAG_DYNAMIC_FQID; + + dpa_fq->init = !(dpa_fq->flags & QMAN_FQ_FLAG_NO_MODIFY); + + _errno = qman_create_fq(dpa_fq->fqid, dpa_fq->flags, &dpa_fq->fq_base); + if (_errno) { + dpaa_eth_err(dev, "qman_create_fq() failed\n"); + return _errno; + } + fq = &dpa_fq->fq_base; + + if (dpa_fq->init) { + initfq.we_mask = QM_INITFQ_WE_DESTWQ; + initfq.fqd.dest.channel = dpa_fq->channel; + initfq.fqd.dest.wq = dpa_fq->wq; + initfq.we_mask |= QM_INITFQ_WE_TDTHRESH | QM_INITFQ_WE_FQCTRL; + qm_fqd_taildrop_set(&initfq.fqd.td, qman_taildrop_threshold, 1); + initfq.fqd.fq_ctrl = QM_FQCTRL_TDE | QM_FQCTRL_PREFERINCACHE; + if (dpa_fq->flags & QMAN_FQ_FLAG_NO_ENQUEUE) { + initfq.we_mask |= QM_INITFQ_WE_CONTEXTA; + initfq.fqd.fq_ctrl |= + QM_FQCTRL_CTXASTASHING | QM_FQCTRL_AVOIDBLOCK; + initfq.fqd.context_a.stashing.exclusive = + QM_STASHING_EXCL_DATA | QM_STASHING_EXCL_CTX | + QM_STASHING_EXCL_ANNOTATION; + initfq.fqd.context_a.stashing.data_cl = 2; + initfq.fqd.context_a.stashing.annotation_cl = 1; + initfq.fqd.context_a.stashing.context_cl = + DIV_ROUND_UP(sizeof(struct qman_fq), 64); + }; + + _errno = qman_init_fq(fq, QMAN_INITFQ_FLAG_SCHED, &initfq); + if (_errno < 0) { + dpaa_eth_err(dev, "qman_init_fq(%u) = %d\n", + qman_fq_fqid(fq), _errno); + qman_destroy_fq(fq, 0); + return _errno; + } + } + + dpa_fq->fqid = qman_fq_fqid(fq); + list_add_tail(&dpa_fq->list, list); + + return 0; +} + +static int __cold __attribute__((nonnull)) +_dpa_fq_free(struct device *dev, struct qman_fq *fq) +{ + int _errno, __errno; + struct dpa_fq *dpa_fq; + const struct dpa_priv_s *priv; + + _errno = 0; + + dpa_fq = container_of(fq, struct dpa_fq, fq_base); + priv = netdev_priv(dpa_fq->net_dev); + + if (dpa_fq->init) { + _errno = qman_retire_fq(fq, NULL); + if (unlikely(_errno < 0) && netif_msg_drv(priv)) + dpaa_eth_err(dev, "qman_retire_fq(%u) = %d\n", + qman_fq_fqid(fq), _errno); + + __errno = qman_oos_fq(fq); + if (unlikely(__errno < 0) && netif_msg_drv(priv)) { + dpaa_eth_err(dev, "qman_oos_fq(%u) = %d\n", + qman_fq_fqid(fq), __errno); + if (_errno >= 0) + _errno = __errno; + } + } + + qman_destroy_fq(fq, 0); + list_del(&dpa_fq->list); + + return _errno; +} + +static int __cold __attribute__((nonnull)) +dpa_fq_free(struct device *dev, struct list_head *list) +{ + int _errno, __errno; + struct dpa_fq *dpa_fq, *tmp; + + _errno = 0; + list_for_each_entry_safe(dpa_fq, tmp, list, list) { + __errno = _dpa_fq_free(dev, (struct qman_fq *)dpa_fq); + if (unlikely(__errno < 0) && _errno >= 0) + _errno = __errno; + } + + return _errno; +} + + +static inline ssize_t __const __must_check __attribute__((nonnull)) +dpa_fd_length(const struct qm_fd *fd) +{ + return fd->length20; +} + +static inline ssize_t __const __must_check __attribute__((nonnull)) +dpa_fd_offset(const struct qm_fd *fd) +{ + return fd->offset; +} + +static int __must_check __attribute__((nonnull)) +dpa_fd_release(const struct net_device *net_dev, const struct qm_fd *fd) +{ + int _errno, __errno, i, j; + const struct dpa_priv_s *priv; + const struct qm_sg_entry *sgt; + struct dpa_bp *_dpa_bp, *dpa_bp; + struct bm_buffer _bmb, bmb[8]; + + priv = netdev_priv(net_dev); + + _bmb.hi = fd->addr_hi; + _bmb.lo = fd->addr_lo; + + _dpa_bp = dpa_bpid2pool(fd->bpid); + BUG_ON(IS_ERR(_dpa_bp)); + + _errno = 0; + if (fd->format == qm_fd_sg) { + sgt = (phys_to_virt(bm_buf_addr(&_bmb)) + dpa_fd_offset(fd)); + + i = 0; + do { + dpa_bp = dpa_bpid2pool(sgt[i].bpid); + BUG_ON(IS_ERR(dpa_bp)); + + j = 0; + do { + BUG_ON(sgt[i].extension); + + bmb[j].hi = sgt[i].addr_hi; + bmb[j].lo = sgt[i].addr_lo; + j++; i++; + } while (j < ARRAY_SIZE(bmb) && + !sgt[i-1].final && + sgt[i-1].bpid == sgt[i].bpid); + + __errno = bman_release(dpa_bp->pool, bmb, j, 0); + if (unlikely(__errno < 0)) { + if (netif_msg_drv(priv) && net_ratelimit()) + cpu_netdev_err(net_dev, + "bman_release(%hu) = %d\n", + dpa_bp->bpid, _errno); + if (_errno >= 0) + _errno = __errno; + } + } while (!sgt[i-1].final); + } + + __errno = bman_release(_dpa_bp->pool, &_bmb, 1, 0); + if (unlikely(__errno < 0)) { + if (netif_msg_drv(priv) && net_ratelimit()) + cpu_netdev_err(net_dev, "bman_release(%hu) = %d\n", + _dpa_bp->bpid, __errno); + if (_errno >= 0) + _errno = __errno; + } + + return _errno; +} + +/* net_device */ + +#define NN_ALLOCATED_SPACE(net_dev) \ + max((size_t)arp_hdr_len(net_dev), sizeof(struct iphdr)) +#define NN_RESERVED_SPACE(net_dev) \ + min((size_t)arp_hdr_len(net_dev), sizeof(struct iphdr)) + +#define TT_ALLOCATED_SPACE(net_dev) \ + max(sizeof(struct icmphdr), max(sizeof(struct udphdr), \ + sizeof(struct tcphdr))) +#define TT_RESERVED_SPACE(net_dev) \ + min(sizeof(struct icmphdr), min(sizeof(struct udphdr), \ + sizeof(struct tcphdr))) + +static struct net_device_stats * __cold +dpa_get_stats(struct net_device *net_dev) +{ + struct dpa_priv_s *priv = netdev_priv(net_dev); + unsigned long *netstats; + unsigned long *cpustats; + int i, j; + struct dpa_percpu_priv_s *percpu_priv; + int numstats = sizeof(net_dev->stats) / sizeof(unsigned long); + + netstats = (unsigned long *)&net_dev->stats; + + memset(netstats, 0, sizeof(net_dev->stats)); + + for_each_online_cpu(i) { + percpu_priv = per_cpu_ptr(priv->percpu_priv, i); + + cpustats = (unsigned long *)&percpu_priv->stats; + + for (j = 0; j < numstats; j++) + netstats[j] += cpustats[j]; + } + + return &net_dev->stats; +} + +static int dpa_change_mtu(struct net_device *net_dev, int new_mtu) +{ + const struct dpa_priv_s *priv; + const int max_mtu = fsl_fman_phy_maxfrm - (VLAN_ETH_HLEN + ETH_FCS_LEN); + const int min_mtu = 64; + + priv = netdev_priv(net_dev); + + /* Make sure we don't exceed the Ethernet controller's MAXFRM */ + if (new_mtu < min_mtu || new_mtu > max_mtu) { + cpu_netdev_err(net_dev, "Invalid L3 mtu %d " + "(must be between %d and %d).\n", + new_mtu, min_mtu, max_mtu); + return -EINVAL; + } + net_dev->mtu = new_mtu; + + return 0; +} + +static int dpa_set_mac_address(struct net_device *net_dev, void *addr) +{ + const struct dpa_priv_s *priv; + int _errno; + + priv = netdev_priv(net_dev); + + _errno = eth_mac_addr(net_dev, addr); + if (_errno < 0) { + if (netif_msg_drv(priv)) + cpu_netdev_err(net_dev, + "eth_mac_addr() = %d\n", + _errno); + return _errno; + } + + if (!priv->mac_dev) + /* MAC-less interface, so nothing more to do here */ + return 0; + + _errno = priv->mac_dev->change_addr(priv->mac_dev, net_dev->dev_addr); + if (_errno < 0) { + if (netif_msg_drv(priv)) + cpu_netdev_err(net_dev, + "mac_dev->change_addr() = %d\n", + _errno); + return _errno; + } + + return 0; +} + +static void __cold dpa_change_rx_flags(struct net_device *net_dev, int flags) +{ + int _errno; + const struct dpa_priv_s *priv; + + priv = netdev_priv(net_dev); + + if (!priv->mac_dev) + return; + + if ((flags & IFF_PROMISC) != 0) { + _errno = priv->mac_dev->change_promisc(priv->mac_dev); + if (unlikely(_errno < 0) && netif_msg_drv(priv)) + cpu_netdev_err(net_dev, + "mac_dev->change_promisc() = %d\n", + _errno); + } +} + +static void dpa_set_multicast_list(struct net_device *net_dev) +{ + int _errno; + struct dpa_priv_s *priv; + + priv = netdev_priv(net_dev); + + if (!priv->mac_dev) { + if (netif_msg_drv(priv)) + cpu_netdev_warn(net_dev, + "%s() called on MAC-less interface\n", + __func__); + return; + } + + _errno = priv->mac_dev->set_multi(net_dev); + if ((_errno < 0) && netif_msg_drv(priv)) + cpu_netdev_err(net_dev, "mac_dev->set_multi() = %d\n", _errno); +} + +static int dpa_ioctl(struct net_device *dev, struct ifreq *rq, int cmd) +{ + struct dpa_priv_s *priv = netdev_priv(dev); + + if (!netif_running(dev)) + return -EINVAL; + +#ifdef CONFIG_FSL_DPA_1588 + if ((cmd >= PTP_ENBL_TXTS_IOCTL) && (cmd <= PTP_CLEANUP_TS)) { + int ret = -ENODEV; + + if (priv->tsu && priv->tsu->valid) + ret = dpa_ioctl_1588(dev, rq, cmd); + + return ret; + } +#endif + + return phy_mii_ioctl(priv->mac_dev->phy_dev, rq, cmd); +} + +/* + * When we put the buffer into the pool, we purposefully added + * some padding to the address so that the buffers wouldn't all + * be page-aligned. But the skb has been reset to a default state, + * so it is pointing up to DPAA_ETH_MAX_PAD - L1_CACHE_BYTES bytes + * before the actual data. We subtract skb->head from the fd addr, + * and then mask off the translated part to get the actual distance. + */ +static int dpa_process_one(struct dpa_percpu_priv_s *percpu_priv, + struct sk_buff *skb, struct dpa_bp *bp, const struct qm_fd *fd) +{ + dma_addr_t addr = qm_fd_addr(fd); + u32 addrlo = lower_32_bits(addr); + u32 skblo = lower_32_bits((unsigned long)skb->head); + u32 pad = (addrlo - skblo) & (PAGE_SIZE - 1); + unsigned int data_start; + + (*percpu_priv->dpa_bp_count)--; + + /* + * The skb is currently pointed at head + NET_SKB_PAD. The packet + * starts at skb->head + pad + fd offset. + */ + data_start = pad + dpa_fd_offset(fd) - NET_SKB_PAD; + skb_put(skb, dpa_fd_length(fd) + data_start); + skb_pull(skb, data_start); + + return 0; +} + +static void _dpa_rx_error(struct net_device *net_dev, + const struct dpa_priv_s *priv, + struct dpa_percpu_priv_s *percpu_priv, + const struct qm_fd *fd) +{ + int _errno; + + if (netif_msg_hw(priv) && net_ratelimit()) + cpu_netdev_warn(net_dev, "FD status = 0x%08x\n", + fd->status & FM_FD_STAT_ERRORS); + + percpu_priv->stats.rx_errors++; + + _errno = dpa_fd_release(net_dev, fd); + if (unlikely(_errno < 0)) { + dump_stack(); + panic("Can't release buffer to the BM during RX\n"); + } +} + +static void _dpa_tx_error(struct net_device *net_dev, + const struct dpa_priv_s *priv, + struct dpa_percpu_priv_s *percpu_priv, + const struct qm_fd *fd) +{ + struct sk_buff *skb; + struct sk_buff **skbh; + dma_addr_t addr = qm_fd_addr(fd); + struct dpa_bp *bp = priv->dpa_bp; + + if (netif_msg_hw(priv) && net_ratelimit()) + cpu_netdev_warn(net_dev, "FD status = 0x%08x\n", + fd->status & FM_FD_STAT_ERRORS); + + percpu_priv->stats.tx_errors++; + + skbh = (struct sk_buff **)phys_to_virt(addr); + skb = *skbh; + + dma_unmap_single(bp->dev, addr, bp->size, DMA_TO_DEVICE); + + dev_kfree_skb(skb); +} + +static void __hot _dpa_rx(struct net_device *net_dev, + const struct dpa_priv_s *priv, + struct dpa_percpu_priv_s *percpu_priv, + const struct qm_fd *fd) +{ + int _errno; + struct dpa_bp *dpa_bp; + struct sk_buff *skb; + struct sk_buff **skbh; + dma_addr_t addr = qm_fd_addr(fd); + + skbh = (struct sk_buff **)phys_to_virt(addr); + + if (unlikely(fd->status & FM_FD_STAT_ERRORS) != 0) { + if (netif_msg_hw(priv) && net_ratelimit()) + cpu_netdev_warn(net_dev, "FD status = 0x%08x\n", + fd->status & FM_FD_STAT_ERRORS); + + percpu_priv->stats.rx_errors++; + + goto _return_dpa_fd_release; + } + + if (unlikely(fd->format != qm_fd_contig)) { + percpu_priv->stats.rx_dropped++; + if (netif_msg_rx_status(priv) && net_ratelimit()) + cpu_netdev_warn(net_dev, "Dropping a SG frame\n"); + goto _return_dpa_fd_release; + } + + dpa_bp = dpa_bpid2pool(fd->bpid); + + dma_unmap_single(dpa_bp->dev, qm_fd_addr(fd), dpa_bp->size, + DMA_FROM_DEVICE); + + skb = *skbh; + prefetch(skb); + + /* Fill the SKB */ + dpa_process_one(percpu_priv, skb, dpa_bp, fd); + + prefetch(skb_shinfo(skb)); + +#ifdef CONFIG_FSL_DPA_1588 + if (priv->tsu && priv->tsu->valid) + dpa_ptp_store_rxstamp(net_dev, skb, fd); +#endif + + skb->protocol = eth_type_trans(skb, net_dev); + + if (unlikely(skb->len > net_dev->mtu)) { + if ((skb->protocol != ETH_P_8021Q) || + (skb->len > net_dev->mtu + 4)) { + percpu_priv->stats.rx_dropped++; + goto drop_large_frame; + } + } + + /* Check if the FMan Parser has already validated the L4 csum. */ + if (fd->status & FM_FD_STAT_L4CV) { + /* If we're here, the csum must be valid (if it hadn't, + * the frame would have been received on the Error FQ, + * respectively on the _dpa_rx_error() path). */ + skb->ip_summed = CHECKSUM_UNNECESSARY; + } else + skb->ip_summed = CHECKSUM_NONE; + + if (unlikely(netif_receive_skb(skb) == NET_RX_DROP)) + percpu_priv->stats.rx_dropped++; + else { + percpu_priv->stats.rx_packets++; + percpu_priv->stats.rx_bytes += dpa_fd_length(fd); + } + + net_dev->last_rx = jiffies; + + return; + +drop_large_frame: + (*percpu_priv->dpa_bp_count)++; +_return_dpa_fd_release: + _errno = dpa_fd_release(net_dev, fd); + if (unlikely(_errno < 0)) { + dump_stack(); + panic("Can't release buffer to the BM during RX\n"); + } +} + +static void dpaa_eth_napi_disable(struct dpa_priv_s *priv) +{ + struct dpa_percpu_priv_s *percpu_priv; + int i; + + if (priv->shared) + return; + + for_each_online_cpu(i) { + percpu_priv = per_cpu_ptr(priv->percpu_priv, i); + napi_disable(&percpu_priv->napi); + } +} + +static void dpaa_eth_napi_enable(struct dpa_priv_s *priv) +{ + struct dpa_percpu_priv_s *percpu_priv; + int i; + + if (priv->shared) + return; + + for_each_online_cpu(i) { + percpu_priv = per_cpu_ptr(priv->percpu_priv, i); + napi_enable(&percpu_priv->napi); + } +} + +static int dpaa_eth_poll(struct napi_struct *napi, int budget) +{ + struct dpa_percpu_priv_s *percpu_priv; + int cleaned = qman_poll_dqrr(budget); + int count; + + percpu_priv = container_of(napi, struct dpa_percpu_priv_s, napi); + + count = *percpu_priv->dpa_bp_count; + + if (count < DEFAULT_COUNT / 4) { + int i; + + for (i = count; i < DEFAULT_COUNT; i += 8) + dpa_bp_add_8(percpu_priv->dpa_bp); + } + + if (cleaned < budget) { + int tmp; + napi_complete(napi); + tmp = qman_irqsource_add(QM_PIRQ_DQRI); + BUG_ON(tmp); + } + + return cleaned; +} + +static void __hot _dpa_tx(struct net_device *net_dev, + const struct dpa_priv_s *priv, + struct dpa_percpu_priv_s *percpu_priv, + const struct qm_fd *fd) +{ + struct sk_buff **skbh; + struct sk_buff *skb; + dma_addr_t addr = qm_fd_addr(fd); + struct dpa_bp *bp = priv->dpa_bp; + + /* This might not perfectly reflect the reality, if the core dequeueing + * the Tx confirmation is different from the one that did the enqueue, + * but at least it'll show up in the total count. */ + percpu_priv->tx_confirm++; + + if (unlikely(fd->status & FM_FD_STAT_ERRORS) != 0) { + if (netif_msg_hw(priv) && net_ratelimit()) + cpu_netdev_warn(net_dev, "FD status = 0x%08x\n", + fd->status & FM_FD_STAT_ERRORS); + + percpu_priv->stats.tx_errors++; + } + + skbh = (struct sk_buff **)phys_to_virt(addr); + skb = *skbh; + +#ifdef CONFIG_FSL_DPA_1588 + if (priv->tsu && priv->tsu->valid) + dpa_ptp_store_txstamp(net_dev, skb, fd); +#endif + + dma_unmap_single(bp->dev, addr, bp->size, DMA_TO_DEVICE); + + dev_kfree_skb(skb); +} + +static struct dpa_bp *dpa_size2pool(struct dpa_priv_s *priv, size_t size) +{ + int i; + + for (i = 0; i < priv->bp_count; i++) + if (DPA_BP_SIZE(size) <= priv->dpa_bp[i].size) + return dpa_bpid2pool(priv->dpa_bp[i].bpid); + return ERR_PTR(-ENODEV); +} + +static inline void * __must_check __attribute__((nonnull)) +dpa_phys2virt(const struct dpa_bp *dpa_bp, dma_addr_t addr) +{ + return dpa_bp->vaddr + (addr - dpa_bp->paddr); +} + +/** + * Turn on HW checksum computation for this outgoing frame. + * If the current protocol is not something we support in this regard + * (or if the stack has already computed the SW checksum), we do nothing. + * + * Returns 0 if all goes well (or HW csum doesn't apply), and a negative value + * otherwise. + * + * Note that this function may modify the fd->cmd field and the skb data buffer + * (the Parse Results area). + */ +static inline int dpa_enable_tx_csum(struct dpa_priv_s *priv, + struct sk_buff *skb, struct qm_fd *fd, char *parse_results) +{ + t_FmPrsResult *parse_result; + struct iphdr *iph; + struct ipv6hdr *ipv6h = NULL; + int l4_proto; + int ethertype = ntohs(skb->protocol); + int retval = 0; + + if (!priv->mac_dev || skb->ip_summed != CHECKSUM_PARTIAL) + return 0; + + /* Note: L3 csum seems to be already computed in sw, but we can't choose + * L4 alone from the FM configuration anyway. */ + + /* Fill in some fields of the Parse Results array, so the FMan + * can find them as if they came from the FMan Parser. */ + parse_result = (t_FmPrsResult *)parse_results; + + /* If we're dealing with VLAN, get the real Ethernet type */ + if (ethertype == ETH_P_8021Q) { + /* We can't always assume the MAC header is set correctly + * by the stack, so reset to beginning of skb->data */ + skb_reset_mac_header(skb); + ethertype = ntohs(vlan_eth_hdr(skb)->h_vlan_encapsulated_proto); + } + + /* Fill in the relevant L3 parse result fields + * and read the L4 protocol type */ + switch (ethertype) { + case ETH_P_IP: + parse_result->l3r = FM_L3_PARSE_RESULT_IPV4; + iph = ip_hdr(skb); + BUG_ON(iph == NULL); + l4_proto = ntohs(iph->protocol); + break; + case ETH_P_IPV6: + parse_result->l3r = FM_L3_PARSE_RESULT_IPV6; + ipv6h = ipv6_hdr(skb); + BUG_ON(ipv6h == NULL); + l4_proto = ntohs(ipv6h->nexthdr); + break; + default: + /* We shouldn't even be here */ + if (netif_msg_tx_err(priv) && net_ratelimit()) + cpu_netdev_alert(priv->net_dev, "Can't compute HW csum " + "for L3 proto 0x%x\n", ntohs(skb->protocol)); + retval = -EIO; + goto return_error; + } + + /* Fill in the relevant L4 parse result fields */ + switch (l4_proto) { + case IPPROTO_UDP: + parse_result->l4r = FM_L4_PARSE_RESULT_UDP; + break; + case IPPROTO_TCP: + parse_result->l4r = FM_L4_PARSE_RESULT_TCP; + break; + default: + /* This can as well be a BUG() */ + if (netif_msg_tx_err(priv) && net_ratelimit()) + cpu_netdev_alert(priv->net_dev, "Can't compute HW csum " + "for L4 proto 0x%x\n", l4_proto); + retval = -EIO; + goto return_error; + } + + /* At index 0 is IPOffset_1 as defined in the Parse Results */ + parse_result->ip_off[0] = skb_network_offset(skb); + parse_result->l4_off = skb_transport_offset(skb); + + /* Enable L3 (and L4, if TCP or UDP) HW checksum. */ + fd->cmd |= FM_FD_CMD_RPD | FM_FD_CMD_DTC; + +return_error: + return retval; +} + +static inline int __hot dpa_xmit(struct dpa_priv_s *priv, + struct dpa_percpu_priv_s *percpu, int queue, + struct qm_fd *fd) +{ + int err; + + prefetchw(&percpu->start_tx); + err = qman_enqueue(priv->egress_fqs[queue], fd, 0); + if (unlikely(err < 0)) { + if (netif_msg_tx_err(priv) && net_ratelimit()) + cpu_netdev_err(priv->net_dev, "qman_enqueue() = %d\n", + err); + percpu->stats.tx_errors++; + percpu->stats.tx_fifo_errors++; + return err; + } + + percpu->stats.tx_packets++; + percpu->stats.tx_bytes += dpa_fd_length(fd); + + return NETDEV_TX_OK; +} + +static int __hot dpa_shared_tx(struct sk_buff *skb, struct net_device *net_dev) +{ + struct dpa_bp *dpa_bp; + struct bm_buffer bmb; + struct dpa_percpu_priv_s *percpu_priv; + struct dpa_priv_s *priv; + struct device *dev; + struct qm_fd fd; + int queue_mapping; + int err; + void *dpa_bp_vaddr; + + priv = netdev_priv(net_dev); + percpu_priv = per_cpu_ptr(priv->percpu_priv, smp_processor_id()); + dev = net_dev->dev.parent; + + memset(&fd, 0, sizeof(fd)); + fd.format = qm_fd_contig; + + queue_mapping = skb_get_queue_mapping(skb); + + dpa_bp = dpa_size2pool(priv, skb_headlen(skb)); + if (unlikely(IS_ERR(dpa_bp))) { + err = PTR_ERR(dpa_bp); + goto bpools_too_small_error; + } + + err = bman_acquire(dpa_bp->pool, &bmb, 1, 0); + if (unlikely(err <= 0)) { + percpu_priv->stats.tx_errors++; + if (err == 0) + err = -ENOMEM; + goto buf_acquire_failed; + } + fd.bpid = dpa_bp->bpid; + + fd.length20 = skb_headlen(skb); + fd.cmd = FM_FD_CMD_FCO; + fd.addr_hi = bmb.hi; + fd.addr_lo = bmb.lo; + fd.offset = DPA_BP_HEAD; + + dpa_bp_vaddr = dpa_phys2virt(dpa_bp, bm_buf_addr(&bmb)); + + /* Copy the packet payload */ + skb_copy_from_linear_data(skb, dpa_bp_vaddr + dpa_fd_offset(&fd), + dpa_fd_length(&fd)); + + /* Enable L3/L4 hardware checksum computation, if applicable */ + err = dpa_enable_tx_csum(priv, skb, &fd, + dpa_bp_vaddr + DPA_PRIV_DATA_SIZE); + if (unlikely(err < 0)) { + if (netif_msg_tx_err(priv) && net_ratelimit()) + cpu_netdev_err(net_dev, "Tx HW csum error: %d\n", err); + percpu_priv->stats.tx_errors++; + goto l3_l4_csum_failed; + } + + err = dpa_xmit(priv, percpu_priv, queue_mapping, &fd); + +l3_l4_csum_failed: +bpools_too_small_error: +buf_acquire_failed: + /* We're done with the skb */ + dev_kfree_skb(skb); + + return err; +} + +static int __hot dpa_tx(struct sk_buff *skb, struct net_device *net_dev) +{ + struct dpa_priv_s *priv; + struct device *dev; + struct qm_fd fd; + unsigned int headroom; + struct dpa_percpu_priv_s *percpu_priv; + struct sk_buff **skbh; + dma_addr_t addr; + struct dpa_bp *dpa_bp; + int queue_mapping; + int err; + unsigned int pad; + + priv = netdev_priv(net_dev); + percpu_priv = per_cpu_ptr(priv->percpu_priv, smp_processor_id()); + dev = net_dev->dev.parent; + + memset(&fd, 0, sizeof(fd)); + fd.format = qm_fd_contig; + + headroom = skb_headroom(skb); + queue_mapping = skb_get_queue_mapping(skb); + + if (headroom < DPA_BP_HEAD) { + struct sk_buff *skb_new; + + skb_new = skb_realloc_headroom(skb, DPA_BP_HEAD); + if (!skb_new) { + percpu_priv->stats.tx_errors++; + kfree_skb(skb); + return NETDEV_TX_OK; + } + kfree_skb(skb); + skb = skb_new; + headroom = skb_headroom(skb); + } + + skb = skb_unshare(skb, GFP_ATOMIC); + + if (!skb) + return NETDEV_TX_OK; + + /* + * We are guaranteed that we have at least DPA_BP_HEAD of headroom. + * Buffers we allocated are padded to improve cache usage. In order + * to increase buffer re-use, we aim to keep any such buffers the + * same. This means the address passed to the FM should be DPA_BP_HEAD + * before the data, and we might as well do the same for buffers + * from elsewhere in the kernel. + */ + skbh = (struct sk_buff **)(skb->data - DPA_BP_HEAD); + pad = headroom - DPA_BP_HEAD; + + *skbh = skb; + + dpa_bp = priv->dpa_bp; + + /* Enable L3/L4 hardware checksum computation. + * + * We must do this before dma_map_single(DMA_TO_DEVICE), because we may + * need to write into the skb. */ + err = dpa_enable_tx_csum(priv, skb, &fd, + ((char *)skbh) + DPA_PRIV_DATA_SIZE); + + if (unlikely(err < 0)) { + if (netif_msg_tx_err(priv) && net_ratelimit()) + cpu_netdev_err(net_dev, "HW csum error: %d\n", err); + percpu_priv->stats.tx_errors++; + goto l3_l4_csum_failed; + } + +#ifdef CONFIG_FSL_DPA_1588 + if (priv->tsu && priv->tsu->valid) + fd.cmd |= FM_FD_CMD_UPD; +#endif + + fd.length20 = skb->len; + fd.offset = DPA_BP_HEAD; /* This is now guaranteed */ + + addr = dma_map_single(dpa_bp->dev, skbh, dpa_bp->size, DMA_TO_DEVICE); + if (unlikely(addr == 0)) { + if (netif_msg_tx_err(priv) && net_ratelimit()) + cpu_netdev_err(net_dev, "dma_map_single() failed\n"); + goto dma_map_failed; + } + + fd.addr_hi = upper_32_bits(addr); + fd.addr_lo = lower_32_bits(addr); + + if (unlikely(dpa_xmit(priv, percpu_priv, queue_mapping, &fd) < 0)) + goto xmit_failed; + + net_dev->trans_start = jiffies; + + return NETDEV_TX_OK; + +xmit_failed: + dma_unmap_single(dev, addr, dpa_bp->size, DMA_TO_DEVICE); + +dma_map_failed: + if (fd.cmd & FM_FD_CMD_FCO) + (*percpu_priv->dpa_bp_count)--; + +l3_l4_csum_failed: + dev_kfree_skb(skb); + + return NETDEV_TX_OK; +} + +static enum qman_cb_dqrr_result +ingress_rx_error_dqrr(struct qman_portal *portal, + struct qman_fq *fq, + const struct qm_dqrr_entry *dq) +{ + struct net_device *net_dev; + struct dpa_priv_s *priv; + struct dpa_percpu_priv_s *percpu_priv; + + net_dev = ((struct dpa_fq *)fq)->net_dev; + priv = netdev_priv(net_dev); + + percpu_priv = per_cpu_ptr(priv->percpu_priv, smp_processor_id()); + + if (dpaa_eth_napi_schedule(percpu_priv)) { + percpu_priv->in_interrupt++; + return qman_cb_dqrr_stop; + } + + _dpa_rx_error(net_dev, priv, percpu_priv, &dq->fd); + + return qman_cb_dqrr_consume; +} + +static enum qman_cb_dqrr_result __hot +shared_rx_dqrr(struct qman_portal *portal, struct qman_fq *fq, + const struct qm_dqrr_entry *dq) +{ + struct net_device *net_dev; + struct dpa_priv_s *priv; + struct dpa_percpu_priv_s *percpu_priv; + int err; + const struct qm_fd *fd = &dq->fd; + struct dpa_bp *dpa_bp; + size_t size; + struct sk_buff *skb; + + net_dev = ((struct dpa_fq *)fq)->net_dev; + priv = netdev_priv(net_dev); + + percpu_priv = per_cpu_ptr(priv->percpu_priv, smp_processor_id()); + + if (unlikely(fd->status & FM_FD_STAT_ERRORS) != 0) { + if (netif_msg_hw(priv) && net_ratelimit()) + cpu_netdev_warn(net_dev, "FD status = 0x%08x\n", + fd->status & FM_FD_STAT_ERRORS); + + percpu_priv->stats.rx_errors++; + + goto out; + } + + + dpa_bp = dpa_bpid2pool(fd->bpid); + BUG_ON(IS_ERR(dpa_bp)); + + if (fd->format == qm_fd_sg) { + percpu_priv->stats.rx_dropped++; + if (netif_msg_rx_status(priv) && net_ratelimit()) + cpu_netdev_warn(net_dev, + "%s:%hu:%s(): Dropping a SG frame\n", + __file__, __LINE__, __func__); + goto out; + } + + size = dpa_fd_length(fd); + + skb = __netdev_alloc_skb(net_dev, DPA_BP_HEAD + size, GFP_ATOMIC); + if (unlikely(skb == NULL)) { + if (netif_msg_rx_err(priv) && net_ratelimit()) + cpu_netdev_err(net_dev, "Could not alloc skb\n"); + + percpu_priv->stats.rx_dropped++; + + goto out; + } + + skb_reserve(skb, DPA_BP_HEAD); + + /* Fill the SKB */ + memcpy(skb_put(skb, dpa_fd_length(fd)), + dpa_phys2virt(dpa_bp, qm_fd_addr(fd)) + + dpa_fd_offset(fd), dpa_fd_length(fd)); + + skb->protocol = eth_type_trans(skb, net_dev); + + if (unlikely(skb->len > net_dev->mtu)) { + if ((skb->protocol != ETH_P_8021Q) || + (skb->len > net_dev->mtu + 4)) { + percpu_priv->stats.rx_dropped++; + dev_kfree_skb_any(skb); + goto out; + } + } + + if (unlikely(netif_rx(skb) != NET_RX_SUCCESS)) + percpu_priv->stats.rx_dropped++; + else { + percpu_priv->stats.rx_packets++; + percpu_priv->stats.rx_bytes += dpa_fd_length(fd); + } + + net_dev->last_rx = jiffies; + +out: + err = dpa_fd_release(net_dev, fd); + if (unlikely(err < 0)) { + dump_stack(); + panic("Can't release buffer to the BM during RX\n"); + } + + return qman_cb_dqrr_consume; +} + + +static enum qman_cb_dqrr_result __hot +ingress_rx_default_dqrr(struct qman_portal *portal, + struct qman_fq *fq, + const struct qm_dqrr_entry *dq) +{ + struct net_device *net_dev; + struct dpa_priv_s *priv; + struct dpa_percpu_priv_s *percpu_priv; + + net_dev = ((struct dpa_fq *)fq)->net_dev; + priv = netdev_priv(net_dev); + + percpu_priv = per_cpu_ptr(priv->percpu_priv, smp_processor_id()); + + if (unlikely(dpaa_eth_napi_schedule(percpu_priv))) { + percpu_priv->in_interrupt++; + return qman_cb_dqrr_stop; + } + + prefetchw(&percpu_priv->ingress_calls); + + _dpa_rx(net_dev, priv, percpu_priv, &dq->fd); + + return qman_cb_dqrr_consume; +} + +static enum qman_cb_dqrr_result +ingress_tx_error_dqrr(struct qman_portal *portal, + struct qman_fq *fq, + const struct qm_dqrr_entry *dq) +{ + struct net_device *net_dev; + struct dpa_priv_s *priv; + struct dpa_percpu_priv_s *percpu_priv; + + net_dev = ((struct dpa_fq *)fq)->net_dev; + priv = netdev_priv(net_dev); + + percpu_priv = per_cpu_ptr(priv->percpu_priv, smp_processor_id()); + + if (dpaa_eth_napi_schedule(percpu_priv)) { + percpu_priv->in_interrupt++; + return qman_cb_dqrr_stop; + } + + _dpa_tx_error(net_dev, priv, percpu_priv, &dq->fd); + + return qman_cb_dqrr_consume; +} + +static enum qman_cb_dqrr_result __hot +ingress_tx_default_dqrr(struct qman_portal *portal, + struct qman_fq *fq, + const struct qm_dqrr_entry *dq) +{ + struct net_device *net_dev; + struct dpa_priv_s *priv; + struct dpa_percpu_priv_s *percpu_priv; + + net_dev = ((struct dpa_fq *)fq)->net_dev; + priv = netdev_priv(net_dev); + + percpu_priv = per_cpu_ptr(priv->percpu_priv, smp_processor_id()); + + if (dpaa_eth_napi_schedule(percpu_priv)) { + percpu_priv->in_interrupt++; + return qman_cb_dqrr_stop; + } + + _dpa_tx(net_dev, priv, percpu_priv, &dq->fd); + + return qman_cb_dqrr_consume; +} + +static void shared_ern(struct qman_portal *portal, + struct qman_fq *fq, + const struct qm_mr_entry *msg) +{ + struct net_device *net_dev; + const struct dpa_priv_s *priv; + int err; + struct dpa_percpu_priv_s *percpu_priv; + struct dpa_fq *dpa_fq = (struct dpa_fq *)fq; + + net_dev = dpa_fq->net_dev; + priv = netdev_priv(net_dev); + percpu_priv = per_cpu_ptr(priv->percpu_priv, smp_processor_id()); + + err = dpa_fd_release(net_dev, &msg->ern.fd); + if (unlikely(err < 0)) { + dump_stack(); + panic("Can't release buffer to the BM during a TX\n"); + } + + percpu_priv->stats.tx_dropped++; + percpu_priv->stats.tx_fifo_errors++; +} + +static void egress_ern(struct qman_portal *portal, + struct qman_fq *fq, + const struct qm_mr_entry *msg) +{ + struct net_device *net_dev; + const struct dpa_priv_s *priv; + struct sk_buff *skb; + struct sk_buff **skbh; + struct dpa_percpu_priv_s *percpu_priv; + dma_addr_t addr = qm_fd_addr(&msg->ern.fd); + struct dpa_bp *bp; + + net_dev = ((struct dpa_fq *)fq)->net_dev; + priv = netdev_priv(net_dev); + bp = priv->dpa_bp; + percpu_priv = per_cpu_ptr(priv->percpu_priv, smp_processor_id()); + + percpu_priv->stats.tx_dropped++; + percpu_priv->stats.tx_fifo_errors++; + + /* + * If we intended this buffer to go into the pool + * when the FM was done, we need to put it in + * manually. + */ + if (msg->ern.fd.cmd & FM_FD_CMD_FCO) { + struct bm_buffer bmb; + + bm_buffer_set64(&bmb, addr); + while (bman_release(bp->pool, &bmb, 1, 0)) + cpu_relax(); + + return; + } + + skbh = (struct sk_buff **)phys_to_virt(addr); + skb = *skbh; + + dma_unmap_single(bp->dev, addr, bp->size, DMA_TO_DEVICE); + + dev_kfree_skb_any(skb); +} + +static const struct qman_fq rx_shared_fq = { + .cb = {shared_rx_dqrr, NULL, NULL, NULL} +}; +static const struct qman_fq rx_private_defq = { + .cb = {ingress_rx_default_dqrr, NULL, NULL, NULL} +}; +static const struct qman_fq rx_private_errq = { + .cb = {ingress_rx_error_dqrr, NULL, NULL, NULL} +}; +static const struct qman_fq tx_private_defq = { + .cb = {ingress_tx_default_dqrr, NULL, NULL, NULL} +}; +static const struct qman_fq tx_private_errq = { + .cb = {ingress_tx_error_dqrr, NULL, NULL, NULL} +}; +static const struct qman_fq dummyq = { + .cb = {NULL, NULL, NULL, NULL} +}; +static const struct qman_fq private_egress_fq = { + .cb = {NULL, egress_ern, NULL, NULL} +}; +static const struct qman_fq shared_egress_fq = { + .cb = {NULL, shared_ern, NULL, NULL} +}; + +#ifdef CONFIG_DPAA_ETH_UNIT_TESTS +static bool tx_unit_test_passed = true; + +static void tx_unit_test_ern(struct qman_portal *portal, + struct qman_fq *fq, + const struct qm_mr_entry *msg) +{ + struct net_device *net_dev; + struct dpa_priv_s *priv; + struct sk_buff **skbh; + struct sk_buff *skb; + const struct qm_fd *fd; + dma_addr_t addr; + + net_dev = ((struct dpa_fq *)fq)->net_dev; + priv = netdev_priv(net_dev); + + tx_unit_test_passed = false; + + fd = &msg->ern.fd; + + addr = qm_fd_addr(fd); + + skbh = (struct sk_buff **)phys_to_virt(addr); + skb = *skbh; + + if (!skb || !is_kernel_addr((unsigned long)skb)) + panic("Corrupt skb in ERN!\n"); + + kfree_skb(skb); +} + +static unsigned char *tx_unit_skb_head; +static unsigned char *tx_unit_skb_end; +static int tx_unit_tested; + +static enum qman_cb_dqrr_result tx_unit_test_dqrr( + struct qman_portal *portal, + struct qman_fq *fq, + const struct qm_dqrr_entry *dq) +{ + struct net_device *net_dev; + struct dpa_priv_s *priv; + struct sk_buff **skbh; + struct sk_buff *skb; + const struct qm_fd *fd; + dma_addr_t addr; + unsigned char *startaddr; + struct dpa_percpu_priv_s *percpu_priv; + + tx_unit_test_passed = false; + + tx_unit_tested++; + + net_dev = ((struct dpa_fq *)fq)->net_dev; + priv = netdev_priv(net_dev); + + percpu_priv = per_cpu_ptr(priv->percpu_priv, smp_processor_id()); + + fd = &dq->fd; + + addr = qm_fd_addr(fd); + + skbh = (struct sk_buff **)phys_to_virt(addr); + startaddr = (unsigned char *)skbh; + skb = *skbh; + + if (!skb || !is_kernel_addr((unsigned long)skb)) + panic("Invalid skb address in TX Unit Test FD\n"); + + /* Make sure we're dealing with the same skb */ + if (skb->head != tx_unit_skb_head + || skb_end_pointer(skb) != tx_unit_skb_end) + goto out; + + /* + * If we recycled, then there must be enough room between fd.addr + * and skb->end for a new RX buffer + */ + if (fd->cmd & FM_FD_CMD_FCO) { + size_t bufsize = skb_end_pointer(skb) - startaddr; + + if (bufsize < fsl_fman_phy_maxfrm) + goto out; + } else { + /* + * If we didn't recycle, but the buffer was big enough, + * increment the counter to put it back + */ + if (skb_end_pointer(skb) - skb->head >= fsl_fman_phy_maxfrm) + (*percpu_priv->dpa_bp_count)++; + + /* If we didn't recycle, the data pointer should be good */ + if (skb->data != startaddr + dpa_fd_offset(fd)) + goto out; + } + + tx_unit_test_passed = true; +out: + /* The skb is no longer needed, and belongs to us */ + kfree_skb(skb); + + return qman_cb_dqrr_consume; +} + +static const struct qman_fq tx_unit_test_fq = { + .cb = {tx_unit_test_dqrr, tx_unit_test_ern, NULL, NULL} +}; + +static struct dpa_fq unit_fq; + +static bool tx_unit_test_ran; /* Starts as false */ + +static int dpa_tx_unit_test(struct net_device *net_dev) +{ + /* Create a new FQ */ + struct dpa_priv_s *priv = netdev_priv(net_dev); + struct qman_fq *oldq; + int size, headroom; + struct dpa_percpu_priv_s *percpu_priv; + cpumask_t *oldcpus; + int test_count = 0; + int err = 0; + int tests_failed = 0; + const cpumask_t *cpus = qman_affine_cpus(); + + oldcpus = tsk_cpus_allowed(current); + set_cpus_allowed_ptr(current, cpus); + /* disable bottom halves */ + local_bh_disable(); + + percpu_priv = per_cpu_ptr(priv->percpu_priv, smp_processor_id()); + + qman_irqsource_remove(QM_PIRQ_DQRI); + unit_fq.net_dev = net_dev; + unit_fq.fq_base = tx_unit_test_fq; + + /* Save old queue */ + oldq = priv->egress_fqs[smp_processor_id()]; + + err = qman_create_fq(0, QMAN_FQ_FLAG_DYNAMIC_FQID, &unit_fq.fq_base); + + if (err < 0) { + pr_err("UNIT test FQ create failed: %d\n", err); + goto fq_create_fail; + } + + err = qman_init_fq(&unit_fq.fq_base, + QMAN_INITFQ_FLAG_SCHED | QMAN_INITFQ_FLAG_LOCAL, NULL); + if (err < 0) { + pr_err("UNIT test FQ init failed: %d\n", err); + goto fq_init_fail; + } + + pr_err("TX Unit Test using FQ %d\n", qman_fq_fqid(&unit_fq.fq_base)); + + /* Replace queue 0 with this queue */ + priv->egress_fqs[smp_processor_id()] = &unit_fq.fq_base; + + /* Try packet sizes from 64-bytes to just above the maximum */ + for (size = 64; size <= 9600 + 128; size += 64) { + for (headroom = DPA_BP_HEAD; headroom < 0x800; headroom += 16) { + int ret; + struct sk_buff *skb; + + test_count++; + + skb = dev_alloc_skb(size + headroom); + + if (!skb) { + pr_err("Failed to allocate skb\n"); + err = -ENOMEM; + goto end_test; + } + + if (skb_end_pointer(skb) - skb->head >= + fsl_fman_phy_maxfrm) + (*percpu_priv->dpa_bp_count)--; + + skb_put(skb, size + headroom); + skb_pull(skb, headroom); + + tx_unit_skb_head = skb->head; + tx_unit_skb_end = skb_end_pointer(skb); + + skb_set_queue_mapping(skb, smp_processor_id()); + + /* tx */ + ret = net_dev->netdev_ops->ndo_start_xmit(skb, net_dev); + + if (ret != NETDEV_TX_OK) { + pr_err("Failed to TX with err %d\n", ret); + err = -EIO; + goto end_test; + } + + /* Wait for it to arrive */ + ret = spin_event_timeout(qman_poll_dqrr(1) != 0, + 100000, 1); + + if (!ret) + pr_err("TX Packet never arrived\n"); + + /* Was it good? */ + if (tx_unit_test_passed == false) { + pr_err("Test failed:\n"); + pr_err("size: %d pad: %d head: %p end: %p\n", + size, headroom, tx_unit_skb_head, + tx_unit_skb_end); + tests_failed++; + } + } + } + +end_test: + err = qman_retire_fq(&unit_fq.fq_base, NULL); + if (unlikely(err < 0)) + pr_err("Could not retire TX Unit Test FQ (%d)\n", err); + + err = qman_oos_fq(&unit_fq.fq_base); + if (unlikely(err < 0)) + pr_err("Could not OOS TX Unit Test FQ (%d)\n", err); + +fq_init_fail: + qman_destroy_fq(&unit_fq.fq_base, 0); + +fq_create_fail: + priv->egress_fqs[smp_processor_id()] = oldq; + local_bh_enable(); + qman_irqsource_add(QM_PIRQ_DQRI); + tx_unit_test_ran = true; + set_cpus_allowed_ptr(current, oldcpus); + + pr_err("Tested %d/%d packets. %d failed\n", test_count, tx_unit_tested, + tests_failed); + + if (tests_failed) + err = -EINVAL; + + return err; +} +#endif + +static int __cold dpa_start(struct net_device *net_dev) +{ + int err, i; + struct dpa_priv_s *priv; + struct mac_device *mac_dev; + + priv = netdev_priv(net_dev); + mac_dev = priv->mac_dev; + + if (!mac_dev) + goto no_mac; + +#ifdef CONFIG_FSL_DPA_1588 + if (priv->tsu && priv->tsu->valid) { + if (mac_dev->fm_rtc_enable) + mac_dev->fm_rtc_enable(net_dev); + } +#endif + + dpaa_eth_napi_enable(priv); + + err = mac_dev->init_phy(net_dev); + if (err < 0) { + if (netif_msg_ifup(priv)) + cpu_netdev_err(net_dev, "init_phy() = %d\n", err); + goto init_phy_failed; + } + + for_each_port_device(i, mac_dev->port_dev) + fm_port_enable(mac_dev->port_dev[i]); + + err = priv->mac_dev->start(mac_dev); + if (err < 0) { + if (netif_msg_ifup(priv)) + cpu_netdev_err(net_dev, "mac_dev->start() = %d\n", err); + goto mac_start_failed; + } + +no_mac: + netif_tx_start_all_queues(net_dev); + + return 0; + +mac_start_failed: + for_each_port_device(i, mac_dev->port_dev) + fm_port_disable(mac_dev->port_dev[i]); + +init_phy_failed: + dpaa_eth_napi_disable(priv); + + return err; +} + +static int __cold dpa_stop(struct net_device *net_dev) +{ + int _errno, i; + struct dpa_priv_s *priv; + struct mac_device *mac_dev; + + priv = netdev_priv(net_dev); + mac_dev = priv->mac_dev; + + netif_tx_stop_all_queues(net_dev); + + if (!mac_dev) + return 0; + +#ifdef CONFIG_FSL_DPA_1588 + if (priv->tsu && priv->tsu->valid) { + if (mac_dev->fm_rtc_disable) + mac_dev->fm_rtc_disable(net_dev); + } +#endif + + _errno = mac_dev->stop(mac_dev); + if (unlikely(_errno < 0)) + if (netif_msg_ifdown(priv)) + cpu_netdev_err(net_dev, "mac_dev->stop() = %d\n", + _errno); + + for_each_port_device(i, mac_dev->port_dev) + fm_port_disable(mac_dev->port_dev[i]); + + if (mac_dev->phy_dev) + phy_disconnect(mac_dev->phy_dev); + mac_dev->phy_dev = NULL; + + dpaa_eth_napi_disable(priv); + + return _errno; +} + +static void __cold dpa_timeout(struct net_device *net_dev) +{ + const struct dpa_priv_s *priv; + struct dpa_percpu_priv_s *percpu_priv; + + priv = netdev_priv(net_dev); + percpu_priv = per_cpu_ptr(priv->percpu_priv, smp_processor_id()); + + if (netif_msg_timer(priv)) + cpu_netdev_crit(net_dev, "Transmit timeout latency: %lu ms\n", + (jiffies - net_dev->trans_start) * 1000 / HZ); + + percpu_priv->stats.tx_errors++; +} + +static int dpa_bp_cmp(const void *dpa_bp0, const void *dpa_bp1) +{ + return ((struct dpa_bp *)dpa_bp0)->size - + ((struct dpa_bp *)dpa_bp1)->size; +} + +static struct dpa_bp * __cold __must_check __attribute__((nonnull)) +dpa_bp_probe(struct platform_device *_of_dev, size_t *count) +{ + int i, lenp, na, ns; + struct device *dev; + struct device_node *dev_node; + const phandle *phandle_prop; + const uint32_t *bpid; + const uint32_t *bpool_cfg; + struct dpa_bp *dpa_bp; + int has_kernel_pool = 0; + int has_shared_pool = 0; + + dev = &_of_dev->dev; + + /* The default is one, if there's no property */ + *count = 1; + + /* There are three types of buffer pool configuration: + * 1) No bp assignment + * 2) A static assignment to an empty configuration + * 3) A static assignment to one or more configured pools + * + * We don't support using multiple unconfigured pools. + */ + + /* Get the buffer pools to be used */ + phandle_prop = of_get_property(dev->of_node, + "fsl,bman-buffer-pools", &lenp); + + if (phandle_prop) + *count = lenp / sizeof(phandle); + else { + if (default_pool) + return default_pool; + + has_kernel_pool = 1; + } + + dpa_bp = devm_kzalloc(dev, *count * sizeof(*dpa_bp), GFP_KERNEL); + if (unlikely(dpa_bp == NULL)) { + dpaa_eth_err(dev, "devm_kzalloc() failed\n"); + return ERR_PTR(-ENOMEM); + } + + dev_node = of_find_node_by_path("/"); + if (unlikely(dev_node == NULL)) { + dpaa_eth_err(dev, "of_find_node_by_path(/) failed\n"); + return ERR_PTR(-EINVAL); + } + + na = of_n_addr_cells(dev_node); + ns = of_n_size_cells(dev_node); + + for (i = 0; i < *count && phandle_prop; i++) { + of_node_put(dev_node); + dev_node = of_find_node_by_phandle(phandle_prop[i]); + if (unlikely(dev_node == NULL)) { + dpaa_eth_err(dev, "of_find_node_by_phandle() failed\n"); + return ERR_PTR(-EFAULT); + } + + if (unlikely(!of_device_is_compatible(dev_node, "fsl,bpool"))) { + dpaa_eth_err(dev, + "!of_device_is_compatible(%s, fsl,bpool)\n", + dev_node->full_name); + dpa_bp = ERR_PTR(-EINVAL); + goto _return_of_node_put; + } + + bpid = of_get_property(dev_node, "fsl,bpid", &lenp); + if ((bpid == NULL) || (lenp != sizeof(*bpid))) { + dpaa_eth_err(dev, "fsl,bpid property not found.\n"); + dpa_bp = ERR_PTR(-EINVAL); + goto _return_of_node_put; + } + dpa_bp[i].bpid = *bpid; + + bpool_cfg = of_get_property(dev_node, "fsl,bpool-ethernet-cfg", + &lenp); + if (bpool_cfg && (lenp == (2 * ns + na) * sizeof(*bpool_cfg))) { + const uint32_t *seed_pool; + + dpa_bp[i].count = of_read_number(bpool_cfg, ns); + dpa_bp[i].size = of_read_number(bpool_cfg + ns, ns); + dpa_bp[i].paddr = + of_read_number(bpool_cfg + 2 * ns, na); + + seed_pool = of_get_property(dev_node, + "fsl,bpool-ethernet-seeds", &lenp); + dpa_bp[i].seed_pool = !!seed_pool; + + has_shared_pool = 1; + } else { + has_kernel_pool = 1; + } + + if (i > 0) + has_shared_pool = 1; + } + + if (has_kernel_pool && has_shared_pool) { + dpaa_eth_err(dev, "Invalid buffer pool configuration " + "for node %s\n", dev_node->full_name); + dpa_bp = ERR_PTR(-EINVAL); + goto _return_of_node_put; + } else if (has_kernel_pool) { + dpa_bp->count = DEFAULT_COUNT; + dpa_bp->size = DEFAULT_BUF_SIZE; + dpa_bp->kernel_pool = 1; + } + + sort(dpa_bp, *count, sizeof(*dpa_bp), dpa_bp_cmp, NULL); + + return dpa_bp; + +_return_of_node_put: + if (dev_node) + of_node_put(dev_node); + + return dpa_bp; +} + +static int dpa_bp_create(struct net_device *net_dev, struct dpa_bp *dpa_bp, + size_t count) +{ + struct dpa_priv_s *priv = netdev_priv(net_dev); + int i; + + if (dpa_bp->kernel_pool) { + priv->shared = 0; + + if (netif_msg_probe(priv)) + cpu_dev_info(net_dev->dev.parent, + "Using private BM buffer pools\n"); + } else { + priv->shared = 1; + } + + priv->dpa_bp = dpa_bp; + priv->bp_count = count; + + for (i = 0; i < count; i++) { + int err; + err = dpa_bp_alloc(&dpa_bp[i]); + if (err < 0) { + dpa_bp_free(priv, dpa_bp); + priv->dpa_bp = NULL; + return err; + } + + /* For now, just point to the default pool. + * We can add support for more pools, later + */ + if (dpa_bp->kernel_pool) + priv->dpa_bp = default_pool; + } + + return 0; +} + +static struct mac_device * __cold __must_check +__attribute__((nonnull)) +dpa_mac_probe(struct platform_device *_of_dev) +{ + struct device *dpa_dev, *dev; + struct device_node *mac_node; + int lenp; + const phandle *phandle_prop; + struct platform_device *of_dev; + struct mac_device *mac_dev; +#ifdef CONFIG_FSL_DPA_1588 + struct net_device *net_dev = NULL; + struct dpa_priv_s *priv = NULL; + struct device_node *timer_node; +#endif + + phandle_prop = of_get_property(_of_dev->dev.of_node, "fsl,fman-mac", &lenp); + if (phandle_prop == NULL) + return NULL; + + BUG_ON(lenp != sizeof(phandle)); + + dpa_dev = &_of_dev->dev; + + mac_node = of_find_node_by_phandle(*phandle_prop); + if (unlikely(mac_node == NULL)) { + dpaa_eth_err(dpa_dev, "of_find_node_by_phandle() failed\n"); + return ERR_PTR(-EFAULT); + } + + of_dev = of_find_device_by_node(mac_node); + if (unlikely(of_dev == NULL)) { + dpaa_eth_err(dpa_dev, "of_find_device_by_node(%s) failed\n", + mac_node->full_name); + of_node_put(mac_node); + return ERR_PTR(-EINVAL); + } + of_node_put(mac_node); + + dev = &of_dev->dev; + + mac_dev = dev_get_drvdata(dev); + if (unlikely(mac_dev == NULL)) { + dpaa_eth_err(dpa_dev, "dev_get_drvdata(%s) failed\n", + dev_name(dev)); + return ERR_PTR(-EINVAL); + } + +#ifdef CONFIG_FSL_DPA_1588 + phandle_prop = of_get_property(mac_node, "ptimer-handle", &lenp); + if (phandle_prop && ((mac_dev->phy_if != PHY_INTERFACE_MODE_SGMII) || + ((mac_dev->phy_if == PHY_INTERFACE_MODE_SGMII) && + (mac_dev->speed == SPEED_1000)))) { + timer_node = of_find_node_by_phandle(*phandle_prop); + if (timer_node && (net_dev = dev_get_drvdata(dpa_dev))) { + priv = netdev_priv(net_dev); + if (!dpa_ptp_init(priv)) + dpaa_eth_info(dev, "%s: ptp-timer enabled\n", + mac_node->full_name); + } + } +#endif + + return mac_dev; +} + +static const char fsl_qman_frame_queues[][25] = { + [RX] = "fsl,qman-frame-queues-rx", + [TX] = "fsl,qman-frame-queues-tx" +}; + +#ifdef CONFIG_DEBUG_FS +static int __cold dpa_debugfs_show(struct seq_file *file, void *offset) +{ + int i; + struct dpa_priv_s *priv; + struct dpa_percpu_priv_s *percpu_priv, total; + struct dpa_bp *dpa_bp; + unsigned int count_total = 0; + + BUG_ON(offset == NULL); + + priv = netdev_priv((struct net_device *)file->private); + + dpa_bp = priv->dpa_bp; + + memset(&total, 0, sizeof(total)); + + seq_printf(file, "\tirqs\trx\ttx\trecycle\tconfirm\ttx err\trx err" \ + "\tbp count\n"); + for_each_online_cpu(i) { + percpu_priv = per_cpu_ptr(priv->percpu_priv, i); + + total.in_interrupt += percpu_priv->in_interrupt; + total.ingress_calls += percpu_priv->stats.rx_packets; + total.stats.tx_packets += percpu_priv->stats.tx_packets; + total.tx_returned += percpu_priv->tx_returned; + total.tx_confirm += percpu_priv->tx_confirm; + total.stats.tx_errors += percpu_priv->stats.tx_errors; + total.stats.rx_errors += percpu_priv->stats.rx_errors; + count_total += *percpu_priv->dpa_bp_count; + + seq_printf(file, "%hu/%hu\t%u\t%lu\t%lu\t%u\t%u\t%lu\t%lu" \ + "\t%d\n", + get_hard_smp_processor_id(i), i, + percpu_priv->in_interrupt, + percpu_priv->stats.rx_packets, + percpu_priv->stats.tx_packets, + percpu_priv->tx_returned, + percpu_priv->tx_confirm, + percpu_priv->stats.tx_errors, + percpu_priv->stats.rx_errors, + *percpu_priv->dpa_bp_count); + } + seq_printf(file, "Total\t%u\t%u\t%lu\t%u\t%u\t%lu\t%lu\t%d\n", + total.in_interrupt, + total.ingress_calls, + total.stats.tx_packets, + total.tx_returned, + total.tx_confirm, + total.stats.tx_errors, + total.stats.rx_errors, + count_total); + + return 0; +} + +static int __cold dpa_debugfs_open(struct inode *inode, struct file *file) +{ + int _errno; + const struct net_device *net_dev; + + _errno = single_open(file, dpa_debugfs_show, inode->i_private); + if (unlikely(_errno < 0)) { + net_dev = (struct net_device *)inode->i_private; + + if (netif_msg_drv((struct dpa_priv_s *)netdev_priv(net_dev))) + cpu_netdev_err(net_dev, "single_open() = %d\n", + _errno); + } + return _errno; +} + +static const struct file_operations dpa_debugfs_fops = { + .open = dpa_debugfs_open, + .read = seq_read, + .llseek = seq_lseek, + .release = single_release, +}; +#endif + +static u16 dpa_select_queue(struct net_device *net_dev, struct sk_buff *skb) +{ + return smp_processor_id(); +} + +static const struct net_device_ops dpa_private_ops = { + .ndo_open = dpa_start, + .ndo_start_xmit = dpa_tx, + .ndo_stop = dpa_stop, + .ndo_change_rx_flags = dpa_change_rx_flags, + .ndo_tx_timeout = dpa_timeout, + .ndo_get_stats = dpa_get_stats, + .ndo_set_mac_address = dpa_set_mac_address, + .ndo_validate_addr = eth_validate_addr, + .ndo_select_queue = dpa_select_queue, + .ndo_change_mtu = dpa_change_mtu, + .ndo_set_rx_mode = dpa_set_multicast_list, + .ndo_do_ioctl = dpa_ioctl, +}; + +static const struct net_device_ops dpa_shared_ops = { + .ndo_open = dpa_start, + .ndo_start_xmit = dpa_shared_tx, + .ndo_stop = dpa_stop, + .ndo_change_rx_flags = dpa_change_rx_flags, + .ndo_tx_timeout = dpa_timeout, + .ndo_get_stats = dpa_get_stats, + .ndo_set_mac_address = dpa_set_mac_address, + .ndo_validate_addr = eth_validate_addr, + .ndo_set_rx_mode = dpa_set_multicast_list, + .ndo_do_ioctl = dpa_ioctl, +}; + +static int dpa_get_channel(struct device *dev, + struct device_node *dpa_node) +{ + struct device_node *dev_node; + const uint32_t *channel_id; + int lenp; + + dev_node = of_parse_phandle(dpa_node, "fsl,qman-channel", 0); + if (dev_node == NULL) { + dpaa_eth_err(dev, "Could not find fsl,qman-channel property\n"); + return -EFAULT; + } + + channel_id = of_get_property(dev_node, "fsl,qman-channel-id", &lenp); + if ((channel_id == NULL) || (lenp < sizeof(*channel_id))) { + dpaa_eth_err(dev, "Could not get fsl,qman-channel-id in %s\n", + dev_node->full_name); + of_node_put(dev_node); + return -EINVAL; + } + of_node_put(dev_node); + return *channel_id; +} + +struct fqid_cell { + uint32_t start; + uint32_t count; +}; + +static const struct fqid_cell default_fqids[][3] = { + [RX] = { {0, 1}, {0, 1}, {0, DPAA_ETH_RX_QUEUES} }, + [TX] = { {0, 1}, {0, 1}, {0, DPAA_ETH_TX_QUEUES} } +}; + +static int +dpa_fq_probe(struct platform_device *_of_dev, struct list_head *list, + struct dpa_fq **defq, struct dpa_fq **errq, + struct dpa_fq **fqs, int ptype) +{ + struct device *dev = &_of_dev->dev; + struct device_node *np = dev->of_node; + const struct fqid_cell *fqids; + int i, j, lenp; + int num_fqids; + struct dpa_fq *dpa_fq; + int err = 0; + + fqids = of_get_property(np, fsl_qman_frame_queues[ptype], &lenp); + if (fqids == NULL) { + fqids = default_fqids[ptype]; + num_fqids = 3; + } else + num_fqids = lenp / sizeof(*fqids); + + for (i = 0; i < num_fqids; i++) { + dpa_fq = devm_kzalloc(dev, sizeof(*dpa_fq) * fqids[i].count, + GFP_KERNEL); + if (dpa_fq == NULL) { + dpaa_eth_err(dev, "devm_kzalloc() failed\n"); + return -ENOMEM; + } + + /* The first queue is the Error queue */ + if (i == 0 && errq) { + *errq = dpa_fq; + + if (fqids[i].count != 1) { + dpaa_eth_err(dev, "Too many error queues!\n"); + err = -EINVAL; + goto invalid_error_queues; + } + } + + /* The second queue is the the Default queue */ + if (i == 1 && defq) { + *defq = dpa_fq; + + if (fqids[i].count != 1) { + dpaa_eth_err(dev, "Too many default queues!\n"); + err = -EINVAL; + goto invalid_default_queues; + } + } + + /* + * All subsequent queues are gathered together. + * The first 8 will be used by the private linux interface + * if these are TX queues + */ + if (i == 2 || (!errq && i == 0 && fqs)) + *fqs = dpa_fq; + +#warning We lost the 8-queue enforcement + +#define DPA_NUM_WQS 8 + for (j = 0; j < fqids[i].count; j++) { + dpa_fq[j].fqid = fqids[i].start ? + fqids[i].start + j : 0; + dpa_fq[j].wq = dpa_fq[j].fqid ? + dpa_fq[j].fqid % DPA_NUM_WQS : DPA_NUM_WQS - 1; + list_add_tail(&dpa_fq[j].list, list); + } + } + +invalid_default_queues: +invalid_error_queues: + return err; +} + +static void dpa_setup_ingress(struct dpa_priv_s *priv, struct dpa_fq *fq, + const struct qman_fq *template) +{ + fq->fq_base = *template; + fq->net_dev = priv->net_dev; + + fq->flags = QMAN_FQ_FLAG_NO_ENQUEUE; + fq->channel = priv->channel; +} + +static void dpa_setup_egress(struct dpa_priv_s *priv, + struct list_head *head, struct dpa_fq *fq, + struct fm_port *port) +{ + struct list_head *ptr = &fq->list; + int i = 0; + + while (true) { + struct dpa_fq *iter = list_entry(ptr, struct dpa_fq, list); + if (priv->shared) + iter->fq_base = shared_egress_fq; + else + iter->fq_base = private_egress_fq; + + iter->net_dev = priv->net_dev; + priv->egress_fqs[i++] = &iter->fq_base; + + if (port) { + iter->flags = QMAN_FQ_FLAG_TO_DCPORTAL; + iter->channel = fm_get_tx_port_channel(port); + } else + iter->flags = QMAN_FQ_FLAG_NO_MODIFY; + + if (list_is_last(ptr, head)) + break; + + ptr = ptr->next; + } +} + +static void dpa_setup_ingress_queues(struct dpa_priv_s *priv, + struct list_head *head, struct dpa_fq *fq) +{ + struct list_head *ptr = &fq->list; + u32 fqid; + int portals[NR_CPUS]; + int num_portals; + int i; + struct device_node *qm_node; + struct device_node *cpu_node; + const uint32_t *uint32_prop; + const phandle *ph; + int lenp; + int cpu; + bool found; + const cpumask_t *affine_cpus = qman_affine_cpus(); + + /* + * Make a list of the available portals. + * We're only interested in those portals which have an affine core + * and moreover that core is included in the cpumask provided by QMan + */ + num_portals = 0; + for_each_compatible_node(qm_node, NULL, "fsl,qman-portal") { + /* Check if portal has an affine core */ + ph = of_get_property(qm_node, "cpu-handle", &lenp); + if (!ph || (lenp != sizeof(phandle))) + continue; + + /* Get the hardware id of the affine core */ + cpu_node = of_find_node_by_phandle(*ph); + if (!cpu_node) + continue; + uint32_prop = of_get_property(cpu_node, "reg", &lenp); + if (!uint32_prop || (lenp != sizeof(uint32_t))) { + dpaa_eth_err(fq->net_dev->dev.parent, + "failed to get property %s for node %s", + "reg", cpu_node->full_name); + continue; + } + + /* If it's not included in the cpumask we got from QMan, + * skip portal */ + found = false; + for_each_cpu(cpu, affine_cpus) { + if (*uint32_prop == get_hard_smp_processor_id(cpu) + && !of_get_property(qm_node, + "fsl,usdpaa-portal", NULL)) { + found = true; + break; + } + } + if (!found) + continue; + + /* This portal is good, store its sw channel */ + uint32_prop = of_get_property(qm_node, + "fsl,qman-channel-id", &lenp); + if (!uint32_prop || (lenp != sizeof(uint32_t))) { + dpaa_eth_err(fq->net_dev->dev.parent, + "Failed to get property %s for node %s", + "fsl,qman-channel-id", qm_node->full_name); + continue; + } + portals[num_portals++] = *uint32_prop; + } + if (num_portals == 0) { + dpaa_eth_err(fq->net_dev->dev.parent, + "No adequate Qman portals found"); + return; + } + + i = 0; + fqid = 0; + if (priv->mac_dev) + fqid = (priv->mac_dev->res->start & 0x1fffff) >> 6; + + while (true) { + struct dpa_fq *iter = list_entry(ptr, struct dpa_fq, list); + + if (priv->shared) + dpa_setup_ingress(priv, iter, &rx_shared_fq); + else + dpa_setup_ingress(priv, iter, &rx_private_defq); + + if (!iter->fqid) + iter->fqid = fqid++; + + /* Assign the queues to a channel in a round-robin fashion */ + iter->channel = portals[i]; + i = (i + 1) % num_portals; + + if (list_is_last(ptr, head)) + break; + + ptr = ptr->next; + } +} + +static void +dpaa_eth_init_tx_port(struct fm_port *port, struct dpa_fq *errq, + struct dpa_fq *defq, bool has_timer) +{ + struct fm_port_non_rx_params tx_port_param; + + dpaa_eth_init_port(tx, port, tx_port_param, errq->fqid, defq->fqid, + has_timer); +} + +static void +dpaa_eth_init_rx_port(struct fm_port *port, struct dpa_bp *bp, size_t count, + struct dpa_fq *errq, struct dpa_fq *defq, bool has_timer) +{ + struct fm_port_rx_params rx_port_param; + int i; + + count = min(ARRAY_SIZE(rx_port_param.pool_param), count); + rx_port_param.num_pools = count; + for (i = 0; i < count; i++) { + if (i >= rx_port_param.num_pools) + break; + + rx_port_param.pool_param[i].id = bp[i].bpid; + rx_port_param.pool_param[i].size = bp[i].size; + } + + dpaa_eth_init_port(rx, port, rx_port_param, errq->fqid, defq->fqid, + has_timer); +} + +static void dpa_rx_fq_init(struct dpa_priv_s *priv, struct list_head *head, + struct dpa_fq *defq, struct dpa_fq *errq, + struct dpa_fq *fqs) +{ + if (fqs) + dpa_setup_ingress_queues(priv, head, fqs); + + /* Only real devices need default/error queues set up */ + if (!priv->mac_dev) + return; + + if (defq->fqid == 0 && netif_msg_probe(priv)) + cpu_pr_info("Using dynamic RX QM frame queues\n"); + + if (priv->shared) { + dpa_setup_ingress(priv, defq, &rx_shared_fq); + dpa_setup_ingress(priv, errq, &rx_shared_fq); + } else { + dpa_setup_ingress(priv, defq, &rx_private_defq); + dpa_setup_ingress(priv, errq, &rx_private_errq); + } +} + +static void dpa_tx_fq_init(struct dpa_priv_s *priv, struct list_head *head, + struct dpa_fq *defq, struct dpa_fq *errq, + struct dpa_fq *fqs, struct fm_port *port) +{ + if (fqs) + dpa_setup_egress(priv, head, fqs, port); + + /* Only real devices need default/error queues set up */ + if (!priv->mac_dev) + return; + + if (defq->fqid == 0 && netif_msg_probe(priv)) + cpu_pr_info("Using dynamic TX QM frame queues\n"); + + /* The shared driver doesn't use tx confirmation */ + if (priv->shared) { + dpa_setup_ingress(priv, defq, &dummyq); + dpa_setup_ingress(priv, errq, &dummyq); + } else { + dpa_setup_ingress(priv, defq, &tx_private_defq); + dpa_setup_ingress(priv, errq, &tx_private_errq); + } +} + +static int dpa_netdev_init(struct device_node *dpa_node, + struct net_device *net_dev) +{ + int err; + const uint8_t *mac_addr; + struct dpa_priv_s *priv = netdev_priv(net_dev); + struct device *dev = net_dev->dev.parent; + + net_dev->features |= DPA_NETIF_FEATURES; + net_dev->vlan_features |= DPA_NETIF_FEATURES; + + if (!priv->mac_dev) { + /* Get the MAC address */ + mac_addr = of_get_mac_address(dpa_node); + if (mac_addr == NULL) { + if (netif_msg_probe(priv)) + dpaa_eth_err(dev, "No MAC address found!\n"); + return -EINVAL; + } + } else { + net_dev->mem_start = priv->mac_dev->res->start; + net_dev->mem_end = priv->mac_dev->res->end; + + mac_addr = priv->mac_dev->addr; + net_dev->features |= (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM); + net_dev->vlan_features |= (NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM); + } + + memcpy(net_dev->perm_addr, mac_addr, net_dev->addr_len); + memcpy(net_dev->dev_addr, mac_addr, net_dev->addr_len); + + SET_ETHTOOL_OPS(net_dev, &dpa_ethtool_ops); + net_dev->needed_headroom = DPA_BP_HEAD; + net_dev->watchdog_timeo = tx_timeout * HZ / 1000; + + err = register_netdev(net_dev); + if (err < 0) { + dpaa_eth_err(dev, "register_netdev() = %d\n", err); + return err; + } + +#ifdef CONFIG_DEBUG_FS + priv->debugfs_file = debugfs_create_file(net_dev->name, S_IRUGO, + dpa_debugfs_root, net_dev, + &dpa_debugfs_fops); + if (unlikely(priv->debugfs_file == NULL)) { + cpu_netdev_err(net_dev, "debugfs_create_file(%s/%s/%s) = %d\n", + powerpc_debugfs_root->d_iname, + dpa_debugfs_root->d_iname, + net_dev->name, err); + + unregister_netdev(net_dev); + return -ENOMEM; + } +#endif + + return 0; +} + +static int dpa_shared_netdev_init(struct device_node *dpa_node, + struct net_device *net_dev) +{ + net_dev->netdev_ops = &dpa_shared_ops; + + return dpa_netdev_init(dpa_node, net_dev); +} + +static int dpa_private_netdev_init(struct device_node *dpa_node, + struct net_device *net_dev) +{ + int i; + struct dpa_priv_s *priv = netdev_priv(net_dev); + struct dpa_percpu_priv_s *percpu_priv; + + for_each_online_cpu(i) { + percpu_priv = per_cpu_ptr(priv->percpu_priv, i); + percpu_priv->net_dev = net_dev; + + percpu_priv->dpa_bp = priv->dpa_bp; + percpu_priv->dpa_bp_count = + per_cpu_ptr(priv->dpa_bp->percpu_count, i); + netif_napi_add(net_dev, &percpu_priv->napi, dpaa_eth_poll, + DPA_NAPI_WEIGHT); + } + + net_dev->netdev_ops = &dpa_private_ops; + + return dpa_netdev_init(dpa_node, net_dev); +} + +static int dpa_alloc_pcd_fqids(struct device *dev, uint32_t num, + uint8_t alignment, uint32_t *base_fqid) +{ + dpaa_eth_crit(dev, "callback not implemented!\n"); + BUG(); + + return 0; +} + +static int dpa_free_pcd_fqids(struct device *dev, uint32_t base_fqid) +{ + + dpaa_eth_crit(dev, "callback not implemented!\n"); + BUG(); + + return 0; +} + +static ssize_t dpaa_eth_show_addr(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct dpa_priv_s *priv = netdev_priv(to_net_dev(dev)); + struct mac_device *mac_dev = priv->mac_dev; + + if (mac_dev) + return sprintf(buf, "%llx", + (unsigned long long)mac_dev->res->start); + else + return sprintf(buf, "none"); +} + +static DEVICE_ATTR(device_addr, S_IRUGO, dpaa_eth_show_addr, NULL); + +static ssize_t dpaa_eth_show_fqids(struct device *dev, + struct device_attribute *attr, char *buf) +{ + struct dpa_priv_s *priv = netdev_priv(to_net_dev(dev)); + ssize_t bytes = 0; + int i = 0; + char *str; + struct dpa_fq *fq; + struct dpa_fq *tmp; + struct dpa_fq *prev = NULL; + u32 first_fqid = 0; + u32 last_fqid = 0; + char *prevstr = NULL; + + list_for_each_entry_safe(fq, tmp, &priv->dpa_fq_list, list) { + void *dqrr = fq->fq_base.cb.dqrr; + if (dqrr == ingress_rx_error_dqrr) + str = "error"; + else if (i == 1 && dqrr == ingress_rx_default_dqrr) + str = "default"; + else if (dqrr == ingress_rx_error_dqrr || + dqrr == ingress_rx_default_dqrr) + str = "RX"; + else if (dqrr == ingress_tx_default_dqrr) + str = "TX confirmation"; + else if (dqrr == ingress_tx_error_dqrr) + str = "TX error"; + else if (dqrr == NULL) + str = "TX"; + else + str = "unknown"; + + if (prev && (abs(fq->fqid - prev->fqid) != 1 || + str != prevstr)) { + if (last_fqid == first_fqid) + bytes += sprintf(buf + bytes, + "%s: %d\n", prevstr, prev->fqid); + else + bytes += sprintf(buf + bytes, + "%s: %d - %d\n", prevstr, + first_fqid, last_fqid); + } + + if (prev && abs(fq->fqid - prev->fqid) == 1 && str == prevstr) + last_fqid = fq->fqid; + else + first_fqid = last_fqid = fq->fqid; + + prev = fq; + prevstr = str; + i++; + } + + if (last_fqid == first_fqid) + bytes += sprintf(buf + bytes, "%s: %d\n", prevstr, prev->fqid); + else + bytes += sprintf(buf + bytes, "%s: %d - %d\n", prevstr, + first_fqid, last_fqid); + + return bytes; +} + +static DEVICE_ATTR(fqids, S_IRUGO, dpaa_eth_show_fqids, NULL); + + +static void dpaa_eth_sysfs_init(struct device *dev) +{ + if (device_create_file(dev, &dev_attr_device_addr)) + dev_err(dev, "Error creating dpaa_eth addr file\n"); + if (device_create_file(dev, &dev_attr_fqids)) + dev_err(dev, "Error creating dpaa_eth fqids file\n"); +} +static const struct of_device_id dpa_match[] ; +static int +dpaa_eth_probe(struct platform_device *_of_dev) +{ + int err, i; + struct device *dev; + struct device_node *dpa_node; + struct dpa_bp *dpa_bp; + struct dpa_fq *dpa_fq, *tmp; + struct list_head rxfqlist; + struct list_head txfqlist; + size_t count; + struct net_device *net_dev = NULL; + struct dpa_priv_s *priv = NULL; + struct dpa_fq *rxdefault = NULL; + struct dpa_fq *txdefault = NULL; + struct dpa_fq *rxerror = NULL; + struct dpa_fq *txerror = NULL; + struct dpa_fq *rxextra = NULL; + struct dpa_fq *txfqs = NULL; + struct fm_port *rxport = NULL; + struct fm_port *txport = NULL; + bool has_timer = FALSE; + struct mac_device *mac_dev; + int proxy_enet; + const struct of_device_id *match; + + dev = &_of_dev->dev; + + dpa_node = dev->of_node; + + match = of_match_device(dpa_match, dev); + if (!match) + return -EINVAL; + + if (!of_device_is_available(dpa_node)) + return -ENODEV; + + /* + * If it's not an fsl,dpa-ethernet node, we just serve as a proxy + * initializer driver, and don't do any linux device setup + */ + proxy_enet = strcmp(match->compatible, "fsl,dpa-ethernet"); + + /* + * Allocate this early, so we can store relevant information in + * the private area + */ + if (!proxy_enet) { + net_dev = alloc_etherdev_mq(sizeof(*priv), DPAA_ETH_TX_QUEUES); + if (!net_dev) { + dpaa_eth_err(dev, "alloc_etherdev_mq() failed\n"); + return -ENOMEM; + } + + /* Do this here, so we can be verbose early */ + SET_NETDEV_DEV(net_dev, dev); + dev_set_drvdata(dev, net_dev); + + priv = netdev_priv(net_dev); + priv->net_dev = net_dev; + + priv->msg_enable = netif_msg_init(debug, -1); + } + + /* Get the buffer pools assigned to this interface */ + dpa_bp = dpa_bp_probe(_of_dev, &count); + if (IS_ERR(dpa_bp)) { + err = PTR_ERR(dpa_bp); + goto bp_probe_failed; + } + + mac_dev = dpa_mac_probe(_of_dev); + if (IS_ERR(mac_dev)) { + err = PTR_ERR(mac_dev); + goto mac_probe_failed; + } else if (mac_dev) { + rxport = mac_dev->port_dev[RX]; + txport = mac_dev->port_dev[TX]; + } + + INIT_LIST_HEAD(&rxfqlist); + INIT_LIST_HEAD(&txfqlist); + + if (rxport) + err = dpa_fq_probe(_of_dev, &rxfqlist, &rxdefault, &rxerror, + &rxextra, RX); + else + err = dpa_fq_probe(_of_dev, &rxfqlist, NULL, NULL, + &rxextra, RX); + + if (err < 0) + goto rx_fq_probe_failed; + + if (txport) + err = dpa_fq_probe(_of_dev, &txfqlist, &txdefault, &txerror, + &txfqs, TX); + else + err = dpa_fq_probe(_of_dev, &txfqlist, NULL, NULL, &txfqs, TX); + + if (err < 0) + goto tx_fq_probe_failed; + + /* + * Now we have all of the configuration information. + * We support a number of configurations: + * 1) Private interface - An optimized linux ethernet driver with + * a real network connection. + * 2) Shared interface - A device intended for virtual connections + * or for a real interface that is shared between partitions + * 3) Proxy initializer - Just configures the MAC on behalf of + * another partition + */ + + /* bp init */ + if (net_dev) { + err = dpa_bp_create(net_dev, dpa_bp, count); + + if (err < 0) + goto bp_create_failed; + + priv->mac_dev = mac_dev; + + priv->channel = dpa_get_channel(dev, dpa_node); + + if (priv->channel < 0) { + err = priv->channel; + goto get_channel_failed; + } + + dpa_rx_fq_init(priv, &rxfqlist, rxdefault, rxerror, rxextra); + dpa_tx_fq_init(priv, &txfqlist, txdefault, txerror, txfqs, + txport); + + /* Add the FQs to the interface, and make them active */ + INIT_LIST_HEAD(&priv->dpa_fq_list); + + list_for_each_entry_safe(dpa_fq, tmp, &rxfqlist, list) { + err = _dpa_fq_alloc(&priv->dpa_fq_list, dpa_fq); + if (err < 0) + goto fq_alloc_failed; + } + + list_for_each_entry_safe(dpa_fq, tmp, &txfqlist, list) { + err = _dpa_fq_alloc(&priv->dpa_fq_list, dpa_fq); + if (err < 0) + goto fq_alloc_failed; + } + + if (priv->tsu && priv->tsu->valid) + has_timer = TRUE; + } + + /* All real interfaces need their ports initialized */ + if (mac_dev) { + struct fm_port_pcd_param rx_port_pcd_param; + + dpaa_eth_init_rx_port(rxport, dpa_bp, count, rxerror, + rxdefault, has_timer); + dpaa_eth_init_tx_port(txport, txerror, txdefault, has_timer); + + rx_port_pcd_param.cba = dpa_alloc_pcd_fqids; + rx_port_pcd_param.cbf = dpa_free_pcd_fqids; + rx_port_pcd_param.dev = dev; + fm_port_pcd_bind(rxport, &rx_port_pcd_param); + } + + /* + * Proxy interfaces need to be started, and the allocated + * memory freed + */ + if (!net_dev) { + devm_kfree(&_of_dev->dev, dpa_bp); + devm_kfree(&_of_dev->dev, rxdefault); + devm_kfree(&_of_dev->dev, rxerror); + devm_kfree(&_of_dev->dev, txdefault); + devm_kfree(&_of_dev->dev, txerror); + + if (mac_dev) + for_each_port_device(i, mac_dev->port_dev) + fm_port_enable(mac_dev->port_dev[i]); + + return 0; + } + + /* Now we need to initialize either a private or shared interface */ + priv->percpu_priv = __alloc_percpu(sizeof(*priv->percpu_priv), + __alignof__(*priv->percpu_priv)); + if (priv->percpu_priv == NULL) { + dpaa_eth_err(dev, "__alloc_percpu() failed\n"); + err = -ENOMEM; + goto alloc_percpu_failed; + } + + if (priv->shared) + err = dpa_shared_netdev_init(dpa_node, net_dev); + else + err = dpa_private_netdev_init(dpa_node, net_dev); + + if (err < 0) + goto netdev_init_failed; + + dpaa_eth_sysfs_init(&net_dev->dev); + +#ifdef CONFIG_DPAA_ETH_UNIT_TESTS + /* The unit test is designed to test private interfaces */ + if (!priv->shared && !tx_unit_test_ran) { + err = dpa_tx_unit_test(net_dev); + + BUG_ON(err); + } +#endif + + return 0; + +netdev_init_failed: + if (net_dev) + free_percpu(priv->percpu_priv); +alloc_percpu_failed: +fq_alloc_failed: + if (net_dev) + dpa_fq_free(dev, &priv->dpa_fq_list); +get_channel_failed: + if (net_dev) + dpa_bp_free(priv, priv->dpa_bp); +bp_create_failed: +tx_fq_probe_failed: +rx_fq_probe_failed: +mac_probe_failed: +bp_probe_failed: + dev_set_drvdata(dev, NULL); + if (net_dev) + free_netdev(net_dev); + + return err; +} + +static const struct of_device_id dpa_match[] = { + { + .compatible = "fsl,dpa-ethernet" + }, + { + .compatible = "fsl,dpa-ethernet-init" + }, + {} +}; +MODULE_DEVICE_TABLE(of, dpa_match); + +static int __cold dpa_remove(struct platform_device *of_dev) +{ + int err; + struct device *dev; + struct net_device *net_dev; + struct dpa_priv_s *priv; + + dev = &of_dev->dev; + net_dev = dev_get_drvdata(dev); + priv = netdev_priv(net_dev); + + dev_set_drvdata(dev, NULL); + unregister_netdev(net_dev); + + err = dpa_fq_free(dev, &priv->dpa_fq_list); + + free_percpu(priv->percpu_priv); + + dpa_bp_free(priv, priv->dpa_bp); + +#ifdef CONFIG_DEBUG_FS + debugfs_remove(priv->debugfs_file); +#endif + +#ifdef CONFIG_FSL_DPA_1588 + if (priv->tsu && priv->tsu->valid) + dpa_ptp_cleanup(priv); +#endif + + free_netdev(net_dev); + + return err; +} + +static struct platform_driver dpa_driver = { + .driver = { + .name = KBUILD_MODNAME, + .of_match_table = dpa_match, + .owner = THIS_MODULE, + }, + .probe = dpaa_eth_probe, + .remove = dpa_remove, +}; + +static int __init __cold dpa_load(void) +{ + int _errno; + + cpu_pr_info(KBUILD_MODNAME ": " DPA_DESCRIPTION " (" VERSION ")\n"); + +#ifdef CONFIG_DEBUG_FS + dpa_debugfs_root = debugfs_create_dir(KBUILD_MODNAME, + powerpc_debugfs_root); + if (unlikely(dpa_debugfs_root == NULL)) { + _errno = -ENOMEM; + cpu_pr_err(KBUILD_MODNAME ": %s:%hu:%s(): " + "debugfs_create_dir(%s/"KBUILD_MODNAME") = %d\n", + __file__, __LINE__, __func__, + powerpc_debugfs_root->d_iname, _errno); + goto _return; + } +#endif + + _errno = platform_driver_register(&dpa_driver); + if (unlikely(_errno < 0)) { + cpu_pr_err(KBUILD_MODNAME + ": %s:%hu:%s(): platform_driver_register() = %d\n", + __file__, __LINE__, __func__, _errno); + goto _return_debugfs_remove; + } + + goto _return; + +_return_debugfs_remove: +#ifdef CONFIG_DEBUG_FS + debugfs_remove(dpa_debugfs_root); +#endif +_return: + cpu_pr_debug(KBUILD_MODNAME ": %s:%s() ->\n", __file__, __func__); + + return _errno; +} +module_init(dpa_load); + +static void __exit __cold dpa_unload(void) +{ + cpu_pr_debug(KBUILD_MODNAME ": -> %s:%s()\n", __file__, __func__); + + platform_driver_unregister(&dpa_driver); + +#ifdef CONFIG_DEBUG_FS + debugfs_remove(dpa_debugfs_root); +#endif + + cpu_pr_debug(KBUILD_MODNAME ": %s:%s() ->\n", __file__, __func__); +} +module_exit(dpa_unload); + +static int __init fsl_fman_phy_set_max_frm(char *str) +{ + int ret = 0; + + ret = get_option(&str, &fsl_fman_phy_maxfrm); + if (ret != 1) { + /* This will only work if CONFIG_EARLY_PRINTK is compiled in, + * and something like "earlyprintk=serial,uart0,115200" is + * specified in the bootargs */ + printk(KERN_WARNING "No suitable %s= prop in bootargs; " + "will use the default DPA_MAX_FRM_SIZE (%d) " + "from Kconfig.\n", + FSL_FMAN_PHY_MAXFRM_BOOTARG, CONFIG_DPA_MAX_FRM_SIZE); + + fsl_fman_phy_maxfrm = CONFIG_DPA_MAX_FRM_SIZE; + return 1; + } + + /* Don't allow invalid bootargs; fallback to the Kconfig value */ + if (fsl_fman_phy_maxfrm < 64 || fsl_fman_phy_maxfrm > 9600) { + printk(KERN_WARNING "Invalid %s=%d in bootargs, valid range is " + "64-9600. Falling back to the DPA_MAX_FRM_SIZE (%d) " + "from Kconfig.\n", + FSL_FMAN_PHY_MAXFRM_BOOTARG, fsl_fman_phy_maxfrm, + CONFIG_DPA_MAX_FRM_SIZE); + + fsl_fman_phy_maxfrm = CONFIG_DPA_MAX_FRM_SIZE; + return 1; + } + + printk(KERN_INFO "Using fsl_fman_phy_maxfrm=%d from bootargs\n", + fsl_fman_phy_maxfrm); + return 0; +} +early_param(FSL_FMAN_PHY_MAXFRM_BOOTARG, fsl_fman_phy_set_max_frm); --- linux-3.13.0.orig/drivers/net/dpa/dpaa_eth.h +++ linux-3.13.0/drivers/net/dpa/dpaa_eth.h @@ -0,0 +1,127 @@ +/* + * Copyright 2008-2011 Freescale Semiconductor Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __DPA_H +#define __DPA_H + +#include /* struct ethtool_ops */ +#include +#include /* struct list_head */ +#include /* struct work_struct */ +#include +#include +#ifdef CONFIG_DEBUG_FS +#include /* struct dentry */ +#endif + +#include /* struct qman_fq */ + +#include "dpaa_eth-common.h" + +#include "mac.h" /* struct mac_device */ + + +/* number of Tx queues to FMan */ +#define DPAA_ETH_TX_QUEUES 8 +#define DPAA_ETH_RX_QUEUES 128 + +struct pcd_range { + uint32_t base; + uint32_t count; +}; + +struct dpa_bp { + struct bman_pool *pool; + uint8_t bpid; + struct device *dev; + size_t count; + size_t size; + bool seed_pool; + dma_addr_t paddr; + void *vaddr; + int kernel_pool; + int *percpu_count; + int *needs_refill; + atomic_t refs; +}; + +struct dpa_percpu_priv_s { + struct net_device *net_dev; + int *dpa_bp_count; + struct dpa_bp *dpa_bp; + struct napi_struct napi; + u32 start_tx; + u32 in_interrupt; + u32 ingress_calls; + u32 tx_returned; + u32 tx_confirm; + struct net_device_stats stats; +}; + +struct dpa_priv_s { + struct dpa_bp *dpa_bp; + size_t bp_count; + int shared; + struct net_device *net_dev; + + uint16_t channel; /* "fsl,qman-channel-id" */ + struct list_head dpa_fq_list; + struct qman_fq *egress_fqs[DPAA_ETH_TX_QUEUES]; + + struct mac_device *mac_dev; + + struct dpa_percpu_priv_s *percpu_priv; +#ifdef CONFIG_DEBUG_FS + struct dentry *debugfs_file; +#endif + + uint32_t msg_enable; /* net_device message level */ + struct dpa_ptp_tsu *tsu; +}; + +extern const struct ethtool_ops dpa_ethtool_ops; +extern int fsl_fman_phy_maxfrm; + +static inline int dpaa_eth_napi_schedule(struct dpa_percpu_priv_s *percpu_priv) +{ + if (unlikely(in_irq())) { + /* Disable QMan IRQ and invoke NAPI */ + int ret = qman_irqsource_remove(QM_PIRQ_DQRI); + if (likely(!ret)) { + napi_schedule(&percpu_priv->napi); + return 1; + } + } + return 0; +} + +#endif /* __DPA_H */ --- linux-3.13.0.orig/drivers/net/dpa/mac-api.c +++ linux-3.13.0/drivers/net/dpa/mac-api.c @@ -0,0 +1,674 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include +#include +#include +#include +#include + +#include "dpaa_eth-common.h" +#include "dpaa_eth.h" +#include "mac.h" + +#include "error_ext.h" /* GET_ERROR_TYPE, E_OK */ +#include "fm_mac_ext.h" +#include "fm_rtc_ext.h" + +#define MAC_DESCRIPTION "FSL FMan MAC API based driver" + +MODULE_LICENSE("Dual BSD/GPL"); + +MODULE_AUTHOR("Emil Medve "); + +MODULE_DESCRIPTION(MAC_DESCRIPTION); + +struct mac_priv_s { + t_Handle mac; +}; + +const char *mac_driver_description __initconst = MAC_DESCRIPTION; +const size_t mac_sizeof_priv[] = { + [DTSEC] = sizeof(struct mac_priv_s), + [XGMAC] = sizeof(struct mac_priv_s) +}; + +static const e_EnetMode _100[] = +{ + [PHY_INTERFACE_MODE_MII] = e_ENET_MODE_MII_100, + [PHY_INTERFACE_MODE_RMII] = e_ENET_MODE_RMII_100 +}; + +static const e_EnetMode _1000[] = +{ + [PHY_INTERFACE_MODE_GMII] = e_ENET_MODE_GMII_1000, + [PHY_INTERFACE_MODE_SGMII] = e_ENET_MODE_SGMII_1000, + [PHY_INTERFACE_MODE_TBI] = e_ENET_MODE_TBI_1000, + [PHY_INTERFACE_MODE_RGMII] = e_ENET_MODE_RGMII_1000, + [PHY_INTERFACE_MODE_RGMII_ID] = e_ENET_MODE_RGMII_1000, + [PHY_INTERFACE_MODE_RGMII_RXID] = e_ENET_MODE_RGMII_1000, + [PHY_INTERFACE_MODE_RGMII_TXID] = e_ENET_MODE_RGMII_1000, + [PHY_INTERFACE_MODE_RTBI] = e_ENET_MODE_RTBI_1000 +}; + +static e_EnetMode __cold __attribute__((nonnull)) +macdev2enetinterface(const struct mac_device *mac_dev) +{ + switch (mac_dev->max_speed) { + case SPEED_100: + return _100[mac_dev->phy_if]; + case SPEED_1000: + return _1000[mac_dev->phy_if]; + case SPEED_10000: + return e_ENET_MODE_XGMII_10000; + default: + return e_ENET_MODE_MII_100; + } +} + +static void mac_exception(t_Handle _mac_dev, e_FmMacExceptions exception) +{ + struct mac_device *mac_dev; + + mac_dev = (struct mac_device *)_mac_dev; + + if (e_FM_MAC_EX_10G_RX_FIFO_OVFL == exception) { + /* don't flag RX FIFO after the first */ + FM_MAC_SetException( + ((struct mac_priv_s *)macdev_priv(_mac_dev))->mac, + e_FM_MAC_EX_10G_RX_FIFO_OVFL, false); + printk(KERN_ERR "10G MAC got RX FIFO Error = %x\n", exception); + } + + cpu_dev_dbg(mac_dev->dev, "%s:%s() -> %d\n", __file__, __func__, + exception); +} + +static int __cold init(struct mac_device *mac_dev) +{ + int _errno; + t_Error err; + struct mac_priv_s *priv; + t_FmMacParams param; + uint32_t version; + + priv = macdev_priv(mac_dev); + + param.baseAddr = (typeof(param.baseAddr))(uintptr_t)devm_ioremap( + mac_dev->dev, mac_dev->res->start, 0x2000); + param.enetMode = macdev2enetinterface(mac_dev); + memcpy(¶m.addr, mac_dev->addr, min(sizeof(param.addr), + sizeof(mac_dev->addr))); + param.macId = mac_dev->cell_index; + param.h_Fm = (t_Handle)mac_dev->fm; + param.mdioIrq = NO_IRQ; + param.f_Exception = mac_exception; + param.f_Event = mac_exception; + param.h_App = mac_dev; + + priv->mac = FM_MAC_Config(¶m); + if (unlikely(priv->mac == NULL)) { + dpaa_eth_err(mac_dev->dev, "FM_MAC_Config() failed\n"); + _errno = -EINVAL; + goto _return; + } + + err = FM_MAC_ConfigMaxFrameLength(priv->mac, fsl_fman_phy_maxfrm); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) { + dpaa_eth_err(mac_dev->dev, + "FM_MAC_ConfigMaxFrameLength() = 0x%08x\n", err); + goto _return_fm_mac_free; + } + + if (macdev2enetinterface(mac_dev) != e_ENET_MODE_XGMII_10000) { + /* 10G always works with pad and CRC */ + err = FM_MAC_ConfigPadAndCrc(priv->mac, true); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) { + dpaa_eth_err(mac_dev->dev, + "FM_MAC_ConfigPadAndCrc() = 0x%08x\n", err); + goto _return_fm_mac_free; + } + + err = FM_MAC_ConfigHalfDuplex(priv->mac, mac_dev->half_duplex); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) { + dpaa_eth_err(mac_dev->dev, + "FM_MAC_ConfigHalfDuplex() = 0x%08x\n", err); + goto _return_fm_mac_free; + } + } + else { + err = FM_MAC_ConfigResetOnInit(priv->mac, true); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) { + dpaa_eth_err(mac_dev->dev, + "FM_MAC_ConfigResetOnInit() = 0x%08x\n", err); + goto _return_fm_mac_free; + } + } + + err = FM_MAC_Init(priv->mac); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) { + dpaa_eth_err(mac_dev->dev, "FM_MAC_Init() = 0x%08x\n", err); + goto _return_fm_mac_free; + } + +#ifndef CONFIG_FMAN_MIB_CNT_OVF_IRQ_EN + /* For 1G MAC, disable by default the MIB counters overflow interrupt */ + if (macdev2enetinterface(mac_dev) != e_ENET_MODE_XGMII_10000) { + err = FM_MAC_SetException(priv->mac, + e_FM_MAC_EX_1G_RX_MIB_CNT_OVFL, FALSE); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) { + dpaa_eth_err(mac_dev->dev, + "FM_MAC_SetException() = 0x%08x\n", err); + goto _return_fm_mac_free; + } + } +#endif /* !CONFIG_FMAN_MIB_CNT_OVF_IRQ_EN */ + + /* For 10G MAC, disable Tx ECC exception */ + if (macdev2enetinterface(mac_dev) == e_ENET_MODE_XGMII_10000) { + err = FM_MAC_SetException(priv->mac, + e_FM_MAC_EX_10G_1TX_ECC_ER, FALSE); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) { + dpaa_eth_err(mac_dev->dev, + "FM_MAC_SetException() = 0x%08x\n", err); + goto _return_fm_mac_free; + } + } + + err = FM_MAC_GetVesrion(priv->mac, &version); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) { + dpaa_eth_err(mac_dev->dev, "FM_MAC_GetVesrion() = 0x%08x\n", + err); + goto _return_fm_mac_free; + } + cpu_dev_info(mac_dev->dev, "FMan %s version: 0x%08x\n", + ((macdev2enetinterface(mac_dev) != e_ENET_MODE_XGMII_10000) ? + "dTSEC" : "XGEC"), version); + + goto _return; + + +_return_fm_mac_free: + err = FM_MAC_Free(priv->mac); + if (unlikely(-GET_ERROR_TYPE(err) < 0)) + dpaa_eth_err(mac_dev->dev, "FM_MAC_Free() = 0x%08x\n", err); +_return: + return _errno; +} + +static int __cold start(struct mac_device *mac_dev) +{ + int _errno; + t_Error err; + struct phy_device *phy_dev = mac_dev->phy_dev; + + err = FM_MAC_Enable(((struct mac_priv_s *)macdev_priv(mac_dev))->mac, + e_COMM_MODE_RX_AND_TX); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) + dpaa_eth_err(mac_dev->dev, "FM_MAC_Enable() = 0x%08x\n", err); + + if (phy_dev) { + if (macdev2enetinterface(mac_dev) != e_ENET_MODE_XGMII_10000) + phy_start(phy_dev); + else if (phy_dev->drv->read_status) + phy_dev->drv->read_status(phy_dev); + } + + return _errno; +} + +static int __cold stop(struct mac_device *mac_dev) +{ + int _errno; + t_Error err; + + if (mac_dev->phy_dev && + (macdev2enetinterface(mac_dev) != e_ENET_MODE_XGMII_10000)) + phy_stop(mac_dev->phy_dev); + + err = FM_MAC_Disable(((struct mac_priv_s *)macdev_priv(mac_dev))->mac, + e_COMM_MODE_RX_AND_TX); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) + dpaa_eth_err(mac_dev->dev, "FM_MAC_Disable() = 0x%08x\n", err); + + return _errno; +} + +static int __cold change_promisc(struct mac_device *mac_dev) +{ + int _errno; + t_Error err; + + err = FM_MAC_SetPromiscuous( + ((struct mac_priv_s *)macdev_priv(mac_dev))->mac, + mac_dev->promisc = !mac_dev->promisc); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) + dpaa_eth_err(mac_dev->dev, + "FM_MAC_SetPromiscuous() = 0x%08x\n", err); + + return _errno; +} + +static int __cold set_multi(struct net_device *net_dev) +{ + struct dpa_priv_s *priv; + struct mac_device *mac_dev; + struct mac_priv_s *mac_priv; + struct mac_address *old_addr, *tmp; + struct netdev_hw_addr *ha; + int _errno; + t_Error err; + + priv = netdev_priv(net_dev); + mac_dev = priv->mac_dev; + mac_priv = macdev_priv(mac_dev); + + /* Clear previous address list */ + list_for_each_entry_safe(old_addr, tmp, &mac_dev->mc_addr_list, list) { + err = FM_MAC_RemoveHashMacAddr(mac_priv->mac, + (t_EnetAddr *)old_addr->addr); + _errno = -GET_ERROR_TYPE(err); + if (_errno < 0) { + dpaa_eth_err(mac_dev->dev, + "FM_MAC_RemoveHashMacAddr() = 0x%08x\n", err); + return _errno; + } + list_del(&old_addr->list); + kfree(old_addr); + } + + /* Add all the addresses from the new list */ + netdev_for_each_mc_addr(ha, net_dev) { + err = FM_MAC_AddHashMacAddr(mac_priv->mac, + (t_EnetAddr *)ha->addr); + _errno = -GET_ERROR_TYPE(err); + if (_errno < 0) { + dpaa_eth_err(mac_dev->dev, + "FM_MAC_AddHashMacAddr() = 0x%08x\n", err); + return _errno; + } + tmp = kmalloc(sizeof(struct mac_address), GFP_ATOMIC); + if (!tmp) { + dpaa_eth_err(mac_dev->dev, "Out of memory\n"); + return -ENOMEM; + } + memcpy(tmp->addr, ha->addr, ETH_ALEN); + list_add(&tmp->list, &mac_dev->mc_addr_list); + } + return 0; +} + +static int __cold change_addr(struct mac_device *mac_dev, uint8_t *addr) +{ + int _errno; + t_Error err; + + err = FM_MAC_ModifyMacAddr( + ((struct mac_priv_s *)macdev_priv(mac_dev))->mac, + (t_EnetAddr *)addr); + _errno = -GET_ERROR_TYPE(err); + if (_errno < 0) + dpaa_eth_err(mac_dev->dev, + "FM_MAC_ModifyMacAddr() = 0x%08x\n", err); + + return _errno; +} + +static void adjust_link(struct net_device *net_dev) +{ + struct dpa_priv_s *priv = netdev_priv(net_dev); + struct mac_device *mac_dev = priv->mac_dev; + struct phy_device *phy_dev = mac_dev->phy_dev; + int _errno; + t_Error err; + + if (!phy_dev->link) + return; + + err = FM_MAC_AdjustLink( + ((struct mac_priv_s *)macdev_priv(mac_dev))->mac, + phy_dev->speed, phy_dev->duplex); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) + dpaa_eth_err(mac_dev->dev, "FM_MAC_AdjustLink() = 0x%08x\n", + err); + + return; +} + +/* Initializes driver's PHY state, and attaches to the PHY. + * Returns 0 on success. + */ +static int dtsec_init_phy(struct net_device *net_dev) +{ + struct dpa_priv_s *priv; + struct mac_device *mac_dev; + struct phy_device *phy_dev; + + priv = netdev_priv(net_dev); + mac_dev = priv->mac_dev; + + if (!mac_dev->phy_node) + phy_dev = phy_connect(net_dev, mac_dev->fixed_bus_id, + &adjust_link, mac_dev->phy_if); + else + phy_dev = of_phy_connect(net_dev, mac_dev->phy_node, + &adjust_link, 0, mac_dev->phy_if); + if (unlikely(phy_dev == NULL) || IS_ERR(phy_dev)) { + cpu_netdev_err(net_dev, "Could not connect to PHY %s\n", + mac_dev->phy_node ? + mac_dev->phy_node->full_name : + mac_dev->fixed_bus_id); + return phy_dev == NULL ? -ENODEV : PTR_ERR(phy_dev); + } + + /* Remove any features not supported by the controller */ + phy_dev->supported &= priv->mac_dev->if_support; + phy_dev->advertising = phy_dev->supported; + + priv->mac_dev->phy_dev = phy_dev; + + return 0; +} + +static int xgmac_init_phy(struct net_device *net_dev) +{ + struct dpa_priv_s *priv = netdev_priv(net_dev); + struct mac_device *mac_dev = priv->mac_dev; + struct phy_device *phy_dev; + + if (!mac_dev->phy_node) + phy_dev = phy_attach(net_dev, mac_dev->fixed_bus_id, + mac_dev->phy_if); + else + phy_dev = of_phy_attach(net_dev, mac_dev->phy_node, 0, + mac_dev->phy_if); + if (unlikely(phy_dev == NULL) || IS_ERR(phy_dev)) { + cpu_netdev_err(net_dev, "Could not attach to PHY %s\n", + mac_dev->phy_node ? + mac_dev->phy_node->full_name : + mac_dev->fixed_bus_id); + return phy_dev == NULL ? -ENODEV : PTR_ERR(phy_dev); + } + + phy_dev->supported &= priv->mac_dev->if_support; + phy_dev->advertising = phy_dev->supported; + + mac_dev->phy_dev = phy_dev; + + return 0; +} + +static int __cold uninit(struct mac_device *mac_dev) +{ + int _errno, __errno; + t_Error err; + const struct mac_priv_s *priv; + + priv = macdev_priv(mac_dev); + + err = FM_MAC_Disable(priv->mac, e_COMM_MODE_RX_AND_TX); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) + dpaa_eth_err(mac_dev->dev, "FM_MAC_Disable() = 0x%08x\n", err); + + err = FM_MAC_Free(priv->mac); + __errno = -GET_ERROR_TYPE(err); + if (unlikely(__errno < 0)) { + dpaa_eth_err(mac_dev->dev, "FM_MAC_Free() = 0x%08x\n", err); + if (_errno < 0) + _errno = __errno; + } + + return _errno; +} + +static int __cold ptp_enable(struct mac_device *mac_dev) +{ + int _errno; + t_Error err; + const struct mac_priv_s *priv; + + priv = macdev_priv(mac_dev); + + err = FM_MAC_Enable1588TimeStamp(priv->mac); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) + dpaa_eth_err(mac_dev->dev, "FM_MAC_Enable1588TimeStamp()" + "= 0x%08x\n", err); + return _errno; +} + +static int __cold ptp_disable(struct mac_device *mac_dev) +{ + int _errno; + t_Error err; + const struct mac_priv_s *priv; + + priv = macdev_priv(mac_dev); + + err = FM_MAC_Disable1588TimeStamp(priv->mac); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) + dpaa_eth_err(mac_dev->dev, "FM_MAC_Disable1588TimeStamp()" + "= 0x%08x\n", err); + return _errno; +} + +static int __cold fm_rtc_enable(struct net_device *net_dev) +{ + struct dpa_priv_s *priv = netdev_priv(net_dev); + struct mac_device *mac_dev = priv->mac_dev; + int _errno; + t_Error err; + + err = FM_RTC_Enable(fm_get_rtc_handle(mac_dev->fm_dev), 0); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) + dpaa_eth_err(mac_dev->dev, "FM_RTC_Enable = 0x%08x\n", err); + + return _errno; +} + +static int __cold fm_rtc_disable(struct net_device *net_dev) +{ + struct dpa_priv_s *priv = netdev_priv(net_dev); + struct mac_device *mac_dev = priv->mac_dev; + int _errno; + t_Error err; + + err = FM_RTC_Disable(fm_get_rtc_handle(mac_dev->fm_dev)); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) + dpaa_eth_err(mac_dev->dev, "FM_RTC_Disable = 0x%08x\n", err); + + return _errno; +} + +static int __cold fm_rtc_get_cnt(struct net_device *net_dev, uint64_t *ts) +{ + struct dpa_priv_s *priv = netdev_priv(net_dev); + struct mac_device *mac_dev = priv->mac_dev; + int _errno; + t_Error err; + + err = FM_RTC_GetCurrentTime(fm_get_rtc_handle(mac_dev->fm_dev), ts); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) + dpaa_eth_err(mac_dev->dev, "FM_RTC_GetCurrentTime = 0x%08x\n", + err); + + return _errno; +} + +static int __cold fm_rtc_set_cnt(struct net_device *net_dev, uint64_t ts) +{ + struct dpa_priv_s *priv = netdev_priv(net_dev); + struct mac_device *mac_dev = priv->mac_dev; + int _errno; + t_Error err; + + err = FM_RTC_SetCurrentTime(fm_get_rtc_handle(mac_dev->fm_dev), ts); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) + dpaa_eth_err(mac_dev->dev, "FM_RTC_SetCurrentTime = 0x%08x\n", + err); + + return _errno; +} + +static int __cold fm_rtc_get_drift(struct net_device *net_dev, uint32_t *drift) +{ + struct dpa_priv_s *priv = netdev_priv(net_dev); + struct mac_device *mac_dev = priv->mac_dev; + int _errno; + t_Error err; + + err = FM_RTC_GetFreqCompensation(fm_get_rtc_handle(mac_dev->fm_dev), + drift); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) + dpaa_eth_err(mac_dev->dev, "FM_RTC_GetFreqCompensation =" + "0x%08x\n", err); + + return _errno; +} + +static int __cold fm_rtc_set_drift(struct net_device *net_dev, uint32_t drift) +{ + struct dpa_priv_s *priv = netdev_priv(net_dev); + struct mac_device *mac_dev = priv->mac_dev; + int _errno; + t_Error err; + + err = FM_RTC_SetFreqCompensation(fm_get_rtc_handle(mac_dev->fm_dev), + drift); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) + dpaa_eth_err(mac_dev->dev, "FM_RTC_SetFreqCompensation =" + "0x%08x\n", err); + + return _errno; +} + +static int __cold fm_rtc_set_alarm(struct net_device *net_dev, uint32_t id, + uint64_t time) +{ + struct dpa_priv_s *priv = netdev_priv(net_dev); + struct mac_device *mac_dev = priv->mac_dev; + t_FmRtcAlarmParams alarm; + int _errno; + t_Error err; + + alarm.alarmId = id; + alarm.alarmTime = time; + alarm.f_AlarmCallback = NULL; + err = FM_RTC_SetAlarm(fm_get_rtc_handle(mac_dev->fm_dev), + &alarm); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) + dpaa_eth_err(mac_dev->dev, "FM_RTC_SetAlarm =" + "0x%08x\n", err); + + return _errno; +} + +static int __cold fm_rtc_set_fiper(struct net_device *net_dev, uint32_t id, + uint64_t fiper) +{ + struct dpa_priv_s *priv = netdev_priv(net_dev); + struct mac_device *mac_dev = priv->mac_dev; + t_FmRtcPeriodicPulseParams pp; + int _errno; + t_Error err; + + pp.periodicPulseId = id; + pp.periodicPulsePeriod = fiper; + pp.f_PeriodicPulseCallback = NULL; + err = FM_RTC_SetPeriodicPulse(fm_get_rtc_handle(mac_dev->fm_dev), &pp); + _errno = -GET_ERROR_TYPE(err); + if (unlikely(_errno < 0)) + dpaa_eth_err(mac_dev->dev, "FM_RTC_SetPeriodicPulse =" + "0x%08x\n", err); + + return _errno; +} + +static void __cold setup_dtsec(struct mac_device *mac_dev) +{ + mac_dev->init_phy = dtsec_init_phy; + mac_dev->init = init; + mac_dev->start = start; + mac_dev->stop = stop; + mac_dev->change_promisc = change_promisc; + mac_dev->change_addr = change_addr; + mac_dev->set_multi = set_multi; + mac_dev->uninit = uninit; + mac_dev->ptp_enable = ptp_enable; + mac_dev->ptp_disable = ptp_disable; + mac_dev->fm_rtc_enable = fm_rtc_enable; + mac_dev->fm_rtc_disable = fm_rtc_disable; + mac_dev->fm_rtc_get_cnt = fm_rtc_get_cnt; + mac_dev->fm_rtc_set_cnt = fm_rtc_set_cnt; + mac_dev->fm_rtc_get_drift = fm_rtc_get_drift; + mac_dev->fm_rtc_set_drift = fm_rtc_set_drift; + mac_dev->fm_rtc_set_alarm = fm_rtc_set_alarm; + mac_dev->fm_rtc_set_fiper = fm_rtc_set_fiper; +} + +static void __cold setup_xgmac(struct mac_device *mac_dev) +{ + mac_dev->init_phy = xgmac_init_phy; + mac_dev->init = init; + mac_dev->start = start; + mac_dev->stop = stop; + mac_dev->change_promisc = change_promisc; + mac_dev->change_addr = change_addr; + mac_dev->set_multi = set_multi; + mac_dev->uninit = uninit; +} + +void (*const mac_setup[])(struct mac_device *mac_dev) = { + [DTSEC] = setup_dtsec, + [XGMAC] = setup_xgmac +}; --- linux-3.13.0.orig/drivers/net/dpa/mac.c +++ linux-3.13.0/drivers/net/dpa/mac.c @@ -0,0 +1,428 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include +#include +#include +#include +#include +#include + +#include "dpaa_eth-common.h" + +#include "lnxwrp_fm_ext.h" + +#include "mac.h" + +#define DTSEC_SUPPORTED \ + (SUPPORTED_10baseT_Half \ + | SUPPORTED_10baseT_Full \ + | SUPPORTED_100baseT_Half \ + | SUPPORTED_100baseT_Full \ + | SUPPORTED_Autoneg \ + | SUPPORTED_MII) + +static const char phy_str[][11] = +{ + [PHY_INTERFACE_MODE_MII] = "mii", + [PHY_INTERFACE_MODE_GMII] = "gmii", + [PHY_INTERFACE_MODE_SGMII] = "sgmii", + [PHY_INTERFACE_MODE_TBI] = "tbi", + [PHY_INTERFACE_MODE_RMII] = "rmii", + [PHY_INTERFACE_MODE_RGMII] = "rgmii", + [PHY_INTERFACE_MODE_RGMII_ID] = "rgmii-id", + [PHY_INTERFACE_MODE_RGMII_RXID] = "rgmii-rxid", + [PHY_INTERFACE_MODE_RGMII_TXID] = "rgmii-txid", + [PHY_INTERFACE_MODE_RTBI] = "rtbi", + [PHY_INTERFACE_MODE_XGMII] = "xgmii" +}; + +static phy_interface_t __pure __attribute__((nonnull)) str2phy(const char *str) +{ + int i; + + for (i = 0; i < ARRAY_SIZE(phy_str); i++) + if (strcmp(str, phy_str[i]) == 0) + return (phy_interface_t)i; + + return PHY_INTERFACE_MODE_MII; +} + +static const uint16_t phy2speed[] = +{ + [PHY_INTERFACE_MODE_MII] = SPEED_100, + [PHY_INTERFACE_MODE_GMII] = SPEED_1000, + [PHY_INTERFACE_MODE_SGMII] = SPEED_1000, + [PHY_INTERFACE_MODE_TBI] = SPEED_1000, + [PHY_INTERFACE_MODE_RMII] = SPEED_100, + [PHY_INTERFACE_MODE_RGMII] = SPEED_1000, + [PHY_INTERFACE_MODE_RGMII_ID] = SPEED_1000, + [PHY_INTERFACE_MODE_RGMII_RXID] = SPEED_1000, + [PHY_INTERFACE_MODE_RGMII_TXID] = SPEED_1000, + [PHY_INTERFACE_MODE_RTBI] = SPEED_1000, + [PHY_INTERFACE_MODE_XGMII] = SPEED_10000 +}; + +static struct mac_device * __cold +alloc_macdev(struct device *dev, size_t sizeof_priv, void (*setup)(struct mac_device *mac_dev)) +{ + struct mac_device *mac_dev; + + mac_dev = devm_kzalloc(dev, sizeof(*mac_dev) + sizeof_priv, GFP_KERNEL); + if (unlikely(mac_dev == NULL)) + mac_dev = ERR_PTR(-ENOMEM); + else { + mac_dev->dev = dev; + dev_set_drvdata(dev, mac_dev); + setup(mac_dev); + } + + return mac_dev; +} + +static int __cold free_macdev(struct mac_device *mac_dev) +{ + dev_set_drvdata(mac_dev->dev, NULL); + + return mac_dev->uninit(mac_dev); +} + +static const struct of_device_id mac_match[] = { + [DTSEC] = { + .compatible = "fsl,fman-1g-mac" + }, + [XGMAC] = { + .compatible = "fsl,fman-10g-mac" + }, + {} +}; +MODULE_DEVICE_TABLE(of, mac_match); + +static int __cold mac_probe(struct platform_device *_of_dev) +{ + int _errno, i, lenp; + struct device *dev; + struct device_node *mac_node, *dev_node; + struct mac_device *mac_dev; + struct platform_device *of_dev; + struct resource res; + const uint8_t *mac_addr; + const char *char_prop; + const phandle *phandle_prop; + const uint32_t *uint32_prop; + const struct of_device_id *match; + + dev = &_of_dev->dev; + mac_node = dev->of_node; + + match = of_match_device(mac_match, dev); + if (!match) + return -EINVAL; + + for (i = 0; i < ARRAY_SIZE(mac_match) - 1 && match != mac_match + i; i++); + BUG_ON(i >= ARRAY_SIZE(mac_match) - 1); + + mac_dev = alloc_macdev(dev, mac_sizeof_priv[i], mac_setup[i]); + if (IS_ERR(mac_dev)) { + _errno = PTR_ERR(mac_dev); + dpaa_eth_err(dev, "alloc_macdev() = %d\n", _errno); + goto _return; + } + + INIT_LIST_HEAD(&mac_dev->mc_addr_list); + + /* Get the FM node */ + dev_node = of_get_parent(mac_node); + if (unlikely(dev_node == NULL)) { + dpaa_eth_err(dev, "of_get_parent(%s) failed\n", + mac_node->full_name); + _errno = -EINVAL; + goto _return_dev_set_drvdata; + } + + of_dev = of_find_device_by_node(dev_node); + if (unlikely(of_dev == NULL)) { + dpaa_eth_err(dev, "of_find_device_by_node(%s) failed\n", + dev_node->full_name); + _errno = -EINVAL; + goto _return_of_node_put; + } + + mac_dev->fm_dev = fm_bind(&of_dev->dev); + if (unlikely(mac_dev->fm_dev == NULL)) { + dpaa_eth_err(dev, "fm_bind(%s) failed\n", dev_node->full_name); + _errno = -ENODEV; + goto _return_of_node_put; + } + + mac_dev->fm = (void *)fm_get_handle(mac_dev->fm_dev); + of_node_put(dev_node); + + /* Get the address of the memory mapped registers */ + _errno = of_address_to_resource(mac_node, 0, &res); + if (unlikely(_errno < 0)) { + dpaa_eth_err(dev, "of_address_to_resource(%s) = %d\n", + mac_node->full_name, _errno); + goto _return_dev_set_drvdata; + } + + mac_dev->res = __devm_request_region( + dev, + fm_get_mem_region(mac_dev->fm_dev), + res.start, res.end + 1 - res.start, "mac"); + if (unlikely(mac_dev->res == NULL)) { + dpaa_eth_err(dev, "__devm_request_mem_region(mac) failed\n"); + _errno = -EBUSY; + goto _return_dev_set_drvdata; + } + + mac_dev->vaddr = devm_ioremap(dev, mac_dev->res->start, + mac_dev->res->end + 1 - mac_dev->res->start); + if (unlikely(mac_dev->vaddr == NULL)) { + dpaa_eth_err(dev, "devm_ioremap() failed\n"); + _errno = -EIO; + goto _return_dev_set_drvdata; + } + + /* + * XXX: Warning, future versions of Linux will most likely not even + * call the driver code to allow us to override the TBIPA value, + * we'll need to address this when we move to newer kernel rev + */ +#define TBIPA_OFFSET 0x1c +#define TBIPA_DEFAULT_ADDR 5 + mac_dev->tbi_node = of_parse_phandle(mac_node, "tbi-handle", 0); + if (mac_dev->tbi_node) { + u32 tbiaddr = TBIPA_DEFAULT_ADDR; + + uint32_prop = of_get_property(mac_dev->tbi_node, "reg", NULL); + if (uint32_prop) + tbiaddr = *uint32_prop; + out_be32(mac_dev->vaddr + TBIPA_OFFSET, tbiaddr); + } + + if (!of_device_is_available(mac_node)) { + devm_iounmap(dev, mac_dev->vaddr); + __devm_release_region(dev, fm_get_mem_region(mac_dev->fm_dev), + res.start, res.end + 1 - res.start); + fm_unbind(mac_dev->fm_dev); + devm_kfree(dev, mac_dev); + dev_set_drvdata(dev, NULL); + return -ENODEV; + } + + /* Get the cell-index */ + uint32_prop = of_get_property(mac_node, "cell-index", &lenp); + if (unlikely(uint32_prop == NULL)) { + dpaa_eth_err(dev, "of_get_property(%s, cell-index) failed\n", + mac_node->full_name); + _errno = -EINVAL; + goto _return_dev_set_drvdata; + } + BUG_ON(lenp != sizeof(uint32_t)); + mac_dev->cell_index = *uint32_prop; + + /* Get the MAC address */ + mac_addr = of_get_mac_address(mac_node); + if (unlikely(mac_addr == NULL)) { + dpaa_eth_err(dev, "of_get_mac_address(%s) failed\n", + mac_node->full_name); + _errno = -EINVAL; + goto _return_dev_set_drvdata; + } + memcpy(mac_dev->addr, mac_addr, sizeof(mac_dev->addr)); + + /* Get the port handles */ + phandle_prop = of_get_property(mac_node, "fsl,port-handles", &lenp); + if (unlikely(phandle_prop == NULL)) { + dpaa_eth_err(dev, "of_get_property(%s, port-handles) failed\n", + mac_node->full_name); + _errno = -EINVAL; + goto _return_dev_set_drvdata; + } + BUG_ON(lenp != sizeof(phandle) * ARRAY_SIZE(mac_dev->port_dev)); + + for_each_port_device(i, mac_dev->port_dev) { + /* Find the port node */ + dev_node = of_find_node_by_phandle(phandle_prop[i]); + if (unlikely(dev_node == NULL)) { + dpaa_eth_err(dev, "of_find_node_by_phandle() failed\n"); + _errno = -EINVAL; + goto _return_of_node_put; + } + + of_dev = of_find_device_by_node(dev_node); + if (unlikely(of_dev == NULL)) { + dpaa_eth_err(dev, "of_find_device_by_node(%s) failed\n", + dev_node->full_name); + _errno = -EINVAL; + goto _return_of_node_put; + } + + mac_dev->port_dev[i] = fm_port_bind(&of_dev->dev); + if (unlikely(mac_dev->port_dev[i] == NULL)) { + dpaa_eth_err(dev, "dev_get_drvdata(%s) failed\n", + dev_node->full_name); + _errno = -EINVAL; + goto _return_of_node_put; + } + of_node_put(dev_node); + } + + /* Get the PHY connection type */ + char_prop = (const char *)of_get_property(mac_node, + "phy-connection-type", NULL); + if (unlikely(char_prop == NULL)) { + dpaa_eth_warning(dev, + "of_get_property(%s, phy-connection-type) " + "failed. Defaulting to MII\n", + mac_node->full_name); + mac_dev->phy_if = PHY_INTERFACE_MODE_MII; + } else + mac_dev->phy_if = str2phy(char_prop); + + mac_dev->link = false; + mac_dev->half_duplex = false; + mac_dev->speed = phy2speed[mac_dev->phy_if]; + mac_dev->max_speed = mac_dev->speed; + mac_dev->if_support = DTSEC_SUPPORTED; + /* We don't support half-duplex in SGMII mode */ + if (strstr(char_prop, "sgmii")) + mac_dev->if_support &= ~(SUPPORTED_10baseT_Half | + SUPPORTED_100baseT_Half); + + /* Gigabit support (no half-duplex) */ + if (mac_dev->max_speed == 1000) + mac_dev->if_support |= SUPPORTED_1000baseT_Full; + + /* The 10G interface only supports one mode */ + if (strstr(char_prop, "xgmii")) + mac_dev->if_support = SUPPORTED_10000baseT_Full; + + /* Get the rest of the PHY information */ + mac_dev->phy_node = of_parse_phandle(mac_node, "phy-handle", 0); + if (mac_dev->phy_node == NULL) { + int sz; + const u32 *phy_id = of_get_property(mac_node, "fixed-link", + &sz); + if (!phy_id || sz < sizeof(*phy_id)) { + cpu_dev_err(dev, "No PHY (or fixed link) found\n"); + _errno = -EINVAL; + goto _return_dev_set_drvdata; + } + + sprintf(mac_dev->fixed_bus_id, PHY_ID_FMT, "0", phy_id[0]); + } + + _errno = mac_dev->init(mac_dev); + if (unlikely(_errno < 0)) { + dpaa_eth_err(dev, "mac_dev->init() = %d\n", _errno); + goto _return_dev_set_drvdata; + } + + cpu_dev_info(dev, + "FMan MAC address: %02hx:%02hx:%02hx:%02hx:%02hx:%02hx\n", + mac_dev->addr[0], mac_dev->addr[1], mac_dev->addr[2], + mac_dev->addr[3], mac_dev->addr[4], mac_dev->addr[5]); + + goto _return; + +_return_of_node_put: + of_node_put(dev_node); +_return_dev_set_drvdata: + dev_set_drvdata(dev, NULL); +_return: + return _errno; +} + +static int __cold mac_remove(struct platform_device *of_dev) +{ + int i, _errno; + struct device *dev; + struct mac_device *mac_dev; + + dev = &of_dev->dev; + mac_dev = (struct mac_device *)dev_get_drvdata(dev); + + for_each_port_device(i, mac_dev->port_dev) + fm_port_unbind(mac_dev->port_dev[i]); + + fm_unbind(mac_dev->fm_dev); + + _errno = free_macdev(mac_dev); + + return _errno; +} + +static struct platform_driver mac_driver = { + .driver = { + .name = KBUILD_MODNAME, + .of_match_table = mac_match, + .owner = THIS_MODULE, + }, + .probe = mac_probe, + .remove = mac_remove, +}; + +static int __init __cold mac_load(void) +{ + int _errno; + + cpu_pr_debug(KBUILD_MODNAME ": -> %s:%s()\n", __file__, __func__); + + cpu_pr_info(KBUILD_MODNAME ": %s (" VERSION ")\n", mac_driver_description); + + _errno = platform_driver_register(&mac_driver); + if (unlikely(_errno < 0)) { + cpu_pr_err(KBUILD_MODNAME ": %s:%hu:%s(): of_register_platform_driver() = %d\n", + __file__, __LINE__, __func__, _errno); + goto _return; + } + + goto _return; + +_return: + cpu_pr_debug(KBUILD_MODNAME ": %s:%s() ->\n", __file__, __func__); + + return _errno; +} +module_init(mac_load); + +static void __exit __cold mac_unload(void) +{ + cpu_pr_debug(KBUILD_MODNAME ": -> %s:%s()\n", __file__, __func__); + + platform_driver_unregister(&mac_driver); + + cpu_pr_debug(KBUILD_MODNAME ": %s:%s() ->\n", __file__, __func__); +} +module_exit(mac_unload); --- linux-3.13.0.orig/drivers/net/dpa/mac.h +++ linux-3.13.0/drivers/net/dpa/mac.h @@ -0,0 +1,113 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __MAC_H +#define __MAC_H + +#include /* struct device, BUS_ID_SIZE */ +#include /* ETH_ALEN */ +#include /* phy_interface_t, struct phy_device */ +#include + +#include "fsl_fman.h" /* struct port_device */ + +#ifndef CONFIG_DPA_MAX_FRM_SIZE +#define CONFIG_DPA_MAX_FRM_SIZE 0 +#endif + +enum {DTSEC, XGMAC}; + +struct mac_device { + struct device *dev; + void *priv; + uint8_t cell_index; + struct resource *res; + void *vaddr; + uint8_t addr[ETH_ALEN]; + bool promisc; + + struct fm *fm_dev; + struct fm_port *port_dev[2]; + + phy_interface_t phy_if; + u32 if_support; + bool link; + bool half_duplex; + uint16_t speed; + uint16_t max_speed; + struct device_node *phy_node; + char fixed_bus_id[MII_BUS_ID_SIZE + 3]; + struct device_node *tbi_node; + struct phy_device *phy_dev; + void *fm; + /* List of multicast addresses */ + struct list_head mc_addr_list; + + int (*init_phy)(struct net_device *net_dev); + int (*init)(struct mac_device *mac_dev); + int (*start)(struct mac_device *mac_dev); + int (*stop)(struct mac_device *mac_dev); + int (*change_promisc)(struct mac_device *mac_dev); + int (*change_addr)(struct mac_device *mac_dev, uint8_t *addr); + int (*set_multi)(struct net_device *net_dev); + int (*uninit)(struct mac_device *mac_dev); + int (*ptp_enable)(struct mac_device *mac_dev); + int (*ptp_disable)(struct mac_device *mac_dev); + int (*fm_rtc_enable)(struct net_device *net_dev); + int (*fm_rtc_disable)(struct net_device *net_dev); + int (*fm_rtc_get_cnt)(struct net_device *net_dev, uint64_t *ts); + int (*fm_rtc_set_cnt)(struct net_device *net_dev, uint64_t ts); + int (*fm_rtc_get_drift)(struct net_device *net_dev, uint32_t *drift); + int (*fm_rtc_set_drift)(struct net_device *net_dev, uint32_t drift); + int (*fm_rtc_set_alarm)(struct net_device *net_dev, uint32_t id, + uint64_t time); + int (*fm_rtc_set_fiper)(struct net_device *net_dev, uint32_t id, + uint64_t fiper); +}; + +struct mac_address { + uint8_t addr[ETH_ALEN]; + struct list_head list; +}; + +#define for_each_port_device(i, port_dev) \ + for (i = 0; i < ARRAY_SIZE(port_dev); i++) + +static inline void * __attribute((nonnull)) macdev_priv(const struct mac_device *mac_dev) +{ + return (void *)mac_dev + sizeof(*mac_dev); +} + +extern const char *mac_driver_description; +extern const size_t mac_sizeof_priv[]; +extern void (*const mac_setup[])(struct mac_device *mac_dev); + +#endif /* __MAC_H */ --- linux-3.13.0.orig/drivers/net/dpa/offline_port.c +++ linux-3.13.0/drivers/net/dpa/offline_port.c @@ -0,0 +1,340 @@ +/* + * Copyright 2011 Freescale Semiconductor Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/* + * Offline Parsing / Host Command port driver for FSL QorIQ FMan. + * Validates device-tree configuration and sets up the offline ports. + */ + +#include +#include +#include + +#include "offline_port.h" +#include "dpaa_eth-common.h" + +#define OH_MOD_DESCRIPTION "FSL FMan Offline Parsing port driver" + +MODULE_LICENSE("Dual BSD/GPL"); +MODULE_AUTHOR("Bogdan Hamciuc "); +MODULE_DESCRIPTION(OH_MOD_DESCRIPTION); + + +static const struct of_device_id oh_port_match_table[] = { + { + .compatible = "fsl,dpa-oh" + }, + { + .compatible = "fsl,dpa-oh-shared" + }, + {} +}; +MODULE_DEVICE_TABLE(of, oh_port_match_table); + +static int oh_port_remove(struct platform_device *_of_dev); +static int oh_port_probe(struct platform_device *_of_dev); + +static struct platform_driver oh_port_driver = { + .driver = { + .name = KBUILD_MODNAME, + .of_match_table = oh_port_match_table, + .owner = THIS_MODULE, + }, + .probe = oh_port_probe, + .remove = oh_port_remove, +}; + +/* Allocation code for the OH port's PCD frame queues */ +static int __cold oh_alloc_pcd_fqids(struct device *dev, + uint32_t num, + uint8_t alignment, + uint32_t *base_fqid) +{ + cpu_dev_crit(dev, "callback not implemented!\n"); + BUG(); + + return 0; +} + +static int __cold oh_free_pcd_fqids(struct device *dev, uint32_t base_fqid) +{ + dpaa_eth_crit(dev, "callback not implemented!\n"); + BUG(); + + return 0; +} + +static int +oh_port_probe(struct platform_device *_of_dev) +{ + struct device *dpa_oh_dev; + struct device_node *dpa_oh_node; + int lenp, _errno = 0, fq_idx; + const phandle *oh_port_handle; + struct platform_device *oh_of_dev; + struct device_node *oh_node; + struct device *oh_dev; + struct dpa_oh_config_s *oh_config; + uint32_t *oh_all_queues; + uint32_t queues_count; + uint32_t crt_fqid_base; + uint32_t crt_fq_count; + struct fm_port_non_rx_params oh_port_tx_params; + struct fm_port_pcd_param oh_port_pcd_params; + /* True if the current partition owns the OH port. */ + bool init_oh_port; + const struct of_device_id *match; + + dpa_oh_dev = &_of_dev->dev; + dpa_oh_node = dpa_oh_dev->of_node; + BUG_ON(dpa_oh_node == NULL); + + match = of_match_device(oh_port_match_table, dpa_oh_dev); + if (!match) + return -EINVAL; + + cpu_dev_dbg(dpa_oh_dev, "Probing OH port...\n"); + + /* + * Find the referenced OH node + */ + + oh_port_handle = of_get_property(dpa_oh_node, + "fsl,fman-oh-port", &lenp); + if (oh_port_handle == NULL) { + cpu_dev_err(dpa_oh_dev, "No OH port handle found in node %s\n", + dpa_oh_node->full_name); + return -EINVAL; + } + + BUG_ON(lenp % sizeof(*oh_port_handle)); + if (lenp != sizeof(*oh_port_handle)) { + cpu_dev_err(dpa_oh_dev, "Found %lu OH port bindings in node %s, " + "only 1 phandle is allowed.\n", + (unsigned long int)(lenp / sizeof(*oh_port_handle)), dpa_oh_node->full_name); + return -EINVAL; + } + + /* Read configuration for the OH port */ + oh_node = of_find_node_by_phandle(*oh_port_handle); + if (oh_node == NULL) { + cpu_dev_err(dpa_oh_dev, "Can't find OH node referenced from " + "node %s\n", dpa_oh_node->full_name); + return -EINVAL; + } + cpu_dev_info(dpa_oh_dev, "Found OH node handle compatible with %s.\n", + match->compatible); + + oh_of_dev = of_find_device_by_node(oh_node); + BUG_ON(oh_of_dev == NULL); + oh_dev = &oh_of_dev->dev; + of_node_put(oh_node); + + /* + * The OH port must be initialized exactly once. + * The following scenarios are of interest: + * - the node is Linux-private (will always initialize it); + * - the node is shared between two Linux partitions + * (only one of them will initialize it); + * - the node is shared between a Linux and a LWE partition + * (Linux will initialize it) - "fsl,dpa-oh-shared" + */ + + /* Check if the current partition owns the OH port + * and ought to initialize it. It may be the case that we leave this + * to another (also Linux) partition. */ + init_oh_port = strcmp(match->compatible, "fsl,dpa-oh-shared"); + + /* If we aren't the "owner" of the OH node, we're done here. */ + if (!init_oh_port) { + cpu_dev_dbg(dpa_oh_dev, "Not owning the shared OH port %s, " + "will not initialize it.\n", oh_node->full_name); + return 0; + } + + /* Allocate OH dev private data */ + oh_config = devm_kzalloc(dpa_oh_dev, sizeof(*oh_config), GFP_KERNEL); + if (oh_config == NULL) { + cpu_dev_err(dpa_oh_dev, "Can't allocate private data for " + "OH node %s referenced from node %s!\n", + oh_node->full_name, dpa_oh_node->full_name); + return -ENOMEM; + } + + /* + * Read FQ ids/nums for the DPA OH node + */ + oh_all_queues = (uint32_t *)of_get_property(dpa_oh_node, + "fsl,qman-frame-queues-oh", &lenp); + if (oh_all_queues == NULL) { + cpu_dev_err(dpa_oh_dev, "No frame queues have been " + "defined for OH node %s referenced from node %s\n", + oh_node->full_name, dpa_oh_node->full_name); + _errno = -EINVAL; + goto return_kfree; + } + + /* Check that the OH error and default FQs are there */ + BUG_ON(lenp % (2 * sizeof(*oh_all_queues))); + queues_count = lenp / (2 * sizeof(*oh_all_queues)); + if (queues_count != 2) { + dpaa_eth_err(dpa_oh_dev, "Error and Default queues must be " + "defined for OH node %s referenced from node %s\n", + oh_node->full_name, dpa_oh_node->full_name); + _errno = -EINVAL; + goto return_kfree; + } + + /* Read the FQIDs defined for this OH port */ + cpu_dev_dbg(dpa_oh_dev, "Reading %d queues...\n", queues_count); + fq_idx = 0; + + /* Error FQID - must be present */ + crt_fqid_base = oh_all_queues[fq_idx++]; + crt_fq_count = oh_all_queues[fq_idx++]; + if (crt_fq_count != 1) { + cpu_dev_err(dpa_oh_dev, "Only 1 Error FQ allowed in OH node %s " + "referenced from node %s (read: %d FQIDs).\n", + oh_node->full_name, dpa_oh_node->full_name, + crt_fq_count); + _errno = -EINVAL; + goto return_kfree; + } + oh_config->error_fqid = crt_fqid_base; + cpu_dev_dbg(dpa_oh_dev, "Read Error FQID 0x%x for OH port %s.\n", + oh_config->error_fqid, oh_node->full_name); + + /* Default FQID - must be present */ + crt_fqid_base = oh_all_queues[fq_idx++]; + crt_fq_count = oh_all_queues[fq_idx++]; + if (crt_fq_count != 1) { + cpu_dev_err(dpa_oh_dev, "Only 1 Default FQ allowed " + "in OH node %s referenced from %s (read: %d FQIDs).\n", + oh_node->full_name, dpa_oh_node->full_name, + crt_fq_count); + _errno = -EINVAL; + goto return_kfree; + } + oh_config->default_fqid = crt_fqid_base; + cpu_dev_dbg(dpa_oh_dev, "Read Default FQID 0x%x for OH port %s.\n", + oh_config->default_fqid, oh_node->full_name); + + /* Get a handle to the fm_port so we can set + * its configuration params */ + oh_config->oh_port = fm_port_bind(oh_dev); + if (oh_config->oh_port == NULL) { + cpu_dev_err(dpa_oh_dev, "NULL drvdata from fm port dev %s!\n", + oh_node->full_name); + _errno = -EINVAL; + goto return_kfree; + } + + /* Set Tx params */ + dpaa_eth_init_port(tx, oh_config->oh_port, oh_port_tx_params, + oh_config->error_fqid, oh_config->default_fqid, FALSE); + /* Set PCD params */ + oh_port_pcd_params.cba = oh_alloc_pcd_fqids; + oh_port_pcd_params.cbf = oh_free_pcd_fqids; + oh_port_pcd_params.dev = dpa_oh_dev; + fm_port_pcd_bind(oh_config->oh_port, &oh_port_pcd_params); + + dev_set_drvdata(dpa_oh_dev, oh_config); + + /* Enable the OH port */ + fm_port_enable(oh_config->oh_port); + cpu_dev_info(dpa_oh_dev, "OH port %s enabled.\n", oh_node->full_name); + + return 0; + +return_kfree: + devm_kfree(dpa_oh_dev, oh_config); + return _errno; +} + +static int __cold oh_port_remove(struct platform_device *_of_dev) +{ + int _errno = 0; + struct dpa_oh_config_s *oh_config; + + cpu_pr_info("Removing OH port...\n"); + + oh_config = dev_get_drvdata(&_of_dev->dev); + if (oh_config == NULL) { + cpu_pr_err(KBUILD_MODNAME + ": %s:%hu:%s(): No OH config in device private data!\n", + __file__, __LINE__, __func__); + _errno = -ENODEV; + goto return_error; + } + if (oh_config->oh_port == NULL) { + cpu_pr_err(KBUILD_MODNAME + ": %s:%hu:%s(): No fm port in device private data!\n", + __file__, __LINE__, __func__); + _errno = -EINVAL; + goto return_error; + } + + fm_port_disable(oh_config->oh_port); + devm_kfree(&_of_dev->dev, oh_config); + dev_set_drvdata(&_of_dev->dev, NULL); + +return_error: + return _errno; +} + +static int __init __cold oh_port_load(void) +{ + int _errno; + + cpu_pr_info(KBUILD_MODNAME ": " OH_MOD_DESCRIPTION " (" VERSION ")\n"); + + _errno = platform_driver_register(&oh_port_driver); + if (_errno < 0) { + cpu_pr_err(KBUILD_MODNAME + ": %s:%hu:%s(): platform_driver_register() = %d\n", + __file__, __LINE__, __func__, _errno); + } + + cpu_pr_debug(KBUILD_MODNAME ": %s:%s() ->\n", __file__, __func__); + return _errno; +} +module_init(oh_port_load); + +static void __exit __cold oh_port_unload(void) +{ + cpu_pr_debug(KBUILD_MODNAME ": -> %s:%s()\n", __file__, __func__); + + platform_driver_unregister(&oh_port_driver); + + cpu_pr_debug(KBUILD_MODNAME ": %s:%s() ->\n", __file__, __func__); +} +module_exit(oh_port_unload); --- linux-3.13.0.orig/drivers/net/dpa/offline_port.h +++ linux-3.13.0/drivers/net/dpa/offline_port.h @@ -0,0 +1,45 @@ +/* + * Copyright 2011 Freescale Semiconductor Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __OFFLINE_PORT_H +#define __OFFLINE_PORT_H + +#include "fsl_fman.h" + +/* OH port configuration */ +struct dpa_oh_config_s { + uint32_t error_fqid; + uint32_t default_fqid; + struct fm_port *oh_port; +}; + +#endif /* __OFFLINE_PORT_H */ --- linux-3.13.0.orig/drivers/net/ethernet/Kconfig +++ linux-3.13.0/drivers/net/ethernet/Kconfig @@ -17,6 +17,7 @@ config SUNGEM_PHY tristate +source "drivers/net/ethernet/apm/Kconfig" source "drivers/net/ethernet/3com/Kconfig" source "drivers/net/ethernet/adaptec/Kconfig" source "drivers/net/ethernet/aeroflex/Kconfig" --- linux-3.13.0.orig/drivers/net/ethernet/Makefile +++ linux-3.13.0/drivers/net/ethernet/Makefile @@ -9,6 +9,7 @@ obj-$(CONFIG_NET_VENDOR_ALLWINNER) += allwinner/ obj-$(CONFIG_NET_VENDOR_ALTEON) += alteon/ obj-$(CONFIG_NET_VENDOR_AMD) += amd/ +obj-$(CONFIG_NET_XGENE) += apm/ obj-$(CONFIG_NET_VENDOR_APPLE) += apple/ obj-$(CONFIG_NET_VENDOR_ARC) += arc/ obj-$(CONFIG_NET_VENDOR_ATHEROS) += atheros/ --- linux-3.13.0.orig/drivers/net/ethernet/apm/Kconfig +++ linux-3.13.0/drivers/net/ethernet/apm/Kconfig @@ -0,0 +1 @@ +source "drivers/net/ethernet/apm/xgene/Kconfig" --- linux-3.13.0.orig/drivers/net/ethernet/apm/Makefile +++ linux-3.13.0/drivers/net/ethernet/apm/Makefile @@ -0,0 +1,5 @@ +# +# Makefile for APM X-GENE Ethernet driver. +# + +obj-$(CONFIG_NET_XGENE) += xgene/ --- linux-3.13.0.orig/drivers/net/ethernet/apm/xgene/Kconfig +++ linux-3.13.0/drivers/net/ethernet/apm/xgene/Kconfig @@ -0,0 +1,10 @@ +config NET_XGENE + tristate "APM X-Gene Ethernet Driver" + depends on XGENE_QMTM + select PHYLIB + default y + help + This is the Ethernet driver for APM X-Gene SoC. + + To compile this driver as a module, choose M here. This module will + be called xgene_enet. --- linux-3.13.0.orig/drivers/net/ethernet/apm/xgene/Makefile +++ linux-3.13.0/drivers/net/ethernet/apm/xgene/Makefile @@ -0,0 +1,12 @@ +# +# Makefile for APM X-GENE Ethernet driver. +# + +xgene-enet-objs := \ + xgene_enet_common.o \ + xgene_enet_mac.o \ + xgene_enet_main.o \ + xgene_enet_err.o \ + xgene_enet_tools.o + +obj-$(CONFIG_NET_XGENE) += xgene-enet.o --- linux-3.13.0.orig/drivers/net/ethernet/apm/xgene/xgene_enet_common.c +++ linux-3.13.0/drivers/net/ethernet/apm/xgene/xgene_enet_common.c @@ -0,0 +1,491 @@ +/* AppliedMicro X-Gene SoC Ethernet Driver + * + * Copyright (c) 2013, Applied Micro Circuits Corporation + * Authors: Ravi Patel + * Iyappan Subramanian + * Fushen Chen + * Keyur Chudgar + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include "xgene_enet_main.h" +#include "xgene_enet_common.h" +#include "xgene_enet_csr.h" + +/* Indirect Address - read/write commands */ +#define PHY_ADDR_WR(src) (((u32)(src) < 8) & 0x00001f00) +#define REG_ADDR_WR(src) (((u32)(src)) & 0x0000001f) + +int xgene_enet_wr(struct xgene_enet_priv *priv, u8 block_id, + u32 reg_offset, u32 value) +{ + u32 cmd_done; + u32 indirect = 0; + int wait; + void *addr_reg_offst, *cmd_reg_offst, *wr_reg_offst; + void *cmd_done_reg_offst; + + switch (block_id) { + case BLOCK_ETH_CSR: + addr_reg_offst = priv->eth_csr_addr_v + reg_offset; + pr_debug("ETH CSR write\n"); + break; + + case BLOCK_ETH_MDIO_CSR: + addr_reg_offst = priv->vmii_base + reg_offset + + BLOCK_ETH_CSR_OFFSET; + pr_debug("BLOCK_ETH_MDIO_CSR write 0x%p\n", addr_reg_offst); + break; + + case BLOCK_ETH_CLE: + addr_reg_offst = priv->eth_cle_addr_v + reg_offset; + pr_debug("ETH CLE write\n"); + break; + + case BLOCK_ETH_QMI: + addr_reg_offst = priv->eth_qmi_addr_v + reg_offset; + pr_debug("ETH QMI write\n"); + break; + + case BLOCK_ETH_SDS_CSR: + addr_reg_offst = priv->eth_sds_csr_addr_v + reg_offset; + pr_debug("ETH SDS CSR write\n"); + break; + + case BLOCK_ETH_CLKRST_CSR: + addr_reg_offst = priv->eth_clkrst_csr_addr_v + reg_offset; + pr_debug("ETH CLKRST CSR write\n"); + break; + + case BLOCK_ETH_DIAG_CSR: + addr_reg_offst = priv->eth_diag_csr_addr_v + reg_offset; + pr_debug("ETH DIAG CSR write\n"); + break; + + case BLOCK_MCX_MAC: + case BLOCK_ETH_INTPHY: + addr_reg_offst = priv->mcx_mac_addr_v + MAC_ADDR_REG_OFFSET; + cmd_reg_offst = priv->mcx_mac_addr_v + MAC_COMMAND_REG_OFFSET; + wr_reg_offst = priv->mcx_mac_addr_v + MAC_WRITE_REG_OFFSET; + cmd_done_reg_offst = priv->mcx_mac_addr_v + + MAC_COMMAND_DONE_REG_OFFSET; + indirect = 1; + pr_debug("MCX MAC/Internal PHY write\n"); + break; + + case BLOCK_ETH_EXTPHY: + addr_reg_offst = priv->vmii_base + MAC_ADDR_REG_OFFSET; + cmd_reg_offst = priv->vmii_base + MAC_COMMAND_REG_OFFSET; + wr_reg_offst = priv->vmii_base + MAC_WRITE_REG_OFFSET; + cmd_done_reg_offst = priv->vmii_base + + MAC_COMMAND_DONE_REG_OFFSET; + indirect = 1; + pr_debug("MCX MAC/External PHY write\n"); + break; + + case BLOCK_MCX_STATS: + addr_reg_offst = priv->mcx_stats_addr_v + STAT_ADDR_REG_OFFSET; + cmd_reg_offst = + priv->mcx_stats_addr_v + STAT_COMMAND_REG_OFFSET; + wr_reg_offst = priv->mcx_stats_addr_v + STAT_WRITE_REG_OFFSET; + cmd_done_reg_offst = priv->mcx_stats_addr_v + + STAT_COMMAND_DONE_REG_OFFSET; + indirect = 1; + pr_debug("MCX STATS write\n"); + break; + + case BLOCK_MCX_MAC_CSR: + addr_reg_offst = priv->mcx_mac_csr_addr_v + reg_offset; + pr_debug("MCX MAC CSR write\n"); + break; + + case BLOCK_SATA_ENET_CSR: + addr_reg_offst = priv->sata_enet_csr_addr_v + reg_offset; + pr_debug("SATA ENET CSR write\n"); + break; + + case BLOCK_AXG_MAC: + addr_reg_offst = priv->axg_mac_addr_v + MAC_ADDR_REG_OFFSET; + cmd_reg_offst = priv->axg_mac_addr_v + MAC_COMMAND_REG_OFFSET; + wr_reg_offst = priv->axg_mac_addr_v + MAC_WRITE_REG_OFFSET; + cmd_done_reg_offst = priv->axg_mac_addr_v + + MAC_COMMAND_DONE_REG_OFFSET; + indirect = 1; + pr_debug("AXG MAC write\n"); + break; + + case BLOCK_AXG_STATS: + addr_reg_offst = priv->axg_stats_addr_v + STAT_ADDR_REG_OFFSET; + cmd_reg_offst = + priv->axg_stats_addr_v + STAT_COMMAND_REG_OFFSET; + wr_reg_offst = priv->axg_stats_addr_v + STAT_WRITE_REG_OFFSET; + cmd_done_reg_offst = priv->axg_stats_addr_v + + STAT_COMMAND_DONE_REG_OFFSET; + indirect = 1; + pr_debug("AXG STATS write\n"); + break; + + case BLOCK_AXG_MAC_CSR: + addr_reg_offst = priv->axg_mac_csr_addr_v + reg_offset; + pr_debug("AXG MAC CSR write\n"); + break; + + case BLOCK_XGENET_PCS: + addr_reg_offst = priv->xgenet_pcs_addr_v + reg_offset; + pr_debug("XGENET PCS write\n"); + break; + + case BLOCK_XGENET_MDIO_CSR: + addr_reg_offst = priv->xgenet_mdio_csr_addr_v + reg_offset; + pr_debug("XGENET MDIO CSR write\n"); + break; + + default: + pr_err("Invalid blockid in write reg: %d\n", block_id); + return -1; + } + + if (indirect) { + xgene_enet_wr32(addr_reg_offst, reg_offset); + xgene_enet_wr32(wr_reg_offst, value); + xgene_enet_wr32(cmd_reg_offst, XGENE_ENET_WR_CMD); + pr_debug("Indirect write: addr: 0x%X, value: 0x%X\n", + reg_offset, value); + + /* wait upto 5 us for completion */ + wait = 5; + do { + xgene_enet_rd32(cmd_done_reg_offst, &cmd_done); + usleep_range(1, 2); + } while (--wait && !cmd_done); + if (!wait) { + pr_err("Write failed for blk: %d\n", block_id); + BUG(); + } + + xgene_enet_wr32(cmd_reg_offst, 0); + } else { + xgene_enet_wr32(addr_reg_offst, value); + pr_debug("Direct write addr: 0x%p, value: 0x%X\n", + addr_reg_offst, value); + } + + return 0; +} + +int xgene_enet_rd(struct xgene_enet_priv *priv, u8 block_id, + u32 reg_offset, u32 *value) +{ + u32 cmd_done; + u32 indirect = 0; + int wait; + void *addr_reg_offst, *cmd_reg_offst, *rd_reg_offst; + void *cmd_done_reg_offst; + + switch (block_id) { + case BLOCK_ETH_CSR: + addr_reg_offst = priv->eth_csr_addr_v + reg_offset; + pr_debug("ETH CSR read\n"); + break; + + case BLOCK_ETH_MDIO_CSR: + addr_reg_offst = priv->vmii_base + reg_offset + + BLOCK_ETH_CSR_OFFSET; + pr_debug("BLOCK_ETH_MDIO_CSR read 0x%p\n", addr_reg_offst); + break; + + case BLOCK_ETH_CLE: + addr_reg_offst = priv->eth_cle_addr_v + reg_offset; + pr_debug("ETH CLE read\n"); + break; + + case BLOCK_ETH_QMI: + addr_reg_offst = priv->eth_qmi_addr_v + reg_offset; + pr_debug("ETH QMI read\n"); + break; + + case BLOCK_ETH_SDS_CSR: + addr_reg_offst = priv->eth_sds_csr_addr_v + reg_offset; + pr_debug("ETH SDS CSR read\n"); + break; + + case BLOCK_ETH_CLKRST_CSR: + addr_reg_offst = priv->eth_clkrst_csr_addr_v + reg_offset; + pr_debug("ETH CLKRST CSR read\n"); + break; + + case BLOCK_ETH_DIAG_CSR: + addr_reg_offst = priv->eth_diag_csr_addr_v + reg_offset; + pr_debug("ETH DIAG CSR read\n"); + break; + + case BLOCK_MCX_MAC: + case BLOCK_ETH_INTPHY: + addr_reg_offst = priv->mcx_mac_addr_v + MAC_ADDR_REG_OFFSET; + cmd_reg_offst = priv->mcx_mac_addr_v + MAC_COMMAND_REG_OFFSET; + rd_reg_offst = priv->mcx_mac_addr_v + MAC_READ_REG_OFFSET; + cmd_done_reg_offst = priv->mcx_mac_addr_v + + MAC_COMMAND_DONE_REG_OFFSET; + indirect = 1; + pr_debug("MCX MAC/Internal PHY read\n"); + break; + + case BLOCK_ETH_EXTPHY: + addr_reg_offst = priv->vmii_base + MAC_ADDR_REG_OFFSET; + cmd_reg_offst = priv->vmii_base + MAC_COMMAND_REG_OFFSET; + rd_reg_offst = priv->vmii_base + MAC_READ_REG_OFFSET; + cmd_done_reg_offst = priv->vmii_base + + MAC_COMMAND_DONE_REG_OFFSET; + indirect = 1; + pr_debug("MCX MAC/External PHY read\n"); + break; + + case BLOCK_MCX_STATS: + addr_reg_offst = priv->mcx_stats_addr_v + STAT_ADDR_REG_OFFSET; + cmd_reg_offst = + priv->mcx_stats_addr_v + STAT_COMMAND_REG_OFFSET; + rd_reg_offst = priv->mcx_stats_addr_v + STAT_READ_REG_OFFSET; + cmd_done_reg_offst = priv->mcx_stats_addr_v + + STAT_COMMAND_DONE_REG_OFFSET; + indirect = 1; + pr_debug("MCX STATS read\n"); + break; + + case BLOCK_MCX_MAC_CSR: + addr_reg_offst = priv->mcx_mac_csr_addr_v + reg_offset; + pr_debug("MCX MAC CSR read\n"); + break; + + case BLOCK_SATA_ENET_CSR: + addr_reg_offst = priv->sata_enet_csr_addr_v + reg_offset; + pr_debug("SATA ENET CSR read\n"); + break; + + case BLOCK_AXG_MAC: + addr_reg_offst = priv->axg_mac_addr_v + MAC_ADDR_REG_OFFSET; + cmd_reg_offst = priv->axg_mac_addr_v + MAC_COMMAND_REG_OFFSET; + rd_reg_offst = priv->axg_mac_addr_v + MAC_READ_REG_OFFSET; + cmd_done_reg_offst = priv->axg_mac_addr_v + + MAC_COMMAND_DONE_REG_OFFSET; + indirect = 1; + pr_debug("AXG MAC read\n"); + break; + + case BLOCK_AXG_STATS: + addr_reg_offst = priv->axg_stats_addr_v + STAT_ADDR_REG_OFFSET; + cmd_reg_offst = + priv->axg_stats_addr_v + STAT_COMMAND_REG_OFFSET; + rd_reg_offst = priv->axg_stats_addr_v + STAT_READ_REG_OFFSET; + cmd_done_reg_offst = priv->axg_stats_addr_v + + STAT_COMMAND_DONE_REG_OFFSET; + indirect = 1; + pr_debug("AXG STATS read\n"); + break; + + case BLOCK_AXG_MAC_CSR: + addr_reg_offst = priv->axg_mac_csr_addr_v + reg_offset; + pr_debug("AXG MAC CSR read\n"); + break; + + case BLOCK_XGENET_PCS: + addr_reg_offst = priv->xgenet_pcs_addr_v + reg_offset; + pr_debug("XGENET PCS read\n"); + break; + + case BLOCK_XGENET_MDIO_CSR: + addr_reg_offst = priv->xgenet_mdio_csr_addr_v + reg_offset; + pr_debug("XGENET MDIO CSR read\n"); + break; + + default: + pr_err("Invalid blockid in read reg: %d\n", block_id); + return -1; + } + + if (indirect) { + xgene_enet_wr32(addr_reg_offst, reg_offset); + xgene_enet_wr32(cmd_reg_offst, XGENE_ENET_RD_CMD); + pr_debug("Indirect read: addr: 0x%X\n", reg_offset); + + /* wait upto 5 us for completion */ + wait = 5; + do { + xgene_enet_rd32(cmd_done_reg_offst, &cmd_done); + } while (--wait && !cmd_done); + if (!wait) { + pr_err("Read failed for blk: %d\n", block_id); + BUG(); + } + + xgene_enet_rd32(rd_reg_offst, value); + pr_debug("Indirect read value: 0x%X\n", *value); + + xgene_enet_wr32(cmd_reg_offst, 0); + } else { + xgene_enet_rd32(addr_reg_offst, value); + pr_debug("Direct read addr: 0x%p, value: 0x%X\n", + addr_reg_offst, *value); + } + + return 0; +} + +void xgene_genericmiiphy_write(struct xgene_enet_priv *priv, u8 phy_id, + unsigned char reg, u32 data) +{ + u32 value; + int wait; + u32 blockid = BLOCK_ETH_EXTPHY; + + /* All PHYs lie on MII bus of Port0 MAC due to this + * each port should access its PHY through Port0 MAC. + * Hence we allow access to PHY_ID associated with this + * port only. + */ + + /* Write PHY number and address in MII Mgmt Address */ + value = PHY_ADDR_WR(phy_id) | REG_ADDR_WR(reg); + pr_debug("Write MII_MGMT_ADDRESS phy_id=0x%x, reg=0x%x, value=0x%x\n", + phy_id, reg << 2, value); + xgene_enet_wr(priv, blockid, MII_MGMT_ADDRESS_ADDR, value); + + /* Write 16 bit data to MII MGMT CONTROL */ + value = PHY_CONTROL_WR(data); + pr_debug("Write MII_MGMT_CONTROL phy_id=0x%x, reg=0x%x, value=0x%x\n", + phy_id, reg << 2, value); + xgene_enet_wr(priv, blockid, MII_MGMT_CONTROL_ADDR, value); + + /* wait upto 20 us for completion */ + wait = 20; + do { + xgene_enet_rd(priv, blockid, MII_MGMT_INDICATORS_ADDR, &value); + usleep_range(1, 2); + } while (--wait && (value & BUSY_MASK)); + if (!wait) + pr_err("MII_MGMT write failed\n"); +} + +void xgene_genericmiiphy_read(struct xgene_enet_priv *priv, u8 phy_id, + unsigned char reg, u32 *data) +{ + u32 value; + u32 blockid = BLOCK_ETH_EXTPHY; + int wait; + + /* All PHYs lie on MII bus of Port0 MAC due to this + * each port should access its PHY through Port0 MAC. + * Hence we allow access to PHY_ID associated with this + * port only. + */ + + /* Write PHY number and address in MII Mgmt Address */ + value = PHY_ADDR_WR(phy_id) | REG_ADDR_WR(reg); + pr_debug("Write MII_MGMT_ADDR phy_id=0x%x, reg=0x%x, value=0x%x\n", + phy_id, reg << 2, value); + xgene_enet_wr(priv, blockid, MII_MGMT_ADDRESS_ADDR, value); + + /* Write read command */ + xgene_enet_wr(priv, blockid, MII_MGMT_COMMAND_ADDR, READ_CYCLE_MASK); + + /* wait upto 20 us for completion */ + wait = 20; + do { + xgene_enet_rd(priv, blockid, MII_MGMT_INDICATORS_ADDR, &value); + if (!(value & BUSY_MASK)) + break; + usleep_range(1, 2); + } while (--wait && (value & BUSY_MASK)); + + xgene_enet_rd(priv, blockid, MII_MGMT_STATUS_ADDR, data); + + /* reset mii_mgmt_command register */ + xgene_enet_wr(priv, blockid, MII_MGMT_COMMAND_ADDR, 0); +} + +inline void xgene_enet_port_reset(struct xgene_enet_priv *priv) +{ + if (priv->port_reset) + priv->port_reset(priv); +} + +inline void xgene_enet_mac_reset(struct xgene_enet_priv *priv) +{ + if (priv->mac_reset) + priv->mac_reset(priv); +} + +inline int xgene_enet_mac_init(struct xgene_enet_priv *priv, + unsigned char *dev_addr, int speed, int mtu, + int crc) +{ + int rc = 0; + if (priv->mac_init) + rc = priv->mac_init(priv, dev_addr, speed, mtu, crc); + return rc; +} + +inline void xgene_enet_mac_tx_state(struct xgene_enet_priv *priv, u32 enable) +{ + if (priv->mac_tx_state) + priv->mac_tx_state(priv, enable); +} + +inline void xgene_enet_mac_rx_state(struct xgene_enet_priv *priv, u32 enable) +{ + if (priv->mac_rx_state) + priv->mac_rx_state(priv, enable); +} + +inline void xgene_enet_mac_change_mtu(struct xgene_enet_priv *priv, u32 new_mtu) +{ + if (priv->mac_change_mtu) + priv->mac_change_mtu(priv, new_mtu); +} + +inline void xgene_enet_mac_set_ipg(struct xgene_enet_priv *priv, u16 ipg) +{ + if (priv->mac_set_ipg) + priv->mac_set_ipg(priv, ipg); +} + +inline void xgene_enet_get_stats(struct xgene_enet_priv *priv, + struct xgene_enet_detailed_stats *stats) +{ + if (priv->get_stats) + priv->get_stats(priv, stats); +} + +inline void xgene_enet_set_mac_addr(struct xgene_enet_priv *priv, + unsigned char *dev_addr) +{ + if (priv->set_mac_addr) + priv->set_mac_addr(priv, dev_addr); +} + +inline void xgene_enet_cle_bypass(struct xgene_enet_priv *priv, + u32 dstqid, u32 fpsel) +{ + if (priv->cle_bypass) + priv->cle_bypass(priv, dstqid, fpsel); +} + +inline void xgene_enet_tx_offload(struct xgene_enet_priv *priv, + u32 command, u32 value) +{ + if (priv->tx_offload) + priv->tx_offload(priv, command, value); +} + +inline void xgene_enet_port_shutdown(struct xgene_enet_priv *priv) +{ + if (priv->port_shutdown) + priv->port_shutdown(priv); +} --- linux-3.13.0.orig/drivers/net/ethernet/apm/xgene/xgene_enet_common.h +++ linux-3.13.0/drivers/net/ethernet/apm/xgene/xgene_enet_common.h @@ -0,0 +1,449 @@ +/* AppliedMicro X-Gene SoC Ethernet Driver + * + * Copyright (c) 2013, Applied Micro Circuits Corporation + * Authors: Ravi Patel rapatel@apm.com> + * Iyappan Subramanian isubramanian@apm.com> + * Fushen Chen fchen@apm.com> + * Keyur Chudgar kchudgar@apm.com> + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __XGENE_ENET_COMMON_H__ +#define __XGENE_ENET_COMMON_H__ + +#include +#define MAX_LOOP_POLL_CNT 10 + +#ifndef UDP_HDR_SIZE +#define UDP_HDR_SIZE 2 +#endif + +/* Ethernet & XGENET port ids */ +enum eth_port_ids { + ENET_0 = 0, + ENET_1, + ENET_2, + ENET_3, + XGENET_0, + XGENET_1, + XGENET_2, + XGENET_3, + MENET, + MAX_ENET_PORTS +}; + +/* TSO Parameters */ +#define TSO_ENABLE 1 +#define TSO_ENABLE_MASK 1 +#define TSO_CHKSUM_ENABLE 1 +#define TSO_INS_CRC_ENABLE 1 +#define TSO_IPPROTO_TCP 1 +#define TSO_IPPROTO_UDP 0 +#define TSO_IP_HLEN_MASK 0X3F +#define TSO_TCP_HLEN_MASK 0X3F +#define TSO_ETH_HLEN_MASK 0XFF +#define TSO_MSS_MASK 0X3 /* 2b */ +#define DEFAULT_TCP_MSS 1448 + +enum { + XGENE_ENET_MSS0 = 0, + XGENE_ENET_MSS1, + XGENE_ENET_MSS2, + XGENE_ENET_MSS3, + XGENE_ENET_TSO_CFG, + XGENE_ENET_INSERT_VLAN +}; + +/* TYPE_SEL for Ethernt egress message */ +#define TYPE_SEL_WORK_MSG 1U + +/* Blocks for defined regions */ +enum { + BLOCK_ETH_CSR = 1, + BLOCK_ETH_CLE, + BLOCK_ETH_QMI, + BLOCK_ETH_SDS_CSR, + BLOCK_ETH_CLKRST_CSR, + BLOCK_ETH_DIAG_CSR, + BLOCK_ETH_MDIO_CSR, + BLOCK_ETH_INTPHY, + BLOCK_ETH_EXTPHY, + BLOCK_MCX_MAC, + BLOCK_MCX_STATS, + BLOCK_MCX_MAC_CSR, + BLOCK_SATA_ENET_CSR, + BLOCK_AXG_MAC, + BLOCK_AXG_STATS, + BLOCK_AXG_MAC_CSR, + BLOCK_XGENET_PCS, + BLOCK_XGENET_MDIO_CSR, + BLOCK_ETH_MAX +}; + +/* Direct Address mode */ +#define BLOCK_ETH_CSR_OFFSET 0x2000 +#define BLOCK_ETH_CLE_OFFSET 0x6000 +#define BLOCK_ETH_QMI_OFFSET 0x9000 +#define BLOCK_ETH_SDS_CSR_OFFSET 0xA000 +#define BLOCK_ETH_CLKRST_CSR_OFFSET 0xC000 +#define BLOCK_ETH_DIAG_CSR_OFFSET 0xD000 + +/* Indirect & Direct Address mode for MCX_MAC and AXG_MAC */ +#define BLOCK_ETH_MAC_OFFSET 0x0000 +#define BLOCK_ETH_STATS_OFFSET 0x0014 +#define BLOCK_ETH_MAC_CSR_OFFSET 0x2800 + +#define BLOCK_SATA_ENET_CSR_OFFSET 0x7000 + +/* Constants for indirect registers */ +#define MAC_ADDR_REG_OFFSET 0 +#define MAC_COMMAND_REG_OFFSET 4 +#define MAC_WRITE_REG_OFFSET 8 +#define MAC_READ_REG_OFFSET 12 +#define MAC_COMMAND_DONE_REG_OFFSET 16 + +#define STAT_ADDR_REG_OFFSET 0 +#define STAT_COMMAND_REG_OFFSET 4 +#define STAT_WRITE_REG_OFFSET 8 +#define STAT_READ_REG_OFFSET 12 +#define STAT_COMMAND_DONE_REG_OFFSET 16 + +/* Address PE_MCXMAC Registers */ +#define MII_MGMT_COMMAND_ADDR 0x00000024 +#define MII_MGMT_ADDRESS_ADDR 0x00000028 +#define MII_MGMT_CONTROL_ADDR 0x0000002c +#define MII_MGMT_STATUS_ADDR 0x00000030 +#define MII_MGMT_INDICATORS_ADDR 0x00000034 + +#define INT_PHY_ADDR 0x1E + +#define BUSY_MASK 0x00000001 +#define READ_CYCLE_MASK 0x00000001 +#define PHY_CONTROL_WR(src) (((u32)(src)) & 0x0000ffff) + +#define HW_MTU(m) ((m) + 12 + 2 + 4 /* MAC + CRC */) + +enum xgene_enum_speed { + XGENE_ENET_SPEED_0 = 0xffff, + XGENE_ENET_SPEED_10 = 10, + XGENE_ENET_SPEED_100 = 100, + XGENE_ENET_SPEED_1000 = 1000, + XGENE_ENET_SPEED_10000 = 10000 +}; + +enum xgene_enet_mode { + HALF_DUPLEX = 1, + FULL_DUPLEX = 2 +}; + +enum xgene_enet_phy_mode { + PHY_MODE_NONE, + PHY_MODE_RGMII, + PHY_MODE_SGMII, + PHY_MODE_XGMII +}; + +enum xgene_enet_cmd { + XGENE_ENET_WR_CMD = 0x80000000, + XGENE_ENET_RD_CMD = 0x40000000 +}; + +#define CMU 0 + +/* ===== MII definitions ===== */ + +#define MII_CRC_LEN 0x4 /* CRC length in bytes */ +#define MII_ETH_MAX_PCK_SZ (ETHERMTU + SIZEOF_ETHERHEADER \ + + MII_CRC_LEN) +#define MII_MAX_PHY_NUM 0x20 /* max number of attached PHYs */ +#define MII_MAX_REG_NUM 0x20 /* max number of registers */ + +#define MII_CTRL_REG 0x0 /* Control Register */ +#define MII_STAT_REG 0x1 /* Status Register */ +#define MII_PHY_ID1_REG 0x2 /* PHY identifier 1 Register */ +#define MII_PHY_ID2_REG 0x3 /* PHY identifier 2 Register */ +#define MII_AN_ADS_REG 0x4 /* Auto-Negotiation */ + /* Advertisement Register */ +#define MII_AN_PRTN_REG 0x5 /* Auto-Negotiation */ + /* partner ability Register */ +#define MII_AN_EXP_REG 0x6 /* Auto-Negotiation */ + /* Expansion Register */ +#define MII_AN_NEXT_REG 0x7 /* Auto-Negotiation */ + /* next-page transmit Register */ + +#define MII_AN_PRTN_NEXT_REG 0x8 /* Link partner received next page */ +#define MII_MASSLA_CTRL_REG 0x9 /* MATER-SLAVE control register */ +#define MII_MASSLA_STAT_REG 0xa /* MATER-SLAVE status register */ +#define MII_EXT_STAT_REG 0xf /* Extented status register */ + +/* MII control register bit */ +#define MII_CR_1000 0x0040 /* 1 = 1000mb when + * MII_CR_100 is also 1 + */ +#define MII_CR_COLL_TEST 0x0080 /* collision test */ +#define MII_CR_FDX 0x0100 /* FDX =1, half duplex =0 */ +#define MII_CR_RESTART 0x0200 /* restart auto negotiation */ +#define MII_CR_ISOLATE 0x0400 /* isolate PHY from MII */ +#define MII_CR_POWER_DOWN 0x0800 /* power down */ +#define MII_CR_AUTO_EN 0x1000 /* auto-negotiation enable */ +#define MII_CR_100 0x2000 /* 0 = 10mb, 1 = 100mb */ +#define MII_CR_LOOPBACK 0x4000 /* 0 = normal, 1 = loopback */ +#define MII_CR_RESET 0x8000 /* 0 = normal, 1 = PHY reset */ +#define MII_CR_NORM_EN 0x0000 /* just enable the PHY */ +#define MII_CR_DEF_0_MASK 0xca7f /* they must return zero */ +#define MII_CR_RES_MASK 0x003f /* reserved bits,return zero */ + +/* MII Status register bit definitions */ +#define MII_SR_LINK_STATUS 0x0004 /* link Status -- 1 = link */ +#define MII_SR_AUTO_SEL 0x0008 /* auto speed select capable */ +#define MII_SR_REMOTE_FAULT 0x0010 /* Remote fault detect */ +#define MII_SR_AUTO_NEG 0x0020 /* auto negotiation complete */ +#define MII_SR_EXT_STS 0x0100 /* extended sts in reg 15 */ +#define MII_SR_T2_HALF_DPX 0x0200 /* 100baseT2 HD capable */ +#define MII_SR_T2_FULL_DPX 0x0400 /* 100baseT2 FD capable */ +#define MII_SR_10T_HALF_DPX 0x0800 /* 10BaseT HD capable */ +#define MII_SR_10T_FULL_DPX 0x1000 /* 10BaseT FD capable */ +#define MII_SR_TX_HALF_DPX 0x2000 /* TX HD capable */ +#define MII_SR_TX_FULL_DPX 0x4000 /* TX FD capable */ +#define MII_SR_T4 0x8000 /* T4 capable */ +#define MII_SR_ABIL_MASK 0xff80 /* abilities mask */ +#define MII_SR_EXT_CAP 0x0001 /* extended capabilities */ +#define MII_SR_SPEED_SEL_MASK 0xf800 /* Mask to extract just speed + * capabilities from status + * register. + */ + +/* MII AN advertisement Register bit definition */ +#define MII_ANAR_10TX_HD 0x0020 +#define MII_ANAR_10TX_FD 0x0040 +#define MII_ANAR_100TX_HD 0x0080 +#define MII_ANAR_100TX_FD 0x0100 +#define MII_ANAR_100T_4 0x0200 +#define MII_ANAR_PAUSE 0x0400 +#define MII_ANAR_ASM_PAUSE 0x0800 +#define MII_ANAR_REMORT_FAULT 0x2000 +#define MII_ANAR_NEXT_PAGE 0x8000 +#define MII_ANAR_PAUSE_MASK 0x0c00 + +/* MII Link Code word bit definitions */ +#define MII_BP_FAULT 0x2000 /* remote fault */ +#define MII_BP_ACK 0x4000 /* acknowledge */ +#define MII_BP_NP 0x8000 /* nexp page is supported */ + +/* MII Next Page bit definitions */ +#define MII_NP_TOGGLE 0x0800 /* toggle bit */ +#define MII_NP_ACK2 0x1000 /* acknowledge two */ +#define MII_NP_MSG 0x2000 /* message page */ +#define MII_NP_ACK1 0x4000 /* acknowledge one */ +#define MII_NP_NP 0x8000 /* nexp page will follow */ + +/* MII Master-Slave Control register bit definition */ +#define MII_MASSLA_CTRL_1000T_HD 0x100 +#define MII_MASSLA_CTRL_1000T_FD 0x200 +#define MII_MASSLA_CTRL_PORT_TYPE 0x400 +#define MII_MASSLA_CTRL_CONFIG_VAL 0x800 +#define MII_MASSLA_CTRL_CONFIG_EN 0x1000 + +/* MII Master-Slave Status register bit definition */ +#define MII_MASSLA_STAT_LP1000T_HD 0x400 +#define MII_MASSLA_STAT_LP1000T_FD 0x800 +#define MII_MASSLA_STAT_REMOTE_RCV 0x1000 +#define MII_MASSLA_STAT_LOCAL_RCV 0x2000 +#define MII_MASSLA_STAT_CONF_RES 0x4000 +#define MII_MASSLA_STAT_CONF_FAULT 0x8000 + +/* these values may be used in the default phy mode field of the load + * string, since that is used to force the operating mode of the PHY + * in case any attempt to establish the link failed. + */ + +#define PHY_10BASE_T 0x00 /* 10 Base-T */ +#define PHY_10BASE_T_FDX 0x01 /* 10 Base Tx, full duplex */ +#define PHY_100BASE_TX 0x02 /* 100 Base Tx */ +#define PHY_100BASE_TX_FDX 0x03 /* 100 Base TX, full duplex */ +#define PHY_100BASE_T4 0x04 /* 100 Base T4 */ +#define PHY_AN_ENABLE 0x05 /* re-enable auto-negotiation */ + +#define MII_AN_TBL_MAX 20 /* max number of entries in the table */ + +/* Realtek PHY definitions */ +#define PHY_SPEED_RES 3 +#define PHY_SPEED_1000 2 +#define PHY_SPEED_100 1 +#define PHY_SPEED_10 0 +#define RTL_PHYSR_ADR 0X11 +#define RTL_PHYSR_SPEED_RD(src) (((src) & 0x0000C000) >> 14) +#define RTL_PHYSR_LINK_RD(src) (((src) & 0x00000400) >> 10) + +#define RTL_PHYSR_ADR 0X11 + +/* LErr(3b) Decoding */ +enum xgene_enet_lerr { + ENET_NO_ERR = 0, /* No Error */ + ENET_AXI_WR_ERR = 1, /* AXI write data error due to RSIF */ + ENET_ING_CRC_ERR = 2, /* Rx packet had CRC */ + ENET_AXI_RD_ERR = 3, /* AXI read data error when processing + * a work message in TSIF + */ + ENET_LL_RD_ERR = 4, /* AXI Link List read error when + * processing a work message in TSIF + */ + ENET_ING_ERR = 5, /* Rx packet had ingress processing error */ + ENET_CHKSUM_ERR = 5, /* Checksum error */ + ENET_BAD_MSG_ERR = 6, /* Bad message to subsytem */ + ENET_MISC_ERR = 7, /* Other ingress processing error */ + ENET_MAC_TRUNC_ERR = 7, /* MAX truncated */ + ENET_MAC_LEN_ERR = 8, /* Packet length error */ + ENET_PKT_LESS64_ERR = 9, /* MAC length lesser than 64B */ + ENET_MAC_OVERRUN_ERR = 10, /* FIFO overrun on ingress */ + ENET_UNISEC_CHKSUM_ERR = 11, /* Rx pacekt checksum error */ + ENET_UNISEC_LEN_ERR = 12, /* Rx pkt length mismatch QM message */ + ENET_UNISEC_ICV_ERR = 13, /* Rx pkt ICV error */ + ENET_UNISEC_PROTO_ERR = 14, /* Rx pkt protocol field mismatch */ + ENET_FP_TIMEOUT_ERR = 15 /* Free pool buffer timeout */ +}; + +/* Error TX/RX Statistics - maintained by software */ +struct xgene_mac_error_stats { + u64 rx_hw_errors; + u64 rx_hw_overrun; + u64 tx_dropped; +}; + +struct xgene_enet_rx_stats { + u32 rx_byte_count; /* Receive Byte Counter */ + u32 rx_packet_count; /* Receive Packet Counter */ + u32 rx_fcs_err_count; /* Receive FCS Error Counter */ + u32 rx_alignment_err_pkt_count; /* Rx Alignment Err Packet Counter */ + u32 rx_frm_len_err_pkt_count; /* Rx Frame Len Err Packet Counter */ + u32 rx_undersize_pkt_count; /* Receive Undersize Packet Counter */ + u32 rx_oversize_pkt_count; /* Receive Oversize Packet Counter */ + u32 rx_drop_pkt_count; /* Receive Drop Packet Counter */ +}; + +struct xgene_enet_tx_stats { + u32 tx_byte_count; /* Tx Byte cnt */ + u32 tx_pkt_count; /* Tx pkt cnt */ + u32 tx_drop_frm_count; /* Tx Drop Frame cnt */ + u32 tx_fcs_err_frm_count; /* Tx FCS Error Frame cnt */ + u32 tx_undersize_frm_count; /* Tx Undersize Frame cnt */ +}; + +struct xgene_enet_detailed_stats { + struct xgene_enet_rx_stats rx_stats; + struct xgene_enet_tx_stats tx_stats; + struct xgene_mac_error_stats estats; +}; + +/* Ethernet private structure */ +struct xgene_enet_priv { + void *eth_csr_addr_v; + void *eth_cle_addr_v; + void *eth_qmi_addr_v; + void *eth_sds_csr_addr_v; + void *eth_clkrst_csr_addr_v; + void *eth_diag_csr_addr_v; + void *mcx_mac_addr_v; + void *mcx_stats_addr_v; + void *mcx_mac_csr_addr_v; + void *sata_enet_csr_addr_v; + void *axg_mac_addr_v; + void *axg_stats_addr_v; + void *axg_mac_csr_addr_v; + void *xgenet_pcs_addr_v; + void *xgenet_mdio_csr_addr_v; + + u64 paddr_base; /* Base physical address of device */ + void *vaddr_base; /* Base Virtual address for the device */ + u64 ppaddr_base; /* Per port physical address of device */ + void *vpaddr_base; /* Per port Virtual address of device */ + void *vmii_base; /* Base MII Virtual address of device */ + + u32 phy_addr; /* Virtual address for PHY */ + u32 phy_mode; + u32 speed; /* Forced Link Speed */ + u32 link_status; + u32 crc; + u32 autoneg_set; + u32 mac_to_mac; /* Tell traffic is MAC-to-MAC */ + u32 desired_speed; /* In case of MAC-to-MAC, no autoneg, + * tell the desired speed to setup + */ + u32 phyless; /* PHY stays away from board on + * common server board design + */ + u32 force_serdes_reset; /* Force analog reset till stable state */ + + /* Function pointers */ + void (*port_reset) (struct xgene_enet_priv *priv); + int (*phy_autoneg_done) (struct xgene_enet_priv *priv); + void (*phy_link_mode) (struct xgene_enet_priv *priv, + u32 *speed, u32 *state); + void (*mac_reset) (struct xgene_enet_priv *priv); + int (*mac_init) (struct xgene_enet_priv *priv, + unsigned char *dev_addr, int speed, int mtu, int crc); + void (*mac_rx_state) (struct xgene_enet_priv *priv, u32 enable); + void (*mac_tx_state) (struct xgene_enet_priv *priv, u32 enable); + void (*mac_change_mtu) (struct xgene_enet_priv *priv, u32 new_mtu); + void (*mac_set_ipg) (struct xgene_enet_priv *priv, u16 new_ipg); + void (*get_stats) (struct xgene_enet_priv *priv, + struct xgene_enet_detailed_stats *stats); + void (*set_mac_addr) (struct xgene_enet_priv *priv, + unsigned char *dev_addr); + void (*cle_bypass) (struct xgene_enet_priv *priv, u32 dstqid, + u32 fpsel); + void (*tx_offload) (struct xgene_enet_priv *priv, u32 command, + u32 value); + void (*qmi_assoc) (struct xgene_enet_priv *priv); + void (*port_shutdown) (struct xgene_enet_priv *priv); +}; + +int xgene_enet_wr(struct xgene_enet_priv *priv, u8 block_id, + u32 reg_offset, u32 value); + +int xgene_enet_rd(struct xgene_enet_priv *priv, u8 block_id, + u32 reg_offset, u32 *value); + +void xgene_enet_port_reset(struct xgene_enet_priv *priv); + +/* This function resets the entire part of MAC and minimal init for phy access + * It will put both Transmit and Receive MAC Control block in reset + * and then init. + */ +void xgene_enet_mac_reset(struct xgene_enet_priv *priv); + +int xgene_enet_mac_init(struct xgene_enet_priv *priv, unsigned char *dev_addr, + int speed, int mtu, int crc); + +void xgene_enet_mac_rx_state(struct xgene_enet_priv *priv, u32 enable); +void xgene_enet_mac_tx_state(struct xgene_enet_priv *priv, u32 enable); + +void xgene_enet_mac_change_mtu(struct xgene_enet_priv *priv, u32 new_mtu); +void xgene_enet_mac_set_ipg(struct xgene_enet_priv *priv, u16 ipg); + +void xgene_enet_set_mac_addr(struct xgene_enet_priv *priv, + unsigned char *dev_addr); + +void xgene_enet_cle_bypass(struct xgene_enet_priv *priv, u32 dstqid, u32 fpsel); + +void xgene_enet_tx_offload(struct xgene_enet_priv *priv, + u32 command, u32 value); + +void xgene_enet_port_shutdown(struct xgene_enet_priv *priv); +enum xgene_qmtm_qaccess xgene_enet_get_qacess(void); +void xgene_genericmiiphy_read(struct xgene_enet_priv *priv, u8 phy_id, + unsigned char reg, u32 *data); +void xgene_genericmiiphy_write(struct xgene_enet_priv *priv, u8 phy_id, + unsigned char reg, u32 data); + +void xgene_enet_get_stats(struct xgene_enet_priv *priv, + struct xgene_enet_detailed_stats *detailed_stats); +#endif /* __XGENE_ENET_COMMON_H__ */ --- linux-3.13.0.orig/drivers/net/ethernet/apm/xgene/xgene_enet_csr.h +++ linux-3.13.0/drivers/net/ethernet/apm/xgene/xgene_enet_csr.h @@ -0,0 +1,427 @@ +/* AppliedMicro X-Gene SoC Ethernet Driver + * + * Copyright (c) 2013, Applied Micro Circuits Corporation + * Authors: Ravi Patel + * Iyappan Subramanian + * Fushen Chen + * Keyur Chudgar + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __XGENE_ENET_CSR_H__ +#define __XGENE_ENET_CSR_H__ + +#define RSIF_INT_REG0_ADDR 0x00000054 +#define RSIF_FINT_REG0_ADDR 0x0000005c +#define TSIF_INT_REG0_ADDR 0x0000012c +#define TSIF_FINT_REG0_ADDR 0x00000134 +#define TSO_INT_REG0_ADDR 0x00000324 +#define SPI2SAP_INT_REG0_ADDR 0x00000448 +#define RX_TX_BUF_CHKSM_INT_REG0_ADDR 0x0000052c +#define ENET_SPARE_CFG_REG_ADDR 0x00000750 +#define RSIF_CONFIG_REG_ADDR 0x00000010 +#define RSIF_RAM_DBG_REG0_ADDR 0x00000048 +#define RGMII_REG_0_ADDR 0x000007e0 +#define CFG_LINK_AGGR_RESUME_0_ADDR 0x000007c8 +#define DEBUG_REG_ADDR 0x00000700 +#define CFG_BYPASS_ADDR 0x00000294 +#define CLE_BYPASS_REG0_0_ADDR 0x00000490 +#define CLE_BYPASS_REG1_0_ADDR 0x00000494 +#define CLE_BYPASS_REG8_0_ADDR 0x000004b0 +#define TSIF_MSS_REG0_0_ADDR 0x00000108 +#define TSIF_MSS_REG1_0_ADDR 0x00000110 +#define TSO_CFG_0_ADDR 0x00000314 +#define TSO_CFG_INSERT_VLAN_0_ADDR 0x0000031c +#define CFG_RSIF_FPBUFF_TIMEOUT_EN_WR(src) \ + (((u32)(src)<<31) & 0x80000000) +#define RSIF_LCL_RXBUF_FIFO_OVERFL_INTR_RXPRT10_MASK 0x20000000 +#define RSIF_LCL_RXBUF_FIFO_OVERFL_INTR_RXPRT10_RD(src) \ + (((src) & 0x20000000)>>29) +#define RSIF_LCL_RXBUF_FIFO_UNDERFL_INTR_RXPRT10_MASK 0x10000000 +#define RSIF_LCL_RXBUF_FIFO_UNDERFL_INTR_RXPRT10_RD(src) \ + (((src) & 0x10000000)>>28) +#define RSIF_CHKSUM_BUFF_FIFO_OVERFL_INTR_RXPRT10_MASK 0x08000000 +#define RSIF_CHKSUM_BUFF_FIFO_OVERFL_INTR_RXPRT10_RD(src) \ + (((src) & 0x08000000)>>27) +#define RSIF_CHKSUM_BUFF_FIFO_UNDERFL_INTR_RXPRT10_MASK 0x04000000 +#define RSIF_CHKSUM_BUFF_FIFO_UNDERFL_INTR_RXPRT10_RD(src) \ + (((src) & 0x04000000)>>26) +#define RSIF_TIMESTAMP_BUFF_FIFO_OVERFL_INTR_RXPRT10_MASK 0x02000000 +#define RSIF_TIMESTAMP_BUFF_FIFO_OVERFL_INTR_RXPRT10_RD(src) \ + (((src) & 0x02000000)>>25) +#define RSIF_TIMESTAMP_BUFF_FIFO_UNDERFL_INTR_RXPRT10_MASK 0x01000000 +#define RSIF_TIMESTAMP_BUFF_FIFO_UNDERFL_INTR_RXPRT10_RD(src) \ + (((src) & 0x01000000)>>24) +#define RSIF_ERR_BUFF_FIFO_OVERFL_INTR_RXPRT10_MASK 0x00800000 +#define RSIF_ERR_BUFF_FIFO_OVERFL_INTR_RXPRT10_RD(src) \ + (((src) & 0x00800000)>>23) +#define RSIF_ERR_BUFF_FIFO_UNDERFL_INTR_RXPRT10_MASK 0x00400000 +#define RSIF_ERR_BUFF_FIFO_UNDERFL_INTR_RXPRT10_RD(src) \ + (((src) & 0x00400000)>>22) +#define RSIF_CLEBUFF_FIFO_OVERFL_INTR_RXPRT10_MASK 0x00200000 +#define RSIF_CLEBUFF_FIFO_OVERFL_INTR_RXPRT10_RD(src) \ + (((src) & 0x00200000)>>21) +#define RSIF_CLEBUFF_FIFO_UNDERFL_INTR_RXPRT10_MASK 0x00100000 +#define RSIF_CLEBUFF_FIFO_UNDERFL_INTR_RXPRT10_RD(src) \ + (((src) & 0x00100000)>>20) +#define RSIF_CTRLBUFF_FIFO_OVERFL_INTR_RXPRT10_MASK 0x00080000 +#define RSIF_CTRLBUFF_FIFO_OVERFL_INTR_RXPRT10_RD(src) \ + (((src) & 0x00080000)>>19) +#define RSIF_CTRLBUFF_FIFO_UNDERFL_INTR_RXPRT10_MASK 0x00040000 +#define RSIF_CTRLBUFF_FIFO_UNDERFL_INTR_RXPRT10_RD(src) \ + (((src) & 0x00040000)>>18) +#define RSIF_BUF_FIFO_OVERFL_INTR_RXPRT10_MASK 0x00020000 +#define RSIF_BUF_FIFO_OVERFL_INTR_RXPRT10_RD(src) \ + (((src) & 0x00020000)>>17) +#define RSIF_BUF_FIFO_UNDERFL_INTR_RXPRT10_MASK 0x00010000 +#define RSIF_BUF_FIFO_UNDERFL_INTR_RXPRT10_RD(src) \ + (((src) & 0x00010000)>>16) +#define ENET_RSIF_PLC_CLEBUFF_FIFO_OVERFL_INTR0_MASK 0x00008000 +#define ENET_RSIF_PLC_CLEBUFF_FIFO_OVERFL_INTR0_RD(src) \ + (((src) & 0x00008000)>>15) +#define ENET_RSIF_PLC_CLEBUFF_FIFO_UNDERFL_INTR0_RD(src) \ + (((src) & 0x00004000)>>14) +#define RSIF_LCL_RXBUF_FIFO_UNDERFL_INTR_RXPRT00_MASK 0x00001000 +#define RSIF_LCL_RXBUF_FIFO_UNDERFL_INTR_RXPRT00_RD(src) \ + (((src) & 0x00001000)>>12) +#define RSIF_LCL_RXBUF_FIFO_OVERFL_INTR_RXPRT00_MASK 0x00002000 +#define RSIF_LCL_RXBUF_FIFO_OVERFL_INTR_RXPRT00_RD(src) \ + (((src) & 0x00002000)>>13) +#define RSIF_CHKSUM_BUFF_FIFO_OVERFL_INTR_RXPRT00_MASK 0x00000800 +#define RSIF_CHKSUM_BUFF_FIFO_OVERFL_INTR_RXPRT00_RD(src) \ + (((src) & 0x00000800)>>11) +#define RSIF_CHKSUM_BUFF_FIFO_UNDERFL_INTR_RXPRT00_MASK 0x00000400 +#define RSIF_CHKSUM_BUFF_FIFO_UNDERFL_INTR_RXPRT00_RD(src) \ + (((src) & 0x00000400)>>10) +#define RSIF_TIMESTAMP_BUFF_FIFO_OVERFL_INTR_RXPRT00_MASK 0x00000200 +#define RSIF_TIMESTAMP_BUFF_FIFO_OVERFL_INTR_RXPRT00_RD(src) \ + (((src) & 0x00000200)>>9) +#define RSIF_TIMESTAMP_BUFF_FIFO_UNDERFL_INTR_RXPRT00_MASK 0x00000100 +#define RSIF_TIMESTAMP_BUFF_FIFO_UNDERFL_INTR_RXPRT00_RD(src) \ + (((src) & 0x00000100)>>8) +#define RSIF_ERR_BUFF_FIFO_OVERFL_INTR_RXPRT00_MASK 0x00000080 +#define RSIF_ERR_BUFF_FIFO_OVERFL_INTR_RXPRT00_RD(src) (((src) & 0x00000080)>>7) +#define RSIF_ERR_BUFF_FIFO_UNDERFL_INTR_RXPRT00_MASK 0x00000040 +#define RSIF_ERR_BUFF_FIFO_UNDERFL_INTR_RXPRT00_RD(src) \ + (((src) & 0x00000040)>>6) +#define RSIF_CLEBUFF_FIFO_OVERFL_INTR_RXPRT00_MASK 0x00000020 +#define RSIF_CLEBUFF_FIFO_OVERFL_INTR_RXPRT00_RD(src) (((src) & 0x00000020)>>5) +#define RSIF_CLEBUFF_FIFO_UNDERFL_INTR_RXPRT00_MASK 0x00000010 +#define RSIF_CLEBUFF_FIFO_UNDERFL_INTR_RXPRT00_RD(src) (((src) & 0x00000010)>>4) +#define RSIF_CTRLBUFF_FIFO_OVERFL_INTR_RXPRT00_MASK 0x00000008 +#define RSIF_CTRLBUFF_FIFO_OVERFL_INTR_RXPRT00_RD(src) (((src) & 0x00000008)>>3) +#define RSIF_CTRLBUFF_FIFO_UNDERFL_INTR_RXPRT00_MASK 0x00000004 +#define RSIF_CTRLBUFF_FIFO_UNDERFL_INTR_RXPRT00_RD(src) \ + (((src) & 0x00000004)>>2) +#define RSIF_BUF_FIFO_OVERFL_INTR_RXPRT00_MASK 0x00000002 +#define RSIF_BUF_FIFO_OVERFL_INTR_RXPRT00_RD(src) (((src) & 0x00000002)>>1) +#define RSIF_BUF_FIFO_UNDERFL_INTR_RXPRT00_MASK 0x00000001 +#define RSIF_BUF_FIFO_UNDERFL_INTR_RXPRT00_RD(src) (((src) & 0x00000001)) +#define RSIF_SS_MIRRORERR_INTR_RXPRT10_MASK 0x00080000 +#define RSIF_SS_MIRRORERR_INTR_RXPRT10_RD(src) (((src) & 0x00080000)>>19) +#define RSIF_SS_SPLIT_BOUNDARY_INTR_RXPRT10_RD(src) (((src) & 0x00040000)>>18) +#define RSIF_SS_FPBUFF_TIMEOUT_INTR_RXPRT10_MASK 0x00020000 +#define RSIF_SS_FPBUFF_TIMEOUT_INTR_RXPRT10_RD(src) (((src) & 0x00020000)>>17) +#define RSIF_SS_AXI_WRERR_INTR_RXPRT10_MASK 0x00010000 +#define RSIF_SS_AXI_WRERR_INTR_RXPRT10_RD(src) (((src) & 0x00010000)>>16) +#define RSIF_SS_MIRRORERR_INTR_RXPRT00_MASK 0x00000010 +#define RSIF_SS_MIRRORERR_INTR_RXPRT00_RD(src) (((src) & 0x00000010)>>4) +#define RSIF_SS_SPLIT_BOUNDARY_INTR_RXPRT00_MASK 0x00000008 +#define RSIF_SS_SPLIT_BOUNDARY_INTR_RXPRT00_RD(src) (((src) & 0x00000008)>>3) +#define RSIF_SS_FPBUFF_TIMEOUT_INTR_RXPRT00_MASK 0x00000004 +#define RSIF_SS_FPBUFF_TIMEOUT_INTR_RXPRT00_RD(src) (((src) & 0x00000004)>>2) +#define RSIF_SS_AXI_WRERR_INTR_RXPRT00_MASK 0x00000002 +#define RSIF_SS_AXI_WRERR_INTR_RXPRT00_RD(src) (((src) & 0x00000002)>>1) +#define STS_RSIF_PLC_DROP0_MASK 0x00000001 +#define STS_RSIF_PLC_DROP0_RD(src) (((src) & 0x00000001)) +#define CFG_TSIF_MSS_SZ10_SET(dst, src) \ + (((dst) & ~0x3fff0000) | (((u32)(src)<<16) & 0x3fff0000)) +#define CFG_TSIF_MSS_SZ00_SET(dst, src) \ + (((dst) & ~0x00003fff) | (((u32)(src)) & 0x00003fff)) +#define CFG_TSIF_MSS_SZ20_SET(dst, src) \ + (((dst) & ~0x00003fff) | (((u32)(src)) & 0x00003fff)) +#define CFG_TSIF_MSS_SZ30_SET(dst, src) \ + (((dst) & ~0x3fff0000) | (((u32)(src)<<16) & 0x3fff0000)) +#define TSIF_RDMBUFF_FIFO_OVERFL_INTR_PRT10_MASK 0x00200000 +#define TSIF_RDMBUFF_FIFO_OVERFL_INTR_PRT10_RD(src) (((src) & 0x00200000)>>21) +#define TSIF_RDMBUFF_FIFO_UNDERFL_INTR_PRT10_MASK 0x00100000 +#define TSIF_RDMBUFF_FIFO_UNDERFL_INTR_PRT10_RD(src) (((src) & 0x00100000)>>20) +#define TSIF_RRM_FIFO_OVERFL_INTR_PRT10_MASK 0x00080000 +#define TSIF_RRM_FIFO_OVERFL_INTR_PRT10_RD(src) (((src) & 0x00080000)>>19) +#define TSIF_RRM_FIFO_UNDERFL_INTR_PRT10_MASK 0x00040000 +#define TSIF_RRM_FIFO_UNDERFL_INTR_PRT10_RD(src) (((src) & 0x00040000)>>18) +#define TSIF_AMABUF_FIFO_OVERFL_INTR_PRT10_MASK 0x00020000 +#define TSIF_AMABUF_FIFO_OVERFL_INTR_PRT10_RD(src) (((src) & 0x00020000)>>17) +#define TSIF_AMABUF_FIFO_UNDERFL_INTR_PRT10_MASK 0x00010000 +#define TSIF_AMABUF_FIFO_UNDERFL_INTR_PRT10_RD(src) (((src) & 0x00010000)>>16) +#define TSIF_RDMBUFF_FIFO_OVERFL_INTR_PRT00_MASK 0x00000020 +#define TSIF_RDMBUFF_FIFO_OVERFL_INTR_PRT00_RD(src) (((src) & 0x00000020)>>5) +#define TSIF_RDMBUFF_FIFO_UNDERFL_INTR_PRT00_MASK 0x00000010 +#define TSIF_RDMBUFF_FIFO_UNDERFL_INTR_PRT00_RD(src) (((src) & 0x00000010)>>4) +#define TSIF_RRM_FIFO_OVERFL_INTR_PRT00_MASK 0x00000008 +#define TSIF_RRM_FIFO_OVERFL_INTR_PRT00_RD(src) (((src) & 0x00000008)>>3) +#define TSIF_RRM_FIFO_UNDERFL_INTR_PRT00_MASK 0x00000004 +#define TSIF_RRM_FIFO_UNDERFL_INTR_PRT00_RD(src) (((src) & 0x00000004)>>2) +#define TSIF_AMABUF_FIFO_OVERFL_INTR_PRT00_MASK 0x00000002 +#define TSIF_AMABUF_FIFO_OVERFL_INTR_PRT00_RD(src) (((src) & 0x00000002)>>1) +#define TSIF_AMABUF_FIFO_UNDERFL_INTR_PRT00_MASK 0x00000001 +#define TSIF_AMABUF_FIFO_UNDERFL_INTR_PRT00_RD(src) (((src) & 0x00000001)) +#define TSIF_SS_AXI_LLRDERR_INTR_PRT10_MASK 0x00040000 +#define TSIF_SS_AXI_LLRDERR_INTR_PRT10_RD(src) (((src) & 0x00040000)>>18) +#define TSIF_SS_AXI_RDERR_INTR_PRT10_MASK 0x00020000 +#define TSIF_SS_AXI_RDERR_INTR_PRT10_RD(src) (((src) & 0x00020000)>>17) +#define TSIF_SS_BAD_MSG_INTR_PRT10_MASK 0x00010000 +#define TSIF_SS_BAD_MSG_INTR_PRT10_RD(src) (((src) & 0x00010000)>>16) +#define TSIF_SS_AXI_LLRDERR_INTR_PRT00_MASK 0x00000004 +#define TSIF_SS_AXI_LLRDERR_INTR_PRT00_RD(src) (((src) & 0x00000004)>>2) +#define TSIF_SS_AXI_RDERR_INTR_PRT00_MASK 0x00000002 +#define TSIF_SS_AXI_RDERR_INTR_PRT00_RD(src) (((src) & 0x00000002)>>1) +#define TSIF_SS_BAD_MSG_INTR_PRT00_MASK 0x00000001 +#define TSIF_SS_BAD_MSG_INTR_PRT00_RD(src) (((src) & 0x00000001)) +#define RESUME_TX_WR(src) (((u32)(src)) & 0x00000001) +#define MB_TTF_FIFO_OVERFL_INTR_PRT10_RD(src) (((src) & 0x00200000)>>21) +#define MB_TTF_FIFO_OVERFL_INTR_PRT10_MASK 0x00200000 +#define MB_TTF_FIFO_UNDERFL_INTR_PRT10_RD(src) (((src) & 0x00100000)>>20) +#define MB_TTF_FIFO_UNDERFL_INTR_PRT10_MASK 0x00100000 +#define MH_DEALLOC_FIFO_OVERFL_INTR_PRT10_RD(src) (((src) & 0x00080000)>>19) +#define MH_DEALLOC_FIFO_OVERFL_INTR_PRT10_MASK 0x00080000 +#define MH_DEALLOC_FIFO_UNDERFL_INTR_PRT10_RD(src) (((src) & 0x00040000)>>18) +#define MH_DEALLOC_FIFO_UNDERFL_INTR_PRT10_MASK 0x00040000 +#define MH_FIFO_OVERFL_INTR_PRT10_RD(src) (((src) & 0x00020000)>>17) +#define MH_FIFO_OVERFL_INTR_PRT10_MASK 0x00020000 +#define MH_FIFO_UNDERFL_INTR_PRT10_RD(src) (((src) & 0x00010000)>>16) +#define MH_FIFO_UNDERFL_INTR_PRT10_MASK 0x00010000 +#define MB_TTF_FIFO_OVERFL_INTR_PRT00_RD(src) (((src) & 0x00000020)>>5) +#define MB_TTF_FIFO_OVERFL_INTR_PRT00_MASK 0x00000020 +#define MB_TTF_FIFO_UNDERFL_INTR_PRT00_RD(src) (((src) & 0x00000010)>>4) +#define MB_TTF_FIFO_UNDERFL_INTR_PRT00_MASK 0x00000010 +#define MH_DEALLOC_FIFO_OVERFL_INTR_PRT00_RD(src) (((src) & 0x00000008)>>3) +#define MH_DEALLOC_FIFO_OVERFL_INTR_PRT00_MASK 0x00000008 +#define MH_DEALLOC_FIFO_UNDERFL_INTR_PRT00_RD(src) (((src) & 0x00000004)>>2) +#define MH_DEALLOC_FIFO_UNDERFL_INTR_PRT00_MASK 0x00000004 +#define MH_FIFO_OVERFL_INTR_PRT00_RD(src) (((src) & 0x00000002)>>1) +#define MH_FIFO_OVERFL_INTR_PRT00_MASK 0x00000002 +#define MH_FIFO_UNDERFL_INTR_PRT00_RD(src) (((src) & 0x00000001)) +#define MH_FIFO_UNDERFL_INTR_PRT00_MASK 0x00000001 +#define MACIF_FIFO_OVERFL_INTR_RXPRT10_RD(src) (((src) & 0x00020000)>>17) +#define MACIF_FIFO_OVERFL_INTR_RXPRT10_MASK 0x00020000 +#define MACIF_FIFO_OVERFL_INTR_RXPRT00_RD(src) (((src) & 0x00000002)>>1) +#define MACIF_FIFO_OVERFL_INTR_RXPRT00_MASK 0x00000002 +#define MACIF_FIFO_UNDERFL_INTR_RXPRT10_RD(src) (((src) & 0x00010000)>>16) +#define MACIF_FIFO_UNDERFL_INTR_RXPRT10_MASK 0x00010000 +#define MACIF_FIFO_UNDERFL_INTR_RXPRT00_RD(src) (((src) & 0x00000001)) +#define MACIF_FIFO_UNDERFL_INTR_RXPRT00_MASK 0x00000001 +#define RXBUF_PAUSE_INTR_PORT10_RD(src) (((src) & 0x00400000)>>22) +#define RXBUF_PAUSE_INTR_PORT10_MASK 0x00400000 +#define RX_CHKSUM_INTR_PORT10_RD(src) (((src) & 0x00200000)>>21) +#define RX_CHKSUM_INTR_PORT10_MASK 0x00200000 +#define TX_CHKSUM_INTR_PORT10_RD(src) (((src) & 0x00100000)>>20) +#define TX_CHKSUM_INTR_PORT10_MASK 0x00100000 +#define RXBUF_FIFO_OVERFL_INTR_PRT10_RD(src) (((src) & 0x00080000)>>19) +#define RXBUF_FIFO_OVERFL_INTR_PRT10_MASK 0x00080000 +#define RXBUF_FIFO_UNDERFL_INTR_PRT10_RD(src) (((src) & 0x00040000)>>18) +#define RXBUF_FIFO_UNDERFL_INTR_PRT10_MASK 0x00040000 +#define TXBUF_FIFO_OVERFL_INTR_PRT10_RD(src) (((src) & 0x00020000)>>17) +#define TXBUF_FIFO_UNDERFL_INTR_PRT10_RD(src) (((src) & 0x00010000)>>16) +#define RXBUF_PAUSE_INTR_PORT00_RD(src) (((src) & 0x00000040)>>6) +#define RX_CHKSUM_INTR_PORT00_RD(src) (((src) & 0x00000020)>>5) +#define RX_CHKSUM_INTR_PORT00_MASK 0x00000020 +#define RXBUF_PAUSE_INTR_PORT00_MASK 0x00000040 +#define TX_CHKSUM_INTR_PORT00_RD(src) (((src) & 0x00000010)>>4) +#define TX_CHKSUM_INTR_PORT00_MASK 0x00000010 +#define RXBUF_FIFO_OVERFL_INTR_PRT00_RD(src) (((src) & 0x00000008)>>3) +#define RXBUF_FIFO_OVERFL_INTR_PRT00_MASK 0x00000008 +#define RXBUF_FIFO_UNDERFL_INTR_PRT00_RD(src) (((src) & 0x00000004)>>2) +#define RXBUF_FIFO_UNDERFL_INTR_PRT00_MASK 0x00000004 +#define TXBUF_FIFO_OVERFL_INTR_PRT00_RD(src) (((src) & 0x00000002)>>1) +#define TXBUF_FIFO_UNDERFL_INTR_PRT00_RD(src) (((src) & 0x00000001)) +#define CFG_SPEED_1250_WR(src) (((u32)(src)<<24) & 0x01000000) +#define CFG_TXCLK_MUXSEL0_WR(src) (((u32)(src)<<29) & 0xe0000000) +#define TX_PORT0_WR(src) (((u32)(src)) & 0x00000001) +#define CFG_BYPASS_UNISEC_TX_WR(src) (((u32)(src)<<2) & 0x00000004) +#define CFG_BYPASS_UNISEC_RX_WR(src) (((u32)(src)<<1) & 0x00000002) +#define CFG_CLE_BYPASS_EN0_SET(dst, src) \ + (((dst) & ~0x80000000) | (((u32)(src)<<31) & 0x80000000)) +#define CFG_CLE_IP_PROTOCOL0_SET(dst, src) \ + (((dst) & ~0x00030000) | (((u32)(src)<<16) & 0x00030000)) +#define CFG_CLE_DSTQID0_SET(dst, src) \ + (((dst) & ~0x00000fff) | (((u32)(src)) & 0x00000fff)) +#define CFG_CLE_FPSEL0_SET(dst, src) \ + (((dst) & ~0x000f0000) | (((u32)(src)<<16) & 0x000f0000)) +#define CFG_CLE_HENQNUM0_SET(dst, src) \ + (((dst) & ~0x0fff0000) | (((u32)(src)<<16) & 0x0fff0000)) +#define MAC_INT_REG0_ADDR 0x00000514 +#define MAC_INT_REG1_ADDR 0x0000051c +#define ICM_CONFIG0_REG_0_ADDR 0x00000400 +#define ICM_CONFIG2_REG_0_ADDR 0x00000410 +#define ECM_CONFIG0_REG_0_ADDR 0x00000500 +#define RX_DV_GATE_REG_0_ADDR 0x000005fc +#define TX_DV_GATE_EN0_SET(dst, src) \ + (((dst) & ~0x00000004) | (((u32)(src)<<2) & 0x00000004)) +#define RX_DV_GATE_EN0_SET(dst, src) \ + (((dst) & ~0x00000002) | (((u32)(src)<<1) & 0x00000002)) +#define RESUME_RX0_SET(dst, src) \ + (((dst) & ~0x00000001) | (((u32)(src)) & 0x00000001)) +#define ICM_DATA_FIFO_UNDERFL_INTR_PRT10_RD(src) (((src) & 0x01000000)>>24) +#define ICM_DATA_FIFO_UNDERFL_INTR_PRT10_MASK 0x01000000 +#define ICM_DATA_FIFO_OVERFL_INTR_PRT10_MASK 0x00800000 +#define ICM_CTRL_FIFO_OVERFL_INTR_PRT00_RD(src) (((src) & 0x00000020)>>5) +#define ICM_CTRL_FIFO_OVERFL_INTR_PRT00_MASK 0x00000020 +#define ICM_CTRL_FIFO_OVERFL_INTR_PRT10_RD(src) (((src) & 0x00200000)>>21) +#define ICM_CTRL_FIFO_OVERFL_INTR_PRT10_MASK 0x00200000 +#define ICM_CTRL_FIFO_UNDERFL_INTR_PRT10_RD(src) (((src) & 0x00400000)>>22) +#define ICM_CTRL_FIFO_UNDERFL_INTR_PRT10_MASK 0x00400000 +#define ICM_CTRL_FIFO_UNDERFL_INTR_PRT00_RD(src) (((src) & 0x00000040)>>6) +#define ICM_CTRL_FIFO_UNDERFL_INTR_PRT00_MASK 0x00000040 +#define ICM_DATA_FIFO_OVERFL_INTR_PRT00_RD(src) (((src) & 0x00000080)>>7) +#define ICM_DATA_FIFO_OVERFL_INTR_PRT10_RD(src) (((src) & 0x00800000)>>23) +#define ICM_DATA_FIFO_OVERFL_INTR_PRT00_MASK 0x00000080 +#define ICM_DATA_FIFO_UNDERFL_INTR_PRT00_RD(src) (((src) & 0x00000100)>>8) +#define ICM_DATA_FIFO_UNDERFL_INTR_PRT00_MASK 0x00000100 +#define ECM_DATA_FIFO_UNDERN_INTR_PRT00_RD(src) (((src) & 0x00000010)>>4) +#define ECM_DATA_FIFO_UNDERN_INTR_PRT00_MASK 0x00000010 +#define ECM_DATA_FIFO_UNDERN_INTR_PRT10_RD(src) (((src) & 0x00100000)>>20) +#define ECM_DATA_FIFO_UNDERN_INTR_PRT10_MASK 0x00100000 +#define ECM_DATA_FIFO_UNDERFL_INTR_PRT10_RD(src) (((src) & 0x00080000)>>19) +#define ECM_DATA_FIFO_UNDERFL_INTR_PRT10_MASK 0x00080000 +#define ECM_DATA_FIFO_OVERFL_INTR_PRT10_RD(src) (((src) & 0x00040000)>>18) +#define ECM_DATA_FIFO_OVERFL_INTR_PRT10_MASK 0x00040000 +#define CARRY_PORT01_RD(src) (((src) & 0x00000001)) +#define CARRY_PORT01_MASK 0x00000001 +#define LINKDOWN_PORT11_RD(src) (((src) & 0x00000008)>>3) +#define LINKDOWN_PORT11_MASK 0x00000008 +#define CARRY_PORT11_RD(src) (((src) & 0x00000004)>>2) +#define CARRY_PORT11_MASK 0x00000004 +#define LINKDOWN_PORT01_RD(src) (((src) & 0x00000002)>>1) +#define LINKDOWN_PORT01_MASK 0x00000002 +#define MACIF_FIFO_UNDERFL_INTR_RXPRT00_F2_RD(src) (((src) & 0x00000002)>>1) +#define MACIF_FIFO_UNDERFL_INTR_RXPRT00_F2_MASK 0x00000002 +#define MACIF_FIFO_UNDERFL_INTR_RXPRT10_F2_RD(src) (((src) & 0x00020000)>>17) +#define MACIF_FIFO_UNDERFL_INTR_RXPRT10_F2_MASK 0x00020000 +#define MACIF_FIFO_OVERFL_INTR_RXPRT00_F2_RD(src) (((src) & 0x00000001)) +#define MACIF_FIFO_OVERFL_INTR_RXPRT00_F2_MASK 0x00000001 +#define MACIF_FIFO_OVERFL_INTR_RXPRT10_F2_RD(src) (((src) & 0x00010000)>>16) +#define MACIF_FIFO_OVERFL_INTR_RXPRT10_F2_MASK 0x00010000 +#define ECM_DATA_FIFO_UNDERFL_INTR_PRT00_RD(src) (((src) & 0x00000008)>>3) +#define ECM_DATA_FIFO_UNDERFL_INTR_PRT00_MASK 0x00000008 +#define ECM_DATA_FIFO_OVERFL_INTR_PRT00_RD(src) (((src) & 0x00000004)>>2) +#define ECM_DATA_FIFO_OVERFL_INTR_PRT00_MASK 0x00000004 +#define ENET_STSSSQMIINT0_ADDR 0x0000009c +#define ENET_STSSSQMIINT1_ADDR 0x000000a4 +#define ENET_STSSSQMIINT2_ADDR 0x000000ac +#define ENET_STSSSQMIINT3_ADDR 0x000000b4 +#define ENET_STSSSQMIINT4_ADDR 0x000000bc +#define ENET_CFGSSQMIWQASSOC_ADDR 0x000000e0 +#define ENET_CFGSSQMIFPQASSOC_ADDR 0x000000dc +#define ENET_CFGSSQMIQMLITEFPQASSOC_ADDR 0x000000f0 +#define ENET_CFGSSQMIQMLITEWQASSOC_ADDR 0x000000f4 +#define ENET_FPOVERFLOW0_RD(src) (((src) & 0xffffffff)) +#define ENET_WQOVERFLOW1_RD(src) (((src) & 0xffffffff)) +#define ENET_FPUNDERRUN2_RD(src) (((src) & 0xffffffff)) +#define ENET_WQUNDERRUN3_RD(src) (((src) & 0xffffffff)) +#define ENET_AXIWCMR_SLVERR4_RD(src) (((src) & 0x00000002)>>1) +#define ENET_AXIWCMR_SLVERR4_MASK 0x00000002 +#define ENET_FPOVERFLOW0_MASK 0xffffffff +#define ENET_WQOVERFLOW1_MASK 0xffffffff +#define ENET_FPUNDERRUN2_MASK 0xffffffff +#define ENET_WQUNDERRUN3_MASK 0xffffffff +#define ENET_CLKEN_ADDR 0x00000008 +#define ENET_SRST_ADDR 0x00000000 +#define CSR0_RESET_WR(src) (((u32)(src)) & 0x00000001) +#define ENET0_RESET_WR(src) (((u32)(src)<<1) & 0x00000002) +#define CSR1_RESET_WR(src) (((u32)(src)<<2) & 0x00000004) +#define ENET1_RESET_WR(src) (((u32)(src)<<3) & 0x00000008) +#define CSR0_CLKEN_WR(src) (((u32)(src)) & 0x00000001) +#define ENET0_CLKEN_WR(src) (((u32)(src)<<1) & 0x00000002) +#define CSR1_CLKEN_WR(src) (((u32)(src)<<2) & 0x00000004) +#define ENET1_CLKEN_WR(src) (((u32)(src)<<3) & 0x00000008) +#define ENET_CFG_MEM_RAM_SHUTDOWN_ADDR 0x00000070 +#define ENET_BLOCK_MEM_RDY_ADDR 0x00000074 +#define MAC_CONFIG_1_ADDR 0x00000000 +#define MAC_CONFIG_2_ADDR 0x00000004 +#define MAX_FRAME_LEN_ADDR 0x00000010 +#define MII_MGMT_CONFIG_ADDR 0x00000020 +#define MII_MGMT_COMMAND_ADDR 0x00000024 +#define MII_MGMT_ADDRESS_ADDR 0x00000028 +#define MII_MGMT_CONTROL_ADDR 0x0000002c +#define MII_MGMT_STATUS_ADDR 0x00000030 +#define MII_MGMT_INDICATORS_ADDR 0x00000034 +#define INTERFACE_CONTROL_ADDR 0x00000038 +#define STATION_ADDR0_ADDR 0x00000040 +#define STATION_ADDR1_ADDR 0x00000044 +#define RX_FLOW_EN1_MASK 0x00000020 +#define TX_FLOW_EN1_MASK 0x00000010 +#define RX_FLOW_EN1_RD(src) (((src) & 0x00000020)>>5) +#define TX_FLOW_EN1_RD(src) (((src) & 0x00000010)>>4) +#define SCAN_CYCLE_MASK 0x00000002 +#define SOFT_RESET1_MASK 0x80000000 +#define MAX_FRAME_LEN_SET(dst, src) \ + (((dst) & ~0x0000ffff) | (((u32)(src)) & 0x0000ffff)) +#define PHY_ADDR_SET(dst, src) \ + (((dst) & ~0x00001f00) | (((u32)(src)<<8) & 0x00001f00)) +#define REG_ADDR_SET(dst, src) \ + (((dst) & ~0x0000001f) | (((u32)(src)) & 0x0000001f)) +#define RESET_TX_FUN1_WR(src) (((u32)(src)<<16) & 0x00010000) +#define RESET_RX_FUN1_WR(src) (((u32)(src)<<17) & 0x00020000) +#define RESET_TX_MC1_WR(src) (((u32)(src)<<18) & 0x00040000) +#define RESET_RX_MC1_WR(src) (((u32)(src)<<19) & 0x00080000) +#define SIM_RESET1_WR(src) (((u32)(src)<<30) & 0x40000000) +#define SOFT_RESET1_WR(src) (((u32)(src)<<31) & 0x80000000) +#define TX_EN1_WR(src) (((u32)(src)) & 0x00000001) +#define RX_EN1_WR(src) (((u32)(src)<<2) & 0x00000004) +#define TX_FLOW_EN1_WR(src) (((u32)(src)<<4) & 0x00000010) +#define LOOP_BACK1_WR(src) (((u32)(src)<<8) & 0x00000100) +#define RX_FLOW_EN1_WR(src) (((u32)(src)<<5) & 0x00000020) +#define ENET_LHD_MODE_WR(src) (((u32)(src)<<25) & 0x02000000) +#define ENET_GHD_MODE_WR(src) (((u32)(src)<<26) & 0x04000000) +#define FULL_DUPLEX2_WR(src) (((u32)(src)) & 0x00000001) +#define LENGTH_CHECK2_WR(src) (((u32)(src)<<4) & 0x00000010) +#define HUGE_FRAME_EN2_WR(src) (((u32)(src)<<5) & 0x00000020) +#define ENET_INTERFACE_MODE2_WR(src) (((u32)(src)<<8) & 0x00000300) +#define PAD_CRC2_WR(src) (((u32)(src)<<2) & 0x00000004) +#define CRC_EN2_WR(src) (((u32)(src)<<1) & 0x00000002) +#define PREAMBLE_LENGTH2_WR(src) (((u32)(src)<<12) & 0x0000f000) +#define MAX_FRAME_LEN_WR(src) (((u32)(src)) & 0x0000ffff) +#define MGMT_CLOCK_SEL_SET(dst, src) \ + (((dst) & ~0x00000007) | (((u32)(src)) & 0x00000007)) +#define RX_EN1_SET(dst, src) \ + (((dst) & ~0x00000004) | (((u32)(src)<<2) & 0x00000004)) +#define TX_EN1_SET(dst, src) \ + (((dst) & ~0x00000001) | (((u32)(src)) & 0x00000001)) +#define SCAN_AUTO_INCR_MASK 0x00000020 +#define RBYT_ADDR 0x00000027 +#define RPKT_ADDR 0x00000028 +#define RFCS_ADDR 0x00000029 +#define RALN_ADDR 0x0000002f +#define RFLR_ADDR 0x00000030 +#define RUND_ADDR 0x00000033 +#define ROVR_ADDR 0x00000034 +#define RDRP_ADDR 0x00000037 +#define TBYT_ADDR 0x00000038 +#define TPKT_ADDR 0x00000039 +#define TDRP_ADDR 0x00000045 +#define TFCS_ADDR 0x00000047 +#define TUND_ADDR 0x0000004a +#define RX_BYTE_CNTR_MASK 0x7fffffff +#define RX_PKT_CNTR_MASK 0x7fffffff +#define RX_FCS_ERROR_CNTR_MASK 0x0000ffff +#define RX_ALIGN_ERR_CNTR_MASK 0x0000ffff +#define RX_LEN_ERR_CNTR_MASK 0x0000ffff +#define RX_UNDRSIZE_PKT_CNTR_MASK 0x0000ffff +#define RX_OVRSIZE_PKT_CNTR_MASK 0x0000ffff +#define RX_DROPPED_PKT_CNTR_MASK 0x0000ffff +#define TX_BYTE_CNTR_MASK 0x7fffffff +#define TX_PKT_CNTR_MASK 0x7fffffff +#define TX_DROP_FRAME_CNTR_MASK 0x0000ffff +#define TX_FCS_ERROR_CNTR_MASK 0x00000fff +#define TX_UNDSIZE_FRAME_CNTR_MASK 0x00000fff + +#endif /* __XGENE_ENET_CSR_H__ */ --- linux-3.13.0.orig/drivers/net/ethernet/apm/xgene/xgene_enet_err.c +++ linux-3.13.0/drivers/net/ethernet/apm/xgene/xgene_enet_err.c @@ -0,0 +1,511 @@ +/* AppliedMicro X-Gene SoC Ethernet Driver + * + * Copyright (c) 2013, Applied Micro Circuits Corporation + * Authors: Ravi Patel + * Iyappan Subramanian + * Fushen Chen + * Keyur Chudgar + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include "xgene_enet_main.h" +#include "xgene_enet_csr.h" + +int xgene_enet_parse_error(u8 LErr, int qid) +{ + /* QM Error */ + switch (LErr) { + case 1: + pr_err("LErr[%d] QID %d: QM msg size error\n", LErr, qid); + return 0; + case 2: + pr_err("LErr[%d] QID %d: QM msg hop count error\n", LErr, qid); + return 0; + case 3: + pr_err("LErr[%d] QID %d: enqueue to virtual queue error\n", + LErr, qid); + return 0; + case 4: + pr_err("LErr[%d] QID %d: enqueue to disable queue error\n", + LErr, qid); + return 0; + case 5: + pr_err("LErr[%d] QID %d: queue overfill error\n", LErr, qid); + return 1; + case 6: + pr_err("LErr[%d] QID %d: QM enqueue error\n", LErr, qid); + return 0; + case 7: + pr_err("LErr[%d] QID %d: QM dequeue error\n", LErr, qid); + return 0; + } + return 0; +} + +static irqreturn_t xgene_enet_qmi_err_irq(int irq, void *dev_instance) +{ + struct xgene_enet_pdev *pdev; + struct xgene_enet_priv *priv; + int rc; + u32 data; + u32 int_mask = 0; + + pdev = netdev_priv(dev_instance); + priv = &pdev->priv; + pr_err("Received Ethernet QMI Error Interrupt\n"); + rc = xgene_enet_rd(priv, BLOCK_ETH_CSR, ENET_STSSSQMIINT0_ADDR, &data); + if (data) { + pr_err("Received STSSSQMIINT0 Error intr\n"); + if (ENET_FPOVERFLOW0_RD(data)) { + pr_err("FP PB overflow indication:0x%08X\n", data); + int_mask |= ENET_FPOVERFLOW0_MASK; + } + /* Clear intrstatus bits, its COW */ + rc = xgene_enet_wr(priv, BLOCK_ETH_CSR, + ENET_STSSSQMIINT0_ADDR, int_mask); + } + rc = xgene_enet_rd(priv, BLOCK_ETH_CSR, ENET_STSSSQMIINT1_ADDR, &data); + int_mask = 0; + if (data) { + pr_err("Received STSSSQMIINT1 Error Interrupt\n"); + if (ENET_WQOVERFLOW1_RD(data)) { + pr_err("WQ PB overflow indication:0x%08X\n", data); + int_mask |= ENET_WQOVERFLOW1_MASK; + } + /* Clear intrstatus bits, its COW */ + rc = xgene_enet_wr(priv, BLOCK_ETH_CSR, + ENET_STSSSQMIINT1_ADDR, int_mask); + } + rc = xgene_enet_rd(priv, BLOCK_ETH_CSR, ENET_STSSSQMIINT2_ADDR, &data); + int_mask = 0; + if (data) { + pr_err("Received STSSSQMIINT2 Error Interrupt\n"); + if (ENET_FPUNDERRUN2_RD(data)) { + pr_err("FP PB underrun indication:0x%08X\n", data); + int_mask |= ENET_FPUNDERRUN2_MASK; + } + + /* Clear intrstatus bits, its COW */ + rc = xgene_enet_wr(priv, BLOCK_ETH_CSR, + ENET_STSSSQMIINT2_ADDR, int_mask); + } + rc = xgene_enet_rd(priv, BLOCK_ETH_CSR, ENET_STSSSQMIINT3_ADDR, &data); + int_mask = 0; + if (data) { + pr_err("Received STSSSQMIINT3 Error Interrupt\n"); + if (ENET_WQUNDERRUN3_RD(data)) { + pr_err("WQ PB underrun indication:0x%08X\n", data); + int_mask |= ENET_WQUNDERRUN3_MASK; + } + /* Clear intrstatus bits, its COW */ + rc = xgene_enet_wr(priv, BLOCK_ETH_CSR, + ENET_STSSSQMIINT3_ADDR, int_mask); + } + rc = xgene_enet_rd(priv, BLOCK_ETH_CSR, ENET_STSSSQMIINT4_ADDR, &data); + int_mask = 0; + if (data) { + pr_err("Received STSSSQMIINT4 Error Interrupt\n"); + if (ENET_AXIWCMR_SLVERR4_RD(data)) { + pr_err("AXI slave error on write master channel\n"); + int_mask |= ENET_AXIWCMR_SLVERR4_MASK; + } + /* Clear intrstatus bits, its COW */ + rc = xgene_enet_wr(priv, BLOCK_ETH_CSR, + ENET_STSSSQMIINT4_ADDR, int_mask); + } + + return IRQ_HANDLED; +} + +static irqreturn_t xgene_enet_mac_err_irq(int irq, void *dev_instance) +{ + struct xgene_enet_pdev *pdev; + struct xgene_enet_priv *priv; + u8 bit; + int rc; + u32 data; + u32 int_mask = 0; + + static const char *mac_int_reg0_msgs[32] = { + "RxPort0 Mac i/f fifo overflow", /* bit 0 */ + "RxPort0 Mac i/f fifo underflow", + "TxPort0 ECM Data fifo overflow", + "TxPort0 ECM Data fifo underflow", + "RxPort0 ECM Data fifo underrun", + "RxPort0 ICM Ctrl fifo overflow", /* bit 5 */ + "RxPort0 ICM Ctrl fifo underflow", + "RxPort0 ICM Data fifo overflow", + "RxPort0 ICM Data fifo underflow", + "TxPort0 ECM EOF control fifo overflow", + "TxPort0 ECM EOF control fifo underflow", /* bit 10 */ + "TxPort0 ECM SOF control fifo overflow", + "TxPort0 ECM SOF control fifo underflow", + "Rsvd", + "Rsvd", + "Rsvd", /* bit 15 */ + "RxPort1 Mac i/f fifo overflow", + "RxPort1 Mac i/f fifo underflow", + "TxPort1 ECM Data fifo overflow", + "TxPort1 ECM Data fifo underflow", + "RxPort1 ECM Data fifo underrun", /* bit 20 */ + "RxPort1 ICM Ctrl fifo overflow", + "RxPort1 ICM Ctrl fifo underflow", + "RxPort1 ICM Data fifo overflow", + "RxPort1 ICM Data fifo underflow", + "TxPort1 ECM EOF control fifo overflow", /* bit 25 */ + "TxPort1 ECM EOF control fifo underflow", + "TxPort1 ECM SOF control fifo overflow", + "TxPort1 ECM SOF control fifo underflow", + "Rsvd", + "Rsvd", + "Rsvd" + }; + + pdev = netdev_priv(dev_instance); + priv = &pdev->priv; + pr_err("Received Ethernet MAC Error Interrupt\n"); + + rc = xgene_enet_rd(priv, BLOCK_MCX_MAC_CSR, MAC_INT_REG0_ADDR, &data); + if (data) { + pr_err("Received MAC Error Interrupt\n"); + for_each_set_bit(bit, (unsigned long *)&data, 32) { + int_mask |= bit; + pr_err("%s interrupt\n", mac_int_reg0_msgs[bit]); + } + /* Clear intrstatus bits, its COW */ + rc = xgene_enet_wr(priv, BLOCK_MCX_MAC_CSR, + MAC_INT_REG0_ADDR, int_mask); + } + + return IRQ_HANDLED; +} + +static irqreturn_t xgene_enet_err_irq(int irq, void *dev_instance) +{ + struct xgene_enet_pdev *pdev; + struct xgene_enet_priv *priv; + u8 bit; + int rc; + u32 data; + u32 int_mask = 0; + + static const char *rsif_int_reg0_msgs[32] = { + "Rx port0 buffer FIFO underflow", /* bit 0 */ + "Rx port0 buffer FIFO overflow", + "Rx port0 ctrl buffer FIFO underflow", + "Rx port0 ctrl buffer FIFO overflow", + "Rx port0 classifier buffer FIFO underflow", + "Rx port0 classifier buffer FIFO overflow", /* bit 5 */ + "Rx port0 err buffer FIFO underflow", + "Rx port0 err buffer FIFO overflow", + "Rx port0 timestamp FIFO underflow", + "Rx port0 timestamp buffer FIFO overflow", + "Rx port0 chksum buffer FIFO underflow", /* bit 10 */ + "Rx port0 chksum buffer FIFO overflow", + "Rx port0 Local Rx buffer FIFO underflow", + "Rx port0 Local Rx buffer FIFO overflow", + "Policer CLE FIFO underflow", + "Policer CLE FIFO overflow", /* bit 15 */ + "Rx port1 buffer FIFO underflow", + "Rx port1 buffer FIFO overflow", + "Rx port1 ctrl buffer FIFO underflow", + "Rx port1 ctrl buffer FIFO overflow", + "Rx port1 classifier buffer FIFO underflow", /* bit 20 */ + "Rx port1 classifier buffer FIFO overflow", + "Rx port1 err buffer FIFO underflow", + "Rx port1 err buffer FIFO overflow", + "Rx port1 timestamp FIFO underflow", + "Rx port1 timestamp buffer FIFO overflow", /* bit 25 */ + "Rx port1 chksum buffer FIFO underflow", + "Rx port1 chksum buff FIFO overflow", + "Rx port1 Local Rxbuff FIFO underflow", + "Rx port1 Local Rxbuff FIFO overflow", + "Rx policer EOF FIFO underflow", + "Rx policer EOF FIFO overflow" + }; + + static const char *rsif_fint_reg0_msgs[32] = { + "Packet dropped by policer", /* bit 0 */ + "AXI write error on port0", + "Freepool buffer was NOT available from QMI on port0", + "Split boundary can't be accomodated in the 1st buf in port0", + "Mirror buf addr offset/len do not match with normal xfr port0", + "Received FP buf w/ invalid len encoding on port0", /* bit 5 */ + "Number of LL buffers for a packet on port 0 exceeded 256", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", /* bit 10 */ + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", /* bit 15 */ + "AXI write error on port1", + "Freepool buffer was NOT available from QMI on port1", + "Split boundary can't be accomodated in 1st buffer in port1", + "Mirror buf addr offset/len do not match with normal xfr port1", + "Received FP buf w/ invalid len encoding on port1", /* bit 20 */ + "Number of LL buffers for a packet on port 0 exceeded 256", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", /* bit 25 */ + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd" + }; + + static const char *tsif_int_reg0_msgs[32] = { + "Tx port0 AMA buffer FIFO underflow", /* bit 0 */ + "Tx port0 AMA buffer FIFO overflow", + "Tx port0 RRM buffer FIFO underflow", + "Tx port0 RRM buffer FIFO overflow", + "Tx port0 RDM buffer FIFO underflow", + "Tx port0 RDM buffer FIFO overflow", /* bit 5 */ + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", /* bit 10 */ + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", /* bit 15 */ + "Tx port1 AMA buffer FIFO underflow", + "Tx port1 AMA buffer FIFO overflow", + "Tx port1 RRM buffer FIFO underflow", + "Tx port1 RRM buffer FIFO overflow", + "Tx port1 RDM buffer FIFO underflow", /* bit 20 */ + "Tx port1 RDM buffer FIFO overflow", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", /* bit 25 */ + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd" + }; + + static const char *tsif_fint_reg0_msgs[32] = { + "Bad message received by TSIF on port0", /* bit 0 */ + "AXI error when reading data from port0", + "AXI error when reading data from port0", + "TSO error: header length > pkt length on port 0", + "Msg received with LL=1, NV=0 on port 0", + /* bit 5 */ + "TSO error: header len did not fit in the inline buffers port0", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", /* bit 10 */ + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", /* bit 15 */ + "Bad message received by TSIF on port1", + "AXI error when reading data from port1", + "AXI error when reading data from port1", + "TSO error: header length > pkt length on port 1", + "Msg received with LL=1, NV=0 on port 1", /* bit 20 */ + "TSO error: header len did not fit in the inline buffers port1", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", /* bit 25 */ + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd" + }; + + static const char *tso_int_reg0_msgs[32] = { + "Tx port0 Message Hold FIFO underflow", /* bit 0 */ + "Tx port0 Message Hold FIFO overflow", + "Tx port0 Dealloc FIFO underflow", + "Tx port0 Dealloc FIFO overflow", + "Tx port0 tso_txbuff FIFO underflow", + "Tx port0 tso_txbuff FIFO overflow", /* bit 5 */ + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", /* bit 10 */ + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", /* bit 15 */ + "Tx port1 Message Hold FIFO underflow", + "Tx port1 Message Hold FIFO overflow", + "Tx port1 Dealloc FIFO underflow", + "Tx port1 Dealloc FIFO overflow", + "Tx port1 tso_txbuff FIFO underflow", /* bit 20 */ + "Tx port1 tso_txbuff FIFO overflow", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", /* bit 25 */ + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd" + }; + + static const char *rx_tx_buf_chksm_int_reg0[32] = { + "Tx port0 rx buffer FIFO underflow", /* bit 0 */ + "Tx port0 rx buffer FIFO overflow", + "Rx port0 rx buffer FIFO underflow", + "Rx port0 rx buffer FIFO overflow", + "Tx port0 Chksum Error", + "Rx port0 Chksum Error", /* bit 5 */ + "Rx port0 Pause", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", /* bit 10 */ + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", /* bit 15 */ + "Tx port1 rx buffer FIFO underflow", + "Tx port1 rx buffer FIFO overflow", + "Rx port1 rx buffer FIFO underflow", + "Rx port1 rx buffer FIFO overflow", + "Tx port1 Chksum Error", /* bit 20 */ + "Rx port1 Chksum Error", + "Rx port1 Pause", + "Rsvd", + "Rsvd", + "Rsvd", /* bit 25 */ + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd", + "Rsvd" + }; + + pdev = netdev_priv(dev_instance); + priv = &pdev->priv; + rc = xgene_enet_rd(priv, BLOCK_ETH_CSR, RSIF_INT_REG0_ADDR, &data); + if (data) { + pr_err("Received RSIF Error Interrupt\n"); + for_each_set_bit(bit, (unsigned long *)&data, 32) { + int_mask |= bit; + pr_err("%s interrupt\n", rsif_int_reg0_msgs[bit]); + } + /* Clear intrstatus bits, its COW */ + rc = xgene_enet_wr(priv, BLOCK_ETH_CSR, + RSIF_INT_REG0_ADDR, int_mask); + } + rc = xgene_enet_rd(priv, BLOCK_ETH_CSR, RSIF_FINT_REG0_ADDR, &data); + int_mask = 0; + if (data) { + pr_err("Received RSIF Error2 Interrupt\n"); + for_each_set_bit(bit, (unsigned long *)&data, 32) { + int_mask |= bit; + pr_err("%s\n", rsif_fint_reg0_msgs[bit]); + } + /* Clear intrstatus bits, its COW */ + rc = xgene_enet_wr(priv, BLOCK_ETH_CSR, + RSIF_FINT_REG0_ADDR, int_mask); + } + rc = xgene_enet_rd(priv, BLOCK_ETH_CSR, TSIF_INT_REG0_ADDR, &data); + int_mask = 0; + if (data) { + pr_err("Received TSIF Error Interrupt\n"); + for_each_set_bit(bit, (unsigned long *)&data, 32) { + int_mask |= bit; + pr_err("%s interrupt\n", tsif_int_reg0_msgs[bit]); + } + /* Clear intrstatus bits, its COW */ + rc = xgene_enet_wr(priv, BLOCK_ETH_CSR, + TSIF_INT_REG0_ADDR, int_mask); + } + rc = xgene_enet_rd(priv, BLOCK_ETH_CSR, TSIF_FINT_REG0_ADDR, &data); + int_mask = 0; + if (data) { + pr_err("Received TSIF Error Interrupt\n"); + for_each_set_bit(bit, (unsigned long *)&data, 32) { + int_mask |= bit; + pr_err("%s\n", tsif_fint_reg0_msgs[bit]); + } + /* Clear intrstatus bits, its COW */ + rc = xgene_enet_wr(priv, BLOCK_ETH_CSR, + TSIF_FINT_REG0_ADDR, int_mask); + } + rc = xgene_enet_rd(priv, BLOCK_ETH_CSR, TSO_INT_REG0_ADDR, &data); + int_mask = 0; + if (data) { + pr_err("Received TSO Error Interrupt\n"); + for_each_set_bit(bit, (unsigned long *)&data, 32) { + int_mask |= bit; + pr_err("%s interrupt\n", tso_int_reg0_msgs[bit]); + } + /* Clear intrstatus bits, its COW */ + rc = xgene_enet_wr(priv, BLOCK_ETH_CSR, + TSO_INT_REG0_ADDR, int_mask); + } + rc = xgene_enet_rd(priv, BLOCK_ETH_CSR, + RX_TX_BUF_CHKSM_INT_REG0_ADDR, &data); + int_mask = 0; + if (data) { + pr_err("Received RX/TX Buffer Checksum Error Interrupt\n"); + for_each_set_bit(bit, (unsigned long *)&data, 32) { + int_mask |= bit; + pr_err("%s interrupt\n", rx_tx_buf_chksm_int_reg0[bit]); + } + /* Clear intrstatus bits, its COW */ + rc = xgene_enet_wr(priv, BLOCK_ETH_CSR, + RX_TX_BUF_CHKSM_INT_REG0_ADDR, int_mask); + } + + return IRQ_HANDLED; +} + +void xgene_enet_register_err_irqs(struct net_device *ndev) +{ + struct xgene_enet_pdev *pdev; + struct device *dev; + + pdev = (struct xgene_enet_pdev *)netdev_priv(ndev); + dev = &pdev->plat_dev->dev; + + if ((devm_request_irq(dev, pdev->enet_err_irq, xgene_enet_err_irq, + IRQF_SHARED, ndev->name, ndev)) != 0) + netdev_err(ndev, "Failed to reg Enet Error IRQ %d\n", + pdev->enet_err_irq); + if ((devm_request_irq(dev, pdev->enet_mac_err_irq, + xgene_enet_mac_err_irq, IRQF_SHARED, + ndev->name, ndev)) != 0) + netdev_err(ndev, "Failed to reg Enet MAC Error IRQ %d\n", + pdev->enet_mac_err_irq); + if ((devm_request_irq(dev, pdev->enet_qmi_err_irq, + xgene_enet_qmi_err_irq, + IRQF_SHARED, ndev->name, ndev)) != 0) + netdev_err(ndev, "Failed to reg Enet QMI Error IRQ %d\n", + pdev->enet_qmi_err_irq); +} --- linux-3.13.0.orig/drivers/net/ethernet/apm/xgene/xgene_enet_mac.c +++ linux-3.13.0/drivers/net/ethernet/apm/xgene/xgene_enet_mac.c @@ -0,0 +1,514 @@ +/* AppliedMicro X-Gene SoC Ethernet Driver + * + * Copyright (c) 2013, Applied Micro Circuits Corporation + * Authors: Ravi Patel + * Iyappan Subramanian + * Fushen Chen + * Keyur Chudgar + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include "xgene_enet_main.h" +#include "xgene_enet_csr.h" + +static void xgene_gmac_set_mac_addr(struct xgene_enet_priv *priv, + unsigned char *dev_addr) +{ + u32 a_hi = *(u32 *)&dev_addr[0]; + u32 a_lo = (u32) *(u16 *)&dev_addr[4]; + xgene_enet_wr(priv, BLOCK_MCX_MAC, STATION_ADDR0_ADDR, a_hi); + + a_lo <<= 16; + a_lo |= (priv->phy_addr & 0xFFFF); + xgene_enet_wr(priv, BLOCK_MCX_MAC, STATION_ADDR1_ADDR, a_lo); +} + +static int xgene_enet_ecc_init(struct xgene_enet_priv *priv) +{ + u32 data; + int wait; + + xgene_enet_wr(priv, BLOCK_ETH_DIAG_CSR, + ENET_CFG_MEM_RAM_SHUTDOWN_ADDR, 0x0); + /* check for at leaset 1 ms */ + wait = 1000; + do { + xgene_enet_rd(priv, BLOCK_ETH_DIAG_CSR, + ENET_BLOCK_MEM_RDY_ADDR, &data); + usleep_range(1, 100); + } while (--wait && data != 0xffffffff); + if (!wait) { + pr_err("Failed to release memory from shutdown\n"); + return -ENODEV; + } + + return 0; +} + +static void xgene_gmac_change_mtu(struct xgene_enet_priv *priv, u32 new_mtu) +{ + u32 data; + + xgene_enet_rd(priv, BLOCK_MCX_MAC, MAX_FRAME_LEN_ADDR, &data); + xgene_enet_wr(priv, BLOCK_MCX_MAC, MAX_FRAME_LEN_ADDR, + MAX_FRAME_LEN_SET(data, new_mtu)); +} + +static void xgene_gmac_phy_enable_scan_cycle(struct xgene_enet_priv *priv, + int enable) +{ + u32 val; + + xgene_enet_rd(priv, BLOCK_MCX_MAC, MII_MGMT_COMMAND_ADDR, &val); + if (enable) + val |= SCAN_CYCLE_MASK; + else + val &= ~SCAN_CYCLE_MASK; + xgene_enet_wr(priv, BLOCK_MCX_MAC, MII_MGMT_COMMAND_ADDR, val); + + /* Program phy address start scan from 0 and register at address 0x1 */ + xgene_enet_rd(priv, BLOCK_MCX_MAC, MII_MGMT_ADDRESS_ADDR, &val); + val = PHY_ADDR_SET(val, 0); + val = REG_ADDR_SET(val, 1); + xgene_enet_wr(priv, BLOCK_MCX_MAC, MII_MGMT_ADDRESS_ADDR, val); +} + +static void xgene_gmac_reset(struct xgene_enet_priv *priv) +{ + u32 value; + xgene_enet_rd(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, &value); + if (!(value & SOFT_RESET1_MASK)) + return; + + value = RESET_TX_FUN1_WR(1) + | RESET_RX_FUN1_WR(1) + | RESET_TX_MC1_WR(1) + | RESET_RX_MC1_WR(1) + | SIM_RESET1_WR(1) + | SOFT_RESET1_WR(1); + + xgene_enet_wr(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, value); + xgene_enet_rd(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, &value); + xgene_enet_wr(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, 0); +} + +int xgene_gmac_init(struct xgene_enet_priv *priv, unsigned char *dev_addr, + int speed, int mtu, int crc) +{ + u32 value, temp; + u32 addr_hi, addr_lo; + + u32 interface_control; + u32 mac_config_2; + u32 rgmii; + u32 icm_config0 = 0x0008503f; + u32 icm_config2 = 0x0010000f; + u32 ecm_config0 = 0x00000032; + u32 enet_spare_cfg = 0x00006040; + + /* Reset subsystem */ + value = RESET_TX_FUN1_WR(1) + | RESET_RX_FUN1_WR(1) + | RESET_TX_MC1_WR(1) + | RESET_RX_MC1_WR(1) + | SIM_RESET1_WR(1) + | SOFT_RESET1_WR(1); + + xgene_enet_wr(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, value); + xgene_enet_rd(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, &temp); + xgene_enet_wr(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, 0); + xgene_enet_rd(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, &temp); + + value = TX_EN1_WR(1) + | RX_EN1_WR(1) + | TX_FLOW_EN1_WR(0) + | LOOP_BACK1_WR(0) + | RX_FLOW_EN1_WR(0); + xgene_enet_wr(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, value); + xgene_enet_rd(priv, BLOCK_ETH_CSR, + ENET_SPARE_CFG_REG_ADDR, &enet_spare_cfg); + + if (speed == XGENE_ENET_SPEED_10) { + interface_control = ENET_LHD_MODE_WR(0) + | ENET_GHD_MODE_WR(0); + mac_config_2 = FULL_DUPLEX2_WR(1) + | LENGTH_CHECK2_WR(0) + | HUGE_FRAME_EN2_WR(0) + | ENET_INTERFACE_MODE2_WR(1) /* 10Mbps */ + |PAD_CRC2_WR(crc) + | CRC_EN2_WR(crc) + | PREAMBLE_LENGTH2_WR(7); + rgmii = 0; + icm_config0 = 0x0000503f; + icm_config2 = 0x000101f4; + ecm_config0 = 0x600032; + enet_spare_cfg = enet_spare_cfg | (0x0000c040); + } else if (speed == XGENE_ENET_SPEED_100) { + interface_control = ENET_LHD_MODE_WR(1); + mac_config_2 = FULL_DUPLEX2_WR(1) + | LENGTH_CHECK2_WR(0) + | HUGE_FRAME_EN2_WR(0) + | ENET_INTERFACE_MODE2_WR(1) /* 100Mbps */ + |PAD_CRC2_WR(crc) + | CRC_EN2_WR(crc) + | PREAMBLE_LENGTH2_WR(7); + rgmii = 0; + icm_config0 = 0x0004503f; + icm_config2 = 0x00010050; + ecm_config0 = 0x600032; + enet_spare_cfg = enet_spare_cfg | (0x0000c040); + } else { + interface_control = ENET_GHD_MODE_WR(1); + mac_config_2 = FULL_DUPLEX2_WR(1) + | LENGTH_CHECK2_WR(0) + | HUGE_FRAME_EN2_WR(0) + | ENET_INTERFACE_MODE2_WR(2) /* 1Gbps */ + |PAD_CRC2_WR(crc) + | CRC_EN2_WR(crc) + | PREAMBLE_LENGTH2_WR(7); + rgmii = CFG_SPEED_1250_WR(1) | CFG_TXCLK_MUXSEL0_WR(4); + icm_config0 = 0x0008503f; + icm_config2 = 0x0001000f; + ecm_config0 = 0x32; + enet_spare_cfg = (enet_spare_cfg & ~0x0000c000) + | (0x00000040); + } + + enet_spare_cfg |= 0x00006040; + + xgene_enet_wr(priv, BLOCK_MCX_MAC, MAC_CONFIG_2_ADDR, mac_config_2); + + xgene_enet_wr(priv, BLOCK_MCX_MAC, INTERFACE_CONTROL_ADDR, + interface_control); + + value = MAX_FRAME_LEN_WR(0x0600); + xgene_enet_wr(priv, BLOCK_MCX_MAC, MAX_FRAME_LEN_ADDR, value); + + /* Program the station MAC address */ + addr_hi = *(u32 *) &dev_addr[0]; + addr_lo = *(u16 *) &dev_addr[4]; + addr_lo <<= 16; + addr_lo |= (priv->phy_addr & 0xFFFF); + + xgene_enet_wr(priv, BLOCK_MCX_MAC, STATION_ADDR0_ADDR, addr_hi); + xgene_enet_wr(priv, BLOCK_MCX_MAC, STATION_ADDR1_ADDR, addr_lo); + + /* Adjust MDC clock frequency */ + xgene_enet_rd(priv, BLOCK_MCX_MAC, MII_MGMT_CONFIG_ADDR, &value); + value = MGMT_CLOCK_SEL_SET(value, 7); + xgene_enet_wr(priv, BLOCK_MCX_MAC, MII_MGMT_CONFIG_ADDR, value); + + /* Enable drop if FP not available */ + xgene_enet_rd(priv, BLOCK_ETH_CSR, RSIF_CONFIG_REG_ADDR, &value); + value |= CFG_RSIF_FPBUFF_TIMEOUT_EN_WR(1); + xgene_enet_wr(priv, BLOCK_ETH_CSR, RSIF_CONFIG_REG_ADDR, value); + + /* Rtype should be copied from FP */ + value = 0; + xgene_enet_wr(priv, BLOCK_ETH_CSR, RSIF_RAM_DBG_REG0_ADDR, value); + /* Initialize RGMII PHY */ + if (priv->phy_mode == PHY_MODE_RGMII) + xgene_enet_wr(priv, BLOCK_ETH_CSR, RGMII_REG_0_ADDR, rgmii); + + xgene_enet_wr(priv, BLOCK_MCX_MAC_CSR, ICM_CONFIG0_REG_0_ADDR, + icm_config0); + xgene_enet_wr(priv, BLOCK_MCX_MAC_CSR, ICM_CONFIG2_REG_0_ADDR, + icm_config2); + xgene_enet_wr(priv, BLOCK_MCX_MAC_CSR, ECM_CONFIG0_REG_0_ADDR, + ecm_config0); + xgene_enet_wr(priv, BLOCK_ETH_CSR, ENET_SPARE_CFG_REG_ADDR, + enet_spare_cfg); + + /* Rx-Tx traffic resume */ + xgene_enet_wr(priv, BLOCK_ETH_CSR, + CFG_LINK_AGGR_RESUME_0_ADDR, TX_PORT0_WR(0x1)); + + if (speed != XGENE_ENET_SPEED_10 && speed != XGENE_ENET_SPEED_100) { + xgene_enet_rd(priv, BLOCK_ETH_CSR, DEBUG_REG_ADDR, &value); + value |= CFG_BYPASS_UNISEC_TX_WR(1) + | CFG_BYPASS_UNISEC_RX_WR(1); + xgene_enet_wr(priv, BLOCK_ETH_CSR, DEBUG_REG_ADDR, value); + } + + xgene_enet_rd(priv, BLOCK_MCX_MAC_CSR, RX_DV_GATE_REG_0_ADDR, &value); + value = TX_DV_GATE_EN0_SET(value, 0); + value = RX_DV_GATE_EN0_SET(value, 0); + value = RESUME_RX0_SET(value, 1); + xgene_enet_wr(priv, BLOCK_MCX_MAC_CSR, RX_DV_GATE_REG_0_ADDR, value); + + xgene_enet_wr(priv, BLOCK_ETH_CSR, CFG_BYPASS_ADDR, RESUME_TX_WR(1)); + return 0; +} + +/* Start Statistics related functions */ +static void xgene_gmac_get_rx_stats(struct xgene_enet_priv *priv, + struct xgene_enet_rx_stats *rx_stat) +{ + xgene_enet_rd(priv, BLOCK_MCX_STATS, RBYT_ADDR, + &rx_stat->rx_byte_count); + xgene_enet_rd(priv, BLOCK_MCX_STATS, RPKT_ADDR, + &rx_stat->rx_packet_count); + xgene_enet_rd(priv, BLOCK_MCX_STATS, RDRP_ADDR, + &rx_stat->rx_drop_pkt_count); + xgene_enet_rd(priv, BLOCK_MCX_STATS, RFCS_ADDR, + &rx_stat->rx_fcs_err_count); + xgene_enet_rd(priv, BLOCK_MCX_STATS, RFLR_ADDR, + &rx_stat->rx_frm_len_err_pkt_count); + xgene_enet_rd(priv, BLOCK_MCX_STATS, RALN_ADDR, + &rx_stat->rx_alignment_err_pkt_count); + xgene_enet_rd(priv, BLOCK_MCX_STATS, ROVR_ADDR, + &rx_stat->rx_oversize_pkt_count); + xgene_enet_rd(priv, BLOCK_MCX_STATS, RUND_ADDR, + &rx_stat->rx_undersize_pkt_count); + + rx_stat->rx_byte_count &= RX_BYTE_CNTR_MASK; + rx_stat->rx_packet_count &= RX_PKT_CNTR_MASK; + rx_stat->rx_drop_pkt_count &= RX_DROPPED_PKT_CNTR_MASK; + rx_stat->rx_fcs_err_count &= RX_FCS_ERROR_CNTR_MASK; + rx_stat->rx_frm_len_err_pkt_count &= RX_LEN_ERR_CNTR_MASK; + rx_stat->rx_alignment_err_pkt_count &= RX_ALIGN_ERR_CNTR_MASK; + rx_stat->rx_oversize_pkt_count &= RX_OVRSIZE_PKT_CNTR_MASK; + rx_stat->rx_undersize_pkt_count &= RX_UNDRSIZE_PKT_CNTR_MASK; +} + +static void xgene_gmac_get_tx_stats(struct xgene_enet_priv *priv, + struct xgene_enet_tx_stats *tx_stats) +{ + xgene_enet_rd(priv, BLOCK_MCX_STATS, TBYT_ADDR, + &tx_stats->tx_byte_count); + xgene_enet_rd(priv, BLOCK_MCX_STATS, TPKT_ADDR, + &tx_stats->tx_pkt_count); + xgene_enet_rd(priv, BLOCK_MCX_STATS, TDRP_ADDR, + &tx_stats->tx_drop_frm_count); + xgene_enet_rd(priv, BLOCK_MCX_STATS, TFCS_ADDR, + &tx_stats->tx_fcs_err_frm_count); + xgene_enet_rd(priv, BLOCK_MCX_STATS, TUND_ADDR, + &tx_stats->tx_undersize_frm_count); + + tx_stats->tx_byte_count &= TX_BYTE_CNTR_MASK; + tx_stats->tx_pkt_count &= TX_PKT_CNTR_MASK; + tx_stats->tx_drop_frm_count &= TX_DROP_FRAME_CNTR_MASK; + tx_stats->tx_fcs_err_frm_count &= TX_FCS_ERROR_CNTR_MASK; + tx_stats->tx_undersize_frm_count &= TX_UNDSIZE_FRAME_CNTR_MASK; +} + +static void xgene_gmac_get_detailed_stats(struct xgene_enet_priv *priv, + struct xgene_enet_detailed_stats *stats) +{ + xgene_gmac_get_rx_stats(priv, &(stats->rx_stats)); + xgene_gmac_get_tx_stats(priv, &(stats->tx_stats)); +} + +/* Configure Ethernet QMI: WQ and FPQ association to QML */ +static void xgene_enet_config_qmi_assoc(struct xgene_enet_priv *priv) +{ + xgene_enet_wr(priv, BLOCK_ETH_QMI, ENET_CFGSSQMIWQASSOC_ADDR, + 0xffffffff); + xgene_enet_wr(priv, BLOCK_ETH_QMI, ENET_CFGSSQMIFPQASSOC_ADDR, + 0xffffffff); + xgene_enet_wr(priv, BLOCK_ETH_QMI, ENET_CFGSSQMIQMLITEFPQASSOC_ADDR, + 0xffffffff); + xgene_enet_wr(priv, BLOCK_ETH_QMI, ENET_CFGSSQMIQMLITEWQASSOC_ADDR, + 0xffffffff); +} + +static void xgene_enet_cle_bypass_mode_cfg(struct xgene_enet_priv *priv, + u32 cle_dstqid, u32 cle_fpsel) +{ + u32 reg; + + xgene_enet_rd(priv, BLOCK_ETH_CSR, CLE_BYPASS_REG0_0_ADDR, ®); + reg = CFG_CLE_BYPASS_EN0_SET(reg, 1); + reg = CFG_CLE_IP_PROTOCOL0_SET(reg, 3); + xgene_enet_wr(priv, BLOCK_ETH_CSR, CLE_BYPASS_REG0_0_ADDR, reg); + + xgene_enet_rd(priv, BLOCK_ETH_CSR, CLE_BYPASS_REG1_0_ADDR, ®); + reg = CFG_CLE_DSTQID0_SET(reg, cle_dstqid); + reg = CFG_CLE_FPSEL0_SET(reg, cle_fpsel); + xgene_enet_wr(priv, BLOCK_ETH_CSR, CLE_BYPASS_REG1_0_ADDR, reg); + + xgene_enet_rd(priv, BLOCK_ETH_CSR, CLE_BYPASS_REG8_0_ADDR, ®); + reg = CFG_CLE_HENQNUM0_SET(reg, cle_dstqid); + xgene_enet_wr(priv, BLOCK_ETH_CSR, CLE_BYPASS_REG8_0_ADDR, reg); +} + +static void xgene_gmac_rx_state(struct xgene_enet_priv *priv, u32 enable) +{ + u32 data, rx_en; + + xgene_enet_rd(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, &data); + rx_en = (enable) ? RX_EN1_SET(data, 1) : RX_EN1_SET(data, 0); + xgene_enet_wr(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, rx_en); +} + +static void xgene_gmac_tx_state(struct xgene_enet_priv *priv, u32 enable) +{ + u32 data, tx_en; + + xgene_enet_rd(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, &data); + tx_en = (enable) ? TX_EN1_SET(data, 1) : TX_EN1_SET(data, 0); + xgene_enet_wr(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, tx_en); +} + +static void xgene_gmac_tx_offload(struct xgene_enet_priv *priv, + u32 command, u32 value) +{ + u32 data; + + switch (command) { + /* TCP MSS 0 */ + case XGENE_ENET_MSS0: + xgene_enet_rd(priv, BLOCK_ETH_CSR, + TSIF_MSS_REG0_0_ADDR, &data); + xgene_enet_wr(priv, BLOCK_ETH_CSR, + TSIF_MSS_REG0_0_ADDR, + CFG_TSIF_MSS_SZ00_SET(data, value)); + break; + /* TCP MSS 1 */ + case XGENE_ENET_MSS1: + xgene_enet_rd(priv, BLOCK_ETH_CSR, + TSIF_MSS_REG0_0_ADDR, &data); + xgene_enet_wr(priv, BLOCK_ETH_CSR, + TSIF_MSS_REG0_0_ADDR, + CFG_TSIF_MSS_SZ10_SET(data, value)); + break; + /* TCP MSS 2 */ + case XGENE_ENET_MSS2: + xgene_enet_rd(priv, BLOCK_ETH_CSR, + TSIF_MSS_REG1_0_ADDR, &data); + xgene_enet_wr(priv, BLOCK_ETH_CSR, + TSIF_MSS_REG1_0_ADDR, + CFG_TSIF_MSS_SZ20_SET(data, value)); + break; + /* TCP MSS 3 */ + case XGENE_ENET_MSS3: + xgene_enet_rd(priv, BLOCK_ETH_CSR, + TSIF_MSS_REG1_0_ADDR, &data); + xgene_enet_wr(priv, BLOCK_ETH_CSR, + TSIF_MSS_REG1_0_ADDR, + CFG_TSIF_MSS_SZ30_SET(data, value)); + break; + /* Program TSO config */ + case XGENE_ENET_TSO_CFG: + xgene_enet_wr(priv, BLOCK_ETH_CSR, TSO_CFG_0_ADDR, + value); + break; + /* Insert Inser tVLAN TAG */ + case XGENE_ENET_INSERT_VLAN: + xgene_enet_wr(priv, BLOCK_ETH_CSR, + TSO_CFG_INSERT_VLAN_0_ADDR, value); + break; + } +} + +static void xgene_enet_clkrst_cfg(struct xgene_enet_priv *priv) +{ + u32 data; + + /* disable all clocks */ + data = CSR0_CLKEN_WR(0) | ENET0_CLKEN_WR(0) | + CSR1_CLKEN_WR(0) | ENET1_CLKEN_WR(0); + xgene_enet_wr(priv, BLOCK_ETH_CLKRST_CSR, ENET_CLKEN_ADDR, data); + + /* enable all clocks */ + data = CSR0_CLKEN_WR(1) | ENET0_CLKEN_WR(1) | + CSR1_CLKEN_WR(1) | ENET1_CLKEN_WR(1); + xgene_enet_wr(priv, BLOCK_ETH_CLKRST_CSR, ENET_CLKEN_ADDR, data); + + /* put csr and core reset */ + data = CSR0_RESET_WR(1) | ENET0_RESET_WR(1) | + CSR1_RESET_WR(1) | ENET1_RESET_WR(1); + xgene_enet_wr(priv, BLOCK_ETH_CLKRST_CSR, ENET_SRST_ADDR, data); + + /* release csr and core reset */ + data = CSR0_RESET_WR(0) | ENET0_RESET_WR(0) | + CSR1_RESET_WR(0) | ENET1_RESET_WR(0); + xgene_enet_wr(priv, BLOCK_ETH_CLKRST_CSR, ENET_SRST_ADDR, data); + + xgene_enet_ecc_init(priv); +} + +static void xgene_gport_reset(struct xgene_enet_priv *priv) +{ + u32 val; + + xgene_enet_clkrst_cfg(priv); + xgene_enet_config_qmi_assoc(priv); + + /* Enable auto-incr for scanning */ + xgene_enet_rd(priv, BLOCK_MCX_MAC, MII_MGMT_CONFIG_ADDR, &val); + val |= SCAN_AUTO_INCR_MASK; + val = MGMT_CLOCK_SEL_SET(val, 1); + xgene_enet_wr(priv, BLOCK_MCX_MAC, MII_MGMT_CONFIG_ADDR, val); + xgene_gmac_phy_enable_scan_cycle(priv, 1); +} + +static void xgene_gport_shutdown(struct xgene_enet_priv *priv) +{ + u32 clk, rst; + + rst = CSR0_RESET_WR(1) | ENET0_RESET_WR(1); + clk = CSR0_CLKEN_WR(0) | ENET0_CLKEN_WR(0); + + /* reset ethernet csr, core and disable clock */ + xgene_enet_wr(priv, BLOCK_ETH_CLKRST_CSR, ENET_SRST_ADDR, rst); + xgene_enet_wr(priv, BLOCK_ETH_CLKRST_CSR, ENET_CLKEN_ADDR, clk); +} + +void xgene_enet_init_priv(struct xgene_enet_priv *priv) +{ + void *gbl_vaddr = priv->vaddr_base; + void *port_vaddr = priv->vpaddr_base; + + /* Initialize base addresses for direct access */ + priv->eth_csr_addr_v = gbl_vaddr + BLOCK_ETH_CSR_OFFSET; + priv->eth_cle_addr_v = gbl_vaddr + BLOCK_ETH_CLE_OFFSET; + priv->eth_qmi_addr_v = gbl_vaddr + BLOCK_ETH_QMI_OFFSET; + priv->eth_sds_csr_addr_v = gbl_vaddr + BLOCK_ETH_SDS_CSR_OFFSET; + priv->eth_clkrst_csr_addr_v = gbl_vaddr + BLOCK_ETH_CLKRST_CSR_OFFSET; + priv->eth_diag_csr_addr_v = gbl_vaddr + BLOCK_ETH_DIAG_CSR_OFFSET; + + /* Initialize per port base addr for indirect & direct MCX MAC access */ + priv->mcx_mac_addr_v = port_vaddr + BLOCK_ETH_MAC_OFFSET; + priv->mcx_stats_addr_v = port_vaddr + BLOCK_ETH_STATS_OFFSET; + priv->mcx_mac_csr_addr_v = gbl_vaddr + BLOCK_ETH_MAC_CSR_OFFSET; + priv->sata_enet_csr_addr_v = gbl_vaddr + BLOCK_SATA_ENET_CSR_OFFSET; + + /* Enable autonegotiation by default */ + priv->autoneg_set = 1; + + pr_debug(" ETH PORT VADDR: 0x%p\n", priv->vpaddr_base); + pr_debug(" ETH VADDR: 0x%p\n", priv->vaddr_base); + pr_debug(" ETH CSR VADDR: 0x%p\n", priv->eth_csr_addr_v); + pr_debug(" ETH CLE VADDR: 0x%p\n", priv->eth_cle_addr_v); + pr_debug(" ETH QMI VADDR: 0x%p\n", priv->eth_qmi_addr_v); + pr_debug(" ETH SDS CSR VADDR: 0x%p\n", priv->eth_sds_csr_addr_v); + pr_debug("ETH CLKRST CSR VADDR: 0x%p\n", priv->eth_clkrst_csr_addr_v); + pr_debug(" ETH DIAG VADDR: 0x%p\n", priv->eth_diag_csr_addr_v); + pr_debug(" MAC MII VADDR: 0x%p\n", priv->vmii_base); + pr_debug(" MCX MAC VADDR: 0x%p\n", priv->mcx_mac_addr_v); + pr_debug(" MCX STAT VADDR: 0x%p\n", priv->mcx_stats_addr_v); + pr_debug(" MCX MAC CSR VADDR: 0x%p\n", priv->mcx_mac_csr_addr_v); + pr_debug(" SATA ENET CSR VADDR: 0x%p\n", priv->sata_enet_csr_addr_v); + + /* Initialize priv handlers */ + priv->port_reset = xgene_gport_reset; + priv->mac_reset = xgene_gmac_reset; + priv->mac_init = xgene_gmac_init; + priv->mac_rx_state = xgene_gmac_rx_state; + priv->mac_tx_state = xgene_gmac_tx_state; + priv->mac_change_mtu = xgene_gmac_change_mtu; + priv->set_mac_addr = xgene_gmac_set_mac_addr; + priv->cle_bypass = xgene_enet_cle_bypass_mode_cfg; + priv->tx_offload = xgene_gmac_tx_offload; + priv->port_shutdown = xgene_gport_shutdown; + priv->get_stats = xgene_gmac_get_detailed_stats; +} --- linux-3.13.0.orig/drivers/net/ethernet/apm/xgene/xgene_enet_main.c +++ linux-3.13.0/drivers/net/ethernet/apm/xgene/xgene_enet_main.c @@ -0,0 +1,1599 @@ +/* AppliedMicro X-Gene SoC Ethernet Driver + * + * Copyright (c) 2013, Applied Micro Circuits Corporation + * Authors: Ravi Patel + * Iyappan Subramanian + * Fushen Chen + * Keyur Chudgar + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include "xgene_enet_main.h" +#include "xgene_enet_csr.h" + +inline void xgene_enet_wr32(void *addr, u32 data) +{ + pr_debug("Write addr 0x%p data 0x%08X\n", addr, data); + writel(data, (void __iomem *)addr); +} + +inline void xgene_enet_rd32(void *addr, u32 *data) +{ + *data = readl((void __iomem *)addr); + pr_debug("data 0x%08X\n", *data); +} + +inline phys_addr_t xgene_enet_enc_addr(void *vaddr) +{ + return __pa(vaddr); +} + +inline void *xgene_enet_dec_addr(phys_addr_t paddr) +{ + return __va(paddr); +} + +inline void xgene_enet_set_skb_data(struct xgene_qmtm_msg16 *msg16, + struct sk_buff *skb) +{ + u64 pa = xgene_enet_enc_addr(skb->data); + u32 *word = &msg16->DataAddrL; + + *word++ = cpu_to_le32((u32)pa); + *word = (*word & ~cpu_to_le32(0x3FF)) | cpu_to_le32((u32)(pa >> 32)); +} + +static int xgene_enet_init_fp(struct xgene_enet_qcontext *c2e, u32 nbuf) +{ + struct xgene_enet_pdev *pdev = c2e->pdev; + struct sk_buff *skb; + struct xgene_qmtm_msg16 *msg16; + u32 i; + + /* Initializing common fields */ + for (i = 0; i < c2e->qdesc->count; i++) { + msg16 = &c2e->qdesc->msg16[i]; + memset(msg16, 0, sizeof(struct xgene_qmtm_msg16)); + msg16->UserInfo = i; + msg16->C = 1; + msg16->BufDataLen = xgene_qmtm_encode_bufdatalen(c2e->buf_size); + msg16->FPQNum = c2e->eqnum; + msg16->PB = 0; + msg16->HB = 1; + xgene_qmtm_msg_le32(&(((u32 *)msg16)[1]), 3); + } + + if (nbuf > c2e->qdesc->count) { + netdev_warn(pdev->ndev, + "Limiting number of skb alloc to queue size\n"); + nbuf = c2e->qdesc->count; + } + + for (i = 0; i < nbuf; i++) { + msg16 = &c2e->qdesc->msg16[i]; + skb = dev_alloc_skb(c2e->buf_size); + if (unlikely(!skb)) { + netdev_err(pdev->ndev, + "Failed to allocate new skb size %d", + c2e->buf_size); + return -ENOMEM; + } + skb_reserve(skb, NET_IP_ALIGN); + c2e->skb[i] = skb; + xgene_enet_set_skb_data(msg16, skb); + } + + writel(nbuf, c2e->qdesc->command); + + if (nbuf == c2e->qdesc->count) + nbuf = 0; + c2e->qdesc->qtail = nbuf; + + return 0; +} + +static int xgene_enet_refill_fp(struct xgene_enet_qcontext *c2e, u32 nbuf) +{ + register u32 qtail = c2e->qdesc->qtail; + struct xgene_enet_pdev *pdev = c2e->pdev; + u32 i; + + for (i = 0; i < nbuf; i++) { + struct sk_buff *skb; + struct xgene_qmtm_msg16 *msg16 = &c2e->qdesc->msg16[qtail]; + + msg16->BufDataLen = xgene_qmtm_encode_bufdatalen(c2e->buf_size); + skb = dev_alloc_skb(c2e->buf_size); + if (unlikely(!skb)) { + netdev_err(pdev->ndev, + "Failed to allocate new skb size %d", + c2e->buf_size); + return -ENOMEM; + } + skb_reserve(skb, NET_IP_ALIGN); + c2e->skb[qtail] = skb; + xgene_enet_set_skb_data(msg16, skb); + if (++qtail == c2e->qdesc->count) + qtail = 0; + } + + writel(nbuf, c2e->qdesc->command); + c2e->qdesc->qtail = qtail; + + return 0; +} + +static void xgene_enet_deinit_fp(struct xgene_enet_qcontext *c2e, int qid) +{ + u32 qtail = c2e->qdesc->qtail; + u32 count = c2e->qdesc->count; + u32 command = 0; + struct xgene_enet_pdev *pdev = c2e->pdev; + struct xgene_qmtm_msg16 *msg16; + struct xgene_qmtm_qinfo qinfo; + int i; + + memset(&qinfo, 0, sizeof(qinfo)); + qinfo.qmtm = pdev->sdev->qmtm; + qinfo.queue_id = qid; + xgene_qmtm_read_qstate(&qinfo); + + for (i = 0; i < qinfo.nummsgs; i++) { + if (qtail == 0) + qtail = count; + + qtail--; + msg16 = &c2e->qdesc->msg16[qtail]; + kfree_skb(c2e->skb[msg16->UserInfo]); + command--; + } + + writel(command, c2e->qdesc->command); + c2e->qdesc->qtail = qtail; +} + +static int xgene_enet_change_mtu(struct net_device *ndev, int new_mtu) +{ + struct xgene_enet_pdev *pdev = netdev_priv(ndev); + struct xgene_enet_priv *priv = &pdev->priv; + int eth_running; + + if (HW_MTU(new_mtu) < XGENE_ENET_MIN_MTU + || HW_MTU(new_mtu) > XGENE_ENET_MAX_MTU) { + netdev_err(ndev, "Invalid MTU: %d\n", new_mtu); + return -EINVAL; + } + + netdev_info(ndev, "changing MTU from %d to %d\n", ndev->mtu, new_mtu); + eth_running = netif_running(ndev); + if (eth_running) { + netif_stop_queue(ndev); + xgene_enet_mac_rx_state(priv, 0); + xgene_enet_mac_tx_state(priv, 0); + } + ndev->mtu = new_mtu; + xgene_enet_mac_change_mtu(priv, HW_MTU(new_mtu)); + if (eth_running) { + xgene_enet_mac_rx_state(priv, 1); + xgene_enet_mac_tx_state(priv, 1); + netif_start_queue(ndev); + } + return 0; +} + +static int xgene_enet_mdio_read(struct mii_bus *bus, int mii_id, int regnum) +{ + struct xgene_enet_pdev *pdev = bus->priv; + struct xgene_enet_priv *priv = &pdev->priv; + u32 regval1; + + xgene_genericmiiphy_read(priv, mii_id, regnum, ®val1); + pr_debug("%s: bus=%d reg=%d val=%x\n", __func__, mii_id, + regnum, regval1); + return (int)regval1; +} + +static int xgene_enet_mdio_write(struct mii_bus *bus, int mii_id, int regnum, + u16 regval) +{ + struct xgene_enet_pdev *pdev = bus->priv; + struct xgene_enet_priv *priv = &pdev->priv; + + pr_debug("%s: bus=%d reg=%d val=%x\n", __func__, mii_id, + regnum, regval); + xgene_genericmiiphy_write(priv, mii_id, regnum, regval); + + return 0; +} + +static void xgene_enet_mdio_link_change(struct net_device *ndev) +{ + struct xgene_enet_pdev *pdev = netdev_priv(ndev); + struct xgene_enet_priv *priv = &pdev->priv; + struct phy_device *phydev = pdev->phy_dev; + int status_change = 0; + + if (phydev->link) { + if (pdev->phy_speed != phydev->speed) { + xgene_enet_mac_init(priv, ndev->dev_addr, phydev->speed, + HW_MTU(ndev->mtu), priv->crc); + pdev->phy_speed = phydev->speed; + status_change = 1; + } + } + + if (phydev->link != pdev->phy_link) { + if (!phydev->link) + pdev->phy_speed = 0; + pdev->phy_link = phydev->link; + status_change = 1; + } + + if (status_change) { + xgene_enet_mac_rx_state(priv, phydev->link); + xgene_enet_mac_tx_state(priv, phydev->link); + if (phydev->link) + netdev_info(ndev, "%s: link up %d Mbps\n", + ndev->name, phydev->speed); + else + netdev_info(ndev, "%s: link down\n", ndev->name); + } +} + +static int xgene_enet_mdio_probe(struct net_device *ndev) +{ + struct xgene_enet_pdev *pdev = netdev_priv(ndev); + struct phy_device *phydev = NULL; + int phy_addr; + + /* find the first phy */ + for (phy_addr = 0; phy_addr < PHY_MAX_ADDR; phy_addr++) { + if (pdev->mdio_bus->phy_map[phy_addr]) { + phydev = pdev->mdio_bus->phy_map[phy_addr]; + break; + } + } + + if (!phydev) { + netdev_info(ndev, "%s: no PHY found\n", ndev->name); + return -1; + } + + /* attach the mac to the phy */ + phydev = phy_connect(ndev, dev_name(&phydev->dev), + &xgene_enet_mdio_link_change, + PHY_INTERFACE_MODE_RGMII); + + pdev->phy_link = 0; + pdev->phy_speed = 0; + + if (IS_ERR(phydev)) { + pdev->phy_dev = NULL; + netdev_err(ndev, "%s: Could not attach to PHY\n", ndev->name); + return PTR_ERR(phydev); + } + pdev->phy_dev = phydev; + + netdev_info(ndev, "%s: phy_id=0x%08x phy_drv=\"%s\"", + ndev->name, phydev->phy_id, phydev->drv->name); + + return 0; +} + +static int xgene_enet_mdio_remove(struct net_device *ndev) +{ + struct xgene_enet_pdev *pdev = + (struct xgene_enet_pdev *)netdev_priv(ndev); + struct mii_bus *mdio_bus; + + mdio_bus = pdev->mdio_bus; + mdiobus_unregister(mdio_bus); + mdiobus_free(mdio_bus); + pdev->mdio_bus = NULL; + + return 0; +} + +static inline u32 xgene_enet_hdr_len(const void *data) +{ + const struct ethhdr *eth = data; + return (eth->h_proto == htons(ETH_P_8021Q)) ? VLAN_ETH_HLEN : ETH_HLEN; +} + +irqreturn_t xgene_enet_e2c_irq(const int irq, void *data) +{ + struct xgene_enet_qcontext *e2c = (struct xgene_enet_qcontext *)data; + + if (napi_schedule_prep(&e2c->napi)) { + disable_irq_nosync(irq); + __napi_schedule(&e2c->napi); + } + + return IRQ_HANDLED; +} + +static int xgene_enet_tx_completion(struct xgene_enet_qcontext *e2c, + struct xgene_qmtm_msg32 *msg32_1) +{ + struct sk_buff *skb; + int rc = 0; + + skb = (struct sk_buff *)xgene_enet_dec_addr( + ((u64)msg32_1->msgup16.H0Info_msbH << 32) | + msg32_1->msgup16.H0Info_msbL); + + if (likely(skb)) { + dev_kfree_skb_any(skb); + } else { + netdev_info(e2c->pdev->ndev, "completion skb is NULL\n"); + rc = -1; + } + + return rc; +} + +static inline u16 xgene_enet_select_queue(struct net_device *ndev, + struct sk_buff *skb, + void *accel_priv) +{ + return skb_tx_hash(ndev, skb); +} + +/* Checksum offload processing */ +static int xgene_enet_checksum_offload(struct net_device *ndev, + struct sk_buff *skb, + struct xgene_qmtm_msg_up16 *msg_up16) +{ + u32 maclen, nr_frags, ihl; + struct iphdr *iph; + struct xgene_enet_pdev *pdev = netdev_priv(ndev); + int rc = 0; + + if (unlikely(!(ndev->features & NETIF_F_IP_CSUM))) + goto out; + + if (unlikely(skb->protocol != htons(ETH_P_IP)) && + unlikely(skb->protocol != htons(ETH_P_8021Q))) + goto out; + + nr_frags = skb_shinfo(skb)->nr_frags; + maclen = xgene_enet_hdr_len(skb->data); + iph = ip_hdr(skb); + ihl = ip_hdrlen(skb) >> 2; + + if (unlikely(iph->frag_off & htons(IP_MF | IP_OFFSET))) + goto out; + + if (likely(iph->protocol == IPPROTO_TCP)) { + int xhlen, mss_len; + u32 mss, all_hdr_len; + + xhlen = tcp_hdrlen(skb) / 4; + msg_up16->H0Info_lsbL |= + (xhlen & TSO_TCP_HLEN_MASK) | + ((ihl & TSO_IP_HLEN_MASK) << 6) | + (TSO_CHKSUM_ENABLE << 22) | (TSO_IPPROTO_TCP << 24); + + netdev_dbg(ndev, + "Checksum Offload H0Info 0x%04X%08X H1Info 0x%04X%08X\n", + msg_up16->H0Info_lsbH, msg_up16->H0Info_lsbL, + msg_up16->H0Info_msbH, msg_up16->H0Info_msbL); + + if (unlikely(!(ndev->features & NETIF_F_TSO))) + goto out; + + /* TCP Segmentation offload processing */ + mss = skb_shinfo(skb)->gso_size; + all_hdr_len = maclen + ip_hdrlen(skb) + tcp_hdrlen(skb); + mss_len = skb->len - all_hdr_len; + + /* HW requires all header resides in the first buffer */ + if (nr_frags && (skb_headlen(skb) < all_hdr_len)) { + netdev_err(ndev, + "Unsupported header len location by Eth HW\n"); + pdev->stats.estats.tx_dropped++; + dev_kfree_skb(skb); + rc = -1; + goto out; + } + + if (!mss || mss_len <= mss) + goto out; + + if (mss != pdev->mss) { + xgene_enet_tx_offload(&pdev->priv, XGENE_ENET_MSS0, + mss); + pdev->mss = mss; + } + + msg_up16->H0Info_lsbL |= ((0 & TSO_MSS_MASK) << 20) | + ((TSO_ENABLE & TSO_ENABLE_MASK) << 23); + netdev_dbg(ndev, + "TSO H0Info 0x%04X%08X H1Info 0x%04X%08X mss %d\n", + msg_up16->H0Info_lsbH, msg_up16->H0Info_lsbL, + msg_up16->H0Info_msbH, msg_up16->H0Info_msbL, mss); + } else if (iph->protocol == IPPROTO_UDP) { + msg_up16->H0Info_lsbL |= (UDP_HDR_SIZE & TSO_TCP_HLEN_MASK) + | ((ihl & TSO_IP_HLEN_MASK) << 6) + | (TSO_CHKSUM_ENABLE << 22) + | (TSO_IPPROTO_UDP << 24); + netdev_dbg(ndev, + "Csum Offload H0Info 0x%04X%08X H1Info 0x%04X%08X\n", + msg_up16->H0Info_lsbH, msg_up16->H0Info_lsbL, + msg_up16->H0Info_msbH, msg_up16->H0Info_msbL); + } else { + msg_up16->H0Info_lsbL |= ((ihl & TSO_IP_HLEN_MASK) << 6); + } +out: + return rc; +} + +static void xgene_enet_process_frags(struct net_device *ndev, + struct xgene_qmtm_msg16 *msg16, + struct xgene_enet_qcontext *c2e, + struct sk_buff *skb) +{ + struct xgene_qmtm_msg_up16 *msg_up16; + struct xgene_qmtm_msg_ext32 *msg32_2; + struct xgene_qmtm_msg_ext8 *ext_msg; + struct xgene_qmtm_msg_ll8 *ext_msg_ll8; + u32 qtail = c2e->qdesc->qtail; + phys_addr_t paddr = virt_to_phys(skb->data); + u32 nr_frags = skb_shinfo(skb)->nr_frags; + skb_frag_t *frag = NULL; + u8 *vaddr = NULL; + int frag_no = 0, len = 0, offset = 0; + int ell_bcnt = 0, ell_cnt = 0, i; + + msg_up16 = (struct xgene_qmtm_msg_up16 *)&msg16[1]; + msg32_2 = (struct xgene_qmtm_msg_ext32 *)&c2e->qdesc->msg32[qtail]; + + if (++qtail == c2e->qdesc->count) + qtail = 0; + + memset(msg32_2, 0, sizeof(struct xgene_qmtm_msg_ext32)); + + /* First Fragment, 64B message */ + msg16->BufDataLen = xgene_qmtm_encode_datalen(skb_headlen(skb)); + msg16->DataAddrL = (u32)paddr; + msg16->DataAddrH = (u32)(paddr >> 32); + msg16->NV = 1; + + /* 2nd, 3rd, and 4th fragments */ + ext_msg = &msg32_2->msg8_1; + + /* Terminate next pointers, will be updated later as required */ + msg32_2->msg8_2.NxtBufDataLength = 0x7800; + msg32_2->msg8_3.NxtBufDataLength = 0x7800; + msg32_2->msg8_4.NxtBufDataLength = 0x7800; + + for (i = 0; i < 3 && frag_no < nr_frags; i++) { + if (!vaddr) { + frag = &skb_shinfo(skb)->frags[frag_no]; + len = frag->size; + vaddr = skb_frag_address(frag); + offset = 0; + netdev_dbg(ndev, "SKB Frag[%d] 0x%p len %d\n", + frag_no, vaddr, len); + } + paddr = virt_to_phys(vaddr + offset); + ext_msg->NxtDataAddrL = (u32)paddr; + ext_msg->NxtDataAddrH = (u32)(paddr >> 32); + + if (len <= 16 * 1024) { + /* Encode using 16K buffer size format */ + ext_msg->NxtBufDataLength = + xgene_qmtm_encode_datalen(len); + vaddr = NULL; + frag_no++; + } else { + len -= 16 * 1024; + offset += 16 * 1024; + /* Encode using 16K buffer size format */ + ext_msg->NxtBufDataLength = 0; + } + + netdev_dbg(ndev, "Frag[%d] PADDR 0x%04X%08X len %d\n", i, + ext_msg->NxtDataAddrH, ext_msg->NxtDataAddrL, + ext_msg->NxtBufDataLength); + ext_msg = (struct xgene_qmtm_msg_ext8 *) + (((u8 *) msg32_2) + (8 * ((i + 1) ^ 1))); + } + + /* Determine no more fragment, last one, or more than one */ + if (!vaddr) { + /* Check next fragment */ + if (frag_no >= nr_frags) { + goto out; + } else { + frag = &skb_shinfo(skb)->frags[frag_no]; + if (frag->size <= 16 * 1024 + && (frag_no + 1) >= nr_frags) + goto one_more_frag; + else + goto more_than_one_frag; + } + } else if (len <= 16 * 1024) { + /* Current fragment <= 16K, check if last fragment */ + if ((frag_no + 1) >= nr_frags) + goto one_more_frag; + else + goto more_than_one_frag; + } else { + /* Current fragment requires two pointers */ + goto more_than_one_frag; + } + +one_more_frag: + if (!vaddr) { + frag = &skb_shinfo(skb)->frags[frag_no]; + len = frag->size; + vaddr = skb_frag_address(frag); + offset = 0; + netdev_dbg(ndev, "SKB Frag[%d] 0x%p len %d\n", + frag_no, vaddr, len); + } + + paddr = virt_to_phys(vaddr + offset); + ext_msg->NxtDataAddrL = (u32)paddr; + ext_msg->NxtDataAddrH = (u32)(paddr >> 32); + /* Encode using 16K buffer size format */ + ext_msg->NxtBufDataLength = xgene_qmtm_encode_datalen(len); + netdev_dbg(ndev, "Frag[%d] PADDR 0x%04X%08X len %d\n", i, + ext_msg->NxtDataAddrH, ext_msg->NxtDataAddrL, + ext_msg->NxtBufDataLength); + goto out; + +more_than_one_frag: + msg16->LL = 1; /* Extended link list */ + ext_msg_ll8 = &msg32_2->msg8_ll; + ext_msg = &c2e->msg8[qtail * 256]; + memset(ext_msg, 0, 255 * sizeof(struct xgene_qmtm_msg_ext8)); + paddr = virt_to_phys(ext_msg); + ext_msg_ll8->NxtDataPtrL = (u32)paddr; + ext_msg_ll8->NxtDataPtrH = (u32)(paddr >> 32); + + for (i = 0; i < 255 && frag_no < nr_frags;) { + if (vaddr == NULL) { + frag = &skb_shinfo(skb)->frags[frag_no]; + len = frag->size; + vaddr = skb_frag_address(frag); + offset = 0; + netdev_dbg(ndev, "SKB Frag[%d] 0x%p len %d\n", + frag_no, vaddr, len); + } + paddr = virt_to_phys(vaddr + offset); + ext_msg[i ^ 1].NxtDataAddrL = (u32)paddr; + ext_msg[i ^ 1].NxtDataAddrH = (u32)(paddr >> 32); + + if (len <= 16 * 1024) { + /* Encode using 16K buffer size format */ + ext_msg[i ^ 1].NxtBufDataLength = + xgene_qmtm_encode_datalen(len); + ell_bcnt += len; + vaddr = NULL; + frag_no++; + } else { + len -= 16 * 1024; + offset += 16 * 1024; + ell_bcnt += 16 * 1024; + } + + ell_cnt++; + netdev_dbg(ndev, "Frag ELL[%d] PADDR 0x%04X%08X len %d\n", i, + ext_msg[i ^ 1].NxtDataAddrH, + ext_msg[i ^ 1].NxtDataAddrL, + ext_msg[i ^ 1].NxtBufDataLength); + i++; + xgene_qmtm_msg_le32((u32 *)&ext_msg[i ^ 1], 2); + } + + /* Encode the extended link list byte count and link count */ + ext_msg_ll8->NxtLinkListength = ell_cnt; + msg_up16->TotDataLengthLinkListLSBs = (ell_bcnt & 0xFFF); + ext_msg_ll8->TotDataLengthLinkListMSBs = ((ell_bcnt & 0xFF000) >> 12); + +out: + xgene_qmtm_msg_le32((u32 *)msg32_2, 8); + c2e->qdesc->qtail = qtail; +} + +/* Packet transmit function */ +static netdev_tx_t xgene_enet_start_xmit(struct sk_buff *skb, + struct net_device *ndev) +{ + struct xgene_enet_pdev *pdev = netdev_priv(ndev); + struct xgene_enet_qcontext *c2e = pdev->tx[skb->queue_mapping]; + struct xgene_qmtm_msg16 *msg16; + struct xgene_qmtm_msg_up16 *msg_up16; + u64 pa = xgene_enet_enc_addr((void *)skb); + u32 nr_frags = skb_shinfo(skb)->nr_frags; + u32 nummsgs = (readl(c2e->nummsgs) & 0x1fffe) >> 1; + u32 cmd = 1; + + msg16 = + (struct xgene_qmtm_msg16 *)&c2e->qdesc->msg32[c2e->qdesc->qtail]; + msg_up16 = (struct xgene_qmtm_msg_up16 *)&msg16[1]; + + if (nummsgs > pdev->tx_cqt_hi) { + do { + nummsgs = (readl(c2e->nummsgs) & 0x1fffe) >> 1; + } while (nummsgs < pdev->tx_cqt_low); + } + + if (++c2e->qdesc->qtail == c2e->qdesc->count) + c2e->qdesc->qtail = 0; + + memset(msg16, 0, sizeof(struct xgene_qmtm_msg32)); + + if (likely(nr_frags == 0)) { + skb->len = (skb->len < 60) ? 60 : skb->len; + msg16->BufDataLen = xgene_qmtm_encode_datalen(skb->len); + msg16->DataAddrL = (u32)virt_to_phys(skb->data); + msg16->DataAddrH = (u32)(virt_to_phys(skb->data) >> 32); + } else { + xgene_enet_process_frags(ndev, msg16, c2e, skb); + cmd = 2; + } + + msg_up16->H0Info_msbL = (u32)pa; + msg_up16->H0Info_msbH = (u32)(pa >> 32); + msg_up16->H0Enq_Num = c2e->eqnum; + msg16->C = 1; + + /* Set TYPE_SEL for egress work message */ + msg_up16->H0Info_lsbH = TYPE_SEL_WORK_MSG << 12; + + /* Enable CRC insertion */ + if (!pdev->priv.crc) + msg_up16->H0Info_lsbH |= (TSO_INS_CRC_ENABLE << 3); + + /* Setup mac header length H0Info */ + msg_up16->H0Info_lsbL |= + ((xgene_enet_hdr_len(skb->data) & TSO_ETH_HLEN_MASK) << 12); + + if (unlikely(xgene_enet_checksum_offload(ndev, skb, msg_up16))) + return NETDEV_TX_OK; + + /* xmit: Push the work message to ENET HW */ + netdev_dbg(ndev, "TX CQID %d Addr 0x%04x%08x len %d\n", + msg_up16->H0Enq_Num, msg16->DataAddrH, + msg16->DataAddrL, msg16->BufDataLen); + xgene_qmtm_msg_le32(&(((u32 *)msg16)[1]), 7); + writel(cmd, c2e->qdesc->command); + + ndev->trans_start = jiffies; + return NETDEV_TX_OK; +} + +int xgene_enet_check_skb(struct net_device *ndev, + struct sk_buff *skb, + struct xgene_qmtm_msg32 *msg32_1, u32 qid) +{ + struct xgene_qmtm_msg16 *msg16 = &msg32_1->msg16; + u32 UserInfo = msg16->UserInfo; + u8 NV = msg16->NV; + int rc = 0; + + if (unlikely(!skb)) { + netdev_err(ndev, "ENET skb NULL UserInfo %d QID %d FP 0x%x\n", + UserInfo, qid, msg16->FPQNum); + print_hex_dump(KERN_INFO, "QM msg:", + DUMP_PREFIX_ADDRESS, 16, 4, msg32_1, + NV ? 64 : 32, 1); + rc = -1; + goto out; + } + + if (unlikely(!skb->head) || unlikely(!skb->data)) { + netdev_err(ndev, "ENET skb 0x%p head 0x%p data 0x%p FP 0x%x\n", + skb, skb->head, skb->data, msg16->FPQNum); + print_hex_dump(KERN_INFO, "QM msg:", + DUMP_PREFIX_ADDRESS, 16, 4, msg32_1, + NV ? 64 : 32, 1); + rc = -1; + goto out; + } + + if (unlikely(skb->len)) { + netdev_err(ndev, "ENET skb 0x%p len %d FP 0x%x\n", skb, + skb->len, msg16->FPQNum); + print_hex_dump(KERN_INFO, "QM msg:", + DUMP_PREFIX_ADDRESS, 16, 4, msg32_1, + NV ? 64 : 32, 1); + rc = -1; + goto out; + } + +out: + return rc; +} + +inline void xgene_enet_skip_csum(struct sk_buff *skb) +{ + struct iphdr *iph = (struct iphdr *)skb->data; + if (likely(!(iph->frag_off & htons(IP_MF | IP_OFFSET))) + || likely(iph->protocol != IPPROTO_TCP + && iph->protocol != IPPROTO_UDP)) { + skb->ip_summed = CHECKSUM_UNNECESSARY; + } +} + +/* Process received frame */ +static int xgene_enet_rx_frame(struct xgene_enet_qcontext *e2c, + struct xgene_qmtm_msg32 *msg32_1) +{ + struct xgene_enet_qcontext *c2e = e2c->c2e_skb; + struct xgene_enet_pdev *pdev = e2c->pdev; + struct net_device *ndev = pdev->ndev; + struct xgene_qmtm_msg16 *msg16 = &msg32_1->msg16; + struct sk_buff *skb = NULL; + u32 data_len = xgene_qmtm_decode_datalen(msg16->BufDataLen); + u8 NV = msg16->NV; + u8 LErr = ((u8) msg16->ELErr << 3) | msg16->LErr; + u32 UserInfo = msg16->UserInfo; + u32 qid = pdev->qm_queues.rx[e2c->queue_index].qid; + + if (unlikely(UserInfo >= c2e->qdesc->count)) { + netdev_err(ndev, "ENET: invalid UserInfo %d QID %d FP 0x%x\n", + UserInfo, qid, msg16->FPQNum); + print_hex_dump(KERN_INFO, "QM msg:", + DUMP_PREFIX_ADDRESS, 16, 4, msg32_1, + NV ? 64 : 32, 1); + goto err_refill; + } + + skb = c2e->skb[UserInfo]; + if (unlikely(xgene_enet_check_skb(ndev, skb, msg32_1, qid))) + goto err_refill; + + /* Check for error, if packet received with error */ + if (unlikely(LErr)) { + if (LErr == 0x15) /* ignore rx queue full error */ + goto process_pkt; + if (LErr == 0x10 || LErr == 0x11) { + LErr = 0; + goto process_pkt; + } + if (LErr == 0x10 || LErr == 5) { + LErr = 0; + goto process_pkt; + } + + xgene_enet_parse_error(LErr, qid); + netdev_dbg(ndev, "ENET LErr 0x%x skb 0x%p FP 0x%x\n", + LErr, skb, msg16->FPQNum); + print_hex_dump(KERN_ERR, "QM Msg: ", + DUMP_PREFIX_ADDRESS, 16, 4, msg32_1, + NV ? 64 : 32, 1); + goto err_refill; + } + +process_pkt: + prefetch(skb->data - NET_IP_ALIGN); + + if (likely(!NV)) { + /* Strip off CRC as HW isn't doing this */ + data_len -= 4; + skb_put(skb, data_len); + netdev_dbg(ndev, "RX SKB len %d\n", data_len); + } + + if (--e2c->c2e_count == 0) { + xgene_enet_refill_fp(c2e, 32); + e2c->c2e_count = 32; + } + + if (pdev->num_rx_queues > 1) + skb_record_rx_queue(skb, e2c->queue_index); + + skb->protocol = eth_type_trans(skb, ndev); + if (likely(ndev->features & NETIF_F_IP_CSUM) + && likely(LErr == 0) + && likely(skb->protocol == htons(ETH_P_IP))) { + xgene_enet_skip_csum(skb); + } + + napi_gro_receive(&e2c->napi, skb); + return 0; + +err_refill: + if (skb != NULL) + dev_kfree_skb_any(skb); + + xgene_enet_refill_fp(e2c->c2e_skb, 1); + + if (LErr != 0x15) + pdev->stats.estats.rx_hw_errors++; + else + pdev->stats.estats.rx_hw_overrun++; + + return -1; +} + +static int xgene_enet_dequeue_msg(struct xgene_enet_qcontext *e2c, int budget) +{ + u32 processed = 0; + u32 command = 0; + u32 qhead = e2c->qdesc->qhead; + u32 count = e2c->qdesc->count; + u16 nummsgs; + + while (budget--) { + struct xgene_qmtm_msg32 *msg32_1 = &e2c->qdesc->msg32[qhead]; + struct xgene_qmtm_msg_ext32 *msg32_2 = NULL; + + if (unlikely(((u32 *) msg32_1)[EMPTY_SLOT_INDEX] == EMPTY_SLOT)) + break; + + command--; + if (++qhead == count) + qhead = 0; + + xgene_qmtm_msg_le32(&(((u32 *)msg32_1)[1]), 7); + + if (msg32_1->msg16.NV) { + msg32_2 = (struct xgene_qmtm_msg_ext32 *) + &e2c->qdesc->msg32[qhead]; + if (unlikely(((u32 *) msg32_2)[EMPTY_SLOT_INDEX] + == EMPTY_SLOT)) { + command++; + if (!qhead) + qhead = count; + qhead--; + xgene_qmtm_msg_le32(&(((u32 *)msg32_1)[1]), 7); + break; + } + command--; + if (++qhead == count) + qhead = 0; + xgene_qmtm_msg_le32((u32 *)msg32_2, 8) + } + + if (msg32_1->msg16.FPQNum) + xgene_enet_rx_frame(e2c, msg32_1); + else + xgene_enet_tx_completion(e2c, msg32_1); + + ((u32 *) msg32_1)[EMPTY_SLOT_INDEX] = EMPTY_SLOT; + if (msg32_2) + ((u32 *) msg32_2)[EMPTY_SLOT_INDEX] = EMPTY_SLOT; + processed++; + } + + do { + nummsgs = (readl(e2c->nummsgs) & 0x1fffe) >> 1; + } while (nummsgs < (1 + ~command)); + writel(command, e2c->qdesc->command); + e2c->qdesc->qhead = qhead; + + return processed; +} + +static int xgene_enet_napi(struct napi_struct *napi, const int budget) +{ + struct xgene_enet_qcontext *e2c = + container_of(napi, struct xgene_enet_qcontext, napi); + int processed = xgene_enet_dequeue_msg(e2c, budget); + + if (processed != budget) { + napi_complete(napi); + enable_irq(e2c->qdesc->irq); + } + + return processed; +} + +static void xgene_enet_timeout(struct net_device *ndev) +{ + struct xgene_enet_pdev *pdev = netdev_priv(ndev); + xgene_enet_mac_reset(&pdev->priv); +} + +static void xgene_enet_napi_add(struct xgene_enet_pdev *pdev) +{ + u32 qindex; + + for (qindex = 0; qindex < pdev->num_rx_queues; qindex++) + netif_napi_add(pdev->ndev, &pdev->rx[qindex]->napi, + xgene_enet_napi, 64); +} + +static void xgene_enet_napi_del(struct xgene_enet_pdev *pdev) +{ + u32 qindex; + + for (qindex = 0; qindex < pdev->num_rx_queues; qindex++) + netif_napi_del(&pdev->rx[qindex]->napi); +} + +static void xgene_enet_napi_enable(struct xgene_enet_pdev *pdev) +{ + u32 qindex; + + for (qindex = 0; qindex < pdev->num_rx_queues; qindex++) + napi_enable(&pdev->rx[qindex]->napi); +} + +static void xgene_enet_napi_disable(struct xgene_enet_pdev *pdev) +{ + u32 qindex; + + for (qindex = 0; qindex < pdev->num_rx_queues; qindex++) + napi_disable(&pdev->rx[qindex]->napi); +} + +static void xgene_enet_irq_enable(struct xgene_enet_pdev *pdev) +{ + u32 qindex; + + for (qindex = 0; qindex < pdev->num_rx_queues; qindex++) + enable_irq(pdev->rx[qindex]->qdesc->irq); +} + +static void xgene_enet_irq_disable_all(struct xgene_enet_pdev *pdev) +{ + u32 qindex; + + for (qindex = 0; qindex < pdev->num_rx_queues; qindex++) + disable_irq_nosync(pdev->rx[qindex]->qdesc->irq); +} + +static int xgene_enet_open(struct net_device *ndev) +{ + struct xgene_enet_pdev *pdev = netdev_priv(ndev); + struct xgene_enet_priv *priv = &pdev->priv; + + xgene_enet_napi_enable(pdev); + xgene_enet_irq_enable(pdev); + + netif_tx_start_all_queues(ndev); + netif_carrier_on(ndev); + + if (pdev->phy_dev) + phy_start(pdev->phy_dev); + + xgene_enet_mac_tx_state(priv, 1); + xgene_enet_mac_rx_state(priv, 1); + + return 0; +} + +static int xgene_enet_close(struct net_device *ndev) +{ + struct xgene_enet_pdev *pdev = netdev_priv(ndev); + struct xgene_enet_priv *priv = &pdev->priv; + u32 qindex; + + netif_tx_stop_all_queues(ndev); + netif_carrier_off(ndev); + netif_tx_disable(ndev); + + if (pdev->phy_dev) + phy_stop(pdev->phy_dev); + + xgene_enet_mac_tx_state(priv, 0); + xgene_enet_mac_rx_state(priv, 0); + + xgene_enet_irq_disable_all(pdev); + xgene_enet_napi_disable(pdev); + + for (qindex = 0; qindex < pdev->num_rx_queues; qindex++) + xgene_enet_dequeue_msg(pdev->rx[qindex], -1); + + return 0; +} + +static struct xgene_enet_qcontext *xgene_enet_allocq(struct xgene_enet_pdev + *pdev, + struct xgene_qmtm_qinfo + *qinfo, + struct xgene_qmtm_sdev + *sdev, u8 qtype, u8 qsize) +{ + struct xgene_enet_qcontext *qc; + + memset(qinfo, 0, sizeof(struct xgene_qmtm_qinfo)); + qinfo->sdev = sdev; + qinfo->qaccess = QACCESS_ALT; + qinfo->qtype = qtype; + qinfo->qsize = qsize; + qinfo->flags = XGENE_SLAVE_DEFAULT_FLAGS; + + if (xgene_qmtm_set_qinfo(qinfo)) { + netdev_err(pdev->ndev, "Could not allocate queue\n"); + return NULL; + } + + qc = (struct xgene_enet_qcontext *) + kmalloc(sizeof(struct xgene_enet_qcontext), + GFP_KERNEL | __GFP_ZERO); + qc->nummsgs = &(((u32 *) qinfo->qfabric)[1]); + qc->qdesc = qinfo->qdesc; + qc->pdev = pdev; + + return qc; +} + +static int xgene_enet_qconfig(struct xgene_enet_pdev *pdev) +{ + struct xgene_qmtm_qinfo qinfo; + struct xgene_qmtm_sdev *sdev = pdev->sdev; + struct xgene_qmtm_sdev *idev = pdev->sdev->idev; + int qmtm_ip = sdev->qmtm_ip; + int rc = 0; + u32 qindex; + struct xgene_enet_qcontext *e2c; + struct xgene_enet_qcontext *c2e; + + memset(&pdev->qm_queues, 0, sizeof(struct eth_queue_ids)); + pdev->qm_queues.qm_ip = qmtm_ip; + + for (qindex = 0; qindex < pdev->num_tx_queues; qindex++) { + /* Allocate EGRESS work queues from CPUx to ETHx */ + c2e = xgene_enet_allocq(pdev, &qinfo, sdev, + QTYPE_PQ, QSIZE_64KB); + if (!c2e) + goto out; + + pdev->qm_queues.tx[qindex].qid = qinfo.queue_id; + + /* Setup TX Frame cpu_to_enet info */ + c2e->msg8 = + (struct xgene_qmtm_msg_ext8 *) + kmalloc(sizeof(struct xgene_qmtm_msg_ext8) * 256 * + c2e->qdesc->count, GFP_KERNEL); + c2e->queue_index = qindex; + pdev->tx[qindex] = c2e; + /* Assign TX completn queue threshold based on rx queue size */ + pdev->tx_cqt_hi = c2e->qdesc->count / 4; + pdev->tx_cqt_low = pdev->tx_cqt_low / 16; + } + + pdev->qm_queues.default_tx_qid = pdev->qm_queues.tx[0].qid; + + for (qindex = 0; qindex < pdev->num_rx_queues; qindex++) { + /* Allocate INGRESS work queue from ETHx to CPUx */ + u8 qsize = QSIZE_512KB; + e2c = xgene_enet_allocq(pdev, &qinfo, idev, + QTYPE_PQ, qsize); + if (!e2c) + goto out; + + pdev->qm_queues.rx[qindex].qid = qinfo.queue_id; + e2c->queue_index = qindex; + snprintf(e2c->irq_name, sizeof(e2c->irq_name), "%s-rx%d", + pdev->ndev->name, qindex); + e2c->c2e_count = 1; + pdev->rx[qindex] = e2c; + + /* Allocate free pool for ETHx from CPUx */ + c2e = xgene_enet_allocq(pdev, &qinfo, sdev, + QTYPE_FP, QSIZE_16KB); + if (!c2e) + goto out; + + c2e->skb = kmalloc(sizeof (struct sk_buff *) * + qinfo.qdesc->count, GFP_KERNEL | __GFP_ZERO); + pdev->qm_queues.rx_fp[qindex].qid = qinfo.queue_id; + pdev->qm_queues.rx_fp[qindex].pbn = qinfo.pbn; + + c2e->eqnum = QMTM_QUEUE_ID(qmtm_ip, qinfo.queue_id); + c2e->buf_size = XGENE_ENET_PKT_BUF_SIZE; + pdev->rx_skb_pool[qindex] = c2e; + pdev->rx[qindex]->c2e_skb = pdev->rx_skb_pool[qindex]; + + /* Configure free pool */ + xgene_enet_init_fp(pdev->rx_skb_pool[qindex], + pdev->rx_buff_cnt); + } + + for (qindex = 0; qindex < pdev->num_tx_queues; qindex++) { + u32 cqindex = pdev->num_tx_queues - qindex - 1; + u32 rqindex = qindex % pdev->num_rx_queues; + + pdev->tx[cqindex]->nummsgs = pdev->rx[rqindex]->nummsgs; + pdev->tx[cqindex]->eqnum = QMTM_QUEUE_ID(qmtm_ip, + pdev->qm_queues. + rx[rqindex].qid); + } + + pdev->qm_queues.default_hw_tx_qid = pdev->qm_queues.hw_tx[0].qid; + pdev->qm_queues.default_rx_qid = pdev->qm_queues.rx[0].qid; + pdev->qm_queues.default_rx_fp_qid = pdev->qm_queues.rx_fp[0].qid; + pdev->qm_queues.default_rx_fp_pbn = pdev->qm_queues.rx_fp[0].pbn; + pdev->qm_queues.default_rx_nxtfp_qid = pdev->qm_queues.rx_nxtfp[0].qid; + pdev->qm_queues.default_rx_nxtfp_pbn = pdev->qm_queues.rx_nxtfp[0].pbn; + + netdev_dbg(pdev->ndev, "CQID %d FP %d FP PBN %d\n", + pdev->qm_queues.default_comp_qid, + pdev->qm_queues.default_rx_fp_qid, + pdev->qm_queues.default_rx_fp_pbn); + +out: + return rc; +} + +static void xgene_enet_delete_queue(struct xgene_enet_pdev *pdev) +{ + struct xgene_qmtm_qinfo qinfo; + u32 qindex; + u8 qmtm_ip = pdev->sdev->qmtm_ip; + u16 queue_id; + + qinfo.qmtm_ip = qmtm_ip; + + for (qindex = 0; qindex < pdev->num_tx_queues; qindex++) { + queue_id = pdev->qm_queues.tx[qindex].qid; + + if (queue_id) { + qinfo.queue_id = queue_id; + xgene_qmtm_clr_qinfo(&qinfo); + } + } + + for (qindex = 0; qindex < pdev->num_rx_queues; qindex++) { + queue_id = pdev->qm_queues.rx[qindex].qid; + + if (queue_id) { + qinfo.queue_id = queue_id; + xgene_qmtm_clr_qinfo(&qinfo); + } + + queue_id = pdev->qm_queues.rx_fp[qindex].qid; + + if (queue_id) { + qinfo.queue_id = queue_id; + xgene_qmtm_clr_qinfo(&qinfo); + } + } +} + +static struct net_device_stats *xgene_enet_stats(struct net_device *ndev) +{ + struct xgene_enet_pdev *pdev = netdev_priv(ndev); + struct xgene_enet_priv *priv = &(pdev->priv); + struct net_device_stats *nst = &pdev->nstats; + struct xgene_enet_detailed_stats detailed_stats; + struct xgene_enet_rx_stats *rx_stats; + struct xgene_enet_tx_stats *tx_stats; + u32 pkt_bytes, crc_bytes = 4; + + memset(&detailed_stats, 0, sizeof(struct xgene_enet_detailed_stats)); + + rx_stats = &detailed_stats.rx_stats; + tx_stats = &detailed_stats.tx_stats; + + local_irq_disable(); + xgene_enet_get_stats(priv, &detailed_stats); + + pkt_bytes = rx_stats->rx_byte_count; + pkt_bytes -= (rx_stats->rx_packet_count * crc_bytes); + nst->rx_packets += rx_stats->rx_packet_count; + nst->rx_bytes += pkt_bytes; + + pkt_bytes = tx_stats->tx_byte_count; + pkt_bytes -= (tx_stats->tx_pkt_count * crc_bytes); + nst->tx_packets += tx_stats->tx_pkt_count; + nst->tx_bytes += pkt_bytes; + + nst->rx_dropped += rx_stats->rx_drop_pkt_count; + nst->tx_dropped += tx_stats->tx_drop_frm_count; + + nst->rx_crc_errors += rx_stats->rx_fcs_err_count; + nst->rx_length_errors += rx_stats->rx_frm_len_err_pkt_count; + nst->rx_frame_errors += rx_stats->rx_alignment_err_pkt_count; + nst->rx_over_errors += (rx_stats->rx_oversize_pkt_count + + pdev->stats.estats.rx_hw_overrun); + + nst->rx_errors += (rx_stats->rx_fcs_err_count + + rx_stats->rx_frm_len_err_pkt_count + + rx_stats->rx_oversize_pkt_count + + rx_stats->rx_undersize_pkt_count + + pdev->stats.estats.rx_hw_overrun + + pdev->stats.estats.rx_hw_errors); + + nst->tx_errors += tx_stats->tx_fcs_err_frm_count + + tx_stats->tx_undersize_frm_count; + + local_irq_enable(); + + pdev->stats.estats.rx_hw_errors = 0; + pdev->stats.estats.rx_hw_overrun = 0; + + return nst; +} + +static int xgene_enet_set_mac_address(struct net_device *ndev, void *p) +{ + struct xgene_enet_pdev *pdev = netdev_priv(ndev); + struct xgene_enet_priv *priv = &(pdev->priv); + struct sockaddr *addr = p; + + if (netif_running(ndev)) + return -EBUSY; + + memcpy(ndev->dev_addr, addr->sa_data, ndev->addr_len); + xgene_enet_set_mac_addr(priv, (unsigned char *)(ndev->dev_addr)); + return 0; +} + +/* net_device_ops structure for data path ethernet */ +static const struct net_device_ops apm_dnetdev_ops = { + .ndo_open = xgene_enet_open, + .ndo_stop = xgene_enet_close, + .ndo_select_queue = xgene_enet_select_queue, + .ndo_start_xmit = xgene_enet_start_xmit, + .ndo_tx_timeout = xgene_enet_timeout, + .ndo_get_stats = xgene_enet_stats, + .ndo_change_mtu = xgene_enet_change_mtu, + .ndo_set_mac_address = xgene_enet_set_mac_address, +}; + +static void xgene_enet_register_irq(struct net_device *ndev) +{ + struct xgene_enet_pdev *pdev; + struct device *dev; + u32 qindex; + + pdev = (struct xgene_enet_pdev *)netdev_priv(ndev); + dev = &pdev->plat_dev->dev; + + for (qindex = 0; qindex < pdev->num_rx_queues; qindex++) { + if (devm_request_irq(dev, pdev->rx[qindex]->qdesc->irq, + xgene_enet_e2c_irq, 0, + pdev->rx[qindex]->irq_name, + (void *)pdev->rx[qindex]) != 0) { + netdev_err(ndev, "request_irq failed %d for RX Frame\n", + pdev->rx[qindex]->qdesc->irq); + return; + } + + /* Disable interrupts for RX queue mailboxes */ + disable_irq_nosync(pdev->rx[qindex]->qdesc->irq); + } + + xgene_enet_register_err_irqs(ndev); +} + +static int xgene_enet_get_resources(struct xgene_enet_pdev *pdev) +{ + struct platform_device *plat_dev; + struct net_device *ndev; + struct device *dev; + struct xgene_enet_priv *priv; + struct xgene_qmtm_sdev *sdev; + struct xgene_enet_platform_data pdata; + struct resource *res; + u64 csr_paddr; + void *csr_addr; + int i, rc = 0; + + plat_dev = pdev->plat_dev; + dev = &plat_dev->dev; + ndev = pdev->ndev; + priv = &pdev->priv; + + res = platform_get_resource(plat_dev, IORESOURCE_MEM, 0); + if (!res) { + dev_err(dev, "Unable to retrieve ENET Port CSR region\n"); + rc = -ENODEV; + goto out; + } + csr_paddr = res->start; + csr_addr = devm_ioremap(&plat_dev->dev, csr_paddr, resource_size(res)); + priv->ppaddr_base = csr_paddr; + priv->vpaddr_base = csr_addr; + + res = platform_get_resource(plat_dev, IORESOURCE_MEM, 1); + if (!res) { + dev_err(dev, "Unable to retrieve ENET Global CSR region\n"); + rc = -ENODEV; + goto out; + } + csr_paddr = res->start; + csr_addr = devm_ioremap(&plat_dev->dev, csr_paddr, resource_size(res)); + priv->paddr_base = csr_paddr; + priv->vaddr_base = csr_addr; + + res = platform_get_resource(plat_dev, IORESOURCE_MEM, 2); + if (!res) { + dev_err(dev, "Unable to retrieve ENET MII access region\n"); + rc = -ENODEV; + goto out; + } + csr_paddr = res->start; + csr_addr = devm_ioremap(&plat_dev->dev, csr_paddr, resource_size(res)); + priv->vmii_base = csr_addr; + + rc = of_property_read_string(plat_dev->dev.of_node, "slave-name", + &pdata.sname); + + sdev = xgene_qmtm_get_sdev((char *)pdata.sname); + if (!sdev) { + dev_err(dev, "QMTM Slave %s error\n", pdata.sname); + rc = -ENODEV; + goto out; + } + pdev->sdev = sdev; + + pdata.irq = platform_get_irq(plat_dev, 0); + if (pdata.irq <= 0) { + dev_err(dev, "Unable to get ENET Error IRQ\n"); + rc = pdata.irq; + goto out; + } + pdev->enet_err_irq = pdata.irq; + + pdata.irq = platform_get_irq(plat_dev, 1); + if (pdata.irq <= 0) { + dev_err(dev, "Unable to get ENET MAC Error IRQ\n"); + rc = pdata.irq; + goto out; + } + pdev->enet_mac_err_irq = pdata.irq; + + pdata.irq = platform_get_irq(plat_dev, 2); + if (pdata.irq <= 0) { + dev_err(dev, "Unable to get ENET QMI Error IRQ\n"); + rc = pdata.irq; + goto out; + } + pdev->enet_qmi_err_irq = pdata.irq; + + rc = of_property_read_u32(plat_dev->dev.of_node, "phyid", + &pdata.phy_id); + if (rc || pdata.phy_id > 0x1F) { + dev_err(dev, "No phy ID or invalid value in DTS\n"); + rc = -EINVAL; + goto out; + } + priv->phy_addr = pdata.phy_id; + + rc = of_property_read_u8_array(plat_dev->dev.of_node, + "local-mac-address", pdata.ethaddr, + ARRAY_SIZE(pdata.ethaddr)); + if (rc) { + dev_err(dev, "Can't get Device MAC address\n"); + } else { + for (i = 0; i < ETH_ALEN; i++) + ndev->dev_addr[i] = pdata.ethaddr[i] & 0xff; + } + + pdev->clk = clk_get(&plat_dev->dev, NULL); + + if (IS_ERR(pdev->clk)) + dev_err(&plat_dev->dev, "can't get clock\n"); + else if (clk_prepare_enable(pdev->clk)) + dev_err(&plat_dev->dev, "clock prepare enable failed"); + + priv->phy_mode = PHY_MODE_RGMII; + pdev->rx_buff_cnt = XGENE_NUM_PKT_BUF; + +out: + return rc; +} + +static int xgene_enet_init_hw(struct xgene_enet_pdev *pdev) +{ + struct net_device *ndev; + struct xgene_enet_priv *priv; + struct mii_bus *mdio_bus; + int rc = 0; + + ndev = pdev->ndev; + priv = &pdev->priv; + + xgene_enet_port_reset(priv); + + /* To ensure no packet enters the system, disable Rx/Tx */ + xgene_enet_mac_tx_state(priv, 0); + xgene_enet_mac_rx_state(priv, 0); + + ndev->netdev_ops = &apm_dnetdev_ops; + + ndev->features |= NETIF_F_IP_CSUM; + ndev->features |= NETIF_F_TSO | NETIF_F_SG; + pdev->mss = DEFAULT_TCP_MSS; + xgene_enet_tx_offload(priv, XGENE_ENET_MSS0, pdev->mss); + ndev->features |= NETIF_F_GRO; + + /* Ethtool checks the capabilities/features in hw_features flag */ + ndev->hw_features = ndev->features; + SET_ETHTOOL_OPS(ndev, &xgene_ethtool_ops); + + rc = register_netdev(ndev); + if (rc) { + netdev_err(ndev, "Failed to register net dev(%d)!\n", rc); + goto out; + } + + rc = xgene_enet_qconfig(pdev); + if (rc) { + netdev_err(ndev, "Error in QM configuration\n"); + goto out; + } + + xgene_enet_napi_add(pdev); + + xgene_enet_cle_bypass(priv, QMTM_QUEUE_ID(pdev->sdev->qmtm_ip, + pdev->qm_queues. + default_rx_qid), + pdev->qm_queues.default_rx_fp_pbn - 0x20); + + /* Default MAC initialization */ + xgene_enet_mac_init(priv, ndev->dev_addr, SPEED_1000, + HW_MTU(ndev->mtu), priv->crc); + + /* Setup MDIO bus */ + mdio_bus = mdiobus_alloc(); + if (!mdio_bus) { + netdev_err(ndev, "Not able to allocate memory for MDIO bus\n"); + rc = -ENOMEM; + goto out; + } + + pdev->mdio_bus = mdio_bus; + mdio_bus->name = "APM Ethernet MII Bus"; + mdio_bus->read = xgene_enet_mdio_read; + mdio_bus->write = xgene_enet_mdio_write; + snprintf(mdio_bus->id, MII_BUS_ID_SIZE, "%x", priv->phy_addr); + mdio_bus->priv = pdev; + mdio_bus->parent = &ndev->dev; + mdio_bus->phy_mask = ~(1 << priv->phy_addr); + rc = mdiobus_register(mdio_bus); + if (rc) { + netdev_err(ndev, "Failed to register MDIO bus(%d)!\n", rc); + return rc; + } + + rc = xgene_enet_mdio_probe(ndev); + xgene_enet_register_irq(ndev); + +out: + return rc; +} + +static int xgene_enet_probe(struct platform_device *plat_dev) +{ + struct net_device *ndev; + struct xgene_enet_pdev *pdev; + struct device *dev; + struct xgene_enet_priv *priv; + u32 num_tx_queues, num_rx_queues; + int rc; + + dev = &plat_dev->dev; + num_tx_queues = MAX_TX_QUEUES; + num_rx_queues = MAX_RX_QUEUES; + + ndev = alloc_etherdev_mqs(sizeof(struct xgene_enet_pdev), + num_tx_queues, num_rx_queues); + + if (!ndev) { + dev_err(dev, "Not able to allocate memory for netdev\n"); + rc = -ENOMEM; + goto out; + } + + pdev = (struct xgene_enet_pdev *)netdev_priv(ndev); + priv = &pdev->priv; + pdev->ndev = ndev; + pdev->num_tx_queues = num_tx_queues; + pdev->num_rx_queues = num_rx_queues; + pdev->plat_dev = plat_dev; + pdev->node = plat_dev->dev.of_node; + SET_NETDEV_DEV(ndev, &plat_dev->dev); + dev_set_drvdata(&plat_dev->dev, pdev); + + xgene_enet_get_resources(pdev); + + xgene_enet_init_priv(priv); + rc = xgene_enet_init_hw(pdev); + +out: + return rc; +} + +static int xgene_enet_remove(struct platform_device *plat_dev) +{ + struct xgene_enet_pdev *pdev; + struct xgene_enet_priv *priv; + struct net_device *ndev; + u32 qindex; + u8 qmtm_ip; + + pdev = platform_get_drvdata(plat_dev); + qmtm_ip = pdev->sdev->qmtm_ip; + ndev = pdev->ndev; + priv = &pdev->priv; + + /* Stop any traffic and disable MAC */ + xgene_enet_mac_rx_state(priv, 0); + xgene_enet_mac_tx_state(priv, 0); + + if (netif_running(ndev)) { + netif_device_detach(ndev); + netif_stop_queue(ndev); + xgene_enet_napi_disable(pdev); + } + + xgene_enet_napi_del(pdev); + xgene_enet_mdio_remove(ndev); + + for (qindex = 0; qindex < pdev->num_rx_queues; qindex++) { + if (pdev->qm_queues.rx_fp[qindex].qid > 0) + xgene_enet_deinit_fp(pdev->rx_skb_pool[qindex], + pdev->qm_queues.rx_fp[qindex].qid); + } + + xgene_enet_delete_queue(pdev); + + for (qindex = 0; qindex < pdev->num_rx_queues; qindex++) { + kfree(pdev->rx_skb_pool[qindex]->skb); + kfree(pdev->rx_skb_pool[qindex]); + kfree(pdev->rx[qindex]); + } + for (qindex = 0; qindex < pdev->num_tx_queues; qindex++) { + kfree(pdev->tx[qindex]->msg8); + kfree(pdev->tx[qindex]); + } + + unregister_netdev(ndev); + xgene_enet_port_shutdown(priv); + + free_netdev(ndev); + + return 0; +} + +static struct of_device_id xgene_enet_match[] = { + { + .compatible = "apm,xgene-enet", + }, + {}, +}; + +MODULE_DEVICE_TABLE(of, xgene_enet_match); + +static struct platform_driver xgene_enet_driver = { + .driver = { + .name = XGENE_ENET_DRIVER_NAME, + .owner = THIS_MODULE, + .of_match_table = xgene_enet_match, + }, + .probe = xgene_enet_probe, + .remove = xgene_enet_remove, +}; + +static int __init xgene_enet_init(void) +{ + if (!platform_driver_register(&xgene_enet_driver)) + pr_info("%s v%s loaded\n", XGENE_ENET_DRIVER_DESC, + XGENE_ENET_DRIVER_VERSION); + + return 0; +} + +static void __exit xgene_enet_exit(void) +{ + platform_driver_unregister(&xgene_enet_driver); + pr_info("%s v%s unloaded\n", XGENE_ENET_DRIVER_DESC, + XGENE_ENET_DRIVER_VERSION); +} + +module_init(xgene_enet_init); +module_exit(xgene_enet_exit); + +MODULE_DESCRIPTION(XGENE_ENET_DRIVER_DESC); +MODULE_VERSION(XGENE_ENET_DRIVER_VERSION); +MODULE_AUTHOR("Keyur Chudgar "); +MODULE_LICENSE("GPL"); --- linux-3.13.0.orig/drivers/net/ethernet/apm/xgene/xgene_enet_main.h +++ linux-3.13.0/drivers/net/ethernet/apm/xgene/xgene_enet_main.h @@ -0,0 +1,177 @@ +/* AppliedMicro X-Gene SoC Ethernet Driver + * + * Copyright (c) 2013, Applied Micro Circuits Corporation + * Authors: Ravi Patel + * Iyappan Subramanian + * Fushen Chen + * Keyur Chudgar + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef __XGENE_ENET_MAIN_H__ +#define __XGENE_ENET_MAIN_H__ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "xgene_enet_common.h" + +#define XGENE_ENET_DRIVER_NAME "xgene-enet" +#define XGENE_ENET_DRIVER_VERSION "1.0" +#define XGENE_ENET_DRIVER_DESC "APM X-Gene SoC Ethernet driver" + +#define XGENE_ENET_MIN_MTU 64 +#define XGENE_ENET_MAX_MTU 10000 + +/* Note: PKT_BUF_SIZE & PKT_NXTBUF_SIZE has to be one of the following: + * 256, 1K, 2K, 4K, 16K for ethernet to work with optimum performance. + */ +#define XGENE_ENET_PKT_BUF_SIZE 2048 +#define XGENE_NUM_PKT_BUF 256 + +/* define Enet system struct */ +struct xgene_enet_dev { + int refcnt; + struct timer_list link_poll_timer; + int ipp_loaded; + int ipp_hw_mtu; +}; + +enum xgene_enet_phy_poll_interval { + PHY_POLL_LINK_ON = HZ, + PHY_POLL_LINK_OFF = (HZ / 5) +}; + +enum xgene_enet_debug_cmd { + XGENE_ENET_READ_CMD, + XGENE_ENET_WRITE_CMD, + XGENE_ENET_MAX_CMD +}; + +#define MAX_TX_QUEUES 1 +#define MAX_RX_QUEUES 1 + +/* This is soft flow context of queue */ +struct xgene_enet_qcontext { + struct xgene_enet_pdev *pdev; + struct xgene_qmtm_qdesc *qdesc; + struct xgene_qmtm_msg_ext8 *msg8; + u32 *nummsgs; + unsigned int queue_index; + unsigned int eqnum; + u32 buf_size; + unsigned int c2e_count; + struct sk_buff * (*skb); + struct xgene_enet_qcontext *c2e_skb; + struct xgene_enet_qcontext *c2e_page; + struct napi_struct napi; + char irq_name[16]; +}; + +/* Queues related parameters per Enet port */ +#define ENET_MAX_PBN 8 +#define ENET_MAX_QSEL 8 + +struct eth_wqids { + u16 qtype; + u16 qid; + u16 arb; + u16 qcount; + u16 qsel[ENET_MAX_QSEL]; +}; + +struct eth_fqids { + u16 qid; + u16 pbn; +}; + +struct eth_queue_ids { + u16 default_tx_qid; + u16 tx_count; + u16 tx_idx; + struct eth_wqids tx[ENET_MAX_PBN]; + u16 default_rx_qid; + u16 rx_count; + u16 rx_idx; + struct eth_wqids rx[ENET_MAX_PBN]; + u16 default_rx_fp_qid; + u16 default_rx_fp_pbn; + struct eth_fqids rx_fp[ENET_MAX_PBN]; + u16 default_rx_nxtfp_qid; + u16 default_rx_nxtfp_pbn; + struct eth_fqids rx_nxtfp[ENET_MAX_PBN]; + struct eth_fqids hw_fp; + u16 default_hw_tx_qid; + struct eth_fqids hw_tx[ENET_MAX_PBN]; + struct eth_wqids comp[ENET_MAX_PBN]; + u16 default_comp_qid; + u32 qm_ip; +}; + +struct xgene_enet_platform_data { + const char *sname; + int irq; + u32 phy_id; + u8 ethaddr[6]; +}; + +/* APM ethernet per port data */ +struct xgene_enet_pdev { + struct net_device *ndev; + struct mii_bus *mdio_bus; + struct phy_device *phy_dev; + int phy_link; + int phy_speed; + struct clk *clk; + struct device_node *node; + struct platform_device *plat_dev; + struct xgene_qmtm_sdev *sdev; + struct xgene_enet_qcontext *tx[MAX_TX_QUEUES]; + struct xgene_enet_qcontext *rx_skb_pool[MAX_RX_QUEUES]; + u32 num_tx_queues; + struct xgene_enet_qcontext *rx[MAX_RX_QUEUES]; + struct xgene_enet_qcontext *tx_completion[MAX_TX_QUEUES]; + u32 num_rx_queues; + struct net_device_stats nstats; + struct xgene_enet_detailed_stats stats; + char *dev_name; + int uc_count; + struct eth_queue_ids qm_queues; + u32 rx_buff_cnt, tx_cqt_low, tx_cqt_hi; + int mss; + unsigned int enet_err_irq; + unsigned int enet_mac_err_irq; + unsigned int enet_qmi_err_irq; + struct xgene_enet_priv priv; +}; + +/* Ethernet raw register write, read routines */ +void xgene_enet_wr32(void *addr, u32 data); +void xgene_enet_rd32(void *addr, u32 *data); + +u32 xgene_enet_get_port(struct xgene_enet_pdev *pdev); + +void xgene_enet_init_priv(struct xgene_enet_priv *priv); + +int xgene_enet_parse_error(u8 LErr, int qid); +void xgene_enet_register_err_irqs(struct net_device *ndev); + +extern const struct ethtool_ops xgene_ethtool_ops; +#endif /* __XGENE_ENET_MAIN_H__ */ --- linux-3.13.0.orig/drivers/net/ethernet/apm/xgene/xgene_enet_tools.c +++ linux-3.13.0/drivers/net/ethernet/apm/xgene/xgene_enet_tools.c @@ -0,0 +1,296 @@ +/* AppliedMicro X-Gene SoC Ethernet Driver + * + * Copyright (c) 2013, Applied Micro Circuits Corporation + * Authors: Hrishikesh Karanjikar + * Ravi Patel + * Iyappan Subramanian + * Keyur Chudgar + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published by + * the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#include +#include +#include "xgene_enet_csr.h" +#include "xgene_enet_main.h" + +struct xgene_stats { + char stat_string[ETH_GSTRING_LEN]; + int sizeof_stat; + int stat_offset; +}; + +static const struct xgene_stats xgene_gstrings_stats[] = { + { "rx_bytes", + FIELD_SIZEOF(struct xgene_enet_pdev, + stats.rx_stats.rx_byte_count), + offsetof(struct xgene_enet_pdev, stats.rx_stats.rx_byte_count) + }, + { "rx_packets", + FIELD_SIZEOF(struct xgene_enet_pdev, + stats.rx_stats.rx_packet_count), + offsetof(struct xgene_enet_pdev, stats.rx_stats.rx_packet_count) + }, + { "rx_fcs_err", + FIELD_SIZEOF(struct xgene_enet_pdev, + stats.rx_stats.rx_fcs_err_count), + offsetof(struct xgene_enet_pdev, + stats.rx_stats.rx_fcs_err_count) + }, + { "rx_alignment_err", + FIELD_SIZEOF(struct xgene_enet_pdev, + stats.rx_stats.rx_alignment_err_pkt_count), + offsetof(struct xgene_enet_pdev, + stats.rx_stats.rx_alignment_err_pkt_count) + }, + { "rx_frm_len_err", + FIELD_SIZEOF(struct xgene_enet_pdev, + stats.rx_stats.rx_frm_len_err_pkt_count), + offsetof(struct xgene_enet_pdev, + stats.rx_stats.rx_frm_len_err_pkt_count) + }, + { "rx_undersize", + FIELD_SIZEOF(struct xgene_enet_pdev, + stats.rx_stats.rx_undersize_pkt_count), + offsetof(struct xgene_enet_pdev, + stats.rx_stats.rx_undersize_pkt_count) + }, + { "rx_oversize", + FIELD_SIZEOF(struct xgene_enet_pdev, + stats.rx_stats.rx_oversize_pkt_count), + offsetof(struct xgene_enet_pdev, + stats.rx_stats.rx_oversize_pkt_count) + }, + { "rx_drop", + FIELD_SIZEOF(struct xgene_enet_pdev, + stats.rx_stats.rx_drop_pkt_count), + offsetof(struct xgene_enet_pdev, + stats.rx_stats.rx_drop_pkt_count) + }, + { "tx_bytes", + FIELD_SIZEOF(struct xgene_enet_pdev, + stats.tx_stats.tx_byte_count), + offsetof(struct xgene_enet_pdev, + stats.tx_stats.tx_byte_count) + }, + { "tx_packets", + FIELD_SIZEOF(struct xgene_enet_pdev, + stats.tx_stats.tx_pkt_count), + offsetof(struct xgene_enet_pdev, + stats.tx_stats.tx_pkt_count) + }, + { "tx_drop", + FIELD_SIZEOF(struct xgene_enet_pdev, + stats.tx_stats.tx_drop_frm_count), + offsetof(struct xgene_enet_pdev, + stats.tx_stats.tx_drop_frm_count) + }, + { "tx_fcs_err", + FIELD_SIZEOF(struct xgene_enet_pdev, + stats.tx_stats.tx_fcs_err_frm_count), + offsetof(struct xgene_enet_pdev, + stats.tx_stats.tx_fcs_err_frm_count) + }, + { "tx_undersize", + FIELD_SIZEOF(struct xgene_enet_pdev, + stats.tx_stats.tx_undersize_frm_count), + offsetof(struct xgene_enet_pdev, + stats.tx_stats.tx_undersize_frm_count) + }, +}; + +#define XGENE_GLOBAL_STATS_LEN ARRAY_SIZE(xgene_gstrings_stats) + +/* Ethtool APIs */ +static int xgene_ethtool_get_settings(struct net_device *ndev, + struct ethtool_cmd *cmd) +{ + struct xgene_enet_pdev *pdev = netdev_priv(ndev); + struct phy_device *phydev = pdev->phy_dev; + struct xgene_enet_priv *priv = &pdev->priv; + + if (priv->phy_mode == PHY_MODE_RGMII) { + if (!phydev) + return -ENODEV; + return phy_ethtool_gset(phydev, cmd); + } + return 0; +} + +static int xgene_ethtool_set_settings(struct net_device *ndev, + struct ethtool_cmd *cmd) +{ + struct xgene_enet_pdev *pdev = netdev_priv(ndev); + struct phy_device *phydev = pdev->phy_dev; + struct xgene_enet_priv *priv = &pdev->priv; + + if (priv->phy_mode == PHY_MODE_RGMII) { + if (!phydev) + return -ENODEV; + return phy_ethtool_sset(phydev, cmd); + } + return 0; +} + +static int xgene_ethtool_set_pauseparam(struct net_device *ndev, + struct ethtool_pauseparam *pp) +{ + u32 data; + struct xgene_enet_pdev *pdev = netdev_priv(ndev); + struct xgene_enet_priv *priv = &pdev->priv; + + xgene_enet_rd(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, &data); + + /* Modify value to set or reset rx flow control */ + if (pp->rx_pause) + data |= RX_FLOW_EN1_MASK; + else + data &= ~RX_FLOW_EN1_MASK; + + /* Modify value to set or reset tx flow control */ + if (pp->tx_pause) + data |= TX_FLOW_EN1_MASK; + else + data &= ~TX_FLOW_EN1_MASK; + + xgene_enet_wr(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, data); + + return 0; +} + +static void xgene_ethtool_get_pauseparam(struct net_device *ndev, + struct ethtool_pauseparam *pp) +{ + u32 data; + struct xgene_enet_pdev *pdev = netdev_priv(ndev); + struct xgene_enet_priv *priv = &pdev->priv; + + xgene_enet_rd(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, &data); + pp->rx_pause = RX_FLOW_EN1_RD(data); + + xgene_enet_rd(priv, BLOCK_MCX_MAC, MAC_CONFIG_1_ADDR, &data); + pp->tx_pause = TX_FLOW_EN1_RD(data); +} + +static int xgene_ethtool_nway_reset(struct net_device *ndev) +{ + u32 data = 0, retry = 0; + struct xgene_enet_pdev *pdev = netdev_priv(ndev); + struct xgene_enet_priv *priv = &pdev->priv; + + if (priv->phy_mode == PHY_MODE_RGMII) + mutex_lock(&pdev->mdio_bus->mdio_lock); + + /* Power-down PHY */ + data = MII_CR_POWER_DOWN; + xgene_genericmiiphy_write(priv, priv->phy_addr, + MII_CTRL_REG, data); + + /* Power-up PHY */ + data = 0x0; + xgene_genericmiiphy_write(priv, priv->phy_addr, + MII_CTRL_REG, data); + + /* Reset PHY */ + data = MII_CR_RESET; + xgene_genericmiiphy_write(priv, priv->phy_addr, + MII_CTRL_REG, data); + + /* PHY reset may take 100 ms */ + retry = 100; + do { + xgene_genericmiiphy_read(priv, priv->phy_addr, + MII_CTRL_REG, &data); + usleep_range(1000, 2000); + } while (--retry && (data & MII_CR_RESET)); + + xgene_genericmiiphy_write(priv, priv->phy_addr, MII_CTRL_REG, + MII_CR_AUTO_EN|MII_CR_RESTART|MII_CR_FDX); + + priv->autoneg_set = 1; + priv->speed = XGENE_ENET_SPEED_1000; + priv->mac_init(priv, ndev->dev_addr, priv->speed, + HW_MTU(ndev->mtu), priv->crc); + + if (priv->phy_mode == PHY_MODE_RGMII) + mutex_unlock(&pdev->mdio_bus->mdio_lock); + + return 0; +} + +static void xgene_get_strings(struct net_device *ndev, u32 stringset, + u8 *data) +{ + u8 *p = data; + int i; + + switch (stringset) { + case ETH_SS_TEST: + case ETH_SS_STATS: + for (i = 0; i < XGENE_GLOBAL_STATS_LEN; i++) { + memcpy(p, xgene_gstrings_stats[i].stat_string, + ETH_GSTRING_LEN); + p += ETH_GSTRING_LEN; + } + break; + } +} + +static int xgene_get_sset_count(struct net_device *ndev, int sset) +{ + switch (sset) { + case ETH_SS_TEST: + return XGENE_GLOBAL_STATS_LEN; + case ETH_SS_STATS: + return XGENE_GLOBAL_STATS_LEN; + default: + return -EOPNOTSUPP; + } + +} + +static void xgene_ethtool_get_ethtool_stats(struct net_device *ndev, + struct ethtool_stats *ethtool_stats, + u64 *data) +{ + + struct xgene_enet_pdev *pdev = netdev_priv(ndev); + struct xgene_enet_priv *priv = &pdev->priv; + struct xgene_enet_detailed_stats *stats = &pdev->stats; + int i; + + xgene_enet_get_stats(priv, stats); + for (i = 0; i < XGENE_GLOBAL_STATS_LEN; i++) { + char *p = (char *)pdev + xgene_gstrings_stats[i].stat_offset; + data[i] = (xgene_gstrings_stats[i].sizeof_stat == + sizeof(u64)) ? *(u64 *)p : *(u32 *)p; + } +} + +static void xgene_ethtool_get_drvinfo(struct net_device *ndev, + struct ethtool_drvinfo *info) +{ + strcpy(info->driver, ndev->name); + strcpy(info->version, XGENE_ENET_DRIVER_VERSION); + strcpy(info->fw_version, "N/A"); +} + +const struct ethtool_ops xgene_ethtool_ops = { + .get_settings = xgene_ethtool_get_settings, + .set_settings = xgene_ethtool_set_settings, + .get_drvinfo = xgene_ethtool_get_drvinfo, + .nway_reset = xgene_ethtool_nway_reset, + .get_pauseparam = xgene_ethtool_get_pauseparam, + .set_pauseparam = xgene_ethtool_set_pauseparam, + .get_ethtool_stats = xgene_ethtool_get_ethtool_stats, + .get_sset_count = xgene_get_sset_count, + .get_strings = xgene_get_strings, + .get_link = ethtool_op_get_link, +}; --- linux-3.13.0.orig/drivers/net/ethernet/broadcom/bnx2.c +++ linux-3.13.0/drivers/net/ethernet/broadcom/bnx2.c @@ -2490,6 +2490,7 @@ bp->fw_wr_seq++; msg_data |= bp->fw_wr_seq; + bp->fw_last_msg = msg_data; bnx2_shmem_wr(bp, BNX2_DRV_MB, msg_data); @@ -3982,8 +3983,23 @@ wol_msg = BNX2_DRV_MSG_CODE_SUSPEND_NO_WOL; } - if (!(bp->flags & BNX2_FLAG_NO_WOL)) - bnx2_fw_sync(bp, BNX2_DRV_MSG_DATA_WAIT3 | wol_msg, 1, 0); + if (!(bp->flags & BNX2_FLAG_NO_WOL)) { + u32 val; + + wol_msg |= BNX2_DRV_MSG_DATA_WAIT3; + if (bp->fw_last_msg || BNX2_CHIP(bp) != BNX2_CHIP_5709) { + bnx2_fw_sync(bp, wol_msg, 1, 0); + return; + } + /* Tell firmware not to power down the PHY yet, otherwise + * the chip will take a long time to respond to MMIO reads. + */ + val = bnx2_shmem_rd(bp, BNX2_PORT_FEATURE); + bnx2_shmem_wr(bp, BNX2_PORT_FEATURE, + val | BNX2_PORT_FEATURE_ASF_ENABLED); + bnx2_fw_sync(bp, wol_msg, 1, 0); + bnx2_shmem_wr(bp, BNX2_PORT_FEATURE, val); + } } @@ -4015,9 +4031,22 @@ if (bp->wol) pci_set_power_state(bp->pdev, PCI_D3hot); - } else { - pci_set_power_state(bp->pdev, PCI_D3hot); + break; + + } + if (!bp->fw_last_msg && BNX2_CHIP(bp) == BNX2_CHIP_5709) { + u32 val; + + /* Tell firmware not to power down the PHY yet, + * otherwise the other port may not respond to + * MMIO reads. + */ + val = bnx2_shmem_rd(bp, BNX2_BC_STATE_CONDITION); + val &= ~BNX2_CONDITION_PM_STATE_MASK; + val |= BNX2_CONDITION_PM_STATE_UNPREP; + bnx2_shmem_wr(bp, BNX2_BC_STATE_CONDITION, val); } + pci_set_power_state(bp->pdev, PCI_D3hot); /* No more memory access after this point until * device is brought back to D0. --- linux-3.13.0.orig/drivers/net/ethernet/broadcom/bnx2.h +++ linux-3.13.0/drivers/net/ethernet/broadcom/bnx2.h @@ -6890,6 +6890,7 @@ u16 fw_wr_seq; u16 fw_drv_pulse_wr_seq; + u32 fw_last_msg; int rx_max_ring; int rx_ring_size; @@ -7396,6 +7397,10 @@ #define BNX2_CONDITION_MFW_RUN_NCSI 0x00006000 #define BNX2_CONDITION_MFW_RUN_NONE 0x0000e000 #define BNX2_CONDITION_MFW_RUN_MASK 0x0000e000 +#define BNX2_CONDITION_PM_STATE_MASK 0x00030000 +#define BNX2_CONDITION_PM_STATE_FULL 0x00030000 +#define BNX2_CONDITION_PM_STATE_PREP 0x00020000 +#define BNX2_CONDITION_PM_STATE_UNPREP 0x00010000 #define BNX2_BC_STATE_DEBUG_CMD 0x1dc #define BNX2_BC_STATE_BC_DBG_CMD_SIGNATURE 0x42440000 --- linux-3.13.0.orig/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c +++ linux-3.13.0/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c @@ -1834,7 +1834,7 @@ } u16 bnx2x_select_queue(struct net_device *dev, struct sk_buff *skb, - void *accel_priv) + void *accel_priv, select_queue_fallback_t fallback) { struct bnx2x *bp = netdev_priv(dev); @@ -1856,7 +1856,7 @@ } /* select a non-FCoE queue */ - return __netdev_pick_tx(dev, skb) % BNX2X_NUM_ETH_QUEUES(bp); + return fallback(dev, skb) % BNX2X_NUM_ETH_QUEUES(bp); } void bnx2x_set_num_queues(struct bnx2x *bp) --- linux-3.13.0.orig/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h +++ linux-3.13.0/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h @@ -525,7 +525,7 @@ /* select_queue callback */ u16 bnx2x_select_queue(struct net_device *dev, struct sk_buff *skb, - void *accel_priv); + void *accel_priv, select_queue_fallback_t fallback); static inline void bnx2x_update_rx_prod(struct bnx2x *bp, struct bnx2x_fastpath *fp, --- linux-3.13.0.orig/drivers/net/ethernet/broadcom/tg3.c +++ linux-3.13.0/drivers/net/ethernet/broadcom/tg3.c @@ -326,6 +326,7 @@ {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57785)}, {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57761)}, {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57765)}, + {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57786)}, {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57791), .driver_data = TG3_DRV_DATA_FLAG_10_100_ONLY}, {PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, TG3PCI_DEVICE_TIGON3_57795), @@ -6827,8 +6828,7 @@ work_mask |= opaque_key; - if ((desc->err_vlan & RXD_ERR_MASK) != 0 && - (desc->err_vlan != RXD_ERR_ODD_NIBBLE_RCVD_MII)) { + if (desc->err_vlan & RXD_ERR_MASK) { drop_it: tg3_recycle_rx(tnapi, tpr, opaque_key, desc_idx, *post_ptr); @@ -13965,12 +13965,12 @@ tg3_netif_stop(tp); + tg3_set_mtu(dev, tp, new_mtu); + tg3_full_lock(tp, 1); tg3_halt(tp, RESET_KIND_SHUTDOWN, 1); - tg3_set_mtu(dev, tp, new_mtu); - /* Reset PHY, otherwise the read DMA engine will be in a mode that * breaks all requests to 256 bytes. */ @@ -17486,8 +17486,6 @@ tg3_init_bufmgr_config(tp); - features |= NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_HW_VLAN_CTAG_RX; - /* 5700 B0 chips do not support checksumming correctly due * to hardware bugs. */ @@ -17519,7 +17517,8 @@ features |= NETIF_F_TSO_ECN; } - dev->features |= features; + dev->features |= features | NETIF_F_HW_VLAN_CTAG_TX | + NETIF_F_HW_VLAN_CTAG_RX; dev->vlan_features |= features; /* --- linux-3.13.0.orig/drivers/net/ethernet/broadcom/tg3.h +++ linux-3.13.0/drivers/net/ethernet/broadcom/tg3.h @@ -2601,7 +2601,11 @@ #define RXD_ERR_TOO_SMALL 0x00400000 #define RXD_ERR_NO_RESOURCES 0x00800000 #define RXD_ERR_HUGE_FRAME 0x01000000 -#define RXD_ERR_MASK 0xffff0000 + +#define RXD_ERR_MASK (RXD_ERR_BAD_CRC | RXD_ERR_COLLISION | \ + RXD_ERR_LINK_LOST | RXD_ERR_PHY_DECODE | \ + RXD_ERR_MAC_ABRT | RXD_ERR_TOO_SMALL | \ + RXD_ERR_NO_RESOURCES | RXD_ERR_HUGE_FRAME) u32 reserved; u32 opaque; --- linux-3.13.0.orig/drivers/net/ethernet/chelsio/cxgb4/cxgb4.h +++ linux-3.13.0/drivers/net/ethernet/chelsio/cxgb4/cxgb4.h @@ -496,6 +496,7 @@ spinlock_t db_lock; int db_disabled; unsigned short db_pidx; + unsigned short db_pidx_inc; u64 udb; }; --- linux-3.13.0.orig/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c +++ linux-3.13.0/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c @@ -3563,14 +3563,25 @@ static void disable_txq_db(struct sge_txq *q) { - spin_lock_irq(&q->db_lock); + unsigned long flags; + + spin_lock_irqsave(&q->db_lock, flags); q->db_disabled = 1; - spin_unlock_irq(&q->db_lock); + spin_unlock_irqrestore(&q->db_lock, flags); } -static void enable_txq_db(struct sge_txq *q) +static void enable_txq_db(struct adapter *adap, struct sge_txq *q) { spin_lock_irq(&q->db_lock); + if (q->db_pidx_inc) { + /* Make sure that all writes to the TX descriptors + * are committed before we tell HW about them. + */ + wmb(); + t4_write_reg(adap, MYPF_REG(SGE_PF_KDOORBELL), + QID(q->cntxt_id) | PIDX(q->db_pidx_inc)); + q->db_pidx_inc = 0; + } q->db_disabled = 0; spin_unlock_irq(&q->db_lock); } @@ -3592,11 +3603,32 @@ int i; for_each_ethrxq(&adap->sge, i) - enable_txq_db(&adap->sge.ethtxq[i].q); + enable_txq_db(adap, &adap->sge.ethtxq[i].q); for_each_ofldrxq(&adap->sge, i) - enable_txq_db(&adap->sge.ofldtxq[i].q); + enable_txq_db(adap, &adap->sge.ofldtxq[i].q); for_each_port(adap, i) - enable_txq_db(&adap->sge.ctrlq[i].q); + enable_txq_db(adap, &adap->sge.ctrlq[i].q); +} + +static void notify_rdma_uld(struct adapter *adap, enum cxgb4_control cmd) +{ + if (adap->uld_handle[CXGB4_ULD_RDMA]) + ulds[CXGB4_ULD_RDMA].control(adap->uld_handle[CXGB4_ULD_RDMA], + cmd); +} + +static void process_db_full(struct work_struct *work) +{ + struct adapter *adap; + + adap = container_of(work, struct adapter, db_full_task); + + drain_db_fifo(adap, dbfifo_drain_delay); + enable_dbs(adap); + notify_rdma_uld(adap, CXGB4_CONTROL_DB_EMPTY); + t4_set_reg_field(adap, SGE_INT_ENABLE3, + DBFIFO_HP_INT | DBFIFO_LP_INT, + DBFIFO_HP_INT | DBFIFO_LP_INT); } static void sync_txq_pidx(struct adapter *adap, struct sge_txq *q) @@ -3604,7 +3636,7 @@ u16 hw_pidx, hw_cidx; int ret; - spin_lock_bh(&q->db_lock); + spin_lock_irq(&q->db_lock); ret = read_eq_indices(adap, (u16)q->cntxt_id, &hw_pidx, &hw_cidx); if (ret) goto out; @@ -3621,7 +3653,8 @@ } out: q->db_disabled = 0; - spin_unlock_bh(&q->db_lock); + q->db_pidx_inc = 0; + spin_unlock_irq(&q->db_lock); if (ret) CH_WARN(adap, "DB drop recovery failed.\n"); } @@ -3637,29 +3670,6 @@ sync_txq_pidx(adap, &adap->sge.ctrlq[i].q); } -static void notify_rdma_uld(struct adapter *adap, enum cxgb4_control cmd) -{ - mutex_lock(&uld_mutex); - if (adap->uld_handle[CXGB4_ULD_RDMA]) - ulds[CXGB4_ULD_RDMA].control(adap->uld_handle[CXGB4_ULD_RDMA], - cmd); - mutex_unlock(&uld_mutex); -} - -static void process_db_full(struct work_struct *work) -{ - struct adapter *adap; - - adap = container_of(work, struct adapter, db_full_task); - - notify_rdma_uld(adap, CXGB4_CONTROL_DB_FULL); - drain_db_fifo(adap, dbfifo_drain_delay); - t4_set_reg_field(adap, SGE_INT_ENABLE3, - DBFIFO_HP_INT | DBFIFO_LP_INT, - DBFIFO_HP_INT | DBFIFO_LP_INT); - notify_rdma_uld(adap, CXGB4_CONTROL_DB_EMPTY); -} - static void process_db_drop(struct work_struct *work) { struct adapter *adap; @@ -3667,11 +3677,13 @@ adap = container_of(work, struct adapter, db_drop_task); if (is_t4(adap->params.chip)) { - disable_dbs(adap); + drain_db_fifo(adap, dbfifo_drain_delay); notify_rdma_uld(adap, CXGB4_CONTROL_DB_DROP); - drain_db_fifo(adap, 1); + drain_db_fifo(adap, dbfifo_drain_delay); recover_all_queues(adap); + drain_db_fifo(adap, dbfifo_drain_delay); enable_dbs(adap); + notify_rdma_uld(adap, CXGB4_CONTROL_DB_EMPTY); } else { u32 dropped_db = t4_read_reg(adap, 0x010ac); u16 qid = (dropped_db >> 15) & 0x1ffff; @@ -3712,6 +3724,8 @@ void t4_db_full(struct adapter *adap) { if (is_t4(adap->params.chip)) { + disable_dbs(adap); + notify_rdma_uld(adap, CXGB4_CONTROL_DB_FULL); t4_set_reg_field(adap, SGE_INT_ENABLE3, DBFIFO_HP_INT | DBFIFO_LP_INT, 0); queue_work(workq, &adap->db_full_task); @@ -3720,8 +3734,11 @@ void t4_db_dropped(struct adapter *adap) { - if (is_t4(adap->params.chip)) - queue_work(workq, &adap->db_drop_task); + if (is_t4(adap->params.chip)) { + disable_dbs(adap); + notify_rdma_uld(adap, CXGB4_CONTROL_DB_FULL); + } + queue_work(workq, &adap->db_drop_task); } static void uld_attach(struct adapter *adap, unsigned int uld) --- linux-3.13.0.orig/drivers/net/ethernet/chelsio/cxgb4/sge.c +++ linux-3.13.0/drivers/net/ethernet/chelsio/cxgb4/sge.c @@ -843,9 +843,10 @@ static inline void ring_tx_db(struct adapter *adap, struct sge_txq *q, int n) { unsigned int *wr, index; + unsigned long flags; wmb(); /* write descriptors before telling HW */ - spin_lock(&q->db_lock); + spin_lock_irqsave(&q->db_lock, flags); if (!q->db_disabled) { if (is_t4(adap->params.chip)) { t4_write_reg(adap, MYPF_REG(SGE_PF_KDOORBELL), @@ -861,9 +862,10 @@ writel(n, adap->bar2 + q->udb + 8); wmb(); } - } + } else + q->db_pidx_inc += n; q->db_pidx = q->pidx; - spin_unlock(&q->db_lock); + spin_unlock_irqrestore(&q->db_lock, flags); } /** --- linux-3.13.0.orig/drivers/net/ethernet/chelsio/cxgb4/t4_msg.h +++ linux-3.13.0/drivers/net/ethernet/chelsio/cxgb4/t4_msg.h @@ -116,6 +116,7 @@ CPL_ERR_KEEPALIVE_TIMEDOUT = 34, CPL_ERR_RTX_NEG_ADVICE = 35, CPL_ERR_PERSIST_NEG_ADVICE = 36, + CPL_ERR_KEEPALV_NEG_ADVICE = 37, CPL_ERR_ABORT_FAILED = 42, CPL_ERR_IWARP_FLM = 50, }; --- linux-3.13.0.orig/drivers/net/ethernet/emulex/benet/be.h +++ linux-3.13.0/drivers/net/ethernet/emulex/benet/be.h @@ -34,7 +34,7 @@ #include "be_hw.h" #include "be_roce.h" -#define DRV_VER "4.9.224.0u" +#define DRV_VER "10.0.600.0u" #define DRV_NAME "be2net" #define BE_NAME "Emulex BladeEngine2" #define BE3_NAME "Emulex BladeEngine3" @@ -42,7 +42,7 @@ #define OC_NAME_BE OC_NAME "(be3)" #define OC_NAME_LANCER OC_NAME "(Lancer)" #define OC_NAME_SH OC_NAME "(Skyhawk)" -#define DRV_DESC "Emulex OneConnect 10Gbps NIC Driver" +#define DRV_DESC "Emulex OneConnect NIC Driver" #define BE_VENDOR_ID 0x19a2 #define EMULEX_VENDOR_ID 0x10df @@ -283,7 +283,6 @@ u32 rss_hash; u16 vlan_tag; u16 pkt_size; - u16 rxq_idx; u16 port; u8 vlanf; u8 num_rcvd; @@ -493,7 +492,7 @@ u16 pvid; struct phy_info phy; u8 wol_cap; - bool wol; + bool wol_en; u32 uc_macs; /* Count of secondary UC MAC programmed */ u16 asic_rev; u16 qnq_vid; --- linux-3.13.0.orig/drivers/net/ethernet/emulex/benet/be_cmds.c +++ linux-3.13.0/drivers/net/ethernet/emulex/benet/be_cmds.c @@ -1101,23 +1101,22 @@ OPCODE_COMMON_MCC_CREATE_EXT, sizeof(*req), wrb, NULL); req->num_pages = cpu_to_le16(PAGES_4K_SPANNED(q_mem->va, q_mem->size)); - if (lancer_chip(adapter)) { - req->hdr.version = 1; - req->cq_id = cpu_to_le16(cq->id); - - AMAP_SET_BITS(struct amap_mcc_context_lancer, ring_size, ctxt, - be_encoded_q_len(mccq->len)); - AMAP_SET_BITS(struct amap_mcc_context_lancer, valid, ctxt, 1); - AMAP_SET_BITS(struct amap_mcc_context_lancer, async_cq_id, - ctxt, cq->id); - AMAP_SET_BITS(struct amap_mcc_context_lancer, async_cq_valid, - ctxt, 1); - - } else { + if (BEx_chip(adapter)) { AMAP_SET_BITS(struct amap_mcc_context_be, valid, ctxt, 1); AMAP_SET_BITS(struct amap_mcc_context_be, ring_size, ctxt, be_encoded_q_len(mccq->len)); AMAP_SET_BITS(struct amap_mcc_context_be, cq_id, ctxt, cq->id); + } else { + req->hdr.version = 1; + req->cq_id = cpu_to_le16(cq->id); + + AMAP_SET_BITS(struct amap_mcc_context_v1, ring_size, ctxt, + be_encoded_q_len(mccq->len)); + AMAP_SET_BITS(struct amap_mcc_context_v1, valid, ctxt, 1); + AMAP_SET_BITS(struct amap_mcc_context_v1, async_cq_id, + ctxt, cq->id); + AMAP_SET_BITS(struct amap_mcc_context_v1, async_cq_valid, + ctxt, 1); } /* Subscribe to Link State and Group 5 Events(bits 1 and 5 set) */ @@ -1187,7 +1186,7 @@ int status; status = be_cmd_mccq_ext_create(adapter, mccq, cq); - if (status && !lancer_chip(adapter)) { + if (status && BEx_chip(adapter)) { dev_warn(&adapter->pdev->dev, "Upgrade to F/W ver 2.102.235.0 " "or newer to avoid conflicting priorities between NIC " "and FCoE traffic"); @@ -2692,6 +2691,13 @@ struct be_cmd_resp_get_fn_privileges *resp = embedded_payload(wrb); *privilege = le32_to_cpu(resp->privilege_mask); + + /* In UMC mode FW does not return right privileges. + * Override with correct privilege equivalent to PF. + */ + if (BEx_chip(adapter) && be_is_mc(adapter) && + be_physfn(adapter)) + *privilege = MAX_PRIVILEGES; } err: @@ -2736,7 +2742,8 @@ * If pmac_id is returned, pmac_id_valid is returned as true */ int be_cmd_get_mac_from_list(struct be_adapter *adapter, u8 *mac, - bool *pmac_id_valid, u32 *pmac_id, u8 domain) + bool *pmac_id_valid, u32 *pmac_id, u32 if_handle, + u8 domain) { struct be_mcc_wrb *wrb; struct be_cmd_req_get_mac_list *req; @@ -2774,7 +2781,7 @@ req->mac_type = MAC_ADDRESS_TYPE_NETWORK; if (*pmac_id_valid) { req->mac_id = cpu_to_le32(*pmac_id); - req->iface_id = cpu_to_le16(adapter->if_handle); + req->iface_id = cpu_to_le16(if_handle); req->perm_override = 0; } else { req->perm_override = 1; @@ -2827,17 +2834,21 @@ return status; } -int be_cmd_get_active_mac(struct be_adapter *adapter, u32 curr_pmac_id, u8 *mac) +int be_cmd_get_active_mac(struct be_adapter *adapter, u32 curr_pmac_id, u8 *mac, + u32 if_handle, bool active, u32 domain) { - bool active = true; + if (!active) + be_cmd_get_mac_from_list(adapter, mac, &active, &curr_pmac_id, + if_handle, domain); if (BEx_chip(adapter)) return be_cmd_mac_addr_query(adapter, mac, false, - adapter->if_handle, curr_pmac_id); + if_handle, curr_pmac_id); else /* Fetch the MAC address using pmac_id */ return be_cmd_get_mac_from_list(adapter, mac, &active, - &curr_pmac_id, 0); + &curr_pmac_id, + if_handle, domain); } int be_cmd_get_perm_mac(struct be_adapter *adapter, u8 *mac) @@ -2856,7 +2867,7 @@ adapter->if_handle, 0); } else { status = be_cmd_get_mac_from_list(adapter, mac, &pmac_valid, - NULL, 0); + NULL, adapter->if_handle, 0); } return status; @@ -2917,7 +2928,8 @@ int status; status = be_cmd_get_mac_from_list(adapter, old_mac, &active_mac, - &pmac_id, dom); + &pmac_id, if_id, dom); + if (!status && active_mac) be_cmd_pmac_del(adapter, if_id, pmac_id, dom); @@ -2997,7 +3009,7 @@ ctxt, intf_id); AMAP_SET_BITS(struct amap_get_hsw_req_context, pvid_valid, ctxt, 1); - if (!BEx_chip(adapter)) { + if (!BEx_chip(adapter) && mode) { AMAP_SET_BITS(struct amap_get_hsw_req_context, interface_id, ctxt, adapter->hba_port_num); AMAP_SET_BITS(struct amap_get_hsw_req_context, pport, ctxt, 1); @@ -3028,14 +3040,16 @@ { struct be_mcc_wrb *wrb; struct be_cmd_req_acpi_wol_magic_config_v1 *req; - int status; - int payload_len = sizeof(*req); + int status = 0; struct be_dma_mem cmd; if (!be_cmd_allowed(adapter, OPCODE_ETH_ACPI_WOL_MAGIC_CONFIG, CMD_SUBSYSTEM_ETH)) return -EPERM; + if (be_is_wol_excluded(adapter)) + return status; + if (mutex_lock_interruptible(&adapter->mbox_lock)) return -1; @@ -3060,7 +3074,7 @@ be_wrb_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_ETH, OPCODE_ETH_ACPI_WOL_MAGIC_CONFIG, - payload_len, wrb, &cmd); + sizeof(*req), wrb, &cmd); req->hdr.version = 1; req->query_options = BE_GET_WOL_CAP; @@ -3070,13 +3084,9 @@ struct be_cmd_resp_acpi_wol_magic_config_v1 *resp; resp = (struct be_cmd_resp_acpi_wol_magic_config_v1 *) cmd.va; - /* the command could succeed misleadingly on old f/w - * which is not aware of the V1 version. fake an error. */ - if (resp->hdr.response_length < payload_len) { - status = -1; - goto err; - } adapter->wol_cap = resp->wol_settings; + if (adapter->wol_cap & BE_WOL_CAP) + adapter->wol_en = true; } err: mutex_unlock(&adapter->mbox_lock); @@ -3085,6 +3095,76 @@ return status; } + +int be_cmd_set_fw_log_level(struct be_adapter *adapter, u32 level) +{ + struct be_dma_mem extfat_cmd; + struct be_fat_conf_params *cfgs; + int status; + int i, j; + + memset(&extfat_cmd, 0, sizeof(struct be_dma_mem)); + extfat_cmd.size = sizeof(struct be_cmd_resp_get_ext_fat_caps); + extfat_cmd.va = pci_alloc_consistent(adapter->pdev, extfat_cmd.size, + &extfat_cmd.dma); + if (!extfat_cmd.va) + return -ENOMEM; + + status = be_cmd_get_ext_fat_capabilites(adapter, &extfat_cmd); + if (status) + goto err; + + cfgs = (struct be_fat_conf_params *) + (extfat_cmd.va + sizeof(struct be_cmd_resp_hdr)); + for (i = 0; i < le32_to_cpu(cfgs->num_modules); i++) { + u32 num_modes = le32_to_cpu(cfgs->module[i].num_modes); + for (j = 0; j < num_modes; j++) { + if (cfgs->module[i].trace_lvl[j].mode == MODE_UART) + cfgs->module[i].trace_lvl[j].dbg_lvl = + cpu_to_le32(level); + } + } + + status = be_cmd_set_ext_fat_capabilites(adapter, &extfat_cmd, cfgs); +err: + pci_free_consistent(adapter->pdev, extfat_cmd.size, extfat_cmd.va, + extfat_cmd.dma); + return status; +} + +int be_cmd_get_fw_log_level(struct be_adapter *adapter) +{ + struct be_dma_mem extfat_cmd; + struct be_fat_conf_params *cfgs; + int status, j; + int level = 0; + + memset(&extfat_cmd, 0, sizeof(struct be_dma_mem)); + extfat_cmd.size = sizeof(struct be_cmd_resp_get_ext_fat_caps); + extfat_cmd.va = pci_alloc_consistent(adapter->pdev, extfat_cmd.size, + &extfat_cmd.dma); + + if (!extfat_cmd.va) { + dev_err(&adapter->pdev->dev, "%s: Memory allocation failure\n", + __func__); + goto err; + } + + status = be_cmd_get_ext_fat_capabilites(adapter, &extfat_cmd); + if (!status) { + cfgs = (struct be_fat_conf_params *)(extfat_cmd.va + + sizeof(struct be_cmd_resp_hdr)); + for (j = 0; j < le32_to_cpu(cfgs->module[0].num_modes); j++) { + if (cfgs->module[0].trace_lvl[j].mode == MODE_UART) + level = cfgs->module[0].trace_lvl[j].dbg_lvl; + } + } + pci_free_consistent(adapter->pdev, extfat_cmd.size, extfat_cmd.va, + extfat_cmd.dma); +err: + return level; +} + int be_cmd_get_ext_fat_capabilites(struct be_adapter *adapter, struct be_dma_mem *cmd) { @@ -3608,6 +3688,40 @@ mutex_unlock(&adapter->mbox_lock); return status; } + +/* Uses MBOX */ +int be_cmd_get_active_profile(struct be_adapter *adapter, u16 *profile_id) +{ + struct be_cmd_req_get_active_profile *req; + struct be_mcc_wrb *wrb; + int status; + + if (mutex_lock_interruptible(&adapter->mbox_lock)) + return -1; + + wrb = wrb_from_mbox(adapter); + if (!wrb) { + status = -EBUSY; + goto err; + } + + req = embedded_payload(wrb); + + be_wrb_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON, + OPCODE_COMMON_GET_ACTIVE_PROFILE, sizeof(*req), + wrb, NULL); + + status = be_mbox_notify_wait(adapter); + if (!status) { + struct be_cmd_resp_get_active_profile *resp = + embedded_payload(wrb); + *profile_id = le16_to_cpu(resp->active_profile_id); + } + +err: + mutex_unlock(&adapter->mbox_lock); + return status; +} int be_roce_mcc_cmd(void *netdev_handle, void *wrb_payload, int wrb_payload_size, u16 *cmd_status, u16 *ext_status) --- linux-3.13.0.orig/drivers/net/ethernet/emulex/benet/be_cmds.h +++ linux-3.13.0/drivers/net/ethernet/emulex/benet/be_cmds.h @@ -216,6 +216,7 @@ #define OPCODE_COMMON_GET_FUNC_CONFIG 160 #define OPCODE_COMMON_GET_PROFILE_CONFIG 164 #define OPCODE_COMMON_SET_PROFILE_CONFIG 165 +#define OPCODE_COMMON_GET_ACTIVE_PROFILE 167 #define OPCODE_COMMON_SET_HSW_CONFIG 153 #define OPCODE_COMMON_GET_FN_PRIVILEGES 170 #define OPCODE_COMMON_READ_OBJECT 171 @@ -452,7 +453,7 @@ u8 rsvd2[32]; } __packed; -struct amap_mcc_context_lancer { +struct amap_mcc_context_v1 { u8 async_cq_id[16]; u8 ring_size[4]; u8 rsvd0[12]; @@ -476,7 +477,7 @@ u16 num_pages; u16 cq_id; u32 async_event_bitmap[1]; - u8 context[sizeof(struct amap_mcc_context_be) / 8]; + u8 context[sizeof(struct amap_mcc_context_v1) / 8]; struct phys_addr pages[8]; } __packed; @@ -1097,6 +1098,14 @@ u32 function_caps; }; +/* Is BE in a multi-channel mode */ +static inline bool be_is_mc(struct be_adapter *adapter) +{ + return adapter->function_mode & FLEX10_MODE || + adapter->function_mode & VNIC_MODE || + adapter->function_mode & UMC_ENABLED; +} + /******************** RSS Config ****************************************/ /* RSS type Input parameters used to compute RX hash * RSS_ENABLE_IPV4 SRC IPv4, DST IPv4 @@ -1917,6 +1926,17 @@ struct be_cmd_resp_hdr hdr; }; +struct be_cmd_req_get_active_profile { + struct be_cmd_req_hdr hdr; + u32 rsvd; +} __packed; + +struct be_cmd_resp_get_active_profile { + struct be_cmd_resp_hdr hdr; + u16 active_profile_id; + u16 next_profile_id; +} __packed; + struct be_cmd_enable_disable_vf { struct be_cmd_req_hdr hdr; u8 enable; @@ -2037,8 +2057,10 @@ int be_cmd_set_fn_privileges(struct be_adapter *adapter, u32 privileges, u32 vf_num); int be_cmd_get_mac_from_list(struct be_adapter *adapter, u8 *mac, - bool *pmac_id_active, u32 *pmac_id, u8 domain); -int be_cmd_get_active_mac(struct be_adapter *adapter, u32 pmac_id, u8 *mac); + bool *pmac_id_active, u32 *pmac_id, + u32 if_handle, u8 domain); +int be_cmd_get_active_mac(struct be_adapter *adapter, u32 pmac_id, u8 *mac, + u32 if_handle, bool active, u32 domain); int be_cmd_get_perm_mac(struct be_adapter *adapter, u8 *mac); int be_cmd_set_mac_list(struct be_adapter *adapter, u8 *mac_array, u8 mac_count, u32 domain); @@ -2048,6 +2070,8 @@ int be_cmd_get_hsw_config(struct be_adapter *adapter, u16 *pvid, u32 domain, u16 intf_id, u8 *mode); int be_cmd_get_acpi_wol_cap(struct be_adapter *adapter); +int be_cmd_set_fw_log_level(struct be_adapter *adapter, u32 level); +int be_cmd_get_fw_log_level(struct be_adapter *adapter); int be_cmd_get_ext_fat_capabilites(struct be_adapter *adapter, struct be_dma_mem *cmd); int be_cmd_set_ext_fat_capabilites(struct be_adapter *adapter, @@ -2063,6 +2087,7 @@ int be_cmd_get_profile_config(struct be_adapter *adapter, struct be_resources *res, u8 domain); int be_cmd_set_profile_config(struct be_adapter *adapter, u32 bps, u8 domain); +int be_cmd_get_active_profile(struct be_adapter *adapter, u16 *profile); int be_cmd_get_if_id(struct be_adapter *adapter, struct be_vf_cfg *vf_cfg, int vf_num); int be_cmd_enable_vf(struct be_adapter *adapter, u8 domain); --- linux-3.13.0.orig/drivers/net/ethernet/emulex/benet/be_ethtool.c +++ linux-3.13.0/drivers/net/ethernet/emulex/benet/be_ethtool.c @@ -713,12 +713,13 @@ { struct be_adapter *adapter = netdev_priv(netdev); - if (be_is_wol_supported(adapter)) { + if (adapter->wol_cap & BE_WOL_CAP) { wol->supported |= WAKE_MAGIC; - if (adapter->wol) + if (adapter->wol_en) wol->wolopts |= WAKE_MAGIC; - } else + } else { wol->wolopts = 0; + } memset(&wol->sopass, 0, sizeof(wol->sopass)); } @@ -730,15 +731,15 @@ if (wol->wolopts & ~WAKE_MAGIC) return -EOPNOTSUPP; - if (!be_is_wol_supported(adapter)) { + if (!(adapter->wol_cap & BE_WOL_CAP)) { dev_warn(&adapter->pdev->dev, "WOL not supported\n"); return -EOPNOTSUPP; } if (wol->wolopts & WAKE_MAGIC) - adapter->wol = true; + adapter->wol_en = true; else - adapter->wol = false; + adapter->wol_en = false; return 0; } @@ -904,73 +905,21 @@ { struct be_adapter *adapter = netdev_priv(netdev); - if (lancer_chip(adapter)) { - dev_err(&adapter->pdev->dev, "Operation not supported\n"); - return -EOPNOTSUPP; - } - return adapter->msg_enable; } -static void be_set_fw_log_level(struct be_adapter *adapter, u32 level) -{ - struct be_dma_mem extfat_cmd; - struct be_fat_conf_params *cfgs; - int status; - int i, j; - - memset(&extfat_cmd, 0, sizeof(struct be_dma_mem)); - extfat_cmd.size = sizeof(struct be_cmd_resp_get_ext_fat_caps); - extfat_cmd.va = pci_alloc_consistent(adapter->pdev, extfat_cmd.size, - &extfat_cmd.dma); - if (!extfat_cmd.va) { - dev_err(&adapter->pdev->dev, "%s: Memory allocation failure\n", - __func__); - goto err; - } - status = be_cmd_get_ext_fat_capabilites(adapter, &extfat_cmd); - if (!status) { - cfgs = (struct be_fat_conf_params *)(extfat_cmd.va + - sizeof(struct be_cmd_resp_hdr)); - for (i = 0; i < le32_to_cpu(cfgs->num_modules); i++) { - u32 num_modes = le32_to_cpu(cfgs->module[i].num_modes); - for (j = 0; j < num_modes; j++) { - if (cfgs->module[i].trace_lvl[j].mode == - MODE_UART) - cfgs->module[i].trace_lvl[j].dbg_lvl = - cpu_to_le32(level); - } - } - status = be_cmd_set_ext_fat_capabilites(adapter, &extfat_cmd, - cfgs); - if (status) - dev_err(&adapter->pdev->dev, - "Message level set failed\n"); - } else { - dev_err(&adapter->pdev->dev, "Message level get failed\n"); - } - - pci_free_consistent(adapter->pdev, extfat_cmd.size, extfat_cmd.va, - extfat_cmd.dma); -err: - return; -} - static void be_set_msg_level(struct net_device *netdev, u32 level) { struct be_adapter *adapter = netdev_priv(netdev); - if (lancer_chip(adapter)) { - dev_err(&adapter->pdev->dev, "Operation not supported\n"); - return; - } - if (adapter->msg_enable == level) return; if ((level & NETIF_MSG_HW) != (adapter->msg_enable & NETIF_MSG_HW)) - be_set_fw_log_level(adapter, level & NETIF_MSG_HW ? - FW_LOG_LEVEL_DEFAULT : FW_LOG_LEVEL_FATAL); + if (BEx_chip(adapter)) + be_cmd_set_fw_log_level(adapter, level & NETIF_MSG_HW ? + FW_LOG_LEVEL_DEFAULT : + FW_LOG_LEVEL_FATAL); adapter->msg_enable = level; return; --- linux-3.13.0.orig/drivers/net/ethernet/emulex/benet/be_main.c +++ linux-3.13.0/drivers/net/ethernet/emulex/benet/be_main.c @@ -121,12 +121,6 @@ "Unknown" }; -/* Is BE in a multi-channel mode */ -static inline bool be_is_mc(struct be_adapter *adapter) { - return (adapter->function_mode & FLEX10_MODE || - adapter->function_mode & VNIC_MODE || - adapter->function_mode & UMC_ENABLED); -} static void be_queue_free(struct be_adapter *adapter, struct be_queue_info *q) { @@ -258,6 +252,12 @@ if (!is_valid_ether_addr(addr->sa_data)) return -EADDRNOTAVAIL; + /* Proceed further only if, User provided MAC is different + * from active MAC + */ + if (ether_addr_equal(addr->sa_data, netdev->dev_addr)) + return 0; + /* The PMAC_ADD cmd may fail if the VF doesn't have FILTMGMT * privilege or if PF did not provision the new MAC address. * On BE3, this cmd will always fail if the VF doesn't have the @@ -280,7 +280,8 @@ /* Decide if the new MAC is successfully activated only after * querying the FW */ - status = be_cmd_get_active_mac(adapter, curr_pmac_id, mac); + status = be_cmd_get_active_mac(adapter, curr_pmac_id, mac, + adapter->if_handle, true, 0); if (status) goto err; @@ -1096,8 +1097,6 @@ dev_info(&adapter->pdev->dev, "Disabling VLAN Promiscuous mode.\n"); adapter->flags &= ~BE_FLAGS_VLAN_PROMISC; - dev_info(&adapter->pdev->dev, - "Re-Enabling HW VLAN filtering\n"); } } } @@ -1105,12 +1104,12 @@ return status; set_vlan_promisc: - dev_warn(&adapter->pdev->dev, "Exhausted VLAN HW filters.\n"); + if (adapter->flags & BE_FLAGS_VLAN_PROMISC) + return 0; status = be_cmd_rx_filter(adapter, BE_FLAGS_VLAN_PROMISC, ON); if (!status) { dev_info(&adapter->pdev->dev, "Enable VLAN Promiscuous mode\n"); - dev_info(&adapter->pdev->dev, "Disabling HW VLAN filtering\n"); adapter->flags |= BE_FLAGS_VLAN_PROMISC; } else dev_err(&adapter->pdev->dev, @@ -1123,19 +1122,18 @@ struct be_adapter *adapter = netdev_priv(netdev); int status = 0; - /* Packets with VID 0 are always received by Lancer by default */ if (lancer_chip(adapter) && vid == 0) goto ret; adapter->vlan_tag[vid] = 1; - if (adapter->vlans_added <= (be_max_vlans(adapter) + 1)) - status = be_vid_config(adapter); + adapter->vlans_added++; - if (!status) - adapter->vlans_added++; - else + status = be_vid_config(adapter); + if (status) { + adapter->vlans_added--; adapter->vlan_tag[vid] = 0; + } ret: return status; } @@ -1150,9 +1148,7 @@ goto ret; adapter->vlan_tag[vid] = 0; - if (adapter->vlans_added <= be_max_vlans(adapter)) - status = be_vid_config(adapter); - + status = be_vid_config(adapter); if (!status) adapter->vlans_added--; else @@ -1442,12 +1438,12 @@ (rxcp->ip_csum || rxcp->ipv6); } -static struct be_rx_page_info *get_rx_page_info(struct be_rx_obj *rxo, - u16 frag_idx) +static struct be_rx_page_info *get_rx_page_info(struct be_rx_obj *rxo) { struct be_adapter *adapter = rxo->adapter; struct be_rx_page_info *rx_page_info; struct be_queue_info *rxq = &rxo->q; + u16 frag_idx = rxq->tail; rx_page_info = &rxo->page_info_tbl[frag_idx]; BUG_ON(!rx_page_info->page); @@ -1459,6 +1455,7 @@ rx_page_info->last_page_user = false; } + queue_tail_inc(rxq); atomic_dec(&rxq->used); return rx_page_info; } @@ -1467,15 +1464,13 @@ static void be_rx_compl_discard(struct be_rx_obj *rxo, struct be_rx_compl_info *rxcp) { - struct be_queue_info *rxq = &rxo->q; struct be_rx_page_info *page_info; u16 i, num_rcvd = rxcp->num_rcvd; for (i = 0; i < num_rcvd; i++) { - page_info = get_rx_page_info(rxo, rxcp->rxq_idx); + page_info = get_rx_page_info(rxo); put_page(page_info->page); memset(page_info, 0, sizeof(*page_info)); - index_inc(&rxcp->rxq_idx, rxq->len); } } @@ -1486,13 +1481,12 @@ static void skb_fill_rx_data(struct be_rx_obj *rxo, struct sk_buff *skb, struct be_rx_compl_info *rxcp) { - struct be_queue_info *rxq = &rxo->q; struct be_rx_page_info *page_info; u16 i, j; u16 hdr_len, curr_frag_len, remaining; u8 *start; - page_info = get_rx_page_info(rxo, rxcp->rxq_idx); + page_info = get_rx_page_info(rxo); start = page_address(page_info->page) + page_info->page_offset; prefetch(start); @@ -1526,10 +1520,9 @@ } /* More frags present for this completion */ - index_inc(&rxcp->rxq_idx, rxq->len); remaining = rxcp->pkt_size - curr_frag_len; for (i = 1, j = 0; i < rxcp->num_rcvd; i++) { - page_info = get_rx_page_info(rxo, rxcp->rxq_idx); + page_info = get_rx_page_info(rxo); curr_frag_len = min(remaining, rx_frag_size); /* Coalesce all frags from the same physical page in one slot */ @@ -1550,7 +1543,6 @@ skb->data_len += curr_frag_len; skb->truesize += rx_frag_size; remaining -= curr_frag_len; - index_inc(&rxcp->rxq_idx, rxq->len); page_info->page = NULL; } BUG_ON(j > MAX_SKB_FRAGS); @@ -1598,7 +1590,6 @@ struct be_adapter *adapter = rxo->adapter; struct be_rx_page_info *page_info; struct sk_buff *skb = NULL; - struct be_queue_info *rxq = &rxo->q; u16 remaining, curr_frag_len; u16 i, j; @@ -1610,7 +1601,7 @@ remaining = rxcp->pkt_size; for (i = 0, j = -1; i < rxcp->num_rcvd; i++) { - page_info = get_rx_page_info(rxo, rxcp->rxq_idx); + page_info = get_rx_page_info(rxo); curr_frag_len = min(remaining, rx_frag_size); @@ -1628,7 +1619,6 @@ skb_frag_size_add(&skb_shinfo(skb)->frags[j], curr_frag_len); skb->truesize += rx_frag_size; remaining -= curr_frag_len; - index_inc(&rxcp->rxq_idx, rxq->len); memset(page_info, 0, sizeof(*page_info)); } BUG_ON(j > MAX_SKB_FRAGS); @@ -1663,8 +1653,6 @@ AMAP_GET_BITS(struct amap_eth_rx_compl_v1, l4_cksm, compl); rxcp->ipv6 = AMAP_GET_BITS(struct amap_eth_rx_compl_v1, ip_version, compl); - rxcp->rxq_idx = - AMAP_GET_BITS(struct amap_eth_rx_compl_v1, fragndx, compl); rxcp->num_rcvd = AMAP_GET_BITS(struct amap_eth_rx_compl_v1, numfrags, compl); rxcp->pkt_type = @@ -1695,8 +1683,6 @@ AMAP_GET_BITS(struct amap_eth_rx_compl_v0, l4_cksm, compl); rxcp->ipv6 = AMAP_GET_BITS(struct amap_eth_rx_compl_v0, ip_version, compl); - rxcp->rxq_idx = - AMAP_GET_BITS(struct amap_eth_rx_compl_v0, fragndx, compl); rxcp->num_rcvd = AMAP_GET_BITS(struct amap_eth_rx_compl_v0, numfrags, compl); rxcp->pkt_type = @@ -1921,7 +1907,6 @@ struct be_rx_compl_info *rxcp; struct be_adapter *adapter = rxo->adapter; int flush_wait = 0; - u16 tail; /* Consume pending rx completions. * Wait for the flush completion (identified by zero num_rcvd) @@ -1954,9 +1939,8 @@ be_cq_notify(adapter, rx_cq->id, false, 0); /* Then free posted rx buffers that were not used */ - tail = (rxq->head + rxq->len - atomic_read(&rxq->used)) % rxq->len; - for (; atomic_read(&rxq->used) > 0; index_inc(&tail, rxq->len)) { - page_info = get_rx_page_info(rxo, tail); + while (atomic_read(&rxq->used) > 0) { + page_info = get_rx_page_info(rxo); put_page(page_info->page); memset(page_info, 0, sizeof(*page_info)); } @@ -2891,14 +2875,11 @@ int status, vf; u8 mac[ETH_ALEN]; struct be_vf_cfg *vf_cfg; - bool active = false; for_all_vfs(adapter, vf_cfg, vf) { - be_cmd_get_mac_from_list(adapter, mac, &active, - &vf_cfg->pmac_id, 0); - - status = be_cmd_mac_addr_query(adapter, mac, false, - vf_cfg->if_handle, 0); + status = be_cmd_get_active_mac(adapter, vf_cfg->pmac_id, + mac, vf_cfg->if_handle, + false, vf+1); if (status) return status; memcpy(vf_cfg->mac_addr, mac, ETH_ALEN); @@ -3240,6 +3221,7 @@ /* Routine to query per function resource limits */ static int be_get_config(struct be_adapter *adapter) { + u16 profile_id; int status; status = be_cmd_query_fw_cfg(adapter, &adapter->port_num, @@ -3249,6 +3231,13 @@ if (status) return status; + if (be_physfn(adapter)) { + status = be_cmd_get_active_profile(adapter, &profile_id); + if (!status) + dev_info(&adapter->pdev->dev, + "Using profile 0x%x\n", profile_id); + } + status = be_get_resources(adapter); if (status) return status; @@ -3403,11 +3392,6 @@ goto err; be_cmd_get_fn_privileges(adapter, &adapter->cmd_privileges, 0); - /* In UMC mode FW does not return right privileges. - * Override with correct privilege equivalent to PF. - */ - if (be_is_mc(adapter)) - adapter->cmd_privileges = MAX_PRIVILEGES; status = be_mac_setup(adapter); if (status) @@ -3426,6 +3410,8 @@ be_set_rx_mode(adapter->netdev); + be_cmd_get_acpi_wol_cap(adapter); + be_cmd_get_flow_control(adapter, &tx_fc, &rx_fc); if (rx_fc != adapter->rx_fc || tx_fc != adapter->tx_fc) @@ -4295,74 +4281,22 @@ free_netdev(adapter->netdev); } -bool be_is_wol_supported(struct be_adapter *adapter) -{ - return ((adapter->wol_cap & BE_WOL_CAP) && - !be_is_wol_excluded(adapter)) ? true : false; -} - -u32 be_get_fw_log_level(struct be_adapter *adapter) -{ - struct be_dma_mem extfat_cmd; - struct be_fat_conf_params *cfgs; - int status; - u32 level = 0; - int j; - - if (lancer_chip(adapter)) - return 0; - - memset(&extfat_cmd, 0, sizeof(struct be_dma_mem)); - extfat_cmd.size = sizeof(struct be_cmd_resp_get_ext_fat_caps); - extfat_cmd.va = pci_alloc_consistent(adapter->pdev, extfat_cmd.size, - &extfat_cmd.dma); - - if (!extfat_cmd.va) { - dev_err(&adapter->pdev->dev, "%s: Memory allocation failure\n", - __func__); - goto err; - } - - status = be_cmd_get_ext_fat_capabilites(adapter, &extfat_cmd); - if (!status) { - cfgs = (struct be_fat_conf_params *)(extfat_cmd.va + - sizeof(struct be_cmd_resp_hdr)); - for (j = 0; j < le32_to_cpu(cfgs->module[0].num_modes); j++) { - if (cfgs->module[0].trace_lvl[j].mode == MODE_UART) - level = cfgs->module[0].trace_lvl[j].dbg_lvl; - } - } - pci_free_consistent(adapter->pdev, extfat_cmd.size, extfat_cmd.va, - extfat_cmd.dma); -err: - return level; -} - static int be_get_initial_config(struct be_adapter *adapter) { - int status; - u32 level; + int status, level; status = be_cmd_get_cntl_attributes(adapter); if (status) return status; - status = be_cmd_get_acpi_wol_cap(adapter); - if (status) { - /* in case of a failure to get wol capabillities - * check the exclusion list to determine WOL capability */ - if (!be_is_wol_excluded(adapter)) - adapter->wol_cap |= BE_WOL_CAP; - } - - if (be_is_wol_supported(adapter)) - adapter->wol = true; - /* Must be a power of 2 or else MODULO will BUG_ON */ adapter->be_get_temp_freq = 64; - level = be_get_fw_log_level(adapter); - adapter->msg_enable = level <= FW_LOG_LEVEL_DEFAULT ? NETIF_MSG_HW : 0; + if (BEx_chip(adapter)) { + level = be_cmd_get_fw_log_level(adapter); + adapter->msg_enable = + level <= FW_LOG_LEVEL_DEFAULT ? NETIF_MSG_HW : 0; + } adapter->cfg_num_qs = netif_get_num_default_rss_queues(); return 0; @@ -4625,7 +4559,7 @@ struct be_adapter *adapter = pci_get_drvdata(pdev); struct net_device *netdev = adapter->netdev; - if (adapter->wol) + if (adapter->wol_en) be_setup_wol(adapter, true); be_intr_set(adapter, false); @@ -4681,7 +4615,7 @@ msecs_to_jiffies(1000)); netif_device_attach(netdev); - if (adapter->wol) + if (adapter->wol_en) be_setup_wol(adapter, false); return 0; --- linux-3.13.0.orig/drivers/net/ethernet/freescale/fec_main.c +++ linux-3.13.0/drivers/net/ethernet/freescale/fec_main.c @@ -528,13 +528,6 @@ /* Clear any outstanding interrupt. */ writel(0xffc00000, fep->hwp + FEC_IEVENT); - /* Setup multicast filter. */ - set_multicast_list(ndev); -#ifndef CONFIG_M5272 - writel(0, fep->hwp + FEC_HASH_TABLE_HIGH); - writel(0, fep->hwp + FEC_HASH_TABLE_LOW); -#endif - /* Set maximum receive buffer size. */ writel(PKT_MAXBLR_SIZE, fep->hwp + FEC_R_BUFF_SIZE); @@ -655,6 +648,13 @@ writel(rcntl, fep->hwp + FEC_R_CNTRL); + /* Setup multicast filter. */ + set_multicast_list(ndev); +#ifndef CONFIG_M5272 + writel(0, fep->hwp + FEC_HASH_TABLE_HIGH); + writel(0, fep->hwp + FEC_HASH_TABLE_LOW); +#endif + if (id_entry->driver_data & FEC_QUIRK_ENET_MAC) { /* enable ENET endian swap */ ecntl |= (1 << 8); --- linux-3.13.0.orig/drivers/net/ethernet/freescale/xgmac_mdio.c +++ linux-3.13.0/drivers/net/ethernet/freescale/xgmac_mdio.c @@ -32,6 +32,10 @@ __be32 mdio_addr; /* MDIO address */ } __packed; +/* Taken from memac_mdio.c */ +#define MDIO_STAT_ENC (1 << 6) +#define MDIO_STAT_HOLD_15_CLK (7 << 2) + #define MDIO_STAT_CLKDIV(x) (((x>>1) & 0xff) << 8) #define MDIO_STAT_BSY (1 << 0) #define MDIO_STAT_RD_ER (1 << 1) @@ -91,26 +95,39 @@ static int xgmac_mdio_write(struct mii_bus *bus, int phy_id, int regnum, u16 value) { struct tgec_mdio_controller __iomem *regs = bus->priv; - uint16_t dev_addr = regnum >> 16; + uint16_t dev_addr; + u32 mdio_ctl, mdio_stat; int ret; - /* Setup the MII Mgmt clock speed */ - out_be32(®s->mdio_stat, MDIO_STAT_CLKDIV(100)); + mdio_stat = in_be32(®s->mdio_stat); + if (regnum & MII_ADDR_C45) { + /* Clause 45 (ie 10G) */ + dev_addr = (regnum >> 16) & 0x1f; + mdio_stat |= MDIO_STAT_ENC | MDIO_STAT_HOLD_15_CLK; + } else { + /* Clause 22 (ie 1G) */ + dev_addr = regnum & 0x1f; + mdio_stat &= ~MDIO_STAT_ENC; + } + + out_be32(®s->mdio_stat, mdio_stat); ret = xgmac_wait_until_free(&bus->dev, regs); if (ret) return ret; /* Set the port and dev addr */ - out_be32(®s->mdio_ctl, - MDIO_CTL_PORT_ADDR(phy_id) | MDIO_CTL_DEV_ADDR(dev_addr)); + mdio_ctl = MDIO_CTL_PORT_ADDR(phy_id) | MDIO_CTL_DEV_ADDR(dev_addr); + out_be32(®s->mdio_ctl, mdio_ctl); /* Set the register address */ - out_be32(®s->mdio_addr, regnum & 0xffff); + if (regnum & MII_ADDR_C45) { + out_be32(®s->mdio_addr, regnum & 0xffff); - ret = xgmac_wait_until_free(&bus->dev, regs); - if (ret) - return ret; + ret = xgmac_wait_until_free(&bus->dev, regs); + if (ret) + return ret; + } /* Write the value to the register */ out_be32(®s->mdio_data, MDIO_DATA(value)); @@ -130,13 +147,22 @@ static int xgmac_mdio_read(struct mii_bus *bus, int phy_id, int regnum) { struct tgec_mdio_controller __iomem *regs = bus->priv; - uint16_t dev_addr = regnum >> 16; + uint16_t dev_addr; + uint32_t mdio_stat; uint32_t mdio_ctl; uint16_t value; int ret; - /* Setup the MII Mgmt clock speed */ - out_be32(®s->mdio_stat, MDIO_STAT_CLKDIV(100)); + mdio_stat = in_be32(®s->mdio_stat); + if (regnum & MII_ADDR_C45) { + dev_addr = (regnum >> 16) & 0x1f; + mdio_stat |= MDIO_STAT_ENC | MDIO_STAT_HOLD_15_CLK; + } else { + dev_addr = regnum & 0x1f; + mdio_stat = ~MDIO_STAT_ENC; + } + + out_be32(®s->mdio_stat, mdio_stat); ret = xgmac_wait_until_free(&bus->dev, regs); if (ret) @@ -147,11 +173,13 @@ out_be32(®s->mdio_ctl, mdio_ctl); /* Set the register address */ - out_be32(®s->mdio_addr, regnum & 0xffff); + if (regnum & MII_ADDR_C45) { + out_be32(®s->mdio_addr, regnum & 0xffff); - ret = xgmac_wait_until_free(&bus->dev, regs); - if (ret) - return ret; + ret = xgmac_wait_until_free(&bus->dev, regs); + if (ret) + return ret; + } /* Initiate the read */ out_be32(®s->mdio_ctl, mdio_ctl | MDIO_CTL_READ); @@ -162,7 +190,7 @@ /* Return all Fs if nothing was there */ if (in_be32(®s->mdio_stat) & MDIO_STAT_RD_ER) { - dev_err(&bus->dev, "MDIO read error\n"); + dev_dbg(&bus->dev, "MDIO read error\n"); return 0xffff; } @@ -181,7 +209,7 @@ mutex_lock(&bus->mdio_lock); /* Setup the MII Mgmt clock speed */ - out_be32(®s->mdio_stat, MDIO_STAT_CLKDIV(100)); + clrbits32(®s->mdio_stat, MDIO_STAT_ENC); ret = xgmac_wait_until_free(&bus->dev, regs); @@ -256,6 +284,9 @@ { .compatible = "fsl,fman-xmdio", }, + { + .compatible = "fsl,fman-memac-mdio", + }, {}, }; MODULE_DEVICE_TABLE(of, xgmac_mdio_match); --- linux-3.13.0.orig/drivers/net/ethernet/ibm/ibmveth.c +++ linux-3.13.0/drivers/net/ethernet/ibm/ibmveth.c @@ -523,10 +523,21 @@ return rc; } +static u64 ibmveth_encode_mac_addr(u8 *mac) +{ + int i; + u64 encoded = 0; + + for (i = 0; i < ETH_ALEN; i++) + encoded = (encoded << 8) | mac[i]; + + return encoded; +} + static int ibmveth_open(struct net_device *netdev) { struct ibmveth_adapter *adapter = netdev_priv(netdev); - u64 mac_address = 0; + u64 mac_address; int rxq_entries = 1; unsigned long lpar_rc; int rc; @@ -580,8 +591,7 @@ adapter->rx_queue.num_slots = rxq_entries; adapter->rx_queue.toggle = 1; - memcpy(&mac_address, netdev->dev_addr, netdev->addr_len); - mac_address = mac_address >> 16; + mac_address = ibmveth_encode_mac_addr(netdev->dev_addr); rxq_desc.fields.flags_len = IBMVETH_BUF_VALID | adapter->rx_queue.queue_len; @@ -1184,8 +1194,8 @@ /* add the addresses to the filter table */ netdev_for_each_mc_addr(ha, netdev) { /* add the multicast address to the filter table */ - unsigned long mcast_addr = 0; - memcpy(((char *)&mcast_addr)+2, ha->addr, ETH_ALEN); + u64 mcast_addr; + mcast_addr = ibmveth_encode_mac_addr(ha->addr); lpar_rc = h_multicast_ctrl(adapter->vdev->unit_address, IbmVethMcastAddFilter, mcast_addr); @@ -1369,9 +1379,6 @@ netif_napi_add(netdev, &adapter->napi, ibmveth_poll, 16); - adapter->mac_addr = 0; - memcpy(&adapter->mac_addr, mac_addr_p, ETH_ALEN); - netdev->irq = dev->irq; netdev->netdev_ops = &ibmveth_netdev_ops; netdev->ethtool_ops = &netdev_ethtool_ops; @@ -1380,7 +1387,7 @@ NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM; netdev->features |= netdev->hw_features; - memcpy(netdev->dev_addr, &adapter->mac_addr, netdev->addr_len); + memcpy(netdev->dev_addr, mac_addr_p, ETH_ALEN); for (i = 0; i < IBMVETH_NUM_BUFF_POOLS; i++) { struct kobject *kobj = &adapter->rx_buff_pool[i].kobj; --- linux-3.13.0.orig/drivers/net/ethernet/ibm/ibmveth.h +++ linux-3.13.0/drivers/net/ethernet/ibm/ibmveth.h @@ -139,7 +139,6 @@ struct napi_struct napi; struct net_device_stats stats; unsigned int mcastFilterSize; - unsigned long mac_addr; void * buffer_list_addr; void * filter_list_addr; dma_addr_t buffer_list_dma; --- linux-3.13.0.orig/drivers/net/ethernet/intel/e100.c +++ linux-3.13.0/drivers/net/ethernet/intel/e100.c @@ -3034,7 +3034,7 @@ *enable_wake = false; } - pci_disable_device(pdev); + pci_clear_master(pdev); } static int __e100_power_off(struct pci_dev *pdev, bool wake) --- linux-3.13.0.orig/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c +++ linux-3.13.0/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c @@ -6828,7 +6828,7 @@ } static u16 ixgbe_select_queue(struct net_device *dev, struct sk_buff *skb, - void *accel_priv) + void *accel_priv, select_queue_fallback_t fallback) { struct ixgbe_fwd_adapter *fwd_adapter = accel_priv; #ifdef IXGBE_FCOE @@ -6854,7 +6854,7 @@ if (adapter->flags & IXGBE_FLAG_FCOE_ENABLED) break; default: - return __netdev_pick_tx(dev, skb); + return fallback(dev, skb); } f = &adapter->ring_feature[RING_F_FCOE]; @@ -6867,7 +6867,7 @@ return txq + f->offset; #else - return __netdev_pick_tx(dev, skb); + return fallback(dev, skb); #endif } --- linux-3.13.0.orig/drivers/net/ethernet/lantiq_etop.c +++ linux-3.13.0/drivers/net/ethernet/lantiq_etop.c @@ -620,7 +620,7 @@ static u16 ltq_etop_select_queue(struct net_device *dev, struct sk_buff *skb, - void *accel_priv) + void *accel_priv, select_queue_fallback_t fallback) { /* we are currently only using the first queue */ return 0; --- linux-3.13.0.orig/drivers/net/ethernet/marvell/mvneta.c +++ linux-3.13.0/drivers/net/ethernet/marvell/mvneta.c @@ -88,8 +88,9 @@ #define MVNETA_TX_IN_PRGRS BIT(1) #define MVNETA_TX_FIFO_EMPTY BIT(8) #define MVNETA_RX_MIN_FRAME_SIZE 0x247c -#define MVNETA_SGMII_SERDES_CFG 0x24A0 +#define MVNETA_SERDES_CFG 0x24A0 #define MVNETA_SGMII_SERDES_PROTO 0x0cc7 +#define MVNETA_RGMII_SERDES_PROTO 0x0667 #define MVNETA_TYPE_PRIO 0x24bc #define MVNETA_FORCE_UNI BIT(21) #define MVNETA_TXQ_CMD_1 0x24e4 @@ -101,16 +102,56 @@ #define MVNETA_CPU_RXQ_ACCESS_ALL_MASK 0x000000ff #define MVNETA_CPU_TXQ_ACCESS_ALL_MASK 0x0000ff00 #define MVNETA_RXQ_TIME_COAL_REG(q) (0x2580 + ((q) << 2)) + +/* Exception Interrupt Port/Queue Cause register */ + #define MVNETA_INTR_NEW_CAUSE 0x25a0 -#define MVNETA_RX_INTR_MASK(nr_rxqs) (((1 << nr_rxqs) - 1) << 8) #define MVNETA_INTR_NEW_MASK 0x25a4 + +/* bits 0..7 = TXQ SENT, one bit per queue. + * bits 8..15 = RXQ OCCUP, one bit per queue. + * bits 16..23 = RXQ FREE, one bit per queue. + * bit 29 = OLD_REG_SUM, see old reg ? + * bit 30 = TX_ERR_SUM, one bit for 4 ports + * bit 31 = MISC_SUM, one bit for 4 ports + */ +#define MVNETA_TX_INTR_MASK(nr_txqs) (((1 << nr_txqs) - 1) << 0) +#define MVNETA_TX_INTR_MASK_ALL (0xff << 0) +#define MVNETA_RX_INTR_MASK(nr_rxqs) (((1 << nr_rxqs) - 1) << 8) +#define MVNETA_RX_INTR_MASK_ALL (0xff << 8) + #define MVNETA_INTR_OLD_CAUSE 0x25a8 #define MVNETA_INTR_OLD_MASK 0x25ac + +/* Data Path Port/Queue Cause Register */ #define MVNETA_INTR_MISC_CAUSE 0x25b0 #define MVNETA_INTR_MISC_MASK 0x25b4 + +#define MVNETA_CAUSE_PHY_STATUS_CHANGE BIT(0) +#define MVNETA_CAUSE_LINK_CHANGE BIT(1) +#define MVNETA_CAUSE_PTP BIT(4) + +#define MVNETA_CAUSE_INTERNAL_ADDR_ERR BIT(7) +#define MVNETA_CAUSE_RX_OVERRUN BIT(8) +#define MVNETA_CAUSE_RX_CRC_ERROR BIT(9) +#define MVNETA_CAUSE_RX_LARGE_PKT BIT(10) +#define MVNETA_CAUSE_TX_UNDERUN BIT(11) +#define MVNETA_CAUSE_PRBS_ERR BIT(12) +#define MVNETA_CAUSE_PSC_SYNC_CHANGE BIT(13) +#define MVNETA_CAUSE_SERDES_SYNC_ERR BIT(14) + +#define MVNETA_CAUSE_BMU_ALLOC_ERR_SHIFT 16 +#define MVNETA_CAUSE_BMU_ALLOC_ERR_ALL_MASK (0xF << MVNETA_CAUSE_BMU_ALLOC_ERR_SHIFT) +#define MVNETA_CAUSE_BMU_ALLOC_ERR_MASK(pool) (1 << (MVNETA_CAUSE_BMU_ALLOC_ERR_SHIFT + (pool))) + +#define MVNETA_CAUSE_TXQ_ERROR_SHIFT 24 +#define MVNETA_CAUSE_TXQ_ERROR_ALL_MASK (0xFF << MVNETA_CAUSE_TXQ_ERROR_SHIFT) +#define MVNETA_CAUSE_TXQ_ERROR_MASK(q) (1 << (MVNETA_CAUSE_TXQ_ERROR_SHIFT + (q))) + #define MVNETA_INTR_ENABLE 0x25b8 #define MVNETA_TXQ_INTR_ENABLE_ALL_MASK 0x0000ff00 -#define MVNETA_RXQ_INTR_ENABLE_ALL_MASK 0xff000000 +#define MVNETA_RXQ_INTR_ENABLE_ALL_MASK 0xff000000 // note: neta says it's 0x000000FF + #define MVNETA_RXQ_CMD 0x2680 #define MVNETA_RXQ_DISABLE_SHIFT 8 #define MVNETA_RXQ_ENABLE_MASK 0x000000ff @@ -121,7 +162,7 @@ #define MVNETA_GMAC_MAX_RX_SIZE_MASK 0x7ffc #define MVNETA_GMAC0_PORT_ENABLE BIT(0) #define MVNETA_GMAC_CTRL_2 0x2c08 -#define MVNETA_GMAC2_PSC_ENABLE BIT(3) +#define MVNETA_GMAC2_PCS_ENABLE BIT(3) #define MVNETA_GMAC2_PORT_RGMII BIT(4) #define MVNETA_GMAC2_PORT_RESET BIT(6) #define MVNETA_GMAC_STATUS 0x2c10 @@ -176,9 +217,6 @@ #define MVNETA_RX_COAL_PKTS 32 #define MVNETA_RX_COAL_USEC 100 -/* Timer */ -#define MVNETA_TX_DONE_TIMER_PERIOD 10 - /* Napi polling weight */ #define MVNETA_RX_POLL_WEIGHT 64 @@ -221,10 +259,12 @@ #define MVNETA_RX_BUF_SIZE(pkt_size) ((pkt_size) + NET_SKB_PAD) -struct mvneta_stats { +struct mvneta_pcpu_stats { struct u64_stats_sync syncp; - u64 packets; - u64 bytes; + u64 rx_packets; + u64 rx_bytes; + u64 tx_packets; + u64 tx_bytes; }; struct mvneta_port { @@ -232,16 +272,11 @@ void __iomem *base; struct mvneta_rx_queue *rxqs; struct mvneta_tx_queue *txqs; - struct timer_list tx_done_timer; struct net_device *dev; u32 cause_rx_tx; struct napi_struct napi; - /* Flags */ - unsigned long flags; -#define MVNETA_F_TX_DONE_TIMER_BIT 0 - /* Napi weight */ int weight; @@ -250,8 +285,7 @@ u8 mcast_count[256]; u16 tx_ring_size; u16 rx_ring_size; - struct mvneta_stats tx_stats; - struct mvneta_stats rx_stats; + struct mvneta_pcpu_stats *stats; struct mii_bus *mii_bus; struct phy_device *phy_dev; @@ -461,21 +495,29 @@ { struct mvneta_port *pp = netdev_priv(dev); unsigned int start; + int cpu; - memset(stats, 0, sizeof(struct rtnl_link_stats64)); - - do { - start = u64_stats_fetch_begin_bh(&pp->rx_stats.syncp); - stats->rx_packets = pp->rx_stats.packets; - stats->rx_bytes = pp->rx_stats.bytes; - } while (u64_stats_fetch_retry_bh(&pp->rx_stats.syncp, start)); - - - do { - start = u64_stats_fetch_begin_bh(&pp->tx_stats.syncp); - stats->tx_packets = pp->tx_stats.packets; - stats->tx_bytes = pp->tx_stats.bytes; - } while (u64_stats_fetch_retry_bh(&pp->tx_stats.syncp, start)); + for_each_possible_cpu(cpu) { + struct mvneta_pcpu_stats *cpu_stats; + u64 rx_packets; + u64 rx_bytes; + u64 tx_packets; + u64 tx_bytes; + + cpu_stats = per_cpu_ptr(pp->stats, cpu); + do { + start = u64_stats_fetch_begin_bh(&cpu_stats->syncp); + rx_packets = cpu_stats->rx_packets; + rx_bytes = cpu_stats->rx_bytes; + tx_packets = cpu_stats->tx_packets; + tx_bytes = cpu_stats->tx_bytes; + } while (u64_stats_fetch_retry_bh(&cpu_stats->syncp, start)); + + stats->rx_packets += rx_packets; + stats->rx_bytes += rx_bytes; + stats->tx_packets += tx_packets; + stats->tx_bytes += tx_bytes; + } stats->rx_errors = dev->stats.rx_errors; stats->rx_dropped = dev->stats.rx_dropped; @@ -665,35 +707,6 @@ mvreg_write(pp, MVNETA_RXQ_CONFIG_REG(rxq->id), val); } - - -/* Sets the RGMII Enable bit (RGMIIEn) in port MAC control register */ -static void mvneta_gmac_rgmii_set(struct mvneta_port *pp, int enable) -{ - u32 val; - - val = mvreg_read(pp, MVNETA_GMAC_CTRL_2); - - if (enable) - val |= MVNETA_GMAC2_PORT_RGMII; - else - val &= ~MVNETA_GMAC2_PORT_RGMII; - - mvreg_write(pp, MVNETA_GMAC_CTRL_2, val); -} - -/* Config SGMII port */ -static void mvneta_port_sgmii_config(struct mvneta_port *pp) -{ - u32 val; - - val = mvreg_read(pp, MVNETA_GMAC_CTRL_2); - val |= MVNETA_GMAC2_PSC_ENABLE; - mvreg_write(pp, MVNETA_GMAC_CTRL_2, val); - - mvreg_write(pp, MVNETA_SGMII_SERDES_CFG, MVNETA_SGMII_SERDES_PROTO); -} - /* Start the Ethernet port RX and TX activity */ static void mvneta_port_up(struct mvneta_port *pp) { @@ -1100,17 +1113,6 @@ txq->done_pkts_coal = value; } -/* Trigger tx done timer in MVNETA_TX_DONE_TIMER_PERIOD msecs */ -static void mvneta_add_tx_done_timer(struct mvneta_port *pp) -{ - if (test_and_set_bit(MVNETA_F_TX_DONE_TIMER_BIT, &pp->flags) == 0) { - pp->tx_done_timer.expires = jiffies + - msecs_to_jiffies(MVNETA_TX_DONE_TIMER_PERIOD); - add_timer(&pp->tx_done_timer); - } -} - - /* Handle rx descriptor fill by setting buf_cookie and buf_phys_addr */ static void mvneta_rx_desc_fill(struct mvneta_rx_desc *rx_desc, u32 phys_addr, u32 cookie) @@ -1391,6 +1393,8 @@ { struct net_device *dev = pp->dev; int rx_done, rx_filled; + u32 rcvd_pkts = 0; + u32 rcvd_bytes = 0; /* Get number of received packets */ rx_done = mvneta_rxq_busy_desc_num_get(pp, rxq); @@ -1428,10 +1432,8 @@ rx_bytes = rx_desc->data_size - (ETH_FCS_LEN + MVNETA_MH_SIZE); - u64_stats_update_begin(&pp->rx_stats.syncp); - pp->rx_stats.packets++; - pp->rx_stats.bytes += rx_bytes; - u64_stats_update_end(&pp->rx_stats.syncp); + rcvd_pkts++; + rcvd_bytes += rx_bytes; /* Linux processing */ skb_reserve(skb, MVNETA_MH_SIZE); @@ -1452,6 +1454,15 @@ } } + if (rcvd_pkts) { + struct mvneta_pcpu_stats *stats = this_cpu_ptr(pp->stats); + + u64_stats_update_begin(&stats->syncp); + stats->rx_packets += rcvd_pkts; + stats->rx_bytes += rcvd_bytes; + u64_stats_update_end(&stats->syncp); + } + /* Update rxq management counters */ mvneta_rxq_desc_num_update(pp, rxq, rx_done, rx_filled); @@ -1582,25 +1593,17 @@ out: if (frags > 0) { - u64_stats_update_begin(&pp->tx_stats.syncp); - pp->tx_stats.packets++; - pp->tx_stats.bytes += skb->len; - u64_stats_update_end(&pp->tx_stats.syncp); + struct mvneta_pcpu_stats *stats = this_cpu_ptr(pp->stats); + u64_stats_update_begin(&stats->syncp); + stats->tx_packets++; + stats->tx_bytes += skb->len; + u64_stats_update_end(&stats->syncp); } else { dev->stats.tx_dropped++; dev_kfree_skb_any(skb); } - if (txq->count >= MVNETA_TXDONE_COAL_PKTS) - mvneta_txq_done(pp, txq); - - /* If after calling mvneta_txq_done, count equals - * frags, we need to set the timer - */ - if (txq->count == frags && frags > 0) - mvneta_add_tx_done_timer(pp); - return NETDEV_TX_OK; } @@ -1876,14 +1879,22 @@ /* Read cause register */ cause_rx_tx = mvreg_read(pp, MVNETA_INTR_NEW_CAUSE) & - MVNETA_RX_INTR_MASK(rxq_number); + (MVNETA_RX_INTR_MASK(rxq_number) | MVNETA_TX_INTR_MASK(txq_number)); + + /* Release Tx descriptors */ + if (cause_rx_tx & MVNETA_TX_INTR_MASK_ALL) { + int tx_todo = 0; + + mvneta_tx_done_gbe(pp, (cause_rx_tx & MVNETA_TX_INTR_MASK_ALL), &tx_todo); + cause_rx_tx &= ~MVNETA_TX_INTR_MASK_ALL; + } /* For the case where the last mvneta_poll did not process all * RX packets */ cause_rx_tx |= pp->cause_rx_tx; if (rxq_number > 1) { - while ((cause_rx_tx != 0) && (budget > 0)) { + while ((cause_rx_tx & MVNETA_RX_INTR_MASK_ALL) && (budget > 0)) { int count; struct mvneta_rx_queue *rxq; /* get rx queue number from cause_rx_tx */ @@ -1915,7 +1926,7 @@ napi_complete(napi); local_irq_save(flags); mvreg_write(pp, MVNETA_INTR_NEW_MASK, - MVNETA_RX_INTR_MASK(rxq_number)); + MVNETA_RX_INTR_MASK(rxq_number) | MVNETA_TX_INTR_MASK(txq_number)); local_irq_restore(flags); } @@ -1923,26 +1934,6 @@ return rx_done; } -/* tx done timer callback */ -static void mvneta_tx_done_timer_callback(unsigned long data) -{ - struct net_device *dev = (struct net_device *)data; - struct mvneta_port *pp = netdev_priv(dev); - int tx_done = 0, tx_todo = 0; - - if (!netif_running(dev)) - return ; - - clear_bit(MVNETA_F_TX_DONE_TIMER_BIT, &pp->flags); - - tx_done = mvneta_tx_done_gbe(pp, - (((1 << txq_number) - 1) & - MVNETA_CAUSE_TXQ_SENT_DESC_ALL_MASK), - &tx_todo); - if (tx_todo > 0) - mvneta_add_tx_done_timer(pp); -} - /* Handle rxq fill: allocates rxq skbs; called when initializing a port */ static int mvneta_rxq_fill(struct mvneta_port *pp, struct mvneta_rx_queue *rxq, int num) @@ -2192,7 +2183,7 @@ /* Unmask interrupts */ mvreg_write(pp, MVNETA_INTR_NEW_MASK, - MVNETA_RX_INTR_MASK(rxq_number)); + MVNETA_RX_INTR_MASK(rxq_number) | MVNETA_TX_INTR_MASK(txq_number)); phy_start(pp->phy_dev); netif_tx_start_all_queues(pp->dev); @@ -2225,16 +2216,6 @@ mvneta_rx_reset(pp); } -/* tx timeout callback - display a message and stop/start the network device */ -static void mvneta_tx_timeout(struct net_device *dev) -{ - struct mvneta_port *pp = netdev_priv(dev); - - netdev_info(dev, "tx timeout\n"); - mvneta_stop_dev(pp); - mvneta_start_dev(pp); -} - /* Return positive if MTU is valid */ static int mvneta_check_mtu_valid(struct net_device *dev, int mtu) { @@ -2478,8 +2459,6 @@ free_irq(dev->irq, pp); mvneta_cleanup_rxqs(pp); mvneta_cleanup_txqs(pp); - del_timer(&pp->tx_done_timer); - clear_bit(MVNETA_F_TX_DONE_TIMER_BIT, &pp->flags); return 0; } @@ -2615,7 +2594,6 @@ .ndo_set_rx_mode = mvneta_set_rx_mode, .ndo_set_mac_address = mvneta_set_mac_addr, .ndo_change_mtu = mvneta_change_mtu, - .ndo_tx_timeout = mvneta_tx_timeout, .ndo_get_stats64 = mvneta_get_stats64, .ndo_do_ioctl = mvneta_ioctl, }; @@ -2723,12 +2701,15 @@ mvreg_write(pp, MVNETA_UNIT_INTR_CAUSE, 0); if (phy_mode == PHY_INTERFACE_MODE_SGMII) - mvneta_port_sgmii_config(pp); + mvreg_write(pp, MVNETA_SERDES_CFG, MVNETA_SGMII_SERDES_PROTO); + else + mvreg_write(pp, MVNETA_SERDES_CFG, MVNETA_RGMII_SERDES_PROTO); - mvneta_gmac_rgmii_set(pp, 1); + val = mvreg_read(pp, MVNETA_GMAC_CTRL_2); + + val |= MVNETA_GMAC2_PCS_ENABLE | MVNETA_GMAC2_PORT_RGMII; /* Cancel Port Reset */ - val = mvreg_read(pp, MVNETA_GMAC_CTRL_2); val &= ~MVNETA_GMAC2_PORT_RESET; mvreg_write(pp, MVNETA_GMAC_CTRL_2, val); @@ -2751,6 +2732,7 @@ const char *mac_from; int phy_mode; int err; + int cpu; /* Our multiqueue support is not complete, so for now, only * allow the usage of the first RX queue @@ -2792,9 +2774,6 @@ pp = netdev_priv(dev); - u64_stats_init(&pp->tx_stats.syncp); - u64_stats_init(&pp->rx_stats.syncp); - pp->weight = MVNETA_RX_POLL_WEIGHT; pp->phy_node = phy_node; pp->phy_interface = phy_mode; @@ -2813,6 +2792,19 @@ goto err_clk; } + /* Alloc per-cpu stats */ + pp->stats = alloc_percpu(struct mvneta_pcpu_stats); + if (!pp->stats) { + err = -ENOMEM; + goto err_unmap; + } + + for_each_possible_cpu(cpu) { + struct mvneta_pcpu_stats *stats; + stats = per_cpu_ptr(pp->stats, cpu); + u64_stats_init(&stats->syncp); + } + dt_mac_addr = of_get_mac_address(dn); if (dt_mac_addr) { mac_from = "device tree"; @@ -2828,11 +2820,6 @@ } } - pp->tx_done_timer.data = (unsigned long)dev; - pp->tx_done_timer.function = mvneta_tx_done_timer_callback; - init_timer(&pp->tx_done_timer); - clear_bit(MVNETA_F_TX_DONE_TIMER_BIT, &pp->flags); - pp->tx_ring_size = MVNETA_MAX_TXD; pp->rx_ring_size = MVNETA_MAX_RXD; @@ -2842,7 +2829,7 @@ err = mvneta_init(pp, phy_addr); if (err < 0) { dev_err(&pdev->dev, "can't init eth hal\n"); - goto err_unmap; + goto err_free_stats; } mvneta_port_power_up(pp, phy_mode); @@ -2872,6 +2859,8 @@ err_deinit: mvneta_deinit(pp); +err_free_stats: + free_percpu(pp->stats); err_unmap: iounmap(pp->base); err_clk: @@ -2892,6 +2881,7 @@ unregister_netdev(dev); mvneta_deinit(pp); clk_disable_unprepare(pp->clk); + free_percpu(pp->stats); iounmap(pp->base); irq_dispose_mapping(dev->irq); free_netdev(dev); --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/Kconfig +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/Kconfig @@ -3,9 +3,10 @@ # config MLX4_EN - tristate "Mellanox Technologies 10Gbit Ethernet support" + tristate "Mellanox Technologies 1/10/40Gbit Ethernet support" depends on PCI select MLX4_CORE + select PTP_1588_CLOCK ---help--- This driver supports Mellanox Technologies ConnectX Ethernet devices. @@ -22,6 +23,13 @@ If unsure, set to Y +config MLX4_EN_VXLAN + bool "VXLAN offloads Support" + default y + depends on MLX4_EN && VXLAN && !(MLX4_EN=y && VXLAN=m) + ---help--- + Say Y here if you want to use VXLAN offloads in the driver. + config MLX4_CORE tristate depends on PCI --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/alloc.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/alloc.c @@ -71,9 +71,9 @@ return obj; } -void mlx4_bitmap_free(struct mlx4_bitmap *bitmap, u32 obj) +void mlx4_bitmap_free(struct mlx4_bitmap *bitmap, u32 obj, int use_rr) { - mlx4_bitmap_free_range(bitmap, obj, 1); + mlx4_bitmap_free_range(bitmap, obj, 1, use_rr); } u32 mlx4_bitmap_alloc_range(struct mlx4_bitmap *bitmap, int cnt, int align) @@ -118,11 +118,17 @@ return bitmap->avail; } -void mlx4_bitmap_free_range(struct mlx4_bitmap *bitmap, u32 obj, int cnt) +void mlx4_bitmap_free_range(struct mlx4_bitmap *bitmap, u32 obj, int cnt, + int use_rr) { obj &= bitmap->max + bitmap->reserved_top - 1; spin_lock(&bitmap->lock); + if (!use_rr) { + bitmap->last = min(bitmap->last, obj); + bitmap->top = (bitmap->top + bitmap->max + bitmap->reserved_top) + & bitmap->mask; + } bitmap_clear(bitmap->table, obj, cnt); bitmap->avail += cnt; spin_unlock(&bitmap->lock); --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/cmd.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/cmd.c @@ -800,16 +800,7 @@ vhcr->op, MLX4_CMD_TIME_CLASS_C, MLX4_CMD_NATIVE); } -static int MLX4_CMD_UPDATE_QP_wrapper(struct mlx4_dev *dev, int slave, - struct mlx4_vhcr *vhcr, - struct mlx4_cmd_mailbox *inbox, - struct mlx4_cmd_mailbox *outbox, - struct mlx4_cmd_info *cmd) -{ - return -EPERM; -} - -static int MLX4_CMD_GET_OP_REQ_wrapper(struct mlx4_dev *dev, int slave, +static int mlx4_CMD_EPERM_wrapper(struct mlx4_dev *dev, int slave, struct mlx4_vhcr *vhcr, struct mlx4_cmd_mailbox *inbox, struct mlx4_cmd_mailbox *outbox, @@ -964,6 +955,15 @@ .wrapper = NULL }, { + .opcode = MLX4_CMD_CONFIG_DEV, + .has_inbox = false, + .has_outbox = false, + .out_is_imm = false, + .encode_slave_id = false, + .verify = NULL, + .wrapper = mlx4_CMD_EPERM_wrapper + }, + { .opcode = MLX4_CMD_ALLOC_RES, .has_inbox = false, .has_outbox = false, @@ -1258,7 +1258,7 @@ .out_is_imm = false, .encode_slave_id = false, .verify = NULL, - .wrapper = MLX4_CMD_UPDATE_QP_wrapper + .wrapper = mlx4_CMD_EPERM_wrapper }, { .opcode = MLX4_CMD_GET_OP_REQ, @@ -1267,7 +1267,7 @@ .out_is_imm = false, .encode_slave_id = false, .verify = NULL, - .wrapper = MLX4_CMD_GET_OP_REQ_wrapper, + .wrapper = mlx4_CMD_EPERM_wrapper, }, { .opcode = MLX4_CMD_CONF_SPECIAL_QP, @@ -1371,6 +1371,15 @@ .verify = NULL, .wrapper = mlx4_QP_FLOW_STEERING_DETACH_wrapper }, + { + .opcode = MLX4_FLOW_STEERING_IB_UC_QP_RANGE, + .has_inbox = false, + .has_outbox = false, + .out_is_imm = false, + .encode_slave_id = false, + .verify = NULL, + .wrapper = mlx4_CMD_EPERM_wrapper + }, }; static int mlx4_master_process_vhcr(struct mlx4_dev *dev, int slave, @@ -1634,8 +1643,16 @@ int port, err; struct mlx4_vport_state *vp_admin; struct mlx4_vport_oper_state *vp_oper; - - for (port = 1; port <= MLX4_MAX_PORTS; port++) { + struct mlx4_active_ports actv_ports = mlx4_get_active_ports( + &priv->dev, slave); + int min_port = find_first_bit(actv_ports.ports, + priv->dev.caps.num_ports) + 1; + int max_port = min_port - 1 + + bitmap_weight(actv_ports.ports, priv->dev.caps.num_ports); + + for (port = min_port; port <= max_port; port++) { + if (!test_bit(port - 1, actv_ports.ports)) + continue; vp_oper = &priv->mfunc.master.vf_oper[slave].vport[port]; vp_admin = &priv->mfunc.master.vf_admin[slave].vport[port]; vp_oper->state = *vp_admin; @@ -1676,8 +1693,17 @@ { int port; struct mlx4_vport_oper_state *vp_oper; + struct mlx4_active_ports actv_ports = mlx4_get_active_ports( + &priv->dev, slave); + int min_port = find_first_bit(actv_ports.ports, + priv->dev.caps.num_ports) + 1; + int max_port = min_port - 1 + + bitmap_weight(actv_ports.ports, priv->dev.caps.num_ports); + - for (port = 1; port <= MLX4_MAX_PORTS; port++) { + for (port = min_port; port <= max_port; port++) { + if (!test_bit(port - 1, actv_ports.ports)) + continue; vp_oper = &priv->mfunc.master.vf_oper[slave].vport[port]; if (NO_INDX != vp_oper->vlan_idx) { __mlx4_unregister_vlan(&priv->dev, @@ -2225,6 +2251,112 @@ return vf+1; } +int mlx4_get_vf_indx(struct mlx4_dev *dev, int slave) +{ + if (slave < 1 || slave > dev->num_vfs) { + mlx4_err(dev, + "Bad slave number:%d (number of activated slaves: %lu)\n", + slave, dev->num_slaves); + return -EINVAL; + } + return slave - 1; +} + +struct mlx4_active_ports mlx4_get_active_ports(struct mlx4_dev *dev, int slave) +{ + struct mlx4_active_ports actv_ports; + int vf; + + bitmap_zero(actv_ports.ports, MLX4_MAX_PORTS); + + if (slave == 0) { + bitmap_fill(actv_ports.ports, dev->caps.num_ports); + return actv_ports; + } + + vf = mlx4_get_vf_indx(dev, slave); + if (vf < 0) + return actv_ports; + + bitmap_set(actv_ports.ports, dev->dev_vfs[vf].min_port - 1, + min((int)dev->dev_vfs[mlx4_get_vf_indx(dev, slave)].n_ports, + dev->caps.num_ports)); + + return actv_ports; +} +EXPORT_SYMBOL_GPL(mlx4_get_active_ports); + +int mlx4_slave_convert_port(struct mlx4_dev *dev, int slave, int port) +{ + unsigned n; + struct mlx4_active_ports actv_ports = mlx4_get_active_ports(dev, slave); + unsigned m = bitmap_weight(actv_ports.ports, dev->caps.num_ports); + + if (port <= 0 || port > m) + return -EINVAL; + + n = find_first_bit(actv_ports.ports, dev->caps.num_ports); + if (port <= n) + port = n + 1; + + return port; +} +EXPORT_SYMBOL_GPL(mlx4_slave_convert_port); + +int mlx4_phys_to_slave_port(struct mlx4_dev *dev, int slave, int port) +{ + struct mlx4_active_ports actv_ports = mlx4_get_active_ports(dev, slave); + if (test_bit(port - 1, actv_ports.ports)) + return port - + find_first_bit(actv_ports.ports, dev->caps.num_ports); + + return -1; +} +EXPORT_SYMBOL_GPL(mlx4_phys_to_slave_port); + +struct mlx4_slaves_pport mlx4_phys_to_slaves_pport(struct mlx4_dev *dev, + int port) +{ + unsigned i; + struct mlx4_slaves_pport slaves_pport; + + bitmap_zero(slaves_pport.slaves, MLX4_MFUNC_MAX); + + if (port <= 0 || port > dev->caps.num_ports) + return slaves_pport; + + for (i = 0; i < dev->num_vfs + 1; i++) { + struct mlx4_active_ports actv_ports = + mlx4_get_active_ports(dev, i); + if (test_bit(port - 1, actv_ports.ports)) + set_bit(i, slaves_pport.slaves); + } + + return slaves_pport; +} +EXPORT_SYMBOL_GPL(mlx4_phys_to_slaves_pport); + +struct mlx4_slaves_pport mlx4_phys_to_slaves_pport_actv( + struct mlx4_dev *dev, + const struct mlx4_active_ports *crit_ports) +{ + unsigned i; + struct mlx4_slaves_pport slaves_pport; + + bitmap_zero(slaves_pport.slaves, MLX4_MFUNC_MAX); + + for (i = 0; i < dev->num_vfs + 1; i++) { + struct mlx4_active_ports actv_ports = + mlx4_get_active_ports(dev, i); + if (bitmap_equal(crit_ports->ports, actv_ports.ports, + dev->caps.num_ports)) + set_bit(i, slaves_pport.slaves); + } + + return slaves_pport; +} +EXPORT_SYMBOL_GPL(mlx4_phys_to_slaves_pport_actv); + int mlx4_set_vf_mac(struct mlx4_dev *dev, int port, int vf, u64 mac) { struct mlx4_priv *priv = mlx4_priv(dev); @@ -2280,6 +2412,30 @@ } EXPORT_SYMBOL_GPL(mlx4_set_vf_vlan); + /* mlx4_get_slave_default_vlan - + * return true if VST ( default vlan) + * if VST, will return vlan & qos (if not NULL) + */ +bool mlx4_get_slave_default_vlan(struct mlx4_dev *dev, int port, int slave, + u16 *vlan, u8 *qos) +{ + struct mlx4_vport_oper_state *vp_oper; + struct mlx4_priv *priv; + + priv = mlx4_priv(dev); + vp_oper = &priv->mfunc.master.vf_oper[slave].vport[port]; + + if (MLX4_VGT != vp_oper->state.default_vlan) { + if (vlan) + *vlan = vp_oper->state.default_vlan; + if (qos) + *qos = vp_oper->state.default_qos; + return true; + } + return false; +} +EXPORT_SYMBOL_GPL(mlx4_get_slave_default_vlan); + int mlx4_set_vf_spoofchk(struct mlx4_dev *dev, int port, int vf, bool setting) { struct mlx4_priv *priv = mlx4_priv(dev); --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/cq.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/cq.c @@ -187,7 +187,7 @@ mlx4_table_put(dev, &cq_table->table, *cqn); err_out: - mlx4_bitmap_free(&cq_table->bitmap, *cqn); + mlx4_bitmap_free(&cq_table->bitmap, *cqn, MLX4_NO_RR); return err; } @@ -217,7 +217,7 @@ mlx4_table_put(dev, &cq_table->cmpt_table, cqn); mlx4_table_put(dev, &cq_table->table, cqn); - mlx4_bitmap_free(&cq_table->bitmap, cqn); + mlx4_bitmap_free(&cq_table->bitmap, cqn, MLX4_NO_RR); } static void mlx4_cq_free_icm(struct mlx4_dev *dev, int cqn) --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/en_clock.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/en_clock.c @@ -42,6 +42,10 @@ int port_up = 0; int err = 0; + if (priv->hwtstamp_config.tx_type == tx_type && + priv->hwtstamp_config.rx_filter == rx_filter) + return 0; + mutex_lock(&mdev->state_lock); if (priv->port_up) { port_up = 1; @@ -103,19 +107,191 @@ struct skb_shared_hwtstamps *hwts, u64 timestamp) { + unsigned long flags; u64 nsec; + read_lock_irqsave(&mdev->clock_lock, flags); nsec = timecounter_cyc2time(&mdev->clock, timestamp); + read_unlock_irqrestore(&mdev->clock_lock, flags); memset(hwts, 0, sizeof(struct skb_shared_hwtstamps)); hwts->hwtstamp = ns_to_ktime(nsec); } +/** + * mlx4_en_remove_timestamp - disable PTP device + * @mdev: board private structure + * + * Stop the PTP support. + **/ +void mlx4_en_remove_timestamp(struct mlx4_en_dev *mdev) +{ + if (mdev->ptp_clock) { + ptp_clock_unregister(mdev->ptp_clock); + mdev->ptp_clock = NULL; + mlx4_info(mdev, "removed PHC\n"); + } +} + +void mlx4_en_ptp_overflow_check(struct mlx4_en_dev *mdev) +{ + bool timeout = time_is_before_jiffies(mdev->last_overflow_check + + mdev->overflow_period); + unsigned long flags; + + if (timeout) { + write_lock_irqsave(&mdev->clock_lock, flags); + timecounter_read(&mdev->clock); + write_unlock_irqrestore(&mdev->clock_lock, flags); + mdev->last_overflow_check = jiffies; + } +} + +/** + * mlx4_en_phc_adjfreq - adjust the frequency of the hardware clock + * @ptp: ptp clock structure + * @delta: Desired frequency change in parts per billion + * + * Adjust the frequency of the PHC cycle counter by the indicated delta from + * the base frequency. + **/ +static int mlx4_en_phc_adjfreq(struct ptp_clock_info *ptp, s32 delta) +{ + u64 adj; + u32 diff, mult; + int neg_adj = 0; + unsigned long flags; + struct mlx4_en_dev *mdev = container_of(ptp, struct mlx4_en_dev, + ptp_clock_info); + + if (delta < 0) { + neg_adj = 1; + delta = -delta; + } + mult = mdev->nominal_c_mult; + adj = mult; + adj *= delta; + diff = div_u64(adj, 1000000000ULL); + + write_lock_irqsave(&mdev->clock_lock, flags); + timecounter_read(&mdev->clock); + mdev->cycles.mult = neg_adj ? mult - diff : mult + diff; + write_unlock_irqrestore(&mdev->clock_lock, flags); + + return 0; +} + +/** + * mlx4_en_phc_adjtime - Shift the time of the hardware clock + * @ptp: ptp clock structure + * @delta: Desired change in nanoseconds + * + * Adjust the timer by resetting the timecounter structure. + **/ +static int mlx4_en_phc_adjtime(struct ptp_clock_info *ptp, s64 delta) +{ + struct mlx4_en_dev *mdev = container_of(ptp, struct mlx4_en_dev, + ptp_clock_info); + unsigned long flags; + s64 now; + + write_lock_irqsave(&mdev->clock_lock, flags); + now = timecounter_read(&mdev->clock); + now += delta; + timecounter_init(&mdev->clock, &mdev->cycles, now); + write_unlock_irqrestore(&mdev->clock_lock, flags); + + return 0; +} + +/** + * mlx4_en_phc_gettime - Reads the current time from the hardware clock + * @ptp: ptp clock structure + * @ts: timespec structure to hold the current time value + * + * Read the timecounter and return the correct value in ns after converting + * it into a struct timespec. + **/ +static int mlx4_en_phc_gettime(struct ptp_clock_info *ptp, struct timespec *ts) +{ + struct mlx4_en_dev *mdev = container_of(ptp, struct mlx4_en_dev, + ptp_clock_info); + unsigned long flags; + u32 remainder; + u64 ns; + + write_lock_irqsave(&mdev->clock_lock, flags); + ns = timecounter_read(&mdev->clock); + write_unlock_irqrestore(&mdev->clock_lock, flags); + + ts->tv_sec = div_u64_rem(ns, NSEC_PER_SEC, &remainder); + ts->tv_nsec = remainder; + + return 0; +} + +/** + * mlx4_en_phc_settime - Set the current time on the hardware clock + * @ptp: ptp clock structure + * @ts: timespec containing the new time for the cycle counter + * + * Reset the timecounter to use a new base value instead of the kernel + * wall timer value. + **/ +static int mlx4_en_phc_settime(struct ptp_clock_info *ptp, + const struct timespec *ts) +{ + struct mlx4_en_dev *mdev = container_of(ptp, struct mlx4_en_dev, + ptp_clock_info); + u64 ns = timespec_to_ns(ts); + unsigned long flags; + + /* reset the timecounter */ + write_lock_irqsave(&mdev->clock_lock, flags); + timecounter_init(&mdev->clock, &mdev->cycles, ns); + write_unlock_irqrestore(&mdev->clock_lock, flags); + + return 0; +} + +/** + * mlx4_en_phc_enable - enable or disable an ancillary feature + * @ptp: ptp clock structure + * @request: Desired resource to enable or disable + * @on: Caller passes one to enable or zero to disable + * + * Enable (or disable) ancillary features of the PHC subsystem. + * Currently, no ancillary features are supported. + **/ +static int mlx4_en_phc_enable(struct ptp_clock_info __always_unused *ptp, + struct ptp_clock_request __always_unused *request, + int __always_unused on) +{ + return -EOPNOTSUPP; +} + +static const struct ptp_clock_info mlx4_en_ptp_clock_info = { + .owner = THIS_MODULE, + .max_adj = 100000000, + .n_alarm = 0, + .n_ext_ts = 0, + .n_per_out = 0, + .pps = 0, + .adjfreq = mlx4_en_phc_adjfreq, + .adjtime = mlx4_en_phc_adjtime, + .gettime = mlx4_en_phc_gettime, + .settime = mlx4_en_phc_settime, + .enable = mlx4_en_phc_enable, +}; + void mlx4_en_init_timestamp(struct mlx4_en_dev *mdev) { struct mlx4_dev *dev = mdev->dev; + unsigned long flags; u64 ns; + rwlock_init(&mdev->clock_lock); + memset(&mdev->cycles, 0, sizeof(mdev->cycles)); mdev->cycles.read = mlx4_en_read_clock; mdev->cycles.mask = CLOCKSOURCE_MASK(48); @@ -127,9 +303,12 @@ mdev->cycles.shift = 14; mdev->cycles.mult = clocksource_khz2mult(1000 * dev->caps.hca_core_clock, mdev->cycles.shift); + mdev->nominal_c_mult = mdev->cycles.mult; + write_lock_irqsave(&mdev->clock_lock, flags); timecounter_init(&mdev->clock, &mdev->cycles, ktime_to_ns(ktime_get_real())); + write_unlock_irqrestore(&mdev->clock_lock, flags); /* Calculate period in seconds to call the overflow watchdog - to make * sure counter is checked at least once every wrap around. @@ -137,15 +316,18 @@ ns = cyclecounter_cyc2ns(&mdev->cycles, mdev->cycles.mask); do_div(ns, NSEC_PER_SEC / 2 / HZ); mdev->overflow_period = ns; -} - -void mlx4_en_ptp_overflow_check(struct mlx4_en_dev *mdev) -{ - bool timeout = time_is_before_jiffies(mdev->last_overflow_check + - mdev->overflow_period); - if (timeout) { - timecounter_read(&mdev->clock); - mdev->last_overflow_check = jiffies; + /* Configure the PHC */ + mdev->ptp_clock_info = mlx4_en_ptp_clock_info; + snprintf(mdev->ptp_clock_info.name, 16, "mlx4 ptp"); + + mdev->ptp_clock = ptp_clock_register(&mdev->ptp_clock_info, + &mdev->pdev->dev); + if (IS_ERR(mdev->ptp_clock)) { + mdev->ptp_clock = NULL; + mlx4_err(mdev, "ptp_clock_register failed\n"); + } else { + mlx4_info(mdev, "registered PHC clock\n"); } + } --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/en_cq.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/en_cq.c @@ -161,12 +161,16 @@ cq->mcq.comp = cq->is_tx ? mlx4_en_tx_irq : mlx4_en_rx_irq; cq->mcq.event = mlx4_en_cq_event; - if (!cq->is_tx) { + if (cq->is_tx) { + netif_napi_add(cq->dev, &cq->napi, mlx4_en_poll_tx_cq, + NAPI_POLL_WEIGHT); + } else { netif_napi_add(cq->dev, &cq->napi, mlx4_en_poll_rx_cq, 64); napi_hash_add(&cq->napi); - napi_enable(&cq->napi); } + napi_enable(&cq->napi); + return 0; } @@ -188,12 +192,12 @@ void mlx4_en_deactivate_cq(struct mlx4_en_priv *priv, struct mlx4_en_cq *cq) { + napi_disable(&cq->napi); if (!cq->is_tx) { - napi_disable(&cq->napi); napi_hash_del(&cq->napi); synchronize_rcu(); - netif_napi_del(&cq->napi); } + netif_napi_del(&cq->napi); mlx4_cq_free(priv->mdev->dev, &cq->mcq); } --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/en_dcb_nl.c @@ -62,7 +62,7 @@ int has_ets_tc = 0; for (i = 0; i < IEEE_8021QAZ_MAX_TCS; i++) { - if (ets->prio_tc[i] > MLX4_EN_NUM_UP) { + if (ets->prio_tc[i] >= MLX4_EN_NUM_UP) { en_err(priv, "Bad priority in UP <=> TC mapping. TC: %d, UP: %d\n", i, ets->prio_tc[i]); return -EINVAL; --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/en_ethtool.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/en_ethtool.c @@ -1193,6 +1193,9 @@ info->rx_filters = (1 << HWTSTAMP_FILTER_NONE) | (1 << HWTSTAMP_FILTER_ALL); + + if (mdev->ptp_clock) + info->phc_index = ptp_clock_index(mdev->ptp_clock); } return ret; --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/en_main.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/en_main.c @@ -72,6 +72,12 @@ MLX4_EN_PARM_INT(pfcrx, 0, "Priority based Flow Control policy on RX[7:0]." " Per priority bit mask"); +MLX4_EN_PARM_INT(inline_thold, MAX_INLINE, + "Threshold for using inline data (range: 17-104, default: 104)"); + +#define MAX_PFC_TX 0xff +#define MAX_PFC_RX 0xff + int en_print(const char *level, const struct mlx4_en_priv *priv, const char *format, ...) { @@ -140,6 +146,7 @@ params->prof[i].tx_ring_num = params->num_tx_rings_p_up * MLX4_EN_NUM_UP; params->prof[i].rss_rings = 0; + params->prof[i].inline_thold = inline_thold; } return 0; @@ -174,6 +181,9 @@ mlx4_err(mdev, "Internal error detected, restarting device\n"); break; + case MLX4_DEV_EVENT_SLAVE_INIT: + case MLX4_DEV_EVENT_SLAVE_SHUTDOWN: + break; default: if (port < 1 || port > dev->caps.num_ports || !mdev->pndev[port]) @@ -196,6 +206,9 @@ if (mdev->pndev[i]) mlx4_en_destroy_netdev(mdev->pndev[i]); + if (mdev->dev->caps.flags2 & MLX4_DEV_CAP_FLAG2_TS) + mlx4_en_remove_timestamp(mdev); + flush_workqueue(mdev->workqueue); destroy_workqueue(mdev->workqueue); (void) mlx4_mr_free(dev, &mdev->mr); @@ -268,19 +281,8 @@ if (mdev->dev->caps.flags2 & MLX4_DEV_CAP_FLAG2_TS) mlx4_en_init_timestamp(mdev); - mlx4_foreach_port(i, dev, MLX4_PORT_TYPE_ETH) { - if (!dev->caps.comp_pool) { - mdev->profile.prof[i].rx_ring_num = - rounddown_pow_of_two(max_t(int, MIN_RX_RINGS, - min_t(int, - dev->caps.num_comp_vectors, - DEF_RX_RINGS))); - } else { - mdev->profile.prof[i].rx_ring_num = rounddown_pow_of_two( - min_t(int, dev->caps.comp_pool/ - dev->caps.num_ports - 1 , MAX_MSIX_P_PORT - 1)); - } - } + /* Set default number of RX rings*/ + mlx4_en_set_num_rx_rings(mdev); /* Create our own workqueue for reset/multicast tasks * Note: we cannot use the shared workqueue because of deadlocks caused @@ -330,8 +332,31 @@ .protocol = MLX4_PROT_ETH, }; +static void mlx4_en_verify_params(void) +{ + if (pfctx > MAX_PFC_TX) { + pr_warn("mlx4_en: WARNING: illegal module parameter pfctx 0x%x - should be in range 0-0x%x, will be changed to default (0)\n", + pfctx, MAX_PFC_TX); + pfctx = 0; + } + + if (pfcrx > MAX_PFC_RX) { + pr_warn("mlx4_en: WARNING: illegal module parameter pfcrx 0x%x - should be in range 0-0x%x, will be changed to default (0)\n", + pfcrx, MAX_PFC_RX); + pfcrx = 0; + } + + if (inline_thold < MIN_PKT_LEN || inline_thold > MAX_INLINE) { + pr_warn("mlx4_en: WARNING: illegal module parameter inline_thold %d - should be in range %d-%d, will be changed to default (%d)\n", + inline_thold, MIN_PKT_LEN, MAX_INLINE, MAX_INLINE); + inline_thold = MAX_INLINE; + } +} + static int __init mlx4_en_init(void) { + mlx4_en_verify_params(); + return mlx4_register_interface(&mlx4_en_interface); } --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/en_netdev.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/en_netdev.c @@ -39,6 +39,7 @@ #include #include #include +#include #include #include @@ -468,6 +469,53 @@ memset(&dst_mac[ETH_ALEN], 0, 2); } + +static int mlx4_en_tunnel_steer_add(struct mlx4_en_priv *priv, unsigned char *addr, + int qpn, u64 *reg_id) +{ + int err; + struct mlx4_spec_list spec_eth_outer = { {NULL} }; + struct mlx4_spec_list spec_vxlan = { {NULL} }; + struct mlx4_spec_list spec_eth_inner = { {NULL} }; + + struct mlx4_net_trans_rule rule = { + .queue_mode = MLX4_NET_TRANS_Q_FIFO, + .exclusive = 0, + .allow_loopback = 1, + .promisc_mode = MLX4_FS_REGULAR, + .priority = MLX4_DOMAIN_NIC, + }; + + __be64 mac_mask = cpu_to_be64(MLX4_MAC_MASK << 16); + + if (priv->mdev->dev->caps.tunnel_offload_mode != MLX4_TUNNEL_OFFLOAD_MODE_VXLAN) + return 0; /* do nothing */ + + rule.port = priv->port; + rule.qpn = qpn; + INIT_LIST_HEAD(&rule.list); + + spec_eth_outer.id = MLX4_NET_TRANS_RULE_ID_ETH; + memcpy(spec_eth_outer.eth.dst_mac, addr, ETH_ALEN); + memcpy(spec_eth_outer.eth.dst_mac_msk, &mac_mask, ETH_ALEN); + + spec_vxlan.id = MLX4_NET_TRANS_RULE_ID_VXLAN; /* any vxlan header */ + spec_eth_inner.id = MLX4_NET_TRANS_RULE_ID_ETH; /* any inner eth header */ + + list_add_tail(&spec_eth_outer.list, &rule.list); + list_add_tail(&spec_vxlan.list, &rule.list); + list_add_tail(&spec_eth_inner.list, &rule.list); + + err = mlx4_flow_attach(priv->mdev->dev, &rule, reg_id); + if (err) { + en_err(priv, "failed to add vxlan steering rule, err %d\n", err); + return err; + } + en_dbg(DRV, priv, "added vxlan steering rule, mac %pM reg_id %llx\n", addr, *reg_id); + return 0; +} + + static int mlx4_en_uc_steer_add(struct mlx4_en_priv *priv, unsigned char *mac, int *qpn, u64 *reg_id) { @@ -556,7 +604,7 @@ int err = 0; u64 reg_id; int *qpn = &priv->base_qpn; - u64 mac = mlx4_en_mac_to_u64(priv->dev->dev_addr); + u64 mac = mlx4_mac_to_u64(priv->dev->dev_addr); en_dbg(DRV, priv, "Registering MAC: %pM for adding\n", priv->dev->dev_addr); @@ -585,6 +633,11 @@ if (err) goto steer_err; + err = mlx4_en_tunnel_steer_add(priv, priv->dev->dev_addr, *qpn, + &priv->tunnel_reg_id); + if (err) + goto tunnel_err; + entry = kmalloc(sizeof(*entry), GFP_KERNEL); if (!entry) { err = -ENOMEM; @@ -599,6 +652,9 @@ return 0; alloc_err: + if (priv->tunnel_reg_id) + mlx4_flow_detach(priv->mdev->dev, priv->tunnel_reg_id); +tunnel_err: mlx4_en_uc_steer_release(priv, priv->dev->dev_addr, *qpn, reg_id); steer_err: @@ -617,7 +673,7 @@ u64 mac; if (dev->caps.steering_mode == MLX4_STEERING_MODE_A0) { - mac = mlx4_en_mac_to_u64(priv->dev->dev_addr); + mac = mlx4_mac_to_u64(priv->dev->dev_addr); en_dbg(DRV, priv, "Registering MAC: %pM for deleting\n", priv->dev->dev_addr); mlx4_unregister_mac(dev, priv->port, mac); @@ -630,7 +686,7 @@ for (i = 0; i < MLX4_EN_MAC_HASH_SIZE; ++i) { bucket = &priv->mac_hash[i]; hlist_for_each_entry_safe(entry, tmp, bucket, hlist) { - mac = mlx4_en_mac_to_u64(entry->mac); + mac = mlx4_mac_to_u64(entry->mac); en_dbg(DRV, priv, "Registering MAC: %pM for deleting\n", entry->mac); mlx4_en_uc_steer_release(priv, entry->mac, @@ -642,6 +698,11 @@ } } + if (priv->tunnel_reg_id) { + mlx4_flow_detach(priv->mdev->dev, priv->tunnel_reg_id); + priv->tunnel_reg_id = 0; + } + en_dbg(DRV, priv, "Releasing qp: port %d, qpn %d\n", priv->port, qpn); mlx4_qp_release_range(dev, qpn, 1); @@ -655,14 +716,14 @@ struct mlx4_en_dev *mdev = priv->mdev; struct mlx4_dev *dev = mdev->dev; int err = 0; - u64 new_mac_u64 = mlx4_en_mac_to_u64(new_mac); + u64 new_mac_u64 = mlx4_mac_to_u64(new_mac); if (dev->caps.steering_mode != MLX4_STEERING_MODE_A0) { struct hlist_head *bucket; unsigned int mac_hash; struct mlx4_mac_entry *entry; struct hlist_node *tmp; - u64 prev_mac_u64 = mlx4_en_mac_to_u64(prev_mac); + u64 prev_mac_u64 = mlx4_mac_to_u64(prev_mac); bucket = &priv->mac_hash[prev_mac[MLX4_EN_MAC_HASH_IDX]]; hlist_for_each_entry_safe(entry, tmp, bucket, hlist) { @@ -682,6 +743,14 @@ err = mlx4_en_uc_steer_add(priv, new_mac, &qpn, &entry->reg_id); + if (err) + return err; + if (priv->tunnel_reg_id) { + mlx4_flow_detach(priv->mdev->dev, priv->tunnel_reg_id); + priv->tunnel_reg_id = 0; + } + err = mlx4_en_tunnel_steer_add(priv, new_mac, qpn, + &priv->tunnel_reg_id); return err; } } @@ -691,18 +760,6 @@ return __mlx4_replace_mac(dev, priv->port, qpn, new_mac_u64); } -u64 mlx4_en_mac_to_u64(u8 *addr) -{ - u64 mac = 0; - int i; - - for (i = 0; i < ETH_ALEN; i++) { - mac <<= 8; - mac |= addr[i]; - } - return mac; -} - static int mlx4_en_do_set_mac(struct mlx4_en_priv *priv) { int err = 0; @@ -782,7 +839,7 @@ list_for_each_entry(dst_tmp, dst, list) { found = false; list_for_each_entry(src_tmp, src, list) { - if (!memcmp(dst_tmp->addr, src_tmp->addr, ETH_ALEN)) { + if (ether_addr_equal(dst_tmp->addr, src_tmp->addr)) { found = true; break; } @@ -797,7 +854,7 @@ list_for_each_entry(src_tmp, src, list) { found = false; list_for_each_entry(dst_tmp, dst, list) { - if (!memcmp(dst_tmp->addr, src_tmp->addr, ETH_ALEN)) { + if (ether_addr_equal(dst_tmp->addr, src_tmp->addr)) { dst_tmp->action = MCLIST_NONE; found = true; break; @@ -1021,7 +1078,7 @@ mlx4_en_cache_mclist(dev); netif_addr_unlock_bh(dev); list_for_each_entry(mclist, &priv->mc_list, list) { - mcast_addr = mlx4_en_mac_to_u64(mclist->addr); + mcast_addr = mlx4_mac_to_u64(mclist->addr); mlx4_SET_MCAST_FLTR(mdev->dev, priv->port, mcast_addr, 0, MLX4_MCAST_CONFIG); } @@ -1044,6 +1101,12 @@ if (err) en_err(priv, "Fail to detach multicast address\n"); + if (mclist->tunnel_reg_id) { + err = mlx4_flow_detach(priv->mdev->dev, mclist->tunnel_reg_id); + if (err) + en_err(priv, "Failed to detach multicast address\n"); + } + /* remove from list */ list_del(&mclist->list); kfree(mclist); @@ -1061,6 +1124,10 @@ if (err) en_err(priv, "Fail to attach multicast address\n"); + err = mlx4_en_tunnel_steer_add(priv, &mc_list[10], priv->base_qpn, + &mclist->tunnel_reg_id); + if (err) + en_err(priv, "Failed to attach multicast address\n"); } } } @@ -1103,7 +1170,7 @@ found = true; if (!found) { - mac = mlx4_en_mac_to_u64(entry->mac); + mac = mlx4_mac_to_u64(entry->mac); mlx4_en_uc_steer_release(priv, entry->mac, priv->base_qpn, entry->reg_id); @@ -1146,7 +1213,7 @@ priv->flags |= MLX4_EN_FLAG_FORCE_PROMISC; break; } - mac = mlx4_en_mac_to_u64(ha->addr); + mac = mlx4_mac_to_u64(ha->addr); memcpy(entry->mac, ha->addr, ETH_ALEN); err = mlx4_register_mac(mdev->dev, priv->port, mac); if (err < 0) { @@ -1598,6 +1665,15 @@ goto tx_err; } + if (mdev->dev->caps.tunnel_offload_mode == MLX4_TUNNEL_OFFLOAD_MODE_VXLAN) { + err = mlx4_SET_PORT_VXLAN(mdev->dev, priv->port, VXLAN_STEER_BY_OUTER_MAC, 1); + if (err) { + en_err(priv, "Failed setting port L2 tunnel configuration, err %d\n", + err); + goto tx_err; + } + } + /* Init port */ en_dbg(HW, priv, "Initializing port\n"); err = mlx4_INIT_PORT(mdev->dev, priv->port); @@ -1622,6 +1698,10 @@ mlx4_set_stats_bitmap(mdev->dev, &priv->stats_bitmap); +#ifdef CONFIG_MLX4_EN_VXLAN + if (priv->mdev->dev->caps.flags2 & MLX4_DEV_CAP_FLAG2_VXLAN_OFFLOADS) + vxlan_get_rx_port(dev); +#endif priv->port_up = true; netif_tx_start_all_queues(dev); netif_device_attach(dev); @@ -1713,6 +1793,8 @@ mc_list[5] = priv->port; mlx4_multicast_detach(mdev->dev, &priv->rss_map.indir_qp, mc_list, MLX4_PROT_ETH, mclist->reg_id); + if (mclist->tunnel_reg_id) + mlx4_flow_detach(mdev->dev, mclist->tunnel_reg_id); } mlx4_en_clear_list(dev); list_for_each_entry_safe(mclist, tmp, &priv->curr_list, list) { @@ -1910,8 +1992,10 @@ prof->tx_ring_size, i, TX, node)) goto err; - if (mlx4_en_create_tx_ring(priv, &priv->tx_ring[i], priv->base_tx_qpn + i, - prof->tx_ring_size, TXBB_SIZE, node)) + if (mlx4_en_create_tx_ring(priv, &priv->tx_ring[i], + priv->base_tx_qpn + i, + prof->tx_ring_size, TXBB_SIZE, + node, i)) goto err; } @@ -2115,7 +2199,7 @@ { struct mlx4_en_priv *en_priv = netdev_priv(dev); struct mlx4_en_dev *mdev = en_priv->mdev; - u64 mac_u64 = mlx4_en_mac_to_u64(mac); + u64 mac_u64 = mlx4_mac_to_u64(mac); if (!is_valid_ether_addr(mac)) return -EINVAL; @@ -2154,6 +2238,104 @@ return mlx4_set_vf_link_state(mdev->dev, en_priv->port, vf, link_state); } + +#define PORT_ID_BYTE_LEN 8 +static int mlx4_en_get_phys_port_id(struct net_device *dev, + struct netdev_phys_port_id *ppid) +{ + struct mlx4_en_priv *priv = netdev_priv(dev); + struct mlx4_dev *mdev = priv->mdev->dev; + int i; + u64 phys_port_id = mdev->caps.phys_port_id[priv->port]; + + if (!phys_port_id) + return -EOPNOTSUPP; + + ppid->id_len = sizeof(phys_port_id); + for (i = PORT_ID_BYTE_LEN - 1; i >= 0; --i) { + ppid->id[i] = phys_port_id & 0xff; + phys_port_id >>= 8; + } + return 0; +} + +#ifdef CONFIG_MLX4_EN_VXLAN +static void mlx4_en_add_vxlan_offloads(struct work_struct *work) +{ + int ret; + struct mlx4_en_priv *priv = container_of(work, struct mlx4_en_priv, + vxlan_add_task); + + ret = mlx4_config_vxlan_port(priv->mdev->dev, priv->vxlan_port); + if (ret) + goto out; + + ret = mlx4_SET_PORT_VXLAN(priv->mdev->dev, priv->port, + VXLAN_STEER_BY_OUTER_MAC, 1); +out: + if (ret) + en_err(priv, "failed setting L2 tunnel configuration ret %d\n", ret); +} + +static void mlx4_en_del_vxlan_offloads(struct work_struct *work) +{ + int ret; + struct mlx4_en_priv *priv = container_of(work, struct mlx4_en_priv, + vxlan_del_task); + + ret = mlx4_SET_PORT_VXLAN(priv->mdev->dev, priv->port, + VXLAN_STEER_BY_OUTER_MAC, 0); + if (ret) + en_err(priv, "failed setting L2 tunnel configuration ret %d\n", ret); + + priv->vxlan_port = 0; +} + +static void mlx4_en_add_vxlan_port(struct net_device *dev, + sa_family_t sa_family, __be16 port) +{ + struct mlx4_en_priv *priv = netdev_priv(dev); + __be16 current_port; + + if (!(priv->mdev->dev->caps.flags2 & MLX4_DEV_CAP_FLAG2_VXLAN_OFFLOADS)) + return; + + if (sa_family == AF_INET6) + return; + + current_port = priv->vxlan_port; + if (current_port && current_port != port) { + en_warn(priv, "vxlan port %d configured, can't add port %d\n", + ntohs(current_port), ntohs(port)); + return; + } + + priv->vxlan_port = port; + queue_work(priv->mdev->workqueue, &priv->vxlan_add_task); +} + +static void mlx4_en_del_vxlan_port(struct net_device *dev, + sa_family_t sa_family, __be16 port) +{ + struct mlx4_en_priv *priv = netdev_priv(dev); + __be16 current_port; + + if (priv->mdev->dev->caps.tunnel_offload_mode != MLX4_TUNNEL_OFFLOAD_MODE_VXLAN) + return; + + if (sa_family == AF_INET6) + return; + + current_port = priv->vxlan_port; + if (current_port != port) { + en_dbg(DRV, priv, "vxlan port %d isn't configured, ignoring\n", ntohs(port)); + return; + } + + queue_work(priv->mdev->workqueue, &priv->vxlan_del_task); +} +#endif + static const struct net_device_ops mlx4_netdev_ops = { .ndo_open = mlx4_en_open, .ndo_stop = mlx4_en_close, @@ -2179,6 +2361,11 @@ #ifdef CONFIG_NET_RX_BUSY_POLL .ndo_busy_poll = mlx4_en_low_latency_recv, #endif + .ndo_get_phys_port_id = mlx4_en_get_phys_port_id, +#ifdef CONFIG_MLX4_EN_VXLAN + .ndo_add_vxlan_port = mlx4_en_add_vxlan_port, + .ndo_del_vxlan_port = mlx4_en_del_vxlan_port, +#endif }; static const struct net_device_ops mlx4_netdev_ops_master = { @@ -2207,6 +2394,7 @@ #ifdef CONFIG_RFS_ACCEL .ndo_rx_flow_steer = mlx4_en_filter_rfs, #endif + .ndo_get_phys_port_id = mlx4_en_get_phys_port_id, }; int mlx4_en_init_netdev(struct mlx4_en_dev *mdev, int port, @@ -2227,7 +2415,6 @@ netif_set_real_num_rx_queues(dev, prof->rx_ring_num); SET_NETDEV_DEV(dev, &mdev->dev->pdev->dev); - dev->dev_id = port - 1; /* * Initialize driver private data @@ -2269,6 +2456,10 @@ INIT_WORK(&priv->linkstate_task, mlx4_en_linkstate); INIT_DELAYED_WORK(&priv->stats_task, mlx4_en_do_get_stats); INIT_DELAYED_WORK(&priv->service_task, mlx4_en_service_task); +#ifdef CONFIG_MLX4_EN_VXLAN + INIT_WORK(&priv->vxlan_add_task, mlx4_en_add_vxlan_offloads); + INIT_WORK(&priv->vxlan_del_task, mlx4_en_del_vxlan_offloads); +#endif #ifdef CONFIG_MLX4_EN_DCB if (!mlx4_is_slave(priv->mdev->dev)) { if (mdev->dev->caps.flags & MLX4_DEV_CAP_FLAG_SET_ETH_SCHED) { @@ -2293,7 +2484,7 @@ if (mlx4_is_slave(priv->mdev->dev)) { eth_hw_addr_random(dev); en_warn(priv, "Assigned random MAC address %pM\n", dev->dev_addr); - mac_u64 = mlx4_en_mac_to_u64(dev->dev_addr); + mac_u64 = mlx4_mac_to_u64(dev->dev_addr); mdev->dev->caps.def_mac[priv->port] = mac_u64; } else { en_err(priv, "Port: %d, invalid mac burned: %pM, quiting\n", @@ -2365,6 +2556,13 @@ if (mdev->dev->caps.steering_mode != MLX4_STEERING_MODE_A0) dev->priv_flags |= IFF_UNICAST_FLT; + if (mdev->dev->caps.tunnel_offload_mode == MLX4_TUNNEL_OFFLOAD_MODE_VXLAN) { + dev->hw_enc_features |= NETIF_F_IP_CSUM | NETIF_F_RXCSUM | + NETIF_F_TSO | NETIF_F_GSO_UDP_TUNNEL; + dev->hw_features |= NETIF_F_GSO_UDP_TUNNEL; + dev->features |= NETIF_F_GSO_UDP_TUNNEL; + } + mdev->pndev[port] = dev; netif_carrier_off(dev); @@ -2394,6 +2592,15 @@ goto out; } + if (mdev->dev->caps.tunnel_offload_mode == MLX4_TUNNEL_OFFLOAD_MODE_VXLAN) { + err = mlx4_SET_PORT_VXLAN(mdev->dev, priv->port, VXLAN_STEER_BY_OUTER_MAC, 1); + if (err) { + en_err(priv, "Failed setting port L2 tunnel configuration, err %d\n", + err); + goto out; + } + } + /* Init port */ en_warn(priv, "Initializing port\n"); err = mlx4_INIT_PORT(mdev->dev, priv->port); --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/en_port.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/en_port.c @@ -148,10 +148,16 @@ stats->tx_packets = 0; stats->tx_bytes = 0; priv->port_stats.tx_chksum_offload = 0; + priv->port_stats.queue_stopped = 0; + priv->port_stats.wake_queue = 0; + for (i = 0; i < priv->tx_ring_num; i++) { stats->tx_packets += priv->tx_ring[i]->packets; stats->tx_bytes += priv->tx_ring[i]->bytes; priv->port_stats.tx_chksum_offload += priv->tx_ring[i]->tx_csum; + priv->port_stats.queue_stopped += + priv->tx_ring[i]->queue_stopped; + priv->port_stats.wake_queue += priv->tx_ring[i]->wake_queue; } stats->rx_errors = be64_to_cpu(mlx4_en_stats->PCS) + --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/en_resources.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/en_resources.c @@ -68,6 +68,12 @@ context->db_rec_addr = cpu_to_be64(priv->res.db.dma << 2); if (!(dev->features & NETIF_F_HW_VLAN_CTAG_RX)) context->param3 |= cpu_to_be32(1 << 30); + + if (!is_tx && !rss && + (mdev->dev->caps.tunnel_offload_mode == MLX4_TUNNEL_OFFLOAD_MODE_VXLAN)) { + en_dbg(HW, priv, "Setting RX qp %x tunnel mode to RX tunneled & non-tunneled\n", qpn); + context->srqn = cpu_to_be32(7 << 28); /* this fills bits 30:28 */ + } } --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/en_rx.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/en_rx.c @@ -318,6 +318,31 @@ } } +void mlx4_en_set_num_rx_rings(struct mlx4_en_dev *mdev) +{ + int i; + int num_of_eqs; + int num_rx_rings; + struct mlx4_dev *dev = mdev->dev; + + mlx4_foreach_port(i, dev, MLX4_PORT_TYPE_ETH) { + if (!dev->caps.comp_pool) + num_of_eqs = max_t(int, MIN_RX_RINGS, + min_t(int, + dev->caps.num_comp_vectors, + DEF_RX_RINGS)); + else + num_of_eqs = min_t(int, MAX_MSIX_P_PORT, + dev->caps.comp_pool/ + dev->caps.num_ports) - 1; + + num_rx_rings = min_t(int, num_of_eqs, + netif_get_num_default_rss_queues()); + mdev->profile.prof[i].rx_ring_num = + rounddown_pow_of_two(num_rx_rings); + } +} + int mlx4_en_create_rx_ring(struct mlx4_en_priv *priv, struct mlx4_en_rx_ring **pring, u32 size, u16 stride, int node) @@ -631,10 +656,14 @@ int ip_summed; int factor = priv->cqe_factor; u64 timestamp; + bool l2_tunnel; if (!priv->port_up) return 0; + if (budget <= 0) + return polled; + /* We assume a 1:1 mapping between CQEs and Rx descriptors, so Rx * descriptor offset can be deduced from the CQE index instead of * reading 'cqe->index' */ @@ -709,6 +738,8 @@ length -= ring->fcs_del; ring->bytes += length; ring->packets++; + l2_tunnel = (dev->hw_enc_features & NETIF_F_RXCSUM) && + (cqe->vlan_my_qpn & cpu_to_be32(MLX4_CQE_L2_TUNNEL)); if (likely(dev->features & NETIF_F_RXCSUM)) { if ((cqe->status & cpu_to_be16(MLX4_CQE_STATUS_IPOK)) && @@ -721,7 +752,7 @@ * - not an IP fragment * - no LLS polling in progress */ - if (!mlx4_en_cq_ll_polling(cq) && + if (!mlx4_en_cq_busy_polling(cq) && (dev->features & NETIF_F_GRO)) { struct sk_buff *gro_skb = napi_get_frags(&cq->napi); if (!gro_skb) @@ -738,6 +769,8 @@ gro_skb->data_len = length; gro_skb->ip_summed = CHECKSUM_UNNECESSARY; + if (l2_tunnel) + gro_skb->encapsulation = 1; if ((cqe->vlan_my_qpn & cpu_to_be32(MLX4_CQE_VLAN_PRESENT_MASK)) && (dev->features & NETIF_F_HW_VLAN_CTAG_RX)) { @@ -788,6 +821,9 @@ skb->protocol = eth_type_trans(skb, dev); skb_record_rx_queue(skb, cq->ring); + if (l2_tunnel) + skb->encapsulation = 1; + if (dev->features & NETIF_F_RXHASH) skb->rxhash = be32_to_cpu(cqe->immed_rss_invalid); @@ -804,8 +840,10 @@ skb_mark_napi_id(skb, &cq->napi); - /* Push it up the stack */ - netif_receive_skb(skb); + if (!mlx4_en_cq_busy_polling(cq)) + napi_gro_receive(&cq->napi, skb); + else + netif_receive_skb(skb); next: for (nr = 0; nr < priv->num_frags; nr++) @@ -1053,6 +1091,12 @@ rss_mask |= MLX4_RSS_UDP_IPV4 | MLX4_RSS_UDP_IPV6; rss_context->base_qpn_udp = rss_context->default_qpn; } + + if (mdev->dev->caps.tunnel_offload_mode == MLX4_TUNNEL_OFFLOAD_MODE_VXLAN) { + en_info(priv, "Setting RSS context tunnel type to RSS on inner headers\n"); + rss_mask |= MLX4_RSS_BY_INNER_HEADERS; + } + rss_context->flags = rss_mask; rss_context->hash_fn = MLX4_RSS_HASH_TOP; for (i = 0; i < 10; i++) --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/en_selftest.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/en_selftest.c @@ -129,8 +129,10 @@ if (mlx4_en_QUERY_PORT(priv->mdev, priv->port)) return -ENOMEM; - /* The device currently only supports 10G speed */ - if (priv->port_state.link_speed != SPEED_10000) + /* The device supports 1G, 10G and 40G speeds */ + if (priv->port_state.link_speed != 1000 && + priv->port_state.link_speed != 10000 && + priv->port_state.link_speed != 40000) return priv->port_state.link_speed; return 0; } --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/en_tx.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/en_tx.c @@ -39,23 +39,14 @@ #include #include #include +#include #include #include "mlx4_en.h" -enum { - MAX_INLINE = 104, /* 128 - 16 - 4 - 4 */ - MAX_BF = 256, -}; - -static int inline_thold __read_mostly = MAX_INLINE; - -module_param_named(inline_thold, inline_thold, int, 0444); -MODULE_PARM_DESC(inline_thold, "threshold for using inline data"); - int mlx4_en_create_tx_ring(struct mlx4_en_priv *priv, struct mlx4_en_tx_ring **pring, int qpn, u32 size, - u16 stride, int node) + u16 stride, int node, int queue_index) { struct mlx4_en_dev *mdev = priv->mdev; struct mlx4_en_tx_ring *ring; @@ -74,8 +65,7 @@ ring->size = size; ring->size_mask = size - 1; ring->stride = stride; - - inline_thold = min(inline_thold, MAX_INLINE); + ring->inline_thold = priv->prof->inline_thold; tmp = size * sizeof(struct mlx4_en_tx_info); ring->tx_info = vmalloc_node(tmp, node); @@ -140,6 +130,10 @@ ring->bf_enabled = true; ring->hwtstamp_tx_type = priv->hwtstamp_config.tx_type; + ring->queue_index = queue_index; + + if (queue_index < priv->num_tx_rings_p_up && cpu_online(queue_index)) + cpumask_set_cpu(queue_index, &ring->affinity_mask); *pring = ring; return 0; @@ -206,6 +200,9 @@ err = mlx4_qp_to_ready(mdev->dev, &ring->wqres.mtt, &ring->context, &ring->qp, &ring->qp_state); + if (!user_prio && cpu_online(ring->queue_index)) + netif_set_xps_queue(priv->dev, &ring->affinity_mask, + ring->queue_index); return err; } @@ -354,7 +351,9 @@ return cnt; } -static void mlx4_en_process_tx_cq(struct net_device *dev, struct mlx4_en_cq *cq) +static int mlx4_en_process_tx_cq(struct net_device *dev, + struct mlx4_en_cq *cq, + int budget) { struct mlx4_en_priv *priv = netdev_priv(dev); struct mlx4_cq *mcq = &cq->mcq; @@ -372,9 +371,10 @@ u32 bytes = 0; int factor = priv->cqe_factor; u64 timestamp = 0; + int done = 0; if (!priv->port_up) - return; + return 0; index = cons_index & size_mask; cqe = &buf[(index << factor) + factor]; @@ -383,7 +383,7 @@ /* Process all completed CQEs */ while (XNOR(cqe->owner_sr_opcode & MLX4_CQE_OWNER_MASK, - cons_index & size)) { + cons_index & size) && (done < budget)) { /* * make sure we read the CQE after we read the * ownership bit @@ -421,7 +421,7 @@ txbbs_stamp = txbbs_skipped; packets++; bytes += ring->tx_info[ring_index].nr_bytes; - } while (ring_index != new_index); + } while ((++done < budget) && (ring_index != new_index)); ++cons_index; index = cons_index & size_mask; @@ -445,8 +445,9 @@ */ if (netif_tx_queue_stopped(ring->tx_queue) && txbbs_skipped > 0) { netif_tx_wake_queue(ring->tx_queue); - priv->port_stats.wake_queue++; + ring->wake_queue++; } + return done; } void mlx4_en_tx_irq(struct mlx4_cq *mcq) @@ -454,10 +455,31 @@ struct mlx4_en_cq *cq = container_of(mcq, struct mlx4_en_cq, mcq); struct mlx4_en_priv *priv = netdev_priv(cq->dev); - mlx4_en_process_tx_cq(cq->dev, cq); - mlx4_en_arm_cq(priv, cq); + if (priv->port_up) + napi_schedule(&cq->napi); + else + mlx4_en_arm_cq(priv, cq); } +/* TX CQ polling - called by NAPI */ +int mlx4_en_poll_tx_cq(struct napi_struct *napi, int budget) +{ + struct mlx4_en_cq *cq = container_of(napi, struct mlx4_en_cq, napi); + struct net_device *dev = cq->dev; + struct mlx4_en_priv *priv = netdev_priv(dev); + int done; + + done = mlx4_en_process_tx_cq(dev, cq, budget); + + /* If we used up all the quota - we're probably not done yet... */ + if (done < budget) { + /* Done for now */ + napi_complete(napi); + mlx4_en_arm_cq(priv, cq); + return done; + } + return budget; +} static struct mlx4_en_tx_desc *mlx4_en_bounce_to_desc(struct mlx4_en_priv *priv, struct mlx4_en_tx_ring *ring, @@ -487,7 +509,7 @@ return ring->buf + index * TXBB_SIZE; } -static int is_inline(struct sk_buff *skb, void **pfrag) +static int is_inline(int inline_thold, struct sk_buff *skb, void **pfrag) { void *ptr; @@ -528,7 +550,10 @@ int real_size; if (skb_is_gso(skb)) { - *lso_header_size = skb_transport_offset(skb) + tcp_hdrlen(skb); + if (skb->encapsulation) + *lso_header_size = (skb_inner_transport_header(skb) - skb->data) + inner_tcp_hdrlen(skb); + else + *lso_header_size = skb_transport_offset(skb) + tcp_hdrlen(skb); real_size = CTRL_SIZE + skb_shinfo(skb)->nr_frags * DS_SIZE + ALIGN(*lso_header_size + 4, DS_SIZE); if (unlikely(*lso_header_size != skb_headlen(skb))) { @@ -544,7 +569,7 @@ } } else { *lso_header_size = 0; - if (!is_inline(skb, NULL)) + if (!is_inline(priv->prof->inline_thold, skb, NULL)) real_size = CTRL_SIZE + (skb_shinfo(skb)->nr_frags + 1) * DS_SIZE; else real_size = inline_size(skb); @@ -560,7 +585,13 @@ int spc = MLX4_INLINE_ALIGN - CTRL_SIZE - sizeof *inl; if (skb->len <= spc) { - inl->byte_count = cpu_to_be32(1 << 31 | skb->len); + if (likely(skb->len >= MIN_PKT_LEN)) { + inl->byte_count = cpu_to_be32(1 << 31 | skb->len); + } else { + inl->byte_count = cpu_to_be32(1 << 31 | MIN_PKT_LEN); + memset(((void *)(inl + 1)) + skb->len, 0, + MIN_PKT_LEN - skb->len); + } skb_copy_from_linear_data(skb, inl + 1, skb_headlen(skb)); if (skb_shinfo(skb)->nr_frags) memcpy(((void *)(inl + 1)) + skb_headlen(skb), fragptr, @@ -593,7 +624,7 @@ } u16 mlx4_en_select_queue(struct net_device *dev, struct sk_buff *skb, - void *accel_priv) + void *accel_priv, select_queue_fallback_t fallback) { struct mlx4_en_priv *priv = netdev_priv(dev); u16 rings_p_up = priv->num_tx_rings_p_up; @@ -605,7 +636,7 @@ if (vlan_tx_tag_present(skb)) up = vlan_tx_tag_get(skb) >> VLAN_PRIO_SHIFT; - return __netdev_pick_tx(dev, skb) % rings_p_up + up * rings_p_up; + return fallback(dev, skb) % rings_p_up + up * rings_p_up; } static void mlx4_bf_copy(void __iomem *dst, unsigned long *src, unsigned bytecnt) @@ -660,7 +691,7 @@ ring->size - HEADROOM - MAX_DESC_TXBBS)) { /* every full Tx ring stops queue */ netif_tx_stop_queue(ring->tx_queue); - priv->port_stats.queue_stopped++; + ring->queue_stopped++; /* If queue was emptied after the if, and before the * stop_queue - need to wake the queue, or else it will remain @@ -673,7 +704,7 @@ if (unlikely(((int)(ring->prod - ring->cons)) <= ring->size - HEADROOM - MAX_DESC_TXBBS)) { netif_tx_wake_queue(ring->tx_queue); - priv->port_stats.wake_queue++; + ring->wake_queue++; } else { return NETDEV_TX_BUSY; } @@ -711,11 +742,11 @@ tx_info->data_offset = (void *)data - (void *)tx_desc; tx_info->linear = (lso_header_size < skb_headlen(skb) && - !is_inline(skb, NULL)) ? 1 : 0; + !is_inline(ring->inline_thold, skb, NULL)) ? 1 : 0; data += skb_shinfo(skb)->nr_frags + tx_info->linear - 1; - if (is_inline(skb, &fragptr)) { + if (is_inline(ring->inline_thold, skb, &fragptr)) { tx_info->inl = 1; } else { /* Map fragments */ @@ -828,6 +859,14 @@ tx_info->inl = 1; } + if (skb->encapsulation) { + struct iphdr *ipv4 = (struct iphdr *)skb_inner_network_header(skb); + if (ipv4->protocol == IPPROTO_TCP || ipv4->protocol == IPPROTO_UDP) + op_own |= cpu_to_be32(MLX4_WQE_CTRL_IIP | MLX4_WQE_CTRL_ILP); + else + op_own |= cpu_to_be32(MLX4_WQE_CTRL_IIP); + } + ring->prod += nr_txbb; /* If we used a bounce buffer then copy descriptor back into place */ @@ -837,7 +876,8 @@ skb_tx_timestamp(skb); if (ring->bf_enabled && desc_size <= MAX_BF && !bounce && !vlan_tx_tag_present(skb)) { - *(__be32 *) (&tx_desc->ctrl.vlan_tag) |= cpu_to_be32(ring->doorbell_qpn); + tx_desc->ctrl.bf_qpn |= cpu_to_be32(ring->doorbell_qpn); + op_own |= htonl((bf_index & 0xffff) << 8); /* Ensure new descirptor hits memory * before setting ownership of this descriptor to HW */ --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/eq.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/eq.c @@ -272,7 +272,10 @@ { struct mlx4_priv *priv = mlx4_priv(dev); struct mlx4_slave_state *s_state = priv->mfunc.master.slave_state; - if (slave >= dev->num_slaves || port > MLX4_MAX_PORTS) { + struct mlx4_active_ports actv_ports = mlx4_get_active_ports(dev, slave); + + if (slave >= dev->num_slaves || port > dev->caps.num_ports || + port <= 0 || !test_bit(port - 1, actv_ports.ports)) { pr_err("%s: Error: asking for slave:%d, port:%d\n", __func__, slave, port); return SLAVE_PORT_DOWN; @@ -286,8 +289,10 @@ { struct mlx4_priv *priv = mlx4_priv(dev); struct mlx4_slave_state *s_state = priv->mfunc.master.slave_state; + struct mlx4_active_ports actv_ports = mlx4_get_active_ports(dev, slave); - if (slave >= dev->num_slaves || port > MLX4_MAX_PORTS || port == 0) { + if (slave >= dev->num_slaves || port > dev->caps.num_ports || + port <= 0 || !test_bit(port - 1, actv_ports.ports)) { pr_err("%s: Error: asking for slave:%d, port:%d\n", __func__, slave, port); return -1; @@ -301,9 +306,13 @@ { int i; enum slave_port_gen_event gen_event; + struct mlx4_slaves_pport slaves_pport = mlx4_phys_to_slaves_pport(dev, + port); - for (i = 0; i < dev->num_slaves; i++) - set_and_calc_slave_port_state(dev, i, port, event, &gen_event); + for (i = 0; i < dev->num_vfs + 1; i++) + if (test_bit(i, slaves_pport.slaves)) + set_and_calc_slave_port_state(dev, i, port, + event, &gen_event); } /************************************************************************** The function get as input the new event to that port, @@ -322,12 +331,14 @@ struct mlx4_slave_state *ctx = NULL; unsigned long flags; int ret = -1; + struct mlx4_active_ports actv_ports = mlx4_get_active_ports(dev, slave); enum slave_port_state cur_state = mlx4_get_slave_port_state(dev, slave, port); *gen_event = SLAVE_PORT_GEN_EVENT_NONE; - if (slave >= dev->num_slaves || port > MLX4_MAX_PORTS || port == 0) { + if (slave >= dev->num_slaves || port > dev->caps.num_ports || + port <= 0 || !test_bit(port - 1, actv_ports.ports)) { pr_err("%s: Error: asking for slave:%d, port:%d\n", __func__, slave, port); return ret; @@ -543,15 +554,19 @@ be64_to_cpu(eqe->event.cmd.out_param)); break; - case MLX4_EVENT_TYPE_PORT_CHANGE: + case MLX4_EVENT_TYPE_PORT_CHANGE: { + struct mlx4_slaves_pport slaves_port; port = be32_to_cpu(eqe->event.port_change.port) >> 28; + slaves_port = mlx4_phys_to_slaves_pport(dev, port); if (eqe->subtype == MLX4_PORT_CHANGE_SUBTYPE_DOWN) { mlx4_dispatch_event(dev, MLX4_DEV_EVENT_PORT_DOWN, port); mlx4_priv(dev)->sense.do_sense_port[port] = 1; if (!mlx4_is_master(dev)) break; - for (i = 0; i < dev->num_slaves; i++) { + for (i = 0; i < dev->num_vfs + 1; i++) { + if (!test_bit(i, slaves_port.slaves)) + continue; if (dev->caps.port_type[port] == MLX4_PORT_TYPE_ETH) { if (i == mlx4_master_func_num(dev)) continue; @@ -559,8 +574,13 @@ " to slave: %d, port:%d\n", __func__, i, port); s_info = &priv->mfunc.master.vf_oper[slave].vport[port].state; - if (IFLA_VF_LINK_STATE_AUTO == s_info->link_state) + if (IFLA_VF_LINK_STATE_AUTO == s_info->link_state) { + eqe->event.port_change.port = + cpu_to_be32( + (be32_to_cpu(eqe->event.port_change.port) & 0xFFFFFFF) + | (mlx4_phys_to_slave_port(dev, i, port) << 28)); mlx4_slave_event(dev, i, eqe); + } } else { /* IB port */ set_and_calc_slave_port_state(dev, i, port, MLX4_PORT_STATE_DEV_EVENT_PORT_DOWN, @@ -581,12 +601,19 @@ if (!mlx4_is_master(dev)) break; if (dev->caps.port_type[port] == MLX4_PORT_TYPE_ETH) - for (i = 0; i < dev->num_slaves; i++) { + for (i = 0; i < dev->num_vfs + 1; i++) { + if (!test_bit(i, slaves_port.slaves)) + continue; if (i == mlx4_master_func_num(dev)) continue; s_info = &priv->mfunc.master.vf_oper[slave].vport[port].state; - if (IFLA_VF_LINK_STATE_AUTO == s_info->link_state) + if (IFLA_VF_LINK_STATE_AUTO == s_info->link_state) { + eqe->event.port_change.port = + cpu_to_be32( + (be32_to_cpu(eqe->event.port_change.port) & 0xFFFFFFF) + | (mlx4_phys_to_slave_port(dev, i, port) << 28)); mlx4_slave_event(dev, i, eqe); + } } else /* IB port */ /* port-up event will be sent to a slave when the @@ -595,6 +622,7 @@ set_all_slave_state(dev, port, MLX4_DEV_EVENT_PORT_UP); } break; + } case MLX4_EVENT_TYPE_CQ_ERROR: mlx4_warn(dev, "CQ %s on CQN %06x\n", @@ -963,7 +991,7 @@ mlx4_mtt_cleanup(dev, &eq->mtt); err_out_free_eq: - mlx4_bitmap_free(&priv->eq_table.bitmap, eq->eqn); + mlx4_bitmap_free(&priv->eq_table.bitmap, eq->eqn, MLX4_USE_RR); err_out_free_pages: for (i = 0; i < npages; ++i) @@ -1018,7 +1046,7 @@ eq->page_list[i].map); kfree(eq->page_list); - mlx4_bitmap_free(&priv->eq_table.bitmap, eq->eqn); + mlx4_bitmap_free(&priv->eq_table.bitmap, eq->eqn, MLX4_USE_RR); mlx4_free_cmd_mailbox(dev, mailbox); } --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/fw.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/fw.c @@ -129,12 +129,14 @@ [0] = "RSS support", [1] = "RSS Toeplitz Hash Function support", [2] = "RSS XOR Hash Function support", - [3] = "Device manage flow steering support", + [3] = "Device managed flow steering support", [4] = "Automatic MAC reassignment support", [5] = "Time stamping support", [6] = "VST (control vlan insertion/stripping) support", [7] = "FSM (MAC anti-spoofing) support", - [8] = "Dynamic QP updates support" + [8] = "Dynamic QP updates support", + [9] = "Device managed flow steering IPoIB support", + [10] = "TCP/IP offloads/flow-steering for VXLAN support" }; int i; @@ -207,29 +209,41 @@ /* when opcode modifier = 1 */ #define QUERY_FUNC_CAP_PHYS_PORT_OFFSET 0x3 -#define QUERY_FUNC_CAP_RDMA_PROPS_OFFSET 0x8 -#define QUERY_FUNC_CAP_ETH_PROPS_OFFSET 0xc +#define QUERY_FUNC_CAP_FLAGS0_OFFSET 0x8 +#define QUERY_FUNC_CAP_FLAGS1_OFFSET 0xc #define QUERY_FUNC_CAP_QP0_TUNNEL 0x10 #define QUERY_FUNC_CAP_QP0_PROXY 0x14 #define QUERY_FUNC_CAP_QP1_TUNNEL 0x18 #define QUERY_FUNC_CAP_QP1_PROXY 0x1c +#define QUERY_FUNC_CAP_PHYS_PORT_ID 0x28 -#define QUERY_FUNC_CAP_ETH_PROPS_FORCE_MAC 0x40 -#define QUERY_FUNC_CAP_ETH_PROPS_FORCE_VLAN 0x80 +#define QUERY_FUNC_CAP_FLAGS1_FORCE_MAC 0x40 +#define QUERY_FUNC_CAP_FLAGS1_FORCE_VLAN 0x80 +#define QUERY_FUNC_CAP_FLAGS1_NIC_INFO 0x10 -#define QUERY_FUNC_CAP_RDMA_PROPS_FORCE_PHY_WQE_GID 0x80 +#define QUERY_FUNC_CAP_FLAGS0_FORCE_PHY_WQE_GID 0x80 if (vhcr->op_modifier == 1) { - field = 0; - /* ensure force vlan and force mac bits are not set */ - MLX4_PUT(outbox->buf, field, QUERY_FUNC_CAP_ETH_PROPS_OFFSET); - /* ensure that phy_wqe_gid bit is not set */ - MLX4_PUT(outbox->buf, field, QUERY_FUNC_CAP_RDMA_PROPS_OFFSET); - - field = vhcr->in_modifier; /* phys-port = logical-port */ + struct mlx4_active_ports actv_ports = + mlx4_get_active_ports(dev, slave); + int converted_port = mlx4_slave_convert_port( + dev, slave, vhcr->in_modifier); + + if (converted_port < 0) + return -EINVAL; + + vhcr->in_modifier = converted_port; + /* Set nic_info bit to mark new fields support */ + field = QUERY_FUNC_CAP_FLAGS1_NIC_INFO; + MLX4_PUT(outbox->buf, field, QUERY_FUNC_CAP_FLAGS1_OFFSET); + + /* phys-port = logical-port */ + field = vhcr->in_modifier - + find_first_bit(actv_ports.ports, dev->caps.num_ports); MLX4_PUT(outbox->buf, field, QUERY_FUNC_CAP_PHYS_PORT_OFFSET); + field = vhcr->in_modifier; /* size is now the QP number */ size = dev->phys_caps.base_tunnel_sqpn + 8 * slave + field - 1; MLX4_PUT(outbox->buf, size, QUERY_FUNC_CAP_QP0_TUNNEL); @@ -243,13 +257,20 @@ size += 2; MLX4_PUT(outbox->buf, size, QUERY_FUNC_CAP_QP1_PROXY); + MLX4_PUT(outbox->buf, dev->caps.phys_port_id[vhcr->in_modifier], + QUERY_FUNC_CAP_PHYS_PORT_ID); + } else if (vhcr->op_modifier == 0) { + struct mlx4_active_ports actv_ports = + mlx4_get_active_ports(dev, slave); /* enable rdma and ethernet interfaces, and new quota locations */ field = (QUERY_FUNC_CAP_FLAG_ETH | QUERY_FUNC_CAP_FLAG_RDMA | QUERY_FUNC_CAP_FLAG_QUOTAS); MLX4_PUT(outbox->buf, field, QUERY_FUNC_CAP_FLAGS_OFFSET); - field = dev->caps.num_ports; + field = min( + bitmap_weight(actv_ports.ports, dev->caps.num_ports), + dev->caps.num_ports); MLX4_PUT(outbox->buf, field, QUERY_FUNC_CAP_NUM_PORTS_OFFSET); size = dev->caps.function_caps; /* set PF behaviours */ @@ -391,22 +412,22 @@ goto out; } + MLX4_GET(func_cap->flags1, outbox, QUERY_FUNC_CAP_FLAGS1_OFFSET); if (dev->caps.port_type[gen_or_port] == MLX4_PORT_TYPE_ETH) { - MLX4_GET(field, outbox, QUERY_FUNC_CAP_ETH_PROPS_OFFSET); - if (field & QUERY_FUNC_CAP_ETH_PROPS_FORCE_VLAN) { + if (func_cap->flags1 & QUERY_FUNC_CAP_FLAGS1_OFFSET) { mlx4_err(dev, "VLAN is enforced on this port\n"); err = -EPROTONOSUPPORT; goto out; } - if (field & QUERY_FUNC_CAP_ETH_PROPS_FORCE_MAC) { + if (func_cap->flags1 & QUERY_FUNC_CAP_FLAGS1_FORCE_MAC) { mlx4_err(dev, "Force mac is enabled on this port\n"); err = -EPROTONOSUPPORT; goto out; } } else if (dev->caps.port_type[gen_or_port] == MLX4_PORT_TYPE_IB) { - MLX4_GET(field, outbox, QUERY_FUNC_CAP_RDMA_PROPS_OFFSET); - if (field & QUERY_FUNC_CAP_RDMA_PROPS_FORCE_PHY_WQE_GID) { + MLX4_GET(field, outbox, QUERY_FUNC_CAP_FLAGS0_OFFSET); + if (field & QUERY_FUNC_CAP_FLAGS0_FORCE_PHY_WQE_GID) { mlx4_err(dev, "phy_wqe_gid is " "enforced on this ib port\n"); err = -EPROTONOSUPPORT; @@ -433,6 +454,10 @@ MLX4_GET(size, outbox, QUERY_FUNC_CAP_QP1_PROXY); func_cap->qp1_proxy_qpn = size & 0xFFFFFF; + if (func_cap->flags1 & QUERY_FUNC_CAP_FLAGS1_NIC_INFO) + MLX4_GET(func_cap->phys_port_id, outbox, + QUERY_FUNC_CAP_PHYS_PORT_ID); + /* All other resources are allocated by the master, but we still report * 'num' and 'reserved' capabilities as follows: * - num remains the maximum resource index @@ -513,6 +538,7 @@ #define QUERY_DEV_CAP_MAX_XRC_OFFSET 0x67 #define QUERY_DEV_CAP_MAX_COUNTERS_OFFSET 0x68 #define QUERY_DEV_CAP_EXT_2_FLAGS_OFFSET 0x70 +#define QUERY_DEV_CAP_FLOW_STEERING_IPOIB_OFFSET 0x74 #define QUERY_DEV_CAP_FLOW_STEERING_RANGE_EN_OFFSET 0x76 #define QUERY_DEV_CAP_FLOW_STEERING_MAX_QP_OFFSET 0x77 #define QUERY_DEV_CAP_RDMARC_ENTRY_SZ_OFFSET 0x80 @@ -529,6 +555,7 @@ #define QUERY_DEV_CAP_RSVD_LKEY_OFFSET 0x98 #define QUERY_DEV_CAP_MAX_ICM_SZ_OFFSET 0xa0 #define QUERY_DEV_CAP_FW_REASSIGN_MAC 0x9d +#define QUERY_DEV_CAP_VXLAN 0x9e dev_cap->flags2 = 0; mailbox = mlx4_alloc_cmd_mailbox(dev); @@ -603,6 +630,9 @@ if (field & 0x80) dev_cap->flags2 |= MLX4_DEV_CAP_FLAG2_FS_EN; dev_cap->fs_log_max_ucast_qp_range_size = field & 0x1f; + MLX4_GET(field, outbox, QUERY_DEV_CAP_FLOW_STEERING_IPOIB_OFFSET); + if (field & 0x80) + dev_cap->flags2 |= MLX4_DEV_CAP_FLAG2_DMFS_IPOIB; MLX4_GET(field, outbox, QUERY_DEV_CAP_FLOW_STEERING_MAX_QP_OFFSET); dev_cap->fs_max_num_qp_per_entry = field; MLX4_GET(stat_rate, outbox, QUERY_DEV_CAP_RATE_SUPPORT_OFFSET); @@ -694,6 +724,9 @@ MLX4_GET(field, outbox, QUERY_DEV_CAP_FW_REASSIGN_MAC); if (field & 1<<6) dev_cap->flags2 |= MLX4_DEV_CAP_FLAG2_REASSIGN_MAC_EN; + MLX4_GET(field, outbox, QUERY_DEV_CAP_VXLAN); + if (field & 1<<3) + dev_cap->flags2 |= MLX4_DEV_CAP_FLAG2_VXLAN_OFFLOADS; MLX4_GET(dev_cap->max_icm_sz, outbox, QUERY_DEV_CAP_MAX_ICM_SZ_OFFSET); if (dev_cap->flags & MLX4_DEV_CAP_FLAG_COUNTERS) @@ -823,6 +856,10 @@ int err = 0; u8 field; u32 bmme_flags; + int real_port; + int slave_port; + int first_port; + struct mlx4_active_ports actv_ports; err = mlx4_cmd_box(dev, 0, outbox->dma, 0, 0, MLX4_CMD_QUERY_DEV_CAP, MLX4_CMD_TIME_CLASS_A, MLX4_CMD_NATIVE); @@ -835,20 +872,43 @@ MLX4_GET(flags, outbox->buf, QUERY_DEV_CAP_EXT_FLAGS_OFFSET); flags |= MLX4_DEV_CAP_FLAG_PORT_MNG_CHG_EV; flags &= ~MLX4_DEV_CAP_FLAG_MEM_WINDOW; + actv_ports = mlx4_get_active_ports(dev, slave); + first_port = find_first_bit(actv_ports.ports, dev->caps.num_ports); + for (slave_port = 0, real_port = first_port; + real_port < first_port + + bitmap_weight(actv_ports.ports, dev->caps.num_ports); + ++real_port, ++slave_port) { + if (flags & (MLX4_DEV_CAP_FLAG_WOL_PORT1 << real_port)) + flags |= MLX4_DEV_CAP_FLAG_WOL_PORT1 << slave_port; + else + flags &= ~(MLX4_DEV_CAP_FLAG_WOL_PORT1 << slave_port); + } + for (; slave_port < dev->caps.num_ports; ++slave_port) + flags &= ~(MLX4_DEV_CAP_FLAG_WOL_PORT1 << slave_port); MLX4_PUT(outbox->buf, flags, QUERY_DEV_CAP_EXT_FLAGS_OFFSET); + MLX4_GET(field, outbox->buf, QUERY_DEV_CAP_VL_PORT_OFFSET); + field &= ~0x0F; + field |= bitmap_weight(actv_ports.ports, dev->caps.num_ports) & 0x0F; + MLX4_PUT(outbox->buf, field, QUERY_DEV_CAP_VL_PORT_OFFSET); + /* For guests, disable timestamp */ MLX4_GET(field, outbox->buf, QUERY_DEV_CAP_CQ_TS_SUPPORT_OFFSET); field &= 0x7f; MLX4_PUT(outbox->buf, field, QUERY_DEV_CAP_CQ_TS_SUPPORT_OFFSET); + /* For guests, disable vxlan tunneling */ + MLX4_GET(field, outbox->buf, QUERY_DEV_CAP_VXLAN); + field &= 0xf7; + MLX4_PUT(outbox->buf, field, QUERY_DEV_CAP_VXLAN); + /* For guests, report Blueflame disabled */ MLX4_GET(field, outbox->buf, QUERY_DEV_CAP_BF_OFFSET); field &= 0x7f; MLX4_PUT(outbox->buf, field, QUERY_DEV_CAP_BF_OFFSET); /* For guests, disable mw type 2 */ - MLX4_GET(bmme_flags, outbox, QUERY_DEV_CAP_BMME_FLAGS_OFFSET); + MLX4_GET(bmme_flags, outbox->buf, QUERY_DEV_CAP_BMME_FLAGS_OFFSET); bmme_flags &= ~MLX4_BMME_FLAG_TYPE_2_WIN; MLX4_PUT(outbox->buf, bmme_flags, QUERY_DEV_CAP_BMME_FLAGS_OFFSET); @@ -860,6 +920,12 @@ MLX4_PUT(outbox->buf, field, QUERY_DEV_CAP_FLOW_STEERING_RANGE_EN_OFFSET); } + + /* turn off ipoib managed steering for guests */ + MLX4_GET(field, outbox->buf, QUERY_DEV_CAP_FLOW_STEERING_IPOIB_OFFSET); + field &= ~0x80; + MLX4_PUT(outbox->buf, field, QUERY_DEV_CAP_FLOW_STEERING_IPOIB_OFFSET); + return 0; } @@ -875,12 +941,20 @@ u16 short_field; int err; int admin_link_state; + int port = mlx4_slave_convert_port(dev, slave, + vhcr->in_modifier & 0xFF); #define MLX4_VF_PORT_NO_LINK_SENSE_MASK 0xE0 #define MLX4_PORT_LINK_UP_MASK 0x80 #define QUERY_PORT_CUR_MAX_PKEY_OFFSET 0x0c #define QUERY_PORT_CUR_MAX_GID_OFFSET 0x0e + if (port < 0) + return -EINVAL; + + vhcr->in_modifier = (vhcr->in_modifier & ~0xFF) | + (port & 0xFF); + err = mlx4_cmd_box(dev, 0, outbox->dma, vhcr->in_modifier, 0, MLX4_CMD_QUERY_PORT, MLX4_CMD_TIME_CLASS_B, MLX4_CMD_NATIVE); @@ -907,7 +981,10 @@ MLX4_PUT(outbox->buf, port_type, QUERY_PORT_SUPPORTED_TYPE_OFFSET); - short_field = 1; /* slave max gids */ + if (dev->caps.port_type[vhcr->in_modifier] == MLX4_PORT_TYPE_ETH) + short_field = mlx4_get_slave_num_gids(dev, slave, port); + else + short_field = 1; /* slave max gids */ MLX4_PUT(outbox->buf, short_field, QUERY_PORT_CUR_MAX_GID_OFFSET); @@ -1267,6 +1344,7 @@ #define INIT_HCA_IN_SIZE 0x200 #define INIT_HCA_VERSION_OFFSET 0x000 #define INIT_HCA_VERSION 2 +#define INIT_HCA_VXLAN_OFFSET 0x0c #define INIT_HCA_CACHELINE_SZ_OFFSET 0x0e #define INIT_HCA_FLAGS_OFFSET 0x014 #define INIT_HCA_QPC_OFFSET 0x020 @@ -1425,6 +1503,12 @@ MLX4_PUT(inbox, param->uar_page_sz, INIT_HCA_UAR_PAGE_SZ_OFFSET); MLX4_PUT(inbox, param->log_uar_sz, INIT_HCA_LOG_UAR_SZ_OFFSET); + /* set parser VXLAN attributes */ + if (dev->caps.flags2 & MLX4_DEV_CAP_FLAG2_VXLAN_OFFLOADS) { + u8 parser_params = 0; + MLX4_PUT(inbox, parser_params, INIT_HCA_VXLAN_OFFSET); + } + err = mlx4_cmd(dev, mailbox->dma, 0, 0, MLX4_CMD_INIT_HCA, 10000, MLX4_CMD_NATIVE); @@ -1550,9 +1634,12 @@ struct mlx4_cmd_info *cmd) { struct mlx4_priv *priv = mlx4_priv(dev); - int port = vhcr->in_modifier; + int port = mlx4_slave_convert_port(dev, slave, vhcr->in_modifier); int err; + if (port < 0) + return -EINVAL; + if (priv->mfunc.master.slave_state[slave].init_port_mask & (1 << port)) return 0; @@ -1642,9 +1729,12 @@ struct mlx4_cmd_info *cmd) { struct mlx4_priv *priv = mlx4_priv(dev); - int port = vhcr->in_modifier; + int port = mlx4_slave_convert_port(dev, slave, vhcr->in_modifier); int err; + if (port < 0) + return -EINVAL; + if (!(priv->mfunc.master.slave_state[slave].init_port_mask & (1 << port))) return 0; @@ -1689,6 +1779,46 @@ MLX4_CMD_NATIVE); } +struct mlx4_config_dev { + __be32 update_flags; + __be32 rsdv1[3]; + __be16 vxlan_udp_dport; + __be16 rsvd2; +}; + +#define MLX4_VXLAN_UDP_DPORT (1 << 0) + +static int mlx4_CONFIG_DEV(struct mlx4_dev *dev, struct mlx4_config_dev *config_dev) +{ + int err; + struct mlx4_cmd_mailbox *mailbox; + + mailbox = mlx4_alloc_cmd_mailbox(dev); + if (IS_ERR(mailbox)) + return PTR_ERR(mailbox); + + memcpy(mailbox->buf, config_dev, sizeof(*config_dev)); + + err = mlx4_cmd(dev, mailbox->dma, 0, 0, MLX4_CMD_CONFIG_DEV, + MLX4_CMD_TIME_CLASS_B, MLX4_CMD_NATIVE); + + mlx4_free_cmd_mailbox(dev, mailbox); + return err; +} + +int mlx4_config_vxlan_port(struct mlx4_dev *dev, __be16 udp_port) +{ + struct mlx4_config_dev config_dev; + + memset(&config_dev, 0, sizeof(config_dev)); + config_dev.update_flags = cpu_to_be32(MLX4_VXLAN_UDP_DPORT); + config_dev.vxlan_udp_dport = udp_port; + + return mlx4_CONFIG_DEV(dev, &config_dev); +} +EXPORT_SYMBOL_GPL(mlx4_config_vxlan_port); + + int mlx4_SET_ICM_SIZE(struct mlx4_dev *dev, u64 icm_size, u64 *aux_pages) { int ret = mlx4_cmd_imm(dev, icm_size, aux_pages, 0, 0, @@ -1713,6 +1843,43 @@ return mlx4_cmd(dev, 0, 0x1f, 0, MLX4_CMD_NOP, 100, MLX4_CMD_NATIVE); } +int mlx4_get_phys_port_id(struct mlx4_dev *dev) +{ + u8 port; + u32 *outbox; + struct mlx4_cmd_mailbox *mailbox; + u32 in_mod; + u32 guid_hi, guid_lo; + int err, ret = 0; +#define MOD_STAT_CFG_PORT_OFFSET 8 +#define MOD_STAT_CFG_GUID_H 0X14 +#define MOD_STAT_CFG_GUID_L 0X1c + + mailbox = mlx4_alloc_cmd_mailbox(dev); + if (IS_ERR(mailbox)) + return PTR_ERR(mailbox); + outbox = mailbox->buf; + + for (port = 1; port <= dev->caps.num_ports; port++) { + in_mod = port << MOD_STAT_CFG_PORT_OFFSET; + err = mlx4_cmd_box(dev, 0, mailbox->dma, in_mod, 0x2, + MLX4_CMD_MOD_STAT_CFG, MLX4_CMD_TIME_CLASS_A, + MLX4_CMD_NATIVE); + if (err) { + mlx4_err(dev, "Fail to get port %d uplink guid\n", + port); + ret = err; + } else { + MLX4_GET(guid_hi, outbox, MOD_STAT_CFG_GUID_H); + MLX4_GET(guid_lo, outbox, MOD_STAT_CFG_GUID_L); + dev->caps.phys_port_id[port] = (u64)guid_lo | + (u64)guid_hi << 32; + } + } + mlx4_free_cmd_mailbox(dev, mailbox); + return ret; +} + #define MLX4_WOL_SETUP_MODE (5 << 28) int mlx4_wol_read(struct mlx4_dev *dev, u64 *config, int port) { @@ -1819,7 +1986,8 @@ err = EINVAL; break; } - err = mlx4_cmd(dev, 0, ((u32) err | cpu_to_be32(token) << 16), + err = mlx4_cmd(dev, 0, ((u32) err | + (__force u32)cpu_to_be32(token) << 16), 1, MLX4_CMD_GET_OP_REQ, MLX4_CMD_TIME_CLASS_A, MLX4_CMD_NATIVE); if (err) { --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/fw.h +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/fw.h @@ -140,6 +140,8 @@ u32 qp1_proxy_qpn; u8 physical_port; u8 port_flags; + u8 flags1; + u64 phys_port_id; }; struct mlx4_adapter { --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/main.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/main.c @@ -41,7 +41,6 @@ #include #include #include -#include #include #include @@ -78,13 +77,17 @@ #endif /* CONFIG_PCI_MSI */ -static int num_vfs; -module_param(num_vfs, int, 0444); -MODULE_PARM_DESC(num_vfs, "enable #num_vfs functions if num_vfs > 0"); - -static int probe_vf; -module_param(probe_vf, int, 0644); -MODULE_PARM_DESC(probe_vf, "number of vfs to probe by pf driver (num_vfs > 0)"); +static uint8_t num_vfs[3] = {0, 0, 0}; +static int num_vfs_argc = 3; +module_param_array(num_vfs, byte , &num_vfs_argc, 0444); +MODULE_PARM_DESC(num_vfs, "enable #num_vfs functions if num_vfs > 0\n" + "num_vfs=port1,port2,port1+2"); + +static uint8_t probe_vf[3] = {0, 0, 0}; +static int probe_vfs_argc = 3; +module_param_array(probe_vf, byte, &probe_vfs_argc, 0444); +MODULE_PARM_DESC(probe_vf, "number of vfs to probe by pf driver (num_vfs > 0)\n" + "probe_vf=port1,port2,port1+2"); int mlx4_log_num_mgm_entry_size = MLX4_DEFAULT_MGM_LOG_ENTRY_SIZE; module_param_named(log_num_mgm_entry_size, @@ -96,10 +99,10 @@ " To activate device managed" " flow steering when available, set to -1"); -static bool enable_64b_cqe_eqe; +static bool enable_64b_cqe_eqe = true; module_param(enable_64b_cqe_eqe, bool, 0444); MODULE_PARM_DESC(enable_64b_cqe_eqe, - "Enable 64 byte CQEs/EQEs when the FW supports this"); + "Enable 64 byte CQEs/EQEs when the FW supports this (default: True)"); #define HCA_GLOBAL_CAP_MASK 0 @@ -150,6 +153,8 @@ struct pci_dev *pdev; }; +static atomic_t pf_loading = ATOMIC_INIT(0); + int mlx4_check_port_params(struct mlx4_dev *dev, enum mlx4_port_type *port_type) { @@ -388,6 +393,84 @@ return 0; } + +static int mlx4_get_pcie_dev_link_caps(struct mlx4_dev *dev, + enum pci_bus_speed *speed, + enum pcie_link_width *width) +{ + u32 lnkcap1, lnkcap2; + int err1, err2; + +#define PCIE_MLW_CAP_SHIFT 4 /* start of MLW mask in link capabilities */ + + *speed = PCI_SPEED_UNKNOWN; + *width = PCIE_LNK_WIDTH_UNKNOWN; + + err1 = pcie_capability_read_dword(dev->pdev, PCI_EXP_LNKCAP, &lnkcap1); + err2 = pcie_capability_read_dword(dev->pdev, PCI_EXP_LNKCAP2, &lnkcap2); + if (!err2 && lnkcap2) { /* PCIe r3.0-compliant */ + if (lnkcap2 & PCI_EXP_LNKCAP2_SLS_8_0GB) + *speed = PCIE_SPEED_8_0GT; + else if (lnkcap2 & PCI_EXP_LNKCAP2_SLS_5_0GB) + *speed = PCIE_SPEED_5_0GT; + else if (lnkcap2 & PCI_EXP_LNKCAP2_SLS_2_5GB) + *speed = PCIE_SPEED_2_5GT; + } + if (!err1) { + *width = (lnkcap1 & PCI_EXP_LNKCAP_MLW) >> PCIE_MLW_CAP_SHIFT; + if (!lnkcap2) { /* pre-r3.0 */ + if (lnkcap1 & PCI_EXP_LNKCAP_SLS_5_0GB) + *speed = PCIE_SPEED_5_0GT; + else if (lnkcap1 & PCI_EXP_LNKCAP_SLS_2_5GB) + *speed = PCIE_SPEED_2_5GT; + } + } + + if (*speed == PCI_SPEED_UNKNOWN || *width == PCIE_LNK_WIDTH_UNKNOWN) { + return err1 ? err1 : + err2 ? err2 : -EINVAL; + } + return 0; +} + +static void mlx4_check_pcie_caps(struct mlx4_dev *dev) +{ + enum pcie_link_width width, width_cap; + enum pci_bus_speed speed, speed_cap; + int err; + +#define PCIE_SPEED_STR(speed) \ + (speed == PCIE_SPEED_8_0GT ? "8.0GT/s" : \ + speed == PCIE_SPEED_5_0GT ? "5.0GT/s" : \ + speed == PCIE_SPEED_2_5GT ? "2.5GT/s" : \ + "Unknown") + + err = mlx4_get_pcie_dev_link_caps(dev, &speed_cap, &width_cap); + if (err) { + mlx4_warn(dev, + "Unable to determine PCIe device BW capabilities\n"); + return; + } + + err = pcie_get_minimum_link(dev->pdev, &speed, &width); + if (err || speed == PCI_SPEED_UNKNOWN || + width == PCIE_LNK_WIDTH_UNKNOWN) { + mlx4_warn(dev, + "Unable to determine PCI device chain minimum BW\n"); + return; + } + + if (width != width_cap || speed != speed_cap) + mlx4_warn(dev, + "PCIe BW is different than device's capability\n"); + + mlx4_info(dev, "PCIe link speed is %s, device supports %s\n", + PCIE_SPEED_STR(speed), PCIE_SPEED_STR(speed_cap)); + mlx4_info(dev, "PCIe link width is x%d, device supports x%d\n", + width, width_cap); + return; +} + /*The function checks if there are live vf, return the num of them*/ static int mlx4_how_many_lives_vf(struct mlx4_dev *dev) { @@ -606,6 +689,7 @@ dev->caps.qp1_tunnel[i - 1] = func_cap.qp1_tunnel_qpn; dev->caps.qp1_proxy[i - 1] = func_cap.qp1_proxy_qpn; dev->caps.port_mask[i] = dev->caps.port_type[i]; + dev->caps.phys_port_id[i] = func_cap.phys_port_id; if (mlx4_get_slave_pkey_gid_tbl_len(dev, i, &dev->caps.gid_table_len[i], &dev->caps.pkey_table_len[i])) @@ -670,7 +754,7 @@ has_eth_port = true; } - if (has_ib_port) + if (has_ib_port || (dev->caps.flags & MLX4_DEV_CAP_FLAG_IBOE)) request_module_nowait(IB_DRV_NAME); if (has_eth_port) request_module_nowait(EN_DRV_NAME); @@ -1328,6 +1412,11 @@ u32 slave_read; u32 cmd_channel_ver; + if (atomic_read(&pf_loading)) { + mlx4_warn(dev, "PF is not ready. Deferring probe\n"); + return -EPROBE_DEFER; + } + mutex_lock(&priv->cmd.slave_cmd_mutex); priv->cmd.max_cmds = 1; mlx4_warn(dev, "Sending reset\n"); @@ -1384,7 +1473,11 @@ int i; for (i = 1; i <= dev->caps.num_ports; i++) { - dev->caps.gid_table_len[i] = 1; + if (dev->caps.port_type[i] == MLX4_PORT_TYPE_ETH) + dev->caps.gid_table_len[i] = + mlx4_get_slave_num_gids(dev, 0, i); + else + dev->caps.gid_table_len[i] = 1; dev->caps.pkey_table_len[i] = dev->phys_caps.pkey_phys_table_len[i] - 1; } @@ -1409,7 +1502,7 @@ if (mlx4_log_num_mgm_entry_size == -1 && dev_cap->flags2 & MLX4_DEV_CAP_FLAG2_FS_EN && (!mlx4_is_mfunc(dev) || - (dev_cap->fs_max_num_qp_per_entry >= (num_vfs + 1))) && + (dev_cap->fs_max_num_qp_per_entry >= (dev->num_vfs + 1))) && choose_log_fs_mgm_entry_size(dev_cap->fs_max_num_qp_per_entry) >= MLX4_MIN_MGM_LOG_ENTRY_SIZE) { dev->oper_log_mgm_entry_size = @@ -1443,6 +1536,19 @@ mlx4_log_num_mgm_entry_size); } +static void choose_tunnel_offload_mode(struct mlx4_dev *dev, + struct mlx4_dev_cap *dev_cap) +{ + if (dev->caps.steering_mode == MLX4_STEERING_MODE_DEVICE_MANAGED && + dev_cap->flags2 & MLX4_DEV_CAP_FLAG2_VXLAN_OFFLOADS) + dev->caps.tunnel_offload_mode = MLX4_TUNNEL_OFFLOAD_MODE_VXLAN; + else + dev->caps.tunnel_offload_mode = MLX4_TUNNEL_OFFLOAD_MODE_NONE; + + mlx4_dbg(dev, "Tunneling offload mode is: %s\n", (dev->caps.tunnel_offload_mode + == MLX4_TUNNEL_OFFLOAD_MODE_VXLAN) ? "vxlan" : "none"); +} + static int mlx4_init_hca(struct mlx4_dev *dev) { struct mlx4_priv *priv = mlx4_priv(dev); @@ -1483,6 +1589,11 @@ } choose_steering_mode(dev, &dev_cap); + choose_tunnel_offload_mode(dev, &dev_cap); + + err = mlx4_get_phys_port_id(dev); + if (err) + mlx4_err(dev, "Fail to get physical port id\n"); if (mlx4_is_master(dev)) mlx4_parav_master_pf_caps(dev); @@ -1654,7 +1765,7 @@ void __mlx4_counter_free(struct mlx4_dev *dev, u32 idx) { - mlx4_bitmap_free(&mlx4_priv(dev)->counters_bitmap, idx); + mlx4_bitmap_free(&mlx4_priv(dev)->counters_bitmap, idx, MLX4_USE_RR); return; } @@ -1877,7 +1988,7 @@ struct mlx4_priv *priv = mlx4_priv(dev); struct msix_entry *entries; int nreq = min_t(int, dev->caps.num_ports * - min_t(int, netif_get_num_default_rss_queues() + 1, + min_t(int, num_online_cpus() + 1, MAX_MSIX_P_PORT) + MSIX_LEGACY_SZ, MAX_MSIX); int err; int i; @@ -2097,6 +2208,13 @@ struct mlx4_dev *dev; int err; int port; + int nvfs[MLX4_MAX_PORTS + 1] = {0, 0, 0}; + int prb_vf[MLX4_MAX_PORTS + 1] = {0, 0, 0}; + const int param_map[MLX4_MAX_PORTS + 1][MLX4_MAX_PORTS + 1] = { + {2, 0, 0}, {0, 1, 2}, {0, 1, 2} }; + unsigned total_vfs = 0; + int sriov_initialized = 0; + unsigned int i; pr_info(DRV_NAME ": Initializing %s\n", pci_name(pdev)); @@ -2111,17 +2229,40 @@ * per port, we must limit the number of VFs to 63 (since their are * 128 MACs) */ - if (num_vfs >= MLX4_MAX_NUM_VF) { + for (i = 0; i < sizeof(nvfs)/sizeof(nvfs[0]) && i < num_vfs_argc; + total_vfs += nvfs[param_map[num_vfs_argc - 1][i]], i++) { + nvfs[param_map[num_vfs_argc - 1][i]] = num_vfs[i]; + if (nvfs[i] < 0) { + dev_err(&pdev->dev, "num_vfs module parameter cannot be negative\n"); + return -EINVAL; + } + } + for (i = 0; i < sizeof(prb_vf)/sizeof(prb_vf[0]) && i < probe_vfs_argc; + i++) { + prb_vf[param_map[probe_vfs_argc - 1][i]] = probe_vf[i]; + if (prb_vf[i] < 0 || prb_vf[i] > nvfs[i]) { + dev_err(&pdev->dev, "probe_vf module parameter cannot be negative or greater than num_vfs\n"); + return -EINVAL; + } + } + if (total_vfs >= MLX4_MAX_NUM_VF) { dev_err(&pdev->dev, "Requested more VF's (%d) than allowed (%d)\n", - num_vfs, MLX4_MAX_NUM_VF - 1); + total_vfs, MLX4_MAX_NUM_VF - 1); return -EINVAL; } - if (num_vfs < 0) { - pr_err("num_vfs module parameter cannot be negative\n"); - return -EINVAL; + for (i = 0; i < MLX4_MAX_PORTS; i++) { + if (nvfs[i] + nvfs[2] >= MLX4_MAX_NUM_VF_P_PORT) { + dev_err(&pdev->dev, + "Requested more VF's (%d) for port (%d) than allowed (%d)\n", + nvfs[i] + nvfs[2], i + 1, + MLX4_MAX_NUM_VF_P_PORT - 1); + return -EINVAL; + } } + + /* * Check for BARs. */ @@ -2196,11 +2337,23 @@ if (pci_dev_data & MLX4_PCI_DEV_IS_VF) { /* When acting as pf, we normally skip vfs unless explicitly * requested to probe them. */ - if (num_vfs && extended_func_num(pdev) > probe_vf) { - mlx4_warn(dev, "Skipping virtual function:%d\n", - extended_func_num(pdev)); - err = -ENODEV; - goto err_free_dev; + if (total_vfs) { + unsigned vfs_offset = 0; + for (i = 0; i < sizeof(nvfs)/sizeof(nvfs[0]) && + vfs_offset + nvfs[i] < extended_func_num(pdev); + vfs_offset += nvfs[i], i++) + ; + if (i == sizeof(nvfs)/sizeof(nvfs[0])) { + err = -ENODEV; + goto err_free_dev; + } + if ((extended_func_num(pdev) - vfs_offset) + > prb_vf[i]) { + mlx4_warn(dev, "Skipping virtual function:%d\n", + extended_func_num(pdev)); + err = -ENODEV; + goto err_free_dev; + } } mlx4_warn(dev, "Detected virtual function - running in slave mode\n"); dev->flags |= MLX4_FLAG_SLAVE; @@ -2220,18 +2373,30 @@ } } - if (num_vfs) { - mlx4_warn(dev, "Enabling SR-IOV with %d VFs\n", num_vfs); - err = pci_enable_sriov(pdev, num_vfs); - if (err) { - mlx4_err(dev, "Failed to enable SR-IOV, continuing without SR-IOV (err = %d).\n", - err); + if (total_vfs) { + mlx4_warn(dev, "Enabling SR-IOV with %d VFs\n", + total_vfs); + dev->dev_vfs = kzalloc( + total_vfs * sizeof(*dev->dev_vfs), + GFP_KERNEL); + if (NULL == dev->dev_vfs) { + mlx4_err(dev, "Failed to allocate memory for VFs\n"); err = 0; } else { - mlx4_warn(dev, "Running in master mode\n"); - dev->flags |= MLX4_FLAG_SRIOV | - MLX4_FLAG_MASTER; - dev->num_vfs = num_vfs; + atomic_inc(&pf_loading); + err = pci_enable_sriov(pdev, total_vfs); + atomic_dec(&pf_loading); + if (err) { + mlx4_err(dev, "Failed to enable SR-IOV, continuing without SR-IOV (err = %d).\n", + err); + err = 0; + } else { + mlx4_warn(dev, "Running in master mode\n"); + dev->flags |= MLX4_FLAG_SRIOV | + MLX4_FLAG_MASTER; + dev->num_vfs = total_vfs; + sriov_initialized = 1; + } } } @@ -2287,15 +2452,46 @@ goto err_mfunc; } + /* check if the device is functioning at its maximum possible speed. + * No return code for this call, just warn the user in case of PCI + * express device capabilities are under-satisfied by the bus. + */ + mlx4_check_pcie_caps(dev); + /* In master functions, the communication channel must be initialized * after obtaining its address from fw */ if (mlx4_is_master(dev)) { + unsigned sum = 0; err = mlx4_multi_func_init(dev); if (err) { mlx4_err(dev, "Failed to init master mfunc" "interface, aborting.\n"); goto err_close; } + if (sriov_initialized) { + int ib_ports = 0; + mlx4_foreach_port(i, dev, MLX4_PORT_TYPE_IB) + ib_ports++; + + if (ib_ports && + (num_vfs_argc > 1 || probe_vfs_argc > 1)) { + mlx4_err(dev, + "Invalid syntax of num_vfs/probe_vfs " + "with IB port. Single port VFs syntax" + " is only supported when all ports " + "are configured as ethernet\n"); + goto err_close; + } + for (i = 0; i < sizeof(nvfs)/sizeof(nvfs[0]); i++) { + unsigned j; + for (j = 0; j < nvfs[i]; ++sum, ++j) { + dev->dev_vfs[sum].min_port = + i < 2 ? i + 1 : 1; + dev->dev_vfs[sum].n_ports = i < 2 ? 1 : + dev->caps.num_ports; + } + } + } } err = mlx4_alloc_eq_table(dev); @@ -2403,6 +2599,8 @@ if (!mlx4_is_slave(dev)) mlx4_free_ownership(dev); + kfree(priv->dev.dev_vfs); + err_free_dev: kfree(priv); @@ -2489,6 +2687,7 @@ kfree(dev->caps.qp0_proxy); kfree(dev->caps.qp1_tunnel); kfree(dev->caps.qp1_proxy); + kfree(dev->dev_vfs); kfree(priv); pci_release_regions(pdev); @@ -2567,7 +2766,11 @@ static pci_ers_result_t mlx4_pci_slot_reset(struct pci_dev *pdev) { - int ret = __mlx4_init_one(pdev, 0); + const struct pci_device_id *id; + int ret; + + id = pci_match_id(mlx4_pci_table, pdev); + ret = __mlx4_init_one(pdev, id->driver_data); return ret ? PCI_ERS_RESULT_DISCONNECT : PCI_ERS_RESULT_RECOVERED; } @@ -2581,6 +2784,7 @@ .name = DRV_NAME, .id_table = mlx4_pci_table, .probe = mlx4_init_one, + .shutdown = mlx4_remove_one, .remove = mlx4_remove_one, .err_handler = &mlx4_err_handler, }; --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/mcg.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/mcg.c @@ -125,9 +125,14 @@ enum mlx4_steer_type steer, u32 qpn) { - struct mlx4_steer *s_steer = &mlx4_priv(dev)->steer[port - 1]; + struct mlx4_steer *s_steer; struct mlx4_promisc_qp *pqp; + if (port < 1 || port > dev->caps.num_ports) + return NULL; + + s_steer = &mlx4_priv(dev)->steer[port - 1]; + list_for_each_entry(pqp, &s_steer->promisc_qps[steer], list) { if (pqp->qpn == qpn) return pqp; @@ -154,6 +159,9 @@ u32 prot; int err; + if (port < 1 || port > dev->caps.num_ports) + return -EINVAL; + s_steer = &mlx4_priv(dev)->steer[port - 1]; new_entry = kzalloc(sizeof *new_entry, GFP_KERNEL); if (!new_entry) @@ -238,6 +246,9 @@ struct mlx4_promisc_qp *pqp; struct mlx4_promisc_qp *dqp; + if (port < 1 || port > dev->caps.num_ports) + return -EINVAL; + s_steer = &mlx4_priv(dev)->steer[port - 1]; pqp = get_promisc_qp(dev, port, steer, qpn); @@ -283,6 +294,9 @@ struct mlx4_steer_index *tmp_entry, *entry = NULL; struct mlx4_promisc_qp *dqp, *tmp_dqp; + if (port < 1 || port > dev->caps.num_ports) + return NULL; + s_steer = &mlx4_priv(dev)->steer[port - 1]; /* if qp is not promisc, it cannot be duplicated */ @@ -324,6 +338,9 @@ bool ret = false; int i; + if (port < 1 || port > dev->caps.num_ports) + return NULL; + s_steer = &mlx4_priv(dev)->steer[port - 1]; mailbox = mlx4_alloc_cmd_mailbox(dev); @@ -378,6 +395,9 @@ int err; struct mlx4_priv *priv = mlx4_priv(dev); + if (port < 1 || port > dev->caps.num_ports) + return -EINVAL; + s_steer = &mlx4_priv(dev)->steer[port - 1]; mutex_lock(&priv->mcg_table.mutex); @@ -484,6 +504,9 @@ int loc, i; int err; + if (port < 1 || port > dev->caps.num_ports) + return -EINVAL; + s_steer = &mlx4_priv(dev)->steer[port - 1]; mutex_lock(&priv->mcg_table.mutex); @@ -674,7 +697,8 @@ [MLX4_NET_TRANS_RULE_ID_IPV6] = 0xE003, [MLX4_NET_TRANS_RULE_ID_IPV4] = 0xE002, [MLX4_NET_TRANS_RULE_ID_TCP] = 0xE004, - [MLX4_NET_TRANS_RULE_ID_UDP] = 0xE006 + [MLX4_NET_TRANS_RULE_ID_UDP] = 0xE006, + [MLX4_NET_TRANS_RULE_ID_VXLAN] = 0xE008 }; int mlx4_map_sw_to_hw_steering_id(struct mlx4_dev *dev, @@ -699,7 +723,9 @@ [MLX4_NET_TRANS_RULE_ID_TCP] = sizeof(struct mlx4_net_trans_rule_hw_tcp_udp), [MLX4_NET_TRANS_RULE_ID_UDP] = - sizeof(struct mlx4_net_trans_rule_hw_tcp_udp) + sizeof(struct mlx4_net_trans_rule_hw_tcp_udp), + [MLX4_NET_TRANS_RULE_ID_VXLAN] = + sizeof(struct mlx4_net_trans_rule_hw_vxlan) }; int mlx4_hw_rule_sz(struct mlx4_dev *dev, @@ -764,6 +790,13 @@ rule_hw->tcp_udp.src_port_msk = spec->tcp_udp.src_port_msk; break; + case MLX4_NET_TRANS_RULE_ID_VXLAN: + rule_hw->vxlan.vni = + cpu_to_be32(be32_to_cpu(spec->vxlan.vni) << 8); + rule_hw->vxlan.vni_mask = + cpu_to_be32(be32_to_cpu(spec->vxlan.vni_mask) << 8); + break; + default: return -EINVAL; } @@ -895,6 +928,23 @@ } EXPORT_SYMBOL_GPL(mlx4_flow_detach); +int mlx4_FLOW_STEERING_IB_UC_QP_RANGE(struct mlx4_dev *dev, u32 min_range_qpn, + u32 max_range_qpn) +{ + int err; + u64 in_param; + + in_param = ((u64) min_range_qpn) << 32; + in_param |= ((u64) max_range_qpn) & 0xFFFFFFFF; + + err = mlx4_cmd(dev, in_param, 0, 0, + MLX4_FLOW_STEERING_IB_UC_QP_RANGE, + MLX4_CMD_TIME_CLASS_A, MLX4_CMD_NATIVE); + + return err; +} +EXPORT_SYMBOL_GPL(mlx4_FLOW_STEERING_IB_UC_QP_RANGE); + int mlx4_qp_attach_common(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16], int block_mcast_loopback, enum mlx4_protocol prot, enum mlx4_steer_type steer) @@ -996,7 +1046,7 @@ index, dev->caps.num_mgms); else mlx4_bitmap_free(&priv->mcg_table.bitmap, - index - dev->caps.num_mgms); + index - dev->caps.num_mgms, MLX4_USE_RR); } mutex_unlock(&priv->mcg_table.mutex); @@ -1087,7 +1137,7 @@ index, amgm_index, dev->caps.num_mgms); else mlx4_bitmap_free(&priv->mcg_table.bitmap, - amgm_index - dev->caps.num_mgms); + amgm_index - dev->caps.num_mgms, MLX4_USE_RR); } } else { /* Remove entry from AMGM */ @@ -1107,7 +1157,7 @@ prev, index, dev->caps.num_mgms); else mlx4_bitmap_free(&priv->mcg_table.bitmap, - index - dev->caps.num_mgms); + index - dev->caps.num_mgms, MLX4_USE_RR); } out: @@ -1337,9 +1387,12 @@ struct mlx4_cmd_info *cmd) { u32 qpn = (u32) vhcr->in_param & 0xffffffff; - u8 port = vhcr->in_param >> 62; + int port = mlx4_slave_convert_port(dev, slave, vhcr->in_param >> 62); enum mlx4_steer_type steer = vhcr->in_modifier; + if (port < 0) + return -EINVAL; + /* Promiscuous unicast is not allowed in mfunc */ if (mlx4_is_mfunc(dev) && steer == MLX4_UC_STEER) return 0; --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/mlx4.h +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/mlx4.h @@ -51,8 +51,8 @@ #define DRV_NAME "mlx4_core" #define PFX DRV_NAME ": " -#define DRV_VERSION "1.1" -#define DRV_RELDATE "Dec, 2011" +#define DRV_VERSION "2.2-1" +#define DRV_RELDATE "Feb, 2014" #define MLX4_FS_UDP_UC_EN (1 << 1) #define MLX4_FS_TCP_UC_EN (1 << 2) @@ -783,6 +783,15 @@ MLX4_PCI_DEV_FORCE_SENSE_PORT = 1 << 1, }; +enum { + MLX4_NO_RR = 0, + MLX4_USE_RR = 1, +}; + +struct mlx4_roce_gid_entry { + u8 raw[16]; +}; + struct mlx4_priv { struct mlx4_dev dev; @@ -829,6 +838,7 @@ int fs_hash_mode; u8 virt2phys_pkey[MLX4_MFUNC_MAX][MLX4_MAX_PORTS][MLX4_MAX_PORT_PKEYS]; __be64 slave_node_guids[MLX4_MFUNC_MAX]; + struct mlx4_roce_gid_entry roce_gids[MLX4_MAX_PORTS][MLX4_ROCE_MAX_GIDS]; atomic_t opreq_count; struct work_struct opreq_task; @@ -844,9 +854,10 @@ extern struct workqueue_struct *mlx4_wq; u32 mlx4_bitmap_alloc(struct mlx4_bitmap *bitmap); -void mlx4_bitmap_free(struct mlx4_bitmap *bitmap, u32 obj); +void mlx4_bitmap_free(struct mlx4_bitmap *bitmap, u32 obj, int use_rr); u32 mlx4_bitmap_alloc_range(struct mlx4_bitmap *bitmap, int cnt, int align); -void mlx4_bitmap_free_range(struct mlx4_bitmap *bitmap, u32 obj, int cnt); +void mlx4_bitmap_free_range(struct mlx4_bitmap *bitmap, u32 obj, int cnt, + int use_rr); u32 mlx4_bitmap_avail(struct mlx4_bitmap *bitmap); int mlx4_bitmap_init(struct mlx4_bitmap *bitmap, u32 num, u32 mask, u32 reserved_bot, u32 resetrved_top); @@ -1271,4 +1282,8 @@ void mlx4_init_quotas(struct mlx4_dev *dev); +int mlx4_get_slave_num_gids(struct mlx4_dev *dev, int slave, int port); +/* Returns the VF index of slave */ +int mlx4_get_vf_indx(struct mlx4_dev *dev, int slave); + #endif /* MLX4_H */ --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/mlx4_en.h +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/mlx4_en.h @@ -45,6 +45,7 @@ #include #endif #include +#include #include #include @@ -56,8 +57,8 @@ #include "en_port.h" #define DRV_NAME "mlx4_en" -#define DRV_VERSION "2.0" -#define DRV_RELDATE "Dec 2011" +#define DRV_VERSION "2.2-1" +#define DRV_RELDATE "Feb 2014" #define MLX4_EN_MSG_LEVEL (NETIF_MSG_LINK | NETIF_MSG_IFDOWN) @@ -186,6 +187,13 @@ #define GET_AVG_PERF_COUNTER(cnt) (0) #endif /* MLX4_EN_PERF_STAT */ +/* Constants for TX flow */ +enum { + MAX_INLINE = 104, /* 128 - 16 - 4 - 4 */ + MAX_BF = 256, + MIN_PKT_LEN = 17, +}; + /* * Configurables */ @@ -255,6 +263,8 @@ u16 poll_cnt; struct mlx4_en_tx_info *tx_info; u8 *bounce_buf; + u8 queue_index; + cpumask_t affinity_mask; u32 last_nr_txbb; struct mlx4_qp qp; struct mlx4_qp_context context; @@ -264,10 +274,13 @@ unsigned long bytes; unsigned long packets; unsigned long tx_csum; + unsigned long queue_stopped; + unsigned long wake_queue; struct mlx4_bf bf; bool bf_enabled; struct netdev_queue *tx_queue; int hwtstamp_tx_type; + int inline_thold; }; struct mlx4_en_rx_desc { @@ -343,6 +356,7 @@ u8 tx_pause; u8 tx_ppp; int rss_rings; + int inline_thold; }; struct mlx4_en_profile { @@ -373,10 +387,14 @@ u32 priv_pdn; spinlock_t uar_lock; u8 mac_removed[MLX4_MAX_PORTS + 1]; + rwlock_t clock_lock; + u32 nominal_c_mult; struct cyclecounter cycles; struct timecounter clock; unsigned long last_overflow_check; unsigned long overflow_period; + struct ptp_clock *ptp_clock; + struct ptp_clock_info ptp_clock_info; }; @@ -434,6 +452,7 @@ enum mlx4_en_mclist_act action; u8 addr[ETH_ALEN]; u64 reg_id; + u64 tunnel_reg_id; }; struct mlx4_en_frag_info { @@ -540,6 +559,10 @@ struct work_struct linkstate_task; struct delayed_work stats_task; struct delayed_work service_task; +#ifdef CONFIG_MLX4_EN_VXLAN + struct work_struct vxlan_add_task; + struct work_struct vxlan_del_task; +#endif struct mlx4_en_perf_stats pstats; struct mlx4_en_pkt_stats pkstats; struct mlx4_en_port_stats port_stats; @@ -565,7 +588,8 @@ struct list_head filters; struct hlist_head filter_hash[1 << MLX4_EN_FILTER_HASH_SHIFT]; #endif - + u64 tunnel_reg_id; + __be16 vxlan_port; }; enum mlx4_en_wol { @@ -653,7 +677,7 @@ } /* true if a socket is polling, even if it did not get the lock */ -static inline bool mlx4_en_cq_ll_polling(struct mlx4_en_cq *cq) +static inline bool mlx4_en_cq_busy_polling(struct mlx4_en_cq *cq) { WARN_ON(!(cq->state & MLX4_CQ_LOCKED)); return cq->state & CQ_USER_PEND; @@ -683,7 +707,7 @@ return false; } -static inline bool mlx4_en_cq_ll_polling(struct mlx4_en_cq *cq) +static inline bool mlx4_en_cq_busy_polling(struct mlx4_en_cq *cq) { return false; } @@ -715,12 +739,13 @@ void mlx4_en_tx_irq(struct mlx4_cq *mcq); u16 mlx4_en_select_queue(struct net_device *dev, struct sk_buff *skb, - void *accel_priv); + void *accel_priv, select_queue_fallback_t fallback); netdev_tx_t mlx4_en_xmit(struct sk_buff *skb, struct net_device *dev); int mlx4_en_create_tx_ring(struct mlx4_en_priv *priv, struct mlx4_en_tx_ring **pring, - int qpn, u32 size, u16 stride, int node); + int qpn, u32 size, u16 stride, + int node, int queue_index); void mlx4_en_destroy_tx_ring(struct mlx4_en_priv *priv, struct mlx4_en_tx_ring **pring); int mlx4_en_activate_tx_ring(struct mlx4_en_priv *priv, @@ -728,7 +753,7 @@ int cq, int user_prio); void mlx4_en_deactivate_tx_ring(struct mlx4_en_priv *priv, struct mlx4_en_tx_ring *ring); - +void mlx4_en_set_num_rx_rings(struct mlx4_en_dev *mdev); int mlx4_en_create_rx_ring(struct mlx4_en_priv *priv, struct mlx4_en_rx_ring **pring, u32 size, u16 stride, int node); @@ -742,6 +767,7 @@ struct mlx4_en_cq *cq, int budget); int mlx4_en_poll_rx_cq(struct napi_struct *napi, int budget); +int mlx4_en_poll_tx_cq(struct napi_struct *napi, int budget); void mlx4_en_fill_qp_context(struct mlx4_en_priv *priv, int size, int stride, int is_tx, int rss, int qpn, int cqn, int user_prio, struct mlx4_qp_context *context); @@ -776,7 +802,6 @@ #define MLX4_EN_NUM_SELF_TEST 5 void mlx4_en_ex_selftest(struct net_device *dev, u32 *flags, u64 *buf); -u64 mlx4_en_mac_to_u64(u8 *addr); void mlx4_en_ptp_overflow_check(struct mlx4_en_dev *mdev); /* @@ -787,6 +812,7 @@ struct skb_shared_hwtstamps *hwts, u64 timestamp); void mlx4_en_init_timestamp(struct mlx4_en_dev *mdev); +void mlx4_en_remove_timestamp(struct mlx4_en_dev *mdev); int mlx4_en_timestamp_config(struct net_device *dev, int tx_type, int rx_filter); --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/mr.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/mr.c @@ -346,7 +346,7 @@ { struct mlx4_priv *priv = mlx4_priv(dev); - mlx4_bitmap_free(&priv->mr_table.mpt_bitmap, index); + mlx4_bitmap_free(&priv->mr_table.mpt_bitmap, index, MLX4_NO_RR); } static void mlx4_mpt_release(struct mlx4_dev *dev, u32 index) --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/pd.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/pd.c @@ -59,7 +59,7 @@ void mlx4_pd_free(struct mlx4_dev *dev, u32 pdn) { - mlx4_bitmap_free(&mlx4_priv(dev)->pd_bitmap, pdn); + mlx4_bitmap_free(&mlx4_priv(dev)->pd_bitmap, pdn, MLX4_USE_RR); } EXPORT_SYMBOL_GPL(mlx4_pd_free); @@ -96,7 +96,7 @@ void __mlx4_xrcd_free(struct mlx4_dev *dev, u32 xrcdn) { - mlx4_bitmap_free(&mlx4_priv(dev)->xrcd_bitmap, xrcdn); + mlx4_bitmap_free(&mlx4_priv(dev)->xrcd_bitmap, xrcdn, MLX4_USE_RR); } void mlx4_xrcd_free(struct mlx4_dev *dev, u32 xrcdn) @@ -164,7 +164,7 @@ void mlx4_uar_free(struct mlx4_dev *dev, struct mlx4_uar *uar) { - mlx4_bitmap_free(&mlx4_priv(dev)->uar_table.bitmap, uar->index); + mlx4_bitmap_free(&mlx4_priv(dev)->uar_table.bitmap, uar->index, MLX4_USE_RR); } EXPORT_SYMBOL_GPL(mlx4_uar_free); --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/port.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/port.c @@ -123,6 +123,26 @@ return err; } +int mlx4_find_cached_mac(struct mlx4_dev *dev, u8 port, u64 mac, int *idx) +{ + struct mlx4_port_info *info = &mlx4_priv(dev)->port[port]; + struct mlx4_mac_table *table = &info->mac_table; + int i; + + for (i = 0; i < MLX4_MAX_MAC_NUM; i++) { + if (!table->refs[i]) + continue; + + if (mac == (MLX4_MAC_MASK & be64_to_cpu(table->entries[i]))) { + *idx = i; + return 0; + } + } + + return -ENOENT; +} +EXPORT_SYMBOL_GPL(mlx4_find_cached_mac); + int __mlx4_register_mac(struct mlx4_dev *dev, u8 port, u64 mac) { struct mlx4_port_info *info = &mlx4_priv(dev)->port[port]; @@ -485,6 +505,84 @@ mlx4_free_cmd_mailbox(dev, outmailbox); return err; } +static struct mlx4_roce_gid_entry zgid_entry; + +int mlx4_get_slave_num_gids(struct mlx4_dev *dev, int slave, int port) +{ + int vfs; + int slave_gid = slave; + unsigned i; + struct mlx4_slaves_pport slaves_pport; + struct mlx4_active_ports actv_ports; + unsigned max_port_p_one; + + if (slave == 0) + return MLX4_ROCE_PF_GIDS; + + /* Slave is a VF */ + slaves_pport = mlx4_phys_to_slaves_pport(dev, port); + actv_ports = mlx4_get_active_ports(dev, slave); + max_port_p_one = find_first_bit(actv_ports.ports, dev->caps.num_ports) + + bitmap_weight(actv_ports.ports, dev->caps.num_ports) + 1; + + for (i = 1; i < max_port_p_one; i++) { + struct mlx4_active_ports exclusive_ports; + struct mlx4_slaves_pport slaves_pport_actv; + bitmap_zero(exclusive_ports.ports, dev->caps.num_ports); + set_bit(i - 1, exclusive_ports.ports); + if (i == port) + continue; + slaves_pport_actv = mlx4_phys_to_slaves_pport_actv( + dev, &exclusive_ports); + slave_gid -= bitmap_weight(slaves_pport_actv.slaves, + dev->num_vfs + 1); + } + vfs = bitmap_weight(slaves_pport.slaves, dev->num_vfs + 1) - 1; + if (slave_gid <= ((MLX4_ROCE_MAX_GIDS - MLX4_ROCE_PF_GIDS) % vfs)) + return ((MLX4_ROCE_MAX_GIDS - MLX4_ROCE_PF_GIDS) / vfs) + 1; + return (MLX4_ROCE_MAX_GIDS - MLX4_ROCE_PF_GIDS) / vfs; +} + +int mlx4_get_base_gid_ix(struct mlx4_dev *dev, int slave, int port) +{ + int gids; + unsigned i; + int slave_gid = slave; + int vfs; + + struct mlx4_slaves_pport slaves_pport; + struct mlx4_active_ports actv_ports; + unsigned max_port_p_one; + + if (slave == 0) + return 0; + + slaves_pport = mlx4_phys_to_slaves_pport(dev, port); + actv_ports = mlx4_get_active_ports(dev, slave); + max_port_p_one = find_first_bit(actv_ports.ports, dev->caps.num_ports) + + bitmap_weight(actv_ports.ports, dev->caps.num_ports) + 1; + + for (i = 1; i < max_port_p_one; i++) { + struct mlx4_active_ports exclusive_ports; + struct mlx4_slaves_pport slaves_pport_actv; + bitmap_zero(exclusive_ports.ports, dev->caps.num_ports); + set_bit(i - 1, exclusive_ports.ports); + if (i == port) + continue; + slaves_pport_actv = mlx4_phys_to_slaves_pport_actv( + dev, &exclusive_ports); + slave_gid -= bitmap_weight(slaves_pport_actv.slaves, + dev->num_vfs + 1); + } + gids = MLX4_ROCE_MAX_GIDS - MLX4_ROCE_PF_GIDS; + vfs = bitmap_weight(slaves_pport.slaves, dev->num_vfs + 1) - 1; + if (slave_gid <= gids % vfs) + return MLX4_ROCE_PF_GIDS + ((gids / vfs) + 1) * (slave_gid - 1); + + return MLX4_ROCE_PF_GIDS + (gids % vfs) + + ((gids / vfs) * (slave_gid - 1)); +} +EXPORT_SYMBOL_GPL(mlx4_get_base_gid_ix); static int mlx4_common_set_port(struct mlx4_dev *dev, int slave, u32 in_mod, u8 op_mod, struct mlx4_cmd_mailbox *inbox) @@ -495,14 +593,18 @@ struct mlx4_slave_state *slave_st = &master->slave_state[slave]; struct mlx4_set_port_rqp_calc_context *qpn_context; struct mlx4_set_port_general_context *gen_context; + struct mlx4_roce_gid_entry *gid_entry_tbl, *gid_entry_mbox, *gid_entry_mb1; int reset_qkey_viols; int port; int is_eth; + int num_gids; + int base; u32 in_modifier; u32 promisc; u16 mtu, prev_mtu; int err; - int i; + int i, j; + int offset; __be32 agg_cap_mask; __be32 slave_cap_mask; __be32 new_cap_mask; @@ -515,7 +617,8 @@ /* Slaves cannot perform SET_PORT operations except changing MTU */ if (is_eth) { if (slave != dev->caps.function && - in_modifier != MLX4_SET_PORT_GENERAL) { + in_modifier != MLX4_SET_PORT_GENERAL && + in_modifier != MLX4_SET_PORT_GID_TABLE) { mlx4_warn(dev, "denying SET_PORT for slave:%d\n", slave); return -EINVAL; @@ -561,6 +664,67 @@ gen_context->mtu = cpu_to_be16(master->max_mtu[port]); break; + case MLX4_SET_PORT_GID_TABLE: + /* change to MULTIPLE entries: number of guest's gids + * need a FOR-loop here over number of gids the guest has. + * 1. Check no duplicates in gids passed by slave + */ + num_gids = mlx4_get_slave_num_gids(dev, slave, port); + base = mlx4_get_base_gid_ix(dev, slave, port); + gid_entry_mbox = (struct mlx4_roce_gid_entry *)(inbox->buf); + for (i = 0; i < num_gids; gid_entry_mbox++, i++) { + if (!memcmp(gid_entry_mbox->raw, zgid_entry.raw, + sizeof(zgid_entry))) + continue; + gid_entry_mb1 = gid_entry_mbox + 1; + for (j = i + 1; j < num_gids; gid_entry_mb1++, j++) { + if (!memcmp(gid_entry_mb1->raw, + zgid_entry.raw, sizeof(zgid_entry))) + continue; + if (!memcmp(gid_entry_mb1->raw, gid_entry_mbox->raw, + sizeof(gid_entry_mbox->raw))) { + /* found duplicate */ + return -EINVAL; + } + } + } + + /* 2. Check that do not have duplicates in OTHER + * entries in the port GID table + */ + for (i = 0; i < MLX4_ROCE_MAX_GIDS; i++) { + if (i >= base && i < base + num_gids) + continue; /* don't compare to slave's current gids */ + gid_entry_tbl = &priv->roce_gids[port - 1][i]; + if (!memcmp(gid_entry_tbl->raw, zgid_entry.raw, sizeof(zgid_entry))) + continue; + gid_entry_mbox = (struct mlx4_roce_gid_entry *)(inbox->buf); + for (j = 0; j < num_gids; gid_entry_mbox++, j++) { + if (!memcmp(gid_entry_mbox->raw, zgid_entry.raw, + sizeof(zgid_entry))) + continue; + if (!memcmp(gid_entry_mbox->raw, gid_entry_tbl->raw, + sizeof(gid_entry_tbl->raw))) { + /* found duplicate */ + mlx4_warn(dev, "requested gid entry for slave:%d " + "is a duplicate of gid at index %d\n", + slave, i); + return -EINVAL; + } + } + } + + /* insert slave GIDs with memcpy, starting at slave's base index */ + gid_entry_mbox = (struct mlx4_roce_gid_entry *)(inbox->buf); + for (i = 0, offset = base; i < num_gids; gid_entry_mbox++, offset++, i++) + memcpy(priv->roce_gids[port - 1][offset].raw, gid_entry_mbox->raw, 16); + + /* Now, copy roce port gids table to current mailbox for passing to FW */ + gid_entry_mbox = (struct mlx4_roce_gid_entry *)(inbox->buf); + for (i = 0; i < MLX4_ROCE_MAX_GIDS; gid_entry_mbox++, i++) + memcpy(gid_entry_mbox->raw, priv->roce_gids[port - 1][i].raw, 16); + + break; } return mlx4_cmd(dev, inbox->dma, in_mod, op_mod, MLX4_CMD_SET_PORT, MLX4_CMD_TIME_CLASS_B, @@ -626,6 +790,15 @@ struct mlx4_cmd_mailbox *outbox, struct mlx4_cmd_info *cmd) { + int port = mlx4_slave_convert_port( + dev, slave, vhcr->in_modifier & 0xFF); + + if (port < 0) + return -EINVAL; + + vhcr->in_modifier = (vhcr->in_modifier & ~0xFF) | + (port & 0xFF); + return mlx4_common_set_port(dev, slave, vhcr->in_modifier, vhcr->op_modifier, inbox); } @@ -800,6 +973,48 @@ } EXPORT_SYMBOL(mlx4_SET_PORT_SCHEDULER); +enum { + VXLAN_ENABLE_MODIFY = 1 << 7, + VXLAN_STEERING_MODIFY = 1 << 6, + + VXLAN_ENABLE = 1 << 7, +}; + +struct mlx4_set_port_vxlan_context { + u32 reserved1; + u8 modify_flags; + u8 reserved2; + u8 enable_flags; + u8 steering; +}; + +int mlx4_SET_PORT_VXLAN(struct mlx4_dev *dev, u8 port, u8 steering, int enable) +{ + int err; + u32 in_mod; + struct mlx4_cmd_mailbox *mailbox; + struct mlx4_set_port_vxlan_context *context; + + mailbox = mlx4_alloc_cmd_mailbox(dev); + if (IS_ERR(mailbox)) + return PTR_ERR(mailbox); + context = mailbox->buf; + memset(context, 0, sizeof(*context)); + + context->modify_flags = VXLAN_ENABLE_MODIFY | VXLAN_STEERING_MODIFY; + if (enable) + context->enable_flags = VXLAN_ENABLE; + context->steering = steering; + + in_mod = MLX4_SET_PORT_VXLAN << 8 | port; + err = mlx4_cmd(dev, mailbox->dma, in_mod, 1, MLX4_CMD_SET_PORT, + MLX4_CMD_TIME_CLASS_B, MLX4_CMD_NATIVE); + + mlx4_free_cmd_mailbox(dev, mailbox); + return err; +} +EXPORT_SYMBOL(mlx4_SET_PORT_VXLAN); + int mlx4_SET_MCAST_FLTR_wrapper(struct mlx4_dev *dev, int slave, struct mlx4_vhcr *vhcr, struct mlx4_cmd_mailbox *inbox, @@ -866,3 +1081,108 @@ *stats_bitmap |= MLX4_STATS_ERROR_COUNTERS_MASK; } EXPORT_SYMBOL(mlx4_set_stats_bitmap); + +int mlx4_get_slave_from_roce_gid(struct mlx4_dev *dev, int port, u8 *gid, + int *slave_id) +{ + struct mlx4_priv *priv = mlx4_priv(dev); + int i, found_ix = -1; + int vf_gids = MLX4_ROCE_MAX_GIDS - MLX4_ROCE_PF_GIDS; + struct mlx4_slaves_pport slaves_pport; + unsigned num_vfs; + int slave_gid; + + if (!mlx4_is_mfunc(dev)) + return -EINVAL; + + slaves_pport = mlx4_phys_to_slaves_pport(dev, port); + num_vfs = bitmap_weight(slaves_pport.slaves, dev->num_vfs + 1) - 1; + + for (i = 0; i < MLX4_ROCE_MAX_GIDS; i++) { + if (!memcmp(priv->roce_gids[port - 1][i].raw, gid, 16)) { + found_ix = i; + break; + } + } + + if (found_ix >= 0) { + if (found_ix < MLX4_ROCE_PF_GIDS) + slave_gid = 0; + else if (found_ix < MLX4_ROCE_PF_GIDS + (vf_gids % num_vfs) * + (vf_gids / num_vfs + 1)) + slave_gid = ((found_ix - MLX4_ROCE_PF_GIDS) / + (vf_gids / num_vfs + 1)) + 1; + else + slave_gid = + ((found_ix - MLX4_ROCE_PF_GIDS - + ((vf_gids % num_vfs) * ((vf_gids / num_vfs + 1)))) / + (vf_gids / num_vfs)) + vf_gids % num_vfs + 1; + + if (slave_gid) { + struct mlx4_active_ports exclusive_ports; + struct mlx4_active_ports actv_ports; + struct mlx4_slaves_pport slaves_pport_actv; + unsigned max_port_p_one; + int num_slaves_before = 1; + + for (i = 1; i < port; i++) { + bitmap_zero(exclusive_ports.ports, dev->caps.num_ports); + set_bit(i, exclusive_ports.ports); + slaves_pport_actv = + mlx4_phys_to_slaves_pport_actv( + dev, &exclusive_ports); + num_slaves_before += bitmap_weight( + slaves_pport_actv.slaves, + dev->num_vfs + 1); + } + + if (slave_gid < num_slaves_before) { + bitmap_zero(exclusive_ports.ports, dev->caps.num_ports); + set_bit(port - 1, exclusive_ports.ports); + slaves_pport_actv = + mlx4_phys_to_slaves_pport_actv( + dev, &exclusive_ports); + slave_gid += bitmap_weight( + slaves_pport_actv.slaves, + dev->num_vfs + 1) - + num_slaves_before; + } + actv_ports = mlx4_get_active_ports(dev, slave_gid); + max_port_p_one = find_first_bit( + actv_ports.ports, dev->caps.num_ports) + + bitmap_weight(actv_ports.ports, + dev->caps.num_ports) + 1; + + for (i = 1; i < max_port_p_one; i++) { + if (i == port) + continue; + bitmap_zero(exclusive_ports.ports, + dev->caps.num_ports); + set_bit(i - 1, exclusive_ports.ports); + slaves_pport_actv = + mlx4_phys_to_slaves_pport_actv( + dev, &exclusive_ports); + slave_gid += bitmap_weight( + slaves_pport_actv.slaves, + dev->num_vfs + 1); + } + } + *slave_id = slave_gid; + } + + return (found_ix >= 0) ? 0 : -EINVAL; +} +EXPORT_SYMBOL(mlx4_get_slave_from_roce_gid); + +int mlx4_get_roce_gid_from_slave(struct mlx4_dev *dev, int port, int slave_id, + u8 *gid) +{ + struct mlx4_priv *priv = mlx4_priv(dev); + + if (!mlx4_is_master(dev)) + return -EINVAL; + + memcpy(gid, priv->roce_gids[port - 1][slave_id].raw, 16); + return 0; +} +EXPORT_SYMBOL(mlx4_get_roce_gid_from_slave); --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/qp.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/qp.c @@ -250,7 +250,7 @@ if (mlx4_is_qp_reserved(dev, (u32) base_qpn)) return; - mlx4_bitmap_free_range(&qp_table->bitmap, base_qpn, cnt); + mlx4_bitmap_free_range(&qp_table->bitmap, base_qpn, cnt, MLX4_USE_RR); } void mlx4_qp_release_range(struct mlx4_dev *dev, int base_qpn, int cnt) --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c @@ -52,6 +52,8 @@ struct mac_res { struct list_head list; u64 mac; + int ref_count; + u8 smac_index; u8 port; }; @@ -219,6 +221,11 @@ int qpn; }; +static int mlx4_is_eth(struct mlx4_dev *dev, int port) +{ + return dev->caps.port_mask[port] == MLX4_PORT_TYPE_IB ? 0 : 1; +} + static void *res_tracker_lookup(struct rb_root *root, u64 res_id) { struct rb_node *node = root->rb_node; @@ -461,6 +468,8 @@ spin_lock_init(&res_alloc->alloc_lock); for (t = 0; t < dev->num_vfs + 1; t++) { + struct mlx4_active_ports actv_ports = + mlx4_get_active_ports(dev, t); switch (i) { case RES_QP: initialize_res_quotas(dev, res_alloc, RES_QP, @@ -490,10 +499,27 @@ break; case RES_MAC: if (t == mlx4_master_func_num(dev)) { - res_alloc->quota[t] = MLX4_MAX_MAC_NUM; + int max_vfs_pport = 0; + /* Calculate the max vfs per port for */ + /* both ports. */ + for (j = 0; j < dev->caps.num_ports; + j++) { + struct mlx4_slaves_pport slaves_pport = + mlx4_phys_to_slaves_pport(dev, j + 1); + unsigned current_slaves = + bitmap_weight(slaves_pport.slaves, + dev->caps.num_ports) - 1; + if (max_vfs_pport < current_slaves) + max_vfs_pport = + current_slaves; + } + res_alloc->quota[t] = + MLX4_MAX_MAC_NUM - + 2 * max_vfs_pport; res_alloc->guaranteed[t] = 2; for (j = 0; j < MLX4_MAX_PORTS; j++) - res_alloc->res_port_free[j] = MLX4_MAX_MAC_NUM; + res_alloc->res_port_free[j] = + MLX4_MAX_MAC_NUM; } else { res_alloc->quota[t] = MLX4_MAX_MAC_NUM; res_alloc->guaranteed[t] = 2; @@ -521,9 +547,10 @@ break; } if (i == RES_MAC || i == RES_VLAN) { - for (j = 0; j < MLX4_MAX_PORTS; j++) - res_alloc->res_port_rsvd[j] += - res_alloc->guaranteed[t]; + for (j = 0; j < dev->caps.num_ports; j++) + if (test_bit(j, actv_ports.ports)) + res_alloc->res_port_rsvd[j] += + res_alloc->guaranteed[t]; } else { res_alloc->res_reserved += res_alloc->guaranteed[t]; } @@ -600,15 +627,37 @@ struct mlx4_qp_context *qp_ctx = inbox->buf + 8; enum mlx4_qp_optpar optpar = be32_to_cpu(*(__be32 *) inbox->buf); u32 ts = (be32_to_cpu(qp_ctx->flags) >> 16) & 0xff; + int port; - if (MLX4_QP_ST_UD == ts) - qp_ctx->pri_path.mgid_index = 0x80 | slave; + if (MLX4_QP_ST_UD == ts) { + port = (qp_ctx->pri_path.sched_queue >> 6 & 1) + 1; + if (mlx4_is_eth(dev, port)) + qp_ctx->pri_path.mgid_index = + mlx4_get_base_gid_ix(dev, slave, port) | 0x80; + else + qp_ctx->pri_path.mgid_index = slave | 0x80; - if (MLX4_QP_ST_RC == ts || MLX4_QP_ST_UC == ts) { - if (optpar & MLX4_QP_OPTPAR_PRIMARY_ADDR_PATH) - qp_ctx->pri_path.mgid_index = slave & 0x7F; - if (optpar & MLX4_QP_OPTPAR_ALT_ADDR_PATH) - qp_ctx->alt_path.mgid_index = slave & 0x7F; + } else if (MLX4_QP_ST_RC == ts || MLX4_QP_ST_XRC == ts || MLX4_QP_ST_UC == ts) { + if (optpar & MLX4_QP_OPTPAR_PRIMARY_ADDR_PATH) { + port = (qp_ctx->pri_path.sched_queue >> 6 & 1) + 1; + if (mlx4_is_eth(dev, port)) { + qp_ctx->pri_path.mgid_index += + mlx4_get_base_gid_ix(dev, slave, port); + qp_ctx->pri_path.mgid_index &= 0x7f; + } else { + qp_ctx->pri_path.mgid_index = slave & 0x7F; + } + } + if (optpar & MLX4_QP_OPTPAR_ALT_ADDR_PATH) { + port = (qp_ctx->alt_path.sched_queue >> 6 & 1) + 1; + if (mlx4_is_eth(dev, port)) { + qp_ctx->alt_path.mgid_index += + mlx4_get_base_gid_ix(dev, slave, port); + qp_ctx->alt_path.mgid_index &= 0x7f; + } else { + qp_ctx->alt_path.mgid_index = slave & 0x7F; + } + } } } @@ -619,7 +668,6 @@ struct mlx4_qp_context *qpc = inbox->buf + 8; struct mlx4_vport_oper_state *vp_oper; struct mlx4_priv *priv; - u32 qp_type; int port; port = (qpc->pri_path.sched_queue & 0x40) ? 2 : 1; @@ -627,12 +675,6 @@ vp_oper = &priv->mfunc.master.vf_oper[slave].vport[port]; if (MLX4_VGT != vp_oper->state.default_vlan) { - qp_type = (be32_to_cpu(qpc->flags) >> 16) & 0xff; - if (MLX4_QP_ST_RC == qp_type || - (MLX4_QP_ST_UD == qp_type && - !mlx4_is_qp_reserved(dev, qpn))) - return -EINVAL; - /* the reserved QPs (special, proxy, tunnel) * do not operate over vlans */ @@ -1340,43 +1382,29 @@ spin_lock_irq(mlx4_tlock(dev)); r = res_tracker_lookup(&tracker->res_tree[RES_CQ], cqn); - if (!r) + if (!r) { err = -ENOENT; - else if (r->com.owner != slave) + } else if (r->com.owner != slave) { err = -EPERM; - else { - switch (state) { - case RES_CQ_BUSY: - err = -EBUSY; - break; - - case RES_CQ_ALLOCATED: - if (r->com.state != RES_CQ_HW) - err = -EINVAL; - else if (atomic_read(&r->ref_count)) - err = -EBUSY; - else - err = 0; - break; - - case RES_CQ_HW: - if (r->com.state != RES_CQ_ALLOCATED) - err = -EINVAL; - else - err = 0; - break; - - default: + } else if (state == RES_CQ_ALLOCATED) { + if (r->com.state != RES_CQ_HW) err = -EINVAL; - } + else if (atomic_read(&r->ref_count)) + err = -EBUSY; + else + err = 0; + } else if (state != RES_CQ_HW || r->com.state != RES_CQ_ALLOCATED) { + err = -EINVAL; + } else { + err = 0; + } - if (!err) { - r->com.from_state = r->com.state; - r->com.to_state = state; - r->com.state = RES_CQ_BUSY; - if (cq) - *cq = r; - } + if (!err) { + r->com.from_state = r->com.state; + r->com.to_state = state; + r->com.state = RES_CQ_BUSY; + if (cq) + *cq = r; } spin_unlock_irq(mlx4_tlock(dev)); @@ -1385,7 +1413,7 @@ } static int srq_res_start_move_to(struct mlx4_dev *dev, int slave, int index, - enum res_cq_states state, struct res_srq **srq) + enum res_srq_states state, struct res_srq **srq) { struct mlx4_priv *priv = mlx4_priv(dev); struct mlx4_resource_tracker *tracker = &priv->mfunc.master.res_tracker; @@ -1394,39 +1422,25 @@ spin_lock_irq(mlx4_tlock(dev)); r = res_tracker_lookup(&tracker->res_tree[RES_SRQ], index); - if (!r) + if (!r) { err = -ENOENT; - else if (r->com.owner != slave) + } else if (r->com.owner != slave) { err = -EPERM; - else { - switch (state) { - case RES_SRQ_BUSY: + } else if (state == RES_SRQ_ALLOCATED) { + if (r->com.state != RES_SRQ_HW) err = -EINVAL; - break; - - case RES_SRQ_ALLOCATED: - if (r->com.state != RES_SRQ_HW) - err = -EINVAL; - else if (atomic_read(&r->ref_count)) - err = -EBUSY; - break; - - case RES_SRQ_HW: - if (r->com.state != RES_SRQ_ALLOCATED) - err = -EINVAL; - break; - - default: - err = -EINVAL; - } + else if (atomic_read(&r->ref_count)) + err = -EBUSY; + } else if (state != RES_SRQ_HW || r->com.state != RES_SRQ_ALLOCATED) { + err = -EINVAL; + } - if (!err) { - r->com.from_state = r->com.state; - r->com.to_state = state; - r->com.state = RES_SRQ_BUSY; - if (srq) - *srq = r; - } + if (!err) { + r->com.from_state = r->com.state; + r->com.to_state = state; + r->com.state = RES_SRQ_BUSY; + if (srq) + *srq = r; } spin_unlock_irq(mlx4_tlock(dev)); @@ -1687,11 +1701,39 @@ return err; } -static int mac_add_to_slave(struct mlx4_dev *dev, int slave, u64 mac, int port) +static int mac_find_smac_ix_in_slave(struct mlx4_dev *dev, int slave, int port, + u8 smac_index, u64 *mac) { struct mlx4_priv *priv = mlx4_priv(dev); struct mlx4_resource_tracker *tracker = &priv->mfunc.master.res_tracker; - struct mac_res *res; + struct list_head *mac_list = + &tracker->slave_list[slave].res_list[RES_MAC]; + struct mac_res *res, *tmp; + + list_for_each_entry_safe(res, tmp, mac_list, list) { + if (res->smac_index == smac_index && res->port == (u8) port) { + *mac = res->mac; + return 0; + } + } + return -ENOENT; +} + +static int mac_add_to_slave(struct mlx4_dev *dev, int slave, u64 mac, int port, u8 smac_index) +{ + struct mlx4_priv *priv = mlx4_priv(dev); + struct mlx4_resource_tracker *tracker = &priv->mfunc.master.res_tracker; + struct list_head *mac_list = + &tracker->slave_list[slave].res_list[RES_MAC]; + struct mac_res *res, *tmp; + + list_for_each_entry_safe(res, tmp, mac_list, list) { + if (res->mac == mac && res->port == (u8) port) { + /* mac found. update ref count */ + ++res->ref_count; + return 0; + } + } if (mlx4_grant_resource(dev, slave, RES_MAC, 1, port)) return -EINVAL; @@ -1702,6 +1744,8 @@ } res->mac = mac; res->port = (u8) port; + res->smac_index = smac_index; + res->ref_count = 1; list_add_tail(&res->list, &tracker->slave_list[slave].res_list[RES_MAC]); return 0; @@ -1718,9 +1762,11 @@ list_for_each_entry_safe(res, tmp, mac_list, list) { if (res->mac == mac && res->port == (u8) port) { - list_del(&res->list); - mlx4_release_resource(dev, slave, RES_MAC, 1, port); - kfree(res); + if (!--res->ref_count) { + list_del(&res->list); + mlx4_release_resource(dev, slave, RES_MAC, 1, port); + kfree(res); + } break; } } @@ -1733,10 +1779,13 @@ struct list_head *mac_list = &tracker->slave_list[slave].res_list[RES_MAC]; struct mac_res *res, *tmp; + int i; list_for_each_entry_safe(res, tmp, mac_list, list) { list_del(&res->list); - __mlx4_unregister_mac(dev, res->port, res->mac); + /* dereference the mac the num times the slave referenced it */ + for (i = 0; i < res->ref_count; i++) + __mlx4_unregister_mac(dev, res->port, res->mac); mlx4_release_resource(dev, slave, RES_MAC, 1, res->port); kfree(res); } @@ -1748,21 +1797,28 @@ int err = -EINVAL; int port; u64 mac; + u8 smac_index; if (op != RES_OP_RESERVE_AND_MAP) return err; port = !in_port ? get_param_l(out_param) : in_port; + port = mlx4_slave_convert_port( + dev, slave, port); + + if (port < 0) + return -EINVAL; mac = in_param; err = __mlx4_register_mac(dev, port, mac); if (err >= 0) { + smac_index = err; set_param_l(out_param, err); err = 0; } if (!err) { - err = mac_add_to_slave(dev, slave, mac, port); + err = mac_add_to_slave(dev, slave, mac, port, smac_index); if (err) __mlx4_unregister_mac(dev, port, mac); } @@ -1859,6 +1915,11 @@ if (!port || op != RES_OP_RESERVE_AND_MAP) return -EINVAL; + port = mlx4_slave_convert_port( + dev, slave, port); + + if (port < 0) + return -EINVAL; /* upstream kernels had NOP for reg/unreg vlan. Continue this. */ if (!in_port && port > 0 && port <= dev->caps.num_ports) { slave_state[slave].old_vlan_api = true; @@ -2156,6 +2217,11 @@ switch (op) { case RES_OP_RESERVE_AND_MAP: port = !in_port ? get_param_l(out_param) : in_port; + port = mlx4_slave_convert_port( + dev, slave, port); + + if (port < 0) + return -EINVAL; mac_del_from_slave(dev, slave, in_param, port); __mlx4_unregister_mac(dev, port, in_param); break; @@ -2175,6 +2241,11 @@ struct mlx4_slave_state *slave_state = priv->mfunc.master.slave_state; int err = 0; + port = mlx4_slave_convert_port( + dev, slave, port); + + if (port < 0) + return -EINVAL; switch (op) { case RES_OP_RESERVE_AND_MAP: if (slave_state[slave].old_vlan_api) @@ -2762,6 +2833,8 @@ u32 qp_type; struct mlx4_qp_context *qp_ctx; enum mlx4_qp_optpar optpar; + int port; + int num_gids; qp_ctx = inbox->buf + 8; qp_type = (be32_to_cpu(qp_ctx->flags) >> 16) & 0xff; @@ -2769,6 +2842,7 @@ switch (qp_type) { case MLX4_QP_ST_RC: + case MLX4_QP_ST_XRC: case MLX4_QP_ST_UC: switch (transition) { case QP_TRANS_INIT2RTR: @@ -2777,13 +2851,24 @@ case QP_TRANS_SQD2SQD: case QP_TRANS_SQD2RTS: if (slave != mlx4_master_func_num(dev)) - /* slaves have only gid index 0 */ - if (optpar & MLX4_QP_OPTPAR_PRIMARY_ADDR_PATH) - if (qp_ctx->pri_path.mgid_index) + if (optpar & MLX4_QP_OPTPAR_PRIMARY_ADDR_PATH) { + port = (qp_ctx->pri_path.sched_queue >> 6 & 1) + 1; + if (dev->caps.port_mask[port] != MLX4_PORT_TYPE_IB) + num_gids = mlx4_get_slave_num_gids(dev, slave, port); + else + num_gids = 1; + if (qp_ctx->pri_path.mgid_index >= num_gids) return -EINVAL; - if (optpar & MLX4_QP_OPTPAR_ALT_ADDR_PATH) - if (qp_ctx->alt_path.mgid_index) + } + if (optpar & MLX4_QP_OPTPAR_ALT_ADDR_PATH) { + port = (qp_ctx->alt_path.sched_queue >> 6 & 1) + 1; + if (dev->caps.port_mask[port] != MLX4_PORT_TYPE_IB) + num_gids = mlx4_get_slave_num_gids(dev, slave, port); + else + num_gids = 1; + if (qp_ctx->alt_path.mgid_index >= num_gids) return -EINVAL; + } break; default: break; @@ -3296,6 +3381,58 @@ return mlx4_GEN_QP_wrapper(dev, slave, vhcr, inbox, outbox, cmd); } +static int adjust_qp_sched_queue(struct mlx4_dev *dev, int slave, + struct mlx4_qp_context *qpc, + struct mlx4_cmd_mailbox *inbox) +{ + enum mlx4_qp_optpar optpar = be32_to_cpu(*(__be32 *)inbox->buf); + u8 pri_sched_queue; + int port = mlx4_slave_convert_port( + dev, slave, (qpc->pri_path.sched_queue >> 6 & 1) + 1) - 1; + + if (port < 0) + return -EINVAL; + + pri_sched_queue = (qpc->pri_path.sched_queue & ~(1 << 6)) | + ((port & 1) << 6); + + if (optpar & MLX4_QP_OPTPAR_PRIMARY_ADDR_PATH || + mlx4_is_eth(dev, port + 1)) { + qpc->pri_path.sched_queue = pri_sched_queue; + } + + if (optpar & MLX4_QP_OPTPAR_ALT_ADDR_PATH) { + port = mlx4_slave_convert_port( + dev, slave, (qpc->alt_path.sched_queue >> 6 & 1) + + 1) - 1; + if (port < 0) + return -EINVAL; + qpc->alt_path.sched_queue = + (qpc->alt_path.sched_queue & ~(1 << 6)) | + (port & 1) << 6; + } + return 0; +} + +static int roce_verify_mac(struct mlx4_dev *dev, int slave, + struct mlx4_qp_context *qpc, + struct mlx4_cmd_mailbox *inbox) +{ + u64 mac; + int port; + u32 ts = (be32_to_cpu(qpc->flags) >> 16) & 0xff; + u8 sched = *(u8 *)(inbox->buf + 64); + u8 smac_ix; + + port = (sched >> 6 & 1) + 1; + if (mlx4_is_eth(dev, port) && (ts != MLX4_QP_ST_MLX)) { + smac_ix = qpc->pri_path.grh_mylmc & 0x7f; + if (mac_find_smac_ix_in_slave(dev, slave, port, smac_ix, &mac)) + return -ENOENT; + } + return 0; +} + int mlx4_INIT2RTR_QP_wrapper(struct mlx4_dev *dev, int slave, struct mlx4_vhcr *vhcr, struct mlx4_cmd_mailbox *inbox, @@ -3314,10 +3451,16 @@ u8 orig_vlan_index = qpc->pri_path.vlan_index; u8 orig_feup = qpc->pri_path.feup; + err = adjust_qp_sched_queue(dev, slave, qpc, inbox); + if (err) + return err; err = verify_qp_parameters(dev, inbox, QP_TRANS_INIT2RTR, slave); if (err) return err; + if (roce_verify_mac(dev, slave, qpc, inbox)) + return -EINVAL; + update_pkey_index(dev, slave, inbox); update_gid(dev, inbox, (u8)slave); adjust_proxy_tun_qkey(dev, vhcr, qpc); @@ -3362,6 +3505,9 @@ int err; struct mlx4_qp_context *context = inbox->buf + 8; + err = adjust_qp_sched_queue(dev, slave, context, inbox); + if (err) + return err; err = verify_qp_parameters(dev, inbox, QP_TRANS_RTR2RTS, slave); if (err) return err; @@ -3381,6 +3527,9 @@ int err; struct mlx4_qp_context *context = inbox->buf + 8; + err = adjust_qp_sched_queue(dev, slave, context, inbox); + if (err) + return err; err = verify_qp_parameters(dev, inbox, QP_TRANS_RTS2RTS, slave); if (err) return err; @@ -3399,6 +3548,9 @@ struct mlx4_cmd_info *cmd) { struct mlx4_qp_context *context = inbox->buf + 8; + int err = adjust_qp_sched_queue(dev, slave, context, inbox); + if (err) + return err; adjust_proxy_tun_qkey(dev, vhcr, context); return mlx4_GEN_QP_wrapper(dev, slave, vhcr, inbox, outbox, cmd); } @@ -3412,6 +3564,9 @@ int err; struct mlx4_qp_context *context = inbox->buf + 8; + err = adjust_qp_sched_queue(dev, slave, context, inbox); + if (err) + return err; err = verify_qp_parameters(dev, inbox, QP_TRANS_SQD2SQD, slave); if (err) return err; @@ -3431,6 +3586,9 @@ int err; struct mlx4_qp_context *context = inbox->buf + 8; + err = adjust_qp_sched_queue(dev, slave, context, inbox); + if (err) + return err; err = verify_qp_parameters(dev, inbox, QP_TRANS_SQD2RTS, slave); if (err) return err; @@ -3534,16 +3692,26 @@ return err; } -static int qp_attach(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16], - int block_loopback, enum mlx4_protocol prot, +static int qp_attach(struct mlx4_dev *dev, int slave, struct mlx4_qp *qp, + u8 gid[16], int block_loopback, enum mlx4_protocol prot, enum mlx4_steer_type type, u64 *reg_id) { switch (dev->caps.steering_mode) { - case MLX4_STEERING_MODE_DEVICE_MANAGED: - return mlx4_trans_to_dmfs_attach(dev, qp, gid, gid[5], + case MLX4_STEERING_MODE_DEVICE_MANAGED: { + int port = mlx4_slave_convert_port(dev, slave, gid[5]); + if (port < 0) + return port; + return mlx4_trans_to_dmfs_attach(dev, qp, gid, port, block_loopback, prot, reg_id); + } case MLX4_STEERING_MODE_B0: + if (prot == MLX4_PROT_ETH) { + int port = mlx4_slave_convert_port(dev, slave, gid[5]); + if (port < 0) + return port; + gid[5] = port; + } return mlx4_qp_attach_common(dev, qp, gid, block_loopback, prot, type); default: @@ -3551,9 +3719,9 @@ } } -static int qp_detach(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16], - enum mlx4_protocol prot, enum mlx4_steer_type type, - u64 reg_id) +static int qp_detach(struct mlx4_dev *dev, struct mlx4_qp *qp, + u8 gid[16], enum mlx4_protocol prot, + enum mlx4_steer_type type, u64 reg_id) { switch (dev->caps.steering_mode) { case MLX4_STEERING_MODE_DEVICE_MANAGED: @@ -3590,7 +3758,7 @@ qp.qpn = qpn; if (attach) { - err = qp_attach(dev, &qp, gid, block_loopback, prot, + err = qp_attach(dev, slave, &qp, gid, block_loopback, prot, type, ®_id); if (err) { pr_err("Fail to attach rule to qp 0x%x\n", qpn); @@ -3634,7 +3802,7 @@ !is_broadcast_ether_addr(eth_header->eth.dst_mac)) { list_for_each_entry_safe(res, tmp, rlist, list) { be_mac = cpu_to_be64(res->mac << 16); - if (!memcmp(&be_mac, eth_header->eth.dst_mac, ETH_ALEN)) + if (ether_addr_equal((u8 *)&be_mac, eth_header->eth.dst_mac)) return 0; } pr_err("MAC %pM doesn't belong to VF %d, Steering rule rejected\n", @@ -3726,6 +3894,9 @@ return -EOPNOTSUPP; ctrl = (struct mlx4_net_trans_rule_hw_ctrl *)inbox->buf; + ctrl->port = mlx4_slave_convert_port(dev, slave, ctrl->port); + if (ctrl->port <= 0) + return -EINVAL; qpn = be32_to_cpu(ctrl->qpn) & 0xffffff; err = get_res(dev, slave, qpn, RES_QP, &rqp); if (err) { --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx4/srq.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx4/srq.c @@ -117,7 +117,7 @@ mlx4_table_put(dev, &srq_table->table, *srqn); err_out: - mlx4_bitmap_free(&srq_table->bitmap, *srqn); + mlx4_bitmap_free(&srq_table->bitmap, *srqn, MLX4_NO_RR); return err; } @@ -145,7 +145,7 @@ mlx4_table_put(dev, &srq_table->cmpt_table, srqn); mlx4_table_put(dev, &srq_table->table, srqn); - mlx4_bitmap_free(&srq_table->bitmap, srqn); + mlx4_bitmap_free(&srq_table->bitmap, srqn, MLX4_NO_RR); } static void mlx4_srq_free_icm(struct mlx4_dev *dev, int srqn) --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx5/core/Kconfig +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx5/core/Kconfig @@ -4,5 +4,5 @@ config MLX5_CORE tristate - depends on PCI && X86 + depends on PCI default n --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx5/core/cq.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx5/core/cq.c @@ -201,10 +201,23 @@ int mlx5_core_modify_cq(struct mlx5_core_dev *dev, struct mlx5_core_cq *cq, - int type, struct mlx5_cq_modify_params *params) + struct mlx5_modify_cq_mbox_in *in, int in_sz) { - return -ENOSYS; + struct mlx5_modify_cq_mbox_out out; + int err; + + memset(&out, 0, sizeof(out)); + in->hdr.opcode = cpu_to_be16(MLX5_CMD_OP_MODIFY_CQ); + err = mlx5_cmd_exec(dev, in, in_sz, &out, sizeof(out)); + if (err) + return err; + + if (out.hdr.status) + return mlx5_cmd_status_to_err(&out.hdr); + + return 0; } +EXPORT_SYMBOL(mlx5_core_modify_cq); int mlx5_init_cq_table(struct mlx5_core_dev *dev) { --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx5/core/debugfs.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx5/core/debugfs.c @@ -275,7 +275,7 @@ } static u64 qp_read_field(struct mlx5_core_dev *dev, struct mlx5_core_qp *qp, - int index) + int index, int *is_str) { struct mlx5_query_qp_mbox_out *out; struct mlx5_qp_context *ctx; @@ -293,19 +293,40 @@ goto out; } + *is_str = 0; ctx = &out->ctx; switch (index) { case QP_PID: param = qp->pid; break; case QP_STATE: - param = be32_to_cpu(ctx->flags) >> 28; + param = (u64)mlx5_qp_state_str(be32_to_cpu(ctx->flags) >> 28); + *is_str = 1; break; case QP_XPORT: - param = (be32_to_cpu(ctx->flags) >> 16) & 0xff; + param = (u64)mlx5_qp_type_str((be32_to_cpu(ctx->flags) >> 16) & 0xff); + *is_str = 1; break; case QP_MTU: - param = ctx->mtu_msgmax >> 5; + switch (ctx->mtu_msgmax >> 5) { + case IB_MTU_256: + param = 256; + break; + case IB_MTU_512: + param = 512; + break; + case IB_MTU_1024: + param = 1024; + break; + case IB_MTU_2048: + param = 2048; + break; + case IB_MTU_4096: + param = 4096; + break; + default: + param = 0; + } break; case QP_N_RECV: param = 1 << ((ctx->rq_size_stride >> 3) & 0xf); @@ -414,6 +435,7 @@ struct mlx5_field_desc *desc; struct mlx5_rsc_debug *d; char tbuf[18]; + int is_str = 0; u64 field; int ret; @@ -424,7 +446,7 @@ d = (void *)(desc - desc->i) - sizeof(*d); switch (d->type) { case MLX5_DBG_RSC_QP: - field = qp_read_field(d->dev, d->object, desc->i); + field = qp_read_field(d->dev, d->object, desc->i, &is_str); break; case MLX5_DBG_RSC_EQ: @@ -440,7 +462,12 @@ return -EINVAL; } - ret = snprintf(tbuf, sizeof(tbuf), "0x%llx\n", field); + + if (is_str) + ret = snprintf(tbuf, sizeof(tbuf), "%s\n", (const char *)field); + else + ret = snprintf(tbuf, sizeof(tbuf), "0x%llx\n", field); + if (ret > 0) { if (copy_to_user(buf, tbuf, ret)) return -EFAULT; --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx5/core/main.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx5/core/main.c @@ -46,8 +46,8 @@ #include "mlx5_core.h" #define DRIVER_NAME "mlx5_core" -#define DRIVER_VERSION "1.0" -#define DRIVER_RELDATE "June 2013" +#define DRIVER_VERSION "2.2-1" +#define DRIVER_RELDATE "Feb 2014" MODULE_AUTHOR("Eli Cohen "); MODULE_DESCRIPTION("Mellanox ConnectX-IB HCA core library"); @@ -460,7 +460,10 @@ err_stop_poll: mlx5_stop_health_poll(dev); - mlx5_cmd_teardown_hca(dev); + if (mlx5_cmd_teardown_hca(dev)) { + dev_err(&dev->pdev->dev, "tear_down_hca failed, skip cleanup\n"); + return err; + } err_pagealloc_stop: mlx5_pagealloc_stop(dev); @@ -503,7 +506,10 @@ mlx5_eq_cleanup(dev); mlx5_disable_msix(dev); mlx5_stop_health_poll(dev); - mlx5_cmd_teardown_hca(dev); + if (mlx5_cmd_teardown_hca(dev)) { + dev_err(&dev->pdev->dev, "tear_down_hca failed, skip cleanup\n"); + return; + } mlx5_pagealloc_stop(dev); mlx5_reclaim_startup_pages(dev); mlx5_core_disable_hca(dev); @@ -531,7 +537,6 @@ return 0; - mlx5_health_cleanup(); err_debug: mlx5_unregister_debugfs(); return err; --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx5/core/pagealloc.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx5/core/pagealloc.c @@ -99,7 +99,7 @@ enum { MLX5_MAX_RECLAIM_TIME_MILI = 5000, - MLX5_NUM_4K_IN_PAGE = PAGE_SIZE / 4096, + MLX5_NUM_4K_IN_PAGE = PAGE_SIZE / MLX5_ADAPTER_PAGE_SIZE, }; static int insert_page(struct mlx5_core_dev *dev, u64 addr, struct page *page, u16 func_id) @@ -192,10 +192,8 @@ struct fw_page *fp; unsigned n; - if (list_empty(&dev->priv.free_list)) { + if (list_empty(&dev->priv.free_list)) return -ENOMEM; - mlx5_core_warn(dev, "\n"); - } fp = list_entry(dev->priv.free_list.next, struct fw_page, list); n = find_first_bit(&fp->bitmask, 8 * sizeof(fp->bitmask)); @@ -208,7 +206,7 @@ if (!fp->free_count) list_del(&fp->list); - *addr = fp->addr + n * 4096; + *addr = fp->addr + n * MLX5_ADAPTER_PAGE_SIZE; return 0; } @@ -224,14 +222,15 @@ return; } - n = (addr & ~PAGE_MASK) % 4096; + n = (addr & ~PAGE_MASK) >> MLX5_ADAPTER_PAGE_SHIFT; fwp->free_count++; set_bit(n, &fwp->bitmask); if (fwp->free_count == MLX5_NUM_4K_IN_PAGE) { rb_erase(&fwp->rb_node, &dev->priv.page_root); if (fwp->free_count != 1) list_del(&fwp->list); - dma_unmap_page(&dev->pdev->dev, addr, PAGE_SIZE, DMA_BIDIRECTIONAL); + dma_unmap_page(&dev->pdev->dev, addr & PAGE_MASK, PAGE_SIZE, + DMA_BIDIRECTIONAL); __free_page(fwp->page); kfree(fwp); } else if (fwp->free_count == 1) { --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx5/core/port.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx5/core/port.c @@ -57,7 +57,7 @@ in->arg = cpu_to_be32(arg); in->register_id = cpu_to_be16(reg_num); err = mlx5_cmd_exec(dev, in, sizeof(*in) + size_in, out, - sizeof(out) + size_out); + sizeof(*out) + size_out); if (err) goto ex2; --- linux-3.13.0.orig/drivers/net/ethernet/mellanox/mlx5/core/qp.c +++ linux-3.13.0/drivers/net/ethernet/mellanox/mlx5/core/qp.c @@ -74,7 +74,7 @@ struct mlx5_destroy_qp_mbox_out dout; int err; - memset(&dout, 0, sizeof(dout)); + memset(&out, 0, sizeof(out)); in->hdr.opcode = cpu_to_be16(MLX5_CMD_OP_CREATE_QP); err = mlx5_cmd_exec(dev, in, inlen, &out, sizeof(out)); @@ -84,7 +84,8 @@ } if (out.hdr.status) { - pr_warn("current num of QPs 0x%x\n", atomic_read(&dev->num_qps)); + mlx5_core_warn(dev, "current num of QPs 0x%x\n", + atomic_read(&dev->num_qps)); return mlx5_cmd_status_to_err(&out.hdr); } --- linux-3.13.0.orig/drivers/net/ethernet/micrel/ks8851.c +++ linux-3.13.0/drivers/net/ethernet/micrel/ks8851.c @@ -23,6 +23,7 @@ #include #include #include +#include #include @@ -83,6 +84,7 @@ * @rc_rxqcr: Cached copy of KS_RXQCR. * @eeprom_size: Companion eeprom size in Bytes, 0 if no eeprom * @eeprom: 93CX6 EEPROM state for accessing on-board EEPROM. + * @vdd_reg: Optional regulator supplying the chip * * The @lock ensures that the chip is protected when certain operations are * in progress. When the read or write packet transfer is in progress, most @@ -130,6 +132,7 @@ struct spi_transfer spi_xfer2[2]; struct eeprom_93cx6 eeprom; + struct regulator *vdd_reg; }; static int msg_enable; @@ -1414,6 +1417,21 @@ ks->spidev = spi; ks->tx_space = 6144; + ks->vdd_reg = regulator_get_optional(&spi->dev, "vdd"); + if (IS_ERR(ks->vdd_reg)) { + ret = PTR_ERR(ks->vdd_reg); + if (ret == -EPROBE_DEFER) + goto err_reg; + } else { + ret = regulator_enable(ks->vdd_reg); + if (ret) { + dev_err(&spi->dev, "regulator enable fail: %d\n", + ret); + goto err_reg_en; + } + } + + mutex_init(&ks->lock); spin_lock_init(&ks->statelock); @@ -1508,8 +1526,14 @@ err_netdev: free_irq(ndev->irq, ks); -err_id: err_irq: +err_id: + if (!IS_ERR(ks->vdd_reg)) + regulator_disable(ks->vdd_reg); +err_reg_en: + if (!IS_ERR(ks->vdd_reg)) + regulator_put(ks->vdd_reg); +err_reg: free_netdev(ndev); return ret; } @@ -1523,6 +1547,10 @@ unregister_netdev(priv->netdev); free_irq(spi->irq, priv); + if (!IS_ERR(priv->vdd_reg)) { + regulator_disable(priv->vdd_reg); + regulator_put(priv->vdd_reg); + } free_netdev(priv->netdev); return 0; --- linux-3.13.0.orig/drivers/net/ethernet/neterion/vxge/vxge-main.c +++ linux-3.13.0/drivers/net/ethernet/neterion/vxge/vxge-main.c @@ -4206,6 +4206,9 @@ return ret; } +#define VXGE_PXE_FIRMWARE "vxge/X3fw-pxe.ncf" +#define VXGE_FIRMWARE "vxge/X3fw.ncf" + static int vxge_probe_fw_update(struct vxgedev *vdev) { u32 maj, min, bld; @@ -4248,9 +4251,9 @@ } } if (gpxe) - fw_name = "vxge/X3fw-pxe.ncf"; + fw_name = VXGE_PXE_FIRMWARE; else - fw_name = "vxge/X3fw.ncf"; + fw_name = VXGE_FIRMWARE; ret = vxge_fw_upgrade(vdev, fw_name, 0); /* -EINVAL and -ENOENT are not fatal errors for flashing firmware on @@ -4855,3 +4858,5 @@ } module_init(vxge_starter); module_exit(vxge_closer); +MODULE_FIRMWARE(VXGE_PXE_FIRMWARE); +MODULE_FIRMWARE(VXGE_FIRMWARE); --- linux-3.13.0.orig/drivers/net/ethernet/sfc/ef10.c +++ linux-3.13.0/drivers/net/ethernet/sfc/ef10.c @@ -555,10 +555,17 @@ * several of each (in fact that's the only option if host * page size is >4K). So we may allocate some extra VIs just * for writing PIO buffers through. + * + * The UC mapping contains (min_vis - 1) complete VIs and the + * first half of the next VI. Then the WC mapping begins with + * the second half of this last VI. */ uc_mem_map_size = PAGE_ALIGN((min_vis - 1) * EFX_VI_PAGE_SIZE + ER_DZ_TX_PIOBUF); if (nic_data->n_piobufs) { + /* pio_write_vi_base rounds down to give the number of complete + * VIs inside the UC mapping. + */ pio_write_vi_base = uc_mem_map_size / EFX_VI_PAGE_SIZE; wc_mem_map_size = (PAGE_ALIGN((pio_write_vi_base + nic_data->n_piobufs) * --- linux-3.13.0.orig/drivers/net/ethernet/sfc/efx.c +++ linux-3.13.0/drivers/net/ethernet/sfc/efx.c @@ -1514,6 +1514,8 @@ if (rc) goto fail1; + efx_set_channels(efx); + rc = efx->type->dimension_resources(efx); if (rc) goto fail2; @@ -1524,7 +1526,6 @@ efx->rx_indir_table[i] = ethtool_rxfh_indir_default(i, efx->rss_spread); - efx_set_channels(efx); netif_set_real_num_tx_queues(efx->net_dev, efx->n_tx_channels); netif_set_real_num_rx_queues(efx->net_dev, efx->n_rx_channels); --- linux-3.13.0.orig/drivers/net/ethernet/sfc/efx.h +++ linux-3.13.0/drivers/net/ethernet/sfc/efx.h @@ -66,6 +66,9 @@ #define EFX_RXQ_MIN_ENT 128U #define EFX_TXQ_MIN_ENT(efx) (2 * efx_tx_max_skb_descs(efx)) +#define EFX_TXQ_MAX_ENT(efx) (EFX_WORKAROUND_35388(efx) ? \ + EFX_MAX_DMAQ_SIZE / 2 : EFX_MAX_DMAQ_SIZE) + /* Filters */ /** --- linux-3.13.0.orig/drivers/net/ethernet/sfc/ethtool.c +++ linux-3.13.0/drivers/net/ethernet/sfc/ethtool.c @@ -583,7 +583,7 @@ struct efx_nic *efx = netdev_priv(net_dev); ring->rx_max_pending = EFX_MAX_DMAQ_SIZE; - ring->tx_max_pending = EFX_MAX_DMAQ_SIZE; + ring->tx_max_pending = EFX_TXQ_MAX_ENT(efx); ring->rx_pending = efx->rxq_entries; ring->tx_pending = efx->txq_entries; } @@ -596,7 +596,7 @@ if (ring->rx_mini_pending || ring->rx_jumbo_pending || ring->rx_pending > EFX_MAX_DMAQ_SIZE || - ring->tx_pending > EFX_MAX_DMAQ_SIZE) + ring->tx_pending > EFX_TXQ_MAX_ENT(efx)) return -EINVAL; if (ring->rx_pending < EFX_RXQ_MIN_ENT) { --- linux-3.13.0.orig/drivers/net/ethernet/sfc/ptp.c +++ linux-3.13.0/drivers/net/ethernet/sfc/ptp.c @@ -1360,6 +1360,13 @@ struct efx_ptp_data *ptp = efx->ptp_data; int code = EFX_QWORD_FIELD(*ev, MCDI_EVENT_CODE); + if (!ptp) { + if (net_ratelimit()) + netif_warn(efx, drv, efx->net_dev, + "Received PTP event but PTP not set up\n"); + return; + } + if (!ptp->enabled) return; --- linux-3.13.0.orig/drivers/net/ethernet/ti/davinci_emac.c +++ linux-3.13.0/drivers/net/ethernet/ti/davinci_emac.c @@ -1532,7 +1532,7 @@ struct device *emac_dev = &ndev->dev; u32 cnt; struct resource *res; - int ret; + int q, m, ret; int i = 0; int k = 0; struct emac_priv *priv = netdev_priv(ndev); @@ -1567,8 +1567,7 @@ while ((res = platform_get_resource(priv->pdev, IORESOURCE_IRQ, k))) { for (i = res->start; i <= res->end; i++) { - if (devm_request_irq(&priv->pdev->dev, i, emac_irq, - 0, ndev->name, ndev)) + if (request_irq(i, emac_irq, 0, ndev->name, ndev)) goto rollback; } k++; @@ -1641,7 +1640,15 @@ rollback: - dev_err(emac_dev, "DaVinci EMAC: devm_request_irq() failed"); + dev_err(emac_dev, "DaVinci EMAC: request_irq() failed"); + + for (q = k; k >= 0; k--) { + for (m = i; m >= res->start; m--) + free_irq(m, ndev); + res = platform_get_resource(priv->pdev, IORESOURCE_IRQ, k-1); + m = res->end; + } + ret = -EBUSY; err: pm_runtime_put(&priv->pdev->dev); @@ -1659,6 +1666,9 @@ */ static int emac_dev_stop(struct net_device *ndev) { + struct resource *res; + int i = 0; + int irq_num; struct emac_priv *priv = netdev_priv(ndev); struct device *emac_dev = &ndev->dev; @@ -1674,6 +1684,13 @@ if (priv->phydev) phy_disconnect(priv->phydev); + /* Free IRQ */ + while ((res = platform_get_resource(priv->pdev, IORESOURCE_IRQ, i))) { + for (irq_num = res->start; irq_num <= res->end; irq_num++) + free_irq(irq_num, priv->ndev); + i++; + } + if (netif_msg_drv(priv)) dev_notice(emac_dev, "DaVinci EMAC: %s stopped\n", ndev->name); --- linux-3.13.0.orig/drivers/net/ethernet/tile/tilegx.c +++ linux-3.13.0/drivers/net/ethernet/tile/tilegx.c @@ -2081,7 +2081,7 @@ /* Return subqueue id on this core (one per core). */ static u16 tile_net_select_queue(struct net_device *dev, struct sk_buff *skb, - void *accel_priv) + void *accel_priv, select_queue_fallback_t fallback) { return smp_processor_id(); } --- linux-3.13.0.orig/drivers/net/hyperv/hyperv_net.h +++ linux-3.13.0/drivers/net/hyperv/hyperv_net.h @@ -463,7 +463,8 @@ #define NETVSC_MTU 65536 -#define NETVSC_RECEIVE_BUFFER_SIZE (1024*1024*2) /* 2MB */ +#define NETVSC_RECEIVE_BUFFER_SIZE (1024*1024*16) /* 16MB */ +#define NETVSC_RECEIVE_BUFFER_SIZE_LEGACY (1024*1024*15) /* 15MB */ #define NETVSC_RECEIVE_BUFFER_ID 0xcafe --- linux-3.13.0.orig/drivers/net/hyperv/netvsc.c +++ linux-3.13.0/drivers/net/hyperv/netvsc.c @@ -137,8 +137,7 @@ if (net_device->recv_buf) { /* Free up the receive buffer */ - free_pages((unsigned long)net_device->recv_buf, - get_order(net_device->recv_buf_size)); + vfree(net_device->recv_buf); net_device->recv_buf = NULL; } @@ -164,9 +163,7 @@ return -ENODEV; ndev = net_device->ndev; - net_device->recv_buf = - (void *)__get_free_pages(GFP_KERNEL|__GFP_ZERO, - get_order(net_device->recv_buf_size)); + net_device->recv_buf = vzalloc(net_device->recv_buf_size); if (!net_device->recv_buf) { netdev_err(ndev, "unable to allocate receive " "buffer of size %d\n", net_device->recv_buf_size); @@ -362,6 +359,11 @@ goto cleanup; /* Post the big receive buffer to NetVSP */ + if (net_device->nvsp_version <= NVSP_PROTOCOL_VERSION_2) + net_device->recv_buf_size = NETVSC_RECEIVE_BUFFER_SIZE_LEGACY; + else + net_device->recv_buf_size = NETVSC_RECEIVE_BUFFER_SIZE; + ret = netvsc_init_recv_buf(device); cleanup: @@ -911,7 +913,6 @@ ndev = net_device->ndev; /* Initialize the NetVSC channel extension */ - net_device->recv_buf_size = NETVSC_RECEIVE_BUFFER_SIZE; spin_lock_init(&net_device->recv_pkt_list_lock); INIT_LIST_HEAD(&net_device->recv_pkt_list); --- linux-3.13.0.orig/drivers/net/hyperv/netvsc_drv.c +++ linux-3.13.0/drivers/net/hyperv/netvsc_drv.c @@ -89,8 +89,12 @@ { struct net_device_context *net_device_ctx = netdev_priv(net); struct hv_device *device_obj = net_device_ctx->device_ctx; + struct netvsc_device *nvdev; + struct rndis_device *rdev; int ret = 0; + netif_carrier_off(net); + /* Open up the device */ ret = rndis_filter_open(device_obj); if (ret != 0) { @@ -100,6 +104,11 @@ netif_start_queue(net); + nvdev = hv_get_drvdata(device_obj); + rdev = nvdev->extension; + if (!rdev->link_state) + netif_carrier_on(net); + return ret; } @@ -230,23 +239,24 @@ struct net_device *net; struct net_device_context *ndev_ctx; struct netvsc_device *net_device; + struct rndis_device *rdev; net_device = hv_get_drvdata(device_obj); + rdev = net_device->extension; + + rdev->link_state = status != 1; + net = net_device->ndev; - if (!net) { - netdev_err(net, "got link status but net device " - "not initialized yet\n"); + if (!net || net->reg_state != NETREG_REGISTERED) return; - } + ndev_ctx = netdev_priv(net); if (status == 1) { - netif_carrier_on(net); - ndev_ctx = netdev_priv(net); schedule_delayed_work(&ndev_ctx->dwork, 0); schedule_delayed_work(&ndev_ctx->dwork, msecs_to_jiffies(20)); } else { - netif_carrier_off(net); + schedule_delayed_work(&ndev_ctx->dwork, 0); } } @@ -389,17 +399,35 @@ * current context when receiving RNDIS_STATUS_MEDIA_CONNECT event. So, add * another netif_notify_peers() into a delayed work, otherwise GARP packet * will not be sent after quick migration, and cause network disconnection. + * Also, we update the carrier status here. */ -static void netvsc_send_garp(struct work_struct *w) +static void netvsc_link_change(struct work_struct *w) { struct net_device_context *ndev_ctx; struct net_device *net; struct netvsc_device *net_device; + struct rndis_device *rdev; + bool notify; + + rtnl_lock(); ndev_ctx = container_of(w, struct net_device_context, dwork.work); net_device = hv_get_drvdata(ndev_ctx->device_ctx); + rdev = net_device->extension; net = net_device->ndev; - netdev_notify_peers(net); + + if (rdev->link_state) { + netif_carrier_off(net); + notify = false; + } else { + netif_carrier_on(net); + notify = true; + } + + rtnl_unlock(); + + if (notify) + netdev_notify_peers(net); } @@ -415,13 +443,10 @@ if (!net) return -ENOMEM; - /* Set initial state */ - netif_carrier_off(net); - net_device_ctx = netdev_priv(net); net_device_ctx->device_ctx = dev; hv_set_drvdata(dev, net); - INIT_DELAYED_WORK(&net_device_ctx->dwork, netvsc_send_garp); + INIT_DELAYED_WORK(&net_device_ctx->dwork, netvsc_link_change); INIT_WORK(&net_device_ctx->work, do_set_multicast); net->netdev_ops = &device_ops; @@ -444,8 +469,6 @@ } memcpy(net->dev_addr, device_info.mac_adr, ETH_ALEN); - netif_carrier_on(net); - ret = register_netdev(net); if (ret != 0) { pr_err("Unable to register netdev.\n"); --- linux-3.13.0.orig/drivers/net/macvlan.c +++ linux-3.13.0/drivers/net/macvlan.c @@ -507,6 +507,9 @@ static struct lock_class_key macvlan_netdev_xmit_lock_key; static struct lock_class_key macvlan_netdev_addr_lock_key; +#define ALWAYS_ON_FEATURES \ + (NETIF_F_SG | NETIF_F_GEN_CSUM | NETIF_F_GSO_SOFTWARE | NETIF_F_LLTX) + #define MACVLAN_FEATURES \ (NETIF_F_SG | NETIF_F_ALL_CSUM | NETIF_F_HIGHDMA | NETIF_F_FRAGLIST | \ NETIF_F_GSO | NETIF_F_TSO | NETIF_F_UFO | NETIF_F_GSO_ROBUST | \ @@ -540,7 +543,7 @@ dev->state = (dev->state & ~MACVLAN_STATE_MASK) | (lowerdev->state & MACVLAN_STATE_MASK); dev->features = lowerdev->features & MACVLAN_FEATURES; - dev->features |= NETIF_F_LLTX; + dev->features |= ALWAYS_ON_FEATURES; dev->gso_max_size = lowerdev->gso_max_size; dev->iflink = lowerdev->ifindex; dev->hard_header_len = lowerdev->hard_header_len; @@ -700,7 +703,7 @@ features = netdev_increment_features(vlan->lowerdev->features, features, mask); - features |= NETIF_F_LLTX; + features |= ALWAYS_ON_FEATURES; return features; } --- linux-3.13.0.orig/drivers/net/phy/fixed.c +++ linux-3.13.0/drivers/net/phy/fixed.c @@ -5,6 +5,7 @@ * Anton Vorontsov * * Copyright (c) 2006-2007 MontaVista Software, Inc. + * Copyright 2009 Freescale Semiconductor, Inc. * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the @@ -17,6 +18,7 @@ #include #include #include +#include #include #include #include @@ -55,6 +57,9 @@ bmcr |= BMCR_FULLDPLX; switch (fp->status.speed) { + case 10000: + fp->regs[MDIO_STAT2] = MDIO_STAT2_DEVPRST_VAL; + break; case 1000: bmsr |= BMSR_ESTATEN; bmcr |= BMCR_SPEED1000; @@ -75,6 +80,9 @@ } } else { switch (fp->status.speed) { + case 10000: + fp->regs[MDIO_STAT2] = MDIO_STAT2_DEVPRST_VAL; + break; case 1000: bmsr |= BMSR_ESTATEN; bmcr |= BMCR_SPEED1000; --- linux-3.13.0.orig/drivers/net/phy/phy_device.c +++ linux-3.13.0/drivers/net/phy/phy_device.c @@ -32,6 +32,7 @@ #include #include #include +#include #include #include @@ -54,15 +55,13 @@ } static struct phy_driver genphy_driver; +static struct phy_driver gen10g_driver; extern int mdio_bus_init(void); extern void mdio_bus_exit(void); static LIST_HEAD(phy_fixup_list); static DEFINE_MUTEX(phy_fixup_lock); -static int phy_attach_direct(struct net_device *dev, struct phy_device *phydev, - u32 flags, phy_interface_t interface); - /* * Creates a new phy_fixup and adds it to the list * @bus_id: A string which matches phydev->dev.bus_id (or PHY_ANY_ID) @@ -520,13 +519,13 @@ * * Description: Called by drivers to attach to a particular PHY * device. The phy_device is found, and properly hooked up - * to the phy_driver. If no driver is attached, then the - * genphy_driver is used. The phy_device is given a ptr to + * to the phy_driver. If no driver is attached, then a + * generic driver is used. The phy_device is given a ptr to * the attaching device, and given a callback for link status * change. The phy_device is returned to the attaching driver. */ -static int phy_attach_direct(struct net_device *dev, struct phy_device *phydev, - u32 flags, phy_interface_t interface) +int phy_attach_direct(struct net_device *dev, struct phy_device *phydev, + u32 flags, phy_interface_t interface) { struct device *d = &phydev->dev; int err; @@ -534,12 +533,10 @@ /* Assume that if there is no driver, that it doesn't * exist, and we should use the genphy driver. */ if (NULL == d->driver) { - if (phydev->is_c45) { - pr_err("No driver for phy %x\n", phydev->phy_id); - return -ENODEV; - } - - d->driver = &genphy_driver.driver; + if (phydev->is_c45) + d->driver = &gen10g_driver.driver; + else + d->driver = &genphy_driver.driver; err = d->driver->probe(d); if (err >= 0) @@ -572,6 +569,7 @@ return err; } +EXPORT_SYMBOL(phy_attach_direct); /** * phy_attach - attach a network device to a particular PHY device @@ -622,6 +620,8 @@ * real driver could be loaded */ if (phydev->dev.driver == &genphy_driver.driver) device_release_driver(&phydev->dev); + else if (phydev->dev.driver == &gen10g_driver.driver) + device_release_driver(&phydev->dev); } EXPORT_SYMBOL(phy_detach); @@ -689,6 +689,13 @@ return changed; } +int gen10g_config_advert(struct phy_device *dev) +{ + return 0; +} +EXPORT_SYMBOL(gen10g_config_advert); + + /** * genphy_setup_forced - configures/forces speed/duplex from @phydev * @phydev: target phy_device struct @@ -742,6 +749,12 @@ } EXPORT_SYMBOL(genphy_restart_aneg); +int gen10g_restart_aneg(struct phy_device *phydev) +{ + return 0; +} +EXPORT_SYMBOL(gen10g_restart_aneg); + /** * genphy_config_aneg - restart auto-negotiation or write BMCR @@ -784,6 +797,13 @@ } EXPORT_SYMBOL(genphy_config_aneg); +int gen10g_config_aneg(struct phy_device *phydev) +{ + return 0; +} +EXPORT_SYMBOL(gen10g_config_aneg); + + /** * genphy_update_link - update link status in @phydev * @phydev: target phy_device struct @@ -867,6 +887,16 @@ lpa &= adv; + err = phy_read(phydev, MII_BMSR); + + if (err < 0) + return err; + + /* if the link changed while reading speed and duplex + * abort the speed and duplex update */ + if (((err & BMSR_LSTATUS) == 0) != (phydev->link == 0)) + return 0; + phydev->speed = SPEED_10; phydev->duplex = DUPLEX_HALF; phydev->pause = phydev->asym_pause = 0; @@ -913,6 +943,34 @@ } EXPORT_SYMBOL(genphy_read_status); +int gen10g_read_status(struct phy_device *phydev) +{ + int devad, reg; + u32 mmd_mask = phydev->c45_ids.devices_in_package; + + phydev->link = 1; + + /* For now just lie and say it's 10G all the time */ + phydev->speed = 10000; + phydev->duplex = DUPLEX_FULL; + + for (devad = 0; mmd_mask; devad++, mmd_mask = mmd_mask >> 1) { + if (!mmd_mask & 1) + continue; + + /* Read twice because link state is latched and a + * read moves the current state into the register */ + phy_read_mmd(phydev, devad, MDIO_STAT1); + reg = phy_read_mmd(phydev, devad, MDIO_STAT1); + if (reg < 0 || !(reg & MDIO_STAT1_LSTATUS)) + phydev->link = 0; + } + + return 0; +} +EXPORT_SYMBOL(gen10g_read_status); + + static int genphy_config_init(struct phy_device *phydev) { int val; @@ -959,6 +1017,15 @@ return 0; } + +static int gen10g_config_init(struct phy_device *phydev) +{ + /* Temporarily just say we support everything */ + phydev->supported = phydev->advertising = SUPPORTED_10000baseT_Full; + + return 0; +} + int genphy_suspend(struct phy_device *phydev) { int value; @@ -974,6 +1041,13 @@ } EXPORT_SYMBOL(genphy_suspend); +int gen10g_suspend(struct phy_device *phydev) +{ + return 0; +} +EXPORT_SYMBOL(gen10g_suspend); + + int genphy_resume(struct phy_device *phydev) { int value; @@ -989,6 +1063,13 @@ } EXPORT_SYMBOL(genphy_resume); +int gen10g_resume(struct phy_device *phydev) +{ + return 0; +} +EXPORT_SYMBOL(gen10g_resume); + + /** * phy_probe - probe and init a PHY device * @dev: device to probe and init @@ -1129,6 +1210,20 @@ .driver = {.owner= THIS_MODULE, }, }; +static struct phy_driver gen10g_driver = { + .phy_id = 0xffffffff, + .phy_id_mask = 0xffffffff, + .name = "Generic 10G PHY", + .config_init = gen10g_config_init, + .features = 0, + .config_aneg = gen10g_config_aneg, + .read_status = gen10g_read_status, + .suspend = gen10g_suspend, + .resume = gen10g_resume, + .driver = {.owner = THIS_MODULE, }, +}; + + static int __init phy_init(void) { int rc; @@ -1139,13 +1234,25 @@ rc = phy_driver_register(&genphy_driver); if (rc) - mdio_bus_exit(); + goto genphy_register_failed; + + rc = phy_driver_register(&gen10g_driver); + if (rc) + goto gen10g_register_failed; + + return rc; + +gen10g_register_failed: + phy_driver_unregister(&genphy_driver); +genphy_register_failed: + mdio_bus_exit(); return rc; } static void __exit phy_exit(void) { + phy_driver_unregister(&gen10g_driver); phy_driver_unregister(&genphy_driver); mdio_bus_exit(); } --- linux-3.13.0.orig/drivers/net/phy/vitesse.c +++ linux-3.13.0/drivers/net/phy/vitesse.c @@ -74,7 +74,7 @@ MODULE_AUTHOR("Kriston Carson"); MODULE_LICENSE("GPL"); -static int vsc824x_add_skew(struct phy_device *phydev) +int vsc824x_add_skew(struct phy_device *phydev) { int err; int extcon; @@ -94,6 +94,7 @@ return err; } +EXPORT_SYMBOL(vsc824x_add_skew); static int vsc824x_config_init(struct phy_device *phydev) { --- linux-3.13.0.orig/drivers/net/team/team.c +++ linux-3.13.0/drivers/net/team/team.c @@ -1648,7 +1648,7 @@ } static u16 team_select_queue(struct net_device *dev, struct sk_buff *skb, - void *accel_priv) + void *accel_priv, select_queue_fallback_t fallback) { /* * This helper function exists to help dev_pick_tx get the correct --- linux-3.13.0.orig/drivers/net/tun.c +++ linux-3.13.0/drivers/net/tun.c @@ -349,7 +349,7 @@ * hope the rxq no. may help here. */ static u16 tun_select_queue(struct net_device *dev, struct sk_buff *skb, - void *accel_priv) + void *accel_priv, select_queue_fallback_t fallback) { struct tun_struct *tun = netdev_priv(dev); struct tun_flow_entry *e; @@ -1651,7 +1651,9 @@ TUN_USER_FEATURES | NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_HW_VLAN_STAG_TX; dev->features = dev->hw_features; - dev->vlan_features = dev->features; + dev->vlan_features = dev->features & + ~(NETIF_F_HW_VLAN_CTAG_TX | + NETIF_F_HW_VLAN_STAG_TX); INIT_LIST_HEAD(&tun->disabled); err = tun_attach(tun, file, false); --- linux-3.13.0.orig/drivers/net/usb/asix_devices.c +++ linux-3.13.0/drivers/net/usb/asix_devices.c @@ -918,7 +918,8 @@ .status = asix_status, .link_reset = ax88178_link_reset, .reset = ax88178_reset, - .flags = FLAG_ETHER | FLAG_FRAMING_AX | FLAG_LINK_INTR, + .flags = FLAG_ETHER | FLAG_FRAMING_AX | FLAG_LINK_INTR | + FLAG_MULTI_PACKET, .rx_fixup = asix_rx_fixup_common, .tx_fixup = asix_tx_fixup, }; --- linux-3.13.0.orig/drivers/net/usb/ax88179_178a.c +++ linux-3.13.0/drivers/net/usb/ax88179_178a.c @@ -1030,20 +1030,12 @@ dev->mii.phy_id = 0x03; dev->mii.supports_gmii = 1; - if (usb_device_no_sg_constraint(dev->udev)) - dev->can_dma_sg = 1; - dev->net->features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | NETIF_F_RXCSUM; dev->net->hw_features |= NETIF_F_IP_CSUM | NETIF_F_IPV6_CSUM | NETIF_F_RXCSUM; - if (dev->can_dma_sg) { - dev->net->features |= NETIF_F_SG | NETIF_F_TSO; - dev->net->hw_features |= NETIF_F_SG | NETIF_F_TSO; - } - /* Enable checksum offload */ *tmp = AX_RXCOE_IP | AX_RXCOE_TCP | AX_RXCOE_UDP | AX_RXCOE_TCPV6 | AX_RXCOE_UDPV6; @@ -1119,6 +1111,10 @@ u16 hdr_off; u32 *pkt_hdr; + /* This check is no longer done by usbnet */ + if (skb->len < dev->net->hard_header_len) + return 0; + skb_trim(skb, skb->len - 4); memcpy(&rx_hdr, skb_tail_pointer(skb), 4); le32_to_cpus(&rx_hdr); @@ -1418,6 +1414,19 @@ .tx_fixup = ax88179_tx_fixup, }; +static const struct driver_info lenovo_info = { + .description = "Lenovo OneLinkDock Gigabit LAN", + .bind = ax88179_bind, + .unbind = ax88179_unbind, + .status = ax88179_status, + .link_reset = ax88179_link_reset, + .reset = ax88179_reset, + .stop = ax88179_stop, + .flags = FLAG_ETHER | FLAG_FRAMING_AX, + .rx_fixup = ax88179_rx_fixup, + .tx_fixup = ax88179_tx_fixup, +}; + static const struct usb_device_id products[] = { { /* ASIX AX88179 10/100/1000 */ @@ -1435,6 +1444,10 @@ /* Samsung USB Ethernet Adapter */ USB_DEVICE(0x04e8, 0xa100), .driver_info = (unsigned long)&samsung_info, +}, { + /* Lenovo OneLinkDock Gigabit LAN */ + USB_DEVICE(0x17ef, 0x304b), + .driver_info = (unsigned long)&lenovo_info, }, { }, }; --- linux-3.13.0.orig/drivers/net/usb/cdc_ncm.c +++ linux-3.13.0/drivers/net/usb/cdc_ncm.c @@ -69,7 +69,6 @@ static int cdc_ncm_setup(struct usbnet *dev) { struct cdc_ncm_ctx *ctx = (struct cdc_ncm_ctx *)dev->data[0]; - struct usb_cdc_ncm_ntb_parameters ncm_parm; u32 val; u8 flags; u8 iface_no; @@ -83,22 +82,22 @@ err = usbnet_read_cmd(dev, USB_CDC_GET_NTB_PARAMETERS, USB_TYPE_CLASS | USB_DIR_IN |USB_RECIP_INTERFACE, - 0, iface_no, &ncm_parm, - sizeof(ncm_parm)); + 0, iface_no, &ctx->ncm_parm, + sizeof(ctx->ncm_parm)); if (err < 0) { dev_err(&dev->intf->dev, "failed GET_NTB_PARAMETERS\n"); return err; /* GET_NTB_PARAMETERS is required */ } /* read correct set of parameters according to device mode */ - ctx->rx_max = le32_to_cpu(ncm_parm.dwNtbInMaxSize); - ctx->tx_max = le32_to_cpu(ncm_parm.dwNtbOutMaxSize); - ctx->tx_remainder = le16_to_cpu(ncm_parm.wNdpOutPayloadRemainder); - ctx->tx_modulus = le16_to_cpu(ncm_parm.wNdpOutDivisor); - ctx->tx_ndp_modulus = le16_to_cpu(ncm_parm.wNdpOutAlignment); + ctx->rx_max = le32_to_cpu(ctx->ncm_parm.dwNtbInMaxSize); + ctx->tx_max = le32_to_cpu(ctx->ncm_parm.dwNtbOutMaxSize); + ctx->tx_remainder = le16_to_cpu(ctx->ncm_parm.wNdpOutPayloadRemainder); + ctx->tx_modulus = le16_to_cpu(ctx->ncm_parm.wNdpOutDivisor); + ctx->tx_ndp_modulus = le16_to_cpu(ctx->ncm_parm.wNdpOutAlignment); /* devices prior to NCM Errata shall set this field to zero */ - ctx->tx_max_datagrams = le16_to_cpu(ncm_parm.wNtbOutMaxDatagrams); - ntb_fmt_supported = le16_to_cpu(ncm_parm.bmNtbFormatsSupported); + ctx->tx_max_datagrams = le16_to_cpu(ctx->ncm_parm.wNtbOutMaxDatagrams); + ntb_fmt_supported = le16_to_cpu(ctx->ncm_parm.bmNtbFormatsSupported); /* there are some minor differences in NCM and MBIM defaults */ if (cdc_ncm_comm_intf_is_mbim(ctx->control->cur_altsetting)) { @@ -147,7 +146,7 @@ } /* inform device about NTB input size changes */ - if (ctx->rx_max != le32_to_cpu(ncm_parm.dwNtbInMaxSize)) { + if (ctx->rx_max != le32_to_cpu(ctx->ncm_parm.dwNtbInMaxSize)) { __le32 dwNtbInMaxSize = cpu_to_le32(ctx->rx_max); err = usbnet_write_cmd(dev, USB_CDC_SET_NTB_INPUT_SIZE, @@ -163,14 +162,6 @@ dev_dbg(&dev->intf->dev, "Using default maximum transmit length=%d\n", CDC_NCM_NTB_MAX_SIZE_TX); ctx->tx_max = CDC_NCM_NTB_MAX_SIZE_TX; - - /* Adding a pad byte here simplifies the handling in - * cdc_ncm_fill_tx_frame, by making tx_max always - * represent the real skb max size. - */ - if (ctx->tx_max % usb_maxpacket(dev->udev, dev->out, 1) == 0) - ctx->tx_max++; - } /* @@ -440,6 +431,10 @@ goto error2; } + /* initialize data interface */ + if (cdc_ncm_setup(dev)) + goto error2; + /* configure data interface */ temp = usb_set_interface(dev->udev, iface_no, data_altsetting); if (temp) { @@ -454,12 +449,6 @@ goto error2; } - /* initialize data interface */ - if (cdc_ncm_setup(dev)) { - dev_dbg(&intf->dev, "cdc_ncm_setup() failed\n"); - goto error2; - } - usb_set_intfdata(ctx->data, dev); usb_set_intfdata(ctx->control, dev); @@ -476,6 +465,15 @@ dev->hard_mtu = ctx->tx_max; dev->rx_urb_size = ctx->rx_max; + /* cdc_ncm_setup will override dwNtbOutMaxSize if it is + * outside the sane range. Adding a pad byte here if necessary + * simplifies the handling in cdc_ncm_fill_tx_frame, making + * tx_max always represent the real skb max size. + */ + if (ctx->tx_max != le32_to_cpu(ctx->ncm_parm.dwNtbOutMaxSize) && + ctx->tx_max % usb_maxpacket(dev->udev, dev->out, 1) == 0) + ctx->tx_max++; + return 0; error2: --- linux-3.13.0.orig/drivers/net/usb/gl620a.c +++ linux-3.13.0/drivers/net/usb/gl620a.c @@ -86,6 +86,10 @@ u32 size; u32 count; + /* This check is no longer done by usbnet */ + if (skb->len < dev->net->hard_header_len) + return 0; + header = (struct gl_header *) skb->data; // get the packet count of the received skb --- linux-3.13.0.orig/drivers/net/usb/mcs7830.c +++ linux-3.13.0/drivers/net/usb/mcs7830.c @@ -528,8 +528,9 @@ { u8 status; - if (skb->len == 0) { - dev_err(&dev->udev->dev, "unexpected empty rx frame\n"); + /* This check is no longer done by usbnet */ + if (skb->len < dev->net->hard_header_len) { + dev_err(&dev->udev->dev, "unexpected tiny rx frame\n"); return 0; } --- linux-3.13.0.orig/drivers/net/usb/net1080.c +++ linux-3.13.0/drivers/net/usb/net1080.c @@ -366,6 +366,10 @@ struct nc_trailer *trailer; u16 hdr_len, packet_len; + /* This check is no longer done by usbnet */ + if (skb->len < dev->net->hard_header_len) + return 0; + if (!(skb->len & 0x01)) { netdev_dbg(dev->net, "rx framesize %d range %d..%d mtu %d\n", skb->len, dev->net->hard_header_len, dev->hard_mtu, --- linux-3.13.0.orig/drivers/net/usb/qmi_wwan.c +++ linux-3.13.0/drivers/net/usb/qmi_wwan.c @@ -80,10 +80,10 @@ { __be16 proto; - /* usbnet rx_complete guarantees that skb->len is at least - * hard_header_len, so we can inspect the dest address without - * checking skb->len - */ + /* This check is no longer done by usbnet */ + if (skb->len < dev->net->hard_header_len) + return 0; + switch (skb->data[0] & 0xf0) { case 0x40: proto = htons(ETH_P_IP); @@ -723,6 +723,7 @@ {QMI_FIXED_INTF(0x1199, 0x68a2, 8)}, /* Sierra Wireless MC7710 in QMI mode */ {QMI_FIXED_INTF(0x1199, 0x68a2, 19)}, /* Sierra Wireless MC7710 in QMI mode */ {QMI_FIXED_INTF(0x1199, 0x901c, 8)}, /* Sierra Wireless EM7700 */ + {QMI_FIXED_INTF(0x1199, 0x9051, 8)}, /* Netgear AirCard 340U */ {QMI_FIXED_INTF(0x1bbb, 0x011e, 4)}, /* Telekom Speedstick LTE II (Alcatel One Touch L100V LTE) */ {QMI_FIXED_INTF(0x2357, 0x0201, 4)}, /* TP-LINK HSUPA Modem MA180 */ {QMI_FIXED_INTF(0x2357, 0x9000, 4)}, /* TP-LINK MA260 */ --- linux-3.13.0.orig/drivers/net/usb/rndis_host.c +++ linux-3.13.0/drivers/net/usb/rndis_host.c @@ -494,6 +494,10 @@ */ int rndis_rx_fixup(struct usbnet *dev, struct sk_buff *skb) { + /* This check is no longer done by usbnet */ + if (skb->len < dev->net->hard_header_len) + return 0; + /* peripheral may have batched packets to us... */ while (likely(skb->len)) { struct rndis_data_hdr *hdr = (void *)skb->data; --- linux-3.13.0.orig/drivers/net/usb/smsc75xx.c +++ linux-3.13.0/drivers/net/usb/smsc75xx.c @@ -2108,6 +2108,10 @@ static int smsc75xx_rx_fixup(struct usbnet *dev, struct sk_buff *skb) { + /* This check is no longer done by usbnet */ + if (skb->len < dev->net->hard_header_len) + return 0; + while (skb->len > 0) { u32 rx_cmd_a, rx_cmd_b, align_count, size; struct sk_buff *ax_skb; --- linux-3.13.0.orig/drivers/net/usb/smsc95xx.c +++ linux-3.13.0/drivers/net/usb/smsc95xx.c @@ -1725,6 +1725,10 @@ static int smsc95xx_rx_fixup(struct usbnet *dev, struct sk_buff *skb) { + /* This check is no longer done by usbnet */ + if (skb->len < dev->net->hard_header_len) + return 0; + while (skb->len > 0) { u32 header, align_count; struct sk_buff *ax_skb; --- linux-3.13.0.orig/drivers/net/usb/usbnet.c +++ linux-3.13.0/drivers/net/usb/usbnet.c @@ -543,17 +543,19 @@ } // else network stack removes extra byte if we forced a short packet - if (skb->len) { - /* all data was already cloned from skb inside the driver */ - if (dev->driver_info->flags & FLAG_MULTI_PACKET) - dev_kfree_skb_any(skb); - else - usbnet_skb_return(dev, skb); + /* all data was already cloned from skb inside the driver */ + if (dev->driver_info->flags & FLAG_MULTI_PACKET) + goto done; + + if (skb->len < ETH_HLEN) { + dev->net->stats.rx_errors++; + dev->net->stats.rx_length_errors++; + netif_dbg(dev, rx_err, dev->net, "rx length %d\n", skb->len); + } else { + usbnet_skb_return(dev, skb); return; } - netif_dbg(dev, rx_err, dev->net, "drop\n"); - dev->net->stats.rx_errors++; done: skb_queue_tail(&dev->done, skb); } @@ -575,13 +577,6 @@ switch (urb_status) { /* success */ case 0: - if (skb->len < dev->net->hard_header_len) { - state = rx_cleanup; - dev->net->stats.rx_errors++; - dev->net->stats.rx_length_errors++; - netif_dbg(dev, rx_err, dev->net, - "rx length %d\n", skb->len); - } break; /* stalls need manual reset. this is rare ... except that @@ -758,14 +753,12 @@ // precondition: never called in_interrupt static void usbnet_terminate_urbs(struct usbnet *dev) { - DECLARE_WAIT_QUEUE_HEAD_ONSTACK(unlink_wakeup); DECLARE_WAITQUEUE(wait, current); int temp; /* ensure there are no more active urbs */ - add_wait_queue(&unlink_wakeup, &wait); + add_wait_queue(&dev->wait, &wait); set_current_state(TASK_UNINTERRUPTIBLE); - dev->wait = &unlink_wakeup; temp = unlink_urbs(dev, &dev->txq) + unlink_urbs(dev, &dev->rxq); @@ -779,15 +772,14 @@ "waited for %d urb completions\n", temp); } set_current_state(TASK_RUNNING); - dev->wait = NULL; - remove_wait_queue(&unlink_wakeup, &wait); + remove_wait_queue(&dev->wait, &wait); } int usbnet_stop (struct net_device *net) { struct usbnet *dev = netdev_priv(net); struct driver_info *info = dev->driver_info; - int retval; + int retval, pm; clear_bit(EVENT_DEV_OPEN, &dev->flags); netif_stop_queue (net); @@ -797,6 +789,8 @@ net->stats.rx_packets, net->stats.tx_packets, net->stats.rx_errors, net->stats.tx_errors); + /* to not race resume */ + pm = usb_autopm_get_interface(dev->intf); /* allow minidriver to stop correctly (wireless devices to turn off * radio etc) */ if (info->stop) { @@ -823,6 +817,9 @@ dev->flags = 0; del_timer_sync (&dev->delay); tasklet_kill (&dev->bh); + if (!pm) + usb_autopm_put_interface(dev->intf); + if (info->manage_power && !test_and_clear_bit(EVENT_NO_RUNTIME_PM, &dev->flags)) info->manage_power(dev, 0); @@ -1443,11 +1440,12 @@ /* restart RX again after disabling due to high error rate */ clear_bit(EVENT_RX_KILL, &dev->flags); - // waiting for all pending urbs to complete? - if (dev->wait) { - if ((dev->txq.qlen + dev->rxq.qlen + dev->done.qlen) == 0) { - wake_up (dev->wait); - } + /* waiting for all pending urbs to complete? + * only then can we forgo submitting anew + */ + if (waitqueue_active(&dev->wait)) { + if (dev->txq.qlen + dev->rxq.qlen + dev->done.qlen == 0) + wake_up_all(&dev->wait); // or are we maybe short a few urbs? } else if (netif_running (dev->net) && @@ -1586,6 +1584,7 @@ dev->driver_name = name; dev->msg_enable = netif_msg_init (msg_level, NETIF_MSG_DRV | NETIF_MSG_PROBE | NETIF_MSG_LINK); + init_waitqueue_head(&dev->wait); skb_queue_head_init (&dev->rxq); skb_queue_head_init (&dev->txq); skb_queue_head_init (&dev->done); @@ -1797,9 +1796,10 @@ spin_unlock_irq(&dev->txq.lock); if (test_bit(EVENT_DEV_OPEN, &dev->flags)) { - /* handle remote wakeup ASAP */ - if (!dev->wait && - netif_device_present(dev->net) && + /* handle remote wakeup ASAP + * we cannot race against stop + */ + if (netif_device_present(dev->net) && !timer_pending(&dev->delay) && !test_bit(EVENT_RX_HALT, &dev->flags)) rx_alloc_submit(dev, GFP_NOIO); --- linux-3.13.0.orig/drivers/net/veth.c +++ linux-3.13.0/drivers/net/veth.c @@ -285,7 +285,8 @@ dev->ethtool_ops = &veth_ethtool_ops; dev->features |= NETIF_F_LLTX; dev->features |= VETH_FEATURES; - dev->vlan_features = dev->features; + dev->vlan_features = dev->features & + ~(NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_HW_VLAN_STAG_TX); dev->destructor = veth_dev_free; dev->hw_features = VETH_FEATURES; --- linux-3.13.0.orig/drivers/net/virtio_net.c +++ linux-3.13.0/drivers/net/virtio_net.c @@ -633,8 +633,7 @@ } while (rq->vq->num_free); if (unlikely(rq->num > rq->max)) rq->max = rq->num; - if (unlikely(!virtqueue_kick(rq->vq))) - return false; + virtqueue_kick(rq->vq); return !oom; } @@ -840,7 +839,7 @@ err = xmit_skb(sq, skb); /* This should not happen! */ - if (unlikely(err) || unlikely(!virtqueue_kick(sq->vq))) { + if (unlikely(err)) { dev->stats.tx_fifo_errors++; if (net_ratelimit()) dev_warn(&dev->dev, @@ -849,6 +848,7 @@ kfree_skb(skb); return NETDEV_TX_OK; } + virtqueue_kick(sq->vq); /* Don't wait up for transmitted skbs to be freed. */ skb_orphan(skb); @@ -1645,7 +1645,8 @@ /* If we can receive ANY GSO packets, we must allocate large ones. */ if (virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_TSO4) || virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_TSO6) || - virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_ECN)) + virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_ECN) || + virtio_has_feature(vdev, VIRTIO_NET_F_GUEST_UFO)) vi->big_packets = true; if (virtio_has_feature(vdev, VIRTIO_NET_F_MRG_RXBUF)) --- linux-3.13.0.orig/drivers/net/vmxnet3/vmxnet3_drv.c +++ linux-3.13.0/drivers/net/vmxnet3/vmxnet3_drv.c @@ -1760,11 +1760,20 @@ { struct vmxnet3_adapter *adapter = netdev_priv(netdev); - if (adapter->intr.mask_mode == VMXNET3_IMM_ACTIVE) - vmxnet3_disable_all_intrs(adapter); - - vmxnet3_do_poll(adapter, adapter->rx_queue[0].rx_ring[0].size); - vmxnet3_enable_all_intrs(adapter); + switch (adapter->intr.type) { +#ifdef CONFIG_PCI_MSI + case VMXNET3_IT_MSIX: { + int i; + for (i = 0; i < adapter->num_rx_queues; i++) + vmxnet3_msix_rx(0, &adapter->rx_queue[i]); + break; + } +#endif + case VMXNET3_IT_MSI: + default: + vmxnet3_intr(0, adapter->netdev); + break; + } } #endif /* CONFIG_NET_POLL_CONTROLLER */ --- linux-3.13.0.orig/drivers/net/vxlan.c +++ linux-3.13.0/drivers/net/vxlan.c @@ -40,6 +40,7 @@ #include #include #include +#include #if IS_ENABLED(CONFIG_IPV6) #include #include @@ -554,13 +555,104 @@ return 1; } +static struct sk_buff **vxlan_gro_receive(struct sk_buff **head, struct sk_buff *skb) +{ + struct sk_buff *p, **pp = NULL; + struct vxlanhdr *vh, *vh2; + struct ethhdr *eh, *eh2; + unsigned int hlen, off_vx, off_eth; + const struct packet_offload *ptype; + __be16 type; + int flush = 1; + + off_vx = skb_gro_offset(skb); + hlen = off_vx + sizeof(*vh); + vh = skb_gro_header_fast(skb, off_vx); + if (skb_gro_header_hard(skb, hlen)) { + vh = skb_gro_header_slow(skb, hlen, off_vx); + if (unlikely(!vh)) + goto out; + } + skb_gro_pull(skb, sizeof(struct vxlanhdr)); /* pull vxlan header */ + + off_eth = skb_gro_offset(skb); + hlen = off_eth + sizeof(*eh); + eh = skb_gro_header_fast(skb, off_eth); + if (skb_gro_header_hard(skb, hlen)) { + eh = skb_gro_header_slow(skb, hlen, off_eth); + if (unlikely(!eh)) + goto out; + } + + flush = 0; + + for (p = *head; p; p = p->next) { + if (!NAPI_GRO_CB(p)->same_flow) + continue; + + vh2 = (struct vxlanhdr *)(p->data + off_vx); + eh2 = (struct ethhdr *)(p->data + off_eth); + if (vh->vx_vni != vh2->vx_vni || compare_ether_header(eh, eh2)) { + NAPI_GRO_CB(p)->same_flow = 0; + continue; + } + } + + type = eh->h_proto; + + rcu_read_lock(); + ptype = gro_find_receive_by_type(type); + if (ptype == NULL) { + flush = 1; + goto out_unlock; + } + + skb_gro_pull(skb, sizeof(*eh)); /* pull inner eth header */ + pp = ptype->callbacks.gro_receive(head, skb); + +out_unlock: + rcu_read_unlock(); +out: + NAPI_GRO_CB(skb)->flush |= flush; + + return pp; +} + +static int vxlan_gro_complete(struct sk_buff *skb, int nhoff) +{ + struct ethhdr *eh; + struct packet_offload *ptype; + __be16 type; + int vxlan_len = sizeof(struct vxlanhdr) + sizeof(struct ethhdr); + int err = -ENOSYS; + + eh = (struct ethhdr *)(skb->data + nhoff + sizeof(struct vxlanhdr)); + type = eh->h_proto; + + rcu_read_lock(); + ptype = gro_find_complete_by_type(type); + if (ptype != NULL) + err = ptype->callbacks.gro_complete(skb, nhoff + vxlan_len); + + rcu_read_unlock(); + return err; +} + /* Notify netdevs that UDP port started listening */ -static void vxlan_notify_add_rx_port(struct sock *sk) +static void vxlan_notify_add_rx_port(struct vxlan_sock *vs) { struct net_device *dev; + struct sock *sk = vs->sock->sk; struct net *net = sock_net(sk); sa_family_t sa_family = sk->sk_family; __be16 port = inet_sk(sk)->inet_sport; + int err; + + if (sa_family == AF_INET) { + err = udp_add_offload(&vs->udp_offloads); + if (err) + pr_warn("vxlan: udp_add_offload failed with status %d\n", err); + } rcu_read_lock(); for_each_netdev_rcu(net, dev) { @@ -572,9 +664,10 @@ } /* Notify netdevs that UDP port is no more listening */ -static void vxlan_notify_del_rx_port(struct sock *sk) +static void vxlan_notify_del_rx_port(struct vxlan_sock *vs) { struct net_device *dev; + struct sock *sk = vs->sock->sk; struct net *net = sock_net(sk); sa_family_t sa_family = sk->sk_family; __be16 port = inet_sk(sk)->inet_sport; @@ -586,6 +679,9 @@ port); } rcu_read_unlock(); + + if (sa_family == AF_INET) + udp_del_offload(&vs->udp_offloads); } /* Add new entry to forwarding table -- assumes lock held */ @@ -777,6 +873,9 @@ if (err) return err; + if (vxlan->default_dst.remote_ip.sa.sa_family != ip.sa.sa_family) + return -EAFNOSUPPORT; + spin_lock_bh(&vxlan->hash_lock); err = vxlan_fdb_create(vxlan, addr, &ip, ndm->ndm_state, flags, port, vni, ifindex, ndm->ndm_flags); @@ -949,7 +1048,7 @@ spin_lock(&vn->sock_lock); hlist_del_rcu(&vs->hlist); rcu_assign_sk_user_data(vs->sock->sk, NULL); - vxlan_notify_del_rx_port(sk); + vxlan_notify_del_rx_port(vs); spin_unlock(&vn->sock_lock); queue_work(vxlan_wq, &vs->del_work); @@ -1047,6 +1146,15 @@ if (!vs) goto drop; + /* If the NIC driver gave us an encapsulated packet + * with the encapsulation mark, the device checksummed it + * for us. Otherwise force the upper layers to verify it. + */ + if (skb->ip_summed != CHECKSUM_UNNECESSARY || !skb->encapsulation) + skb->ip_summed = CHECKSUM_NONE; + + skb->encapsulation = 0; + vs->rcv(vs, skb, vxh->vx_vni); return 0; @@ -1110,8 +1218,8 @@ * leave the CHECKSUM_UNNECESSARY, the device checksummed it * for us. Otherwise force the upper layers to verify it. */ - if (skb->ip_summed != CHECKSUM_UNNECESSARY || !skb->encapsulation || - !(vxlan->dev->features & NETIF_F_RXCSUM)) + if ((skb->ip_summed != CHECKSUM_UNNECESSARY && skb->ip_summed != CHECKSUM_PARTIAL) || + !skb->encapsulation || !(vxlan->dev->features & NETIF_F_RXCSUM)) skb->ip_summed = CHECKSUM_NONE; skb->encapsulation = 0; @@ -1210,6 +1318,9 @@ neigh_release(n); + if (reply == NULL) + goto out; + skb_reset_mac_header(reply); __skb_pull(reply, skb_network_offset(reply)); reply->ip_summed = CHECKSUM_UNNECESSARY; @@ -1231,15 +1342,103 @@ } #if IS_ENABLED(CONFIG_IPV6) + +static struct sk_buff *vxlan_na_create(struct sk_buff *request, + struct neighbour *n, bool isrouter) +{ + struct net_device *dev = request->dev; + struct sk_buff *reply; + struct nd_msg *ns, *na; + struct ipv6hdr *pip6; + u8 *daddr; + int na_olen = 8; /* opt hdr + ETH_ALEN for target */ + int ns_olen; + int i, len; + + if (dev == NULL) + return NULL; + + len = LL_RESERVED_SPACE(dev) + sizeof(struct ipv6hdr) + + sizeof(*na) + na_olen + dev->needed_tailroom; + reply = alloc_skb(len, GFP_ATOMIC); + if (reply == NULL) + return NULL; + + reply->protocol = htons(ETH_P_IPV6); + reply->dev = dev; + skb_reserve(reply, LL_RESERVED_SPACE(request->dev)); + skb_push(reply, sizeof(struct ethhdr)); + skb_set_mac_header(reply, 0); + + ns = (struct nd_msg *)skb_transport_header(request); + + daddr = eth_hdr(request)->h_source; + ns_olen = request->len - skb_transport_offset(request) - sizeof(*ns); + for (i = 0; i < ns_olen-1; i += (ns->opt[i+1]<<3)) { + if (ns->opt[i] == ND_OPT_SOURCE_LL_ADDR) { + daddr = ns->opt + i + sizeof(struct nd_opt_hdr); + break; + } + } + + /* Ethernet header */ + memcpy(eth_hdr(reply)->h_dest, daddr, ETH_ALEN); + memcpy(eth_hdr(reply)->h_source, n->ha, ETH_ALEN); + eth_hdr(reply)->h_proto = htons(ETH_P_IPV6); + reply->protocol = htons(ETH_P_IPV6); + + skb_pull(reply, sizeof(struct ethhdr)); + skb_set_network_header(reply, 0); + skb_put(reply, sizeof(struct ipv6hdr)); + + /* IPv6 header */ + + pip6 = ipv6_hdr(reply); + memset(pip6, 0, sizeof(struct ipv6hdr)); + pip6->version = 6; + pip6->priority = ipv6_hdr(request)->priority; + pip6->nexthdr = IPPROTO_ICMPV6; + pip6->hop_limit = 255; + pip6->daddr = ipv6_hdr(request)->saddr; + pip6->saddr = *(struct in6_addr *)n->primary_key; + + skb_pull(reply, sizeof(struct ipv6hdr)); + skb_set_transport_header(reply, 0); + + na = (struct nd_msg *)skb_put(reply, sizeof(*na) + na_olen); + + /* Neighbor Advertisement */ + memset(na, 0, sizeof(*na)+na_olen); + na->icmph.icmp6_type = NDISC_NEIGHBOUR_ADVERTISEMENT; + na->icmph.icmp6_router = isrouter; + na->icmph.icmp6_override = 1; + na->icmph.icmp6_solicited = 1; + na->target = ns->target; + memcpy(&na->opt[2], n->ha, ETH_ALEN); + na->opt[0] = ND_OPT_TARGET_LL_ADDR; + na->opt[1] = na_olen >> 3; + + na->icmph.icmp6_cksum = csum_ipv6_magic(&pip6->saddr, + &pip6->daddr, sizeof(*na)+na_olen, IPPROTO_ICMPV6, + csum_partial(na, sizeof(*na)+na_olen, 0)); + + pip6->payload_len = htons(sizeof(*na)+na_olen); + + skb_push(reply, sizeof(struct ipv6hdr)); + + reply->ip_summed = CHECKSUM_UNNECESSARY; + + return reply; +} + static int neigh_reduce(struct net_device *dev, struct sk_buff *skb) { struct vxlan_dev *vxlan = netdev_priv(dev); - struct neighbour *n; - union vxlan_addr ipa; + struct nd_msg *msg; const struct ipv6hdr *iphdr; const struct in6_addr *saddr, *daddr; - struct nd_msg *msg; - struct inet6_dev *in6_dev = NULL; + struct neighbour *n; + struct inet6_dev *in6_dev; in6_dev = __in6_dev_get(dev); if (!in6_dev) @@ -1252,19 +1451,20 @@ saddr = &iphdr->saddr; daddr = &iphdr->daddr; - if (ipv6_addr_loopback(daddr) || - ipv6_addr_is_multicast(daddr)) - goto out; - msg = (struct nd_msg *)skb_transport_header(skb); if (msg->icmph.icmp6_code != 0 || msg->icmph.icmp6_type != NDISC_NEIGHBOUR_SOLICITATION) goto out; - n = neigh_lookup(ipv6_stub->nd_tbl, daddr, dev); + if (ipv6_addr_loopback(daddr) || + ipv6_addr_is_multicast(&msg->target)) + goto out; + + n = neigh_lookup(ipv6_stub->nd_tbl, &msg->target, dev); if (n) { struct vxlan_fdb *f; + struct sk_buff *reply; if (!(n->nud_state & NUD_CONNECTED)) { neigh_release(n); @@ -1278,13 +1478,23 @@ goto out; } - ipv6_stub->ndisc_send_na(dev, n, saddr, &msg->target, - !!in6_dev->cnf.forwarding, - true, false, false); + reply = vxlan_na_create(skb, n, + !!(f ? f->flags & NTF_ROUTER : 0)); + neigh_release(n); + + if (reply == NULL) + goto out; + + if (netif_rx_ni(reply) == NET_RX_DROP) + dev->stats.rx_dropped++; + } else if (vxlan->flags & VXLAN_F_L3MISS) { - ipa.sin6.sin6_addr = *daddr; - ipa.sa.sa_family = AF_INET6; + union vxlan_addr ipa = { + .sin6.sin6_addr = msg->target, + .sa.sa_family = AF_INET6, + }; + vxlan_ip_miss(dev, &ipa); } @@ -2278,7 +2488,7 @@ struct sock *sk; unsigned int h; - vs = kmalloc(sizeof(*vs), GFP_KERNEL); + vs = kzalloc(sizeof(*vs), GFP_KERNEL); if (!vs) return ERR_PTR(-ENOMEM); @@ -2303,9 +2513,14 @@ vs->data = data; rcu_assign_sk_user_data(vs->sock->sk, vs); + /* Initialize the vxlan udp offloads structure */ + vs->udp_offloads.port = port; + vs->udp_offloads.callbacks.gro_receive = vxlan_gro_receive; + vs->udp_offloads.callbacks.gro_complete = vxlan_gro_complete; + spin_lock(&vn->sock_lock); hlist_add_head_rcu(&vs->hlist, vs_head(net, port)); - vxlan_notify_add_rx_port(sk); + vxlan_notify_add_rx_port(vs); spin_unlock(&vn->sock_lock); /* Mark socket as an encapsulation socket. */ @@ -2386,9 +2601,10 @@ vni = nla_get_u32(data[IFLA_VXLAN_ID]); dst->remote_vni = vni; + /* Unless IPv6 is explicitly requested, assume IPv4 */ + dst->remote_ip.sa.sa_family = AF_INET; if (data[IFLA_VXLAN_GROUP]) { dst->remote_ip.sin.sin_addr.s_addr = nla_get_be32(data[IFLA_VXLAN_GROUP]); - dst->remote_ip.sa.sa_family = AF_INET; } else if (data[IFLA_VXLAN_GROUP6]) { if (!IS_ENABLED(CONFIG_IPV6)) return -EPFNOSUPPORT; --- linux-3.13.0.orig/drivers/net/wireless/ath/ar5523/ar5523.c +++ linux-3.13.0/drivers/net/wireless/ath/ar5523/ar5523.c @@ -1765,7 +1765,7 @@ AR5523_DEVICE_UG(0x07d1, 0x3a07), /* D-Link / WUA-2340 rev A1 */ AR5523_DEVICE_UG(0x1690, 0x0712), /* Gigaset / AR5523 */ AR5523_DEVICE_UG(0x1690, 0x0710), /* Gigaset / SMCWUSBTG */ - AR5523_DEVICE_UG(0x129b, 0x160c), /* Gigaset / USB stick 108 + AR5523_DEVICE_UG(0x129b, 0x160b), /* Gigaset / USB stick 108 (CyberTAN Technology) */ AR5523_DEVICE_UG(0x16ab, 0x7801), /* Globalsun / AR5523_1 */ AR5523_DEVICE_UX(0x16ab, 0x7811), /* Globalsun / AR5523_2 */ --- linux-3.13.0.orig/drivers/net/wireless/ath/ath9k/ar9462_2p0_initvals.h +++ linux-3.13.0/drivers/net/wireless/ath/ath9k/ar9462_2p0_initvals.h @@ -56,7 +56,7 @@ {0x00009e14, 0x37b95d5e, 0x37b9605e, 0x3236605e, 0x32365a5e}, {0x00009e18, 0x00000000, 0x00000000, 0x00000000, 0x00000000}, {0x00009e1c, 0x0001cf9c, 0x0001cf9c, 0x00021f9c, 0x00021f9c}, - {0x00009e20, 0x000003b5, 0x000003b5, 0x000003ce, 0x000003ce}, + {0x00009e20, 0x000003a5, 0x000003a5, 0x000003a5, 0x000003a5}, {0x00009e2c, 0x0000001c, 0x0000001c, 0x00000021, 0x00000021}, {0x00009e3c, 0xcf946220, 0xcf946220, 0xcfd5c782, 0xcfd5c282}, {0x00009e44, 0x62321e27, 0x62321e27, 0xfe291e27, 0xfe291e27}, @@ -95,7 +95,7 @@ {0x0000ae04, 0x001c0000, 0x001c0000, 0x001c0000, 0x00100000}, {0x0000ae18, 0x00000000, 0x00000000, 0x00000000, 0x00000000}, {0x0000ae1c, 0x0000019c, 0x0000019c, 0x0000019c, 0x0000019c}, - {0x0000ae20, 0x000001b5, 0x000001b5, 0x000001ce, 0x000001ce}, + {0x0000ae20, 0x000001a6, 0x000001a6, 0x000001aa, 0x000001aa}, {0x0000b284, 0x00000000, 0x00000000, 0x00000550, 0x00000550}, }; --- linux-3.13.0.orig/drivers/net/wireless/ath/ath9k/htc_drv_init.c +++ linux-3.13.0/drivers/net/wireless/ath/ath9k/htc_drv_init.c @@ -34,6 +34,10 @@ module_param_named(btcoex_enable, ath9k_htc_btcoex_enable, int, 0444); MODULE_PARM_DESC(btcoex_enable, "Enable wifi-BT coexistence"); +static int ath9k_ps_enable; +module_param_named(ps_enable, ath9k_ps_enable, int, 0444); +MODULE_PARM_DESC(ps_enable, "Enable WLAN PowerSave"); + #define CHAN2G(_freq, _idx) { \ .center_freq = (_freq), \ .hw_value = (_idx), \ @@ -725,12 +729,14 @@ IEEE80211_HW_SPECTRUM_MGMT | IEEE80211_HW_HAS_RATE_CONTROL | IEEE80211_HW_RX_INCLUDES_FCS | - IEEE80211_HW_SUPPORTS_PS | IEEE80211_HW_PS_NULLFUNC_STACK | IEEE80211_HW_REPORTS_TX_ACK_STATUS | IEEE80211_HW_MFP_CAPABLE | IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING; + if (ath9k_ps_enable) + hw->flags |= IEEE80211_HW_SUPPORTS_PS; + hw->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION) | BIT(NL80211_IFTYPE_ADHOC) | --- linux-3.13.0.orig/drivers/net/wireless/ath/ath9k/htc_drv_main.c +++ linux-3.13.0/drivers/net/wireless/ath/ath9k/htc_drv_main.c @@ -1315,21 +1315,22 @@ struct ath_common *common = ath9k_hw_common(priv->ah); struct ath9k_htc_target_rate trate; + if (!(changed & IEEE80211_RC_SUPP_RATES_CHANGED)) + return; + mutex_lock(&priv->mutex); ath9k_htc_ps_wakeup(priv); - if (changed & IEEE80211_RC_SUPP_RATES_CHANGED) { - memset(&trate, 0, sizeof(struct ath9k_htc_target_rate)); - ath9k_htc_setup_rate(priv, sta, &trate); - if (!ath9k_htc_send_rate_cmd(priv, &trate)) - ath_dbg(common, CONFIG, - "Supported rates for sta: %pM updated, rate caps: 0x%X\n", - sta->addr, be32_to_cpu(trate.capflags)); - else - ath_dbg(common, CONFIG, - "Unable to update supported rates for sta: %pM\n", - sta->addr); - } + memset(&trate, 0, sizeof(struct ath9k_htc_target_rate)); + ath9k_htc_setup_rate(priv, sta, &trate); + if (!ath9k_htc_send_rate_cmd(priv, &trate)) + ath_dbg(common, CONFIG, + "Supported rates for sta: %pM updated, rate caps: 0x%X\n", + sta->addr, be32_to_cpu(trate.capflags)); + else + ath_dbg(common, CONFIG, + "Unable to update supported rates for sta: %pM\n", + sta->addr); ath9k_htc_ps_restore(priv); mutex_unlock(&priv->mutex); --- linux-3.13.0.orig/drivers/net/wireless/ath/ath9k/hw.c +++ linux-3.13.0/drivers/net/wireless/ath/ath9k/hw.c @@ -2608,13 +2608,6 @@ ah->eep_ops->get_eeprom(ah, EEP_PAPRD)) pCap->hw_caps |= ATH9K_HW_CAP_PAPRD; - /* - * Fast channel change across bands is available - * only for AR9462 and AR9565. - */ - if (AR_SREV_9462(ah) || AR_SREV_9565(ah)) - pCap->hw_caps |= ATH9K_HW_CAP_FCC_BAND_SWITCH; - return 0; } --- linux-3.13.0.orig/drivers/net/wireless/ath/ath9k/init.c +++ linux-3.13.0/drivers/net/wireless/ath/ath9k/init.c @@ -57,6 +57,10 @@ module_param_named(bt_ant_diversity, ath9k_bt_ant_diversity, int, 0444); MODULE_PARM_DESC(bt_ant_diversity, "Enable WLAN/BT RX antenna diversity"); +static int ath9k_ps_enable; +module_param_named(ps_enable, ath9k_ps_enable, int, 0444); +MODULE_PARM_DESC(ps_enable, "Enable WLAN PowerSave"); + bool is_ath9k_unloaded; /* We use the hw_value as an index into our private channel structure */ @@ -890,13 +894,15 @@ hw->flags = IEEE80211_HW_RX_INCLUDES_FCS | IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING | IEEE80211_HW_SIGNAL_DBM | - IEEE80211_HW_SUPPORTS_PS | IEEE80211_HW_PS_NULLFUNC_STACK | IEEE80211_HW_SPECTRUM_MGMT | IEEE80211_HW_REPORTS_TX_ACK_STATUS | IEEE80211_HW_SUPPORTS_RC_TABLE | IEEE80211_HW_SUPPORTS_HT_CCK_RATES; + if (ath9k_ps_enable) + hw->flags |= IEEE80211_HW_SUPPORTS_PS; + if (sc->sc_ah->caps.hw_caps & ATH9K_HW_CAP_HT) { hw->flags |= IEEE80211_HW_AMPDU_AGGREGATION; --- linux-3.13.0.orig/drivers/net/wireless/ath/ath9k/recv.c +++ linux-3.13.0/drivers/net/wireless/ath/ath9k/recv.c @@ -733,11 +733,18 @@ return NULL; /* - * mark descriptor as zero-length and set the 'more' - * flag to ensure that both buffers get discarded + * Re-check previous descriptor, in case it has been filled + * in the mean time. */ - rs->rs_datalen = 0; - rs->rs_more = true; + ret = ath9k_hw_rxprocdesc(ah, ds, rs); + if (ret == -EINPROGRESS) { + /* + * mark descriptor as zero-length and set the 'more' + * flag to ensure that both buffers get discarded + */ + rs->rs_datalen = 0; + rs->rs_more = true; + } } list_del(&bf->list); @@ -851,20 +858,15 @@ enum ieee80211_band band; unsigned int i = 0; struct ath_softc __maybe_unused *sc = common->priv; + struct ath_hw *ah = sc->sc_ah; - band = hw->conf.chandef.chan->band; + band = ah->curchan->chan->band; sband = hw->wiphy->bands[band]; - switch (hw->conf.chandef.width) { - case NL80211_CHAN_WIDTH_5: + if (IS_CHAN_QUARTER_RATE(ah->curchan)) rxs->flag |= RX_FLAG_5MHZ; - break; - case NL80211_CHAN_WIDTH_10: + else if (IS_CHAN_HALF_RATE(ah->curchan)) rxs->flag |= RX_FLAG_10MHZ; - break; - default: - break; - } if (rx_stats->rs_rate & 0x80) { /* HT rate */ @@ -1171,32 +1173,32 @@ struct ath_common *common = ath9k_hw_common(ah); struct ieee80211_hdr *hdr; bool discard_current = sc->rx.discard_next; - int ret = 0; /* * Discard corrupt descriptors which are marked in * ath_get_next_rx_buf(). */ - sc->rx.discard_next = rx_stats->rs_more; if (discard_current) - return -EINVAL; + goto corrupt; + + sc->rx.discard_next = false; /* * Discard zero-length packets. */ if (!rx_stats->rs_datalen) { RX_STAT_INC(rx_len_err); - return -EINVAL; + goto corrupt; } - /* - * rs_status follows rs_datalen so if rs_datalen is too large - * we can take a hint that hardware corrupted it, so ignore - * those frames. - */ + /* + * rs_status follows rs_datalen so if rs_datalen is too large + * we can take a hint that hardware corrupted it, so ignore + * those frames. + */ if (rx_stats->rs_datalen > (common->rx_bufsize - ah->caps.rx_status_len)) { RX_STAT_INC(rx_len_err); - return -EINVAL; + goto corrupt; } /* Only use status info from the last fragment */ @@ -1210,10 +1212,8 @@ * This is different from the other corrupt descriptor * condition handled above. */ - if (rx_stats->rs_status & ATH9K_RXERR_CORRUPT_DESC) { - ret = -EINVAL; - goto exit; - } + if (rx_stats->rs_status & ATH9K_RXERR_CORRUPT_DESC) + goto corrupt; hdr = (struct ieee80211_hdr *) (skb->data + ah->caps.rx_status_len); @@ -1229,18 +1229,15 @@ if (ath_process_fft(sc, hdr, rx_stats, rx_status->mactime)) RX_STAT_INC(rx_spectral); - ret = -EINVAL; - goto exit; + return -EINVAL; } /* * everything but the rate is checked here, the rate check is done * separately to avoid doing two lookups for a rate for each frame. */ - if (!ath9k_rx_accept(common, hdr, rx_status, rx_stats, decrypt_error)) { - ret = -EINVAL; - goto exit; - } + if (!ath9k_rx_accept(common, hdr, rx_status, rx_stats, decrypt_error)) + return -EINVAL; rx_stats->is_mybeacon = ath9k_is_mybeacon(sc, hdr); if (rx_stats->is_mybeacon) { @@ -1248,15 +1245,19 @@ ath_start_rx_poll(sc, 3); } - if (ath9k_process_rate(common, hw, rx_stats, rx_status)) { - ret =-EINVAL; - goto exit; - } + /* + * This shouldn't happen, but have a safety check anyway. + */ + if (WARN_ON(!ah->curchan)) + return -EINVAL; + + if (ath9k_process_rate(common, hw, rx_stats, rx_status)) + return -EINVAL; ath9k_process_rssi(common, hw, rx_stats, rx_status); - rx_status->band = hw->conf.chandef.chan->band; - rx_status->freq = hw->conf.chandef.chan->center_freq; + rx_status->band = ah->curchan->chan->band; + rx_status->freq = ah->curchan->chan->center_freq; rx_status->antenna = rx_stats->rs_antenna; rx_status->flag |= RX_FLAG_MACTIME_END; @@ -1266,9 +1267,11 @@ sc->rx.num_pkts++; #endif -exit: - sc->rx.discard_next = false; - return ret; + return 0; + +corrupt: + sc->rx.discard_next = rx_stats->rs_more; + return -EINVAL; } static void ath9k_rx_skb_postprocess(struct ath_common *common, --- linux-3.13.0.orig/drivers/net/wireless/ath/ath9k/xmit.c +++ linux-3.13.0/drivers/net/wireless/ath/ath9k/xmit.c @@ -1458,14 +1458,16 @@ for (tidno = 0, tid = &an->tid[tidno]; tidno < IEEE80211_NUM_TIDS; tidno++, tid++) { - if (!tid->sched) - continue; - ac = tid->ac; txq = ac->txq; ath_txq_lock(sc, txq); + if (!tid->sched) { + ath_txq_unlock(sc, txq); + continue; + } + buffered = ath_tid_has_buffered(tid); tid->sched = false; @@ -1710,7 +1712,7 @@ ath9k_hw_get_txq_props(sc->sc_ah, qnum, &qi); - qi.tqi_readyTime = (cur_conf->beacon_interval * + qi.tqi_readyTime = (TU_TO_USEC(cur_conf->beacon_interval) * ATH_CABQ_READY_TIME) / 100; ath_txq_update(sc, qnum, &qi); @@ -2195,14 +2197,15 @@ txq->stopped = true; } + if (txctl->an) + tid = ath_get_skb_tid(sc, txctl->an, skb); + if (info->flags & IEEE80211_TX_CTL_PS_RESPONSE) { ath_txq_unlock(sc, txq); txq = sc->tx.uapsdq; ath_txq_lock(sc, txq); } else if (txctl->an && ieee80211_is_data_present(hdr->frame_control)) { - tid = ath_get_skb_tid(sc, txctl->an, skb); - WARN_ON(tid->ac->txq != txctl->txq); if (info->flags & IEEE80211_TX_CTL_CLEAR_PS_FILT) --- linux-3.13.0.orig/drivers/net/wireless/b43/b43.h +++ linux-3.13.0/drivers/net/wireless/b43/b43.h @@ -731,8 +731,6 @@ struct b43_request_fw_context { /* The device we are requesting the fw for. */ struct b43_wldev *dev; - /* a completion event structure needed if this call is asynchronous */ - struct completion fw_load_complete; /* a pointer to the firmware object */ const struct firmware *blob; /* The type of firmware to request. */ @@ -809,6 +807,8 @@ struct b43_wldev { struct b43_bus_dev *dev; struct b43_wl *wl; + /* a completion event structure needed if this call is asynchronous */ + struct completion fw_load_complete; /* The device initialization status. * Use b43_status() to query. */ --- linux-3.13.0.orig/drivers/net/wireless/b43/main.c +++ linux-3.13.0/drivers/net/wireless/b43/main.c @@ -2070,6 +2070,7 @@ static void b43_release_firmware(struct b43_wldev *dev) { + complete(&dev->fw_load_complete); b43_do_release_fw(&dev->fw.ucode); b43_do_release_fw(&dev->fw.pcm); b43_do_release_fw(&dev->fw.initvals); @@ -2095,7 +2096,7 @@ struct b43_request_fw_context *ctx = context; ctx->blob = firmware; - complete(&ctx->fw_load_complete); + complete(&ctx->dev->fw_load_complete); } int b43_do_request_fw(struct b43_request_fw_context *ctx, @@ -2142,7 +2143,7 @@ } if (async) { /* do this part asynchronously */ - init_completion(&ctx->fw_load_complete); + init_completion(&ctx->dev->fw_load_complete); err = request_firmware_nowait(THIS_MODULE, 1, ctx->fwname, ctx->dev->dev->dev, GFP_KERNEL, ctx, b43_fw_cb); @@ -2150,12 +2151,11 @@ pr_err("Unable to load firmware\n"); return err; } - /* stall here until fw ready */ - wait_for_completion(&ctx->fw_load_complete); + wait_for_completion(&ctx->dev->fw_load_complete); if (ctx->blob) goto fw_ready; /* On some ARM systems, the async request will fail, but the next sync - * request works. For this reason, we dall through here + * request works. For this reason, we fall through here */ } err = request_firmware(&ctx->blob, ctx->fwname, @@ -2424,6 +2424,7 @@ static int b43_one_core_attach(struct b43_bus_dev *dev, struct b43_wl *wl); static void b43_one_core_detach(struct b43_bus_dev *dev); +static int b43_rng_init(struct b43_wl *wl); static void b43_request_firmware(struct work_struct *work) { @@ -2475,6 +2476,10 @@ goto err_one_core_detach; wl->hw_registred = true; b43_leds_register(wl->current_dev); + + /* Register HW RNG driver */ + b43_rng_init(wl); + goto out; err_one_core_detach: @@ -4636,9 +4641,6 @@ if (!dev || b43_status(dev) != B43_STAT_INITIALIZED) return; - /* Unregister HW RNG driver */ - b43_rng_exit(dev->wl); - b43_set_status(dev, B43_STAT_UNINIT); /* Stop the microcode PSM. */ @@ -4795,9 +4797,6 @@ b43_set_status(dev, B43_STAT_INITIALIZED); - /* Register HW RNG driver */ - b43_rng_init(dev->wl); - out: return err; @@ -5464,6 +5463,9 @@ b43_one_core_detach(wldev->dev); + /* Unregister HW RNG driver */ + b43_rng_exit(wl); + b43_leds_unregister(wl); ieee80211_free_hw(wl->hw); @@ -5541,6 +5543,9 @@ b43_one_core_detach(dev); + /* Unregister HW RNG driver */ + b43_rng_exit(wl); + if (list_empty(&wl->devlist)) { b43_leds_unregister(wl); /* Last core on the chip unregistered. --- linux-3.13.0.orig/drivers/net/wireless/b43/phy_n.c +++ linux-3.13.0/drivers/net/wireless/b43/phy_n.c @@ -5176,22 +5176,22 @@ int ch = new_channel->hw_value; u16 old_band_5ghz; - u32 tmp32; + u16 tmp16; old_band_5ghz = b43_phy_read(dev, B43_NPHY_BANDCTL) & B43_NPHY_BANDCTL_5GHZ; if (new_channel->band == IEEE80211_BAND_5GHZ && !old_band_5ghz) { - tmp32 = b43_read32(dev, B43_MMIO_PSM_PHY_HDR); - b43_write32(dev, B43_MMIO_PSM_PHY_HDR, tmp32 | 4); + tmp16 = b43_read16(dev, B43_MMIO_PSM_PHY_HDR); + b43_write16(dev, B43_MMIO_PSM_PHY_HDR, tmp16 | 4); b43_phy_set(dev, B43_PHY_B_BBCFG, 0xC000); - b43_write32(dev, B43_MMIO_PSM_PHY_HDR, tmp32); + b43_write16(dev, B43_MMIO_PSM_PHY_HDR, tmp16); b43_phy_set(dev, B43_NPHY_BANDCTL, B43_NPHY_BANDCTL_5GHZ); } else if (new_channel->band == IEEE80211_BAND_2GHZ && old_band_5ghz) { b43_phy_mask(dev, B43_NPHY_BANDCTL, ~B43_NPHY_BANDCTL_5GHZ); - tmp32 = b43_read32(dev, B43_MMIO_PSM_PHY_HDR); - b43_write32(dev, B43_MMIO_PSM_PHY_HDR, tmp32 | 4); + tmp16 = b43_read16(dev, B43_MMIO_PSM_PHY_HDR); + b43_write16(dev, B43_MMIO_PSM_PHY_HDR, tmp16 | 4); b43_phy_mask(dev, B43_PHY_B_BBCFG, 0x3FFF); - b43_write32(dev, B43_MMIO_PSM_PHY_HDR, tmp32); + b43_write16(dev, B43_MMIO_PSM_PHY_HDR, tmp16); } b43_chantab_phy_upload(dev, e); --- linux-3.13.0.orig/drivers/net/wireless/b43/xmit.c +++ linux-3.13.0/drivers/net/wireless/b43/xmit.c @@ -821,10 +821,10 @@ * channel number in b43. */ if (chanstat & B43_RX_CHAN_5GHZ) { status.band = IEEE80211_BAND_5GHZ; - status.freq = b43_freq_to_channel_5ghz(chanid); + status.freq = b43_channel_to_freq_5ghz(chanid); } else { status.band = IEEE80211_BAND_2GHZ; - status.freq = b43_freq_to_channel_2ghz(chanid); + status.freq = b43_channel_to_freq_2ghz(chanid); } break; default: --- linux-3.13.0.orig/drivers/net/wireless/b43legacy/main.c +++ linux-3.13.0/drivers/net/wireless/b43legacy/main.c @@ -3919,6 +3919,7 @@ * as the ieee80211 unreg will destroy the workqueue. */ cancel_work_sync(&wldev->restart_work); cancel_work_sync(&wl->firmware_load); + complete(&wldev->fw_load_complete); B43legacy_WARN_ON(!wl); if (!wldev->fw.ucode) --- linux-3.13.0.orig/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c +++ linux-3.13.0/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c @@ -426,6 +426,12 @@ bool blocked; int err; + if (!wl->ucode.bcm43xx_bomminor) { + err = brcms_request_fw(wl, wl->wlc->hw->d11core); + if (err) + return -ENOENT; + } + ieee80211_wake_queues(hw); spin_lock_bh(&wl->lock); blocked = brcms_rfkill_set_hw_state(wl); @@ -433,14 +439,6 @@ if (!blocked) wiphy_rfkill_stop_polling(wl->pub->ieee_hw->wiphy); - if (!wl->ucode.bcm43xx_bomminor) { - err = brcms_request_fw(wl, wl->wlc->hw->d11core); - if (err) { - brcms_remove(wl->wlc->hw->d11core); - return -ENOENT; - } - } - spin_lock_bh(&wl->lock); /* avoid acknowledging frames before a non-monitor device is added */ wl->mute_tx = true; --- linux-3.13.0.orig/drivers/net/wireless/hostap/hostap_hw.c +++ linux-3.13.0/drivers/net/wireless/hostap/hostap_hw.c @@ -69,7 +69,7 @@ module_param_string(essid, essid, sizeof(essid), 0444); MODULE_PARM_DESC(essid, "Host AP's ESSID"); -static int iw_mode[MAX_PARM_DEVICES] = { IW_MODE_MASTER, DEF_INTS }; +static int iw_mode[MAX_PARM_DEVICES] = { IW_MODE_INFRA, DEF_INTS }; module_param_array(iw_mode, int, NULL, 0444); MODULE_PARM_DESC(iw_mode, "Initial operation mode"); --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/dvm/mac80211.c +++ linux-3.13.0/drivers/net/wireless/iwlwifi/dvm/mac80211.c @@ -704,6 +704,24 @@ return ret; } +static inline bool iwl_enable_rx_ampdu(const struct iwl_cfg *cfg) +{ + if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_RXAGG) + return false; + return true; +} + +static inline bool iwl_enable_tx_ampdu(const struct iwl_cfg *cfg) +{ + if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_TXAGG) + return false; + if (iwlwifi_mod_params.disable_11n & IWL_ENABLE_HT_TXAGG) + return true; + + /* disabled by default */ + return false; +} + static int iwlagn_mac_ampdu_action(struct ieee80211_hw *hw, struct ieee80211_vif *vif, enum ieee80211_ampdu_mlme_action action, @@ -725,7 +743,7 @@ switch (action) { case IEEE80211_AMPDU_RX_START: - if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_RXAGG) + if (!iwl_enable_rx_ampdu(priv->cfg)) break; IWL_DEBUG_HT(priv, "start Rx\n"); ret = iwl_sta_rx_agg_start(priv, sta, tid, *ssn); @@ -737,7 +755,7 @@ case IEEE80211_AMPDU_TX_START: if (!priv->trans->ops->txq_enable) break; - if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_TXAGG) + if (!iwl_enable_tx_ampdu(priv->cfg)) break; IWL_DEBUG_HT(priv, "start Tx\n"); ret = iwlagn_tx_agg_start(priv, vif, sta, tid, ssn); --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/dvm/main.c +++ linux-3.13.0/drivers/net/wireless/iwlwifi/dvm/main.c @@ -252,13 +252,17 @@ struct iwl_priv *priv = container_of(work, struct iwl_priv, bt_runtime_config); + mutex_lock(&priv->mutex); if (test_bit(STATUS_EXIT_PENDING, &priv->status)) - return; + goto out; /* dont send host command if rf-kill is on */ if (!iwl_is_ready_rf(priv)) - return; + goto out; + iwlagn_send_advance_bt_config(priv); +out: + mutex_unlock(&priv->mutex); } static void iwl_bg_bt_full_concurrency(struct work_struct *work) --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/dvm/sta.c +++ linux-3.13.0/drivers/net/wireless/iwlwifi/dvm/sta.c @@ -590,6 +590,7 @@ sizeof(priv->tid_data[sta_id][tid])); priv->stations[sta_id].used &= ~IWL_STA_DRIVER_ACTIVE; + priv->stations[sta_id].used &= ~IWL_STA_UCODE_INPROGRESS; priv->num_stations--; --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/dvm/tx.c +++ linux-3.13.0/drivers/net/wireless/iwlwifi/dvm/tx.c @@ -1291,8 +1291,6 @@ struct iwl_compressed_ba_resp *ba_resp = (void *)pkt->data; struct iwl_ht_agg *agg; struct sk_buff_head reclaimed_skbs; - struct ieee80211_tx_info *info; - struct ieee80211_hdr *hdr; struct sk_buff *skb; int sta_id; int tid; @@ -1379,22 +1377,28 @@ freed = 0; skb_queue_walk(&reclaimed_skbs, skb) { - hdr = (struct ieee80211_hdr *)skb->data; + struct ieee80211_hdr *hdr = (void *)skb->data; + struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); if (ieee80211_is_data_qos(hdr->frame_control)) freed++; else WARN_ON_ONCE(1); - info = IEEE80211_SKB_CB(skb); iwl_trans_free_tx_cmd(priv->trans, info->driver_data[1]); + memset(&info->status, 0, sizeof(info->status)); + /* Packet was transmitted successfully, failures come as single + * frames because before failing a frame the firmware transmits + * it without aggregation at least once. + */ + info->flags |= IEEE80211_TX_STAT_ACK; + if (freed == 1) { /* this is the first skb we deliver in this batch */ /* put the rate scaling data there */ info = IEEE80211_SKB_CB(skb); memset(&info->status, 0, sizeof(info->status)); - info->flags |= IEEE80211_TX_STAT_ACK; info->flags |= IEEE80211_TX_STAT_AMPDU; info->status.ampdu_ack_len = ba_resp->txed_2_done; info->status.ampdu_len = ba_resp->txed; --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/iwl-drv.c +++ linux-3.13.0/drivers/net/wireless/iwlwifi/iwl-drv.c @@ -1247,7 +1247,7 @@ MODULE_PARM_DESC(swcrypto, "using crypto in software (default 0 [hardware])"); module_param_named(11n_disable, iwlwifi_mod_params.disable_11n, uint, S_IRUGO); MODULE_PARM_DESC(11n_disable, - "disable 11n functionality, bitmap: 1: full, 2: agg TX, 4: agg RX"); + "disable 11n functionality, bitmap: 1: full, 2: disable agg TX, 4: disable agg RX, 8 enable agg TX"); module_param_named(amsdu_size_8K, iwlwifi_mod_params.amsdu_size_8K, int, S_IRUGO); MODULE_PARM_DESC(amsdu_size_8K, "enable 8K amsdu size (default 0)"); --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/iwl-modparams.h +++ linux-3.13.0/drivers/net/wireless/iwlwifi/iwl-modparams.h @@ -79,9 +79,12 @@ IWL_POWER_NUM }; -#define IWL_DISABLE_HT_ALL BIT(0) -#define IWL_DISABLE_HT_TXAGG BIT(1) -#define IWL_DISABLE_HT_RXAGG BIT(2) +enum iwl_disable_11n { + IWL_DISABLE_HT_ALL = BIT(0), + IWL_DISABLE_HT_TXAGG = BIT(1), + IWL_DISABLE_HT_RXAGG = BIT(2), + IWL_ENABLE_HT_TXAGG = BIT(3), +}; /** * struct iwl_mod_params @@ -90,7 +93,7 @@ * * @sw_crypto: using hardware encryption, default = 0 * @disable_11n: disable 11n capabilities, default = 0, - * use IWL_DISABLE_HT_* constants + * use IWL_[DIS,EN]ABLE_HT_* constants * @amsdu_size_8K: enable 8K amsdu size, default = 0 * @restart_fw: restart firmware, default = 1 * @wd_disable: enable stuck queue check, default = 0 --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/iwl-nvm-parse.c +++ linux-3.13.0/drivers/net/wireless/iwlwifi/iwl-nvm-parse.c @@ -182,6 +182,11 @@ for (ch_idx = 0; ch_idx < IWL_NUM_CHANNELS; ch_idx++) { ch_flags = __le16_to_cpup(nvm_ch_flags + ch_idx); + + if (ch_idx >= NUM_2GHZ_CHANNELS && + !data->sku_cap_band_52GHz_enable) + ch_flags &= ~NVM_CHANNEL_VALID; + if (!(ch_flags & NVM_CHANNEL_VALID)) { IWL_DEBUG_EEPROM(dev, "Ch. %d Flags %x [%sGHz] - No traffic\n", --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/iwl-prph.h +++ linux-3.13.0/drivers/net/wireless/iwlwifi/iwl-prph.h @@ -274,4 +274,8 @@ /*********************** END TX SCHEDULER *************************************/ +/* Oscillator clock */ +#define OSC_CLK (0xa04068) +#define OSC_CLK_FORCE_CONTROL (0x8) + #endif /* __iwl_prph_h__ */ --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/mvm/bt-coex.c +++ linux-3.13.0/drivers/net/wireless/iwlwifi/mvm/bt-coex.c @@ -871,8 +871,11 @@ lockdep_assert_held(&mvm->mutex); - /* Rssi update while not associated ?! */ - if (WARN_ON_ONCE(mvmvif->ap_sta_id == IWL_MVM_STATION_COUNT)) + /* + * Rssi update while not associated - can happen since the statistics + * are handled asynchronously + */ + if (mvmvif->ap_sta_id == IWL_MVM_STATION_COUNT) return; /* No BT - reports should be disabled */ --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/mvm/debugfs.c +++ linux-3.13.0/drivers/net/wireless/iwlwifi/mvm/debugfs.c @@ -63,6 +63,7 @@ #include "mvm.h" #include "sta.h" #include "iwl-io.h" +#include "fw-error-dump.h" struct iwl_dbgfs_mvm_ctx { struct iwl_mvm *mvm; @@ -139,6 +140,48 @@ return ret; } +static int iwl_dbgfs_fw_error_dump_open(struct inode *inode, struct file *file) +{ + struct iwl_mvm *mvm = inode->i_private; + int ret; + + if (!mvm) + return -EINVAL; + + mutex_lock(&mvm->mutex); + if (!mvm->fw_error_dump) { + ret = -ENODATA; + goto out; + } + + file->private_data = mvm->fw_error_dump; + mvm->fw_error_dump = NULL; + ret = 0; + +out: + mutex_unlock(&mvm->mutex); + return ret; +} + +static ssize_t iwl_dbgfs_fw_error_dump_read(struct file *file, + char __user *user_buf, + size_t count, loff_t *ppos) +{ + struct iwl_fw_error_dump_file *dump_file = file->private_data; + + return simple_read_from_buffer(user_buf, count, ppos, + dump_file, + le32_to_cpu(dump_file->file_len)); +} + +static int iwl_dbgfs_fw_error_dump_release(struct inode *inode, + struct file *file) +{ + vfree(file->private_data); + + return 0; +} + static ssize_t iwl_dbgfs_sram_read(struct file *file, char __user *user_buf, size_t count, loff_t *ppos) { @@ -1170,6 +1213,12 @@ MVM_DEBUGFS_WRITE_FILE_OPS(fw_restart); MVM_DEBUGFS_READ_WRITE_FILE_OPS(scan_ant_rxchain); +static const struct file_operations iwl_dbgfs_fw_error_dump_ops = { + .open = iwl_dbgfs_fw_error_dump_open, + .read = iwl_dbgfs_fw_error_dump_read, + .release = iwl_dbgfs_fw_error_dump_release, +}; + #ifdef CONFIG_PM_SLEEP MVM_DEBUGFS_READ_WRITE_FILE_OPS(d3_sram); #endif @@ -1189,6 +1238,7 @@ MVM_DEBUGFS_ADD_FILE(sta_drain, mvm->debugfs_dir, S_IWUSR); MVM_DEBUGFS_ADD_FILE(sram, mvm->debugfs_dir, S_IWUSR | S_IRUSR); MVM_DEBUGFS_ADD_FILE(stations, dbgfs_dir, S_IRUSR); + MVM_DEBUGFS_ADD_FILE(fw_error_dump, dbgfs_dir, S_IRUSR); MVM_DEBUGFS_ADD_FILE(bt_notif, dbgfs_dir, S_IRUSR); MVM_DEBUGFS_ADD_FILE(bt_cmd, dbgfs_dir, S_IRUSR); if (mvm->fw->ucode_capa.flags & IWL_UCODE_TLV_FLAGS_DEVICE_PS_CMD) --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/mvm/fw-error-dump.h +++ linux-3.13.0/drivers/net/wireless/iwlwifi/mvm/fw-error-dump.h @@ -0,0 +1,106 @@ +/****************************************************************************** + * + * This file is provided under a dual BSD/GPLv2 license. When using or + * redistributing this file, you may do so under either license. + * + * GPL LICENSE SUMMARY + * + * Copyright(c) 2014 Intel Corporation. All rights reserved. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110, + * USA + * + * The full GNU General Public License is included in this distribution + * in the file called COPYING. + * + * Contact Information: + * Intel Linux Wireless + * Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497 + * + * BSD LICENSE + * + * Copyright(c) 2014 Intel Corporation. All rights reserved. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * * Neither the name Intel Corporation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + *****************************************************************************/ + +#ifndef __fw_error_dump_h__ +#define __fw_error_dump_h__ + +#include + +#define IWL_FW_ERROR_DUMP_BARKER 0x14789632 + +/** + * enum iwl_fw_error_dump_type - types of data in the dump file + * @IWL_FW_ERROR_DUMP_SRAM: + * @IWL_FW_ERROR_DUMP_REG: + */ +enum iwl_fw_error_dump_type { + IWL_FW_ERROR_DUMP_SRAM = 0, + IWL_FW_ERROR_DUMP_REG = 1, + + IWL_FW_ERROR_DUMP_MAX, +}; + +/** + * struct iwl_fw_error_dump_data - data for one type + * @type: %enum iwl_fw_error_dump_type + * @len: the length starting from %data - must be a multiplier of 4. + * @data: the data itself padded to be a multiplier of 4. + */ +struct iwl_fw_error_dump_data { + __le32 type; + __le32 len; + __u8 data[]; +} __packed __aligned(4); + +/** + * struct iwl_fw_error_dump_file - the layout of the header of the file + * @barker: must be %IWL_FW_ERROR_DUMP_BARKER + * @file_len: the length of all the file starting from %barker + * @data: array of %struct iwl_fw_error_dump_data + */ +struct iwl_fw_error_dump_file { + __le32 barker; + __le32 file_len; + u8 data[0]; +} __packed __aligned(4); + +#endif /* __fw_error_dump_h__ */ --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/mvm/mac80211.c +++ linux-3.13.0/drivers/net/wireless/iwlwifi/mvm/mac80211.c @@ -179,7 +179,7 @@ !iwlwifi_mod_params.sw_crypto) hw->flags |= IEEE80211_HW_MFP_CAPABLE; - if (mvm->fw->ucode_capa.flags & IWL_UCODE_TLV_FLAGS_UAPSD_SUPPORT) { + if (0 && mvm->fw->ucode_capa.flags & IWL_UCODE_TLV_FLAGS_UAPSD_SUPPORT) { hw->flags |= IEEE80211_HW_SUPPORTS_UAPSD; hw->uapsd_queues = IWL_UAPSD_AC_INFO; hw->uapsd_max_sp_len = IWL_UAPSD_MAX_SP; @@ -246,7 +246,7 @@ else hw->wiphy->flags &= ~WIPHY_FLAG_PS_ON_BY_DEFAULT; - if (mvm->fw->ucode_capa.flags & IWL_UCODE_TLV_FLAGS_SCHED_SCAN) { + if (0 && mvm->fw->ucode_capa.flags & IWL_UCODE_TLV_FLAGS_SCHED_SCAN) { hw->wiphy->flags |= WIPHY_FLAG_SUPPORTS_SCHED_SCAN; hw->wiphy->max_sched_scan_ssids = PROBE_OPTION_MAX; hw->wiphy->max_match_sets = IWL_SCAN_MAX_PROFILES; @@ -321,6 +321,24 @@ ieee80211_free_txskb(hw, skb); } +static inline bool iwl_enable_rx_ampdu(const struct iwl_cfg *cfg) +{ + if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_RXAGG) + return false; + return true; +} + +static inline bool iwl_enable_tx_ampdu(const struct iwl_cfg *cfg) +{ + if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_TXAGG) + return false; + if (iwlwifi_mod_params.disable_11n & IWL_ENABLE_HT_TXAGG) + return true; + + /* enabled by default */ + return true; +} + static int iwl_mvm_mac_ampdu_action(struct ieee80211_hw *hw, struct ieee80211_vif *vif, enum ieee80211_ampdu_mlme_action action, @@ -340,7 +358,7 @@ switch (action) { case IEEE80211_AMPDU_RX_START: - if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_RXAGG) { + if (!iwl_enable_rx_ampdu(mvm->cfg)) { ret = -EINVAL; break; } @@ -350,7 +368,7 @@ ret = iwl_mvm_sta_rx_agg(mvm, sta, tid, 0, false); break; case IEEE80211_AMPDU_TX_START: - if (iwlwifi_mod_params.disable_11n & IWL_DISABLE_HT_TXAGG) { + if (!iwl_enable_tx_ampdu(mvm->cfg)) { ret = -EINVAL; break; } @@ -397,6 +415,14 @@ static void iwl_mvm_restart_cleanup(struct iwl_mvm *mvm) { +#ifdef CONFIG_IWLWIFI_DEBUGFS + static char *env[] = { "DRIVER=iwlwifi", "EVENT=error_dump", NULL }; + + /* notify the userspace about the error we had */ + if (iwl_mvm_fw_error_dump(mvm)) + kobject_uevent_env(&mvm->hw->wiphy->dev.kobj, KOBJ_CHANGE, env); +#endif + iwl_trans_stop_device(mvm->trans); iwl_trans_stop_hw(mvm->trans, false); --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/mvm/mvm.h +++ linux-3.13.0/drivers/net/wireless/iwlwifi/mvm/mvm.h @@ -68,6 +68,7 @@ #include #include #include +#include #include "iwl-op-mode.h" #include "iwl-trans.h" @@ -151,7 +152,7 @@ IWL_POWER_SCHEME_LP }; -#define IWL_CONN_MAX_LISTEN_INTERVAL 70 +#define IWL_CONN_MAX_LISTEN_INTERVAL 10 #define IWL_UAPSD_AC_INFO (IEEE80211_WMM_IE_STA_QOSINFO_AC_VO |\ IEEE80211_WMM_IE_STA_QOSINFO_AC_VI |\ IEEE80211_WMM_IE_STA_QOSINFO_AC_BK |\ @@ -517,6 +518,9 @@ /* -1 for always, 0 for never, >0 for that many times */ s8 restart_fw; + void *fw_error_dump; + void *fw_error_sram; + u32 fw_error_sram_len; struct led_classdev led; @@ -600,7 +604,10 @@ struct ieee80211_tx_rate *r); u8 iwl_mvm_mac80211_idx_to_hwrate(int rate_idx); void iwl_mvm_dump_nic_error_log(struct iwl_mvm *mvm); -void iwl_mvm_dump_sram(struct iwl_mvm *mvm); +#ifdef CONFIG_IWLWIFI_DEBUGFS +bool iwl_mvm_fw_error_dump(struct iwl_mvm *mvm); +void iwl_mvm_fw_error_sram_dump(struct iwl_mvm *mvm); +#endif u8 first_antenna(u8 mask); u8 iwl_mvm_next_antenna(struct iwl_mvm *mvm, u8 valid, u8 last_idx); --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/mvm/ops.c +++ linux-3.13.0/drivers/net/wireless/iwlwifi/mvm/ops.c @@ -61,6 +61,7 @@ * *****************************************************************************/ #include +#include #include #include "iwl-notif-wait.h" @@ -78,6 +79,7 @@ #include "iwl-prph.h" #include "rs.h" #include "fw-api-scan.h" +#include "fw-error-dump.h" #include "time-event.h" /* @@ -470,6 +472,7 @@ out_unregister: ieee80211_unregister_hw(mvm->hw); + iwl_mvm_leds_exit(mvm); out_free: iwl_phy_db_free(mvm->phy_db); kfree(mvm->scan_cmd); @@ -491,6 +494,8 @@ ieee80211_unregister_hw(mvm->hw); kfree(mvm->scan_cmd); + vfree(mvm->fw_error_dump); + kfree(mvm->fw_error_sram); #if defined(CONFIG_PM_SLEEP) && defined(CONFIG_IWLWIFI_DEBUGFS) kfree(mvm->d3_resume_sram); @@ -751,13 +756,66 @@ } } +#ifdef CONFIG_IWLWIFI_DEBUGFS +/* Returns true if a dump was created */ +bool iwl_mvm_fw_error_dump(struct iwl_mvm *mvm) +{ + struct iwl_fw_error_dump_file *dump_file; + struct iwl_fw_error_dump_data *dump_data; + u32 file_len; + + lockdep_assert_held(&mvm->mutex); + + /* + * Don't create an error dump if we'v already got one, but return + * true to trigger a (re-?)notification to userspace that there's + * something there to read. + */ + if (mvm->fw_error_dump) + return true; + + if (!mvm->fw_error_sram) + return false; + + file_len = mvm->fw_error_sram_len + + sizeof(*dump_file) + + sizeof(*dump_data); + + dump_file = vmalloc(file_len); + if (!dump_file) + return false; + + mvm->fw_error_dump = dump_file; + + dump_file->barker = cpu_to_le32(IWL_FW_ERROR_DUMP_BARKER); + dump_file->file_len = cpu_to_le32(file_len); + dump_data = (void *)dump_file->data; + dump_data->type = IWL_FW_ERROR_DUMP_SRAM; + dump_data->len = cpu_to_le32(mvm->fw_error_sram_len); + + /* + * No need for lock since at the stage the FW isn't loaded. So it + * can't assert - we are the only one who can possibly be accessing + * mvm->fw_error_sram right now. + */ + memcpy(dump_data->data, mvm->fw_error_sram, mvm->fw_error_sram_len); + kfree(mvm->fw_error_sram); + mvm->fw_error_sram = NULL; + mvm->fw_error_sram_len = 0; + + return true; +} +#endif + static void iwl_mvm_nic_error(struct iwl_op_mode *op_mode) { struct iwl_mvm *mvm = IWL_OP_MODE_GET_MVM(op_mode); iwl_mvm_dump_nic_error_log(mvm); - if (!mvm->restart_fw) - iwl_mvm_dump_sram(mvm); + +#ifdef CONFIG_IWLWIFI_DEBUGFS + iwl_mvm_fw_error_sram_dump(mvm); +#endif iwl_mvm_nic_restart(mvm); } --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/mvm/scan.c +++ linux-3.13.0/drivers/net/wireless/iwlwifi/mvm/scan.c @@ -325,7 +325,8 @@ iwl_mvm_scan_fill_ssids(cmd, req, basic_ssid ? 1 : 0); - cmd->tx_cmd.tx_flags = cpu_to_le32(TX_CMD_FLG_SEQ_CTL); + cmd->tx_cmd.tx_flags = cpu_to_le32(TX_CMD_FLG_SEQ_CTL | + TX_CMD_FLG_BT_DIS); cmd->tx_cmd.sta_id = mvm->aux_sta.sta_id; cmd->tx_cmd.life_time = cpu_to_le32(TX_CMD_LIFE_TIME_INFINITE); cmd->tx_cmd.rate_n_flags = --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/mvm/tx.c +++ linux-3.13.0/drivers/net/wireless/iwlwifi/mvm/tx.c @@ -822,16 +822,12 @@ struct iwl_mvm_ba_notif *ba_notif = (void *)pkt->data; struct sk_buff_head reclaimed_skbs; struct iwl_mvm_tid_data *tid_data; - struct ieee80211_tx_info *info; struct ieee80211_sta *sta; struct iwl_mvm_sta *mvmsta; - struct ieee80211_hdr *hdr; struct sk_buff *skb; int sta_id, tid, freed; - /* "flow" corresponds to Tx queue */ u16 scd_flow = le16_to_cpu(ba_notif->scd_flow); - /* "ssn" is start of block-ack Tx window, corresponds to index * (in Tx queue's circular buffer) of first TFD/frame in window */ u16 ba_resp_scd_ssn = le16_to_cpu(ba_notif->scd_ssn); @@ -888,22 +884,26 @@ freed = 0; skb_queue_walk(&reclaimed_skbs, skb) { - hdr = (struct ieee80211_hdr *)skb->data; + struct ieee80211_hdr *hdr = (void *)skb->data; + struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); if (ieee80211_is_data_qos(hdr->frame_control)) freed++; else WARN_ON_ONCE(1); - info = IEEE80211_SKB_CB(skb); iwl_trans_free_tx_cmd(mvm->trans, info->driver_data[1]); + memset(&info->status, 0, sizeof(info->status)); + /* Packet was transmitted successfully, failures come as single + * frames because before failing a frame the firmware transmits + * it without aggregation at least once. + */ + info->flags |= IEEE80211_TX_STAT_ACK; + if (freed == 1) { /* this is the first skb we deliver in this batch */ /* put the rate scaling data there */ - info = IEEE80211_SKB_CB(skb); - memset(&info->status, 0, sizeof(info->status)); - info->flags |= IEEE80211_TX_STAT_ACK; info->flags |= IEEE80211_TX_STAT_AMPDU; info->status.ampdu_ack_len = ba_notif->txed_2_done; info->status.ampdu_len = ba_notif->txed; --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/mvm/utils.c +++ linux-3.13.0/drivers/net/wireless/iwlwifi/mvm/utils.c @@ -411,6 +411,8 @@ mvm->status, table.valid); } + IWL_ERR(mvm, "Loaded firmware version: %s\n", mvm->fw->fw_version); + trace_iwlwifi_dev_ucode_error(trans->dev, table.error_id, table.tsf_low, table.data1, table.data2, table.data3, table.blink1, table.blink2, table.ilink1, @@ -453,27 +455,26 @@ IWL_ERR(mvm, "0x%08X | flow_handler\n", table.flow_handler); } -void iwl_mvm_dump_sram(struct iwl_mvm *mvm) +void iwl_mvm_fw_error_sram_dump(struct iwl_mvm *mvm) { const struct fw_img *img; - int ofs, len = 0; - u8 *buf; + u32 ofs, sram_len; + void *sram; - if (!mvm->ucode_loaded) + if (!mvm->ucode_loaded || mvm->fw_error_sram) return; img = &mvm->fw->img[mvm->cur_ucode]; ofs = img->sec[IWL_UCODE_SECTION_DATA].offset; - len = img->sec[IWL_UCODE_SECTION_DATA].len; + sram_len = img->sec[IWL_UCODE_SECTION_DATA].len; - buf = kzalloc(len, GFP_ATOMIC); - if (!buf) + sram = kzalloc(sram_len, GFP_ATOMIC); + if (!sram) return; - iwl_trans_read_mem_bytes(mvm->trans, ofs, buf, len); - iwl_print_hex_error(mvm->trans, buf, len); - - kfree(buf); + iwl_trans_read_mem_bytes(mvm->trans, ofs, sram, sram_len); + mvm->fw_error_sram = sram; + mvm->fw_error_sram_len = sram_len; } /** --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/pcie/drv.c +++ linux-3.13.0/drivers/net/wireless/iwlwifi/pcie/drv.c @@ -354,20 +354,25 @@ /* 7265 Series */ {IWL_PCI_DEVICE(0x095A, 0x5010, iwl7265_2ac_cfg)}, {IWL_PCI_DEVICE(0x095A, 0x5110, iwl7265_2ac_cfg)}, + {IWL_PCI_DEVICE(0x095A, 0x5112, iwl7265_2ac_cfg)}, + {IWL_PCI_DEVICE(0x095A, 0x5100, iwl7265_2ac_cfg)}, + {IWL_PCI_DEVICE(0x095A, 0x510A, iwl7265_2ac_cfg)}, {IWL_PCI_DEVICE(0x095B, 0x5310, iwl7265_2ac_cfg)}, {IWL_PCI_DEVICE(0x095B, 0x5302, iwl7265_2ac_cfg)}, {IWL_PCI_DEVICE(0x095B, 0x5210, iwl7265_2ac_cfg)}, {IWL_PCI_DEVICE(0x095A, 0x5012, iwl7265_2ac_cfg)}, - {IWL_PCI_DEVICE(0x095A, 0x500A, iwl7265_2ac_cfg)}, {IWL_PCI_DEVICE(0x095A, 0x5410, iwl7265_2ac_cfg)}, {IWL_PCI_DEVICE(0x095A, 0x5400, iwl7265_2ac_cfg)}, {IWL_PCI_DEVICE(0x095A, 0x1010, iwl7265_2ac_cfg)}, {IWL_PCI_DEVICE(0x095A, 0x5000, iwl7265_2n_cfg)}, + {IWL_PCI_DEVICE(0x095A, 0x500A, iwl7265_2n_cfg)}, {IWL_PCI_DEVICE(0x095B, 0x5200, iwl7265_2n_cfg)}, {IWL_PCI_DEVICE(0x095A, 0x5002, iwl7265_n_cfg)}, {IWL_PCI_DEVICE(0x095B, 0x5202, iwl7265_n_cfg)}, {IWL_PCI_DEVICE(0x095A, 0x9010, iwl7265_2ac_cfg)}, + {IWL_PCI_DEVICE(0x095A, 0x9012, iwl7265_2ac_cfg)}, {IWL_PCI_DEVICE(0x095A, 0x9110, iwl7265_2ac_cfg)}, + {IWL_PCI_DEVICE(0x095A, 0x9112, iwl7265_2ac_cfg)}, {IWL_PCI_DEVICE(0x095A, 0x9210, iwl7265_2ac_cfg)}, {IWL_PCI_DEVICE(0x095A, 0x9510, iwl7265_2ac_cfg)}, {IWL_PCI_DEVICE(0x095A, 0x9310, iwl7265_2ac_cfg)}, --- linux-3.13.0.orig/drivers/net/wireless/iwlwifi/pcie/trans.c +++ linux-3.13.0/drivers/net/wireless/iwlwifi/pcie/trans.c @@ -206,6 +206,28 @@ goto out; } + if (trans->cfg->host_interrupt_operation_mode) { + /* + * This is a bit of an abuse - This is needed for 7260 / 3160 + * only check host_interrupt_operation_mode even if this is + * not related to host_interrupt_operation_mode. + * + * Enable the oscillator to count wake up time for L1 exit. This + * consumes slightly more power (100uA) - but allows to be sure + * that we wake up from L1 on time. + * + * This looks weird: read twice the same register, discard the + * value, set a bit, and yet again, read that same register + * just to discard the value. But that's the way the hardware + * seems to like it. + */ + iwl_read_prph(trans, OSC_CLK); + iwl_read_prph(trans, OSC_CLK); + iwl_set_bits_prph(trans, OSC_CLK, OSC_CLK_FORCE_CONTROL); + iwl_read_prph(trans, OSC_CLK); + iwl_read_prph(trans, OSC_CLK); + } + /* * Enable DMA clock and wait for it to stabilize. * --- linux-3.13.0.orig/drivers/net/wireless/mwifiex/11ac.c +++ linux-3.13.0/drivers/net/wireless/mwifiex/11ac.c @@ -189,8 +189,7 @@ vht_cap->header.len = cpu_to_le16(sizeof(struct ieee80211_vht_cap)); memcpy((u8 *)vht_cap + sizeof(struct mwifiex_ie_types_header), - (u8 *)bss_desc->bcn_vht_cap + - sizeof(struct ieee_types_header), + (u8 *)bss_desc->bcn_vht_cap, le16_to_cpu(vht_cap->header.len)); mwifiex_fill_vht_cap_tlv(priv, vht_cap, bss_desc->bss_band); --- linux-3.13.0.orig/drivers/net/wireless/mwifiex/11n.c +++ linux-3.13.0/drivers/net/wireless/mwifiex/11n.c @@ -308,8 +308,7 @@ ht_cap->header.len = cpu_to_le16(sizeof(struct ieee80211_ht_cap)); memcpy((u8 *) ht_cap + sizeof(struct mwifiex_ie_types_header), - (u8 *) bss_desc->bcn_ht_cap + - sizeof(struct ieee_types_header), + (u8 *)bss_desc->bcn_ht_cap, le16_to_cpu(ht_cap->header.len)); mwifiex_fill_cap_info(priv, radio_type, ht_cap); --- linux-3.13.0.orig/drivers/net/wireless/mwifiex/fw.h +++ linux-3.13.0/drivers/net/wireless/mwifiex/fw.h @@ -226,7 +226,7 @@ /* HW_SPEC fw_cap_info */ -#define ISSUPP_11ACENABLED(fw_cap_info) (fw_cap_info & (BIT(13)|BIT(14))) +#define ISSUPP_11ACENABLED(fw_cap_info) (fw_cap_info & (BIT(12)|BIT(13))) #define GET_VHTCAP_CHWDSET(vht_cap_info) ((vht_cap_info >> 2) & 0x3) #define GET_VHTNSSMCS(mcs_mapset, nss) ((mcs_mapset >> (2 * (nss - 1))) & 0x3) --- linux-3.13.0.orig/drivers/net/wireless/mwifiex/main.c +++ linux-3.13.0/drivers/net/wireless/mwifiex/main.c @@ -747,7 +747,7 @@ static u16 mwifiex_netdev_select_wmm_queue(struct net_device *dev, struct sk_buff *skb, - void *accel_priv) + void *accel_priv, select_queue_fallback_t fallback) { skb->priority = cfg80211_classify8021d(skb); return mwifiex_1d_to_wmm_queue[skb->priority]; --- linux-3.13.0.orig/drivers/net/wireless/mwifiex/pcie.c +++ linux-3.13.0/drivers/net/wireless/mwifiex/pcie.c @@ -1211,6 +1211,12 @@ rd_index = card->rxbd_rdptr & reg->rx_mask; skb_data = card->rx_buf_list[rd_index]; + /* If skb allocation was failed earlier for Rx packet, + * rx_buf_list[rd_index] would have been left with a NULL. + */ + if (!skb_data) + return -ENOMEM; + MWIFIEX_SKB_PACB(skb_data, &buf_pa); pci_unmap_single(card->dev, buf_pa, MWIFIEX_RX_DATA_BUF_SIZE, PCI_DMA_FROMDEVICE); @@ -1525,6 +1531,14 @@ if (adapter->ps_state == PS_STATE_SLEEP_CFM) { mwifiex_process_sleep_confirm_resp(adapter, skb->data, skb->len); + mwifiex_pcie_enable_host_int(adapter); + if (mwifiex_write_reg(adapter, + PCIE_CPU_INT_EVENT, + CPU_INTR_SLEEP_CFM_DONE)) { + dev_warn(adapter->dev, + "Write register failed\n"); + return -1; + } while (reg->sleep_cookie && (count++ < 10) && mwifiex_pcie_ok_to_access_hw(adapter)) usleep_range(50, 60); @@ -1993,23 +2007,9 @@ adapter->int_status |= pcie_ireg; spin_unlock_irqrestore(&adapter->int_lock, flags); - if (pcie_ireg & HOST_INTR_CMD_DONE) { - if ((adapter->ps_state == PS_STATE_SLEEP_CFM) || - (adapter->ps_state == PS_STATE_SLEEP)) { - mwifiex_pcie_enable_host_int(adapter); - if (mwifiex_write_reg(adapter, - PCIE_CPU_INT_EVENT, - CPU_INTR_SLEEP_CFM_DONE) - ) { - dev_warn(adapter->dev, - "Write register failed\n"); - return; - - } - } - } else if (!adapter->pps_uapsd_mode && - adapter->ps_state == PS_STATE_SLEEP && - mwifiex_pcie_ok_to_access_hw(adapter)) { + if (!adapter->pps_uapsd_mode && + adapter->ps_state == PS_STATE_SLEEP && + mwifiex_pcie_ok_to_access_hw(adapter)) { /* Potentially for PCIe we could get other * interrupts like shared. Don't change power * state until cookie is set */ --- linux-3.13.0.orig/drivers/net/wireless/mwifiex/scan.c +++ linux-3.13.0/drivers/net/wireless/mwifiex/scan.c @@ -1681,7 +1681,7 @@ const u8 *ie_buf; size_t ie_len; u16 channel = 0; - u64 fw_tsf = 0; + __le64 fw_tsf = 0; u16 beacon_size = 0; u32 curr_bcn_bytes; u32 freq; @@ -1815,7 +1815,7 @@ ie_buf, ie_len, rssi, GFP_KERNEL); bss_priv = (struct mwifiex_bss_priv *)bss->priv; bss_priv->band = band; - bss_priv->fw_tsf = fw_tsf; + bss_priv->fw_tsf = le64_to_cpu(fw_tsf); if (priv->media_connected && !memcmp(bssid, priv->curr_bss_params.bss_descriptor @@ -2101,12 +2101,12 @@ curr_bss->ht_info_offset); if (curr_bss->bcn_vht_cap) - curr_bss->bcn_ht_cap = (void *)(curr_bss->beacon_buf + - curr_bss->vht_cap_offset); + curr_bss->bcn_vht_cap = (void *)(curr_bss->beacon_buf + + curr_bss->vht_cap_offset); if (curr_bss->bcn_vht_oper) - curr_bss->bcn_ht_oper = (void *)(curr_bss->beacon_buf + - curr_bss->vht_info_offset); + curr_bss->bcn_vht_oper = (void *)(curr_bss->beacon_buf + + curr_bss->vht_info_offset); if (curr_bss->bcn_bss_co_2040) curr_bss->bcn_bss_co_2040 = --- linux-3.13.0.orig/drivers/net/wireless/mwifiex/usb.c +++ linux-3.13.0/drivers/net/wireless/mwifiex/usb.c @@ -511,13 +511,6 @@ MWIFIEX_BSS_ROLE_ANY), MWIFIEX_ASYNC_CMD); -#ifdef CONFIG_PM - /* Resume handler may be called due to remote wakeup, - * force to exit suspend anyway - */ - usb_disable_autosuspend(card->udev); -#endif /* CONFIG_PM */ - return 0; } @@ -557,7 +550,6 @@ .id_table = mwifiex_usb_table, .suspend = mwifiex_usb_suspend, .resume = mwifiex_usb_resume, - .supports_autosuspend = 1, }; static int mwifiex_usb_tx_init(struct mwifiex_adapter *adapter) --- linux-3.13.0.orig/drivers/net/wireless/mwifiex/wmm.c +++ linux-3.13.0/drivers/net/wireless/mwifiex/wmm.c @@ -559,7 +559,8 @@ mwifiex_wmm_delete_all_ralist(priv); memcpy(tos_to_tid, ac_to_tid, sizeof(tos_to_tid)); - if (priv->adapter->if_ops.clean_pcie_ring) + if (priv->adapter->if_ops.clean_pcie_ring && + !priv->adapter->surprise_removed) priv->adapter->if_ops.clean_pcie_ring(priv->adapter); spin_unlock_irqrestore(&priv->wmm.ra_list_spinlock, flags); } --- linux-3.13.0.orig/drivers/net/wireless/p54/txrx.c +++ linux-3.13.0/drivers/net/wireless/p54/txrx.c @@ -587,7 +587,7 @@ chan = priv->curchan; if (chan) { struct survey_info *survey = &priv->survey[chan->hw_value]; - survey->noise = clamp_t(s8, priv->noise, -128, 127); + survey->noise = clamp(priv->noise, -128, 127); survey->channel_time = priv->survey_raw.active; survey->channel_time_tx = priv->survey_raw.tx; survey->channel_time_busy = priv->survey_raw.tx + --- linux-3.13.0.orig/drivers/net/wireless/rtl818x/rtl8187/rtl8187.h +++ linux-3.13.0/drivers/net/wireless/rtl818x/rtl8187/rtl8187.h @@ -15,6 +15,8 @@ #ifndef RTL8187_H #define RTL8187_H +#include + #include "rtl818x.h" #include "leds.h" @@ -139,7 +141,10 @@ u8 aifsn[4]; u8 rfkill_mask; struct { - __le64 buf; + union { + __le64 buf; + u8 dummy1[L1_CACHE_BYTES]; + } ____cacheline_aligned; struct sk_buff_head queue; } b_tx_status; /* This queue is used by both -b and non-b devices */ struct mutex io_mutex; @@ -147,7 +152,8 @@ u8 bits8; __le16 bits16; __le32 bits32; - } *io_dmabuf; + u8 dummy2[L1_CACHE_BYTES]; + } *io_dmabuf ____cacheline_aligned; bool rfkill_off; u16 seqno; }; --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/Kconfig +++ linux-3.13.0/drivers/net/wireless/rtlwifi/Kconfig @@ -5,7 +5,7 @@ ---help--- This option will enable support for the Realtek mac80211-based wireless drivers. Drivers rtl8192ce, rtl8192cu, rtl8192se, rtl8192de, - rtl8723eu, and rtl8188eu share some common code. + rtl8723ae, rtl8723be, and rtl8188ae share some common code. if RTL_CARDS @@ -48,12 +48,27 @@ depends on PCI select RTLWIFI select RTLWIFI_PCI + select RTL8723_COMMON + select RTLBTCOEXIST ---help--- This is the driver for Realtek RTL8723AE 802.11n PCIe wireless network adapters. If you choose to build it as a module, it will be called rtl8723ae +config RTL8723BE + tristate "Realtek RTL8723BE PCIe Wireless Network Adapter" + depends on PCI + select RTLWIFI + select RTLWIFI_PCI + select RTL8723_COMMON + select RTLBTCOEXIST + ---help--- + This is the driver for Realtek RTL8723BE 802.11n PCIe + wireless network adapters. + + If you choose to build it as a module, it will be called rtl8723be + config RTL8188EE tristate "Realtek RTL8188EE Wireless Network Adapter" depends on PCI @@ -101,4 +116,14 @@ depends on RTL8192CE || RTL8192CU default y +config RTL8723_COMMON + tristate + depends on RTL8723AE || RTL8723BE + default y + +config RTLBTCOEXIST + tristate + depends on RTL8723AE || RTL8723BE + default y + endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/Makefile +++ linux-3.13.0/drivers/net/wireless/rtlwifi/Makefile @@ -24,6 +24,9 @@ obj-$(CONFIG_RTL8192SE) += rtl8192se/ obj-$(CONFIG_RTL8192DE) += rtl8192de/ obj-$(CONFIG_RTL8723AE) += rtl8723ae/ +obj-$(CONFIG_RTL8723BE) += rtl8723be/ obj-$(CONFIG_RTL8188EE) += rtl8188ee/ +obj-$(CONFIG_RTLBTCOEXIST) += btcoexist/ +obj-$(CONFIG_RTL8723_COMMON) += rtl8723com/ ccflags-y += -D__CHECK_ENDIAN__ --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/base.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/base.c @@ -1437,7 +1437,8 @@ /* if we can't recv beacon for 6s, we should * reconnect this AP */ - if (rtlpriv->link_info.roam_times >= 3) { + if ((rtlpriv->link_info.roam_times >= 3) && + !is_zero_ether_addr(rtlpriv->mac80211.bssid)) { RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "AP off, try to reconnect now\n"); rtlpriv->link_info.roam_times = 0; --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/btcoexist/Makefile +++ linux-3.13.0/drivers/net/wireless/rtlwifi/btcoexist/Makefile @@ -0,0 +1,7 @@ +btcoexist-objs := halbtc8723b2ant.o \ + halbtcoutsrc.o \ + rtl_btc.o + +obj-$(CONFIG_RTLBTCOEXIST) += btcoexist.o + +ccflags-y += -D__CHECK_ENDIAN__ --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/btcoexist/halbt_precomp.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/btcoexist/halbt_precomp.h @@ -0,0 +1,87 @@ +/****************************************************************************** + * + * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * Larry Finger + * + ******************************************************************************/ + +#ifndef __HALBT_PRECOMP_H__ +#define __HALBT_PRECOMP_H__ +/************************************************************* + * include files + *************************************************************/ +#include "../wifi.h" +#include "../efuse.h" +#include "../base.h" +#include "../regd.h" +#include "../cam.h" +#include "../ps.h" +#include "../pci.h" + +#include "halbtcoutsrc.h" + +#include "halbtc8723b2ant.h" + +#define BIT0 0x00000001 +#define BIT1 0x00000002 +#define BIT2 0x00000004 +#define BIT3 0x00000008 +#define BIT4 0x00000010 +#define BIT5 0x00000020 +#define BIT6 0x00000040 +#define BIT7 0x00000080 +#define BIT8 0x00000100 +#define BIT9 0x00000200 +#define BIT10 0x00000400 +#define BIT11 0x00000800 +#define BIT12 0x00001000 +#define BIT13 0x00002000 +#define BIT14 0x00004000 +#define BIT15 0x00008000 +#define BIT16 0x00010000 +#define BIT17 0x00020000 +#define BIT18 0x00040000 +#define BIT19 0x00080000 +#define BIT20 0x00100000 +#define BIT21 0x00200000 +#define BIT22 0x00400000 +#define BIT23 0x00800000 +#define BIT24 0x01000000 +#define BIT25 0x02000000 +#define BIT26 0x04000000 +#define BIT27 0x08000000 +#define BIT28 0x10000000 +#define BIT29 0x20000000 +#define BIT30 0x40000000 +#define BIT31 0x80000000 + +#define MASKBYTE0 0xff +#define MASKBYTE1 0xff00 +#define MASKBYTE2 0xff0000 +#define MASKBYTE3 0xff000000 +#define MASKHWORD 0xffff0000 +#define MASKLWORD 0x0000ffff +#define MASKDWORD 0xffffffff +#define MASK12BITS 0xfff +#define MASKH4BITS 0xf0000000 +#define MASKOFDM_D 0xffc00000 +#define MASKCCK 0x3f3f3f3f + +#endif /* __HALBT_PRECOMP_H__ */ --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/btcoexist/halbtc8723b2ant.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/btcoexist/halbtc8723b2ant.c @@ -0,0 +1,3698 @@ +/****************************************************************************** + * + * Copyright(c) 2012 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ +/*************************************************************** + * Description: + * + * This file is for RTL8723B Co-exist mechanism + * + * History + * 2012/11/15 Cosa first check in. + * + **************************************************************/ +/************************************************************** + * include files + **************************************************************/ +#include "halbt_precomp.h" +/************************************************************** + * Global variables, these are static variables + **************************************************************/ +static struct coex_dm_8723b_2ant glcoex_dm_8723b_2ant; +static struct coex_dm_8723b_2ant *coex_dm = &glcoex_dm_8723b_2ant; +static struct coex_sta_8723b_2ant glcoex_sta_8723b_2ant; +static struct coex_sta_8723b_2ant *coex_sta = &glcoex_sta_8723b_2ant; + +static const char *const glbt_info_src_8723b_2ant[] = { + "BT Info[wifi fw]", + "BT Info[bt rsp]", + "BT Info[bt auto report]", +}; + +static u32 glcoex_ver_date_8723b_2ant = 20130731; +static u32 glcoex_ver_8723b_2ant = 0x3b; + +/************************************************************** + * local function proto type if needed + **************************************************************/ +/************************************************************** + * local function start with btc8723b2ant_ + **************************************************************/ +static u8 btc8723b2ant_bt_rssi_state(u8 level_num, u8 rssi_thresh, + u8 rssi_thresh1) +{ + s32 bt_rssi = 0; + u8 bt_rssi_state = coex_sta->pre_bt_rssi_state; + + bt_rssi = coex_sta->bt_rssi; + + if (level_num == 2) { + if ((coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_LOW) || + (coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_STAY_LOW)) { + if (bt_rssi >= rssi_thresh + + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT) { + bt_rssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to High\n"); + } else { + bt_rssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "stay at Low\n"); + } + } else { + if (bt_rssi < rssi_thresh) { + bt_rssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to Low\n"); + } else { + bt_rssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "stay at High\n"); + } + } + } else if (level_num == 3) { + if (rssi_thresh > rssi_thresh1) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi thresh error!!\n"); + return coex_sta->pre_bt_rssi_state; + } + + if ((coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_LOW) || + (coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_STAY_LOW)) { + if (bt_rssi >= rssi_thresh + + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT) { + bt_rssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to Medium\n"); + } else { + bt_rssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "stay at Low\n"); + } + } else if ((coex_sta->pre_bt_rssi_state == + BTC_RSSI_STATE_MEDIUM) || + (coex_sta->pre_bt_rssi_state == + BTC_RSSI_STATE_STAY_MEDIUM)) { + if (bt_rssi >= rssi_thresh1 + + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT) { + bt_rssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to High\n"); + } else if (bt_rssi < rssi_thresh) { + bt_rssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to Low\n"); + } else { + bt_rssi_state = BTC_RSSI_STATE_STAY_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "stay at Medium\n"); + } + } else { + if (bt_rssi < rssi_thresh1) { + bt_rssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to Medium\n"); + } else { + bt_rssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "stay at High\n"); + } + } + } + + coex_sta->pre_bt_rssi_state = bt_rssi_state; + + return bt_rssi_state; +} + +static u8 btc8723b2ant_wifi_rssi_state(struct btc_coexist *btcoexist, + u8 index, u8 level_num, + u8 rssi_thresh, u8 rssi_thresh1) +{ + s32 wifi_rssi = 0; + u8 wifi_rssi_state = coex_sta->pre_wifi_rssi_state[index]; + + btcoexist->btc_get(btcoexist, BTC_GET_S4_WIFI_RSSI, &wifi_rssi); + + if (level_num == 2) { + if ((coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_LOW) || + (coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_STAY_LOW)) { + if (wifi_rssi >= rssi_thresh + + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT) { + wifi_rssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to High\n"); + } else { + wifi_rssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "stay at Low\n"); + } + } else { + if (wifi_rssi < rssi_thresh) { + wifi_rssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to Low\n"); + } else { + wifi_rssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "stay at High\n"); + } + } + } else if (level_num == 3) { + if (rssi_thresh > rssi_thresh1) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI thresh error!!\n"); + return coex_sta->pre_wifi_rssi_state[index]; + } + + if ((coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_LOW) || + (coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_STAY_LOW)) { + if (wifi_rssi >= rssi_thresh + + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT) { + wifi_rssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to Medium\n"); + } else { + wifi_rssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "stay at Low\n"); + } + } else if ((coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_MEDIUM) || + (coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_STAY_MEDIUM)) { + if (wifi_rssi >= rssi_thresh1 + + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT) { + wifi_rssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to High\n"); + } else if (wifi_rssi < rssi_thresh) { + wifi_rssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to Low\n"); + } else { + wifi_rssi_state = BTC_RSSI_STATE_STAY_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "stay at Medium\n"); + } + } else { + if (wifi_rssi < rssi_thresh1) { + wifi_rssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to Medium\n"); + } else { + wifi_rssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "stay at High\n"); + } + } + } + + coex_sta->pre_wifi_rssi_state[index] = wifi_rssi_state; + + return wifi_rssi_state; +} + +static void btc8723b2ant_monitor_bt_ctr(struct btc_coexist *btcoexist) +{ + u32 reg_hp_txrx, reg_lp_txrx, u32tmp; + u32 reg_hp_tx = 0, reg_hp_rx = 0; + u32 reg_lp_tx = 0, reg_lp_rx = 0; + + reg_hp_txrx = 0x770; + reg_lp_txrx = 0x774; + + u32tmp = btcoexist->btc_read_4byte(btcoexist, reg_hp_txrx); + reg_hp_tx = u32tmp & MASKLWORD; + reg_hp_rx = (u32tmp & MASKHWORD) >> 16; + + u32tmp = btcoexist->btc_read_4byte(btcoexist, reg_lp_txrx); + reg_lp_tx = u32tmp & MASKLWORD; + reg_lp_rx = (u32tmp & MASKHWORD) >> 16; + + coex_sta->high_priority_tx = reg_hp_tx; + coex_sta->high_priority_rx = reg_hp_rx; + coex_sta->low_priority_tx = reg_lp_tx; + coex_sta->low_priority_rx = reg_lp_rx; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], High Priority Tx/Rx(reg 0x%x)=0x%x(%d)/0x%x(%d)\n", + reg_hp_txrx, reg_hp_tx, reg_hp_tx, reg_hp_rx, reg_hp_rx); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], Low Priority Tx/Rx(reg 0x%x)=0x%x(%d)/0x%x(%d)\n", + reg_lp_txrx, reg_lp_tx, reg_lp_tx, reg_lp_rx, reg_lp_rx); + + /* reset counter */ + btcoexist->btc_write_1byte(btcoexist, 0x76e, 0xc); +} + +static bool btc8723b2ant_is_wifi_status_changed(struct btc_coexist *btcoexist) +{ + static bool pre_wifi_busy; + static bool pre_under_4way; + static bool pre_bt_hs_on; + bool wifi_busy = false, under_4way = false, bt_hs_on = false; + bool wifi_connected = false; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_4_WAY_PROGRESS, + &under_4way); + + if (wifi_connected) { + if (wifi_busy != pre_wifi_busy) { + pre_wifi_busy = wifi_busy; + return true; + } + + if (under_4way != pre_under_4way) { + pre_under_4way = under_4way; + return true; + } + + if (bt_hs_on != pre_bt_hs_on) { + pre_bt_hs_on = bt_hs_on; + return true; + } + } + + return false; +} + +static void btc8723b2ant_update_bt_link_info(struct btc_coexist *btcoexist) +{ + /*struct btc_stack_info *stack_info = &btcoexist->stack_info;*/ + struct btc_bt_link_info *bt_link_info = &btcoexist->bt_link_info; + bool bt_hs_on = false; + +#if (BT_AUTO_REPORT_ONLY_8723B_2ANT == 1) /* profile from bt patch */ + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + + bt_link_info->bt_link_exist = coex_sta->bt_link_exist; + bt_link_info->sco_exist = coex_sta->sco_exist; + bt_link_info->a2dp_exist = coex_sta->a2dp_exist; + bt_link_info->pan_exist = coex_sta->pan_exist; + bt_link_info->hid_exist = coex_sta->hid_exist; + + /* work around for HS mode. */ + if (bt_hs_on) { + bt_link_info->pan_exist = true; + bt_link_info->bt_link_exist = true; + } +#else /* profile from bt stack */ + bt_link_info->bt_link_exist = stack_info->bt_link_exist; + bt_link_info->sco_exist = stack_info->sco_exist; + bt_link_info->a2dp_exist = stack_info->a2dp_exist; + bt_link_info->pan_exist = stack_info->pan_exist; + bt_link_info->hid_exist = stack_info->hid_exist; + + /*for win-8 stack HID report error*/ + if (!stack_info->hid_exist) + stack_info->hid_exist = coex_sta->hid_exist; + /*sync BTInfo with BT firmware and stack*/ + /* when stack HID report error, here we use the info from bt fw.*/ + if (!stack_info->bt_link_exist) + stack_info->bt_link_exist = coex_sta->bt_link_exist; +#endif + /* check if Sco only */ + if (bt_link_info->sco_exist && !bt_link_info->a2dp_exist && + !bt_link_info->pan_exist && !bt_link_info->hid_exist) + bt_link_info->sco_only = true; + else + bt_link_info->sco_only = false; + + /* check if A2dp only */ + if (!bt_link_info->sco_exist && bt_link_info->a2dp_exist && + !bt_link_info->pan_exist && !bt_link_info->hid_exist) + bt_link_info->a2dp_only = true; + else + bt_link_info->a2dp_only = false; + + /* check if Pan only */ + if (!bt_link_info->sco_exist && !bt_link_info->a2dp_exist && + bt_link_info->pan_exist && !bt_link_info->hid_exist) + bt_link_info->pan_only = true; + else + bt_link_info->pan_only = false; + + /* check if Hid only */ + if (!bt_link_info->sco_exist && !bt_link_info->a2dp_exist && + !bt_link_info->pan_exist && bt_link_info->hid_exist) + bt_link_info->hid_only = true; + else + bt_link_info->hid_only = false; +} + +static u8 btc8723b2ant_action_algorithm(struct btc_coexist *btcoexist) +{ + struct btc_bt_link_info *bt_link_info = &btcoexist->bt_link_info; + bool bt_hs_on = false; + u8 algorithm = BT_8723B_2ANT_COEX_ALGO_UNDEFINED; + u8 num_of_diff_profile = 0; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + + if (!bt_link_info->bt_link_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], No BT link exists!!!\n"); + return algorithm; + } + + if (bt_link_info->sco_exist) + num_of_diff_profile++; + if (bt_link_info->hid_exist) + num_of_diff_profile++; + if (bt_link_info->pan_exist) + num_of_diff_profile++; + if (bt_link_info->a2dp_exist) + num_of_diff_profile++; + + if (num_of_diff_profile == 1) { + if (bt_link_info->sco_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO only\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_SCO; + } else { + if (bt_link_info->hid_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], HID only\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_HID; + } else if (bt_link_info->a2dp_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], A2DP only\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_A2DP; + } else if (bt_link_info->pan_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], PAN(HS) only\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANHS; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], PAN(EDR) only\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR; + } + } + } + } else if (num_of_diff_profile == 2) { + if (bt_link_info->sco_exist) { + if (bt_link_info->hid_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + HID\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } else if (bt_link_info->a2dp_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + A2DP ==> SCO\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } else if (bt_link_info->pan_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + PAN(HS)\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_SCO; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + PAN(EDR)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } + } + } else { + if (bt_link_info->hid_exist && + bt_link_info->a2dp_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], HID + A2DP\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_HID_A2DP; + } else if (bt_link_info->hid_exist && + bt_link_info->pan_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], HID + PAN(HS)\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_HID; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], HID + PAN(EDR)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } + } else if (bt_link_info->pan_exist && + bt_link_info->a2dp_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], A2DP + PAN(HS)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_A2DP_PANHS; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex],A2DP + PAN(EDR)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR_A2DP; + } + } + } + } else if (num_of_diff_profile == 3) { + if (bt_link_info->sco_exist) { + if (bt_link_info->hid_exist && + bt_link_info->a2dp_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + HID + A2DP" + " ==> HID\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } else if (bt_link_info->hid_exist && + bt_link_info->pan_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + HID + " + "PAN(HS)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + HID + " + "PAN(EDR)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } + } else if (bt_link_info->pan_exist && + bt_link_info->a2dp_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + A2DP + " + "PAN(HS)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + A2DP + " + "PAN(EDR) ==> HID\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } + } + } else { + if (bt_link_info->hid_exist && + bt_link_info->pan_exist && + bt_link_info->a2dp_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], HID + A2DP + " + "PAN(HS)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_HID_A2DP; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], HID + A2DP + " + "PAN(EDR)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_HID_A2DP_PANEDR; + } + } + } + } else if (num_of_diff_profile >= 3) { + if (bt_link_info->sco_exist) { + if (bt_link_info->hid_exist && + bt_link_info->pan_exist && + bt_link_info->a2dp_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Error!!! SCO + HID" + " + A2DP + PAN(HS)\n"); + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + HID + A2DP +" + " PAN(EDR)==>PAN(EDR)+HID\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } + } + } + } + return algorithm; +} + +static bool btc8723b_need_dec_pwr(struct btc_coexist *btcoexist) +{ + bool ret = false; + bool bt_hs_on = false, wifi_connected = false; + s32 bt_hs_rssi = 0; + u8 bt_rssi_state; + + if (!btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on)) + return false; + if (!btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected)) + return false; + if (!btcoexist->btc_get(btcoexist, BTC_GET_S4_HS_RSSI, &bt_hs_rssi)) + return false; + + bt_rssi_state = btc8723b2ant_bt_rssi_state(2, 35, 0); + + if (wifi_connected) { + if (bt_hs_on) { + if (bt_hs_rssi > 37) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], Need to decrease bt " + "power for HS mode!!\n"); + ret = true; + } + } else { + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], Need to decrease bt " + "power for Wifi is connected!!\n"); + ret = true; + } + } + } + + return ret; +} + +static void btc8723b2ant_set_fw_dac_swing_level(struct btc_coexist *btcoexist, + u8 dac_swing_lvl) +{ + u8 h2c_parameter[1] = {0}; + + /* There are several type of dacswing + * 0x18/ 0x10/ 0xc/ 0x8/ 0x4/ 0x6 + */ + h2c_parameter[0] = dac_swing_lvl; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], Set Dac Swing Level=0x%x\n", dac_swing_lvl); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], FW write 0x64=0x%x\n", h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x64, 1, h2c_parameter); +} + +static void btc8723b2ant_set_fw_dec_bt_pwr(struct btc_coexist *btcoexist, + bool dec_bt_pwr) +{ + u8 h2c_parameter[1] = {0}; + + h2c_parameter[0] = 0; + + if (dec_bt_pwr) + h2c_parameter[0] |= BIT1; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], decrease Bt Power : %s, FW write 0x62=0x%x\n", + (dec_bt_pwr ? "Yes!!" : "No!!"), h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x62, 1, h2c_parameter); +} + +static void btc8723b2ant_dec_bt_pwr(struct btc_coexist *btcoexist, + bool force_exec, bool dec_bt_pwr) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s Dec BT power = %s\n", + (force_exec ? "force to" : ""), (dec_bt_pwr ? "ON" : "OFF")); + coex_dm->cur_dec_bt_pwr = dec_bt_pwr; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], bPreDecBtPwr=%d, bCurDecBtPwr=%d\n", + coex_dm->pre_dec_bt_pwr, coex_dm->cur_dec_bt_pwr); + + if (coex_dm->pre_dec_bt_pwr == coex_dm->cur_dec_bt_pwr) + return; + } + btc8723b2ant_set_fw_dec_bt_pwr(btcoexist, coex_dm->cur_dec_bt_pwr); + + coex_dm->pre_dec_bt_pwr = coex_dm->cur_dec_bt_pwr; +} + +static void btc8723b2ant_fw_dac_swing_lvl(struct btc_coexist *btcoexist, + bool force_exec, u8 fw_dac_swing_lvl) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s set FW Dac Swing level = %d\n", + (force_exec ? "force to" : ""), fw_dac_swing_lvl); + coex_dm->cur_fw_dac_swing_lvl = fw_dac_swing_lvl; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], preFwDacSwingLvl=%d, " + "curFwDacSwingLvl=%d\n", + coex_dm->pre_fw_dac_swing_lvl, + coex_dm->cur_fw_dac_swing_lvl); + + if (coex_dm->pre_fw_dac_swing_lvl == + coex_dm->cur_fw_dac_swing_lvl) + return; + } + + btc8723b2ant_set_fw_dac_swing_level(btcoexist, + coex_dm->cur_fw_dac_swing_lvl); + coex_dm->pre_fw_dac_swing_lvl = coex_dm->cur_fw_dac_swing_lvl; +} + +static void btc8723b2ant_set_sw_rf_rx_lpf_corner(struct btc_coexist *btcoexist, + bool rx_rf_shrink_on) +{ + if (rx_rf_shrink_on) { + /* Shrink RF Rx LPF corner */ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Shrink RF Rx LPF corner!!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1e, + 0xfffff, 0xffffc); + } else { + /* Resume RF Rx LPF corner */ + /* After initialized, we can use coex_dm->btRf0x1eBackup */ + if (btcoexist->initilized) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Resume RF Rx LPF corner!!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1e, + 0xfffff, + coex_dm->bt_rf0x1e_backup); + } + } +} + +static void btc8723b2ant_rf_shrink(struct btc_coexist *btcoexist, + bool force_exec, bool rx_rf_shrink_on) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s turn Rx RF Shrink = %s\n", + (force_exec ? "force to" : ""), (rx_rf_shrink_on ? + "ON" : "OFF")); + coex_dm->cur_rf_rx_lpf_shrink = rx_rf_shrink_on; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], bPreRfRxLpfShrink=%d, " + "bCurRfRxLpfShrink=%d\n", + coex_dm->pre_rf_rx_lpf_shrink, + coex_dm->cur_rf_rx_lpf_shrink); + + if (coex_dm->pre_rf_rx_lpf_shrink == + coex_dm->cur_rf_rx_lpf_shrink) + return; + } + btc8723b2ant_set_sw_rf_rx_lpf_corner(btcoexist, + coex_dm->cur_rf_rx_lpf_shrink); + + coex_dm->pre_rf_rx_lpf_shrink = coex_dm->cur_rf_rx_lpf_shrink; +} + +static void btc8723b_set_penalty_txrate(struct btc_coexist *btcoexist, + bool low_penalty_ra) +{ + u8 h2c_parameter[6] = {0}; + + h2c_parameter[0] = 0x6; /* opCode, 0x6= Retry_Penalty*/ + + if (low_penalty_ra) { + h2c_parameter[1] |= BIT0; + /*normal rate except MCS7/6/5, OFDM54/48/36*/ + h2c_parameter[2] = 0x00; + h2c_parameter[3] = 0xf7; /*MCS7 or OFDM54*/ + h2c_parameter[4] = 0xf8; /*MCS6 or OFDM48*/ + h2c_parameter[5] = 0xf9; /*MCS5 or OFDM36*/ + } + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], set WiFi Low-Penalty Retry: %s", + (low_penalty_ra ? "ON!!" : "OFF!!")); + + btcoexist->btc_fill_h2c(btcoexist, 0x69, 6, h2c_parameter); +} + +static void btc8723b2ant_low_penalty_ra(struct btc_coexist *btcoexist, + bool force_exec, bool low_penalty_ra) +{ + /*return; */ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s turn LowPenaltyRA = %s\n", + (force_exec ? "force to" : ""), (low_penalty_ra ? + "ON" : "OFF")); + coex_dm->cur_low_penalty_ra = low_penalty_ra; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], bPreLowPenaltyRa=%d, " + "bCurLowPenaltyRa=%d\n", + coex_dm->pre_low_penalty_ra, + coex_dm->cur_low_penalty_ra); + + if (coex_dm->pre_low_penalty_ra == coex_dm->cur_low_penalty_ra) + return; + } + btc8723b_set_penalty_txrate(btcoexist, coex_dm->cur_low_penalty_ra); + + coex_dm->pre_low_penalty_ra = coex_dm->cur_low_penalty_ra; +} + +static void btc8723b2ant_set_dac_swing_reg(struct btc_coexist *btcoexist, + u32 level) +{ + u8 val = (u8) level; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Write SwDacSwing = 0x%x\n", level); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x883, 0x3e, val); +} + +static void btc8723b2ant_set_sw_fulltime_dac_swing(struct btc_coexist *btcoex, + bool sw_dac_swing_on, + u32 sw_dac_swing_lvl) +{ + if (sw_dac_swing_on) + btc8723b2ant_set_dac_swing_reg(btcoex, sw_dac_swing_lvl); + else + btc8723b2ant_set_dac_swing_reg(btcoex, 0x18); +} + + +static void btc8723b2ant_dac_swing(struct btc_coexist *btcoexist, + bool force_exec, bool dac_swing_on, + u32 dac_swing_lvl) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s turn DacSwing=%s, dac_swing_lvl=0x%x\n", + (force_exec ? "force to" : ""), + (dac_swing_on ? "ON" : "OFF"), dac_swing_lvl); + coex_dm->cur_dac_swing_on = dac_swing_on; + coex_dm->cur_dac_swing_lvl = dac_swing_lvl; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], bPreDacSwingOn=%d, preDacSwingLvl=0x%x," + " bCurDacSwingOn=%d, curDacSwingLvl=0x%x\n", + coex_dm->pre_dac_swing_on, coex_dm->pre_dac_swing_lvl, + coex_dm->cur_dac_swing_on, + coex_dm->cur_dac_swing_lvl); + + if ((coex_dm->pre_dac_swing_on == coex_dm->cur_dac_swing_on) && + (coex_dm->pre_dac_swing_lvl == coex_dm->cur_dac_swing_lvl)) + return; + } + mdelay(30); + btc8723b2ant_set_sw_fulltime_dac_swing(btcoexist, dac_swing_on, + dac_swing_lvl); + + coex_dm->pre_dac_swing_on = coex_dm->cur_dac_swing_on; + coex_dm->pre_dac_swing_lvl = coex_dm->cur_dac_swing_lvl; +} + +static void btc8723b2ant_set_agc_table(struct btc_coexist *btcoexist, + bool agc_table_en) +{ + u8 rssi_adjust_val = 0; + + /* BB AGC Gain Table */ + if (agc_table_en) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], BB Agc Table On!\n"); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x6e1A0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x6d1B0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x6c1C0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x6b1D0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x6a1E0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x691F0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x68200001); + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], BB Agc Table Off!\n"); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xaa1A0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa91B0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa81C0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa71D0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa61E0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa51F0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa4200001); + } + + + /* RF Gain */ + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0xef, 0xfffff, 0x02000); + if (agc_table_en) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Agc Table On!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, + 0xfffff, 0x38fff); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, + 0xfffff, 0x38ffe); + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Agc Table Off!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, + 0xfffff, 0x380c3); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, + 0xfffff, 0x28ce6); + } + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0xef, 0xfffff, 0x0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0xed, 0xfffff, 0x1); + + if (agc_table_en) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Agc Table On!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x40, + 0xfffff, 0x38fff); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x40, + 0xfffff, 0x38ffe); + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Agc Table Off!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x40, + 0xfffff, 0x380c3); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x40, + 0xfffff, 0x28ce6); + } + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0xed, 0xfffff, 0x0); + + /* set rssiAdjustVal for wifi module. */ + if (agc_table_en) + rssi_adjust_val = 8; + btcoexist->btc_set(btcoexist, BTC_SET_U1_RSSI_ADJ_VAL_FOR_AGC_TABLE_ON, + &rssi_adjust_val); +} + +static void btc8723b2ant_agc_table(struct btc_coexist *btcoexist, + bool force_exec, bool agc_table_en) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s %s Agc Table\n", + (force_exec ? "force to" : ""), + (agc_table_en ? "Enable" : "Disable")); + coex_dm->cur_agc_table_en = agc_table_en; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], bPreAgcTableEn=%d, bCurAgcTableEn=%d\n", + coex_dm->pre_agc_table_en, coex_dm->cur_agc_table_en); + + if (coex_dm->pre_agc_table_en == coex_dm->cur_agc_table_en) + return; + } + btc8723b2ant_set_agc_table(btcoexist, agc_table_en); + + coex_dm->pre_agc_table_en = coex_dm->cur_agc_table_en; +} + +static void btc8723b2ant_set_coex_table(struct btc_coexist *btcoexist, + u32 val0x6c0, u32 val0x6c4, + u32 val0x6c8, u8 val0x6cc) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], set coex table, set 0x6c0=0x%x\n", val0x6c0); + btcoexist->btc_write_4byte(btcoexist, 0x6c0, val0x6c0); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], set coex table, set 0x6c4=0x%x\n", val0x6c4); + btcoexist->btc_write_4byte(btcoexist, 0x6c4, val0x6c4); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], set coex table, set 0x6c8=0x%x\n", val0x6c8); + btcoexist->btc_write_4byte(btcoexist, 0x6c8, val0x6c8); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], set coex table, set 0x6cc=0x%x\n", val0x6cc); + btcoexist->btc_write_1byte(btcoexist, 0x6cc, val0x6cc); +} + +static void btc8723b2ant_coex_table(struct btc_coexist *btcoexist, + bool force_exec, u32 val0x6c0, + u32 val0x6c4, u32 val0x6c8, + u8 val0x6cc) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s write Coex Table 0x6c0=0x%x," + " 0x6c4=0x%x, 0x6c8=0x%x, 0x6cc=0x%x\n", + (force_exec ? "force to" : ""), val0x6c0, + val0x6c4, val0x6c8, val0x6cc); + coex_dm->cur_val0x6c0 = val0x6c0; + coex_dm->cur_val0x6c4 = val0x6c4; + coex_dm->cur_val0x6c8 = val0x6c8; + coex_dm->cur_val0x6cc = val0x6cc; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], preVal0x6c0=0x%x, " + "preVal0x6c4=0x%x, preVal0x6c8=0x%x, " + "preVal0x6cc=0x%x !!\n", + coex_dm->pre_val0x6c0, coex_dm->pre_val0x6c4, + coex_dm->pre_val0x6c8, coex_dm->pre_val0x6cc); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], curVal0x6c0=0x%x, " + "curVal0x6c4=0x%x, curVal0x6c8=0x%x, " + "curVal0x6cc=0x%x !!\n", + coex_dm->cur_val0x6c0, coex_dm->cur_val0x6c4, + coex_dm->cur_val0x6c8, coex_dm->cur_val0x6cc); + + if ((coex_dm->pre_val0x6c0 == coex_dm->cur_val0x6c0) && + (coex_dm->pre_val0x6c4 == coex_dm->cur_val0x6c4) && + (coex_dm->pre_val0x6c8 == coex_dm->cur_val0x6c8) && + (coex_dm->pre_val0x6cc == coex_dm->cur_val0x6cc)) + return; + } + btc8723b2ant_set_coex_table(btcoexist, val0x6c0, val0x6c4, + val0x6c8, val0x6cc); + + coex_dm->pre_val0x6c0 = coex_dm->cur_val0x6c0; + coex_dm->pre_val0x6c4 = coex_dm->cur_val0x6c4; + coex_dm->pre_val0x6c8 = coex_dm->cur_val0x6c8; + coex_dm->pre_val0x6cc = coex_dm->cur_val0x6cc; +} + +static void btc8723b_coex_tbl_type(struct btc_coexist *btcoexist, + bool force_exec, u8 type) +{ + switch (type) { + case 0: + btc8723b2ant_coex_table(btcoexist, force_exec, 0x55555555, + 0x55555555, 0xffff, 0x3); + break; + case 1: + btc8723b2ant_coex_table(btcoexist, force_exec, 0x55555555, + 0x5afa5afa, 0xffff, 0x3); + break; + case 2: + btc8723b2ant_coex_table(btcoexist, force_exec, 0x5a5a5a5a, + 0x5a5a5a5a, 0xffff, 0x3); + break; + case 3: + btc8723b2ant_coex_table(btcoexist, force_exec, 0xaaaaaaaa, + 0xaaaaaaaa, 0xffff, 0x3); + break; + case 4: + btc8723b2ant_coex_table(btcoexist, force_exec, 0xffffffff, + 0xffffffff, 0xffff, 0x3); + break; + case 5: + btc8723b2ant_coex_table(btcoexist, force_exec, 0x5fff5fff, + 0x5fff5fff, 0xffff, 0x3); + break; + case 6: + btc8723b2ant_coex_table(btcoexist, force_exec, 0x55ff55ff, + 0x5a5a5a5a, 0xffff, 0x3); + break; + case 7: + btc8723b2ant_coex_table(btcoexist, force_exec, 0x55ff55ff, + 0x5afa5afa, 0xffff, 0x3); + break; + case 8: + btc8723b2ant_coex_table(btcoexist, force_exec, 0x5aea5aea, + 0x5aea5aea, 0xffff, 0x3); + break; + case 9: + btc8723b2ant_coex_table(btcoexist, force_exec, 0x55ff55ff, + 0x5aea5aea, 0xffff, 0x3); + break; + case 10: + btc8723b2ant_coex_table(btcoexist, force_exec, 0x55ff55ff, + 0x5aff5aff, 0xffff, 0x3); + break; + case 11: + btc8723b2ant_coex_table(btcoexist, force_exec, 0x55ff55ff, + 0x5a5f5a5f, 0xffff, 0x3); + break; + case 12: + btc8723b2ant_coex_table(btcoexist, force_exec, 0x55ff55ff, + 0x5f5f5f5f, 0xffff, 0x3); + break; + default: + break; + } +} + +static void btc8723b2ant_set_fw_ignore_wlan_act(struct btc_coexist *btcoexist, + bool enable) +{ + u8 h2c_parameter[1] = {0}; + + if (enable) + h2c_parameter[0] |= BIT0;/* function enable*/ + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], set FW for BT Ignore Wlan_Act, " + "FW write 0x63=0x%x\n", h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x63, 1, h2c_parameter); +} + +static void btc8723b2ant_ignore_wlan_act(struct btc_coexist *btcoexist, + bool force_exec, bool enable) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s turn Ignore WlanAct %s\n", + (force_exec ? "force to" : ""), (enable ? "ON" : "OFF")); + coex_dm->cur_ignore_wlan_act = enable; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], bPreIgnoreWlanAct = %d, " + "bCurIgnoreWlanAct = %d!!\n", + coex_dm->pre_ignore_wlan_act, + coex_dm->cur_ignore_wlan_act); + + if (coex_dm->pre_ignore_wlan_act == + coex_dm->cur_ignore_wlan_act) + return; + } + btc8723b2ant_set_fw_ignore_wlan_act(btcoexist, enable); + + coex_dm->pre_ignore_wlan_act = coex_dm->cur_ignore_wlan_act; +} + +static void btc8723b2ant_set_fw_ps_tdma(struct btc_coexist *btcoexist, u8 byte1, + u8 byte2, u8 byte3, u8 byte4, u8 byte5) +{ + u8 h2c_parameter[5]; + + h2c_parameter[0] = byte1; + h2c_parameter[1] = byte2; + h2c_parameter[2] = byte3; + h2c_parameter[3] = byte4; + h2c_parameter[4] = byte5; + + coex_dm->ps_tdma_para[0] = byte1; + coex_dm->ps_tdma_para[1] = byte2; + coex_dm->ps_tdma_para[2] = byte3; + coex_dm->ps_tdma_para[3] = byte4; + coex_dm->ps_tdma_para[4] = byte5; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], FW write 0x60(5bytes)=0x%x%08x\n", + h2c_parameter[0], + h2c_parameter[1] << 24 | h2c_parameter[2] << 16 | + h2c_parameter[3] << 8 | h2c_parameter[4]); + + btcoexist->btc_fill_h2c(btcoexist, 0x60, 5, h2c_parameter); +} + +static void btc8723b2ant_sw_mechanism1(struct btc_coexist *btcoexist, + bool shrink_rx_lpf, bool low_penalty_ra, + bool limited_dig, bool bt_lna_constrain) +{ + btc8723b2ant_rf_shrink(btcoexist, NORMAL_EXEC, shrink_rx_lpf); + btc8723b2ant_low_penalty_ra(btcoexist, NORMAL_EXEC, low_penalty_ra); +} + +static void btc8723b2ant_sw_mechanism2(struct btc_coexist *btcoexist, + bool agc_table_shift, bool adc_backoff, + bool sw_dac_swing, u32 dac_swing_lvl) +{ + btc8723b2ant_agc_table(btcoexist, NORMAL_EXEC, agc_table_shift); + btc8723b2ant_dac_swing(btcoexist, NORMAL_EXEC, sw_dac_swing, + dac_swing_lvl); +} + +static void btc8723b2ant_ps_tdma(struct btc_coexist *btcoexist, bool force_exec, + bool turn_on, u8 type) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s turn %s PS TDMA, type=%d\n", + (force_exec ? "force to" : ""), + (turn_on ? "ON" : "OFF"), type); + coex_dm->cur_ps_tdma_on = turn_on; + coex_dm->cur_ps_tdma = type; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], bPrePsTdmaOn = %d, bCurPsTdmaOn = %d!!\n", + coex_dm->pre_ps_tdma_on, coex_dm->cur_ps_tdma_on); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], prePsTdma = %d, curPsTdma = %d!!\n", + coex_dm->pre_ps_tdma, coex_dm->cur_ps_tdma); + + if ((coex_dm->pre_ps_tdma_on == coex_dm->cur_ps_tdma_on) && + (coex_dm->pre_ps_tdma == coex_dm->cur_ps_tdma)) + return; + } + if (turn_on) { + switch (type) { + case 1: + default: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x1a, + 0x1a, 0xe1, 0x90); + break; + case 2: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x12, + 0x12, 0xe1, 0x90); + break; + case 3: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x1c, + 0x3, 0xf1, 0x90); + break; + case 4: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x10, + 0x03, 0xf1, 0x90); + break; + case 5: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x1a, + 0x1a, 0x60, 0x90); + break; + case 6: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x12, + 0x12, 0x60, 0x90); + break; + case 7: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x1c, + 0x3, 0x70, 0x90); + break; + case 8: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xa3, 0x10, + 0x3, 0x70, 0x90); + break; + case 9: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x1a, + 0x1a, 0xe1, 0x90); + break; + case 10: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x12, + 0x12, 0xe1, 0x90); + break; + case 11: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0xa, + 0xa, 0xe1, 0x90); + break; + case 12: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x5, + 0x5, 0xe1, 0x90); + break; + case 13: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x1a, + 0x1a, 0x60, 0x90); + break; + case 14: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x12, + 0x12, 0x60, 0x90); + break; + case 15: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0xa, + 0xa, 0x60, 0x90); + break; + case 16: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x5, + 0x5, 0x60, 0x90); + break; + case 17: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xa3, 0x2f, + 0x2f, 0x60, 0x90); + break; + case 18: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x5, + 0x5, 0xe1, 0x90); + break; + case 19: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x25, + 0x25, 0xe1, 0x90); + break; + case 20: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x25, + 0x25, 0x60, 0x90); + break; + case 21: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x15, + 0x03, 0x70, 0x90); + break; + case 71: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x1a, + 0x1a, 0xe1, 0x90); + break; + } + } else { + /* disable PS tdma */ + switch (type) { + case 0: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0x0, 0x0, 0x0, + 0x40, 0x0); + break; + case 1: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0x0, 0x0, 0x0, + 0x48, 0x0); + break; + default: + btc8723b2ant_set_fw_ps_tdma(btcoexist, 0x0, 0x0, 0x0, + 0x40, 0x0); + break; + } + } + + /* update pre state */ + coex_dm->pre_ps_tdma_on = coex_dm->cur_ps_tdma_on; + coex_dm->pre_ps_tdma = coex_dm->cur_ps_tdma; +} + +static void btc8723b2ant_coex_alloff(struct btc_coexist *btcoexist) +{ + /* fw all off */ + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 1); + btc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + /* sw all off */ + btc8723b2ant_sw_mechanism1(btcoexist, false, false, false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, false, 0x18); + + /* hw all off */ + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 0); +} + +static void btc8723b2ant_init_coex_dm(struct btc_coexist *btcoexist) +{ + /* force to reset coex mechanism*/ + + btc8723b2ant_ps_tdma(btcoexist, FORCE_EXEC, false, 1); + btc8723b2ant_fw_dac_swing_lvl(btcoexist, FORCE_EXEC, 6); + btc8723b2ant_dec_bt_pwr(btcoexist, FORCE_EXEC, false); + + btc8723b2ant_sw_mechanism1(btcoexist, false, false, false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, false, 0x18); +} + +static void btc8723b2ant_action_bt_inquiry(struct btc_coexist *btcoexist) +{ + bool wifi_connected = false; + bool low_pwr_disable = true; + + btcoexist->btc_set(btcoexist, BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + + if (wifi_connected) { + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 7); + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 3); + } else { + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 0); + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 1); + } + btc8723b2ant_fw_dac_swing_lvl(btcoexist, FORCE_EXEC, 6); + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btc8723b2ant_sw_mechanism1(btcoexist, false, false, false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, false, 0x18); + + coex_dm->need_recover_0x948 = true; + coex_dm->backup_0x948 = btcoexist->btc_read_2byte(btcoexist, 0x948); + + btcoexist->btc_write_2byte(btcoexist, 0x948, 0x280); +} + +static bool btc8723b2ant_is_common_action(struct btc_coexist *btcoexist) +{ + bool common = false, wifi_connected = false; + bool wifi_busy = false; + bool bt_hs_on = false, low_pwr_disable = false; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + + if (!wifi_connected) { + low_pwr_disable = false; + btcoexist->btc_set(btcoexist, BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi non-connected idle!!\n"); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, + 0x0); + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 0); + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 1); + btc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btc8723b2ant_sw_mechanism1(btcoexist, false, false, false, + false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, false, + 0x18); + + common = true; + } else { + if (BT_8723B_2ANT_BT_STATUS_NON_CONNECTED_IDLE == + coex_dm->bt_status) { + low_pwr_disable = false; + btcoexist->btc_set(btcoexist, + BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi connected + " + "BT non connected-idle!!\n"); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, + 0xfffff, 0x0); + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 0); + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 1); + btc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, + 0xb); + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, + false); + + btc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + + common = true; + } else if (BT_8723B_2ANT_BT_STATUS_CONNECTED_IDLE == + coex_dm->bt_status) { + low_pwr_disable = true; + btcoexist->btc_set(btcoexist, + BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + + if (bt_hs_on) + return false; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi connected + " + "BT connected-idle!!\n"); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, + 0xfffff, 0x0); + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 0); + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 1); + btc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, + 0xb); + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, + false); + + btc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + + common = true; + } else { + low_pwr_disable = true; + btcoexist->btc_set(btcoexist, + BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + + if (wifi_busy) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi Connected-Busy + " + "BT Busy!!\n"); + common = false; + } else { + if (bt_hs_on) + return false; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi Connected-Idle + " + "BT Busy!!\n"); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, + 0x1, 0xfffff, 0x0); + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, + 7); + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 21); + btc8723b2ant_fw_dac_swing_lvl(btcoexist, + NORMAL_EXEC, + 0xb); + if (btc8723b_need_dec_pwr(btcoexist)) + btc8723b2ant_dec_bt_pwr(btcoexist, + NORMAL_EXEC, + true); + else + btc8723b2ant_dec_bt_pwr(btcoexist, + NORMAL_EXEC, + false); + btc8723b2ant_sw_mechanism1(btcoexist, false, + false, false, + false); + btc8723b2ant_sw_mechanism2(btcoexist, false, + false, false, + 0x18); + common = true; + } + } + } + + return common; +} + +static void set_tdma_int1(struct btc_coexist *btcoexist, bool tx_pause, + s32 result) +{ + /* Set PS TDMA for max interval == 1 */ + if (tx_pause) { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 1\n"); + + if (coex_dm->cur_ps_tdma == 71) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 5); + coex_dm->tdma_adj_type = 5; + } else if (coex_dm->cur_ps_tdma == 1) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 5); + coex_dm->tdma_adj_type = 5; + } else if (coex_dm->cur_ps_tdma == 2) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 6); + coex_dm->tdma_adj_type = 6; + } else if (coex_dm->cur_ps_tdma == 3) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 7); + coex_dm->tdma_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 4) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 8); + coex_dm->tdma_adj_type = 8; + } else if (coex_dm->cur_ps_tdma == 9) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 13); + coex_dm->tdma_adj_type = 13; + } else if (coex_dm->cur_ps_tdma == 10) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 14); + coex_dm->tdma_adj_type = 14; + } else if (coex_dm->cur_ps_tdma == 11) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 15); + coex_dm->tdma_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 12) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 16); + coex_dm->tdma_adj_type = 16; + } + + if (result == -1) { + if (coex_dm->cur_ps_tdma == 5) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 6); + coex_dm->tdma_adj_type = 6; + } else if (coex_dm->cur_ps_tdma == 6) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 7); + coex_dm->tdma_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 7) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 8); + coex_dm->tdma_adj_type = 8; + } else if (coex_dm->cur_ps_tdma == 13) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 14); + coex_dm->tdma_adj_type = 14; + } else if (coex_dm->cur_ps_tdma == 14) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 15); + coex_dm->tdma_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 15) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 16); + coex_dm->tdma_adj_type = 16; + } + } else if (result == 1) { + if (coex_dm->cur_ps_tdma == 8) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 7); + coex_dm->tdma_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 7) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 6); + coex_dm->tdma_adj_type = 6; + } else if (coex_dm->cur_ps_tdma == 6) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 5); + coex_dm->tdma_adj_type = 5; + } else if (coex_dm->cur_ps_tdma == 16) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 15); + coex_dm->tdma_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 15) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 14); + coex_dm->tdma_adj_type = 14; + } else if (coex_dm->cur_ps_tdma == 14) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 13); + coex_dm->tdma_adj_type = 13; + } + } + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 0\n"); + if (coex_dm->cur_ps_tdma == 5) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 71); + coex_dm->tdma_adj_type = 71; + } else if (coex_dm->cur_ps_tdma == 6) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 2); + coex_dm->tdma_adj_type = 2; + } else if (coex_dm->cur_ps_tdma == 7) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 3); + coex_dm->tdma_adj_type = 3; + } else if (coex_dm->cur_ps_tdma == 8) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 4); + coex_dm->tdma_adj_type = 4; + } else if (coex_dm->cur_ps_tdma == 13) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 9); + coex_dm->tdma_adj_type = 9; + } else if (coex_dm->cur_ps_tdma == 14) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 10); + coex_dm->tdma_adj_type = 10; + } else if (coex_dm->cur_ps_tdma == 15) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 11); + coex_dm->tdma_adj_type = 11; + } else if (coex_dm->cur_ps_tdma == 16) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 12); + coex_dm->tdma_adj_type = 12; + } + + if (result == -1) { + if (coex_dm->cur_ps_tdma == 71) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 1); + coex_dm->tdma_adj_type = 1; + } else if (coex_dm->cur_ps_tdma == 1) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 2); + coex_dm->tdma_adj_type = 2; + } else if (coex_dm->cur_ps_tdma == 2) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 3); + coex_dm->tdma_adj_type = 3; + } else if (coex_dm->cur_ps_tdma == 3) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 4); + coex_dm->tdma_adj_type = 4; + } else if (coex_dm->cur_ps_tdma == 9) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 10); + coex_dm->tdma_adj_type = 10; + } else if (coex_dm->cur_ps_tdma == 10) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 11); + coex_dm->tdma_adj_type = 11; + } else if (coex_dm->cur_ps_tdma == 11) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 12); + coex_dm->tdma_adj_type = 12; + } + } else if (result == 1) { + int tmp = coex_dm->cur_ps_tdma; + switch (tmp) { + case 4: + case 3: + case 2: + case 12: + case 11: + case 10: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, tmp - 1); + coex_dm->tdma_adj_type = tmp - 1; + break; + case 1: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 71); + coex_dm->tdma_adj_type = 71; + break; + } + } + } +} + +static void set_tdma_int2(struct btc_coexist *btcoexist, bool tx_pause, + s32 result) +{ + /* Set PS TDMA for max interval == 2 */ + if (tx_pause) { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 1\n"); + if (coex_dm->cur_ps_tdma == 1) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 6); + coex_dm->tdma_adj_type = 6; + } else if (coex_dm->cur_ps_tdma == 2) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 6); + coex_dm->tdma_adj_type = 6; + } else if (coex_dm->cur_ps_tdma == 3) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 7); + coex_dm->tdma_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 4) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 8); + coex_dm->tdma_adj_type = 8; + } else if (coex_dm->cur_ps_tdma == 9) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 14); + coex_dm->tdma_adj_type = 14; + } else if (coex_dm->cur_ps_tdma == 10) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 14); + coex_dm->tdma_adj_type = 14; + } else if (coex_dm->cur_ps_tdma == 11) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 15); + coex_dm->tdma_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 12) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 16); + coex_dm->tdma_adj_type = 16; + } + if (result == -1) { + if (coex_dm->cur_ps_tdma == 5) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 6); + coex_dm->tdma_adj_type = 6; + } else if (coex_dm->cur_ps_tdma == 6) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 7); + coex_dm->tdma_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 7) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 8); + coex_dm->tdma_adj_type = 8; + } else if (coex_dm->cur_ps_tdma == 13) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 14); + coex_dm->tdma_adj_type = 14; + } else if (coex_dm->cur_ps_tdma == 14) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 15); + coex_dm->tdma_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 15) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 16); + coex_dm->tdma_adj_type = 16; + } + } else if (result == 1) { + if (coex_dm->cur_ps_tdma == 8) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 7); + coex_dm->tdma_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 7) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 6); + coex_dm->tdma_adj_type = 6; + } else if (coex_dm->cur_ps_tdma == 6) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 6); + coex_dm->tdma_adj_type = 6; + } else if (coex_dm->cur_ps_tdma == 16) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 15); + coex_dm->tdma_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 15) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 14); + coex_dm->tdma_adj_type = 14; + } else if (coex_dm->cur_ps_tdma == 14) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 14); + coex_dm->tdma_adj_type = 14; + } + } + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 0\n"); + if (coex_dm->cur_ps_tdma == 5) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 2); + coex_dm->tdma_adj_type = 2; + } else if (coex_dm->cur_ps_tdma == 6) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 2); + coex_dm->tdma_adj_type = 2; + } else if (coex_dm->cur_ps_tdma == 7) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 3); + coex_dm->tdma_adj_type = 3; + } else if (coex_dm->cur_ps_tdma == 8) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 4); + coex_dm->tdma_adj_type = 4; + } else if (coex_dm->cur_ps_tdma == 13) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 10); + coex_dm->tdma_adj_type = 10; + } else if (coex_dm->cur_ps_tdma == 14) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 10); + coex_dm->tdma_adj_type = 10; + } else if (coex_dm->cur_ps_tdma == 15) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 11); + coex_dm->tdma_adj_type = 11; + } else if (coex_dm->cur_ps_tdma == 16) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 12); + coex_dm->tdma_adj_type = 12; + } + if (result == -1) { + if (coex_dm->cur_ps_tdma == 1) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 2); + coex_dm->tdma_adj_type = 2; + } else if (coex_dm->cur_ps_tdma == 2) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 3); + coex_dm->tdma_adj_type = 3; + } else if (coex_dm->cur_ps_tdma == 3) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 4); + coex_dm->tdma_adj_type = 4; + } else if (coex_dm->cur_ps_tdma == 9) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 10); + coex_dm->tdma_adj_type = 10; + } else if (coex_dm->cur_ps_tdma == 10) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 11); + coex_dm->tdma_adj_type = 11; + } else if (coex_dm->cur_ps_tdma == 11) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 12); + coex_dm->tdma_adj_type = 12; + } + } else if (result == 1) { + if (coex_dm->cur_ps_tdma == 4) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 3); + coex_dm->tdma_adj_type = 3; + } else if (coex_dm->cur_ps_tdma == 3) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 2); + coex_dm->tdma_adj_type = 2; + } else if (coex_dm->cur_ps_tdma == 2) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 2); + coex_dm->tdma_adj_type = 2; + } else if (coex_dm->cur_ps_tdma == 12) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 11); + coex_dm->tdma_adj_type = 11; + } else if (coex_dm->cur_ps_tdma == 11) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 10); + coex_dm->tdma_adj_type = 10; + } else if (coex_dm->cur_ps_tdma == 10) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 10); + coex_dm->tdma_adj_type = 10; + } + } + } +} + +static void set_tdma_int3(struct btc_coexist *btcoexist, bool tx_pause, + s32 result) +{ + /* Set PS TDMA for max interval == 3 */ + if (tx_pause) { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 1\n"); + if (coex_dm->cur_ps_tdma == 1) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 7); + coex_dm->tdma_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 2) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 7); + coex_dm->tdma_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 3) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 7); + coex_dm->tdma_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 4) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 8); + coex_dm->tdma_adj_type = 8; + } else if (coex_dm->cur_ps_tdma == 9) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 15); + coex_dm->tdma_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 10) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 15); + coex_dm->tdma_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 11) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 15); + coex_dm->tdma_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 12) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 16); + coex_dm->tdma_adj_type = 16; + } + if (result == -1) { + if (coex_dm->cur_ps_tdma == 5) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 7); + coex_dm->tdma_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 6) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 7); + coex_dm->tdma_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 7) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 8); + coex_dm->tdma_adj_type = 8; + } else if (coex_dm->cur_ps_tdma == 13) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 15); + coex_dm->tdma_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 14) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 15); + coex_dm->tdma_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 15) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 16); + coex_dm->tdma_adj_type = 16; + } + } else if (result == 1) { + if (coex_dm->cur_ps_tdma == 8) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 7); + coex_dm->tdma_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 7) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 7); + coex_dm->tdma_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 6) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 7); + coex_dm->tdma_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 16) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 15); + coex_dm->tdma_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 15) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 15); + coex_dm->tdma_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 14) { + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 15); + coex_dm->tdma_adj_type = 15; + } + } + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 0\n"); + switch (coex_dm->cur_ps_tdma) { + case 5: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 3); + coex_dm->tdma_adj_type = 3; + break; + case 6: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 3); + coex_dm->tdma_adj_type = 3; + break; + case 7: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 3); + coex_dm->tdma_adj_type = 3; + break; + case 8: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 4); + coex_dm->tdma_adj_type = 4; + break; + case 13: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 11); + coex_dm->tdma_adj_type = 11; + break; + case 14: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 11); + coex_dm->tdma_adj_type = 11; + break; + case 15: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 11); + coex_dm->tdma_adj_type = 11; + break; + case 16: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 12); + coex_dm->tdma_adj_type = 12; + break; + } + if (result == -1) { + switch (coex_dm->cur_ps_tdma) { + case 1: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 3); + coex_dm->tdma_adj_type = 3; + break; + case 2: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 3); + coex_dm->tdma_adj_type = 3; + break; + case 3: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 4); + coex_dm->tdma_adj_type = 4; + break; + case 9: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 11); + coex_dm->tdma_adj_type = 11; + break; + case 10: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 11); + coex_dm->tdma_adj_type = 11; + break; + case 11: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 12); + coex_dm->tdma_adj_type = 12; + break; + } + } else if (result == 1) { + switch (coex_dm->cur_ps_tdma) { + case 4: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 3); + coex_dm->tdma_adj_type = 3; + break; + case 3: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 3); + coex_dm->tdma_adj_type = 3; + break; + case 2: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 3); + coex_dm->tdma_adj_type = 3; + break; + case 12: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 11); + coex_dm->tdma_adj_type = 11; + break; + case 11: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 11); + coex_dm->tdma_adj_type = 11; + break; + case 10: + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 11); + coex_dm->tdma_adj_type = 11; + } + } + } +} + +static void btc8723b2ant_tdma_duration_adjust(struct btc_coexist *btcoexist, + bool sco_hid, bool tx_pause, + u8 max_interval) +{ + static s32 up, dn, m, n, wait_count; + /*0: no change, +1: increase WiFi duration, -1: decrease WiFi duration*/ + s32 result; + u8 retry_count = 0; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], TdmaDurationAdjust()\n"); + + if (!coex_dm->auto_tdma_adjust) { + coex_dm->auto_tdma_adjust = true; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], first run TdmaDurationAdjust()!!\n"); + if (sco_hid) { + if (tx_pause) { + if (max_interval == 1) { + btc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 13); + coex_dm->tdma_adj_type = 13; + } else if (max_interval == 2) { + btc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->tdma_adj_type = 14; + } else if (max_interval == 3) { + btc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->tdma_adj_type = 15; + } else { + btc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->tdma_adj_type = 15; + } + } else { + if (max_interval == 1) { + btc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 9); + coex_dm->tdma_adj_type = 9; + } else if (max_interval == 2) { + btc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->tdma_adj_type = 10; + } else if (max_interval == 3) { + btc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->tdma_adj_type = 11; + } else { + btc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->tdma_adj_type = 11; + } + } + } else { + if (tx_pause) { + if (max_interval == 1) { + btc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 5); + coex_dm->tdma_adj_type = 5; + } else if (max_interval == 2) { + btc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->tdma_adj_type = 6; + } else if (max_interval == 3) { + btc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->tdma_adj_type = 7; + } else { + btc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->tdma_adj_type = 7; + } + } else { + if (max_interval == 1) { + btc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 1); + coex_dm->tdma_adj_type = 1; + } else if (max_interval == 2) { + btc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->tdma_adj_type = 2; + } else if (max_interval == 3) { + btc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->tdma_adj_type = 3; + } else { + btc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->tdma_adj_type = 3; + } + } + } + + up = 0; + dn = 0; + m = 1; + n = 3; + result = 0; + wait_count = 0; + } else { + /*accquire the BT TRx retry count from BT_Info byte2*/ + retry_count = coex_sta->bt_retry_cnt; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], retry_count = %d\n", retry_count); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], up=%d, dn=%d, m=%d, n=%d, wait_count=%d\n", + up, dn, m, n, wait_count); + result = 0; + wait_count++; + /* no retry in the last 2-second duration*/ + if (retry_count == 0) { + up++; + dn--; + + if (dn <= 0) + dn = 0; + + if (up >= n) { + wait_count = 0; + n = 3; + up = 0; + dn = 0; + result = 1; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], Increase wifi " + "duration!!\n"); + } /* <=3 retry in the last 2-second duration*/ + } else if (retry_count <= 3) { + up--; + dn++; + + if (up <= 0) + up = 0; + + if (dn == 2) { + if (wait_count <= 2) + m++; + else + m = 1; + + if (m >= 20) + m = 20; + + n = 3 * m; + up = 0; + dn = 0; + wait_count = 0; + result = -1; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], Decrease wifi duration " + "for retry_counter<3!!\n"); + } + } else { + if (wait_count == 1) + m++; + else + m = 1; + + if (m >= 20) + m = 20; + + n = 3 * m; + up = 0; + dn = 0; + wait_count = 0; + result = -1; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], Decrease wifi duration " + "for retry_counter>3!!\n"); + } + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], max Interval = %d\n", max_interval); + if (max_interval == 1) + set_tdma_int1(btcoexist, tx_pause, result); + else if (max_interval == 2) + set_tdma_int2(btcoexist, tx_pause, result); + else if (max_interval == 3) + set_tdma_int3(btcoexist, tx_pause, result); + } + + /*if current PsTdma not match with the recorded one (when scan, dhcp..), + *then we have to adjust it back to the previous recorded one. + */ + if (coex_dm->cur_ps_tdma != coex_dm->tdma_adj_type) { + bool scan = false, link = false, roam = false; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], PsTdma type dismatch!!!, " + "curPsTdma=%d, recordPsTdma=%d\n", + coex_dm->cur_ps_tdma, coex_dm->tdma_adj_type); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_SCAN, &scan); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_LINK, &link); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_ROAM, &roam); + + if (!scan && !link && !roam) + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, + coex_dm->tdma_adj_type); + else + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], roaming/link/scan is under" + " progress, will adjust next time!!!\n"); + } +} + +/* SCO only or SCO+PAN(HS) */ +static void btc8723b2ant_action_sco(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = btc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + btc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 4); + + if (btc8723b_need_dec_pwr(btcoexist)) + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + /*for SCO quality at 11b/g mode*/ + if (BTC_WIFI_BW_LEGACY == wifi_bw) + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 2); + else /*for SCO quality & wifi performance balance at 11n mode*/ + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 8); + + /*for voice quality */ + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 0); + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + true, 0x4); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + true, 0x4); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + true, 0x4); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + true, 0x4); + } + } +} + +static void btc8723b2ant_action_hid(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = btc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + bt_rssi_state = btc8723b2ant_bt_rssi_state(2, 35, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + btc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (btc8723b_need_dec_pwr(btcoexist)) + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if (BTC_WIFI_BW_LEGACY == wifi_bw) /*/for HID at 11b/g mode*/ + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 7); + else /*for HID quality & wifi performance balance at 11n mode*/ + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 9); + + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 9); + else + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 13); + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +/*A2DP only / PAN(EDR) only/ A2DP+PAN(HS)*/ +static void btc8723b2ant_action_a2dp(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = btc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + bt_rssi_state = btc8723b2ant_bt_rssi_state(2, 35, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + btc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (btc8723b_need_dec_pwr(btcoexist)) + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 7); + + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) + btc8723b2ant_tdma_duration_adjust(btcoexist, false, + false, 1); + else + btc8723b2ant_tdma_duration_adjust(btcoexist, false, true, 1); + + /* sw mechanism */ + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +static void btc8723b2ant_action_a2dp_pan_hs(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = btc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + btc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (btc8723b_need_dec_pwr(btcoexist)) + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 7); + + btc8723b2ant_tdma_duration_adjust(btcoexist, false, true, 2); + + /* sw mechanism */ + btcoexist->btc_get(btcoexist, + BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +static void btc8723b2ant_action_pan_edr(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = btc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + bt_rssi_state = btc8723b2ant_bt_rssi_state(2, 35, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + btc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (btc8723b_need_dec_pwr(btcoexist)) + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 10); + + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 1); + else + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 5); + + /* sw mechanism */ + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +/*PAN(HS) only*/ +static void btc8723b2ant_action_pan_hs(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = btc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + btc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 7); + + btc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 1); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +/*PAN(EDR)+A2DP*/ +static void btc8723b2ant_action_pan_edr_a2dp(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = btc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + bt_rssi_state = btc8723b2ant_bt_rssi_state(2, 35, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + btc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (btc8723b_need_dec_pwr(btcoexist)) + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 12); + if (BTC_WIFI_BW_HT40 == wifi_bw) + btc8723b2ant_tdma_duration_adjust(btcoexist, false, + true, 3); + else + btc8723b2ant_tdma_duration_adjust(btcoexist, false, + false, 3); + } else { + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 7); + btc8723b2ant_tdma_duration_adjust(btcoexist, false, true, 3); + } + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +static void btc8723b2ant_action_pan_edr_hid(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = btc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + bt_rssi_state = btc8723b2ant_bt_rssi_state(2, 35, 0); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if (btc8723b_need_dec_pwr(btcoexist)) + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + if (BTC_WIFI_BW_HT40 == wifi_bw) { + btc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, + 3); + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 11); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, + 0xfffff, 0x780); + } else { + btc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, + 6); + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 7); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, + 0xfffff, 0x0); + } + btc8723b2ant_tdma_duration_adjust(btcoexist, true, false, 2); + } else { + btc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 11); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, + 0x0); + btc8723b2ant_tdma_duration_adjust(btcoexist, true, true, 2); + } + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +/* HID+A2DP+PAN(EDR) */ +static void btc8723b2ant_action_hid_a2dp_pan_edr(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = btc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + bt_rssi_state = btc8723b2ant_bt_rssi_state(2, 35, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + btc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (btc8723b_need_dec_pwr(btcoexist)) + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 7); + + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + if (BTC_WIFI_BW_HT40 == wifi_bw) + btc8723b2ant_tdma_duration_adjust(btcoexist, true, + true, 2); + else + btc8723b2ant_tdma_duration_adjust(btcoexist, true, + false, 3); + } else { + btc8723b2ant_tdma_duration_adjust(btcoexist, true, true, 3); + } + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +static void btc8723b2ant_action_hid_a2dp(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = btc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + bt_rssi_state = btc8723b2ant_bt_rssi_state(2, 35, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + btc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (btc8723b_need_dec_pwr(btcoexist)) + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + btc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + btc8723b_coex_tbl_type(btcoexist, NORMAL_EXEC, 7); + + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) + btc8723b2ant_tdma_duration_adjust(btcoexist, true, false, 2); + else + btc8723b2ant_tdma_duration_adjust(btcoexist, true, true, 2); + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + btc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + btc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + btc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +static void btc8723b2ant_run_coexist_mechanism(struct btc_coexist *btcoexist) +{ + u8 algorithm = 0; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], RunCoexistMechanism()===>\n"); + + if (btcoexist->manual_control) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], RunCoexistMechanism(), " + "return for Manual CTRL <===\n"); + return; + } + + if (coex_sta->under_ips) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], wifi is under IPS !!!\n"); + return; + } + + algorithm = btc8723b2ant_action_algorithm(btcoexist); + if (coex_sta->c2h_bt_inquiry_page && + (BT_8723B_2ANT_COEX_ALGO_PANHS != algorithm)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT is under inquiry/page scan !!\n"); + btc8723b2ant_action_bt_inquiry(btcoexist); + return; + } else { + if (coex_dm->need_recover_0x948) { + coex_dm->need_recover_0x948 = false; + btcoexist->btc_write_2byte(btcoexist, 0x948, + coex_dm->backup_0x948); + } + } + + coex_dm->cur_algorithm = algorithm; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, "[BTCoex], Algorithm = %d\n", + coex_dm->cur_algorithm); + + if (btc8723b2ant_is_common_action(btcoexist)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant common.\n"); + coex_dm->auto_tdma_adjust = false; + } else { + if (coex_dm->cur_algorithm != coex_dm->pre_algorithm) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], preAlgorithm=%d, " + "curAlgorithm=%d\n", coex_dm->pre_algorithm, + coex_dm->cur_algorithm); + coex_dm->auto_tdma_adjust = false; + } + switch (coex_dm->cur_algorithm) { + case BT_8723B_2ANT_COEX_ALGO_SCO: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, algorithm = SCO.\n"); + btc8723b2ant_action_sco(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_HID: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, algorithm = HID.\n"); + btc8723b2ant_action_hid(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = A2DP.\n"); + btc8723b2ant_action_a2dp(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_A2DP_PANHS: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = A2DP+PAN(HS).\n"); + btc8723b2ant_action_a2dp_pan_hs(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_PANEDR: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = PAN(EDR).\n"); + btc8723b2ant_action_pan_edr(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_PANHS: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = HS mode.\n"); + btc8723b2ant_action_pan_hs(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_PANEDR_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = PAN+A2DP.\n"); + btc8723b2ant_action_pan_edr_a2dp(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_PANEDR_HID: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = PAN(EDR)+HID.\n"); + btc8723b2ant_action_pan_edr_hid(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_HID_A2DP_PANEDR: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = HID+A2DP+PAN.\n"); + btc8723b2ant_action_hid_a2dp_pan_edr(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_HID_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = HID+A2DP.\n"); + btc8723b2ant_action_hid_a2dp(btcoexist); + break; + default: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = coexist All Off!!\n"); + btc8723b2ant_coex_alloff(btcoexist); + break; + } + coex_dm->pre_algorithm = coex_dm->cur_algorithm; + } +} + + + +/********************************************************************* + * work around function start with wa_btc8723b2ant_ + *********************************************************************/ +/********************************************************************* + * extern function start with EXbtc8723b2ant_ + *********************************************************************/ +void ex_halbtc8723b2ant_init_hwconfig(struct btc_coexist *btcoexist) +{ + struct btc_board_info *board_info = &btcoexist->board_info; + u32 u32tmp = 0, fw_ver; + u8 u8tmp = 0; + u8 h2c_parameter[2] = {0}; + + + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], 2Ant Init HW Config!!\n"); + + /* backup rf 0x1e value */ + coex_dm->bt_rf0x1e_backup = btcoexist->btc_get_rf_reg(btcoexist, + BTC_RF_A, 0x1e, + 0xfffff); + + /* 0x4c[23]=0, 0x4c[24]=1 Antenna control by WL/BT */ + u32tmp = btcoexist->btc_read_4byte(btcoexist, 0x4c); + u32tmp &= ~BIT23; + u32tmp |= BIT24; + btcoexist->btc_write_4byte(btcoexist, 0x4c, u32tmp); + + btcoexist->btc_write_1byte(btcoexist, 0x974, 0xff); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x944, 0x3, 0x3); + btcoexist->btc_write_1byte(btcoexist, 0x930, 0x77); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x67, 0x20, 0x1); + + /* Antenna switch control parameter */ + /* btcoexist->btc_write_4byte(btcoexist, 0x858, 0x55555555);*/ + + /*Force GNT_BT to low*/ + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x765, 0x18, 0x0); + btcoexist->btc_write_2byte(btcoexist, 0x948, 0x0); + + /* 0x790[5:0]=0x5 */ + u8tmp = btcoexist->btc_read_1byte(btcoexist, 0x790); + u8tmp &= 0xc0; + u8tmp |= 0x5; + btcoexist->btc_write_1byte(btcoexist, 0x790, u8tmp); + + + /*Antenna config */ + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_FW_VER, &fw_ver); + + /*ext switch for fw ver < 0xc */ + if (fw_ver < 0xc00) { + if (board_info->btdm_ant_pos == BTC_ANTENNA_AT_MAIN_PORT) { + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x92c, + 0x3, 0x1); + /*Main Ant to BT for IPS case 0x4c[23]=1*/ + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x64, 0x1, + 0x1); + + /*tell firmware "no antenna inverse"*/ + h2c_parameter[0] = 0; + h2c_parameter[1] = 1; /* ext switch type */ + btcoexist->btc_fill_h2c(btcoexist, 0x65, 2, + h2c_parameter); + } else { + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x92c, + 0x3, 0x2); + /*Aux Ant to BT for IPS case 0x4c[23]=1*/ + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x64, 0x1, + 0x0); + + /*tell firmware "antenna inverse"*/ + h2c_parameter[0] = 1; + h2c_parameter[1] = 1; /*ext switch type*/ + btcoexist->btc_fill_h2c(btcoexist, 0x65, 2, + h2c_parameter); + } + } else { + /*ext switch always at s1 (if exist) */ + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x92c, 0x3, 0x1); + /*Main Ant to BT for IPS case 0x4c[23]=1*/ + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x64, 0x1, 0x1); + + if (board_info->btdm_ant_pos == BTC_ANTENNA_AT_MAIN_PORT) { + /*tell firmware "no antenna inverse"*/ + h2c_parameter[0] = 0; + h2c_parameter[1] = 0; /*ext switch type*/ + btcoexist->btc_fill_h2c(btcoexist, 0x65, 2, + h2c_parameter); + } else { + /*tell firmware "antenna inverse"*/ + h2c_parameter[0] = 1; + h2c_parameter[1] = 0; /*ext switch type*/ + btcoexist->btc_fill_h2c(btcoexist, 0x65, 2, + h2c_parameter); + } + } + + /* PTA parameter */ + btc8723b_coex_tbl_type(btcoexist, FORCE_EXEC, 0); + + /* Enable counter statistics */ + /*0x76e[3] =1, WLAN_Act control by PTA*/ + btcoexist->btc_write_1byte(btcoexist, 0x76e, 0xc); + btcoexist->btc_write_1byte(btcoexist, 0x778, 0x3); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x40, 0x20, 0x1); +} + +void ex_halbtc8723b2ant_init_coex_dm(struct btc_coexist *btcoexist) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], Coex Mechanism Init!!\n"); + btc8723b2ant_init_coex_dm(btcoexist); +} + +void ex_halbtc8723b2ant_display_coex_info(struct btc_coexist *btcoexist) +{ + struct btc_board_info *board_info = &btcoexist->board_info; + struct btc_stack_info *stack_info = &btcoexist->stack_info; + struct btc_bt_link_info *bt_link_info = &btcoexist->bt_link_info; + u8 *cli_buf = btcoexist->cli_buf; + u8 u8tmp[4], i, bt_info_ext, ps_tdma_case = 0; + u32 u32tmp[4]; + bool roam = false, scan = false; + bool link = false, wifi_under_5g = false; + bool bt_hs_on = false, wifi_busy = false; + s32 wifi_rssi = 0, bt_hs_rssi = 0; + u32 wifi_bw, wifi_traffic_dir, fa_ofdm, fa_cck; + u8 wifi_dot11_chnl, wifi_hs_chnl; + u32 fw_ver = 0, bt_patch_ver = 0; + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n ============[BT Coexist info]============"); + CL_PRINTF(cli_buf); + + if (btcoexist->manual_control) { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n ==========[Under Manual Control]============"); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n =========================================="); + CL_PRINTF(cli_buf); + } + + if (!board_info->bt_exist) { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n BT not exists !!!"); + CL_PRINTF(cli_buf); + return; + } + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d ", + "Ant PG number/ Ant mechanism:", + board_info->pg_ant_num, board_info->btdm_ant_num); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %d", + "BT stack/ hci ext ver", + ((stack_info->profile_notified) ? "Yes" : "No"), + stack_info->hci_version); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_BT_PATCH_VER, &bt_patch_ver); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_FW_VER, &fw_ver); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = %d_%x/ 0x%x/ 0x%x(%d)", + "CoexVer/ FwVer/ PatchVer", + glcoex_ver_date_8723b_2ant, glcoex_ver_8723b_2ant, + fw_ver, bt_patch_ver, bt_patch_ver); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + btcoexist->btc_get(btcoexist, BTC_GET_U1_WIFI_DOT11_CHNL, + &wifi_dot11_chnl); + btcoexist->btc_get(btcoexist, BTC_GET_U1_WIFI_HS_CHNL, &wifi_hs_chnl); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d / %d(%d)", + "Dot11 channel / HsChnl(HsMode)", + wifi_dot11_chnl, wifi_hs_chnl, bt_hs_on); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x ", + "H2C Wifi inform bt chnl Info", coex_dm->wifi_chnl_info[0], + coex_dm->wifi_chnl_info[1], coex_dm->wifi_chnl_info[2]); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_S4_WIFI_RSSI, &wifi_rssi); + btcoexist->btc_get(btcoexist, BTC_GET_S4_HS_RSSI, &bt_hs_rssi); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", + "Wifi rssi/ HS rssi", wifi_rssi, bt_hs_rssi); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_SCAN, &scan); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_LINK, &link); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_ROAM, &roam); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d ", + "Wifi link/ roam/ scan", link, roam, scan); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_UNDER_5G, &wifi_under_5g); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_TRAFFIC_DIRECTION, + &wifi_traffic_dir); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %s/ %s ", + "Wifi status", (wifi_under_5g ? "5G" : "2.4G"), + ((BTC_WIFI_BW_LEGACY == wifi_bw) ? "Legacy" : + (((BTC_WIFI_BW_HT40 == wifi_bw) ? "HT40" : "HT20"))), + ((!wifi_busy) ? "idle" : + ((BTC_WIFI_TRAFFIC_TX == wifi_traffic_dir) ? + "uplink" : "downlink"))); + CL_PRINTF(cli_buf); + + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d / %d / %d / %d", + "SCO/HID/PAN/A2DP", + bt_link_info->sco_exist, bt_link_info->hid_exist, + bt_link_info->pan_exist, bt_link_info->a2dp_exist); + CL_PRINTF(cli_buf); + btcoexist->btc_disp_dbg_msg(btcoexist, BTC_DBG_DISP_BT_LINK_INFO); + + bt_info_ext = coex_sta->bt_info_ext; + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s", + "BT Info A2DP rate", + (bt_info_ext&BIT0) ? "Basic rate" : "EDR rate"); + CL_PRINTF(cli_buf); + + for (i = 0; i < BT_INFO_SRC_8723B_2ANT_MAX; i++) { + if (coex_sta->bt_info_c2h_cnt[i]) { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = %02x %02x %02x " + "%02x %02x %02x %02x(%d)", + glbt_info_src_8723b_2ant[i], + coex_sta->bt_info_c2h[i][0], + coex_sta->bt_info_c2h[i][1], + coex_sta->bt_info_c2h[i][2], + coex_sta->bt_info_c2h[i][3], + coex_sta->bt_info_c2h[i][4], + coex_sta->bt_info_c2h[i][5], + coex_sta->bt_info_c2h[i][6], + coex_sta->bt_info_c2h_cnt[i]); + CL_PRINTF(cli_buf); + } + } + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s/%s", + "PS state, IPS/LPS", + ((coex_sta->under_ips ? "IPS ON" : "IPS OFF")), + ((coex_sta->under_lps ? "LPS ON" : "LPS OFF"))); + CL_PRINTF(cli_buf); + btcoexist->btc_disp_dbg_msg(btcoexist, BTC_DBG_DISP_FW_PWR_MODE_CMD); + + /* Sw mechanism */ + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s", "============[Sw mechanism]============"); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d ", + "SM1[ShRf/ LpRA/ LimDig]", coex_dm->cur_rf_rx_lpf_shrink, + coex_dm->cur_low_penalty_ra, coex_dm->limited_dig); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d(0x%x) ", + "SM2[AgcT/ AdcB/ SwDacSwing(lvl)]", + coex_dm->cur_agc_table_en, coex_dm->cur_adc_back_off, + coex_dm->cur_dac_swing_on, coex_dm->cur_dac_swing_lvl); + CL_PRINTF(cli_buf); + + /* Fw mechanism */ + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s", + "============[Fw mechanism]============"); + CL_PRINTF(cli_buf); + + ps_tdma_case = coex_dm->cur_ps_tdma; + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = %02x %02x %02x %02x %02x case-%d (auto:%d)", + "PS TDMA", coex_dm->ps_tdma_para[0], + coex_dm->ps_tdma_para[1], coex_dm->ps_tdma_para[2], + coex_dm->ps_tdma_para[3], coex_dm->ps_tdma_para[4], + ps_tdma_case, coex_dm->auto_tdma_adjust); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d ", + "DecBtPwr/ IgnWlanAct", coex_dm->cur_dec_bt_pwr, + coex_dm->cur_ignore_wlan_act); + CL_PRINTF(cli_buf); + + /* Hw setting */ + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s", + "============[Hw setting]============"); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", + "RF-A, 0x1e initVal", coex_dm->bt_rf0x1e_backup); + CL_PRINTF(cli_buf); + + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x778); + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x880); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", + "0x778/0x880[29:25]", u8tmp[0], + (u32tmp[0]&0x3e000000) >> 25); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x948); + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x67); + u8tmp[1] = btcoexist->btc_read_1byte(btcoexist, 0x765); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", + "0x948/ 0x67[5] / 0x765", + u32tmp[0], ((u8tmp[0]&0x20) >> 5), u8tmp[1]); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x92c); + u32tmp[1] = btcoexist->btc_read_4byte(btcoexist, 0x930); + u32tmp[2] = btcoexist->btc_read_4byte(btcoexist, 0x944); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", + "0x92c[1:0]/ 0x930[7:0]/0x944[1:0]", + u32tmp[0]&0x3, u32tmp[1]&0xff, u32tmp[2]&0x3); + CL_PRINTF(cli_buf); + + + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x39); + u8tmp[1] = btcoexist->btc_read_1byte(btcoexist, 0x40); + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x4c); + u8tmp[2] = btcoexist->btc_read_1byte(btcoexist, 0x64); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = 0x%x/ 0x%x/ 0x%x/ 0x%x", + "0x38[11]/0x40/0x4c[24:23]/0x64[0]", + ((u8tmp[0] & 0x8)>>3), u8tmp[1], + ((u32tmp[0]&0x01800000)>>23), u8tmp[2]&0x1); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x550); + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x522); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", + "0x550(bcn ctrl)/0x522", u32tmp[0], u8tmp[0]); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0xc50); + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x49c); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", + "0xc50(dig)/0x49c(null-drop)", u32tmp[0]&0xff, u8tmp[0]); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0xda0); + u32tmp[1] = btcoexist->btc_read_4byte(btcoexist, 0xda4); + u32tmp[2] = btcoexist->btc_read_4byte(btcoexist, 0xda8); + u32tmp[3] = btcoexist->btc_read_4byte(btcoexist, 0xcf0); + + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0xa5b); + u8tmp[1] = btcoexist->btc_read_1byte(btcoexist, 0xa5c); + + fa_ofdm = ((u32tmp[0]&0xffff0000) >> 16) + + ((u32tmp[1]&0xffff0000) >> 16) + + (u32tmp[1] & 0xffff) + + (u32tmp[2] & 0xffff) + + ((u32tmp[3]&0xffff0000) >> 16) + + (u32tmp[3] & 0xffff); + fa_cck = (u8tmp[0] << 8) + u8tmp[1]; + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", + "OFDM-CCA/OFDM-FA/CCK-FA", + u32tmp[0]&0xffff, fa_ofdm, fa_cck); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x6c0); + u32tmp[1] = btcoexist->btc_read_4byte(btcoexist, 0x6c4); + u32tmp[2] = btcoexist->btc_read_4byte(btcoexist, 0x6c8); + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x6cc); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = 0x%x/ 0x%x/ 0x%x/ 0x%x", + "0x6c0/0x6c4/0x6c8/0x6cc(coexTable)", + u32tmp[0], u32tmp[1], u32tmp[2], u8tmp[0]); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", + "0x770(high-pri rx/tx)", + coex_sta->high_priority_rx, coex_sta->high_priority_tx); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", + "0x774(low-pri rx/tx)", coex_sta->low_priority_rx, + coex_sta->low_priority_tx); + CL_PRINTF(cli_buf); +#if (BT_AUTO_REPORT_ONLY_8723B_2ANT == 1) + btc8723b2ant_monitor_bt_ctr(btcoexist); +#endif + btcoexist->btc_disp_dbg_msg(btcoexist, + BTC_DBG_DISP_COEX_STATISTICS); +} + + +void ex_halbtc8723b2ant_ips_notify(struct btc_coexist *btcoexist, u8 type) +{ + if (BTC_IPS_ENTER == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], IPS ENTER notify\n"); + coex_sta->under_ips = true; + btc8723b2ant_coex_alloff(btcoexist); + } else if (BTC_IPS_LEAVE == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], IPS LEAVE notify\n"); + coex_sta->under_ips = false; + } +} + +void ex_halbtc8723b2ant_lps_notify(struct btc_coexist *btcoexist, u8 type) +{ + if (BTC_LPS_ENABLE == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], LPS ENABLE notify\n"); + coex_sta->under_lps = true; + } else if (BTC_LPS_DISABLE == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], LPS DISABLE notify\n"); + coex_sta->under_lps = false; + } +} + +void ex_halbtc8723b2ant_scan_notify(struct btc_coexist *btcoexist, u8 type) +{ + if (BTC_SCAN_START == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], SCAN START notify\n"); + else if (BTC_SCAN_FINISH == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], SCAN FINISH notify\n"); +} + +void ex_halbtc8723b2ant_connect_notify(struct btc_coexist *btcoexist, u8 type) +{ + if (BTC_ASSOCIATE_START == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], CONNECT START notify\n"); + else if (BTC_ASSOCIATE_FINISH == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], CONNECT FINISH notify\n"); +} + +void btc8723b_med_stat_notify(struct btc_coexist *btcoexist, + u8 type) +{ + u8 h2c_parameter[3] = {0}; + u32 wifi_bw; + u8 wifi_central_chnl; + + if (BTC_MEDIA_CONNECT == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], MEDIA connect notify\n"); + else + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], MEDIA disconnect notify\n"); + + /* only 2.4G we need to inform bt the chnl mask */ + btcoexist->btc_get(btcoexist, + BTC_GET_U1_WIFI_CENTRAL_CHNL, &wifi_central_chnl); + if ((BTC_MEDIA_CONNECT == type) && + (wifi_central_chnl <= 14)) { + h2c_parameter[0] = 0x1; + h2c_parameter[1] = wifi_central_chnl; + btcoexist->btc_get(btcoexist, + BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) + h2c_parameter[2] = 0x30; + else + h2c_parameter[2] = 0x20; + } + + coex_dm->wifi_chnl_info[0] = h2c_parameter[0]; + coex_dm->wifi_chnl_info[1] = h2c_parameter[1]; + coex_dm->wifi_chnl_info[2] = h2c_parameter[2]; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], FW write 0x66=0x%x\n", + h2c_parameter[0] << 16 | h2c_parameter[1] << 8 | + h2c_parameter[2]); + + btcoexist->btc_fill_h2c(btcoexist, 0x66, 3, h2c_parameter); +} + +void ex_halbtc8723b2ant_special_packet_notify(struct btc_coexist *btcoexist, + u8 type) +{ + if (type == BTC_PACKET_DHCP) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], DHCP Packet notify\n"); +} + +void ex_halbtc8723b2ant_bt_info_notify(struct btc_coexist *btcoexist, + u8 *tmpbuf, u8 length) +{ + u8 bt_info = 0; + u8 i, rsp_source = 0; + bool bt_busy = false, limited_dig = false; + bool wifi_connected = false; + + coex_sta->c2h_bt_info_req_sent = false; + + rsp_source = tmpbuf[0]&0xf; + if (rsp_source >= BT_INFO_SRC_8723B_2ANT_MAX) + rsp_source = BT_INFO_SRC_8723B_2ANT_WIFI_FW; + coex_sta->bt_info_c2h_cnt[rsp_source]++; + + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], Bt info[%d], length=%d, hex data=[", + rsp_source, length); + for (i = 0; i < length; i++) { + coex_sta->bt_info_c2h[rsp_source][i] = tmpbuf[i]; + if (i == 1) + bt_info = tmpbuf[i]; + if (i == length-1) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "0x%02x]\n", tmpbuf[i]); + else + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "0x%02x, ", tmpbuf[i]); + } + + if (btcoexist->manual_control) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), " + "return for Manual CTRL<===\n"); + return; + } + + if (BT_INFO_SRC_8723B_2ANT_WIFI_FW != rsp_source) { + coex_sta->bt_retry_cnt = /* [3:0]*/ + coex_sta->bt_info_c2h[rsp_source][2] & 0xf; + + coex_sta->bt_rssi = + coex_sta->bt_info_c2h[rsp_source][3] * 2 + 10; + + coex_sta->bt_info_ext = + coex_sta->bt_info_c2h[rsp_source][4]; + + /* Here we need to resend some wifi info to BT + * because bt is reset and loss of the info. + */ + if ((coex_sta->bt_info_ext & BIT1)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT ext info bit1 check," + " send wifi BW&Chnl to BT!!\n"); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + if (wifi_connected) + btc8723b_med_stat_notify(btcoexist, + BTC_MEDIA_CONNECT); + else + btc8723b_med_stat_notify(btcoexist, + BTC_MEDIA_DISCONNECT); + } + + if ((coex_sta->bt_info_ext & BIT3)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT ext info bit3 check, " + "set BT NOT to ignore Wlan active!!\n"); + btc8723b2ant_ignore_wlan_act(btcoexist, FORCE_EXEC, + false); + } else { + /* BT already NOT ignore Wlan active, do nothing here.*/ + } +#if (BT_AUTO_REPORT_ONLY_8723B_2ANT == 0) + if ((coex_sta->bt_info_ext & BIT4)) { + /* BT auto report already enabled, do nothing*/ + } else { + btc8723b2ant_bt_auto_report(btcoexist, FORCE_EXEC, + true); + } +#endif + } + + /* check BIT2 first ==> check if bt is under inquiry or page scan*/ + if (bt_info & BT_INFO_8723B_2ANT_B_INQ_PAGE) + coex_sta->c2h_bt_inquiry_page = true; + else + coex_sta->c2h_bt_inquiry_page = false; + + /* set link exist status*/ + if (!(bt_info & BT_INFO_8723B_2ANT_B_CONNECTION)) { + coex_sta->bt_link_exist = false; + coex_sta->pan_exist = false; + coex_sta->a2dp_exist = false; + coex_sta->hid_exist = false; + coex_sta->sco_exist = false; + } else { /* connection exists */ + coex_sta->bt_link_exist = true; + if (bt_info & BT_INFO_8723B_2ANT_B_FTP) + coex_sta->pan_exist = true; + else + coex_sta->pan_exist = false; + if (bt_info & BT_INFO_8723B_2ANT_B_A2DP) + coex_sta->a2dp_exist = true; + else + coex_sta->a2dp_exist = false; + if (bt_info & BT_INFO_8723B_2ANT_B_HID) + coex_sta->hid_exist = true; + else + coex_sta->hid_exist = false; + if (bt_info & BT_INFO_8723B_2ANT_B_SCO_ESCO) + coex_sta->sco_exist = true; + else + coex_sta->sco_exist = false; + } + + btc8723b2ant_update_bt_link_info(btcoexist); + + if (!(bt_info & BT_INFO_8723B_2ANT_B_CONNECTION)) { + coex_dm->bt_status = BT_8723B_2ANT_BT_STATUS_NON_CONNECTED_IDLE; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), " + "BT Non-Connected idle!!!\n"); + /* connection exists but no busy */ + } else if (bt_info == BT_INFO_8723B_2ANT_B_CONNECTION) { + coex_dm->bt_status = BT_8723B_2ANT_BT_STATUS_CONNECTED_IDLE; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), BT Connected-idle!!!\n"); + } else if ((bt_info & BT_INFO_8723B_2ANT_B_SCO_ESCO) || + (bt_info & BT_INFO_8723B_2ANT_B_SCO_BUSY)) { + coex_dm->bt_status = BT_8723B_2ANT_BT_STATUS_SCO_BUSY; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), BT SCO busy!!!\n"); + } else if (bt_info & BT_INFO_8723B_2ANT_B_ACL_BUSY) { + coex_dm->bt_status = BT_8723B_2ANT_BT_STATUS_ACL_BUSY; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), BT ACL busy!!!\n"); + } else { + coex_dm->bt_status = BT_8723B_2ANT_BT_STATUS_MAX; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), " + "BT Non-Defined state!!!\n"); + } + + if ((BT_8723B_2ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status) || + (BT_8723B_2ANT_BT_STATUS_SCO_BUSY == coex_dm->bt_status) || + (BT_8723B_2ANT_BT_STATUS_ACL_SCO_BUSY == coex_dm->bt_status)) { + bt_busy = true; + limited_dig = true; + } else { + bt_busy = false; + limited_dig = false; + } + + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_TRAFFIC_BUSY, &bt_busy); + + coex_dm->limited_dig = limited_dig; + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_LIMITED_DIG, &limited_dig); + + btc8723b2ant_run_coexist_mechanism(btcoexist); +} + +void ex_halbtc8723b2ant_stack_operation_notify(struct btc_coexist *btcoexist, + u8 type) +{ + if (BTC_STACK_OP_INQ_PAGE_PAIR_START == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex],StackOP Inquiry/page/pair start notify\n"); + else if (BTC_STACK_OP_INQ_PAGE_PAIR_FINISH == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex],StackOP Inquiry/page/pair finish notify\n"); +} + +void ex_halbtc8723b2ant_halt_notify(struct btc_coexist *btcoexist) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, "[BTCoex], Halt notify\n"); + + btc8723b2ant_ignore_wlan_act(btcoexist, FORCE_EXEC, true); + btc8723b_med_stat_notify(btcoexist, BTC_MEDIA_DISCONNECT); +} + +void ex_halbtc8723b2ant_periodical(struct btc_coexist *btcoexist) +{ + struct btc_board_info *board_info = &btcoexist->board_info; + struct btc_stack_info *stack_info = &btcoexist->stack_info; + static u8 dis_ver_info_cnt; + u32 fw_ver = 0, bt_patch_ver = 0; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], ==========================" + "Periodical===========================\n"); + + if (dis_ver_info_cnt <= 5) { + dis_ver_info_cnt += 1; + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], ****************************" + "************************************\n"); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], Ant PG Num/ Ant Mech/ " + "Ant Pos = %d/ %d/ %d\n", board_info->pg_ant_num, + board_info->btdm_ant_num, board_info->btdm_ant_pos); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], BT stack/ hci ext ver = %s / %d\n", + ((stack_info->profile_notified) ? "Yes" : "No"), + stack_info->hci_version); + btcoexist->btc_get(btcoexist, BTC_GET_U4_BT_PATCH_VER, + &bt_patch_ver); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_FW_VER, &fw_ver); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], CoexVer/ FwVer/ PatchVer = " + "%d_%x/ 0x%x/ 0x%x(%d)\n", + glcoex_ver_date_8723b_2ant, glcoex_ver_8723b_2ant, + fw_ver, bt_patch_ver, bt_patch_ver); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], *****************************" + "***********************************\n"); + } + +#if (BT_AUTO_REPORT_ONLY_8723B_2ANT == 0) + btc8723b2ant_query_bt_info(btcoexist); + btc8723b2ant_monitor_bt_ctr(btcoexist); + btc8723b2ant_monitor_bt_enable_disable(btcoexist); +#else + if (btc8723b2ant_is_wifi_status_changed(btcoexist) || + coex_dm->auto_tdma_adjust) + btc8723b2ant_run_coexist_mechanism(btcoexist); +#endif +} --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/btcoexist/halbtc8723b2ant.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/btcoexist/halbtc8723b2ant.h @@ -0,0 +1,173 @@ +/****************************************************************************** + * + * Copyright(c) 2012 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ +#ifndef _HAL8723B_2_ANT +#define _HAL8723B_2_ANT + +/************************************************************************ + * The following is for 8723B 2Ant BT Co-exist definition + ************************************************************************/ +#define BT_AUTO_REPORT_ONLY_8723B_2ANT 1 + +#define BT_INFO_8723B_2ANT_B_FTP BIT7 +#define BT_INFO_8723B_2ANT_B_A2DP BIT6 +#define BT_INFO_8723B_2ANT_B_HID BIT5 +#define BT_INFO_8723B_2ANT_B_SCO_BUSY BIT4 +#define BT_INFO_8723B_2ANT_B_ACL_BUSY BIT3 +#define BT_INFO_8723B_2ANT_B_INQ_PAGE BIT2 +#define BT_INFO_8723B_2ANT_B_SCO_ESCO BIT1 +#define BT_INFO_8723B_2ANT_B_CONNECTION BIT0 + +#define BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT 2 + +enum BT_INFO_SRC_8723B_2ANT { + BT_INFO_SRC_8723B_2ANT_WIFI_FW = 0x0, + BT_INFO_SRC_8723B_2ANT_BT_RSP = 0x1, + BT_INFO_SRC_8723B_2ANT_BT_ACTIVE_SEND = 0x2, + BT_INFO_SRC_8723B_2ANT_MAX +}; + +enum BT_8723B_2ANT_BT_STATUS { + BT_8723B_2ANT_BT_STATUS_NON_CONNECTED_IDLE = 0x0, + BT_8723B_2ANT_BT_STATUS_CONNECTED_IDLE = 0x1, + BT_8723B_2ANT_BT_STATUS_INQ_PAGE = 0x2, + BT_8723B_2ANT_BT_STATUS_ACL_BUSY = 0x3, + BT_8723B_2ANT_BT_STATUS_SCO_BUSY = 0x4, + BT_8723B_2ANT_BT_STATUS_ACL_SCO_BUSY = 0x5, + BT_8723B_2ANT_BT_STATUS_MAX +}; + +enum BT_8723B_2ANT_COEX_ALGO { + BT_8723B_2ANT_COEX_ALGO_UNDEFINED = 0x0, + BT_8723B_2ANT_COEX_ALGO_SCO = 0x1, + BT_8723B_2ANT_COEX_ALGO_HID = 0x2, + BT_8723B_2ANT_COEX_ALGO_A2DP = 0x3, + BT_8723B_2ANT_COEX_ALGO_A2DP_PANHS = 0x4, + BT_8723B_2ANT_COEX_ALGO_PANEDR = 0x5, + BT_8723B_2ANT_COEX_ALGO_PANHS = 0x6, + BT_8723B_2ANT_COEX_ALGO_PANEDR_A2DP = 0x7, + BT_8723B_2ANT_COEX_ALGO_PANEDR_HID = 0x8, + BT_8723B_2ANT_COEX_ALGO_HID_A2DP_PANEDR = 0x9, + BT_8723B_2ANT_COEX_ALGO_HID_A2DP = 0xa, + BT_8723B_2ANT_COEX_ALGO_MAX = 0xb, +}; + +struct coex_dm_8723b_2ant { + /* fw mechanism */ + bool pre_dec_bt_pwr; + bool cur_dec_bt_pwr; + u8 pre_fw_dac_swing_lvl; + u8 cur_fw_dac_swing_lvl; + bool cur_ignore_wlan_act; + bool pre_ignore_wlan_act; + u8 pre_ps_tdma; + u8 cur_ps_tdma; + u8 ps_tdma_para[5]; + u8 tdma_adj_type; + bool reset_tdma_adjust; + bool auto_tdma_adjust; + bool pre_ps_tdma_on; + bool cur_ps_tdma_on; + bool pre_bt_auto_report; + bool cur_bt_auto_report; + + /* sw mechanism */ + bool pre_rf_rx_lpf_shrink; + bool cur_rf_rx_lpf_shrink; + u32 bt_rf0x1e_backup; + bool pre_low_penalty_ra; + bool cur_low_penalty_ra; + bool pre_dac_swing_on; + u32 pre_dac_swing_lvl; + bool cur_dac_swing_on; + u32 cur_dac_swing_lvl; + bool pre_adc_back_off; + bool cur_adc_back_off; + bool pre_agc_table_en; + bool cur_agc_table_en; + u32 pre_val0x6c0; + u32 cur_val0x6c0; + u32 pre_val0x6c4; + u32 cur_val0x6c4; + u32 pre_val0x6c8; + u32 cur_val0x6c8; + u8 pre_val0x6cc; + u8 cur_val0x6cc; + bool limited_dig; + + /* algorithm related */ + u8 pre_algorithm; + u8 cur_algorithm; + u8 bt_status; + u8 wifi_chnl_info[3]; + + bool need_recover_0x948; + u16 backup_0x948; +}; + +struct coex_sta_8723b_2ant { + bool bt_link_exist; + bool sco_exist; + bool a2dp_exist; + bool hid_exist; + bool pan_exist; + + bool under_lps; + bool under_ips; + u32 high_priority_tx; + u32 high_priority_rx; + u32 low_priority_tx; + u32 low_priority_rx; + u8 bt_rssi; + u8 pre_bt_rssi_state; + u8 pre_wifi_rssi_state[4]; + bool c2h_bt_info_req_sent; + u8 bt_info_c2h[BT_INFO_SRC_8723B_2ANT_MAX][10]; + u32 bt_info_c2h_cnt[BT_INFO_SRC_8723B_2ANT_MAX]; + bool c2h_bt_inquiry_page; + u8 bt_retry_cnt; + u8 bt_info_ext; +}; + +/********************************************************************* + * The following is interface which will notify coex module. + *********************************************************************/ +void ex_halbtc8723b2ant_init_hwconfig(struct btc_coexist *btcoexist); +void ex_halbtc8723b2ant_init_coex_dm(struct btc_coexist *btcoexist); +void ex_halbtc8723b2ant_ips_notify(struct btc_coexist *btcoexist, u8 type); +void ex_halbtc8723b2ant_lps_notify(struct btc_coexist *btcoexist, u8 type); +void ex_halbtc8723b2ant_scan_notify(struct btc_coexist *btcoexist, u8 type); +void ex_halbtc8723b2ant_connect_notify(struct btc_coexist *btcoexist, u8 type); +void btc8723b_med_stat_notify(struct btc_coexist *btcoexist, u8 type); +void ex_halbtc8723b2ant_special_packet_notify(struct btc_coexist *btcoexist, + u8 type); +void ex_halbtc8723b2ant_bt_info_notify(struct btc_coexist *btcoexist, + u8 *tmpbuf, u8 length); +void ex_halbtc8723b2ant_stack_operation_notify(struct btc_coexist *btcoexist, + u8 type); +void ex_halbtc8723b2ant_halt_notify(struct btc_coexist *btcoexist); +void ex_halbtc8723b2ant_periodical(struct btc_coexist *btcoexist); +void ex_halbtc8723b2ant_display_coex_info(struct btc_coexist *btcoexist); + +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/btcoexist/halbtcoutsrc.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/btcoexist/halbtcoutsrc.c @@ -0,0 +1,1011 @@ +/****************************************************************************** + * + * Copyright(c) 2007 - 2013 Realtek Corporation. All rights reserved. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + ******************************************************************************/ + +#include "halbt_precomp.h" + +/*********************************************** + * Global variables + ***********************************************/ + +struct btc_coexist gl_bt_coexist; + +u32 btc_dbg_type[BTC_MSG_MAX]; +static u8 btc_dbg_buf[100]; + +/*************************************************** + * Debug related function + ***************************************************/ +static bool halbtc_is_bt_coexist_available(struct btc_coexist *btcoexist) +{ + if (!btcoexist->binded || NULL == btcoexist->adapter) + return false; + + return true; +} + +static bool halbtc_is_wifi_busy(struct rtl_priv *rtlpriv) +{ + if (rtlpriv->link_info.busytraffic) + return true; + else + return false; +} + +static void halbtc_dbg_init(void) +{ + u8 i; + + for (i = 0; i < BTC_MSG_MAX; i++) + btc_dbg_type[i] = 0; + + btc_dbg_type[BTC_MSG_INTERFACE] = +/* INTF_INIT | */ +/* INTF_NOTIFY | */ + 0; + + btc_dbg_type[BTC_MSG_ALGORITHM] = +/* ALGO_BT_RSSI_STATE | */ +/* ALGO_WIFI_RSSI_STATE | */ +/* ALGO_BT_MONITOR | */ +/* ALGO_TRACE | */ +/* ALGO_TRACE_FW | */ +/* ALGO_TRACE_FW_DETAIL | */ +/* ALGO_TRACE_FW_EXEC | */ +/* ALGO_TRACE_SW | */ +/* ALGO_TRACE_SW_DETAIL | */ +/* ALGO_TRACE_SW_EXEC | */ + 0; +} + +static bool halbtc_is_bt40(struct rtl_priv *adapter) +{ + struct rtl_priv *rtlpriv = adapter; + struct rtl_phy *rtlphy = &(rtlpriv->phy); + bool is_ht40 = true; + enum ht_channel_width bw = rtlphy->current_chan_bw; + + if (bw == HT_CHANNEL_WIDTH_20) + is_ht40 = false; + else if (bw == HT_CHANNEL_WIDTH_20_40) + is_ht40 = true; + + return is_ht40; +} + +static bool halbtc_legacy(struct rtl_priv *adapter) +{ + struct rtl_priv *rtlpriv = adapter; + struct rtl_mac *mac = rtl_mac(rtlpriv); + + bool is_legacy = false; + + if ((mac->mode == WIRELESS_MODE_B) || (mac->mode == WIRELESS_MODE_B)) + is_legacy = true; + + return is_legacy; +} + +bool halbtc_is_wifi_uplink(struct rtl_priv *adapter) +{ + struct rtl_priv *rtlpriv = adapter; + + if (rtlpriv->link_info.tx_busy_traffic) + return true; + else + return false; +} + +static u32 halbtc_get_wifi_bw(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv = + (struct rtl_priv *)btcoexist->adapter; + u32 wifi_bw = BTC_WIFI_BW_HT20; + + if (halbtc_is_bt40(rtlpriv)) { + wifi_bw = BTC_WIFI_BW_HT40; + } else { + if (halbtc_legacy(rtlpriv)) + wifi_bw = BTC_WIFI_BW_LEGACY; + else + wifi_bw = BTC_WIFI_BW_HT20; + } + return wifi_bw; +} + +static u8 halbtc_get_wifi_central_chnl(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 chnl = 1; + + if (rtlphy->current_channel != 0) + chnl = rtlphy->current_channel; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "static halbtc_get_wifi_central_chnl:%d\n", chnl); + return chnl; +} + +static void halbtc_leave_lps(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv; + struct rtl_ps_ctl *ppsc; + bool ap_enable = false; + + rtlpriv = btcoexist->adapter; + ppsc = rtl_psc(rtlpriv); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_AP_MODE_ENABLE, + &ap_enable); + + if (ap_enable) { + pr_info("halbtc_leave_lps()<--dont leave lps under AP mode\n"); + return; + } + + btcoexist->bt_info.bt_ctrl_lps = true; + btcoexist->bt_info.bt_lps_on = false; +} + +static void halbtc_enter_lps(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv; + struct rtl_ps_ctl *ppsc; + bool ap_enable = false; + + rtlpriv = btcoexist->adapter; + ppsc = rtl_psc(rtlpriv); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_AP_MODE_ENABLE, + &ap_enable); + + if (ap_enable) { + pr_info("halbtc_enter_lps()<--dont enter lps under AP mode\n"); + return; + } + + btcoexist->bt_info.bt_ctrl_lps = true; + btcoexist->bt_info.bt_lps_on = false; +} + +static void halbtc_normal_lps(struct btc_coexist *btcoexist) +{ + if (btcoexist->bt_info.bt_ctrl_lps) { + btcoexist->bt_info.bt_lps_on = false; + btcoexist->bt_info.bt_ctrl_lps = false; + } +} + +static void halbtc_leave_low_power(void) +{ +} + +static void halbtc_nomal_low_power(void) +{ +} + +static void halbtc_disable_low_power(void) +{ +} + +static void halbtc_aggregation_check(void) +{ +} + +static u32 halbtc_get_bt_patch_version(struct btc_coexist *btcoexist) +{ + return 0; +} + +static s32 halbtc_get_wifi_rssi(struct rtl_priv *adapter) +{ + struct rtl_priv *rtlpriv = adapter; + s32 undec_sm_pwdb = 0; + + if (rtlpriv->mac80211.link_state >= MAC80211_LINKED) + undec_sm_pwdb = rtlpriv->dm.undec_sm_pwdb; + else /* associated entry pwdb */ + undec_sm_pwdb = rtlpriv->dm.undec_sm_pwdb; + return undec_sm_pwdb; +} + +static bool halbtc_get(void *void_btcoexist, u8 get_type, void *out_buf) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)void_btcoexist; + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_mac *mac = rtl_mac(rtlpriv); + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + bool *bool_tmp = (bool *)out_buf; + int *s32_tmp = (int *)out_buf; + u32 *u32_tmp = (u32 *)out_buf; + u8 *u8_tmp = (u8 *)out_buf; + bool tmp = false; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return false; + + switch (get_type) { + case BTC_GET_BL_HS_OPERATION: + *bool_tmp = false; + break; + case BTC_GET_BL_HS_CONNECTING: + *bool_tmp = false; + break; + case BTC_GET_BL_WIFI_CONNECTED: + if (rtlpriv->mac80211.link_state >= MAC80211_LINKED) + tmp = true; + *bool_tmp = tmp; + break; + case BTC_GET_BL_WIFI_BUSY: + if (halbtc_is_wifi_busy(rtlpriv)) + *bool_tmp = true; + else + *bool_tmp = false; + break; + case BTC_GET_BL_WIFI_SCAN: + if (mac->act_scanning) + *bool_tmp = true; + else + *bool_tmp = false; + break; + case BTC_GET_BL_WIFI_LINK: + if (mac->link_state == MAC80211_LINKING) + *bool_tmp = true; + else + *bool_tmp = false; + break; + case BTC_GET_BL_WIFI_ROAM: /*TODO*/ + if (mac->link_state == MAC80211_LINKING) + *bool_tmp = true; + else + *bool_tmp = false; + break; + case BTC_GET_BL_WIFI_4_WAY_PROGRESS: /*TODO*/ + *bool_tmp = false; + + break; + case BTC_GET_BL_WIFI_UNDER_5G: + *bool_tmp = false; /*TODO*/ + + case BTC_GET_BL_WIFI_DHCP: /*TODO*/ + break; + case BTC_GET_BL_WIFI_SOFTAP_IDLE: + *bool_tmp = true; + break; + case BTC_GET_BL_WIFI_SOFTAP_LINKING: + *bool_tmp = false; + break; + case BTC_GET_BL_WIFI_IN_EARLY_SUSPEND: + *bool_tmp = false; + break; + case BTC_GET_BL_WIFI_AP_MODE_ENABLE: + *bool_tmp = false; + break; + case BTC_GET_BL_WIFI_ENABLE_ENCRYPTION: + if (NO_ENCRYPTION == rtlpriv->sec.pairwise_enc_algorithm) + *bool_tmp = false; + else + *bool_tmp = true; + break; + case BTC_GET_BL_WIFI_UNDER_B_MODE: + *bool_tmp = false; /*TODO*/ + break; + case BTC_GET_BL_EXT_SWITCH: + *bool_tmp = false; + break; + case BTC_GET_S4_WIFI_RSSI: + *s32_tmp = halbtc_get_wifi_rssi(rtlpriv); + break; + case BTC_GET_S4_HS_RSSI: /*TODO*/ + *s32_tmp = halbtc_get_wifi_rssi(rtlpriv); + break; + case BTC_GET_U4_WIFI_BW: + *u32_tmp = halbtc_get_wifi_bw(btcoexist); + break; + case BTC_GET_U4_WIFI_TRAFFIC_DIRECTION: + if (halbtc_is_wifi_uplink(rtlpriv)) + *u32_tmp = BTC_WIFI_TRAFFIC_TX; + else + *u32_tmp = BTC_WIFI_TRAFFIC_RX; + break; + case BTC_GET_U4_WIFI_FW_VER: + *u32_tmp = rtlhal->fw_version; + break; + case BTC_GET_U4_BT_PATCH_VER: + *u32_tmp = halbtc_get_bt_patch_version(btcoexist); + break; + case BTC_GET_U1_WIFI_DOT11_CHNL: + *u8_tmp = rtlphy->current_channel; + break; + case BTC_GET_U1_WIFI_CENTRAL_CHNL: + *u8_tmp = halbtc_get_wifi_central_chnl(btcoexist); + break; + case BTC_GET_U1_WIFI_HS_CHNL: + *u8_tmp = 1;/*BT_OperateChnl(rtlpriv);*/ + break; + case BTC_GET_U1_MAC_PHY_MODE: + *u8_tmp = BTC_MP_UNKNOWN; + break; + + /************* 1Ant **************/ + case BTC_GET_U1_LPS_MODE: + *u8_tmp = btcoexist->pwr_mode_val[0]; + break; + + default: + break; + } + + return true; +} + +static bool halbtc_set(void *void_btcoexist, u8 set_type, void *in_buf) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)void_btcoexist; + bool *bool_tmp = (bool *)in_buf; + u8 *u8_tmp = (u8 *)in_buf; + u32 *u32_tmp = (u32 *)in_buf; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return false; + + switch (set_type) { + /* set some bool type variables. */ + case BTC_SET_BL_BT_DISABLE: + btcoexist->bt_info.bt_disabled = *bool_tmp; + break; + case BTC_SET_BL_BT_TRAFFIC_BUSY: + btcoexist->bt_info.bt_busy = *bool_tmp; + break; + case BTC_SET_BL_BT_LIMITED_DIG: + btcoexist->bt_info.limited_dig = *bool_tmp; + break; + case BTC_SET_BL_FORCE_TO_ROAM: + btcoexist->bt_info.force_to_roam = *bool_tmp; + break; + case BTC_SET_BL_TO_REJ_AP_AGG_PKT: + btcoexist->bt_info.reject_agg_pkt = *bool_tmp; + break; + case BTC_SET_BL_BT_CTRL_AGG_SIZE: + btcoexist->bt_info.b_bt_ctrl_buf_size = *bool_tmp; + break; + case BTC_SET_BL_INC_SCAN_DEV_NUM: + btcoexist->bt_info.increase_scan_dev_num = *bool_tmp; + break; + /* set some u1Byte type variables. */ + case BTC_SET_U1_RSSI_ADJ_VAL_FOR_AGC_TABLE_ON: + btcoexist->bt_info.rssi_adjust_for_agc_table_on = *u8_tmp; + break; + case BTC_SET_U1_AGG_BUF_SIZE: + btcoexist->bt_info.agg_buf_size = *u8_tmp; + break; + /* the following are some action which will be triggered */ + case BTC_SET_ACT_GET_BT_RSSI: + /*BTHCI_SendGetBtRssiEvent(rtlpriv);*/ + break; + case BTC_SET_ACT_AGGREGATE_CTRL: + halbtc_aggregation_check(); + break; + + /* 1Ant */ + case BTC_SET_U1_RSSI_ADJ_VAL_FOR_1ANT_COEX_TYPE: + btcoexist->bt_info.rssi_adjust_for_1ant_coex_type = *u8_tmp; + break; + case BTC_SET_UI_SCAN_SIG_COMPENSATION: + /* rtlpriv->mlmepriv.scan_compensation = *u8_tmp; */ + break; + case BTC_SET_U1_1ANT_LPS: + btcoexist->bt_info.lps_1ant = *u8_tmp; + break; + case BTC_SET_U1_1ANT_RPWM: + btcoexist->bt_info.rpwm_1ant = *u8_tmp; + break; + /* the following are some action which will be triggered */ + case BTC_SET_ACT_LEAVE_LPS: + halbtc_leave_lps(btcoexist); + break; + case BTC_SET_ACT_ENTER_LPS: + halbtc_enter_lps(btcoexist); + break; + case BTC_SET_ACT_NORMAL_LPS: + halbtc_normal_lps(btcoexist); + break; + case BTC_SET_ACT_DISABLE_LOW_POWER: + halbtc_disable_low_power(); + break; + case BTC_SET_ACT_UPDATE_ra_mask: + btcoexist->bt_info.ra_mask = *u32_tmp; + break; + case BTC_SET_ACT_SEND_MIMO_PS: + break; + case BTC_SET_ACT_INC_FORCE_EXEC_PWR_CMD_CNT: + btcoexist->bt_info.force_exec_pwr_cmd_cnt++; + break; + case BTC_SET_ACT_CTRL_BT_INFO: /*wait for 8812/8821*/ + break; + case BTC_SET_ACT_CTRL_BT_COEX: + break; + default: + break; + } + + return true; +} + +static void halbtc_display_coex_statistics(struct btc_coexist *btcoexist) +{ +} + +static void halbtc_display_bt_link_info(struct btc_coexist *btcoexist) +{ +} + +static void halbtc_display_bt_fw_info(struct btc_coexist *btcoexist) +{ +} + +static void halbtc_display_fw_pwr_mode_cmd(struct btc_coexist *btcoexist) +{ +} + +/************************************************************ + * IO related function + ************************************************************/ +static u8 halbtc_read_1byte(void *bt_context, u32 reg_addr) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + return rtl_read_byte(rtlpriv, reg_addr); +} + +static u16 halbtc_read_2byte(void *bt_context, u32 reg_addr) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + return rtl_read_word(rtlpriv, reg_addr); +} + +static u32 halbtc_read_4byte(void *bt_context, u32 reg_addr) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + return rtl_read_dword(rtlpriv, reg_addr); +} + +static void halbtc_write_1byte(void *bt_context, u32 reg_addr, u8 data) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + rtl_write_byte(rtlpriv, reg_addr, data); +} + +static void halbtc_bitmask_write_1byte(void *bt_context, u32 reg_addr, + u32 bit_mask, u8 data) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + u8 original_value, bit_shift = 0; + u8 i; + + if (bit_mask != MASKDWORD) {/*if not "double word" write*/ + original_value = rtl_read_byte(rtlpriv, reg_addr); + for (i = 0; i <= 7; i++) { + if ((bit_mask>>i) & 0x1) + break; + } + bit_shift = i; + data = (original_value & (~bit_mask)) | + ((data << bit_shift) & bit_mask); + } + rtl_write_byte(rtlpriv, reg_addr, data); +} + +static void halbtc_write_2byte(void *bt_context, u32 reg_addr, u16 data) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + rtl_write_word(rtlpriv, reg_addr, data); +} + +static void halbtc_write_4byte(void *bt_context, u32 reg_addr, u32 data) +{ + struct btc_coexist *btcoexist = + (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + rtl_write_dword(rtlpriv, reg_addr, data); +} + +static void halbtc_set_bbreg(void *bt_context, u32 reg_addr, u32 bit_mask, + u32 data) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + rtl_set_bbreg(rtlpriv->mac80211.hw, reg_addr, bit_mask, data); +} + +static u32 halbtc_get_bbreg(void *bt_context, u32 reg_addr, u32 bit_mask) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + return rtl_get_bbreg(rtlpriv->mac80211.hw, reg_addr, bit_mask); +} + +static void halbtc_set_rfreg(void *bt_context, u8 rf_path, u32 reg_addr, + u32 bit_mask, u32 data) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + rtl_set_rfreg(rtlpriv->mac80211.hw, rf_path, reg_addr, bit_mask, data); +} + +static u32 halbtc_get_rfreg(void *bt_context, u8 rf_path, u32 reg_addr, + u32 bit_mask) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + return rtl_get_rfreg(rtlpriv->mac80211.hw, rf_path, reg_addr, bit_mask); +} + +static void halbtc_fill_h2c_cmd(void *bt_context, u8 element_id, + u32 cmd_len, u8 *cmd_buf) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + rtlpriv->cfg->ops->fill_h2c_cmd(rtlpriv->mac80211.hw, element_id, + cmd_len, cmd_buf); +} + +static void halbtc_display_dbg_msg(void *bt_context, u8 disp_type) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + switch (disp_type) { + case BTC_DBG_DISP_COEX_STATISTICS: + halbtc_display_coex_statistics(btcoexist); + break; + case BTC_DBG_DISP_BT_LINK_INFO: + halbtc_display_bt_link_info(btcoexist); + break; + case BTC_DBG_DISP_BT_FW_VER: + halbtc_display_bt_fw_info(btcoexist); + break; + case BTC_DBG_DISP_FW_PWR_MODE_CMD: + halbtc_display_fw_pwr_mode_cmd(btcoexist); + break; + default: + break; + } +} + +/***************************************************************** + * Extern functions called by other module + *****************************************************************/ +bool exhalbtc_initlize_variables(struct rtl_priv *adapter) +{ + struct btc_coexist *btcoexist = &gl_bt_coexist; + + btcoexist->statistics.cnt_bind++; + + halbtc_dbg_init(); + + if (btcoexist->binded) + return false; + else + btcoexist->binded = true; + +#if (defined(CONFIG_PCI_HCI)) + btcoexist->chip_interface = BTC_INTF_PCI; +#elif (defined(CONFIG_USB_HCI)) + btcoexist->chip_interface = BTC_INTF_USB; +#elif (defined(CONFIG_SDIO_HCI)) + btcoexist->chip_interface = BTC_INTF_SDIO; +#elif (defined(CONFIG_GSPI_HCI)) + btcoexist->chip_interface = BTC_INTF_GSPI; +#else + btcoexist->chip_interface = BTC_INTF_UNKNOWN; +#endif + + if (NULL == btcoexist->adapter) + btcoexist->adapter = adapter; + + btcoexist->stack_info.profile_notified = false; + + btcoexist->btc_read_1byte = halbtc_read_1byte; + btcoexist->btc_write_1byte = halbtc_write_1byte; + btcoexist->btc_write_1byte_bitmask = halbtc_bitmask_write_1byte; + btcoexist->btc_read_2byte = halbtc_read_2byte; + btcoexist->btc_write_2byte = halbtc_write_2byte; + btcoexist->btc_read_4byte = halbtc_read_4byte; + btcoexist->btc_write_4byte = halbtc_write_4byte; + + btcoexist->btc_set_bb_reg = halbtc_set_bbreg; + btcoexist->btc_get_bb_reg = halbtc_get_bbreg; + + btcoexist->btc_set_rf_reg = halbtc_set_rfreg; + btcoexist->btc_get_rf_reg = halbtc_get_rfreg; + + btcoexist->btc_fill_h2c = halbtc_fill_h2c_cmd; + btcoexist->btc_disp_dbg_msg = halbtc_display_dbg_msg; + + btcoexist->btc_get = halbtc_get; + btcoexist->btc_set = halbtc_set; + + btcoexist->cli_buf = &btc_dbg_buf[0]; + + btcoexist->bt_info.b_bt_ctrl_buf_size = false; + btcoexist->bt_info.agg_buf_size = 5; + + btcoexist->bt_info.increase_scan_dev_num = false; + return true; +} + +void exhalbtc_init_hw_config(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + + btcoexist->statistics.cnt_init_hw_config++; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) + ex_halbtc8723b2ant_init_hwconfig(btcoexist); +} + +void exhalbtc_init_coex_dm(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + + btcoexist->statistics.cnt_init_coex_dm++; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) + ex_halbtc8723b2ant_init_coex_dm(btcoexist); + + btcoexist->initilized = true; +} + +void exhalbtc_ips_notify(struct btc_coexist *btcoexist, u8 type) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + u8 ips_type; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_ips_notify++; + if (btcoexist->manual_control) + return; + + if (ERFOFF == type) + ips_type = BTC_IPS_ENTER; + else + ips_type = BTC_IPS_LEAVE; + + halbtc_leave_low_power(); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) + ex_halbtc8723b2ant_ips_notify(btcoexist, ips_type); + + halbtc_nomal_low_power(); +} + +void exhalbtc_lps_notify(struct btc_coexist *btcoexist, u8 type) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + u8 lps_type; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_lps_notify++; + if (btcoexist->manual_control) + return; + + if (EACTIVE == type) + lps_type = BTC_LPS_DISABLE; + else + lps_type = BTC_LPS_ENABLE; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) + ex_halbtc8723b2ant_lps_notify(btcoexist, lps_type); +} + +void exhalbtc_scan_notify(struct btc_coexist *btcoexist, u8 type) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + u8 scan_type; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_scan_notify++; + if (btcoexist->manual_control) + return; + + if (type) + scan_type = BTC_SCAN_START; + else + scan_type = BTC_SCAN_FINISH; + + halbtc_leave_low_power(); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) + ex_halbtc8723b2ant_scan_notify(btcoexist, scan_type); + + halbtc_nomal_low_power(); +} + +void exhalbtc_connect_notify(struct btc_coexist *btcoexist, u8 action) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + u8 asso_type; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_connect_notify++; + if (btcoexist->manual_control) + return; + + if (action) + asso_type = BTC_ASSOCIATE_START; + else + asso_type = BTC_ASSOCIATE_FINISH; + + halbtc_leave_low_power(); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) + ex_halbtc8723b2ant_connect_notify(btcoexist, asso_type); +} + +void exhalbtc_mediastatus_notify(struct btc_coexist *btcoexist, + enum _RT_MEDIA_STATUS media_status) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + u8 status; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_media_status_notify++; + if (btcoexist->manual_control) + return; + + if (RT_MEDIA_CONNECT == media_status) + status = BTC_MEDIA_CONNECT; + else + status = BTC_MEDIA_DISCONNECT; + + halbtc_leave_low_power(); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) + btc8723b_med_stat_notify(btcoexist, status); + + halbtc_nomal_low_power(); +} + +void exhalbtc_special_packet_notify(struct btc_coexist *btcoexist, u8 pkt_type) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + u8 packet_type; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_special_packet_notify++; + if (btcoexist->manual_control) + return; + + packet_type = BTC_PACKET_DHCP; + + halbtc_leave_low_power(); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) + ex_halbtc8723b2ant_special_packet_notify(btcoexist, + packet_type); + + halbtc_nomal_low_power(); +} + +void exhalbtc_bt_info_notify(struct btc_coexist *btcoexist, + u8 *tmp_buf, u8 length) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_bt_info_notify++; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) + ex_halbtc8723b2ant_bt_info_notify(btcoexist, tmp_buf, length); +} + +void exhalbtc_stack_operation_notify(struct btc_coexist *btcoexist, u8 type) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + u8 stack_op_type; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_stack_operation_notify++; + if (btcoexist->manual_control) + return; + + stack_op_type = BTC_STACK_OP_NONE; + + halbtc_leave_low_power(); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) + ex_halbtc8723b2ant_stack_operation_notify(btcoexist, + stack_op_type); + + halbtc_nomal_low_power(); +} + +void exhalbtc_halt_notify(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) + ex_halbtc8723b2ant_halt_notify(btcoexist); +} + +void exhalbtc_pnp_notify(struct btc_coexist *btcoexist, u8 pnp_state) +{ + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; +} + +void exhalbtc_periodical(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_periodical++; + + halbtc_leave_low_power(); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) + ex_halbtc8723b2ant_periodical(btcoexist); + + halbtc_nomal_low_power(); +} + +void exhalbtc_dbg_control(struct btc_coexist *btcoexist, + u8 code, u8 len, u8 *data) +{ + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_dbg_ctrl++; +} + +void exhalbtc_stack_update_profile_info(void) +{ +} + +void exhalbtc_update_min_bt_rssi(char bt_rssi) +{ + struct btc_coexist *btcoexist = &gl_bt_coexist; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + + btcoexist->stack_info.min_bt_rssi = bt_rssi; +} + +void exhalbtc_set_hci_version(u16 hci_version) +{ + struct btc_coexist *btcoexist = &gl_bt_coexist; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + + btcoexist->stack_info.hci_version = hci_version; +} + +void exhalbtc_set_bt_patch_version(u16 bt_hci_version, u16 bt_patch_version) +{ + struct btc_coexist *btcoexist = &gl_bt_coexist; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + + btcoexist->bt_info.bt_real_fw_ver = bt_patch_version; + btcoexist->bt_info.bt_hci_ver = bt_hci_version; +} + +void exhalbtc_set_bt_exist(bool bt_exist) +{ + gl_bt_coexist.board_info.bt_exist = bt_exist; +} + +void exhalbtc_set_chip_type(u8 chip_type) +{ + switch (chip_type) { + default: + case BT_2WIRE: + case BT_ISSC_3WIRE: + case BT_ACCEL: + case BT_RTL8756: + gl_bt_coexist.board_info.bt_chip_type = BTC_CHIP_UNDEF; + break; + case BT_CSR_BC4: + gl_bt_coexist.board_info.bt_chip_type = BTC_CHIP_CSR_BC4; + break; + case BT_CSR_BC8: + gl_bt_coexist.board_info.bt_chip_type = BTC_CHIP_CSR_BC8; + break; + case BT_RTL8723A: + gl_bt_coexist.board_info.bt_chip_type = BTC_CHIP_RTL8723A; + break; + case BT_RTL8821: + gl_bt_coexist.board_info.bt_chip_type = BTC_CHIP_RTL8821; + break; + case BT_RTL8723B: + gl_bt_coexist.board_info.bt_chip_type = BTC_CHIP_RTL8723B; + break; + } +} + +void exhalbtc_set_ant_num(u8 type, u8 ant_num) +{ + if (BT_COEX_ANT_TYPE_PG == type) { + gl_bt_coexist.board_info.pg_ant_num = ant_num; + gl_bt_coexist.board_info.btdm_ant_num = ant_num; + } else if (BT_COEX_ANT_TYPE_ANTDIV == type) { + gl_bt_coexist.board_info.btdm_ant_num = ant_num; + } +} + +void exhalbtc_display_bt_coex_info(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) + ex_halbtc8723b2ant_display_coex_info(btcoexist); +} --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/btcoexist/halbtcoutsrc.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/btcoexist/halbtcoutsrc.h @@ -0,0 +1,559 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2012 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ +#ifndef __HALBTC_OUT_SRC_H__ +#define __HALBTC_OUT_SRC_H__ + +#include "../wifi.h" + +#define NORMAL_EXEC false +#define FORCE_EXEC true + +#define BTC_RF_A RF90_PATH_A +#define BTC_RF_B RF90_PATH_B +#define BTC_RF_C RF90_PATH_C +#define BTC_RF_D RF90_PATH_D + +#define BTC_SMSP SINGLEMAC_SINGLEPHY +#define BTC_DMDP DUALMAC_DUALPHY +#define BTC_DMSP DUALMAC_SINGLEPHY +#define BTC_MP_UNKNOWN 0xff + +#define IN +#define OUT + +#define BT_TMP_BUF_SIZE 100 + +#define BT_COEX_ANT_TYPE_PG 0 +#define BT_COEX_ANT_TYPE_ANTDIV 1 +#define BT_COEX_ANT_TYPE_DETECTED 2 + +#define BTC_MIMO_PS_STATIC 0 +#define BTC_MIMO_PS_DYNAMIC 1 + +#define BTC_RATE_DISABLE 0 +#define BTC_RATE_ENABLE 1 + +#define BTC_ANT_PATH_WIFI 0 +#define BTC_ANT_PATH_BT 1 +#define BTC_ANT_PATH_PTA 2 + +enum btc_chip_interface { + BTC_INTF_UNKNOWN = 0, + BTC_INTF_PCI = 1, + BTC_INTF_USB = 2, + BTC_INTF_SDIO = 3, + BTC_INTF_GSPI = 4, + BTC_INTF_MAX +}; + +enum BTC_CHIP_TYPE { + BTC_CHIP_UNDEF = 0, + BTC_CHIP_CSR_BC4 = 1, + BTC_CHIP_CSR_BC8 = 2, + BTC_CHIP_RTL8723A = 3, + BTC_CHIP_RTL8821 = 4, + BTC_CHIP_RTL8723B = 5, + BTC_CHIP_MAX +}; + +enum BTC_MSG_TYPE { + BTC_MSG_INTERFACE = 0x0, + BTC_MSG_ALGORITHM = 0x1, + BTC_MSG_MAX +}; +extern u32 btc_dbg_type[]; + +/* following is for BTC_MSG_INTERFACE */ +#define INTF_INIT BIT0 +#define INTF_NOTIFY BIT2 + +/* following is for BTC_ALGORITHM */ +#define ALGO_BT_RSSI_STATE BIT0 +#define ALGO_WIFI_RSSI_STATE BIT1 +#define ALGO_BT_MONITOR BIT2 +#define ALGO_TRACE BIT3 +#define ALGO_TRACE_FW BIT4 +#define ALGO_TRACE_FW_DETAIL BIT5 +#define ALGO_TRACE_FW_EXEC BIT6 +#define ALGO_TRACE_SW BIT7 +#define ALGO_TRACE_SW_DETAIL BIT8 +#define ALGO_TRACE_SW_EXEC BIT9 + +#define BT_COEX_ANT_TYPE_PG 0 +#define BT_COEX_ANT_TYPE_ANTDIV 1 +#define BT_COEX_ANT_TYPE_DETECTED 2 +#define BTC_MIMO_PS_STATIC 0 +#define BTC_MIMO_PS_DYNAMIC 1 +#define BTC_RATE_DISABLE 0 +#define BTC_RATE_ENABLE 1 +#define BTC_ANT_PATH_WIFI 0 +#define BTC_ANT_PATH_BT 1 +#define BTC_ANT_PATH_PTA 2 + + +#define CL_SPRINTF snprintf +#define CL_PRINTF printk + +#define BTC_PRINT(dbgtype, dbgflag, printstr, ...) \ + do { \ + if (unlikely(btc_dbg_type[dbgtype] & dbgflag)) {\ + printk(printstr, ##__VA_ARGS__); \ + } \ + } while (0) + +#define BTC_PRINT_F(dbgtype, dbgflag, printstr, ...) \ + do { \ + if (unlikely(btc_dbg_type[dbgtype] & dbgflag)) {\ + pr_info("%s: ", __func__); \ + printk(printstr, ##__VA_ARGS__); \ + } \ + } while (0) + +#define BTC_PRINT_ADDR(dbgtype, dbgflag, printstr, _ptr) \ + do { \ + if (unlikely(btc_dbg_type[dbgtype] & dbgflag)) { \ + int __i; \ + u8 *__ptr = (u8 *)_ptr; \ + printk printstr; \ + for (__i = 0; __i < 6; __i++) \ + printk("%02X%s", __ptr[__i], (__i == 5) ? \ + "" : "-"); \ + pr_info("\n"); \ + } \ + } while (0) + +#define BTC_PRINT_DATA(dbgtype, dbgflag, _titlestring, _hexdata, _hexdatalen) \ + do { \ + if (unlikely(btc_dbg_type[dbgtype] & dbgflag)) { \ + int __i; \ + u8 *__ptr = (u8 *)_hexdata; \ + printk(_titlestring); \ + for (__i = 0; __i < (int)_hexdatalen; __i++) { \ + printk("%02X%s", __ptr[__i], (((__i + 1) % 4) \ + == 0) ? " " : " ");\ + if (((__i + 1) % 16) == 0) \ + printk("\n"); \ + } \ + pr_debug("\n"); \ + } \ + } while (0) + +#define BTC_ANT_PATH_WIFI 0 +#define BTC_ANT_PATH_BT 1 +#define BTC_ANT_PATH_PTA 2 + +enum btc_power_save_type { + BTC_PS_WIFI_NATIVE = 0, + BTC_PS_LPS_ON = 1, + BTC_PS_LPS_OFF = 2, + BTC_PS_LPS_MAX +}; + +struct btc_board_info { + /* The following is some board information */ + u8 bt_chip_type; + u8 pg_ant_num; /* pg ant number */ + u8 btdm_ant_num; /* ant number for btdm */ + u8 btdm_ant_pos; + bool bt_exist; +}; + +enum btc_dbg_opcode { + BTC_DBG_SET_COEX_NORMAL = 0x0, + BTC_DBG_SET_COEX_WIFI_ONLY = 0x1, + BTC_DBG_SET_COEX_BT_ONLY = 0x2, + BTC_DBG_MAX +}; + +enum btc_rssi_state { + BTC_RSSI_STATE_HIGH = 0x0, + BTC_RSSI_STATE_MEDIUM = 0x1, + BTC_RSSI_STATE_LOW = 0x2, + BTC_RSSI_STATE_STAY_HIGH = 0x3, + BTC_RSSI_STATE_STAY_MEDIUM = 0x4, + BTC_RSSI_STATE_STAY_LOW = 0x5, + BTC_RSSI_MAX +}; + +enum btc_wifi_role { + BTC_ROLE_STATION = 0x0, + BTC_ROLE_AP = 0x1, + BTC_ROLE_IBSS = 0x2, + BTC_ROLE_HS_MODE = 0x3, + BTC_ROLE_MAX +}; + +enum btc_wifi_bw_mode { + BTC_WIFI_BW_LEGACY = 0x0, + BTC_WIFI_BW_HT20 = 0x1, + BTC_WIFI_BW_HT40 = 0x2, + BTC_WIFI_BW_MAX +}; + +enum btc_wifi_traffic_dir { + BTC_WIFI_TRAFFIC_TX = 0x0, + BTC_WIFI_TRAFFIC_RX = 0x1, + BTC_WIFI_TRAFFIC_MAX +}; + +enum btc_wifi_pnp { + BTC_WIFI_PNP_WAKE_UP = 0x0, + BTC_WIFI_PNP_SLEEP = 0x1, + BTC_WIFI_PNP_MAX +}; + + +enum btc_get_type { + /* type bool */ + BTC_GET_BL_HS_OPERATION, + BTC_GET_BL_HS_CONNECTING, + BTC_GET_BL_WIFI_CONNECTED, + BTC_GET_BL_WIFI_BUSY, + BTC_GET_BL_WIFI_SCAN, + BTC_GET_BL_WIFI_LINK, + BTC_GET_BL_WIFI_DHCP, + BTC_GET_BL_WIFI_SOFTAP_IDLE, + BTC_GET_BL_WIFI_SOFTAP_LINKING, + BTC_GET_BL_WIFI_IN_EARLY_SUSPEND, + BTC_GET_BL_WIFI_ROAM, + BTC_GET_BL_WIFI_4_WAY_PROGRESS, + BTC_GET_BL_WIFI_UNDER_5G, + BTC_GET_BL_WIFI_AP_MODE_ENABLE, + BTC_GET_BL_WIFI_ENABLE_ENCRYPTION, + BTC_GET_BL_WIFI_UNDER_B_MODE, + BTC_GET_BL_EXT_SWITCH, + + /* type s4Byte */ + BTC_GET_S4_WIFI_RSSI, + BTC_GET_S4_HS_RSSI, + + /* type u32 */ + BTC_GET_U4_WIFI_BW, + BTC_GET_U4_WIFI_TRAFFIC_DIRECTION, + BTC_GET_U4_WIFI_FW_VER, + BTC_GET_U4_BT_PATCH_VER, + + /* type u1Byte */ + BTC_GET_U1_WIFI_DOT11_CHNL, + BTC_GET_U1_WIFI_CENTRAL_CHNL, + BTC_GET_U1_WIFI_HS_CHNL, + BTC_GET_U1_MAC_PHY_MODE, + + /* for 1Ant */ + BTC_GET_U1_LPS_MODE, + BTC_GET_BL_BT_SCO_BUSY, + + /* for test mode */ + BTC_GET_DRIVER_TEST_CFG, + BTC_GET_MAX +}; + + +enum btc_set_type { + /* type bool */ + BTC_SET_BL_BT_DISABLE, + BTC_SET_BL_BT_TRAFFIC_BUSY, + BTC_SET_BL_BT_LIMITED_DIG, + BTC_SET_BL_FORCE_TO_ROAM, + BTC_SET_BL_TO_REJ_AP_AGG_PKT, + BTC_SET_BL_BT_CTRL_AGG_SIZE, + BTC_SET_BL_INC_SCAN_DEV_NUM, + + /* type u1Byte */ + BTC_SET_U1_RSSI_ADJ_VAL_FOR_AGC_TABLE_ON, + BTC_SET_U1_RSSI_ADJ_VAL_FOR_1ANT_COEX_TYPE, + BTC_SET_UI_SCAN_SIG_COMPENSATION, + BTC_SET_U1_AGG_BUF_SIZE, + + /* type trigger some action */ + BTC_SET_ACT_GET_BT_RSSI, + BTC_SET_ACT_AGGREGATE_CTRL, + + /********* for 1Ant **********/ + /* type bool */ + BTC_SET_BL_BT_SCO_BUSY, + /* type u1Byte */ + BTC_SET_U1_1ANT_LPS, + BTC_SET_U1_1ANT_RPWM, + /* type trigger some action */ + BTC_SET_ACT_LEAVE_LPS, + BTC_SET_ACT_ENTER_LPS, + BTC_SET_ACT_NORMAL_LPS, + BTC_SET_ACT_INC_FORCE_EXEC_PWR_CMD_CNT, + BTC_SET_ACT_DISABLE_LOW_POWER, + BTC_SET_ACT_UPDATE_ra_mask, + BTC_SET_ACT_SEND_MIMO_PS, + /* BT Coex related */ + BTC_SET_ACT_CTRL_BT_INFO, + BTC_SET_ACT_CTRL_BT_COEX, + /***************************/ + BTC_SET_MAX +}; + +enum btc_dbg_disp_type { + BTC_DBG_DISP_COEX_STATISTICS = 0x0, + BTC_DBG_DISP_BT_LINK_INFO = 0x1, + BTC_DBG_DISP_BT_FW_VER = 0x2, + BTC_DBG_DISP_FW_PWR_MODE_CMD = 0x3, + BTC_DBG_DISP_MAX +}; + +enum btc_notify_type_ips { + BTC_IPS_LEAVE = 0x0, + BTC_IPS_ENTER = 0x1, + BTC_IPS_MAX +}; + +enum btc_notify_type_lps { + BTC_LPS_DISABLE = 0x0, + BTC_LPS_ENABLE = 0x1, + BTC_LPS_MAX +}; + +enum btc_notify_type_scan { + BTC_SCAN_FINISH = 0x0, + BTC_SCAN_START = 0x1, + BTC_SCAN_MAX +}; + +enum btc_notify_type_associate { + BTC_ASSOCIATE_FINISH = 0x0, + BTC_ASSOCIATE_START = 0x1, + BTC_ASSOCIATE_MAX +}; + +enum btc_notify_type_media_status { + BTC_MEDIA_DISCONNECT = 0x0, + BTC_MEDIA_CONNECT = 0x1, + BTC_MEDIA_MAX +}; + +enum btc_notify_type_special_packet { + BTC_PACKET_UNKNOWN = 0x0, + BTC_PACKET_DHCP = 0x1, + BTC_PACKET_ARP = 0x2, + BTC_PACKET_EAPOL = 0x3, + BTC_PACKET_MAX +}; + +enum btc_notify_type_stack_operation { + BTC_STACK_OP_NONE = 0x0, + BTC_STACK_OP_INQ_PAGE_PAIR_START = 0x1, + BTC_STACK_OP_INQ_PAGE_PAIR_FINISH = 0x2, + BTC_STACK_OP_MAX +}; + + +typedef u8 (*bfp_btc_r1)(void *btc_context, u32 reg_addr); + +typedef u16 (*bfp_btc_r2)(void *btc_context, u32 reg_addr); + +typedef u32 (*bfp_btc_r4)(void *btc_context, u32 reg_addr); + +typedef void (*bfp_btc_w1)(void *btc_context, u32 reg_addr, u8 data); + +typedef void (*bfp_btc_w1_bit_mak)(void *btc_context, u32 reg_addr, + u32 bit_mask, u8 data1b); + +typedef void (*bfp_btc_w2)(void *btc_context, u32 reg_addr, u16 data); + +typedef void (*bfp_btc_w4)(void *btc_context, u32 reg_addr, u32 data); + +typedef void (*bfp_btc_wr_1byte_bit_mask)(void *btc_context, u32 reg_addr, + u8 bit_mask, u8 data); + +typedef void (*bfp_btc_set_bb_reg)(void *btc_context, u32 reg_addr, + u32 bit_mask, u32 data); + +typedef u32 (*bfp_btc_get_bb_reg)(void *btc_context, u32 reg_addr, + u32 bit_mask); + +typedef void (*bfp_btc_set_rf_reg)(void *btc_context, u8 rf_path, u32 reg_addr, + u32 bit_mask, u32 data); + +typedef u32 (*bfp_btc_get_rf_reg)(void *btc_context, u8 rf_path, + u32 reg_addr, u32 bit_mask); + +typedef void (*bfp_btc_fill_h2c)(void *btc_context, u8 element_id, + u32 cmd_len, u8 *cmd_buffer); + +typedef bool (*bfp_btc_get)(void *btcoexist, u8 get_type, void *out_buf); + +typedef bool (*bfp_btc_set)(void *btcoexist, u8 set_type, void *in_buf); + +typedef void (*bfp_btc_disp_dbg_msg)(void *btcoexist, u8 disp_type); + +struct btc_bt_info { + bool bt_disabled; + u8 rssi_adjust_for_agc_table_on; + u8 rssi_adjust_for_1ant_coex_type; + bool bt_busy; + u8 agg_buf_size; + bool limited_dig; + bool reject_agg_pkt; + bool b_bt_ctrl_buf_size; + bool increase_scan_dev_num; + u16 bt_hci_ver; + u16 bt_real_fw_ver; + u8 bt_fw_ver; + + /* the following is for 1Ant solution */ + bool bt_ctrl_lps; + bool bt_pwr_save_mode; + bool bt_lps_on; + bool force_to_roam; + u8 force_exec_pwr_cmd_cnt; + u8 lps_1ant; + u8 rpwm_1ant; + u32 ra_mask; +}; + +struct btc_stack_info { + bool profile_notified; + u16 hci_version; /* stack hci version */ + u8 num_of_link; + bool bt_link_exist; + bool sco_exist; + bool acl_exist; + bool a2dp_exist; + bool hid_exist; + u8 num_of_hid; + bool pan_exist; + bool unknown_acl_exist; + char min_bt_rssi; +}; + +struct btc_statistics { + u32 cnt_bind; + u32 cnt_init_hw_config; + u32 cnt_init_coex_dm; + u32 cnt_ips_notify; + u32 cnt_lps_notify; + u32 cnt_scan_notify; + u32 cnt_connect_notify; + u32 cnt_media_status_notify; + u32 cnt_special_packet_notify; + u32 cnt_bt_info_notify; + u32 cnt_periodical; + u32 cnt_stack_operation_notify; + u32 cnt_dbg_ctrl; +}; + +struct btc_bt_link_info { + bool bt_link_exist; + bool sco_exist; + bool sco_only; + bool a2dp_exist; + bool a2dp_only; + bool hid_exist; + bool hid_only; + bool pan_exist; + bool pan_only; +}; + +enum btc_antenna_pos { + BTC_ANTENNA_AT_MAIN_PORT = 0x1, + BTC_ANTENNA_AT_AUX_PORT = 0x2, +}; + +struct btc_coexist { + /* make sure only one adapter can bind the data context */ + bool binded; + /* default adapter */ + void *adapter; + struct btc_board_info board_info; + /* some bt info referenced by non-bt module */ + struct btc_bt_info bt_info; + struct btc_stack_info stack_info; + enum btc_chip_interface chip_interface; + struct btc_bt_link_info bt_link_info; + + bool initilized; + bool stop_coex_dm; + bool manual_control; + u8 *cli_buf; + struct btc_statistics statistics; + u8 pwr_mode_val[10]; + + /* function pointers - io related */ + bfp_btc_r1 btc_read_1byte; + bfp_btc_w1 btc_write_1byte; + bfp_btc_w1_bit_mak btc_write_1byte_bitmask; + bfp_btc_r2 btc_read_2byte; + bfp_btc_w2 btc_write_2byte; + bfp_btc_r4 btc_read_4byte; + bfp_btc_w4 btc_write_4byte; + + bfp_btc_set_bb_reg btc_set_bb_reg; + bfp_btc_get_bb_reg btc_get_bb_reg; + + + bfp_btc_set_rf_reg btc_set_rf_reg; + bfp_btc_get_rf_reg btc_get_rf_reg; + + bfp_btc_fill_h2c btc_fill_h2c; + + bfp_btc_disp_dbg_msg btc_disp_dbg_msg; + + bfp_btc_get btc_get; + bfp_btc_set btc_set; +}; + +bool halbtc_is_wifi_uplink(struct rtl_priv *adapter); + +extern struct btc_coexist gl_bt_coexist; + +bool exhalbtc_initlize_variables(struct rtl_priv *adapter); +void exhalbtc_init_hw_config(struct btc_coexist *btcoexist); +void exhalbtc_init_coex_dm(struct btc_coexist *btcoexist); +void exhalbtc_ips_notify(struct btc_coexist *btcoexist, u8 type); +void exhalbtc_lps_notify(struct btc_coexist *btcoexist, u8 type); +void exhalbtc_scan_notify(struct btc_coexist *btcoexist, u8 type); +void exhalbtc_connect_notify(struct btc_coexist *btcoexist, u8 action); +void exhalbtc_mediastatus_notify(struct btc_coexist *btcoexist, + enum _RT_MEDIA_STATUS media_status); +void exhalbtc_special_packet_notify(struct btc_coexist *btcoexist, u8 pkt_type); +void exhalbtc_bt_info_notify(struct btc_coexist *btcoexist, u8 *tmp_buf, + u8 length); +void exhalbtc_stack_operation_notify(struct btc_coexist *btcoexist, u8 type); +void exhalbtc_halt_notify(struct btc_coexist *btcoexist); +void exhalbtc_pnp_notify(struct btc_coexist *btcoexist, u8 pnp_state); +void exhalbtc_periodical(struct btc_coexist *btcoexist); +void exhalbtc_dbg_control(struct btc_coexist *btcoexist, u8 code, u8 len, + u8 *data); +void exhalbtc_stack_update_profile_info(void); +void exhalbtc_set_hci_version(u16 hci_version); +void exhalbtc_set_bt_patch_version(u16 bt_hci_version, u16 bt_patch_version); +void exhalbtc_update_min_bt_rssi(char bt_rssi); +void exhalbtc_set_bt_exist(bool bt_exist); +void exhalbtc_set_chip_type(u8 chip_type); +void exhalbtc_set_ant_num(u8 type, u8 ant_num); +void exhalbtc_display_bt_coex_info(struct btc_coexist *btcoexist); +void exhalbtc_signal_compensation(struct btc_coexist *btcoexist, + u8 *rssi_wifi, u8 *rssi_bt); +void exhalbtc_lps_leave(struct btc_coexist *btcoexist); +void exhalbtc_low_wifi_traffic_notify(struct btc_coexist *btcoexist); + +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/btcoexist/rtl_btc.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/btcoexist/rtl_btc.c @@ -0,0 +1,218 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2013 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "rtl_btc.h" +#include "halbt_precomp.h" + +#include +#include + +static struct rtl_btc_ops rtl_btc_operation = { + .btc_init_variables = rtl_btc_init_variables, + .btc_init_hal_vars = rtl_btc_init_hal_vars, + .btc_init_hw_config = rtl_btc_init_hw_config, + .btc_ips_notify = rtl_btc_ips_notify, + .btc_scan_notify = rtl_btc_scan_notify, + .btc_connect_notify = rtl_btc_connect_notify, + .btc_mediastatus_notify = rtl_btc_mediastatus_notify, + .btc_periodical = rtl_btc_periodical, + .btc_halt_notify = rtl_btc_halt_notify, + .btc_btinfo_notify = rtl_btc_btinfo_notify, + .btc_is_limited_dig = rtl_btc_is_limited_dig, + .btc_is_disable_edca_turbo = rtl_btc_is_disable_edca_turbo, + .btc_is_bt_disabled = rtl_btc_is_bt_disabled, +}; + +void rtl_btc_init_variables(struct rtl_priv *rtlpriv) +{ + exhalbtc_initlize_variables(rtlpriv); +} + +void rtl_btc_init_hal_vars(struct rtl_priv *rtlpriv) +{ + u8 ant_num; + u8 bt_exist; + u8 bt_type; + + ant_num = rtl_get_hwpg_ant_num(rtlpriv); + RT_TRACE(rtlpriv, COMP_INIT, DBG_DMESG, + "%s, antNum is %d\n", __func__, ant_num); + + bt_exist = rtl_get_hwpg_bt_exist(rtlpriv); + RT_TRACE(rtlpriv, COMP_INIT, DBG_DMESG, + "%s, bt_exist is %d\n", __func__, bt_exist); + exhalbtc_set_bt_exist(bt_exist); + + bt_type = rtl_get_hwpg_bt_type(rtlpriv); + RT_TRACE(rtlpriv, COMP_INIT, DBG_DMESG, "%s, bt_type is %d\n", + __func__, bt_type); + exhalbtc_set_chip_type(bt_type); + + exhalbtc_set_ant_num(BT_COEX_ANT_TYPE_PG, ant_num); +} + +void rtl_btc_init_hw_config(struct rtl_priv *rtlpriv) +{ + exhalbtc_init_hw_config(&gl_bt_coexist); + exhalbtc_init_coex_dm(&gl_bt_coexist); +} + +void rtl_btc_ips_notify(struct rtl_priv *rtlpriv, u8 type) +{ + exhalbtc_ips_notify(&gl_bt_coexist, type); +} + +void rtl_btc_scan_notify(struct rtl_priv *rtlpriv, u8 scantype) +{ + exhalbtc_scan_notify(&gl_bt_coexist, scantype); +} + +void rtl_btc_connect_notify(struct rtl_priv *rtlpriv, u8 action) +{ + exhalbtc_connect_notify(&gl_bt_coexist, action); +} + +void rtl_btc_mediastatus_notify(struct rtl_priv *rtlpriv, + enum _RT_MEDIA_STATUS mstatus) +{ + exhalbtc_mediastatus_notify(&gl_bt_coexist, mstatus); +} + +void rtl_btc_periodical(struct rtl_priv *rtlpriv) +{ + exhalbtc_periodical(&gl_bt_coexist); +} + +void rtl_btc_halt_notify(void) +{ + exhalbtc_halt_notify(&gl_bt_coexist); +} + +void rtl_btc_btinfo_notify(struct rtl_priv *rtlpriv, u8 *tmp_buf, u8 length) +{ + exhalbtc_bt_info_notify(&gl_bt_coexist, tmp_buf, length); +} + +bool rtl_btc_is_limited_dig(struct rtl_priv *rtlpriv) +{ + return gl_bt_coexist.bt_info.limited_dig; +} + +bool rtl_btc_is_disable_edca_turbo(struct rtl_priv *rtlpriv) +{ + bool bt_change_edca = false; + u32 cur_edca_val; + u32 edca_bt_hs_uplink = 0x5ea42b, edca_bt_hs_downlink = 0x5ea42b; + u32 edca_hs; + u32 edca_addr = 0x504; + + cur_edca_val = rtl_read_dword(rtlpriv, edca_addr); + if (halbtc_is_wifi_uplink(rtlpriv)) { + if (cur_edca_val != edca_bt_hs_uplink) { + edca_hs = edca_bt_hs_uplink; + bt_change_edca = true; + } + } else { + if (cur_edca_val != edca_bt_hs_downlink) { + edca_hs = edca_bt_hs_downlink; + bt_change_edca = true; + } + } + + if (bt_change_edca) + rtl_write_dword(rtlpriv, edca_addr, edca_hs); + + return true; +} + +bool rtl_btc_is_bt_disabled(struct rtl_priv *rtlpriv) +{ + if (gl_bt_coexist.bt_info.bt_disabled) + return true; + else + return false; +} + +struct rtl_btc_ops *rtl_btc_get_ops_pointer(void) +{ + return &rtl_btc_operation; +} +EXPORT_SYMBOL(rtl_btc_get_ops_pointer); + +u8 rtl_get_hwpg_ant_num(struct rtl_priv *rtlpriv) +{ + u8 num; + + if (rtlpriv->btcoexist.btc_info.ant_num == ANT_X2) + num = 2; + else + num = 1; + + return num; +} + +enum _RT_MEDIA_STATUS mgnt_link_status_query(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + enum _RT_MEDIA_STATUS m_status = RT_MEDIA_DISCONNECT; + + u8 bibss = (mac->opmode == NL80211_IFTYPE_ADHOC) ? 1 : 0; + + if (bibss || rtlpriv->mac80211.link_state >= MAC80211_LINKED) + m_status = RT_MEDIA_CONNECT; + + return m_status; +} + +u8 rtl_get_hwpg_bt_exist(struct rtl_priv *rtlpriv) +{ + return rtlpriv->btcoexist.btc_info.btcoexist; +} + +u8 rtl_get_hwpg_bt_type(struct rtl_priv *rtlpriv) +{ + return rtlpriv->btcoexist.btc_info.bt_type; +} + +MODULE_AUTHOR("Page He "); +MODULE_AUTHOR("Realtek WlanFAE "); +MODULE_AUTHOR("Larry Finger "); +MODULE_LICENSE("GPL"); +MODULE_DESCRIPTION("Realtek 802.11n PCI wireless core"); + +static int __init rtl_btcoexist_module_init(void) +{ + return 0; +} + +static void __exit rtl_btcoexist_module_exit(void) +{ + return; +} + +module_init(rtl_btcoexist_module_init); +module_exit(rtl_btcoexist_module_exit); --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/btcoexist/rtl_btc.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/btcoexist/rtl_btc.h @@ -0,0 +1,52 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL_BTC_H__ +#define __RTL_BTC_H__ + +#include "halbt_precomp.h" + +void rtl_btc_init_variables(struct rtl_priv *rtlpriv); +void rtl_btc_init_hal_vars(struct rtl_priv *rtlpriv); +void rtl_btc_init_hw_config(struct rtl_priv *rtlpriv); +void rtl_btc_ips_notify(struct rtl_priv *rtlpriv, u8 type); +void rtl_btc_scan_notify(struct rtl_priv *rtlpriv, u8 scantype); +void rtl_btc_connect_notify(struct rtl_priv *rtlpriv, u8 action); +void rtl_btc_mediastatus_notify(struct rtl_priv *rtlpriv, + enum _RT_MEDIA_STATUS mstatus); +void rtl_btc_periodical(struct rtl_priv *rtlpriv); +void rtl_btc_halt_notify(void); +void rtl_btc_btinfo_notify(struct rtl_priv *rtlpriv, u8 *tmpbuf, u8 length); +bool rtl_btc_is_limited_dig(struct rtl_priv *rtlpriv); +bool rtl_btc_is_disable_edca_turbo(struct rtl_priv *rtlpriv); +bool rtl_btc_is_bt_disabled(struct rtl_priv *rtlpriv); + +struct rtl_btc_ops *rtl_btc_get_ops_pointer(void); + +u8 rtl_get_hwpg_ant_num(struct rtl_priv *rtlpriv); +u8 rtl_get_hwpg_bt_exist(struct rtl_priv *rtlpriv); +u8 rtl_get_hwpg_bt_type(struct rtl_priv *rtlpriv); +enum _RT_MEDIA_STATUS mgnt_link_status_query(struct ieee80211_hw *hw); + +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/core.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/core.c @@ -46,10 +46,20 @@ "Firmware callback routine entered!\n"); complete(&rtlpriv->firmware_loading_complete); if (!firmware) { + if (rtlpriv->cfg->alt_fw_name) { + err = request_firmware(&firmware, + rtlpriv->cfg->alt_fw_name, + rtlpriv->io.dev); + pr_info("Loading alternative firmware %s\n", + rtlpriv->cfg->alt_fw_name); + if (!err) + goto found_alt; + } pr_err("Firmware %s not available\n", rtlpriv->cfg->fw_name); rtlpriv->max_fw_size = 0; return; } +found_alt: if (firmware->size > rtlpriv->max_fw_size) { RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "Firmware is too big!\n"); @@ -727,6 +737,11 @@ rtlpriv->cfg->ops->linked_set_reg(hw); rcu_read_lock(); sta = ieee80211_find_sta(vif, (u8 *)bss_conf->bssid); + if (!sta) { + pr_err("ieee80211_find_sta returned NULL\n"); + rcu_read_unlock(); + goto out; + } if (vif->type == NL80211_IFTYPE_STATION && sta) rtlpriv->cfg->ops->update_rate_tbl(hw, sta, 0); @@ -881,7 +896,7 @@ mac->basic_rates = basic_rates; rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_BASIC_RATE, - (u8 *) (&basic_rates)); + (u8 *)(&basic_rates)); } rcu_read_unlock(); } @@ -895,6 +910,11 @@ if (bss_conf->assoc) { if (ppsc->fwctrl_lps) { u8 mstatus = RT_MEDIA_CONNECT; + u8 keep_alive = 10; + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_KEEP_ALIVE, + (u8 *)(&keep_alive)); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_H2C_FW_JOINBSSRPT, &mstatus); --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/pci.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/pci.c @@ -1068,7 +1068,7 @@ mac->current_ampdu_factor = 3; /*QOS*/ - rtlpci->acm_method = eAcmWay2_SW; + rtlpci->acm_method = EACMWAY2_SW; /*task */ tasklet_init(&rtlpriv->works.irq_tasklet, @@ -1843,6 +1843,65 @@ return true; } +static int rtl_pci_intr_mode_msi(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(pcipriv); + int ret; + + ret = pci_enable_msi(rtlpci->pdev); + if (ret < 0) + return ret; + + ret = request_irq(rtlpci->pdev->irq, &_rtl_pci_interrupt, + IRQF_SHARED, KBUILD_MODNAME, hw); + if (ret < 0) { + pci_disable_msi(rtlpci->pdev); + return ret; + } + + rtlpci->using_msi = true; + + RT_TRACE(rtlpriv, COMP_INIT|COMP_INTR, DBG_DMESG, + "MSI Interrupt Mode!\n"); + return 0; +} + +static int rtl_pci_intr_mode_legacy(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(pcipriv); + int ret; + + ret = request_irq(rtlpci->pdev->irq, &_rtl_pci_interrupt, + IRQF_SHARED, KBUILD_MODNAME, hw); + if (ret < 0) + return ret; + + rtlpci->using_msi = false; + RT_TRACE(rtlpriv, COMP_INIT|COMP_INTR, DBG_DMESG, + "Pin-based Interrupt Mode!\n"); + return 0; +} + +static int rtl_pci_intr_mode_decide(struct ieee80211_hw *hw) +{ + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(pcipriv); + int ret; + + if (rtlpci->msi_support) { + ret = rtl_pci_intr_mode_msi(hw); + if (ret < 0) + ret = rtl_pci_intr_mode_legacy(hw); + } else { + ret = rtl_pci_intr_mode_legacy(hw); + } + return ret; +} + int rtl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) { @@ -1985,8 +2044,7 @@ } rtlpci = rtl_pcidev(pcipriv); - err = request_irq(rtlpci->pdev->irq, &_rtl_pci_interrupt, - IRQF_SHARED, KBUILD_MODNAME, hw); + err = rtl_pci_intr_mode_decide(hw); if (err) { RT_TRACE(rtlpriv, COMP_INIT, DBG_DMESG, "%s: failed to register IRQ handler\n", @@ -2054,6 +2112,9 @@ rtlpci->irq_alloc = 0; } + if (rtlpci->using_msi) + pci_disable_msi(rtlpci->pdev); + list_del(&rtlpriv->list); if (rtlpriv->io.pci_mem_start != 0) { pci_iounmap(pdev, (void __iomem *)rtlpriv->io.pci_mem_start); --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/pci.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/pci.h @@ -199,6 +199,10 @@ u16 shortretry_limit; u16 longretry_limit; + + /* MSI support */ + bool msi_support; + bool using_msi; }; struct mp_adapter { --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/ps.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/ps.c @@ -48,7 +48,7 @@ /*<2> Enable Adapter */ if (rtlpriv->cfg->ops->hw_init(hw)) - return 1; + return false; RT_CLEAR_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_HALT_NIC); /*<3> Enable Interrupt */ --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8188ee/dm.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8188ee/dm.c @@ -235,7 +235,7 @@ u8 pwr_val = 0; u8 cck_base = rtldm->swing_idx_cck_base; u8 cck_val = rtldm->swing_idx_cck; - u8 ofdm_base = rtldm->swing_idx_ofdm_base; + u8 ofdm_base = rtldm->swing_idx_ofdm_base[0]; u8 ofdm_val = rtlpriv->dm.swing_idx_ofdm[RF90_PATH_A]; if (type == 0) { @@ -726,7 +726,7 @@ static u64 last_rx; long tmp_entry_max_pwdb = 0, tmp_entry_min_pwdb = 0xff; - if (rtlhal->oem_id == RT_CID_819x_HP) { + if (rtlhal->oem_id == RT_CID_819X_HP) { u64 cur_txok_cnt = 0; u64 cur_rxok_cnt = 0; cur_txok_cnt = rtlpriv->stats.txbytesunicast - last_txok; @@ -912,7 +912,7 @@ for (i = 0; i < OFDM_TABLE_LENGTH; i++) { if (ele_d == (ofdmswing_table[i] & MASKOFDM_D)) { ofdm_old[0] = (u8) i; - rtldm->swing_idx_ofdm_base = (u8)i; + rtldm->swing_idx_ofdm_base[0] = (u8)i; RT_TRACE(rtlpriv, COMP_POWER_TRACKING, DBG_LOUD, "Initial pathA ele_d reg0x%x = 0x%lx, ofdm_index = 0x%x\n", ROFDM0_XATXIQIMBAL, @@ -1078,7 +1078,7 @@ rtldm->swing_flag_ofdm = true; } - if (rtldm->swing_idx_cck != rtldm->swing_idx_cck) { + if (rtldm->swing_idx_cck_cur != rtldm->swing_idx_cck) { rtldm->swing_idx_cck_cur = rtldm->swing_idx_cck; rtldm->swing_flag_cck = true; } --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c @@ -509,7 +509,7 @@ u8 e_aci = *((u8 *)val); rtl88e_dm_init_edca_turbo(hw); - if (rtlpci->acm_method != eAcmWay2_SW) + if (rtlpci->acm_method != EACMWAY2_SW) rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_ACM_CTRL, (u8 *)(&e_aci)); break; } @@ -1025,9 +1025,20 @@ bool rtstatus = true; int err = 0; u8 tmp_u1b, u1byte; + unsigned long flags; RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "Rtl8188EE hw init\n"); rtlpriv->rtlhal.being_init_adapter = true; + /* As this function can take a very long time (up to 350 ms) + * and can be called with irqs disabled, reenable the irqs + * to let the other devices continue being serviced. + * + * It is safe doing so since our own interrupts will only be enabled + * in a subsequent step. + */ + local_save_flags(flags); + local_irq_enable(); + rtlpriv->intf_ops->disable_aspm(hw); tmp_u1b = rtl_read_byte(rtlpriv, REG_SYS_CLKR+1); @@ -1043,7 +1054,7 @@ if (rtstatus != true) { RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "Init MAC failed\n"); err = 1; - return err; + goto exit; } err = rtl88e_download_fw(hw, false); @@ -1051,8 +1062,7 @@ RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, "Failed to download FW. Init HW without FW now..\n"); err = 1; - rtlhal->fw_ready = false; - return err; + goto exit; } else { rtlhal->fw_ready = true; } @@ -1097,7 +1107,7 @@ if (ppsc->rfpwr_state == ERFON) { if ((rtlefuse->antenna_div_type == CGCS_RX_HW_ANTDIV) || ((rtlefuse->antenna_div_type == CG_TRX_HW_ANTDIV) && - (rtlhal->oem_id == RT_CID_819x_HP))) { + (rtlhal->oem_id == RT_CID_819X_HP))) { rtl88e_phy_set_rfpath_switch(hw, true); rtlpriv->dm.fat_table.rx_idle_ant = MAIN_ANT; } else { @@ -1135,10 +1145,12 @@ } rtl_write_byte(rtlpriv, REG_NAV_CTRL+2, ((30000+127)/128)); rtl88e_dm_init(hw); +exit: + local_irq_restore(flags); rtlpriv->rtlhal.being_init_adapter = false; RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "end of Rtl8188EE hw init %x\n", err); - return 0; + return err; } static enum version_8188e _rtl88ee_read_chip_version(struct ieee80211_hw *hw) @@ -1872,15 +1884,15 @@ case EEPROM_CID_DEFAULT: if (rtlefuse->eeprom_did == 0x8179) { if (rtlefuse->eeprom_svid == 0x1025) { - rtlhal->oem_id = RT_CID_819x_Acer; + rtlhal->oem_id = RT_CID_819X_ACER; } else if ((rtlefuse->eeprom_svid == 0x10EC && rtlefuse->eeprom_smid == 0x0179) || (rtlefuse->eeprom_svid == 0x17AA && rtlefuse->eeprom_smid == 0x0179)) { - rtlhal->oem_id = RT_CID_819x_Lenovo; + rtlhal->oem_id = RT_CID_819X_LENOVO; } else if (rtlefuse->eeprom_svid == 0x103c && rtlefuse->eeprom_smid == 0x197d) { - rtlhal->oem_id = RT_CID_819x_HP; + rtlhal->oem_id = RT_CID_819X_HP; } else { rtlhal->oem_id = RT_CID_DEFAULT; } @@ -1892,7 +1904,7 @@ rtlhal->oem_id = RT_CID_TOSHIBA; break; case EEPROM_CID_QMI: - rtlhal->oem_id = RT_CID_819x_QMI; + rtlhal->oem_id = RT_CID_819X_QMI; break; case EEPROM_CID_WHQL: default: @@ -1911,14 +1923,14 @@ pcipriv->ledctl.led_opendrain = true; switch (rtlhal->oem_id) { - case RT_CID_819x_HP: + case RT_CID_819X_HP: pcipriv->ledctl.led_opendrain = true; break; - case RT_CID_819x_Lenovo: + case RT_CID_819X_LENOVO: case RT_CID_DEFAULT: case RT_CID_TOSHIBA: case RT_CID_CCX: - case RT_CID_819x_Acer: + case RT_CID_819X_ACER: case RT_CID_WHQL: default: break; --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8188ee/phy.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8188ee/phy.c @@ -1002,7 +1002,7 @@ } } - if (rtlhal->oem_id == RT_CID_819x_HP) + if (rtlhal->oem_id == RT_CID_819X_HP) rtl88_config_s(hw, 0x52, 0x7E4BD); break; --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8188ee/trx.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8188ee/trx.c @@ -452,7 +452,7 @@ /* During testing, hdr was NULL */ return false; } - if ((ieee80211_is_robust_mgmt_frame(hdr)) && + if ((_ieee80211_is_robust_mgmt_frame(hdr)) && (ieee80211_has_protected(hdr->frame_control))) rx_status->flag &= ~RX_FLAG_DECRYPTED; else --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c @@ -158,6 +158,42 @@ {0x09, 0x08, 0x07, 0x04, 0x00, 0x00, 0x00, 0x00} }; +static u32 power_index_reg[6] = {0xc90, 0xc91, 0xc92, 0xc98, 0xc99, 0xc9a}; + +void dm_restorepowerindex(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 index; + + for (index = 0; index < 6; index++) + rtl_write_byte(rtlpriv, power_index_reg[index], + rtlpriv->dm.powerindex_backup[index]); +} +EXPORT_SYMBOL_GPL(dm_restorepowerindex); + +void dm_writepowerindex(struct ieee80211_hw *hw, u8 value) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 index; + + for (index = 0; index < 6; index++) + rtl_write_byte(rtlpriv, power_index_reg[index], value); +} +EXPORT_SYMBOL_GPL(dm_writepowerindex); + +void dm_savepowerindex(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 index; + u8 tmp; + + for (index = 0; index < 6; index++) { + tmp = rtl_read_byte(rtlpriv, power_index_reg[index]); + rtlpriv->dm.powerindex_backup[index] = tmp; + } +} +EXPORT_SYMBOL_GPL(dm_savepowerindex); + static void rtl92c_dm_diginit(struct ieee80211_hw *hw) { struct rtl_priv *rtlpriv = rtl_priv(hw); @@ -180,7 +216,12 @@ dm_digtable->back_range_max = DM_DIG_BACKOFF_MAX; dm_digtable->back_range_min = DM_DIG_BACKOFF_MIN; dm_digtable->pre_cck_pd_state = CCK_PD_STAGE_MAX; - dm_digtable->cur_cck_pd_state = CCK_PD_STAGE_MAX; + dm_digtable->cur_cck_pd_state = CCK_PD_STAGE_LowRssi; + + dm_digtable->forbidden_igi = DM_DIG_MIN; + dm_digtable->large_fa_hit = 0; + dm_digtable->recover_cnt = 0; + dm_digtable->dig_dynamic_min = 0x25; } static u8 rtl92c_dm_initial_gain_min_pwdb(struct ieee80211_hw *hw) @@ -206,7 +247,9 @@ rssi_val_min = rtlpriv->dm.entry_min_undec_sm_pwdb; } - return (u8) rssi_val_min; + if (rssi_val_min > 100) + rssi_val_min = 100; + return (u8)rssi_val_min; } static void rtl92c_dm_false_alarm_counter_statistics(struct ieee80211_hw *hw) @@ -224,9 +267,17 @@ ret_value = rtl_get_bbreg(hw, ROFDM_PHYCOUNTER3, MASKDWORD); falsealm_cnt->cnt_mcs_fail = (ret_value & 0xffff); + + ret_value = rtl_get_bbreg(hw, ROFDM0_FRAMESYNC, MASKDWORD); + falsealm_cnt->cnt_fast_fsync_fail = (ret_value & 0xffff); + falsealm_cnt->cnt_sb_search_fail = ((ret_value & 0xffff0000) >> 16); + falsealm_cnt->cnt_ofdm_fail = falsealm_cnt->cnt_parity_fail + - falsealm_cnt->cnt_rate_illegal + - falsealm_cnt->cnt_crc8_fail + falsealm_cnt->cnt_mcs_fail; + falsealm_cnt->cnt_rate_illegal + + falsealm_cnt->cnt_crc8_fail + + falsealm_cnt->cnt_mcs_fail + + falsealm_cnt->cnt_fast_fsync_fail + + falsealm_cnt->cnt_sb_search_fail; rtl_set_bbreg(hw, RCCK0_FALSEALARMREPORT, BIT(14), 1); ret_value = rtl_get_bbreg(hw, RCCK0_FACOUNTERLOWER, MASKBYTE0); @@ -271,12 +322,14 @@ value_igi++; else if (rtlpriv->falsealm_cnt.cnt_all >= DM_DIG_FA_TH2) value_igi += 2; + if (value_igi > DM_DIG_FA_UPPER) value_igi = DM_DIG_FA_UPPER; else if (value_igi < DM_DIG_FA_LOWER) value_igi = DM_DIG_FA_LOWER; + if (rtlpriv->falsealm_cnt.cnt_all > 10000) - value_igi = 0x32; + value_igi = DM_DIG_FA_UPPER; dm_digtable->cur_igvalue = value_igi; rtl92c_dm_write_dig(hw); @@ -286,32 +339,80 @@ { struct rtl_priv *rtlpriv = rtl_priv(hw); struct dig_t *digtable = &rtlpriv->dm_digtable; + u32 isbt; - if (rtlpriv->falsealm_cnt.cnt_all > digtable->fa_highthresh) { - if ((digtable->back_val - 2) < digtable->back_range_min) - digtable->back_val = digtable->back_range_min; - else - digtable->back_val -= 2; - } else if (rtlpriv->falsealm_cnt.cnt_all < digtable->fa_lowthresh) { - if ((digtable->back_val + 2) > digtable->back_range_max) - digtable->back_val = digtable->back_range_max; - else - digtable->back_val += 2; + /* modify DIG lower bound, deal with abnorally large false alarm */ + if (rtlpriv->falsealm_cnt.cnt_all > 10000) { + digtable->large_fa_hit++; + if (digtable->forbidden_igi < digtable->cur_igvalue) { + digtable->forbidden_igi = digtable->cur_igvalue; + digtable->large_fa_hit = 1; + } + + if (digtable->large_fa_hit >= 3) { + if ((digtable->forbidden_igi + 1) > + digtable->rx_gain_max) + digtable->rx_gain_min = digtable->rx_gain_max; + else + digtable->rx_gain_min = (digtable->forbidden_igi + 1); + digtable->recover_cnt = 3600; /* 3600=2hr */ + } + } else { + /* Recovery mechanism for IGI lower bound */ + if (digtable->recover_cnt != 0) { + digtable->recover_cnt--; + } else { + if (digtable->large_fa_hit == 0) { + if ((digtable->forbidden_igi-1) < DM_DIG_MIN) { + digtable->forbidden_igi = DM_DIG_MIN; + digtable->rx_gain_min = DM_DIG_MIN; + } else { + digtable->forbidden_igi--; + digtable->rx_gain_min = digtable->forbidden_igi + 1; + } + } else if (digtable->large_fa_hit == 3) { + digtable->large_fa_hit = 0; + } + } } + if (rtlpriv->falsealm_cnt.cnt_all < 250) { + isbt = rtl_read_byte(rtlpriv, 0x4fd) & 0x01; - if ((digtable->rssi_val_min + 10 - digtable->back_val) > - digtable->rx_gain_max) + if (!isbt) { + if (rtlpriv->falsealm_cnt.cnt_all > + digtable->fa_lowthresh) { + if ((digtable->back_val - 2) < + digtable->back_range_min) + digtable->back_val = digtable->back_range_min; + else + digtable->back_val -= 2; + } else if (rtlpriv->falsealm_cnt.cnt_all < + digtable->fa_lowthresh) { + if ((digtable->back_val + 2) > + digtable->back_range_max) + digtable->back_val = digtable->back_range_max; + else + digtable->back_val += 2; + } + } else { + digtable->back_val = DM_DIG_BACKOFF_DEFAULT; + } + } else { + /* Adjust initial gain by false alarm */ + if (rtlpriv->falsealm_cnt.cnt_all > 1000) + digtable->cur_igvalue = digtable->pre_igvalue + 2; + else if (rtlpriv->falsealm_cnt.cnt_all > 750) + digtable->cur_igvalue = digtable->pre_igvalue + 1; + else if (rtlpriv->falsealm_cnt.cnt_all < 500) + digtable->cur_igvalue = digtable->pre_igvalue - 1; + } + + /* Check initial gain by upper/lower bound */ + if (digtable->cur_igvalue > digtable->rx_gain_max) digtable->cur_igvalue = digtable->rx_gain_max; - else if ((digtable->rssi_val_min + 10 - - digtable->back_val) < digtable->rx_gain_min) - digtable->cur_igvalue = digtable->rx_gain_min; - else - digtable->cur_igvalue = digtable->rssi_val_min + 10 - - digtable->back_val; - RT_TRACE(rtlpriv, COMP_DIG, DBG_TRACE, - "rssi_val_min = %x back_val %x\n", - digtable->rssi_val_min, digtable->back_val); + if (digtable->cur_igvalue < digtable->rx_gain_min) + digtable->cur_igvalue = digtable->rx_gain_min; rtl92c_dm_write_dig(hw); } @@ -329,7 +430,7 @@ multi_sta = true; if (!multi_sta || - dm_digtable->cursta_cstate != DIG_STA_DISCONNECT) { + dm_digtable->cursta_cstate == DIG_STA_DISCONNECT) { initialized = false; dm_digtable->dig_ext_port_stage = DIG_EXT_PORT_STAGE_MAX; return; @@ -375,7 +476,6 @@ RT_TRACE(rtlpriv, COMP_DIG, DBG_TRACE, "presta_cstate = %x, cursta_cstate = %x\n", dm_digtable->presta_cstate, dm_digtable->cursta_cstate); - if (dm_digtable->presta_cstate == dm_digtable->cursta_cstate || dm_digtable->cursta_cstate == DIG_STA_BEFORE_CONNECT || dm_digtable->cursta_cstate == DIG_STA_CONNECT) { @@ -383,6 +483,8 @@ if (dm_digtable->cursta_cstate != DIG_STA_DISCONNECT) { dm_digtable->rssi_val_min = rtl92c_dm_initial_gain_min_pwdb(hw); + if (dm_digtable->rssi_val_min > 100) + dm_digtable->rssi_val_min = 100; rtl92c_dm_ctrl_initgain_by_rssi(hw); } } else { @@ -398,11 +500,12 @@ static void rtl92c_dm_cck_packet_detection_thresh(struct ieee80211_hw *hw) { struct rtl_priv *rtlpriv = rtl_priv(hw); - struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); struct dig_t *dm_digtable = &rtlpriv->dm_digtable; if (dm_digtable->cursta_cstate == DIG_STA_CONNECT) { dm_digtable->rssi_val_min = rtl92c_dm_initial_gain_min_pwdb(hw); + if (dm_digtable->rssi_val_min > 100) + dm_digtable->rssi_val_min = 100; if (dm_digtable->pre_cck_pd_state == CCK_PD_STAGE_LowRssi) { if (dm_digtable->rssi_val_min <= 25) @@ -424,48 +527,14 @@ } if (dm_digtable->pre_cck_pd_state != dm_digtable->cur_cck_pd_state) { - if (dm_digtable->cur_cck_pd_state == CCK_PD_STAGE_LowRssi) { - if (rtlpriv->falsealm_cnt.cnt_cck_fail > 800) - dm_digtable->cur_cck_fa_state = - CCK_FA_STAGE_High; - else - dm_digtable->cur_cck_fa_state = CCK_FA_STAGE_Low; - - if (dm_digtable->pre_cck_fa_state != - dm_digtable->cur_cck_fa_state) { - if (dm_digtable->cur_cck_fa_state == - CCK_FA_STAGE_Low) - rtl_set_bbreg(hw, RCCK0_CCA, MASKBYTE2, - 0x83); - else - rtl_set_bbreg(hw, RCCK0_CCA, MASKBYTE2, - 0xcd); - - dm_digtable->pre_cck_fa_state = - dm_digtable->cur_cck_fa_state; - } - - rtl_set_bbreg(hw, RCCK0_SYSTEM, MASKBYTE1, 0x40); - - if (IS_92C_SERIAL(rtlhal->version)) - rtl_set_bbreg(hw, RCCK0_FALSEALARMREPORT, - MASKBYTE2, 0xd7); - } else { + if ((dm_digtable->cur_cck_pd_state == CCK_PD_STAGE_LowRssi) || + (dm_digtable->cur_cck_pd_state == CCK_PD_STAGE_MAX)) + rtl_set_bbreg(hw, RCCK0_CCA, MASKBYTE2, 0x83); + else rtl_set_bbreg(hw, RCCK0_CCA, MASKBYTE2, 0xcd); - rtl_set_bbreg(hw, RCCK0_SYSTEM, MASKBYTE1, 0x47); - if (IS_92C_SERIAL(rtlhal->version)) - rtl_set_bbreg(hw, RCCK0_FALSEALARMREPORT, - MASKBYTE2, 0xd3); - } dm_digtable->pre_cck_pd_state = dm_digtable->cur_cck_pd_state; } - - RT_TRACE(rtlpriv, COMP_DIG, DBG_TRACE, "CCKPDStage=%x\n", - dm_digtable->cur_cck_pd_state); - - RT_TRACE(rtlpriv, COMP_DIG, DBG_TRACE, "is92C=%x\n", - IS_92C_SERIAL(rtlhal->version)); } static void rtl92c_dm_ctrl_initgain_by_twoport(struct ieee80211_hw *hw) @@ -482,6 +551,8 @@ else dm_digtable->cursta_cstate = DIG_STA_DISCONNECT; + dm_digtable->curmultista_cstate = DIG_MULTISTA_DISCONNECT; + rtl92c_dm_initial_gain_sta(hw); rtl92c_dm_initial_gain_multi_sta(hw); rtl92c_dm_cck_packet_detection_thresh(hw); @@ -493,23 +564,26 @@ static void rtl92c_dm_dig(struct ieee80211_hw *hw) { struct rtl_priv *rtlpriv = rtl_priv(hw); - struct dig_t *dm_digtable = &rtlpriv->dm_digtable; if (rtlpriv->dm.dm_initialgain_enable == false) return; - if (dm_digtable->dig_enable_flag == false) + if (!rtlpriv->dm.dm_flag & DYNAMIC_FUNC_DIG) return; rtl92c_dm_ctrl_initgain_by_twoport(hw); - } static void rtl92c_dm_init_dynamic_txpower(struct ieee80211_hw *hw) { struct rtl_priv *rtlpriv = rtl_priv(hw); - rtlpriv->dm.dynamic_txpower_enable = false; - + if (rtlpriv->rtlhal.interface == INTF_USB && + rtlpriv->rtlhal.board_type & 0x1) { + dm_savepowerindex(hw); + rtlpriv->dm.dynamic_txpower_enable = true; + } else { + rtlpriv->dm.dynamic_txpower_enable = false; + } rtlpriv->dm.last_dtp_lvl = TXHIGHPWRLEVEL_NORMAL; rtlpriv->dm.dynamic_txhighpower_lvl = TXHIGHPWRLEVEL_NORMAL; } @@ -524,9 +598,14 @@ dm_digtable->cur_igvalue, dm_digtable->pre_igvalue, dm_digtable->back_val); - dm_digtable->cur_igvalue += 2; - if (dm_digtable->cur_igvalue > 0x3f) - dm_digtable->cur_igvalue = 0x3f; + if (rtlpriv->rtlhal.interface == INTF_USB && + !dm_digtable->dig_enable_flag) { + dm_digtable->pre_igvalue = 0x17; + return; + } + dm_digtable->cur_igvalue -= 1; + if (dm_digtable->cur_igvalue < DM_DIG_MIN) + dm_digtable->cur_igvalue = DM_DIG_MIN; if (dm_digtable->pre_igvalue != dm_digtable->cur_igvalue) { rtl_set_bbreg(hw, ROFDM0_XAAGCCORE1, 0x7f, @@ -536,11 +615,47 @@ dm_digtable->pre_igvalue = dm_digtable->cur_igvalue; } + RT_TRACE(rtlpriv, COMP_DIG, DBG_WARNING, + "dig values 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x\n", + dm_digtable->cur_igvalue, dm_digtable->pre_igvalue, + dm_digtable->rssi_val_min, dm_digtable->back_val, + dm_digtable->rx_gain_max, dm_digtable->rx_gain_min, + dm_digtable->large_fa_hit, dm_digtable->forbidden_igi); } EXPORT_SYMBOL(rtl92c_dm_write_dig); static void rtl92c_dm_pwdb_monitor(struct ieee80211_hw *hw) { + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + long tmpentry_max_pwdb = 0, tmpentry_min_pwdb = 0xff; + + if (mac->link_state != MAC80211_LINKED) + return; + + if (mac->opmode == NL80211_IFTYPE_ADHOC || + mac->opmode == NL80211_IFTYPE_AP) { + /* TODO: Handle ADHOC and AP Mode */ + } + + if (tmpentry_max_pwdb != 0) + rtlpriv->dm.entry_max_undec_sm_pwdb = tmpentry_max_pwdb; + else + rtlpriv->dm.entry_max_undec_sm_pwdb = 0; + + if (tmpentry_min_pwdb != 0xff) + rtlpriv->dm.entry_min_undec_sm_pwdb = tmpentry_min_pwdb; + else + rtlpriv->dm.entry_min_undec_sm_pwdb = 0; + +/* TODO: + * if (mac->opmode == NL80211_IFTYPE_STATION) { + * if (rtlpriv->rtlhal.fw_ready) { + * u32 param = (u32)(rtlpriv->dm.undec_sm_pwdb << 16); + * rtl8192c_set_rssi_cmd(hw, param); + * } + * } + */ } void rtl92c_dm_init_edca_turbo(struct ieee80211_hw *hw) @@ -750,6 +865,7 @@ rtlpriv->dm.ofdm_index[i] = ofdm_index_old[i]; rtlpriv->dm.cck_index = cck_index_old; } + /* Handle USB High PA boards */ delta = (thermalvalue > rtlpriv->dm.thermalvalue) ? (thermalvalue - rtlpriv->dm.thermalvalue) : @@ -1140,22 +1256,22 @@ { struct rtl_priv *rtlpriv = rtl_priv(hw); struct ps_t *dm_pstable = &rtlpriv->dm_pstable; - static u8 initialize; - static u32 reg_874, reg_c70, reg_85c, reg_a74; - if (initialize == 0) { - reg_874 = (rtl_get_bbreg(hw, RFPGA0_XCD_RFINTERFACESW, - MASKDWORD) & 0x1CC000) >> 14; + if (!rtlpriv->reg_init) { + rtlpriv->reg_874 = (rtl_get_bbreg(hw, + RFPGA0_XCD_RFINTERFACESW, + MASKDWORD) & 0x1CC000) >> 14; - reg_c70 = (rtl_get_bbreg(hw, ROFDM0_AGCPARAMETER1, - MASKDWORD) & BIT(3)) >> 3; + rtlpriv->reg_c70 = (rtl_get_bbreg(hw, ROFDM0_AGCPARAMETER1, + MASKDWORD) & BIT(3)) >> 3; - reg_85c = (rtl_get_bbreg(hw, RFPGA0_XCD_SWITCHCONTROL, - MASKDWORD) & 0xFF000000) >> 24; + rtlpriv->reg_85c = (rtl_get_bbreg(hw, RFPGA0_XCD_SWITCHCONTROL, + MASKDWORD) & 0xFF000000) >> 24; - reg_a74 = (rtl_get_bbreg(hw, 0xa74, MASKDWORD) & 0xF000) >> 12; + rtlpriv->reg_a74 = (rtl_get_bbreg(hw, 0xa74, MASKDWORD) & + 0xF000) >> 12; - initialize = 1; + rtlpriv->reg_init = true; } if (!bforce_in_normal) { @@ -1192,12 +1308,12 @@ rtl_set_bbreg(hw, 0x818, BIT(28), 0x1); } else { rtl_set_bbreg(hw, RFPGA0_XCD_RFINTERFACESW, - 0x1CC000, reg_874); + 0x1CC000, rtlpriv->reg_874); rtl_set_bbreg(hw, ROFDM0_AGCPARAMETER1, BIT(3), - reg_c70); + rtlpriv->reg_c70); rtl_set_bbreg(hw, RFPGA0_XCD_SWITCHCONTROL, 0xFF000000, - reg_85c); - rtl_set_bbreg(hw, 0xa74, 0xF000, reg_a74); + rtlpriv->reg_85c); + rtl_set_bbreg(hw, 0xa74, 0xF000, rtlpriv->reg_a74); rtl_set_bbreg(hw, 0x818, BIT(28), 0x0); } @@ -1213,6 +1329,7 @@ struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + /* Determine the minimum RSSI */ if (((mac->link_state == MAC80211_NOLINK)) && (rtlpriv->dm.entry_min_undec_sm_pwdb == 0)) { dm_pstable->rssi_val_min = 0; @@ -1241,6 +1358,7 @@ dm_pstable->rssi_val_min); } + /* Power Saving for 92C */ if (IS_92C_SERIAL(rtlhal->version)) ;/* rtl92c_dm_1r_cca(hw); */ else @@ -1252,12 +1370,23 @@ struct rtl_priv *rtlpriv = rtl_priv(hw); rtlpriv->dm.dm_type = DM_TYPE_BYDRIVER; + rtlpriv->dm.dm_flag = DYNAMIC_FUNC_DISABLE | DYNAMIC_FUNC_DIG; + rtlpriv->dm.undec_sm_pwdb = -1; + rtlpriv->dm.undec_sm_cck = -1; + rtlpriv->dm.dm_initialgain_enable = true; rtl92c_dm_diginit(hw); + + rtlpriv->dm.dm_flag |= HAL_DM_HIPWR_DISABLE; rtl92c_dm_init_dynamic_txpower(hw); + rtl92c_dm_init_edca_turbo(hw); rtl92c_dm_init_rate_adaptive_mask(hw); + rtlpriv->dm.dm_flag |= DYNAMIC_FUNC_SS; rtl92c_dm_initialize_txpower_tracking(hw); rtl92c_dm_init_dynamic_bb_powersaving(hw); + + rtlpriv->dm.ofdm_pkt_cnt = 0; + rtlpriv->dm.dm_rssi_sel = RSSI_DEFAULT; } EXPORT_SYMBOL(rtl92c_dm_init); @@ -1308,7 +1437,7 @@ } if (undec_sm_pwdb >= TX_POWER_NEAR_FIELD_THRESH_LVL2) { - rtlpriv->dm.dynamic_txhighpower_lvl = TXHIGHPWRLEVEL_LEVEL1; + rtlpriv->dm.dynamic_txhighpower_lvl = TXHIGHPWRLEVEL_LEVEL2; RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD, "TXHIGHPWRLEVEL_LEVEL1 (TxPwr=0x0)\n"); } else if ((undec_sm_pwdb < (TX_POWER_NEAR_FIELD_THRESH_LVL2 - 3)) && @@ -1328,8 +1457,16 @@ "PHY_SetTxPowerLevel8192S() Channel = %d\n", rtlphy->current_channel); rtl92c_phy_set_txpower_level(hw, rtlphy->current_channel); + if (rtlpriv->dm.dynamic_txhighpower_lvl == + TXHIGHPWRLEVEL_NORMAL) + dm_restorepowerindex(hw); + else if (rtlpriv->dm.dynamic_txhighpower_lvl == + TXHIGHPWRLEVEL_LEVEL1) + dm_writepowerindex(hw, 0x14); + else if (rtlpriv->dm.dynamic_txhighpower_lvl == + TXHIGHPWRLEVEL_LEVEL2) + dm_writepowerindex(hw, 0x10); } - rtlpriv->dm.last_dtp_lvl = rtlpriv->dm.dynamic_txhighpower_lvl; } @@ -1400,12 +1537,6 @@ else curr_bt_rssi_state &= (~BT_RSSI_STATE_SPECIAL_LOW); - /* Set Tx Power according to BT status. */ - if (undec_sm_pwdb >= 30) - curr_bt_rssi_state |= BT_RSSI_STATE_TXPOWER_LOW; - else if (undec_sm_pwdb < 25) - curr_bt_rssi_state &= (~BT_RSSI_STATE_TXPOWER_LOW); - /* Check BT state related to BT_Idle in B/G mode. */ if (undec_sm_pwdb < 15) curr_bt_rssi_state |= BT_RSSI_STATE_BG_EDCA_LOW; --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.h @@ -91,6 +91,17 @@ #define TX_POWER_NEAR_FIELD_THRESH_LVL2 74 #define TX_POWER_NEAR_FIELD_THRESH_LVL1 67 +#define DYNAMIC_FUNC_DISABLE 0x0 +#define DYNAMIC_FUNC_DIG BIT(0) +#define DYNAMIC_FUNC_HP BIT(1) +#define DYNAMIC_FUNC_SS BIT(2) /*Tx Power Tracking*/ +#define DYNAMIC_FUNC_BT BIT(3) +#define DYNAMIC_FUNC_ANT_DIV BIT(4) + +#define RSSI_CCK 0 +#define RSSI_OFDM 1 +#define RSSI_DEFAULT 2 + struct swat_t { u8 failure_cnt; u8 try_flag; @@ -167,5 +178,8 @@ void rtl92c_phy_iq_calibrate(struct ieee80211_hw *hw, bool recovery); void rtl92c_dm_dynamic_txpower(struct ieee80211_hw *hw); void rtl92c_dm_bt_coexist(struct ieee80211_hw *hw); +void dm_savepowerindex(struct ieee80211_hw *hw); +void dm_writepowerindex(struct ieee80211_hw *hw, u8 value); +void dm_restorepowerindex(struct ieee80211_hw *hw); #endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8192ce/hw.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8192ce/hw.c @@ -319,7 +319,7 @@ u8 e_aci = *(val); rtl92c_dm_init_edca_turbo(hw); - if (rtlpci->acm_method != eAcmWay2_SW) + if (rtlpci->acm_method != EACMWAY2_SW) rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_ACM_CTRL, (&e_aci)); @@ -937,14 +937,26 @@ bool is92c; int err; u8 tmp_u1b; + unsigned long flags; rtlpci->being_init_adapter = true; + + /* Since this function can take a very long time (up to 350 ms) + * and can be called with irqs disabled, reenable the irqs + * to let the other devices continue being serviced. + * + * It is safe doing so since our own interrupts will only be enabled + * in a subsequent step. + */ + local_save_flags(flags); + local_irq_enable(); + rtlpriv->intf_ops->disable_aspm(hw); rtstatus = _rtl92ce_init_mac(hw); if (!rtstatus) { RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "Init MAC failed\n"); err = 1; - return err; + goto exit; } err = rtl92c_download_fw(hw); @@ -952,7 +964,7 @@ RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, "Failed to download FW. Init HW without FW now..\n"); err = 1; - return err; + goto exit; } rtlhal->last_hmeboxnum = 0; @@ -1032,6 +1044,8 @@ RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, "under 1.5V\n"); } rtl92c_dm_init(hw); +exit: + local_irq_restore(flags); rtlpci->being_init_adapter = false; return err; } @@ -1720,7 +1734,7 @@ if (rtlefuse->eeprom_did == 0x8176) { if ((rtlefuse->eeprom_svid == 0x103C && rtlefuse->eeprom_smid == 0x1629)) - rtlhal->oem_id = RT_CID_819x_HP; + rtlhal->oem_id = RT_CID_819X_HP; else rtlhal->oem_id = RT_CID_DEFAULT; } else { @@ -1731,7 +1745,7 @@ rtlhal->oem_id = RT_CID_TOSHIBA; break; case EEPROM_CID_QMI: - rtlhal->oem_id = RT_CID_819x_QMI; + rtlhal->oem_id = RT_CID_819X_QMI; break; case EEPROM_CID_WHQL: default: @@ -1750,14 +1764,14 @@ struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); switch (rtlhal->oem_id) { - case RT_CID_819x_HP: + case RT_CID_819X_HP: pcipriv->ledctl.led_opendrain = true; break; - case RT_CID_819x_Lenovo: + case RT_CID_819X_LENOVO: case RT_CID_DEFAULT: case RT_CID_TOSHIBA: case RT_CID_CCX: - case RT_CID_819x_Acer: + case RT_CID_819X_ACER: case RT_CID_WHQL: default: break; --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8192ce/trx.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8192ce/trx.c @@ -393,7 +393,7 @@ /* In testing, hdr was NULL here */ return false; } - if ((ieee80211_is_robust_mgmt_frame(hdr)) && + if ((_ieee80211_is_robust_mgmt_frame(hdr)) && (ieee80211_has_protected(hdr->frame_control))) rx_status->flag &= ~RX_FLAG_DECRYPTED; else --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8192cu/dm.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8192cu/dm.c @@ -101,6 +101,15 @@ "PHY_SetTxPowerLevel8192S() Channel = %d\n", rtlphy->current_channel); rtl92c_phy_set_txpower_level(hw, rtlphy->current_channel); + if (rtlpriv->dm.dynamic_txhighpower_lvl == + TXHIGHPWRLEVEL_NORMAL) + dm_restorepowerindex(hw); + else if (rtlpriv->dm.dynamic_txhighpower_lvl == + TXHIGHPWRLEVEL_LEVEL1) + dm_writepowerindex(hw, 0x14); + else if (rtlpriv->dm.dynamic_txhighpower_lvl == + TXHIGHPWRLEVEL_LEVEL2) + dm_writepowerindex(hw, 0x10); } rtlpriv->dm.last_dtp_lvl = rtlpriv->dm.dynamic_txhighpower_lvl; --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8192cu/dm.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8192cu/dm.h @@ -30,3 +30,6 @@ #include "../rtl8192ce/dm.h" void rtl92cu_dm_dynamic_txpower(struct ieee80211_hw *hw); +void dm_savepowerindex(struct ieee80211_hw *hw); +void dm_writepowerindex(struct ieee80211_hw *hw, u8 value); +void dm_restorepowerindex(struct ieee80211_hw *hw); --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8192cu/hw.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8192cu/hw.c @@ -394,7 +394,7 @@ if (rtlefuse->eeprom_did == 0x8176) { if ((rtlefuse->eeprom_svid == 0x103C && rtlefuse->eeprom_smid == 0x1629)) - rtlhal->oem_id = RT_CID_819x_HP; + rtlhal->oem_id = RT_CID_819X_HP; else rtlhal->oem_id = RT_CID_DEFAULT; } else { @@ -405,7 +405,7 @@ rtlhal->oem_id = RT_CID_TOSHIBA; break; case EEPROM_CID_QMI: - rtlhal->oem_id = RT_CID_819x_QMI; + rtlhal->oem_id = RT_CID_819X_QMI; break; case EEPROM_CID_WHQL: default: @@ -423,14 +423,14 @@ struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); switch (rtlhal->oem_id) { - case RT_CID_819x_HP: + case RT_CID_819X_HP: usb_priv->ledctl.led_opendrain = true; break; - case RT_CID_819x_Lenovo: + case RT_CID_819X_LENOVO: case RT_CID_DEFAULT: case RT_CID_TOSHIBA: case RT_CID_CCX: - case RT_CID_819x_Acer: + case RT_CID_819X_ACER: case RT_CID_WHQL: default: break; @@ -985,6 +985,17 @@ struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); int err = 0; static bool iqk_initialized; + unsigned long flags; + + /* As this function can take a very long time (up to 350 ms) + * and can be called with irqs disabled, reenable the irqs + * to let the other devices continue being serviced. + * + * It is safe doing so since our own interrupts will only be enabled + * in a subsequent step. + */ + local_save_flags(flags); + local_irq_enable(); rtlhal->hw_type = HARDWARE_TYPE_RTL8192CU; err = _rtl92cu_init_mac(hw); @@ -997,7 +1008,7 @@ RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, "Failed to download FW. Init HW without FW now..\n"); err = 1; - return err; + goto exit; } rtlhal->last_hmeboxnum = 0; /* h2c */ _rtl92cu_phy_param_tab_init(hw); @@ -1034,6 +1045,8 @@ _InitPABias(hw); _update_mac_setting(hw); rtl92c_dm_init(hw); +exit: + local_irq_restore(flags); return err; } @@ -1795,7 +1808,7 @@ e_aci); break; } - if (rtlusb->acm_method != eAcmWay2_SW) + if (rtlusb->acm_method != EACMWAY2_SW) rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_ACM_CTRL, &e_aci); break; --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8192cu/rf.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8192cu/rf.c @@ -85,17 +85,15 @@ if (mac->act_scanning) { tx_agc[RF90_PATH_A] = 0x3f3f3f3f; tx_agc[RF90_PATH_B] = 0x3f3f3f3f; - if (turbo_scanoff) { - for (idx1 = RF90_PATH_A; idx1 <= RF90_PATH_B; idx1++) { - tx_agc[idx1] = ppowerlevel[idx1] | - (ppowerlevel[idx1] << 8) | - (ppowerlevel[idx1] << 16) | - (ppowerlevel[idx1] << 24); - if (rtlhal->interface == INTF_USB) { - if (tx_agc[idx1] > 0x20 && - rtlefuse->external_pa) - tx_agc[idx1] = 0x20; - } + for (idx1 = RF90_PATH_A; idx1 <= RF90_PATH_B; idx1++) { + tx_agc[idx1] = ppowerlevel[idx1] | + (ppowerlevel[idx1] << 8) | + (ppowerlevel[idx1] << 16) | + (ppowerlevel[idx1] << 24); + if (rtlhal->interface == INTF_USB) { + if (tx_agc[idx1] > 0x20 && + rtlefuse->external_pa) + tx_agc[idx1] = 0x20; } } } else { @@ -107,7 +105,7 @@ TXHIGHPWRLEVEL_LEVEL2) { tx_agc[RF90_PATH_A] = 0x00000000; tx_agc[RF90_PATH_B] = 0x00000000; - } else{ + } else { for (idx1 = RF90_PATH_A; idx1 <= RF90_PATH_B; idx1++) { tx_agc[idx1] = ppowerlevel[idx1] | (ppowerlevel[idx1] << 8) | @@ -373,7 +371,12 @@ regoffset == RTXAGC_B_MCS07_MCS04) regoffset = 0xc98; for (i = 0; i < 3; i++) { - writeVal = (writeVal > 6) ? (writeVal - 6) : 0; + if (i != 2) + writeVal = (writeVal > 8) ? + (writeVal - 8) : 0; + else + writeVal = (writeVal > 6) ? + (writeVal - 6) : 0; rtl_write_byte(rtlpriv, (u32)(regoffset + i), (u8)writeVal); } --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8192cu/sw.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8192cu/sw.c @@ -50,6 +50,9 @@ MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("Realtek 8192C/8188C 802.11n USB wireless"); MODULE_FIRMWARE("rtlwifi/rtl8192cufw.bin"); +MODULE_FIRMWARE("rtlwifi/rtl8192cufw_A.bin"); +MODULE_FIRMWARE("rtlwifi/rtl8192cufw_B.bin"); +MODULE_FIRMWARE("rtlwifi/rtl8192cufw_TMSC.bin"); static int rtl92cu_init_sw_vars(struct ieee80211_hw *hw) { @@ -69,14 +72,21 @@ "Can't alloc buffer for fw\n"); return 1; } - + if (IS_VENDOR_UMC_A_CUT(rtlpriv->rtlhal.version) && + !IS_92C_SERIAL(rtlpriv->rtlhal.version)) { + rtlpriv->cfg->fw_name = "rtlwifi/rtl8192cufw_A.bin"; + } else if (IS_81xxC_VENDOR_UMC_B_CUT(rtlpriv->rtlhal.version)) { + rtlpriv->cfg->fw_name = "rtlwifi/rtl8192cufw_B.bin"; + } else { + rtlpriv->cfg->fw_name = "rtlwifi/rtl8192cufw_TMSC.bin"; + } + /* provide name of alternative file */ + rtlpriv->cfg->alt_fw_name = "rtlwifi/rtl8192cufw.bin"; pr_info("Loading firmware %s\n", rtlpriv->cfg->fw_name); rtlpriv->max_fw_size = 0x4000; err = request_firmware_nowait(THIS_MODULE, 1, rtlpriv->cfg->fw_name, rtlpriv->io.dev, GFP_KERNEL, hw, rtl_fw_cb); - - return err; } @@ -307,6 +317,7 @@ {RTL_USB_DEVICE(0x0bda, 0x5088, rtl92cu_hal_cfg)}, /*Thinkware-CC&C*/ {RTL_USB_DEVICE(0x0df6, 0x0052, rtl92cu_hal_cfg)}, /*Sitecom - Edimax*/ {RTL_USB_DEVICE(0x0df6, 0x005c, rtl92cu_hal_cfg)}, /*Sitecom - Edimax*/ + {RTL_USB_DEVICE(0x0df6, 0x0077, rtl92cu_hal_cfg)}, /*Sitecom-WLA2100V2*/ {RTL_USB_DEVICE(0x0eb0, 0x9071, rtl92cu_hal_cfg)}, /*NO Brand - Etop*/ {RTL_USB_DEVICE(0x4856, 0x0091, rtl92cu_hal_cfg)}, /*NetweeN - Feixun*/ /* HP - Lite-On ,8188CUS Slim Combo */ --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8192de/hw.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8192de/hw.c @@ -318,7 +318,7 @@ case HW_VAR_AC_PARAM: { u8 e_aci = *val; rtl92d_dm_init_edca_turbo(hw); - if (rtlpci->acm_method != eAcmWay2_SW) + if (rtlpci->acm_method != EACMWAY2_SW) rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_ACM_CTRL, &e_aci); break; --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8192se/hw.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8192se/hw.c @@ -251,7 +251,7 @@ u8 e_aci = *val; rtl92s_dm_init_edca_turbo(hw); - if (rtlpci->acm_method != eAcmWay2_SW) + if (rtlpci->acm_method != EACMWAY2_SW) rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_ACM_CTRL, &e_aci); @@ -955,7 +955,7 @@ struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); u8 tmp_byte = 0; - + unsigned long flags; bool rtstatus = true; u8 tmp_u1b; int err = false; @@ -967,6 +967,16 @@ rtlpci->being_init_adapter = true; + /* As this function can take a very long time (up to 350 ms) + * and can be called with irqs disabled, reenable the irqs + * to let the other devices continue being serviced. + * + * It is safe doing so since our own interrupts will only be enabled + * in a subsequent step. + */ + local_save_flags(flags); + local_irq_enable(); + rtlpriv->intf_ops->disable_aspm(hw); /* 1. MAC Initialize */ @@ -984,7 +994,8 @@ RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, "Failed to download FW. Init HW without FW now... " "Please copy FW into /lib/firmware/rtlwifi\n"); - return 1; + err = 1; + goto exit; } /* After FW download, we have to reset MAC register */ @@ -997,7 +1008,8 @@ /* 3. Initialize MAC/PHY Config by MACPHY_reg.txt */ if (!rtl92s_phy_mac_config(hw)) { RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "MAC Config failed\n"); - return rtstatus; + err = rtstatus; + goto exit; } /* because last function modify RCR, so we update @@ -1016,7 +1028,8 @@ /* 4. Initialize BB After MAC Config PHY_reg.txt, AGC_Tab.txt */ if (!rtl92s_phy_bb_config(hw)) { RT_TRACE(rtlpriv, COMP_INIT, DBG_EMERG, "BB Config failed\n"); - return rtstatus; + err = rtstatus; + goto exit; } /* 5. Initiailze RF RAIO_A.txt RF RAIO_B.txt */ @@ -1033,7 +1046,8 @@ if (!rtl92s_phy_rf_config(hw)) { RT_TRACE(rtlpriv, COMP_INIT, DBG_DMESG, "RF Config failed\n"); - return rtstatus; + err = rtstatus; + goto exit; } /* After read predefined TXT, we must set BB/MAC/RF @@ -1122,8 +1136,9 @@ rtlpriv->cfg->ops->led_control(hw, LED_CTL_POWER_ON); rtl92s_dm_init(hw); +exit: + local_irq_restore(flags); rtlpci->being_init_adapter = false; - return err; } --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8192se/trx.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8192se/trx.c @@ -310,7 +310,7 @@ /* during testing, hdr was NULL here */ return false; } - if ((ieee80211_is_robust_mgmt_frame(hdr)) && + if ((_ieee80211_is_robust_mgmt_frame(hdr)) && (ieee80211_has_protected(hdr->frame_control))) rx_status->flag &= ~RX_FLAG_DECRYPTED; else --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723ae/def.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723ae/def.h @@ -46,11 +46,6 @@ #define E_CUT_VERSION BIT(14) #define RF_RL_ID (BIT(31)|BIT(30)|BIT(29)|BIT(28)) -enum version_8723e { - VERSION_TEST_UMC_CHIP_8723 = 0x0081, - VERSION_NORMAL_UMC_CHIP_8723_1T1R_A_CUT = 0x0089, - VERSION_NORMAL_UMC_CHIP_8723_1T1R_B_CUT = 0x1089, -}; /* MASK */ #define IC_TYPE_MASK (BIT(0)|BIT(1)|BIT(2)) --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723ae/dm.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723ae/dm.c @@ -35,6 +35,7 @@ #include "def.h" #include "phy.h" #include "dm.h" +#include "../rtl8723com/dm_common.h" #include "fw.h" #include "hal_btc.h" @@ -483,16 +484,6 @@ rtl8723ae_dm_ctrl_initgain_by_twoport(hw); } -static void rtl8723ae_dm_init_dynamic_txpower(struct ieee80211_hw *hw) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - - rtlpriv->dm.dynamic_txpower_enable = false; - - rtlpriv->dm.last_dtp_lvl = TXHIGHPWRLEVEL_NORMAL; - rtlpriv->dm.dynamic_txhighpower_lvl = TXHIGHPWRLEVEL_NORMAL; -} - static void rtl8723ae_dm_dynamic_txpower(struct ieee80211_hw *hw) { struct rtl_priv *rtlpriv = rtl_priv(hw); @@ -585,19 +576,6 @@ } } -static void rtl8723ae_dm_pwdmonitor(struct ieee80211_hw *hw) -{ -} - -void rtl8723ae_dm_init_edca_turbo(struct ieee80211_hw *hw) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - - rtlpriv->dm.current_turbo_edca = false; - rtlpriv->dm.is_any_nonbepkts = false; - rtlpriv->dm.is_cur_rdlstate = false; -} - static void rtl8723ae_dm_check_edca_turbo(struct ieee80211_hw *hw) { struct rtl_priv *rtlpriv = rtl_priv(hw); @@ -778,17 +756,6 @@ } } -static void rtl8723ae_dm_init_dynamic_bpowersaving(struct ieee80211_hw *hw) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - - rtlpriv->dm_pstable.pre_ccastate = CCA_MAX; - rtlpriv->dm_pstable.cur_ccasate = CCA_MAX; - rtlpriv->dm_pstable.pre_rfstate = RF_MAX; - rtlpriv->dm_pstable.cur_rfstate = RF_MAX; - rtlpriv->dm_pstable.rssi_val_min = 0; -} - void rtl8723ae_dm_rf_saving(struct ieee80211_hw *hw, u8 force_in_normal) { struct rtl_priv *rtlpriv = rtl_priv(hw); @@ -905,11 +872,11 @@ rtlpriv->dm.dm_type = DM_TYPE_BYDRIVER; rtl8723ae_dm_diginit(hw); - rtl8723ae_dm_init_dynamic_txpower(hw); - rtl8723ae_dm_init_edca_turbo(hw); + rtl8723_dm_init_dynamic_txpower(hw); + rtl8723_dm_init_edca_turbo(hw); rtl8723ae_dm_init_rate_adaptive_mask(hw); rtl8723ae_dm_initialize_txpower_tracking(hw); - rtl8723ae_dm_init_dynamic_bpowersaving(hw); + rtl8723_dm_init_dynamic_bb_powersaving(hw); } void rtl8723ae_dm_watchdog(struct ieee80211_hw *hw) @@ -930,7 +897,6 @@ if ((ppsc->rfpwr_state == ERFON) && ((!fw_current_inpsmode) && fw_ps_awake) && (!ppsc->rfchange_inprogress)) { - rtl8723ae_dm_pwdmonitor(hw); rtl8723ae_dm_dig(hw); rtl8723ae_dm_false_alarm_counter_statistics(hw); rtl8723ae_dm_dynamic_bpowersaving(hw); --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723ae/dm.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723ae/dm.h @@ -147,7 +147,6 @@ void rtl8723ae_dm_init(struct ieee80211_hw *hw); void rtl8723ae_dm_watchdog(struct ieee80211_hw *hw); void rtl8723ae_dm_write_dig(struct ieee80211_hw *hw); -void rtl8723ae_dm_init_edca_turbo(struct ieee80211_hw *hw); void rtl8723ae_dm_init_rate_adaptive_mask(struct ieee80211_hw *hw); void rtl8723ae_dm_rf_saving(struct ieee80211_hw *hw, u8 bforce_in_normal); void rtl8723ae_dm_bt_coexist(struct ieee80211_hw *hw); --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723ae/fw.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723ae/fw.c @@ -34,199 +34,7 @@ #include "reg.h" #include "def.h" #include "fw.h" - -static void _rtl8723ae_enable_fw_download(struct ieee80211_hw *hw, bool enable) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - u8 tmp; - if (enable) { - tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN + 1); - rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN + 1, tmp | 0x04); - - tmp = rtl_read_byte(rtlpriv, REG_MCUFWDL); - rtl_write_byte(rtlpriv, REG_MCUFWDL, tmp | 0x01); - - tmp = rtl_read_byte(rtlpriv, REG_MCUFWDL + 2); - rtl_write_byte(rtlpriv, REG_MCUFWDL + 2, tmp & 0xf7); - } else { - tmp = rtl_read_byte(rtlpriv, REG_MCUFWDL); - rtl_write_byte(rtlpriv, REG_MCUFWDL, tmp & 0xfe); - - rtl_write_byte(rtlpriv, REG_MCUFWDL + 1, 0x00); - } -} - -static void _rtl8723ae_fw_block_write(struct ieee80211_hw *hw, - const u8 *buffer, u32 size) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - u32 blockSize = sizeof(u32); - u8 *bufferPtr = (u8 *) buffer; - u32 *pu4BytePtr = (u32 *) buffer; - u32 i, offset, blockCount, remainSize; - - blockCount = size / blockSize; - remainSize = size % blockSize; - - for (i = 0; i < blockCount; i++) { - offset = i * blockSize; - rtl_write_dword(rtlpriv, (FW_8192C_START_ADDRESS + offset), - *(pu4BytePtr + i)); - } - - if (remainSize) { - offset = blockCount * blockSize; - bufferPtr += offset; - for (i = 0; i < remainSize; i++) { - rtl_write_byte(rtlpriv, (FW_8192C_START_ADDRESS + - offset + i), *(bufferPtr + i)); - } - } -} - -static void _rtl8723ae_fw_page_write(struct ieee80211_hw *hw, - u32 page, const u8 *buffer, u32 size) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - u8 value8; - u8 u8page = (u8) (page & 0x07); - - value8 = (rtl_read_byte(rtlpriv, REG_MCUFWDL + 2) & 0xF8) | u8page; - - rtl_write_byte(rtlpriv, (REG_MCUFWDL + 2), value8); - _rtl8723ae_fw_block_write(hw, buffer, size); -} - -static void _rtl8723ae_write_fw(struct ieee80211_hw *hw, - enum version_8723e version, u8 *buffer, - u32 size) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - u8 *bufferPtr = (u8 *) buffer; - u32 page_nums, remain_size; - u32 page, offset; - - RT_TRACE(rtlpriv, COMP_FW, DBG_TRACE, "FW size is %d bytes,\n", size); - - page_nums = size / FW_8192C_PAGE_SIZE; - remain_size = size % FW_8192C_PAGE_SIZE; - - if (page_nums > 6) { - RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, - "Page numbers should not be greater then 6\n"); - } - - for (page = 0; page < page_nums; page++) { - offset = page * FW_8192C_PAGE_SIZE; - _rtl8723ae_fw_page_write(hw, page, (bufferPtr + offset), - FW_8192C_PAGE_SIZE); - } - - if (remain_size) { - offset = page_nums * FW_8192C_PAGE_SIZE; - page = page_nums; - _rtl8723ae_fw_page_write(hw, page, (bufferPtr + offset), - remain_size); - } - - RT_TRACE(rtlpriv, COMP_FW, DBG_TRACE, "FW write done.\n"); -} - -static int _rtl8723ae_fw_free_to_go(struct ieee80211_hw *hw) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - int err = -EIO; - u32 counter = 0; - u32 value32; - - do { - value32 = rtl_read_dword(rtlpriv, REG_MCUFWDL); - } while ((counter++ < FW_8192C_POLLING_TIMEOUT_COUNT) && - (!(value32 & FWDL_ChkSum_rpt))); - - if (counter >= FW_8192C_POLLING_TIMEOUT_COUNT) { - RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, - "chksum report faill ! REG_MCUFWDL:0x%08x .\n", - value32); - goto exit; - } - - RT_TRACE(rtlpriv, COMP_FW, DBG_TRACE, - "Checksum report OK ! REG_MCUFWDL:0x%08x .\n", value32); - - value32 = rtl_read_dword(rtlpriv, REG_MCUFWDL); - value32 |= MCUFWDL_RDY; - value32 &= ~WINTINI_RDY; - rtl_write_dword(rtlpriv, REG_MCUFWDL, value32); - - counter = 0; - - do { - value32 = rtl_read_dword(rtlpriv, REG_MCUFWDL); - if (value32 & WINTINI_RDY) { - RT_TRACE(rtlpriv, COMP_FW, DBG_TRACE, - "Polling FW ready success!! REG_MCUFWDL:0x%08x .\n", - value32); - err = 0; - goto exit; - } - - mdelay(FW_8192C_POLLING_DELAY); - - } while (counter++ < FW_8192C_POLLING_TIMEOUT_COUNT); - - RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, - "Polling FW ready fail!! REG_MCUFWDL:0x%08x .\n", value32); - -exit: - return err; -} - -int rtl8723ae_download_fw(struct ieee80211_hw *hw) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); - struct rtl8723ae_firmware_header *pfwheader; - u8 *pfwdata; - u32 fwsize; - int err; - enum version_8723e version = rtlhal->version; - - if (!rtlhal->pfirmware) - return 1; - - pfwheader = (struct rtl8723ae_firmware_header *)rtlhal->pfirmware; - pfwdata = (u8 *) rtlhal->pfirmware; - fwsize = rtlhal->fwsize; - - if (IS_FW_HEADER_EXIST(pfwheader)) { - RT_TRACE(rtlpriv, COMP_FW, DBG_DMESG, - "Firmware Version(%d), Signature(%#x),Size(%d)\n", - pfwheader->version, pfwheader->signature, - (int)sizeof(struct rtl8723ae_firmware_header)); - - pfwdata = pfwdata + sizeof(struct rtl8723ae_firmware_header); - fwsize = fwsize - sizeof(struct rtl8723ae_firmware_header); - } - - if (rtl_read_byte(rtlpriv, REG_MCUFWDL)&BIT(7)) { - rtl8723ae_firmware_selfreset(hw); - rtl_write_byte(rtlpriv, REG_MCUFWDL, 0x00); - } - _rtl8723ae_enable_fw_download(hw, true); - _rtl8723ae_write_fw(hw, version, pfwdata, fwsize); - _rtl8723ae_enable_fw_download(hw, false); - - err = _rtl8723ae_fw_free_to_go(hw); - if (err) { - RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, - "Firmware is not ready to run!\n"); - } else { - RT_TRACE(rtlpriv, COMP_FW, DBG_TRACE, - "Firmware is ready to run!\n"); - } - return 0; -} +#include "../rtl8723com/fw_common.h" static bool rtl8723ae_check_fw_read_last_h2c(struct ieee80211_hw *hw, u8 boxnum) { @@ -463,50 +271,6 @@ return; } -void rtl8723ae_firmware_selfreset(struct ieee80211_hw *hw) -{ - u8 u1tmp; - u8 delay = 100; - struct rtl_priv *rtlpriv = rtl_priv(hw); - - rtl_write_byte(rtlpriv, REG_HMETFR + 3, 0x20); - u1tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN + 1); - - while (u1tmp & BIT(2)) { - delay--; - if (delay == 0) - break; - udelay(50); - u1tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN + 1); - } - if (delay == 0) { - u1tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN + 1); - rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN + 1, u1tmp&(~BIT(2))); - } -} - -void rtl8723ae_set_fw_pwrmode_cmd(struct ieee80211_hw *hw, u8 mode) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - u8 u1_h2c_set_pwrmode[3] = { 0 }; - struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); - - RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD, "FW LPS mode = %d\n", mode); - - SET_H2CCMD_PWRMODE_PARM_MODE(u1_h2c_set_pwrmode, mode); - SET_H2CCMD_PWRMODE_PARM_SMART_PS(u1_h2c_set_pwrmode, - (rtlpriv->mac80211.p2p) ? - ppsc->smart_ps : 1); - SET_H2CCMD_PWRMODE_PARM_BCN_PASS_TIME(u1_h2c_set_pwrmode, - ppsc->reg_max_lps_awakeintvl); - - RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_DMESG, - "rtl8723ae_set_fw_rsvdpagepkt(): u1_h2c_set_pwrmode\n", - u1_h2c_set_pwrmode, 3); - rtl8723ae_fill_h2c_cmd(hw, H2C_SETPWRMODE, 3, u1_h2c_set_pwrmode); - -} - static bool _rtl8723ae_cmd_send_packet(struct ieee80211_hw *hw, struct sk_buff *skb) { @@ -812,7 +576,6 @@ rtl_write_byte(rtlpriv, REG_DUAL_TSF_RST, BIT(4)); p2p_ps_offload->offload_en = 1; - if (P2P_ROLE_GO == rtlpriv->mac80211.p2p) { p2p_ps_offload->role = 1; p2p_ps_offload->allstasleep = 0; @@ -836,3 +599,24 @@ } rtl8723ae_fill_h2c_cmd(hw, H2C_P2P_PS_OFFLOAD, 1, (u8 *)p2p_ps_offload); } + +void rtl8723ae_set_fw_pwrmode_cmd(struct ieee80211_hw *hw, u8 mode) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 u1_h2c_set_pwrmode[3] = { 0 }; + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + + RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD, "FW LPS mode = %d\n", mode); + + SET_H2CCMD_PWRMODE_PARM_MODE(u1_h2c_set_pwrmode, mode); + SET_H2CCMD_PWRMODE_PARM_SMART_PS_23A(u1_h2c_set_pwrmode, + (rtlpriv->mac80211.p2p) ? + ppsc->smart_ps : 1); + SET_H2CCMD_PWRMODE_PARM_BCN_PASS_TIME(u1_h2c_set_pwrmode, + ppsc->reg_max_lps_awakeintvl); + + RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_DMESG, + "rtl8723ae_set_fw_rsvdpagepkt(): u1_h2c_set_pwrmode\n", + u1_h2c_set_pwrmode, 3); + rtl8723ae_fill_h2c_cmd(hw, H2C_SETPWRMODE, 3, u1_h2c_set_pwrmode); +} --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723ae/fw.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723ae/fw.h @@ -34,7 +34,7 @@ #define FW_8192C_END_ADDRESS 0x3FFF #define FW_8192C_PAGE_SIZE 4096 #define FW_8192C_POLLING_DELAY 5 -#define FW_8192C_POLLING_TIMEOUT_COUNT 1000 +#define FW_8192C_POLLING_TIMEOUT_COUNT 6000 #define BEACON_PG 0 #define PSPOLL_PG 2 @@ -65,21 +65,9 @@ u32 rsvd5; }; -enum rtl8192c_h2c_cmd { - H2C_AP_OFFLOAD = 0, - H2C_SETPWRMODE = 1, - H2C_JOINBSSRPT = 2, - H2C_RSVDPAGE = 3, - H2C_RSSI_REPORT = 4, - H2C_P2P_PS_CTW_CMD = 5, - H2C_P2P_PS_OFFLOAD = 6, - H2C_RA_MASK = 7, - MAX_H2CCMD -}; - #define SET_H2CCMD_PWRMODE_PARM_MODE(__ph2ccmd, __val) \ SET_BITS_TO_LE_1BYTE(__ph2ccmd, 0, 8, __val) -#define SET_H2CCMD_PWRMODE_PARM_SMART_PS(__ph2ccmd, __val) \ +#define SET_H2CCMD_PWRMODE_PARM_SMART_PS_23A(__ph2ccmd, __val) \ SET_BITS_TO_LE_1BYTE((__ph2ccmd)+1, 0, 8, __val) #define SET_H2CCMD_PWRMODE_PARM_BCN_PASS_TIME(__ph2ccmd, __val) \ SET_BITS_TO_LE_1BYTE((__ph2ccmd)+2, 0, 8, __val) @@ -92,10 +80,8 @@ #define SET_H2CCMD_RSVDPAGE_LOC_NULL_DATA(__ph2ccmd, __val) \ SET_BITS_TO_LE_1BYTE((__ph2ccmd)+2, 0, 8, __val) -int rtl8723ae_download_fw(struct ieee80211_hw *hw); void rtl8723ae_fill_h2c_cmd(struct ieee80211_hw *hw, u8 element_id, u32 cmd_len, u8 *p_cmdbuffer); -void rtl8723ae_firmware_selfreset(struct ieee80211_hw *hw); void rtl8723ae_set_fw_pwrmode_cmd(struct ieee80211_hw *hw, u8 mode); void rtl8723ae_set_fw_rsvdpagepkt(struct ieee80211_hw *hw, bool b_dl_finished); void rtl8723ae_set_fw_joinbss_report_cmd(struct ieee80211_hw *hw, u8 mstatus); --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723ae/hal_bt_coexist.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723ae/hal_bt_coexist.c @@ -31,6 +31,8 @@ #include "../pci.h" #include "dm.h" #include "fw.h" +#include "../rtl8723com/fw_common.h" +#include "../rtl8723com/fw_common.h" #include "phy.h" #include "reg.h" #include "hal_btc.h" --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723ae/hal_btc.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723ae/hal_btc.c @@ -30,7 +30,9 @@ #include "hal_btc.h" #include "../pci.h" #include "phy.h" +#include "../rtl8723com/phy_common.h" #include "fw.h" +#include "../rtl8723com/fw_common.h" #include "reg.h" #include "def.h" @@ -391,13 +393,13 @@ if (sw_dac_swing_on) { RT_TRACE(rtlpriv, COMP_BT_COEXIST, DBG_TRACE, "[BTCoex], SwDacSwing = 0x%x\n", sw_dac_swing_lvl); - rtl8723ae_phy_set_bb_reg(hw, 0x880, 0xff000000, - sw_dac_swing_lvl); + rtl8723_phy_set_bb_reg(hw, 0x880, 0xff000000, + sw_dac_swing_lvl); rtlpcipriv->bt_coexist.sw_coexist_all_off = false; } else { RT_TRACE(rtlpriv, COMP_BT_COEXIST, DBG_TRACE, "[BTCoex], SwDacSwing Off!\n"); - rtl8723ae_phy_set_bb_reg(hw, 0x880, 0xff000000, 0xc0); + rtl8723_phy_set_bb_reg(hw, 0x880, 0xff000000, 0xc0); } } --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723ae/hw.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723ae/hw.c @@ -38,7 +38,9 @@ #include "def.h" #include "phy.h" #include "dm.h" +#include "../rtl8723com/dm_common.h" #include "fw.h" +#include "../rtl8723com/fw_common.h" #include "led.h" #include "hw.h" #include "pwrseqcmd.h" @@ -304,9 +306,9 @@ break; } case HW_VAR_AC_PARAM:{ u8 e_aci = *((u8 *) val); - rtl8723ae_dm_init_edca_turbo(hw); + rtl8723_dm_init_edca_turbo(hw); - if (rtlpci->acm_method != eAcmWay2_SW) + if (rtlpci->acm_method != EACMWAY2_SW) rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_ACM_CTRL, (u8 *) (&e_aci)); @@ -880,23 +882,33 @@ bool rtstatus = true; int err; u8 tmp_u1b; + unsigned long flags; rtlpriv->rtlhal.being_init_adapter = true; + /* As this function can take a very long time (up to 350 ms) + * and can be called with irqs disabled, reenable the irqs + * to let the other devices continue being serviced. + * + * It is safe doing so since our own interrupts will only be enabled + * in a subsequent step. + */ + local_save_flags(flags); + local_irq_enable(); + rtlpriv->intf_ops->disable_aspm(hw); rtstatus = _rtl8712e_init_mac(hw); if (rtstatus != true) { RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "Init MAC failed\n"); err = 1; - return err; + goto exit; } - err = rtl8723ae_download_fw(hw); + err = rtl8723_download_fw(hw, false); if (err) { RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, "Failed to download FW. Init HW without FW now..\n"); err = 1; - rtlhal->fw_ready = false; - return err; + goto exit; } else { rtlhal->fw_ready = true; } @@ -971,6 +983,8 @@ RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, "under 1.5V\n"); } rtl8723ae_dm_init(hw); +exit: + local_irq_restore(flags); rtlpriv->rtlhal.being_init_adapter = false; return err; } @@ -1153,7 +1167,7 @@ { struct rtl_priv *rtlpriv = rtl_priv(hw); - rtl8723ae_dm_init_edca_turbo(hw); + rtl8723_dm_init_edca_turbo(hw); switch (aci) { case AC1_BK: rtl_write_dword(rtlpriv, REG_EDCA_BK_PARAM, 0xa44f); @@ -1655,7 +1669,7 @@ CHK_SVID_SMID(0x10EC, 0x9185)) rtlhal->oem_id = RT_CID_TOSHIBA; else if (rtlefuse->eeprom_svid == 0x1025) - rtlhal->oem_id = RT_CID_819x_Acer; + rtlhal->oem_id = RT_CID_819X_ACER; else if (CHK_SVID_SMID(0x10EC, 0x6191) || CHK_SVID_SMID(0x10EC, 0x6192) || CHK_SVID_SMID(0x10EC, 0x6193) || @@ -1665,7 +1679,7 @@ CHK_SVID_SMID(0x10EC, 0x8191) || CHK_SVID_SMID(0x10EC, 0x8192) || CHK_SVID_SMID(0x10EC, 0x8193)) - rtlhal->oem_id = RT_CID_819x_SAMSUNG; + rtlhal->oem_id = RT_CID_819X_SAMSUNG; else if (CHK_SVID_SMID(0x10EC, 0x8195) || CHK_SVID_SMID(0x10EC, 0x9195) || CHK_SVID_SMID(0x10EC, 0x7194) || @@ -1673,24 +1687,24 @@ CHK_SVID_SMID(0x10EC, 0x8201) || CHK_SVID_SMID(0x10EC, 0x8202) || CHK_SVID_SMID(0x10EC, 0x9200)) - rtlhal->oem_id = RT_CID_819x_Lenovo; + rtlhal->oem_id = RT_CID_819X_LENOVO; else if (CHK_SVID_SMID(0x10EC, 0x8197) || CHK_SVID_SMID(0x10EC, 0x9196)) - rtlhal->oem_id = RT_CID_819x_CLEVO; + rtlhal->oem_id = RT_CID_819X_CLEVO; else if (CHK_SVID_SMID(0x1028, 0x8194) || CHK_SVID_SMID(0x1028, 0x8198) || CHK_SVID_SMID(0x1028, 0x9197) || CHK_SVID_SMID(0x1028, 0x9198)) - rtlhal->oem_id = RT_CID_819x_DELL; + rtlhal->oem_id = RT_CID_819X_DELL; else if (CHK_SVID_SMID(0x103C, 0x1629)) - rtlhal->oem_id = RT_CID_819x_HP; + rtlhal->oem_id = RT_CID_819X_HP; else if (CHK_SVID_SMID(0x1A32, 0x2315)) - rtlhal->oem_id = RT_CID_819x_QMI; + rtlhal->oem_id = RT_CID_819X_QMI; else if (CHK_SVID_SMID(0x10EC, 0x8203)) - rtlhal->oem_id = RT_CID_819x_PRONETS; + rtlhal->oem_id = RT_CID_819X_PRONETS; else if (CHK_SVID_SMID(0x1043, 0x84B5)) rtlhal->oem_id = - RT_CID_819x_Edimax_ASUS; + RT_CID_819X_EDIMAX_ASUS; else rtlhal->oem_id = RT_CID_DEFAULT; } else if (rtlefuse->eeprom_did == 0x8178) { @@ -1712,12 +1726,12 @@ CHK_SVID_SMID(0x10EC, 0x9185)) rtlhal->oem_id = RT_CID_TOSHIBA; else if (rtlefuse->eeprom_svid == 0x1025) - rtlhal->oem_id = RT_CID_819x_Acer; + rtlhal->oem_id = RT_CID_819X_ACER; else if (CHK_SVID_SMID(0x10EC, 0x8186)) - rtlhal->oem_id = RT_CID_819x_PRONETS; + rtlhal->oem_id = RT_CID_819X_PRONETS; else if (CHK_SVID_SMID(0x1043, 0x8486)) rtlhal->oem_id = - RT_CID_819x_Edimax_ASUS; + RT_CID_819X_EDIMAX_ASUS; else rtlhal->oem_id = RT_CID_DEFAULT; } else { @@ -1731,7 +1745,7 @@ rtlhal->oem_id = RT_CID_CCX; break; case EEPROM_CID_QMI: - rtlhal->oem_id = RT_CID_819x_QMI; + rtlhal->oem_id = RT_CID_819X_QMI; break; case EEPROM_CID_WHQL: break; --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723ae/phy.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723ae/phy.c @@ -36,6 +36,7 @@ #include "rf.h" #include "dm.h" #include "table.h" +#include "../rtl8723com/phy_common.h" /* static forward definitions */ static u32 _phy_fw_rf_serial_read(struct ieee80211_hw *hw, @@ -43,72 +44,17 @@ static void _phy_fw_rf_serial_write(struct ieee80211_hw *hw, enum radio_path rfpath, u32 offset, u32 data); -static u32 _phy_rf_serial_read(struct ieee80211_hw *hw, - enum radio_path rfpath, u32 offset); -static void _phy_rf_serial_write(struct ieee80211_hw *hw, - enum radio_path rfpath, u32 offset, u32 data); -static u32 _phy_calculate_bit_shift(u32 bitmask); static bool _phy_bb8192c_config_parafile(struct ieee80211_hw *hw); static bool _phy_cfg_mac_w_header(struct ieee80211_hw *hw); static bool _phy_cfg_bb_w_header(struct ieee80211_hw *hw, u8 configtype); static bool _phy_cfg_bb_w_pgheader(struct ieee80211_hw *hw, u8 configtype); -static void _phy_init_bb_rf_reg_def(struct ieee80211_hw *hw); -static bool _phy_set_sw_chnl_cmdarray(struct swchnlcmd *cmdtable, - u32 cmdtableidx, u32 cmdtablesz, - enum swchnlcmd_id cmdid, - u32 para1, u32 para2, - u32 msdelay); static bool _phy_sw_chnl_step_by_step(struct ieee80211_hw *hw, u8 channel, u8 *stage, u8 *step, u32 *delay); static u8 _phy_dbm_to_txpwr_Idx(struct ieee80211_hw *hw, enum wireless_mode wirelessmode, long power_indbm); -static long _phy_txpwr_idx_to_dbm(struct ieee80211_hw *hw, - enum wireless_mode wirelessmode, u8 txpwridx); static void rtl8723ae_phy_set_io(struct ieee80211_hw *hw); -u32 rtl8723ae_phy_query_bb_reg(struct ieee80211_hw *hw, u32 regaddr, - u32 bitmask) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - u32 returnvalue, originalvalue, bitshift; - - RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, - "regaddr(%#x), bitmask(%#x)\n", regaddr, bitmask); - originalvalue = rtl_read_dword(rtlpriv, regaddr); - bitshift = _phy_calculate_bit_shift(bitmask); - returnvalue = (originalvalue & bitmask) >> bitshift; - - RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, - "BBR MASK=0x%x Addr[0x%x]=0x%x\n", bitmask, regaddr, - originalvalue); - - return returnvalue; -} - -void rtl8723ae_phy_set_bb_reg(struct ieee80211_hw *hw, - u32 regaddr, u32 bitmask, u32 data) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - u32 originalvalue, bitshift; - - RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, - "regaddr(%#x), bitmask(%#x), data(%#x)\n", regaddr, - bitmask, data); - - if (bitmask != MASKDWORD) { - originalvalue = rtl_read_dword(rtlpriv, regaddr); - bitshift = _phy_calculate_bit_shift(bitmask); - data = ((originalvalue & (~bitmask)) | (data << bitshift)); - } - - rtl_write_dword(rtlpriv, regaddr, data); - - RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, - "regaddr(%#x), bitmask(%#x), data(%#x)\n", - regaddr, bitmask, data); -} - u32 rtl8723ae_phy_query_rf_reg(struct ieee80211_hw *hw, enum radio_path rfpath, u32 regaddr, u32 bitmask) { @@ -124,11 +70,11 @@ spin_lock_irqsave(&rtlpriv->locks.rf_lock, flags); if (rtlphy->rf_mode != RF_OP_BY_FW) - original_value = _phy_rf_serial_read(hw, rfpath, regaddr); + original_value = rtl8723_phy_rf_serial_read(hw, rfpath, regaddr); else original_value = _phy_fw_rf_serial_read(hw, rfpath, regaddr); - bitshift = _phy_calculate_bit_shift(bitmask); + bitshift = rtl8723_phy_calculate_bit_shift(bitmask); readback_value = (original_value & bitmask) >> bitshift; spin_unlock_irqrestore(&rtlpriv->locks.rf_lock, flags); @@ -157,19 +103,19 @@ if (rtlphy->rf_mode != RF_OP_BY_FW) { if (bitmask != RFREG_OFFSET_MASK) { - original_value = _phy_rf_serial_read(hw, rfpath, - regaddr); - bitshift = _phy_calculate_bit_shift(bitmask); + original_value = rtl8723_phy_rf_serial_read(hw, rfpath, + regaddr); + bitshift = rtl8723_phy_calculate_bit_shift(bitmask); data = ((original_value & (~bitmask)) | (data << bitshift)); } - _phy_rf_serial_write(hw, rfpath, regaddr, data); + rtl8723_phy_rf_serial_write(hw, rfpath, regaddr, data); } else { if (bitmask != RFREG_OFFSET_MASK) { original_value = _phy_fw_rf_serial_read(hw, rfpath, regaddr); - bitshift = _phy_calculate_bit_shift(bitmask); + bitshift = rtl8723_phy_calculate_bit_shift(bitmask); data = ((original_value & (~bitmask)) | (data << bitshift)); } @@ -197,87 +143,6 @@ RT_ASSERT(false, "deprecated!\n"); } -static u32 _phy_rf_serial_read(struct ieee80211_hw *hw, - enum radio_path rfpath, u32 offset) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - struct rtl_phy *rtlphy = &(rtlpriv->phy); - struct bb_reg_def *pphyreg = &rtlphy->phyreg_def[rfpath]; - u32 newoffset; - u32 tmplong, tmplong2; - u8 rfpi_enable = 0; - u32 retvalue; - - offset &= 0x3f; - newoffset = offset; - if (RT_CANNOT_IO(hw)) { - RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "return all one\n"); - return 0xFFFFFFFF; - } - tmplong = rtl_get_bbreg(hw, RFPGA0_XA_HSSIPARAMETER2, MASKDWORD); - if (rfpath == RF90_PATH_A) - tmplong2 = tmplong; - else - tmplong2 = rtl_get_bbreg(hw, pphyreg->rfhssi_para2, MASKDWORD); - tmplong2 = (tmplong2 & (~BLSSIREADADDRESS)) | - (newoffset << 23) | BLSSIREADEDGE; - rtl_set_bbreg(hw, RFPGA0_XA_HSSIPARAMETER2, MASKDWORD, - tmplong & (~BLSSIREADEDGE)); - mdelay(1); - rtl_set_bbreg(hw, pphyreg->rfhssi_para2, MASKDWORD, tmplong2); - mdelay(1); - rtl_set_bbreg(hw, RFPGA0_XA_HSSIPARAMETER2, MASKDWORD, - tmplong | BLSSIREADEDGE); - mdelay(1); - if (rfpath == RF90_PATH_A) - rfpi_enable = (u8) rtl_get_bbreg(hw, RFPGA0_XA_HSSIPARAMETER1, - BIT(8)); - else if (rfpath == RF90_PATH_B) - rfpi_enable = (u8) rtl_get_bbreg(hw, RFPGA0_XB_HSSIPARAMETER1, - BIT(8)); - if (rfpi_enable) - retvalue = rtl_get_bbreg(hw, pphyreg->rf_rbpi, - BLSSIREADBACKDATA); - else - retvalue = rtl_get_bbreg(hw, pphyreg->rf_rb, - BLSSIREADBACKDATA); - RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, "RFR-%d Addr[0x%x]=0x%x\n", - rfpath, pphyreg->rf_rb, retvalue); - return retvalue; -} - -static void _phy_rf_serial_write(struct ieee80211_hw *hw, - enum radio_path rfpath, u32 offset, u32 data) -{ - u32 data_and_addr; - u32 newoffset; - struct rtl_priv *rtlpriv = rtl_priv(hw); - struct rtl_phy *rtlphy = &(rtlpriv->phy); - struct bb_reg_def *pphyreg = &rtlphy->phyreg_def[rfpath]; - - if (RT_CANNOT_IO(hw)) { - RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "stop\n"); - return; - } - offset &= 0x3f; - newoffset = offset; - data_and_addr = ((newoffset << 20) | (data & 0x000fffff)) & 0x0fffffff; - rtl_set_bbreg(hw, pphyreg->rf3wire_offset, MASKDWORD, data_and_addr); - RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, "RFW-%d Addr[0x%x]=0x%x\n", - rfpath, pphyreg->rf3wire_offset, data_and_addr); -} - -static u32 _phy_calculate_bit_shift(u32 bitmask) -{ - u32 i; - - for (i = 0; i <= 31; i++) { - if (((bitmask >> i) & 0x1) == 1) - break; - } - return i; -} - static void _rtl8723ae_phy_bb_config_1t(struct ieee80211_hw *hw) { rtl_set_bbreg(hw, RFPGA0_TXINFO, 0x3, 0x2); @@ -307,7 +172,7 @@ u8 tmpu1b; u8 reg_hwparafile = 1; - _phy_init_bb_rf_reg_def(hw); + rtl8723_phy_init_bb_rf_reg_def(hw); /* 1. 0x28[1] = 1 */ tmpu1b = rtl_read_byte(rtlpriv, REG_AFE_PLL_CTRL); @@ -690,92 +555,6 @@ ROFDM0_RXDETECTOR3, rtlphy->framesync); } -static void _phy_init_bb_rf_reg_def(struct ieee80211_hw *hw) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - struct rtl_phy *rtlphy = &(rtlpriv->phy); - - rtlphy->phyreg_def[RF90_PATH_A].rfintfs = RFPGA0_XAB_RFINTERFACESW; - rtlphy->phyreg_def[RF90_PATH_B].rfintfs = RFPGA0_XAB_RFINTERFACESW; - rtlphy->phyreg_def[RF90_PATH_C].rfintfs = RFPGA0_XCD_RFINTERFACESW; - rtlphy->phyreg_def[RF90_PATH_D].rfintfs = RFPGA0_XCD_RFINTERFACESW; - - rtlphy->phyreg_def[RF90_PATH_A].rfintfi = RFPGA0_XAB_RFINTERFACERB; - rtlphy->phyreg_def[RF90_PATH_B].rfintfi = RFPGA0_XAB_RFINTERFACERB; - rtlphy->phyreg_def[RF90_PATH_C].rfintfi = RFPGA0_XCD_RFINTERFACERB; - rtlphy->phyreg_def[RF90_PATH_D].rfintfi = RFPGA0_XCD_RFINTERFACERB; - - rtlphy->phyreg_def[RF90_PATH_A].rfintfo = RFPGA0_XA_RFINTERFACEOE; - rtlphy->phyreg_def[RF90_PATH_B].rfintfo = RFPGA0_XB_RFINTERFACEOE; - - rtlphy->phyreg_def[RF90_PATH_A].rfintfe = RFPGA0_XA_RFINTERFACEOE; - rtlphy->phyreg_def[RF90_PATH_B].rfintfe = RFPGA0_XB_RFINTERFACEOE; - - rtlphy->phyreg_def[RF90_PATH_A].rf3wire_offset = - RFPGA0_XA_LSSIPARAMETER; - rtlphy->phyreg_def[RF90_PATH_B].rf3wire_offset = - RFPGA0_XB_LSSIPARAMETER; - - rtlphy->phyreg_def[RF90_PATH_A].rflssi_select = rFPGA0_XAB_RFPARAMETER; - rtlphy->phyreg_def[RF90_PATH_B].rflssi_select = rFPGA0_XAB_RFPARAMETER; - rtlphy->phyreg_def[RF90_PATH_C].rflssi_select = rFPGA0_XCD_RFPARAMETER; - rtlphy->phyreg_def[RF90_PATH_D].rflssi_select = rFPGA0_XCD_RFPARAMETER; - - rtlphy->phyreg_def[RF90_PATH_A].rftxgain_stage = RFPGA0_TXGAINSTAGE; - rtlphy->phyreg_def[RF90_PATH_B].rftxgain_stage = RFPGA0_TXGAINSTAGE; - rtlphy->phyreg_def[RF90_PATH_C].rftxgain_stage = RFPGA0_TXGAINSTAGE; - rtlphy->phyreg_def[RF90_PATH_D].rftxgain_stage = RFPGA0_TXGAINSTAGE; - - rtlphy->phyreg_def[RF90_PATH_A].rfhssi_para1 = RFPGA0_XA_HSSIPARAMETER1; - rtlphy->phyreg_def[RF90_PATH_B].rfhssi_para1 = RFPGA0_XB_HSSIPARAMETER1; - - rtlphy->phyreg_def[RF90_PATH_A].rfhssi_para2 = RFPGA0_XA_HSSIPARAMETER2; - rtlphy->phyreg_def[RF90_PATH_B].rfhssi_para2 = RFPGA0_XB_HSSIPARAMETER2; - - rtlphy->phyreg_def[RF90_PATH_A].rfsw_ctrl = RFPGA0_XAB_SWITCHCONTROL; - rtlphy->phyreg_def[RF90_PATH_B].rfsw_ctrl = RFPGA0_XAB_SWITCHCONTROL; - rtlphy->phyreg_def[RF90_PATH_C].rfsw_ctrl = RFPGA0_XCD_SWITCHCONTROL; - rtlphy->phyreg_def[RF90_PATH_D].rfsw_ctrl = RFPGA0_XCD_SWITCHCONTROL; - - rtlphy->phyreg_def[RF90_PATH_A].rfagc_control1 = ROFDM0_XAAGCCORE1; - rtlphy->phyreg_def[RF90_PATH_B].rfagc_control1 = ROFDM0_XBAGCCORE1; - rtlphy->phyreg_def[RF90_PATH_C].rfagc_control1 = ROFDM0_XCAGCCORE1; - rtlphy->phyreg_def[RF90_PATH_D].rfagc_control1 = ROFDM0_XDAGCCORE1; - - rtlphy->phyreg_def[RF90_PATH_A].rfagc_control2 = ROFDM0_XAAGCCORE2; - rtlphy->phyreg_def[RF90_PATH_B].rfagc_control2 = ROFDM0_XBAGCCORE2; - rtlphy->phyreg_def[RF90_PATH_C].rfagc_control2 = ROFDM0_XCAGCCORE2; - rtlphy->phyreg_def[RF90_PATH_D].rfagc_control2 = ROFDM0_XDAGCCORE2; - - rtlphy->phyreg_def[RF90_PATH_A].rfrxiq_imbal = ROFDM0_XARXIQIMBALANCE; - rtlphy->phyreg_def[RF90_PATH_B].rfrxiq_imbal = ROFDM0_XBRXIQIMBALANCE; - rtlphy->phyreg_def[RF90_PATH_C].rfrxiq_imbal = ROFDM0_XCRXIQIMBANLANCE; - rtlphy->phyreg_def[RF90_PATH_D].rfrxiq_imbal = ROFDM0_XDRXIQIMBALANCE; - - rtlphy->phyreg_def[RF90_PATH_A].rfrx_afe = ROFDM0_XARXAFE; - rtlphy->phyreg_def[RF90_PATH_B].rfrx_afe = ROFDM0_XBRXAFE; - rtlphy->phyreg_def[RF90_PATH_C].rfrx_afe = ROFDM0_XCRXAFE; - rtlphy->phyreg_def[RF90_PATH_D].rfrx_afe = ROFDM0_XDRXAFE; - - rtlphy->phyreg_def[RF90_PATH_A].rftxiq_imbal = ROFDM0_XATXIQIMBALANCE; - rtlphy->phyreg_def[RF90_PATH_B].rftxiq_imbal = ROFDM0_XBTXIQIMBALANCE; - rtlphy->phyreg_def[RF90_PATH_C].rftxiq_imbal = ROFDM0_XCTXIQIMBALANCE; - rtlphy->phyreg_def[RF90_PATH_D].rftxiq_imbal = ROFDM0_XDTXIQIMBALANCE; - - rtlphy->phyreg_def[RF90_PATH_A].rftx_afe = ROFDM0_XATXAFE; - rtlphy->phyreg_def[RF90_PATH_B].rftx_afe = ROFDM0_XBTXAFE; - rtlphy->phyreg_def[RF90_PATH_C].rftx_afe = ROFDM0_XCTXAFE; - rtlphy->phyreg_def[RF90_PATH_D].rftx_afe = ROFDM0_XDTXAFE; - - rtlphy->phyreg_def[RF90_PATH_A].rf_rb = RFPGA0_XA_LSSIREADBACK; - rtlphy->phyreg_def[RF90_PATH_B].rf_rb = RFPGA0_XB_LSSIREADBACK; - rtlphy->phyreg_def[RF90_PATH_C].rf_rb = RFPGA0_XC_LSSIREADBACK; - rtlphy->phyreg_def[RF90_PATH_D].rf_rb = RFPGA0_XD_LSSIREADBACK; - - rtlphy->phyreg_def[RF90_PATH_A].rf_rbpi = TRANSCEIVEA_HSPI_READBACK; - rtlphy->phyreg_def[RF90_PATH_B].rf_rbpi = TRANSCEIVEB_HSPI_READBACK; -} - void rtl8723ae_phy_get_txpower_level(struct ieee80211_hw *hw, long *powerlevel) { struct rtl_priv *rtlpriv = rtl_priv(hw); @@ -785,17 +564,17 @@ long txpwr_dbm; txpwr_level = rtlphy->cur_cck_txpwridx; - txpwr_dbm = _phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_B, txpwr_level); + txpwr_dbm = rtl8723_phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_B, txpwr_level); txpwr_level = rtlphy->cur_ofdm24g_txpwridx + rtlefuse->legacy_ht_txpowerdiff; - if (_phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_G, txpwr_level) > txpwr_dbm) - txpwr_dbm = _phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_G, + if (rtl8723_phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_G, txpwr_level) > txpwr_dbm) + txpwr_dbm = rtl8723_phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_G, txpwr_level); txpwr_level = rtlphy->cur_ofdm24g_txpwridx; - if (_phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_N_24G, txpwr_level) > + if (rtl8723_phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_N_24G, txpwr_level) > txpwr_dbm) - txpwr_dbm = _phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_N_24G, - txpwr_level); + txpwr_dbm = rtl8723_phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_N_24G, + txpwr_level); *powerlevel = txpwr_dbm; } @@ -912,28 +691,6 @@ return txpwridx; } -static long _phy_txpwr_idx_to_dbm(struct ieee80211_hw *hw, - enum wireless_mode wirelessmode, u8 txpwridx) -{ - long offset; - long pwrout_dbm; - - switch (wirelessmode) { - case WIRELESS_MODE_B: - offset = -7; - break; - case WIRELESS_MODE_G: - case WIRELESS_MODE_N_24G: - offset = -8; - break; - default: - offset = -8; - break; - } - pwrout_dbm = txpwridx / 2 + offset; - return pwrout_dbm; -} - void rtl8723ae_phy_set_bw_mode_callback(struct ieee80211_hw *hw) { struct rtl_priv *rtlpriv = rtl_priv(hw); @@ -1117,26 +874,26 @@ u8 num_total_rfpath = rtlphy->num_total_rfpath; precommoncmdcnt = 0; - _phy_set_sw_chnl_cmdarray(precommoncmd, precommoncmdcnt++, - MAX_PRECMD_CNT, CMDID_SET_TXPOWEROWER_LEVEL, - 0, 0, 0); - _phy_set_sw_chnl_cmdarray(precommoncmd, precommoncmdcnt++, - MAX_PRECMD_CNT, CMDID_END, 0, 0, 0); + rtl8723_phy_set_sw_chnl_cmdarray(precommoncmd, precommoncmdcnt++, + MAX_PRECMD_CNT, CMDID_SET_TXPOWEROWER_LEVEL, + 0, 0, 0); + rtl8723_phy_set_sw_chnl_cmdarray(precommoncmd, precommoncmdcnt++, + MAX_PRECMD_CNT, CMDID_END, 0, 0, 0); postcommoncmdcnt = 0; - _phy_set_sw_chnl_cmdarray(postcommoncmd, postcommoncmdcnt++, - MAX_POSTCMD_CNT, CMDID_END, 0, 0, 0); + rtl8723_phy_set_sw_chnl_cmdarray(postcommoncmd, postcommoncmdcnt++, + MAX_POSTCMD_CNT, CMDID_END, 0, 0, 0); rfdependcmdcnt = 0; RT_ASSERT((channel >= 1 && channel <= 14), "illegal channel for Zebra: %d\n", channel); - _phy_set_sw_chnl_cmdarray(rfdependcmd, rfdependcmdcnt++, - MAX_RFDEPENDCMD_CNT, CMDID_RF_WRITEREG, + rtl8723_phy_set_sw_chnl_cmdarray(rfdependcmd, rfdependcmdcnt++, + MAX_RFDEPENDCMD_CNT, CMDID_RF_WRITEREG, RF_CHNLBW, channel, 10); - _phy_set_sw_chnl_cmdarray(rfdependcmd, rfdependcmdcnt++, - MAX_RFDEPENDCMD_CNT, CMDID_END, 0, 0, 0); + rtl8723_phy_set_sw_chnl_cmdarray(rfdependcmd, rfdependcmdcnt++, + MAX_RFDEPENDCMD_CNT, CMDID_END, 0, 0, 0); do { switch (*stage) { @@ -1204,29 +961,6 @@ return false; } -static bool _phy_set_sw_chnl_cmdarray(struct swchnlcmd *cmdtable, - u32 cmdtableidx, u32 cmdtablesz, - enum swchnlcmd_id cmdid, u32 para1, - u32 para2, u32 msdelay) -{ - struct swchnlcmd *pcmd; - - if (cmdtable == NULL) { - RT_ASSERT(false, "cmdtable cannot be NULL.\n"); - return false; - } - - if (cmdtableidx >= cmdtablesz) - return false; - - pcmd = cmdtable + cmdtableidx; - pcmd->cmdid = cmdid; - pcmd->para1 = para1; - pcmd->para2 = para2; - pcmd->msdelay = msdelay; - return true; -} - static u8 _rtl8723ae_phy_path_a_iqk(struct ieee80211_hw *hw, bool config_pathb) { u32 reg_eac, reg_e94, reg_e9c, reg_ea4; @@ -1297,136 +1031,6 @@ return result; } -static void phy_path_a_fill_iqk_matrix(struct ieee80211_hw *hw, bool iqk_ok, - long result[][8], u8 final_candidate, - bool btxonly) -{ - u32 oldval_0, x, tx0_a, reg; - long y, tx0_c; - - if (final_candidate == 0xFF) { - return; - } else if (iqk_ok) { - oldval_0 = (rtl_get_bbreg(hw, ROFDM0_XATXIQIMBALANCE, - MASKDWORD) >> 22) & 0x3FF; - x = result[final_candidate][0]; - if ((x & 0x00000200) != 0) - x = x | 0xFFFFFC00; - tx0_a = (x * oldval_0) >> 8; - rtl_set_bbreg(hw, ROFDM0_XATXIQIMBALANCE, 0x3FF, tx0_a); - rtl_set_bbreg(hw, ROFDM0_ECCATHRESHOLD, BIT(31), - ((x * oldval_0 >> 7) & 0x1)); - y = result[final_candidate][1]; - if ((y & 0x00000200) != 0) - y = y | 0xFFFFFC00; - tx0_c = (y * oldval_0) >> 8; - rtl_set_bbreg(hw, ROFDM0_XCTXAFE, 0xF0000000, - ((tx0_c & 0x3C0) >> 6)); - rtl_set_bbreg(hw, ROFDM0_XATXIQIMBALANCE, 0x003F0000, - (tx0_c & 0x3F)); - rtl_set_bbreg(hw, ROFDM0_ECCATHRESHOLD, BIT(29), - ((y * oldval_0 >> 7) & 0x1)); - if (btxonly) - return; - reg = result[final_candidate][2]; - rtl_set_bbreg(hw, ROFDM0_XARXIQIMBALANCE, 0x3FF, reg); - reg = result[final_candidate][3] & 0x3F; - rtl_set_bbreg(hw, ROFDM0_XARXIQIMBALANCE, 0xFC00, reg); - reg = (result[final_candidate][3] >> 6) & 0xF; - rtl_set_bbreg(hw, 0xca0, 0xF0000000, reg); - } -} - -static void phy_save_adda_regs(struct ieee80211_hw *hw, - u32 *addareg, u32 *addabackup, - u32 registernum) -{ - u32 i; - - for (i = 0; i < registernum; i++) - addabackup[i] = rtl_get_bbreg(hw, addareg[i], MASKDWORD); -} - -static void phy_save_mac_regs(struct ieee80211_hw *hw, u32 *macreg, - u32 *macbackup) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - u32 i; - - for (i = 0; i < (IQK_MAC_REG_NUM - 1); i++) - macbackup[i] = rtl_read_byte(rtlpriv, macreg[i]); - macbackup[i] = rtl_read_dword(rtlpriv, macreg[i]); -} - -static void phy_reload_adda_regs(struct ieee80211_hw *hw, u32 *addareg, - u32 *addabackup, u32 regiesternum) -{ - u32 i; - - for (i = 0; i < regiesternum; i++) - rtl_set_bbreg(hw, addareg[i], MASKDWORD, addabackup[i]); -} - -static void phy_reload_mac_regs(struct ieee80211_hw *hw, u32 *macreg, - u32 *macbackup) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - u32 i; - - for (i = 0; i < (IQK_MAC_REG_NUM - 1); i++) - rtl_write_byte(rtlpriv, macreg[i], (u8) macbackup[i]); - rtl_write_dword(rtlpriv, macreg[i], macbackup[i]); -} - -static void _rtl8723ae_phy_path_adda_on(struct ieee80211_hw *hw, - u32 *addareg, bool is_patha_on, - bool is2t) -{ - u32 pathOn; - u32 i; - - pathOn = is_patha_on ? 0x04db25a4 : 0x0b1b25a4; - if (false == is2t) { - pathOn = 0x0bdb25a0; - rtl_set_bbreg(hw, addareg[0], MASKDWORD, 0x0b1b25a0); - } else { - rtl_set_bbreg(hw, addareg[0], MASKDWORD, pathOn); - } - - for (i = 1; i < IQK_ADDA_REG_NUM; i++) - rtl_set_bbreg(hw, addareg[i], MASKDWORD, pathOn); -} - -static void _rtl8723ae_phy_mac_setting_calibration(struct ieee80211_hw *hw, - u32 *macreg, u32 *macbackup) -{ - struct rtl_priv *rtlpriv = rtl_priv(hw); - u32 i = 0; - - rtl_write_byte(rtlpriv, macreg[i], 0x3F); - - for (i = 1; i < (IQK_MAC_REG_NUM - 1); i++) - rtl_write_byte(rtlpriv, macreg[i], - (u8) (macbackup[i] & (~BIT(3)))); - rtl_write_byte(rtlpriv, macreg[i], (u8) (macbackup[i] & (~BIT(5)))); -} - -static void _rtl8723ae_phy_path_a_standby(struct ieee80211_hw *hw) -{ - rtl_set_bbreg(hw, 0xe28, MASKDWORD, 0x0); - rtl_set_bbreg(hw, 0x840, MASKDWORD, 0x00010000); - rtl_set_bbreg(hw, 0xe28, MASKDWORD, 0x80800000); -} - -static void _rtl8723ae_phy_pi_mode_switch(struct ieee80211_hw *hw, bool pi_mode) -{ - u32 mode; - - mode = pi_mode ? 0x01000100 : 0x01000000; - rtl_set_bbreg(hw, 0x820, MASKDWORD, mode); - rtl_set_bbreg(hw, 0x828, MASKDWORD, mode); -} - static bool phy_simularity_comp(struct ieee80211_hw *hw, long result[][8], u8 c1, u8 c2) { @@ -1498,10 +1102,12 @@ const u32 retrycount = 2; if (t == 0) { - phy_save_adda_regs(hw, adda_reg, rtlphy->adda_backup, 16); - phy_save_mac_regs(hw, iqk_mac_reg, rtlphy->iqk_mac_backup); + rtl8723_save_adda_registers(hw, adda_reg, rtlphy->adda_backup, + 16); + rtl8723_phy_save_mac_registers(hw, iqk_mac_reg, + rtlphy->iqk_mac_backup); } - _rtl8723ae_phy_path_adda_on(hw, adda_reg, true, is2t); + rtl8723_phy_path_adda_on(hw, adda_reg, true, is2t); if (t == 0) { rtlphy->rfpi_enable = (u8) rtl_get_bbreg(hw, RFPGA0_XA_HSSIPARAMETER1, @@ -1509,7 +1115,7 @@ } if (!rtlphy->rfpi_enable) - _rtl8723ae_phy_pi_mode_switch(hw, true); + rtl8723_phy_pi_mode_switch(hw, true); if (t == 0) { rtlphy->reg_c04 = rtl_get_bbreg(hw, 0xc04, MASKDWORD); rtlphy->reg_c08 = rtl_get_bbreg(hw, 0xc08, MASKDWORD); @@ -1522,7 +1128,7 @@ rtl_set_bbreg(hw, 0x840, MASKDWORD, 0x00010000); rtl_set_bbreg(hw, 0x844, MASKDWORD, 0x00010000); } - _rtl8723ae_phy_mac_setting_calibration(hw, iqk_mac_reg, + rtl8723_phy_mac_setting_calibration(hw, iqk_mac_reg, rtlphy->iqk_mac_backup); rtl_set_bbreg(hw, 0xb68, MASKDWORD, 0x00080000); if (is2t) @@ -1552,8 +1158,8 @@ } if (is2t) { - _rtl8723ae_phy_path_a_standby(hw); - _rtl8723ae_phy_path_adda_on(hw, adda_reg, false, is2t); + rtl8723_phy_path_a_standby(hw); + rtl8723_phy_path_adda_on(hw, adda_reg, false, is2t); for (i = 0; i < retrycount; i++) { pathb_ok = _rtl8723ae_phy_path_b_iqk(hw); if (pathb_ok == 0x03) { @@ -1588,9 +1194,11 @@ rtl_set_bbreg(hw, 0x844, MASKDWORD, 0x00032ed3); if (t != 0) { if (!rtlphy->rfpi_enable) - _rtl8723ae_phy_pi_mode_switch(hw, false); - phy_reload_adda_regs(hw, adda_reg, rtlphy->adda_backup, 16); - phy_reload_mac_regs(hw, iqk_mac_reg, rtlphy->iqk_mac_backup); + rtl8723_phy_pi_mode_switch(hw, false); + rtl8723_phy_reload_adda_registers(hw, adda_reg, + rtlphy->adda_backup, 16); + rtl8723_phy_reload_mac_registers(hw, iqk_mac_reg, + rtlphy->iqk_mac_backup); } } @@ -1691,7 +1299,8 @@ }; if (recovery) { - phy_reload_adda_regs(hw, iqk_bb_reg, rtlphy->iqk_bb_backup, 10); + rtl8723_phy_reload_adda_registers(hw, iqk_bb_reg, + rtlphy->iqk_bb_backup, 10); return; } if (start_conttx || singletone) @@ -1756,9 +1365,10 @@ rtlphy->reg_e9c = rtlphy->reg_ebc = 0x0; } if (reg_e94 != 0) /*&&(reg_ea4 != 0) */ - phy_path_a_fill_iqk_matrix(hw, patha_ok, result, - final_candidate, (reg_ea4 == 0)); - phy_save_adda_regs(hw, iqk_bb_reg, rtlphy->iqk_bb_backup, 10); + rtl8723_phy_path_a_fill_iqk_matrix(hw, patha_ok, result, + final_candidate, + (reg_ea4 == 0)); + rtl8723_save_adda_registers(hw, iqk_bb_reg, rtlphy->iqk_bb_backup, 10); } void rtl8723ae_phy_lc_calibrate(struct ieee80211_hw *hw) --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723ae/phy.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723ae/phy.h @@ -76,23 +76,6 @@ #define RTL92C_MAX_PATH_NUM 2 -enum swchnlcmd_id { - CMDID_END, - CMDID_SET_TXPOWEROWER_LEVEL, - CMDID_BBREGWRITE10, - CMDID_WRITEPORT_ULONG, - CMDID_WRITEPORT_USHORT, - CMDID_WRITEPORT_UCHAR, - CMDID_RF_WRITEREG, -}; - -struct swchnlcmd { - enum swchnlcmd_id cmdid; - u32 para1; - u32 para2; - u32 msdelay; -}; - enum hw90_block_e { HW90_BLOCK_MAC = 0, HW90_BLOCK_PHY0 = 1, @@ -183,10 +166,6 @@ u32 mcs_original_offset[4][16]; }; -u32 rtl8723ae_phy_query_bb_reg(struct ieee80211_hw *hw, - u32 regaddr, u32 bitmask); -void rtl8723ae_phy_set_bb_reg(struct ieee80211_hw *hw, - u32 regaddr, u32 bitmask, u32 data); u32 rtl8723ae_phy_query_rf_reg(struct ieee80211_hw *hw, enum radio_path rfpath, u32 regaddr, u32 bitmask); --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723ae/sw.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723ae/sw.c @@ -37,8 +37,11 @@ #include "reg.h" #include "def.h" #include "phy.h" +#include "../rtl8723com/phy_common.h" #include "dm.h" #include "hw.h" +#include "fw.h" +#include "../rtl8723com/fw_common.h" #include "sw.h" #include "trx.h" #include "led.h" @@ -193,6 +196,11 @@ } } +static bool is_fw_header(struct rtl92c_firmware_header *hdr) +{ + return (hdr->signature & 0xfff0) == 0x2300; +} + static struct rtl_hal_ops rtl8723ae_hal_ops = { .init_sw_vars = rtl8723ae_init_sw_vars, .deinit_sw_vars = rtl8723ae_deinit_sw_vars, @@ -231,13 +239,14 @@ .set_key = rtl8723ae_set_key, .init_sw_leds = rtl8723ae_init_sw_leds, .allow_all_destaddr = rtl8723ae_allow_all_destaddr, - .get_bbreg = rtl8723ae_phy_query_bb_reg, - .set_bbreg = rtl8723ae_phy_set_bb_reg, + .get_bbreg = rtl8723_phy_query_bb_reg, + .set_bbreg = rtl8723_phy_set_bb_reg, .get_rfreg = rtl8723ae_phy_query_rf_reg, .set_rfreg = rtl8723ae_phy_set_rf_reg, .c2h_command_handle = rtl_8723e_c2h_command_handle, .bt_wifi_media_status_notify = rtl_8723e_bt_wifi_media_status_notify, .bt_coex_off_before_lps = rtl8723ae_bt_coex_off_before_lps, + .is_fw_header = is_fw_header, }; static struct rtl_mod_params rtl8723ae_mod_params = { --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723ae/trx.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723ae/trx.c @@ -334,7 +334,7 @@ /* during testing, hdr could be NULL here */ return false; } - if ((ieee80211_is_robust_mgmt_frame(hdr)) && + if ((_ieee80211_is_robust_mgmt_frame(hdr)) && (ieee80211_has_protected(hdr->frame_control))) rx_status->flag &= ~RX_FLAG_DECRYPTED; else --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723ae/trx.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723ae/trx.h @@ -521,12 +521,6 @@ memset(__pdesc, 0, _size); \ } while (0) -#define RTL8723E_RX_HAL_IS_CCK_RATE(rxmcs) \ - ((rxmcs) == DESC92_RATE1M || \ - (rxmcs) == DESC92_RATE2M || \ - (rxmcs) == DESC92_RATE5_5M || \ - (rxmcs) == DESC92_RATE11M) - struct rx_fwinfo_8723e { u8 gain_trsw[4]; u8 pwdb_all; --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/Makefile +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/Makefile @@ -0,0 +1,20 @@ +obj-m := rtl8723be.o + + +rtl8723be-objs := \ + dm.o \ + fw.o \ + hw.o \ + led.o \ + phy.o \ + pwrseq.o \ + pwrseqcmd.o \ + rf.o \ + sw.o \ + table.o \ + trx.o \ + + +obj-$(CONFIG_RTL8723BE) += rtl8723be.o + +ccflags-y += -D__CHECK_ENDIAN__ --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/def.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/def.h @@ -0,0 +1,248 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8723BE_DEF_H__ +#define __RTL8723BE_DEF_H__ + +#define HAL_RETRY_LIMIT_INFRA 48 +#define HAL_RETRY_LIMIT_AP_ADHOC 7 + +#define RESET_DELAY_8185 20 + +#define RT_IBSS_INT_MASKS (IMR_BCNINT | IMR_TBDOK | IMR_TBDER) +#define RT_AC_INT_MASKS (IMR_VIDOK | IMR_VODOK | IMR_BEDOK|IMR_BKDOK) + +#define NUM_OF_FIRMWARE_QUEUE 10 +#define NUM_OF_PAGES_IN_FW 0x100 +#define NUM_OF_PAGE_IN_FW_QUEUE_BK 0x07 +#define NUM_OF_PAGE_IN_FW_QUEUE_BE 0x07 +#define NUM_OF_PAGE_IN_FW_QUEUE_VI 0x07 +#define NUM_OF_PAGE_IN_FW_QUEUE_VO 0x07 +#define NUM_OF_PAGE_IN_FW_QUEUE_HCCA 0x0 +#define NUM_OF_PAGE_IN_FW_QUEUE_CMD 0x0 +#define NUM_OF_PAGE_IN_FW_QUEUE_MGNT 0x02 +#define NUM_OF_PAGE_IN_FW_QUEUE_HIGH 0x02 +#define NUM_OF_PAGE_IN_FW_QUEUE_BCN 0x2 +#define NUM_OF_PAGE_IN_FW_QUEUE_PUB 0xA1 + +#define NUM_OF_PAGE_IN_FW_QUEUE_BK_DTM 0x026 +#define NUM_OF_PAGE_IN_FW_QUEUE_BE_DTM 0x048 +#define NUM_OF_PAGE_IN_FW_QUEUE_VI_DTM 0x048 +#define NUM_OF_PAGE_IN_FW_QUEUE_VO_DTM 0x026 +#define NUM_OF_PAGE_IN_FW_QUEUE_PUB_DTM 0x00 + +#define MAX_LINES_HWCONFIG_TXT 1000 +#define MAX_BYTES_LINE_HWCONFIG_TXT 256 + +#define SW_THREE_WIRE 0 +#define HW_THREE_WIRE 2 + +#define BT_DEMO_BOARD 0 +#define BT_QA_BOARD 1 +#define BT_FPGA 2 + +#define HAL_PRIME_CHNL_OFFSET_DONT_CARE 0 +#define HAL_PRIME_CHNL_OFFSET_LOWER 1 +#define HAL_PRIME_CHNL_OFFSET_UPPER 2 + +#define MAX_H2C_QUEUE_NUM 10 + +#define RX_MPDU_QUEUE 0 +#define RX_CMD_QUEUE 1 +#define RX_MAX_QUEUE 2 +#define AC2QUEUEID(_AC) (_AC) + +#define C2H_RX_CMD_HDR_LEN 8 +#define GET_C2H_CMD_CMD_LEN(__prxhdr) \ + LE_BITS_TO_4BYTE((__prxhdr), 0, 16) +#define GET_C2H_CMD_ELEMENT_ID(__prxhdr) \ + LE_BITS_TO_4BYTE((__prxhdr), 16, 8) +#define GET_C2H_CMD_CMD_SEQ(__prxhdr) \ + LE_BITS_TO_4BYTE((__prxhdr), 24, 7) +#define GET_C2H_CMD_CONTINUE(__prxhdr) \ + LE_BITS_TO_4BYTE((__prxhdr), 31, 1) +#define GET_C2H_CMD_CONTENT(__prxhdr) \ + ((u8 *)(__prxhdr) + C2H_RX_CMD_HDR_LEN) + +#define GET_C2H_CMD_FEEDBACK_ELEMENT_ID(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE((__pcmdfbhdr), 0, 8) +#define GET_C2H_CMD_FEEDBACK_CCX_LEN(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE((__pcmdfbhdr), 8, 8) +#define GET_C2H_CMD_FEEDBACK_CCX_CMD_CNT(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE((__pcmdfbhdr), 16, 16) +#define GET_C2H_CMD_FEEDBACK_CCX_MAC_ID(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE(((__pcmdfbhdr) + 4), 0, 5) +#define GET_C2H_CMD_FEEDBACK_CCX_VALID(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE(((__pcmdfbhdr) + 4), 7, 1) +#define GET_C2H_CMD_FEEDBACK_CCX_RETRY_CNT(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE(((__pcmdfbhdr) + 4), 8, 5) +#define GET_C2H_CMD_FEEDBACK_CCX_TOK(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE(((__pcmdfbhdr) + 4), 15, 1) +#define GET_C2H_CMD_FEEDBACK_CCX_QSEL(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE(((__pcmdfbhdr) + 4), 16, 4) +#define GET_C2H_CMD_FEEDBACK_CCX_SEQ(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE(((__pcmdfbhdr) + 4), 20, 12) + +#define CHIP_BONDING_IDENTIFIER(_value) (((_value)>>22)&0x3) +#define CHIP_BONDING_92C_1T2R 0x1 + +#define CHIP_8723 BIT(0) +#define CHIP_8723B (BIT(1) | BIT(2)) +#define NORMAL_CHIP BIT(3) +#define RF_TYPE_1T1R (~(BIT(4) | BIT(5) | BIT(6))) +#define RF_TYPE_1T2R BIT(4) +#define RF_TYPE_2T2R BIT(5) +#define CHIP_VENDOR_UMC BIT(7) +#define B_CUT_VERSION BIT(12) +#define C_CUT_VERSION BIT(13) +#define D_CUT_VERSION ((BIT(12) | BIT(13))) +#define E_CUT_VERSION BIT(14) +#define RF_RL_ID (BIT(31) | BIT(30) | BIT(29) | BIT(28)) + +/* MASK */ +#define IC_TYPE_MASK (BIT(0) | BIT(1) | BIT(2)) +#define CHIP_TYPE_MASK BIT(3) +#define RF_TYPE_MASK (BIT(4) | BIT(5) | BIT(6)) +#define MANUFACTUER_MASK BIT(7) +#define ROM_VERSION_MASK (BIT(11) | BIT(10) | BIT(9) | BIT(8)) +#define CUT_VERSION_MASK (BIT(15) | BIT(14) | BIT(13) | BIT(12)) + +/* Get element */ +#define GET_CVID_IC_TYPE(version) ((version) & IC_TYPE_MASK) +#define GET_CVID_CHIP_TYPE(version) ((version) & CHIP_TYPE_MASK) +#define GET_CVID_RF_TYPE(version) ((version) & RF_TYPE_MASK) +#define GET_CVID_MANUFACTUER(version) ((version) & MANUFACTUER_MASK) +#define GET_CVID_ROM_VERSION(version) ((version) & ROM_VERSION_MASK) +#define GET_CVID_CUT_VERSION(version) ((version) & CUT_VERSION_MASK) + +#define IS_92C_SERIAL(version) ((IS_81XXC(version) && IS_2T2R(version)) ?\ + true : false) +#define IS_81XXC(version) ((GET_CVID_IC_TYPE(version) == 0) ?\ + true : false) +#define IS_8723_SERIES(version) ((GET_CVID_IC_TYPE(version) == CHIP_8723) ?\ + true : false) +#define IS_1T1R(version) ((GET_CVID_RF_TYPE(version)) ? false : true) +#define IS_1T2R(version) ((GET_CVID_RF_TYPE(version) == RF_TYPE_1T2R)\ + ? true : false) +#define IS_2T2R(version) ((GET_CVID_RF_TYPE(version) == RF_TYPE_2T2R)\ + ? true : false) +enum rf_optype { + RF_OP_BY_SW_3WIRE = 0, + RF_OP_BY_FW, + RF_OP_MAX +}; + +enum rf_power_state { + RF_ON, + RF_OFF, + RF_SLEEP, + RF_SHUT_DOWN, +}; + +enum power_save_mode { + POWER_SAVE_MODE_ACTIVE, + POWER_SAVE_MODE_SAVE, +}; + +enum power_polocy_config { + POWERCFG_MAX_POWER_SAVINGS, + POWERCFG_GLOBAL_POWER_SAVINGS, + POWERCFG_LOCAL_POWER_SAVINGS, + POWERCFG_LENOVO, +}; + +enum interface_select_pci { + INTF_SEL1_MINICARD = 0, + INTF_SEL0_PCIE = 1, + INTF_SEL2_RSV = 2, + INTF_SEL3_RSV = 3, +}; + +enum rtl_desc_qsel { + QSLT_BK = 0x2, + QSLT_BE = 0x0, + QSLT_VI = 0x5, + QSLT_VO = 0x7, + QSLT_BEACON = 0x10, + QSLT_HIGH = 0x11, + QSLT_MGNT = 0x12, + QSLT_CMD = 0x13, +}; + +enum rtl_desc8723e_rate { + DESC92C_RATE1M = 0x00, + DESC92C_RATE2M = 0x01, + DESC92C_RATE5_5M = 0x02, + DESC92C_RATE11M = 0x03, + + DESC92C_RATE6M = 0x04, + DESC92C_RATE9M = 0x05, + DESC92C_RATE12M = 0x06, + DESC92C_RATE18M = 0x07, + DESC92C_RATE24M = 0x08, + DESC92C_RATE36M = 0x09, + DESC92C_RATE48M = 0x0a, + DESC92C_RATE54M = 0x0b, + + DESC92C_RATEMCS0 = 0x0c, + DESC92C_RATEMCS1 = 0x0d, + DESC92C_RATEMCS2 = 0x0e, + DESC92C_RATEMCS3 = 0x0f, + DESC92C_RATEMCS4 = 0x10, + DESC92C_RATEMCS5 = 0x11, + DESC92C_RATEMCS6 = 0x12, + DESC92C_RATEMCS7 = 0x13, + DESC92C_RATEMCS8 = 0x14, + DESC92C_RATEMCS9 = 0x15, + DESC92C_RATEMCS10 = 0x16, + DESC92C_RATEMCS11 = 0x17, + DESC92C_RATEMCS12 = 0x18, + DESC92C_RATEMCS13 = 0x19, + DESC92C_RATEMCS14 = 0x1a, + DESC92C_RATEMCS15 = 0x1b, + DESC92C_RATEMCS15_SG = 0x1c, + DESC92C_RATEMCS32 = 0x20, +}; + +enum rx_packet_type { + NORMAL_RX, + TX_REPORT1, + TX_REPORT2, + HIS_REPORT, +}; + +struct phy_sts_cck_8723e_t { + u8 adc_pwdb_X[4]; + u8 sq_rpt; + u8 cck_agc_rpt; +}; + +struct h2c_cmd_8723e { + u8 element_id; + u32 cmd_len; + u8 *p_cmdbuffer; +}; + +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/dm.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/dm.c @@ -0,0 +1,1325 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "../base.h" +#include "../pci.h" +#include "reg.h" +#include "def.h" +#include "phy.h" +#include "dm.h" +#include "../rtl8723com/dm_common.h" +#include "fw.h" +#include "../rtl8723com/fw_common.h" +#include "trx.h" +#include "../btcoexist/rtl_btc.h" + +static const u32 ofdmswing_table[] = { + 0x0b40002d, /* 0, -15.0dB */ + 0x0c000030, /* 1, -14.5dB */ + 0x0cc00033, /* 2, -14.0dB */ + 0x0d800036, /* 3, -13.5dB */ + 0x0e400039, /* 4, -13.0dB */ + 0x0f00003c, /* 5, -12.5dB */ + 0x10000040, /* 6, -12.0dB */ + 0x11000044, /* 7, -11.5dB */ + 0x12000048, /* 8, -11.0dB */ + 0x1300004c, /* 9, -10.5dB */ + 0x14400051, /* 10, -10.0dB */ + 0x15800056, /* 11, -9.5dB */ + 0x16c0005b, /* 12, -9.0dB */ + 0x18000060, /* 13, -8.5dB */ + 0x19800066, /* 14, -8.0dB */ + 0x1b00006c, /* 15, -7.5dB */ + 0x1c800072, /* 16, -7.0dB */ + 0x1e400079, /* 17, -6.5dB */ + 0x20000080, /* 18, -6.0dB */ + 0x22000088, /* 19, -5.5dB */ + 0x24000090, /* 20, -5.0dB */ + 0x26000098, /* 21, -4.5dB */ + 0x288000a2, /* 22, -4.0dB */ + 0x2ac000ab, /* 23, -3.5dB */ + 0x2d4000b5, /* 24, -3.0dB */ + 0x300000c0, /* 25, -2.5dB */ + 0x32c000cb, /* 26, -2.0dB */ + 0x35c000d7, /* 27, -1.5dB */ + 0x390000e4, /* 28, -1.0dB */ + 0x3c8000f2, /* 29, -0.5dB */ + 0x40000100, /* 30, +0dB */ + 0x43c0010f, /* 31, +0.5dB */ + 0x47c0011f, /* 32, +1.0dB */ + 0x4c000130, /* 33, +1.5dB */ + 0x50800142, /* 34, +2.0dB */ + 0x55400155, /* 35, +2.5dB */ + 0x5a400169, /* 36, +3.0dB */ + 0x5fc0017f, /* 37, +3.5dB */ + 0x65400195, /* 38, +4.0dB */ + 0x6b8001ae, /* 39, +4.5dB */ + 0x71c001c7, /* 40, +5.0dB */ + 0x788001e2, /* 41, +5.5dB */ + 0x7f8001fe /* 42, +6.0dB */ +}; + +static const u8 cckswing_table_ch1ch13[CCK_TABLE_SIZE][8] = { + {0x09, 0x08, 0x07, 0x06, 0x04, 0x03, 0x01, 0x01}, /* 0, -16.0dB */ + {0x09, 0x09, 0x08, 0x06, 0x05, 0x03, 0x01, 0x01}, /* 1, -15.5dB */ + {0x0a, 0x09, 0x08, 0x07, 0x05, 0x03, 0x02, 0x01}, /* 2, -15.0dB */ + {0x0a, 0x0a, 0x09, 0x07, 0x05, 0x03, 0x02, 0x01}, /* 3, -14.5dB */ + {0x0b, 0x0a, 0x09, 0x08, 0x06, 0x04, 0x02, 0x01}, /* 4, -14.0dB */ + {0x0b, 0x0b, 0x0a, 0x08, 0x06, 0x04, 0x02, 0x01}, /* 5, -13.5dB */ + {0x0c, 0x0c, 0x0a, 0x09, 0x06, 0x04, 0x02, 0x01}, /* 6, -13.0dB */ + {0x0d, 0x0c, 0x0b, 0x09, 0x07, 0x04, 0x02, 0x01}, /* 7, -12.5dB */ + {0x0d, 0x0d, 0x0c, 0x0a, 0x07, 0x05, 0x02, 0x01}, /* 8, -12.0dB */ + {0x0e, 0x0e, 0x0c, 0x0a, 0x08, 0x05, 0x02, 0x01}, /* 9, -11.5dB */ + {0x0f, 0x0f, 0x0d, 0x0b, 0x08, 0x05, 0x03, 0x01}, /* 10, -11.0dB */ + {0x10, 0x10, 0x0e, 0x0b, 0x08, 0x05, 0x03, 0x01}, /* 11, -10.5dB */ + {0x11, 0x11, 0x0f, 0x0c, 0x09, 0x06, 0x03, 0x01}, /* 12, -10.0dB */ + {0x12, 0x12, 0x0f, 0x0c, 0x09, 0x06, 0x03, 0x01}, /* 13, -9.5dB */ + {0x13, 0x13, 0x10, 0x0d, 0x0a, 0x06, 0x03, 0x01}, /* 14, -9.0dB */ + {0x14, 0x14, 0x11, 0x0e, 0x0b, 0x07, 0x03, 0x02}, /* 15, -8.5dB */ + {0x16, 0x15, 0x12, 0x0f, 0x0b, 0x07, 0x04, 0x01}, /* 16, -8.0dB */ + {0x17, 0x16, 0x13, 0x10, 0x0c, 0x08, 0x04, 0x02}, /* 17, -7.5dB */ + {0x18, 0x17, 0x15, 0x11, 0x0c, 0x08, 0x04, 0x02}, /* 18, -7.0dB */ + {0x1a, 0x19, 0x16, 0x12, 0x0d, 0x09, 0x04, 0x02}, /* 19, -6.5dB */ + {0x1b, 0x1a, 0x17, 0x13, 0x0e, 0x09, 0x04, 0x02}, /* 20, -6.0dB */ + {0x1d, 0x1c, 0x18, 0x14, 0x0f, 0x0a, 0x05, 0x02}, /* 21, -5.5dB */ + {0x1f, 0x1e, 0x1a, 0x15, 0x10, 0x0a, 0x05, 0x02}, /* 22, -5.0dB */ + {0x20, 0x20, 0x1b, 0x16, 0x11, 0x08, 0x05, 0x02}, /* 23, -4.5dB */ + {0x22, 0x21, 0x1d, 0x18, 0x11, 0x0b, 0x06, 0x02}, /* 24, -4.0dB */ + {0x24, 0x23, 0x1f, 0x19, 0x13, 0x0c, 0x06, 0x03}, /* 25, -3.5dB */ + {0x26, 0x25, 0x21, 0x1b, 0x14, 0x0d, 0x06, 0x03}, /* 26, -3.0dB */ + {0x28, 0x28, 0x22, 0x1c, 0x15, 0x0d, 0x07, 0x03}, /* 27, -2.5dB */ + {0x2b, 0x2a, 0x25, 0x1e, 0x16, 0x0e, 0x07, 0x03}, /* 28, -2.0dB */ + {0x2d, 0x2d, 0x27, 0x1f, 0x18, 0x0f, 0x08, 0x03}, /* 29, -1.5dB */ + {0x30, 0x2f, 0x29, 0x21, 0x19, 0x10, 0x08, 0x03}, /* 30, -1.0dB */ + {0x33, 0x32, 0x2b, 0x23, 0x1a, 0x11, 0x08, 0x04}, /* 31, -0.5dB */ + {0x36, 0x35, 0x2e, 0x25, 0x1c, 0x12, 0x09, 0x04} /* 32, +0dB */ +}; + +static const u8 cckswing_table_ch14[CCK_TABLE_SIZE][8] = { + {0x09, 0x08, 0x07, 0x04, 0x00, 0x00, 0x00, 0x00}, /* 0, -16.0dB */ + {0x09, 0x09, 0x08, 0x05, 0x00, 0x00, 0x00, 0x00}, /* 1, -15.5dB */ + {0x0a, 0x09, 0x08, 0x05, 0x00, 0x00, 0x00, 0x00}, /* 2, -15.0dB */ + {0x0a, 0x0a, 0x09, 0x05, 0x00, 0x00, 0x00, 0x00}, /* 3, -14.5dB */ + {0x0b, 0x0a, 0x09, 0x05, 0x00, 0x00, 0x00, 0x00}, /* 4, -14.0dB */ + {0x0b, 0x0b, 0x0a, 0x06, 0x00, 0x00, 0x00, 0x00}, /* 5, -13.5dB */ + {0x0c, 0x0c, 0x0a, 0x06, 0x00, 0x00, 0x00, 0x00}, /* 6, -13.0dB */ + {0x0d, 0x0c, 0x0b, 0x06, 0x00, 0x00, 0x00, 0x00}, /* 7, -12.5dB */ + {0x0d, 0x0d, 0x0c, 0x07, 0x00, 0x00, 0x00, 0x00}, /* 8, -12.0dB */ + {0x0e, 0x0e, 0x0c, 0x07, 0x00, 0x00, 0x00, 0x00}, /* 9, -11.5dB */ + {0x0f, 0x0f, 0x0d, 0x08, 0x00, 0x00, 0x00, 0x00}, /* 10, -11.0dB */ + {0x10, 0x10, 0x0e, 0x08, 0x00, 0x00, 0x00, 0x00}, /* 11, -10.5dB */ + {0x11, 0x11, 0x0f, 0x09, 0x00, 0x00, 0x00, 0x00}, /* 12, -10.0dB */ + {0x12, 0x12, 0x0f, 0x09, 0x00, 0x00, 0x00, 0x00}, /* 13, -9.5dB */ + {0x13, 0x13, 0x10, 0x0a, 0x00, 0x00, 0x00, 0x00}, /* 14, -9.0dB */ + {0x14, 0x14, 0x11, 0x0a, 0x00, 0x00, 0x00, 0x00}, /* 15, -8.5dB */ + {0x16, 0x15, 0x12, 0x0b, 0x00, 0x00, 0x00, 0x00}, /* 16, -8.0dB */ + {0x17, 0x16, 0x13, 0x0b, 0x00, 0x00, 0x00, 0x00}, /* 17, -7.5dB */ + {0x18, 0x17, 0x15, 0x0c, 0x00, 0x00, 0x00, 0x00}, /* 18, -7.0dB */ + {0x1a, 0x19, 0x16, 0x0d, 0x00, 0x00, 0x00, 0x00}, /* 19, -6.5dB */ + {0x1b, 0x1a, 0x17, 0x0e, 0x00, 0x00, 0x00, 0x00}, /* 20, -6.0dB */ + {0x1d, 0x1c, 0x18, 0x0e, 0x00, 0x00, 0x00, 0x00}, /* 21, -5.5dB */ + {0x1f, 0x1e, 0x1a, 0x0f, 0x00, 0x00, 0x00, 0x00}, /* 22, -5.0dB */ + {0x20, 0x20, 0x1b, 0x10, 0x00, 0x00, 0x00, 0x00}, /* 23, -4.5dB */ + {0x22, 0x21, 0x1d, 0x11, 0x00, 0x00, 0x00, 0x00}, /* 24, -4.0dB */ + {0x24, 0x23, 0x1f, 0x12, 0x00, 0x00, 0x00, 0x00}, /* 25, -3.5dB */ + {0x26, 0x25, 0x21, 0x13, 0x00, 0x00, 0x00, 0x00}, /* 26, -3.0dB */ + {0x28, 0x28, 0x24, 0x14, 0x00, 0x00, 0x00, 0x00}, /* 27, -2.5dB */ + {0x2b, 0x2a, 0x25, 0x15, 0x00, 0x00, 0x00, 0x00}, /* 28, -2.0dB */ + {0x2d, 0x2d, 0x17, 0x17, 0x00, 0x00, 0x00, 0x00}, /* 29, -1.5dB */ + {0x30, 0x2f, 0x29, 0x18, 0x00, 0x00, 0x00, 0x00}, /* 30, -1.0dB */ + {0x33, 0x32, 0x2b, 0x19, 0x00, 0x00, 0x00, 0x00}, /* 31, -0.5dB */ + {0x36, 0x35, 0x2e, 0x1b, 0x00, 0x00, 0x00, 0x00} /* 32, +0dB */ +}; + +static const u32 edca_setting_dl[PEER_MAX] = { + 0xa44f, /* 0 UNKNOWN */ + 0x5ea44f, /* 1 REALTEK_90 */ + 0x5e4322, /* 2 REALTEK_92SE */ + 0x5ea42b, /* 3 BROAD */ + 0xa44f, /* 4 RAL */ + 0xa630, /* 5 ATH */ + 0x5ea630, /* 6 CISCO */ + 0x5ea42b, /* 7 MARVELL */ +}; + +static const u32 edca_setting_ul[PEER_MAX] = { + 0x5e4322, /* 0 UNKNOWN */ + 0xa44f, /* 1 REALTEK_90 */ + 0x5ea44f, /* 2 REALTEK_92SE */ + 0x5ea32b, /* 3 BROAD */ + 0x5ea422, /* 4 RAL */ + 0x5ea322, /* 5 ATH */ + 0x3ea430, /* 6 CISCO */ + 0x5ea44f, /* 7 MARV */ +}; + +void rtl8723be_dm_txpower_track_adjust(struct ieee80211_hw *hw, u8 type, + u8 *pdirection, u32 *poutwrite_val) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + u8 pwr_val = 0; + u8 ofdm_base = rtlpriv->dm.swing_idx_ofdm_base[RF90_PATH_A]; + u8 ofdm_val = rtlpriv->dm.swing_idx_ofdm[RF90_PATH_A]; + u8 cck_base = rtldm->swing_idx_cck_base; + u8 cck_val = rtldm->swing_idx_cck; + + if (type == 0) { + if (ofdm_val <= ofdm_base) { + *pdirection = 1; + pwr_val = ofdm_base - ofdm_val; + } else { + *pdirection = 2; + pwr_val = ofdm_val - ofdm_base; + } + } else if (type == 1) { + if (cck_val <= cck_base) { + *pdirection = 1; + pwr_val = cck_base - cck_val; + } else { + *pdirection = 2; + pwr_val = cck_val - cck_base; + } + } + + if (pwr_val >= TXPWRTRACK_MAX_IDX && (*pdirection == 1)) + pwr_val = TXPWRTRACK_MAX_IDX; + + *poutwrite_val = pwr_val | (pwr_val << 8) | + (pwr_val << 16) | (pwr_val << 24); +} + +static void rtl8723be_dm_diginit(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct dig_t *dm_digtable = &rtlpriv->dm_digtable; + + dm_digtable->dig_enable_flag = true; + dm_digtable->cur_igvalue = rtl_get_bbreg(hw, + ROFDM0_XAAGCCORE1, 0x7f); + dm_digtable->rssi_lowthresh = DM_DIG_THRESH_LOW; + dm_digtable->rssi_highthresh = DM_DIG_THRESH_HIGH; + dm_digtable->fa_lowthresh = DM_FALSEALARM_THRESH_LOW; + dm_digtable->fa_highthresh = DM_FALSEALARM_THRESH_HIGH; + dm_digtable->rx_gain_max = DM_DIG_MAX; + dm_digtable->rx_gain_min = DM_DIG_MIN; + dm_digtable->back_val = DM_DIG_BACKOFF_DEFAULT; + dm_digtable->back_range_max = DM_DIG_BACKOFF_MAX; + dm_digtable->back_range_min = DM_DIG_BACKOFF_MIN; + dm_digtable->pre_cck_cca_thres = 0xff; + dm_digtable->cur_cck_cca_thres = 0x83; + dm_digtable->forbidden_igi = DM_DIG_MIN; + dm_digtable->large_fa_hit = 0; + dm_digtable->recover_cnt = 0; + dm_digtable->dig_min_0 = DM_DIG_MIN; + dm_digtable->dig_min_1 = DM_DIG_MIN; + dm_digtable->media_connect_0 = false; + dm_digtable->media_connect_1 = false; + rtlpriv->dm.dm_initialgain_enable = true; + dm_digtable->bt30_cur_igi = 0x32; +} + +void rtl8723be_dm_init_rate_adaptive_mask(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rate_adaptive *ra = &(rtlpriv->ra); + + ra->ratr_state = DM_RATR_STA_INIT; + ra->pre_ratr_state = DM_RATR_STA_INIT; + + if (rtlpriv->dm.dm_type == DM_TYPE_BYDRIVER) + rtlpriv->dm.useramask = true; + else + rtlpriv->dm.useramask = false; + + ra->high_rssi_thresh_for_ra = 50; + ra->low_rssi_thresh_for_ra40m = 20; +} + +static void rtl8723be_dm_init_txpower_tracking(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtlpriv->dm.txpower_tracking = true; + rtlpriv->dm.txpower_track_control = true; + rtlpriv->dm.thermalvalue = 0; + + rtlpriv->dm.ofdm_index[0] = 30; + rtlpriv->dm.cck_index = 20; + + rtlpriv->dm.swing_idx_cck_base = rtlpriv->dm.cck_index; + + rtlpriv->dm.swing_idx_ofdm_base[0] = rtlpriv->dm.ofdm_index[0]; + rtlpriv->dm.delta_power_index[RF90_PATH_A] = 0; + rtlpriv->dm.delta_power_index_last[RF90_PATH_A] = 0; + rtlpriv->dm.power_index_offset[RF90_PATH_A] = 0; + + RT_TRACE(rtlpriv, COMP_POWER_TRACKING, DBG_LOUD, + " rtlpriv->dm.txpower_tracking = %d\n", + rtlpriv->dm.txpower_tracking); +} + +static void rtl8723be_dm_init_dynamic_atc_switch(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtlpriv->dm.crystal_cap = rtlpriv->efuse.crystalcap; + rtlpriv->dm.atc_status = rtl_get_bbreg(hw, ROFDM1_CFOTRACKING, 0x800); + rtlpriv->dm.cfo_threshold = CFO_THRESHOLD_XTAL; +} + +void rtl8723be_dm_init(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtlpriv->dm.dm_type = DM_TYPE_BYDRIVER; + rtl8723be_dm_diginit(hw); + rtl8723be_dm_init_rate_adaptive_mask(hw); + rtl8723_dm_init_edca_turbo(hw); + rtl8723_dm_init_dynamic_bb_powersaving(hw); + rtl8723_dm_init_dynamic_txpower(hw); + rtl8723be_dm_init_txpower_tracking(hw); + rtl8723be_dm_init_dynamic_atc_switch(hw); +} + +static void rtl8723be_dm_find_minimum_rssi(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct dig_t *rtl_dm_dig = &(rtlpriv->dm_digtable); + struct rtl_mac *mac = rtl_mac(rtlpriv); + + /* Determine the minimum RSSI */ + if ((mac->link_state < MAC80211_LINKED) && + (rtlpriv->dm.entry_min_undec_sm_pwdb == 0)) { + rtl_dm_dig->min_undec_pwdb_for_dm = 0; + RT_TRACE(rtlpriv, COMP_BB_POWERSAVING, DBG_LOUD, + "Not connected to any\n"); + } + if (mac->link_state >= MAC80211_LINKED) { + if (mac->opmode == NL80211_IFTYPE_AP || + mac->opmode == NL80211_IFTYPE_ADHOC) { + rtl_dm_dig->min_undec_pwdb_for_dm = + rtlpriv->dm.entry_min_undec_sm_pwdb; + RT_TRACE(rtlpriv, COMP_BB_POWERSAVING, DBG_LOUD, + "AP Client PWDB = 0x%lx\n", + rtlpriv->dm.entry_min_undec_sm_pwdb); + } else { + rtl_dm_dig->min_undec_pwdb_for_dm = + rtlpriv->dm.undec_sm_pwdb; + RT_TRACE(rtlpriv, COMP_BB_POWERSAVING, DBG_LOUD, + "STA Default Port PWDB = 0x%x\n", + rtl_dm_dig->min_undec_pwdb_for_dm); + } + } else { + rtl_dm_dig->min_undec_pwdb_for_dm = + rtlpriv->dm.entry_min_undec_sm_pwdb; + RT_TRACE(rtlpriv, COMP_BB_POWERSAVING, DBG_LOUD, + "AP Ext Port or disconnet PWDB = 0x%x\n", + rtl_dm_dig->min_undec_pwdb_for_dm); + } + RT_TRACE(rtlpriv, COMP_DIG, DBG_LOUD, "MinUndecoratedPWDBForDM =%d\n", + rtl_dm_dig->min_undec_pwdb_for_dm); +} + +static void rtl8723be_dm_check_rssi_monitor(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_sta_info *drv_priv; + u8 h2c_parameter[3] = { 0 }; + long tmp_entry_max_pwdb = 0, tmp_entry_min_pwdb = 0xff; + + /* AP & ADHOC & MESH */ + spin_lock_bh(&rtlpriv->locks.entry_list_lock); + list_for_each_entry(drv_priv, &rtlpriv->entry_list, list) { + if (drv_priv->rssi_stat.undec_sm_pwdb < + tmp_entry_min_pwdb) + tmp_entry_min_pwdb = + drv_priv->rssi_stat.undec_sm_pwdb; + if (drv_priv->rssi_stat.undec_sm_pwdb > + tmp_entry_max_pwdb) + tmp_entry_max_pwdb = + drv_priv->rssi_stat.undec_sm_pwdb; + } + spin_unlock_bh(&rtlpriv->locks.entry_list_lock); + + /* If associated entry is found */ + if (tmp_entry_max_pwdb != 0) { + rtlpriv->dm.entry_max_undec_sm_pwdb = tmp_entry_max_pwdb; + RT_TRACE(rtlpriv, COMP_POWER_TRACKING, DBG_LOUD, + "EntryMaxPWDB = 0x%lx(%ld)\n", + tmp_entry_max_pwdb, tmp_entry_max_pwdb); + } else { + rtlpriv->dm.entry_max_undec_sm_pwdb = 0; + } + /* If associated entry is found */ + if (tmp_entry_min_pwdb != 0xff) { + rtlpriv->dm.entry_min_undec_sm_pwdb = tmp_entry_min_pwdb; + RT_TRACE(rtlpriv, COMP_POWER_TRACKING, DBG_LOUD, + "EntryMinPWDB = 0x%lx(%ld)\n", + tmp_entry_min_pwdb, tmp_entry_min_pwdb); + } else { + rtlpriv->dm.entry_min_undec_sm_pwdb = 0; + } + /* Indicate Rx signal strength to FW. */ + if (rtlpriv->dm.useramask) { + h2c_parameter[2] = (u8) (rtlpriv->dm.undec_sm_pwdb & 0xFF); + h2c_parameter[1] = 0x20; + h2c_parameter[0] = 0; + rtl8723be_fill_h2c_cmd(hw, H2C_RSSI_REPORT, 3, h2c_parameter); + } else { + rtl_write_byte(rtlpriv, 0x4fe, rtlpriv->dm.undec_sm_pwdb); + } + rtl8723be_dm_find_minimum_rssi(hw); + rtlpriv->dm_digtable.rssi_val_min = + rtlpriv->dm_digtable.min_undec_pwdb_for_dm; +} + +void rtl8723be_dm_write_dig(struct ieee80211_hw *hw, u8 current_igi) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (rtlpriv->dm_digtable.cur_igvalue != current_igi) { + rtl_set_bbreg(hw, ROFDM0_XAAGCCORE1, 0x7f, current_igi); + if (rtlpriv->phy.rf_type != RF_1T1R) + rtl_set_bbreg(hw, ROFDM0_XBAGCCORE1, 0x7f, current_igi); + } + rtlpriv->dm_digtable.pre_igvalue = rtlpriv->dm_digtable.cur_igvalue; + rtlpriv->dm_digtable.cur_igvalue = current_igi; +} + +static void rtl8723be_dm_dig(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct dig_t *dm_digtable = &(rtlpriv->dm_digtable); + u8 dig_dynamic_min, dig_maxofmin; + bool firstconnect, firstdisconnect; + u8 dm_dig_max, dm_dig_min; + u8 current_igi = dm_digtable->cur_igvalue; + u8 offset; + + /* AP, BT */ + if (mac->act_scanning) + return; + + dig_dynamic_min = dm_digtable->dig_min_0; + firstconnect = (mac->link_state >= MAC80211_LINKED) && + !dm_digtable->media_connect_0; + firstdisconnect = (mac->link_state < MAC80211_LINKED) && + dm_digtable->media_connect_0; + + dm_dig_max = 0x5a; + dm_dig_min = DM_DIG_MIN; + dig_maxofmin = DM_DIG_MAX_AP; + + if (mac->link_state >= MAC80211_LINKED) { + if ((dm_digtable->rssi_val_min + 10) > dm_dig_max) + dm_digtable->rx_gain_max = dm_dig_max; + else if ((dm_digtable->rssi_val_min + 10) < dm_dig_min) + dm_digtable->rx_gain_max = dm_dig_min; + else + dm_digtable->rx_gain_max = + dm_digtable->rssi_val_min + 10; + + if (rtlpriv->dm.one_entry_only) { + offset = 12; + if (dm_digtable->rssi_val_min - offset < dm_dig_min) + dig_dynamic_min = dm_dig_min; + else if (dm_digtable->rssi_val_min - offset > + dig_maxofmin) + dig_dynamic_min = dig_maxofmin; + else + dig_dynamic_min = + dm_digtable->rssi_val_min - offset; + } else { + dig_dynamic_min = dm_dig_min; + } + } else { + dm_digtable->rx_gain_max = dm_dig_max; + dig_dynamic_min = dm_dig_min; + RT_TRACE(rtlpriv, COMP_DIG, DBG_LOUD, "no link\n"); + } + + if (rtlpriv->falsealm_cnt.cnt_all > 10000) { + if (dm_digtable->large_fa_hit != 3) + dm_digtable->large_fa_hit++; + if (dm_digtable->forbidden_igi < current_igi) { + dm_digtable->forbidden_igi = current_igi; + dm_digtable->large_fa_hit = 1; + } + + if (dm_digtable->large_fa_hit >= 3) { + if ((dm_digtable->forbidden_igi + 1) > + dm_digtable->rx_gain_max) + dm_digtable->rx_gain_min = + dm_digtable->rx_gain_max; + else + dm_digtable->rx_gain_min = + dm_digtable->forbidden_igi + 1; + dm_digtable->recover_cnt = 3600; + } + } else { + if (dm_digtable->recover_cnt != 0) { + dm_digtable->recover_cnt--; + } else { + if (dm_digtable->large_fa_hit < 3) { + if ((dm_digtable->forbidden_igi - 1) < + dig_dynamic_min) { + dm_digtable->forbidden_igi = + dig_dynamic_min; + dm_digtable->rx_gain_min = + dig_dynamic_min; + } else { + dm_digtable->forbidden_igi--; + dm_digtable->rx_gain_min = + dm_digtable->forbidden_igi + 1; + } + } else { + dm_digtable->large_fa_hit = 0; + } + } + } + if (dm_digtable->rx_gain_min > dm_digtable->rx_gain_max) + dm_digtable->rx_gain_min = dm_digtable->rx_gain_max; + + if (mac->link_state >= MAC80211_LINKED) { + if (firstconnect) { + if (dm_digtable->rssi_val_min <= dig_maxofmin) + current_igi = dm_digtable->rssi_val_min; + else + current_igi = dig_maxofmin; + + dm_digtable->large_fa_hit = 0; + } else { + if (rtlpriv->falsealm_cnt.cnt_all > DM_DIG_FA_TH2) + current_igi += 4; + else if (rtlpriv->falsealm_cnt.cnt_all > DM_DIG_FA_TH1) + current_igi += 2; + else if (rtlpriv->falsealm_cnt.cnt_all < DM_DIG_FA_TH0) + current_igi -= 2; + } + } else { + if (firstdisconnect) { + current_igi = dm_digtable->rx_gain_min; + } else { + if (rtlpriv->falsealm_cnt.cnt_all > 10000) + current_igi += 4; + else if (rtlpriv->falsealm_cnt.cnt_all > 8000) + current_igi += 2; + else if (rtlpriv->falsealm_cnt.cnt_all < 500) + current_igi -= 2; + } + } + + if (current_igi > dm_digtable->rx_gain_max) + current_igi = dm_digtable->rx_gain_max; + else if (current_igi < dm_digtable->rx_gain_min) + current_igi = dm_digtable->rx_gain_min; + + rtl8723be_dm_write_dig(hw, current_igi); + dm_digtable->media_connect_0 = + ((mac->link_state >= MAC80211_LINKED) ? true : false); + dm_digtable->dig_min_0 = dig_dynamic_min; +} + +static void rtl8723be_dm_false_alarm_counter_statistics(struct ieee80211_hw *hw) +{ + u32 ret_value; + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct false_alarm_statistics *falsealm_cnt = &(rtlpriv->falsealm_cnt); + + rtl_set_bbreg(hw, DM_REG_OFDM_FA_HOLDC_11N, BIT(31), 1); + rtl_set_bbreg(hw, DM_REG_OFDM_FA_RSTD_11N, BIT(31), 1); + + ret_value = rtl_get_bbreg(hw, DM_REG_OFDM_FA_TYPE1_11N, MASKDWORD); + falsealm_cnt->cnt_fast_fsync_fail = ret_value & 0xffff; + falsealm_cnt->cnt_sb_search_fail = (ret_value & 0xffff0000) >> 16; + + ret_value = rtl_get_bbreg(hw, DM_REG_OFDM_FA_TYPE2_11N, MASKDWORD); + falsealm_cnt->cnt_ofdm_cca = ret_value & 0xffff; + falsealm_cnt->cnt_parity_fail = (ret_value & 0xffff0000) >> 16; + + ret_value = rtl_get_bbreg(hw, DM_REG_OFDM_FA_TYPE3_11N, MASKDWORD); + falsealm_cnt->cnt_rate_illegal = ret_value & 0xffff; + falsealm_cnt->cnt_crc8_fail = (ret_value & 0xffff0000) >> 16; + + ret_value = rtl_get_bbreg(hw, DM_REG_OFDM_FA_TYPE4_11N, MASKDWORD); + falsealm_cnt->cnt_mcs_fail = ret_value & 0xffff; + + falsealm_cnt->cnt_ofdm_fail = falsealm_cnt->cnt_parity_fail + + falsealm_cnt->cnt_rate_illegal + + falsealm_cnt->cnt_crc8_fail + + falsealm_cnt->cnt_mcs_fail + + falsealm_cnt->cnt_fast_fsync_fail + + falsealm_cnt->cnt_sb_search_fail; + + rtl_set_bbreg(hw, DM_REG_CCK_FA_RST_11N, BIT(12), 1); + rtl_set_bbreg(hw, DM_REG_CCK_FA_RST_11N, BIT(14), 1); + + ret_value = rtl_get_bbreg(hw, DM_REG_CCK_FA_RST_11N, MASKBYTE0); + falsealm_cnt->cnt_cck_fail = ret_value; + + ret_value = rtl_get_bbreg(hw, DM_REG_CCK_FA_MSB_11N, MASKBYTE3); + falsealm_cnt->cnt_cck_fail += (ret_value & 0xff) << 8; + + ret_value = rtl_get_bbreg(hw, DM_REG_CCK_CCA_CNT_11N, MASKDWORD); + falsealm_cnt->cnt_cck_cca = ((ret_value & 0xff) << 8) | + ((ret_value & 0xff00) >> 8); + + falsealm_cnt->cnt_all = falsealm_cnt->cnt_fast_fsync_fail + + falsealm_cnt->cnt_sb_search_fail + + falsealm_cnt->cnt_parity_fail + + falsealm_cnt->cnt_rate_illegal + + falsealm_cnt->cnt_crc8_fail + + falsealm_cnt->cnt_mcs_fail + + falsealm_cnt->cnt_cck_fail; + + falsealm_cnt->cnt_cca_all = falsealm_cnt->cnt_ofdm_cca + + falsealm_cnt->cnt_cck_cca; + + rtl_set_bbreg(hw, DM_REG_OFDM_FA_RSTC_11N, BIT(31), 1); + rtl_set_bbreg(hw, DM_REG_OFDM_FA_RSTC_11N, BIT(31), 0); + rtl_set_bbreg(hw, DM_REG_OFDM_FA_RSTD_11N, BIT(27), 1); + rtl_set_bbreg(hw, DM_REG_OFDM_FA_RSTD_11N, BIT(27), 0); + + rtl_set_bbreg(hw, DM_REG_OFDM_FA_HOLDC_11N, BIT(31), 0); + rtl_set_bbreg(hw, DM_REG_OFDM_FA_RSTD_11N, BIT(31), 0); + + rtl_set_bbreg(hw, DM_REG_CCK_FA_RST_11N, BIT(13) | BIT(12), 0); + rtl_set_bbreg(hw, DM_REG_CCK_FA_RST_11N, BIT(13) | BIT(12), 2); + + rtl_set_bbreg(hw, DM_REG_CCK_FA_RST_11N, BIT(15) | BIT(14), 0); + rtl_set_bbreg(hw, DM_REG_CCK_FA_RST_11N, BIT(15) | BIT(14), 2); + + RT_TRACE(rtlpriv, COMP_DIG, DBG_TRACE, + "cnt_parity_fail = %d, cnt_rate_illegal = %d, " + "cnt_crc8_fail = %d, cnt_mcs_fail = %d\n", + falsealm_cnt->cnt_parity_fail, + falsealm_cnt->cnt_rate_illegal, + falsealm_cnt->cnt_crc8_fail, + falsealm_cnt->cnt_mcs_fail); + + RT_TRACE(rtlpriv, COMP_DIG, DBG_TRACE, + "cnt_ofdm_fail = %x, cnt_cck_fail = %x," + " cnt_all = %x\n", + falsealm_cnt->cnt_ofdm_fail, + falsealm_cnt->cnt_cck_fail, + falsealm_cnt->cnt_all); +} + +static void rtl8723be_dm_dynamic_txpower(struct ieee80211_hw *hw) +{ + /* 8723BE does not support ODM_BB_DYNAMIC_TXPWR*/ + return; +} + +static void rtl8723be_set_iqk_matrix(struct ieee80211_hw *hw, u8 ofdm_index, + u8 rfpath, long iqk_result_x, + long iqk_result_y) +{ + long ele_a = 0, ele_d, ele_c = 0, value32; + + if (ofdm_index >= 43) + ofdm_index = 43 - 1; + + ele_d = (ofdmswing_table[ofdm_index] & 0xFFC00000) >> 22; + + if (iqk_result_x != 0) { + if ((iqk_result_x & 0x00000200) != 0) + iqk_result_x = iqk_result_x | 0xFFFFFC00; + ele_a = ((iqk_result_x * ele_d) >> 8) & 0x000003FF; + + if ((iqk_result_y & 0x00000200) != 0) + iqk_result_y = iqk_result_y | 0xFFFFFC00; + ele_c = ((iqk_result_y * ele_d) >> 8) & 0x000003FF; + + switch (rfpath) { + case RF90_PATH_A: + value32 = (ele_d << 22) | + ((ele_c & 0x3F) << 16) | ele_a; + rtl_set_bbreg(hw, ROFDM0_XATXIQIMBALANCE, MASKDWORD, + value32); + value32 = (ele_c & 0x000003C0) >> 6; + rtl_set_bbreg(hw, ROFDM0_XCTXAFE, MASKH4BITS, value32); + value32 = ((iqk_result_x * ele_d) >> 7) & 0x01; + rtl_set_bbreg(hw, ROFDM0_ECCATHRESHOLD, BIT(24), + value32); + break; + default: + break; + } + } else { + switch (rfpath) { + case RF90_PATH_A: + rtl_set_bbreg(hw, ROFDM0_XATXIQIMBALANCE, MASKDWORD, + ofdmswing_table[ofdm_index]); + rtl_set_bbreg(hw, ROFDM0_XCTXAFE, MASKH4BITS, 0x00); + rtl_set_bbreg(hw, ROFDM0_ECCATHRESHOLD, BIT(24), 0x00); + break; + default: + break; + } + } +} + +static void rtl8723be_dm_tx_power_track_set_power(struct ieee80211_hw *hw, + enum pwr_track_control_method method, + u8 rfpath, u8 idx) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + u8 swing_idx_ofdm_limit = 36; + + if (method == TXAGC) { + rtl8723be_phy_set_txpower_level(hw, rtlphy->current_channel); + } else if (method == BBSWING) { + if (rtldm->swing_idx_cck >= CCK_TABLE_SIZE) + rtldm->swing_idx_cck = CCK_TABLE_SIZE - 1; + + if (!rtldm->cck_inch14) { + rtl_write_byte(rtlpriv, 0xa22, + cckswing_table_ch1ch13[rtldm->swing_idx_cck][0]); + rtl_write_byte(rtlpriv, 0xa23, + cckswing_table_ch1ch13[rtldm->swing_idx_cck][1]); + rtl_write_byte(rtlpriv, 0xa24, + cckswing_table_ch1ch13[rtldm->swing_idx_cck][2]); + rtl_write_byte(rtlpriv, 0xa25, + cckswing_table_ch1ch13[rtldm->swing_idx_cck][3]); + rtl_write_byte(rtlpriv, 0xa26, + cckswing_table_ch1ch13[rtldm->swing_idx_cck][4]); + rtl_write_byte(rtlpriv, 0xa27, + cckswing_table_ch1ch13[rtldm->swing_idx_cck][5]); + rtl_write_byte(rtlpriv, 0xa28, + cckswing_table_ch1ch13[rtldm->swing_idx_cck][6]); + rtl_write_byte(rtlpriv, 0xa29, + cckswing_table_ch1ch13[rtldm->swing_idx_cck][7]); + } else { + rtl_write_byte(rtlpriv, 0xa22, + cckswing_table_ch14[rtldm->swing_idx_cck][0]); + rtl_write_byte(rtlpriv, 0xa23, + cckswing_table_ch14[rtldm->swing_idx_cck][1]); + rtl_write_byte(rtlpriv, 0xa24, + cckswing_table_ch14[rtldm->swing_idx_cck][2]); + rtl_write_byte(rtlpriv, 0xa25, + cckswing_table_ch14[rtldm->swing_idx_cck][3]); + rtl_write_byte(rtlpriv, 0xa26, + cckswing_table_ch14[rtldm->swing_idx_cck][4]); + rtl_write_byte(rtlpriv, 0xa27, + cckswing_table_ch14[rtldm->swing_idx_cck][5]); + rtl_write_byte(rtlpriv, 0xa28, + cckswing_table_ch14[rtldm->swing_idx_cck][6]); + rtl_write_byte(rtlpriv, 0xa29, + cckswing_table_ch14[rtldm->swing_idx_cck][7]); + } + + if (rfpath == RF90_PATH_A) { + if (rtldm->swing_idx_ofdm[RF90_PATH_A] < + swing_idx_ofdm_limit) + swing_idx_ofdm_limit = + rtldm->swing_idx_ofdm[RF90_PATH_A]; + + rtl8723be_set_iqk_matrix(hw, + rtldm->swing_idx_ofdm[rfpath], rfpath, + rtlphy->iqk_matrix[idx].value[0][0], + rtlphy->iqk_matrix[idx].value[0][1]); + } else if (rfpath == RF90_PATH_B) { + if (rtldm->swing_idx_ofdm[RF90_PATH_B] < + swing_idx_ofdm_limit) + swing_idx_ofdm_limit = + rtldm->swing_idx_ofdm[RF90_PATH_B]; + + rtl8723be_set_iqk_matrix(hw, + rtldm->swing_idx_ofdm[rfpath], rfpath, + rtlphy->iqk_matrix[idx].value[0][4], + rtlphy->iqk_matrix[idx].value[0][5]); + } + } else { + return; + } +} + +static void txpwr_track_cb_therm(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + u8 thermalvalue = 0, delta, delta_lck, delta_iqk; + u8 thermalvalue_avg_count = 0; + u32 thermalvalue_avg = 0; + int i = 0; + + u8 ofdm_min_index = 6; + u8 index = 0; + + char delta_swing_table_idx_tup_a[] = { + 0, 0, 1, 2, 2, 2, 3, 3, 3, 4, 5, + 5, 6, 6, 7, 7, 8, 8, 9, 9, 9, 10, + 10, 11, 11, 12, 12, 13, 14, 15}; + char delta_swing_table_idx_tdown_a[] = { + 0, 0, 1, 2, 2, 2, 3, 3, 3, 4, 5, + 5, 6, 6, 6, 6, 7, 7, 7, 8, 8, 9, + 9, 10, 10, 11, 12, 13, 14, 15}; + + /*Initilization ( 7 steps in total)*/ + rtlpriv->dm.txpower_trackinginit = true; + RT_TRACE(rtlpriv, COMP_POWER_TRACKING, DBG_LOUD, + "rtl8723be_dm_txpower_tracking" + "_callback_thermalmeter\n"); + + thermalvalue = (u8)rtl_get_rfreg(hw, RF90_PATH_A, RF_T_METER, 0xfc00); + if (!rtlpriv->dm.txpower_track_control || thermalvalue == 0 || + rtlefuse->eeprom_thermalmeter == 0xFF) + return; + RT_TRACE(rtlpriv, COMP_POWER_TRACKING, DBG_LOUD, + "Readback Thermal Meter = 0x%x pre thermal meter 0x%x " + "eeprom_thermalmeter 0x%x\n", + thermalvalue, rtldm->thermalvalue, + rtlefuse->eeprom_thermalmeter); + /*3 Initialize ThermalValues of RFCalibrateInfo*/ + if (!rtldm->thermalvalue) { + rtlpriv->dm.thermalvalue_lck = thermalvalue; + rtlpriv->dm.thermalvalue_iqk = thermalvalue; + } + + /*4 Calculate average thermal meter*/ + rtldm->thermalvalue_avg[rtldm->thermalvalue_avg_index] = thermalvalue; + rtldm->thermalvalue_avg_index++; + if (rtldm->thermalvalue_avg_index == AVG_THERMAL_NUM_8723BE) + rtldm->thermalvalue_avg_index = 0; + + for (i = 0; i < AVG_THERMAL_NUM_8723BE; i++) { + if (rtldm->thermalvalue_avg[i]) { + thermalvalue_avg += rtldm->thermalvalue_avg[i]; + thermalvalue_avg_count++; + } + } + + if (thermalvalue_avg_count) + thermalvalue = (u8)(thermalvalue_avg / thermalvalue_avg_count); + + /* 5 Calculate delta, delta_LCK, delta_IQK.*/ + delta = (thermalvalue > rtlpriv->dm.thermalvalue) ? + (thermalvalue - rtlpriv->dm.thermalvalue) : + (rtlpriv->dm.thermalvalue - thermalvalue); + delta_lck = (thermalvalue > rtlpriv->dm.thermalvalue_lck) ? + (thermalvalue - rtlpriv->dm.thermalvalue_lck) : + (rtlpriv->dm.thermalvalue_lck - thermalvalue); + delta_iqk = (thermalvalue > rtlpriv->dm.thermalvalue_iqk) ? + (thermalvalue - rtlpriv->dm.thermalvalue_iqk) : + (rtlpriv->dm.thermalvalue_iqk - thermalvalue); + + RT_TRACE(rtlpriv, COMP_POWER_TRACKING, DBG_LOUD, + "Readback Thermal Meter = 0x%x pre thermal meter 0x%x " + "eeprom_thermalmeter 0x%x delta 0x%x " + "delta_lck 0x%x delta_iqk 0x%x\n", + thermalvalue, rtlpriv->dm.thermalvalue, + rtlefuse->eeprom_thermalmeter, delta, delta_lck, delta_iqk); + /* 6 If necessary, do LCK.*/ + if (delta_lck >= IQK_THRESHOLD) { + rtlpriv->dm.thermalvalue_lck = thermalvalue; + rtl8723be_phy_lc_calibrate(hw); + } + + /* 7 If necessary, move the index of + * swing table to adjust Tx power. + */ + if (delta > 0 && rtlpriv->dm.txpower_track_control) { + delta = (thermalvalue > rtlefuse->eeprom_thermalmeter) ? + (thermalvalue - rtlefuse->eeprom_thermalmeter) : + (rtlefuse->eeprom_thermalmeter - thermalvalue); + + if (delta >= TXSCALE_TABLE_SIZE) + delta = TXSCALE_TABLE_SIZE - 1; + /* 7.1 Get the final CCK_index and + * OFDM_index for each swing table. + */ + if (thermalvalue > rtlefuse->eeprom_thermalmeter) { + rtldm->delta_power_index_last[RF90_PATH_A] = + rtldm->delta_power_index[RF90_PATH_A]; + rtldm->delta_power_index[RF90_PATH_A] = + delta_swing_table_idx_tup_a[delta]; + } else { + rtldm->delta_power_index_last[RF90_PATH_A] = + rtldm->delta_power_index[RF90_PATH_A]; + rtldm->delta_power_index[RF90_PATH_A] = + -1 * delta_swing_table_idx_tdown_a[delta]; + } + + /* 7.2 Handle boundary conditions of index.*/ + if (rtldm->delta_power_index[RF90_PATH_A] == + rtldm->delta_power_index_last[RF90_PATH_A]) + rtldm->power_index_offset[RF90_PATH_A] = 0; + else + rtldm->power_index_offset[RF90_PATH_A] = + rtldm->delta_power_index[RF90_PATH_A] - + rtldm->delta_power_index_last[RF90_PATH_A]; + + rtldm->ofdm_index[0] = + rtldm->swing_idx_ofdm_base[RF90_PATH_A] + + rtldm->power_index_offset[RF90_PATH_A]; + rtldm->cck_index = rtldm->swing_idx_cck_base + + rtldm->power_index_offset[RF90_PATH_A]; + + rtldm->swing_idx_cck = rtldm->cck_index; + rtldm->swing_idx_ofdm[0] = rtldm->ofdm_index[0]; + + if (rtldm->ofdm_index[0] > OFDM_TABLE_SIZE - 1) + rtldm->ofdm_index[0] = OFDM_TABLE_SIZE - 1; + else if (rtldm->ofdm_index[0] < ofdm_min_index) + rtldm->ofdm_index[0] = ofdm_min_index; + + if (rtldm->cck_index > CCK_TABLE_SIZE - 1) + rtldm->cck_index = CCK_TABLE_SIZE - 1; + else if (rtldm->cck_index < 0) + rtldm->cck_index = 0; + } else { + rtldm->power_index_offset[RF90_PATH_A] = 0; + } + + if ((rtldm->power_index_offset[RF90_PATH_A] != 0) && + (rtldm->txpower_track_control)) { + rtldm->done_txpower = true; + if (thermalvalue > rtlefuse->eeprom_thermalmeter) + rtl8723be_dm_tx_power_track_set_power(hw, BBSWING, 0, + index); + else + rtl8723be_dm_tx_power_track_set_power(hw, BBSWING, 0, + index); + + rtldm->swing_idx_cck_base = rtldm->swing_idx_cck; + rtldm->swing_idx_ofdm_base[RF90_PATH_A] = + rtldm->swing_idx_ofdm[0]; + rtldm->thermalvalue = thermalvalue; + } + + if (delta_iqk >= IQK_THRESHOLD) { + rtldm->thermalvalue_iqk = thermalvalue; + rtl8723be_phy_iq_calibrate(hw, false); + } + + rtldm->txpowercount = 0; + RT_TRACE(rtlpriv, COMP_POWER_TRACKING, DBG_LOUD, "end\n"); +} + +void rtl8723be_dm_check_txpower_tracking(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + static u8 tm_trigger; + + if (!rtlpriv->dm.txpower_tracking) + return; + + if (!tm_trigger) { + rtl_set_rfreg(hw, RF90_PATH_A, RF_T_METER, BIT(17) | BIT(16), + 0x03); + RT_TRACE(rtlpriv, COMP_POWER_TRACKING, DBG_LOUD, + "Trigger 8723be Thermal Meter!!\n"); + tm_trigger = 1; + return; + } else { + RT_TRACE(rtlpriv, COMP_POWER_TRACKING, DBG_LOUD, + "Schedule TxPowerTracking !!\n"); + txpwr_track_cb_therm(hw); + tm_trigger = 0; + } +} + +static void rtl8723be_dm_refresh_rate_adaptive_mask(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rate_adaptive *ra = &(rtlpriv->ra); + struct ieee80211_sta *sta = NULL; + u32 low_rssithresh_for_ra = ra->low2high_rssi_thresh_for_ra40m; + u32 high_rssithresh_for_ra = ra->high_rssi_thresh_for_ra; + u8 go_up_gap = 5; + + if (is_hal_stop(rtlhal)) { + RT_TRACE(rtlpriv, COMP_RATE, DBG_LOUD, + "driver is going to unload\n"); + return; + } + + if (!rtlpriv->dm.useramask) { + RT_TRACE(rtlpriv, COMP_RATE, DBG_LOUD, + "driver does not control rate adaptive mask\n"); + return; + } + + if (mac->link_state == MAC80211_LINKED && + mac->opmode == NL80211_IFTYPE_STATION) { + switch (ra->pre_ratr_state) { + case DM_RATR_STA_MIDDLE: + high_rssithresh_for_ra += go_up_gap; + break; + case DM_RATR_STA_LOW: + high_rssithresh_for_ra += go_up_gap; + low_rssithresh_for_ra += go_up_gap; + break; + default: + break; + } + + if (rtlpriv->dm.undec_sm_pwdb > + (long)high_rssithresh_for_ra) + ra->ratr_state = DM_RATR_STA_HIGH; + else if (rtlpriv->dm.undec_sm_pwdb > + (long)low_rssithresh_for_ra) + ra->ratr_state = DM_RATR_STA_MIDDLE; + else + ra->ratr_state = DM_RATR_STA_LOW; + + if (ra->pre_ratr_state != ra->ratr_state) { + RT_TRACE(rtlpriv, COMP_RATE, DBG_LOUD, + "RSSI = %ld\n", + rtlpriv->dm.undec_sm_pwdb); + RT_TRACE(rtlpriv, COMP_RATE, DBG_LOUD, + "RSSI_LEVEL = %d\n", ra->ratr_state); + RT_TRACE(rtlpriv, COMP_RATE, DBG_LOUD, + "PreState = %d, CurState = %d\n", + ra->pre_ratr_state, ra->ratr_state); + + rcu_read_lock(); + sta = rtl_find_sta(hw, mac->bssid); + if (sta) + rtlpriv->cfg->ops->update_rate_tbl(hw, sta, + ra->ratr_state); + rcu_read_unlock(); + + ra->pre_ratr_state = ra->ratr_state; + } + } +} + +static bool rtl8723be_dm_is_edca_turbo_disable(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (rtlpriv->cfg->ops->get_btc_status()) { + if (rtlpriv->btcoexist.btc_ops->btc_is_disable_edca_turbo(rtlpriv)) + return true; + } + if (rtlpriv->mac80211.mode == WIRELESS_MODE_B) + return true; + + return false; +} + +static void rtl8723be_dm_check_edca_turbo(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + static u64 last_txok_cnt; + static u64 last_rxok_cnt; + u64 cur_txok_cnt = 0; + u64 cur_rxok_cnt = 0; + u32 edca_be_ul = 0x6ea42b; + u32 edca_be_dl = 0x6ea42b;/*not sure*/ + u32 edca_be = 0x5ea42b; + u32 iot_peer = 0; + bool is_cur_rdlstate; + bool last_is_cur_rdlstate = false; + bool bias_on_rx = false; + bool edca_turbo_on = false; + + last_is_cur_rdlstate = rtlpriv->dm.is_cur_rdlstate; + + cur_txok_cnt = rtlpriv->stats.txbytesunicast - last_txok_cnt; + cur_rxok_cnt = rtlpriv->stats.rxbytesunicast - last_rxok_cnt; + + iot_peer = rtlpriv->mac80211.vendor; + bias_on_rx = (iot_peer == PEER_RAL || iot_peer == PEER_ATH) ? + true : false; + edca_turbo_on = ((!rtlpriv->dm.is_any_nonbepkts) && + (!rtlpriv->dm.disable_framebursting)) ? + true : false; + + if ((iot_peer == PEER_CISCO) && + (mac->mode == WIRELESS_MODE_N_24G)) { + edca_be_dl = edca_setting_dl[iot_peer]; + edca_be_ul = edca_setting_ul[iot_peer]; + } + if (rtl8723be_dm_is_edca_turbo_disable(hw)) + goto exit; + + if (edca_turbo_on) { + if (bias_on_rx) + is_cur_rdlstate = (cur_txok_cnt > cur_rxok_cnt * 4) ? + false : true; + else + is_cur_rdlstate = (cur_rxok_cnt > cur_txok_cnt * 4) ? + true : false; + + edca_be = (is_cur_rdlstate) ? edca_be_dl : edca_be_ul; + rtl_write_dword(rtlpriv, REG_EDCA_BE_PARAM, edca_be); + rtlpriv->dm.is_cur_rdlstate = is_cur_rdlstate; + rtlpriv->dm.current_turbo_edca = true; + } else { + if (rtlpriv->dm.current_turbo_edca) { + u8 tmp = AC0_BE; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_AC_PARAM, + (u8 *)(&tmp)); + } + rtlpriv->dm.current_turbo_edca = false; + } + +exit: + rtlpriv->dm.is_any_nonbepkts = false; + last_txok_cnt = rtlpriv->stats.txbytesunicast; + last_rxok_cnt = rtlpriv->stats.rxbytesunicast; +} + +static void rtl8723be_dm_cck_packet_detection_thresh(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 cur_cck_cca_thresh; + + if (rtlpriv->mac80211.link_state >= MAC80211_LINKED) { + if (rtlpriv->dm_digtable.rssi_val_min > 25) { + cur_cck_cca_thresh = 0xcd; + } else if ((rtlpriv->dm_digtable.rssi_val_min <= 25) && + (rtlpriv->dm_digtable.rssi_val_min > 10)) { + cur_cck_cca_thresh = 0x83; + } else { + if (rtlpriv->falsealm_cnt.cnt_cck_fail > 1000) + cur_cck_cca_thresh = 0x83; + else + cur_cck_cca_thresh = 0x40; + } + } else { + if (rtlpriv->falsealm_cnt.cnt_cck_fail > 1000) + cur_cck_cca_thresh = 0x83; + else + cur_cck_cca_thresh = 0x40; + } + + if (rtlpriv->dm_digtable.cur_cck_cca_thres != cur_cck_cca_thresh) + rtl_set_bbreg(hw, RCCK0_CCA, MASKBYTE2, cur_cck_cca_thresh); + + rtlpriv->dm_digtable.pre_cck_cca_thres = rtlpriv->dm_digtable.cur_cck_cca_thres; + rtlpriv->dm_digtable.cur_cck_cca_thres = cur_cck_cca_thresh; + RT_TRACE(rtlpriv, COMP_DIG, DBG_TRACE, + "CCK cca thresh hold =%x\n", + rtlpriv->dm_digtable.cur_cck_cca_thres); +} + +static void rtl8723be_dm_dynamic_edcca(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 reg_c50, reg_c58; + bool fw_current_in_ps_mode = false; + + rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, + (u8 *)(&fw_current_in_ps_mode)); + if (fw_current_in_ps_mode) + return; + + reg_c50 = rtl_get_bbreg(hw, ROFDM0_XAAGCCORE1, MASKBYTE0); + reg_c58 = rtl_get_bbreg(hw, ROFDM0_XBAGCCORE1, MASKBYTE0); + + if (reg_c50 > 0x28 && reg_c58 > 0x28) { + if (!rtlpriv->rtlhal.pre_edcca_enable) { + rtl_write_byte(rtlpriv, ROFDM0_ECCATHRESHOLD, 0x03); + rtl_write_byte(rtlpriv, ROFDM0_ECCATHRESHOLD + 2, 0x00); + } + } else if (reg_c50 < 0x25 && reg_c58 < 0x25) { + if (rtlpriv->rtlhal.pre_edcca_enable) { + rtl_write_byte(rtlpriv, ROFDM0_ECCATHRESHOLD, 0x7f); + rtl_write_byte(rtlpriv, ROFDM0_ECCATHRESHOLD + 2, 0x7f); + } + } +} + +static void rtl8723be_dm_dynamic_atc_switch(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + u8 crystal_cap; + u32 packet_count; + int cfo_khz_a, cfo_khz_b, cfo_ave = 0, adjust_xtal = 0; + int cfo_ave_diff; + + if (rtlpriv->mac80211.link_state < MAC80211_LINKED) { + if (rtldm->atc_status == ATC_STATUS_OFF) { + rtl_set_bbreg(hw, ROFDM1_CFOTRACKING, BIT(11), + ATC_STATUS_ON); + rtldm->atc_status = ATC_STATUS_ON; + } + if (rtlpriv->cfg->ops->get_btc_status()) { + if (!rtlpriv->btcoexist.btc_ops->btc_is_bt_disabled(rtlpriv)) { + RT_TRACE(rtlpriv, COMP_BT_COEXIST, DBG_LOUD, + "odm_DynamicATCSwitch(): Disable" + " CFO tracking for BT!!\n"); + return; + } + } + + if (rtldm->crystal_cap != rtlpriv->efuse.crystalcap) { + rtldm->crystal_cap = rtlpriv->efuse.crystalcap; + crystal_cap = rtldm->crystal_cap & 0x3f; + rtl_set_bbreg(hw, REG_MAC_PHY_CTRL, 0xFFF000, + (crystal_cap | (crystal_cap << 6))); + } + } else { + cfo_khz_a = (int)(rtldm->cfo_tail[0] * 3125) / 1280; + cfo_khz_b = (int)(rtldm->cfo_tail[1] * 3125) / 1280; + packet_count = rtldm->packet_count; + + if (packet_count == rtldm->packet_count_pre) + return; + + rtldm->packet_count_pre = packet_count; + + if (rtlpriv->phy.rf_type == RF_1T1R) + cfo_ave = cfo_khz_a; + else + cfo_ave = (int)(cfo_khz_a + cfo_khz_b) >> 1; + + cfo_ave_diff = (rtldm->cfo_ave_pre >= cfo_ave) ? + (rtldm->cfo_ave_pre - cfo_ave) : + (cfo_ave - rtldm->cfo_ave_pre); + + if (cfo_ave_diff > 20 && rtldm->large_cfo_hit == 0) { + rtldm->large_cfo_hit = 1; + return; + } else { + rtldm->large_cfo_hit = 0; + } + + rtldm->cfo_ave_pre = cfo_ave; + + if (cfo_ave >= -rtldm->cfo_threshold && + cfo_ave <= rtldm->cfo_threshold && rtldm->is_freeze == 0) { + if (rtldm->cfo_threshold == CFO_THRESHOLD_XTAL) { + rtldm->cfo_threshold = CFO_THRESHOLD_XTAL + 10; + rtldm->is_freeze = 1; + } else { + rtldm->cfo_threshold = CFO_THRESHOLD_XTAL; + } + } + + if (cfo_ave > rtldm->cfo_threshold && rtldm->crystal_cap < 0x3f) + adjust_xtal = ((cfo_ave - CFO_THRESHOLD_XTAL) >> 1) + 1; + else if ((cfo_ave < -rtlpriv->dm.cfo_threshold) && + rtlpriv->dm.crystal_cap > 0) + adjust_xtal = ((cfo_ave + CFO_THRESHOLD_XTAL) >> 1) - 1; + + if (adjust_xtal != 0) { + rtldm->is_freeze = 0; + rtldm->crystal_cap += adjust_xtal; + + if (rtldm->crystal_cap > 0x3f) + rtldm->crystal_cap = 0x3f; + else if (rtldm->crystal_cap < 0) + rtldm->crystal_cap = 0; + + crystal_cap = rtldm->crystal_cap & 0x3f; + rtl_set_bbreg(hw, REG_MAC_PHY_CTRL, 0xFFF000, + (crystal_cap | (crystal_cap << 6))); + } + + if (cfo_ave < CFO_THRESHOLD_ATC && + cfo_ave > -CFO_THRESHOLD_ATC) { + if (rtldm->atc_status == ATC_STATUS_ON) { + rtl_set_bbreg(hw, ROFDM1_CFOTRACKING, BIT(11), + ATC_STATUS_OFF); + rtldm->atc_status = ATC_STATUS_OFF; + } + } else { + if (rtldm->atc_status == ATC_STATUS_OFF) { + rtl_set_bbreg(hw, ROFDM1_CFOTRACKING, BIT(11), + ATC_STATUS_ON); + rtldm->atc_status = ATC_STATUS_ON; + } + } + } +} + +static void rtl8723be_dm_common_info_self_update(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_sta_info *drv_priv; + u8 cnt = 0; + + rtlpriv->dm.one_entry_only = false; + + if (rtlpriv->mac80211.opmode == NL80211_IFTYPE_STATION && + rtlpriv->mac80211.link_state >= MAC80211_LINKED) { + rtlpriv->dm.one_entry_only = true; + return; + } + + if (rtlpriv->mac80211.opmode == NL80211_IFTYPE_AP || + rtlpriv->mac80211.opmode == NL80211_IFTYPE_ADHOC || + rtlpriv->mac80211.opmode == NL80211_IFTYPE_MESH_POINT) { + spin_lock_bh(&rtlpriv->locks.entry_list_lock); + list_for_each_entry(drv_priv, &rtlpriv->entry_list, list) { + cnt++; + } + spin_unlock_bh(&rtlpriv->locks.entry_list_lock); + + if (cnt == 1) + rtlpriv->dm.one_entry_only = true; + } +} + +void rtl8723be_dm_watchdog(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + bool fw_current_inpsmode = false; + bool fw_ps_awake = true; + + rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, + (u8 *)(&fw_current_inpsmode)); + + rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_FWLPS_RF_ON, + (u8 *)(&fw_ps_awake)); + + if (ppsc->p2p_ps_info.p2p_ps_mode) + fw_ps_awake = false; + + if ((ppsc->rfpwr_state == ERFON) && + ((!fw_current_inpsmode) && fw_ps_awake) && + (!ppsc->rfchange_inprogress)) { + rtl8723be_dm_common_info_self_update(hw); + rtl8723be_dm_false_alarm_counter_statistics(hw); + rtl8723be_dm_check_rssi_monitor(hw); + rtl8723be_dm_dig(hw); + rtl8723be_dm_dynamic_edcca(hw); + rtl8723be_dm_cck_packet_detection_thresh(hw); + rtl8723be_dm_refresh_rate_adaptive_mask(hw); + rtl8723be_dm_check_edca_turbo(hw); + rtl8723be_dm_dynamic_atc_switch(hw); + rtl8723be_dm_check_txpower_tracking(hw); + rtl8723be_dm_dynamic_txpower(hw); + if (rtlpriv->cfg->ops->get_btc_status()) + rtlpriv->btcoexist.btc_ops->btc_periodical(rtlpriv); + } + rtlpriv->dm.dbginfo.num_qry_beacon_pkt = 0; +} --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/dm.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/dm.h @@ -0,0 +1,310 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8723BE_DM_H__ +#define __RTL8723BE_DM_H__ + +#define MAIN_ANT 0 +#define AUX_ANT 1 +#define MAIN_ANT_CG_TRX 1 +#define AUX_ANT_CG_TRX 0 +#define MAIN_ANT_CGCS_RX 0 +#define AUX_ANT_CGCS_RX 1 + +#define TXSCALE_TABLE_SIZE 30 + +/*RF REG LIST*/ +#define DM_REG_RF_MODE_11N 0x00 +#define DM_REG_RF_0B_11N 0x0B +#define DM_REG_CHNBW_11N 0x18 +#define DM_REG_T_METER_11N 0x24 +#define DM_REG_RF_25_11N 0x25 +#define DM_REG_RF_26_11N 0x26 +#define DM_REG_RF_27_11N 0x27 +#define DM_REG_RF_2B_11N 0x2B +#define DM_REG_RF_2C_11N 0x2C +#define DM_REG_RXRF_A3_11N 0x3C +#define DM_REG_T_METER_92D_11N 0x42 +#define DM_REG_T_METER_88E_11N 0x42 + +/*BB REG LIST*/ +/*PAGE 8 */ +#define DM_REG_BB_CTRL_11N 0x800 +#define DM_REG_RF_PIN_11N 0x804 +#define DM_REG_PSD_CTRL_11N 0x808 +#define DM_REG_TX_ANT_CTRL_11N 0x80C +#define DM_REG_BB_PWR_SAV5_11N 0x818 +#define DM_REG_CCK_RPT_FORMAT_11N 0x824 +#define DM_REG_RX_DEFUALT_A_11N 0x858 +#define DM_REG_RX_DEFUALT_B_11N 0x85A +#define DM_REG_BB_PWR_SAV3_11N 0x85C +#define DM_REG_ANTSEL_CTRL_11N 0x860 +#define DM_REG_RX_ANT_CTRL_11N 0x864 +#define DM_REG_PIN_CTRL_11N 0x870 +#define DM_REG_BB_PWR_SAV1_11N 0x874 +#define DM_REG_ANTSEL_PATH_11N 0x878 +#define DM_REG_BB_3WIRE_11N 0x88C +#define DM_REG_SC_CNT_11N 0x8C4 +#define DM_REG_PSD_DATA_11N 0x8B4 +/*PAGE 9*/ +#define DM_REG_ANT_MAPPING1_11N 0x914 +#define DM_REG_ANT_MAPPING2_11N 0x918 +/*PAGE A*/ +#define DM_REG_CCK_ANTDIV_PARA1_11N 0xA00 +#define DM_REG_CCK_CCA_11N 0xA0A +#define DM_REG_CCK_ANTDIV_PARA2_11N 0xA0C +#define DM_REG_CCK_ANTDIV_PARA3_11N 0xA10 +#define DM_REG_CCK_ANTDIV_PARA4_11N 0xA14 +#define DM_REG_CCK_FILTER_PARA1_11N 0xA22 +#define DM_REG_CCK_FILTER_PARA2_11N 0xA23 +#define DM_REG_CCK_FILTER_PARA3_11N 0xA24 +#define DM_REG_CCK_FILTER_PARA4_11N 0xA25 +#define DM_REG_CCK_FILTER_PARA5_11N 0xA26 +#define DM_REG_CCK_FILTER_PARA6_11N 0xA27 +#define DM_REG_CCK_FILTER_PARA7_11N 0xA28 +#define DM_REG_CCK_FILTER_PARA8_11N 0xA29 +#define DM_REG_CCK_FA_RST_11N 0xA2C +#define DM_REG_CCK_FA_MSB_11N 0xA58 +#define DM_REG_CCK_FA_LSB_11N 0xA5C +#define DM_REG_CCK_CCA_CNT_11N 0xA60 +#define DM_REG_BB_PWR_SAV4_11N 0xA74 +/*PAGE B */ +#define DM_REG_LNA_SWITCH_11N 0xB2C +#define DM_REG_PATH_SWITCH_11N 0xB30 +#define DM_REG_RSSI_CTRL_11N 0xB38 +#define DM_REG_CONFIG_ANTA_11N 0xB68 +#define DM_REG_RSSI_BT_11N 0xB9C +/*PAGE C */ +#define DM_REG_OFDM_FA_HOLDC_11N 0xC00 +#define DM_REG_RX_PATH_11N 0xC04 +#define DM_REG_TRMUX_11N 0xC08 +#define DM_REG_OFDM_FA_RSTC_11N 0xC0C +#define DM_REG_RXIQI_MATRIX_11N 0xC14 +#define DM_REG_TXIQK_MATRIX_LSB1_11N 0xC4C +#define DM_REG_IGI_A_11N 0xC50 +#define DM_REG_ANTDIV_PARA2_11N 0xC54 +#define DM_REG_IGI_B_11N 0xC58 +#define DM_REG_ANTDIV_PARA3_11N 0xC5C +#define DM_REG_BB_PWR_SAV2_11N 0xC70 +#define DM_REG_RX_OFF_11N 0xC7C +#define DM_REG_TXIQK_MATRIXA_11N 0xC80 +#define DM_REG_TXIQK_MATRIXB_11N 0xC88 +#define DM_REG_TXIQK_MATRIXA_LSB2_11N 0xC94 +#define DM_REG_TXIQK_MATRIXB_LSB2_11N 0xC9C +#define DM_REG_RXIQK_MATRIX_LSB_11N 0xCA0 +#define DM_REG_ANTDIV_PARA1_11N 0xCA4 +#define DM_REG_OFDM_FA_TYPE1_11N 0xCF0 +/*PAGE D */ +#define DM_REG_OFDM_FA_RSTD_11N 0xD00 +#define DM_REG_OFDM_FA_TYPE2_11N 0xDA0 +#define DM_REG_OFDM_FA_TYPE3_11N 0xDA4 +#define DM_REG_OFDM_FA_TYPE4_11N 0xDA8 +/*PAGE E */ +#define DM_REG_TXAGC_A_6_18_11N 0xE00 +#define DM_REG_TXAGC_A_24_54_11N 0xE04 +#define DM_REG_TXAGC_A_1_MCS32_11N 0xE08 +#define DM_REG_TXAGC_A_MCS0_3_11N 0xE10 +#define DM_REG_TXAGC_A_MCS4_7_11N 0xE14 +#define DM_REG_TXAGC_A_MCS8_11_11N 0xE18 +#define DM_REG_TXAGC_A_MCS12_15_11N 0xE1C +#define DM_REG_FPGA0_IQK_11N 0xE28 +#define DM_REG_TXIQK_TONE_A_11N 0xE30 +#define DM_REG_RXIQK_TONE_A_11N 0xE34 +#define DM_REG_TXIQK_PI_A_11N 0xE38 +#define DM_REG_RXIQK_PI_A_11N 0xE3C +#define DM_REG_TXIQK_11N 0xE40 +#define DM_REG_RXIQK_11N 0xE44 +#define DM_REG_IQK_AGC_PTS_11N 0xE48 +#define DM_REG_IQK_AGC_RSP_11N 0xE4C +#define DM_REG_BLUETOOTH_11N 0xE6C +#define DM_REG_RX_WAIT_CCA_11N 0xE70 +#define DM_REG_TX_CCK_RFON_11N 0xE74 +#define DM_REG_TX_CCK_BBON_11N 0xE78 +#define DM_REG_OFDM_RFON_11N 0xE7C +#define DM_REG_OFDM_BBON_11N 0xE80 +#define DM_REG_TX2RX_11N 0xE84 +#define DM_REG_TX2TX_11N 0xE88 +#define DM_REG_RX_CCK_11N 0xE8C +#define DM_REG_RX_OFDM_11N 0xED0 +#define DM_REG_RX_WAIT_RIFS_11N 0xED4 +#define DM_REG_RX2RX_11N 0xED8 +#define DM_REG_STANDBY_11N 0xEDC +#define DM_REG_SLEEP_11N 0xEE0 +#define DM_REG_PMPD_ANAEN_11N 0xEEC + +/*MAC REG LIST*/ +#define DM_REG_BB_RST_11N 0x02 +#define DM_REG_ANTSEL_PIN_11N 0x4C +#define DM_REG_EARLY_MODE_11N 0x4D0 +#define DM_REG_RSSI_MONITOR_11N 0x4FE +#define DM_REG_EDCA_VO_11N 0x500 +#define DM_REG_EDCA_VI_11N 0x504 +#define DM_REG_EDCA_BE_11N 0x508 +#define DM_REG_EDCA_BK_11N 0x50C +#define DM_REG_TXPAUSE_11N 0x522 +#define DM_REG_RESP_TX_11N 0x6D8 +#define DM_REG_ANT_TRAIN_PARA1_11N 0x7b0 +#define DM_REG_ANT_TRAIN_PARA2_11N 0x7b4 + +/*DIG Related*/ +#define DM_BIT_IGI_11N 0x0000007F + +#define HAL_DM_DIG_DISABLE BIT(0) +#define HAL_DM_HIPWR_DISABLE BIT(1) + +#define OFDM_TABLE_LENGTH 43 +#define CCK_TABLE_LENGTH 33 + +#define OFDM_TABLE_SIZE 37 +#define CCK_TABLE_SIZE 33 + +#define BW_AUTO_SWITCH_HIGH_LOW 25 +#define BW_AUTO_SWITCH_LOW_HIGH 30 + +#define DM_DIG_THRESH_HIGH 40 +#define DM_DIG_THRESH_LOW 35 + +#define DM_FALSEALARM_THRESH_LOW 400 +#define DM_FALSEALARM_THRESH_HIGH 1000 + +#define DM_DIG_MAX 0x3e +#define DM_DIG_MIN 0x1e + +#define DM_DIG_MAX_AP 0x32 +#define DM_DIG_MIN_AP 0x20 + +#define DM_DIG_FA_UPPER 0x3e +#define DM_DIG_FA_LOWER 0x1e +#define DM_DIG_FA_TH0 0x200 +#define DM_DIG_FA_TH1 0x300 +#define DM_DIG_FA_TH2 0x400 + +#define DM_DIG_BACKOFF_MAX 12 +#define DM_DIG_BACKOFF_MIN -4 +#define DM_DIG_BACKOFF_DEFAULT 10 + +#define RXPATHSELECTION_DIFF_TH 18 + +#define DM_RATR_STA_INIT 0 +#define DM_RATR_STA_HIGH 1 +#define DM_RATR_STA_MIDDLE 2 +#define DM_RATR_STA_LOW 3 + +#define CTS2SELF_THVAL 30 +#define REGC38_TH 20 + +#define TXHIGHPWRLEVEL_NORMAL 0 +#define TXHIGHPWRLEVEL_LEVEL1 1 +#define TXHIGHPWRLEVEL_LEVEL2 2 +#define TXHIGHPWRLEVEL_BT1 3 +#define TXHIGHPWRLEVEL_BT2 4 + +#define DM_TYPE_BYFW 0 +#define DM_TYPE_BYDRIVER 1 + +#define TX_POWER_NEAR_FIELD_THRESH_LVL2 74 +#define TX_POWER_NEAR_FIELD_THRESH_LVL1 67 +#define TXPWRTRACK_MAX_IDX 6 + +/* Dynamic ATC switch */ +#define ATC_STATUS_OFF 0x0 /* enable */ +#define ATC_STATUS_ON 0x1 /* disable */ +#define CFO_THRESHOLD_XTAL 10 /* kHz */ +#define CFO_THRESHOLD_ATC 80 /* kHz */ + +enum FAT_STATE { + FAT_NORMAL_STATE = 0, + FAT_TRAINING_STATE = 1, +}; + +enum tag_dynamic_init_gain_operation_type_definition { + DIG_TYPE_THRESH_HIGH = 0, + DIG_TYPE_THRESH_LOW = 1, + DIG_TYPE_BACKOFF = 2, + DIG_TYPE_RX_GAIN_MIN = 3, + DIG_TYPE_RX_GAIN_MAX = 4, + DIG_TYPE_ENABLE = 5, + DIG_TYPE_DISABLE = 6, + DIG_OP_TYPE_MAX +}; + +enum dm_1r_cca_e { + CCA_1R = 0, + CCA_2R = 1, + CCA_MAX = 2, +}; + +enum dm_rf_e { + RF_SAVE = 0, + RF_NORMAL = 1, + RF_MAX = 2, +}; + +enum dm_sw_ant_switch_e { + ANS_ANTENNA_B = 1, + ANS_ANTENNA_A = 2, + ANS_ANTENNA_MAX = 3, +}; + +enum dm_dig_ext_port_alg_e { + DIG_EXT_PORT_STAGE_0 = 0, + DIG_EXT_PORT_STAGE_1 = 1, + DIG_EXT_PORT_STAGE_2 = 2, + DIG_EXT_PORT_STAGE_3 = 3, + DIG_EXT_PORT_STAGE_MAX = 4, +}; + +enum dm_dig_connect_e { + DIG_STA_DISCONNECT = 0, + DIG_STA_CONNECT = 1, + DIG_STA_BEFORE_CONNECT = 2, + DIG_MULTISTA_DISCONNECT = 3, + DIG_MULTISTA_CONNECT = 4, + DIG_CONNECT_MAX +}; + +enum pwr_track_control_method { + BBSWING, + TXAGC +}; + +#define BT_RSSI_STATE_NORMAL_POWER BIT_OFFSET_LEN_MASK_32(0, 1) +#define BT_RSSI_STATE_AMDPU_OFF BIT_OFFSET_LEN_MASK_32(1, 1) +#define BT_RSSI_STATE_SPECIAL_LOW BIT_OFFSET_LEN_MASK_32(2, 1) +#define BT_RSSI_STATE_BG_EDCA_LOW BIT_OFFSET_LEN_MASK_32(3, 1) +#define BT_RSSI_STATE_TXPOWER_LOW BIT_OFFSET_LEN_MASK_32(4, 1) + +void rtl8723be_dm_set_tx_ant_by_tx_info(struct ieee80211_hw *hw, u8 *pdesc, + u32 mac_id); +void rtl8723be_dm_ant_sel_statistics(struct ieee80211_hw *hw, u8 antsel_tr_mux, + u32 mac_id, u32 rx_pwdb_all); +void rtl8723be_dm_fast_antenna_trainning_callback(unsigned long data); +void rtl8723be_dm_init(struct ieee80211_hw *hw); +void rtl8723be_dm_watchdog(struct ieee80211_hw *hw); +void rtl8723be_dm_write_dig(struct ieee80211_hw *hw, u8 current_igi); +void rtl8723be_dm_check_txpower_tracking(struct ieee80211_hw *hw); +void rtl8723be_dm_init_rate_adaptive_mask(struct ieee80211_hw *hw); +void rtl8723be_dm_txpower_track_adjust(struct ieee80211_hw *hw, u8 type, + u8 *pdirection, u32 *poutwrite_val); +void rtl8723be_dm_init_edca_turbo(struct ieee80211_hw *hw); + +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/fw.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/fw.c @@ -0,0 +1,628 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "../pci.h" +#include "../base.h" +#include "reg.h" +#include "def.h" +#include "fw.h" +#include "../rtl8723com/fw_common.h" + +static bool _rtl8723be_check_fw_read_last_h2c(struct ieee80211_hw *hw, + u8 boxnum) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 val_hmetfr; + bool result = false; + + val_hmetfr = rtl_read_byte(rtlpriv, REG_HMETFR); + if (((val_hmetfr >> boxnum) & BIT(0)) == 0) + result = true; + return result; +} + +static void _rtl8723be_fill_h2c_command(struct ieee80211_hw *hw, u8 element_id, + u32 cmd_len, u8 *p_cmdbuffer) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 boxnum; + u16 box_reg = 0, box_extreg = 0; + u8 u1b_tmp; + bool isfw_read = false; + u8 buf_index = 0; + bool bwrite_sucess = false; + u8 wait_h2c_limit = 100; + u8 wait_writeh2c_limit = 100; + u8 boxcontent[4], boxextcontent[4]; + u32 h2c_waitcounter = 0; + unsigned long flag; + u8 idx; + + RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, "come in\n"); + + while (true) { + spin_lock_irqsave(&rtlpriv->locks.h2c_lock, flag); + if (rtlhal->h2c_setinprogress) { + RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, + "H2C set in progress! Wait to set.." + "element_id(%d).\n", element_id); + + while (rtlhal->h2c_setinprogress) { + spin_unlock_irqrestore(&rtlpriv->locks.h2c_lock, + flag); + h2c_waitcounter++; + RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, + "Wait 100 us (%d times)...\n", + h2c_waitcounter); + udelay(100); + + if (h2c_waitcounter > 1000) + return; + spin_lock_irqsave(&rtlpriv->locks.h2c_lock, + flag); + } + spin_unlock_irqrestore(&rtlpriv->locks.h2c_lock, flag); + } else { + rtlhal->h2c_setinprogress = true; + spin_unlock_irqrestore(&rtlpriv->locks.h2c_lock, flag); + break; + } + } + while (!bwrite_sucess) { + wait_writeh2c_limit--; + if (wait_writeh2c_limit == 0) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "Write H2C fail because no trigger " + "for FW INT!\n"); + break; + } + boxnum = rtlhal->last_hmeboxnum; + switch (boxnum) { + case 0: + box_reg = REG_HMEBOX_0; + box_extreg = REG_HMEBOX_EXT_0; + break; + case 1: + box_reg = REG_HMEBOX_1; + box_extreg = REG_HMEBOX_EXT_1; + break; + case 2: + box_reg = REG_HMEBOX_2; + box_extreg = REG_HMEBOX_EXT_2; + break; + case 3: + box_reg = REG_HMEBOX_3; + box_extreg = REG_HMEBOX_EXT_3; + break; + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "switch case not processed\n"); + break; + } + isfw_read = _rtl8723be_check_fw_read_last_h2c(hw, boxnum); + while (!isfw_read) { + wait_h2c_limit--; + if (wait_h2c_limit == 0) { + RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, + "Wating too long for FW read " + "clear HMEBox(%d)!\n", boxnum); + break; + } + udelay(10); + + isfw_read = _rtl8723be_check_fw_read_last_h2c(hw, + boxnum); + u1b_tmp = rtl_read_byte(rtlpriv, 0x130); + RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, + "Wating for FW read clear HMEBox(%d)!!! 0x130 = %2x\n", + boxnum, u1b_tmp); + } + if (!isfw_read) { + RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, + "Write H2C register BOX[%d] fail!!!!! " + "Fw do not read.\n", boxnum); + break; + } + memset(boxcontent, 0, sizeof(boxcontent)); + memset(boxextcontent, 0, sizeof(boxextcontent)); + boxcontent[0] = element_id; + RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, + "Write element_id box_reg(%4x) = %2x\n", + box_reg, element_id); + + switch (cmd_len) { + case 1: + case 2: + case 3: + /*boxcontent[0] &= ~(BIT(7));*/ + memcpy((u8 *)(boxcontent) + 1, + p_cmdbuffer + buf_index, cmd_len); + + for (idx = 0; idx < 4; idx++) { + rtl_write_byte(rtlpriv, box_reg + idx, + boxcontent[idx]); + } + break; + case 4: + case 5: + case 6: + case 7: + /*boxcontent[0] |= (BIT(7));*/ + memcpy((u8 *)(boxextcontent), + p_cmdbuffer + buf_index+3, cmd_len-3); + memcpy((u8 *)(boxcontent) + 1, + p_cmdbuffer + buf_index, 3); + + for (idx = 0; idx < 4; idx++) { + rtl_write_byte(rtlpriv, box_extreg + idx, + boxextcontent[idx]); + } + for (idx = 0; idx < 4; idx++) { + rtl_write_byte(rtlpriv, box_reg + idx, + boxcontent[idx]); + } + break; + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "switch case not process\n"); + break; + } + bwrite_sucess = true; + + rtlhal->last_hmeboxnum = boxnum + 1; + if (rtlhal->last_hmeboxnum == 4) + rtlhal->last_hmeboxnum = 0; + + RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, + "pHalData->last_hmeboxnum = %d\n", + rtlhal->last_hmeboxnum); + } + if (!rtlpriv) { + pr_err("rtlpriv bad\n"); + return; + } + if (!rtlhal) { + pr_err("rtlhal bad\n"); + return; + } + spin_lock_irqsave(&rtlpriv->locks.h2c_lock, flag); + rtlhal->h2c_setinprogress = false; + spin_unlock_irqrestore(&rtlpriv->locks.h2c_lock, flag); + + RT_TRACE(rtlpriv, COMP_CMD, DBG_LOUD, "go out\n"); +} + +void rtl8723be_fill_h2c_cmd(struct ieee80211_hw *hw, u8 element_id, + u32 cmd_len, u8 *p_cmdbuffer) +{ + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u32 tmp_cmdbuf[2]; + + if (!rtlhal->fw_ready) { + RT_ASSERT(false, + "return H2C cmd because of Fw download fail!!!\n"); + return; + } + memset(tmp_cmdbuf, 0, 8); + memcpy(tmp_cmdbuf, p_cmdbuffer, cmd_len); + _rtl8723be_fill_h2c_command(hw, element_id, cmd_len, + (u8 *)&tmp_cmdbuf); + return; +} + +void rtl8723be_set_fw_pwrmode_cmd(struct ieee80211_hw *hw, u8 mode) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 u1_h2c_set_pwrmode[H2C_8723BE_PWEMODE_LENGTH] = { 0 }; + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + u8 rlbm, power_state = 0; + RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD, "FW LPS mode = %d\n", mode); + + SET_H2CCMD_PWRMODE_PARM_MODE(u1_h2c_set_pwrmode, ((mode) ? 1 : 0)); + rlbm = 0;/*YJ, temp, 120316. FW now not support RLBM = 2.*/ + SET_H2CCMD_PWRMODE_PARM_RLBM(u1_h2c_set_pwrmode, rlbm); + SET_H2CCMD_PWRMODE_PARM_SMART_PS(u1_h2c_set_pwrmode, + (rtlpriv->mac80211.p2p) ? + ppsc->smart_ps : 1); + SET_H2CCMD_PWRMODE_PARM_AWAKE_INTERVAL(u1_h2c_set_pwrmode, + ppsc->reg_max_lps_awakeintvl); + SET_H2CCMD_PWRMODE_PARM_ALL_QUEUE_UAPSD(u1_h2c_set_pwrmode, 0); + if (mode == FW_PS_ACTIVE_MODE) + power_state |= FW_PWR_STATE_ACTIVE; + else + power_state |= FW_PWR_STATE_RF_OFF; + SET_H2CCMD_PWRMODE_PARM_PWR_STATE(u1_h2c_set_pwrmode, power_state); + + RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_DMESG, + "rtl92c_set_fw_pwrmode(): u1_h2c_set_pwrmode\n", + u1_h2c_set_pwrmode, H2C_8723BE_PWEMODE_LENGTH); + rtl8723be_fill_h2c_cmd(hw, H2C_8723BE_SETPWRMODE, + H2C_8723BE_PWEMODE_LENGTH, + u1_h2c_set_pwrmode); +} + +static bool _rtl8723be_cmd_send_packet(struct ieee80211_hw *hw, + struct sk_buff *skb) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl8192_tx_ring *ring; + struct rtl_tx_desc *pdesc; + struct sk_buff *pskb = NULL; + u8 own; + unsigned long flags; + + ring = &rtlpci->tx_ring[BEACON_QUEUE]; + + pskb = __skb_dequeue(&ring->queue); + if (pskb) + kfree_skb(pskb); + + spin_lock_irqsave(&rtlpriv->locks.irq_th_lock, flags); + + pdesc = &ring->desc[0]; + own = (u8) rtlpriv->cfg->ops->get_desc((u8 *)pdesc, true, HW_DESC_OWN); + + rtlpriv->cfg->ops->fill_tx_cmddesc(hw, (u8 *)pdesc, 1, 1, skb); + + __skb_queue_tail(&ring->queue, skb); + + spin_unlock_irqrestore(&rtlpriv->locks.irq_th_lock, flags); + + rtlpriv->cfg->ops->tx_polling(hw, BEACON_QUEUE); + + return true; +} +#define BEACON_PG 0 /* ->1 */ +#define PSPOLL_PG 2 +#define NULL_PG 3 +#define PROBERSP_PG 4 /* ->5 */ + +#define TOTAL_RESERVED_PKT_LEN 768 + +static u8 reserved_page_packet[TOTAL_RESERVED_PKT_LEN] = { + /* page 0 beacon */ + 0x80, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, + 0xFF, 0xFF, 0x00, 0xE0, 0x4C, 0x02, 0xB1, 0x78, + 0xEC, 0x1A, 0x59, 0x0B, 0xAD, 0xD4, 0x20, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x64, 0x00, 0x10, 0x04, 0x00, 0x05, 0x54, 0x65, + 0x73, 0x74, 0x32, 0x01, 0x08, 0x82, 0x84, 0x0B, + 0x16, 0x24, 0x30, 0x48, 0x6C, 0x03, 0x01, 0x06, + 0x06, 0x02, 0x00, 0x00, 0x2A, 0x01, 0x02, 0x32, + 0x04, 0x0C, 0x12, 0x18, 0x60, 0x2D, 0x1A, 0x6C, + 0x09, 0x03, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x3D, 0x00, 0xDD, 0x07, 0x00, 0xE0, 0x4C, + 0x02, 0x02, 0x00, 0x00, 0xDD, 0x18, 0x00, 0x50, + 0xF2, 0x01, 0x01, 0x00, 0x00, 0x50, 0xF2, 0x04, + 0x01, 0x00, 0x00, 0x50, 0xF2, 0x04, 0x01, 0x00, + + /* page 1 beacon */ + 0x00, 0x50, 0xF2, 0x02, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x10, 0x00, 0x28, 0x8C, 0x00, 0x12, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + /* page 2 ps-poll */ + 0xA4, 0x10, 0x01, 0xC0, 0xEC, 0x1A, 0x59, 0x0B, + 0xAD, 0xD4, 0x00, 0xE0, 0x4C, 0x02, 0xB1, 0x78, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x00, 0x28, 0x8C, 0x00, 0x12, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + /* page 3 null */ + 0x48, 0x01, 0x00, 0x00, 0xEC, 0x1A, 0x59, 0x0B, + 0xAD, 0xD4, 0x00, 0xE0, 0x4C, 0x02, 0xB1, 0x78, + 0xEC, 0x1A, 0x59, 0x0B, 0xAD, 0xD4, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x72, 0x00, 0x28, 0x8C, 0x00, 0x12, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + /* page 4 probe_resp */ + 0x50, 0x00, 0x00, 0x00, 0x00, 0x40, 0x10, 0x10, + 0x00, 0x03, 0x00, 0xE0, 0x4C, 0x76, 0x00, 0x42, + 0x00, 0x40, 0x10, 0x10, 0x00, 0x03, 0x00, 0x00, + 0x9E, 0x46, 0x15, 0x32, 0x27, 0xF2, 0x2D, 0x00, + 0x64, 0x00, 0x00, 0x04, 0x00, 0x0C, 0x6C, 0x69, + 0x6E, 0x6B, 0x73, 0x79, 0x73, 0x5F, 0x77, 0x6C, + 0x61, 0x6E, 0x01, 0x04, 0x82, 0x84, 0x8B, 0x96, + 0x03, 0x01, 0x01, 0x06, 0x02, 0x00, 0x00, 0x2A, + 0x01, 0x00, 0x32, 0x08, 0x24, 0x30, 0x48, 0x6C, + 0x0C, 0x12, 0x18, 0x60, 0x2D, 0x1A, 0x6C, 0x18, + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3D, 0x00, 0xDD, 0x06, 0x00, 0xE0, 0x4C, 0x02, + 0x01, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + /* page 5 probe_resp */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}; + +void rtl8723be_set_fw_rsvdpagepkt(struct ieee80211_hw *hw, + bool dl_finished) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct sk_buff *skb = NULL; + + u32 totalpacketlen; + bool rtstatus; + u8 u1rsvdpageloc[5] = { 0 }; + bool dlok = false; + + u8 *beacon; + u8 *p_pspoll; + u8 *nullfunc; + u8 *p_probersp; + /*--------------------------------------------------------- + * (1) beacon + *--------------------------------------------------------- + */ + beacon = &reserved_page_packet[BEACON_PG * 128]; + SET_80211_HDR_ADDRESS2(beacon, mac->mac_addr); + SET_80211_HDR_ADDRESS3(beacon, mac->bssid); + + /*------------------------------------------------------- + * (2) ps-poll + *------------------------------------------------------- + */ + p_pspoll = &reserved_page_packet[PSPOLL_PG * 128]; + SET_80211_PS_POLL_AID(p_pspoll, (mac->assoc_id | 0xc000)); + SET_80211_PS_POLL_BSSID(p_pspoll, mac->bssid); + SET_80211_PS_POLL_TA(p_pspoll, mac->mac_addr); + + SET_H2CCMD_RSVDPAGE_LOC_PSPOLL(u1rsvdpageloc, PSPOLL_PG); + + /*-------------------------------------------------------- + * (3) null data + *-------------------------------------------------------- + */ + nullfunc = &reserved_page_packet[NULL_PG * 128]; + SET_80211_HDR_ADDRESS1(nullfunc, mac->bssid); + SET_80211_HDR_ADDRESS2(nullfunc, mac->mac_addr); + SET_80211_HDR_ADDRESS3(nullfunc, mac->bssid); + + SET_H2CCMD_RSVDPAGE_LOC_NULL_DATA(u1rsvdpageloc, NULL_PG); + + /*--------------------------------------------------------- + * (4) probe response + *--------------------------------------------------------- + */ + p_probersp = &reserved_page_packet[PROBERSP_PG * 128]; + SET_80211_HDR_ADDRESS1(p_probersp, mac->bssid); + SET_80211_HDR_ADDRESS2(p_probersp, mac->mac_addr); + SET_80211_HDR_ADDRESS3(p_probersp, mac->bssid); + + SET_H2CCMD_RSVDPAGE_LOC_PROBE_RSP(u1rsvdpageloc, PROBERSP_PG); + + totalpacketlen = TOTAL_RESERVED_PKT_LEN; + + RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_LOUD, + "rtl8723be_set_fw_rsvdpagepkt(): " + "HW_VAR_SET_TX_CMD: ALL\n", + &reserved_page_packet[0], totalpacketlen); + RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_DMESG, + "rtl8723be_set_fw_rsvdpagepkt(): " + "HW_VAR_SET_TX_CMD: ALL\n", u1rsvdpageloc, 3); + + + skb = dev_alloc_skb(totalpacketlen); + memcpy((u8 *)skb_put(skb, totalpacketlen), + &reserved_page_packet, totalpacketlen); + + rtstatus = _rtl8723be_cmd_send_packet(hw, skb); + + if (rtstatus) + dlok = true; + + if (dlok) { + RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD, + "Set RSVD page location to Fw.\n"); + RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_DMESG, "H2C_RSVDPAGE:\n", + u1rsvdpageloc, 3); + rtl8723be_fill_h2c_cmd(hw, H2C_8723BE_RSVDPAGE, + sizeof(u1rsvdpageloc), u1rsvdpageloc); + } else { + RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, + "Set RSVD page location to Fw FAIL!!!!!!.\n"); + } +} + +/*Should check FW support p2p or not.*/ +static void rtl8723be_set_p2p_ctw_period_cmd(struct ieee80211_hw *hw, + u8 ctwindow) +{ + u8 u1_ctwindow_period[1] = {ctwindow}; + + rtl8723be_fill_h2c_cmd(hw, H2C_8723BE_P2P_PS_CTW_CMD, 1, + u1_ctwindow_period); +} + +void rtl8723be_set_p2p_ps_offload_cmd(struct ieee80211_hw *hw, + u8 p2p_ps_state) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *rtlps = rtl_psc(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_p2p_ps_info *p2pinfo = &(rtlps->p2p_ps_info); + struct p2p_ps_offload_t *p2p_ps_offload = &rtlhal->p2p_ps_offload; + u8 i; + u16 ctwindow; + u32 start_time, tsf_low; + + switch (p2p_ps_state) { + case P2P_PS_DISABLE: + RT_TRACE(rtlpriv, COMP_FW, DBG_LOUD, "P2P_PS_DISABLE\n"); + memset(p2p_ps_offload, 0, sizeof(struct p2p_ps_offload_t)); + break; + case P2P_PS_ENABLE: + RT_TRACE(rtlpriv, COMP_FW, DBG_LOUD, "P2P_PS_ENABLE\n"); + /* update CTWindow value. */ + if (p2pinfo->ctwindow > 0) { + p2p_ps_offload->ctwindow_en = 1; + ctwindow = p2pinfo->ctwindow; + rtl8723be_set_p2p_ctw_period_cmd(hw, ctwindow); + } + /* hw only support 2 set of NoA */ + for (i = 0; i < p2pinfo->noa_num; i++) { + /* To control the register setting + * for which NOA + */ + rtl_write_byte(rtlpriv, 0x5cf, (i << 4)); + if (i == 0) + p2p_ps_offload->noa0_en = 1; + else + p2p_ps_offload->noa1_en = 1; + + /* config P2P NoA Descriptor Register */ + rtl_write_dword(rtlpriv, 0x5E0, + p2pinfo->noa_duration[i]); + rtl_write_dword(rtlpriv, 0x5E4, + p2pinfo->noa_interval[i]); + + /*Get Current TSF value */ + tsf_low = rtl_read_dword(rtlpriv, REG_TSFTR); + + start_time = p2pinfo->noa_start_time[i]; + if (p2pinfo->noa_count_type[i] != 1) { + while (start_time <= (tsf_low + (50 * 1024))) { + start_time += p2pinfo->noa_interval[i]; + if (p2pinfo->noa_count_type[i] != 255) + p2pinfo->noa_count_type[i]--; + } + } + rtl_write_dword(rtlpriv, 0x5E8, start_time); + rtl_write_dword(rtlpriv, 0x5EC, + p2pinfo->noa_count_type[i]); + } + if ((p2pinfo->opp_ps == 1) || + (p2pinfo->noa_num > 0)) { + /* rst p2p circuit */ + rtl_write_byte(rtlpriv, REG_DUAL_TSF_RST, BIT(4)); + + p2p_ps_offload->offload_en = 1; + + if (P2P_ROLE_GO == rtlpriv->mac80211.p2p) { + p2p_ps_offload->role = 1; + p2p_ps_offload->allstasleep = 0; + } else { + p2p_ps_offload->role = 0; + } + p2p_ps_offload->discovery = 0; + } + break; + case P2P_PS_SCAN: + RT_TRACE(rtlpriv, COMP_FW, DBG_LOUD, "P2P_PS_SCAN\n"); + p2p_ps_offload->discovery = 1; + break; + case P2P_PS_SCAN_DONE: + RT_TRACE(rtlpriv, COMP_FW, DBG_LOUD, "P2P_PS_SCAN_DONE\n"); + p2p_ps_offload->discovery = 0; + p2pinfo->p2p_ps_state = P2P_PS_ENABLE; + break; + default: + break; + } + rtl8723be_fill_h2c_cmd(hw, H2C_8723BE_P2P_PS_OFFLOAD, 1, + (u8 *)p2p_ps_offload); +} + +void rtl8723be_set_fw_joinbss_report_cmd(struct ieee80211_hw *hw, u8 mstatus) +{ + u8 u1_joinbssrpt_parm[1] = { 0 }; + + SET_H2CCMD_JOINBSSRPT_PARM_OPMODE(u1_joinbssrpt_parm, mstatus); + + rtl8723be_fill_h2c_cmd(hw, H2C_8723BE_JOINBSSRPT, 1, + u1_joinbssrpt_parm); +} + +void rtl8723be_set_fw_ap_off_load_cmd(struct ieee80211_hw *hw, + u8 ap_offload_enable) +{ + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + u8 u1_apoffload_parm[H2C_8723BE_AP_OFFLOAD_LENGTH] = { 0 }; + + SET_H2CCMD_AP_OFFLOAD_ON(u1_apoffload_parm, ap_offload_enable); + SET_H2CCMD_AP_OFFLOAD_HIDDEN(u1_apoffload_parm, mac->hiddenssid); + SET_H2CCMD_AP_OFFLOAD_DENYANY(u1_apoffload_parm, 0); + + rtl8723be_fill_h2c_cmd(hw, H2C_8723BE_AP_OFFLOAD, + H2C_8723BE_AP_OFFLOAD_LENGTH, u1_apoffload_parm); +} --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/fw.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/fw.h @@ -0,0 +1,248 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8723BE__FW__H__ +#define __RTL8723BE__FW__H__ + +#define FW_8192C_SIZE 0x8000 +#define FW_8192C_START_ADDRESS 0x1000 +#define FW_8192C_END_ADDRESS 0x5FFF +#define FW_8192C_PAGE_SIZE 4096 +#define FW_8192C_POLLING_DELAY 5 +#define FW_8192C_POLLING_TIMEOUT_COUNT 6000 + +#define IS_FW_HEADER_EXIST(_pfwhdr) \ + ((_pfwhdr->signature&0xFFF0) == 0x5300) +#define USE_OLD_WOWLAN_DEBUG_FW 0 + +#define H2C_8723BE_RSVDPAGE_LOC_LEN 5 +#define H2C_8723BE_PWEMODE_LENGTH 5 +#define H2C_8723BE_JOINBSSRPT_LENGTH 1 +#define H2C_8723BE_AP_OFFLOAD_LENGTH 3 +#define H2C_8723BE_WOWLAN_LENGTH 3 +#define H2C_8723BE_KEEP_ALIVE_CTRL_LENGTH 3 +#if (USE_OLD_WOWLAN_DEBUG_FW == 0) +#define H2C_8723BE_REMOTE_WAKE_CTRL_LEN 1 +#else +#define H2C_8723BE_REMOTE_WAKE_CTRL_LEN 3 +#endif +#define H2C_8723BE_AOAC_GLOBAL_INFO_LEN 2 +#define H2C_8723BE_AOAC_RSVDPAGE_LOC_LEN 7 + + +/* Fw PS state for RPWM. +*BIT[2:0] = HW state +*BIT[3] = Protocol PS state, 1: register active state , 0: register sleep state +*BIT[4] = sub-state +*/ +#define FW_PS_GO_ON BIT(0) +#define FW_PS_TX_NULL BIT(1) +#define FW_PS_RF_ON BIT(2) +#define FW_PS_REGISTER_ACTIVE BIT(3) + +#define FW_PS_DPS BIT(0) +#define FW_PS_LCLK (FW_PS_DPS) +#define FW_PS_RF_OFF BIT(1) +#define FW_PS_ALL_ON BIT(2) +#define FW_PS_ST_ACTIVE BIT(3) +#define FW_PS_ISR_ENABLE BIT(4) +#define FW_PS_IMR_ENABLE BIT(5) + + +#define FW_PS_ACK BIT(6) +#define FW_PS_TOGGLE BIT(7) + + /* 88E RPWM value*/ + /* BIT[0] = 1: 32k, 0: 40M*/ +#define FW_PS_CLOCK_OFF BIT(0) /* 32k*/ +#define FW_PS_CLOCK_ON 0 /*40M*/ + +#define FW_PS_STATE_MASK (0x0F) +#define FW_PS_STATE_HW_MASK (0x07) +/*ISR_ENABLE, IMR_ENABLE, and PS mode should be inherited.*/ +#define FW_PS_STATE_INT_MASK (0x3F) + +#define FW_PS_STATE(x) (FW_PS_STATE_MASK & (x)) +#define FW_PS_STATE_HW(x) (FW_PS_STATE_HW_MASK & (x)) +#define FW_PS_STATE_INT(x) (FW_PS_STATE_INT_MASK & (x)) +#define FW_PS_ISR_VAL(x) ((x) & 0x70) +#define FW_PS_IMR_MASK(x) ((x) & 0xDF) +#define FW_PS_KEEP_IMR(x) ((x) & 0x20) + + +#define FW_PS_STATE_S0 (FW_PS_DPS) +#define FW_PS_STATE_S1 (FW_PS_LCLK) +#define FW_PS_STATE_S2 (FW_PS_RF_OFF) +#define FW_PS_STATE_S3 (FW_PS_ALL_ON) +#define FW_PS_STATE_S4 ((FW_PS_ST_ACTIVE) | (FW_PS_ALL_ON)) + +/* ((FW_PS_RF_ON) | (FW_PS_REGISTER_ACTIVE))*/ +#define FW_PS_STATE_ALL_ON_88E (FW_PS_CLOCK_ON) +/* (FW_PS_RF_ON)*/ +#define FW_PS_STATE_RF_ON_88E (FW_PS_CLOCK_ON) +/* 0x0*/ +#define FW_PS_STATE_RF_OFF_88E (FW_PS_CLOCK_ON) +/* (FW_PS_STATE_RF_OFF)*/ +#define FW_PS_STATE_RF_OFF_LOW_PWR_88E (FW_PS_CLOCK_OFF) + +#define FW_PS_STATE_ALL_ON_92C (FW_PS_STATE_S4) +#define FW_PS_STATE_RF_ON_92C (FW_PS_STATE_S3) +#define FW_PS_STATE_RF_OFF_92C (FW_PS_STATE_S2) +#define FW_PS_STATE_RF_OFF_LOW_PWR_92C (FW_PS_STATE_S1) + + +/* For 88E H2C PwrMode Cmd ID 5.*/ +#define FW_PWR_STATE_ACTIVE ((FW_PS_RF_ON) | (FW_PS_REGISTER_ACTIVE)) +#define FW_PWR_STATE_RF_OFF 0 + +#define FW_PS_IS_ACK(x) ((x) & FW_PS_ACK) +#define FW_PS_IS_CLK_ON(x) ((x) & (FW_PS_RF_OFF | FW_PS_ALL_ON)) +#define FW_PS_IS_RF_ON(x) ((x) & (FW_PS_ALL_ON)) +#define FW_PS_IS_ACTIVE(x) ((x) & (FW_PS_ST_ACTIVE)) +#define FW_PS_IS_CPWM_INT(x) ((x) & 0x40) + +#define FW_CLR_PS_STATE(x) ((x) = ((x) & (0xF0))) + +#define IS_IN_LOW_POWER_STATE_88E(fwpsstate) \ + (FW_PS_STATE(fwpsstate) == FW_PS_CLOCK_OFF) + +#define FW_PWR_STATE_ACTIVE ((FW_PS_RF_ON) | (FW_PS_REGISTER_ACTIVE)) +#define FW_PWR_STATE_RF_OFF 0 + +#define pagenum_128(_len) (u32)(((_len)>>7) + ((_len)&0x7F ? 1 : 0)) + +#define SET_88E_H2CCMD_WOWLAN_FUNC_ENABLE(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 0, 1, __val) +#define SET_88E_H2CCMD_WOWLAN_PATTERN_MATCH_ENABLE(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 1, 1, __val) +#define SET_88E_H2CCMD_WOWLAN_MAGIC_PKT_ENABLE(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 2, 1, __val) +#define SET_88E_H2CCMD_WOWLAN_UNICAST_PKT_ENABLE(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 3, 1, __val) +#define SET_88E_H2CCMD_WOWLAN_ALL_PKT_DROP(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 4, 1, __val) +#define SET_88E_H2CCMD_WOWLAN_GPIO_ACTIVE(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 5, 1, __val) +#define SET_88E_H2CCMD_WOWLAN_REKEY_WAKE_UP(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 6, 1, __val) +#define SET_88E_H2CCMD_WOWLAN_DISCONNECT_WAKE_UP(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 7, 1, __val) +#define SET_88E_H2CCMD_WOWLAN_GPIONUM(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+1, 0, 8, __val) +#define SET_88E_H2CCMD_WOWLAN_GPIO_DURATION(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+2, 0, 8, __val) + + +#define SET_H2CCMD_PWRMODE_PARM_MODE(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 0, 8, __val) +#define SET_H2CCMD_PWRMODE_PARM_RLBM(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+1, 0, 4, __val) +#define SET_H2CCMD_PWRMODE_PARM_SMART_PS(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+1, 4, 4, __val) +#define SET_H2CCMD_PWRMODE_PARM_AWAKE_INTERVAL(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+2, 0, 8, __val) +#define SET_H2CCMD_PWRMODE_PARM_ALL_QUEUE_UAPSD(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+3, 0, 8, __val) +#define SET_H2CCMD_PWRMODE_PARM_PWR_STATE(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+4, 0, 8, __val) +#define GET_88E_H2CCMD_PWRMODE_PARM_MODE(__ph2ccmd) \ + LE_BITS_TO_1BYTE(__ph2ccmd, 0, 8) + +#define SET_H2CCMD_JOINBSSRPT_PARM_OPMODE(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 0, 8, __val) +#define SET_H2CCMD_RSVDPAGE_LOC_PROBE_RSP(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 0, 8, __val) +#define SET_H2CCMD_RSVDPAGE_LOC_PSPOLL(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+1, 0, 8, __val) +#define SET_H2CCMD_RSVDPAGE_LOC_NULL_DATA(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+2, 0, 8, __val) + +/* AP_OFFLOAD */ +#define SET_H2CCMD_AP_OFFLOAD_ON(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 0, 8, __val) +#define SET_H2CCMD_AP_OFFLOAD_HIDDEN(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+1, 0, 8, __val) +#define SET_H2CCMD_AP_OFFLOAD_DENYANY(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+2, 0, 8, __val) +#define SET_H2CCMD_AP_OFFLOAD_WAKEUP_EVT_RPT(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+3, 0, 8, __val) + +/* Keep Alive Control*/ +#define SET_88E_H2CCMD_KEEP_ALIVE_ENABLE(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 0, 1, __val) +#define SET_88E_H2CCMD_KEEP_ALIVE_ACCPEPT_USER_DEFINED(__ph2ccmd, __val)\ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 1, 1, __val) +#define SET_88E_H2CCMD_KEEP_ALIVE_PERIOD(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+1, 0, 8, __val) + +/*REMOTE_WAKE_CTRL */ +#define SET_88E_H2CCMD_REMOTE_WAKE_CTRL_EN(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 0, 1, __val) +#if (USE_OLD_WOWLAN_DEBUG_FW == 0) +#define SET_88E_H2CCMD_REMOTE_WAKE_CTRL_ARP_OFFLOAD_EN(__ph2ccmd, __val)\ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 1, 1, __val) +#define SET_88E_H2CCMD_REMOTE_WAKE_CTRL_NDP_OFFLOAD_EN(__ph2ccmd, __val)\ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 2, 1, __val) +#define SET_88E_H2CCMD_REMOTE_WAKE_CTRL_GTK_OFFLOAD_EN(__ph2ccmd, __val)\ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 3, 1, __val) +#else +#define SET_88E_H2CCMD_REMOTE_WAKE_CTRL_PAIRWISE_ENC_ALG(__ph2ccmd, __val)\ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+1, 0, 8, __val) +#define SET_88E_H2CCMD_REMOTE_WAKE_CTRL_GROUP_ENC_ALG(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+2, 0, 8, __val) +#endif + +/* GTK_OFFLOAD */ +#define SET_88E_H2CCMD_AOAC_GLOBAL_INFO_PAIRWISE_ENC_ALG(__ph2ccmd, __val)\ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 0, 8, __val) +#define SET_88E_H2CCMD_AOAC_GLOBAL_INFO_GROUP_ENC_ALG(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+1, 0, 8, __val) + +/* AOAC_RSVDPAGE_LOC */ +#define SET_88E_H2CCMD_AOAC_RSVDPAGE_LOC_REM_WAKE_CTRL_INFO(__ph2ccmd, __val)\ + SET_BITS_TO_LE_1BYTE((__ph2ccmd), 0, 8, __val) +#define SET_88E_H2CCMD_AOAC_RSVDPAGE_LOC_ARP_RSP(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+1, 0, 8, __val) +#define SET_88E_H2CCMD_AOAC_RSVDPAGE_LOC_NEIGHBOR_ADV(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+2, 0, 8, __val) +#define SET_88E_H2CCMD_AOAC_RSVDPAGE_LOC_GTK_RSP(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+3, 0, 8, __val) +#define SET_88E_H2CCMD_AOAC_RSVDPAGE_LOC_GTK_INFO(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+4, 0, 8, __val) + +void rtl8723be_set_fw_pwrmode_cmd(struct ieee80211_hw *hw, u8 mode); +void rtl8723be_set_fw_ap_off_load_cmd(struct ieee80211_hw *hw, + u8 ap_offload_enable); +void rtl8723be_fill_h2c_cmd(struct ieee80211_hw *hw, u8 element_id, + u32 cmd_len, u8 *p_cmdbuffer); +void rtl8723be_firmware_selfreset(struct ieee80211_hw *hw); +void rtl8723be_set_fw_rsvdpagepkt(struct ieee80211_hw *hw, + bool dl_finished); +void rtl8723be_set_fw_joinbss_report_cmd(struct ieee80211_hw *hw, u8 mstatus); +int rtl8723be_download_fw(struct ieee80211_hw *hw, + bool buse_wake_on_wlan_fw); +void rtl8723be_set_p2p_ps_offload_cmd(struct ieee80211_hw *hw, + u8 p2p_ps_state); + +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/hw.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/hw.c @@ -0,0 +1,2529 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "../efuse.h" +#include "../base.h" +#include "../regd.h" +#include "../cam.h" +#include "../ps.h" +#include "../pci.h" +#include "reg.h" +#include "def.h" +#include "phy.h" +#include "dm.h" +#include "../rtl8723com/dm_common.h" +#include "fw.h" +#include "../rtl8723com/fw_common.h" +#include "led.h" +#include "hw.h" +#include "pwrseqcmd.h" +#include "pwrseq.h" +#include "../btcoexist/rtl_btc.h" + +#define LLT_CONFIG 5 + +static void _rtl8723be_return_beacon_queue_skb(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl8192_tx_ring *ring = &rtlpci->tx_ring[BEACON_QUEUE]; + + while (skb_queue_len(&ring->queue)) { + struct rtl_tx_desc *entry = &ring->desc[ring->idx]; + struct sk_buff *skb = __skb_dequeue(&ring->queue); + + pci_unmap_single(rtlpci->pdev, + rtlpriv->cfg->ops->get_desc( + (u8 *)entry, true, HW_DESC_TXBUFF_ADDR), + skb->len, PCI_DMA_TODEVICE); + kfree_skb(skb); + ring->idx = (ring->idx + 1) % ring->entries; + } +} + +static void _rtl8723be_set_bcn_ctrl_reg(struct ieee80211_hw *hw, + u8 set_bits, u8 clear_bits) +{ + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtlpci->reg_bcn_ctrl_val |= set_bits; + rtlpci->reg_bcn_ctrl_val &= ~clear_bits; + + rtl_write_byte(rtlpriv, REG_BCN_CTRL, (u8) rtlpci->reg_bcn_ctrl_val); +} + +static void _rtl8723be_stop_tx_beacon(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 tmp1byte; + + tmp1byte = rtl_read_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 2); + rtl_write_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 2, tmp1byte & (~BIT(6))); + rtl_write_byte(rtlpriv, REG_TBTT_PROHIBIT + 1, 0x64); + tmp1byte = rtl_read_byte(rtlpriv, REG_TBTT_PROHIBIT + 2); + tmp1byte &= ~(BIT(0)); + rtl_write_byte(rtlpriv, REG_TBTT_PROHIBIT + 2, tmp1byte); +} + +static void _rtl8723be_resume_tx_beacon(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 tmp1byte; + + tmp1byte = rtl_read_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 2); + rtl_write_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 2, tmp1byte | BIT(6)); + rtl_write_byte(rtlpriv, REG_TBTT_PROHIBIT + 1, 0xff); + tmp1byte = rtl_read_byte(rtlpriv, REG_TBTT_PROHIBIT + 2); + tmp1byte |= BIT(1); + rtl_write_byte(rtlpriv, REG_TBTT_PROHIBIT + 2, tmp1byte); +} + +static void _rtl8723be_enable_bcn_sub_func(struct ieee80211_hw *hw) +{ + _rtl8723be_set_bcn_ctrl_reg(hw, 0, BIT(1)); +} + +static void _rtl8723be_disable_bcn_sub_func(struct ieee80211_hw *hw) +{ + _rtl8723be_set_bcn_ctrl_reg(hw, BIT(1), 0); +} + +static void _rtl8723be_set_fw_clock_on(struct ieee80211_hw *hw, u8 rpwm_val, + bool need_turn_off_ckk) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + bool support_remote_wake_up; + u32 count = 0, isr_regaddr, content; + bool schedule_timer = need_turn_off_ckk; + rtlpriv->cfg->ops->get_hw_reg(hw, HAL_DEF_WOWLAN, + (u8 *)(&support_remote_wake_up)); + + if (!rtlhal->fw_ready) + return; + if (!rtlpriv->psc.fw_current_inpsmode) + return; + + while (1) { + spin_lock_bh(&rtlpriv->locks.fw_ps_lock); + if (rtlhal->fw_clk_change_in_progress) { + while (rtlhal->fw_clk_change_in_progress) { + spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); + count++; + udelay(100); + if (count > 1000) + return; + spin_lock_bh(&rtlpriv->locks.fw_ps_lock); + } + spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); + } else { + rtlhal->fw_clk_change_in_progress = false; + spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); + break; + } + } + if (IS_IN_LOW_POWER_STATE_88E(rtlhal->fw_ps_state)) { + rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_SET_RPWM, + (u8 *)(&rpwm_val)); + if (FW_PS_IS_ACK(rpwm_val)) { + isr_regaddr = REG_HISR; + content = rtl_read_dword(rtlpriv, isr_regaddr); + while (!(content & IMR_CPWM) && (count < 500)) { + udelay(50); + count++; + content = rtl_read_dword(rtlpriv, isr_regaddr); + } + + if (content & IMR_CPWM) { + rtl_write_word(rtlpriv, isr_regaddr, 0x0100); + rtlhal->fw_ps_state = FW_PS_STATE_RF_ON_88E; + RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD, + "Receive CPWM INT!!! Set " + "pHalData->FwPSState = %X\n", + rtlhal->fw_ps_state); + } + } + spin_lock_bh(&rtlpriv->locks.fw_ps_lock); + rtlhal->fw_clk_change_in_progress = false; + spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); + if (schedule_timer) { + mod_timer(&rtlpriv->works.fw_clockoff_timer, + jiffies + MSECS(10)); + } + } else { + spin_lock_bh(&rtlpriv->locks.fw_ps_lock); + rtlhal->fw_clk_change_in_progress = false; + spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); + } +} + +static void _rtl8723be_set_fw_clock_off(struct ieee80211_hw *hw, u8 rpwm_val) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl8192_tx_ring *ring; + enum rf_pwrstate rtstate; + bool schedule_timer = false; + u8 queue; + + if (!rtlhal->fw_ready) + return; + if (!rtlpriv->psc.fw_current_inpsmode) + return; + if (!rtlhal->allow_sw_to_change_hwclc) + return; + rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_RF_STATE, (u8 *)(&rtstate)); + if (rtstate == ERFOFF || rtlpriv->psc.inactive_pwrstate == ERFOFF) + return; + + for (queue = 0; queue < RTL_PCI_MAX_TX_QUEUE_COUNT; queue++) { + ring = &rtlpci->tx_ring[queue]; + if (skb_queue_len(&ring->queue)) { + schedule_timer = true; + break; + } + } + if (schedule_timer) { + mod_timer(&rtlpriv->works.fw_clockoff_timer, + jiffies + MSECS(10)); + return; + } + if (FW_PS_STATE(rtlhal->fw_ps_state) != + FW_PS_STATE_RF_OFF_LOW_PWR_88E) { + spin_lock_bh(&rtlpriv->locks.fw_ps_lock); + if (!rtlhal->fw_clk_change_in_progress) { + rtlhal->fw_clk_change_in_progress = true; + spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); + rtlhal->fw_ps_state = FW_PS_STATE(rpwm_val); + rtl_write_word(rtlpriv, REG_HISR, 0x0100); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_SET_RPWM, + (u8 *)(&rpwm_val)); + spin_lock_bh(&rtlpriv->locks.fw_ps_lock); + rtlhal->fw_clk_change_in_progress = false; + spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); + } else { + spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); + mod_timer(&rtlpriv->works.fw_clockoff_timer, + jiffies + MSECS(10)); + } + } +} + +static void _rtl8723be_set_fw_ps_rf_on(struct ieee80211_hw *hw) +{ + u8 rpwm_val = 0; + rpwm_val |= (FW_PS_STATE_RF_OFF_88E | FW_PS_ACK); + _rtl8723be_set_fw_clock_on(hw, rpwm_val, true); +} + +static void _rtl8723be_fwlps_leave(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + bool fw_current_inps = false; + u8 rpwm_val = 0, fw_pwrmode = FW_PS_ACTIVE_MODE; + + if (ppsc->low_power_enable) { + rpwm_val = (FW_PS_STATE_ALL_ON_88E | FW_PS_ACK);/* RF on */ + _rtl8723be_set_fw_clock_on(hw, rpwm_val, false); + rtlhal->allow_sw_to_change_hwclc = false; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_H2C_FW_PWRMODE, + (u8 *)(&fw_pwrmode)); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, + (u8 *)(&fw_current_inps)); + } else { + rpwm_val = FW_PS_STATE_ALL_ON_88E; /* RF on */ + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_SET_RPWM, + (u8 *)(&rpwm_val)); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_H2C_FW_PWRMODE, + (u8 *)(&fw_pwrmode)); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, + (u8 *)(&fw_current_inps)); + } +} + +static void _rtl8723be_fwlps_enter(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + bool fw_current_inps = true; + u8 rpwm_val; + + if (ppsc->low_power_enable) { + rpwm_val = FW_PS_STATE_RF_OFF_LOW_PWR_88E; /* RF off */ + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, + (u8 *)(&fw_current_inps)); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_H2C_FW_PWRMODE, + (u8 *)(&ppsc->fwctrl_psmode)); + rtlhal->allow_sw_to_change_hwclc = true; + _rtl8723be_set_fw_clock_off(hw, rpwm_val); + + } else { + rpwm_val = FW_PS_STATE_RF_OFF_88E; /* RF off */ + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, + (u8 *)(&fw_current_inps)); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_H2C_FW_PWRMODE, + (u8 *)(&ppsc->fwctrl_psmode)); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_SET_RPWM, + (u8 *)(&rpwm_val)); + } +} + +void rtl8723be_get_hw_reg(struct ieee80211_hw *hw, u8 variable, u8 *val) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + + switch (variable) { + case HW_VAR_RCR: + *((u32 *)(val)) = rtlpci->receive_config; + break; + case HW_VAR_RF_STATE: + *((enum rf_pwrstate *)(val)) = ppsc->rfpwr_state; + break; + case HW_VAR_FWLPS_RF_ON: { + enum rf_pwrstate rfstate; + u32 val_rcr; + + rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_RF_STATE, + (u8 *)(&rfstate)); + if (rfstate == ERFOFF) { + *((bool *)(val)) = true; + } else { + val_rcr = rtl_read_dword(rtlpriv, REG_RCR); + val_rcr &= 0x00070000; + if (val_rcr) + *((bool *)(val)) = false; + else + *((bool *)(val)) = true; + } + break; } + case HW_VAR_FW_PSMODE_STATUS: + *((bool *)(val)) = ppsc->fw_current_inpsmode; + break; + case HW_VAR_CORRECT_TSF: { + u64 tsf; + u32 *ptsf_low = (u32 *)&tsf; + u32 *ptsf_high = ((u32 *)&tsf) + 1; + + *ptsf_high = rtl_read_dword(rtlpriv, (REG_TSFTR + 4)); + *ptsf_low = rtl_read_dword(rtlpriv, REG_TSFTR); + + *((u64 *)(val)) = tsf; + + break; } + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "switch case not process %x\n", variable); + break; + } +} + +void rtl8723be_set_hw_reg(struct ieee80211_hw *hw, u8 variable, u8 *val) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + u8 idx; + + switch (variable) { + case HW_VAR_ETHER_ADDR: + for (idx = 0; idx < ETH_ALEN; idx++) + rtl_write_byte(rtlpriv, (REG_MACID + idx), val[idx]); + break; + case HW_VAR_BASIC_RATE: { + u16 rate_cfg = ((u16 *)val)[0]; + u8 rate_index = 0; + rate_cfg = rate_cfg & 0x15f; + rate_cfg |= 0x01; + rtl_write_byte(rtlpriv, REG_RRSR, rate_cfg & 0xff); + rtl_write_byte(rtlpriv, REG_RRSR + 1, (rate_cfg >> 8) & 0xff); + while (rate_cfg > 0x1) { + rate_cfg = (rate_cfg >> 1); + rate_index++; + } + rtl_write_byte(rtlpriv, REG_INIRTS_RATE_SEL, rate_index); + break; } + case HW_VAR_BSSID: + for (idx = 0; idx < ETH_ALEN; idx++) + rtl_write_byte(rtlpriv, (REG_BSSID + idx), val[idx]); + break; + case HW_VAR_SIFS: + rtl_write_byte(rtlpriv, REG_SIFS_CTX + 1, val[0]); + rtl_write_byte(rtlpriv, REG_SIFS_TRX + 1, val[1]); + + rtl_write_byte(rtlpriv, REG_SPEC_SIFS + 1, val[0]); + rtl_write_byte(rtlpriv, REG_MAC_SPEC_SIFS + 1, val[0]); + + if (!mac->ht_enable) + rtl_write_word(rtlpriv, REG_RESP_SIFS_OFDM, 0x0e0e); + else + rtl_write_word(rtlpriv, REG_RESP_SIFS_OFDM, + *((u16 *)val)); + break; + case HW_VAR_SLOT_TIME: { + u8 e_aci; + + RT_TRACE(rtlpriv, COMP_MLME, DBG_LOUD, + "HW_VAR_SLOT_TIME %x\n", val[0]); + + rtl_write_byte(rtlpriv, REG_SLOT, val[0]); + + for (e_aci = 0; e_aci < AC_MAX; e_aci++) { + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_AC_PARAM, + (u8 *)(&e_aci)); + } + break; } + case HW_VAR_ACK_PREAMBLE: { + u8 reg_tmp; + u8 short_preamble = (bool) (*(u8 *)val); + reg_tmp = rtl_read_byte(rtlpriv, REG_TRXPTCL_CTL + 2); + if (short_preamble) { + reg_tmp |= 0x02; + rtl_write_byte(rtlpriv, REG_TRXPTCL_CTL + 2, reg_tmp); + } else { + reg_tmp &= 0xFD; + rtl_write_byte(rtlpriv, REG_TRXPTCL_CTL + 2, reg_tmp); + } + break; } + case HW_VAR_WPA_CONFIG: + rtl_write_byte(rtlpriv, REG_SECCFG, *((u8 *)val)); + break; + case HW_VAR_AMPDU_MIN_SPACE: { + u8 min_spacing_to_set; + u8 sec_min_space; + + min_spacing_to_set = *((u8 *)val); + if (min_spacing_to_set <= 7) { + sec_min_space = 0; + + if (min_spacing_to_set < sec_min_space) + min_spacing_to_set = sec_min_space; + + mac->min_space_cfg = ((mac->min_space_cfg & 0xf8) | + min_spacing_to_set); + + *val = min_spacing_to_set; + + RT_TRACE(rtlpriv, COMP_MLME, DBG_LOUD, + "Set HW_VAR_AMPDU_MIN_SPACE: %#x\n", + mac->min_space_cfg); + + rtl_write_byte(rtlpriv, REG_AMPDU_MIN_SPACE, + mac->min_space_cfg); + } + break; } + case HW_VAR_SHORTGI_DENSITY: { + u8 density_to_set; + + density_to_set = *((u8 *)val); + mac->min_space_cfg |= (density_to_set << 3); + + RT_TRACE(rtlpriv, COMP_MLME, DBG_LOUD, + "Set HW_VAR_SHORTGI_DENSITY: %#x\n", + mac->min_space_cfg); + + rtl_write_byte(rtlpriv, REG_AMPDU_MIN_SPACE, + mac->min_space_cfg); + break; } + case HW_VAR_AMPDU_FACTOR: { + u8 regtoset_normal[4] = {0x41, 0xa8, 0x72, 0xb9}; + u8 factor_toset; + u8 *p_regtoset = NULL; + u8 index = 0; + + p_regtoset = regtoset_normal; + + factor_toset = *((u8 *)val); + if (factor_toset <= 3) { + factor_toset = (1 << (factor_toset + 2)); + if (factor_toset > 0xf) + factor_toset = 0xf; + + for (index = 0; index < 4; index++) { + if ((p_regtoset[index] & 0xf0) > + (factor_toset << 4)) + p_regtoset[index] = + (p_regtoset[index] & 0x0f) | + (factor_toset << 4); + + if ((p_regtoset[index] & 0x0f) > factor_toset) + p_regtoset[index] = + (p_regtoset[index] & 0xf0) | + (factor_toset); + + rtl_write_byte(rtlpriv, + (REG_AGGLEN_LMT + index), + p_regtoset[index]); + } + RT_TRACE(rtlpriv, COMP_MLME, DBG_LOUD, + "Set HW_VAR_AMPDU_FACTOR: %#x\n", + factor_toset); + } + break; } + case HW_VAR_AC_PARAM: { + u8 e_aci = *((u8 *)val); + rtl8723_dm_init_edca_turbo(hw); + + if (rtlpci->acm_method != EACMWAY2_SW) + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_ACM_CTRL, + (u8 *)(&e_aci)); + break; } + case HW_VAR_ACM_CTRL: { + u8 e_aci = *((u8 *)val); + union aci_aifsn *p_aci_aifsn = + (union aci_aifsn *)(&(mac->ac[0].aifs)); + u8 acm = p_aci_aifsn->f.acm; + u8 acm_ctrl = rtl_read_byte(rtlpriv, REG_ACMHWCTRL); + + acm_ctrl = + acm_ctrl | ((rtlpci->acm_method == 2) ? 0x0 : 0x1); + + if (acm) { + switch (e_aci) { + case AC0_BE: + acm_ctrl |= ACMHW_BEQEN; + break; + case AC2_VI: + acm_ctrl |= ACMHW_VIQEN; + break; + case AC3_VO: + acm_ctrl |= ACMHW_VOQEN; + break; + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, + "HW_VAR_ACM_CTRL acm set " + "failed: eACI is %d\n", acm); + break; + } + } else { + switch (e_aci) { + case AC0_BE: + acm_ctrl &= (~ACMHW_BEQEN); + break; + case AC2_VI: + acm_ctrl &= (~ACMHW_VIQEN); + break; + case AC3_VO: + acm_ctrl &= (~ACMHW_BEQEN); + break; + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "switch case not process\n"); + break; + } + } + RT_TRACE(rtlpriv, COMP_QOS, DBG_TRACE, + "SetHwReg8190pci(): [HW_VAR_ACM_CTRL] " + "Write 0x%X\n", acm_ctrl); + rtl_write_byte(rtlpriv, REG_ACMHWCTRL, acm_ctrl); + break; } + case HW_VAR_RCR: + rtl_write_dword(rtlpriv, REG_RCR, ((u32 *)(val))[0]); + rtlpci->receive_config = ((u32 *)(val))[0]; + break; + case HW_VAR_RETRY_LIMIT: { + u8 retry_limit = ((u8 *)(val))[0]; + + rtl_write_word(rtlpriv, REG_RL, + retry_limit << RETRY_LIMIT_SHORT_SHIFT | + retry_limit << RETRY_LIMIT_LONG_SHIFT); + break; } + case HW_VAR_DUAL_TSF_RST: + rtl_write_byte(rtlpriv, REG_DUAL_TSF_RST, (BIT(0) | BIT(1))); + break; + case HW_VAR_EFUSE_BYTES: + rtlefuse->efuse_usedbytes = *((u16 *)val); + break; + case HW_VAR_EFUSE_USAGE: + rtlefuse->efuse_usedpercentage = *((u8 *)val); + break; + case HW_VAR_IO_CMD: + rtl8723be_phy_set_io_cmd(hw, (*(enum io_type *)val)); + break; + case HW_VAR_SET_RPWM: { + u8 rpwm_val; + + rpwm_val = rtl_read_byte(rtlpriv, REG_PCIE_HRPWM); + udelay(1); + + if (rpwm_val & BIT(7)) { + rtl_write_byte(rtlpriv, REG_PCIE_HRPWM, (*(u8 *)val)); + } else { + rtl_write_byte(rtlpriv, REG_PCIE_HRPWM, + ((*(u8 *)val) | BIT(7))); + } + break; } + case HW_VAR_H2C_FW_PWRMODE: + rtl8723be_set_fw_pwrmode_cmd(hw, (*(u8 *)val)); + break; + case HW_VAR_FW_PSMODE_STATUS: + ppsc->fw_current_inpsmode = *((bool *)val); + break; + case HW_VAR_RESUME_CLK_ON: + _rtl8723be_set_fw_ps_rf_on(hw); + break; + case HW_VAR_FW_LPS_ACTION: { + bool enter_fwlps = *((bool *)val); + + if (enter_fwlps) + _rtl8723be_fwlps_enter(hw); + else + _rtl8723be_fwlps_leave(hw); + + break; } + case HW_VAR_H2C_FW_JOINBSSRPT: { + u8 mstatus = (*(u8 *)val); + u8 tmp_regcr, tmp_reg422, bcnvalid_reg; + u8 count = 0, dlbcn_count = 0; + bool recover = false; + + if (mstatus == RT_MEDIA_CONNECT) { + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_AID, NULL); + + tmp_regcr = rtl_read_byte(rtlpriv, REG_CR + 1); + rtl_write_byte(rtlpriv, REG_CR + 1, + (tmp_regcr | BIT(0))); + + _rtl8723be_set_bcn_ctrl_reg(hw, 0, BIT(3)); + _rtl8723be_set_bcn_ctrl_reg(hw, BIT(4), 0); + + tmp_reg422 = rtl_read_byte(rtlpriv, + REG_FWHW_TXQ_CTRL + 2); + rtl_write_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 2, + tmp_reg422 & (~BIT(6))); + if (tmp_reg422 & BIT(6)) + recover = true; + + do { + bcnvalid_reg = rtl_read_byte(rtlpriv, + REG_TDECTRL + 2); + rtl_write_byte(rtlpriv, REG_TDECTRL + 2, + (bcnvalid_reg | BIT(0))); + _rtl8723be_return_beacon_queue_skb(hw); + + rtl8723be_set_fw_rsvdpagepkt(hw, 0); + bcnvalid_reg = rtl_read_byte(rtlpriv, + REG_TDECTRL + 2); + count = 0; + while (!(bcnvalid_reg & BIT(0)) && count < 20) { + count++; + udelay(10); + bcnvalid_reg = rtl_read_byte(rtlpriv, + REG_TDECTRL + 2); + } + dlbcn_count++; + } while (!(bcnvalid_reg & BIT(0)) && dlbcn_count < 5); + + if (bcnvalid_reg & BIT(0)) + rtl_write_byte(rtlpriv, REG_TDECTRL+2, BIT(0)); + + _rtl8723be_set_bcn_ctrl_reg(hw, BIT(3), 0); + _rtl8723be_set_bcn_ctrl_reg(hw, 0, BIT(4)); + + if (recover) { + rtl_write_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 2, + tmp_reg422); + } + rtl_write_byte(rtlpriv, REG_CR + 1, + (tmp_regcr & ~(BIT(0)))); + } + rtl8723be_set_fw_joinbss_report_cmd(hw, (*(u8 *)val)); + break; } + case HW_VAR_H2C_FW_P2P_PS_OFFLOAD: + rtl8723be_set_p2p_ps_offload_cmd(hw, (*(u8 *)val)); + break; + case HW_VAR_AID: { + u16 u2btmp; + u2btmp = rtl_read_word(rtlpriv, REG_BCN_PSR_RPT); + u2btmp &= 0xC000; + rtl_write_word(rtlpriv, REG_BCN_PSR_RPT, + (u2btmp | mac->assoc_id)); + break; } + case HW_VAR_CORRECT_TSF: { + u8 btype_ibss = ((u8 *)(val))[0]; + + if (btype_ibss) + _rtl8723be_stop_tx_beacon(hw); + + _rtl8723be_set_bcn_ctrl_reg(hw, 0, BIT(3)); + + rtl_write_dword(rtlpriv, REG_TSFTR, + (u32) (mac->tsf & 0xffffffff)); + rtl_write_dword(rtlpriv, REG_TSFTR + 4, + (u32) ((mac->tsf >> 32) & 0xffffffff)); + + _rtl8723be_set_bcn_ctrl_reg(hw, BIT(3), 0); + + if (btype_ibss) + _rtl8723be_resume_tx_beacon(hw); + break; } + case HW_VAR_KEEP_ALIVE: { + u8 array[2]; + array[0] = 0xff; + array[1] = *((u8 *)val); + rtl8723be_fill_h2c_cmd(hw, H2C_8723BE_KEEP_ALIVE_CTRL, + 2, array); + break; } + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "switch case not process %x\n", + variable); + break; + } +} + +static bool _rtl8723be_llt_write(struct ieee80211_hw *hw, u32 address, u32 data) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + bool status = true; + int count = 0; + u32 value = _LLT_INIT_ADDR(address) | _LLT_INIT_DATA(data) | + _LLT_OP(_LLT_WRITE_ACCESS); + + rtl_write_dword(rtlpriv, REG_LLT_INIT, value); + + do { + value = rtl_read_dword(rtlpriv, REG_LLT_INIT); + if (_LLT_NO_ACTIVE == _LLT_OP_VALUE(value)) + break; + + if (count > POLLING_LLT_THRESHOLD) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "Failed to polling write LLT done at " + "address %d!\n", address); + status = false; + break; + } + } while (++count); + + return status; +} + +static bool _rtl8723be_llt_table_init(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + unsigned short i; + u8 txpktbuf_bndy; + u8 maxpage; + bool status; + + maxpage = 255; + txpktbuf_bndy = 245; + + rtl_write_dword(rtlpriv, REG_TRXFF_BNDY, + (0x27FF0000 | txpktbuf_bndy)); + rtl_write_byte(rtlpriv, REG_TDECTRL + 1, txpktbuf_bndy); + + rtl_write_byte(rtlpriv, REG_TXPKTBUF_BCNQ_BDNY, txpktbuf_bndy); + rtl_write_byte(rtlpriv, REG_TXPKTBUF_MGQ_BDNY, txpktbuf_bndy); + + rtl_write_byte(rtlpriv, 0x45D, txpktbuf_bndy); + rtl_write_byte(rtlpriv, REG_PBP, 0x31); + rtl_write_byte(rtlpriv, REG_RX_DRVINFO_SZ, 0x4); + + for (i = 0; i < (txpktbuf_bndy - 1); i++) { + status = _rtl8723be_llt_write(hw, i, i + 1); + if (!status) + return status; + } + status = _rtl8723be_llt_write(hw, (txpktbuf_bndy - 1), 0xFF); + + if (!status) + return status; + + for (i = txpktbuf_bndy; i < maxpage; i++) { + status = _rtl8723be_llt_write(hw, i, (i + 1)); + if (!status) + return status; + } + status = _rtl8723be_llt_write(hw, maxpage, txpktbuf_bndy); + if (!status) + return status; + + rtl_write_dword(rtlpriv, REG_RQPN, 0x80e40808); + rtl_write_byte(rtlpriv, REG_RQPN_NPQ, 0x00); + + return true; +} + +static void _rtl8723be_gen_refresh_led_state(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_led *pled0 = &(pcipriv->ledctl.sw_led0); + + if (rtlpriv->rtlhal.up_first_time) + return; + + if (ppsc->rfoff_reason == RF_CHANGE_BY_IPS) + rtl8723be_sw_led_on(hw, pled0); + else if (ppsc->rfoff_reason == RF_CHANGE_BY_INIT) + rtl8723be_sw_led_on(hw, pled0); + else + rtl8723be_sw_led_off(hw, pled0); +} + +static bool _rtl8723be_init_mac(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + + unsigned char bytetmp; + unsigned short wordtmp; + u16 retry = 0; + bool mac_func_enable; + + rtl_write_byte(rtlpriv, REG_RSV_CTRL, 0x00); + + /*Auto Power Down to CHIP-off State*/ + bytetmp = rtl_read_byte(rtlpriv, REG_APS_FSMCO + 1) & (~BIT(7)); + rtl_write_byte(rtlpriv, REG_APS_FSMCO + 1, bytetmp); + + bytetmp = rtl_read_byte(rtlpriv, REG_CR); + if (bytetmp == 0xFF) + mac_func_enable = true; + else + mac_func_enable = false; + + /* HW Power on sequence */ + if (!rtlbe_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_ALL_MSK, + PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK, + RTL8723_NIC_ENABLE_FLOW)) { + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "init MAC Fail as power on failure\n"); + return false; + } + bytetmp = rtl_read_byte(rtlpriv, REG_APS_FSMCO) | BIT(4); + rtl_write_byte(rtlpriv, REG_APS_FSMCO, bytetmp); + + bytetmp = rtl_read_byte(rtlpriv, REG_CR); + bytetmp = 0xff; + rtl_write_byte(rtlpriv, REG_CR, bytetmp); + mdelay(2); + + bytetmp = rtl_read_byte(rtlpriv, REG_HWSEQ_CTRL); + bytetmp |= 0x7f; + rtl_write_byte(rtlpriv, REG_HWSEQ_CTRL, bytetmp); + mdelay(2); + + bytetmp = rtl_read_byte(rtlpriv, REG_SYS_CFG + 3); + if (bytetmp & BIT(0)) { + bytetmp = rtl_read_byte(rtlpriv, 0x7c); + bytetmp |= BIT(6); + rtl_write_byte(rtlpriv, 0x7c, bytetmp); + } + bytetmp = rtl_read_byte(rtlpriv, REG_SYS_CLKR); + bytetmp |= BIT(3); + rtl_write_byte(rtlpriv, REG_SYS_CLKR, bytetmp); + bytetmp = rtl_read_byte(rtlpriv, REG_GPIO_MUXCFG + 1); + bytetmp &= ~BIT(4); + rtl_write_byte(rtlpriv, REG_GPIO_MUXCFG + 1, bytetmp); + + bytetmp = rtl_read_byte(rtlpriv, REG_PCIE_CTRL_REG+3); + rtl_write_byte(rtlpriv, REG_PCIE_CTRL_REG+3, bytetmp | 0x77); + + rtl_write_word(rtlpriv, REG_CR, 0x2ff); + + if (!mac_func_enable) { + if (!_rtl8723be_llt_table_init(hw)) + return false; + } + rtl_write_dword(rtlpriv, REG_HISR, 0xffffffff); + rtl_write_dword(rtlpriv, REG_HISRE, 0xffffffff); + + /* Enable FW Beamformer Interrupt */ + bytetmp = rtl_read_byte(rtlpriv, REG_FWIMR + 3); + rtl_write_byte(rtlpriv, REG_FWIMR + 3, bytetmp | BIT(6)); + + wordtmp = rtl_read_word(rtlpriv, REG_TRXDMA_CTRL); + wordtmp &= 0xf; + wordtmp |= 0xF5B1; + rtl_write_word(rtlpriv, REG_TRXDMA_CTRL, wordtmp); + + rtl_write_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 1, 0x1F); + rtl_write_dword(rtlpriv, REG_RCR, rtlpci->receive_config); + rtl_write_word(rtlpriv, REG_RXFLTMAP2, 0xFFFF); + rtl_write_dword(rtlpriv, REG_TCR, rtlpci->transmit_config); + + rtl_write_byte(rtlpriv, 0x4d0, 0x0); + + rtl_write_dword(rtlpriv, REG_BCNQ_DESA, + ((u64) rtlpci->tx_ring[BEACON_QUEUE].dma) & + DMA_BIT_MASK(32)); + rtl_write_dword(rtlpriv, REG_MGQ_DESA, + (u64) rtlpci->tx_ring[MGNT_QUEUE].dma & + DMA_BIT_MASK(32)); + rtl_write_dword(rtlpriv, REG_VOQ_DESA, + (u64) rtlpci->tx_ring[VO_QUEUE].dma & DMA_BIT_MASK(32)); + rtl_write_dword(rtlpriv, REG_VIQ_DESA, + (u64) rtlpci->tx_ring[VI_QUEUE].dma & DMA_BIT_MASK(32)); + rtl_write_dword(rtlpriv, REG_BEQ_DESA, + (u64) rtlpci->tx_ring[BE_QUEUE].dma & DMA_BIT_MASK(32)); + rtl_write_dword(rtlpriv, REG_BKQ_DESA, + (u64) rtlpci->tx_ring[BK_QUEUE].dma & DMA_BIT_MASK(32)); + rtl_write_dword(rtlpriv, REG_HQ_DESA, + (u64) rtlpci->tx_ring[HIGH_QUEUE].dma & + DMA_BIT_MASK(32)); + rtl_write_dword(rtlpriv, REG_RX_DESA, + (u64) rtlpci->rx_ring[RX_MPDU_QUEUE].dma & + DMA_BIT_MASK(32)); + + bytetmp = rtl_read_byte(rtlpriv, REG_PCIE_CTRL_REG + 3); + rtl_write_byte(rtlpriv, REG_PCIE_CTRL_REG + 3, bytetmp | 0x77); + + rtl_write_dword(rtlpriv, REG_INT_MIG, 0); + + bytetmp = rtl_read_byte(rtlpriv, REG_APSD_CTRL); + rtl_write_byte(rtlpriv, REG_APSD_CTRL, bytetmp & ~BIT(6)); + + rtl_write_byte(rtlpriv, REG_SECONDARY_CCA_CTRL, 0x3); + + do { + retry++; + bytetmp = rtl_read_byte(rtlpriv, REG_APSD_CTRL); + } while ((retry < 200) && (bytetmp & BIT(7))); + + _rtl8723be_gen_refresh_led_state(hw); + + rtl_write_dword(rtlpriv, REG_MCUTST_1, 0x0); + + bytetmp = rtl_read_byte(rtlpriv, REG_RXDMA_CONTROL); + rtl_write_byte(rtlpriv, REG_RXDMA_CONTROL, bytetmp & ~BIT(2)); + + return true; +} + +static void _rtl8723be_hw_configure(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 reg_bw_opmode; + u32 reg_ratr, reg_prsr; + + reg_bw_opmode = BW_OPMODE_20MHZ; + reg_ratr = RATE_ALL_CCK | RATE_ALL_OFDM_AG | + RATE_ALL_OFDM_1SS | RATE_ALL_OFDM_2SS; + reg_prsr = RATE_ALL_CCK | RATE_ALL_OFDM_AG; + + rtl_write_dword(rtlpriv, REG_RRSR, reg_prsr); + rtl_write_byte(rtlpriv, REG_HWSEQ_CTRL, 0xFF); +} + +static void _rtl8723be_enable_aspm_back_door(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + + rtl_write_byte(rtlpriv, 0x34b, 0x93); + rtl_write_word(rtlpriv, 0x350, 0x870c); + rtl_write_byte(rtlpriv, 0x352, 0x1); + + if (ppsc->support_backdoor) + rtl_write_byte(rtlpriv, 0x349, 0x1b); + else + rtl_write_byte(rtlpriv, 0x349, 0x03); + + rtl_write_word(rtlpriv, 0x350, 0x2718); + rtl_write_byte(rtlpriv, 0x352, 0x1); +} + +void rtl8723be_enable_hw_security_config(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 sec_reg_value; + + RT_TRACE(rtlpriv, COMP_INIT, DBG_DMESG, + "PairwiseEncAlgorithm = %d GroupEncAlgorithm = %d\n", + rtlpriv->sec.pairwise_enc_algorithm, + rtlpriv->sec.group_enc_algorithm); + + if (rtlpriv->cfg->mod_params->sw_crypto || rtlpriv->sec.use_sw_sec) { + RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG, + "not open hw encryption\n"); + return; + } + sec_reg_value = SCR_TXENCENABLE | SCR_RXDECENABLE; + + if (rtlpriv->sec.use_defaultkey) { + sec_reg_value |= SCR_TXUSEDK; + sec_reg_value |= SCR_RXUSEDK; + } + sec_reg_value |= (SCR_RXBCUSEDK | SCR_TXBCUSEDK); + + rtl_write_byte(rtlpriv, REG_CR + 1, 0x02); + + RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG, "The SECR-value %x\n", + sec_reg_value); + + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_WPA_CONFIG, &sec_reg_value); +} + +int rtl8723be_hw_init(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + bool rtstatus = true; + int err; + u8 tmp_u1b; + unsigned long flags; + + /* reenable interrupts to not interfere with other devices */ + local_save_flags(flags); + local_irq_enable(); + + rtlpriv->rtlhal.being_init_adapter = true; + rtlpriv->intf_ops->disable_aspm(hw); + rtstatus = _rtl8723be_init_mac(hw); + if (!rtstatus) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "Init MAC failed\n"); + err = 1; + goto exit; + } + tmp_u1b = rtl_read_byte(rtlpriv, REG_SYS_CFG); + tmp_u1b &= 0x7F; + rtl_write_byte(rtlpriv, REG_SYS_CFG, tmp_u1b); + + err = rtl8723_download_fw(hw, true); + if (err) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, + "Failed to download FW. Init HW without FW now..\n"); + err = 1; + rtlhal->fw_ready = false; + goto exit; + } else { + rtlhal->fw_ready = true; + } + rtlhal->last_hmeboxnum = 0; + rtl8723be_phy_mac_config(hw); + /* because last function modify RCR, so we update + * rcr var here, or TP will unstable for receive_config + * is wrong, RX RCR_ACRC32 will cause TP unstabel & Rx + * RCR_APP_ICV will cause mac80211 unassoc for cisco 1252 + */ + rtlpci->receive_config = rtl_read_dword(rtlpriv, REG_RCR); + rtlpci->receive_config &= ~(RCR_ACRC32 | RCR_AICV); + rtl_write_dword(rtlpriv, REG_RCR, rtlpci->receive_config); + + rtl8723be_phy_bb_config(hw); + rtlphy->rf_mode = RF_OP_BY_SW_3WIRE; + rtl8723be_phy_rf_config(hw); + + rtlphy->rfreg_chnlval[0] = rtl_get_rfreg(hw, (enum radio_path)0, + RF_CHNLBW, RFREG_OFFSET_MASK); + rtlphy->rfreg_chnlval[1] = rtl_get_rfreg(hw, (enum radio_path)1, + RF_CHNLBW, RFREG_OFFSET_MASK); + rtlphy->rfreg_chnlval[0] &= 0xFFF03FF; + rtlphy->rfreg_chnlval[0] |= (BIT(10) | BIT(11)); + + rtl_set_bbreg(hw, RFPGA0_RFMOD, BCCKEN, 0x1); + rtl_set_bbreg(hw, RFPGA0_RFMOD, BOFDMEN, 0x1); + rtl_set_bbreg(hw, RFPGA0_ANALOGPARAMETER2, BIT(10), 1); + _rtl8723be_hw_configure(hw); + rtl_cam_reset_all_entry(hw); + rtl8723be_enable_hw_security_config(hw); + + ppsc->rfpwr_state = ERFON; + + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_ETHER_ADDR, mac->mac_addr); + _rtl8723be_enable_aspm_back_door(hw); + rtlpriv->intf_ops->enable_aspm(hw); + + rtl8723be_bt_hw_init(hw); + + rtl_set_bbreg(hw, 0x64, BIT(20), 0); + rtl_set_bbreg(hw, 0x64, BIT(24), 0); + + rtl_set_bbreg(hw, 0x40, BIT(4), 0); + rtl_set_bbreg(hw, 0x40, BIT(3), 1); + + rtl_set_bbreg(hw, 0x944, BIT(0)|BIT(1), 0x3); + rtl_set_bbreg(hw, 0x930, 0xff, 0x77); + + rtl_set_bbreg(hw, 0x38, BIT(11), 0x1); + + rtl_set_bbreg(hw, 0xb2c, 0xffffffff, 0x80000000); + + if (ppsc->rfpwr_state == ERFON) { + rtl8723be_dm_check_txpower_tracking(hw); + rtl8723be_phy_lc_calibrate(hw); + } + tmp_u1b = efuse_read_1byte(hw, 0x1FA); + if (!(tmp_u1b & BIT(0))) { + rtl_set_rfreg(hw, RF90_PATH_A, 0x15, 0x0F, 0x05); + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, "PA BIAS path A\n"); + } + if (!(tmp_u1b & BIT(4))) { + tmp_u1b = rtl_read_byte(rtlpriv, 0x16); + tmp_u1b &= 0x0F; + rtl_write_byte(rtlpriv, 0x16, tmp_u1b | 0x80); + udelay(10); + rtl_write_byte(rtlpriv, 0x16, tmp_u1b | 0x90); + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, "under 1.5V\n"); + } + rtl8723be_dm_init(hw); +exit: + local_irq_restore(flags); + rtlpriv->rtlhal.being_init_adapter = false; + return err; +} + +static enum version_8723e _rtl8723be_read_chip_version(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + enum version_8723e version = VERSION_UNKNOWN; + u8 count = 0; + u8 value8; + u32 value32; + + rtl_write_byte(rtlpriv, REG_RSV_CTRL, 0); + + value8 = rtl_read_byte(rtlpriv, REG_APS_FSMCO + 2); + rtl_write_byte(rtlpriv, REG_APS_FSMCO + 2, value8 | BIT(0)); + + value8 = rtl_read_byte(rtlpriv, REG_APS_FSMCO + 1); + rtl_write_byte(rtlpriv, REG_APS_FSMCO + 1, value8 | BIT(0)); + + value8 = rtl_read_byte(rtlpriv, REG_APS_FSMCO + 1); + while (((value8 & BIT(0))) && (count++ < 100)) { + udelay(10); + value8 = rtl_read_byte(rtlpriv, REG_APS_FSMCO + 1); + } + count = 0; + value8 = rtl_read_byte(rtlpriv, REG_ROM_VERSION); + while ((value8 == 0) && (count++ < 50)) { + value8 = rtl_read_byte(rtlpriv, REG_ROM_VERSION); + mdelay(1); + } + value32 = rtl_read_dword(rtlpriv, REG_SYS_CFG1); + if ((value32 & (CHIP_8723B)) != CHIP_8723B) + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "unkown chip version\n"); + else + version = (enum version_8723e) VERSION_TEST_CHIP_1T1R_8723B; + + rtlphy->rf_type = RF_1T1R; + + value8 = rtl_read_byte(rtlpriv, REG_ROM_VERSION); + if (value8 >= 0x02) + version |= BIT(3); + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "Chip RF Type: %s\n", (rtlphy->rf_type == RF_2T2R) ? + "RF_2T2R" : "RF_1T1R"); + + return version; +} + +static int _rtl8723be_set_media_status(struct ieee80211_hw *hw, + enum nl80211_iftype type) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 bt_msr = rtl_read_byte(rtlpriv, MSR) & 0xfc; + enum led_ctl_mode ledaction = LED_CTL_NO_LINK; + + rtl_write_dword(rtlpriv, REG_BCN_CTRL, 0); + RT_TRACE(rtlpriv, COMP_BEACON, DBG_LOUD, + "clear 0x550 when set HW_VAR_MEDIA_STATUS\n"); + + if (type == NL80211_IFTYPE_UNSPECIFIED || + type == NL80211_IFTYPE_STATION) { + _rtl8723be_stop_tx_beacon(hw); + _rtl8723be_enable_bcn_sub_func(hw); + } else if (type == NL80211_IFTYPE_ADHOC || type == NL80211_IFTYPE_AP) { + _rtl8723be_resume_tx_beacon(hw); + _rtl8723be_disable_bcn_sub_func(hw); + } else { + RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, + "Set HW_VAR_MEDIA_STATUS: " + "No such media status(%x).\n", type); + } + switch (type) { + case NL80211_IFTYPE_UNSPECIFIED: + bt_msr |= MSR_NOLINK; + ledaction = LED_CTL_LINK; + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, + "Set Network type to NO LINK!\n"); + break; + case NL80211_IFTYPE_ADHOC: + bt_msr |= MSR_ADHOC; + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, + "Set Network type to Ad Hoc!\n"); + break; + case NL80211_IFTYPE_STATION: + bt_msr |= MSR_INFRA; + ledaction = LED_CTL_LINK; + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, + "Set Network type to STA!\n"); + break; + case NL80211_IFTYPE_AP: + bt_msr |= MSR_AP; + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, + "Set Network type to AP!\n"); + break; + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "Network type %d not support!\n", type); + return 1; + } + rtl_write_byte(rtlpriv, (MSR), bt_msr); + rtlpriv->cfg->ops->led_control(hw, ledaction); + if ((bt_msr & 0x03) == MSR_AP) + rtl_write_byte(rtlpriv, REG_BCNTCFG + 1, 0x00); + else + rtl_write_byte(rtlpriv, REG_BCNTCFG + 1, 0x66); + return 0; +} + +void rtl8723be_set_check_bssid(struct ieee80211_hw *hw, bool check_bssid) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + u32 reg_rcr = rtlpci->receive_config; + + if (rtlpriv->psc.rfpwr_state != ERFON) + return; + + if (check_bssid) { + reg_rcr |= (RCR_CBSSID_DATA | RCR_CBSSID_BCN); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_RCR, + (u8 *)(®_rcr)); + _rtl8723be_set_bcn_ctrl_reg(hw, 0, BIT(4)); + } else if (!check_bssid) { + reg_rcr &= (~(RCR_CBSSID_DATA | RCR_CBSSID_BCN)); + _rtl8723be_set_bcn_ctrl_reg(hw, BIT(4), 0); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_RCR, + (u8 *)(®_rcr)); + } +} + +int rtl8723be_set_network_type(struct ieee80211_hw *hw, + enum nl80211_iftype type) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (_rtl8723be_set_media_status(hw, type)) + return -EOPNOTSUPP; + + if (rtlpriv->mac80211.link_state == MAC80211_LINKED) { + if (type != NL80211_IFTYPE_AP) + rtl8723be_set_check_bssid(hw, true); + } else { + rtl8723be_set_check_bssid(hw, false); + } + return 0; +} + +/* don't set REG_EDCA_BE_PARAM here + * because mac80211 will send pkt when scan + */ +void rtl8723be_set_qos(struct ieee80211_hw *hw, int aci) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + rtl8723_dm_init_edca_turbo(hw); + switch (aci) { + case AC1_BK: + rtl_write_dword(rtlpriv, REG_EDCA_BK_PARAM, 0xa44f); + break; + case AC0_BE: + break; + case AC2_VI: + rtl_write_dword(rtlpriv, REG_EDCA_VI_PARAM, 0x5e4322); + break; + case AC3_VO: + rtl_write_dword(rtlpriv, REG_EDCA_VO_PARAM, 0x2f3222); + break; + default: + RT_ASSERT(false, "invalid aci: %d !\n", aci); + break; + } +} + +void rtl8723be_enable_interrupt(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + + rtl_write_dword(rtlpriv, REG_HIMR, rtlpci->irq_mask[0] & 0xFFFFFFFF); + rtl_write_dword(rtlpriv, REG_HIMRE, rtlpci->irq_mask[1] & 0xFFFFFFFF); + rtlpci->irq_enabled = true; + /* there are some C2H CMDs have been sent + * before system interrupt is enabled, e.g., C2H, CPWM. + * So we need to clear all C2H events that FW has notified, + * otherwise FW won't schedule any commands anymore. + */ + rtl_write_byte(rtlpriv, REG_C2HEVT_CLEAR, 0); + /*enable system interrupt*/ + rtl_write_dword(rtlpriv, REG_HSIMR, rtlpci->sys_irq_mask & 0xFFFFFFFF); +} + +void rtl8723be_disable_interrupt(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + + rtl_write_dword(rtlpriv, REG_HIMR, IMR_DISABLED); + rtl_write_dword(rtlpriv, REG_HIMRE, IMR_DISABLED); + rtlpci->irq_enabled = false; + synchronize_irq(rtlpci->pdev->irq); +} + +static void _rtl8723be_poweroff_adapter(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 u1b_tmp; + + /* Combo (PCIe + USB) Card and PCIe-MF Card */ + /* 1. Run LPS WL RFOFF flow */ + rtlbe_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, + PWR_INTF_PCI_MSK, RTL8723_NIC_LPS_ENTER_FLOW); + + /* 2. 0x1F[7:0] = 0 */ + /* turn off RF */ + rtl_write_byte(rtlpriv, REG_RF_CTRL, 0x00); + if ((rtl_read_byte(rtlpriv, REG_MCUFWDL) & BIT(7)) && + rtlhal->fw_ready) + rtl8723be_firmware_selfreset(hw); + + /* Reset MCU. Suggested by Filen. */ + u1b_tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN + 1); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN + 1, (u1b_tmp & (~BIT(2)))); + + /* g. MCUFWDL 0x80[1:0]= 0 */ + /* reset MCU ready status */ + rtl_write_byte(rtlpriv, REG_MCUFWDL, 0x00); + + /* HW card disable configuration. */ + rtlbe_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, + PWR_INTF_PCI_MSK, RTL8723_NIC_DISABLE_FLOW); + + /* Reset MCU IO Wrapper */ + u1b_tmp = rtl_read_byte(rtlpriv, REG_RSV_CTRL + 1); + rtl_write_byte(rtlpriv, REG_RSV_CTRL + 1, (u1b_tmp & (~BIT(0)))); + u1b_tmp = rtl_read_byte(rtlpriv, REG_RSV_CTRL + 1); + rtl_write_byte(rtlpriv, REG_RSV_CTRL + 1, u1b_tmp | BIT(0)); + + /* 7. RSV_CTRL 0x1C[7:0] = 0x0E */ + /* lock ISO/CLK/Power control register */ + rtl_write_byte(rtlpriv, REG_RSV_CTRL, 0x0e); +} + +void rtl8723be_card_disable(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + enum nl80211_iftype opmode; + + mac->link_state = MAC80211_NOLINK; + opmode = NL80211_IFTYPE_UNSPECIFIED; + _rtl8723be_set_media_status(hw, opmode); + if (rtlpriv->rtlhal.driver_is_goingto_unload || + ppsc->rfoff_reason > RF_CHANGE_BY_PS) + rtlpriv->cfg->ops->led_control(hw, LED_CTL_POWER_OFF); + RT_SET_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_HALT_NIC); + _rtl8723be_poweroff_adapter(hw); + + /* after power off we should do iqk again */ + rtlpriv->phy.iqk_initialized = false; +} + +void rtl8723be_interrupt_recognized(struct ieee80211_hw *hw, + u32 *p_inta, u32 *p_intb) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + + *p_inta = rtl_read_dword(rtlpriv, ISR) & rtlpci->irq_mask[0]; + rtl_write_dword(rtlpriv, ISR, *p_inta); + + *p_intb = rtl_read_dword(rtlpriv, REG_HISRE) & + rtlpci->irq_mask[1]; + rtl_write_dword(rtlpriv, REG_HISRE, *p_intb); +} + +void rtl8723be_set_beacon_related_registers(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + u16 bcn_interval, atim_window; + + bcn_interval = mac->beacon_interval; + atim_window = 2; /*FIX MERGE */ + rtl8723be_disable_interrupt(hw); + rtl_write_word(rtlpriv, REG_ATIMWND, atim_window); + rtl_write_word(rtlpriv, REG_BCN_INTERVAL, bcn_interval); + rtl_write_word(rtlpriv, REG_BCNTCFG, 0x660f); + rtl_write_byte(rtlpriv, REG_RXTSF_OFFSET_CCK, 0x18); + rtl_write_byte(rtlpriv, REG_RXTSF_OFFSET_OFDM, 0x18); + rtl_write_byte(rtlpriv, 0x606, 0x30); + rtl8723be_enable_interrupt(hw); +} + +void rtl8723be_set_beacon_interval(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + u16 bcn_interval = mac->beacon_interval; + + RT_TRACE(rtlpriv, COMP_BEACON, DBG_DMESG, + "beacon_interval:%d\n", bcn_interval); + rtl8723be_disable_interrupt(hw); + rtl_write_word(rtlpriv, REG_BCN_INTERVAL, bcn_interval); + rtl8723be_enable_interrupt(hw); +} + +void rtl8723be_update_interrupt_mask(struct ieee80211_hw *hw, + u32 add_msr, u32 rm_msr) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + + RT_TRACE(rtlpriv, COMP_INTR, DBG_LOUD, + "add_msr:%x, rm_msr:%x\n", add_msr, rm_msr); + + if (add_msr) + rtlpci->irq_mask[0] |= add_msr; + if (rm_msr) + rtlpci->irq_mask[0] &= (~rm_msr); + rtl8723be_disable_interrupt(hw); + rtl8723be_enable_interrupt(hw); +} + +static u8 _rtl8723be_get_chnl_group(u8 chnl) +{ + u8 group; + + if (chnl < 3) + group = 0; + else if (chnl < 9) + group = 1; + else + group = 2; + return group; +} + +static void _rtl8723be_read_power_value_fromprom(struct ieee80211_hw *hw, + struct txpower_info_2g *pw2g, + struct txpower_info_5g *pw5g, + bool autoload_fail, u8 *hwinfo) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 path, addr = EEPROM_TX_PWR_INX, group, cnt = 0; + + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "hal_ReadPowerValueFromPROM8723BE(): " + "PROMContent[0x%x]= 0x%x\n", + (addr + 1), hwinfo[addr + 1]); + if (0xFF == hwinfo[addr + 1]) /*YJ, add, 120316*/ + autoload_fail = true; + + if (autoload_fail) { + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "auto load fail : Use Default value!\n"); + for (path = 0; path < MAX_RF_PATH; path++) { + /* 2.4G default value */ + for (group = 0; group < MAX_CHNL_GROUP_24G; group++) { + pw2g->index_cck_base[path][group] = 0x2D; + pw2g->index_bw40_base[path][group] = 0x2D; + } + for (cnt = 0; cnt < MAX_TX_COUNT; cnt++) { + if (cnt == 0) { + pw2g->bw20_diff[path][0] = 0x02; + pw2g->ofdm_diff[path][0] = 0x04; + } else { + pw2g->bw20_diff[path][cnt] = 0xFE; + pw2g->bw40_diff[path][cnt] = 0xFE; + pw2g->cck_diff[path][cnt] = 0xFE; + pw2g->ofdm_diff[path][cnt] = 0xFE; + } + } + } + return; + } + for (path = 0; path < MAX_RF_PATH; path++) { + /*2.4G default value*/ + for (group = 0; group < MAX_CHNL_GROUP_24G; group++) { + pw2g->index_cck_base[path][group] = hwinfo[addr++]; + if (pw2g->index_cck_base[path][group] == 0xFF) + pw2g->index_cck_base[path][group] = 0x2D; + } + for (group = 0; group < MAX_CHNL_GROUP_24G - 1; group++) { + pw2g->index_bw40_base[path][group] = hwinfo[addr++]; + if (pw2g->index_bw40_base[path][group] == 0xFF) + pw2g->index_bw40_base[path][group] = 0x2D; + } + for (cnt = 0; cnt < MAX_TX_COUNT; cnt++) { + if (cnt == 0) { + pw2g->bw40_diff[path][cnt] = 0; + if (hwinfo[addr] == 0xFF) { + pw2g->bw20_diff[path][cnt] = 0x02; + } else { + pw2g->bw20_diff[path][cnt] = + (hwinfo[addr] & 0xf0) >> 4; + /*bit sign number to 8 bit sign number*/ + if (pw2g->bw20_diff[path][cnt] & BIT(3)) + pw2g->bw20_diff[path][cnt] |= 0xF0; + } + if (hwinfo[addr] == 0xFF) { + pw2g->ofdm_diff[path][cnt] = 0x04; + } else { + pw2g->ofdm_diff[path][cnt] = + (hwinfo[addr] & 0x0f); + /*bit sign number to 8 bit sign number*/ + if (pw2g->ofdm_diff[path][cnt] & BIT(3)) + pw2g->ofdm_diff[path][cnt] |= + 0xF0; + } + pw2g->cck_diff[path][cnt] = 0; + addr++; + } else { + if (hwinfo[addr] == 0xFF) { + pw2g->bw40_diff[path][cnt] = 0xFE; + } else { + pw2g->bw40_diff[path][cnt] = + (hwinfo[addr] & 0xf0) >> 4; + if (pw2g->bw40_diff[path][cnt] & BIT(3)) + pw2g->bw40_diff[path][cnt] |= + 0xF0; + } + if (hwinfo[addr] == 0xFF) { + pw2g->bw20_diff[path][cnt] = 0xFE; + } else { + pw2g->bw20_diff[path][cnt] = + (hwinfo[addr] & 0x0f); + if (pw2g->bw20_diff[path][cnt] & BIT(3)) + pw2g->bw20_diff[path][cnt] |= + 0xF0; + } + addr++; + + if (hwinfo[addr] == 0xFF) { + pw2g->ofdm_diff[path][cnt] = 0xFE; + } else { + pw2g->ofdm_diff[path][cnt] = + (hwinfo[addr] & 0xf0) >> 4; + if (pw2g->ofdm_diff[path][cnt] & BIT(3)) + pw2g->ofdm_diff[path][cnt] |= + 0xF0; + } + if (hwinfo[addr] == 0xFF) { + pw2g->cck_diff[path][cnt] = 0xFE; + } else { + pw2g->cck_diff[path][cnt] = + (hwinfo[addr] & 0x0f); + if (pw2g->cck_diff[path][cnt] & BIT(3)) + pw2g->cck_diff[path][cnt] |= + 0xF0; + } + addr++; + } + } + /*5G default value*/ + for (group = 0; group < MAX_CHNL_GROUP_5G; group++) { + pw5g->index_bw40_base[path][group] = hwinfo[addr++]; + if (pw5g->index_bw40_base[path][group] == 0xFF) + pw5g->index_bw40_base[path][group] = 0xFE; + } + for (cnt = 0; cnt < MAX_TX_COUNT; cnt++) { + if (cnt == 0) { + pw5g->bw40_diff[path][cnt] = 0; + + if (hwinfo[addr] == 0xFF) { + pw5g->bw20_diff[path][cnt] = 0; + } else { + pw5g->bw20_diff[path][0] = + (hwinfo[addr] & 0xf0) >> 4; + if (pw5g->bw20_diff[path][cnt] & BIT(3)) + pw5g->bw20_diff[path][cnt] |= + 0xF0; + } + if (hwinfo[addr] == 0xFF) { + pw5g->ofdm_diff[path][cnt] = 0x04; + } else { + pw5g->ofdm_diff[path][0] = + (hwinfo[addr] & 0x0f); + if (pw5g->ofdm_diff[path][cnt] & BIT(3)) + pw5g->ofdm_diff[path][cnt] |= + 0xF0; + } + addr++; + } else { + if (hwinfo[addr] == 0xFF) { + pw5g->bw40_diff[path][cnt] = 0xFE; + } else { + pw5g->bw40_diff[path][cnt] = + (hwinfo[addr] & 0xf0) >> 4; + if (pw5g->bw40_diff[path][cnt] & BIT(3)) + pw5g->bw40_diff[path][cnt] |= 0xF0; + } + if (hwinfo[addr] == 0xFF) { + pw5g->bw20_diff[path][cnt] = 0xFE; + } else { + pw5g->bw20_diff[path][cnt] = + (hwinfo[addr] & 0x0f); + if (pw5g->bw20_diff[path][cnt] & BIT(3)) + pw5g->bw20_diff[path][cnt] |= 0xF0; + } + addr++; + } + } + if (hwinfo[addr] == 0xFF) { + pw5g->ofdm_diff[path][1] = 0xFE; + pw5g->ofdm_diff[path][2] = 0xFE; + } else { + pw5g->ofdm_diff[path][1] = (hwinfo[addr] & 0xf0) >> 4; + pw5g->ofdm_diff[path][2] = (hwinfo[addr] & 0x0f); + } + addr++; + + if (hwinfo[addr] == 0xFF) + pw5g->ofdm_diff[path][3] = 0xFE; + else + pw5g->ofdm_diff[path][3] = (hwinfo[addr] & 0x0f); + addr++; + + for (cnt = 1; cnt < MAX_TX_COUNT; cnt++) { + if (pw5g->ofdm_diff[path][cnt] == 0xFF) + pw5g->ofdm_diff[path][cnt] = 0xFE; + else if (pw5g->ofdm_diff[path][cnt] & BIT(3)) + pw5g->ofdm_diff[path][cnt] |= 0xF0; + } + } +} + +static void _rtl8723be_read_txpower_info_from_hwpg(struct ieee80211_hw *hw, + bool autoload_fail, + u8 *hwinfo) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct txpower_info_2g pw2g; + struct txpower_info_5g pw5g; + u8 rf_path, index; + u8 i; + + _rtl8723be_read_power_value_fromprom(hw, &pw2g, &pw5g, autoload_fail, + hwinfo); + + for (rf_path = 0; rf_path < 2; rf_path++) { + for (i = 0; i < 14; i++) { + index = _rtl8723be_get_chnl_group(i+1); + + rtlefuse->txpwrlevel_cck[rf_path][i] = + pw2g.index_cck_base[rf_path][index]; + rtlefuse->txpwrlevel_ht40_1s[rf_path][i] = + pw2g.index_bw40_base[rf_path][index]; + } + for (i = 0; i < MAX_TX_COUNT; i++) { + rtlefuse->txpwr_ht20diff[rf_path][i] = + pw2g.bw20_diff[rf_path][i]; + rtlefuse->txpwr_ht40diff[rf_path][i] = + pw2g.bw40_diff[rf_path][i]; + rtlefuse->txpwr_legacyhtdiff[rf_path][i] = + pw2g.ofdm_diff[rf_path][i]; + } + for (i = 0; i < 14; i++) { + RTPRINT(rtlpriv, FINIT, INIT_EEPROM, + "RF(%d)-Ch(%d) [CCK / HT40_1S ] = " + "[0x%x / 0x%x ]\n", rf_path, i, + rtlefuse->txpwrlevel_cck[rf_path][i], + rtlefuse->txpwrlevel_ht40_1s[rf_path][i]); + } + } + if (!autoload_fail) + rtlefuse->eeprom_thermalmeter = + hwinfo[EEPROM_THERMAL_METER_88E]; + else + rtlefuse->eeprom_thermalmeter = EEPROM_DEFAULT_THERMALMETER; + + if (rtlefuse->eeprom_thermalmeter == 0xff || autoload_fail) { + rtlefuse->apk_thermalmeterignore = true; + rtlefuse->eeprom_thermalmeter = EEPROM_DEFAULT_THERMALMETER; + } + rtlefuse->thermalmeter[0] = rtlefuse->eeprom_thermalmeter; + RTPRINT(rtlpriv, FINIT, INIT_EEPROM, + "thermalmeter = 0x%x\n", rtlefuse->eeprom_thermalmeter); + + if (!autoload_fail) { + rtlefuse->eeprom_regulatory = + hwinfo[EEPROM_RF_BOARD_OPTION_88E] & 0x07;/*bit0~2*/ + if (hwinfo[EEPROM_RF_BOARD_OPTION_88E] == 0xFF) + rtlefuse->eeprom_regulatory = 0; + } else { + rtlefuse->eeprom_regulatory = 0; + } + RTPRINT(rtlpriv, FINIT, INIT_EEPROM, + "eeprom_regulatory = 0x%x\n", rtlefuse->eeprom_regulatory); +} + +static void _rtl8723be_read_adapter_info(struct ieee80211_hw *hw, + bool pseudo_test) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u16 i, usvalue; + u8 hwinfo[HWSET_MAX_SIZE]; + u16 eeprom_id; + bool is_toshiba_smid1 = false; + bool is_toshiba_smid2 = false; + bool is_samsung_smid = false; + bool is_lenovo_smid = false; + u16 toshiba_smid1[] = { + 0x6151, 0x6152, 0x6154, 0x6155, 0x6177, 0x6178, 0x6179, 0x6180, + 0x7151, 0x7152, 0x7154, 0x7155, 0x7177, 0x7178, 0x7179, 0x7180, + 0x8151, 0x8152, 0x8154, 0x8155, 0x8181, 0x8182, 0x8184, 0x8185, + 0x9151, 0x9152, 0x9154, 0x9155, 0x9181, 0x9182, 0x9184, 0x9185 + }; + u16 toshiba_smid2[] = { + 0x6181, 0x6184, 0x6185, 0x7181, 0x7182, 0x7184, 0x7185, 0x8181, + 0x8182, 0x8184, 0x8185, 0x9181, 0x9182, 0x9184, 0x9185 + }; + u16 samsung_smid[] = { + 0x6191, 0x6192, 0x6193, 0x7191, 0x7192, 0x7193, 0x8191, 0x8192, + 0x8193, 0x9191, 0x9192, 0x9193 + }; + u16 lenovo_smid[] = { + 0x8195, 0x9195, 0x7194, 0x8200, 0x8201, 0x8202, 0x9199, 0x9200 + }; + + if (pseudo_test) { + /* needs to be added */ + return; + } + if (rtlefuse->epromtype == EEPROM_BOOT_EFUSE) { + rtl_efuse_shadow_map_update(hw); + + memcpy(hwinfo, &rtlefuse->efuse_map[EFUSE_INIT_MAP][0], + HWSET_MAX_SIZE); + } else if (rtlefuse->epromtype == EEPROM_93C46) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "RTL819X Not boot from eeprom, check it !!"); + } + RT_PRINT_DATA(rtlpriv, COMP_INIT, DBG_DMESG, ("MAP\n"), + hwinfo, HWSET_MAX_SIZE); + + eeprom_id = *((u16 *)&hwinfo[0]); + if (eeprom_id != RTL8723BE_EEPROM_ID) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, + "EEPROM ID(%#x) is invalid!!\n", eeprom_id); + rtlefuse->autoload_failflag = true; + } else { + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "Autoload OK\n"); + rtlefuse->autoload_failflag = false; + } + if (rtlefuse->autoload_failflag) + return; + + rtlefuse->eeprom_vid = *(u16 *)&hwinfo[EEPROM_VID]; + rtlefuse->eeprom_did = *(u16 *)&hwinfo[EEPROM_DID]; + rtlefuse->eeprom_svid = *(u16 *)&hwinfo[EEPROM_SVID]; + rtlefuse->eeprom_smid = *(u16 *)&hwinfo[EEPROM_SMID]; + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "EEPROMId = 0x%4x\n", eeprom_id); + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "EEPROM VID = 0x%4x\n", rtlefuse->eeprom_vid); + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "EEPROM DID = 0x%4x\n", rtlefuse->eeprom_did); + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "EEPROM SVID = 0x%4x\n", rtlefuse->eeprom_svid); + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "EEPROM SMID = 0x%4x\n", rtlefuse->eeprom_smid); + + for (i = 0; i < 6; i += 2) { + usvalue = *(u16 *)&hwinfo[EEPROM_MAC_ADDR + i]; + *((u16 *)(&rtlefuse->dev_addr[i])) = usvalue; + } + RT_TRACE(rtlpriv, COMP_INIT, DBG_DMESG, "dev_addr: %pM\n", + rtlefuse->dev_addr); + + /*parse xtal*/ + rtlefuse->crystalcap = hwinfo[EEPROM_XTAL_8723BE]; + if (rtlefuse->crystalcap == 0xFF) + rtlefuse->crystalcap = 0x20; + + _rtl8723be_read_txpower_info_from_hwpg(hw, rtlefuse->autoload_failflag, + hwinfo); + + rtl8723be_read_bt_coexist_info_from_hwpg(hw, + rtlefuse->autoload_failflag, + hwinfo); + + rtlefuse->eeprom_channelplan = *(u8 *)&hwinfo[EEPROM_CHANNELPLAN]; + rtlefuse->eeprom_version = *(u16 *)&hwinfo[EEPROM_VERSION]; + rtlefuse->txpwr_fromeprom = true; + rtlefuse->eeprom_oemid = *(u8 *)&hwinfo[EEPROM_CUSTOMER_ID]; + + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "EEPROM Customer ID: 0x%2x\n", rtlefuse->eeprom_oemid); + + /* set channel plan to world wide 13 */ + rtlefuse->channel_plan = COUNTRY_CODE_WORLD_WIDE_13; + + if (rtlhal->oem_id == RT_CID_DEFAULT) { + /* Does this one have a Toshiba SMID from group 1? */ + for (i = 0; i < sizeof(toshiba_smid1) / sizeof(u16); i++) { + if (rtlefuse->eeprom_smid == toshiba_smid1[i]) { + is_toshiba_smid1 = true; + break; + } + } + /* Does this one have a Toshiba SMID from group 2? */ + for (i = 0; i < sizeof(toshiba_smid2) / sizeof(u16); i++) { + if (rtlefuse->eeprom_smid == toshiba_smid2[i]) { + is_toshiba_smid2 = true; + break; + } + } + /* Does this one have a Samsung SMID? */ + for (i = 0; i < sizeof(samsung_smid) / sizeof(u16); i++) { + if (rtlefuse->eeprom_smid == samsung_smid[i]) { + is_samsung_smid = true; + break; + } + } + /* Does this one have a Lenovo SMID? */ + for (i = 0; i < sizeof(lenovo_smid) / sizeof(u16); i++) { + if (rtlefuse->eeprom_smid == lenovo_smid[i]) { + is_lenovo_smid = true; + break; + } + } + switch (rtlefuse->eeprom_oemid) { + case EEPROM_CID_DEFAULT: + if (rtlefuse->eeprom_did == 0x8176) { + if (rtlefuse->eeprom_svid == 0x10EC && + is_toshiba_smid1) { + rtlhal->oem_id = RT_CID_TOSHIBA; + } else if (rtlefuse->eeprom_svid == 0x1025) { + rtlhal->oem_id = RT_CID_819X_ACER; + } else if (rtlefuse->eeprom_svid == 0x10EC && + is_samsung_smid) { + rtlhal->oem_id = RT_CID_819X_SAMSUNG; + } else if (rtlefuse->eeprom_svid == 0x10EC && + is_lenovo_smid) { + rtlhal->oem_id = RT_CID_819X_LENOVO; + } else if ((rtlefuse->eeprom_svid == 0x10EC && + rtlefuse->eeprom_smid == 0x8197) || + (rtlefuse->eeprom_svid == 0x10EC && + rtlefuse->eeprom_smid == 0x9196)) { + rtlhal->oem_id = RT_CID_819X_CLEVO; + } else if ((rtlefuse->eeprom_svid == 0x1028 && + rtlefuse->eeprom_smid == 0x8194) || + (rtlefuse->eeprom_svid == 0x1028 && + rtlefuse->eeprom_smid == 0x8198) || + (rtlefuse->eeprom_svid == 0x1028 && + rtlefuse->eeprom_smid == 0x9197) || + (rtlefuse->eeprom_svid == 0x1028 && + rtlefuse->eeprom_smid == 0x9198)) { + rtlhal->oem_id = RT_CID_819X_DELL; + } else if ((rtlefuse->eeprom_svid == 0x103C && + rtlefuse->eeprom_smid == 0x1629)) { + rtlhal->oem_id = RT_CID_819X_HP; + } else if ((rtlefuse->eeprom_svid == 0x1A32 && + rtlefuse->eeprom_smid == 0x2315)) { + rtlhal->oem_id = RT_CID_819X_QMI; + } else if ((rtlefuse->eeprom_svid == 0x10EC && + rtlefuse->eeprom_smid == 0x8203)) { + rtlhal->oem_id = RT_CID_819X_PRONETS; + } else if ((rtlefuse->eeprom_svid == 0x1043 && + rtlefuse->eeprom_smid == 0x84B5)) { + rtlhal->oem_id = RT_CID_819X_EDIMAX_ASUS; + } else { + rtlhal->oem_id = RT_CID_DEFAULT; + } + } else if (rtlefuse->eeprom_did == 0x8178) { + if (rtlefuse->eeprom_svid == 0x10EC && + is_toshiba_smid2) + rtlhal->oem_id = RT_CID_TOSHIBA; + else if (rtlefuse->eeprom_svid == 0x1025) + rtlhal->oem_id = RT_CID_819X_ACER; + else if ((rtlefuse->eeprom_svid == 0x10EC && + rtlefuse->eeprom_smid == 0x8186)) + rtlhal->oem_id = RT_CID_819X_PRONETS; + else if ((rtlefuse->eeprom_svid == 0x1043 && + rtlefuse->eeprom_smid == 0x84B6)) + rtlhal->oem_id = + RT_CID_819X_EDIMAX_ASUS; + else + rtlhal->oem_id = RT_CID_DEFAULT; + } else { + rtlhal->oem_id = RT_CID_DEFAULT; + } + break; + case EEPROM_CID_TOSHIBA: + rtlhal->oem_id = RT_CID_TOSHIBA; + break; + case EEPROM_CID_CCX: + rtlhal->oem_id = RT_CID_CCX; + break; + case EEPROM_CID_QMI: + rtlhal->oem_id = RT_CID_819X_QMI; + break; + case EEPROM_CID_WHQL: + break; + default: + rtlhal->oem_id = RT_CID_DEFAULT; + break; + } + } +} + +static void _rtl8723be_hal_customized_behavior(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + + pcipriv->ledctl.led_opendrain = true; + switch (rtlhal->oem_id) { + case RT_CID_819X_HP: + pcipriv->ledctl.led_opendrain = true; + break; + case RT_CID_819X_LENOVO: + case RT_CID_DEFAULT: + case RT_CID_TOSHIBA: + case RT_CID_CCX: + case RT_CID_819X_ACER: + case RT_CID_WHQL: + default: + break; + } + RT_TRACE(rtlpriv, COMP_INIT, DBG_DMESG, + "RT Customized ID: 0x%02X\n", rtlhal->oem_id); +} + +void rtl8723be_read_eeprom_info(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 tmp_u1b; + + rtlhal->version = _rtl8723be_read_chip_version(hw); + if (get_rf_type(rtlphy) == RF_1T1R) + rtlpriv->dm.rfpath_rxenable[0] = true; + else + rtlpriv->dm.rfpath_rxenable[0] = + rtlpriv->dm.rfpath_rxenable[1] = true; + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "VersionID = 0x%4x\n", + rtlhal->version); + tmp_u1b = rtl_read_byte(rtlpriv, REG_9346CR); + if (tmp_u1b & BIT(4)) { + RT_TRACE(rtlpriv, COMP_INIT, DBG_DMESG, "Boot from EEPROM\n"); + rtlefuse->epromtype = EEPROM_93C46; + } else { + RT_TRACE(rtlpriv, COMP_INIT, DBG_DMESG, "Boot from EFUSE\n"); + rtlefuse->epromtype = EEPROM_BOOT_EFUSE; + } + if (tmp_u1b & BIT(5)) { + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "Autoload OK\n"); + rtlefuse->autoload_failflag = false; + _rtl8723be_read_adapter_info(hw, false); + } else { + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "Autoload ERR!!\n"); + } + _rtl8723be_hal_customized_behavior(hw); +} + +static void rtl8723be_update_hal_rate_table(struct ieee80211_hw *hw, + struct ieee80211_sta *sta) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u32 ratr_value; + u8 ratr_index = 0; + u8 nmode = mac->ht_enable; + u8 mimo_ps = IEEE80211_SMPS_OFF; + u16 shortgi_rate; + u32 tmp_ratr_value; + u8 curtxbw_40mhz = mac->bw_40; + u8 curshortgi_40mhz = (sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_40) ? + 1 : 0; + u8 curshortgi_20mhz = (sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_20) ? + 1 : 0; + enum wireless_mode wirelessmode = mac->mode; + + if (rtlhal->current_bandtype == BAND_ON_5G) + ratr_value = sta->supp_rates[1] << 4; + else + ratr_value = sta->supp_rates[0]; + if (mac->opmode == NL80211_IFTYPE_ADHOC) + ratr_value = 0xfff; + ratr_value |= (sta->ht_cap.mcs.rx_mask[1] << 20 | + sta->ht_cap.mcs.rx_mask[0] << 12); + switch (wirelessmode) { + case WIRELESS_MODE_B: + if (ratr_value & 0x0000000c) + ratr_value &= 0x0000000d; + else + ratr_value &= 0x0000000f; + break; + case WIRELESS_MODE_G: + ratr_value &= 0x00000FF5; + break; + case WIRELESS_MODE_N_24G: + case WIRELESS_MODE_N_5G: + nmode = 1; + if (mimo_ps == IEEE80211_SMPS_STATIC) { + ratr_value &= 0x0007F005; + } else { + u32 ratr_mask; + + if (get_rf_type(rtlphy) == RF_1T2R || + get_rf_type(rtlphy) == RF_1T1R) + ratr_mask = 0x000ff005; + else + ratr_mask = 0x0f0ff005; + ratr_value &= ratr_mask; + } + break; + default: + if (rtlphy->rf_type == RF_1T2R) + ratr_value &= 0x000ff0ff; + else + ratr_value &= 0x0f0ff0ff; + break; + } + if ((rtlpriv->btcoexist.bt_coexistence) && + (rtlpriv->btcoexist.bt_coexist_type == BT_CSR_BC4) && + (rtlpriv->btcoexist.bt_cur_state) && + (rtlpriv->btcoexist.bt_ant_isolation) && + ((rtlpriv->btcoexist.bt_service == BT_SCO) || + (rtlpriv->btcoexist.bt_service == BT_BUSY))) + ratr_value &= 0x0fffcfc0; + else + ratr_value &= 0x0FFFFFFF; + + if (nmode && ((curtxbw_40mhz && curshortgi_40mhz) || + (!curtxbw_40mhz && curshortgi_20mhz))) { + ratr_value |= 0x10000000; + tmp_ratr_value = (ratr_value >> 12); + + for (shortgi_rate = 15; shortgi_rate > 0; shortgi_rate--) { + if ((1 << shortgi_rate) & tmp_ratr_value) + break; + } + shortgi_rate = (shortgi_rate << 12) | (shortgi_rate << 8) | + (shortgi_rate << 4) | (shortgi_rate); + } + rtl_write_dword(rtlpriv, REG_ARFR0 + ratr_index * 4, ratr_value); + + RT_TRACE(rtlpriv, COMP_RATR, DBG_DMESG, + "%x\n", rtl_read_dword(rtlpriv, REG_ARFR0)); +} + +static u8 _rtl8723be_mrate_idx_to_arfr_id(struct ieee80211_hw *hw, + u8 rate_index) +{ + u8 ret = 0; + + switch (rate_index) { + case RATR_INX_WIRELESS_NGB: + ret = 1; + break; + case RATR_INX_WIRELESS_N: + case RATR_INX_WIRELESS_NG: + ret = 5; + break; + case RATR_INX_WIRELESS_NB: + ret = 3; + break; + case RATR_INX_WIRELESS_GB: + ret = 6; + break; + case RATR_INX_WIRELESS_G: + ret = 7; + break; + case RATR_INX_WIRELESS_B: + ret = 8; + break; + default: + ret = 0; + break; + } + return ret; +} + +static void rtl8723be_update_hal_rate_mask(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, + u8 rssi_level) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_sta_info *sta_entry = NULL; + u32 ratr_bitmap; + u8 ratr_index; + u8 curtxbw_40mhz = (sta->ht_cap.cap & + IEEE80211_HT_CAP_SUP_WIDTH_20_40) ? 1 : 0; + u8 curshortgi_40mhz = (sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_40) ? + 1 : 0; + u8 curshortgi_20mhz = (sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_20) ? + 1 : 0; + enum wireless_mode wirelessmode = 0; + bool shortgi = false; + u8 rate_mask[7]; + u8 macid = 0; + u8 mimo_ps = IEEE80211_SMPS_OFF; + + sta_entry = (struct rtl_sta_info *)sta->drv_priv; + wirelessmode = sta_entry->wireless_mode; + if (mac->opmode == NL80211_IFTYPE_STATION || + mac->opmode == NL80211_IFTYPE_MESH_POINT) + curtxbw_40mhz = mac->bw_40; + else if (mac->opmode == NL80211_IFTYPE_AP || + mac->opmode == NL80211_IFTYPE_ADHOC) + macid = sta->aid + 1; + + ratr_bitmap = sta->supp_rates[0]; + + if (mac->opmode == NL80211_IFTYPE_ADHOC) + ratr_bitmap = 0xfff; + + ratr_bitmap |= (sta->ht_cap.mcs.rx_mask[1] << 20 | + sta->ht_cap.mcs.rx_mask[0] << 12); + switch (wirelessmode) { + case WIRELESS_MODE_B: + ratr_index = RATR_INX_WIRELESS_B; + if (ratr_bitmap & 0x0000000c) + ratr_bitmap &= 0x0000000d; + else + ratr_bitmap &= 0x0000000f; + break; + case WIRELESS_MODE_G: + ratr_index = RATR_INX_WIRELESS_GB; + + if (rssi_level == 1) + ratr_bitmap &= 0x00000f00; + else if (rssi_level == 2) + ratr_bitmap &= 0x00000ff0; + else + ratr_bitmap &= 0x00000ff5; + break; + case WIRELESS_MODE_A: + ratr_index = RATR_INX_WIRELESS_A; + ratr_bitmap &= 0x00000ff0; + break; + case WIRELESS_MODE_N_24G: + case WIRELESS_MODE_N_5G: + ratr_index = RATR_INX_WIRELESS_NGB; + + if (mimo_ps == IEEE80211_SMPS_STATIC || + mimo_ps == IEEE80211_SMPS_DYNAMIC) { + if (rssi_level == 1) + ratr_bitmap &= 0x00070000; + else if (rssi_level == 2) + ratr_bitmap &= 0x0007f000; + else + ratr_bitmap &= 0x0007f005; + } else { + if (rtlphy->rf_type == RF_1T1R) { + if (curtxbw_40mhz) { + if (rssi_level == 1) + ratr_bitmap &= 0x000f0000; + else if (rssi_level == 2) + ratr_bitmap &= 0x000ff000; + else + ratr_bitmap &= 0x000ff015; + } else { + if (rssi_level == 1) + ratr_bitmap &= 0x000f0000; + else if (rssi_level == 2) + ratr_bitmap &= 0x000ff000; + else + ratr_bitmap &= 0x000ff005; + } + } else { + if (curtxbw_40mhz) { + if (rssi_level == 1) + ratr_bitmap &= 0x0f8f0000; + else if (rssi_level == 2) + ratr_bitmap &= 0x0f8ff000; + else + ratr_bitmap &= 0x0f8ff015; + } else { + if (rssi_level == 1) + ratr_bitmap &= 0x0f8f0000; + else if (rssi_level == 2) + ratr_bitmap &= 0x0f8ff000; + else + ratr_bitmap &= 0x0f8ff005; + } + } + } + if ((curtxbw_40mhz && curshortgi_40mhz) || + (!curtxbw_40mhz && curshortgi_20mhz)) { + if (macid == 0) + shortgi = true; + else if (macid == 1) + shortgi = false; + } + break; + default: + ratr_index = RATR_INX_WIRELESS_NGB; + + if (rtlphy->rf_type == RF_1T2R) + ratr_bitmap &= 0x000ff0ff; + else + ratr_bitmap &= 0x0f0ff0ff; + break; + } + sta_entry->ratr_index = ratr_index; + + RT_TRACE(rtlpriv, COMP_RATR, DBG_DMESG, + "ratr_bitmap :%x\n", ratr_bitmap); + *(u32 *)&rate_mask = EF4BYTE((ratr_bitmap & 0x0fffffff) | + (ratr_index << 28)); + rate_mask[0] = macid; + rate_mask[1] = _rtl8723be_mrate_idx_to_arfr_id(hw, ratr_index) | + (shortgi ? 0x80 : 0x00); + rate_mask[2] = curtxbw_40mhz; + /* if (prox_priv->proxim_modeinfo->power_output > 0) + * rate_mask[2] |= BIT(6); + */ + + rate_mask[3] = (u8)(ratr_bitmap & 0x000000ff); + rate_mask[4] = (u8)((ratr_bitmap & 0x0000ff00) >> 8); + rate_mask[5] = (u8)((ratr_bitmap & 0x00ff0000) >> 16); + rate_mask[6] = (u8)((ratr_bitmap & 0xff000000) >> 24); + + RT_TRACE(rtlpriv, COMP_RATR, DBG_DMESG, + "Rate_index:%x, ratr_val:%x, %x:%x:%x:%x:%x:%x:%x\n", + ratr_index, ratr_bitmap, + rate_mask[0], rate_mask[1], + rate_mask[2], rate_mask[3], + rate_mask[4], rate_mask[5], + rate_mask[6]); + rtl8723be_fill_h2c_cmd(hw, H2C_8723BE_RA_MASK, 7, rate_mask); + _rtl8723be_set_bcn_ctrl_reg(hw, BIT(3), 0); +} + +void rtl8723be_update_hal_rate_tbl(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, + u8 rssi_level) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + if (rtlpriv->dm.useramask) + rtl8723be_update_hal_rate_mask(hw, sta, rssi_level); + else + rtl8723be_update_hal_rate_table(hw, sta); +} + +void rtl8723be_update_channel_access_setting(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + u16 sifs_timer; + + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_SLOT_TIME, + (u8 *)&mac->slot_time); + if (!mac->ht_enable) + sifs_timer = 0x0a0a; + else + sifs_timer = 0x0e0e; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_SIFS, (u8 *)&sifs_timer); +} + +bool rtl8723be_gpio_radio_on_off_checking(struct ieee80211_hw *hw, u8 *valid) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + enum rf_pwrstate e_rfpowerstate_toset, cur_rfstate; + u8 u1tmp; + bool actuallyset = false; + + if (rtlpriv->rtlhal.being_init_adapter) + return false; + + if (ppsc->swrf_processing) + return false; + + spin_lock(&rtlpriv->locks.rf_ps_lock); + if (ppsc->rfchange_inprogress) { + spin_unlock(&rtlpriv->locks.rf_ps_lock); + return false; + } else { + ppsc->rfchange_inprogress = true; + spin_unlock(&rtlpriv->locks.rf_ps_lock); + } + cur_rfstate = ppsc->rfpwr_state; + + rtl_write_byte(rtlpriv, REG_GPIO_IO_SEL_2, + rtl_read_byte(rtlpriv, REG_GPIO_IO_SEL_2) & ~(BIT(1))); + + u1tmp = rtl_read_byte(rtlpriv, REG_GPIO_PIN_CTRL_2); + + if (rtlphy->polarity_ctl) + e_rfpowerstate_toset = (u1tmp & BIT(1)) ? ERFOFF : ERFON; + else + e_rfpowerstate_toset = (u1tmp & BIT(1)) ? ERFON : ERFOFF; + + if (ppsc->hwradiooff && + (e_rfpowerstate_toset == ERFON)) { + RT_TRACE(rtlpriv, COMP_RF, DBG_DMESG, + "GPIOChangeRF - HW Radio ON, RF ON\n"); + + e_rfpowerstate_toset = ERFON; + ppsc->hwradiooff = false; + actuallyset = true; + } else if (!ppsc->hwradiooff && + (e_rfpowerstate_toset == ERFOFF)) { + RT_TRACE(rtlpriv, COMP_RF, DBG_DMESG, + "GPIOChangeRF - HW Radio OFF, RF OFF\n"); + + e_rfpowerstate_toset = ERFOFF; + ppsc->hwradiooff = true; + actuallyset = true; + } + if (actuallyset) { + spin_lock(&rtlpriv->locks.rf_ps_lock); + ppsc->rfchange_inprogress = false; + spin_unlock(&rtlpriv->locks.rf_ps_lock); + } else { + if (ppsc->reg_rfps_level & RT_RF_OFF_LEVL_HALT_NIC) + RT_SET_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_HALT_NIC); + + spin_lock(&rtlpriv->locks.rf_ps_lock); + ppsc->rfchange_inprogress = false; + spin_unlock(&rtlpriv->locks.rf_ps_lock); + } + *valid = 1; + return !ppsc->hwradiooff; +} + +void rtl8723be_set_key(struct ieee80211_hw *hw, u32 key_index, + u8 *p_macaddr, bool is_group, u8 enc_algo, + bool is_wepkey, bool clear_all) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + u8 *macaddr = p_macaddr; + u32 entry_id = 0; + bool is_pairwise = false; + + static u8 cam_const_addr[4][6] = { + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x01}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x02}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x03} + }; + static u8 cam_const_broad[] = { + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff + }; + + if (clear_all) { + u8 idx = 0; + u8 cam_offset = 0; + u8 clear_number = 5; + + RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG, "clear_all\n"); + + for (idx = 0; idx < clear_number; idx++) { + rtl_cam_mark_invalid(hw, cam_offset + idx); + rtl_cam_empty_entry(hw, cam_offset + idx); + + if (idx < 5) { + memset(rtlpriv->sec.key_buf[idx], 0, + MAX_KEY_LEN); + rtlpriv->sec.key_len[idx] = 0; + } + } + } else { + switch (enc_algo) { + case WEP40_ENCRYPTION: + enc_algo = CAM_WEP40; + break; + case WEP104_ENCRYPTION: + enc_algo = CAM_WEP104; + break; + case TKIP_ENCRYPTION: + enc_algo = CAM_TKIP; + break; + case AESCCMP_ENCRYPTION: + enc_algo = CAM_AES; + break; + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "switch case not process\n"); + enc_algo = CAM_TKIP; + break; + } + + if (is_wepkey || rtlpriv->sec.use_defaultkey) { + macaddr = cam_const_addr[key_index]; + entry_id = key_index; + } else { + if (is_group) { + macaddr = cam_const_broad; + entry_id = key_index; + } else { + if (mac->opmode == NL80211_IFTYPE_AP) { + entry_id = rtl_cam_get_free_entry(hw, + p_macaddr); + if (entry_id >= TOTAL_CAM_ENTRY) { + RT_TRACE(rtlpriv, COMP_SEC, + DBG_EMERG, + "Can not find free" + " hw security cam " + "entry\n"); + return; + } + } else { + entry_id = CAM_PAIRWISE_KEY_POSITION; + } + key_index = PAIRWISE_KEYIDX; + is_pairwise = true; + } + } + if (rtlpriv->sec.key_len[key_index] == 0) { + RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG, + "delete one entry, entry_id is %d\n", + entry_id); + if (mac->opmode == NL80211_IFTYPE_AP) + rtl_cam_del_entry(hw, p_macaddr); + rtl_cam_delete_one_entry(hw, p_macaddr, entry_id); + } else { + RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG, + "add one entry\n"); + if (is_pairwise) { + RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG, + "set Pairwise key\n"); + + rtl_cam_add_one_entry(hw, macaddr, key_index, + entry_id, enc_algo, + CAM_CONFIG_NO_USEDK, + rtlpriv->sec.key_buf[key_index]); + } else { + RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG, + "set group key\n"); + + if (mac->opmode == NL80211_IFTYPE_ADHOC) { + rtl_cam_add_one_entry(hw, + rtlefuse->dev_addr, + PAIRWISE_KEYIDX, + CAM_PAIRWISE_KEY_POSITION, + enc_algo, + CAM_CONFIG_NO_USEDK, + rtlpriv->sec.key_buf + [entry_id]); + } + rtl_cam_add_one_entry(hw, macaddr, key_index, + entry_id, enc_algo, + CAM_CONFIG_NO_USEDK, + rtlpriv->sec.key_buf[entry_id]); + } + } + } +} + +void rtl8723be_read_bt_coexist_info_from_hwpg(struct ieee80211_hw *hw, + bool auto_load_fail, u8 *hwinfo) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 value; + u32 tmpu_32; + + if (!auto_load_fail) { + tmpu_32 = rtl_read_dword(rtlpriv, REG_MULTI_FUNC_CTRL); + if (tmpu_32 & BIT(18)) + rtlpriv->btcoexist.btc_info.btcoexist = 1; + else + rtlpriv->btcoexist.btc_info.btcoexist = 0; + value = hwinfo[RF_OPTION4]; + rtlpriv->btcoexist.btc_info.bt_type = BT_RTL8723B; + rtlpriv->btcoexist.btc_info.ant_num = (value & 0x1); + } else { + rtlpriv->btcoexist.btc_info.btcoexist = 0; + rtlpriv->btcoexist.btc_info.bt_type = BT_RTL8723B; + rtlpriv->btcoexist.btc_info.ant_num = ANT_X2; + } +} + +void rtl8723be_bt_reg_init(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + /* 0:Low, 1:High, 2:From Efuse. */ + rtlpriv->btcoexist.reg_bt_iso = 2; + /* 0:Idle, 1:None-SCO, 2:SCO, 3:From Counter. */ + rtlpriv->btcoexist.reg_bt_sco = 3; + /* 0:Disable BT control A-MPDU, 1:Enable BT control A-MPDU. */ + rtlpriv->btcoexist.reg_bt_sco = 0; +} + +void rtl8723be_bt_hw_init(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (rtlpriv->cfg->ops->get_btc_status()) + rtlpriv->btcoexist.btc_ops->btc_init_hw_config(rtlpriv); +} + +void rtl8723be_suspend(struct ieee80211_hw *hw) +{ +} + +void rtl8723be_resume(struct ieee80211_hw *hw) +{ +} + +/* Turn on AAP (RCR:bit 0) for promicuous mode. */ +void rtl8723be_allow_all_destaddr(struct ieee80211_hw *hw, bool allow_all_da, + bool write_into_reg) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + + if (allow_all_da) /* Set BIT0 */ + rtlpci->receive_config |= RCR_AAP; + else /* Clear BIT0 */ + rtlpci->receive_config &= ~RCR_AAP; + + if (write_into_reg) + rtl_write_dword(rtlpriv, REG_RCR, rtlpci->receive_config); + + RT_TRACE(rtlpriv, COMP_TURBO | COMP_INIT, DBG_LOUD, + "receive_config = 0x%08X, write_into_reg =%d\n", + rtlpci->receive_config, write_into_reg); +} --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/hw.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/hw.h @@ -0,0 +1,64 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8723BE_HW_H__ +#define __RTL8723BE_HW_H__ + +void rtl8723be_get_hw_reg(struct ieee80211_hw *hw, u8 variable, u8 *val); +void rtl8723be_read_eeprom_info(struct ieee80211_hw *hw); + +void rtl8723be_interrupt_recognized(struct ieee80211_hw *hw, + u32 *p_inta, u32 *p_intb); +int rtl8723be_hw_init(struct ieee80211_hw *hw); +void rtl8723be_card_disable(struct ieee80211_hw *hw); +void rtl8723be_enable_interrupt(struct ieee80211_hw *hw); +void rtl8723be_disable_interrupt(struct ieee80211_hw *hw); +int rtl8723be_set_network_type(struct ieee80211_hw *hw, + enum nl80211_iftype type); +void rtl8723be_set_check_bssid(struct ieee80211_hw *hw, bool check_bssid); +void rtl8723be_set_qos(struct ieee80211_hw *hw, int aci); +void rtl8723be_set_beacon_related_registers(struct ieee80211_hw *hw); +void rtl8723be_set_beacon_interval(struct ieee80211_hw *hw); +void rtl8723be_update_interrupt_mask(struct ieee80211_hw *hw, + u32 add_msr, u32 rm_msr); +void rtl8723be_set_hw_reg(struct ieee80211_hw *hw, u8 variable, u8 *val); +void rtl8723be_update_hal_rate_tbl(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, + u8 rssi_level); +void rtl8723be_update_channel_access_setting(struct ieee80211_hw *hw); +bool rtl8723be_gpio_radio_on_off_checking(struct ieee80211_hw *hw, u8 *valid); +void rtl8723be_enable_hw_security_config(struct ieee80211_hw *hw); +void rtl8723be_set_key(struct ieee80211_hw *hw, u32 key_index, + u8 *p_macaddr, bool is_group, u8 enc_algo, + bool is_wepkey, bool clear_all); +void rtl8723be_read_bt_coexist_info_from_hwpg(struct ieee80211_hw *hw, + bool autoload_fail, u8 *hwinfo); +void rtl8723be_bt_reg_init(struct ieee80211_hw *hw); +void rtl8723be_bt_hw_init(struct ieee80211_hw *hw); +void rtl8723be_suspend(struct ieee80211_hw *hw); +void rtl8723be_resume(struct ieee80211_hw *hw); +void rtl8723be_allow_all_destaddr(struct ieee80211_hw *hw, bool allow_all_da, + bool write_into_reg); +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/led.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/led.c @@ -0,0 +1,153 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "../pci.h" +#include "reg.h" +#include "led.h" + +static void _rtl8723be_init_led(struct ieee80211_hw *hw, struct rtl_led *pled, + enum rtl_led_pin ledpin) +{ + pled->hw = hw; + pled->ledpin = ledpin; + pled->ledon = false; +} + +void rtl8723be_sw_led_on(struct ieee80211_hw *hw, struct rtl_led *pled) +{ + u8 ledcfg; + struct rtl_priv *rtlpriv = rtl_priv(hw); + + RT_TRACE(rtlpriv, COMP_LED, DBG_LOUD, + "LedAddr:%X ledpin =%d\n", REG_LEDCFG2, pled->ledpin); + + switch (pled->ledpin) { + case LED_PIN_GPIO0: + break; + case LED_PIN_LED0: + ledcfg = rtl_read_byte(rtlpriv, REG_LEDCFG2); + ledcfg &= ~BIT(6); + rtl_write_byte(rtlpriv, REG_LEDCFG2, (ledcfg & 0xf0) | BIT(5)); + break; + case LED_PIN_LED1: + ledcfg = rtl_read_byte(rtlpriv, REG_LEDCFG1); + rtl_write_byte(rtlpriv, REG_LEDCFG1, ledcfg & 0x10); + break; + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "switch case not process\n"); + break; + } + pled->ledon = true; +} + +void rtl8723be_sw_led_off(struct ieee80211_hw *hw, struct rtl_led *pled) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + u8 ledcfg; + + RT_TRACE(rtlpriv, COMP_LED, DBG_LOUD, + "LedAddr:%X ledpin =%d\n", REG_LEDCFG2, pled->ledpin); + + ledcfg = rtl_read_byte(rtlpriv, REG_LEDCFG2); + + switch (pled->ledpin) { + case LED_PIN_GPIO0: + break; + case LED_PIN_LED0: + ledcfg &= 0xf0; + if (pcipriv->ledctl.led_opendrain) { + ledcfg &= 0x90; /* Set to software control. */ + rtl_write_byte(rtlpriv, REG_LEDCFG2, (ledcfg|BIT(3))); + ledcfg = rtl_read_byte(rtlpriv, REG_MAC_PINMUX_CFG); + ledcfg &= 0xFE; + rtl_write_byte(rtlpriv, REG_MAC_PINMUX_CFG, ledcfg); + } else { + ledcfg &= ~BIT(6); + rtl_write_byte(rtlpriv, REG_LEDCFG2, + (ledcfg | BIT(3) | BIT(5))); + } + break; + case LED_PIN_LED1: + ledcfg = rtl_read_byte(rtlpriv, REG_LEDCFG1); + ledcfg &= 0x10; /* Set to software control. */ + rtl_write_byte(rtlpriv, REG_LEDCFG1, ledcfg|BIT(3)); + + break; + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "switch case not processed\n"); + break; + } + pled->ledon = false; +} + +void rtl8723be_init_sw_leds(struct ieee80211_hw *hw) +{ + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + _rtl8723be_init_led(hw, &(pcipriv->ledctl.sw_led0), LED_PIN_LED0); + _rtl8723be_init_led(hw, &(pcipriv->ledctl.sw_led1), LED_PIN_LED1); +} + +static void _rtl8723be_sw_led_control(struct ieee80211_hw *hw, + enum led_ctl_mode ledaction) +{ + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_led *pled0 = &(pcipriv->ledctl.sw_led0); + switch (ledaction) { + case LED_CTL_POWER_ON: + case LED_CTL_LINK: + case LED_CTL_NO_LINK: + rtl8723be_sw_led_on(hw, pled0); + break; + case LED_CTL_POWER_OFF: + rtl8723be_sw_led_off(hw, pled0); + break; + default: + break; + } +} + +void rtl8723be_led_control(struct ieee80211_hw *hw, + enum led_ctl_mode ledaction) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + + if ((ppsc->rfoff_reason > RF_CHANGE_BY_PS) && + (ledaction == LED_CTL_TX || + ledaction == LED_CTL_RX || + ledaction == LED_CTL_SITE_SURVEY || + ledaction == LED_CTL_LINK || + ledaction == LED_CTL_NO_LINK || + ledaction == LED_CTL_START_TO_LINK || + ledaction == LED_CTL_POWER_ON)) { + return; + } + RT_TRACE(rtlpriv, COMP_LED, DBG_LOUD, "ledaction %d,\n", ledaction); + _rtl8723be_sw_led_control(hw, ledaction); +} --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/led.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/led.h @@ -0,0 +1,35 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8723BE_LED_H__ +#define __RTL8723BE_LED_H__ + +void rtl8723be_init_sw_leds(struct ieee80211_hw *hw); +void rtl8723be_sw_led_on(struct ieee80211_hw *hw, struct rtl_led *pled); +void rtl8723be_sw_led_off(struct ieee80211_hw *hw, struct rtl_led *pled); +void rtl8723be_led_control(struct ieee80211_hw *hw, + enum led_ctl_mode ledaction); + +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/phy.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/phy.c @@ -0,0 +1,2175 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "../pci.h" +#include "../ps.h" +#include "reg.h" +#include "def.h" +#include "phy.h" +#include "../rtl8723com/phy_common.h" +#include "rf.h" +#include "dm.h" +#include "table.h" +#include "trx.h" + +static bool _rtl8723be_phy_bb8723b_config_parafile(struct ieee80211_hw *hw); +static bool _rtl8723be_phy_config_bb_with_pgheaderfile(struct ieee80211_hw *hw, + u8 configtype); +static bool rtl8723be_phy_sw_chn_step_by_step(struct ieee80211_hw *hw, + u8 channel, u8 *stage, + u8 *step, u32 *delay); +static void _rtl8723be_config_bb_reg(struct ieee80211_hw *hw, + u32 addr, u32 data); + +static bool _rtl8723be_check_condition(struct ieee80211_hw *hw, + const u32 condition) +{ + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + u32 _board = rtlefuse->board_type; /*need efuse define*/ + u32 _interface = rtlhal->interface; + u32 _platform = 0x08;/*SupportPlatform */ + u32 cond = condition; + + if (condition == 0xCDCDCDCD) + return true; + + cond = condition & 0xFF; + if ((_board & cond) == 0 && cond != 0x1F) + return false; + + cond = condition & 0xFF00; + cond = cond >> 8; + if ((_interface & cond) == 0 && cond != 0x07) + return false; + + cond = condition & 0xFF0000; + cond = cond >> 16; + if ((_platform & cond) == 0 && cond != 0x0F) + return false; + return true; +} + +static bool _rtl8723be_phy_config_mac_with_headerfile(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 i; + u32 arraylength; + u32 *ptrarray; + + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, "Read rtl8723beMACPHY_Array\n"); + arraylength = RTL8723BEMAC_1T_ARRAYLEN; + ptrarray = RTL8723BEMAC_1T_ARRAY; + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "Img:RTL8723bEMAC_1T_ARRAY LEN %d\n", arraylength); + for (i = 0; i < arraylength; i = i + 2) + rtl_write_byte(rtlpriv, ptrarray[i], (u8) ptrarray[i + 1]); + return true; +} + +static bool _rtl8723be_phy_config_bb_with_headerfile(struct ieee80211_hw *hw, + u8 configtype) +{ + #define READ_NEXT_PAIR(v1, v2, i) \ + do { \ + i += 2; \ + v1 = array_table[i];\ + v2 = array_table[i+1]; \ + } while (0) + + int i; + u32 *array_table; + u16 arraylen; + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 v1 = 0, v2 = 0; + + if (configtype == BASEBAND_CONFIG_PHY_REG) { + arraylen = RTL8723BEPHY_REG_1TARRAYLEN; + array_table = RTL8723BEPHY_REG_1TARRAY; + + for (i = 0; i < arraylen; i = i + 2) { + v1 = array_table[i]; + v2 = array_table[i+1]; + if (v1 < 0xcdcdcdcd) { + _rtl8723be_config_bb_reg(hw, v1, v2); + } else {/*This line is the start line of branch.*/ + if (!_rtl8723be_check_condition(hw, array_table[i])) { + /*Discard the following (offset, data) pairs*/ + READ_NEXT_PAIR(v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && + i < arraylen - 2) { + READ_NEXT_PAIR(v1, v2, i); + } + i -= 2; /* prevent from for-loop += 2*/ + /* Configure matched pairs and + * skip to end of if-else. + */ + } else { + READ_NEXT_PAIR(v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && + i < arraylen - 2) { + _rtl8723be_config_bb_reg(hw, + v1, v2); + READ_NEXT_PAIR(v1, v2, i); + } + + while (v2 != 0xDEAD && i < arraylen - 2) + READ_NEXT_PAIR(v1, v2, i); + } + } + } + } else if (configtype == BASEBAND_CONFIG_AGC_TAB) { + arraylen = RTL8723BEAGCTAB_1TARRAYLEN; + array_table = RTL8723BEAGCTAB_1TARRAY; + + for (i = 0; i < arraylen; i = i + 2) { + v1 = array_table[i]; + v2 = array_table[i+1]; + if (v1 < 0xCDCDCDCD) { + rtl_set_bbreg(hw, array_table[i], + MASKDWORD, + array_table[i + 1]); + udelay(1); + continue; + } else {/*This line is the start line of branch.*/ + if (!_rtl8723be_check_condition(hw, array_table[i])) { + /* Discard the following + * (offset, data) pairs + */ + READ_NEXT_PAIR(v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && + i < arraylen - 2) { + READ_NEXT_PAIR(v1, v2, i); + } + i -= 2; /* prevent from for-loop += 2*/ + /*Configure matched pairs and + *skip to end of if-else. + */ + } else { + READ_NEXT_PAIR(v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && + i < arraylen - 2) { + rtl_set_bbreg(hw, array_table[i], + MASKDWORD, + array_table[i + 1]); + udelay(1); + READ_NEXT_PAIR(v1, v2, i); + } + + while (v2 != 0xDEAD && i < arraylen - 2) + READ_NEXT_PAIR(v1, v2, i); + } + } + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, + "The agctab_array_table[0] is " + "%x Rtl818EEPHY_REGArray[1] is %x\n", + array_table[i], array_table[i + 1]); + } + } + return true; +} + +static u8 _rtl8723be_get_rate_section_index(u32 regaddr) +{ + u8 index = 0; + + switch (regaddr) { + case RTXAGC_A_RATE18_06: + case RTXAGC_B_RATE18_06: + index = 0; + break; + case RTXAGC_A_RATE54_24: + case RTXAGC_B_RATE54_24: + index = 1; + break; + case RTXAGC_A_CCK1_MCS32: + case RTXAGC_B_CCK1_55_MCS32: + index = 2; + break; + case RTXAGC_B_CCK11_A_CCK2_11: + index = 3; + break; + case RTXAGC_A_MCS03_MCS00: + case RTXAGC_B_MCS03_MCS00: + index = 4; + break; + case RTXAGC_A_MCS07_MCS04: + case RTXAGC_B_MCS07_MCS04: + index = 5; + break; + case RTXAGC_A_MCS11_MCS08: + case RTXAGC_B_MCS11_MCS08: + index = 6; + break; + case RTXAGC_A_MCS15_MCS12: + case RTXAGC_B_MCS15_MCS12: + index = 7; + break; + default: + regaddr &= 0xFFF; + if (regaddr >= 0xC20 && regaddr <= 0xC4C) + index = (u8) ((regaddr - 0xC20) / 4); + else if (regaddr >= 0xE20 && regaddr <= 0xE4C) + index = (u8) ((regaddr - 0xE20) / 4); + break; + }; + return index; +} + +u32 rtl8723be_phy_query_rf_reg(struct ieee80211_hw *hw, enum radio_path rfpath, + u32 regaddr, u32 bitmask) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 original_value, readback_value, bitshift; + unsigned long flags; + + RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, + "regaddr(%#x), rfpath(%#x), bitmask(%#x)\n", + regaddr, rfpath, bitmask); + + spin_lock_irqsave(&rtlpriv->locks.rf_lock, flags); + + original_value = rtl8723_phy_rf_serial_read(hw, rfpath, regaddr); + bitshift = rtl8723_phy_calculate_bit_shift(bitmask); + readback_value = (original_value & bitmask) >> bitshift; + + spin_unlock_irqrestore(&rtlpriv->locks.rf_lock, flags); + + RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, + "regaddr(%#x), rfpath(%#x), " + "bitmask(%#x), original_value(%#x)\n", + regaddr, rfpath, bitmask, original_value); + + return readback_value; +} + +void rtl8723be_phy_set_rf_reg(struct ieee80211_hw *hw, enum radio_path path, + u32 regaddr, u32 bitmask, u32 data) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 original_value, bitshift; + unsigned long flags; + + RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, + "regaddr(%#x), bitmask(%#x), data(%#x), rfpath(%#x)\n", + regaddr, bitmask, data, path); + + spin_lock_irqsave(&rtlpriv->locks.rf_lock, flags); + + if (bitmask != RFREG_OFFSET_MASK) { + original_value = rtl8723_phy_rf_serial_read(hw, path, + regaddr); + bitshift = rtl8723_phy_calculate_bit_shift(bitmask); + data = ((original_value & (~bitmask)) | + (data << bitshift)); + } + + rtl8723_phy_rf_serial_write(hw, path, regaddr, data); + + spin_unlock_irqrestore(&rtlpriv->locks.rf_lock, flags); + + RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, + "regaddr(%#x), bitmask(%#x), data(%#x), rfpath(%#x)\n", + regaddr, bitmask, data, path); +} + +bool rtl8723be_phy_mac_config(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + bool rtstatus = _rtl8723be_phy_config_mac_with_headerfile(hw); + + rtl_write_byte(rtlpriv, 0x04CA, 0x0B); + return rtstatus; +} + +bool rtl8723be_phy_bb_config(struct ieee80211_hw *hw) +{ + bool rtstatus = true; + struct rtl_priv *rtlpriv = rtl_priv(hw); + u16 regval; + u8 reg_hwparafile = 1; + u32 tmp; + u8 crystalcap = rtlpriv->efuse.crystalcap; + rtl8723_phy_init_bb_rf_reg_def(hw); + regval = rtl_read_word(rtlpriv, REG_SYS_FUNC_EN); + rtl_write_word(rtlpriv, REG_SYS_FUNC_EN, + regval | BIT(13) | BIT(0) | BIT(1)); + + rtl_write_byte(rtlpriv, REG_RF_CTRL, RF_EN | RF_RSTB | RF_SDMRSTB); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN, + FEN_PPLL | FEN_PCIEA | FEN_DIO_PCIE | + FEN_BB_GLB_RSTN | FEN_BBRSTB); + tmp = rtl_read_dword(rtlpriv, 0x4c); + rtl_write_dword(rtlpriv, 0x4c, tmp | BIT(23)); + + rtl_write_byte(rtlpriv, REG_AFE_XTAL_CTRL + 1, 0x80); + + if (reg_hwparafile == 1) + rtstatus = _rtl8723be_phy_bb8723b_config_parafile(hw); + + crystalcap = crystalcap & 0x3F; + rtl_set_bbreg(hw, REG_MAC_PHY_CTRL, 0xFFF000, + (crystalcap | crystalcap << 6)); + + return rtstatus; +} + +bool rtl8723be_phy_rf_config(struct ieee80211_hw *hw) +{ + return rtl8723be_phy_rf6052_config(hw); +} + +static void _rtl8723be_config_rf_reg(struct ieee80211_hw *hw, u32 addr, + u32 data, enum radio_path rfpath, + u32 regaddr) +{ + if (addr == 0xfe || addr == 0xffe) { + mdelay(50); + } else { + rtl_set_rfreg(hw, rfpath, regaddr, RFREG_OFFSET_MASK, data); + udelay(1); + } +} + +static void _rtl8723be_config_rf_radio_a(struct ieee80211_hw *hw, + u32 addr, u32 data) +{ + u32 content = 0x1000; /*RF Content: radio_a_txt*/ + u32 maskforphyset = (u32)(content & 0xE000); + + _rtl8723be_config_rf_reg(hw, addr, data, RF90_PATH_A, + addr | maskforphyset); +} + +static void _rtl8723be_phy_init_tx_power_by_rate(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + u8 band, path, txnum, section; + + for (band = BAND_ON_2_4G; band <= BAND_ON_5G; ++band) + for (path = 0; path < TX_PWR_BY_RATE_NUM_RF; ++path) + for (txnum = 0; txnum < TX_PWR_BY_RATE_NUM_RF; ++txnum) + for (section = 0; + section < TX_PWR_BY_RATE_NUM_SECTION; + ++section) + rtlphy->tx_power_by_rate_offset[band] + [path][txnum][section] = 0; +} + +static void _rtl8723be_config_bb_reg(struct ieee80211_hw *hw, + u32 addr, u32 data) +{ + if (addr == 0xfe) { + mdelay(50); + } else if (addr == 0xfd) { + mdelay(5); + } else if (addr == 0xfc) { + mdelay(1); + } else if (addr == 0xfb) { + udelay(50); + } else if (addr == 0xfa) { + udelay(5); + } else if (addr == 0xf9) { + udelay(1); + } else { + rtl_set_bbreg(hw, addr, MASKDWORD, data); + udelay(1); + } +} + +static void phy_set_txpwr_by_rate_base(struct ieee80211_hw *hw, u8 band, + u8 path, u8 rate_section, + u8 txnum, u8 value) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + if (path > RF90_PATH_D) { + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "Invalid Rf Path %d in phy_SetTxPowerByRatBase()\n", + path); + return; + } + + if (band == BAND_ON_2_4G) { + switch (rate_section) { + case CCK: + rtlphy->txpwr_by_rate_base_24g[path][txnum][0] = value; + break; + case OFDM: + rtlphy->txpwr_by_rate_base_24g[path][txnum][1] = value; + break; + case HT_MCS0_MCS7: + rtlphy->txpwr_by_rate_base_24g[path][txnum][2] = value; + break; + case HT_MCS8_MCS15: + rtlphy->txpwr_by_rate_base_24g[path][txnum][3] = value; + break; + default: + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "Invalid RateSection %d in Band 2.4G, Rf Path" + " %d, %dTx in PHY_SetTxPowerByRateBase()\n", + rate_section, path, txnum); + break; + }; + } else { + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "Invalid Band %d in PHY_SetTxPowerByRateBase()\n", + band); + } +} + +static u8 phy_get_txpwr_by_rate_base(struct ieee80211_hw *hw, u8 band, u8 path, + u8 txnum, u8 rate_section) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 value = 0; + if (path > RF90_PATH_D) { + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "Invalid Rf Path %d in PHY_GetTxPowerByRateBase()\n", + path); + return 0; + } + + if (band == BAND_ON_2_4G) { + switch (rate_section) { + case CCK: + value = rtlphy->txpwr_by_rate_base_24g[path][txnum][0]; + break; + case OFDM: + value = rtlphy->txpwr_by_rate_base_24g[path][txnum][1]; + break; + case HT_MCS0_MCS7: + value = rtlphy->txpwr_by_rate_base_24g[path][txnum][2]; + break; + case HT_MCS8_MCS15: + value = rtlphy->txpwr_by_rate_base_24g[path][txnum][3]; + break; + default: + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "Invalid RateSection %d in Band 2.4G, Rf Path" + " %d, %dTx in PHY_GetTxPowerByRateBase()\n", + rate_section, path, txnum); + break; + }; + } else { + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "Invalid Band %d in PHY_GetTxPowerByRateBase()\n", + band); + } + + return value; +} + +static void _rtl8723be_phy_store_txpower_by_rate_base(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u16 raw_value = 0; + u8 base = 0, path = 0; + + for (path = RF90_PATH_A; path <= RF90_PATH_B; ++path) { + if (path == RF90_PATH_A) { + raw_value = (u16) (rtlphy->tx_power_by_rate_offset + [BAND_ON_2_4G][path][RF_1TX][3] >> 24) & 0xFF; + base = (raw_value >> 4) * 10 + (raw_value & 0xF); + phy_set_txpwr_by_rate_base(hw, BAND_ON_2_4G, path, CCK, + RF_1TX, base); + } else if (path == RF90_PATH_B) { + raw_value = (u16) (rtlphy->tx_power_by_rate_offset + [BAND_ON_2_4G][path][RF_1TX][3] >> 0) & 0xFF; + base = (raw_value >> 4) * 10 + (raw_value & 0xF); + phy_set_txpwr_by_rate_base(hw, BAND_ON_2_4G, path, + CCK, RF_1TX, base); + } + raw_value = (u16) (rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G] + [path][RF_1TX][1] >> 24) & 0xFF; + base = (raw_value >> 4) * 10 + (raw_value & 0xF); + phy_set_txpwr_by_rate_base(hw, BAND_ON_2_4G, path, OFDM, RF_1TX, + base); + + raw_value = (u16) (rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G] + [path][RF_1TX][5] >> 24) & 0xFF; + base = (raw_value >> 4) * 10 + (raw_value & 0xF); + phy_set_txpwr_by_rate_base(hw, BAND_ON_2_4G, path, HT_MCS0_MCS7, + RF_1TX, base); + + raw_value = (u16) (rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G] + [path][RF_2TX][7] >> 24) & 0xFF; + base = (raw_value >> 4) * 10 + (raw_value & 0xF); + phy_set_txpwr_by_rate_base(hw, BAND_ON_2_4G, path, + HT_MCS8_MCS15, RF_2TX, base); + } +} + +static void phy_conv_dbm_to_rel(u32 *data, u8 start, u8 end, u8 base_val) +{ + char i = 0; + u8 temp_value = 0; + u32 temp_data = 0; + + for (i = 3; i >= 0; --i) { + if (i >= start && i <= end) { + /* Get the exact value */ + temp_value = (u8) (*data >> (i * 8)) & 0xF; + temp_value += ((u8) ((*data >> (i*8 + 4)) & 0xF)) * 10; + + /* Change the value to a relative value */ + temp_value = (temp_value > base_val) ? + temp_value - base_val : + base_val - temp_value; + } else { + temp_value = (u8) (*data >> (i * 8)) & 0xFF; + } + temp_data <<= 8; + temp_data |= temp_value; + } + *data = temp_data; +} + +static void conv_dbm_to_rel(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 base = 0, rfpath = RF90_PATH_A; + + base = phy_get_txpwr_by_rate_base(hw, BAND_ON_2_4G, rfpath, + RF_1TX, CCK); + phy_conv_dbm_to_rel(&(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G] + [rfpath][RF_1TX][2]), 1, 1, base); + phy_conv_dbm_to_rel(&(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G] + [rfpath][RF_1TX][3]), 1, 3, base); + + base = phy_get_txpwr_by_rate_base(hw, BAND_ON_2_4G, rfpath, + RF_1TX, OFDM); + phy_conv_dbm_to_rel(&(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G] + [rfpath][RF_1TX][0]), 0, 3, base); + phy_conv_dbm_to_rel(&(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G] + [rfpath][RF_1TX][1]), 0, 3, base); + + base = phy_get_txpwr_by_rate_base(hw, BAND_ON_2_4G, rfpath, + RF_1TX, HT_MCS0_MCS7); + phy_conv_dbm_to_rel(&(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G] + [rfpath][RF_1TX][4]), 0, 3, base); + phy_conv_dbm_to_rel(&(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G] + [rfpath][RF_1TX][5]), 0, 3, base); + + base = phy_get_txpwr_by_rate_base(hw, BAND_ON_2_4G, rfpath, + RF_2TX, HT_MCS8_MCS15); + phy_conv_dbm_to_rel(&(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G] + [rfpath][RF_2TX][6]), 0, 3, base); + + phy_conv_dbm_to_rel(&(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G] + [rfpath][RF_2TX][7]), 0, 3, base); + + RT_TRACE(rtlpriv, COMP_POWER, DBG_TRACE, + "<=== conv_dbm_to_rel()\n"); +} + +static void _rtl8723be_phy_txpower_by_rate_configuration( + struct ieee80211_hw *hw) +{ + _rtl8723be_phy_store_txpower_by_rate_base(hw); + conv_dbm_to_rel(hw); +} + +static bool _rtl8723be_phy_bb8723b_config_parafile(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + bool rtstatus; + + rtstatus = _rtl8723be_phy_config_bb_with_headerfile(hw, + BASEBAND_CONFIG_PHY_REG); + if (!rtstatus) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "Write BB Reg Fail!!"); + return false; + } + _rtl8723be_phy_init_tx_power_by_rate(hw); + if (!rtlefuse->autoload_failflag) { + rtlphy->pwrgroup_cnt = 0; + rtstatus = _rtl8723be_phy_config_bb_with_pgheaderfile(hw, + BASEBAND_CONFIG_PHY_REG); + } + _rtl8723be_phy_txpower_by_rate_configuration(hw); + if (!rtstatus) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "BB_PG Reg Fail!!"); + return false; + } + rtstatus = _rtl8723be_phy_config_bb_with_headerfile(hw, + BASEBAND_CONFIG_AGC_TAB); + if (!rtstatus) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "AGC Table Fail\n"); + return false; + } + rtlphy->cck_high_power = (bool) (rtl_get_bbreg(hw, + RFPGA0_XA_HSSIPARAMETER2, + 0x200)); + return true; +} + +static void _rtl8723be_store_tx_power_by_rate(struct ieee80211_hw *hw, + u32 band, u32 rfpath, + u32 txnum, u32 regaddr, + u32 bitmask, u32 data) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 rate_section = _rtl8723be_get_rate_section_index(regaddr); + + if (band != BAND_ON_2_4G && band != BAND_ON_5G) + RT_TRACE(rtlpriv, COMP_POWER, PHY_TXPWR, + "Invalid Band %d\n", band); + + if (rfpath > MAX_RF_PATH) + RT_TRACE(rtlpriv, COMP_POWER, PHY_TXPWR, + "Invalid RfPath %d\n", rfpath); + + if (txnum > MAX_RF_PATH) + RT_TRACE(rtlpriv, COMP_POWER, PHY_TXPWR, + "Invalid TxNum %d\n", txnum); + + rtlphy->tx_power_by_rate_offset[band][rfpath][txnum][rate_section] = + data; +} + +static bool _rtl8723be_phy_config_bb_with_pgheaderfile(struct ieee80211_hw *hw, + u8 configtype) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + int i; + u32 *phy_regarray_table_pg; + u16 phy_regarray_pg_len; + u32 v1 = 0, v2 = 0, v3 = 0, v4 = 0, v5 = 0, v6 = 0; + + phy_regarray_pg_len = RTL8723BEPHY_REG_ARRAY_PGLEN; + phy_regarray_table_pg = RTL8723BEPHY_REG_ARRAY_PG; + + if (configtype == BASEBAND_CONFIG_PHY_REG) { + for (i = 0; i < phy_regarray_pg_len; i = i + 6) { + v1 = phy_regarray_table_pg[i]; + v2 = phy_regarray_table_pg[i+1]; + v3 = phy_regarray_table_pg[i+2]; + v4 = phy_regarray_table_pg[i+3]; + v5 = phy_regarray_table_pg[i+4]; + v6 = phy_regarray_table_pg[i+5]; + + if (v1 < 0xcdcdcdcd) { + if (phy_regarray_table_pg[i] == 0xfe || + phy_regarray_table_pg[i] == 0xffe) + mdelay(50); + else + _rtl8723be_store_tx_power_by_rate(hw, + v1, v2, v3, v4, v5, v6); + continue; + } else { + /*don't need the hw_body*/ + if (!_rtl8723be_check_condition(hw, + phy_regarray_table_pg[i])) { + i += 2; /* skip the pair of expression*/ + v1 = phy_regarray_table_pg[i]; + v2 = phy_regarray_table_pg[i+1]; + v3 = phy_regarray_table_pg[i+2]; + while (v2 != 0xDEAD) { + i += 3; + v1 = phy_regarray_table_pg[i]; + v2 = phy_regarray_table_pg[i+1]; + v3 = phy_regarray_table_pg[i+2]; + } + } + } + } + } else { + RT_TRACE(rtlpriv, COMP_SEND, DBG_TRACE, + "configtype != BaseBand_Config_PHY_REG\n"); + } + return true; +} + +bool rtl8723be_phy_config_rf_with_headerfile(struct ieee80211_hw *hw, + enum radio_path rfpath) +{ + #define READ_NEXT_RF_PAIR(v1, v2, i) \ + do { \ + i += 2; \ + v1 = radioa_array_table[i]; \ + v2 = radioa_array_table[i+1]; \ + } while (0) + + int i; + bool rtstatus = true; + u32 *radioa_array_table; + u16 radioa_arraylen; + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u32 v1 = 0, v2 = 0; + + radioa_arraylen = RTL8723BE_RADIOA_1TARRAYLEN; + radioa_array_table = RTL8723BE_RADIOA_1TARRAY; + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "Radio_A:RTL8723BE_RADIOA_1TARRAY %d\n", radioa_arraylen); + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "Radio No %x\n", rfpath); + rtstatus = true; + switch (rfpath) { + case RF90_PATH_A: + for (i = 0; i < radioa_arraylen; i = i + 2) { + v1 = radioa_array_table[i]; + v2 = radioa_array_table[i+1]; + if (v1 < 0xcdcdcdcd) { + _rtl8723be_config_rf_radio_a(hw, v1, v2); + } else { /*This line is the start line of branch.*/ + if (!_rtl8723be_check_condition(hw, + radioa_array_table[i])) { + /* Discard the following + * (offset, data) pairs + */ + READ_NEXT_RF_PAIR(v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && + i < radioa_arraylen - 2) + READ_NEXT_RF_PAIR(v1, v2, i); + i -= 2; /* prevent from for-loop += 2*/ + } else { + /* Configure matched pairs + * and skip to end of if-else. + */ + READ_NEXT_RF_PAIR(v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && + i < radioa_arraylen - 2) { + _rtl8723be_config_rf_radio_a(hw, + v1, v2); + READ_NEXT_RF_PAIR(v1, v2, i); + } + + while (v2 != 0xDEAD && + i < radioa_arraylen - 2) { + READ_NEXT_RF_PAIR(v1, v2, i); + } + } + } + } + + if (rtlhal->oem_id == RT_CID_819X_HP) + _rtl8723be_config_rf_radio_a(hw, 0x52, 0x7E4BD); + + break; + case RF90_PATH_B: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "switch case not process\n"); + break; + case RF90_PATH_C: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "switch case not process\n"); + break; + case RF90_PATH_D: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "switch case not process\n"); + break; + } + return true; +} + +void rtl8723be_phy_get_hw_reg_originalvalue(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + rtlphy->default_initialgain[0] = + (u8) rtl_get_bbreg(hw, ROFDM0_XAAGCCORE1, MASKBYTE0); + rtlphy->default_initialgain[1] = + (u8) rtl_get_bbreg(hw, ROFDM0_XBAGCCORE1, MASKBYTE0); + rtlphy->default_initialgain[2] = + (u8) rtl_get_bbreg(hw, ROFDM0_XCAGCCORE1, MASKBYTE0); + rtlphy->default_initialgain[3] = + (u8) rtl_get_bbreg(hw, ROFDM0_XDAGCCORE1, MASKBYTE0); + + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, + "Default initial gain (c50 = 0x%x, " + "c58 = 0x%x, c60 = 0x%x, c68 = 0x%x\n", + rtlphy->default_initialgain[0], + rtlphy->default_initialgain[1], + rtlphy->default_initialgain[2], + rtlphy->default_initialgain[3]); + + rtlphy->framesync = (u8) rtl_get_bbreg(hw, ROFDM0_RXDETECTOR3, + MASKBYTE0); + rtlphy->framesync_c34 = rtl_get_bbreg(hw, ROFDM0_RXDETECTOR2, + MASKDWORD); + + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, + "Default framesync (0x%x) = 0x%x\n", + ROFDM0_RXDETECTOR3, rtlphy->framesync); +} + +void rtl8723be_phy_get_txpower_level(struct ieee80211_hw *hw, long *powerlevel) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 txpwr_level; + long txpwr_dbm; + + txpwr_level = rtlphy->cur_cck_txpwridx; + txpwr_dbm = rtl8723_phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_B, + txpwr_level); + txpwr_level = rtlphy->cur_ofdm24g_txpwridx; + if (rtl8723_phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_G, txpwr_level) > + txpwr_dbm) + txpwr_dbm = + rtl8723_phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_G, + txpwr_level); + txpwr_level = rtlphy->cur_ofdm24g_txpwridx; + if (rtl8723_phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_N_24G, + txpwr_level) > txpwr_dbm) + txpwr_dbm = + rtl8723_phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_N_24G, + txpwr_level); + *powerlevel = txpwr_dbm; +} + +static u8 _rtl8723be_phy_get_ratesection_intxpower_byrate(enum radio_path path, + u8 rate) +{ + u8 rate_section = 0; + + switch (rate) { + case DESC92C_RATE1M: + rate_section = 2; + break; + case DESC92C_RATE2M: + case DESC92C_RATE5_5M: + if (path == RF90_PATH_A) + rate_section = 3; + else if (path == RF90_PATH_B) + rate_section = 2; + break; + case DESC92C_RATE11M: + rate_section = 3; + break; + case DESC92C_RATE6M: + case DESC92C_RATE9M: + case DESC92C_RATE12M: + case DESC92C_RATE18M: + rate_section = 0; + break; + case DESC92C_RATE24M: + case DESC92C_RATE36M: + case DESC92C_RATE48M: + case DESC92C_RATE54M: + rate_section = 1; + break; + case DESC92C_RATEMCS0: + case DESC92C_RATEMCS1: + case DESC92C_RATEMCS2: + case DESC92C_RATEMCS3: + rate_section = 4; + break; + case DESC92C_RATEMCS4: + case DESC92C_RATEMCS5: + case DESC92C_RATEMCS6: + case DESC92C_RATEMCS7: + rate_section = 5; + break; + case DESC92C_RATEMCS8: + case DESC92C_RATEMCS9: + case DESC92C_RATEMCS10: + case DESC92C_RATEMCS11: + rate_section = 6; + break; + case DESC92C_RATEMCS12: + case DESC92C_RATEMCS13: + case DESC92C_RATEMCS14: + case DESC92C_RATEMCS15: + rate_section = 7; + break; + default: + RT_ASSERT(true, "Rate_Section is Illegal\n"); + break; + } + return rate_section; +} + +static u8 _rtl8723be_get_txpower_by_rate(struct ieee80211_hw *hw, + enum band_type band, + enum radio_path rfpath, u8 rate) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 shift = 0, rate_section, tx_num; + char tx_pwr_diff = 0; + + rate_section = _rtl8723be_phy_get_ratesection_intxpower_byrate(rfpath, + rate); + tx_num = RF_TX_NUM_NONIMPLEMENT; + + if (tx_num == RF_TX_NUM_NONIMPLEMENT) { + if (rate >= DESC92C_RATEMCS8 && rate <= DESC92C_RATEMCS15) + tx_num = RF_2TX; + else + tx_num = RF_1TX; + } + + switch (rate) { + case DESC92C_RATE6M: + case DESC92C_RATE24M: + case DESC92C_RATEMCS0: + case DESC92C_RATEMCS4: + case DESC92C_RATEMCS8: + case DESC92C_RATEMCS12: + shift = 0; + break; + case DESC92C_RATE1M: + case DESC92C_RATE2M: + case DESC92C_RATE9M: + case DESC92C_RATE36M: + case DESC92C_RATEMCS1: + case DESC92C_RATEMCS5: + case DESC92C_RATEMCS9: + case DESC92C_RATEMCS13: + shift = 8; + break; + case DESC92C_RATE5_5M: + case DESC92C_RATE12M: + case DESC92C_RATE48M: + case DESC92C_RATEMCS2: + case DESC92C_RATEMCS6: + case DESC92C_RATEMCS10: + case DESC92C_RATEMCS14: + shift = 16; + break; + case DESC92C_RATE11M: + case DESC92C_RATE18M: + case DESC92C_RATE54M: + case DESC92C_RATEMCS3: + case DESC92C_RATEMCS7: + case DESC92C_RATEMCS11: + case DESC92C_RATEMCS15: + shift = 24; + break; + default: + RT_ASSERT(true, "Rate_Section is Illegal\n"); + break; + } + tx_pwr_diff = (u8)(rtlphy->tx_power_by_rate_offset[band][rfpath][tx_num] + [rate_section] >> shift) & 0xff; + + return tx_pwr_diff; +} + +static u8 _rtl8723be_get_txpower_index(struct ieee80211_hw *hw, u8 path, + u8 rate, u8 bandwidth, u8 channel) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + u8 index = (channel - 1); + u8 txpower; + u8 power_diff_byrate = 0; + + if (channel > 14 || channel < 1) { + index = 0; + RT_TRACE(rtlpriv, COMP_POWER_TRACKING, DBG_LOUD, + "Illegal channel!\n"); + } + if (RTL8723E_RX_HAL_IS_CCK_RATE(rate)) + txpower = rtlefuse->txpwrlevel_cck[path][index]; + else if (DESC92C_RATE6M <= rate) + txpower = rtlefuse->txpwrlevel_ht40_1s[path][index]; + else + RT_TRACE(rtlpriv, COMP_POWER_TRACKING, DBG_LOUD, + "invalid rate\n"); + + if (DESC92C_RATE6M <= rate && rate <= DESC92C_RATE54M && + !RTL8723E_RX_HAL_IS_CCK_RATE(rate)) + txpower += rtlefuse->txpwr_legacyhtdiff[0][TX_1S]; + + if (bandwidth == HT_CHANNEL_WIDTH_20) { + if (DESC92C_RATEMCS0 <= rate && rate <= DESC92C_RATEMCS15) + txpower += rtlefuse->txpwr_ht20diff[0][TX_1S]; + if (DESC92C_RATEMCS8 <= rate && rate <= DESC92C_RATEMCS15) + txpower += rtlefuse->txpwr_ht20diff[0][TX_2S]; + } else if (bandwidth == HT_CHANNEL_WIDTH_20_40) { + if (DESC92C_RATEMCS0 <= rate && rate <= DESC92C_RATEMCS15) + txpower += rtlefuse->txpwr_ht40diff[0][TX_1S]; + if (DESC92C_RATEMCS8 <= rate && rate <= DESC92C_RATEMCS15) + txpower += rtlefuse->txpwr_ht40diff[0][TX_2S]; + } + if (rtlefuse->eeprom_regulatory != 2) + power_diff_byrate = _rtl8723be_get_txpower_by_rate(hw, + BAND_ON_2_4G, + path, rate); + + txpower += power_diff_byrate; + + if (txpower > MAX_POWER_INDEX) + txpower = MAX_POWER_INDEX; + + return txpower; +} + +static void _rtl8723be_phy_set_txpower_index(struct ieee80211_hw *hw, + u8 power_index, u8 path, u8 rate) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + if (path == RF90_PATH_A) { + switch (rate) { + case DESC92C_RATE1M: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_CCK1_MCS32, + MASKBYTE1, power_index); + break; + case DESC92C_RATE2M: + rtl8723_phy_set_bb_reg(hw, RTXAGC_B_CCK11_A_CCK2_11, + MASKBYTE1, power_index); + break; + case DESC92C_RATE5_5M: + rtl8723_phy_set_bb_reg(hw, RTXAGC_B_CCK11_A_CCK2_11, + MASKBYTE2, power_index); + break; + case DESC92C_RATE11M: + rtl8723_phy_set_bb_reg(hw, RTXAGC_B_CCK11_A_CCK2_11, + MASKBYTE3, power_index); + break; + case DESC92C_RATE6M: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_RATE18_06, + MASKBYTE0, power_index); + break; + case DESC92C_RATE9M: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_RATE18_06, + MASKBYTE1, power_index); + break; + case DESC92C_RATE12M: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_RATE18_06, + MASKBYTE2, power_index); + break; + case DESC92C_RATE18M: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_RATE18_06, + MASKBYTE3, power_index); + break; + case DESC92C_RATE24M: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_RATE54_24, + MASKBYTE0, power_index); + break; + case DESC92C_RATE36M: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_RATE54_24, + MASKBYTE1, power_index); + break; + case DESC92C_RATE48M: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_RATE54_24, + MASKBYTE2, power_index); + break; + case DESC92C_RATE54M: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_RATE54_24, + MASKBYTE3, power_index); + break; + case DESC92C_RATEMCS0: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_MCS03_MCS00, + MASKBYTE0, power_index); + break; + case DESC92C_RATEMCS1: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_MCS03_MCS00, + MASKBYTE1, power_index); + break; + case DESC92C_RATEMCS2: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_MCS03_MCS00, + MASKBYTE2, power_index); + break; + case DESC92C_RATEMCS3: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_MCS03_MCS00, + MASKBYTE3, power_index); + break; + case DESC92C_RATEMCS4: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_MCS07_MCS04, + MASKBYTE0, power_index); + break; + case DESC92C_RATEMCS5: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_MCS07_MCS04, + MASKBYTE1, power_index); + break; + case DESC92C_RATEMCS6: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_MCS07_MCS04, + MASKBYTE2, power_index); + break; + case DESC92C_RATEMCS7: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_MCS07_MCS04, + MASKBYTE3, power_index); + break; + case DESC92C_RATEMCS8: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_MCS11_MCS08, + MASKBYTE0, power_index); + break; + case DESC92C_RATEMCS9: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_MCS11_MCS08, + MASKBYTE1, power_index); + break; + case DESC92C_RATEMCS10: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_MCS11_MCS08, + MASKBYTE2, power_index); + break; + case DESC92C_RATEMCS11: + rtl8723_phy_set_bb_reg(hw, RTXAGC_A_MCS11_MCS08, + MASKBYTE3, power_index); + break; + default: + RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD, + "Invalid Rate!!\n"); + break; + } + } else { + RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD, "Invalid RFPath!!\n"); + } +} + +void rtl8723be_phy_set_txpower_level(struct ieee80211_hw *hw, u8 channel) +{ + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + u8 cck_rates[] = {DESC92C_RATE1M, DESC92C_RATE2M, + DESC92C_RATE5_5M, DESC92C_RATE11M}; + u8 ofdm_rates[] = {DESC92C_RATE6M, DESC92C_RATE9M, + DESC92C_RATE12M, DESC92C_RATE18M, + DESC92C_RATE24M, DESC92C_RATE36M, + DESC92C_RATE48M, DESC92C_RATE54M}; + u8 ht_rates_1t[] = {DESC92C_RATEMCS0, DESC92C_RATEMCS1, + DESC92C_RATEMCS2, DESC92C_RATEMCS3, + DESC92C_RATEMCS4, DESC92C_RATEMCS5, + DESC92C_RATEMCS6, DESC92C_RATEMCS7}; + u8 i, size; + u8 power_index; + + if (!rtlefuse->txpwr_fromeprom) + return; + + size = sizeof(cck_rates) / sizeof(u8); + for (i = 0; i < size; i++) { + power_index = _rtl8723be_get_txpower_index(hw, RF90_PATH_A, + cck_rates[i], + rtl_priv(hw)->phy.current_chan_bw, + channel); + _rtl8723be_phy_set_txpower_index(hw, power_index, RF90_PATH_A, + cck_rates[i]); + } + size = sizeof(ofdm_rates) / sizeof(u8); + for (i = 0; i < size; i++) { + power_index = _rtl8723be_get_txpower_index(hw, RF90_PATH_A, + ofdm_rates[i], + rtl_priv(hw)->phy.current_chan_bw, + channel); + _rtl8723be_phy_set_txpower_index(hw, power_index, RF90_PATH_A, + ofdm_rates[i]); + } + size = sizeof(ht_rates_1t) / sizeof(u8); + for (i = 0; i < size; i++) { + power_index = _rtl8723be_get_txpower_index(hw, RF90_PATH_A, + ht_rates_1t[i], + rtl_priv(hw)->phy.current_chan_bw, + channel); + _rtl8723be_phy_set_txpower_index(hw, power_index, RF90_PATH_A, + ht_rates_1t[i]); + } +} + +void rtl8723be_phy_scan_operation_backup(struct ieee80211_hw *hw, u8 operation) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + enum io_type iotype; + + if (!is_hal_stop(rtlhal)) { + switch (operation) { + case SCAN_OPT_BACKUP: + iotype = IO_CMD_PAUSE_DM_BY_SCAN; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_IO_CMD, + (u8 *)&iotype); + break; + case SCAN_OPT_RESTORE: + iotype = IO_CMD_RESUME_DM_BY_SCAN; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_IO_CMD, + (u8 *)&iotype); + break; + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "Unknown Scan Backup operation.\n"); + break; + } + } +} + +void rtl8723be_phy_set_bw_mode_callback(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + u8 reg_bw_opmode; + u8 reg_prsr_rsc; + + RT_TRACE(rtlpriv, COMP_SCAN, DBG_TRACE, + "Switch to %s bandwidth\n", + rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20 ? + "20MHz" : "40MHz"); + + if (is_hal_stop(rtlhal)) { + rtlphy->set_bwmode_inprogress = false; + return; + } + + reg_bw_opmode = rtl_read_byte(rtlpriv, REG_BWOPMODE); + reg_prsr_rsc = rtl_read_byte(rtlpriv, REG_RRSR + 2); + + switch (rtlphy->current_chan_bw) { + case HT_CHANNEL_WIDTH_20: + reg_bw_opmode |= BW_OPMODE_20MHZ; + rtl_write_byte(rtlpriv, REG_BWOPMODE, reg_bw_opmode); + break; + case HT_CHANNEL_WIDTH_20_40: + reg_bw_opmode &= ~BW_OPMODE_20MHZ; + rtl_write_byte(rtlpriv, REG_BWOPMODE, reg_bw_opmode); + reg_prsr_rsc = (reg_prsr_rsc & 0x90) | + (mac->cur_40_prime_sc << 5); + rtl_write_byte(rtlpriv, REG_RRSR + 2, reg_prsr_rsc); + break; + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "unknown bandwidth: %#X\n", rtlphy->current_chan_bw); + break; + } + + switch (rtlphy->current_chan_bw) { + case HT_CHANNEL_WIDTH_20: + rtl_set_bbreg(hw, RFPGA0_RFMOD, BRFMOD, 0x0); + rtl_set_bbreg(hw, RFPGA1_RFMOD, BRFMOD, 0x0); + break; + case HT_CHANNEL_WIDTH_20_40: + rtl_set_bbreg(hw, RFPGA0_RFMOD, BRFMOD, 0x1); + rtl_set_bbreg(hw, RFPGA1_RFMOD, BRFMOD, 0x1); + rtl_set_bbreg(hw, RCCK0_SYSTEM, BCCK_SIDEBAND, + (mac->cur_40_prime_sc >> 1)); + rtl_set_bbreg(hw, ROFDM1_LSTF, 0xC00, mac->cur_40_prime_sc); + rtl_set_bbreg(hw, 0x818, (BIT(26) | BIT(27)), + (mac->cur_40_prime_sc == + HAL_PRIME_CHNL_OFFSET_LOWER) ? 2 : 1); + break; + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "unknown bandwidth: %#X\n", rtlphy->current_chan_bw); + break; + } + rtl8723be_phy_rf6052_set_bandwidth(hw, rtlphy->current_chan_bw); + rtlphy->set_bwmode_inprogress = false; + RT_TRACE(rtlpriv, COMP_SCAN, DBG_LOUD, "\n"); +} + +void rtl8723be_phy_set_bw_mode(struct ieee80211_hw *hw, + enum nl80211_channel_type ch_type) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 tmp_bw = rtlphy->current_chan_bw; + + if (rtlphy->set_bwmode_inprogress) + return; + rtlphy->set_bwmode_inprogress = true; + if ((!is_hal_stop(rtlhal)) && !(RT_CANNOT_IO(hw))) { + rtl8723be_phy_set_bw_mode_callback(hw); + } else { + RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, + "false driver sleep or unload\n"); + rtlphy->set_bwmode_inprogress = false; + rtlphy->current_chan_bw = tmp_bw; + } +} + +void rtl8723be_phy_sw_chnl_callback(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u32 delay; + + RT_TRACE(rtlpriv, COMP_SCAN, DBG_TRACE, + "switch to channel%d\n", rtlphy->current_channel); + if (is_hal_stop(rtlhal)) + return; + do { + if (!rtlphy->sw_chnl_inprogress) + break; + if (!rtl8723be_phy_sw_chn_step_by_step(hw, + rtlphy->current_channel, + &rtlphy->sw_chnl_stage, + &rtlphy->sw_chnl_step, + &delay)) { + if (delay > 0) + mdelay(delay); + else + continue; + } else { + rtlphy->sw_chnl_inprogress = false; + } + break; + } while (true); + RT_TRACE(rtlpriv, COMP_SCAN, DBG_TRACE, "\n"); +} + +u8 rtl8723be_phy_sw_chnl(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + + if (rtlphy->sw_chnl_inprogress) + return 0; + if (rtlphy->set_bwmode_inprogress) + return 0; + RT_ASSERT((rtlphy->current_channel <= 14), + "WIRELESS_MODE_G but channel>14"); + rtlphy->sw_chnl_inprogress = true; + rtlphy->sw_chnl_stage = 0; + rtlphy->sw_chnl_step = 0; + if (!(is_hal_stop(rtlhal)) && !(RT_CANNOT_IO(hw))) { + rtl8723be_phy_sw_chnl_callback(hw); + RT_TRACE(rtlpriv, COMP_CHAN, DBG_LOUD, + "sw_chnl_inprogress false schdule " + "workitem current channel %d\n", + rtlphy->current_channel); + rtlphy->sw_chnl_inprogress = false; + } else { + RT_TRACE(rtlpriv, COMP_CHAN, DBG_LOUD, + "sw_chnl_inprogress false driver sleep or" + " unload\n"); + rtlphy->sw_chnl_inprogress = false; + } + return 1; +} + +static bool rtl8723be_phy_sw_chn_step_by_step(struct ieee80211_hw *hw, + u8 channel, u8 *stage, + u8 *step, u32 *delay) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct swchnlcmd precommoncmd[MAX_PRECMD_CNT]; + u32 precommoncmdcnt; + struct swchnlcmd postcommoncmd[MAX_POSTCMD_CNT]; + u32 postcommoncmdcnt; + struct swchnlcmd rfdependcmd[MAX_RFDEPENDCMD_CNT]; + u32 rfdependcmdcnt; + struct swchnlcmd *currentcmd = NULL; + u8 rfpath; + u8 num_total_rfpath = rtlphy->num_total_rfpath; + + precommoncmdcnt = 0; + rtl8723_phy_set_sw_chnl_cmdarray(precommoncmd, precommoncmdcnt++, + MAX_PRECMD_CNT, + CMDID_SET_TXPOWEROWER_LEVEL, + 0, 0, 0); + rtl8723_phy_set_sw_chnl_cmdarray(precommoncmd, precommoncmdcnt++, + MAX_PRECMD_CNT, CMDID_END, 0, 0, 0); + postcommoncmdcnt = 0; + rtl8723_phy_set_sw_chnl_cmdarray(postcommoncmd, postcommoncmdcnt++, + MAX_POSTCMD_CNT, CMDID_END, + 0, 0, 0); + rfdependcmdcnt = 0; + + RT_ASSERT((channel >= 1 && channel <= 14), + "illegal channel for Zebra: %d\n", channel); + + rtl8723_phy_set_sw_chnl_cmdarray(rfdependcmd, rfdependcmdcnt++, + MAX_RFDEPENDCMD_CNT, + CMDID_RF_WRITEREG, + RF_CHNLBW, channel, 10); + + rtl8723_phy_set_sw_chnl_cmdarray(rfdependcmd, rfdependcmdcnt++, + MAX_RFDEPENDCMD_CNT, + CMDID_END, 0, 0, 0); + + do { + switch (*stage) { + case 0: + currentcmd = &precommoncmd[*step]; + break; + case 1: + currentcmd = &rfdependcmd[*step]; + break; + case 2: + currentcmd = &postcommoncmd[*step]; + break; + } + + if (currentcmd->cmdid == CMDID_END) { + if ((*stage) == 2) { + return true; + } else { + (*stage)++; + (*step) = 0; + continue; + } + } + + switch (currentcmd->cmdid) { + case CMDID_SET_TXPOWEROWER_LEVEL: + rtl8723be_phy_set_txpower_level(hw, channel); + break; + case CMDID_WRITEPORT_ULONG: + rtl_write_dword(rtlpriv, currentcmd->para1, + currentcmd->para2); + break; + case CMDID_WRITEPORT_USHORT: + rtl_write_word(rtlpriv, currentcmd->para1, + (u16) currentcmd->para2); + break; + case CMDID_WRITEPORT_UCHAR: + rtl_write_byte(rtlpriv, currentcmd->para1, + (u8) currentcmd->para2); + break; + case CMDID_RF_WRITEREG: + for (rfpath = 0; rfpath < num_total_rfpath; rfpath++) { + rtlphy->rfreg_chnlval[rfpath] = + ((rtlphy->rfreg_chnlval[rfpath] & + 0xfffffc00) | currentcmd->para2); + + rtl_set_rfreg(hw, (enum radio_path)rfpath, + currentcmd->para1, + RFREG_OFFSET_MASK, + rtlphy->rfreg_chnlval[rfpath]); + } + break; + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "switch case not process\n"); + break; + } + + break; + } while (true); + + (*delay) = currentcmd->msdelay; + (*step)++; + return false; +} + +static u8 _rtl8723be_phy_path_a_iqk(struct ieee80211_hw *hw, bool config_pathb) +{ + u32 reg_eac, reg_e94, reg_e9c, reg_ea4; + u8 result = 0x00; + + rtl_set_bbreg(hw, 0xe30, MASKDWORD, 0x10008c1c); + rtl_set_bbreg(hw, 0xe34, MASKDWORD, 0x30008c1c); + rtl_set_bbreg(hw, 0xe38, MASKDWORD, 0x8214032a); + rtl_set_bbreg(hw, 0xe3c, MASKDWORD, 0x28160000); + + rtl_set_bbreg(hw, 0xe4c, MASKDWORD, 0x00462911); + rtl_set_bbreg(hw, 0xe48, MASKDWORD, 0xf9000000); + rtl_set_bbreg(hw, 0xe48, MASKDWORD, 0xf8000000); + + mdelay(IQK_DELAY_TIME); + + reg_eac = rtl_get_bbreg(hw, 0xeac, MASKDWORD); + reg_e94 = rtl_get_bbreg(hw, 0xe94, MASKDWORD); + reg_e9c = rtl_get_bbreg(hw, 0xe9c, MASKDWORD); + reg_ea4 = rtl_get_bbreg(hw, 0xea4, MASKDWORD); + + if (!(reg_eac & BIT(28)) && + (((reg_e94 & 0x03FF0000) >> 16) != 0x142) && + (((reg_e9c & 0x03FF0000) >> 16) != 0x42)) + result |= 0x01; + return result; +} + +static bool phy_similarity_cmp(struct ieee80211_hw *hw, long result[][8], + u8 c1, u8 c2) +{ + u32 i, j, diff, simularity_bitmap, bound; + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + + u8 final_candidate[2] = { 0xFF, 0xFF }; + bool bresult = true, is2t = IS_92C_SERIAL(rtlhal->version); + + if (is2t) + bound = 8; + else + bound = 4; + + simularity_bitmap = 0; + + for (i = 0; i < bound; i++) { + diff = (result[c1][i] > result[c2][i]) ? + (result[c1][i] - result[c2][i]) : + (result[c2][i] - result[c1][i]); + + if (diff > MAX_TOLERANCE) { + if ((i == 2 || i == 6) && !simularity_bitmap) { + if (result[c1][i] + result[c1][i + 1] == 0) + final_candidate[(i / 4)] = c2; + else if (result[c2][i] + result[c2][i + 1] == 0) + final_candidate[(i / 4)] = c1; + else + simularity_bitmap |= (1 << i); + } else { + simularity_bitmap |= (1 << i); + } + } + } + + if (simularity_bitmap == 0) { + for (i = 0; i < (bound / 4); i++) { + if (final_candidate[i] != 0xFF) { + for (j = i * 4; j < (i + 1) * 4 - 2; j++) + result[3][j] = + result[final_candidate[i]][j]; + bresult = false; + } + } + return bresult; + } else if (!(simularity_bitmap & 0x0F)) { + for (i = 0; i < 4; i++) + result[3][i] = result[c1][i]; + return false; + } else if (!(simularity_bitmap & 0xF0) && is2t) { + for (i = 4; i < 8; i++) + result[3][i] = result[c1][i]; + return false; + } else { + return false; + } +} + +static void _rtl8723be_phy_iq_calibrate(struct ieee80211_hw *hw, + long result[][8], u8 t, bool is2t) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u32 i; + u8 patha_ok; + u32 adda_reg[IQK_ADDA_REG_NUM] = { + 0x85c, 0xe6c, 0xe70, 0xe74, + 0xe78, 0xe7c, 0xe80, 0xe84, + 0xe88, 0xe8c, 0xed0, 0xed4, + 0xed8, 0xedc, 0xee0, 0xeec + }; + + u32 iqk_mac_reg[IQK_MAC_REG_NUM] = { + 0x522, 0x550, 0x551, 0x040 + }; + u32 iqk_bb_reg[IQK_BB_REG_NUM] = { + ROFDM0_TRXPATHENABLE, ROFDM0_TRMUXPAR, + RFPGA0_XCD_RFINTERFACESW, 0xb68, 0xb6c, + 0x870, 0x860, + 0x864, 0x800 + }; + const u32 retrycount = 2; + u32 path_sel_bb, path_sel_rf; + u8 tmp_reg_c50, tmp_reg_c58; + + tmp_reg_c50 = rtl_get_bbreg(hw, 0xc50, MASKBYTE0); + tmp_reg_c58 = rtl_get_bbreg(hw, 0xc58, MASKBYTE0); + + if (t == 0) { + rtl8723_save_adda_registers(hw, adda_reg, + rtlphy->adda_backup, 16); + rtl8723_phy_save_mac_registers(hw, iqk_mac_reg, + rtlphy->iqk_mac_backup); + rtl8723_save_adda_registers(hw, iqk_bb_reg, + rtlphy->iqk_bb_backup, + IQK_BB_REG_NUM); + } + rtl8723_phy_path_adda_on(hw, adda_reg, true, is2t); + if (t == 0) { + rtlphy->rfpi_enable = (u8) rtl_get_bbreg(hw, + RFPGA0_XA_HSSIPARAMETER1, + BIT(8)); + } + if (!rtlphy->rfpi_enable) + rtl8723_phy_pi_mode_switch(hw, true); + + path_sel_bb = rtl_get_bbreg(hw, 0x948, MASKDWORD); + path_sel_rf = rtl_get_rfreg(hw, RF90_PATH_A, 0xb0, 0xfffff); + + /*BB Setting*/ + rtl_set_bbreg(hw, 0x800, BIT(24), 0x00); + rtl_set_bbreg(hw, 0xc04, MASKDWORD, 0x03a05600); + rtl_set_bbreg(hw, 0xc08, MASKDWORD, 0x000800e4); + rtl_set_bbreg(hw, 0x874, MASKDWORD, 0x22204000); + + rtl_set_bbreg(hw, 0x870, BIT(10), 0x01); + rtl_set_bbreg(hw, 0x870, BIT(26), 0x01); + rtl_set_bbreg(hw, 0x860, BIT(10), 0x00); + rtl_set_bbreg(hw, 0x864, BIT(10), 0x00); + + if (is2t) + rtl_set_rfreg(hw, RF90_PATH_B, 0x00, MASKDWORD, 0x10000); + rtl8723_phy_mac_setting_calibration(hw, iqk_mac_reg, + rtlphy->iqk_mac_backup); + rtl_set_bbreg(hw, 0xb68, MASKDWORD, 0x0f600000); + + rtl_set_bbreg(hw, 0xe28, MASKDWORD, 0x80800000); + rtl_set_bbreg(hw, 0xe40, MASKDWORD, 0x01007c00); + rtl_set_bbreg(hw, 0xe44, MASKDWORD, 0x81004800); + for (i = 0; i < retrycount; i++) { + patha_ok = _rtl8723be_phy_path_a_iqk(hw, is2t); + if (patha_ok == 0x01) { + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "Path A Tx IQK Success!!\n"); + result[t][0] = (rtl_get_bbreg(hw, 0xe94, MASKDWORD) & + 0x3FF0000) >> 16; + result[t][1] = (rtl_get_bbreg(hw, 0xe9c, MASKDWORD) & + 0x3FF0000) >> 16; + break; + } + } + + if (0 == patha_ok) + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "Path A IQK Success!!\n"); + if (is2t) { + rtl8723_phy_path_a_standby(hw); + rtl8723_phy_path_adda_on(hw, adda_reg, false, is2t); + } + + rtl_set_bbreg(hw, 0xe28, MASKDWORD, 0); + + if (t != 0) { + if (!rtlphy->rfpi_enable) + rtl8723_phy_pi_mode_switch(hw, false); + rtl8723_phy_reload_adda_registers(hw, adda_reg, + rtlphy->adda_backup, 16); + rtl8723_phy_reload_mac_registers(hw, iqk_mac_reg, + rtlphy->iqk_mac_backup); + rtl8723_phy_reload_adda_registers(hw, iqk_bb_reg, + rtlphy->iqk_bb_backup, + IQK_BB_REG_NUM); + + rtl_set_bbreg(hw, 0x948, MASKDWORD, path_sel_bb); + rtl_set_rfreg(hw, RF90_PATH_B, 0xb0, 0xfffff, path_sel_rf); + + rtl_set_bbreg(hw, 0xc50, MASKBYTE0, 0x50); + rtl_set_bbreg(hw, 0xc50, MASKBYTE0, tmp_reg_c50); + if (is2t) { + rtl_set_bbreg(hw, 0xc58, MASKBYTE0, 0x50); + rtl_set_bbreg(hw, 0xc58, MASKBYTE0, tmp_reg_c58); + } + rtl_set_bbreg(hw, 0xe30, MASKDWORD, 0x01008c00); + rtl_set_bbreg(hw, 0xe34, MASKDWORD, 0x01008c00); + } + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "8723be IQK Finish!!\n"); +} + +static void _rtl8723be_phy_lc_calibrate(struct ieee80211_hw *hw, bool is2t) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 tmpreg; + u32 rf_a_mode = 0, rf_b_mode = 0, lc_cal; + + tmpreg = rtl_read_byte(rtlpriv, 0xd03); + + if ((tmpreg & 0x70) != 0) + rtl_write_byte(rtlpriv, 0xd03, tmpreg & 0x8F); + else + rtl_write_byte(rtlpriv, REG_TXPAUSE, 0xFF); + + if ((tmpreg & 0x70) != 0) { + rf_a_mode = rtl_get_rfreg(hw, RF90_PATH_A, 0x00, MASK12BITS); + + if (is2t) + rf_b_mode = rtl_get_rfreg(hw, RF90_PATH_B, 0x00, + MASK12BITS); + + rtl_set_rfreg(hw, RF90_PATH_A, 0x00, MASK12BITS, + (rf_a_mode & 0x8FFFF) | 0x10000); + + if (is2t) + rtl_set_rfreg(hw, RF90_PATH_B, 0x00, MASK12BITS, + (rf_b_mode & 0x8FFFF) | 0x10000); + } + lc_cal = rtl_get_rfreg(hw, RF90_PATH_A, 0x18, MASK12BITS); + + rtl_set_rfreg(hw, RF90_PATH_A, 0xb0, RFREG_OFFSET_MASK, 0xdfbe0); + rtl_set_rfreg(hw, RF90_PATH_A, 0x18, MASK12BITS, 0x8c0a); + + mdelay(100); + + rtl_set_rfreg(hw, RF90_PATH_A, 0xb0, RFREG_OFFSET_MASK, 0xdffe0); + + if ((tmpreg & 0x70) != 0) { + rtl_write_byte(rtlpriv, 0xd03, tmpreg); + rtl_set_rfreg(hw, RF90_PATH_A, 0x00, MASK12BITS, rf_a_mode); + + if (is2t) + rtl_set_rfreg(hw, RF90_PATH_B, 0x00, + MASK12BITS, rf_b_mode); + } else { + rtl_write_byte(rtlpriv, REG_TXPAUSE, 0x00); + } + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "\n"); +} + +static void _rtl8723be_phy_set_rfpath_switch(struct ieee80211_hw *hw, + bool bmain, bool is2t) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, "\n"); + + if (is_hal_stop(rtlhal)) { + u8 u1btmp; + u1btmp = rtl_read_byte(rtlpriv, REG_LEDCFG0); + rtl_write_byte(rtlpriv, REG_LEDCFG0, u1btmp | BIT(7)); + rtl_set_bbreg(hw, RFPGA0_XAB_RFPARAMETER, BIT(13), 0x01); + } + if (is2t) { + if (bmain) + rtl_set_bbreg(hw, RFPGA0_XB_RFINTERFACEOE, + BIT(5) | BIT(6), 0x1); + else + rtl_set_bbreg(hw, RFPGA0_XB_RFINTERFACEOE, + BIT(5) | BIT(6), 0x2); + } else { + rtl_set_bbreg(hw, RFPGA0_XAB_RFINTERFACESW, BIT(8) | BIT(9), 0); + rtl_set_bbreg(hw, 0x914, MASKLWORD, 0x0201); + + /* We use the RF definition of MAIN and AUX, + * left antenna and right antenna repectively. + * Default output at AUX. + */ + if (bmain) { + rtl_set_bbreg(hw, RFPGA0_XA_RFINTERFACEOE, + BIT(14) | BIT(13) | BIT(12), 0); + rtl_set_bbreg(hw, RFPGA0_XB_RFINTERFACEOE, + BIT(5) | BIT(4) | BIT(3), 0); + if (rtlefuse->antenna_div_type == CGCS_RX_HW_ANTDIV) + rtl_set_bbreg(hw, CONFIG_RAM64X16, BIT(31), 0); + } else { + rtl_set_bbreg(hw, RFPGA0_XA_RFINTERFACEOE, + BIT(14) | BIT(13) | BIT(12), 1); + rtl_set_bbreg(hw, RFPGA0_XB_RFINTERFACEOE, + BIT(5) | BIT(4) | BIT(3), 1); + if (rtlefuse->antenna_div_type == CGCS_RX_HW_ANTDIV) + rtl_set_bbreg(hw, CONFIG_RAM64X16, BIT(31), 1); + } + } +} + +#undef IQK_ADDA_REG_NUM +#undef IQK_DELAY_TIME + +void rtl8723be_phy_iq_calibrate(struct ieee80211_hw *hw, bool recovery) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + long result[4][8]; + u8 i, final_candidate; + bool patha_ok, pathb_ok; + long reg_e94, reg_e9c, reg_ea4, reg_eac, reg_eb4, reg_ebc, reg_ec4, + reg_ecc, reg_tmp = 0; + bool is12simular, is13simular, is23simular; + u32 iqk_bb_reg[9] = { + ROFDM0_XARXIQIMBALANCE, + ROFDM0_XBRXIQIMBALANCE, + ROFDM0_ECCATHRESHOLD, + ROFDM0_AGCRSSITABLE, + ROFDM0_XATXIQIMBALANCE, + ROFDM0_XBTXIQIMBALANCE, + ROFDM0_XCTXAFE, + ROFDM0_XDTXAFE, + ROFDM0_RXIQEXTANTA + }; + + if (recovery) { + rtl8723_phy_reload_adda_registers(hw, iqk_bb_reg, + rtlphy->iqk_bb_backup, 9); + return; + } + + for (i = 0; i < 8; i++) { + result[0][i] = 0; + result[1][i] = 0; + result[2][i] = 0; + result[3][i] = 0; + } + final_candidate = 0xff; + patha_ok = false; + pathb_ok = false; + is12simular = false; + is23simular = false; + is13simular = false; + for (i = 0; i < 3; i++) { + if (get_rf_type(rtlphy) == RF_2T2R) + _rtl8723be_phy_iq_calibrate(hw, result, i, true); + else + _rtl8723be_phy_iq_calibrate(hw, result, i, false); + if (i == 1) { + is12simular = phy_similarity_cmp(hw, result, 0, 1); + if (is12simular) { + final_candidate = 0; + break; + } + } + if (i == 2) { + is13simular = phy_similarity_cmp(hw, result, 0, 2); + if (is13simular) { + final_candidate = 0; + break; + } + is23simular = phy_similarity_cmp(hw, result, 1, 2); + if (is23simular) { + final_candidate = 1; + } else { + for (i = 0; i < 8; i++) + reg_tmp += result[3][i]; + + if (reg_tmp != 0) + final_candidate = 3; + else + final_candidate = 0xFF; + } + } + } + for (i = 0; i < 4; i++) { + reg_e94 = result[i][0]; + reg_e9c = result[i][1]; + reg_ea4 = result[i][2]; + reg_eac = result[i][3]; + reg_eb4 = result[i][4]; + reg_ebc = result[i][5]; + reg_ec4 = result[i][6]; + reg_ecc = result[i][7]; + } + if (final_candidate != 0xff) { + reg_e94 = result[final_candidate][0]; + rtlphy->reg_e94 = reg_e94; + reg_e9c = result[final_candidate][1]; + rtlphy->reg_e9c = reg_e9c; + reg_ea4 = result[final_candidate][2]; + reg_eac = result[final_candidate][3]; + reg_eb4 = result[final_candidate][4]; + rtlphy->reg_eb4 = reg_eb4; + reg_ebc = result[final_candidate][5]; + rtlphy->reg_ebc = reg_ebc; + reg_ec4 = result[final_candidate][6]; + reg_ecc = result[final_candidate][7]; + patha_ok = true; + pathb_ok = true; + } else { + rtlphy->reg_e94 = 0x100; + rtlphy->reg_eb4 = 0x100; + rtlphy->reg_e9c = 0x0; + rtlphy->reg_ebc = 0x0; + } + if (reg_e94 != 0) /*&&(reg_ea4 != 0) */ + rtl8723_phy_path_a_fill_iqk_matrix(hw, patha_ok, result, + final_candidate, + (reg_ea4 == 0)); + if (final_candidate != 0xFF) { + for (i = 0; i < IQK_MATRIX_REG_NUM; i++) + rtlphy->iqk_matrix[0].value[0][i] = + result[final_candidate][i]; + rtlphy->iqk_matrix[0].iqk_done = true; + } + rtl8723_save_adda_registers(hw, iqk_bb_reg, rtlphy->iqk_bb_backup, 9); +} + +void rtl8723be_phy_lc_calibrate(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_hal *rtlhal = &(rtlpriv->rtlhal); + u32 timeout = 2000, timecount = 0; + + while (rtlpriv->mac80211.act_scanning && timecount < timeout) { + udelay(50); + timecount += 50; + } + + rtlphy->lck_inprogress = true; + RTPRINT(rtlpriv, FINIT, INIT_EEPROM, + "LCK:Start!!! currentband %x delay %d ms\n", + rtlhal->current_bandtype, timecount); + + _rtl8723be_phy_lc_calibrate(hw, false); + + rtlphy->lck_inprogress = false; +} + +void rtl23b_phy_ap_calibrate(struct ieee80211_hw *hw, char delta) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + if (rtlphy->apk_done) + return; + + return; +} + +void rtl8723be_phy_set_rfpath_switch(struct ieee80211_hw *hw, bool bmain) +{ + _rtl8723be_phy_set_rfpath_switch(hw, bmain, false); +} + +static void rtl8723be_phy_set_io(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + RT_TRACE(rtlpriv, COMP_CMD, DBG_TRACE, + "--->Cmd(%#x), set_io_inprogress(%d)\n", + rtlphy->current_io_type, rtlphy->set_io_inprogress); + switch (rtlphy->current_io_type) { + case IO_CMD_RESUME_DM_BY_SCAN: + rtlpriv->dm_digtable.cur_igvalue = + rtlphy->initgain_backup.xaagccore1; + /*rtl92c_dm_write_dig(hw);*/ + rtl8723be_phy_set_txpower_level(hw, rtlphy->current_channel); + rtl_set_bbreg(hw, RCCK0_CCA, 0xff0000, 0x83); + break; + case IO_CMD_PAUSE_DM_BY_SCAN: + rtlphy->initgain_backup.xaagccore1 = + rtlpriv->dm_digtable.cur_igvalue; + rtlpriv->dm_digtable.cur_igvalue = 0x17; + rtl_set_bbreg(hw, RCCK0_CCA, 0xff0000, 0x40); + break; + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "switch case not process\n"); + break; + } + rtlphy->set_io_inprogress = false; + RT_TRACE(rtlpriv, COMP_CMD, DBG_TRACE, + "(%#x)\n", rtlphy->current_io_type); +} + +bool rtl8723be_phy_set_io_cmd(struct ieee80211_hw *hw, enum io_type iotype) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + bool postprocessing = false; + + RT_TRACE(rtlpriv, COMP_CMD, DBG_TRACE, + "-->IO Cmd(%#x), set_io_inprogress(%d)\n", + iotype, rtlphy->set_io_inprogress); + do { + switch (iotype) { + case IO_CMD_RESUME_DM_BY_SCAN: + RT_TRACE(rtlpriv, COMP_CMD, DBG_TRACE, + "[IO CMD] Resume DM after scan.\n"); + postprocessing = true; + break; + case IO_CMD_PAUSE_DM_BY_SCAN: + RT_TRACE(rtlpriv, COMP_CMD, DBG_TRACE, + "[IO CMD] Pause DM before scan.\n"); + postprocessing = true; + break; + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "switch case not process\n"); + break; + } + } while (false); + if (postprocessing && !rtlphy->set_io_inprogress) { + rtlphy->set_io_inprogress = true; + rtlphy->current_io_type = iotype; + } else { + return false; + } + rtl8723be_phy_set_io(hw); + RT_TRACE(rtlpriv, COMP_CMD, DBG_TRACE, "IO Type(%#x)\n", iotype); + return true; +} + +static void rtl8723be_phy_set_rf_on(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtl_write_byte(rtlpriv, REG_SPS0_CTRL, 0x2b); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN, 0xE3); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN, 0xE2); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN, 0xE3); + rtl_write_byte(rtlpriv, REG_TXPAUSE, 0x00); +} + +static void _rtl8723be_phy_set_rf_sleep(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtl_write_byte(rtlpriv, REG_TXPAUSE, 0xFF); + rtl_set_rfreg(hw, RF90_PATH_A, 0x00, RFREG_OFFSET_MASK, 0x00); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN, 0xE2); + rtl_write_byte(rtlpriv, REG_SPS0_CTRL, 0x22); +} + +static bool _rtl8723be_phy_set_rf_power_state(struct ieee80211_hw *hw, + enum rf_pwrstate rfpwr_state) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + bool bresult = true; + u8 i, queue_id; + struct rtl8192_tx_ring *ring = NULL; + + switch (rfpwr_state) { + case ERFON: + if ((ppsc->rfpwr_state == ERFOFF) && + RT_IN_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_HALT_NIC)) { + bool rtstatus; + u32 initialize_count = 0; + do { + initialize_count++; + RT_TRACE(rtlpriv, COMP_RF, DBG_DMESG, + "IPS Set eRf nic enable\n"); + rtstatus = rtl_ps_enable_nic(hw); + } while (!rtstatus && (initialize_count < 10)); + RT_CLEAR_PS_LEVEL(ppsc, + RT_RF_OFF_LEVL_HALT_NIC); + } else { + RT_TRACE(rtlpriv, COMP_RF, DBG_DMESG, + "Set ERFON sleeped:%d ms\n", + jiffies_to_msecs(jiffies - + ppsc->last_sleep_jiffies)); + ppsc->last_awake_jiffies = jiffies; + rtl8723be_phy_set_rf_on(hw); + } + if (mac->link_state == MAC80211_LINKED) + rtlpriv->cfg->ops->led_control(hw, LED_CTL_LINK); + else + rtlpriv->cfg->ops->led_control(hw, LED_CTL_NO_LINK); + break; + case ERFOFF: + for (queue_id = 0, i = 0; + queue_id < RTL_PCI_MAX_TX_QUEUE_COUNT;) { + ring = &pcipriv->dev.tx_ring[queue_id]; + if (skb_queue_len(&ring->queue) == 0) { + queue_id++; + continue; + } else { + RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, + "eRf Off/Sleep: %d times " + "TcbBusyQueue[%d] =%d before " + "doze!\n", (i + 1), queue_id, + skb_queue_len(&ring->queue)); + + udelay(10); + i++; + } + if (i >= MAX_DOZE_WAITING_TIMES_9x) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, + "\n ERFSLEEP: %d times " + "TcbBusyQueue[%d] = %d !\n", + MAX_DOZE_WAITING_TIMES_9x, + queue_id, + skb_queue_len(&ring->queue)); + break; + } + } + + if (ppsc->reg_rfps_level & RT_RF_OFF_LEVL_HALT_NIC) { + RT_TRACE(rtlpriv, COMP_RF, DBG_DMESG, + "IPS Set eRf nic disable\n"); + rtl_ps_disable_nic(hw); + RT_SET_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_HALT_NIC); + } else { + if (ppsc->rfoff_reason == RF_CHANGE_BY_IPS) { + rtlpriv->cfg->ops->led_control(hw, + LED_CTL_NO_LINK); + } else { + rtlpriv->cfg->ops->led_control(hw, + LED_CTL_POWER_OFF); + } + } + break; + case ERFSLEEP: + if (ppsc->rfpwr_state == ERFOFF) + break; + for (queue_id = 0, i = 0; + queue_id < RTL_PCI_MAX_TX_QUEUE_COUNT;) { + ring = &pcipriv->dev.tx_ring[queue_id]; + if (skb_queue_len(&ring->queue) == 0) { + queue_id++; + continue; + } else { + RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, + "eRf Off/Sleep: %d times " + "TcbBusyQueue[%d] =%d before " + "doze!\n", (i + 1), queue_id, + skb_queue_len(&ring->queue)); + + udelay(10); + i++; + } + if (i >= MAX_DOZE_WAITING_TIMES_9x) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, + "\n ERFSLEEP: %d times " + "TcbBusyQueue[%d] = %d !\n", + MAX_DOZE_WAITING_TIMES_9x, + queue_id, + skb_queue_len(&ring->queue)); + break; + } + } + RT_TRACE(rtlpriv, COMP_RF, DBG_DMESG, + "Set ERFSLEEP awaked:%d ms\n", + jiffies_to_msecs(jiffies - + ppsc->last_awake_jiffies)); + ppsc->last_sleep_jiffies = jiffies; + _rtl8723be_phy_set_rf_sleep(hw); + break; + default: + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "switch case not process\n"); + bresult = false; + break; + } + if (bresult) + ppsc->rfpwr_state = rfpwr_state; + return bresult; +} + +bool rtl8723be_phy_set_rf_power_state(struct ieee80211_hw *hw, + enum rf_pwrstate rfpwr_state) +{ + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + + bool bresult = false; + + if (rfpwr_state == ppsc->rfpwr_state) + return bresult; + bresult = _rtl8723be_phy_set_rf_power_state(hw, rfpwr_state); + return bresult; +} --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/phy.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/phy.h @@ -0,0 +1,217 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8723BE_PHY_H__ +#define __RTL8723BE_PHY_H__ + +/*It must always set to 4, otherwise read efuse table secquence will be wrong.*/ +#define MAX_TX_COUNT 4 +#define TX_1S 0 +#define TX_2S 1 + +#define MAX_POWER_INDEX 0x3F + +#define MAX_PRECMD_CNT 16 +#define MAX_RFDEPENDCMD_CNT 16 +#define MAX_POSTCMD_CNT 16 + +#define MAX_DOZE_WAITING_TIMES_9x 64 + +#define RT_CANNOT_IO(hw) false +#define HIGHPOWER_RADIOA_ARRAYLEN 22 + +#define IQK_ADDA_REG_NUM 16 +#define IQK_BB_REG_NUM 9 +#define MAX_TOLERANCE 5 +#define IQK_DELAY_TIME 10 +#define index_mapping_NUM 15 + +#define APK_BB_REG_NUM 5 +#define APK_AFE_REG_NUM 16 +#define APK_CURVE_REG_NUM 4 +#define PATH_NUM 1 + +#define LOOP_LIMIT 5 +#define MAX_STALL_TIME 50 +#define ANTENNADIVERSITYVALUE 0x80 +#define MAX_TXPWR_IDX_NMODE_92S 63 +#define RESET_CNT_LIMIT 3 + +#define IQK_ADDA_REG_NUM 16 +#define IQK_MAC_REG_NUM 4 + +#define RF6052_MAX_PATH 2 + +#define CT_OFFSET_MAC_ADDR 0X16 + +#define CT_OFFSET_CCK_TX_PWR_IDX 0x5A +#define CT_OFFSET_HT401S_TX_PWR_IDX 0x60 +#define CT_OFFSET_HT402S_TX_PWR_IDX_DIFF 0x66 +#define CT_OFFSET_HT20_TX_PWR_IDX_DIFF 0x69 +#define CT_OFFSET_OFDM_TX_PWR_IDX_DIFF 0x6C + +#define CT_OFFSET_HT40_MAX_PWR_OFFSET 0x6F +#define CT_OFFSET_HT20_MAX_PWR_OFFSET 0x72 + +#define CT_OFFSET_CHANNEL_PLAH 0x75 +#define CT_OFFSET_THERMAL_METER 0x78 +#define CT_OFFSET_RF_OPTION 0x79 +#define CT_OFFSET_VERSION 0x7E +#define CT_OFFSET_CUSTOMER_ID 0x7F + +#define RTL92C_MAX_PATH_NUM 2 + +enum hw90_block_e { + HW90_BLOCK_MAC = 0, + HW90_BLOCK_PHY0 = 1, + HW90_BLOCK_PHY1 = 2, + HW90_BLOCK_RF = 3, + HW90_BLOCK_MAXIMUM = 4, +}; + +enum baseband_config_type { + BASEBAND_CONFIG_PHY_REG = 0, + BASEBAND_CONFIG_AGC_TAB = 1, +}; + +enum ra_offset_area { + RA_OFFSET_LEGACY_OFDM1, + RA_OFFSET_LEGACY_OFDM2, + RA_OFFSET_HT_OFDM1, + RA_OFFSET_HT_OFDM2, + RA_OFFSET_HT_OFDM3, + RA_OFFSET_HT_OFDM4, + RA_OFFSET_HT_CCK, +}; + +enum antenna_path { + ANTENNA_NONE, + ANTENNA_D, + ANTENNA_C, + ANTENNA_CD, + ANTENNA_B, + ANTENNA_BD, + ANTENNA_BC, + ANTENNA_BCD, + ANTENNA_A, + ANTENNA_AD, + ANTENNA_AC, + ANTENNA_ACD, + ANTENNA_AB, + ANTENNA_ABD, + ANTENNA_ABC, + ANTENNA_ABCD +}; + +struct r_antenna_select_ofdm { + u32 r_tx_antenna:4; + u32 r_ant_l:4; + u32 r_ant_non_ht:4; + u32 r_ant_ht1:4; + u32 r_ant_ht2:4; + u32 r_ant_ht_s1:4; + u32 r_ant_non_ht_s1:4; + u32 ofdm_txsc:2; + u32 reserved:2; +}; + +struct r_antenna_select_cck { + u8 r_cckrx_enable_2:2; + u8 r_cckrx_enable:2; + u8 r_ccktx_enable:4; +}; + + +struct efuse_contents { + u8 mac_addr[ETH_ALEN]; + u8 cck_tx_power_idx[6]; + u8 ht40_1s_tx_power_idx[6]; + u8 ht40_2s_tx_power_idx_diff[3]; + u8 ht20_tx_power_idx_diff[3]; + u8 ofdm_tx_power_idx_diff[3]; + u8 ht40_max_power_offset[3]; + u8 ht20_max_power_offset[3]; + u8 channel_plan; + u8 thermal_meter; + u8 rf_option[5]; + u8 version; + u8 oem_id; + u8 regulatory; +}; + +struct tx_power_struct { + u8 cck[RTL92C_MAX_PATH_NUM][CHANNEL_MAX_NUMBER]; + u8 ht40_1s[RTL92C_MAX_PATH_NUM][CHANNEL_MAX_NUMBER]; + u8 ht40_2s[RTL92C_MAX_PATH_NUM][CHANNEL_MAX_NUMBER]; + u8 ht20_diff[RTL92C_MAX_PATH_NUM][CHANNEL_MAX_NUMBER]; + u8 legacy_ht_diff[RTL92C_MAX_PATH_NUM][CHANNEL_MAX_NUMBER]; + u8 legacy_ht_txpowerdiff; + u8 groupht20[RTL92C_MAX_PATH_NUM][CHANNEL_MAX_NUMBER]; + u8 groupht40[RTL92C_MAX_PATH_NUM][CHANNEL_MAX_NUMBER]; + u8 pwrgroup_cnt; + u32 mcs_original_offset[4][16]; +}; + +enum _ANT_DIV_TYPE { + NO_ANTDIV = 0xFF, + CG_TRX_HW_ANTDIV = 0x01, + CGCS_RX_HW_ANTDIV = 0x02, + FIXED_HW_ANTDIV = 0x03, + CG_TRX_SMART_ANTDIV = 0x04, + CGCS_RX_SW_ANTDIV = 0x05, +}; + +u32 rtl8723be_phy_query_rf_reg(struct ieee80211_hw *hw, + enum radio_path rfpath, + u32 regaddr, u32 bitmask); +void rtl8723be_phy_set_rf_reg(struct ieee80211_hw *hw, + enum radio_path rfpath, + u32 regaddr, u32 bitmask, u32 data); +bool rtl8723be_phy_mac_config(struct ieee80211_hw *hw); +bool rtl8723be_phy_bb_config(struct ieee80211_hw *hw); +bool rtl8723be_phy_rf_config(struct ieee80211_hw *hw); +void rtl8723be_phy_get_hw_reg_originalvalue(struct ieee80211_hw *hw); +void rtl8723be_phy_get_txpower_level(struct ieee80211_hw *hw, + long *powerlevel); +void rtl8723be_phy_set_txpower_level(struct ieee80211_hw *hw, + u8 channel); +void rtl8723be_phy_scan_operation_backup(struct ieee80211_hw *hw, + u8 operation); +void rtl8723be_phy_set_bw_mode_callback(struct ieee80211_hw *hw); +void rtl8723be_phy_set_bw_mode(struct ieee80211_hw *hw, + enum nl80211_channel_type ch_type); +void rtl8723be_phy_sw_chnl_callback(struct ieee80211_hw *hw); +u8 rtl8723be_phy_sw_chnl(struct ieee80211_hw *hw); +void rtl8723be_phy_iq_calibrate(struct ieee80211_hw *hw, + bool b_recovery); +void rtl23b_phy_ap_calibrate(struct ieee80211_hw *hw, char delta); +void rtl8723be_phy_lc_calibrate(struct ieee80211_hw *hw); +void rtl8723be_phy_set_rfpath_switch(struct ieee80211_hw *hw, bool bmain); +bool rtl8723be_phy_config_rf_with_headerfile(struct ieee80211_hw *hw, + enum radio_path rfpath); +bool rtl8723be_phy_set_io_cmd(struct ieee80211_hw *hw, enum io_type iotype); +bool rtl8723be_phy_set_rf_power_state(struct ieee80211_hw *hw, + enum rf_pwrstate rfpwr_state); +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/pwrseq.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/pwrseq.c @@ -0,0 +1,106 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "pwrseqcmd.h" +#include "pwrseq.h" + + +/* drivers should parse below arrays and do the corresponding actions */ +/*3 Power on Array*/ +struct wlan_pwr_cfg rtl8723B_power_on_flow[RTL8723B_TRANS_CARDEMU_TO_ACT_STEPS + + RTL8723B_TRANS_END_STEPS] = { + RTL8723B_TRANS_CARDEMU_TO_ACT + RTL8723B_TRANS_END +}; + +/*3Radio off GPIO Array */ +struct wlan_pwr_cfg rtl8723B_radio_off_flow[RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8723B_TRANS_END_STEPS] = { + RTL8723B_TRANS_ACT_TO_CARDEMU + RTL8723B_TRANS_END +}; + +/*3Card Disable Array*/ +struct wlan_pwr_cfg rtl8723B_card_disable_flow + [RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8723B_TRANS_CARDEMU_TO_PDN_STEPS + + RTL8723B_TRANS_END_STEPS] = { + RTL8723B_TRANS_ACT_TO_CARDEMU + RTL8723B_TRANS_CARDEMU_TO_CARDDIS + RTL8723B_TRANS_END +}; + +/*3 Card Enable Array*/ +struct wlan_pwr_cfg rtl8723B_card_enable_flow + [RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8723B_TRANS_CARDEMU_TO_PDN_STEPS + + RTL8723B_TRANS_END_STEPS] = { + RTL8723B_TRANS_CARDDIS_TO_CARDEMU + RTL8723B_TRANS_CARDEMU_TO_ACT + RTL8723B_TRANS_END +}; + +/*3Suspend Array*/ +struct wlan_pwr_cfg rtl8723B_suspend_flow[RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8723B_TRANS_CARDEMU_TO_SUS_STEPS + + RTL8723B_TRANS_END_STEPS] = { + RTL8723B_TRANS_ACT_TO_CARDEMU + RTL8723B_TRANS_CARDEMU_TO_SUS + RTL8723B_TRANS_END +}; + +/*3 Resume Array*/ +struct wlan_pwr_cfg rtl8723B_resume_flow[RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8723B_TRANS_CARDEMU_TO_SUS_STEPS + + RTL8723B_TRANS_END_STEPS] = { + RTL8723B_TRANS_SUS_TO_CARDEMU + RTL8723B_TRANS_CARDEMU_TO_ACT + RTL8723B_TRANS_END +}; + +/*3HWPDN Array*/ +struct wlan_pwr_cfg rtl8723B_hwpdn_flow[RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8723B_TRANS_CARDEMU_TO_PDN_STEPS + + RTL8723B_TRANS_END_STEPS] = { + RTL8723B_TRANS_ACT_TO_CARDEMU + RTL8723B_TRANS_CARDEMU_TO_PDN + RTL8723B_TRANS_END +}; + +/*3 Enter LPS */ +struct wlan_pwr_cfg rtl8723B_enter_lps_flow[RTL8723B_TRANS_ACT_TO_LPS_STEPS + + RTL8723B_TRANS_END_STEPS] = { + /*FW behavior*/ + RTL8723B_TRANS_ACT_TO_LPS + RTL8723B_TRANS_END +}; + +/*3 Leave LPS */ +struct wlan_pwr_cfg rtl8723B_leave_lps_flow[RTL8723B_TRANS_LPS_TO_ACT_STEPS + + RTL8723B_TRANS_END_STEPS] = { + /*FW behavior*/ + RTL8723B_TRANS_LPS_TO_ACT + RTL8723B_TRANS_END +}; --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/pwrseq.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/pwrseq.h @@ -0,0 +1,305 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8723BE_PWRSEQ_H__ +#define __RTL8723BE_PWRSEQ_H__ + +#include "pwrseqcmd.h" +/* Check document WM-20130425-JackieLau-RTL8723B_Power_Architecture v05.vsd + * There are 6 HW Power States: + * 0: POFF--Power Off + * 1: PDN--Power Down + * 2: CARDEMU--Card Emulation + * 3: ACT--Active Mode + * 4: LPS--Low Power State + * 5: SUS--Suspend + * + * The transition from different states are defined below + * TRANS_CARDEMU_TO_ACT + * TRANS_ACT_TO_CARDEMU + * TRANS_CARDEMU_TO_SUS + * TRANS_SUS_TO_CARDEMU + * TRANS_CARDEMU_TO_PDN + * TRANS_ACT_TO_LPS + * TRANS_LPS_TO_ACT + * + * TRANS_END + */ +#define RTL8723B_TRANS_CARDEMU_TO_ACT_STEPS 23 +#define RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS 15 +#define RTL8723B_TRANS_CARDEMU_TO_SUS_STEPS 15 +#define RTL8723B_TRANS_SUS_TO_CARDEMU_STEPS 15 +#define RTL8723B_TRANS_CARDEMU_TO_PDN_STEPS 15 +#define RTL8723B_TRANS_PDN_TO_CARDEMU_STEPS 15 +#define RTL8723B_TRANS_ACT_TO_LPS_STEPS 15 +#define RTL8723B_TRANS_LPS_TO_ACT_STEPS 15 +#define RTL8723B_TRANS_END_STEPS 1 + +#define RTL8723B_TRANS_CARDEMU_TO_ACT \ + {0x0020, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, \ + PWR_INTF_USB_MSK | PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(0), BIT(0)}, \ + {0x0067, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, \ + PWR_INTF_USB_MSK | PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(4), 0}, \ + {0x0001, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, \ + PWR_INTF_USB_MSK | PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_DELAY, 1, PWRSEQ_DELAY_MS}, \ + {0x0000, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, \ + PWR_INTF_USB_MSK | PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(5), 0}, \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, (BIT(4)|BIT(3)|BIT(2)), 0}, \ + {0x0075, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(0) , 0}, \ + {0x0006, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_POLLING, BIT(1), BIT(1)}, \ + {0x0075, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(0) , BIT(0)}, \ + {0x0006, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(0), BIT(0)}, \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(7), 0}, \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, (BIT(4)|BIT(3)), 0}, \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(0), BIT(0)}, \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_POLLING, BIT(0), 0}, \ + {0x0010, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(6), BIT(6)}, \ + {0x0049, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(1), BIT(1)}, \ + {0x0063, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(1), BIT(1)}, \ + {0x0062, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(1), 0}, \ + {0x0058, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(0), BIT(0)}, \ + {0x005A, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(1), BIT(1)}, \ + {0x0068, PWR_CUT_TESTCHIP_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,\ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(3), BIT(3)}, \ + {0x0069, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(6), BIT(6)}, + +#define RTL8723B_TRANS_ACT_TO_CARDEMU \ + {0x001F, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, 0xFF, 0}, \ + {0x004F, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(0), 0}, \ + {0x0049, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(1), 0}, \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(1), BIT(1)}, \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_POLLING, BIT(1), 0}, \ + {0x0010, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(6), 0}, \ + {0x0000, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, \ + PWR_INTF_USB_MSK | PWR_INTF_SDIO_MSK, PWR_BASEADDR_MAC, \ + PWR_CMD_WRITE, BIT(5), BIT(5)}, \ + {0x0020, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, \ + PWR_INTF_USB_MSK | PWR_INTF_SDIO_MSK, PWR_BASEADDR_MAC, \ + PWR_CMD_WRITE, BIT(0), 0}, + +#define RTL8723B_TRANS_CARDEMU_TO_SUS \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(4) | BIT(3), (BIT(4) | BIT(3))}, \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, \ + PWR_INTF_USB_MSK | PWR_INTF_SDIO_MSK, PWR_BASEADDR_MAC, \ + PWR_CMD_WRITE, BIT(3) | BIT(4), BIT(3)}, \ + {0x0023, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(4), BIT(4)}, \ + {0x0007, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, 0xFF, 0x20}, \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(3) | BIT(4), BIT(3) | BIT(4)},\ + {0x0086, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_SDIO, PWR_CMD_WRITE, BIT(0), BIT(0)}, \ + {0x0086, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_SDIO, PWR_CMD_POLLING, BIT(1), 0}, + +#define RTL8723B_TRANS_SUS_TO_CARDEMU \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(3) | BIT(7), 0}, \ + {0x0086, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_SDIO, PWR_CMD_WRITE, BIT(0), 0}, \ + {0x0086, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_SDIO, PWR_CMD_POLLING, BIT(1), BIT(1)}, \ + {0x0023, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(4), 0}, \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(3)|BIT(4), 0}, + +#define RTL8723B_TRANS_CARDEMU_TO_CARDDIS \ + {0x0007, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, 0xFF, 0x20}, \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, \ + PWR_INTF_USB_MSK | PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(3)|BIT(4), BIT(3)}, \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(2), BIT(2)}, \ + {0x004A, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(0), 1}, \ + {0x0023, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(4), BIT(4)}, \ + {0x0086, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_SDIO, PWR_CMD_WRITE, BIT(0), BIT(0)}, \ + {0x0086, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_SDIO, PWR_CMD_POLLING, BIT(1), 0}, + +#define RTL8723B_TRANS_CARDDIS_TO_CARDEMU \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(3) | BIT(7), 0}, \ + {0x0086, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_SDIO, PWR_CMD_WRITE, BIT(0), 0}, \ + {0x0086, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_SDIO, PWR_CMD_POLLING, BIT(1), BIT(1)}, \ + {0x004A, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(0), 0}, \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(3)|BIT(4), 0}, \ + {0x0023, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(4), 0}, \ + {0x0301, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, 0xFF, 0}, + +#define RTL8723B_TRANS_CARDEMU_TO_PDN \ + {0x0023, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(4), BIT(4)}, \ + {0x0007, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, \ + PWR_INTF_SDIO_MSK | PWR_INTF_USB_MSK, PWR_BASEADDR_MAC, \ + PWR_CMD_WRITE, 0xFF, 0x20}, \ + {0x0006, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(0), 0}, \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(7), BIT(7)}, + +#define RTL8723B_TRANS_PDN_TO_CARDEMU \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(7), 0}, + +#define RTL8723B_TRANS_ACT_TO_LPS \ + {0x0301, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, 0xFF, 0xFF}, \ + {0x0522, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, 0xFF, 0xFF}, \ + {0x05F8, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_POLLING, 0xFF, 0}, \ + {0x05F9, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_POLLING, 0xFF, 0}, \ + {0x05FA, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_POLLING, 0xFF, 0}, \ + {0x05FB, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_POLLING, 0xFF, 0}, \ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(0), 0}, \ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_DELAY, 0, PWRSEQ_DELAY_US}, \ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(1), 0}, \ + {0x0100, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, 0xFF, 0x03}, \ + {0x0101, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(1), 0}, \ + {0x0093, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, 0xFF, 0x00}, \ + {0x0553, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(5), BIT(5)}, + +#define RTL8723B_TRANS_LPS_TO_ACT \ + {0x0080, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK, \ + PWR_BASEADDR_SDIO, PWR_CMD_WRITE, 0xFF, 0x84}, \ + {0xFE58, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, 0xFF, 0x84}, \ + {0x0361, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, 0xFF, 0x84}, \ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_DELAY, 0, PWRSEQ_DELAY_MS}, \ + {0x0008, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(4), 0}, \ + {0x0109, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_POLLING, BIT(7), 0}, \ + {0x0029, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(6)|BIT(7), 0}, \ + {0x0101, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(1), BIT(1)}, \ + {0x0100, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, 0xFF, 0xFF}, \ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, BIT(1) | BIT(0), BIT(1) | BIT(0)}, \ + {0x0522, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, \ + PWR_BASEADDR_MAC, PWR_CMD_WRITE, 0xFF, 0}, + +#define RTL8723B_TRANS_END \ + {0xFFFF, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK, 0, \ + PWR_CMD_END, 0, 0}, + +extern struct wlan_pwr_cfg rtl8723B_power_on_flow + [RTL8723B_TRANS_CARDEMU_TO_ACT_STEPS + + RTL8723B_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8723B_radio_off_flow + [RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8723B_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8723B_card_disable_flow + [RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8723B_TRANS_CARDEMU_TO_PDN_STEPS + + RTL8723B_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8723B_card_enable_flow + [RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8723B_TRANS_CARDEMU_TO_PDN_STEPS + + RTL8723B_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8723B_suspend_flow + [RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8723B_TRANS_CARDEMU_TO_SUS_STEPS + + RTL8723B_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8723B_resume_flow + [RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8723B_TRANS_CARDEMU_TO_SUS_STEPS + + RTL8723B_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8723B_hwpdn_flow + [RTL8723B_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8723B_TRANS_CARDEMU_TO_PDN_STEPS + + RTL8723B_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8723B_enter_lps_flow + [RTL8723B_TRANS_ACT_TO_LPS_STEPS + + RTL8723B_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8723B_leave_lps_flow + [RTL8723B_TRANS_LPS_TO_ACT_STEPS + + RTL8723B_TRANS_END_STEPS]; + +/* RTL8723 Power Configuration CMDs for PCIe interface */ +#define RTL8723_NIC_PWR_ON_FLOW rtl8723B_power_on_flow +#define RTL8723_NIC_RF_OFF_FLOW rtl8723B_radio_off_flow +#define RTL8723_NIC_DISABLE_FLOW rtl8723B_card_disable_flow +#define RTL8723_NIC_ENABLE_FLOW rtl8723B_card_enable_flow +#define RTL8723_NIC_SUSPEND_FLOW rtl8723B_suspend_flow +#define RTL8723_NIC_RESUME_FLOW rtl8723B_resume_flow +#define RTL8723_NIC_PDN_FLOW rtl8723B_hwpdn_flow +#define RTL8723_NIC_LPS_ENTER_FLOW rtl8723B_enter_lps_flow +#define RTL8723_NIC_LPS_LEAVE_FLOW rtl8723B_leave_lps_flow + +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/pwrseqcmd.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/pwrseqcmd.c @@ -0,0 +1,140 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "pwrseq.h" + +/* Description: + * This routine deal with the Power Configuration CMDs + * parsing for RTL8723/RTL8188E Series IC. + * Assumption: + * We should follow specific format which was released from HW SD. + * + * 2011.07.07, added by Roger. + */ +bool rtlbe_hal_pwrseqcmdparsing(struct rtl_priv *rtlpriv, u8 cut_version, + u8 fab_version, u8 interface_type, + struct wlan_pwr_cfg pwrcfgcmd[]) + +{ + struct wlan_pwr_cfg pwr_cfg_cmd = {0}; + bool b_polling_bit = false; + u32 ary_idx = 0; + u8 value = 0; + u32 offset = 0; + u32 polling_count = 0; + u32 max_polling_cnt = 5000; + + do { + pwr_cfg_cmd = pwrcfgcmd[ary_idx]; + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, + "rtlbe_hal_pwrseqcmdparsing(): " + "offset(%#x),cut_msk(%#x), fab_msk(%#x)," + "interface_msk(%#x), base(%#x), " + "cmd(%#x), msk(%#x), value(%#x)\n", + GET_PWR_CFG_OFFSET(pwr_cfg_cmd), + GET_PWR_CFG_CUT_MASK(pwr_cfg_cmd), + GET_PWR_CFG_FAB_MASK(pwr_cfg_cmd), + GET_PWR_CFG_INTF_MASK(pwr_cfg_cmd), + GET_PWR_CFG_BASE(pwr_cfg_cmd), + GET_PWR_CFG_CMD(pwr_cfg_cmd), + GET_PWR_CFG_MASK(pwr_cfg_cmd), + GET_PWR_CFG_VALUE(pwr_cfg_cmd)); + + if ((GET_PWR_CFG_FAB_MASK(pwr_cfg_cmd)&fab_version) && + (GET_PWR_CFG_CUT_MASK(pwr_cfg_cmd)&cut_version) && + (GET_PWR_CFG_INTF_MASK(pwr_cfg_cmd)&interface_type)) { + switch (GET_PWR_CFG_CMD(pwr_cfg_cmd)) { + case PWR_CMD_READ: + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, + "rtlbe_hal_pwrseqcmdparsing(): " + "PWR_CMD_READ\n"); + break; + case PWR_CMD_WRITE: + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, + "rtlbe_hal_pwrseqcmdparsing(): " + "PWR_CMD_WRITE\n"); + offset = GET_PWR_CFG_OFFSET(pwr_cfg_cmd); + + /*Read the value from system register*/ + value = rtl_read_byte(rtlpriv, offset); + value &= (~(GET_PWR_CFG_MASK(pwr_cfg_cmd))); + value = value | (GET_PWR_CFG_VALUE(pwr_cfg_cmd) + & GET_PWR_CFG_MASK(pwr_cfg_cmd)); + + /*Write the value back to sytem register*/ + rtl_write_byte(rtlpriv, offset, value); + break; + case PWR_CMD_POLLING: + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, + "rtlbe_hal_pwrseqcmdparsing(): " + "PWR_CMD_POLLING\n"); + b_polling_bit = false; + offset = GET_PWR_CFG_OFFSET(pwr_cfg_cmd); + + do { + value = rtl_read_byte(rtlpriv, offset); + + value &= GET_PWR_CFG_MASK(pwr_cfg_cmd); + if (value == + (GET_PWR_CFG_VALUE(pwr_cfg_cmd) & + GET_PWR_CFG_MASK(pwr_cfg_cmd))) + b_polling_bit = true; + else + udelay(10); + + if (polling_count++ > max_polling_cnt) + return false; + + } while (!b_polling_bit); + break; + case PWR_CMD_DELAY: + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, + "rtlbe_hal_pwrseqcmdparsing(): " + "PWR_CMD_DELAY\n"); + if (GET_PWR_CFG_VALUE(pwr_cfg_cmd) == + PWRSEQ_DELAY_US) + udelay(GET_PWR_CFG_OFFSET(pwr_cfg_cmd)); + else + mdelay(GET_PWR_CFG_OFFSET(pwr_cfg_cmd)); + break; + case PWR_CMD_END: + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, + "rtlbe_hal_pwrseqcmdparsing(): " + "PWR_CMD_END\n"); + return true; + break; + default: + RT_ASSERT(false, + "rtlbe_hal_pwrseqcmdparsing(): " + "Unknown CMD!!\n"); + break; + } + } + + ary_idx++; + } while (1); + + return true; +} --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/pwrseqcmd.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/pwrseqcmd.h @@ -0,0 +1,95 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8723BE_PWRSEQCMD_H__ +#define __RTL8723BE_PWRSEQCMD_H__ + +#include "../wifi.h" +/*---------------------------------------------*/ +/*The value of cmd: 4 bits */ +/*---------------------------------------------*/ +#define PWR_CMD_READ 0x00 +#define PWR_CMD_WRITE 0x01 +#define PWR_CMD_POLLING 0x02 +#define PWR_CMD_DELAY 0x03 +#define PWR_CMD_END 0x04 + +/* define the base address of each block */ +#define PWR_BASEADDR_MAC 0x00 +#define PWR_BASEADDR_USB 0x01 +#define PWR_BASEADDR_PCIE 0x02 +#define PWR_BASEADDR_SDIO 0x03 + +#define PWR_INTF_SDIO_MSK BIT(0) +#define PWR_INTF_USB_MSK BIT(1) +#define PWR_INTF_PCI_MSK BIT(2) +#define PWR_INTF_ALL_MSK (BIT(0) | BIT(1) | BIT(2) | BIT(3)) + +#define PWR_FAB_TSMC_MSK BIT(0) +#define PWR_FAB_UMC_MSK BIT(1) +#define PWR_FAB_ALL_MSK (BIT(0) | BIT(1) | BIT(2) | BIT(3)) + +#define PWR_CUT_TESTCHIP_MSK BIT(0) +#define PWR_CUT_A_MSK BIT(1) +#define PWR_CUT_B_MSK BIT(2) +#define PWR_CUT_C_MSK BIT(3) +#define PWR_CUT_D_MSK BIT(4) +#define PWR_CUT_E_MSK BIT(5) +#define PWR_CUT_F_MSK BIT(6) +#define PWR_CUT_G_MSK BIT(7) +#define PWR_CUT_ALL_MSK 0xFF + + +enum pwrseq_delay_unit { + PWRSEQ_DELAY_US, + PWRSEQ_DELAY_MS, +}; + +struct wlan_pwr_cfg { + u16 offset; + u8 cut_msk; + u8 fab_msk:4; + u8 interface_msk:4; + u8 base:4; + u8 cmd:4; + u8 msk; + u8 value; + +}; + +#define GET_PWR_CFG_OFFSET(__PWR_CMD) __PWR_CMD.offset +#define GET_PWR_CFG_CUT_MASK(__PWR_CMD) __PWR_CMD.cut_msk +#define GET_PWR_CFG_FAB_MASK(__PWR_CMD) __PWR_CMD.fab_msk +#define GET_PWR_CFG_INTF_MASK(__PWR_CMD) __PWR_CMD.interface_msk +#define GET_PWR_CFG_BASE(__PWR_CMD) __PWR_CMD.base +#define GET_PWR_CFG_CMD(__PWR_CMD) __PWR_CMD.cmd +#define GET_PWR_CFG_MASK(__PWR_CMD) __PWR_CMD.msk +#define GET_PWR_CFG_VALUE(__PWR_CMD) __PWR_CMD.value + +bool rtlbe_hal_pwrseqcmdparsing(struct rtl_priv *rtlpriv, u8 cut_version, + u8 fab_version, u8 interface_type, + struct wlan_pwr_cfg pwrcfgcmd[]); + +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/reg.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/reg.h @@ -0,0 +1,2293 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8723BE_REG_H__ +#define __RTL8723BE_REG_H__ + +#define TXPKT_BUF_SELECT 0x69 +#define RXPKT_BUF_SELECT 0xA5 +#define DISABLE_TRXPKT_BUF_ACCESS 0x0 + +#define REG_SYS_ISO_CTRL 0x0000 +#define REG_SYS_FUNC_EN 0x0002 +#define REG_APS_FSMCO 0x0004 +#define REG_SYS_CLKR 0x0008 +#define REG_9346CR 0x000A +#define REG_EE_VPD 0x000C +#define REG_AFE_MISC 0x0010 +#define REG_SPS0_CTRL 0x0011 +#define REG_SPS_OCP_CFG 0x0018 +#define REG_RSV_CTRL 0x001C +#define REG_RF_CTRL 0x001F +#define REG_LDOA15_CTRL 0x0020 +#define REG_LDOV12D_CTRL 0x0021 +#define REG_LDOHCI12_CTRL 0x0022 +#define REG_LPLDO_CTRL 0x0023 +#define REG_AFE_XTAL_CTRL 0x0024 +/* 1.5v for 8188EE test chip, 1.4v for MP chip */ +#define REG_AFE_LDO_CTRL 0x0027 +#define REG_AFE_PLL_CTRL 0x0028 +#define REG_MAC_PHY_CTRL 0x002c +#define REG_EFUSE_CTRL 0x0030 +#define REG_EFUSE_TEST 0x0034 +#define REG_PWR_DATA 0x0038 +#define REG_CAL_TIMER 0x003C +#define REG_ACLK_MON 0x003E +#define REG_GPIO_MUXCFG 0x0040 +#define REG_GPIO_IO_SEL 0x0042 +#define REG_MAC_PINMUX_CFG 0x0043 +#define REG_GPIO_PIN_CTRL 0x0044 +#define REG_GPIO_INTM 0x0048 +#define REG_LEDCFG0 0x004C +#define REG_LEDCFG1 0x004D +#define REG_LEDCFG2 0x004E +#define REG_LEDCFG3 0x004F +#define REG_FSIMR 0x0050 +#define REG_FSISR 0x0054 +#define REG_HSIMR 0x0058 +#define REG_HSISR 0x005c +#define REG_GPIO_PIN_CTRL_2 0x0060 +#define REG_GPIO_IO_SEL_2 0x0062 +#define REG_MULTI_FUNC_CTRL 0x0068 +#define REG_GPIO_OUTPUT 0x006c +#define REG_AFE_XTAL_CTRL_EXT 0x0078 +#define REG_XCK_OUT_CTRL 0x007c +#define REG_MCUFWDL 0x0080 +#define REG_WOL_EVENT 0x0081 +#define REG_MCUTSTCFG 0x0084 + + +#define REG_HIMR 0x00B0 +#define REG_HISR 0x00B4 +#define REG_HIMRE 0x00B8 +#define REG_HISRE 0x00BC + +#define REG_EFUSE_ACCESS 0x00CF + +#define REG_BIST_SCAN 0x00D0 +#define REG_BIST_RPT 0x00D4 +#define REG_BIST_ROM_RPT 0x00D8 +#define REG_USB_SIE_INTF 0x00E0 +#define REG_PCIE_MIO_INTF 0x00E4 +#define REG_PCIE_MIO_INTD 0x00E8 +#define REG_HPON_FSM 0x00EC +#define REG_SYS_CFG 0x00F0 +#define REG_GPIO_OUTSTS 0x00F4 +#define REG_SYS_CFG1 0x00F0 +#define REG_ROM_VERSION 0x00FD + +#define REG_CR 0x0100 +#define REG_PBP 0x0104 +#define REG_PKT_BUFF_ACCESS_CTRL 0x0106 +#define REG_TRXDMA_CTRL 0x010C +#define REG_TRXFF_BNDY 0x0114 +#define REG_TRXFF_STATUS 0x0118 +#define REG_RXFF_PTR 0x011C + +#define REG_CPWM 0x012F +#define REG_FWIMR 0x0130 +#define REG_FWISR 0x0134 +#define REG_PKTBUF_DBG_CTRL 0x0140 +#define REG_PKTBUF_DBG_DATA_L 0x0144 +#define REG_PKTBUF_DBG_DATA_H 0x0148 +#define REG_RXPKTBUF_CTRL (REG_PKTBUF_DBG_CTRL + 2) + +#define REG_TC0_CTRL 0x0150 +#define REG_TC1_CTRL 0x0154 +#define REG_TC2_CTRL 0x0158 +#define REG_TC3_CTRL 0x015C +#define REG_TC4_CTRL 0x0160 +#define REG_TCUNIT_BASE 0x0164 +#define REG_MBIST_START 0x0174 +#define REG_MBIST_DONE 0x0178 +#define REG_MBIST_FAIL 0x017C +#define REG_32K_CTRL 0x0194 +#define REG_C2HEVT_MSG_NORMAL 0x01A0 +#define REG_C2HEVT_CLEAR 0x01AF +#define REG_C2HEVT_MSG_TEST 0x01B8 +#define REG_MCUTST_1 0x01c0 +#define REG_FMETHR 0x01C8 +#define REG_HMETFR 0x01CC +#define REG_HMEBOX_0 0x01D0 +#define REG_HMEBOX_1 0x01D4 +#define REG_HMEBOX_2 0x01D8 +#define REG_HMEBOX_3 0x01DC + +#define REG_LLT_INIT 0x01E0 +#define REG_BB_ACCEESS_CTRL 0x01E8 +#define REG_BB_ACCESS_DATA 0x01EC + +#define REG_HMEBOX_EXT_0 0x01F0 +#define REG_HMEBOX_EXT_1 0x01F4 +#define REG_HMEBOX_EXT_2 0x01F8 +#define REG_HMEBOX_EXT_3 0x01FC + +#define REG_RQPN 0x0200 +#define REG_FIFOPAGE 0x0204 +#define REG_TDECTRL 0x0208 +#define REG_TXDMA_OFFSET_CHK 0x020C +#define REG_TXDMA_STATUS 0x0210 +#define REG_RQPN_NPQ 0x0214 + +#define REG_RXDMA_AGG_PG_TH 0x0280 +/* FW shall update this register before FW write RXPKT_RELEASE_POLL to 1 */ +#define REG_FW_UPD_RDPTR 0x0284 +/* Control the RX DMA.*/ +#define REG_RXDMA_CONTROL 0x0286 +/* The number of packets in RXPKTBUF. */ +#define REG_RXPKT_NUM 0x0287 + +#define REG_PCIE_CTRL_REG 0x0300 +#define REG_INT_MIG 0x0304 +#define REG_BCNQ_DESA 0x0308 +#define REG_HQ_DESA 0x0310 +#define REG_MGQ_DESA 0x0318 +#define REG_VOQ_DESA 0x0320 +#define REG_VIQ_DESA 0x0328 +#define REG_BEQ_DESA 0x0330 +#define REG_BKQ_DESA 0x0338 +#define REG_RX_DESA 0x0340 + +#define REG_DBI 0x0348 +#define REG_MDIO 0x0354 +#define REG_DBG_SEL 0x0360 +#define REG_PCIE_HRPWM 0x0361 +#define REG_PCIE_HCPWM 0x0363 +#define REG_UART_CTRL 0x0364 +#define REG_WATCH_DOG 0x0368 +#define REG_UART_TX_DESA 0x0370 +#define REG_UART_RX_DESA 0x0378 + + +#define REG_HDAQ_DESA_NODEF 0x0000 +#define REG_CMDQ_DESA_NODEF 0x0000 + +#define REG_VOQ_INFORMATION 0x0400 +#define REG_VIQ_INFORMATION 0x0404 +#define REG_BEQ_INFORMATION 0x0408 +#define REG_BKQ_INFORMATION 0x040C +#define REG_MGQ_INFORMATION 0x0410 +#define REG_HGQ_INFORMATION 0x0414 +#define REG_BCNQ_INFORMATION 0x0418 +#define REG_TXPKT_EMPTY 0x041A + + +#define REG_CPU_MGQ_INFORMATION 0x041C +#define REG_FWHW_TXQ_CTRL 0x0420 +#define REG_HWSEQ_CTRL 0x0423 +#define REG_TXPKTBUF_BCNQ_BDNY 0x0424 +#define REG_TXPKTBUF_MGQ_BDNY 0x0425 +#define REG_MULTI_BCNQ_EN 0x0426 +#define REG_MULTI_BCNQ_OFFSET 0x0427 +#define REG_SPEC_SIFS 0x0428 +#define REG_RL 0x042A +#define REG_DARFRC 0x0430 +#define REG_RARFRC 0x0438 +#define REG_RRSR 0x0440 +#define REG_ARFR0 0x0444 +#define REG_ARFR1 0x0448 +#define REG_ARFR2 0x044C +#define REG_ARFR3 0x0450 +#define REG_AMPDU_MAX_TIME 0x0456 +#define REG_AGGLEN_LMT 0x0458 +#define REG_AMPDU_MIN_SPACE 0x045C +#define REG_TXPKTBUF_WMAC_LBK_BF_HD 0x045D +#define REG_FAST_EDCA_CTRL 0x0460 +#define REG_RD_RESP_PKT_TH 0x0463 +#define REG_INIRTS_RATE_SEL 0x0480 +#define REG_INIDATA_RATE_SEL 0x0484 +#define REG_POWER_STATUS 0x04A4 +#define REG_POWER_STAGE1 0x04B4 +#define REG_POWER_STAGE2 0x04B8 +#define REG_PKT_LIFE_TIME 0x04C0 +#define REG_STBC_SETTING 0x04C4 +#define REG_PROT_MODE_CTRL 0x04C8 +#define REG_BAR_MODE_CTRL 0x04CC +#define REG_RA_TRY_RATE_AGG_LMT 0x04CF +#define REG_EARLY_MODE_CONTROL 0x04D0 +#define REG_NQOS_SEQ 0x04DC +#define REG_QOS_SEQ 0x04DE +#define REG_NEED_CPU_HANDLE 0x04E0 +#define REG_PKT_LOSE_RPT 0x04E1 +#define REG_PTCL_ERR_STATUS 0x04E2 +#define REG_TX_RPT_CTRL 0x04EC +#define REG_TX_RPT_TIME 0x04F0 +#define REG_DUMMY 0x04FC + +#define REG_EDCA_VO_PARAM 0x0500 +#define REG_EDCA_VI_PARAM 0x0504 +#define REG_EDCA_BE_PARAM 0x0508 +#define REG_EDCA_BK_PARAM 0x050C +#define REG_BCNTCFG 0x0510 +#define REG_PIFS 0x0512 +#define REG_RDG_PIFS 0x0513 +#define REG_SIFS_CTX 0x0514 +#define REG_SIFS_TRX 0x0516 +#define REG_AGGR_BREAK_TIME 0x051A +#define REG_SLOT 0x051B +#define REG_TX_PTCL_CTRL 0x0520 +#define REG_TXPAUSE 0x0522 +#define REG_DIS_TXREQ_CLR 0x0523 +#define REG_RD_CTRL 0x0524 +#define REG_TBTT_PROHIBIT 0x0540 +#define REG_RD_NAV_NXT 0x0544 +#define REG_NAV_PROT_LEN 0x0546 +#define REG_BCN_CTRL 0x0550 +#define REG_USTIME_TSF 0x0551 +#define REG_MBID_NUM 0x0552 +#define REG_DUAL_TSF_RST 0x0553 +#define REG_BCN_INTERVAL 0x0554 +#define REG_MBSSID_BCN_SPACE 0x0554 +#define REG_DRVERLYINT 0x0558 +#define REG_BCNDMATIM 0x0559 +#define REG_ATIMWND 0x055A +#define REG_BCN_MAX_ERR 0x055D +#define REG_RXTSF_OFFSET_CCK 0x055E +#define REG_RXTSF_OFFSET_OFDM 0x055F +#define REG_TSFTR 0x0560 +#define REG_INIT_TSFTR 0x0564 +#define REG_SECONDARY_CCA_CTRL 0x0577 +#define REG_PSTIMER 0x0580 +#define REG_TIMER0 0x0584 +#define REG_TIMER1 0x0588 +#define REG_ACMHWCTRL 0x05C0 +#define REG_ACMRSTCTRL 0x05C1 +#define REG_ACMAVG 0x05C2 +#define REG_VO_ADMTIME 0x05C4 +#define REG_VI_ADMTIME 0x05C6 +#define REG_BE_ADMTIME 0x05C8 +#define REG_EDCA_RANDOM_GEN 0x05CC +#define REG_SCH_TXCMD 0x05D0 + +#define REG_APSD_CTRL 0x0600 +#define REG_BWOPMODE 0x0603 +#define REG_TCR 0x0604 +#define REG_RCR 0x0608 +#define REG_RX_PKT_LIMIT 0x060C +#define REG_RX_DLK_TIME 0x060D +#define REG_RX_DRVINFO_SZ 0x060F + +#define REG_MACID 0x0610 +#define REG_BSSID 0x0618 +#define REG_MAR 0x0620 +#define REG_MBIDCAMCFG 0x0628 + +#define REG_USTIME_EDCA 0x0638 +#define REG_MAC_SPEC_SIFS 0x063A +#define REG_RESP_SIFS_CCK 0x063C +#define REG_RESP_SIFS_OFDM 0x063E +#define REG_ACKTO 0x0640 +#define REG_CTS2TO 0x0641 +#define REG_EIFS 0x0642 + +#define REG_NAV_CTRL 0x0650 +#define REG_BACAMCMD 0x0654 +#define REG_BACAMCONTENT 0x0658 +#define REG_LBDLY 0x0660 +#define REG_FWDLY 0x0661 +#define REG_RXERR_RPT 0x0664 +#define REG_TRXPTCL_CTL 0x0668 + +#define REG_CAMCMD 0x0670 +#define REG_CAMWRITE 0x0674 +#define REG_CAMREAD 0x0678 +#define REG_CAMDBG 0x067C +#define REG_SECCFG 0x0680 + +#define REG_WOW_CTRL 0x0690 +#define REG_PSSTATUS 0x0691 +#define REG_PS_RX_INFO 0x0692 +#define REG_UAPSD_TID 0x0693 +#define REG_LPNAV_CTRL 0x0694 +#define REG_WKFMCAM_NUM 0x0698 +#define REG_WKFMCAM_RWD 0x069C +#define REG_RXFLTMAP0 0x06A0 +#define REG_RXFLTMAP1 0x06A2 +#define REG_RXFLTMAP2 0x06A4 +#define REG_BCN_PSR_RPT 0x06A8 +#define REG_CALB32K_CTRL 0x06AC +#define REG_PKT_MON_CTRL 0x06B4 +#define REG_BT_COEX_TABLE 0x06C0 +#define REG_WMAC_RESP_TXINFO 0x06D8 + +#define REG_USB_INFO 0xFE17 +#define REG_USB_SPECIAL_OPTION 0xFE55 +#define REG_USB_DMA_AGG_TO 0xFE5B +#define REG_USB_AGG_TO 0xFE5C +#define REG_USB_AGG_TH 0xFE5D + +#define REG_TEST_USB_TXQS 0xFE48 +#define REG_TEST_SIE_VID 0xFE60 +#define REG_TEST_SIE_PID 0xFE62 +#define REG_TEST_SIE_OPTIONAL 0xFE64 +#define REG_TEST_SIE_CHIRP_K 0xFE65 +#define REG_TEST_SIE_PHY 0xFE66 +#define REG_TEST_SIE_MAC_ADDR 0xFE70 +#define REG_TEST_SIE_STRING 0xFE80 + +#define REG_NORMAL_SIE_VID 0xFE60 +#define REG_NORMAL_SIE_PID 0xFE62 +#define REG_NORMAL_SIE_OPTIONAL 0xFE64 +#define REG_NORMAL_SIE_EP 0xFE65 +#define REG_NORMAL_SIE_PHY 0xFE68 +#define REG_NORMAL_SIE_MAC_ADDR 0xFE70 +#define REG_NORMAL_SIE_STRING 0xFE80 + +#define CR9346 REG_9346CR +#define MSR (REG_CR + 2) +#define ISR REG_HISR +#define TSFR REG_TSFTR + +#define MACIDR0 REG_MACID +#define MACIDR4 (REG_MACID + 4) + +#define PBP REG_PBP + +#define IDR0 MACIDR0 +#define IDR4 MACIDR4 + +#define UNUSED_REGISTER 0x1BF +#define DCAM UNUSED_REGISTER +#define PSR UNUSED_REGISTER +#define BBADDR UNUSED_REGISTER +#define PHYDATAR UNUSED_REGISTER + +#define INVALID_BBRF_VALUE 0x12345678 + +#define MAX_MSS_DENSITY_2T 0x13 +#define MAX_MSS_DENSITY_1T 0x0A + +#define CMDEEPROM_EN BIT(5) +#define CMDEEPROM_SEL BIT(4) +#define CMD9346CR_9356SEL BIT(4) +#define AUTOLOAD_EEPROM (CMDEEPROM_EN | CMDEEPROM_SEL) +#define AUTOLOAD_EFUSE CMDEEPROM_EN + +#define GPIOSEL_GPIO 0 +#define GPIOSEL_ENBT BIT(5) + +#define GPIO_IN REG_GPIO_PIN_CTRL +#define GPIO_OUT (REG_GPIO_PIN_CTRL + 1) +#define GPIO_IO_SEL (REG_GPIO_PIN_CTRL + 2) +#define GPIO_MOD (REG_GPIO_PIN_CTRL + 3) + +/* 8723/8188E Host System Interrupt Mask Register (offset 0x58, 32 byte) */ +#define HSIMR_GPIO12_0_INT_EN BIT(0) +#define HSIMR_SPS_OCP_INT_EN BIT(5) +#define HSIMR_RON_INT_EN BIT(6) +#define HSIMR_PDN_INT_EN BIT(7) +#define HSIMR_GPIO9_INT_EN BIT(25) + +/* 8723/8188E Host System Interrupt Status Register (offset 0x5C, 32 byte) */ + +#define HSISR_GPIO12_0_INT BIT(0) +#define HSISR_SPS_OCP_INT BIT(5) +#define HSISR_RON_INT_EN BIT(6) +#define HSISR_PDNINT BIT(7) +#define HSISR_GPIO9_INT BIT(25) + +#define MSR_NOLINK 0x00 +#define MSR_ADHOC 0x01 +#define MSR_INFRA 0x02 +#define MSR_AP 0x03 + +#define RRSR_RSC_OFFSET 21 +#define RRSR_SHORT_OFFSET 23 +#define RRSR_RSC_BW_40M 0x600000 +#define RRSR_RSC_UPSUBCHNL 0x400000 +#define RRSR_RSC_LOWSUBCHNL 0x200000 +#define RRSR_SHORT 0x800000 +#define RRSR_1M BIT(0) +#define RRSR_2M BIT(1) +#define RRSR_5_5M BIT(2) +#define RRSR_11M BIT(3) +#define RRSR_6M BIT(4) +#define RRSR_9M BIT(5) +#define RRSR_12M BIT(6) +#define RRSR_18M BIT(7) +#define RRSR_24M BIT(8) +#define RRSR_36M BIT(9) +#define RRSR_48M BIT(10) +#define RRSR_54M BIT(11) +#define RRSR_MCS0 BIT(12) +#define RRSR_MCS1 BIT(13) +#define RRSR_MCS2 BIT(14) +#define RRSR_MCS3 BIT(15) +#define RRSR_MCS4 BIT(16) +#define RRSR_MCS5 BIT(17) +#define RRSR_MCS6 BIT(18) +#define RRSR_MCS7 BIT(19) +#define BRSR_ACKSHORTPMB BIT(23) + +#define RATR_1M 0x00000001 +#define RATR_2M 0x00000002 +#define RATR_55M 0x00000004 +#define RATR_11M 0x00000008 +#define RATR_6M 0x00000010 +#define RATR_9M 0x00000020 +#define RATR_12M 0x00000040 +#define RATR_18M 0x00000080 +#define RATR_24M 0x00000100 +#define RATR_36M 0x00000200 +#define RATR_48M 0x00000400 +#define RATR_54M 0x00000800 +#define RATR_MCS0 0x00001000 +#define RATR_MCS1 0x00002000 +#define RATR_MCS2 0x00004000 +#define RATR_MCS3 0x00008000 +#define RATR_MCS4 0x00010000 +#define RATR_MCS5 0x00020000 +#define RATR_MCS6 0x00040000 +#define RATR_MCS7 0x00080000 +#define RATR_MCS8 0x00100000 +#define RATR_MCS9 0x00200000 +#define RATR_MCS10 0x00400000 +#define RATR_MCS11 0x00800000 +#define RATR_MCS12 0x01000000 +#define RATR_MCS13 0x02000000 +#define RATR_MCS14 0x04000000 +#define RATR_MCS15 0x08000000 + +#define RATE_1M BIT(0) +#define RATE_2M BIT(1) +#define RATE_5_5M BIT(2) +#define RATE_11M BIT(3) +#define RATE_6M BIT(4) +#define RATE_9M BIT(5) +#define RATE_12M BIT(6) +#define RATE_18M BIT(7) +#define RATE_24M BIT(8) +#define RATE_36M BIT(9) +#define RATE_48M BIT(10) +#define RATE_54M BIT(11) +#define RATE_MCS0 BIT(12) +#define RATE_MCS1 BIT(13) +#define RATE_MCS2 BIT(14) +#define RATE_MCS3 BIT(15) +#define RATE_MCS4 BIT(16) +#define RATE_MCS5 BIT(17) +#define RATE_MCS6 BIT(18) +#define RATE_MCS7 BIT(19) +#define RATE_MCS8 BIT(20) +#define RATE_MCS9 BIT(21) +#define RATE_MCS10 BIT(22) +#define RATE_MCS11 BIT(23) +#define RATE_MCS12 BIT(24) +#define RATE_MCS13 BIT(25) +#define RATE_MCS14 BIT(26) +#define RATE_MCS15 BIT(27) + +#define RATE_ALL_CCK (RATR_1M | RATR_2M | RATR_55M | RATR_11M) +#define RATE_ALL_OFDM_AG (RATR_6M | RATR_9M | RATR_12M | RATR_18M |\ + RATR_24M | RATR_36M | RATR_48M | RATR_54M) +#define RATE_ALL_OFDM_1SS (RATR_MCS0 | RATR_MCS1 | RATR_MCS2 |\ + RATR_MCS3 | RATR_MCS4 | RATR_MCS5 |\ + RATR_MCS6 | RATR_MCS7) +#define RATE_ALL_OFDM_2SS (RATR_MCS8 | RATR_MCS9 | RATR_MCS10 |\ + RATR_MCS11 | RATR_MCS12 | RATR_MCS13 |\ + RATR_MCS14 | RATR_MCS15) + +#define BW_OPMODE_20MHZ BIT(2) +#define BW_OPMODE_5G BIT(1) +#define BW_OPMODE_11J BIT(0) + +#define CAM_VALID BIT(15) +#define CAM_NOTVALID 0x0000 +#define CAM_USEDK BIT(5) + +#define CAM_NONE 0x0 +#define CAM_WEP40 0x01 +#define CAM_TKIP 0x02 +#define CAM_AES 0x04 +#define CAM_WEP104 0x05 + +#define TOTAL_CAM_ENTRY 32 +#define HALF_CAM_ENTRY 16 + +#define CAM_WRITE BIT(16) +#define CAM_READ 0x00000000 +#define CAM_POLLINIG BIT(31) + +#define SCR_USEDK 0x01 +#define SCR_TXSEC_ENABLE 0x02 +#define SCR_RXSEC_ENABLE 0x04 + +#define WOW_PMEN BIT(0) +#define WOW_WOMEN BIT(1) +#define WOW_MAGIC BIT(2) +#define WOW_UWF BIT(3) + +/********************************************* +* 8723BE IMR/ISR bits +**********************************************/ +#define IMR_DISABLED 0x0 +/* IMR DW0(0x0060-0063) Bit 0-31 */ +#define IMR_TXCCK BIT(30) /* TXRPT interrupt when + * CCX bit of the packet is set + */ +#define IMR_PSTIMEOUT BIT(29) /* Power Save Time Out Interrupt */ +#define IMR_GTINT4 BIT(28) /* When GTIMER4 expires, + * this bit is set to 1 + */ +#define IMR_GTINT3 BIT(27) /* When GTIMER3 expires, + * this bit is set to 1 + */ +#define IMR_TBDER BIT(26) /* Transmit Beacon0 Error */ +#define IMR_TBDOK BIT(25) /* Transmit Beacon0 OK */ +#define IMR_TSF_BIT32_TOGGLE BIT(24) /* TSF Timer BIT32 toggle + * indication interrupt + */ +#define IMR_BCNDMAINT0 BIT(20) /* Beacon DMA Interrupt 0 */ +#define IMR_BCNDOK0 BIT(16) /* Beacon Queue DMA OK0 */ +#define IMR_HSISR_IND_ON_INT BIT(15) /* HSISR Indicator (HSIMR & HSISR is + * true, this bit is set to 1) + */ +#define IMR_BCNDMAINT_E BIT(14) /* Beacon DMA Interrupt + * Extension for Win7 + */ +#define IMR_ATIMEND BIT(12) /* CTWidnow End or ATIM Window End */ +#define IMR_HISR1_IND_INT BIT(11) /* HISR1 Indicator (HISR1 & HIMR1 is + * true, this bit is set to 1) + */ +#define IMR_C2HCMD BIT(10) /* CPU to Host Command INT Status, + * Write 1 clear + */ +#define IMR_CPWM2 BIT(9) /* CPU power Mode exchange INT Status, + * Write 1 clear + */ +#define IMR_CPWM BIT(8) /* CPU power Mode exchange INT Status, + * Write 1 clear + */ +#define IMR_HIGHDOK BIT(7) /* High Queue DMA OK */ +#define IMR_MGNTDOK BIT(6) /* Management Queue DMA OK */ +#define IMR_BKDOK BIT(5) /* AC_BK DMA OK */ +#define IMR_BEDOK BIT(4) /* AC_BE DMA OK */ +#define IMR_VIDOK BIT(3) /* AC_VI DMA OK */ +#define IMR_VODOK BIT(2) /* AC_VO DMA OK */ +#define IMR_RDU BIT(1) /* Rx Descriptor Unavailable */ +#define IMR_ROK BIT(0) /* Receive DMA OK */ + +/* IMR DW1(0x00B4-00B7) Bit 0-31 */ +#define IMR_BCNDMAINT7 BIT(27) /* Beacon DMA Interrupt 7 */ +#define IMR_BCNDMAINT6 BIT(26) /* Beacon DMA Interrupt 6 */ +#define IMR_BCNDMAINT5 BIT(25) /* Beacon DMA Interrupt 5 */ +#define IMR_BCNDMAINT4 BIT(24) /* Beacon DMA Interrupt 4 */ +#define IMR_BCNDMAINT3 BIT(23) /* Beacon DMA Interrupt 3 */ +#define IMR_BCNDMAINT2 BIT(22) /* Beacon DMA Interrupt 2 */ +#define IMR_BCNDMAINT1 BIT(21) /* Beacon DMA Interrupt 1 */ +#define IMR_BCNDOK7 BIT(20) /* Beacon Queue DMA OK Interrup 7 */ +#define IMR_BCNDOK6 BIT(19) /* Beacon Queue DMA OK Interrup 6 */ +#define IMR_BCNDOK5 BIT(18) /* Beacon Queue DMA OK Interrup 5 */ +#define IMR_BCNDOK4 BIT(17) /* Beacon Queue DMA OK Interrup 4 */ +#define IMR_BCNDOK3 BIT(16) /* Beacon Queue DMA OK Interrup 3 */ +#define IMR_BCNDOK2 BIT(15) /* Beacon Queue DMA OK Interrup 2 */ +#define IMR_BCNDOK1 BIT(14) /* Beacon Queue DMA OK Interrup 1 */ +#define IMR_ATIMEND_E BIT(13) /* ATIM Window End Extension for Win7 */ +#define IMR_TXERR BIT(11) /* Tx Error Flag Interrupt Status, + * write 1 clear. + */ +#define IMR_RXERR BIT(10) /* Rx Error Flag INT Status, + * Write 1 clear + */ +#define IMR_TXFOVW BIT(9) /* Transmit FIFO Overflow */ +#define IMR_RXFOVW BIT(8) /* Receive FIFO Overflow */ + +#define HWSET_MAX_SIZE 512 +#define EFUSE_MAX_SECTION 64 +#define EFUSE_REAL_CONTENT_LEN 256 +#define EFUSE_OOB_PROTECT_BYTES 18 /* PG data exclude header, + * dummy 7 bytes frome CP test + * and reserved 1byte. + */ + +#define EEPROM_DEFAULT_TSSI 0x0 +#define EEPROM_DEFAULT_TXPOWERDIFF 0x0 +#define EEPROM_DEFAULT_CRYSTALCAP 0x5 +#define EEPROM_DEFAULT_BOARDTYPE 0x02 +#define EEPROM_DEFAULT_TXPOWER 0x1010 +#define EEPROM_DEFAULT_HT2T_TXPWR 0x10 + +#define EEPROM_DEFAULT_LEGACYHTTXPOWERDIFF 0x3 +#define EEPROM_DEFAULT_THERMALMETER 0x18 +#define EEPROM_DEFAULT_ANTTXPOWERDIFF 0x0 +#define EEPROM_DEFAULT_TXPWDIFF_CRYSTALCAP 0x5 +#define EEPROM_DEFAULT_TXPOWERLEVEL 0x22 +#define EEPROM_DEFAULT_HT40_2SDIFF 0x0 +#define EEPROM_DEFAULT_HT20_DIFF 2 +#define EEPROM_DEFAULT_LEGACYHTTXPOWERDIFF 0x3 +#define EEPROM_DEFAULT_HT40_PWRMAXOFFSET 0 +#define EEPROM_DEFAULT_HT20_PWRMAXOFFSET 0 + +#define RF_OPTION1 0x79 +#define RF_OPTION2 0x7A +#define RF_OPTION3 0x7B +#define RF_OPTION4 0xC3 + +#define EEPROM_DEFAULT_PID 0x1234 +#define EEPROM_DEFAULT_VID 0x5678 +#define EEPROM_DEFAULT_CUSTOMERID 0xAB +#define EEPROM_DEFAULT_SUBCUSTOMERID 0xCD +#define EEPROM_DEFAULT_VERSION 0 + +#define EEPROM_CHANNEL_PLAN_FCC 0x0 +#define EEPROM_CHANNEL_PLAN_IC 0x1 +#define EEPROM_CHANNEL_PLAN_ETSI 0x2 +#define EEPROM_CHANNEL_PLAN_SPAIN 0x3 +#define EEPROM_CHANNEL_PLAN_FRANCE 0x4 +#define EEPROM_CHANNEL_PLAN_MKK 0x5 +#define EEPROM_CHANNEL_PLAN_MKK1 0x6 +#define EEPROM_CHANNEL_PLAN_ISRAEL 0x7 +#define EEPROM_CHANNEL_PLAN_TELEC 0x8 +#define EEPROM_CHANNEL_PLAN_GLOBAL_DOMAIN 0x9 +#define EEPROM_CHANNEL_PLAN_WORLD_WIDE_13 0xA +#define EEPROM_CHANNEL_PLAN_NCC 0xB +#define EEPROM_CHANNEL_PLAN_BY_HW_MASK 0x80 + +#define EEPROM_CID_DEFAULT 0x0 +#define EEPROM_CID_TOSHIBA 0x4 +#define EEPROM_CID_CCX 0x10 +#define EEPROM_CID_QMI 0x0D +#define EEPROM_CID_WHQL 0xFE + +#define RTL8723BE_EEPROM_ID 0x8129 + +#define EEPROM_HPON 0x02 +#define EEPROM_CLK 0x06 +#define EEPROM_TESTR 0x08 + + +#define EEPROM_TXPOWERCCK 0x10 +#define EEPROM_TXPOWERHT40_1S 0x16 +#define EEPROM_TXPOWERHT20DIFF 0x1B +#define EEPROM_TXPOWER_OFDMDIFF 0x1B + + + +#define EEPROM_TX_PWR_INX 0x10 + +#define EEPROM_CHANNELPLAN 0xB8 +#define EEPROM_XTAL_8723BE 0xB9 +#define EEPROM_THERMAL_METER_88E 0xBA +#define EEPROM_IQK_LCK_88E 0xBB + +#define EEPROM_RF_BOARD_OPTION_88E 0xC1 +#define EEPROM_RF_FEATURE_OPTION_88E 0xC2 +#define EEPROM_RF_BT_SETTING_88E 0xC3 +#define EEPROM_VERSION 0xC4 +#define EEPROM_CUSTOMER_ID 0xC5 +#define EEPROM_RF_ANTENNA_OPT_88E 0xC9 + +#define EEPROM_MAC_ADDR 0xD0 +#define EEPROM_VID 0xD6 +#define EEPROM_DID 0xD8 +#define EEPROM_SVID 0xDA +#define EEPROM_SMID 0xDC + +#define STOPBECON BIT(6) +#define STOPHIGHT BIT(5) +#define STOPMGT BIT(4) +#define STOPVO BIT(3) +#define STOPVI BIT(2) +#define STOPBE BIT(1) +#define STOPBK BIT(0) + +#define RCR_APPFCS BIT(31) +#define RCR_APP_MIC BIT(30) +#define RCR_APP_ICV BIT(29) +#define RCR_APP_PHYST_RXFF BIT(28) +#define RCR_APP_BA_SSN BIT(27) +#define RCR_ENMBID BIT(24) +#define RCR_LSIGEN BIT(23) +#define RCR_MFBEN BIT(22) +#define RCR_HTC_LOC_CTRL BIT(14) +#define RCR_AMF BIT(13) +#define RCR_ACF BIT(12) +#define RCR_ADF BIT(11) +#define RCR_AICV BIT(9) +#define RCR_ACRC32 BIT(8) +#define RCR_CBSSID_BCN BIT(7) +#define RCR_CBSSID_DATA BIT(6) +#define RCR_CBSSID RCR_CBSSID_DATA +#define RCR_APWRMGT BIT(5) +#define RCR_ADD3 BIT(4) +#define RCR_AB BIT(3) +#define RCR_AM BIT(2) +#define RCR_APM BIT(1) +#define RCR_AAP BIT(0) +#define RCR_MXDMA_OFFSET 8 +#define RCR_FIFO_OFFSET 13 + +#define RSV_CTRL 0x001C +#define RD_CTRL 0x0524 + +#define REG_USB_INFO 0xFE17 +#define REG_USB_SPECIAL_OPTION 0xFE55 +#define REG_USB_DMA_AGG_TO 0xFE5B +#define REG_USB_AGG_TO 0xFE5C +#define REG_USB_AGG_TH 0xFE5D + +#define REG_USB_VID 0xFE60 +#define REG_USB_PID 0xFE62 +#define REG_USB_OPTIONAL 0xFE64 +#define REG_USB_CHIRP_K 0xFE65 +#define REG_USB_PHY 0xFE66 +#define REG_USB_MAC_ADDR 0xFE70 +#define REG_USB_HRPWM 0xFE58 +#define REG_USB_HCPWM 0xFE57 + +#define SW18_FPWM BIT(3) + +#define ISO_MD2PP BIT(0) +#define ISO_UA2USB BIT(1) +#define ISO_UD2CORE BIT(2) +#define ISO_PA2PCIE BIT(3) +#define ISO_PD2CORE BIT(4) +#define ISO_IP2MAC BIT(5) +#define ISO_DIOP BIT(6) +#define ISO_DIOE BIT(7) +#define ISO_EB2CORE BIT(8) +#define ISO_DIOR BIT(9) + +#define PWC_EV25V BIT(14) +#define PWC_EV12V BIT(15) + +#define FEN_BBRSTB BIT(0) +#define FEN_BB_GLB_RSTN BIT(1) +#define FEN_USBA BIT(2) +#define FEN_UPLL BIT(3) +#define FEN_USBD BIT(4) +#define FEN_DIO_PCIE BIT(5) +#define FEN_PCIEA BIT(6) +#define FEN_PPLL BIT(7) +#define FEN_PCIED BIT(8) +#define FEN_DIOE BIT(9) +#define FEN_CPUEN BIT(10) +#define FEN_DCORE BIT(11) +#define FEN_ELDR BIT(12) +#define FEN_DIO_RF BIT(13) +#define FEN_HWPDN BIT(14) +#define FEN_MREGEN BIT(15) + +#define PFM_LDALL BIT(0) +#define PFM_ALDN BIT(1) +#define PFM_LDKP BIT(2) +#define PFM_WOWL BIT(3) +#define ENPDN BIT(4) +#define PDN_PL BIT(5) +#define APFM_ONMAC BIT(8) +#define APFM_OFF BIT(9) +#define APFM_RSM BIT(10) +#define AFSM_HSUS BIT(11) +#define AFSM_PCIE BIT(12) +#define APDM_MAC BIT(13) +#define APDM_HOST BIT(14) +#define APDM_HPDN BIT(15) +#define RDY_MACON BIT(16) +#define SUS_HOST BIT(17) +#define ROP_ALD BIT(20) +#define ROP_PWR BIT(21) +#define ROP_SPS BIT(22) +#define SOP_MRST BIT(25) +#define SOP_FUSE BIT(26) +#define SOP_ABG BIT(27) +#define SOP_AMB BIT(28) +#define SOP_RCK BIT(29) +#define SOP_A8M BIT(30) +#define XOP_BTCK BIT(31) + +#define ANAD16V_EN BIT(0) +#define ANA8M BIT(1) +#define MACSLP BIT(4) +#define LOADER_CLK_EN BIT(5) +#define _80M_SSC_DIS BIT(7) +#define _80M_SSC_EN_HO BIT(8) +#define PHY_SSC_RSTB BIT(9) +#define SEC_CLK_EN BIT(10) +#define MAC_CLK_EN BIT(11) +#define SYS_CLK_EN BIT(12) +#define RING_CLK_EN BIT(13) + +#define BOOT_FROM_EEPROM BIT(4) +#define EEPROM_EN BIT(5) + +#define AFE_BGEN BIT(0) +#define AFE_MBEN BIT(1) +#define MAC_ID_EN BIT(7) + +#define WLOCK_ALL BIT(0) +#define WLOCK_00 BIT(1) +#define WLOCK_04 BIT(2) +#define WLOCK_08 BIT(3) +#define WLOCK_40 BIT(4) +#define R_DIS_PRST_0 BIT(5) +#define R_DIS_PRST_1 BIT(6) +#define LOCK_ALL_EN BIT(7) + +#define RF_EN BIT(0) +#define RF_RSTB BIT(1) +#define RF_SDMRSTB BIT(2) + +#define LDA15_EN BIT(0) +#define LDA15_STBY BIT(1) +#define LDA15_OBUF BIT(2) +#define LDA15_REG_VOS BIT(3) +#define _LDA15_VOADJ(x) (((x) & 0x7) << 4) + +#define LDV12_EN BIT(0) +#define LDV12_SDBY BIT(1) +#define LPLDO_HSM BIT(2) +#define LPLDO_LSM_DIS BIT(3) +#define _LDV12_VADJ(x) (((x) & 0xF) << 4) + +#define XTAL_EN BIT(0) +#define XTAL_BSEL BIT(1) +#define _XTAL_BOSC(x) (((x) & 0x3) << 2) +#define _XTAL_CADJ(x) (((x) & 0xF) << 4) +#define XTAL_GATE_USB BIT(8) +#define _XTAL_USB_DRV(x) (((x) & 0x3) << 9) +#define XTAL_GATE_AFE BIT(11) +#define _XTAL_AFE_DRV(x) (((x) & 0x3) << 12) +#define XTAL_RF_GATE BIT(14) +#define _XTAL_RF_DRV(x) (((x) & 0x3) << 15) +#define XTAL_GATE_DIG BIT(17) +#define _XTAL_DIG_DRV(x) (((x) & 0x3) << 18) +#define XTAL_BT_GATE BIT(20) +#define _XTAL_BT_DRV(x) (((x) & 0x3) << 21) +#define _XTAL_GPIO(x) (((x) & 0x7) << 23) + +#define CKDLY_AFE BIT(26) +#define CKDLY_USB BIT(27) +#define CKDLY_DIG BIT(28) +#define CKDLY_BT BIT(29) + +#define APLL_EN BIT(0) +#define APLL_320_EN BIT(1) +#define APLL_FREF_SEL BIT(2) +#define APLL_EDGE_SEL BIT(3) +#define APLL_WDOGB BIT(4) +#define APLL_LPFEN BIT(5) + +#define APLL_REF_CLK_13MHZ 0x1 +#define APLL_REF_CLK_19_2MHZ 0x2 +#define APLL_REF_CLK_20MHZ 0x3 +#define APLL_REF_CLK_25MHZ 0x4 +#define APLL_REF_CLK_26MHZ 0x5 +#define APLL_REF_CLK_38_4MHZ 0x6 +#define APLL_REF_CLK_40MHZ 0x7 + +#define APLL_320EN BIT(14) +#define APLL_80EN BIT(15) +#define APLL_1MEN BIT(24) + +#define ALD_EN BIT(18) +#define EF_PD BIT(19) +#define EF_FLAG BIT(31) + +#define EF_TRPT BIT(7) +#define LDOE25_EN BIT(31) + +#define RSM_EN BIT(0) +#define TIMER_EN BIT(4) + +#define TRSW0EN BIT(2) +#define TRSW1EN BIT(3) +#define EROM_EN BIT(4) +#define ENBT BIT(5) +#define ENUART BIT(8) +#define UART_910 BIT(9) +#define ENPMAC BIT(10) +#define SIC_SWRST BIT(11) +#define ENSIC BIT(12) +#define SIC_23 BIT(13) +#define ENHDP BIT(14) +#define SIC_LBK BIT(15) + +#define LED0PL BIT(4) +#define LED1PL BIT(12) +#define LED0DIS BIT(7) + +#define MCUFWDL_EN BIT(0) +#define MCUFWDL_RDY BIT(1) +#define FWDL_CHKSUM_RPT BIT(2) +#define MACINI_RDY BIT(3) +#define BBINI_RDY BIT(4) +#define RFINI_RDY BIT(5) +#define WINTINI_RDY BIT(6) +#define CPRST BIT(23) + +#define XCLK_VLD BIT(0) +#define ACLK_VLD BIT(1) +#define UCLK_VLD BIT(2) +#define PCLK_VLD BIT(3) +#define PCIRSTB BIT(4) +#define V15_VLD BIT(5) +#define TRP_B15V_EN BIT(7) +#define SIC_IDLE BIT(8) +#define BD_MAC2 BIT(9) +#define BD_MAC1 BIT(10) +#define IC_MACPHY_MODE BIT(11) +#define VENDOR_ID BIT(19) +#define PAD_HWPD_IDN BIT(22) +#define TRP_VAUX_EN BIT(23) +#define TRP_BT_EN BIT(24) +#define BD_PKG_SEL BIT(25) +#define BD_HCI_SEL BIT(26) +#define TYPE_ID BIT(27) + +#define CHIP_VER_RTL_MASK 0xF000 +#define CHIP_VER_RTL_SHIFT 12 + +#define REG_LBMODE (REG_CR + 3) + +#define HCI_TXDMA_EN BIT(0) +#define HCI_RXDMA_EN BIT(1) +#define TXDMA_EN BIT(2) +#define RXDMA_EN BIT(3) +#define PROTOCOL_EN BIT(4) +#define SCHEDULE_EN BIT(5) +#define MACTXEN BIT(6) +#define MACRXEN BIT(7) +#define ENSWBCN BIT(8) +#define ENSEC BIT(9) + +#define _NETTYPE(x) (((x) & 0x3) << 16) +#define MASK_NETTYPE 0x30000 +#define NT_NO_LINK 0x0 +#define NT_LINK_AD_HOC 0x1 +#define NT_LINK_AP 0x2 +#define NT_AS_AP 0x3 + +#define _LBMODE(x) (((x) & 0xF) << 24) +#define MASK_LBMODE 0xF000000 +#define LOOPBACK_NORMAL 0x0 +#define LOOPBACK_IMMEDIATELY 0xB +#define LOOPBACK_MAC_DELAY 0x3 +#define LOOPBACK_PHY 0x1 +#define LOOPBACK_DMA 0x7 + +#define GET_RX_PAGE_SIZE(value) ((value) & 0xF) +#define GET_TX_PAGE_SIZE(value) (((value) & 0xF0) >> 4) +#define _PSRX_MASK 0xF +#define _PSTX_MASK 0xF0 +#define _PSRX(x) (x) +#define _PSTX(x) ((x) << 4) + +#define PBP_64 0x0 +#define PBP_128 0x1 +#define PBP_256 0x2 +#define PBP_512 0x3 +#define PBP_1024 0x4 + +#define RXDMA_ARBBW_EN BIT(0) +#define RXSHFT_EN BIT(1) +#define RXDMA_AGG_EN BIT(2) +#define QS_VO_QUEUE BIT(8) +#define QS_VI_QUEUE BIT(9) +#define QS_BE_QUEUE BIT(10) +#define QS_BK_QUEUE BIT(11) +#define QS_MANAGER_QUEUE BIT(12) +#define QS_HIGH_QUEUE BIT(13) + +#define HQSEL_VOQ BIT(0) +#define HQSEL_VIQ BIT(1) +#define HQSEL_BEQ BIT(2) +#define HQSEL_BKQ BIT(3) +#define HQSEL_MGTQ BIT(4) +#define HQSEL_HIQ BIT(5) + +#define _TXDMA_HIQ_MAP(x) (((x)&0x3) << 14) +#define _TXDMA_MGQ_MAP(x) (((x)&0x3) << 12) +#define _TXDMA_BKQ_MAP(x) (((x)&0x3) << 10) +#define _TXDMA_BEQ_MAP(x) (((x)&0x3) << 8) +#define _TXDMA_VIQ_MAP(x) (((x)&0x3) << 6) +#define _TXDMA_VOQ_MAP(x) (((x)&0x3) << 4) + +#define QUEUE_LOW 1 +#define QUEUE_NORMAL 2 +#define QUEUE_HIGH 3 + +#define _LLT_NO_ACTIVE 0x0 +#define _LLT_WRITE_ACCESS 0x1 +#define _LLT_READ_ACCESS 0x2 + +#define _LLT_INIT_DATA(x) ((x) & 0xFF) +#define _LLT_INIT_ADDR(x) (((x) & 0xFF) << 8) +#define _LLT_OP(x) (((x) & 0x3) << 30) +#define _LLT_OP_VALUE(x) (((x) >> 30) & 0x3) + +#define BB_WRITE_READ_MASK (BIT(31) | BIT(30)) +#define BB_WRITE_EN BIT(30) +#define BB_READ_EN BIT(31) + +#define _HPQ(x) ((x) & 0xFF) +#define _LPQ(x) (((x) & 0xFF) << 8) +#define _PUBQ(x) (((x) & 0xFF) << 16) +#define _NPQ(x) ((x) & 0xFF) + +#define HPQ_PUBLIC_DIS BIT(24) +#define LPQ_PUBLIC_DIS BIT(25) +#define LD_RQPN BIT(31) + +#define BCN_VALID BIT(16) +#define BCN_HEAD(x) (((x) & 0xFF) << 8) +#define BCN_HEAD_MASK 0xFF00 + +#define BLK_DESC_NUM_SHIFT 4 +#define BLK_DESC_NUM_MASK 0xF + +#define DROP_DATA_EN BIT(9) + +#define EN_AMPDU_RTY_NEW BIT(7) + +#define _INIRTSMCS_SEL(x) ((x) & 0x3F) + +#define _SPEC_SIFS_CCK(x) ((x) & 0xFF) +#define _SPEC_SIFS_OFDM(x) (((x) & 0xFF) << 8) + +#define RATE_REG_BITMAP_ALL 0xFFFFF + +#define _RRSC_BITMAP(x) ((x) & 0xFFFFF) + +#define _RRSR_RSC(x) (((x) & 0x3) << 21) +#define RRSR_RSC_RESERVED 0x0 +#define RRSR_RSC_UPPER_SUBCHANNEL 0x1 +#define RRSR_RSC_LOWER_SUBCHANNEL 0x2 +#define RRSR_RSC_DUPLICATE_MODE 0x3 + +#define USE_SHORT_G1 BIT(20) + +#define _AGGLMT_MCS0(x) ((x) & 0xF) +#define _AGGLMT_MCS1(x) (((x) & 0xF) << 4) +#define _AGGLMT_MCS2(x) (((x) & 0xF) << 8) +#define _AGGLMT_MCS3(x) (((x) & 0xF) << 12) +#define _AGGLMT_MCS4(x) (((x) & 0xF) << 16) +#define _AGGLMT_MCS5(x) (((x) & 0xF) << 20) +#define _AGGLMT_MCS6(x) (((x) & 0xF) << 24) +#define _AGGLMT_MCS7(x) (((x) & 0xF) << 28) + +#define RETRY_LIMIT_SHORT_SHIFT 8 +#define RETRY_LIMIT_LONG_SHIFT 0 + +#define _DARF_RC1(x) ((x) & 0x1F) +#define _DARF_RC2(x) (((x) & 0x1F) << 8) +#define _DARF_RC3(x) (((x) & 0x1F) << 16) +#define _DARF_RC4(x) (((x) & 0x1F) << 24) +#define _DARF_RC5(x) ((x) & 0x1F) +#define _DARF_RC6(x) (((x) & 0x1F) << 8) +#define _DARF_RC7(x) (((x) & 0x1F) << 16) +#define _DARF_RC8(x) (((x) & 0x1F) << 24) + +#define _RARF_RC1(x) ((x) & 0x1F) +#define _RARF_RC2(x) (((x) & 0x1F) << 8) +#define _RARF_RC3(x) (((x) & 0x1F) << 16) +#define _RARF_RC4(x) (((x) & 0x1F) << 24) +#define _RARF_RC5(x) ((x) & 0x1F) +#define _RARF_RC6(x) (((x) & 0x1F) << 8) +#define _RARF_RC7(x) (((x) & 0x1F) << 16) +#define _RARF_RC8(x) (((x) & 0x1F) << 24) + +#define AC_PARAM_TXOP_LIMIT_OFFSET 16 +#define AC_PARAM_ECW_MAX_OFFSET 12 +#define AC_PARAM_ECW_MIN_OFFSET 8 +#define AC_PARAM_AIFS_OFFSET 0 + +#define _AIFS(x) (x) +#define _ECW_MAX_MIN(x) ((x) << 8) +#define _TXOP_LIMIT(x) ((x) << 16) + +#define _BCNIFS(x) ((x) & 0xFF) +#define _BCNECW(x) ((((x) & 0xF)) << 8) + +#define _LRL(x) ((x) & 0x3F) +#define _SRL(x) (((x) & 0x3F) << 8) + +#define _SIFS_CCK_CTX(x) ((x) & 0xFF) +#define _SIFS_CCK_TRX(x) (((x) & 0xFF) << 8) + +#define _SIFS_OFDM_CTX(x) ((x) & 0xFF) +#define _SIFS_OFDM_TRX(x) (((x) & 0xFF) << 8) + +#define _TBTT_PROHIBIT_HOLD(x) (((x) & 0xFF) << 8) + +#define DIS_EDCA_CNT_DWN BIT(11) + +#define EN_MBSSID BIT(1) +#define EN_TXBCN_RPT BIT(2) +#define EN_BCN_FUNCTION BIT(3) + +#define TSFTR_RST BIT(0) +#define TSFTR1_RST BIT(1) + +#define STOP_BCNQ BIT(6) + +#define DIS_TSF_UDT0_NORMAL_CHIP BIT(4) +#define DIS_TSF_UDT0_TEST_CHIP BIT(5) + +#define ACMHW_HWEN BIT(0) +#define ACMHW_BEQEN BIT(1) +#define ACMHW_VIQEN BIT(2) +#define ACMHW_VOQEN BIT(3) +#define ACMHW_BEQSTATUS BIT(4) +#define ACMHW_VIQSTATUS BIT(5) +#define ACMHW_VOQSTATUS BIT(6) + +#define APSDOFF BIT(6) +#define APSDOFF_STATUS BIT(7) + +#define BW_20MHZ BIT(2) + +#define RATE_BITMAP_ALL 0xFFFFF + +#define RATE_RRSR_CCK_ONLY_1M 0xFFFF1 + +#define TSFRST BIT(0) +#define DIS_GCLK BIT(1) +#define PAD_SEL BIT(2) +#define PWR_ST BIT(6) +#define PWRBIT_OW_EN BIT(7) +#define ACRC BIT(8) +#define CFENDFORM BIT(9) +#define ICV BIT(10) + +#define AAP BIT(0) +#define APM BIT(1) +#define AM BIT(2) +#define AB BIT(3) +#define ADD3 BIT(4) +#define APWRMGT BIT(5) +#define CBSSID BIT(6) +#define CBSSID_DATA BIT(6) +#define CBSSID_BCN BIT(7) +#define ACRC32 BIT(8) +#define AICV BIT(9) +#define ADF BIT(11) +#define ACF BIT(12) +#define AMF BIT(13) +#define HTC_LOC_CTRL BIT(14) +#define UC_DATA_EN BIT(16) +#define BM_DATA_EN BIT(17) +#define MFBEN BIT(22) +#define LSIGEN BIT(23) +#define ENMBID BIT(24) +#define APP_BASSN BIT(27) +#define APP_PHYSTS BIT(28) +#define APP_ICV BIT(29) +#define APP_MIC BIT(30) +#define APP_FCS BIT(31) + +#define _MIN_SPACE(x) ((x) & 0x7) +#define _SHORT_GI_PADDING(x) (((x) & 0x1F) << 3) + +#define RXERR_TYPE_OFDM_PPDU 0 +#define RXERR_TYPE_OFDM_FALSE_ALARM 1 +#define RXERR_TYPE_OFDM_MPDU_OK 2 +#define RXERR_TYPE_OFDM_MPDU_FAIL 3 +#define RXERR_TYPE_CCK_PPDU 4 +#define RXERR_TYPE_CCK_FALSE_ALARM 5 +#define RXERR_TYPE_CCK_MPDU_OK 6 +#define RXERR_TYPE_CCK_MPDU_FAIL 7 +#define RXERR_TYPE_HT_PPDU 8 +#define RXERR_TYPE_HT_FALSE_ALARM 9 +#define RXERR_TYPE_HT_MPDU_TOTAL 10 +#define RXERR_TYPE_HT_MPDU_OK 11 +#define RXERR_TYPE_HT_MPDU_FAIL 12 +#define RXERR_TYPE_RX_FULL_DROP 15 + +#define RXERR_COUNTER_MASK 0xFFFFF +#define RXERR_RPT_RST BIT(27) +#define _RXERR_RPT_SEL(type) ((type) << 28) + +#define SCR_TXUSEDK BIT(0) +#define SCR_RXUSEDK BIT(1) +#define SCR_TXENCENABLE BIT(2) +#define SCR_RXDECENABLE BIT(3) +#define SCR_SKBYA2 BIT(4) +#define SCR_NOSKMC BIT(5) +#define SCR_TXBCUSEDK BIT(6) +#define SCR_RXBCUSEDK BIT(7) + +#define XCLK_VLD BIT(0) +#define ACLK_VLD BIT(1) +#define UCLK_VLD BIT(2) +#define PCLK_VLD BIT(3) +#define PCIRSTB BIT(4) +#define V15_VLD BIT(5) +#define TRP_B15V_EN BIT(7) +#define SIC_IDLE BIT(8) +#define BD_MAC2 BIT(9) +#define BD_MAC1 BIT(10) +#define IC_MACPHY_MODE BIT(11) +#define BT_FUNC BIT(16) +#define VENDOR_ID BIT(19) +#define PAD_HWPD_IDN BIT(22) +#define TRP_VAUX_EN BIT(23) +#define TRP_BT_EN BIT(24) +#define BD_PKG_SEL BIT(25) +#define BD_HCI_SEL BIT(26) +#define TYPE_ID BIT(27) + +#define USB_IS_HIGH_SPEED 0 +#define USB_IS_FULL_SPEED 1 +#define USB_SPEED_MASK BIT(5) + +#define USB_NORMAL_SIE_EP_MASK 0xF +#define USB_NORMAL_SIE_EP_SHIFT 4 + +#define USB_TEST_EP_MASK 0x30 +#define USB_TEST_EP_SHIFT 4 + +#define USB_AGG_EN BIT(3) + +#define MAC_ADDR_LEN 6 +#define LAST_ENTRY_OF_TX_PKT_BUFFER 175/*255 88e*/ + +#define POLLING_LLT_THRESHOLD 20 +#define POLLING_READY_TIMEOUT_COUNT 3000 + +#define MAX_MSS_DENSITY_2T 0x13 +#define MAX_MSS_DENSITY_1T 0x0A + +#define EPROM_CMD_OPERATING_MODE_MASK ((1<<7)|(1<<6)) +#define EPROM_CMD_CONFIG 0x3 +#define EPROM_CMD_LOAD 1 + +#define HWSET_MAX_SIZE_92S HWSET_MAX_SIZE + +#define HAL_8192C_HW_GPIO_WPS_BIT BIT(2) + +#define RPMAC_RESET 0x100 +#define RPMAC_TXSTART 0x104 +#define RPMAC_TXLEGACYSIG 0x108 +#define RPMAC_TXHTSIG1 0x10c +#define RPMAC_TXHTSIG2 0x110 +#define RPMAC_PHYDEBUG 0x114 +#define RPMAC_TXPACKETNUM 0x118 +#define RPMAC_TXIDLE 0x11c +#define RPMAC_TXMACHEADER0 0x120 +#define RPMAC_TXMACHEADER1 0x124 +#define RPMAC_TXMACHEADER2 0x128 +#define RPMAC_TXMACHEADER3 0x12c +#define RPMAC_TXMACHEADER4 0x130 +#define RPMAC_TXMACHEADER5 0x134 +#define RPMAC_TXDADATYPE 0x138 +#define RPMAC_TXRANDOMSEED 0x13c +#define RPMAC_CCKPLCPPREAMBLE 0x140 +#define RPMAC_CCKPLCPHEADER 0x144 +#define RPMAC_CCKCRC16 0x148 +#define RPMAC_OFDMRXCRC32OK 0x170 +#define RPMAC_OFDMRXCRC32ER 0x174 +#define RPMAC_OFDMRXPARITYER 0x178 +#define RPMAC_OFDMRXCRC8ER 0x17c +#define RPMAC_CCKCRXRC16ER 0x180 +#define RPMAC_CCKCRXRC32ER 0x184 +#define RPMAC_CCKCRXRC32OK 0x188 +#define RPMAC_TXSTATUS 0x18c + +#define RFPGA0_RFMOD 0x800 + +#define RFPGA0_TXINFO 0x804 +#define RFPGA0_PSDFUNCTION 0x808 + +#define RFPGA0_TXGAINSTAGE 0x80c + +#define RFPGA0_RFTIMING1 0x810 +#define RFPGA0_RFTIMING2 0x814 + +#define RFPGA0_XA_HSSIPARAMETER1 0x820 +#define RFPGA0_XA_HSSIPARAMETER2 0x824 +#define RFPGA0_XB_HSSIPARAMETER1 0x828 +#define RFPGA0_XB_HSSIPARAMETER2 0x82c + +#define RFPGA0_XA_LSSIPARAMETER 0x840 +#define RFPGA0_XB_LSSIPARAMETER 0x844 + +#define RFPGA0_RFWAKEUPPARAMETER 0x850 +#define RFPGA0_RFSLEEPUPPARAMETER 0x854 + +#define RFPGA0_XAB_SWITCHCONTROL 0x858 +#define RFPGA0_XCD_SWITCHCONTROL 0x85c + +#define RFPGA0_XA_RFINTERFACEOE 0x860 +#define RFPGA0_XB_RFINTERFACEOE 0x864 + +#define RFPGA0_XAB_RFINTERFACESW 0x870 +#define RFPGA0_XCD_RFINTERFACESW 0x874 + +#define RFPGA0_XAB_RFPARAMETER 0x878 +#define RFPGA0_XCD_RFPARAMETER 0x87c + +#define RFPGA0_ANALOGPARAMETER1 0x880 +#define RFPGA0_ANALOGPARAMETER2 0x884 +#define RFPGA0_ANALOGPARAMETER3 0x888 +#define RFPGA0_ANALOGPARAMETER4 0x88c + +#define RFPGA0_XA_LSSIREADBACK 0x8a0 +#define RFPGA0_XB_LSSIREADBACK 0x8a4 +#define RFPGA0_XC_LSSIREADBACK 0x8a8 +#define RFPGA0_XD_LSSIREADBACK 0x8ac + +#define RFPGA0_PSDREPORT 0x8b4 +#define TRANSCEIVEA_HSPI_READBACK 0x8b8 +#define TRANSCEIVEB_HSPI_READBACK 0x8bc +#define REG_SC_CNT 0x8c4 +#define RFPGA0_XAB_RFINTERFACERB 0x8e0 +#define RFPGA0_XCD_RFINTERFACERB 0x8e4 + +#define RFPGA1_RFMOD 0x900 + +#define RFPGA1_TXBLOCK 0x904 +#define RFPGA1_DEBUGSELECT 0x908 +#define RFPGA1_TXINFO 0x90c + +#define RCCK0_SYSTEM 0xa00 + +#define RCCK0_AFESETTING 0xa04 +#define RCCK0_CCA 0xa08 + +#define RCCK0_RXAGC1 0xa0c +#define RCCK0_RXAGC2 0xa10 + +#define RCCK0_RXHP 0xa14 + +#define RCCK0_DSPPARAMETER1 0xa18 +#define RCCK0_DSPPARAMETER2 0xa1c + +#define RCCK0_TXFILTER1 0xa20 +#define RCCK0_TXFILTER2 0xa24 +#define RCCK0_DEBUGPORT 0xa28 +#define RCCK0_FALSEALARMREPORT 0xa2c +#define RCCK0_TRSSIREPORT 0xa50 +#define RCCK0_RXREPORT 0xa54 +#define RCCK0_FACOUNTERLOWER 0xa5c +#define RCCK0_FACOUNTERUPPER 0xa58 +#define RCCK0_CCA_CNT 0xa60 + + +/* PageB(0xB00) */ +#define RPDP_ANTA 0xb00 +#define RPDP_ANTA_4 0xb04 +#define RPDP_ANTA_8 0xb08 +#define RPDP_ANTA_C 0xb0c +#define RPDP_ANTA_10 0xb10 +#define RPDP_ANTA_14 0xb14 +#define RPDP_ANTA_18 0xb18 +#define RPDP_ANTA_1C 0xb1c +#define RPDP_ANTA_20 0xb20 +#define RPDP_ANTA_24 0xb24 + +#define RCONFIG_PMPD_ANTA 0xb28 +#define CONFIG_RAM64X16 0xb2c + +#define RBNDA 0xb30 +#define RHSSIPAR 0xb34 + +#define RCONFIG_ANTA 0xb68 +#define RCONFIG_ANTB 0xb6c + +#define RPDP_ANTB 0xb70 +#define RPDP_ANTB_4 0xb74 +#define RPDP_ANTB_8 0xb78 +#define RPDP_ANTB_C 0xb7c +#define RPDP_ANTB_10 0xb80 +#define RPDP_ANTB_14 0xb84 +#define RPDP_ANTB_18 0xb88 +#define RPDP_ANTB_1C 0xb8c +#define RPDP_ANTB_20 0xb90 +#define RPDP_ANTB_24 0xb94 + +#define RCONFIG_PMPD_ANTB 0xb98 + +#define RBNDB 0xba0 + +#define RAPK 0xbd8 +#define RPM_RX0_ANTA 0xbdc +#define RPM_RX1_ANTA 0xbe0 +#define RPM_RX2_ANTA 0xbe4 +#define RPM_RX3_ANTA 0xbe8 +#define RPM_RX0_ANTB 0xbec +#define RPM_RX1_ANTB 0xbf0 +#define RPM_RX2_ANTB 0xbf4 +#define RPM_RX3_ANTB 0xbf8 + +/*Page C*/ +#define ROFDM0_LSTF 0xc00 + +#define ROFDM0_TRXPATHENABLE 0xc04 +#define ROFDM0_TRMUXPAR 0xc08 +#define ROFDM0_TRSWISOLATION 0xc0c + +#define ROFDM0_XARXAFE 0xc10 +#define ROFDM0_XARXIQIMBALANCE 0xc14 +#define ROFDM0_XBRXAFE 0xc18 +#define ROFDM0_XBRXIQIMBALANCE 0xc1c +#define ROFDM0_XCRXAFE 0xc20 +#define ROFDM0_XCRXIQIMBANLANCE 0xc24 +#define ROFDM0_XDRXAFE 0xc28 +#define ROFDM0_XDRXIQIMBALANCE 0xc2c + +#define ROFDM0_RXDETECTOR1 0xc30 +#define ROFDM0_RXDETECTOR2 0xc34 +#define ROFDM0_RXDETECTOR3 0xc38 +#define ROFDM0_RXDETECTOR4 0xc3c + +#define ROFDM0_RXDSP 0xc40 +#define ROFDM0_CFOANDDAGC 0xc44 +#define ROFDM0_CCADROPTHRESHOLD 0xc48 +#define ROFDM0_ECCATHRESHOLD 0xc4c + +#define ROFDM0_XAAGCCORE1 0xc50 +#define ROFDM0_XAAGCCORE2 0xc54 +#define ROFDM0_XBAGCCORE1 0xc58 +#define ROFDM0_XBAGCCORE2 0xc5c +#define ROFDM0_XCAGCCORE1 0xc60 +#define ROFDM0_XCAGCCORE2 0xc64 +#define ROFDM0_XDAGCCORE1 0xc68 +#define ROFDM0_XDAGCCORE2 0xc6c + +#define ROFDM0_AGCPARAMETER1 0xc70 +#define ROFDM0_AGCPARAMETER2 0xc74 +#define ROFDM0_AGCRSSITABLE 0xc78 +#define ROFDM0_HTSTFAGC 0xc7c + +#define ROFDM0_XATXIQIMBALANCE 0xc80 +#define ROFDM0_XATXAFE 0xc84 +#define ROFDM0_XBTXIQIMBALANCE 0xc88 +#define ROFDM0_XBTXAFE 0xc8c +#define ROFDM0_XCTXIQIMBALANCE 0xc90 +#define ROFDM0_XCTXAFE 0xc94 +#define ROFDM0_XDTXIQIMBALANCE 0xc98 +#define ROFDM0_XDTXAFE 0xc9c + +#define ROFDM0_RXIQEXTANTA 0xca0 +#define ROFDM0_TXCOEFF1 0xca4 +#define ROFDM0_TXCOEFF2 0xca8 +#define ROFDM0_TXCOEFF3 0xcac +#define ROFDM0_TXCOEFF4 0xcb0 +#define ROFDM0_TXCOEFF5 0xcb4 +#define ROFDM0_TXCOEFF6 0xcb8 + +#define ROFDM0_RXHPPARAMETER 0xce0 +#define ROFDM0_TXPSEUDONOISEWGT 0xce4 +#define ROFDM0_FRAMESYNC 0xcf0 +#define ROFDM0_DFSREPORT 0xcf4 + + +#define ROFDM1_LSTF 0xd00 +#define ROFDM1_TRXPATHENABLE 0xd04 + +#define ROFDM1_CF0 0xd08 +#define ROFDM1_CSI1 0xd10 +#define ROFDM1_SBD 0xd14 +#define ROFDM1_CSI2 0xd18 +#define ROFDM1_CFOTRACKING 0xd2c +#define ROFDM1_TRXMESAURE1 0xd34 +#define ROFDM1_INTFDET 0xd3c +#define ROFDM1_PSEUDONOISESTATEAB 0xd50 +#define ROFDM1_PSEUDONOISESTATECD 0xd54 +#define ROFDM1_RXPSEUDONOISEWGT 0xd58 + +#define ROFDM_PHYCOUNTER1 0xda0 +#define ROFDM_PHYCOUNTER2 0xda4 +#define ROFDM_PHYCOUNTER3 0xda8 + +#define ROFDM_SHORTCFOAB 0xdac +#define ROFDM_SHORTCFOCD 0xdb0 +#define ROFDM_LONGCFOAB 0xdb4 +#define ROFDM_LONGCFOCD 0xdb8 +#define ROFDM_TAILCF0AB 0xdbc +#define ROFDM_TAILCF0CD 0xdc0 +#define ROFDM_PWMEASURE1 0xdc4 +#define ROFDM_PWMEASURE2 0xdc8 +#define ROFDM_BWREPORT 0xdcc +#define ROFDM_AGCREPORT 0xdd0 +#define ROFDM_RXSNR 0xdd4 +#define ROFDM_RXEVMCSI 0xdd8 +#define ROFDM_SIGREPORT 0xddc + +#define RTXAGC_A_RATE18_06 0xe00 +#define RTXAGC_A_RATE54_24 0xe04 +#define RTXAGC_A_CCK1_MCS32 0xe08 +#define RTXAGC_A_MCS03_MCS00 0xe10 +#define RTXAGC_A_MCS07_MCS04 0xe14 +#define RTXAGC_A_MCS11_MCS08 0xe18 +#define RTXAGC_A_MCS15_MCS12 0xe1c + +#define RTXAGC_B_RATE18_06 0x830 +#define RTXAGC_B_RATE54_24 0x834 +#define RTXAGC_B_CCK1_55_MCS32 0x838 +#define RTXAGC_B_MCS03_MCS00 0x83c +#define RTXAGC_B_MCS07_MCS04 0x848 +#define RTXAGC_B_MCS11_MCS08 0x84c +#define RTXAGC_B_MCS15_MCS12 0x868 +#define RTXAGC_B_CCK11_A_CCK2_11 0x86c + +#define RFPGA0_IQK 0xe28 +#define RTX_IQK_TONE_A 0xe30 +#define RRX_IQK_TONE_A 0xe34 +#define RTX_IQK_PI_A 0xe38 +#define RRX_IQK_PI_A 0xe3c + +#define RTX_IQK 0xe40 +#define RRX_IQK 0xe44 +#define RIQK_AGC_PTS 0xe48 +#define RIQK_AGC_RSP 0xe4c +#define RTX_IQK_TONE_B 0xe50 +#define RRX_IQK_TONE_B 0xe54 +#define RTX_IQK_PI_B 0xe58 +#define RRX_IQK_PI_B 0xe5c +#define RIQK_AGC_CONT 0xe60 + +#define RBLUE_TOOTH 0xe6c +#define RRX_WAIT_CCA 0xe70 +#define RTX_CCK_RFON 0xe74 +#define RTX_CCK_BBON 0xe78 +#define RTX_OFDM_RFON 0xe7c +#define RTX_OFDM_BBON 0xe80 +#define RTX_TO_RX 0xe84 +#define RTX_TO_TX 0xe88 +#define RRX_CCK 0xe8c + +#define RTX_POWER_BEFORE_IQK_A 0xe94 +#define RTX_POWER_AFTER_IQK_A 0xe9c + +#define RRX_POWER_BEFORE_IQK_A 0xea0 +#define RRX_POWER_BEFORE_IQK_A_2 0xea4 +#define RRX_POWER_AFTER_IQK_A 0xea8 +#define RRX_POWER_AFTER_IQK_A_2 0xeac + +#define RTX_POWER_BEFORE_IQK_B 0xeb4 +#define RTX_POWER_AFTER_IQK_B 0xebc + +#define RRX_POWER_BEFORE_IQK_B 0xec0 +#define RRX_POWER_BEFORE_IQK_B_2 0xec4 +#define RRX_POWER_AFTER_IQK_B 0xec8 +#define RRX_POWER_AFTER_IQK_B_2 0xecc + +#define RRX_OFDM 0xed0 +#define RRX_WAIT_RIFS 0xed4 +#define RRX_TO_RX 0xed8 +#define RSTANDBY 0xedc +#define RSLEEP 0xee0 +#define RPMPD_ANAEN 0xeec + +#define RZEBRA1_HSSIENABLE 0x0 +#define RZEBRA1_TRXENABLE1 0x1 +#define RZEBRA1_TRXENABLE2 0x2 +#define RZEBRA1_AGC 0x4 +#define RZEBRA1_CHARGEPUMP 0x5 +#define RZEBRA1_CHANNEL 0x7 + +#define RZEBRA1_TXGAIN 0x8 +#define RZEBRA1_TXLPF 0x9 +#define RZEBRA1_RXLPF 0xb +#define RZEBRA1_RXHPFCORNER 0xc + +#define RGLOBALCTRL 0 +#define RRTL8256_TXLPF 19 +#define RRTL8256_RXLPF 11 +#define RRTL8258_TXLPF 0x11 +#define RRTL8258_RXLPF 0x13 +#define RRTL8258_RSSILPF 0xa + +#define RF_AC 0x00 + +#define RF_IQADJ_G1 0x01 +#define RF_IQADJ_G2 0x02 +#define RF_POW_TRSW 0x05 + +#define RF_GAIN_RX 0x06 +#define RF_GAIN_TX 0x07 + +#define RF_TXM_IDAC 0x08 +#define RF_BS_IQGEN 0x0F + +#define RF_MODE1 0x10 +#define RF_MODE2 0x11 + +#define RF_RX_AGC_HP 0x12 +#define RF_TX_AGC 0x13 +#define RF_BIAS 0x14 +#define RF_IPA 0x15 +#define RF_POW_ABILITY 0x17 +#define RF_MODE_AG 0x18 +#define RRFCHANNEL 0x18 +#define RF_CHNLBW 0x18 +#define RF_TOP 0x19 + +#define RF_RX_G1 0x1A +#define RF_RX_G2 0x1B + +#define RF_RX_BB2 0x1C +#define RF_RX_BB1 0x1D + +#define RF_RCK1 0x1E +#define RF_RCK2 0x1F + +#define RF_TX_G1 0x20 +#define RF_TX_G2 0x21 +#define RF_TX_G3 0x22 + +#define RF_TX_BB1 0x23 +#define RF_T_METER 0x42 + +#define RF_SYN_G1 0x25 +#define RF_SYN_G2 0x26 +#define RF_SYN_G3 0x27 +#define RF_SYN_G4 0x28 +#define RF_SYN_G5 0x29 +#define RF_SYN_G6 0x2A +#define RF_SYN_G7 0x2B +#define RF_SYN_G8 0x2C + +#define RF_RCK_OS 0x30 +#define RF_TXPA_G1 0x31 +#define RF_TXPA_G2 0x32 +#define RF_TXPA_G3 0x33 + +#define RF_TX_BIAS_A 0x35 +#define RF_TX_BIAS_D 0x36 +#define RF_LOBF_9 0x38 +#define RF_RXRF_A3 0x3C +#define RF_TRSW 0x3F + +#define RF_TXRF_A2 0x41 +#define RF_TXPA_G4 0x46 +#define RF_TXPA_A4 0x4B + +#define RF_WE_LUT 0xEF + +#define BBBRESETB 0x100 +#define BGLOBALRESETB 0x200 +#define BOFDMTXSTART 0x4 +#define BCCKTXSTART 0x8 +#define BCRC32DEBUG 0x100 +#define BPMACLOOPBACK 0x10 +#define BTXLSIG 0xffffff +#define BOFDMTXRATE 0xf +#define BOFDMTXRESERVED 0x10 +#define BOFDMTXLENGTH 0x1ffe0 +#define BOFDMTXPARITY 0x20000 +#define BTXHTSIG1 0xffffff +#define BTXHTMCSRATE 0x7f +#define BTXHTBW 0x80 +#define BTXHTLENGTH 0xffff00 +#define BTXHTSIG2 0xffffff +#define BTXHTSMOOTHING 0x1 +#define BTXHTSOUNDING 0x2 +#define BTXHTRESERVED 0x4 +#define BTXHTAGGREATION 0x8 +#define BTXHTSTBC 0x30 +#define BTXHTADVANCECODING 0x40 +#define BTXHTSHORTGI 0x80 +#define BTXHTNUMBERHT_LTF 0x300 +#define BTXHTCRC8 0x3fc00 +#define BCOUNTERRESET 0x10000 +#define BNUMOFOFDMTX 0xffff +#define BNUMOFCCKTX 0xffff0000 +#define BTXIDLEINTERVAL 0xffff +#define BOFDMSERVICE 0xffff0000 +#define BTXMACHEADER 0xffffffff +#define BTXDATAINIT 0xff +#define BTXHTMODE 0x100 +#define BTXDATATYPE 0x30000 +#define BTXRANDOMSEED 0xffffffff +#define BCCKTXPREAMBLE 0x1 +#define BCCKTXSFD 0xffff0000 +#define BCCKTXSIG 0xff +#define BCCKTXSERVICE 0xff00 +#define BCCKLENGTHEXT 0x8000 +#define BCCKTXLENGHT 0xffff0000 +#define BCCKTXCRC16 0xffff +#define BCCKTXSTATUS 0x1 +#define BOFDMTXSTATUS 0x2 +#define IS_BB_REG_OFFSET_92S(_offset) \ + ((_offset >= 0x800) && (_offset <= 0xfff)) + +#define BRFMOD 0x1 +#define BJAPANMODE 0x2 +#define BCCKTXSC 0x30 +#define BCCKEN 0x1000000 +#define BOFDMEN 0x2000000 + +#define BOFDMRXADCPHASE 0x10000 +#define BOFDMTXDACPHASE 0x40000 +#define BXATXAGC 0x3f + +#define BXBTXAGC 0xf00 +#define BXCTXAGC 0xf000 +#define BXDTXAGC 0xf0000 + +#define BPASTART 0xf0000000 +#define BTRSTART 0x00f00000 +#define BRFSTART 0x0000f000 +#define BBBSTART 0x000000f0 +#define BBBCCKSTART 0x0000000f +#define BPAEND 0xf +#define BTREND 0x0f000000 +#define BRFEND 0x000f0000 +#define BCCAMASK 0x000000f0 +#define BR2RCCAMASK 0x00000f00 +#define BHSSI_R2TDELAY 0xf8000000 +#define BHSSI_T2RDELAY 0xf80000 +#define BCONTXHSSI 0x400 +#define BIGFROMCCK 0x200 +#define BAGCADDRESS 0x3f +#define BRXHPTX 0x7000 +#define BRXHP2RX 0x38000 +#define BRXHPCCKINI 0xc0000 +#define BAGCTXCODE 0xc00000 +#define BAGCRXCODE 0x300000 + +#define B3WIREDATALENGTH 0x800 +#define B3WIREADDREAALENGTH 0x400 + +#define B3WIRERFPOWERDOWN 0x1 +#define B5GPAPEPOLARITY 0x40000000 +#define B2GPAPEPOLARITY 0x80000000 +#define BRFSW_TXDEFAULTANT 0x3 +#define BRFSW_TXOPTIONANT 0x30 +#define BRFSW_RXDEFAULTANT 0x300 +#define BRFSW_RXOPTIONANT 0x3000 +#define BRFSI_3WIREDATA 0x1 +#define BRFSI_3WIRECLOCK 0x2 +#define BRFSI_3WIRELOAD 0x4 +#define BRFSI_3WIRERW 0x8 +#define BRFSI_3WIRE 0xf + +#define BRFSI_RFENV 0x10 + +#define BRFSI_TRSW 0x20 +#define BRFSI_TRSWB 0x40 +#define BRFSI_ANTSW 0x100 +#define BRFSI_ANTSWB 0x200 +#define BRFSI_PAPE 0x400 +#define BRFSI_PAPE5G 0x800 +#define BBANDSELECT 0x1 +#define BHTSIG2_GI 0x80 +#define BHTSIG2_SMOOTHING 0x01 +#define BHTSIG2_SOUNDING 0x02 +#define BHTSIG2_AGGREATON 0x08 +#define BHTSIG2_STBC 0x30 +#define BHTSIG2_ADVCODING 0x40 +#define BHTSIG2_NUMOFHTLTF 0x300 +#define BHTSIG2_CRC8 0x3fc +#define BHTSIG1_MCS 0x7f +#define BHTSIG1_BANDWIDTH 0x80 +#define BHTSIG1_HTLENGTH 0xffff +#define BLSIG_RATE 0xf +#define BLSIG_RESERVED 0x10 +#define BLSIG_LENGTH 0x1fffe +#define BLSIG_PARITY 0x20 +#define BCCKRXPHASE 0x4 + +#define BLSSIREADADDRESS 0x7f800000 +#define BLSSIREADEDGE 0x80000000 + +#define BLSSIREADBACKDATA 0xfffff + +#define BLSSIREADOKFLAG 0x1000 +#define BCCKSAMPLERATE 0x8 +#define BREGULATOR0STANDBY 0x1 +#define BREGULATORPLLSTANDBY 0x2 +#define BREGULATOR1STANDBY 0x4 +#define BPLLPOWERUP 0x8 +#define BDPLLPOWERUP 0x10 +#define BDA10POWERUP 0x20 +#define BAD7POWERUP 0x200 +#define BDA6POWERUP 0x2000 +#define BXTALPOWERUP 0x4000 +#define B40MDCLKPOWERUP 0x8000 +#define BDA6DEBUGMODE 0x20000 +#define BDA6SWING 0x380000 + +#define BADCLKPHASE 0x4000000 +#define B80MCLKDELAY 0x18000000 +#define BAFEWATCHDOGENABLE 0x20000000 + +#define BXTALCAP01 0xc0000000 +#define BXTALCAP23 0x3 +#define BXTALCAP92X 0x0f000000 +#define BXTALCAP 0x0f000000 + +#define BINTDIFCLKENABLE 0x400 +#define BEXTSIGCLKENABLE 0x800 +#define BBANDGAP_MBIAS_POWERUP 0x10000 +#define BAD11SH_GAIN 0xc0000 +#define BAD11NPUT_RANGE 0x700000 +#define BAD110P_CURRENT 0x3800000 +#define BLPATH_LOOPBACK 0x4000000 +#define BQPATH_LOOPBACK 0x8000000 +#define BAFE_LOOPBACK 0x10000000 +#define BDA10_SWING 0x7e0 +#define BDA10_REVERSE 0x800 +#define BDA_CLK_SOURCE 0x1000 +#define BDA7INPUT_RANGE 0x6000 +#define BDA7_GAIN 0x38000 +#define BDA7OUTPUT_CM_MODE 0x40000 +#define BDA7INPUT_CM_MODE 0x380000 +#define BDA7CURRENT 0xc00000 +#define BREGULATOR_ADJUST 0x7000000 +#define BAD11POWERUP_ATTX 0x1 +#define BDA10PS_ATTX 0x10 +#define BAD11POWERUP_ATRX 0x100 +#define BDA10PS_ATRX 0x1000 +#define BCCKRX_AGC_FORMAT 0x200 +#define BPSDFFT_SAMPLE_POINT 0xc000 +#define BPSD_AVERAGE_NUM 0x3000 +#define BIQPATH_CONTROL 0xc00 +#define BPSD_FREQ 0x3ff +#define BPSD_ANTENNA_PATH 0x30 +#define BPSD_IQ_SWITCH 0x40 +#define BPSD_RX_TRIGGER 0x400000 +#define BPSD_TX_TRIGGER 0x80000000 +#define BPSD_SINE_TONE_SCALE 0x7f000000 +#define BPSD_REPORT 0xffff + +#define BOFDM_TXSC 0x30000000 +#define BCCK_TXON 0x1 +#define BOFDM_TXON 0x2 +#define BDEBUG_PAGE 0xfff +#define BDEBUG_ITEM 0xff +#define BANTL 0x10 +#define BANT_NONHT 0x100 +#define BANT_HT1 0x1000 +#define BANT_HT2 0x10000 +#define BANT_HT1S1 0x100000 +#define BANT_NONHTS1 0x1000000 + +#define BCCK_BBMODE 0x3 +#define BCCK_TXPOWERSAVING 0x80 +#define BCCK_RXPOWERSAVING 0x40 + +#define BCCK_SIDEBAND 0x10 + +#define BCCK_SCRAMBLE 0x8 +#define BCCK_ANTDIVERSITY 0x8000 +#define BCCK_CARRIER_RECOVERY 0x4000 +#define BCCK_TXRATE 0x3000 +#define BCCK_DCCANCEL 0x0800 +#define BCCK_ISICANCEL 0x0400 +#define BCCK_MATCH_FILTER 0x0200 +#define BCCK_EQUALIZER 0x0100 +#define BCCK_PREAMBLE_DETECT 0x800000 +#define BCCK_FAST_FALSECCA 0x400000 +#define BCCK_CH_ESTSTART 0x300000 +#define BCCK_CCA_COUNT 0x080000 +#define BCCK_CS_LIM 0x070000 +#define BCCK_BIST_MODE 0x80000000 +#define BCCK_CCAMASK 0x40000000 +#define BCCK_TX_DAC_PHASE 0x4 +#define BCCK_RX_ADC_PHASE 0x20000000 +#define BCCKR_CP_MODE 0x0100 +#define BCCK_TXDC_OFFSET 0xf0 +#define BCCK_RXDC_OFFSET 0xf +#define BCCK_CCA_MODE 0xc000 +#define BCCK_FALSECS_LIM 0x3f00 +#define BCCK_CS_RATIO 0xc00000 +#define BCCK_CORGBIT_SEL 0x300000 +#define BCCK_PD_LIM 0x0f0000 +#define BCCK_NEWCCA 0x80000000 +#define BCCK_RXHP_OF_IG 0x8000 +#define BCCK_RXIG 0x7f00 +#define BCCK_LNA_POLARITY 0x800000 +#define BCCK_RX1ST_BAIN 0x7f0000 +#define BCCK_RF_EXTEND 0x20000000 +#define BCCK_RXAGC_SATLEVEL 0x1f000000 +#define BCCK_RXAGC_SATCOUNT 0xe0 +#define BCCKRXRFSETTLE 0x1f +#define BCCK_FIXED_RXAGC 0x8000 +#define BCCK_ANTENNA_POLARITY 0x2000 +#define BCCK_TXFILTER_TYPE 0x0c00 +#define BCCK_RXAGC_REPORTTYPE 0x0300 +#define BCCK_RXDAGC_EN 0x80000000 +#define BCCK_RXDAGC_PERIOD 0x20000000 +#define BCCK_RXDAGC_SATLEVEL 0x1f000000 +#define BCCK_TIMING_RECOVERY 0x800000 +#define BCCK_TXC0 0x3f0000 +#define BCCK_TXC1 0x3f000000 +#define BCCK_TXC2 0x3f +#define BCCK_TXC3 0x3f00 +#define BCCK_TXC4 0x3f0000 +#define BCCK_TXC5 0x3f000000 +#define BCCK_TXC6 0x3f +#define BCCK_TXC7 0x3f00 +#define BCCK_DEBUGPORT 0xff0000 +#define BCCK_DAC_DEBUG 0x0f000000 +#define BCCK_FALSEALARM_ENABLE 0x8000 +#define BCCK_FALSEALARM_READ 0x4000 +#define BCCK_TRSSI 0x7f +#define BCCK_RXAGC_REPORT 0xfe +#define BCCK_RXREPORT_ANTSEL 0x80000000 +#define BCCK_RXREPORT_MFOFF 0x40000000 +#define BCCK_RXREPORT_SQLOSS 0x20000000 +#define BCCK_RXREPORT_PKTLOSS 0x10000000 +#define BCCK_RXREPORT_LOCKEDBIT 0x08000000 +#define BCCK_RXREPORT_RATEERROR 0x04000000 +#define BCCK_RXREPORT_RXRATE 0x03000000 +#define BCCK_RXFA_COUNTER_LOWER 0xff +#define BCCK_RXFA_COUNTER_UPPER 0xff000000 +#define BCCK_RXHPAGC_START 0xe000 +#define BCCK_RXHPAGC_FINAL 0x1c00 +#define BCCK_RXFALSEALARM_ENABLE 0x8000 +#define BCCK_FACOUNTER_FREEZE 0x4000 +#define BCCK_TXPATH_SEL 0x10000000 +#define BCCK_DEFAULT_RXPATH 0xc000000 +#define BCCK_OPTION_RXPATH 0x3000000 + +#define BNUM_OFSTF 0x3 +#define BSHIFT_L 0xc0 +#define BGI_TH 0xc +#define BRXPATH_A 0x1 +#define BRXPATH_B 0x2 +#define BRXPATH_C 0x4 +#define BRXPATH_D 0x8 +#define BTXPATH_A 0x1 +#define BTXPATH_B 0x2 +#define BTXPATH_C 0x4 +#define BTXPATH_D 0x8 +#define BTRSSI_FREQ 0x200 +#define BADC_BACKOFF 0x3000 +#define BDFIR_BACKOFF 0xc000 +#define BTRSSI_LATCH_PHASE 0x10000 +#define BRX_LDC_OFFSET 0xff +#define BRX_QDC_OFFSET 0xff00 +#define BRX_DFIR_MODE 0x1800000 +#define BRX_DCNF_TYPE 0xe000000 +#define BRXIQIMB_A 0x3ff +#define BRXIQIMB_B 0xfc00 +#define BRXIQIMB_C 0x3f0000 +#define BRXIQIMB_D 0xffc00000 +#define BDC_DC_NOTCH 0x60000 +#define BRXNB_NOTCH 0x1f000000 +#define BPD_TH 0xf +#define BPD_TH_OPT2 0xc000 +#define BPWED_TH 0x700 +#define BIFMF_WIN_L 0x800 +#define BPD_OPTION 0x1000 +#define BMF_WIN_L 0xe000 +#define BBW_SEARCH_L 0x30000 +#define BWIN_ENH_L 0xc0000 +#define BBW_TH 0x700000 +#define BED_TH2 0x3800000 +#define BBW_OPTION 0x4000000 +#define BRADIO_TH 0x18000000 +#define BWINDOW_L 0xe0000000 +#define BSBD_OPTION 0x1 +#define BFRAME_TH 0x1c +#define BFS_OPTION 0x60 +#define BDC_SLOPE_CHECK 0x80 +#define BFGUARD_COUNTER_DC_L 0xe00 +#define BFRAME_WEIGHT_SHORT 0x7000 +#define BSUB_TUNE 0xe00000 +#define BFRAME_DC_LENGTH 0xe000000 +#define BSBD_START_OFFSET 0x30000000 +#define BFRAME_TH_2 0x7 +#define BFRAME_GI2_TH 0x38 +#define BGI2_SYNC_EN 0x40 +#define BSARCH_SHORT_EARLY 0x300 +#define BSARCH_SHORT_LATE 0xc00 +#define BSARCH_GI2_LATE 0x70000 +#define BCFOANTSUM 0x1 +#define BCFOACC 0x2 +#define BCFOSTARTOFFSET 0xc +#define BCFOLOOPBACK 0x70 +#define BCFOSUMWEIGHT 0x80 +#define BDAGCENABLE 0x10000 +#define BTXIQIMB_A 0x3ff +#define BTXIQIMB_b 0xfc00 +#define BTXIQIMB_C 0x3f0000 +#define BTXIQIMB_D 0xffc00000 +#define BTXIDCOFFSET 0xff +#define BTXIQDCOFFSET 0xff00 +#define BTXDFIRMODE 0x10000 +#define BTXPESUDO_NOISEON 0x4000000 +#define BTXPESUDO_NOISE_A 0xff +#define BTXPESUDO_NOISE_B 0xff00 +#define BTXPESUDO_NOISE_C 0xff0000 +#define BTXPESUDO_NOISE_D 0xff000000 +#define BCCA_DROPOPTION 0x20000 +#define BCCA_DROPTHRES 0xfff00000 +#define BEDCCA_H 0xf +#define BEDCCA_L 0xf0 +#define BLAMBDA_ED 0x300 +#define BRX_INITIALGAIN 0x7f +#define BRX_ANTDIV_EN 0x80 +#define BRX_AGC_ADDRESS_FOR_LNA 0x7f00 +#define BRX_HIGHPOWER_FLOW 0x8000 +#define BRX_AGC_FREEZE_THRES 0xc0000 +#define BRX_FREEZESTEP_AGC1 0x300000 +#define BRX_FREEZESTEP_AGC2 0xc00000 +#define BRX_FREEZESTEP_AGC3 0x3000000 +#define BRX_FREEZESTEP_AGC0 0xc000000 +#define BRXRSSI_CMP_EN 0x10000000 +#define BRXQUICK_AGCEN 0x20000000 +#define BRXAGC_FREEZE_THRES_MODE 0x40000000 +#define BRX_OVERFLOW_CHECKTYPE 0x80000000 +#define BRX_AGCSHIFT 0x7f +#define BTRSW_TRI_ONLY 0x80 +#define BPOWER_THRES 0x300 +#define BRXAGC_EN 0x1 +#define BRXAGC_TOGETHER_EN 0x2 +#define BRXAGC_MIN 0x4 +#define BRXHP_INI 0x7 +#define BRXHP_TRLNA 0x70 +#define BRXHP_RSSI 0x700 +#define BRXHP_BBP1 0x7000 +#define BRXHP_BBP2 0x70000 +#define BRXHP_BBP3 0x700000 +#define BRSSI_H 0x7f0000 +#define BRSSI_GEN 0x7f000000 +#define BRXSETTLE_TRSW 0x7 +#define BRXSETTLE_LNA 0x38 +#define BRXSETTLE_RSSI 0x1c0 +#define BRXSETTLE_BBP 0xe00 +#define BRXSETTLE_RXHP 0x7000 +#define BRXSETTLE_ANTSW_RSSI 0x38000 +#define BRXSETTLE_ANTSW 0xc0000 +#define BRXPROCESS_TIME_DAGC 0x300000 +#define BRXSETTLE_HSSI 0x400000 +#define BRXPROCESS_TIME_BBPPW 0x800000 +#define BRXANTENNA_POWER_SHIFT 0x3000000 +#define BRSSI_TABLE_SELECT 0xc000000 +#define BRXHP_FINAL 0x7000000 +#define BRXHPSETTLE_BBP 0x7 +#define BRXHTSETTLE_HSSI 0x8 +#define BRXHTSETTLE_RXHP 0x70 +#define BRXHTSETTLE_BBPPW 0x80 +#define BRXHTSETTLE_IDLE 0x300 +#define BRXHTSETTLE_RESERVED 0x1c00 +#define BRXHT_RXHP_EN 0x8000 +#define BRXAGC_FREEZE_THRES 0x30000 +#define BRXAGC_TOGETHEREN 0x40000 +#define BRXHTAGC_MIN 0x80000 +#define BRXHTAGC_EN 0x100000 +#define BRXHTDAGC_EN 0x200000 +#define BRXHT_RXHP_BBP 0x1c00000 +#define BRXHT_RXHP_FINAL 0xe0000000 +#define BRXPW_RADIO_TH 0x3 +#define BRXPW_RADIO_EN 0x4 +#define BRXMF_HOLD 0x3800 +#define BRXPD_DELAY_TH1 0x38 +#define BRXPD_DELAY_TH2 0x1c0 +#define BRXPD_DC_COUNT_MAX 0x600 +#define BRXPD_DELAY_TH 0x8000 +#define BRXPROCESS_DELAY 0xf0000 +#define BRXSEARCHRANGE_GI2_EARLY 0x700000 +#define BRXFRAME_FUARD_COUNTER_L 0x3800000 +#define BRXSGI_GUARD_L 0xc000000 +#define BRXSGI_SEARCH_L 0x30000000 +#define BRXSGI_TH 0xc0000000 +#define BDFSCNT0 0xff +#define BDFSCNT1 0xff00 +#define BDFSFLAG 0xf0000 +#define BMF_WEIGHT_SUM 0x300000 +#define BMINIDX_TH 0x7f000000 +#define BDAFORMAT 0x40000 +#define BTXCH_EMU_ENABLE 0x01000000 +#define BTRSW_ISOLATION_A 0x7f +#define BTRSW_ISOLATION_B 0x7f00 +#define BTRSW_ISOLATION_C 0x7f0000 +#define BTRSW_ISOLATION_D 0x7f000000 +#define BEXT_LNA_GAIN 0x7c00 + +#define BSTBC_EN 0x4 +#define BANTENNA_MAPPING 0x10 +#define BNSS 0x20 +#define BCFO_ANTSUM_ID 0x200 +#define BPHY_COUNTER_RESET 0x8000000 +#define BCFO_REPORT_GET 0x4000000 +#define BOFDM_CONTINUE_TX 0x10000000 +#define BOFDM_SINGLE_CARRIER 0x20000000 +#define BOFDM_SINGLE_TONE 0x40000000 +#define BHT_DETECT 0x100 +#define BCFOEN 0x10000 +#define BCFOVALUE 0xfff00000 +#define BSIGTONE_RE 0x3f +#define BSIGTONE_IM 0x7f00 +#define BCOUNTER_CCA 0xffff +#define BCOUNTER_PARITYFAIL 0xffff0000 +#define BCOUNTER_RATEILLEGAL 0xffff +#define BCOUNTER_CRC8FAIL 0xffff0000 +#define BCOUNTER_MCSNOSUPPORT 0xffff +#define BCOUNTER_FASTSYNC 0xffff +#define BSHORTCFO 0xfff +#define BSHORTCFOT_LENGTH 12 +#define BSHORTCFOF_LENGTH 11 +#define BLONGCFO 0x7ff +#define BLONGCFOT_LENGTH 11 +#define BLONGCFOF_LENGTH 11 +#define BTAILCFO 0x1fff +#define BTAILCFOT_LENGTH 13 +#define BTAILCFOF_LENGTH 12 +#define BNOISE_EN_PWDB 0xffff +#define BCC_POWER_DB 0xffff0000 +#define BMOISE_PWDB 0xffff +#define BPOWERMEAST_LENGTH 10 +#define BPOWERMEASF_LENGTH 3 +#define BRX_HT_BW 0x1 +#define BRXSC 0x6 +#define BRX_HT 0x8 +#define BNB_INTF_DET_ON 0x1 +#define BINTF_WIN_LEN_CFG 0x30 +#define BNB_INTF_TH_CFG 0x1c0 +#define BRFGAIN 0x3f +#define BTABLESEL 0x40 +#define BTRSW 0x80 +#define BRXSNR_A 0xff +#define BRXSNR_B 0xff00 +#define BRXSNR_C 0xff0000 +#define BRXSNR_D 0xff000000 +#define BSNR_EVMT_LENGTH 8 +#define BSNR_EVMF_LENGTH 1 +#define BCSI1ST 0xff +#define BCSI2ND 0xff00 +#define BRXEVM1ST 0xff0000 +#define BRXEVM2ND 0xff000000 +#define BSIGEVM 0xff +#define BPWDB 0xff00 +#define BSGIEN 0x10000 + +#define BSFACTOR_QMA1 0xf +#define BSFACTOR_QMA2 0xf0 +#define BSFACTOR_QMA3 0xf00 +#define BSFACTOR_QMA4 0xf000 +#define BSFACTOR_QMA5 0xf0000 +#define BSFACTOR_QMA6 0xf0000 +#define BSFACTOR_QMA7 0xf00000 +#define BSFACTOR_QMA8 0xf000000 +#define BSFACTOR_QMA9 0xf0000000 +#define BCSI_SCHEME 0x100000 + +#define BNOISE_LVL_TOP_SET 0x3 +#define BCHSMOOTH 0x4 +#define BCHSMOOTH_CFG1 0x38 +#define BCHSMOOTH_CFG2 0x1c0 +#define BCHSMOOTH_CFG3 0xe00 +#define BCHSMOOTH_CFG4 0x7000 +#define BMRCMODE 0x800000 +#define BTHEVMCFG 0x7000000 + +#define BLOOP_FIT_TYPE 0x1 +#define BUPD_CFO 0x40 +#define BUPD_CFO_OFFDATA 0x80 +#define BADV_UPD_CFO 0x100 +#define BADV_TIME_CTRL 0x800 +#define BUPD_CLKO 0x1000 +#define BFC 0x6000 +#define BTRACKING_MODE 0x8000 +#define BPHCMP_ENABLE 0x10000 +#define BUPD_CLKO_LTF 0x20000 +#define BCOM_CH_CFO 0x40000 +#define BCSI_ESTI_MODE 0x80000 +#define BADV_UPD_EQZ 0x100000 +#define BUCHCFG 0x7000000 +#define BUPDEQZ 0x8000000 + +#define BRX_PESUDO_NOISE_ON 0x20000000 +#define BRX_PESUDO_NOISE_A 0xff +#define BRX_PESUDO_NOISE_B 0xff00 +#define BRX_PESUDO_NOISE_C 0xff0000 +#define BRX_PESUDO_NOISE_D 0xff000000 +#define BRX_PESUDO_NOISESTATE_A 0xffff +#define BRX_PESUDO_NOISESTATE_B 0xffff0000 +#define BRX_PESUDO_NOISESTATE_C 0xffff +#define BRX_PESUDO_NOISESTATE_D 0xffff0000 + +#define BZEBRA1_HSSIENABLE 0x8 +#define BZEBRA1_TRXCONTROL 0xc00 +#define BZEBRA1_TRXGAINSETTING 0x07f +#define BZEBRA1_RXCOUNTER 0xc00 +#define BZEBRA1_TXCHANGEPUMP 0x38 +#define BZEBRA1_RXCHANGEPUMP 0x7 +#define BZEBRA1_CHANNEL_NUM 0xf80 +#define BZEBRA1_TXLPFBW 0x400 +#define BZEBRA1_RXLPFBW 0x600 + +#define BRTL8256REG_MODE_CTRL1 0x100 +#define BRTL8256REG_MODE_CTRL0 0x40 +#define BRTL8256REG_TXLPFBW 0x18 +#define BRTL8256REG_RXLPFBW 0x600 + +#define BRTL8258_TXLPFBW 0xc +#define BRTL8258_RXLPFBW 0xc00 +#define BRTL8258_RSSILPFBW 0xc0 + +#define BBYTE0 0x1 +#define BBYTE1 0x2 +#define BBYTE2 0x4 +#define BBYTE3 0x8 +#define BWORD0 0x3 +#define BWORD1 0xc +#define BWORD 0xf + +#define MASKBYTE0 0xff +#define MASKBYTE1 0xff00 +#define MASKBYTE2 0xff0000 +#define MASKBYTE3 0xff000000 +#define MASKHWORD 0xffff0000 +#define MASKLWORD 0x0000ffff +#define MASKDWORD 0xffffffff +#define MASK12BITS 0xfff +#define MASKH4BITS 0xf0000000 +#define MASKOFDM_D 0xffc00000 +#define MASKCCK 0x3f3f3f3f + +#define MASK4BITS 0x0f +#define MASK20BITS 0xfffff +#define RFREG_OFFSET_MASK 0xfffff + +#define BENABLE 0x1 +#define BDISABLE 0x0 + +#define LEFT_ANTENNA 0x0 +#define RIGHT_ANTENNA 0x1 + +#define TCHECK_TXSTATUS 500 +#define TUPDATE_RXCOUNTER 100 + +#define REG_UN_used_register 0x01bf + +/* WOL bit information */ +#define HAL92C_WOL_PTK_UPDATE_EVENT BIT(0) +#define HAL92C_WOL_GTK_UPDATE_EVENT BIT(1) +#define HAL92C_WOL_DISASSOC_EVENT BIT(2) +#define HAL92C_WOL_DEAUTH_EVENT BIT(3) +#define HAL92C_WOL_FW_DISCONNECT_EVENT BIT(4) + +#define WOL_REASON_PTK_UPDATE BIT(0) +#define WOL_REASON_GTK_UPDATE BIT(1) +#define WOL_REASON_DISASSOC BIT(2) +#define WOL_REASON_DEAUTH BIT(3) +#define WOL_REASON_FW_DISCONNECT BIT(4) + +/* 2 EFUSE_TEST (For RTL8723 partially) */ +#define EFUSE_SEL(x) (((x) & 0x3) << 8) +#define EFUSE_SEL_MASK 0x300 +#define EFUSE_WIFI_SEL_0 0x0 + +#define WL_HWPDN_EN BIT(0) /* Enable GPIO[9] as WiFi HW PDn source*/ +#define WL_HWPDN_SL BIT(1) /* WiFi HW PDn polarity control*/ + +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/rf.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/rf.c @@ -0,0 +1,504 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "reg.h" +#include "def.h" +#include "phy.h" +#include "rf.h" +#include "dm.h" + +static bool _rtl8723be_phy_rf6052_config_parafile(struct ieee80211_hw *hw); + +void rtl8723be_phy_rf6052_set_bandwidth(struct ieee80211_hw *hw, u8 bandwidth) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + switch (bandwidth) { + case HT_CHANNEL_WIDTH_20: + rtlphy->rfreg_chnlval[0] = ((rtlphy->rfreg_chnlval[0] & + 0xfffff3ff) | BIT(10) | BIT(11)); + rtl_set_rfreg(hw, RF90_PATH_A, RF_CHNLBW, RFREG_OFFSET_MASK, + rtlphy->rfreg_chnlval[0]); + break; + case HT_CHANNEL_WIDTH_20_40: + rtlphy->rfreg_chnlval[0] = ((rtlphy->rfreg_chnlval[0] & + 0xfffff3ff) | BIT(10)); + rtl_set_rfreg(hw, RF90_PATH_A, RF_CHNLBW, RFREG_OFFSET_MASK, + rtlphy->rfreg_chnlval[0]); + break; + default: + RT_TRACE(rtlpriv, COMP_INIT, DBG_EMERG, + "unknown bandwidth: %#X\n", bandwidth); + break; + } +} + +void rtl8723be_phy_rf6052_set_cck_txpower(struct ieee80211_hw *hw, + u8 *ppowerlevel) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + u32 tx_agc[2] = {0, 0}, tmpval; + bool turbo_scanoff = false; + u8 idx1, idx2; + u8 *ptr; + u8 direction; + u32 pwrtrac_value; + + if (rtlefuse->eeprom_regulatory != 0) + turbo_scanoff = true; + + if (mac->act_scanning) { + tx_agc[RF90_PATH_A] = 0x3f3f3f3f; + tx_agc[RF90_PATH_B] = 0x3f3f3f3f; + + if (turbo_scanoff) { + for (idx1 = RF90_PATH_A; idx1 <= RF90_PATH_B; idx1++) { + tx_agc[idx1] = ppowerlevel[idx1] | + (ppowerlevel[idx1] << 8) | + (ppowerlevel[idx1] << 16) | + (ppowerlevel[idx1] << 24); + } + } + } else { + for (idx1 = RF90_PATH_A; idx1 <= RF90_PATH_B; idx1++) { + tx_agc[idx1] = ppowerlevel[idx1] | + (ppowerlevel[idx1] << 8) | + (ppowerlevel[idx1] << 16) | + (ppowerlevel[idx1] << 24); + } + if (rtlefuse->eeprom_regulatory == 0) { + tmpval = + (rtlphy->mcs_offset[0][6]) + + (rtlphy->mcs_offset[0][7] << 8); + tx_agc[RF90_PATH_A] += tmpval; + + tmpval = (rtlphy->mcs_offset[0][14]) + + (rtlphy->mcs_offset[0][15] << + 24); + tx_agc[RF90_PATH_B] += tmpval; + } + } + for (idx1 = RF90_PATH_A; idx1 <= RF90_PATH_B; idx1++) { + ptr = (u8 *)(&(tx_agc[idx1])); + for (idx2 = 0; idx2 < 4; idx2++) { + if (*ptr > RF6052_MAX_TX_PWR) + *ptr = RF6052_MAX_TX_PWR; + ptr++; + } + } + rtl8723be_dm_txpower_track_adjust(hw, 1, &direction, &pwrtrac_value); + if (direction == 1) { + tx_agc[0] += pwrtrac_value; + tx_agc[1] += pwrtrac_value; + } else if (direction == 2) { + tx_agc[0] -= pwrtrac_value; + tx_agc[1] -= pwrtrac_value; + } + tmpval = tx_agc[RF90_PATH_A] & 0xff; + rtl_set_bbreg(hw, RTXAGC_A_CCK1_MCS32, MASKBYTE1, tmpval); + + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "CCK PWR 1M (rf-A) = 0x%x (reg 0x%x)\n", tmpval, + RTXAGC_A_CCK1_MCS32); + + tmpval = tx_agc[RF90_PATH_A] >> 8; + + rtl_set_bbreg(hw, RTXAGC_B_CCK11_A_CCK2_11, 0xffffff00, tmpval); + + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "CCK PWR 2~11M (rf-A) = 0x%x (reg 0x%x)\n", tmpval, + RTXAGC_B_CCK11_A_CCK2_11); + + tmpval = tx_agc[RF90_PATH_B] >> 24; + rtl_set_bbreg(hw, RTXAGC_B_CCK11_A_CCK2_11, MASKBYTE0, tmpval); + + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "CCK PWR 11M (rf-B) = 0x%x (reg 0x%x)\n", tmpval, + RTXAGC_B_CCK11_A_CCK2_11); + + tmpval = tx_agc[RF90_PATH_B] & 0x00ffffff; + rtl_set_bbreg(hw, RTXAGC_B_CCK1_55_MCS32, 0xffffff00, tmpval); + + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "CCK PWR 1~5.5M (rf-B) = 0x%x (reg 0x%x)\n", tmpval, + RTXAGC_B_CCK1_55_MCS32); +} + +static void rtl8723be_phy_get_power_base(struct ieee80211_hw *hw, + u8 *ppowerlevel_ofdm, + u8 *ppowerlevel_bw20, + u8 *ppowerlevel_bw40, + u8 channel, u32 *ofdmbase, + u32 *mcsbase) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u32 powerbase0, powerbase1; + u8 i, powerlevel[2]; + + for (i = 0; i < 2; i++) { + powerbase0 = ppowerlevel_ofdm[i]; + + powerbase0 = (powerbase0 << 24) | (powerbase0 << 16) | + (powerbase0 << 8) | powerbase0; + *(ofdmbase + i) = powerbase0; + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + " [OFDM power base index rf(%c) = 0x%x]\n", + ((i == 0) ? 'A' : 'B'), *(ofdmbase + i)); + } + + for (i = 0; i < 2; i++) { + if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20) + powerlevel[i] = ppowerlevel_bw20[i]; + else + powerlevel[i] = ppowerlevel_bw40[i]; + powerbase1 = powerlevel[i]; + powerbase1 = (powerbase1 << 24) | (powerbase1 << 16) | + (powerbase1 << 8) | powerbase1; + + *(mcsbase + i) = powerbase1; + + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + " [MCS power base index rf(%c) = 0x%x]\n", + ((i == 0) ? 'A' : 'B'), *(mcsbase + i)); + } +} + +static void txpwr_by_regulatory(struct ieee80211_hw *hw, u8 channel, u8 index, + u32 *powerbase0, u32 *powerbase1, + u32 *p_outwriteval) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + u8 i, chnlgroup = 0, pwr_diff_limit[4]; + u8 pwr_diff = 0, customer_pwr_diff; + u32 writeval, customer_limit, rf; + + for (rf = 0; rf < 2; rf++) { + switch (rtlefuse->eeprom_regulatory) { + case 0: + chnlgroup = 0; + + writeval = + rtlphy->mcs_offset[chnlgroup][index + (rf ? 8 : 0)] + + ((index < 2) ? powerbase0[rf] : powerbase1[rf]); + + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "RTK better performance, " + "writeval(%c) = 0x%x\n", + ((rf == 0) ? 'A' : 'B'), writeval); + break; + case 1: + if (rtlphy->pwrgroup_cnt == 1) { + chnlgroup = 0; + } else { + if (channel < 3) + chnlgroup = 0; + else if (channel < 6) + chnlgroup = 1; + else if (channel < 9) + chnlgroup = 2; + else if (channel < 12) + chnlgroup = 3; + else if (channel < 14) + chnlgroup = 4; + else if (channel == 14) + chnlgroup = 5; + } + writeval = rtlphy->mcs_offset[chnlgroup] + [index + (rf ? 8 : 0)] + ((index < 2) ? + powerbase0[rf] : + powerbase1[rf]); + + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "Realtek regulatory, 20MHz, " + "writeval(%c) = 0x%x\n", + ((rf == 0) ? 'A' : 'B'), writeval); + + break; + case 2: + writeval = + ((index < 2) ? powerbase0[rf] : powerbase1[rf]); + + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "Better regulatory, " + "writeval(%c) = 0x%x\n", + ((rf == 0) ? 'A' : 'B'), writeval); + break; + case 3: + chnlgroup = 0; + + if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20_40) { + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "customer's limit, 40MHz " + "rf(%c) = 0x%x\n", + ((rf == 0) ? 'A' : 'B'), + rtlefuse->pwrgroup_ht40[rf] + [channel-1]); + } else { + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "customer's limit, 20MHz " + "rf(%c) = 0x%x\n", + ((rf == 0) ? 'A' : 'B'), + rtlefuse->pwrgroup_ht20[rf] + [channel-1]); + } + + if (index < 2) + pwr_diff = + rtlefuse->txpwr_legacyhtdiff[rf][channel-1]; + else if (rtlphy->current_chan_bw == + HT_CHANNEL_WIDTH_20) + pwr_diff = + rtlefuse->txpwr_ht20diff[rf][channel-1]; + + if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20_40) + customer_pwr_diff = + rtlefuse->pwrgroup_ht40[rf][channel-1]; + else + customer_pwr_diff = + rtlefuse->pwrgroup_ht20[rf][channel-1]; + + if (pwr_diff > customer_pwr_diff) + pwr_diff = 0; + else + pwr_diff = customer_pwr_diff - pwr_diff; + + for (i = 0; i < 4; i++) { + pwr_diff_limit[i] = + (u8)((rtlphy->mcs_offset + [chnlgroup][index + (rf ? 8 : 0)] & + (0x7f << (i * 8))) >> (i * 8)); + + if (pwr_diff_limit[i] > pwr_diff) + pwr_diff_limit[i] = pwr_diff; + } + + customer_limit = (pwr_diff_limit[3] << 24) | + (pwr_diff_limit[2] << 16) | + (pwr_diff_limit[1] << 8) | + (pwr_diff_limit[0]); + + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "Customer's limit rf(%c) = 0x%x\n", + ((rf == 0) ? 'A' : 'B'), customer_limit); + + writeval = customer_limit + ((index < 2) ? + powerbase0[rf] : + powerbase1[rf]); + + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "Customer, writeval rf(%c)= 0x%x\n", + ((rf == 0) ? 'A' : 'B'), writeval); + break; + default: + chnlgroup = 0; + writeval = + rtlphy->mcs_offset[chnlgroup] + [index + (rf ? 8 : 0)] + + ((index < 2) ? powerbase0[rf] : powerbase1[rf]); + + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "RTK better performance, writeval " + "rf(%c) = 0x%x\n", + ((rf == 0) ? 'A' : 'B'), writeval); + break; + } + + if (rtlpriv->dm.dynamic_txhighpower_lvl == TXHIGHPWRLEVEL_BT1) + writeval = writeval - 0x06060606; + else if (rtlpriv->dm.dynamic_txhighpower_lvl == + TXHIGHPWRLEVEL_BT2) + writeval = writeval - 0x0c0c0c0c; + *(p_outwriteval + rf) = writeval; + } +} + +static void _rtl8723be_write_ofdm_power_reg(struct ieee80211_hw *hw, + u8 index, u32 *value) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u16 regoffset_a[6] = { + RTXAGC_A_RATE18_06, RTXAGC_A_RATE54_24, + RTXAGC_A_MCS03_MCS00, RTXAGC_A_MCS07_MCS04, + RTXAGC_A_MCS11_MCS08, RTXAGC_A_MCS15_MCS12 + }; + u16 regoffset_b[6] = { + RTXAGC_B_RATE18_06, RTXAGC_B_RATE54_24, + RTXAGC_B_MCS03_MCS00, RTXAGC_B_MCS07_MCS04, + RTXAGC_B_MCS11_MCS08, RTXAGC_B_MCS15_MCS12 + }; + u8 i, rf, pwr_val[4]; + u32 writeval; + u16 regoffset; + + for (rf = 0; rf < 2; rf++) { + writeval = value[rf]; + for (i = 0; i < 4; i++) { + pwr_val[i] = (u8) ((writeval & (0x7f << + (i * 8))) >> (i * 8)); + + if (pwr_val[i] > RF6052_MAX_TX_PWR) + pwr_val[i] = RF6052_MAX_TX_PWR; + } + writeval = (pwr_val[3] << 24) | (pwr_val[2] << 16) | + (pwr_val[1] << 8) | pwr_val[0]; + + if (rf == 0) + regoffset = regoffset_a[index]; + else + regoffset = regoffset_b[index]; + rtl_set_bbreg(hw, regoffset, MASKDWORD, writeval); + + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + "Set 0x%x = %08x\n", regoffset, writeval); + } +} + +void rtl8723be_phy_rf6052_set_ofdm_txpower(struct ieee80211_hw *hw, + u8 *ppowerlevel_ofdm, + u8 *ppowerlevel_bw20, + u8 *ppowerlevel_bw40, u8 channel) +{ + u32 writeval[2], powerbase0[2], powerbase1[2]; + u8 index; + u8 direction; + u32 pwrtrac_value; + + rtl8723be_phy_get_power_base(hw, ppowerlevel_ofdm, ppowerlevel_bw20, + ppowerlevel_bw40, channel, + &powerbase0[0], &powerbase1[0]); + + rtl8723be_dm_txpower_track_adjust(hw, 1, &direction, &pwrtrac_value); + + for (index = 0; index < 6; index++) { + txpwr_by_regulatory(hw, channel, index, &powerbase0[0], + &powerbase1[0], &writeval[0]); + if (direction == 1) { + writeval[0] += pwrtrac_value; + writeval[1] += pwrtrac_value; + } else if (direction == 2) { + writeval[0] -= pwrtrac_value; + writeval[1] -= pwrtrac_value; + } + _rtl8723be_write_ofdm_power_reg(hw, index, &writeval[0]); + } +} + +bool rtl8723be_phy_rf6052_config(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + if (rtlphy->rf_type == RF_1T1R) + rtlphy->num_total_rfpath = 1; + else + rtlphy->num_total_rfpath = 2; + + return _rtl8723be_phy_rf6052_config_parafile(hw); +} + +static bool _rtl8723be_phy_rf6052_config_parafile(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct bb_reg_def *pphyreg; + u32 u4_regvalue = 0; + u8 rfpath; + bool rtstatus = true; + + for (rfpath = 0; rfpath < rtlphy->num_total_rfpath; rfpath++) { + pphyreg = &rtlphy->phyreg_def[rfpath]; + + switch (rfpath) { + case RF90_PATH_A: + case RF90_PATH_C: + u4_regvalue = rtl_get_bbreg(hw, pphyreg->rfintfs, + BRFSI_RFENV); + break; + case RF90_PATH_B: + case RF90_PATH_D: + u4_regvalue = rtl_get_bbreg(hw, pphyreg->rfintfs, + BRFSI_RFENV << 16); + break; + } + + rtl_set_bbreg(hw, pphyreg->rfintfe, BRFSI_RFENV << 16, 0x1); + udelay(1); + + rtl_set_bbreg(hw, pphyreg->rfintfo, BRFSI_RFENV, 0x1); + udelay(1); + + rtl_set_bbreg(hw, pphyreg->rfhssi_para2, + B3WIREADDREAALENGTH, 0x0); + udelay(1); + + rtl_set_bbreg(hw, pphyreg->rfhssi_para2, B3WIREDATALENGTH, 0x0); + udelay(1); + + switch (rfpath) { + case RF90_PATH_A: + rtstatus = rtl8723be_phy_config_rf_with_headerfile(hw, + (enum radio_path)rfpath); + break; + case RF90_PATH_B: + rtstatus = rtl8723be_phy_config_rf_with_headerfile(hw, + (enum radio_path)rfpath); + break; + case RF90_PATH_C: + break; + case RF90_PATH_D: + break; + } + + switch (rfpath) { + case RF90_PATH_A: + case RF90_PATH_C: + rtl_set_bbreg(hw, pphyreg->rfintfs, + BRFSI_RFENV, u4_regvalue); + break; + case RF90_PATH_B: + case RF90_PATH_D: + rtl_set_bbreg(hw, pphyreg->rfintfs, + BRFSI_RFENV << 16, u4_regvalue); + break; + } + + if (!rtstatus) { + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, + "Radio[%d] Fail!!", rfpath); + return false; + } + } + + RT_TRACE(rtlpriv, COMP_INIT, DBG_TRACE, "\n"); + return rtstatus; +} --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/rf.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/rf.h @@ -0,0 +1,43 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8723BE_RF_H__ +#define __RTL8723BE_RF_H__ + +#define RF6052_MAX_TX_PWR 0x3F +#define RF6052_MAX_REG 0x3F + +void rtl8723be_phy_rf6052_set_bandwidth(struct ieee80211_hw *hw, + u8 bandwidth); +void rtl8723be_phy_rf6052_set_cck_txpower(struct ieee80211_hw *hw, + u8 *ppowerlevel); +void rtl8723be_phy_rf6052_set_ofdm_txpower(struct ieee80211_hw *hw, + u8 *ppowerlevel_ofdm, + u8 *ppowerlevel_bw20, + u8 *ppowerlevel_bw40, + u8 channel); +bool rtl8723be_phy_rf6052_config(struct ieee80211_hw *hw); + +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/sw.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/sw.c @@ -0,0 +1,385 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "../core.h" +#include "../pci.h" +#include "reg.h" +#include "def.h" +#include "phy.h" +#include "../rtl8723com/phy_common.h" +#include "dm.h" +#include "hw.h" +#include "fw.h" +#include "../rtl8723com/fw_common.h" +#include "sw.h" +#include "trx.h" +#include "led.h" +#include "table.h" +#include "../btcoexist/rtl_btc.h" + +#include +#include + +static void rtl8723be_init_aspm_vars(struct ieee80211_hw *hw) +{ + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + + /*close ASPM for AMD defaultly */ + rtlpci->const_amdpci_aspm = 0; + + /* ASPM PS mode. + * 0 - Disable ASPM, + * 1 - Enable ASPM without Clock Req, + * 2 - Enable ASPM with Clock Req, + * 3 - Alwyas Enable ASPM with Clock Req, + * 4 - Always Enable ASPM without Clock Req. + * set defult to RTL8192CE:3 RTL8192E:2 + */ + rtlpci->const_pci_aspm = 3; + + /*Setting for PCI-E device */ + rtlpci->const_devicepci_aspm_setting = 0x03; + + /*Setting for PCI-E bridge */ + rtlpci->const_hostpci_aspm_setting = 0x02; + + /* In Hw/Sw Radio Off situation. + * 0 - Default, + * 1 - From ASPM setting without low Mac Pwr, + * 2 - From ASPM setting with low Mac Pwr, + * 3 - Bus D3 + * set default to RTL8192CE:0 RTL8192SE:2 + */ + rtlpci->const_hwsw_rfoff_d3 = 0; + + /* This setting works for those device with + * backdoor ASPM setting such as EPHY setting. + * 0 - Not support ASPM, + * 1 - Support ASPM, + * 2 - According to chipset. + */ + rtlpci->const_support_pciaspm = 1; +} + +int rtl8723be_init_sw_vars(struct ieee80211_hw *hw) +{ + int err = 0; + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + + rtl8723be_bt_reg_init(hw); + rtlpci->msi_support = false; + rtlpriv->btcoexist.btc_ops = rtl_btc_get_ops_pointer(); + + rtlpriv->dm.dm_initialgain_enable = 1; + rtlpriv->dm.dm_flag = 0; + rtlpriv->dm.disable_framebursting = 0; + rtlpriv->dm.thermalvalue = 0; + rtlpci->transmit_config = CFENDFORM | BIT(15) | BIT(24) | BIT(25); + + mac->ht_enable = true; + + /* compatible 5G band 88ce just 2.4G band & smsp */ + rtlpriv->rtlhal.current_bandtype = BAND_ON_2_4G; + rtlpriv->rtlhal.bandset = BAND_ON_2_4G; + rtlpriv->rtlhal.macphymode = SINGLEMAC_SINGLEPHY; + + rtlpci->receive_config = (RCR_APPFCS | + RCR_APP_MIC | + RCR_APP_ICV | + RCR_APP_PHYST_RXFF | + RCR_HTC_LOC_CTRL | + RCR_AMF | + RCR_ACF | + RCR_ADF | + RCR_AICV | + RCR_AB | + RCR_AM | + RCR_APM | + 0); + + rtlpci->irq_mask[0] = (u32) (IMR_PSTIMEOUT | + IMR_HSISR_IND_ON_INT | + IMR_C2HCMD | + IMR_HIGHDOK | + IMR_MGNTDOK | + IMR_BKDOK | + IMR_BEDOK | + IMR_VIDOK | + IMR_VODOK | + IMR_RDU | + IMR_ROK | + 0); + + rtlpci->irq_mask[1] = (u32)(IMR_RXFOVW | 0); + + /* for debug level */ + rtlpriv->dbg.global_debuglevel = rtlpriv->cfg->mod_params->debug; + /* for LPS & IPS */ + rtlpriv->psc.inactiveps = rtlpriv->cfg->mod_params->inactiveps; + rtlpriv->psc.swctrl_lps = rtlpriv->cfg->mod_params->swctrl_lps; + rtlpriv->psc.fwctrl_lps = rtlpriv->cfg->mod_params->fwctrl_lps; + rtlpriv->psc.reg_fwctrl_lps = 3; + rtlpriv->psc.reg_max_lps_awakeintvl = 5; + /* for ASPM, you can close aspm through + * set const_support_pciaspm = 0 + */ + rtl8723be_init_aspm_vars(hw); + + if (rtlpriv->psc.reg_fwctrl_lps == 1) + rtlpriv->psc.fwctrl_psmode = FW_PS_MIN_MODE; + else if (rtlpriv->psc.reg_fwctrl_lps == 2) + rtlpriv->psc.fwctrl_psmode = FW_PS_MAX_MODE; + else if (rtlpriv->psc.reg_fwctrl_lps == 3) + rtlpriv->psc.fwctrl_psmode = FW_PS_DTIM_MODE; + + /* for firmware buf */ + rtlpriv->rtlhal.pfirmware = vzalloc(0x8000); + if (!rtlpriv->rtlhal.pfirmware) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "Can't alloc buffer for fw.\n"); + return 1; + } + + rtlpriv->max_fw_size = 0x8000; + pr_info("Using firmware %s\n", rtlpriv->cfg->fw_name); + err = request_firmware_nowait(THIS_MODULE, 1, rtlpriv->cfg->fw_name, + rtlpriv->io.dev, GFP_KERNEL, hw, + rtl_fw_cb); + if (err) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "Failed to request firmware!\n"); + return 1; + } + return 0; +} + +void rtl8723be_deinit_sw_vars(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (rtlpriv->cfg->ops->get_btc_status()) + rtlpriv->btcoexist.btc_ops->btc_halt_notify(); + if (rtlpriv->rtlhal.pfirmware) { + vfree(rtlpriv->rtlhal.pfirmware); + rtlpriv->rtlhal.pfirmware = NULL; + } +} + +/* get bt coexist status */ +bool rtl8723be_get_btc_status(void) +{ + return true; +} + +static bool is_fw_header(struct rtl92c_firmware_header *hdr) +{ + return (hdr->signature & 0xfff0) == 0x5300; +} + +static struct rtl_hal_ops rtl8723be_hal_ops = { + .init_sw_vars = rtl8723be_init_sw_vars, + .deinit_sw_vars = rtl8723be_deinit_sw_vars, + .read_eeprom_info = rtl8723be_read_eeprom_info, + .interrupt_recognized = rtl8723be_interrupt_recognized, + .hw_init = rtl8723be_hw_init, + .hw_disable = rtl8723be_card_disable, + .hw_suspend = rtl8723be_suspend, + .hw_resume = rtl8723be_resume, + .enable_interrupt = rtl8723be_enable_interrupt, + .disable_interrupt = rtl8723be_disable_interrupt, + .set_network_type = rtl8723be_set_network_type, + .set_chk_bssid = rtl8723be_set_check_bssid, + .set_qos = rtl8723be_set_qos, + .set_bcn_reg = rtl8723be_set_beacon_related_registers, + .set_bcn_intv = rtl8723be_set_beacon_interval, + .update_interrupt_mask = rtl8723be_update_interrupt_mask, + .get_hw_reg = rtl8723be_get_hw_reg, + .set_hw_reg = rtl8723be_set_hw_reg, + .update_rate_tbl = rtl8723be_update_hal_rate_tbl, + .fill_tx_desc = rtl8723be_tx_fill_desc, + .fill_tx_cmddesc = rtl8723be_tx_fill_cmddesc, + .query_rx_desc = rtl8723be_rx_query_desc, + .set_channel_access = rtl8723be_update_channel_access_setting, + .radio_onoff_checking = rtl8723be_gpio_radio_on_off_checking, + .set_bw_mode = rtl8723be_phy_set_bw_mode, + .switch_channel = rtl8723be_phy_sw_chnl, + .dm_watchdog = rtl8723be_dm_watchdog, + .scan_operation_backup = rtl8723be_phy_scan_operation_backup, + .set_rf_power_state = rtl8723be_phy_set_rf_power_state, + .led_control = rtl8723be_led_control, + .set_desc = rtl8723be_set_desc, + .get_desc = rtl8723be_get_desc, + .is_tx_desc_closed = rtl8723be_is_tx_desc_closed, + .tx_polling = rtl8723be_tx_polling, + .enable_hw_sec = rtl8723be_enable_hw_security_config, + .set_key = rtl8723be_set_key, + .init_sw_leds = rtl8723be_init_sw_leds, + .allow_all_destaddr = rtl8723be_allow_all_destaddr, + .get_bbreg = rtl8723_phy_query_bb_reg, + .set_bbreg = rtl8723_phy_set_bb_reg, + .get_rfreg = rtl8723be_phy_query_rf_reg, + .set_rfreg = rtl8723be_phy_set_rf_reg, + .fill_h2c_cmd = rtl8723be_fill_h2c_cmd, + .get_btc_status = rtl8723be_get_btc_status, + .is_fw_header = is_fw_header, +}; + +static struct rtl_mod_params rtl8723be_mod_params = { + .sw_crypto = false, + .inactiveps = true, + .swctrl_lps = false, + .fwctrl_lps = true, + .debug = DBG_EMERG, +}; + +static struct rtl_hal_cfg rtl8723be_hal_cfg = { + .bar_id = 2, + .write_readback = true, + .name = "rtl8723be_pci", + .fw_name = "rtlwifi/rtl8723befw.bin", + .ops = &rtl8723be_hal_ops, + .mod_params = &rtl8723be_mod_params, + .maps[SYS_ISO_CTRL] = REG_SYS_ISO_CTRL, + .maps[SYS_FUNC_EN] = REG_SYS_FUNC_EN, + .maps[SYS_CLK] = REG_SYS_CLKR, + .maps[MAC_RCR_AM] = AM, + .maps[MAC_RCR_AB] = AB, + .maps[MAC_RCR_ACRC32] = ACRC32, + .maps[MAC_RCR_ACF] = ACF, + .maps[MAC_RCR_AAP] = AAP, + + .maps[EFUSE_ACCESS] = REG_EFUSE_ACCESS, + + .maps[EFUSE_TEST] = REG_EFUSE_TEST, + .maps[EFUSE_CTRL] = REG_EFUSE_CTRL, + .maps[EFUSE_CLK] = 0, + .maps[EFUSE_CLK_CTRL] = REG_EFUSE_CTRL, + .maps[EFUSE_PWC_EV12V] = PWC_EV12V, + .maps[EFUSE_FEN_ELDR] = FEN_ELDR, + .maps[EFUSE_LOADER_CLK_EN] = LOADER_CLK_EN, + .maps[EFUSE_ANA8M] = ANA8M, + .maps[EFUSE_HWSET_MAX_SIZE] = HWSET_MAX_SIZE, + .maps[EFUSE_MAX_SECTION_MAP] = EFUSE_MAX_SECTION, + .maps[EFUSE_REAL_CONTENT_SIZE] = EFUSE_REAL_CONTENT_LEN, + .maps[EFUSE_OOB_PROTECT_BYTES_LEN] = EFUSE_OOB_PROTECT_BYTES, + + .maps[RWCAM] = REG_CAMCMD, + .maps[WCAMI] = REG_CAMWRITE, + .maps[RCAMO] = REG_CAMREAD, + .maps[CAMDBG] = REG_CAMDBG, + .maps[SECR] = REG_SECCFG, + .maps[SEC_CAM_NONE] = CAM_NONE, + .maps[SEC_CAM_WEP40] = CAM_WEP40, + .maps[SEC_CAM_TKIP] = CAM_TKIP, + .maps[SEC_CAM_AES] = CAM_AES, + .maps[SEC_CAM_WEP104] = CAM_WEP104, + + .maps[RTL_IMR_BCNDMAINT6] = IMR_BCNDMAINT6, + .maps[RTL_IMR_BCNDMAINT5] = IMR_BCNDMAINT5, + .maps[RTL_IMR_BCNDMAINT4] = IMR_BCNDMAINT4, + .maps[RTL_IMR_BCNDMAINT3] = IMR_BCNDMAINT3, + .maps[RTL_IMR_BCNDMAINT2] = IMR_BCNDMAINT2, + .maps[RTL_IMR_BCNDMAINT1] = IMR_BCNDMAINT1, + .maps[RTL_IMR_BCNDOK7] = IMR_BCNDOK7, + .maps[RTL_IMR_BCNDOK6] = IMR_BCNDOK6, + .maps[RTL_IMR_BCNDOK5] = IMR_BCNDOK5, + .maps[RTL_IMR_BCNDOK4] = IMR_BCNDOK4, + .maps[RTL_IMR_BCNDOK3] = IMR_BCNDOK3, + .maps[RTL_IMR_BCNDOK2] = IMR_BCNDOK2, + .maps[RTL_IMR_BCNDOK1] = IMR_BCNDOK1, + + .maps[RTL_IMR_TXFOVW] = IMR_TXFOVW, + .maps[RTL_IMR_PSTIMEOUT] = IMR_PSTIMEOUT, + .maps[RTL_IMR_BCNINT] = IMR_BCNDMAINT0, + .maps[RTL_IMR_RXFOVW] = IMR_RXFOVW, + .maps[RTL_IMR_RDU] = IMR_RDU, + .maps[RTL_IMR_ATIMEND] = IMR_ATIMEND, + .maps[RTL_IMR_BDOK] = IMR_BCNDOK0, + .maps[RTL_IMR_MGNTDOK] = IMR_MGNTDOK, + .maps[RTL_IMR_TBDER] = IMR_TBDER, + .maps[RTL_IMR_HIGHDOK] = IMR_HIGHDOK, + .maps[RTL_IMR_TBDOK] = IMR_TBDOK, + .maps[RTL_IMR_BKDOK] = IMR_BKDOK, + .maps[RTL_IMR_BEDOK] = IMR_BEDOK, + .maps[RTL_IMR_VIDOK] = IMR_VIDOK, + .maps[RTL_IMR_VODOK] = IMR_VODOK, + .maps[RTL_IMR_ROK] = IMR_ROK, + .maps[RTL_IBSS_INT_MASKS] = (IMR_BCNDMAINT0 | IMR_TBDOK | IMR_TBDER), + + .maps[RTL_RC_CCK_RATE1M] = DESC92C_RATE1M, + .maps[RTL_RC_CCK_RATE2M] = DESC92C_RATE2M, + .maps[RTL_RC_CCK_RATE5_5M] = DESC92C_RATE5_5M, + .maps[RTL_RC_CCK_RATE11M] = DESC92C_RATE11M, + .maps[RTL_RC_OFDM_RATE6M] = DESC92C_RATE6M, + .maps[RTL_RC_OFDM_RATE9M] = DESC92C_RATE9M, + .maps[RTL_RC_OFDM_RATE12M] = DESC92C_RATE12M, + .maps[RTL_RC_OFDM_RATE18M] = DESC92C_RATE18M, + .maps[RTL_RC_OFDM_RATE24M] = DESC92C_RATE24M, + .maps[RTL_RC_OFDM_RATE36M] = DESC92C_RATE36M, + .maps[RTL_RC_OFDM_RATE48M] = DESC92C_RATE48M, + .maps[RTL_RC_OFDM_RATE54M] = DESC92C_RATE54M, + + .maps[RTL_RC_HT_RATEMCS7] = DESC92C_RATEMCS7, + .maps[RTL_RC_HT_RATEMCS15] = DESC92C_RATEMCS15, +}; + +static DEFINE_PCI_DEVICE_TABLE(rtl8723be_pci_id) = { + {RTL_PCI_DEVICE(PCI_VENDOR_ID_REALTEK, 0xb723, rtl8723be_hal_cfg)}, + {}, +}; + +MODULE_DEVICE_TABLE(pci, rtl8723be_pci_id); + +MODULE_AUTHOR("PageHe "); +MODULE_AUTHOR("Realtek WlanFAE "); +MODULE_LICENSE("GPL"); +MODULE_DESCRIPTION("Realtek 8723BE 802.11n PCI wireless"); +MODULE_FIRMWARE("rtlwifi/rtl8723befw.bin"); + +module_param_named(swenc, rtl8723be_mod_params.sw_crypto, bool, 0444); +module_param_named(debug, rtl8723be_mod_params.debug, int, 0444); +module_param_named(ips, rtl8723be_mod_params.inactiveps, bool, 0444); +module_param_named(swlps, rtl8723be_mod_params.swctrl_lps, bool, 0444); +module_param_named(fwlps, rtl8723be_mod_params.fwctrl_lps, bool, 0444); +MODULE_PARM_DESC(swenc, "using hardware crypto (default 0 [hardware])\n"); +MODULE_PARM_DESC(ips, "using no link power save (default 1 is open)\n"); +MODULE_PARM_DESC(fwlps, "using linked fw control power save (default 1 is open)\n"); +MODULE_PARM_DESC(debug, "Set debug level (0-5) (default 0)"); + +static const SIMPLE_DEV_PM_OPS(rtlwifi_pm_ops, rtl_pci_suspend, rtl_pci_resume); + +static struct pci_driver rtl8723be_driver = { + .name = KBUILD_MODNAME, + .id_table = rtl8723be_pci_id, + .probe = rtl_pci_probe, + .remove = rtl_pci_disconnect, + + .driver.pm = &rtlwifi_pm_ops, +}; + +module_pci_driver(rtl8723be_driver); --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/sw.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/sw.h @@ -0,0 +1,35 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8723BE_SW_H__ +#define __RTL8723BE_SW_H__ + +int rtl8723be_init_sw_vars(struct ieee80211_hw *hw); +void rtl8723be_deinit_sw_vars(struct ieee80211_hw *hw); +void rtl8723be_init_var_map(struct ieee80211_hw *hw); +bool rtl8723be_get_btc_status(void); + + +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/table.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/table.c @@ -0,0 +1,572 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Created on 2010/ 5/18, 1:41 + * + * Larry Finger + * + *****************************************************************************/ + +#include "table.h" +u32 RTL8723BEPHY_REG_1TARRAY[] = { + 0x800, 0x80040000, + 0x804, 0x00000003, + 0x808, 0x0000FC00, + 0x80C, 0x0000000A, + 0x810, 0x10001331, + 0x814, 0x020C3D10, + 0x818, 0x02200385, + 0x81C, 0x00000000, + 0x820, 0x01000100, + 0x824, 0x00390204, + 0x828, 0x00000000, + 0x82C, 0x00000000, + 0x830, 0x00000000, + 0x834, 0x00000000, + 0x838, 0x00000000, + 0x83C, 0x00000000, + 0x840, 0x00010000, + 0x844, 0x00000000, + 0x848, 0x00000000, + 0x84C, 0x00000000, + 0x850, 0x00000000, + 0x854, 0x00000000, + 0x858, 0x569A11A9, + 0x85C, 0x01000014, + 0x860, 0x66F60110, + 0x864, 0x061F0649, + 0x868, 0x00000000, + 0x86C, 0x27272700, + 0x870, 0x07000760, + 0x874, 0x25004000, + 0x878, 0x00000808, + 0x87C, 0x00000000, + 0x880, 0xB0000C1C, + 0x884, 0x00000001, + 0x888, 0x00000000, + 0x88C, 0xCCC000C0, + 0x890, 0x00000800, + 0x894, 0xFFFFFFFE, + 0x898, 0x40302010, + 0x89C, 0x00706050, + 0x900, 0x00000000, + 0x904, 0x00000023, + 0x908, 0x00000000, + 0x90C, 0x81121111, + 0x910, 0x00000002, + 0x914, 0x00000201, + 0x948, 0x00000000, + 0xA00, 0x00D047C8, + 0xA04, 0x80FF000C, + 0xA08, 0x8C838300, + 0xA0C, 0x2E7F120F, + 0xA10, 0x9500BB78, + 0xA14, 0x1114D028, + 0xA18, 0x00881117, + 0xA1C, 0x89140F00, + 0xA20, 0x1A1B0000, + 0xA24, 0x090E1317, + 0xA28, 0x00000204, + 0xA2C, 0x00D30000, + 0xA70, 0x101FBF00, + 0xA74, 0x00000007, + 0xA78, 0x00000900, + 0xA7C, 0x225B0606, + 0xA80, 0x21806490, + 0xB2C, 0x00000000, + 0xC00, 0x48071D40, + 0xC04, 0x03A05611, + 0xC08, 0x000000E4, + 0xC0C, 0x6C6C6C6C, + 0xC10, 0x08800000, + 0xC14, 0x40000100, + 0xC18, 0x08800000, + 0xC1C, 0x40000100, + 0xC20, 0x00000000, + 0xC24, 0x00000000, + 0xC28, 0x00000000, + 0xC2C, 0x00000000, + 0xC30, 0x69E9AC44, + 0xC34, 0x469652AF, + 0xC38, 0x49795994, + 0xC3C, 0x0A97971C, + 0xC40, 0x1F7C403F, + 0xC44, 0x000100B7, + 0xC48, 0xEC020107, + 0xC4C, 0x007F037F, + 0xC50, 0x69553420, + 0xC54, 0x43BC0094, + 0xC58, 0x00023169, + 0xC5C, 0x00250492, + 0xC60, 0x00000000, + 0xC64, 0x7112848B, + 0xC68, 0x47C00BFF, + 0xC6C, 0x00000036, + 0xC70, 0x2C7F000D, + 0xC74, 0x020610DB, + 0xC78, 0x0000001F, + 0xC7C, 0x00B91612, + 0xC80, 0x390000E4, + 0xC84, 0x20F60000, + 0xC88, 0x40000100, + 0xC8C, 0x20200000, + 0xC90, 0x00020E1A, + 0xC94, 0x00000000, + 0xC98, 0x00020E1A, + 0xC9C, 0x00007F7F, + 0xCA0, 0x00000000, + 0xCA4, 0x000300A0, + 0xCA8, 0x00000000, + 0xCAC, 0x00000000, + 0xCB0, 0x00000000, + 0xCB4, 0x00000000, + 0xCB8, 0x00000000, + 0xCBC, 0x28000000, + 0xCC0, 0x00000000, + 0xCC4, 0x00000000, + 0xCC8, 0x00000000, + 0xCCC, 0x00000000, + 0xCD0, 0x00000000, + 0xCD4, 0x00000000, + 0xCD8, 0x64B22427, + 0xCDC, 0x00766932, + 0xCE0, 0x00222222, + 0xCE4, 0x00000000, + 0xCE8, 0x37644302, + 0xCEC, 0x2F97D40C, + 0xD00, 0x00000740, + 0xD04, 0x40020401, + 0xD08, 0x0000907F, + 0xD0C, 0x20010201, + 0xD10, 0xA0633333, + 0xD14, 0x3333BC53, + 0xD18, 0x7A8F5B6F, + 0xD2C, 0xCC979975, + 0xD30, 0x00000000, + 0xD34, 0x80608000, + 0xD38, 0x00000000, + 0xD3C, 0x00127353, + 0xD40, 0x00000000, + 0xD44, 0x00000000, + 0xD48, 0x00000000, + 0xD4C, 0x00000000, + 0xD50, 0x6437140A, + 0xD54, 0x00000000, + 0xD58, 0x00000282, + 0xD5C, 0x30032064, + 0xD60, 0x4653DE68, + 0xD64, 0x04518A3C, + 0xD68, 0x00002101, + 0xD6C, 0x2A201C16, + 0xD70, 0x1812362E, + 0xD74, 0x322C2220, + 0xD78, 0x000E3C24, + 0xE00, 0x2D2D2D2D, + 0xE04, 0x2D2D2D2D, + 0xE08, 0x0390272D, + 0xE10, 0x2D2D2D2D, + 0xE14, 0x2D2D2D2D, + 0xE18, 0x2D2D2D2D, + 0xE1C, 0x2D2D2D2D, + 0xE28, 0x00000000, + 0xE30, 0x1000DC1F, + 0xE34, 0x10008C1F, + 0xE38, 0x02140102, + 0xE3C, 0x681604C2, + 0xE40, 0x01007C00, + 0xE44, 0x01004800, + 0xE48, 0xFB000000, + 0xE4C, 0x000028D1, + 0xE50, 0x1000DC1F, + 0xE54, 0x10008C1F, + 0xE58, 0x02140102, + 0xE5C, 0x28160D05, + 0xE60, 0x00000008, + 0xE68, 0x001B2556, + 0xE6C, 0x00C00096, + 0xE70, 0x00C00096, + 0xE74, 0x01000056, + 0xE78, 0x01000014, + 0xE7C, 0x01000056, + 0xE80, 0x01000014, + 0xE84, 0x00C00096, + 0xE88, 0x01000056, + 0xE8C, 0x00C00096, + 0xED0, 0x00C00096, + 0xED4, 0x00C00096, + 0xED8, 0x00C00096, + 0xEDC, 0x000000D6, + 0xEE0, 0x000000D6, + 0xEEC, 0x01C00016, + 0xF14, 0x00000003, + 0xF4C, 0x00000000, + 0xF00, 0x00000300, + 0x820, 0x01000100, + 0x800, 0x83040000, +}; + +u32 RTL8723BEPHY_REG_ARRAY_PG[] = { + 0, 0, 0, 0x00000e08, 0x0000ff00, 0x00004000, + 0, 0, 0, 0x0000086c, 0xffffff00, 0x34363800, + 0, 0, 0, 0x00000e00, 0xffffffff, 0x42444646, + 0, 0, 0, 0x00000e04, 0xffffffff, 0x30343840, + 0, 0, 0, 0x00000e10, 0xffffffff, 0x38404244, + 0, 0, 0, 0x00000e14, 0xffffffff, 0x26303436 +}; + +u32 RTL8723BE_RADIOA_1TARRAY[] = { + 0x000, 0x00010000, + 0x0B0, 0x000DFFE0, + 0x0FE, 0x00000000, + 0x0FE, 0x00000000, + 0x0FE, 0x00000000, + 0x0B1, 0x00000018, + 0x0FE, 0x00000000, + 0x0FE, 0x00000000, + 0x0FE, 0x00000000, + 0x0B2, 0x00084C00, + 0x0B5, 0x0000D2CC, + 0x0B6, 0x000925AA, + 0x0B7, 0x00000010, + 0x0B8, 0x0000907F, + 0x05C, 0x00000002, + 0x07C, 0x00000002, + 0x07E, 0x00000005, + 0x08B, 0x0006FC00, + 0x0B0, 0x000FF9F0, + 0x01C, 0x000739D2, + 0x01E, 0x00000000, + 0x0DF, 0x00000780, + 0x050, 0x00067435, + 0x051, 0x0006B04E, + 0x052, 0x000007D2, + 0x053, 0x00000000, + 0x054, 0x00050400, + 0x055, 0x0004026E, + 0x0DD, 0x0000004C, + 0x070, 0x00067435, + 0x071, 0x0006B04E, + 0x072, 0x000007D2, + 0x073, 0x00000000, + 0x074, 0x00050400, + 0x075, 0x0004026E, + 0x0EF, 0x00000100, + 0x034, 0x0000ADD7, + 0x035, 0x00005C00, + 0x034, 0x00009DD4, + 0x035, 0x00005000, + 0x034, 0x00008DD1, + 0x035, 0x00004400, + 0x034, 0x00007DCE, + 0x035, 0x00003800, + 0x034, 0x00006CD1, + 0x035, 0x00004400, + 0x034, 0x00005CCE, + 0x035, 0x00003800, + 0x034, 0x000048CE, + 0x035, 0x00004400, + 0x034, 0x000034CE, + 0x035, 0x00003800, + 0x034, 0x00002451, + 0x035, 0x00004400, + 0x034, 0x0000144E, + 0x035, 0x00003800, + 0x034, 0x00000051, + 0x035, 0x00004400, + 0x0EF, 0x00000000, + 0x0EF, 0x00000100, + 0x0ED, 0x00000010, + 0x044, 0x0000ADD7, + 0x044, 0x00009DD4, + 0x044, 0x00008DD1, + 0x044, 0x00007DCE, + 0x044, 0x00006CC1, + 0x044, 0x00005CCE, + 0x044, 0x000044D1, + 0x044, 0x000034CE, + 0x044, 0x00002451, + 0x044, 0x0000144E, + 0x044, 0x00000051, + 0x0EF, 0x00000000, + 0x0ED, 0x00000000, + 0x0EF, 0x00002000, + 0x03B, 0x000380EF, + 0x03B, 0x000302FE, + 0x03B, 0x00028CE6, + 0x03B, 0x000200BC, + 0x03B, 0x000188A5, + 0x03B, 0x00010FBC, + 0x03B, 0x00008F71, + 0x03B, 0x00000900, + 0x0EF, 0x00000000, + 0x0ED, 0x00000001, + 0x040, 0x000380EF, + 0x040, 0x000302FE, + 0x040, 0x00028CE6, + 0x040, 0x000200BC, + 0x040, 0x000188A5, + 0x040, 0x00010FBC, + 0x040, 0x00008F71, + 0x040, 0x00000900, + 0x0ED, 0x00000000, + 0x082, 0x00080000, + 0x083, 0x00008000, + 0x084, 0x00048D80, + 0x085, 0x00068000, + 0x0A2, 0x00080000, + 0x0A3, 0x00008000, + 0x0A4, 0x00048D80, + 0x0A5, 0x00068000, + 0x000, 0x00033D80, +}; + +u32 RTL8723BEMAC_1T_ARRAY[] = { + 0x02F, 0x00000030, + 0x035, 0x00000000, + 0x428, 0x0000000A, + 0x429, 0x00000010, + 0x430, 0x00000000, + 0x431, 0x00000000, + 0x432, 0x00000000, + 0x433, 0x00000001, + 0x434, 0x00000004, + 0x435, 0x00000005, + 0x436, 0x00000007, + 0x437, 0x00000008, + 0x43C, 0x00000004, + 0x43D, 0x00000005, + 0x43E, 0x00000007, + 0x43F, 0x00000008, + 0x440, 0x0000005D, + 0x441, 0x00000001, + 0x442, 0x00000000, + 0x444, 0x00000010, + 0x445, 0x00000000, + 0x446, 0x00000000, + 0x447, 0x00000000, + 0x448, 0x00000000, + 0x449, 0x000000F0, + 0x44A, 0x0000000F, + 0x44B, 0x0000003E, + 0x44C, 0x00000010, + 0x44D, 0x00000000, + 0x44E, 0x00000000, + 0x44F, 0x00000000, + 0x450, 0x00000000, + 0x451, 0x000000F0, + 0x452, 0x0000000F, + 0x453, 0x00000000, + 0x456, 0x0000005E, + 0x460, 0x00000066, + 0x461, 0x00000066, + 0x4C8, 0x000000FF, + 0x4C9, 0x00000008, + 0x4CC, 0x000000FF, + 0x4CD, 0x000000FF, + 0x4CE, 0x00000001, + 0x500, 0x00000026, + 0x501, 0x000000A2, + 0x502, 0x0000002F, + 0x503, 0x00000000, + 0x504, 0x00000028, + 0x505, 0x000000A3, + 0x506, 0x0000005E, + 0x507, 0x00000000, + 0x508, 0x0000002B, + 0x509, 0x000000A4, + 0x50A, 0x0000005E, + 0x50B, 0x00000000, + 0x50C, 0x0000004F, + 0x50D, 0x000000A4, + 0x50E, 0x00000000, + 0x50F, 0x00000000, + 0x512, 0x0000001C, + 0x514, 0x0000000A, + 0x516, 0x0000000A, + 0x525, 0x0000004F, + 0x550, 0x00000010, + 0x551, 0x00000010, + 0x559, 0x00000002, + 0x55C, 0x00000050, + 0x55D, 0x000000FF, + 0x605, 0x00000030, + 0x608, 0x0000000E, + 0x609, 0x0000002A, + 0x620, 0x000000FF, + 0x621, 0x000000FF, + 0x622, 0x000000FF, + 0x623, 0x000000FF, + 0x624, 0x000000FF, + 0x625, 0x000000FF, + 0x626, 0x000000FF, + 0x627, 0x000000FF, + 0x638, 0x00000050, + 0x63C, 0x0000000A, + 0x63D, 0x0000000A, + 0x63E, 0x0000000E, + 0x63F, 0x0000000E, + 0x640, 0x00000040, + 0x642, 0x00000040, + 0x643, 0x00000000, + 0x652, 0x000000C8, + 0x66E, 0x00000005, + 0x700, 0x00000021, + 0x701, 0x00000043, + 0x702, 0x00000065, + 0x703, 0x00000087, + 0x708, 0x00000021, + 0x709, 0x00000043, + 0x70A, 0x00000065, + 0x70B, 0x00000087, +}; + +u32 RTL8723BEAGCTAB_1TARRAY[] = { + 0xC78, 0xFD000001, + 0xC78, 0xFC010001, + 0xC78, 0xFB020001, + 0xC78, 0xFA030001, + 0xC78, 0xF9040001, + 0xC78, 0xF8050001, + 0xC78, 0xF7060001, + 0xC78, 0xF6070001, + 0xC78, 0xF5080001, + 0xC78, 0xF4090001, + 0xC78, 0xF30A0001, + 0xC78, 0xF20B0001, + 0xC78, 0xF10C0001, + 0xC78, 0xF00D0001, + 0xC78, 0xEF0E0001, + 0xC78, 0xEE0F0001, + 0xC78, 0xED100001, + 0xC78, 0xEC110001, + 0xC78, 0xEB120001, + 0xC78, 0xEA130001, + 0xC78, 0xE9140001, + 0xC78, 0xE8150001, + 0xC78, 0xE7160001, + 0xC78, 0xAA170001, + 0xC78, 0xA9180001, + 0xC78, 0xA8190001, + 0xC78, 0xA71A0001, + 0xC78, 0xA61B0001, + 0xC78, 0xA51C0001, + 0xC78, 0xA41D0001, + 0xC78, 0xA31E0001, + 0xC78, 0x671F0001, + 0xC78, 0x66200001, + 0xC78, 0x65210001, + 0xC78, 0x64220001, + 0xC78, 0x63230001, + 0xC78, 0x62240001, + 0xC78, 0x61250001, + 0xC78, 0x47260001, + 0xC78, 0x46270001, + 0xC78, 0x45280001, + 0xC78, 0x44290001, + 0xC78, 0x432A0001, + 0xC78, 0x422B0001, + 0xC78, 0x292C0001, + 0xC78, 0x282D0001, + 0xC78, 0x272E0001, + 0xC78, 0x262F0001, + 0xC78, 0x25300001, + 0xC78, 0x24310001, + 0xC78, 0x09320001, + 0xC78, 0x08330001, + 0xC78, 0x07340001, + 0xC78, 0x06350001, + 0xC78, 0x05360001, + 0xC78, 0x04370001, + 0xC78, 0x03380001, + 0xC78, 0x02390001, + 0xC78, 0x013A0001, + 0xC78, 0x003B0001, + 0xC78, 0x003C0001, + 0xC78, 0x003D0001, + 0xC78, 0x003E0001, + 0xC78, 0x003F0001, + 0xC78, 0xFC400001, + 0xC78, 0xFB410001, + 0xC78, 0xFA420001, + 0xC78, 0xF9430001, + 0xC78, 0xF8440001, + 0xC78, 0xF7450001, + 0xC78, 0xF6460001, + 0xC78, 0xF5470001, + 0xC78, 0xF4480001, + 0xC78, 0xF3490001, + 0xC78, 0xF24A0001, + 0xC78, 0xF14B0001, + 0xC78, 0xF04C0001, + 0xC78, 0xEF4D0001, + 0xC78, 0xEE4E0001, + 0xC78, 0xED4F0001, + 0xC78, 0xEC500001, + 0xC78, 0xEB510001, + 0xC78, 0xEA520001, + 0xC78, 0xE9530001, + 0xC78, 0xE8540001, + 0xC78, 0xE7550001, + 0xC78, 0xE6560001, + 0xC78, 0xE5570001, + 0xC78, 0xAA580001, + 0xC78, 0xA9590001, + 0xC78, 0xA85A0001, + 0xC78, 0xA75B0001, + 0xC78, 0xA65C0001, + 0xC78, 0xA55D0001, + 0xC78, 0xA45E0001, + 0xC78, 0x675F0001, + 0xC78, 0x66600001, + 0xC78, 0x65610001, + 0xC78, 0x64620001, + 0xC78, 0x63630001, + 0xC78, 0x62640001, + 0xC78, 0x61650001, + 0xC78, 0x47660001, + 0xC78, 0x46670001, + 0xC78, 0x45680001, + 0xC78, 0x44690001, + 0xC78, 0x436A0001, + 0xC78, 0x426B0001, + 0xC78, 0x296C0001, + 0xC78, 0x286D0001, + 0xC78, 0x276E0001, + 0xC78, 0x266F0001, + 0xC78, 0x25700001, + 0xC78, 0x24710001, + 0xC78, 0x09720001, + 0xC78, 0x08730001, + 0xC78, 0x07740001, + 0xC78, 0x06750001, + 0xC78, 0x05760001, + 0xC78, 0x04770001, + 0xC78, 0x03780001, + 0xC78, 0x02790001, + 0xC78, 0x017A0001, + 0xC78, 0x007B0001, + 0xC78, 0x007C0001, + 0xC78, 0x007D0001, + 0xC78, 0x007E0001, + 0xC78, 0x007F0001, + 0xC50, 0x69553422, + 0xC50, 0x69553420, +}; --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/table.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/table.h @@ -0,0 +1,43 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Created on 2010/ 5/18, 1:41 + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8723BE_TABLE__H_ +#define __RTL8723BE_TABLE__H_ + +#include +#define RTL8723BEPHY_REG_1TARRAYLEN 388 +extern u32 RTL8723BEPHY_REG_1TARRAY[]; +#define RTL8723BEPHY_REG_ARRAY_PGLEN 36 +extern u32 RTL8723BEPHY_REG_ARRAY_PG[]; +#define RTL8723BE_RADIOA_1TARRAYLEN 206 +extern u32 RTL8723BE_RADIOA_1TARRAY[]; +#define RTL8723BEMAC_1T_ARRAYLEN 194 +extern u32 RTL8723BEMAC_1T_ARRAY[]; +#define RTL8723BEAGCTAB_1TARRAYLEN 260 +extern u32 RTL8723BEAGCTAB_1TARRAY[]; + +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/trx.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/trx.c @@ -0,0 +1,959 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "../pci.h" +#include "../base.h" +#include "../stats.h" +#include "reg.h" +#include "def.h" +#include "phy.h" +#include "trx.h" +#include "led.h" +#include "dm.h" +#include "phy.h" + +static u8 _rtl8723be_map_hwqueue_to_fwqueue(struct sk_buff *skb, u8 hw_queue) +{ + __le16 fc = rtl_get_fc(skb); + + if (unlikely(ieee80211_is_beacon(fc))) + return QSLT_BEACON; + if (ieee80211_is_mgmt(fc) || ieee80211_is_ctl(fc)) + return QSLT_MGNT; + + return skb->priority; +} + +/* mac80211's rate_idx is like this: + * + * 2.4G band:rx_status->band == IEEE80211_BAND_2GHZ + * + * B/G rate: + * (rx_status->flag & RX_FLAG_HT) = 0, + * DESC92C_RATE1M-->DESC92C_RATE54M ==> idx is 0-->11, + * + * N rate: + * (rx_status->flag & RX_FLAG_HT) = 1, + * DESC92C_RATEMCS0-->DESC92C_RATEMCS15 ==> idx is 0-->15 + * + * 5G band:rx_status->band == IEEE80211_BAND_5GHZ + * A rate: + * (rx_status->flag & RX_FLAG_HT) = 0, + * DESC92C_RATE6M-->DESC92C_RATE54M ==> idx is 0-->7, + * + * N rate: + * (rx_status->flag & RX_FLAG_HT) = 1, + * DESC92C_RATEMCS0-->DESC92C_RATEMCS15 ==> idx is 0-->15 + */ +static int _rtl8723be_rate_mapping(struct ieee80211_hw *hw, + bool isht, u8 desc_rate) +{ + int rate_idx; + + if (!isht) { + if (IEEE80211_BAND_2GHZ == hw->conf.chandef.chan->band) { + switch (desc_rate) { + case DESC92C_RATE1M: + rate_idx = 0; + break; + case DESC92C_RATE2M: + rate_idx = 1; + break; + case DESC92C_RATE5_5M: + rate_idx = 2; + break; + case DESC92C_RATE11M: + rate_idx = 3; + break; + case DESC92C_RATE6M: + rate_idx = 4; + break; + case DESC92C_RATE9M: + rate_idx = 5; + break; + case DESC92C_RATE12M: + rate_idx = 6; + break; + case DESC92C_RATE18M: + rate_idx = 7; + break; + case DESC92C_RATE24M: + rate_idx = 8; + break; + case DESC92C_RATE36M: + rate_idx = 9; + break; + case DESC92C_RATE48M: + rate_idx = 10; + break; + case DESC92C_RATE54M: + rate_idx = 11; + break; + default: + rate_idx = 0; + break; + } + } else { + switch (desc_rate) { + case DESC92C_RATE6M: + rate_idx = 0; + break; + case DESC92C_RATE9M: + rate_idx = 1; + break; + case DESC92C_RATE12M: + rate_idx = 2; + break; + case DESC92C_RATE18M: + rate_idx = 3; + break; + case DESC92C_RATE24M: + rate_idx = 4; + break; + case DESC92C_RATE36M: + rate_idx = 5; + break; + case DESC92C_RATE48M: + rate_idx = 6; + break; + case DESC92C_RATE54M: + rate_idx = 7; + break; + default: + rate_idx = 0; + break; + } + } + } else { + switch (desc_rate) { + case DESC92C_RATEMCS0: + rate_idx = 0; + break; + case DESC92C_RATEMCS1: + rate_idx = 1; + break; + case DESC92C_RATEMCS2: + rate_idx = 2; + break; + case DESC92C_RATEMCS3: + rate_idx = 3; + break; + case DESC92C_RATEMCS4: + rate_idx = 4; + break; + case DESC92C_RATEMCS5: + rate_idx = 5; + break; + case DESC92C_RATEMCS6: + rate_idx = 6; + break; + case DESC92C_RATEMCS7: + rate_idx = 7; + break; + case DESC92C_RATEMCS8: + rate_idx = 8; + break; + case DESC92C_RATEMCS9: + rate_idx = 9; + break; + case DESC92C_RATEMCS10: + rate_idx = 10; + break; + case DESC92C_RATEMCS11: + rate_idx = 11; + break; + case DESC92C_RATEMCS12: + rate_idx = 12; + break; + case DESC92C_RATEMCS13: + rate_idx = 13; + break; + case DESC92C_RATEMCS14: + rate_idx = 14; + break; + case DESC92C_RATEMCS15: + rate_idx = 15; + break; + default: + rate_idx = 0; + break; + } + } + return rate_idx; +} + +static void _rtl8723be_query_rxphystatus(struct ieee80211_hw *hw, + struct rtl_stats *pstatus, u8 *pdesc, + struct rx_fwinfo_8723be *p_drvinfo, + bool packet_match_bssid, + bool packet_toself, + bool packet_beacon) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtlpriv); + struct phy_sts_cck_8723e_t *cck_buf; + struct phy_status_rpt *p_phystrpt = (struct phy_status_rpt *)p_drvinfo; + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + char rx_pwr_all = 0, rx_pwr[4]; + u8 rf_rx_num = 0, evm, pwdb_all; + u8 i, max_spatial_stream; + u32 rssi, total_rssi = 0; + bool is_cck = pstatus->is_cck; + u8 lan_idx, vga_idx; + + /* Record it for next packet processing */ + pstatus->packet_matchbssid = packet_match_bssid; + pstatus->packet_toself = packet_toself; + pstatus->packet_beacon = packet_beacon; + pstatus->rx_mimo_sig_qual[0] = -1; + pstatus->rx_mimo_sig_qual[1] = -1; + + if (is_cck) { + u8 cck_highpwr; + u8 cck_agc_rpt; + /* CCK Driver info Structure is not the same as OFDM packet. */ + cck_buf = (struct phy_sts_cck_8723e_t *)p_drvinfo; + cck_agc_rpt = cck_buf->cck_agc_rpt; + + /* (1)Hardware does not provide RSSI for CCK + * (2)PWDB, Average PWDB cacluated by + * hardware (for rate adaptive) + */ + if (ppsc->rfpwr_state == ERFON) + cck_highpwr = (u8) rtl_get_bbreg(hw, + RFPGA0_XA_HSSIPARAMETER2, + BIT(9)); + else + cck_highpwr = false; + + lan_idx = ((cck_agc_rpt & 0xE0) >> 5); + vga_idx = (cck_agc_rpt & 0x1f); + switch (lan_idx) { + case 7: + if (vga_idx <= 27)/*VGA_idx = 27~2*/ + rx_pwr_all = -100 + 2 * (27 - vga_idx); + else + rx_pwr_all = -100; + break; + case 6:/*VGA_idx = 2~0*/ + rx_pwr_all = -48 + 2 * (2 - vga_idx); + break; + case 5:/*VGA_idx = 7~5*/ + rx_pwr_all = -42 + 2 * (7 - vga_idx); + break; + case 4:/*VGA_idx = 7~4*/ + rx_pwr_all = -36 + 2 * (7 - vga_idx); + break; + case 3:/*VGA_idx = 7~0*/ + rx_pwr_all = -24 + 2 * (7 - vga_idx); + break; + case 2: + if (cck_highpwr)/*VGA_idx = 5~0*/ + rx_pwr_all = -12 + 2 * (5 - vga_idx); + else + rx_pwr_all = -6 + 2 * (5 - vga_idx); + break; + case 1: + rx_pwr_all = 8 - 2 * vga_idx; + break; + case 0: + rx_pwr_all = 14 - 2 * vga_idx; + break; + default: + break; + } + rx_pwr_all += 6; + pwdb_all = rtl_query_rxpwrpercentage(rx_pwr_all); + /* CCK gain is smaller than OFDM/MCS gain, */ + /* so we add gain diff by experiences, + * the val is 6 + */ + pwdb_all += 6; + if (pwdb_all > 100) + pwdb_all = 100; + /* modify the offset to make the same gain index with OFDM. */ + if (pwdb_all > 34 && pwdb_all <= 42) + pwdb_all -= 2; + else if (pwdb_all > 26 && pwdb_all <= 34) + pwdb_all -= 6; + else if (pwdb_all > 14 && pwdb_all <= 26) + pwdb_all -= 8; + else if (pwdb_all > 4 && pwdb_all <= 14) + pwdb_all -= 4; + if (!cck_highpwr) { + if (pwdb_all >= 80) + pwdb_all = ((pwdb_all - 80) << 1) + + ((pwdb_all - 80) >> 1) + 80; + else if ((pwdb_all <= 78) && (pwdb_all >= 20)) + pwdb_all += 3; + if (pwdb_all > 100) + pwdb_all = 100; + } + + pstatus->rx_pwdb_all = pwdb_all; + pstatus->recvsignalpower = rx_pwr_all; + + /* (3) Get Signal Quality (EVM) */ + if (packet_match_bssid) { + u8 sq; + + if (pstatus->rx_pwdb_all > 40) { + sq = 100; + } else { + sq = cck_buf->sq_rpt; + if (sq > 64) + sq = 0; + else if (sq < 20) + sq = 100; + else + sq = ((64 - sq) * 100) / 44; + } + + pstatus->signalquality = sq; + pstatus->rx_mimo_sig_qual[0] = sq; + pstatus->rx_mimo_sig_qual[1] = -1; + } + } else { + rtlpriv->dm.rfpath_rxenable[0] = true; + rtlpriv->dm.rfpath_rxenable[1] = true; + + /* (1)Get RSSI for HT rate */ + for (i = RF90_PATH_A; i < RF6052_MAX_PATH; i++) { + /* we will judge RF RX path now. */ + if (rtlpriv->dm.rfpath_rxenable[i]) + rf_rx_num++; + + rx_pwr[i] = ((p_drvinfo->gain_trsw[i] & 0x3f)*2) - 110; + + /* Translate DBM to percentage. */ + rssi = rtl_query_rxpwrpercentage(rx_pwr[i]); + total_rssi += rssi; + + /* Get Rx snr value in DB */ + rtlpriv->stats.rx_snr_db[i] = + (long)(p_drvinfo->rxsnr[i] / 2); + + /* Record Signal Strength for next packet */ + if (packet_match_bssid) + pstatus->rx_mimo_signalstrength[i] = (u8) rssi; + } + + /* (2)PWDB, Avg cacluated by hardware (for rate adaptive) */ + rx_pwr_all = ((p_drvinfo->pwdb_all >> 1) & 0x7f) - 110; + + pwdb_all = rtl_query_rxpwrpercentage(rx_pwr_all); + pstatus->rx_pwdb_all = pwdb_all; + pstatus->rxpower = rx_pwr_all; + pstatus->recvsignalpower = rx_pwr_all; + + /* (3)EVM of HT rate */ + if (pstatus->is_ht && pstatus->rate >= DESC92C_RATEMCS8 && + pstatus->rate <= DESC92C_RATEMCS15) + max_spatial_stream = 2; + else + max_spatial_stream = 1; + + for (i = 0; i < max_spatial_stream; i++) { + evm = rtl_evm_db_to_percentage(p_drvinfo->rxevm[i]); + + if (packet_match_bssid) { + /* Fill value in RFD, Get the first + * spatial stream only + */ + if (i == 0) + pstatus->signalquality = + (u8) (evm & 0xff); + pstatus->rx_mimo_sig_qual[i] = + (u8) (evm & 0xff); + } + } + if (packet_match_bssid) { + for (i = RF90_PATH_A; i <= RF90_PATH_B; i++) + rtl_priv(hw)->dm.cfo_tail[i] = + (char)p_phystrpt->path_cfotail[i]; + + rtl_priv(hw)->dm.packet_count++; + if (rtl_priv(hw)->dm.packet_count == 0xffffffff) + rtl_priv(hw)->dm.packet_count = 0; + } + } + + /* UI BSS List signal strength(in percentage), + * make it good looking, from 0~100. + */ + if (is_cck) + pstatus->signalstrength = (u8)(rtl_signal_scale_mapping(hw, + pwdb_all)); + else if (rf_rx_num != 0) + pstatus->signalstrength = (u8)(rtl_signal_scale_mapping(hw, + total_rssi /= rf_rx_num)); + /*HW antenna diversity*/ + rtldm->fat_table.antsel_rx_keep_0 = p_phystrpt->ant_sel; + rtldm->fat_table.antsel_rx_keep_1 = p_phystrpt->ant_sel_b; + rtldm->fat_table.antsel_rx_keep_2 = p_phystrpt->antsel_rx_keep_2; +} + +static void _rtl8723be_translate_rx_signal_stuff(struct ieee80211_hw *hw, + struct sk_buff *skb, + struct rtl_stats *pstatus, + u8 *pdesc, + struct rx_fwinfo_8723be *p_drvinfo) +{ + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct ieee80211_hdr *hdr; + u8 *tmp_buf; + u8 *praddr; + u8 *psaddr; + u16 fc, type; + bool packet_matchbssid, packet_toself, packet_beacon; + + tmp_buf = skb->data + pstatus->rx_drvinfo_size + pstatus->rx_bufshift; + + hdr = (struct ieee80211_hdr *)tmp_buf; + fc = le16_to_cpu(hdr->frame_control); + type = WLAN_FC_GET_TYPE(hdr->frame_control); + praddr = hdr->addr1; + psaddr = ieee80211_get_SA(hdr); + memcpy(pstatus->psaddr, psaddr, ETH_ALEN); + + packet_matchbssid = ((IEEE80211_FTYPE_CTL != type) && + (!ether_addr_equal(mac->bssid, (fc & IEEE80211_FCTL_TODS) ? + hdr->addr1 : (fc & IEEE80211_FCTL_FROMDS) ? + hdr->addr2 : hdr->addr3)) && + (!pstatus->hwerror) && + (!pstatus->crc) && (!pstatus->icv)); + + packet_toself = packet_matchbssid && + (!ether_addr_equal(praddr, rtlefuse->dev_addr)); + + /* YP: packet_beacon is not initialized, + * this assignment is neccesary, + * otherwise it counld be true in this case + * the situation is much worse in Kernel 3.10 + */ + if (ieee80211_is_beacon(hdr->frame_control)) + packet_beacon = true; + else + packet_beacon = false; + + if (packet_beacon && packet_matchbssid) + rtl_priv(hw)->dm.dbginfo.num_qry_beacon_pkt++; + + _rtl8723be_query_rxphystatus(hw, pstatus, pdesc, p_drvinfo, + packet_matchbssid, + packet_toself, + packet_beacon); + + rtl_process_phyinfo(hw, tmp_buf, pstatus); +} + +static void _rtl8723be_insert_emcontent(struct rtl_tcb_desc *ptcb_desc, + u8 *virtualaddress) +{ + u32 dwtmp = 0; + memset(virtualaddress, 0, 8); + + SET_EARLYMODE_PKTNUM(virtualaddress, ptcb_desc->empkt_num); + if (ptcb_desc->empkt_num == 1) { + dwtmp = ptcb_desc->empkt_len[0]; + } else { + dwtmp = ptcb_desc->empkt_len[0]; + dwtmp += ((dwtmp % 4) ? (4 - dwtmp % 4) : 0) + 4; + dwtmp += ptcb_desc->empkt_len[1]; + } + SET_EARLYMODE_LEN0(virtualaddress, dwtmp); + + if (ptcb_desc->empkt_num <= 3) { + dwtmp = ptcb_desc->empkt_len[2]; + } else { + dwtmp = ptcb_desc->empkt_len[2]; + dwtmp += ((dwtmp % 4) ? (4 - dwtmp % 4) : 0) + 4; + dwtmp += ptcb_desc->empkt_len[3]; + } + SET_EARLYMODE_LEN1(virtualaddress, dwtmp); + if (ptcb_desc->empkt_num <= 5) { + dwtmp = ptcb_desc->empkt_len[4]; + } else { + dwtmp = ptcb_desc->empkt_len[4]; + dwtmp += ((dwtmp % 4) ? (4 - dwtmp % 4) : 0) + 4; + dwtmp += ptcb_desc->empkt_len[5]; + } + SET_EARLYMODE_LEN2_1(virtualaddress, dwtmp & 0xF); + SET_EARLYMODE_LEN2_2(virtualaddress, dwtmp >> 4); + if (ptcb_desc->empkt_num <= 7) { + dwtmp = ptcb_desc->empkt_len[6]; + } else { + dwtmp = ptcb_desc->empkt_len[6]; + dwtmp += ((dwtmp % 4) ? (4 - dwtmp % 4) : 0) + 4; + dwtmp += ptcb_desc->empkt_len[7]; + } + SET_EARLYMODE_LEN3(virtualaddress, dwtmp); + if (ptcb_desc->empkt_num <= 9) { + dwtmp = ptcb_desc->empkt_len[8]; + } else { + dwtmp = ptcb_desc->empkt_len[8]; + dwtmp += ((dwtmp % 4) ? (4 - dwtmp % 4) : 0) + 4; + dwtmp += ptcb_desc->empkt_len[9]; + } + SET_EARLYMODE_LEN4(virtualaddress, dwtmp); +} + +bool rtl8723be_rx_query_desc(struct ieee80211_hw *hw, + struct rtl_stats *status, + struct ieee80211_rx_status *rx_status, + u8 *pdesc, struct sk_buff *skb) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rx_fwinfo_8723be *p_drvinfo; + struct ieee80211_hdr *hdr; + + u32 phystatus = GET_RX_DESC_PHYST(pdesc); + status->packet_report_type = (u8)GET_RX_STATUS_DESC_RPT_SEL(pdesc); + if (status->packet_report_type == TX_REPORT2) + status->length = (u16) GET_RX_RPT2_DESC_PKT_LEN(pdesc); + else + status->length = (u16) GET_RX_DESC_PKT_LEN(pdesc); + status->rx_drvinfo_size = (u8) GET_RX_DESC_DRV_INFO_SIZE(pdesc) * + RX_DRV_INFO_SIZE_UNIT; + status->rx_bufshift = (u8) (GET_RX_DESC_SHIFT(pdesc) & 0x03); + status->icv = (u16) GET_RX_DESC_ICV(pdesc); + status->crc = (u16) GET_RX_DESC_CRC32(pdesc); + status->hwerror = (status->crc | status->icv); + status->decrypted = !GET_RX_DESC_SWDEC(pdesc); + status->rate = (u8) GET_RX_DESC_RXMCS(pdesc); + status->shortpreamble = (u16) GET_RX_DESC_SPLCP(pdesc); + status->isampdu = (bool) (GET_RX_DESC_PAGGR(pdesc) == 1); + status->isfirst_ampdu = (bool) (GET_RX_DESC_PAGGR(pdesc) == 1); + if (status->packet_report_type == NORMAL_RX) + status->timestamp_low = GET_RX_DESC_TSFL(pdesc); + status->rx_is40Mhzpacket = (bool) GET_RX_DESC_BW(pdesc); + status->is_ht = (bool)GET_RX_DESC_RXHT(pdesc); + + status->is_cck = RTL8723E_RX_HAL_IS_CCK_RATE(status->rate); + + status->macid = GET_RX_DESC_MACID(pdesc); + if (GET_RX_STATUS_DESC_MAGIC_MATCH(pdesc)) + status->wake_match = BIT(2); + else if (GET_RX_STATUS_DESC_MAGIC_MATCH(pdesc)) + status->wake_match = BIT(1); + else if (GET_RX_STATUS_DESC_UNICAST_MATCH(pdesc)) + status->wake_match = BIT(0); + else + status->wake_match = 0; + if (status->wake_match) + RT_TRACE(rtlpriv, COMP_RXDESC, DBG_LOUD, + "GGGGGGGGGGGGGet Wakeup Packet!! WakeMatch=%d\n", + status->wake_match); + rx_status->freq = hw->conf.chandef.chan->center_freq; + rx_status->band = hw->conf.chandef.chan->band; + + + hdr = (struct ieee80211_hdr *)(skb->data + status->rx_drvinfo_size + + status->rx_bufshift); + + if (status->crc) + rx_status->flag |= RX_FLAG_FAILED_FCS_CRC; + + if (status->rx_is40Mhzpacket) + rx_status->flag |= RX_FLAG_40MHZ; + + if (status->is_ht) + rx_status->flag |= RX_FLAG_HT; + + rx_status->flag |= RX_FLAG_MACTIME_START; + + /* hw will set status->decrypted true, if it finds the + * frame is open data frame or mgmt frame. + * So hw will not decryption robust managment frame + * for IEEE80211w but still set status->decrypted + * true, so here we should set it back to undecrypted + * for IEEE80211w frame, and mac80211 sw will help + * to decrypt it + */ + if (status->decrypted) { + if (!hdr) { + WARN_ON_ONCE(true); + pr_err("decrypted is true but hdr NULL in skb %p\n", + rtl_get_hdr(skb)); + return false; + } + + if ((_ieee80211_is_robust_mgmt_frame(hdr)) && + (ieee80211_has_protected(hdr->frame_control))) + rx_status->flag &= ~RX_FLAG_DECRYPTED; + else + rx_status->flag |= RX_FLAG_DECRYPTED; + } + + /* rate_idx: index of data rate into band's + * supported rates or MCS index if HT rates + * are use (RX_FLAG_HT) + * Notice: this is diff with windows define + */ + rx_status->rate_idx = _rtl8723be_rate_mapping(hw, status->is_ht, + status->rate); + + rx_status->mactime = status->timestamp_low; + if (phystatus) { + p_drvinfo = (struct rx_fwinfo_8723be *)(skb->data + + status->rx_bufshift); + + _rtl8723be_translate_rx_signal_stuff(hw, skb, status, + pdesc, p_drvinfo); + } + + /*rx_status->qual = status->signal; */ + rx_status->signal = status->recvsignalpower + 10; + if (status->packet_report_type == TX_REPORT2) { + status->macid_valid_entry[0] = + GET_RX_RPT2_DESC_MACID_VALID_1(pdesc); + status->macid_valid_entry[1] = + GET_RX_RPT2_DESC_MACID_VALID_2(pdesc); + } + return true; +} + +void rtl8723be_tx_fill_desc(struct ieee80211_hw *hw, + struct ieee80211_hdr *hdr, u8 *pdesc_tx, + struct ieee80211_tx_info *info, + struct ieee80211_sta *sta, struct sk_buff *skb, + u8 hw_queue, struct rtl_tcb_desc *ptcb_desc) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + u8 *pdesc = (u8 *)pdesc_tx; + u16 seq_number; + __le16 fc = hdr->frame_control; + unsigned int buf_len = 0; + unsigned int skb_len = skb->len; + u8 fw_qsel = _rtl8723be_map_hwqueue_to_fwqueue(skb, hw_queue); + bool firstseg = ((hdr->seq_ctrl & + cpu_to_le16(IEEE80211_SCTL_FRAG)) == 0); + bool lastseg = ((hdr->frame_control & + cpu_to_le16(IEEE80211_FCTL_MOREFRAGS)) == 0); + dma_addr_t mapping; + u8 bw_40 = 0; + u8 short_gi = 0; + + if (mac->opmode == NL80211_IFTYPE_STATION) { + bw_40 = mac->bw_40; + } else if (mac->opmode == NL80211_IFTYPE_AP || + mac->opmode == NL80211_IFTYPE_ADHOC) { + if (sta) + bw_40 = sta->ht_cap.cap & + IEEE80211_HT_CAP_SUP_WIDTH_20_40; + } + seq_number = (le16_to_cpu(hdr->seq_ctrl) & IEEE80211_SCTL_SEQ) >> 4; + rtl_get_tcb_desc(hw, info, sta, skb, ptcb_desc); + /* reserve 8 byte for AMPDU early mode */ + if (rtlhal->earlymode_enable) { + skb_push(skb, EM_HDR_LEN); + memset(skb->data, 0, EM_HDR_LEN); + } + buf_len = skb->len; + mapping = pci_map_single(rtlpci->pdev, skb->data, skb->len, + PCI_DMA_TODEVICE); + if (pci_dma_mapping_error(rtlpci->pdev, mapping)) { + RT_TRACE(rtlpriv, COMP_SEND, DBG_TRACE, "DMA mapping error"); + return; + } + CLEAR_PCI_TX_DESC_CONTENT(pdesc, sizeof(struct tx_desc_8723be)); + if (ieee80211_is_nullfunc(fc) || ieee80211_is_ctl(fc)) { + firstseg = true; + lastseg = true; + } + if (firstseg) { + if (rtlhal->earlymode_enable) { + SET_TX_DESC_PKT_OFFSET(pdesc, 1); + SET_TX_DESC_OFFSET(pdesc, USB_HWDESC_HEADER_LEN + + EM_HDR_LEN); + if (ptcb_desc->empkt_num) { + RT_TRACE(rtlpriv, COMP_SEND, DBG_TRACE, + "Insert 8 byte.pTcb->EMPktNum:%d\n", + ptcb_desc->empkt_num); + _rtl8723be_insert_emcontent(ptcb_desc, + (u8 *)(skb->data)); + } + } else { + SET_TX_DESC_OFFSET(pdesc, USB_HWDESC_HEADER_LEN); + } + + /* ptcb_desc->use_driver_rate = true; */ + SET_TX_DESC_TX_RATE(pdesc, ptcb_desc->hw_rate); + if (ptcb_desc->hw_rate > DESC92C_RATEMCS0) + short_gi = (ptcb_desc->use_shortgi) ? 1 : 0; + else + short_gi = (ptcb_desc->use_shortpreamble) ? 1 : 0; + + SET_TX_DESC_DATA_SHORTGI(pdesc, short_gi); + + if (info->flags & IEEE80211_TX_CTL_AMPDU) { + SET_TX_DESC_AGG_ENABLE(pdesc, 1); + SET_TX_DESC_MAX_AGG_NUM(pdesc, 0x14); + } + SET_TX_DESC_SEQ(pdesc, seq_number); + SET_TX_DESC_RTS_ENABLE(pdesc, ((ptcb_desc->rts_enable && + !ptcb_desc->cts_enable) ? + 1 : 0)); + SET_TX_DESC_HW_RTS_ENABLE(pdesc, 0); + SET_TX_DESC_CTS2SELF(pdesc, ((ptcb_desc->cts_enable) ? + 1 : 0)); + + SET_TX_DESC_RTS_RATE(pdesc, ptcb_desc->rts_rate); + + SET_TX_DESC_RTS_SC(pdesc, ptcb_desc->rts_sc); + SET_TX_DESC_RTS_SHORT(pdesc, + ((ptcb_desc->rts_rate <= DESC92C_RATE54M) ? + (ptcb_desc->rts_use_shortpreamble ? 1 : 0) : + (ptcb_desc->rts_use_shortgi ? 1 : 0))); + + if (ptcb_desc->btx_enable_sw_calc_duration) + SET_TX_DESC_NAV_USE_HDR(pdesc, 1); + + if (bw_40) { + if (ptcb_desc->packet_bw) { + SET_TX_DESC_DATA_BW(pdesc, 1); + SET_TX_DESC_TX_SUB_CARRIER(pdesc, 3); + } else { + SET_TX_DESC_DATA_BW(pdesc, 0); + SET_TX_DESC_TX_SUB_CARRIER(pdesc, mac->cur_40_prime_sc); + } + } else { + SET_TX_DESC_DATA_BW(pdesc, 0); + SET_TX_DESC_TX_SUB_CARRIER(pdesc, 0); + } + + SET_TX_DESC_LINIP(pdesc, 0); + SET_TX_DESC_PKT_SIZE(pdesc, (u16) skb_len); + if (sta) { + u8 ampdu_density = sta->ht_cap.ampdu_density; + SET_TX_DESC_AMPDU_DENSITY(pdesc, ampdu_density); + } + if (info->control.hw_key) { + struct ieee80211_key_conf *keyconf = + info->control.hw_key; + switch (keyconf->cipher) { + case WLAN_CIPHER_SUITE_WEP40: + case WLAN_CIPHER_SUITE_WEP104: + case WLAN_CIPHER_SUITE_TKIP: + SET_TX_DESC_SEC_TYPE(pdesc, 0x1); + break; + case WLAN_CIPHER_SUITE_CCMP: + SET_TX_DESC_SEC_TYPE(pdesc, 0x3); + break; + default: + SET_TX_DESC_SEC_TYPE(pdesc, 0x0); + break; + } + } + + SET_TX_DESC_QUEUE_SEL(pdesc, fw_qsel); + SET_TX_DESC_DATA_RATE_FB_LIMIT(pdesc, 0x1F); + SET_TX_DESC_RTS_RATE_FB_LIMIT(pdesc, 0xF); + SET_TX_DESC_DISABLE_FB(pdesc, ptcb_desc->disable_ratefallback ? + 1 : 0); + SET_TX_DESC_USE_RATE(pdesc, ptcb_desc->use_driver_rate ? 1 : 0); + + if (ieee80211_is_data_qos(fc)) { + if (mac->rdg_en) { + RT_TRACE(rtlpriv, COMP_SEND, DBG_TRACE, + "Enable RDG function.\n"); + SET_TX_DESC_RDG_ENABLE(pdesc, 1); + SET_TX_DESC_HTC(pdesc, 1); + } + } + } + + SET_TX_DESC_FIRST_SEG(pdesc, (firstseg ? 1 : 0)); + SET_TX_DESC_LAST_SEG(pdesc, (lastseg ? 1 : 0)); + SET_TX_DESC_TX_BUFFER_SIZE(pdesc, (u16) buf_len); + SET_TX_DESC_TX_BUFFER_ADDRESS(pdesc, mapping); + SET_TX_DESC_RATE_ID(pdesc, ptcb_desc->ratr_index); + SET_TX_DESC_MACID(pdesc, ptcb_desc->mac_id); + + if (!ieee80211_is_data_qos(fc)) { + SET_TX_DESC_HWSEQ_EN(pdesc, 1); + SET_TX_DESC_HWSEQ_SEL(pdesc, 0); + } + SET_TX_DESC_MORE_FRAG(pdesc, (lastseg ? 0 : 1)); + if (is_multicast_ether_addr(ieee80211_get_DA(hdr)) || + is_broadcast_ether_addr(ieee80211_get_DA(hdr))) { + SET_TX_DESC_BMC(pdesc, 1); + } + RT_TRACE(rtlpriv, COMP_SEND, DBG_TRACE, "\n"); +} + +void rtl8723be_tx_fill_cmddesc(struct ieee80211_hw *hw, u8 *pdesc, + bool b_firstseg, bool b_lastseg, + struct sk_buff *skb) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + u8 fw_queue = QSLT_BEACON; + + dma_addr_t mapping = pci_map_single(rtlpci->pdev, + skb->data, skb->len, + PCI_DMA_TODEVICE); + + if (pci_dma_mapping_error(rtlpci->pdev, mapping)) { + RT_TRACE(rtlpriv, COMP_SEND, DBG_TRACE, + "DMA mapping error"); + return; + } + CLEAR_PCI_TX_DESC_CONTENT(pdesc, TX_DESC_SIZE); + + SET_TX_DESC_OFFSET(pdesc, USB_HWDESC_HEADER_LEN); + + SET_TX_DESC_TX_RATE(pdesc, DESC92C_RATE1M); + + SET_TX_DESC_SEQ(pdesc, 0); + + SET_TX_DESC_LINIP(pdesc, 0); + + SET_TX_DESC_QUEUE_SEL(pdesc, fw_queue); + + SET_TX_DESC_FIRST_SEG(pdesc, 1); + SET_TX_DESC_LAST_SEG(pdesc, 1); + + SET_TX_DESC_TX_BUFFER_SIZE(pdesc, (u16)(skb->len)); + + SET_TX_DESC_TX_BUFFER_ADDRESS(pdesc, mapping); + + SET_TX_DESC_RATE_ID(pdesc, 0); + SET_TX_DESC_MACID(pdesc, 0); + + SET_TX_DESC_OWN(pdesc, 1); + + SET_TX_DESC_PKT_SIZE((u8 *)pdesc, (u16)(skb->len)); + + SET_TX_DESC_FIRST_SEG(pdesc, 1); + SET_TX_DESC_LAST_SEG(pdesc, 1); + + SET_TX_DESC_USE_RATE(pdesc, 1); +} + +void rtl8723be_set_desc(u8 *pdesc, bool istx, u8 desc_name, u8 *val) +{ + if (istx) { + switch (desc_name) { + case HW_DESC_OWN: + SET_TX_DESC_OWN(pdesc, 1); + break; + case HW_DESC_TX_NEXTDESC_ADDR: + SET_TX_DESC_NEXT_DESC_ADDRESS(pdesc, *(u32 *)val); + break; + default: + RT_ASSERT(false, "ERR txdesc :%d not process\n", + desc_name); + break; + } + } else { + switch (desc_name) { + case HW_DESC_RXOWN: + SET_RX_DESC_OWN(pdesc, 1); + break; + case HW_DESC_RXBUFF_ADDR: + SET_RX_DESC_BUFF_ADDR(pdesc, *(u32 *)val); + break; + case HW_DESC_RXPKT_LEN: + SET_RX_DESC_PKT_LEN(pdesc, *(u32 *)val); + break; + case HW_DESC_RXERO: + SET_RX_DESC_EOR(pdesc, 1); + break; + default: + RT_ASSERT(false, "ERR rxdesc :%d not process\n", + desc_name); + break; + } + } +} + +u32 rtl8723be_get_desc(u8 *pdesc, bool istx, u8 desc_name) +{ + u32 ret = 0; + + if (istx) { + switch (desc_name) { + case HW_DESC_OWN: + ret = GET_TX_DESC_OWN(pdesc); + break; + case HW_DESC_TXBUFF_ADDR: + ret = GET_TX_DESC_TX_BUFFER_ADDRESS(pdesc); + break; + default: + RT_ASSERT(false, "ERR txdesc :%d not process\n", + desc_name); + break; + } + } else { + switch (desc_name) { + case HW_DESC_OWN: + ret = GET_RX_DESC_OWN(pdesc); + break; + case HW_DESC_RXPKT_LEN: + ret = GET_RX_DESC_PKT_LEN(pdesc); + break; + default: + RT_ASSERT(false, "ERR rxdesc :%d not process\n", + desc_name); + break; + } + } + return ret; +} + +bool rtl8723be_is_tx_desc_closed(struct ieee80211_hw *hw, + u8 hw_queue, u16 index) +{ + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl8192_tx_ring *ring = &rtlpci->tx_ring[hw_queue]; + u8 *entry = (u8 *)(&ring->desc[ring->idx]); + u8 own = (u8) rtl8723be_get_desc(entry, true, HW_DESC_OWN); + + /*beacon packet will only use the first + *descriptor by default, and the own may not + *be cleared by the hardware + */ + if (own) + return false; + else + return true; +} + +void rtl8723be_tx_polling(struct ieee80211_hw *hw, u8 hw_queue) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + if (hw_queue == BEACON_QUEUE) { + rtl_write_word(rtlpriv, REG_PCIE_CTRL_REG, BIT(4)); + } else { + rtl_write_word(rtlpriv, REG_PCIE_CTRL_REG, + BIT(0) << (hw_queue)); + } +} --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723be/trx.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723be/trx.h @@ -0,0 +1,616 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8723BE_TRX_H__ +#define __RTL8723BE_TRX_H__ + +#define TX_DESC_SIZE 40 +#define TX_DESC_AGGR_SUBFRAME_SIZE 32 + +#define RX_DESC_SIZE 32 +#define RX_DRV_INFO_SIZE_UNIT 8 + +#define TX_DESC_NEXT_DESC_OFFSET 40 +#define USB_HWDESC_HEADER_LEN 40 +#define CRCLENGTH 4 + +#define SET_TX_DESC_PKT_SIZE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 0, 16, __val) +#define SET_TX_DESC_OFFSET(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 16, 8, __val) +#define SET_TX_DESC_BMC(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 24, 1, __val) +#define SET_TX_DESC_HTC(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 25, 1, __val) +#define SET_TX_DESC_LAST_SEG(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 26, 1, __val) +#define SET_TX_DESC_FIRST_SEG(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 27, 1, __val) +#define SET_TX_DESC_LINIP(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 28, 1, __val) +#define SET_TX_DESC_NO_ACM(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 29, 1, __val) +#define SET_TX_DESC_GF(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 30, 1, __val) +#define SET_TX_DESC_OWN(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 31, 1, __val) + +#define GET_TX_DESC_PKT_SIZE(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 0, 16) +#define GET_TX_DESC_OFFSET(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 16, 8) +#define GET_TX_DESC_BMC(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 24, 1) +#define GET_TX_DESC_HTC(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 25, 1) +#define GET_TX_DESC_LAST_SEG(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 26, 1) +#define GET_TX_DESC_FIRST_SEG(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 27, 1) +#define GET_TX_DESC_LINIP(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 28, 1) +#define GET_TX_DESC_NO_ACM(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 29, 1) +#define GET_TX_DESC_GF(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 30, 1) +#define GET_TX_DESC_OWN(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 31, 1) + +#define SET_TX_DESC_MACID(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 0, 7, __val) +#define SET_TX_DESC_QUEUE_SEL(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 8, 5, __val) +#define SET_TX_DESC_RDG_NAV_EXT(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 13, 1, __val) +#define SET_TX_DESC_LSIG_TXOP_EN(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 14, 1, __val) +#define SET_TX_DESC_PIFS(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 15, 1, __val) +#define SET_TX_DESC_RATE_ID(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 16, 5, __val) +#define SET_TX_DESC_EN_DESC_ID(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 21, 1, __val) +#define SET_TX_DESC_SEC_TYPE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 22, 2, __val) +#define SET_TX_DESC_PKT_OFFSET(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 24, 5, __val) + + +#define SET_TX_DESC_PAID(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 0, 9, __val) +#define SET_TX_DESC_CCA_RTS(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 10, 2, __val) +#define SET_TX_DESC_AGG_ENABLE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 12, 1, __val) +#define SET_TX_DESC_RDG_ENABLE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 13, 1, __val) +#define SET_TX_DESC_BAR_RTY_TH(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 14, 2, __val) +#define SET_TX_DESC_AGG_BREAK(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 16, 1, __val) +#define SET_TX_DESC_MORE_FRAG(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 17, 1, __val) +#define SET_TX_DESC_RAW(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 18, 1, __val) +#define SET_TX_DESC_SPE_RPT(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 19, 1, __val) +#define SET_TX_DESC_AMPDU_DENSITY(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 20, 3, __val) +#define SET_TX_DESC_BT_INT(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 23, 1, __val) +#define SET_TX_DESC_GID(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 24, 6, __val) + + +#define SET_TX_DESC_WHEADER_LEN(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 0, 4, __val) +#define SET_TX_DESC_CHK_EN(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 4, 1, __val) +#define SET_TX_DESC_EARLY_MODE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 5, 1, __val) +#define SET_TX_DESC_HWSEQ_SEL(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 6, 2, __val) +#define SET_TX_DESC_USE_RATE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 8, 1, __val) +#define SET_TX_DESC_DISABLE_RTS_FB(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 9, 1, __val) +#define SET_TX_DESC_DISABLE_FB(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 10, 1, __val) +#define SET_TX_DESC_CTS2SELF(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 11, 1, __val) +#define SET_TX_DESC_RTS_ENABLE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 12, 1, __val) +#define SET_TX_DESC_HW_RTS_ENABLE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 13, 1, __val) +#define SET_TX_DESC_NAV_USE_HDR(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 15, 1, __val) +#define SET_TX_DESC_USE_MAX_LEN(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 16, 1, __val) +#define SET_TX_DESC_MAX_AGG_NUM(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 17, 5, __val) +#define SET_TX_DESC_NDPA(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 22, 2, __val) +#define SET_TX_DESC_AMPDU_MAX_TIME(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 24, 8, __val) + + +#define SET_TX_DESC_TX_RATE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+16, 0, 7, __val) +#define SET_TX_DESC_DATA_RATE_FB_LIMIT(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+16, 8, 5, __val) +#define SET_TX_DESC_RTS_RATE_FB_LIMIT(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+16, 13, 4, __val) +#define SET_TX_DESC_RETRY_LIMIT_ENABLE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+16, 17, 1, __val) +#define SET_TX_DESC_DATA_RETRY_LIMIT(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+16, 18, 6, __val) +#define SET_TX_DESC_RTS_RATE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+16, 24, 5, __val) + + +#define SET_TX_DESC_TX_SUB_CARRIER(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+20, 0, 4, __val) +#define SET_TX_DESC_DATA_SHORTGI(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+20, 4, 1, __val) +#define SET_TX_DESC_DATA_BW(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+20, 5, 2, __val) +#define SET_TX_DESC_DATA_LDPC(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+20, 7, 1, __val) +#define SET_TX_DESC_DATA_STBC(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+20, 8, 2, __val) +#define SET_TX_DESC_CTROL_STBC(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+20, 10, 2, __val) +#define SET_TX_DESC_RTS_SHORT(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+20, 12, 1, __val) +#define SET_TX_DESC_RTS_SC(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+20, 13, 4, __val) + + +#define SET_TX_DESC_TX_BUFFER_SIZE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+28, 0, 16, __val) + +#define GET_TX_DESC_TX_BUFFER_SIZE(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+28, 0, 16) + +#define SET_TX_DESC_HWSEQ_EN(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+32, 15, 1, __val) + +#define SET_TX_DESC_SEQ(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+36, 12, 12, __val) + +#define SET_TX_DESC_TX_BUFFER_ADDRESS(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+40, 0, 32, __val) + +#define GET_TX_DESC_TX_BUFFER_ADDRESS(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+40, 0, 32) + + +#define SET_TX_DESC_NEXT_DESC_ADDRESS(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+48, 0, 32, __val) + +#define GET_TX_DESC_NEXT_DESC_ADDRESS(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+48, 0, 32) + +#define GET_RX_DESC_PKT_LEN(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 0, 14) +#define GET_RX_DESC_CRC32(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 14, 1) +#define GET_RX_DESC_ICV(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 15, 1) +#define GET_RX_DESC_DRV_INFO_SIZE(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 16, 4) +#define GET_RX_DESC_SECURITY(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 20, 3) +#define GET_RX_DESC_QOS(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 23, 1) +#define GET_RX_DESC_SHIFT(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 24, 2) +#define GET_RX_DESC_PHYST(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 26, 1) +#define GET_RX_DESC_SWDEC(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 27, 1) +#define GET_RX_DESC_LS(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 28, 1) +#define GET_RX_DESC_FS(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 29, 1) +#define GET_RX_DESC_EOR(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 30, 1) +#define GET_RX_DESC_OWN(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 31, 1) + +#define SET_RX_DESC_PKT_LEN(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 0, 14, __val) +#define SET_RX_DESC_EOR(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 30, 1, __val) +#define SET_RX_DESC_OWN(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 31, 1, __val) + +#define GET_RX_DESC_MACID(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 0, 7) +#define GET_RX_DESC_TID(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 8, 4) +#define GET_RX_DESC_AMSDU(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 13, 1) +#define GET_RX_STATUS_DESC_RXID_MATCH(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 14, 1) +#define GET_RX_DESC_PAGGR(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 15, 1) +#define GET_RX_DESC_A1_FIT(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 16, 4) +#define GET_RX_DESC_CHKERR(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 20, 1) +#define GET_RX_DESC_IPVER(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 21, 1) +#define GET_RX_STATUS_DESC_IS_TCPUDP(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 22, 1) +#define GET_RX_STATUS_DESC_CHK_VLD(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 23, 1) +#define GET_RX_DESC_PAM(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 24, 1) +#define GET_RX_DESC_PWR(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 25, 1) +#define GET_RX_DESC_MD(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 26, 1) +#define GET_RX_DESC_MF(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 27, 1) +#define GET_RX_DESC_TYPE(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 28, 2) +#define GET_RX_DESC_MC(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 30, 1) +#define GET_RX_DESC_BC(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 31, 1) + + +#define GET_RX_DESC_SEQ(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+8, 0, 12) +#define GET_RX_DESC_FRAG(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+8, 12, 4) +#define GET_RX_STATUS_DESC_RX_IS_QOS(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+8, 16, 1) +#define GET_RX_STATUS_DESC_WLANHD_IV_LEN(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+8, 18, 6) +#define GET_RX_STATUS_DESC_RPT_SEL(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+8, 28, 1) + + +#define GET_RX_DESC_RXMCS(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+12, 0, 7) +#define GET_RX_DESC_RXHT(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+12, 6, 1) +#define GET_RX_STATUS_DESC_RX_GF(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+12, 7, 1) +#define GET_RX_DESC_HTC(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+12, 10, 1) +#define GET_RX_STATUS_DESC_EOSP(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+12, 11, 1) +#define GET_RX_STATUS_DESC_BSSID_FIT(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+12, 12, 2) + +#define GET_RX_STATUS_DESC_PATTERN_MATCH(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+12, 29, 1) +#define GET_RX_STATUS_DESC_UNICAST_MATCH(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+12, 30, 1) +#define GET_RX_STATUS_DESC_MAGIC_MATCH(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+12, 31, 1) + +#define GET_RX_DESC_SPLCP(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+16, 0, 1) +#define GET_RX_STATUS_DESC_LDPC(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+16, 1, 1) +#define GET_RX_STATUS_DESC_STBC(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+16, 2, 1) +#define GET_RX_DESC_BW(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+16, 4, 2) + +#define GET_RX_DESC_TSFL(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+20, 0, 32) + +#define GET_RX_DESC_BUFF_ADDR(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+24, 0, 32) +#define GET_RX_DESC_BUFF_ADDR64(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+28, 0, 32) + +#define SET_RX_DESC_BUFF_ADDR(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+24, 0, 32, __val) +#define SET_RX_DESC_BUFF_ADDR64(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+28, 0, 32, __val) + + +/* TX report 2 format in Rx desc*/ + +#define GET_RX_RPT2_DESC_PKT_LEN(__rxstatusdesc) \ + LE_BITS_TO_4BYTE(__rxstatusdesc, 0, 9) +#define GET_RX_RPT2_DESC_MACID_VALID_1(__rxstatusdesc) \ + LE_BITS_TO_4BYTE(__rxstatusdesc+16, 0, 32) +#define GET_RX_RPT2_DESC_MACID_VALID_2(__rxstatusdesc) \ + LE_BITS_TO_4BYTE(__rxstatusdesc+20, 0, 32) + +#define SET_EARLYMODE_PKTNUM(__paddr, __value) \ + SET_BITS_TO_LE_4BYTE(__paddr, 0, 4, __value) +#define SET_EARLYMODE_LEN0(__paddr, __value) \ + SET_BITS_TO_LE_4BYTE(__paddr, 4, 12, __value) +#define SET_EARLYMODE_LEN1(__paddr, __value) \ + SET_BITS_TO_LE_4BYTE(__paddr, 16, 12, __value) +#define SET_EARLYMODE_LEN2_1(__paddr, __value) \ + SET_BITS_TO_LE_4BYTE(__paddr, 28, 4, __value) +#define SET_EARLYMODE_LEN2_2(__paddr, __value) \ + SET_BITS_TO_LE_4BYTE(__paddr+4, 0, 8, __value) +#define SET_EARLYMODE_LEN3(__paddr, __value) \ + SET_BITS_TO_LE_4BYTE(__paddr+4, 8, 12, __value) +#define SET_EARLYMODE_LEN4(__paddr, __value) \ + SET_BITS_TO_LE_4BYTE(__paddr+4, 20, 12, __value) + +#define CLEAR_PCI_TX_DESC_CONTENT(__pdesc, _size) \ +do { \ + if (_size > TX_DESC_NEXT_DESC_OFFSET) \ + memset(__pdesc, 0, TX_DESC_NEXT_DESC_OFFSET); \ + else \ + memset(__pdesc, 0, _size); \ +} while (0) + +struct phy_rx_agc_info_t { + #ifdef __LITTLE_ENDIAN + u8 gain:7, trsw:1; + #else + u8 trsw:1, gain:7; + #endif +}; +struct phy_status_rpt { + struct phy_rx_agc_info_t path_agc[2]; + u8 ch_corr[2]; + u8 cck_sig_qual_ofdm_pwdb_all; + u8 cck_agc_rpt_ofdm_cfosho_a; + u8 cck_rpt_b_ofdm_cfosho_b; + u8 rsvd_1;/* ch_corr_msb; */ + u8 noise_power_db_msb; + char path_cfotail[2]; + u8 pcts_mask[2]; + char stream_rxevm[2]; + u8 path_rxsnr[2]; + u8 noise_power_db_lsb; + u8 rsvd_2[3]; + u8 stream_csi[2]; + u8 stream_target_csi[2]; + u8 sig_evm; + u8 rsvd_3; +#ifdef __LITTLE_ENDIAN + u8 antsel_rx_keep_2:1; /*ex_intf_flg:1;*/ + u8 sgi_en:1; + u8 rxsc:2; + u8 idle_long:1; + u8 r_ant_train_en:1; + u8 ant_sel_b:1; + u8 ant_sel:1; +#else /* _BIG_ENDIAN_ */ + u8 ant_sel:1; + u8 ant_sel_b:1; + u8 r_ant_train_en:1; + u8 idle_long:1; + u8 rxsc:2; + u8 sgi_en:1; + u8 antsel_rx_keep_2:1; /*ex_intf_flg:1;*/ +#endif +} __packed; + +struct rx_fwinfo_8723be { + u8 gain_trsw[4]; + u8 pwdb_all; + u8 cfosho[4]; + u8 cfotail[4]; + char rxevm[2]; + char rxsnr[4]; + u8 pdsnr[2]; + u8 csi_current[2]; + u8 csi_target[2]; + u8 sigevm; + u8 max_ex_pwr; + u8 ex_intf_flag:1; + u8 sgi_en:1; + u8 rxsc:2; + u8 reserve:4; +} __packed; + +struct tx_desc_8723be { + u32 pktsize:16; + u32 offset:8; + u32 bmc:1; + u32 htc:1; + u32 lastseg:1; + u32 firstseg:1; + u32 linip:1; + u32 noacm:1; + u32 gf:1; + u32 own:1; + + u32 macid:6; + u32 rsvd0:2; + u32 queuesel:5; + u32 rd_nav_ext:1; + u32 lsig_txop_en:1; + u32 pifs:1; + u32 rateid:4; + u32 nav_usehdr:1; + u32 en_descid:1; + u32 sectype:2; + u32 pktoffset:8; + + u32 rts_rc:6; + u32 data_rc:6; + u32 agg_en:1; + u32 rdg_en:1; + u32 bar_retryht:2; + u32 agg_break:1; + u32 morefrag:1; + u32 raw:1; + u32 ccx:1; + u32 ampdudensity:3; + u32 bt_int:1; + u32 ant_sela:1; + u32 ant_selb:1; + u32 txant_cck:2; + u32 txant_l:2; + u32 txant_ht:2; + + u32 nextheadpage:8; + u32 tailpage:8; + u32 seq:12; + u32 cpu_handle:1; + u32 tag1:1; + u32 trigger_int:1; + u32 hwseq_en:1; + + u32 rtsrate:5; + u32 apdcfe:1; + u32 qos:1; + u32 hwseq_ssn:1; + u32 userrate:1; + u32 dis_rtsfb:1; + u32 dis_datafb:1; + u32 cts2self:1; + u32 rts_en:1; + u32 hwrts_en:1; + u32 portid:1; + u32 pwr_status:3; + u32 waitdcts:1; + u32 cts2ap_en:1; + u32 txsc:2; + u32 stbc:2; + u32 txshort:1; + u32 txbw:1; + u32 rtsshort:1; + u32 rtsbw:1; + u32 rtssc:2; + u32 rtsstbc:2; + + u32 txrate:6; + u32 shortgi:1; + u32 ccxt:1; + u32 txrate_fb_lmt:5; + u32 rtsrate_fb_lmt:4; + u32 retrylmt_en:1; + u32 txretrylmt:6; + u32 usb_txaggnum:8; + + u32 txagca:5; + u32 txagcb:5; + u32 usemaxlen:1; + u32 maxaggnum:5; + u32 mcsg1maxlen:4; + u32 mcsg2maxlen:4; + u32 mcsg3maxlen:4; + u32 mcs7sgimaxlen:4; + + u32 txbuffersize:16; + u32 sw_offset30:8; + u32 sw_offset31:4; + u32 rsvd1:1; + u32 antsel_c:1; + u32 null_0:1; + u32 null_1:1; + + u32 txbuffaddr; + u32 txbufferaddr64; + u32 nextdescaddress; + u32 nextdescaddress64; + + u32 reserve_pass_pcie_mm_limit[4]; +} __packed; + +struct rx_desc_8723be { + u32 length:14; + u32 crc32:1; + u32 icverror:1; + u32 drv_infosize:4; + u32 security:3; + u32 qos:1; + u32 shift:2; + u32 phystatus:1; + u32 swdec:1; + u32 lastseg:1; + u32 firstseg:1; + u32 eor:1; + u32 own:1; + + u32 macid:6; + u32 tid:4; + u32 hwrsvd:5; + u32 paggr:1; + u32 faggr:1; + u32 a1_fit:4; + u32 a2_fit:4; + u32 pam:1; + u32 pwr:1; + u32 moredata:1; + u32 morefrag:1; + u32 type:2; + u32 mc:1; + u32 bc:1; + + u32 seq:12; + u32 frag:4; + u32 nextpktlen:14; + u32 nextind:1; + u32 rsvd:1; + + u32 rxmcs:6; + u32 rxht:1; + u32 amsdu:1; + u32 splcp:1; + u32 bandwidth:1; + u32 htc:1; + u32 tcpchk_rpt:1; + u32 ipcchk_rpt:1; + u32 tcpchk_valid:1; + u32 hwpcerr:1; + u32 hwpcind:1; + u32 iv0:16; + + u32 iv1; + + u32 tsfl; + + u32 bufferaddress; + u32 bufferaddress64; + +} __packed; + +void rtl8723be_tx_fill_desc(struct ieee80211_hw *hw, + struct ieee80211_hdr *hdr, u8 *pdesc_tx, + struct ieee80211_tx_info *info, + struct ieee80211_sta *sta, struct sk_buff *skb, + u8 hw_queue, struct rtl_tcb_desc *ptcb_desc); +bool rtl8723be_rx_query_desc(struct ieee80211_hw *hw, + struct rtl_stats *status, + struct ieee80211_rx_status *rx_status, + u8 *pdesc, struct sk_buff *skb); +void rtl8723be_set_desc(u8 *pdesc, bool istx, u8 desc_name, u8 *val); +u32 rtl8723be_get_desc(u8 *pdesc, bool istx, u8 desc_name); +bool rtl8723be_is_tx_desc_closed(struct ieee80211_hw *hw, + u8 hw_queue, u16 index); +void rtl8723be_tx_polling(struct ieee80211_hw *hw, u8 hw_queue); +void rtl8723be_tx_fill_cmddesc(struct ieee80211_hw *hw, u8 *pdesc, + bool b_firstseg, bool b_lastseg, + struct sk_buff *skb); +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723com/Makefile +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723com/Makefile @@ -0,0 +1,9 @@ +rtl8723-common-objs := \ + main.o \ + dm_common.o \ + fw_common.o \ + phy_common.o + +obj-$(CONFIG_RTL8723_COMMON) += rtl8723-common.o + +ccflags-y += -D__CHECK_ENDIAN__ --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723com/dm_common.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723com/dm_common.c @@ -0,0 +1,65 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "dm_common.h" +#include "../rtl8723ae/dm.h" +#include + +/* These routines are common to RTL8723AE and RTL8723bE */ + +void rtl8723_dm_init_dynamic_txpower(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtlpriv->dm.dynamic_txpower_enable = false; + + rtlpriv->dm.last_dtp_lvl = TXHIGHPWRLEVEL_NORMAL; + rtlpriv->dm.dynamic_txhighpower_lvl = TXHIGHPWRLEVEL_NORMAL; +} +EXPORT_SYMBOL_GPL(rtl8723_dm_init_dynamic_txpower); + +void rtl8723_dm_init_edca_turbo(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtlpriv->dm.current_turbo_edca = false; + rtlpriv->dm.is_any_nonbepkts = false; + rtlpriv->dm.is_cur_rdlstate = false; +} +EXPORT_SYMBOL_GPL(rtl8723_dm_init_edca_turbo); + +void rtl8723_dm_init_dynamic_bb_powersaving(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtlpriv->dm_pstable.pre_ccastate = CCA_MAX; + rtlpriv->dm_pstable.cur_ccasate = CCA_MAX; + rtlpriv->dm_pstable.pre_rfstate = RF_MAX; + rtlpriv->dm_pstable.cur_rfstate = RF_MAX; + rtlpriv->dm_pstable.rssi_val_min = 0; + rtlpriv->dm_pstable.initialize = 0; +} +EXPORT_SYMBOL_GPL(rtl8723_dm_init_dynamic_bb_powersaving); --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723com/dm_common.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723com/dm_common.h @@ -0,0 +1,33 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __DM_COMMON_H__ +#define __DM_COMMON_H__ + +void rtl8723_dm_init_dynamic_txpower(struct ieee80211_hw *hw); +void rtl8723_dm_init_edca_turbo(struct ieee80211_hw *hw); +void rtl8723_dm_init_dynamic_bb_powersaving(struct ieee80211_hw *hw); + +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723com/fw_common.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723com/fw_common.c @@ -0,0 +1,329 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "../pci.h" +#include "../base.h" +#include "fw_common.h" +#include + +void rtl8723_enable_fw_download(struct ieee80211_hw *hw, bool enable) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 tmp; + + if (enable) { + tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN + 1); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN + 1, tmp | 0x04); + + tmp = rtl_read_byte(rtlpriv, REG_MCUFWDL); + rtl_write_byte(rtlpriv, REG_MCUFWDL, tmp | 0x01); + + tmp = rtl_read_byte(rtlpriv, REG_MCUFWDL + 2); + rtl_write_byte(rtlpriv, REG_MCUFWDL + 2, tmp & 0xf7); + } else { + tmp = rtl_read_byte(rtlpriv, REG_MCUFWDL); + rtl_write_byte(rtlpriv, REG_MCUFWDL, tmp & 0xfe); + + rtl_write_byte(rtlpriv, REG_MCUFWDL + 1, 0x00); + } +} +EXPORT_SYMBOL_GPL(rtl8723_enable_fw_download); + +void rtl8723_fw_block_write(struct ieee80211_hw *hw, + const u8 *buffer, u32 size) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 blocksize = sizeof(u32); + u8 *bufferptr = (u8 *)buffer; + u32 *pu4byteptr = (u32 *)buffer; + u32 i, offset, blockcount, remainsize; + + blockcount = size / blocksize; + remainsize = size % blocksize; + + for (i = 0; i < blockcount; i++) { + offset = i * blocksize; + rtl_write_dword(rtlpriv, (FW_8192C_START_ADDRESS + offset), + *(pu4byteptr + i)); + } + if (remainsize) { + offset = blockcount * blocksize; + bufferptr += offset; + for (i = 0; i < remainsize; i++) { + rtl_write_byte(rtlpriv, + (FW_8192C_START_ADDRESS + offset + i), + *(bufferptr + i)); + } + } +} +EXPORT_SYMBOL_GPL(rtl8723_fw_block_write); + +void rtl8723_fw_page_write(struct ieee80211_hw *hw, + u32 page, const u8 *buffer, u32 size) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 value8; + u8 u8page = (u8) (page & 0x07); + + value8 = (rtl_read_byte(rtlpriv, REG_MCUFWDL + 2) & 0xF8) | u8page; + + rtl_write_byte(rtlpriv, (REG_MCUFWDL + 2), value8); + rtl8723_fw_block_write(hw, buffer, size); +} +EXPORT_SYMBOL_GPL(rtl8723_fw_page_write); + +static void rtl8723_fill_dummy(u8 *pfwbuf, u32 *pfwlen) +{ + u32 fwlen = *pfwlen; + u8 remain = (u8) (fwlen % 4); + + remain = (remain == 0) ? 0 : (4 - remain); + + while (remain > 0) { + pfwbuf[fwlen] = 0; + fwlen++; + remain--; + } + *pfwlen = fwlen; +} + +void rtl8723_write_fw(struct ieee80211_hw *hw, + enum version_8723e version, + u8 *buffer, u32 size) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 *bufferptr = (u8 *)buffer; + u32 pagenums, remainsize; + u32 page, offset; + + RT_TRACE(rtlpriv, COMP_FW, DBG_LOUD, "FW size is %d bytes,\n", size); + + rtl8723_fill_dummy(bufferptr, &size); + + pagenums = size / FW_8192C_PAGE_SIZE; + remainsize = size % FW_8192C_PAGE_SIZE; + + if (pagenums > 8) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "Page numbers should not greater then 8\n"); + } + for (page = 0; page < pagenums; page++) { + offset = page * FW_8192C_PAGE_SIZE; + rtl8723_fw_page_write(hw, page, (bufferptr + offset), + FW_8192C_PAGE_SIZE); + } + if (remainsize) { + offset = pagenums * FW_8192C_PAGE_SIZE; + page = pagenums; + rtl8723_fw_page_write(hw, page, (bufferptr + offset), + remainsize); + } +} +EXPORT_SYMBOL_GPL(rtl8723_write_fw); + +void rtl8723ae_firmware_selfreset(struct ieee80211_hw *hw) +{ + u8 u1tmp; + u8 delay = 100; + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtl_write_byte(rtlpriv, REG_HMETFR + 3, 0x20); + u1tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN + 1); + + while (u1tmp & BIT(2)) { + delay--; + if (delay == 0) + break; + udelay(50); + u1tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN + 1); + } + if (delay == 0) { + u1tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN + 1); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN + 1, u1tmp&(~BIT(2))); + } +} +EXPORT_SYMBOL_GPL(rtl8723ae_firmware_selfreset); + +void rtl8723be_firmware_selfreset(struct ieee80211_hw *hw) +{ + u8 u1b_tmp; + struct rtl_priv *rtlpriv = rtl_priv(hw); + + u1b_tmp = rtl_read_byte(rtlpriv, REG_RSV_CTRL + 1); + rtl_write_byte(rtlpriv, REG_RSV_CTRL + 1, (u1b_tmp & (~BIT(0)))); + + u1b_tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN + 1); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN + 1, (u1b_tmp & (~BIT(2)))); + udelay(50); + + u1b_tmp = rtl_read_byte(rtlpriv, REG_RSV_CTRL + 1); + rtl_write_byte(rtlpriv, REG_RSV_CTRL + 1, (u1b_tmp | BIT(0))); + + u1b_tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN + 1); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN + 1, (u1b_tmp | BIT(2))); + + RT_TRACE(rtlpriv, COMP_INIT, DBG_LOUD, + " _8051Reset8723be(): 8051 reset success .\n"); +} +EXPORT_SYMBOL_GPL(rtl8723be_firmware_selfreset); + +int rtl8723_fw_free_to_go(struct ieee80211_hw *hw, bool is_8723be) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + int err = -EIO; + u32 counter = 0; + u32 value32; + + do { + value32 = rtl_read_dword(rtlpriv, REG_MCUFWDL); + } while ((counter++ < FW_8192C_POLLING_TIMEOUT_COUNT) && + (!(value32 & FWDL_CHKSUM_RPT))); + + if (counter >= FW_8192C_POLLING_TIMEOUT_COUNT) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "chksum report fail ! REG_MCUFWDL:0x%08x .\n", + value32); + goto exit; + } + RT_TRACE(rtlpriv, COMP_FW, DBG_TRACE, + "Checksum report OK ! REG_MCUFWDL:0x%08x .\n", value32); + + value32 = rtl_read_dword(rtlpriv, REG_MCUFWDL) | MCUFWDL_RDY; + value32 &= ~WINTINI_RDY; + rtl_write_dword(rtlpriv, REG_MCUFWDL, value32); + + if (is_8723be) + rtl8723be_firmware_selfreset(hw); + counter = 0; + + do { + value32 = rtl_read_dword(rtlpriv, REG_MCUFWDL); + if (value32 & WINTINI_RDY) { + RT_TRACE(rtlpriv, COMP_FW, DBG_TRACE, + "Polling FW ready success!! " + "REG_MCUFWDL:0x%08x .\n", + value32); + err = 0; + goto exit; + } + udelay(FW_8192C_POLLING_DELAY); + + } while (counter++ < FW_8192C_POLLING_TIMEOUT_COUNT); + + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "Polling FW ready fail!! REG_MCUFWDL:0x%08x .\n", + value32); + +exit: + return err; +} +EXPORT_SYMBOL_GPL(rtl8723_fw_free_to_go); + +int rtl8723_download_fw(struct ieee80211_hw *hw, + bool is_8723be) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl92c_firmware_header *pfwheader; + u8 *pfwdata; + u32 fwsize; + int err; + enum version_8723e version = rtlhal->version; + + if (!rtlhal->pfirmware) + return 1; + + pfwheader = (struct rtl92c_firmware_header *)rtlhal->pfirmware; + pfwdata = (u8 *)rtlhal->pfirmware; + fwsize = rtlhal->fwsize; + RT_TRACE(rtlpriv, COMP_FW, DBG_DMESG, + "normal Firmware SIZE %d\n", fwsize); + + if (rtlpriv->cfg->ops->is_fw_header(pfwheader)) { + RT_TRACE(rtlpriv, COMP_FW, DBG_EMERG, + "Firmware Version(%d), Signature(%#x), Size(%d)\n", + pfwheader->version, pfwheader->signature, + (int)sizeof(struct rtl92c_firmware_header)); + + pfwdata = pfwdata + sizeof(struct rtl92c_firmware_header); + fwsize = fwsize - sizeof(struct rtl92c_firmware_header); + } + if (rtl_read_byte(rtlpriv, REG_MCUFWDL) & BIT(7)) { + rtl_write_byte(rtlpriv, REG_MCUFWDL, 0); + if (is_8723be) + rtl8723be_firmware_selfreset(hw); + else + rtl8723ae_firmware_selfreset(hw); + } + rtl8723_enable_fw_download(hw, true); + rtl8723_write_fw(hw, version, pfwdata, fwsize); + rtl8723_enable_fw_download(hw, false); + + err = rtl8723_fw_free_to_go(hw, is_8723be); + if (err) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, + "Firmware is not ready to run!\n"); + } else { + RT_TRACE(rtlpriv, COMP_FW, DBG_LOUD, + "Firmware is ready to run!\n"); + } + return 0; +} +EXPORT_SYMBOL_GPL(rtl8723_download_fw); + +bool rtl8723_cmd_send_packet(struct ieee80211_hw *hw, + struct sk_buff *skb) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl8192_tx_ring *ring; + struct rtl_tx_desc *pdesc; + struct sk_buff *pskb = NULL; + u8 own; + unsigned long flags; + + ring = &rtlpci->tx_ring[BEACON_QUEUE]; + + pskb = __skb_dequeue(&ring->queue); + if (pskb) + kfree_skb(pskb); + + spin_lock_irqsave(&rtlpriv->locks.irq_th_lock, flags); + + pdesc = &ring->desc[0]; + own = (u8) rtlpriv->cfg->ops->get_desc((u8 *)pdesc, true, HW_DESC_OWN); + + rtlpriv->cfg->ops->fill_tx_cmddesc(hw, (u8 *)pdesc, 1, 1, skb); + + __skb_queue_tail(&ring->queue, skb); + + spin_unlock_irqrestore(&rtlpriv->locks.irq_th_lock, flags); + + rtlpriv->cfg->ops->tx_polling(hw, BEACON_QUEUE); + + return true; +} +EXPORT_SYMBOL_GPL(rtl8723_cmd_send_packet); --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723com/fw_common.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723com/fw_common.h @@ -0,0 +1,126 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __FW_COMMON_H__ +#define __FW_COMMON_H__ + +#define REG_SYS_FUNC_EN 0x0002 +#define REG_MCUFWDL 0x0080 +#define FW_8192C_START_ADDRESS 0x1000 +#define FW_8192C_PAGE_SIZE 4096 +#define FW_8192C_POLLING_TIMEOUT_COUNT 6000 +#define FW_8192C_POLLING_DELAY 5 + +#define MCUFWDL_RDY BIT(1) +#define FWDL_CHKSUM_RPT BIT(2) +#define WINTINI_RDY BIT(6) + +#define REG_RSV_CTRL 0x001C +#define REG_HMETFR 0x01CC + +enum version_8723e { + VERSION_TEST_UMC_CHIP_8723 = 0x0081, + VERSION_NORMAL_UMC_CHIP_8723_1T1R_A_CUT = 0x0089, + VERSION_NORMAL_UMC_CHIP_8723_1T1R_B_CUT = 0x1089, + VERSION_TEST_CHIP_1T1R_8723B = 0x0106, + VERSION_NORMAL_SMIC_CHIP_1T1R_8723B = 0x010E, + VERSION_UNKNOWN = 0xFF, +}; + +enum rtl8723ae_h2c_cmd { + H2C_AP_OFFLOAD = 0, + H2C_SETPWRMODE = 1, + H2C_JOINBSSRPT = 2, + H2C_RSVDPAGE = 3, + H2C_RSSI_REPORT = 4, + H2C_P2P_PS_CTW_CMD = 5, + H2C_P2P_PS_OFFLOAD = 6, + H2C_RA_MASK = 7, + MAX_H2CCMD +}; + +enum rtl8723be_cmd { + H2C_8723BE_RSVDPAGE = 0, + H2C_8723BE_JOINBSSRPT = 1, + H2C_8723BE_SCAN = 2, + H2C_8723BE_KEEP_ALIVE_CTRL = 3, + H2C_8723BE_DISCONNECT_DECISION = 4, + H2C_8723BE_INIT_OFFLOAD = 6, + H2C_8723BE_AP_OFFLOAD = 8, + H2C_8723BE_BCN_RSVDPAGE = 9, + H2C_8723BE_PROBERSP_RSVDPAGE = 10, + + H2C_8723BE_SETPWRMODE = 0x20, + H2C_8723BE_PS_TUNING_PARA = 0x21, + H2C_8723BE_PS_TUNING_PARA2 = 0x22, + H2C_8723BE_PS_LPS_PARA = 0x23, + H2C_8723BE_P2P_PS_OFFLOAD = 0x24, + + H2C_8723BE_WO_WLAN = 0x80, + H2C_8723BE_REMOTE_WAKE_CTRL = 0x81, + H2C_8723BE_AOAC_GLOBAL_INFO = 0x82, + H2C_8723BE_AOAC_RSVDPAGE = 0x83, + H2C_8723BE_RSSI_REPORT = 0x42, + H2C_8723BE_RA_MASK = 0x40, + H2C_8723BE_SELECTIVE_SUSPEND_ROF_CMD, + H2C_8723BE_P2P_PS_MODE, + H2C_8723BE_PSD_RESULT, + /*Not defined CTW CMD for P2P yet*/ + H2C_8723BE_P2P_PS_CTW_CMD, + MAX_8723BE_H2CCMD +}; + +struct rtl92c_firmware_header { + u16 signature; + u8 category; + u8 function; + u16 version; + u8 subversion; + u8 rsvd1; + u8 month; + u8 date; + u8 hour; + u8 minute; + u16 ramcodesize; + u16 rsvd2; + u32 svnindex; + u32 rsvd3; + u32 rsvd4; + u32 rsvd5; +}; + +void rtl8723ae_firmware_selfreset(struct ieee80211_hw *hw); +void rtl8723be_firmware_selfreset(struct ieee80211_hw *hw); +void rtl8723_enable_fw_download(struct ieee80211_hw *hw, bool enable); +void rtl8723_fw_block_write(struct ieee80211_hw *hw, + const u8 *buffer, u32 size); +void rtl8723_fw_page_write(struct ieee80211_hw *hw, + u32 page, const u8 *buffer, u32 size); +void rtl8723_write_fw(struct ieee80211_hw *hw, + enum version_8723e version, + u8 *buffer, u32 size); +int rtl8723_fw_free_to_go(struct ieee80211_hw *hw, bool is_8723be); +int rtl8723_download_fw(struct ieee80211_hw *hw, bool is_8723be); +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723com/main.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723com/main.c @@ -0,0 +1,33 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include + + +MODULE_AUTHOR("Realtek WlanFAE "); +MODULE_AUTHOR("Larry Finger "); +MODULE_LICENSE("GPL"); +MODULE_DESCRIPTION("Realtek RTL8723AE/RTL8723BE 802.11n PCI wireless common routines"); --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723com/phy_common.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723com/phy_common.c @@ -0,0 +1,434 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "phy_common.h" +#include "../rtl8723ae/reg.h" +#include + +/* These routines are common to RTL8723AE and RTL8723bE */ + +u32 rtl8723_phy_query_bb_reg(struct ieee80211_hw *hw, + u32 regaddr, u32 bitmask) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 returnvalue, originalvalue, bitshift; + + RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, + "regaddr(%#x), bitmask(%#x)\n", regaddr, bitmask); + originalvalue = rtl_read_dword(rtlpriv, regaddr); + bitshift = rtl8723_phy_calculate_bit_shift(bitmask); + returnvalue = (originalvalue & bitmask) >> bitshift; + + RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, + "BBR MASK = 0x%x Addr[0x%x]= 0x%x\n", + bitmask, regaddr, originalvalue); + + return returnvalue; +} +EXPORT_SYMBOL_GPL(rtl8723_phy_query_bb_reg); + +void rtl8723_phy_set_bb_reg(struct ieee80211_hw *hw, u32 regaddr, + u32 bitmask, u32 data) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 originalvalue, bitshift; + + RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, + "regaddr(%#x), bitmask(%#x), data(%#x)\n", + regaddr, bitmask, data); + + if (bitmask != MASKDWORD) { + originalvalue = rtl_read_dword(rtlpriv, regaddr); + bitshift = rtl8723_phy_calculate_bit_shift(bitmask); + data = ((originalvalue & (~bitmask)) | (data << bitshift)); + } + + rtl_write_dword(rtlpriv, regaddr, data); + + RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, + "regaddr(%#x), bitmask(%#x), data(%#x)\n", + regaddr, bitmask, data); +} +EXPORT_SYMBOL_GPL(rtl8723_phy_set_bb_reg); + +u32 rtl8723_phy_calculate_bit_shift(u32 bitmask) +{ + u32 i; + + for (i = 0; i <= 31; i++) { + if (((bitmask >> i) & 0x1) == 1) + break; + } + return i; +} +EXPORT_SYMBOL_GPL(rtl8723_phy_calculate_bit_shift); + +u32 rtl8723_phy_rf_serial_read(struct ieee80211_hw *hw, + enum radio_path rfpath, u32 offset) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct bb_reg_def *pphyreg = &rtlphy->phyreg_def[rfpath]; + u32 newoffset; + u32 tmplong, tmplong2; + u8 rfpi_enable = 0; + u32 retvalue; + + offset &= 0xff; + newoffset = offset; + if (RT_CANNOT_IO(hw)) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "return all one\n"); + return 0xFFFFFFFF; + } + tmplong = rtl_get_bbreg(hw, RFPGA0_XA_HSSIPARAMETER2, MASKDWORD); + if (rfpath == RF90_PATH_A) + tmplong2 = tmplong; + else + tmplong2 = rtl_get_bbreg(hw, pphyreg->rfhssi_para2, MASKDWORD); + tmplong2 = (tmplong2 & (~BLSSIREADADDRESS)) | + (newoffset << 23) | BLSSIREADEDGE; + rtl_set_bbreg(hw, RFPGA0_XA_HSSIPARAMETER2, MASKDWORD, + tmplong & (~BLSSIREADEDGE)); + mdelay(1); + rtl_set_bbreg(hw, pphyreg->rfhssi_para2, MASKDWORD, tmplong2); + mdelay(2); + if (rfpath == RF90_PATH_A) + rfpi_enable = (u8) rtl_get_bbreg(hw, RFPGA0_XA_HSSIPARAMETER1, + BIT(8)); + else if (rfpath == RF90_PATH_B) + rfpi_enable = (u8) rtl_get_bbreg(hw, RFPGA0_XB_HSSIPARAMETER1, + BIT(8)); + if (rfpi_enable) + retvalue = rtl_get_bbreg(hw, pphyreg->rf_rbpi, + BLSSIREADBACKDATA); + else + retvalue = rtl_get_bbreg(hw, pphyreg->rf_rb, + BLSSIREADBACKDATA); + RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, + "RFR-%d Addr[0x%x]= 0x%x\n", + rfpath, pphyreg->rf_rb, retvalue); + return retvalue; +} +EXPORT_SYMBOL_GPL(rtl8723_phy_rf_serial_read); + +void rtl8723_phy_rf_serial_write(struct ieee80211_hw *hw, + enum radio_path rfpath, + u32 offset, u32 data) +{ + u32 data_and_addr; + u32 newoffset; + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct bb_reg_def *pphyreg = &rtlphy->phyreg_def[rfpath]; + + if (RT_CANNOT_IO(hw)) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, "stop\n"); + return; + } + offset &= 0xff; + newoffset = offset; + data_and_addr = ((newoffset << 20) | (data & 0x000fffff)) & 0x0fffffff; + rtl_set_bbreg(hw, pphyreg->rf3wire_offset, MASKDWORD, data_and_addr); + RT_TRACE(rtlpriv, COMP_RF, DBG_TRACE, + "RFW-%d Addr[0x%x]= 0x%x\n", rfpath, + pphyreg->rf3wire_offset, data_and_addr); +} +EXPORT_SYMBOL_GPL(rtl8723_phy_rf_serial_write); + +long rtl8723_phy_txpwr_idx_to_dbm(struct ieee80211_hw *hw, + enum wireless_mode wirelessmode, + u8 txpwridx) +{ + long offset; + long pwrout_dbm; + + switch (wirelessmode) { + case WIRELESS_MODE_B: + offset = -7; + break; + case WIRELESS_MODE_G: + case WIRELESS_MODE_N_24G: + default: + offset = -8; + break; + } + pwrout_dbm = txpwridx / 2 + offset; + return pwrout_dbm; +} +EXPORT_SYMBOL_GPL(rtl8723_phy_txpwr_idx_to_dbm); + +void rtl8723_phy_init_bb_rf_reg_def(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + rtlphy->phyreg_def[RF90_PATH_A].rfintfs = RFPGA0_XAB_RFINTERFACESW; + rtlphy->phyreg_def[RF90_PATH_B].rfintfs = RFPGA0_XAB_RFINTERFACESW; + rtlphy->phyreg_def[RF90_PATH_C].rfintfs = RFPGA0_XCD_RFINTERFACESW; + rtlphy->phyreg_def[RF90_PATH_D].rfintfs = RFPGA0_XCD_RFINTERFACESW; + + rtlphy->phyreg_def[RF90_PATH_A].rfintfi = RFPGA0_XAB_RFINTERFACERB; + rtlphy->phyreg_def[RF90_PATH_B].rfintfi = RFPGA0_XAB_RFINTERFACERB; + rtlphy->phyreg_def[RF90_PATH_C].rfintfi = RFPGA0_XCD_RFINTERFACERB; + rtlphy->phyreg_def[RF90_PATH_D].rfintfi = RFPGA0_XCD_RFINTERFACERB; + + rtlphy->phyreg_def[RF90_PATH_A].rfintfo = RFPGA0_XA_RFINTERFACEOE; + rtlphy->phyreg_def[RF90_PATH_B].rfintfo = RFPGA0_XB_RFINTERFACEOE; + + rtlphy->phyreg_def[RF90_PATH_A].rfintfe = RFPGA0_XA_RFINTERFACEOE; + rtlphy->phyreg_def[RF90_PATH_B].rfintfe = RFPGA0_XB_RFINTERFACEOE; + + rtlphy->phyreg_def[RF90_PATH_A].rf3wire_offset = + RFPGA0_XA_LSSIPARAMETER; + rtlphy->phyreg_def[RF90_PATH_B].rf3wire_offset = + RFPGA0_XB_LSSIPARAMETER; + + rtlphy->phyreg_def[RF90_PATH_A].rflssi_select = rFPGA0_XAB_RFPARAMETER; + rtlphy->phyreg_def[RF90_PATH_B].rflssi_select = rFPGA0_XAB_RFPARAMETER; + rtlphy->phyreg_def[RF90_PATH_C].rflssi_select = rFPGA0_XCD_RFPARAMETER; + rtlphy->phyreg_def[RF90_PATH_D].rflssi_select = rFPGA0_XCD_RFPARAMETER; + + rtlphy->phyreg_def[RF90_PATH_A].rftxgain_stage = RFPGA0_TXGAINSTAGE; + rtlphy->phyreg_def[RF90_PATH_B].rftxgain_stage = RFPGA0_TXGAINSTAGE; + rtlphy->phyreg_def[RF90_PATH_C].rftxgain_stage = RFPGA0_TXGAINSTAGE; + rtlphy->phyreg_def[RF90_PATH_D].rftxgain_stage = RFPGA0_TXGAINSTAGE; + + rtlphy->phyreg_def[RF90_PATH_A].rfhssi_para1 = RFPGA0_XA_HSSIPARAMETER1; + rtlphy->phyreg_def[RF90_PATH_B].rfhssi_para1 = RFPGA0_XB_HSSIPARAMETER1; + + rtlphy->phyreg_def[RF90_PATH_A].rfhssi_para2 = RFPGA0_XA_HSSIPARAMETER2; + rtlphy->phyreg_def[RF90_PATH_B].rfhssi_para2 = RFPGA0_XB_HSSIPARAMETER2; + + rtlphy->phyreg_def[RF90_PATH_A].rfsw_ctrl = RFPGA0_XAB_SWITCHCONTROL; + rtlphy->phyreg_def[RF90_PATH_B].rfsw_ctrl = RFPGA0_XAB_SWITCHCONTROL; + rtlphy->phyreg_def[RF90_PATH_C].rfsw_ctrl = RFPGA0_XCD_SWITCHCONTROL; + rtlphy->phyreg_def[RF90_PATH_D].rfsw_ctrl = RFPGA0_XCD_SWITCHCONTROL; + + rtlphy->phyreg_def[RF90_PATH_A].rfagc_control1 = ROFDM0_XAAGCCORE1; + rtlphy->phyreg_def[RF90_PATH_B].rfagc_control1 = ROFDM0_XBAGCCORE1; + rtlphy->phyreg_def[RF90_PATH_C].rfagc_control1 = ROFDM0_XCAGCCORE1; + rtlphy->phyreg_def[RF90_PATH_D].rfagc_control1 = ROFDM0_XDAGCCORE1; + + rtlphy->phyreg_def[RF90_PATH_A].rfagc_control2 = ROFDM0_XAAGCCORE2; + rtlphy->phyreg_def[RF90_PATH_B].rfagc_control2 = ROFDM0_XBAGCCORE2; + rtlphy->phyreg_def[RF90_PATH_C].rfagc_control2 = ROFDM0_XCAGCCORE2; + rtlphy->phyreg_def[RF90_PATH_D].rfagc_control2 = ROFDM0_XDAGCCORE2; + + rtlphy->phyreg_def[RF90_PATH_A].rfrxiq_imbal = ROFDM0_XARXIQIMBALANCE; + rtlphy->phyreg_def[RF90_PATH_B].rfrxiq_imbal = ROFDM0_XBRXIQIMBALANCE; + rtlphy->phyreg_def[RF90_PATH_C].rfrxiq_imbal = ROFDM0_XCRXIQIMBANLANCE; + rtlphy->phyreg_def[RF90_PATH_D].rfrxiq_imbal = ROFDM0_XDRXIQIMBALANCE; + + rtlphy->phyreg_def[RF90_PATH_A].rfrx_afe = ROFDM0_XARXAFE; + rtlphy->phyreg_def[RF90_PATH_B].rfrx_afe = ROFDM0_XBRXAFE; + rtlphy->phyreg_def[RF90_PATH_C].rfrx_afe = ROFDM0_XCRXAFE; + rtlphy->phyreg_def[RF90_PATH_D].rfrx_afe = ROFDM0_XDRXAFE; + + rtlphy->phyreg_def[RF90_PATH_A].rftxiq_imbal = ROFDM0_XATXIQIMBALANCE; + rtlphy->phyreg_def[RF90_PATH_B].rftxiq_imbal = ROFDM0_XBTXIQIMBALANCE; + rtlphy->phyreg_def[RF90_PATH_C].rftxiq_imbal = ROFDM0_XCTXIQIMBALANCE; + rtlphy->phyreg_def[RF90_PATH_D].rftxiq_imbal = ROFDM0_XDTXIQIMBALANCE; + + rtlphy->phyreg_def[RF90_PATH_A].rftx_afe = ROFDM0_XATXAFE; + rtlphy->phyreg_def[RF90_PATH_B].rftx_afe = ROFDM0_XBTXAFE; + rtlphy->phyreg_def[RF90_PATH_C].rftx_afe = ROFDM0_XCTXAFE; + rtlphy->phyreg_def[RF90_PATH_D].rftx_afe = ROFDM0_XDTXAFE; + + rtlphy->phyreg_def[RF90_PATH_A].rf_rb = RFPGA0_XA_LSSIREADBACK; + rtlphy->phyreg_def[RF90_PATH_B].rf_rb = RFPGA0_XB_LSSIREADBACK; + rtlphy->phyreg_def[RF90_PATH_C].rf_rb = RFPGA0_XC_LSSIREADBACK; + rtlphy->phyreg_def[RF90_PATH_D].rf_rb = RFPGA0_XD_LSSIREADBACK; + + rtlphy->phyreg_def[RF90_PATH_A].rf_rbpi = TRANSCEIVEA_HSPI_READBACK; + rtlphy->phyreg_def[RF90_PATH_B].rf_rbpi = TRANSCEIVEB_HSPI_READBACK; +} +EXPORT_SYMBOL_GPL(rtl8723_phy_init_bb_rf_reg_def); + +bool rtl8723_phy_set_sw_chnl_cmdarray(struct swchnlcmd *cmdtable, + u32 cmdtableidx, + u32 cmdtablesz, + enum swchnlcmd_id cmdid, + u32 para1, u32 para2, + u32 msdelay) +{ + struct swchnlcmd *pcmd; + + if (cmdtable == NULL) { + RT_ASSERT(false, "cmdtable cannot be NULL.\n"); + return false; + } + + if (cmdtableidx >= cmdtablesz) + return false; + + pcmd = cmdtable + cmdtableidx; + pcmd->cmdid = cmdid; + pcmd->para1 = para1; + pcmd->para2 = para2; + pcmd->msdelay = msdelay; + return true; +} +EXPORT_SYMBOL_GPL(rtl8723_phy_set_sw_chnl_cmdarray); + +void rtl8723_phy_path_a_fill_iqk_matrix(struct ieee80211_hw *hw, + bool iqk_ok, + long result[][8], + u8 final_candidate, + bool btxonly) +{ + u32 oldval_0, x, tx0_a, reg; + long y, tx0_c; + + if (final_candidate == 0xFF) { + return; + } else if (iqk_ok) { + oldval_0 = (rtl_get_bbreg(hw, ROFDM0_XATXIQIMBALANCE, + MASKDWORD) >> 22) & 0x3FF; + x = result[final_candidate][0]; + if ((x & 0x00000200) != 0) + x = x | 0xFFFFFC00; + tx0_a = (x * oldval_0) >> 8; + rtl_set_bbreg(hw, ROFDM0_XATXIQIMBALANCE, 0x3FF, tx0_a); + rtl_set_bbreg(hw, ROFDM0_ECCATHRESHOLD, BIT(31), + ((x * oldval_0 >> 7) & 0x1)); + y = result[final_candidate][1]; + if ((y & 0x00000200) != 0) + y = y | 0xFFFFFC00; + tx0_c = (y * oldval_0) >> 8; + rtl_set_bbreg(hw, ROFDM0_XCTXAFE, 0xF0000000, + ((tx0_c & 0x3C0) >> 6)); + rtl_set_bbreg(hw, ROFDM0_XATXIQIMBALANCE, 0x003F0000, + (tx0_c & 0x3F)); + rtl_set_bbreg(hw, ROFDM0_ECCATHRESHOLD, BIT(29), + ((y * oldval_0 >> 7) & 0x1)); + if (btxonly) + return; + reg = result[final_candidate][2]; + rtl_set_bbreg(hw, ROFDM0_XARXIQIMBALANCE, 0x3FF, reg); + reg = result[final_candidate][3] & 0x3F; + rtl_set_bbreg(hw, ROFDM0_XARXIQIMBALANCE, 0xFC00, reg); + reg = (result[final_candidate][3] >> 6) & 0xF; + rtl_set_bbreg(hw, 0xca0, 0xF0000000, reg); + } +} +EXPORT_SYMBOL_GPL(rtl8723_phy_path_a_fill_iqk_matrix); + +void rtl8723_save_adda_registers(struct ieee80211_hw *hw, u32 *addareg, + u32 *addabackup, u32 registernum) +{ + u32 i; + + for (i = 0; i < registernum; i++) + addabackup[i] = rtl_get_bbreg(hw, addareg[i], MASKDWORD); +} +EXPORT_SYMBOL_GPL(rtl8723_save_adda_registers); + +void rtl8723_phy_save_mac_registers(struct ieee80211_hw *hw, + u32 *macreg, u32 *macbackup) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 i; + + for (i = 0; i < (IQK_MAC_REG_NUM - 1); i++) + macbackup[i] = rtl_read_byte(rtlpriv, macreg[i]); + macbackup[i] = rtl_read_dword(rtlpriv, macreg[i]); +} +EXPORT_SYMBOL_GPL(rtl8723_phy_save_mac_registers); + +void rtl8723_phy_reload_adda_registers(struct ieee80211_hw *hw, + u32 *addareg, u32 *addabackup, + u32 regiesternum) +{ + u32 i; + + for (i = 0; i < regiesternum; i++) + rtl_set_bbreg(hw, addareg[i], MASKDWORD, addabackup[i]); +} +EXPORT_SYMBOL_GPL(rtl8723_phy_reload_adda_registers); + +void rtl8723_phy_reload_mac_registers(struct ieee80211_hw *hw, + u32 *macreg, u32 *macbackup) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 i; + + for (i = 0; i < (IQK_MAC_REG_NUM - 1); i++) + rtl_write_byte(rtlpriv, macreg[i], (u8) macbackup[i]); + rtl_write_dword(rtlpriv, macreg[i], macbackup[i]); +} +EXPORT_SYMBOL_GPL(rtl8723_phy_reload_mac_registers); + +void rtl8723_phy_path_adda_on(struct ieee80211_hw *hw, u32 *addareg, + bool is_patha_on, bool is2t) +{ + u32 pathon; + u32 i; + + pathon = is_patha_on ? 0x04db25a4 : 0x0b1b25a4; + if (!is2t) { + pathon = 0x0bdb25a0; + rtl_set_bbreg(hw, addareg[0], MASKDWORD, 0x0b1b25a0); + } else { + rtl_set_bbreg(hw, addareg[0], MASKDWORD, pathon); + } + + for (i = 1; i < IQK_ADDA_REG_NUM; i++) + rtl_set_bbreg(hw, addareg[i], MASKDWORD, pathon); +} +EXPORT_SYMBOL_GPL(rtl8723_phy_path_adda_on); + +void rtl8723_phy_mac_setting_calibration(struct ieee80211_hw *hw, + u32 *macreg, u32 *macbackup) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 i = 0; + + rtl_write_byte(rtlpriv, macreg[i], 0x3F); + + for (i = 1; i < (IQK_MAC_REG_NUM - 1); i++) + rtl_write_byte(rtlpriv, macreg[i], + (u8) (macbackup[i] & (~BIT(3)))); + rtl_write_byte(rtlpriv, macreg[i], (u8) (macbackup[i] & (~BIT(5)))); +} +EXPORT_SYMBOL_GPL(rtl8723_phy_mac_setting_calibration); + +void rtl8723_phy_path_a_standby(struct ieee80211_hw *hw) +{ + rtl_set_bbreg(hw, 0xe28, MASKDWORD, 0x0); + rtl_set_bbreg(hw, 0x840, MASKDWORD, 0x00010000); + rtl_set_bbreg(hw, 0xe28, MASKDWORD, 0x80800000); +} +EXPORT_SYMBOL_GPL(rtl8723_phy_path_a_standby); + +void rtl8723_phy_pi_mode_switch(struct ieee80211_hw *hw, bool pi_mode) +{ + u32 mode; + + mode = pi_mode ? 0x01000100 : 0x01000000; + rtl_set_bbreg(hw, 0x820, MASKDWORD, mode); + rtl_set_bbreg(hw, 0x828, MASKDWORD, mode); +} +EXPORT_SYMBOL_GPL(rtl8723_phy_pi_mode_switch); --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/rtl8723com/phy_common.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/rtl8723com/phy_common.h @@ -0,0 +1,89 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2014 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __PHY_COMMON__ +#define __PHY_COMMON__ + +#define RT_CANNOT_IO(hw) false + +enum swchnlcmd_id { + CMDID_END, + CMDID_SET_TXPOWEROWER_LEVEL, + CMDID_BBREGWRITE10, + CMDID_WRITEPORT_ULONG, + CMDID_WRITEPORT_USHORT, + CMDID_WRITEPORT_UCHAR, + CMDID_RF_WRITEREG, +}; + +struct swchnlcmd { + enum swchnlcmd_id cmdid; + u32 para1; + u32 para2; + u32 msdelay; +}; + +u32 rtl8723_phy_query_bb_reg(struct ieee80211_hw *hw, + u32 regaddr, u32 bitmask); +void rtl8723_phy_set_bb_reg(struct ieee80211_hw *hw, u32 regaddr, + u32 bitmask, u32 data); +u32 rtl8723_phy_calculate_bit_shift(u32 bitmask); +u32 rtl8723_phy_rf_serial_read(struct ieee80211_hw *hw, + enum radio_path rfpath, u32 offset); +void rtl8723_phy_rf_serial_write(struct ieee80211_hw *hw, + enum radio_path rfpath, + u32 offset, u32 data); +long rtl8723_phy_txpwr_idx_to_dbm(struct ieee80211_hw *hw, + enum wireless_mode wirelessmode, + u8 txpwridx); +void rtl8723_phy_init_bb_rf_reg_def(struct ieee80211_hw *hw); +bool rtl8723_phy_set_sw_chnl_cmdarray(struct swchnlcmd *cmdtable, + u32 cmdtableidx, + u32 cmdtablesz, + enum swchnlcmd_id cmdid, + u32 para1, u32 para2, + u32 msdelay); +void rtl8723_phy_path_a_fill_iqk_matrix(struct ieee80211_hw *hw, + bool iqk_ok, + long result[][8], + u8 final_candidate, + bool btxonly); +void rtl8723_save_adda_registers(struct ieee80211_hw *hw, u32 *addareg, + u32 *addabackup, u32 registernum); +void rtl8723_phy_save_mac_registers(struct ieee80211_hw *hw, + u32 *macreg, u32 *macbackup); +void rtl8723_phy_reload_adda_registers(struct ieee80211_hw *hw, + u32 *addareg, u32 *addabackup, + u32 regiesternum); +void rtl8723_phy_reload_mac_registers(struct ieee80211_hw *hw, + u32 *macreg, u32 *macbackup); +void rtl8723_phy_path_adda_on(struct ieee80211_hw *hw, u32 *addareg, + bool is_patha_on, bool is2t); +void rtl8723_phy_mac_setting_calibration(struct ieee80211_hw *hw, + u32 *macreg, u32 *macbackup); +void rtl8723_phy_path_a_standby(struct ieee80211_hw *hw); +void rtl8723_phy_pi_mode_switch(struct ieee80211_hw *hw, bool pi_mode); + +#endif --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/stats.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/stats.c @@ -176,6 +176,7 @@ struct rtl_sta_info *drv_priv = NULL; struct ieee80211_sta *sta = NULL; long undec_sm_pwdb; + long undec_sm_cck; rcu_read_lock(); if (rtlpriv->mac80211.opmode != NL80211_IFTYPE_STATION) @@ -185,12 +186,16 @@ if (sta) { drv_priv = (struct rtl_sta_info *) sta->drv_priv; undec_sm_pwdb = drv_priv->rssi_stat.undec_sm_pwdb; + undec_sm_cck = drv_priv->rssi_stat.undec_sm_cck; } else { undec_sm_pwdb = rtlpriv->dm.undec_sm_pwdb; + undec_sm_cck = rtlpriv->dm.undec_sm_cck; } if (undec_sm_pwdb < 0) undec_sm_pwdb = pstatus->rx_pwdb_all; + if (undec_sm_cck < 0) + undec_sm_cck = pstatus->rx_pwdb_all; if (pstatus->rx_pwdb_all > (u32) undec_sm_pwdb) { undec_sm_pwdb = (((undec_sm_pwdb) * (RX_SMOOTH_FACTOR - 1)) + @@ -200,6 +205,15 @@ undec_sm_pwdb = (((undec_sm_pwdb) * (RX_SMOOTH_FACTOR - 1)) + (pstatus->rx_pwdb_all)) / (RX_SMOOTH_FACTOR); } + if (pstatus->rx_pwdb_all > (u32) undec_sm_cck) { + undec_sm_cck = (((undec_sm_pwdb) * + (RX_SMOOTH_FACTOR - 1)) + + (pstatus->rx_pwdb_all)) / (RX_SMOOTH_FACTOR); + undec_sm_cck = undec_sm_cck + 1; + } else { + undec_sm_pwdb = (((undec_sm_cck) * (RX_SMOOTH_FACTOR - 1)) + + (pstatus->rx_pwdb_all)) / (RX_SMOOTH_FACTOR); + } if (sta) { drv_priv->rssi_stat.undec_sm_pwdb = undec_sm_pwdb; --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/usb.c +++ linux-3.13.0/drivers/net/wireless/rtlwifi/usb.c @@ -410,7 +410,7 @@ mac->current_ampdu_factor = 3; /* QOS */ - rtlusb->acm_method = eAcmWay2_SW; + rtlusb->acm_method = EACMWAY2_SW; /* IRQ */ /* HIMR - turn all on */ @@ -483,6 +483,8 @@ if (unicast) rtlpriv->link_info.num_rx_inperiod++; } + /* static bcn for roaming */ + rtl_beacon_statistic(hw, skb); } } @@ -553,7 +555,7 @@ } } -#define __RX_SKB_MAX_QUEUED 32 +#define __RX_SKB_MAX_QUEUED 64 static void _rtl_rx_work(unsigned long param) { --- linux-3.13.0.orig/drivers/net/wireless/rtlwifi/wifi.h +++ linux-3.13.0/drivers/net/wireless/rtlwifi/wifi.h @@ -49,6 +49,7 @@ #define IQK_ADDA_REG_NUM 16 #define IQK_MAC_REG_NUM 4 +#define IQK_THRESHOLD 8 #define MAX_KEY_LEN 61 #define KEY_BUF_SIZE 5 @@ -96,6 +97,7 @@ #define CHANNEL_MAX_NUMBER_2G 14 #define AVG_THERMAL_NUM 8 #define AVG_THERMAL_NUM_88E 4 +#define AVG_THERMAL_NUM_8723BE 4 #define MAX_TID_COUNT 9 /* for early mode */ @@ -107,6 +109,19 @@ #define MAX_CHNL_GROUP_24G 6 #define MAX_CHNL_GROUP_5G 14 +#define TX_PWR_BY_RATE_NUM_BAND 2 +#define TX_PWR_BY_RATE_NUM_RF 4 +#define TX_PWR_BY_RATE_NUM_SECTION 12 +#define MAX_BASE_NUM_IN_PHY_REG_PG_24G 6 +#define MAX_BASE_NUM_IN_PHY_REG_PG_5G 5 + +enum rf_tx_num { + RF_1TX = 0, + RF_2TX, + RF_MAX_TX_NUM, + RF_TX_NUM_NONIMPLEMENT, +}; + struct txpower_info_2g { u8 index_cck_base[MAX_RF_PATH][MAX_CHNL_GROUP_24G]; u8 index_bw40_base[MAX_RF_PATH][MAX_CHNL_GROUP_24G]; @@ -115,6 +130,8 @@ u8 ofdm_diff[MAX_RF_PATH][MAX_TX_COUNT]; u8 bw20_diff[MAX_RF_PATH][MAX_TX_COUNT]; u8 bw40_diff[MAX_RF_PATH][MAX_TX_COUNT]; + u8 bw80_diff[MAX_RF_PATH][MAX_TX_COUNT]; + u8 bw160_diff[MAX_RF_PATH][MAX_TX_COUNT]; }; struct txpower_info_5g { @@ -125,6 +142,15 @@ u8 bw40_diff[MAX_RF_PATH][MAX_TX_COUNT]; }; +enum rate_section { + CCK = 0, + OFDM, + HT_MCS0_MCS7, + HT_MCS8_MCS15, + VHT_1SSMCS0_1SSMCS9, + VHT_2SSMCS0_2SSMCS9, +}; + enum intf_type { INTF_PCI = 0, INTF_USB = 1, @@ -158,6 +184,7 @@ HARDWARE_TYPE_RTL8192DU, HARDWARE_TYPE_RTL8723AE, HARDWARE_TYPE_RTL8723U, + HARDWARE_TYPE_RTL8723BE, HARDWARE_TYPE_RTL8188EE, /* keep it last */ @@ -195,6 +222,12 @@ _pdesc->rxmcs == DESC92_RATE5_5M || \ _pdesc->rxmcs == DESC92_RATE11M) +#define RTL8723E_RX_HAL_IS_CCK_RATE(rxmcs) \ + ((rxmcs) == DESC92_RATE1M || \ + (rxmcs) == DESC92_RATE2M || \ + (rxmcs) == DESC92_RATE5_5M || \ + (rxmcs) == DESC92_RATE11M) + enum scan_operation_backup_opt { SCAN_OPT_BACKUP = 0, SCAN_OPT_RESTORE, @@ -330,6 +363,7 @@ HAL_DEF_WOWLAN, HW_VAR_MRC, + HW_VAR_KEEP_ALIVE, HW_VAR_MGT_FILTER, HW_VAR_CTRL_FILTER, @@ -348,34 +382,34 @@ RT_CID_8187_HW_LED = 3, RT_CID_8187_NETGEAR = 4, RT_CID_WHQL = 5, - RT_CID_819x_CAMEO = 6, - RT_CID_819x_RUNTOP = 7, - RT_CID_819x_Senao = 8, + RT_CID_819X_CAMEO = 6, + RT_CID_819X_RUNTOP = 7, + RT_CID_819X_SENAO = 8, RT_CID_TOSHIBA = 9, - RT_CID_819x_Netcore = 10, - RT_CID_Nettronix = 11, + RT_CID_819X_NETCORE = 10, + RT_CID_NETTRONIX = 11, RT_CID_DLINK = 12, RT_CID_PRONET = 13, RT_CID_COREGA = 14, - RT_CID_819x_ALPHA = 15, - RT_CID_819x_Sitecom = 16, + RT_CID_819X_ALPHA = 15, + RT_CID_819X_SITECOM = 16, RT_CID_CCX = 17, - RT_CID_819x_Lenovo = 18, - RT_CID_819x_QMI = 19, - RT_CID_819x_Edimax_Belkin = 20, - RT_CID_819x_Sercomm_Belkin = 21, - RT_CID_819x_CAMEO1 = 22, - RT_CID_819x_MSI = 23, - RT_CID_819x_Acer = 24, - RT_CID_819x_HP = 27, - RT_CID_819x_CLEVO = 28, - RT_CID_819x_Arcadyan_Belkin = 29, - RT_CID_819x_SAMSUNG = 30, - RT_CID_819x_WNC_COREGA = 31, - RT_CID_819x_Foxcoon = 32, - RT_CID_819x_DELL = 33, - RT_CID_819x_PRONETS = 34, - RT_CID_819x_Edimax_ASUS = 35, + RT_CID_819X_LENOVO = 18, + RT_CID_819X_QMI = 19, + RT_CID_819X_EDIMAX_BELKIN = 20, + RT_CID_819X_SERCOMM_BELKIN = 21, + RT_CID_819X_CAMEO1 = 22, + RT_CID_819X_MSI = 23, + RT_CID_819X_ACER = 24, + RT_CID_819X_HP = 27, + RT_CID_819X_CLEVO = 28, + RT_CID_819X_ARCADYAN_BELKIN = 29, + RT_CID_819X_SAMSUNG = 30, + RT_CID_819X_WNC_COREGA = 31, + RT_CID_819X_FOXCOON = 32, + RT_CID_819X_DELL = 33, + RT_CID_819X_PRONETS = 34, + RT_CID_819X_EDIMAX_ASUS = 35, RT_CID_NETGEAR = 36, RT_CID_PLANEX = 37, RT_CID_CC_C = 38, @@ -608,7 +642,7 @@ enum acm_method { eAcmWay0_SwAndHw = 0, eAcmWay1_HW = 1, - eAcmWay2_SW = 2, + EACMWAY2_SW = 2, }; enum macphy_mode { @@ -817,9 +851,9 @@ u32 high_rssi_thresh_for_ra; u32 high2low_rssi_thresh_for_ra; u8 low2high_rssi_thresh_for_ra40m; - u32 low_rssi_thresh_for_ra40M; + u32 low_rssi_thresh_for_ra40m; u8 low2high_rssi_thresh_for_ra20m; - u32 low_rssi_thresh_for_ra20M; + u32 low_rssi_thresh_for_ra20m; u32 upper_rssi_threshold_ratr; u32 middleupper_rssi_threshold_ratr; u32 middle_rssi_threshold_ratr; @@ -986,6 +1020,13 @@ u8 cck_high_power; /* MAX_PG_GROUP groups of pwr diff by rates */ u32 mcs_offset[MAX_PG_GROUP][16]; + u32 tx_power_by_rate_offset[TX_PWR_BY_RATE_NUM_BAND] + [TX_PWR_BY_RATE_NUM_RF] + [TX_PWR_BY_RATE_NUM_RF] + [TX_PWR_BY_RATE_NUM_SECTION]; + u8 txpwr_by_rate_base_24g[TX_PWR_BY_RATE_NUM_RF] + [TX_PWR_BY_RATE_NUM_RF] + [MAX_BASE_NUM_IN_PHY_REG_PG_24G]; u8 default_initialgain[4]; /* the current Tx power level */ @@ -1033,6 +1074,7 @@ struct rssi_sta { long undec_sm_pwdb; + long undec_sm_cck; }; struct rtl_tid_data { @@ -1212,6 +1254,7 @@ bool being_init_adapter; bool bbrf_ready; bool mac_func_enable; + bool pre_edcca_enable; struct bt_coexist_8723 hal_coex_8723; enum intf_type interface; @@ -1320,11 +1363,23 @@ bool becomelinked; }; +struct dm_phy_dbg_info { + char rx_snrdb[4]; + u64 num_qry_phy_status; + u64 num_qry_phy_status_cck; + u64 num_qry_phy_status_ofdm; + u16 num_qry_beacon_pkt; + u16 num_non_be_pkt; + s32 rx_evm[4]; +}; + struct rtl_dm { /*PHY status for Dynamic Management */ long entry_min_undec_sm_pwdb; + long undec_sm_cck; long undec_sm_pwdb; /*out dm */ long entry_max_undec_sm_pwdb; + s32 ofdm_pkt_cnt; bool dm_initialgain_enable; bool dynamic_txpower_enable; bool current_turbo_edca; @@ -1339,6 +1394,7 @@ bool inform_fw_driverctrldm; bool current_mrc_switch; u8 txpowercount; + u8 powerindex_backup[6]; u8 thermalvalue_rxgain; u8 thermalvalue_iqk; @@ -1350,20 +1406,36 @@ bool done_txpower; u8 dynamic_txhighpower_lvl; /*Tx high power level */ u8 dm_flag; /*Indicate each dynamic mechanism's status. */ + u8 dm_flag_tmp; u8 dm_type; + u8 dm_rssi_sel; u8 txpower_track_control; bool interrupt_migration; bool disable_tx_int; char ofdm_index[2]; char cck_index; - char delta_power_index; - char delta_power_index_last; - char power_index_offset; + char delta_power_index[MAX_RF_PATH]; + char delta_power_index_last[MAX_RF_PATH]; + char power_index_offset[MAX_RF_PATH]; + + bool one_entry_only; + struct dm_phy_dbg_info dbginfo; + + /* Dynamic ATC switch */ + bool atc_status; + bool large_cfo_hit; + bool is_freeze; + int cfo_tail[2]; + int cfo_ave_pre; + int crystal_cap; + u8 cfo_threshold; + u32 packet_count; + u32 packet_count_pre; /*88e tx power tracking*/ u8 swing_idx_ofdm[2]; u8 swing_idx_ofdm_cur; - u8 swing_idx_ofdm_base; + u8 swing_idx_ofdm_base[MAX_RF_PATH]; bool swing_flag_ofdm; u8 swing_idx_cck; u8 swing_idx_cck_cur; @@ -1416,12 +1488,14 @@ u8 eeprom_tssi_5g[3][2]; /* for 5GL/5GM/5GH band. */ u8 eeprom_pwrlimit_ht20[CHANNEL_GROUP_MAX]; u8 eeprom_pwrlimit_ht40[CHANNEL_GROUP_MAX]; - u8 eeprom_chnlarea_txpwr_cck[2][CHANNEL_GROUP_MAX_2G]; - u8 eeprom_chnlarea_txpwr_ht40_1s[2][CHANNEL_GROUP_MAX]; - u8 eprom_chnl_txpwr_ht40_2sdf[2][CHANNEL_GROUP_MAX]; + u8 eeprom_chnlarea_txpwr_cck[MAX_RF_PATH][CHANNEL_GROUP_MAX_2G]; + u8 eeprom_chnlarea_txpwr_ht40_1s[MAX_RF_PATH][CHANNEL_GROUP_MAX]; + u8 eprom_chnl_txpwr_ht40_2sdf[MAX_RF_PATH][CHANNEL_GROUP_MAX]; u8 txpwrlevel_cck[2][CHANNEL_MAX_NUMBER_2G]; - u8 txpwrlevel_ht40_1s[2][CHANNEL_MAX_NUMBER]; /*For HT 40MHZ pwr */ - u8 txpwrlevel_ht40_2s[2][CHANNEL_MAX_NUMBER]; /*For HT 40MHZ pwr */ + /* For HT 40MHZ pwr */ + u8 txpwrlevel_ht40_1s[MAX_RF_PATH][CHANNEL_MAX_NUMBER]; + u8 txpwrlevel_ht40_2s[MAX_RF_PATH][CHANNEL_MAX_NUMBER]; + u8 txpwr_ht40diff[MAX_RF_PATH][MAX_TX_COUNT];/*BW40_24G_Diff*/ u8 internal_pa_5g[2]; /* pathA / pathB */ u8 eeprom_c9; @@ -1638,6 +1712,8 @@ bool btx_enable_sw_calc_duration; }; +struct rtl92c_firmware_header; + struct rtl_hal_ops { int (*init_sw_vars) (struct ieee80211_hw *hw); void (*deinit_sw_vars) (struct ieee80211_hw *hw); @@ -1694,6 +1770,8 @@ enum led_ctl_mode ledaction); void (*set_desc) (u8 *pdesc, bool istx, u8 desc_name, u8 *val); u32 (*get_desc) (u8 *pdesc, bool istx, u8 desc_name); + bool (*is_tx_desc_closed) (struct ieee80211_hw *hw, + u8 hw_queue, u16 index); void (*tx_polling) (struct ieee80211_hw *hw, u8 hw_queue); void (*enable_hw_sec) (struct ieee80211_hw *hw); void (*set_key) (struct ieee80211_hw *hw, u32 key_index, @@ -1732,6 +1810,8 @@ void (*bt_coex_off_before_lps) (struct ieee80211_hw *hw); void (*fill_h2c_cmd) (struct ieee80211_hw *hw, u8 element_id, u32 cmd_len, u8 *p_cmdbuffer); + bool (*get_btc_status) (void); + bool (*is_fw_header) (struct rtl92c_firmware_header *hdr); }; struct rtl_intf_ops { @@ -1804,6 +1884,7 @@ bool write_readback; char *name; char *fw_name; + char *alt_fw_name; struct rtl_hal_ops *ops; struct rtl_mod_params *mod_params; struct rtl_hal_usbint_cfg *usb_interface_cfg; @@ -1908,6 +1989,7 @@ u8 cur_ccasate; u8 pre_rfstate; u8 cur_rfstate; + u8 initialize; long rssi_val_min; }; @@ -1948,6 +2030,7 @@ u8 pre_ccastate; u8 cur_ccasate; u8 large_fa_hit; + u8 dig_dynamic_min; u8 forbidden_igi; u8 dig_state; u8 dig_highpwrstate; @@ -1964,6 +2047,7 @@ char backoffval_range_min; u8 dig_min_0; u8 dig_min_1; + u8 bt30_cur_igi; bool media_connect_0; bool media_connect_1; @@ -1978,6 +2062,96 @@ spinlock_t glb_list_lock; }; +struct rtl_btc_info { + u8 bt_type; + u8 btcoexist; + u8 ant_num; +}; + +struct bt_coexist_info { + struct rtl_btc_ops *btc_ops; + struct rtl_btc_info btc_info; + /* EEPROM BT info. */ + u8 eeprom_bt_coexist; + u8 eeprom_bt_type; + u8 eeprom_bt_ant_num; + u8 eeprom_bt_ant_isol; + u8 eeprom_bt_radio_shared; + + u8 bt_coexistence; + u8 bt_ant_num; + u8 bt_coexist_type; + u8 bt_state; + u8 bt_cur_state; /* 0:on, 1:off */ + u8 bt_ant_isolation; /* 0:good, 1:bad */ + u8 bt_pape_ctrl; /* 0:SW, 1:SW/HW dynamic */ + u8 bt_service; + u8 bt_radio_shared_type; + u8 bt_rfreg_origin_1e; + u8 bt_rfreg_origin_1f; + u8 bt_rssi_state; + u32 ratio_tx; + u32 ratio_pri; + u32 bt_edca_ul; + u32 bt_edca_dl; + + bool init_set; + bool bt_busy_traffic; + bool bt_traffic_mode_set; + bool bt_non_traffic_mode_set; + + bool fw_coexist_all_off; + bool sw_coexist_all_off; + bool hw_coexist_all_off; + u32 cstate; + u32 previous_state; + u32 cstate_h; + u32 previous_state_h; + + u8 bt_pre_rssi_state; + u8 bt_pre_rssi_state1; + + u8 reg_bt_iso; + u8 reg_bt_sco; + bool balance_on; + u8 bt_active_zero_cnt; + bool cur_bt_disabled; + bool pre_bt_disabled; + + u8 bt_profile_case; + u8 bt_profile_action; + bool bt_busy; + bool hold_for_bt_operation; + u8 lps_counter; +}; + +struct rtl_btc_ops { + void (*btc_init_variables) (struct rtl_priv *rtlpriv); + void (*btc_init_hal_vars) (struct rtl_priv *rtlpriv); + void (*btc_init_hw_config) (struct rtl_priv *rtlpriv); + void (*btc_ips_notify) (struct rtl_priv *rtlpriv, u8 type); + void (*btc_scan_notify) (struct rtl_priv *rtlpriv, u8 scantype); + void (*btc_connect_notify) (struct rtl_priv *rtlpriv, u8 action); + void (*btc_mediastatus_notify) (struct rtl_priv *rtlpriv, + enum _RT_MEDIA_STATUS mstatus); + void (*btc_periodical) (struct rtl_priv *rtlpriv); + void (*btc_halt_notify) (void); + void (*btc_btinfo_notify) (struct rtl_priv *rtlpriv, + u8 *tmp_buf, u8 length); + bool (*btc_is_limited_dig) (struct rtl_priv *rtlpriv); + bool (*btc_is_disable_edca_turbo) (struct rtl_priv *rtlpriv); + bool (*btc_is_bt_disabled) (struct rtl_priv *rtlpriv); +}; + +struct proxim { + bool proxim_on; + + void *proximity_priv; + int (*proxim_rx)(struct ieee80211_hw *hw, struct rtl_stats *status, + struct sk_buff *skb); + u8 (*proxim_get_var)(struct ieee80211_hw *hw, u8 type); +}; + struct rtl_priv { struct ieee80211_hw *hw; struct completion firmware_loading_complete; @@ -2028,25 +2202,32 @@ struct dig_t dm_digtable; struct ps_t dm_pstable; - /* section shared by individual drivers */ - union { - struct { /* data buffer pointer for USB reads */ - __le32 *usb_data; - int usb_data_index; - bool initialized; - }; - struct { /* section for 8723ae */ - bool reg_init; /* true if regs saved */ - u32 reg_874; - u32 reg_c70; - u32 reg_85c; - u32 reg_a74; - bool bt_operation_on; - }; - }; + u32 reg_874; + u32 reg_c70; + u32 reg_85c; + u32 reg_a74; + bool reg_init; /* true if regs saved */ + bool bt_operation_on; + __le32 *usb_data; + int usb_data_index; + bool initialized; bool enter_ps; /* true when entering PS */ u8 rate_mask[5]; + /* intel Proximity, should be alloc mem + * in intel Proximity module and can only + * be used in intel Proximity mode + */ + struct proxim proximity; + + /*for bt coexist use*/ + struct bt_coexist_info btcoexist; + + /* separate 92ee from other ICs, + * 92ee use new trx flow. + */ + bool use_new_trx_flow; + /*This must be the last item so that it points to the data allocated beyond this structure like: @@ -2078,6 +2259,9 @@ BT_CSR_BC8 = 4, BT_RTL8756 = 5, BT_RTL8723A = 6, + BT_RTL8821 = 7, + BT_RTL8723B = 8, + BT_RTL8192E = 9, }; enum bt_cur_state { @@ -2103,62 +2287,6 @@ BT_RADIO_INDIVIDUAL = 1, }; -struct bt_coexist_info { - - /* EEPROM BT info. */ - u8 eeprom_bt_coexist; - u8 eeprom_bt_type; - u8 eeprom_bt_ant_num; - u8 eeprom_bt_ant_isol; - u8 eeprom_bt_radio_shared; - - u8 bt_coexistence; - u8 bt_ant_num; - u8 bt_coexist_type; - u8 bt_state; - u8 bt_cur_state; /* 0:on, 1:off */ - u8 bt_ant_isolation; /* 0:good, 1:bad */ - u8 bt_pape_ctrl; /* 0:SW, 1:SW/HW dynamic */ - u8 bt_service; - u8 bt_radio_shared_type; - u8 bt_rfreg_origin_1e; - u8 bt_rfreg_origin_1f; - u8 bt_rssi_state; - u32 ratio_tx; - u32 ratio_pri; - u32 bt_edca_ul; - u32 bt_edca_dl; - - bool init_set; - bool bt_busy_traffic; - bool bt_traffic_mode_set; - bool bt_non_traffic_mode_set; - - bool fw_coexist_all_off; - bool sw_coexist_all_off; - bool hw_coexist_all_off; - u32 cstate; - u32 previous_state; - u32 cstate_h; - u32 previous_state_h; - - u8 bt_pre_rssi_state; - u8 bt_pre_rssi_state1; - - u8 reg_bt_iso; - u8 reg_bt_sco; - bool balance_on; - u8 bt_active_zero_cnt; - bool cur_bt_disabled; - bool pre_bt_disabled; - - u8 bt_profile_case; - u8 bt_profile_action; - bool bt_busy; - bool hold_for_bt_operation; - u8 lps_counter; -}; - /**************************************** mem access macro define start --- linux-3.13.0.orig/drivers/net/xen-netback/common.h +++ linux-3.13.0/drivers/net/xen-netback/common.h @@ -113,6 +113,11 @@ domid_t domid; unsigned int handle; + /* Is this interface disabled? True when backend discovers + * frontend is rogue. + */ + bool disabled; + /* Use NAPI for guest TX */ struct napi_struct napi; /* When feature-split-event-channels = 0, tx_irq = rx_irq. */ --- linux-3.13.0.orig/drivers/net/xen-netback/interface.c +++ linux-3.13.0/drivers/net/xen-netback/interface.c @@ -67,6 +67,15 @@ struct xenvif *vif = container_of(napi, struct xenvif, napi); int work_done; + /* This vif is rogue, we pretend we've there is nothing to do + * for this vif to deschedule it from NAPI. But this interface + * will be turned off in thread context later. + */ + if (unlikely(vif->disabled)) { + napi_complete(napi); + return 0; + } + work_done = xenvif_tx_action(vif, budget); if (work_done < budget) { @@ -323,6 +332,8 @@ vif->ip_csum = 1; vif->dev = dev; + vif->disabled = false; + vif->credit_bytes = vif->remaining_credit = ~0UL; vif->credit_usec = 0UL; init_timer(&vif->credit_timeout); --- linux-3.13.0.orig/drivers/net/xen-netback/netback.c +++ linux-3.13.0/drivers/net/xen-netback/netback.c @@ -203,8 +203,8 @@ * into multiple copies tend to give large frags their * own buffers as before. */ - if ((offset + size > MAX_BUFFER_OFFSET) && - (size <= MAX_BUFFER_OFFSET) && offset && !head) + BUG_ON(size > MAX_BUFFER_OFFSET); + if ((offset + size > MAX_BUFFER_OFFSET) && offset && !head) return true; return false; @@ -338,7 +338,7 @@ struct gnttab_copy *copy_gop; struct xenvif_rx_meta *meta; unsigned long bytes; - int gso_type; + int gso_type = XEN_NETIF_GSO_TYPE_NONE; /* Data must not cross a page boundary. */ BUG_ON(size + offset > PAGE_SIZE<gso_type & SKB_GSO_TCPV4) - gso_type = XEN_NETIF_GSO_TYPE_TCPV4; - else if (skb_shinfo(skb)->gso_type & SKB_GSO_TCPV6) - gso_type = XEN_NETIF_GSO_TYPE_TCPV6; - else - gso_type = XEN_NETIF_GSO_TYPE_NONE; + if (skb_is_gso(skb)) { + if (skb_shinfo(skb)->gso_type & SKB_GSO_TCPV4) + gso_type = XEN_NETIF_GSO_TYPE_TCPV4; + else if (skb_shinfo(skb)->gso_type & SKB_GSO_TCPV6) + gso_type = XEN_NETIF_GSO_TYPE_TCPV6; + } if (*head && ((1 << gso_type) & vif->gso_mask)) vif->rx.req_cons++; @@ -436,19 +436,15 @@ int head = 1; int old_meta_prod; int gso_type; - int gso_size; old_meta_prod = npo->meta_prod; - if (skb_shinfo(skb)->gso_type & SKB_GSO_TCPV4) { - gso_type = XEN_NETIF_GSO_TYPE_TCPV4; - gso_size = skb_shinfo(skb)->gso_size; - } else if (skb_shinfo(skb)->gso_type & SKB_GSO_TCPV6) { - gso_type = XEN_NETIF_GSO_TYPE_TCPV6; - gso_size = skb_shinfo(skb)->gso_size; - } else { - gso_type = XEN_NETIF_GSO_TYPE_NONE; - gso_size = 0; + gso_type = XEN_NETIF_GSO_TYPE_NONE; + if (skb_is_gso(skb)) { + if (skb_shinfo(skb)->gso_type & SKB_GSO_TCPV4) + gso_type = XEN_NETIF_GSO_TYPE_TCPV4; + else if (skb_shinfo(skb)->gso_type & SKB_GSO_TCPV6) + gso_type = XEN_NETIF_GSO_TYPE_TCPV6; } /* Set up a GSO prefix descriptor, if necessary */ @@ -456,7 +452,7 @@ req = RING_GET_REQUEST(&vif->rx, vif->rx.req_cons++); meta = npo->meta + npo->meta_prod++; meta->gso_type = gso_type; - meta->gso_size = gso_size; + meta->gso_size = skb_shinfo(skb)->gso_size; meta->size = 0; meta->id = req->id; } @@ -466,7 +462,7 @@ if ((1 << gso_type) & vif->gso_mask) { meta->gso_type = gso_type; - meta->gso_size = gso_size; + meta->gso_size = skb_shinfo(skb)->gso_size; } else { meta->gso_type = XEN_NETIF_GSO_TYPE_NONE; meta->gso_size = 0; @@ -756,7 +752,8 @@ static void xenvif_fatal_tx_err(struct xenvif *vif) { netdev_err(vif->dev, "fatal error; disabling device\n"); - xenvif_carrier_off(vif); + vif->disabled = true; + xenvif_kick_thread(vif); } static int xenvif_count_requests(struct xenvif *vif, @@ -1483,7 +1480,7 @@ vif->tx.sring->req_prod, vif->tx.req_cons, XEN_NETIF_TX_RING_SIZE); xenvif_fatal_tx_err(vif); - continue; + break; } work_to_do = RING_HAS_UNCONSUMED_REQUESTS(&vif->tx); @@ -1877,7 +1874,18 @@ while (!kthread_should_stop()) { wait_event_interruptible(vif->wq, rx_work_todo(vif) || + vif->disabled || kthread_should_stop()); + + /* This frontend is found to be rogue, disable it in + * kthread context. Currently this is only set when + * netback finds out frontend sends malformed packet, + * but we cannot disable the interface in softirq + * context so we defer it here. + */ + if (unlikely(vif->disabled && netif_carrier_ok(vif->dev))) + xenvif_carrier_off(vif); + if (kthread_should_stop()) break; --- linux-3.13.0.orig/drivers/net/xen-netfront.c +++ linux-3.13.0/drivers/net/xen-netfront.c @@ -117,6 +117,7 @@ } tx_skbs[NET_TX_RING_SIZE]; grant_ref_t gref_tx_head; grant_ref_t grant_tx_ref[NET_TX_RING_SIZE]; + struct page *grant_tx_page[NET_TX_RING_SIZE]; unsigned tx_skb_freelist; spinlock_t rx_lock ____cacheline_aligned_in_smp; @@ -396,6 +397,7 @@ gnttab_release_grant_reference( &np->gref_tx_head, np->grant_tx_ref[id]); np->grant_tx_ref[id] = GRANT_INVALID_REF; + np->grant_tx_page[id] = NULL; add_id_to_freelist(&np->tx_skb_freelist, np->tx_skbs, id); dev_kfree_skb_irq(skb); } @@ -452,6 +454,7 @@ gnttab_grant_foreign_access_ref(ref, np->xbdev->otherend_id, mfn, GNTMAP_readonly); + np->grant_tx_page[id] = virt_to_page(data); tx->gref = np->grant_tx_ref[id] = ref; tx->offset = offset; tx->size = len; @@ -497,6 +500,7 @@ np->xbdev->otherend_id, mfn, GNTMAP_readonly); + np->grant_tx_page[id] = page; tx->gref = np->grant_tx_ref[id] = ref; tx->offset = offset; tx->size = bytes; @@ -596,6 +600,7 @@ mfn = virt_to_mfn(data); gnttab_grant_foreign_access_ref( ref, np->xbdev->otherend_id, mfn, GNTMAP_readonly); + np->grant_tx_page[id] = virt_to_page(data); tx->gref = np->grant_tx_ref[id] = ref; tx->offset = offset; tx->size = len; @@ -1122,10 +1127,11 @@ continue; skb = np->tx_skbs[i].skb; - gnttab_end_foreign_access_ref(np->grant_tx_ref[i], - GNTMAP_readonly); - gnttab_release_grant_reference(&np->gref_tx_head, - np->grant_tx_ref[i]); + get_page(np->grant_tx_page[i]); + gnttab_end_foreign_access(np->grant_tx_ref[i], + GNTMAP_readonly, + (unsigned long)page_address(np->grant_tx_page[i])); + np->grant_tx_page[i] = NULL; np->grant_tx_ref[i] = GRANT_INVALID_REF; add_id_to_freelist(&np->tx_skb_freelist, np->tx_skbs, i); dev_kfree_skb_irq(skb); @@ -1134,78 +1140,35 @@ static void xennet_release_rx_bufs(struct netfront_info *np) { - struct mmu_update *mmu = np->rx_mmu; - struct multicall_entry *mcl = np->rx_mcl; - struct sk_buff_head free_list; - struct sk_buff *skb; - unsigned long mfn; - int xfer = 0, noxfer = 0, unused = 0; int id, ref; - dev_warn(&np->netdev->dev, "%s: fix me for copying receiver.\n", - __func__); - return; - - skb_queue_head_init(&free_list); - spin_lock_bh(&np->rx_lock); for (id = 0; id < NET_RX_RING_SIZE; id++) { - ref = np->grant_rx_ref[id]; - if (ref == GRANT_INVALID_REF) { - unused++; - continue; - } + struct sk_buff *skb; + struct page *page; skb = np->rx_skbs[id]; - mfn = gnttab_end_foreign_transfer_ref(ref); - gnttab_release_grant_reference(&np->gref_rx_head, ref); - np->grant_rx_ref[id] = GRANT_INVALID_REF; - - if (0 == mfn) { - skb_shinfo(skb)->nr_frags = 0; - dev_kfree_skb(skb); - noxfer++; + if (!skb) continue; - } - if (!xen_feature(XENFEAT_auto_translated_physmap)) { - /* Remap the page. */ - const struct page *page = - skb_frag_page(&skb_shinfo(skb)->frags[0]); - unsigned long pfn = page_to_pfn(page); - void *vaddr = page_address(page); + ref = np->grant_rx_ref[id]; + if (ref == GRANT_INVALID_REF) + continue; - MULTI_update_va_mapping(mcl, (unsigned long)vaddr, - mfn_pte(mfn, PAGE_KERNEL), - 0); - mcl++; - mmu->ptr = ((u64)mfn << PAGE_SHIFT) - | MMU_MACHPHYS_UPDATE; - mmu->val = pfn; - mmu++; + page = skb_frag_page(&skb_shinfo(skb)->frags[0]); - set_phys_to_machine(pfn, mfn); - } - __skb_queue_tail(&free_list, skb); - xfer++; - } - - dev_info(&np->netdev->dev, "%s: %d xfer, %d noxfer, %d unused\n", - __func__, xfer, noxfer, unused); + /* gnttab_end_foreign_access() needs a page ref until + * foreign access is ended (which may be deferred). + */ + get_page(page); + gnttab_end_foreign_access(ref, 0, + (unsigned long)page_address(page)); + np->grant_rx_ref[id] = GRANT_INVALID_REF; - if (xfer) { - if (!xen_feature(XENFEAT_auto_translated_physmap)) { - /* Do all the remapping work and M2P updates. */ - MULTI_mmu_update(mcl, np->rx_mmu, mmu - np->rx_mmu, - NULL, DOMID_SELF); - mcl++; - HYPERVISOR_multicall(np->rx_mcl, mcl - np->rx_mcl); - } + kfree_skb(skb); } - __skb_queue_purge(&free_list); - spin_unlock_bh(&np->rx_lock); } @@ -1358,6 +1321,7 @@ for (i = 0; i < NET_RX_RING_SIZE; i++) { np->rx_skbs[i] = NULL; np->grant_rx_ref[i] = GRANT_INVALID_REF; + np->grant_tx_page[i] = NULL; } /* A grant for every tx ring slot */ @@ -2115,7 +2079,7 @@ if (!xen_domain()) return -ENODEV; - if (xen_hvm_domain() && !xen_platform_pci_unplug) + if (!xen_has_pv_nic_devices()) return -ENODEV; pr_info("Initialising Xen virtual ethernet driver\n"); --- linux-3.13.0.orig/drivers/of/address.c +++ linux-3.13.0/drivers/of/address.c @@ -99,11 +99,12 @@ static int of_bus_pci_match(struct device_node *np) { /* + * "pciex" is PCI Express * "vci" is for the /chaos bridge on 1st-gen PCI powermacs * "ht" is hypertransport */ - return !strcmp(np->type, "pci") || !strcmp(np->type, "vci") || - !strcmp(np->type, "ht"); + return !strcmp(np->type, "pci") || !strcmp(np->type, "pciex") || + !strcmp(np->type, "vci") || !strcmp(np->type, "ht"); } static void of_bus_pci_count_cells(struct device_node *np, --- linux-3.13.0.orig/drivers/of/of_mdio.c +++ linux-3.13.0/drivers/of/of_mdio.c @@ -247,3 +247,17 @@ return IS_ERR(phy) ? NULL : phy; } EXPORT_SYMBOL(of_phy_connect_fixed_link); + +/* XXX add comment */ +struct phy_device *of_phy_attach(struct net_device *dev, + struct device_node *phy_np, u32 flags, + phy_interface_t iface) +{ + struct phy_device *phy = of_phy_find_device(phy_np); + + if (!phy) + return NULL; + + return phy_attach_direct(dev, phy, flags, iface) ? NULL : phy; +} +EXPORT_SYMBOL(of_phy_attach); --- linux-3.13.0.orig/drivers/parport/parport_pc.c +++ linux-3.13.0/drivers/parport/parport_pc.c @@ -2600,8 +2600,6 @@ syba_2p_epp, syba_1p_ecp, titan_010l, - titan_1284p1, - titan_1284p2, avlab_1p, avlab_2p, oxsemi_952, @@ -2660,8 +2658,6 @@ /* syba_2p_epp AP138B */ { 2, { { 0, 0x078 }, { 0, 0x178 }, } }, /* syba_1p_ecp W83787 */ { 1, { { 0, 0x078 }, } }, /* titan_010l */ { 1, { { 3, -1 }, } }, - /* titan_1284p1 */ { 1, { { 0, 1 }, } }, - /* titan_1284p2 */ { 2, { { 0, 1 }, { 2, 3 }, } }, /* avlab_1p */ { 1, { { 0, 1}, } }, /* avlab_2p */ { 2, { { 0, 1}, { 2, 3 },} }, /* The Oxford Semi cards are unusual: 954 doesn't support ECP, @@ -2677,8 +2673,8 @@ /* netmos_9705 */ { 1, { { 0, -1 }, } }, /* netmos_9715 */ { 2, { { 0, 1 }, { 2, 3 },} }, /* netmos_9755 */ { 2, { { 0, 1 }, { 2, 3 },} }, - /* netmos_9805 */ { 1, { { 0, -1 }, } }, - /* netmos_9815 */ { 2, { { 0, -1 }, { 2, -1 }, } }, + /* netmos_9805 */ { 1, { { 0, 1 }, } }, + /* netmos_9815 */ { 2, { { 0, 1 }, { 2, 3 }, } }, /* netmos_9901 */ { 1, { { 0, -1 }, } }, /* netmos_9865 */ { 1, { { 0, -1 }, } }, /* quatech_sppxp100 */ { 1, { { 0, 1 }, } }, @@ -2722,8 +2718,6 @@ PCI_ANY_ID, PCI_ANY_ID, 0, 0, syba_1p_ecp }, { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_010L, PCI_ANY_ID, PCI_ANY_ID, 0, 0, titan_010l }, - { 0x9710, 0x9805, 0x1000, 0x0010, 0, 0, titan_1284p1 }, - { 0x9710, 0x9815, 0x1000, 0x0020, 0, 0, titan_1284p2 }, /* PCI_VENDOR_ID_AVLAB/Intek21 has another bunch of cards ...*/ /* AFAVLAB_TK9902 */ { 0x14db, 0x2120, PCI_ANY_ID, PCI_ANY_ID, 0, 0, avlab_1p}, --- linux-3.13.0.orig/drivers/pci/Makefile +++ linux-3.13.0/drivers/pci/Makefile @@ -48,6 +48,7 @@ obj-$(CONFIG_TILE) += setup-bus.o setup-irq.o obj-$(CONFIG_SPARC_LEON) += setup-bus.o setup-irq.o obj-$(CONFIG_M68K) += setup-bus.o setup-irq.o +obj-$(CONFIG_ARM64) += setup-bus.o setup-irq.o # # ACPI Related PCI FW Functions --- linux-3.13.0.orig/drivers/pci/host/Kconfig +++ linux-3.13.0/drivers/pci/host/Kconfig @@ -33,4 +33,18 @@ There are 3 internal PCI controllers available with a single built-in EHCI/OHCI host controller present on each one. +config PCI_XGENE_MSI + bool + +config PCI_XGENE + bool "X-Gene PCIe controller" + depends on ARCH_XGENE + depends on OF + select PCIEPORTBUS + select PCI_XGENE_MSI if PCI_MSI + help + Say Y here if you want internal PCI support on APM X-Gene SoC. + There are 5 internal PCIe ports available. Each port is GEN3 capable + and have varied lanes from x1 to x8. + endmenu --- linux-3.13.0.orig/drivers/pci/host/Makefile +++ linux-3.13.0/drivers/pci/host/Makefile @@ -4,3 +4,5 @@ obj-$(CONFIG_PCI_MVEBU) += pci-mvebu.o obj-$(CONFIG_PCI_TEGRA) += pci-tegra.o obj-$(CONFIG_PCI_RCAR_GEN2) += pci-rcar-gen2.o +obj-$(CONFIG_PCI_XGENE) += pci-xgene.o +obj-$(CONFIG_PCI_XGENE_MSI) += pci-xgene-msi.o --- linux-3.13.0.orig/drivers/pci/host/pci-mvebu.c +++ linux-3.13.0/drivers/pci/host/pci-mvebu.c @@ -60,14 +60,6 @@ #define PCIE_DEBUG_CTRL 0x1a60 #define PCIE_DEBUG_SOFT_RESET BIT(20) -/* - * This product ID is registered by Marvell, and used when the Marvell - * SoC is not the root complex, but an endpoint on the PCIe bus. It is - * therefore safe to re-use this PCI ID for our emulated PCI-to-PCI - * bridge. - */ -#define MARVELL_EMULATED_PCI_PCI_BRIDGE_ID 0x7846 - /* PCI configuration space of a PCI-to-PCI bridge */ struct mvebu_sw_pci_bridge { u16 vendor; @@ -377,7 +369,8 @@ bridge->class = PCI_CLASS_BRIDGE_PCI; bridge->vendor = PCI_VENDOR_ID_MARVELL; - bridge->device = MARVELL_EMULATED_PCI_PCI_BRIDGE_ID; + bridge->device = mvebu_readl(port, PCIE_DEV_ID_OFF) >> 16; + bridge->revision = mvebu_readl(port, PCIE_DEV_REV_OFF) & 0xff; bridge->header_type = PCI_HEADER_TYPE_BRIDGE; bridge->cache_line_size = 0x10; @@ -773,7 +766,7 @@ for (i = 0; i < nranges; i++) { u32 flags = of_read_number(range, 1); - u32 slot = of_read_number(range, 2); + u32 slot = of_read_number(range + 1, 1); u64 cpuaddr = of_read_number(range + na, pna); unsigned long rtype; --- linux-3.13.0.orig/drivers/pci/host/pci-xgene-msi.c +++ linux-3.13.0/drivers/pci/host/pci-xgene-msi.c @@ -0,0 +1,593 @@ +/* + * XGene MSI Driver + * + * Copyright (c) 2010, Applied Micro Circuits Corporation + * Author: Tanmay Inamdar + * Tuan Phan + * Jim Hull + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define NR_MSI_REG 16 +#define IRQS_PER_MSI_INDEX 32 +#define IRQS_PER_MSI_REG 256 +#define NR_MSI_IRQS (NR_MSI_REG * IRQS_PER_MSI_REG) + +#define XGENE_PIC_IP_MASK 0x0000000F +#define XGENE_PIC_IP_GIC 0x00000001 + +/* PCIe MSI Index Registers */ +#define MSI0IR0 0x000000 +#define MSIFIR7 0x7F0000 + +/* PCIe MSI Interrupt Register */ +#define MSI1INT0 0x800000 +#define MSI1INTF 0x8F0000 + +struct xgene_msi { + struct irq_domain *irqhost; + unsigned long cascade_irq; + u32 msiir_offset; + u32 msi_addr_lo; + u32 msi_addr_hi; + void __iomem *msi_regs; + u32 feature; + int msi_virqs[NR_MSI_REG]; + struct msi_bitmap bitmap; + struct list_head list; /* support multiple MSI banks */ + phandle phandle; +}; + +#ifdef CONFIG_ARCH_MSLIM +static inline u64 xgene_pcie_get_iof_addr(u64 addr) +{ + return mslim_pa_to_iof_axi(lower_32_bits(addr)); +} +#else +#define xgene_pcie_get_iof_addr(addr) addr +#endif + +#define MSI_DRIVER_VERSION "0.1" + +struct xgene_msi_feature { + u32 xgene_pic_ip; + u32 msiir_offset; /* Offset of MSIIR, relative to start of MSIR bank */ +}; + +struct xgene_msi_cascade_data { + struct xgene_msi *msi_data; + int index; +}; + +LIST_HEAD(msi_head); + +static const struct xgene_msi_feature gic_msi_feature = { + .xgene_pic_ip = XGENE_PIC_IP_GIC, + .msiir_offset = 0, +}; + +irq_hw_number_t virq_to_hw(unsigned int virq) +{ + struct irq_data *irq_data = irq_get_irq_data(virq); + return WARN_ON(!irq_data) ? 0 : irq_data->hwirq; +} + +static inline u32 xgene_msi_intr_read(phys_addr_t __iomem *base, + unsigned int reg) +{ + u32 irq_reg = MSI1INT0 + (reg << 16); + pr_debug("base = %p irq_reg = 0x%x , reg = 0x%x\n", base, irq_reg, reg); + return readl((void *)((phys_addr_t) base + irq_reg)); +} + +static inline u32 xgene_msi_read(phys_addr_t __iomem *base, unsigned int group, + unsigned int reg) +{ + u32 irq_reg = MSI0IR0 + (group << 19) + (reg << 16); + pr_debug("base %p irq_reg 0x%x, group 0x%x, reg 0x%x\n", + base, irq_reg, group, reg); + return readl((void *)((phys_addr_t) base + irq_reg)); +} + +/* + * We do not need this actually. The MSIR register has been read once + * in the cascade interrupt. So, this MSI interrupt has been acked +*/ +static void xgene_msi_end_irq(struct irq_data *d) +{ +} + +#ifdef CONFIG_SMP +static int xgene_msi_set_affinity(struct irq_data *d, + const struct cpumask *mask_val, bool force) +{ + u64 virt_msir; + + virt_msir = (u64)irq_get_handler_data(d->irq); + return irq_set_affinity(virt_msir, mask_val); +} +#endif + +static struct irq_chip xgene_msi_chip = { + .irq_mask = mask_msi_irq, + .irq_unmask = unmask_msi_irq, + .irq_ack = xgene_msi_end_irq, +#ifdef CONFIG_SMP + .irq_set_affinity = xgene_msi_set_affinity, +#endif + .name = "xgene-msi", +}; + +static int xgene_msi_host_map(struct irq_domain *h, unsigned int virq, + irq_hw_number_t hw) +{ + struct xgene_msi *msi_data = h->host_data; + struct irq_chip *chip = &xgene_msi_chip; + + pr_debug("\nENTER %s, virq=%u\n", __func__, virq); + irq_set_status_flags(virq, IRQ_TYPE_LEVEL_HIGH); + irq_set_chip_data(virq, msi_data); + irq_set_chip_and_handler(virq, chip, handle_level_irq); + + return 0; +} + +static const struct irq_domain_ops xgene_msi_host_ops = { + .map = xgene_msi_host_map, +}; + +static int xgene_msi_init_allocator(struct xgene_msi *msi_data) +{ +#ifdef CONFIG_ACPI + if (efi_enabled(EFI_BOOT)) + return msi_bitmap_alloc(&msi_data->bitmap, NR_MSI_IRQS, NULL); + else +#endif + return msi_bitmap_alloc(&msi_data->bitmap, NR_MSI_IRQS, + msi_data->irqhost->of_node); +} + +int arch_msi_check_device(struct pci_dev *dev, int nvec, int type) +{ + pr_debug("ENTER %s\n", __func__); + return 0; +} + +void arch_teardown_msi_irqs(struct pci_dev *dev) +{ + struct msi_desc *entry; + struct xgene_msi *msi_data; + + pr_debug("ENTER %s\n", __func__); + list_for_each_entry(entry, &dev->msi_list, list) { + if (entry->irq == 0) + continue; + + msi_data = irq_get_chip_data(entry->irq); + irq_set_msi_desc(entry->irq, NULL); + msi_bitmap_free_hwirqs(&msi_data->bitmap, + virq_to_hw(entry->irq), 1); + irq_dispose_mapping(entry->irq); + } +} + +static void xgene_compose_msi_msg(struct pci_dev *dev, int hwirq, + struct msi_msg *msg, + struct xgene_msi *msi_data) +{ + int reg_set, group; + + group = hwirq % NR_MSI_REG; + reg_set = hwirq / (NR_MSI_REG * IRQS_PER_MSI_INDEX); + + pr_debug("group = %d, reg_set : 0x%x\n", group, reg_set); + msg->address_lo = msi_data->msi_addr_lo + + (((8 * group) + reg_set) << 16); + msg->address_hi = msi_data->msi_addr_hi; + msg->data = (hwirq / NR_MSI_REG) % IRQS_PER_MSI_INDEX; + pr_debug("addr : 0x%08x, data : 0x%x\n", msg->address_lo, msg->data); +} + +int arch_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type) +{ + struct device_node *np; + struct msi_desc *entry; + struct msi_msg msg; + u64 gic_irq; + unsigned int virq; + struct xgene_msi *msi_data; + phandle phandle = 0; + int rc = 0; + int hwirq = -1; + + pr_debug("ENTER %s - nvec = %d, type = %d\n", __func__, nvec, type); +#ifdef CONFIG_ACPI + if (!efi_enabled(EFI_BOOT)) +#endif + { + np = pci_device_to_OF_node(pdev); + /* + * If the PCI node has an xgene,msi property, + * then we need to use it to find the specific MSI. + */ + np = of_parse_phandle(np, "xgene,msi", 0); + if (np) { + if (of_device_is_compatible(np, + "xgene,gic-msi-cascade")) + phandle = np->phandle; + else { + dev_err(&pdev->dev, + "node %s has an invalid xgene,msi phandle %u\n", + np->full_name, np->phandle); + rc = -EINVAL; + goto exit; + } + } else + dev_info(&pdev->dev, "Found no xgene,msi phandle\n"); + } + + list_for_each_entry(entry, &pdev->msi_list, list) { + pr_debug("Loop over MSI devices\n"); + /* + * Loop over all the MSI devices until we find one that has an + * available interrupt. + */ + list_for_each_entry(msi_data, &msi_head, list) { + if (phandle && (phandle != msi_data->phandle)) + continue; + pr_debug("Xgene msi pointer : %p\n", msi_data); + hwirq = msi_bitmap_alloc_hwirqs(&msi_data->bitmap, 1); + break; + } + + if (hwirq < 0) { + dev_err(&pdev->dev, + "could not allocate MSI interrupt\n"); + rc = -ENOSPC; + goto exit; + } + + virq = irq_create_mapping(msi_data->irqhost, hwirq); + if (virq == 0) { + dev_err(&pdev->dev, "fail mapping hwirq %i\n", hwirq); + msi_bitmap_free_hwirqs(&msi_data->bitmap, hwirq, 1); + rc = -ENOSPC; + goto exit; + } + + gic_irq = msi_data->msi_virqs[hwirq % NR_MSI_REG]; + pr_debug("Created Mapping HWIRQ %d on GIC IRQ %llu " + "TO VIRQ %d\n", + hwirq, gic_irq, virq); + /* chip_data is msi_data via host->hostdata in host->map() */ + irq_set_msi_desc(virq, entry); + xgene_compose_msi_msg(pdev, hwirq, &msg, msi_data); + irq_set_handler_data(virq, (void *)gic_irq); + write_msi_msg(virq, &msg); + } + +exit: + return rc; +} + +static void xgene_msi_cascade(unsigned int irq, struct irq_desc *desc) +{ + struct irq_chip *chip = irq_desc_get_chip(desc); + struct irq_data *idata = irq_desc_get_irq_data(desc); + struct xgene_msi_cascade_data *cascade_data; + struct xgene_msi *msi_data; + unsigned int cascade_irq; + int msir_index = -1; + u32 msir_value = 0; + u32 intr_index = 0; + u32 msi_intr_reg_value = 0; + u32 msi_intr_reg; + + pr_debug("\nENTER %s, irq=%u\n", __func__, irq); + cascade_data = irq_get_handler_data(irq); + msi_data = cascade_data->msi_data; + pr_debug("xgene_msi : 0x%p, irq = %u\n", msi_data, irq); + + raw_spin_lock(&desc->lock); + if (unlikely(irqd_irq_inprogress(idata))) + goto unlock; + + msi_intr_reg = cascade_data->index; + pr_debug("msi_intr_reg : %d\n", msi_intr_reg); + + if (msi_intr_reg >= NR_MSI_REG) + cascade_irq = 0; + + irqd_set_chained_irq_inprogress(idata); + + switch (msi_data->feature & XGENE_PIC_IP_MASK) { + case XGENE_PIC_IP_GIC: + msi_intr_reg_value = xgene_msi_intr_read(msi_data->msi_regs, + msi_intr_reg); + pr_debug("msi_intr_reg_value : 0x%08x\n", msi_intr_reg_value); + break; + } + + while (msi_intr_reg_value) { + msir_index = ffs(msi_intr_reg_value) - 1; + pr_debug("msir_index : %d\n", msir_index); + msir_value = xgene_msi_read(msi_data->msi_regs, msi_intr_reg, + msir_index); + while (msir_value) { + intr_index = ffs(msir_value) - 1; + pr_debug("intr_index : %d\n", intr_index); + cascade_irq = irq_linear_revmap(msi_data->irqhost, + msir_index * IRQS_PER_MSI_INDEX * NR_MSI_REG + + intr_index * NR_MSI_REG + msi_intr_reg); + pr_debug("cascade_irq : %d\n", cascade_irq); + if (cascade_irq != 0) + generic_handle_irq(cascade_irq); + msir_value &= ~(1 << intr_index); + pr_debug("msir_value : 0x%08x\n", msir_value); + } + msi_intr_reg_value &= ~(1 << msir_index); + pr_debug("msi_intr_reg_value : 0x%08x\n", msi_intr_reg_value); + } + irqd_clr_chained_irq_inprogress(idata); + + switch (msi_data->feature & XGENE_PIC_IP_MASK) { + case XGENE_PIC_IP_GIC: + chip->irq_eoi(idata); + break; + } + +unlock: + raw_spin_unlock(&desc->lock); + pr_debug("EXIT\n"); +} + +static int xgene_msi_remove(struct platform_device *pdev) +{ + int virq, i; + struct xgene_msi *msi = platform_get_drvdata(pdev); + + pr_debug("ENTER %s\n", __func__); + for (i = 0; i < NR_MSI_REG; i++) { + virq = msi->msi_virqs[i]; + if (virq != 0) + irq_dispose_mapping(virq); + } + + if (msi->bitmap.bitmap) + msi_bitmap_free(&msi->bitmap); + + return 0; +} + +static int xgene_msi_setup_hwirq(struct xgene_msi *msi, + struct platform_device *pdev, + int offset, int irq_index) +{ + int virt_msir; + cpumask_var_t mask; + struct xgene_msi_cascade_data *cascade_data = NULL; + + virt_msir = platform_get_irq(pdev, irq_index); + if (virt_msir < 0) { + dev_err(&pdev->dev, "Cannot translate IRQ index %d\n", + irq_index); + return -EINVAL; + } + + cascade_data = devm_kzalloc(&pdev->dev, + sizeof(struct xgene_msi_cascade_data), GFP_KERNEL); + if (!cascade_data) { + dev_err(&pdev->dev, "No memory for MSI cascade data\n"); + return -ENOMEM; + } + + if (alloc_cpumask_var(&mask, GFP_KERNEL)) { + cpumask_setall(mask); + irq_set_affinity(virt_msir, mask); + free_cpumask_var(mask); + } + + msi->msi_virqs[irq_index] = virt_msir; + cascade_data->index = offset; + cascade_data->msi_data = msi; + irq_set_handler_data(virt_msir, cascade_data); + irq_set_chained_handler(virt_msir, xgene_msi_cascade); + pr_debug("mapped phys irq %d\n", virt_msir); + + return 0; +} + +static int xgene_msi_get_param(struct platform_device *pdev, const char *name, + u32 *buf, int count) +{ + int rc = 0; + +#ifdef CONFIG_ACPI + if (efi_enabled(EFI_BOOT)) { + struct acpi_dsm_entry entry; + + if (acpi_dsm_lookup_value(ACPI_HANDLE(&pdev->dev), + name, 0, &entry) || !entry.value) + return -EINVAL; + + if (count == 2) + sscanf(entry.value, "%d %d", &buf[0], &buf[1]); + else + rc = -EINVAL; + + kfree(entry.key); + kfree(entry.value); + } else +#endif + if (of_property_read_u32_array(pdev->dev.of_node, name, + buf, count)) + rc = -EINVAL; + + return rc; +} + +static int xgene_msi_probe(struct platform_device *pdev) +{ + struct xgene_msi *msi; + struct resource *res; + phys_addr_t msiir_offset; + int rc, j, irq_index, count; + u32 offset; + u32 buf[] = { 0, NR_MSI_IRQS}; + + msi = devm_kzalloc(&pdev->dev, sizeof(struct xgene_msi), GFP_KERNEL); + if (!msi) { + dev_err(&pdev->dev, "No memory for MSI structure\n"); + return -ENOMEM; + } + + platform_set_drvdata(pdev, msi); + +#ifdef CONFIG_ACPI + if (efi_enabled(EFI_BOOT)) + msi->irqhost = irq_domain_add_linear(NULL, + NR_MSI_IRQS, &xgene_msi_host_ops, msi); + else +#endif + msi->irqhost = irq_domain_add_linear(pdev->dev.of_node, + NR_MSI_IRQS, &xgene_msi_host_ops, msi); + if (msi->irqhost == NULL) { + dev_err(&pdev->dev, "No memory for MSI irqhost\n"); + rc = -ENOMEM; + goto error; + } + + res = platform_get_resource(pdev, IORESOURCE_MEM, 0); + msi->msi_regs = devm_ioremap_resource(&pdev->dev, res); + if (IS_ERR(msi->msi_regs)) { + dev_err(&pdev->dev, "no reg space\n"); + rc = -EINVAL; + goto error; + } + + pr_debug("mapped 0x%08llx to 0x%p Size : 0x%08llx\n", res->start, + msi->msi_regs, resource_size(res)); + + msiir_offset = lower_32_bits(xgene_pcie_get_iof_addr(res->start)); + msi->msiir_offset = gic_msi_feature.msiir_offset + + (msiir_offset & 0xfffff); + msi->msi_addr_hi = upper_32_bits(res->start); + msi->msi_addr_lo = gic_msi_feature.msiir_offset + + (msiir_offset & 0xffffffff); + msi->feature = gic_msi_feature.xgene_pic_ip; + +#ifdef CONFIG_ACPI + if (efi_enabled(EFI_BOOT)) + msi->phandle = 0; + else +#endif + msi->phandle = pdev->dev.of_node->phandle; + + rc = xgene_msi_init_allocator(msi); + if (rc) { + dev_err(&pdev->dev, "Error allocating MSI bitmap\n"); + goto error; + } + + rc = xgene_msi_get_param(pdev, "msi-available-ranges", buf, 2); + if (rc) { + dev_err(&pdev->dev, "Error getting MSI ranges\n"); + goto error; + } + + pr_debug("buf[0] = 0x%x buf[1] = 0x%x\n", buf[0], buf[1]); + if (buf[0] % IRQS_PER_MSI_REG || buf[1] % IRQS_PER_MSI_REG) { + pr_err_once("msi available range of" + "%u at %u is not IRQ-aligned\n", + buf[1], buf[0]); + rc = -EINVAL; + goto error; + } + + offset = buf[0] / IRQS_PER_MSI_REG; + count = buf[1] / IRQS_PER_MSI_REG; + pr_debug("offset = %d count = %d\n", offset, count); + + for (irq_index = 0, j = 0; j < count; j++, irq_index++) { + rc = xgene_msi_setup_hwirq(msi, pdev, offset + j, irq_index); + if (rc) + goto error; + } + + list_add_tail(&msi->list, &msi_head); + + pr_info("XGene: PCIe MSI driver v%s\n", MSI_DRIVER_VERSION); + + return 0; + +error: + xgene_msi_remove(pdev); + return rc; +} + +static const struct of_device_id xgene_msi_of_ids[] = { + { + .compatible = "xgene,gic-msi", + }, + {} +}; + +#ifdef CONFIG_ACPI +static const struct acpi_device_id xgene_msi_acpi_ids[] = { + {"APMC0D0E", 0}, + {}, +}; +#endif + +static struct platform_driver xgene_msi_driver = { + .driver = { + .name = "xgene-msi", + .owner = THIS_MODULE, + .of_match_table = xgene_msi_of_ids, +#ifdef CONFIG_ACPI + .acpi_match_table = ACPI_PTR(xgene_msi_acpi_ids), +#endif + }, + .probe = xgene_msi_probe, + .remove = xgene_msi_remove, +}; + +static __init int xgene_msi_init(void) +{ + return platform_driver_register(&xgene_msi_driver); +} + +subsys_initcall_sync(xgene_msi_init); --- linux-3.13.0.orig/drivers/pci/host/pci-xgene.c +++ linux-3.13.0/drivers/pci/host/pci-xgene.c @@ -0,0 +1,784 @@ +/** + * APM X-Gene PCIe Driver + * + * Copyright (c) 2013 Applied Micro Circuits Corporation. + * + * Author: Tanmay Inamdar . + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation; either version 2 of the License, or (at your + * option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define PCIECORE_LTSSM 0x4c +#define PCIECORE_CTLANDSTATUS 0x50 +#define PIPE_PHY_RATE_RD(src) ((0xc000 & (u32)(src)) >> 0xe) +#define INTXSTATUSMASK 0x6c +#define PIM1_1L 0x80 +#define IBAR2 0x98 +#define IR2MSK 0x9c +#define PIM2_1L 0xa0 +#define IBAR3L 0xb4 +#define IR3MSKL 0xbc +#define PIM3_1L 0xc4 +#define OMR1BARL 0x100 +#define OMR2BARL 0x118 +#define CFGBARL 0x154 +#define CFGBARH 0x158 +#define CFGCTL 0x15c +#define RTDID 0x160 +#define BRIDGE_CFG_0 0x2000 +#define BRIDGE_CFG_1 0x2004 +#define BRIDGE_CFG_4 0x2010 +#define BRIDGE_CFG_32 0x2030 +#define BRIDGE_CFG_14 0x2038 +#define BRIDGE_CTRL_1 0x2204 +#define BRIDGE_CTRL_2 0x2208 +#define BRIDGE_CTRL_5 0x2214 +#define BRIDGE_STATUS_0 0x2600 +#define MEM_RAM_SHUTDOWN 0xd070 +#define BLOCK_MEM_RDY 0xd074 + +#define DEVICE_PORT_TYPE_MASK 0x03c00000 +#define PM_FORCE_RP_MODE_MASK 0x00000400 +#define SWITCH_PORT_MODE_MASK 0x00000800 +#define CLASS_CODE_MASK 0xffffff00 +#define LINK_UP_MASK 0x00000100 +#define AER_OPTIONAL_ERROR_EN 0xffc00000 +#define XGENE_PCIE_DEV_CTRL 0x2f0f +#define AXI_EP_CFG_ACCESS 0x10000 +#define ENABLE_ASPM 0x08000000 +#define XGENE_PORT_TYPE_RC 0x05000000 +#define BLOCK_MEM_RDY_VAL 0xFFFFFFFF +#define EN_COHERENCY 0xF0000000 +#define EN_REG 0x00000001 +#define OB_LO_IO 0x00000002 +#define XGENE_PCIE_VENDORID 0xE008 +#define XGENE_PCIE_DEVICEID 0xE004 +#define XGENE_PCIE_TIMEOUT (500*1000) /* us */ +#define XGENE_LTSSM_DETECT_WAIT 20 +#define XGENE_LTSSM_L0_WAIT 4 +#define SZ_1T (SZ_1G*1024ULL) + +struct xgene_res_cfg { + struct resource res; + u64 pci_addr; +}; + +struct xgene_pcie_port { + struct device_node *node; + struct device *dev; + struct clk *clk; + struct xgene_res_cfg mem; + struct xgene_res_cfg io; + struct resource realio; + void __iomem *csr_base; + void __iomem *cfg_base; + u8 link_up; +}; + +static inline u32 pcie_bar_low_val(u32 addr, u32 flags) +{ + return (addr & PCI_BASE_ADDRESS_MEM_MASK) | flags; +} + +static inline struct xgene_pcie_port * +xgene_pcie_bus_to_port(struct pci_bus *bus) +{ + struct pci_sys_data *sys = bus->sysdata; + return sys->private_data; +} + +/* PCIE Configuration Out/In */ +static inline void xgene_pcie_cfg_out32(void __iomem *addr, u32 val) +{ + writel(val, addr); +} + +static inline void xgene_pcie_cfg_out16(void __iomem *addr, u16 val) +{ + u64 temp_addr = (u64)addr & ~0x3; + u32 val32 = readl((void __iomem *)temp_addr); + + switch ((u64) addr & 0x3) { + case 2: + val32 &= ~0xFFFF0000; + val32 |= (u32) val << 16; + break; + case 0: + default: + val32 &= ~0xFFFF; + val32 |= val; + break; + } + writel(val32, (void __iomem *)temp_addr); +} + +static inline void xgene_pcie_cfg_out8(void __iomem *addr, u8 val) +{ + phys_addr_t temp_addr = (u64) addr & ~0x3; + u32 val32 = readl((void __iomem *)temp_addr); + + switch ((u64) addr & 0x3) { + case 0: + val32 &= ~0xFF; + val32 |= val; + break; + case 1: + val32 &= ~0xFF00; + val32 |= (u32) val << 8; + break; + case 2: + val32 &= ~0xFF0000; + val32 |= (u32) val << 16; + break; + case 3: + default: + val32 &= ~0xFF000000; + val32 |= (u32) val << 24; + break; + } + writel(val32, (void __iomem *)temp_addr); +} + +static inline void xgene_pcie_cfg_in32(void __iomem *addr, u32 *val) +{ + *val = readl(addr); +} + +static inline void xgene_pcie_cfg_in16(void __iomem *addr, u16 *val) +{ + u64 temp_addr = (u64)addr & ~0x3; + u32 val32; + + val32 = readl((void __iomem *)temp_addr); + + switch ((u64)addr & 0x3) { + case 2: + *val = val32 >> 16; + break; + case 0: + default: + *val = val32; + break; + } +} + +static inline void xgene_pcie_cfg_in8(void __iomem *addr, u8 *val) +{ + u64 temp_addr = (u64)addr & ~0x3; + u32 val32; + + val32 = readl((void __iomem *)temp_addr); + + switch ((u64)addr & 0x3) { + case 3: + *val = val32 >> 24; + break; + case 2: + *val = val32 >> 16; + break; + case 1: + *val = val32 >> 8; + break; + case 0: + default: + *val = val32; + break; + } +} + +/* When the address bit [17:16] is 2'b01, the Configuration access will be + * treated as Type 1 and it will be forwarded to external PCIe device. + */ +static void __iomem *xgene_pcie_get_cfg_base(struct pci_bus *bus) +{ + struct xgene_pcie_port *port = xgene_pcie_bus_to_port(bus); + + if (bus->number >= (bus->primary + 1)) + return port->cfg_base + AXI_EP_CFG_ACCESS; + + return port->cfg_base; +} + +/* For Configuration request, RTDID register is used as Bus Number, + * Device Number and Function number of the header fields. + */ +static void xgene_pcie_set_rtdid_reg(struct pci_bus *bus, uint devfn) +{ + struct xgene_pcie_port *port = xgene_pcie_bus_to_port(bus); + unsigned int b, d, f; + u32 rtdid_val = 0; + + b = bus->number; + d = PCI_SLOT(devfn); + f = PCI_FUNC(devfn); + + if (!pci_is_root_bus(bus)) + rtdid_val = (b << 8) | (d << 3) | f; + + writel(rtdid_val, port->csr_base + RTDID); + /* read the register back to ensure flush */ + readl(port->csr_base + RTDID); +} + +static int xgene_pcie_read_config(struct pci_bus *bus, unsigned int devfn, + int offset, int len, u32 *val) +{ + struct xgene_pcie_port *port = xgene_pcie_bus_to_port(bus); + void __iomem *addr; + u8 val8; + u16 val16; + + if ((pci_is_root_bus(bus) && devfn != 0) || !port->link_up) + return PCIBIOS_DEVICE_NOT_FOUND; + + xgene_pcie_set_rtdid_reg(bus, devfn); + addr = xgene_pcie_get_cfg_base(bus); + switch (len) { + case 1: + xgene_pcie_cfg_in8(addr + offset, &val8); + *val = val8; + break; + case 2: + xgene_pcie_cfg_in16(addr + offset, &val16); + *val = val16; + break; + default: + xgene_pcie_cfg_in32(addr + offset, val); + break; + } + return PCIBIOS_SUCCESSFUL; +} + +static int xgene_pcie_write_config(struct pci_bus *bus, unsigned int devfn, + int offset, int len, u32 val) +{ + struct xgene_pcie_port *port = xgene_pcie_bus_to_port(bus); + void __iomem *addr; + + if ((pci_is_root_bus(bus) && devfn != 0) || !port->link_up) + return PCIBIOS_DEVICE_NOT_FOUND; + + xgene_pcie_set_rtdid_reg(bus, devfn); + addr = xgene_pcie_get_cfg_base(bus); + switch (len) { + case 1: + xgene_pcie_cfg_out8(addr + offset, (u8) val); + break; + case 2: + xgene_pcie_cfg_out16(addr + offset, (u16) val); + break; + default: + xgene_pcie_cfg_out32(addr + offset, val); + break; + } + return PCIBIOS_SUCCESSFUL; +} + +static struct pci_ops xgene_pcie_ops = { + .read = xgene_pcie_read_config, + .write = xgene_pcie_write_config +}; + +static void xgene_pcie_program_core(void __iomem *csr_base) +{ + u32 val; + + val = readl(csr_base + BRIDGE_CFG_0); + val |= AER_OPTIONAL_ERROR_EN; + writel(val, csr_base + BRIDGE_CFG_0); + writel(0x0, csr_base + INTXSTATUSMASK); + val = readl(csr_base + BRIDGE_CTRL_1); + val = (val & ~0xffff) | XGENE_PCIE_DEV_CTRL; + writel(val, csr_base + BRIDGE_CTRL_1); +} + +static u64 xgene_pcie_set_ib_mask(void __iomem *csr_base, u32 addr, + u32 flags, u64 size) +{ + u64 mask = (~(size - 1) & PCI_BASE_ADDRESS_MEM_MASK) | flags; + u32 val32 = 0; + u32 val; + + val32 = readl(csr_base + addr); + val = (val32 & 0x0000ffff) | (lower_32_bits(mask) << 16); + writel(val, csr_base + addr); + + val32 = readl(csr_base + addr + 0x04); + val = (val32 & 0xffff0000) | (lower_32_bits(mask) >> 16); + writel(val, csr_base + addr + 0x04); + + val32 = readl(csr_base + addr + 0x04); + val = (val32 & 0x0000ffff) | (upper_32_bits(mask) << 16); + writel(val, csr_base + addr + 0x04); + + val32 = readl(csr_base + addr + 0x08); + val = (val32 & 0xffff0000) | (upper_32_bits(mask) >> 16); + writel(val, csr_base + addr + 0x08); + + return mask; +} + +static void xgene_pcie_poll_linkup(struct xgene_pcie_port *port, + u32 *lanes, u32 *speed) +{ + void __iomem *csr_base = port->csr_base; + u32 val32; + u64 start_time, time; + + /* + * A component enters the LTSSM Detect state within + * 20ms of the end of fundamental core reset. + */ + msleep(XGENE_LTSSM_DETECT_WAIT); + port->link_up = 0; + start_time = jiffies; + do { + val32 = readl(csr_base + PCIECORE_CTLANDSTATUS); + if (val32 & LINK_UP_MASK) { + port->link_up = 1; + *speed = PIPE_PHY_RATE_RD(val32); + val32 = readl(csr_base + BRIDGE_STATUS_0); + *lanes = val32 >> 26; + } + time = jiffies_to_msecs(jiffies - start_time); + } while ((!port->link_up) && (time <= XGENE_LTSSM_L0_WAIT)); +} + +static void xgene_pcie_setup_root_complex(struct xgene_pcie_port *port) +{ + void __iomem *csr_base = port->csr_base; + u32 val; + + val = (XGENE_PCIE_DEVICEID << 16) | XGENE_PCIE_VENDORID; + writel(val, csr_base + BRIDGE_CFG_0); + + val = readl(csr_base + BRIDGE_CFG_1); + val &= ~CLASS_CODE_MASK; + val |= PCI_CLASS_BRIDGE_PCI << 16; + writel(val, csr_base + BRIDGE_CFG_1); + + val = readl(csr_base + BRIDGE_CFG_14); + val |= SWITCH_PORT_MODE_MASK; + val &= ~PM_FORCE_RP_MODE_MASK; + writel(val, csr_base + BRIDGE_CFG_14); + + val = readl(csr_base + BRIDGE_CTRL_5); + val &= ~DEVICE_PORT_TYPE_MASK; + val |= XGENE_PORT_TYPE_RC; + writel(val, csr_base + BRIDGE_CTRL_5); + + val = readl(csr_base + BRIDGE_CTRL_2); + val |= ENABLE_ASPM; + writel(val, csr_base + BRIDGE_CTRL_2); + + val = readl(csr_base + BRIDGE_CFG_32); + writel(val | (1 << 19), csr_base + BRIDGE_CFG_32); +} + +/* Return 0 on success */ +static int xgene_pcie_init_ecc(struct xgene_pcie_port *port) +{ + void __iomem *csr_base = port->csr_base; + int timeout = XGENE_PCIE_TIMEOUT; + u32 val; + + val = readl(csr_base + MEM_RAM_SHUTDOWN); + if (val == 0) + return 0; + writel(0x0, csr_base + MEM_RAM_SHUTDOWN); + do { + val = readl(csr_base + BLOCK_MEM_RDY); + udelay(1); + } while ((val != BLOCK_MEM_RDY_VAL) && timeout--); + + return !(timeout > 0); +} + +static int xgene_pcie_init_port(struct xgene_pcie_port *port) +{ + int rc; + + port->clk = clk_get(port->dev, NULL); + if (IS_ERR_OR_NULL(port->clk)) { + dev_err(port->dev, "clock not available\n"); + return -ENODEV; + } + + rc = clk_prepare_enable(port->clk); + if (rc) { + dev_err(port->dev, "clock enable failed\n"); + return rc; + } + + rc = xgene_pcie_init_ecc(port); + if (rc) { + dev_err(port->dev, "memory init failed\n"); + return rc; + } + + return 0; +} + +struct device_node *pcibios_get_phb_of_node(struct pci_bus *bus) +{ + struct xgene_pcie_port *port = xgene_pcie_bus_to_port(bus); + + return of_node_get(port->node); +} + +static void xgene_pcie_fixup_bridge(struct pci_dev *dev) +{ + int i; + + /* Hide the PCI host BARs from the kernel as their content doesn't + * fit well in the resource management + */ + for (i = 0; i < DEVICE_COUNT_RESOURCE; i++) { + dev->resource[i].start = dev->resource[i].end = 0; + dev->resource[i].flags = 0; + } + dev_info(&dev->dev, "Hiding X-Gene pci host bridge resources %s\n", + pci_name(dev)); +} +DECLARE_PCI_FIXUP_HEADER(XGENE_PCIE_VENDORID, XGENE_PCIE_DEVICEID, + xgene_pcie_fixup_bridge); + +static int xgene_pcie_map_reg(struct xgene_pcie_port *port, + struct platform_device *pdev, u64 *cfg_addr) +{ + struct resource *res; + + res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "csr"); + port->csr_base = devm_ioremap_resource(port->dev, res); + if (IS_ERR(port->csr_base)) + return PTR_ERR(port->csr_base); + + res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "cfg"); + port->cfg_base = devm_ioremap_resource(port->dev, res); + if (IS_ERR(port->cfg_base)) + return PTR_ERR(port->cfg_base); + *cfg_addr = res->start; + + return 0; +} + +static void xgene_pcie_setup_ob_reg(struct xgene_pcie_port *port, + u32 addr, u32 restype) +{ + struct resource *res; + void __iomem *base = port->csr_base + addr; + resource_size_t size; + u64 cpu_addr, pci_addr; + u64 mask = 0; + u32 min_size; + u32 flag = EN_REG; + + if (restype == IORESOURCE_MEM) { + res = &port->mem.res; + pci_addr = port->mem.pci_addr; + min_size = SZ_128M; + } else { + res = &port->io.res; + pci_addr = port->io.pci_addr; + min_size = 128; + flag |= OB_LO_IO; + } + size = resource_size(res); + if (size >= min_size) + mask = ~(size - 1) | flag; + else + dev_warn(port->dev, "res size 0x%llx less than minimum 0x%x\n", + (u64)size, min_size); + cpu_addr = res->start; + writel(lower_32_bits(cpu_addr), base); + writel(upper_32_bits(cpu_addr), base + 0x04); + writel(lower_32_bits(mask), base + 0x08); + writel(upper_32_bits(mask), base + 0x0c); + writel(lower_32_bits(pci_addr), base + 0x10); + writel(upper_32_bits(pci_addr), base + 0x14); +} + +static void xgene_pcie_setup_cfg_reg(void __iomem *csr_base, u64 addr) +{ + writel(lower_32_bits(addr), csr_base + CFGBARL); + writel(upper_32_bits(addr), csr_base + CFGBARH); + writel(EN_REG, csr_base + CFGCTL); +} + +static int xgene_pcie_parse_map_ranges(struct xgene_pcie_port *port, + u64 cfg_addr) +{ + struct device_node *np = port->node; + struct of_pci_range range; + struct of_pci_range_parser parser; + struct device *dev = port->dev; + + if (of_pci_range_parser_init(&parser, np)) { + dev_err(dev, "missing ranges property\n"); + return -EINVAL; + } + + /* Get the I/O, memory ranges from DT */ + for_each_of_pci_range(&parser, &range) { + struct resource *res = NULL; + u64 restype = range.flags & IORESOURCE_TYPE_BITS; + u64 end = range.cpu_addr + range.size - 1; + dev_dbg(port->dev, "0x%08x 0x%016llx..0x%016llx -> 0x%016llx\n", + range.flags, range.cpu_addr, end, range.pci_addr); + + switch (restype) { + case IORESOURCE_IO: + res = &port->io.res; + port->io.pci_addr = range.pci_addr; + of_pci_range_to_resource(&range, np, res); + xgene_pcie_setup_ob_reg(port, OMR1BARL, restype); + break; + case IORESOURCE_MEM: + res = &port->mem.res; + port->mem.pci_addr = range.pci_addr; + of_pci_range_to_resource(&range, np, res); + xgene_pcie_setup_ob_reg(port, OMR2BARL, restype); + break; + default: + dev_err(dev, "invalid io resource!"); + return -EINVAL; + } + } + xgene_pcie_setup_cfg_reg(port->csr_base, cfg_addr); + return 0; +} + +static void xgene_pcie_setup_pims(void *addr, u64 pim, u64 size) +{ + writel(lower_32_bits(pim), addr); + writel(upper_32_bits(pim) | EN_COHERENCY, addr + 0x04); + writel(lower_32_bits(size), addr + 0x10); + writel(upper_32_bits(size), addr + 0x14); +} + +/* + * X-Gene PCIe support maximum 3 inbound memory regions + * This function helps to select a region based on size of region + */ +static int xgene_pcie_select_ib_reg(u8 *ib_reg_mask, u64 size) +{ + if ((size > 4) && (size < SZ_16M) && !(*ib_reg_mask & (1 << 1))) { + *ib_reg_mask |= (1 << 1); + return 1; + } + + if ((size > SZ_1K) && (size < SZ_1T) && !(*ib_reg_mask & (1 << 0))) { + *ib_reg_mask |= (1 << 0); + return 0; + } + + if ((size > SZ_1M) && (size < SZ_1T) && !(*ib_reg_mask & (1 << 2))) { + *ib_reg_mask |= (1 << 2); + return 2; + } + return -EINVAL; +} + +static void xgene_pcie_setup_ib_reg(struct xgene_pcie_port *port, + struct of_pci_range *range, u8 *ib_reg_mask) +{ + void __iomem *csr_base = port->csr_base; + void __iomem *cfg_base = port->cfg_base; + void *bar_addr; + void *pim_addr; + u64 restype = range->flags & IORESOURCE_TYPE_BITS; + u64 cpu_addr = range->cpu_addr; + u64 pci_addr = range->pci_addr; + u64 size = range->size; + u64 mask = ~(size - 1) | EN_REG; + u32 flags = PCI_BASE_ADDRESS_MEM_TYPE_64; + u32 bar_low; + int region; + + region = xgene_pcie_select_ib_reg(ib_reg_mask, range->size); + if (region < 0) { + dev_warn(port->dev, "invalid pcie dma-range config\n"); + return; + } + + if (restype == PCI_BASE_ADDRESS_MEM_PREFETCH) + flags |= PCI_BASE_ADDRESS_MEM_PREFETCH; + + bar_low = pcie_bar_low_val((u32)cpu_addr, flags); + switch (region) { + case 0: + xgene_pcie_set_ib_mask(csr_base, BRIDGE_CFG_4, flags, size); + bar_addr = cfg_base + PCI_BASE_ADDRESS_0; + writel(bar_low, bar_addr); + writel(upper_32_bits(cpu_addr), bar_addr + 0x4); + pim_addr = csr_base + PIM1_1L; + break; + case 1: + bar_addr = csr_base + IBAR2; + writel(bar_low, bar_addr); + writel(lower_32_bits(mask), csr_base + IR2MSK); + pim_addr = csr_base + PIM2_1L; + break; + case 2: + bar_addr = csr_base + IBAR3L; + writel(bar_low, bar_addr); + writel(upper_32_bits(cpu_addr), bar_addr + 0x4); + writel(lower_32_bits(mask), csr_base + IR3MSKL); + writel(upper_32_bits(mask), csr_base + IR3MSKL + 0x4); + pim_addr = csr_base + PIM3_1L; + break; + } + + xgene_pcie_setup_pims(pim_addr, pci_addr, size); +} + +static int pci_dma_range_parser_init(struct of_pci_range_parser *parser, + struct device_node *node) +{ + const int na = 3, ns = 2; + int rlen; + + parser->node = node; + parser->pna = of_n_addr_cells(node); + parser->np = parser->pna + na + ns; + + parser->range = of_get_property(node, "ib-ranges", &rlen); + if (!parser->range) + return -ENOENT; + + parser->end = parser->range + rlen / sizeof(__be32); + return 0; +} + +static int xgene_pcie_parse_map_dma_ranges(struct xgene_pcie_port *port) +{ + struct device_node *np = port->node; + struct of_pci_range range; + struct of_pci_range_parser parser; + struct device *dev = port->dev; + u8 ib_reg_mask = 0; + + if (pci_dma_range_parser_init(&parser, np)) { + dev_err(dev, "missing ib-ranges property\n"); + return -EINVAL; + } + + /* Get the ib-ranges from DT */ + for_each_of_pci_range(&parser, &range) { + u64 end = range.cpu_addr + range.size - 1; + dev_dbg(port->dev, "0x%08x 0x%016llx..0x%016llx -> 0x%016llx\n", + range.flags, range.cpu_addr, end, range.pci_addr); + xgene_pcie_setup_ib_reg(port, &range, &ib_reg_mask); + } + return 0; +} + +static int xgene_pcie_setup(int nr, struct pci_sys_data *sys) +{ + struct xgene_pcie_port *pp = sys->private_data; + struct resource *io = &pp->realio; + + io->start = sys->domain * SZ_64K; + io->end = io->start + SZ_64K; + io->flags = pp->io.res.flags; + io->name = "PCI IO"; + pci_ioremap_io(io->start, pp->io.res.start); + + pci_add_resource_offset(&sys->resources, io, sys->io_offset); + sys->mem_offset = pp->mem.res.start - pp->mem.pci_addr; + pci_add_resource_offset(&sys->resources, &pp->mem.res, + sys->mem_offset); + return 1; +} + +static int xgene_pcie_probe_bridge(struct platform_device *pdev) +{ + struct device_node *np = of_node_get(pdev->dev.of_node); + struct xgene_pcie_port *port; + struct hw_pci xgene_pcie_hw; + u32 lanes = 0, speed = 0; + u64 cfg_addr = 0; + static u32 domain; + int ret; + + port = devm_kzalloc(&pdev->dev, sizeof(*port), GFP_KERNEL); + if (!port) + return -ENOMEM; + port->node = np; + port->dev = &pdev->dev; + + ret = xgene_pcie_map_reg(port, pdev, &cfg_addr); + if (ret) + return ret; + + ret = xgene_pcie_init_port(port); + if (ret) + goto skip; + xgene_pcie_program_core(port->csr_base); + xgene_pcie_setup_root_complex(port); + ret = xgene_pcie_parse_map_ranges(port, cfg_addr); + if (ret) + goto skip; + ret = xgene_pcie_parse_map_dma_ranges(port); + if (ret) + goto skip; + xgene_pcie_poll_linkup(port, &lanes, &speed); +skip: + if (!port->link_up) + dev_info(port->dev, "(rc) link down\n"); + else + dev_info(port->dev, "(rc) x%d gen-%d link up\n", + lanes, speed + 1); + platform_set_drvdata(pdev, port); + memset(&xgene_pcie_hw, 0, sizeof(xgene_pcie_hw)); + xgene_pcie_hw.domain = domain++; + xgene_pcie_hw.private_data = (void **)&port; + xgene_pcie_hw.nr_controllers = 1; + xgene_pcie_hw.setup = xgene_pcie_setup; + xgene_pcie_hw.map_irq = of_irq_parse_and_map_pci; + xgene_pcie_hw.ops = &xgene_pcie_ops; + pci_common_init(&xgene_pcie_hw); + return 0; +} + +static const struct of_device_id xgene_pcie_match_table[] = { + {.compatible = "apm,xgene-pcie",}, + {}, +}; + +static struct platform_driver xgene_pcie_driver = { + .driver = { + .name = "xgene-pcie", + .owner = THIS_MODULE, + .of_match_table = of_match_ptr(xgene_pcie_match_table), + }, + .probe = xgene_pcie_probe_bridge, +}; +module_platform_driver(xgene_pcie_driver); + +MODULE_AUTHOR("Tanmay Inamdar "); +MODULE_DESCRIPTION("APM X-Gene PCIe driver"); +MODULE_LICENSE("GPL v2"); --- linux-3.13.0.orig/drivers/pci/host/pcie-designware.c +++ linux-3.13.0/drivers/pci/host/pcie-designware.c @@ -498,13 +498,13 @@ dw_pcie_writel_rc(pp, PCIE_ATU_REGION_OUTBOUND | PCIE_ATU_REGION_INDEX1, PCIE_ATU_VIEWPORT); dw_pcie_writel_rc(pp, PCIE_ATU_TYPE_CFG1, PCIE_ATU_CR1); - dw_pcie_writel_rc(pp, PCIE_ATU_ENABLE, PCIE_ATU_CR2); dw_pcie_writel_rc(pp, pp->cfg1_base, PCIE_ATU_LOWER_BASE); dw_pcie_writel_rc(pp, (pp->cfg1_base >> 32), PCIE_ATU_UPPER_BASE); dw_pcie_writel_rc(pp, pp->cfg1_base + pp->config.cfg1_size - 1, PCIE_ATU_LIMIT); dw_pcie_writel_rc(pp, busdev, PCIE_ATU_LOWER_TARGET); dw_pcie_writel_rc(pp, 0, PCIE_ATU_UPPER_TARGET); + dw_pcie_writel_rc(pp, PCIE_ATU_ENABLE, PCIE_ATU_CR2); } static void dw_pcie_prog_viewport_mem_outbound(struct pcie_port *pp) @@ -513,7 +513,6 @@ dw_pcie_writel_rc(pp, PCIE_ATU_REGION_OUTBOUND | PCIE_ATU_REGION_INDEX0, PCIE_ATU_VIEWPORT); dw_pcie_writel_rc(pp, PCIE_ATU_TYPE_MEM, PCIE_ATU_CR1); - dw_pcie_writel_rc(pp, PCIE_ATU_ENABLE, PCIE_ATU_CR2); dw_pcie_writel_rc(pp, pp->mem_base, PCIE_ATU_LOWER_BASE); dw_pcie_writel_rc(pp, (pp->mem_base >> 32), PCIE_ATU_UPPER_BASE); dw_pcie_writel_rc(pp, pp->mem_base + pp->config.mem_size - 1, @@ -521,6 +520,7 @@ dw_pcie_writel_rc(pp, pp->config.mem_bus_addr, PCIE_ATU_LOWER_TARGET); dw_pcie_writel_rc(pp, upper_32_bits(pp->config.mem_bus_addr), PCIE_ATU_UPPER_TARGET); + dw_pcie_writel_rc(pp, PCIE_ATU_ENABLE, PCIE_ATU_CR2); } static void dw_pcie_prog_viewport_io_outbound(struct pcie_port *pp) @@ -529,7 +529,6 @@ dw_pcie_writel_rc(pp, PCIE_ATU_REGION_OUTBOUND | PCIE_ATU_REGION_INDEX1, PCIE_ATU_VIEWPORT); dw_pcie_writel_rc(pp, PCIE_ATU_TYPE_IO, PCIE_ATU_CR1); - dw_pcie_writel_rc(pp, PCIE_ATU_ENABLE, PCIE_ATU_CR2); dw_pcie_writel_rc(pp, pp->io_base, PCIE_ATU_LOWER_BASE); dw_pcie_writel_rc(pp, (pp->io_base >> 32), PCIE_ATU_UPPER_BASE); dw_pcie_writel_rc(pp, pp->io_base + pp->config.io_size - 1, @@ -537,6 +536,7 @@ dw_pcie_writel_rc(pp, pp->config.io_bus_addr, PCIE_ATU_LOWER_TARGET); dw_pcie_writel_rc(pp, upper_32_bits(pp->config.io_bus_addr), PCIE_ATU_UPPER_TARGET); + dw_pcie_writel_rc(pp, PCIE_ATU_ENABLE, PCIE_ATU_CR2); } static int dw_pcie_rd_other_conf(struct pcie_port *pp, struct pci_bus *bus, @@ -773,7 +773,7 @@ /* setup RC BARs */ dw_pcie_writel_rc(pp, 0x00000004, PCI_BASE_ADDRESS_0); - dw_pcie_writel_rc(pp, 0x00000004, PCI_BASE_ADDRESS_1); + dw_pcie_writel_rc(pp, 0x00000000, PCI_BASE_ADDRESS_1); /* setup interrupt pins */ dw_pcie_readl_rc(pp, PCI_INTERRUPT_LINE, &val); --- linux-3.13.0.orig/drivers/pci/hotplug/acpiphp_glue.c +++ linux-3.13.0/drivers/pci/hotplug/acpiphp_glue.c @@ -706,6 +706,17 @@ return (unsigned int)sta; } +static inline bool device_status_valid(unsigned int sta) +{ + /* + * ACPI spec says that _STA may return bit 0 clear with bit 3 set + * if the device is valid but does not require a device driver to be + * loaded (Section 6.3.7 of ACPI 5.0A). + */ + unsigned int mask = ACPI_STA_DEVICE_ENABLED | ACPI_STA_DEVICE_FUNCTIONING; + return (sta & mask) == mask; +} + /** * trim_stale_devices - remove PCI devices that are not responding. * @dev: PCI device to start walking the hierarchy from. @@ -721,7 +732,7 @@ unsigned long long sta; status = acpi_evaluate_integer(handle, "_STA", NULL, &sta); - alive = (ACPI_SUCCESS(status) && sta == ACPI_STA_ALL) + alive = (ACPI_SUCCESS(status) && device_status_valid(sta)) || acpiphp_no_hotplug(handle); } if (!alive) { @@ -764,7 +775,7 @@ mutex_lock(&slot->crit_sect); if (slot_no_hotplug(slot)) { ; /* do nothing */ - } else if (get_slot_status(slot) == ACPI_STA_ALL) { + } else if (device_status_valid(get_slot_status(slot))) { /* remove stale devices if any */ list_for_each_entry_safe(dev, tmp, &bus->devices, bus_list) --- linux-3.13.0.orig/drivers/pci/pci.c +++ linux-3.13.0/drivers/pci/pci.c @@ -1120,6 +1120,8 @@ static int do_pci_enable_device(struct pci_dev *dev, int bars) { int err; + u16 cmd; + u8 pin; err = pci_set_power_state(dev, PCI_D0); if (err < 0 && err != -EIO) @@ -1129,6 +1131,17 @@ return err; pci_fixup_device(pci_fixup_enable, dev); + if (dev->msi_enabled || dev->msix_enabled) + return 0; + + pci_read_config_byte(dev, PCI_INTERRUPT_PIN, &pin); + if (pin) { + pci_read_config_word(dev, PCI_COMMAND, &cmd); + if (cmd & PCI_COMMAND_INTX_DISABLE) + pci_write_config_word(dev, PCI_COMMAND, + cmd & ~PCI_COMMAND_INTX_DISABLE); + } + return 0; } --- linux-3.13.0.orig/drivers/pci/quirks.c +++ linux-3.13.0/drivers/pci/quirks.c @@ -40,6 +40,21 @@ DECLARE_PCI_FIXUP_CLASS_EARLY(PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_BRIDGE_HOST, 8, quirk_mmio_always_on); +/* The BAR0 ~ BAR4 of Marvell 9125 device can't be accessed +* by IO resource file, and need to skip the files +*/ +static void quirk_marvell_mask_bar(struct pci_dev *dev) +{ + int i; + + for (i = 0; i < 5; i++) + if (dev->resource[i].start) + dev->resource[i].start = + dev->resource[i].end = 0; +} +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_MARVELL_EXT, 0x9125, + quirk_marvell_mask_bar); + /* The Mellanox Tavor device gives false positive parity errors * Mark this device with a broken_parity_status, to allow * PCI scanning code to "skip" this now blacklisted device. --- linux-3.13.0.orig/drivers/pci/xen-pcifront.c +++ linux-3.13.0/drivers/pci/xen-pcifront.c @@ -20,6 +20,7 @@ #include #include #include +#include #include #define INVALID_GRANT_REF (0) @@ -1138,6 +1139,9 @@ if (!xen_pv_domain() || xen_initial_domain()) return -ENODEV; + if (!xen_has_pv_devices()) + return -ENODEV; + pci_frontend_registrar(1 /* enable */); return xenbus_register_frontend(&xenpci_driver); --- linux-3.13.0.orig/drivers/phy/Kconfig +++ linux-3.13.0/drivers/phy/Kconfig @@ -51,4 +51,11 @@ help Support for Display Port PHY found on Samsung EXYNOS SoCs. +config PHY_XGENE + tristate "APM X-Gene 15Gbps PHY support" + depends on HAS_IOMEM && OF && (ARM64 || COMPILE_TEST) + select GENERIC_PHY + help + This option enables support for APM X-Gene SoC multi-purpose PHY. + endmenu --- linux-3.13.0.orig/drivers/phy/Makefile +++ linux-3.13.0/drivers/phy/Makefile @@ -7,3 +7,4 @@ obj-$(CONFIG_PHY_EXYNOS_MIPI_VIDEO) += phy-exynos-mipi-video.o obj-$(CONFIG_OMAP_USB2) += phy-omap-usb2.o obj-$(CONFIG_TWL4030_USB) += phy-twl4030-usb.o +obj-$(CONFIG_PHY_XGENE) += phy-xgene.o --- linux-3.13.0.orig/drivers/phy/phy-core.c +++ linux-3.13.0/drivers/phy/phy-core.c @@ -161,6 +161,8 @@ dev_err(&phy->dev, "phy init failed --> %d\n", ret); goto out; } + } else { + ret = 0; /* Override possible ret == -ENOTSUPP */ } out: @@ -209,6 +211,8 @@ dev_err(&phy->dev, "phy poweron failed --> %d\n", ret); goto out; } + } else { + ret = 0; /* Override possible ret == -ENOTSUPP */ } out: --- linux-3.13.0.orig/drivers/phy/phy-xgene.c +++ linux-3.13.0/drivers/phy/phy-xgene.c @@ -0,0 +1,1750 @@ +/* + * AppliedMicro X-Gene Multi-purpose PHY driver + * + * Copyright (c) 2014, Applied Micro Circuits Corporation + * Author: Loc Ho + * Tuan Phan + * Suman Tripathi + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation; either version 2 of the License, or (at your + * option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * The APM X-Gene PHY consists of two PLL clock macro's (CMU) and lanes. + * The first PLL clock macro is used for internal reference clock. The second + * PLL clock macro is used to generate the clock for the PHY. This driver + * configures the first PLL CMU, the second PLL CMU, and programs the PHY to + * operate according to the mode of operation. The first PLL CMU is only + * required if internal clock is enabled. + * + * Logical Layer Out Of HW module units: + * + * ----------------- + * | Internal | |------| + * | Ref PLL CMU |----| | ------------- --------- + * ------------ ---- | MUX |-----|PHY PLL CMU|----| Serdes| + * | | | | --------- + * External Clock ------| | ------------- + * |------| + * + * The Ref PLL CMU CSR (Configuration System Registers) is accessed + * indirectly from the SDS offset at 0x2000. It is only required for + * internal reference clock. + * The PHY PLL CMU CSR is accessed indirectly from the SDS offset at 0x0000. + * The Serdes CSR is accessed indirectly from the SDS offset at 0x0400. + * + * The Ref PLL CMU can be located within the same PHY IP or outside the PHY IP + * due to shared Ref PLL CMU. For PHY with Ref PLL CMU shared with another IP, + * it is located outside the PHY IP. This is the case for the PHY located + * at 0x1f23a000 (SATA Port 4/5). For such PHY, another resource is required + * to located the SDS/Ref PLL CMU module and its clock for that IP enabled. + * + * Currently, this driver only supports Gen3 SATA mode with external clock. + */ +#include +#include +#include +#include +#include +#include + +/* Max 2 lanes per a PHY unit */ +#define MAX_LANE 2 + +/* Register offset inside the PHY */ +#define SERDES_PLL_INDIRECT_OFFSET 0x0000 +#define SERDES_PLL_REF_INDIRECT_OFFSET 0x2000 +#define SERDES_INDIRECT_OFFSET 0x0400 +#define SERDES_LANE_STRIDE 0x0200 + +/* Some default Serdes parameters */ +#define DEFAULT_SATA_TXBOOST_GAIN { 0x1e, 0x1e, 0x1e } +#define DEFAULT_SATA_TXEYEDIRECTION { 0x0, 0x0, 0x0 } +#define DEFAULT_SATA_TXEYETUNING { 0xa, 0xa, 0xa } +#define DEFAULT_SATA_SPD_SEL { 0x1, 0x3, 0x7 } +#define DEFAULT_SATA_TXAMP { 0x8, 0x8, 0x8 } +#define DEFAULT_SATA_TXCN1 { 0x2, 0x2, 0x2 } +#define DEFAULT_SATA_TXCN2 { 0x0, 0x0, 0x0 } +#define DEFAULT_SATA_TXCP1 { 0xa, 0xa, 0xa } + +#define SATA_SPD_SEL_GEN3 0x7 +#define SATA_SPD_SEL_GEN2 0x3 +#define SATA_SPD_SEL_GEN1 0x1 + +#define SSC_DISABLE 0 +#define SSC_ENABLE 1 + +#define FBDIV_VAL_50M 0x77 +#define REFDIV_VAL_50M 0x1 +#define FBDIV_VAL_100M 0x3B +#define REFDIV_VAL_100M 0x0 + +/* SATA Clock/Reset CSR */ +#define SATACLKENREG 0x00000000 +#define SATA0_CORE_CLKEN 0x00000002 +#define SATA1_CORE_CLKEN 0x00000004 +#define SATASRESETREG 0x00000004 +#define SATA_MEM_RESET_MASK 0x00000020 +#define SATA_MEM_RESET_RD(src) (((src) & 0x00000020) >> 5) +#define SATA_SDS_RESET_MASK 0x00000004 +#define SATA_CSR_RESET_MASK 0x00000001 +#define SATA_CORE_RESET_MASK 0x00000002 +#define SATA_PMCLK_RESET_MASK 0x00000010 +#define SATA_PCLK_RESET_MASK 0x00000008 + +/* SDS CSR used for PHY Indirect access */ +#define SATA_ENET_SDS_PCS_CTL0 0x00000000 +#define REGSPEC_CFG_I_TX_WORDMODE0_SET(dst, src) \ + (((dst) & ~0x00070000) | (((u32) (src) << 16) & 0x00070000)) +#define REGSPEC_CFG_I_RX_WORDMODE0_SET(dst, src) \ + (((dst) & ~0x00e00000) | (((u32) (src) << 21) & 0x00e00000)) +#define SATA_ENET_SDS_CTL0 0x0000000c +#define REGSPEC_CFG_I_CUSTOMER_PIN_MODE0_SET(dst, src) \ + (((dst) & ~0x00007fff) | (((u32) (src)) & 0x00007fff)) +#define SATA_ENET_SDS_CTL1 0x00000010 +#define CFG_I_SPD_SEL_CDR_OVR1_SET(dst, src) \ + (((dst) & ~0x0000000f) | (((u32) (src)) & 0x0000000f)) +#define SATA_ENET_SDS_RST_CTL 0x00000024 +#define SATA_ENET_SDS_IND_CMD_REG 0x0000003c +#define CFG_IND_WR_CMD_MASK 0x00000001 +#define CFG_IND_RD_CMD_MASK 0x00000002 +#define CFG_IND_CMD_DONE_MASK 0x00000004 +#define CFG_IND_ADDR_SET(dst, src) \ + (((dst) & ~0x003ffff0) | (((u32) (src) << 4) & 0x003ffff0)) +#define SATA_ENET_SDS_IND_RDATA_REG 0x00000040 +#define SATA_ENET_SDS_IND_WDATA_REG 0x00000044 +#define SATA_ENET_CLK_MACRO_REG 0x0000004c +#define I_RESET_B_SET(dst, src) \ + (((dst) & ~0x00000001) | (((u32) (src)) & 0x00000001)) +#define I_PLL_FBDIV_SET(dst, src) \ + (((dst) & ~0x001ff000) | (((u32) (src) << 12) & 0x001ff000)) +#define I_CUSTOMEROV_SET(dst, src) \ + (((dst) & ~0x00000f80) | (((u32) (src) << 7) & 0x00000f80)) +#define O_PLL_LOCK_RD(src) (((src) & 0x40000000) >> 30) +#define O_PLL_READY_RD(src) (((src) & 0x80000000) >> 31) + +/* PLL Clock Macro Unit (CMU) CSR accessing from SDS indirectly */ +#define CMU_REG0 0x00000 +#define CMU_REG0_PLL_REF_SEL_MASK 0x00002000 +#define CMU_REG0_PLL_REF_SEL_SET(dst, src) \ + (((dst) & ~0x00002000) | (((u32) (src) << 13) & 0x00002000)) +#define CMU_REG0_PDOWN_MASK 0x00004000 +#define CMU_REG0_CAL_COUNT_RESOL_SET(dst, src) \ + (((dst) & ~0x000000e0) | (((u32) (src) << 5) & 0x000000e0)) +#define CMU_REG1 0x00002 +#define CMU_REG1_PLL_CP_SET(dst, src) \ + (((dst) & ~0x00003c00) | (((u32) (src) << 10) & 0x00003c00)) +#define CMU_REG1_PLL_MANUALCAL_SET(dst, src) \ + (((dst) & ~0x00000008) | (((u32) (src) << 3) & 0x00000008)) +#define CMU_REG1_PLL_CP_SEL_SET(dst, src) \ + (((dst) & ~0x000003e0) | (((u32) (src) << 5) & 0x000003e0)) +#define CMU_REG1_REFCLK_CMOS_SEL_MASK 0x00000001 +#define CMU_REG1_REFCLK_CMOS_SEL_SET(dst, src) \ + (((dst) & ~0x00000001) | (((u32) (src) << 0) & 0x00000001)) +#define CMU_REG2 0x00004 +#define CMU_REG2_PLL_REFDIV_SET(dst, src) \ + (((dst) & ~0x0000c000) | (((u32) (src) << 14) & 0x0000c000)) +#define CMU_REG2_PLL_LFRES_SET(dst, src) \ + (((dst) & ~0x0000001e) | (((u32) (src) << 1) & 0x0000001e)) +#define CMU_REG2_PLL_FBDIV_SET(dst, src) \ + (((dst) & ~0x00003fe0) | (((u32) (src) << 5) & 0x00003fe0)) +#define CMU_REG3 0x00006 +#define CMU_REG3_VCOVARSEL_SET(dst, src) \ + (((dst) & ~0x0000000f) | (((u32) (src) << 0) & 0x0000000f)) +#define CMU_REG3_VCO_MOMSEL_INIT_SET(dst, src) \ + (((dst) & ~0x000003f0) | (((u32) (src) << 4) & 0x000003f0)) +#define CMU_REG3_VCO_MANMOMSEL_SET(dst, src) \ + (((dst) & ~0x0000fc00) | (((u32) (src) << 10) & 0x0000fc00)) +#define CMU_REG4 0x00008 +#define CMU_REG5 0x0000a +#define CMU_REG5_PLL_LFSMCAP_SET(dst, src) \ + (((dst) & ~0x0000c000) | (((u32) (src) << 14) & 0x0000c000)) +#define CMU_REG5_PLL_LOCK_RESOLUTION_SET(dst, src) \ + (((dst) & ~0x0000000e) | (((u32) (src) << 1) & 0x0000000e)) +#define CMU_REG5_PLL_LFCAP_SET(dst, src) \ + (((dst) & ~0x00003000) | (((u32) (src) << 12) & 0x00003000)) +#define CMU_REG5_PLL_RESETB_MASK 0x00000001 +#define CMU_REG6 0x0000c +#define CMU_REG6_PLL_VREGTRIM_SET(dst, src) \ + (((dst) & ~0x00000600) | (((u32) (src) << 9) & 0x00000600)) +#define CMU_REG6_MAN_PVT_CAL_SET(dst, src) \ + (((dst) & ~0x00000004) | (((u32) (src) << 2) & 0x00000004)) +#define CMU_REG7 0x0000e +#define CMU_REG7_PLL_CALIB_DONE_RD(src) ((0x00004000 & (u32) (src)) >> 14) +#define CMU_REG7_VCO_CAL_FAIL_RD(src) ((0x00000c00 & (u32) (src)) >> 10) +#define CMU_REG8 0x00010 +#define CMU_REG9 0x00012 +#define CMU_REG9_WORD_LEN_8BIT 0x000 +#define CMU_REG9_WORD_LEN_10BIT 0x001 +#define CMU_REG9_WORD_LEN_16BIT 0x002 +#define CMU_REG9_WORD_LEN_20BIT 0x003 +#define CMU_REG9_WORD_LEN_32BIT 0x004 +#define CMU_REG9_WORD_LEN_40BIT 0x005 +#define CMU_REG9_WORD_LEN_64BIT 0x006 +#define CMU_REG9_WORD_LEN_66BIT 0x007 +#define CMU_REG9_TX_WORD_MODE_CH1_SET(dst, src) \ + (((dst) & ~0x00000380) | (((u32) (src) << 7) & 0x00000380)) +#define CMU_REG9_TX_WORD_MODE_CH0_SET(dst, src) \ + (((dst) & ~0x00000070) | (((u32) (src) << 4) & 0x00000070)) +#define CMU_REG9_PLL_POST_DIVBY2_SET(dst, src) \ + (((dst) & ~0x00000008) | (((u32) (src) << 3) & 0x00000008)) +#define CMU_REG9_VBG_BYPASSB_SET(dst, src) \ + (((dst) & ~0x00000004) | (((u32) (src) << 2) & 0x00000004)) +#define CMU_REG9_IGEN_BYPASS_SET(dst, src) \ + (((dst) & ~0x00000002) | (((u32) (src) << 1) & 0x00000002)) +#define CMU_REG10 0x00014 +#define CMU_REG10_VREG_REFSEL_SET(dst, src) \ + (((dst) & ~0x00000001) | (((u32) (src) << 0) & 0x00000001)) +#define CMU_REG11 0x00016 +#define CMU_REG12 0x00018 +#define CMU_REG12_STATE_DELAY9_SET(dst, src) \ + (((dst) & ~0x000000f0) | (((u32) (src) << 4) & 0x000000f0)) +#define CMU_REG13 0x0001a +#define CMU_REG14 0x0001c +#define CMU_REG15 0x0001e +#define CMU_REG16 0x00020 +#define CMU_REG16_PVT_DN_MAN_ENA_MASK 0x00000001 +#define CMU_REG16_PVT_UP_MAN_ENA_MASK 0x00000002 +#define CMU_REG16_VCOCAL_WAIT_BTW_CODE_SET(dst, src) \ + (((dst) & ~0x0000001c) | (((u32) (src) << 2) & 0x0000001c)) +#define CMU_REG16_CALIBRATION_DONE_OVERRIDE_SET(dst, src) \ + (((dst) & ~0x00000040) | (((u32) (src) << 6) & 0x00000040)) +#define CMU_REG16_BYPASS_PLL_LOCK_SET(dst, src) \ + (((dst) & ~0x00000020) | (((u32) (src) << 5) & 0x00000020)) +#define CMU_REG17 0x00022 +#define CMU_REG17_PVT_CODE_R2A_SET(dst, src) \ + (((dst) & ~0x00007f00) | (((u32) (src) << 8) & 0x00007f00)) +#define CMU_REG17_RESERVED_7_SET(dst, src) \ + (((dst) & ~0x000000e0) | (((u32) (src) << 5) & 0x000000e0)) +#define CMU_REG17_PVT_TERM_MAN_ENA_MASK 0x00008000 +#define CMU_REG18 0x00024 +#define CMU_REG19 0x00026 +#define CMU_REG20 0x00028 +#define CMU_REG21 0x0002a +#define CMU_REG22 0x0002c +#define CMU_REG23 0x0002e +#define CMU_REG24 0x00030 +#define CMU_REG25 0x00032 +#define CMU_REG26 0x00034 +#define CMU_REG26_FORCE_PLL_LOCK_SET(dst, src) \ + (((dst) & ~0x00000001) | (((u32) (src) << 0) & 0x00000001)) +#define CMU_REG27 0x00036 +#define CMU_REG28 0x00038 +#define CMU_REG29 0x0003a +#define CMU_REG30 0x0003c +#define CMU_REG30_LOCK_COUNT_SET(dst, src) \ + (((dst) & ~0x00000006) | (((u32) (src) << 1) & 0x00000006)) +#define CMU_REG30_PCIE_MODE_SET(dst, src) \ + (((dst) & ~0x00000008) | (((u32) (src) << 3) & 0x00000008)) +#define CMU_REG31 0x0003e +#define CMU_REG32 0x00040 +#define CMU_REG32_FORCE_VCOCAL_START_MASK 0x00004000 +#define CMU_REG32_PVT_CAL_WAIT_SEL_SET(dst, src) \ + (((dst) & ~0x00000006) | (((u32) (src) << 1) & 0x00000006)) +#define CMU_REG32_IREF_ADJ_SET(dst, src) \ + (((dst) & ~0x00000180) | (((u32) (src) << 7) & 0x00000180)) +#define CMU_REG33 0x00042 +#define CMU_REG34 0x00044 +#define CMU_REG34_VCO_CAL_VTH_LO_MAX_SET(dst, src) \ + (((dst) & ~0x0000000f) | (((u32) (src) << 0) & 0x0000000f)) +#define CMU_REG34_VCO_CAL_VTH_HI_MAX_SET(dst, src) \ + (((dst) & ~0x00000f00) | (((u32) (src) << 8) & 0x00000f00)) +#define CMU_REG34_VCO_CAL_VTH_LO_MIN_SET(dst, src) \ + (((dst) & ~0x000000f0) | (((u32) (src) << 4) & 0x000000f0)) +#define CMU_REG34_VCO_CAL_VTH_HI_MIN_SET(dst, src) \ + (((dst) & ~0x0000f000) | (((u32) (src) << 12) & 0x0000f000)) +#define CMU_REG35 0x00046 +#define CMU_REG35_PLL_SSC_MOD_SET(dst, src) \ + (((dst) & ~0x0000fe00) | (((u32) (src) << 9) & 0x0000fe00)) +#define CMU_REG36 0x00048 +#define CMU_REG36_PLL_SSC_EN_SET(dst, src) \ + (((dst) & ~0x00000010) | (((u32) (src) << 4) & 0x00000010)) +#define CMU_REG36_PLL_SSC_VSTEP_SET(dst, src) \ + (((dst) & ~0x0000ffc0) | (((u32) (src) << 6) & 0x0000ffc0)) +#define CMU_REG36_PLL_SSC_DSMSEL_SET(dst, src) \ + (((dst) & ~0x00000020) | (((u32) (src) << 5) & 0x00000020)) +#define CMU_REG37 0x0004a +#define CMU_REG38 0x0004c +#define CMU_REG39 0x0004e + +/* PHY lane CSR accessing from SDS indirectly */ +#define RXTX_REG0 0x000 +#define RXTX_REG0_CTLE_EQ_HR_SET(dst, src) \ + (((dst) & ~0x0000f800) | (((u32) (src) << 11) & 0x0000f800)) +#define RXTX_REG0_CTLE_EQ_QR_SET(dst, src) \ + (((dst) & ~0x000007c0) | (((u32) (src) << 6) & 0x000007c0)) +#define RXTX_REG0_CTLE_EQ_FR_SET(dst, src) \ + (((dst) & ~0x0000003e) | (((u32) (src) << 1) & 0x0000003e)) +#define RXTX_REG1 0x002 +#define RXTX_REG1_RXACVCM_SET(dst, src) \ + (((dst) & ~0x0000f000) | (((u32) (src) << 12) & 0x0000f000)) +#define RXTX_REG1_CTLE_EQ_SET(dst, src) \ + (((dst) & ~0x00000f80) | (((u32) (src) << 7) & 0x00000f80)) +#define RXTX_REG1_RXVREG1_SET(dst, src) \ + (((dst) & ~0x00000060) | (((u32) (src) << 5) & 0x00000060)) +#define RXTX_REG1_RXIREF_ADJ_SET(dst, src) \ + (((dst) & ~0x00000006) | (((u32) (src) << 1) & 0x00000006)) +#define RXTX_REG2 0x004 +#define RXTX_REG2_VTT_ENA_SET(dst, src) \ + (((dst) & ~0x00000100) | (((u32) (src) << 8) & 0x00000100)) +#define RXTX_REG2_TX_FIFO_ENA_SET(dst, src) \ + (((dst) & ~0x00000020) | (((u32) (src) << 5) & 0x00000020)) +#define RXTX_REG2_VTT_SEL_SET(dst, src) \ + (((dst) & ~0x000000c0) | (((u32) (src) << 6) & 0x000000c0)) +#define RXTX_REG4 0x008 +#define RXTX_REG4_TX_LOOPBACK_BUF_EN_MASK 0x00000040 +#define RXTX_REG4_TX_DATA_RATE_SET(dst, src) \ + (((dst) & ~0x0000c000) | (((u32) (src) << 14) & 0x0000c000)) +#define RXTX_REG4_TX_WORD_MODE_SET(dst, src) \ + (((dst) & ~0x00003800) | (((u32) (src) << 11) & 0x00003800)) +#define RXTX_REG5 0x00a +#define RXTX_REG5_TX_CN1_SET(dst, src) \ + (((dst) & ~0x0000f800) | (((u32) (src) << 11) & 0x0000f800)) +#define RXTX_REG5_TX_CP1_SET(dst, src) \ + (((dst) & ~0x000007e0) | (((u32) (src) << 5) & 0x000007e0)) +#define RXTX_REG5_TX_CN2_SET(dst, src) \ + (((dst) & ~0x0000001f) | (((u32) (src) << 0) & 0x0000001f)) +#define RXTX_REG6 0x00c +#define RXTX_REG6_TXAMP_CNTL_SET(dst, src) \ + (((dst) & ~0x00000780) | (((u32) (src) << 7) & 0x00000780)) +#define RXTX_REG6_TXAMP_ENA_SET(dst, src) \ + (((dst) & ~0x00000040) | (((u32) (src) << 6) & 0x00000040)) +#define RXTX_REG6_RX_BIST_ERRCNT_RD_SET(dst, src) \ + (((dst) & ~0x00000001) | (((u32) (src) << 0) & 0x00000001)) +#define RXTX_REG6_TX_IDLE_SET(dst, src) \ + (((dst) & ~0x00000008) | (((u32) (src) << 3) & 0x00000008)) +#define RXTX_REG6_RX_BIST_RESYNC_SET(dst, src) \ + (((dst) & ~0x00000002) | (((u32) (src) << 1) & 0x00000002)) +#define RXTX_REG7 0x00e +#define RXTX_REG7_RESETB_RXD_MASK 0x00000100 +#define RXTX_REG7_RESETB_RXA_MASK 0x00000080 +#define RXTX_REG7_BIST_ENA_RX_SET(dst, src) \ + (((dst) & ~0x00000040) | (((u32) (src) << 6) & 0x00000040)) +#define RXTX_REG7_RX_WORD_MODE_SET(dst, src) \ + (((dst) & ~0x00003800) | (((u32) (src) << 11) & 0x00003800)) +#define RXTX_REG8 0x010 +#define RXTX_REG8_CDR_LOOP_ENA_SET(dst, src) \ + (((dst) & ~0x00004000) | (((u32) (src) << 14) & 0x00004000)) +#define RXTX_REG8_CDR_BYPASS_RXLOS_SET(dst, src) \ + (((dst) & ~0x00000800) | (((u32) (src) << 11) & 0x00000800)) +#define RXTX_REG8_SSC_ENABLE_SET(dst, src) \ + (((dst) & ~0x00000200) | (((u32) (src) << 9) & 0x00000200)) +#define RXTX_REG8_SD_VREF_SET(dst, src) \ + (((dst) & ~0x000000f0) | (((u32) (src) << 4) & 0x000000f0)) +#define RXTX_REG8_SD_DISABLE_SET(dst, src) \ + (((dst) & ~0x00000100) | (((u32) (src) << 8) & 0x00000100)) +#define RXTX_REG7 0x00e +#define RXTX_REG7_RESETB_RXD_SET(dst, src) \ + (((dst) & ~0x00000100) | (((u32) (src) << 8) & 0x00000100)) +#define RXTX_REG7_RESETB_RXA_SET(dst, src) \ + (((dst) & ~0x00000080) | (((u32) (src) << 7) & 0x00000080)) +#define RXTX_REG7_LOOP_BACK_ENA_CTLE_MASK 0x00004000 +#define RXTX_REG7_LOOP_BACK_ENA_CTLE_SET(dst, src) \ + (((dst) & ~0x00004000) | (((u32) (src) << 14) & 0x00004000)) +#define RXTX_REG11 0x016 +#define RXTX_REG11_PHASE_ADJUST_LIMIT_SET(dst, src) \ + (((dst) & ~0x0000f800) | (((u32) (src) << 11) & 0x0000f800)) +#define RXTX_REG12 0x018 +#define RXTX_REG12_LATCH_OFF_ENA_SET(dst, src) \ + (((dst) & ~0x00002000) | (((u32) (src) << 13) & 0x00002000)) +#define RXTX_REG12_SUMOS_ENABLE_SET(dst, src) \ + (((dst) & ~0x00000004) | (((u32) (src) << 2) & 0x00000004)) +#define RXTX_REG12_RX_DET_TERM_ENABLE_MASK 0x00000002 +#define RXTX_REG12_RX_DET_TERM_ENABLE_SET(dst, src) \ + (((dst) & ~0x00000002) | (((u32) (src) << 1) & 0x00000002)) +#define RXTX_REG13 0x01a +#define RXTX_REG14 0x01c +#define RXTX_REG14_CLTE_LATCAL_MAN_PROG_SET(dst, src) \ + (((dst) & ~0x0000003f) | (((u32) (src) << 0) & 0x0000003f)) +#define RXTX_REG14_CTLE_LATCAL_MAN_ENA_SET(dst, src) \ + (((dst) & ~0x00000040) | (((u32) (src) << 6) & 0x00000040)) +#define RXTX_REG26 0x034 +#define RXTX_REG26_PERIOD_ERROR_LATCH_SET(dst, src) \ + (((dst) & ~0x00003800) | (((u32) (src) << 11) & 0x00003800)) +#define RXTX_REG26_BLWC_ENA_SET(dst, src) \ + (((dst) & ~0x00000008) | (((u32) (src) << 3) & 0x00000008)) +#define RXTX_REG21 0x02a +#define RXTX_REG21_DO_LATCH_CALOUT_RD(src) ((0x0000fc00 & (u32) (src)) >> 10) +#define RXTX_REG21_XO_LATCH_CALOUT_RD(src) ((0x000003f0 & (u32) (src)) >> 4) +#define RXTX_REG21_LATCH_CAL_FAIL_ODD_RD(src) ((0x0000000f & (u32)(src))) +#define RXTX_REG22 0x02c +#define RXTX_REG22_SO_LATCH_CALOUT_RD(src) ((0x000003f0 & (u32) (src)) >> 4) +#define RXTX_REG22_EO_LATCH_CALOUT_RD(src) ((0x0000fc00 & (u32) (src)) >> 10) +#define RXTX_REG22_LATCH_CAL_FAIL_EVEN_RD(src) ((0x0000000f & (u32)(src))) +#define RXTX_REG23 0x02e +#define RXTX_REG23_DE_LATCH_CALOUT_RD(src) ((0x0000fc00 & (u32) (src)) >> 10) +#define RXTX_REG23_XE_LATCH_CALOUT_RD(src) ((0x000003f0 & (u32) (src)) >> 4) +#define RXTX_REG24 0x030 +#define RXTX_REG24_EE_LATCH_CALOUT_RD(src) ((0x0000fc00 & (u32) (src)) >> 10) +#define RXTX_REG24_SE_LATCH_CALOUT_RD(src) ((0x000003f0 & (u32) (src)) >> 4) +#define RXTX_REG27 0x036 +#define RXTX_REG28 0x038 +#define RXTX_REG31 0x03e +#define RXTX_REG38 0x04c +#define RXTX_REG38_CUSTOMER_PINMODE_INV_SET(dst, src) \ + (((dst) & 0x0000fffe) | (((u32) (src) << 1) & 0x0000fffe)) +#define RXTX_REG39 0x04e +#define RXTX_REG40 0x050 +#define RXTX_REG41 0x052 +#define RXTX_REG42 0x054 +#define RXTX_REG43 0x056 +#define RXTX_REG44 0x058 +#define RXTX_REG45 0x05a +#define RXTX_REG46 0x05c +#define RXTX_REG47 0x05e +#define RXTX_REG48 0x060 +#define RXTX_REG49 0x062 +#define RXTX_REG50 0x064 +#define RXTX_REG51 0x066 +#define RXTX_REG52 0x068 +#define RXTX_REG53 0x06a +#define RXTX_REG54 0x06c +#define RXTX_REG55 0x06e +#define RXTX_REG61 0x07a +#define RXTX_REG61_ISCAN_INBERT_SET(dst, src) \ + (((dst) & ~0x00000010) | (((u32) (src) << 4) & 0x00000010)) +#define RXTX_REG61_LOADFREQ_SHIFT_SET(dst, src) \ + (((dst) & ~0x00000008) | (((u32) (src) << 3) & 0x00000008)) +#define RXTX_REG61_EYE_COUNT_WIDTH_SEL_SET(dst, src) \ + (((dst) & ~0x000000c0) | (((u32) (src) << 6) & 0x000000c0)) +#define RXTX_REG61_SPD_SEL_CDR_SET(dst, src) \ + (((dst) & ~0x00003c00) | (((u32) (src) << 10) & 0x00003c00)) +#define RXTX_REG62 0x07c +#define RXTX_REG62_PERIOD_H1_QLATCH_SET(dst, src) \ + (((dst) & ~0x00003800) | (((u32) (src) << 11) & 0x00003800)) +#define RXTX_REG81 0x0a2 +#define RXTX_REG89_MU_TH7_SET(dst, src) \ + (((dst) & ~0x0000f800) | (((u32) (src) << 11) & 0x0000f800)) +#define RXTX_REG89_MU_TH8_SET(dst, src) \ + (((dst) & ~0x000007c0) | (((u32) (src) << 6) & 0x000007c0)) +#define RXTX_REG89_MU_TH9_SET(dst, src) \ + (((dst) & ~0x0000003e) | (((u32) (src) << 1) & 0x0000003e)) +#define RXTX_REG96 0x0c0 +#define RXTX_REG96_MU_FREQ1_SET(dst, src) \ + (((dst) & ~0x0000f800) | (((u32) (src) << 11) & 0x0000f800)) +#define RXTX_REG96_MU_FREQ2_SET(dst, src) \ + (((dst) & ~0x000007c0) | (((u32) (src) << 6) & 0x000007c0)) +#define RXTX_REG96_MU_FREQ3_SET(dst, src) \ + (((dst) & ~0x0000003e) | (((u32) (src) << 1) & 0x0000003e)) +#define RXTX_REG99 0x0c6 +#define RXTX_REG99_MU_PHASE1_SET(dst, src) \ + (((dst) & ~0x0000f800) | (((u32) (src) << 11) & 0x0000f800)) +#define RXTX_REG99_MU_PHASE2_SET(dst, src) \ + (((dst) & ~0x000007c0) | (((u32) (src) << 6) & 0x000007c0)) +#define RXTX_REG99_MU_PHASE3_SET(dst, src) \ + (((dst) & ~0x0000003e) | (((u32) (src) << 1) & 0x0000003e)) +#define RXTX_REG102 0x0cc +#define RXTX_REG102_FREQLOOP_LIMIT_SET(dst, src) \ + (((dst) & ~0x00000060) | (((u32) (src) << 5) & 0x00000060)) +#define RXTX_REG114 0x0e4 +#define RXTX_REG121 0x0f2 +#define RXTX_REG121_SUMOS_CAL_CODE_RD(src) ((0x0000003e & (u32)(src)) >> 0x1) +#define RXTX_REG125 0x0fa +#define RXTX_REG125_PQ_REG_SET(dst, src) \ + (((dst) & ~0x0000fe00) | (((u32) (src) << 9) & 0x0000fe00)) +#define RXTX_REG125_SIGN_PQ_SET(dst, src) \ + (((dst) & ~0x00000100) | (((u32) (src) << 8) & 0x00000100)) +#define RXTX_REG125_SIGN_PQ_2C_SET(dst, src) \ + (((dst) & ~0x00000080) | (((u32) (src) << 7) & 0x00000080)) +#define RXTX_REG125_PHZ_MANUALCODE_SET(dst, src) \ + (((dst) & ~0x0000007c) | (((u32) (src) << 2) & 0x0000007c)) +#define RXTX_REG125_PHZ_MANUAL_SET(dst, src) \ + (((dst) & ~0x00000002) | (((u32) (src) << 1) & 0x00000002)) +#define RXTX_REG127 0x0fe +#define RXTX_REG127_FORCE_SUM_CAL_START_MASK 0x00000002 +#define RXTX_REG127_FORCE_LAT_CAL_START_MASK 0x00000004 +#define RXTX_REG127_FORCE_SUM_CAL_START_SET(dst, src) \ + (((dst) & ~0x00000002) | (((u32) (src) << 1) & 0x00000002)) +#define RXTX_REG127_FORCE_LAT_CAL_START_SET(dst, src) \ + (((dst) & ~0x00000004) | (((u32) (src) << 2) & 0x00000004)) +#define RXTX_REG127_LATCH_MAN_CAL_ENA_SET(dst, src) \ + (((dst) & ~0x00000008) | (((u32) (src) << 3) & 0x00000008)) +#define RXTX_REG127_DO_LATCH_MANCAL_SET(dst, src) \ + (((dst) & ~0x0000fc00) | (((u32) (src) << 10) & 0x0000fc00)) +#define RXTX_REG127_XO_LATCH_MANCAL_SET(dst, src) \ + (((dst) & ~0x000003f0) | (((u32) (src) << 4) & 0x000003f0)) +#define RXTX_REG128 0x100 +#define RXTX_REG128_LATCH_CAL_WAIT_SEL_SET(dst, src) \ + (((dst) & ~0x0000000c) | (((u32) (src) << 2) & 0x0000000c)) +#define RXTX_REG128_EO_LATCH_MANCAL_SET(dst, src) \ + (((dst) & ~0x0000fc00) | (((u32) (src) << 10) & 0x0000fc00)) +#define RXTX_REG128_SO_LATCH_MANCAL_SET(dst, src) \ + (((dst) & ~0x000003f0) | (((u32) (src) << 4) & 0x000003f0)) +#define RXTX_REG129 0x102 +#define RXTX_REG129_DE_LATCH_MANCAL_SET(dst, src) \ + (((dst) & ~0x0000fc00) | (((u32) (src) << 10) & 0x0000fc00)) +#define RXTX_REG129_XE_LATCH_MANCAL_SET(dst, src) \ + (((dst) & ~0x000003f0) | (((u32) (src) << 4) & 0x000003f0)) +#define RXTX_REG130 0x104 +#define RXTX_REG130_EE_LATCH_MANCAL_SET(dst, src) \ + (((dst) & ~0x0000fc00) | (((u32) (src) << 10) & 0x0000fc00)) +#define RXTX_REG130_SE_LATCH_MANCAL_SET(dst, src) \ + (((dst) & ~0x000003f0) | (((u32) (src) << 4) & 0x000003f0)) +#define RXTX_REG145 0x122 +#define RXTX_REG145_TX_IDLE_SATA_SET(dst, src) \ + (((dst) & ~0x00000001) | (((u32) (src) << 0) & 0x00000001)) +#define RXTX_REG145_RXES_ENA_SET(dst, src) \ + (((dst) & ~0x00000002) | (((u32) (src) << 1) & 0x00000002)) +#define RXTX_REG145_RXDFE_CONFIG_SET(dst, src) \ + (((dst) & ~0x0000c000) | (((u32) (src) << 14) & 0x0000c000)) +#define RXTX_REG145_RXVWES_LATENA_SET(dst, src) \ + (((dst) & ~0x00000004) | (((u32) (src) << 2) & 0x00000004)) +#define RXTX_REG147 0x126 +#define RXTX_REG148 0x128 + +/* Clock macro type */ +enum cmu_type_t { + REF_CMU = 0, /* Clock macro is the internal reference clock */ + PHY_CMU = 1, /* Clock macro is the PLL for the Serdes */ +}; + +enum mux_type_t { + MUX_SELECT_ATA = 0, /* Switch the MUX to ATA */ + MUX_SELECT_SGMMII = 0, /* Switch the MUX to SGMII */ +}; + +enum clk_type_t { + CLK_EXT_DIFF = 0, /* External differential */ + CLK_INT_DIFF = 1, /* Internal differential */ + CLK_INT_SING = 2, /* Internal single ended */ +}; + +enum phy_mode { + MODE_SATA = 0, /* List them for simple reference */ + MODE_SGMII = 1, + MODE_PCIE = 2, + MODE_USB = 3, + MODE_XFI = 4, + MODE_MAX +}; + +struct xgene_sata_override_param { + u32 speed[MAX_LANE]; /* Index for override parameter per lane */ + u32 txspeed[3]; /* Tx speed */ + u32 txboostgain[MAX_LANE*3]; /* Tx freq boost and gain control */ + u32 txeyetuning[MAX_LANE*3]; /* Tx eye tuning */ + u32 txeyedirection[MAX_LANE*3]; /* Tx eye tuning direction */ + u32 txamplitude[MAX_LANE*3]; /* Tx amplitude control */ + u32 txprecursor_cn1[MAX_LANE*3]; /* Tx emphasis taps 1st pre-cursor */ + u32 txprecursor_cn2[MAX_LANE*3]; /* Tx emphasis taps 2nd pre-cursor */ + u32 txpostcursor_cp1[MAX_LANE*3]; /* Tx emphasis taps post-cursor */ +}; + +struct xgene_phy_ctx { + struct device *dev; + struct phy *phy; + enum phy_mode mode; /* Mode of operation */ + enum clk_type_t clk_type; /* Input clock selection */ + void __iomem *sds_base; /* PHY CSR base addr */ + struct clk *clk; /* Optional clock */ + + /* Override Serdes parameters */ + struct xgene_sata_override_param sata_param; +}; + +/* + * For chip earlier than A3 version, enable this flag. + * To enable, pass boot argument phy_xgene.preA3Chip=1 + */ +static int preA3Chip; +MODULE_PARM_DESC(preA3Chip, "Enable pre-A3 chip support (1=enable 0=disable)"); +module_param_named(preA3Chip, preA3Chip, int, 0444); + +static void sds_wr(void __iomem *csr_base, u32 indirect_cmd_reg, + u32 indirect_data_reg, u32 addr, u32 data) +{ + unsigned long deadline = jiffies + HZ; + u32 val; + u32 cmd; + + cmd = CFG_IND_WR_CMD_MASK | CFG_IND_CMD_DONE_MASK; + cmd = CFG_IND_ADDR_SET(cmd, addr); + writel(data, csr_base + indirect_data_reg); + readl(csr_base + indirect_data_reg); /* Force a barrier */ + writel(cmd, csr_base + indirect_cmd_reg); + readl(csr_base + indirect_cmd_reg); /* Force a barrier */ + do { + val = readl(csr_base + indirect_cmd_reg); + } while (!(val & CFG_IND_CMD_DONE_MASK) && + time_before(jiffies, deadline)); + if (!(val & CFG_IND_CMD_DONE_MASK)) + pr_err("SDS WR timeout at 0x%p offset 0x%08X value 0x%08X\n", + csr_base + indirect_cmd_reg, addr, data); +} + +static void sds_rd(void __iomem *csr_base, u32 indirect_cmd_reg, + u32 indirect_data_reg, u32 addr, u32 *data) +{ + unsigned long deadline = jiffies + HZ; + u32 val; + u32 cmd; + + cmd = CFG_IND_RD_CMD_MASK | CFG_IND_CMD_DONE_MASK; + cmd = CFG_IND_ADDR_SET(cmd, addr); + writel(cmd, csr_base + indirect_cmd_reg); + readl(csr_base + indirect_cmd_reg); /* Force a barrier */ + do { + val = readl(csr_base + indirect_cmd_reg); + } while (!(val & CFG_IND_CMD_DONE_MASK) && + time_before(jiffies, deadline)); + *data = readl(csr_base + indirect_data_reg); + if (!(val & CFG_IND_CMD_DONE_MASK)) + pr_err("SDS WR timeout at 0x%p offset 0x%08X value 0x%08X\n", + csr_base + indirect_cmd_reg, addr, *data); +} + +static void cmu_wr(struct xgene_phy_ctx *ctx, enum cmu_type_t cmu_type, + u32 reg, u32 data) +{ + void __iomem *sds_base = ctx->sds_base; + u32 val; + + if (cmu_type == REF_CMU) + reg += SERDES_PLL_REF_INDIRECT_OFFSET; + else + reg += SERDES_PLL_INDIRECT_OFFSET; + sds_wr(sds_base, SATA_ENET_SDS_IND_CMD_REG, + SATA_ENET_SDS_IND_WDATA_REG, reg, data); + sds_rd(sds_base, SATA_ENET_SDS_IND_CMD_REG, + SATA_ENET_SDS_IND_RDATA_REG, reg, &val); + pr_debug("CMU WR addr 0x%X value 0x%08X <-> 0x%08X\n", reg, data, val); +} + +static void cmu_rd(struct xgene_phy_ctx *ctx, enum cmu_type_t cmu_type, + u32 reg, u32 *data) +{ + void __iomem *sds_base = ctx->sds_base; + + if (cmu_type == REF_CMU) + reg += SERDES_PLL_REF_INDIRECT_OFFSET; + else + reg += SERDES_PLL_INDIRECT_OFFSET; + sds_rd(sds_base, SATA_ENET_SDS_IND_CMD_REG, + SATA_ENET_SDS_IND_RDATA_REG, reg, data); + pr_debug("CMU RD addr 0x%X value 0x%08X\n", reg, *data); +} + +static void cmu_toggle1to0(struct xgene_phy_ctx *ctx, enum cmu_type_t cmu_type, + u32 reg, u32 bits) +{ + u32 val; + + cmu_rd(ctx, cmu_type, reg, &val); + val |= bits; + cmu_wr(ctx, cmu_type, reg, val); + cmu_rd(ctx, cmu_type, reg, &val); + val &= ~bits; + cmu_wr(ctx, cmu_type, reg, val); +} + +static void cmu_clrbits(struct xgene_phy_ctx *ctx, enum cmu_type_t cmu_type, + u32 reg, u32 bits) +{ + u32 val; + + cmu_rd(ctx, cmu_type, reg, &val); + val &= ~bits; + cmu_wr(ctx, cmu_type, reg, val); +} + +static void cmu_setbits(struct xgene_phy_ctx *ctx, enum cmu_type_t cmu_type, + u32 reg, u32 bits) +{ + u32 val; + + cmu_rd(ctx, cmu_type, reg, &val); + val |= bits; + cmu_wr(ctx, cmu_type, reg, val); +} + +static void serdes_wr(struct xgene_phy_ctx *ctx, int lane, u32 reg, u32 data) +{ + void __iomem *sds_base = ctx->sds_base; + u32 val; + + reg += SERDES_INDIRECT_OFFSET; + reg += lane * SERDES_LANE_STRIDE; + sds_wr(sds_base, SATA_ENET_SDS_IND_CMD_REG, + SATA_ENET_SDS_IND_WDATA_REG, reg, data); + sds_rd(sds_base, SATA_ENET_SDS_IND_CMD_REG, + SATA_ENET_SDS_IND_RDATA_REG, reg, &val); + pr_debug("SERDES WR addr 0x%X value 0x%08X <-> 0x%08X\n", reg, data, + val); +} + +static void serdes_rd(struct xgene_phy_ctx *ctx, int lane, u32 reg, u32 *data) +{ + void __iomem *sds_base = ctx->sds_base; + + reg += SERDES_INDIRECT_OFFSET; + reg += lane * SERDES_LANE_STRIDE; + sds_rd(sds_base, SATA_ENET_SDS_IND_CMD_REG, + SATA_ENET_SDS_IND_RDATA_REG, reg, data); + pr_debug("SERDES RD addr 0x%X value 0x%08X\n", reg, *data); +} + +static void serdes_clrbits(struct xgene_phy_ctx *ctx, int lane, u32 reg, + u32 bits) +{ + u32 val; + + serdes_rd(ctx, lane, reg, &val); + val &= ~bits; + serdes_wr(ctx, lane, reg, val); +} + +static void serdes_setbits(struct xgene_phy_ctx *ctx, int lane, u32 reg, + u32 bits) +{ + u32 val; + + serdes_rd(ctx, lane, reg, &val); + val |= bits; + serdes_wr(ctx, lane, reg, val); +} + +static void xgene_phy_cfg_cmu_clk_type(struct xgene_phy_ctx *ctx, + enum cmu_type_t cmu_type, + enum clk_type_t clk_type) +{ + u32 val; + + /* Set the reset sequence delay for TX ready assertion */ + cmu_rd(ctx, cmu_type, CMU_REG12, &val); + val = CMU_REG12_STATE_DELAY9_SET(val, 0x1); + cmu_wr(ctx, cmu_type, CMU_REG12, val); + /* Set the programmable stage delays between various enable stages */ + cmu_wr(ctx, cmu_type, CMU_REG13, 0x0222); + cmu_wr(ctx, cmu_type, CMU_REG14, 0x2225); + + /* Configure clock type */ + if (clk_type == CLK_EXT_DIFF) { + /* Select external clock mux */ + cmu_rd(ctx, cmu_type, CMU_REG0, &val); + val = CMU_REG0_PLL_REF_SEL_SET(val, 0x0); + cmu_wr(ctx, cmu_type, CMU_REG0, val); + /* Select CMOS as reference clock */ + cmu_rd(ctx, cmu_type, CMU_REG1, &val); + val = CMU_REG1_REFCLK_CMOS_SEL_SET(val, 0x0); + cmu_wr(ctx, cmu_type, CMU_REG1, val); + dev_dbg(ctx->dev, "Set external reference clock\n"); + } else if (clk_type == CLK_INT_DIFF) { + /* Select internal clock mux */ + cmu_rd(ctx, cmu_type, CMU_REG0, &val); + val = CMU_REG0_PLL_REF_SEL_SET(val, 0x1); + cmu_wr(ctx, cmu_type, CMU_REG0, val); + /* Select CMOS as reference clock */ + cmu_rd(ctx, cmu_type, CMU_REG1, &val); + val = CMU_REG1_REFCLK_CMOS_SEL_SET(val, 0x1); + cmu_wr(ctx, cmu_type, CMU_REG1, val); + dev_dbg(ctx->dev, "Set internal reference clock\n"); + } else if (clk_type == CLK_INT_SING) { + /* + * NOTE: This clock type is NOT support for controller + * whose internal clock shared in the PCIe controller + * + * Select internal clock mux + */ + cmu_rd(ctx, cmu_type, CMU_REG1, &val); + val = CMU_REG1_REFCLK_CMOS_SEL_SET(val, 0x1); + cmu_wr(ctx, cmu_type, CMU_REG1, val); + /* Select CML as reference clock */ + cmu_rd(ctx, cmu_type, CMU_REG1, &val); + val = CMU_REG1_REFCLK_CMOS_SEL_SET(val, 0x0); + cmu_wr(ctx, cmu_type, CMU_REG1, val); + dev_dbg(ctx->dev, + "Set internal single ended reference clock\n"); + } +} + +static void xgene_phy_sata_cfg_cmu_core(struct xgene_phy_ctx *ctx, + enum cmu_type_t cmu_type, + enum clk_type_t clk_type) +{ + u32 val; + int ref_100MHz; + + if (cmu_type == REF_CMU) { + /* Set VCO calibration voltage threshold */ + cmu_rd(ctx, cmu_type, CMU_REG34, &val); + val = CMU_REG34_VCO_CAL_VTH_LO_MAX_SET(val, 0x7); + val = CMU_REG34_VCO_CAL_VTH_HI_MAX_SET(val, 0xc); + val = CMU_REG34_VCO_CAL_VTH_LO_MIN_SET(val, 0x3); + val = CMU_REG34_VCO_CAL_VTH_HI_MIN_SET(val, 0x8); + cmu_wr(ctx, cmu_type, CMU_REG34, val); + } + + /* Set the VCO calibration counter */ + cmu_rd(ctx, cmu_type, CMU_REG0, &val); + if (cmu_type == REF_CMU || preA3Chip) + val = CMU_REG0_CAL_COUNT_RESOL_SET(val, 0x4); + else + val = CMU_REG0_CAL_COUNT_RESOL_SET(val, 0x7); + cmu_wr(ctx, cmu_type, CMU_REG0, val); + + /* Configure PLL for calibration */ + cmu_rd(ctx, cmu_type, CMU_REG1, &val); + val = CMU_REG1_PLL_CP_SET(val, 0x1); + if (cmu_type == REF_CMU || preA3Chip) + val = CMU_REG1_PLL_CP_SEL_SET(val, 0x5); + else + val = CMU_REG1_PLL_CP_SEL_SET(val, 0x3); + if (cmu_type == REF_CMU) + val = CMU_REG1_PLL_MANUALCAL_SET(val, 0x0); + else + val = CMU_REG1_PLL_MANUALCAL_SET(val, 0x1); + cmu_wr(ctx, cmu_type, CMU_REG1, val); + + if (cmu_type != REF_CMU) + cmu_clrbits(ctx, cmu_type, CMU_REG5, CMU_REG5_PLL_RESETB_MASK); + + /* Configure the PLL for either 100MHz or 50MHz */ + cmu_rd(ctx, cmu_type, CMU_REG2, &val); + if (cmu_type == REF_CMU) { + val = CMU_REG2_PLL_LFRES_SET(val, 0xa); + ref_100MHz = 1; + } else { + val = CMU_REG2_PLL_LFRES_SET(val, 0x3); + if (clk_type == CLK_EXT_DIFF) + ref_100MHz = 0; + else + ref_100MHz = 1; + } + if (ref_100MHz) { + val = CMU_REG2_PLL_FBDIV_SET(val, FBDIV_VAL_100M); + val = CMU_REG2_PLL_REFDIV_SET(val, REFDIV_VAL_100M); + } else { + val = CMU_REG2_PLL_FBDIV_SET(val, FBDIV_VAL_50M); + val = CMU_REG2_PLL_REFDIV_SET(val, REFDIV_VAL_50M); + } + cmu_wr(ctx, cmu_type, CMU_REG2, val); + + /* Configure the VCO */ + cmu_rd(ctx, cmu_type, CMU_REG3, &val); + if (cmu_type == REF_CMU) { + val = CMU_REG3_VCOVARSEL_SET(val, 0x3); + val = CMU_REG3_VCO_MOMSEL_INIT_SET(val, 0x10); + } else { + val = CMU_REG3_VCOVARSEL_SET(val, 0xF); + if (preA3Chip) + val = CMU_REG3_VCO_MOMSEL_INIT_SET(val, 0x15); + else + val = CMU_REG3_VCO_MOMSEL_INIT_SET(val, 0x1a); + val = CMU_REG3_VCO_MANMOMSEL_SET(val, 0x15); + } + cmu_wr(ctx, cmu_type, CMU_REG3, val); + + /* Disable force PLL lock */ + cmu_rd(ctx, cmu_type, CMU_REG26, &val); + val = CMU_REG26_FORCE_PLL_LOCK_SET(val, 0x0); + cmu_wr(ctx, cmu_type, CMU_REG26, val); + + /* Setup PLL loop filter */ + cmu_rd(ctx, cmu_type, CMU_REG5, &val); + val = CMU_REG5_PLL_LFSMCAP_SET(val, 0x3); + val = CMU_REG5_PLL_LFCAP_SET(val, 0x3); + if (cmu_type == REF_CMU || !preA3Chip) + val = CMU_REG5_PLL_LOCK_RESOLUTION_SET(val, 0x7); + else + val = CMU_REG5_PLL_LOCK_RESOLUTION_SET(val, 0x4); + cmu_wr(ctx, cmu_type, CMU_REG5, val); + + /* Enable or disable manual calibration */ + cmu_rd(ctx, cmu_type, CMU_REG6, &val); + val = CMU_REG6_PLL_VREGTRIM_SET(val, preA3Chip ? 0x0 : 0x2); + val = CMU_REG6_MAN_PVT_CAL_SET(val, preA3Chip ? 0x1 : 0x0); + cmu_wr(ctx, cmu_type, CMU_REG6, val); + + /* Configure lane for 20-bits */ + if (cmu_type == PHY_CMU) { + cmu_rd(ctx, cmu_type, CMU_REG9, &val); + val = CMU_REG9_TX_WORD_MODE_CH1_SET(val, + CMU_REG9_WORD_LEN_20BIT); + val = CMU_REG9_TX_WORD_MODE_CH0_SET(val, + CMU_REG9_WORD_LEN_20BIT); + val = CMU_REG9_PLL_POST_DIVBY2_SET(val, 0x1); + if (!preA3Chip) { + val = CMU_REG9_VBG_BYPASSB_SET(val, 0x0); + val = CMU_REG9_IGEN_BYPASS_SET(val , 0x0); + } + cmu_wr(ctx, cmu_type, CMU_REG9, val); + + if (!preA3Chip) { + cmu_rd(ctx, cmu_type, CMU_REG10, &val); + val = CMU_REG10_VREG_REFSEL_SET(val, 0x1); + cmu_wr(ctx, cmu_type, CMU_REG10, val); + } + } + + cmu_rd(ctx, cmu_type, CMU_REG16, &val); + val = CMU_REG16_CALIBRATION_DONE_OVERRIDE_SET(val, 0x1); + val = CMU_REG16_BYPASS_PLL_LOCK_SET(val, 0x1); + if (cmu_type == REF_CMU || preA3Chip) + val = CMU_REG16_VCOCAL_WAIT_BTW_CODE_SET(val, 0x4); + else + val = CMU_REG16_VCOCAL_WAIT_BTW_CODE_SET(val, 0x7); + cmu_wr(ctx, cmu_type, CMU_REG16, val); + + /* Configure for SATA */ + cmu_rd(ctx, cmu_type, CMU_REG30, &val); + val = CMU_REG30_PCIE_MODE_SET(val, 0x0); + val = CMU_REG30_LOCK_COUNT_SET(val, 0x3); + cmu_wr(ctx, cmu_type, CMU_REG30, val); + + /* Disable state machine bypass */ + cmu_wr(ctx, cmu_type, CMU_REG31, 0xF); + + cmu_rd(ctx, cmu_type, CMU_REG32, &val); + val = CMU_REG32_PVT_CAL_WAIT_SEL_SET(val, 0x3); + if (cmu_type == REF_CMU || preA3Chip) + val = CMU_REG32_IREF_ADJ_SET(val, 0x3); + else + val = CMU_REG32_IREF_ADJ_SET(val, 0x1); + cmu_wr(ctx, cmu_type, CMU_REG32, val); + + /* Set VCO calibration threshold */ + if (cmu_type != REF_CMU && preA3Chip) + cmu_wr(ctx, cmu_type, CMU_REG34, 0x8d27); + else + cmu_wr(ctx, cmu_type, CMU_REG34, 0x873c); + + /* Set CTLE Override and override waiting from state machine */ + cmu_wr(ctx, cmu_type, CMU_REG37, 0xF00F); +} + +static void xgene_phy_ssc_enable(struct xgene_phy_ctx *ctx, + enum cmu_type_t cmu_type) +{ + u32 val; + + /* Set SSC modulation value */ + cmu_rd(ctx, cmu_type, CMU_REG35, &val); + val = CMU_REG35_PLL_SSC_MOD_SET(val, 98); + cmu_wr(ctx, cmu_type, CMU_REG35, val); + + /* Enable SSC, set vertical step and DSM value */ + cmu_rd(ctx, cmu_type, CMU_REG36, &val); + val = CMU_REG36_PLL_SSC_VSTEP_SET(val, 30); + val = CMU_REG36_PLL_SSC_EN_SET(val, 1); + val = CMU_REG36_PLL_SSC_DSMSEL_SET(val, 1); + cmu_wr(ctx, cmu_type, CMU_REG36, val); + + /* Reset the PLL */ + cmu_clrbits(ctx, cmu_type, CMU_REG5, CMU_REG5_PLL_RESETB_MASK); + cmu_setbits(ctx, cmu_type, CMU_REG5, CMU_REG5_PLL_RESETB_MASK); + + /* Force VCO calibration to restart */ + cmu_toggle1to0(ctx, cmu_type, CMU_REG32, + CMU_REG32_FORCE_VCOCAL_START_MASK); +} + +static void xgene_phy_sata_cfg_lanes(struct xgene_phy_ctx *ctx) +{ + u32 val; + u32 reg; + int i; + int lane; + + for (lane = 0; lane < MAX_LANE; lane++) { + serdes_wr(ctx, lane, RXTX_REG147, 0x6); + + /* Set boost control for quarter, half, and full rate */ + serdes_rd(ctx, lane, RXTX_REG0, &val); + val = RXTX_REG0_CTLE_EQ_HR_SET(val, 0x10); + val = RXTX_REG0_CTLE_EQ_QR_SET(val, 0x10); + val = RXTX_REG0_CTLE_EQ_FR_SET(val, 0x10); + serdes_wr(ctx, lane, RXTX_REG0, val); + + /* Set boost control value */ + serdes_rd(ctx, lane, RXTX_REG1, &val); + val = RXTX_REG1_RXACVCM_SET(val, 0x7); + val = RXTX_REG1_CTLE_EQ_SET(val, + ctx->sata_param.txboostgain[lane * 3 + + ctx->sata_param.speed[lane]]); + serdes_wr(ctx, lane, RXTX_REG1, val); + + /* Latch VTT value based on the termination to ground and + enable TX FIFO */ + serdes_rd(ctx, lane, RXTX_REG2, &val); + val = RXTX_REG2_VTT_ENA_SET(val, 0x1); + val = RXTX_REG2_VTT_SEL_SET(val, 0x1); + val = RXTX_REG2_TX_FIFO_ENA_SET(val, 0x1); + serdes_wr(ctx, lane, RXTX_REG2, val); + + /* Configure Tx for 20-bits */ + serdes_rd(ctx, lane, RXTX_REG4, &val); + val = RXTX_REG4_TX_WORD_MODE_SET(val, CMU_REG9_WORD_LEN_20BIT); + serdes_wr(ctx, lane, RXTX_REG4, val); + + if (!preA3Chip) { + serdes_rd(ctx, lane, RXTX_REG1, &val); + val = RXTX_REG1_RXVREG1_SET(val, 0x2); + val = RXTX_REG1_RXIREF_ADJ_SET(val, 0x2); + serdes_wr(ctx, lane, RXTX_REG1, val); + } + + /* Set pre-emphasis first 1 and 2, and post-emphasis values */ + serdes_rd(ctx, lane, RXTX_REG5, &val); + val = RXTX_REG5_TX_CN1_SET(val, + ctx->sata_param.txprecursor_cn1[lane * 3 + + ctx->sata_param.speed[lane]]); + val = RXTX_REG5_TX_CP1_SET(val, + ctx->sata_param.txpostcursor_cp1[lane * 3 + + ctx->sata_param.speed[lane]]); + val = RXTX_REG5_TX_CN2_SET(val, + ctx->sata_param.txprecursor_cn2[lane * 3 + + ctx->sata_param.speed[lane]]); + serdes_wr(ctx, lane, RXTX_REG5, val); + + /* Set TX amplitude value */ + serdes_rd(ctx, lane, RXTX_REG6, &val); + val = RXTX_REG6_TXAMP_CNTL_SET(val, + ctx->sata_param.txamplitude[lane * 3 + + ctx->sata_param.speed[lane]]); + val = RXTX_REG6_TXAMP_ENA_SET(val, 0x1); + val = RXTX_REG6_TX_IDLE_SET(val, 0x0); + val = RXTX_REG6_RX_BIST_RESYNC_SET(val, 0x0); + val = RXTX_REG6_RX_BIST_ERRCNT_RD_SET(val, 0x0); + serdes_wr(ctx, lane, RXTX_REG6, val); + + /* Configure Rx for 20-bits */ + serdes_rd(ctx, lane, RXTX_REG7, &val); + val = RXTX_REG7_BIST_ENA_RX_SET(val, 0x0); + val = RXTX_REG7_RX_WORD_MODE_SET(val, CMU_REG9_WORD_LEN_20BIT); + serdes_wr(ctx, lane, RXTX_REG7, val); + + /* Set CDR and LOS values and enable Rx SSC */ + serdes_rd(ctx, lane, RXTX_REG8, &val); + val = RXTX_REG8_CDR_LOOP_ENA_SET(val, 0x1); + val = RXTX_REG8_CDR_BYPASS_RXLOS_SET(val, 0x0); + val = RXTX_REG8_SSC_ENABLE_SET(val, 0x1); + val = RXTX_REG8_SD_DISABLE_SET(val, 0x0); + val = RXTX_REG8_SD_VREF_SET(val, 0x4); + serdes_wr(ctx, lane, RXTX_REG8, val); + + /* Set phase adjust upper/lower limits */ + serdes_rd(ctx, lane, RXTX_REG11, &val); + val = RXTX_REG11_PHASE_ADJUST_LIMIT_SET(val, 0x0); + serdes_wr(ctx, lane, RXTX_REG11, val); + + /* Enable Latch Off; disable SUMOS and Tx termination */ + serdes_rd(ctx, lane, RXTX_REG12, &val); + val = RXTX_REG12_LATCH_OFF_ENA_SET(val, 0x1); + val = RXTX_REG12_SUMOS_ENABLE_SET(val, 0x0); + val = RXTX_REG12_RX_DET_TERM_ENABLE_SET(val, 0x0); + serdes_wr(ctx, lane, RXTX_REG12, val); + + /* Set period error latch to 512T and enable BWL */ + serdes_rd(ctx, lane, RXTX_REG26, &val); + val = RXTX_REG26_PERIOD_ERROR_LATCH_SET(val, 0x0); + val = RXTX_REG26_BLWC_ENA_SET(val, 0x1); + serdes_wr(ctx, lane, RXTX_REG26, val); + + serdes_wr(ctx, lane, RXTX_REG28, 0x0); + + /* Set DFE loop preset value */ + serdes_wr(ctx, lane, RXTX_REG31, 0x0); + + /* Set Eye Monitor counter width to 12-bit */ + serdes_rd(ctx, lane, RXTX_REG61, &val); + val = RXTX_REG61_ISCAN_INBERT_SET(val, 0x1); + val = RXTX_REG61_LOADFREQ_SHIFT_SET(val, 0x0); + val = RXTX_REG61_EYE_COUNT_WIDTH_SEL_SET(val, 0x0); + serdes_wr(ctx, lane, RXTX_REG61, val); + + serdes_rd(ctx, lane, RXTX_REG62, &val); + val = RXTX_REG62_PERIOD_H1_QLATCH_SET(val, 0x0); + serdes_wr(ctx, lane, RXTX_REG62, val); + + /* Set BW select tap X for DFE loop */ + for (i = 0; i < 9; i++) { + reg = RXTX_REG81 + i * 2; + serdes_rd(ctx, lane, reg, &val); + val = RXTX_REG89_MU_TH7_SET(val, 0xe); + val = RXTX_REG89_MU_TH8_SET(val, 0xe); + val = RXTX_REG89_MU_TH9_SET(val, 0xe); + serdes_wr(ctx, lane, reg, val); + } + + /* Set BW select tap X for frequency adjust loop */ + for (i = 0; i < 3; i++) { + reg = RXTX_REG96 + i * 2; + serdes_rd(ctx, lane, reg, &val); + val = RXTX_REG96_MU_FREQ1_SET(val, 0x10); + val = RXTX_REG96_MU_FREQ2_SET(val, 0x10); + val = RXTX_REG96_MU_FREQ3_SET(val, 0x10); + serdes_wr(ctx, lane, reg, val); + } + + /* Set BW select tap X for phase adjust loop */ + for (i = 0; i < 3; i++) { + reg = RXTX_REG99 + i * 2; + serdes_rd(ctx, lane, reg, &val); + val = RXTX_REG99_MU_PHASE1_SET(val, 0x7); + val = RXTX_REG99_MU_PHASE2_SET(val, 0x7); + val = RXTX_REG99_MU_PHASE3_SET(val, 0x7); + serdes_wr(ctx, lane, reg, val); + } + + serdes_rd(ctx, lane, RXTX_REG102, &val); + val = RXTX_REG102_FREQLOOP_LIMIT_SET(val, 0x0); + serdes_wr(ctx, lane, RXTX_REG102, val); + + serdes_wr(ctx, lane, RXTX_REG114, 0xffe0); + + serdes_rd(ctx, lane, RXTX_REG125, &val); + val = RXTX_REG125_SIGN_PQ_SET(val, + ctx->sata_param.txeyedirection[lane * 3 + + ctx->sata_param.speed[lane]]); + val = RXTX_REG125_PQ_REG_SET(val, + ctx->sata_param.txeyetuning[lane * 3 + + ctx->sata_param.speed[lane]]); + val = RXTX_REG125_PHZ_MANUAL_SET(val, 0x1); + serdes_wr(ctx, lane, RXTX_REG125, val); + + serdes_rd(ctx, lane, RXTX_REG127, &val); + val = RXTX_REG127_LATCH_MAN_CAL_ENA_SET(val, 0x0); + serdes_wr(ctx, lane, RXTX_REG127, val); + + serdes_rd(ctx, lane, RXTX_REG128, &val); + val = RXTX_REG128_LATCH_CAL_WAIT_SEL_SET(val, 0x3); + serdes_wr(ctx, lane, RXTX_REG128, val); + + serdes_rd(ctx, lane, RXTX_REG145, &val); + val = RXTX_REG145_RXDFE_CONFIG_SET(val, 0x3); + val = RXTX_REG145_TX_IDLE_SATA_SET(val, 0x0); + if (preA3Chip) { + val = RXTX_REG145_RXES_ENA_SET(val, 0x1); + val = RXTX_REG145_RXVWES_LATENA_SET(val, 0x1); + } else { + val = RXTX_REG145_RXES_ENA_SET(val, 0x0); + val = RXTX_REG145_RXVWES_LATENA_SET(val, 0x0); + } + serdes_wr(ctx, lane, RXTX_REG145, val); + + /* + * Set Rx LOS filter clock rate, sample rate, and threshold + * windows + */ + for (i = 0; i < 4; i++) { + reg = RXTX_REG148 + i * 2; + serdes_wr(ctx, lane, reg, 0xFFFF); + } + } +} + +static int xgene_phy_cal_rdy_chk(struct xgene_phy_ctx *ctx, + enum cmu_type_t cmu_type, + enum clk_type_t clk_type) +{ + void __iomem *csr_serdes = ctx->sds_base; + int loop; + u32 val; + + /* Release PHY main reset */ + writel(0xdf, csr_serdes + SATA_ENET_SDS_RST_CTL); + readl(csr_serdes + SATA_ENET_SDS_RST_CTL); /* Force a barrier */ + + if (cmu_type != REF_CMU) { + cmu_setbits(ctx, cmu_type, CMU_REG5, CMU_REG5_PLL_RESETB_MASK); + /* + * As per PHY design spec, the PLL reset requires a minimum + * of 800us. + */ + usleep_range(800, 1000); + + cmu_rd(ctx, cmu_type, CMU_REG1, &val); + val = CMU_REG1_PLL_MANUALCAL_SET(val, 0x0); + cmu_wr(ctx, cmu_type, CMU_REG1, val); + /* + * As per PHY design spec, the PLL auto calibration requires + * a minimum of 800us. + */ + usleep_range(800, 1000); + + cmu_toggle1to0(ctx, cmu_type, CMU_REG32, + CMU_REG32_FORCE_VCOCAL_START_MASK); + /* + * As per PHY design spec, the PLL requires a minimum of + * 800us to settle. + */ + usleep_range(800, 1000); + } + + if (!preA3Chip) + goto skip_manual_cal; + + /* + * Configure the termination resister calibration + * The serial receive pins, RXP/RXN, have TERMination resistor + * that is required to be calibrated. + */ + cmu_rd(ctx, cmu_type, CMU_REG17, &val); + val = CMU_REG17_PVT_CODE_R2A_SET(val, 0x12); + val = CMU_REG17_RESERVED_7_SET(val, 0x0); + cmu_wr(ctx, cmu_type, CMU_REG17, val); + cmu_toggle1to0(ctx, cmu_type, CMU_REG17, + CMU_REG17_PVT_TERM_MAN_ENA_MASK); + /* + * The serial transmit pins, TXP/TXN, have Pull-UP and Pull-DOWN + * resistors that are required to the calibrated. + * Configure the pull DOWN calibration + */ + cmu_rd(ctx, cmu_type, CMU_REG17, &val); + val = CMU_REG17_PVT_CODE_R2A_SET(val, 0x29); + val = CMU_REG17_RESERVED_7_SET(val, 0x0); + cmu_wr(ctx, cmu_type, CMU_REG17, val); + cmu_toggle1to0(ctx, cmu_type, CMU_REG16, + CMU_REG16_PVT_DN_MAN_ENA_MASK); + /* Configure the pull UP calibration */ + cmu_rd(ctx, cmu_type, CMU_REG17, &val); + val = CMU_REG17_PVT_CODE_R2A_SET(val, 0x28); + val = CMU_REG17_RESERVED_7_SET(val, 0x0); + cmu_wr(ctx, cmu_type, CMU_REG17, val); + cmu_toggle1to0(ctx, cmu_type, CMU_REG16, + CMU_REG16_PVT_UP_MAN_ENA_MASK); + +skip_manual_cal: + /* Poll the PLL calibration completion status for at least 1 ms */ + loop = 100; + do { + cmu_rd(ctx, cmu_type, CMU_REG7, &val); + if (CMU_REG7_PLL_CALIB_DONE_RD(val)) + break; + /* + * As per PHY design spec, PLL calibration status requires + * a minimum of 10us to be updated. + */ + usleep_range(10, 100); + } while (--loop > 0); + + cmu_rd(ctx, cmu_type, CMU_REG7, &val); + dev_dbg(ctx->dev, "PLL calibration %s\n", + CMU_REG7_PLL_CALIB_DONE_RD(val) ? "done" : "failed"); + if (CMU_REG7_VCO_CAL_FAIL_RD(val)) { + dev_err(ctx->dev, + "PLL calibration failed due to VCO failure\n"); + return -1; + } + dev_dbg(ctx->dev, "PLL calibration successful\n"); + + cmu_rd(ctx, cmu_type, CMU_REG15, &val); + dev_dbg(ctx->dev, "PHY Tx is %sready\n", val & 0x300 ? "" : "not "); + return 0; +} + +static void xgene_phy_pdwn_force_vco(struct xgene_phy_ctx *ctx, + enum cmu_type_t cmu_type, + enum clk_type_t clk_type) +{ + u32 val; + + dev_dbg(ctx->dev, "Reset VCO and re-start again\n"); + if (cmu_type == PHY_CMU) { + cmu_rd(ctx, cmu_type, CMU_REG16, &val); + val = CMU_REG16_VCOCAL_WAIT_BTW_CODE_SET(val, 0x7); + cmu_wr(ctx, cmu_type, CMU_REG16, val); + } + + cmu_toggle1to0(ctx, cmu_type, CMU_REG0, CMU_REG0_PDOWN_MASK); + cmu_toggle1to0(ctx, cmu_type, CMU_REG32, + CMU_REG32_FORCE_VCOCAL_START_MASK); +} + +static int xgene_phy_hw_init_sata(struct xgene_phy_ctx *ctx, + enum clk_type_t clk_type, int ssc_enable) +{ + void __iomem *sds_base = ctx->sds_base; + u32 val; + int i; + + /* Configure the PHY for operation */ + dev_dbg(ctx->dev, "Reset PHY\n"); + /* Place PHY into reset */ + writel(0x0, sds_base + SATA_ENET_SDS_RST_CTL); + val = readl(sds_base + SATA_ENET_SDS_RST_CTL); /* Force a barrier */ + /* Release PHY lane from reset (active high) */ + writel(0x20, sds_base + SATA_ENET_SDS_RST_CTL); + readl(sds_base + SATA_ENET_SDS_RST_CTL); /* Force a barrier */ + /* Release all PHY module out of reset except PHY main reset */ + writel(0xde, sds_base + SATA_ENET_SDS_RST_CTL); + readl(sds_base + SATA_ENET_SDS_RST_CTL); /* Force a barrier */ + + /* Set the operation speed */ + val = readl(sds_base + SATA_ENET_SDS_CTL1); + val = CFG_I_SPD_SEL_CDR_OVR1_SET(val, + ctx->sata_param.txspeed[ctx->sata_param.speed[0]]); + writel(val, sds_base + SATA_ENET_SDS_CTL1); + + dev_dbg(ctx->dev, "Set the customer pin mode to SATA\n"); + val = readl(sds_base + SATA_ENET_SDS_CTL0); + val = REGSPEC_CFG_I_CUSTOMER_PIN_MODE0_SET(val, 0x4421); + writel(val, sds_base + SATA_ENET_SDS_CTL0); + + /* Configure the clock macro unit (CMU) clock type */ + xgene_phy_cfg_cmu_clk_type(ctx, PHY_CMU, clk_type); + + /* Configure the clock macro */ + xgene_phy_sata_cfg_cmu_core(ctx, PHY_CMU, clk_type); + + /* Enable SSC if enabled */ + if (ssc_enable) + xgene_phy_ssc_enable(ctx, PHY_CMU); + + /* Configure PHY lanes */ + xgene_phy_sata_cfg_lanes(ctx); + + /* Set Rx/Tx 20-bit */ + val = readl(sds_base + SATA_ENET_SDS_PCS_CTL0); + val = REGSPEC_CFG_I_RX_WORDMODE0_SET(val, 0x3); + val = REGSPEC_CFG_I_TX_WORDMODE0_SET(val, 0x3); + writel(val, sds_base + SATA_ENET_SDS_PCS_CTL0); + + /* Start PLL calibration and try for three times */ + i = 10; + do { + if (!xgene_phy_cal_rdy_chk(ctx, PHY_CMU, clk_type)) + break; + /* If failed, toggle the VCO power signal and start again */ + xgene_phy_pdwn_force_vco(ctx, PHY_CMU, clk_type); + } while (--i > 0); + /* Even on failure, allow to continue any way */ + if (i <= 0) + dev_err(ctx->dev, "PLL calibration failed\n"); + + return 0; +} + +static int xgene_phy_hw_initialize(struct xgene_phy_ctx *ctx, + enum clk_type_t clk_type, + int ssc_enable) +{ + int rc; + + dev_dbg(ctx->dev, "PHY init clk type %d\n", clk_type); + + if (ctx->mode == MODE_SATA) { + rc = xgene_phy_hw_init_sata(ctx, clk_type, ssc_enable); + if (rc) + return rc; + } else { + dev_err(ctx->dev, "Un-supported customer pin mode %d\n", + ctx->mode); + return -ENODEV; + } + + return 0; +} + +/* + * Receiver Offset Calibration: + * + * Calibrate the receiver signal path offset in two steps - summar and + * latch calibrations + */ +static void xgene_phy_force_lat_summer_cal(struct xgene_phy_ctx *ctx, int lane) +{ + int i; + struct { + u32 reg; + u32 val; + } serdes_reg[] = { + {RXTX_REG38, 0x0}, + {RXTX_REG39, 0xff00}, + {RXTX_REG40, 0xffff}, + {RXTX_REG41, 0xffff}, + {RXTX_REG42, 0xffff}, + {RXTX_REG43, 0xffff}, + {RXTX_REG44, 0xffff}, + {RXTX_REG45, 0xffff}, + {RXTX_REG46, 0xffff}, + {RXTX_REG47, 0xfffc}, + {RXTX_REG48, 0x0}, + {RXTX_REG49, 0x0}, + {RXTX_REG50, 0x0}, + {RXTX_REG51, 0x0}, + {RXTX_REG52, 0x0}, + {RXTX_REG53, 0x0}, + {RXTX_REG54, 0x0}, + {RXTX_REG55, 0x0}, + }; + + /* Start SUMMER calibration */ + serdes_setbits(ctx, lane, RXTX_REG127, + RXTX_REG127_FORCE_SUM_CAL_START_MASK); + /* + * As per PHY design spec, the Summer calibration requires a minimum + * of 100us to complete. + */ + usleep_range(100, 500); + serdes_clrbits(ctx, lane, RXTX_REG127, + RXTX_REG127_FORCE_SUM_CAL_START_MASK); + /* + * As per PHY design spec, the auto calibration requires a minimum + * of 100us to complete. + */ + usleep_range(100, 500); + + /* Start latch calibration */ + serdes_setbits(ctx, lane, RXTX_REG127, + RXTX_REG127_FORCE_LAT_CAL_START_MASK); + /* + * As per PHY design spec, the latch calibration requires a minimum + * of 100us to complete. + */ + usleep_range(100, 500); + serdes_clrbits(ctx, lane, RXTX_REG127, + RXTX_REG127_FORCE_LAT_CAL_START_MASK); + + /* Configure the PHY lane for calibration */ + serdes_wr(ctx, lane, RXTX_REG28, 0x7); + serdes_wr(ctx, lane, RXTX_REG31, 0x7e00); + serdes_clrbits(ctx, lane, RXTX_REG4, + RXTX_REG4_TX_LOOPBACK_BUF_EN_MASK); + serdes_clrbits(ctx, lane, RXTX_REG7, + RXTX_REG7_LOOP_BACK_ENA_CTLE_MASK); + for (i = 0; i < ARRAY_SIZE(serdes_reg); i++) + serdes_wr(ctx, lane, serdes_reg[i].reg, + serdes_reg[i].val); +} + +static void xgene_phy_reset_rxd(struct xgene_phy_ctx *ctx, int lane) +{ + /* Reset digital Rx */ + serdes_clrbits(ctx, lane, RXTX_REG7, RXTX_REG7_RESETB_RXD_MASK); + /* As per PHY design spec, the reset requires a minimum of 100us. */ + usleep_range(100, 150); + serdes_setbits(ctx, lane, RXTX_REG7, RXTX_REG7_RESETB_RXD_MASK); +} + +static int xgene_phy_get_avg(int accum, int samples) +{ + return (accum + (samples / 2)) / samples; +} + +static void xgene_phy_gen_avg_val(struct xgene_phy_ctx *ctx, int lane) +{ + int max_loop = 10; + int avg_loop = 0; + int lat_do = 0, lat_xo = 0, lat_eo = 0, lat_so = 0; + int lat_de = 0, lat_xe = 0, lat_ee = 0, lat_se = 0; + int sum_cal = 0; + int lat_do_itr, lat_xo_itr, lat_eo_itr, lat_so_itr; + int lat_de_itr, lat_xe_itr, lat_ee_itr, lat_se_itr; + int sum_cal_itr; + int fail_even; + int fail_odd; + u32 val; + + dev_dbg(ctx->dev, "Generating avg calibration value for lane %d\n", + lane); + + /* Enable RX Hi-Z termination */ + serdes_setbits(ctx, lane, RXTX_REG12, + RXTX_REG12_RX_DET_TERM_ENABLE_MASK); + /* Turn off DFE */ + serdes_wr(ctx, lane, RXTX_REG28, 0x0000); + /* DFE Presets to zero */ + serdes_wr(ctx, lane, RXTX_REG31, 0x0000); + + /* + * Receiver Offset Calibration: + * Calibrate the receiver signal path offset in two steps - summar + * and latch calibration. + * Runs the "Receiver Offset Calibration multiple times to determine + * the average value to use. + */ + while (avg_loop < max_loop) { + /* Start the calibration */ + xgene_phy_force_lat_summer_cal(ctx, lane); + + serdes_rd(ctx, lane, RXTX_REG21, &val); + lat_do_itr = RXTX_REG21_DO_LATCH_CALOUT_RD(val); + lat_xo_itr = RXTX_REG21_XO_LATCH_CALOUT_RD(val); + fail_odd = RXTX_REG21_LATCH_CAL_FAIL_ODD_RD(val); + + serdes_rd(ctx, lane, RXTX_REG22, &val); + lat_eo_itr = RXTX_REG22_EO_LATCH_CALOUT_RD(val); + lat_so_itr = RXTX_REG22_SO_LATCH_CALOUT_RD(val); + fail_even = RXTX_REG22_LATCH_CAL_FAIL_EVEN_RD(val); + + serdes_rd(ctx, lane, RXTX_REG23, &val); + lat_de_itr = RXTX_REG23_DE_LATCH_CALOUT_RD(val); + lat_xe_itr = RXTX_REG23_XE_LATCH_CALOUT_RD(val); + + serdes_rd(ctx, lane, RXTX_REG24, &val); + lat_ee_itr = RXTX_REG24_EE_LATCH_CALOUT_RD(val); + lat_se_itr = RXTX_REG24_SE_LATCH_CALOUT_RD(val); + + serdes_rd(ctx, lane, RXTX_REG121, &val); + sum_cal_itr = RXTX_REG121_SUMOS_CAL_CODE_RD(val); + + /* Check for failure. If passed, sum them for averaging */ + if ((fail_even == 0 || fail_even == 1) && + (fail_odd == 0 || fail_odd == 1)) { + lat_do += lat_do_itr; + lat_xo += lat_xo_itr; + lat_eo += lat_eo_itr; + lat_so += lat_so_itr; + lat_de += lat_de_itr; + lat_xe += lat_xe_itr; + lat_ee += lat_ee_itr; + lat_se += lat_se_itr; + sum_cal += sum_cal_itr; + + dev_dbg(ctx->dev, "Iteration %d:\n", avg_loop); + dev_dbg(ctx->dev, "DO 0x%x XO 0x%x EO 0x%x SO 0x%x\n", + lat_do_itr, lat_xo_itr, lat_eo_itr, + lat_so_itr); + dev_dbg(ctx->dev, "DE 0x%x XE 0x%x EE 0x%x SE 0x%x\n", + lat_de_itr, lat_xe_itr, lat_ee_itr, + lat_se_itr); + dev_dbg(ctx->dev, "SUM 0x%x\n", sum_cal_itr); + ++avg_loop; + } else { + dev_err(ctx->dev, + "Receiver calibration failed at %d loop\n", + avg_loop); + } + xgene_phy_reset_rxd(ctx, lane); + } + + /* Update latch manual calibration with average value */ + serdes_rd(ctx, lane, RXTX_REG127, &val); + val = RXTX_REG127_DO_LATCH_MANCAL_SET(val, + xgene_phy_get_avg(lat_do, max_loop)); + val = RXTX_REG127_XO_LATCH_MANCAL_SET(val, + xgene_phy_get_avg(lat_xo, max_loop)); + serdes_wr(ctx, lane, RXTX_REG127, val); + + serdes_rd(ctx, lane, RXTX_REG128, &val); + val = RXTX_REG128_EO_LATCH_MANCAL_SET(val, + xgene_phy_get_avg(lat_eo, max_loop)); + val = RXTX_REG128_SO_LATCH_MANCAL_SET(val, + xgene_phy_get_avg(lat_so, max_loop)); + serdes_wr(ctx, lane, RXTX_REG128, val); + + serdes_rd(ctx, lane, RXTX_REG129, &val); + val = RXTX_REG129_DE_LATCH_MANCAL_SET(val, + xgene_phy_get_avg(lat_de, max_loop)); + val = RXTX_REG129_XE_LATCH_MANCAL_SET(val, + xgene_phy_get_avg(lat_xe, max_loop)); + serdes_wr(ctx, lane, RXTX_REG129, val); + + serdes_rd(ctx, lane, RXTX_REG130, &val); + val = RXTX_REG130_EE_LATCH_MANCAL_SET(val, + xgene_phy_get_avg(lat_ee, max_loop)); + val = RXTX_REG130_SE_LATCH_MANCAL_SET(val, + xgene_phy_get_avg(lat_se, max_loop)); + serdes_wr(ctx, lane, RXTX_REG130, val); + + /* Update SUMMER calibration with average value */ + serdes_rd(ctx, lane, RXTX_REG14, &val); + val = RXTX_REG14_CLTE_LATCAL_MAN_PROG_SET(val, + xgene_phy_get_avg(sum_cal, max_loop)); + serdes_wr(ctx, lane, RXTX_REG14, val); + + dev_dbg(ctx->dev, "Average Value:\n"); + dev_dbg(ctx->dev, "DO 0x%x XO 0x%x EO 0x%x SO 0x%x\n", + xgene_phy_get_avg(lat_do, max_loop), + xgene_phy_get_avg(lat_xo, max_loop), + xgene_phy_get_avg(lat_eo, max_loop), + xgene_phy_get_avg(lat_so, max_loop)); + dev_dbg(ctx->dev, "DE 0x%x XE 0x%x EE 0x%x SE 0x%x\n", + xgene_phy_get_avg(lat_de, max_loop), + xgene_phy_get_avg(lat_xe, max_loop), + xgene_phy_get_avg(lat_ee, max_loop), + xgene_phy_get_avg(lat_se, max_loop)); + dev_dbg(ctx->dev, "SUM 0x%x\n", + xgene_phy_get_avg(sum_cal, max_loop)); + + serdes_rd(ctx, lane, RXTX_REG14, &val); + val = RXTX_REG14_CTLE_LATCAL_MAN_ENA_SET(val, 0x1); + serdes_wr(ctx, lane, RXTX_REG14, val); + dev_dbg(ctx->dev, "Enable Manual Summer calibration\n"); + + serdes_rd(ctx, lane, RXTX_REG127, &val); + val = RXTX_REG127_LATCH_MAN_CAL_ENA_SET(val, 0x1); + dev_dbg(ctx->dev, "Enable Manual Latch calibration\n"); + serdes_wr(ctx, lane, RXTX_REG127, val); + + /* Disable RX Hi-Z termination */ + serdes_rd(ctx, lane, RXTX_REG12, &val); + val = RXTX_REG12_RX_DET_TERM_ENABLE_SET(val, 0); + serdes_wr(ctx, lane, RXTX_REG12, val); + /* Turn on DFE */ + serdes_wr(ctx, lane, RXTX_REG28, 0x0007); + /* Set DFE preset */ + serdes_wr(ctx, lane, RXTX_REG31, 0x7e00); +} + +static int xgene_phy_hw_init(struct phy *phy) +{ + struct xgene_phy_ctx *ctx = phy_get_drvdata(phy); + int rc; + int i; + + rc = xgene_phy_hw_initialize(ctx, CLK_EXT_DIFF, SSC_DISABLE); + if (rc) { + dev_err(ctx->dev, "PHY initialize failed %d\n", rc); + return rc; + } + + /* Setup clock properly after PHY configuration */ + if (!IS_ERR(ctx->clk)) { + /* HW requires an toggle of the clock */ + clk_prepare_enable(ctx->clk); + clk_disable_unprepare(ctx->clk); + clk_prepare_enable(ctx->clk); + } + + /* Compute average value */ + for (i = 0; i < MAX_LANE; i++) + xgene_phy_gen_avg_val(ctx, i); + + dev_dbg(ctx->dev, "PHY initialized\n"); + return 0; +} + +static const struct phy_ops xgene_phy_ops = { + .init = xgene_phy_hw_init, + .owner = THIS_MODULE, +}; + +static struct phy *xgene_phy_xlate(struct device *dev, + struct of_phandle_args *args) +{ + struct xgene_phy_ctx *ctx = dev_get_drvdata(dev); + + if (args->args_count <= 0) + return ERR_PTR(-EINVAL); + if (args->args[0] < MODE_SATA || args->args[0] >= MODE_MAX) + return ERR_PTR(-EINVAL); + + ctx->mode = args->args[0]; + return ctx->phy; +} + +static void xgene_phy_get_param(struct platform_device *pdev, + const char *name, u32 *buffer, + int count, u32 *default_val, + u32 conv_factor) +{ + int i; + + if (!of_property_read_u32_array(pdev->dev.of_node, name, buffer, + count)) { + for (i = 0; i < count; i++) + buffer[i] /= conv_factor; + return; + } + /* Does not exist, load default */ + for (i = 0; i < count; i++) + buffer[i] = default_val[i % 3]; +} + +static int xgene_phy_probe(struct platform_device *pdev) +{ + struct phy_provider *phy_provider; + struct xgene_phy_ctx *ctx; + struct resource *res; + int rc = 0; + u32 default_spd[] = DEFAULT_SATA_SPD_SEL; + u32 default_txboost_gain[] = DEFAULT_SATA_TXBOOST_GAIN; + u32 default_txeye_direction[] = DEFAULT_SATA_TXEYEDIRECTION; + u32 default_txeye_tuning[] = DEFAULT_SATA_TXEYETUNING; + u32 default_txamp[] = DEFAULT_SATA_TXAMP; + u32 default_txcn1[] = DEFAULT_SATA_TXCN1; + u32 default_txcn2[] = DEFAULT_SATA_TXCN2; + u32 default_txcp1[] = DEFAULT_SATA_TXCP1; + int i; + + ctx = devm_kzalloc(&pdev->dev, sizeof(*ctx), GFP_KERNEL); + if (!ctx) + return -ENOMEM; + + ctx->dev = &pdev->dev; + + res = platform_get_resource(pdev, IORESOURCE_MEM, 0); + ctx->sds_base = devm_ioremap_resource(&pdev->dev, res); + if (IS_ERR(ctx->sds_base)) { + rc = PTR_ERR(ctx->sds_base); + goto error; + } + + /* Retrieve optional clock */ + ctx->clk = clk_get(&pdev->dev, NULL); + + /* Load override paramaters */ + xgene_phy_get_param(pdev, "apm,tx-eye-tuning", + ctx->sata_param.txeyetuning, 6, default_txeye_tuning, 1); + xgene_phy_get_param(pdev, "apm,tx-eye-direction", + ctx->sata_param.txeyedirection, 6, default_txeye_direction, 1); + xgene_phy_get_param(pdev, "apm,tx-boost-gain", + ctx->sata_param.txboostgain, 6, default_txboost_gain, 1); + xgene_phy_get_param(pdev, "apm,tx-amplitude", + ctx->sata_param.txamplitude, 6, default_txamp, 13300); + xgene_phy_get_param(pdev, "apm,tx-pre-cursor1", + ctx->sata_param.txprecursor_cn1, 6, default_txcn1, 18200); + xgene_phy_get_param(pdev, "apm,tx-pre-cursor2", + ctx->sata_param.txprecursor_cn2, 6, default_txcn2, 18200); + xgene_phy_get_param(pdev, "apm,tx-post-cursor", + ctx->sata_param.txpostcursor_cp1, 6, default_txcp1, 18200); + xgene_phy_get_param(pdev, "apm,tx-speed", + ctx->sata_param.txspeed, 3, default_spd, 1); + for (i = 0; i < MAX_LANE; i++) + ctx->sata_param.speed[i] = 2; /* Default to Gen3 */ + + ctx->dev = &pdev->dev; + platform_set_drvdata(pdev, ctx); + + ctx->phy = devm_phy_create(ctx->dev, &xgene_phy_ops, NULL); + if (IS_ERR(ctx->phy)) { + dev_dbg(&pdev->dev, "Failed to create PHY\n"); + rc = PTR_ERR(ctx->phy); + goto error; + } + phy_set_drvdata(ctx->phy, ctx); + + phy_provider = devm_of_phy_provider_register(ctx->dev, + xgene_phy_xlate); + if (IS_ERR(phy_provider)) { + rc = PTR_ERR(phy_provider); + goto error; + } + + return 0; + +error: + return rc; +} + +static const struct of_device_id xgene_phy_of_match[] = { + {.compatible = "apm,xgene-phy",}, + {}, +}; +MODULE_DEVICE_TABLE(of, xgene_phy_of_match); + +static struct platform_driver xgene_phy_driver = { + .probe = xgene_phy_probe, + .driver = { + .name = "xgene-phy", + .owner = THIS_MODULE, + .of_match_table = xgene_phy_of_match, + }, +}; +module_platform_driver(xgene_phy_driver); + +MODULE_DESCRIPTION("APM X-Gene Multi-Purpose PHY driver"); +MODULE_AUTHOR("Loc Ho "); +MODULE_LICENSE("GPL v2"); +MODULE_VERSION("0.1"); --- linux-3.13.0.orig/drivers/pinctrl/core.c +++ linux-3.13.0/drivers/pinctrl/core.c @@ -851,7 +851,9 @@ kref_init(&p->users); /* Add the pinctrl handle to the global list */ + mutex_lock(&pinctrl_list_mutex); list_add_tail(&p->node, &pinctrl_list); + mutex_unlock(&pinctrl_list_mutex); return p; } --- linux-3.13.0.orig/drivers/pinctrl/pinctrl-at91.c +++ linux-3.13.0/drivers/pinctrl/pinctrl-at91.c @@ -1260,22 +1260,22 @@ switch (type) { case IRQ_TYPE_EDGE_RISING: - irq_set_handler(d->irq, handle_simple_irq); + __irq_set_handler_locked(d->irq, handle_simple_irq); writel_relaxed(mask, pio + PIO_ESR); writel_relaxed(mask, pio + PIO_REHLSR); break; case IRQ_TYPE_EDGE_FALLING: - irq_set_handler(d->irq, handle_simple_irq); + __irq_set_handler_locked(d->irq, handle_simple_irq); writel_relaxed(mask, pio + PIO_ESR); writel_relaxed(mask, pio + PIO_FELLSR); break; case IRQ_TYPE_LEVEL_LOW: - irq_set_handler(d->irq, handle_level_irq); + __irq_set_handler_locked(d->irq, handle_level_irq); writel_relaxed(mask, pio + PIO_LSR); writel_relaxed(mask, pio + PIO_FELLSR); break; case IRQ_TYPE_LEVEL_HIGH: - irq_set_handler(d->irq, handle_level_irq); + __irq_set_handler_locked(d->irq, handle_level_irq); writel_relaxed(mask, pio + PIO_LSR); writel_relaxed(mask, pio + PIO_REHLSR); break; @@ -1284,7 +1284,7 @@ * disable additional interrupt modes: * fall back to default behavior */ - irq_set_handler(d->irq, handle_simple_irq); + __irq_set_handler_locked(d->irq, handle_simple_irq); writel_relaxed(mask, pio + PIO_AIMDR); return 0; case IRQ_TYPE_NONE: --- linux-3.13.0.orig/drivers/pinctrl/pinctrl-imx1-core.c +++ linux-3.13.0/drivers/pinctrl/pinctrl-imx1-core.c @@ -45,7 +45,7 @@ #define MX1_DDIR 0x00 #define MX1_OCR 0x04 #define MX1_ICONFA 0x0c -#define MX1_ICONFB 0x10 +#define MX1_ICONFB 0x14 #define MX1_GIUS 0x20 #define MX1_GPR 0x38 #define MX1_PUEN 0x40 @@ -97,13 +97,13 @@ u32 old_val; u32 new_val; - dev_dbg(ipctl->dev, "write: register 0x%p offset %d value 0x%x\n", - reg, offset, value); - /* Use the next register if the pin's port pin number is >=16 */ if (pin_id % 32 >= 16) reg += 0x04; + dev_dbg(ipctl->dev, "write: register 0x%p offset %d value 0x%x\n", + reg, offset, value); + /* Get current state of pins */ old_val = readl(reg); old_val &= mask; @@ -139,7 +139,7 @@ u32 reg_offset) { void __iomem *reg = imx1_mem(ipctl, pin_id) + reg_offset; - int offset = pin_id % 16; + int offset = (pin_id % 16) * 2; /* Use the next register if the pin's port pin number is >=16 */ if (pin_id % 32 >= 16) --- linux-3.13.0.orig/drivers/pinctrl/pinctrl-sunxi.c +++ linux-3.13.0/drivers/pinctrl/pinctrl-sunxi.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include @@ -469,12 +470,6 @@ return val; } -static int sunxi_pinctrl_gpio_direction_output(struct gpio_chip *chip, - unsigned offset, int value) -{ - return pinctrl_gpio_direction_output(chip->base + offset); -} - static void sunxi_pinctrl_gpio_set(struct gpio_chip *chip, unsigned offset, int value) { @@ -498,6 +493,13 @@ spin_unlock_irqrestore(&pctl->lock, flags); } +static int sunxi_pinctrl_gpio_direction_output(struct gpio_chip *chip, + unsigned offset, int value) +{ + sunxi_pinctrl_gpio_set(chip, offset, value); + return pinctrl_gpio_direction_output(chip->base + offset); +} + static int sunxi_pinctrl_gpio_of_xlate(struct gpio_chip *gc, const struct of_phandle_args *gpiospec, u32 *flags) @@ -664,6 +666,7 @@ static void sunxi_pinctrl_irq_handler(unsigned irq, struct irq_desc *desc) { + struct irq_chip *chip = irq_get_chip(irq); struct sunxi_pinctrl *pctl = irq_get_handler_data(irq); const unsigned long reg = readl(pctl->membase + IRQ_STATUS_REG); @@ -673,10 +676,12 @@ if (reg) { int irqoffset; + chained_irq_enter(chip, desc); for_each_set_bit(irqoffset, ®, SUNXI_IRQ_NUMBER) { int pin_irq = irq_find_mapping(pctl->domain, irqoffset); generic_handle_irq(pin_irq); } + chained_irq_exit(chip, desc); } } --- linux-3.13.0.orig/drivers/pinctrl/vt8500/pinctrl-wmt.c +++ linux-3.13.0/drivers/pinctrl/vt8500/pinctrl-wmt.c @@ -276,7 +276,20 @@ if (!configs) return -ENOMEM; - configs[0] = pull; + switch (pull) { + case 0: + configs[0] = PIN_CONFIG_BIAS_DISABLE; + break; + case 1: + configs[0] = PIN_CONFIG_BIAS_PULL_DOWN; + break; + case 2: + configs[0] = PIN_CONFIG_BIAS_PULL_UP; + break; + default: + configs[0] = PIN_CONFIG_BIAS_DISABLE; + dev_err(data->dev, "invalid pull state %d - disabling\n", pull); + } map->type = PIN_MAP_TYPE_CONFIGS_PIN; map->data.configs.group_or_pin = data->groups[group]; --- linux-3.13.0.orig/drivers/platform/x86/Kconfig +++ linux-3.13.0/drivers/platform/x86/Kconfig @@ -197,6 +197,17 @@ To compile this driver as a module, choose M here: the module will be called hp_accel. +config HP_WIRELESS + tristate "HP wireless button" + depends on ACPI + depends on INPUT + help + This driver provides supports for new HP wireless button for Windows 8. + On such systems the driver should load automatically (via ACPI alias). + + To compile this driver as a module, choose M here: the module will + be called hp-wireless. + config HP_WMI tristate "HP WMI extras" depends on ACPI_WMI --- linux-3.13.0.orig/drivers/platform/x86/Makefile +++ linux-3.13.0/drivers/platform/x86/Makefile @@ -16,6 +16,7 @@ obj-$(CONFIG_ACER_WMI) += acer-wmi.o obj-$(CONFIG_ACERHDF) += acerhdf.o obj-$(CONFIG_HP_ACCEL) += hp_accel.o +obj-$(CONFIG_HP_WIRELESS) += hp-wireless.o obj-$(CONFIG_HP_WMI) += hp-wmi.o obj-$(CONFIG_AMILO_RFKILL) += amilo-rfkill.o obj-$(CONFIG_TC1100_WMI) += tc1100-wmi.o --- linux-3.13.0.orig/drivers/platform/x86/dell-wmi.c +++ linux-3.13.0/drivers/platform/x86/dell-wmi.c @@ -166,7 +166,7 @@ u16 *buffer_entry = (u16 *)obj->buffer.pointer; if (dell_new_hk_type && (buffer_entry[1] != 0x10)) { - pr_info("Received unknown WMI event (0x%x)\n", + pr_debug("Received unknown WMI event (0x%x)\n", buffer_entry[1]); kfree(obj); return; --- linux-3.13.0.orig/drivers/platform/x86/hp-wireless.c +++ linux-3.13.0/drivers/platform/x86/hp-wireless.c @@ -0,0 +1,132 @@ +/* + * hp-wireless button for Windows 8 + * + * Copyright (C) 2014 Alex Hung + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#include +#include +#include +#include +#include +#include +#include + +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Alex Hung"); +MODULE_ALIAS("acpi*:HPQ6001:*"); + +static struct input_dev *hpwl_input_dev; + +static const struct acpi_device_id hpwl_ids[] = { + {"HPQ6001", 0}, + {"", 0}, +}; + +static int hp_wireless_input_setup(void) +{ + int err; + + hpwl_input_dev = input_allocate_device(); + if (!hpwl_input_dev) + return -ENOMEM; + + hpwl_input_dev->name = "HP Wireless hotkeys"; + hpwl_input_dev->phys = "hpq6001/input0"; + hpwl_input_dev->id.bustype = BUS_HOST; + hpwl_input_dev->evbit[0] = BIT(EV_KEY); + set_bit(KEY_RFKILL, hpwl_input_dev->keybit); + + err = input_register_device(hpwl_input_dev); + if (err) + goto err_free_dev; + + return 0; + +err_free_dev: + input_free_device(hpwl_input_dev); + return err; +} + +static void hp_wireless_input_destroy(void) +{ + input_unregister_device(hpwl_input_dev); +} + +static void hpwl_notify(struct acpi_device *acpi_dev, u32 event) +{ + if (event != 0x80) { + pr_info("Received unknown event (0x%x)\n", event); + return; + } + + input_report_key(hpwl_input_dev, KEY_RFKILL, 1); + input_sync(hpwl_input_dev); + input_report_key(hpwl_input_dev, KEY_RFKILL, 0); + input_sync(hpwl_input_dev); +} + +static int hpwl_add(struct acpi_device *device) +{ + int err; + + err = hp_wireless_input_setup(); + return err; +} + +static int hpwl_remove(struct acpi_device *device) +{ + hp_wireless_input_destroy(); + return 0; +} + +static struct acpi_driver hpwl_driver = { + .name = "hp-wireless", + .owner = THIS_MODULE, + .ids = hpwl_ids, + .ops = { + .add = hpwl_add, + .remove = hpwl_remove, + .notify = hpwl_notify, + }, +}; + +static int __init hpwl_init(void) +{ + int err; + + pr_info("Initializing HPQ6001 module\n"); + err = acpi_bus_register_driver(&hpwl_driver); + if (err) { + pr_err("Unable to register HP wireless control driver.\n"); + goto error_acpi_register; + } + + return 0; + +error_acpi_register: + return err; +} + +static void __exit hpwl_exit(void) +{ + pr_info("Exiting HPQ6001 module\n"); + acpi_bus_unregister_driver(&hpwl_driver); +} + +module_init(hpwl_init); +module_exit(hpwl_exit); --- linux-3.13.0.orig/drivers/platform/x86/hp_accel.c +++ linux-3.13.0/drivers/platform/x86/hp_accel.c @@ -77,6 +77,7 @@ static struct acpi_device_id lis3lv02d_device_ids[] = { {"HPQ0004", 0}, /* HP Mobile Data Protection System PNP */ {"HPQ6000", 0}, /* HP Mobile Data Protection System PNP */ + {"HPQ6007", 0}, /* HP Mobile Data Protection System PNP */ {"", 0}, }; MODULE_DEVICE_TABLE(acpi, lis3lv02d_device_ids); --- linux-3.13.0.orig/drivers/platform/x86/intel_ips.c +++ linux-3.13.0/drivers/platform/x86/intel_ips.c @@ -74,6 +74,7 @@ #include #include #include +#include #include #include #include "intel_ips.h" @@ -250,6 +251,8 @@ static const int IPS_ADJUST_PERIOD = 5000; /* ms */ static bool late_i915_load = false; +int i915_bdw_enabled = 0; +EXPORT_SYMBOL(i915_bdw_enabled); /* For initial average collection */ static const int IPS_SAMPLE_PERIOD = 200; /* ms */ @@ -1421,8 +1424,43 @@ * enable graphics turbo, otherwise we must disable it to avoid exceeding * thermal and power limits in the MCP. */ +static bool ips_get_i915_bdw_syms(struct ips_driver *ips) +{ + ips->read_mch_val = symbol_get(i915_bdw_read_mch_val); + if (!ips->read_mch_val) + goto out_err; + ips->gpu_raise = symbol_get(i915_bdw_gpu_raise); + if (!ips->gpu_raise) + goto out_put_mch; + ips->gpu_lower = symbol_get(i915_bdw_gpu_lower); + if (!ips->gpu_lower) + goto out_put_raise; + ips->gpu_busy = symbol_get(i915_bdw_gpu_busy); + if (!ips->gpu_busy) + goto out_put_lower; + ips->gpu_turbo_disable = symbol_get(i915_bdw_gpu_turbo_disable); + if (!ips->gpu_turbo_disable) + goto out_put_busy; + + return true; + +out_put_busy: + symbol_put(i915_bdw_gpu_busy); +out_put_lower: + symbol_put(i915_bdw_gpu_lower); +out_put_raise: + symbol_put(i915_bdw_gpu_raise); +out_put_mch: + symbol_put(i915_bdw_read_mch_val); +out_err: + return false; +} + static bool ips_get_i915_syms(struct ips_driver *ips) { + if (ips_get_i915_bdw_syms(ips) != false) + return true; + ips->read_mch_val = symbol_get(i915_read_mch_val); if (!ips->read_mch_val) goto out_err; @@ -1501,6 +1539,14 @@ DMI_MATCH(DMI_PRODUCT_NAME, "HP ProBook"), }, }, + { + .callback = ips_blacklist_callback, + .ident = "G60JX", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK Computer Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "G60JX"), + }, + }, { } /* terminating entry */ }; --- linux-3.13.0.orig/drivers/platform/x86/sony-laptop.c +++ linux-3.13.0/drivers/platform/x86/sony-laptop.c @@ -2917,6 +2917,10 @@ struct sonypi_event *events; }; +struct sony_pic_quirk_entry { + u8 set_wwan_power; +}; + struct sony_pic_dev { struct acpi_device *acpi_dev; struct sony_pic_irq *cur_irq; @@ -2927,6 +2931,7 @@ struct sonypi_eventtypes *event_types; int (*handle_irq)(const u8, const u8); int model; + struct sony_pic_quirk_entry *quirks; u16 evport_offset; u8 camera_power; u8 bluetooth_power; @@ -4362,6 +4367,12 @@ if (result) goto err_remove_pf; + if (spic_dev.quirks && spic_dev.quirks->set_wwan_power) { + /* + * Power isn't enabled by default. + */ + __sony_pic_set_wwanpower(1); + } return 0; err_remove_pf: @@ -4436,6 +4447,16 @@ .drv.pm = &sony_pic_pm, }; +static struct sony_pic_quirk_entry sony_pic_vaio_vgn = { + .set_wwan_power = 1, +}; + +static int dmi_matched(const struct dmi_system_id *dmi) +{ + spic_dev.quirks = dmi->driver_data; + return 0; +} + static struct dmi_system_id __initdata sonypi_dmi_table[] = { { .ident = "Sony Vaio", @@ -4450,6 +4471,8 @@ DMI_MATCH(DMI_SYS_VENDOR, "Sony Corporation"), DMI_MATCH(DMI_PRODUCT_NAME, "VGN-"), }, + .callback = dmi_matched, + .driver_data = &sony_pic_vaio_vgn, }, { } }; --- linux-3.13.0.orig/drivers/platform/x86/thinkpad_acpi.c +++ linux-3.13.0/drivers/platform/x86/thinkpad_acpi.c @@ -3443,6 +3443,106 @@ return (res < 0)? res : 1; } +/* Thinkpad X1 Carbon support 5 modes including Home mode, Web browser + * mode, Web conference mode, Function mode and Lay-flat mode. + * We support Home mode and Function mode currently. + * + * Will consider support rest of modes in future. + * + */ +enum ADAPTIVE_KEY_MODE { + HOME_MODE, + WEB_BROWSER_MODE, + WEB_CONFERENCE_MODE, + FUNCTION_MODE, + LAYFLAT_MODE +}; + +const int adaptive_keyboard_modes[] = { + HOME_MODE, +/* WEB_BROWSER_MODE = 2, + WEB_CONFERENCE_MODE = 3, */ + FUNCTION_MODE +}; + +#define DFR_CHANGE_ROW 0x101 +#define DFR_SHOW_QUICKVIEW_ROW 0x102 + +/* press Fn key a while second, it will switch to Function Mode. Then + * release Fn key, previous mode be restored. + */ +static bool adaptive_keyboard_mode_is_saved; +static int adaptive_keyboard_prev_mode; + +static int adaptive_keyboard_get_next_mode(int mode) +{ + size_t i; + size_t max_mode = ARRAY_SIZE(adaptive_keyboard_modes) - 1; + + for (i = 0; i <= max_mode; i++) { + if (adaptive_keyboard_modes[i] == mode) + break; + } + + if (i >= max_mode) + i = 0; + else + i++; + + return adaptive_keyboard_modes[i]; +} + +static bool adaptive_keyboard_hotkey_notify_hotkey(unsigned int scancode) +{ + u32 current_mode = 0; + int new_mode = 0; + + switch (scancode) { + case DFR_CHANGE_ROW: + if (adaptive_keyboard_mode_is_saved) { + new_mode = adaptive_keyboard_prev_mode; + adaptive_keyboard_mode_is_saved = false; + } else { + if (!acpi_evalf( + hkey_handle, ¤t_mode, + "GTRW", "dd", 0)) { + pr_err("Cannot read adaptive keyboard mode\n"); + return false; + } else { + new_mode = adaptive_keyboard_get_next_mode( + current_mode); + } + } + + if (!acpi_evalf(hkey_handle, NULL, "STRW", "vd", new_mode)) { + pr_err("Cannot set adaptive keyboard mode\n"); + return false; + } + + return true; + + case DFR_SHOW_QUICKVIEW_ROW: + if (!acpi_evalf(hkey_handle, + &adaptive_keyboard_prev_mode, + "GTRW", "dd", 0)) { + pr_err("Cannot read adaptive keyboard mode\n"); + return false; + } else { + adaptive_keyboard_mode_is_saved = true; + + if (!acpi_evalf(hkey_handle, + NULL, "STRW", "vd", FUNCTION_MODE)) { + pr_err("Cannot set adaptive keyboard mode\n"); + return false; + } + } + return true; + + default: + return false; + } +} + static bool hotkey_notify_hotkey(const u32 hkey, bool *send_acpi_ev, bool *ignore_acpi_ev) @@ -3462,6 +3562,8 @@ *ignore_acpi_ev = true; } return true; + } else { + return adaptive_keyboard_hotkey_notify_hotkey(scancode); } return false; } @@ -3734,13 +3836,28 @@ static void hotkey_suspend(void) { + int hkeyv; + /* Do these on suspend, we get the events on early resume! */ hotkey_wakeup_reason = TP_ACPI_WAKEUP_NONE; hotkey_autosleep_ack = 0; + + /* save previous mode of adaptive keyboard of X1 Carbon */ + if (acpi_evalf(hkey_handle, &hkeyv, "MHKV", "qd")) { + if ((hkeyv >> 8) == 2) { + if (!acpi_evalf(hkey_handle, + &adaptive_keyboard_prev_mode, + "GTRW", "dd", 0)) { + pr_err("Cannot read adaptive keyboard mode.\n"); + } + } + } } static void hotkey_resume(void) { + int hkeyv; + tpacpi_disable_brightness_delay(); if (hotkey_status_set(true) < 0 || @@ -3753,6 +3870,18 @@ hotkey_wakeup_reason_notify_change(); hotkey_wakeup_hotunplug_complete_notify_change(); hotkey_poll_setup_safe(false); + + /* restore previous mode of adapive keyboard of X1 Carbon */ + if (acpi_evalf(hkey_handle, &hkeyv, "MHKV", "qd")) { + if ((hkeyv >> 8) == 2) { + if (!acpi_evalf(hkey_handle, + NULL, + "STRW", "vd", + adaptive_keyboard_prev_mode)) { + pr_err("Cannot set adaptive keyboard mode.\n"); + } + } + } } /* procfs -------------------------------------------------------------- */ @@ -8453,9 +8582,21 @@ tpacpi_led_set(i, false); } +static void mute_led_resume(void) +{ + int i; + + for (i = 0; i < TPACPI_LED_MAX; i++) { + struct tp_led_table *t = &led_tables[i]; + if (t->state >= 0) + mute_led_on_off(t, t->state); + } +} + static struct ibm_struct mute_led_driver_data = { .name = "mute_led", .exit = mute_led_exit, + .resume = mute_led_resume, }; /**************************************************************************** --- linux-3.13.0.orig/drivers/pnp/isapnp/core.c +++ linux-3.13.0/drivers/pnp/isapnp/core.c @@ -41,6 +41,7 @@ #include #include #include +#include #include #include "../base.h" @@ -990,7 +991,7 @@ .disable = isapnp_disable_resources, }; -static int __init isapnp_init(void) +static int __init real_isapnp_init(void) { int cards; struct pnp_card *card; @@ -1084,6 +1085,16 @@ return 0; } +static void __init async_isapnp_init(void *unused, async_cookie_t cookie) +{ + (void)real_isapnp_init(); +} + +static int __init isapnp_init(void) +{ + async_schedule(async_isapnp_init, NULL); + return 0; +} device_initcall(isapnp_init); /* format is: noisapnp */ --- linux-3.13.0.orig/drivers/pnp/pnpacpi/rsparser.c +++ linux-3.13.0/drivers/pnp/pnpacpi/rsparser.c @@ -183,9 +183,7 @@ struct resource r = {0}; int i, flags; - if (acpi_dev_resource_memory(res, &r) - || acpi_dev_resource_io(res, &r) - || acpi_dev_resource_address_space(res, &r) + if (acpi_dev_resource_address_space(res, &r) || acpi_dev_resource_ext_address_space(res, &r)) { pnp_add_resource(dev, &r); return AE_OK; @@ -217,6 +215,17 @@ } switch (res->type) { + case ACPI_RESOURCE_TYPE_MEMORY24: + case ACPI_RESOURCE_TYPE_MEMORY32: + case ACPI_RESOURCE_TYPE_FIXED_MEMORY32: + if (acpi_dev_resource_memory(res, &r)) + pnp_add_resource(dev, &r); + break; + case ACPI_RESOURCE_TYPE_IO: + case ACPI_RESOURCE_TYPE_FIXED_IO: + if (acpi_dev_resource_io(res, &r)) + pnp_add_resource(dev, &r); + break; case ACPI_RESOURCE_TYPE_DMA: dma = &res->data.dma; if (dma->channel_count > 0 && dma->channels[0] != (u8) -1) --- linux-3.13.0.orig/drivers/power/max17040_battery.c +++ linux-3.13.0/drivers/power/max17040_battery.c @@ -148,7 +148,7 @@ { struct max17040_chip *chip = i2c_get_clientdata(client); - if (chip->pdata->battery_online) + if (chip->pdata && chip->pdata->battery_online) chip->online = chip->pdata->battery_online(); else chip->online = 1; @@ -158,7 +158,8 @@ { struct max17040_chip *chip = i2c_get_clientdata(client); - if (!chip->pdata->charger_online || !chip->pdata->charger_enable) { + if (!chip->pdata || !chip->pdata->charger_online + || !chip->pdata->charger_enable) { chip->status = POWER_SUPPLY_STATUS_UNKNOWN; return; } --- linux-3.13.0.orig/drivers/power/reset/Kconfig +++ linux-3.13.0/drivers/power/reset/Kconfig @@ -51,3 +51,11 @@ depends on POWER_RESET help Reboot support for the APM SoC X-Gene Eval boards. + +config POWER_RESET_SYSCON + bool "Generic SYSCON regmap reset driver" + depends on MFD_SYSCON + depends on POWER_RESET + depends on ARCH_XGENE + help + Reboot support for generic SYSCON mapped register reset. --- linux-3.13.0.orig/drivers/power/reset/Makefile +++ linux-3.13.0/drivers/power/reset/Makefile @@ -4,3 +4,4 @@ obj-$(CONFIG_POWER_RESET_RESTART) += restart-poweroff.o obj-$(CONFIG_POWER_RESET_VEXPRESS) += vexpress-poweroff.o obj-$(CONFIG_POWER_RESET_XGENE) += xgene-reboot.o +obj-$(CONFIG_POWER_RESET_SYSCON) += syscon-reboot.o --- linux-3.13.0.orig/drivers/power/reset/syscon-reboot.c +++ linux-3.13.0/drivers/power/reset/syscon-reboot.c @@ -0,0 +1,100 @@ +/* + * Generic Syscon Reboot Driver + * + * Copyright (c) 2013, Applied Micro Circuits Corporation + * Author: Feng Kan + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * This driver provides system reboot functionality for APM X-Gene SoC. + * For system shutdown, this is board specify. If a board designer + * implements GPIO shutdown, use the gpio-poweroff.c driver. + */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +struct syscon_reboot_context { + struct regmap *map; + u32 offset; + u32 mask; +}; + +static struct syscon_reboot_context *syscon_reboot_ctx; + +static void syscon_restart(enum reboot_mode reboot_mode, const char *cmd) +{ + struct syscon_reboot_context *ctx = syscon_reboot_ctx; + unsigned long timeout; + + /* Issue the reboot */ + if (ctx->map) + regmap_write(ctx->map, ctx->offset, ctx->mask); + + timeout = jiffies + HZ; + while (time_before(jiffies, timeout)) + cpu_relax(); + + pr_emerg("Unable to restart system\n"); +} + +static int syscon_reboot_probe(struct platform_device *pdev) +{ + struct syscon_reboot_context *ctx; + struct device *dev = &pdev->dev; + + ctx = devm_kzalloc(&pdev->dev, sizeof(*ctx), GFP_KERNEL); + if (!ctx) { + dev_err(&pdev->dev, "out of memory for context\n"); + return -ENOMEM; + } + + ctx->map = syscon_regmap_lookup_by_phandle(dev->of_node, "regmap"); + if (IS_ERR(ctx->map)) + return PTR_ERR(ctx->map); + + if (of_property_read_u32(pdev->dev.of_node, "offset", &ctx->offset)) + return -EINVAL; + + if (of_property_read_u32(pdev->dev.of_node, "mask", &ctx->mask)) + return -EINVAL; + + arm_pm_restart = syscon_restart; + syscon_reboot_ctx = ctx; + + return 0; +} + +static struct of_device_id syscon_reboot_of_match[] = { + { .compatible = "syscon-reboot" }, + {} +}; + +static struct platform_driver syscon_reboot_driver = { + .probe = syscon_reboot_probe, + .driver = { + .name = "syscon-reboot", + .of_match_table = syscon_reboot_of_match, + }, +}; +module_platform_driver(syscon_reboot_driver); --- linux-3.13.0.orig/drivers/rapidio/devices/tsi721.h +++ linux-3.13.0/drivers/rapidio/devices/tsi721.h @@ -678,6 +678,7 @@ struct list_head free_list; dma_cookie_t completed_cookie; struct tasklet_struct tasklet; + bool active; }; #endif /* CONFIG_RAPIDIO_DMA_ENGINE */ --- linux-3.13.0.orig/drivers/rapidio/devices/tsi721_dma.c +++ linux-3.13.0/drivers/rapidio/devices/tsi721_dma.c @@ -206,8 +206,8 @@ { /* Disable BDMA channel interrupts */ iowrite32(0, bdma_chan->regs + TSI721_DMAC_INTE); - - tasklet_schedule(&bdma_chan->tasklet); + if (bdma_chan->active) + tasklet_schedule(&bdma_chan->tasklet); } #ifdef CONFIG_PCI_MSI @@ -562,7 +562,7 @@ } #endif /* CONFIG_PCI_MSI */ - tasklet_enable(&bdma_chan->tasklet); + bdma_chan->active = true; tsi721_bdma_interrupt_enable(bdma_chan, 1); return bdma_chan->bd_num - 1; @@ -576,9 +576,7 @@ static void tsi721_free_chan_resources(struct dma_chan *dchan) { struct tsi721_bdma_chan *bdma_chan = to_tsi721_chan(dchan); -#ifdef CONFIG_PCI_MSI struct tsi721_device *priv = to_tsi721(dchan->device); -#endif LIST_HEAD(list); dev_dbg(dchan->device->dev, "%s: Entry\n", __func__); @@ -589,14 +587,25 @@ BUG_ON(!list_empty(&bdma_chan->active_list)); BUG_ON(!list_empty(&bdma_chan->queue)); - tasklet_disable(&bdma_chan->tasklet); + tsi721_bdma_interrupt_enable(bdma_chan, 0); + bdma_chan->active = false; + +#ifdef CONFIG_PCI_MSI + if (priv->flags & TSI721_USING_MSIX) { + synchronize_irq(priv->msix[TSI721_VECT_DMA0_DONE + + bdma_chan->id].vector); + synchronize_irq(priv->msix[TSI721_VECT_DMA0_INT + + bdma_chan->id].vector); + } else +#endif + synchronize_irq(priv->pdev->irq); + + tasklet_kill(&bdma_chan->tasklet); spin_lock_bh(&bdma_chan->lock); list_splice_init(&bdma_chan->free_list, &list); spin_unlock_bh(&bdma_chan->lock); - tsi721_bdma_interrupt_enable(bdma_chan, 0); - #ifdef CONFIG_PCI_MSI if (priv->flags & TSI721_USING_MSIX) { free_irq(priv->msix[TSI721_VECT_DMA0_DONE + @@ -790,6 +799,7 @@ bdma_chan->dchan.cookie = 1; bdma_chan->dchan.chan_id = i; bdma_chan->id = i; + bdma_chan->active = false; spin_lock_init(&bdma_chan->lock); @@ -799,7 +809,6 @@ tasklet_init(&bdma_chan->tasklet, tsi721_dma_tasklet, (unsigned long)bdma_chan); - tasklet_disable(&bdma_chan->tasklet); list_add_tail(&bdma_chan->dchan.device_node, &mport->dma.channels); } --- linux-3.13.0.orig/drivers/regulator/arizona-ldo1.c +++ linux-3.13.0/drivers/regulator/arizona-ldo1.c @@ -153,11 +153,9 @@ .vsel_reg = ARIZONA_LDO1_CONTROL_1, .vsel_mask = ARIZONA_LDO1_VSEL_MASK, - .bypass_reg = ARIZONA_LDO1_CONTROL_1, - .bypass_mask = ARIZONA_LDO1_BYPASS, .min_uV = 900000, - .uV_step = 50000, - .n_voltages = 7, + .uV_step = 25000, + .n_voltages = 13, .enable_time = 500, .owner = THIS_MODULE, @@ -203,6 +201,7 @@ */ switch (arizona->type) { case WM5102: + case WM8997: desc = &arizona_ldo1_hc; ldo1->init_data = arizona_ldo1_dvfs; break; --- linux-3.13.0.orig/drivers/regulator/core.c +++ linux-3.13.0/drivers/regulator/core.c @@ -953,6 +953,8 @@ return 0; } +static int _regulator_do_enable(struct regulator_dev *rdev); + /** * set_machine_constraints - sets regulator constraints * @rdev: regulator source @@ -1013,10 +1015,9 @@ /* If the constraints say the regulator should be on at this point * and we have control then make sure it is enabled. */ - if ((rdev->constraints->always_on || rdev->constraints->boot_on) && - ops->enable) { - ret = ops->enable(rdev); - if (ret < 0) { + if (rdev->constraints->always_on || rdev->constraints->boot_on) { + ret = _regulator_do_enable(rdev); + if (ret < 0 && ret != -EINVAL) { rdev_err(rdev, "failed to enable\n"); goto out; } @@ -1272,6 +1273,8 @@ if (r->dev.parent && node == r->dev.of_node) return r; + *ret = -EPROBE_DEFER; + return NULL; } else { /* * If we couldn't even get the node then it's @@ -1312,7 +1315,7 @@ struct regulator_dev *rdev; struct regulator *regulator = ERR_PTR(-EPROBE_DEFER); const char *devname = NULL; - int ret = -EPROBE_DEFER; + int ret; if (id == NULL) { pr_err("get() with no identifier\n"); @@ -1322,6 +1325,11 @@ if (dev) devname = dev_name(dev); + if (have_full_constraints()) + ret = -ENODEV; + else + ret = -EPROBE_DEFER; + mutex_lock(®ulator_list_mutex); rdev = regulator_dev_lookup(dev, id, &ret); @@ -1352,7 +1360,7 @@ rdev = dummy_regulator_rdev; goto found; } else { - dev_err(dev, "dummy supplies not allowed\n"); + dev_warn(dev, "dummy supplies not allowed\n"); } mutex_unlock(®ulator_list_mutex); @@ -1900,8 +1908,6 @@ trace_regulator_disable_complete(rdev_get_name(rdev)); - _notifier_call_chain(rdev, REGULATOR_EVENT_DISABLE, - NULL); return 0; } @@ -1925,6 +1931,8 @@ rdev_err(rdev, "failed to disable\n"); return ret; } + _notifier_call_chain(rdev, REGULATOR_EVENT_DISABLE, + NULL); } rdev->use_count = 0; @@ -1977,20 +1985,16 @@ { int ret = 0; - /* force disable */ - if (rdev->desc->ops->disable) { - /* ah well, who wants to live forever... */ - ret = rdev->desc->ops->disable(rdev); - if (ret < 0) { - rdev_err(rdev, "failed to force disable\n"); - return ret; - } - /* notify other consumers that power has been forced off */ - _notifier_call_chain(rdev, REGULATOR_EVENT_FORCE_DISABLE | - REGULATOR_EVENT_DISABLE, NULL); + ret = _regulator_do_disable(rdev); + if (ret < 0) { + rdev_err(rdev, "failed to force disable\n"); + return ret; } - return ret; + _notifier_call_chain(rdev, REGULATOR_EVENT_FORCE_DISABLE | + REGULATOR_EVENT_DISABLE, NULL); + + return 0; } /** @@ -3623,23 +3627,18 @@ mutex_lock(®ulator_list_mutex); list_for_each_entry(rdev, ®ulator_list, list) { - struct regulator_ops *ops = rdev->desc->ops; - mutex_lock(&rdev->mutex); - if ((rdev->use_count > 0 || rdev->constraints->always_on) && - ops->enable) { - error = ops->enable(rdev); + if (rdev->use_count > 0 || rdev->constraints->always_on) { + error = _regulator_do_enable(rdev); if (error) ret = error; } else { if (!have_full_constraints()) goto unlock; - if (!ops->disable) - goto unlock; if (!_regulator_is_enabled(rdev)) goto unlock; - error = ops->disable(rdev); + error = _regulator_do_disable(rdev); if (error) ret = error; } @@ -3813,7 +3812,7 @@ ops = rdev->desc->ops; c = rdev->constraints; - if (!ops->disable || (c && c->always_on)) + if (c && c->always_on) continue; mutex_lock(&rdev->mutex); @@ -3834,7 +3833,7 @@ /* We log since this may kill the system if it * goes wrong. */ rdev_info(rdev, "disabling\n"); - ret = ops->disable(rdev); + ret = _regulator_do_disable(rdev); if (ret != 0) { rdev_err(rdev, "couldn't disable: %d\n", ret); } --- linux-3.13.0.orig/drivers/regulator/da9063-regulator.c +++ linux-3.13.0/drivers/regulator/da9063-regulator.c @@ -1,3 +1,4 @@ + /* * Regulator driver for DA9063 PMIC series * @@ -60,7 +61,8 @@ .desc.ops = &da9063_ldo_ops, \ .desc.min_uV = (min_mV) * 1000, \ .desc.uV_step = (step_mV) * 1000, \ - .desc.n_voltages = (((max_mV) - (min_mV))/(step_mV) + 1), \ + .desc.n_voltages = (((max_mV) - (min_mV))/(step_mV) + 1 \ + + (DA9063_V##regl_name##_BIAS)), \ .desc.enable_reg = DA9063_REG_##regl_name##_CONT, \ .desc.enable_mask = DA9063_LDO_EN, \ .desc.vsel_reg = DA9063_REG_V##regl_name##_A, \ --- linux-3.13.0.orig/drivers/rtc/Kconfig +++ linux-3.13.0/drivers/rtc/Kconfig @@ -880,6 +880,17 @@ comment "on-CPU RTC drivers" +config RTC_DRV_XGENE + tristate "APM X-Gene RTC driver support" + depends on ARCH_XGENE + help + This selects the APM X-Gene SoC RTC driver support. + If you have a APM X-Gene Platform with RTC, + say Y or M here. + + If unsure, say N. + + config RTC_DRV_DAVINCI tristate "TI DaVinci RTC" depends on ARCH_DAVINCI_DM365 --- linux-3.13.0.orig/drivers/rtc/Makefile +++ linux-3.13.0/drivers/rtc/Makefile @@ -131,5 +131,6 @@ obj-$(CONFIG_RTC_DRV_WM831X) += rtc-wm831x.o obj-$(CONFIG_RTC_DRV_WM8350) += rtc-wm8350.o obj-$(CONFIG_RTC_DRV_X1205) += rtc-x1205.o +obj-$(CONFIG_RTC_DRV_XGENE) += rtc-xgene.o obj-$(CONFIG_RTC_DRV_SIRFSOC) += rtc-sirfsoc.o obj-$(CONFIG_RTC_DRV_MOXART) += rtc-moxart.o --- linux-3.13.0.orig/drivers/rtc/rtc-cmos.c +++ linux-3.13.0/drivers/rtc/rtc-cmos.c @@ -34,11 +34,11 @@ #include #include #include -#include #include #include #include #include +#include /* this is for "generic access to PC-style RTC" using CMOS_READ/CMOS_WRITE */ #include @@ -377,6 +377,51 @@ return 0; } +/* + * Do not disable RTC alarm on shutdown - workaround for b0rked BIOSes. + */ +static bool alarm_disable_quirk; + +static int __init set_alarm_disable_quirk(const struct dmi_system_id *id) +{ + alarm_disable_quirk = true; + pr_info("rtc-cmos: BIOS has alarm-disable quirk. "); + pr_info("RTC alarms disabled\n"); + return 0; +} + +static const struct dmi_system_id rtc_quirks[] __initconst = { + /* https://bugzilla.novell.com/show_bug.cgi?id=805740 */ + { + .callback = set_alarm_disable_quirk, + .ident = "IBM Truman", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"), + DMI_MATCH(DMI_PRODUCT_NAME, "4852570"), + }, + }, + /* https://bugzilla.novell.com/show_bug.cgi?id=812592 */ + { + .callback = set_alarm_disable_quirk, + .ident = "Gigabyte GA-990XA-UD3", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, + "Gigabyte Technology Co., Ltd."), + DMI_MATCH(DMI_PRODUCT_NAME, "GA-990XA-UD3"), + }, + }, + /* http://permalink.gmane.org/gmane.linux.kernel/1604474 */ + { + .callback = set_alarm_disable_quirk, + .ident = "Toshiba Satellite L300", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"), + DMI_MATCH(DMI_PRODUCT_NAME, "Satellite L300"), + }, + }, + {} +}; + static int cmos_alarm_irq_enable(struct device *dev, unsigned int enabled) { struct cmos_rtc *cmos = dev_get_drvdata(dev); @@ -385,6 +430,9 @@ if (!is_valid_irq(cmos->irq)) return -EINVAL; + if (alarm_disable_quirk) + return 0; + spin_lock_irqsave(&rtc_lock, flags); if (enabled) @@ -1157,6 +1205,8 @@ platform_driver_registered = true; } + dmi_check_system(rtc_quirks); + if (retval == 0) return 0; --- linux-3.13.0.orig/drivers/rtc/rtc-max8907.c +++ linux-3.13.0/drivers/rtc/rtc-max8907.c @@ -51,7 +51,7 @@ { struct max8907_rtc *rtc = data; - regmap_update_bits(rtc->regmap, MAX8907_REG_ALARM0_CNTL, 0x7f, 0); + regmap_write(rtc->regmap, MAX8907_REG_ALARM0_CNTL, 0); rtc_update_irq(rtc->rtc_dev, 1, RTC_IRQF | RTC_AF); @@ -64,7 +64,7 @@ bcd2bin(regs[RTC_YEAR1]) - 1900; tm->tm_mon = bcd2bin(regs[RTC_MONTH] & 0x1f) - 1; tm->tm_mday = bcd2bin(regs[RTC_DATE] & 0x3f); - tm->tm_wday = (regs[RTC_WEEKDAY] & 0x07) - 1; + tm->tm_wday = (regs[RTC_WEEKDAY] & 0x07); if (regs[RTC_HOUR] & HOUR_12) { tm->tm_hour = bcd2bin(regs[RTC_HOUR] & 0x01f); if (tm->tm_hour == 12) @@ -88,7 +88,7 @@ regs[RTC_YEAR1] = bin2bcd(low); regs[RTC_MONTH] = bin2bcd(tm->tm_mon + 1); regs[RTC_DATE] = bin2bcd(tm->tm_mday); - regs[RTC_WEEKDAY] = tm->tm_wday + 1; + regs[RTC_WEEKDAY] = tm->tm_wday; regs[RTC_HOUR] = bin2bcd(tm->tm_hour); regs[RTC_MIN] = bin2bcd(tm->tm_min); regs[RTC_SEC] = bin2bcd(tm->tm_sec); @@ -153,7 +153,7 @@ tm_to_regs(&alrm->time, regs); /* Disable alarm while we update the target time */ - ret = regmap_update_bits(rtc->regmap, MAX8907_REG_ALARM0_CNTL, 0x7f, 0); + ret = regmap_write(rtc->regmap, MAX8907_REG_ALARM0_CNTL, 0); if (ret < 0) return ret; @@ -163,8 +163,7 @@ return ret; if (alrm->enabled) - ret = regmap_update_bits(rtc->regmap, MAX8907_REG_ALARM0_CNTL, - 0x7f, 0x7f); + ret = regmap_write(rtc->regmap, MAX8907_REG_ALARM0_CNTL, 0x77); return ret; } --- linux-3.13.0.orig/drivers/rtc/rtc-xgene.c +++ linux-3.13.0/drivers/rtc/rtc-xgene.c @@ -0,0 +1,392 @@ +/* + * AppliedMicro X-Gene SoC Real Time Clock Driver + * + * Copyright (c) 2013, Applied Micro Circuits Corporation + * Author: Rameshwar Prasad Sahu + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation; either version 2 of the License, or (at your + * option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#undef XGENE_RTC_DEBUG +#define DRV_NAME "xgene-rtc" + +/* RTC Register Offset */ + +#define RTC_CCVR 0x00 +#define RTC_CMR 0x04 +#define RTC_CLR 0x08 +#define RTC_CCR 0x0C +#define RTC_STAT 0x10 +#define RTC_RSTAT 0x14 +#define RTC_EOI 0x18 +#define RTC_VER 0x1C + +#define RTC_CCR_WEN 0x08 +#define RTC_CCR_EN 0x04 +#define RTC_CCR_MASK 0x02 +#define RTC_CCR_IE 0x01 + +#define RTC_STAT_BIT 0x01 + +#if defined(XGENE_RTC_DEBUG) +#define XGENE_RTC_LOG(fmt...) do { printk(KERN_INFO "X-Gene RTC CSR: " fmt); } while (0) +#else +#define XGENE_RTC_LOG(fmt...) +#endif + +struct xgene_rtc_pdata { + struct rtc_device *rtc; + struct device *dev; + unsigned long alarm_time; + void __iomem *baseaddr; + int irq; + spinlock_t lock; +}; + +static u32 xgene_rtc_readl(struct xgene_rtc_pdata *pdata, u32 reg) +{ + u32 val = readl(pdata->baseaddr + reg); + XGENE_RTC_LOG("RD: 0x%p VAL: 0x%08X\n", pdata->baseaddr + reg, val); + + return val; +} + +static void xgene_rtc_writel(struct xgene_rtc_pdata *pdata, u32 reg, u32 val) +{ + writel(val, pdata->baseaddr + reg); + XGENE_RTC_LOG("WR: 0x%p VAL: 0x%08X\n", pdata->baseaddr + reg, val); +} + +static int xgene_rtc_read_time(struct device *dev, struct rtc_time *tm) +{ + struct xgene_rtc_pdata *pdata = dev_get_drvdata(dev); + unsigned long rtc_time; + unsigned long flags; + + spin_lock_irqsave(&pdata->lock, flags); + rtc_time = (unsigned long) xgene_rtc_readl(pdata, RTC_CCVR); + spin_unlock_irqrestore(&pdata->lock, flags); + + rtc_time_to_tm(rtc_time, tm); + + pr_debug(DRV_NAME "tm is secs=%d, mins=%d, hours=%d, " + "mday=%d, mon=%d, year=%d, wday=%d\n", + tm->tm_sec, tm->tm_min, tm->tm_hour,tm->tm_mday, + tm->tm_mon, tm->tm_year, tm->tm_wday); + + return 0; +} + +static int xgene_rtc_set_mmss(struct device *dev, unsigned long secs) +{ + struct xgene_rtc_pdata *pdata = dev_get_drvdata(dev); + volatile u32 rtc_time; + volatile u32 loop_cnt = 0; + u32 cnt = (u32) secs; + unsigned long flags; + + spin_lock_irqsave(&pdata->lock, flags); + rtc_time = xgene_rtc_readl(pdata, RTC_CCVR); + xgene_rtc_writel(pdata, RTC_CLR, cnt); + + do { + rtc_time = xgene_rtc_readl(pdata, RTC_CCVR); + loop_cnt++; + udelay(100); + } while ((rtc_time != cnt) && (loop_cnt != 50000)); + + spin_unlock_irqrestore(&pdata->lock, flags); + + if (loop_cnt >= 50000) + printk("%s: Failed to load RTC counter 0x%x\n", __func__, cnt); + + return 0; +} + +static int xgene_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *alrm) +{ + struct xgene_rtc_pdata *pdata = dev_get_drvdata(dev); + unsigned long flags; + + spin_lock_irqsave(&pdata->lock, flags); + rtc_time_to_tm(pdata->alarm_time, &alrm->time); + alrm->enabled = xgene_rtc_readl(pdata, RTC_CCR) & RTC_CCR_IE; + spin_unlock_irqrestore(&pdata->lock, flags); + + return 0; +} + +static int xgene_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *alrm) +{ + struct xgene_rtc_pdata *pdata = dev_get_drvdata(dev); + unsigned long rtc_time; + unsigned long alarm_time; + u32 ccr; + int ret; + unsigned long flags; + + if (pdata->irq <= 0) + return -EINVAL; + + spin_lock_irqsave(&pdata->lock, flags); + rtc_time = (unsigned long) xgene_rtc_readl(pdata, RTC_CCVR); + + ret = rtc_tm_to_time(&alrm->time, &alarm_time); + if (ret) { + spin_unlock_irqrestore(&pdata->lock, flags); + return ret; + } + + if (alarm_time < rtc_time) { + spin_unlock_irqrestore(&pdata->lock, flags); + return -EINVAL; + } + + pdata->alarm_time = alarm_time; + xgene_rtc_writel(pdata, RTC_CMR, (u32)pdata->alarm_time); + + ccr = xgene_rtc_readl(pdata, RTC_CCR); + + if (alrm->enabled) { + ccr &= ~RTC_CCR_MASK; + ccr |= RTC_CCR_IE; + } else { + ccr &= ~RTC_CCR_IE; + ccr |= RTC_CCR_MASK; + } + + xgene_rtc_writel(pdata, RTC_CCR, ccr); + + spin_unlock_irqrestore(&pdata->lock, flags); + + return 0; +} + +static int xgene_rtc_proc(struct device *dev, struct seq_file *seq) +{ + struct xgene_rtc_pdata *pdata = dev_get_drvdata(dev); + u32 reg; + + reg= xgene_rtc_readl(pdata, RTC_CCVR); + seq_printf(seq, "Current Counter Value : %u\n", reg); + + reg = xgene_rtc_readl(pdata, RTC_CMR); + seq_printf(seq, "Counter Match Value : %u\n", reg); + + reg = xgene_rtc_readl(pdata, RTC_CLR); + seq_printf(seq, "Counter Load Value : %u\n", reg); + + reg = xgene_rtc_readl(pdata, RTC_CCR); + seq_printf(seq, "Counter Control : 0x%X\n", reg); + + reg= xgene_rtc_readl(pdata, RTC_STAT); + seq_printf(seq, "Interrupt Status : 0x%X\n", reg); + + reg = xgene_rtc_readl(pdata, RTC_RSTAT); + seq_printf(seq, "Raw Interrupt Status : 0x%X\n", reg); + + reg = xgene_rtc_readl(pdata, RTC_VER); + seq_printf(seq, "RTC Component Version : 0x%X\n", reg); + + return 0; +} + +static int xgene_rtc_alarm_irq_enable(struct device *dev, u32 enabled) +{ + struct xgene_rtc_pdata *pdata = dev_get_drvdata(dev); + u32 ccr; + unsigned long flags; + + spin_lock_irqsave(&pdata->lock, flags); + + ccr = xgene_rtc_readl(pdata, RTC_CCR); + + if (enabled) { + ccr &= ~RTC_CCR_MASK; + ccr |= RTC_CCR_IE; + } else { + ccr &= ~RTC_CCR_IE; + ccr |= RTC_CCR_MASK; + } + + xgene_rtc_writel(pdata, RTC_CCR, ccr); + + spin_unlock_irqrestore(&pdata->lock, flags); + + return 0; +} + +static const struct rtc_class_ops xgene_rtc_ops = { + .read_time = xgene_rtc_read_time, + .set_mmss = xgene_rtc_set_mmss, + .read_alarm = xgene_rtc_read_alarm, + .set_alarm = xgene_rtc_set_alarm, + .proc = xgene_rtc_proc, + .alarm_irq_enable = xgene_rtc_alarm_irq_enable, +}; + +static irqreturn_t xgene_rtc_interrupt(int irq, void *dev_id) +{ + struct xgene_rtc_pdata *pdata = (struct xgene_rtc_pdata *) dev_id; + unsigned long events = RTC_IRQF; + unsigned long flags; + u32 rtc_stat; + u32 rtc_eoi; + + spin_lock_irqsave(&pdata->lock, flags); + + /* read interrupt*/ + rtc_stat = xgene_rtc_readl(pdata, RTC_STAT); + if (!(rtc_stat & RTC_STAT_BIT)){ + spin_unlock_irqrestore(&pdata->lock, flags); + return IRQ_NONE; + } + + /* clear interrupt */ + rtc_eoi = xgene_rtc_readl(pdata, RTC_EOI); + + events |= RTC_AF; + if (pdata->rtc) + rtc_update_irq(pdata->rtc, 1, events); + spin_unlock_irqrestore(&pdata->lock, flags); + + return IRQ_HANDLED; +} + +static int xgene_rtc_probe(struct platform_device *pdev) +{ + struct rtc_device *rtc; + struct xgene_rtc_pdata *pdata; + struct clk *clk = NULL; + int ret; + + pdata = kzalloc(sizeof(*pdata), GFP_KERNEL); + if (!pdata) + return -ENOMEM; + + pdata->dev = &pdev->dev; + + pdata->baseaddr = of_iomap(pdev->dev.of_node, 0); + if (!pdata->baseaddr) { + dev_err(pdata->dev, "No RTC IO register entry in DTS\n"); + ret = -ENOMEM; + goto fail_map; + } + + pdata->irq = irq_of_parse_and_map(pdev->dev.of_node, 0); + if (pdata->irq > 0){ + ret = request_irq(pdata->irq, xgene_rtc_interrupt, + 0, DRV_NAME, pdata); + if (ret) { + dev_err(pdata->dev, "Failed to Register Interrupt\n"); + goto fail_request; + } + } + + clk = clk_get(pdata->dev, NULL); + if (IS_ERR(clk)) { + dev_err(pdata->dev, "Couldn't get the clock for RTC\n"); + return -ENODEV; + } + clk_prepare_enable(clk); + + /* + * turn on the clock and the crystal, etc. + */ + xgene_rtc_writel(pdata, RTC_CCR, RTC_CCR_EN); + + device_init_wakeup(&pdev->dev, 1); + + dev_set_drvdata(&pdev->dev, pdata); + + rtc = rtc_device_register(DRV_NAME, &pdev->dev, &xgene_rtc_ops, + THIS_MODULE); + if (IS_ERR(rtc)) { + ret = PTR_ERR(rtc); + goto out; + } + + rtc->uie_unsupported =1; + pdata->rtc = rtc; + + spin_lock_init(&pdata->lock); + + return 0; + +out: + if (pdata->rtc) + rtc_device_unregister(pdata->rtc); + + dev_set_drvdata(&pdev->dev, NULL); + free_irq(pdata->irq, pdata); + +fail_request: + irq_dispose_mapping(pdata->irq); + iounmap(pdata->baseaddr); + +fail_map: + kfree(pdata); + return ret; +} + +static int xgene_rtc_remove(struct platform_device *pdev) +{ + struct xgene_rtc_pdata *pdata = dev_get_drvdata(&pdev->dev); + + rtc_device_unregister(pdata->rtc); + pdata->rtc = NULL; + dev_set_drvdata(&pdev->dev, NULL); + + if (pdata->irq > 0) + free_irq(pdata->irq, pdata); + + irq_dispose_mapping(pdata->irq); + iounmap(pdata->baseaddr); + + return 0; +} + +static const struct of_device_id xgene_rtc_of_match[] = { + {.compatible = "apm,xgene-rtc",} , + {}, +}; + +/* Structure for a device driver */ +static struct platform_driver xgene_rtc_driver = { + .probe = xgene_rtc_probe, + .remove = xgene_rtc_remove, + .driver = { + .owner = THIS_MODULE, + .name = DRV_NAME, + .of_match_table = xgene_rtc_of_match, + }, +}; + +module_platform_driver(xgene_rtc_driver); + +MODULE_DESCRIPTION("APM X-Gene RTC driver"); +MODULE_AUTHOR("Rameshwar Sahu "); +MODULE_LICENSE("GPL"); --- linux-3.13.0.orig/drivers/s390/char/con3215.c +++ linux-3.13.0/drivers/s390/char/con3215.c @@ -922,7 +922,7 @@ raw3215_freelist = req; } - cdev = ccw_device_probe_console(); + cdev = ccw_device_probe_console(&raw3215_ccw_driver); if (IS_ERR(cdev)) return -ENODEV; --- linux-3.13.0.orig/drivers/s390/char/con3270.c +++ linux-3.13.0/drivers/s390/char/con3270.c @@ -576,7 +576,6 @@ static int __init con3270_init(void) { - struct ccw_device *cdev; struct raw3270 *rp; void *cbuf; int i; @@ -591,10 +590,7 @@ cpcmd("TERM AUTOCR OFF", NULL, 0, NULL); } - cdev = ccw_device_probe_console(); - if (IS_ERR(cdev)) - return -ENODEV; - rp = raw3270_setup_console(cdev); + rp = raw3270_setup_console(); if (IS_ERR(rp)) return PTR_ERR(rp); --- linux-3.13.0.orig/drivers/s390/char/raw3270.c +++ linux-3.13.0/drivers/s390/char/raw3270.c @@ -776,16 +776,24 @@ } #ifdef CONFIG_TN3270_CONSOLE +/* Tentative definition - see below for actual definition. */ +static struct ccw_driver raw3270_ccw_driver; + /* * Setup 3270 device configured as console. */ -struct raw3270 __init *raw3270_setup_console(struct ccw_device *cdev) +struct raw3270 __init *raw3270_setup_console(void) { + struct ccw_device *cdev; unsigned long flags; struct raw3270 *rp; char *ascebc; int rc; + cdev = ccw_device_probe_console(&raw3270_ccw_driver); + if (IS_ERR(cdev)) + return ERR_CAST(cdev); + rp = kzalloc(sizeof(struct raw3270), GFP_KERNEL | GFP_DMA); ascebc = kzalloc(256, GFP_KERNEL); rc = raw3270_setup_device(cdev, rp, ascebc); --- linux-3.13.0.orig/drivers/s390/char/raw3270.h +++ linux-3.13.0/drivers/s390/char/raw3270.h @@ -190,7 +190,7 @@ wake_up(&raw3270_wait_queue); } -struct raw3270 *raw3270_setup_console(struct ccw_device *cdev); +struct raw3270 *raw3270_setup_console(void); void raw3270_wait_cons_dev(struct raw3270 *); /* Notifier for device addition/removal */ --- linux-3.13.0.orig/drivers/s390/cio/device.c +++ linux-3.13.0/drivers/s390/cio/device.c @@ -1610,7 +1610,7 @@ return rc; } -struct ccw_device *ccw_device_probe_console(void) +struct ccw_device *ccw_device_probe_console(struct ccw_driver *drv) { struct io_subchannel_private *io_priv; struct ccw_device *cdev; @@ -1632,6 +1632,7 @@ kfree(io_priv); return cdev; } + cdev->drv = drv; set_io_private(sch, io_priv); ret = ccw_device_console_enable(cdev, sch); if (ret) { --- linux-3.13.0.orig/drivers/scsi/bfa/bfad.c +++ linux-3.13.0/drivers/scsi/bfa/bfad.c @@ -1802,7 +1802,7 @@ static u32 * bfad_load_fwimg(struct pci_dev *pdev) { - if (pdev->device == BFA_PCI_DEVICE_ID_CT2) { + if (bfa_asic_id_ct2(pdev->device)) { if (bfi_image_ct2_size == 0) bfad_read_firmware(pdev, &bfi_image_ct2, &bfi_image_ct2_size, BFAD_FW_FILE_CT2); @@ -1812,12 +1812,14 @@ bfad_read_firmware(pdev, &bfi_image_ct, &bfi_image_ct_size, BFAD_FW_FILE_CT); return bfi_image_ct; - } else { + } else if (bfa_asic_id_cb(pdev->device)) { if (bfi_image_cb_size == 0) bfad_read_firmware(pdev, &bfi_image_cb, &bfi_image_cb_size, BFAD_FW_FILE_CB); return bfi_image_cb; } + + return NULL; } static void --- linux-3.13.0.orig/drivers/scsi/isci/host.h +++ linux-3.13.0/drivers/scsi/isci/host.h @@ -311,9 +311,8 @@ } #define for_each_isci_host(id, ihost, pdev) \ - for (id = 0, ihost = to_pci_info(pdev)->hosts[id]; \ - id < ARRAY_SIZE(to_pci_info(pdev)->hosts) && ihost; \ - ihost = to_pci_info(pdev)->hosts[++id]) + for (id = 0; id < SCI_MAX_CONTROLLERS && \ + (ihost = to_pci_info(pdev)->hosts[id]); id++) static inline void wait_for_start(struct isci_host *ihost) { --- linux-3.13.0.orig/drivers/scsi/isci/port_config.c +++ linux-3.13.0/drivers/scsi/isci/port_config.c @@ -615,13 +615,6 @@ SCIC_SDS_APC_WAIT_LINK_UP_NOTIFICATION); } else { /* the phy is already the part of the port */ - u32 port_state = iport->sm.current_state_id; - - /* if the PORT'S state is resetting then the link up is from - * port hard reset in this case, we need to tell the port - * that link up is recieved - */ - BUG_ON(port_state != SCI_PORT_RESETTING); port_agent->phy_ready_mask |= 1 << phy_index; sci_port_link_up(iport, iphy); } --- linux-3.13.0.orig/drivers/scsi/isci/task.c +++ linux-3.13.0/drivers/scsi/isci/task.c @@ -801,7 +801,7 @@ /* XXX: need to cleanup any ireqs targeting this * domain_device */ - ret = TMF_RESP_FUNC_COMPLETE; + ret = -ENODEV; goto out; } --- linux-3.13.0.orig/drivers/scsi/megaraid/megaraid_sas.h +++ linux-3.13.0/drivers/scsi/megaraid/megaraid_sas.h @@ -1527,7 +1527,7 @@ u32 *reply_queue; dma_addr_t reply_queue_h; - unsigned long base_addr; + resource_size_t base_addr; struct megasas_register_set __iomem *reg_set; u32 *reply_post_host_index_addr[MR_MAX_MSIX_REG_ARRAY]; struct megasas_pd_list pd_list[MEGASAS_MAX_PD]; --- linux-3.13.0.orig/drivers/scsi/qla2xxx/qla_def.h +++ linux-3.13.0/drivers/scsi/qla2xxx/qla_def.h @@ -2993,8 +2993,7 @@ IS_QLA82XX(ha) || IS_QLA83XX(ha) || \ IS_QLA8044(ha)) #define IS_MSIX_NACK_CAPABLE(ha) (IS_QLA81XX(ha) || IS_QLA83XX(ha)) -#define IS_NOPOLLING_TYPE(ha) ((IS_QLA25XX(ha) || IS_QLA81XX(ha) || \ - IS_QLA83XX(ha)) && (ha)->flags.msix_enabled) +#define IS_NOPOLLING_TYPE(ha) (IS_QLA81XX(ha) && (ha)->flags.msix_enabled) #define IS_FAC_REQUIRED(ha) (IS_QLA81XX(ha) || IS_QLA83XX(ha)) #define IS_NOCACHE_VPD_TYPE(ha) (IS_QLA81XX(ha) || IS_QLA83XX(ha)) #define IS_ALOGIO_CAPABLE(ha) (IS_QLA23XX(ha) || IS_FWI2_CAPABLE(ha)) --- linux-3.13.0.orig/drivers/scsi/qla2xxx/qla_isr.c +++ linux-3.13.0/drivers/scsi/qla2xxx/qla_isr.c @@ -2829,6 +2829,7 @@ qla24xx_enable_msix(struct qla_hw_data *ha, struct rsp_que *rsp) { #define MIN_MSIX_COUNT 2 +#define ATIO_VECTOR 2 int i, ret; struct msix_entry *entries; struct qla_msix_entry *qentry; @@ -2885,34 +2886,47 @@ } /* Enable MSI-X vectors for the base queue */ - for (i = 0; i < ha->msix_count; i++) { + for (i = 0; i < 2; i++) { qentry = &ha->msix_entries[i]; - if (QLA_TGT_MODE_ENABLED() && IS_ATIO_MSIX_CAPABLE(ha)) { - ret = request_irq(qentry->vector, - qla83xx_msix_entries[i].handler, - 0, qla83xx_msix_entries[i].name, rsp); - } else if (IS_P3P_TYPE(ha)) { + if (IS_P3P_TYPE(ha)) ret = request_irq(qentry->vector, qla82xx_msix_entries[i].handler, 0, qla82xx_msix_entries[i].name, rsp); - } else { + else ret = request_irq(qentry->vector, msix_entries[i].handler, 0, msix_entries[i].name, rsp); - } - if (ret) { - ql_log(ql_log_fatal, vha, 0x00cb, - "MSI-X: unable to register handler -- %x/%d.\n", - qentry->vector, ret); - qla24xx_disable_msix(ha); - ha->mqenable = 0; - goto msix_out; - } + if (ret) + goto msix_register_fail; qentry->have_irq = 1; qentry->rsp = rsp; rsp->msix = qentry; } + /* + * If target mode is enable, also request the vector for the ATIO + * queue. + */ + if (QLA_TGT_MODE_ENABLED() && IS_ATIO_MSIX_CAPABLE(ha)) { + qentry = &ha->msix_entries[ATIO_VECTOR]; + ret = request_irq(qentry->vector, + qla83xx_msix_entries[ATIO_VECTOR].handler, + 0, qla83xx_msix_entries[ATIO_VECTOR].name, rsp); + qentry->have_irq = 1; + qentry->rsp = rsp; + rsp->msix = qentry; + } + +msix_register_fail: + if (ret) { + ql_log(ql_log_fatal, vha, 0x00cb, + "MSI-X: unable to register handler -- %x/%d.\n", + qentry->vector, ret); + qla24xx_disable_msix(ha); + ha->mqenable = 0; + goto msix_out; + } + /* Enable MSI-X vector for response queue update for queue 0 */ if (IS_QLA83XX(ha)) { if (ha->msixbase && ha->mqiobase && --- linux-3.13.0.orig/drivers/scsi/qla2xxx/qla_target.c +++ linux-3.13.0/drivers/scsi/qla2xxx/qla_target.c @@ -3186,7 +3186,8 @@ ql_dbg(ql_dbg_tgt_mgt, vha, 0xf02c, "SRR cmd %p (se_cmd %p, tag %d, op %x), " "sg_cnt=%d, offset=%d", cmd, &cmd->se_cmd, cmd->tag, - se_cmd->t_task_cdb[0], cmd->sg_cnt, cmd->offset); + se_cmd->t_task_cdb ? se_cmd->t_task_cdb[0] : 0, + cmd->sg_cnt, cmd->offset); qlt_handle_srr(vha, sctio, imm); --- linux-3.13.0.orig/drivers/scsi/qla4xxx/ql4_os.c +++ linux-3.13.0/drivers/scsi/qla4xxx/ql4_os.c @@ -802,6 +802,7 @@ int type; int rem = len; int rc = 0; + int size; memset(&chap_rec, 0, sizeof(chap_rec)); @@ -816,12 +817,14 @@ chap_rec.chap_type = param_info->value[0]; break; case ISCSI_CHAP_PARAM_USERNAME: - memcpy(chap_rec.username, param_info->value, - param_info->len); + size = min_t(size_t, sizeof(chap_rec.username), + param_info->len); + memcpy(chap_rec.username, param_info->value, size); break; case ISCSI_CHAP_PARAM_PASSWORD: - memcpy(chap_rec.password, param_info->value, - param_info->len); + size = min_t(size_t, sizeof(chap_rec.password), + param_info->len); + memcpy(chap_rec.password, param_info->value, size); break; case ISCSI_CHAP_PARAM_PASSWORD_LEN: chap_rec.password_length = param_info->value[0]; --- linux-3.13.0.orig/drivers/scsi/scsi_lib.c +++ linux-3.13.0/drivers/scsi/scsi_lib.c @@ -1684,7 +1684,7 @@ host_dev = scsi_get_device(shost); if (host_dev && host_dev->dma_mask) - bounce_limit = dma_max_pfn(host_dev) << PAGE_SHIFT; + bounce_limit = (u64)dma_max_pfn(host_dev) << PAGE_SHIFT; return bounce_limit; } --- linux-3.13.0.orig/drivers/scsi/scsi_scan.c +++ linux-3.13.0/drivers/scsi/scsi_scan.c @@ -320,6 +320,7 @@ struct Scsi_Host *shost = dev_to_shost(dev->parent); unsigned long flags; + starget->state = STARGET_DEL; transport_destroy_device(dev); spin_lock_irqsave(shost->host_lock, flags); if (shost->hostt->target_destroy) @@ -371,6 +372,37 @@ } /** + * scsi_target_reap_ref_release - remove target from visibility + * @kref: the reap_ref in the target being released + * + * Called on last put of reap_ref, which is the indication that no device + * under this target is visible anymore, so render the target invisible in + * sysfs. Note: we have to be in user context here because the target reaps + * should be done in places where the scsi device visibility is being removed. + */ +static void scsi_target_reap_ref_release(struct kref *kref) +{ + struct scsi_target *starget + = container_of(kref, struct scsi_target, reap_ref); + + /* + * if we get here and the target is still in the CREATED state that + * means it was allocated but never made visible (because a scan + * turned up no LUNs), so don't call device_del() on it. + */ + if (starget->state != STARGET_CREATED) { + transport_remove_device(&starget->dev); + device_del(&starget->dev); + } + scsi_target_destroy(starget); +} + +static void scsi_target_reap_ref_put(struct scsi_target *starget) +{ + kref_put(&starget->reap_ref, scsi_target_reap_ref_release); +} + +/** * scsi_alloc_target - allocate a new or find an existing target * @parent: parent of the target (need not be a scsi host) * @channel: target channel number (zero if no channels) @@ -392,7 +424,7 @@ + shost->transportt->target_size; struct scsi_target *starget; struct scsi_target *found_target; - int error; + int error, ref_got; starget = kzalloc(size, GFP_KERNEL); if (!starget) { @@ -401,7 +433,7 @@ } dev = &starget->dev; device_initialize(dev); - starget->reap_ref = 1; + kref_init(&starget->reap_ref); dev->parent = get_device(parent); dev_set_name(dev, "target%d:%d:%d", shost->host_no, channel, id); dev->bus = &scsi_bus_type; @@ -441,29 +473,36 @@ return starget; found: - found_target->reap_ref++; + /* + * release routine already fired if kref is zero, so if we can still + * take the reference, the target must be alive. If we can't, it must + * be dying and we need to wait for a new target + */ + ref_got = kref_get_unless_zero(&found_target->reap_ref); + spin_unlock_irqrestore(shost->host_lock, flags); - if (found_target->state != STARGET_DEL) { + if (ref_got) { put_device(dev); return found_target; } - /* Unfortunately, we found a dying target; need to - * wait until it's dead before we can get a new one */ + /* + * Unfortunately, we found a dying target; need to wait until it's + * dead before we can get a new one. There is an anomaly here. We + * *should* call scsi_target_reap() to balance the kref_get() of the + * reap_ref above. However, since the target being released, it's + * already invisible and the reap_ref is irrelevant. If we call + * scsi_target_reap() we might spuriously do another device_del() on + * an already invisible target. + */ put_device(&found_target->dev); - flush_scheduled_work(); + /* + * length of time is irrelevant here, we just want to yield the CPU + * for a tick to avoid busy waiting for the target to die. + */ + msleep(1); goto retry; } -static void scsi_target_reap_usercontext(struct work_struct *work) -{ - struct scsi_target *starget = - container_of(work, struct scsi_target, ew.work); - - transport_remove_device(&starget->dev); - device_del(&starget->dev); - scsi_target_destroy(starget); -} - /** * scsi_target_reap - check to see if target is in use and destroy if not * @starget: target to be checked @@ -474,28 +513,13 @@ */ void scsi_target_reap(struct scsi_target *starget) { - struct Scsi_Host *shost = dev_to_shost(starget->dev.parent); - unsigned long flags; - enum scsi_target_state state; - int empty = 0; - - spin_lock_irqsave(shost->host_lock, flags); - state = starget->state; - if (--starget->reap_ref == 0 && list_empty(&starget->devices)) { - empty = 1; - starget->state = STARGET_DEL; - } - spin_unlock_irqrestore(shost->host_lock, flags); - - if (!empty) - return; - - BUG_ON(state == STARGET_DEL); - if (state == STARGET_CREATED) - scsi_target_destroy(starget); - else - execute_in_process_context(scsi_target_reap_usercontext, - &starget->ew); + /* + * serious problem if this triggers: STARGET_DEL is only set in the if + * the reap_ref drops to zero, so we're trying to do another final put + * on an already released kref + */ + BUG_ON(starget->state == STARGET_DEL); + scsi_target_reap_ref_put(starget); } /** @@ -1532,6 +1556,10 @@ } mutex_unlock(&shost->scan_mutex); scsi_autopm_put_target(starget); + /* + * paired with scsi_alloc_target(). Target will be destroyed unless + * scsi_probe_and_add_lun made an underlying device visible + */ scsi_target_reap(starget); put_device(&starget->dev); @@ -1612,8 +1640,10 @@ out_reap: scsi_autopm_put_target(starget); - /* now determine if the target has any children at all - * and if not, nuke it */ + /* + * paired with scsi_alloc_target(): determine if the target has + * any children at all and if not, nuke it + */ scsi_target_reap(starget); put_device(&starget->dev); --- linux-3.13.0.orig/drivers/scsi/scsi_sysfs.c +++ linux-3.13.0/drivers/scsi/scsi_sysfs.c @@ -369,17 +369,14 @@ { struct scsi_device *sdev; struct device *parent; - struct scsi_target *starget; struct list_head *this, *tmp; unsigned long flags; sdev = container_of(work, struct scsi_device, ew.work); parent = sdev->sdev_gendev.parent; - starget = to_scsi_target(parent); spin_lock_irqsave(sdev->host->host_lock, flags); - starget->reap_ref++; list_del(&sdev->siblings); list_del(&sdev->same_target_siblings); list_del(&sdev->starved_entry); @@ -399,8 +396,6 @@ /* NULL queue means the device can't be used */ sdev->request_queue = NULL; - scsi_target_reap(scsi_target(sdev)); - kfree(sdev->inquiry); kfree(sdev); @@ -1057,6 +1052,13 @@ sdev->host->hostt->slave_destroy(sdev); transport_destroy_device(dev); + /* + * Paired with the kref_get() in scsi_sysfs_initialize(). We have + * remoed sysfs visibility from the device, so make the target + * invisible if this was the last device underneath it. + */ + scsi_target_reap(scsi_target(sdev)); + put_device(dev); } @@ -1119,7 +1121,7 @@ continue; if (starget->dev.parent == dev || &starget->dev == dev) { /* assuming new targets arrive at the end */ - starget->reap_ref++; + kref_get(&starget->reap_ref); spin_unlock_irqrestore(shost->host_lock, flags); if (last) scsi_target_reap(last); @@ -1203,6 +1205,12 @@ list_add_tail(&sdev->same_target_siblings, &starget->devices); list_add_tail(&sdev->siblings, &shost->__devices); spin_unlock_irqrestore(shost->host_lock, flags); + /* + * device can now only be removed via __scsi_remove_device() so hold + * the target. Target will be held in CREATED state until something + * beneath it becomes visible (in which case it moves to RUNNING) + */ + kref_get(&starget->reap_ref); } int scsi_is_sdev_device(const struct device *dev) --- linux-3.13.0.orig/drivers/scsi/sd.c +++ linux-3.13.0/drivers/scsi/sd.c @@ -1463,8 +1463,8 @@ sd_print_sense_hdr(sdkp, &sshdr); /* we need to evaluate the error return */ if (scsi_sense_valid(&sshdr) && - /* 0x3a is medium not present */ - sshdr.asc == 0x3a) + (sshdr.asc == 0x3a || /* medium not present */ + sshdr.asc == 0x20)) /* invalid command */ /* this is no error here */ return 0; --- linux-3.13.0.orig/drivers/scsi/storvsc_drv.c +++ linux-3.13.0/drivers/scsi/storvsc_drv.c @@ -1419,6 +1419,9 @@ { struct stor_mem_pools *memp = sdevice->hostdata; + if (!memp) + return; + mempool_destroy(memp->request_mempool); kmem_cache_destroy(memp->request_pool); kfree(memp); @@ -1438,6 +1441,14 @@ sdevice->no_write_same = 1; + /* + * hyper-v lies about its capabilities indicating it is only SPC-2 + * compliant, but actually implements the core SPC-3 features. + * If we pretend to be SPC-3, we send RC16 which activates trim and + * will query the appropriate VPD pages to enable trim. + */ + sdevice->scsi_level = SCSI_SPC_3; + return 0; } --- linux-3.13.0.orig/drivers/scsi/virtio_scsi.c +++ linux-3.13.0/drivers/scsi/virtio_scsi.c @@ -956,6 +956,10 @@ #ifdef CONFIG_PM_SLEEP static int virtscsi_freeze(struct virtio_device *vdev) { + struct Scsi_Host *sh = virtio_scsi_host(vdev); + struct virtio_scsi *vscsi = shost_priv(sh); + + unregister_hotcpu_notifier(&vscsi->nb); virtscsi_remove_vqs(vdev); return 0; } @@ -964,8 +968,17 @@ { struct Scsi_Host *sh = virtio_scsi_host(vdev); struct virtio_scsi *vscsi = shost_priv(sh); + int err; + + err = virtscsi_init(vdev, vscsi); + if (err) + return err; + + err = register_hotcpu_notifier(&vscsi->nb); + if (err) + vdev->config->del_vqs(vdev); - return virtscsi_init(vdev, vscsi); + return err; } #endif --- linux-3.13.0.orig/drivers/spi/spi-ath79.c +++ linux-3.13.0/drivers/spi/spi-ath79.c @@ -132,9 +132,9 @@ flags = GPIOF_DIR_OUT; if (spi->mode & SPI_CS_HIGH) - flags |= GPIOF_INIT_HIGH; - else flags |= GPIOF_INIT_LOW; + else + flags |= GPIOF_INIT_HIGH; status = gpio_request_one(cdata->gpio, flags, dev_name(&spi->dev)); --- linux-3.13.0.orig/drivers/spi/spi-bcm63xx.c +++ linux-3.13.0/drivers/spi/spi-bcm63xx.c @@ -169,8 +169,6 @@ transfer_list); } - len -= prepend_len; - init_completion(&bs->done); /* Fill in the Message control register */ --- linux-3.13.0.orig/drivers/spi/spi-coldfire-qspi.c +++ linux-3.13.0/drivers/spi/spi-coldfire-qspi.c @@ -539,7 +539,8 @@ #ifdef CONFIG_PM_RUNTIME static int mcfqspi_runtime_suspend(struct device *dev) { - struct mcfqspi *mcfqspi = dev_get_drvdata(dev); + struct spi_master *master = dev_get_drvdata(dev); + struct mcfqspi *mcfqspi = spi_master_get_devdata(master); clk_disable(mcfqspi->clk); @@ -548,7 +549,8 @@ static int mcfqspi_runtime_resume(struct device *dev) { - struct mcfqspi *mcfqspi = dev_get_drvdata(dev); + struct spi_master *master = dev_get_drvdata(dev); + struct mcfqspi *mcfqspi = spi_master_get_devdata(master); clk_enable(mcfqspi->clk); --- linux-3.13.0.orig/drivers/spi/spi-efm32.c +++ linux-3.13.0/drivers/spi/spi-efm32.c @@ -487,6 +487,9 @@ static const struct of_device_id efm32_spi_dt_ids[] = { { + .compatible = "energymicro,efm32-spi", + }, { + /* doesn't follow the "vendor,device" scheme, don't use */ .compatible = "efm32,spi", }, { /* sentinel */ --- linux-3.13.0.orig/drivers/spi/spi-fsl-dspi.c +++ linux-3.13.0/drivers/spi/spi-fsl-dspi.c @@ -421,7 +421,6 @@ static int dspi_resume(struct device *dev) { - struct spi_master *master = dev_get_drvdata(dev); struct fsl_dspi *dspi = spi_master_get_devdata(master); @@ -505,7 +504,7 @@ clk_prepare_enable(dspi->clk); init_waitqueue_head(&dspi->waitq); - platform_set_drvdata(pdev, dspi); + platform_set_drvdata(pdev, master); ret = spi_bitbang_start(&dspi->bitbang); if (ret != 0) { @@ -526,7 +525,8 @@ static int dspi_remove(struct platform_device *pdev) { - struct fsl_dspi *dspi = platform_get_drvdata(pdev); + struct spi_master *master = platform_get_drvdata(pdev); + struct fsl_dspi *dspi = spi_master_get_devdata(master); /* Disconnect from the SPI framework */ spi_bitbang_stop(&dspi->bitbang); --- linux-3.13.0.orig/drivers/spi/spi-imx.c +++ linux-3.13.0/drivers/spi/spi-imx.c @@ -925,8 +925,8 @@ spi_bitbang_stop(&spi_imx->bitbang); writel(0, spi_imx->base + MXC_CSPICTRL); - clk_disable_unprepare(spi_imx->clk_ipg); - clk_disable_unprepare(spi_imx->clk_per); + clk_unprepare(spi_imx->clk_ipg); + clk_unprepare(spi_imx->clk_per); spi_master_put(master); return 0; --- linux-3.13.0.orig/drivers/spi/spi-nuc900.c +++ linux-3.13.0/drivers/spi/spi-nuc900.c @@ -363,6 +363,8 @@ init_completion(&hw->done); master->mode_bits = SPI_CPOL | SPI_CPHA | SPI_CS_HIGH; + if (hw->pdata->lsb) + master->mode_bits |= SPI_LSB_FIRST; master->num_chipselect = hw->pdata->num_cs; master->bus_num = hw->pdata->bus_num; hw->bitbang.master = hw->master; --- linux-3.13.0.orig/drivers/spi/spi-pxa2xx.c +++ linux-3.13.0/drivers/spi/spi-pxa2xx.c @@ -1066,6 +1066,8 @@ pdata->num_chipselect = 1; pdata->enable_dma = true; + pdata->tx_chan_id = -1; + pdata->rx_chan_id = -1; return pdata; } --- linux-3.13.0.orig/drivers/staging/Kconfig +++ linux-3.13.0/drivers/staging/Kconfig @@ -52,6 +52,8 @@ source "drivers/staging/rtl8188eu/Kconfig" +source "drivers/staging/rtl8821ae/Kconfig" + source "drivers/staging/rts5139/Kconfig" source "drivers/staging/frontier/Kconfig" @@ -150,4 +152,8 @@ source "drivers/staging/dgap/Kconfig" +source "drivers/staging/fsl_qbman/Kconfig" + +source "drivers/staging/fsl_pme2/Kconfig" + endif # STAGING --- linux-3.13.0.orig/drivers/staging/Makefile +++ linux-3.13.0/drivers/staging/Makefile @@ -18,6 +18,7 @@ obj-$(CONFIG_RTL8192E) += rtl8192e/ obj-$(CONFIG_R8712U) += rtl8712/ obj-$(CONFIG_R8188EU) += rtl8188eu/ +obj-$(CONFIG_R8821AE) += rtl8821ae/ obj-$(CONFIG_RTS5139) += rts5139/ obj-$(CONFIG_TRANZPORT) += frontier/ obj-$(CONFIG_IDE_PHISON) += phison/ @@ -67,3 +68,5 @@ obj-$(CONFIG_DGNC) += dgnc/ obj-$(CONFIG_DGAP) += dgap/ obj-$(CONFIG_MTD_SPINAND_MT29F) += mt29f_spinand/ +obj-$(CONFIG_FSL_DPA) += fsl_qbman/ +obj-$(CONFIG_FSL_PME2) += fsl_pme2/ --- linux-3.13.0.orig/drivers/staging/android/binder.c +++ linux-3.13.0/drivers/staging/android/binder.c @@ -2904,7 +2904,7 @@ refs++; if (!ref->death) - goto out; + continue; death++; @@ -2917,7 +2917,6 @@ BUG(); } -out: binder_debug(BINDER_DEBUG_DEAD_BINDER, "node %d now dead, refs %d, death %d\n", node->debug_id, refs, death); --- linux-3.13.0.orig/drivers/staging/bcm/Bcmnet.c +++ linux-3.13.0/drivers/staging/bcm/Bcmnet.c @@ -40,7 +40,7 @@ } static u16 bcm_select_queue(struct net_device *dev, struct sk_buff *skb, - void *accel_priv) + void *accel_priv, select_queue_fallback_t fallback) { return ClassifyPacket(netdev_priv(dev), skb); } --- linux-3.13.0.orig/drivers/staging/comedi/comedi_fops.c +++ linux-3.13.0/drivers/staging/comedi/comedi_fops.c @@ -1425,6 +1425,7 @@ async->cmd.chanlist_len * sizeof(int)); if (IS_ERR(async->cmd.chanlist)) { ret = PTR_ERR(async->cmd.chanlist); + async->cmd.chanlist = NULL; DPRINTK("memdup_user failed with code %d\n", ret); goto cleanup; } @@ -1547,6 +1548,7 @@ cmd.chanlist_len * sizeof(int)); if (IS_ERR(chanlist)) { ret = PTR_ERR(chanlist); + chanlist = NULL; DPRINTK("memdup_user exited with code %d", ret); goto cleanup; } --- linux-3.13.0.orig/drivers/staging/comedi/drivers/8255_pci.c +++ linux-3.13.0/drivers/staging/comedi/drivers/8255_pci.c @@ -56,6 +56,7 @@ #include "../comedidev.h" #include "8255.h" +#include "mite.h" enum pci_8255_boardid { BOARD_ADLINK_PCI7224, @@ -79,6 +80,7 @@ const char *name; int dio_badr; int n_8255; + unsigned int has_mite:1; }; static const struct pci_8255_boardinfo pci_8255_boards[] = { @@ -126,36 +128,43 @@ .name = "ni_pci-dio-96", .dio_badr = 1, .n_8255 = 4, + .has_mite = 1, }, [BOARD_NI_PCIDIO96B] = { .name = "ni_pci-dio-96b", .dio_badr = 1, .n_8255 = 4, + .has_mite = 1, }, [BOARD_NI_PXI6508] = { .name = "ni_pxi-6508", .dio_badr = 1, .n_8255 = 4, + .has_mite = 1, }, [BOARD_NI_PCI6503] = { .name = "ni_pci-6503", .dio_badr = 1, .n_8255 = 1, + .has_mite = 1, }, [BOARD_NI_PCI6503B] = { .name = "ni_pci-6503b", .dio_badr = 1, .n_8255 = 1, + .has_mite = 1, }, [BOARD_NI_PCI6503X] = { .name = "ni_pci-6503x", .dio_badr = 1, .n_8255 = 1, + .has_mite = 1, }, [BOARD_NI_PXI_6503] = { .name = "ni_pxi-6503", .dio_badr = 1, .n_8255 = 1, + .has_mite = 1, }, }; @@ -163,6 +172,25 @@ void __iomem *mmio_base; }; +static int pci_8255_mite_init(struct pci_dev *pcidev) +{ + void __iomem *mite_base; + u32 main_phys_addr; + + /* ioremap the MITE registers (BAR 0) temporarily */ + mite_base = pci_ioremap_bar(pcidev, 0); + if (!mite_base) + return -ENOMEM; + + /* set data window to main registers (BAR 1) */ + main_phys_addr = pci_resource_start(pcidev, 1); + writel(main_phys_addr | WENAB, mite_base + MITE_IODWBSR); + + /* finished with MITE registers */ + iounmap(mite_base); + return 0; +} + static int pci_8255_mmio(int dir, int port, int data, unsigned long iobase) { void __iomem *mmio_base = (void __iomem *)iobase; @@ -201,6 +229,12 @@ if (ret) return ret; + if (board->has_mite) { + ret = pci_8255_mite_init(pcidev); + if (ret) + return ret; + } + is_mmio = (pci_resource_flags(pcidev, board->dio_badr) & IORESOURCE_MEM) != 0; if (is_mmio) { --- linux-3.13.0.orig/drivers/staging/comedi/drivers/addi_apci_1032.c +++ linux-3.13.0/drivers/staging/comedi/drivers/addi_apci_1032.c @@ -325,8 +325,8 @@ s = &dev->subdevices[1]; if (dev->irq) { dev->read_subdev = s; - s->type = COMEDI_SUBD_DI | SDF_CMD_READ; - s->subdev_flags = SDF_READABLE; + s->type = COMEDI_SUBD_DI; + s->subdev_flags = SDF_READABLE | SDF_CMD_READ; s->n_chan = 1; s->maxdata = 1; s->range_table = &range_digital; --- linux-3.13.0.orig/drivers/staging/comedi/drivers/adl_pci9111.c +++ linux-3.13.0/drivers/staging/comedi/drivers/adl_pci9111.c @@ -859,7 +859,7 @@ pci9111_reset(dev); if (pcidev->irq > 0) { - ret = request_irq(dev->irq, pci9111_interrupt, + ret = request_irq(pcidev->irq, pci9111_interrupt, IRQF_SHARED, dev->board_name, dev); if (ret) return ret; --- linux-3.13.0.orig/drivers/staging/comedi/drivers/adv_pci1710.c +++ linux-3.13.0/drivers/staging/comedi/drivers/adv_pci1710.c @@ -489,6 +489,7 @@ struct comedi_insn *insn, unsigned int *data) { struct pci1710_private *devpriv = dev->private; + unsigned int val; int n, chan, range, ofs; chan = CR_CHAN(insn->chanspec); @@ -504,11 +505,14 @@ outw(devpriv->da_ranges, dev->iobase + PCI171x_DAREF); ofs = PCI171x_DA1; } + val = devpriv->ao_data[chan]; - for (n = 0; n < insn->n; n++) - outw(data[n], dev->iobase + ofs); + for (n = 0; n < insn->n; n++) { + val = data[n]; + outw(val, dev->iobase + ofs); + } - devpriv->ao_data[chan] = data[n]; + devpriv->ao_data[chan] = val; return n; @@ -674,6 +678,7 @@ struct comedi_insn *insn, unsigned int *data) { struct pci1710_private *devpriv = dev->private; + unsigned int val; int n, rangereg, chan; chan = CR_CHAN(insn->chanspec); @@ -683,13 +688,15 @@ outb(rangereg, dev->iobase + PCI1720_RANGE); devpriv->da_ranges = rangereg; } + val = devpriv->ao_data[chan]; for (n = 0; n < insn->n; n++) { - outw(data[n], dev->iobase + PCI1720_DA0 + (chan << 1)); + val = data[n]; + outw(val, dev->iobase + PCI1720_DA0 + (chan << 1)); outb(0, dev->iobase + PCI1720_SYNCOUT); /* update outputs */ } - devpriv->ao_data[chan] = data[n]; + devpriv->ao_data[chan] = val; return n; } --- linux-3.13.0.orig/drivers/staging/fsl_pme2/Kconfig +++ linux-3.13.0/drivers/staging/fsl_pme2/Kconfig @@ -0,0 +1,215 @@ +config FSL_PME2 + bool "Freescale Datapath Pattern Matcher support" + depends on HAS_FSL_PME && FSL_QMAN_PORTAL + default y + +menu "Freescale Datapath PME options" + depends on FSL_PME2 + +config FSL_PME2_CTRL + bool "Freescale PME2 (p4080, etc) device control" + default y + ---help--- + This compiles device support for the Freescale PME2 pattern matching + part contained in datapath-enabled SoCs (ie. accessed via Qman and + Bman portal functionality). At least one guest operating system must + have this driver support, together with the appropriate device-tree + entry, for PME2 functionality to be available. It is responsible for + allocating system memory to the device and configuring it for + operation. For this reason, it must be built into the kernel and will + initialise during early kernel boot. + +config FSL_PME2_PDSRSIZE + int "Pattern Description and Stateful Rule default table size" + depends on FSL_PME2_CTRL + range 74240 1048573 + default 131072 + help + Select the default size of the Pattern Description and Stateful Rule + table as the number of 128 byte entries. This only takes effect if + the device tree node doesn't have the 'fsl,pme-pdsr' property. + range 74240-1048573 (9.5MB-134MB) + default 131072 (16MB) + +if FSL_PME2_CTRL +comment "Statefule Rule Engine" +endif + +config FSL_PME2_SRESIZE + int "SRE Session Context Entries table default table size" + depends on FSL_PME2_CTRL + range 0 134217727 + default 327680 + help + Select the default size of the SRE Context Table as the number of 32 + byte entries. This only takes effect if the device tree node doesn't + have the 'fsl,pme-sre' property. + range 0-134217727 (0-4GB) + default 327680 (10MB) + +config FSL_PME2_SRE_AIM + bool "Alternate Inconclusive Mode" + depends on FSL_PME2_CTRL + default n + help + Select the inconclusive match mode treatment. When true the + “alternate” inconclusive mode is used. When false the “default” + inconclusive mode is used. + +config FSL_PME2_SRE_ESR + bool "End of SUI Simple Report" + depends on FSL_PME2_CTRL + default n + help + Select if an End of SUI will produce a Simple End of SUI report. + +config FSL_PME2_SRE_CTX_SIZE_PER_SESSION + int "Default SRE Context Size per Session (16 => 64KB, 17 => 128KB)" + depends on FSL_PME2_CTRL + range 5 17 + default 17 + help + Select SRE context size per session as a power of 2. + range 5-17 + Examples: + 5 => 32 B + 6 => 64 B + 7 => 128 B + 8 => 256 B + 9 => 512 B + 10 => 1 KB + 11 => 2 KB + 12 => 4 KB + 13 => 8 KB + 14 => 16 KB + 15 => 32 KB + 16 => 64 KB + 17 => 128 KB + +config FSL_PME2_SRE_CNR + int "Configured Number of Stateful Rules as a multiple of 256 (128 => 32768 )" + depends on FSL_PME2_CTRL + range 0 128 + default 128 + help + Select number of stateful rules as a multiple of 256. + range 0-128 + Examples: + 0 => 0 + 1 => 256 + 2 => 512 + ... + 127 => 32512 + 128 => 32768 + +config FSL_PME2_SRE_MAX_INSTRUCTION_LIMIT + int "Maximum number of SRE instructions to be executed per reaction." + depends on FSL_PME2_CTRL + range 0 65535 + default 65535 + help + Select the maximum number of SRE instructions to be executed per + reaction. + range 0 65535 + +config FSL_PME2_SRE_MAX_BLOCK_NUMBER + int "Maximum number of Reaction Head blocks to be traversed per pattern match event" + depends on FSL_PME2_CTRL + range 0 32767 + default 32767 + help + Select the maximum number of reaction head blocks to be traversed per + pattern match event (e.g. a matched pattern or an End of SUI event). + range 0-32767 + +config FSL_PME2_PORTAL + tristate "Freescale PME2 (p4080, etc) device usage" + default y + ---help--- + This compiles I/O support for the Freescale PME2 pattern matching + part contained in datapath-enabled SoCs (ie. accessed via Qman and + Bman portal functionality). + +if FSL_PME2_PORTAL + +config FSL_PME2_TEST_HIGH + tristate "PME2 high-level self-test" + default n + ---help--- + This uses the high-level Qman driver (and the cpu-affine portals it + manages) to perform high-level PME2 API testing with it. + +config FSL_PME2_TEST_SCAN + tristate "PME2 scan self-test" + default n + ---help--- + This uses the high-level Qman driver (and the cpu-affine portals it + manages) to perform scan PME2 API testing with it. + +config FSL_PME2_TEST_SCAN_WITH_BPID + bool "PME2 scan self-test with buffer pool" + depends on FSL_PME2_TEST_SCAN && FSL_BMAN_PORTAL + default y + ---help--- + This uses a buffer pool id for scan test + +config FSL_PME2_TEST_SCAN_WITH_BPID_SIZE + int "Buffer Pool size." + depends on FSL_PME2_TEST_SCAN_WITH_BPID + range 0 11 + default 3 + ---help--- + This uses the specified buffer pool size. + +config FSL_PME2_DB + tristate "PME2 Database support" + depends on FSL_PME2_CTRL + default y + ---help--- + This compiles the database driver for PME2. + +config FSL_PME2_DB_QOSOUT_PRIORITY + int "PME DB output frame queue priority." + depends on FSL_PME2_DB + range 0 7 + default 2 + ---help--- + The PME DB has a scheduled output frame queue. The qos priority level is configurable. + range 0-7 + 0 => High Priority 0 + 1 => High Priority 1 + 2 => Medium Priority + 3 => Medium Priority + 4 => Medium Priority + 5 => Low Priority + 6 => Low Priority + 7 => Low Priority + +config FSL_PME2_SCAN + tristate "PME2 Scan support" + default y + ---help--- + This compiles the scan driver for PME2. + +config FSL_PME2_SCAN_DEBUG + bool "Debug Statements" + default n + depends on FSL_PME2_SCAN + ---help--- + The PME2_SCAN driver can optionally trace with more verbosity + of verbosity. + +endif + +config FSL_PME2_STAT_ACCUMULATOR_UPDATE_INTERVAL + int "Configure the pme2 statistics update interval in milliseconds" + depends on FSL_PME2_CTRL + range 0 10000 + default 3400 + help + The pme accumulator reads the current device statistics and add it + to a running counter. The frequency of these updates may be + controlled. If 0 is specified, no automatic updates is done. + range 0-10000 + +endmenu --- linux-3.13.0.orig/drivers/staging/fsl_pme2/Makefile +++ linux-3.13.0/drivers/staging/fsl_pme2/Makefile @@ -0,0 +1,10 @@ +# PME +obj-$(CONFIG_FSL_PME2_CTRL) += pme2_ctrl.o pme2_sysfs.o +obj-$(CONFIG_FSL_PME2_PORTAL) += pme2.o +pme2-y := pme2_low.o pme2_high.o +obj-$(CONFIG_FSL_PME2_TEST_HIGH) += pme2_test_high.o +obj-$(CONFIG_FSL_PME2_TEST_SCAN) += pme2_test_scanning.o +pme2_test_scanning-y = pme2_test_scan.o pme2_sample_db.o +obj-$(CONFIG_FSL_PME2_DB) += pme2_db.o +obj-$(CONFIG_FSL_PME2_SCAN) += pme2_scan.o + --- linux-3.13.0.orig/drivers/staging/fsl_pme2/pme2_ctrl.c +++ linux-3.13.0/drivers/staging/fsl_pme2/pme2_ctrl.c @@ -0,0 +1,1335 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include + +#include "pme2_private.h" +#include "pme2_regs.h" + +/* PME HW Revision */ +#define PME_REV(rev1_reg) (rev1_reg & 0x0000FFFF) +#define PME_REV_2_0 0x00000200 +#define PME_REV_2_1 0x00000201 +#define DEC1_MAX_REV_2_0 0x000FFFFC +#define DEC1_MAX_REV_2_1 0x0007FFFC + + +/* Driver Name is used in naming the sysfs directory + * /sys/bus/of_platform/drivers/DRV_NAME + */ +#define DRV_NAME "fsl-pme" + +#define DEFAULT_PDSR_SZ (CONFIG_FSL_PME2_PDSRSIZE << 7) +#define DEFAULT_SRE_SZ (CONFIG_FSL_PME2_SRESIZE << 5) +#define PDSR_TBL_ALIGN (1 << 7) +#define SRE_TBL_ALIGN (1 << 5) +#define DEFAULT_SRFCC 400 + +/* Defaults */ +#define DEFAULT_DEC0_MTE 0x3FFF +#define DEFAULT_DLC_MPM 0xFFFF +#define DEFAULT_DLC_MPE 0xFFFF +/* Boot parameters */ +DECLARE_GLOBAL(max_test_line_per_pat, unsigned int, uint, + DEFAULT_DEC0_MTE, + "Maximum allowed Test Line Executions per pattern, " + "scaled by a factor of 8"); +DECLARE_GLOBAL(max_pat_eval_per_sui, unsigned int, uint, + DEFAULT_DLC_MPE, + "Maximum Pattern Evaluations per SUI, scaled by a factor of 8") +DECLARE_GLOBAL(max_pat_matches_per_sui, unsigned int, uint, + DEFAULT_DLC_MPM, + "Maximum Pattern Matches per SUI"); +/* SRE */ +DECLARE_GLOBAL(sre_rule_num, unsigned int, uint, + CONFIG_FSL_PME2_SRE_CNR, + "Configured Number of Stateful Rules"); +DECLARE_GLOBAL(sre_session_ctx_size, unsigned int, uint, + 1 << CONFIG_FSL_PME2_SRE_CTX_SIZE_PER_SESSION, + "SRE Context Size per Session"); + +/************ + * Section 1 + ************ + * This code is called during kernel early-boot and could never be made + * loadable. + */ +static dma_addr_t dxe_a, sre_a; +static size_t dxe_sz = DEFAULT_PDSR_SZ, sre_sz = DEFAULT_SRE_SZ; + +/* Parse the property to extract the memory location and size and + * memblock_reserve() it. If it isn't supplied, memblock_alloc() the default size. */ +static __init int parse_mem_property(struct device_node *node, const char *name, + dma_addr_t *addr, size_t *sz, u64 align, int zero) +{ + const u32 *pint; + int ret; + + pint = of_get_property(node, name, &ret); + if (!pint || (ret != 16)) { + pr_info("pme: No %s property '%s', using memblock_alloc(0x%016zx)\n", + node->full_name, name, *sz); + *addr = memblock_alloc(*sz, align); + if (zero) + memset(phys_to_virt(*addr), 0, *sz); + return 0; + } + pr_info("pme: Using %s property '%s'\n", node->full_name, name); + /* If using a "zero-pma", don't try to zero it, even if you asked */ + if (zero && of_find_property(node, "zero-pma", &ret)) { + pr_info(" it's a 'zero-pma', not zeroing from s/w\n"); + zero = 0; + } + *addr = ((u64)pint[0] << 32) | (u64)pint[1]; + *sz = ((u64)pint[2] << 32) | (u64)pint[3]; + if((u64)*addr & (align - 1)) { + pr_err("pme: Invalid alignment, address %016llx\n",(u64)*addr); + return -EINVAL; + } + /* Keep things simple, it's either all in the DRAM range or it's all + * outside. */ + if (*addr < memblock_end_of_DRAM()) { + if ((u64)*addr + (u64)*sz > memblock_end_of_DRAM()){ + pr_err("pme: outside DRAM range\n"); + return -EINVAL; + } + if (memblock_reserve(*addr, *sz) < 0) { + pr_err("pme: Failed to reserve %s\n", name); + return -ENOMEM; + } + if (zero) + memset(phys_to_virt(*addr), 0, *sz); + } else if (zero) { + /* map as cacheable, non-guarded */ + void *tmpp = ioremap_prot(*addr, *sz, 0); + memset(tmpp, 0, *sz); + iounmap(tmpp); + } + return 0; +} + +/* No errors/interrupts. Physical addresses are assumed <= 32bits. */ +static int __init fsl_pme2_init(struct device_node *node) +{ + const char *s; + int ret = 0; + + s = of_get_property(node, "fsl,hv-claimable", &ret); + if (s && !strcmp(s, "standby")) { + pr_info(" -> in standby mode\n"); + return 0; + } + /* Check if pdsr memory already allocated */ + if (dxe_a) { + pr_err("pme: Error fsl_pme2_init already done\n"); + return -EINVAL; + } + ret = parse_mem_property(node, "fsl,pme-pdsr", &dxe_a, &dxe_sz, + PDSR_TBL_ALIGN, 0); + if (ret) + return ret; + ret = parse_mem_property(node, "fsl,pme-sre", &sre_a, &sre_sz, + SRE_TBL_ALIGN, 0); + return ret; +} + +__init void pme2_init_early(void) +{ + struct device_node *dn; + int ret; + for_each_compatible_node(dn, NULL, "fsl,pme") { + ret = fsl_pme2_init(dn); + if (ret) + pr_err("pme: Error fsl_pme2_init\n"); + } +} + +/************ + * Section 2 + *********** + * This code is called during driver initialisation. It doesn't do anything with + * the device-tree entries nor the PME device, it simply creates the sysfs stuff + * and gives the user something to hold. This could be made loadable, if there + * was any benefit to doing so - but as the device is already "bound" by static + * code, there's little point to hiding the fact. + */ + +MODULE_AUTHOR("Geoff Thorpe"); +MODULE_LICENSE("Dual BSD/GPL"); +MODULE_DESCRIPTION("FSL PME2 (p4080) device control"); + +/* Opaque pointer target used to represent the PME CCSR map, ... */ +struct pme; + +/* ... and the instance of it. */ +static struct pme *global_pme; +static int pme_err_irq; + +static inline void __pme_out(struct pme *p, u32 offset, u32 val) +{ + u32 __iomem *regs = (void *)p; + out_be32(regs + (offset >> 2), val); +} +#define pme_out(p, r, v) __pme_out(p, PME_REG_##r, v) +static inline u32 __pme_in(struct pme *p, u32 offset) +{ + u32 __iomem *regs = (void *)p; + return in_be32(regs + (offset >> 2)); +} +#define pme_in(p, r) __pme_in(p, PME_REG_##r) + +#define PME_EFQC(en, fq) \ + ({ \ + /* Assume a default delay of 64 cycles */ \ + u8 __i419 = 0x1; \ + u32 __fq419 = (fq) & 0x00ffffff; \ + ((en) ? 0x80000000 : 0) | (__i419 << 28) | __fq419; \ + }) + +#define PME_FACONF_ENABLE 0x00000002 +#define PME_FACONF_RESET 0x00000001 + +/* pme stats accumulator work */ +static void accumulator_update(struct work_struct *work); +void accumulator_update_interval(u32 interval); +static DECLARE_DELAYED_WORK(accumulator_work, accumulator_update); +u32 pme_stat_interval = CONFIG_FSL_PME2_STAT_ACCUMULATOR_UPDATE_INTERVAL; +#define PME_SBE_ERR 0x01000000 +#define PME_DBE_ERR 0x00080000 +#define PME_PME_ERR 0x00000100 +#define PME_ALL_ERR (PME_SBE_ERR | PME_DBE_ERR | PME_PME_ERR) + +static struct of_device_id of_fsl_pme_ids[] = { + { + .compatible = "fsl,pme", + }, + {} +}; +MODULE_DEVICE_TABLE(of, of_fsl_pme_ids); + +/* Pme interrupt handler */ +static irqreturn_t pme_isr(int irq, void *ptr) +{ + static u32 last_isrstate; + u32 isrstate = pme_in(global_pme, ISR) ^ last_isrstate; + + /* What new ISR state has been raise */ + if (!isrstate) + return IRQ_NONE; + if (isrstate & PME_SBE_ERR) + pr_crit("PME: SBE detected\n"); + if (isrstate & PME_DBE_ERR) + pr_crit("PME: DBE detected\n"); + if (isrstate & PME_PME_ERR) + pr_crit("PME: PME serious detected\n"); + /* Clear the ier interrupt bit */ + last_isrstate |= isrstate; + pme_out(global_pme, IER, ~last_isrstate); + return IRQ_HANDLED; +} + +static int of_fsl_pme_remove(struct platform_device *ofdev) +{ + /* Cancel pme accumulator */ + accumulator_update_interval(0); + cancel_delayed_work_sync(&accumulator_work); + /* Disable PME..TODO need to wait till it's quiet */ + pme_out(global_pme, FACONF, PME_FACONF_RESET); + /* Release interrupt */ + if (likely(pme_err_irq != NO_IRQ)) + free_irq(pme_err_irq, &ofdev->dev); + /* Remove sysfs attribute */ + pme2_remove_sysfs_dev_files(ofdev); + /* Unmap controller region */ + iounmap(global_pme); + global_pme = NULL; + return 0; +} + +static int of_fsl_pme_probe(struct platform_device *ofdev) +{ + int ret, err = 0; + void __iomem *regs; + struct device *dev = &ofdev->dev; + struct device_node *nprop = dev->of_node; + u32 clkfreq = DEFAULT_SRFCC * 1000000; + const u32 *value; + const char *s; + int srec_aim = 0, srec_esr = 0; + u32 srecontextsize_code; + u32 dec1; + + /* TODO: This standby handling won't work properly after failover, it's + * just to allow bring up for now. */ + s = of_get_property(nprop, "fsl,hv-claimable", &ret); + if (s && !strcmp(s, "standby")) + return 0; + pme_err_irq = of_irq_to_resource(nprop, 0, NULL); + if (unlikely(pme_err_irq == NO_IRQ)) + dev_warn(dev, "Can't get %s property '%s'\n", nprop->full_name, + "interrupts"); + + /* Get configuration properties from device tree */ + /* First, get register page */ + regs = of_iomap(nprop, 0); + if (regs == NULL) { + dev_err(dev, "of_iomap() failed\n"); + err = -EINVAL; + goto out; + } + + /* Global configuration, leave pme disabled */ + global_pme = (struct pme *)regs; + pme_out(global_pme, FACONF, 0); + pme_out(global_pme, EFQC, PME_EFQC(0, 0)); + + /* TODO: these coherency settings for PMFA, DXE, and SRE force all + * transactions to snoop, as the kernel does not yet support flushing in + * dma_map_***() APIs (ie. h/w can not treat otherwise coherent memory + * in a non-coherent manner, temporarily or otherwise). When the kernel + * supports this, we should tune these settings back to; + * FAMCR = 0x00010001 + * DMCR = 0x00000000 + * SMCR = 0x00000000 + */ + /* PME HW rev 2.1: Added TWC field in FAMCR */ + pme_out(global_pme, FAMCR, 0x11010101); + pme_out(global_pme, DMCR, 0x00000001); + pme_out(global_pme, SMCR, 0x00000211); + + if (likely(pme_err_irq != NO_IRQ)) { + /* Register the pme ISR handler */ + err = request_irq(pme_err_irq, pme_isr, IRQF_SHARED, "pme-err", + dev); + if (err) { + dev_err(dev, "request_irq() failed\n"); + goto out_unmap_ctrl_region; + } + } + +#ifdef CONFIG_FSL_PME2_SRE_AIM + srec_aim = 1; +#endif +#ifdef CONFIG_FSL_PME2_SRE_ESR + srec_esr = 1; +#endif + /* Validate some parameters */ + if (!sre_session_ctx_size || !is_power_of_2(sre_session_ctx_size) || + (sre_session_ctx_size < 32) || + (sre_session_ctx_size > (131072))) { + dev_err(dev, "invalid sre_session_ctx_size\n"); + err = -EINVAL; + goto out_free_irq; + } + srecontextsize_code = ilog2(sre_session_ctx_size); + srecontextsize_code -= 4; + + /* Configure Clock Frequency */ + value = of_get_property(nprop, "clock-frequency", NULL); + if (value) + clkfreq = *value; + pme_out(global_pme, SFRCC, DIV_ROUND_UP(clkfreq, 1000000)); + + pme_out(global_pme, PDSRBAH, upper_32_bits(dxe_a)); + pme_out(global_pme, PDSRBAL, lower_32_bits(dxe_a)); + pme_out(global_pme, SCBARH, upper_32_bits(sre_a)); + pme_out(global_pme, SCBARL, lower_32_bits(sre_a)); + /* Maximum allocated index into the PDSR table available to the DXE + * Rev 2.0: Max 0xF_FFFC + * Rev 2.1: Max 0x7_FFFC + */ + if (PME_REV(pme_in(global_pme, PM_IP_REV1)) == PME_REV_2_0) { + if (((dxe_sz/PDSR_TBL_ALIGN)-1) > DEC1_MAX_REV_2_0) + dec1 = DEC1_MAX_REV_2_0; + else + dec1 = (dxe_sz/PDSR_TBL_ALIGN)-1; + } else { + if (((dxe_sz/PDSR_TBL_ALIGN)-1) > DEC1_MAX_REV_2_1) + dec1 = DEC1_MAX_REV_2_1; + else + dec1 = (dxe_sz/PDSR_TBL_ALIGN)-1; + } + pme_out(global_pme, DEC1, dec1); + /* Maximum allocated index into the PDSR table available to the SRE */ + pme_out(global_pme, SEC2, dec1); + /* Maximum allocated 32-byte offset into SRE Context Table.*/ + if (sre_sz) + pme_out(global_pme, SEC3, (sre_sz/SRE_TBL_ALIGN)-1); + /* Max test line execution */ + pme_out(global_pme, DEC0, max_test_line_per_pat); + pme_out(global_pme, DLC, + (max_pat_eval_per_sui << 16) | max_pat_matches_per_sui); + + /* SREC - SRE Config */ + pme_out(global_pme, SREC, + /* Number of rules in database */ + (sre_rule_num << 0) | + /* Simple Report Enabled */ + ((srec_esr ? 1 : 0) << 18) | + /* Context Size per Session */ + (srecontextsize_code << 19) | + /* Alternate Inclusive Mode */ + ((srec_aim ? 1 : 0) << 29)); + pme_out(global_pme, SEC1, + (CONFIG_FSL_PME2_SRE_MAX_INSTRUCTION_LIMIT << 16) | + CONFIG_FSL_PME2_SRE_MAX_BLOCK_NUMBER); + + /* Setup Accumulator */ + if (pme_stat_interval) + schedule_delayed_work(&accumulator_work, + msecs_to_jiffies(pme_stat_interval)); + /* Create sysfs entries */ + err = pme2_create_sysfs_dev_files(ofdev); + if (err) + goto out_stop_accumulator; + + /* Enable interrupts */ + pme_out(global_pme, IER, PME_ALL_ERR); + dev_info(dev, "ver: 0x%08x\n", pme_in(global_pme, PM_IP_REV1)); + + /* Enable pme */ + pme_out(global_pme, FACONF, PME_FACONF_ENABLE); + return 0; + +out_stop_accumulator: + if (pme_stat_interval) { + accumulator_update_interval(0); + cancel_delayed_work_sync(&accumulator_work); + } +out_free_irq: + if (likely(pme_err_irq != NO_IRQ)) + free_irq(pme_err_irq, &ofdev->dev); +out_unmap_ctrl_region: + pme_out(global_pme, FACONF, PME_FACONF_RESET); + iounmap(global_pme); + global_pme = NULL; +out: + return err; +} + +static struct platform_driver of_fsl_pme_driver = { + .driver = { + .owner = THIS_MODULE, + .name = DRV_NAME, + .of_match_table = of_fsl_pme_ids, + }, + .probe = of_fsl_pme_probe, + .remove = of_fsl_pme_remove, +}; + +static int pme2_ctrl_init(void) +{ + return platform_driver_register(&of_fsl_pme_driver); +} + +static void pme2_ctrl_exit(void) +{ + platform_driver_unregister(&of_fsl_pme_driver); +} + +module_init(pme2_ctrl_init); +module_exit(pme2_ctrl_exit); + +/************ + * Section 3 + ************ + * These APIs are the only functional hooks into the control driver, besides the + * sysfs attributes. + */ + +int pme2_have_control(void) +{ + return global_pme ? 1 : 0; +} +EXPORT_SYMBOL(pme2_have_control); + +int pme2_exclusive_set(struct qman_fq *fq) +{ + if (!pme2_have_control()) + return -ENODEV; + pme_out(global_pme, EFQC, PME_EFQC(1, qman_fq_fqid(fq))); + return 0; +} +EXPORT_SYMBOL(pme2_exclusive_set); + +int pme2_exclusive_unset(void) +{ + if (!pme2_have_control()) + return -ENODEV; + pme_out(global_pme, EFQC, PME_EFQC(0, 0)); + return 0; +} +EXPORT_SYMBOL(pme2_exclusive_unset); + +int pme_attr_set(enum pme_attr attr, u32 val) +{ + u32 mask; + u32 attr_val; + + if (!pme2_have_control()) + return -ENODEV; + + /* Check if Buffer size configuration */ + if (attr >= pme_attr_bsc_first && attr <= pme_attr_bsc_last) { + u32 bsc_pool_id = attr - pme_attr_bsc_first; + u32 bsc_pool_offset = bsc_pool_id % 8; + u32 bsc_pool_mask = ~(0xF << ((7-bsc_pool_offset)*4)); + /* range for val 0..0xB */ + if (val > 0xb) + return -EINVAL; + /* calculate which sky-blue reg */ + /* 0..7 -> bsc_(0..7), PME_REG_BSC0 */ + /* 8..15 -> bsc_(8..15) PME_REG_BSC1*/ + /* ... */ + /* 56..63 -> bsc_(56..63) PME_REG_BSC7*/ + attr_val = pme_in(global_pme, BSC0 + ((bsc_pool_id/8)*4)); + /* Now mask in the new value */ + attr_val = attr_val & bsc_pool_mask; + attr_val = attr_val | (val << ((7-bsc_pool_offset)*4)); + pme_out(global_pme, BSC0 + ((bsc_pool_id/8)*4), attr_val); + return 0; + } + + switch (attr) { + case pme_attr_efqc_int: + if (val > 4) + return -EINVAL; + mask = 0x8FFFFFFF; + attr_val = pme_in(global_pme, EFQC); + /* clear efqc_int */ + attr_val &= mask; + val <<= 28; + val |= attr_val; + pme_out(global_pme, EFQC, val); + break; + + case pme_attr_sw_db: + pme_out(global_pme, SWDB, val); + break; + + case pme_attr_dmcr: + pme_out(global_pme, DMCR, val); + break; + + case pme_attr_smcr: + pme_out(global_pme, SMCR, val); + break; + + case pme_attr_famcr: + pme_out(global_pme, FAMCR, val); + break; + + case pme_attr_kvlts: + if (val < 2 || val > 16) + return -EINVAL; + /* HW range: 1..15, SW range: 2..16 */ + pme_out(global_pme, KVLTS, --val); + break; + + case pme_attr_max_chain_length: + if (val > 0x7FFF) + val = 0x7FFF; + pme_out(global_pme, KEC, val); + break; + + case pme_attr_pattern_range_counter_idx: + if (val > 0x1FFFF) + val = 0x1FFFF; + pme_out(global_pme, DRCIC, val); + break; + + case pme_attr_pattern_range_counter_mask: + if (val > 0x1FFFF) + val = 0x1FFFF; + pme_out(global_pme, DRCMC, val); + break; + + case pme_attr_max_allowed_test_line_per_pattern: + if (val > 0x3FFF) + val = 0x3FFF; + pme_out(global_pme, DEC0, val); + break; + + case pme_attr_max_pattern_matches_per_sui: + /* mpe, mpm */ + if (val > 0xFFFF) + val = 0xFFFF; + mask = 0xFFFF0000; + attr_val = pme_in(global_pme, DLC); + /* clear mpm */ + attr_val &= mask; + val &= ~mask; + val |= attr_val; + pme_out(global_pme, DLC, val); + break; + + case pme_attr_max_pattern_evaluations_per_sui: + /* mpe, mpm */ + if (val > 0xFFFF) + val = 0xFFFF; + mask = 0x0000FFFF; + attr_val = pme_in(global_pme, DLC); + /* clear mpe */ + attr_val &= mask; + /* clear unwanted bits in val*/ + val &= mask; + val <<= 16; + val |= attr_val; + pme_out(global_pme, DLC, val); + break; + + case pme_attr_report_length_limit: + if (val > 0xFFFF) + val = 0xFFFF; + pme_out(global_pme, RLL, val); + break; + + case pme_attr_end_of_simple_sui_report: + /* bit 13 */ + mask = 0x00040000; + attr_val = pme_in(global_pme, SREC); + if (val) + attr_val |= mask; + else + attr_val &= ~mask; + pme_out(global_pme, SREC, attr_val); + break; + + case pme_attr_aim: + /* bit 2 */ + mask = 0x20000000; + attr_val = pme_in(global_pme, SREC); + if (val) + attr_val |= mask; + else + attr_val &= ~mask; + pme_out(global_pme, SREC, attr_val); + break; + + case pme_attr_end_of_sui_reaction_ptr: + if (val > 0xFFFFF) + val = 0xFFFFF; + pme_out(global_pme, ESRP, val); + break; + + case pme_attr_sre_pscl: + pme_out(global_pme, SFRCC, val); + break; + + case pme_attr_sre_max_block_num: + /* bits 17..31 */ + if (val > 0x7FFF) + val = 0x7FFF; + mask = 0xFFFF8000; + attr_val = pme_in(global_pme, SEC1); + /* clear mbn */ + attr_val &= mask; + /* clear unwanted bits in val*/ + val &= ~mask; + val |= attr_val; + pme_out(global_pme, SEC1, val); + break; + + case pme_attr_sre_max_instruction_limit: + /* bits 0..15 */ + if (val > 0xFFFF) + val = 0xFFFF; + mask = 0x0000FFFF; + attr_val = pme_in(global_pme, SEC1); + /* clear mil */ + attr_val &= mask; + /* clear unwanted bits in val*/ + val &= mask; + val <<= 16; + val |= attr_val; + pme_out(global_pme, SEC1, val); + break; + + case pme_attr_srrv0: + pme_out(global_pme, SRRV0, val); + break; + case pme_attr_srrv1: + pme_out(global_pme, SRRV1, val); + break; + case pme_attr_srrv2: + pme_out(global_pme, SRRV2, val); + break; + case pme_attr_srrv3: + pme_out(global_pme, SRRV3, val); + break; + case pme_attr_srrv4: + pme_out(global_pme, SRRV4, val); + break; + case pme_attr_srrv5: + pme_out(global_pme, SRRV5, val); + break; + case pme_attr_srrv6: + pme_out(global_pme, SRRV6, val); + break; + case pme_attr_srrv7: + pme_out(global_pme, SRRV7, val); + break; + case pme_attr_srrfi: + pme_out(global_pme, SRRFI, val); + break; + case pme_attr_srri: + pme_out(global_pme, SRRI, val); + break; + case pme_attr_srrwc: + pme_out(global_pme, SRRWC, val); + break; + case pme_attr_srrr: + pme_out(global_pme, SRRR, val); + break; + case pme_attr_tbt0ecc1th: + pme_out(global_pme, TBT0ECC1TH, val); + break; + case pme_attr_tbt1ecc1th: + pme_out(global_pme, TBT1ECC1TH, val); + break; + case pme_attr_vlt0ecc1th: + pme_out(global_pme, VLT0ECC1TH, val); + break; + case pme_attr_vlt1ecc1th: + pme_out(global_pme, VLT1ECC1TH, val); + break; + case pme_attr_cmecc1th: + pme_out(global_pme, CMECC1TH, val); + break; + case pme_attr_dxcmecc1th: + pme_out(global_pme, DXCMECC1TH, val); + break; + case pme_attr_dxemecc1th: + pme_out(global_pme, DXEMECC1TH, val); + break; + case pme_attr_esr: + pme_out(global_pme, ESR, val); + break; + case pme_attr_pehd: + pme_out(global_pme, PEHD, val); + break; + case pme_attr_ecc1bes: + pme_out(global_pme, ECC1BES, val); + break; + case pme_attr_ecc2bes: + pme_out(global_pme, ECC2BES, val); + break; + case pme_attr_miace: + pme_out(global_pme, MIA_CE, val); + break; + case pme_attr_miacr: + pme_out(global_pme, MIA_CR, val); + break; + case pme_attr_cdcr: + pme_out(global_pme, CDCR, val); + break; + case pme_attr_pmtr: + pme_out(global_pme, PMTR, val); + break; + + default: + pr_err("pme: Unknown attr %u\n", attr); + return -EINVAL; + }; + return 0; +} +EXPORT_SYMBOL(pme_attr_set); + +int pme_attr_get(enum pme_attr attr, u32 *val) +{ + u32 mask; + u32 attr_val; + + if (!pme2_have_control()) + return -ENODEV; + + /* Check if Buffer size configuration */ + if (attr >= pme_attr_bsc_first && attr <= pme_attr_bsc_last) { + u32 bsc_pool_id = attr - pme_attr_bsc_first; + u32 bsc_pool_offset = bsc_pool_id % 8; + /* calculate which sky-blue reg */ + /* 0..7 -> bsc_(0..7), PME_REG_BSC0 */ + /* 8..15 -> bsc_(8..15) PME_REG_BSC1*/ + /* ... */ + /* 56..63 -> bsc_(56..63) PME_REG_BSC7*/ + attr_val = pme_in(global_pme, BSC0 + ((bsc_pool_id/8)*4)); + attr_val = attr_val >> ((7-bsc_pool_offset)*4); + attr_val = attr_val & 0x0000000F; + *val = attr_val; + return 0; + } + + switch (attr) { + case pme_attr_efqc_int: + mask = 0x8FFFFFFF; + attr_val = pme_in(global_pme, EFQC); + attr_val &= ~mask; + attr_val >>= 28; + break; + + case pme_attr_sw_db: + attr_val = pme_in(global_pme, SWDB); + break; + + case pme_attr_dmcr: + attr_val = pme_in(global_pme, DMCR); + break; + + case pme_attr_smcr: + attr_val = pme_in(global_pme, SMCR); + break; + + case pme_attr_famcr: + attr_val = pme_in(global_pme, FAMCR); + break; + + case pme_attr_kvlts: + /* bit 28-31 */ + attr_val = pme_in(global_pme, KVLTS); + attr_val &= 0x0000000F; + /* HW range: 1..15, SW range: 2..16 */ + attr_val += 1; + break; + + case pme_attr_max_chain_length: + /* bit 17-31 */ + attr_val = pme_in(global_pme, KEC); + attr_val &= 0x00007FFF; + break; + + case pme_attr_pattern_range_counter_idx: + /* bit 15-31 */ + attr_val = pme_in(global_pme, DRCIC); + attr_val &= 0x0001FFFF; + break; + + case pme_attr_pattern_range_counter_mask: + /* bit 15-31 */ + attr_val = pme_in(global_pme, DRCMC); + attr_val &= 0x0001FFFF; + break; + + case pme_attr_max_allowed_test_line_per_pattern: + /* bit 18-31 */ + attr_val = pme_in(global_pme, DEC0); + attr_val &= 0x00003FFF; + break; + + case pme_attr_max_pdsr_index: + /* bit 12-31 */ + attr_val = pme_in(global_pme, DEC1); + attr_val &= 0x000FFFFF; + break; + + case pme_attr_max_pattern_matches_per_sui: + attr_val = pme_in(global_pme, DLC); + attr_val &= 0x0000FFFF; + break; + + case pme_attr_max_pattern_evaluations_per_sui: + attr_val = pme_in(global_pme, DLC); + attr_val >>= 16; + break; + + case pme_attr_report_length_limit: + attr_val = pme_in(global_pme, RLL); + /* clear unwanted bits in val*/ + attr_val &= 0x0000FFFF; + break; + + case pme_attr_end_of_simple_sui_report: + /* bit 13 */ + attr_val = pme_in(global_pme, SREC); + attr_val >>= 18; + /* clear unwanted bits in val*/ + attr_val &= 0x00000001; + break; + + case pme_attr_aim: + /* bit 2 */ + attr_val = pme_in(global_pme, SREC); + attr_val >>= 29; + /* clear unwanted bits in val*/ + attr_val &= 0x00000001; + break; + + case pme_attr_sre_context_size: + /* bits 9..12 */ + attr_val = pme_in(global_pme, SREC); + attr_val >>= 19; + /* clear unwanted bits in val*/ + attr_val &= 0x0000000F; + attr_val += 4; + attr_val = 1 << attr_val; + break; + + case pme_attr_sre_rule_num: + /* bits 24..31 */ + attr_val = pme_in(global_pme, SREC); + /* clear unwanted bits in val*/ + attr_val &= 0x000000FF; + /* Multiply by 256 */ + attr_val <<= 8; + break; + + case pme_attr_sre_session_ctx_num: { + u32 ctx_sz = 0; + /* = sre_table_size / sre_session_ctx_size */ + attr_val = pme_in(global_pme, SEC3); + /* clear unwanted bits in val*/ + attr_val &= 0x07FFFFFF; + attr_val += 1; + attr_val *= 32; + ctx_sz = pme_in(global_pme, SREC); + ctx_sz >>= 19; + /* clear unwanted bits in val*/ + ctx_sz &= 0x0000000F; + ctx_sz += 4; + attr_val /= (1 << ctx_sz); + } + break; + + case pme_attr_end_of_sui_reaction_ptr: + /* bits 12..31 */ + attr_val = pme_in(global_pme, ESRP); + /* clear unwanted bits in val*/ + attr_val &= 0x000FFFFF; + break; + + case pme_attr_sre_pscl: + /* bits 22..31 */ + attr_val = pme_in(global_pme, SFRCC); + break; + + case pme_attr_sre_max_block_num: + /* bits 17..31 */ + attr_val = pme_in(global_pme, SEC1); + /* clear unwanted bits in val*/ + attr_val &= 0x00007FFF; + break; + + case pme_attr_sre_max_instruction_limit: + /* bits 0..15 */ + attr_val = pme_in(global_pme, SEC1); + attr_val >>= 16; + break; + + case pme_attr_sre_max_index_size: + /* bits 12..31 */ + attr_val = pme_in(global_pme, SEC2); + /* clear unwanted bits in val*/ + attr_val &= 0x000FFFFF; + break; + + case pme_attr_sre_max_offset_ctrl: + /* bits 5..31 */ + attr_val = pme_in(global_pme, SEC3); + /* clear unwanted bits in val*/ + attr_val &= 0x07FFFFFF; + break; + + case pme_attr_src_id: + /* bits 24..31 */ + attr_val = pme_in(global_pme, SRCIDR); + /* clear unwanted bits in val*/ + attr_val &= 0x000000FF; + break; + + case pme_attr_liodnr: + /* bits 20..31 */ + attr_val = pme_in(global_pme, LIODNR); + /* clear unwanted bits in val*/ + attr_val &= 0x00000FFF; + break; + + case pme_attr_rev1: + /* bits 0..31 */ + attr_val = pme_in(global_pme, PM_IP_REV1); + break; + + case pme_attr_rev2: + /* bits 0..31 */ + attr_val = pme_in(global_pme, PM_IP_REV2); + break; + + case pme_attr_srrr: + attr_val = pme_in(global_pme, SRRR); + break; + + case pme_attr_trunci: + attr_val = pme_in(global_pme, TRUNCI); + break; + + case pme_attr_rbc: + attr_val = pme_in(global_pme, RBC); + break; + + case pme_attr_tbt0ecc1ec: + attr_val = pme_in(global_pme, TBT0ECC1EC); + break; + + case pme_attr_tbt1ecc1ec: + attr_val = pme_in(global_pme, TBT1ECC1EC); + break; + + case pme_attr_vlt0ecc1ec: + attr_val = pme_in(global_pme, VLT0ECC1EC); + break; + + case pme_attr_vlt1ecc1ec: + attr_val = pme_in(global_pme, VLT1ECC1EC); + break; + + case pme_attr_cmecc1ec: + attr_val = pme_in(global_pme, CMECC1EC); + break; + + case pme_attr_dxcmecc1ec: + attr_val = pme_in(global_pme, DXCMECC1EC); + break; + + case pme_attr_dxemecc1ec: + attr_val = pme_in(global_pme, DXEMECC1EC); + break; + + case pme_attr_tbt0ecc1th: + attr_val = pme_in(global_pme, TBT0ECC1TH); + break; + + case pme_attr_tbt1ecc1th: + attr_val = pme_in(global_pme, TBT1ECC1TH); + break; + + case pme_attr_vlt0ecc1th: + attr_val = pme_in(global_pme, VLT0ECC1TH); + break; + + case pme_attr_vlt1ecc1th: + attr_val = pme_in(global_pme, VLT1ECC1TH); + break; + + case pme_attr_cmecc1th: + attr_val = pme_in(global_pme, CMECC1TH); + break; + + case pme_attr_dxcmecc1th: + attr_val = pme_in(global_pme, DXCMECC1TH); + break; + + case pme_attr_dxemecc1th: + attr_val = pme_in(global_pme, DXEMECC1TH); + break; + + case pme_attr_stnib: + attr_val = pme_in(global_pme, STNIB); + break; + + case pme_attr_stnis: + attr_val = pme_in(global_pme, STNIS); + break; + + case pme_attr_stnth1: + attr_val = pme_in(global_pme, STNTH1); + break; + + case pme_attr_stnth2: + attr_val = pme_in(global_pme, STNTH2); + break; + + case pme_attr_stnthv: + attr_val = pme_in(global_pme, STNTHV); + break; + + case pme_attr_stnths: + attr_val = pme_in(global_pme, STNTHS); + break; + + case pme_attr_stnch: + attr_val = pme_in(global_pme, STNCH); + break; + + case pme_attr_stnpm: + attr_val = pme_in(global_pme, STNPM); + break; + + case pme_attr_stns1m: + attr_val = pme_in(global_pme, STNS1M); + break; + + case pme_attr_stnpmr: + attr_val = pme_in(global_pme, STNPMR); + break; + + case pme_attr_stndsr: + attr_val = pme_in(global_pme, STNDSR); + break; + + case pme_attr_stnesr: + attr_val = pme_in(global_pme, STNESR); + break; + + case pme_attr_stns1r: + attr_val = pme_in(global_pme, STNS1R); + break; + + case pme_attr_stnob: + attr_val = pme_in(global_pme, STNOB); + break; + + case pme_attr_mia_byc: + attr_val = pme_in(global_pme, MIA_BYC); + break; + + case pme_attr_mia_blc: + attr_val = pme_in(global_pme, MIA_BLC); + break; + + case pme_attr_isr: + attr_val = pme_in(global_pme, ISR); + break; + + case pme_attr_ecr0: + attr_val = pme_in(global_pme, ECR0); + break; + + case pme_attr_ecr1: + attr_val = pme_in(global_pme, ECR1); + break; + + case pme_attr_esr: + attr_val = pme_in(global_pme, ESR); + break; + + case pme_attr_pmstat: + attr_val = pme_in(global_pme, PMSTAT); + break; + + case pme_attr_pehd: + attr_val = pme_in(global_pme, PEHD); + break; + + case pme_attr_ecc1bes: + attr_val = pme_in(global_pme, ECC1BES); + break; + + case pme_attr_ecc2bes: + attr_val = pme_in(global_pme, ECC2BES); + break; + + case pme_attr_eccaddr: + attr_val = pme_in(global_pme, ECCADDR); + break; + + case pme_attr_ecccode: + attr_val = pme_in(global_pme, ECCCODE); + break; + + case pme_attr_miace: + attr_val = pme_in(global_pme, MIA_CE); + break; + + case pme_attr_miacr: + attr_val = pme_in(global_pme, MIA_CR); + break; + + case pme_attr_cdcr: + attr_val = pme_in(global_pme, CDCR); + break; + + case pme_attr_pmtr: + attr_val = pme_in(global_pme, PMTR); + break; + + case pme_attr_faconf: + attr_val = pme_in(global_pme, FACONF); + break; + + case pme_attr_pdsrbah: + attr_val = pme_in(global_pme, PDSRBAH); + break; + + case pme_attr_pdsrbal: + attr_val = pme_in(global_pme, PDSRBAL); + break; + + case pme_attr_scbarh: + attr_val = pme_in(global_pme, SCBARH); + break; + + case pme_attr_scbarl: + attr_val = pme_in(global_pme, SCBARL); + break; + + case pme_attr_srrv0: + attr_val = pme_in(global_pme, SRRV0); + break; + + case pme_attr_srrv1: + attr_val = pme_in(global_pme, SRRV1); + break; + + case pme_attr_srrv2: + attr_val = pme_in(global_pme, SRRV2); + break; + + case pme_attr_srrv3: + attr_val = pme_in(global_pme, SRRV3); + break; + + case pme_attr_srrv4: + attr_val = pme_in(global_pme, SRRV4); + break; + + case pme_attr_srrv5: + attr_val = pme_in(global_pme, SRRV5); + break; + + case pme_attr_srrv6: + attr_val = pme_in(global_pme, SRRV6); + break; + + case pme_attr_srrv7: + attr_val = pme_in(global_pme, SRRV7); + break; + + case pme_attr_srrfi: + attr_val = pme_in(global_pme, SRRFI); + break; + + case pme_attr_srri: + attr_val = pme_in(global_pme, SRRI); + break; + + case pme_attr_srrwc: + attr_val = pme_in(global_pme, SRRWC); + break; + + default: + pr_err("pme: Unknown attr %u\n", attr); + return -EINVAL; + }; + *val = attr_val; + return 0; +} +EXPORT_SYMBOL(pme_attr_get); + +static enum pme_attr stat_list[] = { + pme_attr_trunci, + pme_attr_rbc, + pme_attr_tbt0ecc1ec, + pme_attr_tbt1ecc1ec, + pme_attr_vlt0ecc1ec, + pme_attr_vlt1ecc1ec, + pme_attr_cmecc1ec, + pme_attr_dxcmecc1ec, + pme_attr_dxemecc1ec, + pme_attr_stnib, + pme_attr_stnis, + pme_attr_stnth1, + pme_attr_stnth2, + pme_attr_stnthv, + pme_attr_stnths, + pme_attr_stnch, + pme_attr_stnpm, + pme_attr_stns1m, + pme_attr_stnpmr, + pme_attr_stndsr, + pme_attr_stnesr, + pme_attr_stns1r, + pme_attr_stnob, + pme_attr_mia_byc, + pme_attr_mia_blc +}; + +static u64 pme_stats[sizeof(stat_list)/sizeof(enum pme_attr)]; +static DEFINE_SPINLOCK(stat_lock); + +int pme_stat_get(enum pme_attr stat, u64 *value, int reset) +{ + int i, ret = 0; + int value_set = 0; + u32 val; + + spin_lock_irq(&stat_lock); + for (i = 0; i < sizeof(stat_list)/sizeof(enum pme_attr); i++) { + if (stat_list[i] == stat) { + ret = pme_attr_get(stat_list[i], &val); + /* Do I need to check ret */ + pme_stats[i] += val; + *value = pme_stats[i]; + value_set = 1; + if (reset) + pme_stats[i] = 0; + break; + } + } + if (!value_set) { + pr_err("pme: Invalid stat request %d\n", stat); + ret = -EINVAL; + } + spin_unlock_irq(&stat_lock); + return ret; +} +EXPORT_SYMBOL(pme_stat_get); + +void accumulator_update_interval(u32 interval) +{ + int schedule = 0; + + spin_lock_irq(&stat_lock); + if (!pme_stat_interval && interval) + schedule = 1; + pme_stat_interval = interval; + spin_unlock_irq(&stat_lock); + if (schedule) + schedule_delayed_work(&accumulator_work, + msecs_to_jiffies(interval)); +} + +static void accumulator_update(struct work_struct *work) +{ + int i, ret; + u32 local_interval; + u32 val; + + spin_lock_irq(&stat_lock); + local_interval = pme_stat_interval; + for (i = 0; i < sizeof(stat_list)/sizeof(enum pme_attr); i++) { + ret = pme_attr_get(stat_list[i], &val); + pme_stats[i] += val; + } + spin_unlock_irq(&stat_lock); + if (local_interval) + schedule_delayed_work(&accumulator_work, + msecs_to_jiffies(local_interval)); +} + --- linux-3.13.0.orig/drivers/staging/fsl_pme2/pme2_db.c +++ linux-3.13.0/drivers/staging/fsl_pme2/pme2_db.c @@ -0,0 +1,572 @@ +/* Copyright 2009-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "pme2_private.h" +#include + +/* Forward declaration */ +static struct miscdevice fsl_pme2_db_dev; + +/* Global spinlock for handling exclusive inc/dec */ +static DEFINE_SPINLOCK(exclusive_lock); + +/* Private structure that is allocated for each open that is done on the + * pme_db device. This is used to maintain the state of a database session */ +struct db_session { + /* The ctx that is needed to communicate with the pme high level */ + struct pme_ctx ctx; + /* Used to track the EXCLUSIVE_INC and EXCLUSIVE_DEC ioctls */ + unsigned int exclusive_counter; +}; + +struct cmd_token { + /* pme high level token */ + struct pme_ctx_token hl_token; + /* data */ + struct qm_fd rx_fd; + /* Completion interface */ + struct completion cb_done; + u8 ern; +}; + +#ifdef CONFIG_COMPAT +static void compat_to_db(struct pme_db *dst, struct compat_pme_db *src) +{ + dst->flags = src->flags; + dst->status = src->status; + dst->input.data = compat_ptr(src->input.data); + dst->input.size = src->input.size; + dst->output.data = compat_ptr(src->output.data); + dst->output.size = src->output.size; +} + +static void db_to_compat(struct compat_pme_db *dst, struct pme_db *src) +{ + dst->flags = src->flags; + dst->status = src->status; + dst->output.data = ptr_to_compat(src->output.data); + dst->output.size = src->output.size; + dst->input.data = ptr_to_compat(src->input.data); + dst->input.size = src->input.size; +} +#endif + +/* PME Compound Frame Index */ +#define INPUT_FRM 1 +#define OUTPUT_FRM 0 + +/* Callback for database operations */ +static void db_cb(struct pme_ctx *ctx, const struct qm_fd *fd, + struct pme_ctx_token *ctx_token) +{ + struct cmd_token *token = (struct cmd_token *)ctx_token; + token->rx_fd = *fd; + complete(&token->cb_done); +} + +static void db_ern_cb(struct pme_ctx *ctx, const struct qm_mr_entry *mr, + struct pme_ctx_token *ctx_token) +{ + struct cmd_token *token = (struct cmd_token *)ctx_token; + token->ern = 1; + token->rx_fd = mr->ern.fd; + complete(&token->cb_done); +} + +struct ctrl_op { + struct pme_ctx_ctrl_token ctx_ctr; + struct completion cb_done; + enum pme_status cmd_status; + u8 res_flag; + u8 ern; +}; + +static void ctrl_cb(struct pme_ctx *ctx, const struct qm_fd *fd, + struct pme_ctx_ctrl_token *token) +{ + struct ctrl_op *ctrl = (struct ctrl_op *)token; + ctrl->cmd_status = pme_fd_res_status(fd); + ctrl->res_flag = pme_fd_res_flags(fd) & PME_STATUS_UNRELIABLE; + complete(&ctrl->cb_done); +} + +static void ctrl_ern_cb(struct pme_ctx *ctx, const struct qm_mr_entry *mr, + struct pme_ctx_ctrl_token *token) +{ + struct ctrl_op *ctrl = (struct ctrl_op *)token; + ctrl->ern = 1; + complete(&ctrl->cb_done); +} + +static int exclusive_inc(struct file *fp, struct db_session *db) +{ + int ret; + + BUG_ON(!db); + BUG_ON(!(db->ctx.flags & PME_CTX_FLAG_EXCLUSIVE)); + spin_lock(&exclusive_lock); + ret = pme_ctx_exclusive_inc(&db->ctx, + (PME_CTX_OP_WAIT | PME_CTX_OP_WAIT_INT)); + if (!ret) + db->exclusive_counter++; + spin_unlock(&exclusive_lock); + return ret; +} + +static int exclusive_dec(struct file *fp, struct db_session *db) +{ + int ret = 0; + + BUG_ON(!db); + BUG_ON(!(db->ctx.flags & PME_CTX_FLAG_EXCLUSIVE)); + spin_lock(&exclusive_lock); + if (!db->exclusive_counter) { + PMEPRERR("exclusivity counter already zero\n"); + ret = -EINVAL; + } else { + pme_ctx_exclusive_dec(&db->ctx); + db->exclusive_counter--; + } + spin_unlock(&exclusive_lock); + return ret; +} + +static int execute_cmd(struct file *fp, struct db_session *db, + struct pme_db *db_cmd) +{ + int ret = 0; + struct cmd_token token; + struct qm_sg_entry tx_comp[2]; + struct qm_fd tx_fd; + void *tx_data = NULL; + void *rx_data = NULL; + u32 src_sz, dst_sz; + dma_addr_t dma_addr; + + memset(&token, 0, sizeof(struct cmd_token)); + memset(tx_comp, 0, sizeof(tx_comp)); + memset(&tx_fd, 0, sizeof(struct qm_fd)); + init_completion(&token.cb_done); + + PMEPRINFO("Received User Space Contiguous mem\n"); + PMEPRINFO("length = %d\n", db_cmd->input.size); + tx_data = kmalloc(db_cmd->input.size, GFP_KERNEL); + if (!tx_data) { + PMEPRERR("Err alloc %zd byte\n", db_cmd->input.size); + return -ENOMEM; + } + + if (copy_from_user(tx_data, + (void __user *)db_cmd->input.data, + db_cmd->input.size)) { + PMEPRERR("Error copying contigous user data\n"); + ret = -EFAULT; + goto free_tx_data; + } + + /* Setup input frame */ + tx_comp[INPUT_FRM].final = 1; + tx_comp[INPUT_FRM].length = db_cmd->input.size; + dma_addr = pme_map(tx_data); + if (pme_map_error(dma_addr)) { + PMEPRERR("Error pme_map_error\n"); + ret = -EIO; + goto free_tx_data; + } + set_sg_addr(&tx_comp[INPUT_FRM], dma_addr); + /* setup output frame, if output is expected */ + if (db_cmd->output.size) { + PMEPRINFO("expect output %d\n", db_cmd->output.size); + rx_data = kmalloc(db_cmd->output.size, GFP_KERNEL); + if (!rx_data) { + PMEPRERR("Err alloc %zd byte", db_cmd->output.size); + ret = -ENOMEM; + goto unmap_input_frame; + } + /* Setup output frame */ + tx_comp[OUTPUT_FRM].length = db_cmd->output.size; + dma_addr = pme_map(rx_data); + if (pme_map_error(dma_addr)) { + PMEPRERR("Error pme_map_error\n"); + ret = -EIO; + goto comp_frame_free_rx; + } + set_sg_addr(&tx_comp[OUTPUT_FRM], dma_addr); + tx_fd.format = qm_fd_compound; + /* Build compound frame */ + dma_addr = pme_map(tx_comp); + if (pme_map_error(dma_addr)) { + PMEPRERR("Error pme_map_error\n"); + ret = -EIO; + goto comp_frame_unmap_output; + } + set_fd_addr(&tx_fd, dma_addr); + } else { + tx_fd.format = qm_fd_sg_big; + tx_fd.length29 = db_cmd->input.size; + /* Build sg frame */ + dma_addr = pme_map(&tx_comp[INPUT_FRM]); + if (pme_map_error(dma_addr)) { + PMEPRERR("Error pme_map_error\n"); + ret = -EIO; + goto unmap_input_frame; + } + set_fd_addr(&tx_fd, dma_addr); + } + ret = pme_ctx_pmtcc(&db->ctx, PME_CTX_OP_WAIT, &tx_fd, + (struct pme_ctx_token *)&token); + if (unlikely(ret)) { + PMEPRINFO("pme_ctx_pmtcc error %d\n", ret); + goto unmap_frame; + } + PMEPRINFO("Wait for completion\n"); + /* Wait for the command to complete */ + wait_for_completion(&token.cb_done); + + if (token.ern) { + ret = -EIO; + goto unmap_frame; + } + + PMEPRINFO("pme2_db: process_completed_token\n"); + PMEPRINFO("pme2_db: received %d frame type\n", token.rx_fd.format); + if (token.rx_fd.format == qm_fd_compound) { + /* Need to copy output */ + src_sz = tx_comp[OUTPUT_FRM].length; + dst_sz = db_cmd->output.size; + PMEPRINFO("pme gen %u data, have space for %u\n", + src_sz, dst_sz); + db_cmd->output.size = min(dst_sz, src_sz); + /* Doesn't make sense we generated more than available space + * should have got truncation. + */ + BUG_ON(dst_sz < src_sz); + if (copy_to_user((void __user *)db_cmd->output.data, rx_data, + db_cmd->output.size)) { + PMEPRERR("Error copying to user data\n"); + ret = -EFAULT; + goto comp_frame_unmap_cf; + } + } else if (token.rx_fd.format == qm_fd_sg_big) + db_cmd->output.size = 0; + else + panic("unexpected frame type received %d\n", + token.rx_fd.format); + + db_cmd->flags = pme_fd_res_flags(&token.rx_fd); + db_cmd->status = pme_fd_res_status(&token.rx_fd); + +unmap_frame: + if (token.rx_fd.format == qm_fd_sg_big) + goto single_frame_unmap_frame; + +comp_frame_unmap_cf: +comp_frame_unmap_output: +comp_frame_free_rx: + kfree(rx_data); + goto unmap_input_frame; +single_frame_unmap_frame: +unmap_input_frame: +free_tx_data: + kfree(tx_data); + + return ret; +} + +static int execute_nop(struct file *fp, struct db_session *db) +{ + int ret = 0; + struct ctrl_op ctx_ctrl = { + .ctx_ctr.cb = ctrl_cb, + .ctx_ctr.ern_cb = ctrl_ern_cb + }; + init_completion(&ctx_ctrl.cb_done); + + ret = pme_ctx_ctrl_nop(&db->ctx, PME_CTX_OP_WAIT|PME_CTX_OP_WAIT_INT, + &ctx_ctrl.ctx_ctr); + if (!ret) + wait_for_completion(&ctx_ctrl.cb_done); + + if (ctx_ctrl.ern) + ret = -EIO; + return ret; +} + +static atomic_t sre_reset_lock = ATOMIC_INIT(1); +static int ioctl_sre_reset(unsigned long arg) +{ + struct pme_db_sre_reset reset_vals; + int i; + u32 srrr_val; + int ret = 0; + + if (copy_from_user(&reset_vals, (struct pme_db_sre_reset __user *)arg, + sizeof(struct pme_db_sre_reset))) + return -EFAULT; + PMEPRINFO("sre_reset:\n"); + PMEPRINFO(" rule_index = 0x%x:\n", reset_vals.rule_index); + PMEPRINFO(" rule_increment = 0x%x:\n", reset_vals.rule_increment); + PMEPRINFO(" rule_repetitions = 0x%x:\n", reset_vals.rule_repetitions); + PMEPRINFO(" rule_reset_interval = 0x%x:\n", + reset_vals.rule_reset_interval); + PMEPRINFO(" rule_reset_priority = 0x%x:\n", + reset_vals.rule_reset_priority); + + /* Validate ranges */ + if ((reset_vals.rule_index >= PME_PMFA_SRE_INDEX_MAX) || + (reset_vals.rule_increment > PME_PMFA_SRE_INC_MAX) || + (reset_vals.rule_repetitions >= PME_PMFA_SRE_REP_MAX) || + (reset_vals.rule_reset_interval >= + PME_PMFA_SRE_INTERVAL_MAX)) + return -ERANGE; + /* Check and make sure only one caller is present */ + if (!atomic_dec_and_test(&sre_reset_lock)) { + /* Someone else is already in this call */ + atomic_inc(&sre_reset_lock); + return -EBUSY; + }; + /* All validated. Run the command */ + for (i = 0; i < PME_SRE_RULE_VECTOR_SIZE; i++) + pme_attr_set(pme_attr_srrv0 + i, reset_vals.rule_vector[i]); + pme_attr_set(pme_attr_srrfi, reset_vals.rule_index); + pme_attr_set(pme_attr_srri, reset_vals.rule_increment); + pme_attr_set(pme_attr_srrwc, + (0xFFF & reset_vals.rule_reset_interval) << 1 | + (reset_vals.rule_reset_priority ? 1 : 0)); + /* Need to set SRRR last */ + pme_attr_set(pme_attr_srrr, reset_vals.rule_repetitions); + do { + mdelay(PME_PMFA_SRE_POLL_MS); + ret = pme_attr_get(pme_attr_srrr, &srrr_val); + if (ret) { + PMEPRCRIT("pme2: Error reading srrr\n"); + /* bail */ + break; + } + /* Check for error */ + else if (srrr_val & 0x10000000) { + PMEPRERR("pme2: Error in SRRR\n"); + ret = -EIO; + } + PMEPRINFO("pme2: srrr count %d\n", srrr_val); + } while (srrr_val); + atomic_inc(&sre_reset_lock); + return ret; +} + +/** + * fsl_pme2_db_open - open the driver + * + * Open the driver and prepare for requests. + * + * Every time an application opens the driver, we create a db_session object + * for that file handle. + */ +static int fsl_pme2_db_open(struct inode *node, struct file *fp) +{ + int ret; + struct db_session *db = NULL; + + db = kzalloc(sizeof(struct db_session), GFP_KERNEL); + if (!db) + return -ENOMEM; + fp->private_data = db; + db->ctx.cb = db_cb; + db->ctx.ern_cb = db_ern_cb; + + ret = pme_ctx_init(&db->ctx, + PME_CTX_FLAG_EXCLUSIVE | + PME_CTX_FLAG_PMTCC | + PME_CTX_FLAG_DIRECT| + PME_CTX_FLAG_LOCAL, + 0, 4, CONFIG_FSL_PME2_DB_QOSOUT_PRIORITY, 0, NULL); + if (ret) { + PMEPRERR("pme_ctx_init %d\n", ret); + goto free_data; + } + + /* enable the context */ + ret = pme_ctx_enable(&db->ctx); + if (ret) { + PMEPRERR("error enabling ctx %d\n", ret); + pme_ctx_finish(&db->ctx); + goto free_data; + } + PMEPRINFO("pme2_db: Finish pme_db open %d\n", smp_processor_id()); + return 0; +free_data: + kfree(fp->private_data); + fp->private_data = NULL; + return ret; +} + +static int fsl_pme2_db_close(struct inode *node, struct file *fp) +{ + int ret = 0; + struct db_session *db = fp->private_data; + + PMEPRINFO("Start pme_db close\n"); + while (db->exclusive_counter) { + pme_ctx_exclusive_dec(&db->ctx); + db->exclusive_counter--; + } + + /* Disable context. */ + ret = pme_ctx_disable(&db->ctx, PME_CTX_OP_WAIT, NULL); + if (ret) + PMEPRCRIT("Error disabling ctx %d\n", ret); + pme_ctx_finish(&db->ctx); + kfree(db); + PMEPRINFO("Finish pme_db close\n"); + return 0; +} + +/* Main switch loop for ioctl operations */ +static long fsl_pme2_db_ioctl(struct file *fp, unsigned int cmd, + unsigned long arg) +{ + struct db_session *db = fp->private_data; + int ret = 0; + + switch (cmd) { + + case PMEIO_PMTCC: { + int ret; + struct pme_db db_cmd; + + /* Copy the command to kernel space */ + if (copy_from_user(&db_cmd, (void __user *)arg, + sizeof(db_cmd))) + return -EFAULT; + ret = execute_cmd(fp, db, &db_cmd); + if (!ret) + ret = copy_to_user((struct pme_db __user *)arg, + &db_cmd, sizeof(db_cmd)); + return ret; + } + break; + + case PMEIO_EXL_INC: + return exclusive_inc(fp, db); + case PMEIO_EXL_DEC: + return exclusive_dec(fp, db); + case PMEIO_EXL_GET: + BUG_ON(!db); + BUG_ON(!(db->ctx.flags & PME_CTX_FLAG_EXCLUSIVE)); + if (copy_to_user((void __user *)arg, + &db->exclusive_counter, + sizeof(db->exclusive_counter))) + ret = -EFAULT; + return ret; + case PMEIO_NOP: + return execute_nop(fp, db); + case PMEIO_SRE_RESET: + return ioctl_sre_reset(arg); + +#ifdef CONFIG_COMPAT + case PMEIO_PMTCC32: { + int ret; + struct pme_db db_cmd; + struct compat_pme_db db_cmd32; + struct compat_pme_db __user *user_db_cmd = compat_ptr(arg); + + /* Copy the command to kernel space */ + if (copy_from_user(&db_cmd32, user_db_cmd, sizeof(db_cmd32))) + return -EFAULT; + /* Convert to 64-bit struct */ + compat_to_db(&db_cmd, &db_cmd32); + ret = execute_cmd(fp, db, &db_cmd); + if (!ret) { + /* Convert to compat struct */ + db_to_compat(&db_cmd32, &db_cmd); + ret = copy_to_user(user_db_cmd, &db_cmd32, + sizeof(*user_db_cmd)); + } + return ret; + } + break; +#endif + } + pr_info("Unknown pme_db ioctl cmd %u\n", cmd); + return -EINVAL; +} + +static const struct file_operations fsl_pme2_db_fops = { + .owner = THIS_MODULE, + .open = fsl_pme2_db_open, + .release = fsl_pme2_db_close, + .unlocked_ioctl = fsl_pme2_db_ioctl, +#ifdef CONFIG_COMPAT + .compat_ioctl = fsl_pme2_db_ioctl, +#endif +}; + +static struct miscdevice fsl_pme2_db_dev = { + .minor = MISC_DYNAMIC_MINOR, + .name = PME_DEV_DB_NODE, + .fops = &fsl_pme2_db_fops +}; + +static int __init fsl_pme2_db_init(void) +{ + int err = 0; + + pr_info("Freescale pme2 db driver\n"); + if (!pme2_have_control()) { + PMEPRERR("not on ctrl-plane\n"); + return -ENODEV; + } + err = misc_register(&fsl_pme2_db_dev); + if (err) { + PMEPRERR("cannot register device\n"); + return err; + } + PMEPRINFO("device %s registered\n", fsl_pme2_db_dev.name); + return 0; +} + +static void __exit fsl_pme2_db_exit(void) +{ + int err = misc_deregister(&fsl_pme2_db_dev); + if (err) { + PMEPRERR("Failed to deregister device %s, " + "code %d\n", fsl_pme2_db_dev.name, err); + return; + } + PMEPRINFO("device %s deregistered\n", fsl_pme2_db_dev.name); +} + +module_init(fsl_pme2_db_init); +module_exit(fsl_pme2_db_exit); + +MODULE_AUTHOR("Freescale Semiconductor - OTC"); +MODULE_LICENSE("Dual BSD/GPL"); +MODULE_DESCRIPTION("FSL PME2 db driver"); --- linux-3.13.0.orig/drivers/staging/fsl_pme2/pme2_high.c +++ linux-3.13.0/drivers/staging/fsl_pme2/pme2_high.c @@ -0,0 +1,944 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "pme2_private.h" + +/* The pme_ctx state machine is described via the following list of + * internal PME_CTX_FLAG_*** bits and cross-referenced to the APIs (and + * functionality) they track. + * + * DEAD: set at any point, an error has been hit, doesn't "cause" disabling or + * any autonomous ref-decrement (been there, hit the gotchas, won't do it + * again). + * + * DISABLING: set by pme_ctx_disable() at any point that is not already + * disabling, disabled, or in ctrl, and the ref is decremented. DISABLING is + * unset by pme_ctx_enable(). + * + * DISABLED: once pme_ctx_disable() has set DISABLING and refs==0, DISABLED is + * set before returning. (Any failure will clear DISABLING and increment the ref + * count.) DISABLING is unset by pme_ctx_enable(). + * + * ENABLING: set by pme_ctx_enable() provided the context is disabled, not dead, + * not in RECONFIG, and not already enabling. Once set, the ref is incremented + * and the tx FQ is scheduled (for non-exclusive flows). If this fails, the ref + * is decremented and the context is re-disabled. ENABLING is unset once + * pme_ctx_enable() completes. + * + * RECONFIG: set by pme_ctx_reconfigure_[rt]x() provided the context is + * disabled, not dead, and not already in reconfig. RECONFIG is cleared prior to + * the function returning. + * + * Simplifications: the do_flag() wrapper provides synchronised modifications of + * the ctx 'flags', and callers can rely on the following implications to reduce + * the number of flags in the masks being passed in; + * DISABLED implies DISABLING (and enable will clear both) + */ + +/* Internal-only ctx flags, mustn't conflict with exported ones */ +#define PME_CTX_FLAG_DEAD 0x80000000 +#define PME_CTX_FLAG_DISABLING 0x40000000 +#define PME_CTX_FLAG_DISABLED 0x20000000 +#define PME_CTX_FLAG_ENABLING 0x10000000 +#define PME_CTX_FLAG_RECONFIG 0x08000000 +#define PME_CTX_FLAG_PRIVATE 0xf8000000 /* mask of them all */ + +/* Internal-only cmd flags, musn't conflict with exported ones */ +#define PME_CTX_OP_INSIDE_DISABLE 0x80000000 +#define PME_CTX_OP_PRIVATE 0x80000000 /* mask of them all */ + +struct pme_nostash { + struct qman_fq fqin; + struct pme_ctx *parent; +}; + +/* This wrapper simplifies conditional (and locked) read-modify-writes to + * 'flags'. Inlining should allow the compiler to optimise it based on the + * parameters, eg. if 'must_be_set'/'must_not_be_set' are zero it will + * degenerate to an unconditional read-modify-write, if 'to_set'/'to_unset' are + * zero it will degenerate to a read-only flag-check, etc. */ +static inline int do_flags(struct pme_ctx *ctx, + u32 must_be_set, u32 must_not_be_set, + u32 to_set, u32 to_unset) +{ + int err = -EBUSY; + unsigned long irqflags; + + spin_lock_irqsave(&ctx->lock, irqflags); + if (((ctx->flags & must_be_set) == must_be_set) && + !(ctx->flags & must_not_be_set)) { + ctx->flags |= to_set; + ctx->flags &= ~to_unset; + err = 0; + } + spin_unlock_irqrestore(&ctx->lock, irqflags); + return err; +} + +static enum qman_cb_dqrr_result cb_dqrr(struct qman_portal *, struct qman_fq *, + const struct qm_dqrr_entry *); +static void cb_ern(struct qman_portal *, struct qman_fq *, + const struct qm_mr_entry *); +static void cb_dc_ern(struct qman_portal *, struct qman_fq *, + const struct qm_mr_entry *); +static void cb_fqs(struct qman_portal *, struct qman_fq *, + const struct qm_mr_entry *); +static const struct qman_fq_cb pme_fq_base_in = { + .fqs = cb_fqs, + .ern = cb_ern +}; +static const struct qman_fq_cb pme_fq_base_out = { + .dqrr = cb_dqrr, + .dc_ern = cb_dc_ern, + .fqs = cb_fqs +}; + +/* Globals related to competition for PME_EFQC, ie. exclusivity */ +static DECLARE_WAIT_QUEUE_HEAD(exclusive_queue); +static spinlock_t exclusive_lock = __SPIN_LOCK_UNLOCKED(exclusive_lock); +static unsigned int exclusive_refs; +static struct pme_ctx *exclusive_ctx; + +/* Index 0..255, bools do indicated which errors are serious + * 0x40, 0x41, 0x48, 0x49, 0x4c, 0x4e, 0x4f, 0x50, 0x51, 0x59, 0x5a, 0x5b, + * 0x5c, 0x5d, 0x5f, 0x60, 0x80, 0xc0, 0xc1, 0xc2, 0xc4, 0xd2, + * 0xd4, 0xd5, 0xd7, 0xd9, 0xda, 0xe0, 0xe7 + */ +static u8 serious_error_vec[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, + 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x01, 0x00, 0x01, 0x00, 0x01, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; + +/* TODO: this is hitting the rx FQ with a large blunt instrument, ie. park() + * does a retire, query, oos, and (re)init. It's possible to force-eligible the + * rx FQ instead, then use a DCA_PK within the cb_dqrr() callback to park it. + * Implement this optimisation later if it's an issue (and incur the additional + * complexity in the state-machine). */ +static int park(struct qman_fq *fq, struct qm_mcc_initfq *initfq) +{ + int ret; + u32 flags; + + ret = qman_retire_fq(fq, &flags); + if (ret) + return ret; + BUG_ON(flags & QMAN_FQ_STATE_BLOCKOOS); + /* We can't revert from now on */ + ret = qman_query_fq(fq, &initfq->fqd); + BUG_ON(ret); + ret = qman_oos_fq(fq); + BUG_ON(ret); + /* can't set QM_INITFQ_WE_OAC and QM_INITFQ_WE_TDTHRESH + * at the same time */ + initfq->we_mask = QM_INITFQ_WE_MASK & ~QM_INITFQ_WE_TDTHRESH; + ret = qman_init_fq(fq, 0, initfq); + BUG_ON(ret); + initfq->we_mask = QM_INITFQ_WE_TDTHRESH; + ret = qman_init_fq(fq, 0, initfq); + BUG_ON(ret); + return 0; +} + +static inline int reconfigure_rx(struct pme_ctx *ctx, int to_park, u8 qosout, + enum qm_channel dest, + const struct qm_fqd_stashing *stashing) +{ + struct qm_mcc_initfq initfq; + u32 flags = QMAN_INITFQ_FLAG_SCHED; + int ret; + + ret = do_flags(ctx, PME_CTX_FLAG_DISABLED, + PME_CTX_FLAG_DEAD | PME_CTX_FLAG_RECONFIG, + PME_CTX_FLAG_RECONFIG, 0); + if (ret) + return ret; + if (to_park) { + ret = park(&ctx->fq, &initfq); + if (ret) + goto done; + } + initfq.we_mask = QM_INITFQ_WE_DESTWQ | QM_INITFQ_WE_FQCTRL; + initfq.fqd.dest.wq = qosout; + if (stashing) { + initfq.we_mask |= QM_INITFQ_WE_CONTEXTA; + initfq.fqd.context_a.stashing = *stashing; + initfq.fqd.fq_ctrl = QM_FQCTRL_CTXASTASHING; + } else + initfq.fqd.fq_ctrl = 0; /* disable stashing */ + if (ctx->flags & PME_CTX_FLAG_LOCAL) + flags |= QMAN_INITFQ_FLAG_LOCAL; + else { + initfq.fqd.dest.channel = dest; + /* Set hold-active *IFF* it's a pool channel */ + if (dest >= qm_channel_pool1) + initfq.fqd.fq_ctrl |= QM_FQCTRL_HOLDACTIVE; + } + ret = qman_init_fq(&ctx->fq, flags, &initfq); +done: + do_flags(ctx, 0, 0, 0, PME_CTX_FLAG_RECONFIG); + return ret; +} + +/* this code is factored out of pme_ctx_disable() and get_ctrl() */ +static int empty_pipeline(struct pme_ctx *ctx, __maybe_unused u32 flags) +{ + int ret; +#ifdef CONFIG_FSL_DPA_CAN_WAIT + if (flags & PME_CTX_OP_WAIT) { + if (flags & PME_CTX_OP_WAIT_INT) { + ret = -EINTR; + wait_event_interruptible(ctx->queue, + !(ret = atomic_read(&ctx->refs))); + } else + wait_event(ctx->queue, + !(ret = atomic_read(&ctx->refs))); + } else +#endif + ret = atomic_read(&ctx->refs); + if (ret) + /* convert a +ve ref-count to a -ve error code */ + ret = -EBUSY; + return ret; +} + +int pme_ctx_init(struct pme_ctx *ctx, u32 flags, u32 bpid, u8 qosin, + u8 qosout, enum qm_channel dest, + const struct qm_fqd_stashing *stashing) +{ + u32 fqid_rx = 0, fqid_tx = 0; + int rxinit = 0, ret = -ENOMEM, fqin_inited = 0; + + ctx->fq.cb = pme_fq_base_out; + atomic_set(&ctx->refs, 0); + ctx->flags = (flags & ~PME_CTX_FLAG_PRIVATE) | PME_CTX_FLAG_DISABLED | + PME_CTX_FLAG_DISABLING; + if (ctx->flags & PME_CTX_FLAG_PMTCC) + ctx->flags |= PME_CTX_FLAG_DIRECT | PME_CTX_FLAG_EXCLUSIVE; + spin_lock_init(&ctx->lock); + init_waitqueue_head(&ctx->queue); + INIT_LIST_HEAD(&ctx->tokens); + ctx->hw_flow = NULL; + ctx->hw_residue = NULL; + + ctx->us_data = kzalloc(sizeof(struct pme_nostash), GFP_KERNEL); + if (!ctx->us_data) + goto err; + ctx->us_data->parent = ctx; + fqid_rx = qm_fq_new(); + fqid_tx = qm_fq_new(); + if (!fqid_rx || !fqid_tx || !ctx->us_data) + goto err; + ctx->us_data->fqin.cb = pme_fq_base_in; + if (qman_create_fq(fqid_rx, QMAN_FQ_FLAG_TO_DCPORTAL | + ((flags & PME_CTX_FLAG_LOCKED) ? + QMAN_FQ_FLAG_LOCKED : 0), + &ctx->us_data->fqin)) + goto err; + fqin_inited = 1; + if (qman_create_fq(fqid_tx, QMAN_FQ_FLAG_NO_ENQUEUE | + ((flags & PME_CTX_FLAG_LOCKED) ? + QMAN_FQ_FLAG_LOCKED : 0), &ctx->fq)) + goto err; + rxinit = 1; + /* Input FQ */ + if (!(flags & PME_CTX_FLAG_DIRECT)) { + ctx->hw_flow = pme_hw_flow_new(); + if (!ctx->hw_flow) + goto err; + } + ret = pme_ctx_reconfigure_tx(ctx, bpid, qosin); + if (ret) + goto err; + /* Output FQ */ + ret = reconfigure_rx(ctx, 0, qosout, dest, stashing); + if (ret) { + /* Need to OOS the FQ before it gets free'd */ + ret = qman_oos_fq(&ctx->us_data->fqin); + BUG_ON(ret); + goto err; + } + return 0; +err: + if (fqid_rx) + qm_fq_free(fqid_rx); + if (fqid_tx) + qm_fq_free(fqid_tx); + if (ctx->hw_flow) + pme_hw_flow_free(ctx->hw_flow); + if (ctx->us_data) { + if (fqin_inited) + qman_destroy_fq(&ctx->us_data->fqin, 0); + kfree(ctx->us_data); + } + if (rxinit) + qman_destroy_fq(&ctx->fq, 0); + return ret; +} +EXPORT_SYMBOL(pme_ctx_init); + +/* NB, we don't lock here because there must be no other callers (even if we + * locked, what does the loser do after we win?) */ +void pme_ctx_finish(struct pme_ctx *ctx) +{ + u32 flags, fqid_rx, fqid_tx; + int ret; + + ret = do_flags(ctx, PME_CTX_FLAG_DISABLED, PME_CTX_FLAG_RECONFIG, 0, 0); + BUG_ON(ret); + /* Rx/Tx are empty (coz ctx is disabled) so retirement should be + * immediate */ + ret = qman_retire_fq(&ctx->us_data->fqin, &flags); + BUG_ON(ret); + BUG_ON(flags & QMAN_FQ_STATE_BLOCKOOS); + ret = qman_retire_fq(&ctx->fq, &flags); + BUG_ON(ret); + BUG_ON(flags & QMAN_FQ_STATE_BLOCKOOS); + /* OOS and free (don't kfree fq, it's a static ctx member) */ + ret = qman_oos_fq(&ctx->us_data->fqin); + BUG_ON(ret); + ret = qman_oos_fq(&ctx->fq); + BUG_ON(ret); + fqid_rx = qman_fq_fqid(&ctx->us_data->fqin); + fqid_tx = qman_fq_fqid(&ctx->fq); + qman_destroy_fq(&ctx->us_data->fqin, 0); + qman_destroy_fq(&ctx->fq, 0); + qm_fq_free(fqid_rx); + qm_fq_free(fqid_tx); + kfree(ctx->us_data); + if (ctx->hw_flow) + pme_hw_flow_free(ctx->hw_flow); + if (ctx->hw_residue) + pme_hw_residue_free(ctx->hw_residue); +} +EXPORT_SYMBOL(pme_ctx_finish); + +int pme_ctx_is_disabled(struct pme_ctx *ctx) +{ + return (ctx->flags & PME_CTX_FLAG_DISABLED); +} +EXPORT_SYMBOL(pme_ctx_is_disabled); + +int pme_ctx_is_dead(struct pme_ctx *ctx) +{ + return (ctx->flags & PME_CTX_FLAG_DEAD); +} +EXPORT_SYMBOL(pme_ctx_is_dead); + +/* predeclare this here because pme_ctx_disable() may invoke it in "privileged + * mode". The code is down with the other ctrl commands, where it belongs. */ +static inline int __update_flow(struct pme_ctx *ctx, u32 flags, + struct pme_flow *params, struct pme_ctx_ctrl_token *token, + int is_disabling); + +/* This gets invoked by pme_ctx_disable() if it runs to completion, otherwise + * it's called from cb_helper. */ +static inline void __disable_done(struct pme_ctx *ctx) +{ + struct qm_mcc_initfq initfq; + int ret = 0; + if (!(ctx->flags & PME_CTX_FLAG_EXCLUSIVE)) { + /* Park fqin (exclusive is always parked) */ + ret = park(&ctx->us_data->fqin, &initfq); + /* All the conditions for park() to succeed should be met. If + * this fails, there's a bug (s/w or h/w). */ + if (ret) + pr_crit("pme2: park() should never fail! (%d)\n", ret); + } + do_flags(ctx, 0, 0, PME_CTX_FLAG_DISABLED, 0); +} + +int pme_ctx_disable(struct pme_ctx *ctx, u32 flags, + struct pme_ctx_ctrl_token *token) +{ + int ret; + + /* We must not (already) be DISABLING */ + ret = do_flags(ctx, 0, PME_CTX_FLAG_DISABLING, + PME_CTX_FLAG_DISABLING, 0); + if (ret) + return ret; + /* Make sure the pipeline is empty */ + atomic_dec(&ctx->refs); + ret = empty_pipeline(ctx, flags); + if (ret) + goto err; + /* We're idle, but is the flow context flushed from PME onboard cache? + * If it's not flushed when the system deallocates it, that 32 bytes + * could be in use later when PME decides to flush a write to it. Need + * to make it coherent again... */ + if (!(ctx->flags & PME_CTX_FLAG_DIRECT)) { + /* Pass on wait flags (if any) but cancel any flow-context field + * writes (this is not the pme_ctx_ctrl_update_flow() API). */ + ret = __update_flow(ctx, flags & ~PME_CMD_FCW_ALL, NULL, + token, 1); + if (ret) + goto err; + return 1; + } + __disable_done(ctx); + return 0; +err: + atomic_inc(&ctx->refs); + do_flags(ctx, 0, 0, 0, PME_CTX_FLAG_DISABLING); + wake_up(&ctx->queue); + return ret; +} +EXPORT_SYMBOL(pme_ctx_disable); + +int pme_ctx_enable(struct pme_ctx *ctx) +{ + int ret; + ret = do_flags(ctx, PME_CTX_FLAG_DISABLED, + PME_CTX_FLAG_DEAD | PME_CTX_FLAG_RECONFIG | + PME_CTX_FLAG_ENABLING, + PME_CTX_FLAG_ENABLING, 0); + if (ret) + return ret; + if (!(ctx->flags & PME_CTX_FLAG_EXCLUSIVE)) { + ret = qman_init_fq(&ctx->us_data->fqin, + QMAN_INITFQ_FLAG_SCHED, NULL); + if (ret) { + do_flags(ctx, 0, 0, 0, PME_CTX_FLAG_ENABLING); + return ret; + } + } + atomic_inc(&ctx->refs); + do_flags(ctx, 0, 0, 0, PME_CTX_FLAG_DISABLED | PME_CTX_FLAG_DISABLING | + PME_CTX_FLAG_ENABLING); + return 0; +} +EXPORT_SYMBOL(pme_ctx_enable); + +int pme_ctx_reconfigure_tx(struct pme_ctx *ctx, u32 bpid, u8 qosin) +{ + struct qm_mcc_initfq initfq; + int ret; + + ret = do_flags(ctx, PME_CTX_FLAG_DISABLED, + PME_CTX_FLAG_DEAD | PME_CTX_FLAG_RECONFIG, + PME_CTX_FLAG_RECONFIG, 0); + if (ret) + return ret; + memset(&initfq,0,sizeof(initfq)); + pme_initfq(&initfq, ctx->hw_flow, qosin, bpid, qman_fq_fqid(&ctx->fq)); + ret = qman_init_fq(&ctx->us_data->fqin, 0, &initfq); + do_flags(ctx, 0, 0, 0, PME_CTX_FLAG_RECONFIG); + return ret; +} +EXPORT_SYMBOL(pme_ctx_reconfigure_tx); + +int pme_ctx_reconfigure_rx(struct pme_ctx *ctx, u8 qosout, + enum qm_channel dest, const struct qm_fqd_stashing *stashing) +{ + return reconfigure_rx(ctx, 1, qosout, dest, stashing); +} +EXPORT_SYMBOL(pme_ctx_reconfigure_rx); + +/* Helpers for 'ctrl' and 'work' APIs. These are used when the 'ctx' in question + * is EXCLUSIVE. */ +static inline void release_exclusive(__maybe_unused struct pme_ctx *ctx) +{ + unsigned long irqflags; + + BUG_ON(exclusive_ctx != ctx); + BUG_ON(!exclusive_refs); + spin_lock_irqsave(&exclusive_lock, irqflags); + if (!(--exclusive_refs)) { + exclusive_ctx = NULL; + pme2_exclusive_unset(); + wake_up(&exclusive_queue); + } + spin_unlock_irqrestore(&exclusive_lock, irqflags); +} +static int __try_exclusive(struct pme_ctx *ctx) +{ + int ret = 0; + unsigned long irqflags; + + spin_lock_irqsave(&exclusive_lock, irqflags); + if (exclusive_refs) { + /* exclusivity already held, continue if we're the owner */ + if (exclusive_ctx != ctx) + ret = -EBUSY; + } else { + /* it's not currently held */ + ret = pme2_exclusive_set(&ctx->us_data->fqin); + if (!ret) + exclusive_ctx = ctx; + } + if (!ret) + exclusive_refs++; + spin_unlock_irqrestore(&exclusive_lock, irqflags); + return ret; +} +/* Use this macro as the wait expression because we don't want to continue + * looping if the reason we're failing is that we don't have CCSR access + * (-ENODEV). */ +#define try_exclusive(ret, ctx) \ + (!(ret = __try_exclusive(ctx)) || (ret == -ENODEV)) +static inline int get_exclusive(struct pme_ctx *ctx, __maybe_unused u32 flags) +{ + int ret; +#ifdef CONFIG_FSL_DPA_CAN_WAIT + if (flags & PME_CTX_OP_WAIT) { + if (flags & PME_CTX_OP_WAIT_INT) { + ret = -EINTR; + wait_event_interruptible(exclusive_queue, + try_exclusive(ret, ctx)); + } else + wait_event(exclusive_queue, + try_exclusive(ret, ctx)); + } else +#endif + ret = __try_exclusive(ctx); + return ret; +} + +/* Used for 'work' APIs, convert PME->QMAN wait flags. The PME and + * QMAN "wait" flags have been aligned so that the below conversion should + * compile with good straight-line speed. */ +static inline u32 ctrl2eq(u32 flags) +{ +#ifdef CONFIG_FSL_DPA_CAN_WAIT + return flags & (QMAN_ENQUEUE_FLAG_WAIT | QMAN_ENQUEUE_FLAG_WAIT_INT); +#else + return flags; +#endif +} + +static inline void release_work(struct pme_ctx *ctx) +{ + if (atomic_dec_and_test(&ctx->refs)) + wake_up(&ctx->queue); +} + +#define BLOCK_NORMAL_WORK (PME_CTX_FLAG_DEAD | PME_CTX_FLAG_DISABLING) +static int try_work(struct pme_ctx *ctx, u32 flags) +{ + atomic_inc(&ctx->refs); + if (unlikely(!(flags & PME_CTX_OP_INSIDE_DISABLE) && + (ctx->flags & BLOCK_NORMAL_WORK))) { + release_work(ctx); + return -EIO; + } + return 0; +} + +static int get_work(struct pme_ctx *ctx, u32 flags) +{ + int ret = 0; +#ifdef CONFIG_FSL_DPA_CAN_WAIT + if (flags & PME_CTX_OP_WAIT) { + if (flags & PME_CTX_OP_WAIT_INT) { + ret = -EINTR; + wait_event_interruptible(ctx->queue, + !(ret = try_work(ctx, flags))); + } else + wait_event(ctx->queue, !try_work(ctx, flags)); + } else +#endif + ret = try_work(ctx, flags); + return ret; +} + +static inline int do_work(struct pme_ctx *ctx, u32 flags, struct qm_fd *fd, + struct pme_ctx_token *token, struct qman_fq *orp_fq, u16 seqnum) +{ + unsigned long irqflags; + int ret = get_work(ctx, flags); + if (ret) + return ret; + if (ctx->flags & PME_CTX_FLAG_EXCLUSIVE) { + ret = get_exclusive(ctx, flags); + if (ret) { + release_work(ctx); + return ret; + } + } + BUG_ON(sizeof(*fd) != sizeof(token->blob)); + memcpy(&token->blob, fd, sizeof(*fd)); + + spin_lock_irqsave(&ctx->lock, irqflags); + list_add_tail(&token->node, &ctx->tokens); + spin_unlock_irqrestore(&ctx->lock, irqflags); + + if (!orp_fq) + ret = qman_enqueue(&ctx->us_data->fqin, fd, ctrl2eq(flags)); + else + ret = qman_enqueue_orp(&ctx->us_data->fqin, fd, ctrl2eq(flags), + orp_fq, seqnum); + if (ret) { + spin_lock_irqsave(&ctx->lock, irqflags); + list_del(&token->node); + spin_unlock_irqrestore(&ctx->lock, irqflags); + if (ctx->flags & PME_CTX_FLAG_EXCLUSIVE) + release_exclusive(ctx); + release_work(ctx); + } + return ret; +} + +static inline int __update_flow(struct pme_ctx *ctx, u32 flags, + struct pme_flow *params, struct pme_ctx_ctrl_token *token, + int is_disabling) +{ + struct qm_fd fd; + int ret; + int hw_res_used = 0; + struct pme_hw_residue *hw_res = pme_hw_residue_new(); + unsigned long irqflags; + + BUG_ON(ctx->flags & PME_CTX_FLAG_DIRECT); + if (!hw_res) + return -ENOMEM; + token->internal_flow_ptr = pme_hw_flow_new(); + if (!token->internal_flow_ptr) { + pme_hw_residue_free(hw_res); + return -ENOMEM; + } + token->base_token.cmd_type = pme_cmd_flow_write; + + flags &= ~PME_CTX_OP_PRIVATE; + /* The callback will want to know this */ + token->base_token.is_disable_flush = is_disabling ? 1 : 0; + flags |= (is_disabling ? PME_CTX_OP_INSIDE_DISABLE : 0); + spin_lock_irqsave(&ctx->lock, irqflags); + if (flags & PME_CTX_OP_RESETRESLEN) { + if (ctx->hw_residue) { + params->ren = 1; + flags |= PME_CMD_FCW_RES; + } else + flags &= ~PME_CMD_FCW_RES; + } + /* allocate residue memory if it is being added */ + if ((flags & PME_CMD_FCW_RES) && params->ren && !ctx->hw_residue) { + ctx->hw_residue = hw_res; + hw_res_used = 1; + } + spin_unlock_irqrestore(&ctx->lock, irqflags); + if (!hw_res_used) + pme_hw_residue_free(hw_res); + /* enqueue the FCW command to PME */ + memset(&fd, 0, sizeof(fd)); + if (params) + memcpy(token->internal_flow_ptr, params, + sizeof(struct pme_flow)); + pme_fd_cmd_fcw(&fd, flags & PME_CMD_FCW_ALL, + (struct pme_flow *)token->internal_flow_ptr, + ctx->hw_residue); + ret = do_work(ctx, flags, &fd, &token->base_token, NULL, 0); + return ret; +} + +int pme_ctx_ctrl_update_flow(struct pme_ctx *ctx, u32 flags, + struct pme_flow *params, struct pme_ctx_ctrl_token *token) +{ + return __update_flow(ctx, flags, params, token, 0); +} +EXPORT_SYMBOL(pme_ctx_ctrl_update_flow); + +int pme_ctx_ctrl_read_flow(struct pme_ctx *ctx, u32 flags, + struct pme_flow *params, struct pme_ctx_ctrl_token *token) +{ + struct qm_fd fd; + + BUG_ON(ctx->flags & (PME_CTX_FLAG_DIRECT | PME_CTX_FLAG_PMTCC)); + token->base_token.cmd_type = pme_cmd_flow_read; + /* enqueue the FCR command to PME */ + token->usr_flow_ptr = params; + token->internal_flow_ptr = pme_hw_flow_new(); + if (!token->internal_flow_ptr) + return -ENOMEM; + memset(&fd, 0, sizeof(fd)); + pme_fd_cmd_fcr(&fd, (struct pme_flow *)token->internal_flow_ptr); + return do_work(ctx, flags, &fd, &token->base_token, NULL, 0); +} +EXPORT_SYMBOL(pme_ctx_ctrl_read_flow); + +int pme_ctx_ctrl_nop(struct pme_ctx *ctx, u32 flags, + struct pme_ctx_ctrl_token *token) +{ + struct qm_fd fd; + + token->base_token.cmd_type = pme_cmd_nop; + /* enqueue the NOP command to PME */ + memset(&fd, 0, sizeof(fd)); + qm_fd_addr_set64(&fd, (unsigned long)token); + pme_fd_cmd_nop(&fd); + return do_work(ctx, flags, &fd, &token->base_token, NULL, 0); +} +EXPORT_SYMBOL(pme_ctx_ctrl_nop); + +static inline void __prep_scan(__maybe_unused struct pme_ctx *ctx, + struct qm_fd *fd, u32 args, struct pme_ctx_token *token) +{ + BUG_ON(ctx->flags & PME_CTX_FLAG_PMTCC); + token->cmd_type = pme_cmd_scan; + pme_fd_cmd_scan(fd, args); +} + +int pme_ctx_scan(struct pme_ctx *ctx, u32 flags, struct qm_fd *fd, u32 args, + struct pme_ctx_token *token) +{ + __prep_scan(ctx, fd, args, token); + return do_work(ctx, flags, fd, token, NULL, 0); +} +EXPORT_SYMBOL(pme_ctx_scan); + +int pme_ctx_scan_orp(struct pme_ctx *ctx, u32 flags, struct qm_fd *fd, u32 args, + struct pme_ctx_token *token, struct qman_fq *orp_fq, u16 seqnum) +{ + __prep_scan(ctx, fd, args, token); + return do_work(ctx, flags, fd, token, orp_fq, seqnum); +} +EXPORT_SYMBOL(pme_ctx_scan_orp); + +int pme_ctx_pmtcc(struct pme_ctx *ctx, u32 flags, struct qm_fd *fd, + struct pme_ctx_token *token) +{ + BUG_ON(!(ctx->flags & PME_CTX_FLAG_PMTCC)); + token->cmd_type = pme_cmd_pmtcc; + pme_fd_cmd_pmtcc(fd); + return do_work(ctx, flags, fd, token, NULL, 0); +} +EXPORT_SYMBOL(pme_ctx_pmtcc); + +int pme_ctx_exclusive_inc(struct pme_ctx *ctx, u32 flags) +{ + return get_exclusive(ctx, flags); +} +EXPORT_SYMBOL(pme_ctx_exclusive_inc); + +void pme_ctx_exclusive_dec(struct pme_ctx *ctx) +{ + release_exclusive(ctx); +} +EXPORT_SYMBOL(pme_ctx_exclusive_dec); + +/* The 99.99% case is that enqueues happen in order or they get order-restored + * by the ORP, and so dequeues of responses happen in order too, so our FIFO + * linked-list of tokens is append-on-enqueue and pop-on-dequeue, and all's + * well. + * + * *EXCEPT*, if ever an enqueue gets rejected ... what then happens is that we + * have dequeues and ERNs to deal with, and the order we see them in is not + * necessarily the linked-list order. So we need to handle this in DQRR and MR + * callbacks, without sacrificing fast-path performance. Ouch. + * + * We use pop_matching_token() to take care of the mess (inlined, of course). */ +#define MATCH(fd1,fd2) \ + ((qm_fd_addr_get64(fd1) == qm_fd_addr_get64(fd2)) && \ + ((fd1)->opaque == (fd2)->opaque)) +static inline struct pme_ctx_token *pop_matching_token(struct pme_ctx *ctx, + const struct qm_fd *fd) +{ + struct pme_ctx_token *token; + const struct qm_fd *t_fd; + unsigned long irqflags; + + /* The fast-path case is that the for() loop actually degenerates into; + * token = list_first_entry(); + * if (likely(MATCH())) + * [done] + * The penalty of the slow-path case is the for() loop plus the fact + * we're optimising for a "likely" match first time, which might hurt + * when that assumption is wrong a few times in succession. */ + spin_lock_irqsave(&ctx->lock, irqflags); + list_for_each_entry(token, &ctx->tokens, node) { + t_fd = (const struct qm_fd *)&token->blob[0]; + if (likely(MATCH(t_fd, fd))) { + list_del(&token->node); + goto found; + } + } + token = NULL; + pr_err("PME2 Could not find matching token!\n"); + BUG(); +found: + spin_unlock_irqrestore(&ctx->lock, irqflags); + return token; +} + +static inline void cb_helper(__always_unused struct qman_portal *portal, + struct pme_ctx *ctx, const struct qm_fd *fd, int error) +{ + struct pme_ctx_token *token; + struct pme_ctx_ctrl_token *ctrl_token; + + /* Resist the urge to use "unlikely" - 'error' is a constant param to an + * inline fn, so the compiler can collapse this completely. */ + if (error) + do_flags(ctx, 0, 0, PME_CTX_FLAG_DEAD, 0); + token = pop_matching_token(ctx, fd); + if (likely(token->cmd_type == pme_cmd_scan)) + ctx->cb(ctx, fd, token); + else if (token->cmd_type == pme_cmd_pmtcc) + ctx->cb(ctx, fd, token); + else { + /* outcast ctx and call supplied callback */ + ctrl_token = container_of(token, struct pme_ctx_ctrl_token, + base_token); + if (token->cmd_type == pme_cmd_flow_write) { + /* Release the allocated flow context */ + pme_hw_flow_free(ctrl_token->internal_flow_ptr); + /* Is this pme_ctx_disable() completion? */ + if (token->is_disable_flush) + __disable_done(ctx); + } else if (token->cmd_type == pme_cmd_flow_read) { + /* Copy read result */ + memcpy(ctrl_token->usr_flow_ptr, + ctrl_token->internal_flow_ptr, + sizeof(struct pme_flow)); + /* Release the allocated flow context */ + pme_hw_flow_free(ctrl_token->internal_flow_ptr); + } + ctrl_token->cb(ctx, fd, ctrl_token); + } + /* Consume the frame */ + if (ctx->flags & PME_CTX_FLAG_EXCLUSIVE) + release_exclusive(ctx); + if (atomic_dec_and_test(&ctx->refs)) + wake_up(&ctx->queue); +} + +/* TODO: this scheme does not allow PME receivers to use held-active at all. Eg. + * there's no configuration of held-active for 'fq', and if there was, there's + * (a) nothing in the cb_dqrr() to support "park" or "defer" logic, and (b) + * nothing in cb_fqs() to support a delayed FQPN (DCAP_PK) notification. */ +static enum qman_cb_dqrr_result cb_dqrr(struct qman_portal *portal, + struct qman_fq *fq, const struct qm_dqrr_entry *dq) +{ + u8 status = (u8)pme_fd_res_status(&dq->fd); + u8 flags = pme_fd_res_flags(&dq->fd); + struct pme_ctx *ctx = (struct pme_ctx *)fq; + + /* Put context into dead state is an unreliable or serious error is + * received + */ + if (unlikely(flags & PME_STATUS_UNRELIABLE)) + cb_helper(portal, ctx, &dq->fd, 1); + else if (unlikely((serious_error_vec[status]))) + cb_helper(portal, ctx, &dq->fd, 1); + else + cb_helper(portal, ctx, &dq->fd, 0); + + return qman_cb_dqrr_consume; +} + +static void cb_ern(__always_unused struct qman_portal *portal, + struct qman_fq *fq, const struct qm_mr_entry *mr) +{ + struct pme_ctx *ctx; + struct pme_nostash *data; + struct pme_ctx_token *token; + + data = container_of(fq, struct pme_nostash, fqin); + ctx = data->parent; + + token = pop_matching_token(ctx, &mr->ern.fd); + if (likely(token->cmd_type == pme_cmd_scan)) { + BUG_ON(!ctx->ern_cb); + ctx->ern_cb(ctx, mr, token); + } else if (token->cmd_type == pme_cmd_pmtcc) { + BUG_ON(!ctx->ern_cb); + ctx->ern_cb(ctx, mr, token); + } else { + struct pme_ctx_ctrl_token *ctrl_token; + /* outcast ctx and call supplied callback */ + ctrl_token = container_of(token, struct pme_ctx_ctrl_token, + base_token); + if (token->cmd_type == pme_cmd_flow_write) { + /* Release the allocated flow context */ + pme_hw_flow_free(ctrl_token->internal_flow_ptr); + } else if (token->cmd_type == pme_cmd_flow_read) { + /* Copy read result */ + memcpy(ctrl_token->usr_flow_ptr, + ctrl_token->internal_flow_ptr, + sizeof(struct pme_flow)); + /* Release the allocated flow context */ + pme_hw_flow_free(ctrl_token->internal_flow_ptr); + } + BUG_ON(!ctrl_token->ern_cb); + ctrl_token->ern_cb(ctx, mr, ctrl_token); + } + /* Consume the frame */ + if (ctx->flags & PME_CTX_FLAG_EXCLUSIVE) + release_exclusive(ctx); + if (atomic_dec_and_test(&ctx->refs)) + wake_up(&ctx->queue); +} + +static void cb_dc_ern(struct qman_portal *portal, struct qman_fq *fq, + const struct qm_mr_entry *mr) +{ + struct pme_ctx *ctx = (struct pme_ctx *)fq; + /* This, umm, *shouldn't* happen. It's pretty bad. Things are expected + * to fall apart here, but we'll continue long enough to get out of + * interrupt context and let the user unwind whatever they can. */ + pr_err("PME2 h/w enqueue rejection - expect catastrophe!\n"); + cb_helper(portal, ctx, &mr->dcern.fd, 1); +} + +static void cb_fqs(__always_unused struct qman_portal *portal, + __always_unused struct qman_fq *fq, + const struct qm_mr_entry *mr) +{ + u8 verb = mr->verb & QM_MR_VERB_TYPE_MASK; + if (verb == QM_MR_VERB_FQRNI) + return; + /* nothing else is supposed to occur */ + BUG(); +} + --- linux-3.13.0.orig/drivers/staging/fsl_pme2/pme2_low.c +++ linux-3.13.0/drivers/staging/fsl_pme2/pme2_low.c @@ -0,0 +1,276 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "pme2_private.h" + +MODULE_AUTHOR("Geoff Thorpe"); +MODULE_LICENSE("Dual BSD/GPL"); +MODULE_DESCRIPTION("FSL PME2 (p4080) device usage"); + +#define PME_RESIDUE_SIZE 128 +#define PME_RESIDUE_ALIGN 64 +#define PME_FLOW_SIZE sizeof(struct pme_flow) +#define PME_FLOW_ALIGN 32 +static struct kmem_cache *slab_residue; +static struct kmem_cache *slab_flow; +static struct kmem_cache *slab_fq; + +/* Hack to support "pme_map()". The point of this is that dma_map_single() now + * requires a non-NULL device, so the idea is that address mapping must be + * device-sensitive. Now the PAMU IO-MMU already takes care of this, as can be + * seen by the device-tree structure generated by the hypervisor (each portal + * node has sub-nodes for each h/w end-point it provides access to, and each + * sub-node has its own LIODN configuration). So we just need to map cpu + * pointers to (guest-)physical address and the PAMU takes care of the rest, so + * this doesn't need to be portal-sensitive nor device-sensitive. */ +static struct platform_device *pdev; + +static int pme2_low_init(void) +{ + int ret = -ENOMEM; + + slab_residue = kmem_cache_create("pme2_residue", PME_RESIDUE_SIZE, + PME_RESIDUE_ALIGN, SLAB_HWCACHE_ALIGN, NULL); + if (!slab_residue) + goto end; + slab_flow = kmem_cache_create("pme2_flow", PME_FLOW_SIZE, + PME_FLOW_ALIGN, 0, NULL); + if (!slab_flow) + goto end; + slab_fq = kmem_cache_create("pme2_fqslab", sizeof(struct qman_fq), + __alignof__(struct qman_fq), SLAB_HWCACHE_ALIGN, NULL); + if (!slab_fq) + goto end; + ret = -ENODEV; + pdev = platform_device_alloc("pme", -1); + if (!pdev) + goto end; + if (dma_set_mask(&pdev->dev, DMA_BIT_MASK(40))) + goto end; + if (platform_device_add(pdev)) + goto end; + return 0; +end: + if (pdev) { + platform_device_put(pdev); + pdev = NULL; + } + if (slab_flow) { + kmem_cache_destroy(slab_flow); + slab_flow = NULL; + } + if (slab_residue) { + kmem_cache_destroy(slab_residue); + slab_residue = NULL; + } + if (slab_fq) { + kmem_cache_destroy(slab_fq); + slab_fq = NULL; + } + return ret; +} + +static void pme2_low_exit(void) +{ + platform_device_del(pdev); + platform_device_put(pdev); + pdev = NULL; + kmem_cache_destroy(slab_fq); + kmem_cache_destroy(slab_flow); + kmem_cache_destroy(slab_residue); + slab_fq = slab_flow = slab_residue = NULL; +} + +module_init(pme2_low_init); +module_exit(pme2_low_exit); + +struct qman_fq *slabfq_alloc(void) +{ + return kmem_cache_alloc(slab_fq, GFP_KERNEL); +} + +void slabfq_free(struct qman_fq *fq) +{ + kmem_cache_free(slab_fq, fq); +} + +/***********************/ +/* low-level functions */ +/***********************/ + +struct pme_hw_residue *pme_hw_residue_new(void) +{ + return kmem_cache_alloc(slab_residue, GFP_KERNEL); +} +EXPORT_SYMBOL(pme_hw_residue_new); + +void pme_hw_residue_free(struct pme_hw_residue *p) +{ + kmem_cache_free(slab_residue, p); +} +EXPORT_SYMBOL(pme_hw_residue_free); + +struct pme_hw_flow *pme_hw_flow_new(void) +{ + struct pme_flow *flow = kmem_cache_zalloc(slab_flow, GFP_KERNEL); + return (struct pme_hw_flow *)flow; +} +EXPORT_SYMBOL(pme_hw_flow_new); + +void pme_hw_flow_free(struct pme_hw_flow *p) +{ + kmem_cache_free(slab_flow, p); +} +EXPORT_SYMBOL(pme_hw_flow_free); + +static const struct pme_flow default_sw_flow = { + .sos = 1, + .srvm = 0, + .esee = 1, + .ren = 0, + .rlen = 0, + .seqnum_hi = 0, + .seqnum_lo = 0, + .sessionid = 0x7ffffff, + .rptr_hi = 0, + .rptr_lo = 0, + .clim = 0xffff, + .mlim = 0xffff +}; + +void pme_sw_flow_init(struct pme_flow *flow) +{ + memcpy(flow, &default_sw_flow, sizeof(*flow)); +} +EXPORT_SYMBOL(pme_sw_flow_init); + +void pme_initfq(struct qm_mcc_initfq *initfq, struct pme_hw_flow *flow, u8 qos, + u8 rbpid, u32 rfqid) +{ + struct pme_context_a *pme_a = + (struct pme_context_a *)&initfq->fqd.context_a; + struct pme_context_b *pme_b = + (struct pme_context_b *)&initfq->fqd.context_b; + + initfq->we_mask = QM_INITFQ_WE_DESTWQ | QM_INITFQ_WE_CONTEXTA | + QM_INITFQ_WE_CONTEXTB; + initfq->fqd.dest.channel = qm_channel_pme; + initfq->fqd.dest.wq = qos; + if (flow) { + dma_addr_t fcp = flow_map((struct pme_flow *)flow); + pme_a->mode = pme_mode_flow; + pme_context_a_set64(pme_a, fcp); + } else { + pme_a->mode = pme_mode_direct; + pme_context_a_set64(pme_a, 0); + } + pme_b->rbpid = rbpid; + pme_b->rfqid = rfqid; +} +EXPORT_SYMBOL(pme_initfq); + +void pme_fd_cmd_nop(struct qm_fd *fd) +{ + struct pme_cmd_nop *nop = (struct pme_cmd_nop *)&fd->cmd; + nop->cmd = pme_cmd_nop; +} +EXPORT_SYMBOL(pme_fd_cmd_nop); + +void pme_fd_cmd_fcw(struct qm_fd *fd, u8 flags, struct pme_flow *flow, + struct pme_hw_residue *residue) +{ + dma_addr_t f; + struct pme_cmd_flow_write *fcw = (struct pme_cmd_flow_write *)&fd->cmd; + + BUG_ON(!flow); + BUG_ON((unsigned long)flow & 31); + fcw->cmd = pme_cmd_flow_write; + fcw->flags = flags; + if (flags & PME_CMD_FCW_RES) { + if (residue) { + dma_addr_t rptr = residue_map(residue); + BUG_ON(!residue); + BUG_ON((unsigned long)residue & 63); + pme_flow_rptr_set64(flow, rptr); + } else + pme_flow_rptr_set64(flow, 0); + } + f = flow_map(flow); + qm_fd_addr_set64(fd, f); + fd->format = qm_fd_contig; + fd->offset = 0; + fd->length20 = sizeof(*flow); +} +EXPORT_SYMBOL(pme_fd_cmd_fcw); + +void pme_fd_cmd_fcr(struct qm_fd *fd, struct pme_flow *flow) +{ + dma_addr_t f; + struct pme_cmd_flow_read *fcr = (struct pme_cmd_flow_read *)&fd->cmd; + + BUG_ON(!flow); + BUG_ON((unsigned long)flow & 31); + fcr->cmd = pme_cmd_flow_read; + f = flow_map(flow); + qm_fd_addr_set64(fd, f); + fd->format = qm_fd_contig; + fd->offset = 0; + fd->length20 = sizeof(*flow); +} +EXPORT_SYMBOL(pme_fd_cmd_fcr); + +void pme_fd_cmd_pmtcc(struct qm_fd *fd) +{ + struct pme_cmd_pmtcc *pmtcc = (struct pme_cmd_pmtcc *)&fd->cmd; + pmtcc->cmd = pme_cmd_pmtcc; +} +EXPORT_SYMBOL(pme_fd_cmd_pmtcc); + +void pme_fd_cmd_scan(struct qm_fd *fd, u32 args) +{ + struct pme_cmd_scan *scan = (struct pme_cmd_scan *)&fd->cmd; + fd->cmd = args; + scan->cmd = pme_cmd_scan; +} +EXPORT_SYMBOL(pme_fd_cmd_scan); + +dma_addr_t pme_map(void *ptr) +{ + return dma_map_single(&pdev->dev, ptr, 1, DMA_BIDIRECTIONAL); +} +EXPORT_SYMBOL(pme_map); + +int pme_map_error(dma_addr_t dma_addr) +{ + return dma_mapping_error(&pdev->dev, dma_addr); +} +EXPORT_SYMBOL(pme_map_error); + --- linux-3.13.0.orig/drivers/staging/fsl_pme2/pme2_private.h +++ linux-3.13.0/drivers/staging/fsl_pme2/pme2_private.h @@ -0,0 +1,180 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "pme2_sys.h" +#include + +#undef PME2_DEBUG + +#ifdef PME2_DEBUG +#define PMEPRINFO(fmt, args...) pr_info("PME2: %s: " fmt, __func__, ## args) +#else +#define PMEPRINFO(fmt, args...) +#endif + +#define PMEPRERR(fmt, args...) pr_err("PME2: %s: " fmt, __func__, ## args) +#define PMEPRCRIT(fmt, args...) pr_crit("PME2: %s: " fmt, __func__, ## args) + +#ifdef CONFIG_FSL_PME2_CTRL +/* Hooks */ +int pme2_create_sysfs_dev_files(struct platform_device *ofdev); +void pme2_remove_sysfs_dev_files(struct platform_device *ofdev); +void accumulator_update_interval(u32 interval); +#endif + +static inline void set_fd_addr(struct qm_fd *fd, dma_addr_t addr) +{ + qm_fd_addr_set64(fd, addr); +} +static inline dma_addr_t get_fd_addr(const struct qm_fd *fd) +{ + return (dma_addr_t)qm_fd_addr_get64(fd); +} +static inline void set_sg_addr(struct qm_sg_entry *sg, dma_addr_t addr) +{ + qm_sg_entry_set64(sg, addr); +} +static inline dma_addr_t get_sg_addr(const struct qm_sg_entry *sg) +{ + return (dma_addr_t)qm_sg_entry_get64(sg); +} + +/******************/ +/* Datapath types */ +/******************/ + +enum pme_mode { + pme_mode_direct = 0x00, + pme_mode_flow = 0x80 +}; + +struct pme_context_a { + enum pme_mode mode:8; + u8 __reserved; + /* Flow Context pointer (48-bit), ignored if mode==direct */ + u16 flow_hi; + u32 flow_lo; +} __packed; +static inline u64 pme_context_a_get64(const struct pme_context_a *p) +{ + return ((u64)p->flow_hi << 32) | (u64)p->flow_lo; +} +/* Macro, so we compile better if 'v' isn't always 64-bit */ +#define pme_context_a_set64(p, v) \ + do { \ + struct pme_context_a *__p931 = (p); \ + __p931->flow_hi = upper_32_bits(v); \ + __p931->flow_lo = lower_32_bits(v); \ + } while (0) + +struct pme_context_b { + u32 rbpid:8; + u32 rfqid:24; +} __packed; + + +/* This is the 32-bit frame "cmd/status" field, sent to PME */ +union pme_cmd { + struct pme_cmd_nop { + enum pme_cmd_type cmd:3; + } nop; + struct pme_cmd_flow_read { + enum pme_cmd_type cmd:3; + } fcr; + struct pme_cmd_flow_write { + enum pme_cmd_type cmd:3; + u8 __reserved:5; + u8 flags; /* See PME_CMD_FCW_*** */ + } __packed fcw; + struct pme_cmd_pmtcc { + enum pme_cmd_type cmd:3; + } pmtcc; + struct pme_cmd_scan { + union { + struct { + enum pme_cmd_type cmd:3; + u8 flags:5; /* See PME_CMD_SCAN_*** */ + } __packed; + }; + u8 set; + u16 subset; + } __packed scan; +}; + +/* The exported macro forms a "scan_args" u32 from 3 inputs, these private + * inlines do the inverse, if you need to crack one apart. */ +static inline u8 scan_args_get_flags(u32 args) +{ + return args >> 24; +} +static inline u8 scan_args_get_set(u32 args) +{ + return (args >> 16) & 0xff; +} +static inline u16 scan_args_get_subset(u32 args) +{ + return args & 0xffff; +} + +/* Hook from pme2_high to pme2_low */ +struct qman_fq *slabfq_alloc(void); +void slabfq_free(struct qman_fq *fq); + +/* Hook from pme2_high to pme2_ctrl */ +int pme2_have_control(void); +int pme2_exclusive_set(struct qman_fq *fq); +int pme2_exclusive_unset(void); + +#define DECLARE_GLOBAL(name, t, mt, def, desc) \ + static t name = def; \ + module_param(name, mt, 0644); \ + MODULE_PARM_DESC(name, desc ", default: " __stringify(def)); + +/* Constants used by the SRE ioctl. */ +#define PME_PMFA_SRE_POLL_MS 100 +#define PME_PMFA_SRE_INDEX_MAX (1 << 27) +#define PME_PMFA_SRE_INC_MAX (1 << 12) +#define PME_PMFA_SRE_REP_MAX (1 << 28) +#define PME_PMFA_SRE_INTERVAL_MAX (1 << 12) + +/* Encapsulations for mapping */ +#define flow_map(flow) \ +({ \ + struct pme_flow *__f913 = (flow); \ + pme_map(__f913); \ +}) + +#define residue_map(residue) \ +({ \ + struct pme_hw_residue *__f913 = (residue); \ + pme_map(__f913); \ +}) + --- linux-3.13.0.orig/drivers/staging/fsl_pme2/pme2_regs.h +++ linux-3.13.0/drivers/staging/fsl_pme2/pme2_regs.h @@ -0,0 +1,173 @@ +/* Copyright 2009-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef PME2_REGS_H +#define PME2_REGS_H + +#define PME_REG_ISR 0x000 +#define PME_REG_IER 0x004 +#define PME_REG_ISDR 0x008 +#define PME_REG_IIR 0x00C +#define PME_REG_RLL 0x014 +#define PME_REG_CDCR 0x018 +#define PME_REG_TRUNCI 0x024 +#define PME_REG_RBC 0x028 +#define PME_REG_ESR 0x02C +#define PME_REG_ECR0 0x030 +#define PME_REG_ECR1 0x034 +#define PME_REG_EFQC 0x050 +#define PME_REG_FACONF 0x060 +#define PME_REG_PMSTAT 0x064 +#define PME_REG_FAMCR 0x068 +#define PME_REG_PMTR 0x06C +#define PME_REG_PEHD 0x074 +#define PME_REG_BSC0 0x080 +#define PME_REG_BSC1 0x084 +#define PME_REG_BSC2 0x088 +#define PME_REG_BSC3 0x08C +#define PME_REG_BSC4 0x090 +#define PME_REG_BSC5 0x094 +#define PME_REG_BSC6 0x098 +#define PME_REG_BSC7 0x09C +#define PME_REG_QMBFD0 0x0E0 +#define PME_REG_QMBFD1 0x0E4 +#define PME_REG_QMBFD2 0x0E8 +#define PME_REG_QMBFD3 0x0EC +#define PME_REG_QMBCTXTAH 0x0F0 +#define PME_REG_QMBCTXTAL 0x0F4 +#define PME_REG_QMBCTXTB 0x0F8 +#define PME_REG_QMBCTL 0x0FC +#define PME_REG_ECC1BES 0x100 +#define PME_REG_ECC2BES 0x104 +#define PME_REG_ECCADDR 0x110 +#define PME_REG_ECCCODE 0x118 +#define PME_REG_TBT0ECC1TH 0x180 +#define PME_REG_TBT0ECC1EC 0x184 +#define PME_REG_TBT1ECC1TH 0x188 +#define PME_REG_TBT1ECC1EC 0x18C +#define PME_REG_VLT0ECC1TH 0x190 +#define PME_REG_VLT0ECC1EC 0x194 +#define PME_REG_VLT1ECC1TH 0x198 +#define PME_REG_VLT1ECC1EC 0x19C +#define PME_REG_CMECC1TH 0x1A0 +#define PME_REG_CMECC1EC 0x1A4 +#define PME_REG_DXCMECC1TH 0x1B0 +#define PME_REG_DXCMECC1EC 0x1B4 +#define PME_REG_DXEMECC1TH 0x1C0 +#define PME_REG_DXEMECC1EC 0x1C4 +#define PME_REG_STNIB 0x200 +#define PME_REG_STNIS 0x204 +#define PME_REG_STNTH1 0x208 +#define PME_REG_STNTH2 0x20C +#define PME_REG_STNTHV 0x210 +#define PME_REG_STNTHS 0x214 +#define PME_REG_STNCH 0x218 +#define PME_REG_SWDB 0x21C +#define PME_REG_KVLTS 0x220 +#define PME_REG_KEC 0x224 +#define PME_REG_STNPM 0x280 +#define PME_REG_STNS1M 0x284 +#define PME_REG_DRCIC 0x288 +#define PME_REG_DRCMC 0x28C +#define PME_REG_STNPMR 0x290 +#define PME_REG_PDSRBAH 0x2A0 +#define PME_REG_PDSRBAL 0x2A4 +#define PME_REG_DMCR 0x2A8 +#define PME_REG_DEC0 0x2AC +#define PME_REG_DEC1 0x2B0 +#define PME_REG_DLC 0x2C0 +#define PME_REG_STNDSR 0x300 +#define PME_REG_STNESR 0x304 +#define PME_REG_STNS1R 0x308 +#define PME_REG_STNOB 0x30C +#define PME_REG_SCBARH 0x310 +#define PME_REG_SCBARL 0x314 +#define PME_REG_SMCR 0x318 +#define PME_REG_SREC 0x320 +#define PME_REG_ESRP 0x328 +#define PME_REG_SRRV0 0x338 +#define PME_REG_SRRV1 0x33C +#define PME_REG_SRRV2 0x340 +#define PME_REG_SRRV3 0x344 +#define PME_REG_SRRV4 0x348 +#define PME_REG_SRRV5 0x34C +#define PME_REG_SRRV6 0x350 +#define PME_REG_SRRV7 0x354 +#define PME_REG_SRRFI 0x358 +#define PME_REG_SRRI 0x360 +#define PME_REG_SRRR 0x364 +#define PME_REG_SRRWC 0x368 +#define PME_REG_SFRCC 0x36C +#define PME_REG_SEC1 0x370 +#define PME_REG_SEC2 0x374 +#define PME_REG_SEC3 0x378 +#define PME_REG_MIA_BYC 0x380 +#define PME_REG_MIA_BLC 0x384 +#define PME_REG_MIA_CE 0x388 +#define PME_REG_MIA_CR 0x390 +#define PME_REG_PPIDMR0 0x800 +#define PME_REG_PPIDMR1 0x804 +#define PME_REG_PPIDMR2 0x808 +#define PME_REG_PPIDMR3 0x80C +#define PME_REG_PPIDMR4 0x810 +#define PME_REG_PPIDMR5 0x814 +#define PME_REG_PPIDMR6 0x818 +#define PME_REG_PPIDMR7 0x81C +#define PME_REG_PPIDMR8 0x820 +#define PME_REG_PPIDMR9 0x824 +#define PME_REG_PPIDMR10 0x828 +#define PME_REG_PPIDMR11 0x82C +#define PME_REG_PPIDMR12 0x830 +#define PME_REG_PPIDMR13 0x834 +#define PME_REG_PPIDMR14 0x838 +#define PME_REG_PPIDMR15 0x83C +#define PME_REG_PPIDMR16 0x840 +#define PME_REG_PPIDMR17 0x844 +#define PME_REG_PPIDMR18 0x848 +#define PME_REG_PPIDMR19 0x84C +#define PME_REG_PPIDMR20 0x850 +#define PME_REG_PPIDMR21 0x854 +#define PME_REG_PPIDMR22 0x858 +#define PME_REG_PPIDMR23 0x85C +#define PME_REG_PPIDMR24 0x860 +#define PME_REG_PPIDMR25 0x864 +#define PME_REG_PPIDMR26 0x868 +#define PME_REG_PPIDMR27 0x86C +#define PME_REG_PPIDMR28 0x870 +#define PME_REG_PPIDMR29 0x874 +#define PME_REG_PPIDMR30 0x878 +#define PME_REG_PPIDMR31 0x87C +#define PME_REG_SRCIDR 0xA00 +#define PME_REG_LIODNR 0xA0C +#define PME_REG_PM_IP_REV1 0xBF8 +#define PME_REG_PM_IP_REV2 0xBFC + +#endif /* REGS_H */ --- linux-3.13.0.orig/drivers/staging/fsl_pme2/pme2_sample_db.c +++ linux-3.13.0/drivers/staging/fsl_pme2/pme2_sample_db.c @@ -0,0 +1,426 @@ +/* Copyright 2009-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +#include "pme2_test.h" + +static u8 pme_db[] = { + 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, + 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +/* Rev 2.1 */ + 0x00, 0x0c, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, + 0x90, 0x41, 0x40, 0x20, 0x00, 0x11, +/* Rev 2.0 */ +/* 0x00, 0x0c, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01, + 0x20, 0x41, 0x40, 0x20, 0x00, 0x11, */ + 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x98, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +/* Rev 2.1 */ + 0x00, 0x0d, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, + 0x90, 0x41, 0xff, 0x81, 0x00, 0x00, +/* Rev 2.0 */ +/* 0x00, 0x0d, 0x00, 0x00, 0x00, 0x04, 0x00, 0x01, + 0x20, 0x41, 0xff, 0x81, 0x00, 0x00, */ + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x01, + 0x01, 0xff, 0x80, 0x00, 0x41, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x18, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x06, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, + 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, + 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, + 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, + 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, + 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, + 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, + 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, + 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, + 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, + 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, + 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, + 0x5c, 0x5d, 0x5e, 0x5f, 0x60, 0x41, 0x42, 0x43, + 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, + 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, + 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x7b, + 0x7c, 0x7d, 0x7e, 0x7f, 0x80, 0x81, 0x82, 0x83, + 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, + 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, + 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x9a, 0x9b, + 0x9c, 0x9d, 0x9e, 0x9f, 0xa0, 0xa1, 0xa2, 0xa3, + 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, + 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, + 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, + 0xbc, 0xbd, 0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, + 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, + 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, + 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, + 0xdc, 0xdd, 0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, + 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, + 0xec, 0xed, 0xee, 0xef, 0xf0, 0xf1, 0xf2, 0xf3, + 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, + 0xfc, 0xfd, 0xfe, 0xff +}; + +static u8 db_read[] = { + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, + 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, +/* Rev 2.1 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, + 0x90, 0x41 +/* Rev 2.0 */ +/* 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01, + 0x20, 0x41 */ +}; + +static u8 db_read_expected_result[] = { + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, + 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, +/* Rev 2.1 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, + 0x90, 0x41, 0x40, 0x20, 0x00, 0x11 +/* Rev 2.0 */ +/* 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01, + 0x20, 0x41, 0x40, 0x20, 0x00, 0x11*/ +}; + +struct pmtcc_ctx { + struct pme_ctx base_ctx; + struct qm_fd result_fd; + struct completion done; + u8 ern; +}; + +static void pmtcc_cb(struct pme_ctx *ctx, const struct qm_fd *fd, + struct pme_ctx_token *ctx_token) +{ + struct pmtcc_ctx *my_ctx = (struct pmtcc_ctx *)ctx; + memcpy(&my_ctx->result_fd, fd, sizeof(*fd)); + complete(&my_ctx->done); +} + +static void pmtcc_ern_cb(struct pme_ctx *ctx, const struct qm_mr_entry *mr, + struct pme_ctx_token *ctx_token) +{ + struct pmtcc_ctx *my_ctx = (struct pmtcc_ctx *)ctx; + my_ctx->result_fd = mr->ern.fd; + my_ctx->ern = 1; + complete(&my_ctx->done); +} + +#define FIRST_PMTCC 56 +int pme2_clear_sample_db(void) +{ + struct pmtcc_ctx ctx = { + .base_ctx.cb = pmtcc_cb, + .base_ctx.ern_cb = pmtcc_ern_cb, + .ern = 0 + }; + struct qm_fd fd; + int ret = 0; + enum pme_status status; + struct pme_ctx_token token; + void *mem; + struct cpumask backup_mask = current->cpus_allowed; + struct cpumask new_mask = *qman_affine_cpus(); + + cpumask_and(&new_mask, &new_mask, bman_affine_cpus()); + ret = set_cpus_allowed_ptr(current, &new_mask); + if (ret) { + pr_info("cleanr_sample_db: can't set cpumask\n"); + goto _clear_0; + } + init_completion(&ctx.done); + ret = pme_ctx_init(&ctx.base_ctx, + PME_CTX_FLAG_EXCLUSIVE | + PME_CTX_FLAG_PMTCC | + PME_CTX_FLAG_LOCAL, 0, 4, 4, 0, NULL); + if (ret) { + pr_err("clear_sample_db: can't init ctx\n"); + goto _clear_1; + } + + /* enable the context */ + ret = pme_ctx_enable(&ctx.base_ctx); + if (ret) { + pr_err("clear_sample_db: can't enable ctx\n"); + goto _clear_2; + } + + /* Write the database */ + memset(&fd, 0, sizeof(struct qm_fd)); + mem = kmalloc(FIRST_PMTCC, GFP_KERNEL); + if (!mem) + goto _clear_3; + memcpy(mem, pme_db, FIRST_PMTCC); + + fd.length20 = FIRST_PMTCC; + qm_fd_addr_set64(&fd, pme_map(mem)); + + ret = pme_ctx_pmtcc(&ctx.base_ctx, PME_CTX_OP_WAIT, &fd, &token); + if (ret == -ENODEV) { + pr_err("clear_sample_db: not the control plane, bailing\n"); + goto _clear_4; + } + if (ret) { + pr_err("clear_sample_db: error with pmtcc\n"); + goto _clear_4; + } + wait_for_completion(&ctx.done); + if (ctx.ern) { + pr_err("clear_sample_db: Rx ERN from pmtcc\n"); + goto _clear_4; + } + status = pme_fd_res_status(&ctx.result_fd); + if (status) { + pr_info("clear_sample_db: PMTCC write status failed %d\n", + status); + goto _clear_4; + } +_clear_4: + kfree(mem); +_clear_3: + /* Disable */ + ret = pme_ctx_disable(&ctx.base_ctx, + PME_CTX_OP_WAIT | PME_CTX_OP_WAIT_INT, NULL); +_clear_2: + pme_ctx_finish(&ctx.base_ctx); +_clear_1: + ret = set_cpus_allowed_ptr(current, &backup_mask); + if (ret) + pr_info("clear_sample_db: can't restore cpumask"); +_clear_0: + if (!ret) + pr_info("clear_sample_db: Done\n"); + else + pr_info("clear_sample_db: Error 0x%x\n", ret); + return ret; + +} + +int pme2_sample_db(void) +{ + struct pmtcc_ctx ctx = { + .base_ctx.cb = pmtcc_cb, + .base_ctx.ern_cb = pmtcc_ern_cb, + .ern = 0 + }; + struct qm_fd fd; + struct qm_sg_entry *sg_table = NULL; + int ret = 0; + enum pme_status status; + struct pme_ctx_token token; + void *mem = NULL, *mem_result = NULL; + u32 pme_rev; + struct cpumask backup_mask = current->cpus_allowed; + struct cpumask new_mask = *qman_affine_cpus(); + + cpumask_and(&new_mask, &new_mask, bman_affine_cpus()); + ret = set_cpus_allowed_ptr(current, &new_mask); + if (ret) { + pr_info("sample_db: can't set cpumask\n"); + goto _finish_0; + } + ret = pme_attr_get(pme_attr_rev1, &pme_rev); + if (ret) { + pr_err("sample_db: can't read pme revision %d\n", ret); + goto _finish_1; + } + /* If Rev 2.0...update database */ + if ((pme_rev & 0x0000FFFF) == 0x00000200) { + pr_info("sample_db: db for pme ver 2.0\n"); + pme_db[133] = 0x01; + pme_db[134] = 0x20; + pme_db[161] = 0x01; + pme_db[162] = 0x20; + db_read[21] = 0x01; + db_read[22] = 0x20; + db_read_expected_result[21] = 0x01; + db_read_expected_result[22] = 0x20; + } else + pr_info("sample_db: db for pme ver 2.1 or greater\n"); + init_completion(&ctx.done); + ret = pme_ctx_init(&ctx.base_ctx, + PME_CTX_FLAG_EXCLUSIVE | + PME_CTX_FLAG_PMTCC | + PME_CTX_FLAG_LOCAL, 0, 4, 4, 0, NULL); + if (ret) { + pr_err("sample_db: can't init ctx\n"); + goto _finish_1; + } + + /* enable the context */ + ret = pme_ctx_enable(&ctx.base_ctx); + if (ret) { + pr_err("sample_db: can't enable ctx\n"); + goto _finish_2; + } + + /* Write the database */ + memset(&fd, 0, sizeof(struct qm_fd)); + mem = kmalloc(sizeof(pme_db), GFP_KERNEL); + if (!mem) + goto _finish_3; + memcpy(mem, pme_db, sizeof(pme_db)); + + fd.length20 = sizeof(pme_db); + qm_fd_addr_set64(&fd, pme_map(mem)); + + ret = pme_ctx_pmtcc(&ctx.base_ctx, PME_CTX_OP_WAIT, &fd, &token); + if (ret == -ENODEV) { + pr_err("sample_db: not the control plane, bailing\n"); + goto _finish_4; + } + if (ret) { + pr_err("sample_db: error with pmtcc\n"); + goto _finish_4; + } + wait_for_completion(&ctx.done); + if (ctx.ern) { + pr_err("sample_db: Rx ERN from pmtcc\n"); + goto _finish_4; + } + status = pme_fd_res_status(&ctx.result_fd); + if (status) { + pr_info("sample_db: PMTCC write status failed %d\n", status); + goto _finish_4; + } + kfree(mem); + mem = NULL; + /* Read back the database */ + init_completion(&ctx.done); + memset(&fd, 0, sizeof(struct qm_fd)); + sg_table = kzalloc(2 * sizeof(*sg_table), GFP_KERNEL | GFP_DMA); + mem_result = kmalloc(28, GFP_KERNEL); + mem = kmalloc(sizeof(db_read), GFP_KERNEL); + if (!sg_table || !mem || !mem_result) { + pr_err("sample_db: out of memory\n"); + ret = -ENOMEM; + goto _finish_4; + } + memcpy(mem, db_read, sizeof(db_read)); + qm_sg_entry_set64(&sg_table[0], pme_map(mem_result)); + sg_table[0].length = 28; + qm_sg_entry_set64(&sg_table[1], pme_map(mem)); + sg_table[1].length = sizeof(db_read); + sg_table[1].final = 1; + fd.format = qm_fd_compound; + qm_fd_addr_set64(&fd, pme_map(sg_table)); + ret = pme_ctx_pmtcc(&ctx.base_ctx, PME_CTX_OP_WAIT, &fd, &token); + if (ret) { + pr_err("sample_db: error with pmtcc\n"); + goto _finish_4; + } + wait_for_completion(&ctx.done); + if (ctx.ern) { + ret = -EINVAL; + pr_err("sample_db: Rx ERN from pmtcc\n"); + goto _finish_4; + } + status = pme_fd_res_status(&ctx.result_fd); + if (status) { + ret = -EINVAL; + pr_err("sample_db: PMTCC read status failed %d\n", status); + goto _finish_4; + } + if (pme_fd_res_flags(&ctx.result_fd) & PME_STATUS_UNRELIABLE) { + pr_err("sample_db: flags result set %x\n", + pme_fd_res_flags(&ctx.result_fd)); + ret = -EINVAL; + goto _finish_4; + } + if (memcmp(db_read_expected_result, mem_result, 28) != 0) { + pr_err("sample_db: DB read result not expected\n"); + pr_err("Expected\n"); + hexdump(db_read_expected_result, + sizeof(db_read_expected_result)); + pr_info("Received\n"); + hexdump(mem_result, 28); + ret = -EINVAL; + } +_finish_4: + kfree(mem_result); + kfree(sg_table); + kfree(mem); +_finish_3: + /* Disable */ + ret = pme_ctx_disable(&ctx.base_ctx, + PME_CTX_OP_WAIT | PME_CTX_OP_WAIT_INT, NULL); +_finish_2: + pme_ctx_finish(&ctx.base_ctx); +_finish_1: + if (ret) + set_cpus_allowed_ptr(current, &backup_mask); + else { + ret = set_cpus_allowed_ptr(current, &backup_mask); + if (ret) + pr_info("sample_db: can't restore cpumask"); + } + +_finish_0: + if (!ret) + pr_info("pme: sample DB initialised\n"); + else + pr_info("pme: Error during sample DB 0x%x\n", ret); + return ret; +} + --- linux-3.13.0.orig/drivers/staging/fsl_pme2/pme2_scan.c +++ linux-3.13.0/drivers/staging/fsl_pme2/pme2_scan.c @@ -0,0 +1,1111 @@ +/* Copyright 2009-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "pme2_private.h" +#include +#include +#include +#include + +#define WAIT_AND_INTERRUPTABLE (PME_CTX_OP_WAIT|PME_CTX_OP_WAIT_INT) +#define INPUT_FRM 1 +#define OUTPUT_FRM 0 +/* Private structure that is allocated for each open that is done on the + * pme_scan device. */ +struct scan_session { + /* The ctx that is needed to communicate with the pme high level */ + struct pme_ctx ctx; + /* Locks completed_commands */ + spinlock_t set_subset_lock; + __u8 set; + __u16 subset; + /* For asynchronous processing */ + wait_queue_head_t waiting_for_completion; + struct list_head completed_commands; + /* Locks completed_commands */ + spinlock_t completed_commands_lock; + u32 completed_count; +}; + +/* Command Token for scan operations. One of these is created for every + * operation on a context. When the context operation is complete cleanup + * is done */ +struct cmd_token { + /* pme high level token */ + struct pme_ctx_token hl_token; + /* The kernels copy of the user op structure */ + struct pme_scan_cmd kernel_op; + /* Set to non zero if this is a synchronous request */ + u8 synchronous; + /* data */ + struct qm_fd tx_fd; + struct qm_sg_entry tx_comp[2]; + struct qm_fd rx_fd; + void *tx_data; + size_t tx_size; + void *rx_data; + size_t rx_size; + /* For blocking requests, we need a wait point and condition */ + wait_queue_head_t *queue; + /* List management for completed async requests */ + struct list_head completed_list; + u8 done; + u8 ern; +}; + +struct ctrl_op { + struct pme_ctx_ctrl_token ctx_ctr; + struct completion cb_done; + enum pme_status cmd_status; + u8 res_flag; + u8 ern; +}; + +#ifdef CONFIG_COMPAT +static void compat_to_scan_cmd(struct pme_scan_cmd *dst, + struct compat_pme_scan_cmd *src) +{ + dst->flags = src->flags; + dst->opaque = compat_ptr(src->opaque); + dst->input.data = compat_ptr(src->input.data); + dst->input.size = src->input.size; + dst->output.data = compat_ptr(src->output.data); + dst->output.size = src->output.size; +} + +static void scan_result_to_compat(struct compat_pme_scan_result *dst, + struct pme_scan_result *src) +{ + dst->flags = src->flags; + dst->opaque = ptr_to_compat(src->opaque); + dst->status = src->status; + dst->output.data = ptr_to_compat(src->output.data); + dst->output.size = src->output.size; +} + +static void compat_to_scan_result(struct pme_scan_result *dst, + struct compat_pme_scan_result *src) +{ + dst->flags = src->flags; + dst->opaque = compat_ptr(src->opaque); + dst->status = src->status; + dst->output.data = compat_ptr(src->output.data); + dst->output.size = src->output.size; +} +#endif + +static void ctrl_cb(struct pme_ctx *ctx, const struct qm_fd *fd, + struct pme_ctx_ctrl_token *token) +{ + struct ctrl_op *ctrl = (struct ctrl_op *)token; + ctrl->cmd_status = pme_fd_res_status(fd); + ctrl->res_flag = pme_fd_res_flags(fd) & PME_STATUS_UNRELIABLE; + complete(&ctrl->cb_done); +} + +static void ctrl_ern_cb(struct pme_ctx *ctx, const struct qm_mr_entry *mr, + struct pme_ctx_ctrl_token *token) +{ + struct ctrl_op *ctrl = (struct ctrl_op *)token; + ctrl->ern = 1; + complete(&ctrl->cb_done); +} + +static inline int scan_data_empty(struct scan_session *session) +{ + return list_empty(&session->completed_commands); +} + +/* Cleanup for the execute_cmd method */ +static inline void cleanup_token(struct cmd_token *token_p) +{ + kfree(token_p->tx_data); + kfree(token_p->rx_data); + return; +} + +/* Callback for scan operations */ +static void scan_cb(struct pme_ctx *ctx, const struct qm_fd *fd, + struct pme_ctx_token *ctx_token) +{ + struct cmd_token *token = (struct cmd_token *)ctx_token; + struct scan_session *session = (struct scan_session *)ctx; + + token->rx_fd = *fd; + /* If this is a asynchronous command, queue the token */ + if (!token->synchronous) { + spin_lock(&session->completed_commands_lock); + list_add_tail(&token->completed_list, + &session->completed_commands); + session->completed_count++; + spin_unlock(&session->completed_commands_lock); + } + /* Wake up the thread that's waiting for us */ + token->done = 1; + wake_up(token->queue); + return; +} + +static void scan_ern_cb(struct pme_ctx *ctx, const struct qm_mr_entry *mr, + struct pme_ctx_token *ctx_token) +{ + struct cmd_token *token = (struct cmd_token *)ctx_token; + struct scan_session *session = (struct scan_session *)ctx; + + token->ern = 1; + token->rx_fd = mr->ern.fd; + /* If this is a asynchronous command, queue the token */ + if (!token->synchronous) { + spin_lock(&session->completed_commands_lock); + list_add_tail(&token->completed_list, + &session->completed_commands); + session->completed_count++; + spin_unlock(&session->completed_commands_lock); + } + /* Wake up the thread that's waiting for us */ + token->done = 1; + wake_up(token->queue); + return; +} + +static int process_completed_token(struct file *fp, struct cmd_token *token_p, + struct pme_scan_result *scan_result) +{ + int ret = 0; + u32 src_sz, dst_sz; + + memset(scan_result, 0, sizeof(struct pme_scan_result)); + if (token_p->ern) { + ret = -EIO; + goto done; + } + scan_result->output.data = token_p->kernel_op.output.data; + + if (token_p->rx_fd.format == qm_fd_compound) { + /* Need to copy output */ + src_sz = token_p->tx_comp[OUTPUT_FRM].length; + dst_sz = token_p->kernel_op.output.size; + scan_result->output.size = min(dst_sz, src_sz); + /* Doesn't make sense we generated more than available space + * should have got truncation. + */ + BUG_ON(dst_sz < src_sz); + if (copy_to_user(scan_result->output.data, token_p->rx_data, + scan_result->output.size)) { + pr_err("Error copying to user data\n"); + cleanup_token(token_p); + return -EFAULT; + } + } else if (token_p->rx_fd.format == qm_fd_sg_big) + scan_result->output.size = 0; + else + pr_err("pme2_scan: unexpected frame type received\n"); + + scan_result->flags |= pme_fd_res_flags(&token_p->rx_fd); + scan_result->status |= pme_fd_res_status(&token_p->rx_fd); +done: + scan_result->opaque = token_p->kernel_op.opaque; + cleanup_token(token_p); + return ret; +} + +static int getscan_cmd(struct file *fp, struct scan_session *session, + struct pme_scan_params __user *user_scan_params) +{ + int ret = 0; + struct pme_flow params; + struct pme_scan_params local_scan_params; + struct ctrl_op ctx_ctrl = { + .ctx_ctr.cb = ctrl_cb, + .ctx_ctr.ern_cb = ctrl_ern_cb, + .cmd_status = 0, + .res_flag = 0, + .ern = 0 + }; + init_completion(&ctx_ctrl.cb_done); + + memset(&local_scan_params, 0, sizeof(local_scan_params)); + + /* must be enabled */ + if (pme_ctx_is_disabled(&session->ctx)) { + pr_err("pme2_scan: ctx is disabled\n"); + ret = -EINVAL; + goto done; + } + ret = pme_ctx_ctrl_read_flow(&session->ctx, WAIT_AND_INTERRUPTABLE, + ¶ms, &ctx_ctrl.ctx_ctr); + if (ret) { + PMEPRINFO("read flow error %d\n", ret); + goto done; + } + wait_for_completion(&ctx_ctrl.cb_done); + + if (ctx_ctrl.ern || ctx_ctrl.cmd_status || ctx_ctrl.res_flag) { + PMEPRINFO("read flow error %d\n", ctx_ctrl.cmd_status); + ret = -EFAULT; + goto done; + } + local_scan_params.residue.enable = params.ren; + local_scan_params.residue.length = params.rlen; + local_scan_params.sre.sessionid = params.sessionid; + local_scan_params.sre.verbose = params.srvm; + local_scan_params.sre.esee = params.esee; + local_scan_params.dxe.clim = params.clim; + local_scan_params.dxe.mlim = params.mlim; + spin_lock(&session->set_subset_lock); + local_scan_params.pattern.set = session->set; + local_scan_params.pattern.subset = session->subset; + spin_unlock(&session->set_subset_lock); + + if (copy_to_user(user_scan_params, &local_scan_params, + sizeof(local_scan_params))) { + pr_err("Error copying to user data\n"); + ret = -EFAULT; + } +done: + return ret; +} + +static int setscan_cmd(struct file *fp, struct scan_session *session, + struct pme_scan_params __user *user_params) +{ + int ret = 0; + u32 flag = WAIT_AND_INTERRUPTABLE; + struct ctrl_op ctx_ctrl = { + .ctx_ctr.cb = ctrl_cb, + .ctx_ctr.ern_cb = ctrl_ern_cb, + .cmd_status = 0, + .res_flag = 0, + .ern = 0 + }; + struct pme_flow params; + struct pme_scan_params local_params; + + pme_sw_flow_init(¶ms); + init_completion(&ctx_ctrl.cb_done); + if (copy_from_user(&local_params, user_params, sizeof(local_params))) + return -EFAULT; + + /* must be enabled */ + if (pme_ctx_is_disabled(&session->ctx)) { + ret = -EINVAL; + goto done; + } + /* Only send a flw_ctx_w if PME_SCAN_PARAMS_{RESIDUE, SRE or DXE} + * is being done */ + if (local_params.flags == PME_SCAN_PARAMS_PATTERN) + goto set_subset; + if (local_params.flags & PME_SCAN_PARAMS_RESIDUE) + flag |= PME_CMD_FCW_RES; + if (local_params.flags & PME_SCAN_PARAMS_SRE) + flag |= PME_CMD_FCW_SRE; + if (local_params.flags & PME_SCAN_PARAMS_DXE) + flag |= PME_CMD_FCW_DXE; + params.ren = local_params.residue.enable; + params.sessionid = local_params.sre.sessionid; + params.srvm = local_params.sre.verbose; + params.esee = local_params.sre.esee; + params.clim = local_params.dxe.clim; + params.mlim = local_params.dxe.mlim; + + ret = pme_ctx_ctrl_update_flow(&session->ctx, flag, ¶ms, + &ctx_ctrl.ctx_ctr); + if (ret) { + PMEPRINFO("update flow error %d\n", ret); + goto done; + } + wait_for_completion(&ctx_ctrl.cb_done); + if (ctx_ctrl.ern || ctx_ctrl.cmd_status || ctx_ctrl.res_flag) { + PMEPRINFO("update flow err %d\n", ctx_ctrl.cmd_status); + ret = -EFAULT; + goto done; + } + +set_subset: + if (local_params.flags & PME_SCAN_PARAMS_PATTERN) { + spin_lock(&session->set_subset_lock); + session->set = local_params.pattern.set; + session->subset = local_params.pattern.subset; + spin_unlock(&session->set_subset_lock); + goto done; + } +done: + return ret; +} + +static int resetseq_cmd(struct file *fp, struct scan_session *session) +{ + int ret = 0; + struct pme_flow params; + struct ctrl_op ctx_ctrl = { + .ctx_ctr.cb = ctrl_cb, + .ctx_ctr.ern_cb = ctrl_ern_cb, + .cmd_status = 0, + .res_flag = 0, + .ern = 0 + }; + init_completion(&ctx_ctrl.cb_done); + pme_sw_flow_init(¶ms); + + /* must be enabled */ + if (pme_ctx_is_disabled(&session->ctx)) { + pr_err("pme2_scan: ctx is disabled\n"); + ret = -EINVAL; + goto done; + } + pme_flow_seqnum_set64(¶ms, 0); + params.sos = 1; + + ret = pme_ctx_ctrl_update_flow(&session->ctx, PME_CMD_FCW_SEQ, ¶ms, + &ctx_ctrl.ctx_ctr); + if (ret) { + pr_err("pme2_scan: update flow error %d\n", ret); + return ret; + } + wait_for_completion(&ctx_ctrl.cb_done); + if (ctx_ctrl.ern || ctx_ctrl.cmd_status || ctx_ctrl.res_flag) { + PMEPRINFO("update flow err %d\n", ctx_ctrl.cmd_status); + ret = -EFAULT; + } +done: + return ret; +} + +static int resetresidue_cmd(struct file *fp, struct scan_session *session) +{ + int ret = 0; + struct pme_flow params; + struct ctrl_op ctx_ctrl = { + .ctx_ctr.cb = ctrl_cb, + .ctx_ctr.ern_cb = ctrl_ern_cb, + .cmd_status = 0, + .res_flag = 0, + .ern = 0 + }; + + init_completion(&ctx_ctrl.cb_done); + pme_sw_flow_init(¶ms); + /* must be enabled */ + if (pme_ctx_is_disabled(&session->ctx)) { + pr_err("pme2_scan: ctx is disabled\n"); + ret = -EINVAL; + goto done; + } + params.rlen = 0; + ret = pme_ctx_ctrl_update_flow(&session->ctx, + WAIT_AND_INTERRUPTABLE | PME_CTX_OP_RESETRESLEN, + ¶ms, &ctx_ctrl.ctx_ctr); + if (ret) + pr_info("pme2_scan: update flow error %d\n", ret); + wait_for_completion(&ctx_ctrl.cb_done); + if (ctx_ctrl.ern || ctx_ctrl.cmd_status || ctx_ctrl.res_flag) { + PMEPRINFO("update flow err %d\n", ctx_ctrl.cmd_status); + ret = -EFAULT; + } +done: + return ret; +} + +static int process_scan_cmd( + struct file *fp, + struct scan_session *session, + struct pme_scan_cmd *user_cmd, + struct pme_scan_result *user_ret, + u8 synchronous) +{ + int ret = 0; + struct cmd_token local_token; + struct cmd_token *token_p = NULL; + DECLARE_WAIT_QUEUE_HEAD(local_waitqueue); + u8 scan_flags = 0; + + BUG_ON(synchronous && !user_ret); + + /* If synchronous, use a local token (from the stack) + * If asynchronous, allocate a token to use */ + if (synchronous) + token_p = &local_token; + else { + token_p = kmalloc(sizeof(*token_p), GFP_KERNEL); + if (!token_p) + return -ENOMEM; + } + memset(token_p, 0, sizeof(*token_p)); + /* Copy the command to kernel space */ + memcpy(&token_p->kernel_op, user_cmd, sizeof(struct pme_scan_cmd)); + /* Copy the input */ + token_p->synchronous = synchronous; + token_p->tx_size = token_p->kernel_op.input.size; + token_p->tx_data = kmalloc(token_p->kernel_op.input.size, GFP_KERNEL); + if (!token_p->tx_data) { + pr_err("pme2_scan: Err alloc %zd byte", token_p->tx_size); + cleanup_token(token_p); + return -ENOMEM; + } + if (copy_from_user(token_p->tx_data, + token_p->kernel_op.input.data, + token_p->kernel_op.input.size)) { + pr_err("Error copying contigous user data\n"); + cleanup_token(token_p); + return -EFAULT; + } + /* Setup input frame */ + token_p->tx_comp[INPUT_FRM].final = 1; + token_p->tx_comp[INPUT_FRM].length = token_p->tx_size; + qm_sg_entry_set64(&token_p->tx_comp[INPUT_FRM], + pme_map(token_p->tx_data)); + /* setup output frame, if output is expected */ + if (token_p->kernel_op.output.size) { + token_p->rx_size = token_p->kernel_op.output.size; + PMEPRINFO("pme2_scan: expect output %d\n", token_p->rx_size); + token_p->rx_data = kmalloc(token_p->rx_size, GFP_KERNEL); + if (!token_p->rx_data) { + pr_err("pme2_scan: Err alloc %zd byte", + token_p->rx_size); + cleanup_token(token_p); + return -ENOMEM; + } + /* Setup output frame */ + token_p->tx_comp[OUTPUT_FRM].length = token_p->rx_size; + qm_sg_entry_set64(&token_p->tx_comp[OUTPUT_FRM], + pme_map(token_p->rx_data)); + token_p->tx_fd.format = qm_fd_compound; + /* Build compound frame */ + qm_fd_addr_set64(&token_p->tx_fd, + pme_map(token_p->tx_comp)); + } else { + token_p->tx_fd.format = qm_fd_sg_big; + /* Build sg frame */ + qm_fd_addr_set64(&token_p->tx_fd, + pme_map(&token_p->tx_comp[INPUT_FRM])); + token_p->tx_fd.length29 = token_p->tx_size; + } + + /* use the local wait queue if synchronous, the shared + * queue if asynchronous */ + if (synchronous) + token_p->queue = &local_waitqueue; + else + token_p->queue = &session->waiting_for_completion; + token_p->done = 0; + + if (token_p->kernel_op.flags & PME_SCAN_CMD_STARTRESET) + scan_flags |= PME_CMD_SCAN_SR; + if (token_p->kernel_op.flags & PME_SCAN_CMD_END) + scan_flags |= PME_CMD_SCAN_E; + ret = pme_ctx_scan(&session->ctx, WAIT_AND_INTERRUPTABLE, + &token_p->tx_fd, + PME_SCAN_ARGS(scan_flags, session->set, session->subset), + &token_p->hl_token); + if (unlikely(ret)) { + cleanup_token(token_p); + return ret; + } + + if (!synchronous) + /* Don't wait. The command is away */ + return 0; + + PMEPRINFO("Wait for completion\n"); + /* Wait for the command to complete */ + /* TODO: Should this be wait_event_interruptible ? + * If so, will need logic to indicate */ + wait_event(*token_p->queue, token_p->done == 1); + return process_completed_token(fp, token_p, user_ret); +} + +/** + * fsl_pme2_scan_open - open the driver + * + * Open the driver and prepare for requests. + * + * Every time an application opens the driver, we create a scan_session object + * for that file handle. + */ +static int fsl_pme2_scan_open(struct inode *node, struct file *fp) +{ + int ret; + struct scan_session *session; + struct pme_flow flow; + struct ctrl_op ctx_ctrl = { + .ctx_ctr.cb = ctrl_cb, + .ctx_ctr.ern_cb = ctrl_ern_cb, + .cmd_status = 0, + .res_flag = 0, + .ern = 0 + }; + + pme_sw_flow_init(&flow); + init_completion(&ctx_ctrl.cb_done); + PMEPRINFO("pme2_scan: open %d\n", smp_processor_id()); + fp->private_data = kzalloc(sizeof(*session), GFP_KERNEL); + if (!fp->private_data) + return -ENOMEM; + session = (struct scan_session *)fp->private_data; + /* Set up the structures used for asynchronous requests */ + init_waitqueue_head(&session->waiting_for_completion); + INIT_LIST_HEAD(&session->completed_commands); + spin_lock_init(&session->completed_commands_lock); + spin_lock_init(&session->set_subset_lock); + PMEPRINFO("kmalloc session %p\n", fp->private_data); + session = fp->private_data; + session->ctx.cb = scan_cb; + session->ctx.ern_cb = scan_ern_cb; + + /* qosin, qosout should be driver attributes */ + ret = pme_ctx_init(&session->ctx, PME_CTX_FLAG_LOCAL, 0, 4, 4, 0, NULL); + if (ret) { + pr_err("pme2_scan: pme_ctx_init %d\n", ret); + goto exit; + } + /* enable the context */ + ret = pme_ctx_enable(&session->ctx); + if (ret) { + PMEPRINFO("error enabling ctx %d\n", ret); + pme_ctx_finish(&session->ctx); + goto exit; + } + /* Update flow to set sane defaults in the flow context */ + ret = pme_ctx_ctrl_update_flow(&session->ctx, + PME_CTX_OP_WAIT | PME_CMD_FCW_ALL, &flow, &ctx_ctrl.ctx_ctr); + if (!ret) { + wait_for_completion(&ctx_ctrl.cb_done); + if (ctx_ctrl.ern || ctx_ctrl.cmd_status || ctx_ctrl.res_flag) + ret = -EFAULT; + } + if (ret) { + int my_ret; + PMEPRINFO("error updating flow ctx %d\n", ret); + my_ret = pme_ctx_disable(&session->ctx, PME_CTX_OP_WAIT, + &ctx_ctrl.ctx_ctr); + if (my_ret > 0) + wait_for_completion(&ctx_ctrl.cb_done); + else if (my_ret < 0) + PMEPRINFO("error disabling ctx %d\n", ret); + pme_ctx_finish(&session->ctx); + goto exit; + } + /* Set up the structures used for asynchronous requests */ + PMEPRINFO("pme2_scan: Finish pme_scan open %d\n", smp_processor_id()); + return 0; +exit: + kfree(fp->private_data); + fp->private_data = NULL; + return ret; +} + +static int fsl_pme2_scan_close(struct inode *node, struct file *fp) +{ + struct ctrl_op ctx_ctrl = { + .ctx_ctr.cb = ctrl_cb, + .ctx_ctr.ern_cb = ctrl_ern_cb, + .cmd_status = 0, + .res_flag = 0, + .ern = 0 + }; + int ret = 0; + struct scan_session *session = fp->private_data; + + init_completion(&ctx_ctrl.cb_done); + /* Before disabling check to see if it's already disabled. This can + * happen if a pme serious error has occurred for instance.*/ + if (!pme_ctx_is_disabled(&session->ctx)) { + ret = pme_ctx_disable(&session->ctx, PME_CTX_OP_WAIT, + &ctx_ctrl.ctx_ctr); + if (ret > 0) { + wait_for_completion(&ctx_ctrl.cb_done); + if (ctx_ctrl.ern) + PMEPRCRIT("Unexpected ERN\n"); + } else if (ret < 0) { + pr_err("pme2_scan: Error disabling ctx %d\n", ret); + return ret; + } + } + pme_ctx_finish(&session->ctx); + kfree(session); + PMEPRINFO("pme2_scan: Finish pme_session close\n"); + return 0; +} + +static unsigned int fsl_pme2_scan_poll(struct file *fp, + struct poll_table_struct *wait) +{ + struct scan_session *session; + unsigned int mask = POLLOUT | POLLWRNORM; + + if (!fp->private_data) + return -EINVAL; + + session = (struct scan_session *)fp->private_data; + + poll_wait(fp, &session->waiting_for_completion, wait); + + if (!scan_data_empty(session)) + mask |= (POLLIN | POLLRDNORM); + return mask; +} + + +/* Main switch loop for ioctl operations */ +static long fsl_pme2_scan_ioctl(struct file *fp, unsigned int cmd, + unsigned long arg) +{ + struct scan_session *session = fp->private_data; + int ret = 0; + + switch (cmd) { + + case PMEIO_GETSCAN: + return getscan_cmd(fp, session, (struct pme_scan_params *)arg); + break; + + case PMEIO_SETSCAN: + return setscan_cmd(fp, session, (struct pme_scan_params *)arg); + break; + + case PMEIO_RESETSEQ: + return resetseq_cmd(fp, session); + break; + + case PMEIO_RESETRES: + return resetresidue_cmd(fp, session); + break; + + case PMEIO_SCAN: + { + int ret; + struct pme_scan scan; + + if (copy_from_user(&scan, (void __user *)arg, sizeof(scan))) + return -EFAULT; + ret = process_scan_cmd(fp, session, &scan.cmd, &scan.result, 1); + if (!ret) { + struct pme_scan_result __user *user_result = + &((struct pme_scan __user *)arg)->result; + ret = copy_to_user(user_result, &scan.result, + sizeof(*user_result)); + } + return ret; + } + break; + + case PMEIO_SCAN_W1: + { + struct pme_scan_cmd scan_cmd; + + if (copy_from_user(&scan_cmd, (void __user *)arg, + sizeof(scan_cmd))) + return -EFAULT; + return process_scan_cmd(fp, session, &scan_cmd, NULL, 0); + } + break; + + case PMEIO_SCAN_R1: + { + struct pme_scan_result result; + struct cmd_token *completed_cmd = NULL; + struct pme_scan_result __user *ur = + (struct pme_scan_result __user *)arg; + int ret; + + if (copy_from_user(&result, (void __user *)arg, + sizeof(result))) + return -EFAULT; + + /* Check to see if any results */ + spin_lock(&session->completed_commands_lock); + if (!list_empty(&session->completed_commands)) { + completed_cmd = list_first_entry( + &session->completed_commands, + struct cmd_token, + completed_list); + list_del(&completed_cmd->completed_list); + session->completed_count--; + } + spin_unlock(&session->completed_commands_lock); + if (completed_cmd) { + ret = process_completed_token(fp, completed_cmd, + &result); + if (!ret) + ret = copy_to_user(ur, &result, sizeof(result)); + return ret; + } else + return -EIO; + } + break; + + case PMEIO_SCAN_Wn: + { + struct pme_scan_cmds scan_cmds; + int i, ret = 0; + + /* Copy the command to kernel space */ + if (copy_from_user(&scan_cmds, (void __user *)arg, + sizeof(scan_cmds))) + return -EFAULT; + PMEPRINFO("Received Wn for %d cmds\n", scan_cmds.num); + for (i = 0; i < scan_cmds.num; i++) { + struct pme_scan_cmd scan_cmd; + + if (copy_from_user(&scan_cmd, &scan_cmds.cmds[i], + sizeof(scan_cmd))) { + pr_err("pme2_scan: Err with %d\n", i); + scan_cmds.num = i; + if (copy_to_user((void __user *)arg, &scan_cmds, + sizeof(scan_cmds))) { + return -EFAULT; + } + return -EFAULT; + } + ret = process_scan_cmd(fp, session, &scan_cmd, NULL, 0); + if (ret) { + pr_err("pme2_scan: Err with %d cmd %d\n", + i, ret); + scan_cmds.num = i; + if (copy_to_user((void *)arg, &scan_cmds, + sizeof(scan_cmds))) { + pr_err("Error copying to user data\n"); + return -EFAULT; + } + return -EINTR; + } + } + return ret; + } + break; + + case PMEIO_SCAN_Rn: + { + struct pme_scan_results results; + struct pme_scan_result result; + struct pme_scan_result __user *ur; + int i = 0, ret = 0; + struct cmd_token *completed_cmd = NULL; + + /* Copy the command to kernel space */ + if (copy_from_user(&results, (void __user *)arg, + sizeof(results))) + return -EFAULT; + ur = ((struct pme_scan_results __user *)arg)->results + PMEPRINFO("pme2_scan: Received Rn for %d res\n", results.num); + if (!results.num) + return 0; + do { + completed_cmd = NULL; + ret = 0; + /* Check to see if any results */ + spin_lock(&session->completed_commands_lock); + if (!list_empty(&session->completed_commands)) { + /* Move to a different list */ + PMEPRINFO("pme2_scan: Pop response\n"); + completed_cmd = list_first_entry( + &session->completed_commands, + struct cmd_token, + completed_list); + list_del(&completed_cmd->completed_list); + session->completed_count--; + } + spin_unlock(&session->completed_commands_lock); + if (completed_cmd) { + if (copy_from_user(&result, (void __user *)ur+i, + sizeof(result))) + return -EFAULT; + ret = process_completed_token(fp, completed_cmd, + &result); + if (!ret) + ret = copy_to_user(ur, &result, + sizeof(struct pme_scan_result)); + if (!ret) { + i++; + ur++; + } + } + } while (!ret && completed_cmd && (i != results.num)); + + if (i != results.num) { + PMEPRINFO("pme2_scan: Only filled %d responses\n", i); + results.num = i; + PMEPRINFO("pme2_scan: results.num = %d\n", results.num); + if (copy_to_user((void __user *)arg, &results, + sizeof(struct pme_scan_results))) { + pr_err("Error copying to user data\n"); + return -EFAULT; + } + } + return ret; + } + break; + + case PMEIO_RELEASE_BUFS: + return -EINVAL; + break; + +#ifdef CONFIG_COMPAT + case PMEIO_SCAN32: + { + int ret; + struct compat_pme_scan scan32; + struct compat_pme_scan __user *user_scan = compat_ptr(arg); + struct pme_scan scan; + + if (copy_from_user(&scan32, user_scan, sizeof(scan32))) + return -EFAULT; + /* Convert to 64-bit structs */ + compat_to_scan_cmd(&scan.cmd, &scan32.cmd); + compat_to_scan_result(&scan.result, &scan32.result); + + ret = process_scan_cmd(fp, session, &scan.cmd, &scan.result, 1); + if (!ret) { + struct compat_pme_scan_result __user *user_result = + &user_scan->result; + /* Convert to 32-bit struct */ + scan_result_to_compat(&scan32.result, &scan.result); + ret = copy_to_user(user_result, &scan32.result, + sizeof(*user_result)); + } + return ret; + } + break; + + case PMEIO_SCAN_W132: + { + struct compat_pme_scan_cmd scan_cmd32; + struct pme_scan_cmd scan_cmd; + + if (copy_from_user(&scan_cmd32, compat_ptr(arg), + sizeof(scan_cmd32))) + return -EFAULT; + /* Convert to 64-bit struct */ + compat_to_scan_cmd(&scan_cmd, &scan_cmd32); + return process_scan_cmd(fp, session, &scan_cmd, NULL, 0); + } + break; + + case PMEIO_SCAN_R132: + { + struct compat_pme_scan_result result32; + struct pme_scan_result result; + struct cmd_token *completed_cmd = NULL; + struct compat_pme_scan_result __user *ur = compat_ptr(arg); + int ret; + + if (copy_from_user(&result32, (void __user *)arg, + sizeof(result32))) + return -EFAULT; + /* copy to 64-bit structure */ + compat_to_scan_result(&result, &result32); + + /* Check to see if any results */ + spin_lock(&session->completed_commands_lock); + if (!list_empty(&session->completed_commands)) { + completed_cmd = list_first_entry( + &session->completed_commands, + struct cmd_token, + completed_list); + list_del(&completed_cmd->completed_list); + session->completed_count--; + } + spin_unlock(&session->completed_commands_lock); + if (completed_cmd) { + ret = process_completed_token(fp, completed_cmd, + &result); + scan_result_to_compat(&result32, &result); + ret = copy_to_user(ur, &result32, sizeof(result32)); + } else + return -EIO; + } + break; + + case PMEIO_SCAN_Wn32: + { + struct compat_pme_scan_cmds scan_cmds32; + int i, ret = 0; + + /* Copy the command to kernel space */ + if (copy_from_user(&scan_cmds32, compat_ptr(arg), + sizeof(scan_cmds32))) + return -EFAULT; + PMEPRINFO("Received Wn for %d cmds\n", scan_cmds32.num); + for (i = 0; i < scan_cmds32.num; i++) { + struct pme_scan_cmd scan_cmd; + struct compat_pme_scan_cmd __user *u_scan_cmd32; + struct compat_pme_scan_cmd scan_cmd32; + + u_scan_cmd32 = compat_ptr(scan_cmds32.cmds); + u_scan_cmd32 += i; + + if (copy_from_user(&scan_cmd32, u_scan_cmd32, + sizeof(scan_cmd32))) { + pr_err("pme2_scan: Err with %d\n", i); + scan_cmds32.num = i; + if (copy_to_user(compat_ptr(arg), &scan_cmds32, + sizeof(scan_cmds32))) + return -EFAULT; + return -EFAULT; + } + compat_to_scan_cmd(&scan_cmd, &scan_cmd32); + ret = process_scan_cmd(fp, session, &scan_cmd, NULL, 0); + if (ret) { + pr_err("pme2_scan: Err with %d cmd %d\n", + i, ret); + scan_cmds32.num = i; + if (copy_to_user(compat_ptr(arg), &scan_cmds32, + sizeof(scan_cmds32))) + return -EFAULT; + return -EINTR; + } + } + return ret; + } + break; + + case PMEIO_SCAN_Rn32: + { + struct compat_pme_scan_results results32; + int i = 0, ret = 0; + struct cmd_token *completed_cmd = NULL; + struct compat_pme_scan_result __user *ur; + + /* Copy the command to kernel space */ + if (copy_from_user(&results32, compat_ptr(arg), + sizeof(results32))) + return -EFAULT; + ur = compat_ptr(results32.results); + PMEPRINFO("pme2_scan: Rx Rn for %d res\n", results32.num); + if (!results32.num) + return 0; + do { + completed_cmd = NULL; + ret = 0; + /* Check to see if any results */ + spin_lock(&session->completed_commands_lock); + if (!list_empty(&session->completed_commands)) { + /* Move to a different list */ + PMEPRINFO("pme2_scan: Pop response\n"); + completed_cmd = list_first_entry( + &session->completed_commands, + struct cmd_token, + completed_list); + list_del(&completed_cmd->completed_list); + session->completed_count--; + } + spin_unlock(&session->completed_commands_lock); + if (completed_cmd) { + struct compat_pme_scan_result l_result32; + struct pme_scan_result result; + + if (copy_from_user(&l_result32, ur+i, + sizeof(l_result32))) + return -EFAULT; + compat_to_scan_result(&result, &l_result32); + ret = process_completed_token(fp, completed_cmd, + &result); + scan_result_to_compat(&l_result32, &result); + ret = copy_to_user(ur+i, &l_result32, + sizeof(l_result32)); + if (!ret) + i++; + } + } while (!ret && completed_cmd && (i != results32.num)); + + if (i != results32.num) { + PMEPRINFO("pme2_scan: Only filled %d responses\n", i); + results32.num = i; + PMEPRINFO("pme2_scan: results32.num = %d\n", + results32.num); + if (copy_to_user(compat_ptr(arg), &results32, + sizeof(struct pme_scan_results))) { + pr_err("Error copying to user data\n"); + return -EFAULT; + } + } + return ret; + } + break; +#endif /* CONFIG_COMPAT */ + + default: + pr_err("UNKNOWN IOCTL cmd 0x%x\n", cmd); + return -EINVAL; + break; + } + + return ret; +} + +static const struct file_operations fsl_pme2_scan_fops = { + .owner = THIS_MODULE, + .open = fsl_pme2_scan_open, + .release = fsl_pme2_scan_close, + .poll = fsl_pme2_scan_poll, + .unlocked_ioctl = fsl_pme2_scan_ioctl, +#ifdef CONFIG_COMPAT + .compat_ioctl = fsl_pme2_scan_ioctl, +#endif +}; + +static struct miscdevice fsl_pme2_scan_dev = { + .minor = MISC_DYNAMIC_MINOR, + .name = PME_DEV_SCAN_NODE, + .fops = &fsl_pme2_scan_fops +}; + +static int __init fsl_pme2_scan_init(void) +{ + int err = 0; + + pr_info("Freescale pme2 scan driver\n"); + err = misc_register(&fsl_pme2_scan_dev); + if (err) { + pr_err("fsl-pme2-scan: cannot register device\n"); + return err; + } + pr_info("fsl-pme2-scan: device %s registered\n", + fsl_pme2_scan_dev.name); + return 0; +} + +static void __exit fsl_pme2_scan_exit(void) +{ + int err = misc_deregister(&fsl_pme2_scan_dev); + if (err) + pr_err("fsl-pme2-scan: Failed to deregister device %s, " + "code %d\n", fsl_pme2_scan_dev.name, err); + pr_info("fsl-pme2-scan: device %s deregistered\n", + fsl_pme2_scan_dev.name); +} + +module_init(fsl_pme2_scan_init); +module_exit(fsl_pme2_scan_exit); + +MODULE_AUTHOR("Jeffrey Ladouceur "); +MODULE_LICENSE("Dual BSD/GPL"); +MODULE_DESCRIPTION("Freescale PME2 scan driver"); --- linux-3.13.0.orig/drivers/staging/fsl_pme2/pme2_sys.h +++ linux-3.13.0/drivers/staging/fsl_pme2/pme2_sys.h @@ -0,0 +1,64 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +int pme2_create_sysfs_dev_files(struct platform_device *ofdev); +void pme2_remove_sysfs_dev_files(struct platform_device *ofdev); +void accumulator_update_interval(u32 interval); + --- linux-3.13.0.orig/drivers/staging/fsl_pme2/pme2_sysfs.c +++ linux-3.13.0/drivers/staging/fsl_pme2/pme2_sysfs.c @@ -0,0 +1,565 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +#include "pme2_regs.h" +#include "pme2_private.h" + +#define MAX_ACCUMULATOR_INTERVAL 10000 +extern u32 pme_stat_interval; + +/* The pme sysfs contains the following types of attributes + * 1) root level: general pme confuration + * 2) bsc: bufferpool size configuration + * 3) stats: pme statistics + */ +static ssize_t pme_store(struct device *dev, struct device_attribute *dev_attr, + const char *buf, size_t count, enum pme_attr attr) +{ + unsigned long val; + size_t ret; + if (strict_strtoul(buf, 0, &val)) { + dev_dbg(dev, "invalid input %s\n",buf); + return -EINVAL; + } + ret = pme_attr_set(attr, val); + if (ret) { + dev_err(dev, "attr_set err attr=%u, val=%lu\n", attr, val); + return ret; + } + return count; +} + +static ssize_t pme_show(struct device *dev, struct device_attribute *dev_attr, + char *buf, enum pme_attr attr, const char *fmt) +{ + u32 data; + int ret; + + ret = pme_attr_get(attr, &data); + if (!ret) + return snprintf(buf, PAGE_SIZE, fmt, data); + return ret; +} + + +static ssize_t pme_stat_show(struct device *dev, + struct device_attribute *dev_attr, char *buf, enum pme_attr attr) +{ + u64 data = 0; + int ret = 0; + + ret = pme_stat_get(attr, &data, 0); + if (!ret) + return snprintf(buf, PAGE_SIZE, "%llu\n", data); + else + return ret; +} + +static ssize_t pme_stat_store(struct device *dev, + struct device_attribute *dev_attr, const char *buf, + size_t count, enum pme_attr attr) +{ + unsigned long val; + u64 data = 0; + size_t ret = 0; + if (strict_strtoul(buf, 0, &val)) { + pr_err("pme: invalid input %s\n", buf); + return -EINVAL; + } + if (val) { + pr_err("pme: invalid input %s\n", buf); + return -EINVAL; + } + ret = pme_stat_get(attr, &data, 1); + return count; +} + + +#define PME_SYSFS_ATTR(pme_attr, perm, showhex) \ +static ssize_t pme_store_##pme_attr(struct device *dev, \ + struct device_attribute *attr, const char *buf, size_t count) \ +{ \ + return pme_store(dev, attr, buf, count, pme_attr_##pme_attr);\ +} \ +static ssize_t pme_show_##pme_attr(struct device *dev, \ + struct device_attribute *attr, char *buf) \ +{ \ + return pme_show(dev, attr, buf, pme_attr_##pme_attr, showhex);\ +} \ +static DEVICE_ATTR( pme_attr, perm, pme_show_##pme_attr, pme_store_##pme_attr); + + +#define PME_SYSFS_STAT_ATTR(pme_attr, perm) \ +static ssize_t pme_store_##pme_attr(struct device *dev, \ + struct device_attribute *attr, const char *buf, size_t count) \ +{ \ + return pme_stat_store(dev, attr, buf, count, pme_attr_##pme_attr);\ +} \ +static ssize_t pme_show_##pme_attr(struct device *dev, \ + struct device_attribute *attr, char *buf) \ +{ \ + return pme_stat_show(dev, attr, buf, pme_attr_##pme_attr);\ +} \ +static DEVICE_ATTR(pme_attr, perm, pme_show_##pme_attr, pme_store_##pme_attr); + + +#define PME_SYSFS_BSC_ATTR(bsc_id, perm, showhex) \ +static ssize_t pme_store_bsc_##bsc_id(struct device *dev,\ + struct device_attribute *attr, const char *buf, size_t count) \ +{ \ + return pme_store(dev, attr, buf, count, pme_attr_bsc(bsc_id));\ +} \ +static ssize_t pme_show_bsc_##bsc_id(struct device *dev,\ + struct device_attribute *attr, char *buf) \ +{ \ + return pme_show(dev, attr, buf, pme_attr_bsc(bsc_id), showhex);\ +} \ +static DEVICE_ATTR(bsc_id, perm, pme_show_bsc_##bsc_id, \ + pme_store_bsc_##bsc_id); + +/* Statistics Ctrl: update interval */ +static ssize_t pme_store_update_interval(struct device *dev, + struct device_attribute *attr, const char *buf, size_t count) +{ + unsigned long val; + + if (!pme2_have_control()) { + PMEPRERR("not on ctrl-plane\n"); + return -ENODEV; + } + if (strict_strtoul(buf, 0, &val)) { + dev_info(dev, "invalid input %s\n", buf); + return -EINVAL; + } + if (val > MAX_ACCUMULATOR_INTERVAL) { + dev_info(dev, "invalid input %s\n", buf); + return -ERANGE; + } + accumulator_update_interval(val); + return count; +} +static ssize_t pme_show_update_interval(struct device *dev, + struct device_attribute *attr, char *buf) +{ + if (!pme2_have_control()) + return -ENODEV; + return snprintf(buf, PAGE_SIZE, "%u\n", pme_stat_interval); +} + +#define FMT_0HEX "0x%08x\n" +#define FMT_HEX "0x%x\n" +#define FMT_DEC "%u\n" +#define PRIV_RO S_IRUSR +#define PRIV_RW (S_IRUSR | S_IWUSR) + +/* Register Interfaces */ +/* read-write; */ +PME_SYSFS_ATTR(efqc_int, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(sw_db, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(dmcr, PRIV_RW, FMT_0HEX); +PME_SYSFS_ATTR(smcr, PRIV_RW, FMT_0HEX); +PME_SYSFS_ATTR(famcr, PRIV_RW, FMT_0HEX); +PME_SYSFS_ATTR(kvlts, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(max_chain_length, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(pattern_range_counter_idx, PRIV_RW, FMT_0HEX); +PME_SYSFS_ATTR(pattern_range_counter_mask, PRIV_RW, FMT_0HEX); +PME_SYSFS_ATTR(max_allowed_test_line_per_pattern, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(max_pattern_matches_per_sui, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(max_pattern_evaluations_per_sui, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(report_length_limit, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(end_of_simple_sui_report, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(aim, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(end_of_sui_reaction_ptr, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(sre_pscl, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(sre_max_block_num, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(sre_max_instruction_limit, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(esr, PRIV_RW, FMT_0HEX); +PME_SYSFS_ATTR(pehd, PRIV_RW, FMT_0HEX); +PME_SYSFS_ATTR(ecc1bes, PRIV_RW, FMT_0HEX); +PME_SYSFS_ATTR(ecc2bes, PRIV_RW, FMT_0HEX); +PME_SYSFS_ATTR(miace, PRIV_RW, FMT_0HEX); +PME_SYSFS_ATTR(miacr, PRIV_RW, FMT_0HEX); +PME_SYSFS_ATTR(cdcr, PRIV_RW, FMT_0HEX); +PME_SYSFS_ATTR(pmtr, PRIV_RW, FMT_DEC); + +/* read-only; */ +PME_SYSFS_ATTR(max_pdsr_index, PRIV_RO, FMT_DEC); +PME_SYSFS_ATTR(sre_context_size, PRIV_RO, FMT_DEC); +PME_SYSFS_ATTR(sre_rule_num, PRIV_RO, FMT_DEC); +PME_SYSFS_ATTR(sre_session_ctx_num, PRIV_RO, FMT_DEC); +PME_SYSFS_ATTR(sre_max_index_size, PRIV_RO, FMT_DEC); +PME_SYSFS_ATTR(sre_max_offset_ctrl, PRIV_RO, FMT_DEC); +PME_SYSFS_ATTR(src_id, PRIV_RO, FMT_DEC); +PME_SYSFS_ATTR(liodnr, PRIV_RO, FMT_DEC); +PME_SYSFS_ATTR(rev1, PRIV_RO, FMT_0HEX); +PME_SYSFS_ATTR(rev2, PRIV_RO, FMT_0HEX); +PME_SYSFS_ATTR(isr, PRIV_RO, FMT_0HEX); +PME_SYSFS_ATTR(ecr0, PRIV_RO, FMT_0HEX); +PME_SYSFS_ATTR(ecr1, PRIV_RO, FMT_0HEX); +PME_SYSFS_ATTR(pmstat, PRIV_RO, FMT_0HEX); +PME_SYSFS_ATTR(eccaddr, PRIV_RO, FMT_0HEX); +PME_SYSFS_ATTR(ecccode, PRIV_RO, FMT_0HEX); +PME_SYSFS_ATTR(faconf, PRIV_RO, FMT_0HEX); +PME_SYSFS_ATTR(pdsrbah, PRIV_RO, FMT_0HEX); +PME_SYSFS_ATTR(pdsrbal, PRIV_RO, FMT_0HEX); +PME_SYSFS_ATTR(scbarh, PRIV_RO, FMT_0HEX); +PME_SYSFS_ATTR(scbarl, PRIV_RO, FMT_0HEX); + + +/* Buffer Pool Size Configuration */ +PME_SYSFS_BSC_ATTR(0, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(1, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(2, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(3, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(4, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(5, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(6, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(7, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(8, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(9, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(10, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(11, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(12, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(13, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(14, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(15, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(16, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(17, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(18, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(19, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(20, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(21, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(22, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(23, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(24, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(25, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(26, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(27, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(28, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(29, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(30, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(31, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(32, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(33, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(34, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(35, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(36, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(37, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(38, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(39, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(40, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(41, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(42, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(43, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(44, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(45, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(46, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(47, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(48, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(49, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(50, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(51, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(52, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(53, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(54, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(55, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(56, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(57, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(58, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(59, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(60, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(61, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(62, PRIV_RW, FMT_DEC); +PME_SYSFS_BSC_ATTR(63, PRIV_RW, FMT_DEC); + +/* Stats Counters*/ +PME_SYSFS_STAT_ATTR(trunci, PRIV_RW); +PME_SYSFS_STAT_ATTR(rbc, PRIV_RW); +PME_SYSFS_STAT_ATTR(tbt0ecc1ec, PRIV_RW); +PME_SYSFS_STAT_ATTR(tbt1ecc1ec, PRIV_RW); +PME_SYSFS_STAT_ATTR(vlt0ecc1ec, PRIV_RW); +PME_SYSFS_STAT_ATTR(vlt1ecc1ec, PRIV_RW); +PME_SYSFS_STAT_ATTR(cmecc1ec, PRIV_RW); +PME_SYSFS_STAT_ATTR(dxcmecc1ec, PRIV_RW); +PME_SYSFS_STAT_ATTR(dxemecc1ec, PRIV_RW); +PME_SYSFS_STAT_ATTR(stnib, PRIV_RW); +PME_SYSFS_STAT_ATTR(stnis, PRIV_RW); +PME_SYSFS_STAT_ATTR(stnth1, PRIV_RW); +PME_SYSFS_STAT_ATTR(stnth2, PRIV_RW); +PME_SYSFS_STAT_ATTR(stnthv, PRIV_RW); +PME_SYSFS_STAT_ATTR(stnths, PRIV_RW); +PME_SYSFS_STAT_ATTR(stnch, PRIV_RW); +PME_SYSFS_STAT_ATTR(stnpm, PRIV_RW); +PME_SYSFS_STAT_ATTR(stns1m, PRIV_RW); +PME_SYSFS_STAT_ATTR(stnpmr, PRIV_RW); +PME_SYSFS_STAT_ATTR(stndsr, PRIV_RW); +PME_SYSFS_STAT_ATTR(stnesr, PRIV_RW); +PME_SYSFS_STAT_ATTR(stns1r, PRIV_RW); +PME_SYSFS_STAT_ATTR(stnob, PRIV_RW); +PME_SYSFS_STAT_ATTR(mia_byc, PRIV_RW); +PME_SYSFS_STAT_ATTR(mia_blc, PRIV_RW); + +/* Stats Control */ +PME_SYSFS_ATTR(tbt0ecc1th, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(tbt1ecc1th, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(vlt0ecc1th, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(vlt1ecc1th, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(cmecc1th, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(dxcmecc1th, PRIV_RW, FMT_DEC); +PME_SYSFS_ATTR(dxemecc1th, PRIV_RW, FMT_DEC); + +static DEVICE_ATTR(update_interval, (S_IRUSR | S_IWUSR), + pme_show_update_interval, pme_store_update_interval); + +static struct attribute *pme_dev_bsc_attributes[] = { + &dev_attr_0.attr, + &dev_attr_1.attr, + &dev_attr_2.attr, + &dev_attr_3.attr, + &dev_attr_4.attr, + &dev_attr_5.attr, + &dev_attr_6.attr, + &dev_attr_7.attr, + &dev_attr_8.attr, + &dev_attr_9.attr, + &dev_attr_10.attr, + &dev_attr_11.attr, + &dev_attr_12.attr, + &dev_attr_13.attr, + &dev_attr_14.attr, + &dev_attr_15.attr, + &dev_attr_16.attr, + &dev_attr_17.attr, + &dev_attr_18.attr, + &dev_attr_19.attr, + &dev_attr_20.attr, + &dev_attr_21.attr, + &dev_attr_22.attr, + &dev_attr_23.attr, + &dev_attr_24.attr, + &dev_attr_25.attr, + &dev_attr_26.attr, + &dev_attr_27.attr, + &dev_attr_28.attr, + &dev_attr_29.attr, + &dev_attr_30.attr, + &dev_attr_31.attr, + &dev_attr_32.attr, + &dev_attr_33.attr, + &dev_attr_34.attr, + &dev_attr_35.attr, + &dev_attr_36.attr, + &dev_attr_37.attr, + &dev_attr_38.attr, + &dev_attr_39.attr, + &dev_attr_40.attr, + &dev_attr_41.attr, + &dev_attr_42.attr, + &dev_attr_43.attr, + &dev_attr_44.attr, + &dev_attr_45.attr, + &dev_attr_46.attr, + &dev_attr_47.attr, + &dev_attr_48.attr, + &dev_attr_49.attr, + &dev_attr_50.attr, + &dev_attr_51.attr, + &dev_attr_52.attr, + &dev_attr_53.attr, + &dev_attr_54.attr, + &dev_attr_55.attr, + &dev_attr_56.attr, + &dev_attr_57.attr, + &dev_attr_58.attr, + &dev_attr_59.attr, + &dev_attr_60.attr, + &dev_attr_61.attr, + &dev_attr_62.attr, + &dev_attr_63.attr, + NULL +}; + +static struct attribute *pme_dev_attributes[] = { + &dev_attr_efqc_int.attr, + &dev_attr_sw_db.attr, + &dev_attr_dmcr.attr, + &dev_attr_smcr.attr, + &dev_attr_famcr.attr, + &dev_attr_kvlts.attr, + &dev_attr_max_chain_length.attr, + &dev_attr_pattern_range_counter_idx.attr, + &dev_attr_pattern_range_counter_mask.attr, + &dev_attr_max_allowed_test_line_per_pattern.attr, + &dev_attr_max_pdsr_index.attr, + &dev_attr_max_pattern_matches_per_sui.attr, + &dev_attr_max_pattern_evaluations_per_sui.attr, + &dev_attr_report_length_limit.attr, + &dev_attr_end_of_simple_sui_report.attr, + &dev_attr_aim.attr, + &dev_attr_sre_context_size.attr, + &dev_attr_sre_rule_num.attr, + &dev_attr_sre_session_ctx_num.attr, + &dev_attr_end_of_sui_reaction_ptr.attr, + &dev_attr_sre_pscl.attr, + &dev_attr_sre_max_block_num.attr, + &dev_attr_sre_max_instruction_limit.attr, + &dev_attr_sre_max_index_size.attr, + &dev_attr_sre_max_offset_ctrl.attr, + &dev_attr_src_id.attr, + &dev_attr_liodnr.attr, + &dev_attr_rev1.attr, + &dev_attr_rev2.attr, + &dev_attr_isr.attr, + &dev_attr_ecr0.attr, + &dev_attr_ecr1.attr, + &dev_attr_esr.attr, + &dev_attr_pmstat.attr, + &dev_attr_pehd.attr, + &dev_attr_ecc1bes.attr, + &dev_attr_ecc2bes.attr, + &dev_attr_eccaddr.attr, + &dev_attr_ecccode.attr, + &dev_attr_miace.attr, + &dev_attr_miacr.attr, + &dev_attr_cdcr.attr, + &dev_attr_pmtr.attr, + &dev_attr_faconf.attr, + &dev_attr_pdsrbah.attr, + &dev_attr_pdsrbal.attr, + &dev_attr_scbarh.attr, + &dev_attr_scbarl.attr, + NULL +}; + +static struct attribute *pme_dev_stats_counter_attributes[] = { + &dev_attr_trunci.attr, + &dev_attr_rbc.attr, + &dev_attr_tbt0ecc1ec.attr, + &dev_attr_tbt1ecc1ec.attr, + &dev_attr_vlt0ecc1ec.attr, + &dev_attr_vlt1ecc1ec.attr, + &dev_attr_cmecc1ec.attr, + &dev_attr_dxcmecc1ec.attr, + &dev_attr_dxemecc1ec.attr, + &dev_attr_stnib.attr, + &dev_attr_stnis.attr, + &dev_attr_stnth1.attr, + &dev_attr_stnth2.attr, + &dev_attr_stnthv.attr, + &dev_attr_stnths.attr, + &dev_attr_stnch.attr, + &dev_attr_stnpm.attr, + &dev_attr_stns1m.attr, + &dev_attr_stnpmr.attr, + &dev_attr_stndsr.attr, + &dev_attr_stnesr.attr, + &dev_attr_stns1r.attr, + &dev_attr_stnob.attr, + &dev_attr_mia_byc.attr, + &dev_attr_mia_blc.attr, + NULL +}; + +static struct attribute *pme_dev_stats_ctrl_attributes[] = { + &dev_attr_update_interval.attr, + &dev_attr_tbt0ecc1th.attr, + &dev_attr_tbt1ecc1th.attr, + &dev_attr_vlt0ecc1th.attr, + &dev_attr_vlt1ecc1th.attr, + &dev_attr_cmecc1th.attr, + &dev_attr_dxcmecc1th.attr, + &dev_attr_dxemecc1th.attr, + NULL +}; + +/* root level */ +static const struct attribute_group pme_dev_attr_grp = { + .name = NULL, /* put in device directory */ + .attrs = pme_dev_attributes +}; + +/* root/bsc */ +static struct attribute_group pme_dev_bsc_attr_grp = { + .name = "bsc", + .attrs = pme_dev_bsc_attributes +}; + +/* root/stats */ +static struct attribute_group pme_dev_stats_counters_attr_grp = { + .name = "stats", + .attrs = pme_dev_stats_counter_attributes +}; + +/* root/stats_ctrl */ +static struct attribute_group pme_dev_stats_ctrl_attr_grp = { + .name = "stats_ctrl", + .attrs = pme_dev_stats_ctrl_attributes +}; + + +int pme2_create_sysfs_dev_files(struct platform_device *ofdev) +{ + int ret; + + ret = sysfs_create_group(&ofdev->dev.kobj, &pme_dev_attr_grp); + if (ret) + goto done; + ret = sysfs_create_group(&ofdev->dev.kobj, &pme_dev_bsc_attr_grp); + if (ret) + goto del_group_1; + ret = sysfs_create_group(&ofdev->dev.kobj, &pme_dev_stats_counters_attr_grp); + if (ret) + goto del_group_2; + ret = sysfs_create_group(&ofdev->dev.kobj, &pme_dev_stats_ctrl_attr_grp); + if (ret) + goto del_group_3; + goto done; +del_group_3: + sysfs_remove_group(&ofdev->dev.kobj, &pme_dev_stats_counters_attr_grp); +del_group_2: + sysfs_remove_group(&ofdev->dev.kobj, &pme_dev_bsc_attr_grp); +del_group_1: + sysfs_remove_group(&ofdev->dev.kobj, &pme_dev_attr_grp); +done: + if (ret) + dev_err(&ofdev->dev, + "Cannot create dev attributes ret=%d\n", ret); + return ret; +} + +void pme2_remove_sysfs_dev_files(struct platform_device *ofdev) +{ + sysfs_remove_group(&ofdev->dev.kobj, &pme_dev_stats_ctrl_attr_grp); + sysfs_remove_group(&ofdev->dev.kobj, &pme_dev_stats_counters_attr_grp); + sysfs_remove_group(&ofdev->dev.kobj, &pme_dev_bsc_attr_grp); + sysfs_remove_group(&ofdev->dev.kobj, &pme_dev_attr_grp); +} + + --- linux-3.13.0.orig/drivers/staging/fsl_pme2/pme2_test.h +++ linux-3.13.0/drivers/staging/fsl_pme2/pme2_test.h @@ -0,0 +1,74 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "pme2_sys.h" + +static inline void __hexdump(unsigned long start, unsigned long end, + unsigned long p, size_t sz, const unsigned char *c) +{ + while (start < end) { + unsigned int pos = 0; + char buf[64]; + int nl = 0; + pos += sprintf(buf + pos, "%08lx: ", start); + do { + if ((start < p) || (start >= (p + sz))) + pos += sprintf(buf + pos, ".."); + else + pos += sprintf(buf + pos, "%02x", *(c++)); + if (!(++start & 15)) { + buf[pos++] = '\n'; + nl = 1; + } else { + nl = 0; + if(!(start & 1)) + buf[pos++] = ' '; + if(!(start & 3)) + buf[pos++] = ' '; + } + } while (start & 15); + if (!nl) + buf[pos++] = '\n'; + buf[pos] = '\0'; + pr_info("%s", buf); + } +} +static inline void hexdump(const void *ptr, size_t sz) +{ + unsigned long p = (unsigned long)ptr; + unsigned long start = p & ~(unsigned long)15; + unsigned long end = (p + sz + 15) & ~(unsigned long)15; + const unsigned char *c = ptr; + __hexdump(start, end, p, sz, c); +} + +int pme2_sample_db(void); +int pme2_clear_sample_db(void); --- linux-3.13.0.orig/drivers/staging/fsl_pme2/pme2_test_high.c +++ linux-3.13.0/drivers/staging/fsl_pme2/pme2_test_high.c @@ -0,0 +1,238 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "pme2_test.h" + +MODULE_AUTHOR("Geoff Thorpe"); +MODULE_LICENSE("Dual BSD/GPL"); +MODULE_DESCRIPTION("FSL PME2 (p4080) high-level self-test"); + +/* Default Flow Context State */ +static u8 fl_ctx_exp[]={ + 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xe0, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00 +}; + +void scan_cb(struct pme_ctx *ctx, const struct qm_fd *fd, + struct pme_ctx_token *token) +{ + hexdump(fd, sizeof(*fd)); +} + +struct ctrl_op { + struct pme_ctx_ctrl_token ctx_ctr; + struct completion cb_done; + enum pme_status cmd_status; + u8 res_flag; +}; + +static void ctrl_cb(struct pme_ctx *ctx, const struct qm_fd *fd, + struct pme_ctx_ctrl_token *token) +{ + struct ctrl_op *ctrl = (struct ctrl_op *)token; + pr_info("pme2_test_high: ctrl_cb() invoked, fd;!\n"); + ctrl->cmd_status = pme_fd_res_status(fd); + ctrl->res_flag = pme_fd_res_flags(fd); + hexdump(fd, sizeof(*fd)); + complete(&ctrl->cb_done); +} + + +#define POST_CTRL(val) \ +do { \ + if (ret) \ + val = -1;\ + else if (pme_ctx_is_dead(&ctx))\ + val = -1;\ + else if (ctx_ctrl.cmd_status)\ + val = -1;\ + else if (ctx_ctrl.res_flag)\ + val = -1;\ +} while (0) + +void pme2_test_high(void) +{ + int post_ctrl = 0; + struct pme_flow flow; + struct qm_fqd_stashing stashing; + struct pme_ctx ctx = { + .cb = scan_cb + }; + int ret; + struct ctrl_op ctx_ctrl = { + .ctx_ctr.cb = ctrl_cb, + .cmd_status = 0, + .res_flag = 0 + }; + struct cpumask backup_mask = current->cpus_allowed; + struct cpumask new_mask = *qman_affine_cpus(); + + pr_info("PME2: high-level test starting\n"); + + cpumask_and(&new_mask, &new_mask, bman_affine_cpus()); + ret = set_cpus_allowed_ptr(current, &new_mask); + if (ret) { + post_ctrl = -1; + pr_info("PME2: test high: can't set cpumask\n"); + goto done; + } + + pme_sw_flow_init(&flow); + init_completion(&ctx_ctrl.cb_done); + ret = pme_ctx_init(&ctx, PME_CTX_FLAG_LOCAL, 0, 4, 4, 0, NULL); + POST_CTRL(post_ctrl); + if (post_ctrl) + goto restore_mask; + + /* enable the context */ + pme_ctx_enable(&ctx); + pr_info("PME2: pme_ctx_enable done\n"); + ret = pme_ctx_ctrl_update_flow(&ctx, PME_CTX_OP_WAIT | PME_CMD_FCW_ALL, + &flow, &ctx_ctrl.ctx_ctr); + pr_info("PME2: pme_ctx_ctrl_update_flow done\n"); + wait_for_completion(&ctx_ctrl.cb_done); + POST_CTRL(post_ctrl); + if (post_ctrl) + goto disable_ctx; + /* read back flow settings */ + ret = pme_ctx_ctrl_read_flow(&ctx, PME_CTX_OP_WAIT, &flow, + &ctx_ctrl.ctx_ctr); + pr_info("PME2: pme_ctx_ctrl_read_flow done\n"); + wait_for_completion(&ctx_ctrl.cb_done); + POST_CTRL(post_ctrl); + if (post_ctrl) + goto disable_ctx; + if (memcmp(&flow, fl_ctx_exp, sizeof(flow))) { + pr_info("Default Flow Context Read FAIL\n"); + pr_info("Expected:\n"); + hexdump(fl_ctx_exp, sizeof(fl_ctx_exp)); + pr_info("Received:\n"); + hexdump(&flow, sizeof(flow)); + post_ctrl = -1; + goto disable_ctx; + } else + pr_info("Default Flow Context Read OK\n"); + /* start a NOP */ + ret = pme_ctx_ctrl_nop(&ctx, 0, &ctx_ctrl.ctx_ctr); + pr_info("PME2: pme_ctx_ctrl_nop done\n"); + wait_for_completion(&ctx_ctrl.cb_done); + POST_CTRL(post_ctrl); + if (post_ctrl) + goto disable_ctx; + /* start an update to add residue to the context */ + flow.ren = 1; + ret = pme_ctx_ctrl_update_flow(&ctx, PME_CTX_OP_WAIT | PME_CMD_FCW_RES, + &flow, &ctx_ctrl.ctx_ctr); + pr_info("PME2: pme_ctx_ctrl_update_flow done\n"); + wait_for_completion(&ctx_ctrl.cb_done); + POST_CTRL(post_ctrl); + if (post_ctrl) + goto disable_ctx; + /* start a blocking disable */ + ret = pme_ctx_disable(&ctx, PME_CTX_OP_WAIT, &ctx_ctrl.ctx_ctr); + if (ret < 1) { + post_ctrl = -1; + goto finish_ctx; + } + wait_for_completion(&ctx_ctrl.cb_done); + /* do some reconfiguration */ + ret = pme_ctx_reconfigure_tx(&ctx, 63, 7); + if (ret) { + post_ctrl = -1; + goto finish_ctx; + } + stashing.exclusive = 0; + stashing.annotation_cl = 0; + stashing.data_cl = 2; + stashing.context_cl = 2; + ret = pme_ctx_reconfigure_rx(&ctx, 7, 0, &stashing); + if (ret) { + post_ctrl = -1; + goto finish_ctx; + } + /* reenable */ + ret = pme_ctx_enable(&ctx); + if (ret) { + post_ctrl = -1; + goto finish_ctx; + } + /* read back flow settings */ + ret = pme_ctx_ctrl_read_flow(&ctx, + PME_CTX_OP_WAIT | PME_CTX_OP_WAIT_INT | PME_CMD_FCW_RES, &flow, + &ctx_ctrl.ctx_ctr); + pr_info("PME2: pme_ctx_ctrl_read_flow done\n"); + wait_for_completion(&ctx_ctrl.cb_done); + POST_CTRL(post_ctrl); + if (post_ctrl) + goto disable_ctx; + /* blocking NOP */ + ret = pme_ctx_ctrl_nop(&ctx, PME_CTX_OP_WAIT | PME_CTX_OP_WAIT_INT, + &ctx_ctrl.ctx_ctr); + pr_info("PME2: pme_ctx_ctrl_nop done\n"); + wait_for_completion(&ctx_ctrl.cb_done); + POST_CTRL(post_ctrl); + /* Disable, and done */ +disable_ctx: + ret = pme_ctx_disable(&ctx, PME_CTX_OP_WAIT, &ctx_ctrl.ctx_ctr); + BUG_ON(ret < 1); + wait_for_completion(&ctx_ctrl.cb_done); +finish_ctx: + pme_ctx_finish(&ctx); +restore_mask: + ret = set_cpus_allowed_ptr(current, &backup_mask); + if (ret) { + pr_err("PME2 test high: can't restore cpumask"); + post_ctrl = -1; + } +done: + if (post_ctrl) + pr_info("PME2: high-level test failed\n"); + else + pr_info("PME2: high-level test passed\n"); +} + +static int pme2_test_high_init(void) +{ + int big_loop = 2; + while (big_loop--) + pme2_test_high(); + return 0; +} + +static void pme2_test_high_exit(void) +{ +} + +module_init(pme2_test_high_init); +module_exit(pme2_test_high_exit); + --- linux-3.13.0.orig/drivers/staging/fsl_pme2/pme2_test_scan.c +++ linux-3.13.0/drivers/staging/fsl_pme2/pme2_test_scan.c @@ -0,0 +1,653 @@ +/* Copyright 2009-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "pme2_test.h" + +enum scan_ctrl_mode { + no_scan = 0, + do_scan = 1, +}; + +enum db_ctrl_mode { + create_destroy = 0, + create = 1, + destroy = 2, + nothing = 3 +}; + +MODULE_AUTHOR("Jeffrey Ladouceur"); +MODULE_LICENSE("Dual BSD/GPL"); +MODULE_DESCRIPTION("PME scan testing"); + +static enum db_ctrl_mode db_ctrl; +module_param(db_ctrl, uint, 0644); +MODULE_PARM_DESC(db_ctrl, "PME Database control"); + +static enum scan_ctrl_mode scan_ctrl = 1; +module_param(scan_ctrl, uint, 0644); +MODULE_PARM_DESC(scan_ctrl, "Scan control"); + +static u8 scan_result_direct_mode_inc_mode[] = { + 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00 +}; + +static u8 fl_ctx_exp[] = { + 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xe0, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00 +}; + +/* same again with 'sos' bit cleared */ +static u8 fl_ctx_exp_post_scan[] = { + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xe0, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00 +}; + +struct scan_ctx { + struct pme_ctx base_ctx; + struct qm_fd result_fd; +}; + +struct ctrl_op { + struct pme_ctx_ctrl_token ctx_ctr; + struct completion cb_done; + enum pme_status cmd_status; + u8 res_flag; +}; + +static void ctrl_cb(struct pme_ctx *ctx, const struct qm_fd *fd, + struct pme_ctx_ctrl_token *token) +{ + struct ctrl_op *ctrl = (struct ctrl_op *)token; + ctrl->cmd_status = pme_fd_res_status(fd); + ctrl->res_flag = pme_fd_res_flags(fd) & PME_STATUS_UNRELIABLE; + /* hexdump(fd, sizeof(*fd)); */ + complete(&ctrl->cb_done); +} + +static DECLARE_COMPLETION(scan_comp); + +static void scan_cb(struct pme_ctx *ctx, const struct qm_fd *fd, + struct pme_ctx_token *ctx_token) +{ + struct scan_ctx *my_ctx = (struct scan_ctx *)ctx; + memcpy(&my_ctx->result_fd, fd, sizeof(*fd)); + complete(&scan_comp); +} + +#ifdef CONFIG_FSL_PME2_TEST_SCAN_WITH_BPID + +static struct bman_pool *pool; +static u32 pme_bpid; +static void *bman_buffers_virt_base; +static dma_addr_t bman_buffers_phys_base; + +static void release_buffer(dma_addr_t addr) +{ + struct bm_buffer bufs_in; + bm_buffer_set64(&bufs_in, addr); + if (bman_release(pool, &bufs_in, 1, BMAN_RELEASE_FLAG_WAIT)) + panic("bman_release() failed\n"); +} + +static void empty_buffer(void) +{ + struct bm_buffer bufs_in; + int ret; + + do { + ret = bman_acquire(pool, &bufs_in, 1, 0); + } while (!ret); +} +#endif /*CONFIG_FSL_PME2_TEST_SCAN_WITH_BPID*/ + +static int scan_test_direct(int trunc, int use_bp) +{ + struct scan_ctx a_scan_ctx = { + .base_ctx = { + .cb = scan_cb + } + }; + struct ctrl_op ctx_ctrl = { + .ctx_ctr.cb = ctrl_cb, + .cmd_status = 0, + .res_flag = 0 + }; + struct qm_fd fd; + struct qm_sg_entry sg_table[2]; + int ret; + enum pme_status status; + struct pme_ctx_token token; + u8 *scan_result; + u32 scan_result_size; + u8 scan_data[] = { + 0x41, 0x42, 0x43, 0x44, 0x45 + }; + u8 result_data[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00 + }; + + init_completion(&ctx_ctrl.cb_done); + scan_result = scan_result_direct_mode_inc_mode; + scan_result_size = sizeof(scan_result_direct_mode_inc_mode); + + ret = pme_ctx_init(&a_scan_ctx.base_ctx, + PME_CTX_FLAG_DIRECT | PME_CTX_FLAG_LOCAL, + 0, 4, 4, 0, NULL); + if (ret) { + pr_err("pme scan test failed: 0x%x\n", ret); + return ret; + } + /* enable the context */ + ret = pme_ctx_enable(&a_scan_ctx.base_ctx); + if (ret) { + pr_err("pme scan test failed: 0x%x\n", ret); + goto ctx_finish; + } + + /* Do a pre-built output, scan with match test */ + /* Build a frame descriptor */ + memset(&fd, 0, sizeof(struct qm_fd)); + memset(&sg_table, 0, sizeof(sg_table)); + + if (trunc) { + fd.length20 = sizeof(scan_data); + qm_fd_addr_set64(&fd, pme_map(scan_data)); + } else { + /* build the result */ + qm_sg_entry_set64(&sg_table[0], pme_map(result_data)); + sg_table[0].length = sizeof(result_data); + qm_sg_entry_set64(&sg_table[1], pme_map(scan_data)); + sg_table[1].length = sizeof(scan_data); + sg_table[1].final = 1; + fd._format2 = qm_fd_compound; + qm_fd_addr_set64(&fd, pme_map(sg_table)); + } + + ret = pme_ctx_scan(&a_scan_ctx.base_ctx, 0, &fd, + PME_SCAN_ARGS(PME_CMD_SCAN_SR | PME_CMD_SCAN_E, 0, 0xff00), + &token); + if (ret) { + pr_err("pme scan test failed: 0x%x\n", ret); + goto ctx_disable; + } + wait_for_completion(&scan_comp); + + status = pme_fd_res_status(&a_scan_ctx.result_fd); + if (status) { + pr_err("pme scan test failed 0x%x\n", status); + goto ctx_disable; + } + if (trunc) { + int res_flag = pme_fd_res_flags(&a_scan_ctx.result_fd); + /* Check the response...expect truncation bit to be set */ + if (!(res_flag & PME_STATUS_TRUNCATED)) { + pr_err("pme scan test failed, expected truncation\n"); + goto ctx_disable; + } + } else { + if (memcmp(scan_result, result_data, scan_result_size) != 0) { + pr_err("pme scan test result not expected\n"); + hexdump(scan_result, scan_result_size); + pr_err("Received...\n"); + hexdump(result_data, sizeof(result_data)); + goto ctx_disable; + } + } + + ret = pme_ctx_disable(&a_scan_ctx.base_ctx, PME_CTX_OP_WAIT, NULL); + if (ret) { + pr_err("pme scan test failed: 0x%x\n", ret); + goto ctx_finish; + } + if (!use_bp) { + pme_ctx_finish(&a_scan_ctx.base_ctx); + return 0; + } + /* use buffer pool */ + /* Check with bman */ + /* reconfigure */ + +#ifdef CONFIG_FSL_PME2_TEST_SCAN_WITH_BPID + ret = pme_ctx_reconfigure_tx(&a_scan_ctx.base_ctx, pme_bpid, 5); + if (ret) { + pr_err("pme scan test failed: 0x%x\n", ret); + goto ctx_finish; + } + ret = pme_ctx_enable(&a_scan_ctx.base_ctx); + if (ret) { + pr_err("pme scan test failed: 0x%x\n", ret); + goto ctx_finish; + } + /* Do a pre-built output, scan with match test */ + /* Build a frame descriptor */ + memset(&fd, 0, sizeof(struct qm_fd)); + memset(&sg_table, 0, sizeof(sg_table)); + + /* build the result */ + /* result is all zero...use bman */ + qm_sg_entry_set64(&sg_table[1], pme_map(scan_data)); + sg_table[1].length = sizeof(scan_data); + sg_table[1].final = 1; + + fd._format2 = qm_fd_compound; + qm_fd_addr_set64(&fd, pme_map(sg_table)); + + ret = pme_ctx_scan(&a_scan_ctx.base_ctx, 0, &fd, + PME_SCAN_ARGS(PME_CMD_SCAN_SR | PME_CMD_SCAN_E, 0, 0xff00), + &token); + if (ret) { + pr_err("pme scan test failed: 0x%x\n", ret); + goto ctx_disable; + } + wait_for_completion(&scan_comp); + + status = pme_fd_res_status(&a_scan_ctx.result_fd); + if (status) { + pr_err("pme scan test failed 0x%x\n", status); + goto ctx_disable; + } + /* sg result should point to bman buffer */ + if (!qm_sg_entry_get64(&sg_table[0])) { + pr_err("pme scan test failed, sg result not bman buffer\n"); + goto ctx_disable; + } + if (memcmp(scan_result, bman_buffers_virt_base, scan_result_size) + != 0) { + pr_err("pme scan test not expected, Expected\n"); + hexdump(scan_result, scan_result_size); + pr_err("Received...\n"); + hexdump(bman_buffers_virt_base, scan_result_size); + release_buffer(qm_sg_entry_get64(&sg_table[0])); + goto ctx_disable; + } + release_buffer(qm_sg_entry_get64(&sg_table[0])); + ret = pme_ctx_disable(&a_scan_ctx.base_ctx, PME_CTX_OP_WAIT, NULL); + if (ret) { + pr_err("pme scan test failed: 0x%x\n", ret); + goto ctx_finish; + } + pme_ctx_finish(&a_scan_ctx.base_ctx); + return 0; +#endif + +/* failure path */ +ctx_disable: + ret = pme_ctx_disable(&a_scan_ctx.base_ctx, PME_CTX_OP_WAIT, NULL); +ctx_finish: + pme_ctx_finish(&a_scan_ctx.base_ctx); + return (!ret) ? -EINVAL : ret; +} + +static int scan_test_flow(void) +{ + struct pme_flow flow; + struct pme_flow rb_flow; + struct scan_ctx a_scan_ctx = { + .base_ctx = { + .cb = scan_cb + } + }; + struct ctrl_op ctx_ctrl = { + .ctx_ctr.cb = ctrl_cb, + .cmd_status = 0, + .res_flag = 0 + }; + struct qm_fd fd; + struct qm_sg_entry sg_table[2]; + int ret; + enum pme_status status; + struct pme_ctx_token token; + u8 *scan_result; + u32 scan_result_size; + u8 scan_data[] = { + 0x41, 0x42, 0x43, 0x44, 0x45 + }; + u8 result_data[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00 + }; + + pme_sw_flow_init(&flow); + init_completion(&ctx_ctrl.cb_done); + scan_result = scan_result_direct_mode_inc_mode; + scan_result_size = sizeof(scan_result_direct_mode_inc_mode); + + ret = pme_ctx_init(&a_scan_ctx.base_ctx, + PME_CTX_FLAG_LOCAL, 0, 4, 4, 0, NULL); + if (ret) { + pr_err("pme scan test failed: 0x%x\n", ret); + return ret; + } + /* enable the context */ + ret = pme_ctx_enable(&a_scan_ctx.base_ctx); + if (ret) { + pr_err("pme scan test failed: 0x%x\n", ret); + goto flow_ctx_finish; + } + ret = pme_ctx_ctrl_update_flow(&a_scan_ctx.base_ctx, + PME_CTX_OP_WAIT | PME_CMD_FCW_ALL, &flow, &ctx_ctrl.ctx_ctr); + if (ret) { + pr_err("pme scan test failed: 0x%x\n", ret); + goto flow_ctx_disable; + } + wait_for_completion(&ctx_ctrl.cb_done); + if (ctx_ctrl.cmd_status || ctx_ctrl.res_flag) { + pr_err("pme scan test failed: 0x%x\n", ret); + goto flow_ctx_disable; + } + /* read back flow settings */ + ret = pme_ctx_ctrl_read_flow(&a_scan_ctx.base_ctx, + PME_CTX_OP_WAIT, &rb_flow, &ctx_ctrl.ctx_ctr); + if (ret) { + pr_err("pme scan test failed: 0x%x\n", ret); + goto flow_ctx_disable; + } + wait_for_completion(&ctx_ctrl.cb_done); + if (ctx_ctrl.cmd_status || ctx_ctrl.res_flag) { + pr_err("pme scan test failed: 0x%x\n", ret); + goto flow_ctx_disable; + } + if (memcmp(&rb_flow, fl_ctx_exp, sizeof(rb_flow)) != 0) { + pr_err("pme scan test Flow Context Read FAIL\n"); + pr_err("Expected\n"); + hexdump(fl_ctx_exp, sizeof(fl_ctx_exp)); + pr_err("Received...\n"); + hexdump(&rb_flow, sizeof(rb_flow)); + goto flow_ctx_disable; + } + + /* Do a pre-built output, scan with match test */ + /* Build a frame descriptor */ + memset(&fd, 0, sizeof(struct qm_fd)); + memset(&sg_table, 0, sizeof(sg_table)); + + /* build the result */ + qm_sg_entry_set64(&sg_table[0], pme_map(result_data)); + sg_table[0].length = sizeof(result_data); + qm_sg_entry_set64(&sg_table[1], pme_map(scan_data)); + sg_table[1].length = sizeof(scan_data); + sg_table[1].final = 1; + + fd._format2 = qm_fd_compound; + qm_fd_addr_set64(&fd, pme_map(sg_table)); + + ret = pme_ctx_scan(&a_scan_ctx.base_ctx, 0, &fd, + PME_SCAN_ARGS(PME_CMD_SCAN_SR | PME_CMD_SCAN_E, 0, 0xff00), + &token); + if (ret) { + pr_err("pme scan test failed: 0x%x\n", ret); + goto flow_ctx_disable; + } + wait_for_completion(&scan_comp); + + status = pme_fd_res_status(&a_scan_ctx.result_fd); + if (status) { + pr_err("pme scan test failed 0x%x\n", status); + goto flow_ctx_disable; + } + + if (memcmp(scan_result, result_data, scan_result_size) != 0) { + pr_err("pme scan test result not expected\n"); + hexdump(scan_result, scan_result_size); + pr_err("Received...\n"); + hexdump(result_data, sizeof(result_data)); + goto flow_ctx_disable; + } + + /* read back flow settings */ + ret = pme_ctx_ctrl_read_flow(&a_scan_ctx.base_ctx, + PME_CTX_OP_WAIT, &rb_flow, &ctx_ctrl.ctx_ctr); + if (ret) { + pr_err("pme scan test failed 0x%x\n", status); + goto flow_ctx_disable; + } + wait_for_completion(&ctx_ctrl.cb_done); + if (ctx_ctrl.cmd_status || ctx_ctrl.res_flag) { + pr_err("pme scan test failed: 0x%x\n", ret); + goto flow_ctx_disable; + } + if (memcmp(&rb_flow, fl_ctx_exp_post_scan, sizeof(rb_flow)) != 0) { + pr_err("pme scan test Flow Context Read FAIL\n"); + pr_err("Expected\n"); + hexdump(fl_ctx_exp_post_scan, sizeof(fl_ctx_exp_post_scan)); + pr_err("Received\n"); + hexdump(&rb_flow, sizeof(rb_flow)); + goto flow_ctx_disable; + } + + /* Test truncation test */ + /* Build a frame descriptor */ + memset(&fd, 0, sizeof(struct qm_fd)); + + fd.length20 = sizeof(scan_data); + qm_fd_addr_set64(&fd, pme_map(scan_data)); + + ret = pme_ctx_scan(&a_scan_ctx.base_ctx, 0, &fd, + PME_SCAN_ARGS(PME_CMD_SCAN_SR | PME_CMD_SCAN_E, 0, 0xff00), + &token); + if (ret) { + pr_err("pme scan test failed 0x%x\n", status); + goto flow_ctx_disable; + } + wait_for_completion(&scan_comp); + + status = pme_fd_res_status(&a_scan_ctx.result_fd); + if (status) { + pr_err("pme scan test failed 0x%x\n", status); + goto flow_ctx_disable; + } + /* Check the response...expect truncation bit to be set */ + if (!(pme_fd_res_flags(&a_scan_ctx.result_fd) & PME_STATUS_TRUNCATED)) { + pr_err("st: Scan result failed...expected trunc\n"); + goto flow_ctx_disable; + } + + /* read back flow settings */ + ret = pme_ctx_ctrl_read_flow(&a_scan_ctx.base_ctx, + PME_CTX_OP_WAIT, &rb_flow, &ctx_ctrl.ctx_ctr); + if (ret) { + pr_err("pme scan test failed: 0x%x\n", ret); + goto flow_ctx_disable; + } + wait_for_completion(&ctx_ctrl.cb_done); + if (ctx_ctrl.cmd_status || ctx_ctrl.res_flag) { + pr_err("pme scan test failed: 0x%x\n", ret); + goto flow_ctx_disable; + } + if (memcmp(&rb_flow, fl_ctx_exp_post_scan, sizeof(rb_flow)) != 0) { + pr_err("pme scan test Flow Context Read FAIL\n"); + pr_err("Expected\n"); + hexdump(fl_ctx_exp_post_scan, sizeof(fl_ctx_exp_post_scan)); + pr_err("Received\n"); + hexdump(&rb_flow, sizeof(rb_flow)); + goto flow_ctx_disable; + } + + /* Disable */ + ret = pme_ctx_disable(&a_scan_ctx.base_ctx, PME_CTX_OP_WAIT, + &ctx_ctrl.ctx_ctr); + if (ret < 1) { + pr_err("pme scan test failed 0x%x\n", ret); + goto flow_ctx_finish; + } + wait_for_completion(&ctx_ctrl.cb_done); + pme_ctx_finish(&a_scan_ctx.base_ctx); + return 0; + /* error path */ +/* failure path */ +flow_ctx_disable: + ret = pme_ctx_disable(&a_scan_ctx.base_ctx, PME_CTX_OP_WAIT, NULL); +flow_ctx_finish: + pme_ctx_finish(&a_scan_ctx.base_ctx); + return (!ret) ? -EINVAL : ret; +} + +void pme2_test_scan(void) +{ + int ret; + + ret = scan_test_direct(0, 0); + if (ret) + goto done; + ret = scan_test_direct(1, 0); + if (ret) + goto done; +#ifdef CONFIG_FSL_PME2_TEST_SCAN_WITH_BPID + ret = scan_test_direct(0, 1); + if (ret) + goto done; +#endif + ret = scan_test_flow(); +done: + if (ret) + pr_info("pme scan test FAILED 0x%x\n", ret); + else + pr_info("pme Scan Test Passed\n"); +} + +static int setup_buffer_pool(void) +{ +#ifdef CONFIG_FSL_PME2_TEST_SCAN_WITH_BPID + u32 bpid_size = CONFIG_FSL_PME2_TEST_SCAN_WITH_BPID_SIZE; + struct bman_pool_params pparams = { + .flags = BMAN_POOL_FLAG_DYNAMIC_BPID, + .thresholds = { + 0, + 0, + 0, + 0 + } + }; + + if (!pme2_have_control()) { + pr_err("pme scan test: Not the ctrl-plane\n"); + return -EINVAL; + } + pool = bman_new_pool(&pparams); + if (!pool) { + pr_err("pme scan test: can't get buffer pool\n"); + return -EINVAL; + } + pme_bpid = bman_get_params(pool)->bpid; + bman_buffers_virt_base = kmalloc(1<<(bpid_size+5), GFP_KERNEL); + bman_buffers_phys_base = pme_map(bman_buffers_virt_base); + if (pme_map_error(bman_buffers_phys_base)) { + pr_info("pme scan test: pme_map_error\n"); + bman_free_pool(pool); + kfree(bman_buffers_virt_base); + return -ENODEV; + } + release_buffer(bman_buffers_phys_base); + /* Configure the buffer pool */ + pme_attr_set(pme_attr_bsc(pme_bpid), bpid_size); + /* realease to the specified buffer pool */ + return 0; +#endif + return 0; +} + +static int teardown_buffer_pool(void) +{ +#ifdef CONFIG_FSL_PME2_TEST_SCAN_WITH_BPID + pme_attr_set(pme_attr_bsc(pme_bpid), 0); + empty_buffer(); + bman_free_pool(pool); + kfree(bman_buffers_virt_base); +#endif + return 0; +} + +static int pme2_test_scan_init(void) +{ + int big_loop = 2; + int ret = 0; + struct cpumask backup_mask = current->cpus_allowed; + struct cpumask new_mask = *qman_affine_cpus(); + + cpumask_and(&new_mask, &new_mask, bman_affine_cpus()); + ret = set_cpus_allowed_ptr(current, &new_mask); + if (ret) { + pr_info("pme scan test: can't set cpumask\n"); + goto done_all; + } + + ret = setup_buffer_pool(); + if (ret) + goto done_cpu_mask; + + /* create sample database */ + if (db_ctrl == create_destroy || db_ctrl == create) { + if (!pme2_have_control()) { + pr_err("pme scan test: Not the ctrl-plane\n"); + ret = -EINVAL; + goto done_scan; + } + if (pme2_sample_db()) { + pr_err("pme scan test: error creating db\n"); + goto done_scan; + } + } + + if (scan_ctrl == do_scan) { + while (big_loop--) + pme2_test_scan(); + } + + if (db_ctrl == create_destroy || db_ctrl == destroy) { + /* Clear database */ + if (pme2_clear_sample_db()) + pr_err("pme scan test: error clearing db\n"); + } + +done_scan: + teardown_buffer_pool(); +done_cpu_mask: + ret = set_cpus_allowed_ptr(current, &backup_mask); + if (ret) + pr_err("PME2 test high: can't restore cpumask"); +done_all: + return ret; +} + +static void pme2_test_scan_exit(void) +{ +} + +module_init(pme2_test_scan_init); +module_exit(pme2_test_scan_exit); --- linux-3.13.0.orig/drivers/staging/fsl_qbman/Kconfig +++ linux-3.13.0/drivers/staging/fsl_qbman/Kconfig @@ -0,0 +1,278 @@ +config FSL_DPA + bool "Freescale Datapath Queue and Buffer management" + depends on HAS_FSL_QBMAN + default y + select FSL_QMAN_FQ_LOOKUP if PPC64 + +menu "Freescale Datapath QMan/BMan options" + depends on FSL_DPA + +config FSL_DPA_CHECKING + bool "additional driver checking" + default n + ---help--- + Compiles in additional checks to sanity-check the drivers and any + use of it by other code. Not recommended for performance. + +config FSL_DPA_HAVE_IRQ + bool + default y + +config FSL_DPA_CAN_WAIT + bool + default y + +config FSL_DPA_CAN_WAIT_SYNC + bool + default y + +config FSL_DPA_PIRQ_FAST + bool "fast-path processing via IRQ" + depends on FSL_DPA_HAVE_IRQ + default y + ---help--- + By default, configure fast-path handling to be triggered by IRQ. + Drivers can modify this at run-time, but for linux it makes sense + for all handling to be triggered by IRQ, unless a special + run-to-completion application is being built. + +config FSL_DPA_PIRQ_SLOW + bool "slow-path processing via IRQ" + depends on FSL_DPA_HAVE_IRQ + default y + ---help--- + By default, configure slow-path handling to be triggered by IRQ. + Drivers can modify this at run-time, but for linux it makes sense + for all handling to be triggered by IRQ, unless a special + run-to-completion application is being built. + +config FSL_DPA_PORTAL_SHARE + bool "allow portals to be affine to multiple CPUs" + default y + ---help--- + If the kernel, via its device-tree, will be required to use a + single Qman or Bman portal for multiple CPUs, then select this + option. Note however that compiling with this option will result + in a very slight (but non-zero) overhead even when the feature + is not being used. + +config FSL_DPA_UIO + tristate "Export USDPAA portals via UIO" + depends on UIO + default y + ---help--- + Portals are exported as UIO devices for use by USDPAA (User + Space DataPath Acceleration Architecture) applications. + +config FSL_BMAN + bool "Freescale Buffer Manager support" + default y + +if FSL_BMAN + +config FSL_BMAN_PORTAL + bool "Bman portal support" + default y + ---help--- + Compiles support to detect and support Bman software corenet portals + (as provided by the device-tree). + +config FSL_BMAN_CONFIG + bool "Bman device management" + default y + ---help--- + If this linux image is running natively, you need this option. If this + linux image is running as a guest OS under the hypervisor, only one + guest OS ("the control plane") needs this option. + +config FSL_BMAN_TEST + tristate "Bman self-tests" + depends on FSL_BMAN_PORTAL + default n + ---help--- + This option compiles self-test code for Bman. + +config FSL_BMAN_TEST_HIGH + bool "Bman high-level self-test" + depends on FSL_BMAN_TEST + default y + ---help--- + This requires the presence of cpu-affine portals, and performs + high-level API testing with them (whichever portal(s) are affine to + the cpu(s) the test executes on). + +config FSL_BMAN_TEST_THRESH + bool "Bman threshold test" + depends on FSL_BMAN_TEST + default y + ---help--- + Multi-threaded (SMP) test of Bman pool depletion. A pool is seeded + before multiple threads (one per cpu) create pool objects to track + depletion state changes. The pool is then drained to empty by a + "drainer" thread, and the other threads that they observe exactly + the depletion state changes that are expected. + +config FSL_BMAN_DEBUGFS + tristate "Bman debugfs interface" + depends on FSL_BMAN_PORTAL && DEBUG_FS + default y + ---help--- + This option compiles bman debugfs code for Bman. + +endif # FSL_BMAN + +config FSL_QMAN + bool "Freescale Queue Manager support" + default y + +if FSL_QMAN + +config FSL_QMAN_PORTAL + bool "Qman portal support" + default y + ---help--- + Compiles support to detect and support Qman software corenet portals + (as provided by the device-tree). + +config FSL_QMAN_BUG_AND_FEATURE_REV1 + bool "workarounds for errata and missing features in p4080 rev1" + depends on FSL_QMAN_PORTAL + default y + ---help--- + If this option is selected, the driver will be compiled with + workarounds for errata as well as feature limitations (relative to + more recent parts) of p4080 rev1. On unaffected revisions, this + support incurs only a negligable overhead, typically only a couple of + instructions per non-fast-path operation (the fast-path operations are + unaffected). + + If in doubt, say Y. + +config FSL_QMAN_POLL_LIMIT + int + default 32 + +config FSL_QMAN_PORTAL_DISABLEAUTO_DCA + bool "disable discrete-consumption support on cpu-affine portals" + default n + ---help--- + By default, auto-initialised cpu-affine portals support + discrete-consumption acknowledgements, but this may be unimplemented + in the simulation model. + +config FSL_QMAN_NULL_FQ_DEMUX + bool "support NULL demux handlers" + default y + ---help--- + Normally, incoming frame dequeues and messages from Qman to a software + portal provide a direct demux to the owner of the corresponding FQ. + However, exotic "zero-conf" possibilities can be supported if other + cpus (or operating systems) can schedule "NULL" FQs to a receiver's + portal. If this option is selected, the driver will support this + feature, but it adds a small overhead to the hottest-path in the + driver, so it should be disabled unless needed. + +config FSL_QMAN_DQRR_PREFETCHING + bool "support prefetching or DQRR (if stashing disabled)" + default y + ---help--- + Normally, portals are configured to stash DQRR entries, but if this is + not the case, then s/w needs to invalidate and prefetch ring entries. + Selecting this option supports both cases and chooses the best one at + run-time, but introduces a small overhead in some hot paths of the + driver, so disable it if you know stashing will be configured. + +config FSL_QMAN_CONFIG + bool "Qman device management" + default y + ---help--- + If this linux image is running natively, you need this option. If this + linux image is running as a guest OS under the hypervisor, only one + guest OS ("the control plane") needs this option. + +config FSL_QMAN_TEST + tristate "Qman self-tests" + depends on FSL_QMAN_PORTAL + default n + ---help--- + This option compiles self-test code for Qman. + +config FSL_QMAN_TEST_STASH_POTATO + bool "Qman 'hot potato' data-stashing self-test" + depends on FSL_QMAN_TEST + default y + ---help--- + This performs a "hot potato" style test enqueuing/dequeuing a frame + across a series of FQs scheduled to different portals (and cpus), with + DQRR, data and context stashing always on. + +config FSL_QMAN_TEST_HIGH + bool "Qman high-level self-test" + depends on FSL_QMAN_TEST + default y + ---help--- + This requires the presence of cpu-affine portals, and performs + high-level API testing with them (whichever portal(s) are affine to + the cpu(s) the test executes on). + +config FSL_QMAN_TEST_ERRATA + bool "Qman errata-handling self-test" + depends on FSL_QMAN_TEST + default y + ---help--- + This requires the presence of cpu-affine portals, and performs + testing that handling for known hardware-errata is correct. + +config FSL_QMAN_DEBUGFS + tristate "Qman debugfs interface" + depends on FSL_QMAN_PORTAL + default y + ---help--- + This option compiles qman debugfs code for Qman. + +# H/w settings that can be hard-coded for now. +config FSL_QMAN_FQD_SZ + int "Size of Frame Queue Descriptor region" + default 9 + ---help--- + This is the size of the FQD region defined as: PAGE_SIZE * (2^value) + ex: 9 => PAGE_SIZE * (2^9) + +# Corenet initiator settings. Stash request queues are 4-deep to match cores' +# ability to snart. Stash priority is 3, other priorities are 2. +config FSL_QMAN_CI_SCHED_CFG_SRCCIV + int + depends on FSL_QMAN_CONFIG + default 4 +config FSL_QMAN_CI_SCHED_CFG_SRQ_W + int + depends on FSL_QMAN_CONFIG + default 3 +config FSL_QMAN_CI_SCHED_CFG_RW_W + int + depends on FSL_QMAN_CONFIG + default 2 +config FSL_QMAN_CI_SCHED_CFG_BMAN_W + int + depends on FSL_QMAN_CONFIG + default 2 + +# portal interrupt settings +config FSL_QMAN_PIRQ_DQRR_ITHRESH + int + default 12 +config FSL_QMAN_PIRQ_MR_ITHRESH + int + default 4 +config FSL_QMAN_PIRQ_IPERIOD + int + default 100 + +# 64 bit kernel support +config FSL_QMAN_FQ_LOOKUP + bool + default n + +endif # FSL_QMAN + +endmenu --- linux-3.13.0.orig/drivers/staging/fsl_qbman/Makefile +++ linux-3.13.0/drivers/staging/fsl_qbman/Makefile @@ -0,0 +1,23 @@ +# Bman +obj-$(CONFIG_FSL_BMAN_CONFIG) += bman_config.o bman_driver.o +obj-$(CONFIG_FSL_BMAN_PORTAL) += bman_high.o +obj-$(CONFIG_FSL_BMAN_TEST) += bman_tester.o +obj-$(CONFIG_FSL_BMAN_DEBUGFS) += bman_debugfs_interface.o +bman_tester-y = bman_test.o +bman_tester-$(CONFIG_FSL_BMAN_TEST_HIGH) += bman_test_high.o +bman_tester-$(CONFIG_FSL_BMAN_TEST_THRESH) += bman_test_thresh.o +bman_debugfs_interface-y = bman_debugfs.o + +# Qman +obj-$(CONFIG_FSL_QMAN) += qman_utility.o qman_fqalloc.o +obj-$(CONFIG_FSL_QMAN_CONFIG) += qman_config.o qman_driver.o +obj-$(CONFIG_FSL_QMAN_PORTAL) += qman_high.o +obj-$(CONFIG_FSL_QMAN_TEST) += qman_tester.o +qman_tester-y = qman_test.o qman_test_hotpotato.o \ + qman_test_high.o +qman_tester-$(CONFIG_FSL_QMAN_TEST_ERRATA) += qman_test_errata.o +obj-$(CONFIG_FSL_QMAN_DEBUGFS) += qman_debugfs_interface.o +qman_debugfs_interface-y = qman_debugfs.o + +# USDPAA +obj-$(CONFIG_FSL_DPA_UIO) += dpa_uio.o --- linux-3.13.0.orig/drivers/staging/fsl_qbman/bman_config.c +++ linux-3.13.0/drivers/staging/fsl_qbman/bman_config.c @@ -0,0 +1,690 @@ +/* Copyright (c) 2009-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef CONFIG_SMP +#include /* get_hard_smp_processor_id() */ +#endif +#include +#include + +#include "bman_private.h" + +/* Last updated for v00.79 of the BG */ + +struct bman; + +/* Register offsets */ +#define REG_POOL_SWDET(n) (0x0000 + ((n) * 0x04)) +#define REG_POOL_HWDET(n) (0x0100 + ((n) * 0x04)) +#define REG_POOL_SWDXT(n) (0x0200 + ((n) * 0x04)) +#define REG_POOL_HWDXT(n) (0x0300 + ((n) * 0x04)) +#define REG_POOL_CONTENT(n) (0x0600 + ((n) * 0x04)) +#define REG_FBPR_FPC 0x0800 +#define REG_ECSR 0x0a00 +#define REG_ECIR 0x0a04 +#define REG_EADR 0x0a08 +#define REG_EDATA(n) (0x0a10 + ((n) * 0x04)) +#define REG_SBEC(n) (0x0a80 + ((n) * 0x04)) +#define REG_IP_REV_1 0x0bf8 +#define REG_IP_REV_2 0x0bfc +#define REG_FBPR_BARE 0x0c00 +#define REG_FBPR_BAR 0x0c04 +#define REG_FBPR_AR 0x0c10 +#define REG_SRCIDR 0x0d04 +#define REG_LIODNR 0x0d08 +#define REG_ERR_ISR 0x0e00 /* + "enum bm_isr_reg" */ + +/* Used by all error interrupt registers except 'inhibit' */ +#define BM_EIRQ_IVCI 0x00000010 /* Invalid Command Verb */ +#define BM_EIRQ_FLWI 0x00000008 /* FBPR Low Watermark */ +#define BM_EIRQ_MBEI 0x00000004 /* Multi-bit ECC Error */ +#define BM_EIRQ_SBEI 0x00000002 /* Single-bit ECC Error */ +#define BM_EIRQ_BSCN 0x00000001 /* pool State Change Notification */ + +/* BMAN_ECIR valid error bit */ +#define PORTAL_ECSR_ERR (BM_EIRQ_IVCI) + +union bman_ecir { + u32 ecir_raw; + struct { + u32 __reserved1:4; + u32 portal_num:4; + u32 __reserved2:12; + u32 numb:4; + u32 __reserved3:2; + u32 pid:6; + } __packed info; +}; + +union bman_eadr { + u32 eadr_raw; + struct { + u32 __reserved1:5; + u32 memid:3; + u32 __reserved2:14; + u32 eadr:10; + } __packed info; +}; + +struct bman_hwerr_txt { + u32 mask; + const char *txt; +}; + +#define BMAN_HWE_TXT(a, b) { .mask = BM_EIRQ_##a, .txt = b } + +static const struct bman_hwerr_txt bman_hwerr_txts[] = { + BMAN_HWE_TXT(IVCI, "Invalid Command Verb"), + BMAN_HWE_TXT(FLWI, "FBPR Low Watermark"), + BMAN_HWE_TXT(MBEI, "Multi-bit ECC Error"), + BMAN_HWE_TXT(SBEI, "Single-bit ECC Error"), + BMAN_HWE_TXT(BSCN, "Pool State Change Notification"), +}; +#define BMAN_HWE_COUNT (sizeof(bman_hwerr_txts)/sizeof(struct bman_hwerr_txt)) + +struct bman_error_info_mdata { + u16 addr_mask; + u16 bits; + const char *txt; +}; + +#define BMAN_ERR_MDATA(a, b, c) { .addr_mask = a, .bits = b, .txt = c} +static const struct bman_error_info_mdata error_mdata[] = { + BMAN_ERR_MDATA(0x03FF, 192, "Stockpile memory"), + BMAN_ERR_MDATA(0x00FF, 256, "SW portal ring memory port 1"), + BMAN_ERR_MDATA(0x00FF, 256, "SW portal ring memory port 2"), +}; +#define BMAN_ERR_MDATA_COUNT \ + (sizeof(error_mdata)/sizeof(struct bman_error_info_mdata)) + +/* Add this in Kconfig */ +#define BMAN_ERRS_TO_UNENABLE (BM_EIRQ_FLWI) + +/** + * bm_err_isr__ - Manipulate global interrupt registers + * @v: for accessors that write values, this is the 32-bit value + * + * Manipulates BMAN_ERR_ISR, BMAN_ERR_IER, BMAN_ERR_ISDR, BMAN_ERR_IIR. All + * manipulations except bm_err_isr_[un]inhibit() use 32-bit masks composed of + * the BM_EIRQ_*** definitions. Note that "bm_err_isr_enable_write" means + * "write the enable register" rather than "enable the write register"! + */ +#define bm_err_isr_status_read(bm) __bm_err_isr_read(bm, bm_isr_status) +#define bm_err_isr_status_clear(bm, m) __bm_err_isr_write(bm, bm_isr_status,m) +#define bm_err_isr_enable_read(bm) __bm_err_isr_read(bm, bm_isr_enable) +#define bm_err_isr_enable_write(bm, v) __bm_err_isr_write(bm, bm_isr_enable,v) +#define bm_err_isr_disable_read(bm) __bm_err_isr_read(bm, bm_isr_disable) +#define bm_err_isr_disable_write(bm, v) __bm_err_isr_write(bm, bm_isr_disable,v) +#define bm_err_isr_inhibit(bm) __bm_err_isr_write(bm, bm_isr_inhibit,1) +#define bm_err_isr_uninhibit(bm) __bm_err_isr_write(bm, bm_isr_inhibit,0) + +/* + * TODO: unimplemented registers + * + * BMAN_POOLk_SDCNT, BMAN_POOLk_HDCNT, BMAN_FULT, + * BMAN_VLDPL, BMAN_EECC, BMAN_SBET, BMAN_EINJ + */ + +/* Encapsulate "struct bman *" as a cast of the register space address. */ + +static struct bman *bm_create(void *regs) +{ + return (struct bman *)regs; +} + +static inline u32 __bm_in(struct bman *bm, u32 offset) +{ + return in_be32((void *)bm + offset); +} +static inline void __bm_out(struct bman *bm, u32 offset, u32 val) +{ + out_be32((void *)bm + offset, val); +} +#define bm_in(reg) __bm_in(bm, REG_##reg) +#define bm_out(reg, val) __bm_out(bm, REG_##reg, val) + +static u32 __bm_err_isr_read(struct bman *bm, enum bm_isr_reg n) +{ + return __bm_in(bm, REG_ERR_ISR + (n << 2)); +} + +static void __bm_err_isr_write(struct bman *bm, enum bm_isr_reg n, u32 val) +{ + __bm_out(bm, REG_ERR_ISR + (n << 2), val); +} + +#if 0 +static void bm_get_details(struct bman *bm, u8 *int_options, u8 *errata, + u8 *conf_options) +{ + u32 v = bm_in(IP_REV_1); + *int_options = (v >> 16) & 0xff; + *errata = (v >> 8) & 0xff; + *conf_options = v & 0xff; +} + +static u8 bm_get_corenet_sourceid(struct bman *bm) +{ + return bm_in(SRCIDR); +} + +static void bm_set_liodn(struct bman *bm, u16 liodn) +{ + bm_out(LIODNR, liodn & 0xfff); +} + +#endif + +static void bm_get_version(struct bman *bm, u16 *id, u8 *major, u8 *minor) +{ + u32 v = bm_in(IP_REV_1); + *id = (v >> 16); + *major = (v >> 8) & 0xff; + *minor = v & 0xff; +} + +static u32 __generate_thresh(u32 val, int roundup) +{ + u32 e = 0; /* co-efficient, exponent */ + int oddbit = 0; + while(val > 0xff) { + oddbit = val & 1; + val >>= 1; + e++; + if(roundup && oddbit) + val++; + } + DPA_ASSERT(e < 0x10); + return (val | (e << 8)); +} + +static void bm_set_pool(struct bman *bm, u8 pool, u32 swdet, u32 swdxt, + u32 hwdet, u32 hwdxt) +{ + DPA_ASSERT(pool < bman_pool_max); + bm_out(POOL_SWDET(pool), __generate_thresh(swdet, 0)); + bm_out(POOL_SWDXT(pool), __generate_thresh(swdxt, 1)); + bm_out(POOL_HWDET(pool), __generate_thresh(hwdet, 0)); + bm_out(POOL_HWDXT(pool), __generate_thresh(hwdxt, 1)); +} + +static void bm_set_memory(struct bman *bm, u64 ba, int prio, u32 size) +{ + u32 exp = ilog2(size); + /* choke if size isn't within range */ + DPA_ASSERT((size >= 4096) && (size <= 1073741824) && + is_power_of_2(size)); + /* choke if '[e]ba' has lower-alignment than 'size' */ + DPA_ASSERT(!(ba & (size - 1))); + bm_out(FBPR_BARE, upper_32_bits(ba)); + bm_out(FBPR_BAR, lower_32_bits(ba)); + bm_out(FBPR_AR, (prio ? 0x40000000 : 0) | (exp - 1)); +} + +/*****************/ +/* Config driver */ +/*****************/ + +/* We support only one of these. */ +static struct bman *bm; +static struct device_node *bm_node; + +/* TODO: Kconfig these? */ +#define DEFAULT_FBPR_SZ (PAGE_SIZE << 12) + +/* Parse the property to extract the memory location and size and + * memblock_reserve() it. If it isn't supplied, memblock_alloc() the default size. */ +static __init int parse_mem_property(struct device_node *node, const char *name, + dma_addr_t *addr, size_t *sz, int zero) +{ + const u32 *pint; + int ret; + + pint = of_get_property(node, name, &ret); + if (!pint || (ret != 16)) { + pr_info("No %s property '%s', using memblock_alloc(%016zx)\n", + node->full_name, name, *sz); + *addr = memblock_alloc(*sz, *sz); + if (zero) + memset(phys_to_virt(*addr), 0, *sz); + return 0; + } + pr_info("Using %s property '%s'\n", node->full_name, name); + /* If using a "zero-pma", don't try to zero it, even if you asked */ + if (zero && of_find_property(node, "zero-pma", &ret)) { + pr_info(" it's a 'zero-pma', not zeroing from s/w\n"); + zero = 0; + } + *addr = ((u64)pint[0] << 32) | (u64)pint[1]; + *sz = ((u64)pint[2] << 32) | (u64)pint[3]; + /* Keep things simple, it's either all in the DRAM range or it's all + * outside. */ + if (*addr < memblock_end_of_DRAM()) { + BUG_ON((u64)*addr + (u64)*sz > memblock_end_of_DRAM()); + if (memblock_reserve(*addr, *sz) < 0) { + pr_err("Failed to reserve %s\n", name); + return -ENOMEM; + } + if (zero) + memset(phys_to_virt(*addr), 0, *sz); + } else if (zero) { + /* map as cacheable, non-guarded */ + void *tmpp = ioremap_prot(*addr, *sz, 0); + memset(tmpp, 0, *sz); + iounmap(tmpp); + } + return 0; +} + +static int __init fsl_bman_init(struct device_node *node) +{ + struct resource res; + u32 __iomem *regs; + const char *s; + dma_addr_t fbpr_a = 0; /* gcc doesn't know this is unnecessary */ + size_t fbpr_sz = DEFAULT_FBPR_SZ; + int ret, standby = 0; + u16 id; + u8 major, minor; + + ret = of_address_to_resource(node, 0, &res); + if (ret) { + pr_err("Can't get %s property 'reg'\n", + node->full_name); + return ret; + } + s = of_get_property(node, "fsl,hv-claimable", &ret); + if (s && !strcmp(s, "standby")) + standby = 1; + if (!standby) { + ret = parse_mem_property(node, "fsl,bman-fbpr", + &fbpr_a, &fbpr_sz, 0); + BUG_ON(ret); + } + /* Global configuration */ + regs = ioremap(res.start, res.end - res.start + 1); + bm = bm_create(regs); + BUG_ON(!bm); + bm_node = node; + bm_get_version(bm, &id, &major, &minor); + pr_info("Bman ver:%04x,%02x,%02x\n", id, major, minor); + if ((major == 1) && (minor == 0)) { + bman_ip_rev = BMAN_REV10; + bman_pool_max = 64; + } else if ((major == 2) && (minor == 0)) { + bman_ip_rev = BMAN_REV20; + bman_pool_max = 8; + } else { + pr_warning("unknown Bman version, default to rev1.0\n"); + } + + if (standby) { + pr_info(" -> in standby mode\n"); + return 0; + } + /* FBPR memory */ + bm_set_memory(bm, fbpr_a, 0, fbpr_sz); + return 0; +} + +int bman_have_ccsr(void) +{ + return (bm ? 1 : 0); +} + +int bm_pool_set(u32 bpid, const u32 *thresholds) +{ + if (!bm) + return -ENODEV; + bm_set_pool(bm, bpid, thresholds[0], thresholds[1], + thresholds[2], thresholds[3]); + return 0; +} +EXPORT_SYMBOL(bm_pool_set); + +__init void bman_init_early(void) +{ + struct device_node *dn; + for_each_compatible_node(dn, NULL, "fsl,bman") { + if (bm) + pr_err("%s: only one 'fsl,bman' allowed\n", + dn->full_name); + else { + int ret = fsl_bman_init(dn); + BUG_ON(ret); + } + } +} + +static void log_edata_bits(u32 bit_count) +{ + u32 i, j, mask = 0xffffffff; + + pr_warning("Bman ErrInt, EDATA:\n"); + i = bit_count/32; + if (bit_count%32) { + i++; + mask = ~(mask << bit_count%32); + } + j = 16-i; + pr_warning(" 0x%08x\n", bm_in(EDATA(j)) & mask); + j++; + for (; j < 16; j++) + pr_warning(" 0x%08x\n", bm_in(EDATA(j))); +} + +static void log_additional_error_info(u32 isr_val, u32 ecsr_val) +{ + union bman_ecir ecir_val; + union bman_eadr eadr_val; + + ecir_val.ecir_raw = bm_in(ECIR); + /* Is portal info valid */ + if (ecsr_val & PORTAL_ECSR_ERR) { + pr_warning("Bman ErrInt: SWP id %d, numb %d, pid %d\n", + ecir_val.info.portal_num, ecir_val.info.numb, + ecir_val.info.pid); + } + if (ecsr_val & (BM_EIRQ_SBEI|BM_EIRQ_MBEI)) { + eadr_val.eadr_raw = bm_in(EADR); + pr_warning("Bman ErrInt: EADR Memory: %s, 0x%x\n", + error_mdata[eadr_val.info.memid].txt, + error_mdata[eadr_val.info.memid].addr_mask + & eadr_val.info.eadr); + log_edata_bits(error_mdata[eadr_val.info.memid].bits); + } +} + +/* Bman interrupt handler */ +static irqreturn_t bman_isr(int irq, void *ptr) +{ + u32 isr_val, ier_val, ecsr_val, isr_mask, i; + + ier_val = bm_err_isr_enable_read(bm); + isr_val = bm_err_isr_status_read(bm); + ecsr_val = bm_in(ECSR); + isr_mask = isr_val & ier_val; + + if (!isr_mask) + return IRQ_NONE; + for (i = 0; i < BMAN_HWE_COUNT; i++) { + if (bman_hwerr_txts[i].mask & isr_mask) { + pr_warning("Bman ErrInt: %s\n", bman_hwerr_txts[i].txt); + if (bman_hwerr_txts[i].mask & ecsr_val) { + log_additional_error_info(isr_mask, ecsr_val); + /* Re-arm error capture registers */ + bm_out(ECSR, ecsr_val); + } + if (bman_hwerr_txts[i].mask & BMAN_ERRS_TO_UNENABLE) { + pr_devel("Bman un-enabling error 0x%x\n", + bman_hwerr_txts[i].mask); + ier_val &= ~bman_hwerr_txts[i].mask; + bm_err_isr_enable_write(bm, ier_val); + } + } + } + bm_err_isr_status_clear(bm, isr_val); + return IRQ_HANDLED; +} + +static int __bind_irq(void) +{ + int ret, err_irq; + + err_irq = of_irq_to_resource(bm_node, 0, NULL); + if (err_irq == NO_IRQ) { + pr_info("Can't get %s property '%s'\n", bm_node->full_name, + "interrupts"); + return -ENODEV; + } + ret = request_irq(err_irq, bman_isr, IRQF_SHARED, "bman-err", bm_node); + if (ret) { + pr_err("request_irq() failed %d for '%s'\n", ret, + bm_node->full_name); + return -ENODEV; + } + /* Disable Buffer Pool State Change */ + bm_err_isr_disable_write(bm, BM_EIRQ_BSCN); + /* Write-to-clear any stale bits, (eg. starvation being asserted prior + * to resource allocation during driver init). */ + bm_err_isr_status_clear(bm, 0xffffffff); + /* Enable Error Interrupts */ + bm_err_isr_enable_write(bm, 0xffffffff); + return 0; +} + +/* Initialise Error Interrupt Handler */ +int bman_init_error_int(struct device_node *node) +{ + if (!bman_have_ccsr()) + return 0; + if (node != bm_node) + return -EINVAL; + return __bind_irq(); +} + +#ifdef CONFIG_SYSFS + +#define DRV_NAME "fsl-bman" + +static ssize_t show_fbpr_fpc(struct device *dev, + struct device_attribute *dev_attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%u\n", bm_in(FBPR_FPC)); +}; + +static ssize_t show_pool_count(struct device *dev, + struct device_attribute *dev_attr, char *buf) +{ + u32 data; + int i; + + if (!sscanf(dev_attr->attr.name, "%d", &i)) + return -EINVAL; + data = bm_in(POOL_CONTENT(i)); + return snprintf(buf, PAGE_SIZE, "%d\n", data); +}; + +static ssize_t show_err_isr(struct device *dev, + struct device_attribute *dev_attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "0x%08x\n", bm_in(ERR_ISR)); +}; + +static ssize_t show_sbec(struct device *dev, + struct device_attribute *dev_attr, char *buf) +{ + int i; + + if (!sscanf(dev_attr->attr.name, "sbec_%d", &i)) + return -EINVAL; + return snprintf(buf, PAGE_SIZE, "%u\n", bm_in(SBEC(i))); +}; + +static DEVICE_ATTR(err_isr, S_IRUSR, show_err_isr, NULL); +static DEVICE_ATTR(fbpr_fpc, S_IRUSR, show_fbpr_fpc, NULL); + +/* Didn't use DEVICE_ATTR as 64 of this would be required. + * Initialize them when needed. */ +static char *name_attrs_pool_count; /* "xx" + null-terminator */ +static struct device_attribute *dev_attr_buffer_pool_count; + +static DEVICE_ATTR(sbec_0, S_IRUSR, show_sbec, NULL); +static DEVICE_ATTR(sbec_1, S_IRUSR, show_sbec, NULL); + +static struct attribute *bman_dev_attributes[] = { + &dev_attr_fbpr_fpc.attr, + &dev_attr_err_isr.attr, + NULL +}; + +static struct attribute *bman_dev_ecr_attributes[] = { + &dev_attr_sbec_0.attr, + &dev_attr_sbec_1.attr, + NULL +}; + +static struct attribute **bman_dev_pool_count_attributes; + + +/* root level */ +static const struct attribute_group bman_dev_attr_grp = { + .name = NULL, + .attrs = bman_dev_attributes +}; +static const struct attribute_group bman_dev_ecr_grp = { + .name = "error_capture", + .attrs = bman_dev_ecr_attributes +}; +static struct attribute_group bman_dev_pool_countent_grp = { + .name = "pool_count", +}; + +static int of_fsl_bman_remove(struct platform_device *ofdev) +{ + sysfs_remove_group(&ofdev->dev.kobj, &bman_dev_attr_grp); + return 0; +}; + +static int of_fsl_bman_probe(struct platform_device *ofdev) +{ + int ret, i; + + ret = sysfs_create_group(&ofdev->dev.kobj, &bman_dev_attr_grp); + if (ret) + goto done; + ret = sysfs_create_group(&ofdev->dev.kobj, &bman_dev_ecr_grp); + if (ret) + goto del_group_0; + + name_attrs_pool_count = kmalloc(sizeof(char) * bman_pool_max * 3, + GFP_KERNEL); + if (!name_attrs_pool_count) { + pr_err("Can't alloc name_attrs_pool_count\n"); + goto del_group_1; + } + + dev_attr_buffer_pool_count = kmalloc(sizeof(struct device_attribute) * + bman_pool_max, GFP_KERNEL); + if (!dev_attr_buffer_pool_count) { + pr_err("Can't alloc dev_attr-buffer_pool_count\n"); + goto del_group_2; + } + + bman_dev_pool_count_attributes = kmalloc(sizeof(struct attribute *) * + (bman_pool_max + 1), GFP_KERNEL); + if (!bman_dev_pool_count_attributes) { + pr_err("can't alloc bman_dev_pool_count_attributes\n"); + goto del_group_3; + } + + for (i = 0; i < (bman_pool_max + 1); i++) { + bman_dev_pool_count_attributes[i] = + kmalloc(sizeof(struct attribute), GFP_KERNEL); + if (!bman_dev_pool_count_attributes[i]) { + pr_err("cannot alloc for each" + " bman_dev_pool_count_attributes\n"); + goto del_group_3; + } + } + + for (i = 0; i < bman_pool_max; i++) { + ret = scnprintf((name_attrs_pool_count + i * 3), 3, "%d", i); + if (!ret) + goto del_group_4; + dev_attr_buffer_pool_count[i].attr.name = + (name_attrs_pool_count + i * 3); + dev_attr_buffer_pool_count[i].attr.mode = S_IRUSR; + dev_attr_buffer_pool_count[i].show = show_pool_count; + bman_dev_pool_count_attributes[i] = + &dev_attr_buffer_pool_count[i].attr; + } + bman_dev_pool_count_attributes[bman_pool_max] = NULL; + + bman_dev_pool_countent_grp.attrs = bman_dev_pool_count_attributes; + + ret = sysfs_create_group(&ofdev->dev.kobj, &bman_dev_pool_countent_grp); + if (ret) + goto del_group_4; + + goto done; + +del_group_4: + for (i = 0; i < (bman_pool_max + 1); i++) + kfree(bman_dev_pool_count_attributes[i]); + kfree(bman_dev_pool_count_attributes); +del_group_3: + kfree(dev_attr_buffer_pool_count); +del_group_2: + kfree(name_attrs_pool_count); +del_group_1: + sysfs_remove_group(&ofdev->dev.kobj, &bman_dev_ecr_grp); +del_group_0: + sysfs_remove_group(&ofdev->dev.kobj, &bman_dev_attr_grp); +done: + if (ret) + dev_err(&ofdev->dev, + "Cannot create dev attributes ret=%d\n", ret); + return ret; +}; + +static struct of_device_id of_fsl_bman_ids[] = { + { + .compatible = "fsl,bman", + }, + {} +}; +MODULE_DEVICE_TABLE(of, of_fsl_bman_ids); + +static struct platform_driver of_fsl_bman_driver = { + .driver = { + .owner = THIS_MODULE, + .name = DRV_NAME, + .of_match_table = of_fsl_bman_ids, + }, + .probe = of_fsl_bman_probe, + .remove = of_fsl_bman_remove, +}; + +static int bman_ctrl_init(void) +{ + return platform_driver_register(&of_fsl_bman_driver); +} + +static void bman_ctrl_exit(void) +{ + platform_driver_unregister(&of_fsl_bman_driver); +} + +module_init(bman_ctrl_init); +module_exit(bman_ctrl_exit); + +#endif /* CONFIG_SYSFS */ --- linux-3.13.0.orig/drivers/staging/fsl_qbman/bman_debugfs.c +++ linux-3.13.0/drivers/staging/fsl_qbman/bman_debugfs.c @@ -0,0 +1,121 @@ +/* Copyright 2010-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +#include +#include +#include +#include +#include + +static struct dentry *dfs_root; /* debugfs root directory */ + +/******************************************************************************* + * Query Buffer Pool State + ******************************************************************************/ +static int query_bp_state_show(struct seq_file *file, void *offset) +{ + int ret; + struct bm_pool_state state; + int i, j; + u32 mask; + + memset(&state, 0, sizeof(struct bm_pool_state)); + ret = bman_query_pools(&state); + if (ret) { + seq_printf(file, "Error %d\n", ret); + return 0; + } + seq_printf(file, "bp_id free_buffers_avail bp_depleted\n"); + for (i = 0; i < 2; i++) { + mask = 0x80000000; + for (j = 0; j < 32; j++) { + seq_printf(file, + " %-2u %-3s %-3s\n", + (i*32)+j, + (state.as.state.__state[i] & mask) ? "no" : "yes", + (state.ds.state.__state[i] & mask) ? "yes" : "no"); + mask >>= 1; + } + } + return 0; +} + +static int query_bp_state_open(struct inode *inode, struct file *file) +{ + return single_open(file, query_bp_state_show, NULL); +} + +static const struct file_operations query_bp_state_fops = { + .owner = THIS_MODULE, + .open = query_bp_state_open, + .read = seq_read, + .release = single_release, +}; + +static int __init bman_debugfs_module_init(void) +{ + int ret = 0; + struct dentry *d; + + dfs_root = debugfs_create_dir("bman", NULL); + + if (dfs_root == NULL) { + ret = -ENOMEM; + pr_err("Cannot create bman debugfs dir\n"); + goto _return; + } + d = debugfs_create_file("query_bp_state", + S_IRUGO, + dfs_root, + NULL, + &query_bp_state_fops); + if (d == NULL) { + ret = -ENOMEM; + pr_err("Cannot create query_bp_state\n"); + goto _return; + } + return 0; + +_return: + if (dfs_root) + debugfs_remove_recursive(dfs_root); + return ret; +} + +static void __exit bman_debugfs_module_exit(void) +{ + debugfs_remove_recursive(dfs_root); +} + + +module_init(bman_debugfs_module_init); +module_exit(bman_debugfs_module_exit); +MODULE_LICENSE("Dual BSD/GPL"); + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/bman_driver.c +++ linux-3.13.0/drivers/staging/fsl_qbman/bman_driver.c @@ -0,0 +1,588 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include +#include "bman_private.h" + +/* + * Global variables of the max portal/pool number this bman version supported + */ +u16 bman_ip_rev; +EXPORT_SYMBOL(bman_ip_rev); +u16 bman_pool_max; +EXPORT_SYMBOL(bman_pool_max); + +/*****************/ +/* Portal driver */ +/*****************/ + +/* Compatibility behaviour (when no bpool-range is present) is that; + * (a) on a control plane, all pools that aren't explicitly mentioned in the dtb + * are available for allocation, + * (b) on a non-control plane, there is never any allocation possible at all. + * + * New behaviour is that if any "fsl,bpool-range" nodes are declared, they + * declare what is available for allocation, and this is independent of which + * pools are/aren't mentioned in the dtb. Eg. to stipulate that no allocation is + * possible, a fsl,bpool-range should be specified with zero items in it. + * + * This "pools" struct contains the allocator, and "explicit allocator" + * indicates whether the range is seeded explicitly (via at least one range) or + * implicitly (by being the set of pools that aren't declared). + */ +static struct bman_depletion pools; +static u8 num_pools; +static DEFINE_SPINLOCK(pools_lock); +static int explicit_allocator; + +static struct dpa_uio_class bman_uio = { + .list = LIST_HEAD_INIT(bman_uio.list), + .dev_prefix = "bman-uio-" +}; +const struct dpa_uio_class *dpa_uio_bman(void) +{ + return &bman_uio; +} +EXPORT_SYMBOL(dpa_uio_bman); + +static int __bm_pool_add(u32 bpid, u32 *cfg, int triplets) +{ + u64 total = 0; + BUG_ON(bpid >= bman_pool_max); +#ifdef CONFIG_FSL_BMAN_PORTAL + while (triplets--) { + struct bman_pool_params params = { + .bpid = bpid, + .flags = BMAN_POOL_FLAG_ONLY_RELEASE + }; + u64 c = ((u64)cfg[0] << 32) | cfg[1]; + u64 d = ((u64)cfg[2] << 32) | cfg[3]; + u64 b = ((u64)cfg[4] << 32) | cfg[5]; + struct bman_pool *pobj = bman_new_pool(¶ms); + if (!pobj) + return -ENOMEM; + while (c) { + struct bm_buffer bufs[8]; + int ret, num_bufs = 0; + do { + BUG_ON(b > 0xffffffffffffull); + bufs[num_bufs].bpid = bpid; + bm_buffer_set64(&bufs[num_bufs++], b); + b += d; + } while (--c && (num_bufs < 8)); + ret = bman_release(pobj, bufs, num_bufs, + BMAN_RELEASE_FLAG_WAIT); + if (ret) + panic("Seeding reserved buffer pool failed\n"); + total += num_bufs; + } + bman_free_pool(pobj); + cfg += 6; + } +#endif + /* Remove this pool from the allocator (by treating its declaration as + * an implicit "reservation") iff the allocator is *not* being set up + * explicitly defined via "bpool-range" nodes. */ + if (!explicit_allocator && !bman_depletion_get(&pools, bpid)) { + bman_depletion_set(&pools, bpid); + num_pools++; + } + if (total) + pr_info("Bman: reserved bpid %d, seeded %lld items\n", bpid, + total); + else + pr_info("Bman: reserved bpid %d\n", bpid); + return 0; +} + +int bm_pool_new(u32 *bpid) +{ + int ret = 0, b = bman_pool_max; + spin_lock(&pools_lock); + if (num_pools >= bman_pool_max) + ret = -ENOMEM; + else { + while (b-- && bman_depletion_get(&pools, b)) + ; + BUG_ON(b < 0); + bman_depletion_set(&pools, b); + *bpid = b; + num_pools++; + } + spin_unlock(&pools_lock); + return ret; +} +EXPORT_SYMBOL(bm_pool_new); + +void bm_pool_free(u32 bpid) +{ + spin_lock(&pools_lock); + BUG_ON(bpid >= bman_pool_max); + BUG_ON(!bman_depletion_get(&pools, bpid)); + bman_depletion_unset(&pools, bpid); + num_pools--; + spin_unlock(&pools_lock); +} +EXPORT_SYMBOL(bm_pool_free); + +#ifdef CONFIG_FSL_BMAN_PORTAL +/* To understand the use of this structure and the flow of operation for all + * this portal-setup code, please see qman_driver.c. The Bman case is much the + * same, but simpler (no Qman-specific fiddly bits). */ +struct affine_portal_data { + struct completion done; + const struct bm_portal_config *pconfig; + struct bman_portal *redirect; + int recovery_mode; + struct bman_portal *portal; +}; + +static __init int thread_init_affine_portal(void *__data) +{ + struct affine_portal_data *data = __data; + const struct bm_portal_config *pconfig = data->pconfig; + if (data->redirect) + data->portal = bman_create_affine_slave(data->redirect); + else { + data->portal = bman_create_affine_portal(pconfig, + data->recovery_mode); +#ifdef CONFIG_FSL_DPA_PIRQ_SLOW + if (data->portal) + bman_irqsource_add(BM_PIRQ_RCRI | BM_PIRQ_BSCN); +#endif + } + complete(&data->done); + return 0; +} + +static __init struct bman_portal *init_affine_portal( + struct bm_portal_config *pconfig, + int cpu, struct bman_portal *redirect, + int recovery_mode) +{ + struct affine_portal_data data = { + .done = COMPLETION_INITIALIZER_ONSTACK(data.done), + .pconfig = pconfig, + .redirect = redirect, + .recovery_mode = recovery_mode, + .portal = NULL + }; + struct task_struct *k = kthread_create(thread_init_affine_portal, &data, + "bman_affine%d", cpu); + int ret; + if (IS_ERR(k)) { + pr_err("Failed to init %sBman affine portal for cpu %d\n", + redirect ? "(slave) " : "", cpu); + return NULL; + } + kthread_bind(k, cpu); + wake_up_process(k); + wait_for_completion(&data.done); + ret = kthread_stop(k); + if (ret) { + pr_err("Bman portal initialisation failed, cpu %d, code %d\n", + cpu, ret); + return NULL; + } + if (data.portal) + pr_info("Bman portal %sinitialised, cpu %d\n", + redirect ? "(slave) " : + pconfig->public_cfg.is_shared ? "(shared) " : "", cpu); + return data.portal; +} +#endif + +static struct bm_portal_config * __init fsl_bman_portal_init( + struct device_node *node) +{ + struct bm_portal_config *pcfg; + const u32 *index; + const phandle *ph = NULL; + int irq, ret; + + pcfg = kmalloc(sizeof(*pcfg), GFP_KERNEL); + if (!pcfg) { + pr_err("can't allocate portal config"); + return NULL; + } + + if (of_device_is_compatible(node, "fsl,bman-portal-1.0")) { + bman_ip_rev = BMAN_REV10; + bman_pool_max = 64; + } else if (of_device_is_compatible(node, "fsl,bman-portal-2.0")) { + bman_ip_rev = BMAN_REV20; + bman_pool_max = 8; + } + + ret = of_address_to_resource(node, BM_ADDR_CE, + &pcfg->addr_phys[BM_ADDR_CE]); + if (ret) { + pr_err("Can't get %s property 'reg::CE'\n", node->full_name); + goto err; + } + ret = of_address_to_resource(node, BM_ADDR_CI, + &pcfg->addr_phys[BM_ADDR_CI]); + if (ret) { + pr_err("Can't get %s property 'reg::CI'\n", node->full_name); + goto err; + } + index = of_get_property(node, "cell-index", &ret); + if (!index || (ret != 4)) { + pr_err("Can't get %s property '%s'\n", node->full_name, + "cell-index"); + goto err; + } + ph = of_get_property(node, "cpu-handle", &ret); + if (ph) { + if (ret != sizeof(phandle)) { + pr_err("Malformed %s property '%s'\n", node->full_name, + "cpu-handle"); + goto err; + } + ret = check_cpu_phandle(*ph); + if (ret < 0) + goto err; + pcfg->public_cfg.cpu = ret; + } else + pcfg->public_cfg.cpu = -1; + + irq = irq_of_parse_and_map(node, 0); + if (irq == NO_IRQ) { + pr_err("Can't get %s property 'interrupts'\n", node->full_name); + goto err; + } + pcfg->public_cfg.irq = irq; + pcfg->public_cfg.index = *index; + bman_depletion_fill(&pcfg->public_cfg.mask); + + if (of_get_property(node, "fsl,usdpaa-portal", &ret)) { + struct dpa_uio_portal *u = kmalloc(sizeof(*u), GFP_KERNEL); + if (!u) + goto err; + u->type = dpa_uio_portal_bman; + u->bm_cfg = pcfg; + list_add_tail(&u->node, &bman_uio.list); + /* Return NULL, otherwise the kernel may share it on CPUs that + * don't have their own portals, which would be ... *bad*. */ + return NULL; + } + + /* Map the portals now we know they aren't for UIO (the UIO code doesn't + * need the CE mapping, and so will do its own CI-only mapping). */ + pcfg->addr_virt[BM_ADDR_CE] = ioremap_prot( + pcfg->addr_phys[BM_ADDR_CE].start, + resource_size(&pcfg->addr_phys[BM_ADDR_CE]), + 0); + pcfg->addr_virt[BM_ADDR_CI] = ioremap_prot( + pcfg->addr_phys[BM_ADDR_CI].start, + resource_size(&pcfg->addr_phys[BM_ADDR_CI]), + _PAGE_GUARDED | _PAGE_NO_CACHE); + return pcfg; +err: + kfree(pcfg); + return NULL; +} + +static void __init fsl_bman_portal_destroy(struct bm_portal_config *pcfg) +{ + iounmap(pcfg->addr_virt[BM_ADDR_CE]); + iounmap(pcfg->addr_virt[BM_ADDR_CI]); + kfree(pcfg); +} + +static int __init fsl_bpool_init(struct device_node *node) +{ + int ret; + u32 *cfg = NULL, *thresh; + struct device_node *tmp_node; + u32 *bpid = (u32 *)of_get_property(node, "fsl,bpid", &ret); + if (!bpid || (ret!= 4)) { + pr_err("Can't get %s property 'fsl,bpid'\n", node->full_name); + return -ENODEV; + } + thresh = (u32 *)of_get_property(node, "fsl,bpool-thresholds", &ret); + if (thresh) { + if (ret != 16) { + pr_err("Invalid %s property '%s'\n", + node->full_name, "fsl,bpool-thresholds"); + return -ENODEV; + } +#ifndef CONFIG_FSL_BMAN_CONFIG + pr_err("Ignoring %s property '%s', no CCSR support\n", + node->full_name, "fsl,bpool-thresholds"); +#endif + } + /* If rebooted, we should not re-seed any pools via bpool-cfg. */ + /* TODO: parsing hypervisor fields to determine qualitative things like + * "was I rebooted" should probably be wrapped in fsl_hypervisor.h. */ + tmp_node = of_find_node_by_name(NULL, "hypervisor"); + if (!tmp_node || !of_find_property(tmp_node, "fsl,hv-stopped-by", + &ret)) + cfg = (u32 *)of_get_property(node, "fsl,bpool-cfg", &ret); + if (cfg && (!ret || (ret % 24))) { + pr_err("Invalid %s property '%s'\n", node->full_name, + "fsl,bpool-cfg"); + return -ENODEV; + } + if (cfg) + ret = __bm_pool_add(*bpid, cfg, ret / 24); + else + ret = __bm_pool_add(*bpid, NULL, 0); + if (ret) { + pr_err("Can't reserve bpid %d from node %s\n", *bpid, + node->full_name); + return ret; + } +#ifdef CONFIG_FSL_BMAN_CONFIG + if (thresh) { + ret = bm_pool_set(*bpid, thresh); + if (ret) + pr_err("No CCSR node for %s property '%s'\n", + node->full_name, "fsl,bpool-thresholds"); + } +#endif + return ret; +} + +static int __init fsl_bpool_range_init(struct device_node *node, + int recovery_mode) +{ + int ret, warned = 0; + u32 bpid; + u32 *range = (u32 *)of_get_property(node, "fsl,bpool-range", &ret); + if (!range) { + pr_err("No 'fsl,bpool-range' property in node %s\n", + node->full_name); + return -EINVAL; + } + if (ret != 8) { + pr_err("'fsl,bpool-range' is not a 2-cell range in node %s\n", + node->full_name); + return -EINVAL; + } + for (bpid = range[0]; bpid < (range[0] + range[1]); bpid++) { + if (bpid >= bman_pool_max) { + pr_err("BPIDs out of range in node %s\n", + node->full_name); + return -EINVAL; + } + if (!bman_depletion_get(&pools, bpid)) { + if (!warned) { + warned = 1; + pr_err("BPID overlap in node %s, ignoring\n", + node->full_name); + } + } else { + bman_depletion_unset(&pools, bpid); + num_pools--; + } + } +#ifdef CONFIG_FSL_BMAN_PORTAL + /* If in recovery mode *and* we are using a private BPID allocation + * range, then automatically clean up all BPIDs in that range so we can + * automatically exit recovery mode too. */ + if (recovery_mode) { + for (bpid = range[0]; bpid < (range[0] + range[1]); bpid++) { + ret = bman_recovery_cleanup_bpid(bpid); + if (ret) { + pr_err("Failed to recovery BPID %d\n", bpid); + return ret; + } + } + } +#else + BUG_ON(recovery_mode); +#endif + pr_info("Bman: BPID allocator includes range %d:%d%s\n", + range[0], range[1], recovery_mode ? " (recovered)" : ""); + return 0; +} + +#ifdef CONFIG_FSL_BMAN_PORTAL +static __init int __leave_recovery(void *__data) +{ + struct completion *done = __data; + bman_recovery_exit_local(); + complete(done); + return 0; +} + +int bman_recovery_exit(void) +{ + struct completion done = COMPLETION_INITIALIZER_ONSTACK(done); + unsigned int cpu; + + for_each_cpu(cpu, bman_affine_cpus()) { + struct task_struct *k = kthread_create(__leave_recovery, &done, + "bman_recovery"); + int ret; + if (IS_ERR(k)) { + pr_err("Thread failure (recovery) on cpu %d\n", cpu); + return -ENOMEM; + } + kthread_bind(k, cpu); + wake_up_process(k); + wait_for_completion(&done); + ret = kthread_stop(k); + if (ret) { + pr_err("Failed to exit recovery on cpu %d\n", cpu); + return ret; + } + pr_info("Bman portal exited recovery, cpu %d\n", cpu); + } + return 0; +} +EXPORT_SYMBOL(bman_recovery_exit); +#endif + +static __init int bman_init(void) +{ +#ifdef CONFIG_FSL_BMAN_PORTAL + struct cpumask primary_cpus = *cpu_none_mask; + struct cpumask slave_cpus = *cpu_online_mask; + struct bman_portal *sharing_portal = NULL; + int sharing_cpu = -1; +#endif + struct device_node *dn; + struct bm_portal_config *pcfg; + int ret, recovery_mode = 0; + LIST_HEAD(cfg_list); + + for_each_compatible_node(dn, NULL, "fsl,bman") { + if (!bman_init_error_int(dn)) + pr_info("Bman err interrupt handler present\n"); + else + pr_err("Bman err interrupt handler missing\n"); + } + if (!bman_have_ccsr()) { + /* If there's no CCSR, our bpid allocator is empty unless + * fsl,bpool-range nodes are used. */ + bman_depletion_fill(&pools); + num_pools = bman_pool_max; + } +#ifdef CONFIG_FSL_BMAN_PORTAL + if (fsl_dpa_should_recover()) + recovery_mode = 1; + for_each_compatible_node(dn, NULL, "fsl,bman-portal") { + pcfg = fsl_bman_portal_init(dn); + if (pcfg) { + if (pcfg->public_cfg.cpu >= 0) { + cpumask_set_cpu(pcfg->public_cfg.cpu, + &primary_cpus); + list_add(&pcfg->list, &cfg_list); + } else + fsl_bman_portal_destroy(pcfg); + } + } + /* only consider "online" CPUs */ + cpumask_and(&primary_cpus, &primary_cpus, cpu_online_mask); + if (cpumask_empty(&primary_cpus)) + /* No portals, we're done */ + return 0; + if (!cpumask_subset(cpu_online_mask, &primary_cpus)) { + /* Need to do some sharing. In lieu of anything more scientific + * (or configurable), we pick the last-most CPU that has a + * portal and share that one. */ + int next = cpumask_first(&primary_cpus); + while (next < nr_cpu_ids) { + sharing_cpu = next; + next = cpumask_next(next, &primary_cpus); + } + } + /* Parsing is done and sharing decisions are made, now initialise the + * portals and determine which "slave" CPUs are left over. */ + list_for_each_entry(pcfg, &cfg_list, list) { + struct bman_portal *p; + int is_shared = (!sharing_portal && (sharing_cpu >= 0) && + (pcfg->public_cfg.cpu == sharing_cpu)); + pcfg->public_cfg.is_shared = is_shared; + /* If it's not mapped to a CPU, or another portal is already + * initialised to the same CPU, skip this portal. */ + if (pcfg->public_cfg.cpu < 0 || !cpumask_test_cpu( + pcfg->public_cfg.cpu, &slave_cpus)) + continue; + p = init_affine_portal(pcfg, pcfg->public_cfg.cpu, NULL, + recovery_mode); + if (p) { + if (is_shared) + sharing_portal = p; + cpumask_clear_cpu(pcfg->public_cfg.cpu, &slave_cpus); + } + } + + if (sharing_portal) { + int loop; + for_each_cpu(loop, &slave_cpus) { + struct bman_portal *p = init_affine_portal(NULL, loop, + sharing_portal, recovery_mode); + if (!p) + pr_err("Failed slave Bman portal for cpu %d\n", + loop); + } + } +#else + for_each_compatible_node(dn, NULL, "fsl,bman-portal") { + pcfg = fsl_bman_portal_init(dn); + if (pcfg) + /* No kernel portal support, so if USDPAA didn't consume + * the portal, we've no other use for it. */ + fsl_bman_portal_destroy(pcfg); + } +#endif + for_each_compatible_node(dn, NULL, "fsl,bpool-range") { + if (!explicit_allocator) { + explicit_allocator = 1; + bman_depletion_fill(&pools); + num_pools = 64; + } + ret = fsl_bpool_range_init(dn, recovery_mode); + if (ret) + return ret; + } +#ifdef CONFIG_FSL_BMAN_PORTAL + /* If using private BPID allocation, exit recovery mode automatically + * (ie. after automatic recovery) */ + if (recovery_mode && explicit_allocator) { + ret = bman_recovery_exit(); + if (ret) + return ret; + } +#endif + for_each_compatible_node(dn, NULL, "fsl,bpool") { + ret = fsl_bpool_init(dn); + if (ret) + return ret; + } + pr_info("Bman portals initialised\n"); + return 0; +} +subsys_initcall(bman_init); --- linux-3.13.0.orig/drivers/staging/fsl_qbman/bman_high.c +++ linux-3.13.0/drivers/staging/fsl_qbman/bman_high.c @@ -0,0 +1,1043 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "bman_low.h" + +/* Compilation constants */ +#define RCR_THRESH 2 /* reread h/w CI when running out of space */ +#define IRQNAME "BMan portal %d" +#define MAX_IRQNAME 16 /* big enough for "BMan portal %d" */ + +struct bman_portal { + struct bm_portal p; + /* 2-element array. pools[0] is mask, pools[1] is snapshot. */ + struct bman_depletion *pools; + int thresh_set; + unsigned long irq_sources; + u32 slowpoll; /* only used when interrupts are off */ +#ifdef CONFIG_FSL_DPA_CAN_WAIT_SYNC + struct bman_pool *rcri_owned; /* only 1 release WAIT_SYNC at a time */ +#endif +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + spinlock_t sharing_lock; /* only used if is_shared */ + int is_shared; + struct bman_portal *sharing_redirect; +#endif + /* When the cpu-affine portal is activated, this is non-NULL */ + const struct bm_portal_config *config; + /* 64-entry hash-table of pool objects that are tracking depletion + * entry/exit (ie. BMAN_POOL_FLAG_DEPLETION). This isn't fast-path, so + * we're not fussy about cache-misses and so forth - whereas the above + * members should all fit in one cacheline. + * BTW, with 64 entries in the hash table and 64 buffer pools to track, + * you'll never guess the hash-function ... */ + struct bman_pool *cb[64]; + char irqname[MAX_IRQNAME]; +}; + +/* For an explanation of the locking, redirection, or affine-portal logic, + * please consult the Qman driver for details. This is the same, only simpler + * (no fiddly Qman-specific bits.) */ +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE +#define PORTAL_IRQ_LOCK(p, irqflags) \ + do { \ + if ((p)->is_shared) \ + spin_lock_irqsave(&(p)->sharing_lock, irqflags); \ + else \ + local_irq_save(irqflags); \ + } while (0) +#define PORTAL_IRQ_UNLOCK(p, irqflags) \ + do { \ + if ((p)->is_shared) \ + spin_unlock_irqrestore(&(p)->sharing_lock, irqflags); \ + else \ + local_irq_restore(irqflags); \ + } while (0) +#else +#define PORTAL_IRQ_LOCK(p, irqflags) local_irq_save(irqflags) +#define PORTAL_IRQ_UNLOCK(p, irqflags) local_irq_restore(irqflags) +#endif + +static cpumask_t affine_mask; +static DEFINE_SPINLOCK(affine_mask_lock); +static DEFINE_PER_CPU(struct bman_portal, bman_affine_portal); +static inline struct bman_portal *get_raw_affine_portal(void) +{ + return &get_cpu_var(bman_affine_portal); +} +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE +static inline struct bman_portal *get_affine_portal(void) +{ + struct bman_portal *p = get_raw_affine_portal(); + if (p->sharing_redirect) + return p->sharing_redirect; + return p; +} +#else +#define get_affine_portal() get_raw_affine_portal() +#endif +static inline void put_affine_portal(void) +{ + put_cpu_var(bman_affine_portal); +} + +/* GOTCHA: this object type refers to a pool, it isn't *the* pool. There may be + * more than one such object per Bman buffer pool, eg. if different users of the + * pool are operating via different portals. */ +struct bman_pool { + struct bman_pool_params params; + /* Used for hash-table admin when using depletion notifications. */ + struct bman_portal *portal; + struct bman_pool *next; + /* stockpile state - NULL unless BMAN_POOL_FLAG_STOCKPILE is set */ + struct bm_buffer *sp; + unsigned int sp_fill; +#ifdef CONFIG_FSL_DPA_CHECKING + atomic_t in_use; +#endif +}; + +/* (De)Registration of depletion notification callbacks */ +static void depletion_link(struct bman_portal *portal, struct bman_pool *pool) +{ + __maybe_unused unsigned long irqflags; + pool->portal = portal; + PORTAL_IRQ_LOCK(portal, irqflags); + pool->next = portal->cb[pool->params.bpid]; + portal->cb[pool->params.bpid] = pool; + if (!pool->next) + /* First object for that bpid on this portal, enable the BSCN + * mask bit. */ + bm_isr_bscn_mask(&portal->p, pool->params.bpid, 1); + PORTAL_IRQ_UNLOCK(portal, irqflags); +} +static void depletion_unlink(struct bman_pool *pool) +{ + struct bman_pool *it, *last = NULL; + struct bman_pool **base = &pool->portal->cb[pool->params.bpid]; + __maybe_unused unsigned long irqflags; + PORTAL_IRQ_LOCK(pool->portal, irqflags); + it = *base; /* <-- gotcha, don't do this prior to the irq_save */ + while (it != pool) { + last = it; + it = it->next; + } + if (!last) + *base = pool->next; + else + last->next = pool->next; + if (!last && !pool->next) { + /* Last object for that bpid on this portal, disable the BSCN + * mask bit. */ + bm_isr_bscn_mask(&pool->portal->p, pool->params.bpid, 0); + /* And "forget" that we last saw this pool as depleted */ + bman_depletion_unset(&pool->portal->pools[1], + pool->params.bpid); + } + PORTAL_IRQ_UNLOCK(pool->portal, irqflags); +} + +/* In the case that the application's core loop calls qman_poll() and + * bman_poll(), we ought to balance how often we incur the overheads of the + * slow-path poll. We'll use two decrementer sources. The idle decrementer + * constant is used when the last slow-poll detected no work to do, and the busy + * decrementer constant when the last slow-poll had work to do. */ +#define SLOW_POLL_IDLE 1000 +#define SLOW_POLL_BUSY 10 +static u32 __poll_portal_slow(struct bman_portal *p, u32 is); + +#ifdef CONFIG_FSL_DPA_HAVE_IRQ +/* Portal interrupt handler */ +static irqreturn_t portal_isr(__always_unused int irq, void *ptr) +{ + struct bman_portal *p = ptr; + u32 clear = p->irq_sources; + u32 is = bm_isr_status_read(&p->p) & p->irq_sources; + clear |= __poll_portal_slow(p, is); + bm_isr_status_clear(&p->p, clear); + return IRQ_HANDLED; +} +#endif + +struct bman_portal *bman_create_affine_portal( + const struct bm_portal_config *config, + int recovery_mode __maybe_unused) +{ + struct bman_portal *portal = get_raw_affine_portal(); + struct bm_portal *__p = &portal->p; + const struct bman_depletion *pools = &config->public_cfg.mask; + int ret; + + /* prep the low-level portal struct with the mapped addresses from the + * config, everything that follows depends on it and "config" is more + * for (de)reference... */ + __p->addr.addr_ce = config->addr_virt[BM_ADDR_CE]; + __p->addr.addr_ci = config->addr_virt[BM_ADDR_CI]; + if (bm_rcr_init(__p, bm_rcr_pvb, bm_rcr_cce)) { + pr_err("Bman RCR initialisation failed\n"); + goto fail_rcr; + } + if (bm_mc_init(__p)) { + pr_err("Bman MC initialisation failed\n"); + goto fail_mc; + } + if (bm_isr_init(__p)) { + pr_err("Bman ISR initialisation failed\n"); + goto fail_isr; + } + if (!pools) + portal->pools = NULL; + else { + u8 bpid = 0; + portal->pools = kmalloc(2 * sizeof(*pools), GFP_KERNEL); + if (!portal->pools) + goto fail_pools; + portal->pools[0] = *pools; + bman_depletion_init(portal->pools + 1); + while (bpid < bman_pool_max) { + /* Default to all BPIDs disabled, we enable as required + * at run-time. */ + bm_isr_bscn_mask(__p, bpid, 0); + bpid++; + } + } + portal->slowpoll = 0; +#ifdef CONFIG_FSL_DPA_CAN_WAIT_SYNC + portal->rcri_owned = NULL; +#endif +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + spin_lock_init(&portal->sharing_lock); + portal->is_shared = config->public_cfg.is_shared; + portal->sharing_redirect = NULL; +#endif + memset(&portal->cb, 0, sizeof(portal->cb)); + /* Write-to-clear any stale interrupt status bits */ + bm_isr_disable_write(__p, 0xffffffff); + portal->irq_sources = 0; + bm_isr_enable_write(__p, portal->irq_sources); + bm_isr_status_clear(__p, 0xffffffff); +#ifdef CONFIG_FSL_DPA_HAVE_IRQ + snprintf(portal->irqname, MAX_IRQNAME, IRQNAME, config->public_cfg.cpu); + if (request_irq(config->public_cfg.irq, portal_isr, + IRQF_NOBALANCING | IRQF_DISABLED, portal->irqname, + portal)) { + pr_err("request_irq() failed\n"); + goto fail_irq; + } + if (config->public_cfg.cpu != -1) { + disable_irq(config->public_cfg.irq); + irq_set_affinity(config->public_cfg.irq, + cpumask_of(config->public_cfg.cpu)); + } + enable_irq(config->public_cfg.irq); + /* Enable the bits that make sense */ + if (!recovery_mode) + bm_isr_uninhibit(__p); +#endif + /* Need RCR to be empty before continuing */ + bm_isr_disable_write(__p, ~BM_PIRQ_RCRI); + ret = bm_rcr_get_fill(__p); + if (ret) { + pr_err("Bman RCR unclean, need recovery\n"); + goto fail_rcr_empty; + } + /* Success */ + portal->config = config; + spin_lock(&affine_mask_lock); + cpumask_set_cpu(config->public_cfg.cpu, &affine_mask); + spin_unlock(&affine_mask_lock); + bm_isr_disable_write(__p, 0); + put_affine_portal(); + return portal; +fail_rcr_empty: +#ifdef CONFIG_FSL_DPA_HAVE_IRQ + free_irq(config->public_cfg.irq, portal); +fail_irq: +#endif + if (portal->pools) + kfree(portal->pools); +fail_pools: + bm_isr_finish(__p); +fail_isr: + bm_mc_finish(__p); +fail_mc: + bm_rcr_finish(__p); +fail_rcr: + put_affine_portal(); + return NULL; +} + +struct bman_portal *bman_create_affine_slave(struct bman_portal *redirect) +{ +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + struct bman_portal *p = get_raw_affine_portal(); + BUG_ON(p->config); + BUG_ON(p->is_shared); + BUG_ON(!redirect->config->public_cfg.is_shared); + p->irq_sources = 0; + p->sharing_redirect = redirect; + put_affine_portal(); + return p; +#else + BUG(); + return NULL; +#endif +} + +const struct bm_portal_config *bman_destroy_affine_portal(void) +{ + struct bman_portal *bm = get_raw_affine_portal(); + const struct bm_portal_config *pcfg; +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + if (bm->sharing_redirect) { + bm->sharing_redirect = NULL; + put_affine_portal(); + return NULL; + } + bm->is_shared = 0; +#endif + pcfg = bm->config; + bm_rcr_cce_update(&bm->p); + bm_rcr_cce_update(&bm->p); +#ifdef CONFIG_FSL_DPA_HAVE_IRQ + free_irq(pcfg->public_cfg.irq, bm); +#endif + kfree(bm->pools); + bm_isr_finish(&bm->p); + bm_mc_finish(&bm->p); + bm_rcr_finish(&bm->p); + bm->config = NULL; + spin_lock(&affine_mask_lock); + cpumask_clear_cpu(pcfg->public_cfg.cpu, &affine_mask); + spin_unlock(&affine_mask_lock); + put_affine_portal(); + return pcfg; +} + +/* When release logic waits on available RCR space, we need a global waitqueue + * in the case of "affine" use (as the waits wake on different cpus which means + * different portals - so we can't wait on any per-portal waitqueue). */ +static DECLARE_WAIT_QUEUE_HEAD(affine_queue); + +static u32 __poll_portal_slow(struct bman_portal *p, u32 is) +{ + struct bman_depletion tmp; + u32 ret = is; + + /* There is a gotcha to be aware of. If we do the query before clearing + * the status register, we may miss state changes that occur between the + * two. If we write to clear the status register before the query, the + * cache-enabled query command may overtake the status register write + * unless we use a heavyweight sync (which we don't want). Instead, we + * write-to-clear the status register then *read it back* before doing + * the query, hence the odd while loop with the 'is' accumulation. */ + if (is & BM_PIRQ_BSCN) { + struct bm_mc_result *mcr; + __maybe_unused unsigned long irqflags; + unsigned int i, j; + u32 __is; + bm_isr_status_clear(&p->p, BM_PIRQ_BSCN); + while ((__is = bm_isr_status_read(&p->p)) & BM_PIRQ_BSCN) { + is |= __is; + bm_isr_status_clear(&p->p, BM_PIRQ_BSCN); + } + is &= ~BM_PIRQ_BSCN; + PORTAL_IRQ_LOCK(p, irqflags); + bm_mc_start(&p->p); + bm_mc_commit(&p->p, BM_MCC_VERB_CMD_QUERY); + while (!(mcr = bm_mc_result(&p->p))) + cpu_relax(); + tmp = mcr->query.ds.state; + PORTAL_IRQ_UNLOCK(p, irqflags); + for (i = 0; i < 2; i++) { + int idx = i * 32; + /* tmp is a mask of currently-depleted pools. + * pools[0] is mask of those we care about. + * pools[1] is our previous view (we only want to + * be told about changes). */ + tmp.__state[i] &= p->pools[0].__state[i]; + if (tmp.__state[i] == p->pools[1].__state[i]) + /* fast-path, nothing to see, move along */ + continue; + for (j = 0; j <= 31; j++, idx++) { + struct bman_pool *pool = p->cb[idx]; + int b4 = bman_depletion_get(&p->pools[1], idx); + int af = bman_depletion_get(&tmp, idx); + if (b4 == af) + continue; + while (pool) { + pool->params.cb(p, pool, + pool->params.cb_ctx, af); + pool = pool->next; + } + } + } + p->pools[1] = tmp; + } + + if (is & BM_PIRQ_RCRI) { + __maybe_unused unsigned long irqflags; + PORTAL_IRQ_LOCK(p, irqflags); + bm_rcr_cce_update(&p->p); +#ifdef CONFIG_FSL_DPA_CAN_WAIT_SYNC + /* If waiting for sync, we only cancel the interrupt threshold + * when the ring utilisation hits zero. */ + if (p->rcri_owned) { + if (!bm_rcr_get_fill(&p->p)) { + p->rcri_owned = NULL; + bm_rcr_set_ithresh(&p->p, 0); + } + } else +#endif + bm_rcr_set_ithresh(&p->p, 0); + PORTAL_IRQ_UNLOCK(p, irqflags); + wake_up(&affine_queue); + bm_isr_status_clear(&p->p, BM_PIRQ_RCRI); + is &= ~BM_PIRQ_RCRI; + } + + /* There should be no status register bits left undefined */ + DPA_ASSERT(!is); + return ret; +} + +const struct bman_portal_config *bman_get_portal_config(void) +{ + struct bman_portal *p = get_affine_portal(); + const struct bman_portal_config *ret = &p->config->public_cfg; + put_affine_portal(); + return ret; +} +EXPORT_SYMBOL(bman_get_portal_config); + +u32 bman_irqsource_get(void) +{ + struct bman_portal *p = get_raw_affine_portal(); + u32 ret = p->irq_sources & BM_PIRQ_VISIBLE; + put_affine_portal(); + return ret; +} +EXPORT_SYMBOL(bman_irqsource_get); + +int bman_irqsource_add(__maybe_unused u32 bits) +{ +#ifdef CONFIG_FSL_DPA_HAVE_IRQ + struct bman_portal *p = get_raw_affine_portal(); + int ret = 0; +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + if (p->sharing_redirect) + ret = -EINVAL; + else +#endif + { + __maybe_unused unsigned long irqflags; + PORTAL_IRQ_LOCK(p, irqflags); + set_bits(bits & BM_PIRQ_VISIBLE, &p->irq_sources); + bm_isr_enable_write(&p->p, p->irq_sources); + PORTAL_IRQ_UNLOCK(p, irqflags); + } + put_affine_portal(); + return ret; +#else + pr_err("No Bman portal IRQ support, mustn't specify IRQ flags!"); + return -EINVAL; +#endif +} +EXPORT_SYMBOL(bman_irqsource_add); + +int bman_irqsource_remove(u32 bits) +{ +#ifdef CONFIG_FSL_DPA_HAVE_IRQ + struct bman_portal *p = get_raw_affine_portal(); + __maybe_unused unsigned long irqflags; + u32 ier; +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + if (p->sharing_redirect) { + put_affine_portal(); + return -EINVAL; + } +#endif + /* Our interrupt handler only processes+clears status register bits that + * are in p->irq_sources. As we're trimming that mask, if one of them + * were to assert in the status register just before we remove it from + * the enable register, there would be an interrupt-storm when we + * release the IRQ lock. So we wait for the enable register update to + * take effect in h/w (by reading it back) and then clear all other bits + * in the status register. Ie. we clear them from ISR once it's certain + * IER won't allow them to reassert. */ + PORTAL_IRQ_LOCK(p, irqflags); + bits &= BM_PIRQ_VISIBLE; + clear_bits(bits, &p->irq_sources); + bm_isr_enable_write(&p->p, p->irq_sources); + ier = bm_isr_enable_read(&p->p); + /* Using "~ier" (rather than "bits" or "~p->irq_sources") creates a + * data-dependency, ie. to protect against re-ordering. */ + bm_isr_status_clear(&p->p, ~ier); + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + return 0; +#else + pr_err("No Bman portal IRQ support, mustn't specify IRQ flags!"); + return -EINVAL; +#endif +} +EXPORT_SYMBOL(bman_irqsource_remove); + +const cpumask_t *bman_affine_cpus(void) +{ + return &affine_mask; +} +EXPORT_SYMBOL(bman_affine_cpus); + +u32 bman_poll_slow(void) +{ + struct bman_portal *p = get_raw_affine_portal(); + u32 ret; +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + if (unlikely(p->sharing_redirect)) + ret = (u32)-1; + else +#endif + { + u32 is = bm_isr_status_read(&p->p) & ~p->irq_sources; + ret = __poll_portal_slow(p, is); + bm_isr_status_clear(&p->p, ret); + } + put_affine_portal(); + return ret; +} +EXPORT_SYMBOL(bman_poll_slow); + +/* Legacy wrapper */ +void bman_poll(void) +{ + struct bman_portal *p = get_raw_affine_portal(); +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + if (unlikely(p->sharing_redirect)) + goto done; +#endif + if (!(p->slowpoll--)) { + u32 is = bm_isr_status_read(&p->p) & ~p->irq_sources; + u32 active = __poll_portal_slow(p, is); + if (active) + p->slowpoll = SLOW_POLL_BUSY; + else + p->slowpoll = SLOW_POLL_IDLE; + } +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE +done: +#endif + put_affine_portal(); +} +EXPORT_SYMBOL(bman_poll); + +int bman_recovery_cleanup_bpid(u32 bpid) +{ + struct bman_pool pool = { + .params = { + .bpid = bpid + } + }; + struct bm_buffer bufs[8]; + int ret = 0; + unsigned int num_bufs = 0; + do { + /* Acquire is all-or-nothing, so we drain in 8s, then in + * 1s for the remainder. */ + if (ret != 1) + ret = bman_acquire(&pool, bufs, 8, 0); + if (ret < 8) + ret = bman_acquire(&pool, bufs, 1, 0); + if (ret > 0) + num_bufs += ret; + } while (ret > 0); + if (num_bufs) + pr_info("Bman: BPID %d recovered (%d bufs)\n", bpid, num_bufs); + return 0; +} +EXPORT_SYMBOL(bman_recovery_cleanup_bpid); + +/* called from bman_driver.c::bman_recovery_exit() only (if exporting, use + * get_raw_affine_portal() and check for the "SLAVE" bit). */ +void bman_recovery_exit_local(void) +{ + struct bman_portal *p = get_affine_portal(); + bm_isr_status_clear(&p->p, 0xffffffff); + bm_isr_uninhibit(&p->p); + put_affine_portal(); +} + +static const u32 zero_thresholds[4] = {0, 0, 0, 0}; + +struct bman_pool *bman_new_pool(const struct bman_pool_params *params) +{ + struct bman_pool *pool = NULL; + u32 bpid; + + if (params->flags & BMAN_POOL_FLAG_DYNAMIC_BPID) { + int ret = bm_pool_new(&bpid); + if (ret) + return NULL; + } else { + if (params->bpid >= bman_pool_max) + return NULL; + bpid = params->bpid; + } +#ifdef CONFIG_FSL_BMAN_CONFIG + if (params->flags & BMAN_POOL_FLAG_THRESH) { + int ret = bm_pool_set(bpid, params->thresholds); + if (ret) + goto err; + } +#else + if (params->flags & BMAN_POOL_FLAG_THRESH) + goto err; +#endif + pool = kmalloc(sizeof(*pool), GFP_KERNEL); + if (!pool) + goto err; + pool->sp = NULL; + pool->sp_fill = 0; + pool->params = *params; +#ifdef CONFIG_FSL_DPA_CHECKING + atomic_set(&pool->in_use, 1); +#endif + if (params->flags & BMAN_POOL_FLAG_DYNAMIC_BPID) + pool->params.bpid = bpid; + if (params->flags & BMAN_POOL_FLAG_STOCKPILE) { + pool->sp = kmalloc(sizeof(struct bm_buffer) * BMAN_STOCKPILE_SZ, + GFP_KERNEL); + if (!pool->sp) + goto err; + } + if (pool->params.flags & BMAN_POOL_FLAG_DEPLETION) { + struct bman_portal *p = get_affine_portal(); + if (!p->pools || !bman_depletion_get(&p->pools[0], bpid)) { + pr_err("Depletion events disabled for bpid %d\n", bpid); + goto err; + } + depletion_link(p, pool); + put_affine_portal(); + } + return pool; +err: +#ifdef CONFIG_FSL_BMAN_CONFIG + if (params->flags & BMAN_POOL_FLAG_THRESH) + bm_pool_set(bpid, zero_thresholds); +#endif + if (params->flags & BMAN_POOL_FLAG_DYNAMIC_BPID) + bm_pool_free(bpid); + if (pool) { + if (pool->sp) + kfree(pool->sp); + kfree(pool); + } + return NULL; +} +EXPORT_SYMBOL(bman_new_pool); + +void bman_free_pool(struct bman_pool *pool) +{ +#ifdef CONFIG_FSL_BMAN_CONFIG + if (pool->params.flags & BMAN_POOL_FLAG_THRESH) + bm_pool_set(pool->params.bpid, zero_thresholds); +#endif + if (pool->params.flags & BMAN_POOL_FLAG_DEPLETION) + depletion_unlink(pool); + if (pool->params.flags & BMAN_POOL_FLAG_STOCKPILE) { + if (pool->sp_fill) + pr_err("Stockpile not flushed, has %u in bpid %u.\n", + pool->sp_fill, pool->params.bpid); + kfree(pool->sp); + pool->sp = NULL; + pool->params.flags ^= BMAN_POOL_FLAG_STOCKPILE; + } + if (pool->params.flags & BMAN_POOL_FLAG_DYNAMIC_BPID) { + /* When releasing a BPID to the dynamic allocator, that pool + * must be *empty*. This code makes it so by dropping everything + * into the bit-bucket. This ignores whether or not it was a + * mistake (or a leak) on the caller's part not to drain the + * pool beforehand. */ + struct bm_buffer bufs[8]; + int ret = 0; + do { + /* Acquire is all-or-nothing, so we drain in 8s, then in + * 1s for the remainder. */ + if (ret != 1) + ret = bman_acquire(pool, bufs, 8, 0); + if (ret < 8) + ret = bman_acquire(pool, bufs, 1, 0); + } while (ret > 0); + bm_pool_free(pool->params.bpid); + } + kfree(pool); +} +EXPORT_SYMBOL(bman_free_pool); + +const struct bman_pool_params *bman_get_params(const struct bman_pool *pool) +{ + return &pool->params; +} +EXPORT_SYMBOL(bman_get_params); + +static noinline void update_rcr_ci(struct bman_portal *p, u8 avail) +{ + if (avail) + bm_rcr_cce_prefetch(&p->p); + else + bm_rcr_cce_update(&p->p); +} + +int bman_rcr_is_empty(void) +{ + __maybe_unused unsigned long irqflags; + struct bman_portal *p = get_affine_portal(); + u8 avail; + + PORTAL_IRQ_LOCK(p, irqflags); + update_rcr_ci(p, 0); + avail = bm_rcr_get_fill(&p->p); + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + return (avail == 0); +} +EXPORT_SYMBOL(bman_rcr_is_empty); + +static inline struct bm_rcr_entry *try_rel_start(struct bman_portal **p, +#ifdef CONFIG_FSL_DPA_CAN_WAIT + __maybe_unused struct bman_pool *pool, +#endif + __maybe_unused unsigned long *irqflags, + __maybe_unused u32 flags) +{ + struct bm_rcr_entry *r; + u8 avail; + + *p = get_affine_portal(); + PORTAL_IRQ_LOCK(*p, (*irqflags)); +#ifdef CONFIG_FSL_DPA_CAN_WAIT_SYNC + if (unlikely((flags & BMAN_RELEASE_FLAG_WAIT) && + (flags & BMAN_RELEASE_FLAG_WAIT_SYNC))) { + if ((*p)->rcri_owned) { + PORTAL_IRQ_UNLOCK(*p, (*irqflags)); + put_affine_portal(); + return NULL; + } + (*p)->rcri_owned = pool; + } +#endif + avail = bm_rcr_get_avail(&(*p)->p); + if (avail < 2) + update_rcr_ci(*p, avail); + r = bm_rcr_start(&(*p)->p); + if (unlikely(!r)) { +#ifdef CONFIG_FSL_DPA_CAN_WAIT_SYNC + if (unlikely((flags & BMAN_RELEASE_FLAG_WAIT) && + (flags & BMAN_RELEASE_FLAG_WAIT_SYNC))) + (*p)->rcri_owned = NULL; +#endif + PORTAL_IRQ_UNLOCK(*p, (*irqflags)); + put_affine_portal(); + } + return r; +} + +#ifdef CONFIG_FSL_DPA_CAN_WAIT +static noinline struct bm_rcr_entry *__wait_rel_start(struct bman_portal **p, + struct bman_pool *pool, + __maybe_unused unsigned long *irqflags, + u32 flags) +{ + struct bm_rcr_entry *rcr = try_rel_start(p, pool, irqflags, flags); + if (!rcr) + bm_rcr_set_ithresh(&(*p)->p, 1); + return rcr; +} + +static noinline struct bm_rcr_entry *wait_rel_start(struct bman_portal **p, + struct bman_pool *pool, + __maybe_unused unsigned long *irqflags, + u32 flags) +{ + struct bm_rcr_entry *rcr; +#ifndef CONFIG_FSL_DPA_CAN_WAIT_SYNC + pool = NULL; +#endif + if (flags & BMAN_RELEASE_FLAG_WAIT_INT) + wait_event_interruptible(affine_queue, + (rcr = __wait_rel_start(p, pool, irqflags, flags))); + else + wait_event(affine_queue, + (rcr = __wait_rel_start(p, pool, irqflags, flags))); + return rcr; +} +#endif + +/* to facilitate better copying of bufs into the ring without either (a) copying + * noise into the first byte (prematurely triggering the command), nor (b) being + * very inefficient by copying small fields using read-modify-write */ +struct overlay_bm_buffer { + u32 first; + u32 second; +}; + +static inline int __bman_release(struct bman_pool *pool, + const struct bm_buffer *bufs, u8 num, u32 flags) +{ + struct bman_portal *p; + struct bm_rcr_entry *r; + struct overlay_bm_buffer *o_dest; + struct overlay_bm_buffer *o_src = (struct overlay_bm_buffer *)&bufs[0]; + __maybe_unused unsigned long irqflags; + u32 i = num - 1; + +#ifdef CONFIG_FSL_DPA_CAN_WAIT + if (flags & BMAN_RELEASE_FLAG_WAIT) + r = wait_rel_start(&p, pool, &irqflags, flags); + else + r = try_rel_start(&p, pool, &irqflags, flags); +#else + r = try_rel_start(&p, &irqflags, flags); +#endif + if (!r) + return -EBUSY; + /* We can copy all but the first entry, as this can trigger badness + * with the valid-bit. Use the overlay to mask the verb byte. */ + o_dest = (struct overlay_bm_buffer *)&r->bufs[0]; + o_dest->first = (o_src->first & 0x0000ffff) | + (((u32)pool->params.bpid << 16) & 0x00ff0000); + o_dest->second = o_src->second; + if (i) + copy_words(&r->bufs[1], &bufs[1], i * sizeof(bufs[0])); + bm_rcr_pvb_commit(&p->p, BM_RCR_VERB_CMD_BPID_SINGLE | + (num & BM_RCR_VERB_BUFCOUNT_MASK)); +#ifdef CONFIG_FSL_DPA_CAN_WAIT_SYNC + /* if we wish to sync we need to set the threshold after h/w sees the + * new ring entry. As we're mixing cache-enabled and cache-inhibited + * accesses, this requires a heavy-weight sync. */ + if (unlikely((flags & BMAN_RELEASE_FLAG_WAIT) && + (flags & BMAN_RELEASE_FLAG_WAIT_SYNC))) { + hwsync(); + bm_rcr_set_ithresh(&p->p, 1); + } +#endif + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); +#ifdef CONFIG_FSL_DPA_CAN_WAIT_SYNC + if (unlikely((flags & BMAN_RELEASE_FLAG_WAIT) && + (flags & BMAN_RELEASE_FLAG_WAIT_SYNC))) { + if (flags & BMAN_RELEASE_FLAG_WAIT_INT) + wait_event_interruptible(affine_queue, + (p->rcri_owned != pool)); + else + wait_event(affine_queue, (p->rcri_owned != pool)); + } +#endif + return 0; +} + +int bman_release(struct bman_pool *pool, const struct bm_buffer *bufs, u8 num, + u32 flags) +{ + int ret = 0; +#ifdef CONFIG_FSL_DPA_CHECKING + if (!num || (num > 8)) + return -EINVAL; + if (pool->params.flags & BMAN_POOL_FLAG_NO_RELEASE) + return -EINVAL; + if (!atomic_dec_and_test(&pool->in_use)) { + pr_crit("Parallel attempts to enter bman_released() detected."); + panic("only one instance of bman_released/acquired allowed"); + } +#endif + /* Without stockpile, this API is a pass-through to the h/w operation */ + if (!(pool->params.flags & BMAN_POOL_FLAG_STOCKPILE)) { + ret = __bman_release(pool, bufs, num, flags); + goto release_done; + } + /* This needs some explanation. Adding the given buffers may take the + * stockpile over the threshold, but in fact the stockpile may already + * *be* over the threshold if a previous release-to-hw attempt had + * failed. So we have 3 cases to cover; + * 1. we add to the stockpile and don't hit the threshold, + * 2. we add to the stockpile, hit the threshold and release-to-hw, + * 3. we have to release-to-hw before adding to the stockpile + * (not enough room in the stockpile for case 2). + * Our constraints on thresholds guarantee that in case 3, there must be + * at least 8 bufs already in the stockpile, so all release-to-hw ops + * are for 8 bufs. Despite all this, the API must indicate whether the + * given buffers were taken off the caller's hands, irrespective of + * whether a release-to-hw was attempted. */ + while (num) { + /* Add buffers to stockpile if they fit */ + if ((pool->sp_fill + num) < BMAN_STOCKPILE_SZ) { + copy_words(pool->sp + pool->sp_fill, bufs, + sizeof(struct bm_buffer) * num); + pool->sp_fill += num; + num = 0; /* --> will return success no matter what */ + } + /* Do hw op if hitting the high-water threshold */ + if ((pool->sp_fill + num) >= BMAN_STOCKPILE_HIGH) { + ret = __bman_release(pool, + pool->sp + (pool->sp_fill - 8), 8, flags); + if (ret) { + ret = (num ? ret : 0); + goto release_done; + } + pool->sp_fill -= 8; + } + } +release_done: +#ifdef CONFIG_FSL_DPA_CHECKING + atomic_inc(&pool->in_use); +#endif + return ret; +} +EXPORT_SYMBOL(bman_release); + +static inline int __bman_acquire(struct bman_pool *pool, struct bm_buffer *bufs, + u8 num) +{ + struct bman_portal *p = get_affine_portal(); + struct bm_mc_command *mcc; + struct bm_mc_result *mcr; + __maybe_unused unsigned long irqflags; + int ret; + + PORTAL_IRQ_LOCK(p, irqflags); + mcc = bm_mc_start(&p->p); + mcc->acquire.bpid = pool->params.bpid; + bm_mc_commit(&p->p, BM_MCC_VERB_CMD_ACQUIRE | + (num & BM_MCC_VERB_ACQUIRE_BUFCOUNT)); + while (!(mcr = bm_mc_result(&p->p))) + cpu_relax(); + ret = mcr->verb & BM_MCR_VERB_ACQUIRE_BUFCOUNT; + if (bufs) + copy_words(&bufs[0], &mcr->acquire.bufs[0], + num * sizeof(bufs[0])); + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + if (ret != num) + ret = -ENOMEM; + return ret; +} + +int bman_acquire(struct bman_pool *pool, struct bm_buffer *bufs, u8 num, + u32 flags) +{ + int ret = 0; +#ifdef CONFIG_FSL_DPA_CHECKING + if (!num || (num > 8)) + return -EINVAL; + if (pool->params.flags & BMAN_POOL_FLAG_ONLY_RELEASE) + return -EINVAL; + if (!atomic_dec_and_test(&pool->in_use)) { + pr_crit("Parallel attempts to enter bman_acquire() detected."); + panic("only one instance of bman_released/acquired allowed"); + } +#endif + /* Without stockpile, this API is a pass-through to the h/w operation */ + if (!(pool->params.flags & BMAN_POOL_FLAG_STOCKPILE)) { + ret = __bman_acquire(pool, bufs, num); + goto acquire_done; + } + /* Only need a h/w op if we'll hit the low-water thresh */ + if (!(flags & BMAN_ACQUIRE_FLAG_STOCKPILE) && + (pool->sp_fill <= (BMAN_STOCKPILE_LOW + num))) { + /* refill stockpile with max amount, but if max amount + * isn't available, try amount the user wants */ + int bufcount = 8; + ret = __bman_acquire(pool, pool->sp + pool->sp_fill, bufcount); + if (ret < 0 && bufcount != num) { + bufcount = num; + /* Maybe buffer pool has less than 8 */ + ret = __bman_acquire(pool, pool->sp + pool->sp_fill, + bufcount); + } + if (ret < 0) + goto hw_starved; + DPA_ASSERT(ret == bufcount); + pool->sp_fill += bufcount; + } else { +hw_starved: + if (pool->sp_fill < num) { + ret = -ENOMEM; + goto acquire_done; + } + } + copy_words(bufs, pool->sp + (pool->sp_fill - num), + sizeof(struct bm_buffer) * num); + pool->sp_fill -= num; + ret = num; +acquire_done: +#ifdef CONFIG_FSL_DPA_CHECKING + atomic_inc(&pool->in_use); +#endif + return ret; +} +EXPORT_SYMBOL(bman_acquire); + +int bman_flush_stockpile(struct bman_pool *pool, u32 flags) +{ + u8 num; + int ret; + + while (pool->sp_fill) { + num = ((pool->sp_fill > 8) ? 8 : pool->sp_fill); + ret = __bman_release(pool, pool->sp + (pool->sp_fill - num), + num, flags); + if (ret) + return ret; + pool->sp_fill -= num; + } + return 0; +} +EXPORT_SYMBOL(bman_flush_stockpile); + +int bman_query_pools(struct bm_pool_state *state) +{ + struct bman_portal *p = get_affine_portal(); + struct bm_mc_result *mcr; + __maybe_unused unsigned long irqflags; + + PORTAL_IRQ_LOCK(p, irqflags); + bm_mc_start(&p->p); + bm_mc_commit(&p->p, BM_MCC_VERB_CMD_QUERY); + while (!(mcr = bm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & BM_MCR_VERB_CMD_MASK) == BM_MCR_VERB_CMD_QUERY); + *state = mcr->query; + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + return 0; +} +EXPORT_SYMBOL(bman_query_pools); + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/bman_low.h +++ linux-3.13.0/drivers/staging/fsl_qbman/bman_low.h @@ -0,0 +1,494 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "bman_private.h" + +/***************************/ +/* Portal register assists */ +/***************************/ + +/* Cache-inhibited register offsets */ +#define REG_RCR_PI_CINH 0x0000 +#define REG_RCR_CI_CINH 0x0004 +#define REG_RCR_ITR 0x0008 +#define REG_CFG 0x0100 +#define REG_SCN(n) (0x0200 + ((n) << 2)) +#define REG_ISR 0x0e00 + +/* Cache-enabled register offsets */ +#define CL_CR 0x0000 +#define CL_RR0 0x0100 +#define CL_RR1 0x0140 +#define CL_RCR 0x1000 +#define CL_RCR_PI_CENA 0x3000 +#define CL_RCR_CI_CENA 0x3100 + +/* BTW, the drivers (and h/w programming model) already obtain the required + * synchronisation for portal accesses via lwsync(), hwsync(), and + * data-dependencies. Use of barrier()s or other order-preserving primitives + * simply degrade performance. Hence the use of the __raw_*() interfaces, which + * simply ensure that the compiler treats the portal registers as volatile (ie. + * non-coherent). */ + +/* Cache-inhibited register access. */ +#define __bm_in(bm, o) __raw_readl((bm)->addr_ci + (o)) +#define __bm_out(bm, o, val) __raw_writel((val), (bm)->addr_ci + (o)) +#define bm_in(reg) __bm_in(&portal->addr, REG_##reg) +#define bm_out(reg, val) __bm_out(&portal->addr, REG_##reg, val) + +/* Cache-enabled (index) register access */ +#define __bm_cl_touch_ro(bm, o) dcbt_ro((bm)->addr_ce + (o)) +#define __bm_cl_touch_rw(bm, o) dcbt_rw((bm)->addr_ce + (o)) +#define __bm_cl_in(bm, o) __raw_readl((bm)->addr_ce + (o)) +#define __bm_cl_out(bm, o, val) \ + do { \ + u32 *__tmpclout = (bm)->addr_ce + (o); \ + __raw_writel((val), __tmpclout); \ + dcbf(__tmpclout); \ + } while (0) +#define __bm_cl_invalidate(bm, o) dcbi((bm)->addr_ce + (o)) +#define bm_cl_touch_ro(reg) __bm_cl_touch_ro(&portal->addr, CL_##reg##_CENA) +#define bm_cl_touch_rw(reg) __bm_cl_touch_rw(&portal->addr, CL_##reg##_CENA) +#define bm_cl_in(reg) __bm_cl_in(&portal->addr, CL_##reg##_CENA) +#define bm_cl_out(reg, val) __bm_cl_out(&portal->addr, CL_##reg##_CENA, val) +#define bm_cl_invalidate(reg) __bm_cl_invalidate(&portal->addr, CL_##reg##_CENA) + +/* Cyclic helper for rings. FIXME: once we are able to do fine-grain perf + * analysis, look at using the "extra" bit in the ring index registers to avoid + * cyclic issues. */ +static inline u8 cyc_diff(u8 ringsize, u8 first, u8 last) +{ + /* 'first' is included, 'last' is excluded */ + if (first <= last) + return last - first; + return ringsize + last - first; +} + +/* Portal modes. + * Enum types; + * pmode == production mode + * cmode == consumption mode, + * Enum values use 3 letter codes. First letter matches the portal mode, + * remaining two letters indicate; + * ci == cache-inhibited portal register + * ce == cache-enabled portal register + * vb == in-band valid-bit (cache-enabled) + */ +enum bm_rcr_pmode { /* matches BCSP_CFG::RPM */ + bm_rcr_pci = 0, /* PI index, cache-inhibited */ + bm_rcr_pce = 1, /* PI index, cache-enabled */ + bm_rcr_pvb = 2 /* valid-bit */ +}; +enum bm_rcr_cmode { /* s/w-only */ + bm_rcr_cci, /* CI index, cache-inhibited */ + bm_rcr_cce /* CI index, cache-enabled */ +}; + + +/* ------------------------- */ +/* --- Portal structures --- */ + +#define BM_RCR_SIZE 8 + +struct bm_rcr { + struct bm_rcr_entry *ring, *cursor; + u8 ci, available, ithresh, vbit; +#ifdef CONFIG_FSL_DPA_CHECKING + u32 busy; + enum bm_rcr_pmode pmode; + enum bm_rcr_cmode cmode; +#endif +}; + +struct bm_mc { + struct bm_mc_command *cr; + struct bm_mc_result *rr; + u8 rridx, vbit; +#ifdef CONFIG_FSL_DPA_CHECKING + enum { + /* Can only be _mc_start()ed */ + mc_idle, + /* Can only be _mc_commit()ed or _mc_abort()ed */ + mc_user, + /* Can only be _mc_retry()ed */ + mc_hw + } state; +#endif +}; + +struct bm_addr { + void __iomem *addr_ce; /* cache-enabled */ + void __iomem *addr_ci; /* cache-inhibited */ +}; + +struct bm_portal { + struct bm_addr addr; + struct bm_rcr rcr; + struct bm_mc mc; + struct bm_portal_config config; +} ____cacheline_aligned; + + +/* --------------- */ +/* --- RCR API --- */ + +/* Bit-wise logic to wrap a ring pointer by clearing the "carry bit" */ +#define RCR_CARRYCLEAR(p) \ + (void *)((unsigned long)(p) & (~(unsigned long)(BM_RCR_SIZE << 6))) + +/* Bit-wise logic to convert a ring pointer to a ring index */ +static inline u8 RCR_PTR2IDX(struct bm_rcr_entry *e) +{ + return ((uintptr_t)e >> 6) & (BM_RCR_SIZE - 1); +} + +/* Increment the 'cursor' ring pointer, taking 'vbit' into account */ +static inline void RCR_INC(struct bm_rcr *rcr) +{ + /* NB: this is odd-looking, but experiments show that it generates + * fast code with essentially no branching overheads. We increment to + * the next RCR pointer and handle overflow and 'vbit'. */ + struct bm_rcr_entry *partial = rcr->cursor + 1; + rcr->cursor = RCR_CARRYCLEAR(partial); + if (partial != rcr->cursor) + rcr->vbit ^= BM_RCR_VERB_VBIT; +} + +static inline int bm_rcr_init(struct bm_portal *portal, enum bm_rcr_pmode pmode, + __maybe_unused enum bm_rcr_cmode cmode) +{ + /* This use of 'register', as well as all other occurances, is because + * it has been observed to generate much faster code with gcc than is + * otherwise the case. */ + register struct bm_rcr *rcr = &portal->rcr; + u32 cfg; + u8 pi; + + rcr->ring = portal->addr.addr_ce + CL_RCR; + rcr->ci = bm_in(RCR_CI_CINH) & (BM_RCR_SIZE - 1); + pi = bm_in(RCR_PI_CINH) & (BM_RCR_SIZE - 1); + rcr->cursor = rcr->ring + pi; + rcr->vbit = (bm_in(RCR_PI_CINH) & BM_RCR_SIZE) ? BM_RCR_VERB_VBIT : 0; + rcr->available = BM_RCR_SIZE - 1 - cyc_diff(BM_RCR_SIZE, rcr->ci, pi); + rcr->ithresh = bm_in(RCR_ITR); +#ifdef CONFIG_FSL_DPA_CHECKING + rcr->busy = 0; + rcr->pmode = pmode; + rcr->cmode = cmode; +#endif + cfg = (bm_in(CFG) & 0xffffffe0) | (pmode & 0x3); /* BCSP_CFG::RPM */ + bm_out(CFG, cfg); + return 0; +} + +static inline void bm_rcr_finish(struct bm_portal *portal) +{ + register struct bm_rcr *rcr = &portal->rcr; + u8 pi = bm_in(RCR_PI_CINH) & (BM_RCR_SIZE - 1); + u8 ci = bm_in(RCR_CI_CINH) & (BM_RCR_SIZE - 1); + DPA_ASSERT(!rcr->busy); + if (pi != RCR_PTR2IDX(rcr->cursor)) + pr_crit("losing uncommited RCR entries\n"); + if (ci != rcr->ci) + pr_crit("missing existing RCR completions\n"); + if (rcr->ci != RCR_PTR2IDX(rcr->cursor)) + pr_crit("RCR destroyed unquiesced\n"); +} + +static inline struct bm_rcr_entry *bm_rcr_start(struct bm_portal *portal) +{ + register struct bm_rcr *rcr = &portal->rcr; + DPA_ASSERT(!rcr->busy); + if (!rcr->available) + return NULL; +#ifdef CONFIG_FSL_DPA_CHECKING + rcr->busy = 1; +#endif + dcbz_64(rcr->cursor); + return rcr->cursor; +} + +static inline void bm_rcr_abort(struct bm_portal *portal) +{ + __maybe_unused register struct bm_rcr *rcr = &portal->rcr; + DPA_ASSERT(rcr->busy); +#ifdef CONFIG_FSL_DPA_CHECKING + rcr->busy = 0; +#endif +} + +static inline struct bm_rcr_entry *bm_rcr_pend_and_next( + struct bm_portal *portal, u8 myverb) +{ + register struct bm_rcr *rcr = &portal->rcr; + DPA_ASSERT(rcr->busy); + DPA_ASSERT(rcr->pmode != bm_rcr_pvb); + if (rcr->available == 1) + return NULL; + rcr->cursor->__dont_write_directly__verb = myverb | rcr->vbit; + dcbf_64(rcr->cursor); + RCR_INC(rcr); + rcr->available--; + dcbz_64(rcr->cursor); + return rcr->cursor; +} + +static inline void bm_rcr_pci_commit(struct bm_portal *portal, u8 myverb) +{ + register struct bm_rcr *rcr = &portal->rcr; + DPA_ASSERT(rcr->busy); + DPA_ASSERT(rcr->pmode == bm_rcr_pci); + rcr->cursor->__dont_write_directly__verb = myverb | rcr->vbit; + RCR_INC(rcr); + rcr->available--; + hwsync(); + bm_out(RCR_PI_CINH, RCR_PTR2IDX(rcr->cursor)); +#ifdef CONFIG_FSL_DPA_CHECKING + rcr->busy = 0; +#endif +} + +static inline void bm_rcr_pce_prefetch(struct bm_portal *portal) +{ + __maybe_unused register struct bm_rcr *rcr = &portal->rcr; + DPA_ASSERT(rcr->pmode == bm_rcr_pce); + bm_cl_invalidate(RCR_PI); + bm_cl_touch_rw(RCR_PI); +} + +static inline void bm_rcr_pce_commit(struct bm_portal *portal, u8 myverb) +{ + register struct bm_rcr *rcr = &portal->rcr; + DPA_ASSERT(rcr->busy); + DPA_ASSERT(rcr->pmode == bm_rcr_pce); + rcr->cursor->__dont_write_directly__verb = myverb | rcr->vbit; + RCR_INC(rcr); + rcr->available--; + lwsync(); + bm_cl_out(RCR_PI, RCR_PTR2IDX(rcr->cursor)); +#ifdef CONFIG_FSL_DPA_CHECKING + rcr->busy = 0; +#endif +} + +static inline void bm_rcr_pvb_commit(struct bm_portal *portal, u8 myverb) +{ + register struct bm_rcr *rcr = &portal->rcr; + struct bm_rcr_entry *rcursor; + DPA_ASSERT(rcr->busy); + DPA_ASSERT(rcr->pmode == bm_rcr_pvb); + lwsync(); + rcursor = rcr->cursor; + rcursor->__dont_write_directly__verb = myverb | rcr->vbit; + dcbf_64(rcursor); + RCR_INC(rcr); + rcr->available--; +#ifdef CONFIG_FSL_DPA_CHECKING + rcr->busy = 0; +#endif +} + +static inline u8 bm_rcr_cci_update(struct bm_portal *portal) +{ + register struct bm_rcr *rcr = &portal->rcr; + u8 diff, old_ci = rcr->ci; + DPA_ASSERT(rcr->cmode == bm_rcr_cci); + rcr->ci = bm_in(RCR_CI_CINH) & (BM_RCR_SIZE - 1); + diff = cyc_diff(BM_RCR_SIZE, old_ci, rcr->ci); + rcr->available += diff; + return diff; +} + +static inline void bm_rcr_cce_prefetch(struct bm_portal *portal) +{ + __maybe_unused register struct bm_rcr *rcr = &portal->rcr; + DPA_ASSERT(rcr->cmode == bm_rcr_cce); + bm_cl_touch_ro(RCR_CI); +} + +static inline u8 bm_rcr_cce_update(struct bm_portal *portal) +{ + register struct bm_rcr *rcr = &portal->rcr; + u8 diff, old_ci = rcr->ci; + DPA_ASSERT(rcr->cmode == bm_rcr_cce); + rcr->ci = bm_cl_in(RCR_CI) & (BM_RCR_SIZE - 1); + bm_cl_invalidate(RCR_CI); + diff = cyc_diff(BM_RCR_SIZE, old_ci, rcr->ci); + rcr->available += diff; + return diff; +} + +static inline u8 bm_rcr_get_ithresh(struct bm_portal *portal) +{ + register struct bm_rcr *rcr = &portal->rcr; + return rcr->ithresh; +} + +static inline void bm_rcr_set_ithresh(struct bm_portal *portal, u8 ithresh) +{ + register struct bm_rcr *rcr = &portal->rcr; + rcr->ithresh = ithresh; + bm_out(RCR_ITR, ithresh); +} + +static inline u8 bm_rcr_get_avail(struct bm_portal *portal) +{ + register struct bm_rcr *rcr = &portal->rcr; + return rcr->available; +} + +static inline u8 bm_rcr_get_fill(struct bm_portal *portal) +{ + register struct bm_rcr *rcr = &portal->rcr; + return BM_RCR_SIZE - 1 - rcr->available; +} + + +/* ------------------------------ */ +/* --- Management command API --- */ + +static inline int bm_mc_init(struct bm_portal *portal) +{ + register struct bm_mc *mc = &portal->mc; + mc->cr = portal->addr.addr_ce + CL_CR; + mc->rr = portal->addr.addr_ce + CL_RR0; + mc->rridx = (__raw_readb(&mc->cr->__dont_write_directly__verb) & + BM_MCC_VERB_VBIT) ? 0 : 1; + mc->vbit = mc->rridx ? BM_MCC_VERB_VBIT : 0; +#ifdef CONFIG_FSL_DPA_CHECKING + mc->state = mc_idle; +#endif + return 0; +} + +static inline void bm_mc_finish(struct bm_portal *portal) +{ + __maybe_unused register struct bm_mc *mc = &portal->mc; + DPA_ASSERT(mc->state == mc_idle); +#ifdef CONFIG_FSL_DPA_CHECKING + if (mc->state != mc_idle) + pr_crit("Losing incomplete MC command\n"); +#endif +} + +static inline struct bm_mc_command *bm_mc_start(struct bm_portal *portal) +{ + register struct bm_mc *mc = &portal->mc; + DPA_ASSERT(mc->state == mc_idle); +#ifdef CONFIG_FSL_DPA_CHECKING + mc->state = mc_user; +#endif + dcbz_64(mc->cr); + return mc->cr; +} + +static inline void bm_mc_abort(struct bm_portal *portal) +{ + __maybe_unused register struct bm_mc *mc = &portal->mc; + DPA_ASSERT(mc->state == mc_user); +#ifdef CONFIG_FSL_DPA_CHECKING + mc->state = mc_idle; +#endif +} + +static inline void bm_mc_commit(struct bm_portal *portal, u8 myverb) +{ + register struct bm_mc *mc = &portal->mc; + struct bm_mc_result *rr = mc->rr + mc->rridx; + DPA_ASSERT(mc->state == mc_user); + lwsync(); + mc->cr->__dont_write_directly__verb = myverb | mc->vbit; + dcbf(mc->cr); + dcbit_ro(rr); +#ifdef CONFIG_FSL_DPA_CHECKING + mc->state = mc_hw; +#endif +} + +static inline struct bm_mc_result *bm_mc_result(struct bm_portal *portal) +{ + register struct bm_mc *mc = &portal->mc; + struct bm_mc_result *rr = mc->rr + mc->rridx; + DPA_ASSERT(mc->state == mc_hw); + /* The inactive response register's verb byte always returns zero until + * its command is submitted and completed. This includes the valid-bit, + * in case you were wondering... */ + if (!__raw_readb(&rr->verb)) { + dcbit_ro(rr); + return NULL; + } + mc->rridx ^= 1; + mc->vbit ^= BM_MCC_VERB_VBIT; +#ifdef CONFIG_FSL_DPA_CHECKING + mc->state = mc_idle; +#endif + return rr; +} + + +/* ------------------------------------- */ +/* --- Portal interrupt register API --- */ + +static inline int bm_isr_init(__always_unused struct bm_portal *portal) +{ + return 0; +} + +static inline void bm_isr_finish(__always_unused struct bm_portal *portal) +{ +} + +#define SCN_REG(bpid) REG_SCN((bpid) / 32) +#define SCN_BIT(bpid) (0x80000000 >> (bpid & 31)) +static inline void bm_isr_bscn_mask(struct bm_portal *portal, u8 bpid, + int enable) +{ + u32 val; + DPA_ASSERT(bpid < bman_pool_max); + /* REG_SCN for bpid=0..31, REG_SCN+4 for bpid=32..63 */ + val = __bm_in(&portal->addr, SCN_REG(bpid)); + if (enable) + val |= SCN_BIT(bpid); + else + val &= ~SCN_BIT(bpid); + __bm_out(&portal->addr, SCN_REG(bpid), val); +} + +static inline u32 __bm_isr_read(struct bm_portal *portal, enum bm_isr_reg n) +{ + return __bm_in(&portal->addr, REG_ISR + (n << 2)); +} + +static inline void __bm_isr_write(struct bm_portal *portal, enum bm_isr_reg n, + u32 val) +{ + __bm_out(&portal->addr, REG_ISR + (n << 2), val); +} --- linux-3.13.0.orig/drivers/staging/fsl_qbman/bman_private.h +++ linux-3.13.0/drivers/staging/fsl_qbman/bman_private.h @@ -0,0 +1,149 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "dpa_sys.h" +#include + +/* Revision info (for errata and feature handling) */ +#define BMAN_REV10 0x0100 +#define BMAN_REV20 0x0200 +extern u16 bman_ip_rev; /* 0 if uninitialised, otherwise QMAN_REVx */ + +/* + * Global variables of the max portal/pool number this bman version supported + */ +extern u16 bman_pool_max; + +/* used by CCSR and portal interrupt code */ +enum bm_isr_reg { + bm_isr_status = 0, + bm_isr_enable = 1, + bm_isr_disable = 2, + bm_isr_inhibit = 3 +}; + +#define BM_ADDR_CE 0 +#define BM_ADDR_CI 1 +struct bm_portal_config { + /* Corenet portal addresses; + * [0]==cache-enabled, [1]==cache-inhibited. */ + __iomem void *addr_virt[2]; + struct resource addr_phys[2]; + /* Allow these to be joined in lists */ + struct list_head list; + /* User-visible portal configuration settings */ + struct bman_portal_config public_cfg; +}; + +#ifdef CONFIG_FSL_BMAN_CONFIG +/* Hooks from bman_driver.c to bman_config.c */ +int bman_init_error_int(struct device_node *node); +#endif + +/* Hooks from bman_driver.c in to bman_high.c */ +struct bman_portal *bman_create_affine_portal( + const struct bm_portal_config *config, + int recovery_mode); +struct bman_portal *bman_create_affine_slave(struct bman_portal *redirect); +const struct bm_portal_config *bman_destroy_affine_portal(void); +void bman_recovery_exit_local(void); + +/* Pool logic in the portal driver, during initialisation, needs to know if + * there's access to CCSR or not (if not, it'll cripple the pool allocator). */ +#ifdef CONFIG_FSL_BMAN_CONFIG +int bman_have_ccsr(void); +#else +#define bman_have_ccsr() 0 +#endif + +/* Stockpile build constants. The _LOW value: when bman_acquire() is called and + * the stockpile fill-level is <= _LOW, an acquire is attempted from h/w but it + * might fail (if the buffer pool is depleted). So this value provides some + * "stagger" in that the bman_acquire() function will only fail if lots of bufs + * are requested at once or if h/w has been tested a couple of times without + * luck. The _HIGH value: when bman_release() is called and the stockpile + * fill-level is >= _HIGH, a release is attempted to h/w but it might fail (if + * the release ring is full). So this value provides some "stagger" so that + * ring-access is retried a couple of times prior to the API returning a + * failure. The following *must* be true; + * BMAN_STOCKPILE_HIGH-BMAN_STOCKPILE_LOW > 8 + * (to avoid thrashing) + * BMAN_STOCKPILE_SZ >= 16 + * (as the release logic expects to either send 8 buffers to hw prior to + * adding the given buffers to the stockpile or add the buffers to the + * stockpile before sending 8 to hw, as the API must be an all-or-nothing + * success/fail.) + */ +#define BMAN_STOCKPILE_SZ 16u /* number of bufs in per-pool cache */ +#define BMAN_STOCKPILE_LOW 2u /* when fill is <= this, acquire from hw */ +#define BMAN_STOCKPILE_HIGH 14u /* when fill is >= this, release to hw */ + +/*************************************************/ +/* BMan s/w corenet portal, low-level i/face */ +/*************************************************/ + +/* Used by all portal interrupt registers except 'inhibit'. NB, some of these + * definitions are exported for use by the bman_irqsource_***() APIs, so are + * commented-out here. */ +#if 0 +#define BM_PIRQ_RCRI 0x00000002 /* RCR Ring (below threshold) */ +#define BM_PIRQ_BSCN 0x00000001 /* Buffer depletion State Change */ +#endif +/* This mask contains all the "irqsource" bits visible to API users */ +#define BM_PIRQ_VISIBLE (BM_PIRQ_RCRI | BM_PIRQ_BSCN) + +/* These are bm__(). So for example, bm_disable_write() means "write + * the disable register" rather than "disable the ability to write". */ +#define bm_isr_status_read(bm) __bm_isr_read(bm, bm_isr_status) +#define bm_isr_status_clear(bm, m) __bm_isr_write(bm, bm_isr_status, m) +#define bm_isr_enable_read(bm) __bm_isr_read(bm, bm_isr_enable) +#define bm_isr_enable_write(bm, v) __bm_isr_write(bm, bm_isr_enable, v) +#define bm_isr_disable_read(bm) __bm_isr_read(bm, bm_isr_disable) +#define bm_isr_disable_write(bm, v) __bm_isr_write(bm, bm_isr_disable, v) +#define bm_isr_inhibit(bm) __bm_isr_write(bm, bm_isr_inhibit, 1) +#define bm_isr_uninhibit(bm) __bm_isr_write(bm, bm_isr_inhibit, 0) + +/* Allocate/release an unreserved buffer pool id */ +int bm_pool_new(u32 *bpid); +void bm_pool_free(u32 bpid); + +#ifdef CONFIG_FSL_BMAN_CONFIG +/* Set depletion thresholds associated with a buffer pool. Requires that the + * operating system have access to Bman CCSR (ie. compiled in support and + * run-time access courtesy of the device-tree). */ +int bm_pool_set(u32 bpid, const u32 *thresholds); +#define BM_POOL_THRESH_SW_ENTER 0 +#define BM_POOL_THRESH_SW_EXIT 1 +#define BM_POOL_THRESH_HW_ENTER 2 +#define BM_POOL_THRESH_HW_EXIT 3 + +#endif /* CONFIG_FSL_BMAN_CONFIG */ + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/bman_test.c +++ linux-3.13.0/drivers/staging/fsl_qbman/bman_test.c @@ -0,0 +1,57 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "bman_test.h" + +MODULE_AUTHOR("Geoff Thorpe"); +MODULE_LICENSE("Dual BSD/GPL"); +MODULE_DESCRIPTION("Bman testing"); + +static int test_init(void) +{ +#ifdef CONFIG_FSL_BMAN_TEST_HIGH + int loop = 1; + while (loop--) + bman_test_high(); +#endif +#ifdef CONFIG_FSL_BMAN_TEST_THRESH + bman_test_thresh(); +#endif + return 0; +} + +static void test_exit(void) +{ +} + +module_init(test_init); +module_exit(test_exit); + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/bman_test.h +++ linux-3.13.0/drivers/staging/fsl_qbman/bman_test.h @@ -0,0 +1,92 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +void bman_test_high(void); +void bman_test_thresh(void); + +static inline void __hexdump(unsigned long start, unsigned long end, + unsigned long p, size_t sz, unsigned char *c) +{ + while (start < end) { + unsigned int pos = 0; + char buf[64]; + int nl = 0; + pos += sprintf(buf + pos, "%08lx: ", start); + do { + if ((start < p) || (start >= (p + sz))) + pos += sprintf(buf + pos, ".."); + else + pos += sprintf(buf + pos, "%02x", *(c++)); + if (!(++start & 15)) { + buf[pos++] = '\n'; + nl = 1; + } else { + nl = 0; + if(!(start & 1)) + buf[pos++] = ' '; + if(!(start & 3)) + buf[pos++] = ' '; + } + } while (start & 15); + if (!nl) + buf[pos++] = '\n'; + buf[pos] = '\0'; + pr_info("%s", buf); + } +} +static inline void hexdump(void *ptr, size_t sz) +{ + unsigned long p = (unsigned long)ptr; + unsigned long start = p & ~(unsigned long)15; + unsigned long end = (p + sz + 15) & ~(unsigned long)15; + unsigned char *c = ptr; + __hexdump(start, end, p, sz, c); +} +static inline void hexdump_by_cl(void *ptr, size_t sz) +{ + unsigned long p = (unsigned long)ptr; + unsigned long start = p & ~(unsigned long)63; + unsigned long end = (p + sz + 63) & ~(unsigned long)63; + unsigned char *c = ptr; + __hexdump(start, end, p, sz, c); +} + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/bman_test_high.c +++ linux-3.13.0/drivers/staging/fsl_qbman/bman_test_high.c @@ -0,0 +1,181 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "bman_test.h" +#include "bman_private.h" + +/*************/ +/* constants */ +/*************/ + +#define PORTAL_OPAQUE (void *)0xf00dbeef +#define POOL_OPAQUE (void *)0xdeadabba +#define NUM_BUFS 93 +#define LOOPS 3 +#define BMAN_TOKEN_MASK 0x00FFFFFFFFFFLLU + +/***************/ +/* global vars */ +/***************/ + +static struct bman_pool *pool; +static int depleted; +static struct bm_buffer bufs_in[NUM_BUFS] ____cacheline_aligned; +static struct bm_buffer bufs_out[NUM_BUFS] ____cacheline_aligned; +static int bufs_received; + +/* Predeclare the callback so we can instantiate pool parameters */ +static void depletion_cb(struct bman_portal *, struct bman_pool *, void *, int); + +/**********************/ +/* internal functions */ +/**********************/ + +static void bufs_init(void) +{ + int i; + for (i = 0; i < NUM_BUFS; i++) + bm_buffer_set64(&bufs_in[i], 0xfedc01234567LLU * i); + bufs_received = 0; +} + +static inline int bufs_cmp(const struct bm_buffer *a, const struct bm_buffer *b) +{ + if (bman_ip_rev == BMAN_REV20) { + /* On SoCs with Bman revison 2.0, Bman only respects the 40 + * LS-bits of buffer addresses, masking off the upper 8-bits on + * release commands. The API provides for 48-bit addresses + * because some SoCs support all 48-bits. When generating + * garbage addresses for testing, we either need to zero the + * upper 8-bits when releasing to Bman (otherwise we'll be + * disappointed when the buffers we acquire back from Bman + * don't match), or we need to mask the upper 8-bits off when + * comparing. We do the latter. + */ + if ((bm_buffer_get64(a) & BMAN_TOKEN_MASK) + < (bm_buffer_get64(b) & BMAN_TOKEN_MASK)) + return -1; + if ((bm_buffer_get64(a) & BMAN_TOKEN_MASK) + > (bm_buffer_get64(b) & BMAN_TOKEN_MASK)) + return 1; + } else { + if (bm_buffer_get64(a) < bm_buffer_get64(b)) + return -1; + if (bm_buffer_get64(a) > bm_buffer_get64(b)) + return 1; + } + + return 0; +} + +static void bufs_confirm(void) +{ + int i, j; + for (i = 0; i < NUM_BUFS; i++) { + int matches = 0; + for (j = 0; j < NUM_BUFS; j++) + if (!bufs_cmp(&bufs_in[i], &bufs_out[j])) + matches++; + BUG_ON(matches != 1); + } +} + +/********/ +/* test */ +/********/ + +static void depletion_cb(struct bman_portal *__portal, struct bman_pool *__pool, + void *pool_ctx, int __depleted) +{ + BUG_ON(__pool != pool); + BUG_ON(pool_ctx != POOL_OPAQUE); + depleted = __depleted; +} + +void bman_test_high(void) +{ + struct bman_pool_params pparams = { + .flags = BMAN_POOL_FLAG_DEPLETION | BMAN_POOL_FLAG_DYNAMIC_BPID, + .cb = depletion_cb, + .cb_ctx = POOL_OPAQUE, + }; + int i, loops = LOOPS; + + bufs_init(); + + pr_info("BMAN: --- starting high-level test ---\n"); + + pool = bman_new_pool(&pparams); + BUG_ON(!pool); + + /*******************/ + /* Release buffers */ + /*******************/ +do_loop: + i = 0; + while (i < NUM_BUFS) { + u32 flags = BMAN_RELEASE_FLAG_WAIT; + int num = 8; + if ((i + num) > NUM_BUFS) + num = NUM_BUFS - i; + if ((i + num) == NUM_BUFS) + flags |= BMAN_RELEASE_FLAG_WAIT_SYNC; + if (bman_release(pool, bufs_in + i, num, flags)) + panic("bman_release() failed\n"); + i += num; + } + + /*******************/ + /* Acquire buffers */ + /*******************/ + while (i > 0) { + int tmp, num = 8; + if (num > i) + num = i; + tmp = bman_acquire(pool, bufs_out + i - num, num, 0); + BUG_ON(tmp != num); + i -= num; + } + i = bman_acquire(pool, NULL, 1, 0); + BUG_ON(i > 0); + + bufs_confirm(); + + if (--loops) + goto do_loop; + + /************/ + /* Clean up */ + /************/ + bman_free_pool(pool); + pr_info("BMAN: --- finished high-level test ---\n"); +} + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/bman_test_thresh.c +++ linux-3.13.0/drivers/staging/fsl_qbman/bman_test_thresh.c @@ -0,0 +1,197 @@ +/* Copyright 2010-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "bman_test.h" + +/* Test constants */ +#define TEST_NUMBUFS 129728 +#define TEST_EXIT 129536 +#define TEST_ENTRY 129024 + +struct affine_test_data { + struct task_struct *t; + int cpu; + int expect_affinity; + int drain; + int num_enter; + int num_exit; + struct list_head node; + struct completion wakethread; + struct completion wakeparent; +}; + +static void cb_depletion(struct bman_portal *portal, + struct bman_pool *pool, + void *opaque, + int depleted) +{ + struct affine_test_data *data = opaque; + int c = smp_processor_id(); + pr_info("cb_depletion: bpid=%d, depleted=%d, cpu=%d, original=%d\n", + bman_get_params(pool)->bpid, depleted, c, data->cpu); + /* We should be executing on the CPU of the thread that owns the pool if + * and that CPU has an affine portal (ie. it isn't slaved). */ + BUG_ON((c != data->cpu) && data->expect_affinity); + BUG_ON((c == data->cpu) && !data->expect_affinity); + if (depleted) + data->num_enter++; + else + data->num_exit++; +} + +/* Params used to set up a pool, this also dynamically allocates a BPID */ +struct bman_pool_params params_nocb = { + .flags = BMAN_POOL_FLAG_DYNAMIC_BPID | BMAN_POOL_FLAG_THRESH, + .thresholds = { TEST_ENTRY, TEST_EXIT, 0, 0 } +}; + +/* Params used to set up each cpu's pool with callbacks enabled */ +struct bman_pool_params params_cb = { + .bpid = 0, /* will be replaced to match pool_nocb */ + .flags = BMAN_POOL_FLAG_DEPLETION, + .cb = cb_depletion +}; + +static struct bman_pool *pool_nocb; +static LIST_HEAD(threads); + +static int affine_test(void *__data) +{ + struct bman_pool *pool; + struct affine_test_data *data = __data; + struct bman_pool_params my_params = params_cb; + + pr_info("thread %d: starting\n", data->cpu); + /* create the pool */ + my_params.cb_ctx = data; + pool = bman_new_pool(&my_params); + BUG_ON(!pool); + complete(&data->wakeparent); + wait_for_completion(&data->wakethread); + init_completion(&data->wakethread); + + /* if we're the drainer, we get signalled for that */ + if (data->drain) { + struct bm_buffer buf; + int ret; + pr_info("thread %d: draining...\n", data->cpu); + do { + ret = bman_acquire(pool, &buf, 1, 0); + } while (ret > 0); + pr_info("thread %d: draining done.\n", data->cpu); + complete(&data->wakeparent); + wait_for_completion(&data->wakethread); + init_completion(&data->wakethread); + } + + /* cleanup */ + bman_free_pool(pool); + while (!kthread_should_stop()) + cpu_relax(); + pr_info("thread %d: exiting\n", data->cpu); + return 0; +} + +static struct affine_test_data *start_affine_test(int cpu, int drain) +{ + struct affine_test_data *data = kmalloc(sizeof(*data), GFP_KERNEL); + + if (!data) + return NULL; + data->cpu = cpu; + data->expect_affinity = cpumask_test_cpu(cpu, bman_affine_cpus()); + data->drain = drain; + data->num_enter = 0; + data->num_exit = 0; + init_completion(&data->wakethread); + init_completion(&data->wakeparent); + list_add_tail(&data->node, &threads); + data->t = kthread_create(affine_test, data, "threshtest%d", cpu); + BUG_ON(IS_ERR(data->t)); + kthread_bind(data->t, cpu); + wake_up_process(data->t); + return data; +} + +void bman_test_thresh(void) +{ + int loop = TEST_NUMBUFS; + int ret, num_cpus = 0; + struct affine_test_data *data, *drainer = NULL; + + pr_info("bman_test_thresh: start\n"); + + /* allocate a BPID and seed it */ + pool_nocb = bman_new_pool(¶ms_nocb); + BUG_ON(!pool_nocb); + while (loop--) { + struct bm_buffer buf; + bm_buffer_set64(&buf, 0x0badbeef + loop); + ret = bman_release(pool_nocb, &buf, 1, + BMAN_RELEASE_FLAG_WAIT); + BUG_ON(ret); + } + while (!bman_rcr_is_empty()) + cpu_relax(); + pr_info("bman_test_thresh: buffers are in\n"); + + /* create threads and wait for them to create pools */ + params_cb.bpid = bman_get_params(pool_nocb)->bpid; + for_each_cpu(loop, cpu_online_mask) { + data = start_affine_test(loop, drainer ? 0 : 1); + BUG_ON(!data); + if (!drainer) + drainer = data; + num_cpus++; + wait_for_completion(&data->wakeparent); + } + + /* signal the drainer to start draining */ + complete(&drainer->wakethread); + wait_for_completion(&drainer->wakeparent); + init_completion(&drainer->wakeparent); + + /* tear down */ + list_for_each_entry_safe(data, drainer, &threads, node) { + complete(&data->wakethread); + ret = kthread_stop(data->t); + BUG_ON(ret); + list_del(&data->node); + /* check that we get the expected callbacks (and no others) */ + BUG_ON(data->num_enter != 1); + BUG_ON(data->num_exit != 0); + kfree(data); + } + bman_free_pool(pool_nocb); + + pr_info("bman_test_thresh: done\n"); +} + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/dpa_sys.h +++ linux-3.13.0/drivers/staging/fsl_qbman/dpa_sys.h @@ -0,0 +1,324 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef DPA_SYS_H +#define DPA_SYS_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +/* When copying aligned words or shorts, try to avoid memcpy() */ +#define CONFIG_TRY_BETTER_MEMCPY + +/* This takes a "phandle" and dereferences to the cpu device-tree node, + * returning the cpu index. Returns negative error codes. */ +static inline int check_cpu_phandle(phandle ph) +{ + const u32 *cpu_val; + struct device_node *tmp_node = of_find_node_by_phandle(ph); + int cpu, ret; + + if (!tmp_node) { + pr_err("Bad 'cpu-handle'\n"); + return -EINVAL; + } + cpu_val = of_get_property(tmp_node, "reg", &ret); + if (!cpu_val || (ret != sizeof(*cpu_val))) { + pr_err("Can't get %s property 'reg'\n", tmp_node->full_name); + return -ENODEV; + } + for_each_present_cpu(cpu) { + if (*cpu_val == get_hard_smp_processor_id(cpu)) + goto done; + } + pr_err("Invalid cpu index %d in %s\n", *cpu_val, tmp_node->full_name); + return -ENODEV; +done: + of_node_put(tmp_node); + return cpu; +} + +/* Handle portals destined for USDPAA (user-space). + * + * The UIO layer is mostly Qman/Bman-agnostic, however the rest of the driver is + * separated along interface and implementation lines. So each Qman/Bman driver + * instantiates a dpa_uio_class and links dpa_uio_portal objects into it. If + * the dpa_uio driver module is built, it queries these two classes and creates + * the UIO devices accordingly. + */ +struct dpa_uio_class { + struct list_head list; + const char *dev_prefix; +}; +struct dpa_uio_portal { + enum { + dpa_uio_portal_bman, + dpa_uio_portal_qman, + } type; + union { + const struct bm_portal_config *bm_cfg; + const struct qm_portal_config *qm_cfg; + }; + struct list_head node; +}; +const struct dpa_uio_class *dpa_uio_bman(void); +const struct dpa_uio_class *dpa_uio_qman(void); + +/* These stubs are re-mapped to hypervisor+failover features in kernel trees + * that contain that support. */ +static inline int fsl_dpa_should_recover(void) +{ + return 0; +} +static inline int pamu_enable_liodn(struct device_node *n, int i) +{ + return 0; +} +/***********************/ +/* Misc inline assists */ +/***********************/ + +/* TODO: NB, we currently assume that hwsync() and lwsync() imply compiler + * barriers and that dcb*() won't fall victim to compiler or execution + * reordering with respect to other code/instructions that manipulate the same + * cacheline. */ +#define hwsync() \ + do { \ + __asm__ __volatile__ ("sync" : : : "memory"); \ + } while(0) +#define lwsync() \ + do { \ + __asm__ __volatile__ (stringify_in_c(LWSYNC) : : : "memory"); \ + } while(0) +#define dcbf(p) \ + do { \ + __asm__ __volatile__ ("dcbf 0,%0" : : "r" (p) : "memory"); \ + } while(0) +#define dcbt_ro(p) \ + do { \ + __asm__ __volatile__ ("dcbt 0,%0" : : "r" (p)); \ + } while(0) +#define dcbt_rw(p) \ + do { \ + __asm__ __volatile__ ("dcbtst 0,%0" : : "r" (p)); \ + } while(0) +#define dcbi(p) dcbf(p) +#ifdef CONFIG_PPC_E500MC +#define dcbzl(p) \ + do { \ + __asm__ __volatile__ ("dcbzl 0,%0" : : "r" (p)); \ + } while (0) +#define dcbz_64(p) \ + do { \ + dcbzl(p); \ + } while (0) +#define dcbf_64(p) \ + do { \ + dcbf(p); \ + } while (0) +/* Commonly used combo */ +#define dcbit_ro(p) \ + do { \ + dcbi(p); \ + dcbt_ro(p); \ + } while (0) +#else +#define dcbz(p) \ + do { \ + __asm__ __volatile__ ("dcbz 0,%0" : : "r" (p)); \ + } while (0) +#define dcbz_64(p) \ + do { \ + dcbz((u32)p + 32); \ + dcbz(p); \ + } while (0) +#define dcbf_64(p) \ + do { \ + dcbf((u32)p + 32); \ + dcbf(p); \ + } while (0) +/* Commonly used combo */ +#define dcbit_ro(p) \ + do { \ + dcbi(p); \ + dcbi((u32)p + 32); \ + dcbt_ro(p); \ + dcbt_ro((u32)p + 32); \ + } while (0) +#endif /* CONFIG_PPC_E500MC */ + +static inline u64 mfatb(void) +{ + u32 hi, lo, chk; + do { + hi = mfspr(SPRN_ATBU); + lo = mfspr(SPRN_ATBL); + chk = mfspr(SPRN_ATBU); + } while (unlikely(hi != chk)); + return ((u64)hi << 32) | (u64)lo; +} + +#ifdef CONFIG_FSL_DPA_CHECKING +#define DPA_ASSERT(x) \ + do { \ + if (!(x)) { \ + pr_crit("ASSERT: (%s:%d) %s\n", __FILE__, __LINE__, \ + __stringify_1(x)); \ + dump_stack(); \ + panic("assertion failure"); \ + } \ + } while(0) +#else +#define DPA_ASSERT(x) +#endif + +/* memcpy() stuff - when you know alignments in advance */ +#ifdef CONFIG_TRY_BETTER_MEMCPY +static inline void copy_words(void *dest, const void *src, size_t sz) +{ + u32 *__dest = dest; + const u32 *__src = src; + size_t __sz = sz >> 2; + BUG_ON((unsigned long)dest & 0x3); + BUG_ON((unsigned long)src & 0x3); + BUG_ON(sz & 0x3); + while (__sz--) + *(__dest++) = *(__src++); +} +static inline void copy_shorts(void *dest, const void *src, size_t sz) +{ + u16 *__dest = dest; + const u16 *__src = src; + size_t __sz = sz >> 1; + BUG_ON((unsigned long)dest & 0x1); + BUG_ON((unsigned long)src & 0x1); + BUG_ON(sz & 0x1); + while (__sz--) + *(__dest++) = *(__src++); +} +static inline void copy_bytes(void *dest, const void *src, size_t sz) +{ + u8 *__dest = dest; + const u8 *__src = src; + while (sz--) + *(__dest++) = *(__src++); +} +#else +#define copy_words memcpy +#define copy_shorts memcpy +#define copy_bytes memcpy +#endif + +/************/ +/* RB-trees */ +/************/ + +/* We encapsulate RB-trees so that its easier to use non-linux forms in + * non-linux systems. This also encapsulates the extra plumbing that linux code + * usually provides when using RB-trees. This encapsulation assumes that the + * data type held by the tree is u32. */ + +struct dpa_rbtree { + struct rb_root root; +}; +#define DPA_RBTREE { .root = RB_ROOT } + +static inline void dpa_rbtree_init(struct dpa_rbtree *tree) +{ + tree->root = RB_ROOT; +} + +#define IMPLEMENT_DPA_RBTREE(name, type, node_field, val_field) \ +static inline int name##_push(struct dpa_rbtree *tree, type *obj) \ +{ \ + struct rb_node *parent = NULL, **p = &tree->root.rb_node; \ + while (*p) { \ + u32 item; \ + parent = *p; \ + item = rb_entry(parent, type, node_field)->val_field; \ + if (obj->val_field < item) \ + p = &parent->rb_left; \ + else if (obj->val_field > item) \ + p = &parent->rb_right; \ + else \ + return -EBUSY; \ + } \ + rb_link_node(&obj->node_field, parent, p); \ + rb_insert_color(&obj->node_field, &tree->root); \ + return 0; \ +} \ +static inline void name##_del(struct dpa_rbtree *tree, type *obj) \ +{ \ + rb_erase(&obj->node_field, &tree->root); \ +} \ +static inline type *name##_find(struct dpa_rbtree *tree, u32 val) \ +{ \ + type *ret; \ + struct rb_node *p = tree->root.rb_node; \ + while (p) { \ + ret = rb_entry(p, type, node_field); \ + if (val < ret->val_field) \ + p = p->rb_left; \ + else if (val > ret->val_field) \ + p = p->rb_right; \ + else \ + return ret; \ + } \ + return NULL; \ +} + +#endif /* DPA_SYS_H */ + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/dpa_uio.c +++ linux-3.13.0/drivers/staging/fsl_qbman/dpa_uio.c @@ -0,0 +1,231 @@ +/* Copyright 2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "bman_private.h" +#include "qman_private.h" + +static const char dpa_uio_version[] = "USDPAA UIO portal driver v0.2"; + +static LIST_HEAD(uio_portal_list); + +struct dpa_uio_info { + atomic_t ref; /* exclusive, only one open() at a time */ + struct uio_info uio; + void *addr_ci; + char name[16]; /* big enough for "qman-uio-xx" */ + struct platform_device *pdev; + struct list_head node; +}; + +static int dpa_uio_open(struct uio_info *info, struct inode *inode) +{ + struct dpa_uio_info *i = container_of(info, struct dpa_uio_info, uio); + if (!atomic_dec_and_test(&i->ref)) { + atomic_inc(&i->ref); + return -EBUSY; + } + return 0; +} + +static int dpa_uio_release(struct uio_info *info, struct inode *inode) +{ + struct dpa_uio_info *i = container_of(info, struct dpa_uio_info, uio); + atomic_inc(&i->ref); + return 0; +} + +static int dpa_uio_mmap(struct uio_info *info, struct vm_area_struct *vma) +{ + struct uio_mem *mem; + struct dpa_uio_info *i = container_of(info, struct dpa_uio_info, uio); + + if (vma->vm_pgoff == 0) { + /* CENA */ + mem = &i->uio.mem[0]; + vma->vm_page_prot &= + ~(_PAGE_GUARDED | _PAGE_NO_CACHE | _PAGE_COHERENT); + } else if (vma->vm_pgoff == 1) { + /* CINH */ + mem = &i->uio.mem[1]; + vma->vm_page_prot |= _PAGE_GUARDED | _PAGE_NO_CACHE; + } else { + pr_err("%s: unknown mmap offset %d, rejecting\n", + i->name, (int)vma->vm_pgoff); + return -EINVAL; + } + if ((vma->vm_end - vma->vm_start) != mem->size) { + pr_err("%s: invalid mmap() size %d, expect %d\n", + i->name, (int)(vma->vm_end - vma->vm_start), + (int)mem->size); + return -EINVAL; + } + /* FIXME: UIO appears not to support sizeof(phys_addr_t) > sizeof(void*) + * as mem->addr is 32-bit. Also, it would have been more natural (and in + * keeping with UIO's design intent) to have used the UIO_MEM_PHYS type + * for our two memory regions, and to rely on UIO's own mmap() handler + * (by not declaring our own). Unfortunately UIO does not allow any + * specification of pgprots and assumes cache-inhibited mappings for + * anything physical (see drivers/uio/uio.c, eg. uio_mmap_physical()). + * So UIO could use a couple of improvements as it is not saving us much + * on the kernel nor the user side. The first would be to use PFN + * instead of a raw base address in the uio_mem structs (same reason as + * everywhere else, this covers 4096 times as much address space, and + * why waste lower bits given it has to be page-aligned anyway?). The + * second is to add a pgprot field to uio_mem to be used with _PHYS + * mappings. (Or use a new _PHYS_PGPROT type, for backwards + * compatibility?) */ + /* Normally, we'd ">>PAGE_SHIFT" the mem->addr value here, but due to + * the 36-bit issue, it is already stored as a PFN. */ + return io_remap_pfn_range(vma, vma->vm_start, mem->addr, mem->size, + vma->vm_page_prot); +} + +static irqreturn_t dpa_uio_irq_handler(int irq, struct uio_info *info) +{ + struct dpa_uio_info *i = container_of(info, struct dpa_uio_info, uio); + /* This is the only code outside the regular portal driver that + * manipulates any portal register, so rather than breaking that + * encapsulation I am simply hard-coding the offset to the inhibit + * register here. */ + out_be32(i->addr_ci + 0xe0c, ~(u32)0); + return IRQ_HANDLED; +} + +static void __init dpa_uio_portal_init(struct dpa_uio_portal *p, + const struct dpa_uio_class *c) +{ + struct dpa_uio_info *info; + const struct resource *res; + u32 index; + int irq, ret; + + /* allocate 'info' */ + info = kzalloc(sizeof(*info), GFP_KERNEL); + if (!info) + return; + atomic_set(&info->ref, 1); + if (p->type == dpa_uio_portal_bman) { + res = &p->bm_cfg->addr_phys[0]; + index = p->bm_cfg->public_cfg.index; + irq = p->bm_cfg->public_cfg.irq; + } else { + res = &p->qm_cfg->addr_phys[0]; + index = p->qm_cfg->public_cfg.index; + irq = p->qm_cfg->public_cfg.irq; + } + /* We need to map the cache-inhibited region in the kernel for + * interrupt-handling purposes. */ + info->addr_ci = ioremap_prot(res[BM_ADDR_CI].start, + resource_size(&res[BM_ADDR_CI]), + _PAGE_GUARDED | _PAGE_NO_CACHE); + /* Name the UIO device according to the cell-index. It's supposed to be + * unique for each device class (Qman/Bman), and is also a convenient + * way for user-space to find the UIO device that corresponds to a given + * portal device-tree node. */ + sprintf(info->name, "%s%x", c->dev_prefix, index); + info->pdev = platform_device_alloc(info->name, -1); + if (!info->pdev) { + iounmap(info->addr_ci); + kfree(info); + pr_err("dpa_uio_portal: platform_device_alloc() failed\n"); + return; + } + ret = platform_device_add(info->pdev); + if (ret) { + platform_device_put(info->pdev); + iounmap(info->addr_ci); + kfree(info); + pr_err("dpa_uio_portal: platform_device_add() failed\n"); + return; + } + info->uio.name = info->name; + info->uio.version = dpa_uio_version; + /* Work around the 36-bit UIO issue by bit-shifting the addresses */ + info->uio.mem[BM_ADDR_CE].name = "cena"; + info->uio.mem[BM_ADDR_CE].addr = res[BM_ADDR_CE].start >> PAGE_SHIFT; + info->uio.mem[BM_ADDR_CE].size = resource_size(&res[BM_ADDR_CE]); + info->uio.mem[BM_ADDR_CI].name = "cinh"; + info->uio.mem[BM_ADDR_CI].addr = res[BM_ADDR_CI].start >> PAGE_SHIFT; + info->uio.mem[BM_ADDR_CI].size = resource_size(&res[BM_ADDR_CI]); + info->uio.irq = irq; + info->uio.handler = dpa_uio_irq_handler; + info->uio.mmap = dpa_uio_mmap; + info->uio.open = dpa_uio_open; + info->uio.release = dpa_uio_release; + ret = uio_register_device(&info->pdev->dev, &info->uio); + if (ret) { + platform_device_del(info->pdev); + platform_device_put(info->pdev); + iounmap(info->addr_ci); + kfree(info); + pr_err("dpa_uio_portal: UIO registration failed\n"); + return; + } + list_add_tail(&info->node, &uio_portal_list); + pr_info("USDPAA portal initialised, %s\n", info->name); +} + +static int __init dpa_uio_init(void) +{ + const struct dpa_uio_class *classes[3], **c = classes; + classes[0] = dpa_uio_bman(); + classes[1] = dpa_uio_qman(); + classes[2] = NULL; + while (*c) { + struct dpa_uio_portal *p; + list_for_each_entry(p, &(*c)->list, node) + dpa_uio_portal_init(p, *c); + c++; + } + pr_info("USDPAA portal layer loaded\n"); + return 0; +} + +static void __exit dpa_uio_exit(void) +{ + struct dpa_uio_info *info, *tmp; + list_for_each_entry_safe(info, tmp, &uio_portal_list, node) { + list_del(&info->node); + uio_unregister_device(&info->uio); + platform_device_del(info->pdev); + platform_device_put(info->pdev); + iounmap(info->addr_ci); + pr_info("USDPAA portal removed, %s\n", info->name); + kfree(info); + } + pr_info("USDPAA portal layer unloaded\n"); +} + + +module_init(dpa_uio_init) +module_exit(dpa_uio_exit) +MODULE_LICENSE("GPL"); + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/qman_config.c +++ linux-3.13.0/drivers/staging/fsl_qbman/qman_config.c @@ -0,0 +1,1013 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef CONFIG_SMP +#include /* get_hard_smp_processor_id() */ +#endif + +#include +#include + +#include "qman_private.h" + +/* Last updated for v00.800 of the BG */ + +/* Register offsets */ +#define REG_QCSP_PID_CFG(n) (0x0000 + ((n) * 0x10)) +#define REG_QCSP_IO_CFG(n) (0x0004 + ((n) * 0x10)) +#define REG_QCSP_DD_CFG(n) (0x000c + ((n) * 0x10)) +#define REG_DD_CFG 0x0200 +#define REG_DCP_CFG(n) (0x0300 + ((n) * 0x10)) +#define REG_DCP_DD_CFG(n) (0x0304 + ((n) * 0x10)) +#define REG_DCP_DLM_AVG(n) (0x030c + ((n) * 0x10)) +#define REG_PFDR_FPC 0x0400 +#define REG_PFDR_FP_HEAD 0x0404 +#define REG_PFDR_FP_TAIL 0x0408 +#define REG_PFDR_FP_LWIT 0x0410 +#define REG_PFDR_CFG 0x0414 +#define REG_SFDR_CFG 0x0500 +#define REG_SFDR_IN_USE 0x0504 +#define REG_WQ_CS_CFG(n) (0x0600 + ((n) * 0x04)) +#define REG_WQ_DEF_ENC_WQID 0x0630 +#define REG_WQ_SC_DD_CFG(n) (0x640 + ((n) * 0x04)) +#define REG_WQ_PC_DD_CFG(n) (0x680 + ((n) * 0x04)) +#define REG_WQ_DC0_DD_CFG(n) (0x6c0 + ((n) * 0x04)) +#define REG_WQ_DC1_DD_CFG(n) (0x700 + ((n) * 0x04)) +#define REG_WQ_DCn_DD_CFG(n) (0x6c0 + ((n) * 0x40)) /* n=2,3 */ +#define REG_CM_CFG 0x0800 +#define REG_ECSR 0x0a00 +#define REG_ECIR 0x0a04 +#define REG_EADR 0x0a08 +#define REG_EDATA(n) (0x0a10 + ((n) * 0x04)) +#define REG_SBEC(n) (0x0a80 + ((n) * 0x04)) +#define REG_MCR 0x0b00 +#define REG_MCP(n) (0x0b04 + ((n) * 0x04)) +#define REG_HID_CFG 0x0bf0 +#define REG_IDLE_STAT 0x0bf4 +#define REG_IP_REV_1 0x0bf8 +#define REG_IP_REV_2 0x0bfc +#define REG_FQD_BARE 0x0c00 +#define REG_PFDR_BARE 0x0c20 +#define REG_offset_BAR 0x0004 /* relative to REG_[FQD|PFDR]_BARE */ +#define REG_offset_AR 0x0010 /* relative to REG_[FQD|PFDR]_BARE */ +#define REG_QCSP_BARE 0x0c80 +#define REG_QCSP_BAR 0x0c84 +#define REG_CI_SCHED_CFG 0x0d00 +#define REG_SRCIDR 0x0d04 +#define REG_LIODNR 0x0d08 +#define REG_CI_RLM_AVG 0x0d14 +#define REG_ERR_ISR 0x0e00 /* + "enum qm_isr_reg" */ + +/* Assists for QMAN_MCR */ +#define MCR_INIT_PFDR 0x01000000 +#define MCR_get_rslt(v) (u8)((v) >> 24) +#define MCR_rslt_idle(r) (!rslt || (rslt >= 0xf0)) +#define MCR_rslt_ok(r) (rslt == 0xf0) +#define MCR_rslt_eaccess(r) (rslt == 0xf8) +#define MCR_rslt_inval(r) (rslt == 0xff) + +struct qman; + +/* Follows WQ_CS_CFG0-5 */ +enum qm_wq_class { + qm_wq_portal = 0, + qm_wq_pool = 1, + qm_wq_fman0 = 2, + qm_wq_fman1 = 3, + qm_wq_caam = 4, + qm_wq_pme = 5, + qm_wq_first = qm_wq_portal, + qm_wq_last = qm_wq_pme +}; + +/* Follows FQD_[BARE|BAR|AR] and PFDR_[BARE|BAR|AR] */ +enum qm_memory { + qm_memory_fqd, + qm_memory_pfdr +}; + +/* Used by all error interrupt registers except 'inhibit' */ +#define QM_EIRQ_CIDE 0x20000000 /* Corenet Initiator Data Error */ +#define QM_EIRQ_CTDE 0x10000000 /* Corenet Target Data Error */ +#define QM_EIRQ_CITT 0x08000000 /* Corenet Invalid Target Transaction */ +#define QM_EIRQ_PLWI 0x04000000 /* PFDR Low Watermark */ +#define QM_EIRQ_MBEI 0x02000000 /* Multi-bit ECC Error */ +#define QM_EIRQ_SBEI 0x01000000 /* Single-bit ECC Error */ +#define QM_EIRQ_PEBI 0x00800000 /* PFDR Enqueues Blocked Interrupt */ +#define QM_EIRQ_ICVI 0x00010000 /* Invalid Command Verb */ +#define QM_EIRQ_IDDI 0x00000800 /* Invalid Dequeue (Direct-connect) */ +#define QM_EIRQ_IDFI 0x00000400 /* Invalid Dequeue FQ */ +#define QM_EIRQ_IDSI 0x00000200 /* Invalid Dequeue Source */ +#define QM_EIRQ_IDQI 0x00000100 /* Invalid Dequeue Queue */ +#define QM_EIRQ_IEOI 0x00000008 /* Invalid Enqueue Overflow */ +#define QM_EIRQ_IESI 0x00000004 /* Invalid Enqueue State */ +#define QM_EIRQ_IECI 0x00000002 /* Invalid Enqueue Channel */ +#define QM_EIRQ_IEQI 0x00000001 /* Invalid Enqueue Queue */ + +/* QMAN_ECIR valid error bit */ +#define PORTAL_ECSR_ERR (QM_EIRQ_IEQI | QM_EIRQ_IESI | QM_EIRQ_IEOI | \ + QM_EIRQ_IDQI | QM_EIRQ_IDSI | QM_EIRQ_IDFI | \ + QM_EIRQ_IDDI | QM_EIRQ_ICVI) +#define FQID_ECSR_ERR (QM_EIRQ_IEQI | QM_EIRQ_IECI | QM_EIRQ_IESI | \ + QM_EIRQ_IEOI | QM_EIRQ_IDQI | QM_EIRQ_IDFI) + +union qman_ecir { + u32 ecir_raw; + struct { + u32 __reserved:2; + u32 portal_type:1; + u32 portal_num:5; + u32 fqid:24; + } __packed info; +}; + +union qman_eadr { + u32 eadr_raw; + struct { + u32 __reserved1:4; + u32 memid:4; + u32 __reserved2:12; + u32 eadr:12; + } __packed info; +}; + +struct qman_hwerr_txt { + u32 mask; + const char *txt; +}; + +#define QMAN_HWE_TXT(a, b) { .mask = QM_EIRQ_##a, .txt = b } + +static const struct qman_hwerr_txt qman_hwerr_txts[] = { + QMAN_HWE_TXT(CIDE, "Corenet Initiator Data Error"), + QMAN_HWE_TXT(CTDE, "Corenet Target Data Error"), + QMAN_HWE_TXT(CITT, "Corenet Invalid Target Transaction"), + QMAN_HWE_TXT(PLWI, "PFDR Low Watermark"), + QMAN_HWE_TXT(MBEI, "Multi-bit ECC Error"), + QMAN_HWE_TXT(SBEI, "Single-bit ECC Error"), + QMAN_HWE_TXT(PEBI, "PFDR Enqueues Blocked Interrupt"), + QMAN_HWE_TXT(ICVI, "Invalid Command Verb"), + QMAN_HWE_TXT(IDDI, "Invalid Dequeue (Direct-connect)"), + QMAN_HWE_TXT(IDFI, "Invalid Dequeue FQ"), + QMAN_HWE_TXT(IDSI, "Invalid Dequeue Source"), + QMAN_HWE_TXT(IDQI, "Invalid Dequeue Queue"), + QMAN_HWE_TXT(IEOI, "Invalid Enqueue Overflow"), + QMAN_HWE_TXT(IESI, "Invalid Enqueue State"), + QMAN_HWE_TXT(IECI, "Invalid Enqueue Channel"), + QMAN_HWE_TXT(IEQI, "Invalid Enqueue Queue") +}; +#define QMAN_HWE_COUNT (sizeof(qman_hwerr_txts)/sizeof(struct qman_hwerr_txt)) + +struct qman_error_info_mdata { + u16 addr_mask; + u16 bits; + const char *txt; +}; + +#define QMAN_ERR_MDATA(a, b, c) { .addr_mask = a, .bits = b, .txt = c} +static const struct qman_error_info_mdata error_mdata[] = { + QMAN_ERR_MDATA(0x01FF, 24, "FQD cache tag memory 0"), + QMAN_ERR_MDATA(0x01FF, 24, "FQD cache tag memory 1"), + QMAN_ERR_MDATA(0x01FF, 24, "FQD cache tag memory 2"), + QMAN_ERR_MDATA(0x01FF, 24, "FQD cache tag memory 3"), + QMAN_ERR_MDATA(0x0FFF, 512, "FQD cache memory"), + QMAN_ERR_MDATA(0x07FF, 128, "SFDR memory"), + QMAN_ERR_MDATA(0x01FF, 72, "WQ context memory"), + QMAN_ERR_MDATA(0x00FF, 240, "CGR memory"), + QMAN_ERR_MDATA(0x00FF, 302, "Internal Order Restoration List memory"), + QMAN_ERR_MDATA(0x01FF, 256, "SW portal ring memory"), +}; +#define QMAN_ERR_MDATA_COUNT \ + (sizeof(error_mdata)/sizeof(struct qman_error_info_mdata)) + +/* Add this in Kconfig */ +#define QMAN_ERRS_TO_UNENABLE (QM_EIRQ_PLWI | QM_EIRQ_PEBI) + +/** + * qm_err_isr__ - Manipulate global interrupt registers + * @v: for accessors that write values, this is the 32-bit value + * + * Manipulates QMAN_ERR_ISR, QMAN_ERR_IER, QMAN_ERR_ISDR, QMAN_ERR_IIR. All + * manipulations except qm_err_isr_[un]inhibit() use 32-bit masks composed of + * the QM_EIRQ_*** definitions. Note that "qm_err_isr_enable_write" means + * "write the enable register" rather than "enable the write register"! + */ +#define qm_err_isr_status_read(qm) __qm_err_isr_read(qm, qm_isr_status) +#define qm_err_isr_status_clear(qm, m) __qm_err_isr_write(qm, qm_isr_status,m) +#define qm_err_isr_enable_read(qm) __qm_err_isr_read(qm, qm_isr_enable) +#define qm_err_isr_enable_write(qm, v) __qm_err_isr_write(qm, qm_isr_enable,v) +#define qm_err_isr_disable_read(qm) __qm_err_isr_read(qm, qm_isr_disable) +#define qm_err_isr_disable_write(qm, v) __qm_err_isr_write(qm, qm_isr_disable,v) +#define qm_err_isr_inhibit(qm) __qm_err_isr_write(qm, qm_isr_inhibit,1) +#define qm_err_isr_uninhibit(qm) __qm_err_isr_write(qm, qm_isr_inhibit,0) + +/* + * TODO: unimplemented registers + * + * Keeping a list here of Qman registers I have not yet covered; + * QCSP_DD_IHRSR, QCSP_DD_IHRFR, QCSP_DD_HASR, + * DCP_DD_IHRSR, DCP_DD_IHRFR, DCP_DD_HASR, CM_CFG, + * QMAN_EECC, QMAN_SBET, QMAN_EINJ, QMAN_SBEC0-12 + */ + +/* Encapsulate "struct qman *" as a cast of the register space address. */ + +static struct qman *qm_create(void *regs) +{ + return (struct qman *)regs; +} + +static inline u32 __qm_in(struct qman *qm, u32 offset) +{ + return in_be32((void *)qm + offset); +} +static inline void __qm_out(struct qman *qm, u32 offset, u32 val) +{ + out_be32((void *)qm + offset, val); +} +#define qm_in(reg) __qm_in(qm, REG_##reg) +#define qm_out(reg, val) __qm_out(qm, REG_##reg, val) + +static u32 __qm_err_isr_read(struct qman *qm, enum qm_isr_reg n) +{ + return __qm_in(qm, REG_ERR_ISR + (n << 2)); +} + +static void __qm_err_isr_write(struct qman *qm, enum qm_isr_reg n, u32 val) +{ + __qm_out(qm, REG_ERR_ISR + (n << 2), val); +} + +#if 0 + +static void qm_set_portal(struct qman *qm, u8 swportalID, + u16 ec_tp_cfg, u16 ecd_tp_cfg) +{ + qm_out(QCSP_DD_CFG(swportalID), + ((ec_tp_cfg & 0x1ff) << 16) | (ecd_tp_cfg & 0x1ff)); +} + +static void qm_set_ddebug(struct qman *qm, u8 mdd, u8 m_cfg) +{ + qm_out(DD_CFG, ((mdd & 0x3) << 4) | (m_cfg & 0xf)); +} + +static void qm_set_dc_ddebug(struct qman *qm, enum qm_dc_portal portal, u16 ecd_tp_cfg) +{ + qm_out(DCP_DD_CFG(portal), ecd_tp_cfg & 0x1ff); +} + +static u32 qm_get_pfdr_free_pool_count(struct qman *qm) +{ + return qm_in(PFDR_FPC); +} + +static void qm_get_pfdr_free_pool(struct qman *qm, u32 *head, u32 *tail) +{ + *head = qm_in(PFDR_FP_HEAD); + *tail = qm_in(PFDR_FP_TAIL); +} + +static void qm_set_default_wq(struct qman *qm, u16 wqid) +{ + qm_out(WQ_DEF_ENC_WQID, wqid); +} + +static void qm_set_channel_ddebug(struct qman *qm, enum qm_channel channel, + u16 tp_cfg) +{ + u32 offset; + int upperhalf = 0; + if ((channel >= qm_channel_swportal0) && + (channel <= qm_channel_swportal9)) { + offset = (channel - qm_channel_swportal0); + upperhalf = offset & 0x1; + offset = REG_WQ_SC_DD_CFG(offset / 2); + } else if ((channel >= qm_channel_pool1) && + (channel <= qm_channel_pool15)) { + offset = (channel + 1 - qm_channel_pool1); + upperhalf = offset & 0x1; + offset = REG_WQ_PC_DD_CFG(offset / 2); + } else if ((channel >= qm_channel_fman0_sp0) && + (channel <= qm_channel_fman0_sp11)) { + offset = (channel - qm_channel_fman0_sp0); + upperhalf = offset & 0x1; + offset = REG_WQ_DC0_DD_CFG(offset / 2); + } + else if ((channel >= qm_channel_fman1_sp0) && + (channel <= qm_channel_fman1_sp11)) { + offset = (channel - qm_channel_fman1_sp0); + upperhalf = offset & 0x1; + offset = REG_WQ_DC1_DD_CFG(offset / 2); + } + else if (channel == qm_channel_caam) + offset = REG_WQ_DCn_DD_CFG(2); + else if (channel == qm_channel_pme) + offset = REG_WQ_DCn_DD_CFG(3); + else { + pr_crit("Illegal qm_channel type %d\n", channel); + return; + } + __qm_out(qm, offset, upperhalf ? ((u32)tp_cfg << 16) : tp_cfg); +} + +static void qm_get_details(struct qman *qm, u8 *int_options, u8 *errata, + u8 *conf_options) +{ + u32 v = qm_in(IP_REV_1); + *int_options = (v >> 16) & 0xff; + *errata = (v >> 8) & 0xff; + *conf_options = v & 0xff; +} + +static void qm_set_corenet_bar(struct qman *qm, u16 eba, u32 ba) +{ + /* choke if 'ba' isn't properly aligned */ + DPA_ASSERT(!(ba & 0x001fffff)); + qm_out(QCSP_BARE, eba); + qm_out(QCSP_BAR, ba); +} + +static u8 qm_get_corenet_sourceid(struct qman *qm) +{ + return qm_in(SRCIDR); +} + +static u16 qm_get_liodn(struct qman *qm) +{ + return qm_in(LIODNR); +} + +static void qm_set_congestion_config(struct qman *qm, u16 pres) +{ + qm_out(CM_CFG, pres); +} + +#endif + +static void qm_set_dc(struct qman *qm, enum qm_dc_portal portal, + int ed, u8 sernd) +{ + DPA_ASSERT(!ed || (portal == qm_dc_portal_fman0) || + (portal == qm_dc_portal_fman1)); + qm_out(DCP_CFG(portal), (ed ? 0x100 : 0) | (sernd & 0x1f)); +} + +static void qm_set_wq_scheduling(struct qman *qm, enum qm_wq_class wq_class, + u8 cs_elev, u8 csw2, u8 csw3, u8 csw4, u8 csw5, + u8 csw6, u8 csw7) +{ +#ifdef CONFIG_FSL_QMAN_BUG_AND_FEATURE_REV1 +#define csw(x) \ +do { \ + if (++x == 8) \ + x = 7; \ +} while (0) + if (qman_ip_rev == QMAN_REV10) { + csw(csw2); + csw(csw3); + csw(csw4); + csw(csw5); + csw(csw6); + csw(csw7); + } +#endif + qm_out(WQ_CS_CFG(wq_class), ((cs_elev & 0xff) << 24) | + ((csw2 & 0x7) << 20) | ((csw3 & 0x7) << 16) | + ((csw4 & 0x7) << 12) | ((csw5 & 0x7) << 8) | + ((csw6 & 0x7) << 4) | (csw7 & 0x7)); +} + +static void qm_set_hid(struct qman *qm) +{ +#ifdef CONFIG_FSL_QMAN_BUG_AND_FEATURE_REV1 + if (qman_ip_rev == QMAN_REV10) + qm_out(HID_CFG, 3); + else +#endif + qm_out(HID_CFG, 0); +} + +static void qm_set_corenet_initiator(struct qman *qm) +{ + qm_out(CI_SCHED_CFG, + 0x80000000 | /* write srcciv enable */ + (CONFIG_FSL_QMAN_CI_SCHED_CFG_SRCCIV << 24) | + (CONFIG_FSL_QMAN_CI_SCHED_CFG_SRQ_W << 8) | + (CONFIG_FSL_QMAN_CI_SCHED_CFG_RW_W << 4) | + CONFIG_FSL_QMAN_CI_SCHED_CFG_BMAN_W); +} + +static void qm_get_version(struct qman *qm, u16 *id, u8 *major, u8 *minor) +{ + u32 v = qm_in(IP_REV_1); + *id = (v >> 16); + *major = (v >> 8) & 0xff; + *minor = v & 0xff; +} + +static void qm_set_memory(struct qman *qm, enum qm_memory memory, u64 ba, + int enable, int prio, int stash, u32 size) +{ + u32 offset = (memory == qm_memory_fqd) ? REG_FQD_BARE : REG_PFDR_BARE; + u32 exp = ilog2(size); + /* choke if size isn't within range */ + DPA_ASSERT((size >= 4096) && (size <= 1073741824) && + is_power_of_2(size)); + /* choke if 'ba' has lower-alignment than 'size' */ + DPA_ASSERT(!(ba & (size - 1))); + __qm_out(qm, offset, upper_32_bits(ba)); + __qm_out(qm, offset + REG_offset_BAR, lower_32_bits(ba)); + __qm_out(qm, offset + REG_offset_AR, + (enable ? 0x80000000 : 0) | + (prio ? 0x40000000 : 0) | + (stash ? 0x20000000 : 0) | + (exp - 1)); +} + +static void qm_set_pfdr_threshold(struct qman *qm, u32 th, u8 k) +{ + qm_out(PFDR_FP_LWIT, th & 0xffffff); + qm_out(PFDR_CFG, k); +} + +static void qm_set_sfdr_threshold(struct qman *qm, u16 th) +{ + qm_out(SFDR_CFG, th & 0x3ff); +} + +static int qm_init_pfdr(struct qman *qm, u32 pfdr_start, u32 num) +{ + u8 rslt = MCR_get_rslt(qm_in(MCR)); + + DPA_ASSERT(pfdr_start && !(pfdr_start & 7) && !(num & 7) && num); + /* Make sure the command interface is 'idle' */ + if(!MCR_rslt_idle(rslt)) + panic("QMAN_MCR isn't idle"); + + /* Write the MCR command params then the verb */ + qm_out(MCP(0), pfdr_start ); + /* TODO: remove this - it's a workaround for a model bug that is + * corrected in more recent versions. We use the workaround until + * everyone has upgraded. */ + qm_out(MCP(1), (pfdr_start + num - 16)); + lwsync(); + qm_out(MCR, MCR_INIT_PFDR); + + /* Poll for the result */ + do { + rslt = MCR_get_rslt(qm_in(MCR)); + } while(!MCR_rslt_idle(rslt)); + if (MCR_rslt_ok(rslt)) + return 0; + if (MCR_rslt_eaccess(rslt)) + return -EACCES; + if (MCR_rslt_inval(rslt)) + return -EINVAL; + pr_crit("Unexpected result from MCR_INIT_PFDR: %02x\n", rslt); + return -ENOSYS; +} + +/*****************/ +/* Config driver */ +/*****************/ + +/* TODO: Kconfig these? */ +#define DEFAULT_FQD_SZ (PAGE_SIZE << CONFIG_FSL_QMAN_FQD_SZ) +#define DEFAULT_PFDR_SZ (PAGE_SIZE << 12) + +/* We support only one of these */ +static struct qman *qm; +static struct device_node *qm_node; + +/* Parse the property to extract the memory location and size and + * memblock_reserve() it. If it isn't supplied, memblock_alloc() the default size. */ +static __init int parse_mem_property(struct device_node *node, const char *name, + dma_addr_t *addr, size_t *sz, int zero) +{ + const u32 *pint; + int ret; + + pint = of_get_property(node, name, &ret); + if (!pint || (ret != 16)) { + pr_info("No %s property '%s', using memblock_alloc(%016zx)\n", + node->full_name, name, *sz); + *addr = memblock_alloc(*sz, *sz); + if (zero) + memset(phys_to_virt(*addr), 0, *sz); + return 0; + } + pr_info("Using %s property '%s'\n", node->full_name, name); + /* If using a "zero-pma", don't try to zero it, even if you asked */ + if (zero && of_find_property(node, "zero-pma", &ret)) { + pr_info(" it's a 'zero-pma', not zeroing from s/w\n"); + zero = 0; + } + *addr = ((u64)pint[0] << 32) | (u64)pint[1]; + *sz = ((u64)pint[2] << 32) | (u64)pint[3]; + /* Keep things simple, it's either all in the DRAM range or it's all + * outside. */ + if (*addr < memblock_end_of_DRAM()) { + BUG_ON((u64)*addr + (u64)*sz > memblock_end_of_DRAM()); + if (memblock_reserve(*addr, *sz) < 0) { + pr_err("Failed to reserve %s\n", name); + return -ENOMEM; + } + if (zero) + memset(phys_to_virt(*addr), 0, *sz); + } else if (zero) { + /* map as cacheable, non-guarded */ + void *tmpp = ioremap_prot(*addr, *sz, 0); + memset(tmpp, 0, *sz); + iounmap(tmpp); + } + return 0; +} + +/* TODO: + * - there is obviously no handling of errors, + * - the calls to qm_set_memory() hard-code the priority and CPC-stashing for + * both memory resources to zero. + */ +static int __init fsl_qman_init(struct device_node *node) +{ + struct resource res; + u32 __iomem *regs; + const char *s; + dma_addr_t fqd_a = 0, pfdr_a = 0; + size_t fqd_sz = DEFAULT_FQD_SZ, pfdr_sz = DEFAULT_PFDR_SZ; + int ret, standby = 0; + u16 id; + u8 major, minor; + + ret = of_address_to_resource(node, 0, &res); + if (ret) { + pr_err("Can't get %s property '%s'\n", node->full_name, "reg"); + return ret; + } + s = of_get_property(node, "fsl,hv-claimable", &ret); + if (s && !strcmp(s, "standby")) + standby = 1; + if (!standby) { + ret = parse_mem_property(node, "fsl,qman-fqd", + &fqd_a, &fqd_sz, 1); + BUG_ON(ret); + ret = parse_mem_property(node, "fsl,qman-pfdr", + &pfdr_a, &pfdr_sz, 0); + BUG_ON(ret); + } + /* Global configuration */ + regs = ioremap(res.start, res.end - res.start + 1); + qm = qm_create(regs); + qm_node = node; + qm_get_version(qm, &id, &major, &minor); + pr_info("Qman ver:%04x,%02x,%02x\n", id, major, minor); + if (!qman_ip_rev) { + if ((major == 1) && (minor == 0)) + qman_ip_rev = QMAN_REV10; + else if ((major == 1) && (minor == 1)) + qman_ip_rev = QMAN_REV11; + else if ((major == 1) && (minor == 2)) + qman_ip_rev = QMAN_REV12; + else if ((major == 2) && (minor == 0)) + qman_ip_rev = QMAN_REV20; + else { + pr_warning("unknown Qman version, default to rev1.1\n"); + qman_ip_rev = QMAN_REV11; + } + } + + if (standby) { + pr_info(" -> in standby mode\n"); + return 0; + } + /* FQD memory */ + qm_set_memory(qm, qm_memory_fqd, fqd_a, 1, 0, 0, fqd_sz); + /* PFDR memory */ + qm_set_memory(qm, qm_memory_pfdr, pfdr_a, 1, 0, 0, pfdr_sz); + qm_init_pfdr(qm, 8, pfdr_sz / 64 - 8); + /* thresholds */ + qm_set_pfdr_threshold(qm, 512, 64); + qm_set_sfdr_threshold(qm, 128); + /* clear stale PEBI bit from interrupt status register */ + qm_err_isr_status_clear(qm, QM_EIRQ_PEBI); + /* corenet initiator settings */ + qm_set_corenet_initiator(qm); + /* HID settings */ + qm_set_hid(qm); + /* Set scheduling weights to defaults */ + for (ret = qm_wq_first; ret <= qm_wq_last; ret++) + qm_set_wq_scheduling(qm, ret, 0, 0, 0, 0, 0, 0, 0); + /* We are not prepared to accept ERNs for hardware enqueues */ + qm_set_dc(qm, qm_dc_portal_fman0, 1, 0); + qm_set_dc(qm, qm_dc_portal_fman1, 1, 0); + return 0; +} + +int qman_have_ccsr(void) +{ + return qm ? 1 : 0; +} + +__init void qman_init_early(void) +{ + struct device_node *dn; + for_each_compatible_node(dn, NULL, "fsl,qman") { + if (qm) + pr_err("%s: only one 'fsl,qman' allowed\n", + dn->full_name); + else { + int ret = fsl_qman_init(dn); + BUG_ON(ret); + } + } +} + +static void log_edata_bits(u32 bit_count) +{ + u32 i, j, mask = 0xffffffff; + + pr_warning("Qman ErrInt, EDATA:\n"); + i = bit_count/32; + if (bit_count%32) { + i++; + mask = ~(mask << bit_count%32); + } + j = 16-i; + pr_warning(" 0x%08x\n", qm_in(EDATA(j)) & mask); + j++; + for (; j < 16; j++) + pr_warning(" 0x%08x\n", qm_in(EDATA(j))); +} + +static void log_additional_error_info(u32 isr_val, u32 ecsr_val) +{ + union qman_ecir ecir_val; + union qman_eadr eadr_val; + + ecir_val.ecir_raw = qm_in(ECIR); + /* Is portal info valid */ + if (ecsr_val & PORTAL_ECSR_ERR) { + pr_warning("Qman ErrInt: %s id %d\n", + (ecir_val.info.portal_type) ? + "DCP" : "SWP", ecir_val.info.portal_num); + } + if (ecsr_val & FQID_ECSR_ERR) { + pr_warning("Qman ErrInt: ecir.fqid 0x%x\n", + ecir_val.info.fqid); + } + if (ecsr_val & (QM_EIRQ_SBEI|QM_EIRQ_MBEI)) { + eadr_val.eadr_raw = qm_in(EADR); + pr_warning("Qman ErrInt: EADR Memory: %s, 0x%x\n", + error_mdata[eadr_val.info.memid].txt, + error_mdata[eadr_val.info.memid].addr_mask + & eadr_val.info.eadr); + log_edata_bits(error_mdata[eadr_val.info.memid].bits); + } +} + +/* Qman interrupt handler */ +static irqreturn_t qman_isr(int irq, void *ptr) +{ + u32 isr_val, ier_val, ecsr_val, isr_mask, i; + + ier_val = qm_err_isr_enable_read(qm); + isr_val = qm_err_isr_status_read(qm); + ecsr_val = qm_in(ECSR); + isr_mask = isr_val & ier_val; + + if (!isr_mask) + return IRQ_NONE; + for (i = 0; i < QMAN_HWE_COUNT; i++) { + if (qman_hwerr_txts[i].mask & isr_mask) { + pr_warning("Qman ErrInt: %s\n", qman_hwerr_txts[i].txt); + if (qman_hwerr_txts[i].mask & ecsr_val) { + log_additional_error_info(isr_mask, ecsr_val); + /* Re-arm error capture registers */ + qm_out(ECSR, ecsr_val); + } + if (qman_hwerr_txts[i].mask & QMAN_ERRS_TO_UNENABLE) { + pr_devel("Qman un-enabling error 0x%x\n", + qman_hwerr_txts[i].mask); + ier_val &= ~qman_hwerr_txts[i].mask; + qm_err_isr_enable_write(qm, ier_val); + } + } + } + qm_err_isr_status_clear(qm, isr_val); + return IRQ_HANDLED; +} + +static int __bind_irq(void) +{ + int ret, err_irq; + + err_irq = of_irq_to_resource(qm_node, 0, NULL); + if (err_irq == NO_IRQ) { + pr_info("Can't get %s property '%s'\n", qm_node->full_name, + "interrupts"); + return -ENODEV; + } + ret = request_irq(err_irq, qman_isr, IRQF_SHARED, "qman-err", qm_node); + if (ret) { + pr_err("request_irq() failed %d for '%s'\n", ret, + qm_node->full_name); + return -ENODEV; + } + /* Write-to-clear any stale bits, (eg. starvation being asserted prior + * to resource allocation during driver init). */ + qm_err_isr_status_clear(qm, 0xffffffff); + /* Enable Error Interrupts */ + qm_err_isr_enable_write(qm, 0xffffffff); + return 0; +} + +/* Initialise Error Interrupt Handler */ +int qman_init_error_int(struct device_node *node) +{ + if (!qman_have_ccsr()) + return 0; + if (node != qm_node) + return -EINVAL; + return __bind_irq(); +} + +#define PID_CFG_LIODN_MASK 0x0fff0000 +void qman_liodn_fixup(enum qm_channel channel) +{ + static int done; + static u32 liodn_offset; + u32 before, after; + int idx = channel - qm_channel_swportal0; + + if (!qman_have_ccsr()) + return; + before = qm_in(QCSP_PID_CFG(idx)); + if (!done) { + liodn_offset = before & PID_CFG_LIODN_MASK; + done = 1; + return; + } + after = (before & (~PID_CFG_LIODN_MASK)) | liodn_offset; + qm_out(QCSP_PID_CFG(idx), after); +} + +#ifdef CONFIG_SYSFS + +#define DRV_NAME "fsl-qman" + +static ssize_t show_pfdr_fpc(struct device *dev, + struct device_attribute *dev_attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%u\n", qm_in(PFDR_FPC)); +}; + +static ssize_t show_dlm_avg(struct device *dev, + struct device_attribute *dev_attr, char *buf) +{ + u32 data; + int i; + + if (!sscanf(dev_attr->attr.name, "dcp%d_dlm_avg", &i)) + return -EINVAL; + data = qm_in(DCP_DLM_AVG(i)); + return snprintf(buf, PAGE_SIZE, "%d.%08d\n", data>>8, + (data & 0x000000ff)*390625); +}; + +static ssize_t set_dlm_avg(struct device *dev, + struct device_attribute *dev_attr, const char *buf, size_t count) +{ + unsigned long val; + int i; + + if (!sscanf(dev_attr->attr.name, "dcp%d_dlm_avg", &i)) + return -EINVAL; + if (strict_strtoul(buf, 0, &val)) { + dev_dbg(dev, "invalid input %s\n", buf); + return -EINVAL; + } + qm_out(DCP_DLM_AVG(i), val); + return count; +}; + +static ssize_t show_pfdr_cfg(struct device *dev, + struct device_attribute *dev_attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%u\n", qm_in(PFDR_CFG)); +}; + +static ssize_t set_pfdr_cfg(struct device *dev, + struct device_attribute *dev_attr, const char *buf, size_t count) +{ + unsigned long val; + + if (strict_strtoul(buf, 0, &val)) { + dev_dbg(dev, "invalid input %s\n", buf); + return -EINVAL; + } + qm_out(PFDR_CFG, val); + return count; +}; + +static ssize_t show_sfdr_in_use(struct device *dev, + struct device_attribute *dev_attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%u\n", qm_in(SFDR_IN_USE)); +}; + +static ssize_t show_idle_stat(struct device *dev, + struct device_attribute *dev_attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "%u\n", qm_in(IDLE_STAT)); +}; + +static ssize_t show_ci_rlm_avg(struct device *dev, + struct device_attribute *dev_attr, char *buf) +{ + u32 data = qm_in(CI_RLM_AVG); + return snprintf(buf, PAGE_SIZE, "%d.%08d\n", data>>8, + (data & 0x000000ff)*390625); +}; + +static ssize_t set_ci_rlm_avg(struct device *dev, + struct device_attribute *dev_attr, const char *buf, size_t count) +{ + unsigned long val; + + if (strict_strtoul(buf, 0, &val)) { + dev_dbg(dev, "invalid input %s\n", buf); + return -EINVAL; + } + qm_out(CI_RLM_AVG, val); + return count; +}; + +static ssize_t show_err_isr(struct device *dev, + struct device_attribute *dev_attr, char *buf) +{ + return snprintf(buf, PAGE_SIZE, "0x%08x\n", qm_in(ERR_ISR)); +}; + + +static ssize_t show_sbec(struct device *dev, + struct device_attribute *dev_attr, char *buf) +{ + int i; + + if (!sscanf(dev_attr->attr.name, "sbec_%d", &i)) + return -EINVAL; + return snprintf(buf, PAGE_SIZE, "%u\n", qm_in(SBEC(i))); +}; + +static DEVICE_ATTR(pfdr_fpc, S_IRUSR, show_pfdr_fpc, NULL); +static DEVICE_ATTR(pfdr_cfg, S_IRUSR, show_pfdr_cfg, set_pfdr_cfg); +static DEVICE_ATTR(idle_stat, S_IRUSR, show_idle_stat, NULL); +static DEVICE_ATTR(ci_rlm_avg, (S_IRUSR|S_IWUGO), + show_ci_rlm_avg, set_ci_rlm_avg); +static DEVICE_ATTR(err_isr, S_IRUSR, show_err_isr, NULL); +static DEVICE_ATTR(sfdr_in_use, S_IRUSR, show_sfdr_in_use, NULL); + +static DEVICE_ATTR(dcp0_dlm_avg, (S_IRUSR|S_IWUGO), show_dlm_avg, set_dlm_avg); +static DEVICE_ATTR(dcp1_dlm_avg, (S_IRUSR|S_IWUGO), show_dlm_avg, set_dlm_avg); +static DEVICE_ATTR(dcp2_dlm_avg, (S_IRUSR|S_IWUGO), show_dlm_avg, set_dlm_avg); +static DEVICE_ATTR(dcp3_dlm_avg, (S_IRUSR|S_IWUGO), show_dlm_avg, set_dlm_avg); + +static DEVICE_ATTR(sbec_0, S_IRUSR, show_sbec, NULL); +static DEVICE_ATTR(sbec_1, S_IRUSR, show_sbec, NULL); +static DEVICE_ATTR(sbec_2, S_IRUSR, show_sbec, NULL); +static DEVICE_ATTR(sbec_3, S_IRUSR, show_sbec, NULL); +static DEVICE_ATTR(sbec_4, S_IRUSR, show_sbec, NULL); +static DEVICE_ATTR(sbec_5, S_IRUSR, show_sbec, NULL); +static DEVICE_ATTR(sbec_6, S_IRUSR, show_sbec, NULL); + + +static struct attribute *qman_dev_attributes[] = { + &dev_attr_pfdr_fpc.attr, + &dev_attr_pfdr_cfg.attr, + &dev_attr_idle_stat.attr, + &dev_attr_ci_rlm_avg.attr, + &dev_attr_err_isr.attr, + &dev_attr_dcp0_dlm_avg.attr, + &dev_attr_dcp1_dlm_avg.attr, + &dev_attr_dcp2_dlm_avg.attr, + &dev_attr_dcp3_dlm_avg.attr, + /* sfdr_in_use will be added if necessary */ + NULL +}; + +static struct attribute *qman_dev_ecr_attributes[] = { + &dev_attr_sbec_0.attr, + &dev_attr_sbec_1.attr, + &dev_attr_sbec_2.attr, + &dev_attr_sbec_3.attr, + &dev_attr_sbec_4.attr, + &dev_attr_sbec_5.attr, + &dev_attr_sbec_6.attr, + NULL +}; + +/* root level */ +static const struct attribute_group qman_dev_attr_grp = { + .name = NULL, + .attrs = qman_dev_attributes +}; +static const struct attribute_group qman_dev_ecr_grp = { + .name = "error_capture", + .attrs = qman_dev_ecr_attributes +}; + +static int of_fsl_qman_remove(struct platform_device *ofdev) +{ + sysfs_remove_group(&ofdev->dev.kobj, &qman_dev_attr_grp); + return 0; +}; + +static int of_fsl_qman_probe(struct platform_device *ofdev) +{ + int ret; + + ret = sysfs_create_group(&ofdev->dev.kobj, &qman_dev_attr_grp); + if (ret) + goto done; + if (qman_ip_rev != QMAN_REV10) { + ret = sysfs_add_file_to_group(&ofdev->dev.kobj, + &dev_attr_sfdr_in_use.attr, qman_dev_attr_grp.name); + if (ret) + goto del_group_0; + } + ret = sysfs_create_group(&ofdev->dev.kobj, &qman_dev_ecr_grp); + if (ret) + goto del_group_0; + + goto done; + +del_group_0: + sysfs_remove_group(&ofdev->dev.kobj, &qman_dev_attr_grp); +done: + if (ret) + dev_err(&ofdev->dev, + "Cannot create dev attributes ret=%d\n", ret); + return ret; +}; + +static struct of_device_id of_fsl_qman_ids[] = { + { + .compatible = "fsl,qman", + }, + {} +}; +MODULE_DEVICE_TABLE(of, of_fsl_qman_ids); + +static struct platform_driver of_fsl_qman_driver = { + .driver = { + .owner = THIS_MODULE, + .name = DRV_NAME, + .of_match_table = of_fsl_qman_ids, + }, + .probe = of_fsl_qman_probe, + .remove = of_fsl_qman_remove, +}; + +static int qman_ctrl_init(void) +{ + return platform_driver_register(&of_fsl_qman_driver); +} + +static void qman_ctrl_exit(void) +{ + platform_driver_unregister(&of_fsl_qman_driver); +} + +module_init(qman_ctrl_init); +module_exit(qman_ctrl_exit); + +#endif /* CONFIG_SYSFS */ --- linux-3.13.0.orig/drivers/staging/fsl_qbman/qman_debugfs.c +++ linux-3.13.0/drivers/staging/fsl_qbman/qman_debugfs.c @@ -0,0 +1,1314 @@ +/* Copyright 2010-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include + +#include "qman_private.h" + +#define MAX_FQID (0x00ffffff) +#define QM_FQD_BLOCK_SIZE 64 +#define QM_FQD_AR (0xC10) + +static u32 fqid_max; +static u64 qman_ccsr_start; +static u64 qman_ccsr_size; + +static const char *state_txt[] = { + "Out of Service", + "Retired", + "Tentatively Scheduled", + "Truly Scheduled", + "Parked", + "Active, Active Held or Held Suspended", + "Unknown State 6", + "Unknown State 7", + NULL, +}; + +static const u8 fqd_states[] = { + QM_MCR_NP_STATE_OOS, QM_MCR_NP_STATE_RETIRED, QM_MCR_NP_STATE_TEN_SCHED, + QM_MCR_NP_STATE_TRU_SCHED, QM_MCR_NP_STATE_PARKED, + QM_MCR_NP_STATE_ACTIVE}; +static const u32 fqd_states_count = sizeof(fqd_states)/sizeof(u8); + +struct mask_to_text { + u16 mask; + const char *txt; +}; + +struct mask_filter_s { + u16 mask; + u8 filter; +}; + +static const struct mask_filter_s mask_filter[] = { + {QM_FQCTRL_PREFERINCACHE, 0}, + {QM_FQCTRL_PREFERINCACHE, 1}, + {QM_FQCTRL_HOLDACTIVE, 0}, + {QM_FQCTRL_HOLDACTIVE, 1}, + {QM_FQCTRL_AVOIDBLOCK, 0}, + {QM_FQCTRL_AVOIDBLOCK, 1}, + {QM_FQCTRL_FORCESFDR, 0}, + {QM_FQCTRL_FORCESFDR, 1}, + {QM_FQCTRL_CPCSTASH, 0}, + {QM_FQCTRL_CPCSTASH, 1}, + {QM_FQCTRL_CTXASTASHING, 0}, + {QM_FQCTRL_CTXASTASHING, 1}, + {QM_FQCTRL_ORP, 0}, + {QM_FQCTRL_ORP, 1}, + {QM_FQCTRL_TDE, 0}, + {QM_FQCTRL_TDE, 1}, + {QM_FQCTRL_CGE, 0}, + {QM_FQCTRL_CGE, 1} +}; +static const u32 mask_filter_count = + sizeof(mask_filter)/sizeof(struct mask_filter_s); + +static const struct mask_to_text fq_ctrl_text_list[] = { + { + .mask = QM_FQCTRL_PREFERINCACHE, + .txt = "Prefer in cache", + }, + { + .mask = QM_FQCTRL_HOLDACTIVE, + .txt = "Hold active in portal", + }, + { + .mask = QM_FQCTRL_AVOIDBLOCK, + .txt = "Avoid Blocking", + }, + { + .mask = QM_FQCTRL_FORCESFDR, + .txt = "High-priority SFDRs", + }, + { + .mask = QM_FQCTRL_CPCSTASH, + .txt = "CPC Stash Enable", + }, + { + .mask = QM_FQCTRL_CTXASTASHING, + .txt = "Context-A stashing", + }, + { + .mask = QM_FQCTRL_ORP, + .txt = "ORP Enable", + }, + { + .mask = QM_FQCTRL_TDE, + .txt = "Tail-Drop Enable", + }, + { + .mask = QM_FQCTRL_CGE, + .txt = "Congestion Group Enable", + }, + { + .mask = 0, + .txt = NULL, + } +}; + +static const char *get_fqd_ctrl_text(u16 mask) +{ + int i = 0; + + while (fq_ctrl_text_list[i].txt != NULL) { + if (fq_ctrl_text_list[i].mask == mask) + return fq_ctrl_text_list[i].txt; + i++; + } + return NULL; +} + +static const struct mask_to_text stashing_text_list[] = { + { + .mask = QM_STASHING_EXCL_CTX, + .txt = "FQ Ctx Stash" + }, + { + .mask = QM_STASHING_EXCL_DATA, + .txt = "Frame Data Stash", + }, + { + .mask = QM_STASHING_EXCL_ANNOTATION, + .txt = "Frame Annotation Stash", + }, + { + .mask = 0, + .txt = NULL, + }, +}; + +static int user_input_convert(const char __user *user_buf, size_t count, + unsigned long *val) +{ + char buf[12]; + + if (count > sizeof(buf) - 1) + return -EINVAL; + if (copy_from_user(buf, user_buf, count)) + return -EFAULT; + buf[count] = '\0'; + if (strict_strtoul(buf, 0, val)) + return -EINVAL; + return 0; +} + +struct line_buffer_fq { + u32 buf[8]; + u32 buf_cnt; + int line_cnt; +}; + +static void add_to_line_buffer(struct line_buffer_fq *line_buf, u32 fqid, + struct seq_file *file) +{ + line_buf->buf[line_buf->buf_cnt] = fqid; + line_buf->buf_cnt++; + if (line_buf->buf_cnt == 8) { + /* Buffer is full, flush it */ + if (line_buf->line_cnt != 0) + seq_printf(file, ",\n"); + seq_printf(file, "0x%06x,0x%06x,0x%06x,0x%06x,0x%06x," + "0x%06x,0x%06x,0x%06x", + line_buf->buf[0], line_buf->buf[1], line_buf->buf[2], + line_buf->buf[3], line_buf->buf[4], line_buf->buf[5], + line_buf->buf[6], line_buf->buf[7]); + line_buf->buf_cnt = 0; + line_buf->line_cnt++; + } +} + +static void flush_line_buffer(struct line_buffer_fq *line_buf, + struct seq_file *file) +{ + if (line_buf->buf_cnt) { + int y = 0; + if (line_buf->line_cnt != 0) + seq_printf(file, ",\n"); + while (y != line_buf->buf_cnt) { + if (y+1 == line_buf->buf_cnt) + seq_printf(file, "0x%06x", line_buf->buf[y]); + else + seq_printf(file, "0x%06x,", line_buf->buf[y]); + y++; + } + line_buf->line_cnt++; + } + if (line_buf->line_cnt) + seq_printf(file, "\n"); +} + +static struct dentry *dfs_root; /* debugfs root directory */ + +/******************************************************************************* + * Query Frame Queue Non Programmable Fields + ******************************************************************************/ +struct query_fq_np_fields_data_s { + u32 fqid; +}; +static struct query_fq_np_fields_data_s query_fq_np_fields_data = { + .fqid = 1, +}; + +static int query_fq_np_fields_show(struct seq_file *file, void *offset) +{ + int ret; + struct qm_mcr_queryfq_np np; + struct qman_fq fq; + + fq.fqid = query_fq_np_fields_data.fqid; + ret = qman_query_fq_np(&fq, &np); + if (ret) + return ret; + /* Print state */ + seq_printf(file, "Query FQ Non Programmable Fields Result fqid 0x%x\n", + fq.fqid); + seq_printf(file, " force eligible pending: %s\n", + (np.state & QM_MCR_NP_STATE_FE) ? "yes" : "no"); + seq_printf(file, " retirement pending: %s\n", + (np.state & QM_MCR_NP_STATE_R) ? "yes" : "no"); + seq_printf(file, " state: %s\n", + state_txt[np.state & QM_MCR_NP_STATE_MASK]); + seq_printf(file, " fq_link: 0x%x\n", np.fqd_link); + seq_printf(file, " odp_seq: %u\n", np.odp_seq); + seq_printf(file, " orp_nesn: %u\n", np.orp_nesn); + seq_printf(file, " orp_ea_hseq: %u\n", np.orp_ea_hseq); + seq_printf(file, " orp_ea_tseq: %u\n", np.orp_ea_tseq); + seq_printf(file, " orp_ea_hptr: 0x%x\n", np.orp_ea_hptr); + seq_printf(file, " orp_ea_tptr: 0x%x\n", np.orp_ea_tptr); + seq_printf(file, " pfdr_hptr: 0x%x\n", np.pfdr_hptr); + seq_printf(file, " pfdr_tptr: 0x%x\n", np.pfdr_tptr); + seq_printf(file, " is: ics_surp contains a %s\n", + (np.is) ? "deficit" : "surplus"); + seq_printf(file, " ics_surp: %u\n", np.ics_surp); + seq_printf(file, " byte_cnt: %u\n", np.byte_cnt); + seq_printf(file, " frm_cnt: %u\n", np.frm_cnt); + seq_printf(file, " ra1_sfdr: 0x%x\n", np.ra1_sfdr); + seq_printf(file, " ra2_sfdr: 0x%x\n", np.ra2_sfdr); + seq_printf(file, " od1_sfdr: 0x%x\n", np.od1_sfdr); + seq_printf(file, " od2_sfdr: 0x%x\n", np.od2_sfdr); + seq_printf(file, " od3_sfdr: 0x%x\n", np.od3_sfdr); + return 0; +} + +static int query_fq_np_fields_open(struct inode *inode, + struct file *file) +{ + return single_open(file, query_fq_np_fields_show, NULL); +} + +static ssize_t query_fq_np_fields_write(struct file *f, + const char __user *buf, size_t count, loff_t *off) +{ + int ret; + unsigned long val; + + ret = user_input_convert(buf, count, &val); + if (ret) + return ret; + if (val > MAX_FQID) + return -EINVAL; + query_fq_np_fields_data.fqid = (u32)val; + return count; +} + +static const struct file_operations query_fq_np_fields_fops = { + .owner = THIS_MODULE, + .open = query_fq_np_fields_open, + .read = seq_read, + .write = query_fq_np_fields_write, + .release = single_release, +}; + +/******************************************************************************* + * Frame Queue Programmable Fields + ******************************************************************************/ +struct query_fq_fields_data_s { + u32 fqid; +}; + +static struct query_fq_fields_data_s query_fq_fields_data = { + .fqid = 1, +}; + +static int query_fq_fields_show(struct seq_file *file, void *offset) +{ + int ret; + struct qm_fqd fqd; + struct qman_fq fq; + int i = 0; + + memset(&fqd, 0, sizeof(struct qm_fqd)); + fq.fqid = query_fq_fields_data.fqid; + ret = qman_query_fq(&fq, &fqd); + if (ret) + return ret; + seq_printf(file, "Query FQ Programmable Fields Result fqid 0x%x\n", + fq.fqid); + seq_printf(file, " orprws: %u\n", fqd.orprws); + seq_printf(file, " oa: %u\n", fqd.oa); + seq_printf(file, " olws: %u\n", fqd.olws); + + seq_printf(file, " cgid: %u\n", fqd.cgid); + + if ((fqd.fq_ctrl & QM_FQCTRL_MASK) == 0) + seq_printf(file, " fq_ctrl: None\n"); + else { + i = 0; + seq_printf(file, " fq_ctrl:\n"); + while (fq_ctrl_text_list[i].txt != NULL) { + if ((fqd.fq_ctrl & QM_FQCTRL_MASK) & + fq_ctrl_text_list[i].mask) + seq_printf(file, " %s\n", + fq_ctrl_text_list[i].txt); + i++; + } + } + seq_printf(file, " dest_channel: %u\n", fqd.dest.channel); + seq_printf(file, " dest_wq: %u\n", fqd.dest.wq); + seq_printf(file, " ics_cred: %u\n", fqd.ics_cred); + seq_printf(file, " td_mant: %u\n", fqd.td.mant); + seq_printf(file, " td_exp: %u\n", fqd.td.exp); + + seq_printf(file, " ctx_b: 0x%x\n", fqd.context_b); + + seq_printf(file, " ctx_a: 0x%llx\n", qm_fqd_stashing_get64(&fqd)); + /* Any stashing configured */ + if ((fqd.context_a.stashing.exclusive & 0x7) == 0) + seq_printf(file, " ctx_a_stash_exclusive: None\n"); + else { + seq_printf(file, " ctx_a_stash_exclusive:\n"); + i = 0; + while (stashing_text_list[i].txt != NULL) { + if ((fqd.fq_ctrl & 0x7) & stashing_text_list[i].mask) + seq_printf(file, " %s\n", + stashing_text_list[i].txt); + i++; + } + } + seq_printf(file, " ctx_a_stash_annotation_cl: %u\n", + fqd.context_a.stashing.annotation_cl); + seq_printf(file, " ctx_a_stash_data_cl: %u\n", + fqd.context_a.stashing.data_cl); + seq_printf(file, " ctx_a_stash_context_cl: %u\n", + fqd.context_a.stashing.context_cl); + return 0; +} + +static int query_fq_fields_open(struct inode *inode, + struct file *file) +{ + return single_open(file, query_fq_fields_show, NULL); +} + +static ssize_t query_fq_fields_write(struct file *f, + const char __user *buf, size_t count, loff_t *off) +{ + int ret; + unsigned long val; + + ret = user_input_convert(buf, count, &val); + if (ret) + return ret; + if (val > MAX_FQID) + return -EINVAL; + query_fq_fields_data.fqid = (u32)val; + return count; +} + +static const struct file_operations query_fq_fields_fops = { + .owner = THIS_MODULE, + .open = query_fq_fields_open, + .read = seq_read, + .write = query_fq_fields_write, + .release = single_release, +}; + +/******************************************************************************* + * Query WQ lengths + ******************************************************************************/ +struct query_wq_lengths_data_s { + union { + u16 channel_wq; /* ignores wq (3 lsbits) */ + struct { + u16 id:13; /* enum qm_channel */ + u16 __reserved:3; + } __packed channel; + }; +}; +static struct query_wq_lengths_data_s query_wq_lengths_data; +static int query_wq_lengths_show(struct seq_file *file, void *offset) +{ + int ret; + struct qm_mcr_querywq wq; + int i; + + memset(&wq, 0, sizeof(struct qm_mcr_querywq)); + wq.channel.id = query_wq_lengths_data.channel.id; + ret = qman_query_wq(0, &wq); + if (ret) + return ret; + seq_printf(file, "Query Result For Channel: 0x%x\n", wq.channel.id); + for (i = 0; i < 8; i++) + /* mask out upper 4 bits since they are not part of length */ + seq_printf(file, " wq%d_len : %u\n", i, wq.wq_len[i] & 0x0fff); + return 0; +} + +static int query_wq_lengths_open(struct inode *inode, + struct file *file) +{ + return single_open(file, query_wq_lengths_show, NULL); +} + +static ssize_t query_wq_lengths_write(struct file *f, + const char __user *buf, size_t count, loff_t *off) +{ + int ret; + unsigned long val; + + ret = user_input_convert(buf, count, &val); + if (ret) + return ret; + if (val > 0xfff8) + return -EINVAL; + query_wq_lengths_data.channel.id = (u16)val; + return count; +} + +static const struct file_operations query_wq_lengths_fops = { + .owner = THIS_MODULE, + .open = query_wq_lengths_open, + .read = seq_read, + .write = query_wq_lengths_write, + .release = single_release, +}; + +/******************************************************************************* + * Query CGR + ******************************************************************************/ +struct query_cgr_s { + u8 cgid; +}; +static struct query_cgr_s query_cgr_data; + +static int query_cgr_show(struct seq_file *file, void *offset) +{ + int ret; + struct qm_mcr_querycgr cgrd; + struct qman_cgr cgr; + + memset(&cgr, 0, sizeof(struct qm_mcr_querycgr)); + cgr.cgrid = query_cgr_data.cgid; + ret = qman_query_cgr(&cgr, &cgrd); + if (ret) + return ret; + seq_printf(file, "Query CGR id 0x%x\n", cgr.cgrid); + seq_printf(file, " wr_parm_g MA: %u, Mn: %u, SA: %u, Sn: %u, Pn: %u\n", + cgrd.cgr.wr_parm_g.MA, cgrd.cgr.wr_parm_g.Mn, + cgrd.cgr.wr_parm_g.SA, cgrd.cgr.wr_parm_g.Sn, + cgrd.cgr.wr_parm_g.Pn); + + seq_printf(file, " wr_parm_y MA: %u, Mn: %u, SA: %u, Sn: %u, Pn: %u\n", + cgrd.cgr.wr_parm_y.MA, cgrd.cgr.wr_parm_y.Mn, + cgrd.cgr.wr_parm_y.SA, cgrd.cgr.wr_parm_y.Sn, + cgrd.cgr.wr_parm_y.Pn); + + seq_printf(file, " wr_parm_r MA: %u, Mn: %u, SA: %u, Sn: %u, Pn: %u\n", + cgrd.cgr.wr_parm_r.MA, cgrd.cgr.wr_parm_r.Mn, + cgrd.cgr.wr_parm_r.SA, cgrd.cgr.wr_parm_r.Sn, + cgrd.cgr.wr_parm_r.Pn); + + seq_printf(file, " wr_en_g: %u, wr_en_y: %u, we_en_r: %u\n", + cgrd.cgr.wr_en_g, cgrd.cgr.wr_en_y, cgrd.cgr.wr_en_r); + + seq_printf(file, " cscn_en: %u\n", cgrd.cgr.cscn_en); + seq_printf(file, " cscn_targ: %u\n", cgrd.cgr.cscn_targ); + seq_printf(file, " cstd_en: %u\n", cgrd.cgr.cstd_en); + seq_printf(file, " cs: %u\n", cgrd.cgr.cs); + + seq_printf(file, " cs_thresh_TA: %u, cs_thresh_Tn: %u\n", + cgrd.cgr.cs_thres.TA, cgrd.cgr.cs_thres.Tn); + + if (qman_ip_rev != QMAN_REV10) { + seq_printf(file, " mode: %s\n", + (cgrd.cgr.mode & QMAN_CGR_MODE_FRAME) ? + "frame count" : "byte count"); + } + seq_printf(file, " i_bcnt: %llu\n", qm_mcr_querycgr_i_get64(&cgrd)); + seq_printf(file, " a_bcnt: %llu\n", qm_mcr_querycgr_a_get64(&cgrd)); + + return 0; +} + +static int query_cgr_open(struct inode *inode, struct file *file) +{ + return single_open(file, query_cgr_show, NULL); +} + +static ssize_t query_cgr_write(struct file *f, const char __user *buf, + size_t count, loff_t *off) +{ + int ret; + unsigned long val; + + ret = user_input_convert(buf, count, &val); + if (ret) + return ret; + if (val > 0xff) + return -EINVAL; + query_cgr_data.cgid = (u8)val; + return count; +} + +static const struct file_operations query_cgr_fops = { + .owner = THIS_MODULE, + .open = query_cgr_open, + .read = seq_read, + .write = query_cgr_write, + .release = single_release, +}; + +/******************************************************************************* + * Test Write CGR + ******************************************************************************/ +struct test_write_cgr_s { + u64 i_bcnt; + u8 cgid; +}; +static struct test_write_cgr_s test_write_cgr_data; + +static int testwrite_cgr_show(struct seq_file *file, void *offset) +{ + int ret; + struct qm_mcr_cgrtestwrite result; + struct qman_cgr cgr; + u64 i_bcnt; + + memset(&cgr, 0, sizeof(struct qman_cgr)); + memset(&result, 0, sizeof(struct qm_mcr_cgrtestwrite)); + cgr.cgrid = test_write_cgr_data.cgid; + i_bcnt = test_write_cgr_data.i_bcnt; + ret = qman_testwrite_cgr(&cgr, i_bcnt, &result); + if (ret) + return ret; + seq_printf(file, "CGR Test Write CGR id 0x%x\n", cgr.cgrid); + seq_printf(file, " wr_parm_g MA: %u, Mn: %u, SA: %u, Sn: %u, Pn: %u\n", + result.cgr.wr_parm_g.MA, result.cgr.wr_parm_g.Mn, + result.cgr.wr_parm_g.SA, result.cgr.wr_parm_g.Sn, + result.cgr.wr_parm_g.Pn); + seq_printf(file, " wr_parm_y MA: %u, Mn: %u, SA: %u, Sn: %u, Pn: %u\n", + result.cgr.wr_parm_y.MA, result.cgr.wr_parm_y.Mn, + result.cgr.wr_parm_y.SA, result.cgr.wr_parm_y.Sn, + result.cgr.wr_parm_y.Pn); + seq_printf(file, " wr_parm_r MA: %u, Mn: %u, SA: %u, Sn: %u, Pn: %u\n", + result.cgr.wr_parm_r.MA, result.cgr.wr_parm_r.Mn, + result.cgr.wr_parm_r.SA, result.cgr.wr_parm_r.Sn, + result.cgr.wr_parm_r.Pn); + seq_printf(file, " wr_en_g: %u, wr_en_y: %u, we_en_r: %u\n", + result.cgr.wr_en_g, result.cgr.wr_en_y, result.cgr.wr_en_r); + seq_printf(file, " cscn_en: %u\n", result.cgr.cscn_en); + seq_printf(file, " cscn_targ: %u\n", result.cgr.cscn_targ); + seq_printf(file, " cstd_en: %u\n", result.cgr.cstd_en); + seq_printf(file, " cs: %u\n", result.cgr.cs); + seq_printf(file, " cs_thresh_TA: %u, cs_thresh_Tn: %u\n", + result.cgr.cs_thres.TA, result.cgr.cs_thres.Tn); + + /* Add Mode for Si 2 */ + if (qman_ip_rev != QMAN_REV10) { + seq_printf(file, " mode: %s\n", + (result.cgr.mode & QMAN_CGR_MODE_FRAME) ? + "frame count" : "byte count"); + } + + seq_printf(file, " i_bcnt: %llu\n", + qm_mcr_cgrtestwrite_i_get64(&result)); + seq_printf(file, " a_bcnt: %llu\n", + qm_mcr_cgrtestwrite_a_get64(&result)); + seq_printf(file, " wr_prob_g: %u\n", result.wr_prob_g); + seq_printf(file, " wr_prob_y: %u\n", result.wr_prob_y); + seq_printf(file, " wr_prob_r: %u\n", result.wr_prob_r); + return 0; +} + +static int testwrite_cgr_open(struct inode *inode, struct file *file) +{ + return single_open(file, testwrite_cgr_show, NULL); +} + +static const struct file_operations testwrite_cgr_fops = { + .owner = THIS_MODULE, + .open = testwrite_cgr_open, + .read = seq_read, + .release = single_release, +}; + + +static int testwrite_cgr_ibcnt_show(struct seq_file *file, void *offset) +{ + seq_printf(file, "i_bcnt: %llu\n", test_write_cgr_data.i_bcnt); + return 0; +} +static int testwrite_cgr_ibcnt_open(struct inode *inode, struct file *file) +{ + return single_open(file, testwrite_cgr_ibcnt_show, NULL); +} + +static ssize_t testwrite_cgr_ibcnt_write(struct file *f, const char __user *buf, + size_t count, loff_t *off) +{ + int ret; + unsigned long val; + + ret = user_input_convert(buf, count, &val); + if (ret) + return ret; + test_write_cgr_data.i_bcnt = val; + return count; +} + +static const struct file_operations teswrite_cgr_ibcnt_fops = { + .owner = THIS_MODULE, + .open = testwrite_cgr_ibcnt_open, + .read = seq_read, + .write = testwrite_cgr_ibcnt_write, + .release = single_release, +}; + +static int testwrite_cgr_cgrid_show(struct seq_file *file, void *offset) +{ + seq_printf(file, "cgrid: %u\n", (u32)test_write_cgr_data.cgid); + return 0; +} +static int testwrite_cgr_cgrid_open(struct inode *inode, struct file *file) +{ + return single_open(file, testwrite_cgr_cgrid_show, NULL); +} + +static ssize_t testwrite_cgr_cgrid_write(struct file *f, const char __user *buf, + size_t count, loff_t *off) +{ + int ret; + unsigned long val; + + ret = user_input_convert(buf, count, &val); + if (ret) + return ret; + if (val > 0xff) + return -EINVAL; + test_write_cgr_data.cgid = (u8)val; + return count; +} + +static const struct file_operations teswrite_cgr_cgrid_fops = { + .owner = THIS_MODULE, + .open = testwrite_cgr_cgrid_open, + .read = seq_read, + .write = testwrite_cgr_cgrid_write, + .release = single_release, +}; + +/******************************************************************************* + * Query Congestion State + ******************************************************************************/ +static int query_congestion_show(struct seq_file *file, void *offset) +{ + int ret; + struct qm_mcr_querycongestion cs; + int i, j, in_cong = 0; + u32 mask; + + memset(&cs, 0, sizeof(struct qm_mcr_querycongestion)); + ret = qman_query_congestion(&cs); + if (ret) + return ret; + seq_printf(file, "Query Congestion Result\n"); + for (i = 0; i < 8; i++) { + mask = 0x80000000; + for (j = 0; j < 32; j++) { + if (cs.state.__state[i] & mask) { + in_cong = 1; + seq_printf(file, " cg %u: %s\n", (i*32)+j, + "in congestion"); + } + mask >>= 1; + } + } + if (!in_cong) + seq_printf(file, " All congestion groups not congested.\n"); + return 0; +} + +static int query_congestion_open(struct inode *inode, struct file *file) +{ + return single_open(file, query_congestion_show, NULL); +} + +static const struct file_operations query_congestion_fops = { + .owner = THIS_MODULE, + .open = query_congestion_open, + .read = seq_read, + .release = single_release, +}; + +/******************************************************************************* + * QMan register + ******************************************************************************/ +struct qman_register_s { + u32 val; +}; +static struct qman_register_s qman_register_data; + +static void init_ccsrmempeek(void) +{ + struct device_node *dn; + const u32 *regaddr_p; + + dn = of_find_compatible_node(NULL, NULL, "fsl,qman"); + if (!dn) { + pr_info("No fsl,qman node\n"); + return; + } + regaddr_p = of_get_address(dn, 0, &qman_ccsr_size, NULL); + if (!regaddr_p) { + of_node_put(dn); + return; + } + qman_ccsr_start = of_translate_address(dn, regaddr_p); + of_node_put(dn); +} +/* This function provides access to QMan ccsr memory map */ +static int qman_ccsrmempeek(u32 *val, u32 offset) +{ + void __iomem *addr; + u64 phys_addr; + + if (!qman_ccsr_start) + return -EINVAL; + + if (offset > (qman_ccsr_size - sizeof(u32))) + return -EINVAL; + + phys_addr = qman_ccsr_start + offset; + addr = ioremap(phys_addr, sizeof(u32)); + if (!addr) { + pr_err("ccsrmempeek, ioremap failed\n"); + return -EINVAL; + } + *val = in_be32(addr); + iounmap(addr); + return 0; +} + +static int qman_ccsrmempeek_show(struct seq_file *file, void *offset) +{ + u32 b; + + qman_ccsrmempeek(&b, qman_register_data.val); + seq_printf(file, "QMan register offset = 0x%x\n", + qman_register_data.val); + seq_printf(file, "value = 0x%08x\n", b); + + return 0; +} + +static int qman_ccsrmempeek_open(struct inode *inode, struct file *file) +{ + return single_open(file, qman_ccsrmempeek_show, NULL); +} + +static ssize_t qman_ccsrmempeek_write(struct file *f, const char __user *buf, + size_t count, loff_t *off) +{ + int ret; + unsigned long val; + + ret = user_input_convert(buf, count, &val); + if (ret) + return ret; + /* multiple of 4 */ + if (val > (qman_ccsr_size - sizeof(u32))) { + pr_info("Input 0x%lx > 0x%llx\n", + val, (qman_ccsr_size - sizeof(u32))); + return -EINVAL; + } + if (val & 0x3) { + pr_info("Input 0x%lx not multiple of 4\n", val); + return -EINVAL; + } + qman_register_data.val = val; + return count; +} + +static const struct file_operations qman_ccsrmempeek_fops = { + .owner = THIS_MODULE, + .open = qman_ccsrmempeek_open, + .read = seq_read, + .write = qman_ccsrmempeek_write, +}; + +/******************************************************************************* + * QMan state + ******************************************************************************/ +static int qman_fqd_state_show(struct seq_file *file, void *offset) +{ + struct qm_mcr_queryfq_np np; + struct qman_fq fq; + struct line_buffer_fq line_buf; + int ret, i; + u8 *state = file->private; + u32 qm_fq_state_cnt[fqd_states_count]; + + memset(qm_fq_state_cnt, 0, sizeof(qm_fq_state_cnt)); + memset(&line_buf, 0, sizeof(line_buf)); + + seq_printf(file, "List of fq ids in state: %s\n", state_txt[*state]); + + for (i = 1; i < fqid_max; i++) { + fq.fqid = i; + ret = qman_query_fq_np(&fq, &np); + if (ret) + return ret; + if (*state == (np.state & QM_MCR_NP_STATE_MASK)) + add_to_line_buffer(&line_buf, fq.fqid, file); + /* Keep a summary count of all states */ + if ((np.state & QM_MCR_NP_STATE_MASK) < fqd_states_count) + qm_fq_state_cnt[(np.state & QM_MCR_NP_STATE_MASK)]++; + } + flush_line_buffer(&line_buf, file); + + for (i = 0; i < fqd_states_count; i++) { + seq_printf(file, "%s count = %u\n", state_txt[i], + qm_fq_state_cnt[i]); + } + return 0; +} + +static int qman_fqd_state_open(struct inode *inode, struct file *file) +{ + return single_open(file, qman_fqd_state_show, inode->i_private); +} + +static const struct file_operations qman_fqd_state_fops = { + .owner = THIS_MODULE, + .open = qman_fqd_state_open, + .read = seq_read, +}; + +static int qman_fqd_ctrl_show(struct seq_file *file, void *offset) +{ + struct qm_fqd fqd; + struct qman_fq fq; + u32 fq_en_cnt = 0, fq_di_cnt = 0; + int ret, i; + struct mask_filter_s *data = file->private; + const char *ctrl_txt = get_fqd_ctrl_text(data->mask); + struct line_buffer_fq line_buf; + + memset(&line_buf, 0, sizeof(line_buf)); + seq_printf(file, "List of fq ids with: %s :%s\n", + ctrl_txt, (data->filter) ? "enabled" : "disabled"); + for (i = 1; i < fqid_max; i++) { + fq.fqid = i; + memset(&fqd, 0, sizeof(struct qm_fqd)); + ret = qman_query_fq(&fq, &fqd); + if (ret) + return ret; + if (data->filter) { + if (fqd.fq_ctrl & data->mask) + add_to_line_buffer(&line_buf, fq.fqid, file); + } else { + if (!(fqd.fq_ctrl & data->mask)) + add_to_line_buffer(&line_buf, fq.fqid, file); + } + if (fqd.fq_ctrl & data->mask) + fq_en_cnt++; + else + fq_di_cnt++; + } + flush_line_buffer(&line_buf, file); + + seq_printf(file, "Total FQD with: %s : enabled = %u\n", + ctrl_txt, fq_en_cnt); + seq_printf(file, "Total FQD with: %s : disabled = %u\n", + ctrl_txt, fq_di_cnt); + return 0; +} + +/******************************************************************************* + * QMan ctrl CGE, TDE, ORP, CTX, CPC, SFDR, BLOCK, HOLD, CACHE + ******************************************************************************/ +static int qman_fqd_ctrl_open(struct inode *inode, struct file *file) +{ + return single_open(file, qman_fqd_ctrl_show, inode->i_private); +} + +static const struct file_operations qman_fqd_ctrl_fops = { + .owner = THIS_MODULE, + .open = qman_fqd_ctrl_open, + .read = seq_read, +}; + +/******************************************************************************* + * QMan ctrl summary + ******************************************************************************/ +/******************************************************************************* + * QMan summary state + ******************************************************************************/ +static int qman_fqd_non_prog_summary_show(struct seq_file *file, void *offset) +{ + struct qm_mcr_queryfq_np np; + struct qman_fq fq; + int ret, i; + u32 qm_fq_state_cnt[fqd_states_count]; + + memset(qm_fq_state_cnt, 0, sizeof(qm_fq_state_cnt)); + + for (i = 1; i < fqid_max; i++) { + fq.fqid = i; + ret = qman_query_fq_np(&fq, &np); + if (ret) + return ret; + /* Keep a summary count of all states */ + if ((np.state & QM_MCR_NP_STATE_MASK) < fqd_states_count) + qm_fq_state_cnt[(np.state & QM_MCR_NP_STATE_MASK)]++; + } + + for (i = 0; i < fqd_states_count; i++) { + seq_printf(file, "%s count = %u\n", state_txt[i], + qm_fq_state_cnt[i]); + } + return 0; +} + +static int qman_fqd_prog_summary_show(struct seq_file *file, void *offset) +{ + struct qm_fqd fqd; + struct qman_fq fq; + int ret, i , j; + u32 qm_prog_cnt[mask_filter_count/2]; + + memset(qm_prog_cnt, 0, sizeof(qm_prog_cnt)); + + for (i = 1; i < fqid_max; i++) { + memset(&fqd, 0, sizeof(struct qm_fqd)); + fq.fqid = i; + ret = qman_query_fq(&fq, &fqd); + if (ret) + return ret; + /* Keep a summary count of all states */ + for (j = 0; j < mask_filter_count; j += 2) + if ((fqd.fq_ctrl & QM_FQCTRL_MASK) & + mask_filter[j].mask) + qm_prog_cnt[j/2]++; + } + for (i = 0; i < mask_filter_count/2; i++) { + seq_printf(file, "%s count = %u\n", + get_fqd_ctrl_text(mask_filter[i*2].mask), + qm_prog_cnt[i]); + } + return 0; +} + +static int qman_fqd_summary_show(struct seq_file *file, void *offset) +{ + int ret; + + /* Display summary of non programmable fields */ + ret = qman_fqd_non_prog_summary_show(file, offset); + if (ret) + return ret; + seq_printf(file, "-----------------------------------------\n"); + /* Display programmable fields */ + ret = qman_fqd_prog_summary_show(file, offset); + if (ret) + return ret; + return 0; +} + +static int qman_fqd_summary_open(struct inode *inode, struct file *file) +{ + return single_open(file, qman_fqd_summary_show, NULL); +} + +static const struct file_operations qman_fqd_summary_fops = { + .owner = THIS_MODULE, + .open = qman_fqd_summary_open, + .read = seq_read, +}; + +/******************************************************************************* + * QMan destination work queue + ******************************************************************************/ +struct qman_dest_wq_s { + u16 wq_id; +}; +static struct qman_dest_wq_s qman_dest_wq_data = { + .wq_id = 0, +}; + +static int qman_fqd_dest_wq_show(struct seq_file *file, void *offset) +{ + struct qm_fqd fqd; + struct qman_fq fq; + int ret, i; + u16 *wq, wq_id = qman_dest_wq_data.wq_id; + struct line_buffer_fq line_buf; + + memset(&line_buf, 0, sizeof(line_buf)); + /* use vmalloc : need to allocate large memory region and don't + * require the memory to be physically contiguous. */ + wq = vmalloc(sizeof(u16) * (0xFFFF+1)); + if (!wq) + return -ENOMEM; + memset(wq, 0, sizeof(u16) * (0xFFFF+1)); + + seq_printf(file, "List of fq ids with destination work queue id" + " = 0x%x\n", wq_id); + + for (i = 1; i < fqid_max; i++) { + fq.fqid = i; + memset(&fqd, 0, sizeof(struct qm_fqd)); + ret = qman_query_fq(&fq, &fqd); + if (ret) { + vfree(wq); + return ret; + } + if (wq_id == fqd.dest_wq) + add_to_line_buffer(&line_buf, fq.fqid, file); + wq[fqd.dest_wq]++; + } + flush_line_buffer(&line_buf, file); + + seq_printf(file, "Summary of all FQD destination work queue values\n"); + for (i = 0; i < 0xFFFF; i++) { + if (wq[i]) + seq_printf(file, "Channel: 0x%x WQ: 0x%x WQ_ID: 0x%x, " + "count = %u\n", i >> 3, i & 0x3, i, wq[i]); + } + vfree(wq); + return 0; +} + +static ssize_t qman_fqd_dest_wq_write(struct file *f, const char __user *buf, + size_t count, loff_t *off) +{ + int ret; + unsigned long val; + + ret = user_input_convert(buf, count, &val); + if (ret) + return ret; + if (val > 0xFFFF) + return -EINVAL; + qman_dest_wq_data.wq_id = val; + return count; +} + +static int qman_fqd_dest_wq_open(struct inode *inode, struct file *file) +{ + return single_open(file, qman_fqd_dest_wq_show, NULL); +} + +static const struct file_operations qman_fqd_dest_wq_fops = { + .owner = THIS_MODULE, + .open = qman_fqd_dest_wq_open, + .read = seq_read, + .write = qman_fqd_dest_wq_write, +}; + +/******************************************************************************* + * QMan Intra-Class Scheduling Credit + ******************************************************************************/ +static int qman_fqd_cred_show(struct seq_file *file, void *offset) +{ + struct qm_fqd fqd; + struct qman_fq fq; + int ret, i; + u32 fq_cnt = 0; + struct line_buffer_fq line_buf; + + memset(&line_buf, 0, sizeof(line_buf)); + seq_printf(file, "List of fq ids with Intra-Class Scheduling Credit > 0" + "\n"); + + for (i = 1; i < fqid_max; i++) { + fq.fqid = i; + memset(&fqd, 0, sizeof(struct qm_fqd)); + ret = qman_query_fq(&fq, &fqd); + if (ret) + return ret; + if (fqd.ics_cred > 0) { + add_to_line_buffer(&line_buf, fq.fqid, file); + fq_cnt++; + } + } + flush_line_buffer(&line_buf, file); + + seq_printf(file, "Total FQD with ics_cred > 0 = %d\n", fq_cnt); + return 0; +} + +static int qman_fqd_cred_open(struct inode *inode, struct file *file) +{ + return single_open(file, qman_fqd_cred_show, NULL); +} + +static const struct file_operations qman_fqd_cred_fops = { + .owner = THIS_MODULE, + .open = qman_fqd_cred_open, + .read = seq_read, +}; + +/* helper macros used in qman_debugfs_module_init */ +#define QMAN_DBGFS_ENTRY(name, mode, parent, data, fops) \ + do { \ + d = debugfs_create_file(name, \ + mode, parent, \ + data, \ + fops); \ + if (d == NULL) { \ + ret = -ENOMEM; \ + goto _return; \ + } \ + } while (0) + +/* dfs_root as parent */ +#define QMAN_DBGFS_ENTRY_ROOT(name, mode, data, fops) \ + QMAN_DBGFS_ENTRY(name, mode, dfs_root, data, fops) + +/* fqd_root as parent */ +#define QMAN_DBGFS_ENTRY_FQDROOT(name, mode, data, fops) \ + QMAN_DBGFS_ENTRY(name, mode, fqd_root, data, fops) + +/* fqd state */ +#define QMAN_DBGFS_ENTRY_FQDSTATE(name, index) \ + QMAN_DBGFS_ENTRY_FQDROOT(name, S_IRUGO, \ + (void *)&mask_filter[index], &qman_fqd_ctrl_fops) + +static int __init qman_debugfs_module_init(void) +{ + int ret = 0; + struct dentry *d, *fqd_root; + u32 reg; + + fqid_max = 0; + init_ccsrmempeek(); + if (qman_ccsr_start) { + if (!qman_ccsrmempeek(®, QM_FQD_AR)) { + /* extract the size of the FQD window */ + reg = reg & 0x3f; + /* calculate valid frame queue descriptor range */ + fqid_max = (1 << (reg + 1)) / QM_FQD_BLOCK_SIZE; + } + } + dfs_root = debugfs_create_dir("qman", NULL); + fqd_root = debugfs_create_dir("fqd", dfs_root); + if (dfs_root == NULL || fqd_root == NULL) { + ret = -ENOMEM; + pr_err("Cannot create qman/fqd debugfs dir\n"); + goto _return; + } + if (fqid_max) { + QMAN_DBGFS_ENTRY_ROOT("ccsrmempeek", S_IRUGO | S_IWUGO, + NULL, &qman_ccsrmempeek_fops); + } + QMAN_DBGFS_ENTRY_ROOT("query_fq_np_fields", S_IRUGO | S_IWUGO, + &query_fq_np_fields_data, &query_fq_np_fields_fops); + + QMAN_DBGFS_ENTRY_ROOT("query_fq_fields", S_IRUGO | S_IWUGO, + &query_fq_fields_data, &query_fq_fields_fops); + + QMAN_DBGFS_ENTRY_ROOT("query_wq_lengths", S_IRUGO | S_IWUGO, + &query_wq_lengths_data, &query_wq_lengths_fops); + + QMAN_DBGFS_ENTRY_ROOT("query_cgr", S_IRUGO | S_IWUGO, + &query_cgr_data, &query_cgr_fops); + + QMAN_DBGFS_ENTRY_ROOT("query_congestion", S_IRUGO, + NULL, &query_congestion_fops); + + QMAN_DBGFS_ENTRY_ROOT("testwrite_cgr", S_IRUGO, + NULL, &testwrite_cgr_fops); + + QMAN_DBGFS_ENTRY_ROOT("testwrite_cgr_cgrid", S_IRUGO | S_IWUGO, + NULL, &teswrite_cgr_cgrid_fops); + + QMAN_DBGFS_ENTRY_ROOT("testwrite_cgr_ibcnt", S_IRUGO | S_IWUGO, + NULL, &teswrite_cgr_ibcnt_fops); + + /* Create files with fqd_root as parent */ + + QMAN_DBGFS_ENTRY_FQDROOT("stateoos", S_IRUGO, + (void *)&fqd_states[QM_MCR_NP_STATE_OOS], &qman_fqd_state_fops); + + QMAN_DBGFS_ENTRY_FQDROOT("state_retired", S_IRUGO, + (void *)&fqd_states[QM_MCR_NP_STATE_RETIRED], + &qman_fqd_state_fops); + + QMAN_DBGFS_ENTRY_FQDROOT("state_tentatively_sched", S_IRUGO, + (void *)&fqd_states[QM_MCR_NP_STATE_TEN_SCHED], + &qman_fqd_state_fops); + + QMAN_DBGFS_ENTRY_FQDROOT("state_truly_sched", S_IRUGO, + (void *)&fqd_states[QM_MCR_NP_STATE_TRU_SCHED], + &qman_fqd_state_fops); + + QMAN_DBGFS_ENTRY_FQDROOT("state_parked", S_IRUGO, + (void *)&fqd_states[QM_MCR_NP_STATE_PARKED], + &qman_fqd_state_fops); + + QMAN_DBGFS_ENTRY_FQDROOT("state_active", S_IRUGO, + (void *)&fqd_states[QM_MCR_NP_STATE_ACTIVE], + &qman_fqd_state_fops); + + QMAN_DBGFS_ENTRY_FQDSTATE("cge_enable", 17); + + QMAN_DBGFS_ENTRY_FQDSTATE("cge_disable", 16); + + QMAN_DBGFS_ENTRY_FQDSTATE("tde_enable", 15); + + QMAN_DBGFS_ENTRY_FQDSTATE("tde_disable", 14); + + QMAN_DBGFS_ENTRY_FQDSTATE("orp_enable", 13); + + QMAN_DBGFS_ENTRY_FQDSTATE("orp_disable", 12); + + QMAN_DBGFS_ENTRY_FQDSTATE("ctx_a_stashing_enable", 11); + + QMAN_DBGFS_ENTRY_FQDSTATE("ctx_a_stashing_disable", 10); + + QMAN_DBGFS_ENTRY_FQDSTATE("cpc_enable", 9); + + QMAN_DBGFS_ENTRY_FQDSTATE("cpc_disable", 8); + + QMAN_DBGFS_ENTRY_FQDSTATE("sfdr_enable", 7); + + QMAN_DBGFS_ENTRY_FQDSTATE("sfdr_disable", 6); + + QMAN_DBGFS_ENTRY_FQDSTATE("avoid_blocking_enable", 5); + + QMAN_DBGFS_ENTRY_FQDSTATE("avoid_blocking_disable", 4); + + QMAN_DBGFS_ENTRY_FQDSTATE("hold_active_enable", 3); + + QMAN_DBGFS_ENTRY_FQDSTATE("hold_active_disable", 2); + + QMAN_DBGFS_ENTRY_FQDSTATE("prefer_in_cache_enable", 1); + + QMAN_DBGFS_ENTRY_FQDSTATE("prefer_in_cache_disable", 0); + + QMAN_DBGFS_ENTRY_FQDROOT("summary", S_IRUGO, + NULL, &qman_fqd_summary_fops); + + QMAN_DBGFS_ENTRY_FQDROOT("wq", S_IRUGO | S_IWUGO, + NULL, &qman_fqd_dest_wq_fops); + + QMAN_DBGFS_ENTRY_FQDROOT("cred", S_IRUGO, + NULL, &qman_fqd_cred_fops); + + return 0; + +_return: + if (dfs_root) + debugfs_remove_recursive(dfs_root); + return ret; +} + +static void __exit qman_debugfs_module_exit(void) +{ + debugfs_remove_recursive(dfs_root); +} + +module_init(qman_debugfs_module_init); +module_exit(qman_debugfs_module_exit); +MODULE_LICENSE("Dual BSD/GPL"); + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/qman_driver.c +++ linux-3.13.0/drivers/staging/fsl_qbman/qman_driver.c @@ -0,0 +1,544 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include + +#include "qman_private.h" + +/* Global variable containing revision id (even on non-control plane systems + * where CCSR isn't available) */ +u16 qman_ip_rev; +EXPORT_SYMBOL(qman_ip_rev); + +/* size of the fqd region in bytes */ +#ifdef CONFIG_FSL_QMAN_FQ_LOOKUP +static u32 fqd_size = (PAGE_SIZE << CONFIG_FSL_QMAN_FQD_SZ); +#endif + +/*****************/ +/* Portal driver */ +/*****************/ + +static struct dpa_uio_class qman_uio = { + .list = LIST_HEAD_INIT(qman_uio.list), + .dev_prefix = "qman-uio-" +}; +const struct dpa_uio_class *dpa_uio_qman(void) +{ + return &qman_uio; +} +EXPORT_SYMBOL(dpa_uio_qman); + +#ifdef CONFIG_FSL_QMAN_NULL_FQ_DEMUX +/* Handlers for NULL portal callbacks (ie. where the contextB field, normally + * pointing to the corresponding FQ object, is NULL). */ +static enum qman_cb_dqrr_result null_cb_dqrr(struct qman_portal *qm, + struct qman_fq *fq, + const struct qm_dqrr_entry *dqrr) +{ + pr_warning("Ignoring unowned DQRR frame on portal %p.\n", qm); + return qman_cb_dqrr_consume; +} +static void null_cb_mr(struct qman_portal *qm, struct qman_fq *fq, + const struct qm_mr_entry *msg) +{ + pr_warning("Ignoring unowned MR msg on portal %p, verb 0x%02x.\n", + qm, msg->verb); +} +static const struct qman_fq_cb null_cb = { + .dqrr = null_cb_dqrr, + .ern = null_cb_mr, + .dc_ern = null_cb_mr, + .fqs = null_cb_mr +}; +#endif + +#ifdef CONFIG_FSL_QMAN_PORTAL +/* This structure carries parameters from the device-tree handling code that + * wants to set up a portal for use on 1 or more CPUs, and each temporary thread + * created to run on those CPUs. The 'portal' member is the return value. */ +struct affine_portal_data { + struct completion done; + const struct qm_portal_config *pconfig; + struct qman_portal *redirect; + int recovery_mode; + struct qman_portal *portal; +}; + +/* This function is called in a temporary thread for each CPU, to initialise the + * "affine" portal that the CPU should use. The thread is created and run from + * the init_affine_portal() bootstrapper. If the CPU has not been assigned its + * own portal, "redirect" will be non-NULL indicating it should share another + * CPU's portal (it becomes a "slave"). */ +static __init int thread_init_affine_portal(void *__data) +{ + struct affine_portal_data *data = __data; + const struct qm_portal_config *pconfig = data->pconfig; + if (data->redirect) + data->portal = qman_create_affine_slave(data->redirect); + else { + /* TODO: cgrs ?? */ + data->portal = qman_create_affine_portal(pconfig, NULL, +#ifdef CONFIG_FSL_QMAN_NULL_FQ_DEMUX + &null_cb, +#endif + data->recovery_mode); + if (data->portal) { + u32 irq_sources = 0; + /* default: enable all (available) pool channels */ + qman_static_dequeue_add(~0); + /* Determine what should be interrupt-vs-poll driven */ +#ifdef CONFIG_FSL_DPA_PIRQ_SLOW + irq_sources |= QM_PIRQ_EQCI | QM_PIRQ_EQRI | + QM_PIRQ_MRI | QM_PIRQ_CSCI; +#endif +#ifdef CONFIG_FSL_DPA_PIRQ_FAST + irq_sources |= QM_PIRQ_DQRI; +#endif + qman_irqsource_add(irq_sources); + } + } + complete(&data->done); + return 0; +} + +/* This function is just a bootstrap for running thread_init_affine_portal() on + * a given CPU. The parameters are passed in via the (void*) thread-arg (and + * results are received back) using the affine_portal_data struct. */ +static __init struct qman_portal *init_affine_portal( + const struct qm_portal_config *pconfig, + int cpu, struct qman_portal *redirect, + int recovery_mode) +{ + struct affine_portal_data data = { + .done = COMPLETION_INITIALIZER_ONSTACK(data.done), + .pconfig = pconfig, + .redirect = redirect, + .recovery_mode = recovery_mode, + .portal = NULL + }; + struct task_struct *k = kthread_create(thread_init_affine_portal, &data, + "qman_affine%d", cpu); + int ret; + if (IS_ERR(k)) { + pr_err("Failed to init %sQman affine portal for cpu %d\n", + redirect ? "(slave) " : "", cpu); + return NULL; + } + kthread_bind(k, cpu); + wake_up_process(k); + wait_for_completion(&data.done); + ret = kthread_stop(k); + if (ret) { + pr_err("Qman portal initialisation failed, cpu %d, code %d\n", + cpu, ret); + return NULL; + } + if (data.portal) + pr_info("Qman portal %sinitialised, cpu %d\n", + redirect ? "(slave) " : + pconfig->public_cfg.is_shared ? "(shared) " : "", cpu); + return data.portal; +} +#endif + +/* Parses the device-tree node, extracts the configuration, and if appropriate + * initialises the portal for use on one or more CPUs. */ +static __init struct qm_portal_config *fsl_qman_portal_init( + struct device_node *node) +{ + struct qm_portal_config *pcfg; + const u32 *index, *channel; + const phandle *ph; + struct device_node *tmp_node; + int irq, ret, numpools; + u16 ip_rev = 0; + + pcfg = kmalloc(sizeof(*pcfg), GFP_KERNEL); + if (!pcfg) { + pr_err("can't allocate portal config"); + return NULL; + } + + if (of_device_is_compatible(node, "fsl,qman-portal-1.0")) + ip_rev = QMAN_REV10; + else if (of_device_is_compatible(node, "fsl,qman-portal-1.1")) + ip_rev = QMAN_REV11; + else if (of_device_is_compatible(node, "fsl,qman-portal-1.2")) + ip_rev = QMAN_REV12; + else if (of_device_is_compatible(node, "fsl,qman-portal-2.0")) + ip_rev = QMAN_REV20; + + if (!qman_ip_rev) { + if (ip_rev) + qman_ip_rev = ip_rev; + else { + pr_warning("unknown Qman version, default to rev1.1\n"); + qman_ip_rev = QMAN_REV11; + } + } else if (ip_rev && (qman_ip_rev != ip_rev)) + pr_warning("Revision=0x%04x, but portal '%s' has 0x%04x\n", + qman_ip_rev, node->full_name, ip_rev); + + ret = of_address_to_resource(node, QM_ADDR_CE, + &pcfg->addr_phys[QM_ADDR_CE]); + if (ret) { + pr_err("Can't get %s property '%s'\n", node->full_name, + "reg::CE"); + goto err; + } + ret = of_address_to_resource(node, QM_ADDR_CI, + &pcfg->addr_phys[QM_ADDR_CI]); + if (ret) { + pr_err("Can't get %s property '%s'\n", node->full_name, + "reg::CI"); + goto err; + } + index = of_get_property(node, "cell-index", &ret); + if (!index || (ret != 4)) { + pr_err("Can't get %s property '%s'\n", node->full_name, + "cell-index"); + goto err; + } + channel = of_get_property(node, "fsl,qman-channel-id", &ret); + if (!channel || (ret != 4)) { + pr_err("Can't get %s property '%s'\n", node->full_name, + "fsl,qman-channel-id"); + goto err; + } + if (*channel != (*index + qm_channel_swportal0)) + pr_err("Warning: node %s has mismatched %s and %s\n", + node->full_name, "cell-index", "fsl,qman-channel-id"); + pcfg->public_cfg.channel = *channel; + /* Parse cpu associations for this portal. This involves dereferencing + * to the cpu device-tree nodes, but it also ensures we only try to work + * with CPUs that exist. (Eg. under a hypervisor.) */ + ph = of_get_property(node, "cpu-handle", &ret); + if (ph) { + if (ret != sizeof(phandle)) { + pr_err("Malformed %s property '%s'\n", node->full_name, + "cpu-handle"); + return NULL; + } + ret = check_cpu_phandle(*ph); + if (ret < 0) + return NULL; + pcfg->public_cfg.cpu = ret; + } else + pcfg->public_cfg.cpu = -1; + + ph = of_get_property(node, "fsl,qman-pool-channels", &ret); + if (ph && (ret % sizeof(phandle))) { + pr_err("Malformed %s property '%s'\n", node->full_name, + "fsl,qman-pool-channels"); + goto err; + } + numpools = ph ? (ret / sizeof(phandle)) : 0; + irq = irq_of_parse_and_map(node, 0); + if (irq == NO_IRQ) { + pr_err("Can't get %s property '%s'\n", node->full_name, + "interrupts"); + goto err; + } + pcfg->public_cfg.irq = irq; + pcfg->public_cfg.index = *index; + if (of_get_property(node, "fsl,hv-dma-handle", &ret)) + pcfg->public_cfg.has_stashing = 1; + else if (qman_ip_rev == QMAN_REV20) + pcfg->public_cfg.has_stashing = 1; + else +#ifdef CONFIG_FSL_PAMU + pcfg->public_cfg.has_stashing = 1; +#else + pcfg->public_cfg.has_stashing = 0; +#endif + pcfg->public_cfg.pools = 0; + pcfg->node = node; +#ifdef CONFIG_FSL_QMAN_CONFIG + /* We need the same LIODN offset for all portals */ + qman_liodn_fixup(pcfg->public_cfg.channel); +#endif + + if (of_get_property(node, "fsl,usdpaa-portal", &ret)) { + struct dpa_uio_portal *u = kmalloc(sizeof(*u), GFP_KERNEL); + if (!u) + goto err; + u->type = dpa_uio_portal_qman; + u->qm_cfg = pcfg; + list_add_tail(&u->node, &qman_uio.list); + /* Return NULL, otherwise the kernel may share it on CPUs that + * don't have their own portals, which would be ... *bad*. */ + return NULL; + } + + /* Map the portals now we know they aren't for UIO (the UIO code doesn't + * need the CE mapping, and so will do its own CI-only mapping). */ + pcfg->addr_virt[QM_ADDR_CE] = ioremap_prot( + pcfg->addr_phys[QM_ADDR_CE].start, + resource_size(&pcfg->addr_phys[QM_ADDR_CE]), + 0); + pcfg->addr_virt[QM_ADDR_CI] = ioremap_prot( + pcfg->addr_phys[QM_ADDR_CI].start, + resource_size(&pcfg->addr_phys[QM_ADDR_CI]), + _PAGE_GUARDED | _PAGE_NO_CACHE); + + while (numpools--) { + for_each_compatible_node(tmp_node, NULL, + "fsl,qman-pool-channel") { + phandle *lph = (phandle *)of_get_property(tmp_node, + "linux,phandle", &ret); + if (*lph == *ph) { + u32 *index = (u32 *)of_get_property(tmp_node, + "cell-index", &ret); + pcfg->public_cfg.pools |= + QM_SDQCR_CHANNELS_POOL(*index); + } + } + ph++; + } + if (pcfg->public_cfg.pools == 0) + panic("Unrecoverable error linking pool channels"); + + return pcfg; +err: + kfree(pcfg); + return NULL; +} + +static void __init fsl_qman_portal_destroy(struct qm_portal_config *pcfg) +{ + iounmap(pcfg->addr_virt[QM_ADDR_CE]); + iounmap(pcfg->addr_virt[QM_ADDR_CI]); + kfree(pcfg); +} + +static __init int fsl_fqid_range_init(struct device_node *node, + int recovery_mode) +{ + int ret; + u32 *range = (u32 *)of_get_property(node, "fsl,fqid-range", &ret); + if (!range) { + pr_err("No 'fsl,fqid-range' property in node %s\n", + node->full_name); + return -EINVAL; + } + if (ret != 8) { + pr_err("'fsl,fqid-range' is not a 2-cell range in node %s\n", + node->full_name); + return -EINVAL; + } + qman_release_fqid_range(range[0], range[1]); +#ifdef CONFIG_FSL_QMAN_PORTAL + /* If in recovery mode *and* we are using a private FQ allocation range, + * then automatically clean up all FQs in that range so we can + * automatically exit recovery mode too. */ + if (recovery_mode) { + u32 fqid; + for (fqid = range[0]; fqid < (range[0] + range[1]); fqid++) { + ret = qman_recovery_cleanup_fq(fqid); + if (ret) { + pr_err("Failed to recovery FQID %d\n", fqid); + return ret; + } + } + } +#else + BUG_ON(recovery_mode); +#endif + pr_info("Qman: FQID allocator includes range %d:%d%s\n", + range[0], range[1], recovery_mode ? " (recovered)" : ""); + return 0; +} + +#ifdef CONFIG_FSL_QMAN_PORTAL +static __init int __leave_recovery(void *__data) +{ + struct completion *done = __data; + qman_recovery_exit_local(); + complete(done); + return 0; +} + +int qman_recovery_exit(void) +{ + struct completion done = COMPLETION_INITIALIZER_ONSTACK(done); + unsigned int cpu; + + for_each_cpu(cpu, qman_affine_cpus()) { + struct task_struct *k = kthread_create(__leave_recovery, &done, + "qman_recovery"); + int ret; + if (IS_ERR(k)) { + pr_err("Thread failure (recovery) on cpu %d\n", cpu); + return -ENOMEM; + } + kthread_bind(k, cpu); + wake_up_process(k); + wait_for_completion(&done); + ret = kthread_stop(k); + if (ret) { + pr_err("Failed to exit recovery on cpu %d\n", cpu); + return ret; + } + pr_info("Qman portal exited recovery, cpu %d\n", cpu); + } + return 0; +} +EXPORT_SYMBOL(qman_recovery_exit); +#endif + +/***************/ +/* Driver load */ +/***************/ + +static __init int qman_init(void) +{ +#ifdef CONFIG_FSL_QMAN_PORTAL + struct qman_cgr cgr; + struct cpumask primary_cpus = *cpu_none_mask; + struct cpumask slave_cpus = *cpu_online_mask; + struct qman_portal *sharing_portal = NULL; + int sharing_cpu = -1; +#endif + struct device_node *dn; + struct qm_portal_config *pcfg; + int ret, use_bpid0 = 1, recovery_mode = 0; + LIST_HEAD(cfg_list); + + for_each_compatible_node(dn, NULL, "fsl,qman") { + if (!qman_init_error_int(dn)) + pr_info("Qman err interrupt handler present\n"); + else + pr_err("Qman err interrupt handler missing\n"); + } +#ifdef CONFIG_FSL_QMAN_FQ_LOOKUP + ret = qman_setup_fq_lookup_table(fqd_size/64); + if (ret) + return ret; +#endif +#ifdef CONFIG_FSL_QMAN_PORTAL + if (fsl_dpa_should_recover()) + recovery_mode = 1; + for_each_compatible_node(dn, NULL, "fsl,qman-portal") { + pcfg = fsl_qman_portal_init(dn); + if (pcfg) { + if (pcfg->public_cfg.cpu >= 0) { + cpumask_set_cpu(pcfg->public_cfg.cpu, + &primary_cpus); + list_add(&pcfg->list, &cfg_list); + } else + fsl_qman_portal_destroy(pcfg); + } + } + /* only consider "online" CPUs */ + cpumask_and(&primary_cpus, &primary_cpus, cpu_online_mask); + if (cpumask_empty(&primary_cpus)) + /* No portals, we're done */ + return 0; + if (!cpumask_subset(cpu_online_mask, &primary_cpus)) { + /* Need to do some sharing. In lieu of anything more scientific + * (or configurable), we pick the last-most CPU that has a + * portal and share that one. */ + int next = cpumask_first(&primary_cpus); + while (next < nr_cpu_ids) { + sharing_cpu = next; + next = cpumask_next(next, &primary_cpus); + } + } + /* Parsing is done and sharing decisions are made, now initialise the + * portals and determine which "slave" CPUs are left over. */ + list_for_each_entry(pcfg, &cfg_list, list) { + struct qman_portal *p; + int is_shared = (!sharing_portal && (sharing_cpu >= 0) && + (pcfg->public_cfg.cpu == sharing_cpu)); + pcfg->public_cfg.is_shared = is_shared; + /* If it's not mapped to a CPU, or another portal is already + * initialised to the same CPU, skip this portal. */ + if (pcfg->public_cfg.cpu < 0 || !cpumask_test_cpu( + pcfg->public_cfg.cpu, &slave_cpus)) + continue; + p = init_affine_portal(pcfg, pcfg->public_cfg.cpu, NULL, + recovery_mode); + if (p) { + if (is_shared) + sharing_portal = p; + cpumask_clear_cpu(pcfg->public_cfg.cpu, &slave_cpus); + } + } + if (sharing_portal) { + int loop; + for_each_cpu(loop, &slave_cpus) { + struct qman_portal *p = init_affine_portal(NULL, loop, + sharing_portal, recovery_mode); + if (!p) + pr_err("Failed slave Qman portal for cpu %d\n", + loop); + } + } +#else + for_each_compatible_node(dn, NULL, "fsl,qman-portal") { + pcfg = fsl_qman_portal_init(dn); + if (pcfg) + /* No kernel portal support, so if USDPAA didn't consume + * the portal, we've no other use for it. */ + fsl_qman_portal_destroy(pcfg); + } +#endif + for_each_compatible_node(dn, NULL, "fsl,fqid-range") { + use_bpid0 = 0; + ret = fsl_fqid_range_init(dn, recovery_mode); + if (ret) + return ret; + } +#ifdef CONFIG_FSL_QMAN_PORTAL + /* If using private FQ allocation, exit recovery mode automatically (ie. + * after automatic recovery) */ + if (recovery_mode && !use_bpid0) { + ret = qman_recovery_exit(); + if (ret) + return ret; + } + for (cgr.cgrid = 0; cgr.cgrid < __CGR_NUM; cgr.cgrid++) { + /* This is to ensure h/w-internal CGR memory is zeroed out. Note + * that we do this for all conceivable CGRIDs, not all of which + * are necessarily available on the underlying hardware version. + * We ignore any errors for this reason. */ + qman_modify_cgr(&cgr, QMAN_CGR_FLAG_USE_INIT, NULL); + } +#endif + ret = fqalloc_init(use_bpid0); + if (ret) + return ret; + pr_info("Qman portals initialised\n"); + return 0; +} +subsys_initcall(qman_init); --- linux-3.13.0.orig/drivers/staging/fsl_qbman/qman_fqalloc.c +++ linux-3.13.0/drivers/staging/fsl_qbman/qman_fqalloc.c @@ -0,0 +1,264 @@ +/* Copyright 2009-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "qman_private.h" + +#include + +/****************/ +/* FQ allocator */ +/****************/ + +/* Global flag: use BPID==0 (fq_pool), or use the range-allocator? */ +static int use_bman; + +#ifdef CONFIG_FSL_BMAN_PORTAL +static struct bman_pool *fq_pool; +static const struct bman_pool_params fq_pool_params; +#endif + +__init int fqalloc_init(int __use_bman) +{ + use_bman = __use_bman; +#ifdef CONFIG_FSL_BMAN_PORTAL + if (use_bman) { + fq_pool = bman_new_pool(&fq_pool_params); + if (!fq_pool) + return -ENOMEM; + } +#else + BUG_ON(use_bman); +#endif + return 0; +} + +u32 qm_fq_new(void) +{ +#ifdef CONFIG_FSL_BMAN_PORTAL + struct bm_buffer buf; + int ret; +#endif + + if (!use_bman) { + u32 result; + if (qman_alloc_fqid(&result) < 0) + return 0; + return result; + } +#ifdef CONFIG_FSL_BMAN_PORTAL + BUG_ON(!fq_pool); + ret = bman_acquire(fq_pool, &buf, 1, 0); + if (ret != 1) + return 0; + return (u32)bm_buffer_get64(&buf); +#else + BUG(); +#endif +} +EXPORT_SYMBOL(qm_fq_new); + +int qm_fq_free_flags(u32 fqid, __maybe_unused u32 flags) +{ +#ifdef CONFIG_FSL_BMAN_PORTAL + struct bm_buffer buf; + u32 bflags = 0; + int ret; + bm_buffer_set64(&buf, fqid); +#endif + + if (!use_bman) { + qman_release_fqid(fqid); + return 0; + } +#ifdef CONFIG_FSL_BMAN_PORTAL +#ifdef CONFIG_FSL_DPA_CAN_WAIT + if (flags & QM_FQ_FREE_WAIT) { + bflags |= BMAN_RELEASE_FLAG_WAIT; + if (flags & BMAN_RELEASE_FLAG_WAIT_INT) + bflags |= BMAN_RELEASE_FLAG_WAIT_INT; + if (flags & BMAN_RELEASE_FLAG_WAIT_SYNC) + bflags |= BMAN_RELEASE_FLAG_WAIT_SYNC; + } +#endif + ret = bman_release(fq_pool, &buf, 1, bflags); + return ret; +#else + BUG(); +#endif +} +EXPORT_SYMBOL(qm_fq_free_flags); + +/* Global state for the allocator */ +static DEFINE_SPINLOCK(alloc_lock); +static LIST_HEAD(alloc_list); + +/* The allocator is a (possibly-empty) list of these; */ +struct alloc_node { + struct list_head list; + u32 base; + u32 num; +}; + +/* #define FQRANGE_DEBUG */ + +#ifdef FQRANGE_DEBUG +#define DPRINT pr_info +static void DUMP(void) +{ + int off = 0; + char buf[256]; + struct alloc_node *p; + list_for_each_entry(p, &alloc_list, list) { + if (off < 255) + off += snprintf(buf + off, 255-off, "{%d,%d}", + p->base, p->base + p->num - 1); + } + pr_info("%s\n", buf); +} +#else +#define DPRINT(x...) do { ; } while(0) +#define DUMP() do { ; } while(0) +#endif + +int qman_alloc_fqid_range(u32 *result, u32 count, u32 align, int partial) +{ + struct alloc_node *i = NULL, *next_best = NULL; + u32 base, next_best_base = 0, num = 0, next_best_num = 0; + struct alloc_node *margin_left, *margin_right; + + *result = (u32)-1; + DPRINT("alloc_range(%d,%d,%d)\n", count, align, partial); + DUMP(); + /* If 'align' is 0, it should behave as though it was 1 */ + if (!align) + align = 1; + margin_left = kmalloc(sizeof(*margin_left), GFP_KERNEL); + if (!margin_left) + goto err; + margin_right = kmalloc(sizeof(*margin_right), GFP_KERNEL); + if (!margin_right) { + kfree(margin_left); + goto err; + } + spin_lock_irq(&alloc_lock); + list_for_each_entry(i, &alloc_list, list) { + base = (i->base + align - 1) / align; + base *= align; + if ((base - i->base) >= i->num) + /* alignment is impossible, regardless of count */ + continue; + num = i->num - (base - i->base); + if (num >= count) { + /* this one will do nicely */ + num = count; + goto done; + } + if (num > next_best_num) { + next_best = i; + next_best_base = base; + next_best_num = num; + } + } + if (partial && next_best) { + i = next_best; + base = next_best_base; + num = next_best_num; + } else + i = NULL; +done: + if (i) { + if (base != i->base) { + margin_left->base = i->base; + margin_left->num = base - i->base; + list_add_tail(&margin_left->list, &i->list); + } else + kfree(margin_left); + if ((base + num) < (i->base + i->num)) { + margin_right->base = base + num; + margin_right->num = (i->base + i->num) - + (base + num); + list_add(&margin_right->list, &i->list); + } else + kfree(margin_right); + list_del(&i->list); + kfree(i); + *result = base; + } + spin_unlock_irq(&alloc_lock); +err: + DPRINT("returning %d\n", i ? num : -ENOMEM); + DUMP(); + return i ? (int)num : -ENOMEM; +} +EXPORT_SYMBOL(qman_alloc_fqid_range); + +void qman_release_fqid_range(u32 fqid, u32 count) +{ + struct alloc_node *i, *node = kmalloc(sizeof(*node), GFP_KERNEL); + DPRINT("release_range(%d,%d)\n", fqid, count); + DUMP(); + spin_lock_irq(&alloc_lock); + node->base = fqid; + node->num = count; + list_for_each_entry(i, &alloc_list, list) { + if (i->base >= node->base) { + list_add_tail(&node->list, &i->list); + goto done; + } + } + list_add_tail(&node->list, &alloc_list); +done: + /* Merge to the left */ + i = list_entry(node->list.prev, struct alloc_node, list); + if (node->list.prev != &alloc_list) { + BUG_ON((i->base + i->num) > node->base); + if ((i->base + i->num) == node->base) { + node->base = i->base; + node->num += i->num; + list_del(&i->list); + kfree(i); + } + } + /* Merge to the right */ + i = list_entry(node->list.next, struct alloc_node, list); + if (node->list.next != &alloc_list) { + BUG_ON((node->base + node->num) > i->base); + if ((node->base + node->num) == i->base) { + node->num += i->num; + list_del(&i->list); + kfree(i); + } + } + spin_unlock_irq(&alloc_lock); + DUMP(); +} +EXPORT_SYMBOL(qman_release_fqid_range); + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/qman_high.c +++ linux-3.13.0/drivers/staging/fsl_qbman/qman_high.c @@ -0,0 +1,2360 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "qman_low.h" + +/* Compilation constants */ +#define DQRR_MAXFILL 15 +#define EQCR_ITHRESH 4 /* if EQCR congests, interrupt threshold */ +#define IRQNAME "QMan portal %d" +#define MAX_IRQNAME 16 /* big enough for "QMan portal %d" */ + +/* Lock/unlock frame queues, subject to the "LOCKED" flag. This is about + * inter-processor locking only. Note, FQLOCK() is always called either under a + * local_irq_save() or from interrupt context - hence there's no need for irq + * protection (and indeed, attempting to nest irq-protection doesn't work, as + * the "irq en/disable" machinery isn't recursive...). */ +#define FQLOCK(fq) \ + do { \ + struct qman_fq *__fq478 = (fq); \ + if (fq_isset(__fq478, QMAN_FQ_FLAG_LOCKED)) \ + spin_lock(&__fq478->fqlock); \ + } while(0) +#define FQUNLOCK(fq) \ + do { \ + struct qman_fq *__fq478 = (fq); \ + if (fq_isset(__fq478, QMAN_FQ_FLAG_LOCKED)) \ + spin_unlock(&__fq478->fqlock); \ + } while(0) + +static inline void fq_set(struct qman_fq *fq, u32 mask) +{ + set_bits(mask, &fq->flags); +} +static inline void fq_clear(struct qman_fq *fq, u32 mask) +{ + clear_bits(mask, &fq->flags); +} +static inline int fq_isset(struct qman_fq *fq, u32 mask) +{ + return fq->flags & mask; +} +static inline int fq_isclear(struct qman_fq *fq, u32 mask) +{ + return !(fq->flags & mask); +} + +#define PORTAL_BITS_CI_PREFETCH 0x00020000 /* EQCR::CI prefetched */ +#define PORTAL_BITS_RECOVERY 0x00040000 /* recovery mode */ + +struct qman_portal { + struct qm_portal p; + unsigned long bits; /* PORTAL_BITS_*** - dynamic, strictly internal */ + unsigned long irq_sources; + u32 slowpoll; /* only used when interrupts are off */ + struct qman_fq *vdqcr_owned; /* only 1 volatile dequeue at a time */ +#ifdef CONFIG_FSL_DPA_CAN_WAIT_SYNC + struct qman_fq *eqci_owned; /* only 1 enqueue WAIT_SYNC at a time */ +#endif +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + spinlock_t sharing_lock; /* only used if is_shared */ + int is_shared; + struct qman_portal *sharing_redirect; +#endif + u32 sdqcr; + int dqrr_disable_ref; +#ifdef CONFIG_FSL_QMAN_NULL_FQ_DEMUX + /* If we receive a DQRR or MR ring entry for a "null" FQ, ie. for which + * FQD::contextB is NULL rather than pointing to a FQ object, we use + * these handlers. (This is not considered a fast-path mechanism.) */ + struct qman_fq_cb null_cb; +#endif + /* When the cpu-affine portal is activated, this is non-NULL */ + const struct qm_portal_config *config; + /* This is needed for providing a non-NULL device to dma_map_***() */ + struct platform_device *pdev; + struct dpa_rbtree retire_table; + char irqname[MAX_IRQNAME]; + /* 2-element array. cgrs[0] is mask, cgrs[1] is snapshot. */ + struct qman_cgrs *cgrs; + /* 256-element array, each is a linked-list of CSCN handlers. */ + struct list_head cgr_cbs[256]; + /* list lock */ + spinlock_t cgr_lock; +}; + +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE +#define PORTAL_IRQ_LOCK(p, irqflags) \ + do { \ + if ((p)->is_shared) \ + spin_lock_irqsave(&(p)->sharing_lock, irqflags); \ + else \ + local_irq_save(irqflags); \ + } while (0) +#define PORTAL_IRQ_UNLOCK(p, irqflags) \ + do { \ + if ((p)->is_shared) \ + spin_unlock_irqrestore(&(p)->sharing_lock, irqflags); \ + else \ + local_irq_restore(irqflags); \ + } while (0) +#else +#define PORTAL_IRQ_LOCK(p, irqflags) local_irq_save(irqflags) +#define PORTAL_IRQ_UNLOCK(p, irqflags) local_irq_restore(irqflags) +#endif + +static cpumask_t affine_mask; +static DEFINE_SPINLOCK(affine_mask_lock); +static DEFINE_PER_CPU(struct qman_portal, qman_affine_portal); +/* "raw" gets the cpu-local struct whether it's a redirect or not. */ +static inline struct qman_portal *get_raw_affine_portal(void) +{ + return &get_cpu_var(qman_affine_portal); +} +/* For ops that can redirect, this obtains the portal to use */ +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE +static inline struct qman_portal *get_affine_portal(void) +{ + struct qman_portal *p = get_raw_affine_portal(); + if (p->sharing_redirect) + return p->sharing_redirect; + return p; +} +#else +#define get_affine_portal() get_raw_affine_portal() +#endif +/* For every "get", there must be a "put" */ +static inline void put_affine_portal(void) +{ + put_cpu_var(qman_affine_portal); +} + +/* This gives a FQID->FQ lookup to cover the fact that we can't directly demux + * retirement notifications (the fact they are sometimes h/w-consumed means that + * contextB isn't always a s/w demux - and as we can't know which case it is + * when looking at the notification, we have to use the slow lookup for all of + * them). NB, it's possible to have multiple FQ objects refer to the same FQID + * (though at most one of them should be the consumer), so this table isn't for + * all FQs - FQs are added when retirement commands are issued, and removed when + * they complete, which also massively reduces the size of this table. */ +IMPLEMENT_DPA_RBTREE(fqtree, struct qman_fq, node, fqid); + +/* This is what everything can wait on, even if it migrates to a different cpu + * to the one whose affine portal it is waiting on. */ +static DECLARE_WAIT_QUEUE_HEAD(affine_queue); + +static inline int table_push_fq(struct qman_portal *p, struct qman_fq *fq) +{ + int ret = fqtree_push(&p->retire_table, fq); + if (ret) + pr_err("ERROR: double FQ-retirement %d\n", fq->fqid); + return ret; +} + +static inline void table_del_fq(struct qman_portal *p, struct qman_fq *fq) +{ + fqtree_del(&p->retire_table, fq); +} + +static inline struct qman_fq *table_find_fq(struct qman_portal *p, u32 fqid) +{ + return fqtree_find(&p->retire_table, fqid); +} + +#ifdef CONFIG_FSL_QMAN_FQ_LOOKUP +static void **qman_fq_lookup_table; +static size_t qman_fq_lookup_table_size; + +int qman_setup_fq_lookup_table(size_t num_entries) +{ + num_entries++; + /* Allocate 1 more entry since the first entry is not used */ + qman_fq_lookup_table = vmalloc((num_entries * sizeof(void *))); + if (!qman_fq_lookup_table) { + pr_err("QMan: Could not allocate fq lookup table\n"); + return -ENOMEM; + } + memset(qman_fq_lookup_table, 0, num_entries * sizeof(void *)); + qman_fq_lookup_table_size = num_entries; + pr_info("QMan: Allocated lookup table at %p, entry count %lu\n", + qman_fq_lookup_table, + (unsigned long)qman_fq_lookup_table_size); + return 0; +} + +/* global structure that maintains fq object mapping */ +static DEFINE_SPINLOCK(fq_hash_table_lock); + +static int find_empty_fq_table_entry(u32 *entry, struct qman_fq *fq) +{ + u32 i; + + spin_lock(&fq_hash_table_lock); + /* Can't use index zero because this has special meaning + * in context_b field. */ + for (i = 1; i < qman_fq_lookup_table_size; i++) { + if (qman_fq_lookup_table[i] == NULL) { + *entry = i; + qman_fq_lookup_table[i] = fq; + spin_unlock(&fq_hash_table_lock); + return 0; + } + } + spin_unlock(&fq_hash_table_lock); + return -ENOMEM; +} + +static void clear_fq_table_entry(u32 entry) +{ + spin_lock(&fq_hash_table_lock); + BUG_ON(entry >= qman_fq_lookup_table_size); + qman_fq_lookup_table[entry] = NULL; + spin_unlock(&fq_hash_table_lock); +} + +static inline struct qman_fq *get_fq_table_entry(u32 entry) +{ + BUG_ON(entry >= qman_fq_lookup_table_size); + return qman_fq_lookup_table[entry]; +} +#endif + +/* In the case that slow- and fast-path handling are both done by qman_poll() + * (ie. because there is no interrupt handling), we ought to balance how often + * we do the fast-path poll versus the slow-path poll. We'll use two decrementer + * sources, so we call the fast poll 'n' times before calling the slow poll + * once. The idle decrementer constant is used when the last slow-poll detected + * no work to do, and the busy decrementer constant when the last slow-poll had + * work to do. */ +#define SLOW_POLL_IDLE 1000 +#define SLOW_POLL_BUSY 10 +static u32 __poll_portal_slow(struct qman_portal *p, u32 is); +static inline unsigned int __poll_portal_fast(struct qman_portal *p, + unsigned int poll_limit); + +#ifdef CONFIG_FSL_DPA_HAVE_IRQ +/* Portal interrupt handler */ +static irqreturn_t portal_isr(__always_unused int irq, void *ptr) +{ + struct qman_portal *p = ptr; + u32 clear = QM_DQAVAIL_MASK | p->irq_sources; + u32 is = qm_isr_status_read(&p->p) & p->irq_sources; + /* DQRR-handling if it's interrupt-driven */ + if (is & QM_PIRQ_DQRI) + __poll_portal_fast(p, CONFIG_FSL_QMAN_POLL_LIMIT); + /* Handling of anything else that's interrupt-driven */ + clear |= __poll_portal_slow(p, is); + qm_isr_status_clear(&p->p, clear); + return IRQ_HANDLED; +} +#endif + +/* This inner version is used privately by qman_create_affine_portal(), as well + * as by the exported qman_stop_dequeues(). */ +static inline void qman_stop_dequeues_ex(struct qman_portal *p) +{ + unsigned long irqflags __maybe_unused; + PORTAL_IRQ_LOCK(p, irqflags); + if (!(p->dqrr_disable_ref++)) + qm_dqrr_set_maxfill(&p->p, 0); + PORTAL_IRQ_UNLOCK(p, irqflags); +} + +static int drain_mr_fqrni(struct qm_portal *p) +{ + const struct qm_mr_entry *msg; +loop: + msg = qm_mr_current(p); + if (!msg) { + /* if MR was full and h/w had other FQRNI entries to produce, we + * need to allow it time to produce those entries once the + * existing entries are consumed. A worst-case situation + * (fully-loaded system) means h/w sequencers may have to do 3-4 + * other things before servicing the portal's MR pump, each of + * which (if slow) may take ~50 qman cycles (which is ~200 + * processor cycles). So rounding up and then multiplying this + * worst-case estimate by a factor of 10, just to be + * ultra-paranoid, goes as high as 10,000 cycles. NB, we consume + * one entry at a time, so h/w has an opportunity to produce new + * entries well before the ring has been fully consumed, so + * we're being *really* paranoid here. */ + u64 now, then = mfatb(); + do { + now = mfatb(); + } while ((then + 10000) > now); + msg = qm_mr_current(p); + if (!msg) + return 0; + } + if ((msg->verb & QM_MR_VERB_TYPE_MASK) != QM_MR_VERB_FQRNI) + /* We aren't draining anything but FQRNIs */ + return -1; + qm_mr_next(p); + qm_mr_cci_consume(p, 1); + goto loop; +} + +/* this is called from qman_create_affine_portal() if not initialising in + * recovery mode, otherwise from qman_recovery_exit_local() after recovery is + * done. */ +static void post_recovery(struct qman_portal *p __always_unused, + const struct qm_portal_config *config) +{ + struct device_node *tmp_node, *node = config->node; + /* Enable DMA on portal LIODNs (stashing) and those of its sub-nodes + * (Fman TX and SEC/PME accelerators, where available). */ + if (pamu_enable_liodn(node, -1)) + /* If there's a PAMU problem, best to continue anyway and let + * the corresponding traffic hit whatever problems it will hit, + * than to fail portal initialisation and trigger a crash in + * dependent code that has no relationship to the PAMU issue. */ + pr_err("Failed to enable portal LIODN %s\n", + node->full_name); + for_each_child_of_node(node, tmp_node) + if (pamu_enable_liodn(tmp_node, -1)) + pr_err("Failed to enable portal LIODN %s\n", + tmp_node->full_name); +} + +struct qman_portal *qman_create_affine_portal( + const struct qm_portal_config *config, + const struct qman_cgrs *cgrs, + const struct qman_fq_cb *null_cb, + int recovery_mode) +{ + struct qman_portal *portal = get_raw_affine_portal(); + struct qm_portal *__p = &portal->p; + char buf[16]; + int ret; + u32 isdr; + + /* A criteria for calling this function (from qman_driver.c) is that + * we're already affine to the cpu and won't schedule onto another cpu. + * This means we can put_affine_portal() and yet continue to use + * "portal", which in turn means aspects of this routine can sleep. */ + put_affine_portal(); +#ifndef CONFIG_FSL_QMAN_NULL_FQ_DEMUX + if (null_cb) { + pr_err("Driver does not support 'NULL FQ' callbacks\n"); + return NULL; + } +#endif + /* prep the low-level portal struct with the mapped addresses from the + * config, everything that follows depends on it and "config" is more + * for (de)reference... */ + __p->addr.addr_ce = config->addr_virt[QM_ADDR_CE]; + __p->addr.addr_ci = config->addr_virt[QM_ADDR_CI]; + if (qm_eqcr_init(__p, qm_eqcr_pvb, qm_eqcr_cce)) { + pr_err("Qman EQCR initialisation failed\n"); + goto fail_eqcr; + } +#ifdef CONFIG_FSL_QMAN_PORTAL_DISABLEAUTO_DCA +#define QM_DQRR_CMODE qm_dqrr_cci +#else +#define QM_DQRR_CMODE qm_dqrr_cdc +#endif + /* for recovery mode, don't enable stashing yet */ + if (qm_dqrr_init(__p, config, qm_dqrr_dpush, qm_dqrr_pvb, + recovery_mode ? qm_dqrr_cci : QM_DQRR_CMODE, + DQRR_MAXFILL, recovery_mode)) { + pr_err("Qman DQRR initialisation failed\n"); + goto fail_dqrr; + } + if (qm_mr_init(__p, qm_mr_pvb, qm_mr_cci)) { + pr_err("Qman MR initialisation failed\n"); + goto fail_mr; + } + /* for recovery mode, quiesce SDQCR/VDQCR and drain DQRR+MR until h/w + * wraps up anything it was doing (5ms is ample idle time). */ + if (recovery_mode) { + const struct qm_dqrr_entry *dq; + const struct qm_mr_entry *msg; + int idle = 0; + /* quiesce SDQCR/VDQCR, then drain till h/w wraps up anything it + * was doing (5ms is more than enough to ensure it's done). */ + qm_dqrr_sdqcr_set(__p, 0); + qm_dqrr_vdqcr_set(__p, 0); +drain_loop: + qm_dqrr_pvb_update(__p, 0); + dq = qm_dqrr_current(__p); + qm_mr_pvb_update(__p); + msg = qm_mr_current(__p); + if (dq) { + pr_warning("DQRR recovery: dumping dqrr %02x:%02x for " + "FQID %d\n", dq->verb & QM_DQRR_VERB_MASK, + dq->stat, dq->fqid); + qm_dqrr_next(__p); + qm_dqrr_cci_consume(__p, 1); + } + if (msg) { + pr_warning("MR recovery: dumping msg 0x%02x for " + "FQID %d\n", msg->verb & QM_MR_VERB_TYPE_MASK, + msg->fq.fqid); + qm_mr_next(__p); + qm_mr_cci_consume(__p, 1); + } + if (!dq && !msg) { + if (++idle < 5) { + msleep(1); + goto drain_loop; + } + } else { + idle = 0; + goto drain_loop; + } + } + if (qm_mc_init(__p)) { + pr_err("Qman MC initialisation failed\n"); + goto fail_mc; + } + if (qm_isr_init(__p)) { + pr_err("Qman ISR initialisation failed\n"); + goto fail_isr; + } + /* static interrupt-gating controls */ + qm_dqrr_set_ithresh(__p, CONFIG_FSL_QMAN_PIRQ_DQRR_ITHRESH); + qm_mr_set_ithresh(__p, CONFIG_FSL_QMAN_PIRQ_MR_ITHRESH); + qm_isr_set_iperiod(__p, CONFIG_FSL_QMAN_PIRQ_IPERIOD); + portal->cgrs = kmalloc(2 * sizeof(*cgrs), GFP_KERNEL); + if (!portal->cgrs) + goto fail_cgrs; + /* initial snapshot is no-depletion */ + qman_cgrs_init(&portal->cgrs[1]); + if (cgrs) + portal->cgrs[0] = *cgrs; + else + /* if the given mask is NULL, assume all CGRs can be seen */ + qman_cgrs_fill(&portal->cgrs[0]); + for (ret = 0; ret < __CGR_NUM; ret++) + INIT_LIST_HEAD(&portal->cgr_cbs[ret]); + spin_lock_init(&portal->cgr_lock); + portal->bits = recovery_mode ? PORTAL_BITS_RECOVERY : 0; + portal->slowpoll = 0; +#ifdef CONFIG_FSL_DPA_CAN_WAIT_SYNC + portal->eqci_owned = NULL; +#endif +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + spin_lock_init(&portal->sharing_lock); + portal->is_shared = config->public_cfg.is_shared; + portal->sharing_redirect = NULL; +#endif + portal->sdqcr = QM_SDQCR_SOURCE_CHANNELS | QM_SDQCR_COUNT_UPTO3 | + QM_SDQCR_DEDICATED_PRECEDENCE | QM_SDQCR_TYPE_PRIO_QOS | + QM_SDQCR_TOKEN_SET(0xab) | QM_SDQCR_CHANNELS_DEDICATED; + portal->dqrr_disable_ref = 0; +#ifdef CONFIG_FSL_QMAN_NULL_FQ_DEMUX + if (null_cb) + portal->null_cb = *null_cb; + else + memset(&portal->null_cb, 0, sizeof(*null_cb)); +#endif + sprintf(buf, "qportal-%d", config->public_cfg.channel); + portal->pdev = platform_device_alloc(buf, -1); + if (!portal->pdev) + goto fail_devalloc; + if (dma_set_mask(&portal->pdev->dev, DMA_BIT_MASK(40))) + goto fail_devadd; + ret = platform_device_add(portal->pdev); + if (ret) + goto fail_devadd; + dpa_rbtree_init(&portal->retire_table); + isdr = 0xffffffff; + qm_isr_disable_write(__p, isdr); + portal->irq_sources = 0; + qm_isr_enable_write(__p, portal->irq_sources); + qm_isr_status_clear(__p, 0xffffffff); +#ifdef CONFIG_FSL_DPA_HAVE_IRQ + snprintf(portal->irqname, MAX_IRQNAME, IRQNAME, config->public_cfg.cpu); + if (request_irq(config->public_cfg.irq, portal_isr, + IRQF_NOBALANCING | IRQF_DISABLED, portal->irqname, + portal)) { + pr_err("request_irq() failed\n"); + goto fail_irq; + } + if (config->public_cfg.cpu != -1) { + disable_irq(config->public_cfg.irq); + irq_set_affinity(config->public_cfg.irq, + cpumask_of(config->public_cfg.cpu)); + } + enable_irq(config->public_cfg.irq); + + if (recovery_mode) { + qm_isr_inhibit(__p); + } else { + post_recovery(portal, config); + qm_isr_uninhibit(__p); + } +#endif + /* Need EQCR to be empty before continuing */ + isdr ^= QM_PIRQ_EQCI; + qm_isr_disable_write(__p, isdr); + ret = qm_eqcr_get_fill(__p); + if (ret) { + pr_err("Qman EQCR unclean, need recovery\n"); + goto fail_eqcr_empty; + } + isdr ^= (QM_PIRQ_DQRI | QM_PIRQ_MRI); + qm_isr_disable_write(__p, isdr); + if (qm_dqrr_current(__p) != NULL) { + pr_err("Qman DQRR unclean, need recovery\n"); + goto fail_dqrr_mr_empty; + } + if (qm_mr_current(__p) != NULL) { + /* special handling, drain just in case it's a few FQRNIs */ + if (drain_mr_fqrni(__p)) { + pr_err("Qman MR unclean, need recovery\n"); + goto fail_dqrr_mr_empty; + } + } + /* Success */ + portal->config = config; + spin_lock(&affine_mask_lock); + cpumask_set_cpu(config->public_cfg.cpu, &affine_mask); + spin_unlock(&affine_mask_lock); + qm_isr_disable_write(__p, 0); + /* Write a sane SDQCR */ + qm_dqrr_sdqcr_set(__p, recovery_mode ? 0 : portal->sdqcr); + return portal; +fail_dqrr_mr_empty: +fail_eqcr_empty: +#ifdef CONFIG_FSL_DPA_HAVE_IRQ + free_irq(config->public_cfg.irq, portal); +fail_irq: +#endif + platform_device_del(portal->pdev); +fail_devadd: + platform_device_put(portal->pdev); +fail_devalloc: + if (portal->cgrs) + kfree(portal->cgrs); +fail_cgrs: + qm_isr_finish(__p); +fail_isr: + qm_mc_finish(__p); +fail_mc: + qm_mr_finish(__p); +fail_mr: + qm_dqrr_finish(__p); +fail_dqrr: + qm_eqcr_finish(__p); +fail_eqcr: + put_affine_portal(); + return NULL; +} + +/* These checks are BUG_ON()s because the driver is already supposed to avoid + * these cases. */ +struct qman_portal *qman_create_affine_slave(struct qman_portal *redirect) +{ +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + struct qman_portal *p = get_raw_affine_portal(); + /* Check that we don't already have our own portal */ + BUG_ON(p->config); + /* Check that we aren't already slaving to another portal */ + BUG_ON(p->is_shared); + /* Check that 'redirect' is prepared to have us */ + BUG_ON(!redirect->config->public_cfg.is_shared); + /* These are the only elements to initialise when redirecting */ + p->irq_sources = 0; + p->sharing_redirect = redirect; + put_affine_portal(); + return p; +#else + BUG(); + return NULL; +#endif +} + +const struct qm_portal_config *qman_destroy_affine_portal(void) +{ + /* We don't want to redirect if we're a slave, use "raw" */ + struct qman_portal *qm = get_raw_affine_portal(); + const struct qm_portal_config *pcfg; + int cpu; +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + if (qm->sharing_redirect) { + qm->sharing_redirect = NULL; + put_affine_portal(); + return NULL; + } + qm->is_shared = 0; +#endif + pcfg = qm->config; + cpu = pcfg->public_cfg.cpu; + /* NB we do this to "quiesce" EQCR. If we add enqueue-completions or + * something related to QM_PIRQ_EQCI, this may need fixing. + * Also, due to the prefetching model used for CI updates in the enqueue + * path, this update will only invalidate the CI cacheline *after* + * working on it, so we need to call this twice to ensure a full update + * irrespective of where the enqueue processing was at when the teardown + * began. */ + qm_eqcr_cce_update(&qm->p); + qm_eqcr_cce_update(&qm->p); +#ifdef CONFIG_FSL_DPA_HAVE_IRQ + free_irq(pcfg->public_cfg.irq, qm); +#endif + kfree(qm->cgrs); + qm_isr_finish(&qm->p); + qm_mc_finish(&qm->p); + qm_mr_finish(&qm->p); + qm_dqrr_finish(&qm->p); + qm_eqcr_finish(&qm->p); + qm->config = NULL; + spin_lock(&affine_mask_lock); + cpumask_clear_cpu(cpu, &affine_mask); + spin_unlock(&affine_mask_lock); + put_affine_portal(); + return pcfg; +} + +const struct qman_portal_config *qman_get_portal_config(void) +{ + struct qman_portal *p = get_affine_portal(); + const struct qman_portal_config *ret = &p->config->public_cfg; + put_affine_portal(); + return ret; +} +EXPORT_SYMBOL(qman_get_portal_config); + +#ifdef CONFIG_FSL_QMAN_NULL_FQ_DEMUX +void qman_get_null_cb(struct qman_fq_cb *null_cb) +{ + struct qman_portal *p = get_affine_portal(); + *null_cb = p->null_cb; + put_affine_portal(); +} +EXPORT_SYMBOL(qman_get_null_cb); + +void qman_set_null_cb(const struct qman_fq_cb *null_cb) +{ + struct qman_portal *p = get_affine_portal(); + p->null_cb = *null_cb; + put_affine_portal(); +} +EXPORT_SYMBOL(qman_set_null_cb); +#endif + +/* Inline helper to reduce nesting in __poll_portal_slow() */ +static inline void fq_state_change(struct qman_portal *p, struct qman_fq *fq, + const struct qm_mr_entry *msg, u8 verb) +{ + FQLOCK(fq); + switch(verb) { + case QM_MR_VERB_FQRL: + DPA_ASSERT(fq_isset(fq, QMAN_FQ_STATE_ORL)); + fq_clear(fq, QMAN_FQ_STATE_ORL); + table_del_fq(p, fq); + break; + case QM_MR_VERB_FQRN: + DPA_ASSERT((fq->state == qman_fq_state_parked) || + (fq->state == qman_fq_state_sched)); + DPA_ASSERT(fq_isset(fq, QMAN_FQ_STATE_CHANGING)); + fq_clear(fq, QMAN_FQ_STATE_CHANGING); + if (msg->fq.fqs & QM_MR_FQS_NOTEMPTY) + fq_set(fq, QMAN_FQ_STATE_NE); + if (msg->fq.fqs & QM_MR_FQS_ORLPRESENT) + fq_set(fq, QMAN_FQ_STATE_ORL); + else + table_del_fq(p, fq); + fq->state = qman_fq_state_retired; + break; + case QM_MR_VERB_FQPN: + DPA_ASSERT(fq->state == qman_fq_state_sched); + DPA_ASSERT(fq_isclear(fq, QMAN_FQ_STATE_CHANGING)); + fq->state = qman_fq_state_parked; + } + FQUNLOCK(fq); +} + +static u32 __poll_portal_slow(struct qman_portal *p, u32 is) +{ + const struct qm_mr_entry *msg; + + BUG_ON(p->bits & PORTAL_BITS_RECOVERY); + + if (is & QM_PIRQ_CSCI) { + struct qman_cgrs rr, c; + struct qm_mc_result *mcr; + struct qman_cgr *cgr; + int i; + unsigned long irqflags __maybe_unused; + + spin_lock_irqsave(&p->cgr_lock, irqflags); + qm_mc_start(&p->p); + qm_mc_commit(&p->p, QM_MCC_VERB_QUERYCONGESTION); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + /* mask out the ones I'm not interested in */ + qman_cgrs_and(&rr, (const struct qman_cgrs *) + &mcr->querycongestion.state, &p->cgrs[0]); + /* check previous snapshot for delta, enter/exit congestion */ + qman_cgrs_xor(&c, &rr, &p->cgrs[1]); + /* update snapshot */ + qman_cgrs_cp(&p->cgrs[1], &rr); + /* Invoke callback */ + qman_cgrs_for_each_1(i, &c) + list_for_each_entry(cgr, &p->cgr_cbs[i], node) { + if (cgr->cb) + cgr->cb(p, cgr, qman_cgrs_get(&rr, i)); + } + spin_unlock_irqrestore(&p->cgr_lock, irqflags); + } + +#ifdef CONFIG_FSL_DPA_CAN_WAIT_SYNC + if (is & QM_PIRQ_EQCI) { + unsigned long irqflags; + PORTAL_IRQ_LOCK(p, irqflags); + p->eqci_owned = NULL; + PORTAL_IRQ_UNLOCK(p, irqflags); + wake_up(&affine_queue); + } +#endif + + if (is & QM_PIRQ_EQRI) { + unsigned long irqflags __maybe_unused; + PORTAL_IRQ_LOCK(p, irqflags); + qm_eqcr_cce_update(&p->p); + qm_eqcr_set_ithresh(&p->p, 0); + PORTAL_IRQ_UNLOCK(p, irqflags); + wake_up(&affine_queue); + } + + if (is & QM_PIRQ_MRI) { + u8 num = 0; +mr_loop: + qm_mr_pvb_update(&p->p); + msg = qm_mr_current(&p->p); + if (msg) { + u8 verb = msg->verb & QM_MR_VERB_TYPE_MASK; +#ifdef CONFIG_FSL_QMAN_FQ_LOOKUP + struct qman_fq *fq; +#else + struct qman_fq *fq = (void *)(uintptr_t)msg->ern.tag; +#endif + if (verb == QM_MR_VERB_FQRNI) { + ; /* nada, we drop FQRNIs on the floor */ + } else if ((verb == QM_MR_VERB_FQRN) || + (verb == QM_MR_VERB_FQRL)) { + /* It's retirement related - need a lookup */ + fq = table_find_fq(p, msg->fq.fqid); + if (!fq) + panic("unexpected FQ retirement"); + fq_state_change(p, fq, msg, verb); + if (fq->cb.fqs) + fq->cb.fqs(p, fq, msg); +#ifdef CONFIG_FSL_QMAN_FQ_LOOKUP + } else if (likely(msg->ern.tag)) { + fq = get_fq_table_entry(msg->ern.tag); +#else + } else if (likely(fq)) { +#endif + /* As per the header note, this is the way to + * determine if it's a s/w ERN or not. */ + if (likely(!(verb & QM_MR_VERB_DC_ERN))) + fq->cb.ern(p, fq, msg); + else + fq->cb.dc_ern(p, fq, msg); + } +#ifdef CONFIG_FSL_QMAN_NULL_FQ_DEMUX + else { + /* use portal default handlers for 'null's */ + if (likely(!(verb & QM_MR_VERB_DC_ERN))) + p->null_cb.ern(p, NULL, msg); + else if (verb == QM_MR_VERB_DC_ERN) + p->null_cb.dc_ern(p, NULL, msg); + else if (p->null_cb.fqs) + p->null_cb.fqs(p, NULL, msg); + } +#endif + num++; + qm_mr_next(&p->p); + goto mr_loop; + } + qm_mr_cci_consume(&p->p, num); + } + + return is & (QM_PIRQ_CSCI | QM_PIRQ_EQCI | QM_PIRQ_EQRI | QM_PIRQ_MRI); +} + +/* remove some slowish-path stuff from the "fast path" and make sure it isn't + * inlined. */ +static noinline void clear_vdqcr(struct qman_portal *p, struct qman_fq *fq) +{ + p->vdqcr_owned = NULL; + FQLOCK(fq); + fq_clear(fq, QMAN_FQ_STATE_VDQCR); + FQUNLOCK(fq); + wake_up(&affine_queue); +} + +/* Look: no locks, no irq_save()s, no preempt_disable()s! :-) The only states + * that would conflict with other things if they ran at the same time on the + * same cpu are; + * + * (i) setting/clearing vdqcr_owned, and + * (ii) clearing the NE (Not Empty) flag. + * + * Both are safe. Because; + * + * (i) this clearing can only occur after qman_volatile_dequeue() has set the + * vdqcr_owned field (which it does before setting VDQCR), and + * qman_volatile_dequeue() blocks interrupts and preemption while this is + * done so that we can't interfere. + * (ii) the NE flag is only cleared after qman_retire_fq() has set it, and as + * with (i) that API prevents us from interfering until it's safe. + * + * The good thing is that qman_volatile_dequeue() and qman_retire_fq() run far + * less frequently (ie. per-FQ) than __poll_portal_fast() does, so the nett + * advantage comes from this function not having to "lock" anything at all. + * + * Note also that the callbacks are invoked at points which are safe against the + * above potential conflicts, but that this function itself is not re-entrant + * (this is because the function tracks one end of each FIFO in the portal and + * we do *not* want to lock that). So the consequence is that it is safe for + * user callbacks to call into any Qman API *except* qman_poll() (as that's the + * sole API that could be invoking the callback through this function). + */ +static inline unsigned int __poll_portal_fast(struct qman_portal *p, + unsigned int poll_limit) +{ + const struct qm_dqrr_entry *dq; + struct qman_fq *fq; + enum qman_cb_dqrr_result res; +#ifdef CONFIG_FSL_QMAN_DQRR_PREFETCHING + int coherent = (p->config->public_cfg.has_stashing); +#endif + unsigned int limit = 0; + + BUG_ON(p->bits & PORTAL_BITS_RECOVERY); +loop: +#ifdef CONFIG_FSL_QMAN_DQRR_PREFETCHING + qm_dqrr_pvb_update(&p->p, coherent); +#else + qm_dqrr_pvb_update(&p->p, 1); +#endif + dq = qm_dqrr_current(&p->p); + if (!dq) + goto done; + if (dq->stat & QM_DQRR_STAT_UNSCHEDULED) { + /* VDQCR: don't trust contextB as the FQ may have been + * configured for h/w consumption and we're draining it + * post-retirement. */ + fq = p->vdqcr_owned; + /* We only set QMAN_FQ_STATE_NE when retiring, so we only need + * to check for clearing it when doing volatile dequeues. It's + * one less thing to check in the critical path (SDQCR). */ + if (dq->stat & QM_DQRR_STAT_FQ_EMPTY) + fq_clear(fq, QMAN_FQ_STATE_NE); + /* this is duplicated from the SDQCR code, but we have stuff to + * do before *and* after this callback, and we don't want + * multiple if()s in the critical path (SDQCR). */ + res = fq->cb.dqrr(p, fq, dq); + if (res == qman_cb_dqrr_stop) + goto done; + /* Check for VDQCR completion */ + if (dq->stat & QM_DQRR_STAT_DQCR_EXPIRED) + clear_vdqcr(p, fq); + } else { + /* SDQCR: contextB points to the FQ */ +#ifdef CONFIG_FSL_QMAN_FQ_LOOKUP + fq = get_fq_table_entry(dq->contextB); +#else + fq = (void *)(uintptr_t)dq->contextB; +#endif +#ifdef CONFIG_FSL_QMAN_NULL_FQ_DEMUX + if (unlikely(!fq)) { + /* use portal default handlers */ + res = p->null_cb.dqrr(p, NULL, dq); + DPA_ASSERT(res == qman_cb_dqrr_consume); + res = qman_cb_dqrr_consume; + } else +#endif + { + /* Now let the callback do its stuff */ + res = fq->cb.dqrr(p, fq, dq); + /* The callback can request that we exit without + * consuming this entry nor advancing; */ + if (res == qman_cb_dqrr_stop) + goto done; + } + } + /* Interpret 'dq' from a driver perspective. */ + /* Parking isn't possible unless HELDACTIVE was set. NB, + * FORCEELIGIBLE implies HELDACTIVE, so we only need to + * check for HELDACTIVE to cover both. */ + DPA_ASSERT((dq->stat & QM_DQRR_STAT_FQ_HELDACTIVE) || + (res != qman_cb_dqrr_park)); +#ifdef CONFIG_FSL_QMAN_PORTAL_DISABLEAUTO_DCA + if (res == qman_cb_dqrr_park) + /* The only thing to do for non-DCA is the park-request */ + qm_dqrr_park_current(&p->p); + /* Move forward */ + qm_dqrr_next(&p->p); + qm_dqrr_cci_consume(&p->p, 1); +#else + /* Defer just means "skip it, I'll consume it myself later on" */ + if (res != qman_cb_dqrr_defer) + qm_dqrr_cdc_consume_1ptr(&p->p, dq, (res == qman_cb_dqrr_park)); + /* Move forward */ + qm_dqrr_next(&p->p); +#endif + /* Entry processed and consumed, increment our counter. The callback can + * request that we exit after consuming the entry, and we also exit if + * we reach our processing limit, so loop back only if neither of these + * conditions is met. */ + if ((++limit < poll_limit) && (res != qman_cb_dqrr_consume_stop)) + goto loop; +done: + return limit; +} + +u32 qman_irqsource_get(void) +{ + /* "irqsource" and "poll" APIs mustn't redirect when sharing, they + * should shut the user out if they are not the primary CPU hosting the + * portal. That's why we use the "raw" interface. */ + struct qman_portal *p = get_raw_affine_portal(); + u32 ret = p->irq_sources & QM_PIRQ_VISIBLE; + put_affine_portal(); + return ret; +} +EXPORT_SYMBOL(qman_irqsource_get); + +int qman_irqsource_add(u32 bits __maybe_unused) +{ +#ifdef CONFIG_FSL_DPA_HAVE_IRQ + struct qman_portal *p = get_raw_affine_portal(); + int ret = 0; +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + if (p->sharing_redirect) + ret = -EINVAL; + else +#endif + { + __maybe_unused unsigned long irqflags; + PORTAL_IRQ_LOCK(p, irqflags); + set_bits(bits & QM_PIRQ_VISIBLE, &p->irq_sources); + qm_isr_enable_write(&p->p, p->irq_sources); + PORTAL_IRQ_UNLOCK(p, irqflags); + } + put_affine_portal(); + return ret; +#else + pr_err("No Qman portal IRQ support, mustn't specify IRQ flags!"); + return -EINVAL; +#endif +} +EXPORT_SYMBOL(qman_irqsource_add); + +int qman_irqsource_remove(u32 bits) +{ +#ifdef CONFIG_FSL_DPA_HAVE_IRQ + struct qman_portal *p = get_raw_affine_portal(); + __maybe_unused unsigned long irqflags; + u32 ier; +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + if (p->sharing_redirect) { + put_affine_portal(); + return -EINVAL; + } +#endif + /* Our interrupt handler only processes+clears status register bits that + * are in p->irq_sources. As we're trimming that mask, if one of them + * were to assert in the status register just before we remove it from + * the enable register, there would be an interrupt-storm when we + * release the IRQ lock. So we wait for the enable register update to + * take effect in h/w (by reading it back) and then clear all other bits + * in the status register. Ie. we clear them from ISR once it's certain + * IER won't allow them to reassert. */ + PORTAL_IRQ_LOCK(p, irqflags); + bits &= QM_PIRQ_VISIBLE; + clear_bits(bits, &p->irq_sources); + qm_isr_enable_write(&p->p, p->irq_sources); + ier = qm_isr_enable_read(&p->p); + /* Using "~ier" (rather than "bits" or "~p->irq_sources") creates a + * data-dependency, ie. to protect against re-ordering. */ + qm_isr_status_clear(&p->p, ~ier); + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + return 0; +#else + pr_err("No Qman portal IRQ support, mustn't specify IRQ flags!"); + return -EINVAL; +#endif +} +EXPORT_SYMBOL(qman_irqsource_remove); + +const cpumask_t *qman_affine_cpus(void) +{ + return &affine_mask; +} +EXPORT_SYMBOL(qman_affine_cpus); + +int qman_poll_dqrr(unsigned int limit) +{ + /* We need to fail when called for a "slave", so use "raw" */ + struct qman_portal *p = get_raw_affine_portal(); + int ret; +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + if (unlikely(p->sharing_redirect)) + ret = -EINVAL; + else +#endif + { + BUG_ON(p->irq_sources & QM_PIRQ_DQRI); + ret = __poll_portal_fast(p, limit); + } + put_affine_portal(); + return ret; +} +EXPORT_SYMBOL(qman_poll_dqrr); + +u32 qman_poll_slow(void) +{ + /* We need to fail when called for a "slave", so use "raw" */ + struct qman_portal *p = get_raw_affine_portal(); + u32 ret; +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + if (unlikely(p->sharing_redirect)) + ret = (u32)-1; + else +#endif + { + u32 is = qm_isr_status_read(&p->p) & ~p->irq_sources; + ret = __poll_portal_slow(p, is); + qm_isr_status_clear(&p->p, ret); + } + put_affine_portal(); + return ret; +} +EXPORT_SYMBOL(qman_poll_slow); + +/* Legacy wrapper */ +void qman_poll(void) +{ + struct qman_portal *p = get_raw_affine_portal(); +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE + if (unlikely(p->sharing_redirect)) + goto done; +#endif + if ((~p->irq_sources) & QM_PIRQ_SLOW) { + if (!(p->slowpoll--)) { + u32 is = qm_isr_status_read(&p->p) & ~p->irq_sources; + u32 active = __poll_portal_slow(p, is); + if (active) { + qm_isr_status_clear(&p->p, active); + p->slowpoll = SLOW_POLL_BUSY; + } else + p->slowpoll = SLOW_POLL_IDLE; + } + } + if ((~p->irq_sources) & QM_PIRQ_DQRI) + __poll_portal_fast(p, CONFIG_FSL_QMAN_POLL_LIMIT); +#ifdef CONFIG_FSL_DPA_PORTAL_SHARE +done: +#endif + put_affine_portal(); +} +EXPORT_SYMBOL(qman_poll); + +/* Recovery processing. */ +static int recovery_poll_mr(struct qman_portal *p, u32 fqid) +{ + const struct qm_mr_entry *msg; + enum { + wait_for_fqrn, + wait_for_fqrl, + done + } state = wait_for_fqrn; + u8 v, fqs = 0; + +loop: + qm_mr_pvb_update(&p->p); + msg = qm_mr_current(&p->p); + if (!msg) { + cpu_relax(); + goto loop; + } + v = msg->verb & QM_MR_VERB_TYPE_MASK; + /* all MR messages have "fqid" in the same place */ + if (msg->fq.fqid != fqid) { +ignore_msg: + pr_warning("recovery_poll_mr(), ignoring msg 0x%02x for " + "FQID %d\n", v, msg->fq.fqid); + goto next_msg; + } + if (state == wait_for_fqrn) { + if ((v != QM_MR_VERB_FQRN) && (v != QM_MR_VERB_FQRNI)) + goto ignore_msg; + fqs = msg->fq.fqs; + if (!(fqs & QM_MR_FQS_ORLPRESENT)) + state = done; + else + state = wait_for_fqrl; + } else { + if (v != QM_MR_VERB_FQRL) + goto ignore_msg; + state = done; + } +next_msg: + qm_mr_next(&p->p); + qm_mr_cci_consume(&p->p, 1); + if (state != done) + goto loop; + return (fqs & QM_MR_FQS_NOTEMPTY) ? 1 : 0; +} +static unsigned int recovery_poll_dqrr(struct qman_portal *p, u32 fqid) +{ + const struct qm_dqrr_entry *dq; + u8 empty = 0, num_fds = 0; + +loop: + qm_dqrr_pvb_update(&p->p, 0); + dq = qm_dqrr_current(&p->p); + if (!dq) { + cpu_relax(); + goto loop; + } + if (!(dq->stat & QM_DQRR_STAT_UNSCHEDULED)) { +ignore_dqrr: + pr_warning("recovery_poll_dqrr(), ignoring dqrr %02x:%02x " + "for FQID %d\n", + dq->verb & QM_DQRR_VERB_MASK, dq->stat, dq->fqid); + goto next_dqrr; + } + if (dq->fqid != fqid) + goto ignore_dqrr; + if (dq->stat & QM_DQRR_STAT_FD_VALID) + num_fds++; + if (dq->stat & QM_DQRR_STAT_FQ_EMPTY) + empty = 1; +next_dqrr: + qm_dqrr_next(&p->p); + qm_dqrr_cci_consume(&p->p, 1); + if (!empty) + goto loop; + return num_fds; +} +int qman_recovery_cleanup_fq(u32 fqid) +{ + struct qm_mc_command *mcc; + struct qm_mc_result *mcr; + struct qman_portal *p = get_affine_portal(); + unsigned long irqflags __maybe_unused; + int ret = 0; + unsigned int num_fds = 0; + const char *s; + u8 state; + + /* Lock this whole flow down via the portal's "vdqcr" */ + PORTAL_IRQ_LOCK(p, irqflags); + BUG_ON(!(p->bits & PORTAL_BITS_RECOVERY)); + if (p->vdqcr_owned) + ret = -EBUSY; + else + p->vdqcr_owned = (void *)1; + PORTAL_IRQ_UNLOCK(p, irqflags); + if (ret) + goto out; + + /* Query the FQ's state */ + mcc = qm_mc_start(&p->p); + mcc->queryfq.fqid = fqid; + qm_mc_commit(&p->p, QM_MCC_VERB_QUERYFQ_NP); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & QM_MCR_VERB_MASK) == QM_MCR_VERB_QUERYFQ_NP); + if (mcr->result != QM_MCR_RESULT_OK) { + ret = -EIO; + goto out; + } + state = mcr->queryfq_np.state & QM_MCR_NP_STATE_MASK; + + /* OOS: nothing to do */ + if (state == QM_MCR_NP_STATE_OOS) + goto out; + /* Otherwise: must be retired */ + if (state != QM_MCR_NP_STATE_RETIRED) { + mcc = qm_mc_start(&p->p); + mcc->alterfq.fqid = fqid; + qm_mc_commit(&p->p, QM_MCC_VERB_ALTER_RETIRE); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & QM_MCR_VERB_MASK) == + QM_MCR_VERB_ALTER_RETIRE); + if ((mcr->result != QM_MCR_RESULT_OK) && + (mcr->result != QM_MCR_RESULT_PENDING)) { + ret = -EIO; + goto out; + } + ret = recovery_poll_mr(p, fqid); + if (!ret) + /* FQ empty */ + goto oos; + } + /* Drain till empty */ + qm_dqrr_vdqcr_set(&p->p, fqid & 0x00ffffff); + num_fds = recovery_poll_dqrr(p, fqid); + +oos: + mcc = qm_mc_start(&p->p); + mcc->alterfq.fqid = fqid; + qm_mc_commit(&p->p, QM_MCC_VERB_ALTER_OOS); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & QM_MCR_VERB_MASK) == QM_MCR_VERB_ALTER_OOS); + if (mcr->result != QM_MCR_RESULT_OK) + ret = -EIO; + /* done */ + s = (state == QM_MCR_NP_STATE_RETIRED) ? "retired" : + (state == QM_MCR_NP_STATE_PARKED) ? "parked" : "scheduled"; + pr_info("Qman: %s FQID %d recovered (%d frames)\n", s, fqid, num_fds); +out: + PORTAL_IRQ_LOCK(p, irqflags); + p->vdqcr_owned = NULL; + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + return ret; +} +EXPORT_SYMBOL(qman_recovery_cleanup_fq); + +/* called from qman_driver.c::qman_recovery_exit() only (if exporting, use + * get_raw_affine_portal() and check for the "SLAVE" bit). */ +void qman_recovery_exit_local(void) +{ + struct qman_portal *p = get_affine_portal(); + BUG_ON(!(p->bits & PORTAL_BITS_RECOVERY)); + /* Reinitialise DQRR using expected settings */ + qm_dqrr_finish(&p->p); + post_recovery(p, p->config); + clear_bits(PORTAL_BITS_RECOVERY, &p->bits); + if (qm_dqrr_init(&p->p, p->config, qm_dqrr_dpush, qm_dqrr_pvb, + QM_DQRR_CMODE, DQRR_MAXFILL, 0)) + panic("Qman DQRR initialisation failed, recovery broken"); + qm_dqrr_sdqcr_set(&p->p, p->sdqcr); + qm_isr_status_clear(&p->p, 0xffffffff); + qm_isr_uninhibit(&p->p); + put_affine_portal(); +} + +void qman_stop_dequeues(void) +{ + struct qman_portal *p = get_affine_portal(); + qman_stop_dequeues_ex(p); + put_affine_portal(); +} +EXPORT_SYMBOL(qman_stop_dequeues); + +void qman_start_dequeues(void) +{ + struct qman_portal *p = get_affine_portal(); + unsigned long irqflags __maybe_unused; + PORTAL_IRQ_LOCK(p, irqflags); + DPA_ASSERT(p->dqrr_disable_ref > 0); + if (!(--p->dqrr_disable_ref)) + qm_dqrr_set_maxfill(&p->p, DQRR_MAXFILL); + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); +} +EXPORT_SYMBOL(qman_start_dequeues); + +void qman_static_dequeue_add(u32 pools) +{ + unsigned long irqflags __maybe_unused; + struct qman_portal *p = get_affine_portal(); + PORTAL_IRQ_LOCK(p, irqflags); + pools &= p->config->public_cfg.pools; + p->sdqcr |= pools; + qm_dqrr_sdqcr_set(&p->p, p->sdqcr); + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); +} +EXPORT_SYMBOL(qman_static_dequeue_add); + +void qman_static_dequeue_del(u32 pools) +{ + struct qman_portal *p = get_affine_portal(); + unsigned long irqflags __maybe_unused; + PORTAL_IRQ_LOCK(p, irqflags); + pools &= p->config->public_cfg.pools; + p->sdqcr &= ~pools; + qm_dqrr_sdqcr_set(&p->p, p->sdqcr); + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); +} +EXPORT_SYMBOL(qman_static_dequeue_del); + +u32 qman_static_dequeue_get(void) +{ + struct qman_portal *p = get_affine_portal(); + u32 ret = p->sdqcr; + put_affine_portal(); + return ret; +} +EXPORT_SYMBOL(qman_static_dequeue_get); + +void qman_dca(struct qm_dqrr_entry *dq, int park_request) +{ + struct qman_portal *p = get_affine_portal(); + qm_dqrr_cdc_consume_1ptr(&p->p, dq, park_request); + put_affine_portal(); +} +EXPORT_SYMBOL(qman_dca); + +/*******************/ +/* Frame queue API */ +/*******************/ + +static const char *mcr_result_str(u8 result) +{ + switch (result) { + case QM_MCR_RESULT_NULL: + return "QM_MCR_RESULT_NULL"; + case QM_MCR_RESULT_OK: + return "QM_MCR_RESULT_OK"; + case QM_MCR_RESULT_ERR_FQID: + return "QM_MCR_RESULT_ERR_FQID"; + case QM_MCR_RESULT_ERR_FQSTATE: + return "QM_MCR_RESULT_ERR_FQSTATE"; + case QM_MCR_RESULT_ERR_NOTEMPTY: + return "QM_MCR_RESULT_ERR_NOTEMPTY"; + case QM_MCR_RESULT_PENDING: + return "QM_MCR_RESULT_PENDING"; + case QM_MCR_RESULT_ERR_BADCOMMAND: + return "QM_MCR_RESULT_ERR_BADCOMMAND"; + } + return ""; +} + +int qman_create_fq(u32 fqid, u32 flags, struct qman_fq *fq) +{ + struct qm_fqd fqd; + struct qm_mcr_queryfq_np np; + struct qm_mc_command *mcc; + struct qm_mc_result *mcr; + struct qman_portal *p; + unsigned long irqflags __maybe_unused; + + if (flags & QMAN_FQ_FLAG_DYNAMIC_FQID) { + fqid = qm_fq_new(); + if (!fqid) + return -ENOMEM; + } + spin_lock_init(&fq->fqlock); + fq->fqid = fqid; + fq->flags = flags; + fq->state = qman_fq_state_oos; + fq->cgr_groupid = 0; +#ifdef CONFIG_FSL_QMAN_FQ_LOOKUP + if (unlikely(find_empty_fq_table_entry(&fq->key, fq))) + return -ENOMEM; +#endif + if (!(flags & QMAN_FQ_FLAG_AS_IS) || (flags & QMAN_FQ_FLAG_NO_MODIFY)) + return 0; + /* Everything else is AS_IS support */ + p = get_affine_portal(); + PORTAL_IRQ_LOCK(p, irqflags); + mcc = qm_mc_start(&p->p); + mcc->queryfq.fqid = fqid; + qm_mc_commit(&p->p, QM_MCC_VERB_QUERYFQ); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & QM_MCR_VERB_MASK) == QM_MCC_VERB_QUERYFQ); + if (mcr->result != QM_MCR_RESULT_OK) { + pr_err("QUERYFQ failed: %s\n", mcr_result_str(mcr->result)); + goto err; + } + fqd = mcr->queryfq.fqd; + mcc = qm_mc_start(&p->p); + mcc->queryfq_np.fqid = fqid; + qm_mc_commit(&p->p, QM_MCC_VERB_QUERYFQ_NP); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & QM_MCR_VERB_MASK) == QM_MCC_VERB_QUERYFQ_NP); + if (mcr->result != QM_MCR_RESULT_OK) { + pr_err("QUERYFQ_NP failed: %s\n", mcr_result_str(mcr->result)); + goto err; + } + np = mcr->queryfq_np; + /* Phew, have queryfq and queryfq_np results, stitch together + * the FQ object from those. */ + fq->cgr_groupid = fqd.cgid; + switch (np.state & QM_MCR_NP_STATE_MASK) { + case QM_MCR_NP_STATE_OOS: + break; + case QM_MCR_NP_STATE_RETIRED: + fq->state = qman_fq_state_retired; + if (np.frm_cnt) + fq_set(fq, QMAN_FQ_STATE_NE); + break; + case QM_MCR_NP_STATE_TEN_SCHED: + case QM_MCR_NP_STATE_TRU_SCHED: + case QM_MCR_NP_STATE_ACTIVE: + fq->state = qman_fq_state_sched; + if (np.state & QM_MCR_NP_STATE_R) + fq_set(fq, QMAN_FQ_STATE_CHANGING); + break; + case QM_MCR_NP_STATE_PARKED: + fq->state = qman_fq_state_parked; + break; + default: + DPA_ASSERT(NULL == "invalid FQ state"); + } + if (fqd.fq_ctrl & QM_FQCTRL_CGE) + fq->state |= QMAN_FQ_STATE_CGR_EN; + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + return 0; +err: + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + if (flags & QMAN_FQ_FLAG_DYNAMIC_FQID) + qm_fq_free(fqid); + return -EIO; +} +EXPORT_SYMBOL(qman_create_fq); + +void qman_destroy_fq(struct qman_fq *fq, u32 flags __maybe_unused) +{ + /* We don't need to lock the FQ as it is a pre-condition that the FQ be + * quiesced. Instead, run some checks. */ + switch (fq->state) { + case qman_fq_state_parked: + DPA_ASSERT(flags & QMAN_FQ_DESTROY_PARKED); + case qman_fq_state_oos: + if (fq_isset(fq, QMAN_FQ_FLAG_DYNAMIC_FQID)) + qm_fq_free(fq->fqid); +#ifdef CONFIG_FSL_QMAN_FQ_LOOKUP + clear_fq_table_entry(fq->key); +#endif + return; + default: + break; + } + DPA_ASSERT(NULL == "qman_free_fq() on unquiesced FQ!"); +} +EXPORT_SYMBOL(qman_destroy_fq); + +u32 qman_fq_fqid(struct qman_fq *fq) +{ + return fq->fqid; +} +EXPORT_SYMBOL(qman_fq_fqid); + +void qman_fq_state(struct qman_fq *fq, enum qman_fq_state *state, u32 *flags) +{ + if (state) + *state = fq->state; + if (flags) + *flags = fq->flags; +} +EXPORT_SYMBOL(qman_fq_state); + +int qman_init_fq(struct qman_fq *fq, u32 flags, struct qm_mcc_initfq *opts) +{ + struct qm_mc_command *mcc; + struct qm_mc_result *mcr; + struct qman_portal *p; + unsigned long irqflags __maybe_unused; + u8 res, myverb = (flags & QMAN_INITFQ_FLAG_SCHED) ? + QM_MCC_VERB_INITFQ_SCHED : QM_MCC_VERB_INITFQ_PARKED; + + DPA_ASSERT((fq->state == qman_fq_state_oos) || + (fq->state == qman_fq_state_parked)); +#ifdef CONFIG_FSL_DPA_CHECKING + if (unlikely(fq_isset(fq, QMAN_FQ_FLAG_NO_MODIFY))) + return -EINVAL; +#endif + if (opts && (opts->we_mask & QM_INITFQ_WE_OAC)) { + /* OAC not supported on rev1.0 */ + if (unlikely(qman_ip_rev == QMAN_REV10)) + return -EINVAL; + /* And can't be set at the same time as TDTHRESH */ + if (opts->we_mask & QM_INITFQ_WE_TDTHRESH) + return -EINVAL; + } + /* Issue an INITFQ_[PARKED|SCHED] management command */ + p = get_affine_portal(); + PORTAL_IRQ_LOCK(p, irqflags); + FQLOCK(fq); + if (unlikely((fq_isset(fq, QMAN_FQ_STATE_CHANGING)) || + ((fq->state != qman_fq_state_oos) && + (fq->state != qman_fq_state_parked)))) { + FQUNLOCK(fq); + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + return -EBUSY; + } + mcc = qm_mc_start(&p->p); + if (opts) + mcc->initfq = *opts; + mcc->initfq.fqid = fq->fqid; + mcc->initfq.count = 0; + /* If INITFQ_FLAG_NULL is passed, contextB is set to zero. Otherwise, + * if the FQ does *not* have the TO_DCPORTAL flag, contextB is set as a + * demux pointer. Otherwise, TO_DCPORTAL is set, so the caller-provided + * value is allowed to stand, don't overwrite it. */ + if ((flags & QMAN_INITFQ_FLAG_NULL) || + fq_isclear(fq, QMAN_FQ_FLAG_TO_DCPORTAL)) { + dma_addr_t phys_fq; + mcc->initfq.we_mask |= QM_INITFQ_WE_CONTEXTB; +#ifdef CONFIG_FSL_QMAN_FQ_LOOKUP + mcc->initfq.fqd.context_b = (flags & QMAN_INITFQ_FLAG_NULL) ? + 0 : fq->key; +#else + mcc->initfq.fqd.context_b = (flags & QMAN_INITFQ_FLAG_NULL) ? + 0 : (u32)(uintptr_t)fq; +#endif + /* and the physical address - NB, if the user wasn't trying to + * set CONTEXTA, clear the stashing settings. */ + if (!(mcc->initfq.we_mask & QM_INITFQ_WE_CONTEXTA)) { + mcc->initfq.we_mask |= QM_INITFQ_WE_CONTEXTA; + memset(&mcc->initfq.fqd.context_a, 0, + sizeof(mcc->initfq.fqd.context_a)); + } else { + phys_fq = dma_map_single(&p->pdev->dev, fq, sizeof(*fq), + DMA_TO_DEVICE); + qm_fqd_stashing_set64(&mcc->initfq.fqd, phys_fq); + } + } + if (flags & QMAN_INITFQ_FLAG_LOCAL) { + mcc->initfq.fqd.dest.channel = p->config->public_cfg.channel; + if (!(mcc->initfq.we_mask & QM_INITFQ_WE_DESTWQ)) { + mcc->initfq.we_mask |= QM_INITFQ_WE_DESTWQ; + mcc->initfq.fqd.dest.wq = 4; + } + } + qm_mc_commit(&p->p, myverb); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & QM_MCR_VERB_MASK) == myverb); + res = mcr->result; + if (res != QM_MCR_RESULT_OK) { + FQUNLOCK(fq); + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + return -EIO; + } + if (opts) { + if (opts->we_mask & QM_INITFQ_WE_FQCTRL) { + if (opts->fqd.fq_ctrl & QM_FQCTRL_CGE) + fq_set(fq, QMAN_FQ_STATE_CGR_EN); + else + fq_clear(fq, QMAN_FQ_STATE_CGR_EN); + } + if (opts->we_mask & QM_INITFQ_WE_CGID) + fq->cgr_groupid = opts->fqd.cgid; + } + fq->state = (flags & QMAN_INITFQ_FLAG_SCHED) ? + qman_fq_state_sched : qman_fq_state_parked; + FQUNLOCK(fq); + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + return 0; +} +EXPORT_SYMBOL(qman_init_fq); + +int qman_schedule_fq(struct qman_fq *fq) +{ + struct qm_mc_command *mcc; + struct qm_mc_result *mcr; + struct qman_portal *p; + unsigned long irqflags __maybe_unused; + int ret = 0; + u8 res; + + DPA_ASSERT(fq->state == qman_fq_state_parked); +#ifdef CONFIG_FSL_DPA_CHECKING + if (unlikely(fq_isset(fq, QMAN_FQ_FLAG_NO_MODIFY))) + return -EINVAL; +#endif + /* Issue a ALTERFQ_SCHED management command */ + p = get_affine_portal(); + PORTAL_IRQ_LOCK(p, irqflags); + FQLOCK(fq); + if (unlikely((fq_isset(fq, QMAN_FQ_STATE_CHANGING)) || + (fq->state != qman_fq_state_parked))) { + ret = -EBUSY; + goto out; + } + mcc = qm_mc_start(&p->p); + mcc->alterfq.fqid = fq->fqid; + qm_mc_commit(&p->p, QM_MCC_VERB_ALTER_SCHED); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & QM_MCR_VERB_MASK) == QM_MCR_VERB_ALTER_SCHED); + res = mcr->result; + if (res != QM_MCR_RESULT_OK) { + ret = -EIO; + goto out; + } + fq->state = qman_fq_state_sched; +out: + FQUNLOCK(fq); + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + return ret; +} +EXPORT_SYMBOL(qman_schedule_fq); + +int qman_retire_fq(struct qman_fq *fq, u32 *flags) +{ + struct qm_mc_command *mcc; + struct qm_mc_result *mcr; + struct qman_portal *p; + unsigned long irqflags __maybe_unused; + int rval; + u8 res; + + DPA_ASSERT((fq->state == qman_fq_state_parked) || + (fq->state == qman_fq_state_sched)); +#ifdef CONFIG_FSL_DPA_CHECKING + if (unlikely(fq_isset(fq, QMAN_FQ_FLAG_NO_MODIFY))) + return -EINVAL; +#endif + p = get_affine_portal(); + PORTAL_IRQ_LOCK(p, irqflags); + FQLOCK(fq); + if (unlikely((fq_isset(fq, QMAN_FQ_STATE_CHANGING)) || + (fq->state == qman_fq_state_retired) || + (fq->state == qman_fq_state_oos))) { + rval = -EBUSY; + goto out; + } + rval = table_push_fq(p, fq); + if (rval) + goto out; + mcc = qm_mc_start(&p->p); + mcc->alterfq.fqid = fq->fqid; + qm_mc_commit(&p->p, QM_MCC_VERB_ALTER_RETIRE); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & QM_MCR_VERB_MASK) == QM_MCR_VERB_ALTER_RETIRE); + res = mcr->result; + /* "Elegant" would be to treat OK/PENDING the same way; set CHANGING, + * and defer the flags until FQRNI or FQRN (respectively) show up. But + * "Friendly" is to process OK immediately, and not set CHANGING. We do + * friendly, otherwise the caller doesn't necessarily have a fully + * "retired" FQ on return even if the retirement was immediate. However + * this does mean some code duplication between here and + * fq_state_change(). */ + if (likely(res == QM_MCR_RESULT_OK)) { + rval = 0; + /* Process 'fq' right away, we'll ignore FQRNI */ + if (mcr->alterfq.fqs & QM_MCR_FQS_NOTEMPTY) + fq_set(fq, QMAN_FQ_STATE_NE); + if (mcr->alterfq.fqs & QM_MCR_FQS_ORLPRESENT) + fq_set(fq, QMAN_FQ_STATE_ORL); + else + table_del_fq(p, fq); + if (flags) + *flags = fq->flags; + fq->state = qman_fq_state_retired; + if (fq->cb.fqs) { + /* Another issue with supporting "immediate" retirement + * is that we're forced to drop FQRNIs, because by the + * time they're seen it may already be "too late" (the + * fq may have been OOS'd and free()'d already). But if + * the upper layer wants a callback whether it's + * immediate or not, we have to fake a "MR" entry to + * look like an FQRNI... */ + struct qm_mr_entry msg; + msg.verb = QM_MR_VERB_FQRNI; + msg.fq.fqs = mcr->alterfq.fqs; + msg.fq.fqid = fq->fqid; +#ifdef CONFIG_FSL_QMAN_FQ_LOOKUP + msg.fq.contextB = fq->key; +#else + msg.fq.contextB = (u32)(uintptr_t)fq; +#endif + fq->cb.fqs(p, fq, &msg); + } + } else if (res == QM_MCR_RESULT_PENDING) { + rval = 1; + fq_set(fq, QMAN_FQ_STATE_CHANGING); + } else { + rval = -EIO; + table_del_fq(p, fq); + } +out: + FQUNLOCK(fq); + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + return rval; +} +EXPORT_SYMBOL(qman_retire_fq); + +int qman_oos_fq(struct qman_fq *fq) +{ + struct qm_mc_command *mcc; + struct qm_mc_result *mcr; + struct qman_portal *p; + unsigned long irqflags __maybe_unused; + int ret = 0; + u8 res; + + DPA_ASSERT(fq->state == qman_fq_state_retired); +#ifdef CONFIG_FSL_DPA_CHECKING + if (unlikely(fq_isset(fq, QMAN_FQ_FLAG_NO_MODIFY))) + return -EINVAL; +#endif + p = get_affine_portal(); + PORTAL_IRQ_LOCK(p, irqflags); + FQLOCK(fq); + if (unlikely((fq_isset(fq, QMAN_FQ_STATE_BLOCKOOS)) || + (fq->state != qman_fq_state_retired))) { + ret = -EBUSY; + goto out; + } + mcc = qm_mc_start(&p->p); + mcc->alterfq.fqid = fq->fqid; + qm_mc_commit(&p->p, QM_MCC_VERB_ALTER_OOS); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & QM_MCR_VERB_MASK) == QM_MCR_VERB_ALTER_OOS); + res = mcr->result; + if (res != QM_MCR_RESULT_OK) { + ret = -EIO; + goto out; + } + fq->state = qman_fq_state_oos; +out: + FQUNLOCK(fq); + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + return ret; +} +EXPORT_SYMBOL(qman_oos_fq); + +int qman_query_fq(struct qman_fq *fq, struct qm_fqd *fqd) +{ + struct qm_mc_command *mcc; + struct qm_mc_result *mcr; + struct qman_portal *p = get_affine_portal(); + unsigned long irqflags __maybe_unused; + u8 res; + + PORTAL_IRQ_LOCK(p, irqflags); + mcc = qm_mc_start(&p->p); + mcc->queryfq.fqid = fq->fqid; + qm_mc_commit(&p->p, QM_MCC_VERB_QUERYFQ); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & QM_MCR_VERB_MASK) == QM_MCR_VERB_QUERYFQ); + res = mcr->result; + if (res == QM_MCR_RESULT_OK) + *fqd = mcr->queryfq.fqd; + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + if (res != QM_MCR_RESULT_OK) + return -EIO; + return 0; +} +EXPORT_SYMBOL(qman_query_fq); + +int qman_query_fq_np(struct qman_fq *fq, struct qm_mcr_queryfq_np *np) +{ + struct qm_mc_command *mcc; + struct qm_mc_result *mcr; + struct qman_portal *p = get_affine_portal(); + unsigned long irqflags __maybe_unused; + u8 res; + + PORTAL_IRQ_LOCK(p, irqflags); + mcc = qm_mc_start(&p->p); + mcc->queryfq.fqid = fq->fqid; + qm_mc_commit(&p->p, QM_MCC_VERB_QUERYFQ_NP); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & QM_MCR_VERB_MASK) == QM_MCR_VERB_QUERYFQ_NP); + res = mcr->result; + if (res == QM_MCR_RESULT_OK) + *np = mcr->queryfq_np; + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + if (res != QM_MCR_RESULT_OK) + return -EIO; + return 0; +} +EXPORT_SYMBOL(qman_query_fq_np); + +int qman_query_wq(u8 query_dedicated, struct qm_mcr_querywq *wq) +{ + struct qm_mc_command *mcc; + struct qm_mc_result *mcr; + struct qman_portal *p = get_affine_portal(); + unsigned long irqflags __maybe_unused; + u8 res, myverb; + + PORTAL_IRQ_LOCK(p, irqflags); + myverb = (query_dedicated) ? QM_MCR_VERB_QUERYWQ_DEDICATED : + QM_MCR_VERB_QUERYWQ; + mcc = qm_mc_start(&p->p); + mcc->querywq.channel.id = wq->channel.id; + qm_mc_commit(&p->p, myverb); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & QM_MCR_VERB_MASK) == myverb); + res = mcr->result; + if (res == QM_MCR_RESULT_OK) + *wq = mcr->querywq; + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + if (res != QM_MCR_RESULT_OK) { + pr_err("QUERYWQ failed: %s\n", mcr_result_str(res)); + return -EIO; + } + return 0; +} +EXPORT_SYMBOL(qman_query_wq); + +int qman_testwrite_cgr(struct qman_cgr *cgr, u64 i_bcnt, + struct qm_mcr_cgrtestwrite *result) +{ + struct qm_mc_command *mcc; + struct qm_mc_result *mcr; + struct qman_portal *p = get_affine_portal(); + unsigned long irqflags __maybe_unused; + u8 res; + + PORTAL_IRQ_LOCK(p, irqflags); + mcc = qm_mc_start(&p->p); + mcc->cgrtestwrite.cgid = cgr->cgrid; + mcc->cgrtestwrite.i_bcnt_hi = (u8)(i_bcnt >> 32); + mcc->cgrtestwrite.i_bcnt_lo = (u32)i_bcnt; + qm_mc_commit(&p->p, QM_MCC_VERB_CGRTESTWRITE); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & QM_MCR_VERB_MASK) == QM_MCC_VERB_CGRTESTWRITE); + res = mcr->result; + if (res == QM_MCR_RESULT_OK) + *result = mcr->cgrtestwrite; + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + if (res != QM_MCR_RESULT_OK) { + pr_err("CGR TEST WRITE failed: %s\n", mcr_result_str(res)); + return -EIO; + } + return 0; +} +EXPORT_SYMBOL(qman_testwrite_cgr); + +int qman_query_cgr(struct qman_cgr *cgr, struct qm_mcr_querycgr *cgrd) +{ + struct qm_mc_command *mcc; + struct qm_mc_result *mcr; + struct qman_portal *p = get_affine_portal(); + unsigned long irqflags __maybe_unused; + u8 res; + + PORTAL_IRQ_LOCK(p, irqflags); + mcc = qm_mc_start(&p->p); + mcc->querycgr.cgid = cgr->cgrid; + qm_mc_commit(&p->p, QM_MCC_VERB_QUERYCGR); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & QM_MCR_VERB_MASK) == QM_MCC_VERB_QUERYCGR); + res = mcr->result; + if (res == QM_MCR_RESULT_OK) + *cgrd = mcr->querycgr; + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + if (res != QM_MCR_RESULT_OK) { + pr_err("QUERY_CGR failed: %s\n", mcr_result_str(res)); + return -EIO; + } + return 0; +} +EXPORT_SYMBOL(qman_query_cgr); + +int qman_query_congestion(struct qm_mcr_querycongestion *congestion) +{ + struct qm_mc_result *mcr; + struct qman_portal *p = get_affine_portal(); + unsigned long irqflags __maybe_unused; + u8 res; + + PORTAL_IRQ_LOCK(p, irqflags); + qm_mc_start(&p->p); + qm_mc_commit(&p->p, QM_MCC_VERB_QUERYCONGESTION); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & QM_MCR_VERB_MASK) == + QM_MCC_VERB_QUERYCONGESTION); + res = mcr->result; + if (res == QM_MCR_RESULT_OK) + *congestion = mcr->querycongestion; + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + if (res != QM_MCR_RESULT_OK) { + pr_err("QUERY_CONGESTION failed: %s\n", mcr_result_str(res)); + return -EIO; + } + return 0; +} +EXPORT_SYMBOL(qman_query_congestion); + +/* internal function used as a wait_event() expression */ +static int set_vdqcr(struct qman_portal **p, struct qman_fq *fq, u32 vdqcr) +{ + unsigned long irqflags __maybe_unused; + int ret = -EBUSY; + *p = get_affine_portal(); + PORTAL_IRQ_LOCK(*p, irqflags); + if (!(*p)->vdqcr_owned) { + FQLOCK(fq); + if (fq_isset(fq, QMAN_FQ_STATE_VDQCR)) + goto escape; + fq_set(fq, QMAN_FQ_STATE_VDQCR); + FQUNLOCK(fq); + (*p)->vdqcr_owned = fq; + ret = 0; + } +escape: + PORTAL_IRQ_UNLOCK(*p, irqflags); + if (!ret) + qm_dqrr_vdqcr_set(&(*p)->p, vdqcr); + put_affine_portal(); + return ret; +} + +#ifdef CONFIG_FSL_DPA_CAN_WAIT +static int wait_vdqcr_start(struct qman_portal **p, struct qman_fq *fq, + u32 vdqcr, u32 flags) +{ + int ret = 0; + if (flags & QMAN_VOLATILE_FLAG_WAIT_INT) + ret = wait_event_interruptible(affine_queue, + !(ret = set_vdqcr(p, fq, vdqcr))); + else + wait_event(affine_queue, !(ret = set_vdqcr(p, fq, vdqcr))); + return ret; +} +#endif + +int qman_volatile_dequeue(struct qman_fq *fq, u32 flags __maybe_unused, + u32 vdqcr) +{ + struct qman_portal *p; + int ret; + + DPA_ASSERT(!fq || (fq->state == qman_fq_state_parked) || + (fq->state == qman_fq_state_retired)); + DPA_ASSERT(!fq || !(vdqcr & QM_VDQCR_FQID_MASK)); + DPA_ASSERT(!fq || !fq_isset(fq, QMAN_FQ_STATE_VDQCR)); + if (fq) + vdqcr = (vdqcr & ~QM_VDQCR_FQID_MASK) | fq->fqid; +#ifdef CONFIG_FSL_DPA_CAN_WAIT + if (flags & QMAN_VOLATILE_FLAG_WAIT) + ret = wait_vdqcr_start(&p, fq, vdqcr, flags); + else +#endif + ret = set_vdqcr(&p, fq, vdqcr); + if (ret) + return ret; + /* VDQCR is set */ +#ifdef CONFIG_FSL_DPA_CAN_WAIT + if (flags & QMAN_VOLATILE_FLAG_FINISH) { + if (flags & QMAN_VOLATILE_FLAG_WAIT_INT) + /* NB: don't propagate any error - the caller wouldn't + * know whether the VDQCR was issued or not. A signal + * could arrive after returning anyway, so the caller + * can check signal_pending() if that's an issue. */ + wait_event_interruptible(affine_queue, + !fq_isset(fq, QMAN_FQ_STATE_VDQCR)); + else + wait_event(affine_queue, + !fq_isset(fq, QMAN_FQ_STATE_VDQCR)); + } +#endif + return 0; +} +EXPORT_SYMBOL(qman_volatile_dequeue); + +static noinline void update_eqcr_ci(struct qman_portal *p, u8 avail) +{ + if (avail) + qm_eqcr_cce_prefetch(&p->p); + else + qm_eqcr_cce_update(&p->p); +} + +int qman_eqcr_is_empty(void) +{ + unsigned long irqflags __maybe_unused; + struct qman_portal *p = get_affine_portal(); + u8 avail; + + PORTAL_IRQ_LOCK(p, irqflags); + update_eqcr_ci(p, 0); + avail = qm_eqcr_get_fill(&p->p); + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + return (avail == 0); +} +EXPORT_SYMBOL(qman_eqcr_is_empty); + +static inline struct qm_eqcr_entry *try_eq_start(struct qman_portal **p, + unsigned long *irqflags __maybe_unused, + struct qman_fq *fq, + const struct qm_fd *fd, + u32 flags) +{ + struct qm_eqcr_entry *eq; + u8 avail; + + *p = get_affine_portal(); + PORTAL_IRQ_LOCK(*p, (*irqflags)); +#ifdef CONFIG_FSL_DPA_CAN_WAIT_SYNC + if (unlikely((flags & QMAN_ENQUEUE_FLAG_WAIT) && + (flags & QMAN_ENQUEUE_FLAG_WAIT_SYNC))) { + if ((*p)->eqci_owned) { + PORTAL_IRQ_UNLOCK(*p, (*irqflags)); + put_affine_portal(); + return NULL; + } + (*p)->eqci_owned = fq; + } +#endif + avail = qm_eqcr_get_avail(&(*p)->p); + if (avail < 2) + update_eqcr_ci(*p, avail); + eq = qm_eqcr_start(&(*p)->p); + if (unlikely(!eq)) { +#ifdef CONFIG_FSL_DPA_CAN_WAIT_SYNC + if (unlikely((flags & QMAN_ENQUEUE_FLAG_WAIT) && + (flags & QMAN_ENQUEUE_FLAG_WAIT_SYNC))) + (*p)->eqci_owned = NULL; +#endif + PORTAL_IRQ_UNLOCK(*p, (*irqflags)); + put_affine_portal(); + return NULL; + } + if (flags & QMAN_ENQUEUE_FLAG_DCA) + eq->dca = QM_EQCR_DCA_ENABLE | + ((flags & QMAN_ENQUEUE_FLAG_DCA_PARK) ? + QM_EQCR_DCA_PARK : 0) | + ((flags >> 8) & QM_EQCR_DCA_IDXMASK); + eq->fqid = fq->fqid; +#ifdef CONFIG_FSL_QMAN_FQ_LOOKUP + eq->tag = fq->key; +#else + eq->tag = (u32)(uintptr_t)fq; +#endif + /* From p4080 rev1 -> rev2, the FD struct's address went from 48-bit to + * 40-bit but rev1 chips will still interpret it as 48-bit, meaning we + * have to scrub the upper 8-bits, just in case the user left noise in + * there. Doing this selectively via a run-time check of the h/w + * revision (as we do for most errata, for example) is too slow in this + * critical path code. The most inexpensive way to handle this is just + * to reinterpret the FD as 4 32-bit words and to mask the first word + * appropriately, irrespecitive of the h/w revision. The struct fields + * corresponding to this word are; + * u8 dd:2; + * u8 liodn_offset:6; + * u8 bpid; + * u8 eliodn_offset:4; + * u8 __reserved:4; + * u8 addr_hi; + * So we mask this word with 0xc0ff00ff, which implicitly scrubs out + * liodn_offset, eliodn_offset, and __reserved - the latter two fields + * are interpreted as the 8 msbits of the 48-bit address in the case of + * rev1. + */ + { + const u32 *src = (const u32 *)fd; + u32 *dest = (u32 *)&eq->fd; + dest[0] = src[0] & 0xc0ff00ff; + dest[1] = src[1]; + dest[2] = src[2]; + dest[3] = src[3]; + } + return eq; +} + +#ifdef CONFIG_FSL_DPA_CAN_WAIT +static noinline struct qm_eqcr_entry *__wait_eq_start(struct qman_portal **p, + unsigned long *irqflags __maybe_unused, + struct qman_fq *fq, + const struct qm_fd *fd, + u32 flags) +{ + struct qm_eqcr_entry *eq = try_eq_start(p, irqflags, fq, fd, flags); + if (!eq) + qm_eqcr_set_ithresh(&(*p)->p, EQCR_ITHRESH); + return eq; +} +static noinline struct qm_eqcr_entry *wait_eq_start(struct qman_portal **p, + unsigned long *irqflags __maybe_unused, + struct qman_fq *fq, + const struct qm_fd *fd, + u32 flags) +{ + struct qm_eqcr_entry *eq; + if (flags & QMAN_ENQUEUE_FLAG_WAIT_INT) + wait_event_interruptible(affine_queue, + (eq = __wait_eq_start(p, irqflags, fq, fd, flags))); + else + wait_event(affine_queue, + (eq = __wait_eq_start(p, irqflags, fq, fd, flags))); + return eq; +} +#endif + +int qman_enqueue(struct qman_fq *fq, const struct qm_fd *fd, u32 flags) +{ + struct qman_portal *p; + struct qm_eqcr_entry *eq; + unsigned long irqflags __maybe_unused; + +#ifdef CONFIG_FSL_DPA_CAN_WAIT + if (flags & QMAN_ENQUEUE_FLAG_WAIT) + eq = wait_eq_start(&p, &irqflags, fq, fd, flags); + else +#endif + eq = try_eq_start(&p, &irqflags, fq, fd, flags); + if (!eq) + return -EBUSY; + /* Note: QM_EQCR_VERB_INTERRUPT == QMAN_ENQUEUE_FLAG_WAIT_SYNC */ + qm_eqcr_pvb_commit(&p->p, QM_EQCR_VERB_CMD_ENQUEUE | + (flags & (QM_EQCR_VERB_COLOUR_MASK | QM_EQCR_VERB_INTERRUPT))); + /* Factor the below out, it's used from qman_enqueue_orp() too */ + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); +#ifdef CONFIG_FSL_DPA_CAN_WAIT_SYNC + if (unlikely((flags & QMAN_ENQUEUE_FLAG_WAIT) && + (flags & QMAN_ENQUEUE_FLAG_WAIT_SYNC))) { + if (flags & QMAN_ENQUEUE_FLAG_WAIT_INT) + wait_event_interruptible(affine_queue, + (p->eqci_owned != fq)); + else + wait_event(affine_queue, (p->eqci_owned != fq)); + } +#endif + return 0; +} +EXPORT_SYMBOL(qman_enqueue); + +int qman_enqueue_orp(struct qman_fq *fq, const struct qm_fd *fd, u32 flags, + struct qman_fq *orp, u16 orp_seqnum) +{ + struct qman_portal *p; + struct qm_eqcr_entry *eq; + unsigned long irqflags __maybe_unused; + +#ifdef CONFIG_FSL_DPA_CAN_WAIT + if (flags & QMAN_ENQUEUE_FLAG_WAIT) + eq = wait_eq_start(&p, &irqflags, fq, fd, flags); + else +#endif + eq = try_eq_start(&p, &irqflags, fq, fd, flags); + if (!eq) + return -EBUSY; + /* Process ORP-specifics here */ + if (flags & QMAN_ENQUEUE_FLAG_NLIS) + orp_seqnum |= QM_EQCR_SEQNUM_NLIS; + else { + orp_seqnum &= ~QM_EQCR_SEQNUM_NLIS; + if (flags & QMAN_ENQUEUE_FLAG_NESN) + orp_seqnum |= QM_EQCR_SEQNUM_NESN; + else + /* No need to check 4 QMAN_ENQUEUE_FLAG_HOLE */ + orp_seqnum &= ~QM_EQCR_SEQNUM_NESN; + } + eq->seqnum = orp_seqnum; + eq->orp = orp->fqid; + /* Note: QM_EQCR_VERB_INTERRUPT == QMAN_ENQUEUE_FLAG_WAIT_SYNC */ + qm_eqcr_pvb_commit(&p->p, QM_EQCR_VERB_ORP | + ((flags & (QMAN_ENQUEUE_FLAG_HOLE | QMAN_ENQUEUE_FLAG_NESN)) ? + 0 : QM_EQCR_VERB_CMD_ENQUEUE) | + (flags & (QM_EQCR_VERB_COLOUR_MASK | QM_EQCR_VERB_INTERRUPT))); + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); +#ifdef CONFIG_FSL_DPA_CAN_WAIT_SYNC + if (unlikely((flags & QMAN_ENQUEUE_FLAG_WAIT) && + (flags & QMAN_ENQUEUE_FLAG_WAIT_SYNC))) { + if (flags & QMAN_ENQUEUE_FLAG_WAIT_INT) + wait_event_interruptible(affine_queue, + (p->eqci_owned != fq)); + else + wait_event(affine_queue, (p->eqci_owned != fq)); + } +#endif + return 0; +} +EXPORT_SYMBOL(qman_enqueue_orp); + +int qman_modify_cgr(struct qman_cgr *cgr, u32 flags, + struct qm_mcc_initcgr *opts) +{ + struct qm_mc_command *mcc; + struct qm_mc_result *mcr; + struct qman_portal *p = get_affine_portal(); + unsigned long irqflags __maybe_unused; + u8 res; + u8 verb = QM_MCC_VERB_MODIFYCGR; + + /* frame mode not supported on rev1.0 */ + if (unlikely(qman_ip_rev == QMAN_REV10)) { + if (opts && (opts->we_mask & QM_CGR_WE_MODE) && + opts->cgr.mode == QMAN_CGR_MODE_FRAME) { + put_affine_portal(); + return -EIO; + } + } + PORTAL_IRQ_LOCK(p, irqflags); + mcc = qm_mc_start(&p->p); + if (opts) + mcc->initcgr = *opts; + mcc->initcgr.cgid = cgr->cgrid; + if (flags & QMAN_CGR_FLAG_USE_INIT) + verb = QM_MCC_VERB_INITCGR; + qm_mc_commit(&p->p, verb); + while (!(mcr = qm_mc_result(&p->p))) + cpu_relax(); + DPA_ASSERT((mcr->verb & QM_MCR_VERB_MASK) == verb); + res = mcr->result; + PORTAL_IRQ_UNLOCK(p, irqflags); + put_affine_portal(); + return (res == QM_MCR_RESULT_OK) ? 0 : -EIO; +} +EXPORT_SYMBOL(qman_modify_cgr); + +#define TARG_MASK(n) (0x80000000 >> (n->config->public_cfg.channel - \ + qm_channel_swportal0)) + +int qman_create_cgr(struct qman_cgr *cgr, u32 flags, + struct qm_mcc_initcgr *opts) +{ + unsigned long irqflags __maybe_unused; + struct qm_mcr_querycgr cgr_state; + struct qm_mcc_initcgr local_opts; + int ret; + struct qman_portal *p; + + /* We have to check that the provided CGRID is within the limits of the + * data-structures, for obvious reasons. However we'll let h/w take + * care of determining whether it's within the limits of what exists on + * the SoC. */ + if (cgr->cgrid >= __CGR_NUM) + return -EINVAL; + + p = get_affine_portal(); + + memset(&local_opts, 0, sizeof(struct qm_mcc_initcgr)); + cgr->chan = p->config->public_cfg.channel; + spin_lock_irqsave(&p->cgr_lock, irqflags); + + /* if no opts specified and I'm not the first for this portal, just add + * to the list */ + if ((opts == NULL) && !list_empty(&p->cgr_cbs[cgr->cgrid])) + goto add_list; + + ret = qman_query_cgr(cgr, &cgr_state); + if (ret) + goto release_lock; + if (opts) + local_opts = *opts; + /* Overwrite TARG */ + local_opts.cgr.cscn_targ = cgr_state.cgr.cscn_targ | TARG_MASK(p); + local_opts.we_mask |= QM_CGR_WE_CSCN_TARG; + + /* send init if flags indicate so */ + if (opts && (flags & QMAN_CGR_FLAG_USE_INIT)) + ret = qman_modify_cgr(cgr, QMAN_CGR_FLAG_USE_INIT, &local_opts); + else + ret = qman_modify_cgr(cgr, 0, &local_opts); + if (ret) + goto release_lock; +add_list: + list_add(&cgr->node, &p->cgr_cbs[cgr->cgrid]); + + /* Determine if newly added object requires its callback to be called */ + ret = qman_query_cgr(cgr, &cgr_state); + if (ret) { + /* we can't go back, so proceed and return success, but screen + * and wail to the log file */ + pr_crit("CGR HW state partially modified\n"); + ret = 0; + goto release_lock; + } + if (cgr->cb && cgr_state.cgr.cscn_en && qman_cgrs_get(&p->cgrs[1], + cgr->cgrid)) + cgr->cb(p, cgr, 1); +release_lock: + spin_unlock_irqrestore(&p->cgr_lock, irqflags); + put_affine_portal(); + return ret; +} +EXPORT_SYMBOL(qman_create_cgr); + +int qman_delete_cgr(struct qman_cgr *cgr) +{ + unsigned long irqflags __maybe_unused; + struct qm_mcr_querycgr cgr_state; + struct qm_mcc_initcgr local_opts; + int ret = 0; + struct qman_portal *p = get_affine_portal(); + + if (cgr->chan != p->config->public_cfg.channel) { + pr_crit("Attempting to delete cgr from different portal " + "than it was create: create 0x%x, delete 0x%x\n", + cgr->chan, p->config->public_cfg.channel); + ret = -EINVAL; + goto put_portal; + } + memset(&local_opts, 0, sizeof(struct qm_mcc_initcgr)); + spin_lock_irqsave(&p->cgr_lock, irqflags); + list_del(&cgr->node); + /* If last in list, CSCN_TARG must be set accordingly */ + if (!list_empty(&p->cgr_cbs[cgr->cgrid])) + goto release_lock; + ret = qman_query_cgr(cgr, &cgr_state); + if (ret) { + /* add back to the list */ + list_add(&cgr->node, &p->cgr_cbs[cgr->cgrid]); + goto release_lock; + } + /* Overwrite TARG */ + local_opts.we_mask = QM_CGR_WE_CSCN_TARG; + local_opts.cgr.cscn_targ = cgr_state.cgr.cscn_targ & ~(TARG_MASK(p)); + ret = qman_modify_cgr(cgr, 0, &local_opts); + if (ret) + /* add back to the list */ + list_add(&cgr->node, &p->cgr_cbs[cgr->cgrid]); +release_lock: + spin_unlock_irqrestore(&p->cgr_lock, irqflags); +put_portal: + put_affine_portal(); + return ret; +} +EXPORT_SYMBOL(qman_delete_cgr); + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/qman_low.h +++ linux-3.13.0/drivers/staging/fsl_qbman/qman_low.h @@ -0,0 +1,1186 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "qman_private.h" + +/***************************/ +/* Portal register assists */ +/***************************/ + +/* Cache-inhibited register offsets */ +#define REG_EQCR_PI_CINH 0x0000 +#define REG_EQCR_CI_CINH 0x0004 +#define REG_EQCR_ITR 0x0008 +#define REG_DQRR_PI_CINH 0x0040 +#define REG_DQRR_CI_CINH 0x0044 +#define REG_DQRR_ITR 0x0048 +#define REG_DQRR_DCAP 0x0050 +#define REG_DQRR_SDQCR 0x0054 +#define REG_DQRR_VDQCR 0x0058 +#define REG_DQRR_PDQCR 0x005c +#define REG_MR_PI_CINH 0x0080 +#define REG_MR_CI_CINH 0x0084 +#define REG_MR_ITR 0x0088 +#define REG_CFG 0x0100 +#define REG_ISR 0x0e00 +#define REG_ITPR 0x0e14 + +/* Cache-enabled register offsets */ +#define CL_EQCR 0x0000 +#define CL_DQRR 0x1000 +#define CL_MR 0x2000 +#define CL_EQCR_PI_CENA 0x3000 +#define CL_EQCR_CI_CENA 0x3100 +#define CL_DQRR_PI_CENA 0x3200 +#define CL_DQRR_CI_CENA 0x3300 +#define CL_MR_PI_CENA 0x3400 +#define CL_MR_CI_CENA 0x3500 +#define CL_CR 0x3800 +#define CL_RR0 0x3900 +#define CL_RR1 0x3940 + +/* BTW, the drivers (and h/w programming model) already obtain the required + * synchronisation for portal accesses via lwsync(), hwsync(), and + * data-dependencies. Use of barrier()s or other order-preserving primitives + * simply degrade performance. Hence the use of the __raw_*() interfaces, which + * simply ensure that the compiler treats the portal registers as volatile (ie. + * non-coherent). */ + +/* Cache-inhibited register access. */ +#define __qm_in(qm, o) __raw_readl((qm)->addr_ci + (o)) +#define __qm_out(qm, o, val) __raw_writel((val), (qm)->addr_ci + (o)) +#define qm_in(reg) __qm_in(&portal->addr, REG_##reg) +#define qm_out(reg, val) __qm_out(&portal->addr, REG_##reg, val) + +/* Cache-enabled (index) register access */ +#define __qm_cl_touch_ro(qm, o) dcbt_ro((qm)->addr_ce + (o)) +#define __qm_cl_touch_rw(qm, o) dcbt_rw((qm)->addr_ce + (o)) +#define __qm_cl_in(qm, o) __raw_readl((qm)->addr_ce + (o)) +#define __qm_cl_out(qm, o, val) \ + do { \ + u32 *__tmpclout = (qm)->addr_ce + (o); \ + __raw_writel((val), __tmpclout); \ + dcbf(__tmpclout); \ + } while (0) +#define __qm_cl_invalidate(qm, o) dcbi((qm)->addr_ce + (o)) +#define qm_cl_touch_ro(reg) __qm_cl_touch_ro(&portal->addr, CL_##reg##_CENA) +#define qm_cl_touch_rw(reg) __qm_cl_touch_rw(&portal->addr, CL_##reg##_CENA) +#define qm_cl_in(reg) __qm_cl_in(&portal->addr, CL_##reg##_CENA) +#define qm_cl_out(reg, val) __qm_cl_out(&portal->addr, CL_##reg##_CENA, val) +#define qm_cl_invalidate(reg) __qm_cl_invalidate(&portal->addr, CL_##reg##_CENA) + +/* Cache-enabled ring access */ +#define qm_cl(base, idx) ((void *)base + ((idx) << 6)) + +/* Cyclic helper for rings. FIXME: once we are able to do fine-grain perf + * analysis, look at using the "extra" bit in the ring index registers to avoid + * cyclic issues. */ +static inline u8 cyc_diff(u8 ringsize, u8 first, u8 last) +{ + /* 'first' is included, 'last' is excluded */ + if (first <= last) + return last - first; + return ringsize + last - first; +} + +/* Portal modes. + * Enum types; + * pmode == production mode + * cmode == consumption mode, + * dmode == h/w dequeue mode. + * Enum values use 3 letter codes. First letter matches the portal mode, + * remaining two letters indicate; + * ci == cache-inhibited portal register + * ce == cache-enabled portal register + * vb == in-band valid-bit (cache-enabled) + * dc == DCA (Discrete Consumption Acknowledgement), DQRR-only + * As for "enum qm_dqrr_dmode", it should be self-explanatory. + */ +enum qm_eqcr_pmode { /* matches QCSP_CFG::EPM */ + qm_eqcr_pci = 0, /* PI index, cache-inhibited */ + qm_eqcr_pce = 1, /* PI index, cache-enabled */ + qm_eqcr_pvb = 2 /* valid-bit */ +}; +enum qm_eqcr_cmode { /* s/w-only */ + qm_eqcr_cci, /* CI index, cache-inhibited */ + qm_eqcr_cce /* CI index, cache-enabled */ +}; +enum qm_dqrr_dmode { /* matches QCSP_CFG::DP */ + qm_dqrr_dpush = 0, /* SDQCR + VDQCR */ + qm_dqrr_dpull = 1 /* PDQCR */ +}; +enum qm_dqrr_pmode { /* s/w-only */ + qm_dqrr_pci, /* reads DQRR_PI_CINH */ + qm_dqrr_pce, /* reads DQRR_PI_CENA */ + qm_dqrr_pvb /* reads valid-bit */ +}; +enum qm_dqrr_cmode { /* matches QCSP_CFG::DCM */ + qm_dqrr_cci = 0, /* CI index, cache-inhibited */ + qm_dqrr_cce = 1, /* CI index, cache-enabled */ + qm_dqrr_cdc = 2 /* Discrete Consumption Acknowledgement */ +}; +enum qm_mr_pmode { /* s/w-only */ + qm_mr_pci, /* reads MR_PI_CINH */ + qm_mr_pce, /* reads MR_PI_CENA */ + qm_mr_pvb /* reads valid-bit */ +}; +enum qm_mr_cmode { /* matches QCSP_CFG::MM */ + qm_mr_cci = 0, /* CI index, cache-inhibited */ + qm_mr_cce = 1 /* CI index, cache-enabled */ +}; + + +/* ------------------------- */ +/* --- Portal structures --- */ + +#define QM_EQCR_SIZE 8 +#define QM_DQRR_SIZE 16 +#define QM_MR_SIZE 8 + +struct qm_eqcr { + struct qm_eqcr_entry *ring, *cursor; + u8 ci, available, ithresh, vbit; +#ifdef CONFIG_FSL_DPA_CHECKING + u32 busy; + enum qm_eqcr_pmode pmode; + enum qm_eqcr_cmode cmode; +#endif +}; + +struct qm_dqrr { + const struct qm_dqrr_entry *ring, *cursor; + u8 pi, ci, fill, ithresh, vbit; +#ifdef CONFIG_FSL_DPA_CHECKING +#define QM_DQRR_FLAG_RE 0x01 /* Stash ring entries */ +#define QM_DQRR_FLAG_SE 0x02 /* Stash data */ + u8 flags; + enum qm_dqrr_dmode dmode; + enum qm_dqrr_pmode pmode; + enum qm_dqrr_cmode cmode; +#endif +}; + +struct qm_mr { + const struct qm_mr_entry *ring, *cursor; + u8 pi, ci, fill, ithresh, vbit; +#ifdef CONFIG_FSL_DPA_CHECKING + enum qm_mr_pmode pmode; + enum qm_mr_cmode cmode; +#endif +}; + +struct qm_mc { + struct qm_mc_command *cr; + struct qm_mc_result *rr; + u8 rridx, vbit; +#ifdef CONFIG_FSL_DPA_CHECKING + enum { + /* Can be _mc_start()ed */ + mc_idle, + /* Can be _mc_commit()ed or _mc_abort()ed */ + mc_user, + /* Can only be _mc_retry()ed */ + mc_hw + } state; +#endif +}; + +#ifdef CONFIG_FSL_QMAN_BUG_AND_FEATURE_REV1 +/* For workarounds that require storage. The struct alignment is required for + * cases where operations on "shadow" structs need the same alignment as is + * present on the corresponding h/w data structs (specifically, there is a + * zero-bit present above the range required to address the ring, so that + * iteration can be achieved by incrementing a ring pointer and clearing the + * carry-bit). The "portal" struct needs the same alignment because this type + * goes at its head, so it has a more radical alignment requirement if this + * structure is used. (NB: "64" instead of "L1_CACHE_BYTES", because this + * alignment relates to the h/w interface, not the CPU cache granularity!)*/ +#define QM_PORTAL_ALIGNMENT __attribute__((aligned(32 * 64))) +struct qm_portal_bugs { + /* shadow MR ring, for QMAN9 workaround, 8-CL-aligned */ + struct qm_mr_entry mr[QM_MR_SIZE]; + /* shadow MC result, for QMAN6 and QMAN7 workarounds, CL-aligned */ + struct qm_mc_result result; + /* boolean switch for QMAN7 workaround */ + int initfq_and_sched; +} QM_PORTAL_ALIGNMENT; +#else +#define QM_PORTAL_ALIGNMENT ____cacheline_aligned +#endif + +struct qm_addr { + void __iomem *addr_ce; /* cache-enabled */ + void __iomem *addr_ci; /* cache-inhibited */ +}; + +struct qm_portal { +#ifdef CONFIG_FSL_QMAN_BUG_AND_FEATURE_REV1 + struct qm_portal_bugs bugs; +#endif + /* In the non-CONFIG_FSL_DPA_CHECKING case, the following stuff up to + * and including 'mc' fits within a cacheline (yay!). The 'config' part + * is setup-only, so isn't a cause for a concern. In other words, don't + * rearrange this structure on a whim, there be dragons ... */ + struct qm_addr addr; + struct qm_eqcr eqcr; + struct qm_dqrr dqrr; + struct qm_mr mr; + struct qm_mc mc; +} QM_PORTAL_ALIGNMENT; + + +/* ---------------- */ +/* --- EQCR API --- */ + +/* Bit-wise logic to wrap a ring pointer by clearing the "carry bit" */ +#define EQCR_CARRYCLEAR(p) \ + (void *)((unsigned long)(p) & (~(unsigned long)(QM_EQCR_SIZE << 6))) + +/* Bit-wise logic to convert a ring pointer to a ring index */ +static inline u8 EQCR_PTR2IDX(struct qm_eqcr_entry *e) +{ + return ((uintptr_t)e >> 6) & (QM_EQCR_SIZE - 1); +} + +/* Increment the 'cursor' ring pointer, taking 'vbit' into account */ +static inline void EQCR_INC(struct qm_eqcr *eqcr) +{ + /* NB: this is odd-looking, but experiments show that it generates fast + * code with essentially no branching overheads. We increment to the + * next EQCR pointer and handle overflow and 'vbit'. */ + struct qm_eqcr_entry *partial = eqcr->cursor + 1; + eqcr->cursor = EQCR_CARRYCLEAR(partial); + if (partial != eqcr->cursor) + eqcr->vbit ^= QM_EQCR_VERB_VBIT; +} + +static inline int qm_eqcr_init(struct qm_portal *portal, + enum qm_eqcr_pmode pmode, + __maybe_unused enum qm_eqcr_cmode cmode) +{ + /* This use of 'register', as well as all other occurances, is because + * it has been observed to generate much faster code with gcc than is + * otherwise the case. */ + register struct qm_eqcr *eqcr = &portal->eqcr; + u32 cfg; + u8 pi; + + eqcr->ring = portal->addr.addr_ce + CL_EQCR; + eqcr->ci = qm_in(EQCR_CI_CINH) & (QM_EQCR_SIZE - 1); + qm_cl_invalidate(EQCR_CI); + pi = qm_in(EQCR_PI_CINH) & (QM_EQCR_SIZE - 1); + eqcr->cursor = eqcr->ring + pi; + eqcr->vbit = (qm_in(EQCR_PI_CINH) & QM_EQCR_SIZE) ? + QM_EQCR_VERB_VBIT : 0; + eqcr->available = QM_EQCR_SIZE - 1 - + cyc_diff(QM_EQCR_SIZE, eqcr->ci, pi); + eqcr->ithresh = qm_in(EQCR_ITR); +#ifdef CONFIG_FSL_DPA_CHECKING + eqcr->busy = 0; + eqcr->pmode = pmode; + eqcr->cmode = cmode; +#endif + cfg = (qm_in(CFG) & 0x00ffffff) | + ((pmode & 0x3) << 24); /* QCSP_CFG::EPM */ + qm_out(CFG, cfg); + return 0; +} + +static inline void qm_eqcr_finish(struct qm_portal *portal) +{ + register struct qm_eqcr *eqcr = &portal->eqcr; + u8 pi = qm_in(EQCR_PI_CINH) & (QM_EQCR_SIZE - 1); + u8 ci = qm_in(EQCR_CI_CINH) & (QM_EQCR_SIZE - 1); + + DPA_ASSERT(!eqcr->busy); + if (pi != EQCR_PTR2IDX(eqcr->cursor)) + pr_crit("losing uncommited EQCR entries\n"); + if (ci != eqcr->ci) + pr_crit("missing existing EQCR completions\n"); + if (eqcr->ci != EQCR_PTR2IDX(eqcr->cursor)) + pr_crit("EQCR destroyed unquiesced\n"); +} + +static inline struct qm_eqcr_entry *qm_eqcr_start(struct qm_portal *portal) +{ + register struct qm_eqcr *eqcr = &portal->eqcr; + DPA_ASSERT(!eqcr->busy); + if (!eqcr->available) + return NULL; +#ifdef CONFIG_FSL_DPA_CHECKING + eqcr->busy = 1; +#endif + dcbz_64(eqcr->cursor); + return eqcr->cursor; +} + +static inline void qm_eqcr_abort(struct qm_portal *portal) +{ + __maybe_unused register struct qm_eqcr *eqcr = &portal->eqcr; + DPA_ASSERT(eqcr->busy); +#ifdef CONFIG_FSL_DPA_CHECKING + eqcr->busy = 0; +#endif +} + +static inline struct qm_eqcr_entry *qm_eqcr_pend_and_next( + struct qm_portal *portal, u8 myverb) +{ + register struct qm_eqcr *eqcr = &portal->eqcr; + DPA_ASSERT(eqcr->busy); + DPA_ASSERT(eqcr->pmode != qm_eqcr_pvb); + if (eqcr->available == 1) + return NULL; + eqcr->cursor->__dont_write_directly__verb = myverb | eqcr->vbit; + dcbf(eqcr->cursor); + EQCR_INC(eqcr); + eqcr->available--; + dcbz_64(eqcr->cursor); + return eqcr->cursor; +} + +#define EQCR_COMMIT_CHECKS(eqcr) \ +do { \ + DPA_ASSERT(eqcr->busy); \ + DPA_ASSERT(eqcr->cursor->orp == (eqcr->cursor->orp & 0x00ffffff)); \ + DPA_ASSERT(eqcr->cursor->fqid == (eqcr->cursor->fqid & 0x00ffffff)); \ +} while(0) + +static inline void qm_eqcr_pci_commit(struct qm_portal *portal, u8 myverb) +{ + register struct qm_eqcr *eqcr = &portal->eqcr; + EQCR_COMMIT_CHECKS(eqcr); + DPA_ASSERT(eqcr->pmode == qm_eqcr_pci); + eqcr->cursor->__dont_write_directly__verb = myverb | eqcr->vbit; + EQCR_INC(eqcr); + eqcr->available--; + dcbf(eqcr->cursor); + hwsync(); + qm_out(EQCR_PI_CINH, EQCR_PTR2IDX(eqcr->cursor)); +#ifdef CONFIG_FSL_DPA_CHECKING + eqcr->busy = 0; +#endif +} + +static inline void qm_eqcr_pce_prefetch(struct qm_portal *portal) +{ + __maybe_unused register struct qm_eqcr *eqcr = &portal->eqcr; + DPA_ASSERT(eqcr->pmode == qm_eqcr_pce); + qm_cl_invalidate(EQCR_PI); + qm_cl_touch_rw(EQCR_PI); +} + +static inline void qm_eqcr_pce_commit(struct qm_portal *portal, u8 myverb) +{ + register struct qm_eqcr *eqcr = &portal->eqcr; + EQCR_COMMIT_CHECKS(eqcr); + DPA_ASSERT(eqcr->pmode == qm_eqcr_pce); + eqcr->cursor->__dont_write_directly__verb = myverb | eqcr->vbit; + EQCR_INC(eqcr); + eqcr->available--; + dcbf(eqcr->cursor); + lwsync(); + qm_cl_out(EQCR_PI, EQCR_PTR2IDX(eqcr->cursor)); +#ifdef CONFIG_FSL_DPA_CHECKING + eqcr->busy = 0; +#endif +} + +static inline void qm_eqcr_pvb_commit(struct qm_portal *portal, u8 myverb) +{ + register struct qm_eqcr *eqcr = &portal->eqcr; + struct qm_eqcr_entry *eqcursor; + EQCR_COMMIT_CHECKS(eqcr); + DPA_ASSERT(eqcr->pmode == qm_eqcr_pvb); + lwsync(); + eqcursor = eqcr->cursor; + eqcursor->__dont_write_directly__verb = myverb | eqcr->vbit; + dcbf(eqcursor); + EQCR_INC(eqcr); + eqcr->available--; +#ifdef CONFIG_FSL_DPA_CHECKING + eqcr->busy = 0; +#endif +} + +static inline u8 qm_eqcr_cci_update(struct qm_portal *portal) +{ + register struct qm_eqcr *eqcr = &portal->eqcr; + u8 diff, old_ci = eqcr->ci; + DPA_ASSERT(eqcr->cmode == qm_eqcr_cci); + eqcr->ci = qm_in(EQCR_CI_CINH) & (QM_EQCR_SIZE - 1); + diff = cyc_diff(QM_EQCR_SIZE, old_ci, eqcr->ci); + eqcr->available += diff; + return diff; +} + +static inline void qm_eqcr_cce_prefetch(struct qm_portal *portal) +{ + __maybe_unused register struct qm_eqcr *eqcr = &portal->eqcr; + DPA_ASSERT(eqcr->cmode == qm_eqcr_cce); + qm_cl_touch_ro(EQCR_CI); +} + +static inline u8 qm_eqcr_cce_update(struct qm_portal *portal) +{ + register struct qm_eqcr *eqcr = &portal->eqcr; + u8 diff, old_ci = eqcr->ci; + DPA_ASSERT(eqcr->cmode == qm_eqcr_cce); + eqcr->ci = qm_cl_in(EQCR_CI) & (QM_EQCR_SIZE - 1); + qm_cl_invalidate(EQCR_CI); + diff = cyc_diff(QM_EQCR_SIZE, old_ci, eqcr->ci); + eqcr->available += diff; + return diff; +} + +static inline u8 qm_eqcr_get_ithresh(struct qm_portal *portal) +{ + register struct qm_eqcr *eqcr = &portal->eqcr; + return eqcr->ithresh; +} + +static inline void qm_eqcr_set_ithresh(struct qm_portal *portal, u8 ithresh) +{ + register struct qm_eqcr *eqcr = &portal->eqcr; + eqcr->ithresh = ithresh; + qm_out(EQCR_ITR, ithresh); +} + +static inline u8 qm_eqcr_get_avail(struct qm_portal *portal) +{ + register struct qm_eqcr *eqcr = &portal->eqcr; + return eqcr->available; +} + +static inline u8 qm_eqcr_get_fill(struct qm_portal *portal) +{ + register struct qm_eqcr *eqcr = &portal->eqcr; + return QM_EQCR_SIZE - 1 - eqcr->available; +} + + +/* ---------------- */ +/* --- DQRR API --- */ + +/* FIXME: many possible improvements; + * - look at changing the API to use pointer rather than index parameters now + * that 'cursor' is a pointer, + * - consider moving other parameters to pointer if it could help (ci) + */ + +#define DQRR_CARRYCLEAR(p) \ + (void *)((unsigned long)(p) & (~(unsigned long)(QM_DQRR_SIZE << 6))) + +static inline u8 DQRR_PTR2IDX(const struct qm_dqrr_entry *e) +{ + return ((uintptr_t)e >> 6) & (QM_DQRR_SIZE - 1); +} + +static inline const struct qm_dqrr_entry *DQRR_INC( + const struct qm_dqrr_entry *e) +{ + return DQRR_CARRYCLEAR(e + 1); +} + +static inline void qm_dqrr_set_maxfill(struct qm_portal *portal, u8 mf) +{ + qm_out(CFG, (qm_in(CFG) & 0xff0fffff) | + ((mf & (QM_DQRR_SIZE - 1)) << 20)); +} + +static inline int qm_dqrr_init(struct qm_portal *portal, + const struct qm_portal_config *config, + enum qm_dqrr_dmode dmode, + __maybe_unused enum qm_dqrr_pmode pmode, + enum qm_dqrr_cmode cmode, u8 max_fill, + int disable_stash) +{ + register struct qm_dqrr *dqrr = &portal->dqrr; + u32 cfg; + + if ((config->public_cfg.has_stashing) && (config->public_cfg.cpu == -1)) + return -EINVAL; + /* Make sure the DQRR will be idle when we enable */ + qm_out(DQRR_SDQCR, 0); + qm_out(DQRR_VDQCR, 0); + qm_out(DQRR_PDQCR, 0); + dqrr->ring = portal->addr.addr_ce + CL_DQRR; + dqrr->pi = qm_in(DQRR_PI_CINH) & (QM_DQRR_SIZE - 1); + dqrr->ci = qm_in(DQRR_CI_CINH) & (QM_DQRR_SIZE - 1); + dqrr->cursor = dqrr->ring + dqrr->ci; + dqrr->fill = cyc_diff(QM_DQRR_SIZE, dqrr->ci, dqrr->pi); + dqrr->vbit = (qm_in(DQRR_PI_CINH) & QM_DQRR_SIZE) ? + QM_DQRR_VERB_VBIT : 0; + dqrr->ithresh = qm_in(DQRR_ITR); +#ifdef CONFIG_FSL_DPA_CHECKING + dqrr->dmode = dmode; + dqrr->pmode = pmode; + dqrr->cmode = cmode; + dqrr->flags = 0; + if (!disable_stash) + dqrr->flags |= QM_DQRR_FLAG_RE | QM_DQRR_FLAG_SE; +#endif + cfg = (qm_in(CFG) & 0xff000f00) | + ((max_fill & (QM_DQRR_SIZE - 1)) << 20) | /* DQRR_MF */ + ((dmode & 1) << 18) | /* DP */ + ((cmode & 3) << 16) | /* DCM */ + (disable_stash ? 0 : /* RE+SE */ + config->public_cfg.has_stashing ? 0xa0 : 0) | + (0 ? 0x40 : 0) | /* Ignore RP */ + (0 ? 0x10 : 0); /* Ignore SP */ + qm_out(CFG, cfg); + qm_dqrr_set_maxfill(portal, max_fill); + return 0; +} + +static inline void qm_dqrr_finish(struct qm_portal *portal) +{ + __maybe_unused register struct qm_dqrr *dqrr = &portal->dqrr; +#ifdef CONFIG_FSL_DPA_CHECKING + if ((dqrr->cmode != qm_dqrr_cdc) && + (dqrr->ci != DQRR_PTR2IDX(dqrr->cursor))) + pr_crit("Ignoring completed DQRR entries\n"); +#endif +} + +static inline const struct qm_dqrr_entry *qm_dqrr_current( + struct qm_portal *portal) +{ + register struct qm_dqrr *dqrr = &portal->dqrr; + if (!dqrr->fill) + return NULL; + return dqrr->cursor; +} + +static inline u8 qm_dqrr_cursor(struct qm_portal *portal) +{ + register struct qm_dqrr *dqrr = &portal->dqrr; + return DQRR_PTR2IDX(dqrr->cursor); +} + +static inline u8 qm_dqrr_next(struct qm_portal *portal) +{ + register struct qm_dqrr *dqrr = &portal->dqrr; + DPA_ASSERT(dqrr->fill); + dqrr->cursor = DQRR_INC(dqrr->cursor); + return --dqrr->fill; +} + +static inline u8 qm_dqrr_pci_update(struct qm_portal *portal) +{ + register struct qm_dqrr *dqrr = &portal->dqrr; + u8 diff, old_pi = dqrr->pi; + DPA_ASSERT(dqrr->pmode == qm_dqrr_pci); + dqrr->pi = qm_in(DQRR_PI_CINH) & (QM_DQRR_SIZE - 1); + diff = cyc_diff(QM_DQRR_SIZE, old_pi, dqrr->pi); + dqrr->fill += diff; + return diff; +} + +static inline void qm_dqrr_pce_prefetch(struct qm_portal *portal) +{ + __maybe_unused register struct qm_dqrr *dqrr = &portal->dqrr; + DPA_ASSERT(dqrr->pmode == qm_dqrr_pce); + qm_cl_invalidate(DQRR_PI); + qm_cl_touch_ro(DQRR_PI); +} + +static inline u8 qm_dqrr_pce_update(struct qm_portal *portal) +{ + register struct qm_dqrr *dqrr = &portal->dqrr; + u8 diff, old_pi = dqrr->pi; + DPA_ASSERT(dqrr->pmode == qm_dqrr_pce); + dqrr->pi = qm_cl_in(DQRR_PI) & (QM_DQRR_SIZE - 1); + diff = cyc_diff(QM_DQRR_SIZE, old_pi, dqrr->pi); + dqrr->fill += diff; + return diff; +} + +static inline void qm_dqrr_pvb_update(struct qm_portal *portal, int coherent) +{ + register struct qm_dqrr *dqrr = &portal->dqrr; + const struct qm_dqrr_entry *res = qm_cl(dqrr->ring, dqrr->pi); + DPA_ASSERT(dqrr->pmode == qm_dqrr_pvb); + /* when accessing 'verb', use __raw_readb() to ensure that compiler + * inlining doesn't try to optimise out "excess reads". */ + if ((__raw_readb(&res->verb) & QM_DQRR_VERB_VBIT) == dqrr->vbit) { + dqrr->pi = (dqrr->pi + 1) & (QM_DQRR_SIZE - 1); + if (!dqrr->pi) + dqrr->vbit ^= QM_DQRR_VERB_VBIT; + dqrr->fill++; + if (!coherent) { + DPA_ASSERT(!(dqrr->flags & QM_DQRR_FLAG_RE)); + dcbit_ro(DQRR_INC(res)); + } + } else if (!coherent) { + DPA_ASSERT(!(dqrr->flags & QM_DQRR_FLAG_RE)); + dcbit_ro(res); + } +} + +static inline void qm_dqrr_cci_consume(struct qm_portal *portal, u8 num) +{ + register struct qm_dqrr *dqrr = &portal->dqrr; + DPA_ASSERT(dqrr->cmode == qm_dqrr_cci); + dqrr->ci = (dqrr->ci + num) & (QM_DQRR_SIZE - 1); + qm_out(DQRR_CI_CINH, dqrr->ci); +} + +static inline void qm_dqrr_cci_consume_to_current(struct qm_portal *portal) +{ + register struct qm_dqrr *dqrr = &portal->dqrr; + DPA_ASSERT(dqrr->cmode == qm_dqrr_cci); + dqrr->ci = DQRR_PTR2IDX(dqrr->cursor); + qm_out(DQRR_CI_CINH, dqrr->ci); +} + +static inline void qm_dqrr_cce_prefetch(struct qm_portal *portal) +{ + __maybe_unused register struct qm_dqrr *dqrr = &portal->dqrr; + DPA_ASSERT(dqrr->cmode == qm_dqrr_cce); + qm_cl_invalidate(DQRR_CI); + qm_cl_touch_rw(DQRR_CI); +} + +static inline void qm_dqrr_cce_consume(struct qm_portal *portal, u8 num) +{ + register struct qm_dqrr *dqrr = &portal->dqrr; + DPA_ASSERT(dqrr->cmode == qm_dqrr_cce); + dqrr->ci = (dqrr->ci + num) & (QM_DQRR_SIZE - 1); + qm_cl_out(DQRR_CI, dqrr->ci); +} + +static inline void qm_dqrr_cce_consume_to_current(struct qm_portal *portal) +{ + register struct qm_dqrr *dqrr = &portal->dqrr; + DPA_ASSERT(dqrr->cmode == qm_dqrr_cce); + dqrr->ci = DQRR_PTR2IDX(dqrr->cursor); + qm_cl_out(DQRR_CI, dqrr->ci); +} + +static inline void qm_dqrr_cdc_consume_1(struct qm_portal *portal, u8 idx, + int park) +{ + __maybe_unused register struct qm_dqrr *dqrr = &portal->dqrr; + DPA_ASSERT(dqrr->cmode == qm_dqrr_cdc); + DPA_ASSERT(idx < QM_DQRR_SIZE); + qm_out(DQRR_DCAP, (0 << 8) | /* S */ + ((park ? 1 : 0) << 6) | /* PK */ + idx); /* DCAP_CI */ +} + +static inline void qm_dqrr_cdc_consume_1ptr(struct qm_portal *portal, + const struct qm_dqrr_entry *dq, + int park) +{ + __maybe_unused register struct qm_dqrr *dqrr = &portal->dqrr; + u8 idx = DQRR_PTR2IDX(dq); + DPA_ASSERT(dqrr->cmode == qm_dqrr_cdc); + DPA_ASSERT((dqrr->ring + idx) == dq); + DPA_ASSERT(idx < QM_DQRR_SIZE); + qm_out(DQRR_DCAP, (0 << 8) | /* DQRR_DCAP::S */ + ((park ? 1 : 0) << 6) | /* DQRR_DCAP::PK */ + idx); /* DQRR_DCAP::DCAP_CI */ +} + +static inline void qm_dqrr_cdc_consume_n(struct qm_portal *portal, u16 bitmask) +{ + __maybe_unused register struct qm_dqrr *dqrr = &portal->dqrr; + DPA_ASSERT(dqrr->cmode == qm_dqrr_cdc); + qm_out(DQRR_DCAP, (1 << 8) | /* DQRR_DCAP::S */ + ((u32)bitmask << 16)); /* DQRR_DCAP::DCAP_CI */ +} + +static inline u8 qm_dqrr_cdc_cci(struct qm_portal *portal) +{ + __maybe_unused register struct qm_dqrr *dqrr = &portal->dqrr; + DPA_ASSERT(dqrr->cmode == qm_dqrr_cdc); + return qm_in(DQRR_CI_CINH) & (QM_DQRR_SIZE - 1); +} + +static inline void qm_dqrr_cdc_cce_prefetch(struct qm_portal *portal) +{ + __maybe_unused register struct qm_dqrr *dqrr = &portal->dqrr; + DPA_ASSERT(dqrr->cmode == qm_dqrr_cdc); + qm_cl_invalidate(DQRR_CI); + qm_cl_touch_ro(DQRR_CI); +} + +static inline u8 qm_dqrr_cdc_cce(struct qm_portal *portal) +{ + __maybe_unused register struct qm_dqrr *dqrr = &portal->dqrr; + DPA_ASSERT(dqrr->cmode == qm_dqrr_cdc); + return qm_cl_in(DQRR_CI) & (QM_DQRR_SIZE - 1); +} + +static inline u8 qm_dqrr_get_ci(struct qm_portal *portal) +{ + register struct qm_dqrr *dqrr = &portal->dqrr; + DPA_ASSERT(dqrr->cmode != qm_dqrr_cdc); + return dqrr->ci; +} + +static inline void qm_dqrr_park(struct qm_portal *portal, u8 idx) +{ + __maybe_unused register struct qm_dqrr *dqrr = &portal->dqrr; + DPA_ASSERT(dqrr->cmode != qm_dqrr_cdc); + qm_out(DQRR_DCAP, (0 << 8) | /* S */ + (1 << 6) | /* PK */ + (idx & (QM_DQRR_SIZE - 1))); /* DCAP_CI */ +} + +static inline void qm_dqrr_park_current(struct qm_portal *portal) +{ + register struct qm_dqrr *dqrr = &portal->dqrr; + DPA_ASSERT(dqrr->cmode != qm_dqrr_cdc); + qm_out(DQRR_DCAP, (0 << 8) | /* S */ + (1 << 6) | /* PK */ + DQRR_PTR2IDX(dqrr->cursor)); /* DCAP_CI */ +} + +static inline void qm_dqrr_sdqcr_set(struct qm_portal *portal, u32 sdqcr) +{ + qm_out(DQRR_SDQCR, sdqcr); +} + +static inline u32 qm_dqrr_sdqcr_get(struct qm_portal *portal) +{ + return qm_in(DQRR_SDQCR); +} + +static inline void qm_dqrr_vdqcr_set(struct qm_portal *portal, u32 vdqcr) +{ + qm_out(DQRR_VDQCR, vdqcr); +} + +static inline u32 qm_dqrr_vdqcr_get(struct qm_portal *portal) +{ + return qm_in(DQRR_VDQCR); +} + +static inline void qm_dqrr_pdqcr_set(struct qm_portal *portal, u32 pdqcr) +{ + qm_out(DQRR_PDQCR, pdqcr); +} + +static inline u32 qm_dqrr_pdqcr_get(struct qm_portal *portal) +{ + return qm_in(DQRR_PDQCR); +} + +static inline u8 qm_dqrr_get_ithresh(struct qm_portal *portal) +{ + register struct qm_dqrr *dqrr = &portal->dqrr; + return dqrr->ithresh; +} + +static inline void qm_dqrr_set_ithresh(struct qm_portal *portal, u8 ithresh) +{ + qm_out(DQRR_ITR, ithresh); +} + +static inline u8 qm_dqrr_get_maxfill(struct qm_portal *portal) +{ + return (qm_in(CFG) & 0x00f00000) >> 20; +} + + +/* -------------- */ +/* --- MR API --- */ + +#define MR_CARRYCLEAR(p) \ + (void *)((unsigned long)(p) & (~(unsigned long)(QM_MR_SIZE << 6))) + +static inline u8 MR_PTR2IDX(const struct qm_mr_entry *e) +{ + return ((uintptr_t)e >> 6) & (QM_MR_SIZE - 1); +} + +static inline const struct qm_mr_entry *MR_INC(const struct qm_mr_entry *e) +{ + return MR_CARRYCLEAR(e + 1); +} + +#ifdef CONFIG_FSL_QMAN_BUG_AND_FEATURE_REV1 +static inline void __mr_copy_and_fixup(struct qm_portal *p, u8 idx) +{ + if (qman_ip_rev == QMAN_REV10) { + struct qm_mr_entry *shadow = qm_cl(p->bugs.mr, idx); + struct qm_mr_entry *res = qm_cl(p->mr.ring, idx); + copy_words(shadow, res, sizeof(*res)); + /* Bypass the QM_MR_RC_*** definitions, and check the byte value + * directly to handle the erratum. */ + if (shadow->ern.rc == 0x06) + shadow->ern.rc = 0x60; + } +} +#else +#define __mr_copy_and_fixup(p, idx) do { ; } while (0) +#endif + +static inline int qm_mr_init(struct qm_portal *portal, enum qm_mr_pmode pmode, + enum qm_mr_cmode cmode) +{ + register struct qm_mr *mr = &portal->mr; + u32 cfg; + int loop; + +#ifdef CONFIG_FSL_QMAN_BUG_AND_FEATURE_REV1 + if ((qman_ip_rev == QMAN_REV10) && (pmode != qm_mr_pvb)) { + pr_err("Qman is rev1, so QMAN9 workaround requires 'pvb'\n"); + return -EINVAL; + } +#endif + mr->ring = portal->addr.addr_ce + CL_MR; + mr->pi = qm_in(MR_PI_CINH) & (QM_MR_SIZE - 1); + mr->ci = qm_in(MR_CI_CINH) & (QM_MR_SIZE - 1); +#ifdef CONFIG_FSL_QMAN_BUG_AND_FEATURE_REV1 + if (qman_ip_rev == QMAN_REV10) + /* Situate the cursor in the shadow ring */ + mr->cursor = portal->bugs.mr + mr->ci; + else +#endif + mr->cursor = mr->ring + mr->ci; + mr->fill = cyc_diff(QM_MR_SIZE, mr->ci, mr->pi); + mr->vbit = (qm_in(MR_PI_CINH) & QM_MR_SIZE) ? QM_MR_VERB_VBIT : 0; + mr->ithresh = qm_in(MR_ITR); +#ifdef CONFIG_FSL_DPA_CHECKING + mr->pmode = pmode; + mr->cmode = cmode; +#endif + /* Only new entries get the copy-and-fixup treatment from + * qm_mr_pvb_update(), so perform it here for any stale entries. */ + for (loop = 0; loop < mr->fill; loop++) + __mr_copy_and_fixup(portal, (mr->ci + loop) & (QM_MR_SIZE - 1)); + cfg = (qm_in(CFG) & 0xfffff0ff) | + ((cmode & 1) << 8); /* QCSP_CFG:MM */ + qm_out(CFG, cfg); + return 0; +} + +static inline void qm_mr_finish(struct qm_portal *portal) +{ + register struct qm_mr *mr = &portal->mr; + if (mr->ci != MR_PTR2IDX(mr->cursor)) + pr_crit("Ignoring completed MR entries\n"); +} + +static inline const struct qm_mr_entry *qm_mr_current(struct qm_portal *portal) +{ + register struct qm_mr *mr = &portal->mr; + if (!mr->fill) + return NULL; + return mr->cursor; +} + +static inline u8 qm_mr_cursor(struct qm_portal *portal) +{ + register struct qm_mr *mr = &portal->mr; + return MR_PTR2IDX(mr->cursor); +} + +static inline u8 qm_mr_next(struct qm_portal *portal) +{ + register struct qm_mr *mr = &portal->mr; + DPA_ASSERT(mr->fill); + mr->cursor = MR_INC(mr->cursor); + return --mr->fill; +} + +static inline u8 qm_mr_pci_update(struct qm_portal *portal) +{ + register struct qm_mr *mr = &portal->mr; + u8 diff, old_pi = mr->pi; + DPA_ASSERT(mr->pmode == qm_mr_pci); + mr->pi = qm_in(MR_PI_CINH); + diff = cyc_diff(QM_MR_SIZE, old_pi, mr->pi); + mr->fill += diff; + return diff; +} + +static inline void qm_mr_pce_prefetch(struct qm_portal *portal) +{ + __maybe_unused register struct qm_mr *mr = &portal->mr; + DPA_ASSERT(mr->pmode == qm_mr_pce); + qm_cl_invalidate(MR_PI); + qm_cl_touch_ro(MR_PI); +} + +static inline u8 qm_mr_pce_update(struct qm_portal *portal) +{ + register struct qm_mr *mr = &portal->mr; + u8 diff, old_pi = mr->pi; + DPA_ASSERT(mr->pmode == qm_mr_pce); + mr->pi = qm_cl_in(MR_PI) & (QM_MR_SIZE - 1); + diff = cyc_diff(QM_MR_SIZE, old_pi, mr->pi); + mr->fill += diff; + return diff; +} + +static inline void qm_mr_pvb_update(struct qm_portal *portal) +{ + register struct qm_mr *mr = &portal->mr; + const struct qm_mr_entry *res = qm_cl(mr->ring, mr->pi); + DPA_ASSERT(mr->pmode == qm_mr_pvb); + /* when accessing 'verb', use __raw_readb() to ensure that compiler + * inlining doesn't try to optimise out "excess reads". */ + if ((__raw_readb(&res->verb) & QM_MR_VERB_VBIT) == mr->vbit) { + __mr_copy_and_fixup(portal, mr->pi); + mr->pi = (mr->pi + 1) & (QM_MR_SIZE - 1); + if (!mr->pi) + mr->vbit ^= QM_MR_VERB_VBIT; + mr->fill++; + res = MR_INC(res); + } + dcbit_ro(res); +} + +static inline void qm_mr_cci_consume(struct qm_portal *portal, u8 num) +{ + register struct qm_mr *mr = &portal->mr; + DPA_ASSERT(mr->cmode == qm_mr_cci); + mr->ci = (mr->ci + num) & (QM_MR_SIZE - 1); + qm_out(MR_CI_CINH, mr->ci); +} + +static inline void qm_mr_cci_consume_to_current(struct qm_portal *portal) +{ + register struct qm_mr *mr = &portal->mr; + DPA_ASSERT(mr->cmode == qm_mr_cci); + mr->ci = MR_PTR2IDX(mr->cursor); + qm_out(MR_CI_CINH, mr->ci); +} + +static inline void qm_mr_cce_prefetch(struct qm_portal *portal) +{ + __maybe_unused register struct qm_mr *mr = &portal->mr; + DPA_ASSERT(mr->cmode == qm_mr_cce); + qm_cl_invalidate(MR_CI); + qm_cl_touch_rw(MR_CI); +} + +static inline void qm_mr_cce_consume(struct qm_portal *portal, u8 num) +{ + register struct qm_mr *mr = &portal->mr; + DPA_ASSERT(mr->cmode == qm_mr_cce); + mr->ci = (mr->ci + num) & (QM_MR_SIZE - 1); + qm_cl_out(MR_CI, mr->ci); +} + +static inline void qm_mr_cce_consume_to_current(struct qm_portal *portal) +{ + register struct qm_mr *mr = &portal->mr; + DPA_ASSERT(mr->cmode == qm_mr_cce); + mr->ci = MR_PTR2IDX(mr->cursor); + qm_cl_out(MR_CI, mr->ci); +} + +static inline u8 qm_mr_get_ci(struct qm_portal *portal) +{ + register struct qm_mr *mr = &portal->mr; + return mr->ci; +} + +static inline u8 qm_mr_get_ithresh(struct qm_portal *portal) +{ + register struct qm_mr *mr = &portal->mr; + return mr->ithresh; +} + +static inline void qm_mr_set_ithresh(struct qm_portal *portal, u8 ithresh) +{ + qm_out(MR_ITR, ithresh); +} + + +/* ------------------------------ */ +/* --- Management command API --- */ + +static inline int qm_mc_init(struct qm_portal *portal) +{ + register struct qm_mc *mc = &portal->mc; + mc->cr = portal->addr.addr_ce + CL_CR; + mc->rr = portal->addr.addr_ce + CL_RR0; + mc->rridx = (__raw_readb(&mc->cr->__dont_write_directly__verb) & + QM_MCC_VERB_VBIT) ? 0 : 1; + mc->vbit = mc->rridx ? QM_MCC_VERB_VBIT : 0; +#ifdef CONFIG_FSL_DPA_CHECKING + mc->state = mc_idle; +#endif + return 0; +} + +static inline void qm_mc_finish(struct qm_portal *portal) +{ + __maybe_unused register struct qm_mc *mc = &portal->mc; + DPA_ASSERT(mc->state == mc_idle); +#ifdef CONFIG_FSL_DPA_CHECKING + if (mc->state != mc_idle) + pr_crit("Losing incomplete MC command\n"); +#endif +} + +static inline struct qm_mc_command *qm_mc_start(struct qm_portal *portal) +{ + register struct qm_mc *mc = &portal->mc; + DPA_ASSERT(mc->state == mc_idle); +#ifdef CONFIG_FSL_DPA_CHECKING + mc->state = mc_user; +#endif + dcbz_64(mc->cr); + return mc->cr; +} + +static inline void qm_mc_abort(struct qm_portal *portal) +{ + __maybe_unused register struct qm_mc *mc = &portal->mc; + DPA_ASSERT(mc->state == mc_user); +#ifdef CONFIG_FSL_DPA_CHECKING + mc->state = mc_idle; +#endif +} + +static inline void qm_mc_commit(struct qm_portal *portal, u8 myverb) +{ + register struct qm_mc *mc = &portal->mc; + struct qm_mc_result *rr = mc->rr + mc->rridx; + DPA_ASSERT(mc->state == mc_user); + lwsync(); +#ifdef CONFIG_FSL_QMAN_BUG_AND_FEATURE_REV1 + if ((qman_ip_rev == QMAN_REV10) && ((myverb & QM_MCC_VERB_MASK) == + QM_MCC_VERB_INITFQ_SCHED)) { + u32 fqid = mc->cr->initfq.fqid; + /* Do two commands to avoid the hw bug. Note, we poll locally + * rather than using qm_mc_result() because from a DPA_CHECKING + * perspective, we don't want to appear to have "finished" until + * both commands are done. */ + mc->cr->__dont_write_directly__verb = mc->vbit | + QM_MCC_VERB_INITFQ_PARKED; + dcbf(mc->cr); + portal->bugs.initfq_and_sched = 1; + do { + dcbit_ro(rr); + } while (!__raw_readb(&rr->verb)); +#ifdef CONFIG_FSL_DPA_CHECKING + mc->state = mc_idle; +#endif + if (rr->result != QM_MCR_RESULT_OK) { +#ifdef CONFIG_FSL_DPA_CHECKING + mc->state = mc_hw; +#endif + return; + } + mc->rridx ^= 1; + mc->vbit ^= QM_MCC_VERB_VBIT; + rr = mc->rr + mc->rridx; + dcbz_64(mc->cr); + mc->cr->alterfq.fqid = fqid; + lwsync(); + myverb = QM_MCC_VERB_ALTER_SCHED; + } else + portal->bugs.initfq_and_sched = 0; +#endif + mc->cr->__dont_write_directly__verb = myverb | mc->vbit; + dcbf(mc->cr); + dcbit_ro(rr); +#ifdef CONFIG_FSL_DPA_CHECKING + mc->state = mc_hw; +#endif +} + +static inline struct qm_mc_result *qm_mc_result(struct qm_portal *portal) +{ + register struct qm_mc *mc = &portal->mc; + struct qm_mc_result *rr = mc->rr + mc->rridx; + DPA_ASSERT(mc->state == mc_hw); + /* The inactive response register's verb byte always returns zero until + * its command is submitted and completed. This includes the valid-bit, + * in case you were wondering... */ + if (!__raw_readb(&rr->verb)) { + dcbit_ro(rr); + return NULL; + } +#ifdef CONFIG_FSL_QMAN_BUG_AND_FEATURE_REV1 + if (qman_ip_rev == QMAN_REV10) { + if ((__raw_readb(&rr->verb) & QM_MCR_VERB_MASK) == + QM_MCR_VERB_QUERYFQ) { + void *misplaced = (void *)rr + 50; + copy_words(&portal->bugs.result, rr, sizeof(*rr)); + rr = &portal->bugs.result; + copy_shorts(&rr->queryfq.fqd.td, misplaced, + sizeof(rr->queryfq.fqd.td)); + } else if (portal->bugs.initfq_and_sched) { + /* We split the user-requested command, make the final + * result match the requested type. */ + copy_words(&portal->bugs.result, rr, sizeof(*rr)); + rr = &portal->bugs.result; + rr->verb = (rr->verb & QM_MCR_VERB_RRID) | + QM_MCR_VERB_INITFQ_SCHED; + } + } +#endif + mc->rridx ^= 1; + mc->vbit ^= QM_MCC_VERB_VBIT; +#ifdef CONFIG_FSL_DPA_CHECKING + mc->state = mc_idle; +#endif + return rr; +} + + +/* ------------------------------------- */ +/* --- Portal interrupt register API --- */ + +static inline int qm_isr_init(__always_unused struct qm_portal *portal) +{ + return 0; +} + +static inline void qm_isr_finish(__always_unused struct qm_portal *portal) +{ +} + +static inline void qm_isr_set_iperiod(struct qm_portal *portal, u16 iperiod) +{ + qm_out(ITPR, iperiod); +} + +static inline u32 __qm_isr_read(struct qm_portal *portal, enum qm_isr_reg n) +{ + return __qm_in(&portal->addr, REG_ISR + (n << 2)); +} + +static inline void __qm_isr_write(struct qm_portal *portal, enum qm_isr_reg n, + u32 val) +{ + __qm_out(&portal->addr, REG_ISR + (n << 2), val); +} + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/qman_private.h +++ linux-3.13.0/drivers/staging/fsl_qbman/qman_private.h @@ -0,0 +1,292 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "dpa_sys.h" +#include + +#if !defined(CONFIG_FSL_QMAN_FQ_LOOKUP) && defined(CONFIG_PPC64) +#error "_PPC64 requires _FSL_QMAN_FQ_LOOKUP" +#endif + + /* ----------------- */ + /* Congestion Groups */ + /* ----------------- */ +/* This wrapper represents a bit-array for the state of the 256 Qman congestion + * groups. Is also used as a *mask* for congestion groups, eg. so we ignore + * those that don't concern us. We harness the structure and accessor details + * already used in the management command to query congestion groups. */ +struct qman_cgrs { + struct __qm_mcr_querycongestion q; +}; +static inline void qman_cgrs_init(struct qman_cgrs *c) +{ + memset(c, 0, sizeof(*c)); +} +static inline void qman_cgrs_fill(struct qman_cgrs *c) +{ + memset(c, 0xff, sizeof(*c)); +} +static inline int qman_cgrs_get(struct qman_cgrs *c, int num) +{ + return QM_MCR_QUERYCONGESTION(&c->q, num); +} +static inline void qman_cgrs_set(struct qman_cgrs *c, int num) +{ + c->q.__state[__CGR_WORD(num)] |= (0x80000000 >> __CGR_SHIFT(num)); +} +static inline void qman_cgrs_unset(struct qman_cgrs *c, int num) +{ + c->q.__state[__CGR_WORD(num)] &= ~(0x80000000 >> __CGR_SHIFT(num)); +} +static inline int qman_cgrs_next(struct qman_cgrs *c, int num) +{ + while ((++num < __CGR_NUM) && !qman_cgrs_get(c, num)) + ; + return num; +} +static inline void qman_cgrs_cp(struct qman_cgrs *dest, + const struct qman_cgrs *src) +{ + memcpy(dest, src, sizeof(*dest)); +} +static inline void qman_cgrs_and(struct qman_cgrs *dest, + const struct qman_cgrs *a, const struct qman_cgrs *b) +{ + int ret; + u32 *_d = dest->q.__state; + const u32 *_a = a->q.__state; + const u32 *_b = b->q.__state; + for (ret = 0; ret < 8; ret++) + *(_d++) = *(_a++) & *(_b++); +} +static inline void qman_cgrs_xor(struct qman_cgrs *dest, + const struct qman_cgrs *a, const struct qman_cgrs *b) +{ + int ret; + u32 *_d = dest->q.__state; + const u32 *_a = a->q.__state; + const u32 *_b = b->q.__state; + for (ret = 0; ret < 8; ret++) + *(_d++) = *(_a++) ^ *(_b++); +} + +#define qman_cgrs_for_each_1(cgr, cgrs) \ + for ((cgr) = -1; (cgr) = qman_cgrs_next((cgrs), (cgr)),\ + (cgr) < __CGR_NUM;) + +/* used by CCSR and portal interrupt code */ +enum qm_isr_reg { + qm_isr_status = 0, + qm_isr_enable = 1, + qm_isr_disable = 2, + qm_isr_inhibit = 3 +}; + +#define QM_ADDR_CE 0 +#define QM_ADDR_CI 1 +struct qm_portal_config { + /* Corenet portal addresses; + * [0]==cache-enabled, [1]==cache-inhibited. */ + __iomem void *addr_virt[2]; + struct resource addr_phys[2]; + struct device_node *node; + /* Allow these to be joined in lists */ + struct list_head list; + /* User-visible portal configuration settings */ + struct qman_portal_config public_cfg; +}; + +/* Hooks for driver initialisation */ +__init int fqalloc_init(int use_bman); + +/* Revision info (for errata and feature handling) */ +#define QMAN_REV10 0x0100 +#define QMAN_REV11 0x0101 +#define QMAN_REV12 0x0102 +#define QMAN_REV20 0x0200 +extern u16 qman_ip_rev; /* 0 if uninitialised, otherwise QMAN_REVx */ + +#ifdef CONFIG_FSL_QMAN_CONFIG +/* Hooks from qman_driver.c to qman_config.c */ +int qman_init_error_int(struct device_node *node); +void qman_liodn_fixup(enum qm_channel channel); +#endif + +/* Hooks from qman_driver.c in to qman_high.c */ +struct qman_portal *qman_create_affine_portal( + const struct qm_portal_config *config, + const struct qman_cgrs *cgrs, + const struct qman_fq_cb *null_cb, + int recovery_mode); +struct qman_portal *qman_create_affine_slave(struct qman_portal *redirect); +const struct qm_portal_config *qman_destroy_affine_portal(void); +void qman_recovery_exit_local(void); + +/* This CGR feature is supported by h/w and required by unit-tests and the + * debugfs hooks, so is implemented in the driver. However it allows an explicit + * corruption of h/w fields by s/w that are usually incorruptible (because the + * counters are usually maintained entirely within h/w). As such, we declare + * this API internally. */ +int qman_testwrite_cgr(struct qman_cgr *cgr, u64 i_bcnt, + struct qm_mcr_cgrtestwrite *result); + +#ifdef CONFIG_FSL_QMAN_FQ_LOOKUP +/* If the fq object pointer is greater than the size of context_b field, + * than a lookup table is required. */ +int qman_setup_fq_lookup_table(size_t num_entries); +#endif + +/*************************************************/ +/* QMan s/w corenet portal, low-level i/face */ +/*************************************************/ + +/* Note: most functions are only used by the high-level interface, so are + * inlined from qman_low.h. The stuff below is for use by other parts of the + * driver. */ + +/* For qm_dqrr_sdqcr_set(); Choose one SOURCE. Choose one COUNT. Choose one + * dequeue TYPE. Choose TOKEN (8-bit). + * If SOURCE == CHANNELS, + * Choose CHANNELS_DEDICATED and/or CHANNELS_POOL(n). + * You can choose DEDICATED_PRECEDENCE if the portal channel should have + * priority. + * If SOURCE == SPECIFICWQ, + * Either select the work-queue ID with SPECIFICWQ_WQ(), or select the + * channel (SPECIFICWQ_DEDICATED or SPECIFICWQ_POOL()) and specify the + * work-queue priority (0-7) with SPECIFICWQ_WQ() - either way, you get the + * same value. + */ +#define QM_SDQCR_SOURCE_CHANNELS 0x0 +#define QM_SDQCR_SOURCE_SPECIFICWQ 0x40000000 +#define QM_SDQCR_COUNT_EXACT1 0x0 +#define QM_SDQCR_COUNT_UPTO3 0x20000000 +#define QM_SDQCR_DEDICATED_PRECEDENCE 0x10000000 +#define QM_SDQCR_TYPE_MASK 0x03000000 +#define QM_SDQCR_TYPE_NULL 0x0 +#define QM_SDQCR_TYPE_PRIO_QOS 0x01000000 +#define QM_SDQCR_TYPE_ACTIVE_QOS 0x02000000 +#define QM_SDQCR_TYPE_ACTIVE 0x03000000 +#define QM_SDQCR_TOKEN_MASK 0x00ff0000 +#define QM_SDQCR_TOKEN_SET(v) (((v) & 0xff) << 16) +#define QM_SDQCR_TOKEN_GET(v) (((v) >> 16) & 0xff) +#define QM_SDQCR_CHANNELS_DEDICATED 0x00008000 +#if 0 /* These are defined in the external fsl_qman.h API */ +#define QM_SDQCR_CHANNELS_POOL_MASK 0x00007fff +#define QM_SDQCR_CHANNELS_POOL(n) (0x00008000 >> (n)) +#endif +#define QM_SDQCR_SPECIFICWQ_MASK 0x000000f7 +#define QM_SDQCR_SPECIFICWQ_DEDICATED 0x00000000 +#define QM_SDQCR_SPECIFICWQ_POOL(n) ((n) << 4) +#define QM_SDQCR_SPECIFICWQ_WQ(n) (n) + +/* For qm_dqrr_vdqcr_set(); Choose one PRECEDENCE. EXACT is optional. Use + * NUMFRAMES(n) (6-bit) or NUMFRAMES_TILLEMPTY to fill in the frame-count. Use + * FQID(n) to fill in the frame queue ID. */ +#if 0 /* These are defined in the external fsl_qman.h API */ +#define QM_VDQCR_PRECEDENCE_VDQCR 0x0 +#define QM_VDQCR_PRECEDENCE_SDQCR 0x80000000 +#define QM_VDQCR_EXACT 0x40000000 +#define QM_VDQCR_NUMFRAMES_MASK 0x3f000000 +#define QM_VDQCR_NUMFRAMES_SET(n) (((n) & 0x3f) << 24) +#define QM_VDQCR_NUMFRAMES_GET(n) (((n) >> 24) & 0x3f) +#define QM_VDQCR_NUMFRAMES_TILLEMPTY QM_VDQCR_NUMFRAMES_SET(0) +#endif +#define QM_VDQCR_FQID_MASK 0x00ffffff +#define QM_VDQCR_FQID(n) ((n) & QM_VDQCR_FQID_MASK) + +/* For qm_dqrr_pdqcr_set(); Choose one MODE. Choose one COUNT. + * If MODE==SCHEDULED + * Choose SCHEDULED_CHANNELS or SCHEDULED_SPECIFICWQ. Choose one dequeue TYPE. + * If CHANNELS, + * Choose CHANNELS_DEDICATED and/or CHANNELS_POOL() channels. + * You can choose DEDICATED_PRECEDENCE if the portal channel should have + * priority. + * If SPECIFICWQ, + * Either select the work-queue ID with SPECIFICWQ_WQ(), or select the + * channel (SPECIFICWQ_DEDICATED or SPECIFICWQ_POOL()) and specify the + * work-queue priority (0-7) with SPECIFICWQ_WQ() - either way, you get the + * same value. + * If MODE==UNSCHEDULED + * Choose FQID(). + */ +#define QM_PDQCR_MODE_SCHEDULED 0x0 +#define QM_PDQCR_MODE_UNSCHEDULED 0x80000000 +#define QM_PDQCR_SCHEDULED_CHANNELS 0x0 +#define QM_PDQCR_SCHEDULED_SPECIFICWQ 0x40000000 +#define QM_PDQCR_COUNT_EXACT1 0x0 +#define QM_PDQCR_COUNT_UPTO3 0x20000000 +#define QM_PDQCR_DEDICATED_PRECEDENCE 0x10000000 +#define QM_PDQCR_TYPE_MASK 0x03000000 +#define QM_PDQCR_TYPE_NULL 0x0 +#define QM_PDQCR_TYPE_PRIO_QOS 0x01000000 +#define QM_PDQCR_TYPE_ACTIVE_QOS 0x02000000 +#define QM_PDQCR_TYPE_ACTIVE 0x03000000 +#define QM_PDQCR_CHANNELS_DEDICATED 0x00008000 +#define QM_PDQCR_CHANNELS_POOL(n) (0x00008000 >> (n)) +#define QM_PDQCR_SPECIFICWQ_MASK 0x000000f7 +#define QM_PDQCR_SPECIFICWQ_DEDICATED 0x00000000 +#define QM_PDQCR_SPECIFICWQ_POOL(n) ((n) << 4) +#define QM_PDQCR_SPECIFICWQ_WQ(n) (n) +#define QM_PDQCR_FQID(n) ((n) & 0xffffff) + +/* Used by all portal interrupt registers except 'inhibit'. NB, some of these + * definitions are exported for use by the qman_irqsource_***() APIs, so are + * commented-out here. */ +#define QM_PIRQ_DQAVAIL 0x0000ffff /* Channels with frame availability */ +#if 0 +#define QM_PIRQ_CSCI 0x00100000 /* Congestion State Change */ +#define QM_PIRQ_EQCI 0x00080000 /* Enqueue Command Committed */ +#define QM_PIRQ_EQRI 0x00040000 /* EQCR Ring (below threshold) */ +#define QM_PIRQ_DQRI 0x00020000 /* DQRR Ring (non-empty) */ +#define QM_PIRQ_MRI 0x00010000 /* MR Ring (non-empty) */ +/* This mask contains all the interrupt sources that need handling except DQRI, + * ie. that if present should trigger slow-path processing. */ +#define QM_PIRQ_SLOW (QM_PIRQ_CSCI | QM_PIRQ_EQCI | QM_PIRQ_EQRI | \ + QM_PIRQ_MRI) +#endif +/* The DQAVAIL interrupt fields break down into these bits; */ +#define QM_DQAVAIL_PORTAL 0x8000 /* Portal channel */ +#define QM_DQAVAIL_POOL(n) (0x8000 >> (n)) /* Pool channel, n==[1..15] */ +#define QM_DQAVAIL_MASK 0xffff +/* This mask contains all the "irqsource" bits visible to API users */ +#define QM_PIRQ_VISIBLE (QM_PIRQ_SLOW | QM_PIRQ_DQRI) + +/* These are qm__(). So for example, qm_disable_write() means "write + * the disable register" rather than "disable the ability to write". */ +#define qm_isr_status_read(qm) __qm_isr_read(qm, qm_isr_status) +#define qm_isr_status_clear(qm, m) __qm_isr_write(qm, qm_isr_status, m) +#define qm_isr_enable_read(qm) __qm_isr_read(qm, qm_isr_enable) +#define qm_isr_enable_write(qm, v) __qm_isr_write(qm, qm_isr_enable, v) +#define qm_isr_disable_read(qm) __qm_isr_read(qm, qm_isr_disable) +#define qm_isr_disable_write(qm, v) __qm_isr_write(qm, qm_isr_disable, v) +/* TODO: unfortunate name-clash here, reword? */ +#define qm_isr_inhibit(qm) __qm_isr_write(qm, qm_isr_inhibit, 1) +#define qm_isr_uninhibit(qm) __qm_isr_write(qm, qm_isr_inhibit, 0) --- linux-3.13.0.orig/drivers/staging/fsl_qbman/qman_test.c +++ linux-3.13.0/drivers/staging/fsl_qbman/qman_test.c @@ -0,0 +1,61 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "qman_test.h" + +MODULE_AUTHOR("Geoff Thorpe"); +MODULE_LICENSE("Dual BSD/GPL"); +MODULE_DESCRIPTION("Qman testing"); + +static int test_init(void) +{ + int loop = 1; + while(loop--) { +#ifdef CONFIG_FSL_QMAN_TEST_STASH_POTATO + qman_test_hotpotato(); +#endif +#ifdef CONFIG_FSL_QMAN_TEST_HIGH + qman_test_high(); +#endif +#ifdef CONFIG_FSL_QMAN_TEST_ERRATA + qman_test_errata(); +#endif + } + return 0; +} + +static void test_exit(void) +{ +} + +module_init(test_init); +module_exit(test_exit); + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/qman_test.h +++ linux-3.13.0/drivers/staging/fsl_qbman/qman_test.h @@ -0,0 +1,85 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include +#include +#include +#include +#include +#include + +#include + +void qman_test_hotpotato(void); +void qman_test_high(void); +void qman_test_errata(void); +void qman_test_fqrange(void); + +static inline void __hexdump(unsigned long start, unsigned long end, + unsigned long p, size_t sz, const unsigned char *c) +{ + while (start < end) { + unsigned int pos = 0; + char buf[64]; + int nl = 0; + pos += sprintf(buf + pos, "%08lx: ", start); + do { + if ((start < p) || (start >= (p + sz))) + pos += sprintf(buf + pos, ".."); + else + pos += sprintf(buf + pos, "%02x", *(c++)); + if (!(++start & 15)) { + buf[pos++] = '\n'; + nl = 1; + } else { + nl = 0; + if(!(start & 1)) + buf[pos++] = ' '; + if(!(start & 3)) + buf[pos++] = ' '; + } + } while (start & 15); + if (!nl) + buf[pos++] = '\n'; + buf[pos] = '\0'; + pr_info("%s", buf); + } +} +static inline void hexdump(const void *ptr, size_t sz) +{ + unsigned long p = (unsigned long)ptr; + unsigned long start = p & ~(unsigned long)15; + unsigned long end = (p + sz + 15) & ~(unsigned long)15; + const unsigned char *c = ptr; + __hexdump(start, end, p, sz, c); +} + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/qman_test_errata.c +++ linux-3.13.0/drivers/staging/fsl_qbman/qman_test_errata.c @@ -0,0 +1,248 @@ +/* Copyright 2009-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "qman_test.h" + +/* Waiting on a model fix from virtutech */ +#if 0 +/*********************/ +/* generic utilities */ +/*********************/ + +static int do_enqueues(struct qman_fq *fq, const struct qm_fd *fds, int num) +{ + int ret = 0; + u32 flags = QMAN_ENQUEUE_FLAG_WAIT; + while (num-- && !ret) { + if (!num) + flags |= QMAN_ENQUEUE_FLAG_WAIT_SYNC; + pr_info("about to enqueue\n"); + ret = qman_enqueue(fq, fds++, flags); + } + return ret; +} + +/***************************/ +/* "tdthresh" test (QMAN6) */ +/***************************/ + +/* First thresh == 201 * (2^21) == 421527552 (0x19200000) */ +#define THRESH_MANT 201 +#define THRESH_EXP 21 + +/* first three equal thresh, fourth takes us over */ +static const struct qm_fd td_eq[] = { + QM_FD_FMT_20(0, 0x34, 0x87654321, QM_FD_SG, 0, 79321), + QM_FD_FMT_29(0, 0x34, 0x87654321, QM_FD_COMPOUND, 29923679), + QM_FD_FMT_29(0, 0x0d, 0xacadabba, QM_FD_CONTIG_BIG, 391524552), + QM_FD_FMT_20(0, 0x0b, 0x0fa10ada, QM_FD_CONTIG, 0, 1), + QM_FD_FMT_20(0, 0x0b, 0x0fa10ada, QM_FD_CONTIG, 0, 1), +}; + +struct tdthresh_fq { + struct qman_fq fq; + int got_ern; + int num_dqrr; +}; + +static enum qman_cb_dqrr_result cb_dqrr_tdthresh(struct qman_portal *p, + struct qman_fq *__fq, + const struct qm_dqrr_entry *dqrr) +{ + struct tdthresh_fq *t = (void *)__fq; + t->num_dqrr++; + return qman_cb_dqrr_consume; +} + +static void cb_ern_tdthresh(struct qman_portal *p, struct qman_fq *__fq, + const struct qm_mr_entry *mr) +{ + struct tdthresh_fq *t = (void *)__fq; + t->got_ern = 1; +} + +static void test_tdthresh(void) +{ + struct tdthresh_fq tdfq = { + .fq = { + .cb = { + .dqrr = cb_dqrr_tdthresh, + .ern = cb_ern_tdthresh + } + }, + .got_ern = 0, + .num_dqrr = 0 + }; + struct qman_fq *fq = &tdfq.fq; + struct qm_mcc_initfq opts = { + .we_mask = QM_INITFQ_WE_FQCTRL | QM_INITFQ_WE_TDTHRESH, + .fqd = { + .fq_ctrl = QM_FQCTRL_TDE, + .td = { + .exp = THRESH_EXP, + .mant = THRESH_MANT, + } + } + }; + struct qm_fqd fqd; + u32 flags; + int ret = qman_create_fq(0, QMAN_FQ_FLAG_DYNAMIC_FQID, fq); + BUG_ON(ret); + /* leave it parked, and set it for local dequeue (loopback) */ + ret = qman_init_fq(fq, QMAN_INITFQ_FLAG_LOCAL, &opts); + BUG_ON(ret); + /* query it back and confirm everything is ok */ + ret = qman_query_fq(fq, &fqd); + BUG_ON(ret); + if (fqd.fq_ctrl != opts.fqd.fq_ctrl) { + pr_err("queried fq_ctrl=%x, should be=%x\n", fqd.fq_ctrl, + opts.fqd.fq_ctrl); + panic("fail"); + } + if (memcmp(&fqd.td, &opts.fqd.td, sizeof(fqd.td))) { + pr_err("queried td_thresh=%x:%x, should be=%x:%x\n", + fqd.td.exp, fqd.td.mant, + opts.fqd.td.exp, opts.fqd.td.mant); + panic("fail"); + } + ret = do_enqueues(fq, td_eq, 3); + BUG_ON(ret); + pr_info(" tdthresh: eq[0..2] complete\n"); + /* enqueues are flushed, so if Qman is going to throw an ERN, the irq + * assertion will already be on its way. */ + msleep(500); + BUG_ON(tdfq.got_ern); + pr_info(" tdthresh: eq <= thresh OK\n"); + ret = do_enqueues(fq, td_eq + 3, 1); + BUG_ON(ret); + pr_info(" tdthresh: eq[3] complete\n"); + /* enqueues are flushed, so if Qman is going to throw an ERN, the irq + * assertion will already be on its way. */ + msleep(500); + BUG_ON(tdfq.got_ern); + pr_info(" tdthresh: eq <= thresh OK\n"); + ret = do_enqueues(fq, td_eq + 4, 1); + BUG_ON(ret); + pr_info(" tdthresh: eq[4] complete\n"); + /* enqueues are flushed, so if Qman is going to throw an ERN, the irq + * assertion will already be on its way. */ + msleep(500); + BUG_ON(!tdfq.got_ern); + pr_info(" tdthresh: eq > thresh OK\n"); + ret = qman_volatile_dequeue(fq, + QMAN_VOLATILE_FLAG_WAIT | QMAN_VOLATILE_FLAG_FINISH, + QM_VDQCR_NUMFRAMES_TILLEMPTY); + BUG_ON(ret); + BUG_ON(tdfq.num_dqrr != 4); + ret = qman_retire_fq(fq, &flags); + BUG_ON(ret); + BUG_ON(flags); + ret = qman_oos_fq(fq); + BUG_ON(ret); +} + +/****************************/ +/* "ern code6" test (QMAN9) */ +/****************************/ + +/* Dummy FD to enqueue out-of-sequence and generate an ERN */ +static const struct qm_fd c6_eq = + QM_FD_FMT_29(0, 0xba, 0xdeadbeef, QM_FD_CONTIG_BIG, 1234); + +struct code6_fq { + struct qman_fq fq; + struct qm_mr_entry mr; + struct completion got_ern; +}; + +static void cb_ern_code6(struct qman_portal *p, struct qman_fq *__fq, + const struct qm_mr_entry *mr) +{ + struct code6_fq *c = (void *)__fq; + memcpy(&c->mr, mr, sizeof(*mr)); + complete(&c->got_ern); +} + +static void test_ern_code6(void) +{ + struct code6_fq c6fq = { + .fq = { + .cb = { + .ern = cb_ern_code6 + } + }, + .got_ern = COMPLETION_INITIALIZER(c6fq.got_ern) + }; + struct qman_fq *fq = &c6fq.fq; + struct qm_mcc_initfq opts = { + .we_mask = QM_INITFQ_WE_FQCTRL, + .fqd = { + .fq_ctrl = QM_FQCTRL_ORP + } + }; + u32 flags; + int ret = qman_create_fq(0, QMAN_FQ_FLAG_DYNAMIC_FQID, fq); + BUG_ON(ret); + /* leave it parked, and set it for local dequeue (loopback) */ + ret = qman_init_fq(fq, QMAN_INITFQ_FLAG_LOCAL, &opts); + BUG_ON(ret); + /* enqueue with ORP using a "too early" sequence number */ + ret = qman_enqueue_orp(fq, &c6_eq, + QMAN_ENQUEUE_FLAG_WAIT | QMAN_ENQUEUE_FLAG_WAIT_SYNC, fq, 5); + BUG_ON(ret); + pr_info(" code6: eq complete\n"); + ret = qman_retire_fq(fq, &flags); + BUG_ON(ret); + pr_info(" code6: retire complete, flags=%08x\n", flags); + BUG_ON(flags != QMAN_FQ_STATE_ORL); + wait_for_completion(&c6fq.got_ern); + pr_info(" code6: ERN, VERB=0x%02x, RC==0x%02x\n", + c6fq.mr.verb, c6fq.mr.ern.rc); + BUG_ON(c6fq.mr.verb & 0x20); + BUG_ON((c6fq.mr.ern.rc & QM_MR_RC_MASK) != QM_MR_RC_ORPWINDOW_RETIRED); + ret = qman_oos_fq(fq); + BUG_ON(ret); +} + +void qman_test_errata(void) +{ + pr_info("Testing Qman errata handling ...\n"); + test_tdthresh(); + test_ern_code6(); + pr_info(" ... SUCCESS!\n"); +} +#else +void qman_test_errata(void) +{ + pr_info("Qman errata-handling test disabled, waiting on model fix\n"); +} +#endif + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/qman_test_high.c +++ linux-3.13.0/drivers/staging/fsl_qbman/qman_test_high.c @@ -0,0 +1,222 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "qman_test.h" + +/*************/ +/* constants */ +/*************/ + +#define CGR_ID 27 +#define POOL_ID 2 +#define FQ_FLAGS QMAN_FQ_FLAG_DYNAMIC_FQID +#define NUM_ENQUEUES 10 +#define NUM_PARTIAL 4 +#define PORTAL_SDQCR (QM_SDQCR_SOURCE_CHANNELS | \ + QM_SDQCR_TYPE_PRIO_QOS | \ + QM_SDQCR_TOKEN_SET(0x98) | \ + QM_SDQCR_CHANNELS_DEDICATED | \ + QM_SDQCR_CHANNELS_POOL(POOL_ID)) +#define PORTAL_OPAQUE (void *)0xf00dbeef +#define VDQCR_FLAGS (QMAN_VOLATILE_FLAG_WAIT | QMAN_VOLATILE_FLAG_FINISH) + +/*************************************/ +/* Predeclarations (eg. for fq_base) */ +/*************************************/ + +static enum qman_cb_dqrr_result cb_dqrr(struct qman_portal *, + struct qman_fq *, + const struct qm_dqrr_entry *); +static void cb_ern(struct qman_portal *, struct qman_fq *, + const struct qm_mr_entry *); +static void cb_dc_ern(struct qman_portal *, struct qman_fq *, + const struct qm_mr_entry *); +static void cb_fqs(struct qman_portal *, struct qman_fq *, + const struct qm_mr_entry *); + +/***************/ +/* global vars */ +/***************/ + +static struct qm_fd fd, fd_dq; +static struct qman_fq fq_base = { + .cb.dqrr = cb_dqrr, + .cb.ern = cb_ern, + .cb.dc_ern = cb_dc_ern, + .cb.fqs = cb_fqs +}; +static DECLARE_WAIT_QUEUE_HEAD(waitqueue); +static int retire_complete, sdqcr_complete; + +/**********************/ +/* internal functions */ +/**********************/ + +/* Helpers for initialising and "incrementing" a frame descriptor */ +static void fd_init(struct qm_fd *__fd) +{ + qm_fd_addr_set64(__fd, 0xabdeadbeefLLU); + __fd->format = qm_fd_contig_big; + __fd->length29 = 0x0000ffff; + __fd->cmd = 0xfeedf00d; +} + +static void fd_inc(struct qm_fd *__fd) +{ + u64 t = qm_fd_addr_get64(__fd); + int z = t >> 40; + t <<= 1; + if (z) + t |= 1; + qm_fd_addr_set64(__fd, t); + __fd->length29--; + __fd->cmd++; +} + +/* The only part of the 'fd' we can't memcmp() is the ppid */ +static int fd_cmp(const struct qm_fd *a, const struct qm_fd *b) +{ + int r = (qm_fd_addr_get64(a) == qm_fd_addr_get64(b)) ? 0 : -1; + if (!r) + r = a->format - b->format; + if (!r) + r = a->opaque - b->opaque; + if (!r) + r = a->cmd - b->cmd; + return r; +} + +/********/ +/* test */ +/********/ + +static void do_enqueues(struct qman_fq *fq) +{ + unsigned int loop; + for (loop = 0; loop < NUM_ENQUEUES; loop++) { + if (qman_enqueue(fq, &fd, QMAN_ENQUEUE_FLAG_WAIT | + (((loop + 1) == NUM_ENQUEUES) ? + QMAN_ENQUEUE_FLAG_WAIT_SYNC : 0))) + panic("qman_enqueue() failed\n"); + fd_inc(&fd); + } +} + +void qman_test_high(void) +{ + int flags, res; + struct qman_fq *fq = &fq_base; + + pr_info("qman_test_high starting\n"); + fd_init(&fd); + fd_init(&fd_dq); + + /* Initialise (parked) FQ */ + if (qman_create_fq(0, FQ_FLAGS, fq)) + panic("qman_create_fq() failed\n"); + if (qman_init_fq(fq, QMAN_INITFQ_FLAG_LOCAL, NULL)) + panic("qman_init_fq() failed\n"); + + /* Do enqueues + VDQCR, twice. (Parked FQ) */ + do_enqueues(fq); + pr_info("VDQCR (till-empty);\n"); + if (qman_volatile_dequeue(fq, VDQCR_FLAGS, + QM_VDQCR_NUMFRAMES_TILLEMPTY)) + panic("qman_volatile_dequeue() failed\n"); + do_enqueues(fq); + pr_info("VDQCR (%d of %d);\n", NUM_PARTIAL, NUM_ENQUEUES); + if (qman_volatile_dequeue(fq, VDQCR_FLAGS, + QM_VDQCR_NUMFRAMES_SET(NUM_PARTIAL))) + panic("qman_volatile_dequeue() failed\n"); + pr_info("VDQCR (%d of %d);\n", NUM_ENQUEUES - NUM_PARTIAL, + NUM_ENQUEUES); + if (qman_volatile_dequeue(fq, VDQCR_FLAGS, + QM_VDQCR_NUMFRAMES_SET(NUM_ENQUEUES - NUM_PARTIAL))) + panic("qman_volatile_dequeue() failed\n"); + + do_enqueues(fq); + pr_info("scheduled dequeue (till-empty)\n"); + if (qman_schedule_fq(fq)) + panic("qman_schedule_fq() failed\n"); + wait_event(waitqueue, sdqcr_complete); + + /* Retire and OOS the FQ */ + res = qman_retire_fq(fq, &flags); + if (res < 0) + panic("qman_retire_fq() failed\n"); + wait_event(waitqueue, retire_complete); + if (flags & QMAN_FQ_STATE_BLOCKOOS) + panic("leaking frames\n"); + if (qman_oos_fq(fq)) + panic("qman_oos_fq() failed\n"); + qman_destroy_fq(fq, 0); + pr_info("qman_test_high finished\n"); +} + +static enum qman_cb_dqrr_result cb_dqrr(struct qman_portal *p, + struct qman_fq *fq, + const struct qm_dqrr_entry *dq) +{ + if (fd_cmp(&fd_dq, &dq->fd)) { + pr_err("BADNESS: dequeued frame doesn't match;\n"); + BUG(); + } + fd_inc(&fd_dq); + if (!(dq->stat & QM_DQRR_STAT_UNSCHEDULED) && !fd_cmp(&fd_dq, &fd)) { + sdqcr_complete = 1; + wake_up(&waitqueue); + } + return qman_cb_dqrr_consume; +} + +static void cb_ern(struct qman_portal *p, struct qman_fq *fq, + const struct qm_mr_entry *msg) +{ + panic("cb_ern() unimplemented"); +} + +static void cb_dc_ern(struct qman_portal *p, struct qman_fq *fq, + const struct qm_mr_entry *msg) +{ + panic("cb_dc_ern() unimplemented"); +} + +static void cb_fqs(struct qman_portal *p, struct qman_fq *fq, + const struct qm_mr_entry *msg) +{ + u8 verb = (msg->verb & QM_MR_VERB_TYPE_MASK); + if ((verb != QM_MR_VERB_FQRN) && (verb != QM_MR_VERB_FQRNI)) + panic("unexpected FQS message"); + pr_info("Retirement message received\n"); + retire_complete = 1; + wake_up(&waitqueue); +} + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/qman_test_hotpotato.c +++ linux-3.13.0/drivers/staging/fsl_qbman/qman_test_hotpotato.c @@ -0,0 +1,497 @@ +/* Copyright 2009-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include +#include +#include "qman_test.h" + +/* Algorithm: + * + * Each cpu will have HP_PER_CPU "handlers" set up, each of which incorporates + * an rx/tx pair of FQ objects (both of which are stashed on dequeue). The + * organisation of FQIDs is such that the HP_PER_CPU*NUM_CPUS handlers will + * shuttle a "hot potato" frame around them such that every forwarding action + * moves it from one cpu to another. (The use of more than one handler per cpu + * is to allow enough handlers/FQs to truly test the significance of caching - + * ie. when cache-expiries are occuring.) + * + * The "hot potato" frame content will be HP_NUM_WORDS*4 bytes in size, and the + * first and last words of the frame data will undergo a transformation step on + * each forwarding action. To achieve this, each handler will be assigned a + * 32-bit "mixer", that is produced using a 32-bit LFSR. When a frame is + * received by a handler, the mixer of the expected sender is XOR'd into all + * words of the entire frame, which is then validated against the original + * values. Then, before forwarding, the entire frame is XOR'd with the mixer of + * the current handler. Apart from validating that the frame is taking the + * expected path, this also provides some quasi-realistic overheads to each + * forwarding action - dereferencing *all* the frame data, computation, and + * conditional branching. There is a "special" handler designated to act as the + * instigator of the test by creating an enqueuing the "hot potato" frame, and + * to determine when the test has completed by counting HP_LOOPS iterations. + * + * Init phases: + * + * 1. prepare each cpu's 'hp_cpu' struct using on_each_cpu(,,1) and link them + * into 'hp_cpu_list'. Specifically, set processor_id, allocate HP_PER_CPU + * handlers and link-list them (but do no other handler setup). + * + * 2. scan over 'hp_cpu_list' HP_PER_CPU times, the first time sets each + * hp_cpu's 'iterator' to point to its first handler. With each loop, + * allocate rx/tx FQIDs and mixer values to the hp_cpu's iterator handler + * and advance the iterator for the next loop. This includes a final fixup, + * which connects the last handler to the first (and which is why phase 2 + * and 3 are separate). + * + * 3. scan over 'hp_cpu_list' HP_PER_CPU times, the first time sets each + * hp_cpu's 'iterator' to point to its first handler. With each loop, + * initialise FQ objects and advance the iterator for the next loop. + * Moreover, do this initialisation on the cpu it applies to so that Rx FQ + * initialisation targets the correct cpu. + */ + +/* helper to run something on all cpus (can't use on_each_cpu(), as that invokes + * the fn from irq context, which is too restrictive). */ +struct bstrap { + void (*fn)(void); + atomic_t started; +}; +static int bstrap_fn(void *__bstrap) +{ + struct bstrap *bstrap = __bstrap; + atomic_inc(&bstrap->started); + bstrap->fn(); + while (!kthread_should_stop()) + msleep(1); + return 0; +} +static int on_all_cpus(void (*fn)(void)) +{ + int cpu; + for_each_cpu(cpu, cpu_online_mask) { + struct bstrap bstrap = { + .fn = fn, + .started = ATOMIC_INIT(0) + }; + struct task_struct *k = kthread_create(bstrap_fn, &bstrap, + "hotpotato%d", cpu); + int ret; + if (IS_ERR(k)) + return -ENOMEM; + kthread_bind(k, cpu); + wake_up_process(k); + /* If we call kthread_stop() before the "wake up" has had an + * effect, then the thread may exit with -EINTR without ever + * running the function. So poll until it's started before + * requesting it to stop. */ + while (!atomic_read(&bstrap.started)) + msleep(10); + ret = kthread_stop(k); + if (ret) + return ret; + } + return 0; +} + +struct hp_handler { + + /* The following data is stashed when 'rx' is dequeued; */ + /* -------------- */ + /* The Rx FQ, dequeues of which will stash the entire hp_handler */ + struct qman_fq rx; + /* The Tx FQ we should forward to */ + struct qman_fq tx; + /* The value we XOR post-dequeue, prior to validating */ + u32 rx_mixer; + /* The value we XOR pre-enqueue, after validating */ + u32 tx_mixer; + /* what the hotpotato address should be on dequeue */ + dma_addr_t addr; + u32 *frame_ptr; + + /* The following data isn't (necessarily) stashed on dequeue; */ + /* -------------- */ + u32 fqid_rx, fqid_tx; + /* list node for linking us into 'hp_cpu' */ + struct list_head node; + /* Just to check ... */ + unsigned int processor_id; +} ____cacheline_aligned; + +struct hp_cpu { + /* identify the cpu we run on; */ + unsigned int processor_id; + /* root node for the per-cpu list of handlers */ + struct list_head handlers; + /* list node for linking us into 'hp_cpu_list' */ + struct list_head node; + /* when repeatedly scanning 'hp_list', each time linking the n'th + * handlers together, this is used as per-cpu iterator state */ + struct hp_handler *iterator; +}; + +/* Each cpu has one of these */ +static DEFINE_PER_CPU(struct hp_cpu, hp_cpus); + +/* links together the hp_cpu structs, in first-come first-serve order. */ +static LIST_HEAD(hp_cpu_list); +static spinlock_t hp_lock = __SPIN_LOCK_UNLOCKED(hp_lock); + +static unsigned int hp_cpu_list_length; + +/* the "special" handler, that starts and terminates the test. */ +static struct hp_handler *special_handler; +static int loop_counter; + +/* handlers are allocated out of this, so they're properly aligned. */ +static struct kmem_cache *hp_handler_slab; + +/* this is the frame data */ +static void *__frame_ptr; +static u32 *frame_ptr; +static dma_addr_t frame_dma; + +/* the main function waits on this */ +static DECLARE_WAIT_QUEUE_HEAD(queue); + +#define HP_PER_CPU 2 +#define HP_LOOPS 8 +/* 80 bytes, like a small ethernet frame, and bleeds into a second cacheline */ +#define HP_NUM_WORDS 80 +/* First word of the LFSR-based frame data */ +#define HP_FIRST_WORD 0xabbaf00d + +static inline u32 do_lfsr(u32 prev) +{ + return (prev >> 1) ^ (-(prev & 1u) & 0xd0000001u); +} + +static void allocate_frame_data(void) +{ + u32 lfsr = HP_FIRST_WORD; + int loop; + struct platform_device *pdev = platform_device_alloc("foobar", -1); + if (!pdev) + panic("platform_device_alloc() failed"); + if (platform_device_add(pdev)) + panic("platform_device_add() failed"); + __frame_ptr = kmalloc(4 * HP_NUM_WORDS, GFP_KERNEL); + if (!__frame_ptr) + panic("kmalloc() failed"); + frame_ptr = (void *)(((unsigned long)__frame_ptr + 63) & + ~(unsigned long)63); + for (loop = 0; loop < HP_NUM_WORDS; loop++) { + frame_ptr[loop] = lfsr; + lfsr = do_lfsr(lfsr); + } + frame_dma = dma_map_single(&pdev->dev, frame_ptr, 4 * HP_NUM_WORDS, + DMA_BIDIRECTIONAL); + platform_device_del(pdev); + platform_device_put(pdev); +} + +static void deallocate_frame_data(void) +{ + kfree(__frame_ptr); +} + +static inline void process_frame_data(struct hp_handler *handler, + const struct qm_fd *fd) +{ + u32 *p = handler->frame_ptr; + u32 lfsr = HP_FIRST_WORD; + int loop; + if (qm_fd_addr_get64(fd) != handler->addr) + panic("bad frame address"); + for (loop = 0; loop < HP_NUM_WORDS; loop++, p++) { + *p ^= handler->rx_mixer; + if (*p != lfsr) + panic("corrupt frame data"); + *p ^= handler->tx_mixer; + lfsr = do_lfsr(lfsr); + } +} + +static enum qman_cb_dqrr_result normal_dqrr(struct qman_portal *portal, + struct qman_fq *fq, + const struct qm_dqrr_entry *dqrr) +{ + struct hp_handler *handler = (struct hp_handler *)fq; + + process_frame_data(handler, &dqrr->fd); + if (qman_enqueue(&handler->tx, &dqrr->fd, 0)) + panic("qman_enqueue() failed"); + return qman_cb_dqrr_consume; +} + +static enum qman_cb_dqrr_result special_dqrr(struct qman_portal *portal, + struct qman_fq *fq, + const struct qm_dqrr_entry *dqrr) +{ + struct hp_handler *handler = (struct hp_handler *)fq; + + process_frame_data(handler, &dqrr->fd); + if (++loop_counter < HP_LOOPS) { + if (qman_enqueue(&handler->tx, &dqrr->fd, 0)) + panic("qman_enqueue() failed"); + } else { + pr_info("Received final (%dth) frame\n", loop_counter); + wake_up(&queue); + } + return qman_cb_dqrr_consume; +} + +static void create_per_cpu_handlers(void) +{ + struct hp_handler *handler; + int loop; + struct hp_cpu *hp_cpu = &__get_cpu_var(hp_cpus); + + hp_cpu->processor_id = smp_processor_id(); + spin_lock(&hp_lock); + list_add_tail(&hp_cpu->node, &hp_cpu_list); + hp_cpu_list_length++; + spin_unlock(&hp_lock); + INIT_LIST_HEAD(&hp_cpu->handlers); + for (loop = 0; loop < HP_PER_CPU; loop++) { + handler = kmem_cache_alloc(hp_handler_slab, GFP_KERNEL); + if (!handler) + panic("kmem_cache_alloc() failed"); + handler->processor_id = hp_cpu->processor_id; + handler->addr = frame_dma; + handler->frame_ptr = frame_ptr; + list_add_tail(&handler->node, &hp_cpu->handlers); + } +} + +static void destroy_per_cpu_handlers(void) +{ + struct list_head *loop, *tmp; + struct hp_cpu *hp_cpu = &__get_cpu_var(hp_cpus); + + spin_lock(&hp_lock); + list_del(&hp_cpu->node); + spin_unlock(&hp_lock); + list_for_each_safe(loop, tmp, &hp_cpu->handlers) { + u32 flags; + struct hp_handler *handler = list_entry(loop, struct hp_handler, + node); + if (qman_retire_fq(&handler->rx, &flags)) + panic("qman_retire_fq(rx) failed"); + BUG_ON(flags & QMAN_FQ_STATE_BLOCKOOS); + if (qman_oos_fq(&handler->rx)) + panic("qman_oos_fq(rx) failed"); + qman_destroy_fq(&handler->rx, 0); + qman_destroy_fq(&handler->tx, 0); + qm_fq_free(handler->fqid_rx); + list_del(&handler->node); + kmem_cache_free(hp_handler_slab, handler); + } +} + +static inline u8 num_cachelines(u32 offset) +{ + u8 res = (offset + (L1_CACHE_BYTES - 1)) + / (L1_CACHE_BYTES); + if (res > 3) + return 3; + return res; +} +#define STASH_DATA_CL \ + num_cachelines(HP_NUM_WORDS * 4) +#define STASH_CTX_CL \ + num_cachelines(offsetof(struct hp_handler,fqid_rx)) + +static void init_handler(void *__handler) +{ + struct qm_mcc_initfq opts; + struct hp_handler *handler = __handler; + BUG_ON(handler->processor_id != smp_processor_id()); + /* Set up rx */ + memset(&handler->rx, 0, sizeof(handler->rx)); + if (handler == special_handler) + handler->rx.cb.dqrr = special_dqrr; + else + handler->rx.cb.dqrr = normal_dqrr; + if (qman_create_fq(handler->fqid_rx, 0, &handler->rx)) + panic("qman_create_fq(rx) failed"); + memset(&opts, 0, sizeof(opts)); + opts.we_mask = QM_INITFQ_WE_FQCTRL | QM_INITFQ_WE_CONTEXTA; + opts.fqd.fq_ctrl = QM_FQCTRL_CTXASTASHING; + opts.fqd.context_a.stashing.data_cl = STASH_DATA_CL; + opts.fqd.context_a.stashing.context_cl = STASH_CTX_CL; + if (qman_init_fq(&handler->rx, QMAN_INITFQ_FLAG_SCHED | + QMAN_INITFQ_FLAG_LOCAL, &opts)) + panic("qman_init_fq(rx) failed"); + /* Set up tx */ + memset(&handler->tx, 0, sizeof(handler->tx)); + if (qman_create_fq(handler->fqid_tx, QMAN_FQ_FLAG_NO_MODIFY, + &handler->tx)) + panic("qman_create_fq(tx) failed"); +} + +static void init_phase2(void) +{ + int loop; + u32 fqid = 0; + u32 lfsr = 0xdeadbeef; + struct hp_cpu *hp_cpu; + struct hp_handler *handler; + + for (loop = 0; loop < HP_PER_CPU; loop++) { + list_for_each_entry(hp_cpu, &hp_cpu_list, node) { + if (!loop) + hp_cpu->iterator = list_first_entry( + &hp_cpu->handlers, + struct hp_handler, node); + else + hp_cpu->iterator = list_entry( + hp_cpu->iterator->node.next, + struct hp_handler, node); + /* Rx FQID is the previous handler's Tx FQID */ + hp_cpu->iterator->fqid_rx = fqid; + /* Allocate new FQID for Tx */ + fqid = qm_fq_new(); + if (!fqid) + panic("qm_fq_new() failed"); + hp_cpu->iterator->fqid_tx = fqid; + /* Rx mixer is the previous handler's Tx mixer */ + hp_cpu->iterator->rx_mixer = lfsr; + /* Get new mixer for Tx */ + lfsr = do_lfsr(lfsr); + hp_cpu->iterator->tx_mixer = lfsr; + } + } + /* Fix up the first handler (fqid_rx==0, rx_mixer=0xdeadbeef) */ + hp_cpu = list_first_entry(&hp_cpu_list, struct hp_cpu, node); + handler = list_first_entry(&hp_cpu->handlers, struct hp_handler, node); + BUG_ON((handler->fqid_rx != 0) || (handler->rx_mixer != 0xdeadbeef)); + handler->fqid_rx = fqid; + handler->rx_mixer = lfsr; + /* and tag it as our "special" handler */ + special_handler = handler; +} + +static void init_phase3(void) +{ + int loop; + struct hp_cpu *hp_cpu; + + for (loop = 0; loop < HP_PER_CPU; loop++) { + list_for_each_entry(hp_cpu, &hp_cpu_list, node) { + if (!loop) + hp_cpu->iterator = list_first_entry( + &hp_cpu->handlers, + struct hp_handler, node); + else + hp_cpu->iterator = list_entry( + hp_cpu->iterator->node.next, + struct hp_handler, node); + preempt_disable(); + if (hp_cpu->processor_id == smp_processor_id()) + init_handler(hp_cpu->iterator); + else + smp_call_function_single(hp_cpu->processor_id, + init_handler, hp_cpu->iterator, 1); + preempt_enable(); + } + } +} + +static void send_first_frame(void *ignore) +{ + u32 *p = special_handler->frame_ptr; + u32 lfsr = HP_FIRST_WORD; + int loop; + struct qm_fd fd; + + BUG_ON(special_handler->processor_id != smp_processor_id()); + memset(&fd, 0, sizeof(fd)); + qm_fd_addr_set64(&fd, special_handler->addr); + fd.format = qm_fd_contig_big; + fd.length29 = HP_NUM_WORDS * 4; + for (loop = 0; loop < HP_NUM_WORDS; loop++, p++) { + if (*p != lfsr) + panic("corrupt frame data"); + *p ^= special_handler->tx_mixer; + lfsr = do_lfsr(lfsr); + } + pr_info("Sending first frame\n"); + if (qman_enqueue(&special_handler->tx, &fd, 0)) + panic("qman_enqueue() failed"); +} + +void qman_test_hotpotato(void) +{ + if (cpumask_weight(cpu_online_mask) < 2) { + pr_info("qman_test_hotpotato, skip - only 1 CPU\n"); + return; + } + + pr_info("qman_test_hotpotato starting\n"); + + hp_cpu_list_length = 0; + loop_counter = 0; + hp_handler_slab = kmem_cache_create("hp_handler_slab", + sizeof(struct hp_handler), L1_CACHE_BYTES, + SLAB_HWCACHE_ALIGN, NULL); + if (!hp_handler_slab) + panic("kmem_cache_create() failed"); + + allocate_frame_data(); + + /* Init phase 1 */ + pr_info("Creating %d handlers per cpu...\n", HP_PER_CPU); + if (on_all_cpus(create_per_cpu_handlers)) + panic("on_each_cpu() failed"); + pr_info("Number of cpus: %d, total of %d handlers\n", + hp_cpu_list_length, hp_cpu_list_length * HP_PER_CPU); + + init_phase2(); + + init_phase3(); + + preempt_disable(); + if (special_handler->processor_id == smp_processor_id()) + send_first_frame(NULL); + else + smp_call_function_single(special_handler->processor_id, + send_first_frame, NULL, 1); + preempt_enable(); + + wait_event(queue, loop_counter == HP_LOOPS); + deallocate_frame_data(); + if (on_all_cpus(destroy_per_cpu_handlers)) + panic("on_each_cpu() failed"); + kmem_cache_destroy(hp_handler_slab); + pr_info("qman_test_hotpotato finished\n"); +} + --- linux-3.13.0.orig/drivers/staging/fsl_qbman/qman_utility.c +++ linux-3.13.0/drivers/staging/fsl_qbman/qman_utility.c @@ -0,0 +1,131 @@ +/* Copyright 2008-2011 Freescale Semiconductor, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Freescale Semiconductor nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * + * ALTERNATIVELY, this software may be distributed under the terms of the + * GNU General Public License ("GPL") as published by the Free Software + * Foundation, either version 2 of that License or (at your option) any + * later version. + * + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include "qman_private.h" + +/* ----------------- */ +/* --- FQID Pool --- */ + +struct qman_fqid_pool { + /* Base and size of the FQID range */ + u32 fqid_base; + u32 total; + /* Number of FQIDs currently "allocated" */ + u32 used; + /* Allocation optimisation. When 'usedfqid_base = fqid_start; + pool->total = num; + pool->used = 0; + pool->next = 0; + pool->bits = kmalloc(QNUM_BYTES(num), GFP_KERNEL); + if (!pool->bits) { + kfree(pool); + return NULL; + } + memset(pool->bits, 0, QNUM_BYTES(num)); + /* If num is not an even multiple of QLONG_BITS (or even 8, for + * byte-oriented searching) then we fill the trailing bits with 1, to + * make them look allocated (permanently). */ + for (i = num + 1; i < QNUM_BITS(num); i++) + set_bit(i, pool->bits); + return pool; +} +EXPORT_SYMBOL(qman_fqid_pool_create); + +int qman_fqid_pool_destroy(struct qman_fqid_pool *pool) +{ + int ret = pool->used; + kfree(pool->bits); + kfree(pool); + return ret; +} +EXPORT_SYMBOL(qman_fqid_pool_destroy); + +int qman_fqid_pool_alloc(struct qman_fqid_pool *pool, u32 *fqid) +{ + int ret; + if (pool->used == pool->total) + return -ENOMEM; + *fqid = pool->fqid_base + pool->next; + ret = test_and_set_bit(pool->next, pool->bits); + BUG_ON(ret); + if (++pool->used == pool->total) + return 0; + pool->next = find_next_zero_bit(pool->bits, pool->total, pool->next); + if (pool->next >= pool->total) + pool->next = find_first_zero_bit(pool->bits, pool->total); + BUG_ON(pool->next >= pool->total); + return 0; +} +EXPORT_SYMBOL(qman_fqid_pool_alloc); + +void qman_fqid_pool_free(struct qman_fqid_pool *pool, u32 fqid) +{ + int ret; + + fqid -= pool->fqid_base; + ret = test_and_clear_bit(fqid, pool->bits); + BUG_ON(!ret); + if (pool->used-- == pool->total) + pool->next = fqid; +} +EXPORT_SYMBOL(qman_fqid_pool_free); + +u32 qman_fqid_pool_used(struct qman_fqid_pool *pool) +{ + return pool->used; +} +EXPORT_SYMBOL(qman_fqid_pool_used); + --- linux-3.13.0.orig/drivers/staging/iio/adc/ad799x_core.c +++ linux-3.13.0/drivers/staging/iio/adc/ad799x_core.c @@ -393,7 +393,7 @@ }, { .type = IIO_EV_TYPE_THRESH, .dir = IIO_EV_DIR_FALLING, - .mask_separate = BIT(IIO_EV_INFO_VALUE), + .mask_separate = BIT(IIO_EV_INFO_VALUE) | BIT(IIO_EV_INFO_ENABLE), }, { .type = IIO_EV_TYPE_THRESH, @@ -588,7 +588,8 @@ return 0; error_free_irq: - free_irq(client->irq, indio_dev); + if (client->irq > 0) + free_irq(client->irq, indio_dev); error_cleanup_ring: ad799x_ring_cleanup(indio_dev); error_disable_reg: --- linux-3.13.0.orig/drivers/staging/iio/adc/mxs-lradc.c +++ linux-3.13.0/drivers/staging/iio/adc/mxs-lradc.c @@ -698,6 +698,7 @@ } /* if it is released, wait for the next touch via IRQ */ + lradc->cur_plate = LRADC_TOUCH; mxs_lradc_reg_clear(lradc, LRADC_CTRL1_TOUCH_DETECT_IRQ, LRADC_CTRL1); mxs_lradc_reg_set(lradc, LRADC_CTRL1_TOUCH_DETECT_IRQ_EN, LRADC_CTRL1); } --- linux-3.13.0.orig/drivers/staging/iio/impedance-analyzer/ad5933.c +++ linux-3.13.0/drivers/staging/iio/impedance-analyzer/ad5933.c @@ -629,7 +629,7 @@ struct iio_buffer *buffer; buffer = iio_kfifo_allocate(indio_dev); - if (buffer) + if (!buffer) return -ENOMEM; iio_device_attach_buffer(indio_dev, buffer); --- linux-3.13.0.orig/drivers/staging/lustre/lustre/llite/dir.c +++ linux-3.13.0/drivers/staging/lustre/lustre/llite/dir.c @@ -1086,7 +1086,7 @@ break; case Q_GETQUOTA: if (((type == USRQUOTA && - uid_eq(current_euid(), make_kuid(&init_user_ns, id))) || + !uid_eq(current_euid(), make_kuid(&init_user_ns, id))) || (type == GRPQUOTA && !in_egroup_p(make_kgid(&init_user_ns, id)))) && (!cfs_capable(CFS_CAP_SYS_ADMIN) || --- linux-3.13.0.orig/drivers/staging/lustre/lustre/ptlrpc/niobuf.c +++ linux-3.13.0/drivers/staging/lustre/lustre/ptlrpc/niobuf.c @@ -179,7 +179,7 @@ LNET_UNLINK, LNET_INS_AFTER, &me_h); if (rc != 0) { CERROR("%s: LNetMEAttach failed x"LPU64"/%d: rc = %d\n", - desc->bd_export->exp_obd->obd_name, xid, + desc->bd_import->imp_obd->obd_name, xid, posted_md, rc); break; } @@ -189,7 +189,7 @@ &desc->bd_mds[posted_md]); if (rc != 0) { CERROR("%s: LNetMDAttach failed x"LPU64"/%d: rc = %d\n", - desc->bd_export->exp_obd->obd_name, xid, + desc->bd_import->imp_obd->obd_name, xid, posted_md, rc); rc2 = LNetMEUnlink(me_h); LASSERT(rc2 == 0); @@ -219,7 +219,7 @@ /* Holler if peer manages to touch buffers before he knows the xid */ if (desc->bd_md_count != total_md) CWARN("%s: Peer %s touched %d buffers while I registered\n", - desc->bd_export->exp_obd->obd_name, libcfs_id2str(peer), + desc->bd_import->imp_obd->obd_name, libcfs_id2str(peer), total_md - desc->bd_md_count); spin_unlock(&desc->bd_lock); --- linux-3.13.0.orig/drivers/staging/netlogic/xlr_net.c +++ linux-3.13.0/drivers/staging/netlogic/xlr_net.c @@ -307,7 +307,7 @@ } static u16 xlr_net_select_queue(struct net_device *ndev, struct sk_buff *skb, - void *accel_priv) + void *accel_priv, select_queue_fallback_t fallback) { return (u16)smp_processor_id(); } --- linux-3.13.0.orig/drivers/staging/rtl8188eu/os_dep/os_intfs.c +++ linux-3.13.0/drivers/staging/rtl8188eu/os_dep/os_intfs.c @@ -653,7 +653,7 @@ } static u16 rtw_select_queue(struct net_device *dev, struct sk_buff *skb, - void *accel_priv) + void *accel_priv, select_queue_fallback_t fallback) { struct adapter *padapter = rtw_netdev_priv(dev); struct mlme_priv *pmlmepriv = &padapter->mlmepriv; --- linux-3.13.0.orig/drivers/staging/rtl8188eu/os_dep/usb_intf.c +++ linux-3.13.0/drivers/staging/rtl8188eu/os_dep/usb_intf.c @@ -53,8 +53,9 @@ {USB_DEVICE(USB_VENDER_ID_REALTEK, 0x0179)}, /* 8188ETV */ /*=== Customer ID ===*/ /****** 8188EUS ********/ - {USB_DEVICE(0x8179, 0x07B8)}, /* Abocom - Abocom */ + {USB_DEVICE(0x07b8, 0x8179)}, /* Abocom - Abocom */ {USB_DEVICE(0x2001, 0x330F)}, /* DLink DWA-125 REV D1 */ + {USB_DEVICE(0x2001, 0x3310)}, /* Dlink DWA-123 REV D1 */ {} /* Terminating entry */ }; --- linux-3.13.0.orig/drivers/staging/rtl8712/usb_intf.c +++ linux-3.13.0/drivers/staging/rtl8712/usb_intf.c @@ -353,6 +353,10 @@ } } +static const struct device_type wlan_type = { + .name = "wlan", +}; + /* * drv_init() - a device potentially for us * @@ -388,6 +392,7 @@ padapter->pusb_intf = pusb_intf; usb_set_intfdata(pusb_intf, pnetdev); SET_NETDEV_DEV(pnetdev, &pusb_intf->dev); + pnetdev->dev.type = &wlan_type; /* step 2. */ padapter->dvobj_init = &r8712_usb_dvobj_init; padapter->dvobj_deinit = &r8712_usb_dvobj_deinit; --- linux-3.13.0.orig/drivers/staging/rtl8821ae/Kconfig +++ linux-3.13.0/drivers/staging/rtl8821ae/Kconfig @@ -0,0 +1,11 @@ +config R8821AE + tristate "RealTek RTL8821AE Wireless LAN NIC driver" + depends on PCI && WLAN && MAC80211 + depends on m + select WIRELESS_EXT + select WEXT_PRIV + select EEPROM_93CX6 + select CRYPTO + default N + ---help--- + If built as a module, it will be called r8821ae.ko. --- linux-3.13.0.orig/drivers/staging/rtl8821ae/Makefile +++ linux-3.13.0/drivers/staging/rtl8821ae/Makefile @@ -0,0 +1,35 @@ +PCI_MAIN_OBJS := base.o \ + rc.o \ + debug.o \ + regd.o \ + efuse.o \ + cam.o \ + ps.o \ + core.o \ + stats.o \ + pci.o \ + +BT_COEXIST_OBJS:= btcoexist/halbtc8192e2ant.o\ + btcoexist/halbtc8723b1ant.o\ + btcoexist/halbtc8723b2ant.o\ + btcoexist/halbtcoutsrc.o\ + btcoexist/rtl_btc.o \ + +PCI_8821AE_HAL_OBJS:= \ + rtl8821ae/hw.o \ + rtl8821ae/table.o \ + rtl8821ae/sw.o \ + rtl8821ae/trx.o \ + rtl8821ae/led.o \ + rtl8821ae/fw.o \ + rtl8821ae/phy.o \ + rtl8821ae/rf.o \ + rtl8821ae/dm.o \ + rtl8821ae/pwrseq.o \ + rtl8821ae/pwrseqcmd.o \ + rtl8821ae/hal_btc.o \ + rtl8821ae/hal_bt_coexist.o \ + +rtl8821ae-objs += $(BT_COEXIST_OBJS) $(PCI_MAIN_OBJS) $(PCI_8821AE_HAL_OBJS) + +obj-$(CONFIG_R8821AE) += rtl8821ae.o --- linux-3.13.0.orig/drivers/staging/rtl8821ae/TODO +++ linux-3.13.0/drivers/staging/rtl8821ae/TODO @@ -0,0 +1,10 @@ +Realtek 8821AE PCI wifi driver TODO: + - remove built-in btcoexist module when the "real" one gets upstream + - remove built-in rtlwifi code by porting driver to use the "real" one + in the drivers/net/ directory. + - fix up coding style issues + +Please send any patches for this driver to: + Greg Kroah-Hartman +and the mailing list. + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/base.c +++ linux-3.13.0/drivers/staging/rtl8821ae/base.c @@ -0,0 +1,1873 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include +#include +#include "wifi.h" +#include "rc.h" +#include "base.h" +#include "efuse.h" +#include "cam.h" +#include "ps.h" +#include "regd.h" +#include "pci.h" + +/* + *NOTICE!!!: This file will be very big, we hsould + *keep it clear under follwing roles: + * + *This file include follwing part, so, if you add new + *functions into this file, please check which part it + *should includes. or check if you should add new part + *for this file: + * + *1) mac80211 init functions + *2) tx information functions + *3) functions called by core.c + *4) wq & timer callback functions + *5) frame process functions + *6) IOT functions + *7) sysfs functions + *8) vif functions + *9) ... + */ + +/********************************************************* + * + * mac80211 init functions + * + *********************************************************/ +static struct ieee80211_channel rtl_channeltable_2g[] = { + {.center_freq = 2412,.hw_value = 1,}, + {.center_freq = 2417,.hw_value = 2,}, + {.center_freq = 2422,.hw_value = 3,}, + {.center_freq = 2427,.hw_value = 4,}, + {.center_freq = 2432,.hw_value = 5,}, + {.center_freq = 2437,.hw_value = 6,}, + {.center_freq = 2442,.hw_value = 7,}, + {.center_freq = 2447,.hw_value = 8,}, + {.center_freq = 2452,.hw_value = 9,}, + {.center_freq = 2457,.hw_value = 10,}, + {.center_freq = 2462,.hw_value = 11,}, + {.center_freq = 2467,.hw_value = 12,}, + {.center_freq = 2472,.hw_value = 13,}, + {.center_freq = 2484,.hw_value = 14,}, +}; + +static struct ieee80211_channel rtl_channeltable_5g[] = { + {.center_freq = 5180,.hw_value = 36,}, + {.center_freq = 5200,.hw_value = 40,}, + {.center_freq = 5220,.hw_value = 44,}, + {.center_freq = 5240,.hw_value = 48,}, + {.center_freq = 5260,.hw_value = 52,}, + {.center_freq = 5280,.hw_value = 56,}, + {.center_freq = 5300,.hw_value = 60,}, + {.center_freq = 5320,.hw_value = 64,}, + {.center_freq = 5500,.hw_value = 100,}, + {.center_freq = 5520,.hw_value = 104,}, + {.center_freq = 5540,.hw_value = 108,}, + {.center_freq = 5560,.hw_value = 112,}, + {.center_freq = 5580,.hw_value = 116,}, + {.center_freq = 5600,.hw_value = 120,}, + {.center_freq = 5620,.hw_value = 124,}, + {.center_freq = 5640,.hw_value = 128,}, + {.center_freq = 5660,.hw_value = 132,}, + {.center_freq = 5680,.hw_value = 136,}, + {.center_freq = 5700,.hw_value = 140,}, + {.center_freq = 5745,.hw_value = 149,}, + {.center_freq = 5765,.hw_value = 153,}, + {.center_freq = 5785,.hw_value = 157,}, + {.center_freq = 5805,.hw_value = 161,}, + {.center_freq = 5825,.hw_value = 165,}, +}; + +static struct ieee80211_rate rtl_ratetable_2g[] = { + {.bitrate = 10,.hw_value = 0x00,}, + {.bitrate = 20,.hw_value = 0x01,}, + {.bitrate = 55,.hw_value = 0x02,}, + {.bitrate = 110,.hw_value = 0x03,}, + {.bitrate = 60,.hw_value = 0x04,}, + {.bitrate = 90,.hw_value = 0x05,}, + {.bitrate = 120,.hw_value = 0x06,}, + {.bitrate = 180,.hw_value = 0x07,}, + {.bitrate = 240,.hw_value = 0x08,}, + {.bitrate = 360,.hw_value = 0x09,}, + {.bitrate = 480,.hw_value = 0x0a,}, + {.bitrate = 540,.hw_value = 0x0b,}, +}; + +static struct ieee80211_rate rtl_ratetable_5g[] = { + {.bitrate = 60,.hw_value = 0x04,}, + {.bitrate = 90,.hw_value = 0x05,}, + {.bitrate = 120,.hw_value = 0x06,}, + {.bitrate = 180,.hw_value = 0x07,}, + {.bitrate = 240,.hw_value = 0x08,}, + {.bitrate = 360,.hw_value = 0x09,}, + {.bitrate = 480,.hw_value = 0x0a,}, + {.bitrate = 540,.hw_value = 0x0b,}, +}; + +static const struct ieee80211_supported_band rtl_band_2ghz = { + .band = IEEE80211_BAND_2GHZ, + + .channels = rtl_channeltable_2g, + .n_channels = ARRAY_SIZE(rtl_channeltable_2g), + + .bitrates = rtl_ratetable_2g, + .n_bitrates = ARRAY_SIZE(rtl_ratetable_2g), + + .ht_cap = {0}, +}; + +static struct ieee80211_supported_band rtl_band_5ghz = { + .band = IEEE80211_BAND_5GHZ, + + .channels = rtl_channeltable_5g, + .n_channels = ARRAY_SIZE(rtl_channeltable_5g), + + .bitrates = rtl_ratetable_5g, + .n_bitrates = ARRAY_SIZE(rtl_ratetable_5g), + + .ht_cap = {0}, +}; + +static const u8 tid_to_ac[] = { + 2, /* IEEE80211_AC_BE */ + 3, /* IEEE80211_AC_BK */ + 3, /* IEEE80211_AC_BK */ + 2, /* IEEE80211_AC_BE */ + 1, /* IEEE80211_AC_VI */ + 1, /* IEEE80211_AC_VI */ + 0, /* IEEE80211_AC_VO */ + 0, /* IEEE80211_AC_VO */ +}; + +u8 rtl_tid_to_ac(struct ieee80211_hw *hw, u8 tid) +{ + return tid_to_ac[tid]; +} + +static void _rtl_init_hw_ht_capab(struct ieee80211_hw *hw, + struct ieee80211_sta_ht_cap *ht_cap) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + ht_cap->ht_supported = true; + ht_cap->cap = IEEE80211_HT_CAP_SUP_WIDTH_20_40 | + IEEE80211_HT_CAP_SGI_40 | + IEEE80211_HT_CAP_SGI_20 | + IEEE80211_HT_CAP_DSSSCCK40 | IEEE80211_HT_CAP_MAX_AMSDU; + + if (rtlpriv->rtlhal.disable_amsdu_8k) + ht_cap->cap &= ~IEEE80211_HT_CAP_MAX_AMSDU; + + /* + *Maximum length of AMPDU that the STA can receive. + *Length = 2 ^ (13 + max_ampdu_length_exp) - 1 (octets) + */ + ht_cap->ampdu_factor = IEEE80211_HT_MAX_AMPDU_64K; + + /*Minimum MPDU start spacing , */ + ht_cap->ampdu_density = IEEE80211_HT_MPDU_DENSITY_16; + + ht_cap->mcs.tx_params = IEEE80211_HT_MCS_TX_DEFINED; + + /* + *hw->wiphy->bands[IEEE80211_BAND_2GHZ] + *base on ant_num + *rx_mask: RX mask + *if rx_ant =1 rx_mask[0]=0xff;==>MCS0-MCS7 + *if rx_ant =2 rx_mask[1]=0xff;==>MCS8-MCS15 + *if rx_ant >=3 rx_mask[2]=0xff; + *if BW_40 rx_mask[4]=0x01; + *highest supported RX rate + */ + if (rtlpriv->dm.supp_phymode_switch) { + RT_TRACE(COMP_INIT, DBG_EMERG, ("Support phy mode switch\n")); + + ht_cap->mcs.rx_mask[0] = 0xFF; + ht_cap->mcs.rx_mask[1] = 0xFF; + ht_cap->mcs.rx_mask[4] = 0x01; + + ht_cap->mcs.rx_highest = MAX_BIT_RATE_40MHZ_MCS15; + } else { + if (get_rf_type(rtlphy) == RF_1T2R || + get_rf_type(rtlphy) == RF_2T2R) { + + RT_TRACE(COMP_INIT, DBG_DMESG, ("1T2R or 2T2R\n")); + + ht_cap->mcs.rx_mask[0] = 0xFF; + ht_cap->mcs.rx_mask[1] = 0xFF; + ht_cap->mcs.rx_mask[4] = 0x01; + + ht_cap->mcs.rx_highest = MAX_BIT_RATE_40MHZ_MCS15; + } else if (get_rf_type(rtlphy) == RF_1T1R) { + + RT_TRACE(COMP_INIT, DBG_DMESG, ("1T1R\n")); + + ht_cap->mcs.rx_mask[0] = 0xFF; + ht_cap->mcs.rx_mask[1] = 0x00; + ht_cap->mcs.rx_mask[4] = 0x01; + + ht_cap->mcs.rx_highest = MAX_BIT_RATE_40MHZ_MCS7; + } + } +} + +static void _rtl_init_mac80211(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + struct rtl_mac *rtlmac = rtl_mac(rtl_priv(hw)); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct ieee80211_supported_band *sband; + + + if (rtlhal->macphymode == SINGLEMAC_SINGLEPHY && + rtlhal->bandset == BAND_ON_BOTH) { + /* 1: 2.4 G bands */ + /* <1> use mac->bands as mem for hw->wiphy->bands */ + sband = &(rtlmac->bands[IEEE80211_BAND_2GHZ]); + + /* <2> set hw->wiphy->bands[IEEE80211_BAND_2GHZ] + * to default value(1T1R) */ + memcpy(&(rtlmac->bands[IEEE80211_BAND_2GHZ]), &rtl_band_2ghz, + sizeof(struct ieee80211_supported_band)); + + /* <3> init ht cap base on ant_num */ + _rtl_init_hw_ht_capab(hw, &sband->ht_cap); + + /* <4> set mac->sband to wiphy->sband */ + hw->wiphy->bands[IEEE80211_BAND_2GHZ] = sband; + + /* 2: 5 G bands */ + /* <1> use mac->bands as mem for hw->wiphy->bands */ + sband = &(rtlmac->bands[IEEE80211_BAND_5GHZ]); + + /* <2> set hw->wiphy->bands[IEEE80211_BAND_5GHZ] + * to default value(1T1R) */ + memcpy(&(rtlmac->bands[IEEE80211_BAND_5GHZ]), &rtl_band_5ghz, + sizeof(struct ieee80211_supported_band)); + + /* <3> init ht cap base on ant_num */ + _rtl_init_hw_ht_capab(hw, &sband->ht_cap); + + /* <4> set mac->sband to wiphy->sband */ + hw->wiphy->bands[IEEE80211_BAND_5GHZ] = sband; + } else { + if (rtlhal->current_bandtype == BAND_ON_2_4G) { + /* <1> use mac->bands as mem for hw->wiphy->bands */ + sband = &(rtlmac->bands[IEEE80211_BAND_2GHZ]); + + /* <2> set hw->wiphy->bands[IEEE80211_BAND_2GHZ] + * to default value(1T1R) */ + memcpy(&(rtlmac->bands[IEEE80211_BAND_2GHZ]), + &rtl_band_2ghz, + sizeof(struct ieee80211_supported_band)); + + /* <3> init ht cap base on ant_num */ + _rtl_init_hw_ht_capab(hw, &sband->ht_cap); + + /* <4> set mac->sband to wiphy->sband */ + hw->wiphy->bands[IEEE80211_BAND_2GHZ] = sband; + } else if (rtlhal->current_bandtype == BAND_ON_5G) { + /* <1> use mac->bands as mem for hw->wiphy->bands */ + sband = &(rtlmac->bands[IEEE80211_BAND_5GHZ]); + + /* <2> set hw->wiphy->bands[IEEE80211_BAND_5GHZ] + * to default value(1T1R) */ + memcpy(&(rtlmac->bands[IEEE80211_BAND_5GHZ]), + &rtl_band_5ghz, + sizeof(struct ieee80211_supported_band)); + + /* <3> init ht cap base on ant_num */ + _rtl_init_hw_ht_capab(hw, &sband->ht_cap); + + /* <4> set mac->sband to wiphy->sband */ + hw->wiphy->bands[IEEE80211_BAND_5GHZ] = sband; + } else { + RT_TRACE(COMP_INIT, DBG_EMERG, ("Err BAND %d\n", + rtlhal->current_bandtype)); + } + } + /* <5> set hw caps */ + hw->flags = IEEE80211_HW_SIGNAL_DBM | + IEEE80211_HW_RX_INCLUDES_FCS | +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,4,0)) + IEEE80211_HW_BEACON_FILTER | +#endif + IEEE80211_HW_AMPDU_AGGREGATION | + IEEE80211_HW_REPORTS_TX_ACK_STATUS | + IEEE80211_HW_CONNECTION_MONITOR | + /* IEEE80211_HW_SUPPORTS_CQM_RSSI | */ + IEEE80211_HW_MFP_CAPABLE | 0; + + /* swlps or hwlps has been set in diff chip in init_sw_vars */ + if (rtlpriv->psc.b_swctrl_lps) + hw->flags |= IEEE80211_HW_SUPPORTS_PS | + IEEE80211_HW_PS_NULLFUNC_STACK | + /* IEEE80211_HW_SUPPORTS_DYNAMIC_PS | */ + 0; +/**/ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,37)) + hw->wiphy->interface_modes = + BIT(NL80211_IFTYPE_AP) | + BIT(NL80211_IFTYPE_STATION) | + BIT(NL80211_IFTYPE_ADHOC) | + BIT(NL80211_IFTYPE_MESH_POINT) | + BIT(NL80211_IFTYPE_P2P_CLIENT) | + BIT(NL80211_IFTYPE_P2P_GO); +#else +/**/ + hw->wiphy->interface_modes = + BIT(NL80211_IFTYPE_AP) | + BIT(NL80211_IFTYPE_STATION) | + BIT(NL80211_IFTYPE_ADHOC) | + BIT(NL80211_IFTYPE_MESH_POINT) ; +/**/ +#endif +/**/ +#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,39)) + hw->wiphy->flags |= WIPHY_FLAG_IBSS_RSN; +#endif + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0)) + hw->wiphy->flags |= WIPHY_FLAG_HAS_REMAIN_ON_CHANNEL; +#endif + + hw->wiphy->rts_threshold = 2347; + + hw->queues = AC_MAX; + hw->extra_tx_headroom = RTL_TX_HEADER_SIZE; + + /* TODO: Correct this value for our hw */ + /* TODO: define these hard code value */ + hw->max_listen_interval = 10; + hw->max_rate_tries = 4; + /* hw->max_rates = 1; */ + hw->sta_data_size = sizeof(struct rtl_sta_info); +#ifdef VIF_TODO + hw->vif_data_size = sizeof(struct rtl_vif_info); +#endif + + /* <6> mac address */ + if (is_valid_ether_addr(rtlefuse->dev_addr)) { + SET_IEEE80211_PERM_ADDR(hw, rtlefuse->dev_addr); + } else { + u8 rtlmac[] = { 0x00, 0xe0, 0x4c, 0x81, 0x92, 0x00 }; + get_random_bytes((rtlmac + (ETH_ALEN - 1)), 1); + SET_IEEE80211_PERM_ADDR(hw, rtlmac); + } + +} + +static void _rtl_init_deferred_work(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + /* <1> timer */ + init_timer(&rtlpriv->works.watchdog_timer); + setup_timer(&rtlpriv->works.watchdog_timer, + rtl_watch_dog_timer_callback, (unsigned long)hw); + init_timer(&rtlpriv->works.dualmac_easyconcurrent_retrytimer); + setup_timer(&rtlpriv->works.dualmac_easyconcurrent_retrytimer, + rtl_easy_concurrent_retrytimer_callback, (unsigned long)hw); + /* <2> work queue */ + rtlpriv->works.hw = hw; +/**/ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,37)) +/**/ + rtlpriv->works.rtl_wq = alloc_workqueue(rtlpriv->cfg->name, 0, 0); +/**/ +#else + rtlpriv->works.rtl_wq = create_workqueue(rtlpriv->cfg->name); +#endif +/**/ + INIT_DELAYED_WORK(&rtlpriv->works.watchdog_wq, + (void *)rtl_watchdog_wq_callback); + INIT_DELAYED_WORK(&rtlpriv->works.ips_nic_off_wq, + (void *)rtl_ips_nic_off_wq_callback); + INIT_DELAYED_WORK(&rtlpriv->works.ps_work, + (void *)rtl_swlps_wq_callback); + INIT_DELAYED_WORK(&rtlpriv->works.ps_rfon_wq, + (void *)rtl_swlps_rfon_wq_callback); + INIT_DELAYED_WORK(&rtlpriv->works.fwevt_wq, + (void *)rtl_fwevt_wq_callback); + +} + +void rtl_deinit_deferred_work(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + del_timer_sync(&rtlpriv->works.watchdog_timer); + + cancel_delayed_work(&rtlpriv->works.watchdog_wq); + cancel_delayed_work(&rtlpriv->works.ips_nic_off_wq); + cancel_delayed_work(&rtlpriv->works.ps_work); + cancel_delayed_work(&rtlpriv->works.ps_rfon_wq); + cancel_delayed_work(&rtlpriv->works.fwevt_wq); +} + +void rtl_init_rfkill(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + bool radio_state; + bool blocked; + u8 valid = 0; + + /*set init state to on */ + rtlpriv->rfkill.rfkill_state = 1; + wiphy_rfkill_set_hw_state(hw->wiphy, 0); + + radio_state = rtlpriv->cfg->ops->radio_onoff_checking(hw, &valid); + + if (valid) { + printk(KERN_INFO "rtlwifi: wireless switch is %s\n", + rtlpriv->rfkill.rfkill_state ? "on" : "off"); + + rtlpriv->rfkill.rfkill_state = radio_state; + + blocked = (rtlpriv->rfkill.rfkill_state == 1) ? 0 : 1; + wiphy_rfkill_set_hw_state(hw->wiphy, blocked); + } + + wiphy_rfkill_start_polling(hw->wiphy); +} + +void rtl_deinit_rfkill(struct ieee80211_hw *hw) +{ + wiphy_rfkill_stop_polling(hw->wiphy); +} + +#ifdef VIF_TODO +static void rtl_init_vif(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + INIT_LIST_HEAD(&rtlpriv->vif_priv.vif_list); + + rtlpriv->vif_priv.vifs = 0; +} +#endif + +int rtl_init_core(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *rtlmac = rtl_mac(rtl_priv(hw)); + + /* <1> init mac80211 */ + _rtl_init_mac80211(hw); + rtlmac->hw = hw; + rtlmac->link_state = MAC80211_NOLINK; + + /* <2> rate control register */ + hw->rate_control_algorithm = "rtl_rc"; + + /* + * <3> init CRDA must come after init + * mac80211 hw in _rtl_init_mac80211. + */ + if (rtl_regd_init(hw, rtl_reg_notifier)) { + RT_TRACE(COMP_ERR, DBG_EMERG, ("REGD init failed\n")); + return 1; + } + + /* <4> locks */ + mutex_init(&rtlpriv->locks.conf_mutex); + spin_lock_init(&rtlpriv->locks.ips_lock); + spin_lock_init(&rtlpriv->locks.irq_th_lock); + spin_lock_init(&rtlpriv->locks.h2c_lock); + spin_lock_init(&rtlpriv->locks.rf_ps_lock); + spin_lock_init(&rtlpriv->locks.rf_lock); + spin_lock_init(&rtlpriv->locks.lps_lock); + spin_lock_init(&rtlpriv->locks.waitq_lock); + spin_lock_init(&rtlpriv->locks.entry_list_lock); + spin_lock_init(&rtlpriv->locks.cck_and_rw_pagea_lock); + spin_lock_init(&rtlpriv->locks.check_sendpkt_lock); + spin_lock_init(&rtlpriv->locks.fw_ps_lock); + spin_lock_init(&rtlpriv->locks.iqk_lock); + /* <5> init list */ + INIT_LIST_HEAD(&rtlpriv->entry_list); + + /* <6> init deferred work */ + _rtl_init_deferred_work(hw); + + /* <7> */ +#ifdef VIF_TODO + rtl_init_vif(hw); +#endif + + return 0; +} + +void rtl_deinit_core(struct ieee80211_hw *hw) +{ +} + +void rtl_init_rx_config(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + + rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_RCR, (u8 *) (&mac->rx_conf)); +} + +/********************************************************* + * + * tx information functions + * + *********************************************************/ +static void _rtl_qurey_shortpreamble_mode(struct ieee80211_hw *hw, + struct rtl_tcb_desc *tcb_desc, + struct ieee80211_tx_info *info) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 rate_flag = info->control.rates[0].flags; + + tcb_desc->use_shortpreamble = false; + + /* 1M can only use Long Preamble. 11B spec */ + if (tcb_desc->hw_rate == rtlpriv->cfg->maps[RTL_RC_CCK_RATE1M]) + return; + else if (rate_flag & IEEE80211_TX_RC_USE_SHORT_PREAMBLE) + tcb_desc->use_shortpreamble = true; + + return; +} + +static void _rtl_query_shortgi(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, + struct rtl_tcb_desc *tcb_desc, + struct ieee80211_tx_info *info) +{ + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + u8 rate_flag = info->control.rates[0].flags; + u8 sgi_40 = 0, sgi_20 = 0, bw_40 = 0; + tcb_desc->use_shortgi = false; + + if (sta == NULL) + return; + + sgi_40 = sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_40; + sgi_20 = sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_20; + + if (!(sta->ht_cap.ht_supported)) + return; + + if (!sgi_40 && !sgi_20) + return; + + if (mac->opmode == NL80211_IFTYPE_STATION) + bw_40 = mac->bw_40; + else if (mac->opmode == NL80211_IFTYPE_AP || + mac->opmode == NL80211_IFTYPE_ADHOC || + mac->opmode == NL80211_IFTYPE_MESH_POINT) + bw_40 = sta->ht_cap.cap & IEEE80211_HT_CAP_SUP_WIDTH_20_40; + + if ((bw_40 == true) && sgi_40) + tcb_desc->use_shortgi = true; + else if ((bw_40 == false) && sgi_20) + tcb_desc->use_shortgi = true; + + if (!(rate_flag & IEEE80211_TX_RC_SHORT_GI)) + tcb_desc->use_shortgi = false; +} + +static void _rtl_query_protection_mode(struct ieee80211_hw *hw, + struct rtl_tcb_desc *tcb_desc, + struct ieee80211_tx_info *info) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 rate_flag = info->control.rates[0].flags; + + /* Common Settings */ + tcb_desc->b_rts_stbc = false; + tcb_desc->b_cts_enable = false; + tcb_desc->rts_sc = 0; + tcb_desc->b_rts_bw = false; + tcb_desc->b_rts_use_shortpreamble = false; + tcb_desc->b_rts_use_shortgi = false; + + if (rate_flag & IEEE80211_TX_RC_USE_CTS_PROTECT) { + /* Use CTS-to-SELF in protection mode. */ + tcb_desc->b_rts_enable = true; + tcb_desc->b_cts_enable = true; + tcb_desc->rts_rate = rtlpriv->cfg->maps[RTL_RC_OFDM_RATE24M]; + } else if (rate_flag & IEEE80211_TX_RC_USE_RTS_CTS) { + /* Use RTS-CTS in protection mode. */ + tcb_desc->b_rts_enable = true; + tcb_desc->rts_rate = rtlpriv->cfg->maps[RTL_RC_OFDM_RATE24M]; + } +} + +static void _rtl_txrate_selectmode(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, + struct rtl_tcb_desc *tcb_desc) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_sta_info *sta_entry = NULL; + u8 ratr_index = 7; + + if (sta) { + sta_entry = (struct rtl_sta_info *) sta->drv_priv; + ratr_index = sta_entry->ratr_index; + } + if (!tcb_desc->disable_ratefallback || !tcb_desc->use_driver_rate) { + if (mac->opmode == NL80211_IFTYPE_STATION) { + tcb_desc->ratr_index = 0; + } else if (mac->opmode == NL80211_IFTYPE_ADHOC || + mac->opmode == NL80211_IFTYPE_MESH_POINT) { + if (tcb_desc->b_multicast || tcb_desc->b_broadcast) { + tcb_desc->hw_rate = + rtlpriv->cfg->maps[RTL_RC_CCK_RATE2M]; + tcb_desc->use_driver_rate = 1; + tcb_desc->ratr_index = RATR_INX_WIRELESS_MC; + } else { + tcb_desc->ratr_index = ratr_index; + } + } else if (mac->opmode == NL80211_IFTYPE_AP) { + tcb_desc->ratr_index = ratr_index; + } + } + + if (rtlpriv->dm.b_useramask) { + tcb_desc->ratr_index = ratr_index; + /* TODO we will differentiate adhoc and station futrue */ + if (mac->opmode == NL80211_IFTYPE_STATION || + mac->opmode == NL80211_IFTYPE_MESH_POINT) { + tcb_desc->mac_id = 0; + + if (mac->mode == WIRELESS_MODE_N_24G) { + tcb_desc->ratr_index = RATR_INX_WIRELESS_NGB; + } else if (mac->mode == WIRELESS_MODE_N_5G) { + tcb_desc->ratr_index = RATR_INX_WIRELESS_NG; + } else if (mac->mode & WIRELESS_MODE_G) { + tcb_desc->ratr_index = RATR_INX_WIRELESS_GB; + } else if (mac->mode & WIRELESS_MODE_B) { + tcb_desc->ratr_index = RATR_INX_WIRELESS_B; + } else if (mac->mode & WIRELESS_MODE_A) { + tcb_desc->ratr_index = RATR_INX_WIRELESS_G; + } + } else if (mac->opmode == NL80211_IFTYPE_AP || + mac->opmode == NL80211_IFTYPE_ADHOC) { + if (NULL != sta) { + if (sta->aid > 0) { + tcb_desc->mac_id = sta->aid + 1; + } else { + tcb_desc->mac_id = 1; + } + } else { + tcb_desc->mac_id = 0; + } + } + } +} + +static void _rtl_query_bandwidth_mode(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, + struct rtl_tcb_desc *tcb_desc) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + + tcb_desc->b_packet_bw = false; + if (!sta) + return; + if (mac->opmode == NL80211_IFTYPE_AP || + mac->opmode == NL80211_IFTYPE_ADHOC || + mac->opmode == NL80211_IFTYPE_MESH_POINT) { + if (!(sta->ht_cap.ht_supported) || + !(sta->ht_cap.cap & IEEE80211_HT_CAP_SUP_WIDTH_20_40)) + return; + } else if (mac->opmode == NL80211_IFTYPE_STATION) { + if (!mac->bw_40 || !(sta->ht_cap.ht_supported)) + return; + } + if (tcb_desc->b_multicast || tcb_desc->b_broadcast) + return; + + /*use legency rate, shall use 20MHz */ + if (tcb_desc->hw_rate <= rtlpriv->cfg->maps[RTL_RC_OFDM_RATE54M]) + return; + + tcb_desc->b_packet_bw = true; +} + +static u8 _rtl_get_highest_n_rate(struct ieee80211_hw *hw, + struct ieee80211_sta *sta) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 hw_rate; + + if ((get_rf_type(rtlphy) == RF_2T2R) && (sta->ht_cap.mcs.rx_mask[1]!=0)) + hw_rate = rtlpriv->cfg->maps[RTL_RC_HT_RATEMCS15]; + else + hw_rate = rtlpriv->cfg->maps[RTL_RC_HT_RATEMCS7]; + + return hw_rate; +} + +void rtl_get_tcb_desc(struct ieee80211_hw *hw, + struct ieee80211_tx_info *info, + struct ieee80211_sta *sta, + struct sk_buff *skb, struct rtl_tcb_desc *tcb_desc) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *rtlmac = rtl_mac(rtl_priv(hw)); + struct ieee80211_hdr *hdr = rtl_get_hdr(skb); + struct ieee80211_rate *txrate; + u16 fc = rtl_get_fc(skb); + + txrate = ieee80211_get_tx_rate(hw, info); + if (txrate != NULL) + tcb_desc->hw_rate = txrate->hw_value; + + if (ieee80211_is_data(fc)) { + /* + *we set data rate INX 0 + *in rtl_rc.c if skb is special data or + *mgt which need low data rate. + */ + + /* + *So tcb_desc->hw_rate is just used for + *special data and mgt frames + */ + if (info->control.rates[0].idx == 0 || + ieee80211_is_nullfunc(fc)) { + tcb_desc->use_driver_rate = true; + tcb_desc->ratr_index = RATR_INX_WIRELESS_MC; + + tcb_desc->disable_ratefallback = 1; + } else { + /* + *because hw will nerver use hw_rate + *when tcb_desc->use_driver_rate = false + *so we never set highest N rate here, + *and N rate will all be controled by FW + *when tcb_desc->use_driver_rate = false + */ + if (sta && (sta->ht_cap.ht_supported)) { + tcb_desc->hw_rate = _rtl_get_highest_n_rate(hw, sta); + } else { + if(rtlmac->mode == WIRELESS_MODE_B) { + tcb_desc->hw_rate = + rtlpriv->cfg->maps[RTL_RC_CCK_RATE11M]; + } else { + tcb_desc->hw_rate = + rtlpriv->cfg->maps[RTL_RC_OFDM_RATE54M]; + } + } + } + + if (is_multicast_ether_addr(ieee80211_get_DA(hdr))) + tcb_desc->b_multicast = 1; + else if (is_broadcast_ether_addr(ieee80211_get_DA(hdr))) + tcb_desc->b_broadcast = 1; + + _rtl_txrate_selectmode(hw, sta, tcb_desc); + _rtl_query_bandwidth_mode(hw, sta, tcb_desc); + _rtl_qurey_shortpreamble_mode(hw, tcb_desc, info); + _rtl_query_shortgi(hw, sta, tcb_desc, info); + _rtl_query_protection_mode(hw, tcb_desc, info); + } else { + tcb_desc->use_driver_rate = true; + tcb_desc->ratr_index = RATR_INX_WIRELESS_MC; + tcb_desc->disable_ratefallback = 1; + tcb_desc->mac_id = 0; + tcb_desc->b_packet_bw = false; + } +} +//EXPORT_SYMBOL(rtl_get_tcb_desc); + +bool rtl_tx_mgmt_proc(struct ieee80211_hw *hw, struct sk_buff *skb) +{ + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_priv *rtlpriv = rtl_priv(hw); + u16 fc = rtl_get_fc(skb); + + if (rtlpriv->dm.supp_phymode_switch && + mac->link_state < MAC80211_LINKED && + (ieee80211_is_auth(fc) || ieee80211_is_probe_req(fc))) { + if (rtlpriv->cfg->ops->check_switch_to_dmdp) + rtlpriv->cfg->ops->check_switch_to_dmdp(hw); + } + if (ieee80211_is_auth(fc)) { + RT_TRACE(COMP_SEND, DBG_DMESG, ("MAC80211_LINKING\n")); + rtl_ips_nic_on(hw); + + mac->link_state = MAC80211_LINKING; + /* Dul mac */ + rtlpriv->phy.b_need_iqk = true; + + } + + return true; +} + +struct sk_buff *rtl_make_del_ba(struct ieee80211_hw *hw, u8 *sa, + u8 *bssid, u16 tid); +bool rtl_action_proc(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx) +{ + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct ieee80211_hdr *hdr = rtl_get_hdr(skb); + struct rtl_priv *rtlpriv = rtl_priv(hw); + u16 fc = rtl_get_fc(skb); + u8 *act = (u8 *) (((u8 *) skb->data + MAC80211_3ADDR_LEN)); + u8 category; + + if (!ieee80211_is_action(fc)) + return true; + + category = *act; + act++; + switch (category) { + case ACT_CAT_BA: + switch (*act) { + case ACT_ADDBAREQ: + if (mac->act_scanning) + return false; + + RT_TRACE((COMP_SEND | COMP_RECV), DBG_DMESG, + ("%s ACT_ADDBAREQ From :%pM\n", + is_tx ? "Tx" : "Rx", hdr->addr2)); + RT_PRINT_DATA(rtlpriv, COMP_INIT, DBG_DMESG, ("req \n"), + skb->data, skb->len); + if (!is_tx) { + struct ieee80211_sta *sta = NULL; + struct rtl_sta_info *sta_entry = NULL; + struct ieee80211_mgmt *mgmt = (void *)skb->data; + u16 capab = 0, tid = 0; + struct rtl_tid_data *tid_data; + struct sk_buff *skb_delba = NULL; + struct ieee80211_rx_status rx_status = { 0 }; + + rcu_read_lock(); + sta = rtl_find_sta(hw, hdr->addr3); + if (sta == NULL) { + RT_TRACE((COMP_SEND | COMP_RECV), + DBG_EMERG, ("sta is NULL\n")); + rcu_read_unlock(); + return true; + } + + sta_entry = (struct rtl_sta_info *)sta->drv_priv; + if (!sta_entry) { + rcu_read_unlock(); + return true; + } + capab = le16_to_cpu(mgmt->u.action.u.addba_req.capab); + tid = (capab & IEEE80211_ADDBA_PARAM_TID_MASK) >> 2; + tid_data = &sta_entry->tids[tid]; + if (tid_data->agg.rx_agg_state == + RTL_RX_AGG_START) { + skb_delba = rtl_make_del_ba(hw, + hdr->addr2, + hdr->addr3, + tid); + if (skb_delba) { +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)) + rx_status.freq = hw->conf.chandef.chan->center_freq; + rx_status.band = hw->conf.chandef.chan->band; +#else + rx_status.freq = hw->conf.channel->center_freq; + rx_status.band = hw->conf.channel->band; +#endif + rx_status.flag |= RX_FLAG_DECRYPTED; + rx_status.flag |= RX_FLAG_MACTIME_MPDU; + rx_status.rate_idx = 0; + rx_status.signal = 50 + 10; + memcpy(IEEE80211_SKB_RXCB(skb_delba), &rx_status, + sizeof(rx_status)); + RT_PRINT_DATA(rtlpriv, COMP_INIT, DBG_DMESG, + ("fake del\n"), skb_delba->data, + skb_delba->len); + ieee80211_rx_irqsafe(hw, skb_delba); + } + } + rcu_read_unlock(); + } + break; + case ACT_ADDBARSP: + RT_TRACE((COMP_SEND | COMP_RECV), DBG_DMESG, + ("%s ACT_ADDBARSP From :%pM\n", + is_tx ? "Tx" : "Rx", hdr->addr2)); + break; + case ACT_DELBA: + RT_TRACE((COMP_SEND | COMP_RECV), DBG_DMESG, + ("ACT_ADDBADEL From :%pM\n", hdr->addr2)); + break; + } + break; + default: + break; + } + + return true; +} + +/*should call before software enc*/ +u8 rtl_is_special_data(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + u16 fc = rtl_get_fc(skb); + u16 ether_type; + u8 mac_hdr_len = ieee80211_get_hdrlen_from_skb(skb); + const struct iphdr *ip; + + if (!ieee80211_is_data(fc)) + goto end; + + + ip = (struct iphdr *)((u8 *) skb->data + mac_hdr_len + + SNAP_SIZE + PROTOC_TYPE_SIZE); + ether_type = *(u16 *) ((u8 *) skb->data + mac_hdr_len + SNAP_SIZE); + ether_type = ntohs(ether_type); + + if (ETH_P_IP == ether_type) { + if (IPPROTO_UDP == ip->protocol) { + struct udphdr *udp = (struct udphdr *)((u8 *) ip + + (ip->ihl << 2)); + if (((((u8 *) udp)[1] == 68) && + (((u8 *) udp)[3] == 67)) || + ((((u8 *) udp)[1] == 67) && + (((u8 *) udp)[3] == 68))) { + /* + * 68 : UDP BOOTP client + * 67 : UDP BOOTP server + */ + RT_TRACE((COMP_SEND | COMP_RECV), + DBG_DMESG, ("dhcp %s !!\n", + (is_tx) ? "Tx" : "Rx")); + + if (is_tx) { + rtlpriv->ra.is_special_data = true; + rtl_lps_leave(hw); + ppsc->last_delaylps_stamp_jiffies = + jiffies; + } + + return true; + } + } + } else if (ETH_P_ARP == ether_type) { + if (is_tx) { + rtlpriv->ra.is_special_data = true; + rtl_lps_leave(hw); + ppsc->last_delaylps_stamp_jiffies = jiffies; + } + + return true; + } else if (ETH_P_PAE == ether_type) { + RT_TRACE((COMP_SEND | COMP_RECV), DBG_DMESG, + ("802.1X %s EAPOL pkt!!\n", (is_tx) ? "Tx" : "Rx")); + + if (is_tx) { + rtlpriv->ra.is_special_data = true; + rtl_lps_leave(hw); + ppsc->last_delaylps_stamp_jiffies = jiffies; + } + + return true; + } else if (0x86DD == ether_type) { + return true; + } + +end: + rtlpriv->ra.is_special_data = false; + return false; +} + +/********************************************************* + * + * functions called by core.c + * + *********************************************************/ +int rtl_tx_agg_start(struct ieee80211_hw *hw, struct ieee80211_vif *vif, + struct ieee80211_sta *sta, u16 tid, u16 *ssn) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_tid_data *tid_data; + struct rtl_sta_info *sta_entry = NULL; + + if (sta == NULL) + return -EINVAL; + + if (unlikely(tid >= MAX_TID_COUNT)) + return -EINVAL; + + sta_entry = (struct rtl_sta_info *)sta->drv_priv; + if (!sta_entry) + return -ENXIO; + tid_data = &sta_entry->tids[tid]; + + RT_TRACE(COMP_SEND, DBG_DMESG, + ("on ra = %pM tid = %d seq:%d\n", sta->addr, tid, + tid_data->seq_number)); + + *ssn = tid_data->seq_number; + tid_data->agg.agg_state = RTL_AGG_START; + + ieee80211_start_tx_ba_cb_irqsafe(vif, sta->addr, tid); + return 0; +} + +int rtl_tx_agg_stop(struct ieee80211_hw *hw, struct ieee80211_vif *vif, + struct ieee80211_sta *sta, u16 tid) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_tid_data *tid_data; + struct rtl_sta_info *sta_entry = NULL; + + if (sta == NULL) + return -EINVAL; + + if (!sta->addr) { + RT_TRACE(COMP_ERR, DBG_EMERG, ("ra = NULL\n")); + return -EINVAL; + } + + RT_TRACE(COMP_SEND, DBG_DMESG, + ("on ra = %pM tid = %d\n", sta->addr, tid)); + + if (unlikely(tid >= MAX_TID_COUNT)) + return -EINVAL; + + sta_entry = (struct rtl_sta_info *)sta->drv_priv; + tid_data = &sta_entry->tids[tid]; + sta_entry->tids[tid].agg.agg_state = RTL_AGG_STOP; + + ieee80211_stop_tx_ba_cb_irqsafe(vif, sta->addr, tid); + return 0; +} + +int rtl_rx_agg_start(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, u16 tid) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_tid_data *tid_data; + struct rtl_sta_info *sta_entry = NULL; + + if (sta == NULL) + return -EINVAL; + + if (unlikely(tid >= MAX_TID_COUNT)) + return -EINVAL; + + sta_entry = (struct rtl_sta_info *)sta->drv_priv; + if (!sta_entry) + return -ENXIO; + tid_data = &sta_entry->tids[tid]; + + RT_TRACE(COMP_RECV, DBG_DMESG, + ("on ra = %pM tid = %d seq:%d\n", sta->addr, tid, + tid_data->seq_number)); + + tid_data->agg.rx_agg_state = RTL_RX_AGG_START; + return 0; +} + +int rtl_rx_agg_stop(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, u16 tid) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_tid_data *tid_data; + struct rtl_sta_info *sta_entry = NULL; + + if (sta == NULL) + return -EINVAL; + + if (!sta->addr) { + RT_TRACE(COMP_ERR, DBG_EMERG, ("ra = NULL\n")); + return -EINVAL; + } + + RT_TRACE(COMP_SEND, DBG_DMESG, + ("on ra = %pM tid = %d\n", sta->addr, tid)); + + if (unlikely(tid >= MAX_TID_COUNT)) + return -EINVAL; + + sta_entry = (struct rtl_sta_info *)sta->drv_priv; + tid_data = &sta_entry->tids[tid]; + sta_entry->tids[tid].agg.rx_agg_state = RTL_RX_AGG_STOP; + + return 0; +} +int rtl_tx_agg_oper(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, u16 tid) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_tid_data *tid_data; + struct rtl_sta_info *sta_entry = NULL; + + if (sta == NULL) + return -EINVAL; + + if (!sta->addr) { + RT_TRACE(COMP_ERR, DBG_EMERG, ("ra = NULL\n")); + return -EINVAL; + } + + RT_TRACE(COMP_SEND, DBG_DMESG, + ("on ra = %pM tid = %d\n", sta->addr, tid)); + + if (unlikely(tid >= MAX_TID_COUNT)) + return -EINVAL; + + sta_entry = (struct rtl_sta_info *)sta->drv_priv; + tid_data = &sta_entry->tids[tid]; + sta_entry->tids[tid].agg.agg_state = RTL_AGG_OPERATIONAL; + + return 0; +} + +/********************************************************* + * + * wq & timer callback functions + * + *********************************************************/ +/* this function is used for roaming */ +void rtl_beacon_statistic(struct ieee80211_hw *hw, struct sk_buff *skb) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data; + + if (rtlpriv->mac80211.opmode != NL80211_IFTYPE_STATION) + return; + + if (rtlpriv->mac80211.link_state < MAC80211_LINKED) + return; + + /* check if this really is a beacon */ + if (!ieee80211_is_beacon(hdr->frame_control) && + !ieee80211_is_probe_resp(hdr->frame_control)) + return; + + /* min. beacon length + FCS_LEN */ + if (skb->len <= 40 + FCS_LEN) + return; + + /* and only beacons from the associated BSSID, please */ + if (ether_addr_equal(hdr->addr3, rtlpriv->mac80211.bssid)) + return; + + rtlpriv->link_info.bcn_rx_inperiod ++; +} + +void rtl_watchdog_wq_callback(void *data) +{ + struct rtl_works *rtlworks = container_of_dwork_rtl(data, + struct rtl_works, + watchdog_wq); + struct ieee80211_hw *hw = rtlworks->hw; + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + bool b_busytraffic = false; + bool b_tx_busy_traffic = false; + bool b_rx_busy_traffic = false; + bool b_higher_busytraffic = false; + bool b_higher_busyrxtraffic = false; + u8 idx, tid; + u32 rx_cnt_inp4eriod = 0; + u32 tx_cnt_inp4eriod = 0; + u32 aver_rx_cnt_inperiod = 0; + u32 aver_tx_cnt_inperiod = 0; + u32 aver_tidtx_inperiod[MAX_TID_COUNT] = {0}; + u32 tidtx_inp4eriod[MAX_TID_COUNT] = {0}; + bool benter_ps = false; + + if (is_hal_stop(rtlhal)) + return; + + /* <1> Determine if action frame is allowed */ + if (mac->link_state > MAC80211_NOLINK) { + if (mac->cnt_after_linked < 20) + mac->cnt_after_linked++; + } else { + mac->cnt_after_linked = 0; + } + + /* <2> to check if traffic busy, if + * busytraffic we don't change channel */ + if (mac->link_state >= MAC80211_LINKED) { + + /* (1) get aver_rx_cnt_inperiod & aver_tx_cnt_inperiod */ + for (idx = 0; idx <= 2; idx++) { + rtlpriv->link_info.num_rx_in4period[idx] = + rtlpriv->link_info.num_rx_in4period[idx + 1]; + rtlpriv->link_info.num_tx_in4period[idx] = + rtlpriv->link_info.num_tx_in4period[idx + 1]; + } + rtlpriv->link_info.num_rx_in4period[3] = + rtlpriv->link_info.num_rx_inperiod; + rtlpriv->link_info.num_tx_in4period[3] = + rtlpriv->link_info.num_tx_inperiod; + for (idx = 0; idx <= 3; idx++) { + rx_cnt_inp4eriod += + rtlpriv->link_info.num_rx_in4period[idx]; + tx_cnt_inp4eriod += + rtlpriv->link_info.num_tx_in4period[idx]; + } + aver_rx_cnt_inperiod = rx_cnt_inp4eriod / 4; + aver_tx_cnt_inperiod = tx_cnt_inp4eriod / 4; + + /* (2) check traffic busy */ + if (aver_rx_cnt_inperiod > 100 || aver_tx_cnt_inperiod > 100) { + b_busytraffic = true; + if (aver_rx_cnt_inperiod > aver_tx_cnt_inperiod) + b_rx_busy_traffic = true; + else + b_tx_busy_traffic = false; + } + + /* Higher Tx/Rx data. */ + if (aver_rx_cnt_inperiod > 4000 || + aver_tx_cnt_inperiod > 4000) { + b_higher_busytraffic = true; + + /* Extremely high Rx data. */ + if (aver_rx_cnt_inperiod > 5000) + b_higher_busyrxtraffic = true; + } + + /* check every tid's tx traffic */ + for (tid = 0; tid <= 7; tid++) { + for (idx = 0; idx <= 2; idx++) + rtlpriv->link_info.tidtx_in4period[tid][idx] = + rtlpriv->link_info.tidtx_in4period[tid] + [idx + 1]; + rtlpriv->link_info.tidtx_in4period[tid][3] = + rtlpriv->link_info.tidtx_inperiod[tid]; + + for (idx = 0; idx <= 3; idx++) + tidtx_inp4eriod[tid] += + rtlpriv->link_info.tidtx_in4period[tid][idx]; + aver_tidtx_inperiod[tid] = tidtx_inp4eriod[tid] / 4; + if (aver_tidtx_inperiod[tid] > 5000) + rtlpriv->link_info.higher_busytxtraffic[tid] = + true; + else + rtlpriv->link_info.higher_busytxtraffic[tid] = + false; + } + + if (((rtlpriv->link_info.num_rx_inperiod + + rtlpriv->link_info.num_tx_inperiod) > 8) || + (rtlpriv->link_info.num_rx_inperiod > 2)) + benter_ps = false; + else + benter_ps = true; + + /* LeisurePS only work in infra mode. */ + if (benter_ps) + rtl_lps_enter(hw); + else + rtl_lps_leave(hw); + } + + rtlpriv->link_info.num_rx_inperiod = 0; + rtlpriv->link_info.num_tx_inperiod = 0; + for (tid = 0; tid <= 7; tid++) + rtlpriv->link_info.tidtx_inperiod[tid] = 0; + + rtlpriv->link_info.b_busytraffic = b_busytraffic; + rtlpriv->link_info.b_rx_busy_traffic = b_rx_busy_traffic; + rtlpriv->link_info.b_tx_busy_traffic = b_tx_busy_traffic; + rtlpriv->link_info.b_higher_busytraffic = b_higher_busytraffic; + rtlpriv->link_info.b_higher_busyrxtraffic = b_higher_busyrxtraffic; + + /* <3> DM */ + rtlpriv->cfg->ops->dm_watchdog(hw); + + /* <4> roaming */ + if (mac->link_state == MAC80211_LINKED && + mac->opmode == NL80211_IFTYPE_STATION) { + if ((rtlpriv->link_info.bcn_rx_inperiod + + rtlpriv->link_info.num_rx_inperiod) == 0) { + rtlpriv->link_info.roam_times++; + RT_TRACE(COMP_ERR, DBG_DMESG, ("AP off for %d s\n", + (rtlpriv->link_info.roam_times * 2))); + + /* if we can't recv beacon for 10s, + * we should reconnect this AP */ + if (rtlpriv->link_info.roam_times >= 5) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("AP off, try to reconnect now\n")); + rtlpriv->link_info.roam_times = 0; + ieee80211_connection_loss(rtlpriv->mac80211.vif); + } + } else { + rtlpriv->link_info.roam_times = 0; + } + } + rtlpriv->link_info.bcn_rx_inperiod = 0; +} + +void rtl_watch_dog_timer_callback(unsigned long data) +{ + struct ieee80211_hw *hw = (struct ieee80211_hw *)data; + struct rtl_priv *rtlpriv = rtl_priv(hw); + + queue_delayed_work(rtlpriv->works.rtl_wq, + &rtlpriv->works.watchdog_wq, 0); + + mod_timer(&rtlpriv->works.watchdog_timer, + jiffies + MSECS(RTL_WATCH_DOG_TIME)); +} +void rtl_fwevt_wq_callback(void *data) +{ + struct rtl_works *rtlworks = + container_of_dwork_rtl(data, struct rtl_works, fwevt_wq); + struct ieee80211_hw *hw = rtlworks->hw; + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtlpriv->cfg->ops->c2h_command_handle(hw); +} +void rtl_easy_concurrent_retrytimer_callback(unsigned long data) +{ + struct ieee80211_hw *hw = (struct ieee80211_hw *)data; + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_priv *buddy_priv = rtlpriv->buddy_priv; + + if(buddy_priv == NULL) + return; + + rtlpriv->cfg->ops->dualmac_easy_concurrent(hw); +} +/********************************************************* + * + * frame process functions + * + *********************************************************/ +u8 *rtl_find_ie(u8 *data, unsigned int len, u8 ie) +{ + struct ieee80211_mgmt *mgmt = (void *)data; + u8 *pos, *end; + + pos = (u8 *)mgmt->u.beacon.variable; + end = data + len; + while (pos < end) { + if (pos + 2 + pos[1] > end) + return NULL; + + if (pos[0] == ie) + return pos; + + pos += 2 + pos[1]; + } + return NULL; +} + +/* when we use 2 rx ants we send IEEE80211_SMPS_OFF */ +/* when we use 1 rx ant we send IEEE80211_SMPS_STATIC */ +struct sk_buff *rtl_make_smps_action(struct ieee80211_hw *hw, + enum ieee80211_smps_mode smps, + u8 *da, u8 *bssid) +{ + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct sk_buff *skb; + struct ieee80211_mgmt_compat *action_frame; + + /* 27 = header + category + action + smps mode */ + skb = dev_alloc_skb(27 + hw->extra_tx_headroom); + if (!skb) + return NULL; + + skb_reserve(skb, hw->extra_tx_headroom); + action_frame = (void *)skb_put(skb, 27); + memset(action_frame, 0, 27); + memcpy(action_frame->da, da, ETH_ALEN); + memcpy(action_frame->sa, rtlefuse->dev_addr, ETH_ALEN); + memcpy(action_frame->bssid, bssid, ETH_ALEN); + action_frame->frame_control = cpu_to_le16(IEEE80211_FTYPE_MGMT | + IEEE80211_STYPE_ACTION); + action_frame->u.action.category = WLAN_CATEGORY_HT; + action_frame->u.action.u.ht_smps.action = WLAN_HT_ACTION_SMPS; + switch (smps) { + case IEEE80211_SMPS_AUTOMATIC:/* 0 */ + case IEEE80211_SMPS_NUM_MODES:/* 4 */ + WARN_ON(1); + case IEEE80211_SMPS_OFF:/* 1 */ /*MIMO_PS_NOLIMIT*/ + action_frame->u.action.u.ht_smps.smps_control = + WLAN_HT_SMPS_CONTROL_DISABLED;/* 0 */ + break; + case IEEE80211_SMPS_STATIC:/* 2 */ /*MIMO_PS_STATIC*/ + action_frame->u.action.u.ht_smps.smps_control = + WLAN_HT_SMPS_CONTROL_STATIC;/* 1 */ + break; + case IEEE80211_SMPS_DYNAMIC:/* 3 */ /*MIMO_PS_DYNAMIC*/ + action_frame->u.action.u.ht_smps.smps_control = + WLAN_HT_SMPS_CONTROL_DYNAMIC;/* 3 */ + break; + } + + return skb; +} + +int rtl_send_smps_action(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, + enum ieee80211_smps_mode smps) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct sk_buff *skb = NULL; + struct rtl_tcb_desc tcb_desc; + u8 bssid[ETH_ALEN] = {0}; + + memset(&tcb_desc, 0, sizeof(struct rtl_tcb_desc)); + + if (rtlpriv->mac80211.act_scanning) + goto err_free; + + if (!sta) + goto err_free; + + if (unlikely(is_hal_stop(rtlhal) || ppsc->rfpwr_state != ERFON)) + goto err_free; + + if (!test_bit(RTL_STATUS_INTERFACE_START, &rtlpriv->status)) + goto err_free; + + if (rtlpriv->mac80211.opmode == NL80211_IFTYPE_AP) + memcpy(bssid, rtlpriv->efuse.dev_addr, ETH_ALEN); + else + memcpy(bssid, rtlpriv->mac80211.bssid, ETH_ALEN); + + skb = rtl_make_smps_action(hw, smps, sta->addr, bssid); + /* this is a type = mgmt * stype = action frame */ + if (skb) { + struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); + struct rtl_sta_info *sta_entry = + (struct rtl_sta_info *) sta->drv_priv; + sta_entry->mimo_ps = smps; + /* rtlpriv->cfg->ops->update_rate_tbl(hw, sta, 0); */ + + info->control.rates[0].idx = 0; +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)) + info->band = hw->conf.chandef.chan->band; +#else + info->band = hw->conf.channel->band; +#endif +/**/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)) + info->control.sta = sta; + rtlpriv->intf_ops->adapter_tx(hw, skb, &tcb_desc); +#else +/**/ + rtlpriv->intf_ops->adapter_tx(hw, sta, skb, &tcb_desc); +/**/ +#endif +/**/ + } + return 1; + +err_free: + return 0; +} +//EXPORT_SYMBOL(rtl_send_smps_action); + +/* because mac80211 have issues when can receive del ba + * so here we just make a fake del_ba if we receive a ba_req + * but rx_agg was opened to let mac80211 release some ba + * related resources, so please this del_ba for tx */ +struct sk_buff *rtl_make_del_ba(struct ieee80211_hw *hw, + u8 *sa, u8 *bssid, u16 tid) +{ + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct sk_buff *skb; + struct ieee80211_mgmt *action_frame; + u16 params; + + /* 27 = header + category + action + smps mode */ + skb = dev_alloc_skb(34 + hw->extra_tx_headroom); + if (!skb) + return NULL; + + skb_reserve(skb, hw->extra_tx_headroom); + action_frame = (void *)skb_put(skb, 34); + memset(action_frame, 0, 34); + memcpy(action_frame->sa, sa, ETH_ALEN); + memcpy(action_frame->da, rtlefuse->dev_addr, ETH_ALEN); + memcpy(action_frame->bssid, bssid, ETH_ALEN); + action_frame->frame_control = cpu_to_le16(IEEE80211_FTYPE_MGMT | + IEEE80211_STYPE_ACTION); + action_frame->u.action.category = WLAN_CATEGORY_BACK; + action_frame->u.action.u.delba.action_code = WLAN_ACTION_DELBA; + params = (u16)(1 << 11); /* bit 11 initiator */ + params |= (u16)(tid << 12); /* bit 15:12 TID number */ + + action_frame->u.action.u.delba.params = cpu_to_le16(params); + action_frame->u.action.u.delba.reason_code = + cpu_to_le16(WLAN_REASON_QSTA_TIMEOUT); + + return skb; +} + +/********************************************************* + * + * IOT functions + * + *********************************************************/ +static bool rtl_chk_vendor_ouisub(struct ieee80211_hw *hw, + struct octet_string vendor_ie) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + bool matched = false; + static u8 athcap_1[] = { 0x00, 0x03, 0x7F }; + static u8 athcap_2[] = { 0x00, 0x13, 0x74 }; + static u8 broadcap_1[] = { 0x00, 0x10, 0x18 }; + static u8 broadcap_2[] = { 0x00, 0x0a, 0xf7 }; + static u8 broadcap_3[] = { 0x00, 0x05, 0xb5 }; + static u8 racap[] = { 0x00, 0x0c, 0x43 }; + static u8 ciscocap[] = { 0x00, 0x40, 0x96 }; + static u8 marvcap[] = { 0x00, 0x50, 0x43 }; + + if (memcmp(vendor_ie.octet, athcap_1, 3) == 0 || + memcmp(vendor_ie.octet, athcap_2, 3) == 0) { + rtlpriv->mac80211.vendor = PEER_ATH; + matched = true; + } else if (memcmp(vendor_ie.octet, broadcap_1, 3) == 0 || + memcmp(vendor_ie.octet, broadcap_2, 3) == 0 || + memcmp(vendor_ie.octet, broadcap_3, 3) == 0) { + rtlpriv->mac80211.vendor = PEER_BROAD; + matched = true; + } else if (memcmp(vendor_ie.octet, racap, 3) == 0) { + rtlpriv->mac80211.vendor = PEER_RAL; + matched = true; + } else if (memcmp(vendor_ie.octet, ciscocap, 3) == 0) { + rtlpriv->mac80211.vendor = PEER_CISCO; + matched = true; + } else if (memcmp(vendor_ie.octet, marvcap, 3) == 0) { + rtlpriv->mac80211.vendor = PEER_MARV; + matched = true; + } + + return matched; +} + +bool rtl_find_221_ie(struct ieee80211_hw *hw, u8 *data, + unsigned int len) +{ + struct ieee80211_mgmt *mgmt = (void *)data; + struct octet_string vendor_ie; + u8 *pos, *end; + + pos = (u8 *)mgmt->u.beacon.variable; + end = data + len; + while (pos < end) { + if (pos[0] == 221) { + vendor_ie.length = pos[1]; + vendor_ie.octet = &pos[2]; + if (rtl_chk_vendor_ouisub(hw, vendor_ie)) + return true; + } + + if (pos + 2 + pos[1] > end) + return false; + + pos += 2 + pos[1]; + } + return false; +} + +void rtl_recognize_peer(struct ieee80211_hw *hw, u8 *data, unsigned int len) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct ieee80211_hdr *hdr = (void *)data; + u32 vendor = PEER_UNKNOWN; + + static u8 ap3_1[3] = { 0x00, 0x14, 0xbf }; + static u8 ap3_2[3] = { 0x00, 0x1a, 0x70 }; + static u8 ap3_3[3] = { 0x00, 0x1d, 0x7e }; + static u8 ap4_1[3] = { 0x00, 0x90, 0xcc }; + static u8 ap4_2[3] = { 0x00, 0x0e, 0x2e }; + static u8 ap4_3[3] = { 0x00, 0x18, 0x02 }; + static u8 ap4_4[3] = { 0x00, 0x17, 0x3f }; + static u8 ap4_5[3] = { 0x00, 0x1c, 0xdf }; + static u8 ap5_1[3] = { 0x00, 0x1c, 0xf0 }; + static u8 ap5_2[3] = { 0x00, 0x21, 0x91 }; + static u8 ap5_3[3] = { 0x00, 0x24, 0x01 }; + static u8 ap5_4[3] = { 0x00, 0x15, 0xe9 }; + static u8 ap5_5[3] = { 0x00, 0x17, 0x9A }; + static u8 ap5_6[3] = { 0x00, 0x18, 0xE7 }; + static u8 ap6_1[3] = { 0x00, 0x17, 0x94 }; + static u8 ap7_1[3] = { 0x00, 0x14, 0xa4 }; + + if (mac->opmode != NL80211_IFTYPE_STATION) + return; + + if (mac->link_state == MAC80211_NOLINK) { + mac->vendor = PEER_UNKNOWN; + return; + } + + if (mac->cnt_after_linked > 2) + return; + + /* check if this really is a beacon */ + if (!ieee80211_is_beacon(hdr->frame_control)) + return; + + /* min. beacon length + FCS_LEN */ + if (len <= 40 + FCS_LEN) + return; + + /* and only beacons from the associated BSSID, please */ + if (ether_addr_equal(hdr->addr3, rtlpriv->mac80211.bssid)) + return; + + if (rtl_find_221_ie(hw, data, len)) { + vendor = mac->vendor; + } + + if ((memcmp(mac->bssid, ap5_1, 3) == 0) || + (memcmp(mac->bssid, ap5_2, 3) == 0) || + (memcmp(mac->bssid, ap5_3, 3) == 0) || + (memcmp(mac->bssid, ap5_4, 3) == 0) || + (memcmp(mac->bssid, ap5_5, 3) == 0) || + (memcmp(mac->bssid, ap5_6, 3) == 0) || + vendor == PEER_ATH) { + vendor = PEER_ATH; + RT_TRACE(COMP_MAC80211, DBG_LOUD, ("=>ath find\n")); + } else if ((memcmp(mac->bssid, ap4_4, 3) == 0) || + (memcmp(mac->bssid, ap4_5, 3) == 0) || + (memcmp(mac->bssid, ap4_1, 3) == 0) || + (memcmp(mac->bssid, ap4_2, 3) == 0) || + (memcmp(mac->bssid, ap4_3, 3) == 0) || + vendor == PEER_RAL) { + RT_TRACE(COMP_MAC80211, DBG_LOUD, ("=>ral findn\n")); + vendor = PEER_RAL; + } else if (memcmp(mac->bssid, ap6_1, 3) == 0 || + vendor == PEER_CISCO) { + vendor = PEER_CISCO; + RT_TRACE(COMP_MAC80211, DBG_LOUD, ("=>cisco find\n")); + } else if ((memcmp(mac->bssid, ap3_1, 3) == 0) || + (memcmp(mac->bssid, ap3_2, 3) == 0) || + (memcmp(mac->bssid, ap3_3, 3) == 0) || + vendor == PEER_BROAD) { + RT_TRACE(COMP_MAC80211, DBG_LOUD, ("=>broad find\n")); + vendor = PEER_BROAD; + } else if (memcmp(mac->bssid, ap7_1, 3) == 0 || + vendor == PEER_MARV) { + vendor = PEER_MARV; + RT_TRACE(COMP_MAC80211, DBG_LOUD, ("=>marv find\n")); + } + + mac->vendor = vendor; +} + +/********************************************************* + * + * sysfs functions + * + *********************************************************/ +static ssize_t rtl_show_debug_level(struct device *d, + struct device_attribute *attr, char *buf) +{ + struct ieee80211_hw *hw = dev_get_drvdata(d); + struct rtl_priv *rtlpriv = rtl_priv(hw); + + return sprintf(buf, "0x%08X\n", rtlpriv->dbg.global_debuglevel); +} + +static ssize_t rtl_store_debug_level(struct device *d, + struct device_attribute *attr, + const char *buf, size_t count) +{ + struct ieee80211_hw *hw = dev_get_drvdata(d); + struct rtl_priv *rtlpriv = rtl_priv(hw); + unsigned long val; + int ret; + + ret = strict_strtoul(buf, 0, &val); + if (ret) { + printk(KERN_DEBUG "%s is not in hex or decimal form.\n", buf); + } else { + rtlpriv->dbg.global_debuglevel = val; + printk(KERN_DEBUG "debuglevel:%x\n", + rtlpriv->dbg.global_debuglevel); + } + + return strnlen(buf, count); +} + +static DEVICE_ATTR(debug_level, S_IWUSR | S_IRUGO, + rtl_show_debug_level, rtl_store_debug_level); + +static struct attribute *rtl_sysfs_entries[] = { + + &dev_attr_debug_level.attr, + + NULL +}; + +/* + * "name" is folder name witch will be + * put in device directory like : + * sys/devices/pci0000:00/0000:00:1c.4/ + * 0000:06:00.0/rtl_sysfs + */ +struct attribute_group rtl_attribute_group = { + .name = "rtlsysfs", + .attrs = rtl_sysfs_entries, +}; + +#ifdef VIF_TODO +/********************************************************* + * + * vif functions + * + *********************************************************/ +static inline struct ieee80211_vif * +rtl_get_vif(struct rtl_vif_info *vif_priv) +{ + return container_of((void *)vif_priv, struct ieee80211_vif, drv_priv); +} + +/* Protected by ar->mutex or RCU */ +struct ieee80211_vif *rtl_get_main_vif(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_vif_info *cvif; + + list_for_each_entry_rcu(cvif, &rtlpriv->vif_priv.vif_list, list) { + if (cvif->active) + return rtl_get_vif(cvif); + } + + return NULL; +} + +static inline bool is_main_vif(struct ieee80211_hw *hw, + struct ieee80211_vif *vif) +{ + bool ret; + + rcu_read_lock(); + ret = (rtl_get_main_vif(hw) == vif); + rcu_read_unlock(); + return ret; +} + +bool rtl_set_vif_info(struct ieee80211_hw *hw, struct ieee80211_vif *vif) +{ + struct rtl_vif_info *vif_info = (void *) vif->drv_priv; + struct rtl_priv *rtlpriv = rtl_priv(hw); + int vif_id = -1; + + if (rtlpriv->vif_priv.vifs >= MAX_VIRTUAL_MAC) { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("vif number can not bigger than %d, now vifs is:%d\n", + MAX_VIRTUAL_MAC, rtlpriv->vif_priv.vifs)); + return false; + } + + rcu_read_lock(); + vif_id = bitmap_find_free_region(&rtlpriv->vif_priv.vif_bitmap, + MAX_VIRTUAL_MAC, 0); + RT_TRACE(COMP_MAC80211, DBG_DMESG, + ("%s vid_id:%d\n", __func__, vif_id)); + + if (vif_id < 0) { + rcu_read_unlock(); + return false; + } + + BUG_ON(rtlpriv->vif_priv.vif[vif_id].id != vif_id); + vif_info->active = true; + vif_info->id = vif_id; + vif_info->enable_beacon = false; + rtlpriv->vif_priv.vifs++; + if (rtlpriv->vif_priv.vifs > 1) { + rtlpriv->psc.b_inactiveps = false; + rtlpriv->psc.b_swctrl_lps = false; + rtlpriv->psc.b_fwctrl_lps = false; + } + + list_add_tail_rcu(&vif_info->list, &rtlpriv->vif_priv.vif_list); + rcu_assign_pointer(rtlpriv->vif_priv.vif[vif_id].vif, vif); + + RT_TRACE(COMP_MAC80211, DBG_DMESG, ("vifaddress:%p %p %p\n", + rtlpriv->vif_priv.vif[vif_id].vif, vif, rtl_get_main_vif(hw))); + + rcu_read_unlock(); + + return true; +} +#endif + + +#if 0 +MODULE_AUTHOR("lizhaoming "); +MODULE_AUTHOR("Realtek WlanFAE "); +MODULE_AUTHOR("Larry Finger "); +MODULE_LICENSE("GPL"); +MODULE_DESCRIPTION("Realtek 802.11n PCI wireless core"); +#endif +struct rtl_global_var global_var = {}; + +int rtl_core_module_init(void) +{ + if (rtl_rate_control_register()) + printk(KERN_DEBUG "rtl: Unable to register rtl_rc," + "use default RC !!\n"); + + /* add proc for debug */ + rtl_proc_add_topdir(); + + /* init some global vars */ + INIT_LIST_HEAD(&global_var.glb_priv_list); + spin_lock_init(&global_var.glb_list_lock); + + return 0; +} + +void rtl_core_module_exit(void) +{ + /*RC*/ + rtl_rate_control_unregister(); + + /* add proc for debug */ + rtl_proc_remove_topdir(); +} + +#if 0 +module_init(rtl_core_module_init); +module_exit(rtl_core_module_exit); +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/base.h +++ linux-3.13.0/drivers/staging/rtl8821ae/base.h @@ -0,0 +1,159 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL_BASE_H__ +#define __RTL_BASE_H__ + +#include "compat.h" + +enum ap_peer { + PEER_UNKNOWN = 0, + PEER_RTL = 1, + PEER_RTL_92SE = 2, + PEER_BROAD = 3, + PEER_RAL = 4, + PEER_ATH = 5, + PEER_CISCO = 6, + PEER_MARV = 7, + PEER_AIRGO = 9, + PEER_MAX = 10, +} ; + +#define RTL_DUMMY_OFFSET 0 +#define RTL_DUMMY_UNIT 8 +#define RTL_TX_DUMMY_SIZE (RTL_DUMMY_OFFSET * RTL_DUMMY_UNIT) +#define RTL_TX_DESC_SIZE 32 +#define RTL_TX_HEADER_SIZE (RTL_TX_DESC_SIZE + RTL_TX_DUMMY_SIZE) + +#define HT_AMSDU_SIZE_4K 3839 +#define HT_AMSDU_SIZE_8K 7935 + +#define MAX_BIT_RATE_40MHZ_MCS15 300 /* Mbps */ +#define MAX_BIT_RATE_40MHZ_MCS7 150 /* Mbps */ + +#define RTL_RATE_COUNT_LEGACY 12 +#define RTL_CHANNEL_COUNT 14 + +#define FRAME_OFFSET_FRAME_CONTROL 0 +#define FRAME_OFFSET_DURATION 2 +#define FRAME_OFFSET_ADDRESS1 4 +#define FRAME_OFFSET_ADDRESS2 10 +#define FRAME_OFFSET_ADDRESS3 16 +#define FRAME_OFFSET_SEQUENCE 22 +#define FRAME_OFFSET_ADDRESS4 24 + +#define SET_80211_HDR_FRAME_CONTROL(_hdr, _val) \ + WRITEEF2BYTE(_hdr, _val) +#define SET_80211_HDR_TYPE_AND_SUBTYPE(_hdr, _val) \ + WRITEEF1BYTE(_hdr, _val) +#define SET_80211_HDR_PWR_MGNT(_hdr, _val) \ + SET_BITS_TO_LE_2BYTE(_hdr, 12, 1, _val) +#define SET_80211_HDR_TO_DS(_hdr, _val) \ + SET_BITS_TO_LE_2BYTE(_hdr, 8, 1, _val) + +#define SET_80211_PS_POLL_AID(_hdr, _val) \ + WRITEEF2BYTE(((u8*)(_hdr))+2, _val) +#define SET_80211_PS_POLL_BSSID(_hdr, _val) \ + CP_MACADDR(((u8*)(_hdr))+4, (u8*)(_val)) +#define SET_80211_PS_POLL_TA(_hdr, _val) \ + CP_MACADDR(((u8*)(_hdr))+10, (u8*)(_val)) + +#define SET_80211_HDR_DURATION(_hdr, _val) \ + WRITEEF2BYTE((u8*)(_hdr)+FRAME_OFFSET_DURATION, _val) +#define SET_80211_HDR_ADDRESS1(_hdr, _val) \ + CP_MACADDR((u8*)(_hdr)+FRAME_OFFSET_ADDRESS1, (u8*)(_val)) +#define SET_80211_HDR_ADDRESS2(_hdr, _val) \ + CP_MACADDR((u8*)(_hdr)+FRAME_OFFSET_ADDRESS2, (u8*)(_val)) +#define SET_80211_HDR_ADDRESS3(_hdr, _val) \ + CP_MACADDR((u8*)(_hdr)+FRAME_OFFSET_ADDRESS3, (u8*)(_val)) +#define SET_80211_HDR_FRAGMENT_SEQUENCE(_hdr, _val) \ + WRITEEF2BYTE((u8*)(_hdr)+FRAME_OFFSET_SEQUENCE, _val) + +#define SET_BEACON_PROBE_RSP_TIME_STAMP_LOW(__phdr, __val) \ + WRITEEF4BYTE(((u8*)(__phdr)) + 24, __val) +#define SET_BEACON_PROBE_RSP_TIME_STAMP_HIGH(__phdr, __val) \ + WRITEEF4BYTE(((u8*)(__phdr)) + 28, __val) +#define SET_BEACON_PROBE_RSP_BEACON_INTERVAL(__phdr, __val) \ + WRITEEF2BYTE(((u8*)(__phdr)) + 32, __val) +#define GET_BEACON_PROBE_RSP_CAPABILITY_INFO(__phdr) \ + READEF2BYTE(((u8*)(__phdr)) + 34) +#define SET_BEACON_PROBE_RSP_CAPABILITY_INFO(__phdr, __val) \ + WRITEEF2BYTE(((u8*)(__phdr)) + 34, __val) +#define MASK_BEACON_PROBE_RSP_CAPABILITY_INFO(__phdr, __val) \ + SET_BEACON_PROBE_RSP_CAPABILITY_INFO(__phdr, \ + (GET_BEACON_PROBE_RSP_CAPABILITY_INFO(__phdr) & (~(__val)))) + +int rtl_init_core(struct ieee80211_hw *hw); +void rtl_deinit_core(struct ieee80211_hw *hw); +void rtl_init_rx_config(struct ieee80211_hw *hw); +void rtl_init_rfkill(struct ieee80211_hw *hw); +void rtl_deinit_rfkill(struct ieee80211_hw *hw); + +void rtl_watch_dog_timer_callback(unsigned long data); +void rtl_deinit_deferred_work(struct ieee80211_hw *hw); + +bool rtl_action_proc(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx); +bool rtl_tx_mgmt_proc(struct ieee80211_hw *hw, struct sk_buff *skb); +u8 rtl_is_special_data(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx); + +void rtl_beacon_statistic(struct ieee80211_hw *hw, struct sk_buff *skb); +void rtl_watch_dog_timer_callback(unsigned long data); +int rtl_tx_agg_start(struct ieee80211_hw *hw, struct ieee80211_vif *vif, + struct ieee80211_sta *sta, u16 tid, u16 * ssn); +int rtl_tx_agg_stop(struct ieee80211_hw *hw, struct ieee80211_vif *vif, + struct ieee80211_sta *sta, u16 tid); +int rtl_tx_agg_oper(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, u16 tid); +int rtl_rx_agg_start(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, u16 tid); +int rtl_rx_agg_stop(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, u16 tid); +void rtl_watchdog_wq_callback(void *data); +void rtl_fwevt_wq_callback(void *data); + +void rtl_get_tcb_desc(struct ieee80211_hw *hw, + struct ieee80211_tx_info *info, + struct ieee80211_sta *sta, + struct sk_buff *skb, struct rtl_tcb_desc *tcb_desc); + +int rtl_send_smps_action(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, + enum ieee80211_smps_mode smps); +u8 *rtl_find_ie(u8 *data, unsigned int len, u8 ie); +void rtl_recognize_peer(struct ieee80211_hw *hw, u8 *data, unsigned int len); +u8 rtl_tid_to_ac(struct ieee80211_hw *hw, u8 tid); +extern struct attribute_group rtl_attribute_group; +void rtl_easy_concurrent_retrytimer_callback(unsigned long data); +extern struct rtl_global_var global_var; + +#ifdef VIF_TODO +struct ieee80211_vif *rtl_get_main_vif(struct ieee80211_hw *hw); +bool rtl_set_vif_info(struct ieee80211_hw *hw, struct ieee80211_vif *vif); +#endif +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/HalBtc8812a1Ant.c +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/HalBtc8812a1Ant.c @@ -0,0 +1,3976 @@ +//============================================================ +// Description: +// +// This file is for 8812a1ant Co-exist mechanism +// +// History +// 2012/11/15 Cosa first check in. +// +//============================================================ + +//============================================================ +// include files +//============================================================ +#include "halbt_precomp.h" +#if 1 +//============================================================ +// Global variables, these are static variables +//============================================================ +static COEX_DM_8812A_1ANT GLCoexDm8812a1Ant; +static PCOEX_DM_8812A_1ANT coex_dm=&GLCoexDm8812a1Ant; +static COEX_STA_8812A_1ANT GLCoexSta8812a1Ant; +static PCOEX_STA_8812A_1ANT coex_sta=&GLCoexSta8812a1Ant; + +const char *const GLBtInfoSrc8812a1Ant[]={ + "BT Info[wifi fw]", + "BT Info[bt rsp]", + "BT Info[bt auto report]", +}; + +//============================================================ +// local function proto type if needed +//============================================================ +//============================================================ +// local function start with halbtc8812a1ant_ +//============================================================ +#if 0 +void +halbtc8812a1ant_Reg0x550Bit3( + PBTC_COEXIST btcoexist, + BOOLEAN bSet + ) +{ + u1Byte u1tmp=0; + + u1tmp = btcoexist->btc_read_1byte(btcoexist, 0x550); + if(bSet) + { + u1tmp |= BIT3; + } + else + { + u1tmp &= ~BIT3; + } + btcoexist->btc_write_1byte(btcoexist, 0x550, u1tmp); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], set 0x550[3]=%d\n", (bSet? 1:0))); +} +#endif +u1Byte +halbtc8812a1ant_BtRssiState( + u1Byte level_num, + u1Byte rssi_thresh, + u1Byte rssi_thresh1 + ) +{ + s4Byte bt_rssi=0; + u1Byte bt_rssi_state; + + bt_rssi = coex_sta->bt_rssi; + + if(level_num == 2) + { + if( (coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_LOW) || + (coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_STAY_LOW)) + { + if(bt_rssi >= (rssi_thresh+BTC_RSSI_COEX_THRESH_TOL_8812A_1ANT)) + { + bt_rssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to High\n")); + } + else + { + bt_rssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at Low\n")); + } + } + else + { + if(bt_rssi < rssi_thresh) + { + bt_rssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to Low\n")); + } + else + { + bt_rssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at High\n")); + } + } + } + else if(level_num == 3) + { + if(rssi_thresh > rssi_thresh1) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi thresh error!!\n")); + return coex_sta->pre_bt_rssi_state; + } + + if( (coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_LOW) || + (coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_STAY_LOW)) + { + if(bt_rssi >= (rssi_thresh+BTC_RSSI_COEX_THRESH_TOL_8812A_1ANT)) + { + bt_rssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to Medium\n")); + } + else + { + bt_rssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at Low\n")); + } + } + else if( (coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_MEDIUM) || + (coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_STAY_MEDIUM)) + { + if(bt_rssi >= (rssi_thresh1+BTC_RSSI_COEX_THRESH_TOL_8812A_1ANT)) + { + bt_rssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to High\n")); + } + else if(bt_rssi < rssi_thresh) + { + bt_rssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to Low\n")); + } + else + { + bt_rssi_state = BTC_RSSI_STATE_STAY_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at Medium\n")); + } + } + else + { + if(bt_rssi < rssi_thresh1) + { + bt_rssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to Medium\n")); + } + else + { + bt_rssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at High\n")); + } + } + } + + coex_sta->pre_bt_rssi_state = bt_rssi_state; + + return bt_rssi_state; +} + +u1Byte +halbtc8812a1ant_WifiRssiState( + PBTC_COEXIST btcoexist, + u1Byte index, + u1Byte level_num, + u1Byte rssi_thresh, + u1Byte rssi_thresh1 + ) +{ + s4Byte wifi_rssi=0; + u1Byte wifi_rssi_state; + + btcoexist->btc_get(btcoexist, BTC_GET_S4_WIFI_RSSI, &wifi_rssi); + + if(level_num == 2) + { + if( (coex_sta->pre_wifi_rssi_state[index] == BTC_RSSI_STATE_LOW) || + (coex_sta->pre_wifi_rssi_state[index] == BTC_RSSI_STATE_STAY_LOW)) + { + if(wifi_rssi >= (rssi_thresh+BTC_RSSI_COEX_THRESH_TOL_8812A_1ANT)) + { + wifi_rssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to High\n")); + } + else + { + wifi_rssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at Low\n")); + } + } + else + { + if(wifi_rssi < rssi_thresh) + { + wifi_rssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to Low\n")); + } + else + { + wifi_rssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at High\n")); + } + } + } + else if(level_num == 3) + { + if(rssi_thresh > rssi_thresh1) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI thresh error!!\n")); + return coex_sta->pre_wifi_rssi_state[index]; + } + + if( (coex_sta->pre_wifi_rssi_state[index] == BTC_RSSI_STATE_LOW) || + (coex_sta->pre_wifi_rssi_state[index] == BTC_RSSI_STATE_STAY_LOW)) + { + if(wifi_rssi >= (rssi_thresh+BTC_RSSI_COEX_THRESH_TOL_8812A_1ANT)) + { + wifi_rssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to Medium\n")); + } + else + { + wifi_rssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at Low\n")); + } + } + else if( (coex_sta->pre_wifi_rssi_state[index] == BTC_RSSI_STATE_MEDIUM) || + (coex_sta->pre_wifi_rssi_state[index] == BTC_RSSI_STATE_STAY_MEDIUM)) + { + if(wifi_rssi >= (rssi_thresh1+BTC_RSSI_COEX_THRESH_TOL_8812A_1ANT)) + { + wifi_rssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to High\n")); + } + else if(wifi_rssi < rssi_thresh) + { + wifi_rssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to Low\n")); + } + else + { + wifi_rssi_state = BTC_RSSI_STATE_STAY_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at Medium\n")); + } + } + else + { + if(wifi_rssi < rssi_thresh1) + { + wifi_rssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to Medium\n")); + } + else + { + wifi_rssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at High\n")); + } + } + } + + coex_sta->pre_wifi_rssi_state[index] = wifi_rssi_state; + + return wifi_rssi_state; +} + +void +halbtc8812a1ant_MonitorBtEnableDisable( + PBTC_COEXIST btcoexist + ) +{ + static BOOLEAN pre_bt_disabled=false; + static u4Byte bt_disable_cnt=0; + BOOLEAN bt_active=true, bt_disable_by68=false, bt_disabled=false; + u4Byte u4_tmp=0; + + // This function check if bt is disabled + + if( coex_sta->high_priority_tx == 0 && + coex_sta->high_priority_rx == 0 && + coex_sta->low_priority_tx == 0 && + coex_sta->low_priority_rx == 0) + { + bt_active = false; + } + if( coex_sta->high_priority_tx == 0xffff && + coex_sta->high_priority_rx == 0xffff && + coex_sta->low_priority_tx == 0xffff && + coex_sta->low_priority_rx == 0xffff) + { + bt_active = false; + } + if(bt_active) + { + bt_disable_cnt = 0; + bt_disabled = false; + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_DISABLE, &bt_disabled); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], BT is enabled !!\n")); + } + else + { + bt_disable_cnt++; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], bt all counters=0, %d times!!\n", + bt_disable_cnt)); + if(bt_disable_cnt >= 2 ||bt_disable_by68) + { + bt_disabled = true; + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_DISABLE, &bt_disabled); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], BT is disabled !!\n")); + } + } + if(pre_bt_disabled != bt_disabled) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], BT is from %s to %s!!\n", + (pre_bt_disabled ? "disabled":"enabled"), + (bt_disabled ? "disabled":"enabled"))); + pre_bt_disabled = bt_disabled; + if(!bt_disabled) + { + } + else + { + } + } +} + +void +halbtc8812a1ant_MonitorBtCtr( + PBTC_COEXIST btcoexist + ) +{ + u4Byte reg_hp_tx_rx, reg_lp_tx_rx, u4_tmp; + u4Byte reg_hp_tx=0, reg_hp_rx=0, reg_lp_tx=0, reg_lp_rx=0; + u1Byte u1_tmp; + + reg_hp_tx_rx = 0x770; + reg_lp_tx_rx = 0x774; + + u4_tmp = btcoexist->btc_read_4byte(btcoexist, reg_hp_tx_rx); + reg_hp_tx = u4_tmp & bMaskLWord; + reg_hp_rx = (u4_tmp & bMaskHWord)>>16; + + u4_tmp = btcoexist->btc_read_4byte(btcoexist, reg_lp_tx_rx); + reg_lp_tx = u4_tmp & bMaskLWord; + reg_lp_rx = (u4_tmp & bMaskHWord)>>16; + + coex_sta->high_priority_tx = reg_hp_tx; + coex_sta->high_priority_rx = reg_hp_rx; + coex_sta->low_priority_tx = reg_lp_tx; + coex_sta->low_priority_rx = reg_lp_rx; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], High Priority Tx/Rx (reg 0x%x)=%x(%d)/%x(%d)\n", + reg_hp_tx_rx, reg_hp_tx, reg_hp_tx, reg_hp_rx, reg_hp_rx)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], Low Priority Tx/Rx (reg 0x%x)=%x(%d)/%x(%d)\n", + reg_lp_tx_rx, reg_lp_tx, reg_lp_tx, reg_lp_rx, reg_lp_rx)); + + // reset counter + btcoexist->btc_write_1byte(btcoexist, 0x76e, 0xc); +} + +void +halbtc8812a1ant_QueryBtInfo( + PBTC_COEXIST btcoexist + ) +{ + u1Byte dataLen=3; + u1Byte buf[5] = {0}; + static u4Byte btInfoCnt=0; + + if(!btInfoCnt || + (coex_sta->bt_info_c2h_cnt[BT_INFO_SRC_8812A_1ANT_BT_RSP]-btInfoCnt)>2) + { + buf[0] = dataLen; + buf[1] = 0x1; // polling enable, 1=enable, 0=disable + buf[2] = 0x2; // polling time in seconds + buf[3] = 0x1; // auto report enable, 1=enable, 0=disable + + btcoexist->btc_set(btcoexist, BTC_SET_ACT_CTRL_BT_INFO, (PVOID)&buf[0]); + } + btInfoCnt = coex_sta->bt_info_c2h_cnt[BT_INFO_SRC_8812A_1ANT_BT_RSP]; +} +u1Byte +halbtc8812a1ant_ActionAlgorithm( + PBTC_COEXIST btcoexist + ) +{ + PBTC_STACK_INFO stack_info=&btcoexist->stack_info; + BOOLEAN bt_hs_on=false; + u1Byte algorithm=BT_8812A_1ANT_COEX_ALGO_UNDEFINED; + u1Byte num_of_diff_profile=0; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + + if(!stack_info->bt_link_exist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], No profile exists!!!\n")); + return algorithm; + } + + if(stack_info->sco_exist) + num_of_diff_profile++; + if(stack_info->hid_exist) + num_of_diff_profile++; + if(stack_info->pan_exist) + num_of_diff_profile++; + if(stack_info->a2dp_exist) + num_of_diff_profile++; + + if(num_of_diff_profile == 1) + { + if(stack_info->sco_exist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO only\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_SCO; + } + else + { + if(stack_info->hid_exist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID only\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_HID; + } + else if(stack_info->a2dp_exist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], A2DP only\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_A2DP; + } + else if(stack_info->pan_exist) + { + if(bt_hs_on) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], PAN(HS) only\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_PANHS; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], PAN(EDR) only\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_PANEDR; + } + } + } + } + else if(num_of_diff_profile == 2) + { + if(stack_info->sco_exist) + { + if(stack_info->hid_exist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_HID; + } + else if(stack_info->a2dp_exist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + A2DP ==> SCO\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_SCO; + } + else if(stack_info->pan_exist) + { + if(bt_hs_on) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + PAN(HS)\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_SCO; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + PAN(EDR)\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_PANEDR_HID; + } + } + } + else + { + if( stack_info->hid_exist && + stack_info->a2dp_exist ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + A2DP\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_HID_A2DP; + } + else if( stack_info->hid_exist && + stack_info->pan_exist ) + { + if(bt_hs_on) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + PAN(HS)\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_HID_A2DP; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + PAN(EDR)\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_PANEDR_HID; + } + } + else if( stack_info->pan_exist && + stack_info->a2dp_exist ) + { + if(bt_hs_on) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], A2DP + PAN(HS)\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_A2DP_PANHS; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], A2DP + PAN(EDR)\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_PANEDR_A2DP; + } + } + } + } + else if(num_of_diff_profile == 3) + { + if(stack_info->sco_exist) + { + if( stack_info->hid_exist && + stack_info->a2dp_exist ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID + A2DP ==> HID\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_HID; + } + else if( stack_info->hid_exist && + stack_info->pan_exist ) + { + if(bt_hs_on) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID + PAN(HS)\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_HID_A2DP; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID + PAN(EDR)\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_PANEDR_HID; + } + } + else if( stack_info->pan_exist && + stack_info->a2dp_exist ) + { + if(bt_hs_on) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + A2DP + PAN(HS)\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_SCO; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + A2DP + PAN(EDR) ==> HID\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_PANEDR_HID; + } + } + } + else + { + if( stack_info->hid_exist && + stack_info->pan_exist && + stack_info->a2dp_exist ) + { + if(bt_hs_on) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + A2DP + PAN(HS)\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_HID_A2DP; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + A2DP + PAN(EDR)\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_HID_A2DP_PANEDR; + } + } + } + } + else if(num_of_diff_profile >= 3) + { + if(stack_info->sco_exist) + { + if( stack_info->hid_exist && + stack_info->pan_exist && + stack_info->a2dp_exist ) + { + if(bt_hs_on) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Error!!! SCO + HID + A2DP + PAN(HS)\n")); + + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID + A2DP + PAN(EDR)==>PAN(EDR)+HID\n")); + algorithm = BT_8812A_1ANT_COEX_ALGO_PANEDR_HID; + } + } + } + } + + return algorithm; +} + +BOOLEAN +halbtc8812a1ant_NeedToDecBtPwr( + PBTC_COEXIST btcoexist + ) +{ + BOOLEAN ret=false; + BOOLEAN bt_hs_on=false, wifi_connected=false; + s4Byte bt_hs_rssi=0; + + if(!btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on)) + return false; + if(!btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, &wifi_connected)) + return false; + if(!btcoexist->btc_get(btcoexist, BTC_GET_S4_HS_RSSI, &bt_hs_rssi)) + return false; + + if(wifi_connected) + { + if(bt_hs_on) + { + if(bt_hs_rssi > 37) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], Need to decrease bt power for HS mode!!\n")); + ret = true; + } + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], Need to decrease bt power for Wifi is connected!!\n")); + ret = true; + } + } + + return ret; +} + +void +halbtc8812a1ant_SetFwDacSwingLevel( + PBTC_COEXIST btcoexist, + u1Byte dac_swing_lvl + ) +{ + u1Byte h2c_parameter[1] ={0}; + + // There are several type of dacswing + // 0x18/ 0x10/ 0xc/ 0x8/ 0x4/ 0x6 + h2c_parameter[0] = dac_swing_lvl; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], Set Dac Swing Level=0x%x\n", dac_swing_lvl)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], FW write 0x64=0x%x\n", h2c_parameter[0])); + + btcoexist->btc_fill_h2c(btcoexist, 0x64, 1, h2c_parameter); +} + +void +halbtc8812a1ant_SetFwDecBtPwr( + PBTC_COEXIST btcoexist, + BOOLEAN dec_bt_pwr + ) +{ + u1Byte dataLen=3; + u1Byte buf[5] = {0}; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], decrease Bt Power : %s\n", + (dec_bt_pwr? "Yes!!":"No!!"))); + + buf[0] = dataLen; + buf[1] = 0x3; // OP_Code + buf[2] = 0x1; // OP_Code_Length + if(dec_bt_pwr) + buf[3] = 0x1; // OP_Code_Content + else + buf[3] = 0x0; + + btcoexist->btc_set(btcoexist, BTC_SET_ACT_CTRL_BT_COEX, (PVOID)&buf[0]); +} + +void +halbtc8812a1ant_DecBtPwr( + PBTC_COEXIST btcoexist, + BOOLEAN force_exec, + BOOLEAN dec_bt_pwr + ) +{ + return; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s Dec BT power = %s\n", + (force_exec? "force to":""), ((dec_bt_pwr)? "ON":"OFF"))); + coex_dm->cur_dec_bt_pwr = dec_bt_pwr; + + if(!force_exec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], pre_dec_bt_pwr=%d, cur_dec_bt_pwr=%d\n", + coex_dm->pre_dec_bt_pwr, coex_dm->cur_dec_bt_pwr)); + + if(coex_dm->pre_dec_bt_pwr == coex_dm->cur_dec_bt_pwr) + return; + } + halbtc8812a1ant_SetFwDecBtPwr(btcoexist, coex_dm->cur_dec_bt_pwr); + + coex_dm->pre_dec_bt_pwr = coex_dm->cur_dec_bt_pwr; +} + +void +halbtc8812a1ant_SetFwBtLnaConstrain( + PBTC_COEXIST btcoexist, + BOOLEAN bt_lna_cons_on + ) +{ + u1Byte dataLen=3; + u1Byte buf[5] = {0}; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], set BT LNA Constrain: %s\n", + (bt_lna_cons_on? "ON!!":"OFF!!"))); + + buf[0] = dataLen; + buf[1] = 0x2; // OP_Code + buf[2] = 0x1; // OP_Code_Length + if(bt_lna_cons_on) + buf[3] = 0x1; // OP_Code_Content + else + buf[3] = 0x0; + + btcoexist->btc_set(btcoexist, BTC_SET_ACT_CTRL_BT_COEX, (PVOID)&buf[0]); +} + +void +halbtc8812a1ant_SetBtLnaConstrain( + PBTC_COEXIST btcoexist, + BOOLEAN force_exec, + BOOLEAN bt_lna_cons_on + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s BT Constrain = %s\n", + (force_exec? "force":""), ((bt_lna_cons_on)? "ON":"OFF"))); + coex_dm->bCurBtLnaConstrain = bt_lna_cons_on; + + if(!force_exec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], bPreBtLnaConstrain=%d, bCurBtLnaConstrain=%d\n", + coex_dm->bPreBtLnaConstrain, coex_dm->bCurBtLnaConstrain)); + + if(coex_dm->bPreBtLnaConstrain == coex_dm->bCurBtLnaConstrain) + return; + } + halbtc8812a1ant_SetFwBtLnaConstrain(btcoexist, coex_dm->bCurBtLnaConstrain); + + coex_dm->bPreBtLnaConstrain = coex_dm->bCurBtLnaConstrain; +} + +void +halbtc8812a1ant_SetFwBtPsdMode( + PBTC_COEXIST btcoexist, + u1Byte bt_psd_mode + ) +{ + u1Byte dataLen=3; + u1Byte buf[5] = {0}; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], set BT PSD mode=0x%x\n", + bt_psd_mode)); + + buf[0] = dataLen; + buf[1] = 0x4; // OP_Code + buf[2] = 0x1; // OP_Code_Length + buf[3] = bt_psd_mode; // OP_Code_Content + + btcoexist->btc_set(btcoexist, BTC_SET_ACT_CTRL_BT_COEX, (PVOID)&buf[0]); +} + + +void +halbtc8812a1ant_SetBtPsdMode( + PBTC_COEXIST btcoexist, + BOOLEAN force_exec, + u1Byte bt_psd_mode + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s BT PSD mode = 0x%x\n", + (force_exec? "force":""), bt_psd_mode)); + coex_dm->bCurBtPsdMode = bt_psd_mode; + + if(!force_exec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], bPreBtPsdMode=0x%x, bCurBtPsdMode=0x%x\n", + coex_dm->bPreBtPsdMode, coex_dm->bCurBtPsdMode)); + + if(coex_dm->bPreBtPsdMode == coex_dm->bCurBtPsdMode) + return; + } + halbtc8812a1ant_SetFwBtPsdMode(btcoexist, coex_dm->bCurBtPsdMode); + + coex_dm->bPreBtPsdMode = coex_dm->bCurBtPsdMode; +} + + +void +halbtc8812a1ant_SetBtAutoReport( + PBTC_COEXIST btcoexist, + BOOLEAN enable_auto_report + ) +{ +#if 0 + u1Byte h2c_parameter[1] ={0}; + + h2c_parameter[0] = 0; + + if(enable_auto_report) + { + h2c_parameter[0] |= BIT0; + } + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], BT FW auto report : %s, FW write 0x68=0x%x\n", + (enable_auto_report? "Enabled!!":"Disabled!!"), h2c_parameter[0])); + + btcoexist->btc_fill_h2c(btcoexist, 0x68, 1, h2c_parameter); +#else + +#endif +} + +void +halbtc8812a1ant_BtAutoReport( + PBTC_COEXIST btcoexist, + BOOLEAN force_exec, + BOOLEAN enable_auto_report + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s BT Auto report = %s\n", + (force_exec? "force to":""), ((enable_auto_report)? "Enabled":"Disabled"))); + coex_dm->cur_bt_auto_report = enable_auto_report; + + if(!force_exec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], pre_bt_auto_report=%d, cur_bt_auto_report=%d\n", + coex_dm->pre_bt_auto_report, coex_dm->cur_bt_auto_report)); + + if(coex_dm->pre_bt_auto_report == coex_dm->cur_bt_auto_report) + return; + } + halbtc8812a1ant_SetBtAutoReport(btcoexist, coex_dm->cur_bt_auto_report); + + coex_dm->pre_bt_auto_report = coex_dm->cur_bt_auto_report; +} + +void +halbtc8812a1ant_FwDacSwingLvl( + PBTC_COEXIST btcoexist, + BOOLEAN force_exec, + u1Byte fw_dac_swing_lvl + ) +{ + return; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s set FW Dac Swing level = %d\n", + (force_exec? "force to":""), fw_dac_swing_lvl)); + coex_dm->cur_fw_dac_swing_lvl = fw_dac_swing_lvl; + + if(!force_exec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], pre_fw_dac_swing_lvl=%d, cur_fw_dac_swing_lvl=%d\n", + coex_dm->pre_fw_dac_swing_lvl, coex_dm->cur_fw_dac_swing_lvl)); + + if(coex_dm->pre_fw_dac_swing_lvl == coex_dm->cur_fw_dac_swing_lvl) + return; + } + + halbtc8812a1ant_SetFwDacSwingLevel(btcoexist, coex_dm->cur_fw_dac_swing_lvl); + + coex_dm->pre_fw_dac_swing_lvl = coex_dm->cur_fw_dac_swing_lvl; +} + +void +halbtc8812a1ant_SetSwRfRxLpfCorner( + PBTC_COEXIST btcoexist, + BOOLEAN rx_rf_shrink_on + ) +{ + if(rx_rf_shrink_on) + { + //Shrink RF Rx LPF corner + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Shrink RF Rx LPF corner!!\n")); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1e, 0xfffff, 0xf0ff7); + } + else + { + //Resume RF Rx LPF corner + // After initialized, we can use coex_dm->bt_rf0x1e_backup + if(btcoexist->bInitilized) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Resume RF Rx LPF corner!!\n")); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1e, 0xfffff, coex_dm->bt_rf0x1e_backup); + } + } +} + +void +halbtc8812a1ant_RfShrink( + PBTC_COEXIST btcoexist, + BOOLEAN force_exec, + BOOLEAN rx_rf_shrink_on + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s turn Rx RF Shrink = %s\n", + (force_exec? "force to":""), ((rx_rf_shrink_on)? "ON":"OFF"))); + coex_dm->cur_rf_rx_lpf_shrink = rx_rf_shrink_on; + + if(!force_exec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], pre_rf_rx_lpf_shrink=%d, cur_rf_rx_lpf_shrink=%d\n", + coex_dm->pre_rf_rx_lpf_shrink, coex_dm->cur_rf_rx_lpf_shrink)); + + if(coex_dm->pre_rf_rx_lpf_shrink == coex_dm->cur_rf_rx_lpf_shrink) + return; + } + halbtc8812a1ant_SetSwRfRxLpfCorner(btcoexist, coex_dm->cur_rf_rx_lpf_shrink); + + coex_dm->pre_rf_rx_lpf_shrink = coex_dm->cur_rf_rx_lpf_shrink; +} + +void +halbtc8812a1ant_SetSwPenaltyTxRateAdaptive( + PBTC_COEXIST btcoexist, + BOOLEAN low_penalty_ra + ) +{ + u1Byte u1_tmp; + + u1_tmp = btcoexist->btc_read_1byte(btcoexist, 0x4fd); + u1_tmp |= BIT0; + if(low_penalty_ra) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Tx rate adaptive, set low penalty!!\n")); + u1_tmp &= ~BIT2; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Tx rate adaptive, set normal!!\n")); + u1_tmp |= BIT2; + } + + btcoexist->btc_write_1byte(btcoexist, 0x4fd, u1_tmp); +} + +void +halbtc8812a1ant_LowPenaltyRa( + PBTC_COEXIST btcoexist, + BOOLEAN force_exec, + BOOLEAN low_penalty_ra + ) +{ + return; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s turn LowPenaltyRA = %s\n", + (force_exec? "force to":""), ((low_penalty_ra)? "ON":"OFF"))); + coex_dm->cur_low_penalty_ra = low_penalty_ra; + + if(!force_exec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], pre_low_penalty_ra=%d, cur_low_penalty_ra=%d\n", + coex_dm->pre_low_penalty_ra, coex_dm->cur_low_penalty_ra)); + + if(coex_dm->pre_low_penalty_ra == coex_dm->cur_low_penalty_ra) + return; + } + halbtc8812a1ant_SetSwPenaltyTxRateAdaptive(btcoexist, coex_dm->cur_low_penalty_ra); + + coex_dm->pre_low_penalty_ra = coex_dm->cur_low_penalty_ra; +} + +void +halbtc8812a1ant_SetDacSwingReg( + PBTC_COEXIST btcoexist, + u4Byte level + ) +{ + u1Byte val=(u1Byte)level; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Write SwDacSwing = 0x%x\n", level)); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0xc5b, 0x3e, val); +} + +void +halbtc8812a1ant_SetSwFullTimeDacSwing( + PBTC_COEXIST btcoexist, + BOOLEAN sw_dac_swing_on, + u4Byte sw_dac_swing_lvl + ) +{ + if(sw_dac_swing_on) + { + halbtc8812a1ant_SetDacSwingReg(btcoexist, sw_dac_swing_lvl); + } + else + { + halbtc8812a1ant_SetDacSwingReg(btcoexist, 0x18); + } +} + + +void +halbtc8812a1ant_DacSwing( + PBTC_COEXIST btcoexist, + BOOLEAN force_exec, + BOOLEAN dac_swing_on, + u4Byte dac_swing_lvl + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s turn DacSwing=%s, dac_swing_lvl=0x%x\n", + (force_exec? "force to":""), ((dac_swing_on)? "ON":"OFF"), dac_swing_lvl)); + coex_dm->cur_dac_swing_on = dac_swing_on; + coex_dm->cur_dac_swing_lvl = dac_swing_lvl; + + if(!force_exec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], pre_dac_swing_on=%d, pre_dac_swing_lvl=0x%x, cur_dac_swing_on=%d, cur_dac_swing_lvl=0x%x\n", + coex_dm->pre_dac_swing_on, coex_dm->pre_dac_swing_lvl, + coex_dm->cur_dac_swing_on, coex_dm->cur_dac_swing_lvl)); + + if( (coex_dm->pre_dac_swing_on == coex_dm->cur_dac_swing_on) && + (coex_dm->pre_dac_swing_lvl == coex_dm->cur_dac_swing_lvl) ) + return; + } + delay_ms(30); + halbtc8812a1ant_SetSwFullTimeDacSwing(btcoexist, dac_swing_on, dac_swing_lvl); + + coex_dm->pre_dac_swing_on = coex_dm->cur_dac_swing_on; + coex_dm->pre_dac_swing_lvl = coex_dm->cur_dac_swing_lvl; +} + +void +halbtc8812a1ant_SetAdcBackOff( + PBTC_COEXIST btcoexist, + BOOLEAN adc_back_off + ) +{ + if(adc_back_off) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], BB BackOff Level On!\n")); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x8db, 0x60, 0x3); + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], BB BackOff Level Off!\n")); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x8db, 0x60, 0x1); + } +} + +void +halbtc8812a1ant_AdcBackOff( + PBTC_COEXIST btcoexist, + BOOLEAN force_exec, + BOOLEAN adc_back_off + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s turn AdcBackOff = %s\n", + (force_exec? "force to":""), ((adc_back_off)? "ON":"OFF"))); + coex_dm->cur_adc_back_off = adc_back_off; + + if(!force_exec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], pre_adc_back_off=%d, cur_adc_back_off=%d\n", + coex_dm->pre_adc_back_off, coex_dm->cur_adc_back_off)); + + if(coex_dm->pre_adc_back_off == coex_dm->cur_adc_back_off) + return; + } + halbtc8812a1ant_SetAdcBackOff(btcoexist, coex_dm->cur_adc_back_off); + + coex_dm->pre_adc_back_off = coex_dm->cur_adc_back_off; +} + +void +halbtc8812a1ant_SetAgcTable( + PBTC_COEXIST btcoexist, + BOOLEAN agc_table_en + ) +{ + u1Byte rssi_adjust_val=0; + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0xef, 0xfffff, 0x02000); + if(agc_table_en) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Agc Table On!\n")); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, 0xfffff, 0x3fa58); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, 0xfffff, 0x37a58); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, 0xfffff, 0x2fa58); + rssi_adjust_val = 8; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Agc Table Off!\n")); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, 0xfffff, 0x39258); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, 0xfffff, 0x31258); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, 0xfffff, 0x29258); + } + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0xef, 0xfffff, 0x0); + + // set rssi_adjust_val for wifi module. + btcoexist->btc_set(btcoexist, BTC_SET_U1_RSSI_ADJ_VAL_FOR_AGC_TABLE_ON, &rssi_adjust_val); +} + + +void +halbtc8812a1ant_AgcTable( + PBTC_COEXIST btcoexist, + BOOLEAN force_exec, + BOOLEAN agc_table_en + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s %s Agc Table\n", + (force_exec? "force to":""), ((agc_table_en)? "Enable":"Disable"))); + coex_dm->cur_agc_table_en = agc_table_en; + + if(!force_exec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], pre_agc_table_en=%d, cur_agc_table_en=%d\n", + coex_dm->pre_agc_table_en, coex_dm->cur_agc_table_en)); + + if(coex_dm->pre_agc_table_en == coex_dm->cur_agc_table_en) + return; + } + halbtc8812a1ant_SetAgcTable(btcoexist, agc_table_en); + + coex_dm->pre_agc_table_en = coex_dm->cur_agc_table_en; +} + +void +halbtc8812a1ant_SetCoexTable( + PBTC_COEXIST btcoexist, + u4Byte val0x6c0, + u4Byte val0x6c4, + u4Byte val0x6c8, + u1Byte val0x6cc + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], set coex table, set 0x6c0=0x%x\n", val0x6c0)); + btcoexist->btc_write_4byte(btcoexist, 0x6c0, val0x6c0); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], set coex table, set 0x6c4=0x%x\n", val0x6c4)); + btcoexist->btc_write_4byte(btcoexist, 0x6c4, val0x6c4); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], set coex table, set 0x6c8=0x%x\n", val0x6c8)); + btcoexist->btc_write_4byte(btcoexist, 0x6c8, val0x6c8); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], set coex table, set 0x6cc=0x%x\n", val0x6cc)); + btcoexist->btc_write_1byte(btcoexist, 0x6cc, val0x6cc); +} + +void +halbtc8812a1ant_CoexTable( + PBTC_COEXIST btcoexist, + BOOLEAN force_exec, + u4Byte val0x6c0, + u4Byte val0x6c4, + u4Byte val0x6c8, + u1Byte val0x6cc + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s write Coex Table 0x6c0=0x%x, 0x6c4=0x%x, 0x6c8=0x%x, 0x6cc=0x%x\n", + (force_exec? "force to":""), val0x6c0, val0x6c4, val0x6c8, val0x6cc)); + coex_dm->cur_val0x6c0 = val0x6c0; + coex_dm->cur_val0x6c4 = val0x6c4; + coex_dm->cur_val0x6c8 = val0x6c8; + coex_dm->cur_val0x6cc = val0x6cc; + + if(!force_exec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], pre_val0x6c0=0x%x, pre_val0x6c4=0x%x, pre_val0x6c8=0x%x, pre_val0x6cc=0x%x !!\n", + coex_dm->pre_val0x6c0, coex_dm->pre_val0x6c4, coex_dm->pre_val0x6c8, coex_dm->pre_val0x6cc)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], cur_val0x6c0=0x%x, cur_val0x6c4=0x%x, cur_val0x6c8=0x%x, cur_val0x6cc=0x%x !!\n", + coex_dm->cur_val0x6c0, coex_dm->cur_val0x6c4, coex_dm->cur_val0x6c8, coex_dm->cur_val0x6cc)); + + if( (coex_dm->pre_val0x6c0 == coex_dm->cur_val0x6c0) && + (coex_dm->pre_val0x6c4 == coex_dm->cur_val0x6c4) && + (coex_dm->pre_val0x6c8 == coex_dm->cur_val0x6c8) && + (coex_dm->pre_val0x6cc == coex_dm->cur_val0x6cc) ) + return; + } + halbtc8812a1ant_SetCoexTable(btcoexist, val0x6c0, val0x6c4, val0x6c8, val0x6cc); + + coex_dm->pre_val0x6c0 = coex_dm->cur_val0x6c0; + coex_dm->pre_val0x6c4 = coex_dm->cur_val0x6c4; + coex_dm->pre_val0x6c8 = coex_dm->cur_val0x6c8; + coex_dm->pre_val0x6cc = coex_dm->cur_val0x6cc; +} + +void +halbtc8812a1ant_SetFwIgnoreWlanAct( + PBTC_COEXIST btcoexist, + BOOLEAN enable + ) +{ + u1Byte dataLen=3; + u1Byte buf[5] = {0}; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], %s BT Ignore Wlan_Act\n", + (enable? "Enable":"Disable"))); + + buf[0] = dataLen; + buf[1] = 0x1; // OP_Code + buf[2] = 0x1; // OP_Code_Length + if(enable) + buf[3] = 0x1; // OP_Code_Content + else + buf[3] = 0x0; + + btcoexist->btc_set(btcoexist, BTC_SET_ACT_CTRL_BT_COEX, (PVOID)&buf[0]); +} + +void +halbtc8812a1ant_IgnoreWlanAct( + PBTC_COEXIST btcoexist, + BOOLEAN force_exec, + BOOLEAN enable + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s turn Ignore WlanAct %s\n", + (force_exec? "force to":""), (enable? "ON":"OFF"))); + coex_dm->cur_ignore_wlan_act = enable; + + if(!force_exec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], pre_ignore_wlan_act = %d, cur_ignore_wlan_act = %d!!\n", + coex_dm->pre_ignore_wlan_act, coex_dm->cur_ignore_wlan_act)); + + if(coex_dm->pre_ignore_wlan_act == coex_dm->cur_ignore_wlan_act) + return; + } + halbtc8812a1ant_SetFwIgnoreWlanAct(btcoexist, enable); + + coex_dm->pre_ignore_wlan_act = coex_dm->cur_ignore_wlan_act; +} + +void +halbtc8812a1ant_SetFwPstdma( + PBTC_COEXIST btcoexist, + u1Byte byte1, + u1Byte byte2, + u1Byte byte3, + u1Byte byte4, + u1Byte byte5 + ) +{ + u1Byte h2c_parameter[5] ={0}; + + h2c_parameter[0] = byte1; + h2c_parameter[1] = byte2; + h2c_parameter[2] = byte3; + h2c_parameter[3] = byte4; + h2c_parameter[4] = byte5; + + coex_dm->ps_tdma_para[0] = byte1; + coex_dm->ps_tdma_para[1] = byte2; + coex_dm->ps_tdma_para[2] = byte3; + coex_dm->ps_tdma_para[3] = byte4; + coex_dm->ps_tdma_para[4] = byte5; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], FW write 0x60(5bytes)=0x%x%08x\n", + h2c_parameter[0], + h2c_parameter[1]<<24|h2c_parameter[2]<<16|h2c_parameter[3]<<8|h2c_parameter[4])); + + btcoexist->btc_fill_h2c(btcoexist, 0x60, 5, h2c_parameter); +} + +void +halbtc8812a1ant_SetLpsRpwm( + PBTC_COEXIST btcoexist, + u1Byte lps_val, + u1Byte rpwm_val + ) +{ + u1Byte lps=lps_val; + u1Byte rpwm=rpwm_val; + + btcoexist->btc_set(btcoexist, BTC_SET_U1_1ANT_LPS, &lps); + btcoexist->btc_set(btcoexist, BTC_SET_U1_1ANT_RPWM, &rpwm); + + btcoexist->btc_set(btcoexist, BTC_SET_ACT_INC_FORCE_EXEC_PWR_CMD_CNT, NULL); +} + +void +halbtc8812a1ant_LpsRpwm( + PBTC_COEXIST btcoexist, + BOOLEAN force_exec, + u1Byte lps_val, + u1Byte rpwm_val + ) +{ + BOOLEAN bForceExecPwrCmd=false; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s set lps/rpwm=0x%x/0x%x \n", + (force_exec? "force to":""), lps_val, rpwm_val)); + coex_dm->cur_lps = lps_val; + coex_dm->cur_rpwm = rpwm_val; + + if(!force_exec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], pre_lps/cur_lps=0x%x/0x%x, pre_rpwm/cur_rpwm=0x%x/0x%x!!\n", + coex_dm->pre_lps, coex_dm->cur_lps, coex_dm->pre_rpwm, coex_dm->cur_rpwm)); + + if( (coex_dm->pre_lps == coex_dm->cur_lps) && + (coex_dm->pre_rpwm == coex_dm->cur_rpwm) ) + { + return; + } + } + halbtc8812a1ant_SetLpsRpwm(btcoexist, lps_val, rpwm_val); + + coex_dm->pre_lps = coex_dm->cur_lps; + coex_dm->pre_rpwm = coex_dm->cur_rpwm; +} + +void +halbtc8812a1ant_SwMechanism1( + PBTC_COEXIST btcoexist, + BOOLEAN shrink_rx_lpf, + BOOLEAN low_penalty_ra, + BOOLEAN limited_dig, + BOOLEAN bt_lna_constrain + ) +{ + //halbtc8812a1ant_RfShrink(btcoexist, NORMAL_EXEC, shrink_rx_lpf); + //halbtc8812a1ant_LowPenaltyRa(btcoexist, NORMAL_EXEC, low_penalty_ra); + + //no limited DIG + //halbtc8812a1ant_SetBtLnaConstrain(btcoexist, NORMAL_EXEC, bt_lna_constrain); +} + +void +halbtc8812a1ant_SwMechanism2( + PBTC_COEXIST btcoexist, + BOOLEAN agc_table_shift, + BOOLEAN adc_back_off, + BOOLEAN sw_dac_swing, + u4Byte dac_swing_lvl + ) +{ + //halbtc8812a1ant_AgcTable(btcoexist, NORMAL_EXEC, agc_table_shift); + //halbtc8812a1ant_AdcBackOff(btcoexist, NORMAL_EXEC, adc_back_off); + //halbtc8812a1ant_DacSwing(btcoexist, NORMAL_EXEC, sw_dac_swing, dac_swing_lvl); +} + +void +halbtc8812a1ant_PsTdma( + PBTC_COEXIST btcoexist, + BOOLEAN force_exec, + BOOLEAN turn_on, + u1Byte type + ) +{ + BOOLEAN bTurnOnByCnt=false; + u1Byte psTdmaTypeByCnt=0, rssi_adjust_val=0; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s turn %s PS TDMA, type=%d\n", + (force_exec? "force to":""), (turn_on? "ON":"OFF"), type)); + coex_dm->cur_ps_tdma_on = turn_on; + coex_dm->cur_ps_tdma = type; + + if(!force_exec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], pre_ps_tdma_on = %d, cur_ps_tdma_on = %d!!\n", + coex_dm->pre_ps_tdma_on, coex_dm->cur_ps_tdma_on)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], pre_ps_tdma = %d, cur_ps_tdma = %d!!\n", + coex_dm->pre_ps_tdma, coex_dm->cur_ps_tdma)); + + if( (coex_dm->pre_ps_tdma_on == coex_dm->cur_ps_tdma_on) && + (coex_dm->pre_ps_tdma == coex_dm->cur_ps_tdma) ) + return; + } + if(turn_on) + { + switch(type) + { + default: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xd3, 0x1a, 0x1a, 0x0, 0x58); + break; + case 1: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xd3, 0x1a, 0x1a, 0x0, 0x48); + rssi_adjust_val = 11; + break; + case 2: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xd3, 0x12, 0x12, 0x0, 0x48); + rssi_adjust_val = 14; + break; + case 3: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x93, 0x25, 0x3, 0x10, 0x40); + break; + case 4: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x93, 0x15, 0x3, 0x14, 0x0); + rssi_adjust_val = 17; + break; + case 5: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x61, 0x15, 0x3, 0x31, 0x0); + break; + case 6: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x13, 0xa, 0x3, 0x0, 0x0); + break; + case 7: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x13, 0xc, 0x5, 0x0, 0x0); + break; + case 8: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x93, 0x25, 0x3, 0x10, 0x0); + break; + case 9: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xd3, 0xa, 0xa, 0x0, 0x48); + rssi_adjust_val = 18; + break; + case 10: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x13, 0xa, 0xa, 0x0, 0x40); + break; + case 11: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xd3, 0x5, 0x5, 0x0, 0x48); + rssi_adjust_val = 20; + break; + case 12: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xeb, 0xa, 0x3, 0x31, 0x18); + break; + + case 15: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x13, 0xa, 0x3, 0x8, 0x0); + break; + case 16: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x93, 0x15, 0x3, 0x10, 0x0); + rssi_adjust_val = 18; + break; + + case 18: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x93, 0x25, 0x3, 0x10, 0x0); + rssi_adjust_val = 14; + break; + + case 20: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x13, 0x25, 0x25, 0x0, 0x0); + break; + case 21: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x93, 0x20, 0x3, 0x10, 0x40); + break; + case 22: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x13, 0x8, 0x8, 0x0, 0x40); + break; + case 23: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xe3, 0x25, 0x3, 0x31, 0x18); + rssi_adjust_val = 22; + break; + case 24: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xe3, 0x15, 0x3, 0x31, 0x18); + rssi_adjust_val = 22; + break; + case 25: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xe3, 0xa, 0x3, 0x31, 0x18); + rssi_adjust_val = 22; + break; + case 26: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xe3, 0xa, 0x3, 0x31, 0x18); + rssi_adjust_val = 22; + break; + case 27: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xe3, 0x25, 0x3, 0x31, 0x98); + rssi_adjust_val = 22; + break; + case 28: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x69, 0x25, 0x3, 0x31, 0x0); + break; + case 29: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xab, 0x1a, 0x1a, 0x1, 0x8); + break; + case 30: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x93, 0x15, 0x3, 0x14, 0x0); + break; + case 31: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xd3, 0x1a, 0x1a, 0, 0x58); + break; + case 32: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xab, 0xa, 0x3, 0x31, 0x88); + break; + case 33: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xa3, 0x25, 0x3, 0x30, 0x88); + break; + case 34: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xd3, 0x1a, 0x1a, 0x0, 0x8); + break; + case 35: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xe3, 0x1a, 0x1a, 0x0, 0x8); + break; + case 36: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0xd3, 0x12, 0x3, 0x14, 0x58); + break; + } + } + else + { + // disable PS tdma + switch(type) + { + case 8: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x8, 0x0, 0x0, 0x0, 0x0); + btcoexist->btc_write_1byte(btcoexist, 0x92c, 0x4); + break; + case 0: + default: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x0, 0x0, 0x0, 0x0, 0x0); + delay_ms(5); + btcoexist->btc_write_1byte(btcoexist, 0x92c, 0x20); + break; + case 9: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x0, 0x0, 0x0, 0x0, 0x0); + btcoexist->btc_write_1byte(btcoexist, 0x92c, 0x4); + break; + case 10: + halbtc8812a1ant_SetFwPstdma(btcoexist, 0x0, 0x0, 0x0, 0x8, 0x0); + delay_ms(5); + btcoexist->btc_write_1byte(btcoexist, 0x92c, 0x20); + break; + } + } + rssi_adjust_val =0; + btcoexist->btc_set(btcoexist, BTC_SET_U1_RSSI_ADJ_VAL_FOR_1ANT_COEX_TYPE, &rssi_adjust_val); + + // update pre state + coex_dm->pre_ps_tdma_on = coex_dm->cur_ps_tdma_on; + coex_dm->pre_ps_tdma = coex_dm->cur_ps_tdma; +} + +void +halbtc8812a1ant_CoexAllOff( + PBTC_COEXIST btcoexist + ) +{ + // fw all off + halbtc8812a1ant_FwDacSwingLvl(btcoexist, NORMAL_EXEC, 6); + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, false); + + // sw all off + halbtc8812a1ant_SwMechanism1(btcoexist,false,false,false,false); + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + + + // hw all off + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); +} + +void +halbtc8812a1ant_WifiParaAdjust( + PBTC_COEXIST btcoexist, + BOOLEAN enable + ) +{ + if(enable) + { + halbtc8812a1ant_LowPenaltyRa(btcoexist, NORMAL_EXEC, true); + } + else + { + halbtc8812a1ant_LowPenaltyRa(btcoexist, NORMAL_EXEC, false); + } +} + +BOOLEAN +halbtc8812a1ant_IsCommonAction( + PBTC_COEXIST btcoexist + ) +{ + BOOLEAN common=false, wifi_connected=false, wifi_busy=false; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, &wifi_connected); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + + //halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + + if(!wifi_connected && + BT_8812A_1ANT_BT_STATUS_NON_CONNECTED_IDLE == coex_dm->bt_status) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi non connected-idle + BT non connected-idle!!\n")); + halbtc8812a1ant_FwDacSwingLvl(btcoexist, NORMAL_EXEC, 6); + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, false); + + halbtc8812a1ant_SwMechanism1(btcoexist,false,false,false,false); + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + + common = true; + } + else if(wifi_connected && + (BT_8812A_1ANT_BT_STATUS_NON_CONNECTED_IDLE == coex_dm->bt_status) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi connected + BT non connected-idle!!\n")); + halbtc8812a1ant_FwDacSwingLvl(btcoexist, NORMAL_EXEC, 6); + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, true); + + halbtc8812a1ant_SwMechanism1(btcoexist,false,false,false,false); + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + + common = true; + } + else if(!wifi_connected && + (BT_8812A_1ANT_BT_STATUS_CONNECTED_IDLE == coex_dm->bt_status) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi non connected-idle + BT connected-idle!!\n")); + halbtc8812a1ant_FwDacSwingLvl(btcoexist, NORMAL_EXEC, 6); + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, false); + + halbtc8812a1ant_SwMechanism1(btcoexist,false,false,false,false); + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + + common = true; + } + else if(wifi_connected && + (BT_8812A_1ANT_BT_STATUS_CONNECTED_IDLE == coex_dm->bt_status) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi connected + BT connected-idle!!\n")); + halbtc8812a1ant_FwDacSwingLvl(btcoexist, NORMAL_EXEC, 6); + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, false); + + halbtc8812a1ant_SwMechanism1(btcoexist,true,true,true,true); + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + + common = true; + } + else if(!wifi_connected && + (BT_8812A_1ANT_BT_STATUS_CONNECTED_IDLE != coex_dm->bt_status) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi non connected-idle + BT Busy!!\n")); + halbtc8812a1ant_FwDacSwingLvl(btcoexist, NORMAL_EXEC, 6); + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, false); + + halbtc8812a1ant_SwMechanism1(btcoexist,false,false,false,false); + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + + common = true; + } + else + { + halbtc8812a1ant_SwMechanism1(btcoexist,true,true,true,true); + + common = false; + } + + return common; +} + + +void +halbtc8812a1ant_TdmaDurationAdjustForAcl( + PBTC_COEXIST btcoexist + ) +{ + static s4Byte up,dn,m,n,wait_count; + s4Byte result; //0: no change, +1: increase WiFi duration, -1: decrease WiFi duration + u1Byte retry_count=0, bt_info_ext; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], halbtc8812a1ant_TdmaDurationAdjustForAcl()\n")); + if(coex_dm->reset_tdma_adjust) + { + coex_dm->reset_tdma_adjust = false; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], first run TdmaDurationAdjust()!!\n")); + + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 2); + coex_dm->ps_tdma_du_adj_type = 2; + //============ + up = 0; + dn = 0; + m = 1; + n= 3; + result = 0; + wait_count = 0; + } + else + { + //accquire the BT TRx retry count from BT_Info byte2 + retry_count = coex_sta->bt_retry_cnt; + bt_info_ext = coex_sta->bt_info_ext; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], retry_count = %d\n", retry_count)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], up=%d, dn=%d, m=%d, n=%d, wait_count=%d\n", + up, dn, m, n, wait_count)); + result = 0; + wait_count++; + + if(retry_count == 0) // no retry in the last 2-second duration + { + up++; + dn--; + + if (dn <= 0) + dn = 0; + + if(up >= n) // if s n 2 retry count0, hռeWiFi duration + { + wait_count = 0; + n = 3; + up = 0; + dn = 0; + result = 1; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], Increase wifi duration!!\n")); + } + } + else if (retry_count <= 3) // <=3 retry in the last 2-second duration + { + up--; + dn++; + + if (up <= 0) + up = 0; + + if (dn == 2) // if s 2 2 retry count< 3, hկWiFi duration + { + if (wait_count <= 2) + m++; // קK@blevelӦ^ + else + m = 1; + + if ( m >= 20) //m ̤j = 20 ' ̤j120 recheckO_վ WiFi duration. + m = 20; + + n = 3*m; + up = 0; + dn = 0; + wait_count = 0; + result = -1; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], Decrease wifi duration for retryCounter<3!!\n")); + } + } + else //retry count > 3, un1 retry count > 3, hկWiFi duration + { + if (wait_count == 1) + m++; // קK@blevelӦ^ + else + m = 1; + + if ( m >= 20) //m ̤j = 20 ' ̤j120 recheckO_վ WiFi duration. + m = 20; + + n = 3*m; + up = 0; + dn = 0; + wait_count = 0; + result = -1; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], Decrease wifi duration for retryCounter>3!!\n")); + } + + if(result == -1) + { + if( (BT_INFO_8812A_1ANT_A2DP_BASIC_RATE(bt_info_ext)) && + ((coex_dm->cur_ps_tdma == 1) ||(coex_dm->cur_ps_tdma == 2)) ) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 9); + coex_dm->ps_tdma_du_adj_type = 9; + } + else if(coex_dm->cur_ps_tdma == 1) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 2); + coex_dm->ps_tdma_du_adj_type = 2; + } + else if(coex_dm->cur_ps_tdma == 2) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 9); + coex_dm->ps_tdma_du_adj_type = 9; + } + else if(coex_dm->cur_ps_tdma == 9) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 11); + coex_dm->ps_tdma_du_adj_type = 11; + } + } + else if(result == 1) + { + if( (BT_INFO_8812A_1ANT_A2DP_BASIC_RATE(bt_info_ext)) && + ((coex_dm->cur_ps_tdma == 1) ||(coex_dm->cur_ps_tdma == 2)) ) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 9); + coex_dm->ps_tdma_du_adj_type = 9; + } + else if(coex_dm->cur_ps_tdma == 11) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 9); + coex_dm->ps_tdma_du_adj_type = 9; + } + else if(coex_dm->cur_ps_tdma == 9) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 2); + coex_dm->ps_tdma_du_adj_type = 2; + } + else if(coex_dm->cur_ps_tdma == 2) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 1); + coex_dm->ps_tdma_du_adj_type = 1; + } + } + + if( coex_dm->cur_ps_tdma != 1 && + coex_dm->cur_ps_tdma != 2 && + coex_dm->cur_ps_tdma != 9 && + coex_dm->cur_ps_tdma != 11 ) + { + // recover to previous adjust type + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, coex_dm->ps_tdma_du_adj_type); + } + } +} + +u1Byte +halbtc8812a1ant_PsTdmaTypeByWifiRssi( + s4Byte wifi_rssi, + s4Byte pre_wifi_rssi, + u1Byte wifi_rssi_thresh + ) +{ + u1Byte ps_tdma_type=0; + + if(wifi_rssi > pre_wifi_rssi) + { + if(wifi_rssi > (wifi_rssi_thresh+5)) + { + ps_tdma_type = 26; + } + else + { + ps_tdma_type = 25; + } + } + else + { + if(wifi_rssi > wifi_rssi_thresh) + { + ps_tdma_type = 26; + } + else + { + ps_tdma_type = 25; + } + } + + return ps_tdma_type; +} + +void +halbtc8812a1ant_PsTdmaCheckForPowerSaveState( + PBTC_COEXIST btcoexist, + BOOLEAN new_ps_state + ) +{ + u1Byte lps_mode=0x0; + + btcoexist->btc_get(btcoexist, BTC_GET_U1_LPS_MODE, &lps_mode); + + if(lps_mode) // already under LPS state + { + if(new_ps_state) + { + // keep state under LPS, do nothing. + } + else + { + // will leave LPS state, turn off psTdma first + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 0); + } + } + else // NO PS state + { + if(new_ps_state) + { + // will enter LPS state, turn off psTdma first + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 0); + } + else + { + // keep state under NO PS state, do nothing. + } + } +} + +// SCO only or SCO+PAN(HS) +void +halbtc8812a1ant_ActionSco( + PBTC_COEXIST btcoexist + ) +{ + u1Byte wifi_rssi_state; + u4Byte wifi_bw; + + wifi_rssi_state = halbtc8812a1ant_WifiRssiState(btcoexist, 0, 2, 25, 0); + + halbtc8812a1ant_FwDacSwingLvl(btcoexist, NORMAL_EXEC, 4); + + if(halbtc8812a1ant_NeedToDecBtPwr(btcoexist)) + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if(BTC_WIFI_BW_HT40 == wifi_bw) + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,true,false,0x18); + } + } + else + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + } + } +} + + +void +halbtc8812a1ant_ActionHid( + PBTC_COEXIST btcoexist + ) +{ + u1Byte wifi_rssi_state, bt_rssi_state; + u4Byte wifi_bw; + + wifi_rssi_state = halbtc8812a1ant_WifiRssiState(btcoexist, 0, 2, 25, 0); + bt_rssi_state = halbtc8812a1ant_BtRssiState(2, 50, 0); + + halbtc8812a1ant_FwDacSwingLvl(btcoexist, NORMAL_EXEC, 6); + + if(halbtc8812a1ant_NeedToDecBtPwr(btcoexist)) + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if(BTC_WIFI_BW_HT40 == wifi_bw) + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,false,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + } + } + else + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + } + } +} + +//A2DP only / PAN(EDR) only/ A2DP+PAN(HS) +void +halbtc8812a1ant_ActionA2dp( + PBTC_COEXIST btcoexist + ) +{ + u1Byte wifi_rssi_state, bt_rssi_state; + u4Byte wifi_bw; + + wifi_rssi_state = halbtc8812a1ant_WifiRssiState(btcoexist, 0, 2, 25, 0); + bt_rssi_state = halbtc8812a1ant_BtRssiState(2, 50, 0); + + halbtc8812a1ant_FwDacSwingLvl(btcoexist, NORMAL_EXEC, 6); + + if(halbtc8812a1ant_NeedToDecBtPwr(btcoexist)) + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if(BTC_WIFI_BW_HT40 == wifi_bw) + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,true,false,0x18); + } + } + else + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + } + } +} + +void +halbtc8812a1ant_ActionA2dpPanHs( + PBTC_COEXIST btcoexist + ) +{ + u1Byte wifi_rssi_state, bt_rssi_state, bt_info_ext; + u4Byte wifi_bw; + + bt_info_ext = coex_sta->bt_info_ext; + wifi_rssi_state = halbtc8812a1ant_WifiRssiState(btcoexist, 0, 2, 25, 0); + bt_rssi_state = halbtc8812a1ant_BtRssiState(2, 50, 0); + + halbtc8812a1ant_FwDacSwingLvl(btcoexist, NORMAL_EXEC, 6); + + if(halbtc8812a1ant_NeedToDecBtPwr(btcoexist)) + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if(BTC_WIFI_BW_HT40 == wifi_bw) + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,true,false,0x18); + } + } + else + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + } + } +} + +void +halbtc8812a1ant_ActionPanEdr( + PBTC_COEXIST btcoexist + ) +{ + u1Byte wifi_rssi_state, bt_rssi_state; + u4Byte wifi_bw; + + wifi_rssi_state = halbtc8812a1ant_WifiRssiState(btcoexist, 0, 2, 25, 0); + bt_rssi_state = halbtc8812a1ant_BtRssiState(2, 50, 0); + + halbtc8812a1ant_FwDacSwingLvl(btcoexist, NORMAL_EXEC, 6); + + if(halbtc8812a1ant_NeedToDecBtPwr(btcoexist)) + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if(BTC_WIFI_BW_HT40 == wifi_bw) + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,true,false,0x18); + } + } + else + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + } + } +} + + +//PAN(HS) only +void +halbtc8812a1ant_ActionPanHs( + PBTC_COEXIST btcoexist + ) +{ + u1Byte wifi_rssi_state, bt_rssi_state; + u4Byte wifi_bw; + + wifi_rssi_state = halbtc8812a1ant_WifiRssiState(btcoexist, 0, 2, 25, 0); + bt_rssi_state = halbtc8812a1ant_BtRssiState(2, 50, 0); + + halbtc8812a1ant_FwDacSwingLvl(btcoexist, NORMAL_EXEC, 6); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if(BTC_WIFI_BW_HT40 == wifi_bw) + { + // fw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, true); + } + else + { + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, false); + } + + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,true,false,0x18); + } + } + else + { + // fw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, true); + } + else + { + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, false); + } + + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + } + } +} + +//PAN(EDR)+A2DP +void +halbtc8812a1ant_ActionPanEdrA2dp( + PBTC_COEXIST btcoexist + ) +{ + u1Byte wifi_rssi_state, bt_rssi_state, bt_info_ext; + u4Byte wifi_bw; + + bt_info_ext = coex_sta->bt_info_ext; + wifi_rssi_state = halbtc8812a1ant_WifiRssiState(btcoexist, 0, 2, 25, 0); + bt_rssi_state = halbtc8812a1ant_BtRssiState(2, 50, 0); + + halbtc8812a1ant_FwDacSwingLvl(btcoexist, NORMAL_EXEC, 6); + + if(halbtc8812a1ant_NeedToDecBtPwr(btcoexist)) + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if(BTC_WIFI_BW_HT40 == wifi_bw) + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,true,false,0x18); + } + } + else + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + } + } +} + +void +halbtc8812a1ant_ActionPanEdrHid( + PBTC_COEXIST btcoexist + ) +{ + u1Byte wifi_rssi_state, bt_rssi_state; + u4Byte wifi_bw; + + wifi_rssi_state = halbtc8812a1ant_WifiRssiState(btcoexist, 0, 2, 25, 0); + bt_rssi_state = halbtc8812a1ant_BtRssiState(2, 50, 0); + + halbtc8812a1ant_FwDacSwingLvl(btcoexist, NORMAL_EXEC, 6); + + if(halbtc8812a1ant_NeedToDecBtPwr(btcoexist)) + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if(BTC_WIFI_BW_HT40 == wifi_bw) + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,true,false,0x18); + } + } + else + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + } + } +} + +// HID+A2DP+PAN(EDR) +void +halbtc8812a1ant_ActionHidA2dpPanEdr( + PBTC_COEXIST btcoexist + ) +{ + u1Byte wifi_rssi_state, bt_rssi_state, bt_info_ext; + u4Byte wifi_bw; + + bt_info_ext = coex_sta->bt_info_ext; + wifi_rssi_state = halbtc8812a1ant_WifiRssiState(btcoexist, 0, 2, 25, 0); + bt_rssi_state = halbtc8812a1ant_BtRssiState(2, 50, 0); + + halbtc8812a1ant_FwDacSwingLvl(btcoexist, NORMAL_EXEC, 6); + + if(halbtc8812a1ant_NeedToDecBtPwr(btcoexist)) + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if(BTC_WIFI_BW_HT40 == wifi_bw) + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,true,false,0x18); + } + } + else + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + } + } +} + +void +halbtc8812a1ant_ActionHidA2dp( + PBTC_COEXIST btcoexist + ) +{ + u1Byte wifi_rssi_state, bt_rssi_state, bt_info_ext; + u4Byte wifi_bw; + + bt_info_ext = coex_sta->bt_info_ext; + wifi_rssi_state = halbtc8812a1ant_WifiRssiState(btcoexist, 0, 2, 25, 0); + bt_rssi_state = halbtc8812a1ant_BtRssiState(2, 50, 0); + + if(halbtc8812a1ant_NeedToDecBtPwr(btcoexist)) + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8812a1ant_DecBtPwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if(BTC_WIFI_BW_HT40 == wifi_bw) + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,true,false,0x18); + } + } + else + { + // sw mechanism + if( (wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8812a1ant_SwMechanism2(btcoexist,true,true,false,0x18); + } + else + { + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + } + } +} + +void +halbtc8812a1ant_ActionHs( + PBTC_COEXIST btcoexist, + BOOLEAN hs_connecting + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action for HS, hs_connecting=%d!!!\n", hs_connecting)); + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 8); + + if(hs_connecting) + { + halbtc8812a1ant_CoexTable(btcoexist, FORCE_EXEC, 0xaaaaaaaa, 0xaaaaaaaa, 0xffff, 0x3); + } + else + { + if((coex_sta->high_priority_tx+coex_sta->high_priority_rx+ + coex_sta->low_priority_tx+coex_sta->low_priority_rx)<=1200) + halbtc8812a1ant_CoexTable(btcoexist, FORCE_EXEC, 0xaaaaaaaa, 0xaaaaaaaa, 0xffff, 0x3); + else + halbtc8812a1ant_CoexTable(btcoexist, FORCE_EXEC, 0xffffffff, 0xffffffff, 0xffff, 0x3); + } +} + + +void +halbtc8812a1ant_ActionWifiNotConnected( + PBTC_COEXIST btcoexist + ) +{ + BOOLEAN hs_connecting=false; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_CONNECTING, &hs_connecting); + + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + + if(hs_connecting) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HS is connecting!!!\n")); + halbtc8812a1ant_ActionHs(btcoexist, hs_connecting); + } + else + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 8); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } +} + +void +halbtc8812a1ant_ActionWifiNotConnectedAssoAuthScan( + PBTC_COEXIST btcoexist + ) +{ + PBTC_STACK_INFO stack_info=&btcoexist->stack_info; + BOOLEAN hs_connecting=false; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_CONNECTING, &hs_connecting); + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + + if(hs_connecting) + { + halbtc8812a1ant_ActionHs(btcoexist, hs_connecting); + } + else if(btcoexist->bt_info.bt_disabled) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 9); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + else if(BT_8812A_1ANT_BT_STATUS_INQ_PAGE == coex_dm->bt_status) +{ + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 30); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + else if( (BT_8812A_1ANT_BT_STATUS_NON_CONNECTED_IDLE == coex_dm->bt_status) || + (BT_8812A_1ANT_BT_STATUS_CONNECTED_IDLE == coex_dm->bt_status) ) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 28); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + else if(BT_8812A_1ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status) + { + if(stack_info->hid_exist) + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 35); + else + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 29); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + } + else if( (BT_8812A_1ANT_BT_STATUS_SCO_BUSY == coex_dm->bt_status) || + (BT_8812A_1ANT_BT_STATUS_ACL_SCO_BUSY == coex_dm->bt_status) ) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 8); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x5aea5aea, 0x5aea5aea, 0xffff, 0x3); + } + else + { + //error condition, should not reach here, record error number for debugging. + coex_dm->error_condition = 1; + } +} + +void +halbtc8812a1ant_ActionWifiConnectedScan( + PBTC_COEXIST btcoexist + ) +{ + PBTC_STACK_INFO stack_info=&btcoexist->stack_info; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], ActionConnectedScan()===>\n")); + + if(btcoexist->bt_info.bt_disabled) + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 9); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + else + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, true); + halbtc8812a1ant_LpsRpwm(btcoexist, NORMAL_EXEC, 0x0, 0x4); + // power save must executed before psTdma. + btcoexist->btc_set(btcoexist, BTC_SET_ACT_ENTER_LPS, NULL); + + // psTdma + if(BT_8812A_1ANT_BT_STATUS_INQ_PAGE == coex_dm->bt_status) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], ActionConnectedScan(), bt is under inquiry/page scan\n")); + if(stack_info->sco_exist) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 32); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + } + else + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 30); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + } + else if( (BT_8812A_1ANT_BT_STATUS_NON_CONNECTED_IDLE == coex_dm->bt_status) || + (BT_8812A_1ANT_BT_STATUS_CONNECTED_IDLE == coex_dm->bt_status) ) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 5); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + else if(BT_8812A_1ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status) + { + if(stack_info->hid_exist) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 34); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + } + else + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 4); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + } + else if( (BT_8812A_1ANT_BT_STATUS_SCO_BUSY == coex_dm->bt_status) || + (BT_8812A_1ANT_BT_STATUS_ACL_SCO_BUSY == coex_dm->bt_status) ) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 33); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + } + else + { + //error condition, should not reach here + coex_dm->error_condition = 2; + } + } + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], ActionConnectedScan()<===\n")); +} + +void +halbtc8812a1ant_ActionWifiConnectedSpecialPacket( + PBTC_COEXIST btcoexist + ) +{ + PBTC_STACK_INFO stack_info=&btcoexist->stack_info; + + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + + if(btcoexist->bt_info.bt_disabled) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 9); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + else + { + if(BT_8812A_1ANT_BT_STATUS_INQ_PAGE == coex_dm->bt_status) + { + if(stack_info->sco_exist) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 32); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + } + else + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 30); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + } + else if( (BT_8812A_1ANT_BT_STATUS_NON_CONNECTED_IDLE == coex_dm->bt_status) || + (BT_8812A_1ANT_BT_STATUS_CONNECTED_IDLE == coex_dm->bt_status) ) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 28); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + else if(BT_8812A_1ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status) + { + if(stack_info->hid_exist) + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 35); + else + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 29); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + } + else if( (BT_8812A_1ANT_BT_STATUS_SCO_BUSY == coex_dm->bt_status) || + (BT_8812A_1ANT_BT_STATUS_ACL_SCO_BUSY == coex_dm->bt_status) ) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 8); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x5aea5aea, 0x5aea5aea, 0xffff, 0x3); + } + else + { + //error condition, should not reach here + coex_dm->error_condition = 3; + } + } +} + +void +halbtc8812a1ant_ActionWifiConnected( + PBTC_COEXIST btcoexist + ) +{ + PBTC_STACK_INFO stack_info=&btcoexist->stack_info; + BOOLEAN wifi_connected=false, wifi_busy=false, bt_hs_on=false; + BOOLEAN scan=false, link=false, roam=false; + BOOLEAN hs_connecting=false, under4way=false; + u4Byte wifi_bw; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], CoexForWifiConnect()===>\n")); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, &wifi_connected); + if(!wifi_connected) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], CoexForWifiConnect(), return for wifi not connected<===\n")); + return; + } + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_4_WAY_PROGRESS, &under4way); + if(under4way) + { + halbtc8812a1ant_ActionWifiConnectedSpecialPacket(btcoexist); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], CoexForWifiConnect(), return for wifi is under 4way<===\n")); + return; + } + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_CONNECTING, &hs_connecting); + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_SCAN, &scan); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_LINK, &link); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_ROAM, &roam); + if(scan || link || roam) + { + halbtc8812a1ant_ActionWifiConnectedScan(btcoexist); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], CoexForWifiConnect(), return for wifi is under scan<===\n")); + return; + } + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + if(!wifi_busy) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], wifi associated-idle!!!\n")); + if(btcoexist->bt_info.bt_disabled) + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, true); + halbtc8812a1ant_LpsRpwm(btcoexist, NORMAL_EXEC, 0x0, 0x4); + btcoexist->btc_set(btcoexist, BTC_SET_ACT_ENTER_LPS, NULL); + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 9); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + else + { + if(BT_8812A_1ANT_BT_STATUS_INQ_PAGE == coex_dm->bt_status) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], bt is under inquiry/page scan!!!\n")); + if(stack_info->sco_exist) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 32); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + } + else + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, true); + halbtc8812a1ant_LpsRpwm(btcoexist, NORMAL_EXEC, 0x0, 0x4); + // power save must executed before psTdma. + btcoexist->btc_set(btcoexist, BTC_SET_ACT_ENTER_LPS, NULL); + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 30); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + } + else if(BT_8812A_1ANT_BT_STATUS_NON_CONNECTED_IDLE == coex_dm->bt_status) + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, true); + halbtc8812a1ant_LpsRpwm(btcoexist, NORMAL_EXEC, 0x26, 0x0); + // power save must executed before psTdma. + btcoexist->btc_set(btcoexist, BTC_SET_ACT_ENTER_LPS, NULL); + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 9); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + else if(BT_8812A_1ANT_BT_STATUS_CONNECTED_IDLE == coex_dm->bt_status) + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, true); + halbtc8812a1ant_LpsRpwm(btcoexist, NORMAL_EXEC, 0x26, 0x0); + // power save must executed before psTdma. + btcoexist->btc_set(btcoexist, BTC_SET_ACT_ENTER_LPS, NULL); + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 0); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + else if(BT_8812A_1ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status) + { + if(stack_info->hid_exist && stack_info->numOfLink==1) + { + // hid only + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + // power save must executed before psTdma. + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 8); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x5fff5fff, 0x5fff5fff, 0xffff, 0x3); + coex_dm->reset_tdma_adjust = true; + } + else + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, true); + halbtc8812a1ant_LpsRpwm(btcoexist, NORMAL_EXEC, 0x0, 0x4); + // power save must executed before psTdma. + btcoexist->btc_set(btcoexist, BTC_SET_ACT_ENTER_LPS, NULL); + + if(stack_info->hid_exist) + { + if(stack_info->a2dp_exist) + { + // hid+a2dp + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 2); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + } + else if(stack_info->pan_exist) + { + if(bt_hs_on) + { + // hid+hs + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 2); + } + else + { + // hid+pan + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 2); + } + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + } + else + { + coex_dm->error_condition = 4; + } + coex_dm->reset_tdma_adjust = true; + } + else if(stack_info->a2dp_exist) + { + if(stack_info->pan_exist) + { + if(bt_hs_on) + { + // a2dp+hs + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 2); + } + else + { + // a2dp+pan + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 36); + } + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + coex_dm->reset_tdma_adjust = true; + } + else + { + // a2dp only + halbtc8812a1ant_TdmaDurationAdjustForAcl(btcoexist); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + } + } + else if(stack_info->pan_exist) + { + // pan only + if(bt_hs_on) + { + coex_dm->error_condition = 5; + } + else + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 2); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + } + coex_dm->reset_tdma_adjust = true; + } + else + { + // temp state, do nothing!!! + //DbgPrint("error 6, coex_dm->bt_status=%d\n", coex_dm->bt_status); + //DbgPrint("error 6, stack_info->numOfLink=%d, stack_info->hid_exist=%d, stack_info->a2dp_exist=%d, stack_info->pan_exist=%d, stack_info->sco_exist=%d\n", + //stack_info->numOfLink, stack_info->hid_exist, stack_info->a2dp_exist, stack_info->pan_exist, stack_info->sco_exist); + //coex_dm->error_condition = 6; + } + } + } + else if( (BT_8812A_1ANT_BT_STATUS_SCO_BUSY == coex_dm->bt_status) || + (BT_8812A_1ANT_BT_STATUS_ACL_SCO_BUSY == coex_dm->bt_status) ) + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + // power save must executed before psTdma. + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 8); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x5aea5aea, 0x5aea5aea, 0xffff, 0x3); + } + else + { + //error condition, should not reach here + coex_dm->error_condition = 7; + } + } + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], wifi busy!!!\n")); + if(btcoexist->bt_info.bt_disabled) + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 9); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + else + { + if(bt_hs_on) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HS is under progress!!!\n")); + //DbgPrint("coex_dm->bt_status = 0x%x\n", coex_dm->bt_status); + halbtc8812a1ant_ActionHs(btcoexist, hs_connecting); + } + else if(BT_8812A_1ANT_BT_STATUS_INQ_PAGE == coex_dm->bt_status) + { + if(stack_info->sco_exist) + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 32); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + } + else + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, true); + halbtc8812a1ant_LpsRpwm(btcoexist, NORMAL_EXEC, 0x0, 0x4); + // power save must executed before psTdma. + btcoexist->btc_set(btcoexist, BTC_SET_ACT_ENTER_LPS, NULL); + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 30); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + } + else if(BT_8812A_1ANT_BT_STATUS_NON_CONNECTED_IDLE == coex_dm->bt_status) + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + // power save must executed before psTdma. + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 5); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x5a5a5a5a, 0x5a5a5a5a, 0xffff, 0x3); + } + else if(BT_8812A_1ANT_BT_STATUS_CONNECTED_IDLE == coex_dm->bt_status) + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + // power save must executed before psTdma. + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + if(bt_hs_on) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HS is under progress!!!\n")); + halbtc8812a1ant_ActionHs(btcoexist, hs_connecting); + } + else + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 5); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x5a5a5a5a, 0x5a5a5a5a, 0xffff, 0x3); + } + } + else if(BT_8812A_1ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status) + { + if(stack_info->hid_exist && stack_info->numOfLink==1) + { + // hid only + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + // power save must executed before psTdma. + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 8); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x5fff5fff, 0x5fff5fff, 0xffff, 0x3); + coex_dm->reset_tdma_adjust = true; + } + else + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, true); + halbtc8812a1ant_LpsRpwm(btcoexist, NORMAL_EXEC, 0x0, 0x4); + // power save must executed before psTdma. + btcoexist->btc_set(btcoexist, BTC_SET_ACT_ENTER_LPS, NULL); + + if(stack_info->hid_exist) + { + if(stack_info->a2dp_exist) + { + // hid+a2dp + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 2); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + } + else if(stack_info->pan_exist) + { + if(bt_hs_on) + { + // hid+hs + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 2); + } + else + { + // hid+pan + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 2); + } + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + } + else + { + coex_dm->error_condition = 8; + } + coex_dm->reset_tdma_adjust = true; + } + else if(stack_info->a2dp_exist) + { + if(stack_info->pan_exist) + { + if(bt_hs_on) + { + // a2dp+hs + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 2); + } + else + { + // a2dp+pan + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 36); + } + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + coex_dm->reset_tdma_adjust = true; + } + else + { + // a2dp only + halbtc8812a1ant_TdmaDurationAdjustForAcl(btcoexist); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + } + } + else if(stack_info->pan_exist) + { + // pan only + if(bt_hs_on) + { + coex_dm->error_condition = 9; + } + else + { + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, true, 2); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x5afa5afa, 0xffff, 0x3); + } + coex_dm->reset_tdma_adjust = true; + } + else + { + //DbgPrint("error 10, stack_info->numOfLink=%d, stack_info->hid_exist=%d, stack_info->a2dp_exist=%d, stack_info->pan_exist=%d, stack_info->sco_exist=%d\n", + //stack_info->numOfLink, stack_info->hid_exist, stack_info->a2dp_exist, stack_info->pan_exist, stack_info->sco_exist); + coex_dm->error_condition = 10; + } + } + } + else if( (BT_8812A_1ANT_BT_STATUS_SCO_BUSY == coex_dm->bt_status) || + (BT_8812A_1ANT_BT_STATUS_ACL_SCO_BUSY == coex_dm->bt_status) ) + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + // power save must executed before psTdma. + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 8); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x5aea5aea, 0x5aea5aea, 0xffff, 0x3); + } + else + { + //DbgPrint("error 11, coex_dm->bt_status=%d\n", coex_dm->bt_status); + //DbgPrint("error 11, stack_info->numOfLink=%d, stack_info->hid_exist=%d, stack_info->a2dp_exist=%d, stack_info->pan_exist=%d, stack_info->sco_exist=%d\n", + //stack_info->numOfLink, stack_info->hid_exist, stack_info->a2dp_exist, stack_info->pan_exist, stack_info->sco_exist); + //error condition, should not reach here + coex_dm->error_condition = 11; + } + } + } + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], CoexForWifiConnect()<===\n")); +} + +void +halbtc8812a1ant_RunSwCoexistMechanism( + PBTC_COEXIST btcoexist + ) +{ + PBTC_STACK_INFO stack_info=&btcoexist->stack_info; + BOOLEAN wifi_under5g=false, wifi_busy=false, wifi_connected=false; + u1Byte bt_info_original=0, bt_retry_cnt=0; + u1Byte algorithm=0; + + return; + if(stack_info->bProfileNotified) + { + algorithm = halbtc8812a1ant_ActionAlgorithm(btcoexist); + coex_dm->cur_algorithm = algorithm; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Algorithm = %d \n", coex_dm->cur_algorithm)); + + if(halbtc8812a1ant_IsCommonAction(btcoexist)) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action common.\n")); + } + else + { + switch(coex_dm->cur_algorithm) + { + case BT_8812A_1ANT_COEX_ALGO_SCO: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = SCO.\n")); + halbtc8812a1ant_ActionSco(btcoexist); + break; + case BT_8812A_1ANT_COEX_ALGO_HID: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = HID.\n")); + halbtc8812a1ant_ActionHid(btcoexist); + break; + case BT_8812A_1ANT_COEX_ALGO_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = A2DP.\n")); + halbtc8812a1ant_ActionA2dp(btcoexist); + break; + case BT_8812A_1ANT_COEX_ALGO_A2DP_PANHS: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = A2DP+PAN(HS).\n")); + halbtc8812a1ant_ActionA2dpPanHs(btcoexist); + break; + case BT_8812A_1ANT_COEX_ALGO_PANEDR: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = PAN(EDR).\n")); + halbtc8812a1ant_ActionPanEdr(btcoexist); + break; + case BT_8812A_1ANT_COEX_ALGO_PANHS: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = HS mode.\n")); + halbtc8812a1ant_ActionPanHs(btcoexist); + break; + case BT_8812A_1ANT_COEX_ALGO_PANEDR_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = PAN+A2DP.\n")); + halbtc8812a1ant_ActionPanEdrA2dp(btcoexist); + break; + case BT_8812A_1ANT_COEX_ALGO_PANEDR_HID: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = PAN(EDR)+HID.\n")); + halbtc8812a1ant_ActionPanEdrHid(btcoexist); + break; + case BT_8812A_1ANT_COEX_ALGO_HID_A2DP_PANEDR: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = HID+A2DP+PAN.\n")); + halbtc8812a1ant_ActionHidA2dpPanEdr(btcoexist); + break; + case BT_8812A_1ANT_COEX_ALGO_HID_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = HID+A2DP.\n")); + halbtc8812a1ant_ActionHidA2dp(btcoexist); + break; + default: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = coexist All Off!!\n")); + halbtc8812a1ant_CoexAllOff(btcoexist); + break; + } + coex_dm->pre_algorithm = coex_dm->cur_algorithm; + } + } +} + +void +halbtc8812a1ant_RunCoexistMechanism( + PBTC_COEXIST btcoexist + ) +{ + PBTC_STACK_INFO stack_info=&btcoexist->stack_info; + BOOLEAN wifi_under5g=false, wifi_busy=false, wifi_connected=false; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], RunCoexistMechanism()===>\n")); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_UNDER_5G, &wifi_under5g); + + if(wifi_under5g) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], RunCoexistMechanism(), return for 5G <===\n")); + return; + } + + if(btcoexist->manual_control) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], RunCoexistMechanism(), return for Manual CTRL <===\n")); + return; + } + + if(btcoexist->stop_coex_dm) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], RunCoexistMechanism(), return for Stop Coex DM <===\n")); + return; + } + + halbtc8812a1ant_RunSwCoexistMechanism(btcoexist); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, &wifi_connected); + if(btcoexist->bt_info.bt_disabled) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], bt is disabled!!!\n")); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + if(wifi_busy) + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 9); + } + else + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, true); + halbtc8812a1ant_LpsRpwm(btcoexist, NORMAL_EXEC, 0x0, 0x4); + // power save must executed before psTdma. + btcoexist->btc_set(btcoexist, BTC_SET_ACT_ENTER_LPS, NULL); + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 9); + } + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + } + else if(coex_sta->under_ips) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], wifi is under IPS !!!\n")); + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 0); + halbtc8812a1ant_CoexTable(btcoexist, NORMAL_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); + halbtc8812a1ant_WifiParaAdjust(btcoexist, false); + } + else if(!wifi_connected) + { + BOOLEAN scan=false, link=false, roam=false; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], wifi is non connected-idle !!!\n")); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_SCAN, &scan); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_LINK, &link); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_ROAM, &roam); + + if(scan || link || roam) + halbtc8812a1ant_ActionWifiNotConnectedAssoAuthScan(btcoexist); + else + halbtc8812a1ant_ActionWifiNotConnected(btcoexist); + } + else // wifi LPS/Busy + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], wifi is NOT under IPS!!!\n")); + halbtc8812a1ant_WifiParaAdjust(btcoexist, true); + halbtc8812a1ant_ActionWifiConnected(btcoexist); + } + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], RunCoexistMechanism()<===\n")); +} + +void +halbtc8812a1ant_InitCoexDm( + PBTC_COEXIST btcoexist + ) +{ + BOOLEAN wifi_connected=false; + // force to reset coex mechanism + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, &wifi_connected); + if(!wifi_connected) // non-connected scan + { + halbtc8812a1ant_ActionWifiNotConnected(btcoexist); + } + else // wifi is connected + { + halbtc8812a1ant_ActionWifiConnected(btcoexist); + } + + halbtc8812a1ant_FwDacSwingLvl(btcoexist, FORCE_EXEC, 6); + halbtc8812a1ant_DecBtPwr(btcoexist, FORCE_EXEC, false); + + // sw all off + halbtc8812a1ant_SwMechanism1(btcoexist,false,false,false,false); + halbtc8812a1ant_SwMechanism2(btcoexist,false,false,false,0x18); + + halbtc8812a1ant_CoexTable(btcoexist, FORCE_EXEC, 0x55555555, 0x55555555, 0xffff, 0x3); +} + +//============================================================ +// work around function start with wa_halbtc8812a1ant_ +//============================================================ +//============================================================ +// extern function start with EXhalbtc8812a1ant_ +//============================================================ +void +EXhalbtc8812a1ant_InitHwConfig( + PBTC_COEXIST btcoexist + ) +{ + u4Byte u4_tmp=0; + u2Byte u2Tmp=0; + u1Byte u1_tmp=0; + + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], 1Ant Init HW Config!!\n")); + + // backup rf 0x1e value + coex_dm->bt_rf0x1e_backup = + btcoexist->btc_get_rf_reg(btcoexist, BTC_RF_A, 0x1e, 0xfffff); + + //ant sw control to BT + btcoexist->btc_write_4byte(btcoexist, 0x900, 0x00000400); + btcoexist->btc_write_1byte(btcoexist, 0x76d, 0x1); + btcoexist->btc_write_1byte(btcoexist, 0xcb3, 0x77); + btcoexist->btc_write_1byte(btcoexist, 0xcb7, 0x40); + + // 0x790[5:0]=0x5 + u1_tmp = btcoexist->btc_read_1byte(btcoexist, 0x790); + u1_tmp &= 0xc0; + u1_tmp |= 0x5; + btcoexist->btc_write_1byte(btcoexist, 0x790, u1_tmp); + + // PTA parameter + btcoexist->btc_write_1byte(btcoexist, 0x6cc, 0x0); + btcoexist->btc_write_4byte(btcoexist, 0x6c8, 0xffff); + btcoexist->btc_write_4byte(btcoexist, 0x6c4, 0x55555555); + btcoexist->btc_write_4byte(btcoexist, 0x6c0, 0x55555555); + + // coex parameters + btcoexist->btc_write_1byte(btcoexist, 0x778, 0x1); + + // enable counter statistics + btcoexist->btc_write_1byte(btcoexist, 0x76e, 0x4); + + // enable PTA + btcoexist->btc_write_1byte(btcoexist, 0x40, 0x20); + + // bt clock related + u1_tmp = btcoexist->btc_read_1byte(btcoexist, 0x4); + u1_tmp |= BIT7; + btcoexist->btc_write_1byte(btcoexist, 0x4, u1_tmp); + + // bt clock related + u1_tmp = btcoexist->btc_read_1byte(btcoexist, 0x7); + u1_tmp |= BIT1; + btcoexist->btc_write_1byte(btcoexist, 0x7, u1_tmp); +} + +void +EXhalbtc8812a1ant_InitCoexDm( + PBTC_COEXIST btcoexist + ) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], Coex Mechanism Init!!\n")); + + btcoexist->stop_coex_dm = false; + + halbtc8812a1ant_InitCoexDm(btcoexist); +} + +void +EXhalbtc8812a1ant_DisplayCoexInfo( + PBTC_COEXIST btcoexist + ) +{ + PBTC_BOARD_INFO board_info=&btcoexist->boardInfo; + PBTC_STACK_INFO stack_info=&btcoexist->stack_info; + pu1Byte cli_buf=btcoexist->cli_buf; + u1Byte u1_tmp[4], i, bt_info_ext, psTdmaCase=0; + u4Byte u4_tmp[4]; + BOOLEAN roam=false, scan=false, link=false, wifi_under5g=false; + BOOLEAN bt_hs_on=false, wifi_busy=false; + s4Byte wifi_rssi=0, bt_hs_rssi=0; + u4Byte wifi_bw, wifiTrafficDir; + u1Byte wifiDot11Chnl, wifiHsChnl; + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n ============[BT Coexist info]============"); + CL_PRINTF(cli_buf); + + if(btcoexist->manual_control) + { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n ============[Under Manual Control]============"); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n =========================================="); + CL_PRINTF(cli_buf); + } + if(btcoexist->stop_coex_dm) + { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n ============[Coex is STOPPED]============"); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n =========================================="); + CL_PRINTF(cli_buf); + } + + if(!board_info->bBtExist) + { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n BT not exists !!!"); + CL_PRINTF(cli_buf); + return; + } + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d ", "Ant PG number/ Ant mechanism:", \ + board_info->pgAntNum, board_info->btdmAntNum); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %d", "BT stack/ hci ext ver", \ + ((stack_info->bProfileNotified)? "Yes":"No"), stack_info->hciVersion); + CL_PRINTF(cli_buf); + btcoexist->btc_disp_dbg_msg(btcoexist, BTC_DBG_DISP_BT_FW_VER); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + btcoexist->btc_get(btcoexist, BTC_GET_U1_WIFI_DOT11_CHNL, &wifiDot11Chnl); + btcoexist->btc_get(btcoexist, BTC_GET_U1_WIFI_HS_CHNL, &wifiHsChnl); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d / %d(%d)", "Dot11 channel / HsChnl(HsMode)", \ + wifiDot11Chnl, wifiHsChnl, bt_hs_on); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x ", "H2C Wifi inform bt chnl Info", \ + coex_dm->wifi_chnl_info[0], coex_dm->wifi_chnl_info[1], + coex_dm->wifi_chnl_info[2]); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_S4_WIFI_RSSI, &wifi_rssi); + btcoexist->btc_get(btcoexist, BTC_GET_S4_HS_RSSI, &bt_hs_rssi); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", "Wifi rssi/ HS rssi", \ + wifi_rssi, bt_hs_rssi); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_SCAN, &scan); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_LINK, &link); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_ROAM, &roam); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d ", "Wifi link/ roam/ scan", \ + link, roam, scan); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_UNDER_5G, &wifi_under5g); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_TRAFFIC_DIRECTION, &wifiTrafficDir); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %s/ %s ", "Wifi status", \ + (wifi_under5g? "5G":"2.4G"), + ((BTC_WIFI_BW_LEGACY==wifi_bw)? "Legacy": (((BTC_WIFI_BW_HT40==wifi_bw)? "HT40":"HT20"))), + ((!wifi_busy)? "idle": ((BTC_WIFI_TRAFFIC_TX==wifiTrafficDir)? "uplink":"downlink"))); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = [%s/ %d/ %d] ", "BT [status/ rssi/ retryCnt]", \ + ((coex_sta->c2h_bt_inquiry_page)?("inquiry/page scan"):((BT_8812A_1ANT_BT_STATUS_NON_CONNECTED_IDLE == coex_dm->bt_status)? "non-connected idle": + ( (BT_8812A_1ANT_BT_STATUS_CONNECTED_IDLE == coex_dm->bt_status)? "connected-idle":"busy"))), + coex_sta->bt_rssi, coex_sta->bt_retry_cnt); + CL_PRINTF(cli_buf); + + if(stack_info->bProfileNotified) + { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d / %d / %d / %d", "SCO/HID/PAN/A2DP", \ + stack_info->sco_exist, stack_info->hid_exist, stack_info->pan_exist, stack_info->a2dp_exist); + CL_PRINTF(cli_buf); + + btcoexist->btc_disp_dbg_msg(btcoexist, BTC_DBG_DISP_BT_LINK_INFO); + } + + bt_info_ext = coex_sta->bt_info_ext; + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s", "BT Info A2DP rate", \ + (bt_info_ext&BIT0)? "Basic rate":"EDR rate"); + CL_PRINTF(cli_buf); + + for(i=0; ibt_info_c2h_cnt[i]) + { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x %02x %02x %02x %02x(%d)", GLBtInfoSrc8812a1Ant[i], \ + coex_sta->bt_info_c2h[i][0], coex_sta->bt_info_c2h[i][1], + coex_sta->bt_info_c2h[i][2], coex_sta->bt_info_c2h[i][3], + coex_sta->bt_info_c2h[i][4], coex_sta->bt_info_c2h[i][5], + coex_sta->bt_info_c2h[i][6], coex_sta->bt_info_c2h_cnt[i]); + CL_PRINTF(cli_buf); + } + } + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s/%s, (0x%x/0x%x)", "PS state, IPS/LPS, (lps/rpwm)", \ + ((coex_sta->under_ips? "IPS ON":"IPS OFF")), + ((coex_sta->under_lps? "LPS ON":"LPS OFF")), + btcoexist->bt_info.lps1Ant, + btcoexist->bt_info.rpwm1Ant); + CL_PRINTF(cli_buf); + btcoexist->btc_disp_dbg_msg(btcoexist, BTC_DBG_DISP_FW_PWR_MODE_CMD); + + if(!btcoexist->manual_control) + { + // Sw mechanism + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s", "============[Sw mechanism]============"); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d/ %d ", "SM1[ShRf/ LpRA/ LimDig/ btLna]", \ + coex_dm->cur_rf_rx_lpf_shrink, coex_dm->cur_low_penalty_ra, coex_dm->limited_dig, coex_dm->bCurBtLnaConstrain); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d(0x%x) ", "SM2[AgcT/ AdcB/ SwDacSwing(lvl)]", \ + coex_dm->cur_agc_table_en, coex_dm->cur_adc_back_off, coex_dm->cur_dac_swing_on, coex_dm->cur_dac_swing_lvl); + CL_PRINTF(cli_buf); + + // Fw mechanism + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s", "============[Fw mechanism]============"); + CL_PRINTF(cli_buf); + + psTdmaCase = coex_dm->cur_ps_tdma; + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x %02x %02x case-%d", "PS TDMA", \ + coex_dm->ps_tdma_para[0], coex_dm->ps_tdma_para[1], + coex_dm->ps_tdma_para[2], coex_dm->ps_tdma_para[3], + coex_dm->ps_tdma_para[4], psTdmaCase); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x ", "Latest error condition(should be 0)", \ + coex_dm->error_condition); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d ", "DecBtPwr/ IgnWlanAct", \ + coex_dm->cur_dec_bt_pwr, coex_dm->cur_ignore_wlan_act); + CL_PRINTF(cli_buf); + } + + // Hw setting + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s", "============[Hw setting]============"); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "RF-A, 0x1e initVal", \ + coex_dm->bt_rf0x1e_backup); + CL_PRINTF(cli_buf); + + u1_tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x778); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "0x778", \ + u1_tmp[0]); + CL_PRINTF(cli_buf); + + u1_tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x92c); + u4_tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x930); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", "0x92c/ 0x930", \ + (u1_tmp[0]), u4_tmp[0]); + CL_PRINTF(cli_buf); + + u1_tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x40); + u1_tmp[1] = btcoexist->btc_read_1byte(btcoexist, 0x4f); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", "0x40/ 0x4f", \ + u1_tmp[0], u1_tmp[1]); + CL_PRINTF(cli_buf); + + u4_tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x550); + u1_tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x522); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", "0x550(bcn ctrl)/0x522", \ + u4_tmp[0], u1_tmp[0]); + CL_PRINTF(cli_buf); + + u4_tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0xc50); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "0xc50(dig)", \ + u4_tmp[0]); + CL_PRINTF(cli_buf); + +#if 0 + u4_tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0xf48); + u4_tmp[1] = btcoexist->btc_read_4byte(btcoexist, 0xf4c); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", "0xf48/ 0xf4c (FA cnt)", \ + u4_tmp[0], u4_tmp[1]); + CL_PRINTF(cli_buf); +#endif + + u4_tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x6c0); + u4_tmp[1] = btcoexist->btc_read_4byte(btcoexist, 0x6c4); + u4_tmp[2] = btcoexist->btc_read_4byte(btcoexist, 0x6c8); + u1_tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x6cc); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x/ 0x%x", "0x6c0/0x6c4/0x6c8/0x6cc(coexTable)", \ + u4_tmp[0], u4_tmp[1], u4_tmp[2], u1_tmp[0]); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", "0x770(hp rx[31:16]/tx[15:0])", \ + coex_sta->high_priority_rx, coex_sta->high_priority_tx); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", "0x774(lp rx[31:16]/tx[15:0])", \ + coex_sta->low_priority_rx, coex_sta->low_priority_tx); + CL_PRINTF(cli_buf); + + btcoexist->btc_disp_dbg_msg(btcoexist, BTC_DBG_DISP_COEX_STATISTICS); +} + + +void +EXhalbtc8812a1ant_IpsNotify( + PBTC_COEXIST btcoexist, + u1Byte type + ) +{ + u4Byte u4_tmp=0; + + if(btcoexist->manual_control || btcoexist->stop_coex_dm) + return; + + if(BTC_IPS_ENTER == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], IPS ENTER notify\n")); + coex_sta->under_ips = true; + + // 0x4c[23]=1 + u4_tmp = btcoexist->btc_read_4byte(btcoexist, 0x4c); + u4_tmp |= BIT23; + btcoexist->btc_write_4byte(btcoexist, 0x4c, u4_tmp); + + halbtc8812a1ant_CoexAllOff(btcoexist); + } + else if(BTC_IPS_LEAVE == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], IPS LEAVE notify\n")); + coex_sta->under_ips = false; + //halbtc8812a1ant_InitCoexDm(btcoexist); + } +} + +void +EXhalbtc8812a1ant_LpsNotify( + PBTC_COEXIST btcoexist, + u1Byte type + ) +{ + if(btcoexist->manual_control || btcoexist->stop_coex_dm) + return; + + if(BTC_LPS_ENABLE == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], LPS ENABLE notify\n")); + coex_sta->under_lps = true; + } + else if(BTC_IPS_LEAVE == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], LPS DISABLE notify\n")); + coex_sta->under_lps = false; + } +} + +void +EXhalbtc8812a1ant_ScanNotify( + PBTC_COEXIST btcoexist, + u1Byte type + ) +{ + PBTC_STACK_INFO stack_info=&btcoexist->stack_info; + BOOLEAN wifi_connected=false; + + if(btcoexist->manual_control ||btcoexist->stop_coex_dm) + return; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, &wifi_connected); + if(BTC_SCAN_START == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], SCAN START notify\n")); + if(!wifi_connected) // non-connected scan + { + //set 0x550[3]=1 before PsTdma + //halbtc8812a1ant_Reg0x550Bit3(btcoexist, true); + halbtc8812a1ant_ActionWifiNotConnectedAssoAuthScan(btcoexist); + } + else // wifi is connected + { + halbtc8812a1ant_ActionWifiConnectedScan(btcoexist); + } + } + else if(BTC_SCAN_FINISH == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], SCAN FINISH notify\n")); + if(!wifi_connected) // non-connected scan + { + //halbtc8812a1ant_Reg0x550Bit3(btcoexist, false); + halbtc8812a1ant_ActionWifiNotConnected(btcoexist); + } + else + { + halbtc8812a1ant_ActionWifiConnected(btcoexist); + } + } +} + +void +EXhalbtc8812a1ant_ConnectNotify( + PBTC_COEXIST btcoexist, + u1Byte type + ) +{ + PBTC_STACK_INFO stack_info=&btcoexist->stack_info; + BOOLEAN wifi_connected=false; + + if(btcoexist->manual_control ||btcoexist->stop_coex_dm) + return; + + if(BTC_ASSOCIATE_START == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], CONNECT START notify\n")); + if(btcoexist->bt_info.bt_disabled) + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 9); + } + else + { + halbtc8812a1ant_ActionWifiNotConnectedAssoAuthScan(btcoexist); + } + } + else if(BTC_ASSOCIATE_FINISH == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], CONNECT FINISH notify\n")); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, &wifi_connected); + if(!wifi_connected) // non-connected scan + { + //halbtc8812a1ant_Reg0x550Bit3(btcoexist, false); + halbtc8812a1ant_ActionWifiNotConnected(btcoexist); + } + else + { + halbtc8812a1ant_ActionWifiConnected(btcoexist); + } + } +} + +void +EXhalbtc8812a1ant_MediaStatusNotify( + PBTC_COEXIST btcoexist, + u1Byte type + ) +{ + u1Byte dataLen=5; + u1Byte buf[6] = {0}; + u1Byte h2c_parameter[3] ={0}; + BOOLEAN wifi_under5g=false; + u4Byte wifi_bw; + u1Byte wifi_central_chnl; + + if(btcoexist->manual_control ||btcoexist->stop_coex_dm) + return; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_UNDER_5G, &wifi_under5g); + + // only 2.4G we need to inform bt the chnl mask + if(!wifi_under5g) + { + if(BTC_MEDIA_CONNECT == type) + { + h2c_parameter[0] = 0x1; + } + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + btcoexist->btc_get(btcoexist, BTC_GET_U1_WIFI_CENTRAL_CHNL, &wifi_central_chnl); + h2c_parameter[1] = wifi_central_chnl; + if(BTC_WIFI_BW_HT40 == wifi_bw) + h2c_parameter[2] = 0x30; + else + h2c_parameter[2] = 0x20; + } + + coex_dm->wifi_chnl_info[0] = h2c_parameter[0]; + coex_dm->wifi_chnl_info[1] = h2c_parameter[1]; + coex_dm->wifi_chnl_info[2] = h2c_parameter[2]; + + buf[0] = dataLen; + buf[1] = 0x5; // OP_Code + buf[2] = 0x3; // OP_Code_Length + buf[3] = h2c_parameter[0]; // OP_Code_Content + buf[4] = h2c_parameter[1]; + buf[5] = h2c_parameter[2]; + + btcoexist->btc_set(btcoexist, BTC_SET_ACT_CTRL_BT_COEX, (PVOID)&buf[0]); +} + +void +EXhalbtc8812a1ant_SpecialPacketNotify( + PBTC_COEXIST btcoexist, + u1Byte type + ) +{ + BOOLEAN bSecurityLink=false; + + if(btcoexist->manual_control ||btcoexist->stop_coex_dm) + return; + + //if(type == BTC_PACKET_DHCP) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], special Packet(%d) notify\n", type)); + if(btcoexist->bt_info.bt_disabled) + { + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 9); + } + else + { + halbtc8812a1ant_ActionWifiConnectedSpecialPacket(btcoexist); + } + } +} + +void +EXhalbtc8812a1ant_BtInfoNotify( + PBTC_COEXIST btcoexist, + pu1Byte tmp_buf, + u1Byte length + ) +{ + u1Byte bt_info=0; + u1Byte i, rsp_source=0; + static u4Byte set_bt_lna_cnt=0, set_bt_psd_mode=0; + BOOLEAN bt_busy=false, limited_dig=false; + BOOLEAN wifi_connected=false; + BOOLEAN bRejApAggPkt=false; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify()===>\n")); + + + rsp_source = tmp_buf[0]&0xf; + if(rsp_source >= BT_INFO_SRC_8812A_1ANT_MAX) + rsp_source = BT_INFO_SRC_8812A_1ANT_WIFI_FW; + coex_sta->bt_info_c2h_cnt[rsp_source]++; + + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Bt info[%d], length=%d, hex data=[", rsp_source, length)); + for(i=0; ibt_info_c2h[rsp_source][i] = tmp_buf[i]; + if(i == 1) + bt_info = tmp_buf[i]; + if(i == length-1) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("0x%2x]\n", tmp_buf[i])); + } + else + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("0x%2x, ", tmp_buf[i])); + } + } + + if(btcoexist->manual_control) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), return for Manual CTRL<===\n")); + return; + } + if(btcoexist->stop_coex_dm) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), return for Coex STOPPED!!<===\n")); + return; + } + + if(BT_INFO_SRC_8812A_1ANT_WIFI_FW != rsp_source) + { + coex_sta->bt_retry_cnt = + coex_sta->bt_info_c2h[rsp_source][2]; + + coex_sta->bt_rssi = + coex_sta->bt_info_c2h[rsp_source][3]*2+10; + + coex_sta->bt_info_ext = + coex_sta->bt_info_c2h[rsp_source][4]; + + // Here we need to resend some wifi info to BT + // because bt is reset and loss of the info. + if( (coex_sta->bt_info_ext & BIT1) ) + { + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, &wifi_connected); + if(wifi_connected) + { + EXhalbtc8812a1ant_MediaStatusNotify(btcoexist, BTC_MEDIA_CONNECT); + } + else + { + EXhalbtc8812a1ant_MediaStatusNotify(btcoexist, BTC_MEDIA_DISCONNECT); + } + + set_bt_psd_mode = 0; + } + + // test-chip bt patch doesn't support, temporary remove. + // need to add back when mp-chip. 12/20/2012 +#if 0 + if(set_bt_psd_mode <= 3) + { + halbtc8812a1ant_SetBtPsdMode(btcoexist, FORCE_EXEC, 0xd); + set_bt_psd_mode++; + } + + if(coex_dm->bCurBtLnaConstrain) + { + if( (coex_sta->bt_info_ext & BIT2) ) + { + } + else + { + if(set_bt_lna_cnt <= 3) + { + halbtc8812a1ant_SetBtLnaConstrain(btcoexist, FORCE_EXEC, true); + set_bt_lna_cnt++; + } + } + } + else + { + set_bt_lna_cnt = 0; + } +#endif + // test-chip bt patch only rsp the status for BT_RSP, + // so temporary we consider the following only under BT_RSP + if(BT_INFO_SRC_8812A_1ANT_BT_RSP == rsp_source) + { + if( (coex_sta->bt_info_ext & BIT3) ) + { + #if 0// temp disable because bt patch report the wrong value. + halbtc8812a1ant_IgnoreWlanAct(btcoexist, FORCE_EXEC, false); + #endif + } + else + { + // BT already NOT ignore Wlan active, do nothing here. + } + + if( (coex_sta->bt_info_ext & BIT4) ) + { + // BT auto report already enabled, do nothing + } + else + { + halbtc8812a1ant_BtAutoReport(btcoexist, FORCE_EXEC, true); + } + } + } + + // check BIT2 first ==> check if bt is under inquiry or page scan + if(bt_info & BT_INFO_8812A_1ANT_B_INQ_PAGE) + { + coex_sta->c2h_bt_inquiry_page = true; + coex_dm->bt_status = BT_8812A_1ANT_BT_STATUS_INQ_PAGE; + } + else + { + coex_sta->c2h_bt_inquiry_page = false; + if(!(bt_info&BT_INFO_8812A_1ANT_B_CONNECTION)) + { + coex_dm->bt_status = BT_8812A_1ANT_BT_STATUS_NON_CONNECTED_IDLE; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), bt non-connected idle!!!\n")); + } + else if(bt_info == BT_INFO_8812A_1ANT_B_CONNECTION) // connection exists but no busy + { + coex_dm->bt_status = BT_8812A_1ANT_BT_STATUS_CONNECTED_IDLE; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), bt connected-idle!!!\n")); + } + else if((bt_info&BT_INFO_8812A_1ANT_B_SCO_ESCO) || + (bt_info&BT_INFO_8812A_1ANT_B_SCO_BUSY)) + { + coex_dm->bt_status = BT_8812A_1ANT_BT_STATUS_SCO_BUSY; + bRejApAggPkt = true; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), bt sco busy!!!\n")); + } + else if(bt_info&BT_INFO_8812A_1ANT_B_ACL_BUSY) + { + if(BT_8812A_1ANT_BT_STATUS_ACL_BUSY != coex_dm->bt_status) + coex_dm->reset_tdma_adjust = true; + coex_dm->bt_status = BT_8812A_1ANT_BT_STATUS_ACL_BUSY; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), bt acl busy!!!\n")); + } +#if 0 + else if(bt_info&BT_INFO_8812A_1ANT_B_SCO_ESCO) + { + coex_dm->bt_status = BT_8812A_1ANT_BT_STATUS_ACL_SCO_BUSY; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), bt acl/sco busy!!!\n")); + } +#endif + else + { + //DbgPrint("error, undefined bt_info=0x%x\n", bt_info); + coex_dm->bt_status = BT_8812A_1ANT_BT_STATUS_MAX; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), bt non-defined state!!!\n")); + } + + // send delete BA to disable aggregation + //btcoexist->btc_set(btcoexist, BTC_SET_BL_TO_REJ_AP_AGG_PKT, &bRejApAggPkt); + } + + if( (BT_8812A_1ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status) || + (BT_8812A_1ANT_BT_STATUS_SCO_BUSY == coex_dm->bt_status) || + (BT_8812A_1ANT_BT_STATUS_ACL_SCO_BUSY == coex_dm->bt_status) ) + { + bt_busy = true; + } + else + { + bt_busy = false; + } + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_TRAFFIC_BUSY, &bt_busy); + + if(bt_busy) + { + limited_dig = true; + } + else + { + limited_dig = false; + } + coex_dm->limited_dig = limited_dig; + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_LIMITED_DIG, &limited_dig); + + halbtc8812a1ant_RunCoexistMechanism(btcoexist); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify()<===\n")); +} + +void +EXhalbtc8812a1ant_StackOperationNotify( + PBTC_COEXIST btcoexist, + u1Byte type + ) +{ + if(BTC_STACK_OP_INQ_PAGE_PAIR_START == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], StackOP Inquiry/page/pair start notify\n")); + } + else if(BTC_STACK_OP_INQ_PAGE_PAIR_FINISH == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], StackOP Inquiry/page/pair finish notify\n")); + } +} + +void +EXhalbtc8812a1ant_HaltNotify( + PBTC_COEXIST btcoexist + ) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Halt notify\n")); + + halbtc8812a1ant_IgnoreWlanAct(btcoexist, FORCE_EXEC, true); + halbtc8812a1ant_PsTdma(btcoexist, FORCE_EXEC, false, 0); + btcoexist->btc_write_1byte(btcoexist, 0x4f, 0xf); + halbtc8812a1ant_WifiParaAdjust(btcoexist, false); +} + +void +EXhalbtc8812a1ant_PnpNotify( + PBTC_COEXIST btcoexist, + u1Byte pnpState + ) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Pnp notify\n")); + + if(BTC_WIFI_PNP_SLEEP == pnpState) + { + btcoexist->stop_coex_dm = true; + halbtc8812a1ant_IgnoreWlanAct(btcoexist, FORCE_EXEC, true); + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 9); + } + else if(BTC_WIFI_PNP_WAKE_UP == pnpState) + { + + } +} + +void +EXhalbtc8812a1ant_Periodical( + PBTC_COEXIST btcoexist + ) +{ + BOOLEAN wifi_under5g=false; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Periodical()===>\n")); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], 1Ant Periodical!!\n")); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_UNDER_5G, &wifi_under5g); + + if(wifi_under5g) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Periodical(), return for 5G<===\n")); + halbtc8812a1ant_CoexAllOff(btcoexist); + return; + } + + halbtc8812a1ant_QueryBtInfo(btcoexist); + halbtc8812a1ant_MonitorBtCtr(btcoexist); + halbtc8812a1ant_MonitorBtEnableDisable(btcoexist); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Periodical()<===\n")); +} + +void +EXhalbtc8812a1ant_DbgControl( + PBTC_COEXIST btcoexist, + u1Byte opCode, + u1Byte opLen, + pu1Byte pData + ) +{ + switch(opCode) + { + case BTC_DBG_SET_COEX_NORMAL: + btcoexist->manual_control = false; + halbtc8812a1ant_InitCoexDm(btcoexist); + break; + case BTC_DBG_SET_COEX_WIFI_ONLY: + btcoexist->manual_control = true; + halbtc8812a1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + halbtc8812a1ant_PsTdma(btcoexist, NORMAL_EXEC, false, 9); + break; + case BTC_DBG_SET_COEX_BT_ONLY: + // todo + break; + default: + break; + } +} +#endif + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/HalBtc8812a1Ant.h +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/HalBtc8812a1Ant.h @@ -0,0 +1,205 @@ +//=========================================== +// The following is for 8812A_1ANT BT Co-exist definition +//=========================================== +#define BT_INFO_8812A_1ANT_B_FTP BIT7 +#define BT_INFO_8812A_1ANT_B_A2DP BIT6 +#define BT_INFO_8812A_1ANT_B_HID BIT5 +#define BT_INFO_8812A_1ANT_B_SCO_BUSY BIT4 +#define BT_INFO_8812A_1ANT_B_ACL_BUSY BIT3 +#define BT_INFO_8812A_1ANT_B_INQ_PAGE BIT2 +#define BT_INFO_8812A_1ANT_B_SCO_ESCO BIT1 +#define BT_INFO_8812A_1ANT_B_CONNECTION BIT0 + +#define BT_INFO_8812A_1ANT_A2DP_BASIC_RATE(_BT_INFO_EXT_) \ + (((_BT_INFO_EXT_&BIT0))? true:false) + +#define BTC_RSSI_COEX_THRESH_TOL_8812A_1ANT 2 + +#define +#define OUT + +typedef enum _BT_INFO_SRC_8812A_1ANT{ + BT_INFO_SRC_8812A_1ANT_WIFI_FW = 0x0, + BT_INFO_SRC_8812A_1ANT_BT_RSP = 0x1, + BT_INFO_SRC_8812A_1ANT_BT_ACTIVE_SEND = 0x2, + BT_INFO_SRC_8812A_1ANT_MAX +}BT_INFO_SRC_8812A_1ANT,*PBT_INFO_SRC_8812A_1ANT; + +typedef enum _BT_8812A_1ANT_BT_STATUS{ + BT_8812A_1ANT_BT_STATUS_NON_CONNECTED_IDLE = 0x0, + BT_8812A_1ANT_BT_STATUS_CONNECTED_IDLE = 0x1, + BT_8812A_1ANT_BT_STATUS_INQ_PAGE = 0x2, + BT_8812A_1ANT_BT_STATUS_ACL_BUSY = 0x3, + BT_8812A_1ANT_BT_STATUS_SCO_BUSY = 0x4, + BT_8812A_1ANT_BT_STATUS_ACL_SCO_BUSY = 0x5, + BT_8812A_1ANT_BT_STATUS_MAX +}BT_8812A_1ANT_BT_STATUS,*PBT_8812A_1ANT_BT_STATUS; + +typedef enum _BT_8812A_1ANT_COEX_ALGO{ + BT_8812A_1ANT_COEX_ALGO_UNDEFINED = 0x0, + BT_8812A_1ANT_COEX_ALGO_SCO = 0x1, + BT_8812A_1ANT_COEX_ALGO_HID = 0x2, + BT_8812A_1ANT_COEX_ALGO_A2DP = 0x3, + BT_8812A_1ANT_COEX_ALGO_A2DP_PANHS = 0x4, + BT_8812A_1ANT_COEX_ALGO_PANEDR = 0x5, + BT_8812A_1ANT_COEX_ALGO_PANHS = 0x6, + BT_8812A_1ANT_COEX_ALGO_PANEDR_A2DP = 0x7, + BT_8812A_1ANT_COEX_ALGO_PANEDR_HID = 0x8, + BT_8812A_1ANT_COEX_ALGO_HID_A2DP_PANEDR = 0x9, + BT_8812A_1ANT_COEX_ALGO_HID_A2DP = 0xa, + BT_8812A_1ANT_COEX_ALGO_MAX = 0xb, +}BT_8812A_1ANT_COEX_ALGO,*PBT_8812A_1ANT_COEX_ALGO; + +typedef struct _COEX_DM_8812A_1ANT{ + // fw mechanism + bool pre_dec_bt_pwr; + bool cur_dec_bt_pwr; + bool bPreBtLnaConstrain; + bool bCurBtLnaConstrain; + u8 bPreBtPsdMode; + u8 bCurBtPsdMode; + u8 pre_fw_dac_swing_lvl; + u8 cur_fw_dac_swing_lvl; + bool cur_ignore_wlan_act; + bool pre_ignore_wlan_act; + u8 pre_ps_tdma; + u8 cur_ps_tdma; + u8 ps_tdma_para[5]; + u8 ps_tdma_du_adj_type; + bool reset_tdma_adjust; + bool pre_ps_tdma_on; + bool cur_ps_tdma_on; + bool pre_bt_auto_report; + bool cur_bt_auto_report; + u8 pre_lps; + u8 cur_lps; + u8 pre_rpwm; + u8 cur_rpwm; + + // sw mechanism + bool pre_rf_rx_lpf_shrink; + bool cur_rf_rx_lpf_shrink; + u32 bt_rf0x1e_backup; + bool pre_low_penalty_ra; + bool cur_low_penalty_ra; + bool pre_dac_swing_on; + u32 pre_dac_swing_lvl; + bool cur_dac_swing_on; + u32 cur_dac_swing_lvl; + bool pre_adc_back_off; + bool cur_adc_back_off; + bool pre_agc_table_en; + bool cur_agc_table_en; + u32 pre_val0x6c0; + u32 cur_val0x6c0; + u32 pre_val0x6c4; + u32 cur_val0x6c4; + u32 pre_val0x6c8; + u32 cur_val0x6c8; + u8 pre_val0x6cc; + u8 cur_val0x6cc; + bool limited_dig; + + // algorithm related + u8 pre_algorithm; + u8 cur_algorithm; + u8 bt_status; + u8 wifi_chnl_info[3]; + + u8 error_condition; +} COEX_DM_8812A_1ANT, *PCOEX_DM_8812A_1ANT; + +typedef struct _COEX_STA_8812A_1ANT{ + bool under_lps; + bool under_ips; + u32 high_priority_tx; + u32 high_priority_rx; + u32 low_priority_tx; + u32 low_priority_rx; + u8 bt_rssi; + u8 pre_bt_rssi_state; + u8 pre_wifi_rssi_state[4]; + bool c2h_bt_info_req_sent; + u8 bt_info_c2h[BT_INFO_SRC_8812A_1ANT_MAX][10]; + u32 bt_info_c2h_cnt[BT_INFO_SRC_8812A_1ANT_MAX]; + bool c2h_bt_inquiry_page; + u8 bt_retry_cnt; + u8 bt_info_ext; +}COEX_STA_8812A_1ANT, *PCOEX_STA_8812A_1ANT; + +//=========================================== +// The following is interface which will notify coex module. +//=========================================== +void +EXhalbtc8812a1ant_InitHwConfig( + PBTC_COEXIST btcoexist + ); +void +EXhalbtc8812a1ant_InitCoexDm( + PBTC_COEXIST btcoexist + ); +void +EXhalbtc8812a1ant_IpsNotify( + PBTC_COEXIST btcoexist, + u8 type + ); +void +EXhalbtc8812a1ant_LpsNotify( + PBTC_COEXIST btcoexist, + u8 type + ); +void +EXhalbtc8812a1ant_ScanNotify( + PBTC_COEXIST btcoexist, + u8 type + ); +void +EXhalbtc8812a1ant_ConnectNotify( + PBTC_COEXIST btcoexist, + u8 type + ); +void +EXhalbtc8812a1ant_MediaStatusNotify( + PBTC_COEXIST btcoexist, + u8 type + ); +void +EXhalbtc8812a1ant_SpecialPacketNotify( + PBTC_COEXIST btcoexist, + u8 type + ); +void +EXhalbtc8812a1ant_BtInfoNotify( + PBTC_COEXIST btcoexist, + u8 *tmp_buf, + u8 length + ); +void +EXhalbtc8812a1ant_StackOperationNotify( + PBTC_COEXIST btcoexist, + u8 type + ); +void +EXhalbtc8812a1ant_HaltNotify( + PBTC_COEXIST btcoexist + ); +void +EXhalbtc8812a1ant_PnpNotify( + PBTC_COEXIST btcoexist, + u8 pnpState + ); +void +EXhalbtc8812a1ant_Periodical( + PBTC_COEXIST btcoexist + ); +void +EXhalbtc8812a1ant_DisplayCoexInfo( + PBTC_COEXIST btcoexist + ); +void +EXhalbtc8812a1ant_DbgControl( + PBTC_COEXIST btcoexist, + u8 opCode, + u8 opLen, + u8 *pData + ); --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/habtc8723a1ant.c +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/habtc8723a1ant.c @@ -0,0 +1,1614 @@ +//============================================================ +// Description: +// +// This file is for RTL8723A Co-exist mechanism +// +// History +// 2012/08/22 Cosa first check in. +// 2012/11/14 Cosa Revise for 8723A 1Ant out sourcing. +// +//============================================================ + +//============================================================ +// include files +//============================================================ +#include "Mp_Precomp.h" +#if(BT_30_SUPPORT == 1) +//============================================================ +// Global variables, these are static variables +//============================================================ +static COEX_DM_8723A_1ANT GLCoexDm8723a1Ant; +static PCOEX_DM_8723A_1ANT pCoexDm=&GLCoexDm8723a1Ant; +static COEX_STA_8723A_1ANT GLCoexSta8723a1Ant; +static PCOEX_STA_8723A_1ANT pCoexSta=&GLCoexSta8723a1Ant; + +const char *const GLBtInfoSrc8723a1Ant[]={ + "BT Info[wifi fw]", + "BT Info[bt rsp]", + "BT Info[bt auto report]", +}; + +//============================================================ +// local function proto type if needed +//============================================================ +//============================================================ +// local function start with halbtc8723a1ant_ +//============================================================ +VOID +halbtc8723a1ant_Reg0x550Bit3( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bSet + ) +{ + u1Byte u1tmp=0; + + u1tmp = pBtCoexist->btc_read_1byte(pBtCoexist, 0x550); + if(bSet) + { + u1tmp |= BIT3; + } + else + { + u1tmp &= ~BIT3; + } + pBtCoexist->btc_write_1byte(pBtCoexist, 0x550, u1tmp); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], set 0x550[3]=%d\n", (bSet? 1:0))); +} + +VOID +halbtc8723a1ant_NotifyFwScan( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte scanType + ) +{ + u1Byte H2C_Parameter[1] ={0}; + + if(BTC_SCAN_START == scanType) + H2C_Parameter[0] = 0x1; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], Notify FW for wifi scan, write 0x3b=0x%x\n", + H2C_Parameter[0])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x3b, 1, H2C_Parameter); +} + +VOID +halbtc8723a1ant_QueryBtInfo( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte H2C_Parameter[1] ={0}; + + pCoexSta->bC2hBtInfoReqSent = true; + + H2C_Parameter[0] |= BIT0; // trigger + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], Query Bt Info, FW write 0x38=0x%x\n", + H2C_Parameter[0])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x38, 1, H2C_Parameter); +} + +VOID +halbtc8723a1ant_SetSwRfRxLpfCorner( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bRxRfShrinkOn + ) +{ + if(bRxRfShrinkOn) + { + //Shrink RF Rx LPF corner + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Shrink RF Rx LPF corner!!\n")); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x1e, 0xfffff, 0xf0ff7); + } + else + { + //Resume RF Rx LPF corner + // After initialized, we can use pCoexDm->btRf0x1eBackup + if(pBtCoexist->initilized) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Resume RF Rx LPF corner!!\n")); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x1e, 0xfffff, pCoexDm->btRf0x1eBackup); + } + } +} + +VOID +halbtc8723a1ant_RfShrink( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bRxRfShrinkOn + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s turn Rx RF Shrink = %s\n", + (bForceExec? "force to":""), ((bRxRfShrinkOn)? "ON":"OFF"))); + pCoexDm->bCurRfRxLpfShrink = bRxRfShrinkOn; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], bPreRfRxLpfShrink=%d, bCurRfRxLpfShrink=%d\n", + pCoexDm->bPreRfRxLpfShrink, pCoexDm->bCurRfRxLpfShrink)); + + if(pCoexDm->bPreRfRxLpfShrink == pCoexDm->bCurRfRxLpfShrink) + return; + } + halbtc8723a1ant_SetSwRfRxLpfCorner(pBtCoexist, pCoexDm->bCurRfRxLpfShrink); + + pCoexDm->bPreRfRxLpfShrink = pCoexDm->bCurRfRxLpfShrink; +} + +VOID +halbtc8723a1ant_SetSwPenaltyTxRateAdaptive( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bLowPenaltyRa + ) +{ + u1Byte tmpU1; + + tmpU1 = pBtCoexist->btc_read_1byte(pBtCoexist, 0x4fd); + tmpU1 |= BIT0; + if(bLowPenaltyRa) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Tx rate adaptive, set low penalty!!\n")); + tmpU1 &= ~BIT2; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Tx rate adaptive, set normal!!\n")); + tmpU1 |= BIT2; + } + + pBtCoexist->btc_write_1byte(pBtCoexist, 0x4fd, tmpU1); +} + +VOID +halbtc8723a1ant_LowPenaltyRa( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bLowPenaltyRa + ) +{ + return; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s turn LowPenaltyRA = %s\n", + (bForceExec? "force to":""), ((bLowPenaltyRa)? "ON":"OFF"))); + pCoexDm->bCurLowPenaltyRa = bLowPenaltyRa; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], bPreLowPenaltyRa=%d, bCurLowPenaltyRa=%d\n", + pCoexDm->bPreLowPenaltyRa, pCoexDm->bCurLowPenaltyRa)); + + if(pCoexDm->bPreLowPenaltyRa == pCoexDm->bCurLowPenaltyRa) + return; + } + halbtc8723a1ant_SetSwPenaltyTxRateAdaptive(pBtCoexist, pCoexDm->bCurLowPenaltyRa); + + pCoexDm->bPreLowPenaltyRa = pCoexDm->bCurLowPenaltyRa; +} + +VOID +halbtc8723a1ant_SetCoexTable( + IN PBTC_COEXIST pBtCoexist, + IN u4Byte val0x6c0, + IN u4Byte val0x6c8, + IN u1Byte val0x6cc + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], set coex table, set 0x6c0=0x%x\n", val0x6c0)); + pBtCoexist->btc_write_4byte(pBtCoexist, 0x6c0, val0x6c0); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], set coex table, set 0x6c8=0x%x\n", val0x6c8)); + pBtCoexist->btc_write_4byte(pBtCoexist, 0x6c8, val0x6c8); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], set coex table, set 0x6cc=0x%x\n", val0x6cc)); + pBtCoexist->btc_write_1byte(pBtCoexist, 0x6cc, val0x6cc); +} + +VOID +halbtc8723a1ant_CoexTable( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN u4Byte val0x6c0, + IN u4Byte val0x6c8, + IN u1Byte val0x6cc + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s write Coex Table 0x6c0=0x%x, 0x6c8=0x%x, 0x6cc=0x%x\n", + (bForceExec? "force to":""), val0x6c0, val0x6c8, val0x6cc)); + pCoexDm->curVal0x6c0 = val0x6c0; + pCoexDm->curVal0x6c8 = val0x6c8; + pCoexDm->curVal0x6cc = val0x6cc; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], preVal0x6c0=0x%x, preVal0x6c8=0x%x, preVal0x6cc=0x%x !!\n", + pCoexDm->preVal0x6c0, pCoexDm->preVal0x6c8, pCoexDm->preVal0x6cc)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], curVal0x6c0=0x%x, curVal0x6c8=0x%x, curVal0x6cc=0x%x !!\n", + pCoexDm->curVal0x6c0, pCoexDm->curVal0x6c8, pCoexDm->curVal0x6cc)); + + if( (pCoexDm->preVal0x6c0 == pCoexDm->curVal0x6c0) && + (pCoexDm->preVal0x6c8 == pCoexDm->curVal0x6c8) && + (pCoexDm->preVal0x6cc == pCoexDm->curVal0x6cc) ) + return; + } + halbtc8723a1ant_SetCoexTable(pBtCoexist, val0x6c0, val0x6c8, val0x6cc); + + pCoexDm->preVal0x6c0 = pCoexDm->curVal0x6c0; + pCoexDm->preVal0x6c8 = pCoexDm->curVal0x6c8; + pCoexDm->preVal0x6cc = pCoexDm->curVal0x6cc; +} + +VOID +halbtc8723a1ant_SetFwIgnoreWlanAct( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bEnable + ) +{ + u1Byte H2C_Parameter[1] ={0}; + + if(bEnable) + { + H2C_Parameter[0] |= BIT0; // function enable + } + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], set FW for BT Ignore Wlan_Act, FW write 0x25=0x%x\n", + H2C_Parameter[0])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x25, 1, H2C_Parameter); +} + +VOID +halbtc8723a1ant_IgnoreWlanAct( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bEnable + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s turn Ignore WlanAct %s\n", + (bForceExec? "force to":""), (bEnable? "ON":"OFF"))); + pCoexDm->bCurIgnoreWlanAct = bEnable; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], bPreIgnoreWlanAct = %d, bCurIgnoreWlanAct = %d!!\n", + pCoexDm->bPreIgnoreWlanAct, pCoexDm->bCurIgnoreWlanAct)); + + if(pCoexDm->bPreIgnoreWlanAct == pCoexDm->bCurIgnoreWlanAct) + return; + } + halbtc8723a1ant_SetFwIgnoreWlanAct(pBtCoexist, bEnable); + + pCoexDm->bPreIgnoreWlanAct = pCoexDm->bCurIgnoreWlanAct; +} + +VOID +halbtc8723a1ant_SetFwPstdma( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type, + IN u1Byte byte1, + IN u1Byte byte2, + IN u1Byte byte3, + IN u1Byte byte4, + IN u1Byte byte5 + ) +{ + u1Byte H2C_Parameter[5] ={0}; + u1Byte realByte1=byte1, realByte5=byte5; + BOOLEAN bApEnable=FALSE; + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_AP_MODE_ENABLE, &bApEnable); + + // byte1[1:0] != 0 means enable pstdma + // for 2Ant bt coexist, if byte1 != 0 means enable pstdma + if(byte1) + { + if(bApEnable) + { + if(type != 5 && type != 12) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], FW for 1Ant AP mode\n")); + realByte1 &= ~BIT4; + realByte1 |= BIT5; + + realByte5 |= BIT5; + realByte5 &= ~BIT6; + } + } + } + H2C_Parameter[0] = realByte1; + H2C_Parameter[1] = byte2; + H2C_Parameter[2] = byte3; + H2C_Parameter[3] = byte4; + H2C_Parameter[4] = realByte5; + + pCoexDm->psTdmaPara[0] = realByte1; + pCoexDm->psTdmaPara[1] = byte2; + pCoexDm->psTdmaPara[2] = byte3; + pCoexDm->psTdmaPara[3] = byte4; + pCoexDm->psTdmaPara[4] = realByte5; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], FW write 0x3a(5bytes)=0x%x%08x\n", + H2C_Parameter[0], + H2C_Parameter[1]<<24|H2C_Parameter[2]<<16|H2C_Parameter[3]<<8|H2C_Parameter[4])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x3a, 5, H2C_Parameter); +} + +VOID +halbtc8723a1ant_PsTdma( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bTurnOn, + IN u1Byte type + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s turn %s PS TDMA, type=%d\n", + (bForceExec? "force to":""), (bTurnOn? "ON":"OFF"), type)); + pCoexDm->bCurPsTdmaOn = bTurnOn; + pCoexDm->curPsTdma = type; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], bPrePsTdmaOn = %d, bCurPsTdmaOn = %d!!\n", + pCoexDm->bPrePsTdmaOn, pCoexDm->bCurPsTdmaOn)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], prePsTdma = %d, curPsTdma = %d!!\n", + pCoexDm->prePsTdma, pCoexDm->curPsTdma)); + + if( (pCoexDm->bPrePsTdmaOn == pCoexDm->bCurPsTdmaOn) && + (pCoexDm->prePsTdma == pCoexDm->curPsTdma) ) + return; + } + if(pCoexDm->bCurPsTdmaOn) + { + switch(pCoexDm->curPsTdma) + { + case 1: + default: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x13, 0x1a, 0x1a, 0x0, 0x40); + break; + case 2: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x13, 0x12, 0x12, 0x0, 0x40); + break; + case 3: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x93, 0x3f, 0x3, 0x10, 0x40); + break; + case 4: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x93, 0x15, 0x3, 0x10, 0x0); + break; + case 5: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0xa9, 0x15, 0x3, 0x35, 0xc0); + break; + + case 8: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x93, 0x25, 0x3, 0x10, 0x0); + break; + case 9: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x13, 0xa, 0xa, 0x0, 0x40); + break; + case 10: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x13, 0xa, 0xa, 0x0, 0x40); + break; + case 11: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x13, 0x5, 0x5, 0x0, 0x40); + break; + case 12: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0xa9, 0xa, 0x3, 0x15, 0xc0); + break; + + case 18: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x93, 0x25, 0x3, 0x10, 0x0); + break; + + case 20: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x13, 0x2a, 0x2a, 0x0, 0x0); + break; + case 21: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x93, 0x20, 0x3, 0x10, 0x40); + break; + case 22: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x13, 0x1a, 0x1a, 0x2, 0x40); + break; + case 23: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x13, 0x12, 0x12, 0x2, 0x40); + break; + case 24: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x13, 0xa, 0xa, 0x2, 0x40); + break; + case 25: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x13, 0x5, 0x5, 0x2, 0x40); + break; + case 26: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x93, 0x25, 0x3, 0x10, 0x0); + break; + case 27: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x13, 0x5, 0x5, 0x2, 0x40); + break; + case 28: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x3, 0x2f, 0x2f, 0x0, 0x0); + break; + + } + } + else + { + // disable PS tdma + switch(pCoexDm->curPsTdma) + { + case 8: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x8, 0x0, 0x0, 0x0, 0x0); + break; + case 0: + default: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x0, 0x0, 0x0, 0x0, 0x0); + pBtCoexist->btc_write_2byte(pBtCoexist, 0x860, 0x210); + break; + case 9: + halbtc8723a1ant_SetFwPstdma(pBtCoexist, type, 0x0, 0x0, 0x0, 0x0, 0x0); + pBtCoexist->btc_write_2byte(pBtCoexist, 0x860, 0x110); + break; + + } + } + + // update pre state + pCoexDm->bPrePsTdmaOn = pCoexDm->bCurPsTdmaOn; + pCoexDm->prePsTdma = pCoexDm->curPsTdma; +} + + +VOID +halbtc8723a1ant_CoexAllOff( + IN PBTC_COEXIST pBtCoexist + ) +{ + // fw all off + halbtc8723a1ant_IgnoreWlanAct(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + + // sw all off + halbtc8723a1ant_LowPenaltyRa(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a1ant_RfShrink(pBtCoexist, NORMAL_EXEC, FALSE); + + // hw all off + halbtc8723a1ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); +} + +VOID +halbtc8723a1ant_InitCoexDm( + IN PBTC_COEXIST pBtCoexist + ) +{ + // force to reset coex mechanism + halbtc8723a1ant_IgnoreWlanAct(pBtCoexist, FORCE_EXEC, FALSE); +} + +VOID +halbtc8723a1ant_BtEnableAction( + IN PBTC_COEXIST pBtCoexist + ) +{ + halbtc8723a1ant_IgnoreWlanAct(pBtCoexist, FORCE_EXEC, FALSE); +} + +VOID +halbtc8723a1ant_MonitorBtCtr( + IN PBTC_COEXIST pBtCoexist + ) +{ + u4Byte regHPTxRx, regLPTxRx, u4Tmp; + u4Byte regHPTx=0, regHPRx=0, regLPTx=0, regLPRx=0; + u1Byte u1Tmp; + + regHPTxRx = 0x770; + regLPTxRx = 0x774; + + u4Tmp = pBtCoexist->btc_read_4byte(pBtCoexist, regHPTxRx); + regHPTx = u4Tmp & MASKLWORD; + regHPRx = (u4Tmp & MASKHWORD)>>16; + + u4Tmp = pBtCoexist->btc_read_4byte(pBtCoexist, regLPTxRx); + regLPTx = u4Tmp & MASKLWORD; + regLPRx = (u4Tmp & MASKHWORD)>>16; + + pCoexSta->highPriorityTx = regHPTx; + pCoexSta->highPriorityRx = regHPRx; + pCoexSta->lowPriorityTx = regLPTx; + pCoexSta->lowPriorityRx = regLPRx; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], High Priority Tx/Rx (reg 0x%x)=0x%x(%d)/0x%x(%d)\n", + regHPTxRx, regHPTx, regHPTx, regHPRx, regHPRx)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], Low Priority Tx/Rx (reg 0x%x)=0x%x(%d)/0x%x(%d)\n", + regLPTxRx, regLPTx, regLPTx, regLPRx, regLPRx)); + + // reset counter + pBtCoexist->btc_write_1byte(pBtCoexist, 0x76e, 0xc); +} + +VOID +halbtc8723a1ant_MonitorBtEnableDisable( + IN PBTC_COEXIST pBtCoexist + ) +{ + static BOOLEAN bPreBtDisabled=FALSE; + static u4Byte btDisableCnt=0; + BOOLEAN bBtActive=true, bBtDisabled=FALSE; + + // This function check if bt is disabled + + if( pCoexSta->highPriorityTx == 0 && + pCoexSta->highPriorityRx == 0 && + pCoexSta->lowPriorityTx == 0 && + pCoexSta->lowPriorityRx == 0) + { + bBtActive = FALSE; + } + if( pCoexSta->highPriorityTx == 0xffff && + pCoexSta->highPriorityRx == 0xffff && + pCoexSta->lowPriorityTx == 0xffff && + pCoexSta->lowPriorityRx == 0xffff) + { + bBtActive = FALSE; + } + if(bBtActive) + { + btDisableCnt = 0; + bBtDisabled = FALSE; + pBtCoexist->btc_set(pBtCoexist, BTC_SET_BL_BT_DISABLE, &bBtDisabled); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], BT is enabled !!\n")); + } + else + { + btDisableCnt++; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], bt all counters=0, %d times!!\n", + btDisableCnt)); + if(btDisableCnt >= 2) + { + bBtDisabled = true; + pBtCoexist->btc_set(pBtCoexist, BTC_SET_BL_BT_DISABLE, &bBtDisabled); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], BT is disabled !!\n")); + } + } + if(bPreBtDisabled != bBtDisabled) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], BT is from %s to %s!!\n", + (bPreBtDisabled ? "disabled":"enabled"), + (bBtDisabled ? "disabled":"enabled"))); + bPreBtDisabled = bBtDisabled; + if(!bBtDisabled) + { + halbtc8723a1ant_BtEnableAction(pBtCoexist); + } + else + { + pBtCoexist->btc_set(pBtCoexist, BTC_SET_ACT_NORMAL_LPS, NULL); + } + } +} + +VOID +halbtc8723a1ant_TdmaDurationAdjust( + IN PBTC_COEXIST pBtCoexist + ) +{ + static s4Byte up,dn,m,n,WaitCount; + s4Byte result; //0: no change, +1: increase WiFi duration, -1: decrease WiFi duration + u1Byte retryCount=0; + u1Byte btState; + BOOLEAN bScan=FALSE, bLink=FALSE, bRoam=FALSE; + u4Byte wifiBw; + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + btState = pCoexDm->btStatus; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], TdmaDurationAdjust()\n")); + if(pCoexDm->psTdmaGlobalCnt != pCoexDm->psTdmaMonitorCnt) + { + pCoexDm->psTdmaMonitorCnt = 0; + pCoexDm->psTdmaGlobalCnt = 0; + } + if(pCoexDm->psTdmaMonitorCnt == 0) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], first run BT A2DP + WiFi busy state!!\n")); + if(btState == BT_STATE_8723A_1ANT_ACL_ONLY_BUSY) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 1); + pCoexDm->psTdmaDuAdjType = 1; + } + else + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 22); + pCoexDm->psTdmaDuAdjType = 22; + } + //============ + up = 0; + dn = 0; + m = 1; + n= 3; + result = 0; + WaitCount = 0; + } + else + { + //accquire the BT TRx retry count from BT_Info byte2 + retryCount = pCoexSta->btRetryCnt; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], retryCount = %d\n", retryCount)); + result = 0; + WaitCount++; + + if(retryCount == 0) // no retry in the last 2-second duration + { + up++; + dn--; + + if (dn <= 0) + dn = 0; + + if(up >= n) // if s n 2 retry count0, hռeWiFi duration + { + WaitCount = 0; + n = 3; + up = 0; + dn = 0; + result = 1; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Increase wifi duration!!\n")); + } + } + else if (retryCount <= 3) // <=3 retry in the last 2-second duration + { + up--; + dn++; + + if (up <= 0) + up = 0; + + if (dn == 2) // if s 2 2 retry count< 3, hկWiFi duration + { + if (WaitCount <= 2) + m++; // קK@blevelӦ^ + else + m = 1; + + if ( m >= 20) //m ̤j = 20 ' ̤j120 recheckO_վ WiFi duration. + m = 20; + + n = 3*m; + up = 0; + dn = 0; + WaitCount = 0; + result = -1; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Decrease wifi duration for retryCounter<3!!\n")); + } + } + else //retry count > 3, un1 retry count > 3, hկWiFi duration + { + if (WaitCount == 1) + m++; // קK@blevelӦ^ + else + m = 1; + + if ( m >= 20) //m ̤j = 20 ' ̤j120 recheckO_վ WiFi duration. + m = 20; + + n = 3*m; + up = 0; + dn = 0; + WaitCount = 0; + result = -1; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Decrease wifi duration for retryCounter>3!!\n")); + } + + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BT TxRx counter H+L <= 1200\n")); + if(btState != BT_STATE_8723A_1ANT_ACL_ONLY_BUSY) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], NOT ACL only busy!\n")); + if(BTC_WIFI_BW_HT40 != wifiBw) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], 20MHz\n")); + if(result == -1) + { + if(pCoexDm->curPsTdma == 22) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 23); + pCoexDm->psTdmaDuAdjType = 23; + } + else if(pCoexDm->curPsTdma == 23) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 24); + pCoexDm->psTdmaDuAdjType = 24; + } + else if(pCoexDm->curPsTdma == 24) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 25); + pCoexDm->psTdmaDuAdjType = 25; + } + } + else if (result == 1) + { + if(pCoexDm->curPsTdma == 25) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 24); + pCoexDm->psTdmaDuAdjType = 24; + } + else if(pCoexDm->curPsTdma == 24) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 23); + pCoexDm->psTdmaDuAdjType = 23; + } + else if(pCoexDm->curPsTdma == 23) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 22); + pCoexDm->psTdmaDuAdjType = 22; + } + } + // error handle, if not in the following state, + // set psTdma again. + if( (pCoexDm->psTdmaDuAdjType != 22) && + (pCoexDm->psTdmaDuAdjType != 23) && + (pCoexDm->psTdmaDuAdjType != 24) && + (pCoexDm->psTdmaDuAdjType != 25) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], duration case out of handle!!\n")); + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 23); + pCoexDm->psTdmaDuAdjType = 23; + } + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], 40MHz\n")); + if(result == -1) + { + if(pCoexDm->curPsTdma == 23) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 24); + pCoexDm->psTdmaDuAdjType = 24; + } + else if(pCoexDm->curPsTdma == 24) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 25); + pCoexDm->psTdmaDuAdjType = 25; + } + else if(pCoexDm->curPsTdma == 25) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 27); + pCoexDm->psTdmaDuAdjType = 27; + } + } + else if (result == 1) + { + if(pCoexDm->curPsTdma == 27) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 25); + pCoexDm->psTdmaDuAdjType = 25; + } + else if(pCoexDm->curPsTdma == 25) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 24); + pCoexDm->psTdmaDuAdjType = 24; + } + else if(pCoexDm->curPsTdma == 24) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 23); + pCoexDm->psTdmaDuAdjType = 23; + } + } + // error handle, if not in the following state, + // set psTdma again. + if( (pCoexDm->psTdmaDuAdjType != 23) && + (pCoexDm->psTdmaDuAdjType != 24) && + (pCoexDm->psTdmaDuAdjType != 25) && + (pCoexDm->psTdmaDuAdjType != 27) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], duration case out of handle!!\n")); + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 24); + pCoexDm->psTdmaDuAdjType = 24; + } + } + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], ACL only busy\n")); + if (result == -1) + { + if(pCoexDm->curPsTdma == 1) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + pCoexDm->psTdmaDuAdjType = 2; + } + else if(pCoexDm->curPsTdma == 2) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 9); + pCoexDm->psTdmaDuAdjType = 9; + } + else if(pCoexDm->curPsTdma == 9) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + } + else if (result == 1) + { + if(pCoexDm->curPsTdma == 11) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 9); + pCoexDm->psTdmaDuAdjType = 9; + } + else if(pCoexDm->curPsTdma == 9) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + pCoexDm->psTdmaDuAdjType = 2; + } + else if(pCoexDm->curPsTdma == 2) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 1); + pCoexDm->psTdmaDuAdjType = 1; + } + } + + // error handle, if not in the following state, + // set psTdma again. + if( (pCoexDm->psTdmaDuAdjType != 1) && + (pCoexDm->psTdmaDuAdjType != 2) && + (pCoexDm->psTdmaDuAdjType != 9) && + (pCoexDm->psTdmaDuAdjType != 11) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], duration case out of handle!!\n")); + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + pCoexDm->psTdmaDuAdjType = 2; + } + } + } + } + + // if current PsTdma not match with the recorded one (when scan, dhcp...), + // then we have to adjust it back to the previous record one. + if(pCoexDm->curPsTdma != pCoexDm->psTdmaDuAdjType) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], PsTdma type dismatch!!!, curPsTdma=%d, recordPsTdma=%d\n", + pCoexDm->curPsTdma, pCoexDm->psTdmaDuAdjType)); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_SCAN, &bScan); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_LINK, &bLink); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_ROAM, &bRoam); + + if( !bScan && !bLink && !bRoam) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, pCoexDm->psTdmaDuAdjType); + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], roaming/link/scan is under progress, will adjust next time!!!\n")); + } + } + pCoexDm->psTdmaMonitorCnt++; +} + + +VOID +halbtc8723a1ant_CoexForWifiConnect( + IN PBTC_COEXIST pBtCoexist + ) +{ + BOOLEAN bWifiConnected=FALSE, bWifiBusy=FALSE; + u1Byte btState, btInfoOriginal=0; + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); + + btState = pCoexDm->btStatus; + btInfoOriginal = pCoexSta->btInfoC2h[BT_INFO_SRC_8723A_1ANT_BT_RSP][0]; + + if(bWifiConnected) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], wifi connected!!\n")); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_BUSY, &bWifiBusy); + + if( !bWifiBusy && + ((BT_STATE_8723A_1ANT_NO_CONNECTION == btState) || + (BT_STATE_8723A_1ANT_CONNECT_IDLE == btState)) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], [Wifi is idle] or [Bt is non connected idle or Bt is connected idle]!!\n")); + + if(BT_STATE_8723A_1ANT_NO_CONNECTION == btState) + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 9); + else if(BT_STATE_8723A_1ANT_CONNECT_IDLE == btState) + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + + pBtCoexist->btc_setBbReg(pBtCoexist, 0x880, 0xff000000, 0xc0); + } + else + { + if( (BT_STATE_8723A_1ANT_SCO_ONLY_BUSY == btState) || + (BT_STATE_8723A_1ANT_ACL_SCO_BUSY == btState) || + (BT_STATE_8723A_1ANT_HID_BUSY == btState) || + (BT_STATE_8723A_1ANT_HID_SCO_BUSY == btState) ) + { + pBtCoexist->btc_setBbReg(pBtCoexist, 0x880, 0xff000000, 0x60); + } + else + { + pBtCoexist->btc_setBbReg(pBtCoexist, 0x880, 0xff000000, 0xc0); + } + switch(btState) + { + case BT_STATE_8723A_1ANT_NO_CONNECTION: + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 5); + break; + case BT_STATE_8723A_1ANT_CONNECT_IDLE: + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 12); + break; + case BT_STATE_8723A_1ANT_INQ_OR_PAG: + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 10); + break; + case BT_STATE_8723A_1ANT_SCO_ONLY_BUSY: + case BT_STATE_8723A_1ANT_ACL_SCO_BUSY: + case BT_STATE_8723A_1ANT_HID_BUSY: + case BT_STATE_8723A_1ANT_HID_SCO_BUSY: + halbtc8723a1ant_TdmaDurationAdjust(pBtCoexist); + break; + case BT_STATE_8723A_1ANT_ACL_ONLY_BUSY: + if (btInfoOriginal&BT_INFO_8723A_1ANT_B_A2DP) + { + halbtc8723a1ant_TdmaDurationAdjust(pBtCoexist); + } + else if(btInfoOriginal&BT_INFO_8723A_1ANT_B_FTP) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 1); + } + else if( (btInfoOriginal&BT_INFO_8723A_1ANT_B_A2DP) && + (btInfoOriginal&BT_INFO_8723A_1ANT_B_FTP) ) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 6); + } + else + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 1); + } + break; + default: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], error!!!, undefined case in halbtc8723a1ant_CoexForWifiConnect()!!\n")); + break; + } + } + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], wifi is disconnected!!\n")); + } + + pCoexDm->psTdmaGlobalCnt++; +} + +//============================================================ +// work around function start with wa_halbtc8723a1ant_ +//============================================================ +VOID +wa_halbtc8723a1ant_MonitorC2h( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte tmp1b=0x0; + u4Byte curC2hTotalCnt=0x0; + static u4Byte preC2hTotalCnt=0x0, sameCntPollingTime=0x0; + + curC2hTotalCnt+=pCoexSta->btInfoC2hCnt[BT_INFO_SRC_8723A_1ANT_BT_RSP]; + + if(curC2hTotalCnt == preC2hTotalCnt) + { + sameCntPollingTime++; + } + else + { + preC2hTotalCnt = curC2hTotalCnt; + sameCntPollingTime = 0; + } + + if(sameCntPollingTime >= 2) + { + tmp1b = pBtCoexist->btc_read_1byte(pBtCoexist, 0x1af); + if(tmp1b != 0x0) + { + pCoexSta->c2hHangDetectCnt++; + pBtCoexist->btc_write_1byte(pBtCoexist, 0x1af, 0x0); + } + } +} + +//============================================================ +// extern function start with EXhalbtc8723a1ant_ +//============================================================ +VOID +EXhalbtc8723a1ant_InitHwConfig( + IN PBTC_COEXIST pBtCoexist + ) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], 1Ant Init HW Config!!\n")); + + // backup rf 0x1e value + pCoexDm->btRf0x1eBackup = + pBtCoexist->btc_get_rf_reg(pBtCoexist, BTC_RF_A, 0x1e, 0xfffff); + + pBtCoexist->btc_write_1byte(pBtCoexist, 0x40, 0x20); + + // enable counter statistics + pBtCoexist->btc_write_1byte(pBtCoexist, 0x76e, 0x4); + + // coex table + pBtCoexist->btc_write_1byte(pBtCoexist, 0x6cc, 0x0); // 1-Ant coex + pBtCoexist->btc_write_4byte(pBtCoexist, 0x6c8, 0xffff); // wifi break table + pBtCoexist->btc_write_4byte(pBtCoexist, 0x6c4, 0x55555555); //coex table + + // antenna switch control parameter + pBtCoexist->btc_write_4byte(pBtCoexist, 0x858, 0xaaaaaaaa); + + pBtCoexist->btc_write_2byte(pBtCoexist, 0x860, 0x210); //set antenna at wifi side if ANTSW is software control + pBtCoexist->btc_write_4byte(pBtCoexist, 0x870, 0x300); //SPDT(connected with TRSW) control by hardware PTA + pBtCoexist->btc_write_4byte(pBtCoexist, 0x874, 0x22804000); //ANTSW keep by GNT_BT + + // coexistence parameters + pBtCoexist->btc_write_1byte(pBtCoexist, 0x778, 0x1); // enable RTK mode PTA +} + +VOID +EXhalbtc8723a1ant_InitCoexDm( + IN PBTC_COEXIST pBtCoexist + ) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], Coex Mechanism Init!!\n")); + + halbtc8723a1ant_InitCoexDm(pBtCoexist); +} + +VOID +EXhalbtc8723a1ant_DisplayCoexInfo( + IN PBTC_COEXIST pBtCoexist + ) +{ + struct btc_board_info * pBoardInfo=&pBtCoexist->board_info; + PBTC_STACK_INFO pStackInfo=&pBtCoexist->stack_info; + pu1Byte cliBuf=pBtCoexist->cli_buf; + u1Byte u1Tmp[4], i, btInfoExt, psTdmaCase=0; + u4Byte u4Tmp[4]; + BOOLEAN bRoam=FALSE, bScan=FALSE, bLink=FALSE, bWifiUnder5G=FALSE; + BOOLEAN bBtHsOn=FALSE, bWifiBusy=FALSE; + s4Byte wifiRssi=0, btHsRssi=0; + u4Byte wifiBw, wifiTrafficDir; + u1Byte wifiDot11Chnl, wifiHsChnl; + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n ============[BT Coexist info]============"); + CL_PRINTF(cliBuf); + + if(!pBoardInfo->bt_exist) + { + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n BT not exists !!!"); + CL_PRINTF(cliBuf); + return; + } + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d ", "Ant PG number/ Ant mechanism:", \ + pBoardInfo->pg_ant_num, pBoardInfo->btdm_ant_num); + CL_PRINTF(cliBuf); + + if(pBtCoexist->manual_control) + { + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s", "[Action Manual control]!!"); + CL_PRINTF(cliBuf); + } + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %d", "BT stack/ hci ext ver", \ + ((pStackInfo->bProfileNotified)? "Yes":"No"), pStackInfo->hciVersion); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U1_WIFI_DOT11_CHNL, &wifiDot11Chnl); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U1_WIFI_HS_CHNL, &wifiHsChnl); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d / %d(%d)", "Dot11 channel / HsChnl(HsMode)", \ + wifiDot11Chnl, wifiHsChnl, bBtHsOn); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x ", "H2C Wifi inform bt chnl Info", \ + pCoexDm->wifiChnlInfo[0], pCoexDm->wifiChnlInfo[1], + pCoexDm->wifiChnlInfo[2]); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_S4_WIFI_RSSI, &wifiRssi); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_S4_HS_RSSI, &btHsRssi); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", "Wifi rssi/ HS rssi", \ + wifiRssi, btHsRssi); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_SCAN, &bScan); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_LINK, &bLink); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_ROAM, &bRoam); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d ", "Wifi bLink/ bRoam/ bScan", \ + bLink, bRoam, bScan); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_UNDER_5G, &bWifiUnder5G); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_BUSY, &bWifiBusy); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_TRAFFIC_DIRECTION, &wifiTrafficDir); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %s/ %s ", "Wifi status", \ + (bWifiUnder5G? "5G":"2.4G"), + ((BTC_WIFI_BW_LEGACY==wifiBw)? "Legacy": (((BTC_WIFI_BW_HT40==wifiBw)? "HT40":"HT20"))), + ((!bWifiBusy)? "idle": ((BTC_WIFI_TRAFFIC_TX==wifiTrafficDir)? "uplink":"downlink"))); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = [%s/ %d/ %d] ", "BT [status/ rssi/ retryCnt]", \ + ((pCoexSta->bC2hBtInquiryPage)?("inquiry/page scan"):((BT_8723A_1ANT_BT_STATUS_IDLE == pCoexDm->btStatus)? "idle":( (BT_8723A_1ANT_BT_STATUS_CONNECTED_IDLE == pCoexDm->btStatus)? "connected-idle":"busy"))), + pCoexSta->btRssi, pCoexSta->btRetryCnt); + CL_PRINTF(cliBuf); + + if(pStackInfo->bProfileNotified) + { + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d / %d / %d / %d", "SCO/HID/PAN/A2DP", \ + pStackInfo->bScoExist, pStackInfo->bHidExist, pStackInfo->bPanExist, pStackInfo->bA2dpExist); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_disp_dbg_msg(pBtCoexist, BTC_DBG_DISP_BT_LINK_INFO); + } + + btInfoExt = pCoexSta->btInfoExt; + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s", "BT Info A2DP rate", \ + (btInfoExt&BIT0)? "Basic rate":"EDR rate"); + CL_PRINTF(cliBuf); + + for(i=0; ibtInfoC2hCnt[i]) + { + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x %02x %02x %02x %02x(%d)", GLBtInfoSrc8723a1Ant[i], \ + pCoexSta->btInfoC2h[i][0], pCoexSta->btInfoC2h[i][1], + pCoexSta->btInfoC2h[i][2], pCoexSta->btInfoC2h[i][3], + pCoexSta->btInfoC2h[i][4], pCoexSta->btInfoC2h[i][5], + pCoexSta->btInfoC2h[i][6], pCoexSta->btInfoC2hCnt[i]); + CL_PRINTF(cliBuf); + } + } + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d", "write 0x1af=0x0 num", \ + pCoexSta->c2hHangDetectCnt); + CL_PRINTF(cliBuf); + + // Sw mechanism + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s", "============[Sw mechanism]============"); + CL_PRINTF(cliBuf); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d", "SM1[ShRf/ LpRA/ LimDig]", \ + pCoexDm->bCurRfRxLpfShrink, pCoexDm->bCurLowPenaltyRa, pCoexDm->limited_dig); + CL_PRINTF(cliBuf); + + // Fw mechanism + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s", "============[Fw mechanism]============"); + CL_PRINTF(cliBuf); + + if(!pBtCoexist->manual_control) + { + psTdmaCase = pCoexDm->curPsTdma; + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x %02x %02x case-%d", "PS TDMA", \ + pCoexDm->psTdmaPara[0], pCoexDm->psTdmaPara[1], + pCoexDm->psTdmaPara[2], pCoexDm->psTdmaPara[3], + pCoexDm->psTdmaPara[4], psTdmaCase); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d ", "IgnWlanAct", \ + pCoexDm->bCurIgnoreWlanAct); + CL_PRINTF(cliBuf); + } + + // Hw setting + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s", "============[Hw setting]============"); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "RF-A, 0x1e initVal", \ + pCoexDm->btRf0x1eBackup); + CL_PRINTF(cliBuf); + + u1Tmp[0] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x778); + u1Tmp[1] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x783); + u1Tmp[2] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x796); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", "0x778/ 0x783/ 0x796", \ + u1Tmp[0], u1Tmp[1], u1Tmp[2]); + CL_PRINTF(cliBuf); + + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x880); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "0x880", \ + u4Tmp[0]); + CL_PRINTF(cliBuf); + + u1Tmp[0] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x40); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "0x40", \ + u1Tmp[0]); + CL_PRINTF(cliBuf); + + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x550); + u1Tmp[0] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x522); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", "0x550(bcn ctrl)/0x522", \ + u4Tmp[0], u1Tmp[0]); + CL_PRINTF(cliBuf); + + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x484); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "0x484(rate adaptive)", \ + u4Tmp[0]); + CL_PRINTF(cliBuf); + + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0xc50); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "0xc50(dig)", \ + u4Tmp[0]); + CL_PRINTF(cliBuf); + + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0xda0); + u4Tmp[1] = pBtCoexist->btc_read_4byte(pBtCoexist, 0xda4); + u4Tmp[2] = pBtCoexist->btc_read_4byte(pBtCoexist, 0xda8); + u4Tmp[3] = pBtCoexist->btc_read_4byte(pBtCoexist, 0xdac); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x/ 0x%x", "0xda0/0xda4/0xda8/0xdac(FA cnt)", \ + u4Tmp[0], u4Tmp[1], u4Tmp[2], u4Tmp[3]); + CL_PRINTF(cliBuf); + + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x6c0); + u4Tmp[1] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x6c4); + u4Tmp[2] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x6c8); + u1Tmp[0] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x6cc); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x/ 0x%x", "0x6c0/0x6c4/0x6c8/0x6cc(coexTable)", \ + u4Tmp[0], u4Tmp[1], u4Tmp[2], u1Tmp[0]); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", "0x770 (hp rx[31:16]/tx[15:0])", \ + pCoexSta->highPriorityRx, pCoexSta->highPriorityTx); + CL_PRINTF(cliBuf); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", "0x774(lp rx[31:16]/tx[15:0])", \ + pCoexSta->lowPriorityRx, pCoexSta->lowPriorityTx); + CL_PRINTF(cliBuf); + + // Tx mgnt queue hang or not, 0x41b should = 0xf, ex: 0xd ==>hang + u1Tmp[0] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x41b); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "0x41b (mgntQ hang chk == 0xf)", \ + u1Tmp[0]); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_disp_dbg_msg(pBtCoexist, BTC_DBG_DISP_COEX_STATISTICS); +} + + +VOID +EXhalbtc8723a1ant_IpsNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + if(BTC_IPS_ENTER == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], IPS ENTER notify\n")); + halbtc8723a1ant_CoexAllOff(pBtCoexist); + } + else if(BTC_IPS_LEAVE == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], IPS LEAVE notify\n")); + //halbtc8723a1ant_InitCoexDm(pBtCoexist); + } +} + +VOID +EXhalbtc8723a1ant_LpsNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + if(BTC_LPS_ENABLE == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], LPS ENABLE notify\n")); + } + else if(BTC_LPS_DISABLE == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], LPS DISABLE notify\n")); + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 8); + } +} + +VOID +EXhalbtc8723a1ant_ScanNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + BOOLEAN bWifiConnected=FALSE; + + halbtc8723a1ant_NotifyFwScan(pBtCoexist, type); + + if(pBtCoexist->btInfo.bBtDisabled) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 9); + } + else + { + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); + if(BTC_SCAN_START == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], SCAN START notify\n")); + if(!bWifiConnected) // non-connected scan + { + //set 0x550[3]=1 before PsTdma + halbtc8723a1ant_Reg0x550Bit3(pBtCoexist, true); + } + + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 4); + } + else if(BTC_SCAN_FINISH == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], SCAN FINISH notify\n")); + if(!bWifiConnected) // non-connected scan + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + } + else + { + halbtc8723a1ant_CoexForWifiConnect(pBtCoexist); + } + } + } +} + +VOID +EXhalbtc8723a1ant_ConnectNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + BOOLEAN bWifiConnected=FALSE; + + if(pBtCoexist->btInfo.bBtDisabled) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 9); + } + else + { + if(BTC_ASSOCIATE_START == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], CONNECT START notify\n")); + //set 0x550[3]=1 before PsTdma + halbtc8723a1ant_Reg0x550Bit3(pBtCoexist, true); + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 8); // extend wifi slot + } + else if(BTC_ASSOCIATE_FINISH == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], CONNECT FINISH notify\n")); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); + if(!bWifiConnected) // non-connected scan + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + } + else + { + halbtc8723a1ant_CoexForWifiConnect(pBtCoexist); + } + } + } +} + +VOID +EXhalbtc8723a1ant_MediaStatusNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + if(BTC_MEDIA_CONNECT == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], MEDIA connect notify\n")); + } + else + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], MEDIA disconnect notify\n")); + } +} + +VOID +EXhalbtc8723a1ant_SpecialPacketNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + if(type == BTC_PACKET_DHCP) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], DHCP Packet notify\n")); + if(pBtCoexist->btInfo.bBtDisabled) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 9); + } + else + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 18); + } + } +} + +VOID +EXhalbtc8723a1ant_BtInfoNotify( + IN PBTC_COEXIST pBtCoexist, + IN pu1Byte tmpBuf, + IN u1Byte length + ) +{ + u1Byte btInfo=0; + u1Byte i, rspSource=0; + BOOLEAN bBtHsOn=FALSE, bBtBusy=FALSE, bForceLps=FALSE; + + pCoexSta->bC2hBtInfoReqSent = FALSE; + + rspSource = BT_INFO_SRC_8723A_1ANT_BT_RSP; + pCoexSta->btInfoC2hCnt[rspSource]++; + + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Bt info[%d], length=%d, hex data=[", rspSource, length)); + for(i=0; ibtInfoC2h[rspSource][i] = tmpBuf[i]; + if(i == 0) + btInfo = tmpBuf[i]; + if(i == length-1) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("0x%02x]\n", tmpBuf[i])); + } + else + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("0x%02x, ", tmpBuf[i])); + } + } + + if(BT_INFO_SRC_8723A_1ANT_WIFI_FW != rspSource) + { + pCoexSta->btRetryCnt = + pCoexSta->btInfoC2h[rspSource][1]; + + pCoexSta->btRssi = + pCoexSta->btInfoC2h[rspSource][2]*2+10; + + pCoexSta->btInfoExt = + pCoexSta->btInfoC2h[rspSource][3]; + } + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn); + // check BIT2 first ==> check if bt is under inquiry or page scan + if(btInfo & BT_INFO_8723A_1ANT_B_INQ_PAGE) + { + pCoexSta->bC2hBtInquiryPage = true; + } + else + { + pCoexSta->bC2hBtInquiryPage = FALSE; + } + btInfo &= ~BIT2; + if(!(btInfo & BIT0)) + { + pCoexDm->btStatus = BT_STATE_8723A_1ANT_NO_CONNECTION; + bForceLps = FALSE; + } + else + { + bForceLps = true; + if(btInfo == 0x1) + { + pCoexDm->btStatus = BT_STATE_8723A_1ANT_CONNECT_IDLE; + } + else if(btInfo == 0x9) + { + pCoexDm->btStatus = BT_STATE_8723A_1ANT_ACL_ONLY_BUSY; + bBtBusy = true; + } + else if(btInfo == 0x13) + { + pCoexDm->btStatus = BT_STATE_8723A_1ANT_SCO_ONLY_BUSY; + bBtBusy = true; + } + else if(btInfo == 0x1b) + { + pCoexDm->btStatus = BT_STATE_8723A_1ANT_ACL_SCO_BUSY; + bBtBusy = true; + } + else if(btInfo == 0x29) + { + pCoexDm->btStatus = BT_STATE_8723A_1ANT_HID_BUSY; + bBtBusy = true; + } + else if(btInfo == 0x3b) + { + pCoexDm->btStatus = BT_STATE_8723A_1ANT_HID_SCO_BUSY; + bBtBusy = true; + } + } + pBtCoexist->btc_set(pBtCoexist, BTC_SET_BL_BT_TRAFFIC_BUSY, &bBtBusy); + pBtCoexist->btc_set(pBtCoexist, BTC_SET_BL_BT_LIMITED_DIG, &bBtBusy); + if(bForceLps) + pBtCoexist->btc_set(pBtCoexist, BTC_SET_ACT_ENTER_LPS, NULL); + else + pBtCoexist->btc_set(pBtCoexist, BTC_SET_ACT_NORMAL_LPS, NULL); + + if( (BT_STATE_8723A_1ANT_NO_CONNECTION == pCoexDm->btStatus) || + (BT_STATE_8723A_1ANT_CONNECT_IDLE == pCoexDm->btStatus) ) + { + if(pCoexSta->bC2hBtInquiryPage) + pCoexDm->btStatus = BT_STATE_8723A_1ANT_INQ_OR_PAG; + } +} + +VOID +EXhalbtc8723a1ant_StackOperationNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + if(BTC_STACK_OP_INQ_PAGE_PAIR_START == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], StackOP Inquiry/page/pair start notify\n")); + } + else if(BTC_STACK_OP_INQ_PAGE_PAIR_FINISH == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], StackOP Inquiry/page/pair finish notify\n")); + } +} + +VOID +EXhalbtc8723a1ant_HaltNotify( + IN PBTC_COEXIST pBtCoexist + ) +{ + halbtc8723a1ant_PsTdma(pBtCoexist, FORCE_EXEC, FALSE, 0); + + halbtc8723a1ant_LowPenaltyRa(pBtCoexist, FORCE_EXEC, FALSE); + halbtc8723a1ant_RfShrink(pBtCoexist, FORCE_EXEC, FALSE); + + halbtc8723a1ant_IgnoreWlanAct(pBtCoexist, FORCE_EXEC, true); + EXhalbtc8723a1ant_MediaStatusNotify(pBtCoexist, BTC_MEDIA_DISCONNECT); +} + +VOID +EXhalbtc8723a1ant_Periodical( + IN PBTC_COEXIST pBtCoexist + ) +{ + BOOLEAN bScan=FALSE, bLink=FALSE, bRoam=FALSE, bWifiConnected=FALSE; + + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], 1Ant Periodical!!\n")); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_SCAN, &bScan); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_LINK, &bLink); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_ROAM, &bRoam); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); + + // work around for c2h hang + wa_halbtc8723a1ant_MonitorC2h(pBtCoexist); + + halbtc8723a1ant_QueryBtInfo(pBtCoexist); + halbtc8723a1ant_MonitorBtCtr(pBtCoexist); + halbtc8723a1ant_MonitorBtEnableDisable(pBtCoexist); + + + if(bScan) + return; + if(bLink) + return; + + if(bWifiConnected) + { + if(pBtCoexist->btInfo.bBtDisabled) + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 9); + + halbtc8723a1ant_LowPenaltyRa(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a1ant_RfShrink(pBtCoexist, NORMAL_EXEC, FALSE); + } + else + { + halbtc8723a1ant_LowPenaltyRa(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a1ant_RfShrink(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a1ant_CoexForWifiConnect(pBtCoexist); + } + } + else + { + halbtc8723a1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + + halbtc8723a1ant_LowPenaltyRa(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a1ant_RfShrink(pBtCoexist, NORMAL_EXEC, FALSE); + } +} + + +#endif + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/habtc8723a1ant.h +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/habtc8723a1ant.h @@ -0,0 +1,176 @@ +//=========================================== +// The following is for 8723A 1Ant BT Co-exist definition +//=========================================== +#define BT_INFO_8723A_1ANT_B_FTP BIT7 +#define BT_INFO_8723A_1ANT_B_A2DP BIT6 +#define BT_INFO_8723A_1ANT_B_HID BIT5 +#define BT_INFO_8723A_1ANT_B_SCO_BUSY BIT4 +#define BT_INFO_8723A_1ANT_B_ACL_BUSY BIT3 +#define BT_INFO_8723A_1ANT_B_INQ_PAGE BIT2 +#define BT_INFO_8723A_1ANT_B_SCO_ESCO BIT1 +#define BT_INFO_8723A_1ANT_B_CONNECTION BIT0 + +typedef enum _BT_STATE_8723A_1ANT{ + BT_STATE_8723A_1ANT_DISABLED = 0, + BT_STATE_8723A_1ANT_NO_CONNECTION = 1, + BT_STATE_8723A_1ANT_CONNECT_IDLE = 2, + BT_STATE_8723A_1ANT_INQ_OR_PAG = 3, + BT_STATE_8723A_1ANT_ACL_ONLY_BUSY = 4, + BT_STATE_8723A_1ANT_SCO_ONLY_BUSY = 5, + BT_STATE_8723A_1ANT_ACL_SCO_BUSY = 6, + BT_STATE_8723A_1ANT_HID_BUSY = 7, + BT_STATE_8723A_1ANT_HID_SCO_BUSY = 8, + BT_STATE_8723A_1ANT_MAX +}BT_STATE_8723A_1ANT, *PBT_STATE_8723A_1ANT; + +#define BTC_RSSI_COEX_THRESH_TOL_8723A_1ANT 2 + +typedef enum _BT_INFO_SRC_8723A_1ANT{ + BT_INFO_SRC_8723A_1ANT_WIFI_FW = 0x0, + BT_INFO_SRC_8723A_1ANT_BT_RSP = 0x1, + BT_INFO_SRC_8723A_1ANT_BT_ACTIVE_SEND = 0x2, + BT_INFO_SRC_8723A_1ANT_MAX +}BT_INFO_SRC_8723A_1ANT,*PBT_INFO_SRC_8723A_1ANT; + +typedef enum _BT_8723A_1ANT_BT_STATUS{ + BT_8723A_1ANT_BT_STATUS_IDLE = 0x0, + BT_8723A_1ANT_BT_STATUS_CONNECTED_IDLE = 0x1, + BT_8723A_1ANT_BT_STATUS_NON_IDLE = 0x2, + BT_8723A_1ANT_BT_STATUS_MAX +}BT_8723A_1ANT_BT_STATUS,*PBT_8723A_1ANT_BT_STATUS; + +typedef enum _BT_8723A_1ANT_COEX_ALGO{ + BT_8723A_1ANT_COEX_ALGO_UNDEFINED = 0x0, + BT_8723A_1ANT_COEX_ALGO_SCO = 0x1, + BT_8723A_1ANT_COEX_ALGO_HID = 0x2, + BT_8723A_1ANT_COEX_ALGO_A2DP = 0x3, + BT_8723A_1ANT_COEX_ALGO_PANEDR = 0x4, + BT_8723A_1ANT_COEX_ALGO_PANHS = 0x5, + BT_8723A_1ANT_COEX_ALGO_PANEDR_A2DP = 0x6, + BT_8723A_1ANT_COEX_ALGO_PANEDR_HID = 0x7, + BT_8723A_1ANT_COEX_ALGO_HID_A2DP_PANEDR = 0x8, + BT_8723A_1ANT_COEX_ALGO_HID_A2DP = 0x9, + BT_8723A_1ANT_COEX_ALGO_MAX +}BT_8723A_1ANT_COEX_ALGO,*PBT_8723A_1ANT_COEX_ALGO; + +typedef struct _COEX_DM_8723A_1ANT{ + // fw mechanism + BOOLEAN bCurIgnoreWlanAct; + BOOLEAN bPreIgnoreWlanAct; + u1Byte prePsTdma; + u1Byte curPsTdma; + u1Byte psTdmaPara[5]; + u1Byte psTdmaDuAdjType; + u4Byte psTdmaMonitorCnt; + u4Byte psTdmaGlobalCnt; + BOOLEAN bResetTdmaAdjust; + BOOLEAN bPrePsTdmaOn; + BOOLEAN bCurPsTdmaOn; + + // sw mechanism + BOOLEAN bPreRfRxLpfShrink; + BOOLEAN bCurRfRxLpfShrink; + u4Byte btRf0x1eBackup; + BOOLEAN bPreLowPenaltyRa; + BOOLEAN bCurLowPenaltyRa; + u4Byte preVal0x6c0; + u4Byte curVal0x6c0; + u4Byte preVal0x6c8; + u4Byte curVal0x6c8; + u1Byte preVal0x6cc; + u1Byte curVal0x6cc; + BOOLEAN limited_dig; + + // algorithm related + u1Byte preAlgorithm; + u1Byte curAlgorithm; + u1Byte btStatus; + u1Byte wifiChnlInfo[3]; +} COEX_DM_8723A_1ANT, *PCOEX_DM_8723A_1ANT; + +typedef struct _COEX_STA_8723A_1ANT{ + u4Byte highPriorityTx; + u4Byte highPriorityRx; + u4Byte lowPriorityTx; + u4Byte lowPriorityRx; + u1Byte btRssi; + u1Byte preBtRssiState; + u1Byte preBtRssiState1; + u1Byte preWifiRssiState[4]; + BOOLEAN bC2hBtInfoReqSent; + u1Byte btInfoC2h[BT_INFO_SRC_8723A_1ANT_MAX][10]; + u4Byte btInfoC2hCnt[BT_INFO_SRC_8723A_1ANT_MAX]; + BOOLEAN bC2hBtInquiryPage; + u1Byte btRetryCnt; + u1Byte btInfoExt; + //BOOLEAN bHoldForStackOperation; + //u1Byte bHoldPeriodCnt; + // this is for c2h hang work-around + u4Byte c2hHangDetectCnt; +}COEX_STA_8723A_1ANT, *PCOEX_STA_8723A_1ANT; + +//=========================================== +// The following is interface which will notify coex module. +//=========================================== +VOID +EXhalbtc8723a1ant_InitHwConfig( + IN PBTC_COEXIST pBtCoexist + ); +VOID +EXhalbtc8723a1ant_InitCoexDm( + IN PBTC_COEXIST pBtCoexist + ); +VOID +EXhalbtc8723a1ant_IpsNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8723a1ant_LpsNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8723a1ant_ScanNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8723a1ant_ConnectNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8723a1ant_MediaStatusNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8723a1ant_SpecialPacketNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8723a1ant_BtInfoNotify( + IN PBTC_COEXIST pBtCoexist, + IN pu1Byte tmpBuf, + IN u1Byte length + ); +VOID +EXhalbtc8723a1ant_StackOperationNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8723a1ant_HaltNotify( + IN PBTC_COEXIST pBtCoexist + ); +VOID +EXhalbtc8723a1ant_Periodical( + IN PBTC_COEXIST pBtCoexist + ); +VOID +EXhalbtc8723a1ant_DisplayCoexInfo( + IN PBTC_COEXIST pBtCoexist + ); + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/halbt_precomp.h +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/halbt_precomp.h @@ -0,0 +1,99 @@ +/****************************************************************************** + * + * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * + ******************************************************************************/ +#ifndef __HALBT_PRECOMP_H__ +#define __HALBT_PRECOMP_H__ +/************************************************************* + * include files + *************************************************************/ +#include "../wifi.h" +#include "../efuse.h" +#include "../base.h" +#include "../regd.h" +#include "../cam.h" +#include "../ps.h" +#include "../pci.h" +#include "../rtl8821ae/reg.h" +#include "../rtl8821ae/def.h" +#include "../rtl8821ae/phy.h" +#include "../rtl8821ae/dm.h" +#include "../rtl8821ae/fw.h" +#include "../rtl8821ae/led.h" +#include "../rtl8821ae/hw.h" +#include "../rtl8821ae/pwrseqcmd.h" +#include "../rtl8821ae/pwrseq.h" + +#include "halbtcoutsrc.h" + + +#include "halbtc8192e2ant.h" +#include "halbtc8723b1ant.h" +#include "halbtc8723b2ant.h" + + + +#define GetDefaultAdapter(padapter) padapter + + +#define BIT0 0x00000001 +#define BIT1 0x00000002 +#define BIT2 0x00000004 +#define BIT3 0x00000008 +#define BIT4 0x00000010 +#define BIT5 0x00000020 +#define BIT6 0x00000040 +#define BIT7 0x00000080 +#define BIT8 0x00000100 +#define BIT9 0x00000200 +#define BIT10 0x00000400 +#define BIT11 0x00000800 +#define BIT12 0x00001000 +#define BIT13 0x00002000 +#define BIT14 0x00004000 +#define BIT15 0x00008000 +#define BIT16 0x00010000 +#define BIT17 0x00020000 +#define BIT18 0x00040000 +#define BIT19 0x00080000 +#define BIT20 0x00100000 +#define BIT21 0x00200000 +#define BIT22 0x00400000 +#define BIT23 0x00800000 +#define BIT24 0x01000000 +#define BIT25 0x02000000 +#define BIT26 0x04000000 +#define BIT27 0x08000000 +#define BIT28 0x10000000 +#define BIT29 0x20000000 +#define BIT30 0x40000000 +#define BIT31 0x80000000 + +#define MASKBYTE0 0xff +#define MASKBYTE1 0xff00 +#define MASKBYTE2 0xff0000 +#define MASKBYTE3 0xff000000 +#define MASKHWORD 0xffff0000 +#define MASKLWORD 0x0000ffff +#define MASKDWORD 0xffffffff +#define MASK12BITS 0xfff +#define MASKH4BITS 0xf0000000 +#define MASKOFDM_D 0xffc00000 +#define MASKCCK 0x3f3f3f3f + +#endif /* __HALBT_PRECOMP_H__ */ --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/halbtc8192e1ant.c +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/halbtc8192e1ant.c @@ -0,0 +1,3891 @@ +//============================================================ +// Description: +// +// This file is for 8192e1ant Co-exist mechanism +// +// History +// 2012/11/15 Cosa first check in. +// +//============================================================ + +//============================================================ +// include files +//============================================================ +#include "Mp_Precomp.h" +#if(BT_30_SUPPORT == 1) +//============================================================ +// Global variables, these are static variables +//============================================================ +static COEX_DM_8192E_1ANT GLCoexDm8192e1Ant; +static PCOEX_DM_8192E_1ANT pCoexDm=&GLCoexDm8192e1Ant; +static COEX_STA_8192E_1ANT GLCoexSta8192e1Ant; +static PCOEX_STA_8192E_1ANT pCoexSta=&GLCoexSta8192e1Ant; + +const char *const GLBtInfoSrc8192e1Ant[]={ + "BT Info[wifi fw]", + "BT Info[bt rsp]", + "BT Info[bt auto report]", +}; + +u4Byte GLCoexVerDate8192e1Ant=20130729; +u4Byte GLCoexVer8192e1Ant=0x10; + +//============================================================ +// local function proto type if needed +//============================================================ +//============================================================ +// local function start with halbtc8192e1ant_ +//============================================================ +u1Byte +halbtc8192e1ant_BtRssiState( + u1Byte levelNum, + u1Byte rssiThresh, + u1Byte rssiThresh1 + ) +{ + s4Byte btRssi=0; + u1Byte btRssiState=pCoexSta->preBtRssiState; + + btRssi = pCoexSta->btRssi; + + if(levelNum == 2) + { + if( (pCoexSta->preBtRssiState == BTC_RSSI_STATE_LOW) || + (pCoexSta->preBtRssiState == BTC_RSSI_STATE_STAY_LOW)) + { + if(btRssi >= (rssiThresh+BTC_RSSI_COEX_THRESH_TOL_8192E_1ANT)) + { + btRssiState = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to High\n")); + } + else + { + btRssiState = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at Low\n")); + } + } + else + { + if(btRssi < rssiThresh) + { + btRssiState = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to Low\n")); + } + else + { + btRssiState = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at High\n")); + } + } + } + else if(levelNum == 3) + { + if(rssiThresh > rssiThresh1) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi thresh error!!\n")); + return pCoexSta->preBtRssiState; + } + + if( (pCoexSta->preBtRssiState == BTC_RSSI_STATE_LOW) || + (pCoexSta->preBtRssiState == BTC_RSSI_STATE_STAY_LOW)) + { + if(btRssi >= (rssiThresh+BTC_RSSI_COEX_THRESH_TOL_8192E_1ANT)) + { + btRssiState = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to Medium\n")); + } + else + { + btRssiState = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at Low\n")); + } + } + else if( (pCoexSta->preBtRssiState == BTC_RSSI_STATE_MEDIUM) || + (pCoexSta->preBtRssiState == BTC_RSSI_STATE_STAY_MEDIUM)) + { + if(btRssi >= (rssiThresh1+BTC_RSSI_COEX_THRESH_TOL_8192E_1ANT)) + { + btRssiState = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to High\n")); + } + else if(btRssi < rssiThresh) + { + btRssiState = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to Low\n")); + } + else + { + btRssiState = BTC_RSSI_STATE_STAY_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at Medium\n")); + } + } + else + { + if(btRssi < rssiThresh1) + { + btRssiState = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to Medium\n")); + } + else + { + btRssiState = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at High\n")); + } + } + } + + pCoexSta->preBtRssiState = btRssiState; + + return btRssiState; +} + +u1Byte +halbtc8192e1ant_WifiRssiState( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte index, + IN u1Byte levelNum, + IN u1Byte rssiThresh, + IN u1Byte rssiThresh1 + ) +{ + s4Byte wifiRssi=0; + u1Byte wifiRssiState=pCoexSta->preWifiRssiState[index]; + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_S4_WIFI_RSSI, &wifiRssi); + + if(levelNum == 2) + { + if( (pCoexSta->preWifiRssiState[index] == BTC_RSSI_STATE_LOW) || + (pCoexSta->preWifiRssiState[index] == BTC_RSSI_STATE_STAY_LOW)) + { + if(wifiRssi >= (rssiThresh+BTC_RSSI_COEX_THRESH_TOL_8192E_1ANT)) + { + wifiRssiState = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to High\n")); + } + else + { + wifiRssiState = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at Low\n")); + } + } + else + { + if(wifiRssi < rssiThresh) + { + wifiRssiState = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to Low\n")); + } + else + { + wifiRssiState = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at High\n")); + } + } + } + else if(levelNum == 3) + { + if(rssiThresh > rssiThresh1) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI thresh error!!\n")); + return pCoexSta->preWifiRssiState[index]; + } + + if( (pCoexSta->preWifiRssiState[index] == BTC_RSSI_STATE_LOW) || + (pCoexSta->preWifiRssiState[index] == BTC_RSSI_STATE_STAY_LOW)) + { + if(wifiRssi >= (rssiThresh+BTC_RSSI_COEX_THRESH_TOL_8192E_1ANT)) + { + wifiRssiState = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to Medium\n")); + } + else + { + wifiRssiState = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at Low\n")); + } + } + else if( (pCoexSta->preWifiRssiState[index] == BTC_RSSI_STATE_MEDIUM) || + (pCoexSta->preWifiRssiState[index] == BTC_RSSI_STATE_STAY_MEDIUM)) + { + if(wifiRssi >= (rssiThresh1+BTC_RSSI_COEX_THRESH_TOL_8192E_1ANT)) + { + wifiRssiState = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to High\n")); + } + else if(wifiRssi < rssiThresh) + { + wifiRssiState = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to Low\n")); + } + else + { + wifiRssiState = BTC_RSSI_STATE_STAY_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at Medium\n")); + } + } + else + { + if(wifiRssi < rssiThresh1) + { + wifiRssiState = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to Medium\n")); + } + else + { + wifiRssiState = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at High\n")); + } + } + } + + pCoexSta->preWifiRssiState[index] = wifiRssiState; + + return wifiRssiState; +} + +VOID +halbtc8192e1ant_Updatera_mask( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN u1Byte type, + IN u4Byte rateMask + ) +{ + if(BTC_RATE_DISABLE == type) + { + pCoexDm->curra_mask |= rateMask; // disable rate + } + else if(BTC_RATE_ENABLE == type) + { + pCoexDm->curra_mask &= ~rateMask; // enable rate + } + + if( bForceExec || (pCoexDm->prera_mask != pCoexDm->curra_mask)) + { + pBtCoexist->btc_set(pBtCoexist, BTC_SET_ACT_UPDATE_ra_mask, &pCoexDm->curra_mask); + } + pCoexDm->prera_mask = pCoexDm->curra_mask; +} + +VOID +halbtc8192e1ant_MonitorBtCtr( + IN PBTC_COEXIST pBtCoexist + ) +{ + u4Byte regHPTxRx, regLPTxRx, u4Tmp; + u4Byte regHPTx=0, regHPRx=0, regLPTx=0, regLPRx=0; + u1Byte u1Tmp; + + regHPTxRx = 0x770; + regLPTxRx = 0x774; + + u4Tmp = pBtCoexist->btc_read_4byte(pBtCoexist, regHPTxRx); + regHPTx = u4Tmp & MASKLWORD; + regHPRx = (u4Tmp & MASKHWORD)>>16; + + u4Tmp = pBtCoexist->btc_read_4byte(pBtCoexist, regLPTxRx); + regLPTx = u4Tmp & MASKLWORD; + regLPRx = (u4Tmp & MASKHWORD)>>16; + + pCoexSta->highPriorityTx = regHPTx; + pCoexSta->highPriorityRx = regHPRx; + pCoexSta->lowPriorityTx = regLPTx; + pCoexSta->lowPriorityRx = regLPRx; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], High Priority Tx/Rx (reg 0x%x)=0x%x(%d)/0x%x(%d)\n", + regHPTxRx, regHPTx, regHPTx, regHPRx, regHPRx)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], Low Priority Tx/Rx (reg 0x%x)=0x%x(%d)/0x%x(%d)\n", + regLPTxRx, regLPTx, regLPTx, regLPRx, regLPRx)); + + // reset counter + pBtCoexist->btc_write_1byte(pBtCoexist, 0x76e, 0xc); +} + +VOID +halbtc8192e1ant_QueryBtInfo( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte H2C_Parameter[1] ={0}; + + pCoexSta->bC2hBtInfoReqSent = true; + + H2C_Parameter[0] |= BIT0; // trigger + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], Query Bt Info, FW write 0x61=0x%x\n", + H2C_Parameter[0])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x61, 1, H2C_Parameter); +} + +BOOLEAN +halbtc8192e1ant_IsWifiStatusChanged( + IN PBTC_COEXIST pBtCoexist + ) +{ + static BOOLEAN bPreWifiBusy=FALSE, bPreUnder4way=FALSE, bPreBtHsOn=FALSE; + BOOLEAN bWifiBusy=FALSE, bUnder4way=FALSE, bBtHsOn=FALSE; + BOOLEAN bWifiConnected=FALSE; + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_BUSY, &bWifiBusy); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_4_WAY_PROGRESS, &bUnder4way); + + if(bWifiConnected) + { + if(bWifiBusy != bPreWifiBusy) + { + bPreWifiBusy = bWifiBusy; + return true; + } + if(bUnder4way != bPreUnder4way) + { + bPreUnder4way = bUnder4way; + return true; + } + if(bBtHsOn != bPreBtHsOn) + { + bPreBtHsOn = bBtHsOn; + return true; + } + } + + return FALSE; +} + +VOID +halbtc8192e1ant_UpdateBtLinkInfo( + IN PBTC_COEXIST pBtCoexist + ) +{ + PBTC_BT_LINK_INFO pBtLinkInfo=&pBtCoexist->bt_link_info; + + pBtLinkInfo->bBtLinkExist = pCoexSta->bBtLinkExist; + pBtLinkInfo->bScoExist = pCoexSta->bScoExist; + pBtLinkInfo->bA2dpExist = pCoexSta->bA2dpExist; + pBtLinkInfo->bPanExist = pCoexSta->bPanExist; + pBtLinkInfo->bHidExist = pCoexSta->bHidExist; + + // check if Sco only + if( pBtLinkInfo->bScoExist && + !pBtLinkInfo->bA2dpExist && + !pBtLinkInfo->bPanExist && + !pBtLinkInfo->bHidExist ) + pBtLinkInfo->bScoOnly = true; + else + pBtLinkInfo->bScoOnly = FALSE; + + // check if A2dp only + if( !pBtLinkInfo->bScoExist && + pBtLinkInfo->bA2dpExist && + !pBtLinkInfo->bPanExist && + !pBtLinkInfo->bHidExist ) + pBtLinkInfo->bA2dpOnly = true; + else + pBtLinkInfo->bA2dpOnly = FALSE; + + // check if Pan only + if( !pBtLinkInfo->bScoExist && + !pBtLinkInfo->bA2dpExist && + pBtLinkInfo->bPanExist && + !pBtLinkInfo->bHidExist ) + pBtLinkInfo->bPanOnly = true; + else + pBtLinkInfo->bPanOnly = FALSE; + + // check if Hid only + if( !pBtLinkInfo->bScoExist && + !pBtLinkInfo->bA2dpExist && + !pBtLinkInfo->bPanExist && + pBtLinkInfo->bHidExist ) + pBtLinkInfo->bHidOnly = true; + else + pBtLinkInfo->bHidOnly = FALSE; +} + +u1Byte +halbtc8192e1ant_ActionAlgorithm( + IN PBTC_COEXIST pBtCoexist + ) +{ + PBTC_BT_LINK_INFO pBtLinkInfo=&pBtCoexist->bt_link_info; + BOOLEAN bBtHsOn=FALSE; + u1Byte algorithm=BT_8192E_1ANT_COEX_ALGO_UNDEFINED; + u1Byte numOfDiffProfile=0; + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn); + + if(!pBtLinkInfo->bBtLinkExist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], No BT link exists!!!\n")); + return algorithm; + } + + if(pBtLinkInfo->bScoExist) + numOfDiffProfile++; + if(pBtLinkInfo->bHidExist) + numOfDiffProfile++; + if(pBtLinkInfo->bPanExist) + numOfDiffProfile++; + if(pBtLinkInfo->bA2dpExist) + numOfDiffProfile++; + + if(numOfDiffProfile == 1) + { + if(pBtLinkInfo->bScoExist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO only\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_SCO; + } + else + { + if(pBtLinkInfo->bHidExist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID only\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_HID; + } + else if(pBtLinkInfo->bA2dpExist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], A2DP only\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_A2DP; + } + else if(pBtLinkInfo->bPanExist) + { + if(bBtHsOn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], PAN(HS) only\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_PANHS; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], PAN(EDR) only\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_PANEDR; + } + } + } + } + else if(numOfDiffProfile == 2) + { + if(pBtLinkInfo->bScoExist) + { + if(pBtLinkInfo->bHidExist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_HID; + } + else if(pBtLinkInfo->bA2dpExist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + A2DP ==> SCO\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_SCO; + } + else if(pBtLinkInfo->bPanExist) + { + if(bBtHsOn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + PAN(HS)\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_SCO; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + PAN(EDR)\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_PANEDR_HID; + } + } + } + else + { + if( pBtLinkInfo->bHidExist && + pBtLinkInfo->bA2dpExist ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + A2DP\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_HID_A2DP; + } + else if( pBtLinkInfo->bHidExist && + pBtLinkInfo->bPanExist ) + { + if(bBtHsOn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + PAN(HS)\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_HID_A2DP; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + PAN(EDR)\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_PANEDR_HID; + } + } + else if( pBtLinkInfo->bPanExist && + pBtLinkInfo->bA2dpExist ) + { + if(bBtHsOn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], A2DP + PAN(HS)\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_A2DP_PANHS; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], A2DP + PAN(EDR)\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_PANEDR_A2DP; + } + } + } + } + else if(numOfDiffProfile == 3) + { + if(pBtLinkInfo->bScoExist) + { + if( pBtLinkInfo->bHidExist && + pBtLinkInfo->bA2dpExist ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID + A2DP ==> HID\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_HID; + } + else if( pBtLinkInfo->bHidExist && + pBtLinkInfo->bPanExist ) + { + if(bBtHsOn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID + PAN(HS)\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_HID_A2DP; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID + PAN(EDR)\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_PANEDR_HID; + } + } + else if( pBtLinkInfo->bPanExist && + pBtLinkInfo->bA2dpExist ) + { + if(bBtHsOn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + A2DP + PAN(HS)\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_SCO; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + A2DP + PAN(EDR) ==> HID\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_PANEDR_HID; + } + } + } + else + { + if( pBtLinkInfo->bHidExist && + pBtLinkInfo->bPanExist && + pBtLinkInfo->bA2dpExist ) + { + if(bBtHsOn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + A2DP + PAN(HS)\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_HID_A2DP; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + A2DP + PAN(EDR)\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_HID_A2DP_PANEDR; + } + } + } + } + else if(numOfDiffProfile >= 3) + { + if(pBtLinkInfo->bScoExist) + { + if( pBtLinkInfo->bHidExist && + pBtLinkInfo->bPanExist && + pBtLinkInfo->bA2dpExist ) + { + if(bBtHsOn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Error!!! SCO + HID + A2DP + PAN(HS)\n")); + + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID + A2DP + PAN(EDR)==>PAN(EDR)+HID\n")); + algorithm = BT_8192E_1ANT_COEX_ALGO_PANEDR_HID; + } + } + } + } + + return algorithm; +} + +VOID +halbtc8192e1ant_SetFwDacSwingLevel( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte dacSwingLvl + ) +{ + u1Byte H2C_Parameter[1] ={0}; + + // There are several type of dacswing + // 0x18/ 0x10/ 0xc/ 0x8/ 0x4/ 0x6 + H2C_Parameter[0] = dacSwingLvl; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], Set Dac Swing Level=0x%x\n", dacSwingLvl)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], FW write 0x64=0x%x\n", H2C_Parameter[0])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x64, 1, H2C_Parameter); +} + +VOID +halbtc8192e1ant_SetFwDecBtPwr( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte decBtPwrLvl + ) +{ + u1Byte H2C_Parameter[1] ={0}; + + H2C_Parameter[0] = decBtPwrLvl; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], decrease Bt Power level = %d, FW write 0x62=0x%x\n", + decBtPwrLvl, H2C_Parameter[0])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x62, 1, H2C_Parameter); +} + +VOID +halbtc8192e1ant_DecBtPwr( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN u1Byte decBtPwrLvl + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s Dec BT power level = %d\n", + (bForceExec? "force to":""), decBtPwrLvl)); + pCoexDm->curBtDecPwrLvl = decBtPwrLvl; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], BtDecPwrLvl=%d, curBtDecPwrLvl=%d\n", + pCoexDm->preBtDecPwrLvl, pCoexDm->curBtDecPwrLvl)); + + if(pCoexDm->preBtDecPwrLvl == pCoexDm->curBtDecPwrLvl) + return; + } + halbtc8192e1ant_SetFwDecBtPwr(pBtCoexist, pCoexDm->curBtDecPwrLvl); + + pCoexDm->preBtDecPwrLvl = pCoexDm->curBtDecPwrLvl; +} + +VOID +halbtc8192e1ant_SetFwBtLnaConstrain( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bBtLnaConsOn + ) +{ + u1Byte H2C_Parameter[2] ={0}; + + H2C_Parameter[0] = 0x3; // opCode, 0x3=BT_SET_LNA_CONSTRAIN + + if(bBtLnaConsOn) + { + H2C_Parameter[1] |= BIT0; + } + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], set BT LNA Constrain: %s, FW write 0x69=0x%x\n", + (bBtLnaConsOn? "ON!!":"OFF!!"), + H2C_Parameter[0]<<8|H2C_Parameter[1])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x69, 2, H2C_Parameter); +} + +VOID +halbtc8192e1ant_SetBtLnaConstrain( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bBtLnaConsOn + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s BT Constrain = %s\n", + (bForceExec? "force":""), ((bBtLnaConsOn)? "ON":"OFF"))); + pCoexDm->bCurBtLnaConstrain = bBtLnaConsOn; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], bPreBtLnaConstrain=%d, bCurBtLnaConstrain=%d\n", + pCoexDm->bPreBtLnaConstrain, pCoexDm->bCurBtLnaConstrain)); + + if(pCoexDm->bPreBtLnaConstrain == pCoexDm->bCurBtLnaConstrain) + return; + } + halbtc8192e1ant_SetFwBtLnaConstrain(pBtCoexist, pCoexDm->bCurBtLnaConstrain); + + pCoexDm->bPreBtLnaConstrain = pCoexDm->bCurBtLnaConstrain; +} + +VOID +halbtc8192e1ant_SetFwBtPsdMode( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte btPsdMode + ) +{ + u1Byte H2C_Parameter[2] ={0}; + + H2C_Parameter[0] = 0x2; // opCode, 0x2=BT_SET_PSD_MODE + + H2C_Parameter[1] = btPsdMode; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], set BT PSD mode=0x%x, FW write 0x69=0x%x\n", + H2C_Parameter[1], + H2C_Parameter[0]<<8|H2C_Parameter[1])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x69, 2, H2C_Parameter); +} + + +VOID +halbtc8192e1ant_SetBtPsdMode( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN u1Byte btPsdMode + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s BT PSD mode = 0x%x\n", + (bForceExec? "force":""), btPsdMode)); + pCoexDm->bCurBtPsdMode = btPsdMode; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], bPreBtPsdMode=0x%x, bCurBtPsdMode=0x%x\n", + pCoexDm->bPreBtPsdMode, pCoexDm->bCurBtPsdMode)); + + if(pCoexDm->bPreBtPsdMode == pCoexDm->bCurBtPsdMode) + return; + } + halbtc8192e1ant_SetFwBtPsdMode(pBtCoexist, pCoexDm->bCurBtPsdMode); + + pCoexDm->bPreBtPsdMode = pCoexDm->bCurBtPsdMode; +} + + +VOID +halbtc8192e1ant_SetBtAutoReport( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bEnableAutoReport + ) +{ + u1Byte H2C_Parameter[1] ={0}; + + H2C_Parameter[0] = 0; + + if(bEnableAutoReport) + { + H2C_Parameter[0] |= BIT0; + } + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], BT FW auto report : %s, FW write 0x68=0x%x\n", + (bEnableAutoReport? "Enabled!!":"Disabled!!"), H2C_Parameter[0])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x68, 1, H2C_Parameter); +} + +VOID +halbtc8192e1ant_BtAutoReport( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bEnableAutoReport + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s BT Auto report = %s\n", + (bForceExec? "force to":""), ((bEnableAutoReport)? "Enabled":"Disabled"))); + pCoexDm->bCurBtAutoReport = bEnableAutoReport; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], bPreBtAutoReport=%d, bCurBtAutoReport=%d\n", + pCoexDm->bPreBtAutoReport, pCoexDm->bCurBtAutoReport)); + + if(pCoexDm->bPreBtAutoReport == pCoexDm->bCurBtAutoReport) + return; + } + halbtc8192e1ant_SetBtAutoReport(pBtCoexist, pCoexDm->bCurBtAutoReport); + + pCoexDm->bPreBtAutoReport = pCoexDm->bCurBtAutoReport; +} + +VOID +halbtc8192e1ant_FwDacSwingLvl( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN u1Byte fwDacSwingLvl + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s set FW Dac Swing level = %d\n", + (bForceExec? "force to":""), fwDacSwingLvl)); + pCoexDm->curFwDacSwingLvl = fwDacSwingLvl; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], preFwDacSwingLvl=%d, curFwDacSwingLvl=%d\n", + pCoexDm->preFwDacSwingLvl, pCoexDm->curFwDacSwingLvl)); + + if(pCoexDm->preFwDacSwingLvl == pCoexDm->curFwDacSwingLvl) + return; + } + + halbtc8192e1ant_SetFwDacSwingLevel(pBtCoexist, pCoexDm->curFwDacSwingLvl); + + pCoexDm->preFwDacSwingLvl = pCoexDm->curFwDacSwingLvl; +} + +VOID +halbtc8192e1ant_SetSwRfRxLpfCorner( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bRxRfShrinkOn + ) +{ + if(bRxRfShrinkOn) + { + //Shrink RF Rx LPF corner + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Shrink RF Rx LPF corner!!\n")); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x1e, 0xfffff, 0xf0ff7); + } + else + { + //Resume RF Rx LPF corner + // After initialized, we can use pCoexDm->btRf0x1eBackup + if(pBtCoexist->initilized) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Resume RF Rx LPF corner!!\n")); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x1e, 0xfffff, pCoexDm->btRf0x1eBackup); + } + } +} + +VOID +halbtc8192e1ant_RfShrink( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bRxRfShrinkOn + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s turn Rx RF Shrink = %s\n", + (bForceExec? "force to":""), ((bRxRfShrinkOn)? "ON":"OFF"))); + pCoexDm->bCurRfRxLpfShrink = bRxRfShrinkOn; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], bPreRfRxLpfShrink=%d, bCurRfRxLpfShrink=%d\n", + pCoexDm->bPreRfRxLpfShrink, pCoexDm->bCurRfRxLpfShrink)); + + if(pCoexDm->bPreRfRxLpfShrink == pCoexDm->bCurRfRxLpfShrink) + return; + } + halbtc8192e1ant_SetSwRfRxLpfCorner(pBtCoexist, pCoexDm->bCurRfRxLpfShrink); + + pCoexDm->bPreRfRxLpfShrink = pCoexDm->bCurRfRxLpfShrink; +} + +VOID +halbtc8192e1ant_SetSwPenaltyTxRateAdaptive( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bLowPenaltyRa + ) +{ + u1Byte tmpU1; + + tmpU1 = pBtCoexist->btc_read_1byte(pBtCoexist, 0x4fd); + tmpU1 |= BIT0; + if(bLowPenaltyRa) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Tx rate adaptive, set low penalty!!\n")); + tmpU1 &= ~BIT2; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Tx rate adaptive, set normal!!\n")); + tmpU1 |= BIT2; + } + + pBtCoexist->btc_write_1byte(pBtCoexist, 0x4fd, tmpU1); +} + +VOID +halbtc8192e1ant_LowPenaltyRa( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bLowPenaltyRa + ) +{ + return; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s turn LowPenaltyRA = %s\n", + (bForceExec? "force to":""), ((bLowPenaltyRa)? "ON":"OFF"))); + pCoexDm->bCurLowPenaltyRa = bLowPenaltyRa; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], bPreLowPenaltyRa=%d, bCurLowPenaltyRa=%d\n", + pCoexDm->bPreLowPenaltyRa, pCoexDm->bCurLowPenaltyRa)); + + if(pCoexDm->bPreLowPenaltyRa == pCoexDm->bCurLowPenaltyRa) + return; + } + halbtc8192e1ant_SetSwPenaltyTxRateAdaptive(pBtCoexist, pCoexDm->bCurLowPenaltyRa); + + pCoexDm->bPreLowPenaltyRa = pCoexDm->bCurLowPenaltyRa; +} + +VOID +halbtc8192e1ant_SetDacSwingReg( + IN PBTC_COEXIST pBtCoexist, + IN u4Byte level + ) +{ + u1Byte val=(u1Byte)level; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Write SwDacSwing = 0x%x\n", level)); + pBtCoexist->btc_write_1byte_bitmask(pBtCoexist, 0x883, 0x3e, val); +} + +VOID +halbtc8192e1ant_SetSwFullTimeDacSwing( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bSwDacSwingOn, + IN u4Byte swDacSwingLvl + ) +{ + if(bSwDacSwingOn) + { + halbtc8192e1ant_SetDacSwingReg(pBtCoexist, swDacSwingLvl); + } + else + { + halbtc8192e1ant_SetDacSwingReg(pBtCoexist, 0x18); + } +} + + +VOID +halbtc8192e1ant_DacSwing( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bDacSwingOn, + IN u4Byte dacSwingLvl + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s turn DacSwing=%s, dacSwingLvl=0x%x\n", + (bForceExec? "force to":""), ((bDacSwingOn)? "ON":"OFF"), dacSwingLvl)); + pCoexDm->bCurDacSwingOn = bDacSwingOn; + pCoexDm->curDacSwingLvl = dacSwingLvl; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], bPreDacSwingOn=%d, preDacSwingLvl=0x%x, bCurDacSwingOn=%d, curDacSwingLvl=0x%x\n", + pCoexDm->bPreDacSwingOn, pCoexDm->preDacSwingLvl, + pCoexDm->bCurDacSwingOn, pCoexDm->curDacSwingLvl)); + + if( (pCoexDm->bPreDacSwingOn == pCoexDm->bCurDacSwingOn) && + (pCoexDm->preDacSwingLvl == pCoexDm->curDacSwingLvl) ) + return; + } + mdelay(30); + halbtc8192e1ant_SetSwFullTimeDacSwing(pBtCoexist, bDacSwingOn, dacSwingLvl); + + pCoexDm->bPreDacSwingOn = pCoexDm->bCurDacSwingOn; + pCoexDm->preDacSwingLvl = pCoexDm->curDacSwingLvl; +} + +VOID +halbtc8192e1ant_SetAdcBackOff( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bAdcBackOff + ) +{ + if(bAdcBackOff) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], BB BackOff Level On!\n")); + pBtCoexist->btc_write_1byte_bitmask(pBtCoexist, 0x8db, 0x60, 0x3); + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], BB BackOff Level Off!\n")); + pBtCoexist->btc_write_1byte_bitmask(pBtCoexist, 0x8db, 0x60, 0x1); + } +} + +VOID +halbtc8192e1ant_AdcBackOff( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bAdcBackOff + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s turn AdcBackOff = %s\n", + (bForceExec? "force to":""), ((bAdcBackOff)? "ON":"OFF"))); + pCoexDm->bCurAdcBackOff = bAdcBackOff; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], bPreAdcBackOff=%d, bCurAdcBackOff=%d\n", + pCoexDm->bPreAdcBackOff, pCoexDm->bCurAdcBackOff)); + + if(pCoexDm->bPreAdcBackOff == pCoexDm->bCurAdcBackOff) + return; + } + halbtc8192e1ant_SetAdcBackOff(pBtCoexist, pCoexDm->bCurAdcBackOff); + + pCoexDm->bPreAdcBackOff = pCoexDm->bCurAdcBackOff; +} + +VOID +halbtc8192e1ant_SetAgcTable( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bAgcTableEn + ) +{ + u1Byte rssiAdjustVal=0; + + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0xef, 0xfffff, 0x02000); + if(bAgcTableEn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Agc Table On!\n")); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x3b, 0xfffff, 0x3fa58); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x3b, 0xfffff, 0x37a58); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x3b, 0xfffff, 0x2fa58); + rssiAdjustVal = 8; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Agc Table Off!\n")); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x3b, 0xfffff, 0x39258); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x3b, 0xfffff, 0x31258); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x3b, 0xfffff, 0x29258); + } + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0xef, 0xfffff, 0x0); + + // set rssiAdjustVal for wifi module. + pBtCoexist->btc_set(pBtCoexist, BTC_SET_U1_RSSI_ADJ_VAL_FOR_AGC_TABLE_ON, &rssiAdjustVal); +} + + +VOID +halbtc8192e1ant_AgcTable( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bAgcTableEn + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s %s Agc Table\n", + (bForceExec? "force to":""), ((bAgcTableEn)? "Enable":"Disable"))); + pCoexDm->bCurAgcTableEn = bAgcTableEn; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], bPreAgcTableEn=%d, bCurAgcTableEn=%d\n", + pCoexDm->bPreAgcTableEn, pCoexDm->bCurAgcTableEn)); + + if(pCoexDm->bPreAgcTableEn == pCoexDm->bCurAgcTableEn) + return; + } + halbtc8192e1ant_SetAgcTable(pBtCoexist, bAgcTableEn); + + pCoexDm->bPreAgcTableEn = pCoexDm->bCurAgcTableEn; +} + +VOID +halbtc8192e1ant_SetCoexTable( + IN PBTC_COEXIST pBtCoexist, + IN u4Byte val0x6c0, + IN u4Byte val0x6c4, + IN u4Byte val0x6c8, + IN u1Byte val0x6cc + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], set coex table, set 0x6c0=0x%x\n", val0x6c0)); + pBtCoexist->btc_write_4byte(pBtCoexist, 0x6c0, val0x6c0); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], set coex table, set 0x6c4=0x%x\n", val0x6c4)); + pBtCoexist->btc_write_4byte(pBtCoexist, 0x6c4, val0x6c4); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], set coex table, set 0x6c8=0x%x\n", val0x6c8)); + pBtCoexist->btc_write_4byte(pBtCoexist, 0x6c8, val0x6c8); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], set coex table, set 0x6cc=0x%x\n", val0x6cc)); + pBtCoexist->btc_write_1byte(pBtCoexist, 0x6cc, val0x6cc); +} + +VOID +halbtc8192e1ant_CoexTable( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN u4Byte val0x6c0, + IN u4Byte val0x6c4, + IN u4Byte val0x6c8, + IN u1Byte val0x6cc + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s write Coex Table 0x6c0=0x%x, 0x6c4=0x%x, 0x6c8=0x%x, 0x6cc=0x%x\n", + (bForceExec? "force to":""), val0x6c0, val0x6c4, val0x6c8, val0x6cc)); + pCoexDm->curVal0x6c0 = val0x6c0; + pCoexDm->curVal0x6c4 = val0x6c4; + pCoexDm->curVal0x6c8 = val0x6c8; + pCoexDm->curVal0x6cc = val0x6cc; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], preVal0x6c0=0x%x, preVal0x6c4=0x%x, preVal0x6c8=0x%x, preVal0x6cc=0x%x !!\n", + pCoexDm->preVal0x6c0, pCoexDm->preVal0x6c4, pCoexDm->preVal0x6c8, pCoexDm->preVal0x6cc)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], curVal0x6c0=0x%x, curVal0x6c4=0x%x, curVal0x6c8=0x%x, curVal0x6cc=0x%x !!\n", + pCoexDm->curVal0x6c0, pCoexDm->curVal0x6c4, pCoexDm->curVal0x6c8, pCoexDm->curVal0x6cc)); + + if( (pCoexDm->preVal0x6c0 == pCoexDm->curVal0x6c0) && + (pCoexDm->preVal0x6c4 == pCoexDm->curVal0x6c4) && + (pCoexDm->preVal0x6c8 == pCoexDm->curVal0x6c8) && + (pCoexDm->preVal0x6cc == pCoexDm->curVal0x6cc) ) + return; + } + halbtc8192e1ant_SetCoexTable(pBtCoexist, val0x6c0, val0x6c4, val0x6c8, val0x6cc); + + pCoexDm->preVal0x6c0 = pCoexDm->curVal0x6c0; + pCoexDm->preVal0x6c4 = pCoexDm->curVal0x6c4; + pCoexDm->preVal0x6c8 = pCoexDm->curVal0x6c8; + pCoexDm->preVal0x6cc = pCoexDm->curVal0x6cc; +} + +VOID +halbtc8192e1ant_CoexTableWithType( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN u1Byte type + ) +{ + switch(type) + { + case 0: + halbtc8192e1ant_CoexTable(pBtCoexist, bForceExec, 0x55555555, 0x55555555, 0xffffff, 0x3); + break; + case 1: + halbtc8192e1ant_CoexTable(pBtCoexist, bForceExec, 0x55555555, 0x5a5a5a5a, 0xffffff, 0x3); + break; + case 2: + halbtc8192e1ant_CoexTable(pBtCoexist, bForceExec, 0x5a5a5a5a, 0x5a5a5a5a, 0xffffff, 0x3); + break; + case 3: + halbtc8192e1ant_CoexTable(pBtCoexist, bForceExec, 0xaaaaaaaa, 0xaaaaaaaa, 0xffffff, 0x3); + break; + case 4: + halbtc8192e1ant_CoexTable(pBtCoexist, bForceExec, 0xffffffff, 0xffffffff, 0xffffff, 0x3); + break; + case 5: + halbtc8192e1ant_CoexTable(pBtCoexist, bForceExec, 0x5fff5fff, 0x5fff5fff, 0xffffff, 0x3); + break; + case 6: + halbtc8192e1ant_CoexTable(pBtCoexist, bForceExec, 0x55ff55ff, 0x5a5a5a5a, 0xffffff, 0x3); + break; + case 7: + halbtc8192e1ant_CoexTable(pBtCoexist, bForceExec, 0xddffddff, 0xddffddff, 0xffffff, 0x3); + break; + case 8: + halbtc8192e1ant_CoexTable(pBtCoexist, bForceExec, 0x55ff55ff, 0x5afa5afa, 0xffffff, 0x3); + break; + case 9: + halbtc8192e1ant_CoexTable(pBtCoexist, bForceExec, 0x5f5f5f5f, 0x5f5f5f5f, 0xffffff, 0x3); + break; + default: + break; + } +} + +VOID +halbtc8192e1ant_SetFwIgnoreWlanAct( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bEnable + ) +{ + u1Byte H2C_Parameter[1] ={0}; + + if(bEnable) + { + H2C_Parameter[0] |= BIT0; // function enable + } + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], set FW for BT Ignore Wlan_Act, FW write 0x63=0x%x\n", + H2C_Parameter[0])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x63, 1, H2C_Parameter); +} + +VOID +halbtc8192e1ant_IgnoreWlanAct( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bEnable + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s turn Ignore WlanAct %s\n", + (bForceExec? "force to":""), (bEnable? "ON":"OFF"))); + pCoexDm->bCurIgnoreWlanAct = bEnable; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], bPreIgnoreWlanAct = %d, bCurIgnoreWlanAct = %d!!\n", + pCoexDm->bPreIgnoreWlanAct, pCoexDm->bCurIgnoreWlanAct)); + + if(pCoexDm->bPreIgnoreWlanAct == pCoexDm->bCurIgnoreWlanAct) + return; + } + halbtc8192e1ant_SetFwIgnoreWlanAct(pBtCoexist, bEnable); + + pCoexDm->bPreIgnoreWlanAct = pCoexDm->bCurIgnoreWlanAct; +} + +VOID +halbtc8192e1ant_SetFwPstdma( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte byte1, + IN u1Byte byte2, + IN u1Byte byte3, + IN u1Byte byte4, + IN u1Byte byte5 + ) +{ + u1Byte H2C_Parameter[5] ={0}; + + H2C_Parameter[0] = byte1; + H2C_Parameter[1] = byte2; + H2C_Parameter[2] = byte3; + H2C_Parameter[3] = byte4; + H2C_Parameter[4] = byte5; + + pCoexDm->psTdmaPara[0] = byte1; + pCoexDm->psTdmaPara[1] = byte2; + pCoexDm->psTdmaPara[2] = byte3; + pCoexDm->psTdmaPara[3] = byte4; + pCoexDm->psTdmaPara[4] = byte5; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], FW write 0x60(5bytes)=0x%x%08x\n", + H2C_Parameter[0], + H2C_Parameter[1]<<24|H2C_Parameter[2]<<16|H2C_Parameter[3]<<8|H2C_Parameter[4])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x60, 5, H2C_Parameter); +} + +VOID +halbtc8192e1ant_SetLpsRpwm( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte lpsVal, + IN u1Byte rpwmVal + ) +{ + u1Byte lps=lpsVal; + u1Byte rpwm=rpwmVal; + + pBtCoexist->btc_set(pBtCoexist, BTC_SET_U1_1ANT_LPS, &lps); + pBtCoexist->btc_set(pBtCoexist, BTC_SET_U1_1ANT_RPWM, &rpwm); +} + +VOID +halbtc8192e1ant_LpsRpwm( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN u1Byte lpsVal, + IN u1Byte rpwmVal + ) +{ + BOOLEAN bForceExecPwrCmd=FALSE; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s set lps/rpwm=0x%x/0x%x \n", + (bForceExec? "force to":""), lpsVal, rpwmVal)); + pCoexDm->curLps = lpsVal; + pCoexDm->curRpwm = rpwmVal; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], preLps/curLps=0x%x/0x%x, preRpwm/curRpwm=0x%x/0x%x!!\n", + pCoexDm->preLps, pCoexDm->curLps, pCoexDm->preRpwm, pCoexDm->curRpwm)); + + if( (pCoexDm->preLps == pCoexDm->curLps) && + (pCoexDm->preRpwm == pCoexDm->curRpwm) ) + { + return; + } + } + halbtc8192e1ant_SetLpsRpwm(pBtCoexist, lpsVal, rpwmVal); + + pCoexDm->preLps = pCoexDm->curLps; + pCoexDm->preRpwm = pCoexDm->curRpwm; +} + +VOID +halbtc8192e1ant_SwMechanism1( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bShrinkRxLPF, + IN BOOLEAN bLowPenaltyRA, + IN BOOLEAN limited_dig, + IN BOOLEAN bBTLNAConstrain + ) +{ + //halbtc8192e1ant_RfShrink(pBtCoexist, NORMAL_EXEC, bShrinkRxLPF); + //halbtc8192e1ant_LowPenaltyRa(pBtCoexist, NORMAL_EXEC, bLowPenaltyRA); + + //no limited DIG + //halbtc8192e1ant_SetBtLnaConstrain(pBtCoexist, NORMAL_EXEC, bBTLNAConstrain); +} + +VOID +halbtc8192e1ant_SwMechanism2( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bAGCTableShift, + IN BOOLEAN bADCBackOff, + IN BOOLEAN bSWDACSwing, + IN u4Byte dacSwingLvl + ) +{ + //halbtc8192e1ant_AgcTable(pBtCoexist, NORMAL_EXEC, bAGCTableShift); + //halbtc8192e1ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, bADCBackOff); + //halbtc8192e1ant_DacSwing(pBtCoexist, NORMAL_EXEC, bSWDACSwing, dacSwingLvl); +} + +VOID +halbtc8192e1ant_PsTdma( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bTurnOn, + IN u1Byte type + ) +{ + BOOLEAN bTurnOnByCnt=FALSE; + u1Byte psTdmaTypeByCnt=0, rssiAdjustVal=0; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s turn %s PS TDMA, type=%d\n", + (bForceExec? "force to":""), (bTurnOn? "ON":"OFF"), type)); + pCoexDm->bCurPsTdmaOn = bTurnOn; + pCoexDm->curPsTdma = type; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], bPrePsTdmaOn = %d, bCurPsTdmaOn = %d!!\n", + pCoexDm->bPrePsTdmaOn, pCoexDm->bCurPsTdmaOn)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], prePsTdma = %d, curPsTdma = %d!!\n", + pCoexDm->prePsTdma, pCoexDm->curPsTdma)); + + if( (pCoexDm->bPrePsTdmaOn == pCoexDm->bCurPsTdmaOn) && + (pCoexDm->prePsTdma == pCoexDm->curPsTdma) ) + return; + } + if(bTurnOn) + { + switch(type) + { + default: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x53, 0x2c, 0x03, 0x10, 0x50); + break; + case 1: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x53, 0x2c, 0x03, 0x10, 0x50); + rssiAdjustVal = 11; + break; + case 2: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x53, 0x25, 0x03, 0x10, 0x50); + rssiAdjustVal = 14; + break; + case 3: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x93, 0x25, 0x3, 0x10, 0x40); + break; + case 4: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x93, 0x15, 0x3, 0x14, 0x0); + rssiAdjustVal = 17; + break; + case 5: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x61, 0x15, 0x3, 0x31, 0x0); + break; + case 6: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x13, 0xa, 0x3, 0x0, 0x0); + break; + case 7: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x13, 0xc, 0x5, 0x0, 0x0); + break; + case 8: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x93, 0x25, 0x3, 0x10, 0x0); + break; + case 9: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x53, 0x1e, 0x03, 0x10, 0x50); + rssiAdjustVal = 18; + break; + case 10: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x13, 0xa, 0xa, 0x0, 0x40); + break; + case 11: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x53, 0x12, 0x03, 0x10, 0x50); + rssiAdjustVal = 20; + break; + case 12: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0xeb, 0xa, 0x3, 0x31, 0x18); + break; + + case 15: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x13, 0xa, 0x3, 0x8, 0x0); + break; + case 16: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x93, 0x15, 0x3, 0x10, 0x0); + rssiAdjustVal = 18; + break; + + case 18: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x93, 0x25, 0x3, 0x10, 0x0); + rssiAdjustVal = 14; + break; + + case 20: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x13, 0x25, 0x25, 0x0, 0x0); + break; + case 21: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x93, 0x20, 0x3, 0x10, 0x40); + break; + case 22: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x13, 0x8, 0x8, 0x0, 0x40); + break; + case 23: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0xe3, 0x25, 0x3, 0x31, 0x18); + rssiAdjustVal = 22; + break; + case 24: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0xe3, 0x15, 0x3, 0x31, 0x18); + rssiAdjustVal = 22; + break; + case 25: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0xe3, 0xa, 0x3, 0x31, 0x18); + rssiAdjustVal = 22; + break; + case 26: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0xe3, 0xa, 0x3, 0x31, 0x18); + rssiAdjustVal = 22; + break; + case 27: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0xe3, 0x25, 0x3, 0x31, 0x98); + rssiAdjustVal = 22; + break; + case 28: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x69, 0x25, 0x3, 0x31, 0x0); + break; + case 29: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0xab, 0x1a, 0x1a, 0x1, 0x10); + break; + case 30: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x93, 0x15, 0x3, 0x14, 0x0); + break; + case 31: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0xd3, 0x1a, 0x1a, 0, 0x58); + break; + case 32: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0xab, 0xa, 0x3, 0x31, 0x90); + break; + case 33: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0xa3, 0x25, 0x3, 0x30, 0x90); + break; + case 34: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0xd3, 0x1a, 0x1a, 0x0, 0x10); + break; + case 35: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0xe3, 0x1a, 0x1a, 0x0, 0x10); + break; + case 36: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0xd3, 0x12, 0x3, 0x14, 0x50); + break; + case 37: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x53, 0x25, 0x3, 0x10, 0x50); + break; + case 38: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0xe3, 0x12, 0x12, 0xe1, 0x90); + break; + } + } + else + { + // disable PS tdma + switch(type) + { + case 8: //0x778 = 1, ant2PTA + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x8, 0x0, 0x0, 0x0, 0x0); + pBtCoexist->btc_write_1byte(pBtCoexist, 0x92c, 0x4); + break; + case 0: //0x778 = 1, ant2BT + default: + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x0, 0x0, 0x0, 0x0, 0x0); + mdelay(5); + pBtCoexist->btc_write_1byte(pBtCoexist, 0x92c, 0x20); + break; + case 9: //0x778 = 1, ant2WIFI + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x0, 0x0, 0x0, 0x0, 0x0); + pBtCoexist->btc_write_1byte(pBtCoexist, 0x92c, 0x4); + break; + case 10: //0x778 = 3, ant2BT + halbtc8192e1ant_SetFwPstdma(pBtCoexist, 0x0, 0x0, 0x0, 0x8, 0x0); + mdelay(5); + pBtCoexist->btc_write_1byte(pBtCoexist, 0x92c, 0x20); + break; + } + } + rssiAdjustVal =0; + pBtCoexist->btc_set(pBtCoexist, BTC_SET_U1_RSSI_ADJ_VAL_FOR_1ANT_COEX_TYPE, &rssiAdjustVal); + + // update pre state + pCoexDm->bPrePsTdmaOn = pCoexDm->bCurPsTdmaOn; + pCoexDm->prePsTdma = pCoexDm->curPsTdma; +} + +VOID +halbtc8192e1ant_SetSwitchSsType( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte ssType + ) +{ + u1Byte mimoPs=BTC_MIMO_PS_DYNAMIC; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], REAL set SS Type = %d\n", ssType)); + + if(ssType == 1) + { + halbtc8192e1ant_Updatera_mask(pBtCoexist, FORCE_EXEC, BTC_RATE_DISABLE, 0xfff00000); // disable 2ss + halbtc8192e1ant_PsTdma(pBtCoexist, FORCE_EXEC, FALSE, 0); + // switch ofdm path + pBtCoexist->btc_write_1byte(pBtCoexist, 0xc04, 0x11); + pBtCoexist->btc_write_1byte(pBtCoexist, 0xd04, 0x1); + pBtCoexist->btc_write_4byte(pBtCoexist, 0x90c, 0x81111111); + // switch cck patch + pBtCoexist->btc_write_1byte_bitmask(pBtCoexist, 0xe77, 0x4, 0x1); + pBtCoexist->btc_write_1byte(pBtCoexist, 0xa07, 0x81); + mimoPs=BTC_MIMO_PS_STATIC; + } + else if(ssType == 2) + { + halbtc8192e1ant_Updatera_mask(pBtCoexist, FORCE_EXEC, BTC_RATE_ENABLE, 0xfff00000); // enable 2ss + halbtc8192e1ant_PsTdma(pBtCoexist, FORCE_EXEC, FALSE, 8); + pBtCoexist->btc_write_1byte(pBtCoexist, 0xc04, 0x33); + pBtCoexist->btc_write_1byte(pBtCoexist, 0xd04, 0x3); + pBtCoexist->btc_write_4byte(pBtCoexist, 0x90c, 0x81121313); + pBtCoexist->btc_write_1byte_bitmask(pBtCoexist, 0xe77, 0x4, 0x0); + pBtCoexist->btc_write_1byte(pBtCoexist, 0xa07, 0x41); + mimoPs=BTC_MIMO_PS_DYNAMIC; + } + + pBtCoexist->btc_set(pBtCoexist, BTC_SET_ACT_SEND_MIMO_PS, &mimoPs); // set rx 1ss or 2ss +} + +VOID +halbtc8192e1ant_SwitchSsType( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN u1Byte newSsType + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], %s Switch SS Type = %d\n", + (bForceExec? "force to":""), newSsType)); + pCoexDm->curSsType = newSsType; + + if(!bForceExec) + { + if(pCoexDm->preSsType == pCoexDm->curSsType) + return; + } + halbtc8192e1ant_SetSwitchSsType(pBtCoexist, pCoexDm->curSsType); + + pCoexDm->preSsType = pCoexDm->curSsType; +} + +VOID +halbtc8192e1ant_CoexAllOff( + IN PBTC_COEXIST pBtCoexist + ) +{ + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + + // sw all off + halbtc8192e1ant_SwMechanism1(pBtCoexist,FALSE,FALSE,FALSE,FALSE); + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + + + // hw all off + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 0); +} + +BOOLEAN +halbtc8192e1ant_IsCommonAction( + IN PBTC_COEXIST pBtCoexist + ) +{ + BOOLEAN bCommon=FALSE, bWifiConnected=FALSE, bWifiBusy=FALSE; + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_BUSY, &bWifiBusy); + + if(!bWifiConnected && + BT_8192E_1ANT_BT_STATUS_NON_CONNECTED_IDLE == pCoexDm->btStatus) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi non connected-idle + BT non connected-idle!!\n")); + halbtc8192e1ant_SwMechanism1(pBtCoexist,FALSE,FALSE,FALSE,FALSE); + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + + bCommon = true; + } + else if(bWifiConnected && + (BT_8192E_1ANT_BT_STATUS_NON_CONNECTED_IDLE == pCoexDm->btStatus) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi connected + BT non connected-idle!!\n")); + halbtc8192e1ant_SwMechanism1(pBtCoexist,FALSE,FALSE,FALSE,FALSE); + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + + bCommon = true; + } + else if(!bWifiConnected && + (BT_8192E_1ANT_BT_STATUS_CONNECTED_IDLE == pCoexDm->btStatus) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi non connected-idle + BT connected-idle!!\n")); + halbtc8192e1ant_SwMechanism1(pBtCoexist,FALSE,FALSE,FALSE,FALSE); + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + + bCommon = true; + } + else if(bWifiConnected && + (BT_8192E_1ANT_BT_STATUS_CONNECTED_IDLE == pCoexDm->btStatus) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi connected + BT connected-idle!!\n")); + halbtc8192e1ant_SwMechanism1(pBtCoexist,true,true,true,true); + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + + bCommon = true; + } + else if(!bWifiConnected && + (BT_8192E_1ANT_BT_STATUS_CONNECTED_IDLE != pCoexDm->btStatus) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi non connected-idle + BT Busy!!\n")); + halbtc8192e1ant_SwMechanism1(pBtCoexist,FALSE,FALSE,FALSE,FALSE); + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + + bCommon = true; + } + else + { + halbtc8192e1ant_SwMechanism1(pBtCoexist,true,true,true,true); + + bCommon = FALSE; + } + + return bCommon; +} + + +VOID +halbtc8192e1ant_TdmaDurationAdjustForAcl( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte wifiStatus + ) +{ + static s4Byte up,dn,m,n,WaitCount; + s4Byte result; //0: no change, +1: increase WiFi duration, -1: decrease WiFi duration + u1Byte retryCount=0, btInfoExt; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], TdmaDurationAdjustForAcl()\n")); + + if( (BT_8192E_1ANT_WIFI_STATUS_NON_CONNECTED_ASSO_AUTH_SCAN == wifiStatus) || + (BT_8192E_1ANT_WIFI_STATUS_CONNECTED_SCAN == wifiStatus) || + (BT_8192E_1ANT_WIFI_STATUS_CONNECTED_SPECIAL_PKT == wifiStatus) ) + { + if( pCoexDm->curPsTdma != 1 && + pCoexDm->curPsTdma != 2 && + pCoexDm->curPsTdma != 3 && + pCoexDm->curPsTdma != 9 ) + { + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 9); + pCoexDm->psTdmaDuAdjType = 9; + + up = 0; + dn = 0; + m = 1; + n= 3; + result = 0; + WaitCount = 0; + } + return; + } + + if(!pCoexDm->bAutoTdmaAdjust) + { + pCoexDm->bAutoTdmaAdjust = true; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], first run TdmaDurationAdjust()!!\n")); + + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + pCoexDm->psTdmaDuAdjType = 2; + //============ + up = 0; + dn = 0; + m = 1; + n= 3; + result = 0; + WaitCount = 0; + } + else + { + //accquire the BT TRx retry count from BT_Info byte2 + retryCount = pCoexSta->btRetryCnt; + btInfoExt = pCoexSta->btInfoExt; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], retryCount = %d\n", retryCount)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], up=%d, dn=%d, m=%d, n=%d, WaitCount=%d\n", + up, dn, m, n, WaitCount)); + result = 0; + WaitCount++; + + if(retryCount == 0) // no retry in the last 2-second duration + { + up++; + dn--; + + if (dn <= 0) + dn = 0; + + if(up >= n) // if s n 2 retry count0, hռeWiFi duration + { + WaitCount = 0; + n = 3; + up = 0; + dn = 0; + result = 1; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], Increase wifi duration!!\n")); + } + } + else if (retryCount <= 3) // <=3 retry in the last 2-second duration + { + up--; + dn++; + + if (up <= 0) + up = 0; + + if (dn == 2) // if s 2 2 retry count< 3, hկWiFi duration + { + if (WaitCount <= 2) + m++; // קK@blevelӦ^ + else + m = 1; + + if ( m >= 20) //m ̤j = 20 ' ̤j120 recheckO_վ WiFi duration. + m = 20; + + n = 3*m; + up = 0; + dn = 0; + WaitCount = 0; + result = -1; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], Decrease wifi duration for retryCounter<3!!\n")); + } + } + else //retry count > 3, un1 retry count > 3, hկWiFi duration + { + if (WaitCount == 1) + m++; // קK@blevelӦ^ + else + m = 1; + + if ( m >= 20) //m ̤j = 20 ' ̤j120 recheckO_վ WiFi duration. + m = 20; + + n = 3*m; + up = 0; + dn = 0; + WaitCount = 0; + result = -1; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], Decrease wifi duration for retryCounter>3!!\n")); + } + + if(result == -1) + { + if( (BT_INFO_8192E_1ANT_A2DP_BASIC_RATE(btInfoExt)) && + ((pCoexDm->curPsTdma == 1) ||(pCoexDm->curPsTdma == 2)) ) + { + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 9); + pCoexDm->psTdmaDuAdjType = 9; + } + else if(pCoexDm->curPsTdma == 1) + { + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + pCoexDm->psTdmaDuAdjType = 2; + } + else if(pCoexDm->curPsTdma == 2) + { + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 9); + pCoexDm->psTdmaDuAdjType = 9; + } + else if(pCoexDm->curPsTdma == 9) + { + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + } + else if(result == 1) + { + if( (BT_INFO_8192E_1ANT_A2DP_BASIC_RATE(btInfoExt)) && + ((pCoexDm->curPsTdma == 1) ||(pCoexDm->curPsTdma == 2)) ) + { + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 9); + pCoexDm->psTdmaDuAdjType = 9; + } + else if(pCoexDm->curPsTdma == 11) + { + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 9); + pCoexDm->psTdmaDuAdjType = 9; + } + else if(pCoexDm->curPsTdma == 9) + { + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + pCoexDm->psTdmaDuAdjType = 2; + } + else if(pCoexDm->curPsTdma == 2) + { + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 1); + pCoexDm->psTdmaDuAdjType = 1; + } + } + + if( pCoexDm->curPsTdma != 1 && + pCoexDm->curPsTdma != 2 && + pCoexDm->curPsTdma != 9 && + pCoexDm->curPsTdma != 11 ) + { + // recover to previous adjust type + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, pCoexDm->psTdmaDuAdjType); + } + } +} + +u1Byte +halbtc8192e1ant_PsTdmaTypeByWifiRssi( + IN s4Byte wifiRssi, + IN s4Byte preWifiRssi, + IN u1Byte wifiRssiThresh + ) +{ + u1Byte psTdmaType=0; + + if(wifiRssi > preWifiRssi) + { + if(wifiRssi > (wifiRssiThresh+5)) + { + psTdmaType = 26; + } + else + { + psTdmaType = 25; + } + } + else + { + if(wifiRssi > wifiRssiThresh) + { + psTdmaType = 26; + } + else + { + psTdmaType = 25; + } + } + + return psTdmaType; +} + +VOID +halbtc8192e1ant_PsTdmaCheckForPowerSaveState( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bNewPsState + ) +{ + u1Byte lpsMode=0x0; + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U1_LPS_MODE, &lpsMode); + + if(lpsMode) // already under LPS state + { + if(bNewPsState) + { + // keep state under LPS, do nothing. + } + else + { + // will leave LPS state, turn off psTdma first + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + } + } + else // NO PS state + { + if(bNewPsState) + { + // will enter LPS state, turn off psTdma first + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + } + else + { + // keep state under NO PS state, do nothing. + } + } +} + +VOID +halbtc8192e1ant_PowerSaveState( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte psType, + IN u1Byte lpsVal, + IN u1Byte rpwmVal + ) +{ + BOOLEAN bLowPwrDisable=FALSE; + + switch(psType) + { + case BTC_PS_WIFI_NATIVE: + // recover to original 32k low power setting + bLowPwrDisable = FALSE; + pBtCoexist->btc_set(pBtCoexist, BTC_SET_ACT_DISABLE_LOW_POWER, &bLowPwrDisable); + pBtCoexist->btc_set(pBtCoexist, BTC_SET_ACT_NORMAL_LPS, NULL); + break; + case BTC_PS_LPS_ON: + halbtc8192e1ant_PsTdmaCheckForPowerSaveState(pBtCoexist, true); + halbtc8192e1ant_LpsRpwm(pBtCoexist, NORMAL_EXEC, lpsVal, rpwmVal); + // when coex force to enter LPS, do not enter 32k low power. + bLowPwrDisable = true; + pBtCoexist->btc_set(pBtCoexist, BTC_SET_ACT_DISABLE_LOW_POWER, &bLowPwrDisable); + // power save must executed before psTdma. + pBtCoexist->btc_set(pBtCoexist, BTC_SET_ACT_ENTER_LPS, NULL); + break; + case BTC_PS_LPS_OFF: + halbtc8192e1ant_PsTdmaCheckForPowerSaveState(pBtCoexist, FALSE); + pBtCoexist->btc_set(pBtCoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + break; + default: + break; + } +} + + +VOID +halbtc8192e1ant_ActionWifiOnly( + IN PBTC_COEXIST pBtCoexist + ) +{ + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 0); + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 9); +} + +VOID +halbtc8192e1ant_MonitorBtEnableDisable( + IN PBTC_COEXIST pBtCoexist + ) +{ + static BOOLEAN bPreBtDisabled=FALSE; + static u4Byte btDisableCnt=0; + BOOLEAN bBtActive=true, bBtDisabled=FALSE; + + // This function check if bt is disabled + + if( pCoexSta->highPriorityTx == 0 && + pCoexSta->highPriorityRx == 0 && + pCoexSta->lowPriorityTx == 0 && + pCoexSta->lowPriorityRx == 0) + { + bBtActive = FALSE; + } + if( pCoexSta->highPriorityTx == 0xffff && + pCoexSta->highPriorityRx == 0xffff && + pCoexSta->lowPriorityTx == 0xffff && + pCoexSta->lowPriorityRx == 0xffff) + { + bBtActive = FALSE; + } + if(bBtActive) + { + btDisableCnt = 0; + bBtDisabled = FALSE; + pBtCoexist->btc_set(pBtCoexist, BTC_SET_BL_BT_DISABLE, &bBtDisabled); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], BT is enabled !!\n")); + } + else + { + btDisableCnt++; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], bt all counters=0, %d times!!\n", + btDisableCnt)); + if(btDisableCnt >= 2) + { + bBtDisabled = true; + pBtCoexist->btc_set(pBtCoexist, BTC_SET_BL_BT_DISABLE, &bBtDisabled); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], BT is disabled !!\n")); + halbtc8192e1ant_ActionWifiOnly(pBtCoexist); + } + } + if(bPreBtDisabled != bBtDisabled) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], BT is from %s to %s!!\n", + (bPreBtDisabled ? "disabled":"enabled"), + (bBtDisabled ? "disabled":"enabled"))); + bPreBtDisabled = bBtDisabled; + if(!bBtDisabled) + { + } + else + { + pBtCoexist->btc_set(pBtCoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + pBtCoexist->btc_set(pBtCoexist, BTC_SET_ACT_NORMAL_LPS, NULL); + } + } +} + +//============================================= +// +// Software Coex Mechanism start +// +//============================================= + +// SCO only or SCO+PAN(HS) +VOID +halbtc8192e1ant_ActionSco( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState; + u4Byte wifiBw; + + wifiRssiState = halbtc8192e1ant_WifiRssiState(pBtCoexist, 0, 2, 25, 0); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + + if(BTC_WIFI_BW_HT40 == wifiBw) + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,true,FALSE,0x18); + } + } + else + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + } + } +} + + +VOID +halbtc8192e1ant_ActionHid( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState; + u4Byte wifiBw; + + wifiRssiState = halbtc8192e1ant_WifiRssiState(pBtCoexist, 0, 2, 25, 0); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + + if(BTC_WIFI_BW_HT40 == wifiBw) + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,FALSE,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + } + } + else + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + } + } +} + +//A2DP only / PAN(EDR) only/ A2DP+PAN(HS) +VOID +halbtc8192e1ant_ActionA2dp( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState; + u4Byte wifiBw; + + wifiRssiState = halbtc8192e1ant_WifiRssiState(pBtCoexist, 0, 2, 25, 0); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + + if(BTC_WIFI_BW_HT40 == wifiBw) + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,true,FALSE,0x18); + } + } + else + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + } + } +} + +VOID +halbtc8192e1ant_ActionA2dpPanHs( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState, btInfoExt; + u4Byte wifiBw; + + btInfoExt = pCoexSta->btInfoExt; + wifiRssiState = halbtc8192e1ant_WifiRssiState(pBtCoexist, 0, 2, 25, 0); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + + if(BTC_WIFI_BW_HT40 == wifiBw) + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,true,FALSE,0x18); + } + } + else + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + } + } +} + +VOID +halbtc8192e1ant_ActionPanEdr( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState; + u4Byte wifiBw; + + wifiRssiState = halbtc8192e1ant_WifiRssiState(pBtCoexist, 0, 2, 25, 0); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + + if(BTC_WIFI_BW_HT40 == wifiBw) + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,true,FALSE,0x18); + } + } + else + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + } + } +} + + +//PAN(HS) only +VOID +halbtc8192e1ant_ActionPanHs( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState; + u4Byte wifiBw; + + wifiRssiState = halbtc8192e1ant_WifiRssiState(pBtCoexist, 0, 2, 25, 0); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + + if(BTC_WIFI_BW_HT40 == wifiBw) + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,true,FALSE,0x18); + } + } + else + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + } + } +} + +//PAN(EDR)+A2DP +VOID +halbtc8192e1ant_ActionPanEdrA2dp( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState, btInfoExt; + u4Byte wifiBw; + + btInfoExt = pCoexSta->btInfoExt; + wifiRssiState = halbtc8192e1ant_WifiRssiState(pBtCoexist, 0, 2, 25, 0); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + + if(BTC_WIFI_BW_HT40 == wifiBw) + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,true,FALSE,0x18); + } + } + else + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + } + } +} + +VOID +halbtc8192e1ant_ActionPanEdrHid( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState; + u4Byte wifiBw; + + wifiRssiState = halbtc8192e1ant_WifiRssiState(pBtCoexist, 0, 2, 25, 0); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + + if(BTC_WIFI_BW_HT40 == wifiBw) + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,true,FALSE,0x18); + } + } + else + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + } + } +} + +// HID+A2DP+PAN(EDR) +VOID +halbtc8192e1ant_ActionHidA2dpPanEdr( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState, btInfoExt; + u4Byte wifiBw; + + btInfoExt = pCoexSta->btInfoExt; + wifiRssiState = halbtc8192e1ant_WifiRssiState(pBtCoexist, 0, 2, 25, 0); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + + if(BTC_WIFI_BW_HT40 == wifiBw) + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,true,FALSE,0x18); + } + } + else + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + } + } +} + +VOID +halbtc8192e1ant_ActionHidA2dp( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState, btInfoExt; + u4Byte wifiBw; + + btInfoExt = pCoexSta->btInfoExt; + wifiRssiState = halbtc8192e1ant_WifiRssiState(pBtCoexist, 0, 2, 25, 0); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + + if(BTC_WIFI_BW_HT40 == wifiBw) + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,true,FALSE,0x18); + } + } + else + { + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,true,true,FALSE,0x18); + } + else + { + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + } + } +} + +//============================================= +// +// Non-Software Coex Mechanism start +// +//============================================= +VOID +halbtc8192e1ant_ActionBtInquiry( + IN PBTC_COEXIST pBtCoexist + ) +{ + PBTC_BT_LINK_INFO pBtLinkInfo=&pBtCoexist->bt_link_info; + BOOLEAN bWifiConnected=FALSE, bBtHsOn=FALSE; + + // Note: + // Do not do DacSwing here, use original setting. + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn); + if(bBtHsOn) + return; + + if(!bWifiConnected) + { + halbtc8192e1ant_PowerSaveState(pBtCoexist, BTC_PS_WIFI_NATIVE, 0x0, 0x0); + + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 8); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 0); + } + else if( (pBtLinkInfo->bScoExist) || + (pBtLinkInfo->bHidOnly) ) + { + // SCO/HID-only busy + halbtc8192e1ant_PowerSaveState(pBtCoexist, BTC_PS_WIFI_NATIVE, 0x0, 0x0); + + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 32); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 1); + } + else + { + halbtc8192e1ant_PowerSaveState(pBtCoexist, BTC_PS_LPS_ON, 0x50, 0x0); + + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 30); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 0); + } +} + +VOID +halbtc8192e1ant_ActionBtScoHidOnlyBusy( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte wifiStatus + ) +{ + PBTC_BT_LINK_INFO pBtLinkInfo=&pBtCoexist->bt_link_info; + u1Byte btRssiState=BTC_RSSI_STATE_HIGH; + + if(BT_8192E_1ANT_WIFI_STATUS_NON_CONNECTED_ASSO_AUTH_SCAN == wifiStatus) + { + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + halbtc8192e1ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0); + + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 8); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 0); + } + else + { + if(pBtLinkInfo->bHidOnly) + { + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + halbtc8192e1ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0); + + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 8); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 2); + } + else + { + // dec bt power for diff level + btRssiState = halbtc8192e1ant_BtRssiState(3, 34, 42); + if( (btRssiState == BTC_RSSI_STATE_LOW) || + (btRssiState == BTC_RSSI_STATE_STAY_LOW) ) + { + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + } + else if( (btRssiState == BTC_RSSI_STATE_MEDIUM) || + (btRssiState == BTC_RSSI_STATE_STAY_MEDIUM) ) + { + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 2); + } + else if( (btRssiState == BTC_RSSI_STATE_HIGH) || + (btRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 6); + } + + // sw dacSwing + halbtc8192e1ant_DacSwing(pBtCoexist, NORMAL_EXEC, true, 0xc); + + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 7); + } + } +} + +VOID +halbtc8192e1ant_ActionHs( + IN PBTC_COEXIST pBtCoexist + ) +{ + PBTC_BT_LINK_INFO pBtLinkInfo=&pBtCoexist->bt_link_info; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action for HS!!!\n")); + + halbtc8192e1ant_PowerSaveState(pBtCoexist, BTC_PS_WIFI_NATIVE, 0x0, 0x0); + + if(BT_8192E_1ANT_BT_STATUS_NON_CONNECTED_IDLE == pCoexDm->btStatus) + { + // error, should not be here + pCoexDm->errorCondition = 1; + } + else if(BT_8192E_1ANT_BT_STATUS_CONNECTED_IDLE == pCoexDm->btStatus) + { + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + halbtc8192e1ant_DacSwing(pBtCoexist, NORMAL_EXEC, true, 6); + + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 10); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 0); + } + else if(BT_8192E_1ANT_BT_STATUS_ACL_BUSY == pCoexDm->btStatus && + !pBtCoexist->bt_link_info.bHidOnly) + { + if(pCoexDm->curSsType == 1) + { + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + halbtc8192e1ant_DacSwing(pBtCoexist, NORMAL_EXEC, true, 6); + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 10); + //halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 38); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 0); + } + } + else + { + halbtc8192e1ant_ActionBtScoHidOnlyBusy(pBtCoexist, + BT_8192E_1ANT_WIFI_STATUS_CONNECTED_BUSY); + } +} + +VOID +halbtc8192e1ant_ActionWifiConnectedBtAclBusy( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte wifiStatus + ) +{ + PBTC_BT_LINK_INFO pBtLinkInfo=&pBtCoexist->bt_link_info; + + if(pBtLinkInfo->bHidOnly) + { + halbtc8192e1ant_ActionBtScoHidOnlyBusy(pBtCoexist, wifiStatus); + pCoexDm->bAutoTdmaAdjust = FALSE; + return; + } + + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + halbtc8192e1ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0); + + if( (pBtLinkInfo->bA2dpOnly) || + (pBtLinkInfo->bHidExist&&pBtLinkInfo->bA2dpExist) ) + { + halbtc8192e1ant_TdmaDurationAdjustForAcl(pBtCoexist, wifiStatus); + } + else if( (pBtLinkInfo->bPanOnly) || + (pBtLinkInfo->bHidExist&&pBtLinkInfo->bPanExist) ) + { + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->bAutoTdmaAdjust = FALSE; + } + else + { + if( (BT_8192E_1ANT_WIFI_STATUS_NON_CONNECTED_ASSO_AUTH_SCAN == wifiStatus) || + (BT_8192E_1ANT_WIFI_STATUS_CONNECTED_SCAN == wifiStatus) || + (BT_8192E_1ANT_WIFI_STATUS_CONNECTED_SPECIAL_PKT == wifiStatus) ) + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 9); + else + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->bAutoTdmaAdjust = FALSE; + } + + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 1); +} + + +VOID +halbtc8192e1ant_ActionWifiNotConnected( + IN PBTC_COEXIST pBtCoexist + ) +{ + // power save state + halbtc8192e1ant_PowerSaveState(pBtCoexist, BTC_PS_WIFI_NATIVE, 0x0, 0x0); + + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + halbtc8192e1ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0); + + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 8); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 0); +} + +VOID +halbtc8192e1ant_ActionWifiNotConnectedAssoAuthScan( + IN PBTC_COEXIST pBtCoexist + ) +{ + halbtc8192e1ant_PowerSaveState(pBtCoexist, BTC_PS_WIFI_NATIVE, 0x0, 0x0); + + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + halbtc8192e1ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0); + + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 8); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 0); +} + +VOID +halbtc8192e1ant_ActionWifiConnectedScan( + IN PBTC_COEXIST pBtCoexist + ) +{ + // power save state + if(BT_8192E_1ANT_BT_STATUS_ACL_BUSY == pCoexDm->btStatus && !pBtCoexist->bt_link_info.bHidOnly) + halbtc8192e1ant_PowerSaveState(pBtCoexist, BTC_PS_LPS_ON, 0x50, 0x0); + else + halbtc8192e1ant_PowerSaveState(pBtCoexist, BTC_PS_WIFI_NATIVE, 0x0, 0x0); + + if(BT_8192E_1ANT_BT_STATUS_ACL_BUSY == pCoexDm->btStatus) + { + halbtc8192e1ant_ActionWifiConnectedBtAclBusy(pBtCoexist, + BT_8192E_1ANT_WIFI_STATUS_CONNECTED_SCAN); + } + else if( (BT_8192E_1ANT_BT_STATUS_SCO_BUSY == pCoexDm->btStatus) || + (BT_8192E_1ANT_BT_STATUS_ACL_SCO_BUSY == pCoexDm->btStatus) ) + { + halbtc8192e1ant_ActionBtScoHidOnlyBusy(pBtCoexist, + BT_8192E_1ANT_WIFI_STATUS_CONNECTED_SCAN); + } + else + { + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + halbtc8192e1ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0); + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 8); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 2); + } +} + + +VOID +halbtc8192e1ant_ActionWifiConnectedSpecialPacket( + IN PBTC_COEXIST pBtCoexist + ) +{ + // power save state + if(BT_8192E_1ANT_BT_STATUS_ACL_BUSY == pCoexDm->btStatus && !pBtCoexist->bt_link_info.bHidOnly) + halbtc8192e1ant_PowerSaveState(pBtCoexist, BTC_PS_LPS_ON, 0x50, 0x0); + else + halbtc8192e1ant_PowerSaveState(pBtCoexist, BTC_PS_WIFI_NATIVE, 0x0, 0x0); + + if(BT_8192E_1ANT_BT_STATUS_ACL_BUSY == pCoexDm->btStatus) + { + halbtc8192e1ant_ActionWifiConnectedBtAclBusy(pBtCoexist, + BT_8192E_1ANT_WIFI_STATUS_CONNECTED_SPECIAL_PKT); + } + else + { + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + halbtc8192e1ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0); + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 8); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 2); + } +} + +VOID +halbtc8192e1ant_ActionWifiConnected( + IN PBTC_COEXIST pBtCoexist + ) +{ + BOOLEAN bWifiConnected=FALSE, bWifiBusy=FALSE; + BOOLEAN bScan=FALSE, bLink=FALSE, bRoam=FALSE; + BOOLEAN bUnder4way=FALSE; + u4Byte wifiBw; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], CoexForWifiConnect()===>\n")); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); + if(!bWifiConnected) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], CoexForWifiConnect(), return for wifi not connected<===\n")); + return; + } + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_4_WAY_PROGRESS, &bUnder4way); + if(bUnder4way) + { + halbtc8192e1ant_ActionWifiConnectedSpecialPacket(pBtCoexist); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], CoexForWifiConnect(), return for wifi is under 4way<===\n")); + return; + } + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_SCAN, &bScan); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_LINK, &bLink); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_ROAM, &bRoam); + if(bScan || bLink || bRoam) + { + halbtc8192e1ant_ActionWifiConnectedScan(pBtCoexist); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], CoexForWifiConnect(), return for wifi is under scan<===\n")); + return; + } + + // power save state + if(BT_8192E_1ANT_BT_STATUS_ACL_BUSY == pCoexDm->btStatus && !pBtCoexist->bt_link_info.bHidOnly) + halbtc8192e1ant_PowerSaveState(pBtCoexist, BTC_PS_LPS_ON, 0x50, 0x0); + else + halbtc8192e1ant_PowerSaveState(pBtCoexist, BTC_PS_WIFI_NATIVE, 0x0, 0x0); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_BUSY, &bWifiBusy); + if(!bWifiBusy) + { + if(BT_8192E_1ANT_BT_STATUS_ACL_BUSY == pCoexDm->btStatus) + { + halbtc8192e1ant_ActionWifiConnectedBtAclBusy(pBtCoexist, + BT_8192E_1ANT_WIFI_STATUS_CONNECTED_IDLE); + } + else if( (BT_8192E_1ANT_BT_STATUS_SCO_BUSY == pCoexDm->btStatus) || + (BT_8192E_1ANT_BT_STATUS_ACL_SCO_BUSY == pCoexDm->btStatus) ) + { + halbtc8192e1ant_ActionBtScoHidOnlyBusy(pBtCoexist, + BT_8192E_1ANT_WIFI_STATUS_CONNECTED_IDLE); + } + else + { + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + halbtc8192e1ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0); + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 8); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 2); + } + } + else + { + if(BT_8192E_1ANT_BT_STATUS_NON_CONNECTED_IDLE == pCoexDm->btStatus) + { + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + halbtc8192e1ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0); + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 5); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 2); + } + else if(BT_8192E_1ANT_BT_STATUS_CONNECTED_IDLE == pCoexDm->btStatus) + { + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + halbtc8192e1ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0); + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 5); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 2); + } + else if(BT_8192E_1ANT_BT_STATUS_ACL_BUSY == pCoexDm->btStatus) + { + halbtc8192e1ant_ActionWifiConnectedBtAclBusy(pBtCoexist, + BT_8192E_1ANT_WIFI_STATUS_CONNECTED_BUSY); + } + else if( (BT_8192E_1ANT_BT_STATUS_SCO_BUSY == pCoexDm->btStatus) || + (BT_8192E_1ANT_BT_STATUS_ACL_SCO_BUSY == pCoexDm->btStatus) ) + { + halbtc8192e1ant_ActionBtScoHidOnlyBusy(pBtCoexist, + BT_8192E_1ANT_WIFI_STATUS_CONNECTED_BUSY); + } + else + { + halbtc8192e1ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, 0); + halbtc8192e1ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0); + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 8); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, NORMAL_EXEC, 2); + } + } +} + +VOID +halbtc8192e1ant_RunSwCoexistMechanism( + IN PBTC_COEXIST pBtCoexist + ) +{ + BOOLEAN bWifiUnder5G=FALSE, bWifiBusy=FALSE, bWifiConnected=FALSE; + u1Byte btInfoOriginal=0, btRetryCnt=0; + u1Byte algorithm=0; + + return; + + algorithm = halbtc8192e1ant_ActionAlgorithm(pBtCoexist); + pCoexDm->curAlgorithm = algorithm; + + if(halbtc8192e1ant_IsCommonAction(pBtCoexist)) + { + } + else + { + switch(pCoexDm->curAlgorithm) + { + case BT_8192E_1ANT_COEX_ALGO_SCO: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = SCO.\n")); + halbtc8192e1ant_ActionSco(pBtCoexist); + break; + case BT_8192E_1ANT_COEX_ALGO_HID: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = HID.\n")); + halbtc8192e1ant_ActionHid(pBtCoexist); + break; + case BT_8192E_1ANT_COEX_ALGO_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = A2DP.\n")); + halbtc8192e1ant_ActionA2dp(pBtCoexist); + break; + case BT_8192E_1ANT_COEX_ALGO_A2DP_PANHS: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = A2DP+PAN(HS).\n")); + halbtc8192e1ant_ActionA2dpPanHs(pBtCoexist); + break; + case BT_8192E_1ANT_COEX_ALGO_PANEDR: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = PAN(EDR).\n")); + halbtc8192e1ant_ActionPanEdr(pBtCoexist); + break; + case BT_8192E_1ANT_COEX_ALGO_PANHS: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = HS mode.\n")); + halbtc8192e1ant_ActionPanHs(pBtCoexist); + break; + case BT_8192E_1ANT_COEX_ALGO_PANEDR_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = PAN+A2DP.\n")); + halbtc8192e1ant_ActionPanEdrA2dp(pBtCoexist); + break; + case BT_8192E_1ANT_COEX_ALGO_PANEDR_HID: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = PAN(EDR)+HID.\n")); + halbtc8192e1ant_ActionPanEdrHid(pBtCoexist); + break; + case BT_8192E_1ANT_COEX_ALGO_HID_A2DP_PANEDR: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = HID+A2DP+PAN.\n")); + halbtc8192e1ant_ActionHidA2dpPanEdr(pBtCoexist); + break; + case BT_8192E_1ANT_COEX_ALGO_HID_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = HID+A2DP.\n")); + halbtc8192e1ant_ActionHidA2dp(pBtCoexist); + break; + default: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action algorithm = coexist All Off!!\n")); + halbtc8192e1ant_CoexAllOff(pBtCoexist); + break; + } + pCoexDm->preAlgorithm = pCoexDm->curAlgorithm; + } +} + +VOID +halbtc8192e1ant_RunCoexistMechanism( + IN PBTC_COEXIST pBtCoexist + ) +{ + PBTC_BT_LINK_INFO pBtLinkInfo=&pBtCoexist->bt_link_info; + BOOLEAN bWifiConnected=FALSE, bBtHsOn=FALSE; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], RunCoexistMechanism()===>\n")); + + if(pBtCoexist->manual_control) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], RunCoexistMechanism(), return for Manual CTRL <===\n")); + return; + } + + if(pBtCoexist->bStopCoexDm) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], RunCoexistMechanism(), return for Stop Coex DM <===\n")); + return; + } + + if(pCoexSta->bUnderIps) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], wifi is under IPS !!!\n")); + return; + } + + halbtc8192e1ant_RunSwCoexistMechanism(pBtCoexist); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn); + if(pCoexSta->bC2hBtInquiryPage) + { + halbtc8192e1ant_ActionBtInquiry(pBtCoexist); + return; + } + + // 1ss or 2ss + if(pBtLinkInfo->bScoExist) + { + halbtc8192e1ant_SwitchSsType(pBtCoexist, NORMAL_EXEC, 1); + } + else if(bBtHsOn) + { + if(pBtLinkInfo->bHidOnly) + halbtc8192e1ant_SwitchSsType(pBtCoexist, NORMAL_EXEC, 2); + else + halbtc8192e1ant_SwitchSsType(pBtCoexist, NORMAL_EXEC, 1); + } + else + halbtc8192e1ant_SwitchSsType(pBtCoexist, NORMAL_EXEC, 2); + + if(bBtHsOn) + { + halbtc8192e1ant_ActionHs(pBtCoexist); + return; + } + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); + if(!bWifiConnected) + { + BOOLEAN bScan=FALSE, bLink=FALSE, bRoam=FALSE; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], wifi is non connected-idle !!!\n")); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_SCAN, &bScan); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_LINK, &bLink); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_ROAM, &bRoam); + + if(bScan || bLink || bRoam) + halbtc8192e1ant_ActionWifiNotConnectedAssoAuthScan(pBtCoexist); + else + halbtc8192e1ant_ActionWifiNotConnected(pBtCoexist); + } + else + { + halbtc8192e1ant_ActionWifiConnected(pBtCoexist); + } +} + +VOID +halbtc8192e1ant_InitCoexDm( + IN PBTC_COEXIST pBtCoexist + ) +{ + // force to reset coex mechanism + halbtc8192e1ant_FwDacSwingLvl(pBtCoexist, FORCE_EXEC, 6); + halbtc8192e1ant_DecBtPwr(pBtCoexist, FORCE_EXEC, 0); + + // sw all off + halbtc8192e1ant_SwMechanism1(pBtCoexist,FALSE,FALSE,FALSE,FALSE); + halbtc8192e1ant_SwMechanism2(pBtCoexist,FALSE,FALSE,FALSE,0x18); + + halbtc8192e1ant_SwitchSsType(pBtCoexist, FORCE_EXEC, 2); + + halbtc8192e1ant_PsTdma(pBtCoexist, FORCE_EXEC, FALSE, 8); + halbtc8192e1ant_CoexTableWithType(pBtCoexist, FORCE_EXEC, 0); +} + +//============================================================ +// work around function start with wa_halbtc8192e1ant_ +//============================================================ +//============================================================ +// extern function start with EXhalbtc8192e1ant_ +//============================================================ +VOID +EXhalbtc8192e1ant_InitHwConfig( + IN PBTC_COEXIST pBtCoexist + ) +{ + u4Byte u4Tmp=0; + u16 u2Tmp=0; + u1Byte u1Tmp=0; + + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], 1Ant Init HW Config!!\n")); + + // backup rf 0x1e value + pCoexDm->btRf0x1eBackup = + pBtCoexist->btc_get_rf_reg(pBtCoexist, BTC_RF_A, 0x1e, 0xfffff); + + // antenna sw ctrl to bt + pBtCoexist->btc_write_1byte(pBtCoexist, 0x4f, 0x6); + pBtCoexist->btc_write_1byte(pBtCoexist, 0x944, 0x24); + pBtCoexist->btc_write_4byte(pBtCoexist, 0x930, 0x700700); + pBtCoexist->btc_write_1byte(pBtCoexist, 0x92c, 0x20); + if(pBtCoexist->chipInterface == BTC_INTF_USB) + pBtCoexist->btc_write_4byte(pBtCoexist, 0x64, 0x30430004); + else + pBtCoexist->btc_write_4byte(pBtCoexist, 0x64, 0x30030004); + + halbtc8192e1ant_CoexTableWithType(pBtCoexist, FORCE_EXEC, 0); + + // antenna switch control parameter + pBtCoexist->btc_write_4byte(pBtCoexist, 0x858, 0x55555555); + + // coex parameters + pBtCoexist->btc_write_1byte(pBtCoexist, 0x778, 0x1); + // 0x790[5:0]=0x5 + u1Tmp = pBtCoexist->btc_read_1byte(pBtCoexist, 0x790); + u1Tmp &= 0xc0; + u1Tmp |= 0x5; + pBtCoexist->btc_write_1byte(pBtCoexist, 0x790, u1Tmp); + + // enable counter statistics + pBtCoexist->btc_write_1byte(pBtCoexist, 0x76e, 0x4); + + // enable PTA + pBtCoexist->btc_write_1byte(pBtCoexist, 0x40, 0x20); + // enable mailbox interface + u2Tmp = pBtCoexist->btc_read_2byte(pBtCoexist, 0x40); + u2Tmp |= BIT9; + pBtCoexist->btc_write_2byte(pBtCoexist, 0x40, u2Tmp); + + // enable PTA I2C mailbox + u1Tmp = pBtCoexist->btc_read_1byte(pBtCoexist, 0x101); + u1Tmp |= BIT4; + pBtCoexist->btc_write_1byte(pBtCoexist, 0x101, u1Tmp); + + // enable bt clock when wifi is disabled. + u1Tmp = pBtCoexist->btc_read_1byte(pBtCoexist, 0x93); + u1Tmp |= BIT0; + pBtCoexist->btc_write_1byte(pBtCoexist, 0x93, u1Tmp); + // enable bt clock when suspend. + u1Tmp = pBtCoexist->btc_read_1byte(pBtCoexist, 0x7); + u1Tmp |= BIT0; + pBtCoexist->btc_write_1byte(pBtCoexist, 0x7, u1Tmp); +} + +VOID +EXhalbtc8192e1ant_InitCoexDm( + IN PBTC_COEXIST pBtCoexist + ) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], Coex Mechanism Init!!\n")); + + pBtCoexist->bStopCoexDm = FALSE; + + halbtc8192e1ant_InitCoexDm(pBtCoexist); +} + +VOID +EXhalbtc8192e1ant_DisplayCoexInfo( + IN PBTC_COEXIST pBtCoexist + ) +{ + struct btc_board_info * pBoardInfo=&pBtCoexist->board_info; + PBTC_STACK_INFO pStackInfo=&pBtCoexist->stack_info; + PBTC_BT_LINK_INFO pBtLinkInfo=&pBtCoexist->bt_link_info; + pu1Byte cliBuf=pBtCoexist->cli_buf; + u1Byte u1Tmp[4], i, btInfoExt, psTdmaCase=0; + u4Byte u4Tmp[4]; + BOOLEAN bRoam=FALSE, bScan=FALSE, bLink=FALSE, bWifiUnder5G=FALSE; + BOOLEAN bBtHsOn=FALSE, bWifiBusy=FALSE; + s4Byte wifiRssi=0, btHsRssi=0; + u4Byte wifiBw, wifiTrafficDir; + u1Byte wifiDot11Chnl, wifiHsChnl; + u4Byte fwVer=0, btPatchVer=0; + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n ============[BT Coexist info]============"); + CL_PRINTF(cliBuf); + + if(pBtCoexist->manual_control) + { + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n ============[Under Manual Control]============"); + CL_PRINTF(cliBuf); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n =========================================="); + CL_PRINTF(cliBuf); + } + if(pBtCoexist->bStopCoexDm) + { + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n ============[Coex is STOPPED]============"); + CL_PRINTF(cliBuf); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n =========================================="); + CL_PRINTF(cliBuf); + } + + if(!pBoardInfo->bt_exist) + { + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n BT not exists !!!"); + CL_PRINTF(cliBuf); + return; + } + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d ", "Ant PG number/ Ant mechanism:", \ + pBoardInfo->pg_ant_num, pBoardInfo->btdm_ant_num); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %d", "BT stack/ hci ext ver", \ + ((pStackInfo->bProfileNotified)? "Yes":"No"), pStackInfo->hciVersion); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_BT_PATCH_VER, &btPatchVer); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_FW_VER, &fwVer); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d_%d/ 0x%x/ 0x%x(%d)", "CoexVer/ FwVer/ PatchVer", \ + GLCoexVerDate8192e1Ant, GLCoexVer8192e1Ant, fwVer, btPatchVer, btPatchVer); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U1_WIFI_DOT11_CHNL, &wifiDot11Chnl); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U1_WIFI_HS_CHNL, &wifiHsChnl); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d / %d(%d)", "Dot11 channel / HsChnl(HsMode)", \ + wifiDot11Chnl, wifiHsChnl, bBtHsOn); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x ", "H2C Wifi inform bt chnl Info", \ + pCoexDm->wifiChnlInfo[0], pCoexDm->wifiChnlInfo[1], + pCoexDm->wifiChnlInfo[2]); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_S4_WIFI_RSSI, &wifiRssi); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_S4_HS_RSSI, &btHsRssi); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", "Wifi rssi/ HS rssi", \ + wifiRssi, btHsRssi); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_SCAN, &bScan); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_LINK, &bLink); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_ROAM, &bRoam); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d ", "Wifi bLink/ bRoam/ bScan", \ + bLink, bRoam, bScan); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_UNDER_5G, &bWifiUnder5G); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_BUSY, &bWifiBusy); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_TRAFFIC_DIRECTION, &wifiTrafficDir); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %s/ %s ", "Wifi status", \ + (bWifiUnder5G? "5G":"2.4G"), + ((BTC_WIFI_BW_LEGACY==wifiBw)? "Legacy": (((BTC_WIFI_BW_HT40==wifiBw)? "HT40":"HT20"))), + ((!bWifiBusy)? "idle": ((BTC_WIFI_TRAFFIC_TX==wifiTrafficDir)? "uplink":"downlink"))); + CL_PRINTF(cliBuf); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = [%s/ %d/ %d] ", "BT [status/ rssi/ retryCnt]", \ + ((pBtCoexist->btInfo.bBtDisabled)? ("disabled"): ((pCoexSta->bC2hBtInquiryPage)?("inquiry/page scan"):((BT_8192E_1ANT_BT_STATUS_NON_CONNECTED_IDLE == pCoexDm->btStatus)? "non-connected idle": + ( (BT_8192E_1ANT_BT_STATUS_CONNECTED_IDLE == pCoexDm->btStatus)? "connected-idle":"busy")))), + pCoexSta->btRssi, pCoexSta->btRetryCnt); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d / %d / %d / %d", "SCO/HID/PAN/A2DP", \ + pBtLinkInfo->bScoExist, pBtLinkInfo->bHidExist, pBtLinkInfo->bPanExist, pBtLinkInfo->bA2dpExist); + CL_PRINTF(cliBuf); + pBtCoexist->btc_disp_dbg_msg(pBtCoexist, BTC_DBG_DISP_BT_LINK_INFO); + + btInfoExt = pCoexSta->btInfoExt; + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s", "BT Info A2DP rate", \ + (btInfoExt&BIT0)? "Basic rate":"EDR rate"); + CL_PRINTF(cliBuf); + + for(i=0; ibtInfoC2hCnt[i]) + { + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x %02x %02x %02x %02x(%d)", GLBtInfoSrc8192e1Ant[i], \ + pCoexSta->btInfoC2h[i][0], pCoexSta->btInfoC2h[i][1], + pCoexSta->btInfoC2h[i][2], pCoexSta->btInfoC2h[i][3], + pCoexSta->btInfoC2h[i][4], pCoexSta->btInfoC2h[i][5], + pCoexSta->btInfoC2h[i][6], pCoexSta->btInfoC2hCnt[i]); + CL_PRINTF(cliBuf); + } + } + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s/%s, (0x%x/0x%x)", "PS state, IPS/LPS, (lps/rpwm)", \ + ((pCoexSta->bUnderIps? "IPS ON":"IPS OFF")), + ((pCoexSta->bUnderLps? "LPS ON":"LPS OFF")), + pBtCoexist->btInfo.lps1Ant, + pBtCoexist->btInfo.rpwm_1ant); + CL_PRINTF(cliBuf); + pBtCoexist->btc_disp_dbg_msg(pBtCoexist, BTC_DBG_DISP_FW_PWR_MODE_CMD); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x ", "SS Type", \ + pCoexDm->curSsType); + CL_PRINTF(cliBuf); + + if(!pBtCoexist->manual_control) + { + // Sw mechanism + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s", "============[Sw mechanism]============"); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d/ %d ", "SM1[ShRf/ LpRA/ LimDig/ btLna]", \ + pCoexDm->bCurRfRxLpfShrink, pCoexDm->bCurLowPenaltyRa, pCoexDm->limited_dig, pCoexDm->bCurBtLnaConstrain); + CL_PRINTF(cliBuf); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d(0x%x) ", "SM2[AgcT/ AdcB/ SwDacSwing(lvl)]", \ + pCoexDm->bCurAgcTableEn, pCoexDm->bCurAdcBackOff, pCoexDm->bCurDacSwingOn, pCoexDm->curDacSwingLvl); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s/ %s/ %d ", "DelBA/ BtCtrlAgg/ AggSize", \ + (pBtCoexist->btInfo.reject_agg_pkt? "Yes":"No"), (pBtCoexist->btInfo.b_bt_ctrl_agg_buf_size? "Yes":"No"), + pBtCoexist->btInfo.aggBufSize); + CL_PRINTF(cliBuf); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x ", "Rate Mask", \ + pBtCoexist->btInfo.ra_mask); + CL_PRINTF(cliBuf); + + // Fw mechanism + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s", "============[Fw mechanism]============"); + CL_PRINTF(cliBuf); + + psTdmaCase = pCoexDm->curPsTdma; + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x %02x %02x case-%d (auto:%d)", "PS TDMA", \ + pCoexDm->psTdmaPara[0], pCoexDm->psTdmaPara[1], + pCoexDm->psTdmaPara[2], pCoexDm->psTdmaPara[3], + pCoexDm->psTdmaPara[4], psTdmaCase, pCoexDm->bAutoTdmaAdjust); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x ", "Latest error condition(should be 0)", \ + pCoexDm->errorCondition); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d ", "DecBtPwrLvl/ IgnWlanAct", \ + pCoexDm->curBtDecPwrLvl, pCoexDm->bCurIgnoreWlanAct); + CL_PRINTF(cliBuf); + } + + // Hw setting + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s", "============[Hw setting]============"); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "RF-A, 0x1e initVal", \ + pCoexDm->btRf0x1eBackup); + CL_PRINTF(cliBuf); + + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0xc04); + u4Tmp[1] = pBtCoexist->btc_read_4byte(pBtCoexist, 0xd04); + u4Tmp[2] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x90c); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", "0xc04/ 0xd04/ 0x90c", \ + u4Tmp[0], u4Tmp[1], u4Tmp[2]); + CL_PRINTF(cliBuf); + + u1Tmp[0] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x778); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "0x778", \ + u1Tmp[0]); + CL_PRINTF(cliBuf); + + u1Tmp[0] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x92c); + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x930); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", "0x92c/ 0x930", \ + (u1Tmp[0]), u4Tmp[0]); + CL_PRINTF(cliBuf); + + u1Tmp[0] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x40); + u1Tmp[1] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x4f); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", "0x40/ 0x4f", \ + u1Tmp[0], u1Tmp[1]); + CL_PRINTF(cliBuf); + + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x550); + u1Tmp[0] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x522); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", "0x550(bcn ctrl)/0x522", \ + u4Tmp[0], u1Tmp[0]); + CL_PRINTF(cliBuf); + + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0xc50); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "0xc50(dig)", \ + u4Tmp[0]); + CL_PRINTF(cliBuf); + + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x6c0); + u4Tmp[1] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x6c4); + u4Tmp[2] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x6c8); + u1Tmp[0] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x6cc); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x/ 0x%x", "0x6c0/0x6c4/0x6c8/0x6cc(coexTable)", \ + u4Tmp[0], u4Tmp[1], u4Tmp[2], u1Tmp[0]); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", "0x770(hp rx[31:16]/tx[15:0])", \ + pCoexSta->highPriorityRx, pCoexSta->highPriorityTx); + CL_PRINTF(cliBuf); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", "0x774(lp rx[31:16]/tx[15:0])", \ + pCoexSta->lowPriorityRx, pCoexSta->lowPriorityTx); + CL_PRINTF(cliBuf); +#if(BT_AUTO_REPORT_ONLY_8192E_1ANT == 1) + halbtc8192e1ant_MonitorBtCtr(pBtCoexist); +#endif + + pBtCoexist->btc_disp_dbg_msg(pBtCoexist, BTC_DBG_DISP_COEX_STATISTICS); +} + + +VOID +EXhalbtc8192e1ant_IpsNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + u4Byte u4Tmp=0; + + if(pBtCoexist->manual_control || pBtCoexist->bStopCoexDm) + return; + + if(BTC_IPS_ENTER == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], IPS ENTER notify\n")); + pCoexSta->bUnderIps = true; + halbtc8192e1ant_CoexAllOff(pBtCoexist); + } + else if(BTC_IPS_LEAVE == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], IPS LEAVE notify\n")); + pCoexSta->bUnderIps = FALSE; + } +} + +VOID +EXhalbtc8192e1ant_LpsNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + if(pBtCoexist->manual_control || pBtCoexist->bStopCoexDm) + return; + + if(BTC_LPS_ENABLE == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], LPS ENABLE notify\n")); + pCoexSta->bUnderLps = true; + } + else if(BTC_LPS_DISABLE == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], LPS DISABLE notify\n")); + pCoexSta->bUnderLps = FALSE; + } +} + +VOID +EXhalbtc8192e1ant_ScanNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + BOOLEAN bWifiConnected=FALSE, bBtHsOn=FALSE; + + if(pBtCoexist->manual_control || + pBtCoexist->bStopCoexDm || + pBtCoexist->btInfo.bBtDisabled ) + return; + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn); + if(pCoexSta->bC2hBtInquiryPage) + { + halbtc8192e1ant_ActionBtInquiry(pBtCoexist); + return; + } + else if(bBtHsOn) + { + halbtc8192e1ant_ActionHs(pBtCoexist); + return; + } + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); + if(BTC_SCAN_START == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], SCAN START notify\n")); + if(!bWifiConnected) // non-connected scan + { + halbtc8192e1ant_ActionWifiNotConnectedAssoAuthScan(pBtCoexist); + } + else // wifi is connected + { + halbtc8192e1ant_ActionWifiConnectedScan(pBtCoexist); + } + } + else if(BTC_SCAN_FINISH == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], SCAN FINISH notify\n")); + if(!bWifiConnected) // non-connected scan + { + halbtc8192e1ant_ActionWifiNotConnected(pBtCoexist); + } + else + { + halbtc8192e1ant_ActionWifiConnected(pBtCoexist); + } + } +} + +VOID +EXhalbtc8192e1ant_ConnectNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + BOOLEAN bWifiConnected=FALSE, bBtHsOn=FALSE; + + if(pBtCoexist->manual_control || + pBtCoexist->bStopCoexDm || + pBtCoexist->btInfo.bBtDisabled ) + return; + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn); + if(pCoexSta->bC2hBtInquiryPage) + { + halbtc8192e1ant_ActionBtInquiry(pBtCoexist); + return; + } + else if(bBtHsOn) + { + halbtc8192e1ant_ActionHs(pBtCoexist); + return; + } + + if(BTC_ASSOCIATE_START == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], CONNECT START notify\n")); + halbtc8192e1ant_ActionWifiNotConnectedAssoAuthScan(pBtCoexist); + } + else if(BTC_ASSOCIATE_FINISH == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], CONNECT FINISH notify\n")); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); + if(!bWifiConnected) // non-connected scan + { + halbtc8192e1ant_ActionWifiNotConnected(pBtCoexist); + } + else + { + halbtc8192e1ant_ActionWifiConnected(pBtCoexist); + } + } +} + +VOID +EXhalbtc8192e1ant_MediaStatusNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + u1Byte H2C_Parameter[3] ={0}; + u4Byte wifiBw; + u1Byte wifiCentralChnl; + + if(pBtCoexist->manual_control || + pBtCoexist->bStopCoexDm || + pBtCoexist->btInfo.bBtDisabled ) + return; + + if(BTC_MEDIA_CONNECT == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], MEDIA connect notify\n")); + } + else + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], MEDIA disconnect notify\n")); + } + + // only 2.4G we need to inform bt the chnl mask + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U1_WIFI_CENTRAL_CHNL, &wifiCentralChnl); + if( (BTC_MEDIA_CONNECT == type) && + (wifiCentralChnl <= 14) ) + { + H2C_Parameter[0] = 0x1; + H2C_Parameter[1] = wifiCentralChnl; + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + if(BTC_WIFI_BW_HT40 == wifiBw) + H2C_Parameter[2] = 0x30; + else + H2C_Parameter[2] = 0x20; + } + + pCoexDm->wifiChnlInfo[0] = H2C_Parameter[0]; + pCoexDm->wifiChnlInfo[1] = H2C_Parameter[1]; + pCoexDm->wifiChnlInfo[2] = H2C_Parameter[2]; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], FW write 0x66=0x%x\n", + H2C_Parameter[0]<<16|H2C_Parameter[1]<<8|H2C_Parameter[2])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x66, 3, H2C_Parameter); +} + +VOID +EXhalbtc8192e1ant_SpecialPacketNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + BOOLEAN bBtHsOn=FALSE; + + if(pBtCoexist->manual_control || + pBtCoexist->bStopCoexDm || + pBtCoexist->btInfo.bBtDisabled ) + return; + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn); + if(pCoexSta->bC2hBtInquiryPage) + { + halbtc8192e1ant_ActionBtInquiry(pBtCoexist); + return; + } + else if(bBtHsOn) + { + halbtc8192e1ant_ActionHs(pBtCoexist); + return; + } + + if( BTC_PACKET_DHCP == type || + BTC_PACKET_EAPOL == type ) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], special Packet(%d) notify\n", type)); + halbtc8192e1ant_ActionWifiConnectedSpecialPacket(pBtCoexist); + } +} + +VOID +EXhalbtc8192e1ant_BtInfoNotify( + IN PBTC_COEXIST pBtCoexist, + IN pu1Byte tmpBuf, + IN u1Byte length + ) +{ + PBTC_BT_LINK_INFO pBtLinkInfo=&pBtCoexist->bt_link_info; + u1Byte btInfo=0; + u1Byte i, rspSource=0; + static u4Byte setBtPsdMode=0; + BOOLEAN bBtBusy=FALSE, limited_dig=FALSE; + BOOLEAN bWifiConnected=FALSE; + BOOLEAN b_bt_ctrl_agg_buf_size=FALSE; + + pCoexSta->bC2hBtInfoReqSent = FALSE; + + rspSource = tmpBuf[0]&0xf; + if(rspSource >= BT_INFO_SRC_8192E_1ANT_MAX) + rspSource = BT_INFO_SRC_8192E_1ANT_WIFI_FW; + pCoexSta->btInfoC2hCnt[rspSource]++; + + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Bt info[%d], length=%d, hex data=[", rspSource, length)); + for(i=0; ibtInfoC2h[rspSource][i] = tmpBuf[i]; + if(i == 1) + btInfo = tmpBuf[i]; + if(i == length-1) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("0x%02x]\n", tmpBuf[i])); + } + else + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("0x%02x, ", tmpBuf[i])); + } + } + + if(pBtCoexist->btInfo.bBtDisabled) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), return for BT is disabled <===\n")); + return; + } + + if(pBtCoexist->manual_control) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), return for Manual CTRL<===\n")); + return; + } + if(pBtCoexist->bStopCoexDm) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), return for Coex STOPPED!!<===\n")); + return; + } + + if(BT_INFO_SRC_8192E_1ANT_WIFI_FW != rspSource) + { + pCoexSta->btRetryCnt = // [3:0] + pCoexSta->btInfoC2h[rspSource][2]&0xf; + + pCoexSta->btRssi = + pCoexSta->btInfoC2h[rspSource][3]*2+10; + + pCoexSta->btInfoExt = + pCoexSta->btInfoC2h[rspSource][4]; + + // Here we need to resend some wifi info to BT + // because bt is reset and loss of the info. + if( (pCoexSta->btInfoExt & BIT1) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BT ext info bit1 check, send wifi BW&Chnl to BT!!\n")); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); + if(bWifiConnected) + { + EXhalbtc8192e1ant_MediaStatusNotify(pBtCoexist, BTC_MEDIA_CONNECT); + } + else + { + EXhalbtc8192e1ant_MediaStatusNotify(pBtCoexist, BTC_MEDIA_DISCONNECT); + } + + setBtPsdMode = 0; + } + + // test-chip bt patch only rsp the status for BT_RSP, + // so temporary we consider the following only under BT_RSP + if(BT_INFO_SRC_8192E_1ANT_BT_RSP == rspSource) + { + if( (pCoexSta->btInfoExt & BIT3) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BT ext info bit3 check, set BT NOT to ignore Wlan active!!\n")); + halbtc8192e1ant_IgnoreWlanAct(pBtCoexist, FORCE_EXEC, FALSE); + } + else + { + // BT already NOT ignore Wlan active, do nothing here. + } +#if(BT_AUTO_REPORT_ONLY_8192E_1ANT == 0) + if( (pCoexSta->btInfoExt & BIT4) ) + { + // BT auto report already enabled, do nothing + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BT ext info bit4 check, set BT to enable Auto Report!!\n")); + halbtc8192e1ant_BtAutoReport(pBtCoexist, FORCE_EXEC, true); + } +#endif + } + } + + // check BIT2 first ==> check if bt is under inquiry or page scan + if(btInfo & BT_INFO_8192E_1ANT_B_INQ_PAGE) + pCoexSta->bC2hBtInquiryPage = true; + else + pCoexSta->bC2hBtInquiryPage = FALSE; + + // set link exist status + if(!(btInfo&BT_INFO_8192E_1ANT_B_CONNECTION)) + { + pCoexSta->bBtLinkExist = FALSE; + pCoexSta->bPanExist = FALSE; + pCoexSta->bA2dpExist = FALSE; + pCoexSta->bHidExist = FALSE; + pCoexSta->bScoExist = FALSE; + } + else // connection exists + { + pCoexSta->bBtLinkExist = true; + if(btInfo & BT_INFO_8192E_1ANT_B_FTP) + pCoexSta->bPanExist = true; + else + pCoexSta->bPanExist = FALSE; + if(btInfo & BT_INFO_8192E_1ANT_B_A2DP) + pCoexSta->bA2dpExist = true; + else + pCoexSta->bA2dpExist = FALSE; + if(btInfo & BT_INFO_8192E_1ANT_B_HID) + pCoexSta->bHidExist = true; + else + pCoexSta->bHidExist = FALSE; + if(btInfo & BT_INFO_8192E_1ANT_B_SCO_ESCO) + pCoexSta->bScoExist = true; + else + pCoexSta->bScoExist = FALSE; + } + + halbtc8192e1ant_UpdateBtLinkInfo(pBtCoexist); + + if(!(btInfo&BT_INFO_8192E_1ANT_B_CONNECTION)) + { + pCoexDm->btStatus = BT_8192E_1ANT_BT_STATUS_NON_CONNECTED_IDLE; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), bt non-connected idle!!!\n")); + } + else if(btInfo == BT_INFO_8192E_1ANT_B_CONNECTION) // connection exists but no busy + { + pCoexDm->btStatus = BT_8192E_1ANT_BT_STATUS_CONNECTED_IDLE; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), bt connected-idle!!!\n")); + } + else if((btInfo&BT_INFO_8192E_1ANT_B_SCO_ESCO) || + (btInfo&BT_INFO_8192E_1ANT_B_SCO_BUSY)) + { + pCoexDm->btStatus = BT_8192E_1ANT_BT_STATUS_SCO_BUSY; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), bt sco busy!!!\n")); + } + else if( (btInfo&BT_INFO_8192E_1ANT_B_ACL_BUSY) || + (btInfo&BT_INFO_8192E_1ANT_B_A2DP) || + (btInfo&BT_INFO_8192E_1ANT_B_FTP) ) + { + if(BT_8192E_1ANT_BT_STATUS_ACL_BUSY != pCoexDm->btStatus) + pCoexDm->bAutoTdmaAdjust = FALSE; + pCoexDm->btStatus = BT_8192E_1ANT_BT_STATUS_ACL_BUSY; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), bt acl busy!!!\n")); + } + else + { + pCoexDm->btStatus = BT_8192E_1ANT_BT_STATUS_MAX; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], BtInfoNotify(), bt non-defined state!!!\n")); + } + + // ra mask check + if(pBtLinkInfo->bScoExist || pBtLinkInfo->bHidExist) + { + halbtc8192e1ant_Updatera_mask(pBtCoexist, NORMAL_EXEC, BTC_RATE_DISABLE, 0x00000003); // disable tx cck 1M/2M + } + else + { + halbtc8192e1ant_Updatera_mask(pBtCoexist, NORMAL_EXEC, BTC_RATE_ENABLE, 0x00000003); // enable tx cck 1M/2M + } + + if( (BT_8192E_1ANT_BT_STATUS_ACL_BUSY == pCoexDm->btStatus) || + (BT_8192E_1ANT_BT_STATUS_SCO_BUSY == pCoexDm->btStatus) || + (BT_8192E_1ANT_BT_STATUS_ACL_SCO_BUSY == pCoexDm->btStatus) ) + { + bBtBusy = true; + limited_dig = true; + if(pBtLinkInfo->bHidExist) + b_bt_ctrl_agg_buf_size = true; + } + else + { + bBtBusy = FALSE; + limited_dig = FALSE; + } + pBtCoexist->btc_set(pBtCoexist, BTC_SET_BL_BT_TRAFFIC_BUSY, &bBtBusy); + + //============================================ + // Aggregation related setting + //============================================ + // if sco, reject AddBA + //pBtCoexist->btc_set(pBtCoexist, BTC_SET_BL_TO_REJ_AP_AGG_PKT, &bRejApAggPkt); + + // decide BT control aggregation buf size or not + pBtCoexist->btc_set(pBtCoexist, BTC_SET_BL_BT_CTRL_AGG_SIZE, &b_bt_ctrl_agg_buf_size); + // real update aggregation setting + pBtCoexist->btc_set(pBtCoexist, BTC_SET_ACT_AGGREGATE_CTRL, NULL); + //============================================ + + pCoexDm->limited_dig = limited_dig; + pBtCoexist->btc_set(pBtCoexist, BTC_SET_BL_BT_LIMITED_DIG, &limited_dig); + + halbtc8192e1ant_RunCoexistMechanism(pBtCoexist); +} + +VOID +EXhalbtc8192e1ant_StackOperationNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + if(BTC_STACK_OP_INQ_PAGE_PAIR_START == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], StackOP Inquiry/page/pair start notify\n")); + } + else if(BTC_STACK_OP_INQ_PAGE_PAIR_FINISH == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], StackOP Inquiry/page/pair finish notify\n")); + } +} + +VOID +EXhalbtc8192e1ant_HaltNotify( + IN PBTC_COEXIST pBtCoexist + ) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Halt notify\n")); + + pBtCoexist->bStopCoexDm = true; + halbtc8192e1ant_IgnoreWlanAct(pBtCoexist, FORCE_EXEC, true); + + halbtc8192e1ant_PowerSaveState(pBtCoexist, BTC_PS_WIFI_NATIVE, 0x0, 0x0); + + halbtc8192e1ant_PsTdma(pBtCoexist, FORCE_EXEC, FALSE, 0); + pBtCoexist->btc_write_1byte(pBtCoexist, 0x4f, 0xf); + + EXhalbtc8192e1ant_MediaStatusNotify(pBtCoexist, BTC_MEDIA_DISCONNECT); +} + +VOID +EXhalbtc8192e1ant_PnpNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte pnpState + ) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Pnp notify\n")); + + if(BTC_WIFI_PNP_SLEEP == pnpState) + { + pBtCoexist->bStopCoexDm = true; + halbtc8192e1ant_IgnoreWlanAct(pBtCoexist, FORCE_EXEC, true); + halbtc8192e1ant_PowerSaveState(pBtCoexist, BTC_PS_WIFI_NATIVE, 0x0, 0x0); + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 9); + } + else if(BTC_WIFI_PNP_WAKE_UP == pnpState) + { + + } +} + +VOID +EXhalbtc8192e1ant_Periodical( + IN PBTC_COEXIST pBtCoexist + ) +{ + static u1Byte disVerInfoCnt=0; + u4Byte fwVer=0, btPatchVer=0; + struct btc_board_info * pBoardInfo=&pBtCoexist->board_info; + PBTC_STACK_INFO pStackInfo=&pBtCoexist->stack_info; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], ==========================Periodical===========================\n")); + + if(disVerInfoCnt <= 5) + { + disVerInfoCnt += 1; + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], ****************************************************************\n")); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], Ant PG Num/ Ant Mech/ Ant Pos = %d/ %d/ %d\n", \ + pBoardInfo->pg_ant_num, pBoardInfo->btdm_ant_num, pBoardInfo->btdm_ant_pos)); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], BT stack/ hci ext ver = %s / %d\n", \ + ((pStackInfo->bProfileNotified)? "Yes":"No"), pStackInfo->hciVersion)); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_BT_PATCH_VER, &btPatchVer); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_FW_VER, &fwVer); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], CoexVer/ FwVer/ PatchVer = %d_%x/ 0x%x/ 0x%x(%d)\n", \ + GLCoexVerDate8192e1Ant, GLCoexVer8192e1Ant, fwVer, btPatchVer, btPatchVer)); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], ****************************************************************\n")); + } +#if(BT_AUTO_REPORT_ONLY_8192E_1ANT == 0) + halbtc8192e1ant_QueryBtInfo(pBtCoexist); + halbtc8192e1ant_MonitorBtCtr(pBtCoexist); + halbtc8192e1ant_MonitorBtEnableDisable(pBtCoexist); +#else + if( halbtc8192e1ant_IsWifiStatusChanged(pBtCoexist) || + pCoexDm->bAutoTdmaAdjust) + { + halbtc8192e1ant_RunCoexistMechanism(pBtCoexist); + } +#endif +} + +VOID +EXhalbtc8192e1ant_DbgControl( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte opCode, + IN u1Byte opLen, + IN pu1Byte pData + ) +{ + switch(opCode) + { + case BTC_DBG_SET_COEX_NORMAL: + pBtCoexist->manual_control = FALSE; + halbtc8192e1ant_InitCoexDm(pBtCoexist); + break; + case BTC_DBG_SET_COEX_WIFI_ONLY: + pBtCoexist->manual_control = true; + halbtc8192e1ant_PowerSaveState(pBtCoexist, BTC_PS_WIFI_NATIVE, 0x0, 0x0); + halbtc8192e1ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 9); + break; + case BTC_DBG_SET_COEX_BT_ONLY: + // todo + break; + default: + break; + } +} +#endif + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/halbtc8192e1ant.h +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/halbtc8192e1ant.h @@ -0,0 +1,226 @@ +//=========================================== +// The following is for 8192E_1ANT BT Co-exist definition +//=========================================== +#define BT_AUTO_REPORT_ONLY_8192E_1ANT 0 + +#define BT_INFO_8192E_1ANT_B_FTP BIT7 +#define BT_INFO_8192E_1ANT_B_A2DP BIT6 +#define BT_INFO_8192E_1ANT_B_HID BIT5 +#define BT_INFO_8192E_1ANT_B_SCO_BUSY BIT4 +#define BT_INFO_8192E_1ANT_B_ACL_BUSY BIT3 +#define BT_INFO_8192E_1ANT_B_INQ_PAGE BIT2 +#define BT_INFO_8192E_1ANT_B_SCO_ESCO BIT1 +#define BT_INFO_8192E_1ANT_B_CONNECTION BIT0 + +#define BT_INFO_8192E_1ANT_A2DP_BASIC_RATE(_BT_INFO_EXT_) \ + (((_BT_INFO_EXT_&BIT0))? true:FALSE) + +#define BTC_RSSI_COEX_THRESH_TOL_8192E_1ANT 2 + +typedef enum _BT_INFO_SRC_8192E_1ANT{ + BT_INFO_SRC_8192E_1ANT_WIFI_FW = 0x0, + BT_INFO_SRC_8192E_1ANT_BT_RSP = 0x1, + BT_INFO_SRC_8192E_1ANT_BT_ACTIVE_SEND = 0x2, + BT_INFO_SRC_8192E_1ANT_MAX +}BT_INFO_SRC_8192E_1ANT,*PBT_INFO_SRC_8192E_1ANT; + +typedef enum _BT_8192E_1ANT_BT_STATUS{ + BT_8192E_1ANT_BT_STATUS_NON_CONNECTED_IDLE = 0x0, + BT_8192E_1ANT_BT_STATUS_CONNECTED_IDLE = 0x1, + BT_8192E_1ANT_BT_STATUS_INQ_PAGE = 0x2, + BT_8192E_1ANT_BT_STATUS_ACL_BUSY = 0x3, + BT_8192E_1ANT_BT_STATUS_SCO_BUSY = 0x4, + BT_8192E_1ANT_BT_STATUS_ACL_SCO_BUSY = 0x5, + BT_8192E_1ANT_BT_STATUS_MAX +}BT_8192E_1ANT_BT_STATUS,*PBT_8192E_1ANT_BT_STATUS; + +typedef enum _BT_8192E_1ANT_WIFI_STATUS{ + BT_8192E_1ANT_WIFI_STATUS_NON_CONNECTED_IDLE = 0x0, + BT_8192E_1ANT_WIFI_STATUS_NON_CONNECTED_ASSO_AUTH_SCAN = 0x1, + BT_8192E_1ANT_WIFI_STATUS_CONNECTED_SCAN = 0x2, + BT_8192E_1ANT_WIFI_STATUS_CONNECTED_SPECIAL_PKT = 0x3, + BT_8192E_1ANT_WIFI_STATUS_CONNECTED_IDLE = 0x4, + BT_8192E_1ANT_WIFI_STATUS_CONNECTED_BUSY = 0x5, + BT_8192E_1ANT_WIFI_STATUS_MAX +}BT_8192E_1ANT_WIFI_STATUS,*PBT_8192E_1ANT_WIFI_STATUS; + +typedef enum _BT_8192E_1ANT_COEX_ALGO{ + BT_8192E_1ANT_COEX_ALGO_UNDEFINED = 0x0, + BT_8192E_1ANT_COEX_ALGO_SCO = 0x1, + BT_8192E_1ANT_COEX_ALGO_HID = 0x2, + BT_8192E_1ANT_COEX_ALGO_A2DP = 0x3, + BT_8192E_1ANT_COEX_ALGO_A2DP_PANHS = 0x4, + BT_8192E_1ANT_COEX_ALGO_PANEDR = 0x5, + BT_8192E_1ANT_COEX_ALGO_PANHS = 0x6, + BT_8192E_1ANT_COEX_ALGO_PANEDR_A2DP = 0x7, + BT_8192E_1ANT_COEX_ALGO_PANEDR_HID = 0x8, + BT_8192E_1ANT_COEX_ALGO_HID_A2DP_PANEDR = 0x9, + BT_8192E_1ANT_COEX_ALGO_HID_A2DP = 0xa, + BT_8192E_1ANT_COEX_ALGO_MAX = 0xb, +}BT_8192E_1ANT_COEX_ALGO,*PBT_8192E_1ANT_COEX_ALGO; + +typedef struct _COEX_DM_8192E_1ANT{ + // fw mechanism + u1Byte preBtDecPwrLvl; + u1Byte curBtDecPwrLvl; + BOOLEAN bPreBtLnaConstrain; + BOOLEAN bCurBtLnaConstrain; + u1Byte bPreBtPsdMode; + u1Byte bCurBtPsdMode; + u1Byte preFwDacSwingLvl; + u1Byte curFwDacSwingLvl; + BOOLEAN bCurIgnoreWlanAct; + BOOLEAN bPreIgnoreWlanAct; + u1Byte prePsTdma; + u1Byte curPsTdma; + u1Byte psTdmaPara[5]; + u1Byte psTdmaDuAdjType; + BOOLEAN bAutoTdmaAdjust; + BOOLEAN bPrePsTdmaOn; + BOOLEAN bCurPsTdmaOn; + BOOLEAN bPreBtAutoReport; + BOOLEAN bCurBtAutoReport; + u1Byte preLps; + u1Byte curLps; + u1Byte preRpwm; + u1Byte curRpwm; + + // sw mechanism + BOOLEAN bPreRfRxLpfShrink; + BOOLEAN bCurRfRxLpfShrink; + u4Byte btRf0x1eBackup; + BOOLEAN bPreLowPenaltyRa; + BOOLEAN bCurLowPenaltyRa; + BOOLEAN bPreDacSwingOn; + u4Byte preDacSwingLvl; + BOOLEAN bCurDacSwingOn; + u4Byte curDacSwingLvl; + BOOLEAN bPreAdcBackOff; + BOOLEAN bCurAdcBackOff; + BOOLEAN bPreAgcTableEn; + BOOLEAN bCurAgcTableEn; + u4Byte preVal0x6c0; + u4Byte curVal0x6c0; + u4Byte preVal0x6c4; + u4Byte curVal0x6c4; + u4Byte preVal0x6c8; + u4Byte curVal0x6c8; + u1Byte preVal0x6cc; + u1Byte curVal0x6cc; + BOOLEAN limited_dig; + + // algorithm related + u1Byte preAlgorithm; + u1Byte curAlgorithm; + u1Byte btStatus; + u1Byte wifiChnlInfo[3]; + + u1Byte preSsType; + u1Byte curSsType; + + u4Byte prera_mask; + u4Byte curra_mask; + + u1Byte errorCondition; +} COEX_DM_8192E_1ANT, *PCOEX_DM_8192E_1ANT; + +typedef struct _COEX_STA_8192E_1ANT{ + BOOLEAN bBtLinkExist; + BOOLEAN bScoExist; + BOOLEAN bA2dpExist; + BOOLEAN bHidExist; + BOOLEAN bPanExist; + + BOOLEAN bUnderLps; + BOOLEAN bUnderIps; + u4Byte highPriorityTx; + u4Byte highPriorityRx; + u4Byte lowPriorityTx; + u4Byte lowPriorityRx; + u1Byte btRssi; + u1Byte preBtRssiState; + u1Byte preWifiRssiState[4]; + BOOLEAN bC2hBtInfoReqSent; + u1Byte btInfoC2h[BT_INFO_SRC_8192E_1ANT_MAX][10]; + u4Byte btInfoC2hCnt[BT_INFO_SRC_8192E_1ANT_MAX]; + BOOLEAN bC2hBtInquiryPage; + u1Byte btRetryCnt; + u1Byte btInfoExt; +}COEX_STA_8192E_1ANT, *PCOEX_STA_8192E_1ANT; + +//=========================================== +// The following is interface which will notify coex module. +//=========================================== +VOID +EXhalbtc8192e1ant_InitHwConfig( + IN PBTC_COEXIST pBtCoexist + ); +VOID +EXhalbtc8192e1ant_InitCoexDm( + IN PBTC_COEXIST pBtCoexist + ); +VOID +EXhalbtc8192e1ant_IpsNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8192e1ant_LpsNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8192e1ant_ScanNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8192e1ant_ConnectNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8192e1ant_MediaStatusNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8192e1ant_SpecialPacketNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8192e1ant_BtInfoNotify( + IN PBTC_COEXIST pBtCoexist, + IN pu1Byte tmpBuf, + IN u1Byte length + ); +VOID +EXhalbtc8192e1ant_StackOperationNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8192e1ant_HaltNotify( + IN PBTC_COEXIST pBtCoexist + ); +VOID +EXhalbtc8192e1ant_PnpNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte pnpState + ); +VOID +EXhalbtc8192e1ant_Periodical( + IN PBTC_COEXIST pBtCoexist + ); +VOID +EXhalbtc8192e1ant_DisplayCoexInfo( + IN PBTC_COEXIST pBtCoexist + ); +VOID +EXhalbtc8192e1ant_DbgControl( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte opCode, + IN u1Byte opLen, + IN pu1Byte pData + ); --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/halbtc8192e2ant.c +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/halbtc8192e2ant.c @@ -0,0 +1,4242 @@ +/************************************************************** + * Description: + * + * This file is for RTL8192E Co-exist mechanism + * + * History + * 2012/11/15 Cosa first check in. + * + **************************************************************/ + +/************************************************************** + * include files + **************************************************************/ +#include "halbt_precomp.h" +#if 1 +/************************************************************** + * Global variables, these are static variables + **************************************************************/ +static struct coex_dm_8192e_2ant glcoex_dm_8192e_2ant; +static struct coex_dm_8192e_2ant *coex_dm = &glcoex_dm_8192e_2ant; +static struct coex_sta_8192e_2ant glcoex_sta_8192e_2ant; +static struct coex_sta_8192e_2ant *coex_sta = &glcoex_sta_8192e_2ant; + +const char *const GLBtInfoSrc8192e2Ant[]={ + "BT Info[wifi fw]", + "BT Info[bt rsp]", + "BT Info[bt auto report]", +}; + +u32 glcoex_ver_date_8192e_2ant = 20130902; +u32 glcoex_ver_8192e_2ant = 0x34; + +/************************************************************** + * local function proto type if needed + **************************************************************/ +/************************************************************** + * local function start with halbtc8192e2ant_ + **************************************************************/ +u8 halbtc8192e2ant_btrssi_state(u8 level_num, u8 rssi_thresh, u8 rssi_thresh1) +{ + int btrssi=0; + u8 btrssi_state = coex_sta->pre_bt_rssi_state; + + btrssi = coex_sta->bt_rssi; + + if (level_num == 2) { + if ((coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_LOW) || + (coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_STAY_LOW)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "BT Rssi pre state=LOW\n"); + if (btrssi >= (rssi_thresh + + BTC_RSSI_COEX_THRESH_TOL_8192E_2ANT)) { + btrssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "BT Rssi state switch to High\n"); + } else { + btrssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "BT Rssi state stay at Low\n"); + } + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "BT Rssi pre state=HIGH\n"); + if (btrssi < rssi_thresh) { + btrssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "BT Rssi state switch to Low\n"); + } else { + btrssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "BT Rssi state stay at High\n"); + } + } + } else if (level_num == 3) { + if (rssi_thresh > rssi_thresh1) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "BT Rssi thresh error!!\n"); + return coex_sta->pre_bt_rssi_state; + } + + if ((coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_LOW) || + (coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_STAY_LOW)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "BT Rssi pre state=LOW\n"); + if(btrssi >= (rssi_thresh + + BTC_RSSI_COEX_THRESH_TOL_8192E_2ANT)) { + btrssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "BT Rssi state switch to Medium\n"); + } else { + btrssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "BT Rssi state stay at Low\n"); + } + } else if ((coex_sta->pre_bt_rssi_state == + BTC_RSSI_STATE_MEDIUM) || + (coex_sta->pre_bt_rssi_state == + BTC_RSSI_STATE_STAY_MEDIUM)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi pre state=MEDIUM\n"); + if (btrssi >= (rssi_thresh1 + + BTC_RSSI_COEX_THRESH_TOL_8192E_2ANT)) { + btrssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "BT Rssi state switch to High\n"); + } else if (btrssi < rssi_thresh) { + btrssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "BT Rssi state switch to Low\n"); + } else { + btrssi_state = BTC_RSSI_STATE_STAY_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "BT Rssi state stay at Medium\n"); + } + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "BT Rssi pre state=HIGH\n"); + if (btrssi < rssi_thresh1) { + btrssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "BT Rssi state switch to Medium\n"); + } else { + btrssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "BT Rssi state stay at High\n"); + } + } + } + + coex_sta->pre_bt_rssi_state = btrssi_state; + + return btrssi_state; +} + +u8 halbtc8192e2ant_wifirssi_state(struct btc_coexist * btcoexist, u8 index, + u8 level_num, u8 rssi_thresh, u8 rssi_thresh1) +{ + int wifirssi = 0; + u8 wifirssi_state = coex_sta->pre_wifi_rssi_state[index]; + + btcoexist->btc_get(btcoexist, BTC_GET_S4_WIFI_RSSI, &wifirssi); + + if (level_num == 2) { + if ((coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_LOW) || + (coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_STAY_LOW)) { + if (wifirssi >= (rssi_thresh + + BTC_RSSI_COEX_THRESH_TOL_8192E_2ANT)) { + wifirssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "wifi RSSI state switch to High\n"); + } else { + wifirssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "wifi RSSI state stay at Low\n"); + } + } else { + if (wifirssi < rssi_thresh) { + wifirssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "wifi RSSI state switch to Low\n"); + } else { + wifirssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "wifi RSSI state stay at High\n"); + } + } + } else if (level_num == 3) { + if (rssi_thresh > rssi_thresh1) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, + "wifi RSSI thresh error!!\n"); + return coex_sta->pre_wifi_rssi_state[index]; + } + + if ((coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_LOW) || + (coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_STAY_LOW)) { + if (wifirssi >= (rssi_thresh + + BTC_RSSI_COEX_THRESH_TOL_8192E_2ANT)) { + wifirssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "wifi RSSI state switch to Medium\n"); + } else { + wifirssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "wifi RSSI state stay at Low\n"); + } + } else if ((coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_MEDIUM) || + (coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_STAY_MEDIUM)) { + if (wifirssi >= (rssi_thresh1 + + BTC_RSSI_COEX_THRESH_TOL_8192E_2ANT)) { + wifirssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "wifi RSSI state switch to High\n"); + } else if (wifirssi < rssi_thresh) { + wifirssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "wifi RSSI state switch to Low\n"); + } else { + wifirssi_state = BTC_RSSI_STATE_STAY_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "wifi RSSI state stay at Medium\n"); + } + } else { + if (wifirssi < rssi_thresh1) { + wifirssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "wifi RSSI state switch to Medium\n"); + } else { + wifirssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "wifi RSSI state stay at High\n"); + } + } + } + + coex_sta->pre_wifi_rssi_state[index] = wifirssi_state; + + return wifirssi_state; +} + +void halbtc8192e2ant_monitor_bt_enable_disable(struct btc_coexist *btcoexist) +{ + static bool pre_bt_disabled = false; + static u32 bt_disable_cnt = 0; + bool bt_active = true, bt_disabled = false; + + /* This function check if bt is disabled */ + + if (coex_sta->high_priority_tx == 0 && + coex_sta->high_priority_rx == 0 && + coex_sta->low_priority_tx == 0 && + coex_sta->low_priority_rx == 0) + bt_active = false; + + if (coex_sta->high_priority_tx == 0xffff && + coex_sta->high_priority_rx == 0xffff && + coex_sta->low_priority_tx == 0xffff && + coex_sta->low_priority_rx == 0xffff) + bt_active = false; + + if (bt_active) { + bt_disable_cnt = 0; + bt_disabled = false; + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_DISABLE, + &bt_disabled); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], BT is enabled !!\n"); + } else { + bt_disable_cnt++; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], bt all counters=0, %d times!!\n", + bt_disable_cnt); + if (bt_disable_cnt >= 2) { + bt_disabled = true; + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_DISABLE, + &bt_disabled); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], BT is disabled !!\n"); + } + } + if (pre_bt_disabled != bt_disabled) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], BT is from %s to %s!!\n", + (pre_bt_disabled ? "disabled":"enabled"), + (bt_disabled ? "disabled":"enabled")); + pre_bt_disabled = bt_disabled; + } +} + +u32 halbtc8192e2ant_decidera_mask(struct btc_coexist *btcoexist, + u8 sstype, u32 ra_masktype) +{ + u32 disra_mask = 0x0; + + switch (ra_masktype) { + case 0: /* normal mode */ + if (sstype == 2) + disra_mask = 0x0; /* enable 2ss */ + else + disra_mask = 0xfff00000;/* disable 2ss */ + break; + case 1: /* disable cck 1/2 */ + if(sstype == 2) + disra_mask = 0x00000003;/* enable 2ss */ + else + disra_mask = 0xfff00003;/* disable 2ss */ + break; + case 2: /* disable cck 1/2/5.5, ofdm 6/9/12/18/24, mcs 0/1/2/3/4 */ + if(sstype == 2) + disra_mask = 0x0001f1f7;/* enable 2ss */ + else + disra_mask = 0xfff1f1f7;/* disable 2ss */ + break; + default: + break; + } + + return disra_mask; +} + +void halbtc8192e2ant_Updatera_mask(struct btc_coexist *btcoexist, + bool force_exec, u32 dis_ratemask) +{ + coex_dm->curra_mask = dis_ratemask; + + if (force_exec || (coex_dm->prera_mask != coex_dm->curra_mask)) + btcoexist->btc_set(btcoexist, BTC_SET_ACT_UPDATE_ra_mask, + &coex_dm->curra_mask); + coex_dm->prera_mask = coex_dm->curra_mask; +} + +void halbtc8192e2ant_autorate_fallback_retry(struct btc_coexist *btcoexist, + bool force_exec, u8 type) +{ + bool wifi_under_bmode = false; + + coex_dm->cur_arfrtype = type; + + if (force_exec || (coex_dm->pre_arfrtype != coex_dm->cur_arfrtype)) { + switch (coex_dm->cur_arfrtype) { + case 0: /* normal mode */ + btcoexist->btc_write_4byte(btcoexist, 0x430, + coex_dm->backup_arfr_cnt1); + btcoexist->btc_write_4byte(btcoexist, 0x434, + coex_dm->backup_arfr_cnt2); + break; + case 1: + btcoexist->btc_get(btcoexist, + BTC_GET_BL_WIFI_UNDER_B_MODE, + &wifi_under_bmode); + if (wifi_under_bmode) { + btcoexist->btc_write_4byte(btcoexist, 0x430, + 0x0); + btcoexist->btc_write_4byte(btcoexist, 0x434, + 0x01010101); + } else { + btcoexist->btc_write_4byte(btcoexist, 0x430, + 0x0); + btcoexist->btc_write_4byte(btcoexist, 0x434, + 0x04030201); + } + break; + default: + break; + } + } + + coex_dm->pre_arfrtype = coex_dm->cur_arfrtype; +} + +void halbtc8192e2ant_retrylimit(struct btc_coexist *btcoexist, + bool force_exec, u8 type) +{ + coex_dm->cur_retrylimit_type = type; + + if (force_exec || (coex_dm->pre_retrylimit_type != + coex_dm->cur_retrylimit_type)) { + switch (coex_dm->cur_retrylimit_type) { + case 0: /* normal mode */ + btcoexist->btc_write_2byte(btcoexist, 0x42a, + coex_dm->backup_retrylimit); + break; + case 1: /* retry limit=8 */ + btcoexist->btc_write_2byte(btcoexist, 0x42a, + 0x0808); + break; + default: + break; + } + } + + coex_dm->pre_retrylimit_type = coex_dm->cur_retrylimit_type; +} + +void halbtc8192e2ant_ampdu_maxtime(struct btc_coexist *btcoexist, + bool force_exec, u8 type) +{ + coex_dm->cur_ampdutime_type = type; + + if (force_exec || (coex_dm->pre_ampdutime_type != + coex_dm->cur_ampdutime_type)) { + switch (coex_dm->cur_ampdutime_type) { + case 0: /* normal mode */ + btcoexist->btc_write_1byte(btcoexist, 0x456, + coex_dm->backup_ampdu_maxtime); + break; + case 1: /* AMPDU timw = 0x38 * 32us */ + btcoexist->btc_write_1byte(btcoexist, 0x456, 0x38); + break; + default: + break; + } + } + + coex_dm->pre_ampdutime_type = coex_dm->cur_ampdutime_type; +} + +void halbtc8192e2ant_limited_tx(struct btc_coexist *btcoexist, + bool force_exec, u8 ra_masktype, u8 arfr_type, + u8 retrylimit_type, u8 ampdutime_type) +{ + u32 disra_mask = 0x0; + + coex_dm->curra_masktype = ra_masktype; + disra_mask = halbtc8192e2ant_decidera_mask(btcoexist, + coex_dm->cur_sstype, + ra_masktype); + halbtc8192e2ant_Updatera_mask(btcoexist, force_exec, disra_mask); + + halbtc8192e2ant_autorate_fallback_retry(btcoexist, force_exec, + arfr_type); + halbtc8192e2ant_retrylimit(btcoexist, force_exec, retrylimit_type); + halbtc8192e2ant_ampdu_maxtime(btcoexist, force_exec, ampdutime_type); +} + +void halbtc8192e2ant_limited_rx(struct btc_coexist *btcoexist, + bool force_exec, bool rej_ap_agg_pkt, + bool b_bt_ctrl_agg_buf_size, + u8 agg_buf_size) +{ + bool reject_rx_agg = rej_ap_agg_pkt; + bool bt_ctrl_rx_agg_size = b_bt_ctrl_agg_buf_size; + u8 rx_agg_size = agg_buf_size; + + /********************************************* + * Rx Aggregation related setting + *********************************************/ + btcoexist->btc_set(btcoexist, BTC_SET_BL_TO_REJ_AP_AGG_PKT, + &reject_rx_agg); + /* decide BT control aggregation buf size or not */ + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_CTRL_AGG_SIZE, + &bt_ctrl_rx_agg_size); + /* aggregation buf size, only work + * when BT control Rx aggregation size. */ + btcoexist->btc_set(btcoexist, BTC_SET_U1_AGG_BUF_SIZE, &rx_agg_size); + /* real update aggregation setting */ + btcoexist->btc_set(btcoexist, BTC_SET_ACT_AGGREGATE_CTRL, NULL); + + +} + +void halbtc8192e2ant_monitor_bt_ctr(struct btc_coexist *btcoexist) +{ + u32 reg_hp_txrx, reg_lp_txrx, u32tmp; + u32 reg_hp_tx = 0, reg_hp_rx = 0, reg_lp_tx = 0, reg_lp_rx = 0; + + reg_hp_txrx = 0x770; + reg_lp_txrx = 0x774; + + u32tmp = btcoexist->btc_read_4byte(btcoexist, reg_hp_txrx); + reg_hp_tx = u32tmp & MASKLWORD; + reg_hp_rx = (u32tmp & MASKHWORD)>>16; + + u32tmp = btcoexist->btc_read_4byte(btcoexist, reg_lp_txrx); + reg_lp_tx = u32tmp & MASKLWORD; + reg_lp_rx = (u32tmp & MASKHWORD)>>16; + + coex_sta->high_priority_tx = reg_hp_tx; + coex_sta->high_priority_rx = reg_hp_rx; + coex_sta->low_priority_tx = reg_lp_tx; + coex_sta->low_priority_rx = reg_lp_rx; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex] High Priority Tx/Rx (reg 0x%x)=0x%x(%d)/0x%x(%d)\n", + reg_hp_txrx, reg_hp_tx, reg_hp_tx, reg_hp_rx, reg_hp_rx); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex] Low Priority Tx/Rx (reg 0x%x)=0x%x(%d)/0x%x(%d)\n", + reg_lp_txrx, reg_lp_tx, reg_lp_tx, reg_lp_rx, reg_lp_rx); + + /* reset counter */ + btcoexist->btc_write_1byte(btcoexist, 0x76e, 0xc); +} + +void halbtc8192e2ant_querybt_info(struct btc_coexist *btcoexist) +{ + u8 h2c_parameter[1] ={0}; + + coex_sta->c2h_bt_info_req_sent = true; + + h2c_parameter[0] |= BIT0; /* trigger */ + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], Query Bt Info, FW write 0x61=0x%x\n", + h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x61, 1, h2c_parameter); +} + +bool halbtc8192e2ant_iswifi_status_changed(struct btc_coexist *btcoexist) +{ + static bool pre_wifi_busy = false; + static bool pre_under_4way = false, pre_bt_hson = false; + bool wifi_busy = false, under_4way = false, bt_hson = false; + bool wifi_connected = false; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hson); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_4_WAY_PROGRESS, + &under_4way); + + if (wifi_connected) { + if (wifi_busy != pre_wifi_busy) { + pre_wifi_busy = wifi_busy; + return true; + } + if (under_4way != pre_under_4way) { + pre_under_4way = under_4way; + return true; + } + if (bt_hson != pre_bt_hson) { + pre_bt_hson = bt_hson; + return true; + } + } + + return false; +} + +void halbtc8192e2ant_update_btlink_info(struct btc_coexist *btcoexist) +{ + struct btc_bt_link_info *bt_link_info = &btcoexist->bt_link_info; + bool bt_hson = false; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hson); + + bt_link_info->bt_link_exist = coex_sta->bt_link_exist; + bt_link_info->sco_exist = coex_sta->sco_exist; + bt_link_info->a2dp_exist = coex_sta->a2dp_exist; + bt_link_info->pan_exist = coex_sta->pan_exist; + bt_link_info->hid_exist = coex_sta->hid_exist; + + /* work around for HS mode. */ + if (bt_hson) { + bt_link_info->pan_exist = true; + bt_link_info->bt_link_exist = true; + } + + /* check if Sco only */ + if (bt_link_info->sco_exist && + !bt_link_info->a2dp_exist && + !bt_link_info->pan_exist && + !bt_link_info->hid_exist) + bt_link_info->sco_only = true; + else + bt_link_info->sco_only = false; + + /* check if A2dp only */ + if (!bt_link_info->sco_exist && + bt_link_info->a2dp_exist && + !bt_link_info->pan_exist && + !bt_link_info->hid_exist) + bt_link_info->a2dp_only = true; + else + bt_link_info->a2dp_only = false; + + /* check if Pan only */ + if (!bt_link_info->sco_exist && + !bt_link_info->a2dp_exist && + bt_link_info->pan_exist && + !bt_link_info->hid_exist) + bt_link_info->pan_only = true; + else + bt_link_info->pan_only = false; + + /* check if Hid only */ + if (!bt_link_info->sco_exist && + !bt_link_info->a2dp_exist && + !bt_link_info->pan_exist && + bt_link_info->hid_exist) + bt_link_info->hid_only = true; + else + bt_link_info->hid_only = false; +} + +u8 halbtc8192e2ant_action_algorithm(struct btc_coexist *btcoexist) +{ + struct btc_bt_link_info *bt_link_info = &btcoexist->bt_link_info; + struct btc_stack_info *stack_info = &btcoexist->stack_info; + bool bt_hson=false; + u8 algorithm = BT_8192E_2ANT_COEX_ALGO_UNDEFINED; + u8 numOfDiffProfile = 0; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hson); + + if (!bt_link_info->bt_link_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "No BT link exists!!!\n"); + return algorithm; + } + + if (bt_link_info->sco_exist) + numOfDiffProfile++; + if (bt_link_info->hid_exist) + numOfDiffProfile++; + if (bt_link_info->pan_exist) + numOfDiffProfile++; + if (bt_link_info->a2dp_exist) + numOfDiffProfile++; + + if (numOfDiffProfile == 1) { + if (bt_link_info->sco_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "SCO only\n"); + algorithm = BT_8192E_2ANT_COEX_ALGO_SCO; + } else { + if (bt_link_info->hid_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "HID only\n"); + algorithm = BT_8192E_2ANT_COEX_ALGO_HID; + } else if (bt_link_info->a2dp_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "A2DP only\n"); + algorithm = BT_8192E_2ANT_COEX_ALGO_A2DP; + } else if (bt_link_info->pan_exist) { + if (bt_hson) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "PAN(HS) only\n"); + algorithm = + BT_8192E_2ANT_COEX_ALGO_PANHS; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "PAN(EDR) only\n"); + algorithm = + BT_8192E_2ANT_COEX_ALGO_PANEDR; + } + } + } + } else if (numOfDiffProfile == 2) { + if (bt_link_info->sco_exist) { + if (bt_link_info->hid_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "SCO + HID\n"); + algorithm = BT_8192E_2ANT_COEX_ALGO_SCO; + } else if (bt_link_info->a2dp_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "SCO + A2DP ==> SCO\n"); + algorithm = BT_8192E_2ANT_COEX_ALGO_PANEDR_HID; + } else if (bt_link_info->pan_exist) { + if (bt_hson) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "SCO + PAN(HS)\n"); + algorithm = BT_8192E_2ANT_COEX_ALGO_SCO; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "SCO + PAN(EDR)\n"); + algorithm = + BT_8192E_2ANT_COEX_ALGO_SCO_PAN; + } + } + } else { + if (bt_link_info->hid_exist && + bt_link_info->a2dp_exist) { + if (stack_info->num_of_hid >= 2) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "HID*2 + A2DP\n"); + algorithm = + BT_8192E_2ANT_COEX_ALGO_HID_A2DP_PANEDR; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "HID + A2DP\n"); + algorithm = + BT_8192E_2ANT_COEX_ALGO_HID_A2DP; + } + } else if (bt_link_info->hid_exist && + bt_link_info->pan_exist) { + if (bt_hson) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "HID + PAN(HS)\n"); + algorithm = BT_8192E_2ANT_COEX_ALGO_HID; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "HID + PAN(EDR)\n"); + algorithm = + BT_8192E_2ANT_COEX_ALGO_PANEDR_HID; + } + } else if (bt_link_info->pan_exist && + bt_link_info->a2dp_exist) { + if (bt_hson) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "A2DP + PAN(HS)\n"); + algorithm = + BT_8192E_2ANT_COEX_ALGO_A2DP_PANHS; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "A2DP + PAN(EDR)\n"); + algorithm = + BT_8192E_2ANT_COEX_ALGO_PANEDR_A2DP; + } + } + } + } else if (numOfDiffProfile == 3) { + if (bt_link_info->sco_exist) { + if (bt_link_info->hid_exist && + bt_link_info->a2dp_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "SCO + HID + A2DP ==> HID\n"); + algorithm = BT_8192E_2ANT_COEX_ALGO_PANEDR_HID; + } else if (bt_link_info->hid_exist && + bt_link_info->pan_exist) { + if (bt_hson) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "SCO + HID + PAN(HS)\n"); + algorithm = BT_8192E_2ANT_COEX_ALGO_SCO; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "SCO + HID + PAN(EDR)\n"); + algorithm = + BT_8192E_2ANT_COEX_ALGO_SCO_PAN; + } + } else if (bt_link_info->pan_exist && + bt_link_info->a2dp_exist) { + if (bt_hson) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "SCO + A2DP + PAN(HS)\n"); + algorithm = BT_8192E_2ANT_COEX_ALGO_SCO; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "SCO + A2DP + PAN(EDR)\n"); + algorithm = + BT_8192E_2ANT_COEX_ALGO_PANEDR_HID; + } + } + } else { + if (bt_link_info->hid_exist && + bt_link_info->pan_exist && + bt_link_info->a2dp_exist) { + if (bt_hson) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "HID + A2DP + PAN(HS)\n"); + algorithm = + BT_8192E_2ANT_COEX_ALGO_HID_A2DP; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "HID + A2DP + PAN(EDR)\n"); + algorithm = + BT_8192E_2ANT_COEX_ALGO_HID_A2DP_PANEDR; + } + } + } + } else if (numOfDiffProfile >= 3) { + if (bt_link_info->sco_exist) { + if (bt_link_info->hid_exist && + bt_link_info->pan_exist && + bt_link_info->a2dp_exist) { + if (bt_hson) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "ErrorSCO+HID+A2DP+PAN(HS)\n"); + + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "SCO+HID+A2DP+PAN(EDR)\n"); + algorithm = + BT_8192E_2ANT_COEX_ALGO_PANEDR_HID; + } + } + } + } + + return algorithm; +} + +void halbtc8192e2ant_setfw_dac_swinglevel(struct btc_coexist *btcoexist, + u8 dac_swinglvl) +{ + u8 h2c_parameter[1] ={0}; + + /* There are several type of dacswing + * 0x18/ 0x10/ 0xc/ 0x8/ 0x4/ 0x6 */ + h2c_parameter[0] = dac_swinglvl; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], Set Dac Swing Level=0x%x\n", dac_swinglvl); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], FW write 0x64=0x%x\n", h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x64, 1, h2c_parameter); +} + +void halbtc8192e2ant_set_fwdec_btpwr(struct btc_coexist *btcoexist, + u8 dec_btpwr_lvl) +{ + u8 h2c_parameter[1] ={0}; + + h2c_parameter[0] = dec_btpwr_lvl; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex] decrease Bt Power level = %d, FW write 0x62=0x%x\n", + dec_btpwr_lvl, h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x62, 1, h2c_parameter); +} + +void halbtc8192e2ant_dec_btpwr(struct btc_coexist *btcoexist, + bool force_exec, u8 dec_btpwr_lvl) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s Dec BT power level = %d\n", + (force_exec? "force to":""), dec_btpwr_lvl); + coex_dm->cur_dec_bt_pwr = dec_btpwr_lvl; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], preBtDecPwrLvl=%d, curBtDecPwrLvl=%d\n", + coex_dm->pre_dec_bt_pwr, coex_dm->cur_dec_bt_pwr); + } + halbtc8192e2ant_set_fwdec_btpwr(btcoexist, coex_dm->cur_dec_bt_pwr); + + coex_dm->pre_dec_bt_pwr = coex_dm->cur_dec_bt_pwr; +} + +void halbtc8192e2ant_set_bt_autoreport(struct btc_coexist *btcoexist, + bool enable_autoreport) +{ + u8 h2c_parameter[1] ={0}; + + h2c_parameter[0] = 0; + + if (enable_autoreport) + h2c_parameter[0] |= BIT0; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], BT FW auto report : %s, FW write 0x68=0x%x\n", + (enable_autoreport? "Enabled!!":"Disabled!!"), + h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x68, 1, h2c_parameter); +} + +void halbtc8192e2ant_bt_autoreport(struct btc_coexist *btcoexist, + bool force_exec, bool enable_autoreport) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s BT Auto report = %s\n", + (force_exec? "force to":""), + ((enable_autoreport)? "Enabled":"Disabled")); + coex_dm->cur_bt_auto_report = enable_autoreport; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex] bPreBtAutoReport=%d, bCurBtAutoReport=%d\n", + coex_dm->pre_bt_auto_report, + coex_dm->cur_bt_auto_report); + + if (coex_dm->pre_bt_auto_report == coex_dm->cur_bt_auto_report) + return; + } + halbtc8192e2ant_set_bt_autoreport(btcoexist, + coex_dm->cur_bt_auto_report); + + coex_dm->pre_bt_auto_report = coex_dm->cur_bt_auto_report; +} + +void halbtc8192e2ant_fw_dac_swinglvl(struct btc_coexist *btcoexist, + bool force_exec, u8 fw_dac_swinglvl) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s set FW Dac Swing level = %d\n", + (force_exec? "force to":""), fw_dac_swinglvl); + coex_dm->cur_fw_dac_swing_lvl = fw_dac_swinglvl; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex] preFwDacSwingLvl=%d, curFwDacSwingLvl=%d\n", + coex_dm->pre_fw_dac_swing_lvl, + coex_dm->cur_fw_dac_swing_lvl); + + if (coex_dm->pre_fw_dac_swing_lvl == + coex_dm->cur_fw_dac_swing_lvl) + return; + } + + halbtc8192e2ant_setfw_dac_swinglevel(btcoexist, + coex_dm->cur_fw_dac_swing_lvl); + + coex_dm->pre_fw_dac_swing_lvl = coex_dm->cur_fw_dac_swing_lvl; +} + +void halbtc8192e2ant_set_sw_rf_rx_lpf_corner(struct btc_coexist *btcoexist, + bool rx_rf_shrink_on) +{ + if (rx_rf_shrink_on) { + /* Shrink RF Rx LPF corner */ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Shrink RF Rx LPF corner!!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1e, + 0xfffff, 0xffffc); + } else { + /* Resume RF Rx LPF corner + * After initialized, we can use coex_dm->btRf0x1eBackup */ + if (btcoexist->initilized) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Resume RF Rx LPF corner!!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1e, + 0xfffff, + coex_dm->bt_rf0x1e_backup); + } + } +} + +void halbtc8192e2ant_rf_shrink(struct btc_coexist *btcoexist, + bool force_exec, bool rx_rf_shrink_on) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s turn Rx RF Shrink = %s\n", + (force_exec? "force to":""), ((rx_rf_shrink_on)? "ON":"OFF")); + coex_dm->cur_rf_rx_lpf_shrink = rx_rf_shrink_on; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex]bPreRfRxLpfShrink=%d,bCurRfRxLpfShrink=%d\n", + coex_dm->pre_rf_rx_lpf_shrink, + coex_dm->cur_rf_rx_lpf_shrink); + + if (coex_dm->pre_rf_rx_lpf_shrink == + coex_dm->cur_rf_rx_lpf_shrink) + return; + } + halbtc8192e2ant_set_sw_rf_rx_lpf_corner(btcoexist, + coex_dm->cur_rf_rx_lpf_shrink); + + coex_dm->pre_rf_rx_lpf_shrink = coex_dm->cur_rf_rx_lpf_shrink; +} + +void halbtc8192e2ant_set_sw_penalty_tx_rateadaptive( + struct btc_coexist *btcoexist, + bool low_penalty_ra) +{ + u8 h2c_parameter[6] ={0}; + + h2c_parameter[0] = 0x6; /* opCode, 0x6= Retry_Penalty */ + + if (low_penalty_ra) { + h2c_parameter[1] |= BIT0; + /* normal rate except MCS7/6/5, OFDM54/48/36 */ + h2c_parameter[2] = 0x00; + h2c_parameter[3] = 0xf7; /* MCS7 or OFDM54 */ + h2c_parameter[4] = 0xf8; /* MCS6 or OFDM48 */ + h2c_parameter[5] = 0xf9; /* MCS5 or OFDM36 */ + } + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], set WiFi Low-Penalty Retry: %s", + (low_penalty_ra? "ON!!":"OFF!!")); + + btcoexist->btc_fill_h2c(btcoexist, 0x69, 6, h2c_parameter); +} + +void halbtc8192e2ant_low_penalty_ra(struct btc_coexist *btcoexist, + bool force_exec, bool low_penalty_ra) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s turn LowPenaltyRA = %s\n", + (force_exec? "force to":""), ((low_penalty_ra)? "ON":"OFF")); + coex_dm->cur_low_penalty_ra = low_penalty_ra; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex] bPreLowPenaltyRa=%d, bCurLowPenaltyRa=%d\n", + coex_dm->pre_low_penalty_ra, + coex_dm->cur_low_penalty_ra); + + if (coex_dm->pre_low_penalty_ra == + coex_dm->cur_low_penalty_ra) + return; + } + halbtc8192e2ant_set_sw_penalty_tx_rateadaptive(btcoexist, + coex_dm->cur_low_penalty_ra); + + coex_dm->pre_low_penalty_ra = coex_dm->cur_low_penalty_ra; +} + +void halbtc8192e2ant_set_dac_swingreg(struct btc_coexist *btcoexist, + u32 level) +{ + u8 val = (u8)level; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Write SwDacSwing = 0x%x\n", level); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x883, 0x3e, val); +} + +void halbtc8192e2ant_setsw_fulltime_dacswing(struct btc_coexist *btcoexist, + bool sw_dac_swingon, + u32 sw_dac_swinglvl) +{ + if (sw_dac_swingon) + halbtc8192e2ant_set_dac_swingreg(btcoexist, sw_dac_swinglvl); + else + halbtc8192e2ant_set_dac_swingreg(btcoexist, 0x18); +} + + +void halbtc8192e2ant_DacSwing(struct btc_coexist *btcoexist, + bool force_exec, bool dac_swingon, + u32 dac_swinglvl) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s turn DacSwing=%s, dac_swinglvl=0x%x\n", + (force_exec? "force to":""), + ((dac_swingon)? "ON":"OFF"), dac_swinglvl); + coex_dm->cur_dac_swing_on = dac_swingon; + coex_dm->cur_dac_swing_lvl = dac_swinglvl; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], bPreDacSwingOn=%d, preDacSwingLvl=0x%x, ", + coex_dm->pre_dac_swing_on, + coex_dm->pre_dac_swing_lvl); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "bCurDacSwingOn=%d, curDacSwingLvl=0x%x\n", + coex_dm->cur_dac_swing_on, + coex_dm->cur_dac_swing_lvl); + + if ((coex_dm->pre_dac_swing_on == coex_dm->cur_dac_swing_on) && + (coex_dm->pre_dac_swing_lvl == coex_dm->cur_dac_swing_lvl)) + return; + } + mdelay(30); + halbtc8192e2ant_setsw_fulltime_dacswing(btcoexist, dac_swingon, + dac_swinglvl); + + coex_dm->pre_dac_swing_on = coex_dm->cur_dac_swing_on; + coex_dm->pre_dac_swing_lvl = coex_dm->cur_dac_swing_lvl; +} + +void halbtc8192e2ant_set_adc_backoff(struct btc_coexist *btcoexist, + bool adc_backoff) +{ + if(adc_backoff) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], BB BackOff Level On!\n"); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0xc05, 0x30, 0x3); + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], BB BackOff Level Off!\n"); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0xc05, 0x30, 0x1); + } +} + +void halbtc8192e2ant_adc_backoff(struct btc_coexist *btcoexist, + bool force_exec, bool adc_backoff) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s turn AdcBackOff = %s\n", + (force_exec? "force to":""), ((adc_backoff)? "ON":"OFF")); + coex_dm->cur_adc_back_off = adc_backoff; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], bPreAdcBackOff=%d, bCurAdcBackOff=%d\n", + coex_dm->pre_adc_back_off, coex_dm->cur_adc_back_off); + + if (coex_dm->pre_adc_back_off == coex_dm->cur_adc_back_off) + return; + } + halbtc8192e2ant_set_adc_backoff(btcoexist, coex_dm->cur_adc_back_off); + + coex_dm->pre_adc_back_off = coex_dm->cur_adc_back_off; +} + +void halbtc8192e2ant_set_agc_table(struct btc_coexist *btcoexist, + bool agc_table_en) +{ + + /* BB AGC Gain Table */ + if (agc_table_en) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], BB Agc Table On!\n"); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x0a1A0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x091B0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x081C0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x071D0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x061E0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x051F0001); + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], BB Agc Table Off!\n"); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xaa1A0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa91B0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa81C0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa71D0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa61E0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa51F0001); + } +} + +void halbtc8192e2ant_AgcTable(struct btc_coexist *btcoexist, + bool force_exec, bool agc_table_en) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s %s Agc Table\n", + (force_exec? "force to":""), + ((agc_table_en)? "Enable":"Disable")); + coex_dm->cur_agc_table_en = agc_table_en; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], bPreAgcTableEn=%d, bCurAgcTableEn=%d\n", + coex_dm->pre_agc_table_en, coex_dm->cur_agc_table_en); + + if (coex_dm->pre_agc_table_en == coex_dm->cur_agc_table_en) + return; + } + halbtc8192e2ant_set_agc_table(btcoexist, agc_table_en); + + coex_dm->pre_agc_table_en = coex_dm->cur_agc_table_en; +} + +void halbtc8192e2ant_set_coex_table(struct btc_coexist *btcoexist, + u32 val0x6c0, u32 val0x6c4, + u32 val0x6c8, u8 val0x6cc) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], set coex table, set 0x6c0=0x%x\n", val0x6c0); + btcoexist->btc_write_4byte(btcoexist, 0x6c0, val0x6c0); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], set coex table, set 0x6c4=0x%x\n", val0x6c4); + btcoexist->btc_write_4byte(btcoexist, 0x6c4, val0x6c4); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], set coex table, set 0x6c8=0x%x\n", val0x6c8); + btcoexist->btc_write_4byte(btcoexist, 0x6c8, val0x6c8); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], set coex table, set 0x6cc=0x%x\n", val0x6cc); + btcoexist->btc_write_1byte(btcoexist, 0x6cc, val0x6cc); +} + +void halbtc8192e2ant_coex_table(struct btc_coexist *btcoexist, bool force_exec, + u32 val0x6c0, u32 val0x6c4, + u32 val0x6c8, u8 val0x6cc) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s write Coex Table 0x6c0=0x%x, ", + (force_exec? "force to":""), val0x6c0); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "0x6c4=0x%x, 0x6c8=0x%x, 0x6cc=0x%x\n", + val0x6c4, val0x6c8, val0x6cc); + coex_dm->cur_val0x6c0 = val0x6c0; + coex_dm->cur_val0x6c4 = val0x6c4; + coex_dm->cur_val0x6c8 = val0x6c8; + coex_dm->cur_val0x6cc = val0x6cc; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], preVal0x6c0=0x%x, preVal0x6c4=0x%x, ", + coex_dm->pre_val0x6c0, coex_dm->pre_val0x6c4); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "preVal0x6c8=0x%x, preVal0x6cc=0x%x !!\n", + coex_dm->pre_val0x6c8, coex_dm->pre_val0x6cc); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], curVal0x6c0=0x%x, curVal0x6c4=0x%x, \n", + coex_dm->cur_val0x6c0, coex_dm->cur_val0x6c4); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "curVal0x6c8=0x%x, curVal0x6cc=0x%x !!\n", + coex_dm->cur_val0x6c8, coex_dm->cur_val0x6cc); + + if ((coex_dm->pre_val0x6c0 == coex_dm->cur_val0x6c0) && + (coex_dm->pre_val0x6c4 == coex_dm->cur_val0x6c4) && + (coex_dm->pre_val0x6c8 == coex_dm->cur_val0x6c8) && + (coex_dm->pre_val0x6cc == coex_dm->cur_val0x6cc)) + return; + } + halbtc8192e2ant_set_coex_table(btcoexist, val0x6c0, val0x6c4, + val0x6c8, val0x6cc); + + coex_dm->pre_val0x6c0 = coex_dm->cur_val0x6c0; + coex_dm->pre_val0x6c4 = coex_dm->cur_val0x6c4; + coex_dm->pre_val0x6c8 = coex_dm->cur_val0x6c8; + coex_dm->pre_val0x6cc = coex_dm->cur_val0x6cc; +} + +void halbtc8192e2ant_coex_table_with_type(struct btc_coexist *btcoexist, + bool force_exec, u8 type) +{ + switch (type) { + case 0: + halbtc8192e2ant_coex_table(btcoexist, force_exec, 0x55555555, + 0x5a5a5a5a, 0xffffff, 0x3); + break; + case 1: + halbtc8192e2ant_coex_table(btcoexist, force_exec, 0x5a5a5a5a, + 0x5a5a5a5a, 0xffffff, 0x3); + break; + case 2: + halbtc8192e2ant_coex_table(btcoexist, force_exec, 0x55555555, + 0x5ffb5ffb, 0xffffff, 0x3); + break; + case 3: + halbtc8192e2ant_coex_table(btcoexist, force_exec, 0xdfffdfff, + 0x5fdb5fdb, 0xffffff, 0x3); + break; + case 4: + halbtc8192e2ant_coex_table(btcoexist, force_exec, 0xdfffdfff, + 0x5ffb5ffb, 0xffffff, 0x3); + break; + default: + break; + } +} + +void halbtc8192e2ant_set_fw_ignore_wlanact(struct btc_coexist *btcoexist, + bool enable) +{ + u8 h2c_parameter[1] ={0}; + + if (enable) + h2c_parameter[0] |= BIT0; /* function enable */ + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex]set FW for BT Ignore Wlan_Act, FW write 0x63=0x%x\n", + h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x63, 1, h2c_parameter); +} + +void halbtc8192e2ant_IgnoreWlanAct(struct btc_coexist *btcoexist, + bool force_exec, bool enable) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s turn Ignore WlanAct %s\n", + (force_exec? "force to":""), (enable? "ON":"OFF")); + coex_dm->cur_ignore_wlan_act = enable; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], bPreIgnoreWlanAct = %d ", + coex_dm->pre_ignore_wlan_act); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "bCurIgnoreWlanAct = %d!!\n", + coex_dm->cur_ignore_wlan_act); + + if (coex_dm->pre_ignore_wlan_act == + coex_dm->cur_ignore_wlan_act) + return; + } + halbtc8192e2ant_set_fw_ignore_wlanact(btcoexist, enable); + + coex_dm->pre_ignore_wlan_act = coex_dm->cur_ignore_wlan_act; +} + +void halbtc8192e2ant_SetFwPstdma(struct btc_coexist *btcoexist, u8 byte1, + u8 byte2, u8 byte3, u8 byte4, u8 byte5) +{ + u8 h2c_parameter[5] ={0}; + + h2c_parameter[0] = byte1; + h2c_parameter[1] = byte2; + h2c_parameter[2] = byte3; + h2c_parameter[3] = byte4; + h2c_parameter[4] = byte5; + + coex_dm->ps_tdma_para[0] = byte1; + coex_dm->ps_tdma_para[1] = byte2; + coex_dm->ps_tdma_para[2] = byte3; + coex_dm->ps_tdma_para[3] = byte4; + coex_dm->ps_tdma_para[4] = byte5; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], FW write 0x60(5bytes)=0x%x%08x\n", + h2c_parameter[0], + h2c_parameter[1] << 24 | h2c_parameter[2] << 16 | + h2c_parameter[3] << 8 | h2c_parameter[4]); + + btcoexist->btc_fill_h2c(btcoexist, 0x60, 5, h2c_parameter); +} + +void halbtc8192e2ant_sw_mechanism1(struct btc_coexist *btcoexist, + bool shrink_rx_lpf, bool low_penalty_ra, + bool limited_dig, bool btlan_constrain) +{ + halbtc8192e2ant_rf_shrink(btcoexist, NORMAL_EXEC, shrink_rx_lpf); +} + +void halbtc8192e2ant_sw_mechanism2(struct btc_coexist *btcoexist, + bool agc_table_shift, bool adc_backoff, + bool sw_dac_swing, u32 dac_swinglvl) +{ + halbtc8192e2ant_AgcTable(btcoexist, NORMAL_EXEC, agc_table_shift); + halbtc8192e2ant_DacSwing(btcoexist, NORMAL_EXEC, sw_dac_swing, + dac_swinglvl); +} + +void halbtc8192e2ant_ps_tdma(struct btc_coexist *btcoexist, + bool force_exec, bool turn_on, u8 type) +{ + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s turn %s PS TDMA, type=%d\n", + (force_exec? "force to":""), (turn_on? "ON":"OFF"), type); + coex_dm->cur_ps_tdma_on = turn_on; + coex_dm->cur_ps_tdma = type; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], bPrePsTdmaOn = %d, bCurPsTdmaOn = %d!!\n", + coex_dm->pre_ps_tdma_on, coex_dm->cur_ps_tdma_on); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], prePsTdma = %d, curPsTdma = %d!!\n", + coex_dm->pre_ps_tdma, coex_dm->cur_ps_tdma); + + if ((coex_dm->pre_ps_tdma_on == coex_dm->cur_ps_tdma_on) && + (coex_dm->pre_ps_tdma == coex_dm->cur_ps_tdma)) + return; + } + if (turn_on) { + switch (type) { + case 1: + default: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x1a, + 0x1a, 0xe1, 0x90); + break; + case 2: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x12, + 0x12, 0xe1, 0x90); + break; + case 3: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x1c, + 0x3, 0xf1, 0x90); + break; + case 4: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x10, + 0x3, 0xf1, 0x90); + break; + case 5: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x1a, + 0x1a, 0x60, 0x90); + break; + case 6: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x12, + 0x12, 0x60, 0x90); + break; + case 7: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x1c, + 0x3, 0x70, 0x90); + break; + case 8: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xa3, 0x10, + 0x3, 0x70, 0x90); + break; + case 9: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x1a, + 0x1a, 0xe1, 0x10); + break; + case 10: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x12, + 0x12, 0xe1, 0x10); + break; + case 11: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x1c, + 0x3, 0xf1, 0x10); + break; + case 12: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x10, + 0x3, 0xf1, 0x10); + break; + case 13: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x1a, + 0x1a, 0xe0, 0x10); + break; + case 14: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x12, + 0x12, 0xe0, 0x10); + break; + case 15: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x1c, + 0x3, 0xf0, 0x10); + break; + case 16: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x12, + 0x3, 0xf0, 0x10); + break; + case 17: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0x61, 0x20, + 0x03, 0x10, 0x10); + break; + case 18: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x5, + 0x5, 0xe1, 0x90); + break; + case 19: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x25, + 0x25, 0xe1, 0x90); + break; + case 20: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x25, + 0x25, 0x60, 0x90); + break; + case 21: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x15, + 0x03, 0x70, 0x90); + break; + case 71: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0xe3, 0x1a, + 0x1a, 0xe1, 0x90); + break; + } + } else { + /* disable PS tdma */ + switch (type) { + default: + case 0: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0x8, 0x0, 0x0, + 0x0, 0x0); + btcoexist->btc_write_1byte(btcoexist, 0x92c, 0x4); + break; + case 1: + halbtc8192e2ant_SetFwPstdma(btcoexist, 0x0, 0x0, 0x0, + 0x8, 0x0); + mdelay(5); + btcoexist->btc_write_1byte(btcoexist, 0x92c, 0x20); + break; + } + } + + /* update pre state */ + coex_dm->pre_ps_tdma_on = coex_dm->cur_ps_tdma_on; + coex_dm->pre_ps_tdma = coex_dm->cur_ps_tdma; +} + +void halbtc8192e2ant_set_switch_sstype(struct btc_coexist *btcoexist, u8 sstype) +{ + u8 mimops = BTC_MIMO_PS_DYNAMIC; + u32 disra_mask = 0x0; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], REAL set SS Type = %d\n", sstype); + + disra_mask = halbtc8192e2ant_decidera_mask(btcoexist, sstype, + coex_dm->curra_masktype); + halbtc8192e2ant_Updatera_mask(btcoexist, FORCE_EXEC, disra_mask); + + if (sstype == 1) { + halbtc8192e2ant_ps_tdma(btcoexist, FORCE_EXEC, false, 1); + /* switch ofdm path */ + btcoexist->btc_write_1byte(btcoexist, 0xc04, 0x11); + btcoexist->btc_write_1byte(btcoexist, 0xd04, 0x1); + btcoexist->btc_write_4byte(btcoexist, 0x90c, 0x81111111); + /* switch cck patch */ + btcoexist->btc_write_1byte_bitmask(btcoexist, 0xe77, 0x4, 0x1); + btcoexist->btc_write_1byte(btcoexist, 0xa07, 0x81); + mimops=BTC_MIMO_PS_STATIC; + } else if (sstype == 2) { + halbtc8192e2ant_ps_tdma(btcoexist, FORCE_EXEC, false, 0); + btcoexist->btc_write_1byte(btcoexist, 0xc04, 0x33); + btcoexist->btc_write_1byte(btcoexist, 0xd04, 0x3); + btcoexist->btc_write_4byte(btcoexist, 0x90c, 0x81121313); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0xe77, 0x4, 0x0); + btcoexist->btc_write_1byte(btcoexist, 0xa07, 0x41); + mimops=BTC_MIMO_PS_DYNAMIC; + } + /* set rx 1ss or 2ss */ + btcoexist->btc_set(btcoexist, BTC_SET_ACT_SEND_MIMO_PS, &mimops); +} + +void halbtc8192e2ant_switch_sstype(struct btc_coexist *btcoexist, + bool force_exec, u8 new_sstype) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], %s Switch SS Type = %d\n", + (force_exec? "force to":""), new_sstype); + coex_dm->cur_sstype = new_sstype; + + if (!force_exec) { + if (coex_dm->pre_sstype == coex_dm->cur_sstype) + return; + } + halbtc8192e2ant_set_switch_sstype(btcoexist, coex_dm->cur_sstype); + + coex_dm->pre_sstype = coex_dm->cur_sstype; +} + +void halbtc8192e2ant_coex_alloff(struct btc_coexist *btcoexist) +{ + /* fw all off */ + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 1); + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, NORMAL_EXEC, 6); + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + + /* sw all off */ + halbtc8192e2ant_sw_mechanism1(btcoexist, false, false, false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, false, 0x18); + + /* hw all off */ + halbtc8192e2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 0); +} + +void halbtc8192e2ant_init_coex_dm(struct btc_coexist *btcoexist) +{ + /* force to reset coex mechanism */ + + halbtc8192e2ant_ps_tdma(btcoexist, FORCE_EXEC, false, 1); + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, FORCE_EXEC, 6); + halbtc8192e2ant_dec_btpwr(btcoexist, FORCE_EXEC, 0); + + halbtc8192e2ant_coex_table_with_type(btcoexist, FORCE_EXEC, 0); + halbtc8192e2ant_switch_sstype(btcoexist, FORCE_EXEC, 2); + + halbtc8192e2ant_sw_mechanism1(btcoexist, false, false, false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, false, 0x18); +} + +void halbtc8192e2ant_action_bt_inquiry(struct btc_coexist *btcoexist) +{ + bool low_pwr_disable = true; + + btcoexist->btc_set(btcoexist, BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, 1); + + halbtc8192e2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 2); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 3); + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, NORMAL_EXEC, 6); + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + + halbtc8192e2ant_sw_mechanism1(btcoexist, false, false, false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, false, 0x18); +} + +bool halbtc8192e2ant_is_common_action(struct btc_coexist *btcoexist) +{ + struct btc_bt_link_info *bt_link_info = &btcoexist->bt_link_info; + bool common = false, wifi_connected = false, wifi_busy = false; + bool bt_hson = false, low_pwr_disable = false; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hson); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + + if (bt_link_info->sco_exist || bt_link_info->hid_exist) + halbtc8192e2ant_limited_tx(btcoexist, NORMAL_EXEC, 1, 0, 0, 0); + else + halbtc8192e2ant_limited_tx(btcoexist, NORMAL_EXEC, 0, 0, 0, 0); + + if (!wifi_connected) { + low_pwr_disable = false; + btcoexist->btc_set(btcoexist, BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi non-connected idle!!\n"); + + if ((BT_8192E_2ANT_BT_STATUS_NON_CONNECTED_IDLE == + coex_dm->bt_status) || + (BT_8192E_2ANT_BT_STATUS_CONNECTED_IDLE == + coex_dm->bt_status)) { + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, + 2); + halbtc8192e2ant_coex_table_with_type(btcoexist, + NORMAL_EXEC, 1); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, + 0); + } else { + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, + 1); + halbtc8192e2ant_coex_table_with_type(btcoexist, + NORMAL_EXEC, 0); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, + 1); + } + + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, NORMAL_EXEC, 6); + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + + halbtc8192e2ant_sw_mechanism1(btcoexist, false, false, false, + false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, false, + 0x18); + + common = true; + } else { + if (BT_8192E_2ANT_BT_STATUS_NON_CONNECTED_IDLE == + coex_dm->bt_status) { + low_pwr_disable = false; + btcoexist->btc_set(btcoexist, + BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "Wifi connected + BT non connected-idle!!\n"); + + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, + 2); + halbtc8192e2ant_coex_table_with_type(btcoexist, + NORMAL_EXEC, 1); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, + 0); + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, NORMAL_EXEC, + 6); + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + + halbtc8192e2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + + common = true; + } else if (BT_8192E_2ANT_BT_STATUS_CONNECTED_IDLE == + coex_dm->bt_status) { + low_pwr_disable = true; + btcoexist->btc_set(btcoexist, + BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + + if (bt_hson) + return false; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "Wifi connected + BT connected-idle!!\n"); + + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, + 2); + halbtc8192e2ant_coex_table_with_type(btcoexist, + NORMAL_EXEC, 1); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, + 0); + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, NORMAL_EXEC, + 6); + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + + halbtc8192e2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + + common = true; + } else { + low_pwr_disable = true; + btcoexist->btc_set(btcoexist, + BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + + if (wifi_busy) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "Wifi Connected-Busy + BT Busy!!\n"); + common = false; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "Wifi Connected-Idle + BT Busy!!\n"); + + halbtc8192e2ant_switch_sstype(btcoexist, + NORMAL_EXEC, 1); + halbtc8192e2ant_coex_table_with_type(btcoexist, + NORMAL_EXEC, + 2); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 21); + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, + NORMAL_EXEC, 6); + halbtc8192e2ant_dec_btpwr(btcoexist, + NORMAL_EXEC, 0); + halbtc8192e2ant_sw_mechanism1(btcoexist, false, + false, false, + false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, + false, false, + 0x18); + common = true; + } + } + } + return common; +} + +void halbtc8192e2ant_tdma_duration_adjust(struct btc_coexist *btcoexist, + bool sco_hid, bool tx_pause, + u8 max_interval) +{ + static int up, dn, m, n, wait_cnt; + /* 0: no change, +1: increase WiFi duration, + * -1: decrease WiFi duration */ + int result; + u8 retry_cnt = 0; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], TdmaDurationAdjust()\n"); + + if (!coex_dm->auto_tdma_adjust) { + coex_dm->auto_tdma_adjust = true; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], first run TdmaDurationAdjust()!!\n"); + if (sco_hid) { + if (tx_pause) { + if (max_interval == 1) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 13); + coex_dm->ps_tdma_du_adj_type = 13; + } else if (max_interval == 2) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = 14; + } else if (max_interval == 3) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = 15; + } else { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = 15; + } + } else { + if (max_interval == 1) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 9); + coex_dm->ps_tdma_du_adj_type = 9; + } else if (max_interval == 2) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = 10; + } else if (max_interval == 3) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = 11; + } else { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = 11; + } + } + } else { + if (tx_pause) { + if (max_interval == 1) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 5); + coex_dm->ps_tdma_du_adj_type = 5; + } else if (max_interval == 2) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = 6; + } else if (max_interval == 3) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = 7; + } else { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = 7; + } + } else { + if (max_interval == 1) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 1); + coex_dm->ps_tdma_du_adj_type = 1; + } else if (max_interval == 2) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = 2; + } else if (max_interval == 3) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = 3; + } else { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = 3; + } + } + } + + up = 0; + dn = 0; + m = 1; + n= 3; + result = 0; + wait_cnt = 0; + } else { + /* accquire the BT TRx retry count from BT_Info byte2 */ + retry_cnt = coex_sta->bt_retry_cnt; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], retry_cnt = %d\n", retry_cnt); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], up=%d, dn=%d, m=%d, n=%d, wait_cnt=%d\n", + up, dn, m, n, wait_cnt); + result = 0; + wait_cnt++; + /* no retry in the last 2-second duration */ + if (retry_cnt == 0) { + up++; + dn--; + + if (dn <= 0) + dn = 0; + + if (up >= n) { + wait_cnt = 0; + n = 3; + up = 0; + dn = 0; + result = 1; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex]Increase wifi duration!!\n"); + } + } else if (retry_cnt <= 3) { + up--; + dn++; + + if (up <= 0) + up = 0; + + if (dn == 2) { + if (wait_cnt <= 2) + m++; + else + m = 1; + + if (m >= 20) + m = 20; + + n = 3 * m; + up = 0; + dn = 0; + wait_cnt = 0; + result = -1; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "Reduce wifi duration for retry<3\n"); + } + } else { + if (wait_cnt == 1) + m++; + else + m = 1; + + if (m >= 20) + m = 20; + + n = 3*m; + up = 0; + dn = 0; + wait_cnt = 0; + result = -1; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "Decrease wifi duration for retryCounter>3!!\n"); + } + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], max Interval = %d\n", max_interval); + if (max_interval == 1) { + if (tx_pause) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 1\n"); + + if (coex_dm->cur_ps_tdma == 71) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 5); + coex_dm->ps_tdma_du_adj_type = 5; + } else if (coex_dm->cur_ps_tdma == 1) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 5); + coex_dm->ps_tdma_du_adj_type = 5; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = 6; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 4) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 8); + coex_dm->ps_tdma_du_adj_type = 8; + } + if (coex_dm->cur_ps_tdma == 9) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 13); + coex_dm->ps_tdma_du_adj_type = 13; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = 14; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 12) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 16); + coex_dm->ps_tdma_du_adj_type = 16; + } + + if (result == -1) { + if (coex_dm->cur_ps_tdma == 5) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = + 6; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 8); + coex_dm->ps_tdma_du_adj_type = + 8; + } else if (coex_dm->cur_ps_tdma == 13) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = + 14; + } else if (coex_dm->cur_ps_tdma == 14) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } else if (coex_dm->cur_ps_tdma == 15) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 16); + coex_dm->ps_tdma_du_adj_type = + 16; + } + } else if (result == 1) { + if (coex_dm->cur_ps_tdma == 8) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = + 6; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 5); + coex_dm->ps_tdma_du_adj_type = + 5; + } else if (coex_dm->cur_ps_tdma == 16) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } else if (coex_dm->cur_ps_tdma == 15) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = + 14; + } else if (coex_dm->cur_ps_tdma == 14) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 13); + coex_dm->ps_tdma_du_adj_type = + 13; + } + } + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 0\n"); + if (coex_dm->cur_ps_tdma == 5) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 71); + coex_dm->ps_tdma_du_adj_type = 71; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = 2; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = 3; + } else if (coex_dm->cur_ps_tdma == 8) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 4); + coex_dm->ps_tdma_du_adj_type = 4; + } + if (coex_dm->cur_ps_tdma == 13) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 9); + coex_dm->ps_tdma_du_adj_type = 9; + } else if (coex_dm->cur_ps_tdma == 14) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = 10; + } else if (coex_dm->cur_ps_tdma == 15) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = 11; + } else if (coex_dm->cur_ps_tdma == 16) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 12); + coex_dm->ps_tdma_du_adj_type = 12; + } + + if (result == -1) { + if (coex_dm->cur_ps_tdma == 71) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 1); + coex_dm->ps_tdma_du_adj_type = + 1; + } else if (coex_dm->cur_ps_tdma == 1) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = + 2; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 4); + coex_dm->ps_tdma_du_adj_type = + 4; + } else if (coex_dm->cur_ps_tdma == 9) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = + 10; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 12); + coex_dm->ps_tdma_du_adj_type = + 12; + } + } else if (result == 1) { + if (coex_dm->cur_ps_tdma == 4) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = + 2; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 1); + coex_dm->ps_tdma_du_adj_type = + 1; + } else if (coex_dm->cur_ps_tdma == 1) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 71); + coex_dm->ps_tdma_du_adj_type = + 71; + } else if (coex_dm->cur_ps_tdma == 12) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = + 10; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 9); + coex_dm->ps_tdma_du_adj_type = + 9; + } + } + } + } else if (max_interval == 2) { + if (tx_pause) { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 1\n"); + if (coex_dm->cur_ps_tdma == 1) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = 6; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = 6; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 4) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 8); + coex_dm->ps_tdma_du_adj_type = 8; + } + if (coex_dm->cur_ps_tdma == 9) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = 14; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = 14; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 12) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 16); + coex_dm->ps_tdma_du_adj_type = 16; + } + if (result == -1) { + if (coex_dm->cur_ps_tdma == 5) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = + 6; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 8); + coex_dm->ps_tdma_du_adj_type = + 8; + } else if (coex_dm->cur_ps_tdma == 13) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = + 14; + } else if (coex_dm->cur_ps_tdma == 14) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } else if (coex_dm->cur_ps_tdma == 15) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 16); + coex_dm->ps_tdma_du_adj_type = + 16; + } + } else if (result == 1) { + if (coex_dm->cur_ps_tdma == 8) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = + 6; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = + 6; + } else if (coex_dm->cur_ps_tdma == 16) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } else if (coex_dm->cur_ps_tdma == 15) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = + 14; + } else if (coex_dm->cur_ps_tdma == 14) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = + 14; + } + } + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 0\n"); + if (coex_dm->cur_ps_tdma == 5) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = 2; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = 2; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = 3; + } else if (coex_dm->cur_ps_tdma == 8) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 4); + coex_dm->ps_tdma_du_adj_type = 4; + } + if (coex_dm->cur_ps_tdma == 13) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = 10; + } else if (coex_dm->cur_ps_tdma == 14) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = 10; + } else if (coex_dm->cur_ps_tdma == 15) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = 11; + } else if (coex_dm->cur_ps_tdma == 16) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 12); + coex_dm->ps_tdma_du_adj_type = 12; + } + if (result == -1) { + if (coex_dm->cur_ps_tdma == 1) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = + 2; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 4); + coex_dm->ps_tdma_du_adj_type = + 4; + } else if (coex_dm->cur_ps_tdma == 9) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = + 10; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 12); + coex_dm->ps_tdma_du_adj_type = + 12; + } + } else if (result == 1) { + if (coex_dm->cur_ps_tdma == 4) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = + 2; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = + 2; + } else if(coex_dm->cur_ps_tdma == 12) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } else if(coex_dm->cur_ps_tdma == 11) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = + 10; + } else if(coex_dm->cur_ps_tdma == 10) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = + 10; + } + } + } + } else if (max_interval == 3) { + if (tx_pause) { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 1\n"); + if (coex_dm->cur_ps_tdma == 1) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 4) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 8); + coex_dm->ps_tdma_du_adj_type = 8; + } + if (coex_dm->cur_ps_tdma == 9) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 12) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 16); + coex_dm->ps_tdma_du_adj_type = 16; + } + if (result == -1) { + if (coex_dm->cur_ps_tdma == 5) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 8); + coex_dm->ps_tdma_du_adj_type = + 8; + } else if (coex_dm->cur_ps_tdma == 13) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } else if (coex_dm->cur_ps_tdma == 14) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } else if (coex_dm->cur_ps_tdma == 15) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 16); + coex_dm->ps_tdma_du_adj_type = + 16; + } + } else if (result == 1) { + if (coex_dm->cur_ps_tdma == 8) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 16) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } else if (coex_dm->cur_ps_tdma == 15) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } else if (coex_dm->cur_ps_tdma == 14) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } + } + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 0\n"); + if (coex_dm->cur_ps_tdma == 5) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = 3; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = 3; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = 3; + } else if (coex_dm->cur_ps_tdma == 8) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 4); + coex_dm->ps_tdma_du_adj_type = 4; + } + if (coex_dm->cur_ps_tdma == 13) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = 11; + } else if (coex_dm->cur_ps_tdma == 14) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = 11; + } else if (coex_dm->cur_ps_tdma == 15) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = 11; + } else if (coex_dm->cur_ps_tdma == 16) { + halbtc8192e2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 12); + coex_dm->ps_tdma_du_adj_type = 12; + } + if (result == -1) { + if (coex_dm->cur_ps_tdma == 1) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 4); + coex_dm->ps_tdma_du_adj_type = + 4; + } else if (coex_dm->cur_ps_tdma == 9) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 12); + coex_dm->ps_tdma_du_adj_type = + 12; + } + } else if (result == 1) { + if (coex_dm->cur_ps_tdma == 4) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 12) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8192e2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } + } + } + } + } + + /* if current PsTdma not match with + * the recorded one (when scan, dhcp...), + * then we have to adjust it back to the previous record one. */ + if (coex_dm->cur_ps_tdma != coex_dm->ps_tdma_du_adj_type) { + bool scan = false, link = false, roam = false; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], PsTdma type dismatch!!!, " ); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "curPsTdma=%d, recordPsTdma=%d\n", + coex_dm->cur_ps_tdma, coex_dm->ps_tdma_du_adj_type); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_SCAN, &scan); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_LINK, &link); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_ROAM, &roam); + + if ( !scan && !link && !roam) + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, + coex_dm->ps_tdma_du_adj_type); + else + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], roaming/link/scan is under progress, will adjust next time!!!\n"); + } +} + +/* SCO only or SCO+PAN(HS) */ +void halbtc8192e2ant_action_sco(struct btc_coexist *btcoexist) +{ + u8 wifirssi_state, btrssi_state = BTC_RSSI_STATE_STAY_LOW; + u32 wifi_bw; + + wifirssi_state = halbtc8192e2ant_wifirssi_state(btcoexist, 0, 2, 15, 0); + + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, 1); + halbtc8192e2ant_limited_rx(btcoexist, NORMAL_EXEC, false, false, 0x8); + + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, NORMAL_EXEC, 6); + + halbtc8192e2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 4); + + btrssi_state = halbtc8192e2ant_btrssi_state(3, 34, 42); + + if ((btrssi_state == BTC_RSSI_STATE_LOW) || + (btrssi_state == BTC_RSSI_STATE_STAY_LOW)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 13); + } else if ((btrssi_state == BTC_RSSI_STATE_MEDIUM) || + (btrssi_state == BTC_RSSI_STATE_STAY_MEDIUM)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 2); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 9); + } else if ((btrssi_state == BTC_RSSI_STATE_HIGH) || + (btrssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 4); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 9); + } + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x6); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x6); + } + } else { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x6); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x6); + } + } +} + +void halbtc8192e2ant_action_sco_pan(struct btc_coexist *btcoexist) +{ + u8 wifirssi_state, btrssi_state = BTC_RSSI_STATE_STAY_LOW; + u32 wifi_bw; + + wifirssi_state = halbtc8192e2ant_wifirssi_state(btcoexist, 0, 2, 15, 0); + + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, 1); + halbtc8192e2ant_limited_rx(btcoexist, NORMAL_EXEC, false, false, 0x8); + + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, NORMAL_EXEC, 6); + + halbtc8192e2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 4); + + btrssi_state = halbtc8192e2ant_btrssi_state(3, 34, 42); + + if ((btrssi_state == BTC_RSSI_STATE_LOW) || + (btrssi_state == BTC_RSSI_STATE_STAY_LOW)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 14); + } else if ((btrssi_state == BTC_RSSI_STATE_MEDIUM) || + (btrssi_state == BTC_RSSI_STATE_STAY_MEDIUM)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 2); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 10); + } else if ((btrssi_state == BTC_RSSI_STATE_HIGH) || + (btrssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 4); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 10); + } + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x6); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x6); + } + } else { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x6); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x6); + } + } +} + +void halbtc8192e2ant_action_hid(struct btc_coexist *btcoexist) +{ + u8 wifirssi_state, btrssi_state=BTC_RSSI_STATE_HIGH; + u32 wifi_bw; + + wifirssi_state = halbtc8192e2ant_wifirssi_state(btcoexist, 0, 2, 15, 0); + btrssi_state = halbtc8192e2ant_btrssi_state(3, 34, 42); + + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, 1); + halbtc8192e2ant_limited_rx(btcoexist, NORMAL_EXEC, false, false, 0x8); + + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, NORMAL_EXEC, 6); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + halbtc8192e2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 3); + + if ((btrssi_state == BTC_RSSI_STATE_LOW) || + (btrssi_state == BTC_RSSI_STATE_STAY_LOW)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 13); + } else if ((btrssi_state == BTC_RSSI_STATE_MEDIUM) || + (btrssi_state == BTC_RSSI_STATE_STAY_MEDIUM)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 2); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 9); + } else if ((btrssi_state == BTC_RSSI_STATE_HIGH) || + (btrssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 4); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 9); + } + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +/* A2DP only / PAN(EDR) only/ A2DP+PAN(HS) */ +void halbtc8192e2ant_action_a2dp(struct btc_coexist *btcoexist) +{ + u8 wifirssi_state, btrssi_state = BTC_RSSI_STATE_HIGH; + u32 wifi_bw; + bool long_dist = false; + + wifirssi_state = halbtc8192e2ant_wifirssi_state(btcoexist, 0, 2, 15, 0); + btrssi_state = halbtc8192e2ant_btrssi_state(3, 34, 42); + + if ((btrssi_state == BTC_RSSI_STATE_LOW || + btrssi_state == BTC_RSSI_STATE_STAY_LOW) && + (wifirssi_state == BTC_RSSI_STATE_LOW || + wifirssi_state == BTC_RSSI_STATE_STAY_LOW)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], A2dp, wifi/bt rssi both LOW!!\n"); + long_dist = true; + } + if (long_dist) { + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, 2); + halbtc8192e2ant_limited_rx(btcoexist, NORMAL_EXEC, false, true, + 0x4); + } else { + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, 1); + halbtc8192e2ant_limited_rx(btcoexist, NORMAL_EXEC, false, false, + 0x8); + } + + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, NORMAL_EXEC, 6); + + if (long_dist) + halbtc8192e2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 0); + else + halbtc8192e2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 2); + + + if (long_dist) { + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 17); + coex_dm->auto_tdma_adjust = false; + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + } else { + if ((btrssi_state == BTC_RSSI_STATE_LOW) || + (btrssi_state == BTC_RSSI_STATE_STAY_LOW)) { + halbtc8192e2ant_tdma_duration_adjust(btcoexist, false, + true, 1); + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + } else if ((btrssi_state == BTC_RSSI_STATE_MEDIUM) || + (btrssi_state == BTC_RSSI_STATE_STAY_MEDIUM)) { + halbtc8192e2ant_tdma_duration_adjust(btcoexist, false, + false, 1); + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 2); + } else if ((btrssi_state == BTC_RSSI_STATE_HIGH) || + (btrssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_tdma_duration_adjust(btcoexist, false, + false, 1); + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 4); + } + } + + /* sw mechanism */ + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +void halbtc8192e2ant_action_a2dp_pan_hs(struct btc_coexist *btcoexist) +{ + u8 wifirssi_state, btrssi_state = BTC_RSSI_STATE_HIGH; + u32 wifi_bw; + + wifirssi_state = halbtc8192e2ant_wifirssi_state(btcoexist, 0, 2, 15, 0); + btrssi_state = halbtc8192e2ant_btrssi_state(3, 34, 42); + + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, 1); + halbtc8192e2ant_limited_rx(btcoexist, NORMAL_EXEC, false, false, 0x8); + + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, NORMAL_EXEC, 6); + halbtc8192e2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 2); + + if ((btrssi_state == BTC_RSSI_STATE_LOW) || + (btrssi_state == BTC_RSSI_STATE_STAY_LOW)) { + halbtc8192e2ant_tdma_duration_adjust(btcoexist, false, true, 2); + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + } else if ((btrssi_state == BTC_RSSI_STATE_MEDIUM) || + (btrssi_state == BTC_RSSI_STATE_STAY_MEDIUM)) { + halbtc8192e2ant_tdma_duration_adjust(btcoexist, false, false, + 2); + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 2); + } else if ((btrssi_state == BTC_RSSI_STATE_HIGH) || + (btrssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_tdma_duration_adjust(btcoexist, false, false, + 2); + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 4); + } + + /* sw mechanism */ + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + true, 0x6); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + true, 0x6); + } + } else { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + true, 0x6); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + true, 0x6); + } + } +} + +void halbtc8192e2ant_action_pan_edr(struct btc_coexist *btcoexist) +{ + u8 wifirssi_state, btrssi_state = BTC_RSSI_STATE_HIGH; + u32 wifi_bw; + + wifirssi_state = halbtc8192e2ant_wifirssi_state(btcoexist, 0, 2, 15, 0); + btrssi_state = halbtc8192e2ant_btrssi_state(3, 34, 42); + + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, 1); + halbtc8192e2ant_limited_rx(btcoexist, NORMAL_EXEC, false, false, 0x8); + + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, NORMAL_EXEC, 6); + + halbtc8192e2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 2); + + if ((btrssi_state == BTC_RSSI_STATE_LOW) || + (btrssi_state == BTC_RSSI_STATE_STAY_LOW)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 5); + } else if ((btrssi_state == BTC_RSSI_STATE_MEDIUM) || + (btrssi_state == BTC_RSSI_STATE_STAY_MEDIUM)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 2); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 1); + } else if ((btrssi_state == BTC_RSSI_STATE_HIGH) || + (btrssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 4); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 1); + } + + /* sw mechanism */ + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +/* PAN(HS) only */ +void halbtc8192e2ant_action_pan_hs(struct btc_coexist *btcoexist) +{ + u8 wifirssi_state, btrssi_state = BTC_RSSI_STATE_HIGH; + u32 wifi_bw; + + wifirssi_state = halbtc8192e2ant_wifirssi_state(btcoexist, 0, 2, 15, 0); + btrssi_state = halbtc8192e2ant_btrssi_state(3, 34, 42); + + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, 1); + halbtc8192e2ant_limited_rx(btcoexist, NORMAL_EXEC, false, false, 0x8); + + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, NORMAL_EXEC, 6); + + halbtc8192e2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 2); + + if ((btrssi_state == BTC_RSSI_STATE_LOW) || + (btrssi_state == BTC_RSSI_STATE_STAY_LOW)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + } else if ((btrssi_state == BTC_RSSI_STATE_MEDIUM) || + (btrssi_state == BTC_RSSI_STATE_STAY_MEDIUM)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 2); + } else if ((btrssi_state == BTC_RSSI_STATE_HIGH) || + (btrssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 4); + } + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 1); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +/* PAN(EDR)+A2DP */ +void halbtc8192e2ant_action_pan_edr_a2dp(struct btc_coexist *btcoexist) +{ + u8 wifirssi_state, btrssi_state=BTC_RSSI_STATE_HIGH; + u32 wifi_bw; + + wifirssi_state = halbtc8192e2ant_wifirssi_state(btcoexist, 0, 2, 15, 0); + btrssi_state = halbtc8192e2ant_btrssi_state(3, 34, 42); + + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, 1); + halbtc8192e2ant_limited_rx(btcoexist, NORMAL_EXEC, false, false, 0x8); + + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, NORMAL_EXEC, 6); + + halbtc8192e2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 2); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if ((btrssi_state == BTC_RSSI_STATE_LOW) || + (btrssi_state == BTC_RSSI_STATE_STAY_LOW)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + halbtc8192e2ant_tdma_duration_adjust(btcoexist, false, true, 3); + } else if ((btrssi_state == BTC_RSSI_STATE_MEDIUM) || + (btrssi_state == BTC_RSSI_STATE_STAY_MEDIUM)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 2); + halbtc8192e2ant_tdma_duration_adjust(btcoexist, false, false, + 3); + } else if ((btrssi_state == BTC_RSSI_STATE_HIGH) || + (btrssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 4); + halbtc8192e2ant_tdma_duration_adjust(btcoexist, false, false, + 3); + } + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +void halbtc8192e2ant_action_pan_edr_hid(struct btc_coexist *btcoexist) +{ + u8 wifirssi_state, btrssi_state = BTC_RSSI_STATE_HIGH; + u32 wifi_bw; + + wifirssi_state = halbtc8192e2ant_wifirssi_state(btcoexist, 0, 2, 15, 0); + btrssi_state = halbtc8192e2ant_btrssi_state(3, 34, 42); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, 1); + halbtc8192e2ant_limited_rx(btcoexist, NORMAL_EXEC, false, false, 0x8); + + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, NORMAL_EXEC, 6); + + halbtc8192e2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 3); + + if ((btrssi_state == BTC_RSSI_STATE_LOW) || + (btrssi_state == BTC_RSSI_STATE_STAY_LOW)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 14); + } else if ((btrssi_state == BTC_RSSI_STATE_MEDIUM) || + (btrssi_state == BTC_RSSI_STATE_STAY_MEDIUM)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 2); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 10); + } else if ((btrssi_state == BTC_RSSI_STATE_HIGH) || + (btrssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 4); + halbtc8192e2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 10); + } + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +/* HID+A2DP+PAN(EDR) */ +void halbtc8192e2ant_action_hid_a2dp_pan_edr(struct btc_coexist *btcoexist) +{ + u8 wifirssi_state, btrssi_state = BTC_RSSI_STATE_HIGH; + u32 wifi_bw; + + wifirssi_state = halbtc8192e2ant_wifirssi_state(btcoexist, 0, 2, 15, 0); + btrssi_state = halbtc8192e2ant_btrssi_state(3, 34, 42); + + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, 1); + halbtc8192e2ant_limited_rx(btcoexist, NORMAL_EXEC, false, false, 0x8); + + halbtc8192e2ant_fw_dac_swinglvl(btcoexist, NORMAL_EXEC, 6); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + halbtc8192e2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 3); + + if ((btrssi_state == BTC_RSSI_STATE_LOW) || + (btrssi_state == BTC_RSSI_STATE_STAY_LOW)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + halbtc8192e2ant_tdma_duration_adjust(btcoexist, true, true, 3); + } else if ((btrssi_state == BTC_RSSI_STATE_MEDIUM) || + (btrssi_state == BTC_RSSI_STATE_STAY_MEDIUM)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 2); + halbtc8192e2ant_tdma_duration_adjust(btcoexist, true, false, 3); + } else if ((btrssi_state == BTC_RSSI_STATE_HIGH) || + (btrssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 4); + halbtc8192e2ant_tdma_duration_adjust(btcoexist, true, false, 3); + } + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +void halbtc8192e2ant_action_hid_a2dp(struct btc_coexist *btcoexist) +{ + u8 wifirssi_state, btrssi_state = BTC_RSSI_STATE_HIGH; + u32 wifi_bw; + + wifirssi_state = halbtc8192e2ant_wifirssi_state(btcoexist, 0, 2, 15, 0); + btrssi_state = halbtc8192e2ant_btrssi_state(3, 34, 42); + + halbtc8192e2ant_switch_sstype(btcoexist, NORMAL_EXEC, 1); + halbtc8192e2ant_limited_rx(btcoexist, NORMAL_EXEC, false, false, 0x8); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + halbtc8192e2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 3); + + if ((btrssi_state == BTC_RSSI_STATE_LOW) || + (btrssi_state == BTC_RSSI_STATE_STAY_LOW)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 0); + halbtc8192e2ant_tdma_duration_adjust(btcoexist, true, true, 2); + } else if ((btrssi_state == BTC_RSSI_STATE_MEDIUM) || + (btrssi_state == BTC_RSSI_STATE_STAY_MEDIUM)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 2); + halbtc8192e2ant_tdma_duration_adjust(btcoexist, true, false, 2); + } else if ((btrssi_state == BTC_RSSI_STATE_HIGH) || + (btrssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_dec_btpwr(btcoexist, NORMAL_EXEC, 4); + halbtc8192e2ant_tdma_duration_adjust(btcoexist, true, false, 2); + } + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifirssi_state == BTC_RSSI_STATE_HIGH) || + (wifirssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8192e2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8192e2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +void halbtc8192e2ant_run_coexist_mechanism(struct btc_coexist *btcoexist) +{ + u8 algorithm = 0; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], RunCoexistMechanism()===>\n"); + + if (btcoexist->manual_control) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], return for Manual CTRL <===\n"); + return; + } + + if (coex_sta->under_ips) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], wifi is under IPS !!!\n"); + return; + } + + algorithm = halbtc8192e2ant_action_algorithm(btcoexist); + if (coex_sta->c2h_bt_inquiry_page && + (BT_8192E_2ANT_COEX_ALGO_PANHS != algorithm)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT is under inquiry/page scan !!\n"); + halbtc8192e2ant_action_bt_inquiry(btcoexist); + return; + } + + coex_dm->cur_algorithm = algorithm; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Algorithm = %d \n", coex_dm->cur_algorithm); + + if (halbtc8192e2ant_is_common_action(btcoexist)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant common.\n"); + coex_dm->auto_tdma_adjust = false; + } else { + if (coex_dm->cur_algorithm != coex_dm->pre_algorithm) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex] preAlgorithm=%d, curAlgorithm=%d\n", + coex_dm->pre_algorithm, + coex_dm->cur_algorithm); + coex_dm->auto_tdma_adjust = false; + } + switch (coex_dm->cur_algorithm) { + case BT_8192E_2ANT_COEX_ALGO_SCO: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "Action 2-Ant, algorithm = SCO.\n"); + halbtc8192e2ant_action_sco(btcoexist); + break; + case BT_8192E_2ANT_COEX_ALGO_SCO_PAN: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "Action 2-Ant, algorithm = SCO+PAN(EDR).\n"); + halbtc8192e2ant_action_sco_pan(btcoexist); + break; + case BT_8192E_2ANT_COEX_ALGO_HID: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "Action 2-Ant, algorithm = HID.\n"); + halbtc8192e2ant_action_hid(btcoexist); + break; + case BT_8192E_2ANT_COEX_ALGO_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "Action 2-Ant, algorithm = A2DP.\n"); + halbtc8192e2ant_action_a2dp(btcoexist); + break; + case BT_8192E_2ANT_COEX_ALGO_A2DP_PANHS: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "Action 2-Ant, algorithm = A2DP+PAN(HS).\n"); + halbtc8192e2ant_action_a2dp_pan_hs(btcoexist); + break; + case BT_8192E_2ANT_COEX_ALGO_PANEDR: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "Action 2-Ant, algorithm = PAN(EDR).\n"); + halbtc8192e2ant_action_pan_edr(btcoexist); + break; + case BT_8192E_2ANT_COEX_ALGO_PANHS: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "Action 2-Ant, algorithm = HS mode.\n"); + halbtc8192e2ant_action_pan_hs(btcoexist); + break; + case BT_8192E_2ANT_COEX_ALGO_PANEDR_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "Action 2-Ant, algorithm = PAN+A2DP.\n"); + halbtc8192e2ant_action_pan_edr_a2dp(btcoexist); + break; + case BT_8192E_2ANT_COEX_ALGO_PANEDR_HID: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "Action 2-Ant, algorithm = PAN(EDR)+HID.\n"); + halbtc8192e2ant_action_pan_edr_hid(btcoexist); + break; + case BT_8192E_2ANT_COEX_ALGO_HID_A2DP_PANEDR: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "Action 2-Ant, algorithm = HID+A2DP+PAN.\n"); + halbtc8192e2ant_action_hid_a2dp_pan_edr(btcoexist); + break; + case BT_8192E_2ANT_COEX_ALGO_HID_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "Action 2-Ant, algorithm = HID+A2DP.\n"); + halbtc8192e2ant_action_hid_a2dp(btcoexist); + break; + default: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "Action 2-Ant, algorithm = unknown!!\n"); + /* halbtc8192e2ant_coex_alloff(btcoexist); */ + break; + } + coex_dm->pre_algorithm = coex_dm->cur_algorithm; + } +} + +void halbtc8192e2ant_init_hwconfig(struct btc_coexist *btcoexist, bool backup) +{ + u16 u16tmp = 0; + u8 u8tmp = 0; + + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], 2Ant Init HW Config!!\n"); + + if (backup) { + /* backup rf 0x1e value */ + coex_dm->bt_rf0x1e_backup = + btcoexist->btc_get_rf_reg(btcoexist, BTC_RF_A, + 0x1e, 0xfffff); + + coex_dm->backup_arfr_cnt1 = btcoexist->btc_read_4byte(btcoexist, + 0x430); + coex_dm->backup_arfr_cnt2 = btcoexist->btc_read_4byte(btcoexist, + 0x434); + coex_dm->backup_retrylimit = btcoexist->btc_read_2byte( + btcoexist, + 0x42a); + coex_dm->backup_ampdu_maxtime = btcoexist->btc_read_1byte( + btcoexist, + 0x456); + } + + /* antenna sw ctrl to bt */ + btcoexist->btc_write_1byte(btcoexist, 0x4f, 0x6); + btcoexist->btc_write_1byte(btcoexist, 0x944, 0x24); + btcoexist->btc_write_4byte(btcoexist, 0x930, 0x700700); + btcoexist->btc_write_1byte(btcoexist, 0x92c, 0x20); + if (btcoexist->chip_interface == BTC_INTF_USB) + btcoexist->btc_write_4byte(btcoexist, 0x64, 0x30430004); + else + btcoexist->btc_write_4byte(btcoexist, 0x64, 0x30030004); + + halbtc8192e2ant_coex_table_with_type(btcoexist, FORCE_EXEC, 0); + + /* antenna switch control parameter */ + btcoexist->btc_write_4byte(btcoexist, 0x858, 0x55555555); + + /* coex parameters */ + btcoexist->btc_write_1byte(btcoexist, 0x778, 0x3); + /* 0x790[5:0]=0x5 */ + u8tmp = btcoexist->btc_read_1byte(btcoexist, 0x790); + u8tmp &= 0xc0; + u8tmp |= 0x5; + btcoexist->btc_write_1byte(btcoexist, 0x790, u8tmp); + + /* enable counter statistics */ + btcoexist->btc_write_1byte(btcoexist, 0x76e, 0x4); + + /* enable PTA */ + btcoexist->btc_write_1byte(btcoexist, 0x40, 0x20); + /* enable mailbox interface */ + u16tmp = btcoexist->btc_read_2byte(btcoexist, 0x40); + u16tmp |= BIT9; + btcoexist->btc_write_2byte(btcoexist, 0x40, u16tmp); + + /* enable PTA I2C mailbox */ + u8tmp = btcoexist->btc_read_1byte(btcoexist, 0x101); + u8tmp |= BIT4; + btcoexist->btc_write_1byte(btcoexist, 0x101, u8tmp); + + /* enable bt clock when wifi is disabled. */ + u8tmp = btcoexist->btc_read_1byte(btcoexist, 0x93); + u8tmp |= BIT0; + btcoexist->btc_write_1byte(btcoexist, 0x93, u8tmp); + /* enable bt clock when suspend. */ + u8tmp = btcoexist->btc_read_1byte(btcoexist, 0x7); + u8tmp |= BIT0; + btcoexist->btc_write_1byte(btcoexist, 0x7, u8tmp); +} + +/************************************************************* + * work around function start with wa_halbtc8192e2ant_ + *************************************************************/ + +/************************************************************ + * extern function start with EXhalbtc8192e2ant_ + ************************************************************/ + +void ex_halbtc8192e2ant_init_hwconfig(struct btc_coexist *btcoexist) +{ + halbtc8192e2ant_init_hwconfig(btcoexist, true); +} + +void ex_halbtc8192e2ant_init_coex_dm(struct btc_coexist *btcoexist) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], Coex Mechanism Init!!\n"); + halbtc8192e2ant_init_coex_dm(btcoexist); +} + +void ex_halbtc8192e2ant_display_coex_info(struct btc_coexist *btcoexist) +{ + struct btc_board_info *board_info = &btcoexist->board_info; + struct btc_stack_info*stack_info = &btcoexist->stack_info; + u8 *cli_buf = btcoexist->cli_buf; + u8 u8tmp[4], i, bt_info_ext, ps_tdma_case = 0; + u16 u16tmp[4]; + u32 u32tmp[4]; + bool roam = false, scan = false, link = false, wifi_under_5g = false; + bool bt_hson = false, wifi_busy = false; + int wifirssi = 0, bt_hs_rssi = 0; + u32 wifi_bw, wifi_traffic_dir; + u8 wifi_dot11_chnl, wifi_hs_chnl; + u32 fw_ver = 0, bt_patch_ver = 0; + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n ============[BT Coexist info]============"); + CL_PRINTF(cli_buf); + + if (btcoexist->manual_control) { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n ===========[Under Manual Control]==========="); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n =========================================="); + CL_PRINTF(cli_buf); + } + + if (!board_info->bt_exist) { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n BT not exists !!!"); + CL_PRINTF(cli_buf); + return; + } + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = %d/ %d ", "Ant PG number/ Ant mechanism:", + board_info->pg_ant_num, board_info->btdm_ant_num); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %d", + "BT stack/ hci ext ver", + ((stack_info->profile_notified) ? "Yes" : "No"), + stack_info->hci_version); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_BT_PATCH_VER, &bt_patch_ver); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_FW_VER, &fw_ver); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = %d_%d/ 0x%x/ 0x%x(%d)", + "CoexVer/ FwVer/ PatchVer", + glcoex_ver_date_8192e_2ant, glcoex_ver_8192e_2ant, + fw_ver, bt_patch_ver, bt_patch_ver); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hson); + btcoexist->btc_get(btcoexist, BTC_GET_U1_WIFI_DOT11_CHNL, + &wifi_dot11_chnl); + btcoexist->btc_get(btcoexist, BTC_GET_U1_WIFI_HS_CHNL, &wifi_hs_chnl); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d / %d(%d)", + "Dot11 channel / HsMode(HsChnl)", + wifi_dot11_chnl, bt_hson, wifi_hs_chnl); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x ", + "H2C Wifi inform bt chnl Info", coex_dm->wifi_chnl_info[0], + coex_dm->wifi_chnl_info[1], coex_dm->wifi_chnl_info[2]); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_S4_WIFI_RSSI, &wifirssi); + btcoexist->btc_get(btcoexist, BTC_GET_S4_HS_RSSI, &bt_hs_rssi); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", + "Wifi rssi/ HS rssi", wifirssi, bt_hs_rssi); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_SCAN, &scan); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_LINK, &link); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_ROAM, &roam); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d ", + "Wifi link/ roam/ scan", link, roam, scan); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_UNDER_5G, &wifi_under_5g); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_TRAFFIC_DIRECTION, + &wifi_traffic_dir); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %s/ %s ", + "Wifi status", (wifi_under_5g ? "5G" : "2.4G"), + ((BTC_WIFI_BW_LEGACY == wifi_bw) ? "Legacy" : + (((BTC_WIFI_BW_HT40 == wifi_bw) ? "HT40" : "HT20"))), + ((!wifi_busy) ? "idle" : + ((BTC_WIFI_TRAFFIC_TX == wifi_traffic_dir) ? + "uplink" : "downlink"))); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = [%s/ %d/ %d] ", + "BT [status/ rssi/ retryCnt]", + ((btcoexist->bt_info.bt_disabled) ? ("disabled") : + ((coex_sta->c2h_bt_inquiry_page) ? + ("inquiry/page scan") : + ((BT_8192E_2ANT_BT_STATUS_NON_CONNECTED_IDLE == + coex_dm->bt_status) ? "non-connected idle" : + ((BT_8192E_2ANT_BT_STATUS_CONNECTED_IDLE == + coex_dm->bt_status) ? "connected-idle" : "busy")))), + coex_sta->bt_rssi, coex_sta->bt_retry_cnt); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d / %d / %d / %d", + "SCO/HID/PAN/A2DP", stack_info->sco_exist, + stack_info->hid_exist, stack_info->pan_exist, + stack_info->a2dp_exist); + CL_PRINTF(cli_buf); + btcoexist->btc_disp_dbg_msg(btcoexist, BTC_DBG_DISP_BT_LINK_INFO); + + bt_info_ext = coex_sta->bt_info_ext; + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s", + "BT Info A2DP rate", + (bt_info_ext&BIT0) ? "Basic rate" : "EDR rate"); + CL_PRINTF(cli_buf); + + for (i=0; ibt_info_c2h_cnt[i]) { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = %02x %02x %02x %02x ", + GLBtInfoSrc8192e2Ant[i], + coex_sta->bt_info_c2h[i][0], + coex_sta->bt_info_c2h[i][1], + coex_sta->bt_info_c2h[i][2], + coex_sta->bt_info_c2h[i][3]); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "%02x %02x %02x(%d)", + coex_sta->bt_info_c2h[i][4], + coex_sta->bt_info_c2h[i][5], + coex_sta->bt_info_c2h[i][6], + coex_sta->bt_info_c2h_cnt[i]); + CL_PRINTF(cli_buf); + } + } + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s/%s", + "PS state, IPS/LPS", + ((coex_sta->under_ips ? "IPS ON" : "IPS OFF")), + ((coex_sta->under_lps ? "LPS ON" : "LPS OFF"))); + CL_PRINTF(cli_buf); + btcoexist->btc_disp_dbg_msg(btcoexist, BTC_DBG_DISP_FW_PWR_MODE_CMD); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x ", "SS Type", + coex_dm->cur_sstype); + CL_PRINTF(cli_buf); + + /* Sw mechanism */ + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s", + "============[Sw mechanism]============"); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d ", + "SM1[ShRf/ LpRA/ LimDig]", coex_dm->cur_rf_rx_lpf_shrink, + coex_dm->cur_low_penalty_ra, coex_dm->limited_dig); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d(0x%x) ", + "SM2[AgcT/ AdcB/ SwDacSwing(lvl)]", + coex_dm->cur_agc_table_en, coex_dm->cur_adc_back_off, + coex_dm->cur_dac_swing_on, coex_dm->cur_dac_swing_lvl); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x ", "Rate Mask", + btcoexist->bt_info.ra_mask); + CL_PRINTF(cli_buf); + + /* Fw mechanism */ + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s", + "============[Fw mechanism]============"); + CL_PRINTF(cli_buf); + + ps_tdma_case = coex_dm->cur_ps_tdma; + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = %02x %02x %02x %02x %02x case-%d (auto:%d)", + "PS TDMA", coex_dm->ps_tdma_para[0], + coex_dm->ps_tdma_para[1], coex_dm->ps_tdma_para[2], + coex_dm->ps_tdma_para[3], coex_dm->ps_tdma_para[4], + ps_tdma_case, coex_dm->auto_tdma_adjust); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d ", + "DecBtPwr/ IgnWlanAct", + coex_dm->cur_dec_bt_pwr, coex_dm->cur_ignore_wlan_act); + CL_PRINTF(cli_buf); + + /* Hw setting */ + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s", + "============[Hw setting]============"); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", + "RF-A, 0x1e initVal", coex_dm->bt_rf0x1e_backup); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/0x%x/0x%x/0x%x", + "backup ARFR1/ARFR2/RL/AMaxTime", coex_dm->backup_arfr_cnt1, + coex_dm->backup_arfr_cnt2, coex_dm->backup_retrylimit, + coex_dm->backup_ampdu_maxtime); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x430); + u32tmp[1] = btcoexist->btc_read_4byte(btcoexist, 0x434); + u16tmp[0] = btcoexist->btc_read_2byte(btcoexist, 0x42a); + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x456); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/0x%x/0x%x/0x%x", + "0x430/0x434/0x42a/0x456", + u32tmp[0], u32tmp[1], u16tmp[0], u8tmp[0]); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0xc04); + u32tmp[1] = btcoexist->btc_read_4byte(btcoexist, 0xd04); + u32tmp[2] = btcoexist->btc_read_4byte(btcoexist, 0x90c); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", + "0xc04/ 0xd04/ 0x90c", u32tmp[0], u32tmp[1], u32tmp[2]); + CL_PRINTF(cli_buf); + + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x778); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "0x778", + u8tmp[0]); + CL_PRINTF(cli_buf); + + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x92c); + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x930); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", + "0x92c/ 0x930", (u8tmp[0]), u32tmp[0]); + CL_PRINTF(cli_buf); + + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x40); + u8tmp[1] = btcoexist->btc_read_1byte(btcoexist, 0x4f); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", + "0x40/ 0x4f", u8tmp[0], u8tmp[1]); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x550); + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x522); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", + "0x550(bcn ctrl)/0x522", u32tmp[0], u8tmp[0]); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0xc50); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "0xc50(dig)", + u32tmp[0]); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x6c0); + u32tmp[1] = btcoexist->btc_read_4byte(btcoexist, 0x6c4); + u32tmp[2] = btcoexist->btc_read_4byte(btcoexist, 0x6c8); + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x6cc); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = 0x%x/ 0x%x/ 0x%x/ 0x%x", + "0x6c0/0x6c4/0x6c8/0x6cc(coexTable)", + u32tmp[0], u32tmp[1], u32tmp[2], u8tmp[0]); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", + "0x770(hp rx[31:16]/tx[15:0])", + coex_sta->high_priority_rx, coex_sta->high_priority_tx); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", + "0x774(lp rx[31:16]/tx[15:0])", + coex_sta->low_priority_rx, coex_sta->low_priority_tx); + CL_PRINTF(cli_buf); +#if(BT_AUTO_REPORT_ONLY_8192E_2ANT == 1) + halbtc8192e2ant_monitor_bt_ctr(btcoexist); +#endif + btcoexist->btc_disp_dbg_msg(btcoexist, BTC_DBG_DISP_COEX_STATISTICS); +} + + +void ex_halbtc8192e2ant_ips_notify(struct btc_coexist *btcoexist, u8 type) +{ + if (BTC_IPS_ENTER == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], IPS ENTER notify\n"); + coex_sta->under_ips = true; + halbtc8192e2ant_coex_alloff(btcoexist); + } else if (BTC_IPS_LEAVE == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], IPS LEAVE notify\n"); + coex_sta->under_ips = false; + } +} + +void ex_halbtc8192e2ant_lps_notify(struct btc_coexist *btcoexist, u8 type) +{ + if (BTC_LPS_ENABLE == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], LPS ENABLE notify\n"); + coex_sta->under_lps = true; + } else if (BTC_LPS_DISABLE == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], LPS DISABLE notify\n"); + coex_sta->under_lps = false; + } +} + +void ex_halbtc8192e2ant_scan_notify(struct btc_coexist *btcoexist, u8 type) +{ + if (BTC_SCAN_START == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], SCAN START notify\n"); + else if(BTC_SCAN_FINISH == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], SCAN FINISH notify\n"); +} + +void ex_halbtc8192e2ant_connect_notify(struct btc_coexist *btcoexist, u8 type) +{ + if (BTC_ASSOCIATE_START == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], CONNECT START notify\n"); + else if(BTC_ASSOCIATE_FINISH == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], CONNECT FINISH notify\n"); +} + +void ex_halbtc8192e2ant_media_status_notify(struct btc_coexist *btcoexist, + u8 type) +{ + u8 h2c_parameter[3] ={0}; + u32 wifi_bw; + u8 wifi_center_chnl; + + if (btcoexist->manual_control || + btcoexist->stop_coex_dm || + btcoexist->bt_info.bt_disabled) + return; + + if (BTC_MEDIA_CONNECT == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], MEDIA connect notify\n"); + else + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], MEDIA disconnect notify\n"); + + /* only 2.4G we need to inform bt the chnl mask */ + btcoexist->btc_get(btcoexist, BTC_GET_U1_WIFI_CENTRAL_CHNL, + &wifi_center_chnl); + if ((BTC_MEDIA_CONNECT == type) && + (wifi_center_chnl <= 14)) { + h2c_parameter[0] = 0x1; + h2c_parameter[1] = wifi_center_chnl; + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) + h2c_parameter[2] = 0x30; + else + h2c_parameter[2] = 0x20; + } + + coex_dm->wifi_chnl_info[0] = h2c_parameter[0]; + coex_dm->wifi_chnl_info[1] = h2c_parameter[1]; + coex_dm->wifi_chnl_info[2] = h2c_parameter[2]; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], FW write 0x66=0x%x\n", + h2c_parameter[0] << 16 | h2c_parameter[1] << 8 | + h2c_parameter[2]); + + btcoexist->btc_fill_h2c(btcoexist, 0x66, 3, h2c_parameter); +} + +void ex_halbtc8192e2ant_special_packet_notify(struct btc_coexist *btcoexist, + u8 type) +{ + if (type == BTC_PACKET_DHCP) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], DHCP Packet notify\n"); + } + +void ex_halbtc8192e2ant_bt_info_notify(struct btc_coexist *btcoexist, + u8 *tmp_buf, u8 length ) +{ + u8 bt_info = 0; + u8 i, rspSource = 0; + bool bt_busy = false, limited_dig = false; + bool wifi_connected = false; + + coex_sta->c2h_bt_info_req_sent = false; + + rspSource = tmp_buf[0] & 0xf; + if (rspSource >= BT_INFO_SRC_8192E_2ANT_MAX) + rspSource = BT_INFO_SRC_8192E_2ANT_WIFI_FW; + coex_sta->bt_info_c2h_cnt[rspSource]++; + + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], Bt info[%d], length=%d, hex data=[", + rspSource, length); + for (i = 0; i < length; i++) { + coex_sta->bt_info_c2h[rspSource][i] = tmp_buf[i]; + if (i == 1) + bt_info = tmp_buf[i]; + if (i == length-1) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "0x%02x]\n", tmp_buf[i]); + else + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "0x%02x, ", tmp_buf[i]); + } + + if (BT_INFO_SRC_8192E_2ANT_WIFI_FW != rspSource) { + coex_sta->bt_retry_cnt = /* [3:0] */ + coex_sta->bt_info_c2h[rspSource][2] & 0xf; + + coex_sta->bt_rssi = + coex_sta->bt_info_c2h[rspSource][3] * 2 + 10; + + coex_sta->bt_info_ext = + coex_sta->bt_info_c2h[rspSource][4]; + + /* Here we need to resend some wifi info to BT + * because bt is reset and loss of the info. */ + if ((coex_sta->bt_info_ext & BIT1)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "bit1, send wifi BW&Chnl to BT!!\n"); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + if (wifi_connected) + ex_halbtc8192e2ant_media_status_notify( + btcoexist, + BTC_MEDIA_CONNECT); + else + ex_halbtc8192e2ant_media_status_notify( + btcoexist, + BTC_MEDIA_DISCONNECT); + } + + if ((coex_sta->bt_info_ext & BIT3)) { + if (!btcoexist->manual_control && + !btcoexist->stop_coex_dm) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "bit3, BT NOT ignore Wlan active!\n"); + halbtc8192e2ant_IgnoreWlanAct(btcoexist, + FORCE_EXEC, + false); + } + } else { + /* BT already NOT ignore Wlan active, + * do nothing here. */ + } + +#if(BT_AUTO_REPORT_ONLY_8192E_2ANT == 0) + if ((coex_sta->bt_info_ext & BIT4)) { + /* BT auto report already enabled, do nothing */ + } else { + halbtc8192e2ant_bt_autoreport(btcoexist, FORCE_EXEC, + true); + } +#endif + } + + /* check BIT2 first ==> check if bt is under inquiry or page scan */ + if(bt_info & BT_INFO_8192E_2ANT_B_INQ_PAGE) + coex_sta->c2h_bt_inquiry_page = true; + else + coex_sta->c2h_bt_inquiry_page = false; + + /* set link exist status */ + if (!(bt_info&BT_INFO_8192E_2ANT_B_CONNECTION)) { + coex_sta->bt_link_exist = false; + coex_sta->pan_exist = false; + coex_sta->a2dp_exist = false; + coex_sta->hid_exist = false; + coex_sta->sco_exist = false; + } else {/* connection exists */ + coex_sta->bt_link_exist = true; + if (bt_info & BT_INFO_8192E_2ANT_B_FTP) + coex_sta->pan_exist = true; + else + coex_sta->pan_exist = false; + if (bt_info & BT_INFO_8192E_2ANT_B_A2DP) + coex_sta->a2dp_exist = true; + else + coex_sta->a2dp_exist = false; + if (bt_info & BT_INFO_8192E_2ANT_B_HID) + coex_sta->hid_exist = true; + else + coex_sta->hid_exist = false; + if (bt_info & BT_INFO_8192E_2ANT_B_SCO_ESCO) + coex_sta->sco_exist = true; + else + coex_sta->sco_exist = false; + } + + halbtc8192e2ant_update_btlink_info(btcoexist); + + if (!(bt_info&BT_INFO_8192E_2ANT_B_CONNECTION)) { + coex_dm->bt_status = BT_8192E_2ANT_BT_STATUS_NON_CONNECTED_IDLE; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Non-Connected idle!!!\n"); + } else if (bt_info == BT_INFO_8192E_2ANT_B_CONNECTION) { + coex_dm->bt_status = BT_8192E_2ANT_BT_STATUS_CONNECTED_IDLE; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], bt_infoNotify(), BT Connected-idle!!!\n"); + } else if ((bt_info&BT_INFO_8192E_2ANT_B_SCO_ESCO) || + (bt_info&BT_INFO_8192E_2ANT_B_SCO_BUSY)) { + coex_dm->bt_status = BT_8192E_2ANT_BT_STATUS_SCO_BUSY; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], bt_infoNotify(), BT SCO busy!!!\n"); + } else if (bt_info&BT_INFO_8192E_2ANT_B_ACL_BUSY) { + coex_dm->bt_status = BT_8192E_2ANT_BT_STATUS_ACL_BUSY; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], bt_infoNotify(), BT ACL busy!!!\n"); + } else { + coex_dm->bt_status = BT_8192E_2ANT_BT_STATUS_MAX; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex]bt_infoNotify(), BT Non-Defined state!!!\n"); + } + + if ((BT_8192E_2ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status) || + (BT_8192E_2ANT_BT_STATUS_SCO_BUSY == coex_dm->bt_status) || + (BT_8192E_2ANT_BT_STATUS_ACL_SCO_BUSY == coex_dm->bt_status)) { + bt_busy = true; + limited_dig = true; + } else { + bt_busy = false; + limited_dig = false; + } + + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_TRAFFIC_BUSY, &bt_busy); + + coex_dm->limited_dig = limited_dig; + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_LIMITED_DIG, &limited_dig); + + halbtc8192e2ant_run_coexist_mechanism(btcoexist); +} + +void ex_halbtc8192e2ant_stack_operation_notify(struct btc_coexist *btcoexist, + u8 type) +{ + if (BTC_STACK_OP_INQ_PAGE_PAIR_START == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex] StackOP Inquiry/page/pair start notify\n"); + else if(BTC_STACK_OP_INQ_PAGE_PAIR_FINISH == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex] StackOP Inquiry/page/pair finish notify\n"); +} + +void ex_halbtc8192e2ant_halt_notify(struct btc_coexist *btcoexist) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, "[BTCoex], Halt notify\n"); + + halbtc8192e2ant_IgnoreWlanAct(btcoexist, FORCE_EXEC, true); + ex_halbtc8192e2ant_media_status_notify(btcoexist, BTC_MEDIA_DISCONNECT); +} + +void ex_halbtc8192e2ant_periodical(struct btc_coexist *btcoexist) +{ + static u8 dis_ver_info_cnt = 0; + u32 fw_ver = 0, bt_patch_ver = 0; + struct btc_board_info *board_info=&btcoexist->board_info; + struct btc_stack_info *stack_info=&btcoexist->stack_info; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "=======================Periodical=======================\n"); + if (dis_ver_info_cnt <= 5) { + dis_ver_info_cnt += 1; + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "************************************************\n"); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "Ant PG Num/ Ant Mech/ Ant Pos = %d/ %d/ %d\n", + board_info->pg_ant_num, board_info->btdm_ant_num, + board_info->btdm_ant_pos); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "BT stack/ hci ext ver = %s / %d\n", + ((stack_info->profile_notified) ? "Yes" : "No"), + stack_info->hci_version); + btcoexist->btc_get(btcoexist, BTC_GET_U4_BT_PATCH_VER, + &bt_patch_ver); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_FW_VER, &fw_ver); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "CoexVer/ FwVer/ PatchVer = %d_%x/ 0x%x/ 0x%x(%d)\n", + glcoex_ver_date_8192e_2ant, glcoex_ver_8192e_2ant, + fw_ver, bt_patch_ver, bt_patch_ver); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "************************************************\n"); + } + +#if(BT_AUTO_REPORT_ONLY_8192E_2ANT == 0) + halbtc8192e2ant_querybt_info(btcoexist); + halbtc8192e2ant_monitor_bt_ctr(btcoexist); + halbtc8192e2ant_monitor_bt_enable_disable(btcoexist); +#else + if (halbtc8192e2ant_iswifi_status_changed(btcoexist) || + coex_dm->auto_tdma_adjust) + halbtc8192e2ant_run_coexist_mechanism(btcoexist); +#endif +} + + +#endif + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/halbtc8192e2ant.h +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/halbtc8192e2ant.h @@ -0,0 +1,162 @@ +/***************************************************************** + * The following is for 8192E 2Ant BT Co-exist definition + *****************************************************************/ +#define BT_AUTO_REPORT_ONLY_8192E_2ANT 0 + +#define BT_INFO_8192E_2ANT_B_FTP BIT7 +#define BT_INFO_8192E_2ANT_B_A2DP BIT6 +#define BT_INFO_8192E_2ANT_B_HID BIT5 +#define BT_INFO_8192E_2ANT_B_SCO_BUSY BIT4 +#define BT_INFO_8192E_2ANT_B_ACL_BUSY BIT3 +#define BT_INFO_8192E_2ANT_B_INQ_PAGE BIT2 +#define BT_INFO_8192E_2ANT_B_SCO_ESCO BIT1 +#define BT_INFO_8192E_2ANT_B_CONNECTION BIT0 + +#define BTC_RSSI_COEX_THRESH_TOL_8192E_2ANT 2 + +enum bt_info_src_8192e_2ant{ + BT_INFO_SRC_8192E_2ANT_WIFI_FW = 0x0, + BT_INFO_SRC_8192E_2ANT_BT_RSP = 0x1, + BT_INFO_SRC_8192E_2ANT_BT_ACTIVE_SEND = 0x2, + BT_INFO_SRC_8192E_2ANT_MAX +}; + +enum bt_8192e_2ant_bt_status{ + BT_8192E_2ANT_BT_STATUS_NON_CONNECTED_IDLE = 0x0, + BT_8192E_2ANT_BT_STATUS_CONNECTED_IDLE = 0x1, + BT_8192E_2ANT_BT_STATUS_INQ_PAGE = 0x2, + BT_8192E_2ANT_BT_STATUS_ACL_BUSY = 0x3, + BT_8192E_2ANT_BT_STATUS_SCO_BUSY = 0x4, + BT_8192E_2ANT_BT_STATUS_ACL_SCO_BUSY = 0x5, + BT_8192E_2ANT_BT_STATUS_MAX +}; + +enum bt_8192e_2ant_coex_algo{ + BT_8192E_2ANT_COEX_ALGO_UNDEFINED = 0x0, + BT_8192E_2ANT_COEX_ALGO_SCO = 0x1, + BT_8192E_2ANT_COEX_ALGO_SCO_PAN = 0x2, + BT_8192E_2ANT_COEX_ALGO_HID = 0x3, + BT_8192E_2ANT_COEX_ALGO_A2DP = 0x4, + BT_8192E_2ANT_COEX_ALGO_A2DP_PANHS = 0x5, + BT_8192E_2ANT_COEX_ALGO_PANEDR = 0x6, + BT_8192E_2ANT_COEX_ALGO_PANHS = 0x7, + BT_8192E_2ANT_COEX_ALGO_PANEDR_A2DP = 0x8, + BT_8192E_2ANT_COEX_ALGO_PANEDR_HID = 0x9, + BT_8192E_2ANT_COEX_ALGO_HID_A2DP_PANEDR = 0xa, + BT_8192E_2ANT_COEX_ALGO_HID_A2DP = 0xb, + BT_8192E_2ANT_COEX_ALGO_MAX = 0xc +}; + +struct coex_dm_8192e_2ant{ + /* fw mechanism */ + u8 pre_dec_bt_pwr; + u8 cur_dec_bt_pwr; + u8 pre_fw_dac_swing_lvl; + u8 cur_fw_dac_swing_lvl; + bool cur_ignore_wlan_act; + bool pre_ignore_wlan_act; + u8 pre_ps_tdma; + u8 cur_ps_tdma; + u8 ps_tdma_para[5]; + u8 ps_tdma_du_adj_type; + bool reset_tdma_adjust; + bool auto_tdma_adjust; + bool pre_ps_tdma_on; + bool cur_ps_tdma_on; + bool pre_bt_auto_report; + bool cur_bt_auto_report; + + /* sw mechanism */ + bool pre_rf_rx_lpf_shrink; + bool cur_rf_rx_lpf_shrink; + u32 bt_rf0x1e_backup; + bool pre_low_penalty_ra; + bool cur_low_penalty_ra; + bool pre_dac_swing_on; + u32 pre_dac_swing_lvl; + bool cur_dac_swing_on; + u32 cur_dac_swing_lvl; + bool pre_adc_back_off; + bool cur_adc_back_off; + bool pre_agc_table_en; + bool cur_agc_table_en; + u32 pre_val0x6c0; + u32 cur_val0x6c0; + u32 pre_val0x6c4; + u32 cur_val0x6c4; + u32 pre_val0x6c8; + u32 cur_val0x6c8; + u8 pre_val0x6cc; + u8 cur_val0x6cc; + bool limited_dig; + + u32 backup_arfr_cnt1; /* Auto Rate Fallback Retry cnt */ + u32 backup_arfr_cnt2; /* Auto Rate Fallback Retry cnt */ + u16 backup_retrylimit; + u8 backup_ampdu_maxtime; + + /* algorithm related */ + u8 pre_algorithm; + u8 cur_algorithm; + u8 bt_status; + u8 wifi_chnl_info[3]; + + u8 pre_sstype; + u8 cur_sstype; + + u32 prera_mask; + u32 curra_mask; + u8 curra_masktype; + u8 pre_arfrtype; + u8 cur_arfrtype; + u8 pre_retrylimit_type; + u8 cur_retrylimit_type; + u8 pre_ampdutime_type; + u8 cur_ampdutime_type; +}; + +struct coex_sta_8192e_2ant{ + bool bt_link_exist; + bool sco_exist; + bool a2dp_exist; + bool hid_exist; + bool pan_exist; + + bool under_lps; + bool under_ips; + u32 high_priority_tx; + u32 high_priority_rx; + u32 low_priority_tx; + u32 low_priority_rx; + u8 bt_rssi; + u8 pre_bt_rssi_state; + u8 pre_wifi_rssi_state[4]; + bool c2h_bt_info_req_sent; + u8 bt_info_c2h[BT_INFO_SRC_8192E_2ANT_MAX][10]; + u32 bt_info_c2h_cnt[BT_INFO_SRC_8192E_2ANT_MAX]; + bool c2h_bt_inquiry_page; + u8 bt_retry_cnt; + u8 bt_info_ext; +}; + +/**************************************************************** + * The following is interface which will notify coex module. + ****************************************************************/ +void ex_halbtc8192e2ant_init_hwconfig(struct btc_coexist *btcoexist); +void ex_halbtc8192e2ant_init_coex_dm(struct btc_coexist *btcoexist); +void ex_halbtc8192e2ant_ips_notify(struct btc_coexist *btcoexist, u8 type); +void ex_halbtc8192e2ant_lps_notify(struct btc_coexist *btcoexist, u8 type); +void ex_halbtc8192e2ant_scan_notify(struct btc_coexist *btcoexist, u8 type); +void ex_halbtc8192e2ant_connect_notify(struct btc_coexist *btcoexist, u8 type); +void ex_halbtc8192e2ant_media_status_notify(struct btc_coexist *btcoexist, + u8 type); +void ex_halbtc8192e2ant_special_packet_notify(struct btc_coexist *btcoexist, + u8 type); +void ex_halbtc8192e2ant_bt_info_notify(struct btc_coexist *btcoexist, + u8 *tmpBuf,u8 length); +void ex_halbtc8192e2ant_stack_operation_notify(struct btc_coexist *btcoexist, + u8 type); +void ex_halbtc8192e2ant_halt_notify(struct btc_coexist *btcoexist); +void ex_halbtc8192e2ant_periodical(struct btc_coexist *btcoexist); +void ex_halbtc8192e2ant_display_coex_info(struct btc_coexist *btcoexist); + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/halbtc8723a2ant.c +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/halbtc8723a2ant.c @@ -0,0 +1,3780 @@ +//============================================================ +// Description: +// +// This file is for RTL8723A Co-exist mechanism +// +// History +// 2012/08/22 Cosa first check in. +// 2012/11/14 Cosa Revise for 8723A 2Ant out sourcing. +// +//============================================================ + +//============================================================ +// include files +//============================================================ +#include "Mp_Precomp.h" +#if(BT_30_SUPPORT == 1) +//============================================================ +// Global variables, these are static variables +//============================================================ +static COEX_DM_8723A_2ANT GLCoexDm8723a2Ant; +static PCOEX_DM_8723A_2ANT pCoexDm=&GLCoexDm8723a2Ant; +static COEX_STA_8723A_2ANT GLCoexSta8723a2Ant; +static PCOEX_STA_8723A_2ANT pCoexSta=&GLCoexSta8723a2Ant; + +const char *const GLBtInfoSrc8723a2Ant[]={ + "BT Info[wifi fw]", + "BT Info[bt rsp]", + "BT Info[bt auto report]", +}; + +//============================================================ +// local function proto type if needed +//============================================================ +//============================================================ +// local function start with halbtc8723a2ant_ +//============================================================ +BOOLEAN +halbtc8723a2ant_IsWifiIdle( + IN PBTC_COEXIST pBtCoexist + ) +{ + BOOLEAN bWifiConnected=FALSE, bScan=FALSE, bLink=FALSE, bRoam=FALSE; + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_SCAN, &bScan); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_LINK, &bLink); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_ROAM, &bRoam); + + if(bWifiConnected) + return FALSE; + if(bScan) + return FALSE; + if(bLink) + return FALSE; + if(bRoam) + return FALSE; + + return true; +} + +u1Byte +halbtc8723a2ant_BtRssiState( + u1Byte levelNum, + u1Byte rssiThresh, + u1Byte rssiThresh1 + ) +{ + s4Byte btRssi=0; + u1Byte btRssiState=pCoexSta->preBtRssiState; + + btRssi = pCoexSta->btRssi; + + if(levelNum == 2) + { + if( (pCoexSta->preBtRssiState == BTC_RSSI_STATE_LOW) || + (pCoexSta->preBtRssiState == BTC_RSSI_STATE_STAY_LOW)) + { + if(btRssi >= (rssiThresh+BTC_RSSI_COEX_THRESH_TOL_8723A_2ANT)) + { + btRssiState = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to High\n")); + } + else + { + btRssiState = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at Low\n")); + } + } + else + { + if(btRssi < rssiThresh) + { + btRssiState = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to Low\n")); + } + else + { + btRssiState = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at High\n")); + } + } + } + else if(levelNum == 3) + { + if(rssiThresh > rssiThresh1) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi thresh error!!\n")); + return pCoexSta->preBtRssiState; + } + + if( (pCoexSta->preBtRssiState == BTC_RSSI_STATE_LOW) || + (pCoexSta->preBtRssiState == BTC_RSSI_STATE_STAY_LOW)) + { + if(btRssi >= (rssiThresh+BTC_RSSI_COEX_THRESH_TOL_8723A_2ANT)) + { + btRssiState = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to Medium\n")); + } + else + { + btRssiState = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at Low\n")); + } + } + else if( (pCoexSta->preBtRssiState == BTC_RSSI_STATE_MEDIUM) || + (pCoexSta->preBtRssiState == BTC_RSSI_STATE_STAY_MEDIUM)) + { + if(btRssi >= (rssiThresh1+BTC_RSSI_COEX_THRESH_TOL_8723A_2ANT)) + { + btRssiState = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to High\n")); + } + else if(btRssi < rssiThresh) + { + btRssiState = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to Low\n")); + } + else + { + btRssiState = BTC_RSSI_STATE_STAY_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at Medium\n")); + } + } + else + { + if(btRssi < rssiThresh1) + { + btRssiState = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state switch to Medium\n")); + } + else + { + btRssiState = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, ("[BTCoex], BT Rssi state stay at High\n")); + } + } + } + + pCoexSta->preBtRssiState = btRssiState; + + return btRssiState; +} + +u1Byte +halbtc8723a2ant_WifiRssiState( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte index, + IN u1Byte levelNum, + IN u1Byte rssiThresh, + IN u1Byte rssiThresh1 + ) +{ + s4Byte wifiRssi=0; + u1Byte wifiRssiState=pCoexSta->preWifiRssiState[index]; + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_S4_WIFI_RSSI, &wifiRssi); + + if(levelNum == 2) + { + if( (pCoexSta->preWifiRssiState[index] == BTC_RSSI_STATE_LOW) || + (pCoexSta->preWifiRssiState[index] == BTC_RSSI_STATE_STAY_LOW)) + { + if(wifiRssi >= (rssiThresh+BTC_RSSI_COEX_THRESH_TOL_8723A_2ANT)) + { + wifiRssiState = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to High\n")); + } + else + { + wifiRssiState = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at Low\n")); + } + } + else + { + if(wifiRssi < rssiThresh) + { + wifiRssiState = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to Low\n")); + } + else + { + wifiRssiState = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at High\n")); + } + } + } + else if(levelNum == 3) + { + if(rssiThresh > rssiThresh1) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI thresh error!!\n")); + return pCoexSta->preWifiRssiState[index]; + } + + if( (pCoexSta->preWifiRssiState[index] == BTC_RSSI_STATE_LOW) || + (pCoexSta->preWifiRssiState[index] == BTC_RSSI_STATE_STAY_LOW)) + { + if(wifiRssi >= (rssiThresh+BTC_RSSI_COEX_THRESH_TOL_8723A_2ANT)) + { + wifiRssiState = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to Medium\n")); + } + else + { + wifiRssiState = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at Low\n")); + } + } + else if( (pCoexSta->preWifiRssiState[index] == BTC_RSSI_STATE_MEDIUM) || + (pCoexSta->preWifiRssiState[index] == BTC_RSSI_STATE_STAY_MEDIUM)) + { + if(wifiRssi >= (rssiThresh1+BTC_RSSI_COEX_THRESH_TOL_8723A_2ANT)) + { + wifiRssiState = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to High\n")); + } + else if(wifiRssi < rssiThresh) + { + wifiRssiState = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to Low\n")); + } + else + { + wifiRssiState = BTC_RSSI_STATE_STAY_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at Medium\n")); + } + } + else + { + if(wifiRssi < rssiThresh1) + { + wifiRssiState = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state switch to Medium\n")); + } + else + { + wifiRssiState = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, ("[BTCoex], wifi RSSI state stay at High\n")); + } + } + } + + pCoexSta->preWifiRssiState[index] = wifiRssiState; + + return wifiRssiState; +} + +VOID +halbtc8723a2ant_IndicateWifiChnlBwInfo( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + u1Byte H2C_Parameter[3] ={0}; + u4Byte wifiBw; + u1Byte wifiCentralChnl; + + // only 2.4G we need to inform bt the chnl mask + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U1_WIFI_CENTRAL_CHNL, &wifiCentralChnl); + if( (BTC_MEDIA_CONNECT == type) && + (wifiCentralChnl <= 14) ) + { + H2C_Parameter[0] = 0x1; + H2C_Parameter[1] = wifiCentralChnl; + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + if(BTC_WIFI_BW_HT40 == wifiBw) + H2C_Parameter[2] = 0x30; + else + H2C_Parameter[2] = 0x20; + } + + pCoexDm->wifiChnlInfo[0] = H2C_Parameter[0]; + pCoexDm->wifiChnlInfo[1] = H2C_Parameter[1]; + pCoexDm->wifiChnlInfo[2] = H2C_Parameter[2]; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], FW write 0x19=0x%x\n", + H2C_Parameter[0]<<16|H2C_Parameter[1]<<8|H2C_Parameter[2])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x19, 3, H2C_Parameter); +} + +VOID +halbtc8723a2ant_QueryBtInfo( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte H2C_Parameter[1] ={0}; + + pCoexSta->bC2hBtInfoReqSent = true; + + H2C_Parameter[0] |= BIT0; // trigger + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], Query Bt Info, FW write 0x38=0x%x\n", + H2C_Parameter[0])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x38, 1, H2C_Parameter); +} +u1Byte +halbtc8723a2ant_ActionAlgorithm( + IN PBTC_COEXIST pBtCoexist + ) +{ + PBTC_STACK_INFO pStackInfo=&pBtCoexist->stack_info; + BOOLEAN bBtHsOn=FALSE, bBtBusy=FALSE, limited_dig=FALSE; + u1Byte algorithm=BT_8723A_2ANT_COEX_ALGO_UNDEFINED; + u1Byte numOfDiffProfile=0; + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn); + + //====================== + // here we get BT status first + //====================== + pCoexDm->btStatus = BT_8723A_2ANT_BT_STATUS_IDLE; + + if((pStackInfo->bScoExist) ||(bBtHsOn) ||(pStackInfo->bHidExist)) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO or HID or HS exists, set BT non-idle !!!\n")); + pCoexDm->btStatus = BT_8723A_2ANT_BT_STATUS_NON_IDLE; + } + else + { + // A2dp profile + if( (pBtCoexist->stack_info.numOfLink == 1) && + (pStackInfo->bA2dpExist) ) + { + if( (pCoexSta->lowPriorityTx+ pCoexSta->lowPriorityRx) < 100) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], A2DP, low priority tx+rx < 100, set BT connected-idle!!!\n")); + pCoexDm->btStatus = BT_8723A_2ANT_BT_STATUS_CONNECTED_IDLE; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], A2DP, low priority tx+rx >= 100, set BT non-idle!!!\n")); + pCoexDm->btStatus = BT_8723A_2ANT_BT_STATUS_NON_IDLE; + } + } + // Pan profile + if( (pBtCoexist->stack_info.numOfLink == 1) && + (pStackInfo->bPanExist) ) + { + if((pCoexSta->lowPriorityTx+ pCoexSta->lowPriorityRx) < 600) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], PAN, low priority tx+rx < 600, set BT connected-idle!!!\n")); + pCoexDm->btStatus = BT_8723A_2ANT_BT_STATUS_CONNECTED_IDLE; + } + else + { + if(pCoexSta->lowPriorityTx) + { + if((pCoexSta->lowPriorityRx /pCoexSta->lowPriorityTx)>9 ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], PAN, low priority rx/tx > 9, set BT connected-idle!!!\n")); + pCoexDm->btStatus = BT_8723A_2ANT_BT_STATUS_CONNECTED_IDLE; + } + } + } + if(BT_8723A_2ANT_BT_STATUS_CONNECTED_IDLE != pCoexDm->btStatus) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], PAN, set BT non-idle!!!\n")); + pCoexDm->btStatus = BT_8723A_2ANT_BT_STATUS_NON_IDLE; + } + } + // Pan+A2dp profile + if( (pBtCoexist->stack_info.numOfLink == 2) && + (pStackInfo->bA2dpExist) && + (pStackInfo->bPanExist) ) + { + if((pCoexSta->lowPriorityTx+ pCoexSta->lowPriorityRx) < 600) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], PAN+A2DP, low priority tx+rx < 600, set BT connected-idle!!!\n")); + pCoexDm->btStatus = BT_8723A_2ANT_BT_STATUS_CONNECTED_IDLE; + } + else + { + if(pCoexSta->lowPriorityTx) + { + if((pCoexSta->lowPriorityRx /pCoexSta->lowPriorityTx)>9 ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], PAN+A2DP, low priority rx/tx > 9, set BT connected-idle!!!\n")); + pCoexDm->btStatus = BT_8723A_2ANT_BT_STATUS_CONNECTED_IDLE; + } + } + } + if(BT_8723A_2ANT_BT_STATUS_CONNECTED_IDLE != pCoexDm->btStatus) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], PAN+A2DP, set BT non-idle!!!\n")); + pCoexDm->btStatus = BT_8723A_2ANT_BT_STATUS_NON_IDLE; + } + } + } + if(BT_8723A_2ANT_BT_STATUS_IDLE != pCoexDm->btStatus) + { + bBtBusy = true; + limited_dig = true; + } + else + { + bBtBusy = FALSE; + limited_dig = FALSE; + } + pBtCoexist->btc_set(pBtCoexist, BTC_SET_BL_BT_TRAFFIC_BUSY, &bBtBusy); + pBtCoexist->btc_set(pBtCoexist, BTC_SET_BL_BT_LIMITED_DIG, &limited_dig); + //====================== + + if(!pStackInfo->bBtLinkExist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], No profile exists!!!\n")); + return algorithm; + } + + if(pStackInfo->bScoExist) + numOfDiffProfile++; + if(pStackInfo->bHidExist) + numOfDiffProfile++; + if(pStackInfo->bPanExist) + numOfDiffProfile++; + if(pStackInfo->bA2dpExist) + numOfDiffProfile++; + + if(numOfDiffProfile == 1) + { + if(pStackInfo->bScoExist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO only\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_SCO; + } + else + { + if(pStackInfo->bHidExist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID only\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_HID; + } + else if(pStackInfo->bA2dpExist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], A2DP only\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_A2DP; + } + else if(pStackInfo->bPanExist) + { + if(bBtHsOn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], PAN(HS) only\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_PANHS; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], PAN(EDR) only\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_PANEDR; + } + } + } + } + else if(numOfDiffProfile == 2) + { + if(pStackInfo->bScoExist) + { + if(pStackInfo->bHidExist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_HID; + } + else if(pStackInfo->bA2dpExist) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + A2DP ==> SCO\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_SCO; + } + else if(pStackInfo->bPanExist) + { + if(bBtHsOn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + PAN(HS)\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_SCO; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + PAN(EDR)\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_PANEDR_HID; + } + } + } + else + { + if( pStackInfo->bHidExist && + pStackInfo->bA2dpExist ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + A2DP\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_HID_A2DP; + } + else if( pStackInfo->bHidExist && + pStackInfo->bPanExist ) + { + if(bBtHsOn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + PAN(HS)\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_HID_A2DP; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + PAN(EDR)\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_PANEDR_HID; + } + } + else if( pStackInfo->bPanExist && + pStackInfo->bA2dpExist ) + { + if(bBtHsOn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], A2DP + PAN(HS)\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_A2DP; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], A2DP + PAN(EDR)\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_PANEDR_A2DP; + } + } + } + } + else if(numOfDiffProfile == 3) + { + if(pStackInfo->bScoExist) + { + if( pStackInfo->bHidExist && + pStackInfo->bA2dpExist ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID + A2DP ==> HID\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_HID; + } + else if( pStackInfo->bHidExist && + pStackInfo->bPanExist ) + { + if(bBtHsOn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID + PAN(HS)\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_HID_A2DP; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID + PAN(EDR)\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_PANEDR_HID; + } + } + else if( pStackInfo->bPanExist && + pStackInfo->bA2dpExist ) + { + if(bBtHsOn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + A2DP + PAN(HS)\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_SCO; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + A2DP + PAN(EDR) ==> HID\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_PANEDR_HID; + } + } + } + else + { + if( pStackInfo->bHidExist && + pStackInfo->bPanExist && + pStackInfo->bA2dpExist ) + { + if(bBtHsOn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + A2DP + PAN(HS)\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_HID_A2DP; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], HID + A2DP + PAN(EDR)\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_HID_A2DP_PANEDR; + } + } + } + } + else if(numOfDiffProfile >= 3) + { + if(pStackInfo->bScoExist) + { + if( pStackInfo->bHidExist && + pStackInfo->bPanExist && + pStackInfo->bA2dpExist ) + { + if(bBtHsOn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Error!!! SCO + HID + A2DP + PAN(HS)\n")); + + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], SCO + HID + A2DP + PAN(EDR)==>PAN(EDR)+HID\n")); + algorithm = BT_8723A_2ANT_COEX_ALGO_PANEDR_HID; + } + } + } + } + + return algorithm; +} + +BOOLEAN +halbtc8723a2ant_NeedToDecBtPwr( + IN PBTC_COEXIST pBtCoexist + ) +{ + BOOLEAN bRet=FALSE; + BOOLEAN bBtHsOn=FALSE, bWifiConnected=FALSE; + s4Byte btHsRssi=0; + + if(!pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn)) + return FALSE; + if(!pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected)) + return FALSE; + if(!pBtCoexist->btc_get(pBtCoexist, BTC_GET_S4_HS_RSSI, &btHsRssi)) + return FALSE; + + if(bWifiConnected) + { + if(bBtHsOn) + { + if(btHsRssi > 37) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], Need to decrease bt power for HS mode!!\n")); + bRet = true; + } + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], Need to decrease bt power for Wifi is connected!!\n")); + bRet = true; + } + } + + return bRet; +} + +VOID +halbtc8723a2ant_SetFwDacSwingLevel( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte dacSwingLvl + ) +{ + u1Byte H2C_Parameter[1] ={0}; + + // There are several type of dacswing + // 0x18/ 0x10/ 0xc/ 0x8/ 0x4/ 0x6 + H2C_Parameter[0] = dacSwingLvl; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], Set Dac Swing Level=0x%x\n", dacSwingLvl)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], FW write 0x29=0x%x\n", H2C_Parameter[0])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x29, 1, H2C_Parameter); +} + +VOID +halbtc8723a2ant_SetFwDecBtPwr( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bDecBtPwr + ) +{ + u1Byte H2C_Parameter[1] ={0}; + + H2C_Parameter[0] = 0; + + if(bDecBtPwr) + { + H2C_Parameter[0] |= BIT1; + } + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], decrease Bt Power : %s, FW write 0x21=0x%x\n", + (bDecBtPwr? "Yes!!":"No!!"), H2C_Parameter[0])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x21, 1, H2C_Parameter); +} + +VOID +halbtc8723a2ant_DecBtPwr( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bDecBtPwr + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s Dec BT power = %s\n", + (bForceExec? "force to":""), ((bDecBtPwr)? "ON":"OFF"))); + pCoexDm->bCurDecBtPwr = bDecBtPwr; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], bPreDecBtPwr=%d, bCurDecBtPwr=%d\n", + pCoexDm->bPreDecBtPwr, pCoexDm->bCurDecBtPwr)); + + if(pCoexDm->bPreDecBtPwr == pCoexDm->bCurDecBtPwr) + return; + } + halbtc8723a2ant_SetFwDecBtPwr(pBtCoexist, pCoexDm->bCurDecBtPwr); + + pCoexDm->bPreDecBtPwr = pCoexDm->bCurDecBtPwr; +} + +VOID +halbtc8723a2ant_FwDacSwingLvl( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN u1Byte fwDacSwingLvl + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s set FW Dac Swing level = %d\n", + (bForceExec? "force to":""), fwDacSwingLvl)); + pCoexDm->curFwDacSwingLvl = fwDacSwingLvl; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], preFwDacSwingLvl=%d, curFwDacSwingLvl=%d\n", + pCoexDm->preFwDacSwingLvl, pCoexDm->curFwDacSwingLvl)); + + if(pCoexDm->preFwDacSwingLvl == pCoexDm->curFwDacSwingLvl) + return; + } + + halbtc8723a2ant_SetFwDacSwingLevel(pBtCoexist, pCoexDm->curFwDacSwingLvl); + + pCoexDm->preFwDacSwingLvl = pCoexDm->curFwDacSwingLvl; +} + +VOID +halbtc8723a2ant_SetSwRfRxLpfCorner( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bRxRfShrinkOn + ) +{ + if(bRxRfShrinkOn) + { + //Shrink RF Rx LPF corner + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Shrink RF Rx LPF corner!!\n")); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x1e, 0xfffff, 0xf0ff7); + } + else + { + //Resume RF Rx LPF corner + // After initialized, we can use pCoexDm->btRf0x1eBackup + if(pBtCoexist->initilized) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Resume RF Rx LPF corner!!\n")); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x1e, 0xfffff, pCoexDm->btRf0x1eBackup); + } + } +} + +VOID +halbtc8723a2ant_RfShrink( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bRxRfShrinkOn + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s turn Rx RF Shrink = %s\n", + (bForceExec? "force to":""), ((bRxRfShrinkOn)? "ON":"OFF"))); + pCoexDm->bCurRfRxLpfShrink = bRxRfShrinkOn; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], bPreRfRxLpfShrink=%d, bCurRfRxLpfShrink=%d\n", + pCoexDm->bPreRfRxLpfShrink, pCoexDm->bCurRfRxLpfShrink)); + + if(pCoexDm->bPreRfRxLpfShrink == pCoexDm->bCurRfRxLpfShrink) + return; + } + halbtc8723a2ant_SetSwRfRxLpfCorner(pBtCoexist, pCoexDm->bCurRfRxLpfShrink); + + pCoexDm->bPreRfRxLpfShrink = pCoexDm->bCurRfRxLpfShrink; +} + +VOID +halbtc8723a2ant_SetSwPenaltyTxRateAdaptive( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bLowPenaltyRa + ) +{ + u1Byte tmpU1; + + tmpU1 = pBtCoexist->btc_read_1byte(pBtCoexist, 0x4fd); + tmpU1 |= BIT0; + if(bLowPenaltyRa) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Tx rate adaptive, set low penalty!!\n")); + tmpU1 &= ~BIT2; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Tx rate adaptive, set normal!!\n")); + tmpU1 |= BIT2; + } + + pBtCoexist->btc_write_1byte(pBtCoexist, 0x4fd, tmpU1); +} + +VOID +halbtc8723a2ant_LowPenaltyRa( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bLowPenaltyRa + ) +{ + return; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s turn LowPenaltyRA = %s\n", + (bForceExec? "force to":""), ((bLowPenaltyRa)? "ON":"OFF"))); + pCoexDm->bCurLowPenaltyRa = bLowPenaltyRa; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], bPreLowPenaltyRa=%d, bCurLowPenaltyRa=%d\n", + pCoexDm->bPreLowPenaltyRa, pCoexDm->bCurLowPenaltyRa)); + + if(pCoexDm->bPreLowPenaltyRa == pCoexDm->bCurLowPenaltyRa) + return; + } + halbtc8723a2ant_SetSwPenaltyTxRateAdaptive(pBtCoexist, pCoexDm->bCurLowPenaltyRa); + + pCoexDm->bPreLowPenaltyRa = pCoexDm->bCurLowPenaltyRa; +} + +VOID +halbtc8723a2ant_SetSwFullTimeDacSwing( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bSwDacSwingOn, + IN u4Byte swDacSwingLvl + ) +{ + if(bSwDacSwingOn) + { + pBtCoexist->btc_setBbReg(pBtCoexist, 0x880, 0xff000000, swDacSwingLvl); + } + else + { + pBtCoexist->btc_setBbReg(pBtCoexist, 0x880, 0xff000000, 0xc0); + } +} + + +VOID +halbtc8723a2ant_DacSwing( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bDacSwingOn, + IN u4Byte dacSwingLvl + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s turn DacSwing=%s, dacSwingLvl=0x%x\n", + (bForceExec? "force to":""), ((bDacSwingOn)? "ON":"OFF"), dacSwingLvl)); + pCoexDm->bCurDacSwingOn = bDacSwingOn; + pCoexDm->curDacSwingLvl = dacSwingLvl; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], bPreDacSwingOn=%d, preDacSwingLvl=0x%x, bCurDacSwingOn=%d, curDacSwingLvl=0x%x\n", + pCoexDm->bPreDacSwingOn, pCoexDm->preDacSwingLvl, + pCoexDm->bCurDacSwingOn, pCoexDm->curDacSwingLvl)); + + if( (pCoexDm->bPreDacSwingOn == pCoexDm->bCurDacSwingOn) && + (pCoexDm->preDacSwingLvl == pCoexDm->curDacSwingLvl) ) + return; + } + mdelay(30); + halbtc8723a2ant_SetSwFullTimeDacSwing(pBtCoexist, bDacSwingOn, dacSwingLvl); + + pCoexDm->bPreDacSwingOn = pCoexDm->bCurDacSwingOn; + pCoexDm->preDacSwingLvl = pCoexDm->curDacSwingLvl; +} + +VOID +halbtc8723a2ant_SetAdcBackOff( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bAdcBackOff + ) +{ + if(bAdcBackOff) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], BB BackOff Level On!\n")); + pBtCoexist->btc_write_4byte(pBtCoexist, 0xc04,0x3a07611); + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], BB BackOff Level Off!\n")); + pBtCoexist->btc_write_4byte(pBtCoexist, 0xc04,0x3a05611); + } +} + +VOID +halbtc8723a2ant_AdcBackOff( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bAdcBackOff + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s turn AdcBackOff = %s\n", + (bForceExec? "force to":""), ((bAdcBackOff)? "ON":"OFF"))); + pCoexDm->bCurAdcBackOff = bAdcBackOff; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], bPreAdcBackOff=%d, bCurAdcBackOff=%d\n", + pCoexDm->bPreAdcBackOff, pCoexDm->bCurAdcBackOff)); + + if(pCoexDm->bPreAdcBackOff == pCoexDm->bCurAdcBackOff) + return; + } + halbtc8723a2ant_SetAdcBackOff(pBtCoexist, pCoexDm->bCurAdcBackOff); + + pCoexDm->bPreAdcBackOff = pCoexDm->bCurAdcBackOff; +} + +VOID +halbtc8723a2ant_SetAgcTable( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bAgcTableEn + ) +{ + u1Byte rssiAdjustVal=0; + + if(bAgcTableEn) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Agc Table On!\n")); + pBtCoexist->btc_write_4byte(pBtCoexist, 0xc78,0x4e1c0001); + pBtCoexist->btc_write_4byte(pBtCoexist, 0xc78,0x4d1d0001); + pBtCoexist->btc_write_4byte(pBtCoexist, 0xc78,0x4c1e0001); + pBtCoexist->btc_write_4byte(pBtCoexist, 0xc78,0x4b1f0001); + pBtCoexist->btc_write_4byte(pBtCoexist, 0xc78,0x4a200001); + + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x12, 0xfffff, 0xdc000); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x12, 0xfffff, 0x90000); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x12, 0xfffff, 0x51000); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x12, 0xfffff, 0x12000); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x1a, 0xfffff, 0x00355); + + rssiAdjustVal = 6; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], Agc Table Off!\n")); + pBtCoexist->btc_write_4byte(pBtCoexist, 0xc78,0x641c0001); + pBtCoexist->btc_write_4byte(pBtCoexist, 0xc78,0x631d0001); + pBtCoexist->btc_write_4byte(pBtCoexist, 0xc78,0x621e0001); + pBtCoexist->btc_write_4byte(pBtCoexist, 0xc78,0x611f0001); + pBtCoexist->btc_write_4byte(pBtCoexist, 0xc78,0x60200001); + + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x12, 0xfffff, 0x32000); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x12, 0xfffff, 0x71000); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x12, 0xfffff, 0xb0000); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x12, 0xfffff, 0xfc000); + pBtCoexist->btc_set_rf_reg(pBtCoexist, BTC_RF_A, 0x1a, 0xfffff, 0x30355); + } + + // set rssiAdjustVal for wifi module. + pBtCoexist->btc_set(pBtCoexist, BTC_SET_U1_RSSI_ADJ_VAL_FOR_AGC_TABLE_ON, &rssiAdjustVal); +} + + +VOID +halbtc8723a2ant_AgcTable( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bAgcTableEn + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s %s Agc Table\n", + (bForceExec? "force to":""), ((bAgcTableEn)? "Enable":"Disable"))); + pCoexDm->bCurAgcTableEn = bAgcTableEn; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], bPreAgcTableEn=%d, bCurAgcTableEn=%d\n", + pCoexDm->bPreAgcTableEn, pCoexDm->bCurAgcTableEn)); + + if(pCoexDm->bPreAgcTableEn == pCoexDm->bCurAgcTableEn) + return; + } + halbtc8723a2ant_SetAgcTable(pBtCoexist, bAgcTableEn); + + pCoexDm->bPreAgcTableEn = pCoexDm->bCurAgcTableEn; +} + +VOID +halbtc8723a2ant_SetCoexTable( + IN PBTC_COEXIST pBtCoexist, + IN u4Byte val0x6c0, + IN u4Byte val0x6c8, + IN u1Byte val0x6cc + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], set coex table, set 0x6c0=0x%x\n", val0x6c0)); + pBtCoexist->btc_write_4byte(pBtCoexist, 0x6c0, val0x6c0); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], set coex table, set 0x6c8=0x%x\n", val0x6c8)); + pBtCoexist->btc_write_4byte(pBtCoexist, 0x6c8, val0x6c8); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, ("[BTCoex], set coex table, set 0x6cc=0x%x\n", val0x6cc)); + pBtCoexist->btc_write_1byte(pBtCoexist, 0x6cc, val0x6cc); +} + +VOID +halbtc8723a2ant_CoexTable( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN u4Byte val0x6c0, + IN u4Byte val0x6c8, + IN u1Byte val0x6cc + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, ("[BTCoex], %s write Coex Table 0x6c0=0x%x, 0x6c8=0x%x, 0x6cc=0x%x\n", + (bForceExec? "force to":""), val0x6c0, val0x6c8, val0x6cc)); + pCoexDm->curVal0x6c0 = val0x6c0; + pCoexDm->curVal0x6c8 = val0x6c8; + pCoexDm->curVal0x6cc = val0x6cc; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], preVal0x6c0=0x%x, preVal0x6c8=0x%x, preVal0x6cc=0x%x !!\n", + pCoexDm->preVal0x6c0, pCoexDm->preVal0x6c8, pCoexDm->preVal0x6cc)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, ("[BTCoex], curVal0x6c0=0x%x, curVal0x6c8=0x%x, curVal0x6cc=0x%x !!\n", + pCoexDm->curVal0x6c0, pCoexDm->curVal0x6c8, pCoexDm->curVal0x6cc)); + + if( (pCoexDm->preVal0x6c0 == pCoexDm->curVal0x6c0) && + (pCoexDm->preVal0x6c8 == pCoexDm->curVal0x6c8) && + (pCoexDm->preVal0x6cc == pCoexDm->curVal0x6cc) ) + return; + } + halbtc8723a2ant_SetCoexTable(pBtCoexist, val0x6c0, val0x6c8, val0x6cc); + + pCoexDm->preVal0x6c0 = pCoexDm->curVal0x6c0; + pCoexDm->preVal0x6c8 = pCoexDm->curVal0x6c8; + pCoexDm->preVal0x6cc = pCoexDm->curVal0x6cc; +} + +VOID +halbtc8723a2ant_SetFwIgnoreWlanAct( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bEnable + ) +{ + u1Byte H2C_Parameter[1] ={0}; + + if(bEnable) + { + H2C_Parameter[0] |= BIT0; // function enable + } + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], set FW for BT Ignore Wlan_Act, FW write 0x25=0x%x\n", + H2C_Parameter[0])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x25, 1, H2C_Parameter); +} + +VOID +halbtc8723a2ant_IgnoreWlanAct( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bEnable + ) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s turn Ignore WlanAct %s\n", + (bForceExec? "force to":""), (bEnable? "ON":"OFF"))); + pCoexDm->bCurIgnoreWlanAct = bEnable; + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], bPreIgnoreWlanAct = %d, bCurIgnoreWlanAct = %d!!\n", + pCoexDm->bPreIgnoreWlanAct, pCoexDm->bCurIgnoreWlanAct)); + + if(pCoexDm->bPreIgnoreWlanAct == pCoexDm->bCurIgnoreWlanAct) + return; + } + halbtc8723a2ant_SetFwIgnoreWlanAct(pBtCoexist, bEnable); + + pCoexDm->bPreIgnoreWlanAct = pCoexDm->bCurIgnoreWlanAct; +} + +VOID +halbtc8723a2ant_SetFwPstdma( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte byte1, + IN u1Byte byte2, + IN u1Byte byte3, + IN u1Byte byte4, + IN u1Byte byte5 + ) +{ + u1Byte H2C_Parameter[5] ={0}; + + H2C_Parameter[0] = byte1; + H2C_Parameter[1] = byte2; + H2C_Parameter[2] = byte3; + H2C_Parameter[3] = byte4; + H2C_Parameter[4] = byte5; + + pCoexDm->psTdmaPara[0] = byte1; + pCoexDm->psTdmaPara[1] = byte2; + pCoexDm->psTdmaPara[2] = byte3; + pCoexDm->psTdmaPara[3] = byte4; + pCoexDm->psTdmaPara[4] = byte5; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, ("[BTCoex], FW write 0x3a(5bytes)=0x%x%08x\n", + H2C_Parameter[0], + H2C_Parameter[1]<<24|H2C_Parameter[2]<<16|H2C_Parameter[3]<<8|H2C_Parameter[4])); + + pBtCoexist->btc_fill_h2c(pBtCoexist, 0x3a, 5, H2C_Parameter); +} + +VOID +halbtc8723a2ant_PsTdma( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bForceExec, + IN BOOLEAN bTurnOn, + IN u1Byte type + ) +{ + u4Byte btTxRxCnt=0; + + btTxRxCnt = pCoexSta->highPriorityTx+pCoexSta->highPriorityRx+ + pCoexSta->lowPriorityTx+pCoexSta->lowPriorityRx; + + if(btTxRxCnt > 3000) + { + pCoexDm->bCurPsTdmaOn = true; + pCoexDm->curPsTdma = 8; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], turn ON PS TDMA, type=%d for BT tx/rx counters=%d(>3000)\n", + pCoexDm->curPsTdma, btTxRxCnt)); + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], %s turn %s PS TDMA, type=%d\n", + (bForceExec? "force to":""), (bTurnOn? "ON":"OFF"), type)); + pCoexDm->bCurPsTdmaOn = bTurnOn; + pCoexDm->curPsTdma = type; + } + + if(!bForceExec) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], bPrePsTdmaOn = %d, bCurPsTdmaOn = %d!!\n", + pCoexDm->bPrePsTdmaOn, pCoexDm->bCurPsTdmaOn)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], prePsTdma = %d, curPsTdma = %d!!\n", + pCoexDm->prePsTdma, pCoexDm->curPsTdma)); + + if( (pCoexDm->bPrePsTdmaOn == pCoexDm->bCurPsTdmaOn) && + (pCoexDm->prePsTdma == pCoexDm->curPsTdma) ) + return; + } + if(pCoexDm->bCurPsTdmaOn) + { + switch(pCoexDm->curPsTdma) + { + case 1: + default: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0x1a, 0x1a, 0xe1, 0x98); + break; + case 2: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0x12, 0x12, 0xe1, 0x98); + break; + case 3: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0xa, 0xa, 0xe1, 0x98); + break; + case 4: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xa3, 0x5, 0x5, 0xe1, 0x80); + break; + case 5: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0x1a, 0x1a, 0x60, 0x98); + break; + case 6: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0x12, 0x12, 0x60, 0x98); + break; + case 7: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0xa, 0xa, 0x60, 0x98); + break; + case 8: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xa3, 0x5, 0x5, 0x60, 0x80); + break; + case 9: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0x1a, 0x1a, 0xe1, 0x98); + break; + case 10: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0x12, 0x12, 0xe1, 0x98); + break; + case 11: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0xa, 0xa, 0xe1, 0x98); + break; + case 12: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0x5, 0x5, 0xe1, 0x98); + break; + case 13: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0x1a, 0x1a, 0x60, 0x98); + break; + case 14: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0x12, 0x12, 0x60, 0x98); + break; + case 15: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0xa, 0xa, 0x60, 0x98); + break; + case 16: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0x5, 0x5, 0x60, 0x98); + break; + case 17: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xa3, 0x2f, 0x2f, 0x60, 0x80); + break; + case 18: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0x5, 0x5, 0xe1, 0x98); + break; + case 19: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0x25, 0x25, 0xe1, 0x98); + break; + case 20: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0xe3, 0x25, 0x25, 0x60, 0x98); + break; + } + } + else + { + // disable PS tdma + switch(pCoexDm->curPsTdma) + { + case 0: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0x0, 0x0, 0x0, 0x8, 0x0); + break; + case 1: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0x0, 0x0, 0x0, 0x0, 0x0); + break; + default: + halbtc8723a2ant_SetFwPstdma(pBtCoexist, 0x0, 0x0, 0x0, 0x8, 0x0); + break; + } + } + + // update pre state + pCoexDm->bPrePsTdmaOn = pCoexDm->bCurPsTdmaOn; + pCoexDm->prePsTdma = pCoexDm->curPsTdma; +} + + +VOID +halbtc8723a2ant_CoexAllOff( + IN PBTC_COEXIST pBtCoexist + ) +{ + // fw all off + halbtc8723a2ant_IgnoreWlanAct(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + halbtc8723a2ant_FwDacSwingLvl(pBtCoexist, NORMAL_EXEC, 0x20); + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, FALSE); + + // sw all off + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_LowPenaltyRa(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_RfShrink(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + + // hw all off + halbtc8723a2ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); +} + +VOID +halbtc8723a2ant_InitCoexDm( + IN PBTC_COEXIST pBtCoexist + ) +{ + // force to reset coex mechanism + halbtc8723a2ant_CoexTable(pBtCoexist, FORCE_EXEC, 0x55555555, 0xffff, 0x3); + halbtc8723a2ant_PsTdma(pBtCoexist, FORCE_EXEC, FALSE, 0); + halbtc8723a2ant_FwDacSwingLvl(pBtCoexist, FORCE_EXEC, 0x20); + halbtc8723a2ant_DecBtPwr(pBtCoexist, FORCE_EXEC, FALSE); + halbtc8723a2ant_IgnoreWlanAct(pBtCoexist, FORCE_EXEC, FALSE); + + halbtc8723a2ant_AgcTable(pBtCoexist, FORCE_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, FORCE_EXEC, FALSE); + halbtc8723a2ant_LowPenaltyRa(pBtCoexist, FORCE_EXEC, FALSE); + halbtc8723a2ant_RfShrink(pBtCoexist, FORCE_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, FORCE_EXEC, FALSE, 0xc0); +} + +VOID +halbtc8723a2ant_BtInquiryPage( + IN PBTC_COEXIST pBtCoexist + ) +{ + BOOLEAN bLowPwrDisable=true; + + pBtCoexist->btc_set(pBtCoexist, BTC_SET_ACT_DISABLE_LOW_POWER, &bLowPwrDisable); + + halbtc8723a2ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); + halbtc8723a2ant_IgnoreWlanAct(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 8); +} + +VOID +halbtc8723a2ant_BtEnableAction( + IN PBTC_COEXIST pBtCoexist + ) +{ + BOOLEAN bWifiConnected=FALSE; + + // Here we need to resend some wifi info to BT + // because bt is reset and loss of the info. + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); + if(bWifiConnected) + { + halbtc8723a2ant_IndicateWifiChnlBwInfo(pBtCoexist, BTC_MEDIA_CONNECT); + } + else + { + halbtc8723a2ant_IndicateWifiChnlBwInfo(pBtCoexist, BTC_MEDIA_DISCONNECT); + } + + halbtc8723a2ant_IgnoreWlanAct(pBtCoexist, FORCE_EXEC, FALSE); +} + +VOID +halbtc8723a2ant_MonitorBtCtr( + IN PBTC_COEXIST pBtCoexist + ) +{ + u4Byte regHPTxRx, regLPTxRx, u4Tmp; + u4Byte regHPTx=0, regHPRx=0, regLPTx=0, regLPRx=0; + u1Byte u1Tmp; + + regHPTxRx = 0x770; + regLPTxRx = 0x774; + + u4Tmp = pBtCoexist->btc_read_4byte(pBtCoexist, regHPTxRx); + regHPTx = u4Tmp & MASKLWORD; + regHPRx = (u4Tmp & MASKHWORD)>>16; + + u4Tmp = pBtCoexist->btc_read_4byte(pBtCoexist, regLPTxRx); + regLPTx = u4Tmp & MASKLWORD; + regLPRx = (u4Tmp & MASKHWORD)>>16; + + pCoexSta->highPriorityTx = regHPTx; + pCoexSta->highPriorityRx = regHPRx; + pCoexSta->lowPriorityTx = regLPTx; + pCoexSta->lowPriorityRx = regLPRx; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], High Priority Tx/Rx (reg 0x%x)=0x%x(%d)/0x%x(%d)\n", + regHPTxRx, regHPTx, regHPTx, regHPRx, regHPRx)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], Low Priority Tx/Rx (reg 0x%x)=0x%x(%d)/0x%x(%d)\n", + regLPTxRx, regLPTx, regLPTx, regLPRx, regLPRx)); + + // reset counter + pBtCoexist->btc_write_1byte(pBtCoexist, 0x76e, 0xc); +} + +VOID +halbtc8723a2ant_MonitorBtEnableDisable( + IN PBTC_COEXIST pBtCoexist + ) +{ + static BOOLEAN bPreBtDisabled=FALSE; + static u4Byte btDisableCnt=0; + BOOLEAN bBtActive=true, bBtDisabled=FALSE; + + // This function check if bt is disabled + + if( pCoexSta->highPriorityTx == 0 && + pCoexSta->highPriorityRx == 0 && + pCoexSta->lowPriorityTx == 0 && + pCoexSta->lowPriorityRx == 0) + { + bBtActive = FALSE; + } + if( pCoexSta->highPriorityTx == 0xffff && + pCoexSta->highPriorityRx == 0xffff && + pCoexSta->lowPriorityTx == 0xffff && + pCoexSta->lowPriorityRx == 0xffff) + { + bBtActive = FALSE; + } + if(bBtActive) + { + btDisableCnt = 0; + bBtDisabled = FALSE; + pBtCoexist->btc_set(pBtCoexist, BTC_SET_BL_BT_DISABLE, &bBtDisabled); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], BT is enabled !!\n")); + } + else + { + btDisableCnt++; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], bt all counters=0, %d times!!\n", + btDisableCnt)); + if(btDisableCnt >= 2) + { + bBtDisabled = true; + pBtCoexist->btc_set(pBtCoexist, BTC_SET_BL_BT_DISABLE, &bBtDisabled); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], BT is disabled !!\n")); + } + } + if(bPreBtDisabled != bBtDisabled) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, ("[BTCoex], BT is from %s to %s!!\n", + (bPreBtDisabled ? "disabled":"enabled"), + (bBtDisabled ? "disabled":"enabled"))); + bPreBtDisabled = bBtDisabled; + if(!bBtDisabled) + { + halbtc8723a2ant_BtEnableAction(pBtCoexist); + } + } +} + +BOOLEAN +halbtc8723a2ant_IsCommonAction( + IN PBTC_COEXIST pBtCoexist + ) +{ + PBTC_STACK_INFO pStackInfo=&pBtCoexist->stack_info; + BOOLEAN bCommon=FALSE, bWifiConnected=FALSE; + BOOLEAN bLowPwrDisable=FALSE; + + if(!pStackInfo->bBtLinkExist) + { + bLowPwrDisable = FALSE; + pBtCoexist->btc_set(pBtCoexist, BTC_SET_ACT_DISABLE_LOW_POWER, &bLowPwrDisable); + } + else + { + bLowPwrDisable = true; + pBtCoexist->btc_set(pBtCoexist, BTC_SET_ACT_DISABLE_LOW_POWER, &bLowPwrDisable); + } + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_CONNECTED, &bWifiConnected); + + if(halbtc8723a2ant_IsWifiIdle(pBtCoexist) && + BT_8723A_2ANT_BT_STATUS_IDLE == pCoexDm->btStatus) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi idle + Bt idle!!\n")); + + halbtc8723a2ant_LowPenaltyRa(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_RfShrink(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); + + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + halbtc8723a2ant_FwDacSwingLvl(pBtCoexist, NORMAL_EXEC, 0x20); + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, FALSE); + + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + + bCommon = true; + } + else if(!halbtc8723a2ant_IsWifiIdle(pBtCoexist) && + (BT_8723A_2ANT_BT_STATUS_IDLE == pCoexDm->btStatus) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi non-idle + BT idle!!\n")); + + halbtc8723a2ant_LowPenaltyRa(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_RfShrink(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); + + halbtc8723a2ant_IgnoreWlanAct(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + halbtc8723a2ant_FwDacSwingLvl(pBtCoexist, NORMAL_EXEC, 0x20); + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, true); + + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + + bCommon = true; + } + else if(halbtc8723a2ant_IsWifiIdle(pBtCoexist) && + (BT_8723A_2ANT_BT_STATUS_CONNECTED_IDLE == pCoexDm->btStatus) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi idle + Bt connected idle!!\n")); + + halbtc8723a2ant_LowPenaltyRa(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_RfShrink(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); + + halbtc8723a2ant_IgnoreWlanAct(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + halbtc8723a2ant_FwDacSwingLvl(pBtCoexist, NORMAL_EXEC, 0x20); + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, FALSE); + + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + + bCommon = true; + } + else if(!halbtc8723a2ant_IsWifiIdle(pBtCoexist) && + (BT_8723A_2ANT_BT_STATUS_CONNECTED_IDLE == pCoexDm->btStatus) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi non-idle + Bt connected idle!!\n")); + + halbtc8723a2ant_LowPenaltyRa(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_RfShrink(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); + + halbtc8723a2ant_IgnoreWlanAct(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + halbtc8723a2ant_FwDacSwingLvl(pBtCoexist, NORMAL_EXEC, 0x20); + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, FALSE); + + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + + bCommon = true; + } + else if(halbtc8723a2ant_IsWifiIdle(pBtCoexist) && + (BT_8723A_2ANT_BT_STATUS_NON_IDLE == pCoexDm->btStatus) ) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi idle + BT non-idle!!\n")); + + halbtc8723a2ant_LowPenaltyRa(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_RfShrink(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); + + halbtc8723a2ant_IgnoreWlanAct(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + halbtc8723a2ant_FwDacSwingLvl(pBtCoexist, NORMAL_EXEC, 0x20); + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, FALSE); + + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + + bCommon = true; + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Wifi non-idle + BT non-idle!!\n")); + halbtc8723a2ant_LowPenaltyRa(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_RfShrink(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_IgnoreWlanAct(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_FwDacSwingLvl(pBtCoexist, NORMAL_EXEC, 0x20); + + bCommon = FALSE; + } + + return bCommon; +} +VOID +halbtc8723a2ant_TdmaDurationAdjust( + IN PBTC_COEXIST pBtCoexist, + IN BOOLEAN bScoHid, + IN BOOLEAN bTxPause, + IN u1Byte maxInterval + ) +{ + static s4Byte up,dn,m,n,WaitCount; + s4Byte result; //0: no change, +1: increase WiFi duration, -1: decrease WiFi duration + u1Byte retryCount=0; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, ("[BTCoex], TdmaDurationAdjust()\n")); + + if(pCoexDm->bResetTdmaAdjust) + { + pCoexDm->bResetTdmaAdjust = FALSE; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], first run TdmaDurationAdjust()!!\n")); + { + if(bScoHid) + { + if(bTxPause) + { + if(maxInterval == 1) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 13); + pCoexDm->psTdmaDuAdjType = 13; + } + else if(maxInterval == 2) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 14); + pCoexDm->psTdmaDuAdjType = 14; + } + else if(maxInterval == 3) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + pCoexDm->psTdmaDuAdjType = 15; + } + else + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + pCoexDm->psTdmaDuAdjType = 15; + } + } + else + { + if(maxInterval == 1) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 9); + pCoexDm->psTdmaDuAdjType = 9; + } + else if(maxInterval == 2) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 10); + pCoexDm->psTdmaDuAdjType = 10; + } + else if(maxInterval == 3) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + else + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + } + } + else + { + if(bTxPause) + { + if(maxInterval == 1) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 5); + pCoexDm->psTdmaDuAdjType = 5; + } + else if(maxInterval == 2) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 6); + pCoexDm->psTdmaDuAdjType = 6; + } + else if(maxInterval == 3) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 7); + pCoexDm->psTdmaDuAdjType = 7; + } + else + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 7); + pCoexDm->psTdmaDuAdjType = 7; + } + } + else + { + if(maxInterval == 1) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 1); + pCoexDm->psTdmaDuAdjType = 1; + } + else if(maxInterval == 2) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + pCoexDm->psTdmaDuAdjType = 2; + } + else if(maxInterval == 3) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->psTdmaDuAdjType = 3; + } + else + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->psTdmaDuAdjType = 3; + } + } + } + } + //============ + up = 0; + dn = 0; + m = 1; + n= 3; + result = 0; + WaitCount = 0; + } + else + { + //accquire the BT TRx retry count from BT_Info byte2 + retryCount = pCoexSta->btRetryCnt; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], retryCount = %d\n", retryCount)); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], up=%d, dn=%d, m=%d, n=%d, WaitCount=%d\n", + up, dn, m, n, WaitCount)); + result = 0; + WaitCount++; + + if(retryCount == 0) // no retry in the last 2-second duration + { + up++; + dn--; + + if (dn <= 0) + dn = 0; + + if(up >= n) // if s n 2 retry count0, hռeWiFi duration + { + WaitCount = 0; + n = 3; + up = 0; + dn = 0; + result = 1; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], Increase wifi duration!!\n")); + } + } + else if (retryCount <= 3) // <=3 retry in the last 2-second duration + { + up--; + dn++; + + if (up <= 0) + up = 0; + + if (dn == 2) // if s 2 2 retry count< 3, hկWiFi duration + { + if (WaitCount <= 2) + m++; // קK@blevelӦ^ + else + m = 1; + + if ( m >= 20) //m ̤j = 20 ' ̤j120 recheckO_վ WiFi duration. + m = 20; + + n = 3*m; + up = 0; + dn = 0; + WaitCount = 0; + result = -1; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], Decrease wifi duration for retryCounter<3!!\n")); + } + } + else //retry count > 3, un1 retry count > 3, hկWiFi duration + { + if (WaitCount == 1) + m++; // קK@blevelӦ^ + else + m = 1; + + if ( m >= 20) //m ̤j = 20 ' ̤j120 recheckO_վ WiFi duration. + m = 20; + + n = 3*m; + up = 0; + dn = 0; + WaitCount = 0; + result = -1; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], Decrease wifi duration for retryCounter>3!!\n")); + } + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], max Interval = %d\n", maxInterval)); + if(maxInterval == 1) + { + if(bTxPause) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], TxPause = 1\n")); + + if(pCoexDm->curPsTdma == 1) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 5); + pCoexDm->psTdmaDuAdjType = 5; + } + else if(pCoexDm->curPsTdma == 2) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 6); + pCoexDm->psTdmaDuAdjType = 6; + } + else if(pCoexDm->curPsTdma == 3) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 7); + pCoexDm->psTdmaDuAdjType = 7; + } + else if(pCoexDm->curPsTdma == 4) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 8); + pCoexDm->psTdmaDuAdjType = 8; + } + if(pCoexDm->curPsTdma == 9) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 13); + pCoexDm->psTdmaDuAdjType = 13; + } + else if(pCoexDm->curPsTdma == 10) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 14); + pCoexDm->psTdmaDuAdjType = 14; + } + else if(pCoexDm->curPsTdma == 11) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + pCoexDm->psTdmaDuAdjType = 15; + } + else if(pCoexDm->curPsTdma == 12) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 16); + pCoexDm->psTdmaDuAdjType = 16; + } + + if(result == -1) + { + if(pCoexDm->curPsTdma == 5) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 6); + pCoexDm->psTdmaDuAdjType = 6; + } + else if(pCoexDm->curPsTdma == 6) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 7); + pCoexDm->psTdmaDuAdjType = 7; + } + else if(pCoexDm->curPsTdma == 7) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 8); + pCoexDm->psTdmaDuAdjType = 8; + } + else if(pCoexDm->curPsTdma == 13) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 14); + pCoexDm->psTdmaDuAdjType = 14; + } + else if(pCoexDm->curPsTdma == 14) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + pCoexDm->psTdmaDuAdjType = 15; + } + else if(pCoexDm->curPsTdma == 15) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 16); + pCoexDm->psTdmaDuAdjType = 16; + } + } + else if (result == 1) + { + if(pCoexDm->curPsTdma == 8) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 7); + pCoexDm->psTdmaDuAdjType = 7; + } + else if(pCoexDm->curPsTdma == 7) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 6); + pCoexDm->psTdmaDuAdjType = 6; + } + else if(pCoexDm->curPsTdma == 6) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 5); + pCoexDm->psTdmaDuAdjType = 5; + } + else if(pCoexDm->curPsTdma == 16) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + pCoexDm->psTdmaDuAdjType = 15; + } + else if(pCoexDm->curPsTdma == 15) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 14); + pCoexDm->psTdmaDuAdjType = 14; + } + else if(pCoexDm->curPsTdma == 14) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 13); + pCoexDm->psTdmaDuAdjType = 13; + } + } + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], TxPause = 0\n")); + if(pCoexDm->curPsTdma == 5) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 1); + pCoexDm->psTdmaDuAdjType = 1; + } + else if(pCoexDm->curPsTdma == 6) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + pCoexDm->psTdmaDuAdjType = 2; + } + else if(pCoexDm->curPsTdma == 7) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->psTdmaDuAdjType = 3; + } + else if(pCoexDm->curPsTdma == 8) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 4); + pCoexDm->psTdmaDuAdjType = 4; + } + if(pCoexDm->curPsTdma == 13) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 9); + pCoexDm->psTdmaDuAdjType = 9; + } + else if(pCoexDm->curPsTdma == 14) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 10); + pCoexDm->psTdmaDuAdjType = 10; + } + else if(pCoexDm->curPsTdma == 15) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + else if(pCoexDm->curPsTdma == 16) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 12); + pCoexDm->psTdmaDuAdjType = 12; + } + + if(result == -1) + { + if(pCoexDm->curPsTdma == 1) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + pCoexDm->psTdmaDuAdjType = 2; + } + else if(pCoexDm->curPsTdma == 2) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->psTdmaDuAdjType = 3; + } + else if(pCoexDm->curPsTdma == 3) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 4); + pCoexDm->psTdmaDuAdjType = 4; + } + else if(pCoexDm->curPsTdma == 9) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 10); + pCoexDm->psTdmaDuAdjType = 10; + } + else if(pCoexDm->curPsTdma == 10) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + else if(pCoexDm->curPsTdma == 11) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 12); + pCoexDm->psTdmaDuAdjType = 12; + } + } + else if (result == 1) + { + if(pCoexDm->curPsTdma == 4) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->psTdmaDuAdjType = 3; + } + else if(pCoexDm->curPsTdma == 3) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + pCoexDm->psTdmaDuAdjType = 2; + } + else if(pCoexDm->curPsTdma == 2) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 1); + pCoexDm->psTdmaDuAdjType = 1; + } + else if(pCoexDm->curPsTdma == 12) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + else if(pCoexDm->curPsTdma == 11) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 10); + pCoexDm->psTdmaDuAdjType = 10; + } + else if(pCoexDm->curPsTdma == 10) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 9); + pCoexDm->psTdmaDuAdjType = 9; + } + } + } + } + else if(maxInterval == 2) + { + if(bTxPause) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], TxPause = 1\n")); + if(pCoexDm->curPsTdma == 1) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 6); + pCoexDm->psTdmaDuAdjType = 6; + } + else if(pCoexDm->curPsTdma == 2) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 6); + pCoexDm->psTdmaDuAdjType = 6; + } + else if(pCoexDm->curPsTdma == 3) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 7); + pCoexDm->psTdmaDuAdjType = 7; + } + else if(pCoexDm->curPsTdma == 4) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 8); + pCoexDm->psTdmaDuAdjType = 8; + } + if(pCoexDm->curPsTdma == 9) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 14); + pCoexDm->psTdmaDuAdjType = 14; + } + else if(pCoexDm->curPsTdma == 10) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 14); + pCoexDm->psTdmaDuAdjType = 14; + } + else if(pCoexDm->curPsTdma == 11) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + pCoexDm->psTdmaDuAdjType = 15; + } + else if(pCoexDm->curPsTdma == 12) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 16); + pCoexDm->psTdmaDuAdjType = 16; + } + if(result == -1) + { + if(pCoexDm->curPsTdma == 5) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 6); + pCoexDm->psTdmaDuAdjType = 6; + } + else if(pCoexDm->curPsTdma == 6) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 7); + pCoexDm->psTdmaDuAdjType = 7; + } + else if(pCoexDm->curPsTdma == 7) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 8); + pCoexDm->psTdmaDuAdjType = 8; + } + else if(pCoexDm->curPsTdma == 13) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 14); + pCoexDm->psTdmaDuAdjType = 14; + } + else if(pCoexDm->curPsTdma == 14) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + pCoexDm->psTdmaDuAdjType = 15; + } + else if(pCoexDm->curPsTdma == 15) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 16); + pCoexDm->psTdmaDuAdjType = 16; + } + } + else if (result == 1) + { + if(pCoexDm->curPsTdma == 8) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 7); + pCoexDm->psTdmaDuAdjType = 7; + } + else if(pCoexDm->curPsTdma == 7) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 6); + pCoexDm->psTdmaDuAdjType = 6; + } + else if(pCoexDm->curPsTdma == 6) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 6); + pCoexDm->psTdmaDuAdjType = 6; + } + else if(pCoexDm->curPsTdma == 16) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + pCoexDm->psTdmaDuAdjType = 15; + } + else if(pCoexDm->curPsTdma == 15) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 14); + pCoexDm->psTdmaDuAdjType = 14; + } + else if(pCoexDm->curPsTdma == 14) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 14); + pCoexDm->psTdmaDuAdjType = 14; + } + } + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], TxPause = 0\n")); + if(pCoexDm->curPsTdma == 5) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + pCoexDm->psTdmaDuAdjType = 2; + } + else if(pCoexDm->curPsTdma == 6) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + pCoexDm->psTdmaDuAdjType = 2; + } + else if(pCoexDm->curPsTdma == 7) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->psTdmaDuAdjType = 3; + } + else if(pCoexDm->curPsTdma == 8) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 4); + pCoexDm->psTdmaDuAdjType = 4; + } + if(pCoexDm->curPsTdma == 13) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 10); + pCoexDm->psTdmaDuAdjType = 10; + } + else if(pCoexDm->curPsTdma == 14) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 10); + pCoexDm->psTdmaDuAdjType = 10; + } + else if(pCoexDm->curPsTdma == 15) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + else if(pCoexDm->curPsTdma == 16) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 12); + pCoexDm->psTdmaDuAdjType = 12; + } + if(result == -1) + { + if(pCoexDm->curPsTdma == 1) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + pCoexDm->psTdmaDuAdjType = 2; + } + else if(pCoexDm->curPsTdma == 2) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->psTdmaDuAdjType = 3; + } + else if(pCoexDm->curPsTdma == 3) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 4); + pCoexDm->psTdmaDuAdjType = 4; + } + else if(pCoexDm->curPsTdma == 9) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 10); + pCoexDm->psTdmaDuAdjType = 10; + } + else if(pCoexDm->curPsTdma == 10) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + else if(pCoexDm->curPsTdma == 11) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 12); + pCoexDm->psTdmaDuAdjType = 12; + } + } + else if (result == 1) + { + if(pCoexDm->curPsTdma == 4) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->psTdmaDuAdjType = 3; + } + else if(pCoexDm->curPsTdma == 3) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + pCoexDm->psTdmaDuAdjType = 2; + } + else if(pCoexDm->curPsTdma == 2) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + pCoexDm->psTdmaDuAdjType = 2; + } + else if(pCoexDm->curPsTdma == 12) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + else if(pCoexDm->curPsTdma == 11) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 10); + pCoexDm->psTdmaDuAdjType = 10; + } + else if(pCoexDm->curPsTdma == 10) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 10); + pCoexDm->psTdmaDuAdjType = 10; + } + } + } + } + else if(maxInterval == 3) + { + if(bTxPause) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], TxPause = 1\n")); + if(pCoexDm->curPsTdma == 1) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 7); + pCoexDm->psTdmaDuAdjType = 7; + } + else if(pCoexDm->curPsTdma == 2) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 7); + pCoexDm->psTdmaDuAdjType = 7; + } + else if(pCoexDm->curPsTdma == 3) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 7); + pCoexDm->psTdmaDuAdjType = 7; + } + else if(pCoexDm->curPsTdma == 4) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 8); + pCoexDm->psTdmaDuAdjType = 8; + } + if(pCoexDm->curPsTdma == 9) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + pCoexDm->psTdmaDuAdjType = 15; + } + else if(pCoexDm->curPsTdma == 10) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + pCoexDm->psTdmaDuAdjType = 15; + } + else if(pCoexDm->curPsTdma == 11) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + pCoexDm->psTdmaDuAdjType = 15; + } + else if(pCoexDm->curPsTdma == 12) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 16); + pCoexDm->psTdmaDuAdjType = 16; + } + if(result == -1) + { + if(pCoexDm->curPsTdma == 5) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 7); + pCoexDm->psTdmaDuAdjType = 7; + } + else if(pCoexDm->curPsTdma == 6) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 7); + pCoexDm->psTdmaDuAdjType = 7; + } + else if(pCoexDm->curPsTdma == 7) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 8); + pCoexDm->psTdmaDuAdjType = 8; + } + else if(pCoexDm->curPsTdma == 13) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + pCoexDm->psTdmaDuAdjType = 15; + } + else if(pCoexDm->curPsTdma == 14) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + pCoexDm->psTdmaDuAdjType = 15; + } + else if(pCoexDm->curPsTdma == 15) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 16); + pCoexDm->psTdmaDuAdjType = 16; + } + } + else if (result == 1) + { + if(pCoexDm->curPsTdma == 8) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 7); + pCoexDm->psTdmaDuAdjType = 7; + } + else if(pCoexDm->curPsTdma == 7) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 7); + pCoexDm->psTdmaDuAdjType = 7; + } + else if(pCoexDm->curPsTdma == 6) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 7); + pCoexDm->psTdmaDuAdjType = 7; + } + else if(pCoexDm->curPsTdma == 16) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + pCoexDm->psTdmaDuAdjType = 15; + } + else if(pCoexDm->curPsTdma == 15) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + pCoexDm->psTdmaDuAdjType = 15; + } + else if(pCoexDm->curPsTdma == 14) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + pCoexDm->psTdmaDuAdjType = 15; + } + } + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], TxPause = 0\n")); + if(pCoexDm->curPsTdma == 5) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->psTdmaDuAdjType = 3; + } + else if(pCoexDm->curPsTdma == 6) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->psTdmaDuAdjType = 3; + } + else if(pCoexDm->curPsTdma == 7) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->psTdmaDuAdjType = 3; + } + else if(pCoexDm->curPsTdma == 8) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 4); + pCoexDm->psTdmaDuAdjType = 4; + } + if(pCoexDm->curPsTdma == 13) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + else if(pCoexDm->curPsTdma == 14) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + else if(pCoexDm->curPsTdma == 15) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + else if(pCoexDm->curPsTdma == 16) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 12); + pCoexDm->psTdmaDuAdjType = 12; + } + if(result == -1) + { + if(pCoexDm->curPsTdma == 1) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->psTdmaDuAdjType = 3; + } + else if(pCoexDm->curPsTdma == 2) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->psTdmaDuAdjType = 3; + } + else if(pCoexDm->curPsTdma == 3) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 4); + pCoexDm->psTdmaDuAdjType = 4; + } + else if(pCoexDm->curPsTdma == 9) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + else if(pCoexDm->curPsTdma == 10) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + else if(pCoexDm->curPsTdma == 11) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 12); + pCoexDm->psTdmaDuAdjType = 12; + } + } + else if (result == 1) + { + if(pCoexDm->curPsTdma == 4) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->psTdmaDuAdjType = 3; + } + else if(pCoexDm->curPsTdma == 3) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->psTdmaDuAdjType = 3; + } + else if(pCoexDm->curPsTdma == 2) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 3); + pCoexDm->psTdmaDuAdjType = 3; + } + else if(pCoexDm->curPsTdma == 12) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + else if(pCoexDm->curPsTdma == 11) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + else if(pCoexDm->curPsTdma == 10) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + pCoexDm->psTdmaDuAdjType = 11; + } + } + } + } + } + + // if current PsTdma not match with the recorded one (when scan, dhcp...), + // then we have to adjust it back to the previous record one. + if(pCoexDm->curPsTdma != pCoexDm->psTdmaDuAdjType) + { + BOOLEAN bScan=FALSE, bLink=FALSE, bRoam=FALSE; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], PsTdma type dismatch!!!, curPsTdma=%d, recordPsTdma=%d\n", + pCoexDm->curPsTdma, pCoexDm->psTdmaDuAdjType)); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_SCAN, &bScan); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_LINK, &bLink); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_ROAM, &bRoam); + + if( !bScan && !bLink && !bRoam) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, pCoexDm->psTdmaDuAdjType); + } + else + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, ("[BTCoex], roaming/link/scan is under progress, will adjust next time!!!\n")); + } + } +} + +// SCO only or SCO+PAN(HS) +VOID +halbtc8723a2ant_ActionSco( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState, wifiRssiState1; + u4Byte wifiBw; + + if(halbtc8723a2ant_NeedToDecBtPwr(pBtCoexist)) + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, true); + else + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + if(BTC_WIFI_BW_HT40 == wifiBw) + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 37, 0); + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + } + else + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + } + + // sw mechanism + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 27, 0); + wifiRssiState1 = halbtc8723a2ant_WifiRssiState(pBtCoexist, 1, 2, 47, 0); + + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 11); + } + else + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 15); + } + + // sw mechanism + if( (wifiRssiState1 == BTC_RSSI_STATE_HIGH) || + (wifiRssiState1 == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + } +} + + +VOID +halbtc8723a2ant_ActionHid( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState, wifiRssiState1; + u4Byte wifiBw; + + if(halbtc8723a2ant_NeedToDecBtPwr(pBtCoexist)) + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, true); + else + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + if(BTC_WIFI_BW_HT40 == wifiBw) + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 37, 0); + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 9); + } + else + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 13); + } + + // sw mechanism + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 27, 0); + wifiRssiState1 = halbtc8723a2ant_WifiRssiState(pBtCoexist, 1, 2, 47, 0); + + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 9); + } + else + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 13); + } + + // sw mechanism + if( (wifiRssiState1 == BTC_RSSI_STATE_HIGH) || + (wifiRssiState1 == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + } +} + +//A2DP only / PAN(EDR) only/ A2DP+PAN(HS) +VOID +halbtc8723a2ant_ActionA2dp( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState, wifiRssiState1, btInfoExt; + u4Byte wifiBw; + + btInfoExt = pCoexSta->btInfoExt; + + if(halbtc8723a2ant_NeedToDecBtPwr(pBtCoexist)) + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, true); + else + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + if(BTC_WIFI_BW_HT40 == wifiBw) + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 37, 0); + + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + if(btInfoExt&BIT0) //a2dp rate, 1:basic /0:edr + { + halbtc8723a2ant_TdmaDurationAdjust(pBtCoexist, FALSE, FALSE, 3); + } + else + { + halbtc8723a2ant_TdmaDurationAdjust(pBtCoexist, FALSE, FALSE, 1); + } + } + else + { + if(btInfoExt&BIT0) //a2dp rate, 1:basic /0:edr + { + halbtc8723a2ant_TdmaDurationAdjust(pBtCoexist, FALSE, true, 3); + } + else + { + halbtc8723a2ant_TdmaDurationAdjust(pBtCoexist, FALSE, true, 1); + } + } + + // sw mechanism + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 27, 0); + wifiRssiState1 = halbtc8723a2ant_WifiRssiState(pBtCoexist, 1, 2, 47, 0); + + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + if(btInfoExt&BIT0) //a2dp rate, 1:basic /0:edr + { + halbtc8723a2ant_TdmaDurationAdjust(pBtCoexist, FALSE, FALSE, 3); + } + else + { + halbtc8723a2ant_TdmaDurationAdjust(pBtCoexist, FALSE, FALSE, 1); + } + } + else + { + if(btInfoExt&BIT0) //a2dp rate, 1:basic /0:edr + { + halbtc8723a2ant_TdmaDurationAdjust(pBtCoexist, FALSE, true, 3); + } + else + { + halbtc8723a2ant_TdmaDurationAdjust(pBtCoexist, FALSE, true, 1); + } + } + + // sw mechanism + if( (wifiRssiState1 == BTC_RSSI_STATE_HIGH) || + (wifiRssiState1 == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + } +} + +VOID +halbtc8723a2ant_ActionPanEdr( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState, wifiRssiState1, btInfoExt; + u4Byte wifiBw; + + btInfoExt = pCoexSta->btInfoExt; + + if(halbtc8723a2ant_NeedToDecBtPwr(pBtCoexist)) + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, true); + else + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + if(BTC_WIFI_BW_HT40 == wifiBw) + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 37, 0); + + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + } + else + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 6); + } + + // sw mechanism + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 27, 0); + wifiRssiState1 = halbtc8723a2ant_WifiRssiState(pBtCoexist, 1, 2, 47, 0); + + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + } + else + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 6); + } + + // sw mechanism + if( (wifiRssiState1 == BTC_RSSI_STATE_HIGH) || + (wifiRssiState1 == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + } +} + + +//PAN(HS) only +VOID +halbtc8723a2ant_ActionPanHs( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState; + u4Byte wifiBw; + + halbtc8723a2ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + if(BTC_WIFI_BW_HT40 == wifiBw) + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 37, 0); + + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, true); + } + else + { + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, FALSE); + } + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + + // sw mechanism + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 37, 0); + + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + } + else + { + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, FALSE, 0); + } + + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + } +} + +//PAN(EDR)+A2DP +VOID +halbtc8723a2ant_ActionPanEdrA2dp( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState, wifiRssiState1, btInfoExt; + u4Byte wifiBw; + + btInfoExt = pCoexSta->btInfoExt; + + if(halbtc8723a2ant_NeedToDecBtPwr(pBtCoexist)) + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, true); + else + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + if(BTC_WIFI_BW_HT40 == wifiBw) + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 37, 0); + + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + if(btInfoExt&BIT0) //a2dp basic rate + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 4); + } + else //a2dp edr rate + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + } + } + else + { + if(btInfoExt&BIT0) //a2dp basic rate + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 8); + } + else //a2dp edr rate + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 6); + } + } + + // sw mechanism + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 27, 0); + wifiRssiState1 = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 47, 0); + + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + if(btInfoExt&BIT0) //a2dp basic rate + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 4); + } + else //a2dp edr rate + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 2); + } + } + else + { + if(btInfoExt&BIT0) //a2dp basic rate + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 8); + } + else //a2dp edr rate + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 6); + } + } + + // sw mechanism + if( (wifiRssiState1 == BTC_RSSI_STATE_HIGH) || + (wifiRssiState1 == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + } +} + +VOID +halbtc8723a2ant_ActionPanEdrHid( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState, wifiRssiState1; + u4Byte wifiBw; + + if(halbtc8723a2ant_NeedToDecBtPwr(pBtCoexist)) + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, true); + else + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + if(BTC_WIFI_BW_HT40 == wifiBw) + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 37, 0); + + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 10); + } + else + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 14); + } + + // sw mechanism + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 27, 0); + wifiRssiState1 = halbtc8723a2ant_WifiRssiState(pBtCoexist, 1, 2, 47, 0); + + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 10); + } + else + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 14); + } + + // sw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + } +} + +// HID+A2DP+PAN(EDR) +VOID +halbtc8723a2ant_ActionHidA2dpPanEdr( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState, wifiRssiState1, btInfoExt; + u4Byte wifiBw; + + btInfoExt = pCoexSta->btInfoExt; + + if(halbtc8723a2ant_NeedToDecBtPwr(pBtCoexist)) + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, true); + else + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + if(BTC_WIFI_BW_HT40 == wifiBw) + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 37, 0); + + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + if(btInfoExt&BIT0) //a2dp basic rate + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 12); + } + else //a2dp edr rate + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 10); + } + } + else + { + if(btInfoExt&BIT0) //a2dp basic rate + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 16); + } + else //a2dp edr rate + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 14); + } + } + + // sw mechanism + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 27, 0); + wifiRssiState1 = halbtc8723a2ant_WifiRssiState(pBtCoexist, 1, 2, 47, 0); + + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + if(btInfoExt&BIT0) //a2dp basic rate + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 12); + } + else //a2dp edr rate + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 10); + } + } + else + { + if(btInfoExt&BIT0) //a2dp basic rate + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 16); + } + else //a2dp edr rate + { + halbtc8723a2ant_PsTdma(pBtCoexist, NORMAL_EXEC, true, 14); + } + } + + // sw mechanism + if( (wifiRssiState1 == BTC_RSSI_STATE_HIGH) || + (wifiRssiState1 == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + } +} + +VOID +halbtc8723a2ant_ActionHidA2dp( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte wifiRssiState, wifiRssiState1, btInfoExt; + u4Byte wifiBw; + + btInfoExt = pCoexSta->btInfoExt; + + if(halbtc8723a2ant_NeedToDecBtPwr(pBtCoexist)) + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, true); + else + halbtc8723a2ant_DecBtPwr(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_CoexTable(pBtCoexist, NORMAL_EXEC, 0x55555555, 0xffff, 0x3); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + if(BTC_WIFI_BW_HT40 == wifiBw) + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 37, 0); + + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + if(btInfoExt&BIT0) //a2dp basic rate + { + halbtc8723a2ant_TdmaDurationAdjust(pBtCoexist, true, FALSE, 3); + } + else //a2dp edr rate + { + halbtc8723a2ant_TdmaDurationAdjust(pBtCoexist, true, FALSE, 1); + } + } + else + { + if(btInfoExt&BIT0) //a2dp basic rate + { + halbtc8723a2ant_TdmaDurationAdjust(pBtCoexist, true, true, 3); + } + else //a2dp edr rate + { + halbtc8723a2ant_TdmaDurationAdjust(pBtCoexist, true, true, 1); + } + } + + // sw mechanism + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + wifiRssiState = halbtc8723a2ant_WifiRssiState(pBtCoexist, 0, 2, 27, 0); + wifiRssiState1 = halbtc8723a2ant_WifiRssiState(pBtCoexist, 1, 2, 47, 0); + + // fw mechanism + if( (wifiRssiState == BTC_RSSI_STATE_HIGH) || + (wifiRssiState == BTC_RSSI_STATE_STAY_HIGH) ) + { + if(btInfoExt&BIT0) //a2dp basic rate + { + halbtc8723a2ant_TdmaDurationAdjust(pBtCoexist, true, FALSE, 3); + } + else //a2dp edr rate + { + halbtc8723a2ant_TdmaDurationAdjust(pBtCoexist, true, FALSE, 1); + } + } + else + { + if(btInfoExt&BIT0) //a2dp basic rate + { + halbtc8723a2ant_TdmaDurationAdjust(pBtCoexist, true, true, 3); + } + else //a2dp edr rate + { + halbtc8723a2ant_TdmaDurationAdjust(pBtCoexist, true, true, 1); + } + } + + // sw mechanism + if( (wifiRssiState1 == BTC_RSSI_STATE_HIGH) || + (wifiRssiState1 == BTC_RSSI_STATE_STAY_HIGH) ) + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, true); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + else + { + halbtc8723a2ant_AgcTable(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_AdcBackOff(pBtCoexist, NORMAL_EXEC, FALSE); + halbtc8723a2ant_DacSwing(pBtCoexist, NORMAL_EXEC, FALSE, 0xc0); + } + } +} + +VOID +halbtc8723a2ant_RunCoexistMechanism( + IN PBTC_COEXIST pBtCoexist + ) +{ + PBTC_STACK_INFO pStackInfo=&pBtCoexist->stack_info; + u1Byte btInfoOriginal=0, btRetryCnt=0; + u1Byte algorithm=0; + + if(pBtCoexist->manual_control) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Manual control!!!\n")); + return; + } + + if(pStackInfo->bProfileNotified) + { + if(pCoexSta->bHoldForStackOperation) + { + // if bt inquiry/page/pair, do not execute. + return; + } + + algorithm = halbtc8723a2ant_ActionAlgorithm(pBtCoexist); + if(pCoexSta->bHoldPeriodCnt && (BT_8723A_2ANT_COEX_ALGO_PANHS!=algorithm)) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex],Hold BT inquiry/page scan setting (cnt = %d)!!\n", + pCoexSta->bHoldPeriodCnt)); + if(pCoexSta->bHoldPeriodCnt >= 6) + { + pCoexSta->bHoldPeriodCnt = 0; + // next time the coexist parameters should be reset again. + } + else + pCoexSta->bHoldPeriodCnt++; + return; + } + + pCoexDm->curAlgorithm = algorithm; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Algorithm = %d \n", pCoexDm->curAlgorithm)); + if(halbtc8723a2ant_IsCommonAction(pBtCoexist)) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant common.\n")); + pCoexDm->bResetTdmaAdjust = true; + } + else + { + if(pCoexDm->curAlgorithm != pCoexDm->preAlgorithm) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], preAlgorithm=%d, curAlgorithm=%d\n", + pCoexDm->preAlgorithm, pCoexDm->curAlgorithm)); + pCoexDm->bResetTdmaAdjust = true; + } + switch(pCoexDm->curAlgorithm) + { + case BT_8723A_2ANT_COEX_ALGO_SCO: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = SCO.\n")); + halbtc8723a2ant_ActionSco(pBtCoexist); + break; + case BT_8723A_2ANT_COEX_ALGO_HID: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = HID.\n")); + halbtc8723a2ant_ActionHid(pBtCoexist); + break; + case BT_8723A_2ANT_COEX_ALGO_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = A2DP.\n")); + halbtc8723a2ant_ActionA2dp(pBtCoexist); + break; + case BT_8723A_2ANT_COEX_ALGO_PANEDR: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = PAN(EDR).\n")); + halbtc8723a2ant_ActionPanEdr(pBtCoexist); + break; + case BT_8723A_2ANT_COEX_ALGO_PANHS: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = HS mode.\n")); + halbtc8723a2ant_ActionPanHs(pBtCoexist); + break; + case BT_8723A_2ANT_COEX_ALGO_PANEDR_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = PAN+A2DP.\n")); + halbtc8723a2ant_ActionPanEdrA2dp(pBtCoexist); + break; + case BT_8723A_2ANT_COEX_ALGO_PANEDR_HID: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = PAN(EDR)+HID.\n")); + halbtc8723a2ant_ActionPanEdrHid(pBtCoexist); + break; + case BT_8723A_2ANT_COEX_ALGO_HID_A2DP_PANEDR: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = HID+A2DP+PAN.\n")); + halbtc8723a2ant_ActionHidA2dpPanEdr(pBtCoexist); + break; + case BT_8723A_2ANT_COEX_ALGO_HID_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = HID+A2DP.\n")); + halbtc8723a2ant_ActionHidA2dp(pBtCoexist); + break; + default: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, ("[BTCoex], Action 2-Ant, algorithm = coexist All Off!!\n")); + halbtc8723a2ant_CoexAllOff(pBtCoexist); + break; + } + pCoexDm->preAlgorithm = pCoexDm->curAlgorithm; + } + } +} + +//============================================================ +// work around function start with wa_halbtc8723a2ant_ +//============================================================ +VOID +wa_halbtc8723a2ant_MonitorC2h( + IN PBTC_COEXIST pBtCoexist + ) +{ + u1Byte tmp1b=0x0; + u4Byte curC2hTotalCnt=0x0; + static u4Byte preC2hTotalCnt=0x0, sameCntPollingTime=0x0; + + curC2hTotalCnt+=pCoexSta->btInfoC2hCnt[BT_INFO_SRC_8723A_2ANT_BT_RSP]; + + if(curC2hTotalCnt == preC2hTotalCnt) + { + sameCntPollingTime++; + } + else + { + preC2hTotalCnt = curC2hTotalCnt; + sameCntPollingTime = 0; + } + + if(sameCntPollingTime >= 2) + { + tmp1b = pBtCoexist->btc_read_1byte(pBtCoexist, 0x1af); + if(tmp1b != 0x0) + { + pCoexSta->c2hHangDetectCnt++; + pBtCoexist->btc_write_1byte(pBtCoexist, 0x1af, 0x0); + } + } +} + +//============================================================ +// extern function start with EXhalbtc8723a2ant_ +//============================================================ +VOID +EXhalbtc8723a2ant_InitHwConfig( + IN PBTC_COEXIST pBtCoexist + ) +{ + u4Byte u4Tmp=0; + u1Byte u1Tmp=0; + + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], 2Ant Init HW Config!!\n")); + + // backup rf 0x1e value + pCoexDm->btRf0x1eBackup = + pBtCoexist->btc_get_rf_reg(pBtCoexist, BTC_RF_A, 0x1e, 0xfffff); + + // Enable counter statistics + pBtCoexist->btc_write_1byte(pBtCoexist, 0x76e, 0x4); + pBtCoexist->btc_write_1byte(pBtCoexist, 0x778, 0x3); + pBtCoexist->btc_write_1byte(pBtCoexist, 0x40, 0x20); +} + +VOID +EXhalbtc8723a2ant_InitCoexDm( + IN PBTC_COEXIST pBtCoexist + ) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, ("[BTCoex], Coex Mechanism Init!!\n")); + + halbtc8723a2ant_InitCoexDm(pBtCoexist); +} + +VOID +EXhalbtc8723a2ant_DisplayCoexInfo( + IN PBTC_COEXIST pBtCoexist + ) +{ + struct btc_board_info * pBoardInfo=&pBtCoexist->board_info; + PBTC_STACK_INFO pStackInfo=&pBtCoexist->stack_info; + pu1Byte cliBuf=pBtCoexist->cli_buf; + u1Byte u1Tmp[4], i, btInfoExt, psTdmaCase=0; + u4Byte u4Tmp[4]; + BOOLEAN bRoam=FALSE, bScan=FALSE, bLink=FALSE, bWifiUnder5G=FALSE; + BOOLEAN bBtHsOn=FALSE, bWifiBusy=FALSE; + s4Byte wifiRssi=0, btHsRssi=0; + u4Byte wifiBw, wifiTrafficDir; + u1Byte wifiDot11Chnl, wifiHsChnl; + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n ============[BT Coexist info]============"); + CL_PRINTF(cliBuf); + + if(!pBoardInfo->bt_exist) + { + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n BT not exists !!!"); + CL_PRINTF(cliBuf); + return; + } + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d ", "Ant PG number/ Ant mechanism:", \ + pBoardInfo->pg_ant_num, pBoardInfo->btdm_ant_num); + CL_PRINTF(cliBuf); + + if(pBtCoexist->manual_control) + { + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s", "[Action Manual control]!!"); + CL_PRINTF(cliBuf); + } + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %d", "BT stack/ hci ext ver", \ + ((pStackInfo->bProfileNotified)? "Yes":"No"), pStackInfo->hciVersion); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U1_WIFI_DOT11_CHNL, &wifiDot11Chnl); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U1_WIFI_HS_CHNL, &wifiHsChnl); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d / %d(%d)", "Dot11 channel / HsChnl(HsMode)", \ + wifiDot11Chnl, wifiHsChnl, bBtHsOn); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x ", "H2C Wifi inform bt chnl Info", \ + pCoexDm->wifiChnlInfo[0], pCoexDm->wifiChnlInfo[1], + pCoexDm->wifiChnlInfo[2]); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_S4_WIFI_RSSI, &wifiRssi); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_S4_HS_RSSI, &btHsRssi); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", "Wifi rssi/ HS rssi", \ + wifiRssi, btHsRssi); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_SCAN, &bScan); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_LINK, &bLink); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_ROAM, &bRoam); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d ", "Wifi bLink/ bRoam/ bScan", \ + bLink, bRoam, bScan); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_UNDER_5G, &bWifiUnder5G); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_BW, &wifiBw); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_WIFI_BUSY, &bWifiBusy); + pBtCoexist->btc_get(pBtCoexist, BTC_GET_U4_WIFI_TRAFFIC_DIRECTION, &wifiTrafficDir); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %s/ %s ", "Wifi status", \ + (bWifiUnder5G? "5G":"2.4G"), + ((BTC_WIFI_BW_LEGACY==wifiBw)? "Legacy": (((BTC_WIFI_BW_HT40==wifiBw)? "HT40":"HT20"))), + ((!bWifiBusy)? "idle": ((BTC_WIFI_TRAFFIC_TX==wifiTrafficDir)? "uplink":"downlink"))); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = [%s/ %d/ %d] ", "BT [status/ rssi/ retryCnt]", \ + ((pCoexSta->bC2hBtInquiryPage)?("inquiry/page scan"):((BT_8723A_2ANT_BT_STATUS_IDLE == pCoexDm->btStatus)? "idle":( (BT_8723A_2ANT_BT_STATUS_CONNECTED_IDLE == pCoexDm->btStatus)? "connected-idle":"busy"))), + pCoexSta->btRssi, pCoexSta->btRetryCnt); + CL_PRINTF(cliBuf); + + if(pStackInfo->bProfileNotified) + { + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d / %d / %d / %d", "SCO/HID/PAN/A2DP", \ + pStackInfo->bScoExist, pStackInfo->bHidExist, pStackInfo->bPanExist, pStackInfo->bA2dpExist); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_disp_dbg_msg(pBtCoexist, BTC_DBG_DISP_BT_LINK_INFO); + } + + btInfoExt = pCoexSta->btInfoExt; + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s", "BT Info A2DP rate", \ + (btInfoExt&BIT0)? "Basic rate":"EDR rate"); + CL_PRINTF(cliBuf); + + for(i=0; ibtInfoC2hCnt[i]) + { + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x %02x %02x %02x %02x(%d)", GLBtInfoSrc8723a2Ant[i], \ + pCoexSta->btInfoC2h[i][0], pCoexSta->btInfoC2h[i][1], + pCoexSta->btInfoC2h[i][2], pCoexSta->btInfoC2h[i][3], + pCoexSta->btInfoC2h[i][4], pCoexSta->btInfoC2h[i][5], + pCoexSta->btInfoC2h[i][6], pCoexSta->btInfoC2hCnt[i]); + CL_PRINTF(cliBuf); + } + } + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d", "write 0x1af=0x0 num", \ + pCoexSta->c2hHangDetectCnt); + CL_PRINTF(cliBuf); + + // Sw mechanism + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s", "============[Sw mechanism]============"); + CL_PRINTF(cliBuf); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d", "SM1[ShRf/ LpRA/ LimDig]", \ + pCoexDm->bCurRfRxLpfShrink, pCoexDm->bCurLowPenaltyRa, pCoexDm->limited_dig); + CL_PRINTF(cliBuf); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d(0x%x) ", "SM2[AgcT/ AdcB/ SwDacSwing(lvl)]", \ + pCoexDm->bCurAgcTableEn, pCoexDm->bCurAdcBackOff, pCoexDm->bCurDacSwingOn, pCoexDm->curDacSwingLvl); + CL_PRINTF(cliBuf); + + // Fw mechanism + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s", "============[Fw mechanism]============"); + CL_PRINTF(cliBuf); + + if(!pBtCoexist->manual_control) + { + psTdmaCase = pCoexDm->curPsTdma; + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x %02x %02x case-%d", "PS TDMA", \ + pCoexDm->psTdmaPara[0], pCoexDm->psTdmaPara[1], + pCoexDm->psTdmaPara[2], pCoexDm->psTdmaPara[3], + pCoexDm->psTdmaPara[4], psTdmaCase); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d ", "DecBtPwr/ IgnWlanAct", \ + pCoexDm->bCurDecBtPwr, pCoexDm->bCurIgnoreWlanAct); + CL_PRINTF(cliBuf); + } + + // Hw setting + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s", "============[Hw setting]============"); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "RF-A, 0x1e initVal", \ + pCoexDm->btRf0x1eBackup); + CL_PRINTF(cliBuf); + + u1Tmp[0] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x778); + u1Tmp[1] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x783); + u1Tmp[2] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x796); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", "0x778/ 0x783/ 0x796", \ + u1Tmp[0], u1Tmp[1], u1Tmp[2]); + CL_PRINTF(cliBuf); + + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x880); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "0x880", \ + u4Tmp[0]); + CL_PRINTF(cliBuf); + + u1Tmp[0] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x40); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "0x40", \ + u1Tmp[0]); + CL_PRINTF(cliBuf); + + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x550); + u1Tmp[0] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x522); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", "0x550(bcn ctrl)/0x522", \ + u4Tmp[0], u1Tmp[0]); + CL_PRINTF(cliBuf); + + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x484); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "0x484(rate adaptive)", \ + u4Tmp[0]); + CL_PRINTF(cliBuf); + + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0xc50); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "0xc50(dig)", \ + u4Tmp[0]); + CL_PRINTF(cliBuf); + + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0xda0); + u4Tmp[1] = pBtCoexist->btc_read_4byte(pBtCoexist, 0xda4); + u4Tmp[2] = pBtCoexist->btc_read_4byte(pBtCoexist, 0xda8); + u4Tmp[3] = pBtCoexist->btc_read_4byte(pBtCoexist, 0xdac); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x/ 0x%x", "0xda0/0xda4/0xda8/0xdac(FA cnt)", \ + u4Tmp[0], u4Tmp[1], u4Tmp[2], u4Tmp[3]); + CL_PRINTF(cliBuf); + + u4Tmp[0] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x6c0); + u4Tmp[1] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x6c4); + u4Tmp[2] = pBtCoexist->btc_read_4byte(pBtCoexist, 0x6c8); + u1Tmp[0] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x6cc); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x/ 0x%x", "0x6c0/0x6c4/0x6c8/0x6cc(coexTable)", \ + u4Tmp[0], u4Tmp[1], u4Tmp[2], u1Tmp[0]); + CL_PRINTF(cliBuf); + + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", "0x770 (hp rx[31:16]/tx[15:0])", \ + pCoexSta->highPriorityRx, pCoexSta->highPriorityTx); + CL_PRINTF(cliBuf); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", "0x774(lp rx[31:16]/tx[15:0])", \ + pCoexSta->lowPriorityRx, pCoexSta->lowPriorityTx); + CL_PRINTF(cliBuf); + + // Tx mgnt queue hang or not, 0x41b should = 0xf, ex: 0xd ==>hang + u1Tmp[0] = pBtCoexist->btc_read_1byte(pBtCoexist, 0x41b); + CL_SPRINTF(cliBuf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", "0x41b (mgntQ hang chk == 0xf)", \ + u1Tmp[0]); + CL_PRINTF(cliBuf); + + pBtCoexist->btc_disp_dbg_msg(pBtCoexist, BTC_DBG_DISP_COEX_STATISTICS); +} + + +VOID +EXhalbtc8723a2ant_IpsNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + if(BTC_IPS_ENTER == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], IPS ENTER notify\n")); + halbtc8723a2ant_CoexAllOff(pBtCoexist); + } + else if(BTC_IPS_LEAVE == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], IPS LEAVE notify\n")); + //halbtc8723a2ant_InitCoexDm(pBtCoexist); + } +} + +VOID +EXhalbtc8723a2ant_LpsNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + if(BTC_LPS_ENABLE == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], LPS ENABLE notify\n")); + } + else if(BTC_LPS_DISABLE == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], LPS DISABLE notify\n")); + } +} + +VOID +EXhalbtc8723a2ant_ScanNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + if(BTC_SCAN_START == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], SCAN START notify\n")); + } + else if(BTC_SCAN_FINISH == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], SCAN FINISH notify\n")); + } +} + +VOID +EXhalbtc8723a2ant_ConnectNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + if(BTC_ASSOCIATE_START == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], CONNECT START notify\n")); + } + else if(BTC_ASSOCIATE_FINISH == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], CONNECT FINISH notify\n")); + } +} + +VOID +EXhalbtc8723a2ant_MediaStatusNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + if(BTC_MEDIA_CONNECT == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], MEDIA connect notify\n")); + } + else + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], MEDIA disconnect notify\n")); + } + + halbtc8723a2ant_IndicateWifiChnlBwInfo(pBtCoexist, type); +} + +VOID +EXhalbtc8723a2ant_SpecialPacketNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + if(type == BTC_PACKET_DHCP) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], DHCP Packet notify\n")); + } +} + +VOID +EXhalbtc8723a2ant_BtInfoNotify( + IN PBTC_COEXIST pBtCoexist, + IN pu1Byte tmpBuf, + IN u1Byte length + ) +{ + u1Byte btInfo=0; + u1Byte i, rspSource=0; + BOOLEAN bBtBusy=FALSE, limited_dig=FALSE; + BOOLEAN bWifiConnected=FALSE, bBtHsOn=FALSE; + + pCoexSta->bC2hBtInfoReqSent = FALSE; + + rspSource = BT_INFO_SRC_8723A_2ANT_BT_RSP; + pCoexSta->btInfoC2hCnt[rspSource]++; + + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Bt info[%d], length=%d, hex data=[", rspSource, length)); + for(i=0; ibtInfoC2h[rspSource][i] = tmpBuf[i]; + if(i == 0) + btInfo = tmpBuf[i]; + if(i == length-1) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("0x%02x]\n", tmpBuf[i])); + } + else + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("0x%02x, ", tmpBuf[i])); + } + } + + if(BT_INFO_SRC_8723A_2ANT_WIFI_FW != rspSource) + { + pCoexSta->btRetryCnt = + pCoexSta->btInfoC2h[rspSource][1]; + + pCoexSta->btRssi = + pCoexSta->btInfoC2h[rspSource][2]*2+10; + + pCoexSta->btInfoExt = + pCoexSta->btInfoC2h[rspSource][3]; + } + + pBtCoexist->btc_get(pBtCoexist, BTC_GET_BL_HS_OPERATION, &bBtHsOn); + // check BIT2 first ==> check if bt is under inquiry or page scan + if(btInfo & BT_INFO_8723A_2ANT_B_INQ_PAGE) + { + pCoexSta->bC2hBtInquiryPage = true; + } + else + { + pCoexSta->bC2hBtInquiryPage = FALSE; + } +} + +VOID +EXhalbtc8723a2ant_StackOperationNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ) +{ + if(BTC_STACK_OP_INQ_PAGE_PAIR_START == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], StackOP Inquiry/page/pair start notify\n")); + pCoexSta->bHoldForStackOperation = true; + pCoexSta->bHoldPeriodCnt = 1; + halbtc8723a2ant_BtInquiryPage(pBtCoexist); + } + else if(BTC_STACK_OP_INQ_PAGE_PAIR_FINISH == type) + { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], StackOP Inquiry/page/pair finish notify\n")); + pCoexSta->bHoldForStackOperation = FALSE; + } +} + +VOID +EXhalbtc8723a2ant_HaltNotify( + IN PBTC_COEXIST pBtCoexist + ) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], Halt notify\n")); + + halbtc8723a2ant_IgnoreWlanAct(pBtCoexist, FORCE_EXEC, true); + EXhalbtc8723a2ant_MediaStatusNotify(pBtCoexist, BTC_MEDIA_DISCONNECT); +} + +VOID +EXhalbtc8723a2ant_Periodical( + IN PBTC_COEXIST pBtCoexist + ) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, ("[BTCoex], 2Ant Periodical!!\n")); + + // work around for c2h hang + wa_halbtc8723a2ant_MonitorC2h(pBtCoexist); + + halbtc8723a2ant_QueryBtInfo(pBtCoexist); + halbtc8723a2ant_MonitorBtCtr(pBtCoexist); + halbtc8723a2ant_MonitorBtEnableDisable(pBtCoexist); + + halbtc8723a2ant_RunCoexistMechanism(pBtCoexist); +} + + +#endif + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/halbtc8723a2ant.h +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/halbtc8723a2ant.h @@ -0,0 +1,179 @@ +//=========================================== +// The following is for 8723A 2Ant BT Co-exist definition +//=========================================== +#define BT_INFO_8723A_2ANT_B_FTP BIT7 +#define BT_INFO_8723A_2ANT_B_A2DP BIT6 +#define BT_INFO_8723A_2ANT_B_HID BIT5 +#define BT_INFO_8723A_2ANT_B_SCO_BUSY BIT4 +#define BT_INFO_8723A_2ANT_B_ACL_BUSY BIT3 +#define BT_INFO_8723A_2ANT_B_INQ_PAGE BIT2 +#define BT_INFO_8723A_2ANT_B_SCO_ESCO BIT1 +#define BT_INFO_8723A_2ANT_B_CONNECTION BIT0 + +#define BTC_RSSI_COEX_THRESH_TOL_8723A_2ANT 2 + +typedef enum _BT_INFO_SRC_8723A_2ANT{ + BT_INFO_SRC_8723A_2ANT_WIFI_FW = 0x0, + BT_INFO_SRC_8723A_2ANT_BT_RSP = 0x1, + BT_INFO_SRC_8723A_2ANT_BT_ACTIVE_SEND = 0x2, + BT_INFO_SRC_8723A_2ANT_MAX +}BT_INFO_SRC_8723A_2ANT,*PBT_INFO_SRC_8723A_2ANT; + +typedef enum _BT_8723A_2ANT_BT_STATUS{ + BT_8723A_2ANT_BT_STATUS_IDLE = 0x0, + BT_8723A_2ANT_BT_STATUS_CONNECTED_IDLE = 0x1, + BT_8723A_2ANT_BT_STATUS_NON_IDLE = 0x2, + BT_8723A_2ANT_BT_STATUS_MAX +}BT_8723A_2ANT_BT_STATUS,*PBT_8723A_2ANT_BT_STATUS; + +typedef enum _BT_8723A_2ANT_COEX_ALGO{ + BT_8723A_2ANT_COEX_ALGO_UNDEFINED = 0x0, + BT_8723A_2ANT_COEX_ALGO_SCO = 0x1, + BT_8723A_2ANT_COEX_ALGO_HID = 0x2, + BT_8723A_2ANT_COEX_ALGO_A2DP = 0x3, + BT_8723A_2ANT_COEX_ALGO_PANEDR = 0x4, + BT_8723A_2ANT_COEX_ALGO_PANHS = 0x5, + BT_8723A_2ANT_COEX_ALGO_PANEDR_A2DP = 0x6, + BT_8723A_2ANT_COEX_ALGO_PANEDR_HID = 0x7, + BT_8723A_2ANT_COEX_ALGO_HID_A2DP_PANEDR = 0x8, + BT_8723A_2ANT_COEX_ALGO_HID_A2DP = 0x9, + BT_8723A_2ANT_COEX_ALGO_MAX +}BT_8723A_2ANT_COEX_ALGO,*PBT_8723A_2ANT_COEX_ALGO; + +typedef struct _COEX_DM_8723A_2ANT{ + // fw mechanism + BOOLEAN bPreDecBtPwr; + BOOLEAN bCurDecBtPwr; + //BOOLEAN bPreBtLnaConstrain; + //BOOLEAN bCurBtLnaConstrain; + //u1Byte bPreBtPsdMode; + //u1Byte bCurBtPsdMode; + u1Byte preFwDacSwingLvl; + u1Byte curFwDacSwingLvl; + BOOLEAN bCurIgnoreWlanAct; + BOOLEAN bPreIgnoreWlanAct; + u1Byte prePsTdma; + u1Byte curPsTdma; + u1Byte psTdmaPara[5]; + u1Byte psTdmaDuAdjType; + BOOLEAN bResetTdmaAdjust; + BOOLEAN bPrePsTdmaOn; + BOOLEAN bCurPsTdmaOn; + //BOOLEAN bPreBtAutoReport; + //BOOLEAN bCurBtAutoReport; + + // sw mechanism + BOOLEAN bPreRfRxLpfShrink; + BOOLEAN bCurRfRxLpfShrink; + u4Byte btRf0x1eBackup; + BOOLEAN bPreLowPenaltyRa; + BOOLEAN bCurLowPenaltyRa; + BOOLEAN bPreDacSwingOn; + u4Byte preDacSwingLvl; + BOOLEAN bCurDacSwingOn; + u4Byte curDacSwingLvl; + BOOLEAN bPreAdcBackOff; + BOOLEAN bCurAdcBackOff; + BOOLEAN bPreAgcTableEn; + BOOLEAN bCurAgcTableEn; + u4Byte preVal0x6c0; + u4Byte curVal0x6c0; + u4Byte preVal0x6c8; + u4Byte curVal0x6c8; + u1Byte preVal0x6cc; + u1Byte curVal0x6cc; + BOOLEAN limited_dig; + + // algorithm related + u1Byte preAlgorithm; + u1Byte curAlgorithm; + u1Byte btStatus; + u1Byte wifiChnlInfo[3]; +} COEX_DM_8723A_2ANT, *PCOEX_DM_8723A_2ANT; + +typedef struct _COEX_STA_8723A_2ANT{ + u4Byte highPriorityTx; + u4Byte highPriorityRx; + u4Byte lowPriorityTx; + u4Byte lowPriorityRx; + u1Byte btRssi; + u1Byte preBtRssiState; + u1Byte preBtRssiState1; + u1Byte preWifiRssiState[4]; + BOOLEAN bC2hBtInfoReqSent; + u1Byte btInfoC2h[BT_INFO_SRC_8723A_2ANT_MAX][10]; + u4Byte btInfoC2hCnt[BT_INFO_SRC_8723A_2ANT_MAX]; + BOOLEAN bC2hBtInquiryPage; + u1Byte btRetryCnt; + u1Byte btInfoExt; + BOOLEAN bHoldForStackOperation; + u1Byte bHoldPeriodCnt; + // this is for c2h hang work-around + u4Byte c2hHangDetectCnt; +}COEX_STA_8723A_2ANT, *PCOEX_STA_8723A_2ANT; + +//=========================================== +// The following is interface which will notify coex module. +//=========================================== +VOID +EXhalbtc8723a2ant_InitHwConfig( + IN PBTC_COEXIST pBtCoexist + ); +VOID +EXhalbtc8723a2ant_InitCoexDm( + IN PBTC_COEXIST pBtCoexist + ); +VOID +EXhalbtc8723a2ant_IpsNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8723a2ant_LpsNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8723a2ant_ScanNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8723a2ant_ConnectNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8723a2ant_MediaStatusNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8723a2ant_SpecialPacketNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8723a2ant_HaltNotify( + IN PBTC_COEXIST pBtCoexist + ); +VOID +EXhalbtc8723a2ant_Periodical( + IN PBTC_COEXIST pBtCoexist + ); +VOID +EXhalbtc8723a2ant_BtInfoNotify( + IN PBTC_COEXIST pBtCoexist, + IN pu1Byte tmpBuf, + IN u1Byte length + ); +VOID +EXhalbtc8723a2ant_StackOperationNotify( + IN PBTC_COEXIST pBtCoexist, + IN u1Byte type + ); +VOID +EXhalbtc8723a2ant_DisplayCoexInfo( + IN PBTC_COEXIST pBtCoexist + ); + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/halbtc8723b1ant.c +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/halbtc8723b1ant.c @@ -0,0 +1,4104 @@ +/*************************************************************** + * Description: + * + * This file is for RTL8723B Co-exist mechanism + * + * History + * 2012/11/15 Cosa first check in. + * + ***************************************************************/ + + +/*************************************************************** + * include files + ***************************************************************/ +#include "halbt_precomp.h" +#if 1 +/*************************************************************** + * Global variables, these are static variables + ***************************************************************/ +static struct coex_dm_8723b_1ant glcoex_dm_8723b_1ant; +static struct coex_dm_8723b_1ant *coex_dm = &glcoex_dm_8723b_1ant; +static struct coex_sta_8723b_1ant glcoex_sta_8723b_1ant; +static struct coex_sta_8723b_1ant *coex_sta = &glcoex_sta_8723b_1ant; + +const char *const GLBtInfoSrc8723b1Ant[]={ + "BT Info[wifi fw]", + "BT Info[bt rsp]", + "BT Info[bt auto report]", +}; + +u32 glcoex_ver_date_8723b_1ant = 20130906; +u32 glcoex_ver_8723b_1ant = 0x45; + +/*************************************************************** + * local function proto type if needed + ***************************************************************/ +/*************************************************************** + * local function start with halbtc8723b1ant_ + ***************************************************************/ +u8 halbtc8723b1ant_bt_rssi_state(u8 level_num, u8 rssi_thresh, u8 rssi_thresh1) +{ + s32 bt_rssi=0; + u8 bt_rssi_state = coex_sta->pre_bt_rssi_state; + + bt_rssi = coex_sta->bt_rssi; + + if (level_num == 2){ + if ((coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_LOW) || + (coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_STAY_LOW)) { + if (bt_rssi >= rssi_thresh + + BTC_RSSI_COEX_THRESH_TOL_8723B_1ANT) { + bt_rssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to High\n"); + } else { + bt_rssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "stay at Low\n"); + } + } else { + if (bt_rssi < rssi_thresh) { + bt_rssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to Low\n"); + } else { + bt_rssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "stay at High\n"); + } + } + } else if (level_num == 3) { + if (rssi_thresh > rssi_thresh1) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi thresh error!!\n"); + return coex_sta->pre_bt_rssi_state; + } + + if ((coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_LOW) || + (coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_STAY_LOW)) { + if (bt_rssi >= rssi_thresh + + BTC_RSSI_COEX_THRESH_TOL_8723B_1ANT) { + bt_rssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to Medium\n"); + } else { + bt_rssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "stay at Low\n"); + } + } else if ((coex_sta->pre_bt_rssi_state == + BTC_RSSI_STATE_MEDIUM) || + (coex_sta->pre_bt_rssi_state == + BTC_RSSI_STATE_STAY_MEDIUM)) { + if (bt_rssi >= rssi_thresh1 + + BTC_RSSI_COEX_THRESH_TOL_8723B_1ANT) { + bt_rssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to High\n"); + } else if (bt_rssi < rssi_thresh) { + bt_rssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to Low\n"); + } else { + bt_rssi_state = BTC_RSSI_STATE_STAY_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "stay at Medium\n"); + } + } else { + if (bt_rssi < rssi_thresh1) { + bt_rssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to Medium\n"); + } else { + bt_rssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "stay at High\n"); + } + } + } + + coex_sta->pre_bt_rssi_state = bt_rssi_state; + + return bt_rssi_state; +} + +u8 halbtc8723b1ant_wifi_rssi_state(struct btc_coexist *btcoexist, + u8 index, u8 level_num, + u8 rssi_thresh, u8 rssi_thresh1) +{ + s32 wifi_rssi=0; + u8 wifi_rssi_state = coex_sta->pre_wifi_rssi_state[index]; + + btcoexist->btc_get(btcoexist, + BTC_GET_S4_WIFI_RSSI, &wifi_rssi); + + if (level_num == 2) { + if ((coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_LOW) || + (coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_STAY_LOW)) { + if (wifi_rssi >= rssi_thresh + + BTC_RSSI_COEX_THRESH_TOL_8723B_1ANT) { + wifi_rssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to High\n"); + } else { + wifi_rssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "stay at Low\n"); + } + } else { + if (wifi_rssi < rssi_thresh) { + wifi_rssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to Low\n"); + } else { + wifi_rssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "stay at High\n"); + } + } + } else if (level_num == 3) { + if (rssi_thresh > rssi_thresh1) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI thresh error!!\n"); + return coex_sta->pre_wifi_rssi_state[index]; + } + + if ((coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_LOW) || + (coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_STAY_LOW)) { + if (wifi_rssi >= rssi_thresh + + BTC_RSSI_COEX_THRESH_TOL_8723B_1ANT) { + wifi_rssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to Medium\n"); + } else { + wifi_rssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "stay at Low\n"); + } + } else if ((coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_MEDIUM) || + (coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_STAY_MEDIUM)) { + if (wifi_rssi >= rssi_thresh1 + + BTC_RSSI_COEX_THRESH_TOL_8723B_1ANT) { + wifi_rssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to High\n"); + } else if (wifi_rssi < rssi_thresh) { + wifi_rssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to Low\n"); + } else { + wifi_rssi_state = BTC_RSSI_STATE_STAY_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "stay at Medium\n"); + } + } else { + if (wifi_rssi < rssi_thresh1) { + wifi_rssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to Medium\n"); + } else { + wifi_rssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "stay at High\n"); + } + } + } + + coex_sta->pre_wifi_rssi_state[index] = wifi_rssi_state; + + return wifi_rssi_state; +} + +void halbtc8723b1ant_updatera_mask(struct btc_coexist *btcoexist, + bool force_exec, u32 dis_rate_mask) +{ + coex_dm->curra_mask = dis_rate_mask; + + if (force_exec || (coex_dm->prera_mask != coex_dm->curra_mask)) + btcoexist->btc_set(btcoexist, BTC_SET_ACT_UPDATE_ra_mask, + &coex_dm->curra_mask); + + coex_dm->prera_mask = coex_dm->curra_mask; +} + +void halbtc8723b1ant_auto_rate_fallback_retry(struct btc_coexist *btcoexist, + bool force_exec, u8 type) +{ + bool wifi_under_bmode = false; + + coex_dm->cur_arfr_type = type; + + if (force_exec || (coex_dm->pre_arfr_type != coex_dm->cur_arfr_type)) { + switch (coex_dm->cur_arfr_type) { + case 0: /* normal mode */ + btcoexist->btc_write_4byte(btcoexist, 0x430, + coex_dm->backup_arfr_cnt1); + btcoexist->btc_write_4byte(btcoexist, 0x434, + coex_dm->backup_arfr_cnt2); + break; + case 1: + btcoexist->btc_get(btcoexist, + BTC_GET_BL_WIFI_UNDER_B_MODE, + &wifi_under_bmode); + if (wifi_under_bmode) { + btcoexist->btc_write_4byte(btcoexist, + 0x430, 0x0); + btcoexist->btc_write_4byte(btcoexist, + 0x434, 0x01010101); + } else { + btcoexist->btc_write_4byte(btcoexist, + 0x430, 0x0); + btcoexist->btc_write_4byte(btcoexist, + 0x434, 0x04030201); + } + break; + default: + break; + } + } + + coex_dm->pre_arfr_type = coex_dm->cur_arfr_type; +} + +void halbtc8723b1ant_retry_limit(struct btc_coexist *btcoexist, + bool force_exec, u8 type) +{ + coex_dm->cur_retry_limit_type = type; + + if (force_exec || (coex_dm->pre_retry_limit_type != + coex_dm->cur_retry_limit_type)) { + + switch (coex_dm->cur_retry_limit_type) { + case 0: /* normal mode */ + btcoexist->btc_write_2byte(btcoexist, 0x42a, + coex_dm->backup_retry_limit); + break; + case 1: /* retry limit=8 */ + btcoexist->btc_write_2byte(btcoexist, 0x42a, 0x0808); + break; + default: + break; + } + } + + coex_dm->pre_retry_limit_type = coex_dm->cur_retry_limit_type; +} + +void halbtc8723b1ant_ampdu_maxtime(struct btc_coexist *btcoexist, + bool force_exec, u8 type) +{ + coex_dm->cur_ampdu_time_type = type; + + if (force_exec || (coex_dm->pre_ampdu_time_type != + coex_dm->cur_ampdu_time_type)) { + switch (coex_dm->cur_ampdu_time_type) { + case 0: /* normal mode */ + btcoexist->btc_write_1byte(btcoexist, 0x456, + coex_dm->backup_ampdu_max_time); + break; + case 1: /* AMPDU timw = 0x38 * 32us */ + btcoexist->btc_write_1byte(btcoexist, + 0x456, 0x38); + break; + default: + break; + } + } + + coex_dm->pre_ampdu_time_type = coex_dm->cur_ampdu_time_type; +} + +void halbtc8723b1ant_limited_tx(struct btc_coexist *btcoexist, + bool force_exec, u8 ra_maskType, u8 arfr_type, + u8 retry_limit_type, u8 ampdu_time_type) +{ + switch (ra_maskType) { + case 0: /* normal mode */ + halbtc8723b1ant_updatera_mask(btcoexist, force_exec, 0x0); + break; + case 1: /* disable cck 1/2 */ + halbtc8723b1ant_updatera_mask(btcoexist, force_exec, + 0x00000003); + break; + /* disable cck 1/2/5.5, ofdm 6/9/12/18/24, mcs 0/1/2/3/4*/ + case 2: + halbtc8723b1ant_updatera_mask(btcoexist, force_exec, + 0x0001f1f7); + break; + default: + break; + } + + halbtc8723b1ant_auto_rate_fallback_retry(btcoexist, force_exec, + arfr_type); + halbtc8723b1ant_retry_limit(btcoexist, force_exec, retry_limit_type); + halbtc8723b1ant_ampdu_maxtime(btcoexist, force_exec, ampdu_time_type); +} + +void halbtc8723b1ant_limited_rx(struct btc_coexist *btcoexist, + bool force_exec, bool rej_ap_agg_pkt, + bool b_bt_ctrl_agg_buf_size, u8 agg_buf_size) +{ + bool reject_rx_agg = rej_ap_agg_pkt; + bool bt_ctrl_rx_agg_size = b_bt_ctrl_agg_buf_size; + u8 rxAggSize = agg_buf_size; + + /********************************************** + * Rx Aggregation related setting + **********************************************/ + btcoexist->btc_set(btcoexist, BTC_SET_BL_TO_REJ_AP_AGG_PKT, + &reject_rx_agg); + /* decide BT control aggregation buf size or not */ + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_CTRL_AGG_SIZE, + &bt_ctrl_rx_agg_size); + /* aggregation buf size, only work + *when BT control Rx aggregation size. */ + btcoexist->btc_set(btcoexist, BTC_SET_U1_AGG_BUF_SIZE, &rxAggSize); + /* real update aggregation setting */ + btcoexist->btc_set(btcoexist, BTC_SET_ACT_AGGREGATE_CTRL, NULL); +} + +void halbtc8723b1ant_monitor_bt_ctr(struct btc_coexist *btcoexist) +{ + u32 reg_hp_txrx, reg_lp_txrx, u32tmp; + u32 reg_hp_tx = 0, reg_hp_rx = 0; + u32 reg_lp_tx = 0, reg_lp_rx = 0; + + reg_hp_txrx = 0x770; + reg_lp_txrx = 0x774; + + u32tmp = btcoexist->btc_read_4byte(btcoexist, reg_hp_txrx); + reg_hp_tx = u32tmp & MASKLWORD; + reg_hp_rx = (u32tmp & MASKHWORD) >> 16; + + u32tmp = btcoexist->btc_read_4byte(btcoexist, reg_lp_txrx); + reg_lp_tx = u32tmp & MASKLWORD; + reg_lp_rx = (u32tmp & MASKHWORD) >> 16; + + coex_sta->high_priority_tx = reg_hp_tx; + coex_sta->high_priority_rx = reg_hp_rx; + coex_sta->low_priority_tx = reg_lp_tx; + coex_sta->low_priority_rx = reg_lp_rx; + + /* reset counter */ + btcoexist->btc_write_1byte(btcoexist, 0x76e, 0xc); +} + +void halbtc8723b1ant_query_bt_info(struct btc_coexist *btcoexist) +{ + u8 h2c_parameter[1] = {0}; + + coex_sta->c2h_bt_info_req_sent = true; + + h2c_parameter[0] |= BIT0; /* trigger*/ + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], Query Bt Info, FW write 0x61=0x%x\n", + h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x61, 1, h2c_parameter); +} + +bool halbtc8723b1ant_is_wifi_status_changed(struct btc_coexist *btcoexist) +{ + static bool pre_wifi_busy = false; + static bool pre_under_4way = false, pre_bt_hs_on = false; + bool wifi_busy = false, under_4way = false, bt_hs_on = false; + bool wifi_connected = false; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_4_WAY_PROGRESS, + &under_4way); + + if (wifi_connected) { + if (wifi_busy != pre_wifi_busy) { + pre_wifi_busy = wifi_busy; + return true; + } + if (under_4way != pre_under_4way) { + pre_under_4way = under_4way; + return true; + } + if (bt_hs_on != pre_bt_hs_on) { + pre_bt_hs_on = bt_hs_on; + return true; + } + } + + return false; +} + +void halbtc8723b1ant_update_bt_link_info(struct btc_coexist *btcoexist) +{ + struct btc_bt_link_info *bt_link_info = &btcoexist->bt_link_info; + bool bt_hs_on = false; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + + bt_link_info->bt_link_exist = coex_sta->bt_link_exist; + bt_link_info->sco_exist = coex_sta->sco_exist; + bt_link_info->a2dp_exist = coex_sta->a2dp_exist; + bt_link_info->pan_exist = coex_sta->pan_exist; + bt_link_info->hid_exist = coex_sta->hid_exist; + + /* work around for HS mode. */ + if (bt_hs_on) { + bt_link_info->pan_exist = true; + bt_link_info->bt_link_exist = true; + } + + /* check if Sco only */ + if (bt_link_info->sco_exist && !bt_link_info->a2dp_exist && + !bt_link_info->pan_exist && !bt_link_info->hid_exist) + bt_link_info->sco_only = true; + else + bt_link_info->sco_only = false; + + /* check if A2dp only */ + if (!bt_link_info->sco_exist && bt_link_info->a2dp_exist && + !bt_link_info->pan_exist && !bt_link_info->hid_exist) + bt_link_info->a2dp_only = true; + else + bt_link_info->a2dp_only = false; + + /* check if Pan only */ + if (!bt_link_info->sco_exist && !bt_link_info->a2dp_exist && + bt_link_info->pan_exist && !bt_link_info->hid_exist) + bt_link_info->pan_only = true; + else + bt_link_info->pan_only = false; + + /* check if Hid only */ + if (!bt_link_info->sco_exist && !bt_link_info->a2dp_exist && + !bt_link_info->pan_exist && bt_link_info->hid_exist ) + bt_link_info->hid_only = true; + else + bt_link_info->hid_only = false; +} + +u8 halbtc8723b1ant_action_algorithm(struct btc_coexist *btcoexist) +{ + struct btc_bt_link_info *bt_link_info = &btcoexist->bt_link_info; + bool bt_hs_on = false; + u8 algorithm = BT_8723B_1ANT_COEX_ALGO_UNDEFINED; + u8 numOfDiffProfile = 0; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + + if (!bt_link_info->bt_link_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], No BT link exists!!!\n"); + return algorithm; + } + + if (bt_link_info->sco_exist) + numOfDiffProfile++; + if (bt_link_info->hid_exist) + numOfDiffProfile++; + if (bt_link_info->pan_exist) + numOfDiffProfile++; + if (bt_link_info->a2dp_exist) + numOfDiffProfile++; + + if (numOfDiffProfile == 1) { + if (bt_link_info->sco_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = SCO only\n"); + algorithm = BT_8723B_1ANT_COEX_ALGO_SCO; + } else { + if (bt_link_info->hid_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = HID only\n"); + algorithm = BT_8723B_1ANT_COEX_ALGO_HID; + } else if (bt_link_info->a2dp_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = A2DP only\n"); + algorithm = BT_8723B_1ANT_COEX_ALGO_A2DP; + } else if (bt_link_info->pan_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = " + "PAN(HS) only\n"); + algorithm = + BT_8723B_1ANT_COEX_ALGO_PANHS; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = " + "PAN(EDR) only\n"); + algorithm = + BT_8723B_1ANT_COEX_ALGO_PANEDR; + } + } + } + } else if (numOfDiffProfile == 2) { + if (bt_link_info->sco_exist) { + if (bt_link_info->hid_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = SCO + HID\n"); + algorithm = BT_8723B_1ANT_COEX_ALGO_HID; + } else if (bt_link_info->a2dp_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = " + "SCO + A2DP ==> SCO\n"); + algorithm = BT_8723B_1ANT_COEX_ALGO_SCO; + } else if (bt_link_info->pan_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile " + "= SCO + PAN(HS)\n"); + algorithm = BT_8723B_1ANT_COEX_ALGO_SCO; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile " + "= SCO + PAN(EDR)\n"); + algorithm = + BT_8723B_1ANT_COEX_ALGO_PANEDR_HID; + } + } + } else { + if (bt_link_info->hid_exist && + bt_link_info->a2dp_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = " + "HID + A2DP\n"); + algorithm = BT_8723B_1ANT_COEX_ALGO_HID_A2DP; + } else if (bt_link_info->hid_exist && + bt_link_info->pan_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = " + "HID + PAN(HS)\n"); + algorithm = + BT_8723B_1ANT_COEX_ALGO_HID_A2DP; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = " + "HID + PAN(EDR)\n"); + algorithm = + BT_8723B_1ANT_COEX_ALGO_PANEDR_HID; + } + } else if (bt_link_info->pan_exist && + bt_link_info->a2dp_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = " + "A2DP + PAN(HS)\n"); + algorithm = + BT_8723B_1ANT_COEX_ALGO_A2DP_PANHS; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = " + "A2DP + PAN(EDR)\n"); + algorithm = + BT_8723B_1ANT_COEX_ALGO_PANEDR_A2DP; + } + } + } + } else if (numOfDiffProfile == 3) { + if (bt_link_info->sco_exist) { + if (bt_link_info->hid_exist && + bt_link_info->a2dp_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = " + "SCO + HID + A2DP ==> HID\n"); + algorithm = BT_8723B_1ANT_COEX_ALGO_HID; + } else if (bt_link_info->hid_exist && + bt_link_info->pan_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = " + "SCO + HID + PAN(HS)\n"); + algorithm = + BT_8723B_1ANT_COEX_ALGO_HID_A2DP; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = " + "SCO + HID + PAN(EDR)\n"); + algorithm = + BT_8723B_1ANT_COEX_ALGO_PANEDR_HID; + } + } else if (bt_link_info->pan_exist && + bt_link_info->a2dp_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = " + "SCO + A2DP + PAN(HS)\n"); + algorithm = BT_8723B_1ANT_COEX_ALGO_SCO; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = SCO + " + "A2DP + PAN(EDR) ==> HID\n"); + algorithm = + BT_8723B_1ANT_COEX_ALGO_PANEDR_HID; + } + } + } else { + if (bt_link_info->hid_exist && + bt_link_info->pan_exist && + bt_link_info->a2dp_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = " + "HID + A2DP + PAN(HS)\n"); + algorithm = + BT_8723B_1ANT_COEX_ALGO_HID_A2DP; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = " + "HID + A2DP + PAN(EDR)\n"); + algorithm = + BT_8723B_1ANT_COEX_ALGO_HID_A2DP_PANEDR; + } + } + } + } else if (numOfDiffProfile >= 3) { + if (bt_link_info->sco_exist) { + if (bt_link_info->hid_exist && + bt_link_info->pan_exist && + bt_link_info->a2dp_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Error!!! " + "BT Profile = SCO + " + "HID + A2DP + PAN(HS)\n"); + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT Profile = " + "SCO + HID + A2DP + PAN(EDR)" + "==>PAN(EDR)+HID\n"); + algorithm = + BT_8723B_1ANT_COEX_ALGO_PANEDR_HID; + } + } + } + } + + return algorithm; +} + +bool halbtc8723b1ant_need_to_dec_bt_pwr(struct btc_coexist *btcoexist) +{ + bool ret = false; + bool bt_hs_on = false, wifi_connected = false; + s32 bt_hs_rssi = 0; + u8 bt_rssi_state; + + if (!btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on)) + return false; + if (!btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected)) + return false; + if (!btcoexist->btc_get(btcoexist, BTC_GET_S4_HS_RSSI, &bt_hs_rssi)) + return false; + + bt_rssi_state = halbtc8723b1ant_bt_rssi_state(2, 35, 0); + + if (wifi_connected) { + if (bt_hs_on) { + if (bt_hs_rssi > 37) + ret = true; + } else { + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) + ret = true; + } + } + + return ret; +} + +void halbtc8723b1ant_set_fw_dac_swing_level(struct btc_coexist *btcoexist, + u8 dac_swing_lvl) +{ + u8 h2c_parameter[1] = {0}; + + /* There are several type of dacswing + * 0x18/ 0x10/ 0xc/ 0x8/ 0x4/ 0x6 */ + h2c_parameter[0] = dac_swing_lvl; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], Set Dac Swing Level=0x%x\n", dac_swing_lvl); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], FW write 0x64=0x%x\n", h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x64, 1, h2c_parameter); +} + +void halbtc8723b1ant_set_fw_dec_bt_pwr(struct btc_coexist *btcoexist, + bool dec_bt_pwr) +{ + u8 h2c_parameter[1] = {0}; + + h2c_parameter[0] = 0; + + if (dec_bt_pwr) + h2c_parameter[0] |= BIT1; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], decrease Bt Power : %s, FW write 0x62=0x%x\n", + (dec_bt_pwr? "Yes!!":"No!!"),h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x62, 1, h2c_parameter); +} + +void halbtc8723b1ant_dec_bt_pwr(struct btc_coexist *btcoexist, + bool force_exec, bool dec_bt_pwr) +{ + return; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s Dec BT power = %s\n", + (force_exec ? "force to" : ""), (dec_bt_pwr ? "ON" : "OFF")); + coex_dm->cur_dec_bt_pwr = dec_bt_pwr; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], bPreDecBtPwr=%d, bCurDecBtPwr=%d\n", + coex_dm->pre_dec_bt_pwr, coex_dm->cur_dec_bt_pwr); + + if (coex_dm->pre_dec_bt_pwr == coex_dm->cur_dec_bt_pwr) + return; + } + halbtc8723b1ant_set_fw_dec_bt_pwr(btcoexist, coex_dm->cur_dec_bt_pwr); + + coex_dm->pre_dec_bt_pwr = coex_dm->cur_dec_bt_pwr; +} + +void halbtc8723b1ant_set_bt_auto_report(struct btc_coexist *btcoexist, + bool enable_auto_report) +{ + u8 h2c_parameter[1] = {0}; + + h2c_parameter[0] = 0; + + if (enable_auto_report) + h2c_parameter[0] |= BIT0; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], BT FW auto report : %s, FW write 0x68=0x%x\n", + (enable_auto_report? "Enabled!!":"Disabled!!"), + h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x68, 1, h2c_parameter); +} + +void halbtc8723b1ant_bt_auto_report(struct btc_coexist *btcoexist, + bool force_exec, bool enable_auto_report) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s BT Auto report = %s\n", + (force_exec? "force to":""), + ((enable_auto_report)? "Enabled":"Disabled")); + coex_dm->cur_bt_auto_report = enable_auto_report; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], bPreBtAutoReport=%d, " + "bCurBtAutoReport=%d\n", + coex_dm->pre_bt_auto_report, + coex_dm->cur_bt_auto_report); + + if (coex_dm->pre_bt_auto_report == coex_dm->cur_bt_auto_report) + return; + } + halbtc8723b1ant_set_bt_auto_report(btcoexist, + coex_dm->cur_bt_auto_report); + + coex_dm->pre_bt_auto_report = coex_dm->cur_bt_auto_report; +} + +void halbtc8723b1ant_fw_dac_swing_lvl(struct btc_coexist *btcoexist, + bool force_exec, u8 fw_dac_swing_lvl) +{ + return; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s set FW Dac Swing level = %d\n", + (force_exec? "force to":""), fw_dac_swing_lvl); + coex_dm->cur_fw_dac_swing_lvl = fw_dac_swing_lvl; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], preFwDacSwingLvl=%d, " + "curFwDacSwingLvl=%d\n", + coex_dm->pre_fw_dac_swing_lvl, + coex_dm->cur_fw_dac_swing_lvl); + + if (coex_dm->pre_fw_dac_swing_lvl == + coex_dm->cur_fw_dac_swing_lvl) + return; + } + + halbtc8723b1ant_set_fw_dac_swing_level(btcoexist, + coex_dm->cur_fw_dac_swing_lvl); + + coex_dm->pre_fw_dac_swing_lvl = coex_dm->cur_fw_dac_swing_lvl; +} + +void halbtc8723b1ant_set_sw_rf_rx_lpf_corner(struct btc_coexist *btcoexist, + bool rx_rf_shrink_on) +{ + if (rx_rf_shrink_on) { + /*Shrink RF Rx LPF corner */ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Shrink RF Rx LPF corner!!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1e, + 0xfffff, 0xffff7); + } else { + /*Resume RF Rx LPF corner + * After initialized, we can use coex_dm->btRf0x1eBackup */ + if (btcoexist->initilized) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Resume RF Rx LPF corner!!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, + 0x1e, 0xfffff, + coex_dm->bt_rf0x1e_backup); + } + } +} + +void halbtc8723b1ant_rf_shrink(struct btc_coexist *btcoexist, + bool force_exec, bool rx_rf_shrink_on) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s turn Rx RF Shrink = %s\n", + (force_exec? "force to":""), + ((rx_rf_shrink_on)? "ON":"OFF")); + coex_dm->cur_rf_rx_lpf_shrink = rx_rf_shrink_on; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], bPreRfRxLpfShrink=%d, " + "bCurRfRxLpfShrink=%d\n", + coex_dm->pre_rf_rx_lpf_shrink, + coex_dm->cur_rf_rx_lpf_shrink); + + if (coex_dm->pre_rf_rx_lpf_shrink == + coex_dm->cur_rf_rx_lpf_shrink) + return; + } + halbtc8723b1ant_set_sw_rf_rx_lpf_corner(btcoexist, + coex_dm->cur_rf_rx_lpf_shrink); + + coex_dm->pre_rf_rx_lpf_shrink = coex_dm->cur_rf_rx_lpf_shrink; +} + +void halbtc8723b1ant_set_sw_penalty_tx_rate_adaptive( + struct btc_coexist *btcoexist, + bool low_penalty_ra) +{ + u8 h2c_parameter[6] = {0}; + + h2c_parameter[0] = 0x6; /* opCode, 0x6= Retry_Penalty */ + + if (low_penalty_ra) { + h2c_parameter[1] |= BIT0; + /*normal rate except MCS7/6/5, OFDM54/48/36 */ + h2c_parameter[2] = 0x00; + h2c_parameter[3] = 0xf7; /*MCS7 or OFDM54 */ + h2c_parameter[4] = 0xf8; /*MCS6 or OFDM48 */ + h2c_parameter[5] = 0xf9; /*MCS5 or OFDM36 */ + } + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], set WiFi Low-Penalty Retry: %s", + (low_penalty_ra ? "ON!!" : "OFF!!")); + + btcoexist->btc_fill_h2c(btcoexist, 0x69, 6, h2c_parameter); +} + +void halbtc8723b1ant_low_penalty_ra(struct btc_coexist *btcoexist, + bool force_exec, bool low_penalty_ra) +{ + coex_dm->cur_low_penalty_ra = low_penalty_ra; + + if (!force_exec) { + if (coex_dm->pre_low_penalty_ra == coex_dm->cur_low_penalty_ra) + return; + } + halbtc8723b1ant_set_sw_penalty_tx_rate_adaptive(btcoexist, + coex_dm->cur_low_penalty_ra); + + coex_dm->pre_low_penalty_ra = coex_dm->cur_low_penalty_ra; +} + +void halbtc8723b1ant_set_dac_swing_reg(struct btc_coexist *btcoexist, u32 level) +{ + u8 val = (u8) level; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Write SwDacSwing = 0x%x\n", level); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x883, 0x3e, val); +} + +void halbtc8723b1ant_set_sw_full_time_dac_swing(struct btc_coexist *btcoexist, + bool sw_dac_swing_on, + u32 sw_dac_swing_lvl) +{ + if (sw_dac_swing_on) + halbtc8723b1ant_set_dac_swing_reg(btcoexist, sw_dac_swing_lvl); + else + halbtc8723b1ant_set_dac_swing_reg(btcoexist, 0x18); +} + + +void halbtc8723b1ant_dac_swing(struct btc_coexist *btcoexist, bool force_exec, + bool dac_swing_on, u32 dac_swing_lvl) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s turn DacSwing=%s, dac_swing_lvl=0x%x\n", + (force_exec ? "force to" : ""), (dac_swing_on ? "ON" : "OFF"), + dac_swing_lvl); + + coex_dm->cur_dac_swing_on = dac_swing_on; + coex_dm->cur_dac_swing_lvl = dac_swing_lvl; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], bPreDacSwingOn=%d, preDacSwingLvl=0x%x, " + "bCurDacSwingOn=%d, curDacSwingLvl=0x%x\n", + coex_dm->pre_dac_swing_on, coex_dm->pre_dac_swing_lvl, + coex_dm->cur_dac_swing_on, + coex_dm->cur_dac_swing_lvl); + + if ((coex_dm->pre_dac_swing_on == coex_dm->cur_dac_swing_on) && + (coex_dm->pre_dac_swing_lvl == coex_dm->cur_dac_swing_lvl)) + return; + } + mdelay(30); + halbtc8723b1ant_set_sw_full_time_dac_swing(btcoexist, dac_swing_on, + dac_swing_lvl); + + coex_dm->pre_dac_swing_on = coex_dm->cur_dac_swing_on; + coex_dm->pre_dac_swing_lvl = coex_dm->cur_dac_swing_lvl; +} + +void halbtc8723b1ant_set_adc_backoff(struct btc_coexist *btcoexist, + bool adc_backoff) +{ + if (adc_backoff) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], BB BackOff Level On!\n"); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x8db, 0x60, 0x3); + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], BB BackOff Level Off!\n"); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x8db, 0x60, 0x1); + } +} + +void halbtc8723b1ant_adc_backoff(struct btc_coexist *btcoexist, + bool force_exec, bool adc_backoff) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s turn AdcBackOff = %s\n", + (force_exec ? "force to" : ""), (adc_backoff ? "ON" : "OFF")); + coex_dm->cur_adc_backoff = adc_backoff; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], bPreAdcBackOff=%d, bCurAdcBackOff=%d\n", + coex_dm->pre_adc_backoff, coex_dm->cur_adc_backoff); + + if(coex_dm->pre_adc_backoff == coex_dm->cur_adc_backoff) + return; + } + halbtc8723b1ant_set_adc_backoff(btcoexist, coex_dm->cur_adc_backoff); + + coex_dm->pre_adc_backoff = + coex_dm->cur_adc_backoff; +} + +void halbtc8723b1ant_set_agc_table(struct btc_coexist *btcoexist, + bool adc_table_en) +{ + u8 rssi_adjust_val = 0; + + btcoexist->btc_set_rf_reg(btcoexist, + BTC_RF_A, 0xef, 0xfffff, 0x02000); + if (adc_table_en) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Agc Table On!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, + 0xfffff, 0x3fa58); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, + 0xfffff, 0x37a58); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, + 0xfffff, 0x2fa58); + rssi_adjust_val = 8; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Agc Table Off!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, + 0xfffff, 0x39258); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, + 0xfffff, 0x31258); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, + 0xfffff, 0x29258); + } + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0xef, 0xfffff, 0x0); + + /* set rssi_adjust_val for wifi module. */ + btcoexist->btc_set(btcoexist, BTC_SET_U1_RSSI_ADJ_VAL_FOR_AGC_TABLE_ON, + &rssi_adjust_val); +} + + +void halbtc8723b1ant_agc_table(struct btc_coexist *btcoexist, + bool force_exec, bool adc_table_en) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s %s Agc Table\n", + (force_exec ? "force to" : ""), + (adc_table_en ? "Enable" : "Disable")); + coex_dm->cur_agc_table_en = adc_table_en; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], bPreAgcTableEn=%d, bCurAgcTableEn=%d\n", + coex_dm->pre_agc_table_en, + coex_dm->cur_agc_table_en); + + if(coex_dm->pre_agc_table_en == coex_dm->cur_agc_table_en) + return; + } + halbtc8723b1ant_set_agc_table(btcoexist, adc_table_en); + + coex_dm->pre_agc_table_en = coex_dm->cur_agc_table_en; +} + +void halbtc8723b1ant_set_coex_table(struct btc_coexist *btcoexist, + u32 val0x6c0, u32 val0x6c4, + u32 val0x6c8, u8 val0x6cc) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], set coex table, set 0x6c0=0x%x\n", val0x6c0); + btcoexist->btc_write_4byte(btcoexist, 0x6c0, val0x6c0); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], set coex table, set 0x6c4=0x%x\n", val0x6c4); + btcoexist->btc_write_4byte(btcoexist, 0x6c4, val0x6c4); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], set coex table, set 0x6c8=0x%x\n", val0x6c8); + btcoexist->btc_write_4byte(btcoexist, 0x6c8, val0x6c8); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], set coex table, set 0x6cc=0x%x\n", val0x6cc); + btcoexist->btc_write_1byte(btcoexist, 0x6cc, val0x6cc); +} + +void halbtc8723b1ant_coex_table(struct btc_coexist *btcoexist, + bool force_exec, u32 val0x6c0, + u32 val0x6c4, u32 val0x6c8, + u8 val0x6cc) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s write Coex Table 0x6c0=0x%x," + " 0x6c4=0x%x, 0x6cc=0x%x\n", (force_exec ? "force to" : ""), + val0x6c0, val0x6c4, val0x6cc); + coex_dm->cur_val0x6c0 = val0x6c0; + coex_dm->cur_val0x6c4 = val0x6c4; + coex_dm->cur_val0x6c8 = val0x6c8; + coex_dm->cur_val0x6cc = val0x6cc; + + if (!force_exec) { + if ((coex_dm->pre_val0x6c0 == coex_dm->cur_val0x6c0) && + (coex_dm->pre_val0x6c4 == coex_dm->cur_val0x6c4) && + (coex_dm->pre_val0x6c8 == coex_dm->cur_val0x6c8) && + (coex_dm->pre_val0x6cc == coex_dm->cur_val0x6cc)) + return; + } + halbtc8723b1ant_set_coex_table(btcoexist, val0x6c0, val0x6c4, + val0x6c8, val0x6cc); + + coex_dm->pre_val0x6c0 = coex_dm->cur_val0x6c0; + coex_dm->pre_val0x6c4 = coex_dm->cur_val0x6c4; + coex_dm->pre_val0x6c8 = coex_dm->cur_val0x6c8; + coex_dm->pre_val0x6cc = coex_dm->cur_val0x6cc; +} + +void halbtc8723b1ant_coex_table_with_type(struct btc_coexist *btcoexist, + bool force_exec, u8 type) +{ + switch (type) { + case 0: + halbtc8723b1ant_coex_table(btcoexist, force_exec, 0x55555555, + 0x55555555, 0xffffff, 0x3); + break; + case 1: + halbtc8723b1ant_coex_table(btcoexist, force_exec, 0x55555555, + 0x5a5a5a5a, 0xffffff, 0x3); + break; + case 2: + halbtc8723b1ant_coex_table(btcoexist, force_exec, 0x5a5a5a5a, + 0x5a5a5a5a, 0xffffff, 0x3); + break; + case 3: + halbtc8723b1ant_coex_table(btcoexist, force_exec, 0x55555555, + 0xaaaaaaaa, 0xffffff, 0x3); + break; + case 4: + halbtc8723b1ant_coex_table(btcoexist, force_exec, 0x55555555, + 0x5aaa5aaa, 0xffffff, 0x3); + break; + case 5: + halbtc8723b1ant_coex_table(btcoexist, force_exec, 0x5a5a5a5a, + 0xaaaa5a5a, 0xffffff, 0x3); + break; + case 6: + halbtc8723b1ant_coex_table(btcoexist, force_exec, 0x55555555, + 0xaaaa5a5a, 0xffffff, 0x3); + break; + case 7: + halbtc8723b1ant_coex_table(btcoexist, force_exec, 0x5afa5afa, + 0x5afa5afa, 0xffffff, 0x3); + break; + default: + break; + } +} + +void halbtc8723b1ant_SetFwIgnoreWlanAct(struct btc_coexist *btcoexist, + bool enable) +{ + u8 h2c_parameter[1] = {0}; + + if (enable) + h2c_parameter[0] |= BIT0; /* function enable */ + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], set FW for BT Ignore Wlan_Act," + " FW write 0x63=0x%x\n", h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x63, 1, h2c_parameter); +} + +void halbtc8723b1ant_ignore_wlan_act(struct btc_coexist *btcoexist, + bool force_exec, bool enable) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s turn Ignore WlanAct %s\n", + (force_exec ? "force to" : ""), (enable ? "ON" : "OFF")); + coex_dm->cur_ignore_wlan_act = enable; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], bPreIgnoreWlanAct = %d, " + "bCurIgnoreWlanAct = %d!!\n", + coex_dm->pre_ignore_wlan_act, + coex_dm->cur_ignore_wlan_act); + + if (coex_dm->pre_ignore_wlan_act == + coex_dm->cur_ignore_wlan_act) + return; + } + halbtc8723b1ant_SetFwIgnoreWlanAct(btcoexist, enable); + + coex_dm->pre_ignore_wlan_act = coex_dm->cur_ignore_wlan_act; +} + +void halbtc8723b1ant_set_fw_ps_tdma(struct btc_coexist *btcoexist, + u8 byte1, u8 byte2, u8 byte3, + u8 byte4, u8 byte5) +{ + u8 h2c_parameter[5] = {0}; + u8 real_byte1 = byte1, real_byte5 = byte5; + bool ap_enable = false; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_AP_MODE_ENABLE, + &ap_enable); + + if (ap_enable) { + if ((byte1 & BIT4) && !(byte1 & BIT5)) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], FW for 1Ant AP mode\n"); + real_byte1 &= ~BIT4; + real_byte1 |= BIT5; + + real_byte5 |= BIT5; + real_byte5 &= ~BIT6; + } + } + + h2c_parameter[0] = real_byte1; + h2c_parameter[1] = byte2; + h2c_parameter[2] = byte3; + h2c_parameter[3] = byte4; + h2c_parameter[4] = real_byte5; + + coex_dm->ps_tdma_para[0] = real_byte1; + coex_dm->ps_tdma_para[1] = byte2; + coex_dm->ps_tdma_para[2] = byte3; + coex_dm->ps_tdma_para[3] = byte4; + coex_dm->ps_tdma_para[4] = real_byte5; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], PS-TDMA H2C cmd =0x%x%08x\n", + h2c_parameter[0], + h2c_parameter[1] << 24 | + h2c_parameter[2] << 16 | + h2c_parameter[3] << 8 | + h2c_parameter[4]); + + btcoexist->btc_fill_h2c(btcoexist, 0x60, 5, h2c_parameter); +} + +void halbtc8723b1ant_SetLpsRpwm(struct btc_coexist *btcoexist, + u8 lps_val, u8 rpwm_val) +{ + u8 lps = lps_val; + u8 rpwm = rpwm_val; + + btcoexist->btc_set(btcoexist, BTC_SET_U1_1ANT_LPS, &lps); + btcoexist->btc_set(btcoexist, BTC_SET_U1_1ANT_RPWM, &rpwm); +} + +void halbtc8723b1ant_LpsRpwm(struct btc_coexist *btcoexist, bool force_exec, + u8 lps_val, u8 rpwm_val) +{ + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s set lps/rpwm=0x%x/0x%x \n", + (force_exec ? "force to" : ""), lps_val, rpwm_val); + coex_dm->cur_lps = lps_val; + coex_dm->cur_rpwm = rpwm_val; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], LPS-RxBeaconMode=0x%x , LPS-RPWM=0x%x!!\n", + coex_dm->cur_lps, coex_dm->cur_rpwm); + + if ((coex_dm->pre_lps == coex_dm->cur_lps) && + (coex_dm->pre_rpwm == coex_dm->cur_rpwm)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], LPS-RPWM_Last=0x%x" + " , LPS-RPWM_Now=0x%x!!\n", + coex_dm->pre_rpwm, coex_dm->cur_rpwm); + + return; + } + } + halbtc8723b1ant_SetLpsRpwm(btcoexist, lps_val, rpwm_val); + + coex_dm->pre_lps = coex_dm->cur_lps; + coex_dm->pre_rpwm = coex_dm->cur_rpwm; +} + +void halbtc8723b1ant_sw_mechanism1(struct btc_coexist *btcoexist, + bool shrink_rx_lpf, bool low_penalty_ra, + bool limited_dig, bool bt_lna_constrain) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], SM1[ShRf/ LpRA/ LimDig/ btLna] = %d %d %d %d\n", + shrink_rx_lpf, low_penalty_ra, limited_dig, bt_lna_constrain); + + halbtc8723b1ant_low_penalty_ra(btcoexist, NORMAL_EXEC, low_penalty_ra); +} + +void halbtc8723b1ant_sw_mechanism2(struct btc_coexist *btcoexist, + bool agc_table_shift, bool adc_backoff, + bool sw_dac_swing, u32 dac_swing_lvl) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], SM2[AgcT/ AdcB/ SwDacSwing(lvl)] = %d %d %d\n", + agc_table_shift, adc_backoff, sw_dac_swing); +} + +void halbtc8723b1ant_SetAntPath(struct btc_coexist *btcoexist, + u8 ant_pos_type, bool init_hw_cfg, + bool wifi_off) +{ + struct btc_board_info *board_info = &btcoexist->board_info; + u32 fw_ver = 0, u32tmp = 0; + bool pg_ext_switch = false; + bool use_ext_switch = false; + u8 h2c_parameter[2] = {0}; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_EXT_SWITCH, &pg_ext_switch); + /* [31:16]=fw ver, [15:0]=fw sub ver */ + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_FW_VER, &fw_ver); + + + if ((fw_ver < 0xc0000) || pg_ext_switch) + use_ext_switch = true; + + if (init_hw_cfg){ + /*BT select s0/s1 is controlled by WiFi */ + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x67, 0x20, 0x1); + + /*Force GNT_BT to Normal */ + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x765, 0x18, 0x0); + } else if (wifi_off) { + /*Force GNT_BT to High */ + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x765, 0x18, 0x3); + /*BT select s0/s1 is controlled by BT */ + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x67, 0x20, 0x0); + + /* 0x4c[24:23]=00, Set Antenna control by BT_RFE_CTRL + * BT Vendor 0xac=0xf002 */ + u32tmp = btcoexist->btc_read_4byte(btcoexist, 0x4c); + u32tmp &= ~BIT23; + u32tmp &= ~BIT24; + btcoexist->btc_write_4byte(btcoexist, 0x4c, u32tmp); + } + + if (use_ext_switch) { + if (init_hw_cfg) { + /* 0x4c[23]=0, 0x4c[24]=1 Antenna control by WL/BT */ + u32tmp = btcoexist->btc_read_4byte(btcoexist, 0x4c); + u32tmp &= ~BIT23; + u32tmp |= BIT24; + btcoexist->btc_write_4byte(btcoexist, 0x4c, u32tmp); + + if (board_info->btdm_ant_pos == + BTC_ANTENNA_AT_MAIN_PORT) { + /* Main Ant to BT for IPS case 0x4c[23]=1 */ + btcoexist->btc_write_1byte_bitmask(btcoexist, + 0x64, 0x1, + 0x1); + + /*tell firmware "no antenna inverse"*/ + h2c_parameter[0] = 0; + h2c_parameter[1] = 1; /*ext switch type*/ + btcoexist->btc_fill_h2c(btcoexist, 0x65, 2, + h2c_parameter); + } else { + /*Aux Ant to BT for IPS case 0x4c[23]=1 */ + btcoexist->btc_write_1byte_bitmask(btcoexist, + 0x64, 0x1, + 0x0); + + /*tell firmware "antenna inverse"*/ + h2c_parameter[0] = 1; + h2c_parameter[1] = 1; /*ext switch type*/ + btcoexist->btc_fill_h2c(btcoexist, 0x65, 2, + h2c_parameter); + } + } + + /* fixed internal switch first*/ + /* fixed internal switch S1->WiFi, S0->BT*/ + if (board_info->btdm_ant_pos == BTC_ANTENNA_AT_MAIN_PORT) + btcoexist->btc_write_2byte(btcoexist, 0x948, 0x0); + else/* fixed internal switch S0->WiFi, S1->BT*/ + btcoexist->btc_write_2byte(btcoexist, 0x948, 0x280); + + /* ext switch setting */ + switch (ant_pos_type) { + case BTC_ANT_PATH_WIFI: + if (board_info->btdm_ant_pos == + BTC_ANTENNA_AT_MAIN_PORT) + btcoexist->btc_write_1byte_bitmask(btcoexist, + 0x92c, 0x3, + 0x1); + else + btcoexist->btc_write_1byte_bitmask(btcoexist, + 0x92c, 0x3, + 0x2); + break; + case BTC_ANT_PATH_BT: + if (board_info->btdm_ant_pos == + BTC_ANTENNA_AT_MAIN_PORT) + btcoexist->btc_write_1byte_bitmask(btcoexist, + 0x92c, 0x3, + 0x2); + else + btcoexist->btc_write_1byte_bitmask(btcoexist, + 0x92c, 0x3, + 0x1); + break; + default: + case BTC_ANT_PATH_PTA: + if (board_info->btdm_ant_pos == + BTC_ANTENNA_AT_MAIN_PORT) + btcoexist->btc_write_1byte_bitmask(btcoexist, + 0x92c, 0x3, + 0x1); + else + btcoexist->btc_write_1byte_bitmask(btcoexist, + 0x92c, 0x3, + 0x2); + break; + } + + } else { + if (init_hw_cfg) { + /* 0x4c[23]=1, 0x4c[24]=0 Antenna control by 0x64*/ + u32tmp = btcoexist->btc_read_4byte(btcoexist, 0x4c); + u32tmp |= BIT23; + u32tmp &= ~BIT24; + btcoexist->btc_write_4byte(btcoexist, 0x4c, u32tmp); + + if (board_info->btdm_ant_pos == + BTC_ANTENNA_AT_MAIN_PORT) { + /*Main Ant to WiFi for IPS case 0x4c[23]=1*/ + btcoexist->btc_write_1byte_bitmask(btcoexist, + 0x64, 0x1, + 0x0); + + /*tell firmware "no antenna inverse"*/ + h2c_parameter[0] = 0; + h2c_parameter[1] = 0; /*internal switch type*/ + btcoexist->btc_fill_h2c(btcoexist, 0x65, 2, + h2c_parameter); + } else { + /*Aux Ant to BT for IPS case 0x4c[23]=1*/ + btcoexist->btc_write_1byte_bitmask(btcoexist, + 0x64, 0x1, + 0x1); + + /*tell firmware "antenna inverse"*/ + h2c_parameter[0] = 1; + h2c_parameter[1] = 0; /*internal switch type*/ + btcoexist->btc_fill_h2c(btcoexist, 0x65, 2, + h2c_parameter); + } + } + + /* fixed external switch first*/ + /*Main->WiFi, Aux->BT*/ + if(board_info->btdm_ant_pos == BTC_ANTENNA_AT_MAIN_PORT) + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x92c, + 0x3, 0x1); + else/*Main->BT, Aux->WiFi */ + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x92c, + 0x3, 0x2); + + /* internal switch setting*/ + switch (ant_pos_type) { + case BTC_ANT_PATH_WIFI: + if(board_info->btdm_ant_pos == BTC_ANTENNA_AT_MAIN_PORT) + btcoexist->btc_write_2byte(btcoexist, 0x948, + 0x0); + else + btcoexist->btc_write_2byte(btcoexist, 0x948, + 0x280); + break; + case BTC_ANT_PATH_BT: + if(board_info->btdm_ant_pos == BTC_ANTENNA_AT_MAIN_PORT) + btcoexist->btc_write_2byte(btcoexist, 0x948, + 0x280); + else + btcoexist->btc_write_2byte(btcoexist, 0x948, + 0x0); + break; + default: + case BTC_ANT_PATH_PTA: + if(board_info->btdm_ant_pos == BTC_ANTENNA_AT_MAIN_PORT) + btcoexist->btc_write_2byte(btcoexist, 0x948, + 0x200); + else + btcoexist->btc_write_2byte(btcoexist, 0x948, + 0x80); + break; + } + } +} + +void halbtc8723b1ant_ps_tdma(struct btc_coexist *btcoexist, bool force_exec, + bool turn_on, u8 type) +{ + bool wifi_busy = false; + u8 rssi_adjust_val = 0; + + coex_dm->cur_ps_tdma_on = turn_on; + coex_dm->cur_ps_tdma = type; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + + if (!force_exec) { + if (coex_dm->cur_ps_tdma_on) + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], ******** TDMA(on, %d) *********\n", + coex_dm->cur_ps_tdma); + else + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], ******** TDMA(off, %d) ********\n", + coex_dm->cur_ps_tdma); + + + if ((coex_dm->pre_ps_tdma_on == coex_dm->cur_ps_tdma_on) && + (coex_dm->pre_ps_tdma == coex_dm->cur_ps_tdma)) + return; + } + if (turn_on) { + switch (type) { + default: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x51, 0x1a, + 0x1a, 0x0, 0x50); + break; + case 1: + if (wifi_busy) + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x51, + 0x3a, 0x03, + 0x10, 0x50); + else + halbtc8723b1ant_set_fw_ps_tdma(btcoexist,0x51, + 0x3a, 0x03, + 0x10, 0x51); + + rssi_adjust_val = 11; + break; + case 2: + if (wifi_busy) + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x51, + 0x2b, 0x03, + 0x10, 0x50); + else + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x51, + 0x2b, 0x03, + 0x10, 0x51); + rssi_adjust_val = 14; + break; + case 3: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x51, 0x1d, + 0x1d, 0x0, 0x52); + break; + case 4: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x93, 0x15, + 0x3, 0x14, 0x0); + rssi_adjust_val = 17; + break; + case 5: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x61, 0x15, + 0x3, 0x11, 0x10); + break; + case 6: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x61, 0x20, + 0x3, 0x11, 0x13); + break; + case 7: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x13, 0xc, + 0x5, 0x0, 0x0); + break; + case 8: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x93, 0x25, + 0x3, 0x10, 0x0); + break; + case 9: + if(wifi_busy) + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x51, + 0x21, 0x3, + 0x10, 0x50); + else + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x51, + 0x21, 0x3, + 0x10, 0x50); + rssi_adjust_val = 18; + break; + case 10: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x13, 0xa, + 0xa, 0x0, 0x40); + break; + case 11: + if (wifi_busy) + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x51, + 0x15, 0x03, + 0x10, 0x50); + else + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x51, + 0x15, 0x03, + 0x10, 0x50); + rssi_adjust_val = 20; + break; + case 12: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x51, 0x0a, + 0x0a, 0x0, 0x50); + break; + case 13: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x51, 0x15, + 0x15, 0x0, 0x50); + break; + case 14: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x51, 0x21, + 0x3, 0x10, 0x52); + break; + case 15: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x13, 0xa, + 0x3, 0x8, 0x0); + break; + case 16: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x93, 0x15, + 0x3, 0x10, 0x0); + rssi_adjust_val = 18; + break; + case 18: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x93, 0x25, + 0x3, 0x10, 0x0); + rssi_adjust_val = 14; + break; + case 20: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x61, 0x35, + 0x03, 0x11, 0x10); + break; + case 21: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x61, 0x15, + 0x03, 0x11, 0x10); + break; + case 22: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x61, 0x25, + 0x03, 0x11, 0x10); + break; + case 23: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x25, + 0x3, 0x31, 0x18); + rssi_adjust_val = 22; + break; + case 24: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x15, + 0x3, 0x31, 0x18); + rssi_adjust_val = 22; + break; + case 25: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0xe3, 0xa, + 0x3, 0x31, 0x18); + rssi_adjust_val = 22; + break; + case 26: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0xe3, 0xa, + 0x3, 0x31, 0x18); + rssi_adjust_val = 22; + break; + case 27: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x25, + 0x3, 0x31, 0x98); + rssi_adjust_val = 22; + break; + case 28: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x69, 0x25, + 0x3, 0x31, 0x0); + break; + case 29: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0xab, 0x1a, + 0x1a, 0x1, 0x10); + break; + case 30: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x51, 0x14, + 0x3, 0x10, 0x50); + break; + case 31: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0xd3, 0x1a, + 0x1a, 0, 0x58); + break; + case 32: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x61, 0xa, + 0x3, 0x10, 0x0); + break; + case 33: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0xa3, 0x25, + 0x3, 0x30, 0x90); + break; + case 34: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x53, 0x1a, + 0x1a, 0x0, 0x10); + break; + case 35: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x63, 0x1a, + 0x1a, 0x0, 0x10); + break; + case 36: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0xd3, 0x12, + 0x3, 0x14, 0x50); + break; + /* SoftAP only with no sta associated,BT disable , + * TDMA mode for power saving + * here softap mode screen off will cost 70-80mA for phone */ + case 40: + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x23, 0x18, + 0x00, 0x10, 0x24); + break; + } + } else { + switch (type) { + case 8: /*PTA Control */ + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x8, 0x0, + 0x0, 0x0, 0x0); + halbtc8723b1ant_SetAntPath(btcoexist, BTC_ANT_PATH_PTA, + false, false); + break; + case 0: + default: /*Software control, Antenna at BT side */ + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x0, 0x0, + 0x0, 0x0, 0x0); + halbtc8723b1ant_SetAntPath(btcoexist, BTC_ANT_PATH_BT, + false, false); + break; + case 9: /*Software control, Antenna at WiFi side */ + halbtc8723b1ant_set_fw_ps_tdma(btcoexist, 0x0, 0x0, + 0x0, 0x0, 0x0); + halbtc8723b1ant_SetAntPath(btcoexist, BTC_ANT_PATH_WIFI, + false, false); + break; + } + } + rssi_adjust_val = 0; + btcoexist->btc_set(btcoexist, + BTC_SET_U1_RSSI_ADJ_VAL_FOR_1ANT_COEX_TYPE, + &rssi_adjust_val); + + /* update pre state */ + coex_dm->pre_ps_tdma_on = coex_dm->cur_ps_tdma_on; + coex_dm->pre_ps_tdma = coex_dm->cur_ps_tdma; +} + +void halbtc8723b1ant_coex_alloff(struct btc_coexist *btcoexist) +{ + /* fw all off */ + halbtc8723b1ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + /* sw all off */ + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, false, 0x18); + + + /* hw all off */ + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 0); +} + +bool halbtc8723b1ant_is_common_action(struct btc_coexist *btcoexist) +{ + bool commom = false, wifi_connected = false; + bool wifi_busy = false; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + + if (!wifi_connected && + BT_8723B_1ANT_BT_STATUS_NON_CONNECTED_IDLE == coex_dm->bt_status) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi non connected-idle + " + "BT non connected-idle!!\n"); + halbtc8723b1ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + + commom = true; + } else if (wifi_connected && + (BT_8723B_1ANT_BT_STATUS_NON_CONNECTED_IDLE == + coex_dm->bt_status)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi connected + " + "BT non connected-idle!!\n"); + halbtc8723b1ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + + commom = true; + } else if (!wifi_connected && + (BT_8723B_1ANT_BT_STATUS_CONNECTED_IDLE == + coex_dm->bt_status)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi non connected-idle + " + "BT connected-idle!!\n"); + halbtc8723b1ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + + commom = true; + } else if (wifi_connected && + (BT_8723B_1ANT_BT_STATUS_CONNECTED_IDLE == + coex_dm->bt_status)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi connected + BT connected-idle!!\n"); + halbtc8723b1ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + + commom = true; + } else if (!wifi_connected && + (BT_8723B_1ANT_BT_STATUS_CONNECTED_IDLE != + coex_dm->bt_status)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + ("[BTCoex], Wifi non connected-idle + BT Busy!!\n")); + halbtc8723b1ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + + commom = true; + } else { + if (wifi_busy) + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi Connected-Busy" + " + BT Busy!!\n"); + else + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi Connected-Idle" + " + BT Busy!!\n"); + + commom = false; + } + + return commom; +} + + +void halbtc8723b1ant_tdma_duration_adjust_for_acl(struct btc_coexist *btcoexist, + u8 wifi_status) +{ + static s32 up, dn, m, n, wait_count; + /* 0: no change, +1: increase WiFi duration, + * -1: decrease WiFi duration */ + s32 result; + u8 retry_count = 0, bt_info_ext; + static bool pre_wifi_busy = false; + bool wifi_busy = false; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], TdmaDurationAdjustForAcl()\n"); + + if (BT_8723B_1ANT_WIFI_STATUS_CONNECTED_BUSY == wifi_status) + wifi_busy = true; + else + wifi_busy = false; + + if ((BT_8723B_1ANT_WIFI_STATUS_NON_CONNECTED_ASSO_AUTH_SCAN == + wifi_status) || + (BT_8723B_1ANT_WIFI_STATUS_CONNECTED_SCAN == wifi_status) || + (BT_8723B_1ANT_WIFI_STATUS_CONNECTED_SPECIAL_PKT == wifi_status)) { + if (coex_dm->cur_ps_tdma != 1 && coex_dm->cur_ps_tdma != 2 && + coex_dm->cur_ps_tdma != 3 && coex_dm->cur_ps_tdma != 9) { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 9); + coex_dm->ps_tdma_du_adj_type = 9; + + up = 0; + dn = 0; + m = 1; + n = 3; + result = 0; + wait_count = 0; + } + return; + } + + if (!coex_dm->auto_tdma_adjust) { + coex_dm->auto_tdma_adjust = true; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], first run TdmaDurationAdjust()!!\n"); + + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 2); + coex_dm->ps_tdma_du_adj_type = 2; + + up = 0; + dn = 0; + m = 1; + n = 3; + result = 0; + wait_count = 0; + } else { + /*accquire the BT TRx retry count from BT_Info byte2 */ + retry_count = coex_sta->bt_retry_cnt; + bt_info_ext = coex_sta->bt_info_ext; + result = 0; + wait_count++; + /* no retry in the last 2-second duration */ + if (retry_count == 0) { + up++; + dn--; + + if (dn <= 0) + dn = 0; + + if (up >= n) { + wait_count = 0; + n = 3; + up = 0; + dn = 0; + result = 1; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], Increase wifi " + "duration!!\n"); + } + } else if (retry_count <= 3) { + up--; + dn++; + + if (up <= 0) + up = 0; + + if (dn == 2) { + if (wait_count <= 2) + m++; + else + m = 1; + + if (m >= 20) + m = 20; + + n = 3 * m; + up = 0; + dn = 0; + wait_count = 0; + result = -1; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], Decrease wifi duration" + " for retryCounter<3!!\n"); + } + } else { + if (wait_count == 1) + m++; + else + m = 1; + + if (m >= 20) + m = 20; + + n = 3 * m; + up = 0; + dn = 0; + wait_count = 0; + result = -1; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], Decrease wifi duration" + " for retryCounter>3!!\n"); + } + + if (result == -1) { + if ((BT_INFO_8723B_1ANT_A2DP_BASIC_RATE(bt_info_ext)) && + ((coex_dm->cur_ps_tdma == 1) || + (coex_dm->cur_ps_tdma == 2))) { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 9); + coex_dm->ps_tdma_du_adj_type = 9; + } else if (coex_dm->cur_ps_tdma == 1) { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = 2; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 9); + coex_dm->ps_tdma_du_adj_type = 9; + } else if (coex_dm->cur_ps_tdma == 9) { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = 11; + } + } else if(result == 1) { + if ((BT_INFO_8723B_1ANT_A2DP_BASIC_RATE(bt_info_ext)) && + ((coex_dm->cur_ps_tdma == 1) || + (coex_dm->cur_ps_tdma == 2))) { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 9); + coex_dm->ps_tdma_du_adj_type = 9; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 9); + coex_dm->ps_tdma_du_adj_type = 9; + } else if (coex_dm->cur_ps_tdma == 9) { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = 2; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 1); + coex_dm->ps_tdma_du_adj_type = 1; + } + } else { /*no change */ + /*if busy / idle change */ + if (wifi_busy != pre_wifi_busy) { + pre_wifi_busy = wifi_busy; + halbtc8723b1ant_ps_tdma(btcoexist, FORCE_EXEC, + true, + coex_dm->cur_ps_tdma); + } + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex],********* TDMA(on, %d) ********\n", + coex_dm->cur_ps_tdma); + } + + if (coex_dm->cur_ps_tdma != 1 && coex_dm->cur_ps_tdma != 2 && + coex_dm->cur_ps_tdma != 9 && coex_dm->cur_ps_tdma != 11) { + /* recover to previous adjust type */ + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, + coex_dm->ps_tdma_du_adj_type); + } + } +} + +u8 halbtc8723b1ant_ps_tdma_type_by_wifi_rssi(s32 wifi_rssi, s32 pre_wifi_rssi, + u8 wifi_rssi_thresh) +{ + u8 ps_tdma_type=0; + + if (wifi_rssi > pre_wifi_rssi) { + if (wifi_rssi > (wifi_rssi_thresh + 5)) + ps_tdma_type = 26; + else + ps_tdma_type = 25; + } else { + if (wifi_rssi > wifi_rssi_thresh) + ps_tdma_type = 26; + else + ps_tdma_type = 25; + } + + return ps_tdma_type; +} + +void halbtc8723b1ant_PsTdmaCheckForPowerSaveState(struct btc_coexist *btcoexist, + bool new_ps_state) +{ + u8 lps_mode = 0x0; + + btcoexist->btc_get(btcoexist, BTC_GET_U1_LPS_MODE, &lps_mode); + + if (lps_mode) { /* already under LPS state */ + if (new_ps_state) { + /* keep state under LPS, do nothing. */ + } else { + /* will leave LPS state, turn off psTdma first */ + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + false, 0); + } + } else { /* NO PS state */ + if (new_ps_state) { + /* will enter LPS state, turn off psTdma first */ + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + false, 0); + } else { + /* keep state under NO PS state, do nothing. */ + } + } +} + +void halbtc8723b1ant_power_save_state(struct btc_coexist *btcoexist, + u8 ps_type, u8 lps_val, + u8 rpwm_val) +{ + bool low_pwr_disable = false; + + switch (ps_type) { + case BTC_PS_WIFI_NATIVE: + /* recover to original 32k low power setting */ + low_pwr_disable = false; + btcoexist->btc_set(btcoexist, BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + btcoexist->btc_set(btcoexist, BTC_SET_ACT_NORMAL_LPS, NULL); + break; + case BTC_PS_LPS_ON: + halbtc8723b1ant_PsTdmaCheckForPowerSaveState(btcoexist, true); + halbtc8723b1ant_LpsRpwm(btcoexist, NORMAL_EXEC, lps_val, + rpwm_val); + /* when coex force to enter LPS, do not enter 32k low power. */ + low_pwr_disable = true; + btcoexist->btc_set(btcoexist, BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + /* power save must executed before psTdma. */ + btcoexist->btc_set(btcoexist, BTC_SET_ACT_ENTER_LPS, NULL); + break; + case BTC_PS_LPS_OFF: + halbtc8723b1ant_PsTdmaCheckForPowerSaveState(btcoexist, false); + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, NULL); + break; + default: + break; + } +} + +void halbtc8723b1ant_action_wifi_only(struct btc_coexist *btcoexist) +{ + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 0); + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 9); +} + +void halbtc8723b1ant_monitor_bt_enable_disable(struct btc_coexist *btcoexist) +{ + static bool pre_bt_disabled = false; + static u32 bt_disable_cnt = 0; + bool bt_active = true, bt_disabled = false; + + /* This function check if bt is disabled */ + + if (coex_sta->high_priority_tx == 0 && + coex_sta->high_priority_rx == 0 && + coex_sta->low_priority_tx == 0 && + coex_sta->low_priority_rx == 0) + bt_active = false; + + if (coex_sta->high_priority_tx == 0xffff && + coex_sta->high_priority_rx == 0xffff && + coex_sta->low_priority_tx == 0xffff && + coex_sta->low_priority_rx == 0xffff) + bt_active = false; + + if (bt_active) { + bt_disable_cnt = 0; + bt_disabled = false; + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_DISABLE, + &bt_disabled); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], BT is enabled !!\n"); + } else { + bt_disable_cnt++; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], bt all counters=0, %d times!!\n", + bt_disable_cnt); + if (bt_disable_cnt >= 2) { + bt_disabled = true; + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_DISABLE, + &bt_disabled); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], BT is disabled !!\n"); + halbtc8723b1ant_action_wifi_only(btcoexist); + } + } + if (pre_bt_disabled != bt_disabled) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], BT is from %s to %s!!\n", + (pre_bt_disabled ? "disabled" : "enabled"), + (bt_disabled ? "disabled" : "enabled")); + pre_bt_disabled = bt_disabled; + if (!bt_disabled) { + } else { + btcoexist->btc_set(btcoexist, BTC_SET_ACT_LEAVE_LPS, + NULL); + btcoexist->btc_set(btcoexist, BTC_SET_ACT_NORMAL_LPS, + NULL); + } + } +} + +/*************************************************** + * + * Software Coex Mechanism start + * + ***************************************************/ +/* SCO only or SCO+PAN(HS) */ +void halbtc8723b1ant_action_sco(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = + halbtc8723b1ant_wifi_rssi_state(btcoexist, 0, 2, 25, 0); + + halbtc8723b1ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 4); + + if (halbtc8723b1ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + else + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if (BTC_WIFI_BW_HT40 == wifi_bw) { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + + +void halbtc8723b1ant_action_hid(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = halbtc8723b1ant_wifi_rssi_state(btcoexist, + 0, 2, 25, 0); + bt_rssi_state = halbtc8723b1ant_bt_rssi_state(2, 50, 0); + + halbtc8723b1ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (halbtc8723b1ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + else + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, + BTC_GET_U4_WIFI_BW, &wifi_bw); + + if (BTC_WIFI_BW_HT40 == wifi_bw) { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +/*A2DP only / PAN(EDR) only/ A2DP+PAN(HS) */ +void halbtc8723b1ant_action_a2dp(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = halbtc8723b1ant_wifi_rssi_state(btcoexist, + 0, 2, 25, 0); + bt_rssi_state = halbtc8723b1ant_bt_rssi_state(2, 50, 0); + + halbtc8723b1ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (halbtc8723b1ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + else + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if (BTC_WIFI_BW_HT40 == wifi_bw) { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +void halbtc8723b1ant_action_a2dp_pan_hs(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state, bt_info_ext; + u32 wifi_bw; + + bt_info_ext = coex_sta->bt_info_ext; + wifi_rssi_state = halbtc8723b1ant_wifi_rssi_state(btcoexist, + 0, 2, 25, 0); + bt_rssi_state = halbtc8723b1ant_bt_rssi_state(2, 50, 0); + + halbtc8723b1ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (halbtc8723b1ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + else + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if (BTC_WIFI_BW_HT40 == wifi_bw) { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +void halbtc8723b1ant_action_pan_edr(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = halbtc8723b1ant_wifi_rssi_state(btcoexist, + 0, 2, 25, 0); + bt_rssi_state = halbtc8723b1ant_bt_rssi_state(2, 50, 0); + + halbtc8723b1ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (halbtc8723b1ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + else + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if (BTC_WIFI_BW_HT40 == wifi_bw) { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + + +/* PAN(HS) only */ +void halbtc8723b1ant_action_pan_hs(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = halbtc8723b1ant_wifi_rssi_state(btcoexist, + 0, 2, 25, 0); + bt_rssi_state = halbtc8723b1ant_bt_rssi_state(2, 50, 0); + + halbtc8723b1ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if (BTC_WIFI_BW_HT40 == wifi_bw) { + /* fw mechanism */ + if((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, + false); + else + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, + false); + + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + /* fw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, + false); + else + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, + false); + + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +/*PAN(EDR)+A2DP */ +void halbtc8723b1ant_action_pan_edr_a2dp(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state, bt_info_ext; + u32 wifi_bw; + + bt_info_ext = coex_sta->bt_info_ext; + wifi_rssi_state = halbtc8723b1ant_wifi_rssi_state(btcoexist, + 0, 2, 25, 0); + bt_rssi_state = halbtc8723b1ant_bt_rssi_state(2, 50, 0); + + halbtc8723b1ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (halbtc8723b1ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + else + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, + BTC_GET_U4_WIFI_BW, &wifi_bw); + + if (BTC_WIFI_BW_HT40 == wifi_bw) { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +void halbtc8723b1ant_action_pan_edr_hid(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = halbtc8723b1ant_wifi_rssi_state(btcoexist, + 0, 2, 25, 0); + bt_rssi_state = halbtc8723b1ant_bt_rssi_state(2, 50, 0); + + halbtc8723b1ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (halbtc8723b1ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + else + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if (BTC_WIFI_BW_HT40 == wifi_bw) { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +/* HID+A2DP+PAN(EDR) */ +void halbtc8723b1ant_action_hid_a2dp_pan_edr(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state, bt_info_ext; + u32 wifi_bw; + + bt_info_ext = coex_sta->bt_info_ext; + wifi_rssi_state = halbtc8723b1ant_wifi_rssi_state(btcoexist, + 0, 2, 25, 0); + bt_rssi_state = halbtc8723b1ant_bt_rssi_state(2, 50, 0); + + halbtc8723b1ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (halbtc8723b1ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + else + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if (BTC_WIFI_BW_HT40 == wifi_bw) { + /* sw mechanism */ + if((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +void halbtc8723b1ant_action_hid_a2dp(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state, bt_info_ext; + u32 wifi_bw; + + bt_info_ext = coex_sta->bt_info_ext; + wifi_rssi_state = halbtc8723b1ant_wifi_rssi_state(btcoexist, + 0, 2, 25, 0); + bt_rssi_state = halbtc8723b1ant_bt_rssi_state(2, 50, 0); + + if (halbtc8723b1ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + else + halbtc8723b1ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if (BTC_WIFI_BW_HT40 == wifi_bw) { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + /* sw mechanism */ + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } else { + halbtc8723b1ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +/***************************************************** + * + * Non-Software Coex Mechanism start + * + *****************************************************/ +void halbtc8723b1ant_action_hs(struct btc_coexist *btcoexist) +{ + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 5); + halbtc8723b1ant_coex_table_with_type(btcoexist, FORCE_EXEC, 2); +} + +void halbtc8723b1ant_action_bt_inquiry(struct btc_coexist *btcoexist) +{ + struct btc_bt_link_info *bt_link_info = &btcoexist->bt_link_info; + bool wifi_connected = false, ap_enable = false; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_AP_MODE_ENABLE, + &ap_enable); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + + if (!wifi_connected) { + halbtc8723b1ant_power_save_state(btcoexist, + BTC_PS_WIFI_NATIVE, 0x0, 0x0); + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 5); + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 1); + } else if (bt_link_info->sco_exist || bt_link_info->hid_only) { + /* SCO/HID-only busy */ + halbtc8723b1ant_power_save_state(btcoexist, BTC_PS_WIFI_NATIVE, + 0x0, 0x0); + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 32); + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 1); + } else { + if (ap_enable) + halbtc8723b1ant_power_save_state(btcoexist, + BTC_PS_WIFI_NATIVE, + 0x0, 0x0); + else + halbtc8723b1ant_power_save_state(btcoexist, + BTC_PS_LPS_ON, + 0x50, 0x4); + + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 30); + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 1); + } +} + +void halbtc8723b1ant_action_bt_sco_hid_only_busy(struct btc_coexist * btcoexist, + u8 wifi_status) +{ + struct btc_bt_link_info *bt_link_info = &btcoexist->bt_link_info; + bool wifi_connected = false; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + + /* tdma and coex table */ + + if (bt_link_info->sco_exist) { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 5); + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 2); + } else { /* HID */ + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 6); + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 5); + } +} + +void halbtc8723b1ant_action_wifi_connected_bt_acl_busy( + struct btc_coexist *btcoexist, + u8 wifi_status) +{ + u8 bt_rssi_state; + + struct btc_bt_link_info *bt_link_info = &btcoexist->bt_link_info; + bt_rssi_state = halbtc8723b1ant_bt_rssi_state(2, 28, 0); + + if (bt_link_info->hid_only) { /*HID */ + halbtc8723b1ant_action_bt_sco_hid_only_busy(btcoexist, + wifi_status); + coex_dm->auto_tdma_adjust = false; + return; + } else if (bt_link_info->a2dp_only) { /*A2DP */ + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_tdma_duration_adjust_for_acl(btcoexist, + wifi_status); + } else { /*for low BT RSSI */ + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 11); + coex_dm->auto_tdma_adjust = false; + } + + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 1); + } else if (bt_link_info->hid_exist && + bt_link_info->a2dp_exist) { /*HID+A2DP */ + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 14); + coex_dm->auto_tdma_adjust = false; + } else { /*for low BT RSSI*/ + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 14); + coex_dm->auto_tdma_adjust = false; + } + + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 6); + /*PAN(OPP,FTP), HID+PAN(OPP,FTP) */ + } else if (bt_link_info->pan_only || + (bt_link_info->hid_exist && bt_link_info->pan_exist)) { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 3); + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 6); + coex_dm->auto_tdma_adjust = false; + /*A2DP+PAN(OPP,FTP), HID+A2DP+PAN(OPP,FTP)*/ + } else if ((bt_link_info->a2dp_exist && bt_link_info->pan_exist) || + (bt_link_info->hid_exist && bt_link_info->a2dp_exist && + bt_link_info->pan_exist)) { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 13); + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 1); + coex_dm->auto_tdma_adjust = false; + } else { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 11); + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 1); + coex_dm->auto_tdma_adjust = false; + } +} + +void halbtc8723b1ant_action_wifi_not_connected(struct btc_coexist *btcoexist) +{ + /* power save state */ + halbtc8723b1ant_power_save_state(btcoexist, BTC_PS_WIFI_NATIVE, + 0x0, 0x0); + + /* tdma and coex table */ + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 8); + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 0); +} + +void halbtc8723b1ant_action_wifi_not_connected_asso_auth_scan( + struct btc_coexist *btcoexist) +{ + halbtc8723b1ant_power_save_state(btcoexist, BTC_PS_WIFI_NATIVE, + 0x0, 0x0); + + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 22); + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 1); +} + +void halbtc8723b1ant_ActionWifiConnectedScan(struct btc_coexist *btcoexist) +{ + struct btc_bt_link_info *bt_link_info = &btcoexist->bt_link_info; + + halbtc8723b1ant_power_save_state(btcoexist, BTC_PS_WIFI_NATIVE, + 0x0, 0x0); + + /* tdma and coex table */ + if (BT_8723B_1ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status) { + if (bt_link_info->a2dp_exist && + bt_link_info->pan_exist) { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 22); + halbtc8723b1ant_coex_table_with_type(btcoexist, + NORMAL_EXEC, 1); + } else { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 20); + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 1); + } + } else if ((BT_8723B_1ANT_BT_STATUS_SCO_BUSY == coex_dm->bt_status) || + (BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY == + coex_dm->bt_status)) { + halbtc8723b1ant_action_bt_sco_hid_only_busy(btcoexist, + BT_8723B_1ANT_WIFI_STATUS_CONNECTED_SCAN); + } else { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 20); + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 1); + } +} + +void halbtc8723b1ant_action_wifi_connected_special_packet( + struct btc_coexist *btcoexist) +{ + bool hs_connecting = false; + struct btc_bt_link_info *bt_link_info = &btcoexist->bt_link_info; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_CONNECTING, &hs_connecting); + + halbtc8723b1ant_power_save_state(btcoexist, BTC_PS_WIFI_NATIVE, + 0x0, 0x0); + + /* tdma and coex table */ + if (BT_8723B_1ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status) { + if (bt_link_info->a2dp_exist && bt_link_info->pan_exist) { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 22); + halbtc8723b1ant_coex_table_with_type(btcoexist, + NORMAL_EXEC, 1); + } else { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 20); + halbtc8723b1ant_coex_table_with_type(btcoexist, + NORMAL_EXEC, 1); + } + } else { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 20); + halbtc8723b1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 1); + } +} + +void halbtc8723b1ant_action_wifi_connected(struct btc_coexist *btcoexist) +{ + bool wifi_busy = false; + bool scan = false, link = false, roam = false; + bool under_4way = false, ap_enable = false; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], CoexForWifiConnect()===>\n"); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_4_WAY_PROGRESS, + &under_4way); + if (under_4way) { + halbtc8723b1ant_action_wifi_connected_special_packet(btcoexist); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], CoexForWifiConnect(), " + "return for wifi is under 4way<===\n"); + return; + } + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_SCAN, &scan); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_LINK, &link); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_ROAM, &roam); + + if (scan || link || roam) { + halbtc8723b1ant_ActionWifiConnectedScan(btcoexist); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], CoexForWifiConnect(), " + "return for wifi is under scan<===\n"); + return; + } + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_AP_MODE_ENABLE, + &ap_enable); + /* power save state */ + if (!ap_enable && + BT_8723B_1ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status && + !btcoexist->bt_link_info.hid_only) + halbtc8723b1ant_power_save_state(btcoexist, BTC_PS_LPS_ON, + 0x50, 0x4); + else + halbtc8723b1ant_power_save_state(btcoexist, BTC_PS_WIFI_NATIVE, + 0x0, 0x0); + + /* tdma and coex table */ + btcoexist->btc_get(btcoexist, + BTC_GET_BL_WIFI_BUSY, &wifi_busy); + if (!wifi_busy) { + if (BT_8723B_1ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status) { + halbtc8723b1ant_action_wifi_connected_bt_acl_busy(btcoexist, + BT_8723B_1ANT_WIFI_STATUS_CONNECTED_IDLE); + } else if ((BT_8723B_1ANT_BT_STATUS_SCO_BUSY == + coex_dm->bt_status) || + (BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY == + coex_dm->bt_status)) { + halbtc8723b1ant_action_bt_sco_hid_only_busy(btcoexist, + BT_8723B_1ANT_WIFI_STATUS_CONNECTED_IDLE); + } else { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, + false, 8); + halbtc8723b1ant_coex_table_with_type(btcoexist, + NORMAL_EXEC, 2); + } + } else { + if (BT_8723B_1ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status) { + halbtc8723b1ant_action_wifi_connected_bt_acl_busy(btcoexist, + BT_8723B_1ANT_WIFI_STATUS_CONNECTED_BUSY); + } else if ((BT_8723B_1ANT_BT_STATUS_SCO_BUSY == + coex_dm->bt_status) || + (BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY == + coex_dm->bt_status)) { + halbtc8723b1ant_action_bt_sco_hid_only_busy(btcoexist, + BT_8723B_1ANT_WIFI_STATUS_CONNECTED_BUSY); + } else { + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 8); + halbtc8723b1ant_coex_table_with_type(btcoexist, + NORMAL_EXEC, 2); + } + } +} + +void halbtc8723b1ant_run_sw_coexist_mechanism(struct btc_coexist *btcoexist) +{ + u8 algorithm = 0; + + algorithm = halbtc8723b1ant_action_algorithm(btcoexist); + coex_dm->cur_algorithm = algorithm; + + if (halbtc8723b1ant_is_common_action(btcoexist)) { + } else { + switch (coex_dm->cur_algorithm) { + case BT_8723B_1ANT_COEX_ALGO_SCO: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action algorithm = SCO.\n"); + halbtc8723b1ant_action_sco(btcoexist); + break; + case BT_8723B_1ANT_COEX_ALGO_HID: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action algorithm = HID.\n"); + halbtc8723b1ant_action_hid(btcoexist); + break; + case BT_8723B_1ANT_COEX_ALGO_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action algorithm = A2DP.\n"); + halbtc8723b1ant_action_a2dp(btcoexist); + break; + case BT_8723B_1ANT_COEX_ALGO_A2DP_PANHS: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action algorithm = " + "A2DP+PAN(HS).\n"); + halbtc8723b1ant_action_a2dp_pan_hs(btcoexist); + break; + case BT_8723B_1ANT_COEX_ALGO_PANEDR: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action algorithm = PAN(EDR).\n"); + halbtc8723b1ant_action_pan_edr(btcoexist); + break; + case BT_8723B_1ANT_COEX_ALGO_PANHS: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action algorithm = HS mode.\n"); + halbtc8723b1ant_action_pan_hs(btcoexist); + break; + case BT_8723B_1ANT_COEX_ALGO_PANEDR_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action algorithm = PAN+A2DP.\n"); + halbtc8723b1ant_action_pan_edr_a2dp(btcoexist); + break; + case BT_8723B_1ANT_COEX_ALGO_PANEDR_HID: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action algorithm = " + "PAN(EDR)+HID.\n"); + halbtc8723b1ant_action_pan_edr_hid(btcoexist); + break; + case BT_8723B_1ANT_COEX_ALGO_HID_A2DP_PANEDR: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action algorithm = " + "HID+A2DP+PAN.\n"); + halbtc8723b1ant_action_hid_a2dp_pan_edr(btcoexist); + break; + case BT_8723B_1ANT_COEX_ALGO_HID_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action algorithm = HID+A2DP.\n"); + halbtc8723b1ant_action_hid_a2dp(btcoexist); + break; + default: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action algorithm = " + "coexist All Off!!\n"); + break; + } + coex_dm->pre_algorithm = coex_dm->cur_algorithm; + } +} + +void halbtc8723b1ant_run_coexist_mechanism(struct btc_coexist *btcoexist) +{ + struct btc_bt_link_info *bt_link_info = &btcoexist->bt_link_info; + bool wifi_connected = false, bt_hs_on = false; + bool limited_dig = false, bIncreaseScanDevNum = false; + bool b_bt_ctrl_agg_buf_size = false; + u8 agg_buf_size = 5; + u8 wifi_rssi_state = BTC_RSSI_STATE_HIGH; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], RunCoexistMechanism()===>\n"); + + if (btcoexist->manual_control) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], RunCoexistMechanism(), " + "return for Manual CTRL <===\n"); + return; + } + + if (btcoexist->stop_coex_dm) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], RunCoexistMechanism(), " + "return for Stop Coex DM <===\n"); + return; + } + + if (coex_sta->under_ips) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], wifi is under IPS !!!\n"); + return; + } + + if ((BT_8723B_1ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status) || + (BT_8723B_1ANT_BT_STATUS_SCO_BUSY == coex_dm->bt_status) || + (BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY == coex_dm->bt_status)) { + limited_dig = true; + bIncreaseScanDevNum = true; + } + + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_LIMITED_DIG, &limited_dig); + btcoexist->btc_set(btcoexist, BTC_SET_BL_INC_SCAN_DEV_NUM, + &bIncreaseScanDevNum); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + + if (!bt_link_info->sco_exist && !bt_link_info->hid_exist) { + halbtc8723b1ant_limited_tx(btcoexist, NORMAL_EXEC, 0, 0, 0, 0); + } else { + if (wifi_connected) { + wifi_rssi_state = + halbtc8723b1ant_wifi_rssi_state(btcoexist, + 1, 2, 30, 0); + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b1ant_limited_tx(btcoexist, + NORMAL_EXEC, + 1, 1, 1, 1); + } else { + halbtc8723b1ant_limited_tx(btcoexist, + NORMAL_EXEC, + 1, 1, 1, 1); + } + } else { + halbtc8723b1ant_limited_tx(btcoexist, NORMAL_EXEC, + 0, 0, 0, 0); + } + } + + if (bt_link_info->sco_exist) { + b_bt_ctrl_agg_buf_size = true; + agg_buf_size = 0x3; + } else if (bt_link_info->hid_exist) { + b_bt_ctrl_agg_buf_size = true; + agg_buf_size = 0x5; + } else if (bt_link_info->a2dp_exist || bt_link_info->pan_exist) { + b_bt_ctrl_agg_buf_size = true; + agg_buf_size = 0x8; + } + halbtc8723b1ant_limited_rx(btcoexist, NORMAL_EXEC, false, + b_bt_ctrl_agg_buf_size, agg_buf_size); + + halbtc8723b1ant_run_sw_coexist_mechanism(btcoexist); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + + if (coex_sta->c2h_bt_inquiry_page) { + halbtc8723b1ant_action_bt_inquiry(btcoexist); + return; + } else if (bt_hs_on) { + halbtc8723b1ant_action_hs(btcoexist); + return; + } + + + if (!wifi_connected) { + bool scan = false, link = false, roam = false; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], wifi is non connected-idle !!!\n"); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_SCAN, &scan); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_LINK, &link); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_ROAM, &roam); + + if (scan || link || roam) + halbtc8723b1ant_action_wifi_not_connected_asso_auth_scan(btcoexist); + else + halbtc8723b1ant_action_wifi_not_connected(btcoexist); + } else { /* wifi LPS/Busy */ + halbtc8723b1ant_action_wifi_connected(btcoexist); + } +} + +void halbtc8723b1ant_init_coex_dm(struct btc_coexist *btcoexist) +{ + /* force to reset coex mechanism */ + halbtc8723b1ant_fw_dac_swing_lvl(btcoexist, FORCE_EXEC, 6); + halbtc8723b1ant_dec_bt_pwr(btcoexist, FORCE_EXEC, false); + + /* sw all off */ + halbtc8723b1ant_sw_mechanism1(btcoexist, false, false, false, false); + halbtc8723b1ant_sw_mechanism2(btcoexist,false, false, false, 0x18); + + halbtc8723b1ant_ps_tdma(btcoexist, FORCE_EXEC, false, 8); + halbtc8723b1ant_coex_table_with_type(btcoexist, FORCE_EXEC, 0); +} + +void halbtc8723b1ant_init_hw_config(struct btc_coexist *btcoexist, bool backup) +{ + u32 u32tmp = 0; + u8 u8tmp = 0; + u32 cnt_bt_cal_chk = 0; + + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], 1Ant Init HW Config!!\n"); + + if (backup) {/* backup rf 0x1e value */ + coex_dm->bt_rf0x1e_backup = + btcoexist->btc_get_rf_reg(btcoexist, + BTC_RF_A, 0x1e, 0xfffff); + + coex_dm->backup_arfr_cnt1 = + btcoexist->btc_read_4byte(btcoexist, 0x430); + coex_dm->backup_arfr_cnt2 = + btcoexist->btc_read_4byte(btcoexist, 0x434); + coex_dm->backup_retry_limit = + btcoexist->btc_read_2byte(btcoexist, 0x42a); + coex_dm->backup_ampdu_max_time = + btcoexist->btc_read_1byte(btcoexist, 0x456); + } + + /* WiFi goto standby while GNT_BT 0-->1 */ + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x780); + /* BT goto standby while GNT_BT 1-->0 */ + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x2, 0xfffff, 0x500); + + btcoexist->btc_write_1byte(btcoexist, 0x974, 0xff); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x944, 0x3, 0x3); + btcoexist->btc_write_1byte(btcoexist, 0x930, 0x77); + + + /* BT calibration check */ + while (cnt_bt_cal_chk <= 20) { + u32tmp = btcoexist->btc_read_4byte(btcoexist, 0x49d); + cnt_bt_cal_chk++; + if (u32tmp & BIT0) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], ########### BT " + "calibration(cnt=%d) ###########\n", + cnt_bt_cal_chk); + mdelay(50); + } else { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], ********** BT NOT " + "calibration (cnt=%d)**********\n", + cnt_bt_cal_chk); + break; + } + } + + /* 0x790[5:0]=0x5 */ + u8tmp = btcoexist->btc_read_1byte(btcoexist, 0x790); + u8tmp &= 0xc0; + u8tmp |= 0x5; + btcoexist->btc_write_1byte(btcoexist, 0x790, u8tmp); + + /* Enable counter statistics */ + /*0x76e[3] =1, WLAN_Act control by PTA */ + btcoexist->btc_write_1byte(btcoexist, 0x76e, 0xc); + btcoexist->btc_write_1byte(btcoexist, 0x778, 0x1); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x40, 0x20, 0x1); + + /*Antenna config */ + halbtc8723b1ant_SetAntPath(btcoexist, BTC_ANT_PATH_PTA, true, false); + /* PTA parameter */ + halbtc8723b1ant_coex_table_with_type(btcoexist, FORCE_EXEC, 0); + +} + +void halbtc8723b1ant_wifi_off_hw_cfg(struct btc_coexist *btcoexist) +{ + /* set wlan_act to low */ + btcoexist->btc_write_1byte(btcoexist, 0x76e, 0); +} + +/************************************************************** + * work around function start with wa_halbtc8723b1ant_ + **************************************************************/ +/************************************************************** + * extern function start with EXhalbtc8723b1ant_ + **************************************************************/ + +void ex_halbtc8723b1ant_init_hwconfig(struct btc_coexist *btcoexist) +{ + halbtc8723b1ant_init_hw_config(btcoexist, true); +} + +void ex_halbtc8723b1ant_init_coex_dm(struct btc_coexist *btcoexist) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], Coex Mechanism Init!!\n"); + + btcoexist->stop_coex_dm = false; + + halbtc8723b1ant_init_coex_dm(btcoexist); + + halbtc8723b1ant_query_bt_info(btcoexist); +} + +void ex_halbtc8723b1ant_display_coex_info(struct btc_coexist *btcoexist) +{ + struct btc_board_info *board_info = &btcoexist->board_info; + struct btc_stack_info *stack_info = &btcoexist->stack_info; + struct btc_bt_link_info *bt_link_info = &btcoexist->bt_link_info; + u8 *cli_buf = btcoexist->cli_buf; + u8 u8tmp[4], i, bt_info_ext, psTdmaCase=0; + u16 u16tmp[4]; + u32 u32tmp[4]; + bool roam = false, scan = false; + bool link = false, wifi_under_5g = false; + bool bt_hs_on = false, wifi_busy = false; + s32 wifi_rssi =0, bt_hs_rssi = 0; + u32 wifi_bw, wifi_traffic_dir, fa_ofdm, fa_cck; + u8 wifi_dot11_chnl, wifi_hs_chnl; + u32 fw_ver = 0, bt_patch_ver = 0; + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n ============[BT Coexist info]============"); + CL_PRINTF(cli_buf); + + if (btcoexist->manual_control) { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n ============[Under Manual Control]=========="); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n =========================================="); + CL_PRINTF(cli_buf); + } + if (btcoexist->stop_coex_dm) { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n ============[Coex is STOPPED]============"); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n =========================================="); + CL_PRINTF(cli_buf); + } + + if (!board_info->bt_exist) { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n BT not exists !!!"); + CL_PRINTF(cli_buf); + return; + } + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d", + "Ant PG Num/ Ant Mech/ Ant Pos:", \ + board_info->pg_ant_num, board_info->btdm_ant_num, + board_info->btdm_ant_pos); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %d", + "BT stack/ hci ext ver", \ + ((stack_info->profile_notified)? "Yes":"No"), + stack_info->hci_version); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_BT_PATCH_VER, &bt_patch_ver); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_FW_VER, &fw_ver); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = %d_%x/ 0x%x/ 0x%x(%d)", + "CoexVer/ FwVer/ PatchVer", \ + glcoex_ver_date_8723b_1ant, glcoex_ver_8723b_1ant, + fw_ver, bt_patch_ver, bt_patch_ver); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + btcoexist->btc_get(btcoexist, BTC_GET_U1_WIFI_DOT11_CHNL, + &wifi_dot11_chnl); + btcoexist->btc_get(btcoexist, BTC_GET_U1_WIFI_HS_CHNL, &wifi_hs_chnl); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d / %d(%d)", + "Dot11 channel / HsChnl(HsMode)", \ + wifi_dot11_chnl, wifi_hs_chnl, bt_hs_on); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x ", + "H2C Wifi inform bt chnl Info", \ + coex_dm->wifi_chnl_info[0], coex_dm->wifi_chnl_info[1], + coex_dm->wifi_chnl_info[2]); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_S4_WIFI_RSSI, &wifi_rssi); + btcoexist->btc_get(btcoexist, BTC_GET_S4_HS_RSSI, &bt_hs_rssi); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", + "Wifi rssi/ HS rssi", wifi_rssi, bt_hs_rssi); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_SCAN, &scan); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_LINK, &link); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_ROAM, &roam); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d ", + "Wifi link/ roam/ scan", link, roam, scan); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist,BTC_GET_BL_WIFI_UNDER_5G, + &wifi_under_5g); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_TRAFFIC_DIRECTION, + &wifi_traffic_dir); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %s/ %s ", + "Wifi status", (wifi_under_5g? "5G":"2.4G"), + ((BTC_WIFI_BW_LEGACY==wifi_bw)? "Legacy": + (((BTC_WIFI_BW_HT40==wifi_bw)? "HT40":"HT20"))), + ((!wifi_busy)? "idle": + ((BTC_WIFI_TRAFFIC_TX==wifi_traffic_dir)? + "uplink":"downlink"))); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = [%s/ %d/ %d] ", + "BT [status/ rssi/ retryCnt]", + ((btcoexist->bt_info.bt_disabled)? ("disabled"): + ((coex_sta->c2h_bt_inquiry_page)?("inquiry/page scan"): + ((BT_8723B_1ANT_BT_STATUS_NON_CONNECTED_IDLE == coex_dm->bt_status)? + "non-connected idle": + ((BT_8723B_1ANT_BT_STATUS_CONNECTED_IDLE == coex_dm->bt_status)? + "connected-idle":"busy")))), + coex_sta->bt_rssi, coex_sta->bt_retry_cnt); + CL_PRINTF(cli_buf); + + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d / %d / %d / %d", + "SCO/HID/PAN/A2DP", bt_link_info->sco_exist, + bt_link_info->hid_exist, bt_link_info->pan_exist, + bt_link_info->a2dp_exist); + CL_PRINTF(cli_buf); + btcoexist->btc_disp_dbg_msg(btcoexist, BTC_DBG_DISP_BT_LINK_INFO); + + bt_info_ext = coex_sta->bt_info_ext; + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s", + "BT Info A2DP rate", + (bt_info_ext & BIT0) ? "Basic rate" : "EDR rate"); + CL_PRINTF(cli_buf); + + for (i = 0; i < BT_INFO_SRC_8723B_1ANT_MAX; i++) { + if (coex_sta->bt_info_c2h_cnt[i]) { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = %02x %02x %02x " + "%02x %02x %02x %02x(%d)", + GLBtInfoSrc8723b1Ant[i], + coex_sta->bt_info_c2h[i][0], + coex_sta->bt_info_c2h[i][1], + coex_sta->bt_info_c2h[i][2], + coex_sta->bt_info_c2h[i][3], + coex_sta->bt_info_c2h[i][4], + coex_sta->bt_info_c2h[i][5], + coex_sta->bt_info_c2h[i][6], + coex_sta->bt_info_c2h_cnt[i]); + CL_PRINTF(cli_buf); + } + } + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = %s/%s, (0x%x/0x%x)", + "PS state, IPS/LPS, (lps/rpwm)", \ + ((coex_sta->under_ips? "IPS ON":"IPS OFF")), + ((coex_sta->under_lps? "LPS ON":"LPS OFF")), + btcoexist->bt_info.lps_1ant, + btcoexist->bt_info.rpwm_1ant); + CL_PRINTF(cli_buf); + btcoexist->btc_disp_dbg_msg(btcoexist, BTC_DBG_DISP_FW_PWR_MODE_CMD); + + if (!btcoexist->manual_control) { + /* Sw mechanism */ + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s", + "============[Sw mechanism]============"); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d ", + "SM1[ShRf/ LpRA/ LimDig]", \ + coex_dm->cur_rf_rx_lpf_shrink, + coex_dm->cur_low_penalty_ra, + btcoexist->bt_info.limited_dig); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = %d/ %d/ %d(0x%x) ", + "SM2[AgcT/ AdcB/ SwDacSwing(lvl)]", \ + coex_dm->cur_agc_table_en, + coex_dm->cur_adc_backoff, + coex_dm->cur_dac_swing_on, + coex_dm->cur_dac_swing_lvl); + CL_PRINTF(cli_buf); + + + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x ", + "Rate Mask", btcoexist->bt_info.ra_mask); + CL_PRINTF(cli_buf); + + /* Fw mechanism */ + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s", + "============[Fw mechanism]============"); + CL_PRINTF(cli_buf); + + psTdmaCase = coex_dm->cur_ps_tdma; + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = %02x %02x %02x %02x %02x " + "case-%d (auto:%d)", + "PS TDMA", coex_dm->ps_tdma_para[0], + coex_dm->ps_tdma_para[1], coex_dm->ps_tdma_para[2], + coex_dm->ps_tdma_para[3], coex_dm->ps_tdma_para[4], + psTdmaCase, coex_dm->auto_tdma_adjust); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x ", + "Latest error condition(should be 0)", \ + coex_dm->error_condition); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d ", + "DecBtPwr/ IgnWlanAct", coex_dm->cur_dec_bt_pwr, + coex_dm->cur_ignore_wlan_act); + CL_PRINTF(cli_buf); + } + + /* Hw setting */ + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s", + "============[Hw setting]============"); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", + "RF-A, 0x1e initVal", coex_dm->bt_rf0x1e_backup); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/0x%x/0x%x/0x%x", + "backup ARFR1/ARFR2/RL/AMaxTime", coex_dm->backup_arfr_cnt1, + coex_dm->backup_arfr_cnt2, coex_dm->backup_retry_limit, + coex_dm->backup_ampdu_max_time); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x430); + u32tmp[1] = btcoexist->btc_read_4byte(btcoexist, 0x434); + u16tmp[0] = btcoexist->btc_read_2byte(btcoexist, 0x42a); + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x456); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/0x%x/0x%x/0x%x", + "0x430/0x434/0x42a/0x456", + u32tmp[0], u32tmp[1], u16tmp[0], u8tmp[0]); + CL_PRINTF(cli_buf); + + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x778); + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x6cc); + u32tmp[1] = btcoexist->btc_read_4byte(btcoexist, 0x880); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", + "0x778/0x6cc/0x880[29:25]", u8tmp[0], u32tmp[0], + (u32tmp[1] & 0x3e000000) >> 25); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x948); + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x67); + u8tmp[1] = btcoexist->btc_read_1byte(btcoexist, 0x765); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", + "0x948/ 0x67[5] / 0x765", + u32tmp[0], ((u8tmp[0] & 0x20)>> 5), u8tmp[1]); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x92c); + u32tmp[1] = btcoexist->btc_read_4byte(btcoexist, 0x930); + u32tmp[2] = btcoexist->btc_read_4byte(btcoexist, 0x944); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", + "0x92c[1:0]/ 0x930[7:0]/0x944[1:0]", + u32tmp[0] & 0x3, u32tmp[1] & 0xff, u32tmp[2] & 0x3); + CL_PRINTF(cli_buf); + + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x39); + u8tmp[1] = btcoexist->btc_read_1byte(btcoexist, 0x40); + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x4c); + u8tmp[2] = btcoexist->btc_read_1byte(btcoexist, 0x64); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = 0x%x/ 0x%x/ 0x%x/ 0x%x", + "0x38[11]/0x40/0x4c[24:23]/0x64[0]", + ((u8tmp[0] & 0x8)>>3), u8tmp[1], + ((u32tmp[0] & 0x01800000) >> 23), u8tmp[2] & 0x1); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x550); + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x522); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", + "0x550(bcn ctrl)/0x522", u32tmp[0], u8tmp[0]); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0xc50); + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x49c); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", + "0xc50(dig)/0x49c(null-drop)", u32tmp[0] & 0xff, u8tmp[0]); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0xda0); + u32tmp[1] = btcoexist->btc_read_4byte(btcoexist, 0xda4); + u32tmp[2] = btcoexist->btc_read_4byte(btcoexist, 0xda8); + u32tmp[3] = btcoexist->btc_read_4byte(btcoexist, 0xcf0); + + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0xa5b); + u8tmp[1] = btcoexist->btc_read_1byte(btcoexist, 0xa5c); + + fa_ofdm = ((u32tmp[0] & 0xffff0000) >> 16) + + ((u32tmp[1] & 0xffff0000) >> 16) + + (u32tmp[1] & 0xffff) + + (u32tmp[2] & 0xffff) + \ + ((u32tmp[3] & 0xffff0000) >> 16) + + (u32tmp[3] & 0xffff) ; + fa_cck = (u8tmp[0] << 8) + u8tmp[1]; + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", + "OFDM-CCA/OFDM-FA/CCK-FA", + u32tmp[0] & 0xffff, fa_ofdm, fa_cck); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x6c0); + u32tmp[1] = btcoexist->btc_read_4byte(btcoexist, 0x6c4); + u32tmp[2] = btcoexist->btc_read_4byte(btcoexist, 0x6c8); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", + "0x6c0/0x6c4/0x6c8(coexTable)", + u32tmp[0], u32tmp[1], u32tmp[2]); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", + "0x770(high-pri rx/tx)", coex_sta->high_priority_rx, + coex_sta->high_priority_tx); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", + "0x774(low-pri rx/tx)", coex_sta->low_priority_rx, + coex_sta->low_priority_tx); + CL_PRINTF(cli_buf); +#if(BT_AUTO_REPORT_ONLY_8723B_1ANT == 1) + halbtc8723b1ant_monitor_bt_ctr(btcoexist); +#endif + btcoexist->btc_disp_dbg_msg(btcoexist, BTC_DBG_DISP_COEX_STATISTICS); +} + + +void ex_halbtc8723b1ant_ips_notify(struct btc_coexist *btcoexist, u8 type) +{ + + if (btcoexist->manual_control || btcoexist->stop_coex_dm) + return; + + if (BTC_IPS_ENTER == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], IPS ENTER notify\n"); + coex_sta->under_ips = true; + + halbtc8723b1ant_SetAntPath(btcoexist, BTC_ANT_PATH_BT, + false, true); + /* set PTA control */ + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 0); + halbtc8723b1ant_coex_table_with_type(btcoexist, + NORMAL_EXEC, 0); + } else if (BTC_IPS_LEAVE == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], IPS LEAVE notify\n"); + coex_sta->under_ips = false; + + halbtc8723b1ant_run_coexist_mechanism(btcoexist); + } +} + +void ex_halbtc8723b1ant_lps_notify(struct btc_coexist *btcoexist, u8 type) +{ + if (btcoexist->manual_control || btcoexist->stop_coex_dm) + return; + + if (BTC_LPS_ENABLE == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], LPS ENABLE notify\n"); + coex_sta->under_lps = true; + } else if (BTC_LPS_DISABLE == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], LPS DISABLE notify\n"); + coex_sta->under_lps = false; + } +} + +void ex_halbtc8723b1ant_scan_notify(struct btc_coexist *btcoexist, u8 type) +{ + bool wifi_connected = false, bt_hs_on = false; + + if (btcoexist->manual_control || btcoexist->stop_coex_dm || + btcoexist->bt_info.bt_disabled) + return; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + + halbtc8723b1ant_query_bt_info(btcoexist); + + if (coex_sta->c2h_bt_inquiry_page) { + halbtc8723b1ant_action_bt_inquiry(btcoexist); + return; + } else if (bt_hs_on) { + halbtc8723b1ant_action_hs(btcoexist); + return; + } + + if (BTC_SCAN_START == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], SCAN START notify\n"); + if (!wifi_connected) /* non-connected scan */ + halbtc8723b1ant_action_wifi_not_connected_asso_auth_scan(btcoexist); + else /* wifi is connected */ + halbtc8723b1ant_ActionWifiConnectedScan(btcoexist); + } else if (BTC_SCAN_FINISH == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], SCAN FINISH notify\n"); + if (!wifi_connected) /* non-connected scan */ + halbtc8723b1ant_action_wifi_not_connected(btcoexist); + else + halbtc8723b1ant_action_wifi_connected(btcoexist); + } +} + +void ex_halbtc8723b1ant_connect_notify(struct btc_coexist *btcoexist, u8 type) +{ + bool wifi_connected = false, bt_hs_on = false; + + if (btcoexist->manual_control || btcoexist->stop_coex_dm || + btcoexist->bt_info.bt_disabled) + return; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + if (coex_sta->c2h_bt_inquiry_page) { + halbtc8723b1ant_action_bt_inquiry(btcoexist); + return; + } else if (bt_hs_on) { + halbtc8723b1ant_action_hs(btcoexist); + return; + } + + if (BTC_ASSOCIATE_START == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], CONNECT START notify\n"); + halbtc8723b1ant_action_wifi_not_connected_asso_auth_scan(btcoexist); + } else if (BTC_ASSOCIATE_FINISH == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], CONNECT FINISH notify\n"); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + if (!wifi_connected) /* non-connected scan */ + halbtc8723b1ant_action_wifi_not_connected(btcoexist); + else + halbtc8723b1ant_action_wifi_connected(btcoexist); + } +} + +void ex_halbtc8723b1ant_media_status_notify(struct btc_coexist *btcoexist, + u8 type) +{ + u8 h2c_parameter[3] ={0}; + u32 wifi_bw; + u8 wifiCentralChnl; + + if (btcoexist->manual_control || btcoexist->stop_coex_dm || + btcoexist->bt_info.bt_disabled ) + return; + + if (BTC_MEDIA_CONNECT == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], MEDIA connect notify\n"); + else + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], MEDIA disconnect notify\n"); + + /* only 2.4G we need to inform bt the chnl mask */ + btcoexist->btc_get(btcoexist, BTC_GET_U1_WIFI_CENTRAL_CHNL, + &wifiCentralChnl); + + if ((BTC_MEDIA_CONNECT == type) && + (wifiCentralChnl <= 14)) { + h2c_parameter[0] = 0x0; + h2c_parameter[1] = wifiCentralChnl; + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) + h2c_parameter[2] = 0x30; + else + h2c_parameter[2] = 0x20; + } + + coex_dm->wifi_chnl_info[0] = h2c_parameter[0]; + coex_dm->wifi_chnl_info[1] = h2c_parameter[1]; + coex_dm->wifi_chnl_info[2] = h2c_parameter[2]; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], FW write 0x66=0x%x\n", + h2c_parameter[0] << 16 | h2c_parameter[1] << 8 | + h2c_parameter[2]); + + btcoexist->btc_fill_h2c(btcoexist, 0x66, 3, h2c_parameter); +} + +void ex_halbtc8723b1ant_special_packet_notify(struct btc_coexist *btcoexist, + u8 type) +{ + bool bt_hs_on = false; + + if (btcoexist->manual_control || btcoexist->stop_coex_dm || + btcoexist->bt_info.bt_disabled) + return; + + coex_sta->special_pkt_period_cnt = 0; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + if (coex_sta->c2h_bt_inquiry_page) { + halbtc8723b1ant_action_bt_inquiry(btcoexist); + return; + } else if (bt_hs_on) { + halbtc8723b1ant_action_hs(btcoexist); + return; + } + + if (BTC_PACKET_DHCP == type || + BTC_PACKET_EAPOL == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], special Packet(%d) notify\n", type); + halbtc8723b1ant_action_wifi_connected_special_packet(btcoexist); + } +} + +void ex_halbtc8723b1ant_bt_info_notify(struct btc_coexist *btcoexist, + u8 *tmp_buf, u8 length) +{ + u8 bt_info = 0; + u8 i, rsp_source = 0; + bool wifi_connected = false; + bool bt_busy = false; + + coex_sta->c2h_bt_info_req_sent = false; + + rsp_source = tmp_buf[0] & 0xf; + if (rsp_source >= BT_INFO_SRC_8723B_1ANT_MAX) + rsp_source = BT_INFO_SRC_8723B_1ANT_WIFI_FW; + coex_sta->bt_info_c2h_cnt[rsp_source]++; + + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], Bt info[%d], length=%d, hex data=[", + rsp_source, length); + for (i=0; ibt_info_c2h[rsp_source][i] = tmp_buf[i]; + if (i == 1) + bt_info = tmp_buf[i]; + if (i == length - 1) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "0x%02x]\n", tmp_buf[i]); + else + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "0x%02x, ", tmp_buf[i]); + } + + if (BT_INFO_SRC_8723B_1ANT_WIFI_FW != rsp_source) { + coex_sta->bt_retry_cnt = /* [3:0] */ + coex_sta->bt_info_c2h[rsp_source][2] & 0xf; + + coex_sta->bt_rssi = + coex_sta->bt_info_c2h[rsp_source][3] * 2 + 10; + + coex_sta->bt_info_ext = + coex_sta->bt_info_c2h[rsp_source][4]; + + /* Here we need to resend some wifi info to BT + * because bt is reset and loss of the info.*/ + if(coex_sta->bt_info_ext & BIT1) + { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT ext info bit1 check, " + "send wifi BW&Chnl to BT!!\n"); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + if(wifi_connected) + ex_halbtc8723b1ant_media_status_notify(btcoexist, + BTC_MEDIA_CONNECT); + else + ex_halbtc8723b1ant_media_status_notify(btcoexist, + BTC_MEDIA_DISCONNECT); + } + + if (coex_sta->bt_info_ext & BIT3) { + if (!btcoexist->manual_control && + !btcoexist->stop_coex_dm) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT ext info bit3 check, " + "set BT NOT ignore Wlan active!!\n"); + halbtc8723b1ant_ignore_wlan_act(btcoexist, + FORCE_EXEC, + false); + } + } else { + /* BT already NOT ignore Wlan active, do nothing here.*/ + } +#if(BT_AUTO_REPORT_ONLY_8723B_1ANT == 0) + if (coex_sta->bt_info_ext & BIT4) { + /* BT auto report already enabled, do nothing */ + } else { + halbtc8723b1ant_bt_auto_report(btcoexist, FORCE_EXEC, + true); + } +#endif + } + + /* check BIT2 first ==> check if bt is under inquiry or page scan */ + if (bt_info & BT_INFO_8723B_1ANT_B_INQ_PAGE) + coex_sta->c2h_bt_inquiry_page = true; + else + coex_sta->c2h_bt_inquiry_page = false; + + /* set link exist status */ + if (!(bt_info & BT_INFO_8723B_1ANT_B_CONNECTION)) { + coex_sta->bt_link_exist = false; + coex_sta->pan_exist = false; + coex_sta->a2dp_exist = false; + coex_sta->hid_exist = false; + coex_sta->sco_exist = false; + } else { /* connection exists */ + coex_sta->bt_link_exist = true; + if (bt_info & BT_INFO_8723B_1ANT_B_FTP) + coex_sta->pan_exist = true; + else + coex_sta->pan_exist = false; + if (bt_info & BT_INFO_8723B_1ANT_B_A2DP) + coex_sta->a2dp_exist = true; + else + coex_sta->a2dp_exist = false; + if (bt_info & BT_INFO_8723B_1ANT_B_HID) + coex_sta->hid_exist = true; + else + coex_sta->hid_exist = false; + if (bt_info & BT_INFO_8723B_1ANT_B_SCO_ESCO) + coex_sta->sco_exist = true; + else + coex_sta->sco_exist = false; + } + + halbtc8723b1ant_update_bt_link_info(btcoexist); + + if (!(bt_info&BT_INFO_8723B_1ANT_B_CONNECTION)) { + coex_dm->bt_status = BT_8723B_1ANT_BT_STATUS_NON_CONNECTED_IDLE; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), " + "BT Non-Connected idle!!!\n"); + /* connection exists but no busy */ + } else if (bt_info == BT_INFO_8723B_1ANT_B_CONNECTION) { + coex_dm->bt_status = BT_8723B_1ANT_BT_STATUS_CONNECTED_IDLE; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), BT Connected-idle!!!\n"); + } else if ((bt_info & BT_INFO_8723B_1ANT_B_SCO_ESCO) || + (bt_info & BT_INFO_8723B_1ANT_B_SCO_BUSY)) { + coex_dm->bt_status = BT_8723B_1ANT_BT_STATUS_SCO_BUSY; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), " + "BT SCO busy!!!\n"); + } else if (bt_info & BT_INFO_8723B_1ANT_B_ACL_BUSY) { + if (BT_8723B_1ANT_BT_STATUS_ACL_BUSY != coex_dm->bt_status) + coex_dm->auto_tdma_adjust = false; + + coex_dm->bt_status = BT_8723B_1ANT_BT_STATUS_ACL_BUSY; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), BT ACL busy!!!\n"); + } else { + coex_dm->bt_status = + BT_8723B_1ANT_BT_STATUS_MAX; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), BT Non-Defined state!!\n"); + } + + if ((BT_8723B_1ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status) || + (BT_8723B_1ANT_BT_STATUS_SCO_BUSY == coex_dm->bt_status) || + (BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY == coex_dm->bt_status)) + bt_busy = true; + else + bt_busy = false; + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_TRAFFIC_BUSY, &bt_busy); + + halbtc8723b1ant_run_coexist_mechanism(btcoexist); +} + +void ex_halbtc8723b1ant_halt_notify(struct btc_coexist *btcoexist) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, "[BTCoex], Halt notify\n"); + + btcoexist->stop_coex_dm = true; + + halbtc8723b1ant_SetAntPath(btcoexist, BTC_ANT_PATH_BT, false, true); + + halbtc8723b1ant_wifi_off_hw_cfg(btcoexist); + halbtc8723b1ant_ignore_wlan_act(btcoexist, FORCE_EXEC, true); + + halbtc8723b1ant_power_save_state(btcoexist, BTC_PS_WIFI_NATIVE, + 0x0, 0x0); + halbtc8723b1ant_ps_tdma(btcoexist, FORCE_EXEC, false, 0); + + ex_halbtc8723b1ant_media_status_notify(btcoexist, BTC_MEDIA_DISCONNECT); +} + +void ex_halbtc8723b1ant_pnp_notify(struct btc_coexist *btcoexist, u8 pnp_state) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, "[BTCoex], Pnp notify\n"); + + if (BTC_WIFI_PNP_SLEEP == pnp_state) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], Pnp notify to SLEEP\n"); + btcoexist->stop_coex_dm = true; + halbtc8723b1ant_ignore_wlan_act(btcoexist, FORCE_EXEC, true); + halbtc8723b1ant_power_save_state(btcoexist, BTC_PS_WIFI_NATIVE, + 0x0, 0x0); + halbtc8723b1ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 9); + } else if (BTC_WIFI_PNP_WAKE_UP == pnp_state) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], Pnp notify to WAKE UP\n"); + btcoexist->stop_coex_dm = false; + halbtc8723b1ant_init_hw_config(btcoexist, false); + halbtc8723b1ant_init_coex_dm(btcoexist); + halbtc8723b1ant_query_bt_info(btcoexist); + } +} + +void ex_halbtc8723b1ant_periodical(struct btc_coexist *btcoexist) +{ + struct btc_board_info *board_info = &btcoexist->board_info; + struct btc_stack_info *stack_info = &btcoexist->stack_info; + static u8 dis_ver_info_cnt = 0; + u32 fw_ver = 0, bt_patch_ver = 0; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], ==========================" + "Periodical===========================\n"); + + if (dis_ver_info_cnt <= 5) { + dis_ver_info_cnt += 1; + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], *************************" + "***************************************\n"); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], Ant PG Num/ Ant Mech/ " + "Ant Pos = %d/ %d/ %d\n", \ + board_info->pg_ant_num, board_info->btdm_ant_num, + board_info->btdm_ant_pos); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], BT stack/ hci ext ver = %s / %d\n", \ + ((stack_info->profile_notified)? "Yes":"No"), + stack_info->hci_version); + btcoexist->btc_get(btcoexist, BTC_GET_U4_BT_PATCH_VER, + &bt_patch_ver); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_FW_VER, &fw_ver); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], CoexVer/ FwVer/ PatchVer " + "= %d_%x/ 0x%x/ 0x%x(%d)\n", \ + glcoex_ver_date_8723b_1ant, + glcoex_ver_8723b_1ant, fw_ver, + bt_patch_ver, bt_patch_ver); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], *****************************" + "***********************************\n"); + } + +#if(BT_AUTO_REPORT_ONLY_8723B_1ANT == 0) + halbtc8723b1ant_query_bt_info(btcoexist); + halbtc8723b1ant_monitor_bt_ctr(btcoexist); + halbtc8723b1ant_monitor_bt_enable_disable(btcoexist); +#else + if (halbtc8723b1ant_is_wifi_status_changed(btcoexist) || + coex_dm->auto_tdma_adjust) { + if (coex_sta->special_pkt_period_cnt > 2) + halbtc8723b1ant_run_coexist_mechanism(btcoexist); + } + + coex_sta->special_pkt_period_cnt++; +#endif +} + + +#endif + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/halbtc8723b1ant.h +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/halbtc8723b1ant.h @@ -0,0 +1,175 @@ +/********************************************************************** + * The following is for 8723B 1ANT BT Co-exist definition + **********************************************************************/ +#define BT_AUTO_REPORT_ONLY_8723B_1ANT 1 + +#define BT_INFO_8723B_1ANT_B_FTP BIT7 +#define BT_INFO_8723B_1ANT_B_A2DP BIT6 +#define BT_INFO_8723B_1ANT_B_HID BIT5 +#define BT_INFO_8723B_1ANT_B_SCO_BUSY BIT4 +#define BT_INFO_8723B_1ANT_B_ACL_BUSY BIT3 +#define BT_INFO_8723B_1ANT_B_INQ_PAGE BIT2 +#define BT_INFO_8723B_1ANT_B_SCO_ESCO BIT1 +#define BT_INFO_8723B_1ANT_B_CONNECTION BIT0 + +#define BT_INFO_8723B_1ANT_A2DP_BASIC_RATE(_BT_INFO_EXT_) \ + (((_BT_INFO_EXT_&BIT0))? true:false) + +#define BTC_RSSI_COEX_THRESH_TOL_8723B_1ANT 2 + +typedef enum _BT_INFO_SRC_8723B_1ANT{ + BT_INFO_SRC_8723B_1ANT_WIFI_FW = 0x0, + BT_INFO_SRC_8723B_1ANT_BT_RSP = 0x1, + BT_INFO_SRC_8723B_1ANT_BT_ACTIVE_SEND = 0x2, + BT_INFO_SRC_8723B_1ANT_MAX +}BT_INFO_SRC_8723B_1ANT,*PBT_INFO_SRC_8723B_1ANT; + +typedef enum _BT_8723B_1ANT_BT_STATUS{ + BT_8723B_1ANT_BT_STATUS_NON_CONNECTED_IDLE = 0x0, + BT_8723B_1ANT_BT_STATUS_CONNECTED_IDLE = 0x1, + BT_8723B_1ANT_BT_STATUS_INQ_PAGE = 0x2, + BT_8723B_1ANT_BT_STATUS_ACL_BUSY = 0x3, + BT_8723B_1ANT_BT_STATUS_SCO_BUSY = 0x4, + BT_8723B_1ANT_BT_STATUS_ACL_SCO_BUSY = 0x5, + BT_8723B_1ANT_BT_STATUS_MAX +}BT_8723B_1ANT_BT_STATUS,*PBT_8723B_1ANT_BT_STATUS; + +typedef enum _BT_8723B_1ANT_WIFI_STATUS{ + BT_8723B_1ANT_WIFI_STATUS_NON_CONNECTED_IDLE = 0x0, + BT_8723B_1ANT_WIFI_STATUS_NON_CONNECTED_ASSO_AUTH_SCAN = 0x1, + BT_8723B_1ANT_WIFI_STATUS_CONNECTED_SCAN = 0x2, + BT_8723B_1ANT_WIFI_STATUS_CONNECTED_SPECIAL_PKT = 0x3, + BT_8723B_1ANT_WIFI_STATUS_CONNECTED_IDLE = 0x4, + BT_8723B_1ANT_WIFI_STATUS_CONNECTED_BUSY = 0x5, + BT_8723B_1ANT_WIFI_STATUS_MAX +}BT_8723B_1ANT_WIFI_STATUS,*PBT_8723B_1ANT_WIFI_STATUS; + +typedef enum _BT_8723B_1ANT_COEX_ALGO{ + BT_8723B_1ANT_COEX_ALGO_UNDEFINED = 0x0, + BT_8723B_1ANT_COEX_ALGO_SCO = 0x1, + BT_8723B_1ANT_COEX_ALGO_HID = 0x2, + BT_8723B_1ANT_COEX_ALGO_A2DP = 0x3, + BT_8723B_1ANT_COEX_ALGO_A2DP_PANHS = 0x4, + BT_8723B_1ANT_COEX_ALGO_PANEDR = 0x5, + BT_8723B_1ANT_COEX_ALGO_PANHS = 0x6, + BT_8723B_1ANT_COEX_ALGO_PANEDR_A2DP = 0x7, + BT_8723B_1ANT_COEX_ALGO_PANEDR_HID = 0x8, + BT_8723B_1ANT_COEX_ALGO_HID_A2DP_PANEDR = 0x9, + BT_8723B_1ANT_COEX_ALGO_HID_A2DP = 0xa, + BT_8723B_1ANT_COEX_ALGO_MAX = 0xb, +}BT_8723B_1ANT_COEX_ALGO,*PBT_8723B_1ANT_COEX_ALGO; + +struct coex_dm_8723b_1ant{ + /* fw mechanism */ + bool pre_dec_bt_pwr; + bool cur_dec_bt_pwr; + u8 pre_fw_dac_swing_lvl; + u8 cur_fw_dac_swing_lvl; + bool cur_ignore_wlan_act; + bool pre_ignore_wlan_act; + u8 pre_ps_tdma; + u8 cur_ps_tdma; + u8 ps_tdma_para[5]; + u8 ps_tdma_du_adj_type; + bool auto_tdma_adjust; + bool pre_ps_tdma_on; + bool cur_ps_tdma_on; + bool pre_bt_auto_report; + bool cur_bt_auto_report; + u8 pre_lps; + u8 cur_lps; + u8 pre_rpwm; + u8 cur_rpwm; + + /* sw mechanism */ + bool pre_rf_rx_lpf_shrink; + bool cur_rf_rx_lpf_shrink; + u32 bt_rf0x1e_backup; + bool pre_low_penalty_ra; + bool cur_low_penalty_ra; + bool pre_dac_swing_on; + u32 pre_dac_swing_lvl; + bool cur_dac_swing_on; + u32 cur_dac_swing_lvl; + bool pre_adc_backoff; + bool cur_adc_backoff; + bool pre_agc_table_en; + bool cur_agc_table_en; + u32 pre_val0x6c0; + u32 cur_val0x6c0; + u32 pre_val0x6c4; + u32 cur_val0x6c4; + u32 pre_val0x6c8; + u32 cur_val0x6c8; + u8 pre_val0x6cc; + u8 cur_val0x6cc; + bool limited_dig; + + u32 backup_arfr_cnt1; /* Auto Rate Fallback Retry cnt */ + u32 backup_arfr_cnt2; /* Auto Rate Fallback Retry cnt */ + u16 backup_retry_limit; + u8 backup_ampdu_max_time; + + /* algorithm related */ + u8 pre_algorithm; + u8 cur_algorithm; + u8 bt_status; + u8 wifi_chnl_info[3]; + + u32 prera_mask; + u32 curra_mask; + u8 pre_arfr_type; + u8 cur_arfr_type; + u8 pre_retry_limit_type; + u8 cur_retry_limit_type; + u8 pre_ampdu_time_type; + u8 cur_ampdu_time_type; + + u8 error_condition; +}; + +struct coex_sta_8723b_1ant{ + bool bt_link_exist; + bool sco_exist; + bool a2dp_exist; + bool hid_exist; + bool pan_exist; + + bool under_lps; + bool under_ips; + u32 special_pkt_period_cnt; + u32 high_priority_tx; + u32 high_priority_rx; + u32 low_priority_tx; + u32 low_priority_rx; + u8 bt_rssi; + u8 pre_bt_rssi_state; + u8 pre_wifi_rssi_state[4]; + bool c2h_bt_info_req_sent; + u8 bt_info_c2h[BT_INFO_SRC_8723B_1ANT_MAX][10]; + u32 bt_info_c2h_cnt[BT_INFO_SRC_8723B_1ANT_MAX]; + bool c2h_bt_inquiry_page; + u8 bt_retry_cnt; + u8 bt_info_ext; +}; + +/************************************************************************* + * The following is interface which will notify coex module. + *************************************************************************/ +void ex_halbtc8723b1ant_init_hwconfig(struct btc_coexist *btcoexist); +void ex_halbtc8723b1ant_init_coex_dm(struct btc_coexist *btcoexist); +void ex_halbtc8723b1ant_ips_notify(struct btc_coexist *btcoexist, u8 type); +void ex_halbtc8723b1ant_lps_notify(struct btc_coexist *btcoexist, u8 type); +void ex_halbtc8723b1ant_scan_notify(struct btc_coexist *btcoexist, u8 type); +void ex_halbtc8723b1ant_connect_notify(struct btc_coexist *btcoexist, u8 type); +void ex_halbtc8723b1ant_media_status_notify(struct btc_coexist *btcoexist, + u8 type); +void ex_halbtc8723b1ant_special_packet_notify(struct btc_coexist *btcoexist, + u8 type); +void ex_halbtc8723b1ant_bt_info_notify(struct btc_coexist *btcoexist, + u8 *tmpbuf, u8 length); +void ex_halbtc8723b1ant_halt_notify(struct btc_coexist *btcoexist); +void ex_halbtc8723b1ant_pnp_notify(struct btc_coexist *btcoexist, u8 pnpState); +void ex_halbtc8723b1ant_periodical(struct btc_coexist *btcoexist); +void ex_halbtc8723b1ant_display_coex_info(struct btc_coexist *btcoexist); + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/halbtc8723b2ant.c +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/halbtc8723b2ant.c @@ -0,0 +1,4185 @@ +/*************************************************************** + * Description: + * + * This file is for RTL8723B Co-exist mechanism + * + * History + * 2012/11/15 Cosa first check in. + * + **************************************************************/ +/************************************************************** + * include files + **************************************************************/ +#include "halbt_precomp.h" +#if 1 +/************************************************************** + * Global variables, these are static variables + **************************************************************/ +static struct coex_dm_8723b_2ant glcoex_dm_8723b_2ant; +static struct coex_dm_8723b_2ant *coex_dm = &glcoex_dm_8723b_2ant; +static struct coex_sta_8723b_2ant glcoex_sta_8723b_2ant; +static struct coex_sta_8723b_2ant *coex_sta = &glcoex_sta_8723b_2ant; + +const char *const glbt_info_src_8723b_2ant[] = { + "BT Info[wifi fw]", + "BT Info[bt rsp]", + "BT Info[bt auto report]", +}; + +u32 glcoex_ver_date_8723b_2ant = 20131113; +u32 glcoex_ver_8723b_2ant = 0x3f; + +/************************************************************** + * local function proto type if needed + **************************************************************/ +/************************************************************** + * local function start with halbtc8723b2ant_ + **************************************************************/ +u8 halbtc8723b2ant_bt_rssi_state(u8 level_num, u8 rssi_thresh, u8 rssi_thresh1) +{ + s32 bt_rssi = 0; + u8 bt_rssi_state = coex_sta->pre_bt_rssi_state; + + bt_rssi = coex_sta->bt_rssi; + + if (level_num == 2) { + if ((coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_LOW) || + (coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_STAY_LOW)) { + if (bt_rssi >= rssi_thresh + + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT) { + bt_rssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to High\n"); + } else { + bt_rssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "stay at Low\n"); + } + } else { + if (bt_rssi < rssi_thresh) { + bt_rssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to Low\n"); + } else { + bt_rssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "stay at High\n"); + } + } + } else if (level_num == 3) { + if (rssi_thresh > rssi_thresh1) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi thresh error!!\n"); + return coex_sta->pre_bt_rssi_state; + } + + if ((coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_LOW) || + (coex_sta->pre_bt_rssi_state == BTC_RSSI_STATE_STAY_LOW)) { + if (bt_rssi >= rssi_thresh + + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT) { + bt_rssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to Medium\n"); + } else { + bt_rssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "stay at Low\n"); + } + } else if ((coex_sta->pre_bt_rssi_state == + BTC_RSSI_STATE_MEDIUM) || + (coex_sta->pre_bt_rssi_state == + BTC_RSSI_STATE_STAY_MEDIUM)) { + if (bt_rssi >= rssi_thresh1 + + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT) { + bt_rssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to High\n"); + } else if (bt_rssi < rssi_thresh) { + bt_rssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to Low\n"); + } else { + bt_rssi_state = BTC_RSSI_STATE_STAY_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "stay at Medium\n"); + } + } else { + if (bt_rssi < rssi_thresh1) { + bt_rssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "switch to Medium\n"); + } else { + bt_rssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_RSSI_STATE, + "[BTCoex], BT Rssi state " + "stay at High\n"); + } + } + } + + coex_sta->pre_bt_rssi_state = bt_rssi_state; + + return bt_rssi_state; +} + +u8 halbtc8723b2ant_wifi_rssi_state(struct btc_coexist *btcoexist, + u8 index, u8 level_num, + u8 rssi_thresh, u8 rssi_thresh1) +{ + s32 wifi_rssi=0; + u8 wifi_rssi_state = coex_sta->pre_wifi_rssi_state[index]; + + btcoexist->btc_get(btcoexist, BTC_GET_S4_WIFI_RSSI, &wifi_rssi); + + if (level_num == 2) { + if ((coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_LOW) || + (coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_STAY_LOW)) { + if (wifi_rssi >= rssi_thresh + + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT) { + wifi_rssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to High\n"); + } else { + wifi_rssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "stay at Low\n"); + } + } else { + if (wifi_rssi < rssi_thresh) { + wifi_rssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to Low\n"); + } else { + wifi_rssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "stay at High\n"); + } + } + } else if (level_num == 3) { + if (rssi_thresh > rssi_thresh1) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI thresh error!!\n"); + return coex_sta->pre_wifi_rssi_state[index]; + } + + if ((coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_LOW) || + (coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_STAY_LOW)) { + if(wifi_rssi >= rssi_thresh + + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT) { + wifi_rssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to Medium\n"); + } else { + wifi_rssi_state = BTC_RSSI_STATE_STAY_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "stay at Low\n"); + } + } else if ((coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_MEDIUM) || + (coex_sta->pre_wifi_rssi_state[index] == + BTC_RSSI_STATE_STAY_MEDIUM)) { + if (wifi_rssi >= rssi_thresh1 + + BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT) { + wifi_rssi_state = BTC_RSSI_STATE_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to High\n"); + } else if (wifi_rssi < rssi_thresh) { + wifi_rssi_state = BTC_RSSI_STATE_LOW; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to Low\n"); + } else { + wifi_rssi_state = BTC_RSSI_STATE_STAY_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "stay at Medium\n"); + } + } else { + if (wifi_rssi < rssi_thresh1) { + wifi_rssi_state = BTC_RSSI_STATE_MEDIUM; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "switch to Medium\n"); + } else { + wifi_rssi_state = BTC_RSSI_STATE_STAY_HIGH; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_WIFI_RSSI_STATE, + "[BTCoex], wifi RSSI state " + "stay at High\n"); + } + } + } + + coex_sta->pre_wifi_rssi_state[index] = wifi_rssi_state; + + return wifi_rssi_state; +} + +void halbtc8723b2ant_monitor_bt_enable_disable(struct btc_coexist *btcoexist) +{ + static bool pre_bt_disabled = false; + static u32 bt_disable_cnt = 0; + bool bt_active = true, bt_disabled = false; + + /* This function check if bt is disabled */ + if (coex_sta->high_priority_tx == 0 && + coex_sta->high_priority_rx == 0 && + coex_sta->low_priority_tx == 0 && + coex_sta->low_priority_rx == 0) + bt_active = false; + + if (coex_sta->high_priority_tx == 0xffff && + coex_sta->high_priority_rx == 0xffff && + coex_sta->low_priority_tx == 0xffff && + coex_sta->low_priority_rx == 0xffff) + bt_active = true; + + if (bt_active) { + bt_disable_cnt = 0; + bt_disabled = false; + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_DISABLE, + &bt_disabled); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], BT is enabled !!\n"); + } else { + bt_disable_cnt++; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], bt all counters=0, %d times!!\n", + bt_disable_cnt); + if (bt_disable_cnt >= 2) { + bt_disabled = true; + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_DISABLE, + &bt_disabled); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], BT is disabled !!\n"); + } + } + + if (pre_bt_disabled != bt_disabled) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], BT is from %s to %s!!\n", + (pre_bt_disabled ? "disabled":"enabled"), + (bt_disabled ? "disabled":"enabled")); + + pre_bt_disabled = bt_disabled; + if (!bt_disabled) { + } else { + } + } +} + +void halbtc8723b2ant_monitor_bt_ctr(struct btc_coexist *btcoexist) +{ + u32 reg_hp_txrx, reg_lp_txrx, u32tmp; + u32 reg_hp_tx = 0, reg_hp_rx = 0; + u32 reg_lp_tx = 0, reg_lp_rx = 0; + + reg_hp_txrx = 0x770; + reg_lp_txrx = 0x774; + + u32tmp = btcoexist->btc_read_4byte(btcoexist, reg_hp_txrx); + reg_hp_tx = u32tmp & MASKLWORD; + reg_hp_rx = (u32tmp & MASKHWORD) >> 16; + + u32tmp = btcoexist->btc_read_4byte(btcoexist, reg_lp_txrx); + reg_lp_tx = u32tmp & MASKLWORD; + reg_lp_rx = (u32tmp & MASKHWORD) >> 16; + + coex_sta->high_priority_tx = reg_hp_tx; + coex_sta->high_priority_rx = reg_hp_rx; + coex_sta->low_priority_tx = reg_lp_tx; + coex_sta->low_priority_rx = reg_lp_rx; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], High Priority Tx/Rx(reg 0x%x)=0x%x(%d)/0x%x(%d)\n", + reg_hp_txrx, reg_hp_tx, reg_hp_tx, reg_hp_rx, reg_hp_rx); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_BT_MONITOR, + "[BTCoex], Low Priority Tx/Rx(reg 0x%x)=0x%x(%d)/0x%x(%d)\n", + reg_lp_txrx, reg_lp_tx, reg_lp_tx, reg_lp_rx, reg_lp_rx); + + /* reset counter */ + btcoexist->btc_write_1byte(btcoexist, 0x76e, 0xc); +} + +void halbtc8723b2ant_query_bt_info(struct btc_coexist *btcoexist) +{ + u8 h2c_parameter[1] ={0}; + + coex_sta->c2h_bt_info_req_sent = true; + + h2c_parameter[0] |= BIT0; /* trigger */ + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], Query Bt Info, FW write 0x61=0x%x\n", + h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x61, 1, h2c_parameter); +} + +bool halbtc8723b2ant_is_wifi_status_changed(struct btc_coexist *btcoexist) +{ + static bool pre_wifi_busy = false; + static bool pre_under_4way = false; + static bool pre_bt_hs_on = false; + bool wifi_busy = false, under_4way = false, bt_hs_on = false; + bool wifi_connected = false; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_4_WAY_PROGRESS, + &under_4way); + + if (wifi_connected) { + if (wifi_busy != pre_wifi_busy) { + pre_wifi_busy = wifi_busy; + return true; + } + + if (under_4way != pre_under_4way) { + pre_under_4way = under_4way; + return true; + } + + if (bt_hs_on != pre_bt_hs_on) { + pre_bt_hs_on = bt_hs_on; + return true; + } + } + + return false; +} + +void halbtc8723b2ant_update_bt_link_info(struct btc_coexist *btcoexist) +{ + /*struct btc_stack_info *stack_info = &btcoexist->stack_info;*/ + struct btc_bt_link_info *bt_link_info = &btcoexist->bt_link_info; + bool bt_hs_on = false; + +#if(BT_AUTO_REPORT_ONLY_8723B_2ANT == 1) /* profile from bt patch */ + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + + bt_link_info->bt_link_exist = coex_sta->bt_link_exist; + bt_link_info->sco_exist = coex_sta->sco_exist; + bt_link_info->a2dp_exist = coex_sta->a2dp_exist; + bt_link_info->pan_exist = coex_sta->pan_exist; + bt_link_info->hid_exist = coex_sta->hid_exist; + + /* work around for HS mode. */ + if (bt_hs_on) { + bt_link_info->pan_exist = true; + bt_link_info->bt_link_exist = true; + } +#else /* profile from bt stack */ + bt_link_info->bt_link_exist = stack_info->bt_link_exist; + bt_link_info->sco_exist = stack_info->sco_exist; + bt_link_info->a2dp_exist = stack_info->a2dp_exist; + bt_link_info->pan_exist = stack_info->pan_exist; + bt_link_info->hid_exist = stack_info->hid_exist; + + /*for win-8 stack HID report error*/ + if (!stack_info->hid_exist) + stack_info->hid_exist = coex_sta->hid_exist; + /*sync BTInfo with BT firmware and stack*/ + /* when stack HID report error, here we use the info from bt fw.*/ + if (!stack_info->bt_link_exist) + stack_info->bt_link_exist = coex_sta->bt_link_exist; +#endif + /* check if Sco only */ + if (bt_link_info->sco_exist && !bt_link_info->a2dp_exist && + !bt_link_info->pan_exist && !bt_link_info->hid_exist) + bt_link_info->sco_only = true; + else + bt_link_info->sco_only = false; + + /* check if A2dp only */ + if (!bt_link_info->sco_exist && bt_link_info->a2dp_exist && + !bt_link_info->pan_exist && !bt_link_info->hid_exist) + bt_link_info->a2dp_only = true; + else + bt_link_info->a2dp_only = false; + + /* check if Pan only */ + if (!bt_link_info->sco_exist && !bt_link_info->a2dp_exist && + bt_link_info->pan_exist && !bt_link_info->hid_exist) + bt_link_info->pan_only = true; + else + bt_link_info->pan_only = false; + + /* check if Hid only */ + if (!bt_link_info->sco_exist && !bt_link_info->a2dp_exist && + !bt_link_info->pan_exist && bt_link_info->hid_exist) + bt_link_info->hid_only = true; + else + bt_link_info->hid_only = false; +} + +u8 halbtc8723b2ant_action_algorithm(struct btc_coexist *btcoexist) +{ + struct btc_bt_link_info *bt_link_info=&btcoexist->bt_link_info; + bool bt_hs_on = false; + u8 algorithm = BT_8723B_2ANT_COEX_ALGO_UNDEFINED; + u8 num_of_diff_profile = 0; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + + if (!bt_link_info->bt_link_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], No BT link exists!!!\n"); + return algorithm; + } + + if (bt_link_info->sco_exist) + num_of_diff_profile++; + if (bt_link_info->hid_exist) + num_of_diff_profile++; + if (bt_link_info->pan_exist) + num_of_diff_profile++; + if (bt_link_info->a2dp_exist) + num_of_diff_profile++; + + if (num_of_diff_profile == 1) { + if (bt_link_info->sco_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO only\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_SCO; + } else { + if (bt_link_info->hid_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], HID only\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_HID; + } else if (bt_link_info->a2dp_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], A2DP only\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_A2DP; + } else if (bt_link_info->pan_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], PAN(HS) only\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANHS; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], PAN(EDR) only\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR; + } + } + } + } else if (num_of_diff_profile == 2) { + if (bt_link_info->sco_exist) { + if (bt_link_info->hid_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + HID\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } else if (bt_link_info->a2dp_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + A2DP ==> SCO\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } else if (bt_link_info->pan_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + PAN(HS)\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_SCO; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + PAN(EDR)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } + } + } else { + if (bt_link_info->hid_exist && + bt_link_info->a2dp_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], HID + A2DP\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_HID_A2DP; + } else if (bt_link_info->hid_exist && + bt_link_info->pan_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], HID + PAN(HS)\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_HID; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], HID + PAN(EDR)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } + } else if (bt_link_info->pan_exist && + bt_link_info->a2dp_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], A2DP + PAN(HS)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_A2DP_PANHS; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex],A2DP + PAN(EDR)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR_A2DP; + } + } + } + } else if (num_of_diff_profile == 3) { + if (bt_link_info->sco_exist) { + if (bt_link_info->hid_exist && + bt_link_info->a2dp_exist) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + HID + A2DP" + " ==> HID\n"); + algorithm = BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } else if (bt_link_info->hid_exist && + bt_link_info->pan_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + HID + " + "PAN(HS)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + HID + " + "PAN(EDR)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } + } else if (bt_link_info->pan_exist && + bt_link_info->a2dp_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + A2DP + " + "PAN(HS)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + A2DP + " + "PAN(EDR) ==> HID\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } + } + } else { + if (bt_link_info->hid_exist && + bt_link_info->pan_exist && + bt_link_info->a2dp_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], HID + A2DP + " + "PAN(HS)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_HID_A2DP; + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], HID + A2DP + " + "PAN(EDR)\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_HID_A2DP_PANEDR; + } + } + } + } else if (num_of_diff_profile >= 3) { + if (bt_link_info->sco_exist) { + if (bt_link_info->hid_exist && + bt_link_info->pan_exist && + bt_link_info->a2dp_exist) { + if (bt_hs_on) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Error!!! SCO + HID" + " + A2DP + PAN(HS)\n"); + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], SCO + HID + A2DP +" + " PAN(EDR)==>PAN(EDR)+HID\n"); + algorithm = + BT_8723B_2ANT_COEX_ALGO_PANEDR_HID; + } + } + } + } + + return algorithm; +} + +bool halbtc8723b2ant_need_to_dec_bt_pwr(struct btc_coexist *btcoexist) +{ + bool bRet = false; + bool bt_hs_on = false, wifi_connected = false; + s32 bt_hs_rssi=0; + u8 bt_rssi_state; + + if (!btcoexist->btc_get(btcoexist, + BTC_GET_BL_HS_OPERATION, &bt_hs_on)) + return false; + if (!btcoexist->btc_get(btcoexist, + BTC_GET_BL_WIFI_CONNECTED, &wifi_connected)) + return false; + if (!btcoexist->btc_get(btcoexist, + BTC_GET_S4_HS_RSSI, &bt_hs_rssi)) + return false; + + bt_rssi_state = halbtc8723b2ant_bt_rssi_state(2, 29, 0); + + if (wifi_connected) { + if (bt_hs_on) { + if (bt_hs_rssi > 37) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], Need to decrease bt " + "power for HS mode!!\n"); + bRet = true; + } + } else { + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], Need to decrease bt " + "power for Wifi is connected!!\n"); + bRet = true; + } + } + } + + return bRet; +} + +void halbtc8723b2ant_set_fw_dac_swing_level(struct btc_coexist *btcoexist, + u8 dac_swing_lvl) +{ + u8 h2c_parameter[1] ={0}; + + /* There are several type of dacswing + * 0x18/ 0x10/ 0xc/ 0x8/ 0x4/ 0x6 */ + h2c_parameter[0] = dac_swing_lvl; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], Set Dac Swing Level=0x%x\n", dac_swing_lvl); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], FW write 0x64=0x%x\n", h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x64, 1, h2c_parameter); +} + +void halbtc8723b2ant_set_fw_dec_bt_pwr(struct btc_coexist *btcoexist, + bool dec_bt_pwr) +{ + u8 h2c_parameter[1] = {0}; + + h2c_parameter[0] = 0; + + if (dec_bt_pwr) + h2c_parameter[0] |= BIT1; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], decrease Bt Power : %s, FW write 0x62=0x%x\n", + (dec_bt_pwr? "Yes!!":"No!!"), h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x62, 1, h2c_parameter); +} + +void halbtc8723b2ant_dec_bt_pwr(struct btc_coexist *btcoexist, + bool force_exec, bool dec_bt_pwr) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s Dec BT power = %s\n", + (force_exec? "force to":""), (dec_bt_pwr? "ON":"OFF")); + coex_dm->cur_dec_bt_pwr = dec_bt_pwr; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], bPreDecBtPwr=%d, bCurDecBtPwr=%d\n", + coex_dm->pre_dec_bt_pwr, coex_dm->cur_dec_bt_pwr); + + if (coex_dm->pre_dec_bt_pwr == coex_dm->cur_dec_bt_pwr) + return; + } + halbtc8723b2ant_set_fw_dec_bt_pwr(btcoexist, coex_dm->cur_dec_bt_pwr); + + coex_dm->pre_dec_bt_pwr = coex_dm->cur_dec_bt_pwr; +} + +void halbtc8723b2ant_set_bt_auto_report(struct btc_coexist *btcoexist, + bool enable_auto_report) +{ + u8 h2c_parameter[1] = {0}; + h2c_parameter[0] = 0; + + if (enable_auto_report) + h2c_parameter[0] |= BIT0; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], BT FW auto report : %s, FW write 0x68=0x%x\n", + (enable_auto_report? "Enabled!!":"Disabled!!"), + h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x68, 1, h2c_parameter); +} + +void halbtc8723b2ant_bt_auto_report(struct btc_coexist *btcoexist, + bool force_exec, bool enable_auto_report) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s BT Auto report = %s\n", + (force_exec? "force to":""), + ((enable_auto_report)? "Enabled":"Disabled")); + coex_dm->cur_bt_auto_report = enable_auto_report; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], bPreBtAutoReport=%d, " + "bCurBtAutoReport=%d\n", + coex_dm->pre_bt_auto_report, + coex_dm->cur_bt_auto_report); + + if (coex_dm->pre_bt_auto_report == coex_dm->cur_bt_auto_report) + return; + } + halbtc8723b2ant_set_bt_auto_report(btcoexist, + coex_dm->cur_bt_auto_report); + + coex_dm->pre_bt_auto_report = coex_dm->cur_bt_auto_report; +} + +void halbtc8723b2ant_fw_dac_swing_lvl(struct btc_coexist *btcoexist, + bool force_exec, u8 fw_dac_swing_lvl) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s set FW Dac Swing level = %d\n", + (force_exec? "force to":""), fw_dac_swing_lvl); + coex_dm->cur_fw_dac_swing_lvl = fw_dac_swing_lvl; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], preFwDacSwingLvl=%d, " + "curFwDacSwingLvl=%d\n", + coex_dm->pre_fw_dac_swing_lvl, + coex_dm->cur_fw_dac_swing_lvl); + + if(coex_dm->pre_fw_dac_swing_lvl == + coex_dm->cur_fw_dac_swing_lvl) + return; + } + + halbtc8723b2ant_set_fw_dac_swing_level(btcoexist, + coex_dm->cur_fw_dac_swing_lvl); + coex_dm->pre_fw_dac_swing_lvl = coex_dm->cur_fw_dac_swing_lvl; +} + +void halbtc8723b2ant_set_sw_rf_rx_lpf_corner(struct btc_coexist *btcoexist, + bool rx_rf_shrink_on) +{ + if (rx_rf_shrink_on) { + /* Shrink RF Rx LPF corner */ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Shrink RF Rx LPF corner!!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1e, + 0xfffff, 0xffffc); + } else { + /* Resume RF Rx LPF corner */ + /* After initialized, we can use coex_dm->btRf0x1eBackup */ + if (btcoexist->initilized) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Resume RF Rx LPF corner!!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1e, + 0xfffff, + coex_dm->bt_rf0x1e_backup); + } + } +} + +void halbtc8723b2ant_rf_shrink(struct btc_coexist *btcoexist, + bool force_exec, bool rx_rf_shrink_on) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s turn Rx RF Shrink = %s\n", + (force_exec? "force to":""), (rx_rf_shrink_on? "ON":"OFF")); + coex_dm->cur_rf_rx_lpf_shrink = rx_rf_shrink_on; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], bPreRfRxLpfShrink=%d, " + "bCurRfRxLpfShrink=%d\n", + coex_dm->pre_rf_rx_lpf_shrink, + coex_dm->cur_rf_rx_lpf_shrink); + + if (coex_dm->pre_rf_rx_lpf_shrink == + coex_dm->cur_rf_rx_lpf_shrink) + return; + } + halbtc8723b2ant_set_sw_rf_rx_lpf_corner(btcoexist, + coex_dm->cur_rf_rx_lpf_shrink); + + coex_dm->pre_rf_rx_lpf_shrink = coex_dm->cur_rf_rx_lpf_shrink; +} + +void halbtc8723b2ant_set_sw_penalty_txrate_adaptive( + struct btc_coexist *btcoexist, + bool low_penalty_ra) +{ + u8 h2c_parameter[6] ={0}; + + h2c_parameter[0] = 0x6; /* opCode, 0x6= Retry_Penalty*/ + + if (low_penalty_ra) { + h2c_parameter[1] |= BIT0; + /*normal rate except MCS7/6/5, OFDM54/48/36*/ + h2c_parameter[2] = 0x00; + h2c_parameter[3] = 0xf7; /*MCS7 or OFDM54*/ + h2c_parameter[4] = 0xf8; /*MCS6 or OFDM48*/ + h2c_parameter[5] = 0xf9; /*MCS5 or OFDM36*/ + } + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], set WiFi Low-Penalty Retry: %s", + (low_penalty_ra? "ON!!":"OFF!!")); + + btcoexist->btc_fill_h2c(btcoexist, 0x69, 6, h2c_parameter); +} + +void halbtc8723b2ant_low_penalty_ra(struct btc_coexist *btcoexist, + bool force_exec, bool low_penalty_ra) +{ + /*return; */ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s turn LowPenaltyRA = %s\n", + (force_exec? "force to":""), (low_penalty_ra? "ON":"OFF")); + coex_dm->cur_low_penalty_ra = low_penalty_ra; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], bPreLowPenaltyRa=%d, " + "bCurLowPenaltyRa=%d\n", + coex_dm->pre_low_penalty_ra, + coex_dm->cur_low_penalty_ra); + + if (coex_dm->pre_low_penalty_ra == coex_dm->cur_low_penalty_ra) + return; + } + halbtc8723b2ant_set_sw_penalty_txrate_adaptive(btcoexist, + coex_dm->cur_low_penalty_ra); + + coex_dm->pre_low_penalty_ra = coex_dm->cur_low_penalty_ra; +} + +void halbtc8723b2ant_set_dac_swing_reg(struct btc_coexist * btcoexist, + u32 level) +{ + u8 val = (u8) level; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Write SwDacSwing = 0x%x\n", level); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x883, 0x3e, val); +} + +void halbtc8723b2ant_set_sw_fulltime_dac_swing(struct btc_coexist *btcoexist, + bool sw_dac_swing_on, + u32 sw_dac_swing_lvl) +{ + if(sw_dac_swing_on) + halbtc8723b2ant_set_dac_swing_reg(btcoexist, sw_dac_swing_lvl); + else + halbtc8723b2ant_set_dac_swing_reg(btcoexist, 0x18); +} + + +void halbtc8723b2ant_dac_swing(struct btc_coexist *btcoexist, + bool force_exec, bool dac_swing_on, + u32 dac_swing_lvl) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s turn DacSwing=%s, dac_swing_lvl=0x%x\n", + (force_exec? "force to":""), + (dac_swing_on? "ON":"OFF"), dac_swing_lvl); + coex_dm->cur_dac_swing_on = dac_swing_on; + coex_dm->cur_dac_swing_lvl = dac_swing_lvl; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], bPreDacSwingOn=%d, preDacSwingLvl=0x%x," + " bCurDacSwingOn=%d, curDacSwingLvl=0x%x\n", + coex_dm->pre_dac_swing_on, coex_dm->pre_dac_swing_lvl, + coex_dm->cur_dac_swing_on, + coex_dm->cur_dac_swing_lvl); + + if ((coex_dm->pre_dac_swing_on == coex_dm->cur_dac_swing_on) && + (coex_dm->pre_dac_swing_lvl == coex_dm->cur_dac_swing_lvl)) + return; + } + mdelay(30); + halbtc8723b2ant_set_sw_fulltime_dac_swing(btcoexist, dac_swing_on, + dac_swing_lvl); + + coex_dm->pre_dac_swing_on = coex_dm->cur_dac_swing_on; + coex_dm->pre_dac_swing_lvl = coex_dm->cur_dac_swing_lvl; +} + +void halbtc8723b2ant_set_adc_backoff(struct btc_coexist *btcoexist, + bool adc_backoff) +{ + if (adc_backoff) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], BB BackOff Level On!\n"); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0xc05, 0x30, 0x3); + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], BB BackOff Level Off!\n"); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0xc05, 0x30, 0x1); + } +} + +void halbtc8723b2ant_adc_backoff(struct btc_coexist *btcoexist, + bool force_exec, bool adc_backoff) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s turn AdcBackOff = %s\n", + (force_exec? "force to":""), (adc_backoff? "ON":"OFF")); + coex_dm->cur_adc_back_off = adc_backoff; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], bPreAdcBackOff=%d, bCurAdcBackOff=%d\n", + coex_dm->pre_adc_back_off, + coex_dm->cur_adc_back_off); + + if (coex_dm->pre_adc_back_off == coex_dm->cur_adc_back_off) + return; + } + halbtc8723b2ant_set_adc_backoff(btcoexist, coex_dm->cur_adc_back_off); + + coex_dm->pre_adc_back_off = coex_dm->cur_adc_back_off; +} + +void halbtc8723b2ant_set_agc_table(struct btc_coexist *btcoexist, + bool agc_table_en) +{ + u8 rssi_adjust_val = 0; + + /* BB AGC Gain Table */ + if (agc_table_en) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], BB Agc Table On!\n"); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x6e1A0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x6d1B0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x6c1C0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x6b1D0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x6a1E0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x691F0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0x68200001); + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], BB Agc Table Off!\n"); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xaa1A0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa91B0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa81C0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa71D0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa61E0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa51F0001); + btcoexist->btc_write_4byte(btcoexist, 0xc78, 0xa4200001); + } + + + /* RF Gain */ + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0xef, 0xfffff, 0x02000); + if (agc_table_en) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Agc Table On!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, + 0xfffff, 0x38fff); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, + 0xfffff, 0x38ffe); + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Agc Table Off!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, + 0xfffff, 0x380c3); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x3b, + 0xfffff, 0x28ce6); + } + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0xef, 0xfffff, 0x0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0xed, 0xfffff, 0x1); + + if (agc_table_en) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Agc Table On!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x40, + 0xfffff, 0x38fff); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x40, + 0xfffff, 0x38ffe); + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], Agc Table Off!\n"); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x40, + 0xfffff, 0x380c3); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x40, + 0xfffff, 0x28ce6); + } + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0xed, 0xfffff, 0x0); + + /* set rssiAdjustVal for wifi module. */ + if (agc_table_en) + rssi_adjust_val = 8; + btcoexist->btc_set(btcoexist, BTC_SET_U1_RSSI_ADJ_VAL_FOR_AGC_TABLE_ON, + &rssi_adjust_val); +} + +void halbtc8723b2ant_agc_table(struct btc_coexist *btcoexist, + bool force_exec, bool agc_table_en) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s %s Agc Table\n", + (force_exec? "force to":""), + (agc_table_en? "Enable":"Disable")); + coex_dm->cur_agc_table_en = agc_table_en; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], bPreAgcTableEn=%d, bCurAgcTableEn=%d\n", + coex_dm->pre_agc_table_en, coex_dm->cur_agc_table_en); + + if (coex_dm->pre_agc_table_en == coex_dm->cur_agc_table_en) + return; + } + halbtc8723b2ant_set_agc_table(btcoexist, agc_table_en); + + coex_dm->pre_agc_table_en = coex_dm->cur_agc_table_en; +} + +void halbtc8723b2ant_set_coex_table(struct btc_coexist *btcoexist, + u32 val0x6c0, u32 val0x6c4, + u32 val0x6c8, u8 val0x6cc) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], set coex table, set 0x6c0=0x%x\n", val0x6c0); + btcoexist->btc_write_4byte(btcoexist, 0x6c0, val0x6c0); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], set coex table, set 0x6c4=0x%x\n", val0x6c4); + btcoexist->btc_write_4byte(btcoexist, 0x6c4, val0x6c4); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], set coex table, set 0x6c8=0x%x\n", val0x6c8); + btcoexist->btc_write_4byte(btcoexist, 0x6c8, val0x6c8); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_EXEC, + "[BTCoex], set coex table, set 0x6cc=0x%x\n", val0x6cc); + btcoexist->btc_write_1byte(btcoexist, 0x6cc, val0x6cc); +} + +void halbtc8723b2ant_coex_table(struct btc_coexist *btcoexist, + bool force_exec, u32 val0x6c0, + u32 val0x6c4, u32 val0x6c8, + u8 val0x6cc) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW, + "[BTCoex], %s write Coex Table 0x6c0=0x%x," + " 0x6c4=0x%x, 0x6c8=0x%x, 0x6cc=0x%x\n", + (force_exec? "force to":""), val0x6c0, + val0x6c4, val0x6c8, val0x6cc); + coex_dm->cur_val0x6c0 = val0x6c0; + coex_dm->cur_val0x6c4 = val0x6c4; + coex_dm->cur_val0x6c8 = val0x6c8; + coex_dm->cur_val0x6cc = val0x6cc; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], preVal0x6c0=0x%x, " + "preVal0x6c4=0x%x, preVal0x6c8=0x%x, " + "preVal0x6cc=0x%x !!\n", + coex_dm->pre_val0x6c0, coex_dm->pre_val0x6c4, + coex_dm->pre_val0x6c8, coex_dm->pre_val0x6cc); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_SW_DETAIL, + "[BTCoex], curVal0x6c0=0x%x, " + "curVal0x6c4=0x%x, curVal0x6c8=0x%x, " + "curVal0x6cc=0x%x !!\n", + coex_dm->cur_val0x6c0, coex_dm->cur_val0x6c4, + coex_dm->cur_val0x6c8, coex_dm->cur_val0x6cc); + + if ((coex_dm->pre_val0x6c0 == coex_dm->cur_val0x6c0) && + (coex_dm->pre_val0x6c4 == coex_dm->cur_val0x6c4) && + (coex_dm->pre_val0x6c8 == coex_dm->cur_val0x6c8) && + (coex_dm->pre_val0x6cc == coex_dm->cur_val0x6cc)) + return; + } + halbtc8723b2ant_set_coex_table(btcoexist, val0x6c0, val0x6c4, + val0x6c8, val0x6cc); + + coex_dm->pre_val0x6c0 = coex_dm->cur_val0x6c0; + coex_dm->pre_val0x6c4 = coex_dm->cur_val0x6c4; + coex_dm->pre_val0x6c8 = coex_dm->cur_val0x6c8; + coex_dm->pre_val0x6cc = coex_dm->cur_val0x6cc; +} + +void halbtc8723b2ant_coex_table_with_type(struct btc_coexist *btcoexist, + bool force_exec, u8 type) +{ + switch (type) { + case 0: + halbtc8723b2ant_coex_table(btcoexist, force_exec, 0x55555555, + 0x55555555, 0xffff, 0x3); + break; + case 1: + halbtc8723b2ant_coex_table(btcoexist, force_exec, 0x55555555, + 0x5afa5afa, 0xffff, 0x3); + break; + case 2: + halbtc8723b2ant_coex_table(btcoexist, force_exec, 0x5a5a5a5a, + 0x5a5a5a5a, 0xffff, 0x3); + break; + case 3: + halbtc8723b2ant_coex_table(btcoexist, force_exec, 0xaaaaaaaa, + 0xaaaaaaaa, 0xffff, 0x3); + break; + case 4: + halbtc8723b2ant_coex_table(btcoexist, force_exec, 0xffffffff, + 0xffffffff, 0xffff, 0x3); + break; + case 5: + halbtc8723b2ant_coex_table(btcoexist, force_exec, 0x5fff5fff, + 0x5fff5fff, 0xffff, 0x3); + break; + case 6: + halbtc8723b2ant_coex_table(btcoexist, force_exec, 0x55ff55ff, + 0x5a5a5a5a, 0xffff, 0x3); + break; + case 7: + halbtc8723b2ant_coex_table(btcoexist, force_exec, 0x55ff55ff, + 0x5afa5afa, 0xffff, 0x3); + break; + case 8: + halbtc8723b2ant_coex_table(btcoexist, force_exec, 0x5aea5aea, + 0x5aea5aea, 0xffff, 0x3); + break; + case 9: + halbtc8723b2ant_coex_table(btcoexist, force_exec, 0x55ff55ff, + 0x5aea5aea, 0xffff, 0x3); + break; + case 10: + halbtc8723b2ant_coex_table(btcoexist, force_exec, 0x55ff55ff, + 0x5aff5aff, 0xffff, 0x3); + break; + case 11: + halbtc8723b2ant_coex_table(btcoexist, force_exec, 0x55ff55ff, + 0x5a5f5a5f, 0xffff, 0x3); + break; + case 12: + halbtc8723b2ant_coex_table(btcoexist, force_exec, 0x55ff55ff, + 0x5f5f5f5f, 0xffff, 0x3); + break; + default: + break; + } +} + +void halbtc8723b2ant_set_fw_ignore_wlan_act(struct btc_coexist *btcoexist, + bool enable) +{ + u8 h2c_parameter[1] ={0}; + + if (enable) + h2c_parameter[0] |= BIT0;/* function enable*/ + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], set FW for BT Ignore Wlan_Act, " + "FW write 0x63=0x%x\n", h2c_parameter[0]); + + btcoexist->btc_fill_h2c(btcoexist, 0x63, 1, h2c_parameter); +} + +void halbtc8723b2ant_ignore_wlan_act(struct btc_coexist *btcoexist, + bool force_exec, bool enable) +{ + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s turn Ignore WlanAct %s\n", + (force_exec? "force to":""), (enable? "ON":"OFF")); + coex_dm->cur_ignore_wlan_act = enable; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], bPreIgnoreWlanAct = %d, " + "bCurIgnoreWlanAct = %d!!\n", + coex_dm->pre_ignore_wlan_act, + coex_dm->cur_ignore_wlan_act); + + if (coex_dm->pre_ignore_wlan_act == + coex_dm->cur_ignore_wlan_act) + return; + } + halbtc8723b2ant_set_fw_ignore_wlan_act(btcoexist, enable); + + coex_dm->pre_ignore_wlan_act = coex_dm->cur_ignore_wlan_act; +} + +void halbtc8723b2ant_set_fw_ps_tdma(struct btc_coexist *btcoexist, u8 byte1, + u8 byte2, u8 byte3, u8 byte4, u8 byte5) +{ + u8 h2c_parameter[5] ={0}; + + h2c_parameter[0] = byte1; + h2c_parameter[1] = byte2; + h2c_parameter[2] = byte3; + h2c_parameter[3] = byte4; + h2c_parameter[4] = byte5; + + coex_dm->ps_tdma_para[0] = byte1; + coex_dm->ps_tdma_para[1] = byte2; + coex_dm->ps_tdma_para[2] = byte3; + coex_dm->ps_tdma_para[3] = byte4; + coex_dm->ps_tdma_para[4] = byte5; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], FW write 0x60(5bytes)=0x%x%08x\n", + h2c_parameter[0], + h2c_parameter[1] << 24 | h2c_parameter[2] << 16 | + h2c_parameter[3] << 8 | h2c_parameter[4]); + + btcoexist->btc_fill_h2c(btcoexist, 0x60, 5, h2c_parameter); +} + +void halbtc8723b2ant_sw_mechanism1(struct btc_coexist *btcoexist, + bool shrink_rx_lpf, bool low_penalty_ra, + bool limited_dig, bool bt_lna_constrain) +{ + /* + u32 wifi_bw; + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if(BTC_WIFI_BW_HT40 != wifi_bw) //only shrink RF Rx LPF for HT40 + { + if (shrink_rx_lpf) + shrink_rx_lpf = false; + } + */ + + halbtc8723b2ant_rf_shrink(btcoexist, NORMAL_EXEC, shrink_rx_lpf); + halbtc8723b2ant_low_penalty_ra(btcoexist, NORMAL_EXEC, low_penalty_ra); +} + +void halbtc8723b2ant_sw_mechanism2(struct btc_coexist *btcoexist, + bool agc_table_shift, bool adc_backoff, + bool sw_dac_swing, u32 dac_swing_lvl) +{ + halbtc8723b2ant_agc_table(btcoexist, NORMAL_EXEC, agc_table_shift); + /*halbtc8723b2ant_adc_backoff(btcoexist, NORMAL_EXEC, adc_backoff);*/ + halbtc8723b2ant_dac_swing(btcoexist, NORMAL_EXEC, sw_dac_swing, + dac_swing_lvl); +} + +void halbtc8723b2ant_set_ant_path(struct btc_coexist *btcoexist, + u8 antpos_type, bool init_hwcfg, + bool wifi_off) +{ + struct btc_board_info *board_info = &btcoexist->board_info; + u32 fw_ver = 0, u32tmp=0; + bool pg_ext_switch = false; + bool use_ext_switch = false; + u8 h2c_parameter[2] ={0}; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_EXT_SWITCH, &pg_ext_switch); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_FW_VER, &fw_ver); + + if ((fw_ver<0xc0000) || pg_ext_switch) + use_ext_switch = true; + + if (init_hwcfg) { + /* 0x4c[23]=0, 0x4c[24]=1 Antenna control by WL/BT */ + u32tmp = btcoexist->btc_read_4byte(btcoexist, 0x4c); + u32tmp &= ~BIT23; + u32tmp |= BIT24; + btcoexist->btc_write_4byte(btcoexist, 0x4c, u32tmp); + + btcoexist->btc_write_1byte(btcoexist, 0x974, 0xff); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x944, 0x3, 0x3); + btcoexist->btc_write_1byte(btcoexist, 0x930, 0x77); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x67, 0x20, 0x1); + + /* Force GNT_BT to low */ + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x765, 0x18, 0x0); + btcoexist->btc_write_2byte(btcoexist, 0x948, 0x0); + + if (board_info->btdm_ant_pos == BTC_ANTENNA_AT_MAIN_PORT) { + /* tell firmware "no antenna inverse" */ + h2c_parameter[0] = 0; + h2c_parameter[1] = 1; /* ext switch type */ + btcoexist->btc_fill_h2c(btcoexist, 0x65, 2, + h2c_parameter); + } else { + /* tell firmware "antenna inverse" */ + h2c_parameter[0] = 1; + h2c_parameter[1] = 1; /* ext switch type */ + btcoexist->btc_fill_h2c(btcoexist, 0x65, 2, + h2c_parameter); + } + } + + /* ext switch setting */ + if (use_ext_switch) { + /* fixed internal switch S1->WiFi, S0->BT */ + btcoexist->btc_write_2byte(btcoexist, 0x948, 0x0); + switch (antpos_type) { + case BTC_ANT_WIFI_AT_MAIN: + /* ext switch main at wifi */ + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x92c, + 0x3, 0x1); + break; + case BTC_ANT_WIFI_AT_AUX: + /* ext switch aux at wifi */ + btcoexist->btc_write_1byte_bitmask(btcoexist, + 0x92c, 0x3, 0x2); + break; + } + } else { /* internal switch */ + /* fixed ext switch */ + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x92c, 0x3, 0x1); + switch (antpos_type) { + case BTC_ANT_WIFI_AT_MAIN: + /* fixed internal switch S1->WiFi, S0->BT */ + btcoexist->btc_write_2byte(btcoexist, 0x948, 0x0); + break; + case BTC_ANT_WIFI_AT_AUX: + /* fixed internal switch S0->WiFi, S1->BT */ + btcoexist->btc_write_2byte(btcoexist, 0x948, 0x280); + break; + } + } +} + + +void halbtc8723b2ant_ps_tdma(struct btc_coexist *btcoexist, bool force_exec, + bool turn_on, u8 type) +{ + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], %s turn %s PS TDMA, type=%d\n", + (force_exec? "force to":""), (turn_on? "ON":"OFF"), type); + coex_dm->cur_ps_tdma_on = turn_on; + coex_dm->cur_ps_tdma = type; + + if (!force_exec) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], bPrePsTdmaOn = %d, bCurPsTdmaOn = %d!!\n", + coex_dm->pre_ps_tdma_on, coex_dm->cur_ps_tdma_on); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], prePsTdma = %d, curPsTdma = %d!!\n", + coex_dm->pre_ps_tdma, coex_dm->cur_ps_tdma); + + if ((coex_dm->pre_ps_tdma_on == coex_dm->cur_ps_tdma_on) && + (coex_dm->pre_ps_tdma == coex_dm->cur_ps_tdma)) + return; + } + if (turn_on) { + switch (type) { + case 1: + default: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x1a, + 0x1a, 0xe1, 0x90); + break; + case 2: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x12, + 0x12, 0xe1, 0x90); + break; + case 3: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x1c, + 0x3, 0xf1, 0x90); + break; + case 4: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x10, + 0x03, 0xf1, 0x90); + break; + case 5: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x1a, + 0x1a, 0x60, 0x90); + break; + case 6: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x12, + 0x12, 0x60, 0x90); + break; + case 7: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x1c, + 0x3, 0x70, 0x90); + break; + case 8: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xa3, 0x10, + 0x3, 0x70, 0x90); + break; + case 9: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x1a, + 0x1a, 0xe1, 0x90); + break; + case 10: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x12, + 0x12, 0xe1, 0x90); + break; + case 11: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0xa, + 0xa, 0xe1, 0x90); + break; + case 12: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x5, + 0x5, 0xe1, 0x90); + break; + case 13: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x1a, + 0x1a, 0x60, 0x90); + break; + case 14: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x12, + 0x12, 0x60, 0x90); + break; + case 15: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0xa, + 0xa, 0x60, 0x90); + break; + case 16: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x5, + 0x5, 0x60, 0x90); + break; + case 17: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xa3, 0x2f, + 0x2f, 0x60, 0x90); + break; + case 18: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x5, + 0x5, 0xe1, 0x90); + break; + case 19: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x25, + 0x25, 0xe1, 0x90); + break; + case 20: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x25, + 0x25, 0x60, 0x90); + break; + case 21: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x15, + 0x03, 0x70, 0x90); + break; + case 71: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0xe3, 0x1a, + 0x1a, 0xe1, 0x90); + break; + } + } else { + /* disable PS tdma */ + switch (type) { + case 0: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0x0, 0x0, 0x0, + 0x40, 0x0); + break; + case 1: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0x0, 0x0, 0x0, + 0x48, 0x0); + break; + default: + halbtc8723b2ant_set_fw_ps_tdma(btcoexist, 0x0, 0x0, 0x0, + 0x40, 0x0); + break; + } + } + + /* update pre state */ + coex_dm->pre_ps_tdma_on = coex_dm->cur_ps_tdma_on; + coex_dm->pre_ps_tdma = coex_dm->cur_ps_tdma; +} + +void halbtc8723b2ant_coex_alloff(struct btc_coexist *btcoexist) +{ + /* fw all off */ + halbtc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 1); + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + /* sw all off */ + halbtc8723b2ant_sw_mechanism1(btcoexist, false, false, false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, false, 0x18); + + /* hw all off */ + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + halbtc8723b2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 0); +} + +void halbtc8723b2ant_init_coex_dm(struct btc_coexist *btcoexist) +{ + /* force to reset coex mechanism*/ + + halbtc8723b2ant_ps_tdma(btcoexist, FORCE_EXEC, false, 1); + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, FORCE_EXEC, 6); + halbtc8723b2ant_dec_bt_pwr(btcoexist, FORCE_EXEC, false); + + halbtc8723b2ant_sw_mechanism1(btcoexist, false, false, false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, false, 0x18); +} + +void halbtc8723b2ant_action_bt_inquiry(struct btc_coexist *btcoexist) +{ + bool wifi_connected = false; + bool low_pwr_disable = true; + + btcoexist->btc_set(btcoexist, BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + + if (wifi_connected) { + halbtc8723b2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 7); + halbtc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 3); + } else { + halbtc8723b2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 0); + halbtc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 1); + } + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, FORCE_EXEC, 6); + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + halbtc8723b2ant_sw_mechanism1(btcoexist, false, false, false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, false, 0x18); + + coex_dm->need_recover_0x948 = true; + coex_dm->backup_0x948 = btcoexist->btc_read_2byte(btcoexist, 0x948); + + halbtc8723b2ant_set_ant_path(btcoexist, BTC_ANT_WIFI_AT_AUX, + false, false); +} + +bool halbtc8723b2ant_is_common_action(struct btc_coexist *btcoexist) +{ + bool bCommon = false, wifi_connected = false; + bool wifi_busy = false; + bool bt_hs_on = false, low_pwr_disable = false; + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + + if (!wifi_connected) { + low_pwr_disable = false; + btcoexist->btc_set(btcoexist, BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi non-connected idle!!\n"); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, + 0x0); + halbtc8723b2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 0); + halbtc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 1); + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + halbtc8723b2ant_sw_mechanism1(btcoexist, false, false, false, + false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, false, + 0x18); + + bCommon = true; + } else { + if (BT_8723B_2ANT_BT_STATUS_NON_CONNECTED_IDLE == + coex_dm->bt_status) { + low_pwr_disable = false; + btcoexist->btc_set(btcoexist, + BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi connected + " + "BT non connected-idle!!\n"); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, + 0xfffff, 0x0); + halbtc8723b2ant_coex_table_with_type(btcoexist, + NORMAL_EXEC, 0); + halbtc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, + 1); + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, + 0xb); + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, + false); + + halbtc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + + bCommon = true; + } else if (BT_8723B_2ANT_BT_STATUS_CONNECTED_IDLE == + coex_dm->bt_status) { + low_pwr_disable = true; + btcoexist->btc_set(btcoexist, + BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + + if(bt_hs_on) + return false; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi connected + " + "BT connected-idle!!\n"); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, + 0xfffff, 0x0); + halbtc8723b2ant_coex_table_with_type(btcoexist, + NORMAL_EXEC, 0); + halbtc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, + 1); + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, + 0xb); + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, + false); + + halbtc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + + bCommon = true; + } else { + low_pwr_disable = true; + btcoexist->btc_set(btcoexist, + BTC_SET_ACT_DISABLE_LOW_POWER, + &low_pwr_disable); + + if (wifi_busy) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi Connected-Busy + " + "BT Busy!!\n"); + bCommon = false; + } else { + if(bt_hs_on) + return false; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Wifi Connected-Idle + " + "BT Busy!!\n"); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, + 0x1, 0xfffff, 0x0); + halbtc8723b2ant_coex_table_with_type(btcoexist, + NORMAL_EXEC, + 7); + halbtc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, + true, 21); + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, + NORMAL_EXEC, + 0xb); + if (halbtc8723b2ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b2ant_dec_bt_pwr(btcoexist, + NORMAL_EXEC, + true); + else + halbtc8723b2ant_dec_bt_pwr(btcoexist, + NORMAL_EXEC, + false); + halbtc8723b2ant_sw_mechanism1(btcoexist, false, + false, false, + false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, + false, false, + 0x18); + bCommon = true; + } + } + } + + return bCommon; +} +void halbtc8723b2ant_tdma_duration_adjust(struct btc_coexist *btcoexist, + bool sco_hid, bool tx_pause, + u8 max_interval) +{ + static s32 up, dn, m, n, wait_count; + /*0: no change, +1: increase WiFi duration, -1: decrease WiFi duration*/ + s32 result; + u8 retryCount=0; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW, + "[BTCoex], TdmaDurationAdjust()\n"); + + if (!coex_dm->auto_tdma_adjust) { + coex_dm->auto_tdma_adjust = true; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], first run TdmaDurationAdjust()!!\n"); + if (sco_hid) { + if (tx_pause) { + if (max_interval == 1) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 13); + coex_dm->ps_tdma_du_adj_type = 13; + }else if (max_interval == 2) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = 14; + } else if (max_interval == 3) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = 15; + } else { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = 15; + } + } else { + if(max_interval == 1) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 9); + coex_dm->ps_tdma_du_adj_type = 9; + } else if (max_interval == 2) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = 10; + } else if (max_interval == 3) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = 11; + } else { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = 11; + } + } + } else { + if (tx_pause) { + if (max_interval == 1) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 5); + coex_dm->ps_tdma_du_adj_type = 5; + } else if (max_interval == 2) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = 6; + } else if (max_interval == 3) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = 7; + } else { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = 7; + } + } else { + if (max_interval == 1) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 1); + coex_dm->ps_tdma_du_adj_type = 1; + } else if (max_interval == 2) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = 2; + } else if (max_interval == 3) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = 3; + } else { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = 3; + } + } + } + + up = 0; + dn = 0; + m = 1; + n= 3; + result = 0; + wait_count = 0; + } else { + /*accquire the BT TRx retry count from BT_Info byte2*/ + retryCount = coex_sta->bt_retry_cnt; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], retryCount = %d\n", retryCount); + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], up=%d, dn=%d, m=%d, n=%d, wait_count=%d\n", + up, dn, m, n, wait_count); + result = 0; + wait_count++; + /* no retry in the last 2-second duration*/ + if (retryCount == 0) { + up++; + dn--; + + if (dn <= 0) + dn = 0; + + if (up >= n) { + wait_count = 0; + n = 3; + up = 0; + dn = 0; + result = 1; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], Increase wifi " + "duration!!\n"); + }/* <=3 retry in the last 2-second duration*/ + } else if (retryCount <= 3) { + up--; + dn++; + + if (up <= 0) + up = 0; + + if (dn == 2) { + if (wait_count <= 2) + m++; + else + m = 1; + + if (m >= 20) + m = 20; + + n = 3 * m; + up = 0; + dn = 0; + wait_count = 0; + result = -1; + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], Decrease wifi duration " + "for retryCounter<3!!\n"); + } + } else { + if (wait_count == 1) + m++; + else + m = 1; + + if (m >= 20) + m = 20; + + n = 3 * m; + up = 0; + dn = 0; + wait_count = 0; + result = -1; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], Decrease wifi duration " + "for retryCounter>3!!\n"); + } + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], max Interval = %d\n", max_interval); + if (max_interval == 1) { + if (tx_pause) { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 1\n"); + + if (coex_dm->cur_ps_tdma == 71) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 5); + coex_dm->ps_tdma_du_adj_type = 5; + } else if (coex_dm->cur_ps_tdma == 1) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 5); + coex_dm->ps_tdma_du_adj_type = 5; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = 6; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 4) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 8); + coex_dm->ps_tdma_du_adj_type = 8; + } + + if (coex_dm->cur_ps_tdma == 9) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 13); + coex_dm->ps_tdma_du_adj_type = 13; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = 14; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 12) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 16); + coex_dm->ps_tdma_du_adj_type = 16; + } + + if (result == -1) { + if (coex_dm->cur_ps_tdma == 5) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = + 6; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 8); + coex_dm->ps_tdma_du_adj_type = + 8; + } else if (coex_dm->cur_ps_tdma == 13) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = + 14; + } else if(coex_dm->cur_ps_tdma == 14) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } else if(coex_dm->cur_ps_tdma == 15) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 16); + coex_dm->ps_tdma_du_adj_type = + 16; + } + } else if (result == 1) { + if (coex_dm->cur_ps_tdma == 8) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = + 6; + } else if(coex_dm->cur_ps_tdma == 6) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 5); + coex_dm->ps_tdma_du_adj_type = + 5; + } else if(coex_dm->cur_ps_tdma == 16) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } else if(coex_dm->cur_ps_tdma == 15) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = + 14; + } else if(coex_dm->cur_ps_tdma == 14) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 13); + coex_dm->ps_tdma_du_adj_type = + 13; + } + } + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 0\n"); + if (coex_dm->cur_ps_tdma == 5) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 71); + coex_dm->ps_tdma_du_adj_type = 71; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = 2; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = 3; + } else if (coex_dm->cur_ps_tdma == 8) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 4); + coex_dm->ps_tdma_du_adj_type = 4; + } + + if (coex_dm->cur_ps_tdma == 13) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 9); + coex_dm->ps_tdma_du_adj_type = 9; + } else if (coex_dm->cur_ps_tdma == 14) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = 10; + } else if (coex_dm->cur_ps_tdma == 15) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = 11; + } else if(coex_dm->cur_ps_tdma == 16) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 12); + coex_dm->ps_tdma_du_adj_type = 12; + } + + if (result == -1) { + if (coex_dm->cur_ps_tdma == 71) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 1); + coex_dm->ps_tdma_du_adj_type = + 1; + } else if (coex_dm->cur_ps_tdma == 1) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = + 2; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if(coex_dm->cur_ps_tdma == 3) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 4); + coex_dm->ps_tdma_du_adj_type = + 4; + } else if(coex_dm->cur_ps_tdma == 9) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = + 10; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 12); + coex_dm->ps_tdma_du_adj_type = + 12; + } + } else if (result == 1) { + if (coex_dm->cur_ps_tdma == 4) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = + 2; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 1); + coex_dm->ps_tdma_du_adj_type = + 1; + } else if (coex_dm->cur_ps_tdma == 1) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 71); + coex_dm->ps_tdma_du_adj_type = + 71; + } else if (coex_dm->cur_ps_tdma == 12) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = + 10; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 9); + coex_dm->ps_tdma_du_adj_type = + 9; + } + } + } + } else if(max_interval == 2) { + if (tx_pause) { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 1\n"); + if (coex_dm->cur_ps_tdma == 1) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = 6; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = 6; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 4) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 8); + coex_dm->ps_tdma_du_adj_type = 8; + } + if (coex_dm->cur_ps_tdma == 9) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = 14; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = 14; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 12) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 16); + coex_dm->ps_tdma_du_adj_type = 16; + } + if (result == -1) { + if (coex_dm->cur_ps_tdma == 5) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = + 6; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 8); + coex_dm->ps_tdma_du_adj_type = + 8; + } else if (coex_dm->cur_ps_tdma == 13) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = + 14; + } else if (coex_dm->cur_ps_tdma == 14) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } else if (coex_dm->cur_ps_tdma == 15) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 16); + coex_dm->ps_tdma_du_adj_type = + 16; + } + } else if (result == 1) { + if (coex_dm->cur_ps_tdma == 8) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = + 6; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 6); + coex_dm->ps_tdma_du_adj_type = + 6; + } else if (coex_dm->cur_ps_tdma == 16) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } else if (coex_dm->cur_ps_tdma == 15) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = + 14; + } else if (coex_dm->cur_ps_tdma == 14) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 14); + coex_dm->ps_tdma_du_adj_type = + 14; + } + } + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 0\n"); + if (coex_dm->cur_ps_tdma == 5) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = 2; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = 2; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = 3; + } else if (coex_dm->cur_ps_tdma == 8) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 4); + coex_dm->ps_tdma_du_adj_type = 4; + } + if (coex_dm->cur_ps_tdma == 13) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = 10; + } else if (coex_dm->cur_ps_tdma == 14){ + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = 10; + } else if (coex_dm->cur_ps_tdma == 15) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = 11; + } else if (coex_dm->cur_ps_tdma == 16) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 12); + coex_dm->ps_tdma_du_adj_type = 12; + } + if (result == -1) { + if (coex_dm->cur_ps_tdma == 1) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = + 2; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 4); + coex_dm->ps_tdma_du_adj_type = + 4; + } else if (coex_dm->cur_ps_tdma == 9) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = + 10; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 12); + coex_dm->ps_tdma_du_adj_type = + 12; + } + } else if (result == 1) { + if (coex_dm->cur_ps_tdma == 4) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = + 2; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 2); + coex_dm->ps_tdma_du_adj_type = + 2; + } else if (coex_dm->cur_ps_tdma == 12) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = + 10; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 10); + coex_dm->ps_tdma_du_adj_type = + 10; + } + } + } + } else if (max_interval == 3) { + if (tx_pause) { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 1\n"); + if (coex_dm->cur_ps_tdma == 1) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = 7; + } else if (coex_dm->cur_ps_tdma == 4) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 8); + coex_dm->ps_tdma_du_adj_type = 8; + } + if (coex_dm->cur_ps_tdma == 9) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = 15; + } else if (coex_dm->cur_ps_tdma == 12) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 16); + coex_dm->ps_tdma_du_adj_type = 16; + } + if (result == -1) { + if (coex_dm->cur_ps_tdma == 5) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 8); + coex_dm->ps_tdma_du_adj_type = + 8; + } else if (coex_dm->cur_ps_tdma == 13) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } else if (coex_dm->cur_ps_tdma == 14) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } else if (coex_dm->cur_ps_tdma == 15) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 16); + coex_dm->ps_tdma_du_adj_type = + 16; + } + } else if (result == 1) { + if (coex_dm->cur_ps_tdma == 8) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 7); + coex_dm->ps_tdma_du_adj_type = + 7; + } else if (coex_dm->cur_ps_tdma == 16) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } else if (coex_dm->cur_ps_tdma == 15) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } else if (coex_dm->cur_ps_tdma == 14) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 15); + coex_dm->ps_tdma_du_adj_type = + 15; + } + } + } else { + BTC_PRINT(BTC_MSG_ALGORITHM, + ALGO_TRACE_FW_DETAIL, + "[BTCoex], TxPause = 0\n"); + if (coex_dm->cur_ps_tdma == 5) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = 3; + } else if (coex_dm->cur_ps_tdma == 6) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = 3; + } else if (coex_dm->cur_ps_tdma == 7) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = 3; + } else if (coex_dm->cur_ps_tdma == 8) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 4); + coex_dm->ps_tdma_du_adj_type = 4; + } + if (coex_dm->cur_ps_tdma == 13) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = 11; + } else if (coex_dm->cur_ps_tdma == 14) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = 11; + } else if (coex_dm->cur_ps_tdma == 15) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = 11; + } else if (coex_dm->cur_ps_tdma == 16) { + halbtc8723b2ant_ps_tdma(btcoexist, + NORMAL_EXEC, + true, 12); + coex_dm->ps_tdma_du_adj_type = 12; + } + if (result == -1) { + if (coex_dm->cur_ps_tdma == 1) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 4); + coex_dm->ps_tdma_du_adj_type = + 4; + } else if (coex_dm->cur_ps_tdma == 9) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 12); + coex_dm->ps_tdma_du_adj_type = + 12; + } + } else if (result == 1) { + if (coex_dm->cur_ps_tdma == 4) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 3) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 2) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 3); + coex_dm->ps_tdma_du_adj_type = + 3; + } else if (coex_dm->cur_ps_tdma == 12) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } else if (coex_dm->cur_ps_tdma == 11) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } else if (coex_dm->cur_ps_tdma == 10) { + halbtc8723b2ant_ps_tdma( + btcoexist, + NORMAL_EXEC, + true, 11); + coex_dm->ps_tdma_du_adj_type = + 11; + } + } + } + } + } + + /*if current PsTdma not match with the recorded one (when scan, dhcp..), + *then we have to adjust it back to the previous record one.*/ + if (coex_dm->cur_ps_tdma != coex_dm->ps_tdma_du_adj_type) { + bool scan = false, link = false, roam = false; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], PsTdma type dismatch!!!, " + "curPsTdma=%d, recordPsTdma=%d\n", + coex_dm->cur_ps_tdma, coex_dm->ps_tdma_du_adj_type); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_SCAN, &scan); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_LINK, &link); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_ROAM, &roam); + + if (!scan && !link && !roam) + halbtc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, + coex_dm->ps_tdma_du_adj_type); + else + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_DETAIL, + "[BTCoex], roaming/link/scan is under" + " progress, will adjust next time!!!\n"); + } +} + +/* SCO only or SCO+PAN(HS) */ +void halbtc8723b2ant_action_sco(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = halbtc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 4); + + if (halbtc8723b2ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + /*for SCO quality at 11b/g mode*/ + if (BTC_WIFI_BW_LEGACY == wifi_bw) + halbtc8723b2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 2); + else /*for SCO quality & wifi performance balance at 11n mode*/ + halbtc8723b2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 8); + + /*for voice quality */ + halbtc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 0); + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + true, 0x4); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + true, 0x4); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + true, 0x4); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + true, 0x4); + } + } +} + + +void halbtc8723b2ant_action_hid(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = halbtc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + bt_rssi_state = halbtc8723b2ant_bt_rssi_state(2, 29, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (halbtc8723b2ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if (BTC_WIFI_BW_LEGACY == wifi_bw) /*/for HID at 11b/g mode*/ + halbtc8723b2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 7); + else /*for HID quality & wifi performance balance at 11n mode*/ + halbtc8723b2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 9); + + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) + halbtc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 9); + else + halbtc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 13); + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +/*A2DP only / PAN(EDR) only/ A2DP+PAN(HS)*/ +void halbtc8723b2ant_action_a2dp(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, wifi_rssi_state1, bt_rssi_state; + u32 wifi_bw; + u8 ap_num = 0; + + wifi_rssi_state = halbtc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + wifi_rssi_state1 = halbtc8723b2ant_wifi_rssi_state(btcoexist, + 1, 2, 40, 0); + bt_rssi_state = halbtc8723b2ant_bt_rssi_state(2, 29, 0); + + btcoexist->btc_get(btcoexist, BTC_GET_U1_AP_NUM, &ap_num); + + /* define the office environment */ + /* driver don't know AP num in Linux, so we will never enter this if */ + if (ap_num >= 10 && BTC_RSSI_HIGH(wifi_rssi_state1)) { + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, + 0x0); + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + halbtc8723b2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 0); + halbtc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 1); + + /* sw mechanism */ + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + true, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + true, 0x18); + } + return; + } + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (halbtc8723b2ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + halbtc8723b2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 7); + + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) + halbtc8723b2ant_tdma_duration_adjust(btcoexist,false, false, 1); + else + halbtc8723b2ant_tdma_duration_adjust(btcoexist,false, true, 1); + + /* sw mechanism */ + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +void halbtc8723b2ant_action_a2dp_pan_hs(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = halbtc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (halbtc8723b2ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + halbtc8723b2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 7); + + halbtc8723b2ant_tdma_duration_adjust(btcoexist, false, true, 2); + + /* sw mechanism */ + btcoexist->btc_get(btcoexist, + BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false,0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +void halbtc8723b2ant_action_pan_edr(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = halbtc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + bt_rssi_state = halbtc8723b2ant_bt_rssi_state(2, 29, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (halbtc8723b2ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + halbtc8723b2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 10); + + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) + halbtc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 1); + else + halbtc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 5); + + /* sw mechanism */ + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + + +/*PAN(HS) only*/ +void halbtc8723b2ant_action_pan_hs(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = halbtc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH) ) + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + halbtc8723b2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 7); + + halbtc8723b2ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 1); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +/*PAN(EDR)+A2DP*/ +void halbtc8723b2ant_action_pan_edr_a2dp(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = halbtc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + bt_rssi_state = halbtc8723b2ant_bt_rssi_state(2, 29, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (halbtc8723b2ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_coex_table_with_type(btcoexist,NORMAL_EXEC, 12); + if (BTC_WIFI_BW_HT40 == wifi_bw) + halbtc8723b2ant_tdma_duration_adjust(btcoexist, false, + true, 3); + else + halbtc8723b2ant_tdma_duration_adjust(btcoexist, false, + false, 3); + } else { + halbtc8723b2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 7); + halbtc8723b2ant_tdma_duration_adjust(btcoexist, false, true, 3); + } + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, false, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +void halbtc8723b2ant_action_pan_edr_hid(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = halbtc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + bt_rssi_state = halbtc8723b2ant_bt_rssi_state(2, 29, 0); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + if (halbtc8723b2ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + if (BTC_WIFI_BW_HT40 == wifi_bw) { + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, + 3); + halbtc8723b2ant_coex_table_with_type(btcoexist, + NORMAL_EXEC, 11); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, + 0xfffff, 0x780); + } else { + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, + 6); + halbtc8723b2ant_coex_table_with_type(btcoexist, + NORMAL_EXEC, 7); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, + 0xfffff, 0x0); + } + halbtc8723b2ant_tdma_duration_adjust(btcoexist, true, false, 2); + } else { + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + halbtc8723b2ant_coex_table_with_type(btcoexist,NORMAL_EXEC, 11); + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, + 0x0); + halbtc8723b2ant_tdma_duration_adjust(btcoexist, true, true, 2); + } + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)){ + halbtc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +/* HID+A2DP+PAN(EDR) */ +void halbtc8723b2ant_action_hid_a2dp_pan_edr(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = halbtc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + bt_rssi_state = halbtc8723b2ant_bt_rssi_state(2, 29, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (halbtc8723b2ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + halbtc8723b2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 7); + + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + if (BTC_WIFI_BW_HT40 == wifi_bw) + halbtc8723b2ant_tdma_duration_adjust(btcoexist, true, + true, 2); + else + halbtc8723b2ant_tdma_duration_adjust(btcoexist, true, + false, 3); + } else { + halbtc8723b2ant_tdma_duration_adjust(btcoexist, true, true, 3); + } + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +void halbtc8723b2ant_action_hid_a2dp(struct btc_coexist *btcoexist) +{ + u8 wifi_rssi_state, bt_rssi_state; + u32 wifi_bw; + + wifi_rssi_state = halbtc8723b2ant_wifi_rssi_state(btcoexist, + 0, 2, 15, 0); + bt_rssi_state = halbtc8723b2ant_bt_rssi_state(2, 29, 0); + + btcoexist->btc_set_rf_reg(btcoexist, BTC_RF_A, 0x1, 0xfffff, 0x0); + + halbtc8723b2ant_fw_dac_swing_lvl(btcoexist, NORMAL_EXEC, 6); + + if (halbtc8723b2ant_need_to_dec_bt_pwr(btcoexist)) + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, true); + else + halbtc8723b2ant_dec_bt_pwr(btcoexist, NORMAL_EXEC, false); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + + halbtc8723b2ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 7); + + if ((bt_rssi_state == BTC_RSSI_STATE_HIGH) || + (bt_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) + halbtc8723b2ant_tdma_duration_adjust(btcoexist, true, false, 2); + else + halbtc8723b2ant_tdma_duration_adjust(btcoexist, true, true, 2); + + /* sw mechanism */ + if (BTC_WIFI_BW_HT40 == wifi_bw) { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, true, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } else { + if ((wifi_rssi_state == BTC_RSSI_STATE_HIGH) || + (wifi_rssi_state == BTC_RSSI_STATE_STAY_HIGH)) { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, true, false, + false, 0x18); + } else { + halbtc8723b2ant_sw_mechanism1(btcoexist, false, true, + false, false); + halbtc8723b2ant_sw_mechanism2(btcoexist, false, false, + false, 0x18); + } + } +} + +void halbtc8723b2ant_run_coexist_mechanism(struct btc_coexist *btcoexist) +{ + u8 algorithm = 0; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], RunCoexistMechanism()===>\n"); + + if (btcoexist->manual_control) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], RunCoexistMechanism(), " + "return for Manual CTRL <===\n"); + return; + } + + if (coex_sta->under_ips) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], wifi is under IPS !!!\n"); + return; + } + + algorithm = halbtc8723b2ant_action_algorithm(btcoexist); + if (coex_sta->c2h_bt_inquiry_page && + (BT_8723B_2ANT_COEX_ALGO_PANHS != algorithm)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT is under inquiry/page scan !!\n"); + halbtc8723b2ant_action_bt_inquiry(btcoexist); + return; + } else { + if (coex_dm->need_recover_0x948) { + coex_dm->need_recover_0x948 = false; + btcoexist->btc_write_2byte(btcoexist, 0x948, + coex_dm->backup_0x948); + } + } + + coex_dm->cur_algorithm = algorithm; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, "[BTCoex], Algorithm = %d \n", + coex_dm->cur_algorithm); + + if (halbtc8723b2ant_is_common_action(btcoexist)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant common.\n"); + coex_dm->auto_tdma_adjust = false; + } else { + if (coex_dm->cur_algorithm != coex_dm->pre_algorithm) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], preAlgorithm=%d, " + "curAlgorithm=%d\n", coex_dm->pre_algorithm, + coex_dm->cur_algorithm); + coex_dm->auto_tdma_adjust = false; + } + switch (coex_dm->cur_algorithm) { + case BT_8723B_2ANT_COEX_ALGO_SCO: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, algorithm = SCO.\n"); + halbtc8723b2ant_action_sco(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_HID: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, algorithm = HID.\n"); + halbtc8723b2ant_action_hid(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = A2DP.\n"); + halbtc8723b2ant_action_a2dp(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_A2DP_PANHS: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = A2DP+PAN(HS).\n"); + halbtc8723b2ant_action_a2dp_pan_hs(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_PANEDR: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = PAN(EDR).\n"); + halbtc8723b2ant_action_pan_edr(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_PANHS: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = HS mode.\n"); + halbtc8723b2ant_action_pan_hs(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_PANEDR_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = PAN+A2DP.\n"); + halbtc8723b2ant_action_pan_edr_a2dp(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_PANEDR_HID: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = PAN(EDR)+HID.\n"); + halbtc8723b2ant_action_pan_edr_hid(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_HID_A2DP_PANEDR: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = HID+A2DP+PAN.\n"); + halbtc8723b2ant_action_hid_a2dp_pan_edr(btcoexist); + break; + case BT_8723B_2ANT_COEX_ALGO_HID_A2DP: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = HID+A2DP.\n"); + halbtc8723b2ant_action_hid_a2dp(btcoexist); + break; + default: + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], Action 2-Ant, " + "algorithm = coexist All Off!!\n"); + halbtc8723b2ant_coex_alloff(btcoexist); + break; + } + coex_dm->pre_algorithm = coex_dm->cur_algorithm; + } +} + +void halbtc8723b2ant_wifioff_hwcfg(struct btc_coexist *btcoexist) +{ + /* set wlan_act to low */ + btcoexist->btc_write_1byte(btcoexist, 0x76e, 0x4); + /* Force GNT_BT to High */ + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x765, 0x18, 0x3); + /* BT select s0/s1 is controlled by BT */ + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x67, 0x20, 0x0); +} + +/********************************************************************* + * work around function start with wa_halbtc8723b2ant_ + *********************************************************************/ +/********************************************************************* + * extern function start with EXhalbtc8723b2ant_ + *********************************************************************/ +void ex_halbtc8723b2ant_init_hwconfig(struct btc_coexist *btcoexist) +{ + u8 u8tmp = 0; + + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], 2Ant Init HW Config!!\n"); + coex_dm->bt_rf0x1e_backup = + btcoexist->btc_get_rf_reg(btcoexist, BTC_RF_A, 0x1e, 0xfffff); + + /* 0x790[5:0]=0x5 */ + u8tmp = btcoexist->btc_read_1byte(btcoexist, 0x790); + u8tmp &= 0xc0; + u8tmp |= 0x5; + btcoexist->btc_write_1byte(btcoexist, 0x790, u8tmp); + + + /*Antenna config */ + halbtc8723b2ant_set_ant_path(btcoexist, BTC_ANT_WIFI_AT_MAIN, + true, false); + + + + + /* PTA parameter */ + halbtc8723b2ant_coex_table_with_type(btcoexist, FORCE_EXEC, 0); + + /* Enable counter statistics */ + /*0x76e[3] =1, WLAN_Act control by PTA*/ + btcoexist->btc_write_1byte(btcoexist, 0x76e, 0xc); + btcoexist->btc_write_1byte(btcoexist, 0x778, 0x3); + btcoexist->btc_write_1byte_bitmask(btcoexist, 0x40, 0x20, 0x1); +} + +void ex_halbtc8723b2ant_init_coex_dm(struct btc_coexist *btcoexist) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], Coex Mechanism Init!!\n"); + halbtc8723b2ant_init_coex_dm(btcoexist); +} + +void ex_halbtc8723b2ant_display_coex_info(struct btc_coexist *btcoexist) +{ + struct btc_board_info *board_info = &btcoexist->board_info; + struct btc_stack_info *stack_info = &btcoexist->stack_info; + struct btc_bt_link_info* bt_link_info = &btcoexist->bt_link_info; + u8 *cli_buf = btcoexist->cli_buf; + u8 u8tmp[4], i, bt_info_ext, ps_tdma_case=0; + u32 u32tmp[4]; + bool roam = false, scan = false; + bool link = false, wifi_under_5g = false; + bool bt_hs_on = false, wifi_busy = false; + s32 wifi_rssi = 0, bt_hs_rssi = 0; + u32 wifi_bw, wifi_traffic_dir, fa_ofdm, fa_cck; + u8 wifi_dot11_chnl, wifi_hs_chnl; + u32 fw_ver = 0, bt_patch_ver = 0; + u8 ap_num = 0; + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n ============[BT Coexist info]============"); + CL_PRINTF(cli_buf); + + if (btcoexist->manual_control) { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n ==========[Under Manual Control]============"); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n =========================================="); + CL_PRINTF(cli_buf); + } + + if (!board_info->bt_exist) { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n BT not exists !!!"); + CL_PRINTF(cli_buf); + return; + } + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d ", + "Ant PG number/ Ant mechanism:", + board_info->pg_ant_num, board_info->btdm_ant_num); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %d", + "BT stack/ hci ext ver", + ((stack_info->profile_notified)? "Yes":"No"), + stack_info->hci_version); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_U4_BT_PATCH_VER, &bt_patch_ver); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_FW_VER, &fw_ver); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = %d_%x/ 0x%x/ 0x%x(%d)", + "CoexVer/ fw_ver/ PatchVer", + glcoex_ver_date_8723b_2ant, glcoex_ver_8723b_2ant, + fw_ver, bt_patch_ver, bt_patch_ver); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_HS_OPERATION, &bt_hs_on); + btcoexist->btc_get(btcoexist, BTC_GET_U1_WIFI_DOT11_CHNL, + &wifi_dot11_chnl); + btcoexist->btc_get(btcoexist, BTC_GET_U1_WIFI_HS_CHNL, &wifi_hs_chnl); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d / %d(%d)", + "Dot11 channel / HsChnl(HsMode)", + wifi_dot11_chnl, wifi_hs_chnl, bt_hs_on); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %02x %02x %02x ", + "H2C Wifi inform bt chnl Info", coex_dm->wifi_chnl_info[0], + coex_dm->wifi_chnl_info[1], coex_dm->wifi_chnl_info[2]); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_S4_WIFI_RSSI, &wifi_rssi); + btcoexist->btc_get(btcoexist, BTC_GET_S4_HS_RSSI, &bt_hs_rssi); + btcoexist->btc_get(btcoexist, BTC_GET_U1_AP_NUM, &ap_num); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d", + "Wifi rssi/ HS rssi/ AP#", wifi_rssi, bt_hs_rssi, ap_num); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_SCAN, &scan); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_LINK, &link); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_ROAM, &roam); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d ", + "Wifi link/ roam/ scan", link, roam, scan); + CL_PRINTF(cli_buf); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_UNDER_5G, &wifi_under_5g); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_BW, &wifi_bw); + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_BUSY, &wifi_busy); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_TRAFFIC_DIRECTION, + &wifi_traffic_dir); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s / %s/ %s ", + "Wifi status", (wifi_under_5g? "5G":"2.4G"), + ((BTC_WIFI_BW_LEGACY == wifi_bw)? "Legacy": + (((BTC_WIFI_BW_HT40 == wifi_bw)? "HT40":"HT20"))), + ((!wifi_busy)? "idle": + ((BTC_WIFI_TRAFFIC_TX ==wifi_traffic_dir)?\ + "uplink":"downlink"))); + CL_PRINTF(cli_buf); + + + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d / %d / %d / %d", + "SCO/HID/PAN/A2DP", + bt_link_info->sco_exist, bt_link_info->hid_exist, + bt_link_info->pan_exist, bt_link_info->a2dp_exist); + CL_PRINTF(cli_buf); + btcoexist->btc_disp_dbg_msg(btcoexist, BTC_DBG_DISP_BT_LINK_INFO); + + bt_info_ext = coex_sta->bt_info_ext; + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s", + "BT Info A2DP rate", + (bt_info_ext&BIT0)? "Basic rate":"EDR rate"); + CL_PRINTF(cli_buf); + + for (i=0; ibt_info_c2h_cnt[i]) { + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = %02x %02x %02x " + "%02x %02x %02x %02x(%d)", + glbt_info_src_8723b_2ant[i], \ + coex_sta->bt_info_c2h[i][0], + coex_sta->bt_info_c2h[i][1], + coex_sta->bt_info_c2h[i][2], + coex_sta->bt_info_c2h[i][3], + coex_sta->bt_info_c2h[i][4], + coex_sta->bt_info_c2h[i][5], + coex_sta->bt_info_c2h[i][6], + coex_sta->bt_info_c2h_cnt[i]); + CL_PRINTF(cli_buf); + } + } + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %s/%s", + "PS state, IPS/LPS", + ((coex_sta->under_ips? "IPS ON":"IPS OFF")), + ((coex_sta->under_lps? "LPS ON":"LPS OFF"))); + CL_PRINTF(cli_buf); + btcoexist->btc_disp_dbg_msg(btcoexist, BTC_DBG_DISP_FW_PWR_MODE_CMD); + + /* Sw mechanism */ + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s", "============[Sw mechanism]============"); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d ", + "SM1[ShRf/ LpRA/ LimDig]", coex_dm->cur_rf_rx_lpf_shrink, + coex_dm->cur_low_penalty_ra, coex_dm->limited_dig); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d/ %d(0x%x) ", + "SM2[AgcT/ AdcB/ SwDacSwing(lvl)]", + coex_dm->cur_agc_table_en, coex_dm->cur_adc_back_off, + coex_dm->cur_dac_swing_on, coex_dm->cur_dac_swing_lvl); + CL_PRINTF(cli_buf); + + /* Fw mechanism */ + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s", + "============[Fw mechanism]============"); + CL_PRINTF(cli_buf); + + ps_tdma_case = coex_dm->cur_ps_tdma; + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = %02x %02x %02x %02x %02x case-%d (auto:%d)", + "PS TDMA", coex_dm->ps_tdma_para[0], + coex_dm->ps_tdma_para[1], coex_dm->ps_tdma_para[2], + coex_dm->ps_tdma_para[3], coex_dm->ps_tdma_para[4], + ps_tdma_case, coex_dm->auto_tdma_adjust); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d ", + "DecBtPwr/ IgnWlanAct", coex_dm->cur_dec_bt_pwr, + coex_dm->cur_ignore_wlan_act); + CL_PRINTF(cli_buf); + + /* Hw setting */ + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s", + "============[Hw setting]============"); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x", + "RF-A, 0x1e initVal", coex_dm->bt_rf0x1e_backup); + CL_PRINTF(cli_buf); + + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x778); + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x880); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", + "0x778/0x880[29:25]", u8tmp[0], + (u32tmp[0]&0x3e000000) >> 25); + CL_PRINTF(cli_buf); + + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x948); + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x67); + u8tmp[1] = btcoexist->btc_read_1byte(btcoexist, 0x765); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", + "0x948/ 0x67[5] / 0x765", + u32tmp[0], ((u8tmp[0]&0x20)>> 5), u8tmp[1]); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x92c); + u32tmp[1] = btcoexist->btc_read_4byte(btcoexist, 0x930); + u32tmp[2] = btcoexist->btc_read_4byte(btcoexist, 0x944); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", + "0x92c[1:0]/ 0x930[7:0]/0x944[1:0]", + u32tmp[0]&0x3, u32tmp[1]&0xff, u32tmp[2]&0x3); + CL_PRINTF(cli_buf); + + + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x39); + u8tmp[1] = btcoexist->btc_read_1byte(btcoexist, 0x40); + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x4c); + u8tmp[2] = btcoexist->btc_read_1byte(btcoexist, 0x64); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x/ 0x%x", + "0x38[11]/0x40/0x4c[24:23]/0x64[0]", + ((u8tmp[0] & 0x8)>>3), u8tmp[1], + ((u32tmp[0]&0x01800000)>>23), u8tmp[2]&0x1); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x550); + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x522); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", + "0x550(bcn ctrl)/0x522", u32tmp[0], u8tmp[0]); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0xc50); + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x49c); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x", + "0xc50(dig)/0x49c(null-drop)", u32tmp[0]&0xff, u8tmp[0]); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0xda0); + u32tmp[1] = btcoexist->btc_read_4byte(btcoexist, 0xda4); + u32tmp[2] = btcoexist->btc_read_4byte(btcoexist, 0xda8); + u32tmp[3] = btcoexist->btc_read_4byte(btcoexist, 0xcf0); + + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0xa5b); + u8tmp[1] = btcoexist->btc_read_1byte(btcoexist, 0xa5c); + + fa_ofdm = ((u32tmp[0]&0xffff0000) >> 16) + + ((u32tmp[1]&0xffff0000) >> 16) + + (u32tmp[1] & 0xffff) + + (u32tmp[2] & 0xffff) + + ((u32tmp[3]&0xffff0000) >> 16) + + (u32tmp[3] & 0xffff) ; + fa_cck = (u8tmp[0] << 8) + u8tmp[1]; + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = 0x%x/ 0x%x/ 0x%x", + "OFDM-CCA/OFDM-FA/CCK-FA", \ + u32tmp[0]&0xffff, fa_ofdm, fa_cck); + CL_PRINTF(cli_buf); + + u32tmp[0] = btcoexist->btc_read_4byte(btcoexist, 0x6c0); + u32tmp[1] = btcoexist->btc_read_4byte(btcoexist, 0x6c4); + u32tmp[2] = btcoexist->btc_read_4byte(btcoexist, 0x6c8); + u8tmp[0] = btcoexist->btc_read_1byte(btcoexist, 0x6cc); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, + "\r\n %-35s = 0x%x/ 0x%x/ 0x%x/ 0x%x", + "0x6c0/0x6c4/0x6c8/0x6cc(coexTable)", \ + u32tmp[0], u32tmp[1], u32tmp[2], u8tmp[0]); + CL_PRINTF(cli_buf); + + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", + "0x770(high-pri rx/tx)", + coex_sta->high_priority_rx, coex_sta->high_priority_tx); + CL_PRINTF(cli_buf); + CL_SPRINTF(cli_buf, BT_TMP_BUF_SIZE, "\r\n %-35s = %d/ %d", + "0x774(low-pri rx/tx)", coex_sta->low_priority_rx, + coex_sta->low_priority_tx); + CL_PRINTF(cli_buf); +#if(BT_AUTO_REPORT_ONLY_8723B_2ANT == 1) + halbtc8723b2ant_monitor_bt_ctr(btcoexist); +#endif + btcoexist->btc_disp_dbg_msg(btcoexist, + BTC_DBG_DISP_COEX_STATISTICS); +} + + +void ex_halbtc8723b2ant_ips_notify(struct btc_coexist *btcoexist, u8 type) +{ + if (BTC_IPS_ENTER == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], IPS ENTER notify\n"); + coex_sta->under_ips = true; + halbtc8723b2ant_wifioff_hwcfg(btcoexist); + halbtc8723b2ant_ignore_wlan_act(btcoexist, FORCE_EXEC, true); + halbtc8723b2ant_coex_alloff(btcoexist); + } else if (BTC_IPS_LEAVE == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], IPS LEAVE notify\n"); + coex_sta->under_ips = false; + ex_halbtc8723b2ant_init_hwconfig(btcoexist); + halbtc8723b2ant_init_coex_dm(btcoexist); + halbtc8723b2ant_query_bt_info(btcoexist); + } +} + +void ex_halbtc8723b2ant_lps_notify(struct btc_coexist *btcoexist, u8 type) +{ + if (BTC_LPS_ENABLE == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], LPS ENABLE notify\n"); + coex_sta->under_lps = true; + } else if (BTC_LPS_DISABLE == type) { + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], LPS DISABLE notify\n"); + coex_sta->under_lps = false; + } +} + +void ex_halbtc8723b2ant_scan_notify(struct btc_coexist *btcoexist, u8 type) +{ + if (BTC_SCAN_START == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], SCAN START notify\n"); + else if (BTC_SCAN_FINISH == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], SCAN FINISH notify\n"); +} + +void ex_halbtc8723b2ant_connect_notify(struct btc_coexist *btcoexist, u8 type) +{ + if (BTC_ASSOCIATE_START == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], CONNECT START notify\n"); + else if (BTC_ASSOCIATE_FINISH == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], CONNECT FINISH notify\n"); +} + +void ex_halbtc8723b2ant_media_status_notify(struct btc_coexist *btcoexist, + u8 type) +{ + u8 h2c_parameter[3] ={0}; + u32 wifi_bw; + u8 wifi_central_chnl; + + if (BTC_MEDIA_CONNECT == type) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], MEDIA connect notify\n"); + else + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], MEDIA disconnect notify\n"); + + /* only 2.4G we need to inform bt the chnl mask */ + btcoexist->btc_get(btcoexist, + BTC_GET_U1_WIFI_CENTRAL_CHNL, &wifi_central_chnl); + if ((BTC_MEDIA_CONNECT == type) && + (wifi_central_chnl <= 14)) { + h2c_parameter[0] = 0x1; + h2c_parameter[1] = wifi_central_chnl; + btcoexist->btc_get(btcoexist, + BTC_GET_U4_WIFI_BW, &wifi_bw); + if (BTC_WIFI_BW_HT40 == wifi_bw) + h2c_parameter[2] = 0x30; + else + h2c_parameter[2] = 0x20; + } + + coex_dm->wifi_chnl_info[0] = h2c_parameter[0]; + coex_dm->wifi_chnl_info[1] = h2c_parameter[1]; + coex_dm->wifi_chnl_info[2] = h2c_parameter[2]; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE_FW_EXEC, + "[BTCoex], FW write 0x66=0x%x\n", + h2c_parameter[0] << 16 | h2c_parameter[1] << 8 | + h2c_parameter[2]); + + btcoexist->btc_fill_h2c(btcoexist, 0x66, 3, h2c_parameter); +} + +void ex_halbtc8723b2ant_special_packet_notify(struct btc_coexist *btcoexist, + u8 type) +{ + if (type == BTC_PACKET_DHCP) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], DHCP Packet notify\n"); +} + +void ex_halbtc8723b2ant_bt_info_notify(struct btc_coexist *btcoexist, + u8 *tmpbuf, u8 length) +{ + u8 btInfo = 0; + u8 i, rsp_source = 0; + bool bt_busy = false, limited_dig = false; + bool wifi_connected = false; + + coex_sta->c2h_bt_info_req_sent = false; + + rsp_source = tmpbuf[0]&0xf; + if(rsp_source >= BT_INFO_SRC_8723B_2ANT_MAX) + rsp_source = BT_INFO_SRC_8723B_2ANT_WIFI_FW; + coex_sta->bt_info_c2h_cnt[rsp_source]++; + + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "[BTCoex], Bt info[%d], length=%d, hex data=[", + rsp_source, length); + for (i = 0; i < length; i++) { + coex_sta->bt_info_c2h[rsp_source][i] = tmpbuf[i]; + if (i == 1) + btInfo = tmpbuf[i]; + if (i == length-1) + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "0x%02x]\n", tmpbuf[i]); + else + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, + "0x%02x, ", tmpbuf[i]); + } + + if (btcoexist->manual_control) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), " + "return for Manual CTRL<===\n"); + return; + } + + if (BT_INFO_SRC_8723B_2ANT_WIFI_FW != rsp_source) { + coex_sta->bt_retry_cnt = /* [3:0]*/ + coex_sta->bt_info_c2h[rsp_source][2] & 0xf; + + coex_sta->bt_rssi = + coex_sta->bt_info_c2h[rsp_source][3] * 2 + 10; + + coex_sta->bt_info_ext = + coex_sta->bt_info_c2h[rsp_source][4]; + + /* Here we need to resend some wifi info to BT + because bt is reset and loss of the info.*/ + if ((coex_sta->bt_info_ext & BIT1)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT ext info bit1 check," + " send wifi BW&Chnl to BT!!\n"); + btcoexist->btc_get(btcoexist,BTC_GET_BL_WIFI_CONNECTED, + &wifi_connected); + if (wifi_connected) + ex_halbtc8723b2ant_media_status_notify( + btcoexist, + BTC_MEDIA_CONNECT); + else + ex_halbtc8723b2ant_media_status_notify( + btcoexist, + BTC_MEDIA_DISCONNECT); + } + + if ((coex_sta->bt_info_ext & BIT3)) { + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BT ext info bit3 check, " + "set BT NOT to ignore Wlan active!!\n"); + halbtc8723b2ant_ignore_wlan_act(btcoexist, FORCE_EXEC, + false); + } else { + /* BT already NOT ignore Wlan active, do nothing here.*/ + } +#if(BT_AUTO_REPORT_ONLY_8723B_2ANT == 0) + if ((coex_sta->bt_info_ext & BIT4)) { + /* BT auto report already enabled, do nothing*/ + } else { + halbtc8723b2ant_bt_auto_report(btcoexist, FORCE_EXEC, + true); + } +#endif + } + + /* check BIT2 first ==> check if bt is under inquiry or page scan*/ + if (btInfo & BT_INFO_8723B_2ANT_B_INQ_PAGE) + coex_sta->c2h_bt_inquiry_page = true; + else + coex_sta->c2h_bt_inquiry_page = false; + + /* set link exist status*/ + if (!(btInfo & BT_INFO_8723B_2ANT_B_CONNECTION)) { + coex_sta->bt_link_exist = false; + coex_sta->pan_exist = false; + coex_sta->a2dp_exist = false; + coex_sta->hid_exist = false; + coex_sta->sco_exist = false; + } else {// connection exists + coex_sta->bt_link_exist = true; + if (btInfo & BT_INFO_8723B_2ANT_B_FTP) + coex_sta->pan_exist = true; + else + coex_sta->pan_exist = false; + if (btInfo & BT_INFO_8723B_2ANT_B_A2DP) + coex_sta->a2dp_exist = true; + else + coex_sta->a2dp_exist = false; + if (btInfo & BT_INFO_8723B_2ANT_B_HID) + coex_sta->hid_exist = true; + else + coex_sta->hid_exist = false; + if (btInfo & BT_INFO_8723B_2ANT_B_SCO_ESCO) + coex_sta->sco_exist = true; + else + coex_sta->sco_exist = false; + } + + halbtc8723b2ant_update_bt_link_info(btcoexist); + + if (!(btInfo & BT_INFO_8723B_2ANT_B_CONNECTION)) { + coex_dm->bt_status = BT_8723B_2ANT_BT_STATUS_NON_CONNECTED_IDLE; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), " + "BT Non-Connected idle!!!\n"); + /* connection exists but no busy */ + } else if (btInfo == BT_INFO_8723B_2ANT_B_CONNECTION) { + coex_dm->bt_status = BT_8723B_2ANT_BT_STATUS_CONNECTED_IDLE; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), BT Connected-idle!!!\n"); + } else if ((btInfo & BT_INFO_8723B_2ANT_B_SCO_ESCO) || + (btInfo & BT_INFO_8723B_2ANT_B_SCO_BUSY)) { + coex_dm->bt_status = + BT_8723B_2ANT_BT_STATUS_SCO_BUSY; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), BT SCO busy!!!\n"); + } else if (btInfo&BT_INFO_8723B_2ANT_B_ACL_BUSY) { + coex_dm->bt_status = + BT_8723B_2ANT_BT_STATUS_ACL_BUSY; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), BT ACL busy!!!\n"); + } else { + coex_dm->bt_status = BT_8723B_2ANT_BT_STATUS_MAX; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], BtInfoNotify(), " + "BT Non-Defined state!!!\n"); + } + + if ((BT_8723B_2ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status) || + (BT_8723B_2ANT_BT_STATUS_SCO_BUSY == coex_dm->bt_status) || + (BT_8723B_2ANT_BT_STATUS_ACL_SCO_BUSY == coex_dm->bt_status)) { + bt_busy = true; + limited_dig = true; + } else { + bt_busy = false; + limited_dig = false; + } + + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_TRAFFIC_BUSY, &bt_busy); + + coex_dm->limited_dig = limited_dig; + btcoexist->btc_set(btcoexist, BTC_SET_BL_BT_LIMITED_DIG, &limited_dig); + + halbtc8723b2ant_run_coexist_mechanism(btcoexist); +} + +void ex_halbtc8723b2ant_halt_notify(struct btc_coexist *btcoexist) +{ + BTC_PRINT(BTC_MSG_INTERFACE, INTF_NOTIFY, "[BTCoex], Halt notify\n"); + + halbtc8723b2ant_wifioff_hwcfg(btcoexist); + halbtc8723b2ant_ignore_wlan_act(btcoexist, FORCE_EXEC, true); + ex_halbtc8723b2ant_media_status_notify(btcoexist, BTC_MEDIA_DISCONNECT); +} + +void ex_halbtc8723b2ant_periodical(struct btc_coexist *btcoexist) +{ + struct btc_board_info *board_info = &btcoexist->board_info; + struct btc_stack_info *stack_info = &btcoexist->stack_info; + static u8 dis_ver_info_cnt = 0; + u32 fw_ver = 0, bt_patch_ver = 0; + + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "[BTCoex], ==========================" + "Periodical===========================\n"); + + if (dis_ver_info_cnt <= 5) { + dis_ver_info_cnt += 1; + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], ****************************" + "************************************\n"); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], Ant PG Num/ Ant Mech/ " + "Ant Pos = %d/ %d/ %d\n", board_info->pg_ant_num, + board_info->btdm_ant_num, board_info->btdm_ant_pos); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], BT stack/ hci ext ver = %s / %d\n", + ((stack_info->profile_notified)? "Yes":"No"), + stack_info->hci_version); + btcoexist->btc_get(btcoexist, BTC_GET_U4_BT_PATCH_VER, + &bt_patch_ver); + btcoexist->btc_get(btcoexist, BTC_GET_U4_WIFI_FW_VER, &fw_ver); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], CoexVer/ fw_ver/ PatchVer = " + "%d_%x/ 0x%x/ 0x%x(%d)\n", + glcoex_ver_date_8723b_2ant, glcoex_ver_8723b_2ant, + fw_ver, bt_patch_ver, bt_patch_ver); + BTC_PRINT(BTC_MSG_INTERFACE, INTF_INIT, + "[BTCoex], *****************************" + "***********************************\n"); + } + +#if(BT_AUTO_REPORT_ONLY_8723B_2ANT == 0) + halbtc8723b2ant_query_bt_info(btcoexist); + halbtc8723b2ant_monitor_bt_ctr(btcoexist); + halbtc8723b2ant_monitor_bt_enable_disable(btcoexist); +#else + if (halbtc8723b2ant_is_wifi_status_changed(btcoexist) || + coex_dm->auto_tdma_adjust) + halbtc8723b2ant_run_coexist_mechanism(btcoexist); +#endif +} + + +#endif + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/halbtc8723b2ant.h +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/halbtc8723b2ant.h @@ -0,0 +1,145 @@ +/************************************************************************ + * The following is for 8723B 2Ant BT Co-exist definition + ************************************************************************/ +#define BT_AUTO_REPORT_ONLY_8723B_2ANT 1 + + +#define BT_INFO_8723B_2ANT_B_FTP BIT7 +#define BT_INFO_8723B_2ANT_B_A2DP BIT6 +#define BT_INFO_8723B_2ANT_B_HID BIT5 +#define BT_INFO_8723B_2ANT_B_SCO_BUSY BIT4 +#define BT_INFO_8723B_2ANT_B_ACL_BUSY BIT3 +#define BT_INFO_8723B_2ANT_B_INQ_PAGE BIT2 +#define BT_INFO_8723B_2ANT_B_SCO_ESCO BIT1 +#define BT_INFO_8723B_2ANT_B_CONNECTION BIT0 + +#define BTC_RSSI_COEX_THRESH_TOL_8723B_2ANT 2 + +typedef enum _BT_INFO_SRC_8723B_2ANT{ + BT_INFO_SRC_8723B_2ANT_WIFI_FW = 0x0, + BT_INFO_SRC_8723B_2ANT_BT_RSP = 0x1, + BT_INFO_SRC_8723B_2ANT_BT_ACTIVE_SEND = 0x2, + BT_INFO_SRC_8723B_2ANT_MAX +}BT_INFO_SRC_8723B_2ANT,*PBT_INFO_SRC_8723B_2ANT; + +typedef enum _BT_8723B_2ANT_BT_STATUS{ + BT_8723B_2ANT_BT_STATUS_NON_CONNECTED_IDLE = 0x0, + BT_8723B_2ANT_BT_STATUS_CONNECTED_IDLE = 0x1, + BT_8723B_2ANT_BT_STATUS_INQ_PAGE = 0x2, + BT_8723B_2ANT_BT_STATUS_ACL_BUSY = 0x3, + BT_8723B_2ANT_BT_STATUS_SCO_BUSY = 0x4, + BT_8723B_2ANT_BT_STATUS_ACL_SCO_BUSY = 0x5, + BT_8723B_2ANT_BT_STATUS_MAX +}BT_8723B_2ANT_BT_STATUS,*PBT_8723B_2ANT_BT_STATUS; + +typedef enum _BT_8723B_2ANT_COEX_ALGO{ + BT_8723B_2ANT_COEX_ALGO_UNDEFINED = 0x0, + BT_8723B_2ANT_COEX_ALGO_SCO = 0x1, + BT_8723B_2ANT_COEX_ALGO_HID = 0x2, + BT_8723B_2ANT_COEX_ALGO_A2DP = 0x3, + BT_8723B_2ANT_COEX_ALGO_A2DP_PANHS = 0x4, + BT_8723B_2ANT_COEX_ALGO_PANEDR = 0x5, + BT_8723B_2ANT_COEX_ALGO_PANHS = 0x6, + BT_8723B_2ANT_COEX_ALGO_PANEDR_A2DP = 0x7, + BT_8723B_2ANT_COEX_ALGO_PANEDR_HID = 0x8, + BT_8723B_2ANT_COEX_ALGO_HID_A2DP_PANEDR = 0x9, + BT_8723B_2ANT_COEX_ALGO_HID_A2DP = 0xa, + BT_8723B_2ANT_COEX_ALGO_MAX = 0xb, +}BT_8723B_2ANT_COEX_ALGO,*PBT_8723B_2ANT_COEX_ALGO; + +struct coex_dm_8723b_2ant{ + /* fw mechanism */ + bool pre_dec_bt_pwr; + bool cur_dec_bt_pwr; + u8 pre_fw_dac_swing_lvl; + u8 cur_fw_dac_swing_lvl; + bool cur_ignore_wlan_act; + bool pre_ignore_wlan_act; + u8 pre_ps_tdma; + u8 cur_ps_tdma; + u8 ps_tdma_para[5]; + u8 ps_tdma_du_adj_type; + bool reset_tdma_adjust; + bool auto_tdma_adjust; + bool pre_ps_tdma_on; + bool cur_ps_tdma_on; + bool pre_bt_auto_report; + bool cur_bt_auto_report; + + /* sw mechanism */ + bool pre_rf_rx_lpf_shrink; + bool cur_rf_rx_lpf_shrink; + u32 bt_rf0x1e_backup; + bool pre_low_penalty_ra; + bool cur_low_penalty_ra; + bool pre_dac_swing_on; + u32 pre_dac_swing_lvl; + bool cur_dac_swing_on; + u32 cur_dac_swing_lvl; + bool pre_adc_back_off; + bool cur_adc_back_off; + bool pre_agc_table_en; + bool cur_agc_table_en; + u32 pre_val0x6c0; + u32 cur_val0x6c0; + u32 pre_val0x6c4; + u32 cur_val0x6c4; + u32 pre_val0x6c8; + u32 cur_val0x6c8; + u8 pre_val0x6cc; + u8 cur_val0x6cc; + bool limited_dig; + + /* algorithm related */ + u8 pre_algorithm; + u8 cur_algorithm; + u8 bt_status; + u8 wifi_chnl_info[3]; + + bool need_recover_0x948; + u16 backup_0x948; +}; + +struct coex_sta_8723b_2ant{ + bool bt_link_exist; + bool sco_exist; + bool a2dp_exist; + bool hid_exist; + bool pan_exist; + + bool under_lps; + bool under_ips; + u32 high_priority_tx; + u32 high_priority_rx; + u32 low_priority_tx; + u32 low_priority_rx; + u8 bt_rssi; + u8 pre_bt_rssi_state; + u8 pre_wifi_rssi_state[4]; + bool c2h_bt_info_req_sent; + u8 bt_info_c2h[BT_INFO_SRC_8723B_2ANT_MAX][10]; + u32 bt_info_c2h_cnt[BT_INFO_SRC_8723B_2ANT_MAX]; + bool c2h_bt_inquiry_page; + u8 bt_retry_cnt; + u8 bt_info_ext; +}; + +/********************************************************************* + * The following is interface which will notify coex module. + *********************************************************************/ +void ex_halbtc8723b2ant_init_hwconfig(struct btc_coexist *btcoexist); +void ex_halbtc8723b2ant_init_coex_dm(struct btc_coexist *btcoexist); +void ex_halbtc8723b2ant_ips_notify(struct btc_coexist *btcoexist, u8 type); +void ex_halbtc8723b2ant_lps_notify(struct btc_coexist *btcoexist, u8 type); +void ex_halbtc8723b2ant_scan_notify(struct btc_coexist *btcoexist, u8 type); +void ex_halbtc8723b2ant_connect_notify(struct btc_coexist *btcoexist, u8 type); +void ex_halbtc8723b2ant_media_status_notify(struct btc_coexist *btcoexist, + u8 type); +void ex_halbtc8723b2ant_special_packet_notify(struct btc_coexist *btcoexist, + u8 type); +void ex_halbtc8723b2ant_bt_info_notify(struct btc_coexist *btcoexist, + u8 *tmpbuf, u8 length); +void ex_halbtc8723b2ant_halt_notify(struct btc_coexist *btcoexist); +void ex_halbtc8723b2ant_periodical(struct btc_coexist * btcoexist); +void ex_halbtc8723b2ant_display_coex_info(struct btc_coexist *btcoexist); + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/halbtcoutsrc.c +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/halbtcoutsrc.c @@ -0,0 +1,1181 @@ +/****************************************************************************** + * + * Copyright(c) 2007 - 2013 Realtek Corporation. All rights reserved. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * + ******************************************************************************/ + +#include "halbt_precomp.h" + +/*#if(BT_30_SUPPORT == 1)*/ +#if 1 +/*********************************************** + * Global variables + ***********************************************/ +const char *const bt_profile_string[]={ + "NONE", + "A2DP", + "PAN", + "HID", + "SCO", +}; + +const char *const bt_spec_string[]={ + "1.0b", + "1.1", + "1.2", + "2.0+EDR", + "2.1+EDR", + "3.0+HS", + "4.0", +}; + +const char *const bt_link_role_string[]={ + "Master", + "Slave", +}; + +const char *const h2c_state_string[]={ + "successful", + "h2c busy", + "rf off", + "fw not read", +}; + +const char *const io_state_string[]={ + "IO_STATUS_SUCCESS", + "IO_STATUS_FAIL_CANNOT_IO", + "IO_STATUS_FAIL_RF_OFF", + "IO_STATUS_FAIL_FW_READ_CLEAR_TIMEOUT", + "IO_STATUS_FAIL_WAIT_IO_EVENT_TIMEOUT", + "IO_STATUS_INVALID_LEN", + "IO_STATUS_IO_IDLE_QUEUE_EMPTY", + "IO_STATUS_IO_INSERT_WAIT_QUEUE_FAIL", + "IO_STATUS_UNKNOWN_FAIL", + "IO_STATUS_WRONG_LEVEL", + "IO_STATUS_H2C_STOPPED", +}; + +struct btc_coexist gl_bt_coexist; + +u32 btc_dbg_type[BTC_MSG_MAX]; +u8 btc_dbg_buf[100]; + +/*************************************************** + * Debug related function + ***************************************************/ +bool halbtc_is_bt_coexist_available(struct btc_coexist *btcoexist) +{ + if (!btcoexist->binded || NULL == btcoexist->adapter) + return false; + + return true; +} + +bool halbtc_is_wifi_busy(struct rtl_priv *rtlpriv) +{ + + if (rtlpriv->link_info.b_busytraffic) + return true; + else + return false; +} + + +void halbtc_dbg_init(void) +{ + u8 i; + + for (i = 0; i < BTC_MSG_MAX; i++) + btc_dbg_type[i] = 0; + + btc_dbg_type[BTC_MSG_INTERFACE] = \ +// INTF_INIT | +// INTF_NOTIFY | + 0; + + btc_dbg_type[BTC_MSG_ALGORITHM] = \ +// ALGO_BT_RSSI_STATE | +// ALGO_WIFI_RSSI_STATE | +// ALGO_BT_MONITOR | +// ALGO_TRACE | +// ALGO_TRACE_FW | +// ALGO_TRACE_FW_DETAIL | +// ALGO_TRACE_FW_EXEC | +// ALGO_TRACE_SW | +// ALGO_TRACE_SW_DETAIL | +// ALGO_TRACE_SW_EXEC | + 0; +} + +bool halbtc_is_hw_mailbox_exist(struct btc_coexist *btcoexist) +{ + return true; +} + +bool halbtc_is_bt40(struct rtl_priv *adapter) +{ + struct rtl_priv *rtlpriv = adapter; + struct rtl_phy *rtlphy = &(rtlpriv->phy); + bool is_ht40 = true; + enum ht_channel_width bw = rtlphy->current_chan_bw; + + + if (bw == HT_CHANNEL_WIDTH_20) + is_ht40 = false; + else if (bw == HT_CHANNEL_WIDTH_20_40) + is_ht40 = true; + + return is_ht40; +} + +bool halbtc_legacy(struct rtl_priv *adapter) +{ + struct rtl_priv *rtlpriv = adapter; + struct rtl_mac *mac = rtl_mac(rtlpriv); + + bool is_legacy = false; + + if ((mac->mode == WIRELESS_MODE_B) || (mac->mode == WIRELESS_MODE_B)) + is_legacy = true; + + return is_legacy; +} + +bool halbtc_is_wifi_uplink(struct rtl_priv *adapter) +{ + struct rtl_priv *rtlpriv = adapter; + + if (rtlpriv->link_info.b_tx_busy_traffic) + return true; + else + return false; +} + +u32 halbtc_get_wifi_bw(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv = + (struct rtl_priv *)btcoexist->adapter; + u32 wifi_bw = BTC_WIFI_BW_HT20; + + if (halbtc_is_bt40(rtlpriv)){ + wifi_bw = BTC_WIFI_BW_HT40; + } else { + if(halbtc_legacy(rtlpriv)) + wifi_bw = BTC_WIFI_BW_LEGACY; + else + wifi_bw = BTC_WIFI_BW_HT20; + } + return wifi_bw; +} + +u8 halbtc_get_wifi_central_chnl(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 chnl = 1; + + + if (rtlphy->current_channel != 0) + chnl = rtlphy->current_channel; + BTC_PRINT(BTC_MSG_ALGORITHM, ALGO_TRACE, + "halbtc_get_wifi_central_chnl:%d\n",chnl); + return chnl; +} + +void halbtc_leave_lps(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv; + struct rtl_ps_ctl *ppsc; + bool ap_enable = false; + + rtlpriv = btcoexist->adapter; + ppsc = rtl_psc(rtlpriv); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_AP_MODE_ENABLE, + &ap_enable); + + if (ap_enable) { + printk("halbtc_leave_lps()<--dont leave lps under AP mode\n"); + return; + } + + btcoexist->bt_info.bt_ctrl_lps = true; + btcoexist->bt_info.bt_lps_on = false; +} + +void halbtc_enter_lps(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv; + struct rtl_ps_ctl *ppsc; + bool ap_enable = false; + + rtlpriv = btcoexist->adapter; + ppsc = rtl_psc(rtlpriv); + + btcoexist->btc_get(btcoexist, BTC_GET_BL_WIFI_AP_MODE_ENABLE, + &ap_enable); + + if (ap_enable) { + printk("halbtc_enter_lps()<--dont enter lps under AP mode\n"); + return; + } + + btcoexist->bt_info.bt_ctrl_lps = true; + btcoexist->bt_info.bt_lps_on = false; +} + +void halbtc_normal_lps(struct btc_coexist *btcoexist) +{ + if (btcoexist->bt_info.bt_ctrl_lps) { + btcoexist->bt_info.bt_lps_on = false; + btcoexist->bt_info.bt_ctrl_lps = false; + } + +} + +void halbtc_leave_low_power(void) +{ +} + +void halbtc_nomal_low_power(void) +{ +} + +void halbtc_disable_low_power(void) +{ +} + +void halbtc_aggregation_check(void) +{ +} + + +u32 halbtc_get_bt_patch_version(struct btc_coexist *btcoexist) +{ + return 0; +} + +s32 halbtc_get_wifi_rssi(struct rtl_priv *adapter) +{ + struct rtl_priv *rtlpriv = adapter; + s32 undecorated_smoothed_pwdb = 0; + + if (rtlpriv->mac80211.link_state >= MAC80211_LINKED) + undecorated_smoothed_pwdb = + rtlpriv->dm.undecorated_smoothed_pwdb; + else /* associated entry pwdb */ + undecorated_smoothed_pwdb = + rtlpriv->dm.undecorated_smoothed_pwdb; + return undecorated_smoothed_pwdb; +} + +bool halbtc_get(void *void_btcoexist, u8 get_type, void *out_buf) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)void_btcoexist; + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_mac *mac = rtl_mac(rtlpriv); + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + bool *bool_tmp = (bool*)out_buf; + int *s32_tmp = (int*)out_buf; + u32 *u32_tmp = (u32*)out_buf; + u8 *u8_tmp = (u8*)out_buf; + bool tmp = false; + + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return false; + + + switch (get_type){ + case BTC_GET_BL_HS_OPERATION: + *bool_tmp = false; + break; + case BTC_GET_BL_HS_CONNECTING: + *bool_tmp = false; + break; + case BTC_GET_BL_WIFI_CONNECTED: + if (rtlpriv->mac80211.link_state >= MAC80211_LINKED) + tmp = true; + + *bool_tmp = tmp; + break; + case BTC_GET_BL_WIFI_BUSY: + if(halbtc_is_wifi_busy(rtlpriv)) + *bool_tmp = true; + else + *bool_tmp = false; + break; + case BTC_GET_BL_WIFI_SCAN: + if (mac->act_scanning == true) + *bool_tmp = true; + else + *bool_tmp = false; + break; + case BTC_GET_BL_WIFI_LINK: + if (mac->link_state == MAC80211_LINKING) + *bool_tmp = true; + else + *bool_tmp = false; + break; + case BTC_GET_BL_WIFI_ROAM: /*TODO*/ + if (mac->link_state == MAC80211_LINKING) + *bool_tmp = true; + else + *bool_tmp = false; + break; + case BTC_GET_BL_WIFI_4_WAY_PROGRESS: /*TODO*/ + *bool_tmp = false; + + break; + case BTC_GET_BL_WIFI_UNDER_5G: + *bool_tmp = false; /*TODO*/ + + case BTC_GET_BL_WIFI_DHCP: /*TODO*/ + break; + case BTC_GET_BL_WIFI_SOFTAP_IDLE: + *bool_tmp = true; + break; + case BTC_GET_BL_WIFI_SOFTAP_LINKING: + *bool_tmp = false; + break; + case BTC_GET_BL_WIFI_IN_EARLY_SUSPEND: + *bool_tmp = false; + break; + case BTC_GET_BL_WIFI_AP_MODE_ENABLE: + *bool_tmp = false; + break; + case BTC_GET_BL_WIFI_ENABLE_ENCRYPTION: + if (NO_ENCRYPTION == rtlpriv->sec.pairwise_enc_algorithm) + *bool_tmp = false; + else + *bool_tmp = true; + break; + case BTC_GET_BL_WIFI_UNDER_B_MODE: + *bool_tmp = false; /*TODO*/ + break; + case BTC_GET_BL_EXT_SWITCH: + *bool_tmp = false; + break; + case BTC_GET_S4_WIFI_RSSI: + *s32_tmp = halbtc_get_wifi_rssi(rtlpriv); + break; + case BTC_GET_S4_HS_RSSI: /*TODO*/ + *s32_tmp = halbtc_get_wifi_rssi(rtlpriv); + break; + case BTC_GET_U4_WIFI_BW: + *u32_tmp = halbtc_get_wifi_bw(btcoexist); + break; + case BTC_GET_U4_WIFI_TRAFFIC_DIRECTION: + if (halbtc_is_wifi_uplink(rtlpriv)) + *u32_tmp = BTC_WIFI_TRAFFIC_TX; + else + *u32_tmp = BTC_WIFI_TRAFFIC_RX; + break; + case BTC_GET_U4_WIFI_FW_VER: + *u32_tmp = rtlhal->fw_version; + break; + case BTC_GET_U4_BT_PATCH_VER: + *u32_tmp = halbtc_get_bt_patch_version(btcoexist); + break; + case BTC_GET_U1_WIFI_DOT11_CHNL: + *u8_tmp = rtlphy->current_channel; + break; + case BTC_GET_U1_WIFI_CENTRAL_CHNL: + *u8_tmp = halbtc_get_wifi_central_chnl(btcoexist); + break; + case BTC_GET_U1_WIFI_HS_CHNL: + *u8_tmp = 1;/* BT_OperateChnl(rtlpriv); */ + break; + case BTC_GET_U1_MAC_PHY_MODE: + *u8_tmp = BTC_MP_UNKNOWN; + break; + case BTC_GET_U1_AP_NUM: + /* driver don't know AP num in Linux, + * So, the return value here is not right */ + *u8_tmp = 1;/* pDefMgntInfo->NumBssDesc4Query; */ + break; + + /************* 1Ant **************/ + case BTC_GET_U1_LPS_MODE: + *u8_tmp = btcoexist->pwr_mode_val[0]; + break; + + default: + break; + } + + return true; +} + +bool halbtc_set(void *void_btcoexist, u8 set_type, void *in_buf) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)void_btcoexist; + bool *bool_tmp = (bool *)in_buf; + u8 *u8_tmp = (u8 *)in_buf; + u32 *u32_tmp = (u32 *)in_buf; + + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return false; + + switch (set_type) { + /* set some bool type variables. */ + case BTC_SET_BL_BT_DISABLE: + btcoexist->bt_info.bt_disabled = *bool_tmp; + break; + case BTC_SET_BL_BT_TRAFFIC_BUSY: + btcoexist->bt_info.bt_busy = *bool_tmp; + break; + case BTC_SET_BL_BT_LIMITED_DIG: + btcoexist->bt_info.limited_dig = *bool_tmp; + break; + case BTC_SET_BL_FORCE_TO_ROAM: + btcoexist->bt_info.force_to_roam = *bool_tmp; + break; + case BTC_SET_BL_TO_REJ_AP_AGG_PKT: + btcoexist->bt_info.reject_agg_pkt = *bool_tmp; + break; + case BTC_SET_BL_BT_CTRL_AGG_SIZE: + btcoexist->bt_info.b_bt_ctrl_buf_size = *bool_tmp; + break; + case BTC_SET_BL_INC_SCAN_DEV_NUM: + btcoexist->bt_info.increase_scan_dev_num = *bool_tmp; + break; + /* set some u1Byte type variables. */ + case BTC_SET_U1_RSSI_ADJ_VAL_FOR_AGC_TABLE_ON: + btcoexist->bt_info.rssi_adjust_for_agc_table_on = *u8_tmp; + break; + case BTC_SET_U1_AGG_BUF_SIZE: + btcoexist->bt_info.agg_buf_size = *u8_tmp; + break; + /* the following are some action which will be triggered */ + case BTC_SET_ACT_GET_BT_RSSI: + /*BTHCI_SendGetBtRssiEvent(rtlpriv);*/ + break; + case BTC_SET_ACT_AGGREGATE_CTRL: + halbtc_aggregation_check(); + break; + + /* 1Ant */ + case BTC_SET_U1_RSSI_ADJ_VAL_FOR_1ANT_COEX_TYPE: + btcoexist->bt_info.rssi_adjust_for_1ant_coex_type = *u8_tmp; + break; + case BTC_SET_UI_SCAN_SIG_COMPENSATION: + /* rtlpriv->mlmepriv.scan_compensation = *u8_tmp; */ + break; + case BTC_SET_U1_1ANT_LPS: + btcoexist->bt_info.lps_1ant = *u8_tmp; + break; + case BTC_SET_U1_1ANT_RPWM: + btcoexist->bt_info.rpwm_1ant = *u8_tmp; + break; + /* the following are some action which will be triggered */ + case BTC_SET_ACT_LEAVE_LPS: + halbtc_leave_lps(btcoexist); + break; + case BTC_SET_ACT_ENTER_LPS: + halbtc_enter_lps(btcoexist); + break; + case BTC_SET_ACT_NORMAL_LPS: + halbtc_normal_lps(btcoexist); + break; + case BTC_SET_ACT_DISABLE_LOW_POWER: + halbtc_disable_low_power(); + break; + case BTC_SET_ACT_UPDATE_ra_mask: + btcoexist->bt_info.ra_mask = *u32_tmp; + break; + case BTC_SET_ACT_SEND_MIMO_PS: + break; + case BTC_SET_ACT_INC_FORCE_EXEC_PWR_CMD_CNT: + btcoexist->bt_info.force_exec_pwr_cmd_cnt++; + break; + case BTC_SET_ACT_CTRL_BT_INFO: /*wait for 8812/8821*/ + break; + case BTC_SET_ACT_CTRL_BT_COEX: + break; + default: + break; + } + + return true; +} + +void halbtc_display_coex_statistics(struct btc_coexist *btcoexist) +{ +} + +void halbtc_display_bt_link_info(struct btc_coexist *btcoexist) +{ +} + +void halbtc_display_bt_fw_info(struct btc_coexist *btcoexist) +{ +} + +void halbtc_display_fw_pwr_mode_cmd(struct btc_coexist *btcoexist) +{ +} + +/************************************************************ + * IO related function + ************************************************************/ +u8 halbtc_read_1byte(void *bt_context, u32 reg_addr) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + return rtl_read_byte(rtlpriv, reg_addr); +} + + +u16 halbtc_read_2byte(void *bt_context, u32 reg_addr) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + return rtl_read_word(rtlpriv, reg_addr); +} + + +u32 halbtc_read_4byte(void *bt_context, u32 reg_addr) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + return rtl_read_dword(rtlpriv, reg_addr); +} + + +void halbtc_write_1byte(void *bt_context, u32 reg_addr, u8 data) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + rtl_write_byte(rtlpriv, reg_addr, data); +} + +void halbtc_bitmask_write_1byte(void *bt_context, u32 reg_addr, + u8 bit_mask, u8 data) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + u8 original_value, bit_shift = 0; + u8 i; + + if (bit_mask != MASKDWORD) {/*if not "double word" write*/ + original_value = rtl_read_byte(rtlpriv, reg_addr); + for (i=0; i<=7; i++) { + if((bit_mask>>i)&0x1) + break; + } + bit_shift = i; + data = (original_value & (~bit_mask)) | + ((data << bit_shift) & bit_mask); + } + rtl_write_byte(rtlpriv, reg_addr, data); +} + + +void halbtc_write_2byte(void *bt_context, u32 reg_addr, u16 data) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + rtl_write_word(rtlpriv, reg_addr, data); +} + + +void halbtc_write_4byte(void *bt_context, u32 reg_addr, u32 data) +{ + struct btc_coexist *btcoexist = + (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + rtl_write_dword(rtlpriv, reg_addr, data); +} + + +void halbtc_set_macreg(void *bt_context, u32 reg_addr, u32 bit_mask, u32 data) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + rtl_set_bbreg(rtlpriv->mac80211.hw, reg_addr, bit_mask, data); +} + + +u32 halbtc_get_macreg(void *bt_context, u32 reg_addr, u32 bit_mask) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + return rtl_get_bbreg(rtlpriv->mac80211.hw, reg_addr, bit_mask); +} + + +void halbtc_set_bbreg(void *bt_context, u32 reg_addr, u32 bit_mask, u32 data) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + rtl_set_bbreg(rtlpriv->mac80211.hw, reg_addr, bit_mask, data); +} + + +u32 halbtc_get_bbreg(void *bt_context, u32 reg_addr, u32 bit_mask) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + return rtl_get_bbreg(rtlpriv->mac80211.hw,reg_addr, bit_mask); +} + + +void halbtc_set_rfreg(void *bt_context, u8 rf_path, u32 reg_addr, + u32 bit_mask, u32 data) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + rtl_set_rfreg(rtlpriv->mac80211.hw, rf_path, reg_addr, bit_mask, data); +} + + +u32 halbtc_get_rfreg(void *bt_context, u8 rf_path, u32 reg_addr, u32 bit_mask) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + return rtl_get_rfreg(rtlpriv->mac80211.hw, rf_path, reg_addr, bit_mask); +} + + +void halbtc_fill_h2c_cmd(void *bt_context, u8 element_id, + u32 cmd_len, u8 *cmd_buf) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + struct rtl_priv *rtlpriv = btcoexist->adapter; + + rtlpriv->cfg->ops->fill_h2c_cmd(rtlpriv->mac80211.hw, element_id, + cmd_len, cmd_buf); +} + +void halbtc_display_dbg_msg(void *bt_context, u8 disp_type) +{ + struct btc_coexist *btcoexist = (struct btc_coexist *)bt_context; + switch (disp_type) { + case BTC_DBG_DISP_COEX_STATISTICS: + halbtc_display_coex_statistics(btcoexist); + break; + case BTC_DBG_DISP_BT_LINK_INFO: + halbtc_display_bt_link_info(btcoexist); + break; + case BTC_DBG_DISP_BT_FW_VER: + halbtc_display_bt_fw_info(btcoexist); + break; + case BTC_DBG_DISP_FW_PWR_MODE_CMD: + halbtc_display_fw_pwr_mode_cmd(btcoexist); + break; + default: + break; + } +} + +bool halbtc_under_ips(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_ps_ctl *ppsc = rtl_psc(rtlpriv); + enum rf_pwrstate rtstate; + + if (ppsc->b_inactiveps) { + rtstate = ppsc->rfpwr_state; + + if (rtstate != ERFON && + ppsc->rfoff_reason == RF_CHANGE_BY_IPS) { + + return true; + } + } + + return false; +} + +/***************************************************************** + * Extern functions called by other module + *****************************************************************/ +bool exhalbtc_initlize_variables(struct rtl_priv *adapter) +{ + struct btc_coexist *btcoexist = &gl_bt_coexist; + + btcoexist->statistics.cnt_bind++; + + halbtc_dbg_init(); + + if (btcoexist->binded) + return false; + else + btcoexist->binded = true; + +#if ( defined(CONFIG_PCI_HCI)) + btcoexist->chip_interface = BTC_INTF_PCI; +#elif ( defined(CONFIG_USB_HCI)) + btcoexist->chip_interface = BTC_INTF_USB; +#elif ( defined(CONFIG_SDIO_HCI)) + btcoexist->chip_interface = BTC_INTF_SDIO; +#elif ( defined(CONFIG_GSPI_HCI)) + btcoexist->chip_interface = BTC_INTF_GSPI; +#else + btcoexist->chip_interface = BTC_INTF_UNKNOWN; +#endif + + if (NULL == btcoexist->adapter) + btcoexist->adapter = adapter; + + btcoexist->stack_info.profile_notified = false; + + btcoexist->btc_read_1byte = halbtc_read_1byte; + btcoexist->btc_write_1byte = halbtc_write_1byte; + btcoexist->btc_write_1byte_bitmask = halbtc_bitmask_write_1byte; + btcoexist->btc_read_2byte = halbtc_read_2byte; + btcoexist->btc_write_2byte = halbtc_write_2byte; + btcoexist->btc_read_4byte = halbtc_read_4byte; + btcoexist->btc_write_4byte = halbtc_write_4byte; + + btcoexist->btc_set_bb_reg = halbtc_set_bbreg; + btcoexist->btc_get_bb_reg = halbtc_get_bbreg; + + btcoexist->btc_set_rf_reg = halbtc_set_rfreg; + btcoexist->btc_get_rf_reg = halbtc_get_rfreg; + + btcoexist->btc_fill_h2c = halbtc_fill_h2c_cmd; + btcoexist->btc_disp_dbg_msg = halbtc_display_dbg_msg; + + btcoexist->btc_get = halbtc_get; + btcoexist->btc_set = halbtc_set; + + btcoexist->cli_buf = &btc_dbg_buf[0]; + + btcoexist->bt_info.b_bt_ctrl_buf_size = false; + btcoexist->bt_info.agg_buf_size = 5; + + btcoexist->bt_info.increase_scan_dev_num = false; + return true; +} + +void exhalbtc_init_hw_config(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + + btcoexist->statistics.cnt_init_hw_config++; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) { + if (btcoexist->board_info.btdm_ant_num == 2) + ex_halbtc8723b2ant_init_hwconfig(btcoexist); + else if(btcoexist->board_info.btdm_ant_num == 1) + ex_halbtc8723b1ant_init_hwconfig(btcoexist); + } else if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192EE) { + ex_halbtc8192e2ant_init_hwconfig(btcoexist); + } + +} + +void exhalbtc_init_coex_dm(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + + btcoexist->statistics.cnt_init_coex_dm++; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) { + if (btcoexist->board_info.btdm_ant_num == 2) + ex_halbtc8723b2ant_init_coex_dm(btcoexist); + else if(btcoexist->board_info.btdm_ant_num == 1) + ex_halbtc8723b1ant_init_coex_dm(btcoexist); + } else if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192EE) { + ex_halbtc8192e2ant_init_coex_dm(btcoexist); + } + + btcoexist->initilized = true; +} + +void exhalbtc_ips_notify(struct btc_coexist *btcoexist, u8 type) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + u8 ips_type; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_ips_notify++; + if (btcoexist->manual_control) + return; + + if (ERFOFF == type) + ips_type = BTC_IPS_ENTER; + else + ips_type = BTC_IPS_LEAVE; + + halbtc_leave_low_power(); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) { + if (btcoexist->board_info.btdm_ant_num == 2) + ex_halbtc8723b2ant_ips_notify(btcoexist, ips_type); + else if(btcoexist->board_info.btdm_ant_num == 1) + ex_halbtc8723b1ant_ips_notify(btcoexist, ips_type); + } else if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192EE) { + ex_halbtc8192e2ant_ips_notify(btcoexist, ips_type); + } + + halbtc_nomal_low_power(); +} + +void exhalbtc_lps_notify(struct btc_coexist *btcoexist, u8 type) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + u8 lps_type; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_lps_notify++; + if (btcoexist->manual_control) + return; + + if (EACTIVE == type) + lps_type = BTC_LPS_DISABLE; + else + lps_type = BTC_LPS_ENABLE; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) { + if (btcoexist->board_info.btdm_ant_num == 2) + ex_halbtc8723b2ant_lps_notify(btcoexist, lps_type); + else if(btcoexist->board_info.btdm_ant_num == 1) + ex_halbtc8723b1ant_lps_notify(btcoexist, lps_type); + } else if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192EE) { + ex_halbtc8192e2ant_lps_notify(btcoexist, lps_type); + } +} + +void exhalbtc_scan_notify(struct btc_coexist *btcoexist, u8 type) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + u8 scan_type; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_scan_notify++; + if (btcoexist->manual_control) + return; + + if (type) + scan_type = BTC_SCAN_START; + else + scan_type = BTC_SCAN_FINISH; + + halbtc_leave_low_power(); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) { + if (btcoexist->board_info.btdm_ant_num == 2) + ex_halbtc8723b2ant_scan_notify(btcoexist, scan_type); + else if(btcoexist->board_info.btdm_ant_num == 1) + ex_halbtc8723b1ant_scan_notify(btcoexist, scan_type); + } else if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192EE) { + ex_halbtc8192e2ant_scan_notify(btcoexist, scan_type); + } + + halbtc_nomal_low_power(); +} + +void exhalbtc_connect_notify(struct btc_coexist *btcoexist, u8 action) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + u8 asso_type; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_connect_notify++; + if (btcoexist->manual_control) + return; + + if (action) + asso_type = BTC_ASSOCIATE_START; + else + asso_type = BTC_ASSOCIATE_FINISH; + + halbtc_leave_low_power(); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) { + if (btcoexist->board_info.btdm_ant_num == 2) + ex_halbtc8723b2ant_connect_notify(btcoexist, asso_type); + else if(btcoexist->board_info.btdm_ant_num == 1) + ex_halbtc8723b1ant_connect_notify(btcoexist, asso_type); + } else if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192EE) { + ex_halbtc8192e2ant_connect_notify(btcoexist, asso_type); + } + + halbtc_nomal_low_power(); +} + +void exhalbtc_mediastatus_notify(struct btc_coexist *btcoexist, + enum rt_media_status media_status) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + u8 status; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_media_status_notify++; + if (btcoexist->manual_control) + return; + + if (RT_MEDIA_CONNECT == media_status) + status = BTC_MEDIA_CONNECT; + else + status = BTC_MEDIA_DISCONNECT; + + halbtc_leave_low_power(); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) { + if (btcoexist->board_info.btdm_ant_num == 2) + ex_halbtc8723b2ant_media_status_notify(btcoexist, status); + else if(btcoexist->board_info.btdm_ant_num == 1) + ex_halbtc8723b1ant_media_status_notify(btcoexist, status); + } else if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192EE) { + ex_halbtc8192e2ant_media_status_notify(btcoexist, status); + } + + halbtc_nomal_low_power(); +} + +void exhalbtc_special_packet_notify(struct btc_coexist *btcoexist, u8 pkt_type) +{ + u8 packet_type; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_special_packet_notify++; + if (btcoexist->manual_control) + return; + + /*if(PACKET_DHCP == pkt_type)*/ + packet_type = BTC_PACKET_DHCP; + /*else if(PACKET_EAPOL == pkt_type) + packet_type = BTC_PACKET_EAPOL; + else + packet_type = BTC_PACKET_UNKNOWN;*/ + + halbtc_leave_low_power(); + + if (btcoexist->board_info.btdm_ant_num == 2) + ex_halbtc8723b2ant_special_packet_notify(btcoexist, + packet_type); + else if (btcoexist->board_info.btdm_ant_num == 1) + ex_halbtc8723b1ant_special_packet_notify(btcoexist, + packet_type); + + halbtc_nomal_low_power(); +} + +void exhalbtc_bt_info_notify(struct btc_coexist *btcoexist, + u8 *tmp_buf, u8 length) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_bt_info_notify++; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) { + if (btcoexist->board_info.btdm_ant_num == 2) + ex_halbtc8723b2ant_bt_info_notify(btcoexist, tmp_buf, length); + else if(btcoexist->board_info.btdm_ant_num == 1) + ex_halbtc8723b1ant_bt_info_notify(btcoexist, tmp_buf, length); + } else if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192EE) { + // ex_halbtc8192e2ant_bt_info_notify(btcoexist, tmp_buf, length); + } +} + +void exhalbtc_stack_operation_notify(struct btc_coexist *btcoexist, u8 type) +{ + u8 stack_op_type; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_stack_operation_notify++; + if (btcoexist->manual_control) + return; + + stack_op_type = BTC_STACK_OP_NONE; +} + +void exhalbtc_halt_notify(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) { + if (btcoexist->board_info.btdm_ant_num == 2) + ex_halbtc8723b2ant_halt_notify(btcoexist); + else if(btcoexist->board_info.btdm_ant_num == 1) + ex_halbtc8723b1ant_halt_notify(btcoexist); + } else if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192EE) { + ex_halbtc8192e2ant_halt_notify(btcoexist); + } +} + +void exhalbtc_pnp_notify(struct btc_coexist *btcoexist, u8 pnp_state) +{ + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; +} + +void exhalbtc_periodical(struct btc_coexist *btcoexist) +{ + struct rtl_priv *rtlpriv = btcoexist->adapter; + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_periodical++; + + halbtc_leave_low_power(); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) { + if (btcoexist->board_info.btdm_ant_num == 2) + ex_halbtc8723b2ant_periodical(btcoexist); + else if(btcoexist->board_info.btdm_ant_num == 1) + ex_halbtc8723b1ant_periodical(btcoexist); + } else if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192EE) { + ex_halbtc8192e2ant_periodical(btcoexist); + } + + halbtc_nomal_low_power(); +} + +void exhalbtc_dbg_control(struct btc_coexist *btcoexist, + u8 code, u8 len, u8 *data) +{ + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + btcoexist->statistics.cnt_dbg_ctrl++; +} + +void exhalbtc_stack_update_profile_info() +{ +} + +void exhalbtc_update_min_bt_rssi(char bt_rssi) +{ + struct btc_coexist *btcoexist = &gl_bt_coexist; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + + btcoexist->stack_info.min_bt_rssi = bt_rssi; +} + + +void exhalbtc_set_hci_version(u16 hci_version) +{ + struct btc_coexist *btcoexist = &gl_bt_coexist; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + + btcoexist->stack_info.hci_version = hci_version; +} + +void exhalbtc_set_bt_patch_version(u16 bt_hci_version, u16 bt_patch_version) +{ + struct btc_coexist *btcoexist = &gl_bt_coexist; + + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + + btcoexist->bt_info.bt_real_fw_ver = bt_patch_version; + btcoexist->bt_info.bt_hci_ver = bt_hci_version; +} + +void exhalbtc_set_bt_exist(bool bt_exist) +{ + gl_bt_coexist.board_info.bt_exist = bt_exist; +} + +void exhalbtc_set_chip_type(u8 chip_type) +{ + switch (chip_type) { + default: + case BT_2WIRE: + case BT_ISSC_3WIRE: + case BT_ACCEL: + case BT_RTL8756: + gl_bt_coexist.board_info.bt_chip_type = BTC_CHIP_UNDEF; + break; + case BT_CSR_BC4: + gl_bt_coexist.board_info.bt_chip_type = BTC_CHIP_CSR_BC4; + break; + case BT_CSR_BC8: + gl_bt_coexist.board_info.bt_chip_type = BTC_CHIP_CSR_BC8; + break; + case BT_RTL8723A: + gl_bt_coexist.board_info.bt_chip_type = BTC_CHIP_RTL8723A; + break; + case BT_RTL8821A: + gl_bt_coexist.board_info.bt_chip_type = BTC_CHIP_RTL8821; + break; + case BT_RTL8723B: + gl_bt_coexist.board_info.bt_chip_type = BTC_CHIP_RTL8723B; + break; + } +} + +void exhalbtc_set_ant_num(u8 type, u8 ant_num) +{ + if (BT_COEX_ANT_TYPE_PG == type) { + gl_bt_coexist.board_info.pg_ant_num = ant_num; + gl_bt_coexist.board_info.btdm_ant_num = ant_num; + } else if (BT_COEX_ANT_TYPE_ANTDIV == type) { + gl_bt_coexist.board_info.btdm_ant_num = ant_num; + } +} + +void exhalbtc_display_bt_coex_info(struct btc_coexist *btcoexist) +{ + if (!halbtc_is_bt_coexist_available(btcoexist)) + return; + + if (btcoexist->board_info.btdm_ant_num == 2) + ex_halbtc8723b2ant_display_coex_info(btcoexist); + else if (btcoexist->board_info.btdm_ant_num == 1) + ex_halbtc8723b1ant_display_coex_info(btcoexist); +} + +#endif + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/halbtcoutsrc.h +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/halbtcoutsrc.h @@ -0,0 +1,549 @@ +#ifndef __HALBTC_OUT_SRC_H__ +#define __HALBTC_OUT_SRC_H__ + +#include "../wifi.h" + +#define NORMAL_EXEC false +#define FORCE_EXEC true + +#define BTC_RF_A RF90_PATH_A +#define BTC_RF_B RF90_PATH_B +#define BTC_RF_C RF90_PATH_C +#define BTC_RF_D RF90_PATH_D + +#define BTC_SMSP SINGLEMAC_SINGLEPHY +#define BTC_DMDP DUALMAC_DUALPHY +#define BTC_DMSP DUALMAC_SINGLEPHY +#define BTC_MP_UNKNOWN 0xff + +#define IN +#define OUT + +#define BT_TMP_BUF_SIZE 100 + +#define BT_COEX_ANT_TYPE_PG 0 +#define BT_COEX_ANT_TYPE_ANTDIV 1 +#define BT_COEX_ANT_TYPE_DETECTED 2 + +#define BTC_MIMO_PS_STATIC 0 +#define BTC_MIMO_PS_DYNAMIC 1 + +#define BTC_RATE_DISABLE 0 +#define BTC_RATE_ENABLE 1 + +/* single Antenna definition */ +#define BTC_ANT_PATH_WIFI 0 +#define BTC_ANT_PATH_BT 1 +#define BTC_ANT_PATH_PTA 2 +/* dual Antenna definition */ +#define BTC_ANT_WIFI_AT_MAIN 0 +#define BTC_ANT_WIFI_AT_AUX 1 +/* coupler Antenna definition */ +#define BTC_ANT_WIFI_AT_CPL_MAIN 0 +#define BTC_ANT_WIFI_AT_CPL_AUX 1 + +enum btc_chip_interface{ + BTC_INTF_UNKNOWN = 0, + BTC_INTF_PCI = 1, + BTC_INTF_USB = 2, + BTC_INTF_SDIO = 3, + BTC_INTF_GSPI = 4, + BTC_INTF_MAX +}; + +enum btc_chip_type{ + BTC_CHIP_UNDEF = 0, + BTC_CHIP_CSR_BC4 = 1, + BTC_CHIP_CSR_BC8 = 2, + BTC_CHIP_RTL8723A = 3, + BTC_CHIP_RTL8821 = 4, + BTC_CHIP_RTL8723B = 5, + BTC_CHIP_MAX +}; + +enum btc_msg_type{ + BTC_MSG_INTERFACE = 0x0, + BTC_MSG_ALGORITHM = 0x1, + BTC_MSG_MAX +}; + +extern u32 btc_dbg_type[]; + +/* following is for BTC_MSG_INTERFACE */ +#define INTF_INIT BIT0 +#define INTF_NOTIFY BIT2 + +/* following is for BTC_ALGORITHM */ +#define ALGO_BT_RSSI_STATE BIT0 +#define ALGO_WIFI_RSSI_STATE BIT1 +#define ALGO_BT_MONITOR BIT2 +#define ALGO_TRACE BIT3 +#define ALGO_TRACE_FW BIT4 +#define ALGO_TRACE_FW_DETAIL BIT5 +#define ALGO_TRACE_FW_EXEC BIT6 +#define ALGO_TRACE_SW BIT7 +#define ALGO_TRACE_SW_DETAIL BIT8 +#define ALGO_TRACE_SW_EXEC BIT9 + + + +#define CL_SPRINTF snprintf +#define CL_PRINTF printk + +#define BTC_PRINT(dbgtype, dbgflag, printstr, ...) \ + do { \ + if (unlikely(btc_dbg_type[dbgtype] & dbgflag)) {\ + printk(printstr, ##__VA_ARGS__); \ + } \ + } while(0) + +#define BTC_PRINT_F(dbgtype, dbgflag, printstr, ...) \ + do { \ + if (unlikely(btc_dbg_type[dbgtype] & dbgflag)) {\ + printk(KERN_DEBUG "%s: ", __func__); \ + printk(printstr, ##__VA_ARGS__); \ + } \ + } while(0) + +#define BTC_PRINT_ADDR(dbgtype, dbgflag, printstr, _ptr) \ + do { \ + if(unlikely(btc_dbg_type[dbgtype] & dbgflag)) { \ + int __i; \ + u8* __ptr = (u8*)_Ptr; \ + printk printstr; \ + for( __i = 0; __i < 6; __i++ ) \ + printk("%02X%s", __ptr[__i], (__i==5)?"":"-");\ + printk(KERN_DEBUG "\n"); \ + }\ + } while(0) + +#define BTC_PRINT_DATA(dbgtype, dbgflag, _titlestring, _hexdata, _hexdatalen) \ + do { \ + if(unlikely(btc_dbg_type[dbgtype] & dbgflag) ) { \ + int __i; \ + u8 *__ptr = (u8*)_hexdata; \ + printk(_titlestring); \ + for( __i = 0; __i < (int)_hexdatalen; __i++ ) { \ + printk("%02X%s", __ptr[__i], (((__i + 1) % 4) \ + == 0)?" ":" ");\ + if (((__i + 1) % 16) == 0) \ + printk("\n"); \ + } \ + printk(KERN_DEBUG "\n"); \ + } \ + } while(0) + + +#define BTC_RSSI_HIGH(_rssi_) \ + ((_rssi_==BTC_RSSI_STATE_HIGH || _rssi_==BTC_RSSI_STATE_STAY_HIGH) ? \ + true : false) + +#define BTC_RSSI_MEDIUM(_rssi_) \ + ((_rssi_==BTC_RSSI_STATE_MEDIUM || _rssi_==BTC_RSSI_STATE_STAY_MEDIUM) \ + ? true : false) + +#define BTC_RSSI_LOW(_rssi_) \ + ((_rssi_==BTC_RSSI_STATE_LOW || _rssi_==BTC_RSSI_STATE_STAY_LOW) ? \ + true : false) + + +enum btc_power_save_type { + BTC_PS_WIFI_NATIVE = 0, + BTC_PS_LPS_ON = 1, + BTC_PS_LPS_OFF = 2, + BTC_PS_LPS_MAX +}; + +struct btc_board_info { + /* The following is some board information */ + u8 bt_chip_type; + u8 pg_ant_num; /* pg ant number */ + u8 btdm_ant_num; /* ant number for btdm */ + u8 btdm_ant_pos; + bool bt_exist; +}; + +enum btc_dbg_opcode{ + BTC_DBG_SET_COEX_NORMAL = 0x0, + BTC_DBG_SET_COEX_WIFI_ONLY = 0x1, + BTC_DBG_SET_COEX_BT_ONLY = 0x2, + BTC_DBG_MAX +}; + +enum btc_rssi_state{ + BTC_RSSI_STATE_HIGH = 0x0, + BTC_RSSI_STATE_MEDIUM = 0x1, + BTC_RSSI_STATE_LOW = 0x2, + BTC_RSSI_STATE_STAY_HIGH = 0x3, + BTC_RSSI_STATE_STAY_MEDIUM = 0x4, + BTC_RSSI_STATE_STAY_LOW = 0x5, + BTC_RSSI_MAX +}; + +enum btc_wifi_role{ + BTC_ROLE_STATION = 0x0, + BTC_ROLE_AP = 0x1, + BTC_ROLE_IBSS = 0x2, + BTC_ROLE_HS_MODE = 0x3, + BTC_ROLE_MAX +}; + +enum btc_wifi_bw_mode{ + BTC_WIFI_BW_LEGACY = 0x0, + BTC_WIFI_BW_HT20 = 0x1, + BTC_WIFI_BW_HT40 = 0x2, + BTC_WIFI_BW_MAX +}; + +enum btc_wifi_traffic_dir{ + BTC_WIFI_TRAFFIC_TX = 0x0, + BTC_WIFI_TRAFFIC_RX = 0x1, + BTC_WIFI_TRAFFIC_MAX +}; + +enum btc_wifi_pnp{ + BTC_WIFI_PNP_WAKE_UP = 0x0, + BTC_WIFI_PNP_SLEEP = 0x1, + BTC_WIFI_PNP_MAX +}; + + +enum btc_get_type{ + /* type bool */ + BTC_GET_BL_HS_OPERATION, + BTC_GET_BL_HS_CONNECTING, + BTC_GET_BL_WIFI_CONNECTED, + BTC_GET_BL_WIFI_BUSY, + BTC_GET_BL_WIFI_SCAN, + BTC_GET_BL_WIFI_LINK, + BTC_GET_BL_WIFI_DHCP, + BTC_GET_BL_WIFI_SOFTAP_IDLE, + BTC_GET_BL_WIFI_SOFTAP_LINKING, + BTC_GET_BL_WIFI_IN_EARLY_SUSPEND, + BTC_GET_BL_WIFI_ROAM, + BTC_GET_BL_WIFI_4_WAY_PROGRESS, + BTC_GET_BL_WIFI_UNDER_5G, + BTC_GET_BL_WIFI_AP_MODE_ENABLE, + BTC_GET_BL_WIFI_ENABLE_ENCRYPTION, + BTC_GET_BL_WIFI_UNDER_B_MODE, + BTC_GET_BL_EXT_SWITCH, + + /* type s4Byte */ + BTC_GET_S4_WIFI_RSSI, + BTC_GET_S4_HS_RSSI, + + /* type u32 */ + BTC_GET_U4_WIFI_BW, + BTC_GET_U4_WIFI_TRAFFIC_DIRECTION, + BTC_GET_U4_WIFI_FW_VER, + BTC_GET_U4_BT_PATCH_VER, + + /* type u1Byte */ + BTC_GET_U1_WIFI_DOT11_CHNL, + BTC_GET_U1_WIFI_CENTRAL_CHNL, + BTC_GET_U1_WIFI_HS_CHNL, + BTC_GET_U1_MAC_PHY_MODE, + BTC_GET_U1_AP_NUM, + + /* for 1Ant */ + BTC_GET_U1_LPS_MODE, + BTC_GET_BL_BT_SCO_BUSY, + + /* for test mode */ + BTC_GET_DRIVER_TEST_CFG, +#if 0 + BTC_GET_U1_LPS, + BTC_GET_U1_RPWM, +#endif + BTC_GET_MAX +}; + + +enum btc_set_type{ + /* type bool */ + BTC_SET_BL_BT_DISABLE, + BTC_SET_BL_BT_TRAFFIC_BUSY, + BTC_SET_BL_BT_LIMITED_DIG, + BTC_SET_BL_FORCE_TO_ROAM, + BTC_SET_BL_TO_REJ_AP_AGG_PKT, + BTC_SET_BL_BT_CTRL_AGG_SIZE, + BTC_SET_BL_INC_SCAN_DEV_NUM, + + /* type u1Byte */ + BTC_SET_U1_RSSI_ADJ_VAL_FOR_AGC_TABLE_ON, + BTC_SET_U1_RSSI_ADJ_VAL_FOR_1ANT_COEX_TYPE, + BTC_SET_UI_SCAN_SIG_COMPENSATION, + BTC_SET_U1_AGG_BUF_SIZE, + + /* type trigger some action */ + BTC_SET_ACT_GET_BT_RSSI, + BTC_SET_ACT_AGGREGATE_CTRL, + + /********* for 1Ant **********/ + /* type bool */ + BTC_SET_BL_BT_SCO_BUSY, + /* type u1Byte */ + BTC_SET_U1_1ANT_LPS, + BTC_SET_U1_1ANT_RPWM, + /* type trigger some action */ + BTC_SET_ACT_LEAVE_LPS, + BTC_SET_ACT_ENTER_LPS, + BTC_SET_ACT_NORMAL_LPS, + BTC_SET_ACT_INC_FORCE_EXEC_PWR_CMD_CNT, + BTC_SET_ACT_DISABLE_LOW_POWER, + BTC_SET_ACT_UPDATE_ra_mask, + BTC_SET_ACT_SEND_MIMO_PS, + /* BT Coex related */ + BTC_SET_ACT_CTRL_BT_INFO, + BTC_SET_ACT_CTRL_BT_COEX, + /***************************/ + BTC_SET_MAX +}; + +enum btc_dbg_disp_type{ + BTC_DBG_DISP_COEX_STATISTICS = 0x0, + BTC_DBG_DISP_BT_LINK_INFO = 0x1, + BTC_DBG_DISP_BT_FW_VER = 0x2, + BTC_DBG_DISP_FW_PWR_MODE_CMD = 0x3, + BTC_DBG_DISP_MAX +}; + +enum btc_notify_type_ips{ + BTC_IPS_LEAVE = 0x0, + BTC_IPS_ENTER = 0x1, + BTC_IPS_MAX +}; + +enum btc_notify_type_lps{ + BTC_LPS_DISABLE = 0x0, + BTC_LPS_ENABLE = 0x1, + BTC_LPS_MAX +}; + +enum btc_notify_type_scan{ + BTC_SCAN_FINISH = 0x0, + BTC_SCAN_START = 0x1, + BTC_SCAN_MAX +}; + +enum btc_notify_type_associate{ + BTC_ASSOCIATE_FINISH = 0x0, + BTC_ASSOCIATE_START = 0x1, + BTC_ASSOCIATE_MAX +}; + +enum btc_notify_type_media_status{ + BTC_MEDIA_DISCONNECT = 0x0, + BTC_MEDIA_CONNECT = 0x1, + BTC_MEDIA_MAX +}; + +enum btc_notify_type_special_packet{ + BTC_PACKET_UNKNOWN = 0x0, + BTC_PACKET_DHCP = 0x1, + BTC_PACKET_ARP = 0x2, + BTC_PACKET_EAPOL = 0x3, + BTC_PACKET_MAX +}; + +enum btc_notify_type_stack_operation{ + BTC_STACK_OP_NONE = 0x0, + BTC_STACK_OP_INQ_PAGE_PAIR_START = 0x1, + BTC_STACK_OP_INQ_PAGE_PAIR_FINISH = 0x2, + BTC_STACK_OP_MAX +}; + + +typedef u8 (*bfp_btc_r1)(void *btc_context, u32 reg_addr); + +typedef u16 (*bfp_btc_r2)(void *btc_context, u32 reg_addr); + +typedef u32 (*bfp_btc_r4)(void *btc_context, u32 reg_addr); + +typedef void (*bfp_btc_w1)(void *btc_context, u32 reg_addr, u8 data); + +typedef void (*bfp_btc_w1_bit_mak)(void *btc_context, u32 reg_addr, + u8 bit_mask, u8 data1b); + +typedef void (*bfp_btc_w2)(void *btc_context, u32 reg_addr, u16 data); + +typedef void (*bfp_btc_w4)(void *btc_context, u32 reg_addr, u32 data); + +typedef void (*bfp_btc_wr_1byte_bit_mask)(void *btc_context, u32 reg_addr, + u8 bit_mask, u8 data); + +typedef void (*bfp_btc_set_bb_reg)(void *btc_context, u32 reg_addr, + u32 bit_mask, u32 data); + +typedef u32 (*bfp_btc_get_bb_reg)(void *btc_context, u32 reg_addr, + u32 bit_mask); + +typedef void (*bfp_btc_set_rf_reg)(void *btc_context, u8 rf_path, u32 reg_addr, + u32 bit_mask, u32 data); + +typedef u32 (*bfp_btc_get_rf_reg)(void *btc_context, u8 rf_path, + u32 reg_addr, u32 bit_mask); + +typedef void (*bfp_btc_fill_h2c)(void *btc_context, u8 element_id, + u32 cmd_len, u8 *cmd_buffer); + +typedef bool (*bfp_btc_get)(void *btcoexist, u8 get_type, void *out_buf); + +typedef bool (*bfp_btc_set)(void *btcoexist, u8 set_type, void *in_buf); + +typedef void (*bfp_btc_disp_dbg_msg)(void *btcoexist, u8 disp_type); + +struct btc_bt_info { + bool bt_disabled; + u8 rssi_adjust_for_agc_table_on; + u8 rssi_adjust_for_1ant_coex_type; + bool bt_busy; + u8 agg_buf_size; + bool limited_dig; + bool reject_agg_pkt; + bool b_bt_ctrl_buf_size; + bool increase_scan_dev_num; + u16 bt_hci_ver; + u16 bt_real_fw_ver; + u8 bt_fw_ver; + + /* the following is for 1Ant solution */ + bool bt_ctrl_lps; + bool bt_pwr_save_mode; + bool bt_lps_on; + bool force_to_roam; + u8 force_exec_pwr_cmd_cnt; + u8 lps_1ant; + u8 rpwm_1ant; + u32 ra_mask; +}; + +struct btc_stack_info { + bool profile_notified; + u16 hci_version; /* stack hci version */ + u8 num_of_link; + bool bt_link_exist; + bool sco_exist; + bool acl_exist; + bool a2dp_exist; + bool hid_exist; + u8 num_of_hid; + bool pan_exist; + bool unknown_acl_exist; + char min_bt_rssi; +}; + +struct btc_statistics { + u32 cnt_bind; + u32 cnt_init_hw_config; + u32 cnt_init_coex_dm; + u32 cnt_ips_notify; + u32 cnt_lps_notify; + u32 cnt_scan_notify; + u32 cnt_connect_notify; + u32 cnt_media_status_notify; + u32 cnt_special_packet_notify; + u32 cnt_bt_info_notify; + u32 cnt_periodical; + u32 cnt_stack_operation_notify; + u32 cnt_dbg_ctrl; +}; + +struct btc_bt_link_info { + bool bt_link_exist; + bool sco_exist; + bool sco_only; + bool a2dp_exist; + bool a2dp_only; + bool hid_exist; + bool hid_only; + bool pan_exist; + bool pan_only; +}; + +enum btc_antenna_pos { + BTC_ANTENNA_AT_MAIN_PORT = 0x1, + BTC_ANTENNA_AT_AUX_PORT = 0x2, +}; + +struct btc_coexist { + /* make sure only one adapter can bind the data context */ + bool binded; + /* default adapter */ + void *adapter; + struct btc_board_info board_info; + /* some bt info referenced by non-bt module */ + struct btc_bt_info bt_info; + struct btc_stack_info stack_info; + enum btc_chip_interface chip_interface; + struct btc_bt_link_info bt_link_info; + + bool initilized; + bool stop_coex_dm; + bool manual_control; + u8 *cli_buf; + struct btc_statistics statistics; + u8 pwr_mode_val[10]; + + /* function pointers + * io related */ + bfp_btc_r1 btc_read_1byte; + bfp_btc_w1 btc_write_1byte; + bfp_btc_w1_bit_mak btc_write_1byte_bitmask; + bfp_btc_r2 btc_read_2byte; + bfp_btc_w2 btc_write_2byte; + bfp_btc_r4 btc_read_4byte; + bfp_btc_w4 btc_write_4byte; + + bfp_btc_set_bb_reg btc_set_bb_reg; + bfp_btc_get_bb_reg btc_get_bb_reg; + + + bfp_btc_set_rf_reg btc_set_rf_reg; + bfp_btc_get_rf_reg btc_get_rf_reg; + + + bfp_btc_fill_h2c btc_fill_h2c; + + bfp_btc_disp_dbg_msg btc_disp_dbg_msg; + + bfp_btc_get btc_get; + bfp_btc_set btc_set; +}; + +bool halbtc_is_wifi_uplink(struct rtl_priv *adapter); + + +extern struct btc_coexist gl_bt_coexist; + +bool exhalbtc_initlize_variables(struct rtl_priv* adapter); +void exhalbtc_init_hw_config(struct btc_coexist *btcoexist); +void exhalbtc_init_coex_dm(struct btc_coexist *btcoexist); +void exhalbtc_ips_notify(struct btc_coexist *btcoexist, u8 type); +void exhalbtc_lps_notify(struct btc_coexist *btcoexist, u8 type); +void exhalbtc_scan_notify(struct btc_coexist *btcoexist, u8 type); +void exhalbtc_connect_notify(struct btc_coexist *btcoexist, u8 action); +void exhalbtc_mediastatus_notify(struct btc_coexist *btcoexist, + enum rt_media_status media_status); +void exhalbtc_special_packet_notify(struct btc_coexist *btcoexist, u8 pkt_type); +void exhalbtc_bt_info_notify(struct btc_coexist *btcoexist, u8 *tmp_buf, + u8 length); +void exhalbtc_stack_operation_notify(struct btc_coexist *btcoexist, u8 type); +void exhalbtc_halt_notify(struct btc_coexist *btcoexist); +void exhalbtc_pnp_notify(struct btc_coexist *btcoexist, u8 pnp_state); +void exhalbtc_periodical(struct btc_coexist *btcoexist); +void exhalbtc_dbg_control(struct btc_coexist *btcoexist, u8 code, u8 len, + u8 *data); +void exhalbtc_stack_update_profile_info(void); +void exhalbtc_set_hci_version(u16 hci_version); +void exhalbtc_set_bt_patch_version(u16 bt_hci_version, u16 bt_patch_version); +void exhalbtc_update_min_bt_rssi(char bt_rssi); +void exhalbtc_set_bt_exist(bool bt_exist); +void exhalbtc_set_chip_type(u8 chip_type); +void exhalbtc_set_ant_num(u8 type, u8 ant_num); +void exhalbtc_display_bt_coex_info(struct btc_coexist *btcoexist); +void exhalbtc_signal_compensation(struct btc_coexist *btcoexist, + u8 *rssi_wifi, u8 *rssi_bt); +void exhalbtc_lps_leave(struct btc_coexist *btcoexist); +void exhalbtc_low_wifi_traffic_notify(struct btc_coexist *btcoexist); +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/rtl_btc.c +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/rtl_btc.c @@ -0,0 +1,236 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ +#include +#include + +#include "rtl_btc.h" +#include "halbt_precomp.h" + +struct rtl_btc_ops rtl_btc_operation ={ + .btc_init_variables = rtl_btc_init_variables, + .btc_init_hal_vars = rtl_btc_init_hal_vars, + .btc_init_hw_config = rtl_btc_init_hw_config, + .btc_ips_notify = rtl_btc_ips_notify, + .btc_scan_notify = rtl_btc_scan_notify, + .btc_connect_notify = rtl_btc_connect_notify, + .btc_mediastatus_notify = rtl_btc_mediastatus_notify, + .btc_periodical = rtl_btc_periodical, + .btc_halt_notify = rtl_btc_halt_notify, + .btc_btinfo_notify = rtl_btc_btinfo_notify, + .btc_is_limited_dig = rtl_btc_is_limited_dig, + .btc_is_disable_edca_turbo = rtl_btc_is_disable_edca_turbo, + .btc_is_bt_disabled = rtl_btc_is_bt_disabled, +}; + + +void rtl_btc_init_variables(struct rtl_priv *rtlpriv) +{ + + exhalbtc_initlize_variables(rtlpriv); +} + +void rtl_btc_init_hal_vars(struct rtl_priv *rtlpriv) +{ + u8 ant_num; + u8 bt_exist; + u8 bt_type; + ant_num = rtl_get_hwpg_ant_num(rtlpriv); + RT_TRACE(COMP_INIT, DBG_DMESG, ("%s, antNum is %d\n", __func__, ant_num)); + + bt_exist = rtl_get_hwpg_bt_exist(rtlpriv); + RT_TRACE(COMP_INIT, DBG_DMESG, ("%s, bt_exist is %d\n", __func__, bt_exist)); + exhalbtc_set_bt_exist(bt_exist); + + bt_type = rtl_get_hwpg_bt_type(rtlpriv); + RT_TRACE(COMP_INIT, DBG_DMESG, ("%s, bt_type is %d\n", __func__, bt_type)); + exhalbtc_set_chip_type(bt_type); + + exhalbtc_set_ant_num(BT_COEX_ANT_TYPE_PG, ant_num); + +} + + +void rtl_btc_init_hw_config(struct rtl_priv *rtlpriv) +{ + exhalbtc_init_hw_config(&gl_bt_coexist); + exhalbtc_init_coex_dm(&gl_bt_coexist); +} + + +void rtl_btc_ips_notify(struct rtl_priv *rtlpriv, u8 type) +{ + exhalbtc_ips_notify(&gl_bt_coexist, type); +} + + +void rtl_btc_scan_notify(struct rtl_priv *rtlpriv, u8 scantype) +{ + exhalbtc_scan_notify(&gl_bt_coexist, scantype); +} + + +void rtl_btc_connect_notify(struct rtl_priv *rtlpriv, u8 action) +{ + exhalbtc_connect_notify(&gl_bt_coexist, action); +} + + +void rtl_btc_mediastatus_notify(struct rtl_priv *rtlpriv, enum rt_media_status mstatus) +{ + exhalbtc_mediastatus_notify(&gl_bt_coexist, mstatus); +} + +void rtl_btc_periodical(struct rtl_priv *rtlpriv) +{ +// rtl_bt_dm_monitor(); + exhalbtc_periodical(&gl_bt_coexist); +} + +void rtl_btc_halt_notify(void) +{ + exhalbtc_halt_notify(&gl_bt_coexist); +} + +void rtl_btc_btinfo_notify(struct rtl_priv *rtlpriv, u8 * tmp_buf, u8 length) +{ + exhalbtc_bt_info_notify(&gl_bt_coexist, tmp_buf, length); +} + +bool rtl_btc_is_limited_dig(struct rtl_priv *rtlpriv) +{ + return gl_bt_coexist.bt_info.limited_dig; +} + +bool rtl_btc_is_disable_edca_turbo(struct rtl_priv *rtlpriv) +{ + bool bt_change_edca = false; + u32 cur_edca_val; + u32 edca_bt_hs_uplink = 0x5ea42b, edca_bt_hs_downlink = 0x5ea42b; + u32 edca_hs; + u32 edca_addr = 0x504; + + cur_edca_val = rtl_read_dword(rtlpriv, edca_addr); + if (halbtc_is_wifi_uplink(rtlpriv)){ + if (cur_edca_val != edca_bt_hs_uplink){ + edca_hs = edca_bt_hs_uplink; + bt_change_edca = true; + } + }else{ + if (cur_edca_val != edca_bt_hs_downlink){ + edca_hs = edca_bt_hs_downlink; + bt_change_edca = true; + } + } + + if(bt_change_edca) + rtl_write_dword(rtlpriv, edca_addr, edca_hs); + + return true; +} + +bool rtl_btc_is_bt_disabled(struct rtl_priv *rtlpriv) +{ + if (gl_bt_coexist.bt_info.bt_disabled) + return true; + else + return false; +} + +struct rtl_btc_ops *rtl_btc_get_ops_pointer(void) +{ + return &rtl_btc_operation; +} +//EXPORT_SYMBOL(rtl_btc_get_ops_pointer); + +u8 rtl_get_hwpg_ant_num(struct rtl_priv *rtlpriv) +{ + u8 num; + + if (rtlpriv->btcoexist.btc_info.ant_num == ANT_X2) + num = 2; + else + num = 1; + + return num; +} + +#if 0 +enum rt_media_status mgnt_link_status_query(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + enum rt_media_status m_status = RT_MEDIA_DISCONNECT; + + u8 bibss = (mac->opmode == NL80211_IFTYPE_ADHOC) ? 1 : 0; + + if(bibss || rtlpriv->mac80211.link_state >= MAC80211_LINKED) { + m_status = RT_MEDIA_CONNECT; + } + + return m_status; +} +#endif + +u8 rtl_get_hwpg_bt_exist(struct rtl_priv *rtlpriv) +{ + return rtlpriv->btcoexist.btc_info.btcoexist; +} + +u8 rtl_get_hwpg_bt_type(struct rtl_priv *rtlpriv) +{ + return rtlpriv->btcoexist.btc_info.bt_type; +} + + +#if 0 + +MODULE_AUTHOR("Page He "); +MODULE_AUTHOR("Realtek WlanFAE "); +MODULE_AUTHOR("Larry Finger "); +MODULE_LICENSE("GPL"); +MODULE_DESCRIPTION("Realtek 802.11n PCI wireless core"); + +static int __init rtl_btcoexist_module_init(void) +{ + + //printk("%s, rtlpriv->btc_ops.btc_init_variables addr is %p\n", __func__, rtlpriv->btc_ops.btc_init_variables); + + return 0; +} + +static void __exit rtl_btcoexist_module_exit(void) +{ + return; +} + +module_init(rtl_btcoexist_module_init); +module_exit(rtl_btcoexist_module_exit); + +#endif + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/btcoexist/rtl_btc.h +++ linux-3.13.0/drivers/staging/rtl8821ae/btcoexist/rtl_btc.h @@ -0,0 +1,66 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL_BTC_H__ +#define __RTL_BTC_H__ + +#include "halbt_precomp.h" + + + +void rtl_btc_init_variables(struct rtl_priv *rtlpriv); +void rtl_btc_init_hal_vars(struct rtl_priv *rtlpriv); +void rtl_btc_init_hw_config(struct rtl_priv *rtlpriv); +void rtl_btc_ips_notify(struct rtl_priv *rtlpriv, u8 type); +void rtl_btc_scan_notify(struct rtl_priv *rtlpriv, u8 scantype); +void rtl_btc_connect_notify(struct rtl_priv *rtlpriv, u8 action); +void rtl_btc_mediastatus_notify(struct rtl_priv *rtlpriv, enum rt_media_status mstatus); +void rtl_btc_periodical(struct rtl_priv *rtlpriv); +void rtl_btc_halt_notify(void); +void rtl_btc_btinfo_notify(struct rtl_priv *rtlpriv, u8 * tmpBuf, u8 length); +bool rtl_btc_is_limited_dig(struct rtl_priv *rtlpriv); +bool rtl_btc_is_disable_edca_turbo(struct rtl_priv *rtlpriv); +bool rtl_btc_is_bt_disabled(struct rtl_priv *rtlpriv); + + +//extern struct rtl_btc_ops rtl_btc_operation; +extern struct rtl_btc_ops *rtl_btc_get_ops_pointer(void); + +u8 rtl_get_hwpg_ant_num(struct rtl_priv *rtlpriv); +u8 rtl_get_hwpg_bt_exist(struct rtl_priv *rtlpriv); +u8 rtl_get_hwpg_bt_type(struct rtl_priv *rtlpriv); +//enum rt_media_status mgnt_link_status_query(struct ieee80211_hw *hw); + + + + + + + + +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/cam.c +++ linux-3.13.0/drivers/staging/rtl8821ae/cam.c @@ -0,0 +1,354 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ +#include "wifi.h" +#include "cam.h" +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)) +#include +#endif + +void rtl_cam_reset_sec_info(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtlpriv->sec.use_defaultkey = false; + rtlpriv->sec.pairwise_enc_algorithm = NO_ENCRYPTION; + rtlpriv->sec.group_enc_algorithm = NO_ENCRYPTION; + memset(rtlpriv->sec.key_buf, 0, KEY_BUF_SIZE * MAX_KEY_LEN); + memset(rtlpriv->sec.key_len, 0, KEY_BUF_SIZE); + rtlpriv->sec.pairwise_key = NULL; +} + +static void rtl_cam_program_entry(struct ieee80211_hw *hw, u32 entry_no, + u8 *mac_addr, u8 *key_cont_128, u16 us_config) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + u32 target_command; + u32 target_content = 0; + u8 entry_i; + + RT_PRINT_DATA(rtlpriv, COMP_SEC, DBG_DMESG, "Key content :", + key_cont_128, 16); + + for (entry_i = 0; entry_i < CAM_CONTENT_COUNT; entry_i++) { + target_command = entry_i + CAM_CONTENT_COUNT * entry_no; + target_command = target_command | BIT(31) | BIT(16); + + if (entry_i == 0) { + target_content = (u32) (*(mac_addr + 0)) << 16 | + (u32) (*(mac_addr + 1)) << 24 | (u32) us_config; + + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[WCAMI], + target_content); + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[RWCAM], + target_command); + + RT_TRACE(COMP_SEC, DBG_LOUD, + ("WRITE %x: %x \n", + rtlpriv->cfg->maps[WCAMI], target_content)); + RT_TRACE(COMP_SEC, DBG_LOUD, + ("The Key ID is %d\n", entry_no)); + RT_TRACE(COMP_SEC, DBG_LOUD, + ("WRITE %x: %x \n", + rtlpriv->cfg->maps[RWCAM], target_command)); + + } else if (entry_i == 1) { + + target_content = (u32) (*(mac_addr + 5)) << 24 | + (u32) (*(mac_addr + 4)) << 16 | + (u32) (*(mac_addr + 3)) << 8 | + (u32) (*(mac_addr + 2)); + + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[WCAMI], + target_content); + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[RWCAM], + target_command); + + RT_TRACE(COMP_SEC, DBG_LOUD, + ("WRITE A4: %x \n", target_content)); + RT_TRACE(COMP_SEC, DBG_LOUD, + ("WRITE A0: %x \n", target_command)); + + } else { + + target_content = + (u32) (*(key_cont_128 + (entry_i * 4 - 8) + 3)) << + 24 | (u32) (*(key_cont_128 + (entry_i * 4 - 8) + 2)) + << 16 | + (u32) (*(key_cont_128 + (entry_i * 4 - 8) + 1)) << 8 + | (u32) (*(key_cont_128 + (entry_i * 4 - 8) + 0)); + + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[WCAMI], + target_content); + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[RWCAM], + target_command); + udelay(100); + + RT_TRACE(COMP_SEC, DBG_LOUD, + ("WRITE A4: %x \n", target_content)); + RT_TRACE(COMP_SEC, DBG_LOUD, + ("WRITE A0: %x \n", target_command)); + } + } + + RT_TRACE(COMP_SEC, DBG_LOUD, + ("after set key, usconfig:%x\n", us_config)); +} + +u8 rtl_cam_add_one_entry(struct ieee80211_hw *hw, u8 *mac_addr, + u32 ul_key_id, u32 ul_entry_idx, u32 ul_enc_alg, + u32 ul_default_key, u8 *key_content) +{ + u32 us_config; + struct rtl_priv *rtlpriv = rtl_priv(hw); + + RT_TRACE(COMP_SEC, DBG_DMESG, + ("EntryNo:%x, ulKeyId=%x, ulEncAlg=%x, " + "ulUseDK=%x MacAddr %pM\n", + ul_entry_idx, ul_key_id, ul_enc_alg, + ul_default_key, mac_addr)); + + if (ul_key_id == TOTAL_CAM_ENTRY) { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("ulKeyId exceed!\n")); + return 0; + } + + if (ul_default_key == 1) { + us_config = CFG_VALID | ((u16) (ul_enc_alg) << 2); + } else { + us_config = CFG_VALID | ((ul_enc_alg) << 2) | ul_key_id; + } + + rtl_cam_program_entry(hw, ul_entry_idx, mac_addr, + (u8 *) key_content, us_config); + + RT_TRACE(COMP_SEC, DBG_DMESG, ("end \n")); + + return 1; + +} +//EXPORT_SYMBOL(rtl_cam_add_one_entry); + +int rtl_cam_delete_one_entry(struct ieee80211_hw *hw, + u8 *mac_addr, u32 ul_key_id) +{ + u32 ul_command; + struct rtl_priv *rtlpriv = rtl_priv(hw); + + RT_TRACE(COMP_SEC, DBG_DMESG, ("key_idx:%d\n", ul_key_id)); + + ul_command = ul_key_id * CAM_CONTENT_COUNT; + ul_command = ul_command | BIT(31) | BIT(16); + + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[WCAMI], 0); + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[RWCAM], ul_command); + + RT_TRACE(COMP_SEC, DBG_DMESG, + ("rtl_cam_delete_one_entry(): WRITE A4: %x \n", 0)); + RT_TRACE(COMP_SEC, DBG_DMESG, + ("rtl_cam_delete_one_entry(): WRITE A0: %x \n", ul_command)); + + return 0; + +} +//EXPORT_SYMBOL(rtl_cam_delete_one_entry); + +void rtl_cam_reset_all_entry(struct ieee80211_hw *hw) +{ + u32 ul_command; + struct rtl_priv *rtlpriv = rtl_priv(hw); + + ul_command = BIT(31) | BIT(30); + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[RWCAM], ul_command); +} +//EXPORT_SYMBOL(rtl_cam_reset_all_entry); + +void rtl_cam_mark_invalid(struct ieee80211_hw *hw, u8 uc_index) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + u32 ul_command; + u32 ul_content; + u32 ul_enc_algo = rtlpriv->cfg->maps[SEC_CAM_AES]; + + switch (rtlpriv->sec.pairwise_enc_algorithm) { + case WEP40_ENCRYPTION: + ul_enc_algo = rtlpriv->cfg->maps[SEC_CAM_WEP40]; + break; + case WEP104_ENCRYPTION: + ul_enc_algo = rtlpriv->cfg->maps[SEC_CAM_WEP104]; + break; + case TKIP_ENCRYPTION: + ul_enc_algo = rtlpriv->cfg->maps[SEC_CAM_TKIP]; + break; + case AESCCMP_ENCRYPTION: + ul_enc_algo = rtlpriv->cfg->maps[SEC_CAM_AES]; + break; + default: + ul_enc_algo = rtlpriv->cfg->maps[SEC_CAM_AES]; + } + + ul_content = (uc_index & 3) | ((u16) (ul_enc_algo) << 2); + + ul_content |= BIT(15); + ul_command = CAM_CONTENT_COUNT * uc_index; + ul_command = ul_command | BIT(31) | BIT(16); + + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[WCAMI], ul_content); + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[RWCAM], ul_command); + + RT_TRACE(COMP_SEC, DBG_DMESG, + ("rtl_cam_mark_invalid(): WRITE A4: %x \n", ul_content)); + RT_TRACE(COMP_SEC, DBG_DMESG, + ("rtl_cam_mark_invalid(): WRITE A0: %x \n", ul_command)); +} +//EXPORT_SYMBOL(rtl_cam_mark_invalid); + +void rtl_cam_empty_entry(struct ieee80211_hw *hw, u8 uc_index) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + u32 ul_command; + u32 ul_content; + u32 ul_encalgo = rtlpriv->cfg->maps[SEC_CAM_AES]; + u8 entry_i; + + switch (rtlpriv->sec.pairwise_enc_algorithm) { + case WEP40_ENCRYPTION: + ul_encalgo = rtlpriv->cfg->maps[SEC_CAM_WEP40]; + break; + case WEP104_ENCRYPTION: + ul_encalgo = rtlpriv->cfg->maps[SEC_CAM_WEP104]; + break; + case TKIP_ENCRYPTION: + ul_encalgo = rtlpriv->cfg->maps[SEC_CAM_TKIP]; + break; + case AESCCMP_ENCRYPTION: + ul_encalgo = rtlpriv->cfg->maps[SEC_CAM_AES]; + break; + default: + ul_encalgo = rtlpriv->cfg->maps[SEC_CAM_AES]; + } + + for (entry_i = 0; entry_i < CAM_CONTENT_COUNT; entry_i++) { + + if (entry_i == 0) { + ul_content = + (uc_index & 0x03) | ((u16) (ul_encalgo) << 2); + ul_content |= BIT(15); + + } else { + ul_content = 0; + } + + ul_command = CAM_CONTENT_COUNT * uc_index + entry_i; + ul_command = ul_command | BIT(31) | BIT(16); + + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[WCAMI], ul_content); + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[RWCAM], ul_command); + + RT_TRACE(COMP_SEC, DBG_LOUD, + ("rtl_cam_empty_entry(): WRITE A4: %x \n", + ul_content)); + RT_TRACE(COMP_SEC, DBG_LOUD, + ("rtl_cam_empty_entry(): WRITE A0: %x \n", + ul_command)); + } + +} +//EXPORT_SYMBOL(rtl_cam_empty_entry); + +u8 rtl_cam_get_free_entry(struct ieee80211_hw *hw, u8 *sta_addr) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 bitmap = (rtlpriv->sec.hwsec_cam_bitmap) >> 4; + u8 entry_idx = 0; + u8 i, *addr; + + if (NULL == sta_addr) { + RT_TRACE(COMP_SEC, DBG_EMERG, + ("sta_addr is NULL.\n")); + return TOTAL_CAM_ENTRY; + } + /* Does STA already exist? */ + for (i = 4; i < TOTAL_CAM_ENTRY; i++) { + addr = rtlpriv->sec.hwsec_cam_sta_addr[i]; + if(memcmp(addr, sta_addr, ETH_ALEN) == 0) + return i; + } + /* Get a free CAM entry. */ + for (entry_idx = 4; entry_idx < TOTAL_CAM_ENTRY; entry_idx++) { + if ((bitmap & BIT(0)) == 0) { + RT_TRACE(COMP_SEC, DBG_EMERG, + ("-----hwsec_cam_bitmap: 0x%x entry_idx=%d\n", + rtlpriv->sec.hwsec_cam_bitmap, entry_idx)); + rtlpriv->sec.hwsec_cam_bitmap |= BIT(0) << entry_idx; + memcpy(rtlpriv->sec.hwsec_cam_sta_addr[entry_idx], + sta_addr, ETH_ALEN); + return entry_idx; + } + bitmap = bitmap >>1; + } + return TOTAL_CAM_ENTRY; +} +//EXPORT_SYMBOL(rtl_cam_get_free_entry); + +void rtl_cam_del_entry(struct ieee80211_hw *hw, u8 *sta_addr) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 bitmap; + u8 i, *addr; + + if (NULL == sta_addr) { + RT_TRACE(COMP_SEC, DBG_EMERG, + ("sta_addr is NULL.\n")); + } + + if ((sta_addr[0]|sta_addr[1]|sta_addr[2]|sta_addr[3]|\ + sta_addr[4]|sta_addr[5]) == 0) { + RT_TRACE(COMP_SEC, DBG_EMERG, + ("sta_addr is 00:00:00:00:00:00.\n")); + return; + } + /* Does STA already exist? */ + for (i = 4; i < TOTAL_CAM_ENTRY; i++) { + addr = rtlpriv->sec.hwsec_cam_sta_addr[i]; + bitmap = (rtlpriv->sec.hwsec_cam_bitmap) >> i; + if (((bitmap & BIT(0)) == BIT(0)) && + (memcmp(addr, sta_addr, ETH_ALEN) == 0)) { + /* Remove from HW Security CAM */ + memset(rtlpriv->sec.hwsec_cam_sta_addr[i], 0, ETH_ALEN); + rtlpriv->sec.hwsec_cam_bitmap &= ~(BIT(0) << i); + printk("&&&&&&&&&del entry %d\n",i); + } + } + return; +} +//EXPORT_SYMBOL(rtl_cam_del_entry); --- linux-3.13.0.orig/drivers/staging/rtl8821ae/cam.h +++ linux-3.13.0/drivers/staging/rtl8821ae/cam.h @@ -0,0 +1,56 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL_CAM_H_ +#define __RTL_CAM_H_ + +#define CAM_CONTENT_COUNT 8 + +#define CFG_DEFAULT_KEY BIT(5) +#define CFG_VALID BIT(15) + +#define PAIRWISE_KEYIDX 0 +#define CAM_PAIRWISE_KEY_POSITION 4 + +#define CAM_CONFIG_USEDK 1 +#define CAM_CONFIG_NO_USEDK 0 + +extern void rtl_cam_reset_all_entry(struct ieee80211_hw *hw); +extern u8 rtl_cam_add_one_entry(struct ieee80211_hw *hw, u8 *mac_addr, + u32 ul_key_id, u32 ul_entry_idx, u32 ul_enc_alg, + u32 ul_default_key, u8 *key_content); +int rtl_cam_delete_one_entry(struct ieee80211_hw *hw, u8 *mac_addr, + u32 ul_key_id); +void rtl_cam_mark_invalid(struct ieee80211_hw *hw, u8 uc_index); +void rtl_cam_empty_entry(struct ieee80211_hw *hw, u8 uc_index); +void rtl_cam_reset_sec_info(struct ieee80211_hw *hw); +u8 rtl_cam_get_free_entry(struct ieee80211_hw *hw, u8 *sta_addr); +void rtl_cam_del_entry(struct ieee80211_hw *hw, u8 *sta_addr); + +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/compat.h +++ linux-3.13.0/drivers/staging/rtl8821ae/compat.h @@ -0,0 +1,125 @@ +#ifndef __RTL_COMPAT_H__ +#define __RTL_COMPAT_H__ + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,29)) +/* + * Use this if you want to use the same suspend and resume callbacks for suspend + * to RAM and hibernation. + */ +#define SIMPLE_DEV_PM_OPS(name, suspend_fn, resume_fn) \ +struct dev_pm_ops name = { \ + .suspend = suspend_fn, \ + .resume = resume_fn, \ + .freeze = suspend_fn, \ + .thaw = resume_fn, \ + .poweroff = suspend_fn, \ + .restore = resume_fn, \ +} + +#define compat_pci_suspend(fn) \ + int fn##_compat(struct pci_dev *pdev, pm_message_t state) \ + { \ + int r; \ + \ + r = fn(&pdev->dev); \ + if (r) \ + return r; \ + \ + pci_save_state(pdev); \ + pci_disable_device(pdev); \ + pci_set_power_state(pdev, PCI_D3hot); \ + \ + return 0; \ + } + +#define compat_pci_resume(fn) \ + int fn##_compat(struct pci_dev *pdev) \ + { \ + int r; \ + \ + pci_set_power_state(pdev, PCI_D0); \ + r = pci_enable_device(pdev); \ + if (r) \ + return r; \ + pci_restore_state(pdev); \ + \ + return fn(&pdev->dev); \ + } +#endif + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,39)) +#define RX_FLAG_MACTIME_MPDU RX_FLAG_TSFT +#else +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)) +#define RX_FLAG_MACTIME_MPDU RX_FLAG_MACTIME_START +#else +#endif +//#define NETDEV_TX_OK +#endif + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,7,0)) +#define IEEE80211_KEY_FLAG_SW_MGMT IEEE80211_KEY_FLAG_SW_MGMT_TX +#endif + +struct ieee80211_mgmt_compat { + __le16 frame_control; + __le16 duration; + u8 da[6]; + u8 sa[6]; + u8 bssid[6]; + __le16 seq_ctrl; + union { + struct { + u8 category; + union { + struct { + u8 action_code; + u8 dialog_token; + u8 status_code; + u8 variable[0]; + } __attribute__ ((packed)) wme_action; + struct{ + u8 action_code; + u8 dialog_token; + __le16 capab; + __le16 timeout; + __le16 start_seq_num; + } __attribute__((packed)) addba_req; + struct{ + u8 action_code; + u8 dialog_token; + __le16 status; + __le16 capab; + __le16 timeout; + } __attribute__((packed)) addba_resp; + struct{ + u8 action_code; + __le16 params; + __le16 reason_code; + } __attribute__((packed)) delba; + struct{ + u8 action_code; + /* capab_info for open and confirm, + * reason for close + */ + __le16 aux; + /* Followed in plink_confirm by status + * code, AID and supported rates, + * and directly by supported rates in + * plink_open and plink_close + */ + u8 variable[0]; + } __attribute__((packed)) plink_action; + struct{ + u8 action_code; + u8 variable[0]; + } __attribute__((packed)) mesh_action; + struct { + u8 action; + u8 smps_control; + } __attribute__ ((packed)) ht_smps; + } u; + } __attribute__ ((packed)) action; + } u; +} __attribute__ ((packed)); +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/core.c +++ linux-3.13.0/drivers/staging/rtl8821ae/core.c @@ -0,0 +1,1464 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "wifi.h" +#include "core.h" +#include "cam.h" +#include "base.h" +#include "ps.h" + +#include "btcoexist/rtl_btc.h" + +/*mutex for start & stop is must here. */ +static int rtl_op_start(struct ieee80211_hw *hw) +{ + int err = 0; + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + + if (!is_hal_stop(rtlhal)) + return 0; + if (!test_bit(RTL_STATUS_INTERFACE_START, &rtlpriv->status)) + return 0; + mutex_lock(&rtlpriv->locks.conf_mutex); + err = rtlpriv->intf_ops->adapter_start(hw); + if (err) + goto out; + rtl_watch_dog_timer_callback((unsigned long)hw); + +out: + mutex_unlock(&rtlpriv->locks.conf_mutex); + return err; +} + +static void rtl_op_stop(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + + if (is_hal_stop(rtlhal)) + return; + + /* here is must, because adhoc do stop and start, + * but stop with RFOFF may cause something wrong, + * like adhoc TP */ + if (unlikely(ppsc->rfpwr_state == ERFOFF)) + rtl_ips_nic_on(hw); + + mutex_lock(&rtlpriv->locks.conf_mutex); + + mac->link_state = MAC80211_NOLINK; + memset(mac->bssid, 0, 6); + mac->vendor = PEER_UNKNOWN; + + /*reset sec info */ + rtl_cam_reset_sec_info(hw); + + rtl_deinit_deferred_work(hw); + rtlpriv->intf_ops->adapter_stop(hw); + + mutex_unlock(&rtlpriv->locks.conf_mutex); +} + +/**/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,39)) +static int rtl_op_tx(struct ieee80211_hw *hw, struct sk_buff *skb) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_tcb_desc tcb_desc; + memset(&tcb_desc, 0, sizeof(struct rtl_tcb_desc)); + + if (unlikely(is_hal_stop(rtlhal) || ppsc->rfpwr_state != ERFON)) + goto err_free; + + if (!test_bit(RTL_STATUS_INTERFACE_START, &rtlpriv->status)) + goto err_free; + + if (!rtlpriv->intf_ops->waitq_insert(hw, skb)) + rtlpriv->intf_ops->adapter_tx(hw, skb, &tcb_desc); + + return NETDEV_TX_OK; + +err_free: + dev_kfree_skb_any(skb); + return NETDEV_TX_OK; +} +#else +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)) +static void rtl_op_tx(struct ieee80211_hw *hw, struct sk_buff *skb) +#else +/**/ +static void rtl_op_tx(struct ieee80211_hw *hw, + struct ieee80211_tx_control *control, + struct sk_buff *skb) +/**/ +#endif +/**/ +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_tcb_desc tcb_desc; + memset(&tcb_desc, 0, sizeof(struct rtl_tcb_desc)); + + if (unlikely(is_hal_stop(rtlhal) || ppsc->rfpwr_state != ERFON)) + goto err_free; + + if (!test_bit(RTL_STATUS_INTERFACE_START, &rtlpriv->status)) + goto err_free; + +/**/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)) + if (!rtlpriv->intf_ops->waitq_insert(hw, skb)) + rtlpriv->intf_ops->adapter_tx(hw, skb, &tcb_desc); +#else +/**/ + if (!rtlpriv->intf_ops->waitq_insert(hw, control->sta, skb)) + rtlpriv->intf_ops->adapter_tx(hw, control->sta, skb, &tcb_desc); +/**/ +#endif +/**/ + return; + +err_free: + dev_kfree_skb_any(skb); + return; +} +/**/ +#endif +/**/ + +static int rtl_op_add_interface(struct ieee80211_hw *hw, + struct ieee80211_vif *vif) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + int err = 0; + + if (mac->vif) { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("vif has been set!! mac->vif = 0x%p\n", mac->vif)); + return -EOPNOTSUPP; + } + +/*This flag is not defined before kernel 3.4*/ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0)) + vif->driver_flags |= IEEE80211_VIF_BEACON_FILTER; +#endif + + rtl_ips_nic_on(hw); + + mutex_lock(&rtlpriv->locks.conf_mutex); +/**/ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,37)) + switch (ieee80211_vif_type_p2p(vif)) { + case NL80211_IFTYPE_P2P_CLIENT: + mac->p2p = P2P_ROLE_CLIENT; + /*fall through*/ +#else +/**/ + switch (vif->type) { +/**/ +#endif +/**/ + case NL80211_IFTYPE_STATION: + if (mac->beacon_enabled == 1) { + RT_TRACE(COMP_MAC80211, DBG_LOUD, + ("NL80211_IFTYPE_STATION \n")); + mac->beacon_enabled = 0; + rtlpriv->cfg->ops->update_interrupt_mask(hw, 0, + rtlpriv->cfg->maps[RTL_IBSS_INT_MASKS]); + } + break; + case NL80211_IFTYPE_ADHOC: + RT_TRACE(COMP_MAC80211, DBG_LOUD, + ("NL80211_IFTYPE_ADHOC \n")); + + mac->link_state = MAC80211_LINKED; + rtlpriv->cfg->ops->set_bcn_reg(hw); + if (rtlpriv->rtlhal.current_bandtype == BAND_ON_2_4G) + mac->basic_rates = 0xfff; + else + mac->basic_rates = 0xff0; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_BASIC_RATE, + (u8 *) (&mac->basic_rates)); + + break; +/**/ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,37)) + case NL80211_IFTYPE_P2P_GO: + mac->p2p = P2P_ROLE_GO; + /*fall through*/ +#endif +/**/ + case NL80211_IFTYPE_AP: + RT_TRACE(COMP_MAC80211, DBG_LOUD, + ("NL80211_IFTYPE_AP \n")); + + mac->link_state = MAC80211_LINKED; + rtlpriv->cfg->ops->set_bcn_reg(hw); + if (rtlpriv->rtlhal.current_bandtype == BAND_ON_2_4G) + mac->basic_rates = 0xfff; + else + mac->basic_rates = 0xff0; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_BASIC_RATE, + (u8 *) (&mac->basic_rates)); + break; + case NL80211_IFTYPE_MESH_POINT: + RT_TRACE(COMP_MAC80211, DBG_LOUD, + ("NL80211_IFTYPE_MESH_POINT \n")); + + mac->link_state = MAC80211_LINKED; + rtlpriv->cfg->ops->set_bcn_reg(hw); + if (rtlpriv->rtlhal.current_bandtype == BAND_ON_2_4G) + mac->basic_rates = 0xfff; + else + mac->basic_rates = 0xff0; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_BASIC_RATE, + (u8 *) (&mac->basic_rates)); + break; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("operation mode %d is not support!\n", vif->type)); + err = -EOPNOTSUPP; + goto out; + } + +#ifdef VIF_TODO + if (!rtl_set_vif_info(hw, vif)) + goto out; +#endif + + if (mac->p2p) { + RT_TRACE(COMP_MAC80211, DBG_LOUD, + ("p2p role %x \n",vif->type)); + mac->basic_rates = 0xff0;/*disable cck rate for p2p*/ + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_BASIC_RATE, + (u8 *) (&mac->basic_rates)); + } + mac->vif = vif; + mac->opmode = vif->type; + rtlpriv->cfg->ops->set_network_type(hw, vif->type); + memcpy(mac->mac_addr, vif->addr, ETH_ALEN); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_ETHER_ADDR, mac->mac_addr); + +out: + mutex_unlock(&rtlpriv->locks.conf_mutex); + return err; +} + +static void rtl_op_remove_interface(struct ieee80211_hw *hw, + struct ieee80211_vif *vif) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + + mutex_lock(&rtlpriv->locks.conf_mutex); + + /* Free beacon resources */ + if ((vif->type == NL80211_IFTYPE_AP) || + (vif->type == NL80211_IFTYPE_ADHOC) || + (vif->type == NL80211_IFTYPE_MESH_POINT)) { + if (mac->beacon_enabled == 1) { + mac->beacon_enabled = 0; + rtlpriv->cfg->ops->update_interrupt_mask(hw, 0, + rtlpriv->cfg->maps[RTL_IBSS_INT_MASKS]); + } + } + + /* + *Note: We assume NL80211_IFTYPE_UNSPECIFIED as + *NO LINK for our hardware. + */ + mac->p2p = 0; + mac->vif = NULL; + mac->link_state = MAC80211_NOLINK; + memset(mac->bssid, 0, 6); + mac->vendor = PEER_UNKNOWN; + mac->opmode = NL80211_IFTYPE_UNSPECIFIED; + rtlpriv->cfg->ops->set_network_type(hw, mac->opmode); + + mutex_unlock(&rtlpriv->locks.conf_mutex); +} +/**/ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,37)) +/**/ +static int rtl_op_change_interface(struct ieee80211_hw *hw, + struct ieee80211_vif *vif, + enum nl80211_iftype new_type, bool p2p) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + int ret; + rtl_op_remove_interface(hw, vif); + + vif->type = new_type; + vif->p2p = p2p; + ret = rtl_op_add_interface(hw, vif); + RT_TRACE(COMP_MAC80211, DBG_LOUD, + (" p2p %x\n",p2p)); + return ret; +} +/**/ +#endif +/**/ +static int rtl_op_config(struct ieee80211_hw *hw, u32 changed) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct ieee80211_conf *conf = &hw->conf; + + if (mac->skip_scan) + return 1; + + + mutex_lock(&rtlpriv->locks.conf_mutex); + if (changed & IEEE80211_CONF_CHANGE_LISTEN_INTERVAL) { /* BIT(2) */ + RT_TRACE(COMP_MAC80211, DBG_LOUD, + ("IEEE80211_CONF_CHANGE_LISTEN_INTERVAL\n")); + } + + /*For IPS */ + if (changed & IEEE80211_CONF_CHANGE_IDLE) { + if (hw->conf.flags & IEEE80211_CONF_IDLE) + rtl_ips_nic_off(hw); + else + rtl_ips_nic_on(hw); + } else { + /* + *although rfoff may not cause by ips, but we will + *check the reason in set_rf_power_state function + */ + if (unlikely(ppsc->rfpwr_state == ERFOFF)) + rtl_ips_nic_on(hw); + } + + /*For LPS */ + if (changed & IEEE80211_CONF_CHANGE_PS) { + cancel_delayed_work(&rtlpriv->works.ps_work); + cancel_delayed_work(&rtlpriv->works.ps_rfon_wq); + if (conf->flags & IEEE80211_CONF_PS) { + rtlpriv->psc.sw_ps_enabled = true; + /* sleep here is must, or we may recv the beacon and + * cause mac80211 into wrong ps state, this will cause + * power save nullfunc send fail, and further cause + * pkt loss, So sleep must quickly but not immediatly + * because that will cause nullfunc send by mac80211 + * fail, and cause pkt loss, we have tested that 5mA + * is worked very well */ + if (!rtlpriv->psc.multi_buffered) + queue_delayed_work(rtlpriv->works.rtl_wq, + &rtlpriv->works.ps_work, + MSECS(5)); + } else { + rtl_swlps_rf_awake(hw); + rtlpriv->psc.sw_ps_enabled = false; + } + } + + if (changed & IEEE80211_CONF_CHANGE_RETRY_LIMITS) { + RT_TRACE(COMP_MAC80211, DBG_LOUD, + ("IEEE80211_CONF_CHANGE_RETRY_LIMITS %x\n", + hw->conf.long_frame_max_tx_count)); + mac->retry_long = hw->conf.long_frame_max_tx_count; + mac->retry_short = hw->conf.long_frame_max_tx_count; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_RETRY_LIMIT, + (u8 *) (&hw->conf.long_frame_max_tx_count)); + } + + if (changed & IEEE80211_CONF_CHANGE_CHANNEL) { +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)) + struct ieee80211_channel *channel = hw->conf.chandef.chan; + enum nl80211_channel_type channel_type = + cfg80211_get_chandef_type(&(hw->conf.chandef)); +#else + struct ieee80211_channel *channel = hw->conf.channel; + enum nl80211_channel_type channel_type = hw->conf.channel_type; +#endif + u8 wide_chan = (u8) channel->hw_value; + + if (mac->act_scanning) + mac->n_channels++; + + if (rtlpriv->dm.supp_phymode_switch && + mac->link_state < MAC80211_LINKED && + !mac->act_scanning) { + if (rtlpriv->cfg->ops->check_switch_to_dmdp) + rtlpriv->cfg->ops->check_switch_to_dmdp(hw); + } + + /* + *because we should back channel to + *current_network.chan in in scanning, + *So if set_chan == current_network.chan + *we should set it. + *because mac80211 tell us wrong bw40 + *info for cisco1253 bw20, so we modify + *it here based on UPPER & LOWER + */ + switch (channel_type) { + case NL80211_CHAN_HT20: + case NL80211_CHAN_NO_HT: + /* SC */ + mac->cur_40_prime_sc = + PRIME_CHNL_OFFSET_DONT_CARE; + rtlphy->current_chan_bw = HT_CHANNEL_WIDTH_20; + mac->bw_40 = false; + break; + case NL80211_CHAN_HT40MINUS: + /* SC */ + mac->cur_40_prime_sc = PRIME_CHNL_OFFSET_UPPER; + rtlphy->current_chan_bw = + HT_CHANNEL_WIDTH_20_40; + mac->bw_40 = true; + + /*wide channel */ + wide_chan -= 2; + + break; + case NL80211_CHAN_HT40PLUS: + /* SC */ + mac->cur_40_prime_sc = PRIME_CHNL_OFFSET_LOWER; + rtlphy->current_chan_bw = + HT_CHANNEL_WIDTH_20_40; + mac->bw_40 = true; + + /*wide channel */ + wide_chan += 2; + + break; + default: + mac->bw_40 = false; + RT_TRACE(COMP_ERR, DBG_EMERG, + ("switch case not processed \n")); + break; + } + + if (wide_chan <= 0) + wide_chan = 1; + + /* in scanning, when before we offchannel we may send a ps=1 + * null to AP, and then we may send a ps = 0 null to AP quickly, + * but first null have cause AP's put lots of packet to hw tx + * buffer, these packet must be tx before off channel so we must + * delay more time to let AP flush these packets before + * offchannel, or dis-association or delete BA will happen by AP + */ + if (rtlpriv->mac80211.offchan_deley) { + rtlpriv->mac80211.offchan_deley = false; + mdelay(50); + } + + rtlphy->current_channel = wide_chan; + + rtlpriv->cfg->ops->switch_channel(hw); + rtlpriv->cfg->ops->set_channel_access(hw); + rtlpriv->cfg->ops->set_bw_mode(hw, + channel_type); + } + + mutex_unlock(&rtlpriv->locks.conf_mutex); + + return 0; +} + +static void rtl_op_configure_filter(struct ieee80211_hw *hw, + unsigned int changed_flags, + unsigned int *new_flags, u64 multicast) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + + *new_flags &= RTL_SUPPORTED_FILTERS; + if (0 == changed_flags) + return; + + /*TODO: we disable broadcase now, so enable here */ + if (changed_flags & FIF_ALLMULTI) { + if (*new_flags & FIF_ALLMULTI) { + mac->rx_conf |= rtlpriv->cfg->maps[MAC_RCR_AM] | + rtlpriv->cfg->maps[MAC_RCR_AB]; + RT_TRACE(COMP_MAC80211, DBG_LOUD, + ("Enable receive multicast frame.\n")); + } else { + mac->rx_conf &= ~(rtlpriv->cfg->maps[MAC_RCR_AM] | + rtlpriv->cfg->maps[MAC_RCR_AB]); + RT_TRACE(COMP_MAC80211, DBG_LOUD, + ("Disable receive multicast frame.\n")); + } + } + + if (changed_flags & FIF_FCSFAIL) { + if (*new_flags & FIF_FCSFAIL) { + mac->rx_conf |= rtlpriv->cfg->maps[MAC_RCR_ACRC32]; + RT_TRACE(COMP_MAC80211, DBG_LOUD, + ("Enable receive FCS error frame.\n")); + } else { + mac->rx_conf &= ~rtlpriv->cfg->maps[MAC_RCR_ACRC32]; + RT_TRACE(COMP_MAC80211, DBG_LOUD, + ("Disable receive FCS error frame.\n")); + } + } + + /* if ssid not set to hw don't check bssid + * here just used for linked scanning, & linked + * and nolink check bssid is set in set network_type */ + if ((changed_flags & FIF_BCN_PRBRESP_PROMISC) && + (mac->link_state >= MAC80211_LINKED)) { + if (mac->opmode != NL80211_IFTYPE_AP && + mac->opmode != NL80211_IFTYPE_MESH_POINT) { + if (*new_flags & FIF_BCN_PRBRESP_PROMISC) { + rtlpriv->cfg->ops->set_chk_bssid(hw, false); + } else { + rtlpriv->cfg->ops->set_chk_bssid(hw, true); + } + } + } + + if (changed_flags & FIF_CONTROL) { + if (*new_flags & FIF_CONTROL) { + mac->rx_conf |= rtlpriv->cfg->maps[MAC_RCR_ACF]; + + RT_TRACE(COMP_MAC80211, DBG_LOUD, + ("Enable receive control frame.\n")); + } else { + mac->rx_conf &= ~rtlpriv->cfg->maps[MAC_RCR_ACF]; + RT_TRACE(COMP_MAC80211, DBG_LOUD, + ("Disable receive control frame.\n")); + } + } + + if (changed_flags & FIF_OTHER_BSS) { + if (*new_flags & FIF_OTHER_BSS) { + mac->rx_conf |= rtlpriv->cfg->maps[MAC_RCR_AAP]; + RT_TRACE(COMP_MAC80211, DBG_LOUD, + ("Enable receive other BSS's frame.\n")); + } else { + mac->rx_conf &= ~rtlpriv->cfg->maps[MAC_RCR_AAP]; + RT_TRACE(COMP_MAC80211, DBG_LOUD, + ("Disable receive other BSS's frame.\n")); + } + } +} +static int rtl_op_sta_add(struct ieee80211_hw *hw, + struct ieee80211_vif *vif, + struct ieee80211_sta *sta) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal= rtl_hal(rtl_priv(hw)); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_sta_info *sta_entry; + + if (sta) { + sta_entry = (struct rtl_sta_info *) sta->drv_priv; + spin_lock_bh(&rtlpriv->locks.entry_list_lock); + list_add_tail(&sta_entry->list, &rtlpriv->entry_list); + spin_unlock_bh(&rtlpriv->locks.entry_list_lock); + if (rtlhal->current_bandtype == BAND_ON_2_4G) { + sta_entry->wireless_mode = WIRELESS_MODE_G; + if (sta->supp_rates[0] <= 0xf) + sta_entry->wireless_mode = WIRELESS_MODE_B; + if (sta->ht_cap.ht_supported == true) + sta_entry->wireless_mode = WIRELESS_MODE_N_24G; + + if (vif->type == NL80211_IFTYPE_ADHOC) + sta_entry->wireless_mode = WIRELESS_MODE_G; + } else if (rtlhal->current_bandtype == BAND_ON_5G) { + sta_entry->wireless_mode = WIRELESS_MODE_A; + if (sta->ht_cap.ht_supported == true) + sta_entry->wireless_mode = WIRELESS_MODE_N_24G; + + if (vif->type == NL80211_IFTYPE_ADHOC) + sta_entry->wireless_mode = WIRELESS_MODE_A; + } + /*disable cck rate for p2p*/ + if (mac->p2p) + sta->supp_rates[0] &= 0xfffffff0; + + memcpy(sta_entry->mac_addr, sta->addr, ETH_ALEN); + RT_TRACE(COMP_MAC80211, DBG_DMESG, + ("Add sta addr is %pM\n",sta->addr)); + rtlpriv->cfg->ops->update_rate_tbl(hw, sta, 0); + } + + return 0; +} + +static int rtl_op_sta_remove(struct ieee80211_hw *hw, + struct ieee80211_vif *vif, + struct ieee80211_sta *sta) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_sta_info *sta_entry; + if (sta) { + RT_TRACE(COMP_MAC80211, DBG_DMESG, + ("Remove sta addr is %pM\n",sta->addr)); + sta_entry = (struct rtl_sta_info *) sta->drv_priv; + sta_entry->wireless_mode = 0; + sta_entry->ratr_index = 0; + spin_lock_bh(&rtlpriv->locks.entry_list_lock); + list_del(&sta_entry->list); + spin_unlock_bh(&rtlpriv->locks.entry_list_lock); + } + return 0; +} +static int _rtl_get_hal_qnum(u16 queue) +{ + int qnum; + + switch (queue) { + case 0: + qnum = AC3_VO; + break; + case 1: + qnum = AC2_VI; + break; + case 2: + qnum = AC0_BE; + break; + case 3: + qnum = AC1_BK; + break; + default: + qnum = AC0_BE; + break; + } + return qnum; +} + +/* + *for mac80211 VO=0, VI=1, BE=2, BK=3 + *for rtl819x BE=0, BK=1, VI=2, VO=3 + */ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)) +static int rtl_op_conf_tx(struct ieee80211_hw *hw, + struct ieee80211_vif *vif, u16 queue, + const struct ieee80211_tx_queue_params *param) +#else +static int rtl_op_conf_tx(struct ieee80211_hw *hw, u16 queue, + const struct ieee80211_tx_queue_params *param) +#endif +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + int aci; + + if (queue >= AC_MAX) { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("queue number %d is incorrect!\n", queue)); + return -EINVAL; + } + + aci = _rtl_get_hal_qnum(queue); + mac->ac[aci].aifs = param->aifs; + mac->ac[aci].cw_min = param->cw_min; + mac->ac[aci].cw_max = param->cw_max; + mac->ac[aci].tx_op = param->txop; + memcpy(&mac->edca_param[aci], param, sizeof(*param)); + rtlpriv->cfg->ops->set_qos(hw, aci); + return 0; +} + +static void rtl_op_bss_info_changed(struct ieee80211_hw *hw, + struct ieee80211_vif *vif, + struct ieee80211_bss_conf *bss_conf, + u32 changed) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + + mutex_lock(&rtlpriv->locks.conf_mutex); + if ((vif->type == NL80211_IFTYPE_ADHOC) || + (vif->type == NL80211_IFTYPE_AP) || + (vif->type == NL80211_IFTYPE_MESH_POINT)) { + if ((changed & BSS_CHANGED_BEACON) || + (changed & BSS_CHANGED_BEACON_ENABLED && + bss_conf->enable_beacon)) { + if (mac->beacon_enabled == 0) { + RT_TRACE(COMP_MAC80211, DBG_DMESG, + ("BSS_CHANGED_BEACON_ENABLED \n")); + + /*start hw beacon interrupt. */ + /*rtlpriv->cfg->ops->set_bcn_reg(hw); */ + mac->beacon_enabled = 1; + rtlpriv->cfg->ops->update_interrupt_mask(hw, + rtlpriv->cfg->maps + [RTL_IBSS_INT_MASKS], 0); + + if (rtlpriv->cfg->ops->linked_set_reg) + rtlpriv->cfg->ops->linked_set_reg(hw); + } + } + if ((changed & BSS_CHANGED_BEACON_ENABLED && + !bss_conf->enable_beacon)){ + if (mac->beacon_enabled == 1) { + RT_TRACE(COMP_MAC80211, DBG_DMESG, + ("ADHOC DISABLE BEACON\n")); + + mac->beacon_enabled = 0; + rtlpriv->cfg->ops->update_interrupt_mask(hw, 0, + rtlpriv->cfg->maps + [RTL_IBSS_INT_MASKS]); + } + } + if (changed & BSS_CHANGED_BEACON_INT) { + RT_TRACE(COMP_BEACON, DBG_TRACE, + ("BSS_CHANGED_BEACON_INT\n")); + mac->beacon_interval = bss_conf->beacon_int; + rtlpriv->cfg->ops->set_bcn_intv(hw); + } + } + + /*TODO: reference to enum ieee80211_bss_change */ + if (changed & BSS_CHANGED_ASSOC) { + if (bss_conf->assoc) { + struct ieee80211_sta *sta = NULL; + /* we should reset all sec info & cam + * before set cam after linked, we should not + * reset in disassoc, that will cause tkip->wep + * fail because some flag will be wrong */ + /* reset sec info */ + rtl_cam_reset_sec_info(hw); + /* reset cam to fix wep fail issue + * when change from wpa to wep */ + rtl_cam_reset_all_entry(hw); + + mac->link_state = MAC80211_LINKED; + mac->cnt_after_linked = 0; + mac->assoc_id = bss_conf->aid; + memcpy(mac->bssid, bss_conf->bssid, 6); + + if (rtlpriv->cfg->ops->linked_set_reg) + rtlpriv->cfg->ops->linked_set_reg(hw); + + rcu_read_lock(); + sta = ieee80211_find_sta(vif, (u8*)bss_conf->bssid); + + if (vif->type == NL80211_IFTYPE_STATION && sta) + rtlpriv->cfg->ops->update_rate_tbl(hw, sta, 0); + RT_TRACE(COMP_EASY_CONCURRENT, DBG_LOUD, + ("send PS STATIC frame \n")); + if (rtlpriv->dm.supp_phymode_switch) { + if (sta->ht_cap.ht_supported) + rtl_send_smps_action(hw, sta, + IEEE80211_SMPS_STATIC); + } + rcu_read_unlock(); + + RT_TRACE(COMP_MAC80211, DBG_DMESG, + ("BSS_CHANGED_ASSOC\n")); + } else { + if (mac->link_state == MAC80211_LINKED) + rtl_lps_leave(hw); + if (ppsc->p2p_ps_info.p2p_ps_mode> P2P_PS_NONE) + rtl_p2p_ps_cmd(hw, P2P_PS_DISABLE); + mac->link_state = MAC80211_NOLINK; + memset(mac->bssid, 0, 6); + mac->vendor = PEER_UNKNOWN; + + if (rtlpriv->dm.supp_phymode_switch) { + if (rtlpriv->cfg->ops->check_switch_to_dmdp) + rtlpriv->cfg->ops->check_switch_to_dmdp(hw); + } + RT_TRACE(COMP_MAC80211, DBG_DMESG, + ("BSS_CHANGED_UN_ASSOC\n")); + } + } + + if (changed & BSS_CHANGED_ERP_CTS_PROT) { + RT_TRACE(COMP_MAC80211, DBG_TRACE, + ("BSS_CHANGED_ERP_CTS_PROT\n")); + mac->use_cts_protect = bss_conf->use_cts_prot; + } + + if (changed & BSS_CHANGED_ERP_PREAMBLE) { + RT_TRACE(COMP_MAC80211, DBG_LOUD, + ("BSS_CHANGED_ERP_PREAMBLE use short preamble:%x \n", + bss_conf->use_short_preamble)); + + mac->short_preamble = bss_conf->use_short_preamble; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_ACK_PREAMBLE, + (u8 *) (&mac->short_preamble)); + } + + if (changed & BSS_CHANGED_ERP_SLOT) { + RT_TRACE(COMP_MAC80211, DBG_TRACE, + ("BSS_CHANGED_ERP_SLOT\n")); + + if (bss_conf->use_short_slot) + mac->slot_time = RTL_SLOT_TIME_9; + else + mac->slot_time = RTL_SLOT_TIME_20; + + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_SLOT_TIME, + (u8 *) (&mac->slot_time)); + } + + if (changed & BSS_CHANGED_HT) { + struct ieee80211_sta *sta = NULL; + + RT_TRACE(COMP_MAC80211, DBG_TRACE, + ("BSS_CHANGED_HT\n")); + + rcu_read_lock(); + sta = ieee80211_find_sta(vif, (u8*)bss_conf->bssid); + if (sta) { + if (sta->ht_cap.ampdu_density > + mac->current_ampdu_density) + mac->current_ampdu_density = + sta->ht_cap.ampdu_density; + if (sta->ht_cap.ampdu_factor < + mac->current_ampdu_factor) + mac->current_ampdu_factor = + sta->ht_cap.ampdu_factor; + } + rcu_read_unlock(); + + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_SHORTGI_DENSITY, + (u8 *) (&mac->max_mss_density)); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_AMPDU_FACTOR, + &mac->current_ampdu_factor); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_AMPDU_MIN_SPACE, + &mac->current_ampdu_density); + } + + if (changed & BSS_CHANGED_BSSID) { + u32 basic_rates; + struct ieee80211_sta *sta = NULL; + + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_BSSID, + (u8 *) bss_conf->bssid); + + RT_TRACE(COMP_MAC80211, DBG_DMESG, + ("bssid: %pM\n", bss_conf->bssid)); + + mac->vendor = PEER_UNKNOWN; + memcpy(mac->bssid, bss_conf->bssid, 6); + rtlpriv->cfg->ops->set_network_type(hw, vif->type); + + rcu_read_lock(); + sta = ieee80211_find_sta(vif, (u8*)bss_conf->bssid); + if (!sta) { + rcu_read_unlock(); + goto out; + } + + if (rtlhal->current_bandtype == BAND_ON_5G) { + mac->mode = WIRELESS_MODE_A; + } else { + if (sta->supp_rates[0] <= 0xf) + mac->mode = WIRELESS_MODE_B; + else + mac->mode = WIRELESS_MODE_G; + } + + if (sta->ht_cap.ht_supported) { + if (rtlhal->current_bandtype == BAND_ON_2_4G) + mac->mode = WIRELESS_MODE_N_24G; + else + mac->mode = WIRELESS_MODE_N_5G; + } + + /* just station need it, because ibss & ap mode will + * set in sta_add, and will be NULL here */ + if (vif->type == NL80211_IFTYPE_STATION) { + struct rtl_sta_info *sta_entry; + sta_entry = (struct rtl_sta_info *) sta->drv_priv; + sta_entry->wireless_mode = mac->mode; + } + + if (sta->ht_cap.ht_supported) { + mac->ht_enable = true; + + /* + * for cisco 1252 bw20 it's wrong + * if (ht_cap & IEEE80211_HT_CAP_SUP_WIDTH_20_40) { + * mac->bw_40 = true; + * } + * */ + } + + if (changed & BSS_CHANGED_BASIC_RATES) { + /* for 5G must << RATE_6M_INDEX=4, + * because 5G have no cck rate*/ + if (rtlhal->current_bandtype == BAND_ON_5G) + basic_rates = sta->supp_rates[1] << 4; + else + basic_rates = sta->supp_rates[0]; + + mac->basic_rates = basic_rates; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_BASIC_RATE, + (u8 *) (&basic_rates)); + } + rcu_read_unlock(); + } + + /* + * For FW LPS and Keep Alive: + * To tell firmware we have connected + * to an AP. For 92SE/CE power save v2. + */ + if (changed & BSS_CHANGED_ASSOC) { + if (bss_conf->assoc) { + u8 keep_alive = 10; + u8 mstatus = RT_MEDIA_CONNECT; + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_KEEP_ALIVE, + (u8 *) (&keep_alive)); + + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_H2C_FW_JOINBSSRPT, + (u8 *) (&mstatus)); + ppsc->report_linked = true; + + } else { + + u8 mstatus = RT_MEDIA_DISCONNECT; + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_H2C_FW_JOINBSSRPT, + (u8 *) (&mstatus)); + ppsc->report_linked = false; + + } + + if (rtlpriv->cfg->ops->get_btc_status()){ + rtlpriv->btcoexist.btc_ops->btc_mediastatus_notify( + rtlpriv, ppsc->report_linked); + } + } + +out: + mutex_unlock(&rtlpriv->locks.conf_mutex); +} + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)) +static u64 rtl_op_get_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif) +#else +static u64 rtl_op_get_tsf(struct ieee80211_hw *hw) +#endif +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u64 tsf; + + rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_CORRECT_TSF, (u8 *) (&tsf)); + return tsf; +} + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)) +static void rtl_op_set_tsf(struct ieee80211_hw *hw, + struct ieee80211_vif *vif, u64 tsf) +#else +static void rtl_op_set_tsf(struct ieee80211_hw *hw, u64 tsf) +#endif +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + u8 bibss = (mac->opmode == NL80211_IFTYPE_ADHOC) ? 1 : 0; + + mac->tsf = tsf; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_CORRECT_TSF, (u8 *) (&bibss)); +} + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)) +static void rtl_op_reset_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif) +#else +static void rtl_op_reset_tsf(struct ieee80211_hw *hw) +#endif +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 tmp = 0; + + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_DUAL_TSF_RST, (u8 *) (&tmp)); +} + +static void rtl_op_sta_notify(struct ieee80211_hw *hw, + struct ieee80211_vif *vif, + enum sta_notify_cmd cmd, + struct ieee80211_sta *sta) +{ + switch (cmd) { + case STA_NOTIFY_SLEEP: + break; + case STA_NOTIFY_AWAKE: + break; + default: + break; + } +} + +static int rtl_op_ampdu_action(struct ieee80211_hw *hw, + struct ieee80211_vif *vif, + enum ieee80211_ampdu_mlme_action action, + struct ieee80211_sta *sta, u16 tid, u16 * ssn +/**/ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,39)) +/**/ + ,u8 buf_size +/**/ +#endif +/**/ + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + switch (action) { + case IEEE80211_AMPDU_TX_START: + RT_TRACE(COMP_MAC80211, DBG_TRACE, + ("IEEE80211_AMPDU_TX_START: TID:%d\n", tid)); + return rtl_tx_agg_start(hw, vif, sta, tid, ssn); + break; +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0)) + case IEEE80211_AMPDU_TX_STOP_CONT: + case IEEE80211_AMPDU_TX_STOP_FLUSH: + case IEEE80211_AMPDU_TX_STOP_FLUSH_CONT: +#else + case IEEE80211_AMPDU_TX_STOP: +#endif + RT_TRACE(COMP_MAC80211, DBG_TRACE, + ("IEEE80211_AMPDU_TX_STOP: TID:%d\n", tid)); + return rtl_tx_agg_stop(hw, vif, sta, tid); + break; + case IEEE80211_AMPDU_TX_OPERATIONAL: + RT_TRACE(COMP_MAC80211, DBG_TRACE, + ("IEEE80211_AMPDU_TX_OPERATIONAL:TID:%d\n", tid)); + rtl_tx_agg_oper(hw, sta, tid); + break; + case IEEE80211_AMPDU_RX_START: + RT_TRACE(COMP_MAC80211, DBG_TRACE, + ("IEEE80211_AMPDU_RX_START:TID:%d\n", tid)); + return rtl_rx_agg_start(hw, sta, tid); + break; + case IEEE80211_AMPDU_RX_STOP: + RT_TRACE(COMP_MAC80211, DBG_TRACE, + ("IEEE80211_AMPDU_RX_STOP:TID:%d\n", tid)); + return rtl_rx_agg_stop(hw, sta, tid); + break; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("IEEE80211_AMPDU_ERR!!!!:\n")); + return -EOPNOTSUPP; + } + return 0; +} + +static void rtl_op_sw_scan_start(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + + RT_TRACE(COMP_MAC80211, DBG_LOUD, ("\n")); + mac->act_scanning = true; + /*rtlpriv->btcops->btc_scan_notify(rtlpriv, 0); */ + if (rtlpriv->link_info.b_higher_busytraffic) { + mac->skip_scan = true; + return; + } + + if (rtlpriv->dm.supp_phymode_switch) { + if (rtlpriv->cfg->ops->check_switch_to_dmdp) + rtlpriv->cfg->ops->check_switch_to_dmdp(hw); + } + + if (mac->link_state == MAC80211_LINKED) { + rtl_lps_leave(hw); + mac->link_state = MAC80211_LINKED_SCANNING; + } else { + rtl_ips_nic_on(hw); + } + + /* Dul mac */ + rtlpriv->rtlhal.b_load_imrandiqk_setting_for2g = false; + + rtlpriv->cfg->ops->led_control(hw, LED_CTL_SITE_SURVEY); + + rtlpriv->cfg->ops->scan_operation_backup(hw, SCAN_OPT_BACKUP_BAND0); + +} + +static void rtl_op_sw_scan_complete(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + + RT_TRACE(COMP_MAC80211, DBG_LOUD, ("\n")); + mac->act_scanning = false; + mac->skip_scan = false; + if (rtlpriv->link_info.b_higher_busytraffic) { + return; + } + + /* p2p will use 1/6/11 to scan */ + if (mac->n_channels == 3) + mac->p2p_in_use = true; + else + mac->p2p_in_use = false; + mac->n_channels = 0; + /* Dul mac */ + rtlpriv->rtlhal.b_load_imrandiqk_setting_for2g = false; + + if (mac->link_state == MAC80211_LINKED_SCANNING) { + mac->link_state = MAC80211_LINKED; + if (mac->opmode == NL80211_IFTYPE_STATION) { + /* fix fwlps issue */ + rtlpriv->cfg->ops->set_network_type(hw, mac->opmode); + } + } + + rtlpriv->cfg->ops->scan_operation_backup(hw, SCAN_OPT_RESTORE); + /* rtlpriv->btcops->btc_scan_notify(rtlpriv, 1); */ +} + +static int rtl_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd, + struct ieee80211_vif *vif, struct ieee80211_sta *sta, + struct ieee80211_key_conf *key) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 key_type = NO_ENCRYPTION; + u8 key_idx; + bool group_key = false; + bool wep_only = false; + int err = 0; + u8 mac_addr[ETH_ALEN]; + u8 bcast_addr[ETH_ALEN] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; + u8 zero_addr[ETH_ALEN] = { 0 }; + + if (rtlpriv->cfg->mod_params->sw_crypto || rtlpriv->sec.use_sw_sec) { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("not open hw encryption\n")); + return -ENOSPC; /*User disabled HW-crypto */ + } + /* To support IBSS, use sw-crypto for GTK */ + if(((vif->type == NL80211_IFTYPE_ADHOC) || + (vif->type == NL80211_IFTYPE_MESH_POINT)) && + !(key->flags & IEEE80211_KEY_FLAG_PAIRWISE)) + return -ENOSPC; + RT_TRACE(COMP_SEC, DBG_DMESG, + ("%s hardware based encryption for keyidx: %d, mac: %pM\n", + cmd == SET_KEY ? "Using" : "Disabling", key->keyidx, + sta ? sta->addr : bcast_addr)); + rtlpriv->sec.being_setkey = true; + rtl_ips_nic_on(hw); + mutex_lock(&rtlpriv->locks.conf_mutex); + /* <1> get encryption alg */ + +/**/ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,37)) +/**/ + switch (key->cipher) { + case WLAN_CIPHER_SUITE_WEP40: + key_type = WEP40_ENCRYPTION; + RT_TRACE(COMP_SEC, DBG_DMESG, ("alg:WEP40\n")); + break; + case WLAN_CIPHER_SUITE_WEP104: + RT_TRACE(COMP_SEC, DBG_DMESG, ("alg:WEP104\n")); + key_type = WEP104_ENCRYPTION; + break; + case WLAN_CIPHER_SUITE_TKIP: + key_type = TKIP_ENCRYPTION; + RT_TRACE(COMP_SEC, DBG_DMESG, ("alg:TKIP\n")); + break; + case WLAN_CIPHER_SUITE_CCMP: + key_type = AESCCMP_ENCRYPTION; + RT_TRACE(COMP_SEC, DBG_DMESG, ("alg:CCMP\n")); + break; + case WLAN_CIPHER_SUITE_AES_CMAC: + /* HW don't support CMAC encryption, + * use software CMAC encryption */ + key_type = AESCMAC_ENCRYPTION; + RT_TRACE(COMP_SEC, DBG_DMESG, ("alg:CMAC\n")); + RT_TRACE(COMP_SEC, DBG_DMESG, + ("HW don't support CMAC encrypiton, " + "use software CMAC encrypiton\n")); + err = -EOPNOTSUPP; + goto out_unlock; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("alg_err:%x!!!!:\n", key->cipher)); + goto out_unlock; + } +/**/ +#else + switch (key->alg) { + case ALG_WEP: + if (key->keylen == WLAN_KEY_LEN_WEP40) { + key_type = WEP40_ENCRYPTION; + RT_TRACE(COMP_SEC, DBG_DMESG, ("alg:WEP40\n")); + } else { + RT_TRACE(COMP_SEC, DBG_DMESG, + ("alg:WEP104\n")); + key_type = WEP104_ENCRYPTION; + } + break; + case ALG_TKIP: + key_type = TKIP_ENCRYPTION; + RT_TRACE(COMP_SEC, DBG_DMESG, ("alg:TKIP\n")); + break; + case ALG_CCMP: + key_type = AESCCMP_ENCRYPTION; + RT_TRACE(COMP_SEC, DBG_DMESG, ("alg:CCMP\n")); + break; + case ALG_AES_CMAC: + /*HW don't support CMAC encryption, use software CMAC encryption */ + key_type = AESCMAC_ENCRYPTION; + RT_TRACE(COMP_SEC, DBG_DMESG, ("alg:CMAC\n")); + RT_TRACE(COMP_SEC, DBG_DMESG, + ("HW don't support CMAC encrypiton, " + "use software CMAC encrypiton\n")); + err = -EOPNOTSUPP; + goto out_unlock; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("alg_err:%x!!!!:\n", key->alg)); + goto out_unlock; + } +#endif +/**/ + if(key_type == WEP40_ENCRYPTION || + key_type == WEP104_ENCRYPTION || + vif->type == NL80211_IFTYPE_ADHOC) + rtlpriv->sec.use_defaultkey = true; + + /* <2> get key_idx */ + key_idx = (u8) (key->keyidx); + if (key_idx > 3) + goto out_unlock; + /* <3> if pairwise key enable_hw_sec */ + group_key = !(key->flags & IEEE80211_KEY_FLAG_PAIRWISE); + + /* wep always be group key, but there are two conditions: + * 1) wep only: is just for wep enc, in this condition + * rtlpriv->sec.pairwise_enc_algorithm == NO_ENCRYPTION + * will be true & enable_hw_sec will be set when wep + * ke setting. + * 2) wep(group) + AES(pairwise): some AP like cisco + * may use it, in this condition enable_hw_sec will not + * be set when wep key setting */ + /* we must reset sec_info after lingked before set key, + * or some flag will be wrong*/ + if (vif->type == NL80211_IFTYPE_AP || + vif->type == NL80211_IFTYPE_MESH_POINT) { + if (!group_key || key_type == WEP40_ENCRYPTION || + key_type == WEP104_ENCRYPTION) { + if (group_key) { + wep_only = true; + } + rtlpriv->cfg->ops->enable_hw_sec(hw); + } + } else { + if ((!group_key) || (vif->type == NL80211_IFTYPE_ADHOC) || + rtlpriv->sec.pairwise_enc_algorithm == NO_ENCRYPTION) { + if (rtlpriv->sec.pairwise_enc_algorithm == + NO_ENCRYPTION && + (key_type == WEP40_ENCRYPTION || + key_type == WEP104_ENCRYPTION)) + wep_only = true; + rtlpriv->sec.pairwise_enc_algorithm = key_type; + RT_TRACE(COMP_SEC, DBG_DMESG, + ("set enable_hw_sec, key_type:%x(OPEN:0 WEP40:" + "1 TKIP:2 AES:4 WEP104:5)\n", key_type)); + rtlpriv->cfg->ops->enable_hw_sec(hw); + } + } + /* <4> set key based on cmd */ + switch (cmd) { + case SET_KEY: + if (wep_only) { + RT_TRACE(COMP_SEC, DBG_DMESG, + ("set WEP(group/pairwise) key\n")); + /* Pairwise key with an assigned MAC address. */ + rtlpriv->sec.pairwise_enc_algorithm = key_type; + rtlpriv->sec.group_enc_algorithm = key_type; + /*set local buf about wep key. */ + memcpy(rtlpriv->sec.key_buf[key_idx], + key->key, key->keylen); + rtlpriv->sec.key_len[key_idx] = key->keylen; + memcpy(mac_addr, zero_addr, ETH_ALEN); + } else if (group_key) { /* group key */ + RT_TRACE(COMP_SEC, DBG_DMESG, + ("set group key\n")); + /* group key */ + rtlpriv->sec.group_enc_algorithm = key_type; + /*set local buf about group key. */ + memcpy(rtlpriv->sec.key_buf[key_idx], + key->key, key->keylen); + rtlpriv->sec.key_len[key_idx] = key->keylen; + memcpy(mac_addr, bcast_addr, ETH_ALEN); + } else { /* pairwise key */ + RT_TRACE(COMP_SEC, DBG_DMESG, + ("set pairwise key\n")); + if (!sta) { + RT_ASSERT(false, ("pairwise key withnot" + "mac_addr\n")); + + err = -EOPNOTSUPP; + goto out_unlock; + } + /* Pairwise key with an assigned MAC address. */ + rtlpriv->sec.pairwise_enc_algorithm = key_type; + /*set local buf about pairwise key. */ + memcpy(rtlpriv->sec.key_buf[PAIRWISE_KEYIDX], + key->key, key->keylen); + rtlpriv->sec.key_len[PAIRWISE_KEYIDX] = key->keylen; + rtlpriv->sec.pairwise_key = + rtlpriv->sec.key_buf[PAIRWISE_KEYIDX]; + memcpy(mac_addr, sta->addr, ETH_ALEN); + } + rtlpriv->cfg->ops->set_key(hw, key_idx, mac_addr, + group_key, key_type, wep_only, + false); + /* <5> tell mac80211 do something: */ + /*must use sw generate IV, or can not work !!!!. */ + key->flags |= IEEE80211_KEY_FLAG_GENERATE_IV; + key->hw_key_idx = key_idx; + if (key_type == TKIP_ENCRYPTION) + key->flags |= IEEE80211_KEY_FLAG_GENERATE_MMIC; + /*use software CCMP encryption for management frames (MFP) */ + if (key_type == AESCCMP_ENCRYPTION) + key->flags |= IEEE80211_KEY_FLAG_SW_MGMT; + break; + case DISABLE_KEY: + RT_TRACE(COMP_SEC, DBG_DMESG, + ("disable key delete one entry\n")); + /*set local buf about wep key. */ + if (vif->type == NL80211_IFTYPE_AP || + vif->type == NL80211_IFTYPE_MESH_POINT) { + if (sta) + rtl_cam_del_entry(hw, sta->addr); + } + memset(rtlpriv->sec.key_buf[key_idx], 0, key->keylen); + rtlpriv->sec.key_len[key_idx] = 0; + memcpy(mac_addr, zero_addr, ETH_ALEN); + /* + *mac80211 will delete entrys one by one, + *so don't use rtl_cam_reset_all_entry + *or clear all entry here. + */ + rtl_cam_delete_one_entry(hw, mac_addr, key_idx); + break; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("cmd_err:%x!!!!:\n", cmd)); + } +out_unlock: + mutex_unlock(&rtlpriv->locks.conf_mutex); + rtlpriv->sec.being_setkey = false; + return err; +} + +static void rtl_op_rfkill_poll(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + bool radio_state; + bool blocked; + u8 valid = 0; + + if (!test_bit(RTL_STATUS_INTERFACE_START, &rtlpriv->status)) + return; + + mutex_lock(&rtlpriv->locks.conf_mutex); + + /*if Radio On return true here */ + radio_state = rtlpriv->cfg->ops->radio_onoff_checking(hw, &valid); + + if (valid) { + if (unlikely(radio_state != rtlpriv->rfkill.rfkill_state)) { + rtlpriv->rfkill.rfkill_state = radio_state; + + RT_TRACE(COMP_RF, DBG_DMESG, + (KERN_INFO "wireless radio switch turned %s\n", + radio_state ? "on" : "off")); + + blocked = (rtlpriv->rfkill.rfkill_state == 1) ? 0 : 1; + wiphy_rfkill_set_hw_state(hw->wiphy, blocked); + } + } + + mutex_unlock(&rtlpriv->locks.conf_mutex); +} + +/* this function is called by mac80211 to flush tx buffer + * before switch channle or power save, or tx buffer packet + * maybe send after offchannel or rf sleep, this may cause + * dis-association by AP */ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)) +static void rtl_op_flush(struct ieee80211_hw *hw, u32 queues, bool drop) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (rtlpriv->intf_ops->flush) + rtlpriv->intf_ops->flush(hw, queues, drop); +} +#else +static void rtl_op_flush(struct ieee80211_hw *hw, bool drop) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (rtlpriv->intf_ops->flush) + rtlpriv->intf_ops->flush(hw, drop); +} +#endif + +const struct ieee80211_ops rtl_ops = { + .start = rtl_op_start, + .stop = rtl_op_stop, + .tx = rtl_op_tx, + .add_interface = rtl_op_add_interface, + .remove_interface = rtl_op_remove_interface, +/**/ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,37)) +/**/ + .change_interface = rtl_op_change_interface, +/**/ +#endif +/**/ + .config = rtl_op_config, + .configure_filter = rtl_op_configure_filter, + .set_key = rtl_op_set_key, + .conf_tx = rtl_op_conf_tx, + .bss_info_changed = rtl_op_bss_info_changed, + .get_tsf = rtl_op_get_tsf, + .set_tsf = rtl_op_set_tsf, + .reset_tsf = rtl_op_reset_tsf, + .sta_notify = rtl_op_sta_notify, + .ampdu_action = rtl_op_ampdu_action, + .sw_scan_start = rtl_op_sw_scan_start, + .sw_scan_complete = rtl_op_sw_scan_complete, + .rfkill_poll = rtl_op_rfkill_poll, + .sta_add = rtl_op_sta_add, + .sta_remove = rtl_op_sta_remove, + .flush = rtl_op_flush, +}; --- linux-3.13.0.orig/drivers/staging/rtl8821ae/core.h +++ linux-3.13.0/drivers/staging/rtl8821ae/core.h @@ -0,0 +1,43 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * Tmis program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * Tmis program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * tmis program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * Tme full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL_CORE_H__ +#define __RTL_CORE_H__ + +#define RTL_SUPPORTED_FILTERS \ + (FIF_PROMISC_IN_BSS | \ + FIF_ALLMULTI | FIF_CONTROL | \ + FIF_OTHER_BSS | \ + FIF_FCSFAIL | \ + FIF_BCN_PRBRESP_PROMISC) + +#define RTL_SUPPORTED_CTRL_FILTER 0xFF + +extern const struct ieee80211_ops rtl_ops; +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/debug.c +++ linux-3.13.0/drivers/staging/rtl8821ae/debug.c @@ -0,0 +1,988 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * Tmis program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * Tmis program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * tmis program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * Tme full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "wifi.h" +#include "cam.h" + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)) +#define GET_INODE_DATA(__node) PDE_DATA(__node) +#else +#define GET_INODE_DATA(__node) PDE(__node)->data +#endif + + +void rtl_dbgp_flag_init(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 i; + + rtlpriv->dbg.global_debuglevel = DBG_DMESG; + + rtlpriv->dbg.global_debugcomponents = + COMP_ERR | + COMP_FW | + COMP_INIT | + COMP_RECV | + COMP_SEND | + COMP_MLME | + COMP_SCAN | + COMP_INTR | + COMP_LED | + COMP_SEC | + COMP_BEACON | + COMP_RATE | + COMP_RXDESC | + COMP_DIG | + COMP_TXAGC | + COMP_POWER | + COMP_POWER_TRACKING | + COMP_BB_POWERSAVING | + COMP_SWAS | + COMP_RF | + COMP_TURBO | + COMP_RATR | + COMP_CMD | + COMP_EASY_CONCURRENT | + COMP_EFUSE | + COMP_QOS | COMP_MAC80211 | COMP_REGD | + COMP_CHAN | + COMP_BT_COEXIST | + COMP_IQK | + 0; + + for (i = 0; i < DBGP_TYPE_MAX; i++) + rtlpriv->dbg.dbgp_type[i] = 0; + + /*Init Debug flag enable condition */ +} + +struct proc_dir_entry *proc_topdir; +static int rtl_proc_get_mac_0(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + struct rtl_priv *rtlpriv = rtl_priv(hw); + int i, n, page; + int max = 0xff; + page = 0x000; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n + page); + for (i = 0; i < 4 && n <= max; i++, n += 4) + seq_printf(m, "%8.8x ", + rtl_read_dword(rtlpriv, (page | n))); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_mac_0(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_mac_0, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_mac_0 = { + .open = dl_proc_open_mac_0, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_mac_1(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + struct rtl_priv *rtlpriv = rtl_priv(hw); + int i, n, page; + int max = 0xff; + page = 0x100; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n + page); + for (i = 0; i < 4 && n <= max; i++, n += 4) + seq_printf(m, "%8.8x ", + rtl_read_dword(rtlpriv, (page | n))); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_mac_1(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_mac_1, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_mac_1 = { + .open = dl_proc_open_mac_1, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_mac_2(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + struct rtl_priv *rtlpriv = rtl_priv(hw); + int i, n, page; + int max = 0xff; + page = 0x200; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n + page); + for (i = 0; i < 4 && n <= max; i++, n += 4) + seq_printf(m, "%8.8x ", + rtl_read_dword(rtlpriv, (page | n))); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_mac_2(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_mac_2, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_mac_2 = { + .open = dl_proc_open_mac_2, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_mac_3(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + struct rtl_priv *rtlpriv = rtl_priv(hw); + int i, n, page; + int max = 0xff; + page = 0x300; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n + page); + for (i = 0; i < 4 && n <= max; i++, n += 4) + seq_printf(m, "%8.8x ", + rtl_read_dword(rtlpriv, (page | n))); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_mac_3(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_mac_3, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_mac_3 = { + .open = dl_proc_open_mac_3, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_mac_4(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + struct rtl_priv *rtlpriv = rtl_priv(hw); + int i, n, page; + int max = 0xff; + page = 0x400; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n + page); + for (i = 0; i < 4 && n <= max; i++, n += 4) + seq_printf(m, "%8.8x ", + rtl_read_dword(rtlpriv, (page | n))); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_mac_4(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_mac_4, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_mac_4 = { + .open = dl_proc_open_mac_4, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_mac_5(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + struct rtl_priv *rtlpriv = rtl_priv(hw); + int i, n, page; + int max = 0xff; + page = 0x500; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n + page); + for (i = 0; i < 4 && n <= max; i++, n += 4) + seq_printf(m, "%8.8x ", + rtl_read_dword(rtlpriv, (page | n))); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_mac_5(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_mac_5, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_mac_5 = { + .open = dl_proc_open_mac_5, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_mac_6(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + struct rtl_priv *rtlpriv = rtl_priv(hw); + int i, n, page; + int max = 0xff; + page = 0x600; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n + page); + for (i = 0; i < 4 && n <= max; i++, n += 4) + seq_printf(m, "%8.8x ", + rtl_read_dword(rtlpriv, (page | n))); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_mac_6(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_mac_6, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_mac_6 = { + .open = dl_proc_open_mac_6, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_mac_7(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + struct rtl_priv *rtlpriv = rtl_priv(hw); + int i, n, page; + int max = 0xff; + page = 0x700; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n + page); + for (i = 0; i < 4 && n <= max; i++, n += 4) + seq_printf(m, "%8.8x ", + rtl_read_dword(rtlpriv, (page | n))); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_mac_7(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_mac_7, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_mac_7 = { + .open = dl_proc_open_mac_7, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_bb_8(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + int i, n, page; + int max = 0xff; + page = 0x800; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n + page); + for (i = 0; i < 4 && n <= max; i++, n += 4) + seq_printf(m, "%8.8x ", + rtl_get_bbreg(hw, (page | n), 0xffffffff)); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_bb_8(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_bb_8, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_bb_8 = { + .open = dl_proc_open_bb_8, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_bb_9(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + int i, n, page; + int max = 0xff; + page = 0x900; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n + page); + for (i = 0; i < 4 && n <= max; i++, n += 4) + seq_printf(m, "%8.8x ", + rtl_get_bbreg(hw, (page | n), 0xffffffff)); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_bb_9(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_bb_9, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_bb_9 = { + .open = dl_proc_open_bb_9, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_bb_a(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + int i, n, page; + int max = 0xff; + page = 0xa00; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n + page); + for (i = 0; i < 4 && n <= max; i++, n += 4) + seq_printf(m, "%8.8x ", + rtl_get_bbreg(hw, (page | n), 0xffffffff)); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_bb_a(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_bb_a, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_bb_a = { + .open = dl_proc_open_bb_a, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_bb_b(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + int i, n, page; + int max = 0xff; + page = 0xb00; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n + page); + for (i = 0; i < 4 && n <= max; i++, n += 4) + seq_printf(m, "%8.8x ", + rtl_get_bbreg(hw, (page | n), 0xffffffff)); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_bb_b(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_bb_b, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_bb_b = { + .open = dl_proc_open_bb_b, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_bb_c(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + int i, n, page; + int max = 0xff; + page = 0xc00; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n + page); + for (i = 0; i < 4 && n <= max; i++, n += 4) + seq_printf(m, "%8.8x ", + rtl_get_bbreg(hw, (page | n), 0xffffffff)); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_bb_c(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_bb_c, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_bb_c = { + .open = dl_proc_open_bb_c, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_bb_d(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + int i, n, page; + int max = 0xff; + page = 0xd00; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n + page); + for (i = 0; i < 4 && n <= max; i++, n += 4) + seq_printf(m, "%8.8x ", + rtl_get_bbreg(hw, (page | n), 0xffffffff)); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_bb_d(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_bb_d, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_bb_d = { + .open = dl_proc_open_bb_d, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_bb_e(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + int i, n, page; + int max = 0xff; + page = 0xe00; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n + page); + for (i = 0; i < 4 && n <= max; i++, n += 4) + seq_printf(m, "%8.8x ", + rtl_get_bbreg(hw, (page | n), 0xffffffff)); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_bb_e(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_bb_e, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_bb_e = { + .open = dl_proc_open_bb_e, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_bb_f(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + int i, n, page; + int max = 0xff; + page = 0xf00; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n + page); + for (i = 0; i < 4 && n <= max; i++, n += 4) + seq_printf(m, "%8.8x ", + rtl_get_bbreg(hw, (page | n), 0xffffffff)); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_bb_f(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_bb_f, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_bb_f = { + .open = dl_proc_open_bb_f, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_reg_rf_a(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + int i, n; + int max = 0x40; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n); + for (i = 0; i < 4 && n <= max; n += 1, i++) + seq_printf(m, "%8.8x ", + rtl_get_rfreg(hw, RF90_PATH_A, n, 0xffffffff)); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_rf_a(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_reg_rf_a, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_rf_a = { + .open = dl_proc_open_rf_a, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_reg_rf_b(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + int i, n; + int max = 0x40; + + for (n = 0; n <= max; ) { + seq_printf(m, "\n%8.8x ", n); + for (i = 0; i < 4 && n <= max; n += 1, i++) + seq_printf(m, "%8.8x ", + rtl_get_rfreg(hw, RF90_PATH_B, n, + 0xffffffff)); + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_rf_b(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_reg_rf_b, GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_rf_b = { + .open = dl_proc_open_rf_b, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_cam_register_1(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 target_cmd = 0; + u32 target_val=0; + u8 entry_i=0; + u32 ulstatus; + int i = 100, j = 0; + + /* This dump the current register page */ + seq_puts(m, + "\n#################### SECURITY CAM (0-10) ##################\n "); + + for (j = 0; j < 11; j++) { + seq_printf(m, "\nD: %2x > ", j); + for (entry_i = 0; entry_i < CAM_CONTENT_COUNT; entry_i++) { + /* polling bit, and No Write enable, and address */ + target_cmd = entry_i + CAM_CONTENT_COUNT * j; + target_cmd = target_cmd | BIT(31); + + /* Check polling bit is clear */ + while ((i--) >= 0) { + ulstatus = rtl_read_dword(rtlpriv, + rtlpriv->cfg->maps[RWCAM]); + if (ulstatus & BIT(31)) { + continue; + } else { + break; + } + } + + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[RWCAM], + target_cmd); + target_val = rtl_read_dword(rtlpriv, + rtlpriv->cfg->maps[RCAMO]); + seq_printf(m, "%8.8x ", target_val); + } + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_cam_1(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_cam_register_1, + GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_cam_1 = { + .open = dl_proc_open_cam_1, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_cam_register_2(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 target_cmd = 0; + u32 target_val = 0; + u8 entry_i = 0; + u32 ulstatus; + int i = 100, j = 0; + + /* This dump the current register page */ + seq_puts(m, + "\n################### SECURITY CAM (11-21) ##################\n "); + + for (j = 11; j < 22; j++) { + seq_printf(m, "\nD: %2x > ", j); + for (entry_i = 0; entry_i < CAM_CONTENT_COUNT; entry_i++) { + target_cmd = entry_i + CAM_CONTENT_COUNT * j; + target_cmd = target_cmd | BIT(31); + + while ((i--) >= 0) { + ulstatus = rtl_read_dword(rtlpriv, + rtlpriv->cfg->maps[RWCAM]); + if (ulstatus & BIT(31)) { + continue; + } else { + break; + } + } + + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[RWCAM], + target_cmd); + target_val = rtl_read_dword(rtlpriv, + rtlpriv->cfg->maps[RCAMO]); + seq_printf(m, "%8.8x ", target_val); + } + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_cam_2(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_cam_register_2, + GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_cam_2 = { + .open = dl_proc_open_cam_2, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +static int rtl_proc_get_cam_register_3(struct seq_file *m, void *v) +{ + struct ieee80211_hw *hw = m->private; + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 target_cmd = 0; + u32 target_val = 0; + u8 entry_i = 0; + u32 ulstatus; + int i = 100, j = 0; + + /* This dump the current register page */ + seq_puts(m, + "\n################### SECURITY CAM (22-31) ##################\n "); + + for (j = 22; j < TOTAL_CAM_ENTRY; j++) { + seq_printf(m, "\nD: %2x > ", j); + for (entry_i = 0; entry_i < CAM_CONTENT_COUNT; entry_i++) { + target_cmd = entry_i+CAM_CONTENT_COUNT*j; + target_cmd = target_cmd | BIT(31); + + while ((i--) >= 0) { + ulstatus = rtl_read_dword(rtlpriv, + rtlpriv->cfg->maps[RWCAM]); + if (ulstatus & BIT(31)) { + continue; + } else { + break; + } + } + + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[RWCAM], + target_cmd); + target_val = rtl_read_dword(rtlpriv, + rtlpriv->cfg->maps[RCAMO]); + seq_printf(m, "%8.8x ", target_val); + } + } + seq_puts(m, "\n"); + return 0; +} + +static int dl_proc_open_cam_3(struct inode *inode, struct file *file) +{ + return single_open(file, rtl_proc_get_cam_register_3, + GET_INODE_DATA(inode)); +} + +static const struct file_operations file_ops_cam_3 = { + .open = dl_proc_open_cam_3, + .read = seq_read, + .llseek = seq_lseek, + .release = seq_release, +}; + +void rtl_proc_add_one(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct proc_dir_entry *entry; + + snprintf(rtlpriv->dbg.proc_name, 18, "%x-%x-%x-%x-%x-%x", + rtlefuse->dev_addr[0], rtlefuse->dev_addr[1], + rtlefuse->dev_addr[2], rtlefuse->dev_addr[3], + rtlefuse->dev_addr[4], rtlefuse->dev_addr[5]); + + rtlpriv->dbg.proc_dir = proc_mkdir(rtlpriv->dbg.proc_name, proc_topdir); + if (!rtlpriv->dbg.proc_dir) { + RT_TRACE(COMP_INIT, DBG_EMERG, ("Unable to init " + "/proc/net/%s/%s\n", rtlpriv->cfg->name, + rtlpriv->dbg.proc_name)); + return; + } + + entry = proc_create_data("mac-0", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_mac_0, hw); + if (!entry) + RT_TRACE(COMP_INIT, DBG_EMERG, + ("Unable to initialize /proc/net/%s/%s/mac-0\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("mac-1", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_mac_1, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/mac-1\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("mac-2", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_mac_2, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/mac-2\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("mac-3", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_mac_3, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/mac-3\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("mac-4", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_mac_4, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/mac-4\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("mac-5", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_mac_5, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/mac-5\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("mac-6", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_mac_6, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/mac-6\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("mac-7", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_mac_7, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/mac-7\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("bb-8", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_bb_8, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/bb-8\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("bb-9", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_bb_9, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/bb-9\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("bb-a", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_bb_a, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/bb-a\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("bb-b", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_bb_b, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/bb-b\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("bb-c", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_bb_c, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/bb-c\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("bb-d", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_bb_d, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/bb-d\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("bb-e", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_bb_e, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/bb-e\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("bb-f", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_bb_f, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/bb-f\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("rf-a", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_rf_a, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/rf-a\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("rf-b", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_rf_b, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/rf-b\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("cam-1", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_cam_1, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/cam-1\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("cam-2", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_cam_2, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/cam-2\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); + + entry = proc_create_data("cam-3", S_IFREG | S_IRUGO, + rtlpriv->dbg.proc_dir, &file_ops_cam_3, hw); + if (!entry) + RT_TRACE(COMP_INIT, COMP_ERR, + ("Unable to initialize /proc/net/%s/%s/cam-3\n", + rtlpriv->cfg->name, rtlpriv->dbg.proc_name)); +} + +void rtl_proc_remove_one(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (rtlpriv->dbg.proc_dir) { + remove_proc_entry("mac-0", rtlpriv->dbg.proc_dir); + remove_proc_entry("mac-1", rtlpriv->dbg.proc_dir); + remove_proc_entry("mac-2", rtlpriv->dbg.proc_dir); + remove_proc_entry("mac-3", rtlpriv->dbg.proc_dir); + remove_proc_entry("mac-4", rtlpriv->dbg.proc_dir); + remove_proc_entry("mac-5", rtlpriv->dbg.proc_dir); + remove_proc_entry("mac-6", rtlpriv->dbg.proc_dir); + remove_proc_entry("mac-7", rtlpriv->dbg.proc_dir); + remove_proc_entry("bb-8", rtlpriv->dbg.proc_dir); + remove_proc_entry("bb-9", rtlpriv->dbg.proc_dir); + remove_proc_entry("bb-a", rtlpriv->dbg.proc_dir); + remove_proc_entry("bb-b", rtlpriv->dbg.proc_dir); + remove_proc_entry("bb-c", rtlpriv->dbg.proc_dir); + remove_proc_entry("bb-d", rtlpriv->dbg.proc_dir); + remove_proc_entry("bb-e", rtlpriv->dbg.proc_dir); + remove_proc_entry("bb-f", rtlpriv->dbg.proc_dir); + remove_proc_entry("rf-a", rtlpriv->dbg.proc_dir); + remove_proc_entry("rf-b", rtlpriv->dbg.proc_dir); + remove_proc_entry("cam-1", rtlpriv->dbg.proc_dir); + remove_proc_entry("cam-2", rtlpriv->dbg.proc_dir); + remove_proc_entry("cam-3", rtlpriv->dbg.proc_dir); + + remove_proc_entry(rtlpriv->dbg.proc_name, proc_topdir); + + rtlpriv->dbg.proc_dir = NULL; + } +} + +void rtl_proc_add_topdir(void) +{ + proc_topdir = proc_mkdir("rtlwifi", init_net.proc_net); +} + +void rtl_proc_remove_topdir(void) +{ + if (proc_topdir) + remove_proc_entry("rtlwifi", init_net.proc_net); +} \ No newline at end of file --- linux-3.13.0.orig/drivers/staging/rtl8821ae/debug.h +++ linux-3.13.0/drivers/staging/rtl8821ae/debug.h @@ -0,0 +1,227 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * Tmis program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * Tmis program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * tmis program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * Tme full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL_DEBUG_H__ +#define __RTL_DEBUG_H__ + +/*-------------------------------------------------------------- + Debug level +--------------------------------------------------------------*/ +/* + *Fatal bug. + *For example, Tx/Rx/IO locked up, + *memory access violation, + *resource allocation failed, + *unexpected HW behavior, HW BUG + *and so on. + */ +#define DBG_EMERG 0 + +/* + *Abnormal, rare, or unexpeted cases. + *For example, Packet/IO Ctl canceled, + *device suprisely unremoved and so on. + */ +#define DBG_WARNING 2 + +/* + *Normal case driver developer should + *open, we can see link status like + *assoc/AddBA/DHCP/adapter start and + *so on basic and useful infromations. + */ +#define DBG_DMESG 3 + +/* + *Normal case with useful information + *about current SW or HW state. + *For example, Tx/Rx descriptor to fill, + *Tx/Rx descriptor completed status, + *SW protocol state change, dynamic + *mechanism state change and so on. + */ +#define DBG_LOUD 4 + +/* + *Normal case with detail execution + *flow or information. + */ +#define DBG_TRACE 5 + +/*-------------------------------------------------------------- + Define the rt_trace components +--------------------------------------------------------------*/ +#define COMP_ERR BIT(0) +#define COMP_FW BIT(1) +#define COMP_INIT BIT(2) /*For init/deinit */ +#define COMP_RECV BIT(3) /*For Rx. */ +#define COMP_SEND BIT(4) /*For Tx. */ +#define COMP_MLME BIT(5) /*For MLME. */ +#define COMP_SCAN BIT(6) /*For Scan. */ +#define COMP_INTR BIT(7) /*For interrupt Related. */ +#define COMP_LED BIT(8) /*For LED. */ +#define COMP_SEC BIT(9) /*For sec. */ +#define COMP_BEACON BIT(10) /*For beacon. */ +#define COMP_RATE BIT(11) /*For rate. */ +#define COMP_RXDESC BIT(12) /*For rx desc. */ +#define COMP_DIG BIT(13) /*For DIG */ +#define COMP_TXAGC BIT(14) /*For Tx power */ +#define COMP_HIPWR BIT(15) /*For High Power Mechanism */ +#define COMP_POWER BIT(16) /*For lps/ips/aspm. */ +#define COMP_POWER_TRACKING BIT(17) /*For TX POWER TRACKING */ +#define COMP_BB_POWERSAVING BIT(18) +#define COMP_SWAS BIT(19) /*For SW Antenna Switch */ +#define COMP_RF BIT(20) /*For RF. */ +#define COMP_TURBO BIT(21) /*For EDCA TURBO. */ +#define COMP_RATR BIT(22) +#define COMP_CMD BIT(23) +#define COMP_EFUSE BIT(24) +#define COMP_QOS BIT(25) +#define COMP_MAC80211 BIT(26) +#define COMP_REGD BIT(27) +#define COMP_CHAN BIT(28) +#define COMP_EASY_CONCURRENT BIT(29) +#define COMP_BT_COEXIST BIT(30) +#define COMP_IQK BIT(31) + +/*-------------------------------------------------------------- + Define the rt_print components +--------------------------------------------------------------*/ +/* Define EEPROM and EFUSE check module bit*/ +#define EEPROM_W BIT(0) +#define EFUSE_PG BIT(1) +#define EFUSE_READ_ALL BIT(2) + +/* Define init check for module bit*/ +#define INIT_EEPROM BIT(0) +#define INIT_TxPower BIT(1) +#define INIT_IQK BIT(2) +#define INIT_RF BIT(3) + +/* Define PHY-BB/RF/MAC check module bit */ +#define PHY_BBR BIT(0) +#define PHY_BBW BIT(1) +#define PHY_RFR BIT(2) +#define PHY_RFW BIT(3) +#define PHY_MACR BIT(4) +#define PHY_MACW BIT(5) +#define PHY_ALLR BIT(6) +#define PHY_ALLW BIT(7) +#define PHY_TXPWR BIT(8) +#define PHY_PWRDIFF BIT(9) + +/* Define Dynamic Mechanism check module bit --> FDM */ +#define WA_IOT BIT(0) +#define DM_PWDB BIT(1) +#define DM_MONITOR BIT(2) +#define DM_DIG BIT(3) +#define DM_EDCA_TURBO BIT(4) + +enum dbgp_flag_e { + FQOS = 0, + FTX = 1, + FRX = 2, + FSEC = 3, + FMGNT = 4, + FMLME = 5, + FRESOURCE = 6, + FBEACON = 7, + FISR = 8, + FPHY = 9, + FMP = 10, + FEEPROM = 11, + FPWR = 12, + FDM = 13, + FDBGCtrl = 14, + FC2H = 15, + FBT = 16, + FINIT = 17, + FIOCTL = 18, + DBGP_TYPE_MAX +}; + +#define RT_ASSERT(_exp,fmt) \ + do { \ + if(!(_exp)) { \ + printk(KERN_DEBUG "%s:%s(): ", KBUILD_MODNAME, \ + __func__); \ + printk fmt; \ + } \ + } while(0); + +#define RT_DISP(dbgtype, dbgflag, printstr) + +#define RT_TRACE(comp, level, fmt)\ + do { \ + if(unlikely(((comp) & rtlpriv->dbg.global_debugcomponents) && \ + ((level) <= rtlpriv->dbg.global_debuglevel))) {\ + printk(KERN_DEBUG "%s-%d:%s():<%lx-%x> ", \ + KBUILD_MODNAME, \ + rtlpriv->rtlhal.interfaceindex, __func__, \ + in_interrupt(), in_atomic()); \ + printk fmt; \ + }\ + } while(0); + +#define RTPRINT(rtlpriv, dbgtype, dbgflag, printstr) \ + do { \ + if (unlikely(rtlpriv->dbg.dbgp_type[dbgtype] & dbgflag)) { \ + printk(KERN_DEBUG "%s: ", KBUILD_MODNAME); \ + printk printstr; \ + } \ + } while(0); + +#define RT_PRINT_DATA(rtlpriv, _comp, _level, _titlestring, _hexdata, \ + _hexdatalen) \ + do {\ + if(unlikely(((_comp) & rtlpriv->dbg.global_debugcomponents ) &&\ + (_level <= rtlpriv->dbg.global_debuglevel ))) { \ + int __i; \ + u8* ptr = (u8*)_hexdata; \ + printk(KERN_DEBUG "%s: ", KBUILD_MODNAME); \ + printk(KERN_DEBUG "In process \"%s\" (pid %i):", \ + current->comm, \ + current->pid); \ + printk(_titlestring); \ + for( __i=0; __i<(int)_hexdatalen; __i++ ) { \ + printk("%02X%s", ptr[__i], (((__i + 1) % 4) \ + == 0)?" ":" ");\ + if (((__i + 1) % 16) == 0) \ + printk("\n"); \ + } \ + printk(KERN_DEBUG "\n"); \ + } \ + } while(0); + +void rtl_dbgp_flag_init(struct ieee80211_hw *hw); +void rtl_proc_add_one(struct ieee80211_hw *hw); +void rtl_proc_remove_one(struct ieee80211_hw *hw); +void rtl_proc_add_topdir(void); +void rtl_proc_remove_topdir(void); +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/efuse.c +++ linux-3.13.0/drivers/staging/rtl8821ae/efuse.c @@ -0,0 +1,1285 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * Tmis program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * Tmis program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * tmis program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * Tme full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ +#include "wifi.h" +#include "efuse.h" +#include "btcoexist/halbt_precomp.h" +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)) +#include +#endif + +static const u8 MAX_PGPKT_SIZE = 9; +static const u8 PGPKT_DATA_SIZE = 8; +static const int EFUSE_MAX_SIZE = 512; + +static const struct efuse_map RTL8712_SDIO_EFUSE_TABLE[] = { + {0, 0, 0, 2}, + {0, 1, 0, 2}, + {0, 2, 0, 2}, + {1, 0, 0, 1}, + {1, 0, 1, 1}, + {1, 1, 0, 1}, + {1, 1, 1, 3}, + {1, 3, 0, 17}, + {3, 3, 1, 48}, + {10, 0, 0, 6}, + {10, 3, 0, 1}, + {10, 3, 1, 1}, + {11, 0, 0, 28} +}; + +static void efuse_shadow_read_1byte(struct ieee80211_hw *hw, u16 offset, + u8 * value); +static void efuse_shadow_read_2byte(struct ieee80211_hw *hw, u16 offset, + u16 * value); +static void efuse_shadow_read_4byte(struct ieee80211_hw *hw, u16 offset, + u32 * value); +static void efuse_shadow_write_1byte(struct ieee80211_hw *hw, u16 offset, + u8 value); +static void efuse_shadow_write_2byte(struct ieee80211_hw *hw, u16 offset, + u16 value); +static void efuse_shadow_write_4byte(struct ieee80211_hw *hw, u16 offset, + u32 value); +static int efuse_one_byte_write(struct ieee80211_hw *hw, u16 addr, + u8 data); +static void efuse_read_all_map(struct ieee80211_hw *hw, u8 * efuse); +static int efuse_pg_packet_read(struct ieee80211_hw *hw, u8 offset, + u8 *data); +static int efuse_pg_packet_write(struct ieee80211_hw *hw, u8 offset, + u8 word_en, u8 * data); +static void efuse_word_enable_data_read(u8 word_en, u8 * sourdata, + u8 * targetdata); +static u8 efuse_word_enable_data_write(struct ieee80211_hw *hw, + u16 efuse_addr, u8 word_en, u8 * data); +static void efuse_power_switch(struct ieee80211_hw *hw, u8 bwrite, + u8 pwrstate); +static u16 efuse_get_current_size(struct ieee80211_hw *hw); +static u8 efuse_calculate_word_cnts(u8 word_en); + +void efuse_initialize(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 bytetemp; + u8 temp; + + bytetemp = rtl_read_byte(rtlpriv, rtlpriv->cfg->maps[SYS_FUNC_EN] + 1); + temp = bytetemp | 0x20; + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[SYS_FUNC_EN] + 1, temp); + + bytetemp = rtl_read_byte(rtlpriv, rtlpriv->cfg->maps[SYS_ISO_CTRL] + 1); + temp = bytetemp & 0xFE; + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[SYS_ISO_CTRL] + 1, temp); + + bytetemp = rtl_read_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_TEST] + 3); + temp = bytetemp | 0x80; + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_TEST] + 3, temp); + + rtl_write_byte(rtlpriv, 0x2F8, 0x3); + + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL] + 3, 0x72); + +} + +u8 efuse_read_1byte(struct ieee80211_hw *hw, u16 address) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 data; + u8 bytetemp; + u8 temp; + u32 k = 0; + const u32 efuse_real_content_len = + rtlpriv->cfg->maps[EFUSE_REAL_CONTENT_SIZE]; + + if (address < efuse_real_content_len) { + temp = address & 0xFF; + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL] + 1, + temp); + bytetemp = rtl_read_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_CTRL] + 2); + temp = ((address >> 8) & 0x03) | (bytetemp & 0xFC); + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL] + 2, + temp); + + bytetemp = rtl_read_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_CTRL] + 3); + temp = bytetemp & 0x7F; + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL] + 3, + temp); + + bytetemp = rtl_read_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_CTRL] + 3); + while (!(bytetemp & 0x80)) { + bytetemp = rtl_read_byte(rtlpriv, + rtlpriv->cfg-> + maps[EFUSE_CTRL] + 3); + k++; + if (k == 1000) { + k = 0; + break; + } + } + data = rtl_read_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL]); + return data; + } else + return 0xFF; + +} +//EXPORT_SYMBOL(efuse_read_1byte); + +void efuse_write_1byte(struct ieee80211_hw *hw, u16 address, u8 value) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 bytetemp; + u8 temp; + u32 k = 0; + const u32 efuse_real_content_len = + rtlpriv->cfg->maps[EFUSE_REAL_CONTENT_SIZE]; + + RT_TRACE(COMP_EFUSE, DBG_LOUD, + ("Addr=%x Data =%x\n", address, value)); + + if (address < efuse_real_content_len) { + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL], value); + + temp = address & 0xFF; + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL] + 1, + temp); + bytetemp = rtl_read_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_CTRL] + 2); + + temp = ((address >> 8) & 0x03) | (bytetemp & 0xFC); + rtl_write_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_CTRL] + 2, temp); + + bytetemp = rtl_read_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_CTRL] + 3); + temp = bytetemp | 0x80; + rtl_write_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_CTRL] + 3, temp); + + bytetemp = rtl_read_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_CTRL] + 3); + + while (bytetemp & 0x80) { + bytetemp = rtl_read_byte(rtlpriv, + rtlpriv->cfg-> + maps[EFUSE_CTRL] + 3); + k++; + if (k == 100) { + k = 0; + break; + } + } + } + +} + +void read_efuse_byte(struct ieee80211_hw *hw, u16 _offset, u8 *pbuf) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 value32; + u8 readbyte; + u16 retry; + + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL] + 1, + (_offset & 0xff)); + readbyte = rtl_read_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL] + 2); + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL] + 2, + ((_offset >> 8) & 0x03) | (readbyte & 0xfc)); + + readbyte = rtl_read_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL] + 3); + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL] + 3, + (readbyte & 0x7f)); + + retry = 0; + value32 = rtl_read_dword(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL]); + while (!(((value32 >> 24) & 0xff) & 0x80) && (retry < 10000)) { + value32 = rtl_read_dword(rtlpriv, + rtlpriv->cfg->maps[EFUSE_CTRL]); + retry++; + } + + udelay(50); + value32 = rtl_read_dword(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL]); + + *pbuf = (u8) (value32 & 0xff); +} + +void read_efuse(struct ieee80211_hw *hw, u16 _offset, u16 _size_byte, u8 *pbuf) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + u8 efuse_tbl[rtlpriv->cfg->maps[EFUSE_HWSET_MAX_SIZE]]; + u8 rtemp8[1]; + u16 efuse_addr = 0; + u8 offset, wren; + u8 u1temp = 0; + u16 i; + u16 j; + const u16 efuse_max_section = + rtlpriv->cfg->maps[EFUSE_MAX_SECTION_MAP]; + const u32 efuse_real_content_len = + rtlpriv->cfg->maps[EFUSE_REAL_CONTENT_SIZE]; + u16 efuse_word[efuse_max_section][EFUSE_MAX_WORD_UNIT]; + u16 efuse_utilized = 0; + u8 efuse_usage; + + if ((_offset + _size_byte) > rtlpriv->cfg->maps[EFUSE_HWSET_MAX_SIZE]) { + RT_TRACE(COMP_EFUSE, DBG_LOUD, + ("read_efuse(): Invalid offset(%#x) with read " + "bytes(%#x)!!\n", _offset, _size_byte)); + return; + } + + for (i = 0; i < efuse_max_section; i++) + for (j = 0; j < EFUSE_MAX_WORD_UNIT; j++) + efuse_word[i][j] = 0xFFFF; + + read_efuse_byte(hw, efuse_addr, rtemp8); + if (*rtemp8 != 0xFF) { + efuse_utilized++; + RTPRINT(rtlpriv, FEEPROM, EFUSE_READ_ALL, + ("Addr=%d\n", efuse_addr)); + efuse_addr++; + } + + while ((*rtemp8 != 0xFF) && (efuse_addr < efuse_real_content_len)) { + /* Check PG header for section num. */ + if((*rtemp8 & 0x1F ) == 0x0F) {/* extended header */ + u1temp =( (*rtemp8 & 0xE0) >> 5); + read_efuse_byte(hw, efuse_addr, rtemp8); + + if((*rtemp8 & 0x0F) == 0x0F) { + efuse_addr++; + read_efuse_byte(hw, efuse_addr, rtemp8); + + if (*rtemp8 != 0xFF && + (efuse_addr < efuse_real_content_len)) { + efuse_addr++; + } + continue; + } else { + offset = ((*rtemp8 & 0xF0) >> 1) | u1temp; + wren = (*rtemp8 & 0x0F); + efuse_addr++; + } + } else { + offset = ((*rtemp8 >> 4) & 0x0f); + wren = (*rtemp8 & 0x0f); + } + + if (offset < efuse_max_section) { + RTPRINT(rtlpriv, FEEPROM, EFUSE_READ_ALL, + ("offset-%d Worden=%x\n", offset, wren)); + + for (i = 0; i < EFUSE_MAX_WORD_UNIT; i++) { + if (!(wren & 0x01)) { + RTPRINT(rtlpriv, FEEPROM, + EFUSE_READ_ALL, ("Addr=%d\n", + efuse_addr)); + + read_efuse_byte(hw, efuse_addr, rtemp8); + efuse_addr++; + efuse_utilized++; + efuse_word[offset][i] = (*rtemp8 & + 0xff); + + if (efuse_addr >= + efuse_real_content_len) + break; + + RTPRINT(rtlpriv, FEEPROM, + EFUSE_READ_ALL, ("Addr=%d\n", + efuse_addr)); + + read_efuse_byte(hw, efuse_addr, rtemp8); + efuse_addr++; + efuse_utilized++; + efuse_word[offset][i] |= + (((u16) * rtemp8 << 8) & 0xff00); + + if (efuse_addr >= efuse_real_content_len) + break; + } + + wren >>= 1; + } + } + + RTPRINT(rtlpriv, FEEPROM, EFUSE_READ_ALL, + ("Addr=%d\n", efuse_addr)); + read_efuse_byte(hw, efuse_addr, rtemp8); + if (*rtemp8 != 0xFF && (efuse_addr < efuse_real_content_len)) { + efuse_utilized++; + efuse_addr++; + } + } + + for (i = 0; i < efuse_max_section; i++) { + for (j = 0; j < EFUSE_MAX_WORD_UNIT; j++) { + efuse_tbl[(i * 8) + (j * 2)] = + (efuse_word[i][j] & 0xff); + efuse_tbl[(i * 8) + ((j * 2) + 1)] = + ((efuse_word[i][j] >> 8) & 0xff); + } + } + + for (i = 0; i < _size_byte; i++) + pbuf[i] = efuse_tbl[_offset + i]; + + rtlefuse->efuse_usedbytes = efuse_utilized; + efuse_usage = (u8) ((efuse_utilized * 100) / efuse_real_content_len); + rtlefuse->efuse_usedpercentage = efuse_usage; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_EFUSE_BYTES, + (u8 *) & efuse_utilized); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_EFUSE_USAGE, + (u8 *) & efuse_usage); +} + +bool efuse_shadow_update_chk(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + u8 section_idx, i, Base; + u16 words_need = 0, hdr_num = 0, totalbytes, efuse_used; + bool bwordchanged, bresult = true; + + for (section_idx = 0; section_idx < 16; section_idx++) { + Base = section_idx * 8; + bwordchanged = false; + + for (i = 0; i < 8; i = i + 2) { + if ((rtlefuse->efuse_map[EFUSE_INIT_MAP][Base + i] != + rtlefuse->efuse_map[EFUSE_MODIFY_MAP][Base + i]) || + (rtlefuse->efuse_map[EFUSE_INIT_MAP][Base + i + 1] != + rtlefuse->efuse_map[EFUSE_MODIFY_MAP][Base + i + + 1])) { + words_need++; + bwordchanged = true; + } + } + + if (bwordchanged == true) + hdr_num++; + } + + totalbytes = hdr_num + words_need * 2; + efuse_used = rtlefuse->efuse_usedbytes; + + if ((totalbytes + efuse_used) >= (EFUSE_MAX_SIZE - + rtlpriv->cfg->maps[EFUSE_OOB_PROTECT_BYTES_LEN])) + bresult = false; + + RT_TRACE(COMP_EFUSE, DBG_LOUD, + ("efuse_shadow_update_chk(): totalbytes(%#x), " + "hdr_num(%#x), words_need(%#x), efuse_used(%d)\n", + totalbytes, hdr_num, words_need, efuse_used)); + + return bresult; +} + +void efuse_shadow_read(struct ieee80211_hw *hw, u8 type, + u16 offset, u32 *value) +{ + if (type == 1) + efuse_shadow_read_1byte(hw, offset, (u8 *) value); + else if (type == 2) + efuse_shadow_read_2byte(hw, offset, (u16 *) value); + else if (type == 4) + efuse_shadow_read_4byte(hw, offset, (u32 *) value); + +} + +void efuse_shadow_write(struct ieee80211_hw *hw, u8 type, u16 offset, + u32 value) +{ + if (type == 1) + efuse_shadow_write_1byte(hw, offset, (u8) value); + else if (type == 2) + efuse_shadow_write_2byte(hw, offset, (u16) value); + else if (type == 4) + efuse_shadow_write_4byte(hw, offset, (u32) value); + +} + +bool efuse_shadow_update(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + u16 i, offset, base; + u8 word_en = 0x0F; + u8 first_pg = false; + + RT_TRACE(COMP_EFUSE, DBG_LOUD, ("\n")); + + if (!efuse_shadow_update_chk(hw)) { + efuse_read_all_map(hw, &rtlefuse->efuse_map[EFUSE_INIT_MAP][0]); + memcpy(&rtlefuse->efuse_map[EFUSE_MODIFY_MAP][0], + &rtlefuse->efuse_map[EFUSE_INIT_MAP][0], + rtlpriv->cfg->maps[EFUSE_HWSET_MAX_SIZE]); + + RT_TRACE(COMP_EFUSE, DBG_LOUD, + ("efuse out of capacity!!\n")); + return false; + } + efuse_power_switch(hw, true, true); + + for (offset = 0; offset < 16; offset++) { + + word_en = 0x0F; + base = offset * 8; + + for (i = 0; i < 8; i++) { + if (first_pg == true) { + + word_en &= ~(BIT(i / 2)); + + rtlefuse->efuse_map[EFUSE_INIT_MAP][base + i] = + rtlefuse->efuse_map[EFUSE_MODIFY_MAP][base + i]; + } else { + + if (rtlefuse->efuse_map[EFUSE_INIT_MAP][base + i] != + rtlefuse->efuse_map[EFUSE_MODIFY_MAP][base + i]) { + word_en &= ~(BIT(i / 2)); + + rtlefuse->efuse_map[EFUSE_INIT_MAP][base + i] = + rtlefuse->efuse_map[EFUSE_MODIFY_MAP][base + i]; + } + } + } + + if (word_en != 0x0F) { + u8 tmpdata[8]; + memcpy(tmpdata, (&rtlefuse->efuse_map[EFUSE_MODIFY_MAP][base]), 8); + RT_PRINT_DATA(rtlpriv, COMP_INIT, DBG_LOUD, + ("U-efuse\n"), tmpdata, 8); + + if (!efuse_pg_packet_write(hw, (u8) offset, word_en, + tmpdata)) { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("PG section(%#x) fail!!\n", offset)); + break; + } + } + + } + + efuse_power_switch(hw, true, false); + efuse_read_all_map(hw, &rtlefuse->efuse_map[EFUSE_INIT_MAP][0]); + + memcpy(&rtlefuse->efuse_map[EFUSE_MODIFY_MAP][0], + &rtlefuse->efuse_map[EFUSE_INIT_MAP][0], + rtlpriv->cfg->maps[EFUSE_HWSET_MAX_SIZE]); + + RT_TRACE(COMP_EFUSE, DBG_LOUD, ("\n")); + return true; +} + +void rtl_efuse_shadow_map_update(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + + if (rtlefuse->autoload_failflag == true) { + memset((&rtlefuse->efuse_map[EFUSE_INIT_MAP][0]), + 0xFF, rtlpriv->cfg->maps[EFUSE_HWSET_MAX_SIZE]); + } else { + efuse_read_all_map(hw, &rtlefuse->efuse_map[EFUSE_INIT_MAP][0]); + } + + memcpy(&rtlefuse->efuse_map[EFUSE_MODIFY_MAP][0], + &rtlefuse->efuse_map[EFUSE_INIT_MAP][0], + rtlpriv->cfg->maps[EFUSE_HWSET_MAX_SIZE]); + +} +//EXPORT_SYMBOL(rtl_efuse_shadow_map_update); + +void efuse_force_write_vendor_Id(struct ieee80211_hw *hw) +{ + u8 tmpdata[8] = { 0xFF, 0xFF, 0xEC, 0x10, 0xFF, 0xFF, 0xFF, 0xFF }; + + efuse_power_switch(hw, true, true); + + efuse_pg_packet_write(hw, 1, 0xD, tmpdata); + + efuse_power_switch(hw, true, false); + +} + +void efuse_re_pg_section(struct ieee80211_hw *hw, u8 section_idx) +{ +} + +static void efuse_shadow_read_1byte(struct ieee80211_hw *hw, + u16 offset, u8 *value) +{ + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + *value = rtlefuse->efuse_map[EFUSE_MODIFY_MAP][offset]; +} + +static void efuse_shadow_read_2byte(struct ieee80211_hw *hw, + u16 offset, u16 *value) +{ + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + + *value = rtlefuse->efuse_map[EFUSE_MODIFY_MAP][offset]; + *value |= rtlefuse->efuse_map[EFUSE_MODIFY_MAP][offset + 1] << 8; + +} + +static void efuse_shadow_read_4byte(struct ieee80211_hw *hw, + u16 offset, u32 *value) +{ + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + + *value = rtlefuse->efuse_map[EFUSE_MODIFY_MAP][offset]; + *value |= rtlefuse->efuse_map[EFUSE_MODIFY_MAP][offset + 1] << 8; + *value |= rtlefuse->efuse_map[EFUSE_MODIFY_MAP][offset + 2] << 16; + *value |= rtlefuse->efuse_map[EFUSE_MODIFY_MAP][offset + 3] << 24; +} + +static void efuse_shadow_write_1byte(struct ieee80211_hw *hw, + u16 offset, u8 value) +{ + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + + rtlefuse->efuse_map[EFUSE_MODIFY_MAP][offset] = value; +} + +static void efuse_shadow_write_2byte(struct ieee80211_hw *hw, + u16 offset, u16 value) +{ + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + + rtlefuse->efuse_map[EFUSE_MODIFY_MAP][offset] = value & 0x00FF; + rtlefuse->efuse_map[EFUSE_MODIFY_MAP][offset + 1] = value >> 8; + +} + +static void efuse_shadow_write_4byte(struct ieee80211_hw *hw, + u16 offset, u32 value) +{ + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + + rtlefuse->efuse_map[EFUSE_MODIFY_MAP][offset] = + (u8) (value & 0x000000FF); + rtlefuse->efuse_map[EFUSE_MODIFY_MAP][offset + 1] = + (u8) ((value >> 8) & 0x0000FF); + rtlefuse->efuse_map[EFUSE_MODIFY_MAP][offset + 2] = + (u8) ((value >> 16) & 0x00FF); + rtlefuse->efuse_map[EFUSE_MODIFY_MAP][offset + 3] = + (u8) ((value >> 24) & 0xFF); + +} + +int efuse_one_byte_read(struct ieee80211_hw *hw, u16 addr, u8 *data) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 tmpidx = 0; + int bresult; + + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL] + 1, + (u8) (addr & 0xff)); + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL] + 2, + ((u8) ((addr >> 8) & 0x03)) | + (rtl_read_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_CTRL] + 2) & + 0xFC)); + + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL] + 3, 0x72); + + while (!(0x80 & rtl_read_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_CTRL] + 3)) + && (tmpidx < 100)) { + tmpidx++; + } + + if (tmpidx < 100) { + *data = rtl_read_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL]); + bresult = true; + } else { + *data = 0xff; + bresult = false; + } + return bresult; +} +//EXPORT_SYMBOL(efuse_one_byte_read); + +static int efuse_one_byte_write(struct ieee80211_hw *hw, u16 addr, u8 data) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 tmpidx = 0; + bool bresult; + + RT_TRACE(COMP_EFUSE, DBG_LOUD, + ("Addr = %x Data=%x\n", addr, data)); + + rtl_write_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_CTRL] + 1, (u8) (addr & 0xff)); + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL] + 2, + (rtl_read_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_CTRL] + + 2) & 0xFC) | (u8) ((addr >> 8) & 0x03)); + + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL], data); + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CTRL] + 3, 0xF2); + + while ((0x80 & rtl_read_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_CTRL] + 3)) + && (tmpidx < 100)) { + tmpidx++; + } + + if (tmpidx < 100) + bresult = true; + else + bresult = false; + + return bresult; +} + +static void efuse_read_all_map(struct ieee80211_hw *hw, u8 * efuse) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + efuse_power_switch(hw, false, true); + read_efuse(hw, 0, rtlpriv->cfg->maps[EFUSE_HWSET_MAX_SIZE], efuse); + efuse_power_switch(hw, false, false); +} + +static void efuse_read_data_case1(struct ieee80211_hw *hw, u16 *efuse_addr, + u8 efuse_data, u8 offset, u8 *tmpdata, + u8 *readstate) +{ + bool bdataempty = true; + u8 hoffset; + u8 tmpidx; + u8 hworden; + u8 word_cnts; + + hoffset = (efuse_data >> 4) & 0x0F; + hworden = efuse_data & 0x0F; + word_cnts = efuse_calculate_word_cnts(hworden); + + if (hoffset == offset) { + for (tmpidx = 0; tmpidx < word_cnts * 2; tmpidx++) { + if (efuse_one_byte_read(hw, *efuse_addr + 1 + tmpidx, + &efuse_data)) { + tmpdata[tmpidx] = efuse_data; + if (efuse_data != 0xff) + bdataempty = true; + } + } + + if (bdataempty == true) { + *readstate = PG_STATE_DATA; + } else { + *efuse_addr = *efuse_addr + (word_cnts * 2) + 1; + *readstate = PG_STATE_HEADER; + } + + } else { + *efuse_addr = *efuse_addr + (word_cnts * 2) + 1; + *readstate = PG_STATE_HEADER; + } +} + +static int efuse_pg_packet_read(struct ieee80211_hw *hw, u8 offset, u8 *data) +{ + u8 readstate = PG_STATE_HEADER; + + bool bcontinual = true; + + u8 efuse_data, word_cnts = 0; + u16 efuse_addr = 0; + u8 hworden = 0; + u8 tmpdata[8]; + + if (data == NULL) + return false; + if (offset > 15) + return false; + + memset(data, 0xff, PGPKT_DATA_SIZE * sizeof(u8)); + memset(tmpdata, 0xff, PGPKT_DATA_SIZE * sizeof(u8)); + + while (bcontinual && (efuse_addr < EFUSE_MAX_SIZE)) { + if (readstate & PG_STATE_HEADER) { + if (efuse_one_byte_read(hw, efuse_addr, &efuse_data) + && (efuse_data != 0xFF)) + efuse_read_data_case1(hw, &efuse_addr, efuse_data, offset, + tmpdata, &readstate); + else + bcontinual = false; + } else if (readstate & PG_STATE_DATA) { + efuse_word_enable_data_read(hworden, tmpdata, data); + efuse_addr = efuse_addr + (word_cnts * 2) + 1; + readstate = PG_STATE_HEADER; + } + + } + + if ((data[0] == 0xff) && (data[1] == 0xff) && + (data[2] == 0xff) && (data[3] == 0xff) && + (data[4] == 0xff) && (data[5] == 0xff) && + (data[6] == 0xff) && (data[7] == 0xff)) + return false; + else + return true; + +} + +static void efuse_write_data_case1(struct ieee80211_hw *hw, u16 *efuse_addr, + u8 efuse_data, u8 offset, int *bcontinual, + u8 *write_state, struct pgpkt_struct *target_pkt, + int *repeat_times, int *bresult, u8 word_en) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct pgpkt_struct tmp_pkt; + int bdataempty = true; + u8 originaldata[8 * sizeof(u8)]; + u8 badworden = 0x0F; + u8 match_word_en, tmp_word_en; + u8 tmpindex; + u8 tmp_header = efuse_data; + u8 tmp_word_cnts; + + tmp_pkt.offset = (tmp_header >> 4) & 0x0F; + tmp_pkt.word_en = tmp_header & 0x0F; + tmp_word_cnts = efuse_calculate_word_cnts(tmp_pkt.word_en); + + if (tmp_pkt.offset != target_pkt->offset) { + *efuse_addr = *efuse_addr + (tmp_word_cnts * 2) + 1; + *write_state = PG_STATE_HEADER; + } else { + for (tmpindex = 0; tmpindex < (tmp_word_cnts * 2); tmpindex++) { + if (efuse_one_byte_read(hw, + (*efuse_addr + 1 + tmpindex), + &efuse_data) && (efuse_data != 0xFF)) + bdataempty = false; + } + + if (bdataempty == false) { + *efuse_addr = *efuse_addr + (tmp_word_cnts * 2) + 1; + *write_state = PG_STATE_HEADER; + } else { + match_word_en = 0x0F; + if (!((target_pkt->word_en & BIT(0)) | + (tmp_pkt.word_en & BIT(0)))) + match_word_en &= (~BIT(0)); + + if (!((target_pkt->word_en & BIT(1)) | + (tmp_pkt.word_en & BIT(1)))) + match_word_en &= (~BIT(1)); + + if (!((target_pkt->word_en & BIT(2)) | + (tmp_pkt.word_en & BIT(2)))) + match_word_en &= (~BIT(2)); + + if (!((target_pkt->word_en & BIT(3)) | + (tmp_pkt.word_en & BIT(3)))) + match_word_en &= (~BIT(3)); + + if ((match_word_en & 0x0F) != 0x0F) { + badworden = efuse_word_enable_data_write(hw, + *efuse_addr + 1, + tmp_pkt.word_en, + target_pkt->data); + + if (0x0F != (badworden & 0x0F)) { + u8 reorg_offset = offset; + u8 reorg_worden = badworden; + efuse_pg_packet_write(hw, reorg_offset, + reorg_worden, + originaldata); + } + + tmp_word_en = 0x0F; + if ((target_pkt->word_en & BIT(0)) ^ + (match_word_en & BIT(0))) + tmp_word_en &= (~BIT(0)); + + if ((target_pkt->word_en & BIT(1)) ^ + (match_word_en & BIT(1))) + tmp_word_en &= (~BIT(1)); + + if ((target_pkt->word_en & BIT(2)) ^ + (match_word_en & BIT(2))) + tmp_word_en &= (~BIT(2)); + + if ((target_pkt->word_en & BIT(3)) ^ + (match_word_en & BIT(3))) + tmp_word_en &= (~BIT(3)); + + if ((tmp_word_en & 0x0F) != 0x0F) { + *efuse_addr = efuse_get_current_size(hw); + target_pkt->offset = offset; + target_pkt->word_en = tmp_word_en; + } else { + *bcontinual = false; + } + *write_state = PG_STATE_HEADER; + *repeat_times += 1; + if (*repeat_times > EFUSE_REPEAT_THRESHOLD_) { + *bcontinual = false; + *bresult = false; + } + } else { + *efuse_addr += (2 * tmp_word_cnts) + 1; + target_pkt->offset = offset; + target_pkt->word_en = word_en; + *write_state = PG_STATE_HEADER; + } + } + } + RTPRINT(rtlpriv, FEEPROM, EFUSE_PG, ("efuse PG_STATE_HEADER-1\n")); +} + +static void efuse_write_data_case2(struct ieee80211_hw *hw, u16 *efuse_addr, + int *bcontinual, u8 *write_state, + struct pgpkt_struct target_pkt, + int *repeat_times, int *bresult) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct pgpkt_struct tmp_pkt; + u8 pg_header; + u8 tmp_header; + u8 originaldata[8 * sizeof(u8)]; + u8 tmp_word_cnts; + u8 badworden = 0x0F; + + pg_header = ((target_pkt.offset << 4) & 0xf0) | target_pkt.word_en; + efuse_one_byte_write(hw, *efuse_addr, pg_header); + efuse_one_byte_read(hw, *efuse_addr, &tmp_header); + + if (tmp_header == pg_header) { + *write_state = PG_STATE_DATA; + } else if (tmp_header == 0xFF) { + *write_state = PG_STATE_HEADER; + *repeat_times += 1; + if (*repeat_times > EFUSE_REPEAT_THRESHOLD_) { + *bcontinual = false; + *bresult = false; + } + } else { + tmp_pkt.offset = (tmp_header >> 4) & 0x0F; + tmp_pkt.word_en = tmp_header & 0x0F; + + tmp_word_cnts = efuse_calculate_word_cnts(tmp_pkt.word_en); + + memset(originaldata, 0xff, 8 * sizeof(u8)); + + if (efuse_pg_packet_read(hw, tmp_pkt.offset, originaldata)) { + badworden = efuse_word_enable_data_write(hw, + *efuse_addr + 1, + tmp_pkt.word_en, + originaldata); + + if (0x0F != (badworden & 0x0F)) { + u8 reorg_offset = tmp_pkt.offset; + u8 reorg_worden = badworden; + efuse_pg_packet_write(hw, reorg_offset, + reorg_worden, + originaldata); + *efuse_addr = efuse_get_current_size(hw); + } else { + *efuse_addr = *efuse_addr + + (tmp_word_cnts * 2) + 1; + } + } else { + *efuse_addr = *efuse_addr + (tmp_word_cnts * 2) + 1; + } + + *write_state = PG_STATE_HEADER; + *repeat_times += 1; + if (*repeat_times > EFUSE_REPEAT_THRESHOLD_) { + *bcontinual = false; + *bresult = false; + } + + RTPRINT(rtlpriv, FEEPROM, EFUSE_PG, + ("efuse PG_STATE_HEADER-2\n")); + } +} + +static int efuse_pg_packet_write(struct ieee80211_hw *hw, + u8 offset, u8 word_en, u8 *data) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct pgpkt_struct target_pkt; + u8 write_state = PG_STATE_HEADER; + int bcontinual = true, bdataempty = true, bresult = true; + u16 efuse_addr = 0; + u8 efuse_data; + u8 target_word_cnts = 0; + u8 badworden = 0x0F; + static int repeat_times = 0; + + if (efuse_get_current_size(hw) >= (EFUSE_MAX_SIZE - + rtlpriv->cfg->maps[EFUSE_OOB_PROTECT_BYTES_LEN])) { + RTPRINT(rtlpriv, FEEPROM, EFUSE_PG, + ("efuse_pg_packet_write error \n")); + return false; + } + + target_pkt.offset = offset; + target_pkt.word_en = word_en; + + memset(target_pkt.data, 0xFF, 8 * sizeof(u8)); + + efuse_word_enable_data_read(word_en, data, target_pkt.data); + target_word_cnts = efuse_calculate_word_cnts(target_pkt.word_en); + + RTPRINT(rtlpriv, FEEPROM, EFUSE_PG, ("efuse Power ON\n")); + + while (bcontinual && (efuse_addr < (EFUSE_MAX_SIZE - + rtlpriv->cfg->maps[EFUSE_OOB_PROTECT_BYTES_LEN]))) { + + if (write_state == PG_STATE_HEADER) { + bdataempty = true; + badworden = 0x0F; + RTPRINT(rtlpriv, FEEPROM, EFUSE_PG, + ("efuse PG_STATE_HEADER\n")); + + if (efuse_one_byte_read(hw, efuse_addr, &efuse_data) && + (efuse_data != 0xFF)) + efuse_write_data_case1(hw, &efuse_addr, + efuse_data, offset, + &bcontinual, + &write_state, + &target_pkt, + &repeat_times, &bresult, + word_en); + else + efuse_write_data_case2(hw, &efuse_addr, + &bcontinual, + &write_state, + target_pkt, + &repeat_times, + &bresult); + + } else if (write_state == PG_STATE_DATA) { + RTPRINT(rtlpriv, FEEPROM, EFUSE_PG, + ("efuse PG_STATE_DATA\n")); + badworden = 0x0f; + badworden = + efuse_word_enable_data_write(hw, efuse_addr + 1, + target_pkt.word_en, + target_pkt.data); + + if ((badworden & 0x0F) == 0x0F) { + bcontinual = false; + } else { + efuse_addr = + efuse_addr + (2 * target_word_cnts) + 1; + + target_pkt.offset = offset; + target_pkt.word_en = badworden; + target_word_cnts = + efuse_calculate_word_cnts(target_pkt. + word_en); + write_state = PG_STATE_HEADER; + repeat_times++; + if (repeat_times > EFUSE_REPEAT_THRESHOLD_) { + bcontinual = false; + bresult = false; + } + RTPRINT(rtlpriv, FEEPROM, EFUSE_PG, + ("efuse PG_STATE_HEADER-3\n")); + } + } + } + + if (efuse_addr >= (EFUSE_MAX_SIZE - + rtlpriv->cfg->maps[EFUSE_OOB_PROTECT_BYTES_LEN])) { + RT_TRACE(COMP_EFUSE, DBG_LOUD, + ("efuse_addr(%#x) Out of size!!\n", efuse_addr)); + } + + return true; +} + +static void efuse_word_enable_data_read(u8 word_en, u8 * sourdata, + u8 *targetdata) +{ + if (!(word_en & BIT(0))) { + targetdata[0] = sourdata[0]; + targetdata[1] = sourdata[1]; + } + + if (!(word_en & BIT(1))) { + targetdata[2] = sourdata[2]; + targetdata[3] = sourdata[3]; + } + + if (!(word_en & BIT(2))) { + targetdata[4] = sourdata[4]; + targetdata[5] = sourdata[5]; + } + + if (!(word_en & BIT(3))) { + targetdata[6] = sourdata[6]; + targetdata[7] = sourdata[7]; + } +} + +static u8 efuse_word_enable_data_write(struct ieee80211_hw *hw, + u16 efuse_addr, u8 word_en, u8 *data) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u16 tmpaddr; + u16 start_addr = efuse_addr; + u8 badworden = 0x0F; + u8 tmpdata[8]; + + memset(tmpdata, 0xff, PGPKT_DATA_SIZE); + RT_TRACE(COMP_EFUSE, DBG_LOUD, + ("word_en = %x efuse_addr=%x\n", word_en, efuse_addr)); + + if (!(word_en & BIT(0))) { + tmpaddr = start_addr; + efuse_one_byte_write(hw, start_addr++, data[0]); + efuse_one_byte_write(hw, start_addr++, data[1]); + + efuse_one_byte_read(hw, tmpaddr, &tmpdata[0]); + efuse_one_byte_read(hw, tmpaddr + 1, &tmpdata[1]); + if ((data[0] != tmpdata[0]) || (data[1] != tmpdata[1])) + badworden &= (~BIT(0)); + } + + if (!(word_en & BIT(1))) { + tmpaddr = start_addr; + efuse_one_byte_write(hw, start_addr++, data[2]); + efuse_one_byte_write(hw, start_addr++, data[3]); + + efuse_one_byte_read(hw, tmpaddr, &tmpdata[2]); + efuse_one_byte_read(hw, tmpaddr + 1, &tmpdata[3]); + if ((data[2] != tmpdata[2]) || (data[3] != tmpdata[3])) + badworden &= (~BIT(1)); + } + + if (!(word_en & BIT(2))) { + tmpaddr = start_addr; + efuse_one_byte_write(hw, start_addr++, data[4]); + efuse_one_byte_write(hw, start_addr++, data[5]); + + efuse_one_byte_read(hw, tmpaddr, &tmpdata[4]); + efuse_one_byte_read(hw, tmpaddr + 1, &tmpdata[5]); + if ((data[4] != tmpdata[4]) || (data[5] != tmpdata[5])) + badworden &= (~BIT(2)); + } + + if (!(word_en & BIT(3))) { + tmpaddr = start_addr; + efuse_one_byte_write(hw, start_addr++, data[6]); + efuse_one_byte_write(hw, start_addr++, data[7]); + + efuse_one_byte_read(hw, tmpaddr, &tmpdata[6]); + efuse_one_byte_read(hw, tmpaddr + 1, &tmpdata[7]); + if ((data[6] != tmpdata[6]) || (data[7] != tmpdata[7])) + badworden &= (~BIT(3)); + } + + return badworden; +} + +static void efuse_power_switch(struct ieee80211_hw *hw, u8 bwrite, u8 pwrstate) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 tempval; + u16 tmpV16; + + if(rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + { + if (pwrstate == true) + { + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_ACCESS], 0x69); + + // 1.2V Power: From VDDON with Power Cut(0x0000h[15]), defualt valid + tmpV16 = rtl_read_word(rtlpriv, + rtlpriv->cfg->maps[SYS_ISO_CTRL]); + + printk("SYS_ISO_CTRL=%04x.\n",tmpV16); + if( ! (tmpV16 & PWC_EV12V ) ){ + tmpV16 |= PWC_EV12V ; + //PlatformEFIOWrite2Byte(pAdapter,REG_SYS_ISO_CTRL,tmpV16); + } + // Reset: 0x0000h[28], default valid + tmpV16 = rtl_read_word(rtlpriv, rtlpriv->cfg->maps[SYS_FUNC_EN]); + printk("SYS_FUNC_EN=%04x.\n",tmpV16); + if( !(tmpV16 & FEN_ELDR) ){ + tmpV16 |= FEN_ELDR ; + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[SYS_FUNC_EN], tmpV16); + } + + // Clock: Gated(0x0008h[5]) 8M(0x0008h[1]) clock from ANA, default valid + tmpV16 = rtl_read_word(rtlpriv, rtlpriv->cfg->maps[SYS_CLK] ); + printk("SYS_CLK=%04x.\n",tmpV16); + if( (!(tmpV16 & LOADER_CLK_EN) ) ||(!(tmpV16 & ANA8M) ) ) + { + tmpV16 |= (LOADER_CLK_EN |ANA8M ) ; + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[SYS_CLK], tmpV16); + } + + if(bwrite == true) + { + // Enable LDO 2.5V before read/write action + tempval = rtl_read_word(rtlpriv, rtlpriv->cfg->maps[EFUSE_TEST] + 3); + printk("EFUSE_TEST=%04x.\n",tmpV16); + tempval &= ~(BIT(3) | BIT(4) |BIT(5) | BIT(6)); + tempval |= (VOLTAGE_V25 << 3); + tempval |= BIT(7); + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_TEST] + 3, tempval); + } + } + else + { + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_ACCESS], 0x00); + if(bwrite == true){ + // Disable LDO 2.5V after read/write action + tempval = rtl_read_word(rtlpriv, rtlpriv->cfg->maps[EFUSE_TEST] + 3); + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_TEST] + 3, (tempval & 0x7F)); + } + } + } + else + { + if (pwrstate == true && (rtlhal->hw_type != + HARDWARE_TYPE_RTL8192SE)) { + + if(rtlhal->hw_type == HARDWARE_TYPE_RTL8188EE) + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_ACCESS], + 0x69); + + tmpV16 = rtl_read_word(rtlpriv, + rtlpriv->cfg->maps[SYS_ISO_CTRL]); + if (!(tmpV16 & rtlpriv->cfg->maps[EFUSE_PWC_EV12V])) { + tmpV16 |= rtlpriv->cfg->maps[EFUSE_PWC_EV12V]; + rtl_write_word(rtlpriv, + rtlpriv->cfg->maps[SYS_ISO_CTRL], + tmpV16); + } + + tmpV16 = rtl_read_word(rtlpriv, + rtlpriv->cfg->maps[SYS_FUNC_EN]); + if (!(tmpV16 & rtlpriv->cfg->maps[EFUSE_FEN_ELDR])) { + tmpV16 |= rtlpriv->cfg->maps[EFUSE_FEN_ELDR]; + rtl_write_word(rtlpriv, + rtlpriv->cfg->maps[SYS_FUNC_EN], tmpV16); + } + + tmpV16 = rtl_read_word(rtlpriv, rtlpriv->cfg->maps[SYS_CLK]); + if ((!(tmpV16 & rtlpriv->cfg->maps[EFUSE_LOADER_CLK_EN])) || + (!(tmpV16 & rtlpriv->cfg->maps[EFUSE_ANA8M]))) { + tmpV16 |= (rtlpriv->cfg->maps[EFUSE_LOADER_CLK_EN] | + rtlpriv->cfg->maps[EFUSE_ANA8M]); + rtl_write_word(rtlpriv, + rtlpriv->cfg->maps[SYS_CLK], tmpV16); + } + } + + if (pwrstate == true) { + if (bwrite == true) { + tempval = rtl_read_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_TEST] + + 3); + + if (rtlhal->hw_type != HARDWARE_TYPE_RTL8192SE) { + tempval &= 0x0F; + tempval |= (VOLTAGE_V25 << 4); + } + + rtl_write_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_TEST] + 3, + (tempval | 0x80)); + } + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192SE) { + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CLK], + 0x03); + } + + } else { + if(rtlhal->hw_type == HARDWARE_TYPE_RTL8188EE) + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_ACCESS], 0); + + if (bwrite == true) { + tempval = rtl_read_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_TEST] + + 3); + rtl_write_byte(rtlpriv, + rtlpriv->cfg->maps[EFUSE_TEST] + 3, + (tempval & 0x7F)); + } + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192SE) { + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[EFUSE_CLK], + 0x02); + } + + } + } + +} + +static u16 efuse_get_current_size(struct ieee80211_hw *hw) +{ + int bcontinual = true; + u16 efuse_addr = 0; + u8 hoffset, hworden; + u8 efuse_data, word_cnts; + + while (bcontinual && efuse_one_byte_read(hw, efuse_addr, &efuse_data) + && (efuse_addr < EFUSE_MAX_SIZE)) { + if (efuse_data != 0xFF) { + hoffset = (efuse_data >> 4) & 0x0F; + hworden = efuse_data & 0x0F; + word_cnts = efuse_calculate_word_cnts(hworden); + efuse_addr = efuse_addr + (word_cnts * 2) + 1; + } else { + bcontinual = false; + } + } + + return efuse_addr; +} + +static u8 efuse_calculate_word_cnts(u8 word_en) +{ + u8 word_cnts = 0; + if (!(word_en & BIT(0))) + word_cnts++; + if (!(word_en & BIT(1))) + word_cnts++; + if (!(word_en & BIT(2))) + word_cnts++; + if (!(word_en & BIT(3))) + word_cnts++; + return word_cnts; +} + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/efuse.h +++ linux-3.13.0/drivers/staging/rtl8821ae/efuse.h @@ -0,0 +1,130 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL_EFUSE_H_ +#define __RTL_EFUSE_H_ + +#define EFUSE_IC_ID_OFFSET 506 + +/* +#define EFUSE_REAL_CONTENT_LEN 512 +#define EFUSE_MAP_LEN 128 +#define EFUSE_MAX_SECTION 16 +#define EFUSE_MAX_WORD_UNIT 4 +#define EFUSE_IC_ID_OFFSET 506 +*/ + +#define EFUSE_MAX_WORD_UNIT 4 + +#define EFUSE_INIT_MAP 0 +#define EFUSE_MODIFY_MAP 1 + +#define PG_STATE_HEADER 0x01 +#define PG_STATE_WORD_0 0x02 +#define PG_STATE_WORD_1 0x04 +#define PG_STATE_WORD_2 0x08 +#define PG_STATE_WORD_3 0x10 +#define PG_STATE_DATA 0x20 + +#define PG_SWBYTE_H 0x01 +#define PG_SWBYTE_L 0x02 + +#define _POWERON_DELAY_ +#define _PRE_EXECUTE_READ_CMD_ + +#define EFUSE_REPEAT_THRESHOLD_ 3 +#define EFUSE_ERROE_HANDLE 1 + +struct efuse_map { + u8 offset; + u8 word_start; + u8 byte_start; + u8 byte_cnts; +}; + +struct pgpkt_struct { + u8 offset; + u8 word_en; + u8 data[8]; +}; + +enum efuse_data_item { + EFUSE_CHIP_ID = 0, + EFUSE_LDO_SETTING, + EFUSE_CLK_SETTING, + EFUSE_SDIO_SETTING, + EFUSE_CCCR, + EFUSE_SDIO_MODE, + EFUSE_OCR, + EFUSE_F0CIS, + EFUSE_F1CIS, + EFUSE_MAC_ADDR, + EFUSE_EEPROM_VER, + EFUSE_CHAN_PLAN, + EFUSE_TXPW_TAB +}; + +enum { + VOLTAGE_V25 = 0x03, + LDOE25_SHIFT = 28, +}; + +struct efuse_priv { + u8 id[2]; + u8 ldo_setting[2]; + u8 clk_setting[2]; + u8 cccr; + u8 sdio_mode; + u8 ocr[3]; + u8 cis0[17]; + u8 cis1[48]; + u8 mac_addr[6]; + u8 eeprom_verno; + u8 channel_plan; + u8 tx_power_b[14]; + u8 tx_power_g[14]; +}; + +extern void read_efuse_byte(struct ieee80211_hw *hw, u16 _offset, u8 *pbuf); +extern void efuse_initialize(struct ieee80211_hw *hw); +extern u8 efuse_read_1byte(struct ieee80211_hw *hw, u16 address); +extern int efuse_one_byte_read(struct ieee80211_hw *hw, u16 addr, u8 *data); +extern void efuse_write_1byte(struct ieee80211_hw *hw, u16 address, u8 value); +extern void read_efuse(struct ieee80211_hw *hw, u16 _offset, + u16 _size_byte, u8 * pbuf); +extern void efuse_shadow_read(struct ieee80211_hw *hw, u8 type, + u16 offset, u32 * value); +extern void efuse_shadow_write(struct ieee80211_hw *hw, u8 type, + u16 offset, u32 value); +extern bool efuse_shadow_update(struct ieee80211_hw *hw); +extern bool efuse_shadow_update_chk(struct ieee80211_hw *hw); +extern void rtl_efuse_shadow_map_update(struct ieee80211_hw *hw); +extern void efuse_force_write_vendor_Id(struct ieee80211_hw *hw); +extern void efuse_re_pg_section(struct ieee80211_hw *hw, u8 section_idx); +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/pci.c +++ linux-3.13.0/drivers/staging/rtl8821ae/pci.c @@ -0,0 +1,2549 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "core.h" +#include "wifi.h" +#include "pci.h" +#include "base.h" +#include "ps.h" +#include "efuse.h" +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)) +#include +#endif + +static const u16 pcibridge_vendors[PCI_BRIDGE_VENDOR_MAX] = { + INTEL_VENDOR_ID, + ATI_VENDOR_ID, + AMD_VENDOR_ID, + SIS_VENDOR_ID +}; + +static const u8 ac_to_hwq[] = { + VO_QUEUE, + VI_QUEUE, + BE_QUEUE, + BK_QUEUE +}; + +u8 _rtl_mac_to_hwqueue(struct ieee80211_hw *hw, + struct sk_buff *skb) +{ + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u16 fc = rtl_get_fc(skb); + u8 queue_index = skb_get_queue_mapping(skb); + + if (unlikely(ieee80211_is_beacon(fc))) + return BEACON_QUEUE; + if (ieee80211_is_mgmt(fc) || ieee80211_is_ctl(fc)) + return MGNT_QUEUE; + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192SE) + if (ieee80211_is_nullfunc(fc)) + return HIGH_QUEUE; + + return ac_to_hwq[queue_index]; +} + +/* Update PCI dependent default settings*/ +static void _rtl_pci_update_default_setting(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + u8 pcibridge_vendor = pcipriv->ndis_adapter.pcibridge_vendor; + u8 init_aspm; + + ppsc->reg_rfps_level = 0; + ppsc->b_support_aspm = 0; + + /*Update PCI ASPM setting */ + ppsc->const_amdpci_aspm = rtlpci->const_amdpci_aspm; + switch (rtlpci->const_pci_aspm) { + case 0: + /*No ASPM */ + break; + + case 1: + /*ASPM dynamically enabled/disable. */ + ppsc->reg_rfps_level |= RT_RF_LPS_LEVEL_ASPM; + break; + + case 2: + /*ASPM with Clock Req dynamically enabled/disable. */ + ppsc->reg_rfps_level |= (RT_RF_LPS_LEVEL_ASPM | + RT_RF_OFF_LEVL_CLK_REQ); + break; + + case 3: + /* + * Always enable ASPM and Clock Req + * from initialization to halt. + * */ + ppsc->reg_rfps_level &= ~(RT_RF_LPS_LEVEL_ASPM); + ppsc->reg_rfps_level |= (RT_RF_PS_LEVEL_ALWAYS_ASPM | + RT_RF_OFF_LEVL_CLK_REQ); + break; + + case 4: + /* + * Always enable ASPM without Clock Req + * from initialization to halt. + * */ + ppsc->reg_rfps_level &= ~(RT_RF_LPS_LEVEL_ASPM | + RT_RF_OFF_LEVL_CLK_REQ); + ppsc->reg_rfps_level |= RT_RF_PS_LEVEL_ALWAYS_ASPM; + break; + } + + ppsc->reg_rfps_level |= RT_RF_OFF_LEVL_HALT_NIC; + + /*Update Radio OFF setting */ + switch (rtlpci->const_hwsw_rfoff_d3) { + case 1: + if (ppsc->reg_rfps_level & RT_RF_LPS_LEVEL_ASPM) + ppsc->reg_rfps_level |= RT_RF_OFF_LEVL_ASPM; + break; + + case 2: + if (ppsc->reg_rfps_level & RT_RF_LPS_LEVEL_ASPM) + ppsc->reg_rfps_level |= RT_RF_OFF_LEVL_ASPM; + ppsc->reg_rfps_level |= RT_RF_OFF_LEVL_HALT_NIC; + break; + + case 3: + ppsc->reg_rfps_level |= RT_RF_OFF_LEVL_PCI_D3; + break; + } + + /*Set HW definition to determine if it supports ASPM. */ + switch (rtlpci->const_support_pciaspm) { + case 0:{ + /*Not support ASPM. */ + bool b_support_aspm = false; + ppsc->b_support_aspm = b_support_aspm; + break; + } + case 1:{ + /*Support ASPM. */ + bool b_support_aspm = true; + bool b_support_backdoor = true; + ppsc->b_support_aspm = b_support_aspm; + + /*if(priv->oem_id == RT_CID_TOSHIBA && + !priv->ndis_adapter.amd_l1_patch) + b_support_backdoor = false; */ + + ppsc->b_support_backdoor = b_support_backdoor; + + break; + } + case 2: + /*ASPM value set by chipset. */ + if (pcibridge_vendor == PCI_BRIDGE_VENDOR_INTEL) { + bool b_support_aspm = true; + ppsc->b_support_aspm = b_support_aspm; + } + break; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("switch case not process \n")); + break; + } + + /* toshiba aspm issue, toshiba will set aspm selfly + * so we should not set aspm in driver */ + pci_read_config_byte(rtlpci->pdev, 0x80, &init_aspm); + if (rtlpriv->rtlhal.hw_type == HARDWARE_TYPE_RTL8192SE && + init_aspm == 0x43) + ppsc->b_support_aspm = false; +} + +static bool _rtl_pci_platform_switch_device_pci_aspm(struct ieee80211_hw *hw, + u8 value) +{ + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + bool bresult = false; + + if (rtlhal->hw_type != HARDWARE_TYPE_RTL8192SE) + value |= 0x40; + + pci_write_config_byte(rtlpci->pdev, 0x80, value); + + return bresult; +} + +/*When we set 0x01 to enable clk request. Set 0x0 to disable clk req.*/ +static bool _rtl_pci_switch_clk_req(struct ieee80211_hw *hw, u8 value) +{ + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + bool bresult = false; + + pci_write_config_byte(rtlpci->pdev, 0x81, value); + bresult = true; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192SE) + udelay(100); + + return bresult; +} + +/*Disable RTL8192SE ASPM & Disable Pci Bridge ASPM*/ +static void rtl_pci_disable_aspm(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + u8 pcibridge_vendor = pcipriv->ndis_adapter.pcibridge_vendor; + u32 pcicfg_addrport = pcipriv->ndis_adapter.pcicfg_addrport; + u8 num4bytes = pcipriv->ndis_adapter.num4bytes; + /*Retrieve original configuration settings. */ + u8 linkctrl_reg = pcipriv->ndis_adapter.linkctrl_reg; + u16 pcibridge_linkctrlreg = pcipriv->ndis_adapter. + pcibridge_linkctrlreg; + u16 aspmlevel = 0; + + if (!ppsc->b_support_aspm) + return; + + if (pcibridge_vendor == PCI_BRIDGE_VENDOR_UNKNOWN) { + RT_TRACE(COMP_POWER, DBG_TRACE, + ("PCI(Bridge) UNKNOWN.\n")); + + return; + } + + if (ppsc->reg_rfps_level & RT_RF_OFF_LEVL_CLK_REQ) { + RT_CLEAR_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_CLK_REQ); + _rtl_pci_switch_clk_req(hw, 0x0); + } + + if (1) { + /*for promising device will in L0 state after an I/O. */ + u8 tmp_u1b; + pci_read_config_byte(rtlpci->pdev, 0x80, &tmp_u1b); + } + + /*Set corresponding value. */ + aspmlevel |= BIT(0) | BIT(1); + linkctrl_reg &= ~aspmlevel; + pcibridge_linkctrlreg &= ~(BIT(0) | BIT(1)); + + _rtl_pci_platform_switch_device_pci_aspm(hw, linkctrl_reg); + udelay(50); + + /*4 Disable Pci Bridge ASPM */ + rtl_pci_raw_write_port_ulong(PCI_CONF_ADDRESS, + pcicfg_addrport + (num4bytes << 2)); + rtl_pci_raw_write_port_uchar(PCI_CONF_DATA, pcibridge_linkctrlreg); + + udelay(50); + +} + +/* + *Enable RTL8192SE ASPM & Enable Pci Bridge ASPM for + *power saving We should follow the sequence to enable + *RTL8192SE first then enable Pci Bridge ASPM + *or the system will show bluescreen. + */ +static void rtl_pci_enable_aspm(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + u8 pcibridge_vendor = pcipriv->ndis_adapter.pcibridge_vendor; + u32 pcicfg_addrport = pcipriv->ndis_adapter.pcicfg_addrport; + u8 num4bytes = pcipriv->ndis_adapter.num4bytes; + u16 aspmlevel; + u8 u_pcibridge_aspmsetting; + u8 u_device_aspmsetting; + + if (!ppsc->b_support_aspm) + return; + + if (pcibridge_vendor == PCI_BRIDGE_VENDOR_UNKNOWN) { + RT_TRACE(COMP_POWER, DBG_TRACE, + ("PCI(Bridge) UNKNOWN.\n")); + return; + } + + /*4 Enable Pci Bridge ASPM */ + rtl_pci_raw_write_port_ulong(PCI_CONF_ADDRESS, + pcicfg_addrport + (num4bytes << 2)); + + u_pcibridge_aspmsetting = + pcipriv->ndis_adapter.pcibridge_linkctrlreg | + rtlpci->const_hostpci_aspm_setting; + + if (pcibridge_vendor == PCI_BRIDGE_VENDOR_INTEL) + u_pcibridge_aspmsetting &= ~BIT(0); + + rtl_pci_raw_write_port_uchar(PCI_CONF_DATA, u_pcibridge_aspmsetting); + + RT_TRACE(COMP_INIT, DBG_LOUD, + ("PlatformEnableASPM(): Write reg[%x] = %x\n", + (pcipriv->ndis_adapter.pcibridge_pciehdr_offset + 0x10), + u_pcibridge_aspmsetting)); + + udelay(50); + + /*Get ASPM level (with/without Clock Req) */ + aspmlevel = rtlpci->const_devicepci_aspm_setting; + u_device_aspmsetting = pcipriv->ndis_adapter.linkctrl_reg; + + /*_rtl_pci_platform_switch_device_pci_aspm(dev,*/ + /*(priv->ndis_adapter.linkctrl_reg | ASPMLevel)); */ + + u_device_aspmsetting |= aspmlevel; + + _rtl_pci_platform_switch_device_pci_aspm(hw, u_device_aspmsetting); + + if (ppsc->reg_rfps_level & RT_RF_OFF_LEVL_CLK_REQ) { + _rtl_pci_switch_clk_req(hw, (ppsc->reg_rfps_level & + RT_RF_OFF_LEVL_CLK_REQ) ? 1 : 0); + RT_SET_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_CLK_REQ); + } + udelay(100); +} + +static bool rtl_pci_get_amd_l1_patch(struct ieee80211_hw *hw) +{ + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + u32 pcicfg_addrport = pcipriv->ndis_adapter.pcicfg_addrport; + + bool status = false; + u8 offset_e0; + unsigned offset_e4; + + rtl_pci_raw_write_port_ulong(PCI_CONF_ADDRESS, + pcicfg_addrport + 0xE0); + rtl_pci_raw_write_port_uchar(PCI_CONF_DATA, 0xA0); + + rtl_pci_raw_write_port_ulong(PCI_CONF_ADDRESS, + pcicfg_addrport + 0xE0); + rtl_pci_raw_read_port_uchar(PCI_CONF_DATA, &offset_e0); + + if (offset_e0 == 0xA0) { + rtl_pci_raw_write_port_ulong(PCI_CONF_ADDRESS, + pcicfg_addrport + 0xE4); + rtl_pci_raw_read_port_ulong(PCI_CONF_DATA, &offset_e4); + if (offset_e4 & BIT(23)) + status = true; + } + + return status; +} + +/**/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,35)) +static u8 _rtl_pci_get_pciehdr_offset(struct ieee80211_hw *hw) +{ + u8 capability_offset; + u8 num4bytes = 0x34/4; + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + u32 pcicfg_addr_port = (pcipriv->ndis_adapter.pcibridge_busnum << 16)| + (pcipriv->ndis_adapter.pcibridge_devnum << 11)| + (pcipriv->ndis_adapter.pcibridge_funcnum << 8)| + (1 << 31); + + rtl_pci_raw_write_port_ulong(PCI_CONF_ADDRESS , pcicfg_addr_port + + (num4bytes << 2)); + rtl_pci_raw_read_port_uchar(PCI_CONF_DATA, &capability_offset); + while (capability_offset != 0) { + struct rtl_pci_capabilities_header capability_hdr; + + num4bytes = capability_offset / 4; + /* Read the header of the capability at this offset. + * If the retrieved capability is not the power management + * capability that we are looking for, follow the link to + * the next capability and continue looping. + */ + rtl_pci_raw_write_port_ulong(PCI_CONF_ADDRESS , + pcicfg_addr_port + + (num4bytes << 2)); + rtl_pci_raw_read_port_ushort(PCI_CONF_DATA, + (u16*)&capability_hdr); + /* Found the PCI express capability. */ + if (capability_hdr.capability_id == + PCI_CAPABILITY_ID_PCI_EXPRESS) + break; + else + capability_offset = capability_hdr.next; + } + return capability_offset; +} +#endif +/**/ + +bool rtl_pci_check_buddy_priv(struct ieee80211_hw *hw, + struct rtl_priv **buddy_priv) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + bool b_find_buddy_priv = false; + struct rtl_priv *temp_priv = NULL; + struct rtl_pci_priv *temp_pcipriv = NULL; + + if (!list_empty(&rtlpriv->glb_var->glb_priv_list)) { + list_for_each_entry(temp_priv, &rtlpriv->glb_var->glb_priv_list, + list) { + if (temp_priv) { + temp_pcipriv = + (struct rtl_pci_priv *)temp_priv->priv; + RT_TRACE(COMP_INIT, DBG_LOUD, + (("pcipriv->ndis_adapter.funcnumber %x \n"), + pcipriv->ndis_adapter.funcnumber)); + RT_TRACE(COMP_INIT, DBG_LOUD, + (("temp_pcipriv->ndis_adapter.funcnumber %x \n"), + temp_pcipriv->ndis_adapter.funcnumber)); + + if ((pcipriv->ndis_adapter.busnumber == + temp_pcipriv->ndis_adapter.busnumber) && + (pcipriv->ndis_adapter.devnumber == + temp_pcipriv->ndis_adapter.devnumber) && + (pcipriv->ndis_adapter.funcnumber != + temp_pcipriv->ndis_adapter.funcnumber)) { + b_find_buddy_priv = true; + break; + } + } + } + } + + RT_TRACE(COMP_INIT, DBG_LOUD, + (("b_find_buddy_priv %d \n"), b_find_buddy_priv)); + + if (b_find_buddy_priv) + *buddy_priv = temp_priv; + + return b_find_buddy_priv; +} + +void rtl_pci_get_linkcontrol_field(struct ieee80211_hw *hw) +{ + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + u8 capabilityoffset = pcipriv->ndis_adapter.pcibridge_pciehdr_offset; + u32 pcicfg_addrport = pcipriv->ndis_adapter.pcicfg_addrport; + u8 linkctrl_reg; + u8 num4bbytes; + + num4bbytes = (capabilityoffset + 0x10) / 4; + + /*Read Link Control Register */ + rtl_pci_raw_write_port_ulong(PCI_CONF_ADDRESS, + pcicfg_addrport + (num4bbytes << 2)); + rtl_pci_raw_read_port_uchar(PCI_CONF_DATA, &linkctrl_reg); + + pcipriv->ndis_adapter.pcibridge_linkctrlreg = linkctrl_reg; +} + +static void rtl_pci_parse_configuration(struct pci_dev *pdev, + struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + + u8 tmp; + int pos; + u8 linkctrl_reg; + + /*Link Control Register */ + pos = pci_find_capability(pdev, PCI_CAP_ID_EXP); + pci_read_config_byte(pdev, pos + PCI_EXP_LNKCTL, &linkctrl_reg); + pcipriv->ndis_adapter.linkctrl_reg = linkctrl_reg; + + RT_TRACE(COMP_INIT, DBG_TRACE, + ("Link Control Register =%x\n", + pcipriv->ndis_adapter.linkctrl_reg)); + + pci_read_config_byte(pdev, 0x98, &tmp); + tmp |= BIT(4); + pci_write_config_byte(pdev, 0x98, tmp); + + tmp = 0x17; + pci_write_config_byte(pdev, 0x70f, tmp); +} + +static void rtl_pci_init_aspm(struct ieee80211_hw *hw) +{ + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + + _rtl_pci_update_default_setting(hw); + + if (ppsc->reg_rfps_level & RT_RF_PS_LEVEL_ALWAYS_ASPM) { + /*Always enable ASPM & Clock Req. */ + rtl_pci_enable_aspm(hw); + RT_SET_PS_LEVEL(ppsc, RT_RF_PS_LEVEL_ALWAYS_ASPM); + } + +} + +static void _rtl_pci_io_handler_init(struct device *dev, + struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtlpriv->io.dev = dev; + + rtlpriv->io.write8_async = pci_write8_async; + rtlpriv->io.write16_async = pci_write16_async; + rtlpriv->io.write32_async = pci_write32_async; + + rtlpriv->io.read8_sync = pci_read8_sync; + rtlpriv->io.read16_sync = pci_read16_sync; + rtlpriv->io.read32_sync = pci_read32_sync; + +} + +static bool _rtl_pci_update_earlymode_info(struct ieee80211_hw *hw, + struct sk_buff *skb, + struct rtl_tcb_desc *tcb_desc, + u8 tid) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 additionlen = FCS_LEN; + struct sk_buff *next_skb; + + /* here open is 4, wep/tkip is 8, aes is 12*/ + if (info->control.hw_key) + additionlen += info->control.hw_key->icv_len; + + /* The most skb num is 6 */ + tcb_desc->empkt_num = 0; + spin_lock_bh(&rtlpriv->locks.waitq_lock); + skb_queue_walk(&rtlpriv->mac80211.skb_waitq[tid], next_skb) { + struct ieee80211_tx_info *next_info = + IEEE80211_SKB_CB(next_skb); + if (next_info->flags & IEEE80211_TX_CTL_AMPDU) { + tcb_desc->empkt_len[tcb_desc->empkt_num] = + next_skb->len + additionlen; + tcb_desc->empkt_num++; + } else { + break; + } + + if (skb_queue_is_last(&rtlpriv->mac80211.skb_waitq[tid], + next_skb)) + break; + + if (tcb_desc->empkt_num >= rtlhal->max_earlymode_num) + break; + } + spin_unlock_bh(&rtlpriv->locks.waitq_lock); + return true; +} + +/* just for early mode now */ +static void _rtl_pci_tx_chk_waitq(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct sk_buff *skb = NULL; + struct ieee80211_tx_info *info = NULL; + int tid; /* should be int */ + + if (!rtlpriv->rtlhal.b_earlymode_enable) + return; + if (rtlpriv->dm.supp_phymode_switch && + (rtlpriv->easy_concurrent_ctl.bswitch_in_process || + (rtlpriv->buddy_priv && + rtlpriv->buddy_priv->easy_concurrent_ctl.bswitch_in_process))) + return; + /* we juse use em for BE/BK/VI/VO */ + for (tid = 7; tid >= 0; tid--) { + u8 hw_queue = ac_to_hwq[rtl_tid_to_ac(hw, tid)]; + struct rtl8192_tx_ring *ring = &rtlpci->tx_ring[hw_queue]; + while (!mac->act_scanning && + rtlpriv->psc.rfpwr_state == ERFON) { + struct rtl_tcb_desc tcb_desc; + memset(&tcb_desc, 0, sizeof(struct rtl_tcb_desc)); + + spin_lock_bh(&rtlpriv->locks.waitq_lock); + if (!skb_queue_empty(&mac->skb_waitq[tid]) && + (ring->entries - skb_queue_len(&ring->queue) > + rtlhal->max_earlymode_num)) { + skb = skb_dequeue(&mac->skb_waitq[tid]); + } else { + spin_unlock_bh(&rtlpriv->locks.waitq_lock); + break; + } + spin_unlock_bh(&rtlpriv->locks.waitq_lock); + + /* Some macaddr can't do early mode. like + * multicast/broadcast/no_qos data */ + info = IEEE80211_SKB_CB(skb); + if (info->flags & IEEE80211_TX_CTL_AMPDU) + _rtl_pci_update_earlymode_info(hw, skb, + &tcb_desc, tid); + +/**/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)) + rtlpriv->intf_ops->adapter_tx(hw, skb, &tcb_desc); +#else +/**/ + rtlpriv->intf_ops->adapter_tx(hw, NULL, skb, &tcb_desc); +#endif +/**/ + } + } +} + +static void _rtl_pci_tx_isr(struct ieee80211_hw *hw, int prio) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl8192_tx_ring *ring = &rtlpci->tx_ring[prio]; + + while (skb_queue_len(&ring->queue)) { + struct sk_buff *skb; + struct ieee80211_tx_info *info; + u16 fc; + u8 tid; + u8 *entry; + + + if (rtlpriv->use_new_trx_flow) + entry = (u8 *)(&ring->buffer_desc[ring->idx]); + else + entry = (u8 *)(&ring->desc[ring->idx]); + + if (!rtlpriv->cfg->ops->is_tx_desc_closed(hw, prio, ring->idx)) + return; + + ring->idx = (ring->idx + 1) % ring->entries; + + skb = __skb_dequeue(&ring->queue); + + pci_unmap_single(rtlpci->pdev, + le32_to_cpu(rtlpriv->cfg->ops-> + get_desc((u8 *) entry, true, + HW_DESC_TXBUFF_ADDR)), + skb->len, PCI_DMA_TODEVICE); + + /* remove early mode header */ + if(rtlpriv->rtlhal.b_earlymode_enable) + skb_pull(skb, EM_HDR_LEN); + + RT_TRACE((COMP_INTR | COMP_SEND), DBG_TRACE, + ("new ring->idx:%d, " + "free: skb_queue_len:%d, free: seq:%d\n", + ring->idx, + skb_queue_len(&ring->queue), + *(u16 *) (skb->data + 22))); + + if(prio == TXCMD_QUEUE) { + dev_kfree_skb(skb); + goto tx_status_ok; + + } + + /* for sw LPS, just after NULL skb send out, we can + * sure AP kown we are sleeped, our we should not let + * rf to sleep*/ + fc = rtl_get_fc(skb); + if (ieee80211_is_nullfunc(fc)) { + if(ieee80211_has_pm(fc)) { + rtlpriv->mac80211.offchan_deley = true; + rtlpriv->psc.state_inap = 1; + } else { + rtlpriv->psc.state_inap = 0; + } + } + if (ieee80211_is_action(fc)) { + struct ieee80211_mgmt_compat *action_frame = + (struct ieee80211_mgmt_compat *)skb->data; + if (action_frame->u.action.u.ht_smps.action == + WLAN_HT_ACTION_SMPS) { + dev_kfree_skb(skb); + goto tx_status_ok; + } + } + + /* update tid tx pkt num */ + tid = rtl_get_tid(skb); + if (tid <= 7) + rtlpriv->link_info.tidtx_inperiod[tid]++; + + info = IEEE80211_SKB_CB(skb); + ieee80211_tx_info_clear_status(info); + + info->flags |= IEEE80211_TX_STAT_ACK; + /*info->status.rates[0].count = 1; */ + + ieee80211_tx_status_irqsafe(hw, skb); + + if ((ring->entries - skb_queue_len(&ring->queue)) + == 2) { + + RT_TRACE(COMP_ERR, DBG_LOUD, + ("more desc left, wake" + "skb_queue@%d,ring->idx = %d," + "skb_queue_len = 0x%d\n", + prio, ring->idx, + skb_queue_len(&ring->queue))); + + ieee80211_wake_queue(hw, + skb_get_queue_mapping + (skb)); + } +tx_status_ok: + skb = NULL; + } + + if (((rtlpriv->link_info.num_rx_inperiod + + rtlpriv->link_info.num_tx_inperiod) > 8) || + (rtlpriv->link_info.num_rx_inperiod > 2)) { + rtl_lps_leave(hw); + } +} + +static int _rtl_pci_init_one_rxdesc(struct ieee80211_hw *hw, + u8 *entry, int rxring_idx, int desc_idx) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + u32 bufferaddress; + u8 tmp_one = 1; + struct sk_buff *skb; + + skb = dev_alloc_skb(rtlpci->rxbuffersize); + if (!skb) + return 0; + rtlpci->rx_ring[rxring_idx].rx_buf[desc_idx] = skb; + + /* just set skb->cb to mapping addr + * for pci_unmap_single use */ + *((dma_addr_t *) skb->cb) = pci_map_single(rtlpci->pdev, + skb_tail_pointer(skb), rtlpci->rxbuffersize, + PCI_DMA_FROMDEVICE); + bufferaddress = cpu_to_le32(*((dma_addr_t *) skb->cb)); + if (pci_dma_mapping_error(rtlpci->pdev, bufferaddress)) + return 0; + if (rtlpriv->use_new_trx_flow) { + rtlpriv->cfg->ops->set_desc(hw, (u8 *) entry, false, + HW_DESC_RX_PREPARE, + (u8 *) & bufferaddress); + } else { + rtlpriv->cfg->ops->set_desc(hw, (u8 *) entry, false, + HW_DESC_RXBUFF_ADDR, + (u8 *) & bufferaddress); + rtlpriv->cfg->ops->set_desc(hw, (u8 *) entry, false, + HW_DESC_RXPKT_LEN, + (u8 *) & rtlpci->rxbuffersize); + rtlpriv->cfg->ops->set_desc(hw, (u8 *) entry, false, + HW_DESC_RXOWN, + (u8 *) & tmp_one); + } + + return 1; +} + +/* inorder to receive 8K AMSDU we have set skb to + * 9100bytes in init rx ring, but if this packet is + * not a AMSDU, this so big packet will be sent to + * TCP/IP directly, this cause big packet ping fail + * like: "ping -s 65507", so here we will realloc skb + * based on the true size of packet, I think mac80211 + * do it will be better, but now mac80211 haven't */ + +/* but some platform will fail when alloc skb sometimes. + * in this condition, we will send the old skb to + * mac80211 directly, this will not cause any other + * issues, but only be losted by TCP/IP */ +static void _rtl_pci_rx_to_mac80211(struct ieee80211_hw *hw, + struct sk_buff *skb, struct ieee80211_rx_status rx_status) +{ + if (unlikely(!rtl_action_proc(hw, skb, false))) { + dev_kfree_skb_any(skb); + } else { + struct sk_buff *uskb = NULL; + u8 *pdata; + + uskb = dev_alloc_skb(skb->len + 128); + if (likely(uskb)) { + memcpy(IEEE80211_SKB_RXCB(uskb), &rx_status, + sizeof(rx_status)); + pdata = (u8 *)skb_put(uskb, skb->len); + memcpy(pdata, skb->data, skb->len); + dev_kfree_skb_any(skb); + + ieee80211_rx_irqsafe(hw, uskb); + } else { + ieee80211_rx_irqsafe(hw, skb); + } + } +} + +/*hsisr interrupt handler*/ +static void _rtl_pci_hs_interrupt(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + + rtl_write_byte(rtlpriv, rtlpriv->cfg->maps[MAC_HSISR], + rtl_read_byte(rtlpriv, rtlpriv->cfg->maps[MAC_HSISR]) | + rtlpci->sys_irq_mask); + + +} +static void _rtl_pci_rx_interrupt(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + int rxring_idx = RTL_PCI_RX_MPDU_QUEUE; + + struct ieee80211_rx_status rx_status = { 0 }; + unsigned int count = rtlpci->rxringcount; + bool unicast = false; + u8 hw_queue = 0; + unsigned int rx_remained_cnt; + u8 own; + u8 tmp_one; + + struct rtl_stats status = { + .signal = 0, + .noise = -98, + .rate = 0, + }; + + /*RX NORMAL PKT */ + while (count--) { + struct ieee80211_hdr *hdr; + u16 fc; + u16 len; + /*rx buffer descriptor */ + struct rtl_rx_buffer_desc *buffer_desc = NULL; + /*if use new trx flow, it means wifi info */ + struct rtl_rx_desc *pdesc = NULL; + /*rx pkt */ + struct sk_buff *skb = rtlpci->rx_ring[rxring_idx].rx_buf[ + rtlpci->rx_ring[rxring_idx].idx]; + + if (rtlpriv->use_new_trx_flow) { + rx_remained_cnt = + rtlpriv->cfg->ops->rx_desc_buff_remained_cnt(hw, + hw_queue); + if (rx_remained_cnt < 1) + return; + + } else { /* rx descriptor */ + pdesc = &rtlpci->rx_ring[rxring_idx].desc[ + rtlpci->rx_ring[rxring_idx].idx]; + + own = (u8) rtlpriv->cfg->ops->get_desc((u8 *) pdesc, + false, + HW_DESC_OWN); + if (own) /* wait data to be filled by hardware */ + return; + } + + /* Get here means: data is filled already*/ + /* AAAAAAttention !!! + * We can NOT access 'skb' before 'pci_unmap_single' */ + pci_unmap_single(rtlpci->pdev, *((dma_addr_t *) skb->cb), + rtlpci->rxbuffersize, PCI_DMA_FROMDEVICE); + + if (rtlpriv->use_new_trx_flow) { + buffer_desc = &rtlpci->rx_ring[rxring_idx].buffer_desc[ + rtlpci->rx_ring[rxring_idx].idx]; + /*means rx wifi info*/ + pdesc = (struct rtl_rx_desc *)skb->data; + } + + rtlpriv->cfg->ops->query_rx_desc(hw, &status, + &rx_status, (u8 *) pdesc, skb); + + if (rtlpriv->use_new_trx_flow) + rtlpriv->cfg->ops->rx_check_dma_ok(hw, + (u8 *)buffer_desc, + hw_queue); + + + len = rtlpriv->cfg->ops->get_desc((u8 *)pdesc, false, + HW_DESC_RXPKT_LEN); + + if (skb->end - skb->tail > len) { + skb_put(skb, len); + if (rtlpriv->use_new_trx_flow) + skb_reserve(skb, status.rx_drvinfo_size + + status.rx_bufshift + 24); + else + skb_reserve(skb, status.rx_drvinfo_size + + status.rx_bufshift); + + } else { + printk("skb->end - skb->tail = %d, len is %d\n", + skb->end - skb->tail, len); + break; + } + + rtlpriv->cfg->ops->rx_command_packet_handler(hw, status, skb); + + /* + *NOTICE This can not be use for mac80211, + *this is done in mac80211 code, + *if you done here sec DHCP will fail + *skb_trim(skb, skb->len - 4); + */ + + hdr = rtl_get_hdr(skb); + fc = rtl_get_fc(skb); + + if (!status.b_crc && !status.b_hwerror) { + memcpy(IEEE80211_SKB_RXCB(skb), &rx_status, + sizeof(rx_status)); + + if (is_broadcast_ether_addr(hdr->addr1)) { + ;/*TODO*/ + } else if (is_multicast_ether_addr(hdr->addr1)) { + ;/*TODO*/ + } else { + unicast = true; + rtlpriv->stats.rxbytesunicast += skb->len; + } + + rtl_is_special_data(hw, skb, false); + + if (ieee80211_is_data(fc)) { + rtlpriv->cfg->ops->led_control(hw, LED_CTL_RX); + + if (unicast) + rtlpriv->link_info.num_rx_inperiod++; + } + + /* static bcn for roaming */ + rtl_beacon_statistic(hw, skb); + rtl_p2p_info(hw, (void*)skb->data, skb->len); + /* for sw lps */ + rtl_swlps_beacon(hw, (void*)skb->data, skb->len); + rtl_recognize_peer(hw, (void*)skb->data, skb->len); + if ((rtlpriv->mac80211.opmode == NL80211_IFTYPE_AP) && + (rtlpriv->rtlhal.current_bandtype == BAND_ON_2_4G)&& + (ieee80211_is_beacon(fc) || + ieee80211_is_probe_resp(fc))) { + dev_kfree_skb_any(skb); + } else { + _rtl_pci_rx_to_mac80211(hw, skb, rx_status); + } + } else { + dev_kfree_skb_any(skb); + } + if (rtlpriv->use_new_trx_flow) { + rtlpci->rx_ring[hw_queue].next_rx_rp += 1; + rtlpci->rx_ring[hw_queue].next_rx_rp %= + RTL_PCI_MAX_RX_COUNT; + + + rx_remained_cnt--; + if (1/*rx_remained_cnt == 0*/) { + rtl_write_word(rtlpriv, 0x3B4, + rtlpci->rx_ring[hw_queue].next_rx_rp); + } + } + if (((rtlpriv->link_info.num_rx_inperiod + + rtlpriv->link_info.num_tx_inperiod) > 8) || + (rtlpriv->link_info.num_rx_inperiod > 2)) { + rtl_lps_leave(hw); + } + + if (rtlpriv->use_new_trx_flow) { + _rtl_pci_init_one_rxdesc(hw, (u8 *)buffer_desc, + rxring_idx, + rtlpci->rx_ring[rxring_idx].idx); + } else { + _rtl_pci_init_one_rxdesc(hw, (u8 *)pdesc, rxring_idx, + rtlpci->rx_ring[rxring_idx].idx); + + if (rtlpci->rx_ring[rxring_idx].idx == + rtlpci->rxringcount - 1) + rtlpriv->cfg->ops->set_desc(hw, (u8 *) pdesc, + false, + HW_DESC_RXERO, + (u8 *) & tmp_one); + } + rtlpci->rx_ring[rxring_idx].idx = + (rtlpci->rx_ring[rxring_idx].idx + 1) % + rtlpci->rxringcount; + } +} + +static irqreturn_t _rtl_pci_interrupt(int irq, void *dev_id) +{ + struct ieee80211_hw *hw = dev_id; + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + unsigned long flags; + u32 inta = 0; + u32 intb = 0; + + + + if (rtlpci->irq_enabled == 0) + return IRQ_HANDLED; + + spin_lock_irqsave(&rtlpriv->locks.irq_th_lock,flags); + + + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[MAC_HIMR], 0x0); + + + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[MAC_HIMRE], 0x0); + + + /*read ISR: 4/8bytes */ + rtlpriv->cfg->ops->interrupt_recognized(hw, &inta, &intb); + + + /*Shared IRQ or HW disappared */ + if (!inta || inta == 0xffff) + goto done; + /*<1> beacon related */ + if (inta & rtlpriv->cfg->maps[RTL_IMR_TBDOK]) { + RT_TRACE(COMP_INTR, DBG_TRACE, ("beacon ok interrupt!\n")); + } + + if (unlikely(inta & rtlpriv->cfg->maps[RTL_IMR_TBDER])) { + RT_TRACE(COMP_INTR, DBG_TRACE, ("beacon err interrupt!\n")); + } + + if (inta & rtlpriv->cfg->maps[RTL_IMR_BDOK]) { + RT_TRACE(COMP_INTR, DBG_TRACE, ("beacon interrupt!\n")); + } + + if (inta & rtlpriv->cfg->maps[RTL_IMR_BcnInt]) { + RT_TRACE(COMP_INTR, DBG_TRACE, + ("prepare beacon for interrupt!\n")); + tasklet_schedule(&rtlpriv->works.irq_prepare_bcn_tasklet); + } + + + /*<2> tx related */ + if (unlikely(intb & rtlpriv->cfg->maps[RTL_IMR_TXFOVW])) + RT_TRACE(COMP_ERR, DBG_TRACE, ("IMR_TXFOVW!\n")); + + if (inta & rtlpriv->cfg->maps[RTL_IMR_MGNTDOK]) { + RT_TRACE(COMP_INTR, DBG_TRACE, ("Manage ok interrupt!\n")); + _rtl_pci_tx_isr(hw, MGNT_QUEUE); + } + + if (inta & rtlpriv->cfg->maps[RTL_IMR_HIGHDOK]) { + RT_TRACE(COMP_INTR, DBG_TRACE, ("HIGH_QUEUE ok interrupt!\n")); + _rtl_pci_tx_isr(hw, HIGH_QUEUE); + } + + if (inta & rtlpriv->cfg->maps[RTL_IMR_BKDOK]) { + rtlpriv->link_info.num_tx_inperiod++; + + RT_TRACE(COMP_INTR, DBG_TRACE, ("BK Tx OK interrupt!\n")); + _rtl_pci_tx_isr(hw, BK_QUEUE); + } + + if (inta & rtlpriv->cfg->maps[RTL_IMR_BEDOK]) { + rtlpriv->link_info.num_tx_inperiod++; + + RT_TRACE(COMP_INTR, DBG_TRACE, ("BE TX OK interrupt!\n")); + _rtl_pci_tx_isr(hw, BE_QUEUE); + } + + if (inta & rtlpriv->cfg->maps[RTL_IMR_VIDOK]) { + rtlpriv->link_info.num_tx_inperiod++; + + RT_TRACE(COMP_INTR, DBG_TRACE, ("VI TX OK interrupt!\n")); + _rtl_pci_tx_isr(hw, VI_QUEUE); + } + + if (inta & rtlpriv->cfg->maps[RTL_IMR_VODOK]) { + rtlpriv->link_info.num_tx_inperiod++; + + RT_TRACE(COMP_INTR, DBG_TRACE, ("Vo TX OK interrupt!\n")); + _rtl_pci_tx_isr(hw, VO_QUEUE); + } + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192SE) { + if (inta & rtlpriv->cfg->maps[RTL_IMR_COMDOK]) { + rtlpriv->link_info.num_tx_inperiod++; + + RT_TRACE(COMP_INTR, DBG_TRACE, + ("CMD TX OK interrupt!\n")); + _rtl_pci_tx_isr(hw, TXCMD_QUEUE); + } + } + + /*<3> rx related */ + if (inta & rtlpriv->cfg->maps[RTL_IMR_ROK]) { + RT_TRACE(COMP_INTR, DBG_TRACE, ("Rx ok interrupt!\n")); + + _rtl_pci_rx_interrupt(hw); + + } + + if (unlikely(inta & rtlpriv->cfg->maps[RTL_IMR_RDU])) { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("rx descriptor unavailable!\n")); + rtl_write_byte(rtlpriv, 0xb4, BIT(1) ); + _rtl_pci_rx_interrupt(hw); + } + + if (unlikely(intb & rtlpriv->cfg->maps[RTL_IMR_RXFOVW])) { + RT_TRACE(COMP_ERR, DBG_WARNING, ("rx overflow !\n")); + _rtl_pci_rx_interrupt(hw); + } + + /*<4> fw related*/ + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8723AE) { + if (inta & rtlpriv->cfg->maps[RTL_IMR_C2HCMD]) { + RT_TRACE(COMP_INTR, DBG_TRACE, + ("firmware interrupt!\n")); + queue_delayed_work(rtlpriv->works.rtl_wq, + &rtlpriv->works.fwevt_wq, 0); + } + } + + /*<5> hsisr related*/ + /* Only 8188EE & 8723BE Supported. + * If Other ICs Come in, System will corrupt, + * because maps[RTL_IMR_HSISR_IND] & maps[MAC_HSISR] + * are not initialized*/ + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8188EE || + rtlhal->hw_type == HARDWARE_TYPE_RTL8723BE) { + if (unlikely(inta & rtlpriv->cfg->maps[RTL_IMR_HSISR_IND])) { + RT_TRACE(COMP_INTR, DBG_TRACE, + ("hsisr interrupt!\n")); + _rtl_pci_hs_interrupt(hw); + } + } + + + if(rtlpriv->rtlhal.b_earlymode_enable) + tasklet_schedule(&rtlpriv->works.irq_tasklet); + + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[MAC_HIMR], + rtlpci->irq_mask[0]); + rtl_write_dword(rtlpriv, rtlpriv->cfg->maps[MAC_HIMRE], + rtlpci->irq_mask[1]); + spin_unlock_irqrestore(&rtlpriv->locks.irq_th_lock, flags); + + return IRQ_HANDLED; + +done: + spin_unlock_irqrestore(&rtlpriv->locks.irq_th_lock, flags); + return IRQ_HANDLED; +} + +static void _rtl_pci_irq_tasklet(struct ieee80211_hw *hw) +{ + _rtl_pci_tx_chk_waitq(hw); +} + +static void _rtl_pci_prepare_bcn_tasklet(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl8192_tx_ring *ring = NULL; + struct ieee80211_hdr *hdr = NULL; + struct ieee80211_tx_info *info = NULL; + struct sk_buff *pskb = NULL; + struct rtl_tx_desc *pdesc = NULL; + struct rtl_tcb_desc tcb_desc; + /*This is for new trx flow*/ + struct rtl_tx_buffer_desc *pbuffer_desc = NULL; + u8 temp_one = 1; + + memset(&tcb_desc, 0, sizeof(struct rtl_tcb_desc)); + ring = &rtlpci->tx_ring[BEACON_QUEUE]; + pskb = __skb_dequeue(&ring->queue); + if (pskb) + kfree_skb(pskb); + + /*NB: the beacon data buffer must be 32-bit aligned. */ + pskb = ieee80211_beacon_get(hw, mac->vif); + if (pskb == NULL) + return; + hdr = rtl_get_hdr(pskb); + info = IEEE80211_SKB_CB(pskb); + pdesc = &ring->desc[0]; + if (rtlpriv->use_new_trx_flow) + pbuffer_desc = &ring->buffer_desc[0]; + +/**/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)) + rtlpriv->cfg->ops->fill_tx_desc(hw, hdr, (u8 *) pdesc, + (u8 *)pbuffer_desc, info, pskb, + BEACON_QUEUE, &tcb_desc); +#else +/**/ + rtlpriv->cfg->ops->fill_tx_desc(hw, hdr, (u8 *) pdesc, + (u8 *)pbuffer_desc, info, NULL, pskb, + BEACON_QUEUE, &tcb_desc); +/**/ +#endif +/**/ + + __skb_queue_tail(&ring->queue, pskb); + + rtlpriv->cfg->ops->set_desc(hw, (u8 *) pdesc, true, HW_DESC_OWN, + (u8 *) & temp_one); + + return; +} + +static void _rtl_pci_init_trx_var(struct ieee80211_hw *hw) +{ + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + u8 i; + u16 desc_num; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192EE) + desc_num = TX_DESC_NUM_92E; + else + desc_num = RT_TXDESC_NUM; + + for (i = 0; i < RTL_PCI_MAX_TX_QUEUE_COUNT; i++) { + rtlpci->txringcount[i] = desc_num; + } + /* + *we just alloc 2 desc for beacon queue, + *because we just need first desc in hw beacon. + */ + rtlpci->txringcount[BEACON_QUEUE] = 2; + + /* + *BE queue need more descriptor for performance + *consideration or, No more tx desc will happen, + *and may cause mac80211 mem leakage. + */ + if (rtl_priv(hw)->use_new_trx_flow == false) + rtlpci->txringcount[BE_QUEUE] = RT_TXDESC_NUM_BE_QUEUE; + + rtlpci->rxbuffersize = 9100; /*2048/1024; */ + rtlpci->rxringcount = RTL_PCI_MAX_RX_COUNT; /*64; */ +} + +static void _rtl_pci_init_struct(struct ieee80211_hw *hw, + struct pci_dev *pdev) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + + rtlpriv->rtlhal.up_first_time = true; + rtlpriv->rtlhal.being_init_adapter = false; + + rtlhal->hw = hw; + rtlpci->pdev = pdev; + + /*Tx/Rx related var */ + _rtl_pci_init_trx_var(hw); + + /*IBSS*/ mac->beacon_interval = 100; + + /*AMPDU*/ + mac->min_space_cfg = 0; + mac->max_mss_density = 0; + /*set sane AMPDU defaults */ + mac->current_ampdu_density = 7; + mac->current_ampdu_factor = 3; + + /*QOS*/ + rtlpci->acm_method = eAcmWay2_SW; + + /*task */ + tasklet_init(&rtlpriv->works.irq_tasklet, + (void (*)(unsigned long))_rtl_pci_irq_tasklet, + (unsigned long)hw); + tasklet_init(&rtlpriv->works.irq_prepare_bcn_tasklet, + (void (*)(unsigned long))_rtl_pci_prepare_bcn_tasklet, + (unsigned long)hw); +} + +static int _rtl_pci_init_tx_ring(struct ieee80211_hw *hw, + unsigned int prio, unsigned int entries) +{ + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_tx_buffer_desc *buffer_desc; + struct rtl_tx_desc *desc; + dma_addr_t buffer_desc_dma, desc_dma; + u32 nextdescaddress; + int i; + + /* alloc tx buffer desc for new trx flow*/ + if (rtlpriv->use_new_trx_flow) { + buffer_desc = pci_alloc_consistent(rtlpci->pdev, + sizeof(*buffer_desc) * entries, + &buffer_desc_dma); + + if (!buffer_desc || (unsigned long)buffer_desc & 0xFF) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("Cannot allocate TX ring (prio = %d)\n", + prio)); + return -ENOMEM; + } + + memset(buffer_desc, 0, sizeof(*buffer_desc) * entries); + rtlpci->tx_ring[prio].buffer_desc = buffer_desc; + rtlpci->tx_ring[prio].buffer_desc_dma = buffer_desc_dma; + + rtlpci->tx_ring[prio].cur_tx_rp = 0; + rtlpci->tx_ring[prio].cur_tx_wp = 0; + rtlpci->tx_ring[prio].avl_desc = entries; + + } + + /* alloc dma for this ring */ + desc = pci_alloc_consistent(rtlpci->pdev, + sizeof(*desc) * entries, &desc_dma); + + if (!desc || (unsigned long)desc & 0xFF) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("Cannot allocate TX ring (prio = %d)\n", prio)); + return -ENOMEM; + } + + memset(desc, 0, sizeof(*desc) * entries); + rtlpci->tx_ring[prio].desc = desc; + rtlpci->tx_ring[prio].dma = desc_dma; + + rtlpci->tx_ring[prio].idx = 0; + rtlpci->tx_ring[prio].entries = entries; + skb_queue_head_init(&rtlpci->tx_ring[prio].queue); + RT_TRACE(COMP_INIT, DBG_LOUD, + ("queue:%d, ring_addr:%p\n", prio, desc)); + + /* init every desc in this ring */ + if (rtlpriv->use_new_trx_flow == false) { + for (i = 0; i < entries; i++) { + nextdescaddress = cpu_to_le32((u32) desc_dma + + ((i + 1) % entries) * + sizeof(*desc)); + + rtlpriv->cfg->ops->set_desc(hw, (u8 *) & (desc[i]), + true, + HW_DESC_TX_NEXTDESC_ADDR, + (u8 *) & nextdescaddress); + } + } + return 0; +} + +static int _rtl_pci_init_rx_ring(struct ieee80211_hw *hw, int rxring_idx) +{ + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_priv *rtlpriv = rtl_priv(hw); + + int i; + + if (rtlpriv->use_new_trx_flow) { + struct rtl_rx_buffer_desc *entry = NULL; + /* alloc dma for this ring */ + rtlpci->rx_ring[rxring_idx].buffer_desc = + pci_alloc_consistent(rtlpci->pdev, + sizeof(*rtlpci->rx_ring[rxring_idx]. + buffer_desc) * + rtlpci->rxringcount, + &rtlpci->rx_ring[rxring_idx].dma); + if (!rtlpci->rx_ring[rxring_idx].buffer_desc || + (unsigned long)rtlpci->rx_ring[rxring_idx].buffer_desc & 0xFF) { + RT_TRACE(COMP_ERR, DBG_EMERG, ("Cannot allocate RX ring\n")); + return -ENOMEM; + } + + memset(rtlpci->rx_ring[rxring_idx].buffer_desc, 0, + sizeof(*rtlpci->rx_ring[rxring_idx].buffer_desc) * + rtlpci->rxringcount); + + /* init every desc in this ring */ + rtlpci->rx_ring[rxring_idx].idx = 0; + for (i = 0; i < rtlpci->rxringcount; i++) { + entry = &rtlpci->rx_ring[rxring_idx].buffer_desc[i]; + if (!_rtl_pci_init_one_rxdesc(hw, (u8 *)entry, + rxring_idx, i)) + return -ENOMEM; + } + } else { + struct rtl_rx_desc *entry = NULL; + u8 tmp_one = 1; + /* alloc dma for this ring */ + rtlpci->rx_ring[rxring_idx].desc = + pci_alloc_consistent(rtlpci->pdev, + sizeof(*rtlpci->rx_ring[rxring_idx]. + desc) * rtlpci->rxringcount, + &rtlpci->rx_ring[rxring_idx].dma); + if (!rtlpci->rx_ring[rxring_idx].desc || + (unsigned long)rtlpci->rx_ring[rxring_idx].desc & 0xFF) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("Cannot allocate RX ring\n")); + return -ENOMEM; + } + + memset(rtlpci->rx_ring[rxring_idx].desc, 0, + sizeof(*rtlpci->rx_ring[rxring_idx].desc) * + rtlpci->rxringcount); + + /* init every desc in this ring */ + rtlpci->rx_ring[rxring_idx].idx = 0; + for (i = 0; i < rtlpci->rxringcount; i++) { + entry = &rtlpci->rx_ring[rxring_idx].desc[i]; + if (!_rtl_pci_init_one_rxdesc(hw, (u8 *)entry, + rxring_idx, i)) + return -ENOMEM; + } + rtlpriv->cfg->ops->set_desc(hw, (u8 *) entry, false, + HW_DESC_RXERO, (u8 *) & tmp_one); + } + return 0; +} + +static void _rtl_pci_free_tx_ring(struct ieee80211_hw *hw, + unsigned int prio) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl8192_tx_ring *ring = &rtlpci->tx_ring[prio]; + + /* free every desc in this ring */ + while (skb_queue_len(&ring->queue)) { + u8 *entry; + struct sk_buff *skb = __skb_dequeue(&ring->queue); + if (rtlpriv->use_new_trx_flow) + entry = (u8 *)(&ring->buffer_desc[ring->idx]); + else + entry = (u8 *)(&ring->desc[ring->idx]); + + pci_unmap_single(rtlpci->pdev, + le32_to_cpu(rtlpriv->cfg->ops->get_desc( + (u8 *) entry, true, HW_DESC_TXBUFF_ADDR)), + skb->len, PCI_DMA_TODEVICE); + kfree_skb(skb); + ring->idx = (ring->idx + 1) % ring->entries; + } + + /* free dma of this ring */ + pci_free_consistent(rtlpci->pdev, + sizeof(*ring->desc) * ring->entries, + ring->desc, ring->dma); + ring->desc = NULL; + if (rtlpriv->use_new_trx_flow) { + pci_free_consistent(rtlpci->pdev, + sizeof(*ring->buffer_desc) * ring->entries, + ring->buffer_desc, ring->buffer_desc_dma); + ring->buffer_desc = NULL; + } +} + +static void _rtl_pci_free_rx_ring(struct ieee80211_hw *hw, int rxring_idx) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + int i; + + /* free every desc in this ring */ + for (i = 0; i < rtlpci->rxringcount; i++) { + struct sk_buff *skb = rtlpci->rx_ring[rxring_idx].rx_buf[i]; + if (!skb) + continue; + + pci_unmap_single(rtlpci->pdev, *((dma_addr_t *) skb->cb), + rtlpci->rxbuffersize, PCI_DMA_FROMDEVICE); + kfree_skb(skb); + } + + /* free dma of this ring */ + if (rtlpriv->use_new_trx_flow) { + pci_free_consistent(rtlpci->pdev, + sizeof(*rtlpci->rx_ring[rxring_idx]. + buffer_desc) * rtlpci->rxringcount, + rtlpci->rx_ring[rxring_idx].buffer_desc, + rtlpci->rx_ring[rxring_idx].dma); + rtlpci->rx_ring[rxring_idx].buffer_desc = NULL; + } else { + pci_free_consistent(rtlpci->pdev, + sizeof(*rtlpci->rx_ring[rxring_idx].desc) * + rtlpci->rxringcount, + rtlpci->rx_ring[rxring_idx].desc, + rtlpci->rx_ring[rxring_idx].dma); + rtlpci->rx_ring[rxring_idx].desc = NULL; + } +} + +static int _rtl_pci_init_trx_ring(struct ieee80211_hw *hw) +{ + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + int ret; + int i, rxring_idx; + + /* rxring_idx 0:RX_MPDU_QUEUE + * rxring_idx 1:RX_CMD_QUEUE */ + for (rxring_idx = 0; rxring_idx < RTL_PCI_MAX_RX_QUEUE; rxring_idx++) { + ret = _rtl_pci_init_rx_ring(hw, rxring_idx); + if (ret) + return ret; + } + + for (i = 0; i < RTL_PCI_MAX_TX_QUEUE_COUNT; i++) { + ret = _rtl_pci_init_tx_ring(hw, i, rtlpci->txringcount[i]); + if (ret) + goto err_free_rings; + } + + return 0; + +err_free_rings: + for (rxring_idx = 0; rxring_idx < RTL_PCI_MAX_RX_QUEUE; rxring_idx++) + _rtl_pci_free_rx_ring(hw, rxring_idx); + + for (i = 0; i < RTL_PCI_MAX_TX_QUEUE_COUNT; i++) + if (rtlpci->tx_ring[i].desc || + rtlpci->tx_ring[i].buffer_desc) + _rtl_pci_free_tx_ring(hw, i); + + return 1; +} + +static int _rtl_pci_deinit_trx_ring(struct ieee80211_hw *hw) +{ + u32 i, rxring_idx; + + /*free rx rings */ + for (rxring_idx = 0; rxring_idx < RTL_PCI_MAX_RX_QUEUE; rxring_idx++) + _rtl_pci_free_rx_ring(hw, rxring_idx); + + /*free tx rings */ + for (i = 0; i < RTL_PCI_MAX_TX_QUEUE_COUNT; i++) + _rtl_pci_free_tx_ring(hw, i); + + return 0; +} + +int rtl_pci_reset_trx_ring(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + int i, rxring_idx; + unsigned long flags; + u8 tmp_one = 1; + /* rxring_idx 0:RX_MPDU_QUEUE */ + /* rxring_idx 1:RX_CMD_QUEUE */ + for (rxring_idx = 0; rxring_idx < RTL_PCI_MAX_RX_QUEUE; rxring_idx++) { + /* force the rx_ring[RX_MPDU_QUEUE/ + * RX_CMD_QUEUE].idx to the first one */ + /*new trx flow, do nothing*/ + if ((rtlpriv->use_new_trx_flow == false) && + rtlpci->rx_ring[rxring_idx].desc) { + struct rtl_rx_desc *entry = NULL; + + for (i = 0; i < rtlpci->rxringcount; i++) { + entry = &rtlpci->rx_ring[rxring_idx].desc[i]; + rtlpriv->cfg->ops->set_desc(hw, (u8 *) entry, + false, + HW_DESC_RXOWN, + (u8 *) & tmp_one); + } + } + rtlpci->rx_ring[rxring_idx].idx = 0; } + + /* after reset, release previous pending packet, + * and force the tx idx to the first one */ + spin_lock_irqsave(&rtlpriv->locks.irq_th_lock, flags); + for (i = 0; i < RTL_PCI_MAX_TX_QUEUE_COUNT; i++) { + if (rtlpci->tx_ring[i].desc || + rtlpci->tx_ring[i].buffer_desc) { + struct rtl8192_tx_ring *ring = &rtlpci->tx_ring[i]; + + while (skb_queue_len(&ring->queue)) { + u8 *entry; + struct sk_buff *skb = + __skb_dequeue(&ring->queue); + if (rtlpriv->use_new_trx_flow) + entry = (u8 *)(&ring->buffer_desc + [ring->idx]); + else + entry = (u8 *)(&ring->desc[ring->idx]); + + pci_unmap_single(rtlpci->pdev, + le32_to_cpu(rtlpriv->cfg->ops->get_desc( + (u8 *)entry, true, + HW_DESC_TXBUFF_ADDR)), + skb->len, PCI_DMA_TODEVICE); + kfree_skb(skb); + ring->idx = (ring->idx + 1) % ring->entries; + } + ring->idx = 0; + } + } + + spin_unlock_irqrestore(&rtlpriv->locks.irq_th_lock, flags); + + return 0; +} + +/**/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)) +static bool rtl_pci_tx_chk_waitq_insert(struct ieee80211_hw *hw, + struct sk_buff *skb) +#else +/**/ +static bool rtl_pci_tx_chk_waitq_insert(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, + struct sk_buff *skb) +/**/ +#endif +/**/ +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); +/**/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)) + struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); + struct ieee80211_sta *sta = info->control.sta; +#endif +/**/ + struct rtl_sta_info *sta_entry = NULL; + u8 tid = rtl_get_tid(skb); + u16 fc = rtl_get_fc(skb); + + if(!sta) + return false; + sta_entry = (struct rtl_sta_info *)sta->drv_priv; + + if (!rtlpriv->rtlhal.b_earlymode_enable) + return false; + if (ieee80211_is_nullfunc(fc)) + return false; + if (ieee80211_is_qos_nullfunc(fc)) + return false; + if (ieee80211_is_pspoll(fc)) { + return false; + } + + if (sta_entry->tids[tid].agg.agg_state != RTL_AGG_OPERATIONAL) + return false; + if (_rtl_mac_to_hwqueue(hw, skb) > VO_QUEUE) + return false; + if (tid > 7) + return false; + /* maybe every tid should be checked */ + if (!rtlpriv->link_info.higher_busytxtraffic[tid]) + return false; + + spin_lock_bh(&rtlpriv->locks.waitq_lock); + skb_queue_tail(&rtlpriv->mac80211.skb_waitq[tid], skb); + spin_unlock_bh(&rtlpriv->locks.waitq_lock); + + return true; +} + +/**/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)) +int rtl_pci_tx(struct ieee80211_hw *hw, struct sk_buff *skb, + struct rtl_tcb_desc *ptcb_desc) +#else +/**/ +static int rtl_pci_tx(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, + struct sk_buff *skb, + struct rtl_tcb_desc *ptcb_desc) +/**/ +#endif +/**/ +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_sta_info *sta_entry = NULL; + struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb); +/**/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)) + struct ieee80211_sta *sta = info->control.sta; +#endif +/**/ + struct rtl8192_tx_ring *ring; + struct rtl_tx_desc *pdesc; + struct rtl_tx_buffer_desc *ptx_bd_desc = NULL; + u16 idx; + u8 own; + u8 temp_one = 1; + u8 hw_queue = _rtl_mac_to_hwqueue(hw, skb); + unsigned long flags; + struct ieee80211_hdr *hdr = rtl_get_hdr(skb); + u16 fc = rtl_get_fc(skb); + u8 *pda_addr = hdr->addr1; + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + /*ssn */ + u8 tid = 0; + u16 seq_number = 0; + + + if (ieee80211_is_mgmt(fc)) + rtl_tx_mgmt_proc(hw, skb); + + if (rtlpriv->psc.sw_ps_enabled) { + if (ieee80211_is_data(fc) && !ieee80211_is_nullfunc(fc) && + !ieee80211_has_pm(fc)) + hdr->frame_control |= cpu_to_le16(IEEE80211_FCTL_PM); + } + + rtl_action_proc(hw, skb, true); + + if (is_multicast_ether_addr(pda_addr)) + rtlpriv->stats.txbytesmulticast += skb->len; + else if (is_broadcast_ether_addr(pda_addr)) + rtlpriv->stats.txbytesbroadcast += skb->len; + else + rtlpriv->stats.txbytesunicast += skb->len; + + spin_lock_irqsave(&rtlpriv->locks.irq_th_lock, flags); + ring = &rtlpci->tx_ring[hw_queue]; + if (hw_queue != BEACON_QUEUE) { + if (rtlpriv->use_new_trx_flow) + idx = ring->cur_tx_wp; + else + idx = (ring->idx + skb_queue_len(&ring->queue)) % + ring->entries; + } else { + idx = 0; + } + + pdesc = &ring->desc[idx]; + + if (rtlpriv->use_new_trx_flow) { + ptx_bd_desc = &ring->buffer_desc[idx]; + } else { + own = (u8) rtlpriv->cfg->ops->get_desc((u8 *) pdesc, + true, HW_DESC_OWN); + + if ((own == 1) && (hw_queue != BEACON_QUEUE)) { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("No more TX desc@%d, ring->idx = %d," + "idx = %d, skb_queue_len = 0x%d\n", + hw_queue, ring->idx, idx, + skb_queue_len(&ring->queue))); + + spin_unlock_irqrestore(&rtlpriv->locks.irq_th_lock, + flags); + return skb->len; + } + } + + if (ieee80211_is_data_qos(fc)) { + tid = rtl_get_tid(skb); + if (sta) { + sta_entry = (struct rtl_sta_info *)sta->drv_priv; + seq_number = (le16_to_cpu(hdr->seq_ctrl) & + IEEE80211_SCTL_SEQ) >> 4; + seq_number += 1; + + if (!ieee80211_has_morefrags(hdr->frame_control)) + sta_entry->tids[tid].seq_number = seq_number; + } + } + + if (ieee80211_is_data(fc)) + rtlpriv->cfg->ops->led_control(hw, LED_CTL_TX); + +/**/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)) + rtlpriv->cfg->ops->fill_tx_desc(hw, hdr, (u8 *) pdesc, + (u8 *)ptx_bd_desc, info, skb, + hw_queue, ptcb_desc); +#else +/**/ + rtlpriv->cfg->ops->fill_tx_desc(hw, hdr, (u8 *) pdesc, + (u8 *)ptx_bd_desc, info, sta, skb, + hw_queue, ptcb_desc); +/**/ +#endif +/**/ + + __skb_queue_tail(&ring->queue, skb); + if (rtlpriv->use_new_trx_flow) { + rtlpriv->cfg->ops->set_desc(hw, (u8 *) pdesc, true, + HW_DESC_OWN, (u8 *) & hw_queue); + } else { + rtlpriv->cfg->ops->set_desc(hw, (u8 *) pdesc, true, + HW_DESC_OWN, (u8 *) & temp_one); + } + + if ((ring->entries - skb_queue_len(&ring->queue)) < 2 && + hw_queue != BEACON_QUEUE) { + + RT_TRACE(COMP_ERR, DBG_LOUD, + ("less desc left, stop skb_queue@%d, " + "ring->idx = %d," + "idx = %d, skb_queue_len = 0x%d\n", + hw_queue, ring->idx, idx, + skb_queue_len(&ring->queue))); + + ieee80211_stop_queue(hw, skb_get_queue_mapping(skb)); + } + + spin_unlock_irqrestore(&rtlpriv->locks.irq_th_lock, flags); + + rtlpriv->cfg->ops->tx_polling(hw, hw_queue); + + return 0; +} +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)) +static void rtl_pci_flush(struct ieee80211_hw *hw, u32 queues, bool drop) +#else +static void rtl_pci_flush(struct ieee80211_hw *hw, bool drop) +#endif +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u16 i = 0; + int queue_id; + struct rtl8192_tx_ring *ring; + + if (mac->skip_scan) + return; + + for (queue_id = RTL_PCI_MAX_TX_QUEUE_COUNT - 1; queue_id >= 0;) { + u32 queue_len; +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)) + if (((queues >> queue_id) & 0x1) == 0) { + queue_id--; + continue; + } +#endif + ring = &pcipriv->dev.tx_ring[queue_id]; + queue_len = skb_queue_len(&ring->queue); + if (queue_len == 0 || queue_id == BEACON_QUEUE || + queue_id == TXCMD_QUEUE) { + queue_id--; + continue; + } else { + msleep(5); + i++; + } + + /* we just wait 1s for all queues */ + if (rtlpriv->psc.rfpwr_state == ERFOFF || + is_hal_stop(rtlhal) || i >= 200) + return; + } +} + +void rtl_pci_deinit(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + + _rtl_pci_deinit_trx_ring(hw); + + synchronize_irq(rtlpci->pdev->irq); + tasklet_kill(&rtlpriv->works.irq_tasklet); + + flush_workqueue(rtlpriv->works.rtl_wq); + destroy_workqueue(rtlpriv->works.rtl_wq); + +} + +int rtl_pci_init(struct ieee80211_hw *hw, struct pci_dev *pdev) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + int err; + + _rtl_pci_init_struct(hw, pdev); + + err = _rtl_pci_init_trx_ring(hw); + if (err) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("tx ring initialization failed")); + return err; + } + + return 1; +} + +int rtl_pci_start(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + + int err = 0; + RT_TRACE(COMP_INIT, DBG_DMESG, (" rtl_pci_start \n")); + rtl_pci_reset_trx_ring(hw); + + rtlpriv->rtlhal.driver_is_goingto_unload = false; + err = rtlpriv->cfg->ops->hw_init(hw); + if (err) { + RT_TRACE(COMP_INIT, DBG_DMESG, + ("Failed to config hardware err %x!\n",err)); + return err; + } + + rtlpriv->cfg->ops->enable_interrupt(hw); + RT_TRACE(COMP_INIT, DBG_LOUD, ("enable_interrupt OK\n")); + + rtl_init_rx_config(hw); + + /*should after adapter start and interrupt enable. */ + set_hal_start(rtlhal); + + RT_CLEAR_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_HALT_NIC); + + rtlpriv->rtlhal.up_first_time = false; + + RT_TRACE(COMP_INIT, DBG_DMESG, ("rtl_pci_start OK\n")); + return 0; +} + +void rtl_pci_stop(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 RFInProgressTimeOut = 0; + + /* + *should before disable interrrupt&adapter + *and will do it immediately. + */ + set_hal_stop(rtlhal); + + rtlpriv->cfg->ops->disable_interrupt(hw); + + spin_lock(&rtlpriv->locks.rf_ps_lock); + while (ppsc->rfchange_inprogress) { + spin_unlock(&rtlpriv->locks.rf_ps_lock); + if (RFInProgressTimeOut > 100) { + spin_lock(&rtlpriv->locks.rf_ps_lock); + break; + } + mdelay(1); + RFInProgressTimeOut++; + spin_lock(&rtlpriv->locks.rf_ps_lock); + } + ppsc->rfchange_inprogress = true; + spin_unlock(&rtlpriv->locks.rf_ps_lock); + + rtlpriv->rtlhal.driver_is_goingto_unload = true; + rtlpriv->cfg->ops->hw_disable(hw); + rtlpriv->cfg->ops->led_control(hw, LED_CTL_POWER_OFF); + + spin_lock(&rtlpriv->locks.rf_ps_lock); + ppsc->rfchange_inprogress = false; + spin_unlock(&rtlpriv->locks.rf_ps_lock); + + rtl_pci_enable_aspm(hw); +} + +static bool _rtl_pci_find_adapter(struct pci_dev *pdev, + struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct pci_dev *bridge_pdev = pdev->bus->self; + u16 venderid; + u16 deviceid; + u8 revisionid; + u16 irqline; + u8 tmp; + + venderid = pdev->vendor; + deviceid = pdev->device; + pci_read_config_byte(pdev, 0x8, &revisionid); + pci_read_config_word(pdev, 0x3C, &irqline); + + if (deviceid == RTL_PCI_8192_DID || + deviceid == RTL_PCI_0044_DID || + deviceid == RTL_PCI_0047_DID || + deviceid == RTL_PCI_8192SE_DID || + deviceid == RTL_PCI_8174_DID || + deviceid == RTL_PCI_8173_DID || + deviceid == RTL_PCI_8172_DID || + deviceid == RTL_PCI_8171_DID) { + switch (revisionid) { + case RTL_PCI_REVISION_ID_8192PCIE: + RT_TRACE(COMP_INIT, DBG_DMESG, + ("8192E is found but not supported now-" + "vid/did=%x/%x\n", venderid, deviceid)); + rtlhal->hw_type = HARDWARE_TYPE_RTL8192E; + return false; + break; + case RTL_PCI_REVISION_ID_8192SE: + RT_TRACE(COMP_INIT, DBG_DMESG, + ("8192SE is found - " + "vid/did=%x/%x\n", venderid, deviceid)); + rtlhal->hw_type = HARDWARE_TYPE_RTL8192SE; + break; + default: + RT_TRACE(COMP_ERR, DBG_WARNING, + ("Err: Unknown device - " + "vid/did=%x/%x\n", venderid, deviceid)); + rtlhal->hw_type = HARDWARE_TYPE_RTL8192SE; + break; + + } + }else if(deviceid == RTL_PCI_8723AE_DID) { + rtlhal->hw_type = HARDWARE_TYPE_RTL8723AE; + RT_TRACE(COMP_INIT, DBG_DMESG, + ("8723AE PCI-E is found - " + "vid/did=%x/%x\n", venderid, deviceid)); + } else if (deviceid == RTL_PCI_8192CET_DID || + deviceid == RTL_PCI_8192CE_DID || + deviceid == RTL_PCI_8191CE_DID || + deviceid == RTL_PCI_8188CE_DID) { + rtlhal->hw_type = HARDWARE_TYPE_RTL8192CE; + RT_TRACE(COMP_INIT, DBG_DMESG, + ("8192C PCI-E is found - " + "vid/did=%x/%x\n", venderid, deviceid)); + } else if (deviceid == RTL_PCI_8192DE_DID || + deviceid == RTL_PCI_8192DE_DID2) { + rtlhal->hw_type = HARDWARE_TYPE_RTL8192DE; + RT_TRACE(COMP_INIT, DBG_DMESG, + ("8192D PCI-E is found - " + "vid/did=%x/%x\n", venderid, deviceid)); + }else if(deviceid == RTL_PCI_8188EE_DID){ + rtlhal->hw_type = HARDWARE_TYPE_RTL8188EE; + RT_TRACE(COMP_INIT,DBG_LOUD, + ("Find adapter, Hardware type is 8188EE\n")); + }else if (deviceid == RTL_PCI_8723BE_DID){ + rtlhal->hw_type = HARDWARE_TYPE_RTL8723BE; + RT_TRACE(COMP_INIT,DBG_LOUD, + ("Find adapter, Hardware type is 8723BE\n")); + }else if (deviceid == RTL_PCI_8192EE_DID){ + rtlhal->hw_type = HARDWARE_TYPE_RTL8192EE; + RT_TRACE(COMP_INIT,DBG_LOUD, + ("Find adapter, Hardware type is 8192EE\n")); + }else if (deviceid == RTL_PCI_8821AE_DID) { + rtlhal->hw_type = HARDWARE_TYPE_RTL8821AE; + RT_TRACE(COMP_INIT,DBG_LOUD, + ("Find adapter, Hardware type is 8821AE\n")); + }else if (deviceid == RTL_PCI_8812AE_DID) { + rtlhal->hw_type = HARDWARE_TYPE_RTL8812AE; + RT_TRACE(COMP_INIT,DBG_LOUD, + ("Find adapter, Hardware type is 8812AE\n")); + }else { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("Err: Unknown device -" + " vid/did=%x/%x\n", venderid, deviceid)); + + rtlhal->hw_type = RTL_DEFAULT_HARDWARE_TYPE; + } + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192DE) { + if (revisionid == 0 || revisionid == 1) { + if (revisionid == 0) { + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Find 92DE MAC0.\n")); + rtlhal->interfaceindex = 0; + } else if (revisionid == 1) { + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Find 92DE MAC1.\n")); + rtlhal->interfaceindex = 1; + } + } else { + RT_TRACE(COMP_INIT, DBG_LOUD, ("Unknown device - " + "VendorID/DeviceID=%x/%x, Revision=%x\n", + venderid, deviceid, revisionid)); + rtlhal->interfaceindex = 0; + } + } + + /* 92ee use new trx flow */ + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8192EE) + rtlpriv->use_new_trx_flow = true; + else + rtlpriv->use_new_trx_flow = false; + + /*find bus info */ + pcipriv->ndis_adapter.busnumber = pdev->bus->number; + pcipriv->ndis_adapter.devnumber = PCI_SLOT(pdev->devfn); + pcipriv->ndis_adapter.funcnumber = PCI_FUNC(pdev->devfn); + + /*find bridge info */ + pcipriv->ndis_adapter.pcibridge_vendor = PCI_BRIDGE_VENDOR_UNKNOWN; + /* some ARM have no bridge_pdev and will crash here + * so we should check if bridge_pdev is NULL */ + if (bridge_pdev) { + pcipriv->ndis_adapter.pcibridge_vendorid = bridge_pdev->vendor; + for (tmp = 0; tmp < PCI_BRIDGE_VENDOR_MAX; tmp++) { + if (bridge_pdev->vendor == pcibridge_vendors[tmp]) { + pcipriv->ndis_adapter.pcibridge_vendor = tmp; + RT_TRACE(COMP_INIT, DBG_DMESG, + ("Pci Bridge Vendor is found index: %d\n", + tmp)); + break; + } + } + } + + if (pcipriv->ndis_adapter.pcibridge_vendor != + PCI_BRIDGE_VENDOR_UNKNOWN) { + pcipriv->ndis_adapter.pcibridge_busnum = + bridge_pdev->bus->number; + pcipriv->ndis_adapter.pcibridge_devnum = + PCI_SLOT(bridge_pdev->devfn); + pcipriv->ndis_adapter.pcibridge_funcnum = + PCI_FUNC(bridge_pdev->devfn); + pcipriv->ndis_adapter.pcicfg_addrport = + (pcipriv->ndis_adapter.pcibridge_busnum << 16) | + (pcipriv->ndis_adapter.pcibridge_devnum << 11) | + (pcipriv->ndis_adapter.pcibridge_funcnum << 8) | (1 << 31); +/**/ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35)) +/**/ + pcipriv->ndis_adapter.pcibridge_pciehdr_offset = + pci_pcie_cap(bridge_pdev); +/**/ +#else + pcipriv->ndis_adapter.pcibridge_pciehdr_offset = + _rtl_pci_get_pciehdr_offset(hw); +#endif +/**/ + pcipriv->ndis_adapter.num4bytes = + (pcipriv->ndis_adapter.pcibridge_pciehdr_offset + 0x10) / 4; + + rtl_pci_get_linkcontrol_field(hw); + + if (pcipriv->ndis_adapter.pcibridge_vendor == + PCI_BRIDGE_VENDOR_AMD) { + pcipriv->ndis_adapter.amd_l1_patch = + rtl_pci_get_amd_l1_patch(hw); + } + } + + RT_TRACE(COMP_INIT, DBG_DMESG, + ("pcidev busnumber:devnumber:funcnumber:" + "vendor:link_ctl %d:%d:%d:%x:%x\n", + pcipriv->ndis_adapter.busnumber, + pcipriv->ndis_adapter.devnumber, + pcipriv->ndis_adapter.funcnumber, + pdev->vendor, pcipriv->ndis_adapter.linkctrl_reg)); + + RT_TRACE(COMP_INIT, DBG_DMESG, + ("pci_bridge busnumber:devnumber:funcnumber:vendor:" + "pcie_cap:link_ctl_reg:amd %d:%d:%d:%x:%x:%x:%x\n", + pcipriv->ndis_adapter.pcibridge_busnum, + pcipriv->ndis_adapter.pcibridge_devnum, + pcipriv->ndis_adapter.pcibridge_funcnum, + pcibridge_vendors[pcipriv->ndis_adapter.pcibridge_vendor], + pcipriv->ndis_adapter.pcibridge_pciehdr_offset, + pcipriv->ndis_adapter.pcibridge_linkctrlreg, + pcipriv->ndis_adapter.amd_l1_patch)); + + rtl_pci_parse_configuration(pdev, hw); + list_add_tail(&rtlpriv->list, &rtlpriv->glb_var->glb_priv_list); + return true; +} + +static int rtl_pci_intr_mode_msi(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(pcipriv); + int ret; + ret = pci_enable_msi(rtlpci->pdev); + if (ret < 0) + return ret; + + ret = request_irq(rtlpci->pdev->irq, &_rtl_pci_interrupt, + IRQF_SHARED, KBUILD_MODNAME, hw); + if (ret < 0) { + pci_disable_msi(rtlpci->pdev); + return ret; + } + + rtlpci->using_msi = true; + + RT_TRACE(COMP_INIT|COMP_INTR, DBG_DMESG, ("MSI Interrupt Mode!\n")); + return 0; +} + +static int rtl_pci_intr_mode_legacy(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(pcipriv); + int ret; + + ret = request_irq(rtlpci->pdev->irq, &_rtl_pci_interrupt, + IRQF_SHARED, KBUILD_MODNAME, hw); + if (ret < 0) { + return ret; + } + + rtlpci->using_msi = false; + RT_TRACE(COMP_INIT|COMP_INTR, DBG_DMESG, + ("Pin-based Interrupt Mode!\n")); + return 0; +} + +static int rtl_pci_intr_mode_decide(struct ieee80211_hw *hw) +{ + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(pcipriv); + int ret; + if (rtlpci->msi_support == true) { + ret = rtl_pci_intr_mode_msi(hw); + if (ret < 0) + ret = rtl_pci_intr_mode_legacy(hw); + } else { + ret = rtl_pci_intr_mode_legacy(hw); + } + return ret; +} + +/* this is used for other modules get + * hw pointer in rtl_pci_get_hw_pointer */ +struct ieee80211_hw *hw_export = NULL; + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)) +int rtl_pci_probe(struct pci_dev *pdev, + const struct pci_device_id *id) + +#else +int __devinit rtl_pci_probe(struct pci_dev *pdev, + const struct pci_device_id *id) +#endif +{ + struct ieee80211_hw *hw = NULL; + + struct rtl_priv *rtlpriv = NULL; + struct rtl_pci_priv *pcipriv = NULL; + struct rtl_pci *rtlpci; + unsigned long pmem_start, pmem_len, pmem_flags; + int err; + + + err = pci_enable_device(pdev); + if (err) { + RT_ASSERT(false, + ("%s : Cannot enable new PCI device\n", + pci_name(pdev))); + return err; + } + + if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(32))) { + if (pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32))) { + RT_ASSERT(false, ("Unable to obtain 32bit DMA " + "for consistent allocations\n")); + pci_disable_device(pdev); + return -ENOMEM; + } + } + + pci_set_master(pdev); + + hw = ieee80211_alloc_hw(sizeof(struct rtl_pci_priv) + + sizeof(struct rtl_priv), &rtl_ops); + if (!hw) { + RT_ASSERT(false, + ("%s : ieee80211 alloc failed\n", pci_name(pdev))); + err = -ENOMEM; + goto fail1; + } + hw_export = hw; + + SET_IEEE80211_DEV(hw, &pdev->dev); + pci_set_drvdata(pdev, hw); + + rtlpriv = hw->priv; + pcipriv = (void *)rtlpriv->priv; + pcipriv->dev.pdev = pdev; + + /* init cfg & intf_ops */ + rtlpriv->rtlhal.interface = INTF_PCI; + rtlpriv->cfg = (struct rtl_hal_cfg *)(id->driver_data); + rtlpriv->intf_ops = &rtl_pci_ops; + rtlpriv->glb_var = &global_var; + + /* + *init dbgp flags before all + *other functions, because we will + *use it in other funtions like + *RT_TRACE/RT_PRINT/RTL_PRINT_DATA + *you can not use these macro + *before this + */ + rtl_dbgp_flag_init(hw); + + /* MEM map */ + err = pci_request_regions(pdev, KBUILD_MODNAME); + if (err) { + RT_ASSERT(false, ("Can't obtain PCI resources\n")); + return err; + } + + pmem_start = pci_resource_start(pdev, rtlpriv->cfg->bar_id); + pmem_len = pci_resource_len(pdev, rtlpriv->cfg->bar_id); + pmem_flags = pci_resource_flags(pdev, rtlpriv->cfg->bar_id); + + /*shared mem start */ + rtlpriv->io.pci_mem_start = + (unsigned long)pci_iomap(pdev, + rtlpriv->cfg->bar_id, pmem_len); + if (rtlpriv->io.pci_mem_start == 0) { + RT_ASSERT(false, ("Can't map PCI mem\n")); + goto fail2; + } + + RT_TRACE(COMP_INIT, DBG_DMESG, + ("mem mapped space: start: 0x%08lx len:%08lx " + "flags:%08lx, after map:0x%08lx\n", + pmem_start, pmem_len, pmem_flags, + rtlpriv->io.pci_mem_start)); + + /* Disable Clk Request */ + pci_write_config_byte(pdev, 0x81, 0); + /* leave D3 mode */ + pci_write_config_byte(pdev, 0x44, 0); + pci_write_config_byte(pdev, 0x04, 0x06); + pci_write_config_byte(pdev, 0x04, 0x07); + + /* find adapter */ + /* if chip not support, will return false */ + if(!_rtl_pci_find_adapter(pdev, hw)) + goto fail3; + + /* Init IO handler */ + _rtl_pci_io_handler_init(&pdev->dev, hw); + + /*like read eeprom and so on */ + rtlpriv->cfg->ops->read_eeprom_info(hw); + + if (rtlpriv->cfg->ops->init_sw_vars(hw)) { + RT_TRACE(COMP_ERR, DBG_EMERG, ("Can't init_sw_vars.\n")); + goto fail3; + } + + rtlpriv->cfg->ops->init_sw_leds(hw); + + /*aspm */ + rtl_pci_init_aspm(hw); + + /* Init mac80211 sw */ + err = rtl_init_core(hw); + if (err) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("Can't allocate sw for mac80211.\n")); + goto fail3; + } + + /* Init PCI sw */ + err = !rtl_pci_init(hw, pdev); + if (err) { + RT_TRACE(COMP_ERR, DBG_EMERG, ("Failed to init PCI.\n")); + goto fail3; + } + + err = ieee80211_register_hw(hw); + if (err) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("Can't register mac80211 hw.\n")); + goto fail3; + } else { + rtlpriv->mac80211.mac80211_registered = 1; + } + /* the wiphy must have been registed to + * cfg80211 prior to regulatory_hint */ + if (regulatory_hint(hw->wiphy, rtlpriv->regd.alpha2)) { + RT_TRACE(COMP_ERR, DBG_WARNING, ("regulatory_hint fail\n")); + } + + err = sysfs_create_group(&pdev->dev.kobj, &rtl_attribute_group); + if (err) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("failed to create sysfs device attributes\n")); + goto fail3; + } + /* add for prov */ + rtl_proc_add_one(hw); + + /*init rfkill */ + rtl_init_rfkill(hw); + + rtlpci = rtl_pcidev(pcipriv); + + err = rtl_pci_intr_mode_decide(hw); + if (err) { + RT_TRACE(COMP_INIT, DBG_DMESG, + ("%s: failed to register IRQ handler\n", + wiphy_name(hw->wiphy))); + goto fail3; + } else { + rtlpci->irq_alloc = 1; + } + + set_bit(RTL_STATUS_INTERFACE_START, &rtlpriv->status); + return 0; + +fail3: + pci_set_drvdata(pdev, NULL); + rtl_deinit_core(hw); + ieee80211_free_hw(hw); + + if (rtlpriv->io.pci_mem_start != 0) + pci_iounmap(pdev, (void *)rtlpriv->io.pci_mem_start); + +fail2: + pci_release_regions(pdev); + +fail1: + + pci_disable_device(pdev); + + return -ENODEV; + +} +//EXPORT_SYMBOL(rtl_pci_probe); + +struct ieee80211_hw *rtl_pci_get_hw_pointer(void) +{ + return hw_export; +} +//EXPORT_SYMBOL(rtl_pci_get_hw_pointer); + +void rtl_pci_disconnect(struct pci_dev *pdev) +{ + struct ieee80211_hw *hw = pci_get_drvdata(pdev); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(pcipriv); + struct rtl_mac *rtlmac = rtl_mac(rtlpriv); + + clear_bit(RTL_STATUS_INTERFACE_START, &rtlpriv->status); + + sysfs_remove_group(&pdev->dev.kobj, &rtl_attribute_group); + + /* add for prov */ + rtl_proc_remove_one(hw); + + + /*ieee80211_unregister_hw will call ops_stop */ + if (rtlmac->mac80211_registered == 1) { + ieee80211_unregister_hw(hw); + rtlmac->mac80211_registered = 0; + } else { + rtl_deinit_deferred_work(hw); + rtlpriv->intf_ops->adapter_stop(hw); + } + + /*deinit rfkill */ + rtl_deinit_rfkill(hw); + + rtl_pci_deinit(hw); + rtl_deinit_core(hw); + rtlpriv->cfg->ops->deinit_sw_vars(hw); + + if (rtlpci->irq_alloc) { + synchronize_irq(rtlpci->pdev->irq); + free_irq(rtlpci->pdev->irq, hw); + rtlpci->irq_alloc = 0; + } + + if (rtlpci->using_msi == true) + pci_disable_msi(rtlpci->pdev); + + list_del(&rtlpriv->list); + if (rtlpriv->io.pci_mem_start != 0) { + pci_iounmap(pdev, (void *)rtlpriv->io.pci_mem_start); + pci_release_regions(pdev); + } + + pci_disable_device(pdev); + + rtl_pci_disable_aspm(hw); + + pci_set_drvdata(pdev, NULL); + + ieee80211_free_hw(hw); +} +//EXPORT_SYMBOL(rtl_pci_disconnect); + +/*************************************** +kernel pci power state define: +PCI_D0 ((pci_power_t __force) 0) +PCI_D1 ((pci_power_t __force) 1) +PCI_D2 ((pci_power_t __force) 2) +PCI_D3hot ((pci_power_t __force) 3) +PCI_D3cold ((pci_power_t __force) 4) +PCI_UNKNOWN ((pci_power_t __force) 5) + +This function is called when system +goes into suspend state mac80211 will +call rtl_mac_stop() from the mac80211 +suspend function first, So there is +no need to call hw_disable here. +****************************************/ +int rtl_pci_suspend(struct device *dev) +{ + struct pci_dev *pdev = to_pci_dev(dev); + struct ieee80211_hw *hw = pci_get_drvdata(pdev); + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtlpriv->cfg->ops->hw_suspend(hw); + rtl_deinit_rfkill(hw); + + return 0; +} +//EXPORT_SYMBOL(rtl_pci_suspend); + +int rtl_pci_resume(struct device *dev) +{ + struct pci_dev *pdev = to_pci_dev(dev); + struct ieee80211_hw *hw = pci_get_drvdata(pdev); + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtlpriv->cfg->ops->hw_resume(hw); + rtl_init_rfkill(hw); + + return 0; +} +//EXPORT_SYMBOL(rtl_pci_resume); + +struct rtl_intf_ops rtl_pci_ops = { + .read_efuse_byte = read_efuse_byte, + .adapter_start = rtl_pci_start, + .adapter_stop = rtl_pci_stop, + .check_buddy_priv = rtl_pci_check_buddy_priv, + .adapter_tx = rtl_pci_tx, + .flush = rtl_pci_flush, + .reset_trx_ring = rtl_pci_reset_trx_ring, + .waitq_insert = rtl_pci_tx_chk_waitq_insert, + + .disable_aspm = rtl_pci_disable_aspm, + .enable_aspm = rtl_pci_enable_aspm, +}; --- linux-3.13.0.orig/drivers/staging/rtl8821ae/pci.h +++ linux-3.13.0/drivers/staging/rtl8821ae/pci.h @@ -0,0 +1,353 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL_PCI_H__ +#define __RTL_PCI_H__ + +#include +/* +1: MSDU packet queue, +2: Rx Command Queue +*/ +#define RTL_PCI_RX_MPDU_QUEUE 0 +#define RTL_PCI_RX_CMD_QUEUE 1 +#define RTL_PCI_MAX_RX_QUEUE 2 + +#define RTL_PCI_MAX_RX_COUNT 512//64 +#define RTL_PCI_MAX_TX_QUEUE_COUNT 9 + +#define RT_TXDESC_NUM 128 +#define TX_DESC_NUM_92E 512 +#define RT_TXDESC_NUM_BE_QUEUE 256 + +#define BK_QUEUE 0 +#define BE_QUEUE 1 +#define VI_QUEUE 2 +#define VO_QUEUE 3 +#define BEACON_QUEUE 4 +#define TXCMD_QUEUE 5 +#define MGNT_QUEUE 6 +#define HIGH_QUEUE 7 +#define HCCA_QUEUE 8 + +#define RTL_PCI_DEVICE(vend, dev, cfg) \ + .vendor = (vend), \ + .device = (dev), \ + .subvendor = PCI_ANY_ID, \ + .subdevice = PCI_ANY_ID,\ + .driver_data = (kernel_ulong_t)&(cfg) + +#define INTEL_VENDOR_ID 0x8086 +#define SIS_VENDOR_ID 0x1039 +#define ATI_VENDOR_ID 0x1002 +#define ATI_DEVICE_ID 0x7914 +#define AMD_VENDOR_ID 0x1022 + +#define PCI_MAX_BRIDGE_NUMBER 255 +#define PCI_MAX_DEVICES 32 +#define PCI_MAX_FUNCTION 8 + +#define PCI_CONF_ADDRESS 0x0CF8 /*PCI Configuration Space Address */ +#define PCI_CONF_DATA 0x0CFC /*PCI Configuration Space Data */ + +#define PCI_CLASS_BRIDGE_DEV 0x06 +#define PCI_SUBCLASS_BR_PCI_TO_PCI 0x04 +#define PCI_CAPABILITY_ID_PCI_EXPRESS 0x10 +#define PCI_CAP_ID_EXP 0x10 + +#define U1DONTCARE 0xFF +#define U2DONTCARE 0xFFFF +#define U4DONTCARE 0xFFFFFFFF + +#define RTL_PCI_8192_DID 0x8192 /*8192 PCI-E */ +#define RTL_PCI_8192SE_DID 0x8192 /*8192 SE */ +#define RTL_PCI_8174_DID 0x8174 /*8192 SE */ +#define RTL_PCI_8173_DID 0x8173 /*8191 SE Crab */ +#define RTL_PCI_8172_DID 0x8172 /*8191 SE RE */ +#define RTL_PCI_8171_DID 0x8171 /*8191 SE Unicron */ +#define RTL_PCI_0045_DID 0x0045 /*8190 PCI for Ceraga */ +#define RTL_PCI_0046_DID 0x0046 /*8190 Cardbus for Ceraga */ +#define RTL_PCI_0044_DID 0x0044 /*8192e PCIE for Ceraga */ +#define RTL_PCI_0047_DID 0x0047 /*8192e Express Card for Ceraga */ +#define RTL_PCI_700F_DID 0x700F +#define RTL_PCI_701F_DID 0x701F +#define RTL_PCI_DLINK_DID 0x3304 +#define RTL_PCI_8723AE_DID 0x8723 /*8723e */ +#define RTL_PCI_8192CET_DID 0x8191 /*8192ce */ +#define RTL_PCI_8192CE_DID 0x8178 /*8192ce */ +#define RTL_PCI_8191CE_DID 0x8177 /*8192ce */ +#define RTL_PCI_8188CE_DID 0x8176 /*8192ce */ +#define RTL_PCI_8192CU_DID 0x8191 /*8192ce */ +#define RTL_PCI_8192DE_DID 0x8193 /*8192de */ +#define RTL_PCI_8192DE_DID2 0x002B /*92DE*/ +#define RTL_PCI_8188EE_DID 0x8179 /*8188ee*/ +#define RTL_PCI_8723BE_DID 0xB723 /*8723be*/ +#define RTL_PCI_8192EE_DID 0x818B /*8192ee*/ +#define RTL_PCI_8821AE_DID 0x8821 /*8821ae*/ +#define RTL_PCI_8812AE_DID 0x8812 /*8812ae*/ + +/*8192 support 16 pages of IO registers*/ +#define RTL_MEM_MAPPED_IO_RANGE_8190PCI 0x1000 +#define RTL_MEM_MAPPED_IO_RANGE_8192PCIE 0x4000 +#define RTL_MEM_MAPPED_IO_RANGE_8192SE 0x4000 +#define RTL_MEM_MAPPED_IO_RANGE_8192CE 0x4000 +#define RTL_MEM_MAPPED_IO_RANGE_8192DE 0x4000 + +#define RTL_PCI_REVISION_ID_8190PCI 0x00 +#define RTL_PCI_REVISION_ID_8192PCIE 0x01 +#define RTL_PCI_REVISION_ID_8192SE 0x10 +#define RTL_PCI_REVISION_ID_8192CE 0x1 +#define RTL_PCI_REVISION_ID_8192DE 0x0 + +#define PCI_VENDOR_ID_REALTEK 0x10ec + +#define RTL_DEFAULT_HARDWARE_TYPE HARDWARE_TYPE_RTL8192CE + +enum pci_bridge_vendor { + PCI_BRIDGE_VENDOR_INTEL = 0x0, /*0b'0000,0001 */ + PCI_BRIDGE_VENDOR_ATI, /*0b'0000,0010*/ + PCI_BRIDGE_VENDOR_AMD, /*0b'0000,0100*/ + PCI_BRIDGE_VENDOR_SIS, /*0b'0000,1000*/ + PCI_BRIDGE_VENDOR_UNKNOWN, /*0b'0100,0000*/ + PCI_BRIDGE_VENDOR_MAX, +}; + +struct rtl_pci_capabilities_header { + u8 capability_id; + u8 next; +}; + +/* In new TRX flow, Buffer_desc is new concept + * But TX wifi info == TX descriptor in old flow + * RX wifi info == RX descriptor in old flow */ +struct rtl_tx_buffer_desc { +#if (RTL8192EE_SEG_NUM == 2) + u32 dword[2*(DMA_IS_64BIT + 1)*8]; //seg = 8 +#elif (RTL8192EE_SEG_NUM == 1) + u32 dword[2*(DMA_IS_64BIT + 1)*4]; //seg = 4 +#elif (RTL8192EE_SEG_NUM == 0) + u32 dword[2*(DMA_IS_64BIT + 1)*2]; //seg = 2 +#endif +} __packed; + +struct rtl_tx_desc {/*old: tx desc*//*new: tx wifi info*/ + u32 dword[16]; +} __packed; + +struct rtl_rx_buffer_desc { /*rx buffer desc*/ + u32 dword[2]; +} __packed; + +struct rtl_rx_desc { /*old: rx desc*//*new: rx wifi info*/ + u32 dword[8]; +} __packed; + +struct rtl_tx_cmd_desc { + u32 dword[16]; +} __packed; + +struct rtl8192_tx_ring { + struct rtl_tx_desc *desc; /*tx desc / tx wifi info*/ + dma_addr_t dma; /*tx desc dma memory / tx wifi info dma memory*/ + unsigned int idx; + unsigned int entries; + struct sk_buff_head queue; + /*add for new trx flow*/ + struct rtl_tx_buffer_desc *buffer_desc; /*tx buffer descriptor*/ + dma_addr_t buffer_desc_dma; /*tx bufferd desc dma memory*/ + u16 avl_desc; /* available_desc_to_write */ + u16 cur_tx_wp; /* current_tx_write_point */ + u16 cur_tx_rp; /* current_tx_read_point */ +}; + +struct rtl8192_rx_ring { + struct rtl_rx_desc *desc;/*for old trx flow, not uesd in new trx*/ + /*dma matches either 'desc' or 'buffer_desc'*/ + dma_addr_t dma; + unsigned int idx; + struct sk_buff *rx_buf[RTL_PCI_MAX_RX_COUNT]; + /*add for new trx flow*/ + struct rtl_rx_buffer_desc *buffer_desc; /*rx buffer descriptor*/ + u16 next_rx_rp; /* next_rx_read_point */ +}; + +struct rtl_pci { + struct pci_dev *pdev; + bool irq_enabled; + + /*Tx */ + struct rtl8192_tx_ring tx_ring[RTL_PCI_MAX_TX_QUEUE_COUNT]; + int txringcount[RTL_PCI_MAX_TX_QUEUE_COUNT]; + u32 transmit_config; + + /*Rx */ + struct rtl8192_rx_ring rx_ring[RTL_PCI_MAX_RX_QUEUE]; + int rxringcount; + u16 rxbuffersize; + u32 receive_config; + + /*irq */ + u8 irq_alloc; + u32 irq_mask[2]; + u32 sys_irq_mask; + + /*Bcn control register setting */ + u32 reg_bcn_ctrl_val; + + /*ASPM*/ u8 const_pci_aspm; + u8 const_amdpci_aspm; + u8 const_hwsw_rfoff_d3; + u8 const_support_pciaspm; + /*pci-e bridge */ + u8 const_hostpci_aspm_setting; + /*pci-e device */ + u8 const_devicepci_aspm_setting; + /*If it supports ASPM, Offset[560h] = 0x40, + otherwise Offset[560h] = 0x00. */ + bool b_support_aspm; + bool b_support_backdoor; + + /*QOS & EDCA */ + enum acm_method acm_method; + + u16 shortretry_limit; + u16 longretry_limit; + + /* MSI support */ + bool msi_support; + bool using_msi; +}; + +struct mp_adapter { + u8 linkctrl_reg; + + u8 busnumber; + u8 devnumber; + u8 funcnumber; + + u8 pcibridge_busnum; + u8 pcibridge_devnum; + u8 pcibridge_funcnum; + + u8 pcibridge_vendor; + u16 pcibridge_vendorid; + u16 pcibridge_deviceid; + + u32 pcicfg_addrport; + u8 num4bytes; + + u8 pcibridge_pciehdr_offset; + u8 pcibridge_linkctrlreg; + + bool amd_l1_patch; +}; + +struct rtl_pci_priv { + struct rtl_pci dev; + struct mp_adapter ndis_adapter; + struct rtl_led_ctl ledctl; + struct bt_coexist_info btcoexist; +}; + +#define rtl_pcipriv(hw) (((struct rtl_pci_priv *)(rtl_priv(hw))->priv)) +#define rtl_pcidev(pcipriv) (&((pcipriv)->dev)) + +int rtl_pci_reset_trx_ring(struct ieee80211_hw *hw); + +extern struct rtl_intf_ops rtl_pci_ops; + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)) +int rtl_pci_probe(struct pci_dev *pdev, + const struct pci_device_id *id); +#else +int __devinit rtl_pci_probe(struct pci_dev *pdev, + const struct pci_device_id *id); +#endif +void rtl_pci_disconnect(struct pci_dev *pdev); +int rtl_pci_suspend(struct device *dev); +int rtl_pci_resume(struct device *dev); + +static inline u8 pci_read8_sync(struct rtl_priv *rtlpriv, u32 addr) +{ + return 0xff & readb((u8 __iomem *) rtlpriv->io.pci_mem_start + addr); +} + +static inline u16 pci_read16_sync(struct rtl_priv *rtlpriv, u32 addr) +{ + return readw((u8 __iomem *) rtlpriv->io.pci_mem_start + addr); +} + +static inline u32 pci_read32_sync(struct rtl_priv *rtlpriv, u32 addr) +{ + return readl((u8 __iomem *) rtlpriv->io.pci_mem_start + addr); +} + +static inline void pci_write8_async(struct rtl_priv *rtlpriv, u32 addr, u8 val) +{ + writeb(val, (u8 __iomem *) rtlpriv->io.pci_mem_start + addr); +} + +static inline void pci_write16_async(struct rtl_priv *rtlpriv, + u32 addr, u16 val) +{ + writew(val, (u8 __iomem *) rtlpriv->io.pci_mem_start + addr); +} + +static inline void pci_write32_async(struct rtl_priv *rtlpriv, + u32 addr, u32 val) +{ + writel(val, (u8 __iomem *) rtlpriv->io.pci_mem_start + addr); +} + +static inline void rtl_pci_raw_write_port_ulong(u32 port, u32 val) +{ + outl(val, port); +} + +static inline void rtl_pci_raw_write_port_uchar(u32 port, u8 val) +{ + outb(val, port); +} + +static inline void rtl_pci_raw_read_port_uchar(u32 port, u8 * pval) +{ + *pval = inb(port); +} + +static inline void rtl_pci_raw_read_port_ushort(u32 port, u16 * pval) +{ + *pval = inw(port); +} + +static inline void rtl_pci_raw_read_port_ulong(u32 port, u32 * pval) +{ + *pval = inl(port); +} + +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/ps.c +++ linux-3.13.0/drivers/staging/rtl8821ae/ps.c @@ -0,0 +1,1025 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "wifi.h" +#include "base.h" +#include "ps.h" +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)) +#include +#endif +#include "btcoexist/rtl_btc.h" + +bool rtl_ps_enable_nic(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + bool init_status = true; + + /*<1> reset trx ring */ + if (rtlhal->interface == INTF_PCI) + rtlpriv->intf_ops->reset_trx_ring(hw); + + if (is_hal_stop(rtlhal)) + RT_TRACE(COMP_ERR, DBG_WARNING, ("Driver is already down!\n")); + + /*<2> Enable Adapter */ + rtlpriv->cfg->ops->hw_init(hw); + RT_CLEAR_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_HALT_NIC); + /*init_status = false; */ + + /*<3> Enable Interrupt */ + rtlpriv->cfg->ops->enable_interrupt(hw); + + /* */ + rtl_watch_dog_timer_callback((unsigned long)hw); + + return init_status; +} +//EXPORT_SYMBOL(rtl_ps_enable_nic); + +bool rtl_ps_disable_nic(struct ieee80211_hw *hw) +{ + bool status = true; + struct rtl_priv *rtlpriv = rtl_priv(hw); + + /*<1> Stop all timer */ + rtl_deinit_deferred_work(hw); + + /*<2> Disable Interrupt */ + rtlpriv->cfg->ops->disable_interrupt(hw); + + /*<3> Disable Adapter */ + rtlpriv->cfg->ops->hw_disable(hw); + + return status; +} +//EXPORT_SYMBOL(rtl_ps_disable_nic); + +bool rtl_ps_set_rf_state(struct ieee80211_hw *hw, + enum rf_pwrstate state_toset, + u32 changesource, bool protect_or_not) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + enum rf_pwrstate rtstate; + bool b_actionallowed = false; + u16 rfwait_cnt = 0; + + /*protect_or_not = true; */ + + if (protect_or_not) + goto no_protect; + + /* + *Only one thread can change + *the RF state at one time, and others + *should wait to be executed. + */ + while (true) { + spin_lock(&rtlpriv->locks.rf_ps_lock); + if (ppsc->rfchange_inprogress) { + spin_unlock(&rtlpriv->locks.rf_ps_lock); + + RT_TRACE(COMP_ERR, DBG_WARNING, + ("RF Change in progress!" + "Wait to set..state_toset(%d).\n", + state_toset)); + + /* Set RF after the previous action is done. */ + while (ppsc->rfchange_inprogress) { + rfwait_cnt++; + mdelay(1); + /* + *Wait too long, return false to avoid + *to be stuck here. + */ + if (rfwait_cnt > 100) + return false; + } + } else { + ppsc->rfchange_inprogress = true; + spin_unlock(&rtlpriv->locks.rf_ps_lock); + break; + } + } + +no_protect: + rtstate = ppsc->rfpwr_state; + + switch (state_toset) { + case ERFON: + ppsc->rfoff_reason &= (~changesource); + + if ((changesource == RF_CHANGE_BY_HW) && + (ppsc->b_hwradiooff == true)) { + ppsc->b_hwradiooff = false; + } + + if (!ppsc->rfoff_reason) { + ppsc->rfoff_reason = 0; + b_actionallowed = true; + } + + break; + + case ERFOFF: + + if ((changesource == RF_CHANGE_BY_HW) && + (ppsc->b_hwradiooff == false)) { + ppsc->b_hwradiooff = true; + } + + ppsc->rfoff_reason |= changesource; + b_actionallowed = true; + break; + + case ERFSLEEP: + ppsc->rfoff_reason |= changesource; + b_actionallowed = true; + break; + + default: + RT_TRACE(COMP_ERR, DBG_EMERG, ("switch case not process \n")); + break; + } + + if (b_actionallowed) + rtlpriv->cfg->ops->set_rf_power_state(hw, state_toset); + + if (!protect_or_not) { + spin_lock(&rtlpriv->locks.rf_ps_lock); + ppsc->rfchange_inprogress = false; + spin_unlock(&rtlpriv->locks.rf_ps_lock); + } + + return b_actionallowed; +} +//EXPORT_SYMBOL(rtl_ps_set_rf_state); + +static void _rtl_ps_inactive_ps(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + + ppsc->b_swrf_processing = true; + + if (ppsc->inactive_pwrstate == ERFON && rtlhal->interface == INTF_PCI) { + if ((ppsc->reg_rfps_level & RT_RF_OFF_LEVL_ASPM) && + RT_IN_PS_LEVEL(ppsc, RT_PS_LEVEL_ASPM) && + rtlhal->interface == INTF_PCI) { + rtlpriv->intf_ops->disable_aspm(hw); + RT_CLEAR_PS_LEVEL(ppsc, RT_PS_LEVEL_ASPM); + } + } + + if (rtlpriv->cfg->ops->get_btc_status()){ + rtlpriv->btcoexist.btc_ops->btc_ips_notify(rtlpriv, + ppsc->inactive_pwrstate); + } + rtl_ps_set_rf_state(hw, ppsc->inactive_pwrstate, + RF_CHANGE_BY_IPS, false); + + if (ppsc->inactive_pwrstate == ERFOFF && + rtlhal->interface == INTF_PCI) { + if (ppsc->reg_rfps_level & RT_RF_OFF_LEVL_ASPM && + !RT_IN_PS_LEVEL(ppsc, RT_PS_LEVEL_ASPM)) { + rtlpriv->intf_ops->enable_aspm(hw); + RT_SET_PS_LEVEL(ppsc, RT_PS_LEVEL_ASPM); + } + } + + ppsc->b_swrf_processing = false; +} + +void rtl_ips_nic_off_wq_callback(void *data) +{ + struct rtl_works *rtlworks = + container_of_dwork_rtl(data, struct rtl_works, ips_nic_off_wq); + struct ieee80211_hw *hw = rtlworks->hw; + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + enum rf_pwrstate rtstate; + + if (mac->opmode != NL80211_IFTYPE_STATION) { + RT_TRACE(COMP_ERR, DBG_WARNING, ("not station return\n")); + return; + } + + if (mac->p2p_in_use) + return; + + if (mac->link_state > MAC80211_NOLINK) + return; + + if (is_hal_stop(rtlhal)) + return; + + if (rtlpriv->sec.being_setkey) + return; + + if(rtlpriv->cfg->ops->bt_turn_off_bt_coexist_before_enter_lps) + rtlpriv->cfg->ops->bt_turn_off_bt_coexist_before_enter_lps(hw); + + if (ppsc->b_inactiveps) { + rtstate = ppsc->rfpwr_state; + + /* + *Do not enter IPS in the following conditions: + *(1) RF is already OFF or Sleep + *(2) b_swrf_processing (indicates the IPS is still under going) + *(3) Connectted (only disconnected can trigger IPS) + *(4) IBSS (send Beacon) + *(5) AP mode (send Beacon) + *(6) monitor mode (rcv packet) + */ + + if (rtstate == ERFON && + !ppsc->b_swrf_processing && + (mac->link_state == MAC80211_NOLINK) && + !mac->act_scanning) { + RT_TRACE(COMP_RF, DBG_LOUD, + ("IPSEnter(): Turn off RF.\n")); + + ppsc->inactive_pwrstate = ERFOFF; + ppsc->b_in_powersavemode = true; + + /*rtl_pci_reset_trx_ring(hw); */ + _rtl_ps_inactive_ps(hw); + } + } +} + +void rtl_ips_nic_off(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + /* + *because when link with ap, mac80211 will ask us + *to disable nic quickly after scan before linking, + *this will cause link failed, so we delay 100ms here + */ + queue_delayed_work(rtlpriv->works.rtl_wq, + &rtlpriv->works.ips_nic_off_wq, MSECS(100)); +} + +/* NOTICE: any opmode should exc nic_on, or disable without + * nic_on may something wrong, like adhoc TP*/ +void rtl_ips_nic_on(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + enum rf_pwrstate rtstate; + + cancel_delayed_work(&rtlpriv->works.ips_nic_off_wq); + + spin_lock(&rtlpriv->locks.ips_lock); + if (ppsc->b_inactiveps) { + rtstate = ppsc->rfpwr_state; + + if (rtstate != ERFON && + !ppsc->b_swrf_processing && + ppsc->rfoff_reason <= RF_CHANGE_BY_IPS) { + + ppsc->inactive_pwrstate = ERFON; + ppsc->b_in_powersavemode = false; + _rtl_ps_inactive_ps(hw); + } + } + spin_unlock(&rtlpriv->locks.ips_lock); +} + +/*for FW LPS*/ + +/* + *Determine if we can set Fw into PS mode + *in current condition.Return true if it + *can enter PS mode. + */ +static bool rtl_get_fwlps_doze(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + u32 ps_timediff; + + ps_timediff = jiffies_to_msecs(jiffies - + ppsc->last_delaylps_stamp_jiffies); + + if (ps_timediff < 2000) { + RT_TRACE(COMP_POWER, DBG_LOUD, + ("Delay enter Fw LPS for DHCP, ARP," + " or EAPOL exchanging state.\n")); + return false; + } + + if (mac->link_state != MAC80211_LINKED) + return false; + + if (mac->opmode == NL80211_IFTYPE_ADHOC) + return false; + + return true; +} + +/* Change current and default preamble mode.*/ +void rtl_lps_set_psmode(struct ieee80211_hw *hw, u8 rt_psmode) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + bool enter_fwlps; + + if (mac->opmode == NL80211_IFTYPE_ADHOC) + return; + + if (mac->link_state != MAC80211_LINKED) + return; + + if (ppsc->dot11_psmode == rt_psmode) + return; + + /* Update power save mode configured. */ + ppsc->dot11_psmode = rt_psmode; + + /* + * + *1. Enter PS mode + * Set RPWM to Fw to turn RF off and send H2C fw_pwrmode + * cmd to set Fw into PS mode. + *2. Leave PS mode + * Send H2C fw_pwrmode cmd to Fw to set Fw into Active + * mode and set RPWM to turn RF on. + */ + + if ((ppsc->b_fwctrl_lps) && ppsc->report_linked) { + if (ppsc->dot11_psmode == EACTIVE) { + RT_TRACE(COMP_RF, DBG_DMESG, + ("FW LPS leave ps_mode:%x\n", + FW_PS_ACTIVE_MODE)); + enter_fwlps = false; + ppsc->pwr_mode = FW_PS_ACTIVE_MODE; + ppsc->smart_ps = 0; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_FW_LPS_ACTION, + (u8 *)(&enter_fwlps)); + if (ppsc->p2p_ps_info.opp_ps) + rtl_p2p_ps_cmd(hw,P2P_PS_ENABLE); + + } else { + if (rtl_get_fwlps_doze(hw)) { + RT_TRACE(COMP_RF, DBG_DMESG, + ("FW LPS enter ps_mode:%x\n", + ppsc->fwctrl_psmode)); + enter_fwlps = true; + ppsc->pwr_mode = ppsc->fwctrl_psmode; + ppsc->smart_ps = 2; + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_FW_LPS_ACTION, + (u8 *)(&enter_fwlps)); + + } else { + /* Reset the power save related parameters. */ + ppsc->dot11_psmode = EACTIVE; + } + } + } +} + +/*Enter the leisure power save mode.*/ +void rtl_lps_enter(struct ieee80211_hw *hw) +{ + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_priv *rtlpriv = rtl_priv(hw); + unsigned long flag; + + if (!ppsc->b_fwctrl_lps) + return; + + if (rtlpriv->sec.being_setkey) + return; + + if (rtlpriv->link_info.b_busytraffic) + return; + + /*sleep after linked 10s, to let DHCP and 4-way handshake ok enough!! */ + if (mac->cnt_after_linked < 5) + return; + + if (mac->opmode == NL80211_IFTYPE_ADHOC) + return; + + if (mac->link_state != MAC80211_LINKED) + return; + + spin_lock_irqsave(&rtlpriv->locks.lps_lock, flag); + + /* Idle for a while if we connect to AP a while ago. */ + if (mac->cnt_after_linked >= 2) { + if (ppsc->dot11_psmode == EACTIVE) { + RT_TRACE(COMP_POWER, DBG_LOUD, + ("Enter 802.11 power save mode...\n")); + + rtl_lps_set_psmode(hw, EAUTOPS); + } + } + + spin_unlock_irqrestore(&rtlpriv->locks.lps_lock, flag); +} + +/*Leave the leisure power save mode.*/ +void rtl_lps_leave(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + unsigned long flag; + + spin_lock_irqsave(&rtlpriv->locks.lps_lock, flag); + + if (ppsc->b_fwctrl_lps) { + if (ppsc->dot11_psmode != EACTIVE) { + + /*FIX ME */ + rtlpriv->cfg->ops->enable_interrupt(hw); + + if (ppsc->reg_rfps_level & RT_RF_LPS_LEVEL_ASPM && + RT_IN_PS_LEVEL(ppsc, RT_PS_LEVEL_ASPM) && + rtlhal->interface == INTF_PCI) { + rtlpriv->intf_ops->disable_aspm(hw); + RT_CLEAR_PS_LEVEL(ppsc, RT_PS_LEVEL_ASPM); + } + + RT_TRACE(COMP_POWER, DBG_LOUD, + ("Busy Traffic,Leave 802.11 power save..\n")); + + rtl_lps_set_psmode(hw, EACTIVE); + } + } + spin_unlock_irqrestore(&rtlpriv->locks.lps_lock, flag); +} + +/* For sw LPS*/ +void rtl_swlps_beacon(struct ieee80211_hw *hw, void *data, unsigned int len) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct ieee80211_hdr *hdr = (void *) data; + struct ieee80211_tim_ie *tim_ie; + u8 *tim; + u8 tim_len; + bool u_buffed; + bool m_buffed; + + if (mac->opmode != NL80211_IFTYPE_STATION) + return; + + if (!rtlpriv->psc.b_swctrl_lps) + return; + + if (rtlpriv->mac80211.link_state != MAC80211_LINKED) + return; + + if (!rtlpriv->psc.sw_ps_enabled) + return; + + if (rtlpriv->psc.b_fwctrl_lps) + return; + + if (likely(!(hw->conf.flags & IEEE80211_CONF_PS))) + return; + + /* check if this really is a beacon */ + if (!ieee80211_is_beacon(hdr->frame_control)) + return; + + /* min. beacon length + FCS_LEN */ + if (len <= 40 + FCS_LEN) + return; + + /* and only beacons from the associated BSSID, please */ + if (ether_addr_equal(hdr->addr3, rtlpriv->mac80211.bssid)) + return; + + rtlpriv->psc.last_beacon = jiffies; + + tim = rtl_find_ie(data, len - FCS_LEN, WLAN_EID_TIM); + if (!tim) + return; + + if (tim[1] < sizeof(*tim_ie)) + return; + + tim_len = tim[1]; + tim_ie = (struct ieee80211_tim_ie *) &tim[2]; + +/**/ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35)) +/**/ + if (!WARN_ON_ONCE(!hw->conf.ps_dtim_period)) + rtlpriv->psc.dtim_counter = tim_ie->dtim_count; +/**/ +#else + if (!WARN_ON_ONCE(!mac->vif->bss_conf.dtim_period)) + rtlpriv->psc.dtim_counter = tim_ie->dtim_count; +#endif +/**/ + + /* Check whenever the PHY can be turned off again. */ + + /* 1. What about buffered unicast traffic for our AID? */ + u_buffed = ieee80211_check_tim(tim_ie, tim_len, + rtlpriv->mac80211.assoc_id); + + /* 2. Maybe the AP wants to send multicast/broadcast data? */ + m_buffed = tim_ie->bitmap_ctrl & 0x01; + rtlpriv->psc.multi_buffered = m_buffed; + + /* unicast will process by mac80211 through + * set ~IEEE80211_CONF_PS, So we just check + * multicast frames here */ + if (!m_buffed ) {//&&) {// !rtlpriv->psc.tx_doing) { + /* back to low-power land. and delay is + * prevent null power save frame tx fail */ + queue_delayed_work(rtlpriv->works.rtl_wq, + &rtlpriv->works.ps_work, MSECS(5)); + } else { + RT_TRACE(COMP_POWER, DBG_DMESG, + ("u_bufferd: %x, m_buffered: %x\n", + u_buffed, m_buffed)); + } +} + +void rtl_swlps_rf_awake(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + unsigned long flag; + + if (!rtlpriv->psc.b_swctrl_lps) + return; + if (mac->link_state != MAC80211_LINKED) + return; + + if (ppsc->reg_rfps_level & RT_RF_LPS_LEVEL_ASPM && + RT_IN_PS_LEVEL(ppsc, RT_PS_LEVEL_ASPM)) { + rtlpriv->intf_ops->disable_aspm(hw); + RT_CLEAR_PS_LEVEL(ppsc, RT_PS_LEVEL_ASPM); + } + + spin_lock_irqsave(&rtlpriv->locks.lps_lock, flag); + rtl_ps_set_rf_state(hw, ERFON, RF_CHANGE_BY_PS, false); + spin_unlock_irqrestore(&rtlpriv->locks.lps_lock, flag); +} + +void rtl_swlps_rfon_wq_callback(void *data) +{ + struct rtl_works *rtlworks = + container_of_dwork_rtl(data, struct rtl_works, ps_rfon_wq); + struct ieee80211_hw *hw = rtlworks->hw; + + rtl_swlps_rf_awake(hw); +} + +void rtl_swlps_rf_sleep(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + unsigned long flag; + u8 sleep_intv; + + if (!rtlpriv->psc.sw_ps_enabled) + return; + + if ((rtlpriv->sec.being_setkey) || + (mac->opmode == NL80211_IFTYPE_ADHOC)) + return; + + /*sleep after linked 10s, to let DHCP and 4-way handshake ok enough!! */ + if ((mac->link_state != MAC80211_LINKED) || (mac->cnt_after_linked < 5)) + return; + + if (rtlpriv->link_info.b_busytraffic) + return; + + spin_lock(&rtlpriv->locks.rf_ps_lock); + if (rtlpriv->psc.rfchange_inprogress) { + spin_unlock(&rtlpriv->locks.rf_ps_lock); + return; + } + spin_unlock(&rtlpriv->locks.rf_ps_lock); + + spin_lock_irqsave(&rtlpriv->locks.lps_lock, flag); + rtl_ps_set_rf_state(hw, ERFSLEEP, RF_CHANGE_BY_PS,false); + spin_unlock_irqrestore(&rtlpriv->locks.lps_lock, flag); + + if (ppsc->reg_rfps_level & RT_RF_OFF_LEVL_ASPM && + !RT_IN_PS_LEVEL(ppsc, RT_PS_LEVEL_ASPM)) { + rtlpriv->intf_ops->enable_aspm(hw); + RT_SET_PS_LEVEL(ppsc, RT_PS_LEVEL_ASPM); + } + + /* here is power save alg, when this beacon is DTIM + * we will set sleep time to dtim_period * n; + * when this beacon is not DTIM, we will set sleep + * time to sleep_intv = rtlpriv->psc.dtim_counter or + * MAX_SW_LPS_SLEEP_INTV(default set to 5) */ + +/**/ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35)) +/**/ + if (rtlpriv->psc.dtim_counter == 0) { + if (hw->conf.ps_dtim_period == 1) + sleep_intv = hw->conf.ps_dtim_period * 2; + else + sleep_intv = hw->conf.ps_dtim_period; + } else { + sleep_intv = rtlpriv->psc.dtim_counter; + } +/**/ +#else + if (rtlpriv->psc.dtim_counter == 0) { + if (mac->vif->bss_conf.dtim_period == 1) + sleep_intv = mac->vif->bss_conf.dtim_period * 2; + else + sleep_intv = mac->vif->bss_conf.dtim_period; + } else { + sleep_intv = rtlpriv->psc.dtim_counter; + } +#endif +/**/ + + if (sleep_intv > MAX_SW_LPS_SLEEP_INTV) + sleep_intv = MAX_SW_LPS_SLEEP_INTV; + + /* this print should always be dtim_conter = 0 & + * sleep = dtim_period, that meaons, we should + * awake before every dtim */ + RT_TRACE(COMP_POWER, DBG_DMESG, + ("dtim_counter:%x will sleep :%d beacon_intv\n", + rtlpriv->psc.dtim_counter, sleep_intv)); + + /* we tested that 40ms is enough for sw & hw sw delay */ + queue_delayed_work(rtlpriv->works.rtl_wq, &rtlpriv->works.ps_rfon_wq, + MSECS(sleep_intv * mac->vif->bss_conf.beacon_int - 40)); +} + + +void rtl_swlps_wq_callback(void *data) +{ + struct rtl_works *rtlworks = + container_of_dwork_rtl(data, struct rtl_works, ps_work); + struct ieee80211_hw *hw = rtlworks->hw; + struct rtl_priv *rtlpriv = rtl_priv(hw); + bool ps = false; + + ps = (hw->conf.flags & IEEE80211_CONF_PS); + + /* we can sleep after ps null send ok */ + if (rtlpriv->psc.state_inap) { + rtl_swlps_rf_sleep(hw); + + if (rtlpriv->psc.state && !ps) { + rtlpriv->psc.sleep_ms = + jiffies_to_msecs(jiffies - + rtlpriv->psc.last_action); + } + + if (ps) + rtlpriv->psc.last_slept = jiffies; + + rtlpriv->psc.last_action = jiffies; + rtlpriv->psc.state = ps; + } +} + + +void rtl_p2p_noa_ie(struct ieee80211_hw *hw, void *data, unsigned int len) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct ieee80211_mgmt *mgmt = (void *)data; + struct rtl_p2p_ps_info *p2pinfo = &(rtlpriv->psc.p2p_ps_info); + u8 *pos, *end, *ie; + u16 noa_len; + static u8 p2p_oui_ie_type[4] = {0x50, 0x6f, 0x9a, 0x09}; + u8 noa_num, index,i, noa_index = 0; + bool find_p2p_ie = false , find_p2p_ps_ie = false; + pos = (u8 *)mgmt->u.beacon.variable; + end = data + len; + ie = NULL; + + while (pos + 1 < end) { + + if (pos + 2 + pos[1] > end) + return; + + if (pos[0] == 221 && pos[1] > 4) { + if (memcmp(&pos[2], p2p_oui_ie_type, 4) == 0) { + ie = pos + 2+4; + break; + } + } + pos += 2 + pos[1]; + } + + if (ie == NULL) + return; + find_p2p_ie = true; + /*to find noa ie*/ + while (ie + 1 < end) { + noa_len = READEF2BYTE(&ie[1]); + if (ie + 3 + ie[1] > end) + return; + + if (ie[0] == 12) { + find_p2p_ps_ie = true; + if ( (noa_len - 2) % 13 != 0){ + RT_TRACE(COMP_INIT, DBG_LOUD, + ("P2P notice of absence: " + "invalid length.%d\n",noa_len)); + return; + } else { + noa_num = (noa_len - 2) / 13; + } + noa_index = ie[3]; + if (rtlpriv->psc.p2p_ps_info.p2p_ps_mode == P2P_PS_NONE + || noa_index != p2pinfo->noa_index) { + RT_TRACE(COMP_FW, DBG_LOUD, + ("update NOA ie.\n")); + p2pinfo->noa_index = noa_index; + p2pinfo->opp_ps= (ie[4] >> 7); + p2pinfo->ctwindow = ie[4] & 0x7F; + p2pinfo->noa_num = noa_num; + index = 5; + for (i = 0; i< noa_num; i++){ + p2pinfo->noa_count_type[i] = + READEF1BYTE(ie+index); + index += 1; + p2pinfo->noa_duration[i] = + READEF4BYTE(ie+index); + index += 4; + p2pinfo->noa_interval[i] = + READEF4BYTE(ie+index); + index += 4; + p2pinfo->noa_start_time[i] = + READEF4BYTE(ie+index); + index += 4; + } + + if (p2pinfo->opp_ps == 1) { + p2pinfo->p2p_ps_mode = P2P_PS_CTWINDOW; + /* Driver should wait LPS + * entering CTWindow*/ + if (rtlpriv->psc.b_fw_current_inpsmode){ + rtl_p2p_ps_cmd(hw, + P2P_PS_ENABLE); + } + } else if (p2pinfo->noa_num > 0) { + p2pinfo->p2p_ps_mode = P2P_PS_NOA; + rtl_p2p_ps_cmd(hw, P2P_PS_ENABLE); + } else if (p2pinfo->p2p_ps_mode > P2P_PS_NONE) { + rtl_p2p_ps_cmd(hw, P2P_PS_DISABLE); + } + } + + break; + } + ie += 3 + noa_len; + } + + if (find_p2p_ie == true) { + if ((p2pinfo->p2p_ps_mode > P2P_PS_NONE) && + (find_p2p_ps_ie == false)) + rtl_p2p_ps_cmd(hw, P2P_PS_DISABLE); + } +} + +void rtl_p2p_action_ie(struct ieee80211_hw *hw, void *data, unsigned int len) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct ieee80211_mgmt *mgmt = (void *)data; + struct rtl_p2p_ps_info *p2pinfo = &(rtlpriv->psc.p2p_ps_info); + bool find_p2p_ie = false , find_p2p_ps_ie = false; + u8 noa_num, index,i, noa_index = 0; + u8 *pos, *end, *ie; + u16 noa_len; + static u8 p2p_oui_ie_type[4] = {0x50, 0x6f, 0x9a, 0x09}; + + pos = (u8 *) &mgmt->u.action.category; + end = data + len; + ie = NULL; + + if (pos[0] == 0x7f ) { + if (memcmp(&pos[1], p2p_oui_ie_type, 4) == 0) { + ie = pos + 3+4; + } + } + + if (ie == NULL) + return; + find_p2p_ie = true; + + RT_TRACE(COMP_FW, DBG_LOUD, ("action frame find P2P IE.\n")); + /*to find noa ie*/ + while (ie + 1 < end) { + noa_len = READEF2BYTE(&ie[1]); + if (ie + 3 + ie[1] > end) + return; + + if (ie[0] == 12) { + RT_TRACE(COMP_FW, DBG_LOUD, ("find NOA IE.\n")); + RT_PRINT_DATA(rtlpriv, COMP_FW, DBG_LOUD, ("noa ie "), + ie, noa_len); + find_p2p_ps_ie = true; + if ( (noa_len - 2) % 13 != 0){ + RT_TRACE(COMP_FW, DBG_LOUD, + ("P2P notice of absence: " + "invalid length.%d\n",noa_len)); + return; + } else { + noa_num = (noa_len - 2) / 13; + } + noa_index = ie[3]; + if (rtlpriv->psc.p2p_ps_info.p2p_ps_mode == P2P_PS_NONE + || noa_index != p2pinfo->noa_index) { + p2pinfo->noa_index = noa_index; + p2pinfo->opp_ps= (ie[4] >> 7); + p2pinfo->ctwindow = ie[4] & 0x7F; + p2pinfo->noa_num = noa_num; + index = 5; + for (i = 0; i< noa_num; i++){ + p2pinfo->noa_count_type[i] = + READEF1BYTE(ie+index); + index += 1; + p2pinfo->noa_duration[i] = + READEF4BYTE(ie+index); + index += 4; + p2pinfo->noa_interval[i] = + READEF4BYTE(ie+index); + index += 4; + p2pinfo->noa_start_time[i] = + READEF4BYTE(ie+index); + index += 4; + } + + if (p2pinfo->opp_ps == 1) { + p2pinfo->p2p_ps_mode = P2P_PS_CTWINDOW; + /* Driver should wait LPS + * entering CTWindow */ + if (rtlpriv->psc.b_fw_current_inpsmode){ + rtl_p2p_ps_cmd(hw, + P2P_PS_ENABLE); + } + } else if (p2pinfo->noa_num > 0) { + p2pinfo->p2p_ps_mode = P2P_PS_NOA; + rtl_p2p_ps_cmd(hw, P2P_PS_ENABLE); + } else if (p2pinfo->p2p_ps_mode > P2P_PS_NONE) { + rtl_p2p_ps_cmd(hw, P2P_PS_DISABLE); + } + } + + break; + } + ie += 3 + noa_len; + } + + +} + + +void rtl_p2p_ps_cmd(struct ieee80211_hw *hw,u8 p2p_ps_state) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *rtlps = rtl_psc(rtl_priv(hw)); + struct rtl_p2p_ps_info *p2pinfo = &(rtlpriv->psc.p2p_ps_info); + + RT_TRACE(COMP_FW, DBG_LOUD, (" p2p state %x\n",p2p_ps_state)); + switch (p2p_ps_state) { + case P2P_PS_DISABLE: + p2pinfo->p2p_ps_state = p2p_ps_state; + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_H2C_FW_P2P_PS_OFFLOAD, + (u8 *)(&p2p_ps_state)); + + p2pinfo->noa_index = 0; + p2pinfo->ctwindow = 0; + p2pinfo->opp_ps = 0; + p2pinfo->noa_num = 0; + p2pinfo->p2p_ps_mode = P2P_PS_NONE; + if (rtlps->b_fw_current_inpsmode == true) { + if (rtlps->smart_ps == 0) { + rtlps->smart_ps = 2; + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_H2C_FW_PWRMODE, + (u8 *)(&rtlps->pwr_mode)); + } + + } + break; + case P2P_PS_ENABLE: + if (p2pinfo->p2p_ps_mode > P2P_PS_NONE) { + p2pinfo->p2p_ps_state = p2p_ps_state; + + if (p2pinfo->ctwindow > 0) { + if (rtlps->smart_ps != 0){ + rtlps->smart_ps = 0; + rtlpriv->cfg->ops->set_hw_reg( + hw, HW_VAR_H2C_FW_PWRMODE, + (u8 *)(&rtlps->pwr_mode)); + } + } + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_H2C_FW_P2P_PS_OFFLOAD, + (u8 *)(&p2p_ps_state)); + + } + break; + case P2P_PS_SCAN: + case P2P_PS_SCAN_DONE: + case P2P_PS_ALLSTASLEEP: + if (p2pinfo->p2p_ps_mode > P2P_PS_NONE) { + p2pinfo->p2p_ps_state = p2p_ps_state; + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_H2C_FW_P2P_PS_OFFLOAD, + (u8 *)(&p2p_ps_state)); + } + break; + default: + break; + + } + RT_TRACE(COMP_FW, DBG_LOUD, (" ctwindow %x oppps %x \n", + p2pinfo->ctwindow,p2pinfo->opp_ps)); + RT_TRACE(COMP_FW, DBG_LOUD, ("count %x duration %x index %x interval %x" + " start time %x noa num %x\n", + p2pinfo->noa_count_type[0], + p2pinfo->noa_duration[0], + p2pinfo->noa_index, + p2pinfo->noa_interval[0], + p2pinfo->noa_start_time[0], + p2pinfo->noa_num)); + RT_TRACE(COMP_FW, DBG_LOUD, ("end\n")); +} + +void rtl_p2p_info(struct ieee80211_hw *hw, void *data, unsigned int len) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct ieee80211_hdr *hdr = (void *) data; + + if (!mac->p2p) + return; + if (mac->link_state != MAC80211_LINKED) + return; + /* min. beacon length + FCS_LEN */ + if (len <= 40 + FCS_LEN) + return; + + /* and only beacons from the associated BSSID, please */ + if (ether_addr_equal(hdr->addr3, rtlpriv->mac80211.bssid)) + return; + + /* check if this really is a beacon */ + if (!(ieee80211_is_beacon(hdr->frame_control) || + ieee80211_is_probe_resp(hdr->frame_control) || + ieee80211_is_action(hdr->frame_control))) + return; + + if (ieee80211_is_action(hdr->frame_control)) { + rtl_p2p_action_ie(hw,data,len - FCS_LEN); + } else { + rtl_p2p_noa_ie(hw,data,len - FCS_LEN); + } + +} --- linux-3.13.0.orig/drivers/staging/rtl8821ae/ps.h +++ linux-3.13.0/drivers/staging/rtl8821ae/ps.h @@ -0,0 +1,55 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __REALTEK_RTL_PCI_PS_H__ +#define __REALTEK_RTL_PCI_PS_H__ + +#define MAX_SW_LPS_SLEEP_INTV 5 + +bool rtl_ps_set_rf_state(struct ieee80211_hw *hw, + enum rf_pwrstate state_toset, u32 changesource, + bool protect_or_not); +bool rtl_ps_enable_nic(struct ieee80211_hw *hw); +bool rtl_ps_disable_nic(struct ieee80211_hw *hw); +void rtl_ips_nic_off(struct ieee80211_hw *hw); +void rtl_ips_nic_on(struct ieee80211_hw *hw); +void rtl_ips_nic_off_wq_callback(void *data); +void rtl_lps_enter(struct ieee80211_hw *hw); +void rtl_lps_leave(struct ieee80211_hw *hw); + +void rtl_lps_set_psmode(struct ieee80211_hw *hw, u8 rt_psmode); + +void rtl_swlps_beacon(struct ieee80211_hw *hw, void *data, unsigned int len); +void rtl_swlps_wq_callback(void *data); +void rtl_swlps_rfon_wq_callback(void *data); +void rtl_swlps_rf_awake(struct ieee80211_hw *hw); +void rtl_swlps_rf_sleep(struct ieee80211_hw *hw); +void rtl_p2p_ps_cmd(struct ieee80211_hw *hw,u8 p2p_ps_state); +void rtl_p2p_info(struct ieee80211_hw *hw, void *data, unsigned int len); +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rc.c +++ linux-3.13.0/drivers/staging/rtl8821ae/rc.c @@ -0,0 +1,309 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "wifi.h" +#include "base.h" +#include "rc.h" + +/* + *Finds the highest rate index we can use + *if skb is special data like DHCP/EAPOL, we set should + *it to lowest rate CCK_1M, otherwise we set rate to + *highest rate based on wireless mode used for iwconfig + *show Tx rate. + */ +static u8 _rtl_rc_get_highest_rix(struct rtl_priv *rtlpriv, + struct ieee80211_sta *sta, + struct sk_buff *skb, bool not_data) +{ + struct rtl_mac *rtlmac = rtl_mac(rtlpriv); + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_sta_info *sta_entry = NULL; + u8 wireless_mode = 0; + + /* + *this rate is no use for true rate, firmware + *will control rate at all it just used for + *1.show in iwconfig in B/G mode + *2.in rtl_get_tcb_desc when we check rate is + * 1M we will not use FW rate but user rate. + */ + if (rtlmac->opmode == NL80211_IFTYPE_AP || + rtlmac->opmode == NL80211_IFTYPE_ADHOC || + rtlmac->opmode == NL80211_IFTYPE_MESH_POINT) { + if (sta) { + sta_entry = (struct rtl_sta_info *) sta->drv_priv; + wireless_mode = sta_entry->wireless_mode; + } else { + return 0; + } + } else { + wireless_mode = rtlmac->mode; + } + + if (rtl_is_special_data(rtlpriv->mac80211.hw, skb, true) || not_data) { + return 0; + } else { + if (rtlhal->current_bandtype == BAND_ON_2_4G) { + if (wireless_mode == WIRELESS_MODE_B) { + return B_MODE_MAX_RIX; + } else if (wireless_mode == WIRELESS_MODE_G) { + return G_MODE_MAX_RIX; + } else { + if (get_rf_type(rtlphy) != RF_2T2R) + return N_MODE_MCS7_RIX; + else + return N_MODE_MCS15_RIX; + } + } else { + if (wireless_mode == WIRELESS_MODE_A) { + return A_MODE_MAX_RIX; + } else { + if (get_rf_type(rtlphy) != RF_2T2R) + return N_MODE_MCS7_RIX; + else + return N_MODE_MCS15_RIX; + } + } + } +} + +static void _rtl_rc_rate_set_series(struct rtl_priv *rtlpriv, + struct ieee80211_sta *sta, + struct ieee80211_tx_rate *rate, + struct ieee80211_tx_rate_control *txrc, + u8 tries, char rix, int rtsctsenable, + bool not_data) +{ + struct rtl_mac *mac = rtl_mac(rtlpriv); + u8 sgi_20 = 0, sgi_40 = 0; + + if (sta) { + sgi_20 = sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_20; + sgi_40 = sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_40; + } + rate->count = tries; + rate->idx = rix >= 0x00 ? rix : 0x00; + + if (!not_data) { + if (txrc->short_preamble) + rate->flags |= IEEE80211_TX_RC_USE_SHORT_PREAMBLE; + if (mac->opmode == NL80211_IFTYPE_AP || + mac->opmode == NL80211_IFTYPE_ADHOC) { + if (sta && (sta->ht_cap.cap & + IEEE80211_HT_CAP_SUP_WIDTH_20_40)) + rate->flags |= IEEE80211_TX_RC_40_MHZ_WIDTH; + } else { + if (mac->bw_40) + rate->flags |= IEEE80211_TX_RC_40_MHZ_WIDTH; + } + if (sgi_20 || sgi_40) + rate->flags |= IEEE80211_TX_RC_SHORT_GI; + if (sta && sta->ht_cap.ht_supported) + rate->flags |= IEEE80211_TX_RC_MCS; + } +} + +static void rtl_get_rate(void *ppriv, struct ieee80211_sta *sta, + void *priv_sta, + struct ieee80211_tx_rate_control *txrc) +{ + struct rtl_priv *rtlpriv = ppriv; + struct sk_buff *skb = txrc->skb; + struct ieee80211_tx_info *tx_info = IEEE80211_SKB_CB(skb); + struct ieee80211_tx_rate *rates = tx_info->control.rates; + __le16 fc = rtl_get_fc(skb); + u8 try_per_rate, i, rix; + bool not_data = !ieee80211_is_data(fc); + + if (rate_control_send_low(sta, priv_sta, txrc)) + return; + + rix = _rtl_rc_get_highest_rix(rtlpriv, sta, skb, not_data); + try_per_rate = 1; + _rtl_rc_rate_set_series(rtlpriv, sta, &rates[0], txrc, + try_per_rate, rix, 1, not_data); + + if (!not_data) { + for (i = 1; i < 4; i++) + _rtl_rc_rate_set_series(rtlpriv, sta, &rates[i], + txrc, i, (rix - i), 1, + not_data); + } +} + +static bool _rtl_tx_aggr_check(struct rtl_priv *rtlpriv, + struct rtl_sta_info *sta_entry, u16 tid) +{ + struct rtl_mac *mac = rtl_mac(rtlpriv); + + if (mac->act_scanning) + return false; + + if (mac->opmode == NL80211_IFTYPE_STATION && + mac->cnt_after_linked < 3) + return false; + + if (sta_entry->tids[tid].agg.agg_state == RTL_AGG_STOP) + return true; + + return false; +} + +/*mac80211 Rate Control callbacks*/ +static void rtl_tx_status(void *ppriv, + struct ieee80211_supported_band *sband, + struct ieee80211_sta *sta, void *priv_sta, + struct sk_buff *skb) +{ + struct rtl_priv *rtlpriv = ppriv; + struct rtl_mac *mac = rtl_mac(rtlpriv); + struct ieee80211_hdr *hdr = rtl_get_hdr(skb); + __le16 fc = rtl_get_fc(skb); + struct rtl_sta_info *sta_entry; + + if (!priv_sta || !ieee80211_is_data(fc)) + return; + + if (rtl_is_special_data(mac->hw, skb, true)) + return; + + if (is_multicast_ether_addr(ieee80211_get_DA(hdr)) || + is_broadcast_ether_addr(ieee80211_get_DA(hdr))) + return; + + if (sta) { + /* Check if aggregation has to be enabled for this tid */ + sta_entry = (struct rtl_sta_info *) sta->drv_priv; + if ((sta->ht_cap.ht_supported == true) && + !(skb->protocol == cpu_to_be16(ETH_P_PAE))) { + if (ieee80211_is_data_qos(fc)) { + u8 tid = rtl_get_tid(skb); + if (_rtl_tx_aggr_check(rtlpriv, sta_entry, + tid)) { + sta_entry->tids[tid].agg.agg_state = + RTL_AGG_PROGRESS; + /**/ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38)) + /**/ + ieee80211_start_tx_ba_session(sta, tid, + 5000); + /**/ +#else + ieee80211_start_tx_ba_session(sta, tid); +#endif + /**/ + } + } + } + } +} + +static void rtl_rate_init(void *ppriv, + struct ieee80211_supported_band *sband, + struct cfg80211_chan_def *chandef, + struct ieee80211_sta *sta, void *priv_sta) +{ +} +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,5,0)) +static void rtl_rate_update(void *ppriv, + struct ieee80211_supported_band *sband, + struct ieee80211_sta *sta, void *priv_sta, + u32 changed, + enum nl80211_channel_type oper_chan_type) +{ +} +#else +static void rtl_rate_update(void *ppriv, + struct ieee80211_supported_band *sband, + struct cfg80211_chan_def *chandef, + struct ieee80211_sta *sta, void *priv_sta, + u32 changed) +{ +} +#endif +static void *rtl_rate_alloc(struct ieee80211_hw *hw, struct dentry *debugfsdir) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + return rtlpriv; +} + +static void rtl_rate_free(void *rtlpriv) +{ + return; +} + +static void *rtl_rate_alloc_sta(void *ppriv, + struct ieee80211_sta *sta, gfp_t gfp) +{ + struct rtl_priv *rtlpriv = ppriv; + struct rtl_rate_priv *rate_priv; + + rate_priv = kzalloc(sizeof(struct rtl_rate_priv), gfp); + if (!rate_priv) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("Unable to allocate private rc structure\n")); + return NULL; + } + + rtlpriv->rate_priv = rate_priv; + + return rate_priv; +} + +static void rtl_rate_free_sta(void *rtlpriv, + struct ieee80211_sta *sta, void *priv_sta) +{ + struct rtl_rate_priv *rate_priv = priv_sta; + kfree(rate_priv); +} + +static struct rate_control_ops rtl_rate_ops = { + .module = NULL, + .name = "rtl_rc", + .alloc = rtl_rate_alloc, + .free = rtl_rate_free, + .alloc_sta = rtl_rate_alloc_sta, + .free_sta = rtl_rate_free_sta, + .rate_init = rtl_rate_init, + .rate_update = rtl_rate_update, + .tx_status = rtl_tx_status, + .get_rate = rtl_get_rate, +}; + +int rtl_rate_control_register(void) +{ + return ieee80211_rate_control_register(&rtl_rate_ops); +} + +void rtl_rate_control_unregister(void) +{ + ieee80211_rate_control_unregister(&rtl_rate_ops); +} --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rc.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rc.h @@ -0,0 +1,47 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL_RC_H__ +#define __RTL_RC_H__ + +#define B_MODE_MAX_RIX 3 +#define G_MODE_MAX_RIX 11 +#define A_MODE_MAX_RIX 7 + +/* in mac80211 mcs0-mcs15 is idx0-idx15*/ +#define N_MODE_MCS7_RIX 7 +#define N_MODE_MCS15_RIX 15 + +struct rtl_rate_priv { + u8 ht_cap; +}; + +int rtl_rate_control_register(void); +void rtl_rate_control_unregister(void); +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/regd.c +++ linux-3.13.0/drivers/staging/rtl8821ae/regd.c @@ -0,0 +1,503 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "wifi.h" +#include "regd.h" + +static struct country_code_to_enum_rd allCountries[] = { + {COUNTRY_CODE_FCC, "US"}, + {COUNTRY_CODE_IC, "US"}, + {COUNTRY_CODE_ETSI, "EC"}, + {COUNTRY_CODE_SPAIN, "EC"}, + {COUNTRY_CODE_FRANCE, "EC"}, + {COUNTRY_CODE_MKK, "JP"}, + {COUNTRY_CODE_MKK1, "JP"}, + {COUNTRY_CODE_ISRAEL, "EC"}, + {COUNTRY_CODE_TELEC, "JP"}, + {COUNTRY_CODE_MIC, "JP"}, + {COUNTRY_CODE_GLOBAL_DOMAIN, "JP"}, + {COUNTRY_CODE_WORLD_WIDE_13, "EC"}, + {COUNTRY_CODE_TELEC_NETGEAR, "EC"}, +}; + +/* + *Only these channels all allow active + *scan on all world regulatory domains + */ +#define RTL819x_2GHZ_CH01_11 \ + REG_RULE(2412-10, 2462+10, 40, 0, 20, 0) + +/* + *We enable active scan on these a case + *by case basis by regulatory domain + */ +#define RTL819x_2GHZ_CH12_13 \ + REG_RULE(2467-10, 2472+10, 40, 0, 20,\ + NL80211_RRF_PASSIVE_SCAN) + +#define RTL819x_2GHZ_CH14 \ + REG_RULE(2484-10, 2484+10, 40, 0, 20, \ + NL80211_RRF_PASSIVE_SCAN | \ + NL80211_RRF_NO_OFDM) + +/* 5G chan 36 - chan 64*/ +#define RTL819x_5GHZ_5150_5350 \ + REG_RULE(5150-10, 5350+10, 40, 0, 30, \ + NL80211_RRF_PASSIVE_SCAN | \ + NL80211_RRF_NO_IBSS) + +/* 5G chan 100 - chan 165*/ +#define RTL819x_5GHZ_5470_5850 \ + REG_RULE(5470-10, 5850+10, 40, 0, 30, \ + NL80211_RRF_PASSIVE_SCAN | \ + NL80211_RRF_NO_IBSS) + +/* 5G chan 149 - chan 165*/ +#define RTL819x_5GHZ_5725_5850 \ + REG_RULE(5725-10, 5850+10, 40, 0, 30, \ + NL80211_RRF_PASSIVE_SCAN | \ + NL80211_RRF_NO_IBSS) + +#define RTL819x_5GHZ_ALL \ + RTL819x_5GHZ_5150_5350, RTL819x_5GHZ_5470_5850 + +static const struct ieee80211_regdomain rtl_regdom_11 = { + .n_reg_rules = 1, + .alpha2 = "99", + .reg_rules = { + RTL819x_2GHZ_CH01_11, + } +}; + +static const struct ieee80211_regdomain rtl_regdom_12_13 = { + .n_reg_rules = 2, + .alpha2 = "99", + .reg_rules = { + RTL819x_2GHZ_CH01_11, + RTL819x_2GHZ_CH12_13, + } +}; + +static const struct ieee80211_regdomain rtl_regdom_no_midband = { + .n_reg_rules = 3, + .alpha2 = "99", + .reg_rules = { + RTL819x_2GHZ_CH01_11, + RTL819x_5GHZ_5150_5350, + RTL819x_5GHZ_5725_5850, + } +}; + +static const struct ieee80211_regdomain rtl_regdom_60_64 = { + .n_reg_rules = 3, + .alpha2 = "99", + .reg_rules = { + RTL819x_2GHZ_CH01_11, + RTL819x_2GHZ_CH12_13, + RTL819x_5GHZ_5725_5850, + } +}; + +static const struct ieee80211_regdomain rtl_regdom_14_60_64 = { + .n_reg_rules = 4, + .alpha2 = "99", + .reg_rules = { + RTL819x_2GHZ_CH01_11, + RTL819x_2GHZ_CH12_13, + RTL819x_2GHZ_CH14, + RTL819x_5GHZ_5725_5850, + } +}; + +static const struct ieee80211_regdomain rtl_regdom_14 = { + .n_reg_rules = 3, + .alpha2 = "99", + .reg_rules = { + RTL819x_2GHZ_CH01_11, + RTL819x_2GHZ_CH12_13, + RTL819x_2GHZ_CH14, + } +}; + +static bool _rtl_is_radar_freq(u16 center_freq) +{ + return (center_freq >= 5260 && center_freq <= 5700); +} + +static void _rtl_reg_apply_beaconing_flags(struct wiphy *wiphy, + enum nl80211_reg_initiator initiator) +{ + enum ieee80211_band band; + struct ieee80211_supported_band *sband; + const struct ieee80211_reg_rule *reg_rule; + struct ieee80211_channel *ch; + unsigned int i; +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,9,0)) + u32 bandwidth = 0; + int r; +#endif + + for (band = 0; band < IEEE80211_NUM_BANDS; band++) { + + if (!wiphy->bands[band]) + continue; + + sband = wiphy->bands[band]; + + for (i = 0; i < sband->n_channels; i++) { + ch = &sband->channels[i]; + if (_rtl_is_radar_freq(ch->center_freq) || + (ch->flags & IEEE80211_CHAN_RADAR)) + continue; + if (initiator == NL80211_REGDOM_SET_BY_COUNTRY_IE) { +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0)) + reg_rule = freq_reg_info(wiphy, ch->center_freq); + if (IS_ERR(reg_rule)) + continue; +#else + r = freq_reg_info(wiphy, ch->center_freq, + bandwidth, ®_rule); + if (r) + continue; +#endif + + /* + *If 11d had a rule for this channel ensure + *we enable adhoc/beaconing if it allows us to + *use it. Note that we would have disabled it + *by applying our static world regdomain by + *default during init, prior to calling our + *regulatory_hint(). + */ + + if (!(reg_rule->flags & NL80211_RRF_NO_IBSS)) + ch->flags &= ~IEEE80211_CHAN_NO_IBSS; + if (!(reg_rule->flags & + NL80211_RRF_PASSIVE_SCAN)) + ch->flags &= + ~IEEE80211_CHAN_PASSIVE_SCAN; + } else { + if (ch->beacon_found) + ch->flags &= ~(IEEE80211_CHAN_NO_IBSS | + IEEE80211_CHAN_PASSIVE_SCAN); + } + } + } +} + +/* Allows active scan scan on Ch 12 and 13 */ +static void _rtl_reg_apply_active_scan_flags(struct wiphy *wiphy, + enum nl80211_reg_initiator + initiator) +{ + struct ieee80211_supported_band *sband; + struct ieee80211_channel *ch; + const struct ieee80211_reg_rule *reg_rule; +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,9,0)) + u32 bandwidth = 0; + int r; +#endif + + if (!wiphy->bands[IEEE80211_BAND_2GHZ]) + return; + sband = wiphy->bands[IEEE80211_BAND_2GHZ]; + + /* + *If no country IE has been received always enable active scan + *on these channels. This is only done for specific regulatory SKUs + */ + if (initiator != NL80211_REGDOM_SET_BY_COUNTRY_IE) { + ch = &sband->channels[11]; /* CH 12 */ + if (ch->flags & IEEE80211_CHAN_PASSIVE_SCAN) + ch->flags &= ~IEEE80211_CHAN_PASSIVE_SCAN; + ch = &sband->channels[12]; /* CH 13 */ + if (ch->flags & IEEE80211_CHAN_PASSIVE_SCAN) + ch->flags &= ~IEEE80211_CHAN_PASSIVE_SCAN; + return; + } + + /* + *If a country IE has been recieved check its rule for this + *channel first before enabling active scan. The passive scan + *would have been enforced by the initial processing of our + *custom regulatory domain. + */ + + ch = &sband->channels[11]; /* CH 12 */ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0)) + reg_rule = freq_reg_info(wiphy, ch->center_freq); + if (!IS_ERR(reg_rule)) { +#else + r = freq_reg_info(wiphy, ch->center_freq, bandwidth, ®_rule); + if (!r) { +#endif + if (!(reg_rule->flags & NL80211_RRF_PASSIVE_SCAN)) + if (ch->flags & IEEE80211_CHAN_PASSIVE_SCAN) + ch->flags &= ~IEEE80211_CHAN_PASSIVE_SCAN; + } + + ch = &sband->channels[12]; /* CH 13 */ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0)) + reg_rule = freq_reg_info(wiphy, ch->center_freq); + if (!IS_ERR(reg_rule)) { +#else + r = freq_reg_info(wiphy, ch->center_freq, bandwidth, ®_rule); + if (!r) { +#endif + if (!(reg_rule->flags & NL80211_RRF_PASSIVE_SCAN)) + if (ch->flags & IEEE80211_CHAN_PASSIVE_SCAN) + ch->flags &= ~IEEE80211_CHAN_PASSIVE_SCAN; + } +} + +/* + *Always apply Radar/DFS rules on + *freq range 5260 MHz - 5700 MHz + */ +static void _rtl_reg_apply_radar_flags(struct wiphy *wiphy) +{ + struct ieee80211_supported_band *sband; + struct ieee80211_channel *ch; + unsigned int i; + + if (!wiphy->bands[IEEE80211_BAND_5GHZ]) + return; + + sband = wiphy->bands[IEEE80211_BAND_5GHZ]; + + for (i = 0; i < sband->n_channels; i++) { + ch = &sband->channels[i]; + if (!_rtl_is_radar_freq(ch->center_freq)) + continue; + + /* + *We always enable radar detection/DFS on this + *frequency range. Additionally we also apply on + *this frequency range: + *- If STA mode does not yet have DFS supports disable + * active scanning + *- If adhoc mode does not support DFS yet then disable + * adhoc in the frequency. + *- If AP mode does not yet support radar detection/DFS + *do not allow AP mode + */ + if (!(ch->flags & IEEE80211_CHAN_DISABLED)) + ch->flags |= IEEE80211_CHAN_RADAR | + IEEE80211_CHAN_NO_IBSS | + IEEE80211_CHAN_PASSIVE_SCAN; + } +} + +static void _rtl_reg_apply_world_flags(struct wiphy *wiphy, + enum nl80211_reg_initiator initiator, + struct rtl_regulatory *reg) +{ + _rtl_reg_apply_beaconing_flags(wiphy, initiator); + _rtl_reg_apply_active_scan_flags(wiphy, initiator); + return; +} + +static void _rtl_dump_channel_map(struct wiphy *wiphy) +{ + enum ieee80211_band band; + struct ieee80211_supported_band *sband; + struct ieee80211_channel *ch; + unsigned int i; + + for (band = 0; band < IEEE80211_NUM_BANDS; band++) { + if (!wiphy->bands[band]) + continue; + sband = wiphy->bands[band]; + for (i = 0; i < sband->n_channels; i++) + ch = &sband->channels[i]; + } +} + +static int _rtl_reg_notifier_apply(struct wiphy *wiphy, + struct regulatory_request *request, + struct rtl_regulatory *reg) +{ + /* We always apply this */ + _rtl_reg_apply_radar_flags(wiphy); + + switch (request->initiator) { + case NL80211_REGDOM_SET_BY_DRIVER: + case NL80211_REGDOM_SET_BY_CORE: + case NL80211_REGDOM_SET_BY_USER: + break; + case NL80211_REGDOM_SET_BY_COUNTRY_IE: + _rtl_reg_apply_world_flags(wiphy, request->initiator, reg); + break; + } + + _rtl_dump_channel_map(wiphy); + + return 0; +} + +static const struct ieee80211_regdomain *_rtl_regdomain_select( + struct rtl_regulatory *reg) +{ + switch (reg->country_code) { + case COUNTRY_CODE_FCC: + return &rtl_regdom_no_midband; + case COUNTRY_CODE_IC: + return &rtl_regdom_11; + case COUNTRY_CODE_ETSI: + case COUNTRY_CODE_TELEC_NETGEAR: + return &rtl_regdom_60_64; + case COUNTRY_CODE_SPAIN: + case COUNTRY_CODE_FRANCE: + case COUNTRY_CODE_ISRAEL: + case COUNTRY_CODE_WORLD_WIDE_13: + return &rtl_regdom_12_13; + case COUNTRY_CODE_MKK: + case COUNTRY_CODE_MKK1: + case COUNTRY_CODE_TELEC: + case COUNTRY_CODE_MIC: + return &rtl_regdom_14_60_64; + case COUNTRY_CODE_GLOBAL_DOMAIN: + return &rtl_regdom_14; + default: + return &rtl_regdom_no_midband; + } +} + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0)) +static int _rtl_regd_init_wiphy(struct rtl_regulatory *reg, + struct wiphy *wiphy, + void (*reg_notifier) (struct wiphy * wiphy, + struct regulatory_request * + request)) +#else +static int _rtl_regd_init_wiphy(struct rtl_regulatory *reg, + struct wiphy *wiphy, + int (*reg_notifier) (struct wiphy * wiphy, + struct regulatory_request * + request)) +#endif +{ + const struct ieee80211_regdomain *regd; + + wiphy->reg_notifier = reg_notifier; + + wiphy->flags |= WIPHY_FLAG_CUSTOM_REGULATORY; + wiphy->flags &= ~WIPHY_FLAG_STRICT_REGULATORY; + wiphy->flags &= ~WIPHY_FLAG_DISABLE_BEACON_HINTS; + + regd = _rtl_regdomain_select(reg); + wiphy_apply_custom_regulatory(wiphy, regd); + _rtl_reg_apply_radar_flags(wiphy); + _rtl_reg_apply_world_flags(wiphy, NL80211_REGDOM_SET_BY_DRIVER, reg); + return 0; +} + +static struct country_code_to_enum_rd *_rtl_regd_find_country(u16 countrycode) +{ + int i; + + for (i = 0; i < ARRAY_SIZE(allCountries); i++) { + if (allCountries[i].countrycode == countrycode) + return &allCountries[i]; + } + return NULL; +} + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0)) +int rtl_regd_init(struct ieee80211_hw *hw, + void (*reg_notifier) (struct wiphy *wiphy, + struct regulatory_request *request)) +#else +int rtl_regd_init(struct ieee80211_hw *hw, + int (*reg_notifier) (struct wiphy *wiphy, + struct regulatory_request *request)) +#endif +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct wiphy *wiphy = hw->wiphy; + struct country_code_to_enum_rd *country = NULL; + + if (wiphy == NULL || &rtlpriv->regd == NULL) + return -EINVAL; + + /* init country_code from efuse channel plan */ + rtlpriv->regd.country_code = rtlpriv->efuse.channel_plan; + + RT_TRACE(COMP_REGD, DBG_TRACE, + (KERN_DEBUG "rtl: EEPROM regdomain: 0x%0x\n", + rtlpriv->regd.country_code)); + + if (rtlpriv->regd.country_code >= COUNTRY_CODE_MAX) { + RT_TRACE(COMP_REGD, DBG_DMESG, + (KERN_DEBUG "rtl: EEPROM indicates invalid contry code" + "world wide 13 should be used\n")); + + rtlpriv->regd.country_code = COUNTRY_CODE_WORLD_WIDE_13; + } + + country = _rtl_regd_find_country(rtlpriv->regd.country_code); + + if (country) { + rtlpriv->regd.alpha2[0] = country->iso_name[0]; + rtlpriv->regd.alpha2[1] = country->iso_name[1]; + } else { + rtlpriv->regd.alpha2[0] = '0'; + rtlpriv->regd.alpha2[1] = '0'; + } + + RT_TRACE(COMP_REGD, DBG_TRACE, + (KERN_DEBUG "rtl: Country alpha2 being used: %c%c\n", + rtlpriv->regd.alpha2[0], rtlpriv->regd.alpha2[1])); + + _rtl_regd_init_wiphy(&rtlpriv->regd, wiphy, reg_notifier); + + return 0; +} + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0)) +void rtl_reg_notifier(struct wiphy *wiphy, struct regulatory_request *request) +{ + struct ieee80211_hw *hw = wiphy_to_ieee80211_hw(wiphy); + struct rtl_priv *rtlpriv = rtl_priv(hw); + + RT_TRACE(COMP_REGD, DBG_LOUD, ("\n")); + + _rtl_reg_notifier_apply(wiphy, request, &rtlpriv->regd); +} +#else +int rtl_reg_notifier(struct wiphy *wiphy, struct regulatory_request *request) +{ + struct ieee80211_hw *hw = wiphy_to_ieee80211_hw(wiphy); + struct rtl_priv *rtlpriv = rtl_priv(hw); + + RT_TRACE(COMP_REGD, DBG_LOUD, ("\n")); + + return _rtl_reg_notifier_apply(wiphy, request, &rtlpriv->regd); +} +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/regd.h +++ linux-3.13.0/drivers/staging/rtl8821ae/regd.h @@ -0,0 +1,75 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL_REGD_H__ +#define __RTL_REGD_H__ + +#define IEEE80211_CHAN_NO_IBSS 1<<2 +#define IEEE80211_CHAN_PASSIVE_SCAN 1<<1 +#define WIPHY_FLAG_CUSTOM_REGULATORY BIT(0) +#define WIPHY_FLAG_STRICT_REGULATORY BIT(1) +#define WIPHY_FLAG_DISABLE_BEACON_HINTS BIT(2) + +struct country_code_to_enum_rd { + u16 countrycode; + const char *iso_name; +}; + +enum country_code_type_t { + COUNTRY_CODE_FCC = 0, + COUNTRY_CODE_IC = 1, + COUNTRY_CODE_ETSI = 2, + COUNTRY_CODE_SPAIN = 3, + COUNTRY_CODE_FRANCE = 4, + COUNTRY_CODE_MKK = 5, + COUNTRY_CODE_MKK1 = 6, + COUNTRY_CODE_ISRAEL = 7, + COUNTRY_CODE_TELEC = 8, + COUNTRY_CODE_MIC = 9, + COUNTRY_CODE_GLOBAL_DOMAIN = 10, + COUNTRY_CODE_WORLD_WIDE_13 = 11, + COUNTRY_CODE_TELEC_NETGEAR = 12, + + /*add new channel plan above this line */ + COUNTRY_CODE_MAX +}; + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0)) +int rtl_regd_init(struct ieee80211_hw *hw, + void (*reg_notifier) (struct wiphy *wiphy, + struct regulatory_request *request)); +void rtl_reg_notifier(struct wiphy *wiphy, struct regulatory_request *request); +#else +int rtl_regd_init(struct ieee80211_hw *hw, + int (*reg_notifier) (struct wiphy *wiphy, + struct regulatory_request *request)); +int rtl_reg_notifier(struct wiphy *wiphy, struct regulatory_request *request); +#endif + +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/btc.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/btc.h @@ -0,0 +1,87 @@ + +/****************************************************************************** + ** + ** Copyright(c) 2009-2010 Realtek Corporation. + ** + ** This program is free software; you can redistribute it and/or modify it + ** under the terms of version 2 of the GNU General Public License as + ** published by the Free Software Foundation. + ** + ** This program is distributed in the hope that it will be useful, but WITHOUT + ** ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + ** FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + ** more details. + ** + ** You should have received a copy of the GNU General Public License along with + ** this program; if not, write to the Free Software Foundation, Inc., + ** 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + ** + ** The full GNU General Public License is included in this distribution in the + ** file called LICENSE. + ** + ** Contact Information: + ** wlanfae + ** Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + ** Hsinchu 300, Taiwan. + ** Larry Finger + ** + ******************************************************************************/ + +#ifndef __RTL8821AE_BTC_H__ +#define __RTL8821AE_BTC_H__ + +#include "../wifi.h" +#include "hal_bt_coexist.h" + +struct bt_coexist_c2h_info { + u8 no_parse_c2h; + u8 has_c2h; +}; + +struct btdm_8821ae { + bool b_all_off; + bool b_agc_table_en; + bool b_adc_back_off_on; + bool b2_ant_hid_en; + bool b_low_penalty_rate_adaptive; + bool b_rf_rx_lpf_shrink; + bool b_reject_aggre_pkt; + bool b_tra_tdma_on; + u8 tra_tdma_nav; + u8 tra_tdma_ant; + bool b_tdma_on; + u8 tdma_ant; + u8 tdma_nav; + u8 tdma_dac_swing; + u8 fw_dac_swing_lvl; + bool b_ps_tdma_on; + u8 ps_tdma_byte[5]; + bool b_pta_on; + u32 val_0x6c0; + u32 val_0x6c8; + u32 val_0x6cc; + bool b_sw_dac_swing_on; + u32 sw_dac_swing_lvl; + u32 wlan_act_hi; + u32 wlan_act_lo; + u32 bt_retry_index; + bool b_dec_bt_pwr; + bool b_ignore_wlan_act; +}; + +struct bt_coexist_8821ae { + u32 high_priority_tx; + u32 high_priority_rx; + u32 low_priority_tx; + u32 low_priority_rx; + u8 c2h_bt_info; + bool b_c2h_bt_info_req_sent; + bool b_c2h_bt_inquiry_page; + u32 bt_inq_page_start_time; + u8 bt_retry_cnt; + u8 c2h_bt_info_original; + u8 bt_inquiry_page_cnt; + struct btdm_8821ae btdm; +}; + +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/def.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/def.h @@ -0,0 +1,442 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8821AE_DEF_H__ +#define __RTL8821AE_DEF_H__ + +/*--------------------------Define -------------------------------------------*/ +/* BIT 7 HT Rate*/ +/*TxHT = 0*/ +#define MGN_1M 0x02 +#define MGN_2M 0x04 +#define MGN_5_5M 0x0b +#define MGN_11M 0x16 + +#define MGN_6M 0x0c +#define MGN_9M 0x12 +#define MGN_12M 0x18 +#define MGN_18M 0x24 +#define MGN_24M 0x30 +#define MGN_36M 0x48 +#define MGN_48M 0x60 +#define MGN_54M 0x6c + +// TxHT = 1 +#define MGN_MCS0 0x80 +#define MGN_MCS1 0x81 +#define MGN_MCS2 0x82 +#define MGN_MCS3 0x83 +#define MGN_MCS4 0x84 +#define MGN_MCS5 0x85 +#define MGN_MCS6 0x86 +#define MGN_MCS7 0x87 +#define MGN_MCS8 0x88 +#define MGN_MCS9 0x89 +#define MGN_MCS10 0x8a +#define MGN_MCS11 0x8b +#define MGN_MCS12 0x8c +#define MGN_MCS13 0x8d +#define MGN_MCS14 0x8e +#define MGN_MCS15 0x8f +//VHT rate +#define MGN_VHT1SS_MCS0 0x90 +#define MGN_VHT1SS_MCS1 0x91 +#define MGN_VHT1SS_MCS2 0x92 +#define MGN_VHT1SS_MCS3 0x93 +#define MGN_VHT1SS_MCS4 0x94 +#define MGN_VHT1SS_MCS5 0x95 +#define MGN_VHT1SS_MCS6 0x96 +#define MGN_VHT1SS_MCS7 0x97 +#define MGN_VHT1SS_MCS8 0x98 +#define MGN_VHT1SS_MCS9 0x99 +#define MGN_VHT2SS_MCS0 0x9a +#define MGN_VHT2SS_MCS1 0x9b +#define MGN_VHT2SS_MCS2 0x9c +#define MGN_VHT2SS_MCS3 0x9d +#define MGN_VHT2SS_MCS4 0x9e +#define MGN_VHT2SS_MCS5 0x9f +#define MGN_VHT2SS_MCS6 0xa0 +#define MGN_VHT2SS_MCS7 0xa1 +#define MGN_VHT2SS_MCS8 0xa2 +#define MGN_VHT2SS_MCS9 0xa3 + +#define MGN_VHT3SS_MCS0 0xa4 +#define MGN_VHT3SS_MCS1 0xa5 +#define MGN_VHT3SS_MCS2 0xa6 +#define MGN_VHT3SS_MCS3 0xa7 +#define MGN_VHT3SS_MCS4 0xa8 +#define MGN_VHT3SS_MCS5 0xa9 +#define MGN_VHT3SS_MCS6 0xaa +#define MGN_VHT3SS_MCS7 0xab +#define MGN_VHT3SS_MCS8 0xac +#define MGN_VHT3SS_MCS9 0xad + +#define MGN_MCS0_SG 0xc0 +#define MGN_MCS1_SG 0xc1 +#define MGN_MCS2_SG 0xc2 +#define MGN_MCS3_SG 0xc3 +#define MGN_MCS4_SG 0xc4 +#define MGN_MCS5_SG 0xc5 +#define MGN_MCS6_SG 0xc6 +#define MGN_MCS7_SG 0xc7 +#define MGN_MCS8_SG 0xc8 +#define MGN_MCS9_SG 0xc9 +#define MGN_MCS10_SG 0xca +#define MGN_MCS11_SG 0xcb +#define MGN_MCS12_SG 0xcc +#define MGN_MCS13_SG 0xcd +#define MGN_MCS14_SG 0xce +#define MGN_MCS15_SG 0xcf + +#define MGN_UNKNOWN 0xff + + +/* 30 ms */ +#define WIFI_NAV_UPPER_US 30000 +#define HAL_92C_NAV_UPPER_UNIT 128 + +#define HAL_RETRY_LIMIT_INFRA 48 +#define HAL_RETRY_LIMIT_AP_ADHOC 7 + +#define RESET_DELAY_8185 20 + +#define RT_IBSS_INT_MASKS (IMR_BCNINT | IMR_TBDOK | IMR_TBDER) +#define RT_AC_INT_MASKS (IMR_VIDOK | IMR_VODOK | IMR_BEDOK|IMR_BKDOK) + +#define NUM_OF_FIRMWARE_QUEUE 10 +#define NUM_OF_PAGES_IN_FW 0x100 +#define NUM_OF_PAGE_IN_FW_QUEUE_BK 0x07 +#define NUM_OF_PAGE_IN_FW_QUEUE_BE 0x07 +#define NUM_OF_PAGE_IN_FW_QUEUE_VI 0x07 +#define NUM_OF_PAGE_IN_FW_QUEUE_VO 0x07 +#define NUM_OF_PAGE_IN_FW_QUEUE_HCCA 0x0 +#define NUM_OF_PAGE_IN_FW_QUEUE_CMD 0x0 +#define NUM_OF_PAGE_IN_FW_QUEUE_MGNT 0x02 +#define NUM_OF_PAGE_IN_FW_QUEUE_HIGH 0x02 +#define NUM_OF_PAGE_IN_FW_QUEUE_BCN 0x2 +#define NUM_OF_PAGE_IN_FW_QUEUE_PUB 0xA1 + +#define NUM_OF_PAGE_IN_FW_QUEUE_BK_DTM 0x026 +#define NUM_OF_PAGE_IN_FW_QUEUE_BE_DTM 0x048 +#define NUM_OF_PAGE_IN_FW_QUEUE_VI_DTM 0x048 +#define NUM_OF_PAGE_IN_FW_QUEUE_VO_DTM 0x026 +#define NUM_OF_PAGE_IN_FW_QUEUE_PUB_DTM 0x00 + +#define MAX_RX_DMA_BUFFER_SIZE 0x3E80 + + +#define MAX_LINES_HWCONFIG_TXT 1000 +#define MAX_BYTES_LINE_HWCONFIG_TXT 256 + +#define SW_THREE_WIRE 0 +#define HW_THREE_WIRE 2 + +#define BT_DEMO_BOARD 0 +#define BT_QA_BOARD 1 +#define BT_FPGA 2 + +#define HAL_PRIME_CHNL_OFFSET_DONT_CARE 0 +#define HAL_PRIME_CHNL_OFFSET_LOWER 1 +#define HAL_PRIME_CHNL_OFFSET_UPPER 2 + +#define MAX_H2C_QUEUE_NUM 10 + +#define RX_MPDU_QUEUE 0 +#define RX_CMD_QUEUE 1 +#define RX_MAX_QUEUE 2 +#define AC2QUEUEID(_AC) (_AC) + +#define C2H_RX_CMD_HDR_LEN 8 +#define GET_C2H_CMD_CMD_LEN(__prxhdr) \ + LE_BITS_TO_4BYTE((__prxhdr), 0, 16) +#define GET_C2H_CMD_ELEMENT_ID(__prxhdr) \ + LE_BITS_TO_4BYTE((__prxhdr), 16, 8) +#define GET_C2H_CMD_CMD_SEQ(__prxhdr) \ + LE_BITS_TO_4BYTE((__prxhdr), 24, 7) +#define GET_C2H_CMD_CONTINUE(__prxhdr) \ + LE_BITS_TO_4BYTE((__prxhdr), 31, 1) +#define GET_C2H_CMD_CONTENT(__prxhdr) \ + ((u8*)(__prxhdr) + C2H_RX_CMD_HDR_LEN) + +#define GET_C2H_CMD_FEEDBACK_ELEMENT_ID(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE((__pcmdfbhdr), 0, 8) +#define GET_C2H_CMD_FEEDBACK_CCX_LEN(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE((__pcmdfbhdr), 8, 8) +#define GET_C2H_CMD_FEEDBACK_CCX_CMD_CNT(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE((__pcmdfbhdr), 16, 16) +#define GET_C2H_CMD_FEEDBACK_CCX_MAC_ID(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE(((__pcmdfbhdr) + 4), 0, 5) +#define GET_C2H_CMD_FEEDBACK_CCX_VALID(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE(((__pcmdfbhdr) + 4), 7, 1) +#define GET_C2H_CMD_FEEDBACK_CCX_RETRY_CNT(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE(((__pcmdfbhdr) + 4), 8, 5) +#define GET_C2H_CMD_FEEDBACK_CCX_TOK(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE(((__pcmdfbhdr) + 4), 15, 1) +#define GET_C2H_CMD_FEEDBACK_CCX_QSEL(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE(((__pcmdfbhdr) + 4), 16, 4) +#define GET_C2H_CMD_FEEDBACK_CCX_SEQ(__pcmdfbhdr) \ + LE_BITS_TO_4BYTE(((__pcmdfbhdr) + 4), 20, 12) + +#define CHIP_BONDING_IDENTIFIER(_value) (((_value)>>22)&0x3) + +#define CHIP_8812 BIT(2) +#define CHIP_8821 (BIT(0)|BIT(2)) + +#define CHIP_8821A (BIT(0)|BIT(2)) +#define NORMAL_CHIP BIT(3) +#define RF_TYPE_1T1R (~(BIT(4)|BIT(5)|BIT(6))) +#define RF_TYPE_1T2R BIT(4) +#define RF_TYPE_2T2R BIT(5) +#define CHIP_VENDOR_UMC BIT(7) +#define B_CUT_VERSION BIT(12) +#define C_CUT_VERSION BIT(13) +#define D_CUT_VERSION ((BIT(12)|BIT(13))) +#define E_CUT_VERSION BIT(14) +#define RF_RL_ID (BIT(31)|BIT(30)|BIT(29)|BIT(28)) + + + +enum version_8821ae { + VERSION_TEST_CHIP_1T1R_8812 = 0x0004, + VERSION_TEST_CHIP_2T2R_8812 = 0x0024, + VERSION_NORMAL_TSMC_CHIP_1T1R_8812 = 0x100c, + VERSION_NORMAL_TSMC_CHIP_2T2R_8812 = 0x102c, + VERSION_NORMAL_TSMC_CHIP_1T1R_8812_C_CUT = 0x200c, + VERSION_NORMAL_TSMC_CHIP_2T2R_8812_C_CUT = 0x202c, + VERSION_TEST_CHIP_8821 = 0x0005, + VERSION_NORMAL_TSMC_CHIP_8821 = 0x000d, + VERSION_NORMAL_TSMC_CHIP_8821_B_CUT = 0x100d, + VERSION_UNKNOWN = 0xFF, +}; + +enum vht_data_sc{ + VHT_DATA_SC_DONOT_CARE = 0, + VHT_DATA_SC_20_UPPER_OF_80MHZ = 1, + VHT_DATA_SC_20_LOWER_OF_80MHZ = 2, + VHT_DATA_SC_20_UPPERST_OF_80MHZ = 3, + VHT_DATA_SC_20_LOWEST_OF_80MHZ = 4, + VHT_DATA_SC_20_RECV1 = 5, + VHT_DATA_SC_20_RECV2 = 6, + VHT_DATA_SC_20_RECV3 = 7, + VHT_DATA_SC_20_RECV4 = 8, + VHT_DATA_SC_40_UPPER_OF_80MHZ = 9, + VHT_DATA_SC_40_LOWER_OF_80MHZ = 10, +}; + + +/* MASK */ +#define IC_TYPE_MASK (BIT(0)|BIT(1)|BIT(2)) +#define CHIP_TYPE_MASK BIT(3) +#define RF_TYPE_MASK (BIT(4)|BIT(5)|BIT(6)) +#define MANUFACTUER_MASK BIT(7) +#define ROM_VERSION_MASK (BIT(11)|BIT(10)|BIT(9)|BIT(8)) +#define CUT_VERSION_MASK (BIT(15)|BIT(14)|BIT(13)|BIT(12)) + +/* Get element */ +#define GET_CVID_IC_TYPE(version) ((version) & IC_TYPE_MASK) +#define GET_CVID_CHIP_TYPE(version) ((version) & CHIP_TYPE_MASK) +#define GET_CVID_RF_TYPE(version) ((version) & RF_TYPE_MASK) +#define GET_CVID_MANUFACTUER(version) ((version) & MANUFACTUER_MASK) +#define GET_CVID_ROM_VERSION(version) ((version) & ROM_VERSION_MASK) +#define GET_CVID_CUT_VERSION(version) ((version) & CUT_VERSION_MASK) + +#define IS_1T1R(version) ((GET_CVID_RF_TYPE(version))? false : true) +#define IS_1T2R(version) ((GET_CVID_RF_TYPE(version) == RF_TYPE_1T2R)\ + ? true : false) +#define IS_2T2R(version) ((GET_CVID_RF_TYPE(version) == RF_TYPE_2T2R)\ + ? true : false) + +#define IS_8812_SERIES(version) ((GET_CVID_IC_TYPE(version) == CHIP_8812)? \ + true : false) +#define IS_8821_SERIES(version) ((GET_CVID_IC_TYPE(version) == CHIP_8821)? \ + true : false) + +#define IS_VENDOR_8812A_TEST_CHIP(version) ((IS_8812_SERIES(version)) ? \ + ((IS_NORMAL_CHIP(version)) ? \ + false : true) : false) +#define IS_VENDOR_8812A_MP_CHIP(version) ((IS_8812_SERIES(version)) ? \ + ((IS_NORMAL_CHIP(version)) ? \ + true : false) : false) +#define IS_VENDOR_8812A_C_CUT(version) ((IS_8812_SERIES(version)) ? \ + ((GET_CVID_CUT_VERSION(version) == C_CUT_VERSION) ? \ + true : false) : false) + +#define IS_VENDOR_8821A_TEST_CHIP(version) ((IS_8821_SERIES(version)) ? \ + ((IS_NORMAL_CHIP(version)) ? \ + false : true) : false) +#define IS_VENDOR_8821A_MP_CHIP(version) ((IS_8821_SERIES(version)) ? \ + ((IS_NORMAL_CHIP(version)) ? \ + true : false) : false) +#define IS_VENDOR_8821A_B_CUT(version) ((IS_8821_SERIES(version)) ? \ + ((GET_CVID_CUT_VERSION(version) == B_CUT_VERSION) ? \ + true : false) : false) + + +enum rf_optype { + RF_OP_BY_SW_3WIRE = 0, + RF_OP_BY_FW, + RF_OP_MAX +}; + +enum rf_power_state { + RF_ON, + RF_OFF, + RF_SLEEP, + RF_SHUT_DOWN, +}; + +enum power_save_mode { + POWER_SAVE_MODE_ACTIVE, + POWER_SAVE_MODE_SAVE, +}; + +enum power_polocy_config { + POWERCFG_MAX_POWER_SAVINGS, + POWERCFG_GLOBAL_POWER_SAVINGS, + POWERCFG_LOCAL_POWER_SAVINGS, + POWERCFG_LENOVO, +}; + +enum interface_select_pci { + INTF_SEL1_MINICARD = 0, + INTF_SEL0_PCIE = 1, + INTF_SEL2_RSV = 2, + INTF_SEL3_RSV = 3, +}; + +enum hal_fw_c2h_cmd_id { + HAL_FW_C2H_CMD_Read_MACREG = 0, + HAL_FW_C2H_CMD_Read_BBREG = 1, + HAL_FW_C2H_CMD_Read_RFREG = 2, + HAL_FW_C2H_CMD_Read_EEPROM = 3, + HAL_FW_C2H_CMD_Read_EFUSE = 4, + HAL_FW_C2H_CMD_Read_CAM = 5, + HAL_FW_C2H_CMD_Get_BasicRate = 6, + HAL_FW_C2H_CMD_Get_DataRate = 7, + HAL_FW_C2H_CMD_Survey = 8, + HAL_FW_C2H_CMD_SurveyDone = 9, + HAL_FW_C2H_CMD_JoinBss = 10, + HAL_FW_C2H_CMD_AddSTA = 11, + HAL_FW_C2H_CMD_DelSTA = 12, + HAL_FW_C2H_CMD_AtimDone = 13, + HAL_FW_C2H_CMD_TX_Report = 14, + HAL_FW_C2H_CMD_CCX_Report = 15, + HAL_FW_C2H_CMD_DTM_Report = 16, + HAL_FW_C2H_CMD_TX_Rate_Statistics = 17, + HAL_FW_C2H_CMD_C2HLBK = 18, + HAL_FW_C2H_CMD_C2HDBG = 19, + HAL_FW_C2H_CMD_C2HFEEDBACK = 20, + HAL_FW_C2H_CMD_MAX +}; + +enum rtl_desc_qsel { + QSLT_BK = 0x2, + QSLT_BE = 0x0, + QSLT_VI = 0x5, + QSLT_VO = 0x7, + QSLT_BEACON = 0x10, + QSLT_HIGH = 0x11, + QSLT_MGNT = 0x12, + QSLT_CMD = 0x13, +}; + +enum rtl_desc8821ae_rate { + DESC_RATE1M = 0x00, + DESC_RATE2M = 0x01, + DESC_RATE5_5M = 0x02, + DESC_RATE11M = 0x03, + + DESC_RATE6M = 0x04, + DESC_RATE9M = 0x05, + DESC_RATE12M = 0x06, + DESC_RATE18M = 0x07, + DESC_RATE24M = 0x08, + DESC_RATE36M = 0x09, + DESC_RATE48M = 0x0a, + DESC_RATE54M = 0x0b, + + DESC_RATEMCS0 = 0x0c, + DESC_RATEMCS1 = 0x0d, + DESC_RATEMCS2 = 0x0e, + DESC_RATEMCS3 = 0x0f, + DESC_RATEMCS4 = 0x10, + DESC_RATEMCS5 = 0x11, + DESC_RATEMCS6 = 0x12, + DESC_RATEMCS7 = 0x13, + DESC_RATEMCS8 = 0x14, + DESC_RATEMCS9 = 0x15, + DESC_RATEMCS10 = 0x16, + DESC_RATEMCS11 = 0x17, + DESC_RATEMCS12 = 0x18, + DESC_RATEMCS13 = 0x19, + DESC_RATEMCS14 = 0x1a, + DESC_RATEMCS15 = 0x1b, + DESC_RATEVHT1SS_MCS0 = 0x1c, + DESC_RATEVHT1SS_MCS1 = 0x1d, + DESC_RATEVHT1SS_MCS2 = 0x1e, + DESC_RATEVHT1SS_MCS3 = 0x1f, + DESC_RATEVHT1SS_MCS4 = 0x20, + DESC_RATEVHT1SS_MCS5 = 0x21, + DESC_RATEVHT1SS_MCS6 = 0x22, + DESC_RATEVHT1SS_MCS7 = 0x23, + DESC_RATEVHT1SS_MCS8 = 0x24, + DESC_RATEVHT1SS_MCS9 = 0x25, + DESC_RATEVHT2SS_MCS0 = 0x26, + DESC_RATEVHT2SS_MCS1 = 0x27, + DESC_RATEVHT2SS_MCS2 = 0x28, + DESC_RATEVHT2SS_MCS3 = 0x29, + DESC_RATEVHT2SS_MCS4 = 0x2a, + DESC_RATEVHT2SS_MCS5 = 0x2b, + DESC_RATEVHT2SS_MCS6 = 0x2c, + DESC_RATEVHT2SS_MCS7 = 0x2d, + DESC_RATEVHT2SS_MCS8 = 0x2e, + DESC_RATEVHT2SS_MCS9 = 0x2f, +}; + +enum rx_packet_type{ + NORMAL_RX, + TX_REPORT1, + TX_REPORT2, + HIS_REPORT, + C2H_PACKET, +}; + +struct phy_sts_cck_8821ae_t { + u8 adc_pwdb_X[4]; + u8 sq_rpt; + u8 cck_agc_rpt; +}; + +struct h2c_cmd_8821ae { + u8 element_id; + u32 cmd_len; + u8 *p_cmdbuffer; +}; + +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/dm.c +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/dm.c @@ -0,0 +1,3045 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "../base.h" +#include "../pci.h" +#include "reg.h" +#include "def.h" +#include "phy.h" +#include "dm.h" +#include "fw.h" +#include "trx.h" +#include "../btcoexist/rtl_btc.h" + +struct dig_t dm_digtable; +static struct ps_t dm_pstable; + +static const u32 rtl8812ae_txscaling_table[TXSCALE_TABLE_SIZE] = +{ + 0x081, // 0, -12.0dB + 0x088, // 1, -11.5dB + 0x090, // 2, -11.0dB + 0x099, // 3, -10.5dB + 0x0A2, // 4, -10.0dB + 0x0AC, // 5, -9.5dB + 0x0B6, // 6, -9.0dB + 0x0C0, // 7, -8.5dB + 0x0CC, // 8, -8.0dB + 0x0D8, // 9, -7.5dB + 0x0E5, // 10, -7.0dB + 0x0F2, // 11, -6.5dB + 0x101, // 12, -6.0dB + 0x110, // 13, -5.5dB + 0x120, // 14, -5.0dB + 0x131, // 15, -4.5dB + 0x143, // 16, -4.0dB + 0x156, // 17, -3.5dB + 0x16A, // 18, -3.0dB + 0x180, // 19, -2.5dB + 0x197, // 20, -2.0dB + 0x1AF, // 21, -1.5dB + 0x1C8, // 22, -1.0dB + 0x1E3, // 23, -0.5dB + 0x200, // 24, +0 dB + 0x21E, // 25, +0.5dB + 0x23E, // 26, +1.0dB + 0x261, // 27, +1.5dB + 0x285, // 28, +2.0dB + 0x2AB, // 29, +2.5dB + 0x2D3, // 30, +3.0dB + 0x2FE, // 31, +3.5dB + 0x32B, // 32, +4.0dB + 0x35C, // 33, +4.5dB + 0x38E, // 34, +5.0dB + 0x3C4, // 35, +5.5dB + 0x3FE // 36, +6.0dB +}; + +static const u32 rtl8821ae_txscaling_table[TXSCALE_TABLE_SIZE] = { + 0x081, // 0, -12.0dB + 0x088, // 1, -11.5dB + 0x090, // 2, -11.0dB + 0x099, // 3, -10.5dB + 0x0A2, // 4, -10.0dB + 0x0AC, // 5, -9.5dB + 0x0B6, // 6, -9.0dB + 0x0C0, // 7, -8.5dB + 0x0CC, // 8, -8.0dB + 0x0D8, // 9, -7.5dB + 0x0E5, // 10, -7.0dB + 0x0F2, // 11, -6.5dB + 0x101, // 12, -6.0dB + 0x110, // 13, -5.5dB + 0x120, // 14, -5.0dB + 0x131, // 15, -4.5dB + 0x143, // 16, -4.0dB + 0x156, // 17, -3.5dB + 0x16A, // 18, -3.0dB + 0x180, // 19, -2.5dB + 0x197, // 20, -2.0dB + 0x1AF, // 21, -1.5dB + 0x1C8, // 22, -1.0dB + 0x1E3, // 23, -0.5dB + 0x200, // 24, +0 dB + 0x21E, // 25, +0.5dB + 0x23E, // 26, +1.0dB + 0x261, // 27, +1.5dB + 0x285, // 28, +2.0dB + 0x2AB, // 29, +2.5dB + 0x2D3, // 30, +3.0dB + 0x2FE, // 31, +3.5dB + 0x32B, // 32, +4.0dB + 0x35C, // 33, +4.5dB + 0x38E, // 34, +5.0dB + 0x3C4, // 35, +5.5dB + 0x3FE // 36, +6.0dB +}; + +static const u32 ofdmswing_table[] = { + 0x0b40002d, // 0, -15.0dB + 0x0c000030, // 1, -14.5dB + 0x0cc00033, // 2, -14.0dB + 0x0d800036, // 3, -13.5dB + 0x0e400039, // 4, -13.0dB + 0x0f00003c, // 5, -12.5dB + 0x10000040, // 6, -12.0dB + 0x11000044, // 7, -11.5dB + 0x12000048, // 8, -11.0dB + 0x1300004c, // 9, -10.5dB + 0x14400051, // 10, -10.0dB + 0x15800056, // 11, -9.5dB + 0x16c0005b, // 12, -9.0dB + 0x18000060, // 13, -8.5dB + 0x19800066, // 14, -8.0dB + 0x1b00006c, // 15, -7.5dB + 0x1c800072, // 16, -7.0dB + 0x1e400079, // 17, -6.5dB + 0x20000080, // 18, -6.0dB + 0x22000088, // 19, -5.5dB + 0x24000090, // 20, -5.0dB + 0x26000098, // 21, -4.5dB + 0x288000a2, // 22, -4.0dB + 0x2ac000ab, // 23, -3.5dB + 0x2d4000b5, // 24, -3.0dB + 0x300000c0, // 25, -2.5dB + 0x32c000cb, // 26, -2.0dB + 0x35c000d7, // 27, -1.5dB + 0x390000e4, // 28, -1.0dB + 0x3c8000f2, // 29, -0.5dB + 0x40000100, // 30, +0dB + 0x43c0010f, // 31, +0.5dB + 0x47c0011f, // 32, +1.0dB + 0x4c000130, // 33, +1.5dB + 0x50800142, // 34, +2.0dB + 0x55400155, // 35, +2.5dB + 0x5a400169, // 36, +3.0dB + 0x5fc0017f, // 37, +3.5dB + 0x65400195, // 38, +4.0dB + 0x6b8001ae, // 39, +4.5dB + 0x71c001c7, // 40, +5.0dB + 0x788001e2, // 41, +5.5dB + 0x7f8001fe // 42, +6.0dB +}; + +static const u8 cckswing_table_ch1ch13[CCK_TABLE_SIZE][8] = { + {0x09, 0x08, 0x07, 0x06, 0x04, 0x03, 0x01, 0x01}, // 0, -16.0dB + {0x09, 0x09, 0x08, 0x06, 0x05, 0x03, 0x01, 0x01}, // 1, -15.5dB + {0x0a, 0x09, 0x08, 0x07, 0x05, 0x03, 0x02, 0x01}, // 2, -15.0dB + {0x0a, 0x0a, 0x09, 0x07, 0x05, 0x03, 0x02, 0x01}, // 3, -14.5dB + {0x0b, 0x0a, 0x09, 0x08, 0x06, 0x04, 0x02, 0x01}, // 4, -14.0dB + {0x0b, 0x0b, 0x0a, 0x08, 0x06, 0x04, 0x02, 0x01}, // 5, -13.5dB + {0x0c, 0x0c, 0x0a, 0x09, 0x06, 0x04, 0x02, 0x01}, // 6, -13.0dB + {0x0d, 0x0c, 0x0b, 0x09, 0x07, 0x04, 0x02, 0x01}, // 7, -12.5dB + {0x0d, 0x0d, 0x0c, 0x0a, 0x07, 0x05, 0x02, 0x01}, // 8, -12.0dB + {0x0e, 0x0e, 0x0c, 0x0a, 0x08, 0x05, 0x02, 0x01}, // 9, -11.5dB + {0x0f, 0x0f, 0x0d, 0x0b, 0x08, 0x05, 0x03, 0x01}, // 10, -11.0dB + {0x10, 0x10, 0x0e, 0x0b, 0x08, 0x05, 0x03, 0x01}, // 11, -10.5dB + {0x11, 0x11, 0x0f, 0x0c, 0x09, 0x06, 0x03, 0x01}, // 12, -10.0dB + {0x12, 0x12, 0x0f, 0x0c, 0x09, 0x06, 0x03, 0x01}, // 13, -9.5dB + {0x13, 0x13, 0x10, 0x0d, 0x0a, 0x06, 0x03, 0x01}, // 14, -9.0dB + {0x14, 0x14, 0x11, 0x0e, 0x0b, 0x07, 0x03, 0x02}, // 15, -8.5dB + {0x16, 0x15, 0x12, 0x0f, 0x0b, 0x07, 0x04, 0x01}, // 16, -8.0dB + {0x17, 0x16, 0x13, 0x10, 0x0c, 0x08, 0x04, 0x02}, // 17, -7.5dB + {0x18, 0x17, 0x15, 0x11, 0x0c, 0x08, 0x04, 0x02}, // 18, -7.0dB + {0x1a, 0x19, 0x16, 0x12, 0x0d, 0x09, 0x04, 0x02}, // 19, -6.5dB + {0x1b, 0x1a, 0x17, 0x13, 0x0e, 0x09, 0x04, 0x02}, // 20, -6.0dB + {0x1d, 0x1c, 0x18, 0x14, 0x0f, 0x0a, 0x05, 0x02}, // 21, -5.5dB + {0x1f, 0x1e, 0x1a, 0x15, 0x10, 0x0a, 0x05, 0x02}, // 22, -5.0dB + {0x20, 0x20, 0x1b, 0x16, 0x11, 0x08, 0x05, 0x02}, // 23, -4.5dB + {0x22, 0x21, 0x1d, 0x18, 0x11, 0x0b, 0x06, 0x02}, // 24, -4.0dB + {0x24, 0x23, 0x1f, 0x19, 0x13, 0x0c, 0x06, 0x03}, // 25, -3.5dB + {0x26, 0x25, 0x21, 0x1b, 0x14, 0x0d, 0x06, 0x03}, // 26, -3.0dB + {0x28, 0x28, 0x22, 0x1c, 0x15, 0x0d, 0x07, 0x03}, // 27, -2.5dB + {0x2b, 0x2a, 0x25, 0x1e, 0x16, 0x0e, 0x07, 0x03}, // 28, -2.0dB + {0x2d, 0x2d, 0x27, 0x1f, 0x18, 0x0f, 0x08, 0x03}, // 29, -1.5dB + {0x30, 0x2f, 0x29, 0x21, 0x19, 0x10, 0x08, 0x03}, // 30, -1.0dB + {0x33, 0x32, 0x2b, 0x23, 0x1a, 0x11, 0x08, 0x04}, // 31, -0.5dB + {0x36, 0x35, 0x2e, 0x25, 0x1c, 0x12, 0x09, 0x04} // 32, +0dB +}; + +static const u8 cckswing_table_ch14[CCK_TABLE_SIZE][8]= { + {0x09, 0x08, 0x07, 0x04, 0x00, 0x00, 0x00, 0x00}, // 0, -16.0dB + {0x09, 0x09, 0x08, 0x05, 0x00, 0x00, 0x00, 0x00}, // 1, -15.5dB + {0x0a, 0x09, 0x08, 0x05, 0x00, 0x00, 0x00, 0x00}, // 2, -15.0dB + {0x0a, 0x0a, 0x09, 0x05, 0x00, 0x00, 0x00, 0x00}, // 3, -14.5dB + {0x0b, 0x0a, 0x09, 0x05, 0x00, 0x00, 0x00, 0x00}, // 4, -14.0dB + {0x0b, 0x0b, 0x0a, 0x06, 0x00, 0x00, 0x00, 0x00}, // 5, -13.5dB + {0x0c, 0x0c, 0x0a, 0x06, 0x00, 0x00, 0x00, 0x00}, // 6, -13.0dB + {0x0d, 0x0c, 0x0b, 0x06, 0x00, 0x00, 0x00, 0x00}, // 7, -12.5dB + {0x0d, 0x0d, 0x0c, 0x07, 0x00, 0x00, 0x00, 0x00}, // 8, -12.0dB + {0x0e, 0x0e, 0x0c, 0x07, 0x00, 0x00, 0x00, 0x00}, // 9, -11.5dB + {0x0f, 0x0f, 0x0d, 0x08, 0x00, 0x00, 0x00, 0x00}, // 10, -11.0dB + {0x10, 0x10, 0x0e, 0x08, 0x00, 0x00, 0x00, 0x00}, // 11, -10.5dB + {0x11, 0x11, 0x0f, 0x09, 0x00, 0x00, 0x00, 0x00}, // 12, -10.0dB + {0x12, 0x12, 0x0f, 0x09, 0x00, 0x00, 0x00, 0x00}, // 13, -9.5dB + {0x13, 0x13, 0x10, 0x0a, 0x00, 0x00, 0x00, 0x00}, // 14, -9.0dB + {0x14, 0x14, 0x11, 0x0a, 0x00, 0x00, 0x00, 0x00}, // 15, -8.5dB + {0x16, 0x15, 0x12, 0x0b, 0x00, 0x00, 0x00, 0x00}, // 16, -8.0dB + {0x17, 0x16, 0x13, 0x0b, 0x00, 0x00, 0x00, 0x00}, // 17, -7.5dB + {0x18, 0x17, 0x15, 0x0c, 0x00, 0x00, 0x00, 0x00}, // 18, -7.0dB + {0x1a, 0x19, 0x16, 0x0d, 0x00, 0x00, 0x00, 0x00}, // 19, -6.5dB + {0x1b, 0x1a, 0x17, 0x0e, 0x00, 0x00, 0x00, 0x00}, // 20, -6.0dB + {0x1d, 0x1c, 0x18, 0x0e, 0x00, 0x00, 0x00, 0x00}, // 21, -5.5dB + {0x1f, 0x1e, 0x1a, 0x0f, 0x00, 0x00, 0x00, 0x00}, // 22, -5.0dB + {0x20, 0x20, 0x1b, 0x10, 0x00, 0x00, 0x00, 0x00}, // 23, -4.5dB + {0x22, 0x21, 0x1d, 0x11, 0x00, 0x00, 0x00, 0x00}, // 24, -4.0dB + {0x24, 0x23, 0x1f, 0x12, 0x00, 0x00, 0x00, 0x00}, // 25, -3.5dB + {0x26, 0x25, 0x21, 0x13, 0x00, 0x00, 0x00, 0x00}, // 26, -3.0dB + {0x28, 0x28, 0x24, 0x14, 0x00, 0x00, 0x00, 0x00}, // 27, -2.5dB + {0x2b, 0x2a, 0x25, 0x15, 0x00, 0x00, 0x00, 0x00}, // 28, -2.0dB + {0x2d, 0x2d, 0x17, 0x17, 0x00, 0x00, 0x00, 0x00}, // 29, -1.5dB + {0x30, 0x2f, 0x29, 0x18, 0x00, 0x00, 0x00, 0x00}, // 30, -1.0dB + {0x33, 0x32, 0x2b, 0x19, 0x00, 0x00, 0x00, 0x00}, // 31, -0.5dB + {0x36, 0x35, 0x2e, 0x1b, 0x00, 0x00, 0x00, 0x00} // 32, +0dB +}; + +static const u32 edca_setting_dl[PEER_MAX] = { + 0xa44f, /* 0 UNKNOWN */ + 0x5ea44f, /* 1 REALTEK_90 */ + 0x5e4322, /* 2 REALTEK_92SE */ + 0x5ea42b, /* 3 BROAD */ + 0xa44f, /* 4 RAL */ + 0xa630, /* 5 ATH */ + 0x5ea630, /* 6 CISCO */ + 0x5ea42b, /* 7 MARVELL */ +}; + +static const u32 edca_setting_ul[PEER_MAX] = { + 0x5e4322, /* 0 UNKNOWN */ + 0xa44f, /* 1 REALTEK_90 */ + 0x5ea44f, /* 2 REALTEK_92SE */ + 0x5ea32b, /* 3 BROAD */ + 0x5ea422, /* 4 RAL */ + 0x5ea322, /* 5 ATH */ + 0x3ea430, /* 6 CISCO */ + 0x5ea44f, /* 7 MARV */ +}; + +static u8 rtl8818e_delta_swing_table_idx_24gb_p_txpwrtrack[] = + {0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9}; +static u8 rtl8818e_delta_swing_table_idx_24gb_n_txpwrtrack[] = + {0, 0, 0, 2, 2, 3, 3, 4, 4, 4, 4, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9, 10, 10, 10, 11, 11, 11, 11}; + + +u8 rtl8812ae_delta_swing_table_idx_24gb_n_txpwrtrack[] = + {0, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 5, 6, 6, 6, 7, 8, 9, 9, 9, 9, 10, 10, 10, 10, 11, 11}; +u8 rtl8812ae_delta_swing_table_idx_24gb_p_txpwrtrack[] = + {0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9, 9}; +u8 rtl8812ae_delta_swing_table_idx_24ga_n_txpwrtrack[] = + {0, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 5, 6, 6, 6, 7, 8, 8, 9, 9, 9, 10, 10, 10, 10, 11, 11}; +u8 rtl8812ae_delta_swing_table_idx_24ga_p_txpwrtrack[] = + {0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9, 9}; +u8 rtl8812ae_delta_swing_table_idx_24gcckb_n_txpwrtrack[] = + {0, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 5, 6, 6, 6, 7, 8, 9, 9, 9, 9, 10, 10, 10, 10, 11, 11}; +u8 rtl8812ae_delta_swing_table_idx_24gcckb_p_txpwrtrack[] = + {0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9, 9}; +u8 rtl8812ae_delta_swing_table_idx_24gccka_n_txpwrtrack[] = + {0, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 5, 6, 6, 6, 7, 8, 8, 9, 9, 9, 10, 10, 10, 10, 11, 11}; +u8 rtl8812ae_delta_swing_table_idx_24gccka_p_txpwrtrack[] = + {0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9, 9}; + +u8 rtl8812ae_delta_swing_table_idx_5gb_n_txpwrtrack[][DELTA_SWINGIDX_SIZE] = { + {0, 1, 1, 2, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9, 9, 10, 10, 11, 11, 12, 12, 13}, + {0, 1, 1, 2, 2, 2, 3, 3, 4, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 12, 13, 13}, + {0, 1, 1, 2, 3, 3, 4, 4, 5, 6, 6, 7, 8, 9, 10, 11, 12, 12, 13, 14, 14, 14, 15, 16, 17, 17, 17, 18, 18, 18}, +}; +u8 rtl8812ae_delta_swing_table_idx_5gb_p_txpwrtrack[][DELTA_SWINGIDX_SIZE] = { + {0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11}, + {0, 1, 1, 2, 2, 3, 3, 4, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11}, + {0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11}, +}; +u8 rtl8812ae_delta_swing_table_idx_5ga_n_txpwrtrack[][DELTA_SWINGIDX_SIZE] = { + {0, 1, 1, 2, 2, 3, 3, 4, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 12, 13, 13, 13}, + {0, 1, 1, 2, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 8, 9, 9, 10, 10, 11, 11, 11, 12, 12, 12, 12, 12, 13, 13}, + {0, 1, 1, 2, 2, 3, 3, 4, 5, 6, 7, 8, 8, 9, 10, 11, 12, 13, 14, 14, 15, 15, 15, 16, 16, 16, 17, 17, 18, 18}, +}; +u8 rtl8812ae_delta_swing_table_idx_5ga_p_txpwrtrack[][DELTA_SWINGIDX_SIZE] = { + {0, 1, 1, 2, 2, 3, 3, 4, 4, 4, 4, 5, 5, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11}, + {0, 1, 1, 2, 2, 3, 3, 4, 4, 4, 5, 5, 6, 6, 7, 7, 8, 9, 9, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11}, + {0, 1, 1, 2, 3, 3, 4, 4, 5, 6, 6, 7, 7, 8, 9, 9, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11}, +}; + +u8 rtl8821ae_delta_swing_table_idx_24gb_n_txpwrtrack[] = + {0, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 10, 10, 10}; +u8 rtl8821ae_delta_swing_table_idx_24gb_p_txpwrtrack[] = + {0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 12, 12, 12, 12}; +u8 rtl8821ae_delta_swing_table_idx_24ga_n_txpwrtrack[] = + {0, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 10, 10, 10}; +u8 rtl8821ae_delta_swing_table_idx_24ga_p_txpwrtrack[] = + {0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 12, 12, 12, 12}; +u8 rtl8821ae_delta_swing_table_idx_24gcckb_n_txpwrtrack[] = + {0, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 10, 10, 10}; +u8 rtl8821ae_delta_swing_table_idx_24gcckb_p_txpwrtrack[] = + {0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 12, 12, 12, 12}; +u8 rtl8821ae_delta_swing_table_idx_24gccka_n_txpwrtrack[] = + {0, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 10, 10, 10}; +u8 rtl8821ae_delta_swing_table_idx_24gccka_p_txpwrtrack[] = + {0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 12, 12, 12, 12}; + +u8 rtl8821ae_delta_swing_table_idx_5gb_n_txpwrtrack[][DELTA_SWINGIDX_SIZE] = { + {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16}, + {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16}, + {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16}, +}; + +u8 rtl8821ae_delta_swing_table_idx_5gb_p_txpwrtrack[][DELTA_SWINGIDX_SIZE] = { + {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16}, + {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16}, + {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16}, +}; + +u8 rtl8821ae_delta_swing_table_idx_5ga_n_txpwrtrack[][DELTA_SWINGIDX_SIZE] = { + {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16}, + {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16}, + {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16}, +}; + +u8 rtl8821ae_delta_swing_table_idx_5ga_p_txpwrtrack[][DELTA_SWINGIDX_SIZE] = { + {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16}, + {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16}, + {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16}, +}; + +void rtl8812ae_dm_read_and_config_txpower_track( + struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("===> rtl8821ae_dm_read_and_config_txpower_track\n")); + + + memcpy(rtldm->delta_swing_table_idx_24ga_p, + rtl8812ae_delta_swing_table_idx_24ga_p_txpwrtrack, DELTA_SWINGIDX_SIZE); + memcpy(rtldm->delta_swing_table_idx_24ga_n, + rtl8812ae_delta_swing_table_idx_24ga_n_txpwrtrack, DELTA_SWINGIDX_SIZE); + memcpy(rtldm->delta_swing_table_idx_24gb_p, + rtl8812ae_delta_swing_table_idx_24gb_p_txpwrtrack, DELTA_SWINGIDX_SIZE); + memcpy(rtldm->delta_swing_table_idx_24gb_n, + rtl8812ae_delta_swing_table_idx_24gb_n_txpwrtrack, DELTA_SWINGIDX_SIZE); + + memcpy(rtldm->delta_swing_table_idx_24gccka_p, + rtl8812ae_delta_swing_table_idx_24gccka_p_txpwrtrack, DELTA_SWINGIDX_SIZE); + memcpy(rtldm->delta_swing_table_idx_24gccka_n, + rtl8812ae_delta_swing_table_idx_24gccka_n_txpwrtrack, DELTA_SWINGIDX_SIZE); + memcpy(rtldm->delta_swing_table_idx_24gcckb_p, + rtl8812ae_delta_swing_table_idx_24gcckb_p_txpwrtrack, DELTA_SWINGIDX_SIZE); + memcpy(rtldm->delta_swing_table_idx_24gcckb_n, + rtl8812ae_delta_swing_table_idx_24gcckb_n_txpwrtrack, DELTA_SWINGIDX_SIZE); + + memcpy(rtldm->delta_swing_table_idx_5ga_p, + rtl8812ae_delta_swing_table_idx_5ga_p_txpwrtrack, DELTA_SWINGIDX_SIZE*3); + memcpy(rtldm->delta_swing_table_idx_5ga_n, + rtl8812ae_delta_swing_table_idx_5ga_n_txpwrtrack, DELTA_SWINGIDX_SIZE*3); + memcpy(rtldm->delta_swing_table_idx_5gb_p, + rtl8812ae_delta_swing_table_idx_5gb_p_txpwrtrack, DELTA_SWINGIDX_SIZE*3); + memcpy(rtldm->delta_swing_table_idx_5gb_n, + rtl8812ae_delta_swing_table_idx_5gb_n_txpwrtrack, DELTA_SWINGIDX_SIZE*3); +} + +void rtl8821ae_dm_read_and_config_txpower_track( + struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("===> rtl8821ae_dm_read_and_config_txpower_track\n")); + + + memcpy(rtldm->delta_swing_table_idx_24ga_p, + rtl8821ae_delta_swing_table_idx_24ga_p_txpwrtrack, DELTA_SWINGIDX_SIZE); + memcpy(rtldm->delta_swing_table_idx_24ga_n, + rtl8821ae_delta_swing_table_idx_24ga_n_txpwrtrack, DELTA_SWINGIDX_SIZE); + memcpy(rtldm->delta_swing_table_idx_24gb_p, + rtl8821ae_delta_swing_table_idx_24gb_p_txpwrtrack, DELTA_SWINGIDX_SIZE); + memcpy(rtldm->delta_swing_table_idx_24gb_n, + rtl8821ae_delta_swing_table_idx_24gb_n_txpwrtrack, DELTA_SWINGIDX_SIZE); + + memcpy(rtldm->delta_swing_table_idx_24gccka_p, + rtl8821ae_delta_swing_table_idx_24gccka_p_txpwrtrack, DELTA_SWINGIDX_SIZE); + memcpy(rtldm->delta_swing_table_idx_24gccka_n, + rtl8821ae_delta_swing_table_idx_24gccka_n_txpwrtrack, DELTA_SWINGIDX_SIZE); + memcpy(rtldm->delta_swing_table_idx_24gcckb_p, + rtl8821ae_delta_swing_table_idx_24gcckb_p_txpwrtrack, DELTA_SWINGIDX_SIZE); + memcpy(rtldm->delta_swing_table_idx_24gcckb_n, + rtl8821ae_delta_swing_table_idx_24gcckb_n_txpwrtrack, DELTA_SWINGIDX_SIZE); + + memcpy(rtldm->delta_swing_table_idx_5ga_p, + rtl8821ae_delta_swing_table_idx_5ga_p_txpwrtrack, DELTA_SWINGIDX_SIZE*3); + memcpy(rtldm->delta_swing_table_idx_5ga_n, + rtl8821ae_delta_swing_table_idx_5ga_n_txpwrtrack, DELTA_SWINGIDX_SIZE*3); + memcpy(rtldm->delta_swing_table_idx_5gb_p, + rtl8821ae_delta_swing_table_idx_5gb_p_txpwrtrack, DELTA_SWINGIDX_SIZE*3); + memcpy(rtldm->delta_swing_table_idx_5gb_n, + rtl8821ae_delta_swing_table_idx_5gb_n_txpwrtrack, DELTA_SWINGIDX_SIZE*3); +} + + + +#define CALCULATE_SWINGTALBE_OFFSET(_offset, _direction, _size, _deltaThermal) \ + do {\ + for(_offset = 0; _offset < _size; _offset++)\ + {\ + if(_deltaThermal < thermal_threshold[_direction][_offset])\ + {\ + if(_offset != 0)\ + _offset--;\ + break;\ + }\ + } \ + if(_offset >= _size)\ + _offset = _size-1;\ + } while(0) + + +void rtl8821ae_dm_txpower_track_adjust(struct ieee80211_hw *hw, + u8 type,u8 *pdirection, + u32 *poutwrite_val) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + u8 pwr_val = 0; + + if (type == 0){ + if (rtlpriv->dm.bb_swing_idx_ofdm[RF90_PATH_A] <= + rtlpriv->dm.bb_swing_idx_ofdm_base[RF90_PATH_A]) { + *pdirection = 1; + pwr_val = rtldm->bb_swing_idx_ofdm_base[RF90_PATH_A] - rtldm->bb_swing_idx_ofdm[RF90_PATH_A]; + } else { + *pdirection = 2; + pwr_val = rtldm->bb_swing_idx_ofdm[RF90_PATH_A] - rtldm->bb_swing_idx_ofdm_base[RF90_PATH_A]; + } + } else if (type ==1) { + if (rtldm->bb_swing_idx_cck <= rtldm->bb_swing_idx_cck_base) { + *pdirection = 1; + pwr_val = rtldm->bb_swing_idx_cck_base - rtldm->bb_swing_idx_cck; + } else { + *pdirection = 2; + pwr_val = rtldm->bb_swing_idx_cck - rtldm->bb_swing_idx_cck_base; + } + } + + if (pwr_val >= TXPWRTRACK_MAX_IDX && (*pdirection == 1)) + pwr_val = TXPWRTRACK_MAX_IDX; + + *poutwrite_val = pwr_val |(pwr_val << 8)|(pwr_val << 16) | (pwr_val << 24); +} + +void rtl8821ae_dm_clear_txpower_tracking_state(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_dm *rtldm = rtl_dm(rtlpriv); + struct rtl_efuse *rtlefuse = rtl_efuse(rtlpriv); + u8 p = 0; + rtldm->bb_swing_idx_cck_base = rtldm->default_cck_index; + rtldm->bb_swing_idx_cck = rtldm->default_cck_index; + rtldm->cck_index = 0; + + for (p = RF90_PATH_A; p < MAX_RF_PATH; ++p) { + rtldm->bb_swing_idx_ofdm_base[p] = rtldm->default_ofdm_index; + rtldm->bb_swing_idx_ofdm[p] = rtldm->default_ofdm_index; + rtldm->ofdm_index[p] = rtldm->default_ofdm_index; + + rtldm->power_index_offset[p] = 0; + rtldm->delta_power_index[p] = 0; + rtldm->delta_power_index_last[p] = 0; + + rtldm->aboslute_ofdm_swing_idx[p] = 0; /*Initial Mix mode power tracking*/ + rtldm->remnant_ofdm_swing_idx[p] = 0; + } + + rtldm->modify_txagc_flag_path_a = false; /*Initial at Modify Tx Scaling Mode*/ + rtldm->modify_txagc_flag_path_b = false; /*Initial at Modify Tx Scaling Mode*/ + rtldm->remnant_cck_idx = 0; + rtldm->thermalvalue = rtlefuse->eeprom_thermalmeter; + rtldm->thermalvalue_iqk = rtlefuse->eeprom_thermalmeter; + rtldm->thermalvalue_lck = rtlefuse->eeprom_thermalmeter; +} + +u8 rtl8821ae_dm_get_swing_index(struct ieee80211_hw *hw) +{ + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 i = 0; + u32 bb_swing; + + bb_swing =rtl8821ae_phy_query_bb_reg(hw, rtlhal->current_bandtype, RF90_PATH_A); + + for (i = 0; i < TXSCALE_TABLE_SIZE; ++i) + if ( bb_swing == rtl8821ae_txscaling_table[i]) + break; + + return i; +} + +void rtl8821ae_dm_initialize_txpower_tracking_thermalmeter( + struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_dm *rtldm = rtl_dm(rtlpriv); + struct rtl_efuse *rtlefuse = rtl_efuse(rtlpriv); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 default_swing_index = 0; + u8 p = 0; + + rtlpriv->dm.txpower_track_control = true; + rtldm->thermalvalue = rtlefuse->eeprom_thermalmeter; + rtldm->thermalvalue_iqk = rtlefuse->eeprom_thermalmeter; + rtldm->thermalvalue_lck = rtlefuse->eeprom_thermalmeter; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + rtl8812ae_dm_read_and_config_txpower_track(hw); + else + rtl8821ae_dm_read_and_config_txpower_track(hw); + + default_swing_index = rtl8821ae_dm_get_swing_index(hw); + + rtldm->default_ofdm_index = (default_swing_index == TXSCALE_TABLE_SIZE) ? 24 : default_swing_index; + rtldm->default_cck_index = 24; + + rtldm->bb_swing_idx_cck_base = rtldm->default_cck_index; + rtldm->cck_index = rtldm->default_cck_index; + + for (p = RF90_PATH_A; p < MAX_RF_PATH; ++p) + { + rtldm->bb_swing_idx_ofdm_base[p] = rtldm->default_ofdm_index; + rtldm->ofdm_index[p] = rtldm->default_ofdm_index; + rtldm->delta_power_index[p] = 0; + rtldm->power_index_offset[p] = 0; + rtldm->delta_power_index_last[p] = 0; + } +} + +static void rtl8821ae_dm_init_dynamic_bb_powersaving(struct ieee80211_hw *hw) +{ + dm_pstable.pre_ccastate = CCA_MAX; + dm_pstable.cur_ccasate = CCA_MAX; + dm_pstable.pre_rfstate = RF_MAX; + dm_pstable.cur_rfstate = RF_MAX; + dm_pstable.rssi_val_min = 0; + dm_pstable.initialize = 0; +} + + +static void rtl8821ae_dm_diginit(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + //dm_digtable.dig_enable_flag = true; + dm_digtable.cur_igvalue = rtl_get_bbreg(hw, ROFDM0_XAAGCCORE1, 0x7f); + /*dm_digtable.pre_igvalue = 0; + dm_digtable.cursta_connectctate = DIG_STA_DISCONNECT; + dm_digtable.presta_connectstate = DIG_STA_DISCONNECT; + dm_digtable.curmultista_connectstate = DIG_MULTISTA_DISCONNECT;*/ + dm_digtable.rssi_lowthresh = DM_DIG_THRESH_LOW; + dm_digtable.rssi_highthresh = DM_DIG_THRESH_HIGH; + dm_digtable.fa_lowthresh = DM_FALSEALARM_THRESH_LOW; + dm_digtable.fa_highthresh = DM_FALSEALARM_THRESH_HIGH; + dm_digtable.rx_gain_range_max = DM_DIG_MAX; + dm_digtable.rx_gain_range_min = DM_DIG_MIN; + dm_digtable.backoff_val = DM_DIG_BACKOFF_DEFAULT; + dm_digtable.backoff_val_range_max = DM_DIG_BACKOFF_MAX; + dm_digtable.backoff_val_range_min = DM_DIG_BACKOFF_MIN; + dm_digtable.pre_cck_cca_thres = 0xff; + dm_digtable.cur_cck_cca_thres = 0x83; + dm_digtable.forbidden_igi = DM_DIG_MIN; + dm_digtable.large_fa_hit = 0; + dm_digtable.recover_cnt = 0; + dm_digtable.dig_dynamic_min_0 = DM_DIG_MIN; + dm_digtable.dig_dynamic_min_1 = DM_DIG_MIN; + dm_digtable.b_media_connect_0 = false; + dm_digtable.b_media_connect_1 = false; + rtlpriv->dm.b_dm_initialgain_enable = true; + dm_digtable.bt30_cur_igi = 0x32; +} + +static void rtl8821ae_dm_init_dynamic_txpower(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtlpriv->dm.bdynamic_txpower_enable = false; + + rtlpriv->dm.last_dtp_lvl = TXHIGHPWRLEVEL_NORMAL; + rtlpriv->dm.dynamic_txhighpower_lvl = TXHIGHPWRLEVEL_NORMAL; +} + + +void rtl8821ae_dm_init_edca_turbo(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + rtlpriv->dm.bcurrent_turbo_edca = false; + rtlpriv->dm.bis_any_nonbepkts = false; + rtlpriv->dm.bis_cur_rdlstate = false; +} + + +void rtl8821ae_dm_init_rate_adaptive_mask(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rate_adaptive *p_ra = &(rtlpriv->ra); + + p_ra->ratr_state = DM_RATR_STA_INIT; + p_ra->pre_ratr_state = DM_RATR_STA_INIT; + + rtlpriv->dm.dm_type = DM_TYPE_BYDRIVER; + if (rtlpriv->dm.dm_type == DM_TYPE_BYDRIVER) + rtlpriv->dm.b_useramask = true; + else + rtlpriv->dm.b_useramask = false; + + p_ra->high_rssi_thresh_for_ra = 50; + p_ra->low_rssi_thresh_for_ra = 20; +} + + +static void rtl8821ae_dm_init_txpower_tracking(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtlpriv->dm.btxpower_tracking = true; + rtlpriv->dm.btxpower_trackinginit = false; + rtlpriv->dm.txpowercount = 0; + rtlpriv->dm.txpower_track_control = true; + rtlpriv->dm.thermalvalue = 0; + + rtlpriv->dm.ofdm_index[0] = 30; + rtlpriv->dm.cck_index = 20; + + rtlpriv->dm.bb_swing_idx_cck_base = rtlpriv->dm.cck_index; + + + rtlpriv->dm.bb_swing_idx_ofdm[RF90_PATH_A] = rtlpriv->dm.ofdm_index[0]; + rtlpriv->dm.bb_swing_idx_ofdm[RF90_PATH_B] = rtlpriv->dm.ofdm_index[0]; + rtlpriv->dm.delta_power_index[0] = 0; + rtlpriv->dm.delta_power_index_last[0] = 0; + rtlpriv->dm.power_index_offset[0] = 0; + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + (" rtlpriv->dm.btxpower_tracking = %d\n", + rtlpriv->dm.btxpower_tracking)); +} + + +void rtl8821ae_dm_init_dynamic_atc_switch(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtlpriv->dm.crystal_cap = rtlpriv->efuse.crystalcap; + + rtlpriv->dm.atc_status = rtl_get_bbreg(hw, ROFDM1_CFOTRACKING, BIT(11)); + rtlpriv->dm.cfo_threshold = CFO_THRESHOLD_XTAL; +} + + +void rtl8821ae_dm_init(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + spin_lock(&rtlpriv->locks.iqk_lock); + rtlphy->b_iqk_in_progress = false; + spin_unlock(&rtlpriv->locks.iqk_lock); + + rtlpriv->dm.dm_type = DM_TYPE_BYDRIVER; + rtl8821ae_dm_diginit(hw); + rtl8821ae_dm_init_rate_adaptive_mask(hw); + rtl8812ae_dm_path_diversity_init(hw); + rtl8821ae_dm_init_edca_turbo(hw); + rtl8821ae_dm_initialize_txpower_tracking_thermalmeter(hw); +#if 1 + rtl8821ae_dm_init_dynamic_bb_powersaving(hw); + rtl8821ae_dm_init_dynamic_txpower(hw); + rtl8821ae_dm_init_txpower_tracking(hw); +#endif + rtl8821ae_dm_init_dynamic_atc_switch(hw); +} + +void rtl8821ae_dm_find_minimum_rssi(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_dig *rtl_dm_dig = &(rtlpriv->dm.dm_digtable); + struct rtl_mac *mac = rtl_mac(rtlpriv); + + /* Determine the minimum RSSI */ + if ((mac->link_state < MAC80211_LINKED) && + (rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb == 0)) { + rtl_dm_dig->min_undecorated_pwdb_for_dm = 0; + RT_TRACE(COMP_BB_POWERSAVING, DBG_LOUD, + ("Not connected to any \n")); + } + if (mac->link_state >= MAC80211_LINKED) { + if (mac->opmode == NL80211_IFTYPE_AP || + mac->opmode == NL80211_IFTYPE_ADHOC) { + rtl_dm_dig->min_undecorated_pwdb_for_dm = + rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb; + RT_TRACE(COMP_BB_POWERSAVING, DBG_LOUD, + ("AP Client PWDB = 0x%lx \n", + rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb)); + } else { + rtl_dm_dig->min_undecorated_pwdb_for_dm = + rtlpriv->dm.undecorated_smoothed_pwdb; + RT_TRACE(COMP_BB_POWERSAVING, DBG_LOUD, + ("STA Default Port PWDB = 0x%x \n", + rtl_dm_dig->min_undecorated_pwdb_for_dm)); + } + } else { + rtl_dm_dig->min_undecorated_pwdb_for_dm = + rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb; + RT_TRACE(COMP_BB_POWERSAVING, DBG_LOUD, + ("AP Ext Port or disconnet PWDB = 0x%x \n", + rtl_dm_dig->min_undecorated_pwdb_for_dm)); + } + RT_TRACE(COMP_DIG, DBG_LOUD, ("MinUndecoratedPWDBForDM =%d\n", + rtl_dm_dig->min_undecorated_pwdb_for_dm)); +} + +#if 0 +void rtl8812ae_dm_rssi_dump_to_register( + struct ieee80211_hw *hw + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtl_write_byte(rtlpriv, RA_RSSI_DUMP, Adapter->RxStats.RxRSSIPercentage[0]); + rtl_write_byte(rtlpriv, RB_RSSI_DUMP, Adapter->RxStats.RxRSSIPercentage[1]); + + /* Rx EVM*/ + rtl_write_byte(rtlpriv, RS1_RX_EVM_DUMP, Adapter->RxStats.RxEVMdbm[0]); + rtl_write_byte(rtlpriv, RS2_RX_EVM_DUMP, Adapter->RxStats.RxEVMdbm[1]); + + /*Rx SNR*/ + rtl_write_byte(rtlpriv, RA_RX_SNR_DUMP, (u1Byte)(Adapter->RxStats.RxSNRdB[0])); + rtl_write_byte(rtlpriv, RB_RX_SNR_DUMP, (u1Byte)(Adapter->RxStats.RxSNRdB[1])); + + /*Rx Cfo_Short*/ + rtl_write_word(rtlpriv, RA_CFO_SHORT_DUMP, Adapter->RxStats.RxCfoShort[0]); + rtl_write_word(rtlpriv, RB_CFO_SHORT_DUMP, Adapter->RxStats.RxCfoShort[1]); + + /*Rx Cfo_Tail*/ + rtl_write_word(rtlpriv, RA_CFO_LONG_DUMP, Adapter->RxStats.RxCfoTail[0]); + rtl_write_word(rtlpriv, RB_CFO_LONG_DUMP, Adapter->RxStats.RxCfoTail[1]); + +} +#endif + +static void rtl8821ae_dm_check_rssi_monitor(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_sta_info *drv_priv; + u8 h2c_parameter[3] = { 0 }; + long tmp_entry_max_pwdb = 0, tmp_entry_min_pwdb = 0xff; + + + /* AP & ADHOC & MESH */ + spin_lock_bh(&rtlpriv->locks.entry_list_lock); + list_for_each_entry(drv_priv, &rtlpriv->entry_list, list) { + if(drv_priv->rssi_stat.undecorated_smoothed_pwdb < tmp_entry_min_pwdb) + tmp_entry_min_pwdb = drv_priv->rssi_stat.undecorated_smoothed_pwdb; + if(drv_priv->rssi_stat.undecorated_smoothed_pwdb > tmp_entry_max_pwdb) + tmp_entry_max_pwdb = drv_priv->rssi_stat.undecorated_smoothed_pwdb; + + /*h2c_parameter[2] = (u8) (rtlpriv->dm.undecorated_smoothed_pwdb & 0xFF); + h2c_parameter[1] = 0x20; + h2c_parameter[0] = drv_priv->rssi_stat; + rtl8821ae_fill_h2c_cmd(hw, H2C_RSSI_REPORT, 3, h2c_parameter);*/ + } + spin_unlock_bh(&rtlpriv->locks.entry_list_lock); + + /* If associated entry is found */ + if (tmp_entry_max_pwdb != 0) { + rtlpriv->dm.entry_max_undecoratedsmoothed_pwdb = tmp_entry_max_pwdb; + RTPRINT(rtlpriv, FDM, DM_PWDB, ("EntryMaxPWDB = 0x%lx(%ld)\n", + tmp_entry_max_pwdb, tmp_entry_max_pwdb)); + } else { + rtlpriv->dm.entry_max_undecoratedsmoothed_pwdb = 0; + } + /* If associated entry is found */ + if (tmp_entry_min_pwdb != 0xff) { + rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb = tmp_entry_min_pwdb; + RTPRINT(rtlpriv, FDM, DM_PWDB, ("EntryMinPWDB = 0x%lx(%ld)\n", + tmp_entry_min_pwdb, tmp_entry_min_pwdb)); + } else { + rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb = 0; + } + /* Indicate Rx signal strength to FW. */ + if (rtlpriv->dm.b_useramask) { + h2c_parameter[2] = (u8) (rtlpriv->dm.undecorated_smoothed_pwdb & 0xFF); + h2c_parameter[1] = 0x20; + h2c_parameter[0] = 0; + rtl8821ae_fill_h2c_cmd(hw, H2C_RSSI_REPORT, 3, h2c_parameter); + } else { + rtl_write_byte(rtlpriv, 0x4fe, rtlpriv->dm.undecorated_smoothed_pwdb); + } + rtl8821ae_dm_find_minimum_rssi(hw); + dm_digtable.rssi_val_min = rtlpriv->dm.dm_digtable.min_undecorated_pwdb_for_dm; +} + +void rtl8821ae_dm_write_cck_cca_thres(struct ieee80211_hw *hw, u8 current_cca) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (dm_digtable.cur_cck_cca_thres != current_cca) + rtl_write_byte(rtlpriv, DM_REG_CCK_CCA_11AC, current_cca); + + dm_digtable.pre_cck_cca_thres = dm_digtable.cur_cck_cca_thres; + dm_digtable.cur_cck_cca_thres = current_cca; +} + +void rtl8821ae_dm_write_dig(struct ieee80211_hw *hw, u8 current_igi) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + if(dm_digtable.stop_dig) + return; + + if (dm_digtable.cur_igvalue != current_igi){ + rtl_set_bbreg(hw, DM_REG_IGI_A_11AC, DM_BIT_IGI_11AC, current_igi); + if (rtlpriv->phy.rf_type != RF_1T1R) + rtl_set_bbreg(hw, DM_REG_IGI_B_11AC, DM_BIT_IGI_11AC, current_igi); + } + //dm_digtable.pre_igvalue = dm_digtable.cur_igvalue; + dm_digtable.cur_igvalue = current_igi; +} + +static void rtl8821ae_dm_dig(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 dig_dynamic_min; + u8 dig_max_of_min; + bool first_connect, first_disconnect; + u8 dm_dig_max, dm_dig_min, offset; + u8 current_igi =dm_digtable.cur_igvalue; + + + RT_TRACE(COMP_DIG, DBG_LOUD,("rtl8821ae_dm_dig()==>\n")); + + + if (mac->act_scanning == true) { + RT_TRACE(COMP_DIG, DBG_LOUD,("rtl8821ae_dm_dig() Return: In Scan Progress \n")); + return; + } + + /*add by Neil Chen to avoid PSD is processing*/ + dig_dynamic_min = dm_digtable.dig_dynamic_min_0; + first_connect = (mac->link_state >= MAC80211_LINKED) && + (dm_digtable.b_media_connect_0 == false); + first_disconnect = (mac->link_state < MAC80211_LINKED) && + (dm_digtable.b_media_connect_0 == true); + + /*1 Boundary Decision*/ + + + dm_dig_max = 0x5A; + + if (rtlhal->hw_type != HARDWARE_TYPE_RTL8821AE) + dm_dig_min = DM_DIG_MIN; + else + dm_dig_min = 0x1C; + + dig_max_of_min = DM_DIG_MAX_AP; + + if (mac->link_state >= MAC80211_LINKED) { + if (rtlhal->hw_type != HARDWARE_TYPE_RTL8821AE) + offset = 20; + else + offset = 10; + + if ((dm_digtable.rssi_val_min + offset) > dm_dig_max) + dm_digtable.rx_gain_range_max = dm_dig_max; + else if ((dm_digtable.rssi_val_min + offset) < dm_dig_min) + dm_digtable.rx_gain_range_max = dm_dig_min; + else + dm_digtable.rx_gain_range_max = dm_digtable.rssi_val_min + offset; + + if(rtlpriv->dm.b_one_entry_only){ + offset = 0; + + if (dm_digtable.rssi_val_min - offset < dm_dig_min) + dig_dynamic_min = dm_dig_min; + else if (dm_digtable.rssi_val_min - offset > dig_max_of_min) + dig_dynamic_min = dig_max_of_min; + else + dig_dynamic_min = dm_digtable.rssi_val_min - offset; + + RT_TRACE(COMP_DIG, DBG_LOUD, + ("rtl8821ae_dm_dig() : bOneEntryOnly=TRUE, dig_dynamic_min=0x%x\n", + dig_dynamic_min)); + RT_TRACE(COMP_DIG, DBG_LOUD, + ("rtl8821ae_dm_dig() : dm_digtable.rssi_val_min=%d",dm_digtable. + rssi_val_min)); + } else { + dig_dynamic_min = dm_dig_min; + } + } else { + dm_digtable.rx_gain_range_max = dm_dig_max; + dig_dynamic_min = dm_dig_min; + RT_TRACE(COMP_DIG, DBG_LOUD, + ("rtl8821ae_dm_dig() : No Link\n")); + } + + if (rtlpriv->falsealm_cnt.cnt_all > 10000) { + RT_TRACE(COMP_DIG, DBG_LOUD, + ("rtl8821ae_dm_dig(): Abnornally false alarm case. \n")); + + if (dm_digtable.large_fa_hit != 3) + dm_digtable.large_fa_hit++; + if (dm_digtable.forbidden_igi < current_igi) { + dm_digtable.forbidden_igi = current_igi; + dm_digtable.large_fa_hit = 1; + } + + if (dm_digtable.large_fa_hit >= 3) { + if((dm_digtable.forbidden_igi + 1) > dm_digtable.rx_gain_range_max) + dm_digtable.rx_gain_range_min = dm_digtable.rx_gain_range_max; + else + dm_digtable.rx_gain_range_min = (dm_digtable.forbidden_igi + 1); + dm_digtable.recover_cnt = 3600; + } + + } else { + /*Recovery mechanism for IGI lower bound*/ + if (dm_digtable.recover_cnt != 0) + dm_digtable.recover_cnt --; + else { + if (dm_digtable.large_fa_hit < 3) { + if ((dm_digtable.forbidden_igi -1) < dig_dynamic_min) { + dm_digtable.forbidden_igi = dig_dynamic_min; + dm_digtable.rx_gain_range_min = dig_dynamic_min; + RT_TRACE(COMP_DIG, DBG_LOUD, + ("rtl8821ae_dm_dig(): Normal Case: At Lower Bound\n")); + } else { + dm_digtable.forbidden_igi --; + dm_digtable.rx_gain_range_min = (dm_digtable.forbidden_igi + 1); + RT_TRACE(COMP_DIG, DBG_LOUD, + ("rtl8821ae_dm_dig(): Normal Case: Approach Lower Bound\n")); + } + } else { + dm_digtable.large_fa_hit = 0; + } + } + } + RT_TRACE(COMP_DIG, DBG_LOUD, + ("rtl8821ae_dm_dig(): pDM_DigTable->LargeFAHit=%d\n", + dm_digtable.large_fa_hit)); + + if (rtlpriv->dm.dbginfo.num_qry_beacon_pkt < 10) + dm_digtable.rx_gain_range_min = dm_dig_min; + + if (dm_digtable.rx_gain_range_min > dm_digtable.rx_gain_range_max) + dm_digtable.rx_gain_range_min = dm_digtable.rx_gain_range_max; + + /*Adjust initial gain by false alarm*/ + if (mac->link_state >= MAC80211_LINKED) { + RT_TRACE(COMP_DIG, DBG_LOUD, + ("rtl8821ae_dm_dig(): DIG AfterLink\n")); + if (first_connect) { + if (dm_digtable.rssi_val_min <= dig_max_of_min) + current_igi = dm_digtable.rssi_val_min; + else + current_igi = dig_max_of_min; + RT_TRACE(COMP_DIG, DBG_LOUD, + ("rtl8821ae_dm_dig: First Connect\n")); + } else { + if(rtlpriv->falsealm_cnt.cnt_all > DM_DIG_FA_TH2) + current_igi = current_igi + 4; + else if (rtlpriv->falsealm_cnt.cnt_all > DM_DIG_FA_TH1) + current_igi = current_igi + 2; + else if(rtlpriv->falsealm_cnt.cnt_all < DM_DIG_FA_TH0) + current_igi = current_igi - 2; + + if((rtlpriv->dm.dbginfo.num_qry_beacon_pkt < 10) + &&(rtlpriv->falsealm_cnt.cnt_all < DM_DIG_FA_TH1)) { + current_igi = dm_digtable.rx_gain_range_min; + RT_TRACE(COMP_DIG, DBG_LOUD, + ("rtl8821ae_dm_dig(): Beacon is less than 10 and FA is less than 768, IGI GOES TO 0x1E!!!!!!!!!!!!\n")); + } + } + } else{ + RT_TRACE(COMP_DIG, DBG_LOUD, + ("rtl8821ae_dm_dig(): DIG BeforeLink\n")); + if (first_disconnect){ + current_igi = dm_digtable.rx_gain_range_min; + RT_TRACE(COMP_DIG, DBG_LOUD, + ("rtl8821ae_dm_dig(): First DisConnect \n")); + } else { + /*2012.03.30 LukeLee: enable DIG before link but with very high thresholds*/ + if (rtlpriv->falsealm_cnt.cnt_all > 2000) + current_igi = current_igi + 4; + else if (rtlpriv->falsealm_cnt.cnt_all > 600) + current_igi = current_igi + 2; + else if(rtlpriv->falsealm_cnt.cnt_all < 300) + current_igi = current_igi - 2; + if (current_igi >= 0x3e) + current_igi = 0x3e; + RT_TRACE(COMP_DIG, DBG_LOUD,("rtl8821ae_dm_dig(): England DIG \n")); + } + } + RT_TRACE(COMP_DIG, DBG_LOUD, + ("rtl8821ae_dm_dig(): DIG End Adjust IGI\n")); + /* Check initial gain by upper/lower bound*/ + + if (current_igi > dm_digtable.rx_gain_range_max) + current_igi = dm_digtable.rx_gain_range_max; + if (current_igi < dm_digtable.rx_gain_range_min) + current_igi = dm_digtable.rx_gain_range_min; + + RT_TRACE(COMP_DIG, DBG_LOUD, + ("rtl8821ae_dm_dig(): rx_gain_range_max=0x%x, rx_gain_range_min=0x%x\n", + dm_digtable.rx_gain_range_max, dm_digtable.rx_gain_range_min)); + RT_TRACE(COMP_DIG, DBG_LOUD, + ("rtl8821ae_dm_dig(): TotalFA=%d\n", rtlpriv->falsealm_cnt.cnt_all)); + RT_TRACE(COMP_DIG, DBG_LOUD, + ("rtl8821ae_dm_dig(): CurIGValue=0x%x\n", current_igi)); + + rtl8821ae_dm_write_dig(hw, current_igi); + dm_digtable.b_media_connect_0= ((mac->link_state >= MAC80211_LINKED) ? true :false); + dm_digtable.dig_dynamic_min_0 = dig_dynamic_min; +} + +static void rtl8821ae_dm_common_info_self_update(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 cnt = 0; + struct rtl_sta_info *drv_priv; + + rtlpriv->dm.b_one_entry_only = false; + + if (rtlpriv->mac80211.opmode == NL80211_IFTYPE_STATION && + rtlpriv->mac80211.link_state >= MAC80211_LINKED) { + rtlpriv->dm.b_one_entry_only = true; + return; + } + + if (rtlpriv->mac80211.opmode == NL80211_IFTYPE_AP || + rtlpriv->mac80211.opmode == NL80211_IFTYPE_ADHOC || + rtlpriv->mac80211.opmode == NL80211_IFTYPE_MESH_POINT) { + spin_lock_bh(&rtlpriv->locks.entry_list_lock); + list_for_each_entry(drv_priv, &rtlpriv->entry_list, list) { + cnt ++; + } + spin_unlock_bh(&rtlpriv->locks.entry_list_lock); + + if (cnt == 1) + rtlpriv->dm.b_one_entry_only = true; + } +} + + +static void rtl8821ae_dm_false_alarm_counter_statistics(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct false_alarm_statistics *falsealm_cnt = &(rtlpriv->falsealm_cnt); + u32 cck_enable =0; + + /*read OFDM FA counter*/ + falsealm_cnt->cnt_ofdm_fail = rtl_get_bbreg(hw, ODM_REG_OFDM_FA_11AC, BMASKLWORD); + falsealm_cnt->cnt_cck_fail = rtl_get_bbreg(hw, ODM_REG_CCK_FA_11AC, BMASKLWORD); + + cck_enable = rtl_get_bbreg(hw, ODM_REG_BB_RX_PATH_11AC, BIT(28)); + if (cck_enable) /*if(pDM_Odm->pBandType == ODM_BAND_2_4G)*/ + falsealm_cnt->cnt_all = falsealm_cnt->cnt_ofdm_fail + falsealm_cnt->cnt_cck_fail; + else + falsealm_cnt->cnt_all = falsealm_cnt->cnt_ofdm_fail; + + /*reset OFDM FA coutner*/ + rtl_set_bbreg(hw, ODM_REG_OFDM_FA_RST_11AC, BIT(17), 1); + rtl_set_bbreg(hw, ODM_REG_OFDM_FA_RST_11AC, BIT(17), 0); + /* reset CCK FA counter*/ + rtl_set_bbreg(hw, ODM_REG_CCK_FA_RST_11AC, BIT(15), 0); + rtl_set_bbreg(hw, ODM_REG_CCK_FA_RST_11AC, BIT(15), 1); + + RT_TRACE(COMP_DIG, DBG_LOUD, ("Cnt_Cck_fail=%d\n", + falsealm_cnt->cnt_cck_fail)); + RT_TRACE(COMP_DIG, DBG_LOUD, ("cnt_ofdm_fail=%d\n", + falsealm_cnt->cnt_ofdm_fail)); + RT_TRACE(COMP_DIG, DBG_LOUD, ("Total False Alarm=%d\n", + falsealm_cnt->cnt_all)); +} + +void rtl8812ae_dm_check_txpower_tracking_thermalmeter( + struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + static u8 tm_trigger = 0; + + if (!rtlpriv->dm.btxpower_tracking) + return; + + if (!tm_trigger) { + rtl_set_rfreg(hw, RF90_PATH_A, RF_T_METER_88E, BIT(17)|BIT(16), 0x03); + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("Trigger 8812 Thermal Meter!!\n")); + tm_trigger = 1; + return; + } else { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("Schedule TxPowerTracking direct call!!\n")); + rtl8812ae_dm_txpower_tracking_callback_thermalmeter(hw); + tm_trigger = 0; + } +} + +static void rtl8821ae_dm_iq_calibrate(struct ieee80211_hw *hw) +{ + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + + if (mac->link_state >= MAC80211_LINKED) { + /*if ((*rtldm->p_channel != rtldm->pre_channel ) + && (!mac->act_scanning)) { + rtldm->pre_channel = *rtldm->p_channel; + rtldm->linked_interval = 0; + }*/ + + if(rtldm->linked_interval < 3) + rtldm->linked_interval ++; + + if(rtldm->linked_interval == 2) + { + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + rtl8812ae_phy_iq_calibrate(hw, false); + else + rtl8821ae_phy_iq_calibrate(hw, false); + } + } else { + rtldm->linked_interval = 0; + } +} + + +void rtl8812ae_get_delta_swing_table( + struct ieee80211_hw *hw, + u8 **temperature_up_a, + u8 **temperature_down_a, + u8 **temperature_up_b, + u8 **temperature_down_b + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + u8 channel = rtlphy->current_channel; + u8 rate = rtldm->tx_rate; + + + if ( 1 <= channel && channel <= 14) { + if (RX_HAL_IS_CCK_RATE(rate)) { + *temperature_up_a = rtldm->delta_swing_table_idx_24gccka_p; + *temperature_down_a = rtldm->delta_swing_table_idx_24gccka_n; + *temperature_up_b = rtldm->delta_swing_table_idx_24gcckb_p; + *temperature_down_b = rtldm->delta_swing_table_idx_24gcckb_n; + } else { + *temperature_up_a = rtldm->delta_swing_table_idx_24ga_p; + *temperature_down_a = rtldm->delta_swing_table_idx_24ga_n; + *temperature_up_b = rtldm->delta_swing_table_idx_24gb_p; + *temperature_down_b = rtldm->delta_swing_table_idx_24gb_n; + } + } else if ( 36 <= channel && channel <= 64) { + *temperature_up_a = rtldm->delta_swing_table_idx_5ga_p[0]; + *temperature_down_a = rtldm->delta_swing_table_idx_5ga_n[0]; + *temperature_up_b = rtldm->delta_swing_table_idx_5gb_p[0]; + *temperature_down_b = rtldm->delta_swing_table_idx_5gb_n[0]; + } else if ( 100 <= channel && channel <= 140) { + *temperature_up_a = rtldm->delta_swing_table_idx_5ga_p[1]; + *temperature_down_a = rtldm->delta_swing_table_idx_5ga_n[1]; + *temperature_up_b = rtldm->delta_swing_table_idx_5gb_p[1]; + *temperature_down_b = rtldm->delta_swing_table_idx_5gb_n[1]; + } else if ( 149 <= channel && channel <= 173) { + *temperature_up_a = rtldm->delta_swing_table_idx_5ga_p[2]; + *temperature_down_a = rtldm->delta_swing_table_idx_5ga_n[2]; + *temperature_up_b = rtldm->delta_swing_table_idx_5gb_p[2]; + *temperature_down_b = rtldm->delta_swing_table_idx_5gb_n[2]; + } else { + *temperature_up_a = (u8*)rtl8818e_delta_swing_table_idx_24gb_p_txpwrtrack; + *temperature_down_a =(u8*)rtl8818e_delta_swing_table_idx_24gb_n_txpwrtrack; + *temperature_up_b = (u8*)rtl8818e_delta_swing_table_idx_24gb_p_txpwrtrack; + *temperature_down_b = (u8*)rtl8818e_delta_swing_table_idx_24gb_n_txpwrtrack; + } + + return; +} + +void rtl8812ae_phy_lccalibrate( + struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, ("===> rtl8812ae_phy_lccalibrate\n")); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, ("<=== rtl8812ae_phy_lccalibrate\n")); + +} + +void rtl8812ae_dm_update_init_rate( + struct ieee80211_hw *hw, + u8 rate + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 p = 0; + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("Get C2H Command! Rate=0x%x\n", rate)); + + rtldm->tx_rate = rate; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE){ + rtl8821ae_dm_txpwr_track_set_pwr(hw, MIX_MODE, RF90_PATH_A, 0); + } + else + { + for (p = RF90_PATH_A; p < MAX_PATH_NUM_8812A; p++) + { + rtl8812ae_dm_txpwr_track_set_pwr(hw, BBSWING, p, 0); + } + } + +} + +u8 rtl8812ae_hw_rate_to_mrate( + struct ieee80211_hw *hw, + u8 rate + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 ret_rate = MGN_1M; + + + switch(rate) + { + case DESC_RATE1M: ret_rate = MGN_1M; break; + case DESC_RATE2M: ret_rate = MGN_2M; break; + case DESC_RATE5_5M: ret_rate = MGN_5_5M; break; + case DESC_RATE11M: ret_rate = MGN_11M; break; + case DESC_RATE6M: ret_rate = MGN_6M; break; + case DESC_RATE9M: ret_rate = MGN_9M; break; + case DESC_RATE12M: ret_rate = MGN_12M; break; + case DESC_RATE18M: ret_rate = MGN_18M; break; + case DESC_RATE24M: ret_rate = MGN_24M; break; + case DESC_RATE36M: ret_rate = MGN_36M; break; + case DESC_RATE48M: ret_rate = MGN_48M; break; + case DESC_RATE54M: ret_rate = MGN_54M; break; + case DESC_RATEMCS0: ret_rate = MGN_MCS0; break; + case DESC_RATEMCS1: ret_rate = MGN_MCS1; break; + case DESC_RATEMCS2: ret_rate = MGN_MCS2; break; + case DESC_RATEMCS3: ret_rate = MGN_MCS3; break; + case DESC_RATEMCS4: ret_rate = MGN_MCS4; break; + case DESC_RATEMCS5: ret_rate = MGN_MCS5; break; + case DESC_RATEMCS6: ret_rate = MGN_MCS6; break; + case DESC_RATEMCS7: ret_rate = MGN_MCS7; break; + case DESC_RATEMCS8: ret_rate = MGN_MCS8; break; + case DESC_RATEMCS9: ret_rate = MGN_MCS9; break; + case DESC_RATEMCS10: ret_rate = MGN_MCS10; break; + case DESC_RATEMCS11: ret_rate = MGN_MCS11; break; + case DESC_RATEMCS12: ret_rate = MGN_MCS12; break; + case DESC_RATEMCS13: ret_rate = MGN_MCS13; break; + case DESC_RATEMCS14: ret_rate = MGN_MCS14; break; + case DESC_RATEMCS15: ret_rate = MGN_MCS15; break; + case DESC_RATEVHT1SS_MCS0: ret_rate = MGN_VHT1SS_MCS0; break; + case DESC_RATEVHT1SS_MCS1: ret_rate = MGN_VHT1SS_MCS1; break; + case DESC_RATEVHT1SS_MCS2: ret_rate = MGN_VHT1SS_MCS2; break; + case DESC_RATEVHT1SS_MCS3: ret_rate = MGN_VHT1SS_MCS3; break; + case DESC_RATEVHT1SS_MCS4: ret_rate = MGN_VHT1SS_MCS4; break; + case DESC_RATEVHT1SS_MCS5: ret_rate = MGN_VHT1SS_MCS5; break; + case DESC_RATEVHT1SS_MCS6: ret_rate = MGN_VHT1SS_MCS6; break; + case DESC_RATEVHT1SS_MCS7: ret_rate = MGN_VHT1SS_MCS7; break; + case DESC_RATEVHT1SS_MCS8: ret_rate = MGN_VHT1SS_MCS8; break; + case DESC_RATEVHT1SS_MCS9: ret_rate = MGN_VHT1SS_MCS9; break; + case DESC_RATEVHT2SS_MCS0: ret_rate = MGN_VHT2SS_MCS0; break; + case DESC_RATEVHT2SS_MCS1: ret_rate = MGN_VHT2SS_MCS1; break; + case DESC_RATEVHT2SS_MCS2: ret_rate = MGN_VHT2SS_MCS2; break; + case DESC_RATEVHT2SS_MCS3: ret_rate = MGN_VHT2SS_MCS3; break; + case DESC_RATEVHT2SS_MCS4: ret_rate = MGN_VHT2SS_MCS4; break; + case DESC_RATEVHT2SS_MCS5: ret_rate = MGN_VHT2SS_MCS5; break; + case DESC_RATEVHT2SS_MCS6: ret_rate = MGN_VHT2SS_MCS6; break; + case DESC_RATEVHT2SS_MCS7: ret_rate = MGN_VHT2SS_MCS7; break; + case DESC_RATEVHT2SS_MCS8: ret_rate = MGN_VHT2SS_MCS8; break; + case DESC_RATEVHT2SS_MCS9: ret_rate = MGN_VHT2SS_MCS9; break; + + default: + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("HwRateToMRate8812(): Non supported Rate [%x]!!!\n",rate )); + break; + } + return ret_rate; +} + +/*----------------------------------------------------------------------------- + * Function: odm_TxPwrTrackSetPwr88E() + * + * Overview: 88E change all channel tx power accordign to flag. + * OFDM & CCK are all different. + * + * Input: NONE + * + * Output: NONE + * + * Return: NONE + * + * Revised History: + * When Who Remark + * 04/23/2012 MHC Create Version 0. + * + *---------------------------------------------------------------------------*/ +void rtl8812ae_dm_txpwr_track_set_pwr(struct ieee80211_hw *hw, + enum pwr_track_control_method method, u8 rf_path, u8 channel_mapped_index) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u32 final_bb_swing_idx[2]; + u8 pwr_tracking_limit = 26; /*+1.0dB*/ + u8 tx_rate = 0xFF; + s8 final_ofdm_swing_index = 0; + + if(rtldm->tx_rate != 0xFF) + tx_rate = rtl8812ae_hw_rate_to_mrate(hw, rtldm->tx_rate); + + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("===>rtl8812ae_dm_txpwr_track_set_pwr\n")); + + if(tx_rate != 0xFF) { /*20130429 Mimic Modify High Rate BBSwing Limit.*/ + /*CCK*/ + if((tx_rate >= MGN_1M) && (tx_rate <= MGN_11M)) + pwr_tracking_limit = 32; /*+4dB*/ + /*OFDM*/ + else if((tx_rate >= MGN_6M) && (tx_rate <= MGN_48M)) + pwr_tracking_limit = 30; /*+3dB*/ + else if(tx_rate == MGN_54M) + pwr_tracking_limit = 28; /*+2dB*/ + /*HT*/ + else if((tx_rate >= MGN_MCS0) && (tx_rate <= MGN_MCS2)) /*QPSK/BPSK*/ + pwr_tracking_limit = 34; /*+5dB*/ + else if((tx_rate >= MGN_MCS3) && (tx_rate <= MGN_MCS4)) /*16QAM*/ + pwr_tracking_limit = 30; /*+3dB*/ + else if((tx_rate >= MGN_MCS5) && (tx_rate <= MGN_MCS7)) /*64QAM*/ + pwr_tracking_limit = 28; /*+2dB*/ + + else if((tx_rate >= MGN_MCS8) && (tx_rate <= MGN_MCS10)) /*QPSK/BPSK*/ + pwr_tracking_limit = 34; /*+5dB*/ + else if((tx_rate >= MGN_MCS11) && (tx_rate <= MGN_MCS12)) /*16QAM*/ + pwr_tracking_limit = 30; /*+3dB*/ + else if((tx_rate >= MGN_MCS13) && (tx_rate <= MGN_MCS15)) /*64QAM*/ + pwr_tracking_limit = 28; /*+2dB*/ + + /*2 VHT*/ + else if((tx_rate >= MGN_VHT1SS_MCS0) && (tx_rate <= MGN_VHT1SS_MCS2)) /*QPSK/BPSK*/ + pwr_tracking_limit = 34; /*+5dB*/ + else if((tx_rate >= MGN_VHT1SS_MCS3) && (tx_rate <= MGN_VHT1SS_MCS4)) /*16QAM*/ + pwr_tracking_limit = 30; /*+3dB*/ + else if((tx_rate >= MGN_VHT1SS_MCS5)&&(tx_rate <= MGN_VHT1SS_MCS6)) /*64QAM*/ + pwr_tracking_limit = 28; /*+2dB*/ + else if(tx_rate == MGN_VHT1SS_MCS7) /*64QAM*/ + pwr_tracking_limit = 26; /*+1dB*/ + else if(tx_rate == MGN_VHT1SS_MCS8) /*256QAM*/ + pwr_tracking_limit = 24; /*+0dB*/ + else if(tx_rate == MGN_VHT1SS_MCS9) /*256QAM*/ + pwr_tracking_limit = 22; /*-1dB*/ + + else if((tx_rate >= MGN_VHT2SS_MCS0)&&(tx_rate <= MGN_VHT2SS_MCS2)) /*QPSK/BPSK*/ + pwr_tracking_limit = 34; /*+5dB*/ + else if((tx_rate >= MGN_VHT2SS_MCS3)&&(tx_rate <= MGN_VHT2SS_MCS4)) /*16QAM*/ + pwr_tracking_limit = 30; /*+3dB*/ + else if((tx_rate >= MGN_VHT2SS_MCS5)&&(tx_rate <= MGN_VHT2SS_MCS6)) /*64QAM*/ + pwr_tracking_limit = 28; /*+2dB*/ + else if(tx_rate == MGN_VHT2SS_MCS7) /*64QAM*/ + pwr_tracking_limit = 26; /*+1dB*/ + else if(tx_rate == MGN_VHT2SS_MCS8) /*256QAM*/ + pwr_tracking_limit = 24; /*+0dB*/ + else if(tx_rate == MGN_VHT2SS_MCS9) /*256QAM*/ + pwr_tracking_limit = 22; /*-1dB*/ + else + pwr_tracking_limit = 24; + } + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("TxRate=0x%x, PwrTrackingLimit=%d\n", tx_rate, pwr_tracking_limit)); + + + if (method == BBSWING) { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("===>rtl8812ae_dm_txpwr_track_set_pwr\n")); + + if (rf_path == RF90_PATH_A) { + final_bb_swing_idx[RF90_PATH_A] = + (rtldm->ofdm_index[RF90_PATH_A] > pwr_tracking_limit) ? + pwr_tracking_limit : rtldm->ofdm_index[RF90_PATH_A]; + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("pDM_Odm->RFCalibrateInfo.OFDM_index[ODM_RF_PATH_A]=%d, \ + pDM_Odm->RealBbSwingIdx[ODM_RF_PATH_A]=%d\n", + rtldm->ofdm_index[RF90_PATH_A], final_bb_swing_idx[RF90_PATH_A])); + + rtl_set_bbreg(hw, RA_TXSCALE, 0xFFE00000, rtl8812ae_txscaling_table[final_bb_swing_idx[RF90_PATH_A]]); + } else { + final_bb_swing_idx[RF90_PATH_B] = + rtldm->ofdm_index[RF90_PATH_B] > pwr_tracking_limit ? \ + pwr_tracking_limit : rtldm->ofdm_index[RF90_PATH_B]; + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("pDM_Odm->RFCalibrateInfo.OFDM_index[ODM_RF_PATH_B]=%d, \ + pDM_Odm->RealBbSwingIdx[ODM_RF_PATH_B]=%d\n", + rtldm->ofdm_index[RF90_PATH_B], final_bb_swing_idx[RF90_PATH_B])); + + rtl_set_bbreg(hw, RB_TXSCALE, 0xFFE00000, rtl8812ae_txscaling_table[final_bb_swing_idx[RF90_PATH_B]]); + } + } else if (method == MIX_MODE) { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("pDM_Odm->DefaultOfdmIndex=%d, \ + pDM_Odm->Aboslute_OFDMSwingIdx[RFPath]=%d, RF_Path = %d\n", + rtldm->default_ofdm_index, rtldm->aboslute_ofdm_swing_idx[rf_path], + rf_path )); + + + final_ofdm_swing_index = rtldm->default_ofdm_index + rtldm->aboslute_ofdm_swing_idx[rf_path]; + + if (rf_path == RF90_PATH_A) { + if(final_ofdm_swing_index > pwr_tracking_limit) { /*BBSwing higher then Limit*/ + + rtldm->remnant_cck_idx = final_ofdm_swing_index - pwr_tracking_limit; + /* CCK Follow the same compensate value as Path A*/ + rtldm->remnant_ofdm_swing_idx[rf_path] = final_ofdm_swing_index - pwr_tracking_limit; + + rtl_set_bbreg(hw, RA_TXSCALE, 0xFFE00000, rtl8812ae_txscaling_table[pwr_tracking_limit]); + + rtldm->modify_txagc_flag_path_a = true; + + /*Set TxAGC Page C{};*/ + rtl8821ae_phy_set_txpower_level_by_path(hw, rtlphy->current_channel, RF90_PATH_A); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Path_A Over BBSwing Limit , PwrTrackingLimit = %d , Remnant TxAGC Value = %d \n", + pwr_tracking_limit, rtldm->remnant_ofdm_swing_idx[rf_path])); + } else if (final_ofdm_swing_index < 0) { + rtldm->remnant_cck_idx = final_ofdm_swing_index; + /* CCK Follow the same compensate value as Path A*/ + rtldm->remnant_ofdm_swing_idx[rf_path] = final_ofdm_swing_index; + + rtl_set_bbreg(hw, RA_TXSCALE, 0xFFE00000, rtl8812ae_txscaling_table[0]); + + rtldm->modify_txagc_flag_path_a = true; + + /*Set TxAGC Page C{};*/ + rtl8821ae_phy_set_txpower_level_by_path(hw, rtlphy->current_channel, RF90_PATH_A); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Path_A Lower then BBSwing lower bound 0 , Remnant TxAGC Value = %d \n", + rtldm->remnant_ofdm_swing_idx[rf_path])); + } else { + rtl_set_bbreg(hw, RA_TXSCALE, 0xFFE00000, rtl8812ae_txscaling_table[final_ofdm_swing_index]); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Path_A Compensate with BBSwing , Final_OFDM_Swing_Index = %d \n", + final_ofdm_swing_index)); + + if(rtldm->modify_txagc_flag_path_a) { /*If TxAGC has changed, reset TxAGC again*/ + rtldm->remnant_cck_idx = 0; + rtldm->remnant_ofdm_swing_idx[rf_path] = 0; + + /*Set TxAGC Page C{};*/ + rtl8821ae_phy_set_txpower_level_by_path(hw, rtlphy->current_channel, RF90_PATH_A); + + rtldm->modify_txagc_flag_path_a = false; + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Path_A pDM_Odm->Modify_TxAGC_Flag = FALSE \n")); + } + } + } + + if (rf_path == RF90_PATH_B) { + if(final_ofdm_swing_index > pwr_tracking_limit) { /*BBSwing higher then Limit*/ + rtldm->remnant_ofdm_swing_idx[rf_path] = final_ofdm_swing_index - pwr_tracking_limit; + + rtl_set_bbreg(hw, RB_TXSCALE, 0xFFE00000, rtl8812ae_txscaling_table[pwr_tracking_limit]); + + rtldm->modify_txagc_flag_path_b = true; + + /*Set TxAGC Page E{};*/ + rtl8821ae_phy_set_txpower_level_by_path(hw, rtlphy->current_channel, RF90_PATH_B); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Path_B Over BBSwing Limit , PwrTrackingLimit = %d , Remnant TxAGC Value = %d \n", + pwr_tracking_limit, rtldm->remnant_ofdm_swing_idx[rf_path])); + } else if (final_ofdm_swing_index < 0) { + rtldm->remnant_ofdm_swing_idx[rf_path] = final_ofdm_swing_index; + + rtl_set_bbreg(hw, RB_TXSCALE, 0xFFE00000, rtl8812ae_txscaling_table[0]); + + rtldm->modify_txagc_flag_path_b = true; + + /*Set TxAGC Page E{};*/ + rtl8821ae_phy_set_txpower_level_by_path(hw, rtlphy->current_channel, RF90_PATH_B); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Path_B Lower then BBSwing lower bound 0 , Remnant TxAGC Value = %d \n", + rtldm->remnant_ofdm_swing_idx[rf_path] )); + } else { + rtl_set_bbreg(hw, RB_TXSCALE, 0xFFE00000, rtl8812ae_txscaling_table[final_ofdm_swing_index]); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Path_B Compensate with BBSwing , Final_OFDM_Swing_Index = %d \n", + final_ofdm_swing_index)); + + if(rtldm->modify_txagc_flag_path_b) { /*If TxAGC has changed, reset TxAGC again*/ + rtldm->remnant_ofdm_swing_idx[rf_path] = 0; + + /*Set TxAGC Page E{};*/ + rtl8821ae_phy_set_txpower_level_by_path(hw, rtlphy->current_channel, RF90_PATH_B); + + rtldm->modify_txagc_flag_path_b = false; + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Path_B pDM_Odm->Modify_TxAGC_Flag = FALSE \n")); + } + } + } + + } else { + return; + } +} + +void rtl8812ae_dm_txpower_tracking_callback_thermalmeter + (struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + u8 thermal_value = 0, delta, delta_lck, delta_iqk, p = 0, i = 0; + u8 thermal_value_avg_count = 0; + u32 thermal_value_avg = 0; + + u8 ofdm_min_index = 6; /*OFDM BB Swing should be less than +3.0dB, which is required by Arthur*/ + u8 index_for_channel = 0; /* GetRightChnlPlaceforIQK(pHalData->CurrentChannel)*/ + + /* 1. The following TWO tables decide the final index of OFDM/CCK swing table.*/ + u8 *delta_swing_table_idx_tup_a; + u8 *delta_swing_table_idx_tdown_a; + u8 *delta_swing_table_idx_tup_b; + u8 *delta_swing_table_idx_tdown_b; + + /*2. Initilization ( 7 steps in total )*/ + rtl8812ae_get_delta_swing_table(hw, (u8**)&delta_swing_table_idx_tup_a, + (u8**)&delta_swing_table_idx_tdown_a, + (u8**)&delta_swing_table_idx_tup_b, + (u8**)&delta_swing_table_idx_tdown_b); + + rtldm->btxpower_trackinginit = true; + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("===>rtl8812ae_dm_txpower_tracking_callback_thermalmeter, \ + \n pDM_Odm->BbSwingIdxCckBase: %d, pDM_Odm->BbSwingIdxOfdmBase[A]:\ + %d, pDM_Odm->DefaultOfdmIndex: %d\n", + rtldm->bb_swing_idx_cck_base, + rtldm->bb_swing_idx_ofdm_base[RF90_PATH_A], + rtldm->default_ofdm_index)); + + thermal_value = (u8)rtl_get_rfreg(hw, RF90_PATH_A, RF_T_METER_8812A, 0xfc00); /*0x42: RF Reg[15:10] 88E*/ + if( ! rtldm->txpower_track_control || rtlefuse->eeprom_thermalmeter == 0 || + rtlefuse->eeprom_thermalmeter == 0xFF) + return; + + + /* 3. Initialize ThermalValues of RFCalibrateInfo*/ + + if(rtlhal->reloadtxpowerindex) + { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("reload ofdm index for band switch\n")); + } + + /*4. Calculate average thermal meter*/ + rtldm->thermalvalue_avg[rtldm->thermalvalue_avg_index] = thermal_value; + rtldm->thermalvalue_avg_index++; + if(rtldm->thermalvalue_avg_index == AVG_THERMAL_NUM_8812A) + /*Average times = c.AverageThermalNum*/ + rtldm->thermalvalue_avg_index = 0; + + for(i = 0; i < AVG_THERMAL_NUM_8812A; i++) + { + if(rtldm->thermalvalue_avg[i]) + { + thermal_value_avg += rtldm->thermalvalue_avg[i]; + thermal_value_avg_count++; + } + } + + if(thermal_value_avg_count) /*Calculate Average ThermalValue after average enough times*/ + { + thermal_value = (u8)(thermal_value_avg / thermal_value_avg_count); + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("AVG Thermal Meter = 0x%X, EFUSE Thermal Base = 0x%X\n", + thermal_value, rtlefuse->eeprom_thermalmeter)); + } + + /*5. Calculate delta, delta_LCK, delta_IQK.*/ + /*"delta" here is used to determine whether thermal value changes or not.*/ + delta = (thermal_value > rtldm->thermalvalue) ? \ + (thermal_value - rtldm->thermalvalue): \ + (rtldm->thermalvalue - thermal_value); + delta_lck = (thermal_value > rtldm->thermalvalue_lck) ? \ + (thermal_value - rtldm->thermalvalue_lck) : \ + (rtldm->thermalvalue_lck - thermal_value); + delta_iqk = (thermal_value > rtldm->thermalvalue_iqk) ? \ + (thermal_value - rtldm->thermalvalue_iqk) : \ + (rtldm->thermalvalue_iqk - thermal_value); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("(delta, delta_LCK, delta_IQK) = (%d, %d, %d)\n", + delta, delta_lck, delta_iqk)); + + /* 6. If necessary, do LCK. */ + + if (delta_lck >= IQK_THRESHOLD) /*Delta temperature is equal to or larger than 20 centigrade.*/ + { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("delta_LCK(%d) >= Threshold_IQK(%d)\n", + delta_lck, IQK_THRESHOLD)); + rtldm->thermalvalue_lck = thermal_value; + rtl8812ae_phy_lccalibrate(hw); + } + + /*7. If necessary, move the index of swing table to adjust Tx power.*/ + + if (delta > 0 && rtldm->txpower_track_control) + { + /*"delta" here is used to record the absolute value of differrence.*/ + delta = thermal_value > rtlefuse->eeprom_thermalmeter ? \ + (thermal_value - rtlefuse->eeprom_thermalmeter) : \ + (rtlefuse->eeprom_thermalmeter - thermal_value); + + if (delta >= TXPWR_TRACK_TABLE_SIZE) + delta = TXPWR_TRACK_TABLE_SIZE - 1; + + /*7.1 The Final Power Index = BaseIndex + PowerIndexOffset*/ + + if(thermal_value > rtlefuse->eeprom_thermalmeter) { + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("delta_swing_table_idx_tup_a[%d] = %d\n", + delta, delta_swing_table_idx_tup_a[delta])); + rtldm->delta_power_index_last[RF90_PATH_A] = rtldm->delta_power_index[RF90_PATH_A]; + rtldm->delta_power_index[RF90_PATH_A] = delta_swing_table_idx_tup_a[delta]; + + rtldm->aboslute_ofdm_swing_idx[RF90_PATH_A] = delta_swing_table_idx_tup_a[delta]; + /*Record delta swing for mix mode power tracking*/ + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Temp is higher and pDM_Odm->Aboslute_OFDMSwingIdx[ODM_RF_PATH_A] = %d\n", + rtldm->aboslute_ofdm_swing_idx[RF90_PATH_A])); + + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("delta_swing_table_idx_tup_b[%d] = %d\n", + delta, delta_swing_table_idx_tup_b[delta])); + rtldm->delta_power_index_last[RF90_PATH_B] = rtldm->delta_power_index[RF90_PATH_B]; + rtldm->delta_power_index[RF90_PATH_B] = delta_swing_table_idx_tup_b[delta]; + + rtldm->aboslute_ofdm_swing_idx[RF90_PATH_B] = delta_swing_table_idx_tup_b[delta]; + /*Record delta swing for mix mode power tracking*/ + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Temp is higher and pDM_Odm->Aboslute_OFDMSwingIdx[ODM_RF_PATH_B] = %d\n", + rtldm->aboslute_ofdm_swing_idx[RF90_PATH_B])); + + } else { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("delta_swing_table_idx_tdown_a[%d] = %d\n", + delta, delta_swing_table_idx_tdown_a[delta])); + + rtldm->delta_power_index_last[RF90_PATH_A] = rtldm->delta_power_index[RF90_PATH_A]; + rtldm->delta_power_index[RF90_PATH_A] = -1 * delta_swing_table_idx_tdown_a[delta]; + + rtldm->aboslute_ofdm_swing_idx[RF90_PATH_A] = -1 * delta_swing_table_idx_tdown_a[delta]; + /* Record delta swing for mix mode power tracking*/ + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Temp is lower and pDM_Odm->Aboslute_OFDMSwingIdx[ODM_RF_PATH_A] = %d\n", + rtldm->aboslute_ofdm_swing_idx[RF90_PATH_A])); + + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("deltaSwingTableIdx_TDOWN_B[%d] = %d\n", + delta, delta_swing_table_idx_tdown_b[delta])); + + rtldm->delta_power_index_last[RF90_PATH_B] = rtldm->delta_power_index[RF90_PATH_B]; + rtldm->delta_power_index[RF90_PATH_B] = -1 * delta_swing_table_idx_tdown_b[delta]; + + rtldm->aboslute_ofdm_swing_idx[RF90_PATH_B] = -1 * delta_swing_table_idx_tdown_b[delta]; + /*Record delta swing for mix mode power tracking*/ + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Temp is lower and pDM_Odm->Aboslute_OFDMSwingIdx[ODM_RF_PATH_B] = %d\n", + rtldm->aboslute_ofdm_swing_idx[RF90_PATH_B])); + } + + for (p = RF90_PATH_A; p < MAX_PATH_NUM_8812A; p++) + { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("\n\n================================ [Path-%c] \ + Calculating PowerIndexOffset ================================\n", + (p == RF90_PATH_A ? 'A' : 'B'))); + + if (rtldm->delta_power_index[p] == rtldm->delta_power_index_last[p]) + /*If Thermal value changes but lookup table value still the same*/ + rtldm->power_index_offset[p] = 0; + else + rtldm->power_index_offset[p] = + rtldm->delta_power_index[p] - rtldm->delta_power_index_last[p]; + /*Power Index Diff between 2 times Power Tracking*/ + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("[Path-%c] PowerIndexOffset(%d) = DeltaPowerIndex(%d) - DeltaPowerIndexLast(%d)\n", + (p == RF90_PATH_A ? 'A' : 'B'), + rtldm->power_index_offset[p], + rtldm->delta_power_index[p] , + rtldm->delta_power_index_last[p])); + + rtldm->ofdm_index[p] = + rtldm->bb_swing_idx_ofdm_base[p] + rtldm->power_index_offset[p]; + rtldm->cck_index = + rtldm->bb_swing_idx_cck_base + rtldm->power_index_offset[p]; + + rtldm->bb_swing_idx_cck = rtldm->cck_index; + rtldm->bb_swing_idx_ofdm[p] = rtldm->ofdm_index[p]; + + /*************Print BB Swing Base and Index Offset*************/ + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("The 'CCK' final index(%d) = BaseIndex(%d) + PowerIndexOffset(%d)\n", + rtldm->bb_swing_idx_cck, + rtldm->bb_swing_idx_cck_base, + rtldm->power_index_offset[p])); + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("The 'OFDM' final index(%d) = BaseIndex[%c](%d) + PowerIndexOffset(%d)\n", + rtldm->bb_swing_idx_ofdm[p], + (p == RF90_PATH_A ? 'A' : 'B'), + rtldm->bb_swing_idx_ofdm_base[p], + rtldm->power_index_offset[p])); + + /*7.1 Handle boundary conditions of index.*/ + + + if(rtldm->ofdm_index[p] > TXSCALE_TABLE_SIZE -1) + { + rtldm->ofdm_index[p] = TXSCALE_TABLE_SIZE -1; + } + else if (rtldm->ofdm_index[p] < ofdm_min_index) + { + rtldm->ofdm_index[p] = ofdm_min_index; + } + } + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("\n\n======================================================\ + ==================================================\n")); + if(rtldm->cck_index > TXSCALE_TABLE_SIZE -1) + rtldm->cck_index = TXSCALE_TABLE_SIZE -1; + else if (rtldm->cck_index < 0) + rtldm->cck_index = 0; + } else { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("The thermal meter is unchanged or TxPowerTracking OFF(%d): \ + ThermalValue: %d , pDM_Odm->RFCalibrateInfo.ThermalValue: %d\n", + rtldm->txpower_track_control, + thermal_value, + rtldm->thermalvalue)); + + for (p = RF90_PATH_A; p < MAX_PATH_NUM_8812A; p++) + rtldm->power_index_offset[p] = 0; + } + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("TxPowerTracking: [CCK] Swing Current Index: %d, Swing Base Index: %d\n", + rtldm->cck_index, rtldm->bb_swing_idx_cck_base)); /*Print Swing base & current*/ + for (p = RF90_PATH_A; p < MAX_PATH_NUM_8812A; p++) + { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("TxPowerTracking: [OFDM] Swing Current Index: %d, Swing Base Index[%c]: %d\n", + rtldm->ofdm_index[p], + (p == RF90_PATH_A ? 'A' : 'B'), + rtldm->bb_swing_idx_ofdm_base[p])); + } + + if ((rtldm->power_index_offset[RF90_PATH_A] != 0 || + rtldm->power_index_offset[RF90_PATH_B] != 0 ) && + rtldm->txpower_track_control) + { + /*7.2 Configure the Swing Table to adjust Tx Power.*/ + /*Always TRUE after Tx Power is adjusted by power tracking.*/ + /* + 2012/04/23 MH According to Luke's suggestion, we can not write BB digital + to increase TX power. Otherwise, EVM will be bad. + + 2012/04/25 MH Add for tx power tracking to set tx power in tx agc for 88E. + */ + if (thermal_value > rtldm->thermalvalue) + { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("Temperature Increasing(A): delta_pi: %d , delta_t: %d, Now_t: %d, EFUSE_t: %d, Last_t: %d\n", + rtldm->power_index_offset[RF90_PATH_A], + delta, thermal_value, + rtlefuse->eeprom_thermalmeter, + rtldm->thermalvalue)); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("Temperature Increasing(B): delta_pi: %d , delta_t: %d, Now_t: %d, EFUSE_t: %d, Last_t: %d\n", + rtldm->power_index_offset[RF90_PATH_B], + delta, thermal_value, + rtlefuse->eeprom_thermalmeter, + rtldm->thermalvalue)); + + } else if (thermal_value < rtldm->thermalvalue) { /*Low temperature*/ + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("Temperature Decreasing(A): delta_pi: %d , delta_t: %d, Now_t: %d, EFUSE_t: %d, Last_t: %d\n", + rtldm->power_index_offset[RF90_PATH_A], + delta, thermal_value, + rtlefuse->eeprom_thermalmeter, + rtldm->thermalvalue)); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("Temperature Decreasing(B): delta_pi: %d , delta_t: %d, Now_t: %d, EFUSE_t: %d, Last_t: %d\n", + rtldm->power_index_offset[RF90_PATH_B], + delta, thermal_value, + rtlefuse->eeprom_thermalmeter, + rtldm->thermalvalue)); + } + + if (thermal_value > rtlefuse->eeprom_thermalmeter) { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("Temperature(%d) higher than PG value(%d)\n", + thermal_value, rtlefuse->eeprom_thermalmeter)); + + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("**********Enter POWER Tracking MIX_MODE**********\n")); + for (p = RF90_PATH_A; p < MAX_PATH_NUM_8812A; p++) + rtl8812ae_dm_txpwr_track_set_pwr(hw, MIX_MODE, p, 0); + + } else { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("Temperature(%d) lower than PG value(%d)\n", + thermal_value, rtlefuse->eeprom_thermalmeter)); + + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("**********Enter POWER Tracking MIX_MODE**********\n")); + for (p = RF90_PATH_A; p < MAX_PATH_NUM_8812A; p++) + rtl8812ae_dm_txpwr_track_set_pwr(hw, MIX_MODE, p, index_for_channel); + + } + + rtldm->bb_swing_idx_cck_base = rtldm->bb_swing_idx_cck; /*Record last time Power Tracking result as base.*/ + for (p = RF90_PATH_A; p < MAX_PATH_NUM_8812A; p++) + rtldm->bb_swing_idx_ofdm_base[p] = rtldm->bb_swing_idx_ofdm[p]; + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("pDM_Odm->RFCalibrateInfo.ThermalValue = %d ThermalValue= %d\n", + rtldm->thermalvalue, thermal_value)); + + rtldm->thermalvalue = thermal_value; /*Record last Power Tracking Thermal Value*/ + + } + /*Delta temperature is equal to or larger than 20 centigrade (When threshold is 8).*/ + if ((delta_iqk >= IQK_THRESHOLD)) { + + if ( !rtlphy->b_iqk_in_progress) { + + spin_lock(&rtlpriv->locks.iqk_lock); + rtlphy->b_iqk_in_progress = true; + spin_unlock(&rtlpriv->locks.iqk_lock); + + rtl8812ae_do_iqk(hw, delta_iqk, thermal_value, 8); + + spin_lock(&rtlpriv->locks.iqk_lock); + rtlphy->b_iqk_in_progress = false; + spin_unlock(&rtlpriv->locks.iqk_lock); + } + } + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("<===rtl8812ae_dm_txpower_tracking_callback_thermalmeter\n")); +} + + +void rtl8821ae_get_delta_swing_table( + struct ieee80211_hw *hw, + u8 **temperature_up_a, + u8 **temperature_down_a, + u8 **temperature_up_b, + u8 **temperature_down_b + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + u8 channel = rtlphy->current_channel; + u8 rate = rtldm->tx_rate; + + + if ( 1 <= channel && channel <= 14) { + if (RX_HAL_IS_CCK_RATE(rate)) { + *temperature_up_a = rtldm->delta_swing_table_idx_24gccka_p; + *temperature_down_a = rtldm->delta_swing_table_idx_24gccka_n; + *temperature_up_b = rtldm->delta_swing_table_idx_24gcckb_p; + *temperature_down_b = rtldm->delta_swing_table_idx_24gcckb_n; + } else { + *temperature_up_a = rtldm->delta_swing_table_idx_24ga_p; + *temperature_down_a = rtldm->delta_swing_table_idx_24ga_n; + *temperature_up_b = rtldm->delta_swing_table_idx_24gb_p; + *temperature_down_b = rtldm->delta_swing_table_idx_24gb_n; + } + } else if ( 36 <= channel && channel <= 64) { + *temperature_up_a = rtldm->delta_swing_table_idx_5ga_p[0]; + *temperature_down_a = rtldm->delta_swing_table_idx_5ga_n[0]; + *temperature_up_b = rtldm->delta_swing_table_idx_5gb_p[0]; + *temperature_down_b = rtldm->delta_swing_table_idx_5gb_n[0]; + } else if ( 100 <= channel && channel <= 140) { + *temperature_up_a = rtldm->delta_swing_table_idx_5ga_p[1]; + *temperature_down_a = rtldm->delta_swing_table_idx_5ga_n[1]; + *temperature_up_b = rtldm->delta_swing_table_idx_5gb_p[1]; + *temperature_down_b = rtldm->delta_swing_table_idx_5gb_n[1]; + } else if ( 149 <= channel && channel <= 173) { + *temperature_up_a = rtldm->delta_swing_table_idx_5ga_p[2]; + *temperature_down_a = rtldm->delta_swing_table_idx_5ga_n[2]; + *temperature_up_b = rtldm->delta_swing_table_idx_5gb_p[2]; + *temperature_down_b = rtldm->delta_swing_table_idx_5gb_n[2]; + } else { + *temperature_up_a = (u8*)rtl8818e_delta_swing_table_idx_24gb_p_txpwrtrack; + *temperature_down_a =(u8*)rtl8818e_delta_swing_table_idx_24gb_n_txpwrtrack; + *temperature_up_b = (u8*)rtl8818e_delta_swing_table_idx_24gb_p_txpwrtrack; + *temperature_down_b = (u8*)rtl8818e_delta_swing_table_idx_24gb_n_txpwrtrack; + } + + return; +} + +void rtl8821ae_phy_lccalibrate( + struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, ("===> rtl8812ae_phy_lccalibrate\n")); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, ("<=== rtl8812ae_phy_lccalibrate\n")); + +} + +/*----------------------------------------------------------------------------- + * Function: odm_TxPwrTrackSetPwr88E() + * + * Overview: 88E change all channel tx power accordign to flag. + * OFDM & CCK are all different. + * + * Input: NONE + * + * Output: NONE + * + * Return: NONE + * + * Revised History: + * When Who Remark + * 04/23/2012 MHC Create Version 0. + * + *---------------------------------------------------------------------------*/ +void rtl8821ae_dm_txpwr_track_set_pwr(struct ieee80211_hw *hw, + enum pwr_track_control_method method, u8 rf_path, u8 channel_mapped_index) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u32 final_bb_swing_idx[1]; + u8 pwr_tracking_limit = 26; /*+1.0dB*/ + u8 tx_rate = 0xFF; + s8 final_ofdm_swing_index = 0; + + if(rtldm->tx_rate != 0xFF) + tx_rate = rtl8812ae_hw_rate_to_mrate(hw, rtldm->tx_rate); + + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("===>rtl8812ae_dm_txpwr_track_set_pwr\n")); + + if(tx_rate != 0xFF) { /*20130429 Mimic Modify High Rate BBSwing Limit.*/ + /*CCK*/ + if((tx_rate >= MGN_1M) && (tx_rate <= MGN_11M)) + pwr_tracking_limit = 32; /*+4dB*/ + /*OFDM*/ + else if((tx_rate >= MGN_6M) && (tx_rate <= MGN_48M)) + pwr_tracking_limit = 30; /*+3dB*/ + else if(tx_rate == MGN_54M) + pwr_tracking_limit = 28; /*+2dB*/ + /*HT*/ + else if((tx_rate >= MGN_MCS0) && (tx_rate <= MGN_MCS2)) /*QPSK/BPSK*/ + pwr_tracking_limit = 34; /*+5dB*/ + else if((tx_rate >= MGN_MCS3) && (tx_rate <= MGN_MCS4)) /*16QAM*/ + pwr_tracking_limit = 30; /*+3dB*/ + else if((tx_rate >= MGN_MCS5) && (tx_rate <= MGN_MCS7)) /*64QAM*/ + pwr_tracking_limit = 28; /*+2dB*/ +#if 0 + else if((tx_rate >= MGN_MCS8) && (tx_rate <= MGN_MCS10)) /*QPSK/BPSK*/ + pwr_tracking_limit = 34; /*+5dB*/ + else if((tx_rate >= MGN_MCS11) && (tx_rate <= MGN_MCS12)) /*16QAM*/ + pwr_tracking_limit = 30; /*+3dB*/ + else if((tx_rate >= MGN_MCS13) && (tx_rate <= MGN_MCS15)) /*64QAM*/ + pwr_tracking_limit = 28; /*+2dB*/ +#endif + /*2 VHT*/ + else if((tx_rate >= MGN_VHT1SS_MCS0) && (tx_rate <= MGN_VHT1SS_MCS2)) /*QPSK/BPSK*/ + pwr_tracking_limit = 34; /*+5dB*/ + else if((tx_rate >= MGN_VHT1SS_MCS3) && (tx_rate <= MGN_VHT1SS_MCS4)) /*16QAM*/ + pwr_tracking_limit = 30; /*+3dB*/ + else if((tx_rate >= MGN_VHT1SS_MCS5)&&(tx_rate <= MGN_VHT1SS_MCS6)) /*64QAM*/ + pwr_tracking_limit = 28; /*+2dB*/ + else if(tx_rate == MGN_VHT1SS_MCS7) /*64QAM*/ + pwr_tracking_limit = 26; /*+1dB*/ + else if(tx_rate == MGN_VHT1SS_MCS8) /*256QAM*/ + pwr_tracking_limit = 24; /*+0dB*/ + else if(tx_rate == MGN_VHT1SS_MCS9) /*256QAM*/ + pwr_tracking_limit = 22; /*-1dB*/ + else + pwr_tracking_limit = 24; + } + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("TxRate=0x%x, PwrTrackingLimit=%d\n", tx_rate, pwr_tracking_limit)); + + + if (method == BBSWING) { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("===>rtl8812ae_dm_txpwr_track_set_pwr\n")); + + if (rf_path == RF90_PATH_A) { + final_bb_swing_idx[RF90_PATH_A] = + (rtldm->ofdm_index[RF90_PATH_A] > pwr_tracking_limit) ? + pwr_tracking_limit : rtldm->ofdm_index[RF90_PATH_A]; + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("pDM_Odm->RFCalibrateInfo.OFDM_index[ODM_RF_PATH_A]=%d, \ + pDM_Odm->RealBbSwingIdx[ODM_RF_PATH_A]=%d\n", + rtldm->ofdm_index[RF90_PATH_A], final_bb_swing_idx[RF90_PATH_A])); + + rtl_set_bbreg(hw, RA_TXSCALE, 0xFFE00000, rtl8812ae_txscaling_table[final_bb_swing_idx[RF90_PATH_A]]); + } + } else if (method == MIX_MODE) { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("pDM_Odm->DefaultOfdmIndex=%d, \ + pDM_Odm->Aboslute_OFDMSwingIdx[RFPath]=%d, RF_Path = %d\n", + rtldm->default_ofdm_index, rtldm->aboslute_ofdm_swing_idx[rf_path], + rf_path )); + + + final_ofdm_swing_index = rtldm->default_ofdm_index + rtldm->aboslute_ofdm_swing_idx[rf_path]; + + if (rf_path == RF90_PATH_A) { + if(final_ofdm_swing_index > pwr_tracking_limit) { /*BBSwing higher then Limit*/ + + rtldm->remnant_cck_idx = final_ofdm_swing_index - pwr_tracking_limit; + /* CCK Follow the same compensate value as Path A*/ + rtldm->remnant_ofdm_swing_idx[rf_path] = final_ofdm_swing_index - pwr_tracking_limit; + + rtl_set_bbreg(hw, RA_TXSCALE, 0xFFE00000, rtl8812ae_txscaling_table[pwr_tracking_limit]); + + rtldm->modify_txagc_flag_path_a = true; + + /*Set TxAGC Page C{};*/ + rtl8821ae_phy_set_txpower_level_by_path(hw, rtlphy->current_channel, RF90_PATH_A); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Path_A Over BBSwing Limit , PwrTrackingLimit = %d , Remnant TxAGC Value = %d \n", + pwr_tracking_limit, rtldm->remnant_ofdm_swing_idx[rf_path])); + } else if (final_ofdm_swing_index < 0) { + rtldm->remnant_cck_idx = final_ofdm_swing_index; + /* CCK Follow the same compensate value as Path A*/ + rtldm->remnant_ofdm_swing_idx[rf_path] = final_ofdm_swing_index; + + rtl_set_bbreg(hw, RA_TXSCALE, 0xFFE00000, rtl8812ae_txscaling_table[0]); + + rtldm->modify_txagc_flag_path_a = true; + + /*Set TxAGC Page C{};*/ + rtl8821ae_phy_set_txpower_level_by_path(hw, rtlphy->current_channel, RF90_PATH_A); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Path_A Lower then BBSwing lower bound 0 , Remnant TxAGC Value = %d \n", + rtldm->remnant_ofdm_swing_idx[rf_path])); + } else { + rtl_set_bbreg(hw, RA_TXSCALE, 0xFFE00000, rtl8812ae_txscaling_table[final_ofdm_swing_index]); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Path_A Compensate with BBSwing , Final_OFDM_Swing_Index = %d \n", + final_ofdm_swing_index)); + + if(rtldm->modify_txagc_flag_path_a) { /*If TxAGC has changed, reset TxAGC again*/ + rtldm->remnant_cck_idx = 0; + rtldm->remnant_ofdm_swing_idx[rf_path] = 0; + + /*Set TxAGC Page C{};*/ + rtl8821ae_phy_set_txpower_level_by_path(hw, rtlphy->current_channel, RF90_PATH_A); + + rtldm->modify_txagc_flag_path_a = false; + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Path_A pDM_Odm->Modify_TxAGC_Flag = FALSE \n")); + } + } + } + + } else { + return; + } +} + + +void rtl8821ae_dm_txpower_tracking_callback_thermalmeter + (struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + u8 thermal_value = 0, delta, delta_lck, delta_iqk, p = 0, i = 0; + u8 thermal_value_avg_count = 0; + u32 thermal_value_avg = 0; + + u8 ofdm_min_index = 6; /*OFDM BB Swing should be less than +3.0dB, which is required by Arthur*/ + u8 index_for_channel = 0; /* GetRightChnlPlaceforIQK(pHalData->CurrentChannel)*/ + + /* 1. The following TWO tables decide the final index of OFDM/CCK swing table.*/ + u8 *delta_swing_table_idx_tup_a; + u8 *delta_swing_table_idx_tdown_a; + u8 *delta_swing_table_idx_tup_b; + u8 *delta_swing_table_idx_tdown_b; + + /*2. Initilization ( 7 steps in total )*/ + rtl8821ae_get_delta_swing_table(hw, (u8**)&delta_swing_table_idx_tup_a, + (u8**)&delta_swing_table_idx_tdown_a, + (u8**)&delta_swing_table_idx_tup_b, + (u8**)&delta_swing_table_idx_tdown_b); + + rtldm->btxpower_trackinginit = true; + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("===>rtl8812ae_dm_txpower_tracking_callback_thermalmeter, \ + \n pDM_Odm->BbSwingIdxCckBase: %d, pDM_Odm->BbSwingIdxOfdmBase[A]:\ + %d, pDM_Odm->DefaultOfdmIndex: %d\n", + rtldm->bb_swing_idx_cck_base, + rtldm->bb_swing_idx_ofdm_base[RF90_PATH_A], + rtldm->default_ofdm_index)); + + thermal_value = (u8)rtl_get_rfreg(hw, RF90_PATH_A, RF_T_METER_8812A, 0xfc00); /*0x42: RF Reg[15:10] 88E*/ + if( ! rtldm->txpower_track_control || rtlefuse->eeprom_thermalmeter == 0 || + rtlefuse->eeprom_thermalmeter == 0xFF) + return; + + + /* 3. Initialize ThermalValues of RFCalibrateInfo*/ + + if(rtlhal->reloadtxpowerindex) + { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("reload ofdm index for band switch\n")); + } + + /*4. Calculate average thermal meter*/ + rtldm->thermalvalue_avg[rtldm->thermalvalue_avg_index] = thermal_value; + rtldm->thermalvalue_avg_index++; + if(rtldm->thermalvalue_avg_index == AVG_THERMAL_NUM_8812A) + /*Average times = c.AverageThermalNum*/ + rtldm->thermalvalue_avg_index = 0; + + for(i = 0; i < AVG_THERMAL_NUM_8812A; i++) + { + if(rtldm->thermalvalue_avg[i]) + { + thermal_value_avg += rtldm->thermalvalue_avg[i]; + thermal_value_avg_count++; + } + } + + if(thermal_value_avg_count) /*Calculate Average ThermalValue after average enough times*/ + { + thermal_value = (u8)(thermal_value_avg / thermal_value_avg_count); + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("AVG Thermal Meter = 0x%X, EFUSE Thermal Base = 0x%X\n", + thermal_value, rtlefuse->eeprom_thermalmeter)); + } + + /*5. Calculate delta, delta_LCK, delta_IQK.*/ + /*"delta" here is used to determine whether thermal value changes or not.*/ + delta = (thermal_value > rtldm->thermalvalue) ? \ + (thermal_value - rtldm->thermalvalue): \ + (rtldm->thermalvalue - thermal_value); + delta_lck = (thermal_value > rtldm->thermalvalue_lck) ? \ + (thermal_value - rtldm->thermalvalue_lck) : \ + (rtldm->thermalvalue_lck - thermal_value); + delta_iqk = (thermal_value > rtldm->thermalvalue_iqk) ? \ + (thermal_value - rtldm->thermalvalue_iqk) : \ + (rtldm->thermalvalue_iqk - thermal_value); + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("(delta, delta_LCK, delta_IQK) = (%d, %d, %d)\n", + delta, delta_lck, delta_iqk)); + + /* 6. If necessary, do LCK. */ + + if (delta_lck >= IQK_THRESHOLD) /*Delta temperature is equal to or larger than 20 centigrade.*/ + { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("delta_LCK(%d) >= Threshold_IQK(%d)\n", + delta_lck, IQK_THRESHOLD)); + rtldm->thermalvalue_lck = thermal_value; + rtl8821ae_phy_lccalibrate(hw); + } + + /*7. If necessary, move the index of swing table to adjust Tx power.*/ + + if (delta > 0 && rtldm->txpower_track_control) + { + /*"delta" here is used to record the absolute value of differrence.*/ + delta = thermal_value > rtlefuse->eeprom_thermalmeter ? \ + (thermal_value - rtlefuse->eeprom_thermalmeter) : \ + (rtlefuse->eeprom_thermalmeter - thermal_value); + + if (delta >= TXSCALE_TABLE_SIZE) + delta = TXSCALE_TABLE_SIZE - 1; + + /*7.1 The Final Power Index = BaseIndex + PowerIndexOffset*/ + + if(thermal_value > rtlefuse->eeprom_thermalmeter) { + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("delta_swing_table_idx_tup_a[%d] = %d\n", + delta, delta_swing_table_idx_tup_a[delta])); + rtldm->delta_power_index_last[RF90_PATH_A] = rtldm->delta_power_index[RF90_PATH_A]; + rtldm->delta_power_index[RF90_PATH_A] = delta_swing_table_idx_tup_a[delta]; + + rtldm->aboslute_ofdm_swing_idx[RF90_PATH_A] = delta_swing_table_idx_tup_a[delta]; + /*Record delta swing for mix mode power tracking*/ + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Temp is higher and pDM_Odm->Aboslute_OFDMSwingIdx[ODM_RF_PATH_A] = %d\n", + rtldm->aboslute_ofdm_swing_idx[RF90_PATH_A])); + + } else { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("delta_swing_table_idx_tdown_a[%d] = %d\n", + delta, delta_swing_table_idx_tdown_a[delta])); + + rtldm->delta_power_index_last[RF90_PATH_A] = rtldm->delta_power_index[RF90_PATH_A]; + rtldm->delta_power_index[RF90_PATH_A] = -1 * delta_swing_table_idx_tdown_a[delta]; + + rtldm->aboslute_ofdm_swing_idx[RF90_PATH_A] = -1 * delta_swing_table_idx_tdown_a[delta]; + /* Record delta swing for mix mode power tracking*/ + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("******Temp is lower and pDM_Odm->Aboslute_OFDMSwingIdx[ODM_RF_PATH_A] = %d\n", + rtldm->aboslute_ofdm_swing_idx[RF90_PATH_A])); + } + + for (p = RF90_PATH_A; p < MAX_PATH_NUM_8821A; p++) + { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("\n\n================================ [Path-%c] \ + Calculating PowerIndexOffset ================================\n", + (p == RF90_PATH_A ? 'A' : 'B'))); + + if (rtldm->delta_power_index[p] == rtldm->delta_power_index_last[p]) + /*If Thermal value changes but lookup table value still the same*/ + rtldm->power_index_offset[p] = 0; + else + rtldm->power_index_offset[p] = + rtldm->delta_power_index[p] - rtldm->delta_power_index_last[p]; + /*Power Index Diff between 2 times Power Tracking*/ + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("[Path-%c] PowerIndexOffset(%d) = DeltaPowerIndex(%d) - DeltaPowerIndexLast(%d)\n", + (p == RF90_PATH_A ? 'A' : 'B'), + rtldm->power_index_offset[p], + rtldm->delta_power_index[p] , + rtldm->delta_power_index_last[p])); + + rtldm->ofdm_index[p] = + rtldm->bb_swing_idx_ofdm_base[p] + rtldm->power_index_offset[p]; + rtldm->cck_index = + rtldm->bb_swing_idx_cck_base + rtldm->power_index_offset[p]; + + rtldm->bb_swing_idx_cck = rtldm->cck_index; + rtldm->bb_swing_idx_ofdm[p] = rtldm->ofdm_index[p]; + + /*************Print BB Swing Base and Index Offset*************/ + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("The 'CCK' final index(%d) = BaseIndex(%d) + PowerIndexOffset(%d)\n", + rtldm->bb_swing_idx_cck, + rtldm->bb_swing_idx_cck_base, + rtldm->power_index_offset[p])); + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("The 'OFDM' final index(%d) = BaseIndex[%c](%d) + PowerIndexOffset(%d)\n", + rtldm->bb_swing_idx_ofdm[p], + (p == RF90_PATH_A ? 'A' : 'B'), + rtldm->bb_swing_idx_ofdm_base[p], + rtldm->power_index_offset[p])); + + /*7.1 Handle boundary conditions of index.*/ + + + if(rtldm->ofdm_index[p] > TXSCALE_TABLE_SIZE -1) + { + rtldm->ofdm_index[p] = TXSCALE_TABLE_SIZE -1; + } + else if (rtldm->ofdm_index[p] < ofdm_min_index) + { + rtldm->ofdm_index[p] = ofdm_min_index; + } + } + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("\n\n======================================================\ + ==================================================\n")); + if(rtldm->cck_index > TXSCALE_TABLE_SIZE -1) + rtldm->cck_index = TXSCALE_TABLE_SIZE -1; + else if (rtldm->cck_index < 0) + rtldm->cck_index = 0; + } else { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("The thermal meter is unchanged or TxPowerTracking OFF(%d): \ + ThermalValue: %d , pDM_Odm->RFCalibrateInfo.ThermalValue: %d\n", + rtldm->txpower_track_control, + thermal_value, + rtldm->thermalvalue)); + + for (p = RF90_PATH_A; p < MAX_PATH_NUM_8821A; p++) + rtldm->power_index_offset[p] = 0; + } + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("TxPowerTracking: [CCK] Swing Current Index: %d, Swing Base Index: %d\n", + rtldm->cck_index, rtldm->bb_swing_idx_cck_base)); /*Print Swing base & current*/ + for (p = RF90_PATH_A; p < MAX_PATH_NUM_8821A; p++) + { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("TxPowerTracking: [OFDM] Swing Current Index: %d, Swing Base Index[%c]: %d\n", + rtldm->ofdm_index[p], + (p == RF90_PATH_A ? 'A' : 'B'), + rtldm->bb_swing_idx_ofdm_base[p])); + } + + if ((rtldm->power_index_offset[RF90_PATH_A] != 0 || + rtldm->power_index_offset[RF90_PATH_B] != 0 ) && + rtldm->txpower_track_control) + { + /*7.2 Configure the Swing Table to adjust Tx Power.*/ + /*Always TRUE after Tx Power is adjusted by power tracking.*/ + /* + 2012/04/23 MH According to Luke's suggestion, we can not write BB digital + to increase TX power. Otherwise, EVM will be bad. + + 2012/04/25 MH Add for tx power tracking to set tx power in tx agc for 88E. + */ + if (thermal_value > rtldm->thermalvalue) + { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("Temperature Increasing(A): delta_pi: %d , delta_t: %d, Now_t: %d, EFUSE_t: %d, Last_t: %d\n", + rtldm->power_index_offset[RF90_PATH_A], + delta, thermal_value, + rtlefuse->eeprom_thermalmeter, + rtldm->thermalvalue)); + } else if (thermal_value < rtldm->thermalvalue) { /*Low temperature*/ + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("Temperature Decreasing(A): delta_pi: %d , delta_t: %d, Now_t: %d, EFUSE_t: %d, Last_t: %d\n", + rtldm->power_index_offset[RF90_PATH_A], + delta, thermal_value, + rtlefuse->eeprom_thermalmeter, + rtldm->thermalvalue)); + } + + if (thermal_value > rtlefuse->eeprom_thermalmeter) { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("Temperature(%d) higher than PG value(%d)\n", + thermal_value, rtlefuse->eeprom_thermalmeter)); + + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("**********Enter POWER Tracking MIX_MODE**********\n")); + for (p = RF90_PATH_A; p < MAX_PATH_NUM_8821A; p++) + rtl8821ae_dm_txpwr_track_set_pwr(hw, MIX_MODE, p, index_for_channel); + + } else { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("Temperature(%d) lower than PG value(%d)\n", + thermal_value, rtlefuse->eeprom_thermalmeter)); + + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("**********Enter POWER Tracking MIX_MODE**********\n")); + for (p = RF90_PATH_A; p < MAX_PATH_NUM_8821A; p++) + rtl8812ae_dm_txpwr_track_set_pwr(hw, MIX_MODE, p, index_for_channel); + + } + + rtldm->bb_swing_idx_cck_base = rtldm->bb_swing_idx_cck; /*Record last time Power Tracking result as base.*/ + for (p = RF90_PATH_A; p < MAX_PATH_NUM_8821A; p++) + rtldm->bb_swing_idx_ofdm_base[p] = rtldm->bb_swing_idx_ofdm[p]; + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("pDM_Odm->RFCalibrateInfo.ThermalValue = %d ThermalValue= %d\n", + rtldm->thermalvalue, thermal_value)); + + rtldm->thermalvalue = thermal_value; /*Record last Power Tracking Thermal Value*/ + + } + /*Delta temperature is equal to or larger than 20 centigrade (When threshold is 8).*/ + if ((delta_iqk >= IQK_THRESHOLD)) { + + if ( !rtlphy->b_iqk_in_progress) { + + spin_lock(&rtlpriv->locks.iqk_lock); + rtlphy->b_iqk_in_progress = true; + spin_unlock(&rtlpriv->locks.iqk_lock); + + rtl8821ae_do_iqk(hw, delta_iqk, thermal_value, 8); + + spin_lock(&rtlpriv->locks.iqk_lock); + rtlphy->b_iqk_in_progress = false; + spin_unlock(&rtlpriv->locks.iqk_lock); + } + } + + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("<===rtl8812ae_dm_txpower_tracking_callback_thermalmeter\n")); +} + + +void rtl8821ae_dm_check_txpower_tracking_thermalmeter(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + static u8 tm_trigger = 0; + + //if (!rtlpriv->dm.btxpower_tracking) + // return; + + if (!tm_trigger) { + rtl_set_rfreg(hw, RF90_PATH_A, RF_T_METER_88E, BIT(17)|BIT(16), + 0x03); + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("Trigger 8821ae Thermal Meter!!\n")); + tm_trigger = 1; + return; + } else { + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, + ("Schedule TxPowerTracking !!\n")); + + rtl8821ae_dm_txpower_tracking_callback_thermalmeter(hw); + tm_trigger = 0; + } +} + + +void rtl8821ae_dm_refresh_rate_adaptive_mask(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rate_adaptive *p_ra = &(rtlpriv->ra); + u32 low_rssithresh_for_ra = p_ra->low2high_rssi_thresh_for_ra; + u32 high_rssithresh_for_ra = p_ra->high_rssi_thresh_for_ra; + u8 go_up_gap = 5; + struct ieee80211_sta *sta = NULL; + + if (is_hal_stop(rtlhal)) { + RT_TRACE(COMP_RATE, DBG_LOUD, + ("driver is going to unload\n")); + return; + } + + if (!rtlpriv->dm.b_useramask) { + RT_TRACE(COMP_RATE, DBG_LOUD, + ("driver does not control rate adaptive mask\n")); + return; + } + + if (mac->link_state == MAC80211_LINKED && + mac->opmode == NL80211_IFTYPE_STATION) { + + switch (p_ra->pre_ratr_state) { + case DM_RATR_STA_MIDDLE: + high_rssithresh_for_ra += go_up_gap; + break; + case DM_RATR_STA_LOW: + high_rssithresh_for_ra += go_up_gap; + low_rssithresh_for_ra += go_up_gap; + break; + default: + break; + } + + if (rtlpriv->dm.undecorated_smoothed_pwdb > + (long)high_rssithresh_for_ra) + p_ra->ratr_state = DM_RATR_STA_HIGH; + else if (rtlpriv->dm.undecorated_smoothed_pwdb > + (long)low_rssithresh_for_ra) + p_ra->ratr_state = DM_RATR_STA_MIDDLE; + else + p_ra->ratr_state = DM_RATR_STA_LOW; + + if (p_ra->pre_ratr_state != p_ra->ratr_state ) { + RT_TRACE(COMP_RATE, DBG_LOUD, + ("RSSI = %ld\n", + rtlpriv->dm.undecorated_smoothed_pwdb)); + RT_TRACE(COMP_RATE, DBG_LOUD, + ("RSSI_LEVEL = %d\n", p_ra->ratr_state)); + RT_TRACE(COMP_RATE, DBG_LOUD, + ("PreState = %d, CurState = %d\n", + p_ra->pre_ratr_state, p_ra->ratr_state)); + + rcu_read_lock(); + sta = rtl_find_sta(hw, mac->bssid); + if (sta) + rtlpriv->cfg->ops->update_rate_tbl(hw, sta, p_ra->ratr_state); + rcu_read_unlock(); + + p_ra->pre_ratr_state = p_ra->ratr_state; + } + } +} + +bool rtl8821ae_dm_is_edca_turbo_disable(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (rtlpriv->btcoexist.btc_ops->btc_is_disable_edca_turbo(rtlpriv)) + return true; + if (rtlpriv->mac80211.mode == WIRELESS_MODE_B) + return true; + + return false; +} + +void rtl8821ae_dm_edca_choose_traffic_idx( + struct ieee80211_hw *hw, u64 cur_tx_bytes, u64 cur_rx_bytes, bool b_bias_on_rx, + bool *pb_is_cur_rdl_state) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if(b_bias_on_rx) + { + if (cur_tx_bytes > (cur_rx_bytes*4)) { + *pb_is_cur_rdl_state = false; + RT_TRACE(COMP_TURBO, DBG_LOUD, + ("Uplink Traffic\n ")); + } else { + *pb_is_cur_rdl_state = true; + RT_TRACE(COMP_TURBO, DBG_LOUD, + ("Balance Traffic\n")); + } + } else { + if (cur_rx_bytes > (cur_tx_bytes*4)) { + *pb_is_cur_rdl_state = true; + RT_TRACE(COMP_TURBO, DBG_LOUD, + ("Downlink Traffic\n")); + } else { + *pb_is_cur_rdl_state = false; + RT_TRACE(COMP_TURBO, DBG_LOUD, + ("Balance Traffic\n")); + } + } + return ; +} + +static void rtl8821ae_dm_check_edca_turbo(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + + /*Keep past Tx/Rx packet count for RT-to-RT EDCA turbo.*/ + unsigned long cur_tx_ok_cnt = 0; + unsigned long cur_rx_ok_cnt = 0; + u32 edca_be_ul = 0x5ea42b; + u32 edca_be_dl = 0x5ea42b; + u32 edca_be = 0x5ea42b; + u8 iot_peer = 0; + bool *pb_is_cur_rdl_state = NULL; + bool b_last_is_cur_rdl_state = false; + bool b_bias_on_rx = false; + bool b_edca_turbo_on = false; + + RT_TRACE(COMP_TURBO, DBG_LOUD, + ("rtl8821ae_dm_check_edca_turbo=====>")); + RT_TRACE(COMP_TURBO, DBG_LOUD, + ("Orginial BE PARAM: 0x%x\n", + rtl_read_dword(rtlpriv, DM_REG_EDCA_BE_11N))); + + /*=============================== + list paramter for different platform + ===============================*/ + b_last_is_cur_rdl_state = rtlpriv->dm.bis_cur_rdlstate; + pb_is_cur_rdl_state = &( rtlpriv->dm.bis_cur_rdlstate); + + cur_tx_ok_cnt = rtlpriv->stats.txbytesunicast - rtldm->last_tx_ok_cnt; + cur_rx_ok_cnt = rtlpriv->stats.rxbytesunicast - rtldm->last_rx_ok_cnt; + + rtldm->last_tx_ok_cnt = rtlpriv->stats.txbytesunicast; + rtldm->last_rx_ok_cnt = rtlpriv->stats.rxbytesunicast; + + iot_peer = rtlpriv->mac80211.vendor; + b_bias_on_rx = (iot_peer == PEER_RAL || iot_peer == PEER_ATH) ? + true : false; + b_edca_turbo_on = ((!rtlpriv->dm.bis_any_nonbepkts) && + (!rtlpriv->dm.b_disable_framebursting)) ? + true : false; + + /*if (rtl8821ae_dm_is_edca_turbo_disable(hw)) + goto dm_CheckEdcaTurbo_EXIT;*/ + + if ((iot_peer == PEER_CISCO) && (mac->mode == WIRELESS_MODE_N_24G)) + { + edca_be_dl = edca_setting_dl[iot_peer]; + edca_be_ul = edca_setting_ul[iot_peer]; + } + + RT_TRACE(COMP_TURBO, DBG_LOUD, + ("bIsAnyNonBEPkts : 0x%x bDisableFrameBursting : 0x%x \n", + rtlpriv->dm.bis_any_nonbepkts, rtlpriv->dm.b_disable_framebursting)); + + RT_TRACE(COMP_TURBO, DBG_LOUD, + ("bEdcaTurboOn : 0x%x bBiasOnRx : 0x%x\n", + b_edca_turbo_on, b_bias_on_rx)); + + if (b_edca_turbo_on) { + RT_TRACE(COMP_TURBO, DBG_LOUD, + ("curTxOkCnt : 0x%lx \n",cur_tx_ok_cnt)); + RT_TRACE(COMP_TURBO, DBG_LOUD, + ("curRxOkCnt : 0x%lx \n",cur_rx_ok_cnt)); + if(b_bias_on_rx) + rtl8821ae_dm_edca_choose_traffic_idx(hw, cur_tx_ok_cnt, + cur_rx_ok_cnt, true, pb_is_cur_rdl_state); + else + rtl8821ae_dm_edca_choose_traffic_idx(hw, cur_tx_ok_cnt, + cur_rx_ok_cnt, false, pb_is_cur_rdl_state); + + edca_be = ((*pb_is_cur_rdl_state) == true) ? edca_be_dl : edca_be_ul; + + rtl_write_dword(rtlpriv, DM_REG_EDCA_BE_11N, edca_be); + + RT_TRACE(COMP_TURBO, DBG_LOUD, + ("EDCA Turbo on: EDCA_BE:0x%x\n", edca_be)); + + rtlpriv->dm.bcurrent_turbo_edca = true; + + RT_TRACE(COMP_TURBO, DBG_LOUD, + ("EDCA_BE_DL : 0x%x EDCA_BE_UL : 0x%x EDCA_BE : 0x%x \n", + edca_be_dl, edca_be_ul, edca_be)); + } else { + if (rtlpriv->dm.bcurrent_turbo_edca) { + u8 tmp = AC0_BE; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_AC_PARAM, + (u8 *) (&tmp)); + } + rtlpriv->dm.bcurrent_turbo_edca = false; + } + +/* dm_CheckEdcaTurbo_EXIT: */ + rtlpriv->dm.bis_any_nonbepkts = false; + rtldm->last_tx_ok_cnt = rtlpriv->stats.txbytesunicast; + rtldm->last_rx_ok_cnt = rtlpriv->stats.rxbytesunicast; +} + +static void rtl8821ae_dm_cck_packet_detection_thresh(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 cur_cck_cca_thresh; + + if (rtlpriv->mac80211.link_state >= MAC80211_LINKED) { + /*dm_digtable.rssi_val_min = rtl8821ae_dm_initial_gain_min_pwdb(hw);*/ + if (dm_digtable.rssi_val_min > 25) + cur_cck_cca_thresh = 0xcd; + else if ((dm_digtable.rssi_val_min <= 25) && (dm_digtable.rssi_val_min > 10)) + cur_cck_cca_thresh = 0x83; + else { + if (rtlpriv->falsealm_cnt.cnt_cck_fail > 1000) + cur_cck_cca_thresh = 0x83; + else + cur_cck_cca_thresh = 0x40; + } + + } else { + if (rtlpriv->falsealm_cnt.cnt_cck_fail > 1000) + cur_cck_cca_thresh = 0x83; + else + cur_cck_cca_thresh = 0x40; + } + + if (dm_digtable.cur_cck_cca_thres != cur_cck_cca_thresh) { + rtl_set_bbreg(hw, RCCK0_CCA, MASKBYTE2, cur_cck_cca_thresh); + } + + dm_digtable.pre_cck_cca_thres = dm_digtable.cur_cck_cca_thres; + dm_digtable.cur_cck_cca_thres = cur_cck_cca_thresh; + RT_TRACE(COMP_DIG, DBG_TRACE, + ("CCK cca thresh hold =%x\n", dm_digtable.cur_cck_cca_thres)); + +} + +void rtl8821ae_dm_dynamic_edcca(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + bool b_fw_current_in_ps_mode = false; + + rtlpriv->cfg->ops->get_hw_reg(hw,HW_VAR_FW_PSMODE_STATUS, \ + (u8*)(&b_fw_current_in_ps_mode)); + if (b_fw_current_in_ps_mode) + return; +} + +void rtl8812ae_dm_update_txpath(struct ieee80211_hw *hw, u8 path) +{ + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (rtldm->resp_tx_path != path) { + RT_TRACE(COMP_DIG, DBG_LOUD, \ + ("Need to Update Tx Path\n")); + if (path == RF90_PATH_A) { + /*Tx by Reg*/ + rtl_set_bbreg(hw, 0x80c, 0xFFF0, 0x111); + /*Resp Tx by Txinfo*/ + rtl_set_bbreg(hw, 0x6d8, BIT(7) | BIT(6), 1); + } else { + /*Tx by Reg*/ + rtl_set_bbreg(hw, 0x80c, 0xFFF0, 0x222); + /*Resp Tx by Txinfo*/ + rtl_set_bbreg(hw, 0x6d8, BIT(7) |BIT(6), 2); + } + } + rtldm->resp_tx_path = path; + RT_TRACE(COMP_DIG, DBG_LOUD, \ + ("Path=%s\n",(path == RF90_PATH_A) ? \ + "RF90_PATH_A":"RF90_PATH_A")); +} + +void rtl8812ae_dm_path_diversity_init(struct ieee80211_hw *hw) +{ + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + + //rtl_set_bbreg(hw, 0x80c , BIT(29), 1); /*Tx path from Reg*/ + rtl_set_bbreg(hw, 0x80c , 0xFFF0, 0x111); /*Tx by Reg*/ + rtl_set_bbreg(hw, 0x6d8 , BIT(7) | BIT(6), 1); /*Resp Tx by Txinfo*/ + rtl8812ae_dm_update_txpath(hw, RF90_PATH_A); + + rtldm->path_sel = 1; /* TxInfo default at path-A*/ +} + +void rtl812ae_dm_set_txpath_by_txinfo(struct ieee80211_hw *hw, + u8 *pdesc) +{ + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + + SET_TX_DESC_TX_ANT(pdesc, rtldm->path_sel); +} + +void rtl8812ae_dm_path_statistics(struct ieee80211_hw *hw, + u32 rssi_a, u32 rssi_b) +{ + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + + rtldm->patha_sum += rssi_a; + rtldm->patha_cnt ++; + + rtldm->pathb_sum += rssi_b; + rtldm->pathb_cnt ++; +} + +void rtl8812ae_dm_path_diversity(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + u32 rssi_avg_a = 0; + u32 rssi_avg_b = 0; + u32 local_min_rssi = 0; + u32 min_rssi = 0xFF; + u8 tx_resp_path=0, target_path; + struct ieee80211_sta *sta = NULL; + + sta = rtl_find_sta(hw, mac->bssid); + if (sta) { + /*Caculate RSSI per Path*/ + rssi_avg_a = (rtldm->patha_cnt != 0) ? \ + (rtldm->patha_sum / rtldm->patha_cnt) : 0; + rssi_avg_b = (rtldm->pathb_cnt != 0) ? \ + (rtldm->pathb_sum / rtldm->pathb_cnt) : 0; + + target_path = (rssi_avg_a == rssi_avg_b) ? rtldm->resp_tx_path : \ + ((rssi_avg_a>=rssi_avg_b) ? RF90_PATH_A : RF90_PATH_B); + + RT_TRACE(COMP_DIG, DBG_TRACE, \ + ("assoc_id=%d, PathA_Sum=%d, PathA_Cnt=%d\n", \ + mac->assoc_id, rtldm->patha_sum, rtldm->patha_cnt)); + RT_TRACE(COMP_DIG, DBG_TRACE, \ + ("assoc_id=%d, PathB_Sum=%d, PathB_Cnt=%d\n", \ + mac->assoc_id, rtldm->pathb_sum, rtldm->pathb_cnt)); + RT_TRACE(COMP_DIG, DBG_TRACE, \ + ("assoc_id=%d, RssiAvgA= %d, RssiAvgB= %d\n", \ + mac->assoc_id, rssi_avg_a, rssi_avg_b)); + + /*Select Resp Tx Path*/ + local_min_rssi = (rssi_avg_a > rssi_avg_b) ? rssi_avg_b : rssi_avg_a; + if(local_min_rssi < min_rssi) + { + min_rssi = local_min_rssi; + tx_resp_path = target_path; + } + + /*Select Tx DESC*/ + if(target_path == RF90_PATH_A) + rtldm->path_sel = 1; + else + rtldm->path_sel = 2; + + RT_TRACE(COMP_DIG, DBG_TRACE, \ + ("Tx from TxInfo, TargetPath=%s\n", \ + (target_path==RF90_PATH_A) ? \ + "ODM_RF_PATH_A":"ODM_RF_PATH_B")); + RT_TRACE(COMP_DIG, DBG_TRACE, \ + ("pDM_PathDiv->PathSel= %d\n", \ + rtldm->path_sel)); + } + rtldm->patha_cnt = 0; + rtldm->patha_sum = 0; + rtldm->pathb_cnt = 0; + rtldm->pathb_sum = 0; +} + +void rtl8821ae_dm_dynamic_atc_switch(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + u8 crystal_cap; + u32 packet_count; + int cfo_khz_a,cfo_khz_b,cfo_ave = 0, adjust_xtal = 0; + int cfo_ave_diff; + + if (rtlpriv->mac80211.link_state < MAC80211_LINKED){ + /*1.Enable ATC*/ + if (rtldm->atc_status == ATC_STATUS_OFF) + { + rtl_set_bbreg(hw, RFC_AREA, BIT(14), ATC_STATUS_ON); + rtldm->atc_status = ATC_STATUS_ON; + } + + RT_TRACE(COMP_DIG, DBG_LOUD, \ + ("rtl8821ae_dm_dynamic_atc_switch(): No link!!\n")); + RT_TRACE(COMP_DIG, DBG_LOUD, \ + ("rtl8821ae_dm_dynamic_atc_switch(): atc_status = %d\n", \ + rtldm->atc_status)); + + if (rtldm->crystal_cap != rtlpriv->efuse.crystalcap) + { + rtldm->crystal_cap = rtlpriv->efuse.crystalcap; + crystal_cap = rtldm->crystal_cap & 0x3f; + crystal_cap = crystal_cap & 0x3f; + rtl_set_bbreg(hw, REG_MAC_PHY_CTRL, \ + 0x7ff80000, (crystal_cap | (crystal_cap << 6))); + } + RT_TRACE(COMP_DIG, DBG_LOUD, \ + ("rtl8821ae_dm_dynamic_atc_switch(): crystal_cap = 0x%x\n", \ + rtldm->crystal_cap)); + }else{ + /*1. Calculate CFO for path-A & path-B*/ + cfo_khz_a = (int)(rtldm->cfo_tail[0] * 3125) / 1280; + cfo_khz_b = (int)(rtldm->cfo_tail[1] * 3125) / 1280; + packet_count = rtldm->packet_count; + + /*2.No new packet*/ + if (packet_count == rtldm->packet_count_pre) { + RT_TRACE(COMP_DIG, DBG_LOUD, \ + ("rtl8821ae_dm_dynamic_atc_switch(): packet counter doesn't change\n")); + return; + } + + rtldm->packet_count_pre = packet_count; + RT_TRACE(COMP_DIG, DBG_LOUD, \ + ("rtl8821ae_dm_dynamic_atc_switch(): packet counter = %d\n", \ + rtldm->packet_count)); + + /*3.Average CFO*/ + if (rtlpriv->phy.rf_type == RF_1T1R) + cfo_ave = cfo_khz_a; + else + cfo_ave = (cfo_khz_a + cfo_khz_b) >> 1; + + RT_TRACE(COMP_DIG, DBG_LOUD, \ + ("rtl8821ae_dm_dynamic_atc_switch():" + "cfo_khz_a = %dkHz, cfo_khz_b = %dkHz, cfo_ave = %dkHz\n", + cfo_khz_a, cfo_khz_b, cfo_ave)); + + /*4.Avoid abnormal large CFO*/ + cfo_ave_diff = (rtldm->cfo_ave_pre >= cfo_ave)? + (rtldm->cfo_ave_pre - cfo_ave): + (cfo_ave - rtldm->cfo_ave_pre); + + if (cfo_ave_diff > 20 && rtldm->large_cfo_hit == 0){ + RT_TRACE(COMP_DIG, DBG_LOUD, \ + ("rtl8821ae_dm_dynamic_atc_switch(): first large CFO hit\n")); + rtldm->large_cfo_hit = 1; + return; + } + else + rtldm->large_cfo_hit = 0; + + rtldm->cfo_ave_pre = cfo_ave; + + /*CFO tracking by adjusting Xtal cap.*/ + + /*1.Dynamic Xtal threshold*/ + if (cfo_ave >= -rtldm->cfo_threshold && + cfo_ave <= rtldm->cfo_threshold && + rtldm->is_freeze == 0){ + if (rtldm->cfo_threshold == CFO_THRESHOLD_XTAL){ + rtldm->cfo_threshold = CFO_THRESHOLD_XTAL + 10; + rtldm->is_freeze = 1; + } + else + rtldm->cfo_threshold = CFO_THRESHOLD_XTAL; + } + RT_TRACE(COMP_DIG, DBG_LOUD, \ + ("rtl8821ae_dm_dynamic_atc_switch(): Dynamic threshold = %d\n", \ + rtldm->cfo_threshold)); + + /* 2.Calculate Xtal offset*/ + if (cfo_ave > rtldm->cfo_threshold && rtldm->crystal_cap < 0x3f) + adjust_xtal = ((cfo_ave - CFO_THRESHOLD_XTAL) >> 2) + 1; + else if ((cfo_ave < -rtlpriv->dm.cfo_threshold) && rtlpriv->dm.crystal_cap > 0) + adjust_xtal = ((cfo_ave + CFO_THRESHOLD_XTAL) >> 2) - 1; + RT_TRACE(COMP_DIG, DBG_LOUD, \ + ("rtl8821ae_dm_dynamic_atc_switch(): " + "Crystal cap = 0x%x, Crystal cap offset = %d\n", + rtldm->crystal_cap, adjust_xtal)); + + /*3.Adjudt Crystal Cap.*/ + if (adjust_xtal != 0){ + rtldm->is_freeze = 0; + rtldm->crystal_cap += adjust_xtal; + + if (rtldm->crystal_cap > 0x3f) + rtldm->crystal_cap = 0x3f; + else if (rtldm->crystal_cap < 0) + rtldm->crystal_cap = 0; + + crystal_cap = rtldm->crystal_cap & 0x3f; + crystal_cap = crystal_cap & 0x3f; + rtl_set_bbreg(hw, REG_MAC_PHY_CTRL, \ + 0x7ff80000, (crystal_cap | (crystal_cap << 6))); + RT_TRACE(COMP_DIG, DBG_LOUD, \ + ("rtl8821ae_dm_dynamic_atc_switch(): New crystal cap = 0x%x \n", \ + rtldm->crystal_cap)); + } + } + +} + +void rtl8821ae_dm_watchdog(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + bool b_fw_current_inpsmode = false; + bool b_fw_ps_awake = true; + + rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, + (u8 *) (&b_fw_current_inpsmode)); + + rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_FWLPS_RF_ON, + (u8 *) (&b_fw_ps_awake)); + + if(ppsc->p2p_ps_info.p2p_ps_mode) + b_fw_ps_awake = false; + + if((ppsc->rfpwr_state == ERFON) && + ((!b_fw_current_inpsmode) && b_fw_ps_awake) && + (!ppsc->rfchange_inprogress)) { + rtl8821ae_dm_common_info_self_update(hw); + rtl8821ae_dm_false_alarm_counter_statistics(hw); + rtl8821ae_dm_check_rssi_monitor(hw); + rtl8821ae_dm_dig(hw); + rtl8821ae_dm_dynamic_edcca(hw); + rtl8821ae_dm_cck_packet_detection_thresh(hw); + rtl8821ae_dm_refresh_rate_adaptive_mask(hw); + rtl8821ae_dm_check_edca_turbo(hw); + rtl8821ae_dm_dynamic_atc_switch(hw); + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + rtl8812ae_dm_check_txpower_tracking_thermalmeter(hw); + else + rtl8821ae_dm_check_txpower_tracking_thermalmeter(hw); + rtl8821ae_dm_iq_calibrate(hw); + if (rtlpriv->cfg->ops->get_btc_status()){ + rtlpriv->btcoexist.btc_ops->btc_periodical(rtlpriv); + } + } + + rtlpriv->dm.dbginfo.num_qry_beacon_pkt = 0; +} + +void rtl8821ae_dm_set_tx_ant_by_tx_info(struct ieee80211_hw *hw, + u8 *pdesc, u32 mac_id) +{ + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + struct fast_ant_trainning *pfat_table= &(rtldm->fat_table); + + if (rtlhal->hw_type != HARDWARE_TYPE_RTL8812AE) + return; + + if ((rtlefuse->antenna_div_type == CG_TRX_HW_ANTDIV) || + (rtlefuse->antenna_div_type == CG_TRX_HW_ANTDIV)){ + SET_TX_DESC_TX_ANT(pdesc, pfat_table->antsel_a[mac_id]); + } +} --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/dm.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/dm.h @@ -0,0 +1,426 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8821AE_DM_H__ +#define __RTL8821AE_DM_H__ + +#define MAIN_ANT 0 +#define AUX_ANT 1 +#define MAIN_ANT_CG_TRX 1 +#define AUX_ANT_CG_TRX 0 +#define MAIN_ANT_CGCS_RX 0 +#define AUX_ANT_CGCS_RX 1 + +#define TXSCALE_TABLE_SIZE 37 + +/*RF REG LIST*/ +#define DM_REG_RF_MODE_11N 0x00 +#define DM_REG_RF_0B_11N 0x0B +#define DM_REG_CHNBW_11N 0x18 +#define DM_REG_T_METER_11N 0x24 +#define DM_REG_RF_25_11N 0x25 +#define DM_REG_RF_26_11N 0x26 +#define DM_REG_RF_27_11N 0x27 +#define DM_REG_RF_2B_11N 0x2B +#define DM_REG_RF_2C_11N 0x2C +#define DM_REG_RXRF_A3_11N 0x3C +#define DM_REG_T_METER_92D_11N 0x42 +#define DM_REG_T_METER_88E_11N 0x42 + + + +/*BB REG LIST*/ +/*PAGE 8 */ +#define DM_REG_BB_CTRL_11N 0x800 +#define DM_REG_RF_PIN_11N 0x804 +#define DM_REG_PSD_CTRL_11N 0x808 +#define DM_REG_TX_ANT_CTRL_11N 0x80C +#define DM_REG_BB_PWR_SAV5_11N 0x818 +#define DM_REG_CCK_RPT_FORMAT_11N 0x824 +#define DM_REG_RX_DEFUALT_A_11N 0x858 +#define DM_REG_RX_DEFUALT_B_11N 0x85A +#define DM_REG_BB_PWR_SAV3_11N 0x85C +#define DM_REG_ANTSEL_CTRL_11N 0x860 +#define DM_REG_RX_ANT_CTRL_11N 0x864 +#define DM_REG_PIN_CTRL_11N 0x870 +#define DM_REG_BB_PWR_SAV1_11N 0x874 +#define DM_REG_ANTSEL_PATH_11N 0x878 +#define DM_REG_BB_3WIRE_11N 0x88C +#define DM_REG_SC_CNT_11N 0x8C4 +#define DM_REG_PSD_DATA_11N 0x8B4 +/*PAGE 9*/ +#define DM_REG_ANT_MAPPING1_11N 0x914 +#define DM_REG_ANT_MAPPING2_11N 0x918 +/*PAGE A*/ +#define DM_REG_CCK_ANTDIV_PARA1_11N 0xA00 +#define DM_REG_CCK_CCA_11N 0xA0A +#define DM_REG_CCK_CCA_11AC 0xA0A +#define DM_REG_CCK_ANTDIV_PARA2_11N 0xA0C +#define DM_REG_CCK_ANTDIV_PARA3_11N 0xA10 +#define DM_REG_CCK_ANTDIV_PARA4_11N 0xA14 +#define DM_REG_CCK_FILTER_PARA1_11N 0xA22 +#define DM_REG_CCK_FILTER_PARA2_11N 0xA23 +#define DM_REG_CCK_FILTER_PARA3_11N 0xA24 +#define DM_REG_CCK_FILTER_PARA4_11N 0xA25 +#define DM_REG_CCK_FILTER_PARA5_11N 0xA26 +#define DM_REG_CCK_FILTER_PARA6_11N 0xA27 +#define DM_REG_CCK_FILTER_PARA7_11N 0xA28 +#define DM_REG_CCK_FILTER_PARA8_11N 0xA29 +#define DM_REG_CCK_FA_RST_11N 0xA2C +#define DM_REG_CCK_FA_MSB_11N 0xA58 +#define DM_REG_CCK_FA_LSB_11N 0xA5C +#define DM_REG_CCK_CCA_CNT_11N 0xA60 +#define DM_REG_BB_PWR_SAV4_11N 0xA74 +/*PAGE B */ +#define DM_REG_LNA_SWITCH_11N 0xB2C +#define DM_REG_PATH_SWITCH_11N 0xB30 +#define DM_REG_RSSI_CTRL_11N 0xB38 +#define DM_REG_CONFIG_ANTA_11N 0xB68 +#define DM_REG_RSSI_BT_11N 0xB9C +/*PAGE C */ +#define DM_REG_OFDM_FA_HOLDC_11N 0xC00 +#define DM_REG_RX_PATH_11N 0xC04 +#define DM_REG_TRMUX_11N 0xC08 +#define DM_REG_OFDM_FA_RSTC_11N 0xC0C +#define DM_REG_RXIQI_MATRIX_11N 0xC14 +#define DM_REG_TXIQK_MATRIX_LSB1_11N 0xC4C +#define DM_REG_IGI_A_11N 0xC50 +#define DM_REG_IGI_A_11AC 0xC50 +#define DM_REG_ANTDIV_PARA2_11N 0xC54 +#define DM_REG_IGI_B_11N 0xC58 +#define DM_REG_IGI_B_11AC 0xE50 +#define DM_REG_ANTDIV_PARA3_11N 0xC5C +#define DM_REG_BB_PWR_SAV2_11N 0xC70 +#define DM_REG_RX_OFF_11N 0xC7C +#define DM_REG_TXIQK_MATRIXA_11N 0xC80 +#define DM_REG_TXIQK_MATRIXB_11N 0xC88 +#define DM_REG_TXIQK_MATRIXA_LSB2_11N 0xC94 +#define DM_REG_TXIQK_MATRIXB_LSB2_11N 0xC9C +#define DM_REG_RXIQK_MATRIX_LSB_11N 0xCA0 +#define DM_REG_ANTDIV_PARA1_11N 0xCA4 +#define DM_REG_OFDM_FA_TYPE1_11N 0xCF0 +/*PAGE D */ +#define DM_REG_OFDM_FA_RSTD_11N 0xD00 +#define DM_REG_OFDM_FA_TYPE2_11N 0xDA0 +#define DM_REG_OFDM_FA_TYPE3_11N 0xDA4 +#define DM_REG_OFDM_FA_TYPE4_11N 0xDA8 +/*PAGE E */ +#define DM_REG_TXAGC_A_6_18_11N 0xE00 +#define DM_REG_TXAGC_A_24_54_11N 0xE04 +#define DM_REG_TXAGC_A_1_MCS32_11N 0xE08 +#define DM_REG_TXAGC_A_MCS0_3_11N 0xE10 +#define DM_REG_TXAGC_A_MCS4_7_11N 0xE14 +#define DM_REG_TXAGC_A_MCS8_11_11N 0xE18 +#define DM_REG_TXAGC_A_MCS12_15_11N 0xE1C +#define DM_REG_FPGA0_IQK_11N 0xE28 +#define DM_REG_TXIQK_TONE_A_11N 0xE30 +#define DM_REG_RXIQK_TONE_A_11N 0xE34 +#define DM_REG_TXIQK_PI_A_11N 0xE38 +#define DM_REG_RXIQK_PI_A_11N 0xE3C +#define DM_REG_TXIQK_11N 0xE40 +#define DM_REG_RXIQK_11N 0xE44 +#define DM_REG_IQK_AGC_PTS_11N 0xE48 +#define DM_REG_IQK_AGC_RSP_11N 0xE4C +#define DM_REG_BLUETOOTH_11N 0xE6C +#define DM_REG_RX_WAIT_CCA_11N 0xE70 +#define DM_REG_TX_CCK_RFON_11N 0xE74 +#define DM_REG_TX_CCK_BBON_11N 0xE78 +#define DM_REG_OFDM_RFON_11N 0xE7C +#define DM_REG_OFDM_BBON_11N 0xE80 +#define DM_REG_TX2RX_11N 0xE84 +#define DM_REG_TX2TX_11N 0xE88 +#define DM_REG_RX_CCK_11N 0xE8C +#define DM_REG_RX_OFDM_11N 0xED0 +#define DM_REG_RX_WAIT_RIFS_11N 0xED4 +#define DM_REG_RX2RX_11N 0xED8 +#define DM_REG_STANDBY_11N 0xEDC +#define DM_REG_SLEEP_11N 0xEE0 +#define DM_REG_PMPD_ANAEN_11N 0xEEC + + +/*MAC REG LIST*/ +#define DM_REG_BB_RST_11N 0x02 +#define DM_REG_ANTSEL_PIN_11N 0x4C +#define DM_REG_EARLY_MODE_11N 0x4D0 +#define DM_REG_RSSI_MONITOR_11N 0x4FE +#define DM_REG_EDCA_VO_11N 0x500 +#define DM_REG_EDCA_VI_11N 0x504 +#define DM_REG_EDCA_BE_11N 0x508 +#define DM_REG_EDCA_BK_11N 0x50C +#define DM_REG_TXPAUSE_11N 0x522 +#define DM_REG_RESP_TX_11N 0x6D8 +#define DM_REG_ANT_TRAIN_PARA1_11N 0x7b0 +#define DM_REG_ANT_TRAIN_PARA2_11N 0x7b4 + + +/*DIG Related*/ +#define DM_BIT_IGI_11N 0x0000007F +#define DM_BIT_IGI_11AC 0xFFFFFFFF + + + +#define HAL_DM_DIG_DISABLE BIT(0) +#define HAL_DM_HIPWR_DISABLE BIT(1) + +#define OFDM_TABLE_LENGTH 43 +#define CCK_TABLE_LENGTH 33 + +#define OFDM_TABLE_SIZE 37 +#define CCK_TABLE_SIZE 33 + +#define BW_AUTO_SWITCH_HIGH_LOW 25 +#define BW_AUTO_SWITCH_LOW_HIGH 30 + +#define DM_DIG_THRESH_HIGH 40 +#define DM_DIG_THRESH_LOW 35 + +#define DM_FALSEALARM_THRESH_LOW 400 +#define DM_FALSEALARM_THRESH_HIGH 1000 + +#define DM_DIG_MAX 0x3e +#define DM_DIG_MIN 0x1e + +#define DM_DIG_MAX_AP 0x32 +#define DM_DIG_MIN_AP 0x20 + +#define DM_DIG_FA_UPPER 0x3e +#define DM_DIG_FA_LOWER 0x1e +#define DM_DIG_FA_TH0 0x200 +#define DM_DIG_FA_TH1 0x300 +#define DM_DIG_FA_TH2 0x400 + +#define DM_DIG_BACKOFF_MAX 12 +#define DM_DIG_BACKOFF_MIN -4 +#define DM_DIG_BACKOFF_DEFAULT 10 + +#define RXPATHSELECTION_SS_TH_lOW 30 +#define RXPATHSELECTION_DIFF_TH 18 + +#define DM_RATR_STA_INIT 0 +#define DM_RATR_STA_HIGH 1 +#define DM_RATR_STA_MIDDLE 2 +#define DM_RATR_STA_LOW 3 + +#define CTS2SELF_THVAL 30 +#define REGC38_TH 20 + +#define WAIOTTHVal 25 + +#define TXHIGHPWRLEVEL_NORMAL 0 +#define TXHIGHPWRLEVEL_LEVEL1 1 +#define TXHIGHPWRLEVEL_LEVEL2 2 +#define TXHIGHPWRLEVEL_BT1 3 +#define TXHIGHPWRLEVEL_BT2 4 + +#define DM_TYPE_BYFW 0 +#define DM_TYPE_BYDRIVER 1 + +#define TX_POWER_NEAR_FIELD_THRESH_LVL2 74 +#define TX_POWER_NEAR_FIELD_THRESH_LVL1 67 +#define TXPWRTRACK_MAX_IDX 6 + +/* Dynamic ATC switch */ +#define ATC_STATUS_OFF 0x0 /* enable */ +#define ATC_STATUS_ON 0x1 /* disable */ +#define CFO_THRESHOLD_XTAL 10 /* kHz */ +#define CFO_THRESHOLD_ATC 80 /* kHz */ + +#define AVG_THERMAL_NUM_8812A 4 +#define TXPWR_TRACK_TABLE_SIZE 30 +#define MAX_PATH_NUM_8812A 2 +#define MAX_PATH_NUM_8821A 1 + + +struct ps_t { + u8 pre_ccastate; + u8 cur_ccasate; + u8 pre_rfstate; + u8 cur_rfstate; + u8 initialize; + long rssi_val_min; + +}; + +struct dig_t { + u8 dig_enable_flag; + u8 dig_ext_port_stage; + u32 rssi_lowthresh; + u32 rssi_highthresh; + + u32 fa_lowthresh; + u32 fa_highthresh; + + u8 cursta_connectctate; + u8 presta_connectstate; + u8 curmultista_connectstate; + + u8 pre_igvalue; + u8 cur_igvalue; + u8 bt30_cur_igi; + u8 backup_igvalue; + u8 stop_dig; + + char backoff_val; + char backoff_val_range_max; + char backoff_val_range_min; + u8 rx_gain_range_max; + u8 rx_gain_range_min; + u8 rssi_val_min; + + u8 pre_cck_cca_thres; + u8 cur_cck_cca_thres; + u8 pre_cck_pd_state; + u8 cur_cck_pd_state; + + u8 large_fa_hit; + u8 forbidden_igi; + u32 recover_cnt; + + u8 dig_dynamic_min_0; + u8 dig_dynamic_min_1; + bool b_media_connect_0; + bool b_media_connect_1; + + u32 antdiv_rssi_max; + u32 rssi_max; +}; + + +enum FAT_STATE { + FAT_NORMAL_STATE = 0, + FAT_TRAINING_STATE = 1, +}; + +enum tag_dynamic_init_gain_operation_type_definition { + DIG_TYPE_THRESH_HIGH = 0, + DIG_TYPE_THRESH_LOW = 1, + DIG_TYPE_BACKOFF = 2, + DIG_TYPE_RX_GAIN_MIN = 3, + DIG_TYPE_RX_GAIN_MAX = 4, + DIG_TYPE_ENABLE = 5, + DIG_TYPE_DISABLE = 6, + DIG_OP_TYPE_MAX +}; + +enum tag_cck_packet_detection_threshold_type_definition { + CCK_PD_STAGE_LowRssi = 0, + CCK_PD_STAGE_HighRssi = 1, + CCK_FA_STAGE_Low = 2, + CCK_FA_STAGE_High = 3, + CCK_PD_STAGE_MAX = 4, +}; + +enum dm_1r_cca_e { + CCA_1R = 0, + CCA_2R = 1, + CCA_MAX = 2, +}; + +enum dm_rf_e { + RF_SAVE = 0, + RF_NORMAL = 1, + RF_MAX = 2, +}; + +enum dm_sw_ant_switch_e { + ANS_ANTENNA_B = 1, + ANS_ANTENNA_A = 2, + ANS_ANTENNA_MAX = 3, +}; + +enum dm_dig_ext_port_alg_e { + DIG_EXT_PORT_STAGE_0 = 0, + DIG_EXT_PORT_STAGE_1 = 1, + DIG_EXT_PORT_STAGE_2 = 2, + DIG_EXT_PORT_STAGE_3 = 3, + DIG_EXT_PORT_STAGE_MAX = 4, +}; + +enum dm_dig_connect_e { + DIG_STA_DISCONNECT = 0, + DIG_STA_CONNECT = 1, + DIG_STA_BEFORE_CONNECT = 2, + DIG_MULTISTA_DISCONNECT = 3, + DIG_MULTISTA_CONNECT = 4, + DIG_CONNECT_MAX +}; + +enum pwr_track_control_method { + BBSWING, + TXAGC, + MIX_MODE +}; + +#define BT_RSSI_STATE_NORMAL_POWER BIT_OFFSET_LEN_MASK_32(0, 1) +#define BT_RSSI_STATE_AMDPU_OFF BIT_OFFSET_LEN_MASK_32(1, 1) +#define BT_RSSI_STATE_SPECIAL_LOW BIT_OFFSET_LEN_MASK_32(2, 1) +#define BT_RSSI_STATE_BG_EDCA_LOW BIT_OFFSET_LEN_MASK_32(3, 1) +#define BT_RSSI_STATE_TXPOWER_LOW BIT_OFFSET_LEN_MASK_32(4, 1) +#define GET_UNDECORATED_AVERAGE_RSSI(_priv) \ + (((struct rtl_priv *)(_priv))->mac80211.opmode == NL80211_IFTYPE_ADHOC)? \ + (((struct rtl_priv *)(_priv))->dm.entry_min_undecoratedsmoothed_pwdb): \ + (((struct rtl_priv *)(_priv))->dm.undecorated_smoothed_pwdb) + +extern struct dig_t dm_digtable; +void rtl8821ae_dm_set_tx_ant_by_tx_info(struct ieee80211_hw *hw, + u8 *pdesc, u32 mac_id); +void rtl8821ae_dm_ant_sel_statistics(struct ieee80211_hw *hw, + u8 antsel_tr_mux, u32 mac_id, + u32 rx_pwdb_all); +void rtl8821ae_dm_fast_antenna_trainning_callback(unsigned long data); +void rtl8821ae_dm_init(struct ieee80211_hw *hw); +void rtl8821ae_dm_watchdog(struct ieee80211_hw *hw); +void rtl8821ae_dm_write_dig(struct ieee80211_hw *hw, u8 current_igi); +void rtl8821ae_dm_init_edca_turbo(struct ieee80211_hw *hw); +void rtl8821ae_dm_check_txpower_tracking_thermalmeter(struct ieee80211_hw *hw); +void rtl8821ae_dm_init_rate_adaptive_mask(struct ieee80211_hw *hw); +void rtl8821ae_dm_txpower_track_adjust(struct ieee80211_hw *hw, + u8 type,u8 *pdirection, + u32 *poutwrite_val); +void rtl8821ae_dm_clear_txpower_tracking_state(struct ieee80211_hw *hw); +void rtl8821ae_dm_write_cck_cca_thres(struct ieee80211_hw *hw, u8 current_cca); +void rtl8821ae_dm_initialize_txpower_tracking_thermalmeter(struct ieee80211_hw *hw); +void rtl8812ae_dm_path_diversity(struct ieee80211_hw *hw); +void rtl8812ae_dm_path_diversity_init(struct ieee80211_hw *hw); +void rtl8812ae_dm_path_statistics(struct ieee80211_hw *hw, + u32 rssi_a, u32 rssi_b); +void rtl812ae_dm_set_txpath_by_txinfo(struct ieee80211_hw *hw, + u8 *pdesc); +void rtl8812ae_dm_txpwr_track_set_pwr(struct ieee80211_hw *hw, + enum pwr_track_control_method method, + u8 rf_path, + u8 channel_mapped_index); +void rtl8821ae_dm_txpwr_track_set_pwr(struct ieee80211_hw *hw, + enum pwr_track_control_method method, u8 rf_path, u8 channel_mapped_index); + +void rtl8812ae_dm_update_init_rate(struct ieee80211_hw *hw, u8 rate); +u8 rtl8812ae_hw_rate_to_mrate(struct ieee80211_hw *hw, u8 rate); +void rtl8812ae_dm_txpower_tracking_callback_thermalmeter(struct ieee80211_hw *hw); +void rtl8821ae_dm_txpower_tracking_callback_thermalmeter(struct ieee80211_hw *hw); +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/fw.c +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/fw.c @@ -0,0 +1,1349 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "../pci.h" +#include "../base.h" +#include "reg.h" +#include "def.h" +#include "fw.h" +#include "dm.h" + +static void _rtl8821ae_enable_fw_download(struct ieee80211_hw *hw, bool enable) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 tmp; + + if (enable) { + rtl_write_byte(rtlpriv, REG_MCUFWDL, 0x05); + + tmp = rtl_read_byte(rtlpriv, REG_MCUFWDL + 2); + rtl_write_byte(rtlpriv, REG_MCUFWDL + 2, tmp & 0xf7); + + tmp = rtl_read_byte(rtlpriv, REG_MCUFWDL); + //printk("0x80=%02x.\n",tmp); + } else { + tmp = rtl_read_byte(rtlpriv, REG_MCUFWDL); + rtl_write_byte(rtlpriv, REG_MCUFWDL, tmp & 0xfe); + tmp = rtl_read_byte(rtlpriv, REG_MCUFWDL); + //printk("0x80=%02x.\n",tmp); + } + +} + +static void _rtl8821ae_fw_block_write(struct ieee80211_hw *hw, + const u8 *buffer, u32 size) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 blockSize = sizeof(u32); + u8 *bufferPtr = (u8 *) buffer; + u32 *pu4BytePtr = (u32 *) buffer; + u32 i, offset, blockCount, remainSize; + + blockCount = size / blockSize; + remainSize = size % blockSize; + + for (i = 0; i < blockCount; i++) { + offset = i * blockSize; + rtl_write_dword(rtlpriv, (FW_8821AE_START_ADDRESS + offset), + *(pu4BytePtr + i)); + } + + if (remainSize) { + offset = blockCount * blockSize; + bufferPtr += offset; + for (i = 0; i < remainSize; i++) { + rtl_write_byte(rtlpriv, (FW_8821AE_START_ADDRESS + + offset + i), *(bufferPtr + i)); + } + } +} + +static void _rtl8821ae_fw_page_write(struct ieee80211_hw *hw, + u32 page, const u8 *buffer, u32 size) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 value8; + u8 u8page = (u8) (page & 0x07); + + value8 = (rtl_read_byte(rtlpriv, REG_MCUFWDL + 2) & 0xF8) | u8page; + + rtl_write_byte(rtlpriv, (REG_MCUFWDL + 2), value8); + _rtl8821ae_fw_block_write(hw, buffer, size); +} + +static void _rtl8821ae_fill_dummy(u8 *pfwbuf, u32 *pfwlen) +{ + u32 fwlen = *pfwlen; + u8 remain = (u8) (fwlen % 4); + + remain = (remain == 0) ? 0 : (4 - remain); + + while (remain > 0) { + pfwbuf[fwlen] = 0; + fwlen++; + remain--; + } + + *pfwlen = fwlen; +} + +static void _rtl8821ae_write_fw(struct ieee80211_hw *hw, + enum version_8821ae version, + u8 *buffer, u32 size) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 *bufferPtr = (u8 *) buffer; + u32 pageNums, remainSize; + u32 page, offset; + + RT_TRACE(COMP_FW, DBG_LOUD, ("FW size is %d bytes,\n", size)); + + _rtl8821ae_fill_dummy(bufferPtr, &size); + + pageNums = size / FW_8821AE_PAGE_SIZE; + remainSize = size % FW_8821AE_PAGE_SIZE; + + if (pageNums > 8) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("Page numbers should not greater then 8\n")); + } + + for (page = 0; page < pageNums; page++) { + offset = page * FW_8821AE_PAGE_SIZE; + _rtl8821ae_fw_page_write(hw, page, (bufferPtr + offset), + FW_8821AE_PAGE_SIZE); + } + + if (remainSize) { + offset = pageNums * FW_8821AE_PAGE_SIZE; + page = pageNums; + _rtl8821ae_fw_page_write(hw, page, (bufferPtr + offset), + remainSize); + } + +} + +static int _rtl8821ae_fw_free_to_go(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + int err = -EIO; + u32 counter = 0; + u32 value32; + + do { + value32 = rtl_read_dword(rtlpriv, REG_MCUFWDL); + } while ((counter++ < FW_8821AE_POLLING_TIMEOUT_COUNT) && + (!(value32 & FWDL_CHKSUM_RPT))); + + if (counter >= FW_8821AE_POLLING_TIMEOUT_COUNT) { + RT_TRACE(COMP_ERR, DBG_LOUD, + ("chksum report faill ! REG_MCUFWDL:0x%08x .\n", + value32)); + goto exit; + } + + RT_TRACE(COMP_FW, DBG_EMERG, + ("Checksum report OK ! REG_MCUFWDL:0x%08x .\n", value32)); + + value32 = rtl_read_dword(rtlpriv, REG_MCUFWDL); + value32 |= MCUFWDL_RDY; + value32 &= ~WINTINI_RDY; + rtl_write_dword(rtlpriv, REG_MCUFWDL, value32); + + rtl8821ae_firmware_selfreset(hw); + + counter = 0; + do { + value32 = rtl_read_dword(rtlpriv, REG_MCUFWDL); + if (value32 & WINTINI_RDY) { + RT_TRACE(COMP_FW, DBG_LOUD, + ("Polling FW ready success!! REG_MCUFWDL:0x%08x .\n", + value32)); + err = 0; + goto exit; + } + + udelay(FW_8821AE_POLLING_DELAY); + + } while (counter++ < FW_8821AE_POLLING_TIMEOUT_COUNT); + + RT_TRACE(COMP_ERR, DBG_EMERG, + ("Polling FW ready fail!! REG_MCUFWDL:0x%08x .\n", value32)); + +exit: + return err; +} + +int rtl8821ae_download_fw(struct ieee80211_hw *hw, + bool buse_wake_on_wlan_fw + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl8821a_firmware_header *pfwheader; + u8 *pfwdata; + u32 fwsize; + int err; + enum version_8821ae version = rtlhal->version; + + if(!rtlhal->pfirmware) + return 1; + + pfwheader = (struct rtl8821a_firmware_header *)rtlhal->pfirmware; + pfwdata = (u8 *) rtlhal->pfirmware; + fwsize = rtlhal->fwsize; + RT_TRACE(COMP_FW, DBG_DMESG, + ("normal Firmware SIZE %d \n",fwsize)); + + if (IS_FW_HEADER_EXIST_8812(pfwheader) || IS_FW_HEADER_EXIST_8821(pfwheader)) { + RT_TRACE(COMP_FW, DBG_DMESG, + ("Firmware Version(%d), Signature(%#x),Size(%d)\n", + pfwheader->version, pfwheader->signature, + (int)sizeof(struct rtl8821a_firmware_header))); + + pfwdata = pfwdata + sizeof(struct rtl8821a_firmware_header); + fwsize = fwsize - sizeof(struct rtl8821a_firmware_header); + } + + if(rtl_read_byte(rtlpriv, REG_MCUFWDL) & BIT(7)){ + rtl_write_byte(rtlpriv, REG_MCUFWDL, 0x00); + rtl8821ae_firmware_selfreset(hw); + } + _rtl8821ae_enable_fw_download(hw, true); + _rtl8821ae_write_fw(hw, version, pfwdata, fwsize); + _rtl8821ae_enable_fw_download(hw, false); + + err = _rtl8821ae_fw_free_to_go(hw); + if (err) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("Firmware is not ready to run!\n")); + } else { + RT_TRACE(COMP_FW, DBG_LOUD, + ("Firmware is ready to run!\n")); + } + + return 0; +} + +static bool _rtl8821ae_check_fw_read_last_h2c(struct ieee80211_hw *hw, u8 boxnum) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 val_hmetfr; + bool result = false; + + val_hmetfr = rtl_read_byte(rtlpriv, REG_HMETFR); + if (((val_hmetfr >> boxnum) & BIT(0)) == 0) + result = true; + return result; +} + +static void _rtl8821ae_fill_h2c_command(struct ieee80211_hw *hw, + u8 element_id, u32 cmd_len, u8 *p_cmdbuffer) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 boxnum =0; + u16 box_reg = 0, box_extreg = 0; + u8 u1b_tmp = 0; + bool isfw_read = false; + u8 buf_index = 0; + bool bwrite_sucess = false; + u8 wait_h2c_limmit = 100; + /*u8 wait_writeh2c_limmit = 100;*/ + u8 boxcontent[4], boxextcontent[4]; + u32 h2c_waitcounter = 0; + unsigned long flag =0; + u8 idx =0; + + RT_TRACE(COMP_CMD, DBG_LOUD, ("come in\n")); + + while (true) { + spin_lock_irqsave(&rtlpriv->locks.h2c_lock, flag); + if (rtlhal->b_h2c_setinprogress) { + RT_TRACE(COMP_CMD, DBG_LOUD, + ("H2C set in progress! Wait to set.." + "element_id(%d).\n", element_id)); + + while (rtlhal->b_h2c_setinprogress) { + spin_unlock_irqrestore(&rtlpriv->locks.h2c_lock, + flag); + h2c_waitcounter++; + RT_TRACE(COMP_CMD, DBG_LOUD, + ("Wait 100 us (%d times)...\n", + h2c_waitcounter)); + udelay(100); + + if (h2c_waitcounter > 1000) + return; + spin_lock_irqsave(&rtlpriv->locks.h2c_lock, + flag); + } + spin_unlock_irqrestore(&rtlpriv->locks.h2c_lock, flag); + } else { + rtlhal->b_h2c_setinprogress = true; + spin_unlock_irqrestore(&rtlpriv->locks.h2c_lock, flag); + break; + } + } + + while (!bwrite_sucess) { + /*cosa remove this because never reach this.*/ +#if 0 + wait_writeh2c_limmit--; + if (wait_writeh2c_limmit == 0) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("Write H2C fail because no trigger " + "for FW INT!\n")); + break; + } +#endif + + boxnum = rtlhal->last_hmeboxnum; + switch (boxnum) { + case 0: + box_reg = REG_HMEBOX_0; + box_extreg = REG_HMEBOX_EXT_0; + break; + case 1: + box_reg = REG_HMEBOX_1; + box_extreg = REG_HMEBOX_EXT_1; + break; + case 2: + box_reg = REG_HMEBOX_2; + box_extreg = REG_HMEBOX_EXT_2; + break; + case 3: + box_reg = REG_HMEBOX_3; + box_extreg = REG_HMEBOX_EXT_3; + break; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("switch case not process \n")); + break; + } + + isfw_read = false; + u1b_tmp = rtl_read_byte(rtlpriv, REG_CR); + + if (u1b_tmp != 0xEA) + isfw_read = true; + else { + if( rtl_read_byte(rtlpriv, REG_TXDMA_STATUS) == 0xEA || + rtl_read_byte(rtlpriv, REG_TXPKT_EMPTY) == 0xEA) + rtl_write_byte(rtlpriv, REG_SYS_CFG1 + 3, 0xFF); + } + + if (isfw_read == true) { + wait_h2c_limmit = 100; + isfw_read = _rtl8821ae_check_fw_read_last_h2c(hw, boxnum); + while (!isfw_read) { + /*wait until Fw read*/ + wait_h2c_limmit--; + if (wait_h2c_limmit == 0) { + RT_TRACE(COMP_CMD, DBG_LOUD, + ("Wating too long for FW read " + "clear HMEBox(%d)!\n", boxnum)); + break; + } + + udelay(10); + + isfw_read = _rtl8821ae_check_fw_read_last_h2c(hw, boxnum); + u1b_tmp = rtl_read_byte(rtlpriv, 0x130); + RT_TRACE(COMP_CMD, DBG_LOUD, + ("Wating for FW read clear HMEBox(%d)!!! " + "0x130 = %2x\n", boxnum, u1b_tmp)); + } + } + + if (!isfw_read) { + RT_TRACE(COMP_CMD, DBG_LOUD, + ("Write H2C register BOX[%d] fail!!!!! " + "Fw do not read. \n", boxnum)); + break; + } + + memset(boxcontent, 0, sizeof(boxcontent)); + memset(boxextcontent, 0, sizeof(boxextcontent)); + boxcontent[0] = element_id; + RT_TRACE(COMP_CMD, DBG_LOUD, + ("Write element_id box_reg(%4x) = %2x \n", + box_reg, element_id)); + + switch (cmd_len) { + case 1: + case 2: + case 3: + /*boxcontent[0] &= ~(BIT(7));*/ + memcpy((u8 *) (boxcontent) + 1, + p_cmdbuffer + buf_index, cmd_len); + + for (idx = 0; idx < 4; idx++) { + rtl_write_byte(rtlpriv, box_reg + idx, + boxcontent[idx]); + } + break; + case 4: + case 5: + case 6: + case 7: + /*boxcontent[0] |= (BIT(7));*/ + memcpy((u8 *) (boxextcontent), + p_cmdbuffer + buf_index+3, cmd_len-3); + memcpy((u8 *) (boxcontent) + 1, + p_cmdbuffer + buf_index, 3); + + for (idx = 0; idx < 4; idx++) { + rtl_write_byte(rtlpriv, box_extreg + idx, + boxextcontent[idx]); + } + + for (idx = 0; idx < 4; idx++) { + rtl_write_byte(rtlpriv, box_reg + idx, + boxcontent[idx]); + } + break; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("switch case not process \n")); + break; + } + + bwrite_sucess = true; + + rtlhal->last_hmeboxnum = boxnum + 1; + if (rtlhal->last_hmeboxnum == 4) + rtlhal->last_hmeboxnum = 0; + + RT_TRACE(COMP_CMD, DBG_LOUD, + ("pHalData->last_hmeboxnum = %d\n", + rtlhal->last_hmeboxnum)); + } + + spin_lock_irqsave(&rtlpriv->locks.h2c_lock, flag); + rtlhal->b_h2c_setinprogress = false; + spin_unlock_irqrestore(&rtlpriv->locks.h2c_lock, flag); + + RT_TRACE(COMP_CMD, DBG_LOUD, ("go out\n")); +} + +void rtl8821ae_fill_h2c_cmd(struct ieee80211_hw *hw, + u8 element_id, u32 cmd_len, u8 *p_cmdbuffer) +{ + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u32 tmp_cmdbuf[2]; + + if (rtlhal->bfw_ready == false) { + RT_ASSERT(false, ("return H2C cmd because of Fw " + "download fail!!!\n")); + return; + } + + memset(tmp_cmdbuf, 0, 8); + memcpy(tmp_cmdbuf, p_cmdbuffer, cmd_len); + _rtl8821ae_fill_h2c_command(hw, element_id, cmd_len, (u8 *) & tmp_cmdbuf); + + return; +} + +void rtl8821ae_firmware_selfreset(struct ieee80211_hw *hw) +{ + u8 u1b_tmp; + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + + if(rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + { + u1b_tmp = rtl_read_byte(rtlpriv, REG_RSV_CTRL+1); + rtl_write_byte(rtlpriv, REG_RSV_CTRL+1, (u1b_tmp & (~BIT(3)))); + }else { + u1b_tmp = rtl_read_byte(rtlpriv, REG_RSV_CTRL+1); + rtl_write_byte(rtlpriv, REG_RSV_CTRL+1, (u1b_tmp & (~BIT(0)))); + } + + u1b_tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN+1); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN+1, (u1b_tmp & (~BIT(2)))); + udelay(50); + + if(rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + { + u1b_tmp = rtl_read_byte(rtlpriv, REG_RSV_CTRL+1); + rtl_write_byte(rtlpriv, REG_RSV_CTRL+1, (u1b_tmp | BIT(3))); + }else { + u1b_tmp = rtl_read_byte(rtlpriv, REG_RSV_CTRL+1); + rtl_write_byte(rtlpriv, REG_RSV_CTRL+1, (u1b_tmp | BIT(0))); + } + + u1b_tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN+1); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN+1, (u1b_tmp | BIT(2))); + + RT_TRACE(COMP_INIT, DBG_LOUD, (" _8051Reset8812ae(): 8051 reset success .\n")); + +} + +void rtl8821ae_set_fw_pwrmode_cmd(struct ieee80211_hw *hw, u8 mode) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 u1_h2c_set_pwrmode[H2C_8821AE_PWEMODE_LENGTH] = { 0 }; + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + u8 rlbm,power_state = 0; + RT_TRACE(COMP_POWER, DBG_LOUD, ("FW LPS mode = %d\n", mode)); + + SET_H2CCMD_PWRMODE_PARM_MODE(u1_h2c_set_pwrmode, ((mode) ? 1 : 0)); + rlbm = 0;/*YJ,temp,120316. FW now not support RLBM=2.*/ + SET_H2CCMD_PWRMODE_PARM_RLBM(u1_h2c_set_pwrmode, rlbm); + SET_H2CCMD_PWRMODE_PARM_SMART_PS(u1_h2c_set_pwrmode, (rtlpriv->mac80211.p2p) ? ppsc->smart_ps : 1); + SET_H2CCMD_PWRMODE_PARM_AWAKE_INTERVAL(u1_h2c_set_pwrmode, ppsc->reg_max_lps_awakeintvl); + SET_H2CCMD_PWRMODE_PARM_ALL_QUEUE_UAPSD(u1_h2c_set_pwrmode, 0); + if(mode == FW_PS_ACTIVE_MODE) + { + power_state |= FW_PWR_STATE_ACTIVE; + } + else + { + power_state |= FW_PWR_STATE_RF_OFF; + } + SET_H2CCMD_PWRMODE_PARM_PWR_STATE(u1_h2c_set_pwrmode, power_state); + + RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_DMESG, + "rtl92c_set_fw_pwrmode(): u1_h2c_set_pwrmode \n", + u1_h2c_set_pwrmode, H2C_8821AE_PWEMODE_LENGTH); + rtl8821ae_fill_h2c_cmd(hw, H2C_8821AE_SETPWRMODE, H2C_8821AE_PWEMODE_LENGTH, u1_h2c_set_pwrmode); + +} + +void rtl8821ae_set_fw_joinbss_report_cmd(struct ieee80211_hw *hw, u8 mstatus) +{ + u8 u1_joinbssrpt_parm[1] = { 0 }; + + SET_H2CCMD_JOINBSSRPT_PARM_OPMODE(u1_joinbssrpt_parm, mstatus); + + rtl8821ae_fill_h2c_cmd(hw, H2C_8821AE_JOINBSSRPT, 1, u1_joinbssrpt_parm); +} + +void rtl8821ae_set_fw_ap_off_load_cmd(struct ieee80211_hw *hw, u8 ap_offload_enable) +{ + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + u8 u1_apoffload_parm[H2C_8821AE_AP_OFFLOAD_LENGTH] = { 0 }; + + SET_H2CCMD_AP_OFFLOAD_ON(u1_apoffload_parm, ap_offload_enable); + SET_H2CCMD_AP_OFFLOAD_HIDDEN(u1_apoffload_parm, mac->bhiddenssid); + SET_H2CCMD_AP_OFFLOAD_DENYANY(u1_apoffload_parm, 0); + + rtl8821ae_fill_h2c_cmd(hw, H2C_8821AE_AP_OFFLOAD, H2C_8821AE_AP_OFFLOAD_LENGTH, u1_apoffload_parm); + +} + +static bool _rtl8821ae_cmd_send_packet(struct ieee80211_hw *hw, + struct sk_buff *skb) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl8192_tx_ring *ring; + struct rtl_tx_desc *pdesc; + u8 own; + unsigned long flags; + struct sk_buff *pskb = NULL; + + ring = &rtlpci->tx_ring[BEACON_QUEUE]; + + pskb = __skb_dequeue(&ring->queue); + if (pskb) + kfree_skb(pskb); + + spin_lock_irqsave(&rtlpriv->locks.irq_th_lock, flags); + + pdesc = &ring->desc[0]; + own = (u8) rtlpriv->cfg->ops->get_desc((u8 *) pdesc, true, HW_DESC_OWN); + + rtlpriv->cfg->ops->fill_tx_cmddesc(hw, (u8 *) pdesc, 1, 1, skb); + + __skb_queue_tail(&ring->queue, skb); + + spin_unlock_irqrestore(&rtlpriv->locks.irq_th_lock, flags); + + rtlpriv->cfg->ops->tx_polling(hw, BEACON_QUEUE); + + return true; +} + +#define BEACON_PG 0 /* ->1 */ +#define PSPOLL_PG 2 +#define NULL_PG 3 +#define PROBERSP_PG 4 /* ->5 */ + +#define BEACON_PG_8812 0 +#define PSPOLL_PG_8812 1 +#define NULL_PG_8812 2 +#define PROBERSP_PG_8812 3 + +#define BEACON_PG_8821 0 +#define PSPOLL_PG_8821 1 +#define NULL_PG_8821 2 +#define PROBERSP_PG_8821 3 + +#define TOTAL_RESERVED_PKT_LEN_8812 2048 +#define TOTAL_RESERVED_PKT_LEN_8821 1024 + + +static u8 reserved_page_packet_8821[TOTAL_RESERVED_PKT_LEN_8821] = { + /* page 0 */ + 0x80, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x00, 0xe0, 0x4c, 0x02, 0xe2, 0x64, + 0x40, 0x16, 0x9f, 0x23, 0xd4, 0x46, 0x20, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x64, 0x00, 0x20, 0x04, 0x00, 0x06, 0x64, 0x6c, + 0x69, 0x6e, 0x6b, 0x31, 0x01, 0x08, 0x82, 0x84, + 0x8b, 0x96, 0x0c, 0x18, 0x30, 0x48, 0x03, 0x01, + 0x0b, 0x06, 0x02, 0x00, 0x00, 0x2a, 0x01, 0x8b, + 0x32, 0x04, 0x12, 0x24, 0x60, 0x6c, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x10, 0x00, 0x28, 0x8c, 0x00, 0x12, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + /* page 1 */ + 0xa4, 0x10, 0x01, 0xc0, 0x40, 0x16, 0x9f, 0x23, + 0xd4, 0x46, 0x00, 0xe0, 0x4c, 0x02, 0xe2, 0x64, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x00, 0x28, 0x8c, 0x00, 0x12, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + /* page 2 */ + 0x48, 0x01, 0x00, 0x00, 0x40, 0x16, 0x9f, 0x23, + 0xd4, 0x46, 0x00, 0xe0, 0x4c, 0x02, 0xe2, 0x64, + 0x40, 0x16, 0x9f, 0x23, 0xd4, 0x46, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x1a, 0x00, 0x28, 0x8c, 0x00, 0x12, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + /* page 3 */ + 0xc8, 0x01, 0x00, 0x00, 0x40, 0x16, 0x9f, 0x23, + 0xd4, 0x46, 0x00, 0xe0, 0x4c, 0x02, 0xe2, 0x64, + 0x40, 0x16, 0x9f, 0x23, 0xd4, 0x46, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}; + + +static u8 reserved_page_packet_8812[TOTAL_RESERVED_PKT_LEN_8812] = { + 0x80, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, + 0xFF, 0xFF, 0x00, 0xE0, 0x4C, 0x02, 0x53, 0xE5, + 0xE0, 0x46, 0x9A, 0x57, 0x71, 0x30, 0x20, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x64, 0x00, 0x30, 0x04, 0x00, 0x0C, 0x4E, 0x45, + 0x54, 0x47, 0x45, 0x41, 0x52, 0x5F, 0x31, 0x35, + 0x30, 0x4E, 0x01, 0x08, 0x82, 0x84, 0x8B, 0x96, + 0x0C, 0x12, 0x18, 0x24, 0x03, 0x01, 0x03, 0x06, + 0x02, 0x00, 0x00, 0x2A, 0x01, 0x8A, 0x32, 0x04, + 0x30, 0x48, 0x60, 0x6C, 0xDD, 0x18, 0x00, 0x50, + 0xF2, 0x01, 0x01, 0x00, 0x00, 0x50, 0xF2, 0x02, + 0x01, 0x00, 0x00, 0x50, 0xF2, 0x02, 0x01, 0x00, + 0x00, 0x50, 0xF2, 0x02, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x10, 0x00, 0x28, 0x8C, 0x00, 0x12, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0xA4, 0x10, 0x02, 0xC0, 0xE0, 0x46, 0x9A, 0x57, + 0x71, 0x30, 0x00, 0xE0, 0x4C, 0x02, 0x53, 0xE5, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0x00, 0x28, 0x8C, 0x00, 0x12, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0x48, 0x01, 0x00, 0x00, 0xE0, 0x46, 0x9A, 0x57, + 0x71, 0x30, 0x00, 0xE0, 0x4C, 0x02, 0x53, 0xE5, + 0xE0, 0x46, 0x9A, 0x57, 0x71, 0x30, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x1A, 0x00, 0x28, 0x8C, 0x00, 0x12, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + + 0xC8, 0x01, 0x00, 0x00, 0xE0, 0x46, 0x9A, 0x57, + 0x71, 0x30, 0x00, 0xE0, 0x4C, 0x02, 0x53, 0xE5, + 0xE0, 0x46, 0x9A, 0x57, 0x71, 0x30, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}; + +void rtl8812ae_set_fw_rsvdpagepkt(struct ieee80211_hw *hw, bool b_dl_finished) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct sk_buff *skb = NULL; + + u32 totalpacketlen; + bool rtstatus; + u8 u1RsvdPageLoc[5] = { 0 }; + bool b_dlok = false; + + u8* beacon; + u8* p_pspoll; + u8* nullfunc; + u8* p_probersp; + /*--------------------------------------------------------- + (1) beacon + ---------------------------------------------------------*/ + beacon = &reserved_page_packet_8812[BEACON_PG_8812 * 512]; + SET_80211_HDR_ADDRESS2(beacon, mac->mac_addr); + SET_80211_HDR_ADDRESS3(beacon, mac->bssid); + + /*------------------------------------------------------- + (2) ps-poll + --------------------------------------------------------*/ + p_pspoll = &reserved_page_packet_8812[PSPOLL_PG_8812 * 512]; + SET_80211_PS_POLL_AID(p_pspoll, (mac->assoc_id | 0xc000)); + SET_80211_PS_POLL_BSSID(p_pspoll, mac->bssid); + SET_80211_PS_POLL_TA(p_pspoll, mac->mac_addr); + + SET_H2CCMD_RSVDPAGE_LOC_PSPOLL(u1RsvdPageLoc, PSPOLL_PG_8812); + + /*-------------------------------------------------------- + (3) null data + ---------------------------------------------------------*/ + nullfunc = &reserved_page_packet_8812[NULL_PG_8812* 512]; + SET_80211_HDR_ADDRESS1(nullfunc, mac->bssid); + SET_80211_HDR_ADDRESS2(nullfunc, mac->mac_addr); + SET_80211_HDR_ADDRESS3(nullfunc, mac->bssid); + + SET_H2CCMD_RSVDPAGE_LOC_NULL_DATA(u1RsvdPageLoc, NULL_PG_8812); + + /*--------------------------------------------------------- + (4) probe response + ----------------------------------------------------------*/ + p_probersp = &reserved_page_packet_8812[PROBERSP_PG_8812 * 512]; + SET_80211_HDR_ADDRESS1(p_probersp, mac->bssid); + SET_80211_HDR_ADDRESS2(p_probersp, mac->mac_addr); + SET_80211_HDR_ADDRESS3(p_probersp, mac->bssid); + + SET_H2CCMD_RSVDPAGE_LOC_PROBE_RSP(u1RsvdPageLoc, PROBERSP_PG_8812); + + totalpacketlen = TOTAL_RESERVED_PKT_LEN_8812; + + RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_LOUD, + "rtl8821ae_set_fw_rsvdpagepkt(): HW_VAR_SET_TX_CMD: ALL \n", + &reserved_page_packet_8812[0], totalpacketlen); + RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_DMESG, + "rtl8821ae_set_fw_rsvdpagepkt(): HW_VAR_SET_TX_CMD: ALL \n", + u1RsvdPageLoc, 3); + + + skb = dev_alloc_skb(totalpacketlen); + memcpy((u8 *) skb_put(skb, totalpacketlen), + &reserved_page_packet_8812, totalpacketlen); + + rtstatus = _rtl8821ae_cmd_send_packet(hw, skb); + + if (rtstatus) + b_dlok = true; + + if (b_dlok) { + RT_TRACE(COMP_POWER, DBG_LOUD, + ("Set RSVD page location to Fw.\n")); + RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_DMESG, + "H2C_RSVDPAGE:\n", + u1RsvdPageLoc, 3); + rtl8821ae_fill_h2c_cmd(hw, H2C_8821AE_RSVDPAGE, + sizeof(u1RsvdPageLoc), u1RsvdPageLoc); + } else + RT_TRACE(COMP_ERR, DBG_WARNING, + ("Set RSVD page location to Fw FAIL!!!!!!.\n")); +} + +void rtl8821ae_set_fw_rsvdpagepkt(struct ieee80211_hw *hw, bool b_dl_finished) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct sk_buff *skb = NULL; + + u32 totalpacketlen; + bool rtstatus; + u8 u1RsvdPageLoc[5] = { 0 }; + bool b_dlok = false; + + u8* beacon; + u8* p_pspoll; + u8* nullfunc; + u8* p_probersp; + /*--------------------------------------------------------- + (1) beacon + ---------------------------------------------------------*/ + beacon = &reserved_page_packet_8821[BEACON_PG_8821 * 256]; + SET_80211_HDR_ADDRESS2(beacon, mac->mac_addr); + SET_80211_HDR_ADDRESS3(beacon, mac->bssid); + + /*------------------------------------------------------- + (2) ps-poll + --------------------------------------------------------*/ + p_pspoll = &reserved_page_packet_8821[PSPOLL_PG_8821 * 256]; + SET_80211_PS_POLL_AID(p_pspoll, (mac->assoc_id | 0xc000)); + SET_80211_PS_POLL_BSSID(p_pspoll, mac->bssid); + SET_80211_PS_POLL_TA(p_pspoll, mac->mac_addr); + + SET_H2CCMD_RSVDPAGE_LOC_PSPOLL(u1RsvdPageLoc, PSPOLL_PG_8821); + + /*-------------------------------------------------------- + (3) null data + ---------------------------------------------------------*/ + nullfunc = &reserved_page_packet_8821[NULL_PG_8821 * 256]; + SET_80211_HDR_ADDRESS1(nullfunc, mac->bssid); + SET_80211_HDR_ADDRESS2(nullfunc, mac->mac_addr); + SET_80211_HDR_ADDRESS3(nullfunc, mac->bssid); + + SET_H2CCMD_RSVDPAGE_LOC_NULL_DATA(u1RsvdPageLoc, NULL_PG_8821); + + /*--------------------------------------------------------- + (4) probe response + ----------------------------------------------------------*/ + p_probersp = &reserved_page_packet_8821[PROBERSP_PG_8821 * 256]; + SET_80211_HDR_ADDRESS1(p_probersp, mac->bssid); + SET_80211_HDR_ADDRESS2(p_probersp, mac->mac_addr); + SET_80211_HDR_ADDRESS3(p_probersp, mac->bssid); + + SET_H2CCMD_RSVDPAGE_LOC_PROBE_RSP(u1RsvdPageLoc, PROBERSP_PG_8821); + + totalpacketlen = TOTAL_RESERVED_PKT_LEN_8821; + + RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_LOUD, + "rtl8821ae_set_fw_rsvdpagepkt(): HW_VAR_SET_TX_CMD: ALL \n", + &reserved_page_packet_8821[0], totalpacketlen); + RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_DMESG, + "rtl8821ae_set_fw_rsvdpagepkt(): HW_VAR_SET_TX_CMD: ALL \n", + u1RsvdPageLoc, 3); + + + skb = dev_alloc_skb(totalpacketlen); + memcpy((u8 *) skb_put(skb, totalpacketlen), + &reserved_page_packet_8821, totalpacketlen); + + rtstatus = _rtl8821ae_cmd_send_packet(hw, skb); + + if (rtstatus) + b_dlok = true; + + if (b_dlok) { + RT_TRACE(COMP_POWER, DBG_LOUD, + ("Set RSVD page location to Fw.\n")); + RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_DMESG, + "H2C_RSVDPAGE:\n", + u1RsvdPageLoc, 3); + rtl8821ae_fill_h2c_cmd(hw, H2C_8821AE_RSVDPAGE, + sizeof(u1RsvdPageLoc), u1RsvdPageLoc); + } else + RT_TRACE(COMP_ERR, DBG_WARNING, + ("Set RSVD page location to Fw FAIL!!!!!!.\n")); +} + +/*Shoud check FW support p2p or not.*/ +void rtl8821ae_set_p2p_ctw_period_cmd(struct ieee80211_hw *hw, u8 ctwindow) +{ + u8 u1_ctwindow_period[1] ={ ctwindow}; + + rtl8821ae_fill_h2c_cmd(hw, H2C_8821AE_P2P_PS_CTW_CMD, 1, u1_ctwindow_period); + +} + +void rtl8821ae_set_p2p_ps_offload_cmd(struct ieee80211_hw *hw, u8 p2p_ps_state) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *rtlps = rtl_psc(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_p2p_ps_info *p2pinfo = &(rtlps->p2p_ps_info); + struct p2p_ps_offload_t *p2p_ps_offload = &rtlhal->p2p_ps_offload; + u8 i; + u16 ctwindow; + u32 start_time, tsf_low; + + switch(p2p_ps_state) + { + case P2P_PS_DISABLE: + RT_TRACE(COMP_FW, DBG_LOUD,("P2P_PS_DISABLE \n")); + memset(p2p_ps_offload, 0, 1); + break; + case P2P_PS_ENABLE: + RT_TRACE(COMP_FW, DBG_LOUD,("P2P_PS_ENABLE \n")); + /* update CTWindow value. */ + if( p2pinfo->ctwindow > 0 ) + { + p2p_ps_offload->CTWindow_En = 1; + ctwindow = p2pinfo->ctwindow; + rtl8821ae_set_p2p_ctw_period_cmd(hw, ctwindow); + } + + /* hw only support 2 set of NoA */ + for( i=0 ; inoa_num ; i++) + { + /* To control the register setting for which NOA*/ + rtl_write_byte(rtlpriv, 0x5cf, (i << 4)); + if(i == 0) + p2p_ps_offload->NoA0_En = 1; + else + p2p_ps_offload->NoA1_En = 1; + + /* config P2P NoA Descriptor Register */ + rtl_write_dword(rtlpriv, 0x5E0, p2pinfo->noa_duration[i]); + rtl_write_dword(rtlpriv, 0x5E4, p2pinfo->noa_interval[i]); + + /*Get Current TSF value */ + tsf_low = rtl_read_dword(rtlpriv, REG_TSFTR); + + start_time = p2pinfo->noa_start_time[i]; + if(p2pinfo->noa_count_type[i] != 1) + { + while( start_time <= (tsf_low+(50*1024) ) ) { + start_time += p2pinfo->noa_interval[i]; + if(p2pinfo->noa_count_type[i] != 255) + p2pinfo->noa_count_type[i]--; + } + } + rtl_write_dword(rtlpriv, 0x5E8, start_time); + rtl_write_dword(rtlpriv, 0x5EC, p2pinfo->noa_count_type[i] ); + + } + + if( (p2pinfo->opp_ps == 1) || (p2pinfo->noa_num > 0) ) + { + /* rst p2p circuit */ + rtl_write_byte(rtlpriv, REG_DUAL_TSF_RST, BIT(4)); + + p2p_ps_offload->Offload_En = 1; + + if(P2P_ROLE_GO == rtlpriv->mac80211.p2p) + { + p2p_ps_offload->role= 1; + p2p_ps_offload->AllStaSleep = 0; + } + else + { + p2p_ps_offload->role= 0; + } + + p2p_ps_offload->discovery = 0; + } + break; + case P2P_PS_SCAN: + RT_TRACE(COMP_FW, DBG_LOUD,("P2P_PS_SCAN \n")); + p2p_ps_offload->discovery = 1; + break; + case P2P_PS_SCAN_DONE: + RT_TRACE(COMP_FW, DBG_LOUD,("P2P_PS_SCAN_DONE \n")); + p2p_ps_offload->discovery = 0; + p2pinfo->p2p_ps_state = P2P_PS_ENABLE; + break; + default: + break; + } + + rtl8821ae_fill_h2c_cmd(hw, H2C_8821AE_P2P_PS_OFFLOAD, 1, (u8 *)p2p_ps_offload); + +} + +void rtl8812ae_c2h_ra_report_handler( + struct ieee80211_hw *hw, + u8 *cmd_buf, + u8 cmd_len +) +{ + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 rate = cmd_buf[0] & 0x3F; + + rtlhal->current_ra_rate= rtl8812ae_hw_rate_to_mrate(hw, rate); + + rtl8812ae_dm_update_init_rate(hw, rate); +} + + +void _rtl8812ae_c2h_content_parsing( + struct ieee80211_hw *hw, + u8 c2h_cmd_id, + u8 c2h_cmd_len, + u8 *tmp_buf +) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + switch (c2h_cmd_id) { + case C2H_8812_DBG: + RT_TRACE(COMP_FW, DBG_LOUD,("[C2H], C2H_8812_DBG!!\n")); + break; + + case C2H_8812_RA_RPT: + rtl8812ae_c2h_ra_report_handler(hw, tmp_buf, c2h_cmd_len); + break; + + default: + break; + } + +} + +void rtl8812ae_c2h_packet_handler( + struct ieee80211_hw *hw, + u8 *buffer, + u8 length + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 c2h_cmd_id=0, c2h_cmd_seq=0, c2h_cmd_len=0; + u8 *tmp_buf=NULL; + + c2h_cmd_id = buffer[0]; + c2h_cmd_seq = buffer[1]; + c2h_cmd_len = length -2; + tmp_buf = buffer + 2; + + RT_TRACE(COMP_FW, DBG_LOUD, + ("[C2H packet], c2hCmdId=0x%x, c2hCmdSeq=0x%x, c2hCmdLen=%d\n", + c2h_cmd_id, c2h_cmd_seq, c2h_cmd_len)); + + RT_PRINT_DATA(rtlpriv, COMP_FW, DBG_LOUD, + "[C2H packet], Content Hex:\n", tmp_buf, c2h_cmd_len); + _rtl8812ae_c2h_content_parsing(hw, c2h_cmd_id, c2h_cmd_len, tmp_buf); +} + + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/fw.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/fw.h @@ -0,0 +1,321 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8821AE__FW__H__ +#define __RTL8821AE__FW__H__ + +#define FW_8821AE_SIZE 0x8000 +#define FW_8821AE_START_ADDRESS 0x1000 +#define FW_8821AE_END_ADDRESS 0x5FFF +#define FW_8821AE_PAGE_SIZE 4096 +#define FW_8821AE_POLLING_DELAY 5 +#define FW_8821AE_POLLING_TIMEOUT_COUNT 6000 + +#define IS_FW_HEADER_EXIST_8812(_pfwhdr) \ + ((_pfwhdr->signature&0xFFF0) == 0x9500 ) + +#define IS_FW_HEADER_EXIST_8821(_pfwhdr) \ + ((_pfwhdr->signature&0xFFF0) == 0x2100 ) + +#define USE_OLD_WOWLAN_DEBUG_FW 0 + +#define H2C_8821AE_RSVDPAGE_LOC_LEN 5 +#define H2C_8821AE_PWEMODE_LENGTH 5 +#define H2C_8821AE_JOINBSSRPT_LENGTH 1 +#define H2C_8821AE_AP_OFFLOAD_LENGTH 3 +#define H2C_8821AE_WOWLAN_LENGTH 3 +#define H2C_8821AE_KEEP_ALIVE_CTRL_LENGTH 3 +#if(USE_OLD_WOWLAN_DEBUG_FW == 0) +#define H2C_8821AE_REMOTE_WAKE_CTRL_LEN 1 +#else +#define H2C_8821AE_REMOTE_WAKE_CTRL_LEN 3 +#endif +#define H2C_8821AE_AOAC_GLOBAL_INFO_LEN 2 +#define H2C_8821AE_AOAC_RSVDPAGE_LOC_LEN 7 + + +/* Fw PS state for RPWM. +*BIT[2:0] = HW state +*BIT[3] = Protocol PS state, 1: register active state , 0: register sleep state +*BIT[4] = sub-state +*/ +#define FW_PS_GO_ON BIT(0) +#define FW_PS_TX_NULL BIT(1) +#define FW_PS_RF_ON BIT(2) +#define FW_PS_REGISTER_ACTIVE BIT(3) + +#define FW_PS_DPS BIT(0) +#define FW_PS_LCLK (FW_PS_DPS) +#define FW_PS_RF_OFF BIT(1) +#define FW_PS_ALL_ON BIT(2) +#define FW_PS_ST_ACTIVE BIT(3) +#define FW_PS_ISR_ENABLE BIT(4) +#define FW_PS_IMR_ENABLE BIT(5) + + +#define FW_PS_ACK BIT(6) +#define FW_PS_TOGGLE BIT(7) + + /* 8821AE RPWM value*/ + /* BIT[0] = 1: 32k, 0: 40M*/ +#define FW_PS_CLOCK_OFF BIT(0) /* 32k*/ +#define FW_PS_CLOCK_ON 0 /*40M*/ + +#define FW_PS_STATE_MASK (0x0F) +#define FW_PS_STATE_HW_MASK (0x07) +#define FW_PS_STATE_INT_MASK (0x3F) /*ISR_ENABLE, IMR_ENABLE, and PS mode should be inherited.*/ + +#define FW_PS_STATE(x) (FW_PS_STATE_MASK & (x)) +#define FW_PS_STATE_HW(x) (FW_PS_STATE_HW_MASK & (x)) +#define FW_PS_STATE_INT(x) (FW_PS_STATE_INT_MASK & (x)) +#define FW_PS_ISR_VAL(x) ((x) & 0x70) +#define FW_PS_IMR_MASK(x) ((x) & 0xDF) +#define FW_PS_KEEP_IMR(x) ((x) & 0x20) + + +#define FW_PS_STATE_S0 (FW_PS_DPS) +#define FW_PS_STATE_S1 (FW_PS_LCLK) +#define FW_PS_STATE_S2 (FW_PS_RF_OFF) +#define FW_PS_STATE_S3 (FW_PS_ALL_ON) +#define FW_PS_STATE_S4 ((FW_PS_ST_ACTIVE) | (FW_PS_ALL_ON)) + +#define FW_PS_STATE_ALL_ON_8821AE (FW_PS_CLOCK_ON) /* ((FW_PS_RF_ON) | (FW_PS_REGISTER_ACTIVE))*/ +#define FW_PS_STATE_RF_ON_8821AE (FW_PS_CLOCK_ON) /* (FW_PS_RF_ON)*/ +#define FW_PS_STATE_RF_OFF_8821AE (FW_PS_CLOCK_ON) /* 0x0*/ +#define FW_PS_STATE_RF_OFF_LOW_PWR_8821AE (FW_PS_CLOCK_OFF) /* (FW_PS_STATE_RF_OFF)*/ + +#define FW_PS_STATE_ALL_ON_92C (FW_PS_STATE_S4) +#define FW_PS_STATE_RF_ON_92C (FW_PS_STATE_S3) +#define FW_PS_STATE_RF_OFF_92C (FW_PS_STATE_S2) +#define FW_PS_STATE_RF_OFF_LOW_PWR_92C (FW_PS_STATE_S1) + + +/* For 8821AE H2C PwrMode Cmd ID 5.*/ +#define FW_PWR_STATE_ACTIVE ((FW_PS_RF_ON) | (FW_PS_REGISTER_ACTIVE)) +#define FW_PWR_STATE_RF_OFF 0 + +#define FW_PS_IS_ACK(x) ((x) & FW_PS_ACK ) +#define FW_PS_IS_CLK_ON(x) ((x) & (FW_PS_RF_OFF |FW_PS_ALL_ON )) +#define FW_PS_IS_RF_ON(x) ((x) & (FW_PS_ALL_ON)) +#define FW_PS_IS_ACTIVE(x) ((x) & (FW_PS_ST_ACTIVE)) +#define FW_PS_IS_CPWM_INT(x) ((x) & 0x40) + +#define FW_CLR_PS_STATE(x) ((x) = ((x) & (0xF0))) + +#define IS_IN_LOW_POWER_STATE_8821AE(FwPSState) \ + (FW_PS_STATE(FwPSState) == FW_PS_CLOCK_OFF) + +#define FW_PWR_STATE_ACTIVE ((FW_PS_RF_ON) | (FW_PS_REGISTER_ACTIVE)) +#define FW_PWR_STATE_RF_OFF 0 + +struct rtl8821a_firmware_header { + u16 signature; + u8 category; + u8 function; + u16 version; + u8 subversion; + u8 rsvd1; + u8 month; + u8 date; + u8 hour; + u8 minute; + u16 ramcodeSize; + u16 rsvd2; + u32 svnindex; + u32 rsvd3; + u32 rsvd4; + u32 rsvd5; +}; + +enum rtl8812_c2h_evt{ + C2H_8812_DBG = 0, + C2H_8812_LB = 1, + C2H_8812_TXBF = 2, + C2H_8812_TX_REPORT = 3, + C2H_8812_BT_INFO = 9, + C2H_8812_BT_MP = 11, + C2H_8812_RA_RPT=12, + + C2H_8812_FW_SWCHNL = 0x10, + C2H_8812_IQK_FINISH = 0x11, + MAX_8812_C2HEVENT +}; + +enum rtl8821a_h2c_cmd { + H2C_8821AE_RSVDPAGE = 0, + H2C_8821AE_JOINBSSRPT = 1, + H2C_8821AE_SCAN = 2, + H2C_8821AE_KEEP_ALIVE_CTRL = 3, + H2C_8821AE_DISCONNECT_DECISION = 4, +#if(USE_OLD_WOWLAN_DEBUG_FW == 1) + H2C_8821AE_WO_WLAN = 5, +#endif + H2C_8821AE_INIT_OFFLOAD = 6, +#if(USE_OLD_WOWLAN_DEBUG_FW == 1) + H2C_8821AE_REMOTE_WAKE_CTRL = 7, +#endif + H2C_8821AE_AP_OFFLOAD = 8, + H2C_8821AE_BCN_RSVDPAGE = 9, + H2C_8821AE_PROBERSP_RSVDPAGE = 10, + + H2C_8821AE_SETPWRMODE = 0x20, + H2C_8821AE_PS_TUNING_PARA = 0x21, + H2C_8821AE_PS_TUNING_PARA2 = 0x22, + H2C_8821AE_PS_LPS_PARA = 0x23, + H2C_8821AE_P2P_PS_OFFLOAD = 024, + +#if(USE_OLD_WOWLAN_DEBUG_FW == 0) + H2C_8821AE_WO_WLAN = 0x80, + H2C_8821AE_REMOTE_WAKE_CTRL = 0x81, + H2C_8821AE_AOAC_GLOBAL_INFO = 0x82, + H2C_8821AE_AOAC_RSVDPAGE = 0x83, +#endif + H2C_RSSI_REPORT = 0x42, + H2C_8821AE_RA_MASK = 0x40, + H2C_8821AE_SELECTIVE_SUSPEND_ROF_CMD, + H2C_8821AE_P2P_PS_MODE, + H2C_8821AE_PSD_RESULT, + /*Not defined CTW CMD for P2P yet*/ + H2C_8821AE_P2P_PS_CTW_CMD, + MAX_8821AE_H2CCMD +}; + +#define pagenum_128(_len) (u32)(((_len)>>7) + ((_len)&0x7F ? 1:0)) + +#define SET_8821AE_H2CCMD_WOWLAN_FUNC_ENABLE(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE(__pH2CCmd, 0, 1, __Value) +#define SET_8821AE_H2CCMD_WOWLAN_PATTERN_MATCH_ENABLE(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE(__pH2CCmd, 1, 1, __Value) +#define SET_8821AE_H2CCMD_WOWLAN_MAGIC_PKT_ENABLE(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE(__pH2CCmd, 2, 1, __Value) +#define SET_8821AE_H2CCMD_WOWLAN_UNICAST_PKT_ENABLE(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE(__pH2CCmd, 3, 1, __Value) +#define SET_8821AE_H2CCMD_WOWLAN_ALL_PKT_DROP(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE(__pH2CCmd, 4, 1, __Value) +#define SET_8821AE_H2CCMD_WOWLAN_GPIO_ACTIVE(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE(__pH2CCmd, 5, 1, __Value) +#define SET_8821AE_H2CCMD_WOWLAN_REKEY_WAKE_UP(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE(__pH2CCmd, 6, 1, __Value) +#define SET_8821AE_H2CCMD_WOWLAN_DISCONNECT_WAKE_UP(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE(__pH2CCmd, 7, 1, __Value) +#define SET_8821AE_H2CCMD_WOWLAN_GPIONUM(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+1, 0, 8, __Value) +#define SET_8821AE_H2CCMD_WOWLAN_GPIO_DURATION(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+2, 0, 8, __Value) + + +#define SET_H2CCMD_PWRMODE_PARM_MODE(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 0, 8, __val) +#define SET_H2CCMD_PWRMODE_PARM_RLBM(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+1, 0, 4, __Value) +#define SET_H2CCMD_PWRMODE_PARM_SMART_PS(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+1, 4, 4, __Value) +#define SET_H2CCMD_PWRMODE_PARM_AWAKE_INTERVAL(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+2, 0, 8, __Value) +#define SET_H2CCMD_PWRMODE_PARM_ALL_QUEUE_UAPSD(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+3, 0, 8, __Value) +#define SET_H2CCMD_PWRMODE_PARM_PWR_STATE(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+4, 0, 8, __Value) +#define GET_8821AE_H2CCMD_PWRMODE_PARM_MODE(__pH2CCmd) \ + LE_BITS_TO_1BYTE(__pH2CCmd, 0, 8) + +#define SET_H2CCMD_JOINBSSRPT_PARM_OPMODE(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 0, 8, __val) +#define SET_H2CCMD_RSVDPAGE_LOC_PROBE_RSP(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE(__ph2ccmd, 0, 8, __val) +#define SET_H2CCMD_RSVDPAGE_LOC_PSPOLL(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+1, 0, 8, __val) +#define SET_H2CCMD_RSVDPAGE_LOC_NULL_DATA(__ph2ccmd, __val) \ + SET_BITS_TO_LE_1BYTE((__ph2ccmd)+2, 0, 8, __val) + +/* AP_OFFLOAD */ +#define SET_H2CCMD_AP_OFFLOAD_ON(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE(__pH2CCmd, 0, 8, __Value) +#define SET_H2CCMD_AP_OFFLOAD_HIDDEN(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+1, 0, 8, __Value) +#define SET_H2CCMD_AP_OFFLOAD_DENYANY(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+2, 0, 8, __Value) +#define SET_H2CCMD_AP_OFFLOAD_WAKEUP_EVT_RPT(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+3, 0, 8, __Value) + +/* Keep Alive Control*/ +#define SET_8821AE_H2CCMD_KEEP_ALIVE_ENABLE(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE(__pH2CCmd, 0, 1, __Value) +#define SET_8821AE_H2CCMD_KEEP_ALIVE_ACCPEPT_USER_DEFINED(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE(__pH2CCmd, 1, 1, __Value) +#define SET_8821AE_H2CCMD_KEEP_ALIVE_PERIOD(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+1, 0, 8, __Value) + +/*REMOTE_WAKE_CTRL */ +#define SET_8821AE_H2CCMD_REMOTE_WAKE_CTRL_EN(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE(__pH2CCmd, 0, 1, __Value) +#if(USE_OLD_WOWLAN_DEBUG_FW == 0) +#define SET_8821AE_H2CCMD_REMOTE_WAKE_CTRL_ARP_OFFLOAD_EN(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE(__pH2CCmd, 1, 1, __Value) +#define SET_8821AE_H2CCMD_REMOTE_WAKE_CTRL_NDP_OFFLOAD_EN(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE(__pH2CCmd, 2, 1, __Value) +#define SET_8821AE_H2CCMD_REMOTE_WAKE_CTRL_GTK_OFFLOAD_EN(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE(__pH2CCmd, 3, 1, __Value) +#else +#define SET_8821AE_H2CCMD_REMOTE_WAKE_CTRL_PAIRWISE_ENC_ALG(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+1, 0, 8, __Value) +#define SET_8821AE_H2CCMD_REMOTE_WAKE_CTRL_GROUP_ENC_ALG(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+2, 0, 8, __Value) +#endif + +/* GTK_OFFLOAD */ +#define SET_8821AE_H2CCMD_AOAC_GLOBAL_INFO_PAIRWISE_ENC_ALG(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE(__pH2CCmd, 0, 8, __Value) +#define SET_8821AE_H2CCMD_AOAC_GLOBAL_INFO_GROUP_ENC_ALG(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+1, 0, 8, __Value) + +/* AOAC_RSVDPAGE_LOC */ +#define SET_8821AE_H2CCMD_AOAC_RSVDPAGE_LOC_REMOTE_WAKE_CTRL_INFO(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd), 0, 8, __Value) +#define SET_8821AE_H2CCMD_AOAC_RSVDPAGE_LOC_ARP_RSP(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+1, 0, 8, __Value) +#define SET_8821AE_H2CCMD_AOAC_RSVDPAGE_LOC_NEIGHBOR_ADV(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+2, 0, 8, __Value) +#define SET_8821AE_H2CCMD_AOAC_RSVDPAGE_LOC_GTK_RSP(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+3, 0, 8, __Value) +#define SET_8821AE_H2CCMD_AOAC_RSVDPAGE_LOC_GTK_INFO(__pH2CCmd, __Value) \ + SET_BITS_TO_LE_1BYTE((__pH2CCmd)+4, 0, 8, __Value) + +int rtl8821ae_download_fw(struct ieee80211_hw *hw, + bool buse_wake_on_wlan_fw); +void rtl8821ae_fill_h2c_cmd(struct ieee80211_hw *hw, u8 element_id, + u32 cmd_len, u8 *p_cmdbuffer); +void rtl8821ae_firmware_selfreset(struct ieee80211_hw *hw); +void rtl8821ae_set_fw_pwrmode_cmd(struct ieee80211_hw *hw, u8 mode); +void rtl8821ae_set_fw_joinbss_report_cmd(struct ieee80211_hw *hw, u8 mstatus); +void rtl8821ae_set_fw_ap_off_load_cmd(struct ieee80211_hw *hw, u8 ap_offload_enable); +void rtl8821ae_set_fw_rsvdpagepkt(struct ieee80211_hw *hw, bool b_dl_finished); +void rtl8812ae_set_fw_rsvdpagepkt(struct ieee80211_hw *hw, bool b_dl_finished); +void rtl8821ae_set_p2p_ps_offload_cmd(struct ieee80211_hw *hw, u8 p2p_ps_state); +void rtl8812ae_c2h_packet_handler(struct ieee80211_hw *hw, u8 *buffer, u8 length); +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/hal_bt_coexist.c +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/hal_bt_coexist.c @@ -0,0 +1,519 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "hal_bt_coexist.h" +#include "../pci.h" +#include "dm.h" +#include "fw.h" +#include "phy.h" +#include "reg.h" +#include "hal_btc.h" + +static bool bt_operation_on = false; + +void rtl8821ae_dm_bt_reject_ap_aggregated_packet(struct ieee80211_hw *hw, bool b_reject) +{ +#if 0 + struct rtl_priv rtlpriv = rtl_priv(hw); + PRX_TS_RECORD pRxTs = NULL; + + if(b_reject){ + // Do not allow receiving A-MPDU aggregation. + if (rtlpriv->mac80211.vendor == PEER_CISCO) { + if (pHTInfo->bAcceptAddbaReq) { + RTPRINT(FBT, BT_TRACE, ("BT_Disallow AMPDU \n")); + pHTInfo->bAcceptAddbaReq = FALSE; + if(GetTs(Adapter, (PTS_COMMON_INFO*)(&pRxTs), pMgntInfo->Bssid, 0, RX_DIR, FALSE)) + TsInitDelBA(Adapter, (PTS_COMMON_INFO)pRxTs, RX_DIR); + } + } else { + if (!pHTInfo->bAcceptAddbaReq) { + RTPRINT(FBT, BT_TRACE, ("BT_Allow AMPDU BT Idle\n")); + pHTInfo->bAcceptAddbaReq = TRUE; + } + } + } else { + if(rtlpriv->mac80211.vendor == PEER_CISCO) { + if (!pHTInfo->bAcceptAddbaReq) { + RTPRINT(FBT, BT_TRACE, ("BT_Allow AMPDU \n")); + pHTInfo->bAcceptAddbaReq = TRUE; + } + } + } +#endif +} + +void _rtl8821ae_dm_bt_check_wifi_state(struct ieee80211_hw *hw) +{ +struct rtl_priv *rtlpriv = rtl_priv(hw); +struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); +struct rtl_phy *rtlphy = &(rtlpriv->phy); + +if (rtlpriv->link_info.b_busytraffic) { + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_IDLE; + + if(rtlpriv->link_info.b_tx_busy_traffic) { + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_WIFI_UPLINK; + } else { + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_UPLINK; + } + + if(rtlpriv->link_info.b_rx_busy_traffic) { + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_WIFI_DOWNLINK; + } else { + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_DOWNLINK; + } +} else { + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_WIFI_IDLE; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_UPLINK; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_DOWNLINK; +} + +if (rtlpriv->mac80211.mode == WIRELESS_MODE_G + || rtlpriv->mac80211.mode == WIRELESS_MODE_B) { + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_WIFI_LEGACY; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_HT20; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_HT40; +} else { + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_LEGACY; + if(rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20_40) { + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_WIFI_HT40; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_HT20; + } else { + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_WIFI_HT20; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_HT40; + } +} + +if (bt_operation_on) { + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_BT30; +} else { + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_BT30; +} +} + + +u8 rtl8821ae_dm_bt_check_coex_rssi_state1(struct ieee80211_hw *hw, + u8 level_num, u8 rssi_thresh, u8 rssi_thresh1) + +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + long undecoratedsmoothed_pwdb = 0; + u8 bt_rssi_state = 0; + + undecoratedsmoothed_pwdb = rtl8821ae_dm_bt_get_rx_ss(hw); + + if(level_num == 2) { + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_RSSI_1_MEDIUM; + + if( (rtlpcipriv->btcoexist.bt_pre_rssi_state == BT_RSSI_STATE_LOW) || + (rtlpcipriv->btcoexist.bt_pre_rssi_state == BT_RSSI_STATE_STAY_LOW)) { + if(undecoratedsmoothed_pwdb >= (rssi_thresh + BT_FW_COEX_THRESH_TOL)) { + bt_rssi_state = BT_RSSI_STATE_HIGH; + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_WIFI_RSSI_1_HIGH; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_RSSI_1_LOW; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[DM][BT], RSSI_1 state switch to High\n")); + } else { + bt_rssi_state = BT_RSSI_STATE_STAY_LOW; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[DM][BT], RSSI_1 state stay at Low\n")); + } + } else { + if(undecoratedsmoothed_pwdb < rssi_thresh) { + bt_rssi_state = BT_RSSI_STATE_LOW; + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_WIFI_RSSI_1_LOW; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_RSSI_1_HIGH; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[DM][BT], RSSI_1 state switch to Low\n")); + } else { + bt_rssi_state = BT_RSSI_STATE_STAY_HIGH; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[DM][BT], RSSI_1 state stay at High\n")); + } + } + } else if(level_num == 3) { + if(rssi_thresh > rssi_thresh1) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[DM][BT], RSSI_1 thresh error!!\n")); + return rtlpcipriv->btcoexist.bt_pre_rssi_state; + } + + if( (rtlpcipriv->btcoexist.bt_pre_rssi_state == BT_RSSI_STATE_LOW) || + (rtlpcipriv->btcoexist.bt_pre_rssi_state == BT_RSSI_STATE_STAY_LOW)) { + if(undecoratedsmoothed_pwdb >= (rssi_thresh+BT_FW_COEX_THRESH_TOL)) { + bt_rssi_state = BT_RSSI_STATE_MEDIUM; + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_WIFI_RSSI_1_MEDIUM; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_RSSI_1_LOW; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_RSSI_1_HIGH; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[DM][BT], RSSI_1 state switch to Medium\n")); + } else { + bt_rssi_state = BT_RSSI_STATE_STAY_LOW; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[DM][BT], RSSI_1 state stay at Low\n")); + } + } else if( (rtlpcipriv->btcoexist.bt_pre_rssi_state == BT_RSSI_STATE_MEDIUM) || + (rtlpcipriv->btcoexist.bt_pre_rssi_state == BT_RSSI_STATE_STAY_MEDIUM)) { + if(undecoratedsmoothed_pwdb >= (rssi_thresh1 + BT_FW_COEX_THRESH_TOL)) { + bt_rssi_state = BT_RSSI_STATE_HIGH; + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_WIFI_RSSI_1_HIGH; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_RSSI_1_LOW; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_RSSI_1_MEDIUM; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[DM][BT], RSSI_1 state switch to High\n")); + } else if(undecoratedsmoothed_pwdb < rssi_thresh) { + bt_rssi_state = BT_RSSI_STATE_LOW; + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_WIFI_RSSI_1_LOW; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_RSSI_1_HIGH; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_RSSI_1_MEDIUM; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[DM][BT], RSSI_1 state switch to Low\n")); + } else { + bt_rssi_state = BT_RSSI_STATE_STAY_MEDIUM; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[DM][BT], RSSI_1 state stay at Medium\n")); + } + } else { + if(undecoratedsmoothed_pwdb < rssi_thresh1) { + bt_rssi_state = BT_RSSI_STATE_MEDIUM; + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_WIFI_RSSI_1_MEDIUM; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_RSSI_1_HIGH; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_RSSI_1_LOW; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE,("[DM][BT], RSSI_1 state switch to Medium\n")); + } else { + bt_rssi_state = BT_RSSI_STATE_STAY_HIGH; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[DM][BT], RSSI_1 state stay at High\n")); + } + } + } + + rtlpcipriv->btcoexist.bt_pre_rssi_state1 = bt_rssi_state; + + return bt_rssi_state; +} + +u8 rtl8821ae_dm_bt_check_coex_rssi_state(struct ieee80211_hw *hw, + u8 level_num, u8 rssi_thresh, u8 rssi_thresh1) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + long undecoratedsmoothed_pwdb = 0; + u8 bt_rssi_state = 0; + + undecoratedsmoothed_pwdb = rtl8821ae_dm_bt_get_rx_ss(hw); + + if (level_num == 2) { + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_WIFI_RSSI_MEDIUM; + + if ((rtlpcipriv->btcoexist.bt_pre_rssi_state == BT_RSSI_STATE_LOW) || + (rtlpcipriv->btcoexist.bt_pre_rssi_state == BT_RSSI_STATE_STAY_LOW)){ + if (undecoratedsmoothed_pwdb + >= (rssi_thresh + BT_FW_COEX_THRESH_TOL)) { + bt_rssi_state = BT_RSSI_STATE_HIGH; + rtlpcipriv->btcoexist.current_state + |= BT_COEX_STATE_WIFI_RSSI_HIGH; + rtlpcipriv->btcoexist.current_state + &= ~BT_COEX_STATE_WIFI_RSSI_LOW; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[DM][BT], RSSI state switch to High\n")); + } else { + bt_rssi_state = BT_RSSI_STATE_STAY_LOW; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[DM][BT], RSSI state stay at Low\n")); + } + } else { + if (undecoratedsmoothed_pwdb < rssi_thresh) { + bt_rssi_state = BT_RSSI_STATE_LOW; + rtlpcipriv->btcoexist.current_state + |= BT_COEX_STATE_WIFI_RSSI_LOW; + rtlpcipriv->btcoexist.current_state + &= ~BT_COEX_STATE_WIFI_RSSI_HIGH; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[DM][BT], RSSI state switch to Low\n")); + } else { + bt_rssi_state = BT_RSSI_STATE_STAY_HIGH; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[DM][BT], RSSI state stay at High\n")); + } + } + } + else if (level_num == 3) { + if (rssi_thresh > rssi_thresh1) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[DM][BT], RSSI thresh error!!\n")); + return rtlpcipriv->btcoexist.bt_pre_rssi_state; + } + if ((rtlpcipriv->btcoexist.bt_pre_rssi_state == BT_RSSI_STATE_LOW) || + (rtlpcipriv->btcoexist.bt_pre_rssi_state == BT_RSSI_STATE_STAY_LOW)) { + if(undecoratedsmoothed_pwdb + >= (rssi_thresh + BT_FW_COEX_THRESH_TOL)) { + bt_rssi_state = BT_RSSI_STATE_MEDIUM; + rtlpcipriv->btcoexist.current_state + |= BT_COEX_STATE_WIFI_RSSI_MEDIUM; + rtlpcipriv->btcoexist.current_state + &= ~BT_COEX_STATE_WIFI_RSSI_LOW; + rtlpcipriv->btcoexist.current_state + &= ~BT_COEX_STATE_WIFI_RSSI_HIGH; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[DM][BT], RSSI state switch to Medium\n")); + } else { + bt_rssi_state = BT_RSSI_STATE_STAY_LOW; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[DM][BT], RSSI state stay at Low\n")); + } + } else if ((rtlpcipriv->btcoexist.bt_pre_rssi_state == BT_RSSI_STATE_MEDIUM) || + (rtlpcipriv->btcoexist.bt_pre_rssi_state == BT_RSSI_STATE_STAY_MEDIUM)) { + if (undecoratedsmoothed_pwdb + >= (rssi_thresh1 + BT_FW_COEX_THRESH_TOL)) { + bt_rssi_state = BT_RSSI_STATE_HIGH; + rtlpcipriv->btcoexist.current_state + |= BT_COEX_STATE_WIFI_RSSI_HIGH; + rtlpcipriv->btcoexist.current_state + &= ~BT_COEX_STATE_WIFI_RSSI_LOW; + rtlpcipriv->btcoexist.current_state + &= ~BT_COEX_STATE_WIFI_RSSI_MEDIUM; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[DM][BT], RSSI state switch to High\n")); + } else if(undecoratedsmoothed_pwdb < rssi_thresh) + { + bt_rssi_state = BT_RSSI_STATE_LOW; + rtlpcipriv->btcoexist.current_state + |= BT_COEX_STATE_WIFI_RSSI_LOW; + rtlpcipriv->btcoexist.current_state + &= ~BT_COEX_STATE_WIFI_RSSI_HIGH; + rtlpcipriv->btcoexist.current_state + &= ~BT_COEX_STATE_WIFI_RSSI_MEDIUM; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[DM][BT], RSSI state switch to Low\n")); + } else { + bt_rssi_state = BT_RSSI_STATE_STAY_MEDIUM; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[DM][BT], RSSI state stay at Medium\n")); + } + } else { + if(undecoratedsmoothed_pwdb < rssi_thresh1) { + bt_rssi_state = BT_RSSI_STATE_MEDIUM; + rtlpcipriv->btcoexist.current_state + |= BT_COEX_STATE_WIFI_RSSI_MEDIUM; + rtlpcipriv->btcoexist.current_state + &= ~BT_COEX_STATE_WIFI_RSSI_HIGH; + rtlpcipriv->btcoexist.current_state + &= ~BT_COEX_STATE_WIFI_RSSI_LOW; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[DM][BT], RSSI state switch to Medium\n")); + } else { + bt_rssi_state = BT_RSSI_STATE_STAY_HIGH; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[DM][BT], RSSI state stay at High\n")); + } + } + } + + rtlpcipriv->btcoexist.bt_pre_rssi_state = bt_rssi_state; + return bt_rssi_state; +} +long rtl8821ae_dm_bt_get_rx_ss(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + long undecoratedsmoothed_pwdb = 0; + + if (rtlpriv->mac80211.link_state >= MAC80211_LINKED) { + undecoratedsmoothed_pwdb = GET_UNDECORATED_AVERAGE_RSSI(rtlpriv); + } else { + undecoratedsmoothed_pwdb + = rtlpriv->dm.entry_min_undecoratedsmoothed_pwdb; + } + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("rtl8821ae_dm_bt_get_rx_ss() = %ld\n", undecoratedsmoothed_pwdb)); + + return undecoratedsmoothed_pwdb; +} + +void rtl8821ae_dm_bt_balance(struct ieee80211_hw *hw, + bool b_balance_on, u8 ms0, u8 ms1) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 h2c_parameter[3] ={0}; + + if (b_balance_on) { + h2c_parameter[2] = 1; + h2c_parameter[1] = ms1; + h2c_parameter[0] = ms0; + rtlpcipriv->btcoexist.b_fw_coexist_all_off = false; + } else { + h2c_parameter[2] = 0; + h2c_parameter[1] = 0; + h2c_parameter[0] = 0; + } + rtlpcipriv->btcoexist.b_balance_on = b_balance_on; + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[DM][BT], Balance=[%s:%dms:%dms], write 0xc=0x%x\n", + b_balance_on?"ON":"OFF", ms0, ms1, + h2c_parameter[0]<<16 | h2c_parameter[1]<<8 | h2c_parameter[2])); + + rtl8821ae_fill_h2c_cmd(hw, 0xc, 3, h2c_parameter); +} + + +void rtl8821ae_dm_bt_agc_table(struct ieee80211_hw *hw, u8 type) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + + if (type == BT_AGCTABLE_OFF) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BT]AGCTable Off!\n")); + rtl_write_dword(rtlpriv, 0xc78,0x641c0001); + rtl_write_dword(rtlpriv, 0xc78,0x631d0001); + rtl_write_dword(rtlpriv, 0xc78,0x621e0001); + rtl_write_dword(rtlpriv, 0xc78,0x611f0001); + rtl_write_dword(rtlpriv, 0xc78,0x60200001); + + rtl8821ae_phy_set_rf_reg(hw, RF90_PATH_A, + RF_RX_AGC_HP, 0xfffff, 0x32000); + rtl8821ae_phy_set_rf_reg(hw, RF90_PATH_A, + RF_RX_AGC_HP, 0xfffff, 0x71000); + rtl8821ae_phy_set_rf_reg(hw, RF90_PATH_A, + RF_RX_AGC_HP, 0xfffff, 0xb0000); + rtl8821ae_phy_set_rf_reg(hw, RF90_PATH_A, + RF_RX_AGC_HP, 0xfffff, 0xfc000); + rtl8821ae_phy_set_rf_reg(hw, RF90_PATH_A, + RF_RX_G1, 0xfffff, 0x30355); + } else if (type == BT_AGCTABLE_ON) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BT]AGCTable On!\n")); + rtl_write_dword(rtlpriv, 0xc78,0x4e1c0001); + rtl_write_dword(rtlpriv, 0xc78,0x4d1d0001); + rtl_write_dword(rtlpriv, 0xc78,0x4c1e0001); + rtl_write_dword(rtlpriv, 0xc78,0x4b1f0001); + rtl_write_dword(rtlpriv, 0xc78,0x4a200001); + + rtl8821ae_phy_set_rf_reg(hw, RF90_PATH_A, + RF_RX_AGC_HP, 0xfffff, 0xdc000); + rtl8821ae_phy_set_rf_reg(hw, RF90_PATH_A, + RF_RX_AGC_HP, 0xfffff, 0x90000); + rtl8821ae_phy_set_rf_reg(hw, RF90_PATH_A, + RF_RX_AGC_HP, 0xfffff, 0x51000); + rtl8821ae_phy_set_rf_reg(hw, RF90_PATH_A, + RF_RX_AGC_HP, 0xfffff, 0x12000); + rtl8821ae_phy_set_rf_reg(hw, RF90_PATH_A, + RF_RX_G1, 0xfffff, 0x00355); + + rtlpcipriv->btcoexist.b_sw_coexist_all_off = false; + } +} + +void rtl8821ae_dm_bt_bb_back_off_level(struct ieee80211_hw *hw, u8 type) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + + if (type == BT_BB_BACKOFF_OFF) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BT]BBBackOffLevel Off!\n")); + rtl_write_dword(rtlpriv, 0xc04,0x3a05611); + } else if (type == BT_BB_BACKOFF_ON) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BT]BBBackOffLevel On!\n")); + rtl_write_dword(rtlpriv, 0xc04,0x3a07611); + rtlpcipriv->btcoexist.b_sw_coexist_all_off = false; + } +} + +void rtl8821ae_dm_bt_fw_coex_all_off(struct ieee80211_hw *hw) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("rtl8821ae_dm_bt_fw_coex_all_off()\n")); + + if(rtlpcipriv->btcoexist.b_fw_coexist_all_off) + return; + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("rtl8821ae_dm_bt_fw_coex_all_off(), real Do\n")); + rtl8821ae_dm_bt_fw_coex_all_off_8723a(hw); + rtlpcipriv->btcoexist.b_fw_coexist_all_off = true; +} + +void rtl8821ae_dm_bt_sw_coex_all_off(struct ieee80211_hw *hw) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("rtl8821ae_dm_bt_sw_coex_all_off()\n")); + + if(rtlpcipriv->btcoexist.b_sw_coexist_all_off) + return; + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("rtl8821ae_dm_bt_sw_coex_all_off(), real Do\n")); + rtl8821ae_dm_bt_sw_coex_all_off_8723a(hw); + rtlpcipriv->btcoexist.b_sw_coexist_all_off = true; +} + +void rtl8821ae_dm_bt_hw_coex_all_off(struct ieee80211_hw *hw) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("rtl8821ae_dm_bt_hw_coex_all_off()\n")); + + if(rtlpcipriv->btcoexist.b_hw_coexist_all_off) + return; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("rtl8821ae_dm_bt_hw_coex_all_off(), real Do\n")); + + rtl8821ae_dm_bt_hw_coex_all_off_8723a(hw); + + rtlpcipriv->btcoexist.b_hw_coexist_all_off = true; +} + +void rtl8821ae_btdm_coex_all_off(struct ieee80211_hw *hw) +{ + rtl8821ae_dm_bt_fw_coex_all_off(hw); + rtl8821ae_dm_bt_sw_coex_all_off(hw); + rtl8821ae_dm_bt_hw_coex_all_off(hw); +} + +bool rtl8821ae_dm_bt_is_coexist_state_changed(struct ieee80211_hw *hw) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + + if((rtlpcipriv->btcoexist.previous_state + == rtlpcipriv->btcoexist.current_state) + && (rtlpcipriv->btcoexist.previous_state_h + == rtlpcipriv->btcoexist.current_state_h)) + return false; + else + return true; +} + +bool rtl8821ae_dm_bt_is_wifi_up_link(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (rtlpriv->link_info.b_tx_busy_traffic) + return true; + else + return false; +} + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/hal_bt_coexist.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/hal_bt_coexist.h @@ -0,0 +1,169 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8821AE_HAL_BT_COEXIST_H__ +#define __RTL8821AE_HAL_BT_COEXIST_H__ + +#include "../wifi.h" + +/* The reg define is for 8723 */ +#define REG_HIGH_PRIORITY_TXRX 0x770 +#define REG_LOW_PRIORITY_TXRX 0x774 + +#define BT_FW_COEX_THRESH_TOL 6 +#define BT_FW_COEX_THRESH_20 20 +#define BT_FW_COEX_THRESH_23 23 +#define BT_FW_COEX_THRESH_25 25 +#define BT_FW_COEX_THRESH_30 30 +#define BT_FW_COEX_THRESH_35 35 +#define BT_FW_COEX_THRESH_40 40 +#define BT_FW_COEX_THRESH_45 45 +#define BT_FW_COEX_THRESH_47 47 +#define BT_FW_COEX_THRESH_50 50 +#define BT_FW_COEX_THRESH_55 55 + +#define BT_COEX_STATE_BT30 BIT(0) +#define BT_COEX_STATE_WIFI_HT20 BIT(1) +#define BT_COEX_STATE_WIFI_HT40 BIT(2) +#define BT_COEX_STATE_WIFI_LEGACY BIT(3) + +#define BT_COEX_STATE_WIFI_RSSI_LOW BIT(4) +#define BT_COEX_STATE_WIFI_RSSI_MEDIUM BIT(5) +#define BT_COEX_STATE_WIFI_RSSI_HIGH BIT(6) +#define BT_COEX_STATE_DEC_BT_POWER BIT(7) + +#define BT_COEX_STATE_WIFI_IDLE BIT(8) +#define BT_COEX_STATE_WIFI_UPLINK BIT(9) +#define BT_COEX_STATE_WIFI_DOWNLINK BIT(10) + +#define BT_COEX_STATE_BT_INQ_PAGE BIT(11) +#define BT_COEX_STATE_BT_IDLE BIT(12) +#define BT_COEX_STATE_BT_UPLINK BIT(13) +#define BT_COEX_STATE_BT_DOWNLINK BIT(14) + +#define BT_COEX_STATE_HOLD_FOR_BT_OPERATION BIT(15) +#define BT_COEX_STATE_BT_RSSI_LOW BIT(19) + +#define BT_COEX_STATE_PROFILE_HID BIT(20) +#define BT_COEX_STATE_PROFILE_A2DP BIT(21) +#define BT_COEX_STATE_PROFILE_PAN BIT(22) +#define BT_COEX_STATE_PROFILE_SCO BIT(23) + +#define BT_COEX_STATE_WIFI_RSSI_1_LOW BIT(24) +#define BT_COEX_STATE_WIFI_RSSI_1_MEDIUM BIT(25) +#define BT_COEX_STATE_WIFI_RSSI_1_HIGH BIT(26) + +#define BT_COEX_STATE_BTINFO_COMMON BIT(30) +#define BT_COEX_STATE_BTINFO_B_HID_SCOESCO BIT(31) +#define BT_COEX_STATE_BTINFO_B_FTP_A2DP BIT(29) + +#define BT_COEX_STATE_BT_CNT_LEVEL_0 BIT(0) +#define BT_COEX_STATE_BT_CNT_LEVEL_1 BIT(1) +#define BT_COEX_STATE_BT_CNT_LEVEL_2 BIT(2) +#define BT_COEX_STATE_BT_CNT_LEVEL_3 BIT(3) + +#define BT_RSSI_STATE_HIGH 0 +#define BT_RSSI_STATE_MEDIUM 1 +#define BT_RSSI_STATE_LOW 2 +#define BT_RSSI_STATE_STAY_HIGH 3 +#define BT_RSSI_STATE_STAY_MEDIUM 4 +#define BT_RSSI_STATE_STAY_LOW 5 + +#define BT_AGCTABLE_OFF 0 +#define BT_AGCTABLE_ON 1 +#define BT_BB_BACKOFF_OFF 0 +#define BT_BB_BACKOFF_ON 1 +#define BT_FW_NAV_OFF 0 +#define BT_FW_NAV_ON 1 + +#define BT_COEX_MECH_NONE 0 +#define BT_COEX_MECH_SCO 1 +#define BT_COEX_MECH_HID 2 +#define BT_COEX_MECH_A2DP 3 +#define BT_COEX_MECH_PAN 4 +#define BT_COEX_MECH_HID_A2DP 5 +#define BT_COEX_MECH_HID_PAN 6 +#define BT_COEX_MECH_PAN_A2DP 7 +#define BT_COEX_MECH_HID_SCO_ESCO 8 +#define BT_COEX_MECH_FTP_A2DP 9 +#define BT_COEX_MECH_COMMON 10 +#define BT_COEX_MECH_MAX 11 + +#define BT_DBG_PROFILE_NONE 0 +#define BT_DBG_PROFILE_SCO 1 +#define BT_DBG_PROFILE_HID 2 +#define BT_DBG_PROFILE_A2DP 3 +#define BT_DBG_PROFILE_PAN 4 +#define BT_DBG_PROFILE_HID_A2DP 5 +#define BT_DBG_PROFILE_HID_PAN 6 +#define BT_DBG_PROFILE_PAN_A2DP 7 +#define BT_DBG_PROFILE_MAX 9 + +#define BTINFO_B_FTP BIT(7) +#define BTINFO_B_A2DP BIT(6) +#define BTINFO_B_HID BIT(5) +#define BTINFO_B_SCO_BUSY BIT(4) +#define BTINFO_B_ACL_BUSY BIT(3) +#define BTINFO_B_INQ_PAGE BIT(2) +#define BTINFO_B_SCO_ESCO BIT(1) +#define BTINFO_B_CONNECTION BIT(0) + + +void rtl8821ae_btdm_coex_all_off(struct ieee80211_hw *hw); +void rtl8821ae_dm_bt_fw_coex_all_off(struct ieee80211_hw *hw); + +void rtl8821ae_dm_bt_sw_coex_all_off(struct ieee80211_hw *hw); +void rtl8821ae_dm_bt_hw_coex_all_off(struct ieee80211_hw *hw); +long rtl8821ae_dm_bt_get_rx_ss(struct ieee80211_hw *hw); +void rtl8821ae_dm_bt_balance(struct ieee80211_hw *hw, + bool b_balance_on, u8 ms0, u8 ms1); +void rtl8821ae_dm_bt_agc_table(struct ieee80211_hw *hw, u8 tyep); +void rtl8821ae_dm_bt_bb_back_off_level(struct ieee80211_hw *hw, u8 type); +u8 rtl8821ae_dm_bt_check_coex_rssi_state(struct ieee80211_hw *hw, + u8 level_num, u8 rssi_thresh, u8 rssi_thresh1); +u8 rtl8821ae_dm_bt_check_coex_rssi_state1(struct ieee80211_hw *hw, + u8 level_num, u8 rssi_thresh, u8 rssi_thresh1); +void _rtl8821ae_dm_bt_check_wifi_state(struct ieee80211_hw *hw); +void rtl8821ae_dm_bt_reject_ap_aggregated_packet(struct ieee80211_hw *hw, + bool b_reject); + +#if 0 +VOID +BTDM_PWDBMonitor( + PADAPTER Adapter + ); + +BOOLEAN +BTDM_DIGByBTRSSI( + PADAPTER Adapter + ); +#endif +bool rtl8821ae_dm_bt_is_coexist_state_changed(struct ieee80211_hw *hw); +bool rtl8821ae_dm_bt_is_wifi_up_link(struct ieee80211_hw *hw); +#endif + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/hal_btc.c +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/hal_btc.c @@ -0,0 +1,2069 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ +#include "hal_btc.h" +#include "../pci.h" +#include "phy.h" +#include "fw.h" +#include "reg.h" +#include "def.h" +#include "../btcoexist/rtl_btc.h" + +static struct bt_coexist_8821ae hal_coex_8821ae; + +void rtl8821ae_dm_bt_turn_off_bt_coexist_before_enter_lps(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + + if(!rtlpcipriv->btcoexist.bt_coexistence) + return; + + if(ppsc->b_inactiveps) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG,("[BT][DM], Before enter IPS, turn off all Coexist DM\n")); + rtlpcipriv->btcoexist.current_state = 0; + rtlpcipriv->btcoexist.previous_state = 0; + rtlpcipriv->btcoexist.current_state_h = 0; + rtlpcipriv->btcoexist.previous_state_h = 0; + rtl8821ae_btdm_coex_all_off(hw); + } +} + + +enum rt_media_status mgnt_link_status_query(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + enum rt_media_status m_status = RT_MEDIA_DISCONNECT; + + u8 bibss = (mac->opmode == NL80211_IFTYPE_ADHOC) ? 1 : 0; + + if(bibss || rtlpriv->mac80211.link_state >= MAC80211_LINKED) { + m_status = RT_MEDIA_CONNECT; + } + + return m_status; +} + +void rtl_8821ae_bt_wifi_media_status_notify(struct ieee80211_hw *hw, bool mstatus) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 h2c_parameter[3] ={0}; + u8 chnl; + + if(!rtlpcipriv->btcoexist.bt_coexistence) + return; + + if(RT_MEDIA_CONNECT == mstatus) + h2c_parameter[0] = 0x1; // 0: disconnected, 1:connected + else + h2c_parameter[0] = 0x0; + + if(mgnt_link_status_query(hw)) { + chnl = rtlphy->current_channel; + h2c_parameter[1] = chnl; + } + + if(rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20_40){ + h2c_parameter[2] = 0x30; + } else { + h2c_parameter[2] = 0x20; + } + + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG,("[BTCoex], FW write 0x19=0x%x\n", + h2c_parameter[0]<<16|h2c_parameter[1]<<8|h2c_parameter[2])); + + rtl8821ae_fill_h2c_cmd(hw, 0x19, 3, h2c_parameter); + +} + + +bool rtl8821ae_dm_bt_is_wifi_busy(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + if(rtlpriv->link_info.b_busytraffic || + rtlpriv->link_info.b_rx_busy_traffic || + rtlpriv->link_info.b_tx_busy_traffic) + return true; + else + return false; +} +void rtl8821ae_dm_bt_set_fw_3a(struct ieee80211_hw *hw, + u8 byte1, u8 byte2, u8 byte3, u8 byte4, u8 byte5) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 h2c_parameter[5] ={0}; + h2c_parameter[0] = byte1; + h2c_parameter[1] = byte2; + h2c_parameter[2] = byte3; + h2c_parameter[3] = byte4; + h2c_parameter[4] = byte5; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], FW write 0x3a(4bytes)=0x%x%8x\n", + h2c_parameter[0], h2c_parameter[1]<<24 | h2c_parameter[2]<<16 | h2c_parameter[3]<<8 | h2c_parameter[4])); + rtl8821ae_fill_h2c_cmd(hw, 0x3a, 5, h2c_parameter); +} + +bool rtl8821ae_dm_bt_need_to_dec_bt_pwr(struct ieee80211_hw *hw) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (mgnt_link_status_query(hw) == RT_MEDIA_CONNECT) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("Need to decrease bt power\n")); + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_DEC_BT_POWER; + return true; + } + + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_DEC_BT_POWER; + return false; +} + + +bool rtl8821ae_dm_bt_is_same_coexist_state(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + + if ((rtlpcipriv->btcoexist.previous_state + == rtlpcipriv->btcoexist.current_state) + &&(rtlpcipriv->btcoexist.previous_state_h + == rtlpcipriv->btcoexist.current_state_h)) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[DM][BT], Coexist state do not chang!!\n")); + return true; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[DM][BT], Coexist state changed!!\n")); + return false; + } +} + +void rtl8821ae_dm_bt_set_coex_table(struct ieee80211_hw *hw, + u32 val_0x6c0, u32 val_0x6c8, u32 val_0x6cc) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("set coex table, set 0x6c0=0x%x\n", val_0x6c0)); + rtl_write_dword(rtlpriv, 0x6c0, val_0x6c0); + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("set coex table, set 0x6c8=0x%x\n", val_0x6c8)); + rtl_write_dword(rtlpriv, 0x6c8, val_0x6c8); + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("set coex table, set 0x6cc=0x%x\n", val_0x6cc)); + rtl_write_byte(rtlpriv, 0x6cc, val_0x6cc); +} + +void rtl8821ae_dm_bt_set_hw_pta_mode(struct ieee80211_hw *hw, bool b_mode) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (BT_PTA_MODE_ON == b_mode) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("PTA mode on, ")); + /* Enable GPIO 0/1/2/3/8 pins for bt */ + rtl_write_byte(rtlpriv, 0x40, 0x20); + rtlpcipriv->btcoexist.b_hw_coexist_all_off = false; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("PTA mode off\n")); + rtl_write_byte(rtlpriv, 0x40, 0x0); + } +} + +void rtl8821ae_dm_bt_set_sw_rf_rx_lpf_corner(struct ieee80211_hw *hw, u8 type) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (BT_RF_RX_LPF_CORNER_SHRINK == type) { + /* Shrink RF Rx LPF corner, 0x1e[7:4]=1111 ==> [11:4] by Jenyu */ + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("Shrink RF Rx LPF corner!!\n")); + /* PHY_SetRFReg(Adapter, (RF_RADIO_PATH_E)PathA, 0x1e, 0xf0, 0xf); */ + rtl8821ae_phy_set_rf_reg(hw, RF90_PATH_A, 0x1e, 0xfffff, 0xf0ff7); + rtlpcipriv->btcoexist.b_sw_coexist_all_off = false; + } else if(BT_RF_RX_LPF_CORNER_RESUME == type) { + /*Resume RF Rx LPF corner*/ + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("Resume RF Rx LPF corner!!\n")); + /* PHY_SetRFReg(Adapter, (RF_RADIO_PATH_E)PathA, 0x1e, 0xf0, + * pHalData->btcoexist.BtRfRegOrigin1E); */ + rtl8821ae_phy_set_rf_reg(hw, RF90_PATH_A, 0x1e, 0xfffff, + rtlpcipriv->btcoexist.bt_rfreg_origin_1e); + } +} + +void rtl8821ae_dm_bt_set_sw_penalty_tx_rate_adaptive(struct ieee80211_hw *hw, + u8 ra_type) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + u8 tmp_u1; + + tmp_u1 = rtl_read_byte(rtlpriv, 0x4fd); + tmp_u1 |= BIT(0); + if (BT_TX_RATE_ADAPTIVE_LOW_PENALTY == ra_type) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("Tx rate adaptive, set low penalty!!\n")); + tmp_u1 &= ~BIT(2); + rtlpcipriv->btcoexist.b_sw_coexist_all_off = false; + } else if(BT_TX_RATE_ADAPTIVE_NORMAL == ra_type) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("Tx rate adaptive, set normal!!\n")); + tmp_u1 |= BIT(2); + } + + rtl_write_byte(rtlpriv, 0x4fd, tmp_u1); +} + +void rtl8821ae_dm_bt_btdm_structure_reload(struct ieee80211_hw *hw, + struct btdm_8821ae *p_btdm) +{ + p_btdm->b_all_off = false; + p_btdm->b_agc_table_en = false; + p_btdm->b_adc_back_off_on = false; + p_btdm->b2_ant_hid_en = false; + p_btdm->b_low_penalty_rate_adaptive = false; + p_btdm->b_rf_rx_lpf_shrink = false; + p_btdm->b_reject_aggre_pkt= false; + + p_btdm->b_tdma_on = false; + p_btdm->tdma_ant = TDMA_2ANT; + p_btdm->tdma_nav = TDMA_NAV_OFF; + p_btdm->tdma_dac_swing = TDMA_DAC_SWING_OFF; + p_btdm->fw_dac_swing_lvl = 0x20; + + p_btdm->b_tra_tdma_on = false; + p_btdm->tra_tdma_ant = TDMA_2ANT; + p_btdm->tra_tdma_nav = TDMA_NAV_OFF; + p_btdm->b_ignore_wlan_act = false; + + p_btdm->b_ps_tdma_on = false; + p_btdm->ps_tdma_byte[0] = 0x0; + p_btdm->ps_tdma_byte[1] = 0x0; + p_btdm->ps_tdma_byte[2] = 0x0; + p_btdm->ps_tdma_byte[3] = 0x8; + p_btdm->ps_tdma_byte[4] = 0x0; + + p_btdm->b_pta_on = true; + p_btdm->val_0x6c0 = 0x5a5aaaaa; + p_btdm->val_0x6c8 = 0xcc; + p_btdm->val_0x6cc = 0x3; + + p_btdm->b_sw_dac_swing_on = false; + p_btdm->sw_dac_swing_lvl = 0xc0; + p_btdm->wlan_act_hi = 0x20; + p_btdm->wlan_act_lo = 0x10; + p_btdm->bt_retry_index = 2; + + p_btdm->b_dec_bt_pwr = false; +} + +void rtl8821ae_dm_bt_btdm_structure_reload_all_off(struct ieee80211_hw *hw, + struct btdm_8821ae *p_btdm) +{ + rtl8821ae_dm_bt_btdm_structure_reload(hw, p_btdm); + p_btdm->b_all_off = true; + p_btdm->b_pta_on = false; + p_btdm->wlan_act_hi = 0x10; +} + +bool rtl8821ae_dm_bt_is_2_ant_common_action(struct ieee80211_hw *hw) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct btdm_8821ae btdm8821ae; + bool b_common = false; + + rtl8821ae_dm_bt_btdm_structure_reload(hw, &btdm8821ae); + + if(!rtl8821ae_dm_bt_is_wifi_busy(hw) + && !rtlpcipriv->btcoexist.b_bt_busy) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("Wifi idle + Bt idle, bt coex mechanism always off!!\n")); + rtl8821ae_dm_bt_btdm_structure_reload_all_off(hw, &btdm8821ae); + b_common = true; + } else if (rtl8821ae_dm_bt_is_wifi_busy(hw) + && !rtlpcipriv->btcoexist.b_bt_busy) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("Wifi non-idle + Bt disabled/idle!!\n")); + btdm8821ae.b_low_penalty_rate_adaptive = true; + btdm8821ae.b_rf_rx_lpf_shrink = false; + btdm8821ae.b_reject_aggre_pkt = false; + + /* sw mechanism */ + btdm8821ae.b_agc_table_en = false; + btdm8821ae.b_adc_back_off_on = false; + btdm8821ae.b_sw_dac_swing_on = false; + + btdm8821ae.b_pta_on = true; + btdm8821ae.val_0x6c0 = 0x5a5aaaaa; + btdm8821ae.val_0x6c8 = 0xcccc; + btdm8821ae.val_0x6cc = 0x3; + + btdm8821ae.b_tdma_on = false; + btdm8821ae.tdma_dac_swing = TDMA_DAC_SWING_OFF; + btdm8821ae.b2_ant_hid_en = false; + + b_common = true; + }else if (rtlpcipriv->btcoexist.b_bt_busy) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("Bt non-idle!\n")); + if(mgnt_link_status_query(hw) == RT_MEDIA_CONNECT){ + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("Wifi connection exist\n")) + b_common = false; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("No Wifi connection!\n")); + btdm8821ae.b_rf_rx_lpf_shrink = true; + btdm8821ae.b_low_penalty_rate_adaptive = false; + btdm8821ae.b_reject_aggre_pkt = false; + + /* sw mechanism */ + btdm8821ae.b_agc_table_en = false; + btdm8821ae.b_adc_back_off_on = false; + btdm8821ae.b_sw_dac_swing_on = false; + + btdm8821ae.b_pta_on = true; + btdm8821ae.val_0x6c0 = 0x55555555; + btdm8821ae.val_0x6c8 = 0x0000ffff; + btdm8821ae.val_0x6cc = 0x3; + + btdm8821ae.b_tdma_on = false; + btdm8821ae.tdma_dac_swing = TDMA_DAC_SWING_OFF; + btdm8821ae.b2_ant_hid_en = false; + + b_common = true; + } + } + + if (rtl8821ae_dm_bt_need_to_dec_bt_pwr(hw)) { + btdm8821ae.b_dec_bt_pwr = true; + } + + if(b_common) + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_BTINFO_COMMON; + + if (b_common && rtl8821ae_dm_bt_is_coexist_state_changed(hw)) + rtl8821ae_dm_bt_set_bt_dm(hw, &btdm8821ae); + + return b_common; +} + +void rtl8821ae_dm_bt_set_sw_full_time_dac_swing( + struct ieee80211_hw * hw, bool b_sw_dac_swing_on, u32 sw_dac_swing_lvl) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (b_sw_dac_swing_on) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], SwDacSwing = 0x%x\n", sw_dac_swing_lvl)); + rtl8821ae_phy_set_bb_reg(hw, 0x880, 0xff000000, sw_dac_swing_lvl); + rtlpcipriv->btcoexist.b_sw_coexist_all_off = false; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], SwDacSwing Off!\n")); + rtl8821ae_phy_set_bb_reg(hw, 0x880, 0xff000000, 0xc0); + } +} + +void rtl8821ae_dm_bt_set_fw_dec_bt_pwr( + struct ieee80211_hw *hw, bool b_dec_bt_pwr) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 h2c_parameter[1] ={0}; + + h2c_parameter[0] = 0; + + if (b_dec_bt_pwr) { + h2c_parameter[0] |= BIT(1); + rtlpcipriv->btcoexist.b_fw_coexist_all_off = false; + } + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], decrease Bt Power : %s, write 0x21=0x%x\n", + (b_dec_bt_pwr? "Yes!!":"No!!"), h2c_parameter[0])); + + rtl8821ae_fill_h2c_cmd(hw, 0x21, 1, h2c_parameter); +} + + +void rtl8821ae_dm_bt_set_fw_2_ant_hid(struct ieee80211_hw *hw, + bool b_enable, bool b_dac_swing_on) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 h2c_parameter[1] ={0}; + + if (b_enable) { + h2c_parameter[0] |= BIT(0); + rtlpcipriv->btcoexist.b_fw_coexist_all_off = false; + } + if (b_dac_swing_on) { + h2c_parameter[0] |= BIT(1); /* Dac Swing default enable */ + } + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], turn 2-Ant+HID mode %s, DACSwing:%s, write 0x15=0x%x\n", + (b_enable ? "ON!!":"OFF!!"), (b_dac_swing_on ? "ON":"OFF"), + h2c_parameter[0])); + + rtl8821ae_fill_h2c_cmd(hw, 0x15, 1, h2c_parameter); +} + +void rtl8821ae_dm_bt_set_fw_tdma_ctrl(struct ieee80211_hw *hw, + bool b_enable, u8 ant_num, u8 nav_en, u8 dac_swing_en) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + u8 h2c_parameter[1] ={0}; + u8 h2c_parameter1[1] = {0}; + + h2c_parameter[0] = 0; + h2c_parameter1[0] = 0; + + if(b_enable) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], set BT PTA update manager to trigger update!!\n")); + h2c_parameter1[0] |= BIT(0); + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], turn TDMA mode ON!!\n")); + h2c_parameter[0] |= BIT(0); /* function enable */ + if (TDMA_1ANT == ant_num) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], TDMA_1ANT\n")); + h2c_parameter[0] |= BIT(1); + } else if(TDMA_2ANT == ant_num) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], TDMA_2ANT\n")); + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], Unknown Ant\n")); + } + + if (TDMA_NAV_OFF == nav_en) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], TDMA_NAV_OFF\n")); + } else if (TDMA_NAV_ON == nav_en) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], TDMA_NAV_ON\n")); + h2c_parameter[0] |= BIT(2); + } + + if (TDMA_DAC_SWING_OFF == dac_swing_en) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], TDMA_DAC_SWING_OFF\n")); + } else if(TDMA_DAC_SWING_ON == dac_swing_en) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], TDMA_DAC_SWING_ON\n")); + h2c_parameter[0] |= BIT(4); + } + rtlpcipriv->btcoexist.b_fw_coexist_all_off = false; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], set BT PTA update manager to no update!!\n")); + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], turn TDMA mode OFF!!\n")); + } + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], FW2AntTDMA, write 0x26=0x%x\n", h2c_parameter1[0])); + rtl8821ae_fill_h2c_cmd(hw, 0x26, 1, h2c_parameter1); + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], FW2AntTDMA, write 0x14=0x%x\n", h2c_parameter[0])); + rtl8821ae_fill_h2c_cmd(hw, 0x14, 1, h2c_parameter); + + if (!b_enable) { + /* delay_ms(2); + * PlatformEFIOWrite1Byte(Adapter, 0x778, 0x1); */ + } +} + + +void rtl8821ae_dm_bt_set_fw_ignore_wlan_act( struct ieee80211_hw *hw, bool b_enable) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + u8 h2c_parameter[1] ={0}; + + if (b_enable) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], BT Ignore Wlan_Act !!\n")); + h2c_parameter[0] |= BIT(0); // function enable + rtlpcipriv->btcoexist.b_fw_coexist_all_off = false; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], BT don't ignore Wlan_Act !!\n")); + } + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], set FW for BT Ignore Wlan_Act, write 0x25=0x%x\n", + h2c_parameter[0])); + + rtl8821ae_fill_h2c_cmd(hw, 0x25, 1, h2c_parameter); +} + + +void rtl8821ae_dm_bt_set_fw_tra_tdma_ctrl(struct ieee80211_hw *hw, + bool b_enable, u8 ant_num, u8 nav_en + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + //struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + + u8 h2c_parameter[2] ={0}; + + + if (b_enable) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], turn TTDMA mode ON!!\n")); + h2c_parameter[0] |= BIT(0); // function enable + if (TDMA_1ANT == ant_num) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], TTDMA_1ANT\n")); + h2c_parameter[0] |= BIT(1); + } else if (TDMA_2ANT == ant_num) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], TTDMA_2ANT\n")); + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], Unknown Ant\n")); + } + + if (TDMA_NAV_OFF == nav_en) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], TTDMA_NAV_OFF\n")); + } else if (TDMA_NAV_ON == nav_en) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], TTDMA_NAV_ON\n")); + h2c_parameter[1] |= BIT(0); + } + + rtlpcipriv->btcoexist.b_fw_coexist_all_off = false; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], turn TTDMA mode OFF!!\n")); + } + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], FW Traditional TDMA, write 0x33=0x%x\n", + h2c_parameter[0] << 8| h2c_parameter[1])); + + rtl8821ae_fill_h2c_cmd(hw, 0x33, 2, h2c_parameter); +} + + +void rtl8821ae_dm_bt_set_fw_dac_swing_level(struct ieee80211_hw *hw, + u8 dac_swing_lvl) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 h2c_parameter[1] ={0}; + h2c_parameter[0] = dac_swing_lvl; + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], Set Dac Swing Level=0x%x\n", dac_swing_lvl)); + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], write 0x29=0x%x\n", h2c_parameter[0])); + + rtl8821ae_fill_h2c_cmd(hw, 0x29, 1, h2c_parameter); +} + +void rtl8821ae_dm_bt_set_fw_bt_hid_info(struct ieee80211_hw *hw, bool b_enable) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 h2c_parameter[1] ={0}; + h2c_parameter[0] = 0; + + if(b_enable){ + h2c_parameter[0] |= BIT(0); + rtlpcipriv->btcoexist.b_fw_coexist_all_off = false; + } + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], Set BT HID information=0x%x\n", b_enable)); + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], write 0x24=0x%x\n", h2c_parameter[0])); + + rtl8821ae_fill_h2c_cmd(hw, 0x24, 1, h2c_parameter); +} + +void rtl8821ae_dm_bt_set_fw_bt_retry_index(struct ieee80211_hw *hw, + u8 retry_index) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 h2c_parameter[1] ={0}; + h2c_parameter[0] = retry_index; + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], Set BT Retry Index=%d\n", retry_index)); + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], write 0x23=0x%x\n", h2c_parameter[0])); + + rtl8821ae_fill_h2c_cmd(hw, 0x23, 1, h2c_parameter); +} + +void rtl8821ae_dm_bt_set_fw_wlan_act(struct ieee80211_hw *hw, + u8 wlan_act_hi, u8 wlan_act_lo) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 h2c_parameter_hi[1] ={0}; + u8 h2c_parameter_lo[1] ={0}; + h2c_parameter_hi[0] = wlan_act_hi; + h2c_parameter_lo[0] = wlan_act_lo; + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], Set WLAN_ACT Hi:Lo=0x%x/0x%x\n", wlan_act_hi, wlan_act_lo)); + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], write 0x22=0x%x\n", h2c_parameter_hi[0])); + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], write 0x11=0x%x\n", h2c_parameter_lo[0])); + + /* WLAN_ACT = High duration, unit:ms */ + rtl8821ae_fill_h2c_cmd(hw, 0x22, 1, h2c_parameter_hi); + /* WLAN_ACT = Low duration, unit:3*625us */ + rtl8821ae_fill_h2c_cmd(hw, 0x11, 1, h2c_parameter_lo); +} + +void rtl8821ae_dm_bt_set_bt_dm(struct ieee80211_hw *hw, struct btdm_8821ae *p_btdm) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct btdm_8821ae *p_btdm_8821ae = &hal_coex_8821ae.btdm; + u8 i; + + bool b_fw_current_inpsmode = false; + bool b_fw_ps_awake = true; + + rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, + (u8 *) (&b_fw_current_inpsmode)); + rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_FWLPS_RF_ON, + (u8 *) (&b_fw_ps_awake)); + + // check new setting is different with the old one, + // if all the same, don't do the setting again. + if (memcmp(p_btdm_8821ae, p_btdm, sizeof(struct btdm_8821ae)) == 0) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], the same coexist setting, return!!\n")); + return; + } else { //save the new coexist setting + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], UPDATE TO NEW COEX SETTING!!\n")); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new bAllOff=0x%x/ 0x%x \n", + p_btdm_8821ae->b_all_off, p_btdm->b_all_off)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new b_agc_table_en=0x%x/ 0x%x \n", + p_btdm_8821ae->b_agc_table_en, p_btdm->b_agc_table_en)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new b_adc_back_off_on=0x%x/ 0x%x \n", + p_btdm_8821ae->b_adc_back_off_on, p_btdm->b_adc_back_off_on)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new b2_ant_hid_en=0x%x/ 0x%x \n", + p_btdm_8821ae->b2_ant_hid_en, p_btdm->b2_ant_hid_en)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new bLowPenaltyRateAdaptive=0x%x/ 0x%x \n", + p_btdm_8821ae->b_low_penalty_rate_adaptive, + p_btdm->b_low_penalty_rate_adaptive)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new bRfRxLpfShrink=0x%x/ 0x%x \n", + p_btdm_8821ae->b_rf_rx_lpf_shrink, p_btdm->b_rf_rx_lpf_shrink)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new bRejectAggrePkt=0x%x/ 0x%x \n", + p_btdm_8821ae->b_reject_aggre_pkt, p_btdm->b_reject_aggre_pkt)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new b_tdma_on=0x%x/ 0x%x \n", + p_btdm_8821ae->b_tdma_on, p_btdm->b_tdma_on)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new tdmaAnt=0x%x/ 0x%x \n", + p_btdm_8821ae->tdma_ant, p_btdm->tdma_ant)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new tdmaNav=0x%x/ 0x%x \n", + p_btdm_8821ae->tdma_nav, p_btdm->tdma_nav)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new tdma_dac_swing=0x%x/ 0x%x \n", + p_btdm_8821ae->tdma_dac_swing, p_btdm->tdma_dac_swing)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new fw_dac_swing_lvl=0x%x/ 0x%x \n", + p_btdm_8821ae->fw_dac_swing_lvl, p_btdm->fw_dac_swing_lvl)); + + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new bTraTdmaOn=0x%x/ 0x%x \n", + p_btdm_8821ae->b_tra_tdma_on, p_btdm->b_tra_tdma_on)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new traTdmaAnt=0x%x/ 0x%x \n", + p_btdm_8821ae->tra_tdma_ant, p_btdm->tra_tdma_ant)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new traTdmaNav=0x%x/ 0x%x \n", + p_btdm_8821ae->tra_tdma_nav, p_btdm->tra_tdma_nav)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new bPsTdmaOn=0x%x/ 0x%x \n", + p_btdm_8821ae->b_ps_tdma_on, p_btdm->b_ps_tdma_on)); + for(i=0; i<5; i++) + { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new psTdmaByte[i]=0x%x/ 0x%x \n", + p_btdm_8821ae->ps_tdma_byte[i], p_btdm->ps_tdma_byte[i])); + } + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new bIgnoreWlanAct=0x%x/ 0x%x \n", + p_btdm_8821ae->b_ignore_wlan_act, p_btdm->b_ignore_wlan_act)); + + + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new bPtaOn=0x%x/ 0x%x \n", + p_btdm_8821ae->b_pta_on, p_btdm->b_pta_on)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new val_0x6c0=0x%x/ 0x%x \n", + p_btdm_8821ae->val_0x6c0, p_btdm->val_0x6c0)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new val_0x6c8=0x%x/ 0x%x \n", + p_btdm_8821ae->val_0x6c8, p_btdm->val_0x6c8)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new val_0x6cc=0x%x/ 0x%x \n", + p_btdm_8821ae->val_0x6cc, p_btdm->val_0x6cc)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new b_sw_dac_swing_on=0x%x/ 0x%x \n", + p_btdm_8821ae->b_sw_dac_swing_on, p_btdm->b_sw_dac_swing_on)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new sw_dac_swing_lvl=0x%x/ 0x%x \n", + p_btdm_8821ae->sw_dac_swing_lvl, p_btdm->sw_dac_swing_lvl)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new wlanActHi=0x%x/ 0x%x \n", + p_btdm_8821ae->wlan_act_hi, p_btdm->wlan_act_hi)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new wlanActLo=0x%x/ 0x%x \n", + p_btdm_8821ae->wlan_act_lo, p_btdm->wlan_act_lo)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], original/new btRetryIndex=0x%x/ 0x%x \n", + p_btdm_8821ae->bt_retry_index, p_btdm->bt_retry_index)); + + memcpy(p_btdm_8821ae, p_btdm, sizeof(struct btdm_8821ae)); + } + /* + * Here we only consider when Bt Operation + * inquiry/paging/pairing is ON + * we only need to turn off TDMA */ + + if (rtlpcipriv->btcoexist.b_hold_for_bt_operation) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], set to ignore wlanAct for BT OP!!\n")); + rtl8821ae_dm_bt_set_fw_ignore_wlan_act(hw, true); + return; + } + + if (p_btdm->b_all_off) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex], disable all coexist mechanism !!\n")); + rtl8821ae_btdm_coex_all_off(hw); + return; + } + + rtl8821ae_dm_bt_reject_ap_aggregated_packet(hw, p_btdm->b_reject_aggre_pkt); + + if(p_btdm->b_low_penalty_rate_adaptive) + rtl8821ae_dm_bt_set_sw_penalty_tx_rate_adaptive(hw, + BT_TX_RATE_ADAPTIVE_LOW_PENALTY); + else + rtl8821ae_dm_bt_set_sw_penalty_tx_rate_adaptive(hw, + BT_TX_RATE_ADAPTIVE_NORMAL); + + if(p_btdm->b_rf_rx_lpf_shrink) + rtl8821ae_dm_bt_set_sw_rf_rx_lpf_corner(hw, BT_RF_RX_LPF_CORNER_SHRINK); + else + rtl8821ae_dm_bt_set_sw_rf_rx_lpf_corner(hw, BT_RF_RX_LPF_CORNER_RESUME); + + if(p_btdm->b_agc_table_en) + rtl8821ae_dm_bt_agc_table(hw, BT_AGCTABLE_ON); + else + rtl8821ae_dm_bt_agc_table(hw, BT_AGCTABLE_OFF); + + if(p_btdm->b_adc_back_off_on) + rtl8821ae_dm_bt_bb_back_off_level(hw, BT_BB_BACKOFF_ON); + else + rtl8821ae_dm_bt_bb_back_off_level(hw, BT_BB_BACKOFF_OFF); + + rtl8821ae_dm_bt_set_fw_bt_retry_index(hw, p_btdm->bt_retry_index); + + rtl8821ae_dm_bt_set_fw_dac_swing_level(hw, p_btdm->fw_dac_swing_lvl); + rtl8821ae_dm_bt_set_fw_wlan_act(hw, p_btdm->wlan_act_hi, p_btdm->wlan_act_lo); + + rtl8821ae_dm_bt_set_coex_table(hw, p_btdm->val_0x6c0, + p_btdm->val_0x6c8, p_btdm->val_0x6cc); + rtl8821ae_dm_bt_set_hw_pta_mode(hw, p_btdm->b_pta_on); + + /* + * Note: There is a constraint between TDMA and 2AntHID + * Only one of 2AntHid and tdma can be turn on + * We should turn off those mechanisms should be turned off first + * and then turn on those mechanisms should be turned on. + */ +#if 1 + if(p_btdm->b2_ant_hid_en) { + // turn off tdma + rtl8821ae_dm_bt_set_fw_tra_tdma_ctrl(hw, p_btdm->b_tra_tdma_on, + p_btdm->tra_tdma_ant, p_btdm->tra_tdma_nav); + rtl8821ae_dm_bt_set_fw_tdma_ctrl(hw, false, p_btdm->tdma_ant, + p_btdm->tdma_nav, p_btdm->tdma_dac_swing); + + // turn off Pstdma + rtl8821ae_dm_bt_set_fw_ignore_wlan_act(hw, p_btdm->b_ignore_wlan_act); + rtl8821ae_dm_bt_set_fw_3a(hw, 0x0, 0x0, 0x0, 0x8, 0x0); // Antenna control by PTA, 0x870 = 0x300. + + // turn on 2AntHid + rtl8821ae_dm_bt_set_fw_bt_hid_info(hw, true); + rtl8821ae_dm_bt_set_fw_2_ant_hid(hw, true, true); + } else if(p_btdm->b_tdma_on) { + // turn off 2AntHid + rtl8821ae_dm_bt_set_fw_bt_hid_info(hw, false); + rtl8821ae_dm_bt_set_fw_2_ant_hid(hw, false, false); + + // turn off pstdma + rtl8821ae_dm_bt_set_fw_ignore_wlan_act(hw, p_btdm->b_ignore_wlan_act); + rtl8821ae_dm_bt_set_fw_3a(hw, 0x0, 0x0, 0x0, 0x8, 0x0); // Antenna control by PTA, 0x870 = 0x300. + + // turn on tdma + rtl8821ae_dm_bt_set_fw_tra_tdma_ctrl(hw, p_btdm->b_tra_tdma_on, p_btdm->tra_tdma_ant, p_btdm->tra_tdma_nav); + rtl8821ae_dm_bt_set_fw_tdma_ctrl(hw, true, p_btdm->tdma_ant, p_btdm->tdma_nav, p_btdm->tdma_dac_swing); + } else if(p_btdm->b_ps_tdma_on) { + // turn off 2AntHid + rtl8821ae_dm_bt_set_fw_bt_hid_info(hw, false); + rtl8821ae_dm_bt_set_fw_2_ant_hid(hw, false, false); + + // turn off tdma + rtl8821ae_dm_bt_set_fw_tra_tdma_ctrl(hw, p_btdm->b_tra_tdma_on, p_btdm->tra_tdma_ant, p_btdm->tra_tdma_nav); + rtl8821ae_dm_bt_set_fw_tdma_ctrl(hw, false, p_btdm->tdma_ant, p_btdm->tdma_nav, p_btdm->tdma_dac_swing); + + // turn on pstdma + rtl8821ae_dm_bt_set_fw_ignore_wlan_act(hw, p_btdm->b_ignore_wlan_act); + rtl8821ae_dm_bt_set_fw_3a(hw, + p_btdm->ps_tdma_byte[0], + p_btdm->ps_tdma_byte[1], + p_btdm->ps_tdma_byte[2], + p_btdm->ps_tdma_byte[3], + p_btdm->ps_tdma_byte[4]); + } else { + // turn off 2AntHid + rtl8821ae_dm_bt_set_fw_bt_hid_info(hw, false); + rtl8821ae_dm_bt_set_fw_2_ant_hid(hw, false, false); + + // turn off tdma + rtl8821ae_dm_bt_set_fw_tra_tdma_ctrl(hw, p_btdm->b_tra_tdma_on, p_btdm->tra_tdma_ant, p_btdm->tra_tdma_nav); + rtl8821ae_dm_bt_set_fw_tdma_ctrl(hw, false, p_btdm->tdma_ant, p_btdm->tdma_nav, p_btdm->tdma_dac_swing); + + // turn off pstdma + rtl8821ae_dm_bt_set_fw_ignore_wlan_act(hw, p_btdm->b_ignore_wlan_act); + rtl8821ae_dm_bt_set_fw_3a(hw, 0x0, 0x0, 0x0, 0x8, 0x0); // Antenna control by PTA, 0x870 = 0x300. + } +#else + if (p_btdm->b_tdma_on) { + if(p_btdm->b_ps_tdma_on) { + } else { + rtl8821ae_dm_bt_set_fw_3a(hw, 0x0, 0x0, 0x0, 0x8, 0x0); + } + /* Turn off 2AntHID first then turn tdma ON */ + rtl8821ae_dm_bt_set_fw_bt_hid_info(hw, false); + rtl8821ae_dm_bt_set_fw_2_ant_hid(hw, false, false); + rtl8821ae_dm_bt_set_fw_tra_tdma_ctrl(hw, p_btdm->b_tra_tdma_on, p_btdm->tra_tdma_ant, p_btdm->tra_tdma_nav); + rtl8821ae_dm_bt_set_fw_tdma_ctrl(hw, true, + p_btdm->tdma_ant, p_btdm->tdma_nav, p_btdm->tdma_dac_swing); + } else { + /* Turn off tdma first then turn 2AntHID ON if need */ + rtl8821ae_dm_bt_set_fw_tra_tdma_ctrl(hw, p_btdm->b_tra_tdma_on, p_btdm->tra_tdma_ant, p_btdm->tra_tdma_nav); + rtl8821ae_dm_bt_set_fw_tdma_ctrl(hw, false, p_btdm->tdma_ant, + p_btdm->tdma_nav, p_btdm->tdma_dac_swing); + if (p_btdm->b2_ant_hid_en) { + rtl8821ae_dm_bt_set_fw_bt_hid_info(hw, true); + rtl8821ae_dm_bt_set_fw_2_ant_hid(hw, true, true); + } else { + rtl8821ae_dm_bt_set_fw_bt_hid_info(hw, false); + rtl8821ae_dm_bt_set_fw_2_ant_hid(hw, false, false); + } + if(p_btdm->b_ps_tdma_on) { + rtl8821ae_dm_bt_set_fw_3a(hw, p_btdm->ps_tdma_byte[0], p_btdm->ps_tdma_byte[1], + p_btdm->ps_tdma_byte[2], p_btdm->ps_tdma_byte[3], p_btdm->ps_tdma_byte[4]); + } else { + rtl8821ae_dm_bt_set_fw_3a(hw, 0x0, 0x0, 0x0, 0x8, 0x0); + } + } +#endif + + /* + * Note: + * We should add delay for making sure sw DacSwing can be set sucessfully. + * because of that rtl8821ae_dm_bt_set_fw_2_ant_hid() and rtl8821ae_dm_bt_set_fw_tdma_ctrl() + * will overwrite the reg 0x880. + */ + mdelay(30); + rtl8821ae_dm_bt_set_sw_full_time_dac_swing(hw, + p_btdm->b_sw_dac_swing_on, p_btdm->sw_dac_swing_lvl); + rtl8821ae_dm_bt_set_fw_dec_bt_pwr(hw, p_btdm->b_dec_bt_pwr); +} + +void rtl8821ae_dm_bt_bt_state_update_2_ant_hid(struct ieee80211_hw *hw) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], HID busy!!\n")); + rtlpcipriv->btcoexist.b_bt_busy = true; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_BT_IDLE; +} + +void rtl8821ae_dm_bt_bt_state_update_2_ant_pan(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + bool b_idle = false; + + if (hal_coex_8821ae.low_priority_tx >= + hal_coex_8821ae.low_priority_rx) { + if((hal_coex_8821ae.low_priority_tx/ + hal_coex_8821ae.low_priority_rx) > 10) { + b_idle = true; + } + } else { + if((hal_coex_8821ae.low_priority_rx/ + hal_coex_8821ae.low_priority_tx) > 10) { + b_idle = true; + } + } + + if(!b_idle) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], PAN busy!!\n")); + rtlpcipriv->btcoexist.b_bt_busy = true; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_BT_IDLE; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], PAN idle!!\n")); + } +} + +void rtl8821ae_dm_bt_2_ant_sco_action(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct btdm_8821ae btdm8821ae; + u8 bt_rssi_state; + + rtl8821ae_dm_bt_btdm_structure_reload(hw, &btdm8821ae); + btdm8821ae.b_rf_rx_lpf_shrink = true; + btdm8821ae.b_low_penalty_rate_adaptive = true; + btdm8821ae.b_reject_aggre_pkt = false; + + if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20_40) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("HT40\n")); + /* coex table */ + btdm8821ae.val_0x6c0 = 0x5a5aaaaa; + btdm8821ae.val_0x6c8 = 0xcc; + btdm8821ae.val_0x6cc = 0x3; + /* sw mechanism */ + btdm8821ae.b_agc_table_en = false; + btdm8821ae.b_adc_back_off_on = true; + btdm8821ae.b_sw_dac_swing_on = false; + /* fw mechanism */ + btdm8821ae.b_tdma_on = false; + btdm8821ae.tdma_dac_swing = TDMA_DAC_SWING_OFF; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("HT20 or Legacy\n")); + bt_rssi_state + = rtl8821ae_dm_bt_check_coex_rssi_state(hw, 2, BT_FW_COEX_THRESH_47, 0); + + /* coex table */ + btdm8821ae.val_0x6c0 = 0x5a5aaaaa; + btdm8821ae.val_0x6c8 = 0xcc; + btdm8821ae.val_0x6cc = 0x3; + /* sw mechanism */ + if ((bt_rssi_state == BT_RSSI_STATE_HIGH) || + (bt_rssi_state == BT_RSSI_STATE_STAY_HIGH) ) { + btdm8821ae.b_agc_table_en = true; + btdm8821ae.b_adc_back_off_on = true; + btdm8821ae.b_sw_dac_swing_on = false; + } else { + btdm8821ae.b_agc_table_en = false; + btdm8821ae.b_adc_back_off_on = false; + btdm8821ae.b_sw_dac_swing_on = false; + } + /* fw mechanism */ + btdm8821ae.b_tdma_on = false; + btdm8821ae.tdma_dac_swing = TDMA_DAC_SWING_OFF; + } + + if (rtl8821ae_dm_bt_need_to_dec_bt_pwr(hw)) { + btdm8821ae.b_dec_bt_pwr = true; + } + + if(rtl8821ae_dm_bt_is_coexist_state_changed(hw)) + rtl8821ae_dm_bt_set_bt_dm(hw, &btdm8821ae); +} + +void rtl8821ae_dm_bt_2_ant_hid_action(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct btdm_8821ae btdm8821ae; + u8 bt_rssi_state; + + rtl8821ae_dm_bt_btdm_structure_reload(hw, &btdm8821ae); + + btdm8821ae.b_rf_rx_lpf_shrink = true; + btdm8821ae.b_low_penalty_rate_adaptive = true; + btdm8821ae.b_reject_aggre_pkt = false; + + // coex table + btdm8821ae.val_0x6c0 = 0x55555555; + btdm8821ae.val_0x6c8 = 0xffff; + btdm8821ae.val_0x6cc = 0x3; + btdm8821ae.b_ignore_wlan_act = true; + + if(rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20_40) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("HT40\n")); + // sw mechanism + btdm8821ae.b_agc_table_en = false; + btdm8821ae.b_adc_back_off_on = false; + btdm8821ae.b_sw_dac_swing_on = false; + + // fw mechanism + btdm8821ae.b_ps_tdma_on = true; + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0xf; + btdm8821ae.ps_tdma_byte[2] = 0xf; + btdm8821ae.ps_tdma_byte[3] = 0x0; + btdm8821ae.ps_tdma_byte[4] = 0x80; + + btdm8821ae.b_tra_tdma_on = false; + btdm8821ae.b_tdma_on = false; + btdm8821ae.tdma_dac_swing = TDMA_DAC_SWING_OFF; + btdm8821ae.b2_ant_hid_en = false; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("HT20 or Legacy\n")); + bt_rssi_state = + rtl8821ae_dm_bt_check_coex_rssi_state(hw, 2, 47, 0); + + if( (bt_rssi_state == BT_RSSI_STATE_HIGH) || + (bt_rssi_state == BT_RSSI_STATE_STAY_HIGH) ) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("Wifi rssi high \n")); + // sw mechanism + btdm8821ae.b_agc_table_en = false; + btdm8821ae.b_adc_back_off_on = false; + btdm8821ae.b_sw_dac_swing_on = true; + btdm8821ae.sw_dac_swing_lvl = 0x20; + + // fw mechanism + btdm8821ae.b_ps_tdma_on = false; + btdm8821ae.b_tdma_on = false; + btdm8821ae.tdma_dac_swing = TDMA_DAC_SWING_OFF; + btdm8821ae.b2_ant_hid_en = false; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("Wifi rssi low \n")); + // sw mechanism + btdm8821ae.b_agc_table_en = false; + btdm8821ae.b_adc_back_off_on = false; + btdm8821ae.b_sw_dac_swing_on = false; + + // fw mechanism + btdm8821ae.b_ps_tdma_on = false; + btdm8821ae.b_tdma_on = false; + btdm8821ae.tdma_dac_swing = TDMA_DAC_SWING_OFF; + btdm8821ae.b2_ant_hid_en = true; + btdm8821ae.fw_dac_swing_lvl = 0x20; + } + } + + if (rtl8821ae_dm_bt_need_to_dec_bt_pwr(hw)) { + btdm8821ae.b_dec_bt_pwr = true; + } + + if (rtl8821ae_dm_bt_is_coexist_state_changed(hw)) { + rtl8821ae_dm_bt_set_bt_dm(hw, &btdm8821ae); + } +} + + +void rtl8821ae_dm_bt_2_ant_2_dp_action_no_profile(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct btdm_8821ae btdm8821ae; + u8 bt_rssi_state; + + rtl8821ae_dm_bt_btdm_structure_reload(hw, &btdm8821ae); + + btdm8821ae.b_rf_rx_lpf_shrink = true; + btdm8821ae.b_low_penalty_rate_adaptive = true; + btdm8821ae.b_reject_aggre_pkt = false; + + if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20_40) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("HT40\n")); + if (rtl8821ae_dm_bt_is_wifi_up_link(hw)) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("Wifi Uplink\n")); + /* coex table */ + btdm8821ae.val_0x6c0 = 0x5a5a5a5a; + btdm8821ae.val_0x6c8 = 0xcccc; + btdm8821ae.val_0x6cc = 0x3; + // sw mechanism + btdm8821ae.b_agc_table_en = false; + btdm8821ae.b_adc_back_off_on = true; + btdm8821ae.b_sw_dac_swing_on = false; + // fw mechanism + btdm8821ae.b_tra_tdma_on = true; + btdm8821ae.b_tdma_on = true; + btdm8821ae.tdma_dac_swing = TDMA_DAC_SWING_ON; + btdm8821ae.b2_ant_hid_en = false; + //btSpec = BTHCI_GetBTCoreSpecByProf(Adapter, BT_PROFILE_A2DP); + //if(btSpec >= BT_SPEC_2_1_EDR) + { + btdm8821ae.wlan_act_hi = 0x10; + btdm8821ae.wlan_act_lo = 0x10; + } + //else + //{ + //btdm8821ae.wlanActHi = 0x20; + //btdm8821ae.wlanActLo = 0x20; + //} + btdm8821ae.bt_retry_index = 2; + btdm8821ae.fw_dac_swing_lvl = 0x18; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("Wifi Downlink\n")); + // coex table + btdm8821ae.val_0x6c0 = 0x5a5a5a5a; + btdm8821ae.val_0x6c8 = 0xcc; + btdm8821ae.val_0x6cc = 0x3; + // sw mechanism + btdm8821ae.b_agc_table_en = false; + btdm8821ae.b_adc_back_off_on = true; + btdm8821ae.b_sw_dac_swing_on = false; + // fw mechanism + btdm8821ae.b_tra_tdma_on = true; + btdm8821ae.b_tdma_on = true; + btdm8821ae.tdma_dac_swing = TDMA_DAC_SWING_ON; + btdm8821ae.b2_ant_hid_en = false; + //btSpec = BTHCI_GetBTCoreSpecByProf(Adapter, BT_PROFILE_A2DP); + //if(btSpec >= BT_SPEC_2_1_EDR) + { + btdm8821ae.wlan_act_hi = 0x10; + btdm8821ae.wlan_act_lo = 0x10; + } + //else + //{ + // btdm8821ae.wlanActHi = 0x20; + // btdm8821ae.wlanActLo = 0x20; + //} + btdm8821ae.bt_retry_index = 2; + btdm8821ae.fw_dac_swing_lvl = 0x40; + } + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("HT20 or Legacy\n")); + bt_rssi_state = rtl8821ae_dm_bt_check_coex_rssi_state(hw, 2, BT_FW_COEX_THRESH_47, 0); + + if(rtl8821ae_dm_bt_is_wifi_up_link(hw)) + { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("Wifi Uplink\n")); + // coex table + btdm8821ae.val_0x6c0 = 0x5a5a5a5a; + btdm8821ae.val_0x6c8 = 0xcccc; + btdm8821ae.val_0x6cc = 0x3; + // sw mechanism + if( (bt_rssi_state == BT_RSSI_STATE_HIGH) || + (bt_rssi_state == BT_RSSI_STATE_STAY_HIGH) ) + { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("Wifi rssi high \n")); + btdm8821ae.b_agc_table_en = true; + btdm8821ae.b_adc_back_off_on = true; + btdm8821ae.b_sw_dac_swing_on = false; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("Wifi rssi low \n")); + btdm8821ae.b_agc_table_en = false; + btdm8821ae.b_adc_back_off_on = false; + btdm8821ae.b_sw_dac_swing_on = false; + } + // fw mechanism + btdm8821ae.b_tra_tdma_on = true; + btdm8821ae.b_tdma_on = true; + btdm8821ae.tdma_dac_swing = TDMA_DAC_SWING_ON; + btdm8821ae.b2_ant_hid_en = false; + //btSpec = BTHCI_GetBTCoreSpecByProf(Adapter, BT_PROFILE_A2DP); + //if(btSpec >= BT_SPEC_2_1_EDR) + { + btdm8821ae.wlan_act_hi = 0x10; + btdm8821ae.wlan_act_lo = 0x10; + } + //else + //{ + //btdm8821ae.wlanActHi = 0x20; + //btdm8821ae.wlanActLo = 0x20; + //} + btdm8821ae.bt_retry_index = 2; + btdm8821ae.fw_dac_swing_lvl = 0x18; + } + else + { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("Wifi Downlink\n")); + // coex table + btdm8821ae.val_0x6c0 = 0x5a5a5a5a; + btdm8821ae.val_0x6c8 = 0xcc; + btdm8821ae.val_0x6cc = 0x3; + // sw mechanism + if( (bt_rssi_state == BT_RSSI_STATE_HIGH) || + (bt_rssi_state == BT_RSSI_STATE_STAY_HIGH) ) + { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("Wifi rssi high \n")); + btdm8821ae.b_agc_table_en = true; + btdm8821ae.b_adc_back_off_on = true; + btdm8821ae.b_sw_dac_swing_on = false; + } + else + { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("Wifi rssi low \n")); + btdm8821ae.b_agc_table_en = false; + btdm8821ae.b_adc_back_off_on = false; + btdm8821ae.b_sw_dac_swing_on = false; + } + // fw mechanism + btdm8821ae.b_tra_tdma_on = true; + btdm8821ae.b_tdma_on = true; + btdm8821ae.tdma_dac_swing = TDMA_DAC_SWING_ON; + btdm8821ae.b2_ant_hid_en = false; + //btSpec = BTHCI_GetBTCoreSpecByProf(Adapter, BT_PROFILE_A2DP); + //if(btSpec >= BT_SPEC_2_1_EDR) + { + btdm8821ae.wlan_act_hi = 0x10; + btdm8821ae.wlan_act_lo = 0x10; + } + //else + //{ + //btdm8821ae.wlanActHi = 0x20; + //btdm8821ae.wlanActLo = 0x20; + //} + btdm8821ae.bt_retry_index = 2; + btdm8821ae.fw_dac_swing_lvl = 0x40; + } + } + + if (rtl8821ae_dm_bt_need_to_dec_bt_pwr(hw)) { + btdm8821ae.b_dec_bt_pwr = true; + } + + if (rtl8821ae_dm_bt_is_coexist_state_changed(hw)) { + rtl8821ae_dm_bt_set_bt_dm(hw, &btdm8821ae); + } +} + + +//============================================================ +// extern function start with BTDM_ +//============================================================ +u32 rtl8821ae_dm_bt_tx_rx_couter_h(struct ieee80211_hw *hw) +{ + u32 counters=0; + + counters = hal_coex_8821ae.high_priority_tx + hal_coex_8821ae.high_priority_rx ; + return counters; +} + +u32 rtl8821ae_dm_bt_tx_rx_couter_l(struct ieee80211_hw *hw) +{ + u32 counters=0; + + counters = hal_coex_8821ae.low_priority_tx + hal_coex_8821ae.low_priority_rx ; + return counters; +} + +u8 rtl8821ae_dm_bt_bt_tx_rx_counter_level(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + u32 bt_tx_rx_cnt = 0; + u8 bt_tx_rx_cnt_lvl = 0; + + bt_tx_rx_cnt = rtl8821ae_dm_bt_tx_rx_couter_h(hw) + + rtl8821ae_dm_bt_tx_rx_couter_l(hw); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], BT TxRx Counters = %d\n", bt_tx_rx_cnt)); + + rtlpcipriv->btcoexist.current_state_h &= ~\ + (BT_COEX_STATE_BT_CNT_LEVEL_0 | BT_COEX_STATE_BT_CNT_LEVEL_1| + BT_COEX_STATE_BT_CNT_LEVEL_2); + + if (bt_tx_rx_cnt >= BT_TXRX_CNT_THRES_3) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], BT TxRx Counters at level 3\n")); + bt_tx_rx_cnt_lvl = BT_TXRX_CNT_LEVEL_3; + rtlpcipriv->btcoexist.current_state_h |= BT_COEX_STATE_BT_CNT_LEVEL_3; + } else if(bt_tx_rx_cnt >= BT_TXRX_CNT_THRES_2) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], BT TxRx Counters at level 2\n")); + bt_tx_rx_cnt_lvl = BT_TXRX_CNT_LEVEL_2; + rtlpcipriv->btcoexist.current_state_h |= BT_COEX_STATE_BT_CNT_LEVEL_2; + } else if(bt_tx_rx_cnt >= BT_TXRX_CNT_THRES_1) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], BT TxRx Counters at level 1\n")); + bt_tx_rx_cnt_lvl = BT_TXRX_CNT_LEVEL_1; + rtlpcipriv->btcoexist.current_state_h |= BT_COEX_STATE_BT_CNT_LEVEL_1; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], BT TxRx Counters at level 0\n")); + bt_tx_rx_cnt_lvl = BT_TXRX_CNT_LEVEL_0; + rtlpcipriv->btcoexist.current_state_h |= BT_COEX_STATE_BT_CNT_LEVEL_0; + } + return bt_tx_rx_cnt_lvl; +} + + +void rtl8821ae_dm_bt_2_ant_hid_sco_esco(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct btdm_8821ae btdm8821ae; + + u8 bt_rssi_state, bt_rssi_state1; + u8 bt_tx_rx_cnt_lvl = 0; + + rtl8821ae_dm_bt_btdm_structure_reload(hw, &btdm8821ae); + + + btdm8821ae.b_rf_rx_lpf_shrink = true; + btdm8821ae.b_low_penalty_rate_adaptive = true; + btdm8821ae.b_reject_aggre_pkt = false; + + bt_tx_rx_cnt_lvl = rtl8821ae_dm_bt_bt_tx_rx_counter_level(hw); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters = %d\n", bt_tx_rx_cnt_lvl)); + + if(rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20_40) + { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("HT40\n")); + // coex table + btdm8821ae.val_0x6c0 = 0x55555555; + btdm8821ae.val_0x6c8 = 0xffff; + btdm8821ae.val_0x6cc = 0x3; + + // sw mechanism + btdm8821ae.b_agc_table_en = false; + btdm8821ae.b_adc_back_off_on = false; + btdm8821ae.b_sw_dac_swing_on = false; + + // fw mechanism + btdm8821ae.b_ps_tdma_on = true; + if (bt_tx_rx_cnt_lvl == BT_TXRX_CNT_LEVEL_2) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters >= 1400\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0x5; + btdm8821ae.ps_tdma_byte[2] = 0x5; + btdm8821ae.ps_tdma_byte[3] = 0x2; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } else if(bt_tx_rx_cnt_lvl == BT_TXRX_CNT_LEVEL_1) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters >= 1200 && < 1400\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0xa; + btdm8821ae.ps_tdma_byte[2] = 0xa; + btdm8821ae.ps_tdma_byte[3] = 0x2; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters < 1200\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0xf; + btdm8821ae.ps_tdma_byte[2] = 0xf; + btdm8821ae.ps_tdma_byte[3] = 0x2; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("HT20 or Legacy\n")); + bt_rssi_state = rtl8821ae_dm_bt_check_coex_rssi_state(hw, 2, 47, 0); + bt_rssi_state1 = rtl8821ae_dm_bt_check_coex_rssi_state1(hw, 2, 27, 0); + + // coex table + btdm8821ae.val_0x6c0 = 0x55555555; + btdm8821ae.val_0x6c8 = 0xffff; + btdm8821ae.val_0x6cc = 0x3; + + // sw mechanism + if( (bt_rssi_state == BT_RSSI_STATE_HIGH) || + (bt_rssi_state == BT_RSSI_STATE_STAY_HIGH) ) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("Wifi rssi high \n")); + btdm8821ae.b_agc_table_en = true; + btdm8821ae.b_adc_back_off_on = true; + btdm8821ae.b_sw_dac_swing_on = false; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("Wifi rssi low \n")); + btdm8821ae.b_agc_table_en = false; + btdm8821ae.b_adc_back_off_on = false; + btdm8821ae.b_sw_dac_swing_on = false; + } + + // fw mechanism + btdm8821ae.b_ps_tdma_on = true; + if( (bt_rssi_state1 == BT_RSSI_STATE_HIGH) || + (bt_rssi_state1 == BT_RSSI_STATE_STAY_HIGH) ) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG,("Wifi rssi-1 high \n")); + // only rssi high we need to do this, + // when rssi low, the value will modified by fw + rtl_write_byte(rtlpriv, 0x883, 0x40); + if(bt_tx_rx_cnt_lvl == BT_TXRX_CNT_LEVEL_2) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters >= 1400\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0x5; + btdm8821ae.ps_tdma_byte[2] = 0x5; + btdm8821ae.ps_tdma_byte[3] = 0x83; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } else if(bt_tx_rx_cnt_lvl == BT_TXRX_CNT_LEVEL_1) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters >= 1200 && < 1400\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0xa; + btdm8821ae.ps_tdma_byte[2] = 0xa; + btdm8821ae.ps_tdma_byte[3] = 0x83; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters < 1200\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0xf; + btdm8821ae.ps_tdma_byte[2] = 0xf; + btdm8821ae.ps_tdma_byte[3] = 0x83; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("Wifi rssi-1 low \n")); + if(bt_tx_rx_cnt_lvl == BT_TXRX_CNT_LEVEL_2) + { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters >= 1400\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0x5; + btdm8821ae.ps_tdma_byte[2] = 0x5; + btdm8821ae.ps_tdma_byte[3] = 0x2; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } else if(bt_tx_rx_cnt_lvl == BT_TXRX_CNT_LEVEL_1) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters >= 1200 && < 1400\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0xa; + btdm8821ae.ps_tdma_byte[2] = 0xa; + btdm8821ae.ps_tdma_byte[3] = 0x2; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters < 1200\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0xf; + btdm8821ae.ps_tdma_byte[2] = 0xf; + btdm8821ae.ps_tdma_byte[3] = 0x2; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } + } + } + + if (rtl8821ae_dm_bt_need_to_dec_bt_pwr(hw)) { + btdm8821ae.b_dec_bt_pwr = true; + } + + // Always ignore WlanAct if bHid|bSCOBusy|bSCOeSCO + + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], BT btInqPageStartTime = 0x%x, btTxRxCntLvl = %d\n", + hal_coex_8821ae.bt_inq_page_start_time, bt_tx_rx_cnt_lvl)); + if( (hal_coex_8821ae.bt_inq_page_start_time) || + (BT_TXRX_CNT_LEVEL_3 == bt_tx_rx_cnt_lvl) ) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], Set BT inquiry / page scan 0x3a setting\n")); + btdm8821ae.b_ps_tdma_on = true; + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0x5; + btdm8821ae.ps_tdma_byte[2] = 0x5; + btdm8821ae.ps_tdma_byte[3] = 0x2; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } + + if(rtl8821ae_dm_bt_is_coexist_state_changed(hw)) { + rtl8821ae_dm_bt_set_bt_dm(hw, &btdm8821ae); + } +} + +void rtl8821ae_dm_bt_2_ant_ftp_a2dp(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct btdm_8821ae btdm8821ae; + + u8 bt_rssi_state, bt_rssi_state1; + u32 bt_tx_rx_cnt_lvl = 0; + + rtl8821ae_dm_bt_btdm_structure_reload(hw, &btdm8821ae); + + btdm8821ae.b_rf_rx_lpf_shrink = true; + btdm8821ae.b_low_penalty_rate_adaptive = true; + btdm8821ae.b_reject_aggre_pkt = false; + + bt_tx_rx_cnt_lvl = rtl8821ae_dm_bt_bt_tx_rx_counter_level(hw); + + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters = %d\n", bt_tx_rx_cnt_lvl)); + + if(rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20_40) + { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("HT40\n")); + bt_rssi_state = rtl8821ae_dm_bt_check_coex_rssi_state(hw, 2, 37, 0); + + // coex table + btdm8821ae.val_0x6c0 = 0x55555555; + btdm8821ae.val_0x6c8 = 0xffff; + btdm8821ae.val_0x6cc = 0x3; + + // sw mechanism + btdm8821ae.b_agc_table_en = false; + btdm8821ae.b_adc_back_off_on = true; + btdm8821ae.b_sw_dac_swing_on = false; + + // fw mechanism + btdm8821ae.b_ps_tdma_on = true; + if ((bt_rssi_state == BT_RSSI_STATE_HIGH) || + (bt_rssi_state == BT_RSSI_STATE_STAY_HIGH) ) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("Wifi rssi high \n")); + if (bt_tx_rx_cnt_lvl == BT_TXRX_CNT_LEVEL_2) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters >= 1400\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0x5; + btdm8821ae.ps_tdma_byte[2] = 0x5; + btdm8821ae.ps_tdma_byte[3] = 0x81; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } else if(bt_tx_rx_cnt_lvl == BT_TXRX_CNT_LEVEL_1) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters >= 1200 && < 1400\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0xa; + btdm8821ae.ps_tdma_byte[2] = 0xa; + btdm8821ae.ps_tdma_byte[3] = 0x81; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters < 1200\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0xf; + btdm8821ae.ps_tdma_byte[2] = 0xf; + btdm8821ae.ps_tdma_byte[3] = 0x81; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("Wifi rssi low \n")); + if(bt_tx_rx_cnt_lvl == BT_TXRX_CNT_LEVEL_2) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters >= 1400\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0x5; + btdm8821ae.ps_tdma_byte[2] = 0x5; + btdm8821ae.ps_tdma_byte[3] = 0x0; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } else if(bt_tx_rx_cnt_lvl == BT_TXRX_CNT_LEVEL_1) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters >= 1200 && < 1400\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0xa; + btdm8821ae.ps_tdma_byte[2] = 0xa; + btdm8821ae.ps_tdma_byte[3] = 0x0; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters < 1200\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0xf; + btdm8821ae.ps_tdma_byte[2] = 0xf; + btdm8821ae.ps_tdma_byte[3] = 0x0; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } + } + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("HT20 or Legacy\n")); + bt_rssi_state = rtl8821ae_dm_bt_check_coex_rssi_state(hw, 2, 47, 0); + bt_rssi_state1 = rtl8821ae_dm_bt_check_coex_rssi_state1(hw, 2, 27, 0); + + // coex table + btdm8821ae.val_0x6c0 = 0x55555555; + btdm8821ae.val_0x6c8 = 0xffff; + btdm8821ae.val_0x6cc = 0x3; + + // sw mechanism + if( (bt_rssi_state == BT_RSSI_STATE_HIGH) || + (bt_rssi_state == BT_RSSI_STATE_STAY_HIGH) ) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("Wifi rssi high \n")); + btdm8821ae.b_agc_table_en = true; + btdm8821ae.b_adc_back_off_on = true; + btdm8821ae.b_sw_dac_swing_on = false; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("Wifi rssi low \n")); + btdm8821ae.b_agc_table_en = false; + btdm8821ae.b_adc_back_off_on = false; + btdm8821ae.b_sw_dac_swing_on = false; + } + + // fw mechanism + btdm8821ae.b_ps_tdma_on = true; + if( (bt_rssi_state1 == BT_RSSI_STATE_HIGH) || + (bt_rssi_state1 == BT_RSSI_STATE_STAY_HIGH) ) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("Wifi rssi-1 high \n")); + // only rssi high we need to do this, + // when rssi low, the value will modified by fw + rtl_write_byte(rtlpriv, 0x883, 0x40); + if (bt_tx_rx_cnt_lvl == BT_TXRX_CNT_LEVEL_2) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters >= 1400\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0x5; + btdm8821ae.ps_tdma_byte[2] = 0x5; + btdm8821ae.ps_tdma_byte[3] = 0x81; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } else if(bt_tx_rx_cnt_lvl == BT_TXRX_CNT_LEVEL_1) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters >= 1200 && < 1400\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0xa; + btdm8821ae.ps_tdma_byte[2] = 0xa; + btdm8821ae.ps_tdma_byte[3] = 0x81; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters < 1200\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0xf; + btdm8821ae.ps_tdma_byte[2] = 0xf; + btdm8821ae.ps_tdma_byte[3] = 0x81; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("Wifi rssi-1 low \n")); + if(bt_tx_rx_cnt_lvl == BT_TXRX_CNT_LEVEL_2) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters >= 1400\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0x5; + btdm8821ae.ps_tdma_byte[2] = 0x5; + btdm8821ae.ps_tdma_byte[3] = 0x0; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } else if(bt_tx_rx_cnt_lvl == BT_TXRX_CNT_LEVEL_1) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters >= 1200 && < 1400\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0xa; + btdm8821ae.ps_tdma_byte[2] = 0xa; + btdm8821ae.ps_tdma_byte[3] = 0x0; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT TxRx Counters < 1200\n")); + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0xf; + btdm8821ae.ps_tdma_byte[2] = 0xf; + btdm8821ae.ps_tdma_byte[3] = 0x0; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } + } + } + + if(rtl8821ae_dm_bt_need_to_dec_bt_pwr(hw)) { + btdm8821ae.b_dec_bt_pwr = true; + } + + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], BT btInqPageStartTime = 0x%x, btTxRxCntLvl = %d\n", + hal_coex_8821ae.bt_inq_page_start_time, bt_tx_rx_cnt_lvl)); + + if( (hal_coex_8821ae.bt_inq_page_start_time) || + (BT_TXRX_CNT_LEVEL_3 == bt_tx_rx_cnt_lvl) ) + { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], Set BT inquiry / page scan 0x3a setting\n")); + btdm8821ae.b_ps_tdma_on = true; + btdm8821ae.ps_tdma_byte[0] = 0xa3; + btdm8821ae.ps_tdma_byte[1] = 0x5; + btdm8821ae.ps_tdma_byte[2] = 0x5; + btdm8821ae.ps_tdma_byte[3] = 0x83; + btdm8821ae.ps_tdma_byte[4] = 0x80; + } + + if(rtl8821ae_dm_bt_is_coexist_state_changed(hw)){ + rtl8821ae_dm_bt_set_bt_dm(hw, &btdm8821ae); + } +} + +void rtl8821ae_dm_bt_inq_page_monitor(struct ieee80211_hw *hw) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 cur_time; + cur_time = jiffies; + if (hal_coex_8821ae.b_c2h_bt_inquiry_page) { + //pHalData->btcoexist.halCoex8821ae.btInquiryPageCnt++; + // bt inquiry or page is started. + if(hal_coex_8821ae.bt_inq_page_start_time == 0){ + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_BT_INQ_PAGE; + hal_coex_8821ae.bt_inq_page_start_time = cur_time; + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], BT Inquiry/page is started at time : 0x%x \n", + hal_coex_8821ae.bt_inq_page_start_time)); + } + } + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], BT Inquiry/page started time : 0x%x, cur_time : 0x%x \n", + hal_coex_8821ae.bt_inq_page_start_time, cur_time)); + + if (hal_coex_8821ae.bt_inq_page_start_time) { + if ((((long)cur_time - (long)hal_coex_8821ae.bt_inq_page_start_time) / HZ) >= 10) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BT Inquiry/page >= 10sec!!!")); + hal_coex_8821ae.bt_inq_page_start_time = 0; + rtlpcipriv->btcoexist.current_state &=~ BT_COEX_STATE_BT_INQ_PAGE; + } + } + +#if 0 + if (hal_coex_8821ae.b_c2h_bt_inquiry_page) { + hal_coex_8821ae.b_c2h_bt_inquiry_page++; + // bt inquiry or page is started. + } if(hal_coex_8821ae.b_c2h_bt_inquiry_page) { + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_BT_INQ_PAGE; + if(hal_coex_8821ae.bt_inquiry_page_cnt >= 4) + hal_coex_8821ae.bt_inquiry_page_cnt = 0; + hal_coex_8821ae.bt_inquiry_page_cnt++; + } else { + rtlpcipriv->btcoexist.current_state &=~ BT_COEX_STATE_BT_INQ_PAGE; + } +#endif +} + +void rtl8821ae_dm_bt_reset_action_profile_state(struct ieee80211_hw *hw) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + + rtlpcipriv->btcoexist.current_state &= ~\ + (BT_COEX_STATE_PROFILE_HID | BT_COEX_STATE_PROFILE_A2DP| + BT_COEX_STATE_PROFILE_PAN | BT_COEX_STATE_PROFILE_SCO); + + rtlpcipriv->btcoexist.current_state &= ~\ + (BT_COEX_STATE_BTINFO_COMMON | BT_COEX_STATE_BTINFO_B_HID_SCOESCO| + BT_COEX_STATE_BTINFO_B_FTP_A2DP); +} + +void _rtl8821ae_dm_bt_coexist_2_ant(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + u8 bt_retry_cnt; + u8 bt_info_original; + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex] Get bt info by fw!!\n")); + + _rtl8821ae_dm_bt_check_wifi_state(hw); + + if (hal_coex_8821ae.b_c2h_bt_info_req_sent) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("[BTCoex] c2h for bt_info not rcvd yet!!\n")); + } + + bt_retry_cnt = hal_coex_8821ae.bt_retry_cnt; + bt_info_original = hal_coex_8821ae.c2h_bt_info_original; + + // when bt inquiry or page scan, we have to set h2c 0x25 + // ignore wlanact for continuous 4x2secs + rtl8821ae_dm_bt_inq_page_monitor(hw); + rtl8821ae_dm_bt_reset_action_profile_state(hw); + + if(rtl8821ae_dm_bt_is_2_ant_common_action(hw)) { + rtlpcipriv->btcoexist.bt_profile_case = BT_COEX_MECH_COMMON; + rtlpcipriv->btcoexist.bt_profile_action= BT_COEX_MECH_COMMON; + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("Action 2-Ant common.\n")); + } else { + if( (bt_info_original & BTINFO_B_HID) || + (bt_info_original & BTINFO_B_SCO_BUSY) || + (bt_info_original & BTINFO_B_SCO_ESCO) ) { + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_BTINFO_B_HID_SCOESCO; + rtlpcipriv->btcoexist.bt_profile_case = BT_COEX_MECH_HID_SCO_ESCO; + rtlpcipriv->btcoexist.bt_profile_action = BT_COEX_MECH_HID_SCO_ESCO; + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BTInfo: bHid|bSCOBusy|bSCOeSCO\n")); + rtl8821ae_dm_bt_2_ant_hid_sco_esco(hw); + } else if( (bt_info_original & BTINFO_B_FTP) || + (bt_info_original & BTINFO_B_A2DP) ) { + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_BTINFO_B_FTP_A2DP; + rtlpcipriv->btcoexist.bt_profile_case = BT_COEX_MECH_FTP_A2DP; + rtlpcipriv->btcoexist.bt_profile_action = BT_COEX_MECH_FTP_A2DP; + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("BTInfo: bFTP|bA2DP\n")); + rtl8821ae_dm_bt_2_ant_ftp_a2dp(hw); + } else { + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_BTINFO_B_HID_SCOESCO; + rtlpcipriv->btcoexist.bt_profile_case = BT_COEX_MECH_NONE; + rtlpcipriv->btcoexist.bt_profile_action= BT_COEX_MECH_NONE; + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], BTInfo: undefined case!!!!\n")); + rtl8821ae_dm_bt_2_ant_hid_sco_esco(hw); + } + } +} + +void _rtl8821ae_dm_bt_coexist_1_ant(struct ieee80211_hw *hw) +{ + return; +} + +void rtl8821ae_dm_bt_hw_coex_all_off_8723a(struct ieee80211_hw *hw) +{ + rtl8821ae_dm_bt_set_coex_table(hw, 0x5a5aaaaa, 0xcc, 0x3); + rtl8821ae_dm_bt_set_hw_pta_mode(hw, true); +} + +void rtl8821ae_dm_bt_fw_coex_all_off_8723a(struct ieee80211_hw *hw) +{ + rtl8821ae_dm_bt_set_fw_ignore_wlan_act(hw, false); + rtl8821ae_dm_bt_set_fw_3a(hw, 0x0, 0x0, 0x0, 0x8, 0x0); + rtl8821ae_dm_bt_set_fw_2_ant_hid(hw, false, false); + rtl8821ae_dm_bt_set_fw_tra_tdma_ctrl(hw, false, TDMA_2ANT, TDMA_NAV_OFF); + rtl8821ae_dm_bt_set_fw_tdma_ctrl(hw, false, TDMA_2ANT, + TDMA_NAV_OFF, TDMA_DAC_SWING_OFF); + rtl8821ae_dm_bt_set_fw_dac_swing_level(hw, 0); + rtl8821ae_dm_bt_set_fw_bt_hid_info(hw, false); + rtl8821ae_dm_bt_set_fw_bt_retry_index(hw, 2); + rtl8821ae_dm_bt_set_fw_wlan_act(hw, 0x10, 0x10); + rtl8821ae_dm_bt_set_fw_dec_bt_pwr(hw, false); +} + +void rtl8821ae_dm_bt_sw_coex_all_off_8723a(struct ieee80211_hw *hw) +{ + rtl8821ae_dm_bt_agc_table(hw, BT_AGCTABLE_OFF); + rtl8821ae_dm_bt_bb_back_off_level(hw, BT_BB_BACKOFF_OFF); + rtl8821ae_dm_bt_reject_ap_aggregated_packet(hw, false); + + rtl8821ae_dm_bt_set_sw_penalty_tx_rate_adaptive(hw, + BT_TX_RATE_ADAPTIVE_NORMAL); + rtl8821ae_dm_bt_set_sw_rf_rx_lpf_corner(hw, BT_RF_RX_LPF_CORNER_RESUME); + rtl8821ae_dm_bt_set_sw_full_time_dac_swing(hw, false, 0xc0); +} + +void rtl8821ae_dm_bt_query_bt_information(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 h2c_parameter[1] = {0}; + + hal_coex_8821ae.b_c2h_bt_info_req_sent = true; + + h2c_parameter[0] |= BIT(0); + + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("Query Bt information, write 0x38=0x%x\n", h2c_parameter[0])); + + rtl8821ae_fill_h2c_cmd(hw, 0x38, 1, h2c_parameter); +} + +void rtl8821ae_dm_bt_bt_hw_counters_monitor(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + u32 reg_hp_tx_rx, reg_lp_tx_rx, u32_tmp; + u32 reg_hp_tx=0, reg_hp_rx=0, reg_lp_tx=0, reg_lp_rx=0; + + reg_hp_tx_rx = REG_HIGH_PRIORITY_TXRX; + reg_lp_tx_rx = REG_LOW_PRIORITY_TXRX; + + u32_tmp = rtl_read_dword(rtlpriv, reg_hp_tx_rx); + reg_hp_tx = u32_tmp & MASKLWORD; + reg_hp_rx = (u32_tmp & MASKHWORD)>>16; + + u32_tmp = rtl_read_dword(rtlpriv, reg_lp_tx_rx); + reg_lp_tx = u32_tmp & MASKLWORD; + reg_lp_rx = (u32_tmp & MASKHWORD)>>16; + + if(rtlpcipriv->btcoexist.lps_counter > 1) { + reg_hp_tx %= rtlpcipriv->btcoexist.lps_counter; + reg_hp_rx %= rtlpcipriv->btcoexist.lps_counter; + reg_lp_tx %= rtlpcipriv->btcoexist.lps_counter; + reg_lp_rx %= rtlpcipriv->btcoexist.lps_counter; + } + + hal_coex_8821ae.high_priority_tx = reg_hp_tx; + hal_coex_8821ae.high_priority_rx = reg_hp_rx; + hal_coex_8821ae.low_priority_tx = reg_lp_tx; + hal_coex_8821ae.low_priority_rx = reg_lp_rx; + + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("High Priority Tx/Rx (reg 0x%x)=%x(%d)/%x(%d)\n", + reg_hp_tx_rx, reg_hp_tx, reg_hp_tx, reg_hp_rx, reg_hp_rx)); + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("Low Priority Tx/Rx (reg 0x%x)=%x(%d)/%x(%d)\n", + reg_lp_tx_rx, reg_lp_tx, reg_lp_tx, reg_lp_rx, reg_lp_rx)); + rtlpcipriv->btcoexist.lps_counter = 0; + //rtl_write_byte(rtlpriv, 0x76e, 0xc); +} + +void rtl8821ae_dm_bt_bt_enable_disable_check(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + bool bt_alife = true; + + if (hal_coex_8821ae.high_priority_tx == 0 && + hal_coex_8821ae.high_priority_rx == 0 && + hal_coex_8821ae.low_priority_tx == 0 && + hal_coex_8821ae.low_priority_rx == 0) { + bt_alife = false; + } + if (hal_coex_8821ae.high_priority_tx == 0xeaea && + hal_coex_8821ae.high_priority_rx == 0xeaea && + hal_coex_8821ae.low_priority_tx == 0xeaea && + hal_coex_8821ae.low_priority_rx == 0xeaea) { + bt_alife = false; + } + if (hal_coex_8821ae.high_priority_tx == 0xffff && + hal_coex_8821ae.high_priority_rx == 0xffff && + hal_coex_8821ae.low_priority_tx == 0xffff && + hal_coex_8821ae.low_priority_rx == 0xffff) { + bt_alife = false; + } + if (bt_alife) { + rtlpcipriv->btcoexist.bt_active_zero_cnt = 0; + rtlpcipriv->btcoexist.b_cur_bt_disabled = false; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("8821AE BT is enabled !!\n")); + } else { + rtlpcipriv->btcoexist.bt_active_zero_cnt++; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, + ("8821AE bt all counters=0, %d times!!\n", + rtlpcipriv->btcoexist.bt_active_zero_cnt)); + if (rtlpcipriv->btcoexist.bt_active_zero_cnt >= 2) { + rtlpcipriv->btcoexist.b_cur_bt_disabled = true; + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("8821AE BT is disabled !!\n")); + } + } + if (rtlpcipriv->btcoexist.b_pre_bt_disabled != + rtlpcipriv->btcoexist.b_cur_bt_disabled) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("8821AE BT is from %s to %s!!\n", + (rtlpcipriv->btcoexist.b_pre_bt_disabled ? "disabled":"enabled"), + (rtlpcipriv->btcoexist.b_cur_bt_disabled ? "disabled":"enabled"))); + rtlpcipriv->btcoexist.b_pre_bt_disabled + = rtlpcipriv->btcoexist.b_cur_bt_disabled; + } +} + + +void rtl8821ae_dm_bt_coexist(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + + rtl8821ae_dm_bt_query_bt_information(hw); + rtl8821ae_dm_bt_bt_hw_counters_monitor(hw); + rtl8821ae_dm_bt_bt_enable_disable_check(hw); + + if (rtlpcipriv->btcoexist.bt_ant_num == ANT_X2) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTCoex], 2 Ant mechanism\n")); + _rtl8821ae_dm_bt_coexist_2_ant(hw); + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("[BTCoex], 1 Ant mechanism\n")); + _rtl8821ae_dm_bt_coexist_1_ant(hw); + } + + if (!rtl8821ae_dm_bt_is_same_coexist_state(hw)) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("[BTCoex], Coexist State[bitMap] change from 0x%x%8x to 0x%x%8x\n", + rtlpcipriv->btcoexist.previous_state_h, + rtlpcipriv->btcoexist.previous_state, + rtlpcipriv->btcoexist.current_state_h, + rtlpcipriv->btcoexist.current_state)); + rtlpcipriv->btcoexist.previous_state + = rtlpcipriv->btcoexist.current_state; + rtlpcipriv->btcoexist.previous_state_h + = rtlpcipriv->btcoexist.current_state_h; + } +} + +void rtl8821ae_dm_bt_parse_bt_info(struct ieee80211_hw *hw, u8 * tmp_buf, u8 len) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + u8 bt_info; + u8 i; + + hal_coex_8821ae.b_c2h_bt_info_req_sent = false; + hal_coex_8821ae.bt_retry_cnt = 0; + for (i = 0; i < len; i++) { + if (i == 0) { + hal_coex_8821ae.c2h_bt_info_original = tmp_buf[i]; + } else if (i == 1) { + hal_coex_8821ae.bt_retry_cnt = tmp_buf[i]; + } + if(i == len-1) { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("0x%2x]", tmp_buf[i])); + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_TRACE, ("0x%2x, ", tmp_buf[i])); + } + } + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, + ("BT info bt_info (Data)= 0x%x\n",hal_coex_8821ae.c2h_bt_info_original)); + bt_info = hal_coex_8821ae.c2h_bt_info_original; + + if(bt_info & BIT(2)){ + hal_coex_8821ae.b_c2h_bt_inquiry_page = true; + } else { + hal_coex_8821ae.b_c2h_bt_inquiry_page = false; + } + + if (bt_info & BTINFO_B_CONNECTION) { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTC2H], BTInfo: bConnect=true\n")); + rtlpcipriv->btcoexist.b_bt_busy = true; + rtlpcipriv->btcoexist.current_state &= ~BT_COEX_STATE_BT_IDLE; + } else { + RT_TRACE(COMP_BT_COEXIST, DBG_DMESG, ("[BTC2H], BTInfo: bConnect=false\n")); + rtlpcipriv->btcoexist.b_bt_busy = false; + rtlpcipriv->btcoexist.current_state |= BT_COEX_STATE_BT_IDLE; + } +} +void rtl_8821ae_c2h_command_handle(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct c2h_evt_hdr c2h_event; + u8 * ptmp_buf = NULL; + u8 index = 0; + u8 u1b_tmp = 0; + memset(&c2h_event, 0, sizeof(c2h_event)); + u1b_tmp = rtl_read_byte(rtlpriv, REG_C2HEVT_MSG_NORMAL); + RT_TRACE(COMP_FW, DBG_DMESG, + ("&&&&&&: REG_C2HEVT_MSG_NORMAL is 0x%x\n", u1b_tmp)); + c2h_event.cmd_id = u1b_tmp & 0xF; + c2h_event.cmd_len = (u1b_tmp & 0xF0) >> 4; + c2h_event.cmd_seq = rtl_read_byte(rtlpriv, REG_C2HEVT_MSG_NORMAL + 1); + RT_TRACE(COMP_FW, DBG_DMESG, ("cmd_id: %d, cmd_len: %d, cmd_seq: %d\n", + c2h_event.cmd_id , c2h_event.cmd_len, c2h_event.cmd_seq)); + u1b_tmp = rtl_read_byte(rtlpriv, 0x01AF); + if (u1b_tmp == C2H_EVT_HOST_CLOSE) { + return; + } else if (u1b_tmp != C2H_EVT_FW_CLOSE) { + rtl_write_byte(rtlpriv, 0x1AF, 0x00); + return; + } + ptmp_buf = (u8 *) kmalloc(c2h_event.cmd_len, GFP_KERNEL); + if(ptmp_buf == NULL) { + RT_TRACE(COMP_FW, DBG_TRACE, ("malloc cmd buf failed\n")); + return; + } + + /* Read the content */ + for (index = 0; index < c2h_event.cmd_len; index ++) { + ptmp_buf[index] = rtl_read_byte(rtlpriv, REG_C2HEVT_MSG_NORMAL + 2+ index); + } + + switch(c2h_event.cmd_id) { + case C2H_BT_RSSI: + break; + + case C2H_BT_OP_MODE: + break; + + case BT_INFO: + RT_TRACE(COMP_FW, DBG_TRACE, + ("BT info Byte[0] (ID) is 0x%x\n", c2h_event.cmd_id)); + RT_TRACE(COMP_FW, DBG_TRACE, + ("BT info Byte[1] (Seq) is 0x%x\n", c2h_event.cmd_seq)); + RT_TRACE(COMP_FW, DBG_TRACE, + ("BT info Byte[2] (Data)= 0x%x\n", ptmp_buf[0])); + + if (rtlpriv->cfg->ops->get_btc_status()){ + rtlpriv->btcoexist.btc_ops->btc_btinfo_notify(rtlpriv, ptmp_buf, c2h_event.cmd_len); + } + break; + default: + break; + } + + if(ptmp_buf) + kfree(ptmp_buf); + + rtl_write_byte(rtlpriv, 0x01AF, C2H_EVT_HOST_CLOSE); +} + + + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/hal_btc.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/hal_btc.h @@ -0,0 +1,160 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8821AE_HAL_BTC_H__ +#define __RTL8821AE_HAL_BTC_H__ + +#include "../wifi.h" +#include "btc.h" +#include "hal_bt_coexist.h" + +#define BT_TXRX_CNT_THRES_1 1200 +#define BT_TXRX_CNT_THRES_2 1400 +#define BT_TXRX_CNT_THRES_3 3000 +#define BT_TXRX_CNT_LEVEL_0 0 // < 1200 +#define BT_TXRX_CNT_LEVEL_1 1 // >= 1200 && < 1400 +#define BT_TXRX_CNT_LEVEL_2 2 // >= 1400 +#define BT_TXRX_CNT_LEVEL_3 3 + + + +#define BT_COEX_DISABLE 0 +#define BT_Q_PKT_OFF 0 +#define BT_Q_PKT_ON 1 + +#define BT_TX_PWR_OFF 0 +#define BT_TX_PWR_ON 1 + +/* TDMA mode definition */ +#define TDMA_2ANT 0 +#define TDMA_1ANT 1 +#define TDMA_NAV_OFF 0 +#define TDMA_NAV_ON 1 +#define TDMA_DAC_SWING_OFF 0 +#define TDMA_DAC_SWING_ON 1 + +/* PTA mode related definition */ +#define BT_PTA_MODE_OFF 0 +#define BT_PTA_MODE_ON 1 + +/* Penalty Tx Rate Adaptive */ +#define BT_TX_RATE_ADAPTIVE_NORMAL 0 +#define BT_TX_RATE_ADAPTIVE_LOW_PENALTY 1 + +/* RF Corner */ +#define BT_RF_RX_LPF_CORNER_RESUME 0 +#define BT_RF_RX_LPF_CORNER_SHRINK 1 + +#define C2H_EVT_HOST_CLOSE 0x00 +#define C2H_EVT_FW_CLOSE 0xFF + +enum bt_traffic_mode { + BT_MOTOR_EXT_BE = 0x00, + BT_MOTOR_EXT_GUL = 0x01, + BT_MOTOR_EXT_GUB = 0x02, + BT_MOTOR_EXT_GULB = 0x03 +}; + +enum bt_traffic_mode_profile { + BT_PROFILE_NONE, + BT_PROFILE_A2DP, + BT_PROFILE_PAN, + BT_PROFILE_HID, + BT_PROFILE_SCO +}; + +enum hci_ext_bt_operation { + HCI_BT_OP_NONE = 0x0, + HCI_BT_OP_INQUIRE_START = 0x1, + HCI_BT_OP_INQUIRE_FINISH = 0x2, + HCI_BT_OP_PAGING_START = 0x3, + HCI_BT_OP_PAGING_SUCCESS = 0x4, + HCI_BT_OP_PAGING_UNSUCCESS = 0x5, + HCI_BT_OP_PAIRING_START = 0x6, + HCI_BT_OP_PAIRING_FINISH = 0x7, + HCI_BT_OP_BT_DEV_ENABLE = 0x8, + HCI_BT_OP_BT_DEV_DISABLE = 0x9, + HCI_BT_OP_MAX, +}; + +enum bt_spec { + BT_SPEC_1_0_b = 0x00, + BT_SPEC_1_1 = 0x01, + BT_SPEC_1_2 = 0x02, + BT_SPEC_2_0_EDR = 0x03, + BT_SPEC_2_1_EDR = 0x04, + BT_SPEC_3_0_HS = 0x05, + BT_SPEC_4_0 = 0x06 +}; + +struct c2h_evt_hdr { + u8 cmd_id; + u8 cmd_len; + u8 cmd_seq; +}; + +enum bt_state{ + BT_INFO_STATE_DISABLED = 0, + BT_INFO_STATE_NO_CONNECTION = 1, + BT_INFO_STATE_CONNECT_IDLE = 2, + BT_INFO_STATE_INQ_OR_PAG = 3, + BT_INFO_STATE_ACL_ONLY_BUSY = 4, + BT_INFO_STATE_SCO_ONLY_BUSY = 5, + BT_INFO_STATE_ACL_SCO_BUSY = 6, + BT_INFO_STATE_HID_BUSY = 7, + BT_INFO_STATE_HID_SCO_BUSY = 8, + BT_INFO_STATE_MAX = 7 +}; + +enum rtl8723be_c2h_evt { + C2H_DBG = 0, + C2H_TSF = 1, + C2H_AP_RPT_RSP = 2, + C2H_CCX_TX_RPT = 3, // The FW notify the report of the specific tx packet. + C2H_BT_RSSI = 4, + C2H_BT_OP_MODE = 5, + C2H_HW_INFO_EXCH = 10, + C2H_C2H_H2C_TEST = 11, + BT_INFO = 9, + MAX_C2HEVENT +}; + + + +void rtl8821ae_dm_bt_fw_coex_all_off_8723a(struct ieee80211_hw *hw); +void rtl8821ae_dm_bt_sw_coex_all_off_8723a(struct ieee80211_hw *hw); +void rtl8821ae_dm_bt_hw_coex_all_off_8723a(struct ieee80211_hw *hw); +void rtl8821ae_dm_bt_coexist(struct ieee80211_hw *hw); +void rtl8821ae_dm_bt_set_bt_dm(struct ieee80211_hw *hw, struct btdm_8821ae *p_btdm); +void rtl_8821ae_c2h_command_handle(struct ieee80211_hw * hw); +void rtl_8821ae_bt_wifi_media_status_notify(struct ieee80211_hw * hw, bool mstatus); +void rtl8821ae_dm_bt_turn_off_bt_coexist_before_enter_lps(struct ieee80211_hw *hw); + + + +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/hw.c +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/hw.c @@ -0,0 +1,3346 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "../efuse.h" +#include "../base.h" +#include "../regd.h" +#include "../cam.h" +#include "../ps.h" +#include "../pci.h" +#include "reg.h" +#include "def.h" +#include "phy.h" +#include "dm.h" +#include "fw.h" +#include "led.h" +#include "hw.h" +#include "pwrseqcmd.h" +#include "pwrseq.h" +#include "btc.h" +#include "../btcoexist/rtl_btc.h" + +#define LLT_CONFIG 5 + +static void _rtl8821ae_return_beacon_queue_skb(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl8192_tx_ring *ring = &rtlpci->tx_ring[BEACON_QUEUE]; + + while (skb_queue_len(&ring->queue)) { + struct rtl_tx_desc *entry = &ring->desc[ring->idx]; + struct sk_buff *skb = __skb_dequeue(&ring->queue); + + pci_unmap_single(rtlpci->pdev, + le32_to_cpu(rtlpriv->cfg->ops->get_desc( + (u8 *) entry, true, HW_DESC_TXBUFF_ADDR)), + skb->len, PCI_DMA_TODEVICE); + kfree_skb(skb); + ring->idx = (ring->idx + 1) % ring->entries; + } + +} + +static void _rtl8821ae_set_bcn_ctrl_reg(struct ieee80211_hw *hw, + u8 set_bits, u8 clear_bits) +{ + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtlpci->reg_bcn_ctrl_val |= set_bits; + rtlpci->reg_bcn_ctrl_val &= ~clear_bits; + + rtl_write_byte(rtlpriv, REG_BCN_CTRL, (u8) rtlpci->reg_bcn_ctrl_val); +} + +void _rtl8821ae_stop_tx_beacon(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 tmp1byte; + + tmp1byte = rtl_read_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 2); + rtl_write_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 2, tmp1byte & (~BIT(6))); + rtl_write_byte(rtlpriv, REG_TBTT_PROHIBIT + 1, 0x64); + tmp1byte = rtl_read_byte(rtlpriv, REG_TBTT_PROHIBIT + 2); + tmp1byte &= ~(BIT(0)); + rtl_write_byte(rtlpriv, REG_TBTT_PROHIBIT + 2, tmp1byte); +} + +void _rtl8821ae_resume_tx_beacon(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 tmp1byte; + + tmp1byte = rtl_read_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 2); + rtl_write_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 2, tmp1byte | BIT(6)); + rtl_write_byte(rtlpriv, REG_TBTT_PROHIBIT + 1, 0xff); + tmp1byte = rtl_read_byte(rtlpriv, REG_TBTT_PROHIBIT + 2); + tmp1byte |= BIT(0); + rtl_write_byte(rtlpriv, REG_TBTT_PROHIBIT + 2, tmp1byte); +} + +static void _rtl8821ae_enable_bcn_sub_func(struct ieee80211_hw *hw) +{ + _rtl8821ae_set_bcn_ctrl_reg(hw, 0, BIT(1)); +} + +static void _rtl8821ae_disable_bcn_sub_func(struct ieee80211_hw *hw) +{ + _rtl8821ae_set_bcn_ctrl_reg(hw, BIT(1), 0); +} + +static void _rtl8821ae_set_fw_clock_on(struct ieee80211_hw *hw, + u8 rpwm_val, bool b_need_turn_off_ckk) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + bool b_support_remote_wake_up; + u32 count = 0,isr_regaddr,content; + bool b_schedule_timer = b_need_turn_off_ckk; + rtlpriv->cfg->ops->get_hw_reg(hw, HAL_DEF_WOWLAN, + (u8 *) (&b_support_remote_wake_up)); + + if (!rtlhal->bfw_ready) + return; + if (!rtlpriv->psc.b_fw_current_inpsmode) + return; + + while (1) { + spin_lock_bh(&rtlpriv->locks.fw_ps_lock); + if (rtlhal->bfw_clk_change_in_progress) { + while (rtlhal->bfw_clk_change_in_progress) { + spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); + count++; + udelay(100); + if (count > 1000) + return; + spin_lock_bh(&rtlpriv->locks.fw_ps_lock); + } + spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); + } else { + rtlhal->bfw_clk_change_in_progress = false; + spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); + } + } + + if (IS_IN_LOW_POWER_STATE_8821AE(rtlhal->fw_ps_state)) { + rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_SET_RPWM, + (u8 *) (&rpwm_val)); + if (FW_PS_IS_ACK(rpwm_val)) { + isr_regaddr = REG_HISR; + content = rtl_read_dword(rtlpriv, isr_regaddr); + while (!(content & IMR_CPWM) && (count < 500)) { + udelay(50); + count++; + content = rtl_read_dword(rtlpriv, isr_regaddr); + } + + if (content & IMR_CPWM) { + rtl_write_word(rtlpriv,isr_regaddr, 0x0100); + rtlhal->fw_ps_state = FW_PS_STATE_RF_ON_8821AE; + RT_TRACE(COMP_POWER, DBG_LOUD, ("Receive CPWM INT!!! Set pHalData->FwPSState = %X\n", rtlhal->fw_ps_state)); + } + } + + spin_lock_bh(&rtlpriv->locks.fw_ps_lock); + rtlhal->bfw_clk_change_in_progress = false; + spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); + if (b_schedule_timer) { + mod_timer(&rtlpriv->works.fw_clockoff_timer, + jiffies + MSECS(10)); + } + + } else { + spin_lock_bh(&rtlpriv->locks.fw_ps_lock); + rtlhal->bfw_clk_change_in_progress = false; + spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); + } + + +} + +static void _rtl8821ae_set_fw_clock_off(struct ieee80211_hw *hw, + u8 rpwm_val) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl8192_tx_ring *ring; + enum rf_pwrstate rtstate; + bool b_schedule_timer = false; + u8 queue; + + if (!rtlhal->bfw_ready) + return; + if (!rtlpriv->psc.b_fw_current_inpsmode) + return; + if (!rtlhal->ballow_sw_to_change_hwclc) + return; + rtlpriv->cfg->ops->get_hw_reg(hw,HW_VAR_RF_STATE,(u8 *)(&rtstate)); + if (rtstate == ERFOFF ||rtlpriv->psc.inactive_pwrstate ==ERFOFF) + return; + + for (queue = 0; queue < RTL_PCI_MAX_TX_QUEUE_COUNT; queue++) { + ring = &rtlpci->tx_ring[queue]; + if (skb_queue_len(&ring->queue)) { + b_schedule_timer = true; + break; + } + } + + if (b_schedule_timer) { + mod_timer(&rtlpriv->works.fw_clockoff_timer, + jiffies + MSECS(10)); + return; + } + + if (FW_PS_STATE(rtlhal->fw_ps_state) != FW_PS_STATE_RF_OFF_LOW_PWR_8821AE) { + spin_lock_bh(&rtlpriv->locks.fw_ps_lock); + if (!rtlhal->bfw_clk_change_in_progress) { + rtlhal->bfw_clk_change_in_progress = true; + spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); + rtlhal->fw_ps_state = FW_PS_STATE(rpwm_val); + rtl_write_word(rtlpriv, REG_HISR, 0x0100); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_SET_RPWM, + (u8 *) (&rpwm_val)); + spin_lock_bh(&rtlpriv->locks.fw_ps_lock); + rtlhal->bfw_clk_change_in_progress = false; + spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); + } else { + spin_unlock_bh(&rtlpriv->locks.fw_ps_lock); + mod_timer(&rtlpriv->works.fw_clockoff_timer, + jiffies + MSECS(10)); + } + } + +} + +static void _rtl8821ae_set_fw_ps_rf_on(struct ieee80211_hw *hw) +{ + u8 rpwm_val = 0; + rpwm_val |= (FW_PS_STATE_RF_OFF_8821AE | FW_PS_ACK); + _rtl8821ae_set_fw_clock_on(hw, rpwm_val, true); +} + +static void _rtl8821ae_fwlps_leave(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + bool b_fw_current_inps = false; + u8 rpwm_val = 0,fw_pwrmode = FW_PS_ACTIVE_MODE; + + if (ppsc->b_low_power_enable){ + rpwm_val = (FW_PS_STATE_ALL_ON_8821AE|FW_PS_ACK);/* RF on */ + _rtl8821ae_set_fw_clock_on(hw, rpwm_val, false); + rtlhal->ballow_sw_to_change_hwclc = false; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_H2C_FW_PWRMODE, + (u8 *) (&fw_pwrmode)); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, + (u8 *) (&b_fw_current_inps)); + } else { + rpwm_val = FW_PS_STATE_ALL_ON_8821AE; /* RF on */ + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_SET_RPWM, + (u8 *) (&rpwm_val)); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_H2C_FW_PWRMODE, + (u8 *) (&fw_pwrmode)); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, + (u8 *) (&b_fw_current_inps)); + } + +} + +static void _rtl8821ae_fwlps_enter(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + bool b_fw_current_inps = true; + u8 rpwm_val; + + if (ppsc->b_low_power_enable){ + rpwm_val = FW_PS_STATE_RF_OFF_LOW_PWR_8821AE; /* RF off */ + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_FW_PSMODE_STATUS, + (u8 *) (&b_fw_current_inps)); + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_H2C_FW_PWRMODE, + (u8 *) (&ppsc->fwctrl_psmode)); + rtlhal->ballow_sw_to_change_hwclc = true; + _rtl8821ae_set_fw_clock_off(hw, rpwm_val); + + + } else { + rpwm_val = FW_PS_STATE_RF_OFF_8821AE; /* RF off */ + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_FW_PSMODE_STATUS, + (u8 *) (&b_fw_current_inps)); + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_H2C_FW_PWRMODE, + (u8 *) (&ppsc->fwctrl_psmode)); + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_SET_RPWM, + (u8 *) (&rpwm_val)); + } + +} + +void rtl8821ae_get_hw_reg(struct ieee80211_hw *hw, u8 variable, u8 *val) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + + switch (variable) { + case HW_VAR_ETHER_ADDR: + *((u32 *)(val)) = rtl_read_dword(rtlpriv, REG_MACID); + *((u16 *)(val+4)) = rtl_read_word(rtlpriv, REG_MACID + 4); + break; + case HW_VAR_BSSID: + *((u32 *)(val)) = rtl_read_dword(rtlpriv, REG_BSSID); + *((u16 *)(val+4)) = rtl_read_word(rtlpriv, REG_BSSID+4); + break; + case HW_VAR_MEDIA_STATUS: + val[0] = rtl_read_byte(rtlpriv, REG_CR+2) & 0x3; + break; + case HW_VAR_SLOT_TIME: + *((u8 *)(val)) = mac->slot_time; + break; + case HW_VAR_BEACON_INTERVAL: + *((u16 *)(val)) = rtl_read_word(rtlpriv, REG_BCN_INTERVAL); + break; + case HW_VAR_ATIM_WINDOW: + *((u16 *)(val)) = rtl_read_word(rtlpriv, REG_ATIMWND); + break; + case HW_VAR_RCR: + *((u32 *) (val)) = rtlpci->receive_config; + break; + case HW_VAR_RF_STATE: + *((enum rf_pwrstate *)(val)) = ppsc->rfpwr_state; + break; + case HW_VAR_FWLPS_RF_ON:{ + enum rf_pwrstate rfState; + u32 val_rcr; + + rtlpriv->cfg->ops->get_hw_reg(hw, + HW_VAR_RF_STATE, + (u8 *) (&rfState)); + if (rfState == ERFOFF) { + *((bool *) (val)) = true; + } else { + val_rcr = rtl_read_dword(rtlpriv, REG_RCR); + val_rcr &= 0x00070000; + if (val_rcr) + *((bool *) (val)) = false; + else + *((bool *) (val)) = true; + } + break; + } + case HW_VAR_FW_PSMODE_STATUS: + *((bool *) (val)) = ppsc->b_fw_current_inpsmode; + break; + case HW_VAR_CORRECT_TSF:{ + u64 tsf; + u32 *ptsf_low = (u32 *) & tsf; + u32 *ptsf_high = ((u32 *) & tsf) + 1; + + *ptsf_high = rtl_read_dword(rtlpriv, (REG_TSFTR + 4)); + *ptsf_low = rtl_read_dword(rtlpriv, REG_TSFTR); + + *((u64 *) (val)) = tsf; + + break; + } + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("switch case not process %x\n",variable)); + break; + } +} + + +void rtl8821ae_set_hw_reg(struct ieee80211_hw *hw, u8 variable, u8 *val) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 idx; + + switch (variable) { + case HW_VAR_ETHER_ADDR:{ + for (idx = 0; idx < ETH_ALEN; idx++) { + rtl_write_byte(rtlpriv, (REG_MACID + idx), + val[idx]); + } + break; + } + case HW_VAR_BASIC_RATE:{ + u16 b_rate_cfg = ((u16 *) val)[0]; + u8 rate_index = 0; + b_rate_cfg = b_rate_cfg & 0x15f; + b_rate_cfg |= 0x01; + rtl_write_byte(rtlpriv, REG_RRSR, b_rate_cfg & 0xff); + rtl_write_byte(rtlpriv, REG_RRSR + 1, + (b_rate_cfg >> 8) & 0xff); + while (b_rate_cfg > 0x1) { + b_rate_cfg = (b_rate_cfg >> 1); + rate_index++; + } + rtl_write_byte(rtlpriv, REG_INIRTS_RATE_SEL, + rate_index); + break; + } + case HW_VAR_BSSID:{ + for (idx = 0; idx < ETH_ALEN; idx++) { + rtl_write_byte(rtlpriv, (REG_BSSID + idx), + val[idx]); + } + break; + } + case HW_VAR_SIFS:{ + rtl_write_byte(rtlpriv, REG_SIFS_CTX + 1, val[0]); + rtl_write_byte(rtlpriv, REG_SIFS_TRX + 1, val[1]); + + rtl_write_byte(rtlpriv, REG_SPEC_SIFS + 1, val[0]); + rtl_write_byte(rtlpriv, REG_MAC_SPEC_SIFS + 1, val[0]); + + if (!mac->ht_enable) + rtl_write_word(rtlpriv, REG_RESP_SIFS_OFDM, + 0x0e0e); + else + rtl_write_word(rtlpriv, REG_RESP_SIFS_OFDM, + *((u16 *) val)); + break; + } + case HW_VAR_SLOT_TIME:{ + u8 e_aci; + + RT_TRACE(COMP_MLME, DBG_LOUD, + ("HW_VAR_SLOT_TIME %x\n", val[0])); + + rtl_write_byte(rtlpriv, REG_SLOT, val[0]); + + for (e_aci = 0; e_aci < AC_MAX; e_aci++) { + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_AC_PARAM, + (u8 *) (&e_aci)); + } + break; + } + case HW_VAR_ACK_PREAMBLE:{ + u8 reg_tmp; + u8 short_preamble = (bool) (*(u8 *) val); + reg_tmp = rtl_read_byte(rtlpriv, REG_TRXPTCL_CTL+2); + if (short_preamble){ + reg_tmp |= BIT(1); + rtl_write_byte(rtlpriv, REG_TRXPTCL_CTL + 2, reg_tmp); + } else { + reg_tmp &= (~BIT(1)); + rtl_write_byte(rtlpriv, REG_TRXPTCL_CTL + 2, reg_tmp); + } + break; + } + case HW_VAR_WPA_CONFIG: + rtl_write_byte(rtlpriv, REG_SECCFG, *((u8 *) val)); + break; + case HW_VAR_AMPDU_MIN_SPACE:{ + u8 min_spacing_to_set; + u8 sec_min_space; + + min_spacing_to_set = *((u8 *) val); + if (min_spacing_to_set <= 7) { + sec_min_space = 0; + + if (min_spacing_to_set < sec_min_space) + min_spacing_to_set = sec_min_space; + + mac->min_space_cfg = ((mac->min_space_cfg & + 0xf8) | + min_spacing_to_set); + + *val = min_spacing_to_set; + + RT_TRACE(COMP_MLME, DBG_LOUD, + ("Set HW_VAR_AMPDU_MIN_SPACE: %#x\n", + mac->min_space_cfg)); + + rtl_write_byte(rtlpriv, REG_AMPDU_MIN_SPACE, + mac->min_space_cfg); + } + break; + } + case HW_VAR_SHORTGI_DENSITY:{ + u8 density_to_set; + + density_to_set = *((u8 *) val); + mac->min_space_cfg |= (density_to_set << 3); + + RT_TRACE(COMP_MLME, DBG_LOUD, + ("Set HW_VAR_SHORTGI_DENSITY: %#x\n", + mac->min_space_cfg)); + + rtl_write_byte(rtlpriv, REG_AMPDU_MIN_SPACE, + mac->min_space_cfg); + + break; + } + case HW_VAR_AMPDU_FACTOR:{ + u32 ampdu_len = (*((u8 *)val)); + if(rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) { + if(ampdu_len < VHT_AGG_SIZE_128K) + ampdu_len = (0x2000 << (*((u8 *)val))) -1; + else + ampdu_len = 0x1ffff; + } else if(rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) { + if(ampdu_len < HT_AGG_SIZE_64K) + ampdu_len = (0x2000 << (*((u8 *)val))) -1; + else + ampdu_len = 0xffff; + } + ampdu_len |= BIT(31); + + rtl_write_dword(rtlpriv, + REG_AMPDU_MAX_LENGTH_8812, ampdu_len); + break; + } + case HW_VAR_AC_PARAM:{ + u8 e_aci = *((u8 *) val); + rtl8821ae_dm_init_edca_turbo(hw); + + if (rtlpci->acm_method != eAcmWay2_SW) + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_ACM_CTRL, + (u8 *) (&e_aci)); + break; + } + case HW_VAR_ACM_CTRL:{ + u8 e_aci = *((u8 *) val); + union aci_aifsn *p_aci_aifsn = + (union aci_aifsn *)(&(mac->ac[0].aifs)); + u8 acm = p_aci_aifsn->f.acm; + u8 acm_ctrl = rtl_read_byte(rtlpriv, REG_ACMHWCTRL); + + acm_ctrl = + acm_ctrl | ((rtlpci->acm_method == 2) ? 0x0 : 0x1); + + if (acm) { + switch (e_aci) { + case AC0_BE: + acm_ctrl |= AcmHw_BeqEn; + break; + case AC2_VI: + acm_ctrl |= AcmHw_ViqEn; + break; + case AC3_VO: + acm_ctrl |= AcmHw_VoqEn; + break; + default: + RT_TRACE(COMP_ERR, DBG_WARNING, + ("HW_VAR_ACM_CTRL acm set " + "failed: eACI is %d\n", acm)); + break; + } + } else { + switch (e_aci) { + case AC0_BE: + acm_ctrl &= (~AcmHw_BeqEn); + break; + case AC2_VI: + acm_ctrl &= (~AcmHw_ViqEn); + break; + case AC3_VO: + acm_ctrl &= (~AcmHw_BeqEn); + break; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("switch case not process \n")); + break; + } + } + + RT_TRACE(COMP_QOS, DBG_TRACE, + ("SetHwReg8190pci(): [HW_VAR_ACM_CTRL] " + "Write 0x%X\n", acm_ctrl)); + rtl_write_byte(rtlpriv, REG_ACMHWCTRL, acm_ctrl); + break; + } + case HW_VAR_RCR:{ + rtl_write_dword(rtlpriv, REG_RCR, ((u32 *) (val))[0]); + rtlpci->receive_config = ((u32 *) (val))[0]; + break; + } + case HW_VAR_RETRY_LIMIT:{ + u8 retry_limit = ((u8 *) (val))[0]; + + rtl_write_word(rtlpriv, REG_RL, + retry_limit << RETRY_LIMIT_SHORT_SHIFT | + retry_limit << RETRY_LIMIT_LONG_SHIFT); + break; + } + case HW_VAR_DUAL_TSF_RST: + rtl_write_byte(rtlpriv, REG_DUAL_TSF_RST, (BIT(0) | BIT(1))); + break; + case HW_VAR_EFUSE_BYTES: + rtlefuse->efuse_usedbytes = *((u16 *) val); + break; + case HW_VAR_EFUSE_USAGE: + rtlefuse->efuse_usedpercentage = *((u8 *) val); + break; + case HW_VAR_IO_CMD: + rtl8821ae_phy_set_io_cmd(hw, (*(enum io_type *)val)); + break; + case HW_VAR_SET_RPWM:{ + u8 rpwm_val; + + rpwm_val = rtl_read_byte(rtlpriv, REG_PCIE_HRPWM); + udelay(1); + + if (rpwm_val & BIT(7)) { + rtl_write_byte(rtlpriv, REG_PCIE_HRPWM, + (*(u8 *) val)); + } else { + rtl_write_byte(rtlpriv, REG_PCIE_HRPWM, + ((*(u8 *) val) | BIT(7))); + } + + break; + } + case HW_VAR_H2C_FW_PWRMODE:{ + rtl8821ae_set_fw_pwrmode_cmd(hw, (*(u8 *) val)); + break; + } + case HW_VAR_FW_PSMODE_STATUS: + ppsc->b_fw_current_inpsmode = *((bool *) val); + break; + + case HW_VAR_RESUME_CLK_ON: + _rtl8821ae_set_fw_ps_rf_on(hw); + break; + + case HW_VAR_FW_LPS_ACTION:{ + bool b_enter_fwlps = *((bool *) val); + + if (b_enter_fwlps) + _rtl8821ae_fwlps_enter(hw); + else + _rtl8821ae_fwlps_leave(hw); + + break; + } + + case HW_VAR_H2C_FW_JOINBSSRPT:{ + u8 mstatus = (*(u8 *) val); + u8 tmp_regcr, tmp_reg422,bcnvalid_reg; + u8 count = 0, dlbcn_count = 0; + bool b_recover = false; + + if (mstatus == RT_MEDIA_CONNECT) { + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_AID, + NULL); + + tmp_regcr = rtl_read_byte(rtlpriv, REG_CR + 1); + rtl_write_byte(rtlpriv, REG_CR + 1, + (tmp_regcr | BIT(0))); + + _rtl8821ae_set_bcn_ctrl_reg(hw, 0, BIT(3)); + _rtl8821ae_set_bcn_ctrl_reg(hw, BIT(4), 0); + + tmp_reg422 = + rtl_read_byte(rtlpriv, + REG_FWHW_TXQ_CTRL + 2); + rtl_write_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 2, + tmp_reg422 & (~BIT(6))); + if (tmp_reg422 & BIT(6)) + b_recover = true; + + do { + bcnvalid_reg = rtl_read_byte(rtlpriv, REG_TDECTRL+2); + rtl_write_byte(rtlpriv, REG_TDECTRL+2,(bcnvalid_reg | BIT(0))); + _rtl8821ae_return_beacon_queue_skb(hw); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + rtl8812ae_set_fw_rsvdpagepkt(hw, 0); + else + rtl8821ae_set_fw_rsvdpagepkt(hw, 0); + bcnvalid_reg = rtl_read_byte(rtlpriv, REG_TDECTRL+2); + count = 0; + while (!(bcnvalid_reg & BIT(0)) && count <20){ + count++; + udelay(10); + bcnvalid_reg = rtl_read_byte(rtlpriv, REG_TDECTRL+2); + } + dlbcn_count++; + } while (!(bcnvalid_reg & BIT(0)) && dlbcn_count <5); + + if (bcnvalid_reg & BIT(0)) + rtl_write_byte(rtlpriv, REG_TDECTRL+2, BIT(0)); + + _rtl8821ae_set_bcn_ctrl_reg(hw, BIT(3), 0); + _rtl8821ae_set_bcn_ctrl_reg(hw, 0, BIT(4)); + + if (b_recover) { + rtl_write_byte(rtlpriv, + REG_FWHW_TXQ_CTRL + 2, + tmp_reg422); + } + + rtl_write_byte(rtlpriv, REG_CR + 1, + (tmp_regcr & ~(BIT(0)))); + } + rtl8821ae_set_fw_joinbss_report_cmd(hw, (*(u8 *) val)); + + break; + } + case HW_VAR_H2C_FW_P2P_PS_OFFLOAD:{ + rtl8821ae_set_p2p_ps_offload_cmd(hw, (*(u8 *) val)); + break; + } + + case HW_VAR_AID:{ + u16 u2btmp; + u2btmp = rtl_read_word(rtlpriv, REG_BCN_PSR_RPT); + u2btmp &= 0xC000; + rtl_write_word(rtlpriv, REG_BCN_PSR_RPT, (u2btmp | + mac->assoc_id)); + + break; + } + case HW_VAR_CORRECT_TSF:{ + u8 btype_ibss = ((u8 *) (val))[0]; + + if (btype_ibss == true) + _rtl8821ae_stop_tx_beacon(hw); + + _rtl8821ae_set_bcn_ctrl_reg(hw, 0, BIT(3)); + + rtl_write_dword(rtlpriv, REG_TSFTR, + (u32) (mac->tsf & 0xffffffff)); + rtl_write_dword(rtlpriv, REG_TSFTR + 4, + (u32) ((mac->tsf >> 32) & 0xffffffff)); + + _rtl8821ae_set_bcn_ctrl_reg(hw, BIT(3), 0); + + if (btype_ibss == true) + _rtl8821ae_resume_tx_beacon(hw); + + break; + + } + case HW_VAR_NAV_UPPER: { + u32 us_nav_upper = ((u32)*val); + + if(us_nav_upper > HAL_92C_NAV_UPPER_UNIT * 0xFF) + { + RT_TRACE(COMP_INIT , DBG_WARNING, + ("The setting value (0x%08X us) of NAV_UPPER" + " is larger than (%d * 0xFF)!!!\n", + us_nav_upper, HAL_92C_NAV_UPPER_UNIT)); + break; + } + rtl_write_byte(rtlpriv, REG_NAV_UPPER, + ((u8)((us_nav_upper + HAL_92C_NAV_UPPER_UNIT - 1) / HAL_92C_NAV_UPPER_UNIT))); + break; + } + case HW_VAR_KEEP_ALIVE: { + u8 array[2]; + array[0] = 0xff; + array[1] = *((u8 *)val); + rtl8821ae_fill_h2c_cmd(hw, H2C_8821AE_KEEP_ALIVE_CTRL, 2, array); + } + default: + RT_TRACE(COMP_ERR, DBG_EMERG, ("switch case " + "not process %x\n",variable)); + break; + } +} + +static bool _rtl8821ae_llt_write(struct ieee80211_hw *hw, u32 address, u32 data) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + bool status = true; + long count = 0; + u32 value = _LLT_INIT_ADDR(address) | + _LLT_INIT_DATA(data) | _LLT_OP(_LLT_WRITE_ACCESS); + + rtl_write_dword(rtlpriv, REG_LLT_INIT, value); + + do { + value = rtl_read_dword(rtlpriv, REG_LLT_INIT); + if (_LLT_NO_ACTIVE == _LLT_OP_VALUE(value)) + break; + + if (count > POLLING_LLT_THRESHOLD) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("Failed to polling write LLT done at " + "address %d!\n", address)); + status = false; + break; + } + } while (++count); + + return status; +} + +static bool _rtl8821ae_llt_table_init(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + unsigned short i; + u8 txpktbuf_bndy; + u8 maxPage; + bool status; + + maxPage = 255; + txpktbuf_bndy = 0xF8; + + + rtl_write_byte(rtlpriv, REG_TRXFF_BNDY, txpktbuf_bndy); + rtl_write_word(rtlpriv, REG_TRXFF_BNDY + 2, MAX_RX_DMA_BUFFER_SIZE - 1); + + rtl_write_byte(rtlpriv, REG_TDECTRL + 1, txpktbuf_bndy); + + rtl_write_byte(rtlpriv, REG_TXPKTBUF_BCNQ_BDNY, txpktbuf_bndy); + rtl_write_byte(rtlpriv, REG_TXPKTBUF_MGQ_BDNY, txpktbuf_bndy); + + rtl_write_byte(rtlpriv, REG_PBP, 0x31); + rtl_write_byte(rtlpriv, REG_RX_DRVINFO_SZ, 0x4); + + for (i = 0; i < (txpktbuf_bndy - 1); i++) { + status = _rtl8821ae_llt_write(hw, i, i + 1); + if (true != status) + return status; + } + + status = _rtl8821ae_llt_write(hw, (txpktbuf_bndy - 1), 0xFF); + if (true != status) + return status; + + for (i = txpktbuf_bndy; i < maxPage; i++) { + status = _rtl8821ae_llt_write(hw, i, (i + 1)); + if (true != status) + return status; + } + + status = _rtl8821ae_llt_write(hw, maxPage, txpktbuf_bndy); + if (true != status) + return status; + + rtl_write_dword(rtlpriv, REG_RQPN, 0x80e70808); + rtl_write_byte(rtlpriv, REG_RQPN_NPQ, 0x00); + + return true; +} + +static void _rtl8821ae_gen_refresh_led_state(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_led *pLed0 = &(pcipriv->ledctl.sw_led0); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + + if (rtlpriv->rtlhal.up_first_time) + return; + + if (ppsc->rfoff_reason == RF_CHANGE_BY_IPS) + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + rtl8812ae_sw_led_on(hw, pLed0); + else + rtl8821ae_sw_led_on(hw, pLed0); + else if (ppsc->rfoff_reason == RF_CHANGE_BY_INIT) + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + rtl8812ae_sw_led_on(hw, pLed0); + else + rtl8821ae_sw_led_on(hw, pLed0); + else + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + rtl8812ae_sw_led_off(hw, pLed0); + else + rtl8821ae_sw_led_off(hw, pLed0); +} + +static bool _rtl8821ae_init_mac(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + + u8 bytetmp = 0; + u16 wordtmp = 0; + bool b_mac_func_enable = rtlhal->b_mac_func_enable; + + rtl_write_byte(rtlpriv, REG_RSV_CTRL, 0x00); + + /*Auto Power Down to CHIP-off State*/ + bytetmp = rtl_read_byte(rtlpriv, REG_APS_FSMCO + 1) & (~BIT(7)); + rtl_write_byte(rtlpriv, REG_APS_FSMCO + 1, bytetmp); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) { + /* HW Power on sequence*/ + if(!rtl_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, + PWR_INTF_PCI_MSK, RTL8812_NIC_ENABLE_FLOW)) { + RT_TRACE(COMP_INIT,DBG_LOUD,("init 8812 MAC Fail as power on failure\n")); + return false; + } + } else { + /* HW Power on sequence */ + if (!rtl_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_A_MSK, PWR_FAB_ALL_MSK, + PWR_INTF_PCI_MSK, RTL8821A_NIC_ENABLE_FLOW)){ + RT_TRACE(COMP_INIT,DBG_LOUD,("init 8821 MAC Fail as power on failure\n")); + return false; + } + } + + bytetmp = rtl_read_byte(rtlpriv, REG_APS_FSMCO) | BIT(4); + rtl_write_byte(rtlpriv, REG_APS_FSMCO, bytetmp); + + bytetmp = rtl_read_byte(rtlpriv, REG_CR); + bytetmp = 0xff; + rtl_write_byte(rtlpriv, REG_CR, bytetmp); + mdelay(2); + + bytetmp |= 0x7f; + rtl_write_byte(rtlpriv, REG_HWSEQ_CTRL, bytetmp); + mdelay(2); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) { + bytetmp = rtl_read_byte(rtlpriv, REG_SYS_CFG + 3); + if (bytetmp & BIT(0)) { + bytetmp = rtl_read_byte(rtlpriv, 0x7c); + bytetmp |= BIT(6); + rtl_write_byte(rtlpriv, 0x7c, bytetmp); + } + } + + bytetmp = rtl_read_byte(rtlpriv, REG_GPIO_MUXCFG + 1); + bytetmp &= ~BIT(4); + rtl_write_byte(rtlpriv, REG_GPIO_MUXCFG + 1, bytetmp); + + rtl_write_word(rtlpriv, REG_CR, 0x2ff); + + if (!b_mac_func_enable) { + if (!_rtl8821ae_llt_table_init(hw)) + return false; + } + + rtl_write_dword(rtlpriv, REG_HISR, 0xffffffff); + rtl_write_dword(rtlpriv, REG_HISRE, 0xffffffff); + + /* Enable FW Beamformer Interrupt */ + bytetmp = rtl_read_byte(rtlpriv, REG_FWIMR + 3); + rtl_write_byte(rtlpriv, REG_FWIMR + 3, bytetmp | BIT(6)); + + wordtmp = rtl_read_word(rtlpriv, REG_TRXDMA_CTRL); + wordtmp &= 0xf; + wordtmp |= 0xF5B1; + rtl_write_word(rtlpriv, REG_TRXDMA_CTRL, wordtmp); + + rtl_write_byte(rtlpriv, REG_FWHW_TXQ_CTRL + 1, 0x1F); + rtl_write_dword(rtlpriv, REG_RCR, rtlpci->receive_config); + rtl_write_word(rtlpriv, REG_RXFLTMAP2, 0xFFFF); + /*low address*/ + rtl_write_dword(rtlpriv, REG_BCNQ_DESA, + rtlpci->tx_ring[BEACON_QUEUE].dma & DMA_BIT_MASK(32)); + rtl_write_dword(rtlpriv, REG_MGQ_DESA, + rtlpci->tx_ring[MGNT_QUEUE].dma & DMA_BIT_MASK(32)); + rtl_write_dword(rtlpriv, REG_VOQ_DESA, + rtlpci->tx_ring[VO_QUEUE].dma & DMA_BIT_MASK(32)); + rtl_write_dword(rtlpriv, REG_VIQ_DESA, + rtlpci->tx_ring[VI_QUEUE].dma & DMA_BIT_MASK(32)); + rtl_write_dword(rtlpriv, REG_BEQ_DESA, + rtlpci->tx_ring[BE_QUEUE].dma & DMA_BIT_MASK(32)); + rtl_write_dword(rtlpriv, REG_BKQ_DESA, + rtlpci->tx_ring[BK_QUEUE].dma & DMA_BIT_MASK(32)); + rtl_write_dword(rtlpriv, REG_HQ_DESA, + rtlpci->tx_ring[HIGH_QUEUE].dma & DMA_BIT_MASK(32)); + rtl_write_dword(rtlpriv, REG_RX_DESA, + rtlpci->rx_ring[RX_MPDU_QUEUE].dma & DMA_BIT_MASK(32)); + + rtl_write_byte(rtlpriv, REG_PCIE_CTRL_REG + 3, 0x77); + + rtl_write_dword(rtlpriv, REG_INT_MIG, 0); + + rtl_write_byte(rtlpriv, REG_SECONDARY_CCA_CTRL, 0x3); + _rtl8821ae_gen_refresh_led_state(hw); + + return true; +} + +static void _rtl8821ae_hw_configure(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + u32 reg_rrsr; + + reg_rrsr = RATE_ALL_CCK | RATE_ALL_OFDM_AG; + + rtl_write_dword(rtlpriv, REG_RRSR, reg_rrsr); + /* ARFB table 9 for 11ac 5G 2SS */ + rtl_write_dword(rtlpriv, REG_ARFR0 + 4, 0xfffff000); + /* ARFB table 10 for 11ac 5G 1SS */ + rtl_write_dword(rtlpriv, REG_ARFR1 + 4, 0x003ff000); + /* ARFB table 11 for 11ac 24G 1SS */ + rtl_write_dword(rtlpriv, REG_ARFR2, 0x00000015); + rtl_write_dword(rtlpriv, REG_ARFR2 + 4, 0x003ff000); + /* ARFB table 12 for 11ac 24G 1SS */ + rtl_write_dword(rtlpriv, REG_ARFR3, 0x00000015); + rtl_write_dword(rtlpriv, REG_ARFR3 + 4, 0xffcff000); + /* 0x420[7] = 0 , enable retry AMPDU in new AMPD not singal MPDU. */ + rtl_write_word(rtlpriv, REG_FWHW_TXQ_CTRL, 0x1F00); + rtl_write_byte(rtlpriv, REG_AMPDU_MAX_TIME, 0x70); + + /*Set retry limit*/ + rtl_write_word(rtlpriv, REG_RL, 0x0707); + + + /* Set Data / Response auto rate fallack retry count*/ + rtl_write_dword(rtlpriv, REG_DARFRC, 0x01000000); + rtl_write_dword(rtlpriv, REG_DARFRC + 4, 0x07060504); + rtl_write_dword(rtlpriv, REG_RARFRC, 0x01000000); + rtl_write_dword(rtlpriv, REG_RARFRC + 4, 0x07060504); + + rtlpci->reg_bcn_ctrl_val = 0x1d; + rtl_write_byte(rtlpriv, REG_BCN_CTRL, rtlpci->reg_bcn_ctrl_val); + + /* TBTT prohibit hold time. Suggested by designer TimChen. */ + rtl_write_byte(rtlpriv, REG_TBTT_PROHIBIT + 1,0xff); // 8 ms + + /* AGGR_BK_TIME Reg51A 0x16 */ + rtl_write_word(rtlpriv, REG_NAV_PROT_LEN, 0x0040); + + /*For Rx TP. Suggested by SD1 Richard. Added by tynli. 2010.04.12.*/ + rtl_write_dword(rtlpriv, REG_FAST_EDCA_CTRL, 0x03086666); + + rtl_write_byte(rtlpriv, REG_HT_SINGLE_AMPDU, 0x80); + rtl_write_byte(rtlpriv, REG_RX_PKT_LIMIT, 0x20); + rtl_write_word(rtlpriv, REG_MAX_AGGR_NUM, 0x1F1F); +} + +static u16 _rtl8821ae_mdio_read(struct rtl_priv *rtlpriv, u8 addr) +{ + u16 ret = 0; + u8 tmp = 0, count = 0; + + rtl_write_byte(rtlpriv, REG_MDIO_CTL, addr | BIT(6)); + tmp = rtl_read_byte(rtlpriv, REG_MDIO_CTL) & BIT(6) ; + count = 0; + while (tmp && count < 20) { + udelay(10); + tmp = rtl_read_byte(rtlpriv, REG_MDIO_CTL) & BIT(6); + count++; + } + if (0 == tmp) + ret = rtl_read_word(rtlpriv, REG_MDIO_RDATA); + + return ret; +} + +void _rtl8821ae_mdio_write(struct rtl_priv *rtlpriv, u8 addr, u16 data) +{ + u8 tmp = 0, count = 0; + + rtl_write_word(rtlpriv, REG_MDIO_WDATA, data); + rtl_write_byte(rtlpriv, REG_MDIO_CTL, addr | BIT(5)); + tmp = rtl_read_byte(rtlpriv, REG_MDIO_CTL) & BIT(5) ; + count = 0; + while (tmp && count < 20) { + udelay(10); + tmp = rtl_read_byte(rtlpriv, REG_MDIO_CTL) & BIT(5); + count++; + } +} + +static u8 _rtl8821ae_dbi_read(struct rtl_priv *rtlpriv, u16 addr) +{ + u16 read_addr = addr & 0xfffc; + u8 tmp = 0, count = 0, ret = 0; + + rtl_write_word(rtlpriv, REG_DBI_ADDR, read_addr); + rtl_write_byte(rtlpriv, REG_DBI_FLAG, 0x2); + tmp = rtl_read_byte(rtlpriv, REG_DBI_FLAG); + count = 0; + while (tmp && count < 20) { + udelay(10); + tmp = rtl_read_byte(rtlpriv, REG_DBI_FLAG); + count++; + } + if (0 == tmp) { + read_addr = REG_DBI_RDATA + addr % 4; + ret = rtl_read_word(rtlpriv, read_addr); + } + return ret; +} + +void _rtl8821ae_dbi_write(struct rtl_priv *rtlpriv, u16 addr, u8 data) +{ + u8 tmp = 0, count = 0; + u16 wrtie_addr, remainder = addr % 4; + + wrtie_addr = REG_DBI_WDATA + remainder; + rtl_write_byte(rtlpriv, wrtie_addr, data); + + wrtie_addr = (addr & 0xfffc) | (BIT(0) << (remainder + 12)); + rtl_write_word(rtlpriv, REG_DBI_ADDR, wrtie_addr); + + rtl_write_byte(rtlpriv, REG_DBI_FLAG, 0x1); + + tmp = rtl_read_byte(rtlpriv, REG_DBI_FLAG); + count = 0; + while (tmp && count < 20) { + udelay(10); + tmp = rtl_read_byte(rtlpriv, REG_DBI_FLAG); + count++; + } + +} + +static void _rtl8821ae_enable_aspm_back_door(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 tmp; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) { + if (_rtl8821ae_mdio_read(rtlpriv, 0x04) != 0x8544) + _rtl8821ae_mdio_write(rtlpriv, 0x04, 0x8544); + + if (_rtl8821ae_mdio_read(rtlpriv, 0x0b) != 0x0070) + _rtl8821ae_mdio_write(rtlpriv, 0x0b, 0x0070); + } + + tmp = _rtl8821ae_dbi_read(rtlpriv, 0x70f); + _rtl8821ae_dbi_write(rtlpriv, 0x70f, tmp | BIT(7)); + + tmp = _rtl8821ae_dbi_read(rtlpriv, 0x719); + _rtl8821ae_dbi_write(rtlpriv, 0x719, tmp | BIT(3) | BIT(4)); + + if(rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + { + tmp = _rtl8821ae_dbi_read(rtlpriv, 0x718); + _rtl8821ae_dbi_write(rtlpriv, 0x718, tmp|BIT(4)); + } +} + +void rtl8821ae_enable_hw_security_config(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 sec_reg_value; + u8 tmp; + + RT_TRACE(COMP_INIT, DBG_DMESG, + ("PairwiseEncAlgorithm = %d GroupEncAlgorithm = %d\n", + rtlpriv->sec.pairwise_enc_algorithm, + rtlpriv->sec.group_enc_algorithm)); + + if (rtlpriv->cfg->mod_params->sw_crypto || rtlpriv->sec.use_sw_sec) { + RT_TRACE(COMP_SEC, DBG_DMESG, ("not open hw encryption\n")); + return; + } + + sec_reg_value = SCR_TxEncEnable | SCR_RxDecEnable; + + if (rtlpriv->sec.use_defaultkey) { + sec_reg_value |= SCR_TxUseDK; + sec_reg_value |= SCR_RxUseDK; + } + + sec_reg_value |= (SCR_RXBCUSEDK | SCR_TXBCUSEDK); + + tmp = rtl_read_byte(rtlpriv, REG_CR + 1); + rtl_write_byte(rtlpriv, REG_CR + 1, tmp | BIT(1)); + + RT_TRACE(COMP_SEC, DBG_DMESG, + ("The SECR-value %x \n", sec_reg_value)); + + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_WPA_CONFIG, &sec_reg_value); + +} + +#if 0 +bool _rtl8821ae_check_pcie_dma_hang(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 tmp; + tmp = rtl_read_byte(rtlpriv, REG_DBI_CTRL+3); + if (!(tmp&BIT(2))) { + rtl_write_byte(rtlpriv, REG_DBI_CTRL+3, tmp|BIT(2)); + mdelay(100); + } + + tmp = rtl_read_byte(rtlpriv, REG_DBI_CTRL+3); + if (tmp&BIT(0) || tmp&BIT(1)) { + RT_TRACE(COMP_INIT, DBG_LOUD, + ("rtl8821ae_check_pcie_dma_hang(): TRUE! Reset PCIE DMA!\n")); + return true; + } else { + return false; + } +} + +void _rtl8821ae_reset_pcie_interface_dma(struct ieee80211_hw *hw, + bool mac_power_on, bool watch_dog) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 tmp; + bool release_mac_rx_pause; + u8 backup_pcie_dma_pause; + + RT_TRACE(COMP_INIT, DBG_LOUD, ("_rtl8821ae_reset_pcie_interface_dma()\n")); + + tmp = rtl_read_byte(rtlpriv, REG_RSV_CTRL); + tmp &= ~BIT(1); + rtl_write_byte(rtlpriv, REG_RSV_CTRL, tmp); + tmp = rtl_read_byte(rtlpriv, REG_PMC_DBG_CTRL2); + tmp |= BIT2; + rtl_write_byte(rtlpriv, REG_PMC_DBG_CTRL2, tmp); + + tmp = rtl_read_byte(rtlpriv, REG_RXDMA_CONTROL); + if (tmp & BIT(2)) { + release_mac_rx_pause = false; + } else { + rtl_write_byte(rtlpriv, REG_RXDMA_CONTROL, tmp | BIT(2)); + release_mac_rx_pause = true; + } + backup_pcie_dma_pause = rtl_read_byte(rtlpriv, REG_PCIE_CTRL_REG+1); + if (backup_pcie_dma_pause != 0xFF) + rtl_write_byte(rtlpriv, REG_PCIE_CTRL_REG+1, 0xFF); + + if (mac_power_on) + rtl_write_byte(rtlpriv, REG_CR, 0); + + tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN+1); + tmp &= ~BIT(0); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN+1, tmp); + + tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN+1); + tmp |= ~BIT(0); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN+1, tmp); + + if (mac_power_on) + rtl_write_byte(rtlpriv, REG_CR, 0xFF); + + tmp = rtl_read_byte(rtlpriv, REG_MAC_PHY_CTRL_NORMAL+2); + tmp |= BIT1; + rtl_write_byte(rtlpriv, REG_MAC_PHY_CTRL_NORMAL+2, tmp); + + if (watch_dog) { + u32 rqpn = 0; + u32 rqpn_npq = 0; + u8 tx_page_boundary = _RQPN_Init_8812E(Adapter, &rqpn_npq, &rqpn); + + if(LLT_table_init_8812(Adapter, TX_PAGE_BOUNDARY, RQPN, RQPN_NPQ) == RT_STATUS_FAILURE) + return false; + + PlatformAcquireSpinLock(Adapter, RT_RX_SPINLOCK); + PlatformAcquireSpinLock(Adapter, RT_TX_SPINLOCK); + + // <1> Reset Tx descriptor + Adapter->HalFunc.ResetTxDescHandler(Adapter,Adapter->NumTxDesc); + + // <2> Reset Rx descriptor + Adapter->HalFunc.ResetRxDescHandler(Adapter,Adapter->NumRxDesc); + + // <3> Reset RFDs + FreeRFDs( Adapter, TRUE); + + // <4> Reset TCBs + FreeTCBs( Adapter, TRUE); + + // We should set all Rx desc own bit to 1 to prevent from RDU after enable Rx DMA. 2013.02.18, by tynli. + PrepareAllRxDescBuffer(Adapter); + + PlatformReleaseSpinLock(Adapter, RT_TX_SPINLOCK); + PlatformReleaseSpinLock(Adapter, RT_RX_SPINLOCK); + + // + // Initialize TRx DMA address. + // + // Because set 0x100 to 0x0 will cause the Rx descriptor address 0x340 be cleared to zero on 88EE, + // we should re-initialize Rx desc. address before enable DMA. 2012.11.07. by tynli. + InitTRxDescHwAddress8812AE(Adapter); + } + + // In MAC power on state, BB and RF maybe in ON state, if we release TRx DMA here + // it will cause packets to be started to Tx/Rx, so we release Tx/Rx DMA later. + if(!bInMACPowerOn || bInWatchDog) + { + // 8. release TRX DMA + //write 0x284 bit[18] = 1'b0 + //write 0x301 = 0x00 + if(bReleaseMACRxPause) + { + u1Tmp = PlatformEFIORead1Byte(Adapter, REG_RXDMA_CONTROL); + PlatformEFIOWrite1Byte(Adapter, REG_RXDMA_CONTROL, (u1Tmp&~BIT2)); + } + PlatformEFIOWrite1Byte(Adapter, REG_PCIE_CTRL_REG+1, BackUpPcieDMAPause); + } + + if(IS_HARDWARE_TYPE_8821E(Adapter)) + { + //9. lock system register + // write 0xCC bit[2] = 1'b0 + u1Tmp = PlatformEFIORead1Byte(Adapter, REG_PMC_DBG_CTRL2_8723B); + u1Tmp &= ~(BIT2); + PlatformEFIOWrite1Byte(Adapter, REG_PMC_DBG_CTRL2_8723B, u1Tmp); + } + + return RT_STATUS_SUCCESS; +} +#endif + +// Static MacID Mapping (cf. Used in MacIdDoStaticMapping) ---------- +#define MAC_ID_STATIC_FOR_DEFAULT_PORT 0 +#define MAC_ID_STATIC_FOR_BROADCAST_MULTICAST 1 +#define MAC_ID_STATIC_FOR_BT_CLIENT_START 2 +#define MAC_ID_STATIC_FOR_BT_CLIENT_END 3 +// ----------------------------------------------------------- + +void rtl8821ae_macid_initialize_mediastatus(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 media_rpt[4] = {RT_MEDIA_CONNECT, 1, \ + MAC_ID_STATIC_FOR_BROADCAST_MULTICAST, \ + MAC_ID_STATIC_FOR_BT_CLIENT_END}; + + rtlpriv->cfg->ops->set_hw_reg(hw, \ + HW_VAR_H2C_FW_MEDIASTATUSRPT, media_rpt); + + RT_TRACE(COMP_INIT,DBG_LOUD, \ + ("Initialize MacId media status: from %d to %d\n", \ + MAC_ID_STATIC_FOR_BROADCAST_MULTICAST, \ + MAC_ID_STATIC_FOR_BT_CLIENT_END)); +} + +int rtl8821ae_hw_init(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + bool rtstatus = true; + int err; + u8 tmp_u1b; + u32 nav_upper = WIFI_NAV_UPPER_US; + + rtlpriv->rtlhal.being_init_adapter = true; + rtlpriv->intf_ops->disable_aspm(hw); + + /*YP wowlan not considered*/ + + tmp_u1b = rtl_read_byte(rtlpriv, REG_CR); + if (tmp_u1b!=0 && tmp_u1b != 0xEA) { + rtlhal->b_mac_func_enable = true; + RT_TRACE(COMP_INIT,DBG_LOUD,(" MAC has already power on.\n")); + } else { + rtlhal->b_mac_func_enable = false; + rtlhal->fw_ps_state = FW_PS_STATE_ALL_ON_8821AE; + } + +/* if (_rtl8821ae_check_pcie_dma_hang(hw)) { + _rtl8821ae_reset_pcie_interface_dma(hw,rtlhal->b_mac_func_enable,false); + rtlhal->b_mac_func_enable = false; + } */ + + rtstatus = _rtl8821ae_init_mac(hw); + if (rtstatus != true) { + RT_TRACE(COMP_ERR, DBG_EMERG, ("Init MAC failed\n")); + err = 1; + return err; + } + + tmp_u1b = rtl_read_byte(rtlpriv, REG_SYS_CFG); + tmp_u1b &= 0x7F; + rtl_write_byte(rtlpriv, REG_SYS_CFG, tmp_u1b); + + err = rtl8821ae_download_fw(hw, false); + if (err) { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("Failed to download FW. Init HW " + "without FW now..\n")); + err = 1; + rtlhal->bfw_ready = false; + return err; + } else { + rtlhal->bfw_ready = true; + } + rtlhal->fw_ps_state = FW_PS_STATE_ALL_ON_8821AE; + rtlhal->bfw_clk_change_in_progress = false; + rtlhal->ballow_sw_to_change_hwclc = false; + rtlhal->last_hmeboxnum = 0; + + /*SIC_Init(Adapter); + if(pHalData->AMPDUBurstMode) + PlatformEFIOWrite1Byte(Adapter,REG_AMPDU_BURST_MODE_8812, 0x7F);*/ + + rtl8821ae_phy_mac_config(hw); + /* because last function modify RCR, so we update + * rcr var here, or TP will unstable for receive_config + * is wrong, RX RCR_ACRC32 will cause TP unstabel & Rx + * RCR_APP_ICV will cause mac80211 unassoc for cisco 1252 + rtlpci->receive_config = rtl_read_dword(rtlpriv, REG_RCR); + rtlpci->receive_config &= ~(RCR_ACRC32 | RCR_AICV); + rtl_write_dword(rtlpriv, REG_RCR, rtlpci->receive_config);*/ + rtl8821ae_phy_bb_config(hw); + + rtl8821ae_phy_rf_config(hw); + + _rtl8821ae_hw_configure(hw); + + rtl8821ae_phy_switch_wirelessband(hw, BAND_ON_2_4G); + + /*set wireless mode*/ + + rtlhal->b_mac_func_enable = true; + + rtl_cam_reset_all_entry(hw); + + rtl8821ae_enable_hw_security_config(hw); + + ppsc->rfpwr_state = ERFON; + + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_ETHER_ADDR, mac->mac_addr); + _rtl8821ae_enable_aspm_back_door(hw); + rtlpriv->intf_ops->enable_aspm(hw); + + //rtl8821ae_bt_hw_init(hw); + rtlpriv->rtlhal.being_init_adapter = false; + + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_NAV_UPPER, (u8 *)&nav_upper); + + //rtl8821ae_dm_check_txpower_tracking(hw); + //rtl8821ae_phy_lc_calibrate(hw); + + /* Release Rx DMA*/ + tmp_u1b = rtl_read_byte(rtlpriv, REG_RXDMA_CONTROL); + if (tmp_u1b & BIT(2)) { + /* Release Rx DMA if needed*/ + tmp_u1b &= ~BIT(2); + rtl_write_byte(rtlpriv, REG_RXDMA_CONTROL, tmp_u1b); + } + + /* Release Tx/Rx PCIE DMA if*/ + rtl_write_byte(rtlpriv, REG_PCIE_CTRL_REG + 1, 0); + + rtl8821ae_dm_init(hw); + rtl8821ae_macid_initialize_mediastatus(hw); + + RT_TRACE(COMP_INIT, DBG_LOUD, ("rtl8821ae_hw_init() <====\n")); + return err; +} + +static enum version_8821ae _rtl8821ae_read_chip_version(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + enum version_8821ae version = VERSION_UNKNOWN; + u32 value32; + + value32 = rtl_read_dword(rtlpriv, REG_SYS_CFG1); + RT_TRACE(COMP_INIT, DBG_LOUD, ("ReadChipVersion8812A 0xF0 = 0x%x \n", value32)); + + + + if(rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + rtlphy->rf_type = RF_2T2R; + else if(rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) + rtlphy->rf_type = RF_1T1R; + + RT_TRACE(COMP_INIT, DBG_LOUD, ("RF_Type is %x!!\n", rtlphy->rf_type)); + + + if (value32 & TRP_VAUX_EN) + { + if(rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + { + if(rtlphy->rf_type == RF_2T2R) + version = VERSION_TEST_CHIP_2T2R_8812; + else + version = VERSION_TEST_CHIP_1T1R_8812; + } + else + version = VERSION_TEST_CHIP_8821; + } else { + if(rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + { + u32 rtl_id = ((value32 & CHIP_VER_RTL_MASK) >> 12) +1 ; + + if(rtlphy->rf_type == RF_2T2R) + version = (enum version_8821ae)(CHIP_8812 | NORMAL_CHIP | RF_TYPE_2T2R); + else + version = (enum version_8821ae)(CHIP_8812 | NORMAL_CHIP); + + version = (enum version_8821ae)(version| (rtl_id << 12)); + } + else if(rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) + { + u32 rtl_id = value32 & CHIP_VER_RTL_MASK; + + version = (enum version_8821ae)(CHIP_8821 | NORMAL_CHIP | rtl_id); + } + } + + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Chip RF Type: %s\n", (rtlphy->rf_type == RF_2T2R) ? + "RF_2T2R" : "RF_1T1R")); + + if(rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) + { + /*WL_HWROF_EN.*/ + value32 = rtl_read_dword(rtlpriv, REG_MULTI_FUNC_CTRL); + rtlphy->hw_rof_enable= ((value32 & WL_HWROF_EN) ? 1 : 0); + } + + switch(version) + { + case VERSION_TEST_CHIP_1T1R_8812: + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Chip Version ID: VERSION_TEST_CHIP_1T1R_8812.\n")); + break; + case VERSION_TEST_CHIP_2T2R_8812: + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Chip Version ID: VERSION_TEST_CHIP_2T2R_8812.\n")); + break; + case VERSION_NORMAL_TSMC_CHIP_1T1R_8812: + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Chip Version ID: VERSION_NORMAL_TSMC_CHIP_1T1R_8812.\n")); + break; + case VERSION_NORMAL_TSMC_CHIP_2T2R_8812: + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Chip Version ID: VERSION_NORMAL_TSMC_CHIP_2T2R_8812.\n")); + break; + case VERSION_NORMAL_TSMC_CHIP_1T1R_8812_C_CUT: + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Chip Version ID: VERSION_NORMAL_TSMC_CHIP_1T1R_8812 C CUT.\n")); + break; + case VERSION_NORMAL_TSMC_CHIP_2T2R_8812_C_CUT: + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Chip Version ID: VERSION_NORMAL_TSMC_CHIP_2T2R_8812 C CUT.\n")); + break; + case VERSION_TEST_CHIP_8821: + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Chip Version ID: VERSION_TEST_CHIP_8821.\n")); + break; + case VERSION_NORMAL_TSMC_CHIP_8821: + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Chip Version ID: VERSION_NORMAL_TSMC_CHIP_8821 A CUT.\n")); + break; + case VERSION_NORMAL_TSMC_CHIP_8821_B_CUT: + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Chip Version ID: VERSION_NORMAL_TSMC_CHIP_8821 B CUT.\n")); + break; + default: + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Chip Version ID: Unknow (0x%X).\n", version)); + break; + } + + return version; +} + +static int _rtl8821ae_set_media_status(struct ieee80211_hw *hw, + enum nl80211_iftype type) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 bt_msr = rtl_read_byte(rtlpriv, MSR); + enum led_ctl_mode ledaction = LED_CTL_NO_LINK; + bt_msr &= 0xfc; + + rtl_write_dword(rtlpriv, REG_BCN_CTRL, 0); + RT_TRACE(COMP_BEACON, DBG_LOUD, + ("clear 0x550 when set HW_VAR_MEDIA_STATUS\n")); + + if (type == NL80211_IFTYPE_UNSPECIFIED || + type == NL80211_IFTYPE_STATION) { + _rtl8821ae_stop_tx_beacon(hw); + _rtl8821ae_enable_bcn_sub_func(hw); + } else if (type == NL80211_IFTYPE_ADHOC || + type == NL80211_IFTYPE_AP) { + _rtl8821ae_resume_tx_beacon(hw); + _rtl8821ae_disable_bcn_sub_func(hw); + } else { + RT_TRACE(COMP_ERR, DBG_WARNING,("Set HW_VAR_MEDIA_STATUS: " + "No such media status(%x).\n", type)); + } + + switch (type) { + case NL80211_IFTYPE_UNSPECIFIED: + bt_msr |= MSR_NOLINK; + ledaction = LED_CTL_LINK; + RT_TRACE(COMP_INIT, DBG_TRACE, ("Set Network type to NO LINK!\n")); + break; + case NL80211_IFTYPE_ADHOC: + bt_msr |= MSR_ADHOC; + RT_TRACE(COMP_INIT, DBG_TRACE, ("Set Network type to Ad Hoc!\n")); + break; + case NL80211_IFTYPE_STATION: + bt_msr |= MSR_INFRA; + ledaction = LED_CTL_LINK; + RT_TRACE(COMP_INIT, DBG_TRACE, ("Set Network type to STA!\n")); + break; + case NL80211_IFTYPE_AP: + bt_msr |= MSR_AP; + RT_TRACE(COMP_INIT, DBG_TRACE, ("Set Network type to AP!\n")); + break; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, ("Network type %d not support!\n", type)); + return 1; + break; + + } + + rtl_write_byte(rtlpriv, (MSR), bt_msr); + rtlpriv->cfg->ops->led_control(hw, ledaction); + if ((bt_msr & 0xfc) == MSR_AP) + rtl_write_byte(rtlpriv, REG_BCNTCFG + 1, 0x00); + else + rtl_write_byte(rtlpriv, REG_BCNTCFG + 1, 0x66); + + return 0; +} + +void rtl8821ae_set_check_bssid(struct ieee80211_hw *hw, bool check_bssid) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + u32 reg_rcr = rtlpci->receive_config; + + if (rtlpriv->psc.rfpwr_state != ERFON) + return; + + if (check_bssid == true) { + reg_rcr |= (RCR_CBSSID_DATA | RCR_CBSSID_BCN); + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_RCR, + (u8 *) (®_rcr)); + _rtl8821ae_set_bcn_ctrl_reg(hw, 0, BIT(4)); + } else if (check_bssid == false) { + reg_rcr &= (~(RCR_CBSSID_DATA | RCR_CBSSID_BCN)); + _rtl8821ae_set_bcn_ctrl_reg(hw, BIT(4), 0); + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_RCR, (u8 *) (®_rcr)); + } + +} + +int rtl8821ae_set_network_type(struct ieee80211_hw *hw, enum nl80211_iftype type) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + RT_TRACE(COMP_INIT, DBG_LOUD, ("rtl8821ae_set_network_type!\n")); + + if (_rtl8821ae_set_media_status(hw, type)) + return -EOPNOTSUPP; + + if (rtlpriv->mac80211.link_state == MAC80211_LINKED) { + if (type != NL80211_IFTYPE_AP) + rtl8821ae_set_check_bssid(hw, true); + } else { + rtl8821ae_set_check_bssid(hw, false); + } + + return 0; +} + +/* don't set REG_EDCA_BE_PARAM here because mac80211 will send pkt when scan */ +void rtl8821ae_set_qos(struct ieee80211_hw *hw, int aci) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + rtl8821ae_dm_init_edca_turbo(hw); + switch (aci) { + case AC1_BK: + rtl_write_dword(rtlpriv, REG_EDCA_BK_PARAM, 0xa44f); + break; + case AC0_BE: + /* rtl_write_dword(rtlpriv, REG_EDCA_BE_PARAM, u4b_ac_param); */ + break; + case AC2_VI: + rtl_write_dword(rtlpriv, REG_EDCA_VI_PARAM, 0x5e4322); + break; + case AC3_VO: + rtl_write_dword(rtlpriv, REG_EDCA_VO_PARAM, 0x2f3222); + break; + default: + RT_ASSERT(false, ("invalid aci: %d !\n", aci)); + break; + } +} + +void rtl8821ae_enable_interrupt(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + + rtl_write_dword(rtlpriv, REG_HIMR, rtlpci->irq_mask[0] & 0xFFFFFFFF); + rtl_write_dword(rtlpriv, REG_HIMRE, rtlpci->irq_mask[1] & 0xFFFFFFFF); + rtlpci->irq_enabled = true; + /* there are some C2H CMDs have been sent before system interrupt is enabled, e.g., C2H, CPWM. + *So we need to clear all C2H events that FW has notified, otherwise FW won't schedule any commands anymore. + */ + //rtl_write_byte(rtlpriv, REG_C2HEVT_CLEAR, 0); + /*enable system interrupt*/ + rtl_write_dword(rtlpriv, REG_HSIMR, rtlpci->sys_irq_mask & 0xFFFFFFFF); +} + +void rtl8821ae_disable_interrupt(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + + rtl_write_dword(rtlpriv, REG_HIMR, IMR_DISABLED); + rtl_write_dword(rtlpriv, REG_HIMRE, IMR_DISABLED); + rtlpci->irq_enabled = false; + synchronize_irq(rtlpci->pdev->irq); +} + +static void _rtl8821ae_poweroff_adapter(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 u1b_tmp; + + rtlhal->b_mac_func_enable = false; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) { + /* Combo (PCIe + USB) Card and PCIe-MF Card */ + /* 1. Run LPS WL RFOFF flow */ + //RT_TRACE(COMP_INIT, DBG_LOUD, ("=====>CardDisableRTL8812E,RTL8821A_NIC_LPS_ENTER_FLOW\n")); + rtl_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, + PWR_INTF_PCI_MSK, RTL8821A_NIC_LPS_ENTER_FLOW); + } + /* 2. 0x1F[7:0] = 0 */ + /* turn off RF */ + //rtl_write_byte(rtlpriv, REG_RF_CTRL, 0x00); + if ((rtl_read_byte(rtlpriv, REG_MCUFWDL) & BIT(7)) && + rtlhal->bfw_ready ) { + rtl8821ae_firmware_selfreset(hw); + } + + /* Reset MCU. Suggested by Filen. */ + u1b_tmp = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN+1); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN+1, (u1b_tmp & (~BIT(2)))); + + /* g. MCUFWDL 0x80[1:0]=0 */ + /* reset MCU ready status */ + rtl_write_byte(rtlpriv, REG_MCUFWDL, 0x00); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) { + /* HW card disable configuration. */ + rtl_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, + PWR_INTF_PCI_MSK, RTL8821A_NIC_DISABLE_FLOW); + } else { + /* HW card disable configuration. */ + rtl_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, + PWR_INTF_PCI_MSK, RTL8812_NIC_DISABLE_FLOW); + } + + /* Reset MCU IO Wrapper */ + u1b_tmp = rtl_read_byte(rtlpriv, REG_RSV_CTRL + 1); + rtl_write_byte(rtlpriv, REG_RSV_CTRL + 1, (u1b_tmp & (~BIT(0)))); + u1b_tmp = rtl_read_byte(rtlpriv, REG_RSV_CTRL + 1); + rtl_write_byte(rtlpriv, REG_RSV_CTRL + 1, u1b_tmp | BIT(0)); + + /* 7. RSV_CTRL 0x1C[7:0] = 0x0E */ + /* lock ISO/CLK/Power control register */ + rtl_write_byte(rtlpriv, REG_RSV_CTRL, 0x0e); +} + +void rtl8821ae_card_disable(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + enum nl80211_iftype opmode; + + RT_TRACE(COMP_INIT, DBG_LOUD, + ("rtl8821ae_card_disable.\n")); + + mac->link_state = MAC80211_NOLINK; + opmode = NL80211_IFTYPE_UNSPECIFIED; + _rtl8821ae_set_media_status(hw, opmode); + if (rtlpriv->rtlhal.driver_is_goingto_unload || + ppsc->rfoff_reason > RF_CHANGE_BY_PS) + rtlpriv->cfg->ops->led_control(hw, LED_CTL_POWER_OFF); + RT_SET_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_HALT_NIC); + _rtl8821ae_poweroff_adapter(hw); + + /* after power off we should do iqk again */ + rtlpriv->phy.iqk_initialized = false; +} + +void rtl8821ae_interrupt_recognized(struct ieee80211_hw *hw, + u32 *p_inta, u32 *p_intb) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + + *p_inta = rtl_read_dword(rtlpriv, ISR) & rtlpci->irq_mask[0]; + rtl_write_dword(rtlpriv, ISR, *p_inta); + + + *p_intb = rtl_read_dword(rtlpriv, REG_HISRE) & rtlpci->irq_mask[1]; + rtl_write_dword(rtlpriv, REG_HISRE, *p_intb); + +} + + +void rtl8821ae_set_beacon_related_registers(struct ieee80211_hw *hw) +{ + + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + u16 bcn_interval, atim_window; + + bcn_interval = mac->beacon_interval; + atim_window = 2; /*FIX MERGE */ + rtl8821ae_disable_interrupt(hw); + rtl_write_word(rtlpriv, REG_ATIMWND, atim_window); + rtl_write_word(rtlpriv, REG_BCN_INTERVAL, bcn_interval); + rtl_write_word(rtlpriv, REG_BCNTCFG, 0x660f); + rtl_write_byte(rtlpriv, REG_RXTSF_OFFSET_CCK, 0x18); + rtl_write_byte(rtlpriv, REG_RXTSF_OFFSET_OFDM, 0x18); + rtl_write_byte(rtlpriv, 0x606, 0x30); + rtlpci->reg_bcn_ctrl_val |= BIT(3); + rtl_write_byte(rtlpriv, REG_BCN_CTRL, (u8) rtlpci->reg_bcn_ctrl_val); + rtl8821ae_enable_interrupt(hw); +} + +void rtl8821ae_set_beacon_interval(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + u16 bcn_interval = mac->beacon_interval; + + RT_TRACE(COMP_BEACON, DBG_DMESG, + ("beacon_interval:%d\n", bcn_interval)); + rtl8821ae_disable_interrupt(hw); + rtl_write_word(rtlpriv, REG_BCN_INTERVAL, bcn_interval); + rtl8821ae_enable_interrupt(hw); +} + +void rtl8821ae_update_interrupt_mask(struct ieee80211_hw *hw, + u32 add_msr, u32 rm_msr) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + + RT_TRACE(COMP_INTR, DBG_LOUD, + ("add_msr:%x, rm_msr:%x\n", add_msr, rm_msr)); + + if (add_msr) + rtlpci->irq_mask[0] |= add_msr; + if (rm_msr) + rtlpci->irq_mask[0] &= (~rm_msr); + rtl8821ae_disable_interrupt(hw); + rtl8821ae_enable_interrupt(hw); +} + +static u8 _rtl8821ae_get_chnl_group(u8 chnl) +{ + u8 group = 0; + + if (chnl <= 14) { + if (1 <= chnl && chnl <= 2 ) + group = 0; + else if (3 <= chnl && chnl <= 5 ) + group = 1; + else if (6 <= chnl && chnl <= 8 ) + group = 2; + else if (9 <= chnl && chnl <= 11) + group = 3; + else /*if (12 <= chnl && chnl <= 14)*/ + group = 4; + } else { + if (36 <= chnl && chnl <= 42) + group = 0; + else if (44 <= chnl && chnl <= 48) + group = 1; + else if (50 <= chnl && chnl <= 58) + group = 2; + else if (60 <= chnl && chnl <= 64) + group = 3; + else if (100 <= chnl && chnl <= 106) + group = 4; + else if (108 <= chnl && chnl <= 114) + group = 5; + else if (116 <= chnl && chnl <= 122) + group = 6; + else if (124 <= chnl && chnl <= 130) + group = 7; + else if (132 <= chnl && chnl <= 138) + group = 8; + else if (140 <= chnl && chnl <= 144) + group = 9; + else if (149 <= chnl && chnl <= 155) + group = 10; + else if (157 <= chnl && chnl <= 161) + group = 11; + else if (165 <= chnl && chnl <= 171) + group = 12; + else if (173 <= chnl && chnl <= 177) + group = 13; + else + /*RT_TRACE(COMP_EFUSE,DBG_LOUD, + ("5G, Channel %d in Group not found \n",chnl));*/ + RT_ASSERT(!COMP_EFUSE, + ("5G, Channel %d in Group not found \n",chnl)); + } + return group; +} + +static void _rtl8821ae_read_power_value_fromprom(struct ieee80211_hw *hw, + struct txpower_info_2g *pwrinfo24g, + struct txpower_info_5g *pwrinfo5g, + bool autoload_fail, + u8 *hwinfo) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 rfPath, eeAddr=EEPROM_TX_PWR_INX, group,TxCount=0; + + RT_TRACE(COMP_INIT, DBG_LOUD, ("hal_ReadPowerValueFromPROM8821ae(): PROMContent[0x%x]=0x%x\n", (eeAddr+1), hwinfo[eeAddr+1])); + if (0xFF == hwinfo[eeAddr+1]) /*YJ,add,120316*/ + autoload_fail = true; + + if (autoload_fail) + { + RT_TRACE(COMP_INIT, DBG_LOUD, ("auto load fail : Use Default value!\n")); + for (rfPath = 0 ; rfPath < MAX_RF_PATH ; rfPath++) { + /*2.4G default value*/ + for (group = 0 ; group < MAX_CHNL_GROUP_24G; group++) { + pwrinfo24g->index_cck_base[rfPath][group] = 0x2D; + pwrinfo24g->index_bw40_base[rfPath][group] = 0x2D; + } + for (TxCount = 0;TxCount < MAX_TX_COUNT;TxCount++) { + if (TxCount == 0) { + pwrinfo24g->bw20_diff[rfPath][0] = 0x02; + pwrinfo24g->ofdm_diff[rfPath][0] = 0x04; + } else { + pwrinfo24g->bw20_diff[rfPath][TxCount] = 0xFE; + pwrinfo24g->bw40_diff[rfPath][TxCount] = 0xFE; + pwrinfo24g->cck_diff[rfPath][TxCount] = 0xFE; + pwrinfo24g->ofdm_diff[rfPath][TxCount] = 0xFE; + } + } + /*5G default value*/ + for (group = 0 ; group < MAX_CHNL_GROUP_5G; group++) + pwrinfo5g->index_bw40_base[rfPath][group] = 0x2A; + + for (TxCount = 0; TxCount < MAX_TX_COUNT; TxCount++) { + if (TxCount == 0) { + pwrinfo5g->ofdm_diff[rfPath][0] = 0x04; + pwrinfo5g->bw20_diff[rfPath][0] = 0x00; + pwrinfo5g->bw80_diff[rfPath][0] = 0xFE; + pwrinfo5g->bw160_diff[rfPath][0] = 0xFE; + } else { + pwrinfo5g->ofdm_diff[rfPath][0] = 0xFE; + pwrinfo5g->bw20_diff[rfPath][0] = 0xFE; + pwrinfo5g->bw40_diff[rfPath][0] = 0xFE; + pwrinfo5g->bw80_diff[rfPath][0] = 0xFE; + pwrinfo5g->bw160_diff[rfPath][0] = 0xFE; + } + } + } + return; + } + + rtl_priv(hw)->efuse.b_txpwr_fromeprom = true; + + for (rfPath = 0 ; rfPath < MAX_RF_PATH ; rfPath++) { + /*2.4G default value*/ + for (group = 0 ; group < MAX_CHNL_GROUP_24G; group++) { + pwrinfo24g->index_cck_base[rfPath][group] = hwinfo[eeAddr++]; + if (pwrinfo24g->index_cck_base[rfPath][group] == 0xFF) + pwrinfo24g->index_cck_base[rfPath][group] = 0x2D; + } + for (group = 0 ; group < MAX_CHNL_GROUP_24G - 1; group++) { + pwrinfo24g->index_bw40_base[rfPath][group] = hwinfo[eeAddr++]; + if (pwrinfo24g->index_bw40_base[rfPath][group] == 0xFF) + pwrinfo24g->index_bw40_base[rfPath][group] = 0x2D; + } + for (TxCount = 0; TxCount < MAX_TX_COUNT; TxCount ++) { + if (TxCount == 0) { + pwrinfo24g->bw40_diff[rfPath][TxCount] = 0; + if (hwinfo[eeAddr] == 0xFF) { + pwrinfo24g->bw20_diff[rfPath][TxCount] = 0x02; + } else { + pwrinfo24g->bw20_diff[rfPath][TxCount] = (hwinfo[eeAddr] & 0xf0) >> 4; + if (pwrinfo24g->bw20_diff[rfPath][TxCount] & BIT(3)) /*bit sign number to 8 bit sign number*/ + pwrinfo24g->bw20_diff[rfPath][TxCount] |= 0xF0; + } + + if (hwinfo[eeAddr] == 0xFF) { + pwrinfo24g->ofdm_diff[rfPath][TxCount] = 0x04; + } else { + pwrinfo24g->ofdm_diff[rfPath][TxCount] = (hwinfo[eeAddr] & 0x0f); + if(pwrinfo24g->ofdm_diff[rfPath][TxCount] & BIT(3)) /*bit sign number to 8 bit sign number*/ + pwrinfo24g->ofdm_diff[rfPath][TxCount] |= 0xF0; + } + pwrinfo24g->cck_diff[rfPath][TxCount] = 0; + eeAddr++; + } else { + if (hwinfo[eeAddr] == 0xFF) { + pwrinfo24g->bw40_diff[rfPath][TxCount] = 0xFE; + } else { + pwrinfo24g->bw40_diff[rfPath][TxCount] = (hwinfo[eeAddr]&0xf0) >> 4; + if (pwrinfo24g->bw40_diff[rfPath][TxCount] & BIT(3)) + pwrinfo24g->bw40_diff[rfPath][TxCount] |= 0xF0; + } + + if (hwinfo[eeAddr] == 0xFF) { + pwrinfo24g->bw20_diff[rfPath][TxCount] = 0xFE; + } else { + pwrinfo24g->bw20_diff[rfPath][TxCount] = (hwinfo[eeAddr] & 0x0f); + if (pwrinfo24g->bw20_diff[rfPath][TxCount] & BIT(3)) + pwrinfo24g->bw20_diff[rfPath][TxCount] |= 0xF0; + } + + eeAddr++; + + if (hwinfo[eeAddr] == 0xFF) { + pwrinfo24g->ofdm_diff[rfPath][TxCount] = 0xFE; + } else { + pwrinfo24g->ofdm_diff[rfPath][TxCount] = (hwinfo[eeAddr] & 0xf0) >> 4; + if(pwrinfo24g->ofdm_diff[rfPath][TxCount] & BIT(3)) + pwrinfo24g->ofdm_diff[rfPath][TxCount] |= 0xF0; + } + + if (hwinfo[eeAddr] == 0xFF) { + pwrinfo24g->cck_diff[rfPath][TxCount] = 0xFE; + } else { + pwrinfo24g->cck_diff[rfPath][TxCount] = (hwinfo[eeAddr] & 0x0f); + if(pwrinfo24g->cck_diff[rfPath][TxCount] & BIT(3)) + pwrinfo24g->cck_diff[rfPath][TxCount] |= 0xF0; + } + eeAddr++; + } + } + + /*5G default value*/ + for (group = 0 ; group < MAX_CHNL_GROUP_5G; group ++) { + pwrinfo5g->index_bw40_base[rfPath][group] = hwinfo[eeAddr++]; + if (pwrinfo5g->index_bw40_base[rfPath][group] == 0xFF) + pwrinfo5g->index_bw40_base[rfPath][group] = 0xFE; + } + + for (TxCount = 0; TxCount < MAX_TX_COUNT; TxCount++) { + if (TxCount == 0) { + pwrinfo5g->bw40_diff[rfPath][TxCount] = 0; + if (hwinfo[eeAddr] == 0xFF) { + pwrinfo5g->bw20_diff[rfPath][TxCount] = 0x0; + } else { + pwrinfo5g->bw20_diff[rfPath][0] = (hwinfo[eeAddr] & 0xf0) >> 4; + if(pwrinfo5g->bw20_diff[rfPath][TxCount] & BIT(3)) + pwrinfo5g->bw20_diff[rfPath][TxCount] |= 0xF0; + } + + if (hwinfo[eeAddr] == 0xFF) { + pwrinfo5g->ofdm_diff[rfPath][TxCount] = 0x4; + } else { + pwrinfo5g->ofdm_diff[rfPath][0] = (hwinfo[eeAddr] & 0x0f); + if(pwrinfo5g->ofdm_diff[rfPath][TxCount] & BIT(3)) + pwrinfo5g->ofdm_diff[rfPath][TxCount] |= 0xF0; + } + eeAddr++; + } else { + if (hwinfo[eeAddr] == 0xFF) { + pwrinfo5g->bw40_diff[rfPath][TxCount] = 0xFE; + } else { + pwrinfo5g->bw40_diff[rfPath][TxCount]= (hwinfo[eeAddr] & 0xf0) >> 4; + if(pwrinfo5g->bw40_diff[rfPath][TxCount] & BIT(3)) + pwrinfo5g->bw40_diff[rfPath][TxCount] |= 0xF0; + } + + if (hwinfo[eeAddr] == 0xFF) { + pwrinfo5g->bw20_diff[rfPath][TxCount] = 0xFE; + } else { + pwrinfo5g->bw20_diff[rfPath][TxCount] = (hwinfo[eeAddr] & 0x0f); + if(pwrinfo5g->bw20_diff[rfPath][TxCount] & BIT(3)) + pwrinfo5g->bw20_diff[rfPath][TxCount] |= 0xF0; + } + eeAddr++; + } + } + + if (hwinfo[eeAddr] == 0xFF) { + pwrinfo5g->ofdm_diff[rfPath][1] = 0xFE; + pwrinfo5g->ofdm_diff[rfPath][2] = 0xFE; + } else { + pwrinfo5g->ofdm_diff[rfPath][1] = (hwinfo[eeAddr] & 0xf0) >> 4; + pwrinfo5g->ofdm_diff[rfPath][2] = (hwinfo[eeAddr] & 0x0f); + } + eeAddr++; + if (hwinfo[eeAddr] == 0xFF) + pwrinfo5g->ofdm_diff[rfPath][3] = 0xFE; + else + pwrinfo5g->ofdm_diff[rfPath][3] = (hwinfo[eeAddr] & 0x0f); + + eeAddr++; + + for (TxCount = 1; TxCount < MAX_TX_COUNT; TxCount++) { + if (pwrinfo5g->ofdm_diff[rfPath][TxCount] == 0xFF) + pwrinfo5g->ofdm_diff[rfPath][TxCount] = 0xFE; + else if(pwrinfo5g->ofdm_diff[rfPath][TxCount] & BIT(3)) + pwrinfo5g->ofdm_diff[rfPath][TxCount] |= 0xF0; + } + for (TxCount = 0; TxCount < MAX_TX_COUNT; TxCount++) { + if (hwinfo[eeAddr] == 0xFF) { + pwrinfo5g->bw80_diff[rfPath][TxCount] = 0xFE; + } else { + pwrinfo5g->bw80_diff[rfPath][TxCount] = (hwinfo[eeAddr] & 0xf0) >> 4; + if(pwrinfo5g->bw80_diff[rfPath][TxCount] & BIT(3)) //4bit sign number to 8 bit sign number + pwrinfo5g->bw80_diff[rfPath][TxCount] |= 0xF0; + } + + if (hwinfo[eeAddr] == 0xFF) { + pwrinfo5g->bw160_diff[rfPath][TxCount] = 0xFE; + } else { + pwrinfo5g->bw160_diff[rfPath][TxCount]= (hwinfo[eeAddr] & 0x0f); + if(pwrinfo5g->bw160_diff[rfPath][TxCount] & BIT(3)) //4bit sign number to 8 bit sign number + pwrinfo5g->bw160_diff[rfPath][TxCount] |= 0xF0; + } + eeAddr++; + } + } +} + +static void _rtl8812ae_read_txpower_info_from_hwpg(struct ieee80211_hw *hw, + bool autoload_fail, + u8 *hwinfo) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct txpower_info_2g pwrinfo24g; + struct txpower_info_5g pwrinfo5g; + u8 channel5g[CHANNEL_MAX_NUMBER_5G] = + {36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,100,102,104,106,108,110,112, + 114,116,118,120,122,124,126,128,130,132,134,136,138,140,142,144,149,151, + 153,155,157,159,161,163,165,167,168,169,171,173,175,177}; + u8 channel5g_80m[CHANNEL_MAX_NUMBER_5G_80M] = {42, 58, 106, 122, 138, 155, 171}; + u8 rf_path, index; + u8 i; + + _rtl8821ae_read_power_value_fromprom(hw, &pwrinfo24g, &pwrinfo5g, autoload_fail, hwinfo); + + for (rf_path = 0; rf_path < 2; rf_path++) { + for (i = 0; i < CHANNEL_MAX_NUMBER_2G; i++) { + index = _rtl8821ae_get_chnl_group(i + 1); + + if (i == CHANNEL_MAX_NUMBER_2G - 1) { + rtlefuse->txpwrlevel_cck[rf_path][i] = + pwrinfo24g.index_cck_base[rf_path][5]; + rtlefuse->txpwrlevel_ht40_1s[rf_path][i] = + pwrinfo24g.index_bw40_base[rf_path][index]; + } else { + rtlefuse->txpwrlevel_cck[rf_path][i] = + pwrinfo24g.index_cck_base[rf_path][index]; + rtlefuse->txpwrlevel_ht40_1s[rf_path][i] = + pwrinfo24g.index_bw40_base[rf_path][index]; + } + } + + for (i = 0; i < CHANNEL_MAX_NUMBER_5G; i++) { + index = _rtl8821ae_get_chnl_group(channel5g[i]); + rtlefuse->txpwr_5g_bw40base[rf_path][i] = pwrinfo5g.index_bw40_base[rf_path][index]; + } + for (i = 0; i < CHANNEL_MAX_NUMBER_5G_80M; i++) { + u8 upper, lower; + index = _rtl8821ae_get_chnl_group(channel5g_80m[i]); + upper = pwrinfo5g.index_bw40_base[rf_path][index]; + lower = pwrinfo5g.index_bw40_base[rf_path][index + 1]; + + rtlefuse->txpwr_5g_bw80base[rf_path][i] = (upper + lower) / 2; + } + for (i = 0; i < MAX_TX_COUNT; i++) { + rtlefuse->txpwr_cckdiff[rf_path][i] = pwrinfo24g.cck_diff[rf_path][i]; + rtlefuse->txpwr_legacyhtdiff[rf_path][i] = pwrinfo24g.ofdm_diff[rf_path][i]; + rtlefuse->txpwr_ht20diff[rf_path][i] = pwrinfo24g.bw20_diff[rf_path][i]; + rtlefuse->txpwr_ht40diff[rf_path][i] = pwrinfo24g.bw40_diff[rf_path][i]; + + rtlefuse->txpwr_5g_ofdmdiff[rf_path][i] = pwrinfo5g.ofdm_diff[rf_path][i]; + rtlefuse->txpwr_5g_bw20diff[rf_path][i] = pwrinfo5g.bw20_diff[rf_path][i]; + rtlefuse->txpwr_5g_bw40diff[rf_path][i] = pwrinfo5g.bw40_diff[rf_path][i]; + rtlefuse->txpwr_5g_bw80diff[rf_path][i] = pwrinfo5g.bw80_diff[rf_path][i]; + } + } + + if (!autoload_fail){ + rtlefuse->eeprom_regulatory = + hwinfo[EEPROM_RF_BOARD_OPTION] & 0x07;/*bit0~2*/ + if (hwinfo[EEPROM_RF_BOARD_OPTION] == 0xFF) + rtlefuse->eeprom_regulatory = 0; + } else { + rtlefuse->eeprom_regulatory = 0; + } + + RTPRINT(rtlpriv, FINIT, INIT_TxPower, + ("eeprom_regulatory = 0x%x\n", rtlefuse->eeprom_regulatory )); +} + +static void _rtl8821ae_read_txpower_info_from_hwpg(struct ieee80211_hw *hw, + bool autoload_fail, + u8 *hwinfo) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct txpower_info_2g pwrinfo24g; + struct txpower_info_5g pwrinfo5g; + u8 channel5g[CHANNEL_MAX_NUMBER_5G] = + {36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,100,102,104,106,108,110,112, + 114,116,118,120,122,124,126,128,130,132,134,136,138,140,142,144,149,151, + 153,155,157,159,161,163,165,167,168,169,171,173,175,177}; + u8 channel5g_80m[CHANNEL_MAX_NUMBER_5G_80M] = {42, 58, 106, 122, 138, 155, 171}; + u8 rf_path, index; + u8 i; + + _rtl8821ae_read_power_value_fromprom(hw, &pwrinfo24g, &pwrinfo5g, autoload_fail, hwinfo); + + for (rf_path = 0; rf_path < 2; rf_path++) { + for (i = 0; i < CHANNEL_MAX_NUMBER_2G; i++) { + index = _rtl8821ae_get_chnl_group(i + 1); + + if (i == CHANNEL_MAX_NUMBER_2G - 1) { + rtlefuse->txpwrlevel_cck[rf_path][i] = pwrinfo24g.index_cck_base[rf_path][5]; + rtlefuse->txpwrlevel_ht40_1s[rf_path][i] = pwrinfo24g.index_bw40_base[rf_path][index]; + } else { + rtlefuse->txpwrlevel_cck[rf_path][i] = pwrinfo24g.index_cck_base[rf_path][index]; + rtlefuse->txpwrlevel_ht40_1s[rf_path][i] = pwrinfo24g.index_bw40_base[rf_path][index]; + } + } + + for (i = 0; i < CHANNEL_MAX_NUMBER_5G; i++) { + index = _rtl8821ae_get_chnl_group(channel5g[i]); + rtlefuse->txpwr_5g_bw40base[rf_path][i] = pwrinfo5g.index_bw40_base[rf_path][index]; + } + for (i = 0; i < CHANNEL_MAX_NUMBER_5G_80M; i++) { + u8 upper, lower; + index = _rtl8821ae_get_chnl_group(channel5g_80m[i]); + upper = pwrinfo5g.index_bw40_base[rf_path][index]; + lower = pwrinfo5g.index_bw40_base[rf_path][index + 1]; + + rtlefuse->txpwr_5g_bw80base[rf_path][i] = (upper + lower) / 2; + } + for (i = 0; i < MAX_TX_COUNT; i++) { + rtlefuse->txpwr_cckdiff[rf_path][i] = pwrinfo24g.cck_diff[rf_path][i]; + rtlefuse->txpwr_legacyhtdiff[rf_path][i] = pwrinfo24g.ofdm_diff[rf_path][i]; + rtlefuse->txpwr_ht20diff[rf_path][i] = pwrinfo24g.bw20_diff[rf_path][i]; + rtlefuse->txpwr_ht40diff[rf_path][i] = pwrinfo24g.bw40_diff[rf_path][i]; + + rtlefuse->txpwr_5g_ofdmdiff[rf_path][i] = pwrinfo5g.ofdm_diff[rf_path][i]; + rtlefuse->txpwr_5g_bw20diff[rf_path][i] = pwrinfo5g.bw20_diff[rf_path][i]; + rtlefuse->txpwr_5g_bw40diff[rf_path][i] = pwrinfo5g.bw40_diff[rf_path][i]; + rtlefuse->txpwr_5g_bw80diff[rf_path][i] = pwrinfo5g.bw80_diff[rf_path][i]; + } + } + + if (!autoload_fail){ + rtlefuse->eeprom_regulatory = hwinfo[EEPROM_RF_BOARD_OPTION] & 0x07;/*bit0~2*/ + if (hwinfo[EEPROM_RF_BOARD_OPTION] == 0xFF) + rtlefuse->eeprom_regulatory = 0; + } else { + rtlefuse->eeprom_regulatory = 0; + } + + RTPRINT(rtlpriv, FINIT, INIT_TxPower, + ("eeprom_regulatory = 0x%x\n", rtlefuse->eeprom_regulatory )); +} + +static void _rtl8812ae_read_adapter_info(struct ieee80211_hw *hw, bool b_pseudo_test ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + u16 i, usvalue; + u8 hwinfo[HWSET_MAX_SIZE]; + u16 eeprom_id; + + if (b_pseudo_test) { + /* need add */ + } + + if (rtlefuse->epromtype == EEPROM_BOOT_EFUSE) { + rtl_efuse_shadow_map_update(hw); + memcpy(hwinfo, &rtlefuse->efuse_map[EFUSE_INIT_MAP][0], + HWSET_MAX_SIZE); + } else if (rtlefuse->epromtype == EEPROM_93C46) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("RTL819X Not boot from eeprom, check it !!")); + } + + RT_PRINT_DATA(rtlpriv, COMP_INIT, DBG_DMESG, ("MAP \n"), + hwinfo, HWSET_MAX_SIZE); + + eeprom_id = *((u16 *) & hwinfo[0]); + if (eeprom_id != RTL_EEPROM_ID) { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("EEPROM ID(%#x) is invalid!!\n", eeprom_id)); + rtlefuse->autoload_failflag = true; + } else { + RT_TRACE(COMP_INIT, DBG_LOUD, ("Autoload OK\n")); + rtlefuse->autoload_failflag = false; + } + + if (rtlefuse->autoload_failflag == true) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("RTL8812AE autoload_failflag, check it !!")); + return; + } + + rtlefuse->eeprom_version = *(u8 *) & hwinfo[EEPROM_VERSION]; + if (rtlefuse->eeprom_version == 0xff) + rtlefuse->eeprom_version = 0; + + RT_TRACE(COMP_INIT, DBG_LOUD, + ("EEPROM version: 0x%2x\n", rtlefuse->eeprom_version)); + + rtlefuse->eeprom_vid = *(u16 *) &hwinfo[EEPROM_VID]; + rtlefuse->eeprom_did = *(u16 *) &hwinfo[EEPROM_DID]; + rtlefuse->eeprom_svid = *(u16 *) &hwinfo[EEPROM_SVID]; + rtlefuse->eeprom_smid = *(u16 *) &hwinfo[EEPROM_SMID]; + RT_TRACE(COMP_INIT, DBG_LOUD, + ("EEPROMId = 0x%4x\n", eeprom_id)); + RT_TRACE(COMP_INIT, DBG_LOUD, + ("EEPROM VID = 0x%4x\n", rtlefuse->eeprom_vid)); + RT_TRACE(COMP_INIT, DBG_LOUD, + ("EEPROM DID = 0x%4x\n", rtlefuse->eeprom_did)); + RT_TRACE(COMP_INIT, DBG_LOUD, + ("EEPROM SVID = 0x%4x\n", rtlefuse->eeprom_svid)); + RT_TRACE(COMP_INIT, DBG_LOUD, + ("EEPROM SMID = 0x%4x\n", rtlefuse->eeprom_smid)); + + /*customer ID*/ + rtlefuse->eeprom_oemid = *(u8 *) & hwinfo[EEPROM_CUSTOMER_ID]; + if (rtlefuse->eeprom_oemid == 0xFF) + rtlefuse->eeprom_oemid = 0; + + RT_TRACE(COMP_INIT, DBG_LOUD, + ("EEPROM Customer ID: 0x%2x\n", rtlefuse->eeprom_oemid)); + + for (i = 0; i < 6; i += 2) { + usvalue = *(u16 *) & hwinfo[EEPROM_MAC_ADDR + i]; + *((u16 *) (&rtlefuse->dev_addr[i])) = usvalue; + } + + RT_TRACE(COMP_INIT, DBG_DMESG, + ("dev_addr: %pM\n", rtlefuse->dev_addr)); + + _rtl8812ae_read_txpower_info_from_hwpg(hw, + rtlefuse->autoload_failflag, hwinfo); + + /*board type*/ + rtlefuse->board_type = (((*(u8 *) & hwinfo[EEPROM_RF_BOARD_OPTION]) & 0xE0 ) >> 5); + if ((*(u8 *) & hwinfo[EEPROM_RF_BOARD_OPTION]) == 0xff ) + rtlefuse->board_type = 0; + rtlhal->boad_type = rtlefuse->board_type; + + rtl8812ae_read_bt_coexist_info_from_hwpg(hw, + rtlefuse->autoload_failflag, hwinfo); + + rtlefuse->eeprom_channelplan = *(u8 *) & hwinfo[EEPROM_CHANNELPLAN]; + if (rtlefuse->eeprom_channelplan == 0xff) + rtlefuse->eeprom_channelplan = 0x7F; + + /* set channel paln to world wide 13 */ + //rtlefuse->channel_plan = (u8) rtlefuse->eeprom_channelplan; + + /*parse xtal*/ + rtlefuse->crystalcap = hwinfo[EEPROM_XTAL_8821AE]; + if ( rtlefuse->crystalcap == 0xFF ) + rtlefuse->crystalcap = 0x20; + + rtlefuse->eeprom_thermalmeter = *(u8 *) & hwinfo[EEPROM_THERMAL_METER]; + if ((rtlefuse->eeprom_thermalmeter == 0xff) ||rtlefuse->autoload_failflag ) + { + rtlefuse->b_apk_thermalmeterignore = true; + rtlefuse->eeprom_thermalmeter = 0xff; + } + + rtlefuse->thermalmeter[0] = rtlefuse->eeprom_thermalmeter; + RT_TRACE(COMP_INIT, DBG_LOUD, + ("thermalmeter = 0x%x\n", rtlefuse->eeprom_thermalmeter)); + + if (rtlefuse->autoload_failflag == false) { + rtlefuse->antenna_div_cfg = *(u8 *) & hwinfo[EEPROM_RF_BOARD_OPTION] & 0x18 >> 3; + if (*(u8 *) & hwinfo[EEPROM_RF_BOARD_OPTION] == 0xff) + rtlefuse->antenna_div_cfg = 0x00; + /*if (BT_1ant()) + rtlefuse->antenna_div_cfg = 0;*/ + rtlefuse->antenna_div_type = *(u8 *) & hwinfo[EEPROM_RF_ANTENNA_OPT_88E]; + if (rtlefuse->antenna_div_type == 0xFF) + { + rtlefuse->antenna_div_type = FIXED_HW_ANTDIV; + } + } else { + rtlefuse->antenna_div_cfg = 0; + rtlefuse->antenna_div_type = 0; + } + + RT_TRACE(COMP_INIT, DBG_LOUD, + ("SWAS: bHwAntDiv = %x, TRxAntDivType = %x\n", + rtlefuse->antenna_div_cfg, rtlefuse->antenna_div_type)); + + /*Hal_ReadPAType_8821A()*/ + /*Hal_EfuseParseRateIndicationOption8821A()*/ + /*Hal_ReadEfusePCIeCap8821AE()*/ + + pcipriv->ledctl.bled_opendrain = true; + + if (rtlhal->oem_id == RT_CID_DEFAULT) { + switch (rtlefuse->eeprom_oemid) { + case RT_CID_DEFAULT: + break; + case EEPROM_CID_TOSHIBA: + rtlhal->oem_id = RT_CID_TOSHIBA; + break; + case EEPROM_CID_CCX: + rtlhal->oem_id = RT_CID_CCX; + break; + case EEPROM_CID_QMI: + rtlhal->oem_id = RT_CID_819x_QMI; + break; + case EEPROM_CID_WHQL: + break; + default: + break; + + } + } +} + +static void _rtl8821ae_read_adapter_info(struct ieee80211_hw *hw, bool b_pseudo_test ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + u16 i, usvalue; + u8 hwinfo[HWSET_MAX_SIZE]; + u16 eeprom_id; + + if (b_pseudo_test) { + /* need add */ + } + + if (rtlefuse->epromtype == EEPROM_BOOT_EFUSE) { + rtl_efuse_shadow_map_update(hw); + memcpy(hwinfo, &rtlefuse->efuse_map[EFUSE_INIT_MAP][0], + HWSET_MAX_SIZE); + } else if (rtlefuse->epromtype == EEPROM_93C46) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("RTL819X Not boot from eeprom, check it !!")); + } + + RT_PRINT_DATA(rtlpriv, COMP_INIT, DBG_DMESG, ("MAP \n"), + hwinfo, HWSET_MAX_SIZE); + + eeprom_id = *((u16 *) & hwinfo[0]); + if (eeprom_id != RTL_EEPROM_ID) { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("EEPROM ID(%#x) is invalid!!\n", eeprom_id)); + rtlefuse->autoload_failflag = true; + } else { + RT_TRACE(COMP_INIT, DBG_LOUD, ("Autoload OK\n")); + rtlefuse->autoload_failflag = false; + } + + if (rtlefuse->autoload_failflag == true) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("RTL8812AE autoload_failflag, check it !!")); + return; + } + + rtlefuse->eeprom_version = *(u8 *) & hwinfo[EEPROM_VERSION]; + if (rtlefuse->eeprom_version == 0xff) + rtlefuse->eeprom_version = 0; + + RT_TRACE(COMP_INIT, DBG_LOUD, + ("EEPROM version: 0x%2x\n", rtlefuse->eeprom_version)); + + rtlefuse->eeprom_vid = *(u16 *) &hwinfo[EEPROM_VID]; + rtlefuse->eeprom_did = *(u16 *) &hwinfo[EEPROM_DID]; + rtlefuse->eeprom_svid = *(u16 *) &hwinfo[EEPROM_SVID]; + rtlefuse->eeprom_smid = *(u16 *) &hwinfo[EEPROM_SMID]; + RT_TRACE(COMP_INIT, DBG_LOUD, + ("EEPROMId = 0x%4x\n", eeprom_id)); + RT_TRACE(COMP_INIT, DBG_LOUD, + ("EEPROM VID = 0x%4x\n", rtlefuse->eeprom_vid)); + RT_TRACE(COMP_INIT, DBG_LOUD, + ("EEPROM DID = 0x%4x\n", rtlefuse->eeprom_did)); + RT_TRACE(COMP_INIT, DBG_LOUD, + ("EEPROM SVID = 0x%4x\n", rtlefuse->eeprom_svid)); + RT_TRACE(COMP_INIT, DBG_LOUD, + ("EEPROM SMID = 0x%4x\n", rtlefuse->eeprom_smid)); + + /*customer ID*/ + rtlefuse->eeprom_oemid = *(u8 *) & hwinfo[EEPROM_CUSTOMER_ID]; + if (rtlefuse->eeprom_oemid == 0xFF) + rtlefuse->eeprom_oemid = 0; + + RT_TRACE(COMP_INIT, DBG_LOUD, + ("EEPROM Customer ID: 0x%2x\n", rtlefuse->eeprom_oemid)); + + for (i = 0; i < 6; i += 2) { + usvalue = *(u16 *) & hwinfo[EEPROM_MAC_ADDR + i]; + *((u16 *) (&rtlefuse->dev_addr[i])) = usvalue; + } + + RT_TRACE(COMP_INIT, DBG_DMESG, + ("dev_addr: %pM\n", rtlefuse->dev_addr)); + + _rtl8821ae_read_txpower_info_from_hwpg(hw, + rtlefuse->autoload_failflag, hwinfo); + + /*board type*/ + rtlefuse->board_type = (((*(u8 *) & hwinfo[EEPROM_RF_BOARD_OPTION]) & 0xE0 ) >> 5); + if ((*(u8 *) & hwinfo[EEPROM_RF_BOARD_OPTION]) == 0xff ) + rtlefuse->board_type = 0; + rtlhal->boad_type = rtlefuse->board_type; + + rtl8821ae_read_bt_coexist_info_from_hwpg(hw, + rtlefuse->autoload_failflag, hwinfo); + + rtlefuse->eeprom_channelplan = *(u8 *) & hwinfo[EEPROM_CHANNELPLAN]; + if (rtlefuse->eeprom_channelplan == 0xff) + rtlefuse->eeprom_channelplan = 0x7F; + + /* set channel paln to world wide 13 */ + //rtlefuse->channel_plan = (u8) rtlefuse->eeprom_channelplan; + + /*parse xtal*/ + rtlefuse->crystalcap = hwinfo[EEPROM_XTAL_8821AE]; + if ( rtlefuse->crystalcap == 0xFF ) + rtlefuse->crystalcap = 0x20; + + rtlefuse->eeprom_thermalmeter = *(u8 *) & hwinfo[EEPROM_THERMAL_METER]; + if ((rtlefuse->eeprom_thermalmeter == 0xff) ||rtlefuse->autoload_failflag ) + { + rtlefuse->b_apk_thermalmeterignore = true; + rtlefuse->eeprom_thermalmeter = 0x18; + } + + rtlefuse->thermalmeter[0] = rtlefuse->eeprom_thermalmeter; + RT_TRACE(COMP_INIT, DBG_LOUD, + ("thermalmeter = 0x%x\n", rtlefuse->eeprom_thermalmeter)); + + if (rtlefuse->autoload_failflag == false) { + rtlefuse->antenna_div_cfg = (*(u8 *) & hwinfo[EEPROM_RF_BOARD_OPTION] & BIT(3))?true:false; + /*if (BT_1ant()) + rtlefuse->antenna_div_cfg = 0;*/ + + rtlefuse->antenna_div_type = CG_TRX_HW_ANTDIV; + } else { + rtlefuse->antenna_div_cfg = 0; + rtlefuse->antenna_div_type = 0; + } + + RT_TRACE(COMP_INIT, DBG_LOUD, + ("SWAS: bHwAntDiv = %x, TRxAntDivType = %x\n", + rtlefuse->antenna_div_cfg, rtlefuse->antenna_div_type)); + + pcipriv->ledctl.bled_opendrain = true; + + if (rtlhal->oem_id == RT_CID_DEFAULT) { + switch (rtlefuse->eeprom_oemid) { + case RT_CID_DEFAULT: + break; + case EEPROM_CID_TOSHIBA: + rtlhal->oem_id = RT_CID_TOSHIBA; + break; + case EEPROM_CID_CCX: + rtlhal->oem_id = RT_CID_CCX; + break; + case EEPROM_CID_QMI: + rtlhal->oem_id = RT_CID_819x_QMI; + break; + case EEPROM_CID_WHQL: + break; + default: + break; + } + } +} + + +/*static void _rtl8821ae_hal_customized_behavior(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + + pcipriv->ledctl.bled_opendrain = true; + switch (rtlhal->oem_id) { + case RT_CID_819x_HP: + pcipriv->ledctl.bled_opendrain = true; + break; + case RT_CID_819x_Lenovo: + case RT_CID_DEFAULT: + case RT_CID_TOSHIBA: + case RT_CID_CCX: + case RT_CID_819x_Acer: + case RT_CID_WHQL: + default: + break; + } + RT_TRACE(COMP_INIT, DBG_DMESG, + ("RT Customized ID: 0x%02X\n", rtlhal->oem_id)); +}*/ + +void rtl8821ae_read_eeprom_info(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 tmp_u1b; + + rtlhal->version = _rtl8821ae_read_chip_version(hw); + + if (get_rf_type(rtlphy) == RF_1T1R) + rtlpriv->dm.brfpath_rxenable[0] = true; + else + rtlpriv->dm.brfpath_rxenable[0] = + rtlpriv->dm.brfpath_rxenable[1] = true; + RT_TRACE(COMP_INIT, DBG_LOUD, ("VersionID = 0x%4x\n", + rtlhal->version)); + + tmp_u1b = rtl_read_byte(rtlpriv, REG_9346CR); + if (tmp_u1b & BIT(4)) { + RT_TRACE(COMP_INIT, DBG_DMESG, ("Boot from EEPROM\n")); + rtlefuse->epromtype = EEPROM_93C46; + } else { + RT_TRACE(COMP_INIT, DBG_DMESG, ("Boot from EFUSE\n")); + rtlefuse->epromtype = EEPROM_BOOT_EFUSE; + } + + if (tmp_u1b & BIT(5)) { + RT_TRACE(COMP_INIT, DBG_LOUD, ("Autoload OK\n")); + rtlefuse->autoload_failflag = false; + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + _rtl8812ae_read_adapter_info(hw, false); + else if (rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) + _rtl8821ae_read_adapter_info(hw, false); + } else { + RT_TRACE(COMP_ERR, DBG_EMERG, ("Autoload ERR!!\n")); + } + /*hal_ReadRFType_8812A()*/ + //_rtl8821ae_hal_customized_behavior(hw); +} + +static void rtl8821ae_update_hal_rate_table(struct ieee80211_hw *hw, + struct ieee80211_sta *sta) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u32 ratr_value; + u8 ratr_index = 0; + u8 b_nmode = mac->ht_enable; + u8 mimo_ps = IEEE80211_SMPS_OFF; + u16 shortgi_rate; + u32 tmp_ratr_value; + u8 b_curtxbw_40mhz = mac->bw_40; + u8 b_curshortgi_40mhz = (sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_40) ? + 1 : 0; + u8 b_curshortgi_20mhz = (sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_20) ? + 1 : 0; + enum wireless_mode wirelessmode = mac->mode; + + if (rtlhal->current_bandtype == BAND_ON_5G) + ratr_value = sta->supp_rates[1] << 4; + else + ratr_value = sta->supp_rates[0]; + if (mac->opmode == NL80211_IFTYPE_ADHOC) + ratr_value = 0xfff; + ratr_value |= (sta->ht_cap.mcs.rx_mask[1] << 20 | + sta->ht_cap.mcs.rx_mask[0] << 12); + switch (wirelessmode) { + case WIRELESS_MODE_B: + if (ratr_value & 0x0000000c) + ratr_value &= 0x0000000d; + else + ratr_value &= 0x0000000f; + break; + case WIRELESS_MODE_G: + ratr_value &= 0x00000FF5; + break; + case WIRELESS_MODE_N_24G: + case WIRELESS_MODE_N_5G: + b_nmode = 1; + if (mimo_ps == IEEE80211_SMPS_STATIC) { + ratr_value &= 0x0007F005; + } else { + u32 ratr_mask; + + if (get_rf_type(rtlphy) == RF_1T2R || + get_rf_type(rtlphy) == RF_1T1R) + ratr_mask = 0x000ff005; + else + ratr_mask = 0x0f0ff005; + + ratr_value &= ratr_mask; + } + break; + default: + if (rtlphy->rf_type == RF_1T2R) + ratr_value &= 0x000ff0ff; + else + ratr_value &= 0x0f0ff0ff; + + break; + } + + if ( (rtlpcipriv->btcoexist.bt_coexistence) && + (rtlpcipriv->btcoexist.bt_coexist_type == BT_CSR_BC4) && + (rtlpcipriv->btcoexist.bt_cur_state) && + (rtlpcipriv->btcoexist.bt_ant_isolation) && + ((rtlpcipriv->btcoexist.bt_service == BT_SCO)|| + (rtlpcipriv->btcoexist.bt_service == BT_BUSY)) ) + ratr_value &= 0x0fffcfc0; + else + ratr_value &= 0x0FFFFFFF; + + if (b_nmode && ((b_curtxbw_40mhz && + b_curshortgi_40mhz) || (!b_curtxbw_40mhz && + b_curshortgi_20mhz))) { + + ratr_value |= 0x10000000; + tmp_ratr_value = (ratr_value >> 12); + + for (shortgi_rate = 15; shortgi_rate > 0; shortgi_rate--) { + if ((1 << shortgi_rate) & tmp_ratr_value) + break; + } + + shortgi_rate = (shortgi_rate << 12) | (shortgi_rate << 8) | + (shortgi_rate << 4) | (shortgi_rate); + } + + rtl_write_dword(rtlpriv, REG_ARFR0 + ratr_index * 4, ratr_value); + + RT_TRACE(COMP_RATR, DBG_DMESG, + ("%x\n", rtl_read_dword(rtlpriv, REG_ARFR0))); +} + + +static u8 _rtl8821ae_mrate_idx_to_arfr_id( + struct ieee80211_hw *hw, u8 rate_index, + enum wireless_mode wirelessmode) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 ret = 0; + switch(rate_index){ + case RATR_INX_WIRELESS_NGB: + if(rtlphy->rf_type == RF_1T1R) + ret = 1; + else + ret = 0; + ;break; + case RATR_INX_WIRELESS_N: + case RATR_INX_WIRELESS_NG: + if(rtlphy->rf_type == RF_1T1R) + ret = 5; + else + ret = 4; + ;break; + case RATR_INX_WIRELESS_NB: + if(rtlphy->rf_type == RF_1T1R) + ret = 3; + else + ret = 2; + ;break; + case RATR_INX_WIRELESS_GB: + ret = 6; + break; + case RATR_INX_WIRELESS_G: + ret = 7; + break; + case RATR_INX_WIRELESS_B: + ret = 8; + break; + case RATR_INX_WIRELESS_MC: + if ((wirelessmode == WIRELESS_MODE_B) + || (wirelessmode == WIRELESS_MODE_G) + || (wirelessmode == WIRELESS_MODE_N_24G) + || (wirelessmode == WIRELESS_MODE_AC_24G)) + ret = 6; + else + ret = 7; + case RATR_INX_WIRELESS_AC_5N: + if(rtlphy->rf_type == RF_1T1R) + ret = 10; + else + ret = 9; + break; + case RATR_INX_WIRELESS_AC_24N: + if(rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_80) + { + if(rtlphy->rf_type == RF_1T1R) + ret = 10; + else + ret = 9; + } else { + if(rtlphy->rf_type == RF_1T1R) + ret = 11; + else + ret = 12; + } + break; + default: + ret = 0;break; + } + return ret; +} + +static void rtl8821ae_update_hal_rate_mask(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, u8 rssi_level) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_sta_info * sta_entry = NULL; + u32 ratr_bitmap; + u8 ratr_index; + u8 b_curtxbw_40mhz = (sta->ht_cap.cap & IEEE80211_HT_CAP_SUP_WIDTH_20_40) + ? 1 : 0; + u8 b_curshortgi_40mhz = (sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_40) ? + 1 : 0; + u8 b_curshortgi_20mhz = (sta->ht_cap.cap & IEEE80211_HT_CAP_SGI_20) ? + 1 : 0; + enum wireless_mode wirelessmode = 0; + bool b_shortgi = false; + u8 rate_mask[7]; + u8 macid = 0; + u8 mimo_ps = IEEE80211_SMPS_OFF; + + sta_entry = (struct rtl_sta_info *) sta->drv_priv; + wirelessmode = sta_entry->wireless_mode; + if (mac->opmode == NL80211_IFTYPE_STATION || + mac->opmode == NL80211_IFTYPE_MESH_POINT) + b_curtxbw_40mhz = mac->bw_40; + else if (mac->opmode == NL80211_IFTYPE_AP || + mac->opmode == NL80211_IFTYPE_ADHOC) + macid = sta->aid + 1; + + ratr_bitmap = sta->supp_rates[0]; + + if (mac->opmode == NL80211_IFTYPE_ADHOC) + ratr_bitmap = 0xfff; + + ratr_bitmap |= (sta->ht_cap.mcs.rx_mask[1] << 20 | + sta->ht_cap.mcs.rx_mask[0] << 12); +/*mac id owner*/ + switch (wirelessmode) { + case WIRELESS_MODE_B: + ratr_index = RATR_INX_WIRELESS_B; + if (ratr_bitmap & 0x0000000c) + ratr_bitmap &= 0x0000000d; + else + ratr_bitmap &= 0x0000000f; + break; + case WIRELESS_MODE_G: + ratr_index = RATR_INX_WIRELESS_GB; + + if (rssi_level == 1) + ratr_bitmap &= 0x00000f00; + else if (rssi_level == 2) + ratr_bitmap &= 0x00000ff0; + else + ratr_bitmap &= 0x00000ff5; + break; + case WIRELESS_MODE_A: + ratr_index = RATR_INX_WIRELESS_G; + ratr_bitmap &= 0x00000ff0; + break; + case WIRELESS_MODE_N_24G: + case WIRELESS_MODE_N_5G: + if (wirelessmode == WIRELESS_MODE_N_24G) + ratr_index = RATR_INX_WIRELESS_NGB; + else + ratr_index = RATR_INX_WIRELESS_NG; + + if (mimo_ps == IEEE80211_SMPS_STATIC || mimo_ps == IEEE80211_SMPS_DYNAMIC) { + if (rssi_level == 1) + ratr_bitmap &= 0x00070000; + else if (rssi_level == 2) + ratr_bitmap &= 0x0007f000; + else + ratr_bitmap &= 0x0007f005; + } else { + if ( rtlphy->rf_type == RF_1T1R) { + if (b_curtxbw_40mhz) { + if (rssi_level == 1) + ratr_bitmap &= 0x000f0000; + else if (rssi_level == 2) + ratr_bitmap &= 0x000ff000; + else + ratr_bitmap &= 0x000ff015; + } else { + if (rssi_level == 1) + ratr_bitmap &= 0x000f0000; + else if (rssi_level == 2) + ratr_bitmap &= 0x000ff000; + else + ratr_bitmap &= 0x000ff005; + } + } else { + if (b_curtxbw_40mhz) { + if (rssi_level == 1) + ratr_bitmap &= 0x0fff0000; + else if (rssi_level == 2) + ratr_bitmap &= 0x0ffff000; + else + ratr_bitmap &= 0x0ffff015; + } else { + if (rssi_level == 1) + ratr_bitmap &= 0x0fff0000; + else if (rssi_level == 2) + ratr_bitmap &= 0x0ffff000; + else + ratr_bitmap &= 0x0ffff005; + } + } + } + if ((b_curtxbw_40mhz && b_curshortgi_40mhz) || + (!b_curtxbw_40mhz && b_curshortgi_20mhz)) { + + if (macid == 0) + b_shortgi = true; + else if (macid == 1) + b_shortgi = false; + } + break; + + case WIRELESS_MODE_AC_24G: + ratr_index = RATR_INX_WIRELESS_AC_24N; + if(rssi_level == 1) + ratr_bitmap &= 0xfc3f0000; + else if(rssi_level == 2) + ratr_bitmap &= 0xfffff000; + else + ratr_bitmap &= 0xffffffff; + break; + + case WIRELESS_MODE_AC_5G: + ratr_index = RATR_INX_WIRELESS_AC_5N; + + if (rtlphy->rf_type == RF_1T1R) + { + if(rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + { + if(rssi_level == 1) /*add by Gary for ac-series*/ + ratr_bitmap &= 0x003f8000; + else if (rssi_level == 2) + ratr_bitmap &= 0x003ff000; + else + ratr_bitmap &= 0x003ff010; + } + else + ratr_bitmap &= 0x000ff010; + } + else + { + if(rssi_level == 1) /* add by Gary for ac-series*/ + ratr_bitmap &= 0xfe3f8000; /*VHT 2SS MCS3~9*/ + else if (rssi_level == 2) + ratr_bitmap &= 0xfffff000; /*VHT 2SS MCS0~9*/ + else + ratr_bitmap &= 0xfffff010; /*All*/ + } + break; + + default: + ratr_index = RATR_INX_WIRELESS_NGB; + + if (rtlphy->rf_type == RF_1T2R) + ratr_bitmap &= 0x000ff0ff; + else + ratr_bitmap &= 0x0f0ff0ff; + break; + + } + + sta_entry->ratr_index = ratr_index; + + RT_TRACE(COMP_RATR, DBG_DMESG, + ("ratr_bitmap :%x\n", ratr_bitmap)); + *(u32 *) & rate_mask = EF4BYTE((ratr_bitmap & 0x0fffffff) | + (ratr_index << 28)); + rate_mask[0] = macid; + rate_mask[1] = _rtl8821ae_mrate_idx_to_arfr_id(hw, ratr_index, wirelessmode) | (b_shortgi ? 0x80 : 0x00); + rate_mask[2] = b_curtxbw_40mhz; + /* if (prox_priv->proxim_modeinfo->power_output > 0) + rate_mask[2] |= BIT(6); */ + + rate_mask[3] = (u8)(ratr_bitmap & 0x000000ff); + rate_mask[4] = (u8)((ratr_bitmap & 0x0000ff00) >>8); + rate_mask[5] = (u8)((ratr_bitmap & 0x00ff0000) >> 16); + rate_mask[6] = (u8)((ratr_bitmap & 0xff000000) >> 24); + + RT_TRACE(COMP_RATR, DBG_DMESG, ("Rate_index:%x, " + "ratr_val:%x, %x:%x:%x:%x:%x:%x:%x\n", + ratr_index, ratr_bitmap, + rate_mask[0], rate_mask[1], + rate_mask[2], rate_mask[3], + rate_mask[4], rate_mask[5], + rate_mask[6])); + rtl8821ae_fill_h2c_cmd(hw, H2C_8821AE_RA_MASK, 7, rate_mask); + _rtl8821ae_set_bcn_ctrl_reg(hw, BIT(3), 0); +} + +void rtl8821ae_update_hal_rate_tbl(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, u8 rssi_level) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + if (rtlpriv->dm.b_useramask) + rtl8821ae_update_hal_rate_mask(hw, sta, rssi_level); + else + /*RT_TRACE(COMP_RATR,DBG_LOUD,("rtl8821ae_update_hal_rate_tbl(): Error! 8821ae FW RA Only"));*/ + rtl8821ae_update_hal_rate_table(hw, sta); +} + +void rtl8821ae_update_channel_access_setting(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + u16 sifs_timer; + + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_SLOT_TIME, + (u8 *) & mac->slot_time); + if (!mac->ht_enable) + sifs_timer = 0x0a0a; + else + sifs_timer = 0x0e0e; + rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_SIFS, (u8 *) & sifs_timer); +} + +bool rtl8821ae_gpio_radio_on_off_checking(struct ieee80211_hw *hw, u8 * valid) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + enum rf_pwrstate e_rfpowerstate_toset, cur_rfstate; + u8 u1tmp = 0; + bool b_actuallyset = false; + + if (rtlpriv->rtlhal.being_init_adapter) + return false; + + if (ppsc->b_swrf_processing) + return false; + + spin_lock(&rtlpriv->locks.rf_ps_lock); + if (ppsc->rfchange_inprogress) { + spin_unlock(&rtlpriv->locks.rf_ps_lock); + return false; + } else { + ppsc->rfchange_inprogress = true; + spin_unlock(&rtlpriv->locks.rf_ps_lock); + } + + cur_rfstate = ppsc->rfpwr_state; + + rtl_write_byte(rtlpriv, REG_GPIO_IO_SEL_2, + rtl_read_byte(rtlpriv, REG_GPIO_IO_SEL_2) & ~(BIT(1))); + + u1tmp = rtl_read_byte(rtlpriv, REG_GPIO_PIN_CTRL_2); + + if (rtlphy->polarity_ctl) { + e_rfpowerstate_toset = (u1tmp & BIT(1)) ? ERFOFF : ERFON; + } else { + e_rfpowerstate_toset = (u1tmp & BIT(1)) ? ERFON : ERFOFF; + } + + if ((ppsc->b_hwradiooff == true) && (e_rfpowerstate_toset == ERFON)) { + RT_TRACE(COMP_RF, DBG_DMESG, + ("GPIOChangeRF - HW Radio ON, RF ON\n")); + + e_rfpowerstate_toset = ERFON; + ppsc->b_hwradiooff = false; + b_actuallyset = true; + } else if ((ppsc->b_hwradiooff == false) + && (e_rfpowerstate_toset == ERFOFF)) { + RT_TRACE(COMP_RF, DBG_DMESG, + ("GPIOChangeRF - HW Radio OFF, RF OFF\n")); + + e_rfpowerstate_toset = ERFOFF; + ppsc->b_hwradiooff = true; + b_actuallyset = true; + } + + if (b_actuallyset) { + spin_lock(&rtlpriv->locks.rf_ps_lock); + ppsc->rfchange_inprogress = false; + spin_unlock(&rtlpriv->locks.rf_ps_lock); + } else { + if (ppsc->reg_rfps_level & RT_RF_OFF_LEVL_HALT_NIC) + RT_SET_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_HALT_NIC); + + spin_lock(&rtlpriv->locks.rf_ps_lock); + ppsc->rfchange_inprogress = false; + spin_unlock(&rtlpriv->locks.rf_ps_lock); + } + + *valid = 1; + return !ppsc->b_hwradiooff; + +} + +void rtl8821ae_set_key(struct ieee80211_hw *hw, u32 key_index, + u8 *p_macaddr, bool is_group, u8 enc_algo, + bool is_wepkey, bool clear_all) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + u8 *macaddr = p_macaddr; + u32 entry_id = 0; + bool is_pairwise = false; + + static u8 cam_const_addr[4][6] = { + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x01}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x02}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x03} + }; + static u8 cam_const_broad[] = { + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff + }; + + if (clear_all) { + u8 idx = 0; + u8 cam_offset = 0; + u8 clear_number = 5; + + RT_TRACE(COMP_SEC, DBG_DMESG, ("clear_all\n")); + + for (idx = 0; idx < clear_number; idx++) { + rtl_cam_mark_invalid(hw, cam_offset + idx); + rtl_cam_empty_entry(hw, cam_offset + idx); + + if (idx < 5) { + memset(rtlpriv->sec.key_buf[idx], 0, + MAX_KEY_LEN); + rtlpriv->sec.key_len[idx] = 0; + } + } + + } else { + switch (enc_algo) { + case WEP40_ENCRYPTION: + enc_algo = CAM_WEP40; + break; + case WEP104_ENCRYPTION: + enc_algo = CAM_WEP104; + break; + case TKIP_ENCRYPTION: + enc_algo = CAM_TKIP; + break; + case AESCCMP_ENCRYPTION: + enc_algo = CAM_AES; + break; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, ("switch case " + "not process \n")); + enc_algo = CAM_TKIP; + break; + } + + if (is_wepkey || rtlpriv->sec.use_defaultkey) { + macaddr = cam_const_addr[key_index]; + entry_id = key_index; + } else { + if (is_group) { + macaddr = cam_const_broad; + entry_id = key_index; + } else { + if (mac->opmode == NL80211_IFTYPE_AP) { + entry_id = rtl_cam_get_free_entry(hw, p_macaddr); + if (entry_id >= TOTAL_CAM_ENTRY) { + RT_TRACE(COMP_SEC, DBG_EMERG, + ("Can not find free hw security cam entry\n")); + return; + } + } else { + entry_id = CAM_PAIRWISE_KEY_POSITION; + } + + key_index = PAIRWISE_KEYIDX; + is_pairwise = true; + } + } + + if (rtlpriv->sec.key_len[key_index] == 0) { + RT_TRACE(COMP_SEC, DBG_DMESG, + ("delete one entry, entry_id is %d\n",entry_id)); + if (mac->opmode == NL80211_IFTYPE_AP) + rtl_cam_del_entry(hw, p_macaddr); + rtl_cam_delete_one_entry(hw, p_macaddr, entry_id); + } else { + RT_TRACE(COMP_SEC, DBG_DMESG, ("add one entry\n")); + if (is_pairwise) { + RT_TRACE(COMP_SEC, DBG_DMESG, ("set Pairwiase key\n")); + + rtl_cam_add_one_entry(hw, macaddr, key_index, + entry_id, enc_algo, + CAM_CONFIG_NO_USEDK, + rtlpriv->sec.key_buf[key_index]); + } else { + RT_TRACE(COMP_SEC, DBG_DMESG, ("set group key\n")); + + if (mac->opmode == NL80211_IFTYPE_ADHOC) { + rtl_cam_add_one_entry(hw, + rtlefuse->dev_addr, + PAIRWISE_KEYIDX, + CAM_PAIRWISE_KEY_POSITION, + enc_algo, + CAM_CONFIG_NO_USEDK, + rtlpriv->sec.key_buf + [entry_id]); + } + + rtl_cam_add_one_entry(hw, macaddr, key_index, + entry_id, enc_algo, + CAM_CONFIG_NO_USEDK, + rtlpriv->sec.key_buf[entry_id]); + } + + } + } +} + + +void rtl8812ae_read_bt_coexist_info_from_hwpg(struct ieee80211_hw *hw, + bool auto_load_fail, u8 *hwinfo) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 value; + + if (!auto_load_fail) { + value = *(u8 *) & hwinfo[EEPROM_RF_BOARD_OPTION]; + if (((value & 0xe0) >> 5) == 0x1) + rtlpriv->btcoexist.btc_info.btcoexist = 1; + else + rtlpriv->btcoexist.btc_info.btcoexist = 0; + rtlpriv->btcoexist.btc_info.bt_type = BT_RTL8812A; + + value = hwinfo[EEPROM_RF_BT_SETTING]; + rtlpriv->btcoexist.btc_info.ant_num = (value & 0x1); + } else { + rtlpriv->btcoexist.btc_info.btcoexist = 0; + rtlpriv->btcoexist.btc_info.bt_type = BT_RTL8812A; + rtlpriv->btcoexist.btc_info.ant_num = ANT_X2; + } + /*move BT_InitHalVars() to init_sw_vars*/ +} + +void rtl8821ae_read_bt_coexist_info_from_hwpg(struct ieee80211_hw *hw, + bool auto_load_fail, u8 *hwinfo) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u8 value; + u32 tmpu_32; + + if (!auto_load_fail) { + tmpu_32 = rtl_read_dword(rtlpriv, REG_MULTI_FUNC_CTRL); + if(tmpu_32 & BIT(18)) + rtlpriv->btcoexist.btc_info.btcoexist = 1; + else + rtlpriv->btcoexist.btc_info.btcoexist = 0; + rtlpriv->btcoexist.btc_info.bt_type = BT_RTL8821A; + + value = hwinfo[EEPROM_RF_BT_SETTING]; + rtlpriv->btcoexist.btc_info.ant_num = (value & 0x1); + } else { + rtlpriv->btcoexist.btc_info.btcoexist = 0; + rtlpriv->btcoexist.btc_info.bt_type = BT_RTL8821A; + rtlpriv->btcoexist.btc_info.ant_num = ANT_X2; + } + /*move BT_InitHalVars() to init_sw_vars*/ +} + +void rtl8821ae_bt_reg_init(struct ieee80211_hw* hw) +{ + struct rtl_pci_priv *rtlpcipriv = rtl_pcipriv(hw); + + /* 0:Low, 1:High, 2:From Efuse. */ + rtlpcipriv->btcoexist.b_reg_bt_iso = 2; + /* 0:Idle, 1:None-SCO, 2:SCO, 3:From Counter. */ + rtlpcipriv->btcoexist.b_reg_bt_sco= 3; + /* 0:Disable BT control A-MPDU, 1:Enable BT control A-MPDU. */ + rtlpcipriv->btcoexist.b_reg_bt_sco= 0; +} + + +void rtl8821ae_bt_hw_init(struct ieee80211_hw* hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (rtlpriv->cfg->ops->get_btc_status()){ + rtlpriv->btcoexist.btc_ops->btc_init_hw_config(rtlpriv); + } +} + +void rtl8821ae_suspend(struct ieee80211_hw *hw) +{ +} + +void rtl8821ae_resume(struct ieee80211_hw *hw) +{ +} + +/* Turn on AAP (RCR:bit 0) for promicuous mode. */ +void rtl8821ae_allow_all_destaddr(struct ieee80211_hw *hw, + bool allow_all_da, bool write_into_reg) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + + if (allow_all_da) /* Set BIT0 */ + rtlpci->receive_config |= RCR_AAP; + else /* Clear BIT0 */ + rtlpci->receive_config &= ~RCR_AAP; + + if(write_into_reg) + rtl_write_dword(rtlpriv, REG_RCR, rtlpci->receive_config); + + + RT_TRACE(COMP_TURBO | COMP_INIT, DBG_LOUD, + ("receive_config=0x%08X, write_into_reg=%d\n", + rtlpci->receive_config, write_into_reg )); +} + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/hw.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/hw.h @@ -0,0 +1,75 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8821AE_HW_H__ +#define __RTL8821AE_HW_H__ + +void rtl8821ae_get_hw_reg(struct ieee80211_hw *hw, u8 variable, u8 *val); +void rtl8821ae_read_eeprom_info(struct ieee80211_hw *hw); + +void rtl8821ae_interrupt_recognized(struct ieee80211_hw *hw, + u32 *p_inta, u32 *p_intb); +int rtl8821ae_hw_init(struct ieee80211_hw *hw); +void rtl8821ae_card_disable(struct ieee80211_hw *hw); +void rtl8821ae_enable_interrupt(struct ieee80211_hw *hw); +void rtl8821ae_disable_interrupt(struct ieee80211_hw *hw); +int rtl8821ae_set_network_type(struct ieee80211_hw *hw, enum nl80211_iftype type); +void rtl8821ae_set_check_bssid(struct ieee80211_hw *hw, bool check_bssid); +void rtl8821ae_set_qos(struct ieee80211_hw *hw, int aci); +void rtl8821ae_set_beacon_related_registers(struct ieee80211_hw *hw); +void rtl8821ae_set_beacon_interval(struct ieee80211_hw *hw); +void rtl8821ae_update_interrupt_mask(struct ieee80211_hw *hw, + u32 add_msr, u32 rm_msr); +void rtl8821ae_set_hw_reg(struct ieee80211_hw *hw, u8 variable, u8 *val); +void rtl8821ae_update_hal_rate_tbl(struct ieee80211_hw *hw, + struct ieee80211_sta *sta, + u8 rssi_level); +void rtl8821ae_update_channel_access_setting(struct ieee80211_hw *hw); +bool rtl8821ae_gpio_radio_on_off_checking(struct ieee80211_hw *hw, u8 *valid); +void rtl8821ae_enable_hw_security_config(struct ieee80211_hw *hw); +void rtl8821ae_set_key(struct ieee80211_hw *hw, u32 key_index, + u8 *p_macaddr, bool is_group, u8 enc_algo, + bool is_wepkey, bool clear_all); + +void rtl8821ae_read_bt_coexist_info_from_hwpg(struct ieee80211_hw *hw, + bool autoload_fail, + u8* hwinfo); +void rtl8812ae_read_bt_coexist_info_from_hwpg(struct ieee80211_hw *hw, + bool autoload_fail, + u8* hwinfo); +void rtl8821ae_bt_reg_init(struct ieee80211_hw* hw); +void rtl8821ae_bt_hw_init(struct ieee80211_hw* hw); +void rtl8821ae_suspend(struct ieee80211_hw *hw); +void rtl8821ae_resume(struct ieee80211_hw *hw); +void rtl8821ae_allow_all_destaddr(struct ieee80211_hw *hw, + bool allow_all_da, + bool write_into_reg); +void _rtl8821ae_stop_tx_beacon(struct ieee80211_hw *hw); +void _rtl8821ae_resume_tx_beacon(struct ieee80211_hw *hw); +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/led.c +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/led.c @@ -0,0 +1,239 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "../pci.h" +#include "reg.h" + +static void _rtl8821ae_init_led(struct ieee80211_hw *hw, + struct rtl_led *pled, + enum rtl_led_pin ledpin) +{ + pled->hw = hw; + pled->ledpin = ledpin; + pled->b_ledon = false; +} + +void rtl8821ae_sw_led_on(struct ieee80211_hw *hw, struct rtl_led *pled) +{ + u8 ledcfg; + struct rtl_priv *rtlpriv = rtl_priv(hw); + + RT_TRACE(COMP_LED, DBG_LOUD, + ("LedAddr:%X ledpin=%d\n", REG_LEDCFG2, pled->ledpin)); + + switch (pled->ledpin) { + case LED_PIN_GPIO0: + break; + case LED_PIN_LED0: + ledcfg = rtl_read_byte(rtlpriv, REG_LEDCFG2); + ledcfg &= ~BIT(6); + rtl_write_byte(rtlpriv, + REG_LEDCFG2, (ledcfg & 0xf0) | BIT(5)); + break; + case LED_PIN_LED1: + ledcfg = rtl_read_byte(rtlpriv, REG_LEDCFG1); + rtl_write_byte(rtlpriv, REG_LEDCFG1, ledcfg & 0x10); + break; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("switch case not process \n")); + break; + } + pled->b_ledon = true; +} + +void rtl8812ae_sw_led_on(struct ieee80211_hw *hw, struct rtl_led *pled) +{ + u16 ledreg = REG_LEDCFG1; + u8 ledcfg = 0; + struct rtl_priv *rtlpriv = rtl_priv(hw); + + switch (pled->ledpin) { + case LED_PIN_LED0: + ledreg = REG_LEDCFG1; + break; + + case LED_PIN_LED1: + ledreg = REG_LEDCFG2; + break; + + case LED_PIN_GPIO0: + default: + break; + } + + RT_TRACE(COMP_LED, DBG_LOUD, ("In SwLedOn, LedAddr:%X LEDPIN=%d \n", ledreg, pled->ledpin)); + + ledcfg = rtl_read_byte(rtlpriv, ledreg); + ledcfg |= BIT(5); /*Set 0x4c[21]*/ + ledcfg &= ~(BIT(7) | BIT(6) | BIT(3) |BIT(2) | BIT(1) |BIT(0)); + /*Clear 0x4c[23:22] and 0x4c[19:16]*/ + rtl_write_byte(rtlpriv, ledreg, ledcfg); /*SW control led0 on.*/ + pled->b_ledon = true; +} + +void rtl8821ae_sw_led_off(struct ieee80211_hw *hw, struct rtl_led *pled) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + u8 ledcfg; + + RT_TRACE(COMP_LED, DBG_LOUD, + ("LedAddr:%X ledpin=%d\n", REG_LEDCFG2, pled->ledpin)); + + ledcfg = rtl_read_byte(rtlpriv, REG_LEDCFG2); + + switch (pled->ledpin) { + case LED_PIN_GPIO0: + break; + case LED_PIN_LED0: + ledcfg &= 0xf0; + if (pcipriv->ledctl.bled_opendrain == true) { + ledcfg &= 0x90; /* Set to software control. */ + rtl_write_byte(rtlpriv, REG_LEDCFG2, (ledcfg|BIT(3))); + ledcfg = rtl_read_byte(rtlpriv, REG_MAC_PINMUX_CFG); + ledcfg &= 0xFE; + rtl_write_byte(rtlpriv, REG_MAC_PINMUX_CFG, ledcfg); + } + else { + ledcfg &= ~BIT(6); + rtl_write_byte(rtlpriv, REG_LEDCFG2, + (ledcfg | BIT(3) | BIT(5))); + } + break; + case LED_PIN_LED1: + ledcfg = rtl_read_byte(rtlpriv, REG_LEDCFG1); + ledcfg &= 0x10; /* Set to software control. */ + rtl_write_byte(rtlpriv, REG_LEDCFG1, ledcfg|BIT(3)); + + break; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("switch case not process \n")); + break; + } + pled->b_ledon = false; +} + +void rtl8812ae_sw_led_off(struct ieee80211_hw *hw, struct rtl_led *pled){ + u16 ledreg = REG_LEDCFG1; + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + + switch(pled->ledpin) + { + case LED_PIN_LED0: + ledreg = REG_LEDCFG1; + break; + + case LED_PIN_LED1: + ledreg = REG_LEDCFG2; + break; + + case LED_PIN_GPIO0: + default: + break; + } + + RT_TRACE(COMP_LED,DBG_LOUD,("In SwLedOff,LedAddr:%X LEDPIN=%d\n", ledreg, pled->ledpin)); + + if(pcipriv->ledctl.bled_opendrain == true) /*Open-drain arrangement for controlling the LED*/ + { + u8 ledcfg = rtl_read_byte(rtlpriv, ledreg); + + ledreg &= 0xd0; /* Set to software control.*/ + rtl_write_byte(rtlpriv, ledreg, (ledcfg | BIT(3))); + + /*Open-drain arrangement*/ + ledcfg = rtl_read_byte(rtlpriv, REG_MAC_PINMUX_CFG); + ledcfg &= 0xFE;/*Set GPIO[8] to input mode*/ + rtl_write_byte(rtlpriv, REG_MAC_PINMUX_CFG, ledcfg); + } + else + { + rtl_write_byte(rtlpriv, ledreg, 0x28); + } + + pled->b_ledon = false; +} + +void rtl8821ae_init_sw_leds(struct ieee80211_hw *hw) +{ + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + _rtl8821ae_init_led(hw, &(pcipriv->ledctl.sw_led0), LED_PIN_LED0); + _rtl8821ae_init_led(hw, &(pcipriv->ledctl.sw_led1), LED_PIN_LED1); +} + +static void _rtl8821ae_sw_led_control(struct ieee80211_hw *hw, + enum led_ctl_mode ledaction) +{ + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_led *pLed0 = &(pcipriv->ledctl.sw_led0); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + switch (ledaction) { + case LED_CTL_POWER_ON: + case LED_CTL_LINK: + case LED_CTL_NO_LINK: + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + rtl8812ae_sw_led_on(hw, pLed0); + else + rtl8821ae_sw_led_on(hw, pLed0); + break; + case LED_CTL_POWER_OFF: + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE)\ + rtl8812ae_sw_led_off(hw, pLed0); + else + rtl8821ae_sw_led_off(hw, pLed0); + break; + default: + break; + } +} + +void rtl8821ae_led_control(struct ieee80211_hw *hw, + enum led_ctl_mode ledaction) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + + if ((ppsc->rfoff_reason > RF_CHANGE_BY_PS) && + (ledaction == LED_CTL_TX || + ledaction == LED_CTL_RX || + ledaction == LED_CTL_SITE_SURVEY || + ledaction == LED_CTL_LINK || + ledaction == LED_CTL_NO_LINK || + ledaction == LED_CTL_START_TO_LINK || + ledaction == LED_CTL_POWER_ON)) { + return; + } + RT_TRACE(COMP_LED, DBG_LOUD, ("ledaction %d, \n", + ledaction)); + _rtl8821ae_sw_led_control(hw, ledaction); +} --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/led.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/led.h @@ -0,0 +1,40 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8821AE_LED_H__ +#define __RTL8821AE_LED_H__ + +void rtl8821ae_init_sw_leds(struct ieee80211_hw *hw); +void rtl8821ae_sw_led_on(struct ieee80211_hw *hw, struct rtl_led *pled); +void rtl8812ae_sw_led_on(struct ieee80211_hw *hw, struct rtl_led *pled); +void rtl8821ae_sw_led_off(struct ieee80211_hw *hw, struct rtl_led *pled); +void rtl8812ae_sw_led_off(struct ieee80211_hw *hw, struct rtl_led *pled); +void rtl8821ae_led_control(struct ieee80211_hw *hw, enum led_ctl_mode ledaction); + +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/phy.c +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/phy.c @@ -0,0 +1,5525 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "../pci.h" +#include "../ps.h" +#include "reg.h" +#include "def.h" +#include "phy.h" +#include "rf.h" +#include "dm.h" +#include "table.h" +#include "trx.h" +#include "../btcoexist/halbt_precomp.h" +#include "hw.h" + +#define READ_NEXT_PAIR(array_table,v1, v2, i) do { i += 2; v1 = array_table[i]; v2 = array_table[i+1]; } while(0) + +static u32 _rtl8821ae_phy_rf_serial_read(struct ieee80211_hw *hw, + enum radio_path rfpath, u32 offset); +static void _rtl8821ae_phy_rf_serial_write(struct ieee80211_hw *hw, + enum radio_path rfpath, u32 offset, + u32 data); +static u32 _rtl8821ae_phy_calculate_bit_shift(u32 bitmask); +static bool _rtl8821ae_phy_bb8821a_config_parafile(struct ieee80211_hw *hw); +static bool _rtl8812ae_phy_config_mac_with_headerfile(struct ieee80211_hw *hw); +static bool _rtl8821ae_phy_config_mac_with_headerfile(struct ieee80211_hw *hw); +static bool _rtl8821ae_phy_config_bb_with_headerfile(struct ieee80211_hw *hw, + u8 configtype); +static bool _rtl8812ae_phy_config_bb_with_headerfile(struct ieee80211_hw *hw, + u8 configtype); +static bool _rtl8821ae_phy_config_bb_with_pgheaderfile(struct ieee80211_hw *hw, + u8 configtype); +static bool _rtl8812ae_phy_config_bb_with_pgheaderfile(struct ieee80211_hw *hw, + u8 configtype); +static void _rtl8821ae_phy_init_bb_rf_register_definition(struct ieee80211_hw *hw); + +static long _rtl8821ae_phy_txpwr_idx_to_dbm(struct ieee80211_hw *hw, + enum wireless_mode wirelessmode, + u8 txpwridx); +static void rtl8821ae_phy_set_rf_on(struct ieee80211_hw *hw); +static void rtl8821ae_phy_set_io(struct ieee80211_hw *hw); + +void rtl8812ae_fixspur( + struct ieee80211_hw *hw, + enum ht_channel_width band_width, + u8 channel +) +{ + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + + /*C cut Item12 ADC FIFO CLOCK*/ + if(IS_VENDOR_8812A_C_CUT(rtlhal->version)) + { + if(band_width == HT_CHANNEL_WIDTH_20_40 && channel == 11) + rtl_set_bbreg(hw, RRFMOD, 0xC00, 0x3) ; + /* 0x8AC[11:10] = 2'b11*/ + else + rtl_set_bbreg(hw, RRFMOD, 0xC00, 0x2); + /* 0x8AC[11:10] = 2'b10*/ + + + /* <20120914, Kordan> A workarould to resolve + 2480Mhz spur by setting ADC clock as 160M. (Asked by Binson)*/ + if (band_width == HT_CHANNEL_WIDTH_20 && + (channel == 13 || channel == 14)) { + rtl_set_bbreg(hw, RRFMOD, 0x300, 0x3); + /*0x8AC[9:8] = 2'b11*/ + rtl_set_bbreg(hw, RADC_BUF_CLK, BIT(30), 1); + /* 0x8C4[30] = 1*/ + } else if (band_width == HT_CHANNEL_WIDTH_20_40 && + channel == 11) { + rtl_set_bbreg(hw, RADC_BUF_CLK, BIT(30), 1); + /*0x8C4[30] = 1*/ + } else if (band_width != HT_CHANNEL_WIDTH_80) { + rtl_set_bbreg(hw, RRFMOD, 0x300, 0x2); + /*0x8AC[9:8] = 2'b10*/ + rtl_set_bbreg(hw, RADC_BUF_CLK, BIT(30), 0); + /*0x8C4[30] = 0*/ + } + } + else if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + { + /* <20120914, Kordan> A workarould to resolve + 2480Mhz spur by setting ADC clock as 160M. (Asked by Binson)*/ + if (band_width == HT_CHANNEL_WIDTH_20 && + (channel == 13 || channel == 14)) + rtl_set_bbreg(hw, RRFMOD, 0x300, 0x3); + /*0x8AC[9:8] = 11*/ + else if (channel <= 14) /*2.4G only*/ + rtl_set_bbreg(hw, RRFMOD, 0x300, 0x2); + /*0x8AC[9:8] = 10*/ + } + +} + +u32 rtl8821ae_phy_query_bb_reg(struct ieee80211_hw *hw, u32 regaddr, u32 bitmask) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 returnvalue, originalvalue, bitshift; + + RT_TRACE(COMP_RF, DBG_TRACE, ("regaddr(%#x), " + "bitmask(%#x)\n", regaddr, + bitmask)); + originalvalue = rtl_read_dword(rtlpriv, regaddr); + bitshift = _rtl8821ae_phy_calculate_bit_shift(bitmask); + returnvalue = (originalvalue & bitmask) >> bitshift; + + RT_TRACE(COMP_RF, DBG_TRACE, ("BBR MASK=0x%x " + "Addr[0x%x]=0x%x\n", bitmask, + regaddr, originalvalue)); + + return returnvalue; + +} + +void rtl8821ae_phy_set_bb_reg(struct ieee80211_hw *hw, + u32 regaddr, u32 bitmask, u32 data) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 originalvalue, bitshift; + + RT_TRACE(COMP_RF, DBG_TRACE, ("regaddr(%#x), bitmask(%#x)," + " data(%#x)\n", regaddr, bitmask, + data)); + + if (bitmask != MASKDWORD) { + originalvalue = rtl_read_dword(rtlpriv, regaddr); + bitshift = _rtl8821ae_phy_calculate_bit_shift(bitmask); + data = ((originalvalue & (~bitmask)) | ((data << bitshift) & bitmask)); + } + + rtl_write_dword(rtlpriv, regaddr, data); + + RT_TRACE(COMP_RF, DBG_TRACE, ("regaddr(%#x), bitmask(%#x)," + " data(%#x)\n", regaddr, bitmask, + data)); + +} + +u32 rtl8821ae_phy_query_rf_reg(struct ieee80211_hw *hw, + enum radio_path rfpath, u32 regaddr, u32 bitmask) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 original_value, readback_value, bitshift; + unsigned long flags; + + RT_TRACE(COMP_RF, DBG_TRACE, ("regaddr(%#x), " + "rfpath(%#x), bitmask(%#x)\n", + regaddr, rfpath, bitmask)); + + spin_lock_irqsave(&rtlpriv->locks.rf_lock, flags); + + + original_value = _rtl8821ae_phy_rf_serial_read(hw,rfpath, regaddr); + bitshift = _rtl8821ae_phy_calculate_bit_shift(bitmask); + readback_value = (original_value & bitmask) >> bitshift; + + spin_unlock_irqrestore(&rtlpriv->locks.rf_lock, flags); + + RT_TRACE(COMP_RF, DBG_TRACE, + ("regaddr(%#x), rfpath(%#x), " + "bitmask(%#x), original_value(%#x)\n", + regaddr, rfpath, bitmask, original_value)); + + return readback_value; +} + +void rtl8821ae_phy_set_rf_reg(struct ieee80211_hw *hw, + enum radio_path rfpath, + u32 regaddr, u32 bitmask, u32 data) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 original_value, bitshift; + unsigned long flags; + + RT_TRACE(COMP_RF, DBG_TRACE, + ("regaddr(%#x), bitmask(%#x), data(%#x), rfpath(%#x)\n", + regaddr, bitmask, data, rfpath)); + + spin_lock_irqsave(&rtlpriv->locks.rf_lock, flags); + + if (bitmask != RFREG_OFFSET_MASK) { + original_value = _rtl8821ae_phy_rf_serial_read(hw, + rfpath, + regaddr); + bitshift = _rtl8821ae_phy_calculate_bit_shift(bitmask); + data = + ((original_value & (~bitmask)) | + (data << bitshift)); + } + + _rtl8821ae_phy_rf_serial_write(hw, rfpath, regaddr, data); + + + spin_unlock_irqrestore(&rtlpriv->locks.rf_lock, flags); + + RT_TRACE(COMP_RF, DBG_TRACE, ("regaddr(%#x), " + "bitmask(%#x), data(%#x), rfpath(%#x)\n", + regaddr, bitmask, data, rfpath)); + +} + +static u32 _rtl8821ae_phy_rf_serial_read(struct ieee80211_hw *hw, + enum radio_path rfpath, u32 offset) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + bool b_is_pi_mode =false; + u32 retvalue = 0; + + /* 2009/06/17 MH We can not execute IO for power save or other accident mode.*/ + if (RT_CANNOT_IO(hw)) { + RT_TRACE(COMP_ERR, DBG_EMERG, ("return all one\n")); + return 0xFFFFFFFF; + } + + /* <20120809, Kordan> CCA OFF(when entering), asked by James to avoid reading the wrong value. + <20120828, Kordan> Toggling CCA would affect RF 0x0, skip it!*/ + if (offset != 0x0 && + !((rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) + || (IS_VENDOR_8812A_C_CUT(rtlhal->version)))) + rtl_set_bbreg(hw, RCCAONSEC, 0x8, 1); + + offset &= 0xff; + + if (rfpath == RF90_PATH_A) + b_is_pi_mode = (bool) rtl_get_bbreg(hw, 0xC00, 0x4); + else if (rfpath == RF90_PATH_B) + b_is_pi_mode = (bool) rtl_get_bbreg(hw, 0xE00, 0x4); + + rtl_set_bbreg(hw, RHSSIREAD_8821AE, 0xff, offset); + + if ((rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) + || (IS_VENDOR_8812A_C_CUT(rtlhal->version))) + udelay(20); + + if (b_is_pi_mode) + { + if (rfpath == RF90_PATH_A) { + retvalue = rtl_get_bbreg(hw, RA_PIREAD_8821A, BLSSIREADBACKDATA); + } + else if (rfpath == RF90_PATH_B){ + retvalue = rtl_get_bbreg(hw, RB_PIREAD_8821A, BLSSIREADBACKDATA); + } + } + else + { + if (rfpath == RF90_PATH_A) { + retvalue = rtl_get_bbreg(hw, RA_SIREAD_8821A, BLSSIREADBACKDATA); + } + else if (rfpath == RF90_PATH_B){ + retvalue = rtl_get_bbreg(hw, RB_SIREAD_8821A, BLSSIREADBACKDATA); + } + } + + /*<20120809, Kordan> CCA ON(when exiting), asked by James to avoid reading the wrong value. + <20120828, Kordan> Toggling CCA would affect RF 0x0, skip it!*/ + if (offset != 0x0 && ! ((rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) + || (IS_VENDOR_8812A_C_CUT(rtlhal->version)))) + rtl_set_bbreg(hw, RCCAONSEC, 0x8, 0); + return retvalue; +} + +#if 0 +static u32 _rtl8821ae_phy_rf_serial_read(struct ieee80211_hw *hw, + enum radio_path rfpath, u32 offset) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct bb_reg_def *pphyreg = &rtlphy->phyreg_def[rfpath]; + u32 newoffset; + u32 tmplong, tmplong2; + u8 rfpi_enable = 0; + u32 retvalue; + + offset &= 0xff; + newoffset = offset; + if (RT_CANNOT_IO(hw)) { + RT_TRACE(COMP_ERR, DBG_EMERG, ("return all one\n")); + return 0xFFFFFFFF; + } + tmplong = rtl_get_bbreg(hw, RFPGA0_XA_HSSIPARAMETER2, MASKDWORD); + if (rfpath == RF90_PATH_A) + tmplong2 = tmplong; + else + tmplong2 = rtl_get_bbreg(hw, pphyreg->rfhssi_para2, MASKDWORD); + tmplong2 = (tmplong2 & (~BLSSIREADADDRESS)) | + (newoffset << 23) | BLSSIREADEDGE; + rtl_set_bbreg(hw, RFPGA0_XA_HSSIPARAMETER2, MASKDWORD, + tmplong & (~BLSSIREADEDGE)); + mdelay(1); + rtl_set_bbreg(hw, pphyreg->rfhssi_para2, MASKDWORD, tmplong2); + mdelay(1); + /*rtl_set_bbreg(hw, RFPGA0_XA_HSSIPARAMETER2, MASKDWORD, + tmplong | BLSSIREADEDGE);*/ + mdelay(1); + if (rfpath == RF90_PATH_A) + rfpi_enable = (u8) rtl_get_bbreg(hw, RFPGA0_XA_HSSIPARAMETER1, + BIT(8)); + else if (rfpath == RF90_PATH_B) + rfpi_enable = (u8) rtl_get_bbreg(hw, RFPGA0_XB_HSSIPARAMETER1, + BIT(8)); + if (rfpi_enable) + retvalue = rtl_get_bbreg(hw, pphyreg->rflssi_readbackpi, + BLSSIREADBACKDATA); + else + retvalue = rtl_get_bbreg(hw, pphyreg->rflssi_readback, + BLSSIREADBACKDATA); + RT_TRACE(COMP_RF, DBG_TRACE, ("RFR-%d Addr[0x%x]=0x%x\n", + rfpath, pphyreg->rflssi_readback, + retvalue)); + return retvalue; +} +#endif + +static void _rtl8821ae_phy_rf_serial_write(struct ieee80211_hw *hw, + enum radio_path rfpath, u32 offset, + u32 data) +{ + u32 data_and_addr; + u32 newoffset; + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct bb_reg_def *pphyreg = &rtlphy->phyreg_def[rfpath]; + + if (RT_CANNOT_IO(hw)) { + RT_TRACE(COMP_ERR, DBG_EMERG, ("stop\n")); + return; + } + offset &= 0xff; + newoffset = offset; + data_and_addr = ((newoffset << 20) | (data & 0x000fffff)) & 0x0fffffff; + rtl_set_bbreg(hw, pphyreg->rf3wire_offset, MASKDWORD, data_and_addr); + RT_TRACE(COMP_RF, DBG_TRACE, ("RFW-%d Addr[0x%x]=0x%x\n", + rfpath, pphyreg->rf3wire_offset, + data_and_addr)); +} + +static u32 _rtl8821ae_phy_calculate_bit_shift(u32 bitmask) +{ + u32 i; + + for (i = 0; i <= 31; i++) { + if (((bitmask >> i) & 0x1) == 1) + break; + } + return i; +} + +bool rtl8821ae_phy_mac_config(struct ieee80211_hw *hw) +{ + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + bool rtstatus = 0; + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + rtstatus = _rtl8812ae_phy_config_mac_with_headerfile(hw); + else + rtstatus = _rtl8821ae_phy_config_mac_with_headerfile(hw); + + return rtstatus; +} + +bool rtl8821ae_phy_bb_config(struct ieee80211_hw *hw) +{ + bool rtstatus = true; + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 regval; + u8 crystal_cap; + //u32 tmp; + + _rtl8821ae_phy_init_bb_rf_register_definition(hw); + + regval = rtl_read_byte(rtlpriv, REG_SYS_FUNC_EN); + regval |= regval | FEN_PCIEA; + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN, regval); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN, + regval | FEN_BB_GLB_RSTN | FEN_BBRSTB); + + rtl_write_byte(rtlpriv, REG_RF_CTRL, 0x7);/*RF_EN | RF_RSTB | RF_SDMRSTB*/ + rtl_write_byte(rtlpriv, REG_OPT_CTRL + 2, 0x7);/*RF_EN | RF_RSTB | RF_SDMRSTB*/ + + rtstatus = _rtl8821ae_phy_bb8821a_config_parafile(hw); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + { + crystal_cap = rtlefuse->crystalcap & 0x3F; + rtl_set_bbreg(hw, REG_MAC_PHY_CTRL, 0x7FF80000, (crystal_cap | (crystal_cap << 6))); + }else{ + crystal_cap = rtlefuse->crystalcap & 0x3F; + rtl_set_bbreg(hw, REG_MAC_PHY_CTRL, 0xFFF000, (crystal_cap | (crystal_cap << 6))); + } + rtlphy->reg_837 = rtl_read_byte(rtlpriv, 0x837); + + return rtstatus; +} + +bool rtl8821ae_phy_rf_config(struct ieee80211_hw *hw) +{ + return rtl8821ae_phy_rf6052_config(hw); +} + + +u32 phy_get_tx_bb_swing_8812A( + struct ieee80211_hw *hw, + u8 band, + u8 rf_path + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_dm *rtldm = rtl_dm(rtlpriv); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + + char bb_swing_2g = (char) (-1 * 0xFF); + char bb_swing_5g = (char) (-1 * 0xFF); + u32 out = 0x200; + const char auto_temp = -1; + + RT_TRACE(COMP_SCAN, DBG_LOUD, + ("===> PHY_GetTxBBSwing_8812A, bbSwing_2G: %d, bbSwing_5G: %d\n", + (int)bb_swing_2g, (int)bb_swing_5g)); + + if ( rtlefuse->autoload_failflag) { + if ( band == BAND_ON_2_4G ) { + rtldm->bb_swing_diff_2g = bb_swing_2g; + if (bb_swing_2g == 0) out = 0x200; // 0 dB + else if (bb_swing_2g == -3) out = 0x16A; // -3 dB + else if (bb_swing_2g == -6) out = 0x101; // -6 dB + else if (bb_swing_2g == -9) out = 0x0B6; // -9 dB + else { + rtldm->bb_swing_diff_2g = 0; + out = 0x200; + } + + } else if ( band == BAND_ON_5G ) { + rtldm->bb_swing_diff_5g = bb_swing_5g; + if (bb_swing_5g == 0) out = 0x200; // 0 dB + else if (bb_swing_5g == -3) out = 0x16A; // -3 dB + else if (bb_swing_5g == -6) out = 0x101; // -6 dB + else if (bb_swing_5g == -9) out = 0x0B6; // -9 dB + else { + if ( rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) { + rtldm->bb_swing_diff_5g = -3; + out = 0x16A; + } else { + rtldm->bb_swing_diff_5g = 0; + out = 0x200; + } + } + } else { + rtldm->bb_swing_diff_2g = -3; + rtldm->bb_swing_diff_5g = -3; + out = 0x16A; // -3 dB + } + } + else + { + u32 swing = 0, swing_a = 0, swing_b = 0; + + if (band == BAND_ON_2_4G) + { + if (0xFF == auto_temp) + { + efuse_shadow_read(hw, 1, 0xC6, (u32 *)&swing); + swing = (swing == 0xFF) ? 0x00 : swing; + } + else if (bb_swing_2g == 0) swing = 0x00; // 0 dB + else if (bb_swing_2g == -3) swing = 0x05; // -3 dB + else if (bb_swing_2g == -6) swing = 0x0A; // -6 dB + else if (bb_swing_2g == -9) swing = 0xFF; // -9 dB + else swing = 0x00; + } + else + { + if (0xFF == auto_temp) + { + efuse_shadow_read(hw, 1, 0xC7, (u32 *)&swing); + swing = (swing == 0xFF) ? 0x00 : swing; + } + else if (bb_swing_5g == 0) swing = 0x00; // 0 dB + else if (bb_swing_5g == -3) swing = 0x05; // -3 dB + else if (bb_swing_5g == -6) swing = 0x0A; // -6 dB + else if (bb_swing_5g == -9) swing = 0xFF; // -9 dB + else swing = 0x00; + } + + swing_a = (swing & 0x3) >> 0; // 0xC6/C7[1:0] + swing_b = (swing & 0xC) >> 2; // 0xC6/C7[3:2] + RT_TRACE(COMP_SCAN, DBG_LOUD, + ("===> PHY_GetTxBBSwing_8812A, swingA: 0x%X, swingB: 0x%X\n", + swing_a, swing_b)); + + //3 Path-A + if (swing_a == 0x0) { + if (band == BAND_ON_2_4G) + rtldm->bb_swing_diff_2g = 0; + else + rtldm->bb_swing_diff_5g = 0; + out = 0x200; // 0 dB + } else if (swing_a == 0x1) { + if (band == BAND_ON_2_4G) + rtldm->bb_swing_diff_2g = -3; + else + rtldm->bb_swing_diff_5g = -3; + out = 0x16A; // -3 dB + } else if (swing_a == 0x2) { + if (band == BAND_ON_2_4G) + rtldm->bb_swing_diff_2g = -6; + else + rtldm->bb_swing_diff_5g = -6; + out = 0x101; // -6 dB + } else if (swing_a == 0x3) { + if (band == BAND_ON_2_4G) + rtldm->bb_swing_diff_2g = -9; + else + rtldm->bb_swing_diff_5g = -9; + out = 0x0B6; // -9 dB + } + + //3 Path-B + if (swing_b == 0x0) { + if (band == BAND_ON_2_4G) + rtldm->bb_swing_diff_2g = 0; + else + rtldm->bb_swing_diff_5g = 0; + out = 0x200; // 0 dB + } else if (swing_b == 0x1) { + if (band == BAND_ON_2_4G) + rtldm->bb_swing_diff_2g = -3; + else + rtldm->bb_swing_diff_5g = -3; + out = 0x16A; // -3 dB + } else if (swing_b == 0x2) { + if (band == BAND_ON_2_4G) + rtldm->bb_swing_diff_2g = -6; + else + rtldm->bb_swing_diff_5g = -6; + out = 0x101; // -6 dB + } else if (swing_b == 0x3) { + if (band == BAND_ON_2_4G) + rtldm->bb_swing_diff_2g = -9; + else + rtldm->bb_swing_diff_5g = -9; + out = 0x0B6; // -9 dB + } + } + + RT_TRACE(COMP_SCAN, DBG_LOUD, + ("<=== PHY_GetTxBBSwing_8812A, out = 0x%X\n", out)); + return out; +} +void rtl8821ae_phy_switch_wirelessband(struct ieee80211_hw *hw, u8 band) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_dm *rtldm = rtl_dm(rtlpriv); + u8 current_band = rtlhal->current_bandtype; + u32 txpath, rxpath; + //u8 i, value8; + char bb_diff_between_band; + + RT_TRACE(COMP_INIT, DBG_LOUD, ("\n")); + txpath = rtl8821ae_phy_query_bb_reg(hw, RTXPATH, 0xf0); + rxpath = rtl8821ae_phy_query_bb_reg(hw, RCCK_RX, 0x0f000000); + rtlhal->current_bandtype = (enum band_type) band; + /* reconfig BB/RF according to wireless mode */ + if (rtlhal->current_bandtype == BAND_ON_2_4G) { + /* BB & RF Config */ + RT_TRACE(COMP_CMD, DBG_DMESG, ("2.4G\n")); + rtl_set_bbreg(hw, ROFDMCCKEN, BOFDMEN|BCCKEN, 0x03); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) { + /* 0xCB0[15:12] = 0x7 (LNA_On)*/ + rtl_set_bbreg(hw, RA_RFE_PINMUX, 0xF000, 0x7); + /* 0xCB0[7:4] = 0x7 (PAPE_A)*/ + rtl_set_bbreg(hw, RA_RFE_PINMUX, 0xF0, 0x7); + } + + if(rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) { + rtl_set_bbreg(hw, 0x830, 0xE, 0x4); /*0x830[3:1] = 0x4*/ + rtl_set_bbreg(hw, 0x834, 0x3, 0x1); /*0x834[1:0] = 0x1*/ + } + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) + rtl_set_bbreg(hw, RA_TXSCALE, 0xF00, 0); // 0xC1C[11:8] = 0 + else + rtl_set_bbreg(hw, 0x82c, 0x3, 0); // 0x82C[1:0] = 2b'00 + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) { + rtl_set_bbreg(hw, RA_RFE_PINMUX, BMASKDWORD, 0x77777777); + rtl_set_bbreg(hw, RB_RFE_PINMUX, BMASKDWORD, 0x77777777); + rtl_set_bbreg(hw, RA_RFE_INV, 0x3ff00000, 0x000); + rtl_set_bbreg(hw, RB_RFE_INV, 0x3ff00000, 0x000); + } + + rtl_set_bbreg(hw, RTXPATH, 0xf0, txpath); + rtl_set_bbreg(hw, RCCK_RX, 0x0f000000, rxpath); + + rtl_write_byte(rtlpriv, REG_CCK_CHECK, 0x0); + } else {/* 5G band */ + u16 count, reg_41a; + RT_TRACE(COMP_CMD, DBG_DMESG, ("5G\n")); + + if(rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) { + /*0xCB0[15:12] = 0x5 (LNA_On)*/ + rtl_set_bbreg(hw, RA_RFE_PINMUX, 0xF000, 0x5); + /*0xCB0[7:4] = 0x4 (PAPE_A)*/ + rtl_set_bbreg(hw, RA_RFE_PINMUX, 0xF0, 0x4); + } + /*CCK_CHECK_en*/ + rtl_write_byte(rtlpriv, REG_CCK_CHECK, 0x80); + + count = 0; + reg_41a = rtl_read_word(rtlpriv, REG_TXPKT_EMPTY); + RT_TRACE(COMP_SCAN, DBG_LOUD, ("Reg41A value %d", reg_41a)); + reg_41a &= 0x30; + while ((reg_41a!= 0x30) && (count < 50)) { + udelay(50); + RT_TRACE(COMP_SCAN, DBG_LOUD, ("Delay 50us \n")); + + reg_41a = rtl_read_word(rtlpriv, REG_TXPKT_EMPTY); + reg_41a &= 0x30; + count++; + RT_TRACE(COMP_SCAN, DBG_LOUD, ("Reg41A value %d", reg_41a)); + } + if (count != 0) + RT_TRACE(COMP_MLME, DBG_LOUD, + ("PHY_SwitchWirelessBand8812(): Switch to 5G Band. " + "Count = %d reg41A=0x%x\n", count, reg_41a)); + + // 2012/02/01, Sinda add registry to switch workaround without long-run verification for scan issue. + rtl_set_bbreg(hw, ROFDMCCKEN, BOFDMEN|BCCKEN, 0x03); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) { + rtl_set_bbreg(hw, 0x830, 0xE, 0x3); /*0x830[3:1] = 0x3*/ + rtl_set_bbreg(hw, 0x834, 0x3, 0x2); /*0x834[1:0] = 0x2*/ + } + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) { + /* AGC table select */ + rtl_set_bbreg(hw, RA_TXSCALE, 0xF00, 1); /* 0xC1C[11:8] = 1*/ + } else + rtl_set_bbreg(hw, 0x82c, 0x3, 1); // 0x82C[1:0] = 2'b00 + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) { + rtl_set_bbreg(hw, RA_RFE_PINMUX, BMASKDWORD, 0x77337777); + rtl_set_bbreg(hw, RB_RFE_PINMUX, BMASKDWORD, 0x77337777); + rtl_set_bbreg(hw, RA_RFE_INV, 0x3ff00000, 0x010); + rtl_set_bbreg(hw, RB_RFE_INV, 0x3ff00000, 0x010); + } + + rtl_set_bbreg(hw, RTXPATH, 0xf0, txpath); + rtl_set_bbreg(hw, RCCK_RX, 0x0f000000, rxpath); + + RT_TRACE(COMP_SCAN, DBG_LOUD, + ("==>PHY_SwitchWirelessBand8812() BAND_ON_5G settings OFDM index 0x%x\n", + rtlpriv->dm.ofdm_index[RF90_PATH_A])); + } + + if ((rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) || + (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE)) { + rtl_set_bbreg(hw, RA_TXSCALE, 0xFFE00000, + phy_get_tx_bb_swing_8812A(hw, band, RF90_PATH_A)); // 0xC1C[31:21] + rtl_set_bbreg(hw, RB_TXSCALE, 0xFFE00000, + phy_get_tx_bb_swing_8812A(hw, band, RF90_PATH_B)); // 0xE1C[31:21] + + /* <20121005, Kordan> When TxPowerTrack is ON, we should take care of the change of BB swing. + That is, reset all info to trigger Tx power tracking.*/ + if (band != current_band) { + bb_diff_between_band = (rtldm->bb_swing_diff_2g - rtldm->bb_swing_diff_5g); + bb_diff_between_band = (band == BAND_ON_2_4G) ? bb_diff_between_band : (-1 * bb_diff_between_band); + rtldm->default_ofdm_index += bb_diff_between_band * 2; + } + rtl8821ae_dm_clear_txpower_tracking_state(hw); + } + + RT_TRACE(COMP_SCAN, DBG_TRACE, + ("<==rtl8821ae_phy_switch_wirelessband():Switch Band OK.\n")); + return; +} + +static bool _rtl8821ae_check_condition(struct ieee80211_hw *hw, + const u32 Condition + ) +{ + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + u32 _board = rtlefuse->board_type; /*need efuse define*/ + u32 _interface = rtlhal->interface; + u32 _platform = 0x08;/*SupportPlatform */ + u32 cond = Condition; + + if ( Condition == 0xCDCDCDCD ) + return true; + + cond = Condition & 0xFF; + if ( (_board != cond) == 0 && cond != 0xFF) + return false; + + cond = Condition & 0xFF00; + cond = cond >> 8; + if ( (_interface & cond) == 0 && cond != 0x07) + return false; + + cond = Condition & 0xFF0000; + cond = cond >> 16; + if ( (_platform & cond) == 0 && cond != 0x0F) + return false; + return true; +} + +static void _rtl8821ae_config_rf_reg(struct ieee80211_hw *hw, + u32 addr, + u32 data, + enum radio_path rfpath, + u32 regaddr + ) +{ + if ( addr == 0xfe || addr == 0xffe) { + mdelay(50); + } else { + rtl_set_rfreg(hw, rfpath, regaddr, RFREG_OFFSET_MASK, data); + udelay(1); + } +} + +static void _rtl8821ae_config_rf_radio_a(struct ieee80211_hw *hw, + u32 addr, u32 data) +{ + u32 content = 0x1000; /*RF Content: radio_a_txt*/ + u32 maskforphyset = (u32)(content & 0xE000); + + _rtl8821ae_config_rf_reg(hw, addr, data, RF90_PATH_A, addr | maskforphyset); + +} + +static void _rtl8821ae_config_rf_radio_b(struct ieee80211_hw *hw, + u32 addr, u32 data) +{ + u32 content = 0x1001; /*RF Content: radio_b_txt*/ + u32 maskforphyset = (u32)(content & 0xE000); + + _rtl8821ae_config_rf_reg(hw, addr, data, RF90_PATH_B, addr | maskforphyset); + +} + +static void _rtl8812ae_config_bb_reg(struct ieee80211_hw *hw, + u32 addr, u32 data) +{ + if ( addr == 0xfe) { + mdelay(50); + } else if ( addr == 0xfd) + mdelay(5); + else if ( addr == 0xfc) + mdelay(1); + else if ( addr == 0xfb) + udelay(50); + else if ( addr == 0xfa) + udelay(5); + else if ( addr == 0xf9) + udelay(1); + else { + rtl_set_bbreg(hw, addr, MASKDWORD,data); + } + udelay(1); +} + +static void _rtl8821ae_config_bb_reg(struct ieee80211_hw *hw, + u32 addr, u32 data) +{ + if ( addr == 0xfe) { + mdelay(50); + } else if ( addr == 0xfd) + mdelay(5); + else if ( addr == 0xfc) + mdelay(1); + else if ( addr == 0xfb) + udelay(50); + else if ( addr == 0xfa) + udelay(5); + else if ( addr == 0xf9) + udelay(1); + + rtl_set_bbreg(hw, addr, MASKDWORD,data); + udelay(1); +} + +static void _rtl8821ae_phy_init_tx_power_by_rate(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + u8 band, rfpath, txnum, rate_section; + + for ( band = BAND_ON_2_4G; band <= BAND_ON_5G; ++band ) + for ( rfpath = 0; rfpath < TX_PWR_BY_RATE_NUM_RF; ++rfpath ) + for ( txnum = 0; txnum < TX_PWR_BY_RATE_NUM_RF; ++txnum ) + for ( rate_section = 0; rate_section < TX_PWR_BY_RATE_NUM_SECTION; ++rate_section ) + rtlphy->tx_power_by_rate_offset[band][rfpath][txnum][rate_section] = 0; +} + +void _rtl8821ae_phy_set_txpower_by_rate_base(struct ieee80211_hw *hw, + u8 band, u8 path, + u8 rate_section, + u8 txnum, u8 value) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + if (path > RF90_PATH_D) { + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Invalid Rf Path %d in phy_SetTxPowerByRatBase()\n", path)); + return; + } + + if (band == BAND_ON_2_4G) { + switch (rate_section) { + case CCK: + rtlphy->txpwr_by_rate_base_24g[path][txnum][0] = value; + break; + case OFDM: + rtlphy->txpwr_by_rate_base_24g[path][txnum][1] = value; + break; + case HT_MCS0_MCS7: + rtlphy->txpwr_by_rate_base_24g[path][txnum][2] = value; + break; + case HT_MCS8_MCS15: + rtlphy->txpwr_by_rate_base_24g[path][txnum][3] = value; + break; + case VHT_1SSMCS0_1SSMCS9: + rtlphy->txpwr_by_rate_base_24g[path][txnum][4] = value; + break; + case VHT_2SSMCS0_2SSMCS9: + rtlphy->txpwr_by_rate_base_24g[path][txnum][5] = value; + break; + default: + RT_TRACE(COMP_INIT, DBG_LOUD, ( "Invalid RateSection %d in Band 2.4G, Rf Path %d, %dTx in PHY_SetTxPowerByRateBase()\n", + rate_section, path, txnum ) ); + break; + }; + } else if (band == BAND_ON_5G) { + switch (rate_section) { + case OFDM: + rtlphy->txpwr_by_rate_base_5g[path][txnum][0] = value; + break; + case HT_MCS0_MCS7: + rtlphy->txpwr_by_rate_base_5g[path][txnum][1] = value; + break; + case HT_MCS8_MCS15: + rtlphy->txpwr_by_rate_base_5g[path][txnum][2] = value; + break; + case VHT_1SSMCS0_1SSMCS9: + rtlphy->txpwr_by_rate_base_5g[path][txnum][3] = value; + break; + case VHT_2SSMCS0_2SSMCS9: + rtlphy->txpwr_by_rate_base_5g[path][txnum][4] = value; + break; + default: + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Invalid RateSection %d in Band 5G, Rf Path %d, " + "%dTx in PHY_SetTxPowerByRateBase()\n", + rate_section, path, txnum)); + break; + }; + } else { + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Invalid Band %d in PHY_SetTxPowerByRateBase()\n", band)); + } + +} + +u8 _rtl8821ae_phy_get_txpower_by_rate_base(struct ieee80211_hw *hw, + u8 band, u8 path, + u8 txnum, u8 rate_section) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 value = 0; + + if (path > RF90_PATH_D) { + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Invalid Rf Path %d in PHY_GetTxPowerByRateBase()\n", path)); + return 0; + } + + if (band == BAND_ON_2_4G) { + switch (rate_section) { + case CCK: + value = rtlphy->txpwr_by_rate_base_24g[path][txnum][0]; + break; + case OFDM: + value = rtlphy->txpwr_by_rate_base_24g[path][txnum][1]; + break; + case HT_MCS0_MCS7: + value = rtlphy->txpwr_by_rate_base_24g[path][txnum][2]; + break; + case HT_MCS8_MCS15: + value = rtlphy->txpwr_by_rate_base_24g[path][txnum][3]; + break; + case VHT_1SSMCS0_1SSMCS9: + value = rtlphy->txpwr_by_rate_base_24g[path][txnum][4]; + break; + case VHT_2SSMCS0_2SSMCS9: + value = rtlphy->txpwr_by_rate_base_24g[path][txnum][5]; + break; + default: + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Invalid RateSection %d in Band 2.4G, Rf Path %d," + " %dTx in PHY_GetTxPowerByRateBase()\n", + rate_section, path, txnum)); + break; + }; + } else if (band == BAND_ON_5G) { + switch (rate_section) { + case OFDM: + value = rtlphy->txpwr_by_rate_base_5g[path][txnum][0]; + break; + case HT_MCS0_MCS7: + value = rtlphy->txpwr_by_rate_base_5g[path][txnum][1]; + break; + case HT_MCS8_MCS15: + value = rtlphy->txpwr_by_rate_base_5g[path][txnum][2]; + break; + case VHT_1SSMCS0_1SSMCS9: + value = rtlphy->txpwr_by_rate_base_5g[path][txnum][3]; + break; + case VHT_2SSMCS0_2SSMCS9: + value = rtlphy->txpwr_by_rate_base_5g[path][txnum][4]; + break; + default: + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Invalid RateSection %d in Band 5G, Rf Path %d," + " %dTx in PHY_GetTxPowerByRateBase()\n", + rate_section, path, txnum)); + break; + }; + } else { + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Invalid Band %d in PHY_GetTxPowerByRateBase()\n", band)); + } + + return value; + +} +void _rtl8821ae_phy_store_txpower_by_rate_base(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u16 rawValue = 0; + u8 base = 0, path = 0; + + for (path = RF90_PATH_A; path <= RF90_PATH_B; ++path) { + rawValue = (u16) (rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][path][RF_1TX][0] >> 24) & 0xFF; + base = (rawValue >> 4) * 10 + (rawValue & 0xF); + _rtl8821ae_phy_set_txpower_by_rate_base(hw, BAND_ON_2_4G, path, CCK, RF_1TX, base); + + rawValue = (u16) (rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][path][RF_1TX][2] >> 24) & 0xFF; + base = (rawValue >> 4) * 10 + (rawValue & 0xF); + _rtl8821ae_phy_set_txpower_by_rate_base(hw, BAND_ON_2_4G, path, OFDM, RF_1TX, base ); + + rawValue = (u16) (rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][path][RF_1TX][4] >> 24) & 0xFF; + base = (rawValue >> 4) * 10 + (rawValue & 0xF); + _rtl8821ae_phy_set_txpower_by_rate_base(hw, BAND_ON_2_4G, path, HT_MCS0_MCS7, RF_1TX, base ); + + rawValue = (u16) (rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][path][RF_2TX][6] >> 24) & 0xFF; + base = (rawValue >> 4) * 10 + (rawValue & 0xF); + _rtl8821ae_phy_set_txpower_by_rate_base(hw, BAND_ON_2_4G, path, HT_MCS8_MCS15, RF_2TX, base ); + + rawValue = (u16) (rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][path][RF_1TX][8] >> 24) & 0xFF; + base = (rawValue >> 4) * 10 + (rawValue & 0xF); + _rtl8821ae_phy_set_txpower_by_rate_base(hw, BAND_ON_2_4G, path, VHT_1SSMCS0_1SSMCS9, RF_1TX, base ); + + rawValue = (u16) (rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][path][RF_2TX][11] >> 8) & 0xFF; + base = (rawValue >> 4) * 10 + (rawValue & 0xF); + _rtl8821ae_phy_set_txpower_by_rate_base(hw, BAND_ON_2_4G, path, VHT_2SSMCS0_2SSMCS9, RF_2TX, base ); + + rawValue = (u16) (rtlphy->tx_power_by_rate_offset[BAND_ON_5G][path][RF_1TX][2] >> 24) & 0xFF; + base = (rawValue >> 4) * 10 + (rawValue & 0xF); + _rtl8821ae_phy_set_txpower_by_rate_base(hw, BAND_ON_5G, path, OFDM, RF_1TX, base ); + + rawValue = (u16) (rtlphy->tx_power_by_rate_offset[BAND_ON_5G][path][RF_1TX][4] >> 24) & 0xFF; + base = (rawValue >> 4) * 10 + (rawValue & 0xF); + _rtl8821ae_phy_set_txpower_by_rate_base(hw, BAND_ON_5G, path, HT_MCS0_MCS7, RF_1TX, base ); + + rawValue = (u16) (rtlphy->tx_power_by_rate_offset[BAND_ON_5G][path][RF_2TX][6] >> 24) & 0xFF; + base = (rawValue >> 4) * 10 + (rawValue & 0xF); + _rtl8821ae_phy_set_txpower_by_rate_base(hw, BAND_ON_5G, path, HT_MCS8_MCS15, RF_2TX, base ); + + rawValue = (u16) (rtlphy->tx_power_by_rate_offset[BAND_ON_5G][path][RF_1TX][8] >> 24) & 0xFF; + base = (rawValue >> 4) * 10 + (rawValue & 0xF); + _rtl8821ae_phy_set_txpower_by_rate_base(hw, BAND_ON_5G, path, VHT_1SSMCS0_1SSMCS9, RF_1TX, base ); + + rawValue = (u16) (rtlphy->tx_power_by_rate_offset[BAND_ON_5G][path][RF_2TX][11] >> 8) & 0xFF; + base = (rawValue >> 4) * 10 + (rawValue & 0xF); + _rtl8821ae_phy_set_txpower_by_rate_base(hw, BAND_ON_5G, path, VHT_2SSMCS0_2SSMCS9, RF_2TX, base ); + } +} + +void _phy_convert_txpower_dbm_to_relative_value(u32 *data, u8 start, + u8 end, u8 base_val) +{ + char i = 0; + u8 temp_value = 0; + u32 temp_data = 0; + + for (i = 3; i >= 0; --i) + { + if (i >= start && i <= end) { + // Get the exact value + temp_value = (u8) (*data >> (i * 8)) & 0xF; + temp_value += ((u8) ((*data >> (i * 8 + 4)) & 0xF)) * 10; + + // Change the value to a relative value + temp_value = (temp_value > base_val) ? temp_value - base_val : base_val - temp_value; + } else { + temp_value = (u8) (*data >> (i * 8)) & 0xFF; + } + temp_data <<= 8; + temp_data |= temp_value; + } + *data = temp_data; +} + +void _rtl8821ae_phy_convert_txpower_dbm_to_relative_value(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 base = 0, rfPath = 0; + + for (rfPath = RF90_PATH_A; rfPath <= RF90_PATH_B; ++rfPath) { + base = _rtl8821ae_phy_get_txpower_by_rate_base(hw, BAND_ON_2_4G, rfPath, RF_1TX, CCK); + RT_DISP( FPHY, PHY_TXPWR, ( "base of 2.4G CCK 1TX: %d\n", base ) ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][rfPath][RF_1TX][0] ), + 0, 3, base ); + + base = _rtl8821ae_phy_get_txpower_by_rate_base(hw, BAND_ON_2_4G, rfPath, RF_1TX, OFDM ); + RT_DISP( FPHY, PHY_TXPWR, ( "base of 2.4G OFDM 1TX: %d\n", base ) ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][rfPath][RF_1TX][1] ), + 0, 3, base ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][rfPath][RF_1TX][2] ), + 0, 3, base ); + + base = _rtl8821ae_phy_get_txpower_by_rate_base(hw, BAND_ON_2_4G, rfPath, RF_1TX, HT_MCS0_MCS7 ); + RT_DISP( FPHY, PHY_TXPWR, ( "base of 2.4G HTMCS0-7 1TX: %d\n", base ) ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][rfPath][RF_1TX][3] ), + 0, 3, base ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][rfPath][RF_1TX][4] ), + 0, 3, base ); + + base = _rtl8821ae_phy_get_txpower_by_rate_base(hw, BAND_ON_2_4G, rfPath, RF_2TX, HT_MCS8_MCS15 ); + RT_DISP( FPHY, PHY_TXPWR, ( "base of 2.4G HTMCS8-15 2TX: %d\n", base ) ); + + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][rfPath][RF_2TX][5] ), + 0, 3, base ); + + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][rfPath][RF_2TX][6] ), + 0, 3, base ); + + base = _rtl8821ae_phy_get_txpower_by_rate_base(hw, BAND_ON_2_4G, rfPath, RF_1TX, VHT_1SSMCS0_1SSMCS9 ); + RT_DISP( FPHY, PHY_TXPWR, ( "base of 2.4G VHT1SSMCS0-9 1TX: %d\n", base ) ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][rfPath][RF_1TX][7] ), + 0, 3, base ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][rfPath][RF_1TX][8] ), + 0, 3, base ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][rfPath][RF_1TX][9] ), + 0, 1, base ); + + base = _rtl8821ae_phy_get_txpower_by_rate_base(hw, BAND_ON_2_4G, rfPath, RF_2TX, VHT_2SSMCS0_2SSMCS9 ); + RT_DISP( FPHY, PHY_TXPWR, ( "base of 2.4G VHT2SSMCS0-9 2TX: %d\n", base ) ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][rfPath][RF_1TX][9] ), + 2, 3, base ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][rfPath][RF_2TX][10] ), + 0, 3, base ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_2_4G][rfPath][RF_2TX][11] ), + 0, 3, base ); + + base = _rtl8821ae_phy_get_txpower_by_rate_base(hw, BAND_ON_5G, rfPath, RF_1TX, OFDM ); + RT_DISP( FPHY, PHY_TXPWR, ( "base of 5G OFDM 1TX: %d\n", base ) ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_5G][rfPath][RF_1TX][1] ), + 0, 3, base ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_5G][rfPath][RF_1TX][2] ), + 0, 3, base ); + + base = _rtl8821ae_phy_get_txpower_by_rate_base(hw, BAND_ON_5G, rfPath, RF_1TX, HT_MCS0_MCS7 ); + RT_DISP( FPHY, PHY_TXPWR, ( "base of 5G HTMCS0-7 1TX: %d\n", base ) ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_5G][rfPath][RF_1TX][3] ), + 0, 3, base ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_5G][rfPath][RF_1TX][4] ), + 0, 3, base ); + + base = _rtl8821ae_phy_get_txpower_by_rate_base(hw, BAND_ON_5G, rfPath, RF_2TX, HT_MCS8_MCS15 ); + RT_DISP( FPHY, PHY_TXPWR, ( "base of 5G HTMCS8-15 2TX: %d\n", base ) ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_5G][rfPath][RF_2TX][5] ), + 0, 3, base ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_5G][rfPath][RF_2TX][6] ), + 0, 3, base ); + + base = _rtl8821ae_phy_get_txpower_by_rate_base(hw, BAND_ON_5G, rfPath, RF_1TX, VHT_1SSMCS0_1SSMCS9 ); + RT_DISP( FPHY, PHY_TXPWR, ( "base of 5G VHT1SSMCS0-9 1TX: %d\n", base ) ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_5G][rfPath][RF_1TX][7] ), + 0, 3, base ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_5G][rfPath][RF_1TX][8] ), + 0, 3, base ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_5G][rfPath][RF_1TX][9] ), + 0, 1, base ); + + base = _rtl8821ae_phy_get_txpower_by_rate_base(hw, BAND_ON_5G, rfPath, RF_2TX, VHT_2SSMCS0_2SSMCS9 ); + RT_DISP( FPHY, PHY_TXPWR, ( "base of 5G VHT2SSMCS0-9 2TX: %d\n", base ) ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_5G][rfPath][RF_1TX][9] ), + 2, 3, base ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_5G][rfPath][RF_2TX][10] ), + 0, 3, base ); + _phy_convert_txpower_dbm_to_relative_value( + &(rtlphy->tx_power_by_rate_offset[BAND_ON_5G][rfPath][RF_2TX][11] ), + 0, 3, base ); + } + + RT_TRACE(COMP_POWER, DBG_TRACE, + ("<===_rtl8821ae_phy_convert_txpower_dbm_to_relative_value()\n")); + +} + +void _rtl8821ae_phy_txpower_by_rate_configuration(struct ieee80211_hw *hw) +{ + _rtl8821ae_phy_store_txpower_by_rate_base(hw); + _rtl8821ae_phy_convert_txpower_dbm_to_relative_value(hw); +} + +static bool _rtl8821ae_phy_bb8821a_config_parafile(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + bool rtstatus; + + /*TX POWER LIMIT + PHY_InitTxPowerLimit + PHY_ConfigRFWithCustomPowerLimitTableParaFile*/ + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + rtstatus = _rtl8812ae_phy_config_bb_with_headerfile(hw, + BASEBAND_CONFIG_PHY_REG); + else{ + rtstatus = _rtl8821ae_phy_config_bb_with_headerfile(hw, + BASEBAND_CONFIG_PHY_REG); + } + if (rtstatus != true) { + RT_TRACE(COMP_ERR, DBG_EMERG, ("Write BB Reg Fail!!")); + return false; + } + _rtl8821ae_phy_init_tx_power_by_rate(hw); + if (rtlefuse->autoload_failflag == false) { + //rtlphy->pwrgroup_cnt = 0; + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + rtstatus = _rtl8812ae_phy_config_bb_with_pgheaderfile(hw, + BASEBAND_CONFIG_PHY_REG); + else{ + rtstatus = _rtl8821ae_phy_config_bb_with_pgheaderfile(hw, + BASEBAND_CONFIG_PHY_REG); + } + } + if (rtstatus != true) { + RT_TRACE(COMP_ERR, DBG_EMERG, ("BB_PG Reg Fail!!")); + return false; + } + + _rtl8821ae_phy_txpower_by_rate_configuration(hw); + + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + rtstatus = _rtl8812ae_phy_config_bb_with_headerfile(hw, + BASEBAND_CONFIG_AGC_TAB); + else + rtstatus = _rtl8821ae_phy_config_bb_with_headerfile(hw, + BASEBAND_CONFIG_AGC_TAB); + + if (rtstatus != true) { + RT_TRACE(COMP_ERR, DBG_EMERG, ("AGC Table Fail\n")); + return false; + } + rtlphy->bcck_high_power = (bool) (rtl_get_bbreg(hw, + RFPGA0_XA_HSSIPARAMETER2, + 0x200)); + return true; +} + +static bool _rtl8812ae_phy_config_mac_with_headerfile(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 i, v1, v2; + u32 arraylength; + u32 *ptrarray; + + RT_TRACE(COMP_INIT, DBG_TRACE, ("Read rtl8812AE_MAC_REG_Array\n")); + arraylength = RTL8812AEMAC_1T_ARRAYLEN; + ptrarray = RTL8812AE_MAC_REG_ARRAY; + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Img:RTL8812AE_MAC_REG_ARRAY LEN %d\n",arraylength)); + for (i = 0; i < arraylength; i += 2) { + v1 = ptrarray[i]; + v2 = (u8) ptrarray[i + 1]; + if (v1<0xCDCDCDCD) { + rtl_write_byte(rtlpriv, v1, (u8) v2); + } else { + if (!_rtl8821ae_check_condition(hw,v1)) { + /*Discard the following (offset, data) pairs*/ + READ_NEXT_PAIR(ptrarray, v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < arraylength -2) + READ_NEXT_PAIR(ptrarray, v1, v2, i); + + i -= 2; /* prevent from for-loop += 2*/ + } else {/*Configure matched pairs and skip to end of if-else.*/ + READ_NEXT_PAIR(ptrarray, v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < arraylength -2) { + rtl_write_byte(rtlpriv,v1,v2); + READ_NEXT_PAIR(ptrarray, v1, v2, i); + } + + while (v2 != 0xDEAD && i < arraylength -2) + READ_NEXT_PAIR(ptrarray, v1, v2, i); + } + } + } + return true; +} + +static bool _rtl8821ae_phy_config_mac_with_headerfile(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 i, v1, v2; + u32 arraylength; + u32 *ptrarray; + + RT_TRACE(COMP_INIT, DBG_TRACE, ("Read rtl8821AE_MAC_REG_Array\n")); + arraylength = RTL8821AEMAC_1T_ARRAYLEN; + ptrarray = RTL8821AE_MAC_REG_ARRAY; + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Img:RTL8821AE_MAC_REG_ARRAY LEN %d\n",arraylength)); + for (i = 0; i < arraylength; i += 2) { + v1 = ptrarray[i]; + v2 = (u8) ptrarray[i + 1]; + if (v1<0xCDCDCDCD) { + rtl_write_byte(rtlpriv, v1, (u8) v2); + continue; + } else { + if (!_rtl8821ae_check_condition(hw,v1)) { + /*Discard the following (offset, data) pairs*/ + READ_NEXT_PAIR(ptrarray, v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < arraylength -2) + READ_NEXT_PAIR(ptrarray, v1, v2, i); + + i -= 2; /* prevent from for-loop += 2*/ + } else {/*Configure matched pairs and skip to end of if-else.*/ + READ_NEXT_PAIR(ptrarray, v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < arraylength -2) { + rtl_write_byte(rtlpriv,v1,v2); + READ_NEXT_PAIR(ptrarray, v1, v2, i); + } + + while (v2 != 0xDEAD && i < arraylength -2) + READ_NEXT_PAIR(ptrarray, v1, v2, i); + } + } + } + return true; +} + +static bool _rtl8812ae_phy_config_bb_with_headerfile(struct ieee80211_hw *hw, + u8 configtype) +{ + int i; + u32 *array_table; + u16 arraylen; + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 v1 = 0, v2 = 0; + + if (configtype == BASEBAND_CONFIG_PHY_REG) { + arraylen = RTL8812AEPHY_REG_1TARRAYLEN; + array_table = RTL8812AE_PHY_REG_ARRAY; + + for (i = 0; i < arraylen; i += 2) { + v1 = array_table[i]; + v2 = array_table[i+1]; + if (v1<0xCDCDCDCD) { + _rtl8812ae_config_bb_reg(hw, v1, v2); + continue; + } else {/*This line is the start line of branch.*/ + if (!_rtl8821ae_check_condition(hw,v1)) { + /*Discard the following (offset, data) pairs*/ + READ_NEXT_PAIR(array_table,v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < arraylen -2) + READ_NEXT_PAIR(array_table,v1, v2, i); + + i -= 2; /* prevent from for-loop += 2*/ + } else {/*Configure matched pairs and skip to end of if-else.*/ + READ_NEXT_PAIR(array_table,v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < arraylen -2) { + _rtl8812ae_config_bb_reg(hw,v1,v2); + READ_NEXT_PAIR(array_table,v1, v2, i); + } + + while (v2 != 0xDEAD && i < arraylen -2) + READ_NEXT_PAIR(array_table,v1, v2, i); + } + } + } + } else if (configtype == BASEBAND_CONFIG_AGC_TAB) { + arraylen = RTL8812AEAGCTAB_1TARRAYLEN; + array_table = RTL8812AE_AGC_TAB_ARRAY; + + for (i = 0; i < arraylen; i = i + 2) { + v1 = array_table[i]; + v2 = array_table[i+1]; + if (v1 < 0xCDCDCDCD) { + rtl_set_bbreg(hw, v1, MASKDWORD, v2); + udelay(1); + continue; + } else {/*This line is the start line of branch.*/ + if (!_rtl8821ae_check_condition(hw,v1)) { + /*Discard the following (offset, data) pairs*/ + READ_NEXT_PAIR(array_table,v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < arraylen -2) + READ_NEXT_PAIR(array_table,v1, v2, i); + + i -= 2; /* prevent from for-loop += 2*/ + }else{/*Configure matched pairs and skip to end of if-else.*/ + READ_NEXT_PAIR(array_table,v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < arraylen -2) + { + rtl_set_bbreg(hw, v1, MASKDWORD, v2); + udelay(1); + READ_NEXT_PAIR(array_table,v1, v2, i); + } + + while (v2 != 0xDEAD && i < arraylen -2) + READ_NEXT_PAIR(array_table,v1, v2, i); + } + } + RT_TRACE(COMP_INIT, DBG_TRACE, + ("The agctab_array_table[0] is " + "%x Rtl818EEPHY_REGArray[1] is %x \n", + array_table[i], + array_table[i + 1])); + } + } + return true; +} + +static bool _rtl8821ae_phy_config_bb_with_headerfile(struct ieee80211_hw *hw, + u8 configtype) +{ + int i; + u32 *array_table; + u16 arraylen; + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 v1 = 0, v2 = 0; + + if (configtype == BASEBAND_CONFIG_PHY_REG) { + arraylen = RTL8821AEPHY_REG_1TARRAYLEN; + array_table = RTL8821AE_PHY_REG_ARRAY; + + for (i = 0; i < arraylen; i += 2) { + v1 = array_table[i]; + v2 = array_table[i+1]; + if (v1<0xCDCDCDCD) { + _rtl8821ae_config_bb_reg(hw, v1, v2); + continue; + } else {/*This line is the start line of branch.*/ + if (!_rtl8821ae_check_condition(hw,v1)) { + /*Discard the following (offset, data) pairs*/ + READ_NEXT_PAIR(array_table, v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < arraylen -2) + READ_NEXT_PAIR(array_table, v1, v2, i); + + i -= 2; /* prevent from for-loop += 2*/ + } else {/*Configure matched pairs and skip to end of if-else.*/ + READ_NEXT_PAIR(array_table, v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < arraylen -2) { + _rtl8821ae_config_bb_reg(hw,v1,v2); + READ_NEXT_PAIR(array_table, v1, v2, i); + } + + while (v2 != 0xDEAD && i < arraylen -2) + READ_NEXT_PAIR(array_table, v1, v2, i); + } + } + } + } else if (configtype == BASEBAND_CONFIG_AGC_TAB) { + arraylen = RTL8821AEAGCTAB_1TARRAYLEN; + array_table = RTL8821AE_AGC_TAB_ARRAY; + + for (i = 0; i < arraylen; i = i + 2) { + v1 = array_table[i]; + v2 = array_table[i+1]; + if (v1 < 0xCDCDCDCD) { + rtl_set_bbreg(hw, v1, MASKDWORD, v2); + udelay(1); + continue; + } else {/*This line is the start line of branch.*/ + if (!_rtl8821ae_check_condition(hw,v1)) { + /*Discard the following (offset, data) pairs*/ + READ_NEXT_PAIR(array_table, v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < arraylen -2) + READ_NEXT_PAIR(array_table, v1, v2, i); + + i -= 2; /* prevent from for-loop += 2*/ + }else{/*Configure matched pairs and skip to end of if-else.*/ + READ_NEXT_PAIR(array_table, v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < arraylen -2) + { + rtl_set_bbreg(hw, v1, MASKDWORD, v2); + udelay(1); + READ_NEXT_PAIR(array_table, v1, v2, i); + } + + while (v2 != 0xDEAD && i < arraylen -2) + READ_NEXT_PAIR(array_table, v1, v2, i); + } + } + RT_TRACE(COMP_INIT, DBG_TRACE, + ("The agctab_array_table[0] is " + "%x Rtl818EEPHY_REGArray[1] is %x \n", + array_table[i], + array_table[i + 1])); + } + } + return true; +} + +static u8 _rtl8821ae_get_rate_selection_index(u32 regaddr) +{ + u8 index = 0; + + regaddr &= 0xFFF; + if (regaddr >= 0xC20 && regaddr <= 0xC4C) + index = (u8) ((regaddr - 0xC20) / 4); + else if (regaddr >= 0xE20 && regaddr <= 0xE4C) + index = (u8) ((regaddr - 0xE20) / 4); + else + RT_ASSERT(!COMP_INIT, + ("Invalid RegAddr 0x%x in" + "PHY_GetRateSectionIndexOfTxPowerByRate()\n",regaddr)); + + return index; +} + +static void _rtl8821ae_store_tx_power_by_rate(struct ieee80211_hw *hw, + u32 band, u32 rfpath, + u32 txnum, u32 regaddr, + u32 bitmask, u32 data) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 rate_section = _rtl8821ae_get_rate_selection_index(regaddr); + + if (band != BAND_ON_2_4G && band != BAND_ON_5G) + RT_TRACE(COMP_INIT, DBG_WARNING, ("Invalid Band %d\n", band)); + + if (rfpath > MAX_RF_PATH) + RT_TRACE(COMP_INIT, DBG_WARNING, ("Invalid RfPath %d\n", rfpath)); + + if (txnum > MAX_RF_PATH) + RT_TRACE(COMP_INIT, DBG_WARNING, ("Invalid TxNum %d\n", txnum ) ); + + rtlphy->tx_power_by_rate_offset[band][rfpath][txnum][rate_section] = data; + RT_TRACE(COMP_INIT, DBG_WARNING,( "pHalData->TxPwrByRateOffset[Band %d][RfPath %d][TxNum %d][RateSection %d] = 0x%x\n", + band, rfpath, txnum, rate_section, rtlphy->tx_power_by_rate_offset[band][rfpath][txnum][rate_section])); + +} + +static bool _rtl8812ae_phy_config_bb_with_pgheaderfile(struct ieee80211_hw *hw, + u8 configtype) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + int i; + u32 *phy_regarray_table_pg; + u16 phy_regarray_pg_len; + u32 v1, v2, v3, v4, v5, v6; + + phy_regarray_pg_len = RTL8812AEPHY_REG_ARRAY_PGLEN; + phy_regarray_table_pg = RTL8812AE_PHY_REG_ARRAY_PG; + + if (configtype == BASEBAND_CONFIG_PHY_REG) { + for (i = 0; i < phy_regarray_pg_len; i += 6) { + v1 = phy_regarray_table_pg[i]; + v2 = phy_regarray_table_pg[i+1]; + v3 = phy_regarray_table_pg[i+2]; + v4 = phy_regarray_table_pg[i+3]; + v5 = phy_regarray_table_pg[i+4]; + v6 = phy_regarray_table_pg[i+5]; + + if (v1<0xCDCDCDCD) { + if ( (v4 == 0xfe) || (v4 == 0xffe)) + mdelay(50); + else + /*_rtl8821ae_store_pwrIndex_diffrate_offset*/ + _rtl8821ae_store_tx_power_by_rate(hw, v1, v2, v3, v4, v5, v6); + continue; + } else { + if (!_rtl8821ae_check_condition(hw,v1)) { /*don't need the hw_body*/ + i += 2; /* skip the pair of expression*/ + v1 = phy_regarray_table_pg[i]; + v2 = phy_regarray_table_pg[i+1]; + v3 = phy_regarray_table_pg[i+2]; + while (v2 != 0xDEAD) { + i += 3; + v1 = phy_regarray_table_pg[i]; + v2 = phy_regarray_table_pg[i+1]; + v3 = phy_regarray_table_pg[i+2]; + } + } + } + } + } else { + + RT_TRACE(COMP_SEND, DBG_TRACE, + ("configtype != BaseBand_Config_PHY_REG\n")); + } + return true; +} + +static bool _rtl8821ae_phy_config_bb_with_pgheaderfile(struct ieee80211_hw *hw, + u8 configtype) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + int i; + u32 *phy_regarray_table_pg; + u16 phy_regarray_pg_len; + u32 v1, v2, v3, v4, v5, v6; + + phy_regarray_pg_len = RTL8821AEPHY_REG_ARRAY_PGLEN; + phy_regarray_table_pg = RTL8821AE_PHY_REG_ARRAY_PG; + + if (configtype == BASEBAND_CONFIG_PHY_REG) { + for (i = 0; i < phy_regarray_pg_len; i += 6) { + v1 = phy_regarray_table_pg[i]; + v2 = phy_regarray_table_pg[i+1]; + v3 = phy_regarray_table_pg[i+2]; + v4 = phy_regarray_table_pg[i+3]; + v5 = phy_regarray_table_pg[i+4]; + v6 = phy_regarray_table_pg[i+5]; + + if (v1<0xCDCDCDCD) { + if (v4 == 0xfe) + mdelay(50); + else if (v4 == 0xfd) + mdelay(5); + else if (v4 == 0xfc) + mdelay(1); + else if (v4 == 0xfb) + udelay(50); + else if (v4 == 0xfa) + udelay(5); + else if (v4 == 0xf9) + udelay(1); + + /*_rtl8821ae_store_pwrIndex_diffrate_offset*/ + _rtl8821ae_store_tx_power_by_rate(hw, v1, v2, v3, v4, v5, v6); + continue; + } else { + if (!_rtl8821ae_check_condition(hw,v1)) { /*don't need the hw_body*/ + i += 2; /* skip the pair of expression*/ + v1 = phy_regarray_table_pg[i]; + v2 = phy_regarray_table_pg[i+1]; + v3 = phy_regarray_table_pg[i+2]; + while (v2 != 0xDEAD) { + i += 3; + v1 = phy_regarray_table_pg[i]; + v2 = phy_regarray_table_pg[i+1]; + v3 = phy_regarray_table_pg[i+2]; + } + } + } + } + } else { + + RT_TRACE(COMP_SEND, DBG_TRACE, + ("configtype != BaseBand_Config_PHY_REG\n")); + } + return true; +} + +bool rtl8812ae_phy_config_rf_with_headerfile(struct ieee80211_hw * hw, + enum radio_path rfpath) +{ + #define READ_NEXT_RF_PAIR_8812(radioa_array_table,v1, v2, i) do { i += 2; v1 = radioa_array_table[i]; v2 = radioa_array_table[i+1]; } while(0) + + int i; + bool rtstatus = true; + u32 *radioa_array_table_a, *radioa_array_table_b; + u16 radioa_arraylen_a, radioa_arraylen_b; + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 v1 = 0, v2 = 0; + + radioa_arraylen_a = RTL8812AE_RADIOA_1TARRAYLEN; + radioa_array_table_a= RTL8812AE_RADIOA_ARRAY; + radioa_arraylen_b= RTL8812AE_RADIOB_1TARRAYLEN; + radioa_array_table_b = RTL8812AE_RADIOB_ARRAY; + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Radio_A:RTL8821AE_RADIOA_ARRAY %d\n",radioa_arraylen_a)); + RT_TRACE(COMP_INIT, DBG_LOUD, ("Radio No %x\n", rfpath)); + rtstatus = true; + switch (rfpath) { + case RF90_PATH_A: + for (i = 0; i < radioa_arraylen_a; i = i + 2) { + v1 = radioa_array_table_a[i]; + v2 = radioa_array_table_a[i+1]; + if (v1<0xcdcdcdcd) { + _rtl8821ae_config_rf_radio_a(hw,v1,v2); + continue; + }else{/*This line is the start line of branch.*/ + if(!_rtl8821ae_check_condition(hw,v1)){ + /*Discard the following (offset, data) pairs*/ + READ_NEXT_RF_PAIR_8812(radioa_array_table_a,v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < radioa_arraylen_a-2) + READ_NEXT_RF_PAIR_8812(radioa_array_table_a,v1, v2, i); + + i -= 2; /* prevent from for-loop += 2*/ + } else {/*Configure matched pairs and skip to end of if-else.*/ + READ_NEXT_RF_PAIR_8812(radioa_array_table_a,v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < radioa_arraylen_a -2) { + _rtl8821ae_config_rf_radio_a(hw,v1,v2); + READ_NEXT_RF_PAIR_8812(radioa_array_table_a,v1, v2, i); + } + + while (v2 != 0xDEAD && i < radioa_arraylen_a-2) + READ_NEXT_RF_PAIR_8812(radioa_array_table_a,v1, v2, i); + } + } + } + break; + case RF90_PATH_B: + for (i = 0; i < radioa_arraylen_b; i = i + 2) { + v1 = radioa_array_table_b[i]; + v2 = radioa_array_table_b[i+1]; + if (v1<0xcdcdcdcd) { + _rtl8821ae_config_rf_radio_b(hw,v1,v2); + continue; + }else{/*This line is the start line of branch.*/ + if(!_rtl8821ae_check_condition(hw,v1)){ + /*Discard the following (offset, data) pairs*/ + READ_NEXT_RF_PAIR_8812(radioa_array_table_b,v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < radioa_arraylen_b-2) + READ_NEXT_RF_PAIR_8812(radioa_array_table_b,v1, v2, i); + + i -= 2; /* prevent from for-loop += 2*/ + } else {/*Configure matched pairs and skip to end of if-else.*/ + READ_NEXT_RF_PAIR_8812(radioa_array_table_b,v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < radioa_arraylen_b-2) { + _rtl8821ae_config_rf_radio_b(hw,v1,v2); + READ_NEXT_RF_PAIR_8812(radioa_array_table_b,v1, v2, i); + } + + while (v2 != 0xDEAD && i < radioa_arraylen_b-2) + READ_NEXT_RF_PAIR_8812(radioa_array_table_b,v1, v2, i); + } + } + } + break; + case RF90_PATH_C: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("switch case not process \n")); + break; + case RF90_PATH_D: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("switch case not process \n")); + break; + } + return true; +} + + +bool rtl8821ae_phy_config_rf_with_headerfile(struct ieee80211_hw * hw, + enum radio_path rfpath) +{ + #define READ_NEXT_RF_PAIR(v1, v2, i) do { i += 2; v1 = radioa_array_table[i]; v2 = radioa_array_table[i+1]; } while(0) + + int i; + bool rtstatus = true; + u32 *radioa_array_table; + u16 radioa_arraylen; + struct rtl_priv *rtlpriv = rtl_priv(hw); + //struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u32 v1 = 0, v2 = 0; + + radioa_arraylen = RTL8821AE_RADIOA_1TARRAYLEN; + radioa_array_table = RTL8821AE_RADIOA_ARRAY; + RT_TRACE(COMP_INIT, DBG_LOUD, + ("Radio_A:RTL8821AE_RADIOA_ARRAY %d\n",radioa_arraylen)); + RT_TRACE(COMP_INIT, DBG_LOUD, ("Radio No %x\n", rfpath)); + rtstatus = true; + switch (rfpath) { + case RF90_PATH_A: + for (i = 0; i < radioa_arraylen; i = i + 2) { + v1 = radioa_array_table[i]; + v2 = radioa_array_table[i+1]; + if (v1<0xcdcdcdcd) { + _rtl8821ae_config_rf_radio_a(hw,v1,v2); + }else{/*This line is the start line of branch.*/ + if(!_rtl8821ae_check_condition(hw,v1)){ + /*Discard the following (offset, data) pairs*/ + READ_NEXT_RF_PAIR(v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < radioa_arraylen -2) + READ_NEXT_RF_PAIR(v1, v2, i); + + i -= 2; /* prevent from for-loop += 2*/ + } else {/*Configure matched pairs and skip to end of if-else.*/ + READ_NEXT_RF_PAIR(v1, v2, i); + while (v2 != 0xDEAD && + v2 != 0xCDEF && + v2 != 0xCDCD && i < radioa_arraylen -2) { + _rtl8821ae_config_rf_radio_a(hw,v1,v2); + READ_NEXT_RF_PAIR(v1, v2, i); + } + + while (v2 != 0xDEAD && i < radioa_arraylen -2) + READ_NEXT_RF_PAIR(v1, v2, i); + } + } + } + break; + + case RF90_PATH_B: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("switch case not process \n")); + break; + case RF90_PATH_C: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("switch case not process \n")); + break; + case RF90_PATH_D: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("switch case not process \n")); + break; + } + return true; +} + +void rtl8821ae_phy_get_hw_reg_originalvalue(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + rtlphy->default_initialgain[0] = + (u8) rtl_get_bbreg(hw, ROFDM0_XAAGCCORE1, MASKBYTE0); + rtlphy->default_initialgain[1] = + (u8) rtl_get_bbreg(hw, ROFDM0_XBAGCCORE1, MASKBYTE0); + rtlphy->default_initialgain[2] = + (u8) rtl_get_bbreg(hw, ROFDM0_XCAGCCORE1, MASKBYTE0); + rtlphy->default_initialgain[3] = + (u8) rtl_get_bbreg(hw, ROFDM0_XDAGCCORE1, MASKBYTE0); + + RT_TRACE(COMP_INIT, DBG_TRACE, + ("Default initial gain (c50=0x%x, " + "c58=0x%x, c60=0x%x, c68=0x%x \n", + rtlphy->default_initialgain[0], + rtlphy->default_initialgain[1], + rtlphy->default_initialgain[2], + rtlphy->default_initialgain[3])); + + rtlphy->framesync = (u8) rtl_get_bbreg(hw, + ROFDM0_RXDETECTOR3, MASKBYTE0); + rtlphy->framesync_c34 = rtl_get_bbreg(hw, + ROFDM0_RXDETECTOR2, MASKDWORD); + + RT_TRACE(COMP_INIT, DBG_TRACE, + ("Default framesync (0x%x) = 0x%x \n", + ROFDM0_RXDETECTOR3, rtlphy->framesync)); +} + +static void _rtl8821ae_phy_init_bb_rf_register_definition(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + rtlphy->phyreg_def[RF90_PATH_A].rfintfs = RFPGA0_XAB_RFINTERFACESW; + rtlphy->phyreg_def[RF90_PATH_B].rfintfs = RFPGA0_XAB_RFINTERFACESW; + + rtlphy->phyreg_def[RF90_PATH_A].rfintfo = RFPGA0_XA_RFINTERFACEOE; + rtlphy->phyreg_def[RF90_PATH_B].rfintfo = RFPGA0_XB_RFINTERFACEOE; + + rtlphy->phyreg_def[RF90_PATH_A].rfintfe = RFPGA0_XA_RFINTERFACEOE; + rtlphy->phyreg_def[RF90_PATH_B].rfintfe = RFPGA0_XB_RFINTERFACEOE; + + rtlphy->phyreg_def[RF90_PATH_A].rf3wire_offset = RA_LSSIWRITE_8821A; + rtlphy->phyreg_def[RF90_PATH_B].rf3wire_offset = RB_LSSIWRITE_8821A; + + rtlphy->phyreg_def[RF90_PATH_A].rfhssi_para2 = RHSSIREAD_8821AE; + rtlphy->phyreg_def[RF90_PATH_B].rfhssi_para2 = RHSSIREAD_8821AE; + + rtlphy->phyreg_def[RF90_PATH_A].rflssi_readback = RA_SIREAD_8821A; + rtlphy->phyreg_def[RF90_PATH_B].rflssi_readback = RB_SIREAD_8821A; + + rtlphy->phyreg_def[RF90_PATH_A].rflssi_readbackpi = RA_PIREAD_8821A; + rtlphy->phyreg_def[RF90_PATH_B].rflssi_readbackpi = RB_PIREAD_8821A; +} + +void rtl8821ae_phy_get_txpower_level(struct ieee80211_hw *hw, long *powerlevel) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 txpwr_level; + long txpwr_dbm; + + txpwr_level = rtlphy->cur_cck_txpwridx; + txpwr_dbm = _rtl8821ae_phy_txpwr_idx_to_dbm(hw, + WIRELESS_MODE_B, txpwr_level); + txpwr_level = rtlphy->cur_ofdm24g_txpwridx; + if (_rtl8821ae_phy_txpwr_idx_to_dbm(hw, + WIRELESS_MODE_G, + txpwr_level) > txpwr_dbm) + txpwr_dbm = + _rtl8821ae_phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_G, + txpwr_level); + txpwr_level = rtlphy->cur_ofdm24g_txpwridx; + if (_rtl8821ae_phy_txpwr_idx_to_dbm(hw, + WIRELESS_MODE_N_24G, + txpwr_level) > txpwr_dbm) + txpwr_dbm = + _rtl8821ae_phy_txpwr_idx_to_dbm(hw, WIRELESS_MODE_N_24G, + txpwr_level); + *powerlevel = txpwr_dbm; +} + +static bool _rtl8821ae_phy_get_chnl_index(u8 channel, u8 *chnl_index) +{ + u8 channel_5g[CHANNEL_MAX_NUMBER_5G] = + {36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,100,102,104,106,108,110,112, + 114,116,118,120,122,124,126,128,130,132,134,136,138,140,142,144,149,151, + 153,155,157,159,161,163,165,167,168,169,171,173,175,177}; + u8 i = 0; + bool in_24g = true; + + if (channel <= 14) { + in_24g = true; + *chnl_index = channel - 1; + } else { + in_24g = false; + + for (i = 0; i < sizeof(channel_5g) / sizeof(u8); ++i) { + if (channel_5g[i] == channel) { + *chnl_index = i; + return in_24g; + } + } + } + return in_24g; +} + +static char _rtl8821ae_phy_get_ratesection_intxpower_byrate(u8 path, u8 rate) +{ + char rate_section = 0; + switch (rate) { + case DESC_RATE1M: + case DESC_RATE2M: + case DESC_RATE5_5M: + case DESC_RATE11M: + rate_section = 0; + break; + + case DESC_RATE6M: + case DESC_RATE9M: + case DESC_RATE12M: + case DESC_RATE18M: + rate_section = 1; + break; + + case DESC_RATE24M: + case DESC_RATE36M: + case DESC_RATE48M: + case DESC_RATE54M: + rate_section = 2; + break; + + case DESC_RATEMCS0: + case DESC_RATEMCS1: + case DESC_RATEMCS2: + case DESC_RATEMCS3: + rate_section = 3; + break; + + case DESC_RATEMCS4: + case DESC_RATEMCS5: + case DESC_RATEMCS6: + case DESC_RATEMCS7: + rate_section = 4; + break; + + case DESC_RATEMCS8: + case DESC_RATEMCS9: + case DESC_RATEMCS10: + case DESC_RATEMCS11: + rate_section = 5; + break; + + case DESC_RATEMCS12: + case DESC_RATEMCS13: + case DESC_RATEMCS14: + case DESC_RATEMCS15: + rate_section = 6; + break; + + case DESC_RATEVHT1SS_MCS0: + case DESC_RATEVHT1SS_MCS1: + case DESC_RATEVHT1SS_MCS2: + case DESC_RATEVHT1SS_MCS3: + rate_section = 7; + break; + + case DESC_RATEVHT1SS_MCS4: + case DESC_RATEVHT1SS_MCS5: + case DESC_RATEVHT1SS_MCS6: + case DESC_RATEVHT1SS_MCS7: + rate_section = 8; + break; + + case DESC_RATEVHT1SS_MCS8: + case DESC_RATEVHT1SS_MCS9: + case DESC_RATEVHT2SS_MCS0: + case DESC_RATEVHT2SS_MCS1: + rate_section = 9; + break; + + case DESC_RATEVHT2SS_MCS2: + case DESC_RATEVHT2SS_MCS3: + case DESC_RATEVHT2SS_MCS4: + case DESC_RATEVHT2SS_MCS5: + rate_section = 10; + break; + + case DESC_RATEVHT2SS_MCS6: + case DESC_RATEVHT2SS_MCS7: + case DESC_RATEVHT2SS_MCS8: + case DESC_RATEVHT2SS_MCS9: + rate_section = 11; + break; + + default: + RT_ASSERT(true, ("Rate_Section is Illegal\n")); + break; + } + + return rate_section; +} + +static char _rtl8821ae_phy_get_txpower_by_rate(struct ieee80211_hw *hw, + u8 band, u8 path, u8 rate) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 shift = 0, rate_section, tx_num; + char tx_pwr_diff = 0; + + rate_section = _rtl8821ae_phy_get_ratesection_intxpower_byrate(path, rate); + tx_num = RF_TX_NUM_NONIMPLEMENT; + + if (tx_num == RF_TX_NUM_NONIMPLEMENT) { + if ((rate >= DESC_RATEMCS8 && rate <= DESC_RATEMCS15 ) || + (rate >= DESC_RATEVHT2SS_MCS2 && rate <= DESC_RATEVHT2SS_MCS9)) + tx_num = RF_2TX; + else + tx_num = RF_1TX; + } + + switch (rate) { + case DESC_RATE1M: shift = 0; break; + case DESC_RATE2M: shift = 8; break; + case DESC_RATE5_5M: shift = 16; break; + case DESC_RATE11M: shift = 24; break; + + case DESC_RATE6M: shift = 0; break; + case DESC_RATE9M: shift = 8; break; + case DESC_RATE12M: shift = 16; break; + case DESC_RATE18M: shift = 24; break; + + case DESC_RATE24M: shift = 0; break; + case DESC_RATE36M: shift = 8; break; + case DESC_RATE48M: shift = 16; break; + case DESC_RATE54M: shift = 24; break; + + case DESC_RATEMCS0: shift = 0; break; + case DESC_RATEMCS1: shift = 8; break; + case DESC_RATEMCS2: shift = 16; break; + case DESC_RATEMCS3: shift = 24; break; + + case DESC_RATEMCS4: shift = 0; break; + case DESC_RATEMCS5: shift = 8; break; + case DESC_RATEMCS6: shift = 16; break; + case DESC_RATEMCS7: shift = 24; break; + + case DESC_RATEMCS8: shift = 0; break; + case DESC_RATEMCS9: shift = 8; break; + case DESC_RATEMCS10: shift = 16; break; + case DESC_RATEMCS11: shift = 24; break; + + case DESC_RATEMCS12: shift = 0; break; + case DESC_RATEMCS13: shift = 8; break; + case DESC_RATEMCS14: shift = 16; break; + case DESC_RATEMCS15: shift = 24; break; + + case DESC_RATEVHT1SS_MCS0: shift = 0; break; + case DESC_RATEVHT1SS_MCS1: shift = 8; break; + case DESC_RATEVHT1SS_MCS2: shift = 16; break; + case DESC_RATEVHT1SS_MCS3: shift = 24; break; + + case DESC_RATEVHT1SS_MCS4: shift = 0; break; + case DESC_RATEVHT1SS_MCS5: shift = 8; break; + case DESC_RATEVHT1SS_MCS6: shift = 16; break; + case DESC_RATEVHT1SS_MCS7: shift = 24; break; + + case DESC_RATEVHT1SS_MCS8: shift = 0; break; + case DESC_RATEVHT1SS_MCS9: shift = 8; break; + case DESC_RATEVHT2SS_MCS0: shift = 16; break; + case DESC_RATEVHT2SS_MCS1: shift = 24; break; + + case DESC_RATEVHT2SS_MCS2: shift = 0; break; + case DESC_RATEVHT2SS_MCS3: shift = 8; break; + case DESC_RATEVHT2SS_MCS4: shift = 16; break; + case DESC_RATEVHT2SS_MCS5: shift = 24; break; + + case DESC_RATEVHT2SS_MCS6: shift = 0; break; + case DESC_RATEVHT2SS_MCS7: shift = 8; break; + case DESC_RATEVHT2SS_MCS8: shift = 16; break; + case DESC_RATEVHT2SS_MCS9: shift = 24; break; + + default: + RT_ASSERT(true, ("Rate_Section is Illegal\n")); + break; + } + + tx_pwr_diff = (u8) (rtlphy->tx_power_by_rate_offset[band][path][tx_num][rate_section] >> shift) & 0xff; + + return tx_pwr_diff; +} + +static u8 _rtl8821ae_get_txpower_index(struct ieee80211_hw *hw, u8 path, + u8 rate, u8 bandwidth, u8 channel) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + u8 index = (channel - 1); + u8 txpower = 0; + bool in_24g = false; + char powerdiff_byrate = 0; + + if (((rtlhal->current_bandtype == BAND_ON_2_4G) && (channel > 14 || channel < 1)) || + ((rtlhal->current_bandtype == BAND_ON_5G) && (channel <= 14))) { + index = 0; + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, ("Illegal channel!!\n")); + } + + in_24g = _rtl8821ae_phy_get_chnl_index(channel, &index); + if (in_24g) { + if (RX_HAL_IS_CCK_RATE(rate)) + txpower = rtlefuse->txpwrlevel_cck[path][index]; + else if ( DESC_RATE6M <= rate ) + txpower = rtlefuse->txpwrlevel_ht40_1s[path][index]; + else + RT_TRACE(COMP_POWER_TRACKING, DBG_LOUD, ("invalid rate\n")); + + if (DESC_RATE6M <= rate && rate <= DESC_RATE54M && !RX_HAL_IS_CCK_RATE(rate)) + txpower += rtlefuse->txpwr_legacyhtdiff[path][TX_1S]; + + if (bandwidth == HT_CHANNEL_WIDTH_20) { + if ((DESC_RATEMCS0 <= rate && rate <= DESC_RATEMCS15) || + (DESC_RATEVHT1SS_MCS0 <= rate && rate <= DESC_RATEVHT2SS_MCS9)) + txpower += rtlefuse->txpwr_ht20diff[path][TX_1S]; + if ((DESC_RATEMCS8 <= rate && rate <= DESC_RATEMCS15) || + (DESC_RATEVHT2SS_MCS0 <= rate && rate <= DESC_RATEVHT2SS_MCS9)) + txpower += rtlefuse->txpwr_ht20diff[path][TX_2S]; + } else if (bandwidth == HT_CHANNEL_WIDTH_20_40) { + if ((DESC_RATEMCS0 <= rate && rate <= DESC_RATEMCS15) || + (DESC_RATEVHT1SS_MCS0 <= rate && rate <= DESC_RATEVHT2SS_MCS9)) + txpower += rtlefuse->txpwr_ht40diff[path][TX_1S]; + if ((DESC_RATEMCS8 <= rate && rate <= DESC_RATEMCS15) || + (DESC_RATEVHT2SS_MCS0 <= rate && rate <= DESC_RATEVHT2SS_MCS9)) + txpower += rtlefuse->txpwr_ht40diff[path][TX_2S]; + } else if (bandwidth == HT_CHANNEL_WIDTH_80) { + if ((DESC_RATEMCS0 <= rate && rate <= DESC_RATEMCS15) || + (DESC_RATEVHT1SS_MCS0 <= rate && rate <= DESC_RATEVHT2SS_MCS9)) + txpower += rtlefuse->txpwr_ht40diff[path][TX_1S]; + if ((DESC_RATEMCS8 <= rate && rate <= DESC_RATEMCS15) || + (DESC_RATEVHT2SS_MCS0 <= rate && rate <= DESC_RATEVHT2SS_MCS9)) + txpower += rtlefuse->txpwr_ht40diff[path][TX_2S]; + } + + } else { + if (DESC_RATE6M <= rate) + txpower = rtlefuse->txpwr_5g_bw40base[path][index]; + else + RT_TRACE(COMP_POWER_TRACKING, DBG_WARNING,("INVALID Rate.\n")); + + if (DESC_RATE6M <= rate && rate <= DESC_RATE54M && !RX_HAL_IS_CCK_RATE(rate)) + txpower += rtlefuse->txpwr_5g_ofdmdiff[path][TX_1S]; + + if (bandwidth == HT_CHANNEL_WIDTH_20) { + if ((DESC_RATEMCS0 <= rate && rate <= DESC_RATEMCS15) || + (DESC_RATEVHT1SS_MCS0 <= rate && rate <= DESC_RATEVHT2SS_MCS9)) + txpower += rtlefuse->txpwr_5g_bw20diff[path][TX_1S]; + if ((DESC_RATEMCS8 <= rate && rate <= DESC_RATEMCS15) || + (DESC_RATEVHT2SS_MCS0 <= rate && rate <= DESC_RATEVHT2SS_MCS9)) + txpower += rtlefuse->txpwr_5g_bw20diff[path][TX_2S]; + } else if (bandwidth == HT_CHANNEL_WIDTH_20_40) { + if ((DESC_RATEMCS0 <= rate && rate <= DESC_RATEMCS15) || + (DESC_RATEVHT1SS_MCS0 <= rate && rate <= DESC_RATEVHT2SS_MCS9)) + txpower += rtlefuse->txpwr_5g_bw40diff[path][TX_1S]; + if ((DESC_RATEMCS8 <= rate && rate <= DESC_RATEMCS15) || + (DESC_RATEVHT2SS_MCS0 <= rate && rate <= DESC_RATEVHT2SS_MCS9)) + txpower += rtlefuse->txpwr_5g_bw40diff[path][TX_2S]; + } else if (bandwidth == HT_CHANNEL_WIDTH_80) { + u8 channel_5g_80m[CHANNEL_MAX_NUMBER_5G_80M] = {42, 58, 106, 122, 138, 155, 171}; + u8 i = 0; + for (i = 0; i < sizeof(channel_5g_80m) / sizeof(u8); ++i) + if (channel_5g_80m[i] == channel) + index = i; + + if ((DESC_RATEMCS0 <= rate && rate <= DESC_RATEMCS15) || + (DESC_RATEVHT1SS_MCS0 <= rate && rate <= DESC_RATEVHT2SS_MCS9)) + txpower = rtlefuse->txpwr_5g_bw80base[path][index] + + rtlefuse->txpwr_5g_bw80diff[path][TX_1S]; + if ((DESC_RATEMCS8 <= rate && rate <= DESC_RATEMCS15) || + (DESC_RATEVHT2SS_MCS0 <= rate && rate <= DESC_RATEVHT2SS_MCS9)) + txpower = rtlefuse->txpwr_5g_bw80base[path][index] + + rtlefuse->txpwr_5g_bw80diff[path][TX_1S] + + rtlefuse->txpwr_5g_bw80diff[path][TX_2S]; + } + } + if (rtlefuse->eeprom_regulatory != 2) + powerdiff_byrate = _rtl8821ae_phy_get_txpower_by_rate(hw, + (u8)(!in_24g), path, rate); + + if (rate == DESC_RATEVHT1SS_MCS8 || rate == DESC_RATEVHT1SS_MCS9 || + rate == DESC_RATEVHT2SS_MCS8 || rate == DESC_RATEVHT2SS_MCS9) + txpower -= powerdiff_byrate; + else + txpower += powerdiff_byrate; + + if (rate > DESC_RATE11M) + txpower += rtlpriv->dm.remnant_ofdm_swing_idx[path]; + else + txpower += rtlpriv->dm.remnant_cck_idx; + + if (txpower > MAX_POWER_INDEX) + txpower = MAX_POWER_INDEX; + + return txpower; +} + +static void _rtl8821ae_phy_set_txpower_index(struct ieee80211_hw *hw, + u8 power_index, u8 path, u8 rate) +{ + struct rtl_priv* rtlpriv = rtl_priv(hw); + + if (path == RF90_PATH_A) { + switch (rate) { + case DESC_RATE1M: + rtl_set_bbreg(hw, RTXAGC_A_CCK11_CCK1, MASKBYTE0, power_index); + break; + case DESC_RATE2M: + rtl_set_bbreg(hw, RTXAGC_A_CCK11_CCK1, MASKBYTE1, power_index); + break; + case DESC_RATE5_5M: + rtl_set_bbreg(hw, RTXAGC_A_CCK11_CCK1, MASKBYTE2, power_index); + break; + case DESC_RATE11M: + rtl_set_bbreg(hw, RTXAGC_A_CCK11_CCK1, MASKBYTE3, power_index); + break; + + case DESC_RATE6M: + rtl_set_bbreg(hw, RTXAGC_A_OFDM18_OFDM6, MASKBYTE0, power_index); + break; + case DESC_RATE9M: + rtl_set_bbreg(hw, RTXAGC_A_OFDM18_OFDM6, MASKBYTE1, power_index); + break; + case DESC_RATE12M: + rtl_set_bbreg(hw, RTXAGC_A_OFDM18_OFDM6, MASKBYTE2, power_index); + break; + case DESC_RATE18M: + rtl_set_bbreg(hw, RTXAGC_A_OFDM18_OFDM6, MASKBYTE3, power_index); + break; + + case DESC_RATE24M: + rtl_set_bbreg(hw, RTXAGC_A_OFDM54_OFDM24, MASKBYTE0, power_index); + break; + case DESC_RATE36M: + rtl_set_bbreg(hw, RTXAGC_A_OFDM54_OFDM24, MASKBYTE1, power_index); + break; + case DESC_RATE48M: + rtl_set_bbreg(hw, RTXAGC_A_OFDM54_OFDM24, MASKBYTE2, power_index); + break; + case DESC_RATE54M: + rtl_set_bbreg(hw, RTXAGC_A_OFDM54_OFDM24, MASKBYTE3, power_index); + break; + + case DESC_RATEMCS0: + rtl_set_bbreg(hw, RTXAGC_A_MCS03_MCS00, MASKBYTE0, power_index); + break; + case DESC_RATEMCS1: + rtl_set_bbreg(hw, RTXAGC_A_MCS03_MCS00, MASKBYTE1, power_index); + break; + case DESC_RATEMCS2: + rtl_set_bbreg(hw, RTXAGC_A_MCS03_MCS00, MASKBYTE2, power_index); + break; + case DESC_RATEMCS3: + rtl_set_bbreg(hw, RTXAGC_A_MCS03_MCS00, MASKBYTE3, power_index); + break; + + case DESC_RATEMCS4: + rtl_set_bbreg(hw, RTXAGC_A_MCS07_MCS04, MASKBYTE0, power_index); + break; + case DESC_RATEMCS5: + rtl_set_bbreg(hw, RTXAGC_A_MCS07_MCS04, MASKBYTE1, power_index); + break; + case DESC_RATEMCS6: + rtl_set_bbreg(hw, RTXAGC_A_MCS07_MCS04, MASKBYTE2, power_index); + break; + case DESC_RATEMCS7: + rtl_set_bbreg(hw, RTXAGC_A_MCS07_MCS04, MASKBYTE3, power_index); + break; + + case DESC_RATEMCS8: + rtl_set_bbreg(hw, RTXAGC_A_MCS11_MCS08, MASKBYTE0, power_index); + break; + case DESC_RATEMCS9: + rtl_set_bbreg(hw, RTXAGC_A_MCS11_MCS08, MASKBYTE1, power_index); + break; + case DESC_RATEMCS10: + rtl_set_bbreg(hw, RTXAGC_A_MCS11_MCS08, MASKBYTE2, power_index); + break; + case DESC_RATEMCS11: + rtl_set_bbreg(hw, RTXAGC_A_MCS11_MCS08, MASKBYTE3, power_index); + break; + + case DESC_RATEMCS12: + rtl_set_bbreg(hw, RTXAGC_A_MCS15_MCS12, MASKBYTE0, power_index); + break; + case DESC_RATEMCS13: + rtl_set_bbreg(hw, RTXAGC_A_MCS15_MCS12, MASKBYTE1, power_index); + break; + case DESC_RATEMCS14: + rtl_set_bbreg(hw, RTXAGC_A_MCS15_MCS12, MASKBYTE2, power_index); + break; + case DESC_RATEMCS15: + rtl_set_bbreg(hw, RTXAGC_A_MCS15_MCS12, MASKBYTE3, power_index); + break; + + case DESC_RATEVHT1SS_MCS0: + rtl_set_bbreg(hw, RTXAGC_A_NSS1INDEX3_NSS1INDEX0, MASKBYTE0, power_index); + break; + case DESC_RATEVHT1SS_MCS1: + rtl_set_bbreg(hw, RTXAGC_A_NSS1INDEX3_NSS1INDEX0, MASKBYTE1, power_index); + break; + case DESC_RATEVHT1SS_MCS2: + rtl_set_bbreg(hw, RTXAGC_A_NSS1INDEX3_NSS1INDEX0, MASKBYTE2, power_index); + break; + case DESC_RATEVHT1SS_MCS3: + rtl_set_bbreg(hw, RTXAGC_A_NSS1INDEX3_NSS1INDEX0, MASKBYTE3, power_index); + break; + + case DESC_RATEVHT1SS_MCS4: + rtl_set_bbreg(hw, RTXAGC_A_NSS1INDEX7_NSS1INDEX4, MASKBYTE0, power_index); + break; + case DESC_RATEVHT1SS_MCS5: + rtl_set_bbreg(hw, RTXAGC_A_NSS1INDEX7_NSS1INDEX4, MASKBYTE1, power_index); + break; + case DESC_RATEVHT1SS_MCS6: + rtl_set_bbreg(hw, RTXAGC_A_NSS1INDEX7_NSS1INDEX4, MASKBYTE2, power_index); + break; + case DESC_RATEVHT1SS_MCS7: + rtl_set_bbreg(hw, RTXAGC_A_NSS1INDEX7_NSS1INDEX4, MASKBYTE3, power_index); + break; + + case DESC_RATEVHT1SS_MCS8: + rtl_set_bbreg(hw, RTXAGC_A_NSS2INDEX1_NSS1INDEX8, MASKBYTE0, power_index); + break; + case DESC_RATEVHT1SS_MCS9: + rtl_set_bbreg(hw, RTXAGC_A_NSS2INDEX1_NSS1INDEX8, MASKBYTE1, power_index); + break; + case DESC_RATEVHT2SS_MCS0: + rtl_set_bbreg(hw, RTXAGC_A_NSS2INDEX1_NSS1INDEX8, MASKBYTE2, power_index); + break; + case DESC_RATEVHT2SS_MCS1: + rtl_set_bbreg(hw, RTXAGC_A_NSS2INDEX1_NSS1INDEX8, MASKBYTE3, power_index); + break; + + case DESC_RATEVHT2SS_MCS2: + rtl_set_bbreg(hw, RTXAGC_A_NSS2INDEX5_NSS2INDEX2, MASKBYTE0, power_index); + break; + case DESC_RATEVHT2SS_MCS3: + rtl_set_bbreg(hw, RTXAGC_A_NSS2INDEX5_NSS2INDEX2, MASKBYTE1, power_index); + break; + case DESC_RATEVHT2SS_MCS4: + rtl_set_bbreg(hw, RTXAGC_A_NSS2INDEX5_NSS2INDEX2, MASKBYTE2, power_index); + break; + case DESC_RATEVHT2SS_MCS5: + rtl_set_bbreg(hw, RTXAGC_A_NSS2INDEX5_NSS2INDEX2, MASKBYTE3, power_index); + break; + + case DESC_RATEVHT2SS_MCS6: + rtl_set_bbreg(hw, RTXAGC_A_NSS2INDEX9_NSS2INDEX6, MASKBYTE0, power_index); + break; + case DESC_RATEVHT2SS_MCS7: + rtl_set_bbreg(hw, RTXAGC_A_NSS2INDEX9_NSS2INDEX6, MASKBYTE1, power_index); + break; + case DESC_RATEVHT2SS_MCS8: + rtl_set_bbreg(hw, RTXAGC_A_NSS2INDEX9_NSS2INDEX6, MASKBYTE2, power_index); + break; + case DESC_RATEVHT2SS_MCS9: + rtl_set_bbreg(hw, RTXAGC_A_NSS2INDEX9_NSS2INDEX6, MASKBYTE3, power_index); + break; + + default: + RT_TRACE(COMP_POWER, DBG_LOUD, ("Invalid Rate!!\n")); + break; + } + } else if (path == RF90_PATH_B) { + switch (rate) { + case DESC_RATE1M: + rtl_set_bbreg(hw, RTXAGC_B_CCK11_CCK1, MASKBYTE0, power_index); + break; + case DESC_RATE2M: + rtl_set_bbreg(hw, RTXAGC_B_CCK11_CCK1, MASKBYTE1, power_index); + break; + case DESC_RATE5_5M: + rtl_set_bbreg(hw, RTXAGC_B_CCK11_CCK1, MASKBYTE2, power_index); + break; + case DESC_RATE11M: + rtl_set_bbreg(hw, RTXAGC_B_CCK11_CCK1, MASKBYTE3, power_index); + break; + + case DESC_RATE6M: + rtl_set_bbreg(hw, RTXAGC_B_OFDM18_OFDM6, MASKBYTE0, power_index); + break; + case DESC_RATE9M: + rtl_set_bbreg(hw, RTXAGC_B_OFDM18_OFDM6, MASKBYTE1, power_index); + break; + case DESC_RATE12M: + rtl_set_bbreg(hw, RTXAGC_B_OFDM18_OFDM6, MASKBYTE2, power_index); + break; + case DESC_RATE18M: + rtl_set_bbreg(hw, RTXAGC_B_OFDM18_OFDM6, MASKBYTE3, power_index); + break; + + case DESC_RATE24M: + rtl_set_bbreg(hw, RTXAGC_B_OFDM54_OFDM24, MASKBYTE0, power_index); + break; + case DESC_RATE36M: + rtl_set_bbreg(hw, RTXAGC_B_OFDM54_OFDM24, MASKBYTE1, power_index); + break; + case DESC_RATE48M: + rtl_set_bbreg(hw, RTXAGC_B_OFDM54_OFDM24, MASKBYTE2, power_index); + break; + case DESC_RATE54M: + rtl_set_bbreg(hw, RTXAGC_B_OFDM54_OFDM24, MASKBYTE3, power_index); + break; + + case DESC_RATEMCS0: + rtl_set_bbreg(hw, RTXAGC_B_MCS03_MCS00, MASKBYTE0, power_index); + break; + case DESC_RATEMCS1: + rtl_set_bbreg(hw, RTXAGC_B_MCS03_MCS00, MASKBYTE1, power_index); + break; + case DESC_RATEMCS2: + rtl_set_bbreg(hw, RTXAGC_B_MCS03_MCS00, MASKBYTE2, power_index); + break; + case DESC_RATEMCS3: + rtl_set_bbreg(hw, RTXAGC_B_MCS03_MCS00, MASKBYTE3, power_index); + break; + + case DESC_RATEMCS4: + rtl_set_bbreg(hw, RTXAGC_B_MCS07_MCS04, MASKBYTE0, power_index); + break; + case DESC_RATEMCS5: + rtl_set_bbreg(hw, RTXAGC_B_MCS07_MCS04, MASKBYTE1, power_index); + break; + case DESC_RATEMCS6: + rtl_set_bbreg(hw, RTXAGC_B_MCS07_MCS04, MASKBYTE2, power_index); + break; + case DESC_RATEMCS7: + rtl_set_bbreg(hw, RTXAGC_B_MCS07_MCS04, MASKBYTE3, power_index); + break; + + case DESC_RATEMCS8: + rtl_set_bbreg(hw, RTXAGC_B_MCS11_MCS08, MASKBYTE0, power_index); + break; + case DESC_RATEMCS9: + rtl_set_bbreg(hw, RTXAGC_B_MCS11_MCS08, MASKBYTE1, power_index); + break; + case DESC_RATEMCS10: + rtl_set_bbreg(hw, RTXAGC_B_MCS11_MCS08, MASKBYTE2, power_index); + break; + case DESC_RATEMCS11: + rtl_set_bbreg(hw, RTXAGC_B_MCS11_MCS08, MASKBYTE3, power_index); + break; + + case DESC_RATEMCS12: + rtl_set_bbreg(hw, RTXAGC_B_MCS15_MCS12, MASKBYTE0, power_index); + break; + case DESC_RATEMCS13: + rtl_set_bbreg(hw, RTXAGC_B_MCS15_MCS12, MASKBYTE1, power_index); + break; + case DESC_RATEMCS14: + rtl_set_bbreg(hw, RTXAGC_B_MCS15_MCS12, MASKBYTE2, power_index); + break; + case DESC_RATEMCS15: + rtl_set_bbreg(hw, RTXAGC_B_MCS15_MCS12, MASKBYTE3, power_index); + break; + + case DESC_RATEVHT1SS_MCS0: + rtl_set_bbreg(hw, RTXAGC_B_NSS1INDEX3_NSS1INDEX0, MASKBYTE0, power_index); + break; + case DESC_RATEVHT1SS_MCS1: + rtl_set_bbreg(hw, RTXAGC_B_NSS1INDEX3_NSS1INDEX0, MASKBYTE1, power_index); + break; + case DESC_RATEVHT1SS_MCS2: + rtl_set_bbreg(hw, RTXAGC_B_NSS1INDEX3_NSS1INDEX0, MASKBYTE2, power_index); + break; + case DESC_RATEVHT1SS_MCS3: + rtl_set_bbreg(hw, RTXAGC_B_NSS1INDEX3_NSS1INDEX0, MASKBYTE3, power_index); + break; + + case DESC_RATEVHT1SS_MCS4: + rtl_set_bbreg(hw, RTXAGC_B_NSS1INDEX7_NSS1INDEX4, MASKBYTE0, power_index); + break; + case DESC_RATEVHT1SS_MCS5: + rtl_set_bbreg(hw, RTXAGC_B_NSS1INDEX7_NSS1INDEX4, MASKBYTE1, power_index); + break; + case DESC_RATEVHT1SS_MCS6: + rtl_set_bbreg(hw, RTXAGC_B_NSS1INDEX7_NSS1INDEX4, MASKBYTE2, power_index); + break; + case DESC_RATEVHT1SS_MCS7: + rtl_set_bbreg(hw, RTXAGC_B_NSS1INDEX7_NSS1INDEX4, MASKBYTE3, power_index); + break; + + case DESC_RATEVHT1SS_MCS8: + rtl_set_bbreg(hw, RTXAGC_B_NSS2INDEX1_NSS1INDEX8, MASKBYTE0, power_index); + break; + case DESC_RATEVHT1SS_MCS9: + rtl_set_bbreg(hw, RTXAGC_B_NSS2INDEX1_NSS1INDEX8, MASKBYTE1, power_index); + break; + case DESC_RATEVHT2SS_MCS0: + rtl_set_bbreg(hw, RTXAGC_B_NSS2INDEX1_NSS1INDEX8, MASKBYTE2, power_index); + break; + case DESC_RATEVHT2SS_MCS1: + rtl_set_bbreg(hw, RTXAGC_B_NSS2INDEX1_NSS1INDEX8, MASKBYTE3, power_index); + break; + + case DESC_RATEVHT2SS_MCS2: + rtl_set_bbreg(hw, RTXAGC_B_NSS2INDEX5_NSS2INDEX2, MASKBYTE0, power_index); + break; + case DESC_RATEVHT2SS_MCS3: + rtl_set_bbreg(hw, RTXAGC_B_NSS2INDEX5_NSS2INDEX2, MASKBYTE1, power_index); + break; + case DESC_RATEVHT2SS_MCS4: + rtl_set_bbreg(hw, RTXAGC_B_NSS2INDEX5_NSS2INDEX2, MASKBYTE2, power_index); + break; + case DESC_RATEVHT2SS_MCS5: + rtl_set_bbreg(hw, RTXAGC_B_NSS2INDEX5_NSS2INDEX2, MASKBYTE3, power_index); + break; + + case DESC_RATEVHT2SS_MCS6: + rtl_set_bbreg(hw, RTXAGC_B_NSS2INDEX9_NSS2INDEX6, MASKBYTE0, power_index); + break; + case DESC_RATEVHT2SS_MCS7: + rtl_set_bbreg(hw, RTXAGC_B_NSS2INDEX9_NSS2INDEX6, MASKBYTE1, power_index); + break; + case DESC_RATEVHT2SS_MCS8: + rtl_set_bbreg(hw, RTXAGC_B_NSS2INDEX9_NSS2INDEX6, MASKBYTE2, power_index); + break; + case DESC_RATEVHT2SS_MCS9: + rtl_set_bbreg(hw, RTXAGC_B_NSS2INDEX9_NSS2INDEX6, MASKBYTE3, power_index); + break; + + default: + RT_TRACE(COMP_POWER, DBG_LOUD, ("Invalid Rate!!\n")); + break; + } + } else { + RT_TRACE(COMP_POWER, DBG_LOUD, ("Invalid RFPath!!\n")); + } +} + +void _rtl8821ae_phy_set_txpower_level_by_path(struct ieee80211_hw *hw, + u8 *array, u8 path, u8 channel, + u8 size) +{ + struct rtl_phy *rtlphy = &(rtl_priv(hw)->phy); + u8 i; + u8 power_index; + for (i = 0; i < size; i ++) { + power_index = _rtl8821ae_get_txpower_index(hw, path, array[i], + rtlphy->current_chan_bw, channel); + _rtl8821ae_phy_set_txpower_index(hw, power_index, path, array[i]); + } +} + +static void _rtl8821ae_phy_txpower_training_by_path(struct ieee80211_hw *hw, + u8 bw, u8 channel, u8 path) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + u8 i; + u32 power_level, data, offset; + + if(path >= rtlphy->num_total_rfpath) + return; + + data = 0; + if (path == RF90_PATH_A) { + power_level = + _rtl8821ae_get_txpower_index(hw, RF90_PATH_A, + DESC_RATEMCS7, bw, channel); + offset = RA_TXPWRTRAING; + } else { + power_level = + _rtl8821ae_get_txpower_index(hw, RF90_PATH_A, + DESC_RATEMCS7, bw, channel); + offset = RB_TXPWRTRAING; + } + + for (i = 0; i < 3; i++) { + if (i == 0) + power_level = power_level - 10; + else if (i == 1) + power_level = power_level - 8; + else + power_level = power_level - 6; + + data |= (((power_level > 2) ? (power_level) : 2) << (i * 8)); + } + rtl_set_bbreg(hw, offset, 0xffffff, data); +} + +void rtl8821ae_phy_set_txpower_level_by_path(struct ieee80211_hw *hw, u8 channel, u8 path) +{ + //struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_phy *rtlphy = &(rtl_priv(hw)->phy); + u8 cck_rates[] = {DESC_RATE1M, DESC_RATE2M, DESC_RATE5_5M, DESC_RATE11M}; + u8 ofdm_rates[] = {DESC_RATE6M, DESC_RATE9M, DESC_RATE12M, DESC_RATE18M, + DESC_RATE24M, DESC_RATE36M, DESC_RATE48M, DESC_RATE54M}; + u8 ht_rates_1t[] = {DESC_RATEMCS0, DESC_RATEMCS1, DESC_RATEMCS2, DESC_RATEMCS3, + DESC_RATEMCS4, DESC_RATEMCS5, DESC_RATEMCS6, DESC_RATEMCS7}; + u8 ht_rates_2t[] = {DESC_RATEMCS8, DESC_RATEMCS9, DESC_RATEMCS10, DESC_RATEMCS11, + DESC_RATEMCS12, DESC_RATEMCS13, DESC_RATEMCS14, DESC_RATEMCS15}; + u8 vht_rates_1t[] = {DESC_RATEVHT1SS_MCS0, DESC_RATEVHT1SS_MCS1, DESC_RATEVHT1SS_MCS2, + DESC_RATEVHT1SS_MCS3, DESC_RATEVHT1SS_MCS4, + DESC_RATEVHT1SS_MCS5, DESC_RATEVHT1SS_MCS6, DESC_RATEVHT1SS_MCS7, + DESC_RATEVHT1SS_MCS8, DESC_RATEVHT1SS_MCS9}; + u8 vht_rates_2t[] = {DESC_RATEVHT2SS_MCS0, DESC_RATEVHT2SS_MCS1, DESC_RATEVHT2SS_MCS2, + DESC_RATEVHT2SS_MCS3, DESC_RATEVHT2SS_MCS4, + DESC_RATEVHT2SS_MCS5, DESC_RATEVHT2SS_MCS6, DESC_RATEVHT2SS_MCS7, + DESC_RATEVHT2SS_MCS8, DESC_RATEVHT2SS_MCS9}; + //u8 i,size; + //u8 power_index; + + if (rtlhal->current_bandtype == BAND_ON_2_4G) + _rtl8821ae_phy_set_txpower_level_by_path(hw,cck_rates,path,channel, + sizeof(cck_rates) / sizeof(u8)); + + _rtl8821ae_phy_set_txpower_level_by_path(hw,ofdm_rates,path,channel, + sizeof(ofdm_rates) / sizeof(u8)); + _rtl8821ae_phy_set_txpower_level_by_path(hw,ht_rates_1t,path,channel, + sizeof(ht_rates_1t) / sizeof(u8)); + _rtl8821ae_phy_set_txpower_level_by_path(hw,vht_rates_1t,path,channel, + sizeof(vht_rates_1t) / sizeof(u8)); + + if (rtlphy->num_total_rfpath >= 2) { + _rtl8821ae_phy_set_txpower_level_by_path(hw,ht_rates_2t,path,channel, + sizeof(ht_rates_2t) / sizeof(u8)); + _rtl8821ae_phy_set_txpower_level_by_path(hw,vht_rates_2t,path,channel, + sizeof(vht_rates_2t) / sizeof(u8)); + } + + _rtl8821ae_phy_txpower_training_by_path(hw, rtlphy->current_chan_bw, channel, path); +} +/*just in case, write txpower in DW, to reduce time*/ +#if 0 +void _rtl8821ae_phy_get_txpower_index_by_rate_array(struct ieee80211_hw *hw, u8 channel, + u8 *rate, u8 path, u8 bw, u8 *power_index, u8 size) +{ + u8 i; + for (i = 0; i < size; i++) + power_index[i] = _rtl8821ae_get_txpower_index(hw, path, rate[i], bw, channel); +} + +void rtl8821ae_phy_set_txpower_level_by_path2(struct ieee80211_hw *hw, u8 channel, u8 path) +{ + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_phy *rtlphy = &(rtl_priv(hw)->phy); + u8 cck_rates[] = {DESC_RATE1M, DESC_RATE2M, DESC_RATE5_5M, DESC_RATE11M}; + u8 ofdm_rates[] = {DESC_RATE6M, DESC_RATE9M, DESC_RATE12M, DESC_RATE18M, + DESC_RATE24M, DESC_RATE36M, DESC_RATE48M, DESC_RATE54M}; + u8 ht_rates_1t[] = {DESC_RATEMCS0, DESC_RATEMCS1, DESC_RATEMCS2, DESC_RATEMCS3, + DESC_RATEMCS4, DESC_RATEMCS5, DESC_RATEMCS6, DESC_RATEMCS7}; + u8 ht_rates_2t[] = {DESC_RATEMCS8, DESC_RATEMCS9, DESC_RATEMCS10, DESC_RATEMCS11, + DESC_RATEMCS12, DESC_RATEMCS13, DESC_RATEMCS14, DESC_RATEMCS15}; + u8 vht_rates_1t[] = {DESC_RATEVHT1SS_MCS0, DESC_RATEVHT1SS_MCS1, DESC_RATEVHT1SS_MCS2, DESC_RATEVHT1SS_MCS3, DESC_RATEVHT1SS_MCS4, + DESC_RATEVHT1SS_MCS5, DESC_RATEVHT1SS_MCS6, DESC_RATEVHT1SS_MCS7, DESC_RATEVHT1SS_MCS8, DESC_RATEVHT1SS_MCS9}; + u8 vht_rates_2t[] = {DESC_RATEVHT2SS_MCS0, DESC_RATEVHT2SS_MCS1, DESC_RATEVHT2SS_MCS2, DESC_RATEVHT2SS_MCS3, DESC_RATEVHT2SS_MCS4, + DESC_RATEVHT2SS_MCS5, DESC_RATEVHT2SS_MCS6, DESC_RATEVHT2SS_MCS7, DESC_RATEVHT2SS_MCS8, DESC_RATEVHT2SS_MCS9}; + u8 i, j; + u8 pwridx[48] = {0}; + u8 cs = sizeof(cck_rates) / sizeof(u8); + u8 os = sizeof(ofdm_rates) / sizeof(u8); + u8 h1s = sizeof(ht_rates_1t) / sizeof(u8); + u8 h2s = sizeof(ht_rates_2t) / sizeof(u8); + u8 v1s = sizeof(vht_rates_1t) / sizeof(u8); + u8 v2s = sizeof(vht_rates_2t) / sizeof(u8); + + u8 len, start; + u32 reg_addr, power_index; + u8 bw = rtlphy->current_chan_bw; + + _rtl8821ae_phy_get_txpower_index_by_rate_array(hw, channel, + ofdm_rates, path, bw, &pwridx[cs], os); + + _rtl8821ae_phy_get_txpower_index_by_rate_array(hw, channel, + ht_rates_1t, path, bw, &pwridx[cs+os], h1s); + + _rtl8821ae_phy_get_txpower_index_by_rate_array(hw, channel, + vht_rates_1t, path, bw, &pwridx[cs+os+h1s+h2s], v1s); + + + if (rtlhal->current_bandtype == BAND_ON_2_4G) { + _rtl8821ae_phy_get_txpower_index_by_rate_array(hw, channel, + cck_rates, path, bw, pwridx, cs); + + start = 0; + } else { + start = cs; + } + + reg_addr = (path == 0) ? RTXAGC_A_CCK11_CCK1 : RTXAGC_B_CCK11_CCK1; + reg_addr += start; + + len = cs + os + h1s + h2s + v1s; + if (rtlphy->num_total_rfpath >= 2) { + _rtl8821ae_phy_get_txpower_index_by_rate_array(hw, channel, + ht_rates_2t, path, bw, &pwridx[cs+os+h1s], h2s); + + _rtl8821ae_phy_get_txpower_index_by_rate_array(hw, channel, + vht_rates_2t, path, bw, &pwridx[cs+os+h1s+h2s+v1s], v2s); + + len += v2s; + } + for (i = start; i < len; i += 4) { + power_index = 0; + for (j = 0; j < 4; j++) + power_index |= (pwridx[i+j] << (j*8)); + rtl_set_bbreg(hw, reg_addr + i, MASKDWORD, power_index); + } + + _rtl8821ae_phy_txpower_training_by_path(hw, rtlphy->current_chan_bw, channel, path); +} +#endif + +void rtl8821ae_phy_set_txpower_level(struct ieee80211_hw *hw, u8 channel) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 path = 0; + + for (path = RF90_PATH_A; path < rtlphy->num_total_rfpath; ++path ) + rtl8821ae_phy_set_txpower_level_by_path(hw, channel, path); +} + +static long _rtl8821ae_phy_txpwr_idx_to_dbm(struct ieee80211_hw *hw, + enum wireless_mode wirelessmode, + u8 txpwridx) +{ + long offset; + long pwrout_dbm; + + switch (wirelessmode) { + case WIRELESS_MODE_B: + offset = -7; + break; + case WIRELESS_MODE_G: + case WIRELESS_MODE_N_24G: + offset = -8; + break; + default: + offset = -8; + break; + } + pwrout_dbm = txpwridx / 2 + offset; + return pwrout_dbm; +} + +void rtl8821ae_phy_scan_operation_backup(struct ieee80211_hw *hw, u8 operation) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + enum io_type iotype = IO_CMD_PAUSE_BAND0_DM_BY_SCAN; + + if (!is_hal_stop(rtlhal)) { + switch (operation) { + case SCAN_OPT_BACKUP_BAND0: + iotype = IO_CMD_PAUSE_BAND0_DM_BY_SCAN; + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_IO_CMD, + (u8 *) & iotype); + + break; + case SCAN_OPT_BACKUP_BAND1: + iotype = IO_CMD_PAUSE_BAND1_DM_BY_SCAN; + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_IO_CMD, + (u8 *) & iotype); + + break; + case SCAN_OPT_RESTORE: + iotype = IO_CMD_RESUME_DM_BY_SCAN; + rtlpriv->cfg->ops->set_hw_reg(hw, + HW_VAR_IO_CMD, + (u8 *) & iotype); + break; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("Unknown Scan Backup operation.\n")); + break; + } + } +} + +static void _rtl8821ae_phy_set_reg_bw(struct rtl_priv * rtlpriv, u8 bw) +{ + u16 reg_rf_mode_bw, tmp = 0; + reg_rf_mode_bw = rtl_read_word(rtlpriv, REG_TRXPTCL_CTL); + switch (bw) { + case HT_CHANNEL_WIDTH_20: + rtl_write_word(rtlpriv, REG_TRXPTCL_CTL, reg_rf_mode_bw & 0xFE7F); + break; + case HT_CHANNEL_WIDTH_20_40: + tmp = reg_rf_mode_bw | BIT(7); + rtl_write_word(rtlpriv, REG_TRXPTCL_CTL, tmp & 0xFEFF); + break; + case HT_CHANNEL_WIDTH_80: + tmp = reg_rf_mode_bw | BIT(8); + rtl_write_word(rtlpriv, REG_TRXPTCL_CTL, tmp & 0xFF7F); + break; + default: + RT_TRACE(COMP_ERR, DBG_WARNING,("unknown Bandwidth: 0x%x\n",bw)); + break; + } +} + +static u8 _rtl8821ae_phy_get_secondary_chnl(struct rtl_priv * rtlpriv) +{ + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_mac *mac = rtl_mac(rtlpriv); + u8 sc_set_40 = 0, sc_set_20 =0; + + if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_80) { + if(mac->cur_80_prime_sc == PRIME_CHNL_OFFSET_LOWER) + sc_set_40 = VHT_DATA_SC_40_LOWER_OF_80MHZ; + else if(mac->cur_80_prime_sc == PRIME_CHNL_OFFSET_UPPER) + sc_set_40 = VHT_DATA_SC_40_UPPER_OF_80MHZ; + else + RT_TRACE(COMP_ERR, DBG_EMERG, + ("SCMapping: Not Correct Primary40MHz Setting \n")); + + if((mac->cur_40_prime_sc == PRIME_CHNL_OFFSET_LOWER) && + (mac->cur_80_prime_sc == HAL_PRIME_CHNL_OFFSET_LOWER)) + sc_set_20 = VHT_DATA_SC_20_LOWEST_OF_80MHZ; + else if((mac->cur_40_prime_sc == PRIME_CHNL_OFFSET_UPPER) && + (mac->cur_80_prime_sc == HAL_PRIME_CHNL_OFFSET_LOWER)) + sc_set_20 = VHT_DATA_SC_20_LOWER_OF_80MHZ; + else if((mac->cur_40_prime_sc == PRIME_CHNL_OFFSET_LOWER) && + (mac->cur_80_prime_sc == HAL_PRIME_CHNL_OFFSET_UPPER)) + sc_set_20 = VHT_DATA_SC_20_UPPER_OF_80MHZ; + else if((mac->cur_40_prime_sc == PRIME_CHNL_OFFSET_UPPER) && + (mac->cur_80_prime_sc == HAL_PRIME_CHNL_OFFSET_UPPER)) + sc_set_20 = VHT_DATA_SC_20_UPPERST_OF_80MHZ; + else + RT_TRACE(COMP_ERR, DBG_EMERG, + ("SCMapping: Not Correct Primary40MHz Setting \n")); + } else if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20_40) { + if (mac->cur_40_prime_sc == PRIME_CHNL_OFFSET_UPPER) + sc_set_20 = VHT_DATA_SC_20_UPPER_OF_80MHZ; + else if (mac->cur_40_prime_sc == PRIME_CHNL_OFFSET_LOWER) + sc_set_20 = VHT_DATA_SC_20_LOWER_OF_80MHZ; + else + RT_TRACE(COMP_ERR, DBG_EMERG, + ("SCMapping: Not Correct Primary40MHz Setting \n")); + } + return ((sc_set_40 << 4) | sc_set_20); +} + +void rtl8821ae_phy_set_bw_mode_callback(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 sub_chnl = 0; + u8 l1pk_val = 0; + + RT_TRACE(COMP_SCAN, DBG_TRACE, + ("Switch to %s bandwidth\n", + (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20 ? + "20MHz" : + (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20_40 ? + "40MHz" : "80MHz")))) + + + + _rtl8821ae_phy_set_reg_bw(rtlpriv, rtlphy->current_chan_bw); + sub_chnl = _rtl8821ae_phy_get_secondary_chnl(rtlpriv); + rtl_write_byte(rtlpriv, 0x0483, sub_chnl); + + switch (rtlphy->current_chan_bw) { + case HT_CHANNEL_WIDTH_20: + rtl_set_bbreg(hw, RRFMOD, 0x003003C3, 0x00300200); + rtl_set_bbreg(hw, RADC_BUF_CLK, BIT(30), 0); + + if(rtlphy->rf_type == RF_2T2R) + rtl_set_bbreg(hw, RL1PEAKTH, 0x03C00000, 7); + else + rtl_set_bbreg(hw, RL1PEAKTH, 0x03C00000, 8); + break; + case HT_CHANNEL_WIDTH_20_40: + rtl_set_bbreg(hw, RRFMOD, 0x003003C3, 0x00300201); + rtl_set_bbreg(hw, RADC_BUF_CLK, BIT(30), 0); + rtl_set_bbreg(hw, RRFMOD, 0x3C, sub_chnl); + rtl_set_bbreg(hw, RCCAONSEC, 0xf0000000, sub_chnl); + + if(rtlphy->reg_837 & BIT(2)) + l1pk_val = 6; + else + { + if(rtlphy->rf_type == RF_2T2R) + l1pk_val = 7; + else + l1pk_val = 8; + } + rtl_set_bbreg(hw, RL1PEAKTH, 0x03C00000, l1pk_val); // 0x848[25:22] = 0x6 + + if(sub_chnl == VHT_DATA_SC_20_UPPER_OF_80MHZ) + rtl_set_bbreg(hw, RCCK_SYSTEM, BCCK_SYSTEM, 1); + else + rtl_set_bbreg(hw, RCCK_SYSTEM, BCCK_SYSTEM, 0); + break; + + case HT_CHANNEL_WIDTH_80: + rtl_set_bbreg(hw, RRFMOD, 0x003003C3, 0x00300202); // 0x8ac[21,20,9:6,1,0]=8'b11100010 + rtl_set_bbreg(hw, RADC_BUF_CLK, BIT(30), 1); // 0x8c4[30] = 1 + rtl_set_bbreg(hw, RRFMOD, 0x3C, sub_chnl); + rtl_set_bbreg(hw, RCCAONSEC, 0xf0000000, sub_chnl); + + if(rtlphy->reg_837 & BIT(2)) + l1pk_val = 5; + else + { + if(rtlphy->rf_type == RF_2T2R) + l1pk_val = 6; + else + l1pk_val = 7; + } + rtl_set_bbreg(hw, RL1PEAKTH, 0x03C00000, l1pk_val); + + break; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("unknown bandwidth: %#X\n", rtlphy->current_chan_bw)); + break; + } + + rtl8812ae_fixspur(hw, rtlphy->current_chan_bw, rtlphy->current_channel); + + rtl8821ae_phy_rf6052_set_bandwidth(hw, rtlphy->current_chan_bw); + rtlphy->set_bwmode_inprogress = false; + + RT_TRACE(COMP_SCAN, DBG_LOUD, (" \n")); +} + +void rtl8821ae_phy_set_bw_mode(struct ieee80211_hw *hw, + enum nl80211_channel_type ch_type) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u8 tmp_bw = rtlphy->current_chan_bw; + + if (rtlphy->set_bwmode_inprogress) + return; + rtlphy->set_bwmode_inprogress = true; + if ((!is_hal_stop(rtlhal)) && !(RT_CANNOT_IO(hw))) { + rtl8821ae_phy_set_bw_mode_callback(hw); + } else { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("FALSE driver sleep or unload\n")); + rtlphy->set_bwmode_inprogress = false; + rtlphy->current_chan_bw = tmp_bw; + } +} + +void rtl8821ae_phy_sw_chnl_callback(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 channel = rtlphy->current_channel; + u8 path; + u32 data; + + RT_TRACE(COMP_SCAN, DBG_TRACE, + ("switch to channel%d\n", rtlphy->current_channel)); + if (is_hal_stop(rtlhal)) + return; + + if (36 <= channel && channel <= 48) + data = 0x494; + else if (50 <= channel && channel <= 64) + data = 0x453; + else if (100 <= channel && channel <= 116) + data = 0x452; + else if (118 <= channel) + data = 0x412; + else + data = 0x96a; + rtl_set_bbreg(hw, RFC_AREA, 0x1ffe0000, data); + + + for(path = RF90_PATH_A; path < rtlphy->num_total_rfpath; path++) + { + if (36 <= channel && channel <= 64) + data = 0x101; + else if (100 <= channel && channel <= 140) + data = 0x301; + else if (140 < channel) + data = 0x501; + else + data = 0x000; + rtl8821ae_phy_set_rf_reg(hw, path, RF_CHNLBW, + BIT(18)|BIT(17)|BIT(16)|BIT(9)|BIT(8), data); + + rtl8821ae_phy_set_rf_reg(hw, path, RF_CHNLBW, + BMASKBYTE0, channel); + + if (channel > 14) { + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8821AE) { + if (36 <= channel && channel <= 64) + data = 0x114E9; + else if (100 <= channel && channel <= 140) + data = 0x110E9; + else + data = 0x110E9; + rtl8821ae_phy_set_rf_reg(hw, path, RF_APK, + BRFREGOFFSETMASK, data); + } + } + } + RT_TRACE(COMP_SCAN, DBG_TRACE, ("\n")); +} + +u8 rtl8821ae_phy_sw_chnl(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + u32 timeout = 1000, timecount = 0; + u8 channel = rtlphy->current_channel; + + if (rtlphy->sw_chnl_inprogress) + return 0; + if (rtlphy->set_bwmode_inprogress) + return 0; + + if ((is_hal_stop(rtlhal)) || (RT_CANNOT_IO(hw))) { + RT_TRACE(COMP_CHAN, DBG_LOUD, + ("sw_chnl_inprogress false driver sleep or unload\n")); + return 0; + } + while (rtlphy->lck_inprogress && timecount < timeout) { + mdelay(50); + timecount += 50; + } + + if (rtlphy->current_channel > 14 && rtlhal->current_bandtype != BAND_ON_5G) + rtl8821ae_phy_switch_wirelessband(hw, BAND_ON_5G); + else if (rtlphy->current_channel <= 14 && rtlhal->current_bandtype != BAND_ON_2_4G) + rtl8821ae_phy_switch_wirelessband(hw, BAND_ON_2_4G); + + rtlphy->sw_chnl_inprogress = true; + if (channel == 0) + channel = 1; + + RT_TRACE(COMP_SCAN, DBG_TRACE, + ("switch to channel%d, band type is %d\n", rtlphy->current_channel, rtlhal->current_bandtype)); + + rtl8821ae_phy_sw_chnl_callback(hw); + + rtl8821ae_dm_clear_txpower_tracking_state(hw); + rtl8821ae_phy_set_txpower_level(hw, rtlphy->current_channel); + + RT_TRACE(COMP_SCAN, DBG_TRACE, ("\n")); + rtlphy->sw_chnl_inprogress = false; + return 1; +} + +#if 0 +static u8 _rtl8821ae_phy_path_b_iqk(struct ieee80211_hw *hw) +{ + u32 reg_eac, reg_eb4, reg_ebc, reg_ec4, reg_ecc; + u8 result = 0x00; + + rtl_set_bbreg(hw, 0xe60, MASKDWORD, 0x00000002); + rtl_set_bbreg(hw, 0xe60, MASKDWORD, 0x00000000); + mdelay(IQK_DELAY_TIME); + reg_eac = rtl_get_bbreg(hw, 0xeac, MASKDWORD); + reg_eb4 = rtl_get_bbreg(hw, 0xeb4, MASKDWORD); + reg_ebc = rtl_get_bbreg(hw, 0xebc, MASKDWORD); + reg_ec4 = rtl_get_bbreg(hw, 0xec4, MASKDWORD); + reg_ecc = rtl_get_bbreg(hw, 0xecc, MASKDWORD); + + if (!(reg_eac & BIT(31)) && + (((reg_eb4 & 0x03FF0000) >> 16) != 0x142) && + (((reg_ebc & 0x03FF0000) >> 16) != 0x42)) + result |= 0x01; + else + return result; + if (!(reg_eac & BIT(30)) && + (((reg_ec4 & 0x03FF0000) >> 16) != 0x132) && + (((reg_ecc & 0x03FF0000) >> 16) != 0x36)) + result |= 0x02; + return result; +} + +static u8 _rtl8821ae_phy_path_a_rx_iqk(struct ieee80211_hw *hw, bool config_pathb) +{ + u32 reg_eac, reg_e94, reg_e9c, reg_ea4,u32temp; + u8 result = 0x00; + + /*Get TXIMR Setting*/ + /*Modify RX IQK mode table*/ + rtl_set_bbreg(hw, RFPGA0_IQK, MASKDWORD, 0x00000000); + rtl_set_rfreg(hw, RF90_PATH_A, RF_WE_LUT, RFREG_OFFSET_MASK, 0x800a0); + rtl_set_rfreg(hw, RF90_PATH_A, RF_RCK_OS, RFREG_OFFSET_MASK, 0x30000); + rtl_set_rfreg(hw, RF90_PATH_A, RF_TXPA_G1, RFREG_OFFSET_MASK, 0x0000f); + rtl_set_rfreg(hw, RF90_PATH_A, RF_TXPA_G2, RFREG_OFFSET_MASK, 0xf117b); + rtl_set_bbreg(hw, RFPGA0_IQK, MASKDWORD, 0x80800000); + + /*IQK Setting*/ + rtl_set_bbreg(hw, RTx_IQK, MASKDWORD, 0x01007c00); + rtl_set_bbreg(hw, RRx_IQK, MASKDWORD, 0x81004800); + + /*path a IQK setting*/ + rtl_set_bbreg(hw, RTx_IQK_Tone_A, MASKDWORD, 0x10008c1c); + rtl_set_bbreg(hw, RRx_IQK_Tone_A, MASKDWORD, 0x30008c1c); + rtl_set_bbreg(hw, RTx_IQK_PI_A, MASKDWORD, 0x82160804); + rtl_set_bbreg(hw, RRx_IQK_PI_A, MASKDWORD, 0x28160000); + + /*LO calibration Setting*/ + rtl_set_bbreg(hw, RIQK_AGC_Rsp, MASKDWORD, 0x0046a911); + /*one shot,path A LOK & iqk*/ + rtl_set_bbreg(hw, RIQK_AGC_Pts, MASKDWORD, 0xf9000000); + rtl_set_bbreg(hw, RIQK_AGC_Pts, MASKDWORD, 0xf8000000); + + mdelay(IQK_DELAY_TIME); + + reg_eac = rtl_get_bbreg(hw, RRx_Power_After_IQK_A_2, MASKDWORD); + reg_e94 = rtl_get_bbreg(hw, RTx_Power_Before_IQK_A, MASKDWORD); + reg_e9c = rtl_get_bbreg(hw, RTx_Power_After_IQK_A, MASKDWORD); + + + if (!(reg_eac & BIT(28)) && + (((reg_e94 & 0x03FF0000) >> 16) != 0x142) && + (((reg_e9c & 0x03FF0000) >> 16) != 0x42)) + result |= 0x01; + else + return result; + + u32temp = 0x80007C00 | (reg_e94&0x3FF0000) | ((reg_e9c&0x3FF0000) >> 16); + rtl_set_bbreg(hw, RTx_IQK, MASKDWORD, u32temp); + /*RX IQK*/ + /*Modify RX IQK mode table*/ + rtl_set_bbreg(hw, RFPGA0_IQK, MASKDWORD, 0x00000000); + rtl_set_rfreg(hw, RF90_PATH_A, RF_WE_LUT, RFREG_OFFSET_MASK, 0x800a0); + rtl_set_rfreg(hw, RF90_PATH_A, RF_RCK_OS, RFREG_OFFSET_MASK, 0x30000); + rtl_set_rfreg(hw, RF90_PATH_A, RF_TXPA_G1, RFREG_OFFSET_MASK, 0x0000f); + rtl_set_rfreg(hw, RF90_PATH_A, RF_TXPA_G2, RFREG_OFFSET_MASK, 0xf7ffa); + rtl_set_bbreg(hw, RFPGA0_IQK, MASKDWORD, 0x80800000); + + /*IQK Setting*/ + rtl_set_bbreg(hw, RRx_IQK, MASKDWORD, 0x01004800); + + /*path a IQK setting*/ + rtl_set_bbreg(hw, RTx_IQK_Tone_A, MASKDWORD, 0x30008c1c); + rtl_set_bbreg(hw, RRx_IQK_Tone_A, MASKDWORD, 0x10008c1c); + rtl_set_bbreg(hw, RTx_IQK_PI_A, MASKDWORD, 0x82160c05); + rtl_set_bbreg(hw, RRx_IQK_PI_A, MASKDWORD, 0x28160c05); + + /*LO calibration Setting*/ + rtl_set_bbreg(hw, RIQK_AGC_Rsp, MASKDWORD, 0x0046a911); + /*one shot,path A LOK & iqk*/ + rtl_set_bbreg(hw, RIQK_AGC_Pts, MASKDWORD, 0xf9000000); + rtl_set_bbreg(hw, RIQK_AGC_Pts, MASKDWORD, 0xf8000000); + + mdelay(IQK_DELAY_TIME); + + reg_eac = rtl_get_bbreg(hw, RRx_Power_After_IQK_A_2, MASKDWORD); + reg_e94 = rtl_get_bbreg(hw, RTx_Power_Before_IQK_A, MASKDWORD); + reg_e9c = rtl_get_bbreg(hw, RTx_Power_After_IQK_A, MASKDWORD); + reg_ea4 = rtl_get_bbreg(hw, RRx_Power_Before_IQK_A_2, MASKDWORD); + + if (!(reg_eac & BIT(27)) && + (((reg_ea4 & 0x03FF0000) >> 16) != 0x132) && + (((reg_eac & 0x03FF0000) >> 16) != 0x36)) + result |= 0x02; + return result; +} +#endif + +u8 _rtl8812ae_get_right_chnl_place_for_iqk(u8 chnl) +{ + u8 channel_all[TARGET_CHNL_NUM_2G_5G_8812] = + {1,2,3,4,5,6,7,8,9,10,11,12,13,14,36,38,40,42,\ + 44,46,48,50,52,54,56,58,60,62,64,100,\ + 102,104,106,108,110,112,114,116,118,\ + 120,122,124,126,128,130,132,134,136,\ + 138,140,149,151,153,155,157,159,161,\ + 163,165}; + u8 place = chnl; + + if(chnl > 14) + { + for(place = 14; place Page C*/ + if (rx_x >> 1 ==0x112 || rx_y >> 1 == 0x3ee){ + rtl_set_bbreg(hw, 0xc10, 0x000003ff, 0x100); + rtl_set_bbreg(hw, 0xc10, 0x03ff0000, 0); + RT_TRACE(COMP_IQK, DBG_LOUD, + ("RX_X = %x;;RX_Y = %x ====>fill to IQC\n", + rx_x >> 1 & 0x000003ff, rx_y >> 1 & 0x000003ff)); + } + else{ + rtl_set_bbreg(hw, 0xc10, 0x000003ff, rx_x >> 1); + rtl_set_bbreg(hw, 0xc10, 0x03ff0000, rx_y >> 1); + RT_TRACE(COMP_IQK, DBG_LOUD, + ("RX_X = %x;;RX_Y = %x ====>fill to IQC\n", + rx_x >> 1 & 0x000003ff, rx_y >> 1 & 0x000003ff)); + RT_TRACE(COMP_IQK, DBG_LOUD, + ("0xc10 = %x ====>fill to IQC\n", + rtl_read_dword(rtlpriv, 0xc10))); + } + } + break; + case RF90_PATH_B: + { + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + if (rx_x >> 1 ==0x112 || rx_y >> 1 == 0x3ee){ + rtl_set_bbreg(hw, 0xe10, 0x000003ff, 0x100); + rtl_set_bbreg(hw, 0xe10, 0x03ff0000, 0); + RT_TRACE(COMP_IQK, DBG_LOUD, + ("RX_X = %x;;RX_Y = %x ====>fill to IQC\n", + rx_x >> 1 & 0x000003ff, rx_y >> 1 & 0x000003ff)); + } + else{ + rtl_set_bbreg(hw, 0xe10, 0x000003ff, rx_x >> 1); + rtl_set_bbreg(hw, 0xe10, 0x03ff0000, rx_y >> 1); + RT_TRACE(COMP_IQK, DBG_LOUD, + ("RX_X = %x;;RX_Y = %x====>fill to IQC\n ", + rx_x >> 1 & 0x000003ff, rx_y >> 1 & 0x000003ff)); + RT_TRACE(COMP_IQK, DBG_LOUD, + ("0xe10 = %x====>fill to IQC\n", + rtl_read_dword(rtlpriv, 0xe10))); + } + } + break; + default: + break; + }; +} + +void _rtl8812ae_iqk_tx_fill_iqc( + struct ieee80211_hw *hw, + enum radio_path path, + u32 tx_x, + u32 tx_y + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + switch (path) { + case RF90_PATH_A: + { + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); /*[31] = 1 --> Page C1*/ + rtl_write_dword(rtlpriv, 0xc90, 0x00000080); + rtl_write_dword(rtlpriv, 0xcc4, 0x20040000); + rtl_write_dword(rtlpriv, 0xcc8, 0x20000000); + rtl_set_bbreg(hw, 0xccc, 0x000007ff, tx_y); + rtl_set_bbreg(hw, 0xcd4, 0x000007ff, tx_x); + RT_TRACE(COMP_IQK, DBG_LOUD, + ("TX_X = %x;;TX_Y = %x =====> fill to IQC\n", + tx_x & 0x000007ff, tx_y & 0x000007ff)); + RT_TRACE(COMP_IQK, DBG_LOUD, + ("0xcd4 = %x;;0xccc = %x ====>fill to IQC\n", + rtl_get_bbreg(hw, 0xcd4, 0x000007ff), + rtl_get_bbreg(hw, 0xccc, 0x000007ff))); + } + break; + case RF90_PATH_B: + { + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); /*[31] = 1 --> Page C1*/ + rtl_write_dword(rtlpriv, 0xe90, 0x00000080); + rtl_write_dword(rtlpriv, 0xec4, 0x20040000); + rtl_write_dword(rtlpriv, 0xec8, 0x20000000); + rtl_set_bbreg(hw, 0xecc, 0x000007ff, tx_y); + rtl_set_bbreg(hw, 0xed4, 0x000007ff, tx_x); + RT_TRACE(COMP_IQK, DBG_LOUD, + ("TX_X = %x;;TX_Y = %x =====> fill to IQC\n", + tx_x&0x000007ff, tx_y&0x000007ff)); + RT_TRACE(COMP_IQK, DBG_LOUD, + ("0xed4 = %x;;0xecc = %x ====>fill to IQC\n", + rtl_get_bbreg(hw, 0xed4, 0x000007ff), + rtl_get_bbreg(hw, 0xecc, 0x000007ff))); + } + break; + default: + break; + }; +} + +void _rtl8812ae_iqk_backup_macbb( + struct ieee80211_hw *hw, + u32 *macbb_backup, + u32 *backup_macbb_reg, + u32 mac_bb_num + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 i; + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + /*save MACBB default value*/ + for (i = 0; i < mac_bb_num; i++) { + macbb_backup[i] =rtl_read_dword(rtlpriv,backup_macbb_reg[i]); + } + + RT_TRACE(COMP_IQK, DBG_LOUD, ("BackupMacBB Success!!!!\n")); +} + +void _rtl8812ae_iqk_backup_afe( + struct ieee80211_hw *hw, + u32 *afe_backup, + u32 *backup_afe_REG, + u32 afe_num + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 i; + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + /*Save AFE Parameters */ + for (i = 0; i < afe_num; i++){ + afe_backup[i] = rtl_read_dword(rtlpriv, backup_afe_REG[i]); + } + RT_TRACE(COMP_IQK, DBG_LOUD, ("BackupAFE Success!!!!\n")); +} + +void _rtl8812ae_iqk_backup_rf( + struct ieee80211_hw *hw, + u32 *rfa_backup, + u32 *rfb_backup, + u32 *backup_rf_reg, + u32 rf_num + ) +{ + + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 i; + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + /*Save RF Parameters*/ + for (i = 0; i < rf_num; i++){ + rfa_backup[i] = rtl_get_rfreg(hw, RF90_PATH_A, backup_rf_reg[i], BMASKDWORD); + rfb_backup[i] = rtl_get_rfreg(hw, RF90_PATH_B, backup_rf_reg[i], BMASKDWORD); + } + RT_TRACE(COMP_IQK, DBG_LOUD, ("BackupRF Success!!!!\n")); +} + +void _rtl8812ae_iqk_configure_mac( + struct ieee80211_hw *hw + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + /* ========MAC register setting========*/ + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + rtl_write_byte(rtlpriv, 0x522, 0x3f); + rtl_set_bbreg(hw, 0x550, BIT(11) | BIT(3), 0x0); + rtl_write_byte(rtlpriv, 0x808, 0x00); /*RX ante off*/ + rtl_set_bbreg(hw, 0x838, 0xf, 0xc); /*CCA off*/ +} + +#define cal_num 10 + +void _rtl8812ae_iqk_tx( + struct ieee80211_hw *hw, + u8 chnl_idx + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + + u8 delay_count; + u8 cal0_retry, cal1_retry; + u8 tx0_average = 0, tx1_average = 0, rx0_average = 0, rx1_average = 0; + int tx0_x = 0, tx0_y = 0, rx0_x = 0, rx0_y = 0; + int tx_x0[cal_num], tx_y0[cal_num], rx_x0[cal_num], rx_y0[cal_num]; + int tx1_x = 0, tx1_y = 0, rx1_x = 0, rx1_y = 0; + int tx_x1[cal_num], tx_y1[cal_num], rx_x1[cal_num], rx_y1[cal_num]; + bool tx0iqkok= false, rx0iqkok = false, tx0_fail = true, rx0_fail; + bool iqk0_ready = false, tx0_finish = false, rx0_finish = false; + bool tx1iqkok = false, rx1iqkok = false, tx1_fail = true, rx1_fail; + bool iqk1_ready = false, tx1_finish = false, rx1_finish = false, vdf_enable = false; + int i, tx_dt[3] = {0}, rx_dt[3] = {0}, ii, dx = 0, dy = 0; + + RT_TRACE(COMP_IQK, DBG_LOUD, + ("BandWidth = %d.\n", + rtlphy->current_chan_bw)); + if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_80){ + vdf_enable = true; + } + vdf_enable = false; + + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + /*========Path-A AFE all on========*/ + /*Port 0 DAC/ADC on*/ + rtl_write_dword(rtlpriv, 0xc60, 0x77777777); + rtl_write_dword(rtlpriv, 0xc64, 0x77777777); + + /* Port 1 DAC/ADC off*/ + rtl_write_dword(rtlpriv, 0xe60, 0x77777777); + rtl_write_dword(rtlpriv, 0xe64, 0x77777777); + + rtl_write_dword(rtlpriv, 0xc68, 0x19791979); + rtl_write_dword(rtlpriv, 0xe68, 0x19791979); + rtl_set_bbreg(hw,0xc00, 0xf, 0x4);/*hardware 3-wire off*/ + rtl_set_bbreg(hw,0xe00, 0xf, 0x4);/*hardware 3-wire off*/ + + /*DAC/ADC sampling rate (160 MHz)*/ + rtl_set_bbreg(hw, 0xc5c, BIT(26) | BIT(25) | BIT(24), 0x7); + rtl_set_bbreg(hw, 0xe5c, BIT(26) | BIT(25) | BIT(24), 0x7); + rtl_set_bbreg(hw, 0x8c4, BIT(30), 0x1); + + /*====== Path A TX IQK RF Setting ======*/ + rtl_set_bbreg(hw,0x82c, BIT(31), 0x0); // [31] = 0 --> Page C + rtl_set_rfreg(hw,RF90_PATH_A, 0xef, BRFREGOFFSETMASK, 0x80002); + rtl_set_rfreg(hw,RF90_PATH_A, 0x30, BRFREGOFFSETMASK, 0x20000); + rtl_set_rfreg(hw,RF90_PATH_A, 0x31, BRFREGOFFSETMASK, 0x3fffd); + rtl_set_rfreg(hw,RF90_PATH_A, 0x32, BRFREGOFFSETMASK, 0xfe83f); + rtl_set_rfreg(hw,RF90_PATH_A, 0x65, BRFREGOFFSETMASK, 0x931d5); + rtl_set_rfreg(hw,RF90_PATH_A, 0x8f, BRFREGOFFSETMASK, 0x8a001); + /*====== Path A TX IQK RF Setting ======*/ + rtl_set_rfreg(hw,RF90_PATH_B, 0xef, BRFREGOFFSETMASK, 0x80002); + rtl_set_rfreg(hw,RF90_PATH_B, 0x30, BRFREGOFFSETMASK, 0x20000); + rtl_set_rfreg(hw,RF90_PATH_B, 0x31, BRFREGOFFSETMASK, 0x3fffd); + rtl_set_rfreg(hw,RF90_PATH_B, 0x32, BRFREGOFFSETMASK, 0xfe83f); + rtl_set_rfreg(hw,RF90_PATH_B, 0x65, BRFREGOFFSETMASK, 0x931d5); + rtl_set_rfreg(hw,RF90_PATH_B, 0x8f, BRFREGOFFSETMASK, 0x8a001); + rtl_write_dword(rtlpriv, 0x90c, 0x00008000); + rtl_write_dword(rtlpriv, 0xb00, 0x03000100); + rtl_set_bbreg(hw, 0xc94, BIT(0), 0x1); + rtl_set_bbreg(hw, 0xe94, BIT(0), 0x1); + rtl_write_dword(rtlpriv, 0x978, 0x29002000);/* TX (X,Y)*/ + rtl_write_dword(rtlpriv, 0x97c, 0xa9002000);/* RX (X,Y)*/ + rtl_write_dword(rtlpriv, 0x984, 0x00462910);/*[0]:AGC_en, [15]:idac_K_Mask*/ + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); /* [31] = 1 --> Page C1*/ + + /*ExternalPA_5G == 0*/ + rtl_write_dword(rtlpriv, 0xc88, 0x821403f1); + rtl_write_dword(rtlpriv, 0xe88, 0x821403f1); + + if (rtlhal->current_bandtype){ + rtl_write_dword(rtlpriv, 0xc8c, 0x68163e96); + rtl_write_dword(rtlpriv, 0xe8c, 0x68163e96); + } + else{ + rtl_write_dword(rtlpriv, 0xc8c, 0x28163e96); + rtl_write_dword(rtlpriv, 0xe8c, 0x28163e96); + } + + if (vdf_enable){} + else{ + rtl_write_dword(rtlpriv, 0xc80, 0x18008c10);/*TX_Tone_idx[9:0], TxK_Mask[29] TX_Tone = 16*/ + rtl_write_dword(rtlpriv, 0xc84, 0x38008c10);/*RX_Tone_idx[9:0], RxK_Mask[29]*/ + rtl_write_dword(rtlpriv, 0xce8, 0x00000000); + rtl_write_dword(rtlpriv, 0xe80, 0x18008c10);/*TX_Tone_idx[9:0], TxK_Mask[29] TX_Tone = 16*/ + rtl_write_dword(rtlpriv, 0xe84, 0x38008c10);/*RX_Tone_idx[9:0], RxK_Mask[29]*/ + rtl_write_dword(rtlpriv, 0xee8, 0x00000000); + + cal0_retry = 0; + cal1_retry = 0; + while(1){ + /*one shot*/ + rtl_write_dword(rtlpriv, 0xcb8, 0x00100000);/* cb8[20] N SI/PI ϥv iqk_dpk module*/ + rtl_write_dword(rtlpriv, 0xeb8, 0x00100000);/* cb8[20] N SI/PI ϥv iqk_dpk module*/ + rtl_write_dword(rtlpriv, 0x980, 0xfa000000); + rtl_write_dword(rtlpriv, 0x980, 0xf8000000); + + mdelay(10); /*Delay 25ms*/ + rtl_write_dword(rtlpriv, 0xcb8, 0x00000000); + rtl_write_dword(rtlpriv, 0xeb8, 0x00000000); + delay_count = 0; + while (1){ + if (!tx0_finish) + iqk0_ready = (bool) rtl_get_bbreg(hw, 0xd00, BIT(10)); + if (!tx1_finish) + iqk1_ready = (bool) rtl_get_bbreg(hw, 0xd40, BIT(10)); + if ((iqk0_ready && iqk1_ready) || (delay_count>20)) + break; + else{ + mdelay(1); + delay_count++; + } + } + RT_TRACE(COMP_IQK, DBG_LOUD, ("TX delay_count = %d\n", delay_count)); + if (delay_count < 20){ // If 20ms No Result, then cal_retry++ + /* ============TXIQK Check==============*/ + tx0_fail = (bool) rtl_get_bbreg(hw, 0xd00, BIT(12)); + tx1_fail = (bool) rtl_get_bbreg(hw, 0xd40, BIT(12)); + if (!(tx0_fail || tx0_finish)){ + rtl_write_dword(rtlpriv, 0xcb8, 0x02000000); + tx_x0[tx0_average] = rtl_get_bbreg(hw, 0xd00, 0x07ff0000) << 21; + rtl_write_dword(rtlpriv, 0xcb8, 0x04000000); + tx_y0[tx0_average] = rtl_get_bbreg(hw, 0xd00, 0x07ff0000) << 21; + tx0iqkok = true; + RT_TRACE(COMP_IQK, DBG_LOUD, + ("TX_X0[%d] = %x ;; TX_Y0[%d] = %x\n", + tx0_average, (tx_x0[tx0_average]) >> 21 & 0x000007ff, + tx0_average, (tx_y0[tx0_average]) >> 21 & 0x000007ff)); + + tx0_average++; + } + else{ + tx0iqkok = false; + cal0_retry++; + if (cal0_retry == 10) + break; + } + if (!(tx1_fail || tx1_finish)){ + rtl_write_dword(rtlpriv, 0xeb8, 0x02000000); + tx_x1[tx1_average] = rtl_get_bbreg(hw, 0xd40, 0x07ff0000) << 21; + rtl_write_dword(rtlpriv, 0xeb8, 0x04000000); + tx_y1[tx1_average] = rtl_get_bbreg(hw, 0xd40, 0x07ff0000) << 21; + tx1iqkok= true; + RT_TRACE(COMP_IQK, DBG_LOUD, + ("TX_X1[%d] = %x ;; TX_Y1[%d] = %x\n", + tx1_average, (tx_x1[tx1_average]) >> 21 & 0x000007ff, + tx1_average, (tx_y1[tx1_average]) >> 21 & 0x000007ff)); + + tx1_average++; + } + else{ + tx1iqkok = false; + cal1_retry++; + if (cal1_retry == 10) + break; + } + } + else{ + tx0iqkok = false; + tx1iqkok = false; + cal0_retry++; + cal1_retry++; + RT_TRACE(COMP_IQK, DBG_LOUD, + ("Delay 20ms TX IQK Not Ready!!!!!\n")); + if (cal0_retry == 10) + break; + } + if (tx0_average >= 2){ + for (i = 0; i < tx0_average; i++){ + for (ii = i+1; ii > 21) - (tx_x0[ii] >> 21); + if (dx < 4 && dx > -4){ + dy = (tx_y0[i]>>21) - (tx_y0[ii]>>21); + if (dy < 4 && dy > -4){ + tx0_x = ((tx_x0[i] >> 21) + (tx_x0[ii] >> 21)) / 2; + tx0_y = ((tx_y0[i] >> 21) + (tx_y0[ii] >> 21)) / 2; + tx_x0[0] = tx_x0[i]; + tx_y0[1] = tx_y0[ii]; + RT_TRACE(COMP_IQK, DBG_LOUD, + ("TX0_X = %x;;TX0_Y = %x\n", + tx0_x & 0x000007ff, tx0_y & 0x000007ff)); + if ((rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_80) + && vdf_enable) { + tx_dt[0] = (tx_dt[i] + tx_dt[ii]) / 2; + } + tx0_finish = true; + } + } + } + } + } + if (tx1_average >= 2){ + for (i = 0; i < tx1_average; i++){ + for (ii = i+1; ii < tx1_average; ii++){ + dx = (tx_x1[i] >> 21) - (tx_x1[ii] >> 21); + if (dx < 4 && dx > -4){ + dy = (tx_y1[i] >> 21) - (tx_y1[ii] >> 21); + if (dy < 4 && dy > -4){ + tx1_x = ((tx_x1[i] >> 21) + (tx_x1[ii] >> 21)) / 2; + tx1_y = ((tx_y1[i] >> 21) + (tx_y1[ii] >> 21)) / 2; + tx_x1[0] = tx_x1[i]; + tx_y1[1] = tx_y1[ii]; + RT_TRACE(COMP_IQK, DBG_LOUD, + ("TX1_X = %x;;TX1_Y = %x\n", + tx1_x & 0x000007ff, tx1_y & 0x000007ff)); + if ((rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_80) + && vdf_enable) { + tx_dt[0] = (tx_dt[i] + tx_dt[ii]) / 2; + } + tx1_finish = true; + } + } + } + } + } + RT_TRACE(COMP_IQK, DBG_LOUD, + ("TX0_Average = %d, TX1_Average = %d\n", + tx0_average, tx1_average)); + RT_TRACE(COMP_IQK, DBG_LOUD, + ("TX0_finish = %d, TX1_finish = %d\n", + tx0_finish, tx1_finish)); + if (tx0_finish && tx1_finish) + break; + if ((cal0_retry + tx0_average) >= 10 + || (cal1_retry + tx1_average) >= 10 ) + break; + } + RT_TRACE(COMP_IQK, DBG_LOUD, + ("TXA_cal_retry = %d\n", cal0_retry)); + RT_TRACE(COMP_IQK, DBG_LOUD, + ("TXB_cal_retry = %d\n", cal1_retry)); + + } + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /* [31] = 0 --> Page C*/ + rtl_set_rfreg(hw, RF90_PATH_A, 0x58, 0x7fe00, + rtl_get_rfreg(hw, RF90_PATH_A, 0x8, 0xffc00)); /*Load LOK*/ + rtl_set_rfreg(hw, RF90_PATH_B, 0x58, 0x7fe00, + rtl_get_rfreg(hw, RF90_PATH_B, 0x8, 0xffc00)); /* Load LOK*/ + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); /*[31] = 1 --> Page C1*/ + + + if (vdf_enable) {} + else{ + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + if (tx0_finish) { + /*====== Path A RX IQK RF Setting======*/ + rtl_set_rfreg(hw, RF90_PATH_A, 0xef, BRFREGOFFSETMASK, 0x80000); + rtl_set_rfreg(hw, RF90_PATH_A, 0x18, 0x00c00, 0x3); /* BW 20M*/ + rtl_set_rfreg(hw, RF90_PATH_A, 0x30, BRFREGOFFSETMASK, 0x30000); + rtl_set_rfreg(hw, RF90_PATH_A, 0x31, BRFREGOFFSETMASK, 0x3f7ff); + rtl_set_rfreg(hw, RF90_PATH_A, 0x32, BRFREGOFFSETMASK, 0xfe7bf); + rtl_set_rfreg(hw, RF90_PATH_A, 0x8f, BRFREGOFFSETMASK, 0x88001); + rtl_set_rfreg(hw, RF90_PATH_A, 0x65, BRFREGOFFSETMASK, 0x931d6); + rtl_set_rfreg(hw, RF90_PATH_A, 0xef, BRFREGOFFSETMASK, 0x00000); + } + if (tx1_finish){ + /*====== Path B RX IQK RF Setting======*/ + rtl_set_rfreg(hw, RF90_PATH_B, 0xef, BRFREGOFFSETMASK, 0x80000); + rtl_set_rfreg(hw, RF90_PATH_B, 0x30, BRFREGOFFSETMASK, 0x30000); + rtl_set_rfreg(hw, RF90_PATH_B, 0x31, BRFREGOFFSETMASK, 0x3f7ff); + rtl_set_rfreg(hw, RF90_PATH_B, 0x32, BRFREGOFFSETMASK, 0xfe7bf); + rtl_set_rfreg(hw, RF90_PATH_B, 0x8f, BRFREGOFFSETMASK, 0x88001); + rtl_set_rfreg(hw, RF90_PATH_B, 0x65, BRFREGOFFSETMASK, 0x931d1); + rtl_set_rfreg(hw, RF90_PATH_B, 0xef, BRFREGOFFSETMASK, 0x00000); + } + rtl_set_bbreg(hw, 0x978, BIT(31), 0x1); + rtl_set_bbreg(hw, 0x97c, BIT(31), 0x0); + rtl_write_dword(rtlpriv, 0x90c, 0x00008000); + rtl_write_dword(rtlpriv, 0x984, 0x0046a890); + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); /*[31] = 1 --> Page C1*/ + if (tx0_finish) { + rtl_write_dword(rtlpriv, 0xc80, 0x38008c10);/*TX_Tone_idx[9:0], TxK_Mask[29] TX_Tone = 16*/ + rtl_write_dword(rtlpriv, 0xc84, 0x18008c10);/*RX_Tone_idx[9:0], RxK_Mask[29]*/ + rtl_write_dword(rtlpriv, 0xc88, 0x02140119); + rtl_write_dword(rtlpriv, 0xc8c, 0x28160cc0); + } + if (tx1_finish){ + rtl_write_dword(rtlpriv, 0xe80, 0x38008c10);/*TX_Tone_idx[9:0], TxK_Mask[29] TX_Tone = 16*/ + rtl_write_dword(rtlpriv, 0xe84, 0x18008c10);/*RX_Tone_idx[9:0], RxK_Mask[29]*/ + rtl_write_dword(rtlpriv, 0xe88, 0x02140119); + rtl_write_dword(rtlpriv, 0xe8c, 0x28160ca0); + } + cal0_retry = 0; + cal1_retry = 0; + while(1){ + /* one shot*/ + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + if (tx0_finish){ + rtl_set_bbreg(hw, 0x978, 0x03FF8000, (tx_x0[rx0_average % 2]) >> 21 & 0x000007ff); + rtl_set_bbreg(hw, 0x978, 0x000007FF, (tx_y0[rx0_average % 2]) >> 21 & 0x000007ff); + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); /* [31] = 1 --> Page C1*/ + rtl_write_dword(rtlpriv, 0xcb8, 0x00300000);/*cb8[20] N SI/PI ϥv iqk_dpk module*/ + rtl_write_dword(rtlpriv, 0xcb8, 0x00100000); + mdelay(5); /*Delay 10ms*/ + } + if (tx1_finish){ + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + rtl_set_bbreg(hw, 0x978, 0x03FF8000, (tx_x1[rx1_average % 2]) >> 21 & 0x000007ff); + rtl_set_bbreg(hw, 0x978, 0x000007FF, (tx_y1[rx1_average % 2]) >> 21 & 0x000007ff); + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); /*[31] = 1 --> Page C1*/ + rtl_write_dword(rtlpriv, 0xeb8, 0x00300000);/*cb8[20] N SI/PI ϥv iqk_dpk module*/ + rtl_write_dword(rtlpriv, 0xeb8, 0x00100000);/* cb8[20] N SI/PI ϥv iqk_dpk module*/ + } + mdelay(10); /*Delay 10ms*/ + rtl_write_dword(rtlpriv, 0xcb8, 0x00000000); + rtl_write_dword(rtlpriv, 0xeb8, 0x00000000); + delay_count = 0; + while (1){ + if (!rx0_finish && tx0_finish) + iqk0_ready = (bool) rtl_get_bbreg(hw, 0xd00, BIT(10)); + if (!rx1_finish && tx1_finish) + iqk1_ready = (bool) rtl_get_bbreg(hw, 0xd40, BIT(10)); + if ((iqk0_ready && iqk1_ready)||(delay_count>20)) + break; + else{ + mdelay(1); + delay_count++; + } + } + RT_TRACE(COMP_IQK, DBG_LOUD, + ("RX delay_count = %d\n", delay_count)); + if (delay_count < 20){ // If 20ms No Result, then cal_retry++ + // ============RXIQK Check============== + rx0_fail = (bool) rtl_get_bbreg(hw, 0xd00, BIT(11)); + rx1_fail = (bool) rtl_get_bbreg(hw, 0xd40, BIT(11)); + if (!(rx0_fail || rx0_finish) && tx0_finish){ + rtl_write_dword(rtlpriv, 0xcb8, 0x06000000); + rx_x0[rx0_average] = rtl_get_bbreg(hw, 0xd00, 0x07ff0000) << 21; + rtl_write_dword(rtlpriv, 0xcb8, 0x08000000); + rx_y0[rx0_average] = rtl_get_bbreg(hw, 0xd00, 0x07ff0000) << 21; + rx0iqkok= true; + RT_TRACE(COMP_IQK, DBG_LOUD, + ("RX_X0[%d] = %x ;; RX_Y0[%d] = %x\n", + rx0_average, (rx_x0[rx0_average]) >> 21 & 0x000007ff, + rx0_average, (rx_y0[rx0_average]) >> 21 & 0x000007ff)); + + rx0_average++; + } + else{ + RT_TRACE(COMP_IQK, DBG_LOUD, + ("1. RXA_cal_retry = %d\n", cal0_retry)); + rx0iqkok = false; + cal0_retry++; + if (cal0_retry == 10) + break; + } + if (!(rx1_fail || rx1_finish) && tx1_finish){ + rtl_write_dword(rtlpriv, 0xeb8, 0x06000000); + rx_x1[rx1_average] = rtl_get_bbreg(hw, 0xd40, 0x07ff0000) << 21; + rtl_write_dword(rtlpriv, 0xeb8, 0x08000000); + rx_y1[rx1_average] = rtl_get_bbreg(hw, 0xd40, 0x07ff0000) << 21; + rx1iqkok = true; + RT_TRACE(COMP_IQK, DBG_LOUD, + ("RX_X1[%d] = %x ;; RX_Y1[%d] = %x\n", + rx1_average, (rx_x1[rx1_average]) >> 21 & 0x000007ff, + rx1_average, (rx_y1[rx1_average]) >> 21 & 0x000007ff)); + + rx1_average++; + } + else{ + rx1iqkok= false; + cal1_retry++; + if (cal1_retry == 10) + break; + } + + } + else{ + RT_TRACE(COMP_IQK, DBG_LOUD, + ("2. RXA_cal_retry = %d\n", cal0_retry)); + rx0iqkok = false; + rx1iqkok = false; + cal0_retry++; + cal1_retry++; + RT_TRACE(COMP_IQK, DBG_LOUD, + ("Delay 20ms RX IQK Not Ready!!!!!\n")); + if (cal0_retry == 10) + break; + } + RT_TRACE(COMP_IQK, DBG_LOUD, + ("3. RXA_cal_retry = %d\n", cal0_retry)); + if (rx0_average >= 2){ + for (i = 0; i < rx0_average; i++){ + for (ii = i+1; ii < rx0_average; ii++){ + dx = (rx_x0[i] >> 21) - (rx_x0[ii] >> 21); + if (dx < 4 && dx > -4){ + dy = (rx_y0[i] >> 21) - (rx_y0[ii] >> 21); + if (dy < 4 && dy > -4){ + rx0_x = ((rx_x0[i]>>21) + (rx_x0[ii] >> 21)) / 2; + rx0_y = ((rx_y0[i]>>21) + (rx_y0[ii] >> 21)) / 2; + if ((rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_80) + && vdf_enable) { + rx_dt[0] = (rx_dt[i] + rx_dt[ii]) / 2; + } + rx0_finish = true; + break; + } + } + } + } + } + if (rx1_average >= 2){ + for (i = 0; i < rx1_average; i++){ + for (ii = i+1; ii < rx1_average; ii++){ + dx = (rx_x1[i] >> 21) - (rx_x1[ii] >> 21); + if (dx < 4 && dx > -4){ + dy = (rx_y1[i] >> 21) - (rx_y1[ii] >> 21); + if (dy < 4 && dy > -4){ + rx1_x = ((rx_x1[i] >> 21) + (rx_x1[ii] >> 21)) / 2; + rx1_y = ((rx_y1[i] >> 21) + (rx_y1[ii] >> 21)) / 2; + if ((rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_80) + && vdf_enable) { + rx_dt[0] = (rx_dt[i] + rx_dt[ii]) / 2; + } + rx1_finish = true; + break; + } + } + } + } + } + RT_TRACE(COMP_IQK, DBG_LOUD, + ("RX0_Average = %d, RX1_Average = %d\n", + rx0_average, rx1_average)); + RT_TRACE(COMP_IQK, DBG_LOUD, + ("RX0_finish = %d, RX1_finish = %d\n", + rx0_finish, rx1_finish)); + if ((rx0_finish|| !tx0_finish) && (rx1_finish || !tx1_finish) ) + break; + if ((cal0_retry + rx0_average) >= 10 + || (cal1_retry + rx1_average) >= 10 + || rx0_average == 3 + || rx1_average == 3) + break; + } + RT_TRACE(COMP_IQK, DBG_LOUD, + ("RXA_cal_retry = %d\n", cal0_retry)); + RT_TRACE(COMP_IQK, DBG_LOUD, + ("RXB_cal_retry = %d\n", cal1_retry)); + } + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /* [31] = 0 --> Page C*/ + switch (rtlphy->current_chan_bw) + { + case HT_CHANNEL_WIDTH_20_40: + { + rtl_set_rfreg(hw, RF90_PATH_A, 0x18, 0x00c00, 0x1); + } + break; + case HT_CHANNEL_WIDTH_80: + { + rtl_set_rfreg(hw, RF90_PATH_A, 0x18, 0x00c00, 0x0); + } + break; + default: + break; + + } + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); /* [31] = 0 --> Page C*/ + /*FillIQK Result*/ + RT_TRACE(COMP_IQK, DBG_LOUD, + ("========Path_A =======\n")); + + if (tx0_finish){ + _rtl8812ae_iqk_tx_fill_iqc(hw, RF90_PATH_A, tx0_x, tx0_y); + } + else{ + _rtl8812ae_iqk_tx_fill_iqc(hw, RF90_PATH_A, 0x200, 0x0); + } + + if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_80 + || vdf_enable){ + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); /*[31] = 0 --> Page C*/ + rtl_set_bbreg(hw, 0xce8, 0x3fff0000, tx_dt[0] & 0x00003fff); + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + } + + if (rx0_finish == 1){ + _rtl8812ae_iqk_rx_fill_iqc(hw, RF90_PATH_A, rx0_x, rx0_y); + } + else{ + _rtl8812ae_iqk_rx_fill_iqc(hw, RF90_PATH_A, 0x200, 0x0); + } + + if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_80 + || vdf_enable){ + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); /*[31] = 0 --> Page C*/ + rtl_set_bbreg(hw, 0xce8, 0x00003fff, rx_dt[0] & 0x00003fff); + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /* [31] = 0 --> Page C*/ + } + + RT_TRACE(COMP_IQK, DBG_LOUD, + ("========Path_B =======\n")); + + if (tx1_finish){ + _rtl8812ae_iqk_tx_fill_iqc(hw, RF90_PATH_B, tx1_x, tx1_y); + } + else{ + _rtl8812ae_iqk_tx_fill_iqc(hw, RF90_PATH_B, 0x200, 0x0); + } + + if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_80 + || vdf_enable){ + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); /* [31] = 0 --> Page C*/ + rtl_set_bbreg(hw, 0xee8, 0x3fff0000, tx_dt[0] & 0x00003fff); + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /* [31] = 0 --> Page C*/ + } + + if (rx1_finish == 1){ + _rtl8812ae_iqk_rx_fill_iqc(hw, RF90_PATH_B, rx1_x, rx1_y); + } + else{ + _rtl8812ae_iqk_rx_fill_iqc(hw, RF90_PATH_B, 0x200, 0x0); + } + + if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_80 + || vdf_enable){ + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); /* [31] = 0 --> Page C*/ + rtl_set_bbreg(hw, 0xee8, 0x00003fff, rx_dt[0] & 0x00003fff); + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /* [31] = 0 --> Page C*/ + } +} + +void _rtl8812ae_iqk_restore_rf( + struct ieee80211_hw *hw, + enum radio_path path, + u32 *backup_rf_reg, + u32 *rf_backup, + u32 rf_reg_num + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 i; + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + for (i = 0; i < rf_reg_num; i++) + rtl_set_rfreg(hw, path, backup_rf_reg[i], BRFREGOFFSETMASK, rf_backup[i]); + + rtl_set_rfreg(hw, path, 0xef, BRFREGOFFSETMASK, 0x0); + + switch(path){ + case RF90_PATH_A: + { + RT_TRACE(COMP_IQK, DBG_LOUD, + ("RestoreRF Path A Success!!!!\n")); + } + break; + case RF90_PATH_B: + { + RT_TRACE(COMP_IQK, DBG_LOUD, + ("RestoreRF Path B Success!!!!\n")); + } + break; + default: + break; + } +} + +void _rtl8812ae_iqk_restore_afe( + struct ieee80211_hw *hw, + u32 *afe_backup, + u32 *backup_afe_reg, + u32 afe_num + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 i; + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + /*Reload AFE Parameters */ + for (i = 0; i < afe_num; i++){ + rtl_write_dword(rtlpriv, backup_afe_reg[i], afe_backup[i]); + } + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); /* [31] = 1 --> Page C1*/ + rtl_write_dword(rtlpriv, 0xc80, 0x0); + rtl_write_dword(rtlpriv, 0xc84, 0x0); + rtl_write_dword(rtlpriv, 0xc88, 0x0); + rtl_write_dword(rtlpriv, 0xc8c, 0x3c000000); + rtl_write_dword(rtlpriv, 0xc90, 0x00000080); + rtl_write_dword(rtlpriv, 0xc94, 0x00000000); + rtl_write_dword(rtlpriv, 0xcc4, 0x20040000); + rtl_write_dword(rtlpriv, 0xcc8, 0x20000000); + rtl_write_dword(rtlpriv, 0xcb8, 0x0); + rtl_write_dword(rtlpriv, 0xe80, 0x0); + rtl_write_dword(rtlpriv, 0xe84, 0x0); + rtl_write_dword(rtlpriv, 0xe88, 0x0); + rtl_write_dword(rtlpriv, 0xe8c, 0x3c000000); + rtl_write_dword(rtlpriv, 0xe90, 0x00000080); + rtl_write_dword(rtlpriv, 0xe94, 0x00000000); + rtl_write_dword(rtlpriv, 0xec4, 0x20040000); + rtl_write_dword(rtlpriv, 0xec8, 0x20000000); + rtl_write_dword(rtlpriv, 0xeb8, 0x0); + RT_TRACE(COMP_IQK, DBG_LOUD, + ("RestoreAFE Success!!!!\n")); +} + +void _rtl8812ae_iqk_restore_macbb( + struct ieee80211_hw *hw, + u32 *macbb_backup, + u32 *backup_macbb_reg, + u32 macbb_num + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 i; + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /* [31] = 0 --> Page C*/ + //Reload MacBB Parameters + for (i = 0; i < macbb_num; i++){ + rtl_write_dword(rtlpriv, backup_macbb_reg[i], macbb_backup[i]); + } + RT_TRACE(COMP_IQK, DBG_LOUD, + ("RestoreMacBB Success!!!!\n")); +} + +#define MACBB_REG_NUM 10 +#define AFE_REG_NUM 14 +#define RF_REG_NUM 3 + +static void _rtl8812ae_phy_iq_calibrate( + struct ieee80211_hw *hw, + u8 channel) +{ + u32 macbb_backup[MACBB_REG_NUM]; + u32 afe_backup[AFE_REG_NUM]; + u32 rfa_backup[RF_REG_NUM]; + u32 rfb_backup[RF_REG_NUM]; + u32 backup_macbb_reg[MACBB_REG_NUM] = {0xb00, 0x520, 0x550, + 0x808, 0x90c, 0xc00, 0xe00, + 0x8c4,0x838, 0x82c}; + u32 backup_afe_reg[AFE_REG_NUM] = {0xc5c, 0xc60, 0xc64, 0xc68, + 0xcb8, 0xcb0, 0xcb4,0xe5c, + 0xe60, 0xe64, 0xe68, 0xeb8, + 0xeb0, 0xeb4}; + u32 backup_rf_reg[RF_REG_NUM] = {0x65, 0x8f, 0x0}; + u8 chnl_idx = _rtl8812ae_get_right_chnl_place_for_iqk(channel); + + _rtl8812ae_iqk_backup_macbb(hw, macbb_backup, backup_macbb_reg, MACBB_REG_NUM); + _rtl8812ae_iqk_backup_afe(hw, afe_backup, backup_afe_reg, AFE_REG_NUM); + _rtl8812ae_iqk_backup_rf(hw, rfa_backup, rfb_backup, backup_rf_reg, RF_REG_NUM); + + _rtl8812ae_iqk_configure_mac(hw); + _rtl8812ae_iqk_tx(hw, chnl_idx); + _rtl8812ae_iqk_restore_rf(hw, RF90_PATH_A, backup_rf_reg, rfa_backup, RF_REG_NUM); + _rtl8812ae_iqk_restore_rf(hw, RF90_PATH_A, backup_rf_reg, rfb_backup, RF_REG_NUM); // PATH_A ? + + _rtl8812ae_iqk_restore_afe(hw, afe_backup, backup_afe_reg, AFE_REG_NUM); + _rtl8812ae_iqk_restore_macbb(hw, macbb_backup, backup_macbb_reg, MACBB_REG_NUM); +} + + +void _rtl8821ae_iqk_backup_macbb( + struct ieee80211_hw *hw, + u32 *macbb_backup, + u32 *backup_macbb_reg, + u32 mac_bb_num + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 i; + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + /*save MACBB default value*/ + for (i = 0; i < mac_bb_num; i++) { + macbb_backup[i] =rtl_read_dword(rtlpriv,backup_macbb_reg[i]); + } + + RT_TRACE(COMP_IQK, DBG_LOUD, ("BackupMacBB Success!!!!\n")); +} + +void _rtl8821ae_iqk_backup_afe( + struct ieee80211_hw *hw, + u32 *afe_backup, + u32 *backup_afe_REG, + u32 afe_num + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 i; + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + /*Save AFE Parameters */ + for (i = 0; i < afe_num; i++){ + afe_backup[i] = rtl_read_dword(rtlpriv, backup_afe_REG[i]); + } + RT_TRACE(COMP_IQK, DBG_LOUD, ("BackupAFE Success!!!!\n")); +} + +void _rtl8821ae_iqk_backup_rf( + struct ieee80211_hw *hw, + u32 *rfa_backup, + u32 *rfb_backup, + u32 *backup_rf_reg, + u32 rf_num + ) +{ + + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 i; + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + /*Save RF Parameters*/ + for (i = 0; i < rf_num; i++){ + rfa_backup[i] = rtl_get_rfreg(hw, RF90_PATH_A, backup_rf_reg[i], BMASKDWORD); + rfb_backup[i] = rtl_get_rfreg(hw, RF90_PATH_B, backup_rf_reg[i], BMASKDWORD); + } + RT_TRACE(COMP_IQK, DBG_LOUD, ("BackupRF Success!!!!\n")); +} + +void _rtl8821ae_iqk_configure_mac( + struct ieee80211_hw *hw + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + /* ========MAC register setting========*/ + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + rtl_write_byte(rtlpriv, 0x522, 0x3f); + rtl_set_bbreg(hw, 0x550, BIT(11) | BIT(3), 0x0); + rtl_write_byte(rtlpriv, 0x808, 0x00); /*RX ante off*/ + rtl_set_bbreg(hw, 0x838, 0xf, 0xc); /*CCA off*/ +} + + +void _rtl8821ae_iqk_tx_fill_iqc( + struct ieee80211_hw *hw, + enum radio_path path, + u32 tx_x, + u32 tx_y + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + switch (path) { + case RF90_PATH_A: + { + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); // [31] = 1 --> Page C1 + rtl_write_dword(rtlpriv, 0xc90, 0x00000080); + rtl_write_dword(rtlpriv, 0xcc4, 0x20040000); + rtl_write_dword(rtlpriv, 0xcc8, 0x20000000); + rtl_set_bbreg(hw, 0xccc, 0x000007ff, tx_y); + rtl_set_bbreg(hw, 0xcd4, 0x000007ff, tx_x); + RT_TRACE(COMP_IQK, DBG_LOUD, ("TX_X = %x;;TX_Y = %x =====> fill to IQC\n", tx_x, tx_y)); + RT_TRACE(COMP_IQK, DBG_LOUD, ("0xcd4 = %x;;0xccc = %x ====>fill to IQC\n", rtl_get_bbreg(hw, 0xcd4, 0x000007ff), rtl_get_bbreg(hw, 0xccc, 0x000007ff))); + } + break; + default: + break; + }; +} + + +void _rtl8821ae_iqk_rx_fill_iqc( + struct ieee80211_hw *hw, + enum radio_path path, + u32 rx_x, + u32 rx_y + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + switch (path) { + case RF90_PATH_A: + { + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); // [31] = 0 --> Page C + rtl_set_bbreg(hw, 0xc10, 0x000003ff, rx_x>>1); + rtl_set_bbreg(hw, 0xc10, 0x03ff0000, rx_y>>1); + RT_TRACE(COMP_IQK, DBG_LOUD, ("rx_x = %x;;rx_y = %x ====>fill to IQC\n", rx_x>>1, rx_y>>1)); + RT_TRACE(COMP_IQK, DBG_LOUD, ("0xc10 = %x ====>fill to IQC\n", rtl_read_dword(rtlpriv, 0xc10))); + } + break; + default: + break; + }; +} + + + +#define cal_num 10 + +void _rtl8821ae_iqk_tx( + struct ieee80211_hw *hw, + enum radio_path path + ) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + + u32 tx_fail, rx_fail, delay_count, iqk_ready, cal_retry, cal = 0, temp_reg65; + int tx_x = 0, tx_y = 0, rx_x = 0, rx_y = 0, tx_average = 0, rx_average = 0; + int tx_x0[cal_num], tx_y0[cal_num], tx_x0_rxk[cal_num], tx_y0_rxk[cal_num], rx_x0[cal_num], rx_y0[cal_num]; + bool tx0iqkok = false, rx0iqkok = false; + bool vdf_enable = false; + int i, k, vdf_y[3], vdf_x[3], tx_dt[3], rx_dt[3], ii, dx = 0, dy = 0, tx_finish = 0, rx_finish = 0; + + + RT_TRACE(COMP_IQK, DBG_LOUD, + ("BandWidth = %d.\n", + rtlphy->current_chan_bw)); + if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_80){ + vdf_enable = true; + } + + while (cal < cal_num) { + switch (path) { + case RF90_PATH_A: + { + temp_reg65 = rtl_get_rfreg(hw, path, 0x65, 0xffffffff); + //Path-A LOK + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); /*[31] = 0 --> Page C*/ + /*========Path-A AFE all on========*/ + /*Port 0 DAC/ADC on*/ + rtl_write_dword(rtlpriv, 0xc60, 0x77777777); + rtl_write_dword(rtlpriv, 0xc64, 0x77777777); + rtl_write_dword(rtlpriv, 0xc68, 0x19791979); + rtl_write_dword(rtlpriv, 0xc6c, 0x19791979); + rtl_write_dword(rtlpriv, 0xc70, 0x19791979); + rtl_write_dword(rtlpriv, 0xc74, 0x19791979); + rtl_write_dword(rtlpriv, 0xc78, 0x19791979); + rtl_write_dword(rtlpriv, 0xc7c, 0x19791979); + rtl_write_dword(rtlpriv, 0xc80, 0x19791979); + rtl_write_dword(rtlpriv, 0xc84, 0x19791979); + + rtl_set_bbreg(hw, 0xc00, 0xf, 0x4); /*hardware 3-wire off*/ + + // LOK Setting + //====== LOK ====== + /*DAC/ADC sampling rate (160 MHz)*/ + rtl_set_bbreg(hw, 0xc5c, BIT(26) | BIT(25) | BIT(24), 0x7); + + // 2. LoK RF Setting (at BW = 20M) + rtl_set_rfreg(hw, path, 0xef, RFREG_OFFSET_MASK, 0x80002); + rtl_set_rfreg(hw, path, 0x18, 0x00c00, 0x3); // BW 20M + rtl_set_rfreg(hw, path, 0x30, RFREG_OFFSET_MASK, 0x20000); + rtl_set_rfreg(hw, path, 0x31, RFREG_OFFSET_MASK, 0x0003f); + rtl_set_rfreg(hw, path, 0x32, RFREG_OFFSET_MASK, 0xf3fc3); + rtl_set_rfreg(hw, path, 0x65, RFREG_OFFSET_MASK, 0x931d5); + rtl_set_rfreg(hw, path, 0x8f, RFREG_OFFSET_MASK, 0x8a001); + rtl_set_bbreg(hw, 0xcb8, 0xf, 0xd); + rtl_write_dword(rtlpriv, 0x90c, 0x00008000); + rtl_write_dword(rtlpriv, 0xb00, 0x03000100); + rtl_set_bbreg(hw, 0xc94, BIT(0), 0x1); + rtl_write_dword(rtlpriv, 0x978, 0x29002000);// TX (X,Y) + rtl_write_dword(rtlpriv, 0x97c, 0xa9002000);// RX (X,Y) + rtl_write_dword(rtlpriv, 0x984, 0x00462910);// [0]:AGC_en, [15]:idac_K_Mask + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); // [31] = 1 --> Page C1 + rtl_write_dword(rtlpriv, 0xc88, 0x821403f4); + + if (rtlhal->current_bandtype) + rtl_write_dword(rtlpriv, 0xc8c, 0x68163e96); + else + rtl_write_dword(rtlpriv, 0xc8c, 0x28163e96); + + rtl_write_dword(rtlpriv, 0xc80, 0x18008c10);// TX_Tone_idx[9:0], TxK_Mask[29] TX_Tone = 16 + rtl_write_dword(rtlpriv, 0xc84, 0x38008c10);// RX_Tone_idx[9:0], RxK_Mask[29] + rtl_write_dword(rtlpriv, 0xcb8, 0x00100000);// cb8[20] N SI/PI ϥv iqk_dpk module + rtl_write_dword(rtlpriv, 0x980, 0xfa000000); + rtl_write_dword(rtlpriv, 0x980, 0xf8000000); + + mdelay(10); //Delay 10ms + rtl_write_dword(rtlpriv, 0xcb8, 0x00000000); + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); // [31] = 0 --> Page C + rtl_set_rfreg(hw, path, 0x58, 0x7fe00, rtl_get_rfreg(hw, path, 0x8, 0xffc00)); // Load LOK + + switch (rtlphy->current_chan_bw) + { + case 1: + { + rtl_set_rfreg(hw, path, 0x18, 0x00c00, 0x1); + } + break; + case 2: + { + rtl_set_rfreg(hw, path, 0x18, 0x00c00, 0x0); + } + break; + default: + break; + + } + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); // [31] = 1 --> Page C1 + + // 3. TX RF Setting + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); // [31] = 0 --> Page C + rtl_set_rfreg(hw, path, 0xef, RFREG_OFFSET_MASK, 0x80000); + rtl_set_rfreg(hw, path, 0x30, RFREG_OFFSET_MASK, 0x20000); + rtl_set_rfreg(hw, path, 0x31, RFREG_OFFSET_MASK, 0x0003f); + rtl_set_rfreg(hw, path, 0x32, RFREG_OFFSET_MASK, 0xf3fc3); + rtl_set_rfreg(hw, path, 0x65, RFREG_OFFSET_MASK, 0x931d5); + rtl_set_rfreg(hw, path, 0x8f, RFREG_OFFSET_MASK, 0x8a001); + rtl_set_rfreg(hw, path, 0xef, RFREG_OFFSET_MASK, 0x00000); + //ODM_SetBBReg(pDM_Odm, 0xcb8, 0xf, 0xd); + rtl_write_dword(rtlpriv, 0x90c, 0x00008000); + rtl_write_dword(rtlpriv, 0xb00, 0x03000100); + rtl_set_bbreg(hw, 0xc94, BIT(0), 0x1); + rtl_write_dword(rtlpriv, 0x978, 0x29002000);// TX (X,Y) + rtl_write_dword(rtlpriv, 0x97c, 0xa9002000);// RX (X,Y) + rtl_write_dword(rtlpriv, 0x984, 0x0046a910);// [0]:AGC_en, [15]:idac_K_Mask + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); // [31] = 1 --> Page C1 + rtl_write_dword(rtlpriv, 0xc88, 0x821403f1); + if (rtlhal->current_bandtype) + rtl_write_dword(rtlpriv, 0xc8c, 0x40163e96); + else + rtl_write_dword(rtlpriv, 0xc8c, 0x00163e96); + + if (vdf_enable == 1){ + RT_TRACE(COMP_IQK, DBG_LOUD, ("VDF_enable\n")); + for (k = 0;k <= 2; k++){ + switch (k){ + case 0: + { + rtl_write_dword(rtlpriv, 0xc80, 0x18008c38);// TX_Tone_idx[9:0], TxK_Mask[29] TX_Tone = 16 + rtl_write_dword(rtlpriv, 0xc84, 0x38008c38);// RX_Tone_idx[9:0], RxK_Mask[29] + rtl_set_bbreg(hw, 0xce8, BIT(31), 0x0); + } + break; + case 1: + { + rtl_set_bbreg(hw, 0xc80, BIT(28), 0x0); + rtl_set_bbreg(hw, 0xc84, BIT(28), 0x0); + rtl_set_bbreg(hw, 0xce8, BIT(31), 0x0); + } + break; + case 2: + { + RT_TRACE(COMP_IQK, DBG_LOUD, ("vdf_y[1] = %x;;;vdf_y[0] = %x\n", vdf_y[1]>>21 & 0x00007ff, vdf_y[0]>>21 & 0x00007ff)); + RT_TRACE(COMP_IQK, DBG_LOUD, ("vdf_x[1] = %x;;;vdf_x[0] = %x\n", vdf_x[1]>>21 & 0x00007ff, vdf_x[0]>>21 & 0x00007ff)); + tx_dt[cal] = (vdf_y[1]>>20)-(vdf_y[0]>>20); + tx_dt[cal] = ((16*tx_dt[cal])*10000/15708); + tx_dt[cal] = (tx_dt[cal] >> 1 )+(tx_dt[cal] & BIT(0)); + rtl_write_dword(rtlpriv, 0xc80, 0x18008c20);// TX_Tone_idx[9:0], TxK_Mask[29] TX_Tone = 16 + rtl_write_dword(rtlpriv, 0xc84, 0x38008c20);// RX_Tone_idx[9:0], RxK_Mask[29] + rtl_set_bbreg(hw, 0xce8, BIT(31), 0x1); + rtl_set_bbreg(hw, 0xce8, 0x3fff0000, tx_dt[cal] & 0x00003fff); + } + break; + default: + break; + } + rtl_write_dword(rtlpriv, 0xcb8, 0x00100000);// cb8[20] N SI/PI ϥv iqk_dpk module + cal_retry = 0; + while(1){ + // one shot + rtl_write_dword(rtlpriv, 0x980, 0xfa000000); + rtl_write_dword(rtlpriv, 0x980, 0xf8000000); + + mdelay(10); //Delay 10ms + rtl_write_dword(rtlpriv, 0xcb8, 0x00000000); + delay_count = 0; + while (1){ + iqk_ready = rtl_get_bbreg(hw, 0xd00, BIT(10)); + if ((~iqk_ready) || (delay_count>20)){ + break; + } + else{ + mdelay(1); + delay_count++; + } + } + + if (delay_count < 20){ // If 20ms No Result, then cal_retry++ + // ============TXIQK Check============== + tx_fail = rtl_get_bbreg(hw, 0xd00, BIT(12)); + + if (~tx_fail){ + rtl_write_dword(rtlpriv, 0xcb8, 0x02000000); + vdf_x[k] = rtl_get_bbreg(hw, 0xd00, 0x07ff0000)<<21; + rtl_write_dword(rtlpriv, 0xcb8, 0x04000000); + vdf_y[k] = rtl_get_bbreg(hw, 0xd00, 0x07ff0000)<<21; + tx0iqkok = true; + break; + } + else{ + rtl_set_bbreg(hw, 0xccc, 0x000007ff, 0x0); + rtl_set_bbreg(hw, 0xcd4, 0x000007ff, 0x200); + tx0iqkok = false; + cal_retry++; + if (cal_retry == 10) { + break; + } + } + } + else{ + tx0iqkok = false; + cal_retry++; + if (cal_retry == 10){ + break; + } + } + } + } + if (k == 3){ + tx_x0[cal] = vdf_x[k-1] ; + tx_y0[cal] = vdf_y[k-1]; + } + } + + else { + rtl_write_dword(rtlpriv, 0xc80, 0x18008c10);// TX_Tone_idx[9:0], TxK_Mask[29] TX_Tone = 16 + rtl_write_dword(rtlpriv, 0xc84, 0x38008c10);// RX_Tone_idx[9:0], RxK_Mask[29] + rtl_write_dword(rtlpriv, 0xcb8, 0x00100000);// cb8[20] N SI/PI ϥv iqk_dpk module + cal_retry = 0; + while(1){ + // one shot + rtl_write_dword(rtlpriv, 0x980, 0xfa000000); + rtl_write_dword(rtlpriv, 0x980, 0xf8000000); + + mdelay(10); //Delay 10ms + rtl_write_dword(rtlpriv, 0xcb8, 0x00000000); + delay_count = 0; + while (1){ + iqk_ready = rtl_get_bbreg(hw, 0xd00, BIT(10)); + if ((~iqk_ready) || (delay_count>20)) { + break; + } + else{ + mdelay(1); + delay_count++; + } + } + + if (delay_count < 20){ // If 20ms No Result, then cal_retry++ + // ============TXIQK Check============== + tx_fail = rtl_get_bbreg(hw, 0xd00, BIT(12)); + + if (~tx_fail){ + rtl_write_dword(rtlpriv, 0xcb8, 0x02000000); + tx_x0[cal] = rtl_get_bbreg(hw, 0xd00, 0x07ff0000)<<21; + rtl_write_dword(rtlpriv, 0xcb8, 0x04000000); + tx_y0[cal] = rtl_get_bbreg(hw, 0xd00, 0x07ff0000)<<21; + tx0iqkok = true; + break; + } + else{ + rtl_set_bbreg(hw, 0xccc, 0x000007ff, 0x0); + rtl_set_bbreg(hw, 0xcd4, 0x000007ff, 0x200); + tx0iqkok = false; + cal_retry++; + if (cal_retry == 10) { + break; + } + } + } + else{ + tx0iqkok = false; + cal_retry++; + if (cal_retry == 10) + break; + } + } + } + + + if (tx0iqkok == false) + break; // TXK fail, Don't do RXK + + if (vdf_enable == 1){ + rtl_set_bbreg(hw, 0xce8, BIT(31), 0x0); // TX VDF Disable + RT_TRACE(COMP_IQK, DBG_LOUD, ("RXVDF Start\n")); + for (k = 0;k <= 2; k++){ + //====== RX mode TXK (RXK Step 1) ====== + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); // [31] = 0 --> Page C + // 1. TX RF Setting + rtl_set_rfreg(hw, path, 0xef, RFREG_OFFSET_MASK, 0x80000); + rtl_set_rfreg(hw, path, 0x30, RFREG_OFFSET_MASK, 0x30000); + rtl_set_rfreg(hw, path, 0x31, RFREG_OFFSET_MASK, 0x00029); + rtl_set_rfreg(hw, path, 0x32, RFREG_OFFSET_MASK, 0xd7ffb); + rtl_set_rfreg(hw, path, 0x65, RFREG_OFFSET_MASK, temp_reg65); + rtl_set_rfreg(hw, path, 0x8f, RFREG_OFFSET_MASK, 0x8a001); + rtl_set_rfreg(hw, path, 0xef, RFREG_OFFSET_MASK, 0x00000); + + rtl_set_bbreg(hw, 0xcb8, 0xf, 0xd); + rtl_write_dword(rtlpriv, 0x978, 0x29002000);// TX (X,Y) + rtl_write_dword(rtlpriv, 0x97c, 0xa9002000);// RX (X,Y) + rtl_write_dword(rtlpriv, 0x984, 0x0046a910);// [0]:AGC_en, [15]:idac_K_Mask + rtl_write_dword(rtlpriv, 0x90c, 0x00008000); + rtl_write_dword(rtlpriv, 0xb00, 0x03000100); + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); // [31] = 1 --> Page C1 + switch (k){ + case 0: + { + rtl_write_dword(rtlpriv, 0xc80, 0x18008c38);// TX_Tone_idx[9:0], TxK_Mask[29] TX_Tone = 16 + rtl_write_dword(rtlpriv, 0xc84, 0x38008c38);// RX_Tone_idx[9:0], RxK_Mask[29] + rtl_set_bbreg(hw, 0xce8, BIT(30), 0x0); + } + break; + case 1: + { + rtl_write_dword(rtlpriv, 0xc80, 0x08008c38);// TX_Tone_idx[9:0], TxK_Mask[29] TX_Tone = 16 + rtl_write_dword(rtlpriv, 0xc84, 0x28008c38);// RX_Tone_idx[9:0], RxK_Mask[29] + rtl_set_bbreg(hw, 0xce8, BIT(30), 0x0); + } + break; + case 2: + { + RT_TRACE(COMP_IQK, DBG_LOUD, ("VDF_Y[1] = %x;;;VDF_Y[0] = %x\n", vdf_y[1]>>21 & 0x00007ff, vdf_y[0]>>21 & 0x00007ff)); + RT_TRACE(COMP_IQK, DBG_LOUD, ("VDF_X[1] = %x;;;VDF_X[0] = %x\n", vdf_x[1]>>21 & 0x00007ff, vdf_x[0]>>21 & 0x00007ff)); + rx_dt[cal] = (vdf_y[1]>>20)-(vdf_y[0]>>20); + RT_TRACE(COMP_IQK, DBG_LOUD, ("Rx_dt = %d\n", rx_dt[cal])); + rx_dt[cal] = ((16*rx_dt[cal])*10000/13823); + rx_dt[cal] = (rx_dt[cal] >> 1 )+(rx_dt[cal] & BIT(0)); + rtl_write_dword(rtlpriv, 0xc80, 0x18008c20);// TX_Tone_idx[9:0], TxK_Mask[29] TX_Tone = 16 + rtl_write_dword(rtlpriv, 0xc84, 0x38008c20);// RX_Tone_idx[9:0], RxK_Mask[29] + rtl_set_bbreg(hw, 0xce8, 0x00003fff, rx_dt[cal] & 0x00003fff); + } + break; + default: + break; + } + rtl_write_dword(rtlpriv, 0xc88, 0x821603e0); + rtl_write_dword(rtlpriv, 0xc8c, 0x68163e96); + rtl_write_dword(rtlpriv, 0xcb8, 0x00100000);// cb8[20] N SI/PI ϥv iqk_dpk module + cal_retry = 0; + while(1){ + // one shot + rtl_write_dword(rtlpriv, 0x980, 0xfa000000); + rtl_write_dword(rtlpriv, 0x980, 0xf8000000); + + mdelay(10); //Delay 10ms + rtl_write_dword(rtlpriv, 0xcb8, 0x00000000); + delay_count = 0; + while (1){ + iqk_ready = rtl_get_bbreg(hw, 0xd00, BIT(10)); + if ((~iqk_ready)||(delay_count>20)){ + break; + } + else{ + mdelay(1); + delay_count++; + } + } + + if (delay_count < 20){ // If 20ms No Result, then cal_retry++ + // ============TXIQK Check============== + tx_fail = rtl_get_bbreg(hw, 0xd00, BIT(12)); + + if (~tx_fail){ + rtl_write_dword(rtlpriv, 0xcb8, 0x02000000); + tx_x0_rxk[cal] = rtl_get_bbreg(hw, 0xd00, 0x07ff0000)<<21; + rtl_write_dword(rtlpriv, 0xcb8, 0x04000000); + tx_y0_rxk[cal] = rtl_get_bbreg(hw, 0xd00, 0x07ff0000)<<21; + tx0iqkok = true; + break; + } + else{ + tx0iqkok = false; + cal_retry++; + if (cal_retry == 10) + break; + } + } + else{ + tx0iqkok = false; + cal_retry++; + if (cal_retry == 10) + break; + } + } + + if (tx0iqkok == false){ //If RX mode TXK fail, then take TXK Result + tx_x0_rxk[cal] = tx_x0[cal]; + tx_y0_rxk[cal] = tx_y0[cal]; + tx0iqkok = true; + RT_TRACE(COMP_IQK, DBG_LOUD, ("RXK Step 1 fail\n")); + } + + + //====== RX IQK ====== + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); // [31] = 0 --> Page C + // 1. RX RF Setting + rtl_set_rfreg(hw, path, 0xef, RFREG_OFFSET_MASK, 0x80000); + rtl_set_rfreg(hw, path, 0x30, RFREG_OFFSET_MASK, 0x30000); + rtl_set_rfreg(hw, path, 0x31, RFREG_OFFSET_MASK, 0x0002f); + rtl_set_rfreg(hw, path, 0x32, RFREG_OFFSET_MASK, 0xfffbb); + rtl_set_rfreg(hw, path, 0x8f, RFREG_OFFSET_MASK, 0x88001); + rtl_set_rfreg(hw, path, 0x65, RFREG_OFFSET_MASK, 0x931d8); + rtl_set_rfreg(hw, path, 0xef, RFREG_OFFSET_MASK, 0x00000); + + rtl_set_bbreg(hw, 0x978, 0x03FF8000, (tx_x0_rxk[cal])>>21&0x000007ff); + rtl_set_bbreg(hw, 0x978, 0x000007FF, (tx_y0_rxk[cal])>>21&0x000007ff); + rtl_set_bbreg(hw, 0x978, BIT(31), 0x1); + rtl_set_bbreg(hw, 0x97c, BIT(31), 0x0); + rtl_set_bbreg(hw, 0xcb8, 0xF, 0xe); + rtl_write_dword(rtlpriv, 0x90c, 0x00008000); + rtl_write_dword(rtlpriv, 0x984, 0x0046a911); + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); // [31] = 1 --> Page C1 + rtl_set_bbreg(hw, 0xc80, BIT(29), 0x1); + rtl_set_bbreg(hw, 0xc84, BIT(29), 0x0); + rtl_write_dword(rtlpriv, 0xc88, 0x02140119); + + rtl_write_dword(rtlpriv, 0xc8c, 0x28160d00); /* pDM_Odm->SupportInterface == 1 */ + + if (k==2){ + rtl_set_bbreg(hw, 0xce8, BIT(30), 0x1); //RX VDF Enable + } + rtl_write_dword(rtlpriv, 0xcb8, 0x00100000);// cb8[20] N SI/PI ϥv iqk_dpk module + + cal_retry = 0; + while(1){ + // one shot + rtl_write_dword(rtlpriv, 0x980, 0xfa000000); + rtl_write_dword(rtlpriv, 0x980, 0xf8000000); + + mdelay(10); //Delay 10ms + rtl_write_dword(rtlpriv, 0xcb8, 0x00000000); + delay_count = 0; + while (1){ + iqk_ready = rtl_get_bbreg(hw, 0xd00, BIT(10)); + if ((~iqk_ready)||(delay_count>20)){ + break; + } + else{ + mdelay(1); + delay_count++; + } + } + + if (delay_count < 20){ // If 20ms No Result, then cal_retry++ + // ============RXIQK Check============== + rx_fail = rtl_get_bbreg(hw, 0xd00, BIT(11)); + if (rx_fail == 0){ + rtl_write_dword(rtlpriv, 0xcb8, 0x06000000); + vdf_x[k] = rtl_get_bbreg(hw, 0xd00, 0x07ff0000)<<21; + rtl_write_dword(rtlpriv, 0xcb8, 0x08000000); + vdf_y[k] = rtl_get_bbreg(hw, 0xd00, 0x07ff0000)<<21; + rx0iqkok = true; + break; + } + else{ + rtl_set_bbreg(hw, 0xc10, 0x000003ff, 0x200>>1); + rtl_set_bbreg(hw, 0xc10, 0x03ff0000, 0x0>>1); + rx0iqkok = false; + cal_retry++; + if (cal_retry == 10) + break; + + } + } + else{ + rx0iqkok = false; + cal_retry++; + if (cal_retry == 10) + break; + } + } + + } + if (k == 3){ + rx_x0[cal] = vdf_x[k-1] ; + rx_y0[cal] = vdf_y[k-1]; + } + rtl_set_bbreg(hw, 0xce8, BIT(31), 0x1); // TX VDF Enable + } + + else{ + //====== RX mode TXK (RXK Step 1) ====== + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); // [31] = 0 --> Page C + // 1. TX RF Setting + rtl_set_rfreg(hw, path, 0xef, RFREG_OFFSET_MASK, 0x80000); + rtl_set_rfreg(hw, path, 0x30, RFREG_OFFSET_MASK, 0x30000); + rtl_set_rfreg(hw, path, 0x31, RFREG_OFFSET_MASK, 0x00029); + rtl_set_rfreg(hw, path, 0x32, RFREG_OFFSET_MASK, 0xd7ffb); + rtl_set_rfreg(hw, path, 0x65, RFREG_OFFSET_MASK, temp_reg65); + rtl_set_rfreg(hw, path, 0x8f, RFREG_OFFSET_MASK, 0x8a001); + rtl_set_rfreg(hw, path, 0xef, RFREG_OFFSET_MASK, 0x00000); + rtl_write_dword(rtlpriv, 0x90c, 0x00008000); + rtl_write_dword(rtlpriv, 0xb00, 0x03000100); + rtl_write_dword(rtlpriv, 0x984, 0x0046a910);// [0]:AGC_en, [15]:idac_K_Mask + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); // [31] = 1 --> Page C1 + rtl_write_dword(rtlpriv, 0xc80, 0x18008c10);// TX_Tone_idx[9:0], TxK_Mask[29] TX_Tone = 16 + rtl_write_dword(rtlpriv, 0xc84, 0x38008c10);// RX_Tone_idx[9:0], RxK_Mask[29] + rtl_write_dword(rtlpriv, 0xc88, 0x821603e0); + //ODM_Write4Byte(pDM_Odm, 0xc8c, 0x68163e96); + rtl_write_dword(rtlpriv, 0xcb8, 0x00100000);// cb8[20] N SI/PI ϥv iqk_dpk module + cal_retry = 0; + while(1){ + // one shot + rtl_write_dword(rtlpriv, 0x980, 0xfa000000); + rtl_write_dword(rtlpriv, 0x980, 0xf8000000); + + mdelay(10); //Delay 10ms + rtl_write_dword(rtlpriv, 0xcb8, 0x00000000); + delay_count = 0; + while (1){ + iqk_ready = rtl_get_bbreg(hw, 0xd00, BIT(10)); + if ((~iqk_ready)||(delay_count>20)){ + break; + } + else{ + mdelay(1); + delay_count++; + } + } + + if (delay_count < 20){ // If 20ms No Result, then cal_retry++ + // ============TXIQK Check============== + tx_fail = rtl_get_bbreg(hw, 0xd00, BIT(12)); + + if (~tx_fail){ + rtl_write_dword(rtlpriv, 0xcb8, 0x02000000); + tx_x0_rxk[cal] = rtl_get_bbreg(hw, 0xd00, 0x07ff0000)<<21; + rtl_write_dword(rtlpriv, 0xcb8, 0x04000000); + tx_y0_rxk[cal] = rtl_get_bbreg(hw, 0xd00, 0x07ff0000)<<21; + tx0iqkok = true; + break; + } + else{ + tx0iqkok = false; + cal_retry++; + if (cal_retry == 10) + break; + } + } + else{ + tx0iqkok = false; + cal_retry++; + if (cal_retry == 10) + break; + } + } + + + if (tx0iqkok == false){ //If RX mode TXK fail, then take TXK Result + tx_x0_rxk[cal] = tx_x0[cal]; + tx_y0_rxk[cal] = tx_y0[cal]; + tx0iqkok = true; + RT_TRACE(COMP_IQK, DBG_LOUD, ("1")); + } + + + //====== RX IQK ====== + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); // [31] = 0 --> Page C + // 1. RX RF Setting + rtl_set_rfreg(hw, path, 0xef, RFREG_OFFSET_MASK, 0x80000); + rtl_set_rfreg(hw, path, 0x30, RFREG_OFFSET_MASK, 0x30000); + rtl_set_rfreg(hw, path, 0x31, RFREG_OFFSET_MASK, 0x0002f); + rtl_set_rfreg(hw, path, 0x32, RFREG_OFFSET_MASK, 0xfffbb); + rtl_set_rfreg(hw, path, 0x8f, RFREG_OFFSET_MASK, 0x88001); + rtl_set_rfreg(hw, path, 0x65, RFREG_OFFSET_MASK, 0x931d8); + rtl_set_rfreg(hw, path, 0xef, RFREG_OFFSET_MASK, 0x00000); + + rtl_set_bbreg(hw, 0x978, 0x03FF8000, (tx_x0_rxk[cal])>>21&0x000007ff); + rtl_set_bbreg(hw, 0x978, 0x000007FF, (tx_y0_rxk[cal])>>21&0x000007ff); + rtl_set_bbreg(hw, 0x978, BIT(31), 0x1); + rtl_set_bbreg(hw, 0x97c, BIT(31), 0x0); + //ODM_SetBBReg(pDM_Odm, 0xcb8, 0xF, 0xe); + rtl_write_dword(rtlpriv, 0x90c, 0x00008000); + rtl_write_dword(rtlpriv, 0x984, 0x0046a911); + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); // [31] = 1 --> Page C1 + rtl_write_dword(rtlpriv, 0xc80, 0x38008c10);// TX_Tone_idx[9:0], TxK_Mask[29] TX_Tone = 16 + rtl_write_dword(rtlpriv, 0xc84, 0x18008c10);// RX_Tone_idx[9:0], RxK_Mask[29] + rtl_write_dword(rtlpriv, 0xc88, 0x02140119); + + rtl_write_dword(rtlpriv, 0xc8c, 0x28160d00); /*pDM_Odm->SupportInterface == 1*/ + + rtl_write_dword(rtlpriv, 0xcb8, 0x00100000);// cb8[20] N SI/PI ϥv iqk_dpk module + + cal_retry = 0; + while(1){ + // one shot + rtl_write_dword(rtlpriv, 0x980, 0xfa000000); + rtl_write_dword(rtlpriv, 0x980, 0xf8000000); + + mdelay(10); //Delay 10ms + rtl_write_dword(rtlpriv, 0xcb8, 0x00000000); + delay_count = 0; + while (1){ + iqk_ready = rtl_get_bbreg(hw, 0xd00, BIT(10)); + if ((~iqk_ready)||(delay_count>20)){ + break; + } + else{ + mdelay(1); + delay_count++; + } + } + + if (delay_count < 20){ // If 20ms No Result, then cal_retry++ + // ============RXIQK Check============== + rx_fail = rtl_get_bbreg(hw, 0xd00, BIT(11)); + if (rx_fail == 0){ + /* + ODM_Write4Byte(pDM_Odm, 0xcb8, 0x05000000); + reg1 = ODM_GetBBReg(pDM_Odm, 0xd00, 0xffffffff); + ODM_Write4Byte(pDM_Odm, 0xcb8, 0x06000000); + reg2 = ODM_GetBBReg(pDM_Odm, 0xd00, 0x0000001f); + DbgPrint("reg1 = %d, reg2 = %d", reg1, reg2); + Image_Power = (reg2<<32)+reg1; + DbgPrint("Before PW = %d\n", Image_Power); + ODM_Write4Byte(pDM_Odm, 0xcb8, 0x07000000); + reg1 = ODM_GetBBReg(pDM_Odm, 0xd00, 0xffffffff); + ODM_Write4Byte(pDM_Odm, 0xcb8, 0x08000000); + reg2 = ODM_GetBBReg(pDM_Odm, 0xd00, 0x0000001f); + Image_Power = (reg2<<32)+reg1; + DbgPrint("After PW = %d\n", Image_Power); + */ + + rtl_write_dword(rtlpriv, 0xcb8, 0x06000000); + rx_x0[cal] = rtl_get_bbreg(hw, 0xd00, 0x07ff0000)<<21; + rtl_write_dword(rtlpriv, 0xcb8, 0x08000000); + rx_y0[cal] = rtl_get_bbreg(hw, 0xd00, 0x07ff0000)<<21; + rx0iqkok = true; + break; + } + else{ + rtl_set_bbreg(hw, 0xc10, 0x000003ff, 0x200>>1); + rtl_set_bbreg(hw, 0xc10, 0x03ff0000, 0x0>>1); + rx0iqkok = false; + cal_retry++; + if (cal_retry == 10) + break; + + } + } + else{ + rx0iqkok = false; + cal_retry++; + if (cal_retry == 10) + break; + } + } + } + + if (tx0iqkok) + tx_average++; + if (rx0iqkok) + rx_average++; + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); // [31] = 0 --> Page C + rtl_set_rfreg(hw, path, 0x65, RFREG_OFFSET_MASK, temp_reg65); + } + break; + default: + break; + } + cal++; + } + + // FillIQK Result + switch (path){ + case RF90_PATH_A: + { + RT_TRACE(COMP_IQK, DBG_LOUD, ("========Path_A =======\n")); + if (tx_average == 0) + break; + + for (i = 0; i < tx_average; i++){ + RT_TRACE(COMP_IQK, DBG_LOUD, (" TX_X0_RXK[%d] = %x ;; TX_Y0_RXK[%d] = %x\n", i, (tx_x0_rxk[i])>>21&0x000007ff, i, (tx_y0_rxk[i])>>21&0x000007ff)); + RT_TRACE(COMP_IQK, DBG_LOUD, ("TX_X0[%d] = %x ;; TX_Y0[%d] = %x\n", i, (tx_x0[i])>>21&0x000007ff, i, (tx_y0[i])>>21&0x000007ff)); + } + for (i = 0; i < tx_average; i++){ + for (ii = i+1; ii >21) - (tx_x0[ii]>>21); + if (dx < 3 && dx > -3){ + dy = (tx_y0[i]>>21) - (tx_y0[ii]>>21); + if (dy < 3 && dy > -3){ + tx_x = ((tx_x0[i]>>21) + (tx_x0[ii]>>21))/2; + tx_y = ((tx_y0[i]>>21) + (tx_y0[ii]>>21))/2; + tx_finish = 1; + break; + } + } + } + if (tx_finish == 1) + break; + } + + if (tx_finish == 1){ + _rtl8821ae_iqk_tx_fill_iqc(hw, path, tx_x, tx_y); // ? + } + else{ + _rtl8821ae_iqk_tx_fill_iqc(hw, path, 0x200, 0x0); + } + + if (rx_average == 0) + break; + + for (i = 0; i < rx_average; i++){ + RT_TRACE(COMP_IQK, DBG_LOUD, ("RX_X0[%d] = %x ;; RX_Y0[%d] = %x\n", i, (rx_x0[i])>>21&0x000007ff, i, (rx_y0[i])>>21&0x000007ff)); + } + for (i = 0; i < rx_average; i++){ + for (ii = i+1; ii >21) - (rx_x0[ii]>>21); + if (dx < 4 && dx > -4){ + dy = (rx_y0[i]>>21) - (rx_y0[ii]>>21); + if (dy < 4 && dy > -4){ + rx_x = ((rx_x0[i]>>21) + (rx_x0[ii]>>21))/2; + rx_y = ((rx_y0[i]>>21) + (rx_y0[ii]>>21))/2; + rx_finish = 1; + break; + } + } + } + if (rx_finish == 1) + break; + } + + if (rx_finish == 1){ + _rtl8821ae_iqk_rx_fill_iqc(hw, path, rx_x, rx_y); + } + else{ + _rtl8821ae_iqk_rx_fill_iqc(hw, path, 0x200, 0x0); + } + } + break; + default: + break; + } +} + +void _rtl8821ae_iqk_restore_rf( + struct ieee80211_hw *hw, + enum radio_path path, + u32* backup_rf_reg, + u32* rf_backup, + u32 rf_reg_num + ) +{ + u32 i; + struct rtl_priv* rtlpriv = rtl_priv(hw); + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); // [31] = 0 --> Page C + for (i = 0; i < RF_REG_NUM; i++) + rtl_set_rfreg(hw, path, backup_rf_reg[i], RFREG_OFFSET_MASK, rf_backup[i]); + + switch(path){ + case RF90_PATH_A: + { + RT_TRACE(COMP_IQK, DBG_LOUD, ("RestoreRF Path A Success!!!!\n")); + } + break; + default: + break; + } +} + +void _rtl8821ae_iqk_restore_afe( + struct ieee80211_hw *hw, + u32* afe_backup, + u32* backup_afe_reg, + u32 afe_num + ) +{ + u32 i; + struct rtl_priv* rtlpriv = rtl_priv(hw); + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); // [31] = 0 --> Page C + //Reload AFE Parameters + for (i = 0; i < afe_num; i++){ + rtl_write_dword(rtlpriv, backup_afe_reg[i], afe_backup[i]); + } + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x1); // [31] = 1 --> Page C1 + rtl_write_dword(rtlpriv, 0xc80, 0x0); + rtl_write_dword(rtlpriv, 0xc84, 0x0); + rtl_write_dword(rtlpriv, 0xc88, 0x0); + rtl_write_dword(rtlpriv, 0xc8c, 0x3c000000); + rtl_write_dword(rtlpriv, 0xc90, 0x00000080); + rtl_write_dword(rtlpriv, 0xc94, 0x00000000); + rtl_write_dword(rtlpriv, 0xcc4, 0x20040000); + rtl_write_dword(rtlpriv, 0xcc8, 0x20000000); + rtl_write_dword(rtlpriv, 0xcb8, 0x0); + RT_TRACE(COMP_IQK, DBG_LOUD, ("RestoreAFE Success!!!!\n")); +} + +void _rtl8821ae_iqk_restore_macbb( + struct ieee80211_hw *hw, + u32* macbb_backup, + u32* backup_macbb_reg, + u32 macbb_num + ) +{ + u32 i; + struct rtl_priv* rtlpriv = rtl_priv(hw); + + rtl_set_bbreg(hw, 0x82c, BIT(31), 0x0); // [31] = 0 --> Page C + //Reload MacBB Parameters + for (i = 0; i < macbb_num; i++){ + rtl_write_dword(rtlpriv, backup_macbb_reg[i], macbb_backup[i]); + } + RT_TRACE(COMP_IQK, DBG_LOUD, ("RestoreMacBB Success!!!!\n")); +} + + +#undef MACBB_REG_NUM +#undef AFE_REG_NUM +#undef RF_REG_NUM + +#define MACBB_REG_NUM 11 +#define AFE_REG_NUM 12 +#define RF_REG_NUM 3 + +static void _rtl8821ae_phy_iq_calibrate(struct ieee80211_hw *hw) +{ + u32 macbb_backup[MACBB_REG_NUM]; + u32 afe_backup[AFE_REG_NUM]; + u32 rfa_backup[RF_REG_NUM]; + u32 rfb_backup[RF_REG_NUM]; + u32 backup_macbb_reg[MACBB_REG_NUM] = {0xb00, 0x520, 0x550, 0x808, 0x90c, 0xc00, 0xc50, + 0xe00, 0xe50, 0x838, 0x82c}; + u32 backup_afe_reg[AFE_REG_NUM] = {0xc5c, 0xc60, 0xc64, 0xc68, 0xc6c, 0xc70, 0xc74, + 0xc78, 0xc7c, 0xc80, 0xc84, 0xcb8}; + u32 backup_rf_reg[RF_REG_NUM] = {0x65, 0x8f, 0x0}; + + _rtl8821ae_iqk_backup_macbb(hw, macbb_backup, backup_macbb_reg, MACBB_REG_NUM); + _rtl8821ae_iqk_backup_afe(hw, afe_backup, backup_afe_reg, AFE_REG_NUM); + _rtl8821ae_iqk_backup_rf(hw, rfa_backup, rfb_backup, backup_rf_reg, RF_REG_NUM); + + _rtl8821ae_iqk_configure_mac(hw); + _rtl8821ae_iqk_tx(hw, RF90_PATH_A); + _rtl8821ae_iqk_restore_rf(hw, RF90_PATH_A, backup_rf_reg, rfa_backup, RF_REG_NUM); + + _rtl8821ae_iqk_restore_afe(hw, afe_backup, backup_afe_reg, AFE_REG_NUM); + _rtl8821ae_iqk_restore_macbb(hw, macbb_backup, backup_macbb_reg, MACBB_REG_NUM); +} + +static void _rtl8821ae_phy_lc_calibrate(struct ieee80211_hw *hw, bool is2t) +{ + u8 tmpreg; + u32 rf_a_mode = 0, rf_b_mode = 0, lc_cal; + struct rtl_priv *rtlpriv = rtl_priv(hw); + + tmpreg = rtl_read_byte(rtlpriv, 0xd03); + + if ((tmpreg & 0x70) != 0) + rtl_write_byte(rtlpriv, 0xd03, tmpreg & 0x8F); + else + rtl_write_byte(rtlpriv, REG_TXPAUSE, 0xFF); + + if ((tmpreg & 0x70) != 0) { + rf_a_mode = rtl_get_rfreg(hw, RF90_PATH_A, 0x00, MASK12BITS); + + if (is2t) + rf_b_mode = rtl_get_rfreg(hw, RF90_PATH_B, 0x00, + MASK12BITS); + + rtl_set_rfreg(hw, RF90_PATH_A, 0x00, MASK12BITS, + (rf_a_mode & 0x8FFFF) | 0x10000); + + if (is2t) + rtl_set_rfreg(hw, RF90_PATH_B, 0x00, MASK12BITS, + (rf_b_mode & 0x8FFFF) | 0x10000); + } + lc_cal = rtl_get_rfreg(hw, RF90_PATH_A, 0x18, MASK12BITS); + + rtl_set_rfreg(hw, RF90_PATH_A, 0xb0, RFREG_OFFSET_MASK, 0xdfbe0); + /* rtl_set_rfreg(hw, RF90_PATH_A, 0x18, MASK12BITS, lc_cal | 0x08000); */ + rtl_set_rfreg(hw, RF90_PATH_A, 0x18, MASK12BITS, 0x8c0a); + + mdelay(100); + + rtl_set_rfreg(hw, RF90_PATH_A, 0xb0, RFREG_OFFSET_MASK, 0xdffe0); + + if ((tmpreg & 0x70) != 0) { + rtl_write_byte(rtlpriv, 0xd03, tmpreg); + rtl_set_rfreg(hw, RF90_PATH_A, 0x00, MASK12BITS, rf_a_mode); + + if (is2t) + rtl_set_rfreg(hw, RF90_PATH_B, 0x00, MASK12BITS, rf_b_mode); + } else { + rtl_write_byte(rtlpriv, REG_TXPAUSE, 0x00); + } +RT_TRACE(COMP_INIT,DBG_LOUD,("\n")); + +} + +static void _rtl8821ae_phy_set_rfpath_switch(struct ieee80211_hw *hw, bool main) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + //struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + //struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + RT_TRACE(COMP_INIT,DBG_LOUD,("\n")); + + if (main) + rtl_set_bbreg(hw, RA_RFE_PINMUX + 4, BIT(29) | BIT(28), 0x1); + else + rtl_set_bbreg(hw, RA_RFE_PINMUX + 4, BIT(29) | BIT(28), 0x2); +} + +#undef IQK_ADDA_REG_NUM +#undef IQK_DELAY_TIME + +void rtl8812ae_phy_iq_calibrate(struct ieee80211_hw *hw, bool b_recovery) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + if (!rtlphy->b_iqk_in_progress) + { + spin_lock(&rtlpriv->locks.iqk_lock); + rtlphy->b_iqk_in_progress = true; + spin_unlock(&rtlpriv->locks.iqk_lock); + + _rtl8812ae_phy_iq_calibrate(hw, rtlphy->current_channel); + + spin_lock(&rtlpriv->locks.iqk_lock); + rtlphy->b_iqk_in_progress = false; + spin_unlock(&rtlpriv->locks.iqk_lock); + } +} + +void rtl8812ae_reset_iqk_result(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 i; + + RT_TRACE(COMP_IQK, DBG_LOUD, + ("rtl8812ae_dm_reset_iqk_result:: settings regs %d default regs %d\n", + (int)(sizeof(rtlphy->iqk_matrix_regsetting) / + sizeof(struct iqk_matrix_regs)), + IQK_MATRIX_SETTINGS_NUM)); + + for(i = 0; i < IQK_MATRIX_SETTINGS_NUM; i++) { + { + rtlphy->iqk_matrix_regsetting[i].value[0][0] = + rtlphy->iqk_matrix_regsetting[i].value[0][2] = + rtlphy->iqk_matrix_regsetting[i].value[0][4] = + rtlphy->iqk_matrix_regsetting[i].value[0][6] = 0x100; + + rtlphy->iqk_matrix_regsetting[i].value[0][1] = + rtlphy->iqk_matrix_regsetting[i].value[0][3] = + rtlphy->iqk_matrix_regsetting[i].value[0][5] = + rtlphy->iqk_matrix_regsetting[i].value[0][7] = 0x0; + + rtlphy->iqk_matrix_regsetting[i].b_iqk_done = false; + + } + } +} + +void rtl8812ae_do_iqk(struct ieee80211_hw *hw,u8 delta_thermal_index, + u8 thermal_value, u8 threshold) +{ + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + + rtl8812ae_reset_iqk_result(hw); + + rtldm->thermalvalue_iqk= thermal_value; + rtl8812ae_phy_iq_calibrate(hw, false); +} + +void rtl8821ae_phy_iq_calibrate(struct ieee80211_hw *hw, bool b_recovery) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + if (!rtlphy->b_iqk_in_progress) + { + spin_lock(&rtlpriv->locks.iqk_lock); + rtlphy->b_iqk_in_progress = true; + spin_unlock(&rtlpriv->locks.iqk_lock); + + _rtl8821ae_phy_iq_calibrate(hw); + + spin_lock(&rtlpriv->locks.iqk_lock); + rtlphy->b_iqk_in_progress = false; + spin_unlock(&rtlpriv->locks.iqk_lock); + } +} + +void rtl8821ae_reset_iqk_result(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 i; + + RT_TRACE(COMP_IQK, DBG_LOUD, + ("rtl8812ae_dm_reset_iqk_result:: settings regs %d default regs %d\n", + (int)(sizeof(rtlphy->iqk_matrix_regsetting) / + sizeof(struct iqk_matrix_regs)), + IQK_MATRIX_SETTINGS_NUM)); + + for(i = 0; i < IQK_MATRIX_SETTINGS_NUM; i++) { + { + rtlphy->iqk_matrix_regsetting[i].value[0][0] = + rtlphy->iqk_matrix_regsetting[i].value[0][2] = + rtlphy->iqk_matrix_regsetting[i].value[0][4] = + rtlphy->iqk_matrix_regsetting[i].value[0][6] = 0x100; + + rtlphy->iqk_matrix_regsetting[i].value[0][1] = + rtlphy->iqk_matrix_regsetting[i].value[0][3] = + rtlphy->iqk_matrix_regsetting[i].value[0][5] = + rtlphy->iqk_matrix_regsetting[i].value[0][7] = 0x0; + + rtlphy->iqk_matrix_regsetting[i].b_iqk_done = false; + + } + } +} + +void rtl8821ae_do_iqk(struct ieee80211_hw *hw,u8 delta_thermal_index, + u8 thermal_value, u8 threshold) +{ + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + + rtl8821ae_reset_iqk_result(hw); + + rtldm->thermalvalue_iqk= thermal_value; + rtl8821ae_phy_iq_calibrate(hw, false); +} + +void rtl8821ae_phy_lc_calibrate(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_hal *rtlhal = &(rtlpriv->rtlhal); + u32 timeout = 2000, timecount = 0; + + + while (rtlpriv->mac80211.act_scanning && timecount < timeout) { + udelay(50); + timecount += 50; + } + + rtlphy->lck_inprogress = true; + RTPRINT(rtlpriv, FINIT, INIT_IQK, + ("LCK:Start!!! currentband %x delay %d ms\n", + rtlhal->current_bandtype, timecount)); + + _rtl8821ae_phy_lc_calibrate(hw, false); + + rtlphy->lck_inprogress = false; +} + +void rtl8821ae_phy_ap_calibrate(struct ieee80211_hw *hw, char delta) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + if (rtlphy->b_apk_done) + return; + + return; +} + +void rtl8821ae_phy_set_rfpath_switch(struct ieee80211_hw *hw, bool bmain) +{ + _rtl8821ae_phy_set_rfpath_switch(hw, bmain); +} + +bool rtl8821ae_phy_set_io_cmd(struct ieee80211_hw *hw, enum io_type iotype) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + bool b_postprocessing = false; + + RT_TRACE(COMP_CMD, DBG_TRACE, + ("-->IO Cmd(%#x), set_io_inprogress(%d)\n", + iotype, rtlphy->set_io_inprogress)); + do { + switch (iotype) { + case IO_CMD_RESUME_DM_BY_SCAN: + RT_TRACE(COMP_CMD, DBG_TRACE, + ("[IO CMD] Resume DM after scan.\n")); + b_postprocessing = true; + break; + case IO_CMD_PAUSE_BAND0_DM_BY_SCAN: + case IO_CMD_PAUSE_BAND1_DM_BY_SCAN: + RT_TRACE(COMP_CMD, DBG_TRACE, + ("[IO CMD] Pause DM before scan.\n")); + b_postprocessing = true; + break; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("switch case not process \n")); + break; + } + } while (false); + if (b_postprocessing && !rtlphy->set_io_inprogress) { + rtlphy->set_io_inprogress = true; + rtlphy->current_io_type = iotype; + } else { + return false; + } + rtl8821ae_phy_set_io(hw); + RT_TRACE(COMP_CMD, DBG_TRACE, ("IO Type(%#x)\n", iotype)); + return true; +} + +static void rtl8821ae_phy_set_io(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + RT_TRACE(COMP_CMD, DBG_TRACE, + ("--->Cmd(%#x), set_io_inprogress(%d)\n", + rtlphy->current_io_type, rtlphy->set_io_inprogress)); + switch (rtlphy->current_io_type) { + case IO_CMD_RESUME_DM_BY_SCAN: + if (rtlpriv->mac80211.opmode== NL80211_IFTYPE_ADHOC) + _rtl8821ae_resume_tx_beacon(hw); + rtl8821ae_dm_write_dig(hw, rtlphy->initgain_backup.xaagccore1); + rtl8821ae_dm_write_cck_cca_thres(hw, rtlphy->initgain_backup.cca); + break; + case IO_CMD_PAUSE_BAND0_DM_BY_SCAN: + if (rtlpriv->mac80211.opmode== NL80211_IFTYPE_ADHOC) + _rtl8821ae_stop_tx_beacon(hw); + rtlphy->initgain_backup.xaagccore1 = dm_digtable.cur_igvalue; + rtl8821ae_dm_write_dig(hw, 0x17); + rtlphy->initgain_backup.cca = dm_digtable.cur_cck_cca_thres; + rtl8821ae_dm_write_cck_cca_thres(hw, 0x40); + break; + case IO_CMD_PAUSE_BAND1_DM_BY_SCAN: + break; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("switch case not process \n")); + break; + } + rtlphy->set_io_inprogress = false; + RT_TRACE(COMP_CMD, DBG_TRACE, + ("(%#x)\n", rtlphy->current_io_type)); +} + +static void rtl8821ae_phy_set_rf_on(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtl_write_byte(rtlpriv, REG_SPS0_CTRL, 0x2b); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN, 0xE3); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN, 0xE2); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN, 0xE3); + rtl_write_byte(rtlpriv, REG_TXPAUSE, 0x00); +} + +#if 0 +static void _rtl8821ae_phy_set_rf_sleep(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + rtl_write_byte(rtlpriv, REG_TXPAUSE, 0xFF); + rtl_set_rfreg(hw, RF90_PATH_A, 0x00, RFREG_OFFSET_MASK, 0x00); + /*rtl_write_byte(rtlpriv, REG_APSD_CTRL, 0x40); + u4b_tmp = rtl_get_rfreg(hw, RF90_PATH_A, 0, RFREG_OFFSET_MASK); + while (u4b_tmp != 0 && delay > 0) { + rtl_write_byte(rtlpriv, REG_APSD_CTRL, 0x0); + rtl_set_rfreg(hw, RF90_PATH_A, 0x00, RFREG_OFFSET_MASK, 0x00); + rtl_write_byte(rtlpriv, REG_APSD_CTRL, 0x40); + u4b_tmp = rtl_get_rfreg(hw, RF90_PATH_A, 0, RFREG_OFFSET_MASK); + delay--; + } + if (delay == 0) { + rtl_write_byte(rtlpriv, REG_APSD_CTRL, 0x00); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN, 0xE2); + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN, 0xE3); + rtl_write_byte(rtlpriv, REG_TXPAUSE, 0x00); + RT_TRACE(COMP_POWER, DBG_TRACE, + ("Switch RF timeout !!!.\n")); + return; + }*/ + rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN, 0xE2); + rtl_write_byte(rtlpriv, REG_SPS0_CTRL, 0x22); +} +#endif + +static bool _rtl8821ae_phy_set_rf_power_state(struct ieee80211_hw *hw, + enum rf_pwrstate rfpwr_state) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci_priv *pcipriv = rtl_pcipriv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + bool bresult = true; + u8 i, queue_id; + struct rtl8192_tx_ring *ring = NULL; + + switch (rfpwr_state) { + case ERFON:{ + if ((ppsc->rfpwr_state == ERFOFF) && + RT_IN_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_HALT_NIC)) { + bool rtstatus = false; + u32 InitializeCount = 0; + do { + InitializeCount++; + RT_TRACE(COMP_RF, DBG_DMESG, + ("IPS Set eRf nic enable\n")); + rtstatus = rtl_ps_enable_nic(hw); + } while ((rtstatus != true) + && (InitializeCount < 10)); + RT_CLEAR_PS_LEVEL(ppsc, + RT_RF_OFF_LEVL_HALT_NIC); + } else { + RT_TRACE(COMP_RF, DBG_DMESG, + ("Set ERFON sleeped:%d ms\n", + jiffies_to_msecs(jiffies - + ppsc-> + last_sleep_jiffies))); + ppsc->last_awake_jiffies = jiffies; + rtl8821ae_phy_set_rf_on(hw); + } + if (mac->link_state == MAC80211_LINKED) { + rtlpriv->cfg->ops->led_control(hw, + LED_CTL_LINK); + } else { + rtlpriv->cfg->ops->led_control(hw, + LED_CTL_NO_LINK); + } + break; + } + case ERFOFF:{ + for (queue_id = 0, i = 0; + queue_id < RTL_PCI_MAX_TX_QUEUE_COUNT;) { + ring = &pcipriv->dev.tx_ring[queue_id]; + if (skb_queue_len(&ring->queue) == 0) { + queue_id++; + continue; + } else { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("eRf Off/Sleep: %d times " + "TcbBusyQueue[%d] =%d before " + "doze!\n", (i + 1), queue_id, + skb_queue_len(&ring->queue))); + + udelay(10); + i++; + } + if (i >= MAX_DOZE_WAITING_TIMES_9x) { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("\n ERFSLEEP: %d times " + "TcbBusyQueue[%d] = %d !\n", + MAX_DOZE_WAITING_TIMES_9x, + queue_id, + skb_queue_len(&ring->queue))); + break; + } + } + + if (ppsc->reg_rfps_level & RT_RF_OFF_LEVL_HALT_NIC) { + RT_TRACE(COMP_RF, DBG_DMESG, + ("IPS Set eRf nic disable\n")); + rtl_ps_disable_nic(hw); + RT_SET_PS_LEVEL(ppsc, RT_RF_OFF_LEVL_HALT_NIC); + } else { + if (ppsc->rfoff_reason == RF_CHANGE_BY_IPS) { + rtlpriv->cfg->ops->led_control(hw, + LED_CTL_NO_LINK); + } else { + rtlpriv->cfg->ops->led_control(hw, + LED_CTL_POWER_OFF); + } + } + break; + } + /*case ERFSLEEP:{ + if (ppsc->rfpwr_state == ERFOFF) + break; + for (queue_id = 0, i = 0; + queue_id < RTL_PCI_MAX_TX_QUEUE_COUNT;) { + ring = &pcipriv->dev.tx_ring[queue_id]; + if (skb_queue_len(&ring->queue) == 0) { + queue_id++; + continue; + } else { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("eRf Off/Sleep: %d times " + "TcbBusyQueue[%d] =%d before " + "doze!\n", (i + 1), queue_id, + skb_queue_len(&ring->queue))); + + udelay(10); + i++; + } + if (i >= MAX_DOZE_WAITING_TIMES_9x) { + RT_TRACE(COMP_ERR, DBG_WARNING, + ("\n ERFSLEEP: %d times " + "TcbBusyQueue[%d] = %d !\n", + MAX_DOZE_WAITING_TIMES_9x, + queue_id, + skb_queue_len(&ring->queue))); + break; + } + } + RT_TRACE(COMP_RF, DBG_DMESG, + ("Set ERFSLEEP awaked:%d ms\n", + jiffies_to_msecs(jiffies - + ppsc->last_awake_jiffies))); + ppsc->last_sleep_jiffies = jiffies; + _rtl8821ae_phy_set_rf_sleep(hw); + break; + }*/ + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("switch case not process \n")); + bresult = false; + break; + } + if (bresult) + ppsc->rfpwr_state = rfpwr_state; + return bresult; +} + +bool rtl8821ae_phy_set_rf_power_state(struct ieee80211_hw *hw, + enum rf_pwrstate rfpwr_state) +{ + struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); + + bool bresult = false; + + if (rfpwr_state == ppsc->rfpwr_state) + return bresult; + bresult = _rtl8821ae_phy_set_rf_power_state(hw, rfpwr_state); + return bresult; +} --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/phy.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/phy.h @@ -0,0 +1,258 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8821AE_PHY_H__ +#define __RTL8821AE_PHY_H__ + +/*It must always set to 4, otherwise read efuse table secquence will be wrong.*/ +#define MAX_TX_COUNT 4 +#define TX_1S 0 +#define TX_2S 1 +#define TX_3S 2 +#define TX_4S 3 + +#define MAX_POWER_INDEX 0x3F + +#define MAX_PRECMD_CNT 16 +#define MAX_RFDEPENDCMD_CNT 16 +#define MAX_POSTCMD_CNT 16 + +#define MAX_DOZE_WAITING_TIMES_9x 64 + +#define RT_CANNOT_IO(hw) false +#define HIGHPOWER_RADIOA_ARRAYLEN 22 + +#define IQK_ADDA_REG_NUM 16 +#define IQK_BB_REG_NUM 9 +#define MAX_TOLERANCE 5 +#define IQK_DELAY_TIME 10 +#define index_mapping_NUM 15 + +#define APK_BB_REG_NUM 5 +#define APK_AFE_REG_NUM 16 +#define APK_CURVE_REG_NUM 4 +#define PATH_NUM 2 + +#define LOOP_LIMIT 5 +#define MAX_STALL_TIME 50 +#define AntennaDiversityValue 0x80 +#define MAX_TXPWR_IDX_NMODE_92S 63 +#define Reset_Cnt_Limit 3 + +#define IQK_ADDA_REG_NUM 16 +#define IQK_MAC_REG_NUM 4 + +#define RF6052_MAX_PATH 2 + +#define CT_OFFSET_MAC_ADDR 0X16 + +#define CT_OFFSET_CCK_TX_PWR_IDX 0x5A +#define CT_OFFSET_HT401S_TX_PWR_IDX 0x60 +#define CT_OFFSET_HT402S_TX_PWR_IDX_DIFF 0x66 +#define CT_OFFSET_HT20_TX_PWR_IDX_DIFF 0x69 +#define CT_OFFSET_OFDM_TX_PWR_IDX_DIFF 0x6C + +#define CT_OFFSET_HT40_MAX_PWR_OFFSET 0x6F +#define CT_OFFSET_HT20_MAX_PWR_OFFSET 0x72 + +#define CT_OFFSET_CHANNEL_PLAH 0x75 +#define CT_OFFSET_THERMAL_METER 0x78 +#define CT_OFFSET_RF_OPTION 0x79 +#define CT_OFFSET_VERSION 0x7E +#define CT_OFFSET_CUSTOMER_ID 0x7F + +#define RTL8821AE_MAX_PATH_NUM 2 + +#define TARGET_CHNL_NUM_2G_5G_8812 59 + +enum swchnlcmd_id { + CMDID_END, + CMDID_SET_TXPOWEROWER_LEVEL, + CMDID_BBREGWRITE10, + CMDID_WRITEPORT_ULONG, + CMDID_WRITEPORT_USHORT, + CMDID_WRITEPORT_UCHAR, + CMDID_RF_WRITEREG, +}; + +struct swchnlcmd { + enum swchnlcmd_id cmdid; + u32 para1; + u32 para2; + u32 msdelay; +}; + +enum hw90_block_e { + HW90_BLOCK_MAC = 0, + HW90_BLOCK_PHY0 = 1, + HW90_BLOCK_PHY1 = 2, + HW90_BLOCK_RF = 3, + HW90_BLOCK_MAXIMUM = 4, +}; + +enum baseband_config_type { + BASEBAND_CONFIG_PHY_REG = 0, + BASEBAND_CONFIG_AGC_TAB = 1, +}; + +enum ra_offset_area { + RA_OFFSET_LEGACY_OFDM1, + RA_OFFSET_LEGACY_OFDM2, + RA_OFFSET_HT_OFDM1, + RA_OFFSET_HT_OFDM2, + RA_OFFSET_HT_OFDM3, + RA_OFFSET_HT_OFDM4, + RA_OFFSET_HT_CCK, +}; + +enum antenna_path { + ANTENNA_NONE, + ANTENNA_D, + ANTENNA_C, + ANTENNA_CD, + ANTENNA_B, + ANTENNA_BD, + ANTENNA_BC, + ANTENNA_BCD, + ANTENNA_A, + ANTENNA_AD, + ANTENNA_AC, + ANTENNA_ACD, + ANTENNA_AB, + ANTENNA_ABD, + ANTENNA_ABC, + ANTENNA_ABCD +}; + +struct r_antenna_select_ofdm { + u32 r_tx_antenna:4; + u32 r_ant_l:4; + u32 r_ant_non_ht:4; + u32 r_ant_ht1:4; + u32 r_ant_ht2:4; + u32 r_ant_ht_s1:4; + u32 r_ant_non_ht_s1:4; + u32 ofdm_txsc:2; + u32 reserved:2; +}; + +struct r_antenna_select_cck { + u8 r_cckrx_enable_2:2; + u8 r_cckrx_enable:2; + u8 r_ccktx_enable:4; +}; + + +struct efuse_contents { + u8 mac_addr[ETH_ALEN]; + u8 cck_tx_power_idx[6]; + u8 ht40_1s_tx_power_idx[6]; + u8 ht40_2s_tx_power_idx_diff[3]; + u8 ht20_tx_power_idx_diff[3]; + u8 ofdm_tx_power_idx_diff[3]; + u8 ht40_max_power_offset[3]; + u8 ht20_max_power_offset[3]; + u8 channel_plan; + u8 thermal_meter; + u8 rf_option[5]; + u8 version; + u8 oem_id; + u8 regulatory; +}; + +struct tx_power_struct { + u8 cck[RTL8821AE_MAX_PATH_NUM][CHANNEL_MAX_NUMBER]; + u8 ht40_1s[RTL8821AE_MAX_PATH_NUM][CHANNEL_MAX_NUMBER]; + u8 ht40_2s[RTL8821AE_MAX_PATH_NUM][CHANNEL_MAX_NUMBER]; + u8 ht20_diff[RTL8821AE_MAX_PATH_NUM][CHANNEL_MAX_NUMBER]; + u8 legacy_ht_diff[RTL8821AE_MAX_PATH_NUM][CHANNEL_MAX_NUMBER]; + u8 legacy_ht_txpowerdiff; + u8 groupht20[RTL8821AE_MAX_PATH_NUM][CHANNEL_MAX_NUMBER]; + u8 groupht40[RTL8821AE_MAX_PATH_NUM][CHANNEL_MAX_NUMBER]; + u8 pwrgroup_cnt; + u32 mcs_original_offset[4][16]; +}; +enum _ANT_DIV_TYPE +{ + NO_ANTDIV = 0xFF, + CG_TRX_HW_ANTDIV = 0x01, + CGCS_RX_HW_ANTDIV = 0x02, + FIXED_HW_ANTDIV = 0x03, + CG_TRX_SMART_ANTDIV = 0x04, + CGCS_RX_SW_ANTDIV = 0x05, + +}; + +extern u32 rtl8821ae_phy_query_bb_reg(struct ieee80211_hw *hw, + u32 regaddr, u32 bitmask); +extern void rtl8821ae_phy_set_bb_reg(struct ieee80211_hw *hw, + u32 regaddr, u32 bitmask, u32 data); +extern u32 rtl8821ae_phy_query_rf_reg(struct ieee80211_hw *hw, + enum radio_path rfpath, u32 regaddr, + u32 bitmask); +extern void rtl8821ae_phy_set_rf_reg(struct ieee80211_hw *hw, + enum radio_path rfpath, u32 regaddr, + u32 bitmask, u32 data); +extern bool rtl8821ae_phy_mac_config(struct ieee80211_hw *hw); +extern bool rtl8821ae_phy_bb_config(struct ieee80211_hw *hw); +extern bool rtl8821ae_phy_rf_config(struct ieee80211_hw *hw); +extern void rtl8821ae_phy_switch_wirelessband(struct ieee80211_hw *hw, u8 band); +extern void rtl8821ae_phy_get_hw_reg_originalvalue(struct ieee80211_hw *hw); +extern void rtl8821ae_phy_get_txpower_level(struct ieee80211_hw *hw, + long *powerlevel); +extern void rtl8821ae_phy_set_txpower_level(struct ieee80211_hw *hw, u8 channel); +extern void rtl8821ae_phy_scan_operation_backup(struct ieee80211_hw *hw, + u8 operation); +extern void rtl8821ae_phy_set_bw_mode_callback(struct ieee80211_hw *hw); +extern void rtl8821ae_phy_set_bw_mode(struct ieee80211_hw *hw, + enum nl80211_channel_type ch_type); +extern void rtl8821ae_phy_sw_chnl_callback(struct ieee80211_hw *hw); +extern u8 rtl8821ae_phy_sw_chnl(struct ieee80211_hw *hw); +extern void rtl8821ae_phy_iq_calibrate(struct ieee80211_hw *hw, bool b_recovery); +extern void rtl8812ae_phy_iq_calibrate(struct ieee80211_hw *hw, bool b_recovery); +void rtl8821ae_phy_ap_calibrate(struct ieee80211_hw *hw, char delta); +void rtl8821ae_phy_lc_calibrate(struct ieee80211_hw *hw); +void rtl8821ae_phy_set_rfpath_switch(struct ieee80211_hw *hw, bool bmain); +bool rtl8812ae_phy_config_rf_with_headerfile(struct ieee80211_hw *hw, + enum radio_path rfpath); +bool rtl8821ae_phy_config_rf_with_headerfile(struct ieee80211_hw *hw, + enum radio_path rfpath); +bool rtl8821ae_phy_set_io_cmd(struct ieee80211_hw *hw, enum io_type iotype); +extern bool rtl8821ae_phy_set_rf_power_state(struct ieee80211_hw *hw, + enum rf_pwrstate rfpwr_state); +u8 _rtl8812ae_get_right_chnl_place_for_iqk(u8 chnl); +void rtl8821ae_phy_set_txpower_level_by_path(struct ieee80211_hw *hw, u8 channel, u8 path); +void rtl8812ae_do_iqk(struct ieee80211_hw *hw,u8 delta_thermal_index, + u8 thermal_value, u8 threshold); +void rtl8821ae_do_iqk(struct ieee80211_hw *hw,u8 delta_thermal_index, + u8 thermal_value, u8 threshold); +void rtl8821ae_reset_iqk_result(struct ieee80211_hw *hw); + + +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/pwrseq.c +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/pwrseq.c @@ -0,0 +1,199 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "pwrseqcmd.h" +#include "pwrseq.h" + +/* + drivers should parse below arrays and do the corresponding actions +*/ +//3 Power on Array +struct wlan_pwr_cfg rtl8812_power_on_flow[RTL8812_TRANS_CARDEMU_TO_ACT_STEPS+RTL8812_TRANS_END_STEPS]= +{ + RTL8812_TRANS_CARDEMU_TO_ACT + RTL8812_TRANS_END +}; + +//3Radio off GPIO Array +struct wlan_pwr_cfg rtl8812_radio_off_flow[RTL8812_TRANS_ACT_TO_CARDEMU_STEPS+RTL8812_TRANS_END_STEPS]= +{ + RTL8812_TRANS_ACT_TO_CARDEMU + RTL8812_TRANS_END +}; + +//3Card Disable Array +struct wlan_pwr_cfg rtl8812_card_disable_flow[ RTL8812_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8812_TRANS_CARDEMU_TO_PDN_STEPS + + RTL8812_TRANS_END_STEPS ] = +{ + RTL8812_TRANS_ACT_TO_CARDEMU + RTL8812_TRANS_CARDEMU_TO_CARDDIS + RTL8812_TRANS_END +}; + +//3 Card Enable Array +struct wlan_pwr_cfg rtl8812_card_enable_flow[ RTL8812_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8812_TRANS_CARDEMU_TO_PDN_STEPS + + RTL8812_TRANS_END_STEPS ] = +{ + RTL8812_TRANS_CARDDIS_TO_CARDEMU + RTL8812_TRANS_CARDEMU_TO_ACT + RTL8812_TRANS_END +}; + +//3Suspend Array +struct wlan_pwr_cfg rtl8812_suspend_flow[RTL8812_TRANS_ACT_TO_CARDEMU_STEPS+RTL8812_TRANS_CARDEMU_TO_SUS_STEPS+RTL8812_TRANS_END_STEPS]= +{ + RTL8812_TRANS_ACT_TO_CARDEMU + RTL8812_TRANS_CARDEMU_TO_SUS + RTL8812_TRANS_END +}; + +//3 Resume Array +struct wlan_pwr_cfg rtl8812_resume_flow[RTL8812_TRANS_ACT_TO_CARDEMU_STEPS+RTL8812_TRANS_CARDEMU_TO_SUS_STEPS+RTL8812_TRANS_END_STEPS]= +{ + RTL8812_TRANS_SUS_TO_CARDEMU + RTL8812_TRANS_CARDEMU_TO_ACT + RTL8812_TRANS_END +}; + + + +//3HWPDN Array +struct wlan_pwr_cfg rtl8812_hwpdn_flow[RTL8812_TRANS_ACT_TO_CARDEMU_STEPS+RTL8812_TRANS_CARDEMU_TO_PDN_STEPS+RTL8812_TRANS_END_STEPS]= +{ + RTL8812_TRANS_ACT_TO_CARDEMU + RTL8812_TRANS_CARDEMU_TO_PDN + RTL8812_TRANS_END +}; + +//3 Enter LPS +struct wlan_pwr_cfg rtl8812_enter_lps_flow[RTL8812_TRANS_ACT_TO_LPS_STEPS+RTL8812_TRANS_END_STEPS]= +{ + //FW behavior + RTL8812_TRANS_ACT_TO_LPS + RTL8812_TRANS_END +}; + +//3 Leave LPS +struct wlan_pwr_cfg rtl8812_leave_lps_flow[RTL8812_TRANS_LPS_TO_ACT_STEPS+RTL8812_TRANS_END_STEPS]= +{ + //FW behavior + RTL8812_TRANS_LPS_TO_ACT + RTL8812_TRANS_END +}; + + +/* + drivers should parse below arrays and do the corresponding actions +*/ +/*3 Power on Array*/ +struct wlan_pwr_cfg rtl8821A_power_on_flow[RTL8821A_TRANS_CARDEMU_TO_ACT_STEPS + + RTL8821A_TRANS_END_STEPS] = +{ + RTL8821A_TRANS_CARDEMU_TO_ACT + RTL8821A_TRANS_END +}; + +/*3Radio off GPIO Array */ +struct wlan_pwr_cfg rtl8821A_radio_off_flow[RTL8821A_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8821A_TRANS_END_STEPS] = +{ + RTL8821A_TRANS_ACT_TO_CARDEMU + RTL8821A_TRANS_END +}; + +/*3Card Disable Array*/ +struct wlan_pwr_cfg rtl8821A_card_disable_flow[RTL8821A_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8821A_TRANS_CARDEMU_TO_PDN_STEPS + + RTL8821A_TRANS_END_STEPS] = +{ + RTL8821A_TRANS_ACT_TO_CARDEMU + RTL8821A_TRANS_CARDEMU_TO_CARDDIS + RTL8821A_TRANS_END +}; + +/*3 Card Enable Array*/ +struct wlan_pwr_cfg rtl8821A_card_enable_flow[RTL8821A_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8821A_TRANS_CARDEMU_TO_ACT_STEPS /*RTL8821A_TRANS_CARDEMU_TO_PDN_STEPS*/ + + RTL8821A_TRANS_END_STEPS] = +{ + RTL8821A_TRANS_CARDDIS_TO_CARDEMU + RTL8821A_TRANS_CARDEMU_TO_ACT + RTL8821A_TRANS_END +}; + +/*3Suspend Array*/ +struct wlan_pwr_cfg rtl8821A_suspend_flow[RTL8821A_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8821A_TRANS_CARDEMU_TO_SUS_STEPS + + RTL8821A_TRANS_END_STEPS] = +{ + RTL8821A_TRANS_ACT_TO_CARDEMU + RTL8821A_TRANS_CARDEMU_TO_SUS + RTL8821A_TRANS_END +}; + +/*3 Resume Array*/ +struct wlan_pwr_cfg rtl8821A_resume_flow[RTL8821A_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8821A_TRANS_CARDEMU_TO_SUS_STEPS + + RTL8821A_TRANS_END_STEPS] = +{ + RTL8821A_TRANS_SUS_TO_CARDEMU + RTL8821A_TRANS_CARDEMU_TO_ACT + RTL8821A_TRANS_END +}; + +/*3HWPDN Array*/ +struct wlan_pwr_cfg rtl8821A_hwpdn_flow[RTL8821A_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8821A_TRANS_CARDEMU_TO_PDN_STEPS + + RTL8821A_TRANS_END_STEPS] = +{ + RTL8821A_TRANS_ACT_TO_CARDEMU + RTL8821A_TRANS_CARDEMU_TO_PDN + RTL8821A_TRANS_END +}; + +/*3 Enter LPS */ +struct wlan_pwr_cfg rtl8821A_enter_lps_flow[RTL8821A_TRANS_ACT_TO_LPS_STEPS + + RTL8821A_TRANS_END_STEPS] = +{ + /*FW behavior*/ + RTL8821A_TRANS_ACT_TO_LPS + RTL8821A_TRANS_END +}; + +/*3 Leave LPS */ +struct wlan_pwr_cfg rtl8821A_leave_lps_flow[RTL8821A_TRANS_LPS_TO_ACT_STEPS + + RTL8821A_TRANS_END_STEPS] = +{ + /*FW behavior*/ + RTL8821A_TRANS_LPS_TO_ACT + RTL8821A_TRANS_END +}; + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/pwrseq.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/pwrseq.h @@ -0,0 +1,413 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8821AE_PWRSEQ_H__ +#define __RTL8821AE_PWRSEQ_H__ + +#include "pwrseqcmd.h" +#include "../btcoexist/halbt_precomp.h" + +#define RTL8812_TRANS_CARDEMU_TO_ACT_STEPS 15 +#define RTL8812_TRANS_ACT_TO_CARDEMU_STEPS 15 +#define RTL8812_TRANS_CARDEMU_TO_SUS_STEPS 15 +#define RTL8812_TRANS_SUS_TO_CARDEMU_STEPS 15 +#define RTL8812_TRANS_CARDEMU_TO_PDN_STEPS 25 +#define RTL8812_TRANS_PDN_TO_CARDEMU_STEPS 15 +#define RTL8812_TRANS_ACT_TO_LPS_STEPS 15 +#define RTL8812_TRANS_LPS_TO_ACT_STEPS 15 +#define RTL8812_TRANS_END_STEPS 1 + + +#define RTL8812_TRANS_CARDEMU_TO_ACT \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT2, 0},/* disable SW LPS 0x04[10]=0*/ \ + {0x0006, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_POLLING, BIT1, BIT1},/* wait till 0x04[17] = 1 power ready*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT7, 0},/* disable HWPDN 0x04[15]=0*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT3, 0},/* disable WL suspend*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0, BIT0},/* polling until return 0*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_POLLING, BIT0, 0},/**/ + +#define RTL8812_TRANS_ACT_TO_CARDEMU \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0c00, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x04}, /* 0xc00[7:0] = 4 turn off 3-wire */ \ + {0x0e00, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x04}, /* 0xe00[7:0] = 4 turn off 3-wire */ \ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0, 0}, /* 0x2[0] = 0 RESET BB, CLOSE RF */ \ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_DELAY, 0, PWRSEQ_DELAY_US},/*Delay 1us*/ \ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1, 0}, /* Whole BB is reset*/ \ + /*{0x001F, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0},//0x1F[7:0] = 0 turn off RF*/ \ + /*{0x004E, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT7, 0},//0x4C[23] = 0x4E[7] = 0, switch DPDT_SEL_P output from register 0x65[2] */ \ + {0x0007, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x2A}, /* 0x07[7:0] = 0x28 sps pwm mode 0x2a for BT coex*/ \ + {0x0008, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0x02, 0},/*0x8[1] = 0 ANA clk =500k */ \ + /*{0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0|BIT1, 0}, // 0x02[1:0] = 0 reset BB */ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1, BIT1}, /*0x04[9] = 1 turn off MAC by HW state machine*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_POLLING, BIT1, 0}, /*wait till 0x04[9] = 0 polling until return 0 to disable*/ + +#define RTL8812_TRANS_CARDEMU_TO_SUS \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0042, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xF0, 0xcc},\ + {0x0042, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xF0, 0xEC},\ + {0x0043, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x07},/* gpio11 input mode, gpio10~8 output mode */ \ + {0x0045, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x00},/* gpio 0~7 output same value as input ?? */ \ + {0x0046, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0xff},/* gpio0~7 output mode */ \ + {0x0047, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0},/* 0x47[7:0] = 00 gpio mode */ \ + {0x0007, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0},/* suspend option all off */ \ + {0x0014, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0x80, BIT7},/*0x14[7] = 1 turn on ZCD */ \ + {0x0015, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0x01, BIT0},/* 0x15[0] =1 trun on ZCD */ \ + {0x0023, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0x10, BIT4},/*0x23[4] = 1 hpon LDO sleep mode */ \ + {0x0008, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0x02, 0},/*0x8[1] = 0 ANA clk =500k */ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT3, BIT3}, /*0x04[11] = 2b'11 enable WL suspend for PCIe*/ + +#define RTL8812_TRANS_SUS_TO_CARDEMU \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT3, 0}, /*0x04[11] = 2b'01enable WL suspend*/ \ + {0x0023, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0x10, 0},/*0x23[4] = 0 hpon LDO sleep mode leave */ \ + {0x0015, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0x01, 0},/* 0x15[0] =0 trun off ZCD */ \ + {0x0014, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0x80, 0},/*0x14[7] = 0 turn off ZCD */ \ + {0x0046, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x00},/* gpio0~7 input mode */ \ + {0x0043, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x00},/* gpio11 input mode, gpio10~8 input mode */ + +#define RTL8812_TRANS_CARDEMU_TO_CARDDIS \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + /**{0x0194, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0, 0}, //0x194[0]=0 , disable 32K clock*/ \ + /**{0x0093, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x94}, //0x93=0x94 , 90[30] =0 enable 500k ANA clock .switch clock from 12M to 500K , 90 [26] =0 disable EEprom loader clock*/ \ + {0x0003, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT2, 0}, /*0x03[2] = 0, reset 8051*/ \ + {0x0080, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x05}, /*0x80=05h if reload fw, fill the default value of host_CPU handshake field*/ \ + {0x0042, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xF0, 0xcc},\ + {0x0042, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xF0, 0xEC},\ + {0x0043, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x07},/* gpio11 input mode, gpio10~8 output mode */ \ + {0x0045, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x00},/* gpio 0~7 output same value as input ?? */ \ + {0x0046, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0xff},/* gpio0~7 output mode */ \ + {0x0047, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0},/* 0x47[7:0] = 00 gpio mode */ \ + {0x0014, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0x80, BIT7},/*0x14[7] = 1 turn on ZCD */ \ + {0x0015, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0x01, BIT0},/* 0x15[0] =1 trun on ZCD */ \ + {0x0012, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0x01, 0},/*0x12[0] = 0 force PFM mode */ \ + {0x0023, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0x10, BIT4},/*0x23[4] = 1 hpon LDO sleep mode */ \ + {0x0008, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0x02, 0},/*0x8[1] = 0 ANA clk =500k */ \ + {0x0007, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x20}, /*0x07=0x20 , SOP option to disable BG/MB*/ \ + {0x001f, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1, 0}, /*0x01f[1]=0 , disable RFC_0 control REG_RF_CTRL_8812 */ \ + {0x0076, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1, 0}, /*0x076[1]=0 , disable RFC_1 control REG_OPT_CTRL_8812 +2 */ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT3, BIT3}, /*0x04[11] = 2b'01 enable WL suspend*/ + +#define RTL8812_TRANS_CARDDIS_TO_CARDEMU \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0012, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0, BIT0},/*0x12[0] = 1 force PWM mode */ \ + {0x0014, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0x80, 0},/*0x14[7] = 0 turn off ZCD */ \ + {0x0015, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0x01, 0},/* 0x15[0] =0 trun off ZCD */ \ + {0x0023, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0x10, 0},/*0x23[4] = 0 hpon LDO leave sleep mode */ \ + {0x0046, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x00},/* gpio0~7 input mode */ \ + {0x0043, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x00},/* gpio11 input mode, gpio10~8 input mode */ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT2, 0}, /*0x04[10] = 0, enable SW LPS PCIE only*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT3, 0}, /*0x04[11] = 2b'01enable WL suspend*/ \ + {0x0003, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT2, BIT2}, /*0x03[2] = 1, enable 8051*/ \ + {0x0301, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0},/*PCIe DMA start*/ + + +#define RTL8812_TRANS_CARDEMU_TO_PDN \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT7, BIT7},/* 0x04[15] = 1*/ + +#define RTL8812_TRANS_PDN_TO_CARDEMU \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT7, 0},/* 0x04[15] = 0*/ + +#define RTL8812_TRANS_ACT_TO_LPS \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0301, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0xFF},/*PCIe DMA stop*/ \ + {0x0522, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x7F},/*Tx Pause*/ \ + {0x05F8, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_POLLING, 0xFF, 0},/*Should be zero if no packet is transmitting*/ \ + {0x05F9, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_POLLING, 0xFF, 0},/*Should be zero if no packet is transmitting*/ \ + {0x05FA, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_POLLING, 0xFF, 0},/*Should be zero if no packet is transmitting*/ \ + {0x05FB, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_POLLING, 0xFF, 0},/*Should be zero if no packet is transmitting*/ \ + {0x0c00, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x04}, /* 0xc00[7:0] = 4 turn off 3-wire */ \ + {0x0e00, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x04}, /* 0xe00[7:0] = 4 turn off 3-wire */ \ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0, 0},/*CCK and OFDM are disabled,and clock are gated,and RF closed*/ \ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_DELAY, 0, PWRSEQ_DELAY_US},/*Delay 1us*/ \ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1, 0}, /* Whole BB is reset*/ \ + {0x0100, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x03},/*Reset MAC TRX*/ \ + {0x0101, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1, 0},/*check if removed later*/ \ + {0x0553, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT5, BIT5},/*Respond TxOK to scheduler*/ + + +#define RTL8812_TRANS_LPS_TO_ACT \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0080, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_SDIO,PWR_CMD_WRITE, 0xFF, 0x84}, /*SDIO RPWM*/ \ + {0xFE58, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x84}, /*USB RPWM*/ \ + {0x0361, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x84}, /*PCIe RPWM*/ \ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_DELAY, 0, PWRSEQ_DELAY_MS}, /*Delay*/ \ + {0x0008, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT4, 0}, /*. 0x08[4] = 0 switch TSF to 40M*/ \ + {0x0109, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_POLLING, BIT7, 0}, /*Polling 0x109[7]=0 TSF in 40M*/ \ + {0x0029, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT6|BIT7, 0}, /*. 0x29[7:6] = 2b'00 enable BB clock*/ \ + {0x0101, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1, BIT1}, /*. 0x101[1] = 1*/ \ + {0x0100, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0xFF}, /*. 0x100[7:0] = 0xFF enable WMAC TRX*/ \ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1|BIT0, BIT1|BIT0}, /*. 0x02[1:0] = 2b'11 enable BB macro*/ \ + {0x0522, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0}, /*. 0x522 = 0*/ + +#define RTL8812_TRANS_END \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0xFFFF, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,0,PWR_CMD_END, 0, 0}, // + + +extern struct wlan_pwr_cfg rtl8812_power_on_flow[RTL8812_TRANS_CARDEMU_TO_ACT_STEPS+RTL8812_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8812_radio_off_flow[RTL8812_TRANS_ACT_TO_CARDEMU_STEPS+RTL8812_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8812_card_disable_flow[RTL8812_TRANS_ACT_TO_CARDEMU_STEPS+RTL8812_TRANS_CARDEMU_TO_PDN_STEPS+RTL8812_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8812_card_enable_flow[RTL8812_TRANS_ACT_TO_CARDEMU_STEPS+RTL8812_TRANS_CARDEMU_TO_PDN_STEPS+RTL8812_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8812_suspend_flow[RTL8812_TRANS_ACT_TO_CARDEMU_STEPS+RTL8812_TRANS_CARDEMU_TO_SUS_STEPS+RTL8812_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8812_resume_flow[RTL8812_TRANS_ACT_TO_CARDEMU_STEPS+RTL8812_TRANS_CARDEMU_TO_SUS_STEPS+RTL8812_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8812_hwpdn_flow[RTL8812_TRANS_ACT_TO_CARDEMU_STEPS+RTL8812_TRANS_CARDEMU_TO_PDN_STEPS+RTL8812_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8812_enter_lps_flow[RTL8812_TRANS_ACT_TO_LPS_STEPS+RTL8812_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8812_leave_lps_flow[RTL8812_TRANS_LPS_TO_ACT_STEPS+RTL8812_TRANS_END_STEPS]; + +/* + Check document WM-20130516-JackieLau-RTL8821A_Power_Architecture-R10.vsd + There are 6 HW Power States: + 0: POFF--Power Off + 1: PDN--Power Down + 2: CARDEMU--Card Emulation + 3: ACT--Active Mode + 4: LPS--Low Power State + 5: SUS--Suspend + + The transision from different states are defined below + TRANS_CARDEMU_TO_ACT + TRANS_ACT_TO_CARDEMU + TRANS_CARDEMU_TO_SUS + TRANS_SUS_TO_CARDEMU + TRANS_CARDEMU_TO_PDN + TRANS_ACT_TO_LPS + TRANS_LPS_TO_ACT + + TRANS_END +*/ +#define RTL8821A_TRANS_CARDEMU_TO_ACT_STEPS 25 +#define RTL8821A_TRANS_ACT_TO_CARDEMU_STEPS 15 +#define RTL8821A_TRANS_CARDEMU_TO_SUS_STEPS 15 +#define RTL8821A_TRANS_SUS_TO_CARDEMU_STEPS 15 +#define RTL8821A_TRANS_CARDDIS_TO_CARDEMU_STEPS 15 +#define RTL8821A_TRANS_CARDEMU_TO_PDN_STEPS 15 +#define RTL8821A_TRANS_PDN_TO_CARDEMU_STEPS 15 +#define RTL8821A_TRANS_ACT_TO_LPS_STEPS 15 +#define RTL8821A_TRANS_LPS_TO_ACT_STEPS 15 +#define RTL8821A_TRANS_END_STEPS 1 + + +#define RTL8821A_TRANS_CARDEMU_TO_ACT \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0020, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK|PWR_INTF_SDIO_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0, BIT0}, /*0x20[0] = 1b'1 enable LDOA12 MACRO block for all interface*/ \ + {0x0067, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK|PWR_INTF_SDIO_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT4, 0}, /*0x67[0] = 0 to disable BT_GPS_SEL pins*/ \ + {0x0001, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK|PWR_INTF_SDIO_MSK,PWR_BASEADDR_MAC,PWR_CMD_DELAY, 1, PWRSEQ_DELAY_MS},/*Delay 1ms*/ \ + {0x0000, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK|PWR_INTF_SDIO_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT5, 0}, /*0x00[5] = 1b'0 release analog Ips to digital ,1:isolation*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, (BIT4|BIT3|BIT2), 0},/* disable SW LPS 0x04[10]=0 and WLSUS_EN 0x04[12:11]=0*/ \ + {0x0075, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0 , BIT0},/* Disable USB suspend */ \ + {0x0006, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_POLLING, BIT1, BIT1},/* wait till 0x04[17] = 1 power ready*/ \ + {0x0075, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0 , 0},/* Enable USB suspend */ \ + {0x0006, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0, BIT0},/* release WLON reset 0x04[16]=1*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT7, 0},/* disable HWPDN 0x04[15]=0*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, (BIT4|BIT3), 0},/* disable WL suspend*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0, BIT0},/* polling until return 0*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_POLLING, BIT0, 0},/**/ \ + {0x004F, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0, BIT0},/*0x4C[24] = 0x4F[0] = 1, switch DPDT_SEL_P output from WL BB */\ + {0x0067, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, (BIT5|BIT4), (BIT5|BIT4)},/*0x66[13] = 0x67[5] = 1, switch for PAPE_G/PAPE_A from WL BB ; 0x66[12] = 0x67[4] = 1, switch LNAON from WL BB */\ + {0x0025, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT6, 0},/*anapar_mac<118> , 0x25[6]=0 by wlan single function*/\ + {0x0049, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1, BIT1},/*Enable falling edge triggering interrupt*/\ + {0x0063, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1, BIT1},/*Enable GPIO9 interrupt mode*/\ + {0x0062, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1, 0},/*Enable GPIO9 input mode*/\ + {0x0058, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0, BIT0},/*Enable HSISR GPIO[C:0] interrupt*/\ + {0x005A, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1, BIT1},/*Enable HSISR GPIO9 interrupt*/\ + {0x007A, PWR_CUT_TESTCHIP_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x3A},/*0x7A = 0x3A start BT*/\ + {0x002E, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF , 0x82 },/* 0x2C[23:12]=0x820 ; XTAL trim */ \ + {0x0010, PWR_CUT_A_MSK , PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT6 , BIT6 },/* 0x10[6]=1 ; MPsW0x2CvA0x10[6]]1~WLAN */ \ + + +#define RTL8821A_TRANS_ACT_TO_CARDEMU \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x001F, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0},/*0x1F[7:0] = 0 turn off RF*/ \ + {0x004F, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0, 0},/*0x4C[24] = 0x4F[0] = 0, switch DPDT_SEL_P output from register 0x65[2] */\ + {0x0049, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1, 0},/*Enable rising edge triggering interrupt*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1, BIT1}, /*0x04[9] = 1 turn off MAC by HW state machine*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_POLLING, BIT1, 0}, /*wait till 0x04[9] = 0 polling until return 0 to disable*/ \ + {0x0000, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK|PWR_INTF_SDIO_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT5, BIT5}, /*0x00[5] = 1b'1 analog Ips to digital ,1:isolation*/ \ + {0x0020, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK|PWR_INTF_SDIO_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0, 0}, /*0x20[0] = 1b'0 disable LDOA12 MACRO block*/ \ + + +#define RTL8821A_TRANS_CARDEMU_TO_SUS \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT4|BIT3, (BIT4|BIT3)}, /*0x04[12:11] = 2b'11 enable WL suspend for PCIe*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK|PWR_INTF_SDIO_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT3|BIT4, BIT3}, /*0x04[12:11] = 2b'01 enable WL suspend*/ \ + {0x0023, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT4, BIT4}, /*0x23[4] = 1b'1 12H LDO enter sleep mode*/ \ + {0x0007, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x20}, /*0x07[7:0] = 0x20 SDIO SOP option to disable BG/MB/ACK/SWR*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT3|BIT4, BIT3|BIT4}, /*0x04[12:11] = 2b'11 enable WL suspend for PCIe*/ \ + {0x0086, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_SDIO,PWR_CMD_WRITE, BIT0, BIT0}, /*Set SDIO suspend local register*/ \ + {0x0086, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_SDIO,PWR_CMD_POLLING, BIT1, 0}, /*wait power state to suspend*/ + +#define RTL8821A_TRANS_SUS_TO_CARDEMU \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT3 | BIT7, 0}, /*clear suspend enable and power down enable*/ \ + {0x0086, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_SDIO,PWR_CMD_WRITE, BIT0, 0}, /*Set SDIO suspend local register*/ \ + {0x0086, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_SDIO,PWR_CMD_POLLING, BIT1, BIT1}, /*wait power state to suspend*/\ + {0x0023, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT4, 0}, /*0x23[4] = 1b'0 12H LDO enter normal mode*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT3|BIT4, 0}, /*0x04[12:11] = 2b'01enable WL suspend*/ + +#define RTL8821A_TRANS_CARDEMU_TO_CARDDIS \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0007, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x20}, /*0x07=0x20 , SOP option to disable BG/MB*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK|PWR_INTF_SDIO_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT3|BIT4, BIT3}, /*0x04[12:11] = 2b'01 enable WL suspend*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT2, BIT2}, /*0x04[10] = 1, enable SW LPS*/ \ + {0x004A, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0, 1}, /*0x48[16] = 1 to enable GPIO9 as EXT WAKEUP*/ \ + {0x0023, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT4, BIT4}, /*0x23[4] = 1b'1 12H LDO enter sleep mode*/ \ + {0x0086, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_SDIO,PWR_CMD_WRITE, BIT0, BIT0}, /*Set SDIO suspend local register*/ \ + {0x0086, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_SDIO,PWR_CMD_POLLING, BIT1, 0}, /*wait power state to suspend*/ + +#define RTL8821A_TRANS_CARDDIS_TO_CARDEMU \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT3 | BIT7, 0}, /*clear suspend enable and power down enable*/ \ + {0x0086, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_SDIO,PWR_CMD_WRITE, BIT0, 0}, /*Set SDIO suspend local register*/ \ + {0x0086, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_SDIO,PWR_CMD_POLLING, BIT1, BIT1}, /*wait power state to suspend*/\ + {0x004A, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0, 0}, /*0x48[16] = 0 to disable GPIO9 as EXT WAKEUP*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT3|BIT4, 0}, /*0x04[12:11] = 2b'01enable WL suspend*/\ + {0x0023, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT4, 0}, /*0x23[4] = 1b'0 12H LDO enter normal mode*/ \ + {0x0301, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0},/*PCIe DMA start*/ + + +#define RTL8821A_TRANS_CARDEMU_TO_PDN \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0023, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT4, BIT4}, /*0x23[4] = 1b'1 12H LDO enter sleep mode*/ \ + {0x0007, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK|PWR_INTF_USB_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x20}, /*0x07[7:0] = 0x20 SOP option to disable BG/MB/ACK/SWR*/ \ + {0x0006, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0, 0},/* 0x04[16] = 0*/\ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT7, BIT7},/* 0x04[15] = 1*/ + +#define RTL8821A_TRANS_PDN_TO_CARDEMU \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0005, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT7, 0},/* 0x04[15] = 0*/ + +#define RTL8821A_TRANS_ACT_TO_LPS \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0301, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0xFF},/*PCIe DMA stop*/ \ + {0x0522, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0xFF},/*Tx Pause*/ \ + {0x05F8, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_POLLING, 0xFF, 0},/*Should be zero if no packet is transmitting*/ \ + {0x05F9, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_POLLING, 0xFF, 0},/*Should be zero if no packet is transmitting*/ \ + {0x05FA, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_POLLING, 0xFF, 0},/*Should be zero if no packet is transmitting*/ \ + {0x05FB, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_POLLING, 0xFF, 0},/*Should be zero if no packet is transmitting*/ \ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT0, 0},/*CCK and OFDM are disabled,and clock are gated*/ \ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_DELAY, 0, PWRSEQ_DELAY_US},/*Delay 1us*/ \ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1, 0},/*Whole BB is reset*/ \ + {0x0100, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x03},/*Reset MAC TRX*/ \ + {0x0101, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1, 0},/*check if removed later*/ \ + {0x0093, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x00},/*When driver enter Sus/ Disable, enable LOP for BT*/ \ + {0x0553, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT5, BIT5},/*Respond TxOK to scheduler*/ \ + + +#define RTL8821A_TRANS_LPS_TO_ACT \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0x0080, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_SDIO_MSK,PWR_BASEADDR_SDIO,PWR_CMD_WRITE, 0xFF, 0x84}, /*SDIO RPWM*/\ + {0xFE58, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_USB_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x84}, /*USB RPWM*/\ + {0x0361, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_PCI_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0x84}, /*PCIe RPWM*/\ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_DELAY, 0, PWRSEQ_DELAY_MS}, /*Delay*/\ + {0x0008, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT4, 0}, /*. 0x08[4] = 0 switch TSF to 40M*/\ + {0x0109, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_POLLING, BIT7, 0}, /*Polling 0x109[7]=0 TSF in 40M*/\ + {0x0029, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT6|BIT7, 0}, /*. 0x29[7:6] = 2b'00 enable BB clock*/\ + {0x0101, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1, BIT1}, /*. 0x101[1] = 1*/\ + {0x0100, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0xFF}, /*. 0x100[7:0] = 0xFF enable WMAC TRX*/\ + {0x0002, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, BIT1|BIT0, BIT1|BIT0}, /*. 0x02[1:0] = 2b'11 enable BB macro*/\ + {0x0522, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,PWR_BASEADDR_MAC,PWR_CMD_WRITE, 0xFF, 0}, /*. 0x522 = 0*/ + +#define RTL8821A_TRANS_END \ + /* format */ \ + /* { offset, cut_msk, fab_msk|interface_msk, base|cmd, msk, value }, // comments here*/ \ + {0xFFFF, PWR_CUT_ALL_MSK, PWR_FAB_ALL_MSK, PWR_INTF_ALL_MSK,0,PWR_CMD_END, 0, 0}, // + +extern struct wlan_pwr_cfg rtl8821A_power_on_flow[RTL8821A_TRANS_CARDEMU_TO_ACT_STEPS + + RTL8821A_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8821A_radio_off_flow[RTL8821A_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8821A_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8821A_card_disable_flow[RTL8821A_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8821A_TRANS_CARDEMU_TO_PDN_STEPS + + RTL8821A_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8821A_card_enable_flow[RTL8821A_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8821A_TRANS_CARDEMU_TO_ACT_STEPS/*RTL8821A_TRANS_CARDEMU_TO_PDN_STEPS*/ + + RTL8821A_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8821A_suspend_flow[RTL8821A_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8821A_TRANS_CARDEMU_TO_SUS_STEPS + + RTL8821A_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8821A_resume_flow[RTL8821A_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8821A_TRANS_CARDEMU_TO_SUS_STEPS + + RTL8821A_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8821A_hwpdn_flow[RTL8821A_TRANS_ACT_TO_CARDEMU_STEPS + + RTL8821A_TRANS_CARDEMU_TO_PDN_STEPS + + RTL8821A_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8821A_enter_lps_flow[RTL8821A_TRANS_ACT_TO_LPS_STEPS + + RTL8821A_TRANS_END_STEPS]; +extern struct wlan_pwr_cfg rtl8821A_leave_lps_flow[RTL8821A_TRANS_LPS_TO_ACT_STEPS + + RTL8821A_TRANS_END_STEPS]; + +/*RTL8812 Power Configuration CMDs for PCIe interface*/ +#define RTL8812_NIC_PWR_ON_FLOW rtl8812_power_on_flow +#define RTL8812_NIC_RF_OFF_FLOW rtl8812_radio_off_flow +#define RTL8812_NIC_DISABLE_FLOW rtl8812_card_disable_flow +#define RTL8812_NIC_ENABLE_FLOW rtl8812_card_enable_flow +#define RTL8812_NIC_SUSPEND_FLOW rtl8812_suspend_flow +#define RTL8812_NIC_RESUME_FLOW rtl8812_resume_flow +#define RTL8812_NIC_PDN_FLOW rtl8812_hwpdn_flow +#define RTL8812_NIC_LPS_ENTER_FLOW rtl8812_enter_lps_flow +#define RTL8812_NIC_LPS_LEAVE_FLOW rtl8812_leave_lps_flow + +/* RTL8821 Power Configuration CMDs for PCIe interface */ +#define RTL8821A_NIC_PWR_ON_FLOW rtl8821A_power_on_flow +#define RTL8821A_NIC_RF_OFF_FLOW rtl8821A_radio_off_flow +#define RTL8821A_NIC_DISABLE_FLOW rtl8821A_card_disable_flow +#define RTL8821A_NIC_ENABLE_FLOW rtl8821A_card_enable_flow +#define RTL8821A_NIC_SUSPEND_FLOW rtl8821A_suspend_flow +#define RTL8821A_NIC_RESUME_FLOW rtl8821A_resume_flow +#define RTL8821A_NIC_PDN_FLOW rtl8821A_hwpdn_flow +#define RTL8821A_NIC_LPS_ENTER_FLOW rtl8821A_enter_lps_flow +#define RTL8821A_NIC_LPS_LEAVE_FLOW rtl8821A_leave_lps_flow + + +#endif + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/pwrseqcmd.c +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/pwrseqcmd.c @@ -0,0 +1,140 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "pwrseq.h" + + +/* +* Description: +* This routine deal with the Power Configuration CMDs +* parsing for RTL8723/RTL8188E Series IC. +* Assumption: +* We should follow specific format which was released from HW SD. +* +* 2011.07.07, added by Roger. +*/ +bool rtl_hal_pwrseqcmdparsing (struct rtl_priv* rtlpriv, u8 cut_version, + u8 fab_version, u8 interface_type, + struct wlan_pwr_cfg pwrcfgcmd[]) + +{ + struct wlan_pwr_cfg pwr_cfg_cmd = {0}; + bool polling_bit = false; + u32 ary_idx=0; + u8 value = 0; + u32 offset = 0; + u32 polling_count = 0; + u32 max_polling_cnt = 5000; + + do { + pwr_cfg_cmd = pwrcfgcmd[ary_idx]; + RT_TRACE(COMP_INIT, DBG_TRACE, + ("rtl_hal_pwrseqcmdparsing(): offset(%#x),cut_msk(%#x), fab_msk(%#x)," + "interface_msk(%#x), base(%#x), cmd(%#x), msk(%#x), value(%#x)\n", + GET_PWR_CFG_OFFSET(pwr_cfg_cmd), GET_PWR_CFG_CUT_MASK(pwr_cfg_cmd), + GET_PWR_CFG_FAB_MASK(pwr_cfg_cmd), GET_PWR_CFG_INTF_MASK(pwr_cfg_cmd), + GET_PWR_CFG_BASE(pwr_cfg_cmd), GET_PWR_CFG_CMD(pwr_cfg_cmd), + GET_PWR_CFG_MASK(pwr_cfg_cmd), GET_PWR_CFG_VALUE(pwr_cfg_cmd))); + + if ((GET_PWR_CFG_FAB_MASK(pwr_cfg_cmd)&fab_version) && + (GET_PWR_CFG_CUT_MASK(pwr_cfg_cmd)&cut_version) && + (GET_PWR_CFG_INTF_MASK(pwr_cfg_cmd)&interface_type)) { + switch (GET_PWR_CFG_CMD(pwr_cfg_cmd)) { + case PWR_CMD_READ: + RT_TRACE(COMP_INIT, DBG_TRACE, + ("rtl_hal_pwrseqcmdparsing(): PWR_CMD_READ\n")); + break; + + case PWR_CMD_WRITE: { + RT_TRACE(COMP_INIT, DBG_TRACE, + ("rtl_hal_pwrseqcmdparsing(): PWR_CMD_WRITE\n")); + offset = GET_PWR_CFG_OFFSET(pwr_cfg_cmd); + + /*Read the value from system register*/ + value = rtl_read_byte(rtlpriv, offset); + value = value & (~(GET_PWR_CFG_MASK(pwr_cfg_cmd))); + value = value | (GET_PWR_CFG_VALUE(pwr_cfg_cmd) + & GET_PWR_CFG_MASK(pwr_cfg_cmd)); + + /*Write the value back to sytem register*/ + rtl_write_byte(rtlpriv, offset, value); + } + break; + + case PWR_CMD_POLLING: + RT_TRACE(COMP_INIT, DBG_TRACE, + ("rtl_hal_pwrseqcmdparsing(): PWR_CMD_POLLING\n")); + polling_bit = false; + offset = GET_PWR_CFG_OFFSET(pwr_cfg_cmd); + + do { + value = rtl_read_byte(rtlpriv, offset); + + value = value & GET_PWR_CFG_MASK(pwr_cfg_cmd); + if (value == (GET_PWR_CFG_VALUE(pwr_cfg_cmd) + & GET_PWR_CFG_MASK(pwr_cfg_cmd))) + polling_bit=true; + else + udelay(10); + + if (polling_count++ > max_polling_cnt) { + return false; + } + } while (!polling_bit); + + break; + + case PWR_CMD_DELAY: + RT_TRACE(COMP_INIT, DBG_TRACE, + ("rtl_hal_pwrseqcmdparsing(): PWR_CMD_DELAY\n")); + if (GET_PWR_CFG_VALUE(pwr_cfg_cmd) == PWRSEQ_DELAY_US) + udelay(GET_PWR_CFG_OFFSET(pwr_cfg_cmd)); + else + mdelay(GET_PWR_CFG_OFFSET(pwr_cfg_cmd)); + break; + + case PWR_CMD_END: + RT_TRACE(COMP_INIT, DBG_TRACE, + ("rtl_hal_pwrseqcmdparsing(): PWR_CMD_END\n")); + return true; + break; + + default: + RT_ASSERT(false, + ("rtl_hal_pwrseqcmdparsing(): Unknown CMD!!\n")); + break; + } + + } + + ary_idx++; + } while (1); + + return true; +} --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/pwrseqcmd.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/pwrseqcmd.h @@ -0,0 +1,71 @@ +#ifndef __RTL8821AE_PWRSEQCMD_H__ +#define __RTL8821AE_PWRSEQCMD_H__ + +#include "../wifi.h" +/*---------------------------------------------*/ +/*The value of cmd: 4 bits */ +/*---------------------------------------------*/ +#define PWR_CMD_READ 0x00 +#define PWR_CMD_WRITE 0x01 +#define PWR_CMD_POLLING 0x02 +#define PWR_CMD_DELAY 0x03 +#define PWR_CMD_END 0x04 + +/* define the base address of each block */ +#define PWR_BASEADDR_MAC 0x00 +#define PWR_BASEADDR_USB 0x01 +#define PWR_BASEADDR_PCIE 0x02 +#define PWR_BASEADDR_SDIO 0x03 + +#define PWR_INTF_SDIO_MSK BIT(0) +#define PWR_INTF_USB_MSK BIT(1) +#define PWR_INTF_PCI_MSK BIT(2) +#define PWR_INTF_ALL_MSK (BIT(0)|BIT(1)|BIT(2)|BIT(3)) + +#define PWR_FAB_TSMC_MSK BIT(0) +#define PWR_FAB_UMC_MSK BIT(1) +#define PWR_FAB_ALL_MSK (BIT(0)|BIT(1)|BIT(2)|BIT(3)) + +#define PWR_CUT_TESTCHIP_MSK BIT(0) +#define PWR_CUT_A_MSK BIT(1) +#define PWR_CUT_B_MSK BIT(2) +#define PWR_CUT_C_MSK BIT(3) +#define PWR_CUT_D_MSK BIT(4) +#define PWR_CUT_E_MSK BIT(5) +#define PWR_CUT_F_MSK BIT(6) +#define PWR_CUT_G_MSK BIT(7) +#define PWR_CUT_ALL_MSK 0xFF + + +enum pwrseq_delay_unit { + PWRSEQ_DELAY_US, + PWRSEQ_DELAY_MS, +}; + +struct wlan_pwr_cfg { + u16 offset; + u8 cut_msk; + u8 fab_msk:4; + u8 interface_msk:4; + u8 base:4; + u8 cmd:4; + u8 msk; + u8 value; + +}; + +#define GET_PWR_CFG_OFFSET(__PWR_CMD) __PWR_CMD.offset +#define GET_PWR_CFG_CUT_MASK(__PWR_CMD) __PWR_CMD.cut_msk +#define GET_PWR_CFG_FAB_MASK(__PWR_CMD) __PWR_CMD.fab_msk +#define GET_PWR_CFG_INTF_MASK(__PWR_CMD) __PWR_CMD.interface_msk +#define GET_PWR_CFG_BASE(__PWR_CMD) __PWR_CMD.base +#define GET_PWR_CFG_CMD(__PWR_CMD) __PWR_CMD.cmd +#define GET_PWR_CFG_MASK(__PWR_CMD) __PWR_CMD.msk +#define GET_PWR_CFG_VALUE(__PWR_CMD) __PWR_CMD.value + +bool rtl_hal_pwrseqcmdparsing(struct rtl_priv * rtlpriv, u8 cut_version, + u8 fab_version, u8 interface_type, + struct wlan_pwr_cfg pwrcfgcmd[]); + +#endif + --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/reg.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/reg.h @@ -0,0 +1,2427 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8821AE_REG_H__ +#define __RTL8821AE_REG_H__ + +#define TXPKT_BUF_SELECT 0x69 +#define RXPKT_BUF_SELECT 0xA5 +#define DISABLE_TRXPKT_BUF_ACCESS 0x0 + +#define REG_SYS_ISO_CTRL 0x0000 +#define REG_SYS_FUNC_EN 0x0002 +#define REG_APS_FSMCO 0x0004 +#define REG_SYS_CLKR 0x0008 +#define REG_9346CR 0x000A +#define REG_EE_VPD 0x000C +#define REG_AFE_MISC 0x0010 +#define REG_SPS0_CTRL 0x0011 +#define REG_SPS_OCP_CFG 0x0018 +#define REG_RSV_CTRL 0x001C +#define REG_RF_CTRL 0x001F +#define REG_LDOA15_CTRL 0x0020 +#define REG_LDOV12D_CTRL 0x0021 +#define REG_LDOHCI12_CTRL 0x0022 +#define REG_LPLDO_CTRL 0x0023 +#define REG_AFE_XTAL_CTRL 0x0024 +#define REG_AFE_LDO_CTRL 0x0027 /* 1.5v for 8188EE test chip, 1.4v for MP chip */ +#define REG_AFE_PLL_CTRL 0x0028 +#define REG_MAC_PHY_CTRL 0x002c +#define REG_EFUSE_CTRL 0x0030 +#define REG_EFUSE_TEST 0x0034 +#define REG_PWR_DATA 0x0038 +#define REG_CAL_TIMER 0x003C +#define REG_ACLK_MON 0x003E +#define REG_GPIO_MUXCFG 0x0040 +#define REG_GPIO_IO_SEL 0x0042 +#define REG_MAC_PINMUX_CFG 0x0043 +#define REG_GPIO_PIN_CTRL 0x0044 +#define REG_GPIO_INTM 0x0048 +#define REG_LEDCFG0 0x004C +#define REG_LEDCFG1 0x004D +#define REG_LEDCFG2 0x004E +#define REG_LEDCFG3 0x004F +#define REG_FSIMR 0x0050 +#define REG_FSISR 0x0054 +#define REG_HSIMR 0x0058 +#define REG_HSISR 0x005c +#define REG_GPIO_PIN_CTRL_2 0x0060 +#define REG_GPIO_IO_SEL_2 0x0062 +#define REG_MULTI_FUNC_CTRL 0x0068 +#define REG_GPIO_OUTPUT 0x006c +#define REG_OPT_CTRL 0x0074 +#define REG_AFE_XTAL_CTRL_EXT 0x0078 +#define REG_XCK_OUT_CTRL 0x007c +#define REG_MCUFWDL 0x0080 +#define REG_WOL_EVENT 0x0081 +#define REG_MCUTSTCFG 0x0084 + + +#define REG_HIMR 0x00B0 +#define REG_HISR 0x00B4 +#define REG_HIMRE 0x00B8 +#define REG_HISRE 0x00BC + +#define REG_PMC_DBG_CTRL2 0x00CC + +#define REG_EFUSE_ACCESS 0x00CF + +#define REG_BIST_SCAN 0x00D0 +#define REG_BIST_RPT 0x00D4 +#define REG_BIST_ROM_RPT 0x00D8 +#define REG_USB_SIE_INTF 0x00E0 +#define REG_PCIE_MIO_INTF 0x00E4 +#define REG_PCIE_MIO_INTD 0x00E8 +#define REG_HPON_FSM 0x00EC +#define REG_SYS_CFG 0x00F0 +#define REG_GPIO_OUTSTS 0x00F4 +#define REG_SYS_CFG1 0x00FC +#define REG_ROM_VERSION 0x00FD + +#define REG_CR 0x0100 +#define REG_PBP 0x0104 +#define REG_PKT_BUFF_ACCESS_CTRL 0x0106 +#define REG_TRXDMA_CTRL 0x010C +#define REG_TRXFF_BNDY 0x0114 +#define REG_TRXFF_STATUS 0x0118 +#define REG_RXFF_PTR 0x011C + +#define REG_CPWM 0x012F +#define REG_FWIMR 0x0130 +#define REG_FWISR 0x0134 +#define REG_PKTBUF_DBG_CTRL 0x0140 +#define REG_PKTBUF_DBG_DATA_L 0x0144 +#define REG_PKTBUF_DBG_DATA_H 0x0148 +#define REG_RXPKTBUF_CTRL (REG_PKTBUF_DBG_CTRL+2) + +#define REG_TC0_CTRL 0x0150 +#define REG_TC1_CTRL 0x0154 +#define REG_TC2_CTRL 0x0158 +#define REG_TC3_CTRL 0x015C +#define REG_TC4_CTRL 0x0160 +#define REG_TCUNIT_BASE 0x0164 +#define REG_MBIST_START 0x0174 +#define REG_MBIST_DONE 0x0178 +#define REG_MBIST_FAIL 0x017C +#define REG_32K_CTRL 0x0194 +#define REG_C2HEVT_MSG_NORMAL 0x01A0 +#define REG_C2HEVT_CLEAR 0x01AF +#define REG_C2HEVT_MSG_TEST 0x01B8 +#define REG_MCUTST_1 0x01c0 +#define REG_FMETHR 0x01C8 +#define REG_HMETFR 0x01CC +#define REG_HMEBOX_0 0x01D0 +#define REG_HMEBOX_1 0x01D4 +#define REG_HMEBOX_2 0x01D8 +#define REG_HMEBOX_3 0x01DC + +#define REG_LLT_INIT 0x01E0 +#define REG_BB_ACCEESS_CTRL 0x01E8 +#define REG_BB_ACCESS_DATA 0x01EC + +#define REG_HMEBOX_EXT_0 0x01F0 +#define REG_HMEBOX_EXT_1 0x01F4 +#define REG_HMEBOX_EXT_2 0x01F8 +#define REG_HMEBOX_EXT_3 0x01FC + +#define REG_RQPN 0x0200 +#define REG_FIFOPAGE 0x0204 +#define REG_TDECTRL 0x0208 +#define REG_TXDMA_OFFSET_CHK 0x020C +#define REG_TXDMA_STATUS 0x0210 +#define REG_RQPN_NPQ 0x0214 + +#define REG_RXDMA_AGG_PG_TH 0x0280 +#define REG_FW_UPD_RDPTR 0x0284 /* FW shall update this register before FW write RXPKT_RELEASE_POLL to 1 */ +#define REG_RXDMA_CONTROL 0x0286 /* Control the RX DMA.*/ +#define REG_RXPKT_NUM 0x0287 /* The number of packets in RXPKTBUF. */ + +#define REG_PCIE_CTRL_REG 0x0300 +#define REG_INT_MIG 0x0304 +#define REG_BCNQ_DESA 0x0308 +#define REG_HQ_DESA 0x0310 +#define REG_MGQ_DESA 0x0318 +#define REG_VOQ_DESA 0x0320 +#define REG_VIQ_DESA 0x0328 +#define REG_BEQ_DESA 0x0330 +#define REG_BKQ_DESA 0x0338 +#define REG_RX_DESA 0x0340 + +#define REG_DBI_WDATA 0x0348 +#define REG_DBI_RDATA 0x034C +#define REG_DBI_ADDR 0x0350 +#define REG_DBI_FLAG 0x0352 +#define REG_MDIO_WDATA 0x0354 +#define REG_MDIO_RDATA 0x0356 +#define REG_MDIO_CTL 0x0358 +#define REG_DBG_SEL 0x0360 +#define REG_PCIE_HRPWM 0x0361 +#define REG_PCIE_HCPWM 0x0363 +#define REG_UART_CTRL 0x0364 +#define REG_WATCH_DOG 0x0368 +#define REG_UART_TX_DESA 0x0370 +#define REG_UART_RX_DESA 0x0378 + + +#define REG_HDAQ_DESA_NODEF 0x0000 +#define REG_CMDQ_DESA_NODEF 0x0000 + +#define REG_VOQ_INFORMATION 0x0400 +#define REG_VIQ_INFORMATION 0x0404 +#define REG_BEQ_INFORMATION 0x0408 +#define REG_BKQ_INFORMATION 0x040C +#define REG_MGQ_INFORMATION 0x0410 +#define REG_HGQ_INFORMATION 0x0414 +#define REG_BCNQ_INFORMATION 0x0418 +#define REG_TXPKT_EMPTY 0x041A + + +#define REG_CPU_MGQ_INFORMATION 0x041C +#define REG_FWHW_TXQ_CTRL 0x0420 +#define REG_HWSEQ_CTRL 0x0423 +#define REG_TXPKTBUF_BCNQ_BDNY 0x0424 +#define REG_TXPKTBUF_MGQ_BDNY 0x0425 +#define REG_MULTI_BCNQ_EN 0x0426 +#define REG_MULTI_BCNQ_OFFSET 0x0427 +#define REG_SPEC_SIFS 0x0428 +#define REG_RL 0x042A +#define REG_DARFRC 0x0430 +#define REG_RARFRC 0x0438 +#define REG_RRSR 0x0440 +#define REG_ARFR0 0x0444 +#define REG_ARFR1 0x044C +#define REG_CCK_CHECK 0x0454 +#define REG_AMPDU_MAX_TIME 0x0456 +#define REG_AGGLEN_LMT 0x0458 +#define REG_AMPDU_MIN_SPACE 0x045C +#define REG_TXPKTBUF_WMAC_LBK_BF_HD 0x045D +#define REG_FAST_EDCA_CTRL 0x0460 +#define REG_RD_RESP_PKT_TH 0x0463 +#define REG_INIRTS_RATE_SEL 0x0480 +#define REG_INIDATA_RATE_SEL 0x0484 +#define REG_ARFR2 0x048C +#define REG_ARFR3 0x0494 +#define REG_POWER_STATUS 0x04A4 +#define REG_POWER_STAGE1 0x04B4 +#define REG_POWER_STAGE2 0x04B8 +#define REG_PKT_LIFE_TIME 0x04C0 +#define REG_STBC_SETTING 0x04C4 +#define REG_HT_SINGLE_AMPDU 0x04C7 +#define REG_PROT_MODE_CTRL 0x04C8 +#define REG_MAX_AGGR_NUM 0x04CA +#define REG_BAR_MODE_CTRL 0x04CC +#define REG_RA_TRY_RATE_AGG_LMT 0x04CF +#define REG_EARLY_MODE_CONTROL 0x04D0 +#define REG_NQOS_SEQ 0x04DC +#define REG_QOS_SEQ 0x04DE +#define REG_NEED_CPU_HANDLE 0x04E0 +#define REG_PKT_LOSE_RPT 0x04E1 +#define REG_PTCL_ERR_STATUS 0x04E2 +#define REG_TX_RPT_CTRL 0x04EC +#define REG_TX_RPT_TIME 0x04F0 +#define REG_DUMMY 0x04FC + +#define REG_EDCA_VO_PARAM 0x0500 +#define REG_EDCA_VI_PARAM 0x0504 +#define REG_EDCA_BE_PARAM 0x0508 +#define REG_EDCA_BK_PARAM 0x050C +#define REG_BCNTCFG 0x0510 +#define REG_PIFS 0x0512 +#define REG_RDG_PIFS 0x0513 +#define REG_SIFS_CTX 0x0514 +#define REG_SIFS_TRX 0x0516 +#define REG_AGGR_BREAK_TIME 0x051A +#define REG_SLOT 0x051B +#define REG_TX_PTCL_CTRL 0x0520 +#define REG_TXPAUSE 0x0522 +#define REG_DIS_TXREQ_CLR 0x0523 +#define REG_RD_CTRL 0x0524 +#define REG_TBTT_PROHIBIT 0x0540 +#define REG_RD_NAV_NXT 0x0544 +#define REG_NAV_PROT_LEN 0x0546 +#define REG_BCN_CTRL 0x0550 +#define REG_USTIME_TSF 0x0551 +#define REG_MBID_NUM 0x0552 +#define REG_DUAL_TSF_RST 0x0553 +#define REG_BCN_INTERVAL 0x0554 +#define REG_MBSSID_BCN_SPACE 0x0554 +#define REG_DRVERLYINT 0x0558 +#define REG_BCNDMATIM 0x0559 +#define REG_ATIMWND 0x055A +#define REG_BCN_MAX_ERR 0x055D +#define REG_RXTSF_OFFSET_CCK 0x055E +#define REG_RXTSF_OFFSET_OFDM 0x055F +#define REG_TSFTR 0x0560 +#define REG_INIT_TSFTR 0x0564 +#define REG_SECONDARY_CCA_CTRL 0x0577 +#define REG_PSTIMER 0x0580 +#define REG_TIMER0 0x0584 +#define REG_TIMER1 0x0588 +#define REG_ACMHWCTRL 0x05C0 +#define REG_ACMRSTCTRL 0x05C1 +#define REG_ACMAVG 0x05C2 +#define REG_VO_ADMTIME 0x05C4 +#define REG_VI_ADMTIME 0x05C6 +#define REG_BE_ADMTIME 0x05C8 +#define REG_EDCA_RANDOM_GEN 0x05CC +#define REG_NOA_DESC_SEL 0x05CF +#define REG_NOA_DESC_DURATION 0x05E0 +#define REG_NOA_DESC_INTERVAL 0x05E4 +#define REG_NOA_DESC_START 0x05E8 +#define REG_NOA_DESC_COUNT 0x05EC +#define REG_SCH_TX_CMD 0x05F8 + +#define REG_APSD_CTRL 0x0600 +#define REG_BWOPMODE 0x0603 +#define REG_TCR 0x0604 +#define REG_RCR 0x0608 +#define REG_RX_PKT_LIMIT 0x060C +#define REG_RX_DLK_TIME 0x060D +#define REG_RX_DRVINFO_SZ 0x060F + +#define REG_MACID 0x0610 +#define REG_BSSID 0x0618 +#define REG_MAR 0x0620 +#define REG_MBIDCAMCFG 0x0628 + +#define REG_USTIME_EDCA 0x0638 +#define REG_MAC_SPEC_SIFS 0x063A +#define REG_RESP_SIFS_CCK 0x063C +#define REG_RESP_SIFS_OFDM 0x063E +#define REG_ACKTO 0x0640 +#define REG_CTS2TO 0x0641 +#define REG_EIFS 0x0642 + +#define REG_NAV_CTRL 0x0650 +#define REG_NAV_UPPER 0x0652 +#define REG_BACAMCMD 0x0654 +#define REG_BACAMCONTENT 0x0658 +#define REG_LBDLY 0x0660 +#define REG_FWDLY 0x0661 +#define REG_RXERR_RPT 0x0664 +#define REG_TRXPTCL_CTL 0x0668 + +#define REG_CAMCMD 0x0670 +#define REG_CAMWRITE 0x0674 +#define REG_CAMREAD 0x0678 +#define REG_CAMDBG 0x067C +#define REG_SECCFG 0x0680 + +#define REG_WOW_CTRL 0x0690 +#define REG_PSSTATUS 0x0691 +#define REG_PS_RX_INFO 0x0692 +#define REG_UAPSD_TID 0x0693 +#define REG_LPNAV_CTRL 0x0694 +#define REG_WKFMCAM_NUM 0x0698 +#define REG_WKFMCAM_RWD 0x069C +#define REG_RXFLTMAP0 0x06A0 +#define REG_RXFLTMAP1 0x06A2 +#define REG_RXFLTMAP2 0x06A4 +#define REG_BCN_PSR_RPT 0x06A8 +#define REG_CALB32K_CTRL 0x06AC +#define REG_PKT_MON_CTRL 0x06B4 +#define REG_BT_COEX_TABLE 0x06C0 +#define REG_WMAC_RESP_TXINFO 0x06D8 + +#define REG_USB_INFO 0xFE17 +#define REG_USB_SPECIAL_OPTION 0xFE55 +#define REG_USB_DMA_AGG_TO 0xFE5B +#define REG_USB_AGG_TO 0xFE5C +#define REG_USB_AGG_TH 0xFE5D + +#define REG_TEST_USB_TXQS 0xFE48 +#define REG_TEST_SIE_VID 0xFE60 +#define REG_TEST_SIE_PID 0xFE62 +#define REG_TEST_SIE_OPTIONAL 0xFE64 +#define REG_TEST_SIE_CHIRP_K 0xFE65 +#define REG_TEST_SIE_PHY 0xFE66 +#define REG_TEST_SIE_MAC_ADDR 0xFE70 +#define REG_TEST_SIE_STRING 0xFE80 + +#define REG_NORMAL_SIE_VID 0xFE60 +#define REG_NORMAL_SIE_PID 0xFE62 +#define REG_NORMAL_SIE_OPTIONAL 0xFE64 +#define REG_NORMAL_SIE_EP 0xFE65 +#define REG_NORMAL_SIE_PHY 0xFE68 +#define REG_NORMAL_SIE_MAC_ADDR 0xFE70 +#define REG_NORMAL_SIE_STRING 0xFE80 + +#define CR9346 REG_9346CR +#define MSR (REG_CR + 2) +#define ISR REG_HISR +#define TSFR REG_TSFTR + +#define MACIDR0 REG_MACID +#define MACIDR4 (REG_MACID + 4) + +#define PBP REG_PBP + +#define IDR0 MACIDR0 +#define IDR4 MACIDR4 + +#define UNUSED_REGISTER 0x1BF +#define DCAM UNUSED_REGISTER +#define PSR UNUSED_REGISTER +#define BBADDR UNUSED_REGISTER +#define PHYDATAR UNUSED_REGISTER + +#define INVALID_BBRF_VALUE 0x12345678 + +#define MAX_MSS_DENSITY_2T 0x13 +#define MAX_MSS_DENSITY_1T 0x0A + +#define CMDEEPROM_EN BIT(5) +#define CMDEEPROM_SEL BIT(4) +#define CMD9346CR_9356SEL BIT(4) +#define AUTOLOAD_EEPROM (CMDEEPROM_EN|CMDEEPROM_SEL) +#define AUTOLOAD_EFUSE CMDEEPROM_EN + +#define GPIOSEL_GPIO 0 +#define GPIOSEL_ENBT BIT(5) + +#define GPIO_IN REG_GPIO_PIN_CTRL +#define GPIO_OUT (REG_GPIO_PIN_CTRL+1) +#define GPIO_IO_SEL (REG_GPIO_PIN_CTRL+2) +#define GPIO_MOD (REG_GPIO_PIN_CTRL+3) + +/* 8723/8188E Host System Interrupt Mask Register (offset 0x58, 32 byte) */ +#define HSIMR_GPIO12_0_INT_EN BIT(0) +#define HSIMR_SPS_OCP_INT_EN BIT(5) +#define HSIMR_RON_INT_EN BIT(6) +#define HSIMR_PDN_INT_EN BIT(7) +#define HSIMR_GPIO9_INT_EN BIT(25) + + +/* +* 8723/8188E Host System Interrupt Status Register (offset 0x5C, 32 byte) +*/ +#define HSISR_GPIO12_0_INT BIT(0) +#define HSISR_SPS_OCP_INT BIT(5) +#define HSISR_RON_INT_EN BIT(6) +#define HSISR_PDNINT BIT(7) +#define HSISR_GPIO9_INT BIT(25) + +#define MSR_NOLINK 0x00 +#define MSR_ADHOC 0x01 +#define MSR_INFRA 0x02 +#define MSR_AP 0x03 + +#define RRSR_RSC_OFFSET 21 +#define RRSR_SHORT_OFFSET 23 +#define RRSR_RSC_BW_40M 0x600000 +#define RRSR_RSC_UPSUBCHNL 0x400000 +#define RRSR_RSC_LOWSUBCHNL 0x200000 +#define RRSR_SHORT 0x800000 +#define RRSR_1M BIT(0) +#define RRSR_2M BIT(1) +#define RRSR_5_5M BIT(2) +#define RRSR_11M BIT(3) +#define RRSR_6M BIT(4) +#define RRSR_9M BIT(5) +#define RRSR_12M BIT(6) +#define RRSR_18M BIT(7) +#define RRSR_24M BIT(8) +#define RRSR_36M BIT(9) +#define RRSR_48M BIT(10) +#define RRSR_54M BIT(11) +#define RRSR_MCS0 BIT(12) +#define RRSR_MCS1 BIT(13) +#define RRSR_MCS2 BIT(14) +#define RRSR_MCS3 BIT(15) +#define RRSR_MCS4 BIT(16) +#define RRSR_MCS5 BIT(17) +#define RRSR_MCS6 BIT(18) +#define RRSR_MCS7 BIT(19) +#define BRSR_ACKSHORTPMB BIT(23) + +#define RATR_1M 0x00000001 +#define RATR_2M 0x00000002 +#define RATR_55M 0x00000004 +#define RATR_11M 0x00000008 +#define RATR_6M 0x00000010 +#define RATR_9M 0x00000020 +#define RATR_12M 0x00000040 +#define RATR_18M 0x00000080 +#define RATR_24M 0x00000100 +#define RATR_36M 0x00000200 +#define RATR_48M 0x00000400 +#define RATR_54M 0x00000800 +#define RATR_MCS0 0x00001000 +#define RATR_MCS1 0x00002000 +#define RATR_MCS2 0x00004000 +#define RATR_MCS3 0x00008000 +#define RATR_MCS4 0x00010000 +#define RATR_MCS5 0x00020000 +#define RATR_MCS6 0x00040000 +#define RATR_MCS7 0x00080000 +#define RATR_MCS8 0x00100000 +#define RATR_MCS9 0x00200000 +#define RATR_MCS10 0x00400000 +#define RATR_MCS11 0x00800000 +#define RATR_MCS12 0x01000000 +#define RATR_MCS13 0x02000000 +#define RATR_MCS14 0x04000000 +#define RATR_MCS15 0x08000000 + +#define RATE_1M BIT(0) +#define RATE_2M BIT(1) +#define RATE_5_5M BIT(2) +#define RATE_11M BIT(3) +#define RATE_6M BIT(4) +#define RATE_9M BIT(5) +#define RATE_12M BIT(6) +#define RATE_18M BIT(7) +#define RATE_24M BIT(8) +#define RATE_36M BIT(9) +#define RATE_48M BIT(10) +#define RATE_54M BIT(11) +#define RATE_MCS0 BIT(12) +#define RATE_MCS1 BIT(13) +#define RATE_MCS2 BIT(14) +#define RATE_MCS3 BIT(15) +#define RATE_MCS4 BIT(16) +#define RATE_MCS5 BIT(17) +#define RATE_MCS6 BIT(18) +#define RATE_MCS7 BIT(19) +#define RATE_MCS8 BIT(20) +#define RATE_MCS9 BIT(21) +#define RATE_MCS10 BIT(22) +#define RATE_MCS11 BIT(23) +#define RATE_MCS12 BIT(24) +#define RATE_MCS13 BIT(25) +#define RATE_MCS14 BIT(26) +#define RATE_MCS15 BIT(27) + +#define RATE_ALL_CCK (RATR_1M | RATR_2M | RATR_55M | RATR_11M) +#define RATE_ALL_OFDM_AG (RATR_6M | RATR_9M | RATR_12M | RATR_18M |\ + RATR_24M| RATR_36M | RATR_48M | RATR_54M) +#define RATE_ALL_OFDM_1SS (RATR_MCS0 | RATR_MCS1 | RATR_MCS2 |\ + RATR_MCS3 | RATR_MCS4 | RATR_MCS5 |\ + RATR_MCS6 | RATR_MCS7) +#define RATE_ALL_OFDM_2SS (RATR_MCS8 | RATR_MCS9 | RATR_MCS10 |\ + RATR_MCS11| RATR_MCS12 | RATR_MCS13 |\ + RATR_MCS14 | RATR_MCS15) + +#define BW_OPMODE_20MHZ BIT(2) +#define BW_OPMODE_5G BIT(1) +#define BW_OPMODE_11J BIT(0) + +#define CAM_VALID BIT(15) +#define CAM_NOTVALID 0x0000 +#define CAM_USEDK BIT(5) + +#define CAM_NONE 0x0 +#define CAM_WEP40 0x01 +#define CAM_TKIP 0x02 +#define CAM_AES 0x04 +#define CAM_WEP104 0x05 + +#define TOTAL_CAM_ENTRY 32 +#define HALF_CAM_ENTRY 16 + +#define CAM_WRITE BIT(16) +#define CAM_READ 0x00000000 +#define CAM_POLLINIG BIT(31) + +#define SCR_USEDK 0x01 +#define SCR_TXSEC_ENABLE 0x02 +#define SCR_RXSEC_ENABLE 0x04 + +#define WOW_PMEN BIT(0) +#define WOW_WOMEN BIT(1) +#define WOW_MAGIC BIT(2) +#define WOW_UWF BIT(3) + +/********************************************* +* 8188 IMR/ISR bits +**********************************************/ +#define IMR_DISABLED 0x0 +/* IMR DW0(0x0060-0063) Bit 0-31 */ +#define IMR_TXCCK BIT(30) /* TXRPT interrupt when CCX bit of the packet is set */ +#define IMR_PSTIMEOUT BIT(29) /* Power Save Time Out Interrupt */ +#define IMR_GTINT4 BIT(28) /* When GTIMER4 expires, this bit is set to 1 */ +#define IMR_GTINT3 BIT(27) /* When GTIMER3 expires, this bit is set to 1 */ +#define IMR_TBDER BIT(26) /* Transmit Beacon0 Error */ +#define IMR_TBDOK BIT(25) /* Transmit Beacon0 OK */ +#define IMR_TSF_BIT32_TOGGLE BIT(24) /* TSF Timer BIT32 toggle indication interrupt */ +#define IMR_BCNDMAINT0 BIT(20) /* Beacon DMA Interrupt 0 */ +#define IMR_BCNDOK0 BIT(16) /* Beacon Queue DMA OK0 */ +#define IMR_HSISR_IND_ON_INT BIT(15) /* HSISR Indicator (HSIMR & HSISR is true, this bit is set to 1) */ +#define IMR_BCNDMAINT_E BIT(14) /* Beacon DMA Interrupt Extension for Win7 */ +#define IMR_ATIMEND BIT(12) /* CTWidnow End or ATIM Window End */ +#define IMR_HISR1_IND_INT BIT(11) /* HISR1 Indicator (HISR1 & HIMR1 is true, this bit is set to 1)*/ +#define IMR_C2HCMD BIT(10) /* CPU to Host Command INT Status, Write 1 clear */ +#define IMR_CPWM2 BIT(9) /* CPU power Mode exchange INT Status, Write 1 clear */ +#define IMR_CPWM BIT(8) /* CPU power Mode exchange INT Status, Write 1 clear */ +#define IMR_HIGHDOK BIT(7) /* High Queue DMA OK */ +#define IMR_MGNTDOK BIT(6) /* Management Queue DMA OK */ +#define IMR_BKDOK BIT(5) /* AC_BK DMA OK */ +#define IMR_BEDOK BIT(4) /* AC_BE DMA OK */ +#define IMR_VIDOK BIT(3) /* AC_VI DMA OK */ +#define IMR_VODOK BIT(2) /* AC_VO DMA OK */ +#define IMR_RDU BIT(1) /* Rx Descriptor Unavailable */ +#define IMR_ROK BIT(0) /* Receive DMA OK */ + +/* IMR DW1(0x00B4-00B7) Bit 0-31 */ +#define IMR_BCNDMAINT7 BIT(27) /* Beacon DMA Interrupt 7 */ +#define IMR_BCNDMAINT6 BIT(26) /* Beacon DMA Interrupt 6 */ +#define IMR_BCNDMAINT5 BIT(25) /* Beacon DMA Interrupt 5 */ +#define IMR_BCNDMAINT4 BIT(24) /* Beacon DMA Interrupt 4 */ +#define IMR_BCNDMAINT3 BIT(23) /* Beacon DMA Interrupt 3 */ +#define IMR_BCNDMAINT2 BIT(22) /* Beacon DMA Interrupt 2 */ +#define IMR_BCNDMAINT1 BIT(21) /* Beacon DMA Interrupt 1 */ +#define IMR_BCNDOK7 BIT(20) /* Beacon Queue DMA OK Interrup 7 */ +#define IMR_BCNDOK6 BIT(19) /* Beacon Queue DMA OK Interrup 6 */ +#define IMR_BCNDOK5 BIT(18) /* Beacon Queue DMA OK Interrup 5 */ +#define IMR_BCNDOK4 BIT(17) /* Beacon Queue DMA OK Interrup 4 */ +#define IMR_BCNDOK3 BIT(16) /* Beacon Queue DMA OK Interrup 3 */ +#define IMR_BCNDOK2 BIT(15) /* Beacon Queue DMA OK Interrup 2 */ +#define IMR_BCNDOK1 BIT(14) /* Beacon Queue DMA OK Interrup 1 */ +#define IMR_ATIMEND_E BIT(13) /* ATIM Window End Extension for Win7 */ +#define IMR_TXERR BIT(11) /* Tx Error Flag Interrupt Status, write 1 clear. */ +#define IMR_RXERR BIT(10) /* Rx Error Flag INT Status, Write 1 clear */ +#define IMR_TXFOVW BIT(9) /* Transmit FIFO Overflow */ +#define IMR_RXFOVW BIT(8) /* Receive FIFO Overflow */ + + +#define HWSET_MAX_SIZE 512 +#define EFUSE_MAX_SECTION 64 +#define EFUSE_REAL_CONTENT_LEN 256 +#define EFUSE_OOB_PROTECT_BYTES 18 /* PG data exclude header, dummy 7 bytes frome CP test and reserved 1byte.*/ + + +#define EEPROM_DEFAULT_TSSI 0x0 +#define EEPROM_DEFAULT_TXPOWERDIFF 0x0 +#define EEPROM_DEFAULT_CRYSTALCAP 0x5 +#define EEPROM_DEFAULT_BOARDTYPE 0x02 +#define EEPROM_DEFAULT_TXPOWER 0x1010 +#define EEPROM_DEFAULT_HT2T_TXPWR 0x10 + +#define EEPROM_DEFAULT_LEGACYHTTXPOWERDIFF 0x3 +#define EEPROM_DEFAULT_THERMALMETER 0x18 +#define EEPROM_DEFAULT_ANTTXPOWERDIFF 0x0 +#define EEPROM_DEFAULT_TXPWDIFF_CRYSTALCAP 0x5 +#define EEPROM_DEFAULT_TXPOWERLEVEL 0x22 +#define EEPROM_DEFAULT_HT40_2SDIFF 0x0 +#define EEPROM_DEFAULT_HT20_DIFF 2 +#define EEPROM_DEFAULT_LEGACYHTTXPOWERDIFF 0x3 +#define EEPROM_DEFAULT_HT40_PWRMAXOFFSET 0 +#define EEPROM_DEFAULT_HT20_PWRMAXOFFSET 0 + +#define RF_OPTION1 0x79 +#define RF_OPTION2 0x7A +#define RF_OPTION3 0x7B +#define RF_OPTION4 0xC3 + +#define EEPROM_DEFAULT_PID 0x1234 +#define EEPROM_DEFAULT_VID 0x5678 +#define EEPROM_DEFAULT_CUSTOMERID 0xAB +#define EEPROM_DEFAULT_SUBCUSTOMERID 0xCD +#define EEPROM_DEFAULT_VERSION 0 + +#define EEPROM_CHANNEL_PLAN_FCC 0x0 +#define EEPROM_CHANNEL_PLAN_IC 0x1 +#define EEPROM_CHANNEL_PLAN_ETSI 0x2 +#define EEPROM_CHANNEL_PLAN_SPAIN 0x3 +#define EEPROM_CHANNEL_PLAN_FRANCE 0x4 +#define EEPROM_CHANNEL_PLAN_MKK 0x5 +#define EEPROM_CHANNEL_PLAN_MKK1 0x6 +#define EEPROM_CHANNEL_PLAN_ISRAEL 0x7 +#define EEPROM_CHANNEL_PLAN_TELEC 0x8 +#define EEPROM_CHANNEL_PLAN_GLOBAL_DOMAIN 0x9 +#define EEPROM_CHANNEL_PLAN_WORLD_WIDE_13 0xA +#define EEPROM_CHANNEL_PLAN_NCC 0xB +#define EEPROM_CHANNEL_PLAN_BY_HW_MASK 0x80 + +#define EEPROM_CID_DEFAULT 0x0 +#define EEPROM_CID_TOSHIBA 0x4 +#define EEPROM_CID_CCX 0x10 +#define EEPROM_CID_QMI 0x0D +#define EEPROM_CID_WHQL 0xFE + +#define RTL_EEPROM_ID 0x8129 + +#define EEPROM_HPON 0x02 +#define EEPROM_CLK 0x06 +#define EEPROM_TESTR 0x08 + + +#define EEPROM_TXPOWERCCK 0x10 +#define EEPROM_TXPOWERHT40_1S 0x16 +#define EEPROM_TXPOWERHT20DIFF 0x1B +#define EEPROM_TXPOWER_OFDMDIFF 0x1B + + + +#define EEPROM_TX_PWR_INX 0x10 + +#define EEPROM_CHANNELPLAN 0xB8 +#define EEPROM_XTAL_8821AE 0xB9 +#define EEPROM_THERMAL_METER 0xBA +#define EEPROM_IQK_LCK_88E 0xBB + +#define EEPROM_RF_BOARD_OPTION 0xC1 +#define EEPROM_RF_FEATURE_OPTION_88E 0xC2 +#define EEPROM_RF_BT_SETTING 0xC3 +#define EEPROM_VERSION 0xC4 +#define EEPROM_CUSTOMER_ID 0xC5 +#define EEPROM_RF_ANTENNA_OPT_88E 0xC9 + +#define EEPROM_MAC_ADDR 0xD0 +#define EEPROM_VID 0xD6 +#define EEPROM_DID 0xD8 +#define EEPROM_SVID 0xDA +#define EEPROM_SMID 0xDC + +#define STOPBECON BIT(6) +#define STOPHIGHT BIT(5) +#define STOPMGT BIT(4) +#define STOPVO BIT(3) +#define STOPVI BIT(2) +#define STOPBE BIT(1) +#define STOPBK BIT(0) + +#define RCR_APPFCS BIT(31) +#define RCR_APP_MIC BIT(30) +#define RCR_APP_ICV BIT(29) +#define RCR_APP_PHYST_RXFF BIT(28) +#define RCR_APP_BA_SSN BIT(27) +#define RCR_NONQOS_VHT BIT(26) +#define RCR_ENMBID BIT(24) +#define RCR_LSIGEN BIT(23) +#define RCR_MFBEN BIT(22) +#define RCR_HTC_LOC_CTRL BIT(14) +#define RCR_AMF BIT(13) +#define RCR_ACF BIT(12) +#define RCR_ADF BIT(11) +#define RCR_AICV BIT(9) +#define RCR_ACRC32 BIT(8) +#define RCR_CBSSID_BCN BIT(7) +#define RCR_CBSSID_DATA BIT(6) +#define RCR_CBSSID RCR_CBSSID_DATA +#define RCR_APWRMGT BIT(5) +#define RCR_ADD3 BIT(4) +#define RCR_AB BIT(3) +#define RCR_AM BIT(2) +#define RCR_APM BIT(1) +#define RCR_AAP BIT(0) +#define RCR_MXDMA_OFFSET 8 +#define RCR_FIFO_OFFSET 13 + +#define RSV_CTRL 0x001C +#define RD_CTRL 0x0524 + +#define REG_USB_INFO 0xFE17 +#define REG_USB_SPECIAL_OPTION 0xFE55 +#define REG_USB_DMA_AGG_TO 0xFE5B +#define REG_USB_AGG_TO 0xFE5C +#define REG_USB_AGG_TH 0xFE5D + +#define REG_USB_VID 0xFE60 +#define REG_USB_PID 0xFE62 +#define REG_USB_OPTIONAL 0xFE64 +#define REG_USB_CHIRP_K 0xFE65 +#define REG_USB_PHY 0xFE66 +#define REG_USB_MAC_ADDR 0xFE70 +#define REG_USB_HRPWM 0xFE58 +#define REG_USB_HCPWM 0xFE57 + +#define SW18_FPWM BIT(3) + +#define ISO_MD2PP BIT(0) +#define ISO_UA2USB BIT(1) +#define ISO_UD2CORE BIT(2) +#define ISO_PA2PCIE BIT(3) +#define ISO_PD2CORE BIT(4) +#define ISO_IP2MAC BIT(5) +#define ISO_DIOP BIT(6) +#define ISO_DIOE BIT(7) +#define ISO_EB2CORE BIT(8) +#define ISO_DIOR BIT(9) + +#define PWC_EV25V BIT(14) +#define PWC_EV12V BIT(15) + +#define FEN_BBRSTB BIT(0) +#define FEN_BB_GLB_RSTN BIT(1) +#define FEN_USBA BIT(2) +#define FEN_UPLL BIT(3) +#define FEN_USBD BIT(4) +#define FEN_DIO_PCIE BIT(5) +#define FEN_PCIEA BIT(6) +#define FEN_PPLL BIT(7) +#define FEN_PCIED BIT(8) +#define FEN_DIOE BIT(9) +#define FEN_CPUEN BIT(10) +#define FEN_DCORE BIT(11) +#define FEN_ELDR BIT(12) +#define FEN_DIO_RF BIT(13) +#define FEN_HWPDN BIT(14) +#define FEN_MREGEN BIT(15) + +#define PFM_LDALL BIT(0) +#define PFM_ALDN BIT(1) +#define PFM_LDKP BIT(2) +#define PFM_WOWL BIT(3) +#define EnPDN BIT(4) +#define PDN_PL BIT(5) +#define APFM_ONMAC BIT(8) +#define APFM_OFF BIT(9) +#define APFM_RSM BIT(10) +#define AFSM_HSUS BIT(11) +#define AFSM_PCIE BIT(12) +#define APDM_MAC BIT(13) +#define APDM_HOST BIT(14) +#define APDM_HPDN BIT(15) +#define RDY_MACON BIT(16) +#define SUS_HOST BIT(17) +#define ROP_ALD BIT(20) +#define ROP_PWR BIT(21) +#define ROP_SPS BIT(22) +#define SOP_MRST BIT(25) +#define SOP_FUSE BIT(26) +#define SOP_ABG BIT(27) +#define SOP_AMB BIT(28) +#define SOP_RCK BIT(29) +#define SOP_A8M BIT(30) +#define XOP_BTCK BIT(31) + +#define ANAD16V_EN BIT(0) +#define ANA8M BIT(1) +#define MACSLP BIT(4) +#define LOADER_CLK_EN BIT(5) +#define _80M_SSC_DIS BIT(7) +#define _80M_SSC_EN_HO BIT(8) +#define PHY_SSC_RSTB BIT(9) +#define SEC_CLK_EN BIT(10) +#define MAC_CLK_EN BIT(11) +#define SYS_CLK_EN BIT(12) +#define RING_CLK_EN BIT(13) + +#define BOOT_FROM_EEPROM BIT(4) +#define EEPROM_EN BIT(5) + +#define AFE_BGEN BIT(0) +#define AFE_MBEN BIT(1) +#define MAC_ID_EN BIT(7) + +#define WLOCK_ALL BIT(0) +#define WLOCK_00 BIT(1) +#define WLOCK_04 BIT(2) +#define WLOCK_08 BIT(3) +#define WLOCK_40 BIT(4) +#define R_DIS_PRST_0 BIT(5) +#define R_DIS_PRST_1 BIT(6) +#define LOCK_ALL_EN BIT(7) + +#define RF_EN BIT(0) +#define RF_RSTB BIT(1) +#define RF_SDMRSTB BIT(2) + +#define LDA15_EN BIT(0) +#define LDA15_STBY BIT(1) +#define LDA15_OBUF BIT(2) +#define LDA15_REG_VOS BIT(3) +#define _LDA15_VOADJ(x) (((x) & 0x7) << 4) + +#define LDV12_EN BIT(0) +#define LDV12_SDBY BIT(1) +#define LPLDO_HSM BIT(2) +#define LPLDO_LSM_DIS BIT(3) +#define _LDV12_VADJ(x) (((x) & 0xF) << 4) + +#define XTAL_EN BIT(0) +#define XTAL_BSEL BIT(1) +#define _XTAL_BOSC(x) (((x) & 0x3) << 2) +#define _XTAL_CADJ(x) (((x) & 0xF) << 4) +#define XTAL_GATE_USB BIT(8) +#define _XTAL_USB_DRV(x) (((x) & 0x3) << 9) +#define XTAL_GATE_AFE BIT(11) +#define _XTAL_AFE_DRV(x) (((x) & 0x3) << 12) +#define XTAL_RF_GATE BIT(14) +#define _XTAL_RF_DRV(x) (((x) & 0x3) << 15) +#define XTAL_GATE_DIG BIT(17) +#define _XTAL_DIG_DRV(x) (((x) & 0x3) << 18) +#define XTAL_BT_GATE BIT(20) +#define _XTAL_BT_DRV(x) (((x) & 0x3) << 21) +#define _XTAL_GPIO(x) (((x) & 0x7) << 23) + +#define CKDLY_AFE BIT(26) +#define CKDLY_USB BIT(27) +#define CKDLY_DIG BIT(28) +#define CKDLY_BT BIT(29) + +#define APLL_EN BIT(0) +#define APLL_320_EN BIT(1) +#define APLL_FREF_SEL BIT(2) +#define APLL_EDGE_SEL BIT(3) +#define APLL_WDOGB BIT(4) +#define APLL_LPFEN BIT(5) + +#define APLL_REF_CLK_13MHZ 0x1 +#define APLL_REF_CLK_19_2MHZ 0x2 +#define APLL_REF_CLK_20MHZ 0x3 +#define APLL_REF_CLK_25MHZ 0x4 +#define APLL_REF_CLK_26MHZ 0x5 +#define APLL_REF_CLK_38_4MHZ 0x6 +#define APLL_REF_CLK_40MHZ 0x7 + +#define APLL_320EN BIT(14) +#define APLL_80EN BIT(15) +#define APLL_1MEN BIT(24) + +#define ALD_EN BIT(18) +#define EF_PD BIT(19) +#define EF_FLAG BIT(31) + +#define EF_TRPT BIT(7) +#define LDOE25_EN BIT(31) + +#define RSM_EN BIT(0) +#define Timer_EN BIT(4) + +#define TRSW0EN BIT(2) +#define TRSW1EN BIT(3) +#define EROM_EN BIT(4) +#define EnBT BIT(5) +#define EnUart BIT(8) +#define Uart_910 BIT(9) +#define EnPMAC BIT(10) +#define SIC_SWRST BIT(11) +#define EnSIC BIT(12) +#define SIC_23 BIT(13) +#define EnHDP BIT(14) +#define SIC_LBK BIT(15) + +#define LED0PL BIT(4) +#define LED1PL BIT(12) +#define LED0DIS BIT(7) + +#define MCUFWDL_EN BIT(0) +#define MCUFWDL_RDY BIT(1) +#define FWDL_CHKSUM_RPT BIT(2) +#define MACINI_RDY BIT(3) +#define BBINI_RDY BIT(4) +#define RFINI_RDY BIT(5) +#define WINTINI_RDY BIT(6) +#define CPRST BIT(23) + +#define XCLK_VLD BIT(0) +#define ACLK_VLD BIT(1) +#define UCLK_VLD BIT(2) +#define PCLK_VLD BIT(3) +#define PCIRSTB BIT(4) +#define V15_VLD BIT(5) +#define TRP_B15V_EN BIT(7) +#define SIC_IDLE BIT(8) +#define BD_MAC2 BIT(9) +#define BD_MAC1 BIT(10) +#define IC_MACPHY_MODE BIT(11) +#define VENDOR_ID BIT(19) +#define PAD_HWPD_IDN BIT(22) +#define TRP_VAUX_EN BIT(23) +#define TRP_BT_EN BIT(24) +#define BD_PKG_SEL BIT(25) +#define BD_HCI_SEL BIT(26) +#define TYPE_ID BIT(27) + +#define CHIP_VER_RTL_MASK 0xF000 +#define CHIP_VER_RTL_SHIFT 12 + +#define REG_LBMODE (REG_CR + 3) + +#define HCI_TXDMA_EN BIT(0) +#define HCI_RXDMA_EN BIT(1) +#define TXDMA_EN BIT(2) +#define RXDMA_EN BIT(3) +#define PROTOCOL_EN BIT(4) +#define SCHEDULE_EN BIT(5) +#define MACTXEN BIT(6) +#define MACRXEN BIT(7) +#define ENSWBCN BIT(8) +#define ENSEC BIT(9) + +#define _NETTYPE(x) (((x) & 0x3) << 16) +#define MASK_NETTYPE 0x30000 +#define NT_NO_LINK 0x0 +#define NT_LINK_AD_HOC 0x1 +#define NT_LINK_AP 0x2 +#define NT_AS_AP 0x3 + +#define _LBMODE(x) (((x) & 0xF) << 24) +#define MASK_LBMODE 0xF000000 +#define LOOPBACK_NORMAL 0x0 +#define LOOPBACK_IMMEDIATELY 0xB +#define LOOPBACK_MAC_DELAY 0x3 +#define LOOPBACK_PHY 0x1 +#define LOOPBACK_DMA 0x7 + +#define GET_RX_PAGE_SIZE(value) ((value) & 0xF) +#define GET_TX_PAGE_SIZE(value) (((value) & 0xF0) >> 4) +#define _PSRX_MASK 0xF +#define _PSTX_MASK 0xF0 +#define _PSRX(x) (x) +#define _PSTX(x) ((x) << 4) + +#define PBP_64 0x0 +#define PBP_128 0x1 +#define PBP_256 0x2 +#define PBP_512 0x3 +#define PBP_1024 0x4 + +#define RXDMA_ARBBW_EN BIT(0) +#define RXSHFT_EN BIT(1) +#define RXDMA_AGG_EN BIT(2) +#define QS_VO_QUEUE BIT(8) +#define QS_VI_QUEUE BIT(9) +#define QS_BE_QUEUE BIT(10) +#define QS_BK_QUEUE BIT(11) +#define QS_MANAGER_QUEUE BIT(12) +#define QS_HIGH_QUEUE BIT(13) + +#define HQSEL_VOQ BIT(0) +#define HQSEL_VIQ BIT(1) +#define HQSEL_BEQ BIT(2) +#define HQSEL_BKQ BIT(3) +#define HQSEL_MGTQ BIT(4) +#define HQSEL_HIQ BIT(5) + +#define _TXDMA_HIQ_MAP(x) (((x)&0x3) << 14) +#define _TXDMA_MGQ_MAP(x) (((x)&0x3) << 12) +#define _TXDMA_BKQ_MAP(x) (((x)&0x3) << 10) +#define _TXDMA_BEQ_MAP(x) (((x)&0x3) << 8 ) +#define _TXDMA_VIQ_MAP(x) (((x)&0x3) << 6 ) +#define _TXDMA_VOQ_MAP(x) (((x)&0x3) << 4 ) + +#define QUEUE_LOW 1 +#define QUEUE_NORMAL 2 +#define QUEUE_HIGH 3 + +#define _LLT_NO_ACTIVE 0x0 +#define _LLT_WRITE_ACCESS 0x1 +#define _LLT_READ_ACCESS 0x2 + +#define _LLT_INIT_DATA(x) ((x) & 0xFF) +#define _LLT_INIT_ADDR(x) (((x) & 0xFF) << 8) +#define _LLT_OP(x) (((x) & 0x3) << 30) +#define _LLT_OP_VALUE(x) (((x) >> 30) & 0x3) + +#define BB_WRITE_READ_MASK (BIT(31) | BIT(30)) +#define BB_WRITE_EN BIT(30) +#define BB_READ_EN BIT(31) + +#define _HPQ(x) ((x) & 0xFF) +#define _LPQ(x) (((x) & 0xFF) << 8) +#define _PUBQ(x) (((x) & 0xFF) << 16) +#define _NPQ(x) ((x) & 0xFF) + +#define HPQ_PUBLIC_DIS BIT(24) +#define LPQ_PUBLIC_DIS BIT(25) +#define LD_RQPN BIT(31) + +#define BCN_VALID BIT(16) +#define BCN_HEAD(x) (((x) & 0xFF) << 8) +#define BCN_HEAD_MASK 0xFF00 + +#define BLK_DESC_NUM_SHIFT 4 +#define BLK_DESC_NUM_MASK 0xF + +#define DROP_DATA_EN BIT(9) + +#define EN_AMPDU_RTY_NEW BIT(7) + +#define _INIRTSMCS_SEL(x) ((x) & 0x3F) + +#define _SPEC_SIFS_CCK(x) ((x) & 0xFF) +#define _SPEC_SIFS_OFDM(x) (((x) & 0xFF) << 8) + +#define RATE_REG_BITMAP_ALL 0xFFFFF + +#define _RRSC_BITMAP(x) ((x) & 0xFFFFF) + +#define _RRSR_RSC(x) (((x) & 0x3) << 21) +#define RRSR_RSC_RESERVED 0x0 +#define RRSR_RSC_UPPER_SUBCHANNEL 0x1 +#define RRSR_RSC_LOWER_SUBCHANNEL 0x2 +#define RRSR_RSC_DUPLICATE_MODE 0x3 + +#define USE_SHORT_G1 BIT(20) + +#define _AGGLMT_MCS0(x) ((x) & 0xF) +#define _AGGLMT_MCS1(x) (((x) & 0xF) << 4) +#define _AGGLMT_MCS2(x) (((x) & 0xF) << 8) +#define _AGGLMT_MCS3(x) (((x) & 0xF) << 12) +#define _AGGLMT_MCS4(x) (((x) & 0xF) << 16) +#define _AGGLMT_MCS5(x) (((x) & 0xF) << 20) +#define _AGGLMT_MCS6(x) (((x) & 0xF) << 24) +#define _AGGLMT_MCS7(x) (((x) & 0xF) << 28) + +#define RETRY_LIMIT_SHORT_SHIFT 8 +#define RETRY_LIMIT_LONG_SHIFT 0 + +#define _DARF_RC1(x) ((x) & 0x1F) +#define _DARF_RC2(x) (((x) & 0x1F) << 8) +#define _DARF_RC3(x) (((x) & 0x1F) << 16) +#define _DARF_RC4(x) (((x) & 0x1F) << 24) +#define _DARF_RC5(x) ((x) & 0x1F) +#define _DARF_RC6(x) (((x) & 0x1F) << 8) +#define _DARF_RC7(x) (((x) & 0x1F) << 16) +#define _DARF_RC8(x) (((x) & 0x1F) << 24) + +#define _RARF_RC1(x) ((x) & 0x1F) +#define _RARF_RC2(x) (((x) & 0x1F) << 8) +#define _RARF_RC3(x) (((x) & 0x1F) << 16) +#define _RARF_RC4(x) (((x) & 0x1F) << 24) +#define _RARF_RC5(x) ((x) & 0x1F) +#define _RARF_RC6(x) (((x) & 0x1F) << 8) +#define _RARF_RC7(x) (((x) & 0x1F) << 16) +#define _RARF_RC8(x) (((x) & 0x1F) << 24) + +#define AC_PARAM_TXOP_LIMIT_OFFSET 16 +#define AC_PARAM_ECW_MAX_OFFSET 12 +#define AC_PARAM_ECW_MIN_OFFSET 8 +#define AC_PARAM_AIFS_OFFSET 0 + +#define _AIFS(x) (x) +#define _ECW_MAX_MIN(x) ((x) << 8) +#define _TXOP_LIMIT(x) ((x) << 16) + +#define _BCNIFS(x) ((x) & 0xFF) +#define _BCNECW(x) ((((x) & 0xF))<< 8) + +#define _LRL(x) ((x) & 0x3F) +#define _SRL(x) (((x) & 0x3F) << 8) + +#define _SIFS_CCK_CTX(x) ((x) & 0xFF) +#define _SIFS_CCK_TRX(x) (((x) & 0xFF) << 8); + +#define _SIFS_OFDM_CTX(x) ((x) & 0xFF) +#define _SIFS_OFDM_TRX(x) (((x) & 0xFF) << 8); + +#define _TBTT_PROHIBIT_HOLD(x) (((x) & 0xFF) << 8) + +#define DIS_EDCA_CNT_DWN BIT(11) + +#define EN_MBSSID BIT(1) +#define EN_TXBCN_RPT BIT(2) +#define EN_BCN_FUNCTION BIT(3) + +#define TSFTR_RST BIT(0) +#define TSFTR1_RST BIT(1) + +#define STOP_BCNQ BIT(6) + +#define DIS_TSF_UDT0_NORMAL_CHIP BIT(4) +#define DIS_TSF_UDT0_TEST_CHIP BIT(5) + +#define AcmHw_HwEn BIT(0) +#define AcmHw_BeqEn BIT(1) +#define AcmHw_ViqEn BIT(2) +#define AcmHw_VoqEn BIT(3) +#define AcmHw_BeqStatus BIT(4) +#define AcmHw_ViqStatus BIT(5) +#define AcmHw_VoqStatus BIT(6) + +#define APSDOFF BIT(6) +#define APSDOFF_STATUS BIT(7) + +#define BW_20MHZ BIT(2) + +#define RATE_BITMAP_ALL 0xFFFFF + +#define RATE_RRSR_CCK_ONLY_1M 0xFFFF1 + +#define TSFRST BIT(0) +#define DIS_GCLK BIT(1) +#define PAD_SEL BIT(2) +#define PWR_ST BIT(6) +#define PWRBIT_OW_EN BIT(7) +#define ACRC BIT(8) +#define CFENDFORM BIT(9) +#define ICV BIT(10) + +#define AAP BIT(0) +#define APM BIT(1) +#define AM BIT(2) +#define AB BIT(3) +#define ADD3 BIT(4) +#define APWRMGT BIT(5) +#define CBSSID BIT(6) +#define CBSSID_DATA BIT(6) +#define CBSSID_BCN BIT(7) +#define ACRC32 BIT(8) +#define AICV BIT(9) +#define ADF BIT(11) +#define ACF BIT(12) +#define AMF BIT(13) +#define HTC_LOC_CTRL BIT(14) +#define UC_DATA_EN BIT(16) +#define BM_DATA_EN BIT(17) +#define MFBEN BIT(22) +#define LSIGEN BIT(23) +#define EnMBID BIT(24) +#define APP_BASSN BIT(27) +#define APP_PHYSTS BIT(28) +#define APP_ICV BIT(29) +#define APP_MIC BIT(30) +#define APP_FCS BIT(31) + +#define _MIN_SPACE(x) ((x) & 0x7) +#define _SHORT_GI_PADDING(x) (((x) & 0x1F) << 3) + +#define RXERR_TYPE_OFDM_PPDU 0 +#define RXERR_TYPE_OFDM_FALSE_ALARM 1 +#define RXERR_TYPE_OFDM_MPDU_OK 2 +#define RXERR_TYPE_OFDM_MPDU_FAIL 3 +#define RXERR_TYPE_CCK_PPDU 4 +#define RXERR_TYPE_CCK_FALSE_ALARM 5 +#define RXERR_TYPE_CCK_MPDU_OK 6 +#define RXERR_TYPE_CCK_MPDU_FAIL 7 +#define RXERR_TYPE_HT_PPDU 8 +#define RXERR_TYPE_HT_FALSE_ALARM 9 +#define RXERR_TYPE_HT_MPDU_TOTAL 10 +#define RXERR_TYPE_HT_MPDU_OK 11 +#define RXERR_TYPE_HT_MPDU_FAIL 12 +#define RXERR_TYPE_RX_FULL_DROP 15 + +#define RXERR_COUNTER_MASK 0xFFFFF +#define RXERR_RPT_RST BIT(27) +#define _RXERR_RPT_SEL(type) ((type) << 28) + +#define SCR_TxUseDK BIT(0) +#define SCR_RxUseDK BIT(1) +#define SCR_TxEncEnable BIT(2) +#define SCR_RxDecEnable BIT(3) +#define SCR_SKByA2 BIT(4) +#define SCR_NoSKMC BIT(5) +#define SCR_TXBCUSEDK BIT(6) +#define SCR_RXBCUSEDK BIT(7) + +#define XCLK_VLD BIT(0) +#define ACLK_VLD BIT(1) +#define UCLK_VLD BIT(2) +#define PCLK_VLD BIT(3) +#define PCIRSTB BIT(4) +#define V15_VLD BIT(5) +#define TRP_B15V_EN BIT(7) +#define SIC_IDLE BIT(8) +#define BD_MAC2 BIT(9) +#define BD_MAC1 BIT(10) +#define IC_MACPHY_MODE BIT(11) +#define BT_FUNC BIT(16) +#define VENDOR_ID BIT(19) +#define PAD_HWPD_IDN BIT(22) +#define TRP_VAUX_EN BIT(23) +#define TRP_BT_EN BIT(24) +#define BD_PKG_SEL BIT(25) +#define BD_HCI_SEL BIT(26) +#define TYPE_ID BIT(27) + +#define USB_IS_HIGH_SPEED 0 +#define USB_IS_FULL_SPEED 1 +#define USB_SPEED_MASK BIT(5) + +#define USB_NORMAL_SIE_EP_MASK 0xF +#define USB_NORMAL_SIE_EP_SHIFT 4 + +#define USB_TEST_EP_MASK 0x30 +#define USB_TEST_EP_SHIFT 4 + +#define USB_AGG_EN BIT(3) + +#define MAC_ADDR_LEN 6 +#define LAST_ENTRY_OF_TX_PKT_BUFFER 175/*255 88e*/ + +#define POLLING_LLT_THRESHOLD 20 +#define POLLING_READY_TIMEOUT_COUNT 3000 + +#define MAX_MSS_DENSITY_2T 0x13 +#define MAX_MSS_DENSITY_1T 0x0A + +#define EPROM_CMD_OPERATING_MODE_MASK ((1<<7)|(1<<6)) +#define EPROM_CMD_CONFIG 0x3 +#define EPROM_CMD_LOAD 1 + +#define HWSET_MAX_SIZE_92S HWSET_MAX_SIZE + +#define HAL_8192C_HW_GPIO_WPS_BIT BIT(2) + +#define RA_LSSIWRITE_8821A 0xc90 +#define RB_LSSIWRITE_8821A 0xe90 + +#define RA_PIREAD_8821A 0xd04 +#define RB_PIREAD_8821A 0xd44 +#define RA_SIREAD_8821A 0xd08 +#define RB_SIREAD_8821A 0xd48 + +#define RPMAC_RESET 0x100 +#define RPMAC_TXSTART 0x104 +#define RPMAC_TXLEGACYSIG 0x108 +#define RPMAC_TXHTSIG1 0x10c +#define RPMAC_TXHTSIG2 0x110 +#define RPMAC_PHYDEBUG 0x114 +#define RPMAC_TXPACKETNUM 0x118 +#define RPMAC_TXIDLE 0x11c +#define RPMAC_TXMACHEADER0 0x120 +#define RPMAC_TXMACHEADER1 0x124 +#define RPMAC_TXMACHEADER2 0x128 +#define RPMAC_TXMACHEADER3 0x12c +#define RPMAC_TXMACHEADER4 0x130 +#define RPMAC_TXMACHEADER5 0x134 +#define RPMAC_TXDADATYPE 0x138 +#define RPMAC_TXRANDOMSEED 0x13c +#define RPMAC_CCKPLCPPREAMBLE 0x140 +#define RPMAC_CCKPLCPHEADER 0x144 +#define RPMAC_CCKCRC16 0x148 +#define RPMAC_OFDMRXCRC32OK 0x170 +#define RPMAC_OFDMRXCRC32Er 0x174 +#define RPMAC_OFDMRXPARITYER 0x178 +#define RPMAC_OFDMRXCRC8ER 0x17c +#define RPMAC_CCKCRXRC16ER 0x180 +#define RPMAC_CCKCRXRC32ER 0x184 +#define RPMAC_CCKCRXRC32OK 0x188 +#define RPMAC_TXSTATUS 0x18c + +#define RFPGA0_RFMOD 0x800 + +#define RFPGA0_TXINFO 0x804 +#define RFPGA0_PSDFUNCTION 0x808 + +#define RFPGA0_TXGAINSTAGE 0x80c + +#define RFPGA0_RFTIMING1 0x810 +#define RFPGA0_RFTIMING2 0x814 + +#define RFPGA0_XA_HSSIPARAMETER1 0x820 +#define RFPGA0_XA_HSSIPARAMETER2 0x824 +#define RFPGA0_XB_HSSIPARAMETER1 0x828 +#define RFPGA0_XB_HSSIPARAMETER2 0x82c +#define RCCAONSEC 0x838 + +#define RFPGA0_XA_LSSIPARAMETER 0x840 +#define RFPGA0_XB_LSSIPARAMETER 0x844 +#define RL1PEAKTH 0x848 + +#define RFPGA0_RFWAKEUPPARAMETER 0x850 +#define RFPGA0_RFSLEEPUPPARAMETER 0x854 + +#define RFPGA0_XAB_SWITCHCONTROL 0x858 +#define RFPGA0_XCD_SWITCHCONTROL 0x85c + +#define RFPGA0_XA_RFINTERFACEOE 0x860 +#define RFC_AREA 0x860 +#define RFPGA0_XB_RFINTERFACEOE 0x864 + +#define RFPGA0_XAB_RFINTERFACESW 0x870 +#define RFPGA0_XCD_RFINTERFACESW 0x874 + +#define rFPGA0_XAB_RFPARAMETER 0x878 +#define rFPGA0_XCD_RFPARAMETER 0x87c + +#define RFPGA0_ANALOGPARAMETER1 0x880 +#define RFPGA0_ANALOGPARAMETER2 0x884 +#define RFPGA0_ANALOGPARAMETER3 0x888 +#define RFPGA0_ANALOGPARAMETER4 0x88c + +#define RFPGA0_XA_LSSIREADBACK 0x8a0 +#define RFPGA0_XB_LSSIREADBACK 0x8a4 +#define RFPGA0_XC_LSSIREADBACK 0x8a8 +//#define RFPGA0_XD_LSSIREADBACK 0x8ac +#define RRFMOD 0x8ac +#define RHSSIREAD_8821AE 0x8b0 + +#define RFPGA0_PSDREPORT 0x8b4 +#define TRANSCEIVEA_HSPI_READBACK 0x8b8 +#define TRANSCEIVEB_HSPI_READBACK 0x8bc +//#define REG_SC_CNT 0x8c4 +#define RADC_BUF_CLK 0x8c4 +#define RFPGA0_XAB_RFINTERFACERB 0x8e0 +#define RFPGA0_XCD_RFINTERFACERB 0x8e4 + +#define RFPGA1_RFMOD 0x900 + +#define RFPGA1_TXBLOCK 0x904 +#define RFPGA1_DEBUGSELECT 0x908 +#define RFPGA1_TXINFO 0x90c + +#define RCCK_SYSTEM 0xa00 +#define BCCK_SYSTEM 0x10 + + +#define RCCK0_AFESETTING 0xa04 +#define RCCK0_CCA 0xa08 + +#define RCCK0_RXAGC1 0xa0c +#define RCCK0_RXAGC2 0xa10 + +#define RCCK0_RXHP 0xa14 + +#define RCCK0_DSPPARAMETER1 0xa18 +#define RCCK0_DSPPARAMETER2 0xa1c + +#define RCCK0_TXFILTER1 0xa20 +#define RCCK0_TXFILTER2 0xa24 +#define RCCK0_DEBUGPORT 0xa28 +#define RCCK0_FALSEALARMREPORT 0xa2c +#define RCCK0_TRSSIREPORT 0xa50 +#define RCCK0_RXREPORT 0xa54 +#define RCCK0_FACOUNTERLOWER 0xa5c +#define RCCK0_FACOUNTERUPPER 0xa58 +#define RCCK0_CCA_CNT 0xa60 + + +/* PageB(0xB00) */ +#define rPdp_AntA 0xb00 +#define rPdp_AntA_4 0xb04 +#define rPdp_AntA_8 0xb08 +#define rPdp_AntA_C 0xb0c +#define rPdp_AntA_10 0xb10 +#define rPdp_AntA_14 0xb14 +#define rPdp_AntA_18 0xb18 +#define rPdp_AntA_1C 0xb1c +#define rPdp_AntA_20 0xb20 +#define rPdp_AntA_24 0xb24 + +#define rConfig_Pmpd_AntA 0xb28 +#define rConfig_ram64x16 0xb2c + +#define rBndA 0xb30 +#define rHssiPar 0xb34 + +#define rConfig_AntA 0xb68 +#define rConfig_AntB 0xb6c + +#define rPdp_AntB 0xb70 +#define rPdp_AntB_4 0xb74 +#define rPdp_AntB_8 0xb78 +#define rPdp_AntB_C 0xb7c +#define rPdp_AntB_10 0xb80 +#define rPdp_AntB_14 0xb84 +#define rPdp_AntB_18 0xb88 +#define rPdp_AntB_1C 0xb8c +#define rPdp_AntB_20 0xb90 +#define rPdp_AntB_24 0xb94 + +#define rConfig_Pmpd_AntB 0xb98 + +#define rBndB 0xba0 + +#define rAPK 0xbd8 +#define rPm_Rx0_AntA 0xbdc +#define rPm_Rx1_AntA 0xbe0 +#define rPm_Rx2_AntA 0xbe4 +#define rPm_Rx3_AntA 0xbe8 +#define rPm_Rx0_AntB 0xbec +#define rPm_Rx1_AntB 0xbf0 +#define rPm_Rx2_AntB 0xbf4 +#define rPm_Rx3_AntB 0xbf8 + +/*RSSI Dump*/ +#define RA_RSSI_DUMP 0xBF0 +#define RB_RSSI_DUMP 0xBF1 +#define RS1_RX_EVM_DUMP 0xBF4 +#define RS2_RX_EVM_DUMP 0xBF5 +#define RA_RX_SNR_DUMP 0xBF6 +#define RB_RX_SNR_DUMP 0xBF7 +#define RA_CFO_SHORT_DUMP 0xBF8 +#define RB_CFO_SHORT_DUMP 0xBFA +#define RA_CFO_LONG_DUMP 0xBEC +#define RB_CFO_LONG_DUMP 0xBEE + +/*Page C*/ +#define ROFDM0_LSTF 0xc00 + +#define ROFDM0_TRXPATHENABLE 0xc04 +#define ROFDM0_TRMUXPAR 0xc08 +#define ROFDM0_TRSWISOLATION 0xc0c + +#define ROFDM0_XARXAFE 0xc10 +#define ROFDM0_XARXIQIMBALANCE 0xc14 +#define ROFDM0_XBRXAFE 0xc18 +#define ROFDM0_XBRXIQIMBALANCE 0xc1c +#define ROFDM0_XCRXAFE 0xc20 +#define ROFDM0_XCRXIQIMBANLANCE 0xc24 +#define ROFDM0_XDRXAFE 0xc28 +#define ROFDM0_XDRXIQIMBALANCE 0xc2c + +#define ROFDM0_RXDETECTOR1 0xc30 +#define ROFDM0_RXDETECTOR2 0xc34 +#define ROFDM0_RXDETECTOR3 0xc38 +#define ROFDM0_RXDETECTOR4 0xc3c + +#define ROFDM0_RXDSP 0xc40 +#define ROFDM0_CFOANDDAGC 0xc44 +#define ROFDM0_CCADROPTHRESHOLD 0xc48 +#define ROFDM0_ECCATHRESHOLD 0xc4c + +#define ROFDM0_XAAGCCORE1 0xc50 +#define ROFDM0_XAAGCCORE2 0xc54 +#define ROFDM0_XBAGCCORE1 0xc58 +#define ROFDM0_XBAGCCORE2 0xc5c +#define ROFDM0_XCAGCCORE1 0xc60 +#define ROFDM0_XCAGCCORE2 0xc64 +#define ROFDM0_XDAGCCORE1 0xc68 +#define ROFDM0_XDAGCCORE2 0xc6c + +#define ROFDM0_AGCPARAMETER1 0xc70 +#define ROFDM0_AGCPARAMETER2 0xc74 +#define ROFDM0_AGCRSSITABLE 0xc78 +#define ROFDM0_HTSTFAGC 0xc7c + +#define ROFDM0_XATXIQIMBALANCE 0xc80 +#define ROFDM0_XATXAFE 0xc84 +#define ROFDM0_XBTXIQIMBALANCE 0xc88 +#define ROFDM0_XBTXAFE 0xc8c +#define ROFDM0_XCTXIQIMBALANCE 0xc90 +#define ROFDM0_XCTXAFE 0xc94 +#define ROFDM0_XDTXIQIMBALANCE 0xc98 +#define ROFDM0_XDTXAFE 0xc9c + +#define ROFDM0_RXIQEXTANTA 0xca0 +#define ROFDM0_TXCOEFF1 0xca4 +#define ROFDM0_TXCOEFF2 0xca8 +#define ROFDM0_TXCOEFF3 0xcac +#define ROFDM0_TXCOEFF4 0xcb0 +#define ROFDM0_TXCOEFF5 0xcb4 +#define ROFDM0_TXCOEFF6 0xcb8 + +/*Path_A RFE cotrol */ +#define RA_RFE_CTRL_8812 0xcb8 +/*Path_B RFE control*/ +#define RB_RFE_CTRL_8812 0xeb8 + +#define ROFDM0_RXHPPARAMETER 0xce0 +#define ROFDM0_TXPSEUDONOISEWGT 0xce4 +#define ROFDM0_FRAMESYNC 0xcf0 +#define ROFDM0_DFSREPORT 0xcf4 + + +#define ROFDM1_LSTF 0xd00 +#define ROFDM1_TRXPATHENABLE 0xd04 + +#define ROFDM1_CF0 0xd08 +#define ROFDM1_CSI1 0xd10 +#define ROFDM1_SBD 0xd14 +#define ROFDM1_CSI2 0xd18 +#define ROFDM1_CFOTRACKING 0xd2c +#define ROFDM1_TRXMESAURE1 0xd34 +#define ROFDM1_INTFDET 0xd3c +#define ROFDM1_PSEUDONOISESTATEAB 0xd50 +#define ROFDM1_PSEUDONOISESTATECD 0xd54 +#define ROFDM1_RXPSEUDONOISEWGT 0xd58 + +#define ROFDM_PHYCOUNTER1 0xda0 +#define ROFDM_PHYCOUNTER2 0xda4 +#define ROFDM_PHYCOUNTER3 0xda8 + +#define ROFDM_SHORTCFOAB 0xdac +#define ROFDM_SHORTCFOCD 0xdb0 +#define ROFDM_LONGCFOAB 0xdb4 +#define ROFDM_LONGCFOCD 0xdb8 +#define ROFDM_TAILCF0AB 0xdbc +#define ROFDM_TAILCF0CD 0xdc0 +#define ROFDM_PWMEASURE1 0xdc4 +#define ROFDM_PWMEASURE2 0xdc8 +#define ROFDM_BWREPORT 0xdcc +#define ROFDM_AGCREPORT 0xdd0 +#define ROFDM_RXSNR 0xdd4 +#define ROFDM_RXEVMCSI 0xdd8 +#define ROFDM_SIGREPORT 0xddc + +#define RTXAGC_A_CCK11_CCK1 0xc20 +#define RTXAGC_A_OFDM18_OFDM6 0xc24 +#define RTXAGC_A_OFDM54_OFDM24 0xc28 +#define RTXAGC_A_MCS03_MCS00 0xc2c +#define RTXAGC_A_MCS07_MCS04 0xc30 +#define RTXAGC_A_MCS11_MCS08 0xc34 +#define RTXAGC_A_MCS15_MCS12 0xc38 +#define RTXAGC_A_NSS1INDEX3_NSS1INDEX0 0xc3c +#define RTXAGC_A_NSS1INDEX7_NSS1INDEX4 0xc40 +#define RTXAGC_A_NSS2INDEX1_NSS1INDEX8 0xc44 +#define RTXAGC_A_NSS2INDEX5_NSS2INDEX2 0xc48 +#define RTXAGC_A_NSS2INDEX9_NSS2INDEX6 0xc4c +#define RTXAGC_B_CCK11_CCK1 0xe20 +#define RTXAGC_B_OFDM18_OFDM6 0xe24 +#define RTXAGC_B_OFDM54_OFDM24 0xe28 +#define RTXAGC_B_MCS03_MCS00 0xe2c +#define RTXAGC_B_MCS07_MCS04 0xe30 +#define RTXAGC_B_MCS11_MCS08 0xe34 +#define RTXAGC_B_MCS15_MCS12 0xe38 +#define RTXAGC_B_NSS1INDEX3_NSS1INDEX0 0xe3c +#define RTXAGC_B_NSS1INDEX7_NSS1INDEX4 0xe40 +#define RTXAGC_B_NSS2INDEX1_NSS1INDEX8 0xe44 +#define RTXAGC_B_NSS2INDEX5_NSS2INDEX2 0xe48 +#define RTXAGC_B_NSS2INDEX9_NSS2INDEX6 0xe4c + +#define RA_TXPWRTRAING 0xc54 +#define RB_TXPWRTRAING 0xe54 + + +#define RFPGA0_IQK 0xe28 +#define RTx_IQK_Tone_A 0xe30 +#define RRx_IQK_Tone_A 0xe34 +#define RTx_IQK_PI_A 0xe38 +#define RRx_IQK_PI_A 0xe3c + +#define RTx_IQK 0xe40 +#define RRx_IQK 0xe44 +#define RIQK_AGC_Pts 0xe48 +#define RIQK_AGC_Rsp 0xe4c +#define RTx_IQK_Tone_B 0xe50 +#define RRx_IQK_Tone_B 0xe54 +#define RTx_IQK_PI_B 0xe58 +#define RRx_IQK_PI_B 0xe5c +#define RIQK_AGC_Cont 0xe60 + +#define RBlue_Tooth 0xe6c +#define RRx_Wait_CCA 0xe70 +#define RTx_CCK_RFON 0xe74 +#define RTx_CCK_BBON 0xe78 +#define RTx_OFDM_RFON 0xe7c +#define RTx_OFDM_BBON 0xe80 +#define RTx_To_Rx 0xe84 +#define RTx_To_Tx 0xe88 +#define RRx_CCK 0xe8c + +#define RTx_Power_Before_IQK_A 0xe94 +#define RTx_Power_After_IQK_A 0xe9c + +#define RRx_Power_Before_IQK_A 0xea0 +#define RRx_Power_Before_IQK_A_2 0xea4 +#define RRx_Power_After_IQK_A 0xea8 +#define RRx_Power_After_IQK_A_2 0xeac + +#define RTx_Power_Before_IQK_B 0xeb4 +#define RTx_Power_After_IQK_B 0xebc + +#define RRx_Power_Before_IQK_B 0xec0 +#define RRx_Power_Before_IQK_B_2 0xec4 +#define RRx_Power_After_IQK_B 0xec8 +#define RRx_Power_After_IQK_B_2 0xecc + +#define RRx_OFDM 0xed0 +#define RRx_Wait_RIFS 0xed4 +#define RRx_TO_Rx 0xed8 +#define RStandby 0xedc +#define RSleep 0xee0 +#define RPMPD_ANAEN 0xeec + +#define RZEBRA1_HSSIENABLE 0x0 +#define RZEBRA1_TRXENABLE1 0x1 +#define RZEBRA1_TRXENABLE2 0x2 +#define RZEBRA1_AGC 0x4 +#define RZEBRA1_CHARGEPUMP 0x5 +#define RZEBRA1_CHANNEL 0x7 + +#define RZEBRA1_TXGAIN 0x8 +#define RZEBRA1_TXLPF 0x9 +#define RZEBRA1_RXLPF 0xb +#define RZEBRA1_RXHPFCORNER 0xc + +#define RGLOBALCTRL 0 +#define RRTL8256_TXLPF 19 +#define RRTL8256_RXLPF 11 +#define RRTL8258_TXLPF 0x11 +#define RRTL8258_RXLPF 0x13 +#define RRTL8258_RSSILPF 0xa + +#define RF_AC 0x00 + +#define RF_IQADJ_G1 0x01 +#define RF_IQADJ_G2 0x02 +#define RF_POW_TRSW 0x05 + +#define RF_GAIN_RX 0x06 +#define RF_GAIN_TX 0x07 + +#define RF_TXM_IDAC 0x08 +#define RF_BS_IQGEN 0x0F + +#define RF_MODE1 0x10 +#define RF_MODE2 0x11 + +#define RF_RX_AGC_HP 0x12 +#define RF_TX_AGC 0x13 +#define RF_BIAS 0x14 +#define RF_IPA 0x15 +#define RF_POW_ABILITY 0x17 +#define RF_MODE_AG 0x18 +#define RRFCHANNEL 0x18 +#define RF_CHNLBW 0x18 +#define RF_TOP 0x19 + +#define RF_RX_G1 0x1A +#define RF_RX_G2 0x1B + +#define RF_RX_BB2 0x1C +#define RF_RX_BB1 0x1D + +#define RF_RCK1 0x1E +#define RF_RCK2 0x1F + +#define RF_TX_G1 0x20 +#define RF_TX_G2 0x21 +#define RF_TX_G3 0x22 + +#define RF_TX_BB1 0x23 +#define RF_T_METER 0x24 +#define RF_T_METER_88E 0x42 +#define RF_T_METER_8812A 0x42 + +#define RF_SYN_G1 0x25 +#define RF_SYN_G2 0x26 +#define RF_SYN_G3 0x27 +#define RF_SYN_G4 0x28 +#define RF_SYN_G5 0x29 +#define RF_SYN_G6 0x2A +#define RF_SYN_G7 0x2B +#define RF_SYN_G8 0x2C + +#define RF_RCK_OS 0x30 +#define RF_TXPA_G1 0x31 +#define RF_TXPA_G2 0x32 +#define RF_TXPA_G3 0x33 + +#define RF_TX_BIAS_A 0x35 +#define RF_TX_BIAS_D 0x36 +#define RF_LOBF_9 0x38 +#define RF_RXRF_A3 0x3C +#define RF_TRSW 0x3F + +#define RF_TXRF_A2 0x41 +#define RF_TXPA_G4 0x46 +#define RF_TXPA_A4 0x4B + +#define RF_APK 0x63 + +#define RF_WE_LUT 0xEF + +#define BBBRESETB 0x100 +#define BGLOBALRESETB 0x200 +#define BOFDMTXSTART 0x4 +#define BCCKTXSTART 0x8 +#define BCRC32DEBUG 0x100 +#define BPMACLOOPBACK 0x10 +#define BTXLSIG 0xffffff +#define BOFDMTXRATE 0xf +#define BOFDMTXRESERVED 0x10 +#define BOFDMTXLENGTH 0x1ffe0 +#define BOFDMTXPARITY 0x20000 +#define BTXHTSIG1 0xffffff +#define BTXHTMCSRATE 0x7f +#define BTXHTBW 0x80 +#define BTXHTLENGTH 0xffff00 +#define BTXHTSIG2 0xffffff +#define BTXHTSMOOTHING 0x1 +#define BTXHTSOUNDING 0x2 +#define BTXHTRESERVED 0x4 +#define BTXHTAGGREATION 0x8 +#define BTXHTSTBC 0x30 +#define BTXHTADVANCECODING 0x40 +#define BTXHTSHORTGI 0x80 +#define BTXHTNUMBERHT_LTF 0x300 +#define BTXHTCRC8 0x3fc00 +#define BCOUNTERRESET 0x10000 +#define BNUMOFOFDMTX 0xffff +#define BNUMOFCCKTX 0xffff0000 +#define BTXIDLEINTERVAL 0xffff +#define BOFDMSERVICE 0xffff0000 +#define BTXMACHEADER 0xffffffff +#define BTXDATAINIT 0xff +#define BTXHTMODE 0x100 +#define BTXDATATYPE 0x30000 +#define BTXRANDOMSEED 0xffffffff +#define BCCKTXPREAMBLE 0x1 +#define BCCKTXSFD 0xffff0000 +#define BCCKTXSIG 0xff +#define BCCKTXSERVICE 0xff00 +#define BCCKLENGTHEXT 0x8000 +#define BCCKTXLENGHT 0xffff0000 +#define BCCKTXCRC16 0xffff +#define BCCKTXSTATUS 0x1 +#define BOFDMTXSTATUS 0x2 +#define IS_BB_REG_OFFSET_92S(_Offset) \ + ((_Offset >= 0x800) && (_Offset <= 0xfff)) + +#define BRFMOD 0x1 +#define BJAPANMODE 0x2 +#define BCCKTXSC 0x30 +/* Block & Path enable*/ +#define ROFDMCCKEN 0x808 +#define BCCKEN 0x10000000 +#define BOFDMEN 0x20000000 +#define RRXPATH 0x808 /* Rx antenna*/ +#define BRXPATH 0xff +#define RTXPATH 0x80c /* Tx antenna*/ +#define BTXPATH 0x0fffffff +#define RCCK_RX 0xa04 /* for cck rx path selection*/ +#define BCCK_RX 0x0c000000 +#define RVHTLEN_USE_LSIG 0x8c3 /* Use LSIG for VHT length*/ + + +#define BOFDMRXADCPHASE 0x10000 +#define BOFDMTXDACPHASE 0x40000 +#define BXATXAGC 0x3f + +#define BXBTXAGC 0xf00 +#define BXCTXAGC 0xf000 +#define BXDTXAGC 0xf0000 + +#define BPASTART 0xf0000000 +#define BTRSTART 0x00f00000 +#define BRFSTART 0x0000f000 +#define BBBSTART 0x000000f0 +#define BBBCCKSTART 0x0000000f +#define BPAEND 0xf +#define BTREND 0x0f000000 +#define BRFEND 0x000f0000 +#define BCCAMASK 0x000000f0 +#define BR2RCCAMASK 0x00000f00 +#define BHSSI_R2TDELAY 0xf8000000 +#define BHSSI_T2RDELAY 0xf80000 +#define BCONTXHSSI 0x400 +#define BIGFROMCCK 0x200 +#define BAGCADDRESS 0x3f +#define BRXHPTX 0x7000 +#define BRXHP2RX 0x38000 +#define BRXHPCCKINI 0xc0000 +#define BAGCTXCODE 0xc00000 +#define BAGCRXCODE 0x300000 + +#define B3WIREDATALENGTH 0x800 +#define B3WIREADDREAALENGTH 0x400 + +#define B3WIRERFPOWERDOWN 0x1 +#define B5GPAPEPOLARITY 0x40000000 +#define B2GPAPEPOLARITY 0x80000000 +#define BRFSW_TXDEFAULTANT 0x3 +#define BRFSW_TXOPTIONANT 0x30 +#define BRFSW_RXDEFAULTANT 0x300 +#define BRFSW_RXOPTIONANT 0x3000 +#define BRFSI_3WIREDATA 0x1 +#define BRFSI_3WIRECLOCK 0x2 +#define BRFSI_3WIRELOAD 0x4 +#define BRFSI_3WIRERW 0x8 +#define BRFSI_3WIRE 0xf + +#define BRFSI_RFENV 0x10 + +#define BRFSI_TRSW 0x20 +#define BRFSI_TRSWB 0x40 +#define BRFSI_ANTSW 0x100 +#define BRFSI_ANTSWB 0x200 +#define BRFSI_PAPE 0x400 +#define BRFSI_PAPE5G 0x800 +#define BBANDSELECT 0x1 +#define BHTSIG2_GI 0x80 +#define BHTSIG2_SMOOTHING 0x01 +#define BHTSIG2_SOUNDING 0x02 +#define BHTSIG2_AGGREATON 0x08 +#define BHTSIG2_STBC 0x30 +#define BHTSIG2_ADVCODING 0x40 +#define BHTSIG2_NUMOFHTLTF 0x300 +#define BHTSIG2_CRC8 0x3fc +#define BHTSIG1_MCS 0x7f +#define BHTSIG1_BANDWIDTH 0x80 +#define BHTSIG1_HTLENGTH 0xffff +#define BLSIG_RATE 0xf +#define BLSIG_RESERVED 0x10 +#define BLSIG_LENGTH 0x1fffe +#define BLSIG_PARITY 0x20 +#define BCCKRXPHASE 0x4 + +#define BLSSIREADADDRESS 0x7f800000 +#define BLSSIREADEDGE 0x80000000 + +#define BLSSIREADBACKDATA 0xfffff + +#define BLSSIREADOKFLAG 0x1000 +#define BCCKSAMPLERATE 0x8 +#define BREGULATOR0STANDBY 0x1 +#define BREGULATORPLLSTANDBY 0x2 +#define BREGULATOR1STANDBY 0x4 +#define BPLLPOWERUP 0x8 +#define BDPLLPOWERUP 0x10 +#define BDA10POWERUP 0x20 +#define BAD7POWERUP 0x200 +#define BDA6POWERUP 0x2000 +#define BXTALPOWERUP 0x4000 +#define B40MDCLKPOWERUP 0x8000 +#define BDA6DEBUGMODE 0x20000 +#define BDA6SWING 0x380000 + +#define BADCLKPHASE 0x4000000 +#define B80MCLKDELAY 0x18000000 +#define BAFEWATCHDOGENABLE 0x20000000 + +#define BXTALCAP01 0xc0000000 +#define BXTALCAP23 0x3 +#define BXTALCAP92X 0x0f000000 +#define BXTALCAP 0x0f000000 + +#define BINTDIFCLKENABLE 0x400 +#define BEXTSIGCLKENABLE 0x800 +#define BBANDGAP_MBIAS_POWERUP 0x10000 +#define BAD11SH_GAIN 0xc0000 +#define BAD11NPUT_RANGE 0x700000 +#define BAD110P_CURRENT 0x3800000 +#define BLPATH_LOOPBACK 0x4000000 +#define BQPATH_LOOPBACK 0x8000000 +#define BAFE_LOOPBACK 0x10000000 +#define BDA10_SWING 0x7e0 +#define BDA10_REVERSE 0x800 +#define BDA_CLK_SOURCE 0x1000 +#define BDA7INPUT_RANGE 0x6000 +#define BDA7_GAIN 0x38000 +#define BDA7OUTPUT_CM_MODE 0x40000 +#define BDA7INPUT_CM_MODE 0x380000 +#define BDA7CURRENT 0xc00000 +#define BREGULATOR_ADJUST 0x7000000 +#define BAD11POWERUP_ATTX 0x1 +#define BDA10PS_ATTX 0x10 +#define BAD11POWERUP_ATRX 0x100 +#define BDA10PS_ATRX 0x1000 +#define BCCKRX_AGC_FORMAT 0x200 +#define BPSDFFT_SAMPLE_POINT 0xc000 +#define BPSD_AVERAGE_NUM 0x3000 +#define BIQPATH_CONTROL 0xc00 +#define BPSD_FREQ 0x3ff +#define BPSD_ANTENNA_PATH 0x30 +#define BPSD_IQ_SWITCH 0x40 +#define BPSD_RX_TRIGGER 0x400000 +#define BPSD_TX_TRIGGER 0x80000000 +#define BPSD_SINE_TONE_SCALE 0x7f000000 +#define BPSD_REPORT 0xffff + +#define BOFDM_TXSC 0x30000000 +#define BCCK_TXON 0x1 +#define BOFDM_TXON 0x2 +#define BDEBUG_PAGE 0xfff +#define BDEBUG_ITEM 0xff +#define BANTL 0x10 +#define BANT_NONHT 0x100 +#define BANT_HT1 0x1000 +#define BANT_HT2 0x10000 +#define BANT_HT1S1 0x100000 +#define BANT_NONHTS1 0x1000000 + +#define BCCK_BBMODE 0x3 +#define BCCK_TXPOWERSAVING 0x80 +#define BCCK_RXPOWERSAVING 0x40 + +#define BCCK_SIDEBAND 0x10 + +#define BCCK_SCRAMBLE 0x8 +#define BCCK_ANTDIVERSITY 0x8000 +#define BCCK_CARRIER_RECOVERY 0x4000 +#define BCCK_TXRATE 0x3000 +#define BCCK_DCCANCEL 0x0800 +#define BCCK_ISICANCEL 0x0400 +#define BCCK_MATCH_FILTER 0x0200 +#define BCCK_EQUALIZER 0x0100 +#define BCCK_PREAMBLE_DETECT 0x800000 +#define BCCK_FAST_FALSECCA 0x400000 +#define BCCK_CH_ESTSTART 0x300000 +#define BCCK_CCA_COUNT 0x080000 +#define BCCK_CS_LIM 0x070000 +#define BCCK_BIST_MODE 0x80000000 +#define BCCK_CCAMASK 0x40000000 +#define BCCK_TX_DAC_PHASE 0x4 +#define BCCK_RX_ADC_PHASE 0x20000000 +#define BCCKR_CP_MODE 0x0100 +#define BCCK_TXDC_OFFSET 0xf0 +#define BCCK_RXDC_OFFSET 0xf +#define BCCK_CCA_MODE 0xc000 +#define BCCK_FALSECS_LIM 0x3f00 +#define BCCK_CS_RATIO 0xc00000 +#define BCCK_CORGBIT_SEL 0x300000 +#define BCCK_PD_LIM 0x0f0000 +#define BCCK_NEWCCA 0x80000000 +#define BCCK_RXHP_OF_IG 0x8000 +#define BCCK_RXIG 0x7f00 +#define BCCK_LNA_POLARITY 0x800000 +#define BCCK_RX1ST_BAIN 0x7f0000 +#define BCCK_RF_EXTEND 0x20000000 +#define BCCK_RXAGC_SATLEVEL 0x1f000000 +#define BCCK_RXAGC_SATCOUNT 0xe0 +#define bCCKRxRFSettle 0x1f +#define BCCK_FIXED_RXAGC 0x8000 +#define BCCK_ANTENNA_POLARITY 0x2000 +#define BCCK_TXFILTER_TYPE 0x0c00 +#define BCCK_RXAGC_REPORTTYPE 0x0300 +#define BCCK_RXDAGC_EN 0x80000000 +#define BCCK_RXDAGC_PERIOD 0x20000000 +#define BCCK_RXDAGC_SATLEVEL 0x1f000000 +#define BCCK_TIMING_RECOVERY 0x800000 +#define BCCK_TXC0 0x3f0000 +#define BCCK_TXC1 0x3f000000 +#define BCCK_TXC2 0x3f +#define BCCK_TXC3 0x3f00 +#define BCCK_TXC4 0x3f0000 +#define BCCK_TXC5 0x3f000000 +#define BCCK_TXC6 0x3f +#define BCCK_TXC7 0x3f00 +#define BCCK_DEBUGPORT 0xff0000 +#define BCCK_DAC_DEBUG 0x0f000000 +#define BCCK_FALSEALARM_ENABLE 0x8000 +#define BCCK_FALSEALARM_READ 0x4000 +#define BCCK_TRSSI 0x7f +#define BCCK_RXAGC_REPORT 0xfe +#define BCCK_RXREPORT_ANTSEL 0x80000000 +#define BCCK_RXREPORT_MFOFF 0x40000000 +#define BCCK_RXREPORT_SQLOSS 0x20000000 +#define BCCK_RXREPORT_PKTLOSS 0x10000000 +#define BCCK_RXREPORT_LOCKEDBIT 0x08000000 +#define BCCK_RXREPORT_RATEERROR 0x04000000 +#define BCCK_RXREPORT_RXRATE 0x03000000 +#define BCCK_RXFA_COUNTER_LOWER 0xff +#define BCCK_RXFA_COUNTER_UPPER 0xff000000 +#define BCCK_RXHPAGC_START 0xe000 +#define BCCK_RXHPAGC_FINAL 0x1c00 +#define BCCK_RXFALSEALARM_ENABLE 0x8000 +#define BCCK_FACOUNTER_FREEZE 0x4000 +#define BCCK_TXPATH_SEL 0x10000000 +#define BCCK_DEFAULT_RXPATH 0xc000000 +#define BCCK_OPTION_RXPATH 0x3000000 + +#define BNUM_OFSTF 0x3 +#define BSHIFT_L 0xc0 +#define BGI_TH 0xc +#define BRXPATH_A 0x1 +#define BRXPATH_B 0x2 +#define BRXPATH_C 0x4 +#define BRXPATH_D 0x8 +#define BTXPATH_A 0x1 +#define BTXPATH_B 0x2 +#define BTXPATH_C 0x4 +#define BTXPATH_D 0x8 +#define BTRSSI_FREQ 0x200 +#define BADC_BACKOFF 0x3000 +#define BDFIR_BACKOFF 0xc000 +#define BTRSSI_LATCH_PHASE 0x10000 +#define BRX_LDC_OFFSET 0xff +#define BRX_QDC_OFFSET 0xff00 +#define BRX_DFIR_MODE 0x1800000 +#define BRX_DCNF_TYPE 0xe000000 +#define BRXIQIMB_A 0x3ff +#define BRXIQIMB_B 0xfc00 +#define BRXIQIMB_C 0x3f0000 +#define BRXIQIMB_D 0xffc00000 +#define BDC_DC_NOTCH 0x60000 +#define BRXNB_NOTCH 0x1f000000 +#define BPD_TH 0xf +#define BPD_TH_OPT2 0xc000 +#define BPWED_TH 0x700 +#define BIFMF_WIN_L 0x800 +#define BPD_OPTION 0x1000 +#define BMF_WIN_L 0xe000 +#define BBW_SEARCH_L 0x30000 +#define BWIN_ENH_L 0xc0000 +#define BBW_TH 0x700000 +#define BED_TH2 0x3800000 +#define BBW_OPTION 0x4000000 +#define BRADIO_TH 0x18000000 +#define BWINDOW_L 0xe0000000 +#define BSBD_OPTION 0x1 +#define BFRAME_TH 0x1c +#define BFS_OPTION 0x60 +#define BDC_SLOPE_CHECK 0x80 +#define BFGUARD_COUNTER_DC_L 0xe00 +#define BFRAME_WEIGHT_SHORT 0x7000 +#define BSUB_TUNE 0xe00000 +#define BFRAME_DC_LENGTH 0xe000000 +#define BSBD_START_OFFSET 0x30000000 +#define BFRAME_TH_2 0x7 +#define BFRAME_GI2_TH 0x38 +#define BGI2_SYNC_EN 0x40 +#define BSARCH_SHORT_EARLY 0x300 +#define BSARCH_SHORT_LATE 0xc00 +#define BSARCH_GI2_LATE 0x70000 +#define BCFOANTSUM 0x1 +#define BCFOACC 0x2 +#define BCFOSTARTOFFSET 0xc +#define BCFOLOOPBACK 0x70 +#define BCFOSUMWEIGHT 0x80 +#define BDAGCENABLE 0x10000 +#define BTXIQIMB_A 0x3ff +#define BTXIQIMB_b 0xfc00 +#define BTXIQIMB_C 0x3f0000 +#define BTXIQIMB_D 0xffc00000 +#define BTXIDCOFFSET 0xff +#define BTXIQDCOFFSET 0xff00 +#define BTXDFIRMODE 0x10000 +#define BTXPESUDO_NOISEON 0x4000000 +#define BTXPESUDO_NOISE_A 0xff +#define BTXPESUDO_NOISE_B 0xff00 +#define BTXPESUDO_NOISE_C 0xff0000 +#define BTXPESUDO_NOISE_D 0xff000000 +#define BCCA_DROPOPTION 0x20000 +#define BCCA_DROPTHRES 0xfff00000 +#define BEDCCA_H 0xf +#define BEDCCA_L 0xf0 +#define BLAMBDA_ED 0x300 +#define BRX_INITIALGAIN 0x7f +#define BRX_ANTDIV_EN 0x80 +#define BRX_AGC_ADDRESS_FOR_LNA 0x7f00 +#define BRX_HIGHPOWER_FLOW 0x8000 +#define BRX_AGC_FREEZE_THRES 0xc0000 +#define BRX_FREEZESTEP_AGC1 0x300000 +#define BRX_FREEZESTEP_AGC2 0xc00000 +#define BRX_FREEZESTEP_AGC3 0x3000000 +#define BRX_FREEZESTEP_AGC0 0xc000000 +#define BRXRSSI_CMP_EN 0x10000000 +#define BRXQUICK_AGCEN 0x20000000 +#define BRXAGC_FREEZE_THRES_MODE 0x40000000 +#define BRX_OVERFLOW_CHECKTYPE 0x80000000 +#define BRX_AGCSHIFT 0x7f +#define BTRSW_TRI_ONLY 0x80 +#define BPOWER_THRES 0x300 +#define BRXAGC_EN 0x1 +#define BRXAGC_TOGETHER_EN 0x2 +#define BRXAGC_MIN 0x4 +#define BRXHP_INI 0x7 +#define BRXHP_TRLNA 0x70 +#define BRXHP_RSSI 0x700 +#define BRXHP_BBP1 0x7000 +#define BRXHP_BBP2 0x70000 +#define BRXHP_BBP3 0x700000 +#define BRSSI_H 0x7f0000 +#define BRSSI_GEN 0x7f000000 +#define BRXSETTLE_TRSW 0x7 +#define BRXSETTLE_LNA 0x38 +#define BRXSETTLE_RSSI 0x1c0 +#define BRXSETTLE_BBP 0xe00 +#define BRXSETTLE_RXHP 0x7000 +#define BRXSETTLE_ANTSW_RSSI 0x38000 +#define BRXSETTLE_ANTSW 0xc0000 +#define BRXPROCESS_TIME_DAGC 0x300000 +#define BRXSETTLE_HSSI 0x400000 +#define BRXPROCESS_TIME_BBPPW 0x800000 +#define BRXANTENNA_POWER_SHIFT 0x3000000 +#define BRSSI_TABLE_SELECT 0xc000000 +#define BRXHP_FINAL 0x7000000 +#define BRXHPSETTLE_BBP 0x7 +#define BRXHTSETTLE_HSSI 0x8 +#define BRXHTSETTLE_RXHP 0x70 +#define BRXHTSETTLE_BBPPW 0x80 +#define BRXHTSETTLE_IDLE 0x300 +#define BRXHTSETTLE_RESERVED 0x1c00 +#define BRXHT_RXHP_EN 0x8000 +#define BRXAGC_FREEZE_THRES 0x30000 +#define BRXAGC_TOGETHEREN 0x40000 +#define BRXHTAGC_MIN 0x80000 +#define BRXHTAGC_EN 0x100000 +#define BRXHTDAGC_EN 0x200000 +#define BRXHT_RXHP_BBP 0x1c00000 +#define BRXHT_RXHP_FINAL 0xe0000000 +#define BRXPW_RADIO_TH 0x3 +#define BRXPW_RADIO_EN 0x4 +#define BRXMF_HOLD 0x3800 +#define BRXPD_DELAY_TH1 0x38 +#define BRXPD_DELAY_TH2 0x1c0 +#define BRXPD_DC_COUNT_MAX 0x600 +#define BRXPD_DELAY_TH 0x8000 +#define BRXPROCESS_DELAY 0xf0000 +#define BRXSEARCHRANGE_GI2_EARLY 0x700000 +#define BRXFRAME_FUARD_COUNTER_L 0x3800000 +#define BRXSGI_GUARD_L 0xc000000 +#define BRXSGI_SEARCH_L 0x30000000 +#define BRXSGI_TH 0xc0000000 +#define BDFSCNT0 0xff +#define BDFSCNT1 0xff00 +#define BDFSFLAG 0xf0000 +#define BMF_WEIGHT_SUM 0x300000 +#define BMINIDX_TH 0x7f000000 +#define BDAFORMAT 0x40000 +#define BTXCH_EMU_ENABLE 0x01000000 +#define BTRSW_ISOLATION_A 0x7f +#define BTRSW_ISOLATION_B 0x7f00 +#define BTRSW_ISOLATION_C 0x7f0000 +#define BTRSW_ISOLATION_D 0x7f000000 +#define BEXT_LNA_GAIN 0x7c00 + +#define BSTBC_EN 0x4 +#define BANTENNA_MAPPING 0x10 +#define BNSS 0x20 +#define BCFO_ANTSUM_ID 0x200 +#define BPHY_COUNTER_RESET 0x8000000 +#define BCFO_REPORT_GET 0x4000000 +#define BOFDM_CONTINUE_TX 0x10000000 +#define BOFDM_SINGLE_CARRIER 0x20000000 +#define BOFDM_SINGLE_TONE 0x40000000 +#define BHT_DETECT 0x100 +#define BCFOEN 0x10000 +#define BCFOVALUE 0xfff00000 +#define BSIGTONE_RE 0x3f +#define BSIGTONE_IM 0x7f00 +#define BCOUNTER_CCA 0xffff +#define BCOUNTER_PARITYFAIL 0xffff0000 +#define BCOUNTER_RATEILLEGAL 0xffff +#define BCOUNTER_CRC8FAIL 0xffff0000 +#define BCOUNTER_MCSNOSUPPORT 0xffff +#define BCOUNTER_FASTSYNC 0xffff +#define BSHORTCFO 0xfff +#define BSHORTCFOT_LENGTH 12 +#define BSHORTCFOF_LENGTH 11 +#define BLONGCFO 0x7ff +#define BLONGCFOT_LENGTH 11 +#define BLONGCFOF_LENGTH 11 +#define BTAILCFO 0x1fff +#define BTAILCFOT_LENGTH 13 +#define BTAILCFOF_LENGTH 12 +#define BNOISE_EN_PWDB 0xffff +#define BCC_POWER_DB 0xffff0000 +#define BMOISE_PWDB 0xffff +#define BPOWERMEAST_LENGTH 10 +#define BPOWERMEASF_LENGTH 3 +#define BRX_HT_BW 0x1 +#define BRXSC 0x6 +#define BRX_HT 0x8 +#define BNB_INTF_DET_ON 0x1 +#define BINTF_WIN_LEN_CFG 0x30 +#define BNB_INTF_TH_CFG 0x1c0 +#define BRFGAIN 0x3f +#define BTABLESEL 0x40 +#define BTRSW 0x80 +#define BRXSNR_A 0xff +#define BRXSNR_B 0xff00 +#define BRXSNR_C 0xff0000 +#define BRXSNR_D 0xff000000 +#define BSNR_EVMT_LENGTH 8 +#define BSNR_EVMF_LENGTH 1 +#define BCSI1ST 0xff +#define BCSI2ND 0xff00 +#define BRXEVM1ST 0xff0000 +#define BRXEVM2ND 0xff000000 +#define BSIGEVM 0xff +#define BPWDB 0xff00 +#define BSGIEN 0x10000 + +#define BSFACTOR_QMA1 0xf +#define BSFACTOR_QMA2 0xf0 +#define BSFACTOR_QMA3 0xf00 +#define BSFACTOR_QMA4 0xf000 +#define BSFACTOR_QMA5 0xf0000 +#define BSFACTOR_QMA6 0xf0000 +#define BSFACTOR_QMA7 0xf00000 +#define BSFACTOR_QMA8 0xf000000 +#define BSFACTOR_QMA9 0xf0000000 +#define BCSI_SCHEME 0x100000 + +#define BNOISE_LVL_TOP_SET 0x3 +#define BCHSMOOTH 0x4 +#define BCHSMOOTH_CFG1 0x38 +#define BCHSMOOTH_CFG2 0x1c0 +#define BCHSMOOTH_CFG3 0xe00 +#define BCHSMOOTH_CFG4 0x7000 +#define BMRCMODE 0x800000 +#define BTHEVMCFG 0x7000000 + +#define BLOOP_FIT_TYPE 0x1 +#define BUPD_CFO 0x40 +#define BUPD_CFO_OFFDATA 0x80 +#define BADV_UPD_CFO 0x100 +#define BADV_TIME_CTRL 0x800 +#define BUPD_CLKO 0x1000 +#define BFC 0x6000 +#define BTRACKING_MODE 0x8000 +#define BPHCMP_ENABLE 0x10000 +#define BUPD_CLKO_LTF 0x20000 +#define BCOM_CH_CFO 0x40000 +#define BCSI_ESTI_MODE 0x80000 +#define BADV_UPD_EQZ 0x100000 +#define BUCHCFG 0x7000000 +#define BUPDEQZ 0x8000000 + +#define BRX_PESUDO_NOISE_ON 0x20000000 +#define BRX_PESUDO_NOISE_A 0xff +#define BRX_PESUDO_NOISE_B 0xff00 +#define BRX_PESUDO_NOISE_C 0xff0000 +#define BRX_PESUDO_NOISE_D 0xff000000 +#define BRX_PESUDO_NOISESTATE_A 0xffff +#define BRX_PESUDO_NOISESTATE_B 0xffff0000 +#define BRX_PESUDO_NOISESTATE_C 0xffff +#define BRX_PESUDO_NOISESTATE_D 0xffff0000 + +#define BZEBRA1_HSSIENABLE 0x8 +#define BZEBRA1_TRXCONTROL 0xc00 +#define BZEBRA1_TRXGAINSETTING 0x07f +#define BZEBRA1_RXCOUNTER 0xc00 +#define BZEBRA1_TXCHANGEPUMP 0x38 +#define BZEBRA1_RXCHANGEPUMP 0x7 +#define BZEBRA1_CHANNEL_NUM 0xf80 +#define BZEBRA1_TXLPFBW 0x400 +#define BZEBRA1_RXLPFBW 0x600 + +#define BRTL8256REG_MODE_CTRL1 0x100 +#define BRTL8256REG_MODE_CTRL0 0x40 +#define BRTL8256REG_TXLPFBW 0x18 +#define BRTL8256REG_RXLPFBW 0x600 + +#define BRTL8258_TXLPFBW 0xc +#define BRTL8258_RXLPFBW 0xc00 +#define BRTL8258_RSSILPFBW 0xc0 + +#define BBYTE0 0x1 +#define BBYTE1 0x2 +#define BBYTE2 0x4 +#define BBYTE3 0x8 +#define BWORD0 0x3 +#define BWORD1 0xc +#define BWORD 0xf + +#define MASKBYTE0 0xff +#define MASKBYTE1 0xff00 +#define MASKBYTE2 0xff0000 +#define MASKBYTE3 0xff000000 +#define MASKHWORD 0xffff0000 +#define MASKLWORD 0x0000ffff +#define MASKDWORD 0xffffffff +#define MASK12BITS 0xfff +#define MASKH4BITS 0xf0000000 +#define MASKOFDM_D 0xffc00000 +#define MASKCCK 0x3f3f3f3f + +#define MASK4BITS 0x0f +#define MASK20BITS 0xfffff +#define RFREG_OFFSET_MASK 0xfffff + +#define BENABLE 0x1 +#define BDISABLE 0x0 + +#define LEFT_ANTENNA 0x0 +#define RIGHT_ANTENNA 0x1 + +#define TCHECK_TXSTATUS 500 +#define TUPDATE_RXCOUNTER 100 + +#define REG_UN_used_register 0x01bf + +/* WOL bit information */ +#define HAL92C_WOL_PTK_UPDATE_EVENT BIT(0) +#define HAL92C_WOL_GTK_UPDATE_EVENT BIT(1) +#define HAL92C_WOL_DISASSOC_EVENT BIT(2) +#define HAL92C_WOL_DEAUTH_EVENT BIT(3) +#define HAL92C_WOL_FW_DISCONNECT_EVENT BIT(4) + +#define WOL_REASON_PTK_UPDATE BIT(0) +#define WOL_REASON_GTK_UPDATE BIT(1) +#define WOL_REASON_DISASSOC BIT(2) +#define WOL_REASON_DEAUTH BIT(3) +#define WOL_REASON_FW_DISCONNECT BIT(4) + +#define RA_RFE_PINMUX 0xcb0 /* Path_A RFE cotrol pinmux*/ +#define RB_RFE_PINMUX 0xeb0 /* Path_B RFE control pinmux*/ + +#define RA_RFE_INV 0xcb4 +#define RB_RFE_INV 0xeb4 + +/* RXIQC */ +#define RA_RXIQC_AB 0xc10 /*RxIQ imblance matrix coeff. A & B*/ +#define RA_RXIQC_CD 0xc14 /*RxIQ imblance matrix coeff. C & D*/ +#define RA_TXSCALE 0xc1c /* Pah_A TX scaling factor*/ +#define RB_TXSCALE 0xe1c /* Path_B TX scaling factor*/ +#define RB_RXIQC_AB 0xe10 /*RxIQ imblance matrix coeff. A & B*/ +#define RB_RXIQC_CD 0xe14 /*RxIQ imblance matrix coeff. C & D*/ +#define RXIQC_AC 0x02ff /*bit mask for IQC matrix element A & C*/ +#define RXIQC_BD 0x02ff0000 /*bit mask for IQC matrix element A & C*/ + +/* 2 EFUSE_TEST (For RTL8723 partially) */ +#define EFUSE_SEL(x) (((x) & 0x3) << 8) +#define EFUSE_SEL_MASK 0x300 +#define EFUSE_WIFI_SEL_0 0x0 + +/*REG_MULTI_FUNC_CTRL(For RTL8723 Only)*/ +#define WL_HWPDN_EN BIT(0) /* Enable GPIO[9] as WiFi HW PDn source*/ +#define WL_HWPDN_SL BIT(1) /* WiFi HW PDn polarity control*/ +#define WL_FUNC_EN BIT(2) // WiFi function enable +#define WL_HWROF_EN BIT(3) // Enable GPIO[9] as WiFi RF HW PDn source +#define BT_HWPDN_EN BIT(16) // Enable GPIO[11] as BT HW PDn source +#define BT_HWPDN_SL BIT(17) // BT HW PDn polarity control +#define BT_FUNC_EN BIT(18) // BT function enable +#define BT_HWROF_EN BIT(19) // Enable GPIO[11] as BT/GPS RF HW PDn source +#define GPS_HWPDN_EN BIT(20) // Enable GPIO[10] as GPS HW PDn source +#define GPS_HWPDN_SL BIT(21) // GPS HW PDn polarity control +#define GPS_FUNC_EN BIT(22) // GPS function enable + + +#define BMASKBYTE0 0xff +#define BMASKBYTE1 0xff00 +#define BMASKBYTE2 0xff0000 +#define BMASKBYTE3 0xff000000 +#define BMASKHWORD 0xffff0000 +#define BMASKLWORD 0x0000ffff +#define BMASKDWORD 0xffffffff +#define BMASK12BITS 0xfff +#define BMASKH4BITS 0xf0000000 +#define BMASKOFDM_D 0xffc00000 +#define BMASKCCK 0x3f3f3f3f + +#define BRFREGOFFSETMASK 0xfffff + +#define ODM_REG_CCK_RPT_FORMAT_11AC 0x804 +#define ODM_REG_BB_RX_PATH_11AC 0x808 +/*PAGE 9*/ +#define ODM_REG_OFDM_FA_RST_11AC 0x9A4 +/*PAGE A*/ +#define ODM_REG_CCK_CCA_11AC 0xA0A +#define ODM_REG_CCK_FA_RST_11AC 0xA2C +#define ODM_REG_CCK_FA_11AC 0xA5C +/*PAGE C*/ +#define ODM_REG_IGI_A_11AC 0xC50 +/*PAGE E*/ +#define ODM_REG_IGI_B_11AC 0xE50 +/*PAGE F*/ +#define ODM_REG_OFDM_FA_11AC 0xF48 + + +//2 MAC REG LIST + + + + +//DIG Related +#define ODM_BIT_IGI_11AC 0xFFFFFFFF +#define ODM_BIT_CCK_RPT_FORMAT_11AC BIT16 +#define ODM_BIT_BB_RX_PATH_11AC 0xF + +typedef enum AGGRE_SIZE{ + HT_AGG_SIZE_8K = 0, + HT_AGG_SIZE_16K = 1, + HT_AGG_SIZE_32K = 2, + HT_AGG_SIZE_64K = 3, + VHT_AGG_SIZE_128K = 4, + VHT_AGG_SIZE_256K = 5, + VHT_AGG_SIZE_512K = 6, + VHT_AGG_SIZE_1024K = 7, +}AGGRE_SIZE_E, *PAGGRE_SIZE_E; + +#define REG_AMPDU_MAX_LENGTH_8812 0x0458 + +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/rf.c +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/rf.c @@ -0,0 +1,464 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "reg.h" +#include "def.h" +#include "phy.h" +#include "rf.h" +#include "dm.h" + +static bool _rtl8821ae_phy_rf6052_config_parafile(struct ieee80211_hw *hw); + +void rtl8821ae_phy_rf6052_set_bandwidth(struct ieee80211_hw *hw, u8 bandwidth) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + switch (bandwidth) { + case HT_CHANNEL_WIDTH_20: + rtl_set_rfreg(hw, RF90_PATH_A, RF_CHNLBW, BIT(11)|BIT(10), 3); + rtl_set_rfreg(hw, RF90_PATH_B, RF_CHNLBW, BIT(11)|BIT(10), 3); + break; + case HT_CHANNEL_WIDTH_20_40: + rtl_set_rfreg(hw, RF90_PATH_A, RF_CHNLBW, BIT(11)|BIT(10), 1); + rtl_set_rfreg(hw, RF90_PATH_B, RF_CHNLBW, BIT(11)|BIT(10), 1); + break; + case HT_CHANNEL_WIDTH_80: + rtl_set_rfreg(hw, RF90_PATH_A, RF_CHNLBW, BIT(11)|BIT(10), 0); + rtl_set_rfreg(hw, RF90_PATH_B, RF_CHNLBW, BIT(11)|BIT(10), 0); + break; + default: + RT_TRACE(COMP_ERR, DBG_EMERG, + ("unknown bandwidth: %#X\n", bandwidth)); + break; + } +} + +void rtl8821ae_phy_rf6052_set_cck_txpower(struct ieee80211_hw *hw, + u8 *ppowerlevel) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + u32 tx_agc[2] = {0, 0}, tmpval; + bool turbo_scanoff = false; + u8 idx1, idx2; + u8 *ptr; + u8 direction; + u32 pwrtrac_value; + + if (rtlefuse->eeprom_regulatory != 0) + turbo_scanoff = true; + + if (mac->act_scanning == true) { + tx_agc[RF90_PATH_A] = 0x3f3f3f3f; + tx_agc[RF90_PATH_B] = 0x3f3f3f3f; + + if (turbo_scanoff) { + for (idx1 = RF90_PATH_A; idx1 <= RF90_PATH_B; idx1++) { + tx_agc[idx1] = ppowerlevel[idx1] | + (ppowerlevel[idx1] << 8) | + (ppowerlevel[idx1] << 16) | + (ppowerlevel[idx1] << 24); + } + } + } else { + for (idx1 = RF90_PATH_A; idx1 <= RF90_PATH_B; idx1++) { + tx_agc[idx1] = ppowerlevel[idx1] | + (ppowerlevel[idx1] << 8) | + (ppowerlevel[idx1] << 16) | + (ppowerlevel[idx1] << 24); + } + + if (rtlefuse->eeprom_regulatory == 0) { + tmpval = + (rtlphy->mcs_txpwrlevel_origoffset[0][6]) + + (rtlphy->mcs_txpwrlevel_origoffset[0][7] << + 8); + tx_agc[RF90_PATH_A] += tmpval; + + tmpval = (rtlphy->mcs_txpwrlevel_origoffset[0][14]) + + (rtlphy->mcs_txpwrlevel_origoffset[0][15] << + 24); + tx_agc[RF90_PATH_B] += tmpval; + } + } + + for (idx1 = RF90_PATH_A; idx1 <= RF90_PATH_B; idx1++) { + ptr = (u8 *) (&(tx_agc[idx1])); + for (idx2 = 0; idx2 < 4; idx2++) { + if (*ptr > RF6052_MAX_TX_PWR) + *ptr = RF6052_MAX_TX_PWR; + ptr++; + } + } + rtl8821ae_dm_txpower_track_adjust(hw,1,&direction,&pwrtrac_value); + if (direction ==1){ + tx_agc[0] += pwrtrac_value; + tx_agc[1] += pwrtrac_value; + } else if (direction == 2){ + tx_agc[0] -= pwrtrac_value; + tx_agc[1] -= pwrtrac_value; + } + tmpval = tx_agc[RF90_PATH_A] ; + rtl_set_bbreg(hw, RTXAGC_A_CCK11_CCK1, MASKDWORD, tmpval); + + RTPRINT(rtlpriv, FPHY, PHY_TXPWR, + ("CCK PWR 1~11M (rf-A) = 0x%x (reg 0x%x)\n", tmpval, + RTXAGC_A_CCK11_CCK1)); + + tmpval = tx_agc[RF90_PATH_B] ; + rtl_set_bbreg(hw, RTXAGC_B_CCK11_CCK1, MASKDWORD, tmpval); + + RTPRINT(rtlpriv, FPHY, PHY_TXPWR, + ("CCK PWR 11M (rf-B) = 0x%x (reg 0x%x)\n", tmpval, + RTXAGC_B_CCK11_CCK1)); +} + +static void rtl8821ae_phy_get_power_base(struct ieee80211_hw *hw, + u8 *ppowerlevel_ofdm, u8 *ppowerlevel_bw20, u8 *ppowerlevel_bw40, u8 channel, + u32 *ofdmbase, u32 *mcsbase) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u32 powerBase0, powerBase1; + u8 i, powerlevel[2]; + + for (i = 0; i < 2; i++) { + powerBase0 = ppowerlevel_ofdm[i]; + + powerBase0 = (powerBase0 << 24) | (powerBase0 << 16) | + (powerBase0 << 8) | powerBase0; + *(ofdmbase + i) = powerBase0; + RTPRINT(rtlpriv, FPHY, PHY_TXPWR, + (" [OFDM power base index rf(%c) = 0x%x]\n", + ((i == 0) ? 'A' : 'B'), *(ofdmbase + i))); + } + + for (i = 0; i < 2; i++) { + if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20) { + powerlevel[i] = ppowerlevel_bw20[i]; + }else{ + powerlevel[i] = ppowerlevel_bw40[i]; + } + powerBase1 = powerlevel[i]; + powerBase1 = (powerBase1 << 24) | + (powerBase1 << 16) | (powerBase1 << 8) | powerBase1; + + *(mcsbase + i) = powerBase1; + + RTPRINT(rtlpriv, FPHY, PHY_TXPWR, + (" [MCS power base index rf(%c) = 0x%x]\n", + ((i == 0) ? 'A' : 'B'), *(mcsbase + i))); + } +} + +static void _rtl8821ae_get_txpower_writeval_by_regulatory(struct ieee80211_hw *hw, + u8 channel, u8 index, + u32 *powerBase0, + u32 *powerBase1, + u32 *p_outwriteval) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + u8 i, chnlgroup = 0, pwr_diff_limit[4],pwr_diff = 0,customer_pwr_diff; + u32 writeVal, customer_limit, rf; + + for (rf = 0; rf < 2; rf++) { + switch (rtlefuse->eeprom_regulatory) { + case 0: + chnlgroup = 0; + + writeVal = + rtlphy->mcs_txpwrlevel_origoffset[chnlgroup][index + + (rf ? 8 : 0)] + + ((index < 2) ? powerBase0[rf] : powerBase1[rf]); + + RTPRINT(rtlpriv, FPHY, PHY_TXPWR, + ("RTK better performance, " + "writeVal(%c) = 0x%x\n", + ((rf == 0) ? 'A' : 'B'), writeVal)); + break; + case 1: + if (rtlphy->pwrgroup_cnt == 1) + chnlgroup = 0; + else { + if(channel<3) + chnlgroup = 0; + else if (channel <6) + chnlgroup = 1; + else if (channel <9) + chnlgroup = 2; + else if (channel <12) + chnlgroup = 3; + else if (channel < 14) + chnlgroup = 4; + else if (channel == 14) + chnlgroup = 5; + } + + writeVal = + rtlphy->mcs_txpwrlevel_origoffset[chnlgroup] + [index + (rf ? 8 : 0)] + ((index < 2) ? + powerBase0[rf] : + powerBase1[rf]); + + RTPRINT(rtlpriv, FPHY, PHY_TXPWR, + ("Realtek regulatory, 20MHz, " + "writeVal(%c) = 0x%x\n", + ((rf == 0) ? 'A' : 'B'), writeVal)); + + break; + case 2: + writeVal = + ((index < 2) ? powerBase0[rf] : powerBase1[rf]); + + RTPRINT(rtlpriv, FPHY, PHY_TXPWR, + ("Better regulatory, " + "writeVal(%c) = 0x%x\n", + ((rf == 0) ? 'A' : 'B'), writeVal)); + break; + case 3: + chnlgroup = 0; + + if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20_40) { + RTPRINT(rtlpriv, FPHY, PHY_TXPWR, + ("customer's limit, 40MHz " + "rf(%c) = 0x%x\n", + ((rf == 0) ? 'A' : 'B'), + rtlefuse->pwrgroup_ht40[rf][channel - + 1])); + } else { + RTPRINT(rtlpriv, FPHY, PHY_TXPWR, + ("customer's limit, 20MHz " + "rf(%c) = 0x%x\n", + ((rf == 0) ? 'A' : 'B'), + rtlefuse->pwrgroup_ht20[rf][channel - + 1])); + } + + if (index < 2) + pwr_diff = rtlefuse->txpwr_legacyhtdiff[rf][channel-1]; + else if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20) + pwr_diff = rtlefuse->txpwr_ht20diff[rf][channel-1]; + + if (rtlphy->current_chan_bw == HT_CHANNEL_WIDTH_20_40) + customer_pwr_diff = rtlefuse->pwrgroup_ht40[rf][channel-1]; + else + customer_pwr_diff = rtlefuse->pwrgroup_ht20[rf][channel-1]; + + if (pwr_diff > customer_pwr_diff) + pwr_diff = 0; + else + pwr_diff = customer_pwr_diff - pwr_diff; + + for (i = 0; i < 4; i++) { + pwr_diff_limit[i] = + (u8) ((rtlphy->mcs_txpwrlevel_origoffset + [chnlgroup][index + (rf ? 8 : 0)] & (0x7f << + (i * 8))) >> (i * 8)); + + if(pwr_diff_limit[i] > pwr_diff) + pwr_diff_limit[i] = pwr_diff; + } + + customer_limit = (pwr_diff_limit[3] << 24) | + (pwr_diff_limit[2] << 16) | + (pwr_diff_limit[1] << 8) | (pwr_diff_limit[0]); + + RTPRINT(rtlpriv, FPHY, PHY_TXPWR, + ("Customer's limit rf(%c) = 0x%x\n", + ((rf == 0) ? 'A' : 'B'), customer_limit)); + + writeVal = customer_limit + + ((index < 2) ? powerBase0[rf] : powerBase1[rf]); + + RTPRINT(rtlpriv, FPHY, PHY_TXPWR, + ("Customer, writeVal rf(%c)= 0x%x\n", + ((rf == 0) ? 'A' : 'B'), writeVal)); + break; + default: + chnlgroup = 0; + writeVal = + rtlphy->mcs_txpwrlevel_origoffset[chnlgroup] + [index + (rf ? 8 : 0)] + + ((index < 2) ? powerBase0[rf] : powerBase1[rf]); + + RTPRINT(rtlpriv, FPHY, PHY_TXPWR, + ("RTK better performance, writeVal " + "rf(%c) = 0x%x\n", + ((rf == 0) ? 'A' : 'B'), writeVal)); + break; + } + + if (rtlpriv->dm.dynamic_txhighpower_lvl == TXHIGHPWRLEVEL_BT1) + writeVal = writeVal - 0x06060606; + else if (rtlpriv->dm.dynamic_txhighpower_lvl == + TXHIGHPWRLEVEL_BT2) + writeVal = writeVal - 0x0c0c0c0c; + *(p_outwriteval + rf) = writeVal; + } +} + +static void _rtl8821ae_write_ofdm_power_reg(struct ieee80211_hw *hw, + u8 index, u32 *pValue) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u16 regoffset_a[6] = { + RTXAGC_A_OFDM18_OFDM6, RTXAGC_A_OFDM54_OFDM24, + RTXAGC_A_MCS03_MCS00, RTXAGC_A_MCS07_MCS04, + RTXAGC_A_MCS11_MCS08, RTXAGC_A_MCS15_MCS12 + }; + u16 regoffset_b[6] = { + RTXAGC_B_OFDM18_OFDM6, RTXAGC_B_OFDM54_OFDM24, + RTXAGC_B_MCS03_MCS00, RTXAGC_B_MCS07_MCS04, + RTXAGC_B_MCS11_MCS08, RTXAGC_B_MCS15_MCS12 + }; + u8 i, rf, pwr_val[4]; + u32 writeVal; + u16 regoffset; + + for (rf = 0; rf < 2; rf++) { + writeVal = pValue[rf]; + for (i = 0; i < 4; i++) { + pwr_val[i] = (u8) ((writeVal & (0x7f << + (i * 8))) >> (i * 8)); + + if (pwr_val[i] > RF6052_MAX_TX_PWR) + pwr_val[i] = RF6052_MAX_TX_PWR; + } + writeVal = (pwr_val[3] << 24) | (pwr_val[2] << 16) | + (pwr_val[1] << 8) | pwr_val[0]; + + if (rf == 0) + regoffset = regoffset_a[index]; + else + regoffset = regoffset_b[index]; + rtl_set_bbreg(hw, regoffset, MASKDWORD, writeVal); + + RTPRINT(rtlpriv, FPHY, PHY_TXPWR, + ("Set 0x%x = %08x\n", regoffset, writeVal)); + } +} + +void rtl8821ae_phy_rf6052_set_ofdm_txpower(struct ieee80211_hw *hw, + u8 *ppowerlevel_ofdm, u8 *ppowerlevel_bw20, u8 *ppowerlevel_bw40, u8 channel) +{ + u32 writeVal[2], powerBase0[2], powerBase1[2]; + u8 index; + u8 direction; + u32 pwrtrac_value; + + rtl8821ae_phy_get_power_base(hw, ppowerlevel_ofdm, ppowerlevel_bw20, ppowerlevel_bw40, + channel, &powerBase0[0], &powerBase1[0]); + + rtl8821ae_dm_txpower_track_adjust(hw,1,&direction,&pwrtrac_value); + + for (index = 0; index < 6; index++) { + _rtl8821ae_get_txpower_writeval_by_regulatory(hw, + channel, index, + &powerBase0[0], + &powerBase1[0], + &writeVal[0]); + if (direction ==1){ + writeVal[0] += pwrtrac_value; + writeVal[1] += pwrtrac_value; + } else if (direction == 2){ + writeVal[0] -= pwrtrac_value; + writeVal[1] -= pwrtrac_value; + } + _rtl8821ae_write_ofdm_power_reg(hw, index, &writeVal[0]); + } +} + +bool rtl8821ae_phy_rf6052_config(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + + if (rtlphy->rf_type == RF_1T1R) + rtlphy->num_total_rfpath = 1; + else + rtlphy->num_total_rfpath = 2; + + return _rtl8821ae_phy_rf6052_config_parafile(hw); + +} + +static bool _rtl8821ae_phy_rf6052_config_parafile(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); + //u32 u4_regvalue = 0; + u8 rfpath; + bool rtstatus = true; + //struct bb_reg_def *pphyreg; + + for (rfpath = 0; rfpath < rtlphy->num_total_rfpath; rfpath++) { + switch (rfpath) { + case RF90_PATH_A: { + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + rtstatus = rtl8812ae_phy_config_rf_with_headerfile(hw, + (enum radio_path)rfpath); + else + rtstatus = rtl8821ae_phy_config_rf_with_headerfile(hw, + (enum radio_path)rfpath); + break; + } + case RF90_PATH_B: { + if (rtlhal->hw_type == HARDWARE_TYPE_RTL8812AE) + rtstatus = rtl8812ae_phy_config_rf_with_headerfile(hw, + (enum radio_path)rfpath); + else + rtstatus = rtl8821ae_phy_config_rf_with_headerfile(hw, + (enum radio_path)rfpath); + break; + } + case RF90_PATH_C: + break; + case RF90_PATH_D: + break; + } + + if (rtstatus != true) { + RT_TRACE(COMP_INIT, DBG_TRACE, + ("Radio[%d] Fail!!", rfpath)); + return false; + } + + } + + /*put arrays in dm.c*/ + /*_rtl8821ae_config_rf_txpwr_track_headerfile(hw);*/ + RT_TRACE(COMP_INIT, DBG_TRACE, ("\n")); + return rtstatus; +} --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/rf.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/rf.h @@ -0,0 +1,46 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8821AE_RF_H__ +#define __RTL8821AE_RF_H__ + +#define RF6052_MAX_TX_PWR 0x3F +#define RF6052_MAX_REG 0x3F + +extern void rtl8821ae_phy_rf6052_set_bandwidth(struct ieee80211_hw *hw, + u8 bandwidth); +extern void rtl8821ae_phy_rf6052_set_cck_txpower(struct ieee80211_hw *hw, + u8 *ppowerlevel); +extern void rtl8821ae_phy_rf6052_set_ofdm_txpower(struct ieee80211_hw *hw, + u8 *ppowerlevel_ofdm, + u8 *ppowerlevel_bw20, + u8 *ppowerlevel_bw40, + u8 channel); +extern bool rtl8821ae_phy_rf6052_config(struct ieee80211_hw *hw); +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/sw.c +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/sw.c @@ -0,0 +1,499 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include +#include + +#include "../wifi.h" +#include "../core.h" +#include "../pci.h" +#include "reg.h" +#include "def.h" +#include "phy.h" +#include "dm.h" +#include "hw.h" +#include "sw.h" +#include "trx.h" +#include "led.h" +#include "table.h" +#include "hal_btc.h" +#include "../btcoexist/rtl_btc.h" + +void rtl8821ae_init_aspm_vars(struct ieee80211_hw *hw) +{ + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + + /*close ASPM for AMD defaultly */ + rtlpci->const_amdpci_aspm = 0; + + /* + * ASPM PS mode. + * 0 - Disable ASPM, + * 1 - Enable ASPM without Clock Req, + * 2 - Enable ASPM with Clock Req, + * 3 - Alwyas Enable ASPM with Clock Req, + * 4 - Always Enable ASPM without Clock Req. + * set defult to RTL8192CE:3 RTL8192E:2 + * */ + rtlpci->const_pci_aspm = 3; + + /*Setting for PCI-E device */ + rtlpci->const_devicepci_aspm_setting = 0x03; + + /*Setting for PCI-E bridge */ + rtlpci->const_hostpci_aspm_setting = 0x02; + + /* + * In Hw/Sw Radio Off situation. + * 0 - Default, + * 1 - From ASPM setting without low Mac Pwr, + * 2 - From ASPM setting with low Mac Pwr, + * 3 - Bus D3 + * set default to RTL8192CE:0 RTL8192SE:2 + */ + rtlpci->const_hwsw_rfoff_d3 = 0; + + /* + * This setting works for those device with + * backdoor ASPM setting such as EPHY setting. + * 0 - Not support ASPM, + * 1 - Support ASPM, + * 2 - According to chipset. + */ + rtlpci->const_support_pciaspm = 1; +} + +/*InitializeVariables8812E*/ +int rtl8821ae_init_sw_vars(struct ieee80211_hw *hw) +{ + int err = 0; + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + const struct firmware *firmware; + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + char *fw_name = NULL; + + rtl8821ae_bt_reg_init(hw); + rtlpriv->btcoexist.btc_ops = rtl_btc_get_ops_pointer(); + + rtlpriv->dm.b_dm_initialgain_enable = 1; + rtlpriv->dm.dm_flag = 0; + rtlpriv->dm.b_disable_framebursting = 0;; + rtlpriv->dm.thermalvalue = 0; + rtlpci->transmit_config = CFENDFORM | BIT(15) | BIT(24) | BIT(25); + + mac->ht_enable = true; + + rtlpriv->rtlhal.current_bandtype = BAND_ON_2_4G; + /*following 2 is for register 5G band, refer to _rtl_init_mac80211()*/ + rtlpriv->rtlhal.bandset = BAND_ON_BOTH; + rtlpriv->rtlhal.macphymode = SINGLEMAC_SINGLEPHY; + + rtlpci->receive_config = (RCR_APPFCS | + RCR_APP_MIC | + RCR_APP_ICV | + RCR_APP_PHYST_RXFF | + RCR_NONQOS_VHT | + RCR_HTC_LOC_CTRL | + RCR_AMF | + RCR_ACF | + RCR_ADF | /*This bit controls the PS-Poll packet filter.*/ + RCR_AICV | + RCR_ACRC32 | + RCR_AB | + RCR_AM | + RCR_APM | + 0); + + + rtlpci->irq_mask[0] = + (u32) (IMR_PSTIMEOUT | + IMR_GTINT3 | + /*IMR_TBDER | + IMR_TBDOK | + IMR_BCNDMAINT0 |*/ + IMR_HSISR_IND_ON_INT | + IMR_C2HCMD | + IMR_HIGHDOK | + IMR_MGNTDOK | + IMR_BKDOK | + IMR_BEDOK | + IMR_VIDOK | + IMR_VODOK | + IMR_RDU | + IMR_ROK | + 0); + + rtlpci->irq_mask[1] = + (u32)( IMR_RXFOVW | + IMR_TXFOVW | + 0); + + /* for LPS & IPS */ + rtlpriv->psc.b_inactiveps = rtlpriv->cfg->mod_params->b_inactiveps; + rtlpriv->psc.b_swctrl_lps = rtlpriv->cfg->mod_params->b_swctrl_lps; + rtlpriv->psc.b_fwctrl_lps = rtlpriv->cfg->mod_params->b_fwctrl_lps; + rtlpriv->psc.b_reg_fwctrl_lps = 3; + rtlpriv->psc.reg_max_lps_awakeintvl = 5; + /* for ASPM, you can close aspm through + * set const_support_pciaspm = 0 */ + rtl8821ae_init_aspm_vars(hw); + + if (rtlpriv->psc.b_reg_fwctrl_lps == 1) + rtlpriv->psc.fwctrl_psmode = FW_PS_MIN_MODE; + else if (rtlpriv->psc.b_reg_fwctrl_lps == 2) + rtlpriv->psc.fwctrl_psmode = FW_PS_MAX_MODE; + else if (rtlpriv->psc.b_reg_fwctrl_lps == 3) + rtlpriv->psc.fwctrl_psmode = FW_PS_DTIM_MODE; + + /* for firmware buf */ + rtlpriv->rtlhal.pfirmware = (u8 *) vmalloc(0x8000); + if (!rtlpriv->rtlhal.pfirmware) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("Can't alloc buffer for fw.\n")); + return 1; + } + + fw_name = "rtlwifi/rtl8821aefw.bin"; + err = request_firmware(&firmware, fw_name, rtlpriv->io.dev); + if (err) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("Failed to request firmware!\n")); + return 1; + } + + if (firmware->size > 0x8000) { + RT_TRACE(COMP_ERR, DBG_EMERG, + ("Firmware is too big!\n")); + release_firmware(firmware); + return 1; + } + + memcpy(rtlpriv->rtlhal.pfirmware, firmware->data, firmware->size); + rtlpriv->rtlhal.fwsize = firmware->size; + release_firmware(firmware); + + if (rtlpriv->cfg->ops->get_btc_status()){ + rtlpriv->btcoexist.btc_ops->btc_init_variables(rtlpriv); + rtlpriv->btcoexist.btc_ops->btc_init_hal_vars(rtlpriv); + } + + RT_TRACE(COMP_INIT, DBG_LOUD, (" FirmwareDownload OK\n")); + return err; +} + +void rtl8821ae_deinit_sw_vars(struct ieee80211_hw *hw) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + //printk("=========>rtl8821ae_deinit_sw_vars().\n"); + if (rtlpriv->cfg->ops->get_btc_status()){ + //printk("=========>rtl8821ae_deinit_sw_vars().get_btc_status\n"); + rtlpriv->btcoexist.btc_ops->btc_halt_notify(); + } + if (rtlpriv->rtlhal.pfirmware) { + //printk("=========>rtl8821ae_deinit_sw_vars().rtlpriv->rtlhal.pfirmware\n"); + vfree(rtlpriv->rtlhal.pfirmware); + rtlpriv->rtlhal.pfirmware = NULL; + } + //printk("<=========rtl8821ae_deinit_sw_vars().\n"); +} + +u32 rtl8812ae_rx_command_packet_handler( + struct ieee80211_hw *hw, + struct rtl_stats status, + struct sk_buff *skb + ) +{ + u32 result = 0; + struct rtl_priv *rtlpriv = rtl_priv(hw); + + switch (status.packet_report_type) { + case NORMAL_RX: + result = 0; + break; + case C2H_PACKET: + rtl8812ae_c2h_packet_handler(hw, skb->data, (u8) skb->len); + result = 1; + RT_TRACE(COMP_RECV, DBG_LOUD, + ("===>rtl8821ae_rx_command_packet_handler(): (u8) skb->len=%d\n\n", skb->len)); + break; + default: + RT_TRACE(COMP_RECV, DBG_LOUD, + ("===>rtl8821ae_rx_command_packet_handler(): No this packet type!!\n")); + break; + } + + return result; +} + + +/* get bt coexist status */ +bool rtl8821ae_get_btc_status(void) +{ + return true; +} + +struct rtl_hal_ops rtl8821ae_hal_ops = { + .init_sw_vars = rtl8821ae_init_sw_vars, + .deinit_sw_vars = rtl8821ae_deinit_sw_vars, + .read_eeprom_info = rtl8821ae_read_eeprom_info, + .interrupt_recognized = rtl8821ae_interrupt_recognized, + .hw_init = rtl8821ae_hw_init, + .hw_disable = rtl8821ae_card_disable, + .hw_suspend = rtl8821ae_suspend, + .hw_resume = rtl8821ae_resume, + .enable_interrupt = rtl8821ae_enable_interrupt, + .disable_interrupt = rtl8821ae_disable_interrupt, + .set_network_type = rtl8821ae_set_network_type, + .set_chk_bssid = rtl8821ae_set_check_bssid, + .set_qos = rtl8821ae_set_qos, + .set_bcn_reg = rtl8821ae_set_beacon_related_registers, + .set_bcn_intv = rtl8821ae_set_beacon_interval, + .update_interrupt_mask = rtl8821ae_update_interrupt_mask, + .get_hw_reg = rtl8821ae_get_hw_reg, + .set_hw_reg = rtl8821ae_set_hw_reg, + .update_rate_tbl = rtl8821ae_update_hal_rate_tbl, + .fill_tx_desc = rtl8821ae_tx_fill_desc, + .fill_tx_cmddesc = rtl8821ae_tx_fill_cmddesc, + .query_rx_desc = rtl8821ae_rx_query_desc, + .set_channel_access = rtl8821ae_update_channel_access_setting, + .radio_onoff_checking = rtl8821ae_gpio_radio_on_off_checking, + .set_bw_mode = rtl8821ae_phy_set_bw_mode, + .switch_channel = rtl8821ae_phy_sw_chnl, + .dm_watchdog = rtl8821ae_dm_watchdog, + .scan_operation_backup = rtl8821ae_phy_scan_operation_backup, + .set_rf_power_state = rtl8821ae_phy_set_rf_power_state, + .led_control = rtl8821ae_led_control, + .set_desc = rtl8821ae_set_desc, + .get_desc = rtl8821ae_get_desc, + .is_tx_desc_closed = rtl8821ae_is_tx_desc_closed, + .tx_polling = rtl8821ae_tx_polling, + .enable_hw_sec = rtl8821ae_enable_hw_security_config, + .set_key = rtl8821ae_set_key, + .init_sw_leds = rtl8821ae_init_sw_leds, + .allow_all_destaddr = rtl8821ae_allow_all_destaddr, + .get_bbreg = rtl8821ae_phy_query_bb_reg, + .set_bbreg = rtl8821ae_phy_set_bb_reg, + .get_rfreg = rtl8821ae_phy_query_rf_reg, + .set_rfreg = rtl8821ae_phy_set_rf_reg, + .c2h_command_handle = rtl_8821ae_c2h_command_handle, + .bt_wifi_media_status_notify = rtl_8821ae_bt_wifi_media_status_notify, + .bt_turn_off_bt_coexist_before_enter_lps = rtl8821ae_dm_bt_turn_off_bt_coexist_before_enter_lps, + .fill_h2c_cmd = rtl8821ae_fill_h2c_cmd, + .get_btc_status = rtl8821ae_get_btc_status, + .rx_command_packet_handler = rtl8812ae_rx_command_packet_handler, +}; + +struct rtl_mod_params rtl8821ae_mod_params = { + .sw_crypto = false, + .b_inactiveps = false,//true, + .b_swctrl_lps = false, + .b_fwctrl_lps = false, //true, +}; + +struct rtl_hal_cfg rtl8821ae_hal_cfg = { + .bar_id = 2, + .write_readback = true, + .name = "rtl8821ae_pci", + .fw_name = "rtlwifi/rtl8821aefw.bin", + .ops = &rtl8821ae_hal_ops, + .mod_params = &rtl8821ae_mod_params, + .maps[SYS_ISO_CTRL] = REG_SYS_ISO_CTRL, + .maps[SYS_FUNC_EN] = REG_SYS_FUNC_EN, + .maps[SYS_CLK] = REG_SYS_CLKR, + .maps[MAC_RCR_AM] = AM, + .maps[MAC_RCR_AB] = AB, + .maps[MAC_RCR_ACRC32] = ACRC32, + .maps[MAC_RCR_ACF] = ACF, + .maps[MAC_RCR_AAP] = AAP, + .maps[MAC_HIMR] = REG_HIMR, + .maps[MAC_HIMRE] = REG_HIMRE, + + + .maps[EFUSE_ACCESS] = REG_EFUSE_ACCESS, + + .maps[EFUSE_TEST] = REG_EFUSE_TEST, + .maps[EFUSE_CTRL] = REG_EFUSE_CTRL, + .maps[EFUSE_CLK] = 0, + .maps[EFUSE_CLK_CTRL] = REG_EFUSE_CTRL, + .maps[EFUSE_PWC_EV12V] = PWC_EV12V, + .maps[EFUSE_FEN_ELDR] = FEN_ELDR, + .maps[EFUSE_LOADER_CLK_EN] = LOADER_CLK_EN, + .maps[EFUSE_ANA8M] = ANA8M, + .maps[EFUSE_HWSET_MAX_SIZE] = HWSET_MAX_SIZE, + .maps[EFUSE_MAX_SECTION_MAP] = EFUSE_MAX_SECTION, + .maps[EFUSE_REAL_CONTENT_SIZE] = EFUSE_REAL_CONTENT_LEN, + .maps[EFUSE_OOB_PROTECT_BYTES_LEN] = EFUSE_OOB_PROTECT_BYTES, + + .maps[RWCAM] = REG_CAMCMD, + .maps[WCAMI] = REG_CAMWRITE, + .maps[RCAMO] = REG_CAMREAD, + .maps[CAMDBG] = REG_CAMDBG, + .maps[SECR] = REG_SECCFG, + .maps[SEC_CAM_NONE] = CAM_NONE, + .maps[SEC_CAM_WEP40] = CAM_WEP40, + .maps[SEC_CAM_TKIP] = CAM_TKIP, + .maps[SEC_CAM_AES] = CAM_AES, + .maps[SEC_CAM_WEP104] = CAM_WEP104, + + .maps[RTL_IMR_BCNDMAINT6] = IMR_BCNDMAINT6, + .maps[RTL_IMR_BCNDMAINT5] = IMR_BCNDMAINT5, + .maps[RTL_IMR_BCNDMAINT4] = IMR_BCNDMAINT4, + .maps[RTL_IMR_BCNDMAINT3] = IMR_BCNDMAINT3, + .maps[RTL_IMR_BCNDMAINT2] = IMR_BCNDMAINT2, + .maps[RTL_IMR_BCNDMAINT1] = IMR_BCNDMAINT1, +/* .maps[RTL_IMR_BCNDOK8] = IMR_BCNDOK8, */ /*need check*/ + .maps[RTL_IMR_BCNDOK7] = IMR_BCNDOK7, + .maps[RTL_IMR_BCNDOK6] = IMR_BCNDOK6, + .maps[RTL_IMR_BCNDOK5] = IMR_BCNDOK5, + .maps[RTL_IMR_BCNDOK4] = IMR_BCNDOK4, + .maps[RTL_IMR_BCNDOK3] = IMR_BCNDOK3, + .maps[RTL_IMR_BCNDOK2] = IMR_BCNDOK2, + .maps[RTL_IMR_BCNDOK1] = IMR_BCNDOK1, +/* .maps[RTL_IMR_TIMEOUT2] = IMR_TIMEOUT2,*/ +/* .maps[RTL_IMR_TIMEOUT1] = IMR_TIMEOUT1,*/ + + .maps[RTL_IMR_TXFOVW] = IMR_TXFOVW, + .maps[RTL_IMR_PSTIMEOUT] = IMR_PSTIMEOUT, + .maps[RTL_IMR_BcnInt] = IMR_BCNDMAINT0, + .maps[RTL_IMR_RXFOVW] = IMR_RXFOVW, + .maps[RTL_IMR_RDU] = IMR_RDU, + .maps[RTL_IMR_ATIMEND] = IMR_ATIMEND, + .maps[RTL_IMR_BDOK] = IMR_BCNDOK0, + .maps[RTL_IMR_MGNTDOK] = IMR_MGNTDOK, + .maps[RTL_IMR_TBDER] = IMR_TBDER, + .maps[RTL_IMR_HIGHDOK] = IMR_HIGHDOK, + .maps[RTL_IMR_TBDOK] = IMR_TBDOK, + .maps[RTL_IMR_BKDOK] = IMR_BKDOK, + .maps[RTL_IMR_BEDOK] = IMR_BEDOK, + .maps[RTL_IMR_VIDOK] = IMR_VIDOK, + .maps[RTL_IMR_VODOK] = IMR_VODOK, + .maps[RTL_IMR_ROK] = IMR_ROK, + .maps[RTL_IBSS_INT_MASKS] = (IMR_BCNDMAINT0 | IMR_TBDOK | IMR_TBDER), + + .maps[RTL_RC_CCK_RATE1M] = DESC_RATE1M, + .maps[RTL_RC_CCK_RATE2M] = DESC_RATE2M, + .maps[RTL_RC_CCK_RATE5_5M] = DESC_RATE5_5M, + .maps[RTL_RC_CCK_RATE11M] = DESC_RATE11M, + .maps[RTL_RC_OFDM_RATE6M] = DESC_RATE6M, + .maps[RTL_RC_OFDM_RATE9M] = DESC_RATE9M, + .maps[RTL_RC_OFDM_RATE12M] = DESC_RATE12M, + .maps[RTL_RC_OFDM_RATE18M] = DESC_RATE18M, + .maps[RTL_RC_OFDM_RATE24M] = DESC_RATE24M, + .maps[RTL_RC_OFDM_RATE36M] = DESC_RATE36M, + .maps[RTL_RC_OFDM_RATE48M] = DESC_RATE48M, + .maps[RTL_RC_OFDM_RATE54M] = DESC_RATE54M, + + .maps[RTL_RC_HT_RATEMCS7] = DESC_RATEMCS7, + .maps[RTL_RC_HT_RATEMCS15] = DESC_RATEMCS15, +}; + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)) +static struct pci_device_id rtl8821ae_pci_ids[] = { + {RTL_PCI_DEVICE(PCI_VENDOR_ID_REALTEK, 0x8812, rtl8821ae_hal_cfg)}, + {RTL_PCI_DEVICE(PCI_VENDOR_ID_REALTEK, 0x8821, rtl8821ae_hal_cfg)}, + {}, +}; +#else +static struct pci_device_id rtl8821ae_pci_ids[] __devinitdata = { + {RTL_PCI_DEVICE(PCI_VENDOR_ID_REALTEK, 0x8812, rtl8821ae_hal_cfg)}, + {RTL_PCI_DEVICE(PCI_VENDOR_ID_REALTEK, 0x8821, rtl8821ae_hal_cfg)}, + {}, +}; +#endif + +MODULE_DEVICE_TABLE(pci, rtl8821ae_pci_ids); + +MODULE_AUTHOR("Ping Yan"); +MODULE_AUTHOR("Realtek WlanFAE "); +MODULE_LICENSE("GPL"); +MODULE_DESCRIPTION("Realtek 8821ae 802.11ac PCI wireless"); +MODULE_FIRMWARE("rtlwifi/rtl8821aefw.bin"); + +module_param_named(swenc, rtl8821ae_mod_params.sw_crypto, bool, 0444); +module_param_named(ips, rtl8821ae_mod_params.b_inactiveps, bool, 0444); +module_param_named(swlps, rtl8821ae_mod_params.b_swctrl_lps, bool, 0444); +module_param_named(fwlps, rtl8821ae_mod_params.b_fwctrl_lps, bool, 0444); +MODULE_PARM_DESC(swenc, "using hardware crypto (default 0 [hardware])\n"); +MODULE_PARM_DESC(ips, "using no link power save (default 1 is open)\n"); +MODULE_PARM_DESC(fwlps, "using linked fw control power save (default 1 is open)\n"); + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,29)) +static const SIMPLE_DEV_PM_OPS(rtlwifi_pm_ops, rtl_pci_suspend, rtl_pci_resume); +#endif + +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,29)) +compat_pci_suspend(rtl_pci_suspend) +compat_pci_resume(rtl_pci_resume) +#endif + +static struct pci_driver rtl8821ae_driver = { + .name = KBUILD_MODNAME, + .id_table = rtl8821ae_pci_ids, + .probe = rtl_pci_probe, + .remove = rtl_pci_disconnect, + +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,29)) + .driver.pm = &rtlwifi_pm_ops, +#elif defined(CONFIG_PM) + .suspend = rtl_pci_suspend_compat, + .resume = rtl_pci_resume_compat, +#endif + +}; + + +extern int rtl_core_module_init(void); +extern void rtl_core_module_exit(void); + +static int __init rtl8821ae_module_init(void) +{ + int ret; + + ret = rtl_core_module_init(); + if (ret) + return ret; + + //printk("==========>rtl8821ae_module_init().\n"); + ret = pci_register_driver(&rtl8821ae_driver); + if (ret) + RT_ASSERT(false, (": No device found\n")); + + return ret; +} + +static void __exit rtl8821ae_module_exit(void) +{ + pci_unregister_driver(&rtl8821ae_driver); + rtl_core_module_exit(); +} + +module_init(rtl8821ae_module_init); +module_exit(rtl8821ae_module_exit); --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/sw.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/sw.h @@ -0,0 +1,39 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8821AE_SW_H__ +#define __RTL8821AE_SW_H__ + +int rtl8821ae_init_sw_vars(struct ieee80211_hw *hw); +void rtl8821ae_deinit_sw_vars(struct ieee80211_hw *hw); +void rtl8821ae_init_var_map(struct ieee80211_hw *hw); +bool rtl8821ae_get_btc_status(void); + + +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/table.c +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/table.c @@ -0,0 +1,4002 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Created on 2010/ 5/18, 1:41 + * + * Larry Finger + * + *****************************************************************************/ + +#include "table.h" +u32 RTL8812AE_PHY_REG_ARRAY[] = { + 0x800, 0x8020D010, + 0x804, 0x080112E0, + 0x808, 0x0E028233, + 0x80C, 0x12131113, + 0x810, 0x20101263, + 0x814, 0x020C3D10, + 0x818, 0x03A00385, + 0x820, 0x00000000, + 0x824, 0x00030FE0, + 0x828, 0x00000000, + 0x82C, 0x002083DD, + 0x830, 0x2AAA6C86, + 0x834, 0x0037A706, + 0x838, 0x06C89B44, + 0x83C, 0x0000095B, + 0x840, 0xC0000001, + 0x844, 0x40003CDE, + 0x848, 0x6210FF8B, + 0x84C, 0x6CFDFFB8, + 0x850, 0x28874706, + 0x854, 0x0001520C, + 0x858, 0x8060E000, + 0x85C, 0x74210168, + 0x860, 0x6929C321, + 0x864, 0x79727432, + 0x868, 0x8CA7A314, + 0x86C, 0x338C2878, + 0x870, 0x03333333, + 0x874, 0x31602C2E, + 0x878, 0x00003152, + 0x87C, 0x000FC000, + 0x8A0, 0x00000013, + 0x8A4, 0x7F7F7F7F, + 0x8A8, 0xA202033E, + 0x8AC, 0x0FF0FA0A, + 0x8B0, 0x00000600, + 0x8B4, 0x000FC080, + 0x8B8, 0x6C0057FF, + 0x8BC, 0x4CA520A3, + 0x8C0, 0x27F00020, + 0x8C4, 0x00000000, + 0x8C8, 0x00013169, + 0x8CC, 0x08248492, + 0x8D0, 0x0000B800, + 0x8DC, 0x00000000, + 0x8D4, 0x940008A0, + 0x8D8, 0x290B5612, + 0x8F8, 0x400002C0, + 0x8FC, 0x00000000, + 0xFF0F07D8, 0xABCD, + 0x900, 0x00000700, + 0xFF0F07D0, 0xCDEF, + 0x900, 0x00000700, + 0xCDCDCDCD, 0xCDCD, + 0x900, 0x00000700, + 0xFF0F07D8, 0xDEAD, + 0x90C, 0x00000000, + 0x910, 0x0000FC00, + 0x914, 0x00000404, + 0x918, 0x1C1028C0, + 0x91C, 0x64B11A1C, + 0x920, 0xE0767233, + 0x924, 0x055AA500, + 0x928, 0x00000004, + 0x92C, 0xFFFE0000, + 0x930, 0xFFFFFFFE, + 0x934, 0x001FFFFF, + 0x960, 0x00000000, + 0x964, 0x00000000, + 0x968, 0x00000000, + 0x96C, 0x00000000, + 0x970, 0x801FFFFF, + 0x978, 0x00000000, + 0x97C, 0x00000000, + 0x980, 0x00000000, + 0x984, 0x00000000, + 0x988, 0x00000000, + 0x990, 0x27100000, + 0x994, 0xFFFF0100, + 0x998, 0xFFFFFF5C, + 0x99C, 0xFFFFFFFF, + 0x9A0, 0x000000FF, + 0x9A4, 0x00080080, + 0x9A8, 0x00000000, + 0x9AC, 0x00000000, + 0x9B0, 0x81081008, + 0x9B4, 0x00000000, + 0x9B8, 0x01081008, + 0x9BC, 0x01081008, + 0x9D0, 0x00000000, + 0x9D4, 0x00000000, + 0x9D8, 0x00000000, + 0x9DC, 0x00000000, + 0x9E4, 0x00000002, + 0x9E8, 0x000002D5, + 0xA00, 0x00D047C8, + 0xA04, 0x01FF000C, + 0xA08, 0x8C838300, + 0xA0C, 0x2E7F000F, + 0xA10, 0x9500BB78, + 0xA14, 0x11144028, + 0xA18, 0x00881117, + 0xA1C, 0x89140F00, + 0xA20, 0x1A1B0000, + 0xA24, 0x090E1317, + 0xA28, 0x00000204, + 0xA2C, 0x00900000, + 0xA70, 0x101FFF00, + 0xA74, 0x00000008, + 0xA78, 0x00000900, + 0xA7C, 0x225B0606, + 0xA80, 0x218075B2, + 0xA84, 0x001F8C80, + 0xB00, 0x03100000, + 0xB04, 0x0000B000, + 0xB08, 0xAE0201EB, + 0xB0C, 0x01003207, + 0xB10, 0x00009807, + 0xB14, 0x01000000, + 0xB18, 0x00000002, + 0xB1C, 0x00000002, + 0xB20, 0x0000001F, + 0xB24, 0x03020100, + 0xB28, 0x07060504, + 0xB2C, 0x0B0A0908, + 0xB30, 0x0F0E0D0C, + 0xB34, 0x13121110, + 0xB38, 0x17161514, + 0xB3C, 0x0000003A, + 0xB40, 0x00000000, + 0xB44, 0x00000000, + 0xB48, 0x13000032, + 0xB4C, 0x48080000, + 0xB50, 0x00000000, + 0xB54, 0x00000000, + 0xB58, 0x00000000, + 0xB5C, 0x00000000, + 0xC00, 0x00000007, + 0xC04, 0x00042020, + 0xC08, 0x80410231, + 0xC0C, 0x00000000, + 0xC10, 0x00000100, + 0xC14, 0x01000000, + 0xC1C, 0x40000003, + 0xC20, 0x12121212, + 0xC24, 0x12121212, + 0xC28, 0x12121212, + 0xC2C, 0x12121212, + 0xC30, 0x12121212, + 0xC34, 0x12121212, + 0xC38, 0x12121212, + 0xC3C, 0x12121212, + 0xC40, 0x12121212, + 0xC44, 0x12121212, + 0xC48, 0x12121212, + 0xC4C, 0x12121212, + 0xC50, 0x00000020, + 0xC54, 0x0008121C, + 0xC58, 0x30000C1C, + 0xC5C, 0x00000058, + 0xC60, 0x34344443, + 0xC64, 0x07003333, + 0xC68, 0x59791979, + 0xC6C, 0x59795979, + 0xC70, 0x19795979, + 0xC74, 0x19795979, + 0xC78, 0x19791979, + 0xC7C, 0x19791979, + 0xC80, 0x19791979, + 0xC84, 0x19791979, + 0xC94, 0x0100005C, + 0xC98, 0x00000000, + 0xC9C, 0x00000000, + 0xCA0, 0x00000029, + 0xCA4, 0x08040201, + 0xCA8, 0x80402010, + 0xFF0F0740, 0xABCD, + 0xCB0, 0x77547717, + 0xFF0F01C0, 0xCDEF, + 0xCB0, 0x77547717, + 0xFF0F02C0, 0xCDEF, + 0xCB0, 0x77547717, + 0xFF0F07D8, 0xCDEF, + 0xCB0, 0x54547710, + 0xFF0F07D0, 0xCDEF, + 0xCB0, 0x54547710, + 0xCDCDCDCD, 0xCDCD, + 0xCB0, 0x77547777, + 0xFF0F0740, 0xDEAD, + 0xCB4, 0x00000077, + 0xCB8, 0x00508242, + 0xE00, 0x00000007, + 0xE04, 0x00042020, + 0xE08, 0x80410231, + 0xE0C, 0x00000000, + 0xE10, 0x00000100, + 0xE14, 0x01000000, + 0xE1C, 0x40000003, + 0xE20, 0x12121212, + 0xE24, 0x12121212, + 0xE28, 0x12121212, + 0xE2C, 0x12121212, + 0xE30, 0x12121212, + 0xE34, 0x12121212, + 0xE38, 0x12121212, + 0xE3C, 0x12121212, + 0xE40, 0x12121212, + 0xE44, 0x12121212, + 0xE48, 0x12121212, + 0xE4C, 0x12121212, + 0xE50, 0x00000020, + 0xE54, 0x0008121C, + 0xE58, 0x30000C1C, + 0xE5C, 0x00000058, + 0xE60, 0x34344443, + 0xE64, 0x07003333, + 0xE68, 0x59791979, + 0xE6C, 0x59795979, + 0xE70, 0x19795979, + 0xE74, 0x19795979, + 0xE78, 0x19791979, + 0xE7C, 0x19791979, + 0xE80, 0x19791979, + 0xE84, 0x19791979, + 0xE94, 0x0100005C, + 0xE98, 0x00000000, + 0xE9C, 0x00000000, + 0xEA0, 0x00000029, + 0xEA4, 0x08040201, + 0xEA8, 0x80402010, + 0xFF0F0740, 0xABCD, + 0xEB0, 0x77547717, + 0xFF0F01C0, 0xCDEF, + 0xEB0, 0x77547717, + 0xFF0F02C0, 0xCDEF, + 0xEB0, 0x77547717, + 0xFF0F07D8, 0xCDEF, + 0xEB0, 0x54547710, + 0xFF0F07D0, 0xCDEF, + 0xEB0, 0x54547710, + 0xCDCDCDCD, 0xCDCD, + 0xEB0, 0x77547777, + 0xFF0F0740, 0xDEAD, + 0xEB4, 0x00000077, + 0xEB8, 0x00508242, +}; + +u32 RTL8821AE_PHY_REG_ARRAY[] = { + 0x800, 0x0020D090, + 0x804, 0x080112E0, + 0x808, 0x0E028211, + 0x80C, 0x92131111, + 0x810, 0x20101261, + 0x814, 0x020C3D10, + 0x818, 0x03A00385, + 0x820, 0x00000000, + 0x824, 0x00030FE0, + 0x828, 0x00000000, + 0x82C, 0x002081DD, + 0x830, 0x2AAA8E24, + 0x834, 0x0037A706, + 0x838, 0x06489B44, + 0x83C, 0x0000095B, + 0x840, 0xC0000001, + 0x844, 0x40003CDE, + 0x848, 0x62103F8B, + 0x84C, 0x6CFDFFB8, + 0x850, 0x28874706, + 0x854, 0x0001520C, + 0x858, 0x8060E000, + 0x85C, 0x74210168, + 0x860, 0x6929C321, + 0x864, 0x79727432, + 0x868, 0x8CA7A314, + 0x86C, 0x888C2878, + 0x870, 0x08888888, + 0x874, 0x31612C2E, + 0x878, 0x00000152, + 0x87C, 0x000FD000, + 0x8A0, 0x00000013, + 0x8A4, 0x7F7F7F7F, + 0x8A8, 0xA2000338, + 0x8AC, 0x0FF0FA0A, + 0x8B4, 0x000FC080, + 0x8B8, 0x6C10D7FF, + 0x8BC, 0x0CA52090, + 0x8C0, 0x1BF00020, + 0x8C4, 0x00000000, + 0x8C8, 0x00013169, + 0x8CC, 0x08248492, + 0x8D4, 0x940008A0, + 0x8D8, 0x290B5612, + 0x8F8, 0x400002C0, + 0x8FC, 0x00000000, + 0x900, 0x00000700, + 0x90C, 0x00000000, + 0x910, 0x0000FC00, + 0x914, 0x00000404, + 0x918, 0x1C1028C0, + 0x91C, 0x64B11A1C, + 0x920, 0xE0767233, + 0x924, 0x055AA500, + 0x928, 0x00000004, + 0x92C, 0xFFFE0000, + 0x930, 0xFFFFFFFE, + 0x934, 0x001FFFFF, + 0x960, 0x00000000, + 0x964, 0x00000000, + 0x968, 0x00000000, + 0x96C, 0x00000000, + 0x970, 0x801FFFFF, + 0x974, 0x000003FF, + 0x978, 0x00000000, + 0x97C, 0x00000000, + 0x980, 0x00000000, + 0x984, 0x00000000, + 0x988, 0x00000000, + 0x990, 0x27100000, + 0x994, 0xFFFF0100, + 0x998, 0xFFFFFF5C, + 0x99C, 0xFFFFFFFF, + 0x9A0, 0x000000FF, + 0x9A4, 0x00480080, + 0x9A8, 0x00000000, + 0x9AC, 0x00000000, + 0x9B0, 0x81081008, + 0x9B4, 0x01081008, + 0x9B8, 0x01081008, + 0x9BC, 0x01081008, + 0x9D0, 0x00000000, + 0x9D4, 0x00000000, + 0x9D8, 0x00000000, + 0x9DC, 0x00000000, + 0x9E0, 0x00005D00, + 0x9E4, 0x00000002, + 0x9E8, 0x00000001, + 0xA00, 0x00D047C8, + 0xA04, 0x01FF000C, + 0xA08, 0x8C8A8300, + 0xA0C, 0x2E68000F, + 0xA10, 0x9500BB78, + 0xA14, 0x11144028, + 0xA18, 0x00881117, + 0xA1C, 0x89140F00, + 0xA20, 0x1A1B0000, + 0xA24, 0x090E1317, + 0xA28, 0x00000204, + 0xA2C, 0x00900000, + 0xA70, 0x101FFF00, + 0xA74, 0x00000008, + 0xA78, 0x00000900, + 0xA7C, 0x225B0606, + 0xA80, 0x21805490, + 0xA84, 0x001F0000, + 0xB00, 0x03100040, + 0xB04, 0x0000B000, + 0xB08, 0xAE0201EB, + 0xB0C, 0x01003207, + 0xB10, 0x00009807, + 0xB14, 0x01000000, + 0xB18, 0x00000002, + 0xB1C, 0x00000002, + 0xB20, 0x0000001F, + 0xB24, 0x03020100, + 0xB28, 0x07060504, + 0xB2C, 0x0B0A0908, + 0xB30, 0x0F0E0D0C, + 0xB34, 0x13121110, + 0xB38, 0x17161514, + 0xB3C, 0x0000003A, + 0xB40, 0x00000000, + 0xB44, 0x00000000, + 0xB48, 0x13000032, + 0xB4C, 0x48080000, + 0xB50, 0x00000000, + 0xB54, 0x00000000, + 0xB58, 0x00000000, + 0xB5C, 0x00000000, + 0xC00, 0x00000007, + 0xC04, 0x00042020, + 0xC08, 0x80410231, + 0xC0C, 0x00000000, + 0xC10, 0x00000100, + 0xC14, 0x01000000, + 0xC1C, 0x40000003, + 0xC20, 0x2C2C2C2C, + 0xC24, 0x30303030, + 0xC28, 0x30303030, + 0xC2C, 0x2C2C2C2C, + 0xC30, 0x2C2C2C2C, + 0xC34, 0x2C2C2C2C, + 0xC38, 0x2C2C2C2C, + 0xC3C, 0x2A2A2A2A, + 0xC40, 0x2A2A2A2A, + 0xC44, 0x2A2A2A2A, + 0xC48, 0x2A2A2A2A, + 0xC4C, 0x2A2A2A2A, + 0xC50, 0x00000020, + 0xC54, 0x001C1208, + 0xC58, 0x30000C1C, + 0xC5C, 0x00000058, + 0xC60, 0x34344443, + 0xC64, 0x07003333, + 0xC68, 0x19791979, + 0xC6C, 0x19791979, + 0xC70, 0x19791979, + 0xC74, 0x19791979, + 0xC78, 0x19791979, + 0xC7C, 0x19791979, + 0xC80, 0x19791979, + 0xC84, 0x19791979, + 0xC94, 0x0100005C, + 0xC98, 0x00000000, + 0xC9C, 0x00000000, + 0xCA0, 0x00000029, + 0xCA4, 0x08040201, + 0xCA8, 0x80402010, + 0xCB0, 0x77775747, + 0xCB4, 0x10000077, + 0xCB8, 0x00508240, +}; + +u32 RTL8812AE_PHY_REG_ARRAY_PG[] = { + 0, 0, 0, 0x00000c20, 0xffffffff, 0x34363840, + 0, 0, 0, 0x00000c24, 0xffffffff, 0x42424444, + 0, 0, 0, 0x00000c28, 0xffffffff, 0x30323638, + 0, 0, 0, 0x00000c2c, 0xffffffff, 0x40424444, + 0, 0, 0, 0x00000c30, 0xffffffff, 0x28303236, + 0, 0, 1, 0x00000c34, 0xffffffff, 0x38404242, + 0, 0, 1, 0x00000c38, 0xffffffff, 0x26283034, + 0, 0, 0, 0x00000c3c, 0xffffffff, 0x40424444, + 0, 0, 0, 0x00000c40, 0xffffffff, 0x28303236, + 0, 0, 0, 0x00000c44, 0xffffffff, 0x42422426, + 0, 0, 1, 0x00000c48, 0xffffffff, 0x30343840, + 0, 0, 1, 0x00000c4c, 0xffffffff, 0x22242628, + 0, 1, 0, 0x00000e20, 0xffffffff, 0x34363840, + 0, 1, 0, 0x00000e24, 0xffffffff, 0x42424444, + 0, 1, 0, 0x00000e28, 0xffffffff, 0x30323638, + 0, 1, 0, 0x00000e2c, 0xffffffff, 0x40424444, + 0, 1, 0, 0x00000e30, 0xffffffff, 0x28303236, + 0, 1, 1, 0x00000e34, 0xffffffff, 0x38404242, + 0, 1, 1, 0x00000e38, 0xffffffff, 0x26283034, + 0, 1, 0, 0x00000e3c, 0xffffffff, 0x40424444, + 0, 1, 0, 0x00000e40, 0xffffffff, 0x28303236, + 0, 1, 0, 0x00000e44, 0xffffffff, 0x42422426, + 0, 1, 1, 0x00000e48, 0xffffffff, 0x30343840, + 0, 1, 1, 0x00000e4c, 0xffffffff, 0x22242628, + 1, 0, 0, 0x00000c24, 0xffffffff, 0x42424444, + 1, 0, 0, 0x00000c28, 0xffffffff, 0x30323640, + 1, 0, 0, 0x00000c2c, 0xffffffff, 0x40424444, + 1, 0, 0, 0x00000c30, 0xffffffff, 0x28303236, + 1, 0, 1, 0x00000c34, 0xffffffff, 0x38404242, + 1, 0, 1, 0x00000c38, 0xffffffff, 0x26283034, + 1, 0, 0, 0x00000c3c, 0xffffffff, 0x40424444, + 1, 0, 0, 0x00000c40, 0xffffffff, 0x28303236, + 1, 0, 0, 0x00000c44, 0xffffffff, 0x42422426, + 1, 0, 1, 0x00000c48, 0xffffffff, 0x30343840, + 1, 0, 1, 0x00000c4c, 0xffffffff, 0x22242628, + 1, 1, 0, 0x00000e24, 0xffffffff, 0x42424444, + 1, 1, 0, 0x00000e28, 0xffffffff, 0x30323640, + 1, 1, 0, 0x00000e2c, 0xffffffff, 0x40424444, + 1, 1, 0, 0x00000e30, 0xffffffff, 0x28303236, + 1, 1, 1, 0x00000e34, 0xffffffff, 0x38404242, + 1, 1, 1, 0x00000e38, 0xffffffff, 0x26283034, + 1, 1, 0, 0x00000e3c, 0xffffffff, 0x40424444, + 1, 1, 0, 0x00000e40, 0xffffffff, 0x28303236, + 1, 1, 0, 0x00000e44, 0xffffffff, 0x42422426, + 1, 1, 1, 0x00000e48, 0xffffffff, 0x30343840, + 1, 1, 1, 0x00000e4c, 0xffffffff, 0x22242628 +}; + +u32 RTL8821AE_PHY_REG_ARRAY_PG[] = { + 0, 0, 0, 0x00000c20, 0xffffffff, 0x32343638, + 0, 0, 0, 0x00000c24, 0xffffffff, 0x36363838, + 0, 0, 0, 0x00000c28, 0xffffffff, 0x28303234, + 0, 0, 0, 0x00000c2c, 0xffffffff, 0x34363838, + 0, 0, 0, 0x00000c30, 0xffffffff, 0x26283032, + 0, 0, 0, 0x00000c3c, 0xffffffff, 0x32343636, + 0, 0, 0, 0x00000c40, 0xffffffff, 0x24262830, + 0, 0, 0, 0x00000c44, 0x0000ffff, 0x00002022, + 1, 0, 0, 0x00000c24, 0xffffffff, 0x34343636, + 1, 0, 0, 0x00000c28, 0xffffffff, 0x26283032, + 1, 0, 0, 0x00000c2c, 0xffffffff, 0x32343636, + 1, 0, 0, 0x00000c30, 0xffffffff, 0x24262830, + 1, 0, 0, 0x00000c3c, 0xffffffff, 0x32343636, + 1, 0, 0, 0x00000c40, 0xffffffff, 0x24262830, + 1, 0, 0, 0x00000c44, 0x0000ffff, 0x00002022 +}; + +/* it seems not used +u8 *RTL8821AE_TXPWR_LMT_ARRAY[] = { + "FCC", "2.4G", "20M", "CCK", "1T", "01", "32", + "ETSI", "2.4G", "20M", "CCK", "1T", "01", "32", + "MKK", "2.4G", "20M", "CCK", "1T", "01", "32", + "FCC", "2.4G", "20M", "CCK", "1T", "02", "32", + "ETSI", "2.4G", "20M", "CCK", "1T", "02", "32", + "MKK", "2.4G", "20M", "CCK", "1T", "02", "32", + "FCC", "2.4G", "20M", "CCK", "1T", "03", "32", + "ETSI", "2.4G", "20M", "CCK", "1T", "03", "32", + "MKK", "2.4G", "20M", "CCK", "1T", "03", "32", + "FCC", "2.4G", "20M", "CCK", "1T", "04", "34", + "ETSI", "2.4G", "20M", "CCK", "1T", "04", "32", + "MKK", "2.4G", "20M", "CCK", "1T", "04", "32", + "FCC", "2.4G", "20M", "CCK", "1T", "05", "34", + "ETSI", "2.4G", "20M", "CCK", "1T", "05", "32", + "MKK", "2.4G", "20M", "CCK", "1T", "05", "32", + "FCC", "2.4G", "20M", "CCK", "1T", "06", "34", + "ETSI", "2.4G", "20M", "CCK", "1T", "06", "32", + "MKK", "2.4G", "20M", "CCK", "1T", "06", "32", + "FCC", "2.4G", "20M", "CCK", "1T", "07", "34", + "ETSI", "2.4G", "20M", "CCK", "1T", "07", "32", + "MKK", "2.4G", "20M", "CCK", "1T", "07", "32", + "FCC", "2.4G", "20M", "CCK", "1T", "08", "34", + "ETSI", "2.4G", "20M", "CCK", "1T", "08", "32", + "MKK", "2.4G", "20M", "CCK", "1T", "08", "32", + "FCC", "2.4G", "20M", "CCK", "1T", "09", "34", + "ETSI", "2.4G", "20M", "CCK", "1T", "09", "32", + "MKK", "2.4G", "20M", "CCK", "1T", "09", "32", + "FCC", "2.4G", "20M", "CCK", "1T", "10", "32", + "ETSI", "2.4G", "20M", "CCK", "1T", "10", "32", + "MKK", "2.4G", "20M", "CCK", "1T", "10", "32", + "FCC", "2.4G", "20M", "CCK", "1T", "11", "32", + "ETSI", "2.4G", "20M", "CCK", "1T", "11", "32", + "MKK", "2.4G", "20M", "CCK", "1T", "11", "32", + "FCC", "2.4G", "20M", "CCK", "1T", "12", "63", + "ETSI", "2.4G", "20M", "CCK", "1T", "12", "32", + "MKK", "2.4G", "20M", "CCK", "1T", "12", "32", + "FCC", "2.4G", "20M", "CCK", "1T", "13", "63", + "ETSI", "2.4G", "20M", "CCK", "1T", "13", "32", + "MKK", "2.4G", "20M", "CCK", "1T", "13", "32", + "FCC", "2.4G", "20M", "CCK", "1T", "14", "63", + "ETSI", "2.4G", "20M", "CCK", "1T", "14", "63", + "MKK", "2.4G", "20M", "CCK", "1T", "14", "32", + "FCC", "2.4G", "20M", "OFDM", "1T", "01", "30", + "ETSI", "2.4G", "20M", "OFDM", "1T", "01", "32", + "MKK", "2.4G", "20M", "OFDM", "1T", "01", "32", + "FCC", "2.4G", "20M", "OFDM", "1T", "02", "30", + "ETSI", "2.4G", "20M", "OFDM", "1T", "02", "32", + "MKK", "2.4G", "20M", "OFDM", "1T", "02", "32", + "FCC", "2.4G", "20M", "OFDM", "1T", "03", "30", + "ETSI", "2.4G", "20M", "OFDM", "1T", "03", "32", + "MKK", "2.4G", "20M", "OFDM", "1T", "03", "32", + "FCC", "2.4G", "20M", "OFDM", "1T", "04", "32", + "ETSI", "2.4G", "20M", "OFDM", "1T", "04", "32", + "MKK", "2.4G", "20M", "OFDM", "1T", "04", "32", + "FCC", "2.4G", "20M", "OFDM", "1T", "05", "32", + "ETSI", "2.4G", "20M", "OFDM", "1T", "05", "32", + "MKK", "2.4G", "20M", "OFDM", "1T", "05", "32", + "FCC", "2.4G", "20M", "OFDM", "1T", "06", "32", + "ETSI", "2.4G", "20M", "OFDM", "1T", "06", "32", + "MKK", "2.4G", "20M", "OFDM", "1T", "06", "32", + "FCC", "2.4G", "20M", "OFDM", "1T", "07", "32", + "ETSI", "2.4G", "20M", "OFDM", "1T", "07", "32", + "MKK", "2.4G", "20M", "OFDM", "1T", "07", "32", + "FCC", "2.4G", "20M", "OFDM", "1T", "08", "32", + "ETSI", "2.4G", "20M", "OFDM", "1T", "08", "32", + "MKK", "2.4G", "20M", "OFDM", "1T", "08", "32", + "FCC", "2.4G", "20M", "OFDM", "1T", "09", "32", + "ETSI", "2.4G", "20M", "OFDM", "1T", "09", "32", + "MKK", "2.4G", "20M", "OFDM", "1T", "09", "32", + "FCC", "2.4G", "20M", "OFDM", "1T", "10", "30", + "ETSI", "2.4G", "20M", "OFDM", "1T", "10", "32", + "MKK", "2.4G", "20M", "OFDM", "1T", "10", "32", + "FCC", "2.4G", "20M", "OFDM", "1T", "11", "30", + "ETSI", "2.4G", "20M", "OFDM", "1T", "11", "32", + "MKK", "2.4G", "20M", "OFDM", "1T", "11", "32", + "FCC", "2.4G", "20M", "OFDM", "1T", "12", "63", + "ETSI", "2.4G", "20M", "OFDM", "1T", "12", "32", + "MKK", "2.4G", "20M", "OFDM", "1T", "12", "32", + "FCC", "2.4G", "20M", "OFDM", "1T", "13", "63", + "ETSI", "2.4G", "20M", "OFDM", "1T", "13", "32", + "MKK", "2.4G", "20M", "OFDM", "1T", "13", "32", + "FCC", "2.4G", "20M", "OFDM", "1T", "14", "63", + "ETSI", "2.4G", "20M", "OFDM", "1T", "14", "63", + "MKK", "2.4G", "20M", "OFDM", "1T", "14", "63", + "FCC", "2.4G", "20M", "HT", "1T", "01", "26", + "ETSI", "2.4G", "20M", "HT", "1T", "01", "32", + "MKK", "2.4G", "20M", "HT", "1T", "01", "32", + "FCC", "2.4G", "20M", "HT", "1T", "02", "26", + "ETSI", "2.4G", "20M", "HT", "1T", "02", "32", + "MKK", "2.4G", "20M", "HT", "1T", "02", "32", + "FCC", "2.4G", "20M", "HT", "1T", "03", "26", + "ETSI", "2.4G", "20M", "HT", "1T", "03", "32", + "MKK", "2.4G", "20M", "HT", "1T", "03", "32", + "FCC", "2.4G", "20M", "HT", "1T", "04", "32", + "ETSI", "2.4G", "20M", "HT", "1T", "04", "32", + "MKK", "2.4G", "20M", "HT", "1T", "04", "32", + "FCC", "2.4G", "20M", "HT", "1T", "05", "32", + "ETSI", "2.4G", "20M", "HT", "1T", "05", "32", + "MKK", "2.4G", "20M", "HT", "1T", "05", "32", + "FCC", "2.4G", "20M", "HT", "1T", "06", "32", + "ETSI", "2.4G", "20M", "HT", "1T", "06", "32", + "MKK", "2.4G", "20M", "HT", "1T", "06", "32", + "FCC", "2.4G", "20M", "HT", "1T", "07", "32", + "ETSI", "2.4G", "20M", "HT", "1T", "07", "32", + "MKK", "2.4G", "20M", "HT", "1T", "07", "32", + "FCC", "2.4G", "20M", "HT", "1T", "08", "32", + "ETSI", "2.4G", "20M", "HT", "1T", "08", "32", + "MKK", "2.4G", "20M", "HT", "1T", "08", "32", + "FCC", "2.4G", "20M", "HT", "1T", "09", "32", + "ETSI", "2.4G", "20M", "HT", "1T", "09", "32", + "MKK", "2.4G", "20M", "HT", "1T", "09", "32", + "FCC", "2.4G", "20M", "HT", "1T", "10", "26", + "ETSI", "2.4G", "20M", "HT", "1T", "10", "32", + "MKK", "2.4G", "20M", "HT", "1T", "10", "32", + "FCC", "2.4G", "20M", "HT", "1T", "11", "26", + "ETSI", "2.4G", "20M", "HT", "1T", "11", "32", + "MKK", "2.4G", "20M", "HT", "1T", "11", "32", + "FCC", "2.4G", "20M", "HT", "1T", "12", "63", + "ETSI", "2.4G", "20M", "HT", "1T", "12", "32", + "MKK", "2.4G", "20M", "HT", "1T", "12", "32", + "FCC", "2.4G", "20M", "HT", "1T", "13", "63", + "ETSI", "2.4G", "20M", "HT", "1T", "13", "32", + "MKK", "2.4G", "20M", "HT", "1T", "13", "32", + "FCC", "2.4G", "20M", "HT", "1T", "14", "63", + "ETSI", "2.4G", "20M", "HT", "1T", "14", "63", + "MKK", "2.4G", "20M", "HT", "1T", "14", "63", + "FCC", "2.4G", "20M", "HT", "2T", "01", "30", + "ETSI", "2.4G", "20M", "HT", "2T", "01", "32", + "MKK", "2.4G", "20M", "HT", "2T", "01", "32", + "FCC", "2.4G", "20M", "HT", "2T", "02", "32", + "ETSI", "2.4G", "20M", "HT", "2T", "02", "32", + "MKK", "2.4G", "20M", "HT", "2T", "02", "32", + "FCC", "2.4G", "20M", "HT", "2T", "03", "32", + "ETSI", "2.4G", "20M", "HT", "2T", "03", "32", + "MKK", "2.4G", "20M", "HT", "2T", "03", "32", + "FCC", "2.4G", "20M", "HT", "2T", "04", "32", + "ETSI", "2.4G", "20M", "HT", "2T", "04", "32", + "MKK", "2.4G", "20M", "HT", "2T", "04", "32", + "FCC", "2.4G", "20M", "HT", "2T", "05", "32", + "ETSI", "2.4G", "20M", "HT", "2T", "05", "32", + "MKK", "2.4G", "20M", "HT", "2T", "05", "32", + "FCC", "2.4G", "20M", "HT", "2T", "06", "32", + "ETSI", "2.4G", "20M", "HT", "2T", "06", "32", + "MKK", "2.4G", "20M", "HT", "2T", "06", "32", + "FCC", "2.4G", "20M", "HT", "2T", "07", "32", + "ETSI", "2.4G", "20M", "HT", "2T", "07", "32", + "MKK", "2.4G", "20M", "HT", "2T", "07", "32", + "FCC", "2.4G", "20M", "HT", "2T", "08", "32", + "ETSI", "2.4G", "20M", "HT", "2T", "08", "32", + "MKK", "2.4G", "20M", "HT", "2T", "08", "32", + "FCC", "2.4G", "20M", "HT", "2T", "09", "32", + "ETSI", "2.4G", "20M", "HT", "2T", "09", "32", + "MKK", "2.4G", "20M", "HT", "2T", "09", "32", + "FCC", "2.4G", "20M", "HT", "2T", "10", "32", + "ETSI", "2.4G", "20M", "HT", "2T", "10", "32", + "MKK", "2.4G", "20M", "HT", "2T", "10", "32", + "FCC", "2.4G", "20M", "HT", "2T", "11", "30", + "ETSI", "2.4G", "20M", "HT", "2T", "11", "32", + "MKK", "2.4G", "20M", "HT", "2T", "11", "32", + "FCC", "2.4G", "20M", "HT", "2T", "12", "63", + "ETSI", "2.4G", "20M", "HT", "2T", "12", "32", + "MKK", "2.4G", "20M", "HT", "2T", "12", "32", + "FCC", "2.4G", "20M", "HT", "2T", "13", "63", + "ETSI", "2.4G", "20M", "HT", "2T", "13", "32", + "MKK", "2.4G", "20M", "HT", "2T", "13", "32", + "FCC", "2.4G", "20M", "HT", "2T", "14", "63", + "ETSI", "2.4G", "20M", "HT", "2T", "14", "63", + "MKK", "2.4G", "20M", "HT", "2T", "14", "63", + "FCC", "2.4G", "40M", "HT", "1T", "01", "63", + "ETSI", "2.4G", "40M", "HT", "1T", "01", "63", + "MKK", "2.4G", "40M", "HT", "1T", "01", "63", + "FCC", "2.4G", "40M", "HT", "1T", "02", "63", + "ETSI", "2.4G", "40M", "HT", "1T", "02", "63", + "MKK", "2.4G", "40M", "HT", "1T", "02", "63", + "FCC", "2.4G", "40M", "HT", "1T", "03", "26", + "ETSI", "2.4G", "40M", "HT", "1T", "03", "32", + "MKK", "2.4G", "40M", "HT", "1T", "03", "32", + "FCC", "2.4G", "40M", "HT", "1T", "04", "26", + "ETSI", "2.4G", "40M", "HT", "1T", "04", "32", + "MKK", "2.4G", "40M", "HT", "1T", "04", "32", + "FCC", "2.4G", "40M", "HT", "1T", "05", "32", + "ETSI", "2.4G", "40M", "HT", "1T", "05", "32", + "MKK", "2.4G", "40M", "HT", "1T", "05", "32", + "FCC", "2.4G", "40M", "HT", "1T", "06", "32", + "ETSI", "2.4G", "40M", "HT", "1T", "06", "32", + "MKK", "2.4G", "40M", "HT", "1T", "06", "32", + "FCC", "2.4G", "40M", "HT", "1T", "07", "32", + "ETSI", "2.4G", "40M", "HT", "1T", "07", "32", + "MKK", "2.4G", "40M", "HT", "1T", "07", "32", + "FCC", "2.4G", "40M", "HT", "1T", "08", "26", + "ETSI", "2.4G", "40M", "HT", "1T", "08", "32", + "MKK", "2.4G", "40M", "HT", "1T", "08", "32", + "FCC", "2.4G", "40M", "HT", "1T", "09", "26", + "ETSI", "2.4G", "40M", "HT", "1T", "09", "32", + "MKK", "2.4G", "40M", "HT", "1T", "09", "32", + "FCC", "2.4G", "40M", "HT", "1T", "10", "26", + "ETSI", "2.4G", "40M", "HT", "1T", "10", "32", + "MKK", "2.4G", "40M", "HT", "1T", "10", "32", + "FCC", "2.4G", "40M", "HT", "1T", "11", "26", + "ETSI", "2.4G", "40M", "HT", "1T", "11", "32", + "MKK", "2.4G", "40M", "HT", "1T", "11", "32", + "FCC", "2.4G", "40M", "HT", "1T", "12", "63", + "ETSI", "2.4G", "40M", "HT", "1T", "12", "32", + "MKK", "2.4G", "40M", "HT", "1T", "12", "32", + "FCC", "2.4G", "40M", "HT", "1T", "13", "63", + "ETSI", "2.4G", "40M", "HT", "1T", "13", "32", + "MKK", "2.4G", "40M", "HT", "1T", "13", "32", + "FCC", "2.4G", "40M", "HT", "1T", "14", "63", + "ETSI", "2.4G", "40M", "HT", "1T", "14", "63", + "MKK", "2.4G", "40M", "HT", "1T", "14", "63", + "FCC", "2.4G", "40M", "HT", "2T", "01", "63", + "ETSI", "2.4G", "40M", "HT", "2T", "01", "63", + "MKK", "2.4G", "40M", "HT", "2T", "01", "63", + "FCC", "2.4G", "40M", "HT", "2T", "02", "63", + "ETSI", "2.4G", "40M", "HT", "2T", "02", "63", + "MKK", "2.4G", "40M", "HT", "2T", "02", "63", + "FCC", "2.4G", "40M", "HT", "2T", "03", "30", + "ETSI", "2.4G", "40M", "HT", "2T", "03", "30", + "MKK", "2.4G", "40M", "HT", "2T", "03", "30", + "FCC", "2.4G", "40M", "HT", "2T", "04", "32", + "ETSI", "2.4G", "40M", "HT", "2T", "04", "30", + "MKK", "2.4G", "40M", "HT", "2T", "04", "30", + "FCC", "2.4G", "40M", "HT", "2T", "05", "32", + "ETSI", "2.4G", "40M", "HT", "2T", "05", "30", + "MKK", "2.4G", "40M", "HT", "2T", "05", "30", + "FCC", "2.4G", "40M", "HT", "2T", "06", "32", + "ETSI", "2.4G", "40M", "HT", "2T", "06", "30", + "MKK", "2.4G", "40M", "HT", "2T", "06", "30", + "FCC", "2.4G", "40M", "HT", "2T", "07", "32", + "ETSI", "2.4G", "40M", "HT", "2T", "07", "30", + "MKK", "2.4G", "40M", "HT", "2T", "07", "30", + "FCC", "2.4G", "40M", "HT", "2T", "08", "32", + "ETSI", "2.4G", "40M", "HT", "2T", "08", "30", + "MKK", "2.4G", "40M", "HT", "2T", "08", "30", + "FCC", "2.4G", "40M", "HT", "2T", "09", "32", + "ETSI", "2.4G", "40M", "HT", "2T", "09", "30", + "MKK", "2.4G", "40M", "HT", "2T", "09", "30", + "FCC", "2.4G", "40M", "HT", "2T", "10", "32", + "ETSI", "2.4G", "40M", "HT", "2T", "10", "30", + "MKK", "2.4G", "40M", "HT", "2T", "10", "30", + "FCC", "2.4G", "40M", "HT", "2T", "11", "30", + "ETSI", "2.4G", "40M", "HT", "2T", "11", "30", + "MKK", "2.4G", "40M", "HT", "2T", "11", "30", + "FCC", "2.4G", "40M", "HT", "2T", "12", "63", + "ETSI", "2.4G", "40M", "HT", "2T", "12", "32", + "MKK", "2.4G", "40M", "HT", "2T", "12", "32", + "FCC", "2.4G", "40M", "HT", "2T", "13", "63", + "ETSI", "2.4G", "40M", "HT", "2T", "13", "32", + "MKK", "2.4G", "40M", "HT", "2T", "13", "32", + "FCC", "2.4G", "40M", "HT", "2T", "14", "63", + "ETSI", "2.4G", "40M", "HT", "2T", "14", "63", + "MKK", "2.4G", "40M", "HT", "2T", "14", "63", + "FCC", "5G", "20M", "OFDM", "1T", "36", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "36", "30", + "MKK", "5G", "20M", "OFDM", "1T", "36", "30", + "FCC", "5G", "20M", "OFDM", "1T", "40", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "40", "30", + "MKK", "5G", "20M", "OFDM", "1T", "40", "30", + "FCC", "5G", "20M", "OFDM", "1T", "44", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "44", "30", + "MKK", "5G", "20M", "OFDM", "1T", "44", "30", + "FCC", "5G", "20M", "OFDM", "1T", "48", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "48", "30", + "MKK", "5G", "20M", "OFDM", "1T", "48", "30", + "FCC", "5G", "20M", "OFDM", "1T", "52", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "52", "30", + "MKK", "5G", "20M", "OFDM", "1T", "52", "30", + "FCC", "5G", "20M", "OFDM", "1T", "56", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "56", "30", + "MKK", "5G", "20M", "OFDM", "1T", "56", "30", + "FCC", "5G", "20M", "OFDM", "1T", "60", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "60", "30", + "MKK", "5G", "20M", "OFDM", "1T", "60", "30", + "FCC", "5G", "20M", "OFDM", "1T", "64", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "64", "30", + "MKK", "5G", "20M", "OFDM", "1T", "64", "30", + "FCC", "5G", "20M", "OFDM", "1T", "100", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "100", "30", + "MKK", "5G", "20M", "OFDM", "1T", "100", "30", + "FCC", "5G", "20M", "OFDM", "1T", "114", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "114", "30", + "MKK", "5G", "20M", "OFDM", "1T", "114", "30", + "FCC", "5G", "20M", "OFDM", "1T", "108", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "108", "30", + "MKK", "5G", "20M", "OFDM", "1T", "108", "30", + "FCC", "5G", "20M", "OFDM", "1T", "112", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "112", "30", + "MKK", "5G", "20M", "OFDM", "1T", "112", "30", + "FCC", "5G", "20M", "OFDM", "1T", "116", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "116", "30", + "MKK", "5G", "20M", "OFDM", "1T", "116", "30", + "FCC", "5G", "20M", "OFDM", "1T", "120", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "120", "30", + "MKK", "5G", "20M", "OFDM", "1T", "120", "30", + "FCC", "5G", "20M", "OFDM", "1T", "124", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "124", "30", + "MKK", "5G", "20M", "OFDM", "1T", "124", "30", + "FCC", "5G", "20M", "OFDM", "1T", "128", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "128", "30", + "MKK", "5G", "20M", "OFDM", "1T", "128", "30", + "FCC", "5G", "20M", "OFDM", "1T", "132", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "132", "30", + "MKK", "5G", "20M", "OFDM", "1T", "132", "30", + "FCC", "5G", "20M", "OFDM", "1T", "136", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "136", "30", + "MKK", "5G", "20M", "OFDM", "1T", "136", "30", + "FCC", "5G", "20M", "OFDM", "1T", "140", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "140", "30", + "MKK", "5G", "20M", "OFDM", "1T", "140", "30", + "FCC", "5G", "20M", "OFDM", "1T", "149", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "149", "30", + "MKK", "5G", "20M", "OFDM", "1T", "149", "63", + "FCC", "5G", "20M", "OFDM", "1T", "153", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "153", "30", + "MKK", "5G", "20M", "OFDM", "1T", "153", "63", + "FCC", "5G", "20M", "OFDM", "1T", "157", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "157", "30", + "MKK", "5G", "20M", "OFDM", "1T", "157", "63", + "FCC", "5G", "20M", "OFDM", "1T", "161", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "161", "30", + "MKK", "5G", "20M", "OFDM", "1T", "161", "63", + "FCC", "5G", "20M", "OFDM", "1T", "165", "30", + "ETSI", "5G", "20M", "OFDM", "1T", "165", "30", + "MKK", "5G", "20M", "OFDM", "1T", "165", "63", + "FCC", "5G", "20M", "HT", "1T", "36", "30", + "ETSI", "5G", "20M", "HT", "1T", "36", "30", + "MKK", "5G", "20M", "HT", "1T", "36", "30", + "FCC", "5G", "20M", "HT", "1T", "40", "30", + "ETSI", "5G", "20M", "HT", "1T", "40", "30", + "MKK", "5G", "20M", "HT", "1T", "40", "30", + "FCC", "5G", "20M", "HT", "1T", "44", "30", + "ETSI", "5G", "20M", "HT", "1T", "44", "30", + "MKK", "5G", "20M", "HT", "1T", "44", "30", + "FCC", "5G", "20M", "HT", "1T", "48", "30", + "ETSI", "5G", "20M", "HT", "1T", "48", "30", + "MKK", "5G", "20M", "HT", "1T", "48", "30", + "FCC", "5G", "20M", "HT", "1T", "52", "30", + "ETSI", "5G", "20M", "HT", "1T", "52", "30", + "MKK", "5G", "20M", "HT", "1T", "52", "30", + "FCC", "5G", "20M", "HT", "1T", "56", "30", + "ETSI", "5G", "20M", "HT", "1T", "56", "30", + "MKK", "5G", "20M", "HT", "1T", "56", "30", + "FCC", "5G", "20M", "HT", "1T", "60", "30", + "ETSI", "5G", "20M", "HT", "1T", "60", "30", + "MKK", "5G", "20M", "HT", "1T", "60", "30", + "FCC", "5G", "20M", "HT", "1T", "64", "30", + "ETSI", "5G", "20M", "HT", "1T", "64", "30", + "MKK", "5G", "20M", "HT", "1T", "64", "30", + "FCC", "5G", "20M", "HT", "1T", "100", "30", + "ETSI", "5G", "20M", "HT", "1T", "100", "30", + "MKK", "5G", "20M", "HT", "1T", "100", "30", + "FCC", "5G", "20M", "HT", "1T", "114", "30", + "ETSI", "5G", "20M", "HT", "1T", "114", "30", + "MKK", "5G", "20M", "HT", "1T", "114", "30", + "FCC", "5G", "20M", "HT", "1T", "108", "30", + "ETSI", "5G", "20M", "HT", "1T", "108", "30", + "MKK", "5G", "20M", "HT", "1T", "108", "30", + "FCC", "5G", "20M", "HT", "1T", "112", "30", + "ETSI", "5G", "20M", "HT", "1T", "112", "30", + "MKK", "5G", "20M", "HT", "1T", "112", "30", + "FCC", "5G", "20M", "HT", "1T", "116", "30", + "ETSI", "5G", "20M", "HT", "1T", "116", "30", + "MKK", "5G", "20M", "HT", "1T", "116", "30", + "FCC", "5G", "20M", "HT", "1T", "120", "30", + "ETSI", "5G", "20M", "HT", "1T", "120", "30", + "MKK", "5G", "20M", "HT", "1T", "120", "30", + "FCC", "5G", "20M", "HT", "1T", "124", "30", + "ETSI", "5G", "20M", "HT", "1T", "124", "30", + "MKK", "5G", "20M", "HT", "1T", "124", "30", + "FCC", "5G", "20M", "HT", "1T", "128", "30", + "ETSI", "5G", "20M", "HT", "1T", "128", "30", + "MKK", "5G", "20M", "HT", "1T", "128", "30", + "FCC", "5G", "20M", "HT", "1T", "132", "30", + "ETSI", "5G", "20M", "HT", "1T", "132", "30", + "MKK", "5G", "20M", "HT", "1T", "132", "30", + "FCC", "5G", "20M", "HT", "1T", "136", "30", + "ETSI", "5G", "20M", "HT", "1T", "136", "30", + "MKK", "5G", "20M", "HT", "1T", "136", "30", + "FCC", "5G", "20M", "HT", "1T", "140", "30", + "ETSI", "5G", "20M", "HT", "1T", "140", "30", + "MKK", "5G", "20M", "HT", "1T", "140", "30", + "FCC", "5G", "20M", "HT", "1T", "149", "30", + "ETSI", "5G", "20M", "HT", "1T", "149", "30", + "MKK", "5G", "20M", "HT", "1T", "149", "63", + "FCC", "5G", "20M", "HT", "1T", "153", "30", + "ETSI", "5G", "20M", "HT", "1T", "153", "30", + "MKK", "5G", "20M", "HT", "1T", "153", "63", + "FCC", "5G", "20M", "HT", "1T", "157", "30", + "ETSI", "5G", "20M", "HT", "1T", "157", "30", + "MKK", "5G", "20M", "HT", "1T", "157", "63", + "FCC", "5G", "20M", "HT", "1T", "161", "30", + "ETSI", "5G", "20M", "HT", "1T", "161", "30", + "MKK", "5G", "20M", "HT", "1T", "161", "63", + "FCC", "5G", "20M", "HT", "1T", "165", "30", + "ETSI", "5G", "20M", "HT", "1T", "165", "30", + "MKK", "5G", "20M", "HT", "1T", "165", "63", + "FCC", "5G", "20M", "HT", "2T", "36", "28", + "ETSI", "5G", "20M", "HT", "2T", "36", "30", + "MKK", "5G", "20M", "HT", "2T", "36", "30", + "FCC", "5G", "20M", "HT", "2T", "40", "28", + "ETSI", "5G", "20M", "HT", "2T", "40", "30", + "MKK", "5G", "20M", "HT", "2T", "40", "30", + "FCC", "5G", "20M", "HT", "2T", "44", "28", + "ETSI", "5G", "20M", "HT", "2T", "44", "30", + "MKK", "5G", "20M", "HT", "2T", "44", "30", + "FCC", "5G", "20M", "HT", "2T", "48", "28", + "ETSI", "5G", "20M", "HT", "2T", "48", "30", + "MKK", "5G", "20M", "HT", "2T", "48", "30", + "FCC", "5G", "20M", "HT", "2T", "52", "34", + "ETSI", "5G", "20M", "HT", "2T", "52", "30", + "MKK", "5G", "20M", "HT", "2T", "52", "30", + "FCC", "5G", "20M", "HT", "2T", "56", "32", + "ETSI", "5G", "20M", "HT", "2T", "56", "30", + "MKK", "5G", "20M", "HT", "2T", "56", "30", + "FCC", "5G", "20M", "HT", "2T", "60", "30", + "ETSI", "5G", "20M", "HT", "2T", "60", "30", + "MKK", "5G", "20M", "HT", "2T", "60", "30", + "FCC", "5G", "20M", "HT", "2T", "64", "26", + "ETSI", "5G", "20M", "HT", "2T", "64", "30", + "MKK", "5G", "20M", "HT", "2T", "64", "30", + "FCC", "5G", "20M", "HT", "2T", "100", "28", + "ETSI", "5G", "20M", "HT", "2T", "100", "30", + "MKK", "5G", "20M", "HT", "2T", "100", "30", + "FCC", "5G", "20M", "HT", "2T", "114", "28", + "ETSI", "5G", "20M", "HT", "2T", "114", "30", + "MKK", "5G", "20M", "HT", "2T", "114", "30", + "FCC", "5G", "20M", "HT", "2T", "108", "30", + "ETSI", "5G", "20M", "HT", "2T", "108", "30", + "MKK", "5G", "20M", "HT", "2T", "108", "30", + "FCC", "5G", "20M", "HT", "2T", "112", "32", + "ETSI", "5G", "20M", "HT", "2T", "112", "30", + "MKK", "5G", "20M", "HT", "2T", "112", "30", + "FCC", "5G", "20M", "HT", "2T", "116", "32", + "ETSI", "5G", "20M", "HT", "2T", "116", "30", + "MKK", "5G", "20M", "HT", "2T", "116", "30", + "FCC", "5G", "20M", "HT", "2T", "120", "34", + "ETSI", "5G", "20M", "HT", "2T", "120", "30", + "MKK", "5G", "20M", "HT", "2T", "120", "30", + "FCC", "5G", "20M", "HT", "2T", "124", "32", + "ETSI", "5G", "20M", "HT", "2T", "124", "30", + "MKK", "5G", "20M", "HT", "2T", "124", "30", + "FCC", "5G", "20M", "HT", "2T", "128", "30", + "ETSI", "5G", "20M", "HT", "2T", "128", "30", + "MKK", "5G", "20M", "HT", "2T", "128", "30", + "FCC", "5G", "20M", "HT", "2T", "132", "28", + "ETSI", "5G", "20M", "HT", "2T", "132", "30", + "MKK", "5G", "20M", "HT", "2T", "132", "30", + "FCC", "5G", "20M", "HT", "2T", "136", "28", + "ETSI", "5G", "20M", "HT", "2T", "136", "30", + "MKK", "5G", "20M", "HT", "2T", "136", "30", + "FCC", "5G", "20M", "HT", "2T", "140", "26", + "ETSI", "5G", "20M", "HT", "2T", "140", "30", + "MKK", "5G", "20M", "HT", "2T", "140", "30", + "FCC", "5G", "20M", "HT", "2T", "149", "34", + "ETSI", "5G", "20M", "HT", "2T", "149", "30", + "MKK", "5G", "20M", "HT", "2T", "149", "63", + "FCC", "5G", "20M", "HT", "2T", "153", "34", + "ETSI", "5G", "20M", "HT", "2T", "153", "30", + "MKK", "5G", "20M", "HT", "2T", "153", "63", + "FCC", "5G", "20M", "HT", "2T", "157", "34", + "ETSI", "5G", "20M", "HT", "2T", "157", "30", + "MKK", "5G", "20M", "HT", "2T", "157", "63", + "FCC", "5G", "20M", "HT", "2T", "161", "34", + "ETSI", "5G", "20M", "HT", "2T", "161", "30", + "MKK", "5G", "20M", "HT", "2T", "161", "63", + "FCC", "5G", "20M", "HT", "2T", "165", "34", + "ETSI", "5G", "20M", "HT", "2T", "165", "30", + "MKK", "5G", "20M", "HT", "2T", "165", "63", + "FCC", "5G", "40M", "HT", "1T", "38", "26", + "ETSI", "5G", "40M", "HT", "1T", "38", "30", + "MKK", "5G", "40M", "HT", "1T", "38", "30", + "FCC", "5G", "40M", "HT", "1T", "46", "30", + "ETSI", "5G", "40M", "HT", "1T", "46", "30", + "MKK", "5G", "40M", "HT", "1T", "46", "30", + "FCC", "5G", "40M", "HT", "1T", "54", "30", + "ETSI", "5G", "40M", "HT", "1T", "54", "30", + "MKK", "5G", "40M", "HT", "1T", "54", "30", + "FCC", "5G", "40M", "HT", "1T", "62", "26", + "ETSI", "5G", "40M", "HT", "1T", "62", "30", + "MKK", "5G", "40M", "HT", "1T", "62", "30", + "FCC", "5G", "40M", "HT", "1T", "102", "24", + "ETSI", "5G", "40M", "HT", "1T", "102", "30", + "MKK", "5G", "40M", "HT", "1T", "102", "30", + "FCC", "5G", "40M", "HT", "1T", "110", "30", + "ETSI", "5G", "40M", "HT", "1T", "110", "30", + "MKK", "5G", "40M", "HT", "1T", "110", "30", + "FCC", "5G", "40M", "HT", "1T", "118", "30", + "ETSI", "5G", "40M", "HT", "1T", "118", "30", + "MKK", "5G", "40M", "HT", "1T", "118", "30", + "FCC", "5G", "40M", "HT", "1T", "126", "30", + "ETSI", "5G", "40M", "HT", "1T", "126", "30", + "MKK", "5G", "40M", "HT", "1T", "126", "30", + "FCC", "5G", "40M", "HT", "1T", "134", "30", + "ETSI", "5G", "40M", "HT", "1T", "134", "30", + "MKK", "5G", "40M", "HT", "1T", "134", "30", + "FCC", "5G", "40M", "HT", "1T", "151", "30", + "ETSI", "5G", "40M", "HT", "1T", "151", "30", + "MKK", "5G", "40M", "HT", "1T", "151", "63", + "FCC", "5G", "40M", "HT", "1T", "159", "30", + "ETSI", "5G", "40M", "HT", "1T", "159", "30", + "MKK", "5G", "40M", "HT", "1T", "159", "63", + "FCC", "5G", "40M", "HT", "2T", "38", "28", + "ETSI", "5G", "40M", "HT", "2T", "38", "30", + "MKK", "5G", "40M", "HT", "2T", "38", "30", + "FCC", "5G", "40M", "HT", "2T", "46", "28", + "ETSI", "5G", "40M", "HT", "2T", "46", "30", + "MKK", "5G", "40M", "HT", "2T", "46", "30", + "FCC", "5G", "40M", "HT", "2T", "54", "30", + "ETSI", "5G", "40M", "HT", "2T", "54", "30", + "MKK", "5G", "40M", "HT", "2T", "54", "30", + "FCC", "5G", "40M", "HT", "2T", "62", "30", + "ETSI", "5G", "40M", "HT", "2T", "62", "30", + "MKK", "5G", "40M", "HT", "2T", "62", "30", + "FCC", "5G", "40M", "HT", "2T", "102", "26", + "ETSI", "5G", "40M", "HT", "2T", "102", "30", + "MKK", "5G", "40M", "HT", "2T", "102", "30", + "FCC", "5G", "40M", "HT", "2T", "110", "30", + "ETSI", "5G", "40M", "HT", "2T", "110", "30", + "MKK", "5G", "40M", "HT", "2T", "110", "30", + "FCC", "5G", "40M", "HT", "2T", "118", "34", + "ETSI", "5G", "40M", "HT", "2T", "118", "30", + "MKK", "5G", "40M", "HT", "2T", "118", "30", + "FCC", "5G", "40M", "HT", "2T", "126", "32", + "ETSI", "5G", "40M", "HT", "2T", "126", "30", + "MKK", "5G", "40M", "HT", "2T", "126", "30", + "FCC", "5G", "40M", "HT", "2T", "134", "30", + "ETSI", "5G", "40M", "HT", "2T", "134", "30", + "MKK", "5G", "40M", "HT", "2T", "134", "30", + "FCC", "5G", "40M", "HT", "2T", "151", "34", + "ETSI", "5G", "40M", "HT", "2T", "151", "30", + "MKK", "5G", "40M", "HT", "2T", "151", "63", + "FCC", "5G", "40M", "HT", "2T", "159", "34", + "ETSI", "5G", "40M", "HT", "2T", "159", "30", + "MKK", "5G", "40M", "HT", "2T", "159", "63", + "FCC", "5G", "80M", "VHT", "1T", "42", "22", + "ETSI", "5G", "80M", "VHT", "1T", "42", "30", + "MKK", "5G", "80M", "VHT", "1T", "42", "30", + "FCC", "5G", "80M", "VHT", "1T", "58", "20", + "ETSI", "5G", "80M", "VHT", "1T", "58", "30", + "MKK", "5G", "80M", "VHT", "1T", "58", "30", + "FCC", "5G", "80M", "VHT", "1T", "106", "20", + "ETSI", "5G", "80M", "VHT", "1T", "106", "30", + "MKK", "5G", "80M", "VHT", "1T", "106", "30", + "FCC", "5G", "80M", "VHT", "1T", "122", "28", + "ETSI", "5G", "80M", "VHT", "1T", "122", "30", + "MKK", "5G", "80M", "VHT", "1T", "122", "30", + "FCC", "5G", "80M", "VHT", "1T", "155", "30", + "ETSI", "5G", "80M", "VHT", "1T", "155", "30", + "MKK", "5G", "80M", "VHT", "1T", "155", "63", + "FCC", "5G", "80M", "VHT", "2T", "42", "28", + "ETSI", "5G", "80M", "VHT", "2T", "42", "30", + "MKK", "5G", "80M", "VHT", "2T", "42", "30", + "FCC", "5G", "80M", "VHT", "2T", "58", "26", + "ETSI", "5G", "80M", "VHT", "2T", "58", "30", + "MKK", "5G", "80M", "VHT", "2T", "58", "30", + "FCC", "5G", "80M", "VHT", "2T", "106", "28", + "ETSI", "5G", "80M", "VHT", "2T", "106", "30", + "MKK", "5G", "80M", "VHT", "2T", "106", "30", + "FCC", "5G", "80M", "VHT", "2T", "122", "32", + "ETSI", "5G", "80M", "VHT", "2T", "122", "30", + "MKK", "5G", "80M", "VHT", "2T", "122", "30", + "FCC", "5G", "80M", "VHT", "2T", "155", "34", + "ETSI", "5G", "80M", "VHT", "2T", "155", "30", + "MKK", "5G", "80M", "VHT", "2T", "155", "63" +};*/ + +u32 RTL8812AE_RADIOA_ARRAY[] = { + 0x000, 0x00010000, + 0x018, 0x0001712A, + 0x056, 0x00051CF2, + 0x066, 0x00040000, + 0x01E, 0x00080000, + 0x089, 0x00000080, + 0xFF0F0740, 0xABCD, + 0x086, 0x00014B38, + 0xFF0F02C0, 0xCDEF, + 0x086, 0x00014B38, + 0xFF0F01C0, 0xCDEF, + 0x086, 0x00014B38, + 0xFF0F07D8, 0xCDEF, + 0x086, 0x00014B3A, + 0xFF0F07D0, 0xCDEF, + 0x086, 0x00014B3A, + 0xCDCDCDCD, 0xCDCD, + 0x086, 0x00014B38, + 0xFF0F0740, 0xDEAD, + 0x0B1, 0x0001FC1A, + 0x0B3, 0x000F0810, + 0x0B4, 0x0001A78D, + 0x0BA, 0x00086180, + 0x018, 0x00000006, + 0x0EF, 0x00002000, + 0xFF0F07D8, 0xABCD, + 0x03B, 0x0003F218, + 0x03B, 0x00030A58, + 0x03B, 0x0002FA58, + 0x03B, 0x00022590, + 0x03B, 0x0001FA50, + 0x03B, 0x00010248, + 0x03B, 0x00008240, + 0xFF0F07D0, 0xCDEF, + 0x03B, 0x0003F218, + 0x03B, 0x00030A58, + 0x03B, 0x0002FA58, + 0x03B, 0x00022590, + 0x03B, 0x0001FA50, + 0x03B, 0x00010248, + 0x03B, 0x00008240, + 0xCDCDCDCD, 0xCDCD, + 0x03B, 0x00038A58, + 0x03B, 0x00037A58, + 0x03B, 0x0002A590, + 0x03B, 0x00027A50, + 0x03B, 0x00018248, + 0x03B, 0x00010240, + 0x03B, 0x00008240, + 0xFF0F07D8, 0xDEAD, + 0x0EF, 0x00000100, + 0xFF0F07D8, 0xABCD, + 0x034, 0x0000A4EE, + 0x034, 0x00009076, + 0x034, 0x00008073, + 0x034, 0x00007070, + 0x034, 0x0000606D, + 0x034, 0x0000506A, + 0x034, 0x00004049, + 0x034, 0x00003046, + 0x034, 0x00002028, + 0x034, 0x00001025, + 0x034, 0x00000022, + 0xCDCDCDCD, 0xCDCD, + 0x034, 0x0000ADF4, + 0x034, 0x00009DF1, + 0x034, 0x00008DEE, + 0x034, 0x00007DEB, + 0x034, 0x00006DE8, + 0x034, 0x00005CEC, + 0x034, 0x00004CE9, + 0x034, 0x000034EA, + 0x034, 0x000024E7, + 0x034, 0x0000146B, + 0x034, 0x0000006D, + 0xFF0F07D8, 0xDEAD, + 0x0EF, 0x00000000, + 0x0EF, 0x000020A2, + 0x0DF, 0x00000080, + 0x035, 0x00000192, + 0x035, 0x00008192, + 0x035, 0x00010192, + 0x036, 0x00000024, + 0x036, 0x00008024, + 0x036, 0x00010024, + 0x036, 0x00018024, + 0x0EF, 0x00000000, + 0x051, 0x00000C21, + 0x052, 0x000006D9, + 0x053, 0x000FC649, + 0x054, 0x0000017E, + 0x0EF, 0x00000002, + 0x008, 0x00008400, + 0x018, 0x0001712A, + 0x0EF, 0x00001000, + 0x03A, 0x00000080, + 0x03B, 0x0003A02C, + 0x03C, 0x00004000, + 0x03A, 0x00000400, + 0x03B, 0x0003202C, + 0x03C, 0x00010000, + 0x03A, 0x000000A0, + 0x03B, 0x0002B064, + 0x03C, 0x00004000, + 0x03A, 0x000000D8, + 0x03B, 0x00023070, + 0x03C, 0x00004000, + 0x03A, 0x00000468, + 0x03B, 0x0001B870, + 0x03C, 0x00010000, + 0x03A, 0x00000098, + 0x03B, 0x00012085, + 0x03C, 0x000E4000, + 0x03A, 0x00000418, + 0x03B, 0x0000A080, + 0x03C, 0x000F0000, + 0x03A, 0x00000418, + 0x03B, 0x00002080, + 0x03C, 0x00010000, + 0x03A, 0x00000080, + 0x03B, 0x0007A02C, + 0x03C, 0x00004000, + 0x03A, 0x00000400, + 0x03B, 0x0007202C, + 0x03C, 0x00010000, + 0x03A, 0x000000A0, + 0x03B, 0x0006B064, + 0x03C, 0x00004000, + 0x03A, 0x000000D8, + 0x03B, 0x00023070, + 0x03C, 0x00004000, + 0x03A, 0x00000468, + 0x03B, 0x0005B870, + 0x03C, 0x00010000, + 0x03A, 0x00000098, + 0x03B, 0x00052085, + 0x03C, 0x000E4000, + 0x03A, 0x00000418, + 0x03B, 0x0004A080, + 0x03C, 0x000F0000, + 0x03A, 0x00000418, + 0x03B, 0x00042080, + 0x03C, 0x00010000, + 0x03A, 0x00000080, + 0x03B, 0x000BA02C, + 0x03C, 0x00004000, + 0x03A, 0x00000400, + 0x03B, 0x000B202C, + 0x03C, 0x00010000, + 0x03A, 0x000000A0, + 0x03B, 0x000AB064, + 0x03C, 0x00004000, + 0x03A, 0x000000D8, + 0x03B, 0x000A3070, + 0x03C, 0x00004000, + 0x03A, 0x00000468, + 0x03B, 0x0009B870, + 0x03C, 0x00010000, + 0x03A, 0x00000098, + 0x03B, 0x00092085, + 0x03C, 0x000E4000, + 0x03A, 0x00000418, + 0x03B, 0x0008A080, + 0x03C, 0x000F0000, + 0x03A, 0x00000418, + 0x03B, 0x00082080, + 0x03C, 0x00010000, + 0x0EF, 0x00001100, + 0xFF0F0740, 0xABCD, + 0x034, 0x0004A0B2, + 0x034, 0x000490AF, + 0x034, 0x00048070, + 0x034, 0x0004706D, + 0x034, 0x00046050, + 0x034, 0x0004504D, + 0x034, 0x0004404A, + 0x034, 0x00043047, + 0x034, 0x0004200A, + 0x034, 0x00041007, + 0x034, 0x00040004, + 0xFF0F02C0, 0xCDEF, + 0x034, 0x0004A0B2, + 0x034, 0x000490AF, + 0x034, 0x00048070, + 0x034, 0x0004706D, + 0x034, 0x00046050, + 0x034, 0x0004504D, + 0x034, 0x0004404A, + 0x034, 0x00043047, + 0x034, 0x0004200A, + 0x034, 0x00041007, + 0x034, 0x00040004, + 0xFF0F01C0, 0xCDEF, + 0x034, 0x0004A0B2, + 0x034, 0x000490AF, + 0x034, 0x00048070, + 0x034, 0x0004706D, + 0x034, 0x00046050, + 0x034, 0x0004504D, + 0x034, 0x0004404A, + 0x034, 0x00043047, + 0x034, 0x0004200A, + 0x034, 0x00041007, + 0x034, 0x00040004, + 0xFF0F07D8, 0xCDEF, + 0x034, 0x0004A0B2, + 0x034, 0x000490AF, + 0x034, 0x00048070, + 0x034, 0x0004706D, + 0x034, 0x00046050, + 0x034, 0x0004504D, + 0x034, 0x0004404A, + 0x034, 0x00043047, + 0x034, 0x0004200A, + 0x034, 0x00041007, + 0x034, 0x00040004, + 0xFF0F07D0, 0xCDEF, + 0x034, 0x0004A0B2, + 0x034, 0x000490AF, + 0x034, 0x00048070, + 0x034, 0x0004706D, + 0x034, 0x00046050, + 0x034, 0x0004504D, + 0x034, 0x0004404A, + 0x034, 0x00043047, + 0x034, 0x0004200A, + 0x034, 0x00041007, + 0x034, 0x00040004, + 0xCDCDCDCD, 0xCDCD, + 0x034, 0x0004ADF5, + 0x034, 0x00049DF2, + 0x034, 0x00048DEF, + 0x034, 0x00047DEC, + 0x034, 0x00046DE9, + 0x034, 0x00045DC9, + 0x034, 0x00044CE8, + 0x034, 0x000438CA, + 0x034, 0x00042889, + 0x034, 0x0004184A, + 0x034, 0x0004044A, + 0xFF0F0740, 0xDEAD, + 0xFF0F0740, 0xABCD, + 0x034, 0x0002A0B2, + 0x034, 0x000290AF, + 0x034, 0x00028070, + 0x034, 0x0002706D, + 0x034, 0x00026050, + 0x034, 0x0002504D, + 0x034, 0x0002404A, + 0x034, 0x00023047, + 0x034, 0x0002200A, + 0x034, 0x00021007, + 0x034, 0x00020004, + 0xFF0F02C0, 0xCDEF, + 0x034, 0x0002A0B2, + 0x034, 0x000290AF, + 0x034, 0x00028070, + 0x034, 0x0002706D, + 0x034, 0x00026050, + 0x034, 0x0002504D, + 0x034, 0x0002404A, + 0x034, 0x00023047, + 0x034, 0x0002200A, + 0x034, 0x00021007, + 0x034, 0x00020004, + 0xFF0F01C0, 0xCDEF, + 0x034, 0x0002A0B2, + 0x034, 0x000290AF, + 0x034, 0x00028070, + 0x034, 0x0002706D, + 0x034, 0x00026050, + 0x034, 0x0002504D, + 0x034, 0x0002404A, + 0x034, 0x00023047, + 0x034, 0x0002200A, + 0x034, 0x00021007, + 0x034, 0x00020004, + 0xFF0F07D8, 0xCDEF, + 0x034, 0x0002A0B2, + 0x034, 0x000290AF, + 0x034, 0x00028070, + 0x034, 0x0002706D, + 0x034, 0x00026050, + 0x034, 0x0002504D, + 0x034, 0x0002404A, + 0x034, 0x00023047, + 0x034, 0x0002200A, + 0x034, 0x00021007, + 0x034, 0x00020004, + 0xFF0F07D0, 0xCDEF, + 0x034, 0x0002A0B2, + 0x034, 0x000290AF, + 0x034, 0x00028070, + 0x034, 0x0002706D, + 0x034, 0x00026050, + 0x034, 0x0002504D, + 0x034, 0x0002404A, + 0x034, 0x00023047, + 0x034, 0x0002200A, + 0x034, 0x00021007, + 0x034, 0x00020004, + 0xCDCDCDCD, 0xCDCD, + 0x034, 0x0002ADF5, + 0x034, 0x00029DF2, + 0x034, 0x00028DEF, + 0x034, 0x00027DEC, + 0x034, 0x00026DE9, + 0x034, 0x00025DC9, + 0x034, 0x00024CE8, + 0x034, 0x000238CA, + 0x034, 0x00022889, + 0x034, 0x0002184A, + 0x034, 0x0002044A, + 0xFF0F0740, 0xDEAD, + 0xFF0F0740, 0xABCD, + 0x034, 0x0000A0B2, + 0x034, 0x000090AF, + 0x034, 0x00008070, + 0x034, 0x0000706D, + 0x034, 0x00006050, + 0x034, 0x0000504D, + 0x034, 0x0000404A, + 0x034, 0x00003047, + 0x034, 0x0000200A, + 0x034, 0x00001007, + 0x034, 0x00000004, + 0xFF0F02C0, 0xCDEF, + 0x034, 0x0000A0B2, + 0x034, 0x000090AF, + 0x034, 0x00008070, + 0x034, 0x0000706D, + 0x034, 0x00006050, + 0x034, 0x0000504D, + 0x034, 0x0000404A, + 0x034, 0x00003047, + 0x034, 0x0000200A, + 0x034, 0x00001007, + 0x034, 0x00000004, + 0xFF0F01C0, 0xCDEF, + 0x034, 0x0000A0B2, + 0x034, 0x000090AF, + 0x034, 0x00008070, + 0x034, 0x0000706D, + 0x034, 0x00006050, + 0x034, 0x0000504D, + 0x034, 0x0000404A, + 0x034, 0x00003047, + 0x034, 0x0000200A, + 0x034, 0x00001007, + 0x034, 0x00000004, + 0xFF0F07D8, 0xCDEF, + 0x034, 0x0000A0B2, + 0x034, 0x000090AF, + 0x034, 0x00008070, + 0x034, 0x0000706D, + 0x034, 0x00006050, + 0x034, 0x0000504D, + 0x034, 0x0000404A, + 0x034, 0x00003047, + 0x034, 0x0000200A, + 0x034, 0x00001007, + 0x034, 0x00000004, + 0xFF0F07D0, 0xCDEF, + 0x034, 0x0000A0B2, + 0x034, 0x000090AF, + 0x034, 0x00008070, + 0x034, 0x0000706D, + 0x034, 0x00006050, + 0x034, 0x0000504D, + 0x034, 0x0000404A, + 0x034, 0x00003047, + 0x034, 0x0000200A, + 0x034, 0x00001007, + 0x034, 0x00000004, + 0xCDCDCDCD, 0xCDCD, + 0x034, 0x0000AFF7, + 0x034, 0x00009DF7, + 0x034, 0x00008DF4, + 0x034, 0x00007DF1, + 0x034, 0x00006DEE, + 0x034, 0x00005DCD, + 0x034, 0x00004CEB, + 0x034, 0x000038CC, + 0x034, 0x0000288B, + 0x034, 0x0000184C, + 0x034, 0x0000044C, + 0xFF0F0740, 0xDEAD, + 0x0EF, 0x00000000, + 0xFF0F0740, 0xABCD, + 0x018, 0x0001712A, + 0x0EF, 0x00000040, + 0x035, 0x000001D4, + 0x035, 0x000081D4, + 0x035, 0x000101D4, + 0x035, 0x000201B4, + 0x035, 0x000281B4, + 0x035, 0x000301B4, + 0x035, 0x000401B4, + 0x035, 0x000481B4, + 0x035, 0x000501B4, + 0xFF0F02C0, 0xCDEF, + 0x018, 0x0001712A, + 0x0EF, 0x00000040, + 0x035, 0x000001D4, + 0x035, 0x000081D4, + 0x035, 0x000101D4, + 0x035, 0x000201B4, + 0x035, 0x000281B4, + 0x035, 0x000301B4, + 0x035, 0x000401B4, + 0x035, 0x000481B4, + 0x035, 0x000501B4, + 0xFF0F01C0, 0xCDEF, + 0x018, 0x0001712A, + 0x0EF, 0x00000040, + 0x035, 0x000001D4, + 0x035, 0x000081D4, + 0x035, 0x000101D4, + 0x035, 0x000201B4, + 0x035, 0x000281B4, + 0x035, 0x000301B4, + 0x035, 0x000401B4, + 0x035, 0x000481B4, + 0x035, 0x000501B4, + 0xFF0F07D8, 0xCDEF, + 0x018, 0x0001712A, + 0x0EF, 0x00000040, + 0x035, 0x000001D4, + 0x035, 0x000081D4, + 0x035, 0x000101D4, + 0x035, 0x000201B4, + 0x035, 0x000281B4, + 0x035, 0x000301B4, + 0x035, 0x000401B4, + 0x035, 0x000481B4, + 0x035, 0x000501B4, + 0xFF0F07D0, 0xCDEF, + 0x018, 0x0001712A, + 0x0EF, 0x00000040, + 0x035, 0x000001D4, + 0x035, 0x000081D4, + 0x035, 0x000101D4, + 0x035, 0x000201B4, + 0x035, 0x000281B4, + 0x035, 0x000301B4, + 0x035, 0x000401B4, + 0x035, 0x000481B4, + 0x035, 0x000501B4, + 0xCDCDCDCD, 0xCDCD, + 0x018, 0x0001712A, + 0x0EF, 0x00000040, + 0x035, 0x00000188, + 0x035, 0x00008147, + 0x035, 0x00010147, + 0x035, 0x000201D7, + 0x035, 0x000281D7, + 0x035, 0x000301D7, + 0x035, 0x000401D8, + 0x035, 0x000481D8, + 0x035, 0x000501D8, + 0xFF0F0740, 0xDEAD, + 0x0EF, 0x00000000, + 0xFF0F0740, 0xABCD, + 0x018, 0x0001712A, + 0x0EF, 0x00000010, + 0x036, 0x00004BFB, + 0x036, 0x0000CBFB, + 0x036, 0x00014BFB, + 0x036, 0x0001CBFB, + 0x036, 0x00024F4B, + 0x036, 0x0002CF4B, + 0x036, 0x00034F4B, + 0x036, 0x0003CF4B, + 0x036, 0x00044F4B, + 0x036, 0x0004CF4B, + 0x036, 0x00054F4B, + 0x036, 0x0005CF4B, + 0xFF0F02C0, 0xCDEF, + 0x018, 0x0001712A, + 0x0EF, 0x00000010, + 0x036, 0x00004BFB, + 0x036, 0x0000CBFB, + 0x036, 0x00014BFB, + 0x036, 0x0001CBFB, + 0x036, 0x00024F4B, + 0x036, 0x0002CF4B, + 0x036, 0x00034F4B, + 0x036, 0x0003CF4B, + 0x036, 0x00044F4B, + 0x036, 0x0004CF4B, + 0x036, 0x00054F4B, + 0x036, 0x0005CF4B, + 0xFF0F01C0, 0xCDEF, + 0x018, 0x0001712A, + 0x0EF, 0x00000010, + 0x036, 0x00004BFB, + 0x036, 0x0000CBFB, + 0x036, 0x00014BFB, + 0x036, 0x0001CBFB, + 0x036, 0x00024F4B, + 0x036, 0x0002CF4B, + 0x036, 0x00034F4B, + 0x036, 0x0003CF4B, + 0x036, 0x00044F4B, + 0x036, 0x0004CF4B, + 0x036, 0x00054F4B, + 0x036, 0x0005CF4B, + 0xFF0F07D8, 0xCDEF, + 0x018, 0x0001712A, + 0x0EF, 0x00000010, + 0x036, 0x00004BFB, + 0x036, 0x0000CBFB, + 0x036, 0x00014BFB, + 0x036, 0x0001CBFB, + 0x036, 0x00024F4B, + 0x036, 0x0002CF4B, + 0x036, 0x00034F4B, + 0x036, 0x0003CF4B, + 0x036, 0x00044F4B, + 0x036, 0x0004CF4B, + 0x036, 0x00054F4B, + 0x036, 0x0005CF4B, + 0xFF0F07D0, 0xCDEF, + 0x018, 0x0001712A, + 0x0EF, 0x00000010, + 0x036, 0x00004BFB, + 0x036, 0x0000CBFB, + 0x036, 0x00014BFB, + 0x036, 0x0001CBFB, + 0x036, 0x00024F4B, + 0x036, 0x0002CF4B, + 0x036, 0x00034F4B, + 0x036, 0x0003CF4B, + 0x036, 0x00044F4B, + 0x036, 0x0004CF4B, + 0x036, 0x00054F4B, + 0x036, 0x0005CF4B, + 0xCDCDCDCD, 0xCDCD, + 0x018, 0x0001712A, + 0x0EF, 0x00000010, + 0x036, 0x00084EB4, + 0x036, 0x0008CC35, + 0x036, 0x00094C35, + 0x036, 0x0009CC35, + 0x036, 0x000A4935, + 0x036, 0x000ACC35, + 0x036, 0x000B4C35, + 0x036, 0x000BCC35, + 0x036, 0x000C4EB4, + 0x036, 0x000CCEB5, + 0x036, 0x000D4EB5, + 0x036, 0x000DCEB5, + 0xFF0F0740, 0xDEAD, + 0x0EF, 0x00000000, + 0x0EF, 0x00000008, + 0xFF0F0740, 0xABCD, + 0x03C, 0x000002CC, + 0x03C, 0x00000522, + 0x03C, 0x00000902, + 0xFF0F02C0, 0xCDEF, + 0x03C, 0x000002CC, + 0x03C, 0x00000522, + 0x03C, 0x00000902, + 0xFF0F01C0, 0xCDEF, + 0x03C, 0x000002CC, + 0x03C, 0x00000522, + 0x03C, 0x00000902, + 0xFF0F07D8, 0xCDEF, + 0x03C, 0x000002CC, + 0x03C, 0x00000522, + 0x03C, 0x00000902, + 0xFF0F07D0, 0xCDEF, + 0x03C, 0x000002CC, + 0x03C, 0x00000522, + 0x03C, 0x00000902, + 0xCDCDCDCD, 0xCDCD, + 0x03C, 0x000002A8, + 0x03C, 0x000005A2, + 0x03C, 0x00000880, + 0xFF0F0740, 0xDEAD, + 0x0EF, 0x00000000, + 0x018, 0x0001712A, + 0x0EF, 0x00000002, + 0x0DF, 0x00000080, + 0x01F, 0x00040064, + 0xFF0F0740, 0xABCD, + 0x061, 0x000FDD43, + 0x062, 0x00038F4B, + 0x063, 0x00032117, + 0x064, 0x000194AC, + 0x065, 0x000931D1, + 0xFF0F02C0, 0xCDEF, + 0x061, 0x000FDD43, + 0x062, 0x00038F4B, + 0x063, 0x00032117, + 0x064, 0x000194AC, + 0x065, 0x000931D1, + 0xFF0F01C0, 0xCDEF, + 0x061, 0x000FDD43, + 0x062, 0x00038F4B, + 0x063, 0x00032117, + 0x064, 0x000194AC, + 0x065, 0x000931D1, + 0xFF0F07D8, 0xCDEF, + 0x061, 0x000FDD43, + 0x062, 0x00038F4B, + 0x063, 0x00032117, + 0x064, 0x000194AC, + 0x065, 0x000931D1, + 0xFF0F07D0, 0xCDEF, + 0x061, 0x000FDD43, + 0x062, 0x00038F4B, + 0x063, 0x00032117, + 0x064, 0x000194AC, + 0x065, 0x000931D1, + 0xCDCDCDCD, 0xCDCD, + 0x061, 0x000E5D53, + 0x062, 0x00038FCD, + 0x063, 0x000314EB, + 0x064, 0x000196AC, + 0x065, 0x000911D7, + 0xFF0F0740, 0xDEAD, + 0x008, 0x00008400, + 0x01C, 0x000739D2, + 0x0B4, 0x0001E78D, + 0x018, 0x0001F12A, + 0x0FE, 0x00000000, + 0x0FE, 0x00000000, + 0x0FE, 0x00000000, + 0x0FE, 0x00000000, + 0x0B4, 0x0001A78D, + 0x018, 0x0001712A, +}; + +u32 RTL8812AE_RADIOB_ARRAY[] = { + 0x056, 0x00051CF2, + 0x066, 0x00040000, + 0x089, 0x00000080, + 0xFF0F0740, 0xABCD, + 0x086, 0x00014B38, + 0xFF0F01C0, 0xCDEF, + 0x086, 0x00014B38, + 0xFF0F02C0, 0xCDEF, + 0x086, 0x00014B38, + 0xFF0F07D8, 0xCDEF, + 0x086, 0x00014B3A, + 0xFF0F07D0, 0xCDEF, + 0x086, 0x00014B3A, + 0xCDCDCDCD, 0xCDCD, + 0x086, 0x00014B38, + 0xFF0F0740, 0xDEAD, + 0x018, 0x00000006, + 0x0EF, 0x00002000, + 0xFF0F07D8, 0xABCD, + 0x03B, 0x0003F218, + 0x03B, 0x00030A58, + 0x03B, 0x0002FA58, + 0x03B, 0x00022590, + 0x03B, 0x0001FA50, + 0x03B, 0x00010248, + 0x03B, 0x00008240, + 0xFF0F07D0, 0xCDEF, + 0x03B, 0x0003F218, + 0x03B, 0x00030A58, + 0x03B, 0x0002FA58, + 0x03B, 0x00022590, + 0x03B, 0x0001FA50, + 0x03B, 0x00010248, + 0x03B, 0x00008240, + 0xCDCDCDCD, 0xCDCD, + 0x03B, 0x00038A58, + 0x03B, 0x00037A58, + 0x03B, 0x0002A590, + 0x03B, 0x00027A50, + 0x03B, 0x00018248, + 0x03B, 0x00010240, + 0x03B, 0x00008240, + 0xFF0F07D8, 0xDEAD, + 0x0EF, 0x00000100, + 0xFF0F07D8, 0xABCD, + 0x034, 0x0000A4EE, + 0x034, 0x00009076, + 0x034, 0x00008073, + 0x034, 0x00007070, + 0x034, 0x0000606D, + 0x034, 0x0000506A, + 0x034, 0x00004049, + 0x034, 0x00003046, + 0x034, 0x00002028, + 0x034, 0x00001025, + 0x034, 0x00000022, + 0xCDCDCDCD, 0xCDCD, + 0x034, 0x0000ADF4, + 0x034, 0x00009DF1, + 0x034, 0x00008DEE, + 0x034, 0x00007DEB, + 0x034, 0x00006DE8, + 0x034, 0x00005CEC, + 0x034, 0x00004CE9, + 0x034, 0x000034EA, + 0x034, 0x000024E7, + 0x034, 0x0000146B, + 0x034, 0x0000006D, + 0xFF0F07D8, 0xDEAD, + 0x0EF, 0x00000000, + 0x0EF, 0x000020A2, + 0x0DF, 0x00000080, + 0x035, 0x00000192, + 0x035, 0x00008192, + 0x035, 0x00010192, + 0x036, 0x00000024, + 0x036, 0x00008024, + 0x036, 0x00010024, + 0x036, 0x00018024, + 0x0EF, 0x00000000, + 0x051, 0x00000C21, + 0x052, 0x000006D9, + 0x053, 0x000FC649, + 0x054, 0x0000017E, + 0x0EF, 0x00000002, + 0x008, 0x00008400, + 0x018, 0x0001712A, + 0x0EF, 0x00001000, + 0x03A, 0x00000080, + 0x03B, 0x0003A02C, + 0x03C, 0x00004000, + 0x03A, 0x00000400, + 0x03B, 0x0003202C, + 0x03C, 0x00010000, + 0x03A, 0x000000A0, + 0x03B, 0x0002B064, + 0x03C, 0x00004000, + 0x03A, 0x000000D8, + 0x03B, 0x00023070, + 0x03C, 0x00004000, + 0x03A, 0x00000468, + 0x03B, 0x0001B870, + 0x03C, 0x00010000, + 0x03A, 0x00000098, + 0x03B, 0x00012085, + 0x03C, 0x000E4000, + 0x03A, 0x00000418, + 0x03B, 0x0000A080, + 0x03C, 0x000F0000, + 0x03A, 0x00000418, + 0x03B, 0x00002080, + 0x03C, 0x00010000, + 0x03A, 0x00000080, + 0x03B, 0x0007A02C, + 0x03C, 0x00004000, + 0x03A, 0x00000400, + 0x03B, 0x0007202C, + 0x03C, 0x00010000, + 0x03A, 0x000000A0, + 0x03B, 0x0006B064, + 0x03C, 0x00004000, + 0x03A, 0x000000D8, + 0x03B, 0x00063070, + 0x03C, 0x00004000, + 0x03A, 0x00000468, + 0x03B, 0x0005B870, + 0x03C, 0x00010000, + 0x03A, 0x00000098, + 0x03B, 0x00052085, + 0x03C, 0x000E4000, + 0x03A, 0x00000418, + 0x03B, 0x0004A080, + 0x03C, 0x000F0000, + 0x03A, 0x00000418, + 0x03B, 0x00042080, + 0x03C, 0x00010000, + 0x03A, 0x00000080, + 0x03B, 0x000BA02C, + 0x03C, 0x00004000, + 0x03A, 0x00000400, + 0x03B, 0x000B202C, + 0x03C, 0x00010000, + 0x03A, 0x000000A0, + 0x03B, 0x000AB064, + 0x03C, 0x00004000, + 0x03A, 0x000000D8, + 0x03B, 0x000A3070, + 0x03C, 0x00004000, + 0x03A, 0x00000468, + 0x03B, 0x0009B870, + 0x03C, 0x00010000, + 0x03A, 0x00000098, + 0x03B, 0x00092085, + 0x03C, 0x000E4000, + 0x03A, 0x00000418, + 0x03B, 0x0008A080, + 0x03C, 0x000F0000, + 0x03A, 0x00000418, + 0x03B, 0x00082080, + 0x03C, 0x00010000, + 0x0EF, 0x00001100, + 0xFF0F0740, 0xABCD, + 0x034, 0x0004A0B2, + 0x034, 0x000490AF, + 0x034, 0x00048070, + 0x034, 0x0004706D, + 0x034, 0x00046050, + 0x034, 0x0004504D, + 0x034, 0x0004404A, + 0x034, 0x00043047, + 0x034, 0x0004200A, + 0x034, 0x00041007, + 0x034, 0x00040004, + 0xFF0F01C0, 0xCDEF, + 0x034, 0x0004A0B2, + 0x034, 0x000490AF, + 0x034, 0x00048070, + 0x034, 0x0004706D, + 0x034, 0x00046050, + 0x034, 0x0004504D, + 0x034, 0x0004404A, + 0x034, 0x00043047, + 0x034, 0x0004200A, + 0x034, 0x00041007, + 0x034, 0x00040004, + 0xFF0F02C0, 0xCDEF, + 0x034, 0x0004A0B2, + 0x034, 0x000490AF, + 0x034, 0x00048070, + 0x034, 0x0004706D, + 0x034, 0x00046050, + 0x034, 0x0004504D, + 0x034, 0x0004404A, + 0x034, 0x00043047, + 0x034, 0x0004200A, + 0x034, 0x00041007, + 0x034, 0x00040004, + 0xFF0F07D8, 0xCDEF, + 0x034, 0x0004A0B2, + 0x034, 0x000490AF, + 0x034, 0x00048070, + 0x034, 0x0004706D, + 0x034, 0x00046050, + 0x034, 0x0004504D, + 0x034, 0x0004404A, + 0x034, 0x00043047, + 0x034, 0x0004200A, + 0x034, 0x00041007, + 0x034, 0x00040004, + 0xFF0F07D0, 0xCDEF, + 0x034, 0x0004A0B2, + 0x034, 0x000490AF, + 0x034, 0x00048070, + 0x034, 0x0004706D, + 0x034, 0x00046050, + 0x034, 0x0004504D, + 0x034, 0x0004404A, + 0x034, 0x00043047, + 0x034, 0x0004200A, + 0x034, 0x00041007, + 0x034, 0x00040004, + 0xCDCDCDCD, 0xCDCD, + 0x034, 0x0004ADF5, + 0x034, 0x00049DF2, + 0x034, 0x00048DEF, + 0x034, 0x00047DEC, + 0x034, 0x00046DE9, + 0x034, 0x00045DC9, + 0x034, 0x00044CE8, + 0x034, 0x000438CA, + 0x034, 0x00042889, + 0x034, 0x0004184A, + 0x034, 0x0004044A, + 0xFF0F0740, 0xDEAD, + 0xFF0F0740, 0xABCD, + 0x034, 0x0002A0B2, + 0x034, 0x000290AF, + 0x034, 0x00028070, + 0x034, 0x0002706D, + 0x034, 0x00026050, + 0x034, 0x0002504D, + 0x034, 0x0002404A, + 0x034, 0x00023047, + 0x034, 0x0002200A, + 0x034, 0x00021007, + 0x034, 0x00020004, + 0xFF0F01C0, 0xCDEF, + 0x034, 0x0002A0B2, + 0x034, 0x000290AF, + 0x034, 0x00028070, + 0x034, 0x0002706D, + 0x034, 0x00026050, + 0x034, 0x0002504D, + 0x034, 0x0002404A, + 0x034, 0x00023047, + 0x034, 0x0002200A, + 0x034, 0x00021007, + 0x034, 0x00020004, + 0xFF0F02C0, 0xCDEF, + 0x034, 0x0002A0B2, + 0x034, 0x000290AF, + 0x034, 0x00028070, + 0x034, 0x0002706D, + 0x034, 0x00026050, + 0x034, 0x0002504D, + 0x034, 0x0002404A, + 0x034, 0x00023047, + 0x034, 0x0002200A, + 0x034, 0x00021007, + 0x034, 0x00020004, + 0xFF0F07D8, 0xCDEF, + 0x034, 0x0002A0B2, + 0x034, 0x000290AF, + 0x034, 0x00028070, + 0x034, 0x0002706D, + 0x034, 0x00026050, + 0x034, 0x0002504D, + 0x034, 0x0002404A, + 0x034, 0x00023047, + 0x034, 0x0002200A, + 0x034, 0x00021007, + 0x034, 0x00020004, + 0xFF0F07D0, 0xCDEF, + 0x034, 0x0002A0B2, + 0x034, 0x000290AF, + 0x034, 0x00028070, + 0x034, 0x0002706D, + 0x034, 0x00026050, + 0x034, 0x0002504D, + 0x034, 0x0002404A, + 0x034, 0x00023047, + 0x034, 0x0002200A, + 0x034, 0x00021007, + 0x034, 0x00020004, + 0xCDCDCDCD, 0xCDCD, + 0x034, 0x0002ADF5, + 0x034, 0x00029DF2, + 0x034, 0x00028DEF, + 0x034, 0x00027DEC, + 0x034, 0x00026DE9, + 0x034, 0x00025DC9, + 0x034, 0x00024CE8, + 0x034, 0x000238CA, + 0x034, 0x00022889, + 0x034, 0x0002184A, + 0x034, 0x0002044A, + 0xFF0F0740, 0xDEAD, + 0xFF0F0740, 0xABCD, + 0x034, 0x0000A0B2, + 0x034, 0x000090AF, + 0x034, 0x00008070, + 0x034, 0x0000706D, + 0x034, 0x00006050, + 0x034, 0x0000504D, + 0x034, 0x0000404A, + 0x034, 0x00003047, + 0x034, 0x0000200A, + 0x034, 0x00001007, + 0x034, 0x00000004, + 0xFF0F01C0, 0xCDEF, + 0x034, 0x0000A0B2, + 0x034, 0x000090AF, + 0x034, 0x00008070, + 0x034, 0x0000706D, + 0x034, 0x00006050, + 0x034, 0x0000504D, + 0x034, 0x0000404A, + 0x034, 0x00003047, + 0x034, 0x0000200A, + 0x034, 0x00001007, + 0x034, 0x00000004, + 0xFF0F02C0, 0xCDEF, + 0x034, 0x0000A0B2, + 0x034, 0x000090AF, + 0x034, 0x00008070, + 0x034, 0x0000706D, + 0x034, 0x00006050, + 0x034, 0x0000504D, + 0x034, 0x0000404A, + 0x034, 0x00003047, + 0x034, 0x0000200A, + 0x034, 0x00001007, + 0x034, 0x00000004, + 0xFF0F07D8, 0xCDEF, + 0x034, 0x0000A0B2, + 0x034, 0x000090AF, + 0x034, 0x00008070, + 0x034, 0x0000706D, + 0x034, 0x00006050, + 0x034, 0x0000504D, + 0x034, 0x0000404A, + 0x034, 0x00003047, + 0x034, 0x0000200A, + 0x034, 0x00001007, + 0x034, 0x00000004, + 0xFF0F07D0, 0xCDEF, + 0x034, 0x0000A0B2, + 0x034, 0x000090AF, + 0x034, 0x00008070, + 0x034, 0x0000706D, + 0x034, 0x00006050, + 0x034, 0x0000504D, + 0x034, 0x0000404A, + 0x034, 0x00003047, + 0x034, 0x0000200A, + 0x034, 0x00001007, + 0x034, 0x00000004, + 0xCDCDCDCD, 0xCDCD, + 0x034, 0x0000AFF7, + 0x034, 0x00009DF7, + 0x034, 0x00008DF4, + 0x034, 0x00007DF1, + 0x034, 0x00006DEE, + 0x034, 0x00005DCD, + 0x034, 0x00004CEB, + 0x034, 0x000038CC, + 0x034, 0x0000288B, + 0x034, 0x0000184C, + 0x034, 0x0000044C, + 0xFF0F0740, 0xDEAD, + 0x0EF, 0x00000000, + 0xFF0F0740, 0xABCD, + 0x018, 0x0001712A, + 0x0EF, 0x00000040, + 0x035, 0x000001C5, + 0x035, 0x000081C5, + 0x035, 0x000101C5, + 0x035, 0x00020174, + 0x035, 0x00028174, + 0x035, 0x00030174, + 0x035, 0x00040185, + 0x035, 0x00048185, + 0x035, 0x00050185, + 0x0EF, 0x00000000, + 0xFF0F01C0, 0xCDEF, + 0x018, 0x0001712A, + 0x0EF, 0x00000040, + 0x035, 0x000001C5, + 0x035, 0x000081C5, + 0x035, 0x000101C5, + 0x035, 0x00020174, + 0x035, 0x00028174, + 0x035, 0x00030174, + 0x035, 0x00040185, + 0x035, 0x00048185, + 0x035, 0x00050185, + 0x0EF, 0x00000000, + 0xFF0F02C0, 0xCDEF, + 0x018, 0x0001712A, + 0x0EF, 0x00000040, + 0x035, 0x000001C5, + 0x035, 0x000081C5, + 0x035, 0x000101C5, + 0x035, 0x00020174, + 0x035, 0x00028174, + 0x035, 0x00030174, + 0x035, 0x00040185, + 0x035, 0x00048185, + 0x035, 0x00050185, + 0x0EF, 0x00000000, + 0xFF0F07D8, 0xCDEF, + 0x018, 0x0001712A, + 0x0EF, 0x00000040, + 0x035, 0x000001C5, + 0x035, 0x000081C5, + 0x035, 0x000101C5, + 0x035, 0x00020174, + 0x035, 0x00028174, + 0x035, 0x00030174, + 0x035, 0x00040185, + 0x035, 0x00048185, + 0x035, 0x00050185, + 0x0EF, 0x00000000, + 0xFF0F07D0, 0xCDEF, + 0x018, 0x0001712A, + 0x0EF, 0x00000040, + 0x035, 0x000001C5, + 0x035, 0x000081C5, + 0x035, 0x000101C5, + 0x035, 0x00020174, + 0x035, 0x00028174, + 0x035, 0x00030174, + 0x035, 0x00040185, + 0x035, 0x00048185, + 0x035, 0x00050185, + 0x0EF, 0x00000000, + 0xCDCDCDCD, 0xCDCD, + 0x018, 0x0001712A, + 0x0EF, 0x00000040, + 0x035, 0x00000186, + 0x035, 0x00008186, + 0x035, 0x00010185, + 0x035, 0x000201D5, + 0x035, 0x000281D5, + 0x035, 0x000301D5, + 0x035, 0x000401D5, + 0x035, 0x000481D5, + 0x035, 0x000501D5, + 0x0EF, 0x00000000, + 0xFF0F0740, 0xDEAD, + 0xFF0F0740, 0xABCD, + 0x018, 0x0001712A, + 0x0EF, 0x00000010, + 0x036, 0x00005B8B, + 0x036, 0x0000DB8B, + 0x036, 0x00015B8B, + 0x036, 0x0001DB8B, + 0x036, 0x000262DB, + 0x036, 0x0002E2DB, + 0x036, 0x000362DB, + 0x036, 0x0003E2DB, + 0x036, 0x0004553B, + 0x036, 0x0004D53B, + 0x036, 0x0005553B, + 0x036, 0x0005D53B, + 0xFF0F01C0, 0xCDEF, + 0x018, 0x0001712A, + 0x0EF, 0x00000010, + 0x036, 0x00005B8B, + 0x036, 0x0000DB8B, + 0x036, 0x00015B8B, + 0x036, 0x0001DB8B, + 0x036, 0x000262DB, + 0x036, 0x0002E2DB, + 0x036, 0x000362DB, + 0x036, 0x0003E2DB, + 0x036, 0x0004553B, + 0x036, 0x0004D53B, + 0x036, 0x0005553B, + 0x036, 0x0005D53B, + 0xFF0F02C0, 0xCDEF, + 0x018, 0x0001712A, + 0x0EF, 0x00000010, + 0x036, 0x00005B8B, + 0x036, 0x0000DB8B, + 0x036, 0x00015B8B, + 0x036, 0x0001DB8B, + 0x036, 0x000262DB, + 0x036, 0x0002E2DB, + 0x036, 0x000362DB, + 0x036, 0x0003E2DB, + 0x036, 0x0004553B, + 0x036, 0x0004D53B, + 0x036, 0x0005553B, + 0x036, 0x0005D53B, + 0xFF0F07D8, 0xCDEF, + 0x018, 0x0001712A, + 0x0EF, 0x00000010, + 0x036, 0x00005B8B, + 0x036, 0x0000DB8B, + 0x036, 0x00015B8B, + 0x036, 0x0001DB8B, + 0x036, 0x000262DB, + 0x036, 0x0002E2DB, + 0x036, 0x000362DB, + 0x036, 0x0003E2DB, + 0x036, 0x0004553B, + 0x036, 0x0004D53B, + 0x036, 0x0005553B, + 0x036, 0x0005D53B, + 0xFF0F07D0, 0xCDEF, + 0x018, 0x0001712A, + 0x0EF, 0x00000010, + 0x036, 0x00005B8B, + 0x036, 0x0000DB8B, + 0x036, 0x00015B8B, + 0x036, 0x0001DB8B, + 0x036, 0x000262DB, + 0x036, 0x0002E2DB, + 0x036, 0x000362DB, + 0x036, 0x0003E2DB, + 0x036, 0x0004553B, + 0x036, 0x0004D53B, + 0x036, 0x0005553B, + 0x036, 0x0005D53B, + 0xCDCDCDCD, 0xCDCD, + 0x018, 0x0001712A, + 0x0EF, 0x00000010, + 0x036, 0x00084EB4, + 0x036, 0x0008C9B4, + 0x036, 0x000949B4, + 0x036, 0x0009C9B4, + 0x036, 0x000A4935, + 0x036, 0x000AC935, + 0x036, 0x000B4935, + 0x036, 0x000BC935, + 0x036, 0x000C4EB4, + 0x036, 0x000CCEB4, + 0x036, 0x000D4EB4, + 0x036, 0x000DCEB4, + 0xFF0F0740, 0xDEAD, + 0x0EF, 0x00000000, + 0x0EF, 0x00000008, + 0xFF0F0740, 0xABCD, + 0x03C, 0x000002DC, + 0x03C, 0x00000524, + 0x03C, 0x00000902, + 0xFF0F01C0, 0xCDEF, + 0x03C, 0x000002DC, + 0x03C, 0x00000524, + 0x03C, 0x00000902, + 0xFF0F02C0, 0xCDEF, + 0x03C, 0x000002DC, + 0x03C, 0x00000524, + 0x03C, 0x00000902, + 0xFF0F07D8, 0xCDEF, + 0x03C, 0x000002DC, + 0x03C, 0x00000524, + 0x03C, 0x00000902, + 0xFF0F07D0, 0xCDEF, + 0x03C, 0x000002DC, + 0x03C, 0x00000524, + 0x03C, 0x00000902, + 0xCDCDCDCD, 0xCDCD, + 0x03C, 0x000002AA, + 0x03C, 0x000005A2, + 0x03C, 0x00000880, + 0xFF0F0740, 0xDEAD, + 0x0EF, 0x00000000, + 0x018, 0x0001712A, + 0x0EF, 0x00000002, + 0x0DF, 0x00000080, + 0xFF0F0740, 0xABCD, + 0x061, 0x000EAC43, + 0x062, 0x00038F47, + 0x063, 0x00031157, + 0x064, 0x0001C4AC, + 0x065, 0x000931D1, + 0xFF0F01C0, 0xCDEF, + 0x061, 0x000EAC43, + 0x062, 0x00038F47, + 0x063, 0x00031157, + 0x064, 0x0001C4AC, + 0x065, 0x000931D1, + 0xFF0F02C0, 0xCDEF, + 0x061, 0x000EAC43, + 0x062, 0x00038F47, + 0x063, 0x00031157, + 0x064, 0x0001C4AC, + 0x065, 0x000931D1, + 0xFF0F07D8, 0xCDEF, + 0x061, 0x000EAC43, + 0x062, 0x00038F47, + 0x063, 0x00031157, + 0x064, 0x0001C4AC, + 0x065, 0x000931D1, + 0xFF0F07D0, 0xCDEF, + 0x061, 0x000EAC43, + 0x062, 0x00038F47, + 0x063, 0x00031157, + 0x064, 0x0001C4AC, + 0x065, 0x000931D1, + 0xCDCDCDCD, 0xCDCD, + 0x061, 0x000E5D53, + 0x062, 0x00038FCD, + 0x063, 0x000314EB, + 0x064, 0x000196AC, + 0x065, 0x000931D7, + 0xFF0F0740, 0xDEAD, + 0x008, 0x00008400, +}; + +u32 RTL8821AE_RADIOA_ARRAY[] = { + 0x018, 0x0001712A, + 0x056, 0x00051CF2, + 0x066, 0x00040000, + 0x000, 0x00010000, + 0x01E, 0x00080000, + 0x082, 0x00000830, + 0x083, 0x00021800, + 0x084, 0x00028000, + 0x085, 0x00048000, + 0x086, 0x00094838, + 0x087, 0x00044980, + 0x088, 0x00048000, + 0x089, 0x0000D480, + 0x08A, 0x00042240, + 0x08B, 0x000F0380, + 0x08C, 0x00090000, + 0x08D, 0x00022852, + 0x08E, 0x00065540, + 0x08F, 0x00088001, + 0x0EF, 0x00020000, + 0x03E, 0x00000380, + 0x03F, 0x00090018, + 0x03E, 0x00020380, + 0x03F, 0x000A0018, + 0x03E, 0x00040308, + 0x03F, 0x000A0018, + 0x03E, 0x00060018, + 0x03F, 0x000A0018, + 0x0EF, 0x00000000, + 0x018, 0x0001712A, + 0x089, 0x00000080, + 0x08B, 0x00080180, + 0x0EF, 0x00001000, + 0x03A, 0x00000244, + 0x03B, 0x00038027, + 0x03C, 0x00082000, + 0x03A, 0x00000244, + 0x03B, 0x00030113, + 0x03C, 0x00082000, + 0x03A, 0x0000014C, + 0x03B, 0x00028027, + 0x03C, 0x00082000, + 0x03A, 0x000000CC, + 0x03B, 0x00027027, + 0x03C, 0x00042000, + 0x03A, 0x0000014C, + 0x03B, 0x0001F913, + 0x03C, 0x00042000, + 0x03A, 0x0000010C, + 0x03B, 0x00017F10, + 0x03C, 0x00012000, + 0x03A, 0x000000D0, + 0x03B, 0x00008027, + 0x03C, 0x000CA000, + 0x03A, 0x00000244, + 0x03B, 0x00078027, + 0x03C, 0x00082000, + 0x03A, 0x00000244, + 0x03B, 0x00070113, + 0x03C, 0x00082000, + 0x03A, 0x0000014C, + 0x03B, 0x00068027, + 0x03C, 0x00082000, + 0x03A, 0x000000CC, + 0x03B, 0x00067027, + 0x03C, 0x00042000, + 0x03A, 0x0000014C, + 0x03B, 0x0005F913, + 0x03C, 0x00042000, + 0x03A, 0x0000010C, + 0x03B, 0x00057F10, + 0x03C, 0x00012000, + 0x03A, 0x000000D0, + 0x03B, 0x00048027, + 0x03C, 0x000CA000, + 0x03A, 0x00000244, + 0x03B, 0x000B8027, + 0x03C, 0x00082000, + 0x03A, 0x00000244, + 0x03B, 0x000B0113, + 0x03C, 0x00082000, + 0x03A, 0x0000014C, + 0x03B, 0x000A8027, + 0x03C, 0x00082000, + 0x03A, 0x000000CC, + 0x03B, 0x000A7027, + 0x03C, 0x00042000, + 0x03A, 0x0000014C, + 0x03B, 0x0009F913, + 0x03C, 0x00042000, + 0x03A, 0x0000010C, + 0x03B, 0x00097F10, + 0x03C, 0x00012000, + 0x03A, 0x000000D0, + 0x03B, 0x00088027, + 0x03C, 0x000CA000, + 0x0EF, 0x00000000, + 0x0EF, 0x00001100, + 0xFF0F0104, 0xABCD, + 0x034, 0x0004ADF3, + 0x034, 0x00049DF0, + 0xFF0F0204, 0xCDEF, + 0x034, 0x0004ADF3, + 0x034, 0x00049DF0, + 0xFF0F0404, 0xCDEF, + 0x034, 0x0004ADF3, + 0x034, 0x00049DF0, + 0xFF0F0200, 0xCDEF, + 0x034, 0x0004ADF5, + 0x034, 0x00049DF2, + 0xFF0F02C0, 0xCDEF, + 0x034, 0x0004A0F3, + 0x034, 0x000490B1, + 0xCDCDCDCD, 0xCDCD, + 0x034, 0x0004ADF7, + 0x034, 0x00049DF3, + 0xFF0F0104, 0xDEAD, + 0xFF0F0104, 0xABCD, + 0x034, 0x00048DED, + 0x034, 0x00047DEA, + 0x034, 0x00046DE7, + 0x034, 0x00045CE9, + 0x034, 0x00044CE6, + 0x034, 0x000438C6, + 0x034, 0x00042886, + 0x034, 0x00041486, + 0x034, 0x00040447, + 0xFF0F0204, 0xCDEF, + 0x034, 0x00048DED, + 0x034, 0x00047DEA, + 0x034, 0x00046DE7, + 0x034, 0x00045CE9, + 0x034, 0x00044CE6, + 0x034, 0x000438C6, + 0x034, 0x00042886, + 0x034, 0x00041486, + 0x034, 0x00040447, + 0xFF0F0404, 0xCDEF, + 0x034, 0x00048DED, + 0x034, 0x00047DEA, + 0x034, 0x00046DE7, + 0x034, 0x00045CE9, + 0x034, 0x00044CE6, + 0x034, 0x000438C6, + 0x034, 0x00042886, + 0x034, 0x00041486, + 0x034, 0x00040447, + 0xFF0F02C0, 0xCDEF, + 0x034, 0x000480AE, + 0x034, 0x000470AB, + 0x034, 0x0004608B, + 0x034, 0x00045069, + 0x034, 0x00044048, + 0x034, 0x00043045, + 0x034, 0x00042026, + 0x034, 0x00041023, + 0x034, 0x00040002, + 0xCDCDCDCD, 0xCDCD, + 0x034, 0x00048DEF, + 0x034, 0x00047DEC, + 0x034, 0x00046DE9, + 0x034, 0x00045CCB, + 0x034, 0x0004488D, + 0x034, 0x0004348D, + 0x034, 0x0004248A, + 0x034, 0x0004108D, + 0x034, 0x0004008A, + 0xFF0F0104, 0xDEAD, + 0xFF0F0200, 0xABCD, + 0x034, 0x0002ADF4, + 0xFF0F02C0, 0xCDEF, + 0x034, 0x0002A0F3, + 0xCDCDCDCD, 0xCDCD, + 0x034, 0x0002ADF7, + 0xFF0F0200, 0xDEAD, + 0xFF0F0104, 0xABCD, + 0x034, 0x00029DF4, + 0xFF0F0204, 0xCDEF, + 0x034, 0x00029DF4, + 0xFF0F0404, 0xCDEF, + 0x034, 0x00029DF4, + 0xFF0F0200, 0xCDEF, + 0x034, 0x00029DF1, + 0xFF0F02C0, 0xCDEF, + 0x034, 0x000290F0, + 0xCDCDCDCD, 0xCDCD, + 0x034, 0x00029DF2, + 0xFF0F0104, 0xDEAD, + 0xFF0F0104, 0xABCD, + 0x034, 0x00028DF1, + 0x034, 0x00027DEE, + 0x034, 0x00026DEB, + 0x034, 0x00025CEC, + 0x034, 0x00024CE9, + 0x034, 0x000238CA, + 0x034, 0x00022889, + 0x034, 0x00021489, + 0x034, 0x0002044A, + 0xFF0F0204, 0xCDEF, + 0x034, 0x00028DF1, + 0x034, 0x00027DEE, + 0x034, 0x00026DEB, + 0x034, 0x00025CEC, + 0x034, 0x00024CE9, + 0x034, 0x000238CA, + 0x034, 0x00022889, + 0x034, 0x00021489, + 0x034, 0x0002044A, + 0xFF0F0404, 0xCDEF, + 0x034, 0x00028DF1, + 0x034, 0x00027DEE, + 0x034, 0x00026DEB, + 0x034, 0x00025CEC, + 0x034, 0x00024CE9, + 0x034, 0x000238CA, + 0x034, 0x00022889, + 0x034, 0x00021489, + 0x034, 0x0002044A, + 0xFF0F02C0, 0xCDEF, + 0x034, 0x000280AF, + 0x034, 0x000270AC, + 0x034, 0x0002608B, + 0x034, 0x00025069, + 0x034, 0x00024048, + 0x034, 0x00023045, + 0x034, 0x00022026, + 0x034, 0x00021023, + 0x034, 0x00020002, + 0xCDCDCDCD, 0xCDCD, + 0x034, 0x00028DEE, + 0x034, 0x00027DEB, + 0x034, 0x00026CCD, + 0x034, 0x00025CCA, + 0x034, 0x0002488C, + 0x034, 0x0002384C, + 0x034, 0x00022849, + 0x034, 0x00021449, + 0x034, 0x0002004D, + 0xFF0F0104, 0xDEAD, + 0xFF0F02C0, 0xABCD, + 0x034, 0x0000A0D7, + 0x034, 0x000090D3, + 0x034, 0x000080B1, + 0x034, 0x000070AE, + 0xCDCDCDCD, 0xCDCD, + 0x034, 0x0000ADF7, + 0x034, 0x00009DF4, + 0x034, 0x00008DF1, + 0x034, 0x00007DEE, + 0xFF0F02C0, 0xDEAD, + 0xFF0F0104, 0xABCD, + 0x034, 0x00006DEB, + 0x034, 0x00005CEC, + 0x034, 0x00004CE9, + 0x034, 0x000038CA, + 0x034, 0x00002889, + 0x034, 0x00001489, + 0x034, 0x0000044A, + 0xFF0F0204, 0xCDEF, + 0x034, 0x00006DEB, + 0x034, 0x00005CEC, + 0x034, 0x00004CE9, + 0x034, 0x000038CA, + 0x034, 0x00002889, + 0x034, 0x00001489, + 0x034, 0x0000044A, + 0xFF0F0404, 0xCDEF, + 0x034, 0x00006DEB, + 0x034, 0x00005CEC, + 0x034, 0x00004CE9, + 0x034, 0x000038CA, + 0x034, 0x00002889, + 0x034, 0x00001489, + 0x034, 0x0000044A, + 0xFF0F02C0, 0xCDEF, + 0x034, 0x0000608D, + 0x034, 0x0000506B, + 0x034, 0x0000404A, + 0x034, 0x00003047, + 0x034, 0x00002044, + 0x034, 0x00001025, + 0x034, 0x00000004, + 0xCDCDCDCD, 0xCDCD, + 0x034, 0x00006DCD, + 0x034, 0x00005CCD, + 0x034, 0x00004CCA, + 0x034, 0x0000388C, + 0x034, 0x00002888, + 0x034, 0x00001488, + 0x034, 0x00000486, + 0xFF0F0104, 0xDEAD, + 0x0EF, 0x00000000, + 0x018, 0x0001712A, + 0x0EF, 0x00000040, + 0xFF0F0104, 0xABCD, + 0x035, 0x00000187, + 0x035, 0x00008187, + 0x035, 0x00010187, + 0x035, 0x00020188, + 0x035, 0x00028188, + 0x035, 0x00030188, + 0x035, 0x00040188, + 0x035, 0x00048188, + 0x035, 0x00050188, + 0xFF0F0204, 0xCDEF, + 0x035, 0x00000187, + 0x035, 0x00008187, + 0x035, 0x00010187, + 0x035, 0x00020188, + 0x035, 0x00028188, + 0x035, 0x00030188, + 0x035, 0x00040188, + 0x035, 0x00048188, + 0x035, 0x00050188, + 0xFF0F0404, 0xCDEF, + 0x035, 0x00000187, + 0x035, 0x00008187, + 0x035, 0x00010187, + 0x035, 0x00020188, + 0x035, 0x00028188, + 0x035, 0x00030188, + 0x035, 0x00040188, + 0x035, 0x00048188, + 0x035, 0x00050188, + 0xCDCDCDCD, 0xCDCD, + 0x035, 0x00000145, + 0x035, 0x00008145, + 0x035, 0x00010145, + 0x035, 0x00020196, + 0x035, 0x00028196, + 0x035, 0x00030196, + 0x035, 0x000401C7, + 0x035, 0x000481C7, + 0x035, 0x000501C7, + 0xFF0F0104, 0xDEAD, + 0x0EF, 0x00000000, + 0x018, 0x0001712A, + 0x0EF, 0x00000010, + 0xFF0F0104, 0xABCD, + 0x036, 0x00085733, + 0x036, 0x0008D733, + 0x036, 0x00095733, + 0x036, 0x0009D733, + 0x036, 0x000A64B4, + 0x036, 0x000AE4B4, + 0x036, 0x000B64B4, + 0x036, 0x000BE4B4, + 0x036, 0x000C64B4, + 0x036, 0x000CE4B4, + 0x036, 0x000D64B4, + 0x036, 0x000DE4B4, + 0xFF0F0204, 0xCDEF, + 0x036, 0x00085733, + 0x036, 0x0008D733, + 0x036, 0x00095733, + 0x036, 0x0009D733, + 0x036, 0x000A64B4, + 0x036, 0x000AE4B4, + 0x036, 0x000B64B4, + 0x036, 0x000BE4B4, + 0x036, 0x000C64B4, + 0x036, 0x000CE4B4, + 0x036, 0x000D64B4, + 0x036, 0x000DE4B4, + 0xFF0F0404, 0xCDEF, + 0x036, 0x00085733, + 0x036, 0x0008D733, + 0x036, 0x00095733, + 0x036, 0x0009D733, + 0x036, 0x000A64B4, + 0x036, 0x000AE4B4, + 0x036, 0x000B64B4, + 0x036, 0x000BE4B4, + 0x036, 0x000C64B4, + 0x036, 0x000CE4B4, + 0x036, 0x000D64B4, + 0x036, 0x000DE4B4, + 0xCDCDCDCD, 0xCDCD, + 0x036, 0x000056B3, + 0x036, 0x0000D6B3, + 0x036, 0x000156B3, + 0x036, 0x0001D6B3, + 0x036, 0x00026634, + 0x036, 0x0002E634, + 0x036, 0x00036634, + 0x036, 0x0003E634, + 0x036, 0x000467B4, + 0x036, 0x0004E7B4, + 0x036, 0x000567B4, + 0x036, 0x0005E7B4, + 0xFF0F0104, 0xDEAD, + 0x0EF, 0x00000000, + 0x0EF, 0x00000008, + 0xFF0F0104, 0xABCD, + 0x03C, 0x000001C8, + 0x03C, 0x00000492, + 0xFF0F0204, 0xCDEF, + 0x03C, 0x000001C8, + 0x03C, 0x00000492, + 0xFF0F0404, 0xCDEF, + 0x03C, 0x000001C8, + 0x03C, 0x00000492, + 0xCDCDCDCD, 0xCDCD, + 0x03C, 0x0000022A, + 0x03C, 0x00000594, + 0xFF0F0104, 0xDEAD, + 0xFF0F0104, 0xABCD, + 0x03C, 0x00000800, + 0xFF0F0204, 0xCDEF, + 0x03C, 0x00000800, + 0xFF0F0404, 0xCDEF, + 0x03C, 0x00000800, + 0xFF0F02C0, 0xCDEF, + 0x03C, 0x00000820, + 0xCDCDCDCD, 0xCDCD, + 0x03C, 0x00000900, + 0xFF0F0104, 0xDEAD, + 0x0EF, 0x00000000, + 0x018, 0x0001712A, + 0x0EF, 0x00000002, + 0xFF0F0104, 0xABCD, + 0x008, 0x0004E400, + 0xFF0F0204, 0xCDEF, + 0x008, 0x0004E400, + 0xFF0F0404, 0xCDEF, + 0x008, 0x0004E400, + 0xCDCDCDCD, 0xCDCD, + 0x008, 0x00002000, + 0xFF0F0104, 0xDEAD, + 0x0EF, 0x00000000, + 0x0DF, 0x000000C0, + 0x01F, 0x00040064, + 0xFF0F0104, 0xABCD, + 0x058, 0x000A7284, + 0x059, 0x000600EC, + 0xFF0F0204, 0xCDEF, + 0x058, 0x000A7284, + 0x059, 0x000600EC, + 0xFF0F0404, 0xCDEF, + 0x058, 0x000A7284, + 0x059, 0x000600EC, + 0xCDCDCDCD, 0xCDCD, + 0x058, 0x00081184, + 0x059, 0x0006016C, + 0xFF0F0104, 0xDEAD, + 0xFF0F0104, 0xABCD, + 0x061, 0x000E8D73, + 0x062, 0x00093FC5, + 0xFF0F0204, 0xCDEF, + 0x061, 0x000E8D73, + 0x062, 0x00093FC5, + 0xFF0F0404, 0xCDEF, + 0x061, 0x000E8D73, + 0x062, 0x00093FC5, + 0xCDCDCDCD, 0xCDCD, + 0x061, 0x000EAD53, + 0x062, 0x00093BC4, + 0xFF0F0104, 0xDEAD, + 0xFF0F0104, 0xABCD, + 0x063, 0x000110E9, + 0xFF0F0204, 0xCDEF, + 0x063, 0x000110E9, + 0xFF0F0404, 0xCDEF, + 0x063, 0x000110E9, + 0xFF0F0200, 0xCDEF, + 0x063, 0x000710E9, + 0xFF0F02C0, 0xCDEF, + 0x063, 0x000110E9, + 0xCDCDCDCD, 0xCDCD, + 0x063, 0x000714E9, + 0xFF0F0104, 0xDEAD, + 0xFF0F0104, 0xABCD, + 0x064, 0x0001C27C, + 0xFF0F0204, 0xCDEF, + 0x064, 0x0001C27C, + 0xFF0F0404, 0xCDEF, + 0x064, 0x0001C27C, + 0xCDCDCDCD, 0xCDCD, + 0x064, 0x0001C67C, + 0xFF0F0104, 0xDEAD, + 0xFF0F0200, 0xABCD, + 0x065, 0x00093016, + 0xFF0F02C0, 0xCDEF, + 0x065, 0x00093015, + 0xCDCDCDCD, 0xCDCD, + 0x065, 0x00091016, + 0xFF0F0200, 0xDEAD, + 0x018, 0x00000006, + 0x0EF, 0x00002000, + 0x03B, 0x0003824B, + 0x03B, 0x0003024B, + 0x03B, 0x0002844B, + 0x03B, 0x00020F4B, + 0x03B, 0x00018F4B, + 0x03B, 0x000104B2, + 0x03B, 0x00008049, + 0x03B, 0x00000148, + 0x03B, 0x0007824B, + 0x03B, 0x0007024B, + 0x03B, 0x0006824B, + 0x03B, 0x00060F4B, + 0x03B, 0x00058F4B, + 0x03B, 0x000504B2, + 0x03B, 0x00048049, + 0x03B, 0x00040148, + 0x0EF, 0x00000000, + 0x0EF, 0x00000100, + 0x034, 0x0000ADF3, + 0x034, 0x00009DEF, + 0x034, 0x00008DEC, + 0x034, 0x00007DE9, + 0x034, 0x00006CED, + 0x034, 0x00005CE9, + 0x034, 0x000044E9, + 0x034, 0x000034E6, + 0x034, 0x0000246A, + 0x034, 0x00001467, + 0x034, 0x00000068, + 0x0EF, 0x00000000, + 0x0ED, 0x00000010, + 0x044, 0x0000ADF2, + 0x044, 0x00009DEF, + 0x044, 0x00008DEC, + 0x044, 0x00007DE9, + 0x044, 0x00006CEC, + 0x044, 0x00005CE9, + 0x044, 0x000044EC, + 0x044, 0x000034E9, + 0x044, 0x0000246C, + 0x044, 0x00001469, + 0x044, 0x0000006C, + 0x0ED, 0x00000000, + 0x0ED, 0x00000001, + 0x040, 0x00038DA7, + 0x040, 0x000300C2, + 0x040, 0x000288E2, + 0x040, 0x000200B8, + 0x040, 0x000188A5, + 0x040, 0x00010FBC, + 0x040, 0x00008F71, + 0x040, 0x00000240, + 0x0ED, 0x00000000, + 0x0EF, 0x000020A2, + 0x0DF, 0x00000080, + 0x035, 0x00000120, + 0x035, 0x00008120, + 0x035, 0x00010120, + 0x036, 0x00000085, + 0x036, 0x00008085, + 0x036, 0x00010085, + 0x036, 0x00018085, + 0x0EF, 0x00000000, + 0x051, 0x00000C31, + 0x052, 0x00000622, + 0x053, 0x000FC70B, + 0x054, 0x0000017E, + 0x056, 0x00051DF3, + 0x051, 0x00000C01, + 0x052, 0x000006D6, + 0x053, 0x000FC649, + 0x070, 0x00049661, + 0x071, 0x0007843E, + 0x072, 0x00000382, + 0x074, 0x00051400, + 0x035, 0x00000160, + 0x035, 0x00008160, + 0x035, 0x00010160, + 0x036, 0x00000124, + 0x036, 0x00008124, + 0x036, 0x00010124, + 0x036, 0x00018124, + 0x0ED, 0x0000000C, + 0x045, 0x00000140, + 0x045, 0x00008140, + 0x045, 0x00010140, + 0x046, 0x00000124, + 0x046, 0x00008124, + 0x046, 0x00010124, + 0x046, 0x00018124, + 0x0DF, 0x00000088, + 0x0B3, 0x000F0E18, + 0x0B4, 0x0001214C, + 0x0B7, 0x0003000C, + 0x01C, 0x000539D2, + 0x018, 0x0001F12A, + 0x0FE, 0x00000000, + 0x0FE, 0x00000000, + 0x018, 0x0001712A, +}; + +u32 RTL8812AE_MAC_REG_ARRAY[] = { + 0x010, 0x0000000C, + 0xFF0F0180, 0xABCD, + 0x025, 0x0000000F, + 0xFF0F01C0, 0xCDEF, + 0x025, 0x0000000F, + 0xCDCDCDCD, 0xCDCD, + 0x025, 0x0000006F, + 0xFF0F0180, 0xDEAD, + 0x072, 0x00000000, + 0x428, 0x0000000A, + 0x429, 0x00000010, + 0x430, 0x00000000, + 0x431, 0x00000000, + 0x432, 0x00000000, + 0x433, 0x00000001, + 0x434, 0x00000004, + 0x435, 0x00000005, + 0x436, 0x00000007, + 0x437, 0x00000008, + 0x43C, 0x00000004, + 0x43D, 0x00000005, + 0x43E, 0x00000007, + 0x43F, 0x00000008, + 0x440, 0x0000005D, + 0x441, 0x00000001, + 0x442, 0x00000000, + 0x444, 0x00000010, + 0x445, 0x00000000, + 0x446, 0x00000000, + 0x447, 0x00000000, + 0x448, 0x00000000, + 0x449, 0x000000F0, + 0x44A, 0x0000000F, + 0x44B, 0x0000003E, + 0x44C, 0x00000010, + 0x44D, 0x00000000, + 0x44E, 0x00000000, + 0x44F, 0x00000000, + 0x450, 0x00000000, + 0x451, 0x000000F0, + 0x452, 0x0000000F, + 0x453, 0x00000000, + 0x45B, 0x00000080, + 0x460, 0x00000066, + 0x461, 0x00000066, + 0x4C8, 0x000000FF, + 0x4C9, 0x00000008, + 0x4CC, 0x000000FF, + 0x4CD, 0x000000FF, + 0x4CE, 0x00000001, + 0x500, 0x00000026, + 0x501, 0x000000A2, + 0x502, 0x0000002F, + 0x503, 0x00000000, + 0x504, 0x00000028, + 0x505, 0x000000A3, + 0x506, 0x0000005E, + 0x507, 0x00000000, + 0x508, 0x0000002B, + 0x509, 0x000000A4, + 0x50A, 0x0000005E, + 0x50B, 0x00000000, + 0x50C, 0x0000004F, + 0x50D, 0x000000A4, + 0x50E, 0x00000000, + 0x50F, 0x00000000, + 0x512, 0x0000001C, + 0x514, 0x0000000A, + 0x516, 0x0000000A, + 0x525, 0x0000004F, + 0x550, 0x00000010, + 0x551, 0x00000010, + 0x559, 0x00000002, + 0x55C, 0x00000050, + 0x55D, 0x000000FF, + 0x604, 0x00000001, + 0x605, 0x00000030, + 0x607, 0x00000003, + 0x608, 0x0000000E, + 0x609, 0x0000002A, + 0x620, 0x000000FF, + 0x621, 0x000000FF, + 0x622, 0x000000FF, + 0x623, 0x000000FF, + 0x624, 0x000000FF, + 0x625, 0x000000FF, + 0x626, 0x000000FF, + 0x627, 0x000000FF, + 0x638, 0x00000050, + 0x63C, 0x0000000A, + 0x63D, 0x0000000A, + 0x63E, 0x0000000E, + 0x63F, 0x0000000E, + 0x640, 0x00000080, + 0x642, 0x00000040, + 0x643, 0x00000000, + 0x652, 0x000000C8, + 0x66E, 0x00000005, + 0x700, 0x00000021, + 0x701, 0x00000043, + 0x702, 0x00000065, + 0x703, 0x00000087, + 0x708, 0x00000021, + 0x709, 0x00000043, + 0x70A, 0x00000065, + 0x70B, 0x00000087, + 0x718, 0x00000040, +}; + +u32 RTL8821AE_MAC_REG_ARRAY[] = { + 0x428, 0x0000000A, + 0x429, 0x00000010, + 0x430, 0x00000000, + 0x431, 0x00000000, + 0x432, 0x00000000, + 0x433, 0x00000001, + 0x434, 0x00000004, + 0x435, 0x00000005, + 0x436, 0x00000007, + 0x437, 0x00000008, + 0x43C, 0x00000004, + 0x43D, 0x00000005, + 0x43E, 0x00000007, + 0x43F, 0x00000008, + 0x440, 0x0000005D, + 0x441, 0x00000001, + 0x442, 0x00000000, + 0x444, 0x00000010, + 0x445, 0x00000000, + 0x446, 0x00000000, + 0x447, 0x00000000, + 0x448, 0x00000000, + 0x449, 0x000000F0, + 0x44A, 0x0000000F, + 0x44B, 0x0000003E, + 0x44C, 0x00000010, + 0x44D, 0x00000000, + 0x44E, 0x00000000, + 0x44F, 0x00000000, + 0x450, 0x00000000, + 0x451, 0x000000F0, + 0x452, 0x0000000F, + 0x453, 0x00000000, + 0x456, 0x0000005E, + 0x460, 0x00000066, + 0x461, 0x00000066, + 0x4C8, 0x0000003F, + 0x4C9, 0x000000FF, + 0x4CC, 0x000000FF, + 0x4CD, 0x000000FF, + 0x4CE, 0x00000001, + 0x500, 0x00000026, + 0x501, 0x000000A2, + 0x502, 0x0000002F, + 0x503, 0x00000000, + 0x504, 0x00000028, + 0x505, 0x000000A3, + 0x506, 0x0000005E, + 0x507, 0x00000000, + 0x508, 0x0000002B, + 0x509, 0x000000A4, + 0x50A, 0x0000005E, + 0x50B, 0x00000000, + 0x50C, 0x0000004F, + 0x50D, 0x000000A4, + 0x50E, 0x00000000, + 0x50F, 0x00000000, + 0x512, 0x0000001C, + 0x514, 0x0000000A, + 0x516, 0x0000000A, + 0x525, 0x0000004F, + 0x550, 0x00000010, + 0x551, 0x00000010, + 0x559, 0x00000002, + 0x55C, 0x00000050, + 0x55D, 0x000000FF, + 0x605, 0x00000030, + 0x607, 0x00000007, + 0x608, 0x0000000E, + 0x609, 0x0000002A, + 0x620, 0x000000FF, + 0x621, 0x000000FF, + 0x622, 0x000000FF, + 0x623, 0x000000FF, + 0x624, 0x000000FF, + 0x625, 0x000000FF, + 0x626, 0x000000FF, + 0x627, 0x000000FF, + 0x638, 0x00000050, + 0x63C, 0x0000000A, + 0x63D, 0x0000000A, + 0x63E, 0x0000000E, + 0x63F, 0x0000000E, + 0x640, 0x00000040, + 0x642, 0x00000040, + 0x643, 0x00000000, + 0x652, 0x000000C8, + 0x66E, 0x00000005, + 0x700, 0x00000021, + 0x701, 0x00000043, + 0x702, 0x00000065, + 0x703, 0x00000087, + 0x708, 0x00000021, + 0x709, 0x00000043, + 0x70A, 0x00000065, + 0x70B, 0x00000087, + 0x718, 0x00000040, +}; + +u32 RTL8812AE_AGC_TAB_ARRAY[] = { + 0xFF0F07D8, 0xABCD, + 0x81C, 0xFC000001, + 0x81C, 0xFB020001, + 0x81C, 0xFA040001, + 0x81C, 0xF9060001, + 0x81C, 0xF8080001, + 0x81C, 0xF70A0001, + 0x81C, 0xF60C0001, + 0x81C, 0xF50E0001, + 0x81C, 0xF4100001, + 0x81C, 0xF3120001, + 0x81C, 0xF2140001, + 0x81C, 0xF1160001, + 0x81C, 0xF0180001, + 0x81C, 0xEF1A0001, + 0x81C, 0xEE1C0001, + 0x81C, 0xED1E0001, + 0x81C, 0xEC200001, + 0x81C, 0xEB220001, + 0x81C, 0xEA240001, + 0x81C, 0xCD260001, + 0x81C, 0xCC280001, + 0x81C, 0xCB2A0001, + 0x81C, 0xCA2C0001, + 0x81C, 0xC92E0001, + 0x81C, 0xC8300001, + 0x81C, 0xA6320001, + 0x81C, 0xA5340001, + 0x81C, 0xA4360001, + 0x81C, 0xA3380001, + 0x81C, 0xA23A0001, + 0x81C, 0x883C0001, + 0x81C, 0x873E0001, + 0x81C, 0x86400001, + 0x81C, 0x85420001, + 0x81C, 0x84440001, + 0x81C, 0x83460001, + 0x81C, 0x82480001, + 0x81C, 0x814A0001, + 0x81C, 0x484C0001, + 0x81C, 0x474E0001, + 0x81C, 0x46500001, + 0x81C, 0x45520001, + 0x81C, 0x44540001, + 0x81C, 0x43560001, + 0x81C, 0x42580001, + 0x81C, 0x415A0001, + 0x81C, 0x255C0001, + 0x81C, 0x245E0001, + 0x81C, 0x23600001, + 0x81C, 0x22620001, + 0x81C, 0x21640001, + 0x81C, 0x21660001, + 0x81C, 0x21680001, + 0x81C, 0x216A0001, + 0x81C, 0x216C0001, + 0x81C, 0x216E0001, + 0x81C, 0x21700001, + 0x81C, 0x21720001, + 0x81C, 0x21740001, + 0x81C, 0x21760001, + 0x81C, 0x21780001, + 0x81C, 0x217A0001, + 0x81C, 0x217C0001, + 0x81C, 0x217E0001, + 0xFF0F07D0, 0xCDEF, + 0x81C, 0xF9000001, + 0x81C, 0xF8020001, + 0x81C, 0xF7040001, + 0x81C, 0xF6060001, + 0x81C, 0xF5080001, + 0x81C, 0xF40A0001, + 0x81C, 0xF30C0001, + 0x81C, 0xF20E0001, + 0x81C, 0xF1100001, + 0x81C, 0xF0120001, + 0x81C, 0xEF140001, + 0x81C, 0xEE160001, + 0x81C, 0xED180001, + 0x81C, 0xEC1A0001, + 0x81C, 0xEB1C0001, + 0x81C, 0xEA1E0001, + 0x81C, 0xCD200001, + 0x81C, 0xCC220001, + 0x81C, 0xCB240001, + 0x81C, 0xCA260001, + 0x81C, 0xC9280001, + 0x81C, 0xC82A0001, + 0x81C, 0xC72C0001, + 0x81C, 0xC62E0001, + 0x81C, 0xA5300001, + 0x81C, 0xA4320001, + 0x81C, 0xA3340001, + 0x81C, 0xA2360001, + 0x81C, 0x88380001, + 0x81C, 0x873A0001, + 0x81C, 0x863C0001, + 0x81C, 0x853E0001, + 0x81C, 0x84400001, + 0x81C, 0x83420001, + 0x81C, 0x82440001, + 0x81C, 0x81460001, + 0x81C, 0x48480001, + 0x81C, 0x474A0001, + 0x81C, 0x464C0001, + 0x81C, 0x454E0001, + 0x81C, 0x44500001, + 0x81C, 0x43520001, + 0x81C, 0x42540001, + 0x81C, 0x41560001, + 0x81C, 0x25580001, + 0x81C, 0x245A0001, + 0x81C, 0x235C0001, + 0x81C, 0x225E0001, + 0x81C, 0x21600001, + 0x81C, 0x21620001, + 0x81C, 0x21640001, + 0x81C, 0x21660001, + 0x81C, 0x21680001, + 0x81C, 0x216A0001, + 0x81C, 0x236C0001, + 0x81C, 0x226E0001, + 0x81C, 0x21700001, + 0x81C, 0x21720001, + 0x81C, 0x21740001, + 0x81C, 0x21760001, + 0x81C, 0x21780001, + 0x81C, 0x217A0001, + 0x81C, 0x217C0001, + 0x81C, 0x217E0001, + 0xCDCDCDCD, 0xCDCD, + 0x81C, 0xFF000001, + 0x81C, 0xFF020001, + 0x81C, 0xFF040001, + 0x81C, 0xFF060001, + 0x81C, 0xFF080001, + 0x81C, 0xFE0A0001, + 0x81C, 0xFD0C0001, + 0x81C, 0xFC0E0001, + 0x81C, 0xFB100001, + 0x81C, 0xFA120001, + 0x81C, 0xF9140001, + 0x81C, 0xF8160001, + 0x81C, 0xF7180001, + 0x81C, 0xF61A0001, + 0x81C, 0xF51C0001, + 0x81C, 0xF41E0001, + 0x81C, 0xF3200001, + 0x81C, 0xF2220001, + 0x81C, 0xF1240001, + 0x81C, 0xF0260001, + 0x81C, 0xEF280001, + 0x81C, 0xEE2A0001, + 0x81C, 0xED2C0001, + 0x81C, 0xEC2E0001, + 0x81C, 0xEB300001, + 0x81C, 0xEA320001, + 0x81C, 0xE9340001, + 0x81C, 0xE8360001, + 0x81C, 0xE7380001, + 0x81C, 0xE63A0001, + 0x81C, 0xE53C0001, + 0x81C, 0xC73E0001, + 0x81C, 0xC6400001, + 0x81C, 0xC5420001, + 0x81C, 0xC4440001, + 0x81C, 0xC3460001, + 0x81C, 0xC2480001, + 0x81C, 0xC14A0001, + 0x81C, 0xA74C0001, + 0x81C, 0xA64E0001, + 0x81C, 0xA5500001, + 0x81C, 0xA4520001, + 0x81C, 0xA3540001, + 0x81C, 0xA2560001, + 0x81C, 0xA1580001, + 0x81C, 0x675A0001, + 0x81C, 0x665C0001, + 0x81C, 0x655E0001, + 0x81C, 0x64600001, + 0x81C, 0x63620001, + 0x81C, 0x48640001, + 0x81C, 0x47660001, + 0x81C, 0x46680001, + 0x81C, 0x456A0001, + 0x81C, 0x446C0001, + 0x81C, 0x436E0001, + 0x81C, 0x42700001, + 0x81C, 0x41720001, + 0x81C, 0x41740001, + 0x81C, 0x41760001, + 0x81C, 0x41780001, + 0x81C, 0x417A0001, + 0x81C, 0x417C0001, + 0x81C, 0x417E0001, + 0xFF0F07D8, 0xDEAD, + 0xFF0F0180, 0xABCD, + 0x81C, 0xFC800001, + 0x81C, 0xFB820001, + 0x81C, 0xFA840001, + 0x81C, 0xF9860001, + 0x81C, 0xF8880001, + 0x81C, 0xF78A0001, + 0x81C, 0xF68C0001, + 0x81C, 0xF58E0001, + 0x81C, 0xF4900001, + 0x81C, 0xF3920001, + 0x81C, 0xF2940001, + 0x81C, 0xF1960001, + 0x81C, 0xF0980001, + 0x81C, 0xEF9A0001, + 0x81C, 0xEE9C0001, + 0x81C, 0xED9E0001, + 0x81C, 0xECA00001, + 0x81C, 0xEBA20001, + 0x81C, 0xEAA40001, + 0x81C, 0xE9A60001, + 0x81C, 0xE8A80001, + 0x81C, 0xE7AA0001, + 0x81C, 0xE6AC0001, + 0x81C, 0xE5AE0001, + 0x81C, 0xE4B00001, + 0x81C, 0xE3B20001, + 0x81C, 0xA8B40001, + 0x81C, 0xA7B60001, + 0x81C, 0xA6B80001, + 0x81C, 0xA5BA0001, + 0x81C, 0xA4BC0001, + 0x81C, 0xA3BE0001, + 0x81C, 0xA2C00001, + 0x81C, 0xA1C20001, + 0x81C, 0x68C40001, + 0x81C, 0x67C60001, + 0x81C, 0x66C80001, + 0x81C, 0x65CA0001, + 0x81C, 0x64CC0001, + 0x81C, 0x47CE0001, + 0x81C, 0x46D00001, + 0x81C, 0x45D20001, + 0x81C, 0x44D40001, + 0x81C, 0x43D60001, + 0x81C, 0x42D80001, + 0x81C, 0x08DA0001, + 0x81C, 0x07DC0001, + 0x81C, 0x06DE0001, + 0x81C, 0x05E00001, + 0x81C, 0x04E20001, + 0x81C, 0x03E40001, + 0x81C, 0x02E60001, + 0x81C, 0x01E80001, + 0x81C, 0x01EA0001, + 0x81C, 0x01EC0001, + 0x81C, 0x01EE0001, + 0x81C, 0x01F00001, + 0x81C, 0x01F20001, + 0x81C, 0x01F40001, + 0x81C, 0x01F60001, + 0x81C, 0x01F80001, + 0x81C, 0x01FA0001, + 0x81C, 0x01FC0001, + 0x81C, 0x01FE0001, + 0xFF0F0280, 0xCDEF, + 0x81C, 0xFC800001, + 0x81C, 0xFB820001, + 0x81C, 0xFA840001, + 0x81C, 0xF9860001, + 0x81C, 0xF8880001, + 0x81C, 0xF78A0001, + 0x81C, 0xF68C0001, + 0x81C, 0xF58E0001, + 0x81C, 0xF4900001, + 0x81C, 0xF3920001, + 0x81C, 0xF2940001, + 0x81C, 0xF1960001, + 0x81C, 0xF0980001, + 0x81C, 0xEF9A0001, + 0x81C, 0xEE9C0001, + 0x81C, 0xED9E0001, + 0x81C, 0xECA00001, + 0x81C, 0xEBA20001, + 0x81C, 0xEAA40001, + 0x81C, 0xE9A60001, + 0x81C, 0xE8A80001, + 0x81C, 0xE7AA0001, + 0x81C, 0xE6AC0001, + 0x81C, 0xE5AE0001, + 0x81C, 0xE4B00001, + 0x81C, 0xE3B20001, + 0x81C, 0xA8B40001, + 0x81C, 0xA7B60001, + 0x81C, 0xA6B80001, + 0x81C, 0xA5BA0001, + 0x81C, 0xA4BC0001, + 0x81C, 0xA3BE0001, + 0x81C, 0xA2C00001, + 0x81C, 0xA1C20001, + 0x81C, 0x68C40001, + 0x81C, 0x67C60001, + 0x81C, 0x66C80001, + 0x81C, 0x65CA0001, + 0x81C, 0x64CC0001, + 0x81C, 0x47CE0001, + 0x81C, 0x46D00001, + 0x81C, 0x45D20001, + 0x81C, 0x44D40001, + 0x81C, 0x43D60001, + 0x81C, 0x42D80001, + 0x81C, 0x08DA0001, + 0x81C, 0x07DC0001, + 0x81C, 0x06DE0001, + 0x81C, 0x05E00001, + 0x81C, 0x04E20001, + 0x81C, 0x03E40001, + 0x81C, 0x02E60001, + 0x81C, 0x01E80001, + 0x81C, 0x01EA0001, + 0x81C, 0x01EC0001, + 0x81C, 0x01EE0001, + 0x81C, 0x01F00001, + 0x81C, 0x01F20001, + 0x81C, 0x01F40001, + 0x81C, 0x01F60001, + 0x81C, 0x01F80001, + 0x81C, 0x01FA0001, + 0x81C, 0x01FC0001, + 0x81C, 0x01FE0001, + 0xFF0F01C0, 0xCDEF, + 0x81C, 0xFC800001, + 0x81C, 0xFB820001, + 0x81C, 0xFA840001, + 0x81C, 0xF9860001, + 0x81C, 0xF8880001, + 0x81C, 0xF78A0001, + 0x81C, 0xF68C0001, + 0x81C, 0xF58E0001, + 0x81C, 0xF4900001, + 0x81C, 0xF3920001, + 0x81C, 0xF2940001, + 0x81C, 0xF1960001, + 0x81C, 0xF0980001, + 0x81C, 0xEF9A0001, + 0x81C, 0xEE9C0001, + 0x81C, 0xED9E0001, + 0x81C, 0xECA00001, + 0x81C, 0xEBA20001, + 0x81C, 0xEAA40001, + 0x81C, 0xE9A60001, + 0x81C, 0xE8A80001, + 0x81C, 0xE7AA0001, + 0x81C, 0xE6AC0001, + 0x81C, 0xE5AE0001, + 0x81C, 0xE4B00001, + 0x81C, 0xE3B20001, + 0x81C, 0xA8B40001, + 0x81C, 0xA7B60001, + 0x81C, 0xA6B80001, + 0x81C, 0xA5BA0001, + 0x81C, 0xA4BC0001, + 0x81C, 0xA3BE0001, + 0x81C, 0xA2C00001, + 0x81C, 0xA1C20001, + 0x81C, 0x68C40001, + 0x81C, 0x67C60001, + 0x81C, 0x66C80001, + 0x81C, 0x65CA0001, + 0x81C, 0x64CC0001, + 0x81C, 0x47CE0001, + 0x81C, 0x46D00001, + 0x81C, 0x45D20001, + 0x81C, 0x44D40001, + 0x81C, 0x43D60001, + 0x81C, 0x42D80001, + 0x81C, 0x08DA0001, + 0x81C, 0x07DC0001, + 0x81C, 0x06DE0001, + 0x81C, 0x05E00001, + 0x81C, 0x04E20001, + 0x81C, 0x03E40001, + 0x81C, 0x02E60001, + 0x81C, 0x01E80001, + 0x81C, 0x01EA0001, + 0x81C, 0x01EC0001, + 0x81C, 0x01EE0001, + 0x81C, 0x01F00001, + 0x81C, 0x01F20001, + 0x81C, 0x01F40001, + 0x81C, 0x01F60001, + 0x81C, 0x01F80001, + 0x81C, 0x01FA0001, + 0x81C, 0x01FC0001, + 0x81C, 0x01FE0001, + 0xFF0F02C0, 0xCDEF, + 0x81C, 0xFC800001, + 0x81C, 0xFB820001, + 0x81C, 0xFA840001, + 0x81C, 0xF9860001, + 0x81C, 0xF8880001, + 0x81C, 0xF78A0001, + 0x81C, 0xF68C0001, + 0x81C, 0xF58E0001, + 0x81C, 0xF4900001, + 0x81C, 0xF3920001, + 0x81C, 0xF2940001, + 0x81C, 0xF1960001, + 0x81C, 0xF0980001, + 0x81C, 0xEF9A0001, + 0x81C, 0xEE9C0001, + 0x81C, 0xED9E0001, + 0x81C, 0xECA00001, + 0x81C, 0xEBA20001, + 0x81C, 0xEAA40001, + 0x81C, 0xE9A60001, + 0x81C, 0xE8A80001, + 0x81C, 0xE7AA0001, + 0x81C, 0xE6AC0001, + 0x81C, 0xE5AE0001, + 0x81C, 0xE4B00001, + 0x81C, 0xE3B20001, + 0x81C, 0xA8B40001, + 0x81C, 0xA7B60001, + 0x81C, 0xA6B80001, + 0x81C, 0xA5BA0001, + 0x81C, 0xA4BC0001, + 0x81C, 0xA3BE0001, + 0x81C, 0xA2C00001, + 0x81C, 0xA1C20001, + 0x81C, 0x68C40001, + 0x81C, 0x67C60001, + 0x81C, 0x66C80001, + 0x81C, 0x65CA0001, + 0x81C, 0x64CC0001, + 0x81C, 0x47CE0001, + 0x81C, 0x46D00001, + 0x81C, 0x45D20001, + 0x81C, 0x44D40001, + 0x81C, 0x43D60001, + 0x81C, 0x42D80001, + 0x81C, 0x08DA0001, + 0x81C, 0x07DC0001, + 0x81C, 0x06DE0001, + 0x81C, 0x05E00001, + 0x81C, 0x04E20001, + 0x81C, 0x03E40001, + 0x81C, 0x02E60001, + 0x81C, 0x01E80001, + 0x81C, 0x01EA0001, + 0x81C, 0x01EC0001, + 0x81C, 0x01EE0001, + 0x81C, 0x01F00001, + 0x81C, 0x01F20001, + 0x81C, 0x01F40001, + 0x81C, 0x01F60001, + 0x81C, 0x01F80001, + 0x81C, 0x01FA0001, + 0x81C, 0x01FC0001, + 0x81C, 0x01FE0001, + 0xFF0F07D8, 0xCDEF, + 0x81C, 0xFC800001, + 0x81C, 0xFB820001, + 0x81C, 0xFA840001, + 0x81C, 0xF9860001, + 0x81C, 0xF8880001, + 0x81C, 0xF78A0001, + 0x81C, 0xF68C0001, + 0x81C, 0xF58E0001, + 0x81C, 0xF4900001, + 0x81C, 0xF3920001, + 0x81C, 0xF2940001, + 0x81C, 0xF1960001, + 0x81C, 0xF0980001, + 0x81C, 0xEF9A0001, + 0x81C, 0xEE9C0001, + 0x81C, 0xED9E0001, + 0x81C, 0xECA00001, + 0x81C, 0xEBA20001, + 0x81C, 0xEAA40001, + 0x81C, 0xE9A60001, + 0x81C, 0xE8A80001, + 0x81C, 0xE7AA0001, + 0x81C, 0xE6AC0001, + 0x81C, 0xE5AE0001, + 0x81C, 0xE4B00001, + 0x81C, 0xE3B20001, + 0x81C, 0xA8B40001, + 0x81C, 0xA7B60001, + 0x81C, 0xA6B80001, + 0x81C, 0xA5BA0001, + 0x81C, 0xA4BC0001, + 0x81C, 0xA3BE0001, + 0x81C, 0xA2C00001, + 0x81C, 0xA1C20001, + 0x81C, 0x68C40001, + 0x81C, 0x67C60001, + 0x81C, 0x66C80001, + 0x81C, 0x65CA0001, + 0x81C, 0x64CC0001, + 0x81C, 0x47CE0001, + 0x81C, 0x46D00001, + 0x81C, 0x45D20001, + 0x81C, 0x44D40001, + 0x81C, 0x43D60001, + 0x81C, 0x42D80001, + 0x81C, 0x08DA0001, + 0x81C, 0x07DC0001, + 0x81C, 0x06DE0001, + 0x81C, 0x05E00001, + 0x81C, 0x04E20001, + 0x81C, 0x03E40001, + 0x81C, 0x02E60001, + 0x81C, 0x01E80001, + 0x81C, 0x01EA0001, + 0x81C, 0x01EC0001, + 0x81C, 0x01EE0001, + 0x81C, 0x01F00001, + 0x81C, 0x01F20001, + 0x81C, 0x01F40001, + 0x81C, 0x01F60001, + 0x81C, 0x01F80001, + 0x81C, 0x01FA0001, + 0x81C, 0x01FC0001, + 0x81C, 0x01FE0001, + 0xFF0F07D0, 0xCDEF, + 0x81C, 0xFC800001, + 0x81C, 0xFB820001, + 0x81C, 0xFA840001, + 0x81C, 0xF9860001, + 0x81C, 0xF8880001, + 0x81C, 0xF78A0001, + 0x81C, 0xF68C0001, + 0x81C, 0xF58E0001, + 0x81C, 0xF4900001, + 0x81C, 0xF3920001, + 0x81C, 0xF2940001, + 0x81C, 0xF1960001, + 0x81C, 0xF0980001, + 0x81C, 0xEF9A0001, + 0x81C, 0xEE9C0001, + 0x81C, 0xED9E0001, + 0x81C, 0xECA00001, + 0x81C, 0xEBA20001, + 0x81C, 0xEAA40001, + 0x81C, 0xE9A60001, + 0x81C, 0xE8A80001, + 0x81C, 0xE7AA0001, + 0x81C, 0xE6AC0001, + 0x81C, 0xE5AE0001, + 0x81C, 0xE4B00001, + 0x81C, 0xE3B20001, + 0x81C, 0xA8B40001, + 0x81C, 0xA7B60001, + 0x81C, 0xA6B80001, + 0x81C, 0xA5BA0001, + 0x81C, 0xA4BC0001, + 0x81C, 0xA3BE0001, + 0x81C, 0xA2C00001, + 0x81C, 0xA1C20001, + 0x81C, 0x68C40001, + 0x81C, 0x67C60001, + 0x81C, 0x66C80001, + 0x81C, 0x65CA0001, + 0x81C, 0x64CC0001, + 0x81C, 0x47CE0001, + 0x81C, 0x46D00001, + 0x81C, 0x45D20001, + 0x81C, 0x44D40001, + 0x81C, 0x43D60001, + 0x81C, 0x42D80001, + 0x81C, 0x08DA0001, + 0x81C, 0x07DC0001, + 0x81C, 0x06DE0001, + 0x81C, 0x05E00001, + 0x81C, 0x04E20001, + 0x81C, 0x03E40001, + 0x81C, 0x02E60001, + 0x81C, 0x01E80001, + 0x81C, 0x01EA0001, + 0x81C, 0x01EC0001, + 0x81C, 0x01EE0001, + 0x81C, 0x01F00001, + 0x81C, 0x01F20001, + 0x81C, 0x01F40001, + 0x81C, 0x01F60001, + 0x81C, 0x01F80001, + 0x81C, 0x01FA0001, + 0x81C, 0x01FC0001, + 0x81C, 0x01FE0001, + 0xCDCDCDCD, 0xCDCD, + 0x81C, 0xFF800001, + 0x81C, 0xFF820001, + 0x81C, 0xFF840001, + 0x81C, 0xFE860001, + 0x81C, 0xFD880001, + 0x81C, 0xFC8A0001, + 0x81C, 0xFB8C0001, + 0x81C, 0xFA8E0001, + 0x81C, 0xF9900001, + 0x81C, 0xF8920001, + 0x81C, 0xF7940001, + 0x81C, 0xF6960001, + 0x81C, 0xF5980001, + 0x81C, 0xF49A0001, + 0x81C, 0xF39C0001, + 0x81C, 0xF29E0001, + 0x81C, 0xF1A00001, + 0x81C, 0xF0A20001, + 0x81C, 0xEFA40001, + 0x81C, 0xEEA60001, + 0x81C, 0xEDA80001, + 0x81C, 0xECAA0001, + 0x81C, 0xEBAC0001, + 0x81C, 0xEAAE0001, + 0x81C, 0xE9B00001, + 0x81C, 0xE8B20001, + 0x81C, 0xE7B40001, + 0x81C, 0xE6B60001, + 0x81C, 0xE5B80001, + 0x81C, 0xE4BA0001, + 0x81C, 0xE3BC0001, + 0x81C, 0xA8BE0001, + 0x81C, 0xA7C00001, + 0x81C, 0xA6C20001, + 0x81C, 0xA5C40001, + 0x81C, 0xA4C60001, + 0x81C, 0xA3C80001, + 0x81C, 0xA2CA0001, + 0x81C, 0xA1CC0001, + 0x81C, 0x68CE0001, + 0x81C, 0x67D00001, + 0x81C, 0x66D20001, + 0x81C, 0x65D40001, + 0x81C, 0x64D60001, + 0x81C, 0x47D80001, + 0x81C, 0x46DA0001, + 0x81C, 0x45DC0001, + 0x81C, 0x44DE0001, + 0x81C, 0x43E00001, + 0x81C, 0x42E20001, + 0x81C, 0x08E40001, + 0x81C, 0x07E60001, + 0x81C, 0x06E80001, + 0x81C, 0x05EA0001, + 0x81C, 0x04EC0001, + 0x81C, 0x03EE0001, + 0x81C, 0x02F00001, + 0x81C, 0x01F20001, + 0x81C, 0x01F40001, + 0x81C, 0x01F60001, + 0x81C, 0x01F80001, + 0x81C, 0x01FA0001, + 0x81C, 0x01FC0001, + 0x81C, 0x01FE0001, + 0xFF0F0180, 0xDEAD, + 0xC50, 0x00000022, + 0xC50, 0x00000020, + 0xE50, 0x00000022, + 0xE50, 0x00000020, +}; + +u32 RTL8821AE_AGC_TAB_ARRAY[] = { + 0x81C, 0xBF000001, + 0x81C, 0xBF020001, + 0x81C, 0xBF040001, + 0x81C, 0xBF060001, + 0x81C, 0xBE080001, + 0x81C, 0xBD0A0001, + 0x81C, 0xBC0C0001, + 0x81C, 0xBA0E0001, + 0x81C, 0xB9100001, + 0x81C, 0xB8120001, + 0x81C, 0xB7140001, + 0x81C, 0xB6160001, + 0x81C, 0xB5180001, + 0x81C, 0xB41A0001, + 0x81C, 0xB31C0001, + 0x81C, 0xB21E0001, + 0x81C, 0xB1200001, + 0x81C, 0xB0220001, + 0x81C, 0xAF240001, + 0x81C, 0xAE260001, + 0x81C, 0xAD280001, + 0x81C, 0xAC2A0001, + 0x81C, 0xAB2C0001, + 0x81C, 0xAA2E0001, + 0x81C, 0xA9300001, + 0x81C, 0xA8320001, + 0x81C, 0xA7340001, + 0x81C, 0xA6360001, + 0x81C, 0xA5380001, + 0x81C, 0xA43A0001, + 0x81C, 0xA33C0001, + 0x81C, 0x673E0001, + 0x81C, 0x66400001, + 0x81C, 0x65420001, + 0x81C, 0x64440001, + 0x81C, 0x63460001, + 0x81C, 0x62480001, + 0x81C, 0x614A0001, + 0x81C, 0x474C0001, + 0x81C, 0x464E0001, + 0x81C, 0x45500001, + 0x81C, 0x44520001, + 0x81C, 0x43540001, + 0x81C, 0x42560001, + 0x81C, 0x41580001, + 0x81C, 0x285A0001, + 0x81C, 0x275C0001, + 0x81C, 0x265E0001, + 0x81C, 0x25600001, + 0x81C, 0x24620001, + 0x81C, 0x0A640001, + 0x81C, 0x09660001, + 0x81C, 0x08680001, + 0x81C, 0x076A0001, + 0x81C, 0x066C0001, + 0x81C, 0x056E0001, + 0x81C, 0x04700001, + 0x81C, 0x03720001, + 0x81C, 0x02740001, + 0x81C, 0x01760001, + 0x81C, 0x01780001, + 0x81C, 0x017A0001, + 0x81C, 0x017C0001, + 0x81C, 0x017E0001, + 0xFF0F02C0, 0xABCD, + 0x81C, 0xFB000101, + 0x81C, 0xFA020101, + 0x81C, 0xF9040101, + 0x81C, 0xF8060101, + 0x81C, 0xF7080101, + 0x81C, 0xF60A0101, + 0x81C, 0xF50C0101, + 0x81C, 0xF40E0101, + 0x81C, 0xF3100101, + 0x81C, 0xF2120101, + 0x81C, 0xF1140101, + 0x81C, 0xF0160101, + 0x81C, 0xEF180101, + 0x81C, 0xEE1A0101, + 0x81C, 0xED1C0101, + 0x81C, 0xEC1E0101, + 0x81C, 0xEB200101, + 0x81C, 0xEA220101, + 0x81C, 0xE9240101, + 0x81C, 0xE8260101, + 0x81C, 0xE7280101, + 0x81C, 0xE62A0101, + 0x81C, 0xE52C0101, + 0x81C, 0xE42E0101, + 0x81C, 0xE3300101, + 0x81C, 0xA5320101, + 0x81C, 0xA4340101, + 0x81C, 0xA3360101, + 0x81C, 0x87380101, + 0x81C, 0x863A0101, + 0x81C, 0x853C0101, + 0x81C, 0x843E0101, + 0x81C, 0x69400101, + 0x81C, 0x68420101, + 0x81C, 0x67440101, + 0x81C, 0x66460101, + 0x81C, 0x49480101, + 0x81C, 0x484A0101, + 0x81C, 0x474C0101, + 0x81C, 0x2A4E0101, + 0x81C, 0x29500101, + 0x81C, 0x28520101, + 0x81C, 0x27540101, + 0x81C, 0x26560101, + 0x81C, 0x25580101, + 0x81C, 0x245A0101, + 0x81C, 0x235C0101, + 0x81C, 0x055E0101, + 0x81C, 0x04600101, + 0x81C, 0x03620101, + 0x81C, 0x02640101, + 0x81C, 0x01660101, + 0x81C, 0x01680101, + 0x81C, 0x016A0101, + 0x81C, 0x016C0101, + 0x81C, 0x016E0101, + 0x81C, 0x01700101, + 0x81C, 0x01720101, + 0xCDCDCDCD, 0xCDCD, + 0x81C, 0xFF000101, + 0x81C, 0xFF020101, + 0x81C, 0xFE040101, + 0x81C, 0xFD060101, + 0x81C, 0xFC080101, + 0x81C, 0xFD0A0101, + 0x81C, 0xFC0C0101, + 0x81C, 0xFB0E0101, + 0x81C, 0xFA100101, + 0x81C, 0xF9120101, + 0x81C, 0xF8140101, + 0x81C, 0xF7160101, + 0x81C, 0xF6180101, + 0x81C, 0xF51A0101, + 0x81C, 0xF41C0101, + 0x81C, 0xF31E0101, + 0x81C, 0xF2200101, + 0x81C, 0xF1220101, + 0x81C, 0xF0240101, + 0x81C, 0xEF260101, + 0x81C, 0xEE280101, + 0x81C, 0xED2A0101, + 0x81C, 0xEC2C0101, + 0x81C, 0xEB2E0101, + 0x81C, 0xEA300101, + 0x81C, 0xE9320101, + 0x81C, 0xE8340101, + 0x81C, 0xE7360101, + 0x81C, 0xE6380101, + 0x81C, 0xE53A0101, + 0x81C, 0xE43C0101, + 0x81C, 0xE33E0101, + 0x81C, 0xA5400101, + 0x81C, 0xA4420101, + 0x81C, 0xA3440101, + 0x81C, 0x87460101, + 0x81C, 0x86480101, + 0x81C, 0x854A0101, + 0x81C, 0x844C0101, + 0x81C, 0x694E0101, + 0x81C, 0x68500101, + 0x81C, 0x67520101, + 0x81C, 0x66540101, + 0x81C, 0x49560101, + 0x81C, 0x48580101, + 0x81C, 0x475A0101, + 0x81C, 0x2A5C0101, + 0x81C, 0x295E0101, + 0x81C, 0x28600101, + 0x81C, 0x27620101, + 0x81C, 0x26640101, + 0x81C, 0x25660101, + 0x81C, 0x24680101, + 0x81C, 0x236A0101, + 0x81C, 0x056C0101, + 0x81C, 0x046E0101, + 0x81C, 0x03700101, + 0x81C, 0x02720101, + 0xFF0F02C0, 0xDEAD, + 0x81C, 0x01740101, + 0x81C, 0x01760101, + 0x81C, 0x01780101, + 0x81C, 0x017A0101, + 0x81C, 0x017C0101, + 0x81C, 0x017E0101, + 0xC50, 0x00000022, + 0xC50, 0x00000020, + +}; --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/table.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/table.h @@ -0,0 +1,62 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Created on 2010/ 5/18, 1:41 + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8821AE_TABLE__H_ +#define __RTL8821AE_TABLE__H_ + +#include +#define RTL8821AEPHY_REG_1TARRAYLEN 344 +extern u32 RTL8821AE_PHY_REG_ARRAY[]; +#define RTL8812AEPHY_REG_1TARRAYLEN 490 +extern u32 RTL8812AE_PHY_REG_ARRAY[]; +#define RTL8821AEPHY_REG_ARRAY_PGLEN 90 +extern u32 RTL8821AE_PHY_REG_ARRAY_PG[]; +#define RTL8812AEPHY_REG_ARRAY_PGLEN 276 +extern u32 RTL8812AE_PHY_REG_ARRAY_PG[]; +//#define RTL8723BE_RADIOA_1TARRAYLEN 206 +//extern u8 *RTL8821AE_TXPWR_LMT_ARRAY[]; +#define RTL8812AE_RADIOA_1TARRAYLEN 1264 +extern u32 RTL8812AE_RADIOA_ARRAY[]; +#define RTL8812AE_RADIOB_1TARRAYLEN 1240 +extern u32 RTL8812AE_RADIOB_ARRAY[]; +#define RTL8821AE_RADIOA_1TARRAYLEN 1176 +extern u32 RTL8821AE_RADIOA_ARRAY[]; +#define RTL8821AEMAC_1T_ARRAYLEN 194 +extern u32 RTL8821AE_MAC_REG_ARRAY[]; +#define RTL8812AEMAC_1T_ARRAYLEN 214 +extern u32 RTL8812AE_MAC_REG_ARRAY[]; +#define RTL8821AEAGCTAB_1TARRAYLEN 382 +extern u32 RTL8821AE_AGC_TAB_ARRAY[]; +#define RTL8812AEAGCTAB_1TARRAYLEN 1312 +extern u32 RTL8812AE_AGC_TAB_ARRAY[]; + + +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/trx.c +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/trx.c @@ -0,0 +1,1050 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#include "../wifi.h" +#include "../pci.h" +#include "../base.h" +#include "../stats.h" +#include "reg.h" +#include "def.h" +#include "phy.h" +#include "trx.h" +#include "led.h" +#include "dm.h" +#include "phy.h" +u8 _rtl8821ae_map_hwqueue_to_fwqueue(struct sk_buff *skb, u8 hw_queue) +{ + u16 fc = rtl_get_fc(skb); + + if (unlikely(ieee80211_is_beacon(fc))) + return QSLT_BEACON; + if (ieee80211_is_mgmt(fc) || ieee80211_is_ctl(fc)) + return QSLT_MGNT; + + return skb->priority; +} + +/* mac80211's rate_idx is like this: + * + * 2.4G band:rx_status->band == IEEE80211_BAND_2GHZ + * + * B/G rate: + * (rx_status->flag & RX_FLAG_HT) = 0, + * DESC_RATE1M-->DESC_RATE54M ==> idx is 0-->11, + * + * N rate: + * (rx_status->flag & RX_FLAG_HT) = 1, + * DESC_RATEMCS0-->DESC_RATEMCS15 ==> idx is 0-->15 + * + * 5G band:rx_status->band == IEEE80211_BAND_5GHZ + * A rate: + * (rx_status->flag & RX_FLAG_HT) = 0, + * DESC_RATE6M-->DESC_RATE54M ==> idx is 0-->7, + * + * N rate: + * (rx_status->flag & RX_FLAG_HT) = 1, + * DESC_RATEMCS0-->DESC_RATEMCS15 ==> idx is 0-->15 + */ +static int _rtl8821ae_rate_mapping(struct ieee80211_hw *hw, + bool isht, u8 desc_rate) +{ + int rate_idx; + + if (false == isht) { +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)) + if (IEEE80211_BAND_2GHZ == hw->conf.chandef.chan->band) { +#else + if (IEEE80211_BAND_2GHZ == hw->conf.channel->band) { +#endif + switch (desc_rate) { + case DESC_RATE1M: + rate_idx = 0; + break; + case DESC_RATE2M: + rate_idx = 1; + break; + case DESC_RATE5_5M: + rate_idx = 2; + break; + case DESC_RATE11M: + rate_idx = 3; + break; + case DESC_RATE6M: + rate_idx = 4; + break; + case DESC_RATE9M: + rate_idx = 5; + break; + case DESC_RATE12M: + rate_idx = 6; + break; + case DESC_RATE18M: + rate_idx = 7; + break; + case DESC_RATE24M: + rate_idx = 8; + break; + case DESC_RATE36M: + rate_idx = 9; + break; + case DESC_RATE48M: + rate_idx = 10; + break; + case DESC_RATE54M: + rate_idx = 11; + break; + default: + rate_idx = 0; + break; + } + } else { + switch (desc_rate) { + case DESC_RATE6M: + rate_idx = 0; + break; + case DESC_RATE9M: + rate_idx = 1; + break; + case DESC_RATE12M: + rate_idx = 2; + break; + case DESC_RATE18M: + rate_idx = 3; + break; + case DESC_RATE24M: + rate_idx = 4; + break; + case DESC_RATE36M: + rate_idx = 5; + break; + case DESC_RATE48M: + rate_idx = 6; + break; + case DESC_RATE54M: + rate_idx = 7; + break; + default: + rate_idx = 0; + break; + } + } + } else { + switch(desc_rate) { + case DESC_RATEMCS0: + rate_idx = 0; + break; + case DESC_RATEMCS1: + rate_idx = 1; + break; + case DESC_RATEMCS2: + rate_idx = 2; + break; + case DESC_RATEMCS3: + rate_idx = 3; + break; + case DESC_RATEMCS4: + rate_idx = 4; + break; + case DESC_RATEMCS5: + rate_idx = 5; + break; + case DESC_RATEMCS6: + rate_idx = 6; + break; + case DESC_RATEMCS7: + rate_idx = 7; + break; + case DESC_RATEMCS8: + rate_idx = 8; + break; + case DESC_RATEMCS9: + rate_idx = 9; + break; + case DESC_RATEMCS10: + rate_idx = 10; + break; + case DESC_RATEMCS11: + rate_idx = 11; + break; + case DESC_RATEMCS12: + rate_idx = 12; + break; + case DESC_RATEMCS13: + rate_idx = 13; + break; + case DESC_RATEMCS14: + rate_idx = 14; + break; + case DESC_RATEMCS15: + rate_idx = 15; + break; + default: + rate_idx = 0; + break; + } + } + return rate_idx; +} + +static void _rtl8821ae_query_rxphystatus(struct ieee80211_hw *hw, + struct rtl_stats *pstatus, u8 *pdesc, + struct rx_fwinfo_8821ae *p_drvinfo, bool bpacket_match_bssid, + bool bpacket_toself, bool b_packet_beacon) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_ps_ctl *ppsc = rtl_psc(rtlpriv); + struct phy_sts_cck_8821ae_t *cck_buf; + struct phy_status_rpt *p_phystRpt = (struct phy_status_rpt *)p_drvinfo; + struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); + char rx_pwr_all = 0, rx_pwr[4]; + u8 rf_rx_num = 0, evm, pwdb_all; + u8 i, max_spatial_stream; + u32 rssi, total_rssi = 0; + bool b_is_cck = pstatus->b_is_cck; + u8 lan_idx,vga_idx; + + /* Record it for next packet processing */ + pstatus->b_packet_matchbssid = bpacket_match_bssid; + pstatus->b_packet_toself = bpacket_toself; + pstatus->b_packet_beacon = b_packet_beacon; + pstatus->rx_mimo_signalquality[0] = -1; + pstatus->rx_mimo_signalquality[1] = -1; + + if (b_is_cck) { + u8 cck_highpwr; + u8 cck_agc_rpt; + /* CCK Driver info Structure is not the same as OFDM packet. */ + cck_buf = (struct phy_sts_cck_8821ae_t *)p_drvinfo; + cck_agc_rpt = cck_buf->cck_agc_rpt; + + /* (1)Hardware does not provide RSSI for CCK */ + /* (2)PWDB, Average PWDB cacluated by + * hardware (for rate adaptive) */ + if (ppsc->rfpwr_state == ERFON) + cck_highpwr = (u8) rtl_get_bbreg(hw, RFPGA0_XA_HSSIPARAMETER2, + BIT(9)); + else + cck_highpwr = false; + + lan_idx = ((cck_agc_rpt & 0xE0) >> 5); + vga_idx = (cck_agc_rpt & 0x1f); + switch (lan_idx) { + case 7: + if(vga_idx <= 27) + rx_pwr_all = -100 + 2*(27-vga_idx); /*VGA_idx = 27~2*/ + else + rx_pwr_all = -100; + break; + case 6: + rx_pwr_all = -48 + 2*(2-vga_idx); /*VGA_idx = 2~0*/ + break; + case 5: + rx_pwr_all = -42 + 2*(7-vga_idx); /*VGA_idx = 7~5*/ + break; + case 4: + rx_pwr_all = -36 + 2*(7-vga_idx); /*VGA_idx = 7~4*/ + break; + case 3: + rx_pwr_all = -24 + 2*(7-vga_idx); /*VGA_idx = 7~0*/ + break; + case 2: + if(cck_highpwr) + rx_pwr_all = -12 + 2*(5-vga_idx); /*VGA_idx = 5~0*/ + else + rx_pwr_all = -6+ 2*(5-vga_idx); + break; + case 1: + rx_pwr_all = 8-2*vga_idx; + break; + case 0: + rx_pwr_all = 14-2*vga_idx; + break; + default: + break; + } + rx_pwr_all += 6; + pwdb_all = rtl_query_rxpwrpercentage(rx_pwr_all); + /* CCK gain is smaller than OFDM/MCS gain, */ + /* so we add gain diff by experiences, + * the val is 6 */ + pwdb_all += 6; + if(pwdb_all > 100) + pwdb_all = 100; + /* modify the offset to make the same + * gain index with OFDM. */ + if(pwdb_all > 34 && pwdb_all <= 42) + pwdb_all -= 2; + else if(pwdb_all > 26 && pwdb_all <= 34) + pwdb_all -= 6; + else if(pwdb_all > 14 && pwdb_all <= 26) + pwdb_all -= 8; + else if(pwdb_all > 4 && pwdb_all <= 14) + pwdb_all -= 4; + if (cck_highpwr == false){ + if (pwdb_all >= 80) + pwdb_all =((pwdb_all-80)<<1)+((pwdb_all-80)>>1)+80; + else if((pwdb_all <= 78) && (pwdb_all >= 20)) + pwdb_all += 3; + if(pwdb_all>100) + pwdb_all = 100; + } + + pstatus->rx_pwdb_all = pwdb_all; + pstatus->recvsignalpower = rx_pwr_all; + + /* (3) Get Signal Quality (EVM) */ + if (bpacket_match_bssid) { + u8 sq; + + if (pstatus->rx_pwdb_all > 40) + sq = 100; + else { + sq = cck_buf->sq_rpt; + if (sq > 64) + sq = 0; + else if (sq < 20) + sq = 100; + else + sq = ((64 - sq) * 100) / 44; + } + + pstatus->signalquality = sq; + pstatus->rx_mimo_signalquality[0] = sq; + pstatus->rx_mimo_signalquality[1] = -1; + } + } else { + rtlpriv->dm.brfpath_rxenable[0] = + rtlpriv->dm.brfpath_rxenable[1] = true; + + /* (1)Get RSSI for HT rate */ + for (i = RF90_PATH_A; i < RF6052_MAX_PATH; i++) { + + /* we will judge RF RX path now. */ + if (rtlpriv->dm.brfpath_rxenable[i]) + rf_rx_num++; + + rx_pwr[i] = ((p_drvinfo->gain_trsw[i] & 0x3f) * 2) - 110; + + /* Translate DBM to percentage. */ + rssi = rtl_query_rxpwrpercentage(rx_pwr[i]); + total_rssi += rssi; + + /* Get Rx snr value in DB */ + rtlpriv->stats.rx_snr_db[i] = (long)(p_drvinfo->rxsnr[i] / 2); + + /* Record Signal Strength for next packet */ + if (bpacket_match_bssid) + pstatus->rx_mimo_signalstrength[i] = (u8) rssi; + } + + /* (2)PWDB, Average PWDB cacluated by + * hardware (for rate adaptive) */ + rx_pwr_all = ((p_drvinfo->pwdb_all >> 1) & 0x7f) - 110; + + pwdb_all = rtl_query_rxpwrpercentage(rx_pwr_all); + pstatus->rx_pwdb_all = pwdb_all; + pstatus->rxpower = rx_pwr_all; + pstatus->recvsignalpower = rx_pwr_all; + + /* (3)EVM of HT rate */ + if (pstatus->b_is_ht && pstatus->rate >= DESC_RATEMCS8 && + pstatus->rate <= DESC_RATEMCS15) + max_spatial_stream = 2; + else + max_spatial_stream = 1; + + for (i = 0; i < max_spatial_stream; i++) { + evm = rtl_evm_db_to_percentage(p_drvinfo->rxevm[i]); + + if (bpacket_match_bssid) { + /* Fill value in RFD, Get the first + * spatial stream only */ + if (i == 0) + pstatus->signalquality = (u8) (evm & 0xff); + pstatus->rx_mimo_signalquality[i] = (u8) (evm & 0xff); + } + } + } + + /* UI BSS List signal strength(in percentage), + * make it good looking, from 0~100. */ + if (b_is_cck) + pstatus->signalstrength = (u8)(rtl_signal_scale_mapping(hw, + pwdb_all)); + else if (rf_rx_num != 0) + pstatus->signalstrength = (u8)(rtl_signal_scale_mapping(hw, + total_rssi /= rf_rx_num)); + /*HW antenna diversity*/ + rtldm->fat_table.antsel_rx_keep_0 = p_phystRpt->ant_sel; + rtldm->fat_table.antsel_rx_keep_1 = p_phystRpt->ant_sel_b; + rtldm->fat_table.antsel_rx_keep_2 = p_phystRpt->antsel_rx_keep_2; + +} +#if 0 +static void _rtl8821ae_smart_antenna(struct ieee80211_hw *hw, + struct rtl_stats *pstatus) +{ + struct rtl_dm *rtldm= rtl_dm(rtl_priv(hw)); + struct rtl_efuse *rtlefuse =rtl_efuse(rtl_priv(hw)); + u8 antsel_tr_mux; + struct fast_ant_trainning *pfat_table = &(rtldm->fat_table); + + if (rtlefuse->antenna_div_type == CG_TRX_SMART_ANTDIV) { + if (pfat_table->fat_state == FAT_TRAINING_STATE) { + if (pstatus->b_packet_toself) { + antsel_tr_mux = (pfat_table->antsel_rx_keep_2 << 2) | + (pfat_table->antsel_rx_keep_1 << 1) | pfat_table->antsel_rx_keep_0; + pfat_table->ant_sum_rssi[antsel_tr_mux] += pstatus->rx_pwdb_all; + pfat_table->ant_rssi_cnt[antsel_tr_mux]++; + } + } + } else if ((rtlefuse->antenna_div_type == CG_TRX_HW_ANTDIV) || + (rtlefuse->antenna_div_type == CGCS_RX_HW_ANTDIV)) { + if (pstatus->b_packet_toself || pstatus->b_packet_matchbssid) { + antsel_tr_mux = (pfat_table->antsel_rx_keep_2 << 2) | + (pfat_table->antsel_rx_keep_1 << 1) | pfat_table->antsel_rx_keep_0; + rtl8821ae_dm_ant_sel_statistics(hw, antsel_tr_mux, 0, pstatus->rx_pwdb_all); + } + + } +} +#endif +static void _rtl8821ae_translate_rx_signal_stuff(struct ieee80211_hw *hw, + struct sk_buff *skb, struct rtl_stats *pstatus, + u8 *pdesc, struct rx_fwinfo_8821ae *p_drvinfo) +{ + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); + struct ieee80211_hdr *hdr; + u8 *tmp_buf; + u8 *praddr; + u8 *psaddr; + u16 fc, type; + bool b_packet_matchbssid, b_packet_toself, b_packet_beacon; + + tmp_buf = skb->data + pstatus->rx_drvinfo_size + pstatus->rx_bufshift; + + hdr = (struct ieee80211_hdr *)tmp_buf; + fc = le16_to_cpu(hdr->frame_control); + type = WLAN_FC_GET_TYPE(fc); + praddr = hdr->addr1; + psaddr = ieee80211_get_SA(hdr); + memcpy(pstatus->psaddr, psaddr, ETH_ALEN); + + b_packet_matchbssid = ((IEEE80211_FTYPE_CTL != type) && + (!ether_addr_equal(mac->bssid, (fc & IEEE80211_FCTL_TODS) ? + hdr->addr1 : (fc & IEEE80211_FCTL_FROMDS) ? + hdr->addr2 : hdr->addr3)) && (!pstatus->b_hwerror) && + (!pstatus->b_crc) && (!pstatus->b_icv)); + + b_packet_toself = b_packet_matchbssid && + (!ether_addr_equal(praddr, rtlefuse->dev_addr)); + + if (ieee80211_is_beacon(fc)) + b_packet_beacon = true; + else + b_packet_beacon = false; + + if (b_packet_beacon && b_packet_matchbssid) + rtl_priv(hw)->dm.dbginfo.num_qry_beacon_pkt++; + + _rtl8821ae_query_rxphystatus(hw, pstatus, pdesc, p_drvinfo, + b_packet_matchbssid, b_packet_toself, + b_packet_beacon); + /*_rtl8821ae_smart_antenna(hw, pstatus); */ + rtl_process_phyinfo(hw, tmp_buf, pstatus); +} + +static void _rtl8821ae_insert_emcontent(struct rtl_tcb_desc *ptcb_desc, + u8 *virtualaddress) +{ + u32 dwtmp = 0; + memset(virtualaddress, 0, 8); + + SET_EARLYMODE_PKTNUM(virtualaddress, ptcb_desc->empkt_num); + if (ptcb_desc->empkt_num == 1) + dwtmp = ptcb_desc->empkt_len[0]; + else { + dwtmp = ptcb_desc->empkt_len[0]; + dwtmp += ((dwtmp%4)?(4-dwtmp%4):0)+4; + dwtmp += ptcb_desc->empkt_len[1]; + } + SET_EARLYMODE_LEN0(virtualaddress, dwtmp); + + if (ptcb_desc->empkt_num <= 3) + dwtmp = ptcb_desc->empkt_len[2]; + else { + dwtmp = ptcb_desc->empkt_len[2]; + dwtmp += ((dwtmp%4)?(4-dwtmp%4):0)+4; + dwtmp += ptcb_desc->empkt_len[3]; + } + SET_EARLYMODE_LEN1(virtualaddress, dwtmp); + if (ptcb_desc->empkt_num <= 5) + dwtmp = ptcb_desc->empkt_len[4]; + else { + dwtmp = ptcb_desc->empkt_len[4]; + dwtmp += ((dwtmp%4)?(4-dwtmp%4):0)+4; + dwtmp += ptcb_desc->empkt_len[5]; + } + SET_EARLYMODE_LEN2_1(virtualaddress, dwtmp & 0xF); + SET_EARLYMODE_LEN2_2(virtualaddress, dwtmp >> 4); + if (ptcb_desc->empkt_num <= 7) + dwtmp = ptcb_desc->empkt_len[6]; + else { + dwtmp = ptcb_desc->empkt_len[6]; + dwtmp += ((dwtmp%4)?(4-dwtmp%4):0)+4; + dwtmp += ptcb_desc->empkt_len[7]; + } + SET_EARLYMODE_LEN3(virtualaddress, dwtmp); + if (ptcb_desc->empkt_num <= 9) + dwtmp = ptcb_desc->empkt_len[8]; + else { + dwtmp = ptcb_desc->empkt_len[8]; + dwtmp += ((dwtmp%4)?(4-dwtmp%4):0)+4; + dwtmp += ptcb_desc->empkt_len[9]; + } + SET_EARLYMODE_LEN4(virtualaddress, dwtmp); +} + +bool rtl8821ae_rx_query_desc(struct ieee80211_hw *hw, + struct rtl_stats *status, + struct ieee80211_rx_status *rx_status, + u8 *pdesc, struct sk_buff *skb) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rx_fwinfo_8821ae *p_drvinfo; + struct ieee80211_hdr *hdr; + + u32 phystatus = GET_RX_DESC_PHYST(pdesc); + + status->length = (u16) GET_RX_DESC_PKT_LEN(pdesc); + status->rx_drvinfo_size = (u8) GET_RX_DESC_DRV_INFO_SIZE(pdesc) * + RX_DRV_INFO_SIZE_UNIT; + status->rx_bufshift = (u8) (GET_RX_DESC_SHIFT(pdesc) & 0x03); + status->b_icv = (u16) GET_RX_DESC_ICV(pdesc); + status->b_crc = (u16) GET_RX_DESC_CRC32(pdesc); + status->b_hwerror = (status->b_crc | status->b_icv); + status->decrypted = !GET_RX_DESC_SWDEC(pdesc); + status->rate = (u8) GET_RX_DESC_RXMCS(pdesc); + status->b_shortpreamble = (u16) GET_RX_DESC_SPLCP(pdesc); + status->b_isampdu = (bool) (GET_RX_DESC_PAGGR(pdesc) == 1); + status->b_isfirst_ampdu = (bool) (GET_RX_DESC_PAGGR(pdesc) == 1); + status->timestamp_low = GET_RX_DESC_TSFL(pdesc); + status->rx_is40Mhzpacket = (bool) GET_RX_DESC_BW(pdesc); + status->macid = GET_RX_DESC_MACID(pdesc); + status->b_is_ht = (bool)GET_RX_DESC_RXHT(pdesc); + + status->b_is_cck = RX_HAL_IS_CCK_RATE(status->rate); + + if (GET_RX_STATUS_DESC_RPT_SEL(pdesc)) + status->packet_report_type = C2H_PACKET; + else + status->packet_report_type = NORMAL_RX; + + if (GET_RX_STATUS_DESC_PATTERN_MATCH(pdesc)) + status->wake_match = BIT(2); + else if (GET_RX_STATUS_DESC_MAGIC_MATCH(pdesc)) + status->wake_match = BIT(1); + else if (GET_RX_STATUS_DESC_UNICAST_MATCH(pdesc)) + status->wake_match = BIT(0); + else + status->wake_match = 0; + + if (status->wake_match) + RT_TRACE(COMP_RXDESC,DBG_LOUD, + ("GGGGGGGGGGGGGet Wakeup Packet!! WakeMatch=%d\n",status->wake_match )); +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)) + rx_status->freq = hw->conf.chandef.chan->center_freq; + rx_status->band = hw->conf.chandef.chan->band; +#else + rx_status->freq = hw->conf.channel->center_freq; + rx_status->band = hw->conf.channel->band; +#endif + + hdr = (struct ieee80211_hdr *)(skb->data + status->rx_drvinfo_size + + status->rx_bufshift); + + if (status->b_crc) + rx_status->flag |= RX_FLAG_FAILED_FCS_CRC; + + if (status->rx_is40Mhzpacket) + rx_status->flag |= RX_FLAG_40MHZ; + + if (status->b_is_ht) + rx_status->flag |= RX_FLAG_HT; + + rx_status->flag |= RX_FLAG_MACTIME_MPDU; + + /* hw will set status->decrypted true, if it finds the + * frame is open data frame or mgmt frame. */ + /* So hw will not decryption robust managment frame + * for IEEE80211w but still set status->decrypted + * true, so here we should set it back to undecrypted + * for IEEE80211w frame, and mac80211 sw will help + * to decrypt it */ + if (status->decrypted) { + if (!hdr) { + WARN_ON_ONCE(true); + pr_err("decrypted is true but hdr NULL, from skb %p\n", + rtl_get_hdr(skb)); + return false; + } + + if ((ieee80211_is_robust_mgmt_frame(hdr)) && + (ieee80211_has_protected(hdr->frame_control))) + rx_status->flag &= ~RX_FLAG_DECRYPTED; + else + rx_status->flag |= RX_FLAG_DECRYPTED; + } + + /* rate_idx: index of data rate into band's + * supported rates or MCS index if HT rates + * are use (RX_FLAG_HT)*/ + /* Notice: this is diff with windows define */ + rx_status->rate_idx = _rtl8821ae_rate_mapping(hw, + status->b_is_ht, status->rate); + + rx_status->mactime = status->timestamp_low; + if (phystatus == true) { + p_drvinfo = (struct rx_fwinfo_8821ae *)(skb->data + + status->rx_bufshift); + + _rtl8821ae_translate_rx_signal_stuff(hw, + skb, status, pdesc, + p_drvinfo); + } + + /*rx_status->qual = status->signal; */ + rx_status->signal = status->recvsignalpower + 10; + /*rx_status->noise = -status->noise; */ + if (status->packet_report_type == TX_REPORT2){ + status->macid_valid_entry[0] = GET_RX_RPT2_DESC_MACID_VALID_1(pdesc); + status->macid_valid_entry[1] = GET_RX_RPT2_DESC_MACID_VALID_2(pdesc); + } + return true; +} + +/**/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)) +void rtl8821ae_tx_fill_desc(struct ieee80211_hw *hw, + struct ieee80211_hdr *hdr, u8 *pdesc_tx, u8 *txbd, + struct ieee80211_tx_info *info, struct sk_buff *skb, + u8 hw_queue, struct rtl_tcb_desc *ptcb_desc) +#else +/**/ +void rtl8821ae_tx_fill_desc(struct ieee80211_hw *hw, + struct ieee80211_hdr *hdr, u8 *pdesc_tx, u8 *txbd, + struct ieee80211_tx_info *info, + struct ieee80211_sta *sta, + struct sk_buff *skb, + u8 hw_queue, struct rtl_tcb_desc *ptcb_desc) +/**/ +#endif +/**/ +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl_hal *rtlhal = rtl_hal(rtlpriv); +/**/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)) + struct ieee80211_sta *sta = info->control.sta; +#endif +/**/ + u8 *pdesc = (u8 *) pdesc_tx; + u16 seq_number; + u16 fc = le16_to_cpu(hdr->frame_control); + unsigned int buf_len = 0; + unsigned int skb_len = skb->len; + u8 fw_qsel = _rtl8821ae_map_hwqueue_to_fwqueue(skb, hw_queue); + bool b_firstseg = ((hdr->seq_ctrl & + cpu_to_le16(IEEE80211_SCTL_FRAG)) == 0); + bool b_lastseg = ((hdr->frame_control & + cpu_to_le16(IEEE80211_FCTL_MOREFRAGS)) == 0); + dma_addr_t mapping; + u8 bw_40 = 0; + u8 short_gi = 0; + + if (mac->opmode == NL80211_IFTYPE_STATION) { + bw_40 = mac->bw_40; + } else if (mac->opmode == NL80211_IFTYPE_AP || + mac->opmode == NL80211_IFTYPE_ADHOC) { + if (sta) + bw_40 = sta->ht_cap.cap & IEEE80211_HT_CAP_SUP_WIDTH_20_40; + } + seq_number = (le16_to_cpu(hdr->seq_ctrl) & IEEE80211_SCTL_SEQ) >> 4; + rtl_get_tcb_desc(hw, info, sta, skb, ptcb_desc); + /* reserve 8 byte for AMPDU early mode */ + if (rtlhal->b_earlymode_enable) { + skb_push(skb, EM_HDR_LEN); + memset(skb->data, 0, EM_HDR_LEN); + } + buf_len = skb->len; + mapping = pci_map_single(rtlpci->pdev, skb->data, skb->len, + PCI_DMA_TODEVICE); + if (pci_dma_mapping_error(rtlpci->pdev, mapping)) { + RT_TRACE(COMP_SEND, DBG_TRACE, + ("DMA mapping error")); + return; + } + CLEAR_PCI_TX_DESC_CONTENT(pdesc, sizeof(struct tx_desc_8821ae)); + if (ieee80211_is_nullfunc(fc) || ieee80211_is_ctl(fc)) { + b_firstseg = true; + b_lastseg = true; + } + if (b_firstseg) { + if (rtlhal->b_earlymode_enable) { + SET_TX_DESC_PKT_OFFSET(pdesc, 1); + SET_TX_DESC_OFFSET(pdesc, USB_HWDESC_HEADER_LEN + EM_HDR_LEN); + if (ptcb_desc->empkt_num) { + RT_TRACE(COMP_SEND, DBG_TRACE, + ("Insert 8 byte.pTcb->EMPktNum:%d\n", + ptcb_desc->empkt_num)); + _rtl8821ae_insert_emcontent(ptcb_desc, (u8 *)(skb->data)); + } + } else { + SET_TX_DESC_OFFSET(pdesc, USB_HWDESC_HEADER_LEN); + } + + /* ptcb_desc->use_driver_rate = true; */ + SET_TX_DESC_TX_RATE(pdesc, ptcb_desc->hw_rate); + if (ptcb_desc->hw_rate > DESC_RATEMCS0) { + short_gi = (ptcb_desc->use_shortgi) ? 1 : 0; + } else { + short_gi = (ptcb_desc->use_shortpreamble) ? 1 :0; + } + SET_TX_DESC_DATA_SHORTGI(pdesc, short_gi); + + if (info->flags & IEEE80211_TX_CTL_AMPDU) { + SET_TX_DESC_AGG_ENABLE(pdesc, 1); + SET_TX_DESC_MAX_AGG_NUM(pdesc, 0x14); + } + SET_TX_DESC_SEQ(pdesc, seq_number); + SET_TX_DESC_RTS_ENABLE(pdesc, ((ptcb_desc->b_rts_enable && + !ptcb_desc->b_cts_enable) ? 1 : 0)); + SET_TX_DESC_HW_RTS_ENABLE(pdesc,0); + SET_TX_DESC_CTS2SELF(pdesc, ((ptcb_desc->b_cts_enable) ? 1 : 0)); + /* SET_TX_DESC_RTS_STBC(pdesc, ((ptcb_desc->b_rts_stbc) ? 1 : 0));*/ + + SET_TX_DESC_RTS_RATE(pdesc, ptcb_desc->rts_rate); + /* SET_TX_DESC_RTS_BW(pdesc, 0);*/ + SET_TX_DESC_RTS_SC(pdesc, ptcb_desc->rts_sc); + SET_TX_DESC_RTS_SHORT(pdesc, ((ptcb_desc->rts_rate <= DESC_RATE54M) ? + (ptcb_desc->b_rts_use_shortpreamble ? 1 : 0) : + (ptcb_desc->b_rts_use_shortgi ? 1 : 0))); + + if(ptcb_desc->btx_enable_sw_calc_duration) + SET_TX_DESC_NAV_USE_HDR(pdesc, 1); + + if (bw_40) { + if (ptcb_desc->b_packet_bw) { + SET_TX_DESC_DATA_BW(pdesc, 1); + SET_TX_DESC_TX_SUB_CARRIER(pdesc, 3); + } else { + SET_TX_DESC_DATA_BW(pdesc, 0); + SET_TX_DESC_TX_SUB_CARRIER(pdesc, mac->cur_40_prime_sc); + } + } else { + SET_TX_DESC_DATA_BW(pdesc, 0); + SET_TX_DESC_TX_SUB_CARRIER(pdesc, 0); + } + + SET_TX_DESC_LINIP(pdesc, 0); + SET_TX_DESC_PKT_SIZE(pdesc, (u16) skb_len); + if (sta) { + u8 ampdu_density = sta->ht_cap.ampdu_density; + SET_TX_DESC_AMPDU_DENSITY(pdesc, ampdu_density); + } + if (info->control.hw_key) { + struct ieee80211_key_conf *keyconf = info->control.hw_key; +/**/ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,37)) +/**/ + switch (keyconf->cipher) { + case WLAN_CIPHER_SUITE_WEP40: + case WLAN_CIPHER_SUITE_WEP104: + case WLAN_CIPHER_SUITE_TKIP: + SET_TX_DESC_SEC_TYPE(pdesc, 0x1); + break; + case WLAN_CIPHER_SUITE_CCMP: + SET_TX_DESC_SEC_TYPE(pdesc, 0x3); + break; + default: + SET_TX_DESC_SEC_TYPE(pdesc, 0x0); + break; + + } +/**/ +#else + switch (keyconf->alg) { + case ALG_WEP: + case ALG_TKIP: + SET_TX_DESC_SEC_TYPE(pdesc, 0x1); + break; + case ALG_CCMP: + SET_TX_DESC_SEC_TYPE(pdesc, 0x3); + break; + default: + SET_TX_DESC_SEC_TYPE(pdesc, 0x0); + break; + + } +#endif +/**/ + } + + SET_TX_DESC_QUEUE_SEL(pdesc, fw_qsel); + SET_TX_DESC_DATA_RATE_FB_LIMIT(pdesc, 0x1F); + SET_TX_DESC_RTS_RATE_FB_LIMIT(pdesc, 0xF); + SET_TX_DESC_DISABLE_FB(pdesc, ptcb_desc->disable_ratefallback ? 1 : 0); + SET_TX_DESC_USE_RATE(pdesc, ptcb_desc->use_driver_rate ? 1 : 0); + +#if 0 + SET_TX_DESC_USE_RATE(pdesc, 1); + SET_TX_DESC_TX_RATE(pdesc, 0x04); + + SET_TX_DESC_RETRY_LIMIT_ENABLE(pdesc, 1); + SET_TX_DESC_DATA_RETRY_LIMIT(pdesc, 0x3f); +#endif + + /*SET_TX_DESC_PWR_STATUS(pdesc, pwr_status);*/ + /* Set TxRate and RTSRate in TxDesc */ + /* This prevent Tx initial rate of new-coming packets */ + /* from being overwritten by retried packet rate.*/ + if (!ptcb_desc->use_driver_rate) { + /*SET_TX_DESC_RTS_RATE(pdesc, 0x08); */ + /* SET_TX_DESC_TX_RATE(pdesc, 0x0b); */ + } + if (ieee80211_is_data_qos(fc)) { + if (mac->rdg_en) { + RT_TRACE(COMP_SEND, DBG_TRACE, + ("Enable RDG function.\n")); + SET_TX_DESC_RDG_ENABLE(pdesc, 1); + SET_TX_DESC_HTC(pdesc, 1); + } + } + } + + SET_TX_DESC_FIRST_SEG(pdesc, (b_firstseg ? 1 : 0)); + SET_TX_DESC_LAST_SEG(pdesc, (b_lastseg ? 1 : 0)); + SET_TX_DESC_TX_BUFFER_SIZE(pdesc, (u16) buf_len); + SET_TX_DESC_TX_BUFFER_ADDRESS(pdesc, cpu_to_le32(mapping)); + //if (rtlpriv->dm.b_useramask) { + if(1){ + SET_TX_DESC_RATE_ID(pdesc, ptcb_desc->ratr_index); + SET_TX_DESC_MACID(pdesc, ptcb_desc->mac_id); + } else { + SET_TX_DESC_RATE_ID(pdesc, 0xC + ptcb_desc->ratr_index); + SET_TX_DESC_MACID(pdesc, ptcb_desc->mac_id); + } +/* if (ieee80211_is_data_qos(fc)) + SET_TX_DESC_QOS(pdesc, 1); +*/ + if (!ieee80211_is_data_qos(fc)) { + SET_TX_DESC_HWSEQ_EN(pdesc, 1); + SET_TX_DESC_HWSEQ_SEL(pdesc, 0); + } + SET_TX_DESC_MORE_FRAG(pdesc, (b_lastseg ? 0 : 1)); + if (is_multicast_ether_addr(ieee80211_get_DA(hdr)) || + is_broadcast_ether_addr(ieee80211_get_DA(hdr))) { + SET_TX_DESC_BMC(pdesc, 1); + } + + rtl8821ae_dm_set_tx_ant_by_tx_info(hw,pdesc,ptcb_desc->mac_id); + RT_TRACE(COMP_SEND, DBG_TRACE, ("\n")); +} + +void rtl8821ae_tx_fill_cmddesc(struct ieee80211_hw *hw, + u8 *pdesc, bool b_firstseg, + bool b_lastseg, struct sk_buff *skb) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + u8 fw_queue = QSLT_BEACON; + + dma_addr_t mapping = pci_map_single(rtlpci->pdev, + skb->data, skb->len, + PCI_DMA_TODEVICE); + + if (pci_dma_mapping_error(rtlpci->pdev, mapping)) { + RT_TRACE(COMP_SEND, DBG_TRACE, + ("DMA mapping error")); + return; + } + CLEAR_PCI_TX_DESC_CONTENT(pdesc, TX_DESC_SIZE); + + SET_TX_DESC_FIRST_SEG(pdesc, 1); + SET_TX_DESC_LAST_SEG(pdesc, 1); + + SET_TX_DESC_PKT_SIZE((u8 *) pdesc, (u16) (skb->len)); + + SET_TX_DESC_OFFSET(pdesc, USB_HWDESC_HEADER_LEN); + + SET_TX_DESC_USE_RATE(pdesc, 1); + SET_TX_DESC_TX_RATE(pdesc, DESC_RATE1M); + SET_TX_DESC_DISABLE_FB(pdesc, 1); + + SET_TX_DESC_DATA_BW(pdesc, 0); + + SET_TX_DESC_HWSEQ_EN(pdesc, 1); + + SET_TX_DESC_QUEUE_SEL(pdesc, fw_queue); +/* + if(IsCtrlNDPA(VirtualAddress) || IsMgntNDPA(VirtualAddress)) + { + SET_TX_DESC_DATA_RETRY_LIMIT_8812(pDesc, 5); + SET_TX_DESC_RETRY_LIMIT_ENABLE_8812(pDesc, 1); + + if(IsMgntNDPA(VirtualAddress)) + { + SET_TX_DESC_NDPA_8812(pDesc, 1); + SET_TX_DESC_RTS_SC_8812(pDesc, SCMapping_8812(Adapter, pTcb)); + } + else + { + SET_TX_DESC_NDPA_8812(pDesc, 2); + SET_TX_DESC_RTS_SC_8812(pDesc, SCMapping_8812(Adapter, pTcb)); + } + }*/ + + SET_TX_DESC_TX_BUFFER_SIZE(pdesc, (u16) (skb->len)); + + SET_TX_DESC_TX_BUFFER_ADDRESS(pdesc, cpu_to_le32(mapping)); + + SET_TX_DESC_MACID(pdesc, 0); + + SET_TX_DESC_OWN(pdesc, 1); + + RT_PRINT_DATA(rtlpriv, COMP_CMD, DBG_LOUD, + "H2C Tx Cmd Content\n", + pdesc, TX_DESC_SIZE); +} + +void rtl8821ae_set_desc(struct ieee80211_hw * hw, u8 *pdesc, bool istx, u8 desc_name, u8 *val) +{ + if (istx == true) { + switch (desc_name) { + case HW_DESC_OWN: + SET_TX_DESC_OWN(pdesc, 1); + break; + case HW_DESC_TX_NEXTDESC_ADDR: + SET_TX_DESC_NEXT_DESC_ADDRESS(pdesc, *(u32 *) val); + break; + default: + RT_ASSERT(false, ("ERR txdesc :%d" + " not process\n", desc_name)); + break; + } + } else { + switch (desc_name) { + case HW_DESC_RXOWN: + SET_RX_DESC_OWN(pdesc, 1); + break; + case HW_DESC_RXBUFF_ADDR: + SET_RX_DESC_BUFF_ADDR(pdesc, *(u32 *) val); + break; + case HW_DESC_RXPKT_LEN: + SET_RX_DESC_PKT_LEN(pdesc, *(u32 *) val); + break; + case HW_DESC_RXERO: + SET_RX_DESC_EOR(pdesc, 1); + break; + default: + RT_ASSERT(false, ("ERR rxdesc :%d " + "not process\n", desc_name)); + break; + } + } +} + +u32 rtl8821ae_get_desc(u8 *pdesc, bool istx, u8 desc_name) +{ + u32 ret = 0; + + if (istx == true) { + switch (desc_name) { + case HW_DESC_OWN: + ret = GET_TX_DESC_OWN(pdesc); + break; + case HW_DESC_TXBUFF_ADDR: + ret = GET_TX_DESC_TX_BUFFER_ADDRESS(pdesc); + break; + default: + RT_ASSERT(false, ("ERR txdesc :%d " + "not process\n", desc_name)); + break; + } + } else { + switch (desc_name) { + case HW_DESC_OWN: + ret = GET_RX_DESC_OWN(pdesc); + break; + case HW_DESC_RXPKT_LEN: + ret = GET_RX_DESC_PKT_LEN(pdesc); + break; + default: + RT_ASSERT(false, ("ERR rxdesc :%d " + "not process\n", desc_name)); + break; + } + } + return ret; +} + +bool rtl8821ae_is_tx_desc_closed(struct ieee80211_hw *hw, + u8 hw_queue, u16 index) +{ + struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw)); + struct rtl8192_tx_ring *ring = &rtlpci->tx_ring[hw_queue]; + u8 *entry = (u8 *)(&ring->desc[ring->idx]); + u8 own = (u8) rtl8821ae_get_desc(entry, true, HW_DESC_OWN); + + /* + *beacon packet will only use the first + *descriptor defautly,and the own may not + *be cleared by the hardware + */ + if (own) + return false; + else + return true; +} + + +void rtl8821ae_tx_polling(struct ieee80211_hw *hw, u8 hw_queue) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + + if (hw_queue == BEACON_QUEUE) { + rtl_write_word(rtlpriv, REG_PCIE_CTRL_REG, BIT(4)); + } else { + rtl_write_word(rtlpriv, REG_PCIE_CTRL_REG, + BIT(0) << (hw_queue)); + } +} --- linux-3.13.0.orig/drivers/staging/rtl8821ae/rtl8821ae/trx.h +++ linux-3.13.0/drivers/staging/rtl8821ae/rtl8821ae/trx.h @@ -0,0 +1,641 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL8821AE_TRX_H__ +#define __RTL8821AE_TRX_H__ + +#define TX_DESC_SIZE 40 +#define TX_DESC_AGGR_SUBFRAME_SIZE 32 + +#define RX_DESC_SIZE 32 +#define RX_DRV_INFO_SIZE_UNIT 8 + +#define TX_DESC_NEXT_DESC_OFFSET 40 +#define USB_HWDESC_HEADER_LEN 40 +#define CRCLENGTH 4 + +#define SET_TX_DESC_PKT_SIZE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 0, 16, __val) +#define SET_TX_DESC_OFFSET(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 16, 8, __val) +#define SET_TX_DESC_BMC(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 24, 1, __val) +#define SET_TX_DESC_HTC(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 25, 1, __val) +#define SET_TX_DESC_LAST_SEG(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 26, 1, __val) +#define SET_TX_DESC_FIRST_SEG(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 27, 1, __val) +#define SET_TX_DESC_LINIP(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 28, 1, __val) +#define SET_TX_DESC_NO_ACM(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 29, 1, __val) +#define SET_TX_DESC_GF(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 30, 1, __val) +#define SET_TX_DESC_OWN(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 31, 1, __val) + +#define GET_TX_DESC_PKT_SIZE(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 0, 16) +#define GET_TX_DESC_OFFSET(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 16, 8) +#define GET_TX_DESC_BMC(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 24, 1) +#define GET_TX_DESC_HTC(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 25, 1) +#define GET_TX_DESC_LAST_SEG(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 26, 1) +#define GET_TX_DESC_FIRST_SEG(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 27, 1) +#define GET_TX_DESC_LINIP(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 28, 1) +#define GET_TX_DESC_NO_ACM(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 29, 1) +#define GET_TX_DESC_GF(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 30, 1) +#define GET_TX_DESC_OWN(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 31, 1) + +#define SET_TX_DESC_MACID(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 0, 7, __val) +#define SET_TX_DESC_QUEUE_SEL(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 8, 5, __val) +#define SET_TX_DESC_RDG_NAV_EXT(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 13, 1, __val) +#define SET_TX_DESC_LSIG_TXOP_EN(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 14, 1, __val) +#define SET_TX_DESC_PIFS(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 15, 1, __val) +#define SET_TX_DESC_RATE_ID(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 16, 5, __val) +#define SET_TX_DESC_EN_DESC_ID(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 21, 1, __val) +#define SET_TX_DESC_SEC_TYPE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 22, 2, __val) +#define SET_TX_DESC_PKT_OFFSET(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+4, 24, 5, __val) + + +#define SET_TX_DESC_PAID(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 0, 9, __val) +#define SET_TX_DESC_CCA_RTS(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 10, 2, __val) +#define SET_TX_DESC_AGG_ENABLE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 12, 1, __val) +#define SET_TX_DESC_RDG_ENABLE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 13, 1, __val) +#define SET_TX_DESC_BAR_RTY_TH(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 14, 2, __val) +#define SET_TX_DESC_AGG_BREAK(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 16, 1, __val) +#define SET_TX_DESC_MORE_FRAG(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 17, 1, __val) +#define SET_TX_DESC_RAW(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 18, 1, __val) +#define SET_TX_DESC_SPE_RPT(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 19, 1, __val) +#define SET_TX_DESC_AMPDU_DENSITY(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 20, 3, __val) +#define SET_TX_DESC_BT_INT(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 23, 1, __val) +#define SET_TX_DESC_GID(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+8, 24, 6, __val) + + +#define SET_TX_DESC_WHEADER_LEN(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 0, 4, __val) +#define SET_TX_DESC_CHK_EN(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 4, 1, __val) +#define SET_TX_DESC_EARLY_MODE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 5, 1, __val) +#define SET_TX_DESC_HWSEQ_SEL(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 6, 2, __val) +#define SET_TX_DESC_USE_RATE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 8, 1, __val) +#define SET_TX_DESC_DISABLE_RTS_FB(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 9, 1, __val) +#define SET_TX_DESC_DISABLE_FB(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 10, 1, __val) +#define SET_TX_DESC_CTS2SELF(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 11, 1, __val) +#define SET_TX_DESC_RTS_ENABLE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 12, 1, __val) +#define SET_TX_DESC_HW_RTS_ENABLE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 13, 1, __val) +#define SET_TX_DESC_NAV_USE_HDR(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 15, 1, __val) +#define SET_TX_DESC_USE_MAX_LEN(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 16, 1, __val) +#define SET_TX_DESC_MAX_AGG_NUM(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 17, 5, __val) +#define SET_TX_DESC_NDPA(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 22, 2, __val) +#define SET_TX_DESC_AMPDU_MAX_TIME(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+12, 24, 8, __val) +#define SET_TX_DESC_TX_ANT(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+20, 24, 4, __val) + +#define SET_TX_DESC_TX_RATE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+16, 0, 7, __val) +#define SET_TX_DESC_DATA_RATE_FB_LIMIT(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+16, 8, 5, __val) +#define SET_TX_DESC_RTS_RATE_FB_LIMIT(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+16, 13, 4, __val) +#define SET_TX_DESC_RETRY_LIMIT_ENABLE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+16, 17, 1, __val) +#define SET_TX_DESC_DATA_RETRY_LIMIT(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+16, 18, 6, __val) +#define SET_TX_DESC_RTS_RATE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+16, 24, 5, __val) + + +#define SET_TX_DESC_TX_SUB_CARRIER(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+20, 0, 4, __val) +#define SET_TX_DESC_DATA_SHORTGI(__pdesc, __val) \ + SET_BITS_TO_LE_1BYTE(__pdesc+20, 6, 1, __val) +#define SET_TX_DESC_DATA_BW(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+20, 5, 2, __val) +#define SET_TX_DESC_DATA_LDPC(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+20, 7, 1, __val) +#define SET_TX_DESC_DATA_STBC(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+20, 8, 2, __val) +#define SET_TX_DESC_CTROL_STBC(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+20, 10, 2, __val) +#define SET_TX_DESC_RTS_SHORT(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+20, 12, 1, __val) +#define SET_TX_DESC_RTS_SC(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+20, 13, 4, __val) + + +#define SET_TX_DESC_TX_BUFFER_SIZE(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+28, 0, 16, __val) + +#define GET_TX_DESC_TX_BUFFER_SIZE(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+28, 0, 16) + +#define SET_TX_DESC_HWSEQ_EN(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+32, 15, 1, __val) + +#define SET_TX_DESC_SEQ(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+36, 12, 12, __val) + +#define SET_TX_DESC_TX_BUFFER_ADDRESS(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+40, 0, 32, __val) + +#define GET_TX_DESC_TX_BUFFER_ADDRESS(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+40, 0, 32) + + +#define SET_TX_DESC_NEXT_DESC_ADDRESS(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+48, 0, 32, __val) + +#define GET_TX_DESC_NEXT_DESC_ADDRESS(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+48, 0, 32) + +#define GET_RX_DESC_PKT_LEN(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 0, 14) +#define GET_RX_DESC_CRC32(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 14, 1) +#define GET_RX_DESC_ICV(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 15, 1) +#define GET_RX_DESC_DRV_INFO_SIZE(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 16, 4) +#define GET_RX_DESC_SECURITY(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 20, 3) +#define GET_RX_DESC_QOS(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 23, 1) +#define GET_RX_DESC_SHIFT(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 24, 2) +#define GET_RX_DESC_PHYST(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 26, 1) +#define GET_RX_DESC_SWDEC(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 27, 1) +#define GET_RX_DESC_LS(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 28, 1) +#define GET_RX_DESC_FS(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 29, 1) +#define GET_RX_DESC_EOR(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 30, 1) +#define GET_RX_DESC_OWN(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc, 31, 1) + +#define SET_RX_DESC_PKT_LEN(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 0, 14, __val) +#define SET_RX_DESC_EOR(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 30, 1, __val) +#define SET_RX_DESC_OWN(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc, 31, 1, __val) + +#define GET_RX_DESC_MACID(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 0, 7) +#define GET_RX_DESC_TID(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 8, 4) +#define GET_RX_DESC_AMSDU(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 13, 1) +#define GET_RX_STATUS_DESC_RXID_MATCH(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 14, 1) +#define GET_RX_DESC_PAGGR(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 15, 1) +#define GET_RX_DESC_A1_FIT(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 16, 4) +#define GET_RX_DESC_CHKERR(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 20, 1) +#define GET_RX_DESC_IPVER(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 21, 1) +#define GET_RX_STATUS_DESC_IS_TCPUDP(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 22, 1) +#define GET_RX_STATUS_DESC_CHK_VLD(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 23, 1) +#define GET_RX_DESC_PAM(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 24, 1) +#define GET_RX_DESC_PWR(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 25, 1) +#define GET_RX_DESC_MD(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 26, 1) +#define GET_RX_DESC_MF(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 27, 1) +#define GET_RX_DESC_TYPE(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 28, 2) +#define GET_RX_DESC_MC(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 30, 1) +#define GET_RX_DESC_BC(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+4, 31, 1) + + +#define GET_RX_DESC_SEQ(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+8, 0, 12) +#define GET_RX_DESC_FRAG(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+8, 12, 4) +#define GET_RX_STATUS_DESC_RX_IS_QOS(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+8, 16, 1) +#define GET_RX_STATUS_DESC_WLANHD_IV_LEN(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+8, 18, 6) +#define GET_RX_STATUS_DESC_RPT_SEL(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+8, 28, 1) + + +#define GET_RX_DESC_RXMCS(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+12, 0, 7) +#define GET_RX_DESC_RXHT(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+12, 6, 1) +#define GET_RX_STATUS_DESC_RX_GF(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+12, 7, 1) +#define GET_RX_DESC_HTC(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+12, 10, 1) +#define GET_RX_STATUS_DESC_EOSP(__pdesc) \ + LE_BITS_TO_4BYTE( __pdesc+12, 11, 1) +#define GET_RX_STATUS_DESC_BSSID_FIT(__pdesc) \ + LE_BITS_TO_4BYTE( __pdesc+12, 12, 2) + +#define GET_RX_STATUS_DESC_PATTERN_MATCH(__pdesc) \ + LE_BITS_TO_4BYTE( __pdesc+12, 29, 1) +#define GET_RX_STATUS_DESC_UNICAST_MATCH(__pdesc) \ + LE_BITS_TO_4BYTE( __pdesc+12, 30, 1) +#define GET_RX_STATUS_DESC_MAGIC_MATCH(__pdesc) \ + LE_BITS_TO_4BYTE( __pdesc+12, 31, 1) + +#define GET_RX_DESC_SPLCP(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+16, 0, 1) +#define GET_RX_STATUS_DESC_LDPC(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+16, 1, 1) +#define GET_RX_STATUS_DESC_STBC(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+16, 2, 1) +#define GET_RX_DESC_BW(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+16, 4, 2) + +#define GET_RX_DESC_TSFL(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+20, 0, 32) + +#define GET_RX_DESC_BUFF_ADDR(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+24, 0, 32) +#define GET_RX_DESC_BUFF_ADDR64(__pdesc) \ + LE_BITS_TO_4BYTE(__pdesc+28, 0, 32) + +#define SET_RX_DESC_BUFF_ADDR(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+24, 0, 32, __val) +#define SET_RX_DESC_BUFF_ADDR64(__pdesc, __val) \ + SET_BITS_TO_LE_4BYTE(__pdesc+28, 0, 32, __val) + + +/* TX report 2 format in Rx desc*/ + +#define GET_RX_RPT2_DESC_PKT_LEN(__pRxStatusDesc) \ + LE_BITS_TO_4BYTE( __pRxStatusDesc, 0, 9) +#define GET_RX_RPT2_DESC_MACID_VALID_1(__pRxStatusDesc) \ + LE_BITS_TO_4BYTE( __pRxStatusDesc+16, 0, 32) +#define GET_RX_RPT2_DESC_MACID_VALID_2(__pRxStatusDesc) \ + LE_BITS_TO_4BYTE( __pRxStatusDesc+20, 0, 32) + +#define SET_EARLYMODE_PKTNUM(__paddr, __value) \ + SET_BITS_TO_LE_4BYTE(__paddr, 0, 4, __value) +#define SET_EARLYMODE_LEN0(__paddr, __value) \ + SET_BITS_TO_LE_4BYTE(__paddr, 4, 12, __value) +#define SET_EARLYMODE_LEN1(__paddr, __value) \ + SET_BITS_TO_LE_4BYTE(__paddr, 16, 12, __value) +#define SET_EARLYMODE_LEN2_1(__paddr, __value) \ + SET_BITS_TO_LE_4BYTE(__paddr, 28, 4, __value) +#define SET_EARLYMODE_LEN2_2(__paddr, __value) \ + SET_BITS_TO_LE_4BYTE(__paddr+4, 0, 8, __value) +#define SET_EARLYMODE_LEN3(__paddr, __value) \ + SET_BITS_TO_LE_4BYTE(__paddr+4, 8, 12, __value) +#define SET_EARLYMODE_LEN4(__paddr, __value) \ + SET_BITS_TO_LE_4BYTE(__paddr+4, 20, 12, __value) + +#define CLEAR_PCI_TX_DESC_CONTENT(__pdesc, _size) \ +do { \ + if(_size > TX_DESC_NEXT_DESC_OFFSET) \ + memset(__pdesc, 0, TX_DESC_NEXT_DESC_OFFSET); \ + else \ + memset(__pdesc, 0, _size); \ +} while (0); + +#define RX_HAL_IS_CCK_RATE(rxmcs)\ + (rxmcs == DESC_RATE1M ||\ + rxmcs == DESC_RATE2M ||\ + rxmcs == DESC_RATE5_5M ||\ + rxmcs == DESC_RATE11M) + +#define IS_LITTLE_ENDIAN 1 + +struct phy_rx_agc_info_t { + #if IS_LITTLE_ENDIAN + u8 gain:7,trsw:1; + #else + u8 trsw:1,gain:7; + #endif +}; +struct phy_status_rpt{ + struct phy_rx_agc_info_t path_agc[2]; + u8 ch_corr[2]; + u8 cck_sig_qual_ofdm_pwdb_all; + u8 cck_agc_rpt_ofdm_cfosho_a; + u8 cck_rpt_b_ofdm_cfosho_b; + u8 rsvd_1;//ch_corr_msb; + u8 noise_power_db_msb; + u8 path_cfotail[2]; + u8 pcts_mask[2]; + u8 stream_rxevm[2]; + u8 path_rxsnr[2]; + u8 noise_power_db_lsb; + u8 rsvd_2[3]; + u8 stream_csi[2]; + u8 stream_target_csi[2]; + u8 sig_evm; + u8 rsvd_3; +#if IS_LITTLE_ENDIAN + u8 antsel_rx_keep_2:1; /*ex_intf_flg:1;*/ + u8 sgi_en:1; + u8 rxsc:2; + u8 idle_long:1; + u8 r_ant_train_en:1; + u8 ant_sel_b:1; + u8 ant_sel:1; +#else /* _BIG_ENDIAN_ */ + u8 ant_sel:1; + u8 ant_sel_b:1; + u8 r_ant_train_en:1; + u8 idle_long:1; + u8 rxsc:2; + u8 sgi_en:1; + u8 antsel_rx_keep_2:1; /*ex_intf_flg:1;*/ +#endif +}__packed; + +struct rx_fwinfo_8821ae { + u8 gain_trsw[4]; + u8 pwdb_all; + u8 cfosho[4]; + u8 cfotail[4]; + char rxevm[2]; + char rxsnr[4]; + u8 pdsnr[2]; + u8 csi_current[2]; + u8 csi_target[2]; + u8 sigevm; + u8 max_ex_pwr; + u8 ex_intf_flag:1; + u8 sgi_en:1; + u8 rxsc:2; + u8 reserve:4; +} __packed; + +struct tx_desc_8821ae { + u32 pktsize:16; + u32 offset:8; + u32 bmc:1; + u32 htc:1; + u32 lastseg:1; + u32 firstseg:1; + u32 linip:1; + u32 noacm:1; + u32 gf:1; + u32 own:1; + + u32 macid:6; + u32 rsvd0:2; + u32 queuesel:5; + u32 rd_nav_ext:1; + u32 lsig_txop_en:1; + u32 pifs:1; + u32 rateid:4; + u32 nav_usehdr:1; + u32 en_descid:1; + u32 sectype:2; + u32 pktoffset:8; + + u32 rts_rc:6; + u32 data_rc:6; + u32 agg_en:1; + u32 rdg_en:1; + u32 bar_retryht:2; + u32 agg_break:1; + u32 morefrag:1; + u32 raw:1; + u32 ccx:1; + u32 ampdudensity:3; + u32 bt_int:1; + u32 ant_sela:1; + u32 ant_selb:1; + u32 txant_cck:2; + u32 txant_l:2; + u32 txant_ht:2; + + u32 nextheadpage:8; + u32 tailpage:8; + u32 seq:12; + u32 cpu_handle:1; + u32 tag1:1; + u32 trigger_int:1; + u32 hwseq_en:1; + + u32 rtsrate:5; + u32 apdcfe:1; + u32 qos:1; + u32 hwseq_ssn:1; + u32 userrate:1; + u32 dis_rtsfb:1; + u32 dis_datafb:1; + u32 cts2self:1; + u32 rts_en:1; + u32 hwrts_en:1; + u32 portid:1; + u32 pwr_status:3; + u32 waitdcts:1; + u32 cts2ap_en:1; + u32 txsc:2; + u32 stbc:2; + u32 txshort:1; + u32 txbw:1; + u32 rtsshort:1; + u32 rtsbw:1; + u32 rtssc:2; + u32 rtsstbc:2; + + u32 txrate:6; + u32 shortgi:1; + u32 ccxt:1; + u32 txrate_fb_lmt:5; + u32 rtsrate_fb_lmt:4; + u32 retrylmt_en:1; + u32 txretrylmt:6; + u32 usb_txaggnum:8; + + u32 txagca:5; + u32 txagcb:5; + u32 usemaxlen:1; + u32 maxaggnum:5; + u32 mcsg1maxlen:4; + u32 mcsg2maxlen:4; + u32 mcsg3maxlen:4; + u32 mcs7sgimaxlen:4; + + u32 txbuffersize:16; + u32 sw_offset30:8; + u32 sw_offset31:4; + u32 rsvd1:1; + u32 antsel_c:1; + u32 null_0:1; + u32 null_1:1; + + u32 txbuffaddr; + u32 txbufferaddr64; + u32 nextdescaddress; + u32 nextdescaddress64; + + u32 reserve_pass_pcie_mm_limit[4]; +} __packed; + +struct rx_desc_8821ae { + u32 length:14; + u32 crc32:1; + u32 icverror:1; + u32 drv_infosize:4; + u32 security:3; + u32 qos:1; + u32 shift:2; + u32 phystatus:1; + u32 swdec:1; + u32 lastseg:1; + u32 firstseg:1; + u32 eor:1; + u32 own:1; + + u32 macid:6; + u32 tid:4; + u32 hwrsvd:5; + u32 paggr:1; + u32 faggr:1; + u32 a1_fit:4; + u32 a2_fit:4; + u32 pam:1; + u32 pwr:1; + u32 moredata:1; + u32 morefrag:1; + u32 type:2; + u32 mc:1; + u32 bc:1; + + u32 seq:12; + u32 frag:4; + u32 nextpktlen:14; + u32 nextind:1; + u32 rsvd:1; + + u32 rxmcs:6; + u32 rxht:1; + u32 amsdu:1; + u32 splcp:1; + u32 bandwidth:1; + u32 htc:1; + u32 tcpchk_rpt:1; + u32 ipcchk_rpt:1; + u32 tcpchk_valid:1; + u32 hwpcerr:1; + u32 hwpcind:1; + u32 iv0:16; + + u32 iv1; + + u32 tsfl; + + u32 bufferaddress; + u32 bufferaddress64; + +} __packed; + +/**/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)) +void rtl8821ae_tx_fill_desc(struct ieee80211_hw *hw, + struct ieee80211_hdr *hdr, u8 *pdesc_tx, u8 *txbd, + struct ieee80211_tx_info *info, struct sk_buff *skb, + u8 hw_queue, struct rtl_tcb_desc *ptcb_desc); +#else +/**/ +void rtl8821ae_tx_fill_desc(struct ieee80211_hw *hw, + struct ieee80211_hdr *hdr, u8 *pdesc_tx, u8 *txbd, + struct ieee80211_tx_info *info, + struct ieee80211_sta *sta, + struct sk_buff *skb, + u8 hw_queue, struct rtl_tcb_desc *ptcb_desc); +/**/ +#endif +/**/ +bool rtl8821ae_rx_query_desc(struct ieee80211_hw *hw, + struct rtl_stats *status, + struct ieee80211_rx_status *rx_status, + u8 *pdesc, struct sk_buff *skb); +void rtl8821ae_set_desc(struct ieee80211_hw * hw, u8 *pdesc, bool istx, u8 desc_name, u8 *val); +u32 rtl8821ae_get_desc(u8 *pdesc, bool istx, u8 desc_name); +bool rtl8821ae_is_tx_desc_closed(struct ieee80211_hw *hw, + u8 hw_queue, u16 index); +void rtl8821ae_tx_polling(struct ieee80211_hw *hw, u8 hw_queue); +void rtl8821ae_tx_fill_cmddesc(struct ieee80211_hw *hw, u8 *pdesc, + bool b_firstseg, bool b_lastseg, + struct sk_buff *skb); +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/stats.c +++ linux-3.13.0/drivers/staging/rtl8821ae/stats.c @@ -0,0 +1,283 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ +#include "wifi.h" +#include "stats.h" +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)) +#include +#endif + +u8 rtl_query_rxpwrpercentage(char antpower) +{ + if ((antpower <= -100) || (antpower >= 20)) + return 0; + else if (antpower >= 0) + return 100; + else + return (100 + antpower); +} +//EXPORT_SYMBOL(rtl_query_rxpwrpercentage); + +u8 rtl_evm_db_to_percentage(char value) +{ + char ret_val; + ret_val = value; + + if (ret_val >= 0) + ret_val = 0; + if (ret_val <= -33) + ret_val = -33; + ret_val = 0 - ret_val; + ret_val *= 3; + if (ret_val == 99) + ret_val = 100; + + return ret_val; +} +//EXPORT_SYMBOL(rtl_evm_db_to_percentage); + +long rtl_translate_todbm(struct ieee80211_hw *hw, + u8 signal_strength_index) +{ + long signal_power; + + signal_power = (long)((signal_strength_index + 1) >> 1); + signal_power -= 95; + return signal_power; +} + +long rtl_signal_scale_mapping(struct ieee80211_hw *hw, long currsig) +{ + long retsig; + + if (currsig >= 61 && currsig <= 100) + retsig = 90 + ((currsig - 60) / 4); + else if (currsig >= 41 && currsig <= 60) + retsig = 78 + ((currsig - 40) / 2); + else if (currsig >= 31 && currsig <= 40) + retsig = 66 + (currsig - 30); + else if (currsig >= 21 && currsig <= 30) + retsig = 54 + (currsig - 20); + else if (currsig >= 5 && currsig <= 20) + retsig = 42 + (((currsig - 5) * 2) / 3); + else if (currsig == 4) + retsig = 36; + else if (currsig == 3) + retsig = 27; + else if (currsig == 2) + retsig = 18; + else if (currsig == 1) + retsig = 9; + else + retsig = currsig; + + return retsig; +} +//EXPORT_SYMBOL(rtl_signal_scale_mapping); + +void rtl_process_ui_rssi(struct ieee80211_hw *hw, struct rtl_stats *pstatus) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_phy *rtlphy = &(rtlpriv->phy); + u8 rfpath; + u32 last_rssi, tmpval; + + if (!pstatus->b_packet_toself && !pstatus->b_packet_beacon) + return; + + rtlpriv->stats.pwdb_all_cnt += pstatus->rx_pwdb_all; + rtlpriv->stats.rssi_calculate_cnt++; + + if (rtlpriv->stats.ui_rssi.total_num++ >= PHY_RSSI_SLID_WIN_MAX) { + rtlpriv->stats.ui_rssi.total_num = PHY_RSSI_SLID_WIN_MAX; + last_rssi = rtlpriv->stats.ui_rssi.elements[ + rtlpriv->stats.ui_rssi.index]; + rtlpriv->stats.ui_rssi.total_val -= last_rssi; + } + rtlpriv->stats.ui_rssi.total_val += pstatus->signalstrength; + rtlpriv->stats.ui_rssi.elements[rtlpriv->stats.ui_rssi.index++] = + pstatus->signalstrength; + if (rtlpriv->stats.ui_rssi.index >= PHY_RSSI_SLID_WIN_MAX) + rtlpriv->stats.ui_rssi.index = 0; + tmpval = rtlpriv->stats.ui_rssi.total_val / + rtlpriv->stats.ui_rssi.total_num; + rtlpriv->stats.signal_strength = rtl_translate_todbm(hw, + (u8) tmpval); + pstatus->rssi = rtlpriv->stats.signal_strength; + + if (pstatus->b_is_cck) + return; + + for (rfpath = RF90_PATH_A; rfpath < rtlphy->num_total_rfpath; + rfpath++) { + if (rtlpriv->stats.rx_rssi_percentage[rfpath] == 0) { + rtlpriv->stats.rx_rssi_percentage[rfpath] = + pstatus->rx_mimo_signalstrength[rfpath]; + + } + if (pstatus->rx_mimo_signalstrength[rfpath] > + rtlpriv->stats.rx_rssi_percentage[rfpath]) { + rtlpriv->stats.rx_rssi_percentage[rfpath] = + ((rtlpriv->stats.rx_rssi_percentage[rfpath] * + (RX_SMOOTH_FACTOR - 1)) + + (pstatus->rx_mimo_signalstrength[rfpath])) / + (RX_SMOOTH_FACTOR); + rtlpriv->stats.rx_rssi_percentage[rfpath] = + rtlpriv->stats.rx_rssi_percentage[rfpath] + 1; + } else { + rtlpriv->stats.rx_rssi_percentage[rfpath] = + ((rtlpriv->stats.rx_rssi_percentage[rfpath] * + (RX_SMOOTH_FACTOR - 1)) + + (pstatus->rx_mimo_signalstrength[rfpath])) / + (RX_SMOOTH_FACTOR); + } + rtlpriv->stats.rx_snr_db[rfpath] = pstatus->rx_snr[rfpath]; + rtlpriv->stats.rx_evm_dbm[rfpath] = + pstatus->rx_mimo_evm_dbm[rfpath]; + rtlpriv->stats.rx_cfo_short[rfpath] = + pstatus->cfo_short[rfpath]; + rtlpriv->stats.rx_cfo_tail[rfpath] = pstatus->cfo_tail[rfpath]; + } +} + +static void rtl_update_rxsignalstatistics(struct ieee80211_hw *hw, + struct rtl_stats *pstatus) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + int weighting = 0; + + if (rtlpriv->stats.recv_signal_power == 0) + rtlpriv->stats.recv_signal_power = pstatus->recvsignalpower; + if (pstatus->recvsignalpower > rtlpriv->stats.recv_signal_power) + weighting = 5; + else if (pstatus->recvsignalpower < rtlpriv->stats.recv_signal_power) + weighting = (-5); + rtlpriv->stats.recv_signal_power = (rtlpriv->stats.recv_signal_power * + 5 + pstatus->recvsignalpower + weighting) / 6; +} + +static void rtl_process_pwdb(struct ieee80211_hw *hw, struct rtl_stats *pstatus) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + struct rtl_sta_info *drv_priv = NULL; + struct ieee80211_sta *sta = NULL; + long undecorated_smoothed_pwdb; + + rcu_read_lock(); + if (rtlpriv->mac80211.opmode != NL80211_IFTYPE_STATION) + sta = rtl_find_sta(hw, pstatus->psaddr); + + /* adhoc or ap mode */ + if (sta) { + drv_priv = (struct rtl_sta_info *) sta->drv_priv; + undecorated_smoothed_pwdb = + drv_priv->rssi_stat.undecorated_smoothed_pwdb; + } else { + undecorated_smoothed_pwdb = + rtlpriv->dm.undecorated_smoothed_pwdb; + } + + if (undecorated_smoothed_pwdb < 0) + undecorated_smoothed_pwdb = pstatus->rx_pwdb_all; + if (pstatus->rx_pwdb_all > (u32) undecorated_smoothed_pwdb) { + undecorated_smoothed_pwdb = (((undecorated_smoothed_pwdb) * + (RX_SMOOTH_FACTOR - 1)) + + (pstatus->rx_pwdb_all)) / (RX_SMOOTH_FACTOR); + undecorated_smoothed_pwdb = undecorated_smoothed_pwdb + 1; + } else { + undecorated_smoothed_pwdb = (((undecorated_smoothed_pwdb) * + (RX_SMOOTH_FACTOR - 1)) + + (pstatus->rx_pwdb_all)) / (RX_SMOOTH_FACTOR); + } + + if(sta) { + drv_priv->rssi_stat.undecorated_smoothed_pwdb = + undecorated_smoothed_pwdb; + } else { + rtlpriv->dm.undecorated_smoothed_pwdb = undecorated_smoothed_pwdb; + } + rcu_read_unlock(); + + rtl_update_rxsignalstatistics(hw, pstatus); +} + +static void rtl_process_ui_link_quality(struct ieee80211_hw *hw, + struct rtl_stats *pstatus) +{ + struct rtl_priv *rtlpriv = rtl_priv(hw); + u32 last_evm, n_stream, tmpval; + + if (pstatus->signalquality == 0) + return; + + if (rtlpriv->stats.ui_link_quality.total_num++ >= + PHY_LINKQUALITY_SLID_WIN_MAX) { + rtlpriv->stats.ui_link_quality.total_num = + PHY_LINKQUALITY_SLID_WIN_MAX; + last_evm = rtlpriv->stats.ui_link_quality.elements[ + rtlpriv->stats.ui_link_quality.index]; + rtlpriv->stats.ui_link_quality.total_val -= last_evm; + } + rtlpriv->stats.ui_link_quality.total_val += pstatus->signalquality; + rtlpriv->stats.ui_link_quality.elements[ + rtlpriv->stats.ui_link_quality.index++] = + pstatus->signalquality; + if (rtlpriv->stats.ui_link_quality.index >= + PHY_LINKQUALITY_SLID_WIN_MAX) + rtlpriv->stats.ui_link_quality.index = 0; + tmpval = rtlpriv->stats.ui_link_quality.total_val / + rtlpriv->stats.ui_link_quality.total_num; + rtlpriv->stats.signal_quality = tmpval; + rtlpriv->stats.last_sigstrength_inpercent = tmpval; + for (n_stream = 0; n_stream < 2; n_stream++) { + if (pstatus->rx_mimo_signalquality[n_stream] != -1) { + if (rtlpriv->stats.rx_evm_percentage[n_stream] == 0) { + rtlpriv->stats.rx_evm_percentage[n_stream] = + pstatus->rx_mimo_signalquality[n_stream]; + } + rtlpriv->stats.rx_evm_percentage[n_stream] = + ((rtlpriv->stats.rx_evm_percentage[n_stream] + * (RX_SMOOTH_FACTOR - 1)) + + (pstatus->rx_mimo_signalquality[n_stream] * 1)) / + (RX_SMOOTH_FACTOR); + } + } +} + +void rtl_process_phyinfo(struct ieee80211_hw *hw, u8 *buffer, + struct rtl_stats *pstatus) +{ + + if (!pstatus->b_packet_matchbssid) + return; + + rtl_process_ui_rssi(hw, pstatus); + rtl_process_pwdb(hw, pstatus); + rtl_process_ui_link_quality(hw, pstatus); +} +//EXPORT_SYMBOL(rtl_process_phyinfo); --- linux-3.13.0.orig/drivers/staging/rtl8821ae/stats.h +++ linux-3.13.0/drivers/staging/rtl8821ae/stats.h @@ -0,0 +1,46 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL_STATS_H__ +#define __RTL_STATS_H__ + +#define PHY_RSSI_SLID_WIN_MAX 100 +#define PHY_LINKQUALITY_SLID_WIN_MAX 20 +#define PHY_BEACON_RSSI_SLID_WIN_MAX 10 + +/* Rx smooth factor */ +#define RX_SMOOTH_FACTOR 20 + +u8 rtl_query_rxpwrpercentage(char antpower); +u8 rtl_evm_db_to_percentage(char value); +long rtl_signal_scale_mapping(struct ieee80211_hw *hw, long currsig); +void rtl_process_phyinfo(struct ieee80211_hw *hw, u8 *buffer, + struct rtl_stats *pstatus); + +#endif --- linux-3.13.0.orig/drivers/staging/rtl8821ae/wifi.h +++ linux-3.13.0/drivers/staging/rtl8821ae/wifi.h @@ -0,0 +1,2532 @@ +/****************************************************************************** + * + * Copyright(c) 2009-2010 Realtek Corporation. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of version 2 of the GNU General Public License as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA + * + * The full GNU General Public License is included in this distribution in the + * file called LICENSE. + * + * Contact Information: + * wlanfae + * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, + * Hsinchu 300, Taiwan. + * + * Larry Finger + * + *****************************************************************************/ + +#ifndef __RTL_WIFI_H__ +#define __RTL_WIFI_H__ + +#include +#include +#include +#include +#include +#include +#include "debug.h" + + +#define RF_CHANGE_BY_INIT 0 +#define RF_CHANGE_BY_IPS BIT(28) +#define RF_CHANGE_BY_PS BIT(29) +#define RF_CHANGE_BY_HW BIT(30) +#define RF_CHANGE_BY_SW BIT(31) + +#define IQK_ADDA_REG_NUM 16 +#define IQK_MAC_REG_NUM 4 +#define IQK_THRESHOLD 8 + +#define MAX_KEY_LEN 61 +#define KEY_BUF_SIZE 5 + +/* QoS related. */ +/*aci: 0x00 Best Effort*/ +/*aci: 0x01 Background*/ +/*aci: 0x10 Video*/ +/*aci: 0x11 Voice*/ +/*Max: define total number.*/ +#define AC0_BE 0 +#define AC1_BK 1 +#define AC2_VI 2 +#define AC3_VO 3 +#define AC_MAX 4 +#define QOS_QUEUE_NUM 4 +#define RTL_MAC80211_NUM_QUEUE 5 + +#define QBSS_LOAD_SIZE 5 +#define MAX_WMMELE_LENGTH 64 + +#define TOTAL_CAM_ENTRY 32 + +/*slot time for 11g. */ +#define RTL_SLOT_TIME_9 9 +#define RTL_SLOT_TIME_20 20 + +/*related with tcp/ip. */ +/*if_ehther.h*/ +#define ETH_P_PAE 0x888E /*Port Access Entity + *(IEEE 802.1X) */ +#define ETH_P_IP 0x0800 /*Internet Protocol packet */ +#define ETH_P_ARP 0x0806 /*Address Resolution packet */ +#define SNAP_SIZE 6 +#define PROTOC_TYPE_SIZE 2 + +/*related with 802.11 frame*/ +#define MAC80211_3ADDR_LEN 24 +#define MAC80211_4ADDR_LEN 30 + +#define CHANNEL_MAX_NUMBER (14 + 24 + 21) /* 14 is the max + * channel number */ +#define CHANNEL_MAX_NUMBER_2G 14 +#define CHANNEL_MAX_NUMBER_5G 54 /* Please refer to + *"phy_GetChnlGroup8812A" and + * "Hal_ReadTxPowerInfo8812A"*/ +#define CHANNEL_MAX_NUMBER_5G_80M 7 +#define CHANNEL_GROUP_MAX (3 + 9) /* ch1~3, ch4~9, ch10~14 + * total three groups */ +#define MAX_PG_GROUP 13 +#define CHANNEL_GROUP_MAX_2G 3 +#define CHANNEL_GROUP_IDX_5GL 3 +#define CHANNEL_GROUP_IDX_5GM 6 +#define CHANNEL_GROUP_IDX_5GH 9 +#define CHANNEL_GROUP_MAX_5G 9 +#define CHANNEL_MAX_NUMBER_2G 14 +#define AVG_THERMAL_NUM 8 +#define AVG_THERMAL_NUM_92E 4 +#define AVG_THERMAL_NUM_88E 4 +#define AVG_THERMAL_NUM_8723BE 4 +#define MAX_TID_COUNT 9 +#define MAX_NUM_RATES 264 + +/*for 88E use*/ +/*It must always set to 4, otherwise read efuse table secquence will be wrong.*/ +#define MAX_TX_COUNT 4 +#define MAX_RF_PATH 4 +#define MAX_CHNL_GROUP_24G 6 +#define MAX_CHNL_GROUP_5G 14 + +/* BK, BE, VI, VO, HCCA, MANAGEMENT, COMMAND, HIGH, BEACON. */ +#define MAX_TX_QUEUE 9 + +#define TX_PWR_BY_RATE_NUM_BAND 2 +#define TX_PWR_BY_RATE_NUM_RF 4 +#define TX_PWR_BY_RATE_NUM_SECTION 12 +#define MAX_BASE_NUM_IN_PHY_REG_PG_24G 6 +#define MAX_BASE_NUM_IN_PHY_REG_PG_5G 5 + +#define DELTA_SWINGIDX_SIZE 30 +#define BAND_NUM 3 +/*Now, it's just for 8192ee + *not OK yet, keep it 0*/ +#define DMA_IS_64BIT 0 +#define RTL8192EE_SEG_NUM 1 /* 0:2 seg, 1: 4 seg, 2: 8 seg */ + +struct txpower_info_2g { + u8 index_cck_base[MAX_RF_PATH][MAX_CHNL_GROUP_24G]; + u8 index_bw40_base[MAX_RF_PATH][MAX_CHNL_GROUP_24G]; + /*If only one tx, only BW20 and OFDM are used.*/ + u8 cck_diff[MAX_RF_PATH][MAX_TX_COUNT]; + u8 ofdm_diff[MAX_RF_PATH][MAX_TX_COUNT]; + u8 bw20_diff[MAX_RF_PATH][MAX_TX_COUNT]; + u8 bw40_diff[MAX_RF_PATH][MAX_TX_COUNT]; +}; + +struct txpower_info_5g { + u8 index_bw40_base[MAX_RF_PATH][MAX_CHNL_GROUP_5G]; + /*If only one tx, only BW20, OFDM, BW80 and BW160 are used.*/ + u8 ofdm_diff[MAX_RF_PATH][MAX_TX_COUNT]; + u8 bw20_diff[MAX_RF_PATH][MAX_TX_COUNT]; + u8 bw40_diff[MAX_RF_PATH][MAX_TX_COUNT]; + u8 bw80_diff[MAX_RF_PATH][MAX_TX_COUNT]; + u8 bw160_diff[MAX_RF_PATH][MAX_TX_COUNT]; +}; + + +/* for early mode */ +#define EM_HDR_LEN 8 +#define FCS_LEN 4 + +#define MAX_VIRTUAL_MAC 1 + +enum rf_tx_num { + RF_1TX = 0, + RF_2TX, + RF_MAX_TX_NUM, + RF_TX_NUM_NONIMPLEMENT, +}; + +enum rate_section { + CCK = 0, + OFDM, + HT_MCS0_MCS7, + HT_MCS8_MCS15, + VHT_1SSMCS0_1SSMCS9, + VHT_2SSMCS0_2SSMCS9, +}; + +enum intf_type { + INTF_PCI = 0, + INTF_USB = 1, +}; + +enum radio_path { + RF90_PATH_A = 0, + RF90_PATH_B = 1, + RF90_PATH_C = 2, + RF90_PATH_D = 3, +}; + +enum rt_eeprom_type { + EEPROM_93C46, + EEPROM_93C56, + EEPROM_BOOT_EFUSE, +}; + +enum rtl_status { + RTL_STATUS_INTERFACE_START = 0, +}; + +enum hardware_type { + HARDWARE_TYPE_RTL8192E, + HARDWARE_TYPE_RTL8192U, + HARDWARE_TYPE_RTL8192SE, + HARDWARE_TYPE_RTL8192SU, + HARDWARE_TYPE_RTL8192CE, + HARDWARE_TYPE_RTL8192CU, + HARDWARE_TYPE_RTL8192DE, + HARDWARE_TYPE_RTL8192DU, + HARDWARE_TYPE_RTL8723AE, + HARDWARE_TYPE_RTL8188EE, + HARDWARE_TYPE_RTL8723BE, + HARDWARE_TYPE_RTL8192EE, + HARDWARE_TYPE_RTL8821AE, + HARDWARE_TYPE_RTL8812AE, + /* keep it last */ + HARDWARE_TYPE_NUM +}; + +enum scan_operation_backup_opt { + SCAN_OPT_BACKUP_BAND0=0, + SCAN_OPT_BACKUP_BAND1, + SCAN_OPT_RESTORE, + SCAN_OPT_MAX +}; + +/*RF state.*/ +enum rf_pwrstate { + ERFON, + ERFSLEEP, + ERFOFF +}; + +struct bb_reg_def { + u32 rfintfs; + u32 rfintfi; + u32 rfintfo; + u32 rfintfe; + u32 rf3wire_offset; + u32 rflssi_select; + u32 rftxgain_stage; + u32 rfhssi_para1; + u32 rfhssi_para2; + u32 rfswitch_control; + u32 rfagc_control1; + u32 rfagc_control2; + u32 rfrxiq_imbalance; + u32 rfrx_afe; + u32 rftxiq_imbalance; + u32 rftx_afe; + u32 rflssi_readback; + u32 rflssi_readbackpi; +}; + +enum io_type { + IO_CMD_PAUSE_BAND0_DM_BY_SCAN = 0, + IO_CMD_PAUSE_BAND1_DM_BY_SCAN = 1, + IO_CMD_RESUME_DM_BY_SCAN = 2, +}; + +enum hw_variables { + HW_VAR_ETHER_ADDR, + HW_VAR_MULTICAST_REG, + HW_VAR_BASIC_RATE, + HW_VAR_BSSID, + HW_VAR_MEDIA_STATUS, + HW_VAR_SECURITY_CONF, + HW_VAR_BEACON_INTERVAL, + HW_VAR_ATIM_WINDOW, + HW_VAR_LISTEN_INTERVAL, + HW_VAR_CS_COUNTER, + HW_VAR_DEFAULTKEY0, + HW_VAR_DEFAULTKEY1, + HW_VAR_DEFAULTKEY2, + HW_VAR_DEFAULTKEY3, + HW_VAR_SIFS, + HW_VAR_DIFS, + HW_VAR_EIFS, + HW_VAR_SLOT_TIME, + HW_VAR_ACK_PREAMBLE, + HW_VAR_CW_CONFIG, + HW_VAR_CW_VALUES, + HW_VAR_RATE_FALLBACK_CONTROL, + HW_VAR_CONTENTION_WINDOW, + HW_VAR_RETRY_COUNT, + HW_VAR_TR_SWITCH, + HW_VAR_COMMAND, + HW_VAR_WPA_CONFIG, + HW_VAR_AMPDU_MIN_SPACE, + HW_VAR_SHORTGI_DENSITY, + HW_VAR_AMPDU_FACTOR, + HW_VAR_MCS_RATE_AVAILABLE, + HW_VAR_AC_PARAM, + HW_VAR_ACM_CTRL, + HW_VAR_DIS_Req_Qsize, + HW_VAR_CCX_CHNL_LOAD, + HW_VAR_CCX_NOISE_HISTOGRAM, + HW_VAR_CCX_CLM_NHM, + HW_VAR_TxOPLimit, + HW_VAR_TURBO_MODE, + HW_VAR_RF_STATE, + HW_VAR_RF_OFF_BY_HW, + HW_VAR_BUS_SPEED, + HW_VAR_SET_DEV_POWER, + + HW_VAR_RCR, + HW_VAR_RATR_0, + HW_VAR_RRSR, + HW_VAR_CPU_RST, + HW_VAR_CECHK_BSSID, + HW_VAR_LBK_MODE, + HW_VAR_AES_11N_FIX, + HW_VAR_USB_RX_AGGR, + HW_VAR_USER_CONTROL_TURBO_MODE, + HW_VAR_RETRY_LIMIT, + HW_VAR_INIT_TX_RATE, + HW_VAR_TX_RATE_REG, + HW_VAR_EFUSE_USAGE, + HW_VAR_EFUSE_BYTES, + HW_VAR_AUTOLOAD_STATUS, + HW_VAR_RF_2R_DISABLE, + HW_VAR_SET_RPWM, + HW_VAR_H2C_FW_PWRMODE, + HW_VAR_H2C_FW_JOINBSSRPT, + HW_VAR_H2C_FW_MEDIASTATUSRPT, + HW_VAR_H2C_FW_P2P_PS_OFFLOAD, + HW_VAR_FW_PSMODE_STATUS, + HW_VAR_RESUME_CLK_ON, + HW_VAR_FW_LPS_ACTION, + HW_VAR_1X1_RECV_COMBINE, + HW_VAR_STOP_SEND_BEACON, + HW_VAR_TSF_TIMER, + HW_VAR_IO_CMD, + + HW_VAR_RF_RECOVERY, + HW_VAR_H2C_FW_UPDATE_GTK, + HW_VAR_WF_MASK, + HW_VAR_WF_CRC, + HW_VAR_WF_IS_MAC_ADDR, + HW_VAR_H2C_FW_OFFLOAD, + HW_VAR_RESET_WFCRC, + + HW_VAR_HANDLE_FW_C2H, + HW_VAR_DL_FW_RSVD_PAGE, + HW_VAR_AID, + HW_VAR_HW_SEQ_ENABLE, + HW_VAR_CORRECT_TSF, + HW_VAR_BCN_VALID, + HW_VAR_FWLPS_RF_ON, + HW_VAR_DUAL_TSF_RST, + HW_VAR_SWITCH_EPHY_WoWLAN, + HW_VAR_INT_MIGRATION, + HW_VAR_INT_AC, + HW_VAR_RF_TIMING, + + HAL_DEF_WOWLAN, + HW_VAR_MRC, + HW_VAR_KEEP_ALIVE, + HW_VAR_NAV_UPPER, +}; + +enum rt_media_status { + RT_MEDIA_DISCONNECT = 0, + RT_MEDIA_CONNECT = 1 +}; + +enum rt_oem_id { + RT_CID_DEFAULT = 0, + RT_CID_8187_ALPHA0 = 1, + RT_CID_8187_SERCOMM_PS = 2, + RT_CID_8187_HW_LED = 3, + RT_CID_8187_NETGEAR = 4, + RT_CID_WHQL = 5, + RT_CID_819x_CAMEO = 6, + RT_CID_819x_RUNTOP = 7, + RT_CID_819x_Senao = 8, + RT_CID_TOSHIBA = 9, + RT_CID_819x_Netcore = 10, + RT_CID_Nettronix = 11, + RT_CID_DLINK = 12, + RT_CID_PRONET = 13, + RT_CID_COREGA = 14, + RT_CID_819x_ALPHA = 15, + RT_CID_819x_Sitecom = 16, + RT_CID_CCX = 17, + RT_CID_819x_Lenovo = 18, + RT_CID_819x_QMI = 19, + RT_CID_819x_Edimax_Belkin = 20, + RT_CID_819x_Sercomm_Belkin = 21, + RT_CID_819x_CAMEO1 = 22, + RT_CID_819x_MSI = 23, + RT_CID_819x_Acer = 24, + RT_CID_819x_HP = 27, + RT_CID_819x_CLEVO = 28, + RT_CID_819x_Arcadyan_Belkin = 29, + RT_CID_819x_SAMSUNG = 30, + RT_CID_819x_WNC_COREGA = 31, + RT_CID_819x_Foxcoon = 32, + RT_CID_819x_DELL = 33, + RT_CID_819x_PRONETS = 34, + RT_CID_819x_Edimax_ASUS = 35, + RT_CID_NETGEAR = 36, + RT_CID_PLANEX = 37, + RT_CID_CC_C = 38, +}; + +enum hw_descs { + HW_DESC_OWN, + HW_DESC_RXOWN, + HW_DESC_TX_NEXTDESC_ADDR, + HW_DESC_TXBUFF_ADDR, + HW_DESC_RXBUFF_ADDR, + HW_DESC_RXPKT_LEN, + HW_DESC_RXERO, + HW_DESC_RX_PREPARE, +}; + +enum prime_sc { + PRIME_CHNL_OFFSET_DONT_CARE = 0, + PRIME_CHNL_OFFSET_LOWER = 1, + PRIME_CHNL_OFFSET_UPPER = 2, +}; + +enum rf_type { + RF_1T1R = 0, + RF_1T2R = 1, + RF_2T2R = 2, + RF_2T2R_GREEN = 3, +}; + +enum ht_channel_width { + HT_CHANNEL_WIDTH_20 = 0, + HT_CHANNEL_WIDTH_20_40 = 1, + HT_CHANNEL_WIDTH_80 = 2, +}; + +/* Ref: 802.11i sepc D10.0 7.3.2.25.1 +Cipher Suites Encryption Algorithms */ +enum rt_enc_alg { + NO_ENCRYPTION = 0, + WEP40_ENCRYPTION = 1, + TKIP_ENCRYPTION = 2, + RSERVED_ENCRYPTION = 3, + AESCCMP_ENCRYPTION = 4, + WEP104_ENCRYPTION = 5, + AESCMAC_ENCRYPTION = 6, /*IEEE802.11w */ +}; + +enum rtl_hal_state { + _HAL_STATE_STOP = 0, + _HAL_STATE_START = 1, +}; + +enum rtl_var_map { + /*reg map */ + SYS_ISO_CTRL = 0, + SYS_FUNC_EN, + SYS_CLK, + MAC_RCR_AM, + MAC_RCR_AB, + MAC_RCR_ACRC32, + MAC_RCR_ACF, + MAC_RCR_AAP, + MAC_HIMR, + MAC_HIMRE, + MAC_HSISR, + + /*efuse map */ + EFUSE_TEST, + EFUSE_CTRL, + EFUSE_CLK, + EFUSE_CLK_CTRL, + EFUSE_PWC_EV12V, + EFUSE_FEN_ELDR, + EFUSE_LOADER_CLK_EN, + EFUSE_ANA8M, + EFUSE_HWSET_MAX_SIZE, + EFUSE_MAX_SECTION_MAP, + EFUSE_REAL_CONTENT_SIZE, + EFUSE_OOB_PROTECT_BYTES_LEN, + EFUSE_ACCESS, + /*CAM map */ + RWCAM, + WCAMI, + RCAMO, + CAMDBG, + SECR, + SEC_CAM_NONE, + SEC_CAM_WEP40, + SEC_CAM_TKIP, + SEC_CAM_AES, + SEC_CAM_WEP104, + + /*IMR map */ + RTL_IMR_BCNDMAINT6, /*Beacon DMA Interrupt 6 */ + RTL_IMR_BCNDMAINT5, /*Beacon DMA Interrupt 5 */ + RTL_IMR_BCNDMAINT4, /*Beacon DMA Interrupt 4 */ + RTL_IMR_BCNDMAINT3, /*Beacon DMA Interrupt 3 */ + RTL_IMR_BCNDMAINT2, /*Beacon DMA Interrupt 2 */ + RTL_IMR_BCNDMAINT1, /*Beacon DMA Interrupt 1 */ + RTL_IMR_BCNDOK8, /*Beacon Queue DMA OK Interrup 8 */ + RTL_IMR_BCNDOK7, /*Beacon Queue DMA OK Interrup 7 */ + RTL_IMR_BCNDOK6, /*Beacon Queue DMA OK Interrup 6 */ + RTL_IMR_BCNDOK5, /*Beacon Queue DMA OK Interrup 5 */ + RTL_IMR_BCNDOK4, /*Beacon Queue DMA OK Interrup 4 */ + RTL_IMR_BCNDOK3, /*Beacon Queue DMA OK Interrup 3 */ + RTL_IMR_BCNDOK2, /*Beacon Queue DMA OK Interrup 2 */ + RTL_IMR_BCNDOK1, /*Beacon Queue DMA OK Interrup 1 */ + RTL_IMR_TIMEOUT2, /*Timeout interrupt 2 */ + RTL_IMR_TIMEOUT1, /*Timeout interrupt 1 */ + RTL_IMR_TXFOVW, /*Transmit FIFO Overflow */ + RTL_IMR_PSTIMEOUT, /*Power save time out interrupt */ + RTL_IMR_BcnInt, /*Beacon DMA Interrupt 0 */ + RTL_IMR_RXFOVW, /*Receive FIFO Overflow */ + RTL_IMR_RDU, /*Receive Descriptor Unavailable */ + RTL_IMR_ATIMEND, /*For 92C,ATIM Window End Interrupt */ + RTL_IMR_BDOK, /*Beacon Queue DMA OK Interrup */ + RTL_IMR_HIGHDOK, /*High Queue DMA OK Interrupt */ + RTL_IMR_COMDOK, /*Command Queue DMA OK Interrupt*/ + RTL_IMR_TBDOK, /*Transmit Beacon OK interrup */ + RTL_IMR_MGNTDOK, /*Management Queue DMA OK Interrupt */ + RTL_IMR_TBDER, /*For 92C,Transmit Beacon Error Interrupt */ + RTL_IMR_BKDOK, /*AC_BK DMA OK Interrupt */ + RTL_IMR_BEDOK, /*AC_BE DMA OK Interrupt */ + RTL_IMR_VIDOK, /*AC_VI DMA OK Interrupt */ + RTL_IMR_VODOK, /*AC_VO DMA Interrupt */ + RTL_IMR_ROK, /*Receive DMA OK Interrupt */ + RTL_IMR_HSISR_IND, /*HSISR Interrupt*/ + RTL_IBSS_INT_MASKS, /*(RTL_IMR_BcnInt | RTL_IMR_TBDOK | + * RTL_IMR_TBDER) */ + RTL_IMR_C2HCMD, /*fw interrupt*/ + + /*CCK Rates, TxHT = 0 */ + RTL_RC_CCK_RATE1M, + RTL_RC_CCK_RATE2M, + RTL_RC_CCK_RATE5_5M, + RTL_RC_CCK_RATE11M, + + /*OFDM Rates, TxHT = 0 */ + RTL_RC_OFDM_RATE6M, + RTL_RC_OFDM_RATE9M, + RTL_RC_OFDM_RATE12M, + RTL_RC_OFDM_RATE18M, + RTL_RC_OFDM_RATE24M, + RTL_RC_OFDM_RATE36M, + RTL_RC_OFDM_RATE48M, + RTL_RC_OFDM_RATE54M, + + RTL_RC_HT_RATEMCS7, + RTL_RC_HT_RATEMCS15, + + /*keep it last */ + RTL_VAR_MAP_MAX, +}; + +/*Firmware PS mode for control LPS.*/ +enum _fw_ps_mode { + FW_PS_ACTIVE_MODE = 0, + FW_PS_MIN_MODE = 1, + FW_PS_MAX_MODE = 2, + FW_PS_DTIM_MODE = 3, + FW_PS_VOIP_MODE = 4, + FW_PS_UAPSD_WMM_MODE = 5, + FW_PS_UAPSD_MODE = 6, + FW_PS_IBSS_MODE = 7, + FW_PS_WWLAN_MODE = 8, + FW_PS_PM_Radio_Off = 9, + FW_PS_PM_Card_Disable = 10, +}; + +enum rt_psmode { + EACTIVE, /*Active/Continuous access. */ + EMAXPS, /*Max power save mode. */ + EFASTPS, /*Fast power save mode. */ + EAUTOPS, /*Auto power save mode. */ +}; + +/*LED related.*/ +enum led_ctl_mode { + LED_CTL_POWER_ON = 1, + LED_CTL_LINK = 2, + LED_CTL_NO_LINK = 3, + LED_CTL_TX = 4, + LED_CTL_RX = 5, + LED_CTL_SITE_SURVEY = 6, + LED_CTL_POWER_OFF = 7, + LED_CTL_START_TO_LINK = 8, + LED_CTL_START_WPS = 9, + LED_CTL_STOP_WPS = 10, +}; + +enum rtl_led_pin { + LED_PIN_GPIO0, + LED_PIN_LED0, + LED_PIN_LED1, + LED_PIN_LED2 +}; + +/*QoS related.*/ +/*acm implementation method.*/ +enum acm_method { + eAcmWay0_SwAndHw = 0, + eAcmWay1_HW = 1, + eAcmWay2_SW = 2, +}; + +enum macphy_mode { + SINGLEMAC_SINGLEPHY = 0, + DUALMAC_DUALPHY, + DUALMAC_SINGLEPHY, +}; + +enum band_type { + BAND_ON_2_4G = 0, + BAND_ON_5G, + BAND_ON_BOTH, + BANDMAX +}; + +/*aci/aifsn Field. +Ref: WMM spec 2.2.2: WME Parameter Element, p.12.*/ +union aci_aifsn { + u8 char_data; + + struct { + u8 aifsn:4; + u8 acm:1; + u8 aci:2; + u8 reserved:1; + } f; /* Field */ +}; + +/*mlme related.*/ +enum wireless_mode { + WIRELESS_MODE_UNKNOWN = 0x00, + WIRELESS_MODE_A = 0x01, + WIRELESS_MODE_B = 0x02, + WIRELESS_MODE_G = 0x04, + WIRELESS_MODE_AUTO = 0x08, + WIRELESS_MODE_N_24G = 0x10, + WIRELESS_MODE_N_5G = 0x20, + WIRELESS_MODE_AC_5G = 0x40, + WIRELESS_MODE_AC_24G = 0x80 +}; + +enum ratr_table_mode { + RATR_INX_WIRELESS_NGB = 0, // BGN 40 Mhz 2SS 1SS + RATR_INX_WIRELESS_NG = 1, // GN or N + RATR_INX_WIRELESS_NB = 2, // BGN 20 Mhz 2SS 1SS or BN + RATR_INX_WIRELESS_N = 3, + RATR_INX_WIRELESS_GB = 4, + RATR_INX_WIRELESS_G = 5, + RATR_INX_WIRELESS_B = 6, + RATR_INX_WIRELESS_MC = 7, + RATR_INX_WIRELESS_AC_5N = 8, + RATR_INX_WIRELESS_AC_24N = 9, +}; + +enum rtl_link_state { + MAC80211_NOLINK = 0, + MAC80211_LINKING = 1, + MAC80211_LINKED = 2, + MAC80211_LINKED_SCANNING = 3, +}; + +enum act_category { + ACT_CAT_QOS = 1, + ACT_CAT_DLS = 2, + ACT_CAT_BA = 3, + ACT_CAT_HT = 7, + ACT_CAT_WMM = 17, +}; + +enum ba_action { + ACT_ADDBAREQ = 0, + ACT_ADDBARSP = 1, + ACT_DELBA = 2, +}; + +enum rt_polarity_ctl { + RT_POLARITY_LOW_ACT = 0, + RT_POLARITY_HIGH_ACT = 1, +}; + + +struct octet_string { + u8 *octet; + u16 length; +}; + +struct rtl_hdr_3addr { + __le16 frame_ctl; + __le16 duration_id; + u8 addr1[ETH_ALEN]; + u8 addr2[ETH_ALEN]; + u8 addr3[ETH_ALEN]; + __le16 seq_ctl; + u8 payload[0]; +} __packed; + +struct rtl_info_element { + u8 id; + u8 len; + u8 data[0]; +} __packed; + +struct rtl_probe_rsp { + struct rtl_hdr_3addr header; + u32 time_stamp[2]; + __le16 beacon_interval; + __le16 capability; + /*SSID, supported rates, FH params, DS params, + CF params, IBSS params, TIM (if beacon), RSN */ + struct rtl_info_element info_element[0]; +} __packed; + +/*LED related.*/ +/*ledpin Identify how to implement this SW led.*/ +struct rtl_led { + void *hw; + enum rtl_led_pin ledpin; + bool b_ledon; +}; + +struct rtl_led_ctl { + bool bled_opendrain; + struct rtl_led sw_led0; + struct rtl_led sw_led1; +}; + +struct rtl_qos_parameters { + __le16 cw_min; + __le16 cw_max; + u8 aifs; + u8 flag; + __le16 tx_op; +} __packed; + +struct rt_smooth_data { + u32 elements[100]; /*array to store values */ + u32 index; /*index to current array to store */ + u32 total_num; /*num of valid elements */ + u32 total_val; /*sum of valid elements */ +}; + +struct rtl_ht_agg { + u16 txq_id; + u16 wait_for_ba; + u16 start_idx; + u64 bitmap; + u32 rate_n_flags; + u8 agg_state; + u8 rx_agg_state; +}; + +struct rtl_tid_data { + u16 seq_number; + struct rtl_ht_agg agg; +}; + +struct rssi_sta{ + long undecorated_smoothed_pwdb; +}; + +struct rtl_sta_info { + struct list_head list; + u8 ratr_index; + u8 wireless_mode; + u8 mimo_ps; + u8 mac_addr[6]; + struct rtl_tid_data tids[MAX_TID_COUNT]; + + /* just used for ap adhoc or mesh*/ + struct rssi_sta rssi_stat; +} __packed; + +#ifdef VIF_TODO +struct rtl_vif { + unsigned int id; + /* struct ieee80211_vif __rcu *vif; */ + struct ieee80211_vif *vif; +}; + +struct rtl_vif_info { + struct list_head list; + bool active; + unsigned int id; + struct sk_buff *beacon; + bool enable_beacon; +}; + +struct vif_priv { + struct list_head vif_list; + + /* interface mode settings */ + unsigned long vif_bitmap; + unsigned int vifs; + struct rtl_vif vif[MAX_VIRTUAL_MAC]; + + /* beaconing */ + spinlock_t beacon_lock; + unsigned int global_pretbtt; + unsigned int global_beacon_int; + /* struct rtl_vif_info __rcu *beacon_iter; */ + struct rtl_vif_info *beacon_iter; + unsigned int beacon_enabled; +}; +#endif + +struct false_alarm_statistics { + u32 cnt_parity_fail; + u32 cnt_rate_illegal; + u32 cnt_crc8_fail; + u32 cnt_mcs_fail; + u32 cnt_fast_fsync_fail; + u32 cnt_sb_search_fail; + u32 cnt_ofdm_fail; + u32 cnt_cck_fail; + u32 cnt_all; + u32 cnt_ofdm_cca; + u32 cnt_cck_cca; + u32 cnt_cca_all; + u32 cnt_bw_usc; + u32 cnt_bw_lsc; +}; + +struct init_gain { + u8 xaagccore1; + u8 xbagccore1; + u8 xcagccore1; + u8 xdagccore1; + u8 cca; + +}; + +struct wireless_stats { + unsigned long txbytesunicast; + unsigned long txbytesmulticast; + unsigned long txbytesbroadcast; + unsigned long rxbytesunicast; + + long rx_snr_db[4]; + /*Correct smoothed ss in Dbm, only used + in driver to report real power now. */ + long recv_signal_power; + long signal_quality; + long last_sigstrength_inpercent; + + u32 rssi_calculate_cnt; + u32 pwdb_all_cnt; + + /*Transformed, in dbm. Beautified signal + strength for UI, not correct. */ + long signal_strength; + + u8 rx_rssi_percentage[4]; + u8 rx_evm_dbm[4]; + u8 rx_evm_percentage[2]; + + u16 rx_cfo_short[4]; + u16 rx_cfo_tail[4]; + + struct rt_smooth_data ui_rssi; + struct rt_smooth_data ui_link_quality; +}; + +struct rate_adaptive { + u8 rate_adaptive_disabled; + u8 ratr_state; + u16 reserve; + + u32 high_rssi_thresh_for_ra; + u32 high2low_rssi_thresh_for_ra; + u8 low2high_rssi_thresh_for_ra; + u32 low_rssi_thresh_for_ra; + u32 upper_rssi_threshold_ratr; + u32 middleupper_rssi_threshold_ratr; + u32 middle_rssi_threshold_ratr; + u32 middlelow_rssi_threshold_ratr; + u32 low_rssi_threshold_ratr; + u32 ultralow_rssi_threshold_ratr; + u32 low_rssi_threshold_ratr_40m; + u32 low_rssi_threshold_ratr_20m; + u8 ping_rssi_enable; + u32 ping_rssi_ratr; + u32 ping_rssi_thresh_for_ra; + u32 last_ratr; + u8 pre_ratr_state; + u8 ldpc_thres; + bool use_ldpc; + bool lower_rts_rate; + bool is_special_data; +}; + +struct regd_pair_mapping { + u16 reg_dmnenum; + u16 reg_5ghz_ctl; + u16 reg_2ghz_ctl; +}; + +struct dynamic_primary_cca{ + u8 pricca_flag; + u8 intf_flag; + u8 intf_type; + u8 dup_rts_flag; + u8 monitor_flag; + u8 ch_offset; + u8 mf_state; +}; + +struct rtl_regulatory { + char alpha2[2]; + u16 country_code; + u16 max_power_level; + u32 tp_scale; + u16 current_rd; + u16 current_rd_ext; + int16_t power_limit; + struct regd_pair_mapping *regpair; +}; + +struct rtl_rfkill { + bool rfkill_state; /*0 is off, 1 is on */ +}; + +/*for P2P PS**/ +#define P2P_MAX_NOA_NUM 2 + +enum p2p_role { + P2P_ROLE_DISABLE = 0, + P2P_ROLE_DEVICE = 1, + P2P_ROLE_CLIENT = 2, + P2P_ROLE_GO = 3 +}; + +enum p2p_ps_state { + P2P_PS_DISABLE = 0, + P2P_PS_ENABLE = 1, + P2P_PS_SCAN = 2, + P2P_PS_SCAN_DONE = 3, + P2P_PS_ALLSTASLEEP = 4, // for P2P GO +}; + +enum p2p_ps_mode { + P2P_PS_NONE = 0, + P2P_PS_CTWINDOW = 1, + P2P_PS_NOA = 2, + P2P_PS_MIX = 3, // CTWindow and NoA +}; + +struct rtl_p2p_ps_info { + enum p2p_ps_mode p2p_ps_mode; /* indicate p2p ps mode */ + enum p2p_ps_state p2p_ps_state; /* indicate p2p ps state */ + u8 noa_index; /* Identifies and instance of Notice of Absence timing. */ + /* Client traffic window. A period of time in TU after TBTT. */ + u8 ctwindow; + u8 opp_ps; /* opportunistic power save. */ + u8 noa_num; /* number of NoA descriptor in P2P IE. */ + /* Count for owner, Type of client. */ + u8 noa_count_type[P2P_MAX_NOA_NUM]; + /* Max duration for owner, preferred or + * min acceptable duration for client. */ + u32 noa_duration[P2P_MAX_NOA_NUM]; + /* Length of interval for owner, preferred or + * max acceptable interval of client. */ + u32 noa_interval[P2P_MAX_NOA_NUM]; + /* schedule expressed in terms of the lower 4 bytes of the TSF timer. */ + u32 noa_start_time[P2P_MAX_NOA_NUM]; +}; + + struct p2p_ps_offload_t { + u8 Offload_En:1; + u8 role:1; /* 1: Owner, 0: Client */ + u8 CTWindow_En:1; + u8 NoA0_En:1; + u8 NoA1_En:1; + u8 AllStaSleep:1; + u8 discovery:1; + u8 reserved:1; +}; + +#define IQK_MATRIX_REG_NUM 8 +#define IQK_MATRIX_SETTINGS_NUM (14+24+21) // Channels_2_4G_NUM + Channels_5G_20M_NUM + Channels_5G +struct iqk_matrix_regs { + bool b_iqk_done; + long value[1][IQK_MATRIX_REG_NUM]; +}; + +struct rtl_phy { + struct bb_reg_def phyreg_def[4]; /*Radio A/B/C/D */ + struct init_gain initgain_backup; + enum io_type current_io_type; + + u8 rf_mode; + u8 rf_type; + u8 current_chan_bw; + u8 set_bwmode_inprogress; + u8 sw_chnl_inprogress; + u8 sw_chnl_stage; + u8 sw_chnl_step; + u8 current_channel; + u8 h2c_box_num; + u8 set_io_inprogress; + u8 lck_inprogress; + + /* record for power tracking */ + s32 reg_e94; + s32 reg_e9c; + s32 reg_ea4; + s32 reg_eac; + s32 reg_eb4; + s32 reg_ebc; + s32 reg_ec4; + s32 reg_ecc; + u8 rfpienable; + u8 reserve_0; + u16 reserve_1; + u32 reg_c04, reg_c08, reg_874; + u32 adda_backup[16]; + u32 iqk_mac_backup[IQK_MAC_REG_NUM]; + u32 iqk_bb_backup[10]; + bool iqk_initialized; + + bool rfpath_rx_enable[MAX_RF_PATH]; + /*Jaguar*/ + u8 reg_837; + /* Dul mac */ + bool b_need_iqk; + struct iqk_matrix_regs iqk_matrix_regsetting[IQK_MATRIX_SETTINGS_NUM]; + + bool b_rfpi_enable; + + bool b_iqk_in_progress; + + u8 pwrgroup_cnt; + u8 bcck_high_power; + /* this is for 88E & 8723A */ + u32 mcs_txpwrlevel_origoffset[MAX_PG_GROUP][16]; + /* this is for 92EE */ + u32 tx_power_by_rate_offset[TX_PWR_BY_RATE_NUM_BAND] + [TX_PWR_BY_RATE_NUM_RF] + [TX_PWR_BY_RATE_NUM_RF] + [TX_PWR_BY_RATE_NUM_SECTION]; + u8 txpwr_by_rate_base_24g[TX_PWR_BY_RATE_NUM_RF] + [TX_PWR_BY_RATE_NUM_RF] + [MAX_BASE_NUM_IN_PHY_REG_PG_24G]; + + u8 txpwr_by_rate_base_5g[TX_PWR_BY_RATE_NUM_RF] + [TX_PWR_BY_RATE_NUM_RF] + [MAX_BASE_NUM_IN_PHY_REG_PG_5G]; + u8 default_initialgain[4]; + + /* the current Tx power level */ + u8 cur_cck_txpwridx; + u8 cur_ofdm24g_txpwridx; + u8 cur_bw20_txpwridx; + u8 cur_bw40_txpwridx; + + u32 rfreg_chnlval[2]; + bool b_apk_done; + u32 reg_rf3c[2]; /* pathA / pathB */ + + u32 backup_rf_0x1a;/*92ee*/ + /* bfsync */ + u8 framesync; + u32 framesync_c34; + + u8 num_total_rfpath; + u16 rf_pathmap; + + u8 hw_rof_enable; /*Enable GPIO[9] as WL RF HW PDn source*/ + + enum rt_polarity_ctl polarity_ctl; +}; + +#define RTL_AGG_STOP 0 +#define RTL_AGG_PROGRESS 1 +#define RTL_AGG_START 2 +#define RTL_AGG_OPERATIONAL 3 +#define RTL_RX_AGG_START 1 +#define RTL_RX_AGG_STOP 0 + +struct rtl_priv; +struct rtl_io { + struct device *dev; + + /*PCI MEM map */ + unsigned long pci_mem_end; /*shared mem end */ + unsigned long pci_mem_start; /*shared mem start */ + + /*PCI IO map */ + unsigned long pci_base_addr; /*device I/O address */ + + void (*write8_async) (struct rtl_priv * rtlpriv, u32 addr, u8 val); + void (*write16_async) (struct rtl_priv * rtlpriv, u32 addr, u16 val); + void (*write32_async) (struct rtl_priv * rtlpriv, u32 addr, u32 val); + + u8(*read8_sync) (struct rtl_priv * rtlpriv, u32 addr); + u16(*read16_sync) (struct rtl_priv * rtlpriv, u32 addr); + u32(*read32_sync) (struct rtl_priv * rtlpriv, u32 addr); + +}; + +struct rtl_mac { + u8 mac_addr[ETH_ALEN]; + u8 mac80211_registered; + u8 beacon_enabled; + + u32 tx_ss_num; + u32 rx_ss_num; + + struct ieee80211_supported_band bands[IEEE80211_NUM_BANDS]; + struct ieee80211_hw *hw; + struct ieee80211_vif *vif; + enum nl80211_iftype opmode; + + /*Probe Beacon management */ + enum rtl_link_state link_state; + + int n_channels; + int n_bitrates; + + bool offchan_deley; + u8 p2p; /*using p2p role*/ + bool p2p_in_use; + + /*filters */ + u32 rx_conf; + + bool act_scanning; + u8 cnt_after_linked; + bool skip_scan; + + /* early mode */ + /* skb wait queue */ + struct sk_buff_head skb_waitq[MAX_TID_COUNT]; + + /*RDG*/ + bool rdg_en; + + /*AP*/ + u8 bssid[6]; + u32 vendor; + u32 basic_rates; /* b/g rates */ + u8 ht_enable; + u8 bw_40; + u8 mode; /* wireless mode */ + u8 slot_time; + u8 short_preamble; + u8 use_cts_protect; + u8 cur_40_prime_sc; + u8 cur_40_prime_sc_bk; + u8 cur_80_prime_sc; + u64 tsf; + u8 retry_short; + u8 retry_long; + u16 assoc_id; + bool bhiddenssid; + + /*IBSS*/ + int beacon_interval; + + /*AMPDU*/ + u8 min_space_cfg; /*For Min spacing configurations */ + u8 max_mss_density; + u8 current_ampdu_factor; + u8 current_ampdu_density; + + /*QOS & EDCA */ + struct ieee80211_tx_queue_params edca_param[RTL_MAC80211_NUM_QUEUE]; + struct rtl_qos_parameters ac[AC_MAX]; +}; + +struct rtl_hal { + struct ieee80211_hw *hw; + + bool driver_is_goingto_unload; + bool up_first_time; + bool bfirst_init; + bool being_init_adapter; + bool b_bbrf_ready; + bool b_mac_func_enable; + bool b_pre_edcca_enable; + + enum intf_type interface; + u16 hw_type; /*92c or 92d or 92s and so on */ + u8 ic_class; + u8 oem_id; + u32 version; /*version of chip */ + u8 state; /*stop 0, start 1 */ + u8 boad_type; + + /*firmware */ + u32 fwsize; + u8 *pfirmware; + u16 fw_version; + u16 fw_subversion; + bool b_h2c_setinprogress; + u8 last_hmeboxnum; + bool bfw_ready; + + /*Reserve page start offset except beacon in TxQ. */ + u8 fw_rsvdpage_startoffset; + u8 h2c_txcmd_seq; + u8 current_ra_rate; + + /* FW Cmd IO related */ + u16 fwcmd_iomap; + u32 fwcmd_ioparam; + bool set_fwcmd_inprogress; + u8 current_fwcmd_io; + + bool bfw_clk_change_in_progress; + bool ballow_sw_to_change_hwclc; + u8 fw_ps_state; + struct p2p_ps_offload_t p2p_ps_offload; + /**/ + bool driver_going2unload; + + /*AMPDU init min space*/ + u8 minspace_cfg; /*For Min spacing configurations */ + + /* Dul mac */ + enum macphy_mode macphymode; + enum band_type current_bandtype; /* 0:2.4G, 1:5G */ + enum band_type current_bandtypebackup; + enum band_type bandset; + /* dual MAC 0--Mac0 1--Mac1 */ + u32 interfaceindex; + /* just for DulMac S3S4 */ + u8 macphyctl_reg; + bool b_earlymode_enable; + u8 max_earlymode_num; + /* Dul mac*/ + bool during_mac0init_radiob; + bool during_mac1init_radioa; + bool reloadtxpowerindex; + /* True if IMR or IQK have done + for 2.4G in scan progress */ + bool b_load_imrandiqk_setting_for2g; + + bool disable_amsdu_8k; + bool bmaster_of_dmsp; + bool bslave_of_dmsp; + + u16 rx_tag;/*for 92ee*/ + u8 rts_en; +}; + +struct rtl_security { + /*default 0 */ + bool use_sw_sec; + + bool being_setkey; + bool use_defaultkey; + /*Encryption Algorithm for Unicast Packet */ + enum rt_enc_alg pairwise_enc_algorithm; + /*Encryption Algorithm for Brocast/Multicast */ + enum rt_enc_alg group_enc_algorithm; + /*Cam Entry Bitmap */ + u32 hwsec_cam_bitmap; + u8 hwsec_cam_sta_addr[TOTAL_CAM_ENTRY][ETH_ALEN]; + /*local Key buffer, indx 0 is for + pairwise key 1-4 is for agoup key. */ + u8 key_buf[KEY_BUF_SIZE][MAX_KEY_LEN]; + u8 key_len[KEY_BUF_SIZE]; + + /*The pointer of Pairwise Key, + it always points to KeyBuf[4] */ + u8 *pairwise_key; +}; + +struct rtl_dig { + u8 dig_enable_flag; + u8 dig_ext_port_stage; + + u32 rssi_lowthresh; + u32 rssi_highthresh; + + u32 fa_lowthresh; + u32 fa_highthresh; + + u8 cursta_connectstate; + u8 presta_connectstate; + u8 curmultista_connectstate; + + u8 pre_igvalue; + u8 cur_igvalue; + + char backoff_val; + char backoff_val_range_max; + char backoff_val_range_min; + u8 rx_gain_range_max; + u8 rx_gain_range_min; + u8 rssi_val_min; + u8 min_undecorated_pwdb_for_dm; + long last_min_undecorated_pwdb_for_dm; + + u8 pre_cck_pd_state; + u8 cur_cck_pd_state; + + u8 large_fa_hit; + u8 forbidden_igi; + u32 recover_cnt; + +}; + +struct rtl_pstbl { + u8 pre_ccastate; + u8 cur_ccasate; + + u8 pre_rfstate; + u8 cur_rfstate; + + long rssi_val_min; + +}; + +#define ASSOCIATE_ENTRY_NUM 32+1 + +struct fast_ant_trainning{ + u8 bssid[6]; + u8 antsel_rx_keep_0; + u8 antsel_rx_keep_1; + u8 antsel_rx_keep_2; + u32 ant_sum_rssi[7]; + u32 ant_rssi_cnt[7]; + u32 ant_ave_rssi[7]; + u8 fat_state; + u32 train_idx; + u8 antsel_a[ASSOCIATE_ENTRY_NUM]; + u8 antsel_b[ASSOCIATE_ENTRY_NUM]; + u8 antsel_c[ASSOCIATE_ENTRY_NUM]; + u32 main_ant_sum[ASSOCIATE_ENTRY_NUM]; + u32 aux_ant_sum[ASSOCIATE_ENTRY_NUM]; + u32 main_ant_cnt[ASSOCIATE_ENTRY_NUM]; + u32 aux_ant_cnt[ASSOCIATE_ENTRY_NUM]; + u8 rx_idle_ant; + bool b_becomelinked; +}; + +struct dm_phy_dbg_info { + char rx_snrdb[4]; + u64 num_qry_phy_status; + u64 num_qry_phy_status_cck; + u64 num_qry_phy_status_ofdm; + u16 num_qry_beacon_pkt; + u16 num_non_be_pkt; + s32 rx_evm[4]; +}; + +struct rtl_dm { + /*PHY status for DM */ + long entry_min_undecoratedsmoothed_pwdb; + long undecorated_smoothed_pwdb; /*out dm */ + long entry_max_undecoratedsmoothed_pwdb; + bool b_dm_initialgain_enable; + bool bdynamic_txpower_enable; + bool bcurrent_turbo_edca; + bool bis_any_nonbepkts; /*out dm */ + bool bis_cur_rdlstate; + bool btxpower_trackinginit; + bool b_disable_framebursting; + bool b_cck_inch14; + bool btxpower_tracking; + bool b_useramask; + bool brfpath_rxenable[4]; + bool binform_fw_driverctrldm; + bool bcurrent_mrc_switch; + u8 txpowercount; + + u8 thermalvalue_rxgain; + u8 thermalvalue_iqk; + u8 thermalvalue_lck; + u8 thermalvalue; + u8 thermalvalue_avg[AVG_THERMAL_NUM]; + u8 thermalvalue_avg_index; + bool bdone_txpower; + u8 last_dtp_lvl; + u8 dynamic_txhighpower_lvl; /*Tx high power level */ + u8 dm_flag; /*Indicate if each dynamic mechanism's status. */ + u8 dm_type; + u8 txpower_track_control; + bool binterrupt_migration; + bool bdisable_tx_int; + char ofdm_index[MAX_RF_PATH]; + u8 default_ofdm_index; + u8 default_cck_index; + char cck_index; + char delta_power_index[MAX_RF_PATH]; + char delta_power_index_last[MAX_RF_PATH]; + char power_index_offset[MAX_RF_PATH]; + char aboslute_ofdm_swing_idx[MAX_RF_PATH]; + char remnant_ofdm_swing_idx[MAX_RF_PATH]; + char remnant_cck_idx; + bool modify_txagc_flag_path_a; + bool modify_txagc_flag_path_b; + + bool b_one_entry_only; + struct dm_phy_dbg_info dbginfo; + /* Dynamic ATC switch */ + + bool atc_status; + bool large_cfo_hit; + bool is_freeze; + int cfo_tail[2]; + int cfo_ave_pre; + int crystal_cap; + u8 cfo_threshold; + u32 packet_count; + u32 packet_count_pre; + u8 tx_rate; + + + /*88e tx power tracking*/ + u8 bb_swing_idx_ofdm[MAX_RF_PATH]; + u8 bb_swing_idx_ofdm_current; + u8 bb_swing_idx_ofdm_base[MAX_RF_PATH]; + bool bb_swing_flag_Ofdm; + u8 bb_swing_idx_cck; + u8 bb_swing_idx_cck_current; + u8 bb_swing_idx_cck_base; + bool bb_swing_flag_cck; + + char bb_swing_diff_2g; + char bb_swing_diff_5g; + + u8 delta_swing_table_idx_24gccka_p[DELTA_SWINGIDX_SIZE]; + u8 delta_swing_table_idx_24gccka_n[DELTA_SWINGIDX_SIZE]; + u8 delta_swing_table_idx_24gcckb_p[DELTA_SWINGIDX_SIZE]; + u8 delta_swing_table_idx_24gcckb_n[DELTA_SWINGIDX_SIZE]; + u8 delta_swing_table_idx_24ga_p[DELTA_SWINGIDX_SIZE]; + u8 delta_swing_table_idx_24ga_n[DELTA_SWINGIDX_SIZE]; + u8 delta_swing_table_idx_24gb_p[DELTA_SWINGIDX_SIZE]; + u8 delta_swing_table_idx_24gb_n[DELTA_SWINGIDX_SIZE]; + u8 delta_swing_table_idx_5ga_p[BAND_NUM][DELTA_SWINGIDX_SIZE]; + u8 delta_swing_table_idx_5ga_n[BAND_NUM][DELTA_SWINGIDX_SIZE]; + u8 delta_swing_table_idx_5gb_p[BAND_NUM][DELTA_SWINGIDX_SIZE]; + u8 delta_swing_table_idx_5gb_n[BAND_NUM][DELTA_SWINGIDX_SIZE]; + u8 delta_swing_table_idx_24ga_p_8188e[DELTA_SWINGIDX_SIZE]; + u8 delta_swing_table_idx_24ga_n_8188e[DELTA_SWINGIDX_SIZE]; + + + /* DMSP */ + bool supp_phymode_switch; + + /* DulMac */ + struct rtl_dig dm_digtable; + struct rtl_pstbl dm_pstable; + struct fast_ant_trainning fat_table; + + u8 resp_tx_path; + u8 path_sel; + u32 patha_sum; + u32 pathb_sum; + u32 patha_cnt; + u32 pathb_cnt; + + u8 pre_channel; + u8 *p_channel; + u8 linked_interval; + + u64 last_tx_ok_cnt; + u64 last_rx_ok_cnt; +}; + +#define EFUSE_MAX_LOGICAL_SIZE 256 + +struct rtl_efuse { + bool bautoLoad_ok; + bool bootfromefuse; + u16 max_physical_size; + + u8 efuse_map[2][EFUSE_MAX_LOGICAL_SIZE]; + u16 efuse_usedbytes; + u8 efuse_usedpercentage; +#ifdef EFUSE_REPG_WORKAROUND + bool efuse_re_pg_sec1flag; + u8 efuse_re_pg_data[8]; +#endif + + u8 autoload_failflag; + u8 autoload_status; + + short epromtype; + u16 eeprom_vid; + u16 eeprom_did; + u16 eeprom_svid; + u16 eeprom_smid; + u8 eeprom_oemid; + u16 eeprom_channelplan; + u8 eeprom_version; + + u8 dev_addr[6]; + u8 board_type; + u8 wowlan_enable; + u8 antenna_div_cfg; + u8 antenna_div_type; + + bool b_txpwr_fromeprom; + u8 eeprom_crystalcap; + u8 eeprom_tssi[2]; + u8 eeprom_tssi_5g[3][2]; /* for 5GL/5GM/5GH band. */ + u8 eeprom_pwrlimit_ht20[CHANNEL_GROUP_MAX]; + u8 eeprom_pwrlimit_ht40[CHANNEL_GROUP_MAX]; + u8 eeprom_chnlarea_txpwr_cck[2][CHANNEL_GROUP_MAX_2G]; + u8 eeprom_chnlarea_txpwr_ht40_1s[2][CHANNEL_GROUP_MAX]; + u8 eeprom_chnlarea_txpwr_ht40_2sdiif[2][CHANNEL_GROUP_MAX]; + + + u8 internal_pa_5g[2]; /* pathA / pathB */ + u8 eeprom_c9; + u8 eeprom_cc; + + /*For power group */ + u8 eeprom_pwrgroup[2][3]; + u8 pwrgroup_ht20[2][CHANNEL_MAX_NUMBER]; + u8 pwrgroup_ht40[2][CHANNEL_MAX_NUMBER]; + + u8 txpwrlevel_cck[MAX_RF_PATH][CHANNEL_MAX_NUMBER_2G]; + /*For HT 40MHZ pwr */ + u8 txpwrlevel_ht40_1s[MAX_RF_PATH][CHANNEL_MAX_NUMBER]; + /*For HT 40MHZ pwr */ + u8 txpwrlevel_ht40_2s[MAX_RF_PATH][CHANNEL_MAX_NUMBER]; + char txpwr_cckdiff[MAX_RF_PATH][MAX_TX_COUNT]; /*CCK_24G_Diff*/ + /*HT 20<->40 Pwr diff */ + char txpwr_ht20diff[MAX_RF_PATH][MAX_TX_COUNT]; /*BW20_24G_Diff*/ + char txpwr_ht40diff[MAX_RF_PATH][MAX_TX_COUNT];/*BW40_24G_Diff*/ + /*For HT<->legacy pwr diff */ + char txpwr_legacyhtdiff[MAX_RF_PATH][MAX_TX_COUNT];/*OFDM_24G_Diff*/ + + u8 txpwr_5g_bw40base[MAX_RF_PATH][CHANNEL_MAX_NUMBER]; + u8 txpwr_5g_bw80base[MAX_RF_PATH][CHANNEL_MAX_NUMBER_5G_80M]; + char txpwr_5g_ofdmdiff[MAX_RF_PATH][MAX_TX_COUNT]; + char txpwr_5g_bw20diff[MAX_RF_PATH][MAX_TX_COUNT]; + char txpwr_5g_bw40diff[MAX_RF_PATH][MAX_TX_COUNT]; + char txpwr_5g_bw80diff[MAX_RF_PATH][MAX_TX_COUNT]; + + u8 txpwr_safetyflag; /* Band edge enable flag */ + u16 eeprom_txpowerdiff; + u8 legacy_httxpowerdiff; /* Legacy to HT rate power diff */ + u8 antenna_txpwdiff[3]; + + u8 eeprom_regulatory; + u8 eeprom_thermalmeter; + u8 thermalmeter[2];/*ThermalMeter, index 0 for RFIC0, and 1 for RFIC1 */ + u16 tssi_13dbm; + u8 crystalcap; /* CrystalCap. */ + u8 delta_iqk; + u8 delta_lck; + + u8 legacy_ht_txpowerdiff; /*Legacy to HT rate power diff */ + bool b_apk_thermalmeterignore; + + bool b1x1_recvcombine; + bool b1ss_support; + + /*channel plan */ + u8 channel_plan; +}; + +struct rtl_ps_ctl { + bool pwrdomain_protect; + bool b_in_powersavemode; + bool rfchange_inprogress; + bool b_swrf_processing; + bool b_hwradiooff; + /* + * just for PCIE ASPM + * If it supports ASPM, Offset[560h] = 0x40, + * otherwise Offset[560h] = 0x00. + * */ + bool b_support_aspm; + bool b_support_backdoor; + + /*for LPS */ + enum rt_psmode dot11_psmode; /*Power save mode configured. */ + bool b_swctrl_lps; + bool b_fwctrl_lps; + u8 fwctrl_psmode; + /*For Fw control LPS mode */ + u8 b_reg_fwctrl_lps; + /*Record Fw PS mode status. */ + bool b_fw_current_inpsmode; + u8 reg_max_lps_awakeintvl; + bool report_linked; + bool b_low_power_enable;/*for 32k*/ + + /*for IPS */ + bool b_inactiveps; + + u32 rfoff_reason; + + /*RF OFF Level */ + u32 cur_ps_level; + u32 reg_rfps_level; + + /*just for PCIE ASPM */ + u8 const_amdpci_aspm; + + enum rf_pwrstate inactive_pwrstate; + enum rf_pwrstate rfpwr_state; /*cur power state */ + + /* for SW LPS*/ + bool sw_ps_enabled; + bool state; + bool state_inap; + bool multi_buffered; + u16 nullfunc_seq; + unsigned int dtim_counter; + unsigned int sleep_ms; + unsigned long last_sleep_jiffies; + unsigned long last_awake_jiffies; + unsigned long last_delaylps_stamp_jiffies; + unsigned long last_dtim; + unsigned long last_beacon; + unsigned long last_action; + unsigned long last_slept; + + /*For P2P PS */ + struct rtl_p2p_ps_info p2p_ps_info; + u8 pwr_mode; + u8 smart_ps; +}; + +struct rtl_stats { + u8 psaddr[ETH_ALEN]; + u32 mac_time[2]; + s8 rssi; + u8 signal; + u8 noise; + u8 rate; /* hw desc rate */ + u8 rawdata; + u8 received_channel; + u8 control; + u8 mask; + u8 freq; + u16 len; + u64 tsf; + u32 beacon_time; + u8 nic_type; + u16 length; + u8 signalquality; /*in 0-100 index. */ + /* + * Real power in dBm for this packet, + * no beautification and aggregation. + * */ + s32 recvsignalpower; + s8 rxpower; /*in dBm Translate from PWdB */ + u8 signalstrength; /*in 0-100 index. */ + u16 b_hwerror:1; + u16 b_crc:1; + u16 b_icv:1; + u16 b_shortpreamble:1; + u16 antenna:1; + u16 decrypted:1; + u16 wakeup:1; + u32 timestamp_low; + u32 timestamp_high; + bool b_shift; + + u8 rx_drvinfo_size; + u8 rx_bufshift; + bool b_isampdu; + bool b_isfirst_ampdu; + bool rx_is40Mhzpacket; + u32 rx_pwdb_all; + u8 rx_mimo_signalstrength[4]; /*in 0~100 index */ + s8 rx_mimo_signalquality[4]; + u8 rx_mimo_evm_dbm[4]; + u16 cfo_short[4]; /* per-path's Cfo_short */ + u16 cfo_tail[4]; + + u8 rx_pwr[4]; /* per-path's pwdb */ + u8 rx_snr[4]; /* per-path's SNR */ + u8 bandwidth; + u8 bt_coex_pwr_adjust; + bool b_packet_matchbssid; + bool b_is_cck; + bool b_is_ht; + bool b_packet_toself; + bool b_packet_beacon; /*for rssi */ + char cck_adc_pwdb[4]; /*for rx path selection */ + + u8 packet_report_type; + + u32 macid; + u8 wake_match; + u32 bt_rx_rssi_percentage; + u32 macid_valid_entry[2]; +}; + +struct rt_link_detect { + /* count for raoming */ + u32 bcn_rx_inperiod; + u32 roam_times; + + u32 num_tx_in4period[4]; + u32 num_rx_in4period[4]; + + u32 num_tx_inperiod; + u32 num_rx_inperiod; + + bool b_busytraffic; + bool b_tx_busy_traffic; + bool b_rx_busy_traffic; + bool b_higher_busytraffic; + bool b_higher_busyrxtraffic; + + u32 tidtx_in4period[MAX_TID_COUNT][4]; + u32 tidtx_inperiod[MAX_TID_COUNT]; + bool higher_busytxtraffic[MAX_TID_COUNT]; +}; + +struct rtl_tcb_desc { + u8 b_packet_bw:1; + u8 b_multicast:1; + u8 b_broadcast:1; + + u8 b_rts_stbc:1; + u8 b_rts_enable:1; + u8 b_cts_enable:1; + u8 b_rts_use_shortpreamble:1; + u8 b_rts_use_shortgi:1; + u8 rts_sc:1; + u8 b_rts_bw:1; + u8 rts_rate; + + u8 use_shortgi:1; + u8 use_shortpreamble:1; + u8 use_driver_rate:1; + u8 disable_ratefallback:1; + + u8 ratr_index; + u8 mac_id; + u8 hw_rate; + + u8 b_last_inipkt:1; + u8 b_cmd_or_init:1; + u8 queue_index; + + /* early mode */ + u8 empkt_num; + /* The max value by HW */ + u32 empkt_len[10]; + bool btx_enable_sw_calc_duration; + /* used for hal construct pkt, + * we may set desc when tx */ + u8 self_desc; +}; + +struct proxim { + bool proxim_on; + + void *proximity_priv; + int (*proxim_rx)(struct ieee80211_hw *hw, struct rtl_stats *status, + struct sk_buff *skb); + u8 (*proxim_get_var)(struct ieee80211_hw *hw, u8 type); +}; + +struct rtl_hal_ops { + int (*init_sw_vars) (struct ieee80211_hw * hw); + void (*deinit_sw_vars) (struct ieee80211_hw * hw); + void (*read_eeprom_info) (struct ieee80211_hw * hw); + void (*interrupt_recognized) (struct ieee80211_hw * hw, + u32 * p_inta, u32 * p_intb); + int (*hw_init) (struct ieee80211_hw * hw); + void (*hw_disable) (struct ieee80211_hw * hw); + void (*hw_suspend) (struct ieee80211_hw * hw); + void (*hw_resume) (struct ieee80211_hw * hw); + void (*enable_interrupt) (struct ieee80211_hw * hw); + void (*disable_interrupt) (struct ieee80211_hw * hw); + int (*set_network_type) (struct ieee80211_hw * hw, + enum nl80211_iftype type); + void (*set_chk_bssid)(struct ieee80211_hw *hw, + bool check_bssid); + void (*set_bw_mode) (struct ieee80211_hw * hw, + enum nl80211_channel_type ch_type); + u8(*switch_channel) (struct ieee80211_hw * hw); + void (*set_qos) (struct ieee80211_hw * hw, int aci); + void (*set_bcn_reg) (struct ieee80211_hw * hw); + void (*set_bcn_intv) (struct ieee80211_hw * hw); + void (*update_interrupt_mask) (struct ieee80211_hw * hw, + u32 add_msr, u32 rm_msr); + void (*get_hw_reg) (struct ieee80211_hw * hw, u8 variable, u8 * val); + void (*set_hw_reg) (struct ieee80211_hw * hw, u8 variable, u8 * val); + void (*update_rate_tbl) (struct ieee80211_hw * hw, + struct ieee80211_sta *sta, u8 rssi_level); + void (*pre_fill_tx_bd_desc) (struct ieee80211_hw *hw, u8 *tx_bd_desc, + u8 *desc, u8 queue_index, + struct sk_buff *skb, dma_addr_t addr); + u16 (*rx_desc_buff_remained_cnt) (struct ieee80211_hw *hw, + u8 queue_index); + void (*rx_check_dma_ok) (struct ieee80211_hw *hw, u8 *header_desc, + u8 queue_index); + void (*fill_tx_desc) (struct ieee80211_hw * hw, + struct ieee80211_hdr * hdr, + u8 * pdesc_tx, u8 * pbd_desc, + struct ieee80211_tx_info * info, +/**/ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,7,0)) +/**/ + struct ieee80211_sta *sta, +/**/ +#endif +/**/ + struct sk_buff * skb, u8 hw_queue, + struct rtl_tcb_desc *ptcb_desc); + void (*fill_tx_cmddesc) (struct ieee80211_hw * hw, u8 * pdesc, + bool b_firstseg, bool b_lastseg, + struct sk_buff * skb); + bool(*query_rx_desc) (struct ieee80211_hw * hw, + struct rtl_stats * status, + struct ieee80211_rx_status * rx_status, + u8 * pdesc, struct sk_buff * skb); + void (*set_channel_access) (struct ieee80211_hw * hw); + bool(*radio_onoff_checking) (struct ieee80211_hw * hw, u8 * valid); + void (*dm_watchdog) (struct ieee80211_hw * hw); + void (*scan_operation_backup) (struct ieee80211_hw * hw, u8 operation); + bool(*set_rf_power_state) (struct ieee80211_hw * hw, + enum rf_pwrstate rfpwr_state); + void (*led_control) (struct ieee80211_hw * hw, + enum led_ctl_mode ledaction); + void (*set_desc) (struct ieee80211_hw *hw, u8 * pdesc, bool istx, + u8 desc_name, u8 * val); + u32(*get_desc) (u8 * pdesc, bool istx, u8 desc_name); + bool (*is_tx_desc_closed) (struct ieee80211_hw *hw, + u8 hw_queue, u16 index); + void (*tx_polling) (struct ieee80211_hw * hw, u8 hw_queue); + void (*enable_hw_sec) (struct ieee80211_hw * hw); + void (*set_key) (struct ieee80211_hw * hw, u32 key_index, + u8 * p_macaddr, bool is_group, u8 enc_algo, + bool is_wepkey, bool clear_all); + void (*init_sw_leds) (struct ieee80211_hw * hw); + u32(*get_bbreg) (struct ieee80211_hw * hw, u32 regaddr, u32 bitmask); + void (*set_bbreg) (struct ieee80211_hw * hw, u32 regaddr, u32 bitmask, + u32 data); + u32(*get_rfreg) (struct ieee80211_hw * hw, enum radio_path rfpath, + u32 regaddr, u32 bitmask); + void (*set_rfreg) (struct ieee80211_hw * hw, enum radio_path rfpath, + u32 regaddr, u32 bitmask, u32 data); + void (*allow_all_destaddr)(struct ieee80211_hw *hw, + bool allow_all_da, bool write_into_reg); + void (*linked_set_reg) (struct ieee80211_hw * hw); + void (*check_switch_to_dmdp) (struct ieee80211_hw * hw); + void (*dualmac_easy_concurrent) (struct ieee80211_hw *hw); + void (*dualmac_switch_to_dmdp) (struct ieee80211_hw *hw); + void (*c2h_command_handle) (struct ieee80211_hw *hw); + void (*bt_wifi_media_status_notify) (struct ieee80211_hw *hw, bool mstate); + void (*bt_turn_off_bt_coexist_before_enter_lps) (struct ieee80211_hw *hw); + void (*fill_h2c_cmd) (struct ieee80211_hw *hw, u8 element_id, + u32 cmd_len, u8 *p_cmdbuffer); + bool (*get_btc_status) (void); + u32 (*rx_command_packet_handler)(struct ieee80211_hw *hw, struct rtl_stats status, struct sk_buff *skb); +}; + +struct rtl_intf_ops { + /*com */ + void (*read_efuse_byte)(struct ieee80211_hw *hw, u16 _offset, u8 *pbuf); + int (*adapter_start) (struct ieee80211_hw * hw); + void (*adapter_stop) (struct ieee80211_hw * hw); + bool (*check_buddy_priv)(struct ieee80211_hw *hw, + struct rtl_priv **buddy_priv); + +/**/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)) + int (*adapter_tx) (struct ieee80211_hw * hw, struct sk_buff * skb, + struct rtl_tcb_desc *ptcb_desc); +#else +/**/ + int (*adapter_tx) (struct ieee80211_hw *hw, + struct ieee80211_sta *sta, + struct sk_buff *skb, + struct rtl_tcb_desc *ptcb_desc); +/**/ +#endif +/**/ +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)) + void (*flush)(struct ieee80211_hw *hw, u32 queues, bool drop); +#else + void (*flush)(struct ieee80211_hw *hw, bool drop); +#endif + int (*reset_trx_ring) (struct ieee80211_hw * hw); +/**/ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)) + bool (*waitq_insert) (struct ieee80211_hw *hw, struct sk_buff *skb); +#else +/**/ + bool (*waitq_insert) (struct ieee80211_hw *hw, + struct ieee80211_sta *sta, + struct sk_buff *skb); +/**/ +#endif +/**/ + + /*pci */ + void (*disable_aspm) (struct ieee80211_hw * hw); + void (*enable_aspm) (struct ieee80211_hw * hw); + + /*usb */ +}; + +struct rtl_mod_params { + /* default: 0 = using hardware encryption */ + bool sw_crypto; + + /* default: 1 = using no linked power save */ + bool b_inactiveps; + + /* default: 1 = using linked sw power save */ + bool b_swctrl_lps; + + /* default: 1 = using linked fw power save */ + bool b_fwctrl_lps; +}; + +struct rtl_hal_cfg { + u8 bar_id; + bool write_readback; + char *name; + char *fw_name; + struct rtl_hal_ops *ops; + struct rtl_mod_params *mod_params; + + /*this map used for some registers or vars + defined int HAL but used in MAIN */ + u32 maps[RTL_VAR_MAP_MAX]; + +}; + +struct rtl_locks { + /* mutex */ + struct mutex conf_mutex; + + /*spin lock */ + spinlock_t ips_lock; + spinlock_t irq_th_lock; + spinlock_t h2c_lock; + spinlock_t rf_ps_lock; + spinlock_t rf_lock; + spinlock_t lps_lock; + spinlock_t waitq_lock; + spinlock_t entry_list_lock; + + /*FW clock change */ + spinlock_t fw_ps_lock; + + /*Dul mac*/ + spinlock_t cck_and_rw_pagea_lock; + + /*Easy concurrent*/ + spinlock_t check_sendpkt_lock; + + spinlock_t iqk_lock; +}; + +struct rtl_works { + struct ieee80211_hw *hw; + + /*timer */ + struct timer_list watchdog_timer; + struct timer_list dualmac_easyconcurrent_retrytimer; + struct timer_list fw_clockoff_timer; + struct timer_list fast_antenna_trainning_timer; + /*task */ + struct tasklet_struct irq_tasklet; + struct tasklet_struct irq_prepare_bcn_tasklet; + + /*work queue */ + struct workqueue_struct *rtl_wq; + struct delayed_work watchdog_wq; + struct delayed_work ips_nic_off_wq; + + /* For SW LPS */ + struct delayed_work ps_work; + struct delayed_work ps_rfon_wq; + struct delayed_work fwevt_wq; +}; + +struct rtl_debug { + u32 dbgp_type[DBGP_TYPE_MAX]; + u32 global_debuglevel; + u64 global_debugcomponents; + + /* add for proc debug */ + struct proc_dir_entry *proc_dir; + char proc_name[20]; +}; + +#define MIMO_PS_STATIC 0 +#define MIMO_PS_DYNAMIC 1 +#define MIMO_PS_NOLIMIT 3 + +struct rtl_dualmac_easy_concurrent_ctl { + enum band_type currentbandtype_backfordmdp; + bool bclose_bbandrf_for_dmsp; + bool bchange_to_dmdp; + bool bchange_to_dmsp; + bool bswitch_in_process; +}; + +struct rtl_dmsp_ctl { + bool bactivescan_for_slaveofdmsp; + bool bscan_for_anothermac_fordmsp; + bool bscan_for_itself_fordmsp; + bool bwritedig_for_anothermacofdmsp; + u32 curdigvalue_for_anothermacofdmsp; + bool bchangecckpdstate_for_anothermacofdmsp; + u8 curcckpdstate_for_anothermacofdmsp; + bool bchangetxhighpowerlvl_for_anothermacofdmsp; + u8 curtxhighlvl_for_anothermacofdmsp; + long rssivalmin_for_anothermacofdmsp; +}; + +struct rtl_global_var { + /* from this list we can get + * other adapter's rtl_priv */ + struct list_head glb_priv_list; + spinlock_t glb_list_lock; +}; + +struct rtl_btc_info { + u8 bt_type; + u8 btcoexist; + u8 ant_num; +}; + +struct rtl_btc_ops { + void (*btc_init_variables) (struct rtl_priv *rtlpriv); + void (*btc_init_hal_vars) (struct rtl_priv *rtlpriv); + void (*btc_init_hw_config) (struct rtl_priv *rtlpriv); + void (*btc_ips_notify) (struct rtl_priv *rtlpriv, u8 type); + void (*btc_scan_notify) (struct rtl_priv *rtlpriv, u8 scantype); + void (*btc_connect_notify) (struct rtl_priv *rtlpriv, u8 action); + void (*btc_mediastatus_notify) (struct rtl_priv *rtlpriv, + enum rt_media_status mstatus); + void (*btc_periodical) (struct rtl_priv *rtlpriv); + void (*btc_halt_notify) (void); + void (*btc_btinfo_notify) (struct rtl_priv *rtlpriv, + u8 * tmp_buf, u8 length); + bool (*btc_is_limited_dig) (struct rtl_priv *rtlpriv); + bool (*btc_is_disable_edca_turbo) (struct rtl_priv *rtlpriv); + bool (*btc_is_bt_disabled) (struct rtl_priv *rtlpriv); +}; + +struct rtl_bt_coexist { + struct rtl_btc_ops *btc_ops; + struct rtl_btc_info btc_info; +}; + + +struct rtl_priv { + struct list_head list; +#ifdef VIF_TODO + struct vif_priv vif_priv; +#endif + struct rtl_priv *buddy_priv; + struct rtl_global_var *glb_var; + struct rtl_dualmac_easy_concurrent_ctl easy_concurrent_ctl; + struct rtl_dmsp_ctl dmsp_ctl; + struct rtl_locks locks; + struct rtl_works works; + struct rtl_mac mac80211; + struct rtl_hal rtlhal; + struct rtl_regulatory regd; + struct rtl_rfkill rfkill; + struct rtl_io io; + struct rtl_phy phy; + struct rtl_dm dm; + struct rtl_security sec; + struct rtl_efuse efuse; + + struct rtl_ps_ctl psc; + struct rate_adaptive ra; + struct dynamic_primary_cca primarycca; + struct wireless_stats stats; + struct rt_link_detect link_info; + struct false_alarm_statistics falsealm_cnt; + + struct rtl_rate_priv *rate_priv; + + struct rtl_debug dbg; + + /* sta entry list for ap adhoc or mesh */ + struct list_head entry_list; + + /* + *hal_cfg : for diff cards + *intf_ops : for diff interrface usb/pcie + */ + struct rtl_hal_cfg *cfg; + struct rtl_intf_ops *intf_ops; + + /*this var will be set by set_bit, + and was used to indicate status of + interface or hardware */ + unsigned long status; + + /* intel Proximity, should be alloc mem + * in intel Proximity module and can only + * be used in intel Proximity mode */ + struct proxim proximity; + + /*for bt coexist use*/ + struct rtl_bt_coexist btcoexist; + + /* seperate 92ee from other ICs, + * 92ee use new trx flow. */ + bool use_new_trx_flow; + /*This must be the last item so + that it points to the data allocated + beyond this structure like: + rtl_pci_priv or rtl_usb_priv */ + u8 priv[0]; +}; + +#define rtl_priv(hw) (((struct rtl_priv *)(hw)->priv)) +#define rtl_mac(rtlpriv) (&((rtlpriv)->mac80211)) +#define rtl_hal(rtlpriv) (&((rtlpriv)->rtlhal)) +#define rtl_efuse(rtlpriv) (&((rtlpriv)->efuse)) +#define rtl_psc(rtlpriv) (&((rtlpriv)->psc)) +#define rtl_sec(rtlpriv) (&((rtlpriv)->sec)) +#define rtl_dm(rtlpriv) (&((rtlpriv)->dm)) +/*************************************** + Bluetooth Co-existance Related +****************************************/ + +enum bt_ant_num { + ANT_X2 = 0, + ANT_X1 = 1, +}; + +enum bt_co_type { + BT_2WIRE = 0, + BT_ISSC_3WIRE = 1, + BT_ACCEL = 2, + BT_CSR_BC4 = 3, + BT_CSR_BC8 = 4, + BT_RTL8756 = 5, + BT_RTL8723A = 6, + BT_RTL8821A = 7, + BT_RTL8723B = 8, + BT_RTL8192E = 9, + BT_RTL8812A = 11, +}; + +enum bt_total_ant_num{ + ANT_TOTAL_X2 = 0, + ANT_TOTAL_X1 = 1 +}; + +enum bt_cur_state { + BT_OFF = 0, + BT_ON = 1, +}; + +enum bt_service_type { + BT_SCO = 0, + BT_A2DP = 1, + BT_HID = 2, + BT_HID_IDLE = 3, + BT_SCAN = 4, + BT_IDLE = 5, + BT_OTHER_ACTION = 6, + BT_BUSY = 7, + BT_OTHERBUSY = 8, + BT_PAN = 9, +}; + +enum bt_radio_shared { + BT_RADIO_SHARED = 0, + BT_RADIO_INDIVIDUAL = 1, +}; + +struct bt_coexist_info { + + /* EEPROM BT info. */ + u8 eeprom_bt_coexist; + u8 eeprom_bt_type; + u8 eeprom_bt_ant_num; + u8 eeprom_bt_ant_isolation; + u8 eeprom_bt_radio_shared; + + u8 bt_coexistence; + u8 bt_ant_num; + u8 bt_coexist_type; + u8 bt_state; + u8 bt_cur_state; /* 0:on, 1:off */ + u8 bt_ant_isolation; /* 0:good, 1:bad */ + u8 bt_pape_ctrl; /* 0:SW, 1:SW/HW dynamic */ + u8 bt_service; + u8 bt_radio_shared_type; + u8 bt_rfreg_origin_1e; + u8 bt_rfreg_origin_1f; + u8 bt_rssi_state; + u32 ratio_tx; + u32 ratio_pri; + u32 bt_edca_ul; + u32 bt_edca_dl; + + bool b_init_set; + bool b_bt_busy_traffic; + bool b_bt_traffic_mode_set; + bool b_bt_non_traffic_mode_set; + + bool b_fw_coexist_all_off; + bool b_sw_coexist_all_off; + bool b_hw_coexist_all_off; + u32 current_state; + u32 previous_state; + u32 current_state_h; + u32 previous_state_h; + + u8 bt_pre_rssi_state; + u8 bt_pre_rssi_state1; + + u8 b_reg_bt_iso; + u8 b_reg_bt_sco; + bool b_balance_on; + u8 bt_active_zero_cnt; + bool b_cur_bt_disabled; + bool b_pre_bt_disabled; + + u8 bt_profile_case; + u8 bt_profile_action; + bool b_bt_busy; + bool b_hold_for_bt_operation; + u8 lps_counter; +}; + + +/**************************************** + mem access macro define start + Call endian free function when + 1. Read/write packet content. + 2. Before write integer to IO. + 3. After read integer from IO. +****************************************/ +/* Convert little data endian to host */ +#define EF1BYTE(_val) \ + ((u8)(_val)) +#define EF2BYTE(_val) \ + (le16_to_cpu(_val)) +#define EF4BYTE(_val) \ + (le32_to_cpu(_val)) + +/* Read data from memory */ +#define READEF1BYTE(_ptr) \ + EF1BYTE(*((u8 *)(_ptr))) +#define READEF2BYTE(_ptr) \ + EF2BYTE(*((u16 *)(_ptr))) +#define READEF4BYTE(_ptr) \ + EF4BYTE(*((u32 *)(_ptr))) + +/* Write data to memory */ +#define WRITEEF1BYTE(_ptr, _val) \ + (*((u8 *)(_ptr)))=EF1BYTE(_val) +#define WRITEEF2BYTE(_ptr, _val) \ + (*((u16 *)(_ptr)))=EF2BYTE(_val) +#define WRITEEF4BYTE(_ptr, _val) \ + (*((u32 *)(_ptr)))=EF4BYTE(_val) + +/*Example: +BIT_LEN_MASK_32(0) => 0x00000000 +BIT_LEN_MASK_32(1) => 0x00000001 +BIT_LEN_MASK_32(2) => 0x00000003 +BIT_LEN_MASK_32(32) => 0xFFFFFFFF*/ +#define BIT_LEN_MASK_32(__bitlen) \ + (0xFFFFFFFF >> (32 - (__bitlen))) +#define BIT_LEN_MASK_16(__bitlen) \ + (0xFFFF >> (16 - (__bitlen))) +#define BIT_LEN_MASK_8(__bitlen) \ + (0xFF >> (8 - (__bitlen))) + +/*Example: +BIT_OFFSET_LEN_MASK_32(0, 2) => 0x00000003 +BIT_OFFSET_LEN_MASK_32(16, 2) => 0x00030000*/ +#define BIT_OFFSET_LEN_MASK_32(__bitoffset, __bitlen) \ + (BIT_LEN_MASK_32(__bitlen) << (__bitoffset)) +#define BIT_OFFSET_LEN_MASK_16(__bitoffset, __bitlen) \ + (BIT_LEN_MASK_16(__bitlen) << (__bitoffset)) +#define BIT_OFFSET_LEN_MASK_8(__bitoffset, __bitlen) \ + (BIT_LEN_MASK_8(__bitlen) << (__bitoffset)) + +/*Description: +Return 4-byte value in host byte ordering from +4-byte pointer in little-endian system.*/ +#define LE_P4BYTE_TO_HOST_4BYTE(__pstart) \ + (EF4BYTE(*((u32 *)(__pstart)))) +#define LE_P2BYTE_TO_HOST_2BYTE(__pstart) \ + (EF2BYTE(*((u16 *)(__pstart)))) +#define LE_P1BYTE_TO_HOST_1BYTE(__pstart) \ + (EF1BYTE(*((u8 *)(__pstart)))) + +/*Description: +Translate subfield (continuous bits in little-endian) of 4-byte +value to host byte ordering.*/ +#define LE_BITS_TO_4BYTE(__pstart, __bitoffset, __bitlen) \ + ( \ + ( LE_P4BYTE_TO_HOST_4BYTE(__pstart) >> (__bitoffset) ) & \ + BIT_LEN_MASK_32(__bitlen) \ + ) +#define LE_BITS_TO_2BYTE(__pstart, __bitoffset, __bitlen) \ + ( \ + ( LE_P2BYTE_TO_HOST_2BYTE(__pstart) >> (__bitoffset) ) & \ + BIT_LEN_MASK_16(__bitlen) \ + ) +#define LE_BITS_TO_1BYTE(__pstart, __bitoffset, __bitlen) \ + ( \ + ( LE_P1BYTE_TO_HOST_1BYTE(__pstart) >> (__bitoffset) ) & \ + BIT_LEN_MASK_8(__bitlen) \ + ) + +/*Description: +Mask subfield (continuous bits in little-endian) of 4-byte value +and return the result in 4-byte value in host byte ordering.*/ +#define LE_BITS_CLEARED_TO_4BYTE(__pstart, __bitoffset, __bitlen) \ + ( \ + LE_P4BYTE_TO_HOST_4BYTE(__pstart) & \ + ( ~BIT_OFFSET_LEN_MASK_32(__bitoffset, __bitlen) ) \ + ) +#define LE_BITS_CLEARED_TO_2BYTE(__pstart, __bitoffset, __bitlen) \ + ( \ + LE_P2BYTE_TO_HOST_2BYTE(__pstart) & \ + ( ~BIT_OFFSET_LEN_MASK_16(__bitoffset, __bitlen) ) \ + ) +#define LE_BITS_CLEARED_TO_1BYTE(__pstart, __bitoffset, __bitlen) \ + ( \ + LE_P1BYTE_TO_HOST_1BYTE(__pstart) & \ + ( ~BIT_OFFSET_LEN_MASK_8(__bitoffset, __bitlen) ) \ + ) + +/*Description: +Set subfield of little-endian 4-byte value to specified value. */ +#define SET_BITS_TO_LE_4BYTE(__pstart, __bitoffset, __bitlen, __val) \ + *((u32 *)(__pstart)) = EF4BYTE \ + ( \ + LE_BITS_CLEARED_TO_4BYTE(__pstart, __bitoffset, __bitlen) | \ + ( (((u32)__val) & BIT_LEN_MASK_32(__bitlen)) << (__bitoffset) )\ + ); +#define SET_BITS_TO_LE_2BYTE(__pstart, __bitoffset, __bitlen, __val) \ + *((u16 *)(__pstart)) = EF2BYTE \ + ( \ + LE_BITS_CLEARED_TO_2BYTE(__pstart, __bitoffset, __bitlen) | \ + ( (((u16)__val) & BIT_LEN_MASK_16(__bitlen)) << (__bitoffset) )\ + ); +#define SET_BITS_TO_LE_1BYTE(__pstart, __bitoffset, __bitlen, __val) \ + *((u8 *)(__pstart)) = EF1BYTE \ + ( \ + LE_BITS_CLEARED_TO_1BYTE(__pstart, __bitoffset, __bitlen) | \ + ( (((u8)__val) & BIT_LEN_MASK_8(__bitlen)) << (__bitoffset) ) \ + ); + +#define N_BYTE_ALIGMENT(__value, __aligment) ((__aligment == 1) ? \ + (__value) : (((__value + __aligment - 1) / __aligment) * __aligment)) + +/**************************************** + mem access macro define end +****************************************/ + +#define byte(x,n) ((x >> (8 * n)) & 0xff) + +#define packet_get_type(_packet) (EF1BYTE((_packet).octet[0]) & 0xFC) +#define RTL_WATCH_DOG_TIME 2000 +#define MSECS(t) msecs_to_jiffies(t) +#define WLAN_FC_GET_VERS(fc) ((fc) & IEEE80211_FCTL_VERS) +#define WLAN_FC_GET_TYPE(fc) ((fc) & IEEE80211_FCTL_FTYPE) +#define WLAN_FC_GET_STYPE(fc) ((fc) & IEEE80211_FCTL_STYPE) +#define WLAN_FC_MORE_DATA(fc) ((fc) & IEEE80211_FCTL_MOREDATA) +#define SEQ_TO_SN(seq) (((seq) & IEEE80211_SCTL_SEQ) >> 4) +#define SN_TO_SEQ(ssn) (((ssn) << 4) & IEEE80211_SCTL_SEQ) +#define MAX_SN ((IEEE80211_SCTL_SEQ) >> 4) + +#define RT_RF_OFF_LEVL_ASPM BIT(0) /*PCI ASPM */ +#define RT_RF_OFF_LEVL_CLK_REQ BIT(1) /*PCI clock request */ +#define RT_RF_OFF_LEVL_PCI_D3 BIT(2) /*PCI D3 mode */ +/*NIC halt, re-initialize hw parameters*/ +#define RT_RF_OFF_LEVL_HALT_NIC BIT(3) +#define RT_RF_OFF_LEVL_FREE_FW BIT(4) /*FW free, re-download the FW */ +#define RT_RF_OFF_LEVL_FW_32K BIT(5) /*FW in 32k */ +/*Always enable ASPM and Clock Req in initialization.*/ +#define RT_RF_PS_LEVEL_ALWAYS_ASPM BIT(6) +/* no matter RFOFF or SLEEP we set PS_ASPM_LEVL*/ +#define RT_PS_LEVEL_ASPM BIT(7) +/*When LPS is on, disable 2R if no packet is received or transmittd.*/ +#define RT_RF_LPS_DISALBE_2R BIT(30) +#define RT_RF_LPS_LEVEL_ASPM BIT(31) /*LPS with ASPM */ +#define RT_IN_PS_LEVEL(ppsc, _ps_flg) \ + ((ppsc->cur_ps_level & _ps_flg) ? true : false) +#define RT_CLEAR_PS_LEVEL(ppsc, _ps_flg) \ + (ppsc->cur_ps_level &= (~(_ps_flg))) +#define RT_SET_PS_LEVEL(ppsc, _ps_flg) \ + (ppsc->cur_ps_level |= _ps_flg) + +#define container_of_dwork_rtl(x,y,z) \ + container_of(container_of(x, struct delayed_work, work), y, z) + +#define FILL_OCTET_STRING(_os,_octet,_len) \ + (_os).octet=(u8*)(_octet); \ + (_os).length=(_len); + +#define CP_MACADDR(des,src) \ + ((des)[0]=(src)[0],(des)[1]=(src)[1],\ + (des)[2]=(src)[2],(des)[3]=(src)[3],\ + (des)[4]=(src)[4],(des)[5]=(src)[5]) + +static inline u8 rtl_read_byte(struct rtl_priv *rtlpriv, u32 addr) +{ + return rtlpriv->io.read8_sync(rtlpriv, addr); +} + +static inline u16 rtl_read_word(struct rtl_priv *rtlpriv, u32 addr) +{ + return rtlpriv->io.read16_sync(rtlpriv, addr); +} + +static inline u32 rtl_read_dword(struct rtl_priv *rtlpriv, u32 addr) +{ + return rtlpriv->io.read32_sync(rtlpriv, addr); +} + +static inline void rtl_write_byte(struct rtl_priv *rtlpriv, u32 addr, u8 val8) +{ + rtlpriv->io.write8_async(rtlpriv, addr, val8); + + if (rtlpriv->cfg->write_readback) + rtlpriv->io.read8_sync(rtlpriv, addr); +} + +static inline void rtl_write_word(struct rtl_priv *rtlpriv, u32 addr, u16 val16) +{ + rtlpriv->io.write16_async(rtlpriv, addr, val16); + + if (rtlpriv->cfg->write_readback) + rtlpriv->io.read16_sync(rtlpriv, addr); +} + +static inline void rtl_write_dword(struct rtl_priv *rtlpriv, + u32 addr, u32 val32) +{ + rtlpriv->io.write32_async(rtlpriv, addr, val32); + + if (rtlpriv->cfg->write_readback) + rtlpriv->io.read32_sync(rtlpriv, addr); +} + +static inline u32 rtl_get_bbreg(struct ieee80211_hw *hw, + u32 regaddr, u32 bitmask) +{ + return ((struct rtl_priv *)(hw)->priv)->cfg->ops->get_bbreg(hw, + regaddr, + bitmask); +} + +static inline void rtl_set_bbreg(struct ieee80211_hw *hw, u32 regaddr, + u32 bitmask, u32 data) +{ + ((struct rtl_priv *)(hw)->priv)->cfg->ops->set_bbreg(hw, + regaddr, bitmask, + data); + +} + +static inline u32 rtl_get_rfreg(struct ieee80211_hw *hw, + enum radio_path rfpath, u32 regaddr, + u32 bitmask) +{ + return ((struct rtl_priv *)(hw)->priv)->cfg->ops->get_rfreg(hw, + rfpath, + regaddr, + bitmask); +} + +static inline void rtl_set_rfreg(struct ieee80211_hw *hw, + enum radio_path rfpath, u32 regaddr, + u32 bitmask, u32 data) +{ + ((struct rtl_priv *)(hw)->priv)->cfg->ops->set_rfreg(hw, + rfpath, regaddr, + bitmask, data); +} + +static inline bool is_hal_stop(struct rtl_hal *rtlhal) +{ + return (_HAL_STATE_STOP == rtlhal->state); +} + +static inline void set_hal_start(struct rtl_hal *rtlhal) +{ + rtlhal->state = _HAL_STATE_START; +} + +static inline void set_hal_stop(struct rtl_hal *rtlhal) +{ + rtlhal->state = _HAL_STATE_STOP; +} + +static inline u8 get_rf_type(struct rtl_phy *rtlphy) +{ + return rtlphy->rf_type; +} + +static inline struct ieee80211_hdr *rtl_get_hdr(struct sk_buff *skb) +{ + return (struct ieee80211_hdr *)(skb->data); +} + +static inline u16 rtl_get_fc(struct sk_buff *skb) +{ + return le16_to_cpu(rtl_get_hdr(skb)->frame_control); +} + +static inline u16 rtl_get_tid_h(struct ieee80211_hdr *hdr) +{ + return (ieee80211_get_qos_ctl(hdr))[0] & IEEE80211_QOS_CTL_TID_MASK; +} + +static inline u16 rtl_get_tid(struct sk_buff *skb) +{ + return rtl_get_tid_h(rtl_get_hdr(skb)); +} + +static inline struct ieee80211_sta *rtl_find_sta(struct ieee80211_hw *hw, + u8 *mac_addr) +{ + struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); + return ieee80211_find_sta(mac->vif, mac_addr); +} + +struct ieee80211_hw *rtl_pci_get_hw_pointer(void); +#endif --- linux-3.13.0.orig/drivers/staging/serqt_usb2/serqt_usb2.c +++ linux-3.13.0/drivers/staging/serqt_usb2/serqt_usb2.c @@ -725,7 +725,7 @@ goto startup_error; } - switch (serial->dev->descriptor.idProduct) { + switch (le16_to_cpu(serial->dev->descriptor.idProduct)) { case QUATECH_DSU100: case QUATECH_QSU100: case QUATECH_ESU100A: --- linux-3.13.0.orig/drivers/staging/vt6656/baseband.c +++ linux-3.13.0/drivers/staging/vt6656/baseband.c @@ -1464,7 +1464,6 @@ if( bScanning ) { // need Max sensitivity //RSSI -69, -70,.... - if(pDevice->byBBPreEDIndex == 0) break; pDevice->byBBPreEDIndex = 0; ControlvWriteByte(pDevice, MESSAGE_REQUEST_BBREG, 0xC9, 0x00); //CR201(0xC9) ControlvWriteByte(pDevice, MESSAGE_REQUEST_BBREG, 0xCE, 0x30); //CR206(0xCE) @@ -1607,7 +1606,6 @@ if( bScanning ) { // need Max sensitivity //RSSI -69, -70, ... - if(pDevice->byBBPreEDIndex == 0) break; pDevice->byBBPreEDIndex = 0; ControlvWriteByte(pDevice, MESSAGE_REQUEST_BBREG, 0xC9, 0x00); //CR201(0xC9) ControlvWriteByte(pDevice, MESSAGE_REQUEST_BBREG, 0xCE, 0x24); //CR206(0xCE) @@ -1759,7 +1757,6 @@ case RF_VT3342A0: //RobertYu:20060627, testing table if( bScanning ) { // need Max sensitivity //RSSI -67, -68, ... - if(pDevice->byBBPreEDIndex == 0) break; pDevice->byBBPreEDIndex = 0; ControlvWriteByte(pDevice, MESSAGE_REQUEST_BBREG, 0xC9, 0x00); //CR201(0xC9) ControlvWriteByte(pDevice, MESSAGE_REQUEST_BBREG, 0xCE, 0x38); //CR206(0xCE) --- linux-3.13.0.orig/drivers/staging/vt6656/card.c +++ linux-3.13.0/drivers/staging/vt6656/card.c @@ -731,7 +731,7 @@ uBeaconInterval = wBeaconInterval * 1024; // Next TBTT = ((local_current_TSF / beacon_interval) + 1 ) * beacon_interval - uLowNextTBTT = ((qwTSF & 0xffffffffU) >> 10) << 10; + uLowNextTBTT = ((qwTSF & 0xffffffffULL) >> 10) << 10; uLowRemain = (uLowNextTBTT) % uBeaconInterval; uHighRemain = ((0x80000000 % uBeaconInterval) * 2 * (u32)(qwTSF >> 32)) % uBeaconInterval; --- linux-3.13.0.orig/drivers/staging/zram/zram_drv.c +++ linux-3.13.0/drivers/staging/zram/zram_drv.c @@ -552,14 +552,14 @@ size_t index; struct zram_meta *meta; - flush_work(&zram->free_work); - down_write(&zram->init_lock); if (!zram->init_done) { up_write(&zram->init_lock); return; } + flush_work(&zram->free_work); + meta = zram->meta; zram->init_done = 0; @@ -621,6 +621,8 @@ disksize = PAGE_ALIGN(disksize); meta = zram_meta_alloc(disksize); + if (!meta) + return -ENOMEM; down_write(&zram->init_lock); if (zram->init_done) { up_write(&zram->init_lock); --- linux-3.13.0.orig/drivers/target/iscsi/iscsi_target.c +++ linux-3.13.0/drivers/target/iscsi/iscsi_target.c @@ -52,7 +52,7 @@ static LIST_HEAD(g_tiqn_list); static LIST_HEAD(g_np_list); static DEFINE_SPINLOCK(tiqn_lock); -static DEFINE_SPINLOCK(np_lock); +static DEFINE_MUTEX(np_lock); static struct idr tiqn_idr; struct idr sess_idr; @@ -307,6 +307,9 @@ return false; } +/* + * Called with mutex np_lock held + */ static struct iscsi_np *iscsit_get_np( struct __kernel_sockaddr_storage *sockaddr, int network_transport) @@ -314,11 +317,10 @@ struct iscsi_np *np; bool match; - spin_lock_bh(&np_lock); list_for_each_entry(np, &g_np_list, np_list) { - spin_lock(&np->np_thread_lock); + spin_lock_bh(&np->np_thread_lock); if (np->np_thread_state != ISCSI_NP_THREAD_ACTIVE) { - spin_unlock(&np->np_thread_lock); + spin_unlock_bh(&np->np_thread_lock); continue; } @@ -330,13 +332,11 @@ * while iscsi_tpg_add_network_portal() is called. */ np->np_exports++; - spin_unlock(&np->np_thread_lock); - spin_unlock_bh(&np_lock); + spin_unlock_bh(&np->np_thread_lock); return np; } - spin_unlock(&np->np_thread_lock); + spin_unlock_bh(&np->np_thread_lock); } - spin_unlock_bh(&np_lock); return NULL; } @@ -350,16 +350,22 @@ struct sockaddr_in6 *sock_in6; struct iscsi_np *np; int ret; + + mutex_lock(&np_lock); + /* * Locate the existing struct iscsi_np if already active.. */ np = iscsit_get_np(sockaddr, network_transport); - if (np) + if (np) { + mutex_unlock(&np_lock); return np; + } np = kzalloc(sizeof(struct iscsi_np), GFP_KERNEL); if (!np) { pr_err("Unable to allocate memory for struct iscsi_np\n"); + mutex_unlock(&np_lock); return ERR_PTR(-ENOMEM); } @@ -382,6 +388,7 @@ ret = iscsi_target_setup_login_socket(np, sockaddr); if (ret != 0) { kfree(np); + mutex_unlock(&np_lock); return ERR_PTR(ret); } @@ -390,6 +397,7 @@ pr_err("Unable to create kthread: iscsi_np\n"); ret = PTR_ERR(np->np_thread); kfree(np); + mutex_unlock(&np_lock); return ERR_PTR(ret); } /* @@ -400,10 +408,10 @@ * point because iscsi_np has not been added to g_np_list yet. */ np->np_exports = 1; + np->np_thread_state = ISCSI_NP_THREAD_ACTIVE; - spin_lock_bh(&np_lock); list_add_tail(&np->np_list, &g_np_list); - spin_unlock_bh(&np_lock); + mutex_unlock(&np_lock); pr_debug("CORE[0] - Added Network Portal: %s:%hu on %s\n", np->np_ip, np->np_port, np->np_transport->name); @@ -470,9 +478,9 @@ np->np_transport->iscsit_free_np(np); - spin_lock_bh(&np_lock); + mutex_lock(&np_lock); list_del(&np->np_list); - spin_unlock_bh(&np_lock); + mutex_unlock(&np_lock); pr_debug("CORE[0] - Removed Network Portal: %s:%hu on %s\n", np->np_ip, np->np_port, np->np_transport->name); @@ -622,7 +630,7 @@ { struct iscsi_cmd *cmd; - cmd = iscsit_allocate_cmd(conn, GFP_KERNEL); + cmd = iscsit_allocate_cmd(conn, TASK_INTERRUPTIBLE); if (!cmd) return -1; @@ -777,7 +785,7 @@ spin_unlock_bh(&conn->cmd_lock); list_for_each_entry_safe(cmd, cmd_p, &ack_list, i_conn_node) { - list_del(&cmd->i_conn_node); + list_del_init(&cmd->i_conn_node); iscsit_free_cmd(cmd, false); } } @@ -2460,6 +2468,7 @@ { struct iscsi_cmd *cmd; struct iscsi_conn *conn_p; + bool found = false; /* * Only send a Asynchronous Message on connections whos network @@ -2468,14 +2477,15 @@ list_for_each_entry(conn_p, &conn->sess->sess_conn_list, conn_list) { if (conn_p->conn_state == TARG_CONN_STATE_LOGGED_IN) { iscsit_inc_conn_usage_count(conn_p); + found = true; break; } } - if (!conn_p) + if (!found) return; - cmd = iscsit_allocate_cmd(conn_p, GFP_ATOMIC); + cmd = iscsit_allocate_cmd(conn_p, TASK_RUNNING); if (!cmd) { iscsit_dec_conn_usage_count(conn_p); return; @@ -3700,7 +3710,7 @@ break; case ISTATE_REMOVE: spin_lock_bh(&conn->cmd_lock); - list_del(&cmd->i_conn_node); + list_del_init(&cmd->i_conn_node); spin_unlock_bh(&conn->cmd_lock); iscsit_free_cmd(cmd, false); @@ -3951,7 +3961,7 @@ switch (hdr->opcode & ISCSI_OPCODE_MASK) { case ISCSI_OP_SCSI_CMD: - cmd = iscsit_allocate_cmd(conn, GFP_KERNEL); + cmd = iscsit_allocate_cmd(conn, TASK_INTERRUPTIBLE); if (!cmd) goto reject; @@ -3963,28 +3973,28 @@ case ISCSI_OP_NOOP_OUT: cmd = NULL; if (hdr->ttt == cpu_to_be32(0xFFFFFFFF)) { - cmd = iscsit_allocate_cmd(conn, GFP_KERNEL); + cmd = iscsit_allocate_cmd(conn, TASK_INTERRUPTIBLE); if (!cmd) goto reject; } ret = iscsit_handle_nop_out(conn, cmd, buf); break; case ISCSI_OP_SCSI_TMFUNC: - cmd = iscsit_allocate_cmd(conn, GFP_KERNEL); + cmd = iscsit_allocate_cmd(conn, TASK_INTERRUPTIBLE); if (!cmd) goto reject; ret = iscsit_handle_task_mgt_cmd(conn, cmd, buf); break; case ISCSI_OP_TEXT: - cmd = iscsit_allocate_cmd(conn, GFP_KERNEL); + cmd = iscsit_allocate_cmd(conn, TASK_INTERRUPTIBLE); if (!cmd) goto reject; ret = iscsit_handle_text_cmd(conn, cmd, buf); break; case ISCSI_OP_LOGOUT: - cmd = iscsit_allocate_cmd(conn, GFP_KERNEL); + cmd = iscsit_allocate_cmd(conn, TASK_INTERRUPTIBLE); if (!cmd) goto reject; @@ -4143,7 +4153,7 @@ spin_lock_bh(&conn->cmd_lock); list_for_each_entry_safe(cmd, cmd_tmp, &conn->conn_cmd_list, i_conn_node) { - list_del(&cmd->i_conn_node); + list_del_init(&cmd->i_conn_node); spin_unlock_bh(&conn->cmd_lock); iscsit_increment_maxcmdsn(cmd, sess); @@ -4188,6 +4198,10 @@ iscsit_stop_timers_for_cmds(conn); iscsit_stop_nopin_response_timer(conn); iscsit_stop_nopin_timer(conn); + + if (conn->conn_transport->iscsit_wait_conn) + conn->conn_transport->iscsit_wait_conn(conn); + iscsit_free_queue_reqs_for_conn(conn); /* --- linux-3.13.0.orig/drivers/target/iscsi/iscsi_target_erl2.c +++ linux-3.13.0/drivers/target/iscsi/iscsi_target_erl2.c @@ -138,7 +138,7 @@ list_for_each_entry_safe(cmd, cmd_tmp, &cr->conn_recovery_cmd_list, i_conn_node) { - list_del(&cmd->i_conn_node); + list_del_init(&cmd->i_conn_node); cmd->conn = NULL; spin_unlock(&cr->conn_recovery_cmd_lock); iscsit_free_cmd(cmd, true); @@ -160,7 +160,7 @@ list_for_each_entry_safe(cmd, cmd_tmp, &cr->conn_recovery_cmd_list, i_conn_node) { - list_del(&cmd->i_conn_node); + list_del_init(&cmd->i_conn_node); cmd->conn = NULL; spin_unlock(&cr->conn_recovery_cmd_lock); iscsit_free_cmd(cmd, true); @@ -216,7 +216,7 @@ } cr = cmd->cr; - list_del(&cmd->i_conn_node); + list_del_init(&cmd->i_conn_node); return --cr->cmd_count; } @@ -297,7 +297,7 @@ if (!(cmd->cmd_flags & ICF_OOO_CMDSN)) continue; - list_del(&cmd->i_conn_node); + list_del_init(&cmd->i_conn_node); spin_unlock_bh(&conn->cmd_lock); iscsit_free_cmd(cmd, true); @@ -335,7 +335,7 @@ /* * Only perform connection recovery on ISCSI_OP_SCSI_CMD or * ISCSI_OP_NOOP_OUT opcodes. For all other opcodes call - * list_del(&cmd->i_conn_node); to release the command to the + * list_del_init(&cmd->i_conn_node); to release the command to the * session pool and remove it from the connection's list. * * Also stop the DataOUT timer, which will be restarted after @@ -351,7 +351,7 @@ " CID: %hu\n", cmd->iscsi_opcode, cmd->init_task_tag, cmd->cmd_sn, conn->cid); - list_del(&cmd->i_conn_node); + list_del_init(&cmd->i_conn_node); spin_unlock_bh(&conn->cmd_lock); iscsit_free_cmd(cmd, true); spin_lock_bh(&conn->cmd_lock); @@ -371,7 +371,7 @@ */ if (!(cmd->cmd_flags & ICF_OOO_CMDSN) && !cmd->immediate_cmd && iscsi_sna_gte(cmd->cmd_sn, conn->sess->exp_cmd_sn)) { - list_del(&cmd->i_conn_node); + list_del_init(&cmd->i_conn_node); spin_unlock_bh(&conn->cmd_lock); iscsit_free_cmd(cmd, true); spin_lock_bh(&conn->cmd_lock); @@ -393,7 +393,7 @@ cmd->sess = conn->sess; - list_del(&cmd->i_conn_node); + list_del_init(&cmd->i_conn_node); spin_unlock_bh(&conn->cmd_lock); iscsit_free_all_datain_reqs(cmd); --- linux-3.13.0.orig/drivers/target/iscsi/iscsi_target_nego.c +++ linux-3.13.0/drivers/target/iscsi/iscsi_target_nego.c @@ -1192,7 +1192,7 @@ */ alloc_tags: tag_num = max_t(u32, ISCSIT_MIN_TAGS, queue_depth); - tag_num += (tag_num / 2) + ISCSIT_EXTRA_TAGS; + tag_num = (tag_num * 2) + ISCSIT_EXTRA_TAGS; tag_size = sizeof(struct iscsi_cmd) + conn->conn_transport->priv_size; ret = transport_alloc_session_tags(sess->se_sess, tag_num, tag_size); --- linux-3.13.0.orig/drivers/target/iscsi/iscsi_target_tpg.c +++ linux-3.13.0/drivers/target/iscsi/iscsi_target_tpg.c @@ -137,7 +137,7 @@ list_for_each_entry(tpg, &tiqn->tiqn_tpg_list, tpg_list) { spin_lock(&tpg->tpg_state_lock); - if (tpg->tpg_state == TPG_STATE_FREE) { + if (tpg->tpg_state != TPG_STATE_ACTIVE) { spin_unlock(&tpg->tpg_state_lock); continue; } --- linux-3.13.0.orig/drivers/target/iscsi/iscsi_target_util.c +++ linux-3.13.0/drivers/target/iscsi/iscsi_target_util.c @@ -152,13 +152,16 @@ * May be called from software interrupt (timer) context for allocating * iSCSI NopINs. */ -struct iscsi_cmd *iscsit_allocate_cmd(struct iscsi_conn *conn, gfp_t gfp_mask) +struct iscsi_cmd *iscsit_allocate_cmd(struct iscsi_conn *conn, int state) { struct iscsi_cmd *cmd; struct se_session *se_sess = conn->sess->se_sess; int size, tag; - tag = percpu_ida_alloc(&se_sess->sess_tag_pool, gfp_mask); + tag = percpu_ida_alloc(&se_sess->sess_tag_pool, state); + if (tag < 0) + return NULL; + size = sizeof(struct iscsi_cmd) + conn->conn_transport->priv_size; cmd = (struct iscsi_cmd *)(se_sess->sess_cmd_map + (tag * size)); memset(cmd, 0, size); @@ -926,7 +929,7 @@ u8 state; struct iscsi_cmd *cmd; - cmd = iscsit_allocate_cmd(conn, GFP_ATOMIC); + cmd = iscsit_allocate_cmd(conn, TASK_RUNNING); if (!cmd) return -1; --- linux-3.13.0.orig/drivers/target/iscsi/iscsi_target_util.h +++ linux-3.13.0/drivers/target/iscsi/iscsi_target_util.h @@ -9,7 +9,7 @@ extern void iscsit_free_r2t(struct iscsi_r2t *, struct iscsi_cmd *); extern void iscsit_free_r2ts_from_list(struct iscsi_cmd *); extern struct iscsi_cmd *iscsit_alloc_cmd(struct iscsi_conn *, gfp_t); -extern struct iscsi_cmd *iscsit_allocate_cmd(struct iscsi_conn *, gfp_t); +extern struct iscsi_cmd *iscsit_allocate_cmd(struct iscsi_conn *, int); extern struct iscsi_seq *iscsit_get_seq_holder_for_datain(struct iscsi_cmd *, u32); extern struct iscsi_seq *iscsit_get_seq_holder_for_r2t(struct iscsi_cmd *); extern struct iscsi_r2t *iscsit_get_holder_for_r2tsn(struct iscsi_cmd *, u32); --- linux-3.13.0.orig/drivers/target/target_core_pr.c +++ linux-3.13.0/drivers/target/target_core_pr.c @@ -2009,7 +2009,7 @@ struct t10_reservation *pr_tmpl = &dev->t10_pr; unsigned char isid_buf[PR_REG_ISID_LEN], *isid_ptr = NULL; sense_reason_t ret = TCM_NO_SENSE; - int pr_holder = 0; + int pr_holder = 0, type; if (!se_sess || !se_lun) { pr_err("SPC-3 PR: se_sess || struct se_lun is NULL!\n"); @@ -2131,6 +2131,7 @@ ret = TCM_RESERVATION_CONFLICT; goto out; } + type = pr_reg->pr_res_type; spin_lock(&pr_tmpl->registration_lock); /* @@ -2161,6 +2162,7 @@ * Release the calling I_T Nexus registration now.. */ __core_scsi3_free_registration(cmd->se_dev, pr_reg, NULL, 1); + pr_reg = NULL; /* * From spc4r17, section 5.7.11.3 Unregistering @@ -2174,8 +2176,8 @@ * RESERVATIONS RELEASED. */ if (pr_holder && - (pr_reg->pr_res_type == PR_TYPE_WRITE_EXCLUSIVE_REGONLY || - pr_reg->pr_res_type == PR_TYPE_EXCLUSIVE_ACCESS_REGONLY)) { + (type == PR_TYPE_WRITE_EXCLUSIVE_REGONLY || + type == PR_TYPE_EXCLUSIVE_ACCESS_REGONLY)) { list_for_each_entry(pr_reg_p, &pr_tmpl->registration_list, pr_reg_list) { @@ -2194,7 +2196,8 @@ ret = core_scsi3_update_and_write_aptpl(dev, aptpl); out: - core_scsi3_put_pr_reg(pr_reg); + if (pr_reg) + core_scsi3_put_pr_reg(pr_reg); return ret; } --- linux-3.13.0.orig/drivers/target/target_core_sbc.c +++ linux-3.13.0/drivers/target/target_core_sbc.c @@ -419,13 +419,14 @@ goto out; } - write_sg = kzalloc(sizeof(struct scatterlist) * cmd->t_data_nents, + write_sg = kmalloc(sizeof(struct scatterlist) * cmd->t_data_nents, GFP_KERNEL); if (!write_sg) { pr_err("Unable to allocate compare_and_write sg\n"); ret = TCM_OUT_OF_RESOURCES; goto out; } + sg_init_table(write_sg, cmd->t_data_nents); /* * Setup verify and write data payloads from total NumberLBAs. */ --- linux-3.13.0.orig/drivers/target/target_core_transport.c +++ linux-3.13.0/drivers/target/target_core_transport.c @@ -568,10 +568,11 @@ { struct se_lun *lun = cmd->se_lun; - if (!lun || !cmd->lun_ref_active) + if (!lun) return; - percpu_ref_put(&lun->lun_ref); + if (cmpxchg(&cmd->lun_ref_active, true, false)) + percpu_ref_put(&lun->lun_ref); } void transport_cmd_finish_abort(struct se_cmd *cmd, int remove) --- linux-3.13.0.orig/drivers/target/tcm_fc/tfc_cmd.c +++ linux-3.13.0/drivers/target/tcm_fc/tfc_cmd.c @@ -438,7 +438,7 @@ struct se_session *se_sess = sess->se_sess; int tag; - tag = percpu_ida_alloc(&se_sess->sess_tag_pool, GFP_ATOMIC); + tag = percpu_ida_alloc(&se_sess->sess_tag_pool, TASK_RUNNING); if (tag < 0) goto busy; --- linux-3.13.0.orig/drivers/target/tcm_fc/tfc_sess.c +++ linux-3.13.0/drivers/target/tcm_fc/tfc_sess.c @@ -68,6 +68,7 @@ if (tport) { tport->tpg = tpg; + tpg->tport = tport; return tport; } --- linux-3.13.0.orig/drivers/thermal/x86_pkg_temp_thermal.c +++ linux-3.13.0/drivers/thermal/x86_pkg_temp_thermal.c @@ -68,6 +68,10 @@ struct thermal_zone_device *tzone; }; +static const struct thermal_zone_params pkg_temp_tz_params = { + .no_hwmon = true, +}; + /* List maintaining number of package instances */ static LIST_HEAD(phy_dev_list); static DEFINE_MUTEX(phy_dev_list_mutex); @@ -446,7 +450,7 @@ thres_count, (thres_count == MAX_NUMBER_OF_TRIPS) ? 0x03 : 0x01, - phy_dev_entry, &tzone_ops, NULL, 0, 0); + phy_dev_entry, &tzone_ops, &pkg_temp_tz_params, 0, 0); if (IS_ERR(phy_dev_entry->tzone)) { err = PTR_ERR(phy_dev_entry->tzone); goto err_ret_free; --- linux-3.13.0.orig/drivers/tty/Kconfig +++ linux-3.13.0/drivers/tty/Kconfig @@ -366,7 +366,7 @@ "Trace data router for MIPI P1149.7 cJTAG standard". config PPC_EPAPR_HV_BYTECHAN - tristate "ePAPR hypervisor byte channel driver" + bool "ePAPR hypervisor byte channel driver" depends on PPC select EPAPR_PARAVIRT help --- linux-3.13.0.orig/drivers/tty/hvc/hvc_console.c +++ linux-3.13.0/drivers/tty/hvc/hvc_console.c @@ -31,6 +31,7 @@ #include #include #include +#include #include #include #include @@ -70,6 +71,9 @@ /* Picks up late kicks after list walk but before schedule() */ static int hvc_kicked; +/* hvc_init is triggered from hvc_alloc, i.e. only when actually used */ +static atomic_t hvc_needs_init __read_mostly = ATOMIC_INIT(-1); + static int hvc_init(void); #ifdef CONFIG_MAGIC_SYSRQ @@ -851,7 +855,7 @@ int i; /* We wait until a driver actually comes along */ - if (!hvc_driver) { + if (atomic_inc_not_zero(&hvc_needs_init)) { int err = hvc_init(); if (err) return ERR_PTR(err); --- linux-3.13.0.orig/drivers/tty/ipwireless/tty.c +++ linux-3.13.0/drivers/tty/ipwireless/tty.c @@ -177,9 +177,6 @@ ": %d chars not inserted to flip buffer!\n", length - work); - /* - * This may sleep if ->low_latency is set - */ if (work) tty_flip_buffer_push(&tty->port); } --- linux-3.13.0.orig/drivers/tty/n_gsm.c +++ linux-3.13.0/drivers/tty/n_gsm.c @@ -1089,6 +1089,7 @@ { unsigned int addr = 0; unsigned int modem = 0; + unsigned int brk = 0; struct gsm_dlci *dlci; int len = clen; u8 *dp = data; @@ -1115,6 +1116,16 @@ if (len == 0) return; } + len--; + if (len > 0) { + while (gsm_read_ea(&brk, *dp++) == 0) { + len--; + if (len == 0) + return; + } + modem <<= 7; + modem |= (brk & 0x7f); + } tty = tty_port_tty_get(&dlci->port); gsm_process_modem(tty, dlci, modem, clen); if (tty) { --- linux-3.13.0.orig/drivers/tty/n_tty.c +++ linux-3.13.0/drivers/tty/n_tty.c @@ -813,8 +813,7 @@ struct n_tty_data *ldata = tty->disc_data; size_t echoed; - if ((!L_ECHO(tty) && !L_ECHONL(tty)) || - ldata->echo_mark == ldata->echo_tail) + if (ldata->echo_mark == ldata->echo_tail) return; mutex_lock(&ldata->output_lock); @@ -1238,7 +1237,8 @@ if (L_ECHO(tty)) { echo_char(c, tty); commit_echoes(tty); - } + } else + process_echoes(tty); isig(signal, tty); return; } @@ -1269,7 +1269,7 @@ if (I_IXON(tty)) { if (c == START_CHAR(tty)) { start_tty(tty); - commit_echoes(tty); + process_echoes(tty); return 0; } if (c == STOP_CHAR(tty)) { @@ -1821,8 +1821,10 @@ * Fix tty hang when I_IXON(tty) is cleared, but the tty * been stopped by STOP_CHAR(tty) before it. */ - if (!I_IXON(tty) && old && (old->c_iflag & IXON) && !tty->flow_stopped) + if (!I_IXON(tty) && old && (old->c_iflag & IXON) && !tty->flow_stopped) { start_tty(tty); + process_echoes(tty); + } /* The termios change make the tty ready for I/O */ wake_up_interruptible(&tty->write_wait); @@ -2343,8 +2345,12 @@ if (tty->ops->flush_chars) tty->ops->flush_chars(tty); } else { + struct n_tty_data *ldata = tty->disc_data; + while (nr > 0) { + mutex_lock(&ldata->output_lock); c = tty->ops->write(tty, b, nr); + mutex_unlock(&ldata->output_lock); if (c < 0) { retval = c; goto break_out; --- linux-3.13.0.orig/drivers/tty/serial/8250/8250_core.c +++ linux-3.13.0/drivers/tty/serial/8250/8250_core.c @@ -2670,6 +2670,10 @@ if (port->type == PORT_16550A && port->iotype == UPIO_AU) up->bugs |= UART_BUG_NOMSR; + /* HW bugs may trigger IRQ while IIR == NO_INT */ + if (port->type == PORT_TEGRA) + up->bugs |= UART_BUG_NOMSR; + if (port->type != PORT_UNKNOWN && flags & UART_CONFIG_IRQ) autoconfig_irq(up); --- linux-3.13.0.orig/drivers/tty/serial/8250/8250_pci.c +++ linux-3.13.0/drivers/tty/serial/8250/8250_pci.c @@ -1259,10 +1259,10 @@ unsigned long base = pci_resource_start(dev, 0); if (base) { u32 tmp; - outl(inl(base + 0x38), base + 0x38); + outl(inl(base + 0x38) | 0x00002000, base + 0x38); tmp = inl(base + 0x3c); outl(tmp | 0x01000000, base + 0x3c); - outl(tmp, base + 0x3c); + outl(tmp &= ~0x01000000, base + 0x3c); } } return 0; @@ -1744,6 +1744,7 @@ #define PCI_DEVICE_ID_TITAN_800E 0xA014 #define PCI_DEVICE_ID_TITAN_200EI 0xA016 #define PCI_DEVICE_ID_TITAN_200EISI 0xA017 +#define PCI_DEVICE_ID_TITAN_200V3 0xA306 #define PCI_DEVICE_ID_TITAN_400V3 0xA310 #define PCI_DEVICE_ID_TITAN_410V3 0xA312 #define PCI_DEVICE_ID_TITAN_800V3 0xA314 @@ -4427,6 +4428,9 @@ { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_200EISI, PCI_ANY_ID, PCI_ANY_ID, 0, 0, pbn_oxsemi_2_4000000 }, + { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_200V3, + PCI_ANY_ID, PCI_ANY_ID, 0, 0, + pbn_b0_bt_2_921600 }, { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_400V3, PCI_ANY_ID, PCI_ANY_ID, 0, 0, pbn_b0_4_921600 }, --- linux-3.13.0.orig/drivers/tty/serial/amba-pl011.c +++ linux-3.13.0/drivers/tty/serial/amba-pl011.c @@ -1537,6 +1537,8 @@ /* * Provoke TX FIFO interrupt into asserting. */ + spin_lock_irq(&uap->port.lock); + cr = UART01x_CR_UARTEN | UART011_CR_TXE | UART011_CR_LBE; writew(cr, uap->port.membase + UART011_CR); writew(0, uap->port.membase + UART011_FBRD); @@ -1561,6 +1563,8 @@ cr |= UART01x_CR_UARTEN | UART011_CR_RXE | UART011_CR_TXE; writew(cr, uap->port.membase + UART011_CR); + spin_unlock_irq(&uap->port.lock); + /* * initialise the old status of the modem signals */ @@ -1629,11 +1633,13 @@ * it during startup(). */ uap->autorts = false; + spin_lock_irq(&uap->port.lock); cr = readw(uap->port.membase + UART011_CR); uap->old_cr = cr; cr &= UART011_CR_RTS | UART011_CR_DTR; cr |= UART01x_CR_UARTEN | UART011_CR_TXE; writew(cr, uap->port.membase + UART011_CR); + spin_unlock_irq(&uap->port.lock); /* * disable break condition and fifos --- linux-3.13.0.orig/drivers/tty/serial/atmel_serial.c +++ linux-3.13.0/drivers/tty/serial/atmel_serial.c @@ -825,9 +825,6 @@ atmel_port->desc_rx = NULL; atmel_port->chan_rx = NULL; atmel_port->cookie_rx = -EINVAL; - - if (!atmel_port->is_usart) - del_timer_sync(&atmel_port->uart_timer); } static void atmel_rx_from_dma(struct uart_port *port) @@ -1229,9 +1226,6 @@ DMA_FROM_DEVICE); kfree(pdc->buf); } - - if (!atmel_port->is_usart) - del_timer_sync(&atmel_port->uart_timer); } static void atmel_rx_from_pdc(struct uart_port *port) @@ -1604,12 +1598,13 @@ /* enable xmit & rcvr */ UART_PUT_CR(port, ATMEL_US_TXEN | ATMEL_US_RXEN); + setup_timer(&atmel_port->uart_timer, + atmel_uart_timer_callback, + (unsigned long)port); + if (atmel_use_pdc_rx(port)) { /* set UART timeout */ if (!atmel_port->is_usart) { - setup_timer(&atmel_port->uart_timer, - atmel_uart_timer_callback, - (unsigned long)port); mod_timer(&atmel_port->uart_timer, jiffies + uart_poll_timeout(port)); /* set USART timeout */ @@ -1624,9 +1619,6 @@ } else if (atmel_use_dma_rx(port)) { /* set UART timeout */ if (!atmel_port->is_usart) { - setup_timer(&atmel_port->uart_timer, - atmel_uart_timer_callback, - (unsigned long)port); mod_timer(&atmel_port->uart_timer, jiffies + uart_poll_timeout(port)); /* set USART timeout */ @@ -1650,12 +1642,30 @@ static void atmel_shutdown(struct uart_port *port) { struct atmel_uart_port *atmel_port = to_atmel_uart_port(port); + /* - * Ensure everything is stopped. + * Prevent any tasklets being scheduled during + * cleanup + */ + del_timer_sync(&atmel_port->uart_timer); + + /* + * Clear out any scheduled tasklets before + * we destroy the buffers + */ + tasklet_kill(&atmel_port->tasklet); + + /* + * Ensure everything is stopped and + * disable all interrupts, port and break condition. */ atmel_stop_rx(port); atmel_stop_tx(port); + UART_PUT_CR(port, ATMEL_US_RSTSTA); + UART_PUT_IDR(port, -1); + + /* * Shut-down the DMA. */ @@ -1665,10 +1675,10 @@ atmel_port->release_tx(port); /* - * Disable all interrupts, port and break condition. + * Reset ring buffer pointers */ - UART_PUT_CR(port, ATMEL_US_RSTSTA); - UART_PUT_IDR(port, -1); + atmel_port->rx_ring.head = 0; + atmel_port->rx_ring.tail = 0; /* * Free the interrupt @@ -2441,11 +2451,12 @@ struct atmel_uart_port *atmel_port = to_atmel_uart_port(port); int ret = 0; + tasklet_kill(&atmel_port->tasklet); + device_init_wakeup(&pdev->dev, 0); ret = uart_remove_one_port(&atmel_uart, port); - tasklet_kill(&atmel_port->tasklet); kfree(atmel_port->rx_ring.buf); /* "port" is allocated statically, so we shouldn't free it */ --- linux-3.13.0.orig/drivers/tty/serial/omap-serial.c +++ linux-3.13.0/drivers/tty/serial/omap-serial.c @@ -738,9 +738,6 @@ return retval; } disable_irq(up->wakeirq); - } else { - dev_info(up->port.dev, "no wakeirq for uart%d\n", - up->port.line); } dev_dbg(up->port.dev, "serial_omap_startup+%d\n", up->port.line); @@ -1687,6 +1684,9 @@ up->port.iotype = UPIO_MEM; up->port.irq = uartirq; up->wakeirq = wakeirq; + if (!up->wakeirq) + dev_info(up->port.dev, "no wakeirq for uart%d\n", + up->port.line); up->port.regshift = 2; up->port.fifosize = 64; --- linux-3.13.0.orig/drivers/tty/serial/sirfsoc_uart.c +++ linux-3.13.0/drivers/tty/serial/sirfsoc_uart.c @@ -540,8 +540,10 @@ wr_regl(port, ureg->sirfsoc_rx_dma_io_ctrl, rd_regl(port, ureg->sirfsoc_rx_dma_io_ctrl) | SIRFUART_IO_MODE); - sirfsoc_uart_pio_rx_chars(port, 4 - sirfport->rx_io_count); spin_unlock_irqrestore(&sirfport->rx_lock, flags); + spin_lock(&port->lock); + sirfsoc_uart_pio_rx_chars(port, 4 - sirfport->rx_io_count); + spin_unlock(&port->lock); if (sirfport->rx_io_count == 4) { spin_lock_irqsave(&sirfport->rx_lock, flags); sirfport->rx_io_count = 0; --- linux-3.13.0.orig/drivers/tty/tty_buffer.c +++ linux-3.13.0/drivers/tty/tty_buffer.c @@ -332,14 +332,11 @@ * Takes any pending buffers and transfers their ownership to the * ldisc side of the queue. It then schedules those characters for * processing by the line discipline. - * Note that this function can only be used when the low_latency flag - * is unset. Otherwise the workqueue won't be flushed. */ void tty_schedule_flip(struct tty_port *port) { struct tty_bufhead *buf = &port->buf; - WARN_ON(port->low_latency); buf->tail->commit = buf->tail->used; schedule_work(&buf->work); @@ -487,17 +484,15 @@ */ void tty_flush_to_ldisc(struct tty_struct *tty) { - if (!tty->port->low_latency) - flush_work(&tty->port->buf.work); + flush_work(&tty->port->buf.work); } /** * tty_flip_buffer_push - terminal * @port: tty port to push * - * Queue a push of the terminal flip buffers to the line discipline. This - * function must not be called from IRQ context if port->low_latency is - * set. + * Queue a push of the terminal flip buffers to the line discipline. + * Can be called from IRQ/atomic context. * * In the event of the queue being busy for flipping the work will be * held off and retried later. @@ -505,14 +500,7 @@ void tty_flip_buffer_push(struct tty_port *port) { - struct tty_bufhead *buf = &port->buf; - - buf->tail->commit = buf->tail->used; - - if (port->low_latency) - flush_to_ldisc(&buf->work); - else - schedule_work(&buf->work); + tty_schedule_flip(port); } EXPORT_SYMBOL(tty_flip_buffer_push); --- linux-3.13.0.orig/drivers/tty/tty_io.c +++ linux-3.13.0/drivers/tty/tty_io.c @@ -1271,12 +1271,13 @@ * * Locking: None */ -static void tty_line_name(struct tty_driver *driver, int index, char *p) +static ssize_t tty_line_name(struct tty_driver *driver, int index, char *p) { if (driver->flags & TTY_DRIVER_UNNUMBERED_NODE) - strcpy(p, driver->name); + return sprintf(p, "%s", driver->name); else - sprintf(p, "%s%d", driver->name, index + driver->name_base); + return sprintf(p, "%s%d", driver->name, + index + driver->name_base); } /** @@ -3545,9 +3546,19 @@ if (i >= ARRAY_SIZE(cs)) break; } - while (i--) - count += sprintf(buf + count, "%s%d%c", - cs[i]->name, cs[i]->index, i ? ' ':'\n'); + while (i--) { + int index = cs[i]->index; + struct tty_driver *drv = cs[i]->device(cs[i], &index); + + /* don't resolve tty0 as some programs depend on it */ + if (drv && (cs[i]->index > 0 || drv->major != TTY_MAJOR)) + count += tty_line_name(drv, index, buf + count); + else + count += sprintf(buf + count, "%s%d", + cs[i]->name, cs[i]->index); + + count += sprintf(buf + count, "%c", i ? ' ':'\n'); + } console_unlock(); return count; --- linux-3.13.0.orig/drivers/tty/vt/vt.c +++ linux-3.13.0/drivers/tty/vt/vt.c @@ -1164,6 +1164,8 @@ scr_memsetw(vc->vc_screenbuf, vc->vc_video_erase_char, vc->vc_screenbuf_size >> 1); set_origin(vc); + if (CON_IS_VISIBLE(vc)) + update_screen(vc); /* fall through */ case 2: /* erase whole display */ count = vc->vc_cols * vc->vc_rows; --- linux-3.13.0.orig/drivers/uio/uio.c +++ linux-3.13.0/drivers/uio/uio.c @@ -847,7 +847,7 @@ info->uio_dev = idev; if (info->irq && (info->irq != UIO_IRQ_CUSTOM)) { - ret = devm_request_irq(parent, info->irq, uio_interrupt, + ret = devm_request_irq(idev->dev, info->irq, uio_interrupt, info->irq_flags, info->name, idev); if (ret) goto err_request_irq; --- linux-3.13.0.orig/drivers/usb/chipidea/ci.h +++ linux-3.13.0/drivers/usb/chipidea/ci.h @@ -135,6 +135,7 @@ * @id_event: indicates there is an id event, and handled at ci_otg_work * @b_sess_valid_event: indicates there is a vbus event, and handled * at ci_otg_work + * @imx28_write_fix: Freescale imx28 needs swp instruction for writing */ struct ci_hdrc { struct device *dev; @@ -173,6 +174,7 @@ struct dentry *debugfs; bool id_event; bool b_sess_valid_event; + bool imx28_write_fix; }; static inline struct ci_role_driver *ci_role(struct ci_hdrc *ci) @@ -253,6 +255,26 @@ return ioread32(ci->hw_bank.regmap[reg]) & mask; } +#ifdef CONFIG_SOC_IMX28 +static inline void imx28_ci_writel(u32 val, volatile void __iomem *addr) +{ + __asm__ ("swp %0, %0, [%1]" : : "r"(val), "r"(addr)); +} +#else +static inline void imx28_ci_writel(u32 val, volatile void __iomem *addr) +{ +} +#endif + +static inline void __hw_write(struct ci_hdrc *ci, u32 val, + void __iomem *addr) +{ + if (ci->imx28_write_fix) + imx28_ci_writel(val, addr); + else + iowrite32(val, addr); +} + /** * hw_write: writes to a hw register * @reg: register index @@ -266,7 +288,7 @@ data = (ioread32(ci->hw_bank.regmap[reg]) & ~mask) | (data & mask); - iowrite32(data, ci->hw_bank.regmap[reg]); + __hw_write(ci, data, ci->hw_bank.regmap[reg]); } /** @@ -281,7 +303,7 @@ { u32 val = ioread32(ci->hw_bank.regmap[reg]) & mask; - iowrite32(val, ci->hw_bank.regmap[reg]); + __hw_write(ci, val, ci->hw_bank.regmap[reg]); return val; } --- linux-3.13.0.orig/drivers/usb/chipidea/ci_hdrc_imx.c +++ linux-3.13.0/drivers/usb/chipidea/ci_hdrc_imx.c @@ -23,6 +23,26 @@ #include "ci.h" #include "ci_hdrc_imx.h" +#define CI_HDRC_IMX_IMX28_WRITE_FIX BIT(0) + +struct ci_hdrc_imx_platform_flag { + unsigned int flags; +}; + +static const struct ci_hdrc_imx_platform_flag imx27_usb_data = { +}; + +static const struct ci_hdrc_imx_platform_flag imx28_usb_data = { + .flags = CI_HDRC_IMX_IMX28_WRITE_FIX, +}; + +static const struct of_device_id ci_hdrc_imx_dt_ids[] = { + { .compatible = "fsl,imx28-usb", .data = &imx28_usb_data}, + { .compatible = "fsl,imx27-usb", .data = &imx27_usb_data}, + { /* sentinel */ } +}; +MODULE_DEVICE_TABLE(of, ci_hdrc_imx_dt_ids); + struct ci_hdrc_imx_data { struct usb_phy *phy; struct platform_device *ci_pdev; @@ -82,6 +102,9 @@ CI_HDRC_DISABLE_STREAMING, }; int ret; + const struct of_device_id *of_id = + of_match_device(ci_hdrc_imx_dt_ids, &pdev->dev); + const struct ci_hdrc_imx_platform_flag *imx_platform_flag = of_id->data; data = devm_kzalloc(&pdev->dev, sizeof(*data), GFP_KERNEL); if (!data) { @@ -115,6 +138,9 @@ pdata.phy = data->phy; + if (imx_platform_flag->flags & CI_HDRC_IMX_IMX28_WRITE_FIX) + pdata.flags |= CI_HDRC_IMX28_WRITE_FIX; + ret = dma_coerce_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32)); if (ret) goto err_clk; @@ -173,12 +199,6 @@ return 0; } -static const struct of_device_id ci_hdrc_imx_dt_ids[] = { - { .compatible = "fsl,imx27-usb", }, - { /* sentinel */ } -}; -MODULE_DEVICE_TABLE(of, ci_hdrc_imx_dt_ids); - static struct platform_driver ci_hdrc_imx_driver = { .probe = ci_hdrc_imx_probe, .remove = ci_hdrc_imx_remove, --- linux-3.13.0.orig/drivers/usb/chipidea/core.c +++ linux-3.13.0/drivers/usb/chipidea/core.c @@ -554,6 +554,8 @@ ci->dev = dev; ci->platdata = dev->platform_data; + ci->imx28_write_fix = !!(ci->platdata->flags & + CI_HDRC_IMX28_WRITE_FIX); ret = hw_device_init(ci, base); if (ret < 0) { --- linux-3.13.0.orig/drivers/usb/chipidea/host.c +++ linux-3.13.0/drivers/usb/chipidea/host.c @@ -65,6 +65,7 @@ ehci->caps = ci->hw_bank.cap; ehci->has_hostpc = ci->hw_bank.lpm; ehci->has_tdi_phy_lpm = ci->hw_bank.lpm; + ehci->imx28_write_fix = ci->imx28_write_fix; if (ci->platdata->reg_vbus) { ret = regulator_enable(ci->platdata->reg_vbus); --- linux-3.13.0.orig/drivers/usb/chipidea/otg.h +++ linux-3.13.0/drivers/usb/chipidea/otg.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2013 Freescale Semiconductor, Inc. + * Copyright (C) 2013-2014 Freescale Semiconductor, Inc. * * Author: Peter Chen * @@ -19,12 +19,12 @@ static inline void ci_enable_otg_interrupt(struct ci_hdrc *ci, u32 bits) { - hw_write(ci, OP_OTGSC, bits, bits); + hw_write(ci, OP_OTGSC, bits | OTGSC_INT_STATUS_BITS, bits); } static inline void ci_disable_otg_interrupt(struct ci_hdrc *ci, u32 bits) { - hw_write(ci, OP_OTGSC, bits, 0); + hw_write(ci, OP_OTGSC, bits | OTGSC_INT_STATUS_BITS, 0); } int ci_hdrc_otg_init(struct ci_hdrc *ci); --- linux-3.13.0.orig/drivers/usb/chipidea/udc.c +++ linux-3.13.0/drivers/usb/chipidea/udc.c @@ -105,7 +105,7 @@ do { /* flush any pending transfer */ - hw_write(ci, OP_ENDPTFLUSH, BIT(n), BIT(n)); + hw_write(ci, OP_ENDPTFLUSH, ~0, BIT(n)); while (hw_read(ci, OP_ENDPTFLUSH, BIT(n))) cpu_relax(); } while (hw_read(ci, OP_ENDPTSTAT, BIT(n))); @@ -205,7 +205,7 @@ if (is_ctrl && dir == RX && hw_read(ci, OP_ENDPTSETUPSTAT, BIT(num))) return -EAGAIN; - hw_write(ci, OP_ENDPTPRIME, BIT(n), BIT(n)); + hw_write(ci, OP_ENDPTPRIME, ~0, BIT(n)); while (hw_read(ci, OP_ENDPTPRIME, BIT(n))) cpu_relax(); @@ -393,6 +393,14 @@ node->ptr->token = cpu_to_le32(length << __ffs(TD_TOTAL_BYTES)); node->ptr->token &= cpu_to_le32(TD_TOTAL_BYTES); node->ptr->token |= cpu_to_le32(TD_STATUS_ACTIVE); + if (hwep->type == USB_ENDPOINT_XFER_ISOC && hwep->dir == TX) { + u32 mul = hwreq->req.length / hwep->ep.maxpacket; + + if (hwreq->req.length == 0 + || hwreq->req.length % hwep->ep.maxpacket) + mul++; + node->ptr->token |= mul << __ffs(TD_MULTO); + } temp = (u32) (hwreq->req.dma + hwreq->req.actual); if (length) { @@ -515,10 +523,11 @@ hwep->qh.ptr->td.token &= cpu_to_le32(~(TD_STATUS_HALTED|TD_STATUS_ACTIVE)); - if (hwep->type == USB_ENDPOINT_XFER_ISOC) { + if (hwep->type == USB_ENDPOINT_XFER_ISOC && hwep->dir == RX) { u32 mul = hwreq->req.length / hwep->ep.maxpacket; - if (hwreq->req.length % hwep->ep.maxpacket) + if (hwreq->req.length == 0 + || hwreq->req.length % hwep->ep.maxpacket) mul++; hwep->qh.ptr->cap |= mul << __ffs(QH_MULT); } @@ -1173,6 +1182,12 @@ if (hwep->num) cap |= QH_ZLT; cap |= (hwep->ep.maxpacket << __ffs(QH_MAX_PKT)) & QH_MAX_PKT; + /* + * For ISO-TX, we set mult at QH as the largest value, and use + * MultO at TD as real mult value. + */ + if (hwep->type == USB_ENDPOINT_XFER_ISOC && hwep->dir == TX) + cap |= 3 << __ffs(QH_MULT); hwep->qh.ptr->cap = cpu_to_le32(cap); --- linux-3.13.0.orig/drivers/usb/class/cdc-wdm.c +++ linux-3.13.0/drivers/usb/class/cdc-wdm.c @@ -432,6 +432,38 @@ return rv < 0 ? rv : count; } +/* + * clear WDM_READ flag and possibly submit the read urb if resp_count + * is non-zero. + * + * Called with desc->iuspin locked + */ +static int clear_wdm_read_flag(struct wdm_device *desc) +{ + int rv = 0; + + clear_bit(WDM_READ, &desc->flags); + + /* submit read urb only if the device is waiting for it */ + if (!desc->resp_count || !--desc->resp_count) + goto out; + + set_bit(WDM_RESPONDING, &desc->flags); + spin_unlock_irq(&desc->iuspin); + rv = usb_submit_urb(desc->response, GFP_KERNEL); + spin_lock_irq(&desc->iuspin); + if (rv) { + dev_err(&desc->intf->dev, + "usb_submit_urb failed with result %d\n", rv); + + /* make sure the next notification trigger a submit */ + clear_bit(WDM_RESPONDING, &desc->flags); + desc->resp_count = 0; + } +out: + return rv; +} + static ssize_t wdm_read (struct file *file, char __user *buffer, size_t count, loff_t *ppos) { @@ -503,8 +535,10 @@ if (!desc->reslength) { /* zero length read */ dev_dbg(&desc->intf->dev, "%s: zero length - clearing WDM_READ\n", __func__); - clear_bit(WDM_READ, &desc->flags); + rv = clear_wdm_read_flag(desc); spin_unlock_irq(&desc->iuspin); + if (rv < 0) + goto err; goto retry; } cntr = desc->length; @@ -526,37 +560,9 @@ desc->length -= cntr; /* in case we had outstanding data */ - if (!desc->length) { - clear_bit(WDM_READ, &desc->flags); - - if (--desc->resp_count) { - set_bit(WDM_RESPONDING, &desc->flags); - spin_unlock_irq(&desc->iuspin); - - rv = usb_submit_urb(desc->response, GFP_KERNEL); - if (rv) { - dev_err(&desc->intf->dev, - "%s: usb_submit_urb failed with result %d\n", - __func__, rv); - spin_lock_irq(&desc->iuspin); - clear_bit(WDM_RESPONDING, &desc->flags); - spin_unlock_irq(&desc->iuspin); - - if (rv == -ENOMEM) { - rv = schedule_work(&desc->rxwork); - if (rv) - dev_err(&desc->intf->dev, "Cannot schedule work\n"); - } else { - spin_lock_irq(&desc->iuspin); - desc->resp_count = 0; - spin_unlock_irq(&desc->iuspin); - } - } - } else - spin_unlock_irq(&desc->iuspin); - } else - spin_unlock_irq(&desc->iuspin); - + if (!desc->length) + clear_wdm_read_flag(desc); + spin_unlock_irq(&desc->iuspin); rv = cntr; err: --- linux-3.13.0.orig/drivers/usb/core/config.c +++ linux-3.13.0/drivers/usb/core/config.c @@ -651,10 +651,6 @@ * * hub-only!! ... and only in reset path, or usb_new_device() * (used by real hubs and virtual root hubs) - * - * NOTE: if this is a WUSB device and is not authorized, we skip the - * whole thing. A non-authorized USB device has no - * configurations. */ int usb_get_configuration(struct usb_device *dev) { @@ -666,8 +662,6 @@ struct usb_config_descriptor *desc; cfgno = 0; - if (dev->authorized == 0) /* Not really an error */ - goto out_not_authorized; result = -ENOMEM; if (ncfg > USB_MAXCONFIG) { dev_warn(ddev, "too many configurations: %d, " @@ -724,6 +718,10 @@ result = -ENOMEM; goto err; } + + if (dev->quirks & USB_QUIRK_DELAY_INIT) + msleep(100); + result = usb_get_descriptor(dev, USB_DT_CONFIG, cfgno, bigbuffer, length); if (result < 0) { @@ -751,7 +749,6 @@ err: kfree(desc); -out_not_authorized: dev->descriptor.bNumConfigurations = cfgno; err2: if (result == -ENOMEM) --- linux-3.13.0.orig/drivers/usb/core/driver.c +++ linux-3.13.0/drivers/usb/core/driver.c @@ -959,8 +959,7 @@ * it doesn't support pre_reset/post_reset/reset_resume or * because it doesn't support suspend/resume. * - * The caller must hold @intf's device's lock, but not its pm_mutex - * and not @intf->dev.sem. + * The caller must hold @intf's device's lock, but not @intf's lock. */ void usb_forced_unbind_intf(struct usb_interface *intf) { @@ -973,16 +972,37 @@ intf->needs_binding = 1; } +/* + * Unbind drivers for @udev's marked interfaces. These interfaces have + * the needs_binding flag set, for example by usb_resume_interface(). + * + * The caller must hold @udev's device lock. + */ +static void unbind_marked_interfaces(struct usb_device *udev) +{ + struct usb_host_config *config; + int i; + struct usb_interface *intf; + + config = udev->actconfig; + if (config) { + for (i = 0; i < config->desc.bNumInterfaces; ++i) { + intf = config->interface[i]; + if (intf->dev.driver && intf->needs_binding) + usb_forced_unbind_intf(intf); + } + } +} + /* Delayed forced unbinding of a USB interface driver and scan * for rebinding. * - * The caller must hold @intf's device's lock, but not its pm_mutex - * and not @intf->dev.sem. + * The caller must hold @intf's device's lock, but not @intf's lock. * * Note: Rebinds will be skipped if a system sleep transition is in * progress and the PM "complete" callback hasn't occurred yet. */ -void usb_rebind_intf(struct usb_interface *intf) +static void usb_rebind_intf(struct usb_interface *intf) { int rc; @@ -999,68 +1019,66 @@ } } -#ifdef CONFIG_PM - -/* Unbind drivers for @udev's interfaces that don't support suspend/resume - * There is no check for reset_resume here because it can be determined - * only during resume whether reset_resume is needed. +/* + * Rebind drivers to @udev's marked interfaces. These interfaces have + * the needs_binding flag set. * * The caller must hold @udev's device lock. */ -static void unbind_no_pm_drivers_interfaces(struct usb_device *udev) +static void rebind_marked_interfaces(struct usb_device *udev) { struct usb_host_config *config; int i; struct usb_interface *intf; - struct usb_driver *drv; config = udev->actconfig; if (config) { for (i = 0; i < config->desc.bNumInterfaces; ++i) { intf = config->interface[i]; - - if (intf->dev.driver) { - drv = to_usb_driver(intf->dev.driver); - if (!drv->suspend || !drv->resume) - usb_forced_unbind_intf(intf); - } + if (intf->needs_binding) + usb_rebind_intf(intf); } } } -/* Unbind drivers for @udev's interfaces that failed to support reset-resume. - * These interfaces have the needs_binding flag set by usb_resume_interface(). +/* + * Unbind all of @udev's marked interfaces and then rebind all of them. + * This ordering is necessary because some drivers claim several interfaces + * when they are first probed. * * The caller must hold @udev's device lock. */ -static void unbind_no_reset_resume_drivers_interfaces(struct usb_device *udev) +void usb_unbind_and_rebind_marked_interfaces(struct usb_device *udev) { - struct usb_host_config *config; - int i; - struct usb_interface *intf; - - config = udev->actconfig; - if (config) { - for (i = 0; i < config->desc.bNumInterfaces; ++i) { - intf = config->interface[i]; - if (intf->dev.driver && intf->needs_binding) - usb_forced_unbind_intf(intf); - } - } + unbind_marked_interfaces(udev); + rebind_marked_interfaces(udev); } -static void do_rebind_interfaces(struct usb_device *udev) +#ifdef CONFIG_PM + +/* Unbind drivers for @udev's interfaces that don't support suspend/resume + * There is no check for reset_resume here because it can be determined + * only during resume whether reset_resume is needed. + * + * The caller must hold @udev's device lock. + */ +static void unbind_no_pm_drivers_interfaces(struct usb_device *udev) { struct usb_host_config *config; int i; struct usb_interface *intf; + struct usb_driver *drv; config = udev->actconfig; if (config) { for (i = 0; i < config->desc.bNumInterfaces; ++i) { intf = config->interface[i]; - if (intf->needs_binding) - usb_rebind_intf(intf); + + if (intf->dev.driver) { + drv = to_usb_driver(intf->dev.driver); + if (!drv->suspend || !drv->resume) + usb_forced_unbind_intf(intf); + } } } } @@ -1389,7 +1407,7 @@ * whose needs_binding flag is set */ if (udev->state != USB_STATE_NOTATTACHED) - do_rebind_interfaces(udev); + rebind_marked_interfaces(udev); return 0; } @@ -1411,7 +1429,7 @@ pm_runtime_disable(dev); pm_runtime_set_active(dev); pm_runtime_enable(dev); - unbind_no_reset_resume_drivers_interfaces(udev); + unbind_marked_interfaces(udev); } /* Avoid PM error messages for devices disconnected while suspended --- linux-3.13.0.orig/drivers/usb/core/hcd.c +++ linux-3.13.0/drivers/usb/core/hcd.c @@ -1031,7 +1031,6 @@ dev_name(&usb_dev->dev), retval); return retval; } - usb_dev->lpm_capable = usb_device_supports_lpm(usb_dev); } retval = usb_new_device (usb_dev); --- linux-3.13.0.orig/drivers/usb/core/hub.c +++ linux-3.13.0/drivers/usb/core/hub.c @@ -135,7 +135,7 @@ return usb_get_intfdata(hdev->actconfig->interface[0]); } -int usb_device_supports_lpm(struct usb_device *udev) +static int usb_device_supports_lpm(struct usb_device *udev) { /* USB 2.1 (and greater) devices indicate LPM support through * their USB 2.0 Extended Capabilities BOS descriptor. @@ -156,11 +156,6 @@ "Power management will be impacted.\n"); return 0; } - - /* udev is root hub */ - if (!udev->parent) - return 1; - if (udev->parent->lpm_capable) return 1; @@ -1607,7 +1602,7 @@ { struct usb_hub *hub = usb_get_intfdata(intf); struct usb_device *hdev = interface_to_usbdev(intf); - int i; + int port1; /* Take the hub off the event list and don't let it be added again */ spin_lock_irq(&hub_event_lock); @@ -1622,11 +1617,15 @@ hub->error = 0; hub_quiesce(hub, HUB_DISCONNECT); - usb_set_intfdata (intf, NULL); + /* Avoid races with recursively_mark_NOTATTACHED() */ + spin_lock_irq(&device_state_lock); + port1 = hdev->maxchild; + hdev->maxchild = 0; + usb_set_intfdata(intf, NULL); + spin_unlock_irq(&device_state_lock); - for (i = 0; i < hdev->maxchild; i++) - usb_hub_remove_port_device(hub, i + 1); - hub->hdev->maxchild = 0; + for (; port1 > 0; --port1) + usb_hub_remove_port_device(hub, port1); if (hub->hdev->speed == USB_SPEED_HIGH) highspeed_hubs--; @@ -2235,17 +2234,13 @@ return err; } } - if (udev->wusb == 1 && udev->authorized == 0) { - udev->product = kstrdup("n/a (unauthorized)", GFP_KERNEL); - udev->manufacturer = kstrdup("n/a (unauthorized)", GFP_KERNEL); - udev->serial = kstrdup("n/a (unauthorized)", GFP_KERNEL); - } else { - /* read the standard strings and cache them if present */ - udev->product = usb_cache_string(udev, udev->descriptor.iProduct); - udev->manufacturer = usb_cache_string(udev, - udev->descriptor.iManufacturer); - udev->serial = usb_cache_string(udev, udev->descriptor.iSerialNumber); - } + + /* read the standard strings and cache them if present */ + udev->product = usb_cache_string(udev, udev->descriptor.iProduct); + udev->manufacturer = usb_cache_string(udev, + udev->descriptor.iManufacturer); + udev->serial = usb_cache_string(udev, udev->descriptor.iSerialNumber); + err = usb_enumerate_device_otg(udev); if (err < 0) return err; @@ -2427,16 +2422,6 @@ usb_dev->authorized = 0; usb_set_configuration(usb_dev, -1); - kfree(usb_dev->product); - usb_dev->product = kstrdup("n/a (unauthorized)", GFP_KERNEL); - kfree(usb_dev->manufacturer); - usb_dev->manufacturer = kstrdup("n/a (unauthorized)", GFP_KERNEL); - kfree(usb_dev->serial); - usb_dev->serial = kstrdup("n/a (unauthorized)", GFP_KERNEL); - - usb_destroy_configuration(usb_dev); - usb_dev->descriptor.bNumConfigurations = 0; - out_unauthorized: usb_unlock_device(usb_dev); return 0; @@ -2464,17 +2449,7 @@ goto error_device_descriptor; } - kfree(usb_dev->product); - usb_dev->product = NULL; - kfree(usb_dev->manufacturer); - usb_dev->manufacturer = NULL; - kfree(usb_dev->serial); - usb_dev->serial = NULL; - usb_dev->authorized = 1; - result = usb_enumerate_device(usb_dev); - if (result < 0) - goto error_enumerate; /* Choose and set the configuration. This registers the interfaces * with the driver core and lets interface drivers bind to them. */ @@ -2490,7 +2465,6 @@ } dev_info(&usb_dev->dev, "authorized to connect\n"); -error_enumerate: error_device_descriptor: usb_autosuspend_device(usb_dev); error_autoresume: @@ -5331,10 +5305,11 @@ else if (cintf->condition == USB_INTERFACE_BOUND) rebind = 1; + if (rebind) + cintf->needs_binding = 1; } - if (ret == 0 && rebind) - usb_rebind_intf(cintf); } + usb_unbind_and_rebind_marked_interfaces(udev); } usb_autosuspend_device(udev); --- linux-3.13.0.orig/drivers/usb/core/quirks.c +++ linux-3.13.0/drivers/usb/core/quirks.c @@ -47,6 +47,10 @@ /* Microsoft LifeCam-VX700 v2.0 */ { USB_DEVICE(0x045e, 0x0770), .driver_info = USB_QUIRK_RESET_RESUME }, + /* Logitech HD Pro Webcams C920 and C930e */ + { USB_DEVICE(0x046d, 0x082d), .driver_info = USB_QUIRK_DELAY_INIT }, + { USB_DEVICE(0x046d, 0x0843), .driver_info = USB_QUIRK_DELAY_INIT }, + /* Logitech Quickcam Fusion */ { USB_DEVICE(0x046d, 0x08c1), .driver_info = USB_QUIRK_RESET_RESUME }, --- linux-3.13.0.orig/drivers/usb/core/usb.h +++ linux-3.13.0/drivers/usb/core/usb.h @@ -35,7 +35,6 @@ unsigned int size); extern int usb_get_bos_descriptor(struct usb_device *dev); extern void usb_release_bos_descriptor(struct usb_device *dev); -extern int usb_device_supports_lpm(struct usb_device *udev); extern char *usb_cache_string(struct usb_device *udev, int index); extern int usb_set_configuration(struct usb_device *dev, int configuration); extern int usb_choose_configuration(struct usb_device *udev); @@ -56,7 +55,7 @@ extern int usb_match_device(struct usb_device *dev, const struct usb_device_id *id); extern void usb_forced_unbind_intf(struct usb_interface *intf); -extern void usb_rebind_intf(struct usb_interface *intf); +extern void usb_unbind_and_rebind_marked_interfaces(struct usb_device *udev); extern int usb_hub_claim_port(struct usb_device *hdev, unsigned port, struct dev_state *owner); --- linux-3.13.0.orig/drivers/usb/dwc3/core.h +++ linux-3.13.0/drivers/usb/dwc3/core.h @@ -815,15 +815,15 @@ * 12 - VndrDevTstRcved * @reserved15_12: Reserved, not used * @event_info: Information about this event - * @reserved31_24: Reserved, not used + * @reserved31_25: Reserved, not used */ struct dwc3_event_devt { u32 one_bit:1; u32 device_event:7; u32 type:4; u32 reserved15_12:4; - u32 event_info:8; - u32 reserved31_24:8; + u32 event_info:9; + u32 reserved31_25:7; } __packed; /** @@ -856,6 +856,19 @@ struct dwc3_event_gevt gevt; }; +/** + * struct dwc3_gadget_ep_cmd_params - representation of endpoint command + * parameters + * @param2: third parameter + * @param1: second parameter + * @param0: first parameter + */ +struct dwc3_gadget_ep_cmd_params { + u32 param2; + u32 param1; + u32 param0; +}; + /* * DWC3 Features to be used as Driver Data */ @@ -881,11 +894,28 @@ #if IS_ENABLED(CONFIG_USB_DWC3_GADGET) || IS_ENABLED(CONFIG_USB_DWC3_DUAL_ROLE) int dwc3_gadget_init(struct dwc3 *dwc); void dwc3_gadget_exit(struct dwc3 *dwc); +int dwc3_gadget_set_test_mode(struct dwc3 *dwc, int mode); +int dwc3_gadget_set_link_state(struct dwc3 *dwc, enum dwc3_link_state state); +int dwc3_send_gadget_ep_cmd(struct dwc3 *dwc, unsigned ep, + unsigned cmd, struct dwc3_gadget_ep_cmd_params *params); +int dwc3_send_gadget_generic_command(struct dwc3 *dwc, int cmd, u32 param); #else static inline int dwc3_gadget_init(struct dwc3 *dwc) { return 0; } static inline void dwc3_gadget_exit(struct dwc3 *dwc) { } +static inline int dwc3_gadget_set_test_mode(struct dwc3 *dwc, int mode) +{ return 0; } +static inline int dwc3_gadget_set_link_state(struct dwc3 *dwc, + enum dwc3_link_state state) +{ return 0; } + +static inline int dwc3_send_gadget_ep_cmd(struct dwc3 *dwc, unsigned ep, + unsigned cmd, struct dwc3_gadget_ep_cmd_params *params) +{ return 0; } +static inline int dwc3_send_gadget_generic_command(struct dwc3 *dwc, + int cmd, u32 param) +{ return 0; } #endif /* power management interface */ --- linux-3.13.0.orig/drivers/usb/dwc3/dwc3-exynos.c +++ linux-3.13.0/drivers/usb/dwc3/dwc3-exynos.c @@ -50,6 +50,7 @@ exynos->usb2_phy = pdev; pdata.type = USB_PHY_TYPE_USB2; + pdata.gpio_reset = -1; ret = platform_device_add_data(exynos->usb2_phy, &pdata, sizeof(pdata)); if (ret) --- linux-3.13.0.orig/drivers/usb/dwc3/dwc3-pci.c +++ linux-3.13.0/drivers/usb/dwc3/dwc3-pci.c @@ -52,6 +52,7 @@ glue->usb2_phy = pdev; pdata.type = USB_PHY_TYPE_USB2; + pdata.gpio_reset = -1; ret = platform_device_add_data(glue->usb2_phy, &pdata, sizeof(pdata)); if (ret) --- linux-3.13.0.orig/drivers/usb/dwc3/gadget.h +++ linux-3.13.0/drivers/usb/dwc3/gadget.h @@ -56,12 +56,6 @@ /* DEPXFERCFG parameter 0 */ #define DWC3_DEPXFERCFG_NUM_XFER_RES(n) ((n) & 0xffff) -struct dwc3_gadget_ep_cmd_params { - u32 param2; - u32 param1; - u32 param0; -}; - /* -------------------------------------------------------------------------- */ #define to_dwc3_request(r) (container_of(r, struct dwc3_request, request)) @@ -85,9 +79,6 @@ void dwc3_gadget_giveback(struct dwc3_ep *dep, struct dwc3_request *req, int status); -int dwc3_gadget_set_test_mode(struct dwc3 *dwc, int mode); -int dwc3_gadget_set_link_state(struct dwc3 *dwc, enum dwc3_link_state state); - void dwc3_ep0_interrupt(struct dwc3 *dwc, const struct dwc3_event_depevt *event); void dwc3_ep0_out_start(struct dwc3 *dwc); @@ -95,9 +86,6 @@ int dwc3_gadget_ep0_queue(struct usb_ep *ep, struct usb_request *request, gfp_t gfp_flags); int __dwc3_gadget_ep_set_halt(struct dwc3_ep *dep, int value); -int dwc3_send_gadget_ep_cmd(struct dwc3 *dwc, unsigned ep, - unsigned cmd, struct dwc3_gadget_ep_cmd_params *params); -int dwc3_send_gadget_generic_command(struct dwc3 *dwc, int cmd, u32 param); /** * dwc3_gadget_ep_get_transfer_index - Gets transfer index from HW --- linux-3.13.0.orig/drivers/usb/gadget/atmel_usba_udc.c +++ linux-3.13.0/drivers/usb/gadget/atmel_usba_udc.c @@ -1827,12 +1827,12 @@ toggle_bias(0); usba_writel(udc, CTRL, USBA_DISABLE_MASK); - udc->driver = NULL; - clk_disable_unprepare(udc->hclk); clk_disable_unprepare(udc->pclk); - DBG(DBG_GADGET, "unregistered driver `%s'\n", driver->driver.name); + DBG(DBG_GADGET, "unregistered driver `%s'\n", udc->driver->driver.name); + + udc->driver = NULL; return 0; } --- linux-3.13.0.orig/drivers/usb/gadget/bcm63xx_udc.c +++ linux-3.13.0/drivers/usb/gadget/bcm63xx_udc.c @@ -361,24 +361,30 @@ bcm_writel(val, udc->iudma_regs + off); } -static inline u32 usb_dmac_readl(struct bcm63xx_udc *udc, u32 off) +static inline u32 usb_dmac_readl(struct bcm63xx_udc *udc, u32 off, int chan) { - return bcm_readl(udc->iudma_regs + IUDMA_DMAC_OFFSET + off); + return bcm_readl(udc->iudma_regs + IUDMA_DMAC_OFFSET + off + + (ENETDMA_CHAN_WIDTH * chan)); } -static inline void usb_dmac_writel(struct bcm63xx_udc *udc, u32 val, u32 off) +static inline void usb_dmac_writel(struct bcm63xx_udc *udc, u32 val, u32 off, + int chan) { - bcm_writel(val, udc->iudma_regs + IUDMA_DMAC_OFFSET + off); + bcm_writel(val, udc->iudma_regs + IUDMA_DMAC_OFFSET + off + + (ENETDMA_CHAN_WIDTH * chan)); } -static inline u32 usb_dmas_readl(struct bcm63xx_udc *udc, u32 off) +static inline u32 usb_dmas_readl(struct bcm63xx_udc *udc, u32 off, int chan) { - return bcm_readl(udc->iudma_regs + IUDMA_DMAS_OFFSET + off); + return bcm_readl(udc->iudma_regs + IUDMA_DMAS_OFFSET + off + + (ENETDMA_CHAN_WIDTH * chan)); } -static inline void usb_dmas_writel(struct bcm63xx_udc *udc, u32 val, u32 off) +static inline void usb_dmas_writel(struct bcm63xx_udc *udc, u32 val, u32 off, + int chan) { - bcm_writel(val, udc->iudma_regs + IUDMA_DMAS_OFFSET + off); + bcm_writel(val, udc->iudma_regs + IUDMA_DMAS_OFFSET + off + + (ENETDMA_CHAN_WIDTH * chan)); } static inline void set_clocks(struct bcm63xx_udc *udc, bool is_enabled) @@ -639,7 +645,7 @@ } while (!last_bd); usb_dmac_writel(udc, ENETDMAC_CHANCFG_EN_MASK, - ENETDMAC_CHANCFG_REG(iudma->ch_idx)); + ENETDMAC_CHANCFG_REG, iudma->ch_idx); } /** @@ -695,9 +701,9 @@ bcm63xx_fifo_reset_ep(udc, max(0, iudma->ep_num)); /* stop DMA, then wait for the hardware to wrap up */ - usb_dmac_writel(udc, 0, ENETDMAC_CHANCFG_REG(ch_idx)); + usb_dmac_writel(udc, 0, ENETDMAC_CHANCFG_REG, ch_idx); - while (usb_dmac_readl(udc, ENETDMAC_CHANCFG_REG(ch_idx)) & + while (usb_dmac_readl(udc, ENETDMAC_CHANCFG_REG, ch_idx) & ENETDMAC_CHANCFG_EN_MASK) { udelay(1); @@ -714,10 +720,10 @@ dev_warn(udc->dev, "forcibly halting IUDMA channel %d\n", ch_idx); usb_dmac_writel(udc, ENETDMAC_CHANCFG_BUFHALT_MASK, - ENETDMAC_CHANCFG_REG(ch_idx)); + ENETDMAC_CHANCFG_REG, ch_idx); } } - usb_dmac_writel(udc, ~0, ENETDMAC_IR_REG(ch_idx)); + usb_dmac_writel(udc, ~0, ENETDMAC_IR_REG, ch_idx); /* don't leave "live" HW-owned entries for the next guy to step on */ for (d = iudma->bd_ring; d <= iudma->end_bd; d++) @@ -729,11 +735,11 @@ /* set up IRQs, UBUS burst size, and BD base for this channel */ usb_dmac_writel(udc, ENETDMAC_IR_BUFDONE_MASK, - ENETDMAC_IRMASK_REG(ch_idx)); - usb_dmac_writel(udc, 8, ENETDMAC_MAXBURST_REG(ch_idx)); + ENETDMAC_IRMASK_REG, ch_idx); + usb_dmac_writel(udc, 8, ENETDMAC_MAXBURST_REG, ch_idx); - usb_dmas_writel(udc, iudma->bd_ring_dma, ENETDMAS_RSTART_REG(ch_idx)); - usb_dmas_writel(udc, 0, ENETDMAS_SRAM2_REG(ch_idx)); + usb_dmas_writel(udc, iudma->bd_ring_dma, ENETDMAS_RSTART_REG, ch_idx); + usb_dmas_writel(udc, 0, ENETDMAS_SRAM2_REG, ch_idx); } /** @@ -2036,7 +2042,7 @@ spin_lock(&udc->lock); usb_dmac_writel(udc, ENETDMAC_IR_BUFDONE_MASK, - ENETDMAC_IR_REG(iudma->ch_idx)); + ENETDMAC_IR_REG, iudma->ch_idx); bep = iudma->bep; rc = iudma_read(udc, iudma); @@ -2176,18 +2182,18 @@ seq_printf(s, " [ep%d]:\n", max_t(int, iudma_defaults[ch_idx].ep_num, 0)); seq_printf(s, " cfg: %08x; irqstat: %08x; irqmask: %08x; maxburst: %08x\n", - usb_dmac_readl(udc, ENETDMAC_CHANCFG_REG(ch_idx)), - usb_dmac_readl(udc, ENETDMAC_IR_REG(ch_idx)), - usb_dmac_readl(udc, ENETDMAC_IRMASK_REG(ch_idx)), - usb_dmac_readl(udc, ENETDMAC_MAXBURST_REG(ch_idx))); + usb_dmac_readl(udc, ENETDMAC_CHANCFG_REG, ch_idx), + usb_dmac_readl(udc, ENETDMAC_IR_REG, ch_idx), + usb_dmac_readl(udc, ENETDMAC_IRMASK_REG, ch_idx), + usb_dmac_readl(udc, ENETDMAC_MAXBURST_REG, ch_idx)); - sram2 = usb_dmas_readl(udc, ENETDMAS_SRAM2_REG(ch_idx)); - sram3 = usb_dmas_readl(udc, ENETDMAS_SRAM3_REG(ch_idx)); + sram2 = usb_dmas_readl(udc, ENETDMAS_SRAM2_REG, ch_idx); + sram3 = usb_dmas_readl(udc, ENETDMAS_SRAM3_REG, ch_idx); seq_printf(s, " base: %08x; index: %04x_%04x; desc: %04x_%04x %08x\n", - usb_dmas_readl(udc, ENETDMAS_RSTART_REG(ch_idx)), + usb_dmas_readl(udc, ENETDMAS_RSTART_REG, ch_idx), sram2 >> 16, sram2 & 0xffff, sram3 >> 16, sram3 & 0xffff, - usb_dmas_readl(udc, ENETDMAS_SRAM4_REG(ch_idx))); + usb_dmas_readl(udc, ENETDMAS_SRAM4_REG, ch_idx)); seq_printf(s, " desc: %d/%d used", iudma->n_bds_used, iudma->n_bds); --- linux-3.13.0.orig/drivers/usb/gadget/tcm_usb_gadget.c +++ linux-3.13.0/drivers/usb/gadget/tcm_usb_gadget.c @@ -1613,7 +1613,7 @@ return ERR_PTR(-ENOMEM); } tport->tport_wwpn = wwpn; - snprintf(tport->tport_name, sizeof(tport->tport_name), wnn_name); + snprintf(tport->tport_name, sizeof(tport->tport_name), "%s", wnn_name); return &tport->tport_wwn; } --- linux-3.13.0.orig/drivers/usb/gadget/u_serial.c +++ linux-3.13.0/drivers/usb/gadget/u_serial.c @@ -549,8 +549,8 @@ port->read_started--; } - /* Push from tty to ldisc; without low_latency set this is handled by - * a workqueue, so we won't get callbacks and can hold port_lock + /* Push from tty to ldisc; this is handled by a workqueue, + * so we won't get callbacks and can hold port_lock */ if (do_push) tty_flip_buffer_push(&port->port); --- linux-3.13.0.orig/drivers/usb/host/ehci-hcd.c +++ linux-3.13.0/drivers/usb/host/ehci-hcd.c @@ -686,8 +686,15 @@ struct ehci_hcd *ehci = hcd_to_ehci (hcd); u32 status, masked_status, pcd_status = 0, cmd; int bh; + unsigned long flags; - spin_lock (&ehci->lock); + /* + * For threadirqs option we use spin_lock_irqsave() variant to prevent + * deadlock with ehci hrtimer callback, because hrtimer callbacks run + * in interrupt context even when threadirqs is specified. We can go + * back to spin_lock() variant when hrtimer callbacks become threaded. + */ + spin_lock_irqsave(&ehci->lock, flags); status = ehci_readl(ehci, &ehci->regs->status); @@ -705,7 +712,7 @@ /* Shared IRQ? */ if (!masked_status || unlikely(ehci->rh_state == EHCI_RH_HALTED)) { - spin_unlock(&ehci->lock); + spin_unlock_irqrestore(&ehci->lock, flags); return IRQ_NONE; } @@ -823,7 +830,7 @@ if (bh) ehci_work (ehci); - spin_unlock (&ehci->lock); + spin_unlock_irqrestore(&ehci->lock, flags); if (pcd_status) usb_hcd_poll_rh_status(hcd); return IRQ_HANDLED; --- linux-3.13.0.orig/drivers/usb/host/ehci-hub.c +++ linux-3.13.0/drivers/usb/host/ehci-hub.c @@ -238,6 +238,7 @@ int port; int mask; int changed; + bool fs_idle_delay; ehci_dbg(ehci, "suspend root hub\n"); @@ -272,6 +273,7 @@ ehci->bus_suspended = 0; ehci->owned_ports = 0; changed = 0; + fs_idle_delay = false; port = HCS_N_PORTS(ehci->hcs_params); while (port--) { u32 __iomem *reg = &ehci->regs->port_status [port]; @@ -300,16 +302,32 @@ } if (t1 != t2) { + /* + * On some controllers, Wake-On-Disconnect will + * generate false wakeup signals until the bus + * switches over to full-speed idle. For their + * sake, add a delay if we need one. + */ + if ((t2 & PORT_WKDISC_E) && + ehci_port_speed(ehci, t2) == + USB_PORT_STAT_HIGH_SPEED) + fs_idle_delay = true; ehci_writel(ehci, t2, reg); changed = 1; } } + spin_unlock_irq(&ehci->lock); + + if ((changed && ehci->has_tdi_phy_lpm) || fs_idle_delay) { + /* + * Wait for HCD to enter low-power mode or for the bus + * to switch to full-speed idle. + */ + usleep_range(5000, 5500); + } if (changed && ehci->has_tdi_phy_lpm) { - spin_unlock_irq(&ehci->lock); - msleep(5); /* 5 ms for HCD to enter low-power mode */ spin_lock_irq(&ehci->lock); - port = HCS_N_PORTS(ehci->hcs_params); while (port--) { u32 __iomem *hostpc_reg = &ehci->regs->hostpc[port]; @@ -322,8 +340,8 @@ port, (t3 & HOSTPC_PHCD) ? "succeeded" : "failed"); } + spin_unlock_irq(&ehci->lock); } - spin_unlock_irq(&ehci->lock); /* Apparently some devices need a >= 1-uframe delay here */ if (ehci->bus_suspended) --- linux-3.13.0.orig/drivers/usb/host/ehci.h +++ linux-3.13.0/drivers/usb/host/ehci.h @@ -225,6 +225,7 @@ unsigned has_synopsys_hc_bug:1; /* Synopsys HC */ unsigned frame_index_bug:1; /* MosChip (AKA NetMos) */ unsigned need_oc_pp_cycle:1; /* MPC834X port power */ + unsigned imx28_write_fix:1; /* For Freescale i.MX28 */ /* required for usb32 quirk */ #define OHCI_CTRL_HCFS (3 << 6) @@ -728,6 +729,18 @@ #endif } +#ifdef CONFIG_SOC_IMX28 +static inline void imx28_ehci_writel(const unsigned int val, + volatile __u32 __iomem *addr) +{ + __asm__ ("swp %0, %0, [%1]" : : "r"(val), "r"(addr)); +} +#else +static inline void imx28_ehci_writel(const unsigned int val, + volatile __u32 __iomem *addr) +{ +} +#endif static inline void ehci_writel(const struct ehci_hcd *ehci, const unsigned int val, __u32 __iomem *regs) { @@ -736,7 +749,10 @@ writel_be(val, regs) : writel(val, regs); #else - writel(val, regs); + if (ehci->imx28_write_fix) + imx28_ehci_writel(val, regs); + else + writel(val, regs); #endif } --- linux-3.13.0.orig/drivers/usb/host/xhci-pci.c +++ linux-3.13.0/drivers/usb/host/xhci-pci.c @@ -142,6 +142,11 @@ "QUIRK: Resetting on resume"); xhci->quirks |= XHCI_TRUST_TX_LENGTH; } + if (pdev->vendor == PCI_VENDOR_ID_RENESAS && + pdev->device == 0x0015 && + pdev->subsystem_vendor == PCI_VENDOR_ID_SAMSUNG && + pdev->subsystem_device == 0xc0cd) + xhci->quirks |= XHCI_RESET_ON_RESUME; if (pdev->vendor == PCI_VENDOR_ID_VIA) xhci->quirks |= XHCI_RESET_ON_RESUME; } @@ -185,6 +190,10 @@ struct usb_hcd *hcd; driver = (struct hc_driver *)id->driver_data; + + /* Prevent runtime suspending between USB-2 and USB-3 initialization */ + pm_runtime_get_noresume(&dev->dev); + /* Register the USB 2.0 roothub. * FIXME: USB core must know to register the USB 2.0 roothub first. * This is sort of silly, because we could just set the HCD driver flags @@ -194,7 +203,7 @@ retval = usb_hcd_pci_probe(dev, id); if (retval) - return retval; + goto put_runtime_pm; /* USB 2.0 roothub is stored in the PCI device now. */ hcd = dev_get_drvdata(&dev->dev); @@ -223,12 +232,17 @@ if (xhci->quirks & XHCI_LPM_SUPPORT) hcd_to_bus(xhci->shared_hcd)->root_hub->lpm_capable = 1; + /* USB-2 and USB-3 roothubs initialized, allow runtime pm suspend */ + pm_runtime_put_noidle(&dev->dev); + return 0; put_usb3_hcd: usb_put_hcd(xhci->shared_hcd); dealloc_usb2_hcd: usb_hcd_pci_remove(dev); +put_runtime_pm: + pm_runtime_put_noidle(&dev->dev); return retval; } --- linux-3.13.0.orig/drivers/usb/host/xhci-ring.c +++ linux-3.13.0/drivers/usb/host/xhci-ring.c @@ -2973,58 +2973,8 @@ } while (1) { - if (room_on_ring(xhci, ep_ring, num_trbs)) { - union xhci_trb *trb = ep_ring->enqueue; - unsigned int usable = ep_ring->enq_seg->trbs + - TRBS_PER_SEGMENT - 1 - trb; - u32 nop_cmd; - - /* - * Section 4.11.7.1 TD Fragments states that a link - * TRB must only occur at the boundary between - * data bursts (eg 512 bytes for 480M). - * While it is possible to split a large fragment - * we don't know the size yet. - * Simplest solution is to fill the trb before the - * LINK with nop commands. - */ - if (num_trbs == 1 || num_trbs <= usable || usable == 0) - break; - - if (ep_ring->type != TYPE_BULK) - /* - * While isoc transfers might have a buffer that - * crosses a 64k boundary it is unlikely. - * Since we can't add NOPs without generating - * gaps in the traffic just hope it never - * happens at the end of the ring. - * This could be fixed by writing a LINK TRB - * instead of the first NOP - however the - * TRB_TYPE_LINK_LE32() calls would all need - * changing to check the ring length. - */ - break; - - if (num_trbs >= TRBS_PER_SEGMENT) { - xhci_err(xhci, "Too many fragments %d, max %d\n", - num_trbs, TRBS_PER_SEGMENT - 1); - return -ENOMEM; - } - - nop_cmd = cpu_to_le32(TRB_TYPE(TRB_TR_NOOP) | - ep_ring->cycle_state); - ep_ring->num_trbs_free -= usable; - do { - trb->generic.field[0] = 0; - trb->generic.field[1] = 0; - trb->generic.field[2] = 0; - trb->generic.field[3] = nop_cmd; - trb++; - } while (--usable); - ep_ring->enqueue = trb; - if (room_on_ring(xhci, ep_ring, num_trbs)) - break; - } + if (room_on_ring(xhci, ep_ring, num_trbs)) + break; if (ep_ring == xhci->cmd_ring) { xhci_err(xhci, "Do not support expand command ring\n"); --- linux-3.13.0.orig/drivers/usb/host/xhci.c +++ linux-3.13.0/drivers/usb/host/xhci.c @@ -321,6 +321,9 @@ struct usb_hcd *hcd = xhci_to_hcd(xhci); struct pci_dev *pdev = to_pci_dev(hcd->self.controller); + if (xhci->quirks & XHCI_PLAT) + return; + xhci_free_irq(xhci); if (xhci->msix_entries) { --- linux-3.13.0.orig/drivers/usb/musb/musb_core.c +++ linux-3.13.0/drivers/usb/musb/musb_core.c @@ -439,7 +439,6 @@ static irqreturn_t musb_stage0_irq(struct musb *musb, u8 int_usb, u8 devctl) { - struct usb_otg *otg = musb->xceiv->otg; irqreturn_t handled = IRQ_NONE; dev_dbg(musb->controller, "<== DevCtl=%02x, int_usb=0x%x\n", devctl, @@ -654,7 +653,7 @@ break; case OTG_STATE_B_PERIPHERAL: musb_g_suspend(musb); - musb->is_active = otg->gadget->b_hnp_enable; + musb->is_active = musb->g.b_hnp_enable; if (musb->is_active) { musb->xceiv->state = OTG_STATE_B_WAIT_ACON; dev_dbg(musb->controller, "HNP: Setting timer for b_ase0_brst\n"); @@ -670,7 +669,7 @@ break; case OTG_STATE_A_HOST: musb->xceiv->state = OTG_STATE_A_SUSPEND; - musb->is_active = otg->host->b_hnp_enable; + musb->is_active = musb->hcd->self.b_hnp_enable; break; case OTG_STATE_B_HOST: /* Transition to B_PERIPHERAL, see 6.8.2.6 p 44 */ --- linux-3.13.0.orig/drivers/usb/phy/phy-fsl-usb.c +++ linux-3.13.0/drivers/usb/phy/phy-fsl-usb.c @@ -76,7 +76,7 @@ .otg_port = 1, }; -#ifdef CONFIG_PPC32 +#ifdef CONFIG_PPC static u32 _fsl_readl_be(const unsigned __iomem *p) { return in_be32(p); @@ -106,7 +106,7 @@ #else #define fsl_readl(addr) readl(addr) #define fsl_writel(val, addr) writel(val, addr) -#endif /* CONFIG_PPC32 */ +#endif /* CONFIG_PPC */ /* Routines to access transceiver ULPI registers */ u8 view_ulpi(u8 addr) @@ -914,6 +914,7 @@ if (pdata->init && pdata->init(pdev) != 0) return -EINVAL; +#ifdef CONFIG_PPC if (pdata->big_endian_mmio) { _fsl_readl = _fsl_readl_be; _fsl_writel = _fsl_writel_be; @@ -921,6 +922,7 @@ _fsl_readl = _fsl_readl_le; _fsl_writel = _fsl_writel_le; } +#endif /* request irq */ p_otg->irq = platform_get_irq(pdev, 0); --- linux-3.13.0.orig/drivers/usb/phy/phy-ulpi.c +++ linux-3.13.0/drivers/usb/phy/phy-ulpi.c @@ -47,6 +47,8 @@ static struct ulpi_info ulpi_ids[] = { ULPI_INFO(ULPI_ID(0x04cc, 0x1504), "NXP ISP1504"), ULPI_INFO(ULPI_ID(0x0424, 0x0006), "SMSC USB331x"), + ULPI_INFO(ULPI_ID(0x0424, 0x0007), "SMSC USB3320"), + ULPI_INFO(ULPI_ID(0x0451, 0x1507), "TI TUSB1210"), }; static int ulpi_set_otg_flags(struct usb_phy *phy) --- linux-3.13.0.orig/drivers/usb/serial/cypress_m8.h +++ linux-3.13.0/drivers/usb/serial/cypress_m8.h @@ -63,7 +63,7 @@ #define UART_DSR 0x20 /* data set ready - flow control - device to host */ #define CONTROL_RTS 0x10 /* request to send - flow control - host to device */ #define UART_CTS 0x10 /* clear to send - flow control - device to host */ -#define UART_RI 0x10 /* ring indicator - modem - device to host */ +#define UART_RI 0x80 /* ring indicator - modem - device to host */ #define UART_CD 0x40 /* carrier detect - modem - device to host */ #define CYP_ERROR 0x08 /* received from input report - device to host */ /* Note - the below has nothing to do with the "feature report" reset */ --- linux-3.13.0.orig/drivers/usb/serial/ftdi_sio.c +++ linux-3.13.0/drivers/usb/serial/ftdi_sio.c @@ -153,6 +153,7 @@ { USB_DEVICE(FTDI_VID, FTDI_CANUSB_PID) }, { USB_DEVICE(FTDI_VID, FTDI_CANDAPTER_PID) }, { USB_DEVICE(FTDI_VID, FTDI_NXTCAM_PID) }, + { USB_DEVICE(FTDI_VID, FTDI_EV3CON_PID) }, { USB_DEVICE(FTDI_VID, FTDI_SCS_DEVICE_0_PID) }, { USB_DEVICE(FTDI_VID, FTDI_SCS_DEVICE_1_PID) }, { USB_DEVICE(FTDI_VID, FTDI_SCS_DEVICE_2_PID) }, @@ -192,6 +193,8 @@ { USB_DEVICE(INTERBIOMETRICS_VID, INTERBIOMETRICS_IOBOARD_PID) }, { USB_DEVICE(INTERBIOMETRICS_VID, INTERBIOMETRICS_MINI_IOBOARD_PID) }, { USB_DEVICE(FTDI_VID, FTDI_SPROG_II) }, + { USB_DEVICE(FTDI_VID, FTDI_TAGSYS_LP101_PID) }, + { USB_DEVICE(FTDI_VID, FTDI_TAGSYS_P200X_PID) }, { USB_DEVICE(FTDI_VID, FTDI_LENZ_LIUSB_PID) }, { USB_DEVICE(FTDI_VID, FTDI_XF_632_PID) }, { USB_DEVICE(FTDI_VID, FTDI_XF_634_PID) }, @@ -905,6 +908,8 @@ /* Crucible Devices */ { USB_DEVICE(FTDI_VID, FTDI_CT_COMET_PID) }, { USB_DEVICE(FTDI_VID, FTDI_Z3X_PID) }, + /* Cressi Devices */ + { USB_DEVICE(FTDI_VID, FTDI_CRESSI_PID) }, { } /* Terminating entry */ }; @@ -2124,10 +2129,20 @@ } /* - * All FTDI UART chips are limited to CS7/8. We won't pretend to + * All FTDI UART chips are limited to CS7/8. We shouldn't pretend to * support CS5/6 and revert the CSIZE setting instead. + * + * CS5 however is used to control some smartcard readers which abuse + * this limitation to switch modes. Original FTDI chips fall back to + * eight data bits. + * + * TODO: Implement a quirk to only allow this with mentioned + * readers. One I know of (Argolis Smartreader V1) + * returns "USB smartcard server" as iInterface string. + * The vendor didn't bother with a custom VID/PID of + * course. */ - if ((C_CSIZE(tty) != CS8) && (C_CSIZE(tty) != CS7)) { + if (C_CSIZE(tty) == CS6) { dev_warn(ddev, "requested CSIZE setting not supported\n"); termios->c_cflag &= ~CSIZE; @@ -2174,6 +2189,9 @@ urb_value |= FTDI_SIO_SET_DATA_PARITY_NONE; } switch (cflag & CSIZE) { + case CS5: + dev_dbg(ddev, "Setting CS5 quirk\n"); + break; case CS7: urb_value |= 7; dev_dbg(ddev, "Setting CS7\n"); --- linux-3.13.0.orig/drivers/usb/serial/ftdi_sio_ids.h +++ linux-3.13.0/drivers/usb/serial/ftdi_sio_ids.h @@ -50,6 +50,7 @@ #define TI_XDS100V2_PID 0xa6d0 #define FTDI_NXTCAM_PID 0xABB8 /* NXTCam for Mindstorms NXT */ +#define FTDI_EV3CON_PID 0xABB9 /* Mindstorms EV3 Console Adapter */ /* US Interface Navigator (http://www.usinterface.com/) */ #define FTDI_USINT_CAT_PID 0xb810 /* Navigator CAT and 2nd PTT lines */ @@ -363,6 +364,12 @@ /* Sprog II (Andrew Crosland's SprogII DCC interface) */ #define FTDI_SPROG_II 0xF0C8 +/* + * Two of the Tagsys RFID Readers + */ +#define FTDI_TAGSYS_LP101_PID 0xF0E9 /* Tagsys L-P101 RFID*/ +#define FTDI_TAGSYS_P200X_PID 0xF0EE /* Tagsys Medio P200x RFID*/ + /* an infrared receiver for user access control with IR tags */ #define FTDI_PIEGROUP_PID 0xF208 /* Product Id */ @@ -1313,3 +1320,9 @@ * Manufacturer: Smart GSM Team */ #define FTDI_Z3X_PID 0x0011 + +/* + * Product: Cressi PC Interface + * Manufacturer: Cressi + */ +#define FTDI_CRESSI_PID 0x87d0 --- linux-3.13.0.orig/drivers/usb/serial/option.c +++ linux-3.13.0/drivers/usb/serial/option.c @@ -320,6 +320,9 @@ * It seems to contain a Qualcomm QSC6240/6290 chipset */ #define FOUR_G_SYSTEMS_PRODUCT_W14 0x9603 +/* iBall 3.5G connect wireless modem */ +#define IBALL_3_5G_CONNECT 0x9605 + /* Zoom */ #define ZOOM_PRODUCT_4597 0x9607 @@ -1359,7 +1362,8 @@ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1267, 0xff, 0xff, 0xff) }, { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1268, 0xff, 0xff, 0xff) }, { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1269, 0xff, 0xff, 0xff) }, - { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1270, 0xff, 0xff, 0xff) }, + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1270, 0xff, 0xff, 0xff), + .driver_info = (kernel_ulong_t)&net_intf5_blacklist }, { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1271, 0xff, 0xff, 0xff) }, { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1272, 0xff, 0xff, 0xff) }, { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x1273, 0xff, 0xff, 0xff) }, @@ -1447,6 +1451,17 @@ .driver_info = (kernel_ulong_t)&net_intf3_blacklist }, { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0178, 0xff, 0xff, 0xff), .driver_info = (kernel_ulong_t)&net_intf3_blacklist }, + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0xffe9, 0xff, 0xff, 0xff) }, + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0xff8b, 0xff, 0xff, 0xff) }, + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0xff8c, 0xff, 0xff, 0xff) }, + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0xff8d, 0xff, 0xff, 0xff) }, + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0xff8e, 0xff, 0xff, 0xff) }, + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0xff8f, 0xff, 0xff, 0xff) }, + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0xff90, 0xff, 0xff, 0xff) }, + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0xff91, 0xff, 0xff, 0xff) }, + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0xff92, 0xff, 0xff, 0xff) }, + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0xff93, 0xff, 0xff, 0xff) }, + { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0xff94, 0xff, 0xff, 0xff) }, /* NOTE: most ZTE CDMA devices should be driven by zte_ev, not option */ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, ZTE_PRODUCT_MC2718, 0xff, 0xff, 0xff), @@ -1489,6 +1504,7 @@ .driver_info = (kernel_ulong_t)&four_g_w14_blacklist }, { USB_DEVICE(LONGCHEER_VENDOR_ID, ZOOM_PRODUCT_4597) }, + { USB_DEVICE(LONGCHEER_VENDOR_ID, IBALL_3_5G_CONNECT) }, { USB_DEVICE(HAIER_VENDOR_ID, HAIER_PRODUCT_CE100) }, /* Pirelli */ { USB_DEVICE_INTERFACE_CLASS(PIRELLI_VENDOR_ID, PIRELLI_PRODUCT_C100_1, 0xff) }, @@ -1510,7 +1526,8 @@ /* Cinterion */ { USB_DEVICE(CINTERION_VENDOR_ID, CINTERION_PRODUCT_EU3_E) }, { USB_DEVICE(CINTERION_VENDOR_ID, CINTERION_PRODUCT_EU3_P) }, - { USB_DEVICE(CINTERION_VENDOR_ID, CINTERION_PRODUCT_PH8) }, + { USB_DEVICE(CINTERION_VENDOR_ID, CINTERION_PRODUCT_PH8), + .driver_info = (kernel_ulong_t)&net_intf4_blacklist }, { USB_DEVICE(CINTERION_VENDOR_ID, CINTERION_PRODUCT_AHXX) }, { USB_DEVICE(CINTERION_VENDOR_ID, CINTERION_PRODUCT_PLXX), .driver_info = (kernel_ulong_t)&net_intf4_blacklist }, --- linux-3.13.0.orig/drivers/usb/serial/pl2303.c +++ linux-3.13.0/drivers/usb/serial/pl2303.c @@ -142,6 +142,8 @@ spinlock_t lock; u8 line_control; u8 line_status; + + u8 line_settings[7]; }; static int pl2303_vendor_read(__u16 value, __u16 index, @@ -339,11 +341,6 @@ int i; u8 control; - /* - * The PL2303 is reported to lose bytes if you change serial settings - * even to the same values as before. Thus we actually need to filter - * in this specific case. - */ if (old_termios && !tty_termios_hw_change(&tty->termios, old_termios)) return; @@ -428,10 +425,29 @@ dev_dbg(&port->dev, "parity = none\n"); } - i = usb_control_msg(serial->dev, usb_sndctrlpipe(serial->dev, 0), - SET_LINE_REQUEST, SET_LINE_REQUEST_TYPE, - 0, 0, buf, 7, 100); - dev_dbg(&port->dev, "0x21:0x20:0:0 %d\n", i); + /* + * Some PL2303 are known to lose bytes if you change serial settings + * even to the same values as before. Thus we actually need to filter + * in this specific case. + * + * Note that the tty_termios_hw_change check above is not sufficient + * as a previously requested baud rate may differ from the one + * actually used (and stored in old_termios). + * + * NOTE: No additional locking needed for line_settings as it is + * only used in set_termios, which is serialised against itself. + */ + if (!old_termios || memcmp(buf, priv->line_settings, 7)) { + i = usb_control_msg(serial->dev, + usb_sndctrlpipe(serial->dev, 0), + SET_LINE_REQUEST, SET_LINE_REQUEST_TYPE, + 0, 0, buf, 7, 100); + + dev_dbg(&port->dev, "0x21:0x20:0:0 %d\n", i); + + if (i == 7) + memcpy(priv->line_settings, buf, 7); + } /* change control lines if we are switching to or from B0 */ spin_lock_irqsave(&priv->lock, flags); --- linux-3.13.0.orig/drivers/usb/serial/qcserial.c +++ linux-3.13.0/drivers/usb/serial/qcserial.c @@ -139,6 +139,9 @@ {USB_DEVICE_INTERFACE_NUMBER(0x1199, 0x901c, 0)}, /* Sierra Wireless EM7700 Device Management */ {USB_DEVICE_INTERFACE_NUMBER(0x1199, 0x901c, 2)}, /* Sierra Wireless EM7700 NMEA */ {USB_DEVICE_INTERFACE_NUMBER(0x1199, 0x901c, 3)}, /* Sierra Wireless EM7700 Modem */ + {USB_DEVICE_INTERFACE_NUMBER(0x1199, 0x9051, 0)}, /* Netgear AirCard 340U Device Management */ + {USB_DEVICE_INTERFACE_NUMBER(0x1199, 0x9051, 2)}, /* Netgear AirCard 340U NMEA */ + {USB_DEVICE_INTERFACE_NUMBER(0x1199, 0x9051, 3)}, /* Netgear AirCard 340U Modem */ { } /* Terminating entry */ }; --- linux-3.13.0.orig/drivers/usb/serial/usb-serial-simple.c +++ linux-3.13.0/drivers/usb/serial/usb-serial-simple.c @@ -72,7 +72,8 @@ /* Suunto ANT+ USB Driver */ #define SUUNTO_IDS() \ - { USB_DEVICE(0x0fcf, 0x1008) } + { USB_DEVICE(0x0fcf, 0x1008) }, \ + { USB_DEVICE(0x0fcf, 0x1009) } /* Dynastream ANT USB-m Stick */ DEVICE(suunto, SUUNTO_IDS); /* Siemens USB/MPI adapter */ --- linux-3.13.0.orig/drivers/usb/storage/Kconfig +++ linux-3.13.0/drivers/usb/storage/Kconfig @@ -18,7 +18,9 @@ This option depends on 'SCSI' support being enabled, but you probably also need 'SCSI device support: SCSI disk support' - (BLK_DEV_SD) for most USB storage devices. + (BLK_DEV_SD) for most USB storage devices. Some devices also + will require 'Probe all LUNs on each SCSI device' + (SCSI_MULTI_LUN). To compile this driver as a module, choose M here: the module will be called usb-storage. --- linux-3.13.0.orig/drivers/usb/storage/scsiglue.c +++ linux-3.13.0/drivers/usb/storage/scsiglue.c @@ -78,6 +78,8 @@ static int slave_alloc (struct scsi_device *sdev) { + struct us_data *us = host_to_us(sdev->host); + /* * Set the INQUIRY transfer length to 36. We don't use any of * the extra data and many devices choke if asked for more or @@ -102,6 +104,10 @@ */ blk_queue_update_dma_alignment(sdev->request_queue, (512 - 1)); + /* Tell the SCSI layer if we know there is more than one LUN */ + if (us->protocol == USB_PR_BULK && us->max_lun > 0) + sdev->sdev_bflags |= BLIST_FORCELUN; + return 0; } --- linux-3.13.0.orig/drivers/usb/storage/unusual_cypress.h +++ linux-3.13.0/drivers/usb/storage/unusual_cypress.h @@ -31,7 +31,7 @@ "Cypress ISD-300LP", USB_SC_CYP_ATACB, USB_PR_DEVICE, NULL, 0), -UNUSUAL_DEV( 0x14cd, 0x6116, 0x0000, 0x0219, +UNUSUAL_DEV( 0x14cd, 0x6116, 0x0160, 0x0160, "Super Top", "USB 2.0 SATA BRIDGE", USB_SC_CYP_ATACB, USB_PR_DEVICE, NULL, 0), --- linux-3.13.0.orig/drivers/usb/storage/unusual_devs.h +++ linux-3.13.0/drivers/usb/storage/unusual_devs.h @@ -234,6 +234,13 @@ USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_MAX_SECTORS_64 ), +/* Patch submitted by Mikhail Zolotaryov */ +UNUSUAL_DEV( 0x0421, 0x06aa, 0x1110, 0x1110, + "Nokia", + "502", + USB_SC_DEVICE, USB_PR_DEVICE, NULL, + US_FL_MAX_SECTORS_64 ), + #ifdef NO_SDDR09 UNUSUAL_DEV( 0x0436, 0x0005, 0x0100, 0x0100, "Microtech", @@ -1191,6 +1198,13 @@ USB_SC_DEVICE, USB_PR_DEVICE, option_ms_init, 0), +/* Reported by Timo Aaltonen */ +UNUSUAL_DEV( 0x0af0, 0x7011, 0x0000, 0x9999, + "Option", + "Mass Storage", + USB_SC_DEVICE, USB_PR_DEVICE, option_ms_init, + 0 ), + /* Reported by F. Aben * This device (wrongly) has a vendor-specific device descriptor. * The entry is needed so usb-storage can bind to it's mass-storage @@ -1448,6 +1462,13 @@ USB_SC_DEVICE, USB_PR_DEVICE, NULL, US_FL_FIX_CAPACITY ), +/* Reported by Moritz Moeller-Herrmann */ +UNUSUAL_DEV( 0x0fca, 0x8004, 0x0201, 0x0201, + "Research In Motion", + "BlackBerry Bold 9000", + USB_SC_DEVICE, USB_PR_DEVICE, NULL, + US_FL_MAX_SECTORS_64 ), + /* Reported by Michael Stattmann */ UNUSUAL_DEV( 0x0fce, 0xd008, 0x0000, 0x0000, "Sony Ericsson", --- linux-3.13.0.orig/drivers/vfio/vfio_iommu_type1.c +++ linux-3.13.0/drivers/vfio/vfio_iommu_type1.c @@ -186,12 +186,12 @@ if (pfn_valid(pfn)) { bool reserved; struct page *tail = pfn_to_page(pfn); - struct page *head = compound_trans_head(tail); + struct page *head = compound_head(tail); reserved = !!(PageReserved(head)); if (head != tail) { /* * "head" is not a dangling pointer - * (compound_trans_head takes care of that) + * (compound_head takes care of that) * but the hugepage may have been split * from under us (and we may not hold a * reference count on the head page so it can --- linux-3.13.0.orig/drivers/vhost/net.c +++ linux-3.13.0/drivers/vhost/net.c @@ -70,7 +70,12 @@ }; struct vhost_net_ubuf_ref { - struct kref kref; + /* refcount follows semantics similar to kref: + * 0: object is released + * 1: no outstanding ubufs + * >1: outstanding ubufs + */ + atomic_t refcount; wait_queue_head_t wait; struct vhost_virtqueue *vq; }; @@ -116,14 +121,6 @@ vhost_net_zcopy_mask |= 0x1 << vq; } -static void vhost_net_zerocopy_done_signal(struct kref *kref) -{ - struct vhost_net_ubuf_ref *ubufs; - - ubufs = container_of(kref, struct vhost_net_ubuf_ref, kref); - wake_up(&ubufs->wait); -} - static struct vhost_net_ubuf_ref * vhost_net_ubuf_alloc(struct vhost_virtqueue *vq, bool zcopy) { @@ -134,21 +131,24 @@ ubufs = kmalloc(sizeof(*ubufs), GFP_KERNEL); if (!ubufs) return ERR_PTR(-ENOMEM); - kref_init(&ubufs->kref); + atomic_set(&ubufs->refcount, 1); init_waitqueue_head(&ubufs->wait); ubufs->vq = vq; return ubufs; } -static void vhost_net_ubuf_put(struct vhost_net_ubuf_ref *ubufs) +static int vhost_net_ubuf_put(struct vhost_net_ubuf_ref *ubufs) { - kref_put(&ubufs->kref, vhost_net_zerocopy_done_signal); + int r = atomic_sub_return(1, &ubufs->refcount); + if (unlikely(!r)) + wake_up(&ubufs->wait); + return r; } static void vhost_net_ubuf_put_and_wait(struct vhost_net_ubuf_ref *ubufs) { - kref_put(&ubufs->kref, vhost_net_zerocopy_done_signal); - wait_event(ubufs->wait, !atomic_read(&ubufs->kref.refcount)); + vhost_net_ubuf_put(ubufs); + wait_event(ubufs->wait, !atomic_read(&ubufs->refcount)); } static void vhost_net_ubuf_put_wait_and_free(struct vhost_net_ubuf_ref *ubufs) @@ -306,22 +306,21 @@ { struct vhost_net_ubuf_ref *ubufs = ubuf->ctx; struct vhost_virtqueue *vq = ubufs->vq; - int cnt = atomic_read(&ubufs->kref.refcount); + int cnt; /* set len to mark this desc buffers done DMA */ vq->heads[ubuf->desc].len = success ? VHOST_DMA_DONE_LEN : VHOST_DMA_FAILED_LEN; - vhost_net_ubuf_put(ubufs); + cnt = vhost_net_ubuf_put(ubufs); /* * Trigger polling thread if guest stopped submitting new buffers: - * in this case, the refcount after decrement will eventually reach 1 - * so here it is 2. + * in this case, the refcount after decrement will eventually reach 1. * We also trigger polling periodically after each 16 packets * (the value 16 here is more or less arbitrary, it's tuned to trigger * less than 10% of times). */ - if (cnt <= 2 || !(cnt % 16)) + if (cnt <= 1 || !(cnt % 16)) vhost_poll_queue(&vq->poll); } @@ -420,7 +419,7 @@ msg.msg_control = ubuf; msg.msg_controllen = sizeof(ubuf); ubufs = nvq->ubufs; - kref_get(&ubufs->kref); + atomic_inc(&ubufs->refcount); nvq->upend_idx = (nvq->upend_idx + 1) % UIO_MAXIOV; } else { msg.msg_control = NULL; @@ -502,9 +501,13 @@ r = -ENOBUFS; goto err; } - d = vhost_get_vq_desc(vq->dev, vq, vq->iov + seg, + r = vhost_get_vq_desc(vq->dev, vq, vq->iov + seg, ARRAY_SIZE(vq->iov) - seg, &out, &in, log, log_num); + if (unlikely(r < 0)) + goto err; + + d = r; if (d == vq->num) { r = 0; goto err; @@ -529,6 +532,12 @@ *iovcount = seg; if (unlikely(log)) *log_num = nlogs; + + /* Detect overrun */ + if (unlikely(datalen > 0)) { + r = UIO_MAXIOV + 1; + goto err; + } return headcount; err: vhost_discard_vq_desc(vq, headcount); @@ -584,6 +593,14 @@ /* On error, stop handling until the next kick. */ if (unlikely(headcount < 0)) break; + /* On overrun, truncate and discard */ + if (unlikely(headcount > UIO_MAXIOV)) { + msg.msg_iovlen = 1; + err = sock->ops->recvmsg(NULL, sock, &msg, + 1, MSG_DONTWAIT | MSG_TRUNC); + pr_debug("Discarded rx packet: len %zd\n", sock_len); + continue; + } /* OK, now we need to know about added descriptors. */ if (!headcount) { if (unlikely(vhost_enable_notify(&net->dev, vq))) { @@ -785,7 +802,7 @@ vhost_net_ubuf_put_and_wait(n->vqs[VHOST_NET_VQ_TX].ubufs); mutex_lock(&n->vqs[VHOST_NET_VQ_TX].vq.mutex); n->tx_flush = false; - kref_init(&n->vqs[VHOST_NET_VQ_TX].ubufs->kref); + atomic_set(&n->vqs[VHOST_NET_VQ_TX].ubufs->refcount, 1); mutex_unlock(&n->vqs[VHOST_NET_VQ_TX].vq.mutex); } } --- linux-3.13.0.orig/drivers/vhost/scsi.c +++ linux-3.13.0/drivers/vhost/scsi.c @@ -728,7 +728,7 @@ } se_sess = tv_nexus->tvn_se_sess; - tag = percpu_ida_alloc(&se_sess->sess_tag_pool, GFP_ATOMIC); + tag = percpu_ida_alloc(&se_sess->sess_tag_pool, TASK_RUNNING); if (tag < 0) { pr_err("Unable to obtain tag for tcm_vhost_cmd\n"); return ERR_PTR(-ENOMEM); --- linux-3.13.0.orig/drivers/video/aty/mach64_accel.c +++ linux-3.13.0/drivers/video/aty/mach64_accel.c @@ -4,6 +4,7 @@ */ #include +#include #include #include